data:text/html;base64,PCFET0NUWVBFIGh0bWw+CjwhLS0gQ3JlYXRlZCB3aXRoIGh0dHBzOi8vc3R1ZGlvLnBlbmd1aW5tb2QuY29tL1Blbmd1aW5Nb2QtUGFja2FnZXIvIC0tPgo8aHRtbD4KPGhlYWQ+CiAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgogIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCBtYXhpbXVtLXNjYWxlPTEuMCwgdXNlci1zY2FsYWJsZT1ubyI+CiAgPCEtLSBXZSBvbmx5IGluY2x1ZGUgdGhpcyB0byBleHBsaWNpdGx5IGxvb3NlbiB0aGUgQ1NQIG9mIHZhcmlvdXMgcGFja2FnZXIgZW52aXJvbm1lbnRzLiBJdCBkb2VzIG5vdCBwcm92aWRlIGFueSBzZWN1cml0eS4gLS0+CiAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1TZWN1cml0eS1Qb2xpY3kiIGNvbnRlbnQ9ImRlZmF1bHQtc3JjICogJ3NlbGYnICd1bnNhZmUtaW5saW5lJyAndW5zYWZlLWV2YWwnIGRhdGE6IGJsb2I6Ij4KICA8dGl0bGU+Q29sb3IgTWF0Y2g8L3RpdGxlPgogIDxzdHlsZT4KICAgIGJvZHkgewogICAgICBjb2xvcjogI2ZmZmZmZjsKICAgICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIG1hcmdpbjogMDsKICAgICAgcGFkZGluZzogMDsKICAgIH0KICAgIDpyb290LCBib2R5LmlzLWZ1bGxzY3JlZW4gewogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOwogICAgfQogICAgW2hpZGRlbl0gewogICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7CiAgICB9CiAgICBoMSB7CiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7CiAgICB9CiAgICBhIHsKICAgICAgY29sb3I6IGluaGVyaXQ7CiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICB9CgogICAgI2FwcCwgI2xvYWRpbmcsICNlcnJvciwgI2xhdW5jaCB7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgdG9wOiAwOwogICAgICBsZWZ0OiAwOwogICAgICB3aWR0aDogMTAwJTsKICAgICAgaGVpZ2h0OiAxMDAlOwogICAgfQogICAgLnNjcmVlbiB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7CiAgICB9CiAgICAjbGF1bmNoIHsKICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICB9CiAgICAuZ3JlZW4tZmxhZyB7CiAgICAgIHdpZHRoOiA4MHB4OwogICAgICBoZWlnaHQ6IDgwcHg7CiAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7CiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7CiAgICAgIGJvcmRlcjogM3B4IHNvbGlkIGhzbGEoMCwgMTAwJSwgMTAwJSwgMSk7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgfQogICAgI2xvYWRpbmcgewogICAgICAKICAgIH0KICAgIC5wcm9ncmVzcy1iYXItb3V0ZXIgewogICAgICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7CiAgICAgIGhlaWdodDogMTBweDsKICAgICAgd2lkdGg6IDIwMHB4OwogICAgICBtYXgtd2lkdGg6IDIwMHB4OwogICAgfQogICAgLnByb2dyZXNzLWJhci1pbm5lciB7CiAgICAgIGhlaWdodDogMTAwJTsKICAgICAgd2lkdGg6IDA7CiAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjsKICAgIH0KICAgIC5sb2FkaW5nLXRleHQsIG5vc2NyaXB0IHsKICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsKICAgICAgZm9udC1zaXplOiAzNnB4OwogICAgICBtYXJnaW46IDAgMCAxNnB4OwogICAgfQogICAgLmxvYWRpbmctaW1hZ2UgewogICAgICBtYXJnaW46IDAgMCAxNnB4OwogICAgfQogICAgI2Vycm9yLW1lc3NhZ2UsICNlcnJvci1zdGFjayB7CiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgICAgIG1heC13aWR0aDogNjAwcHg7CiAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKICAgICAgdXNlci1zZWxlY3Q6IHRleHQ7CiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7CiAgICB9CiAgICAjZXJyb3Itc3RhY2sgewogICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICBtYXgtaGVpZ2h0OiAyMDBweDsKICAgICAgb3ZlcmZsb3c6IGF1dG87CiAgICB9CiAgICAuY29udHJvbC1idXR0b24gewogICAgICB3aWR0aDogMnJlbTsKICAgICAgaGVpZ2h0OiAycmVtOwogICAgICBwYWRkaW5nOiAwLjM3NXJlbTsKICAgICAgbWFyZ2luLXRvcDogMC41cmVtOwogICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07CiAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIGJvcmRlcjogMDsKICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgfQogICAgLmNvbnRyb2wtYnV0dG9uOmhvdmVyIHsKICAgICAgYmFja2dyb3VuZDogIzAwYzNmZjI2OwogICAgfQogICAgLmNvbnRyb2wtYnV0dG9uLmFjdGl2ZSB7CiAgICAgIGJhY2tncm91bmQ6ICMwMGMzZmY1OTsKICAgIH0KICAgIC5mdWxsc2NyZWVuLWJ1dHRvbiB7CiAgICAgIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7CiAgICB9CiAgICAuc3RhbmRhbG9uZS1mdWxsc2NyZWVuLWJ1dHRvbiB7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgdG9wOiAwOwogICAgICByaWdodDogMDsKICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOwogICAgICBib3JkZXItcmFkaXVzOiAwIDAgMCA0cHg7CiAgICAgIHBhZGRpbmc6IDRweDsKICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgfQogICAgLnNjLWNhbnZhcyB7CiAgICAgIGN1cnNvcjogYXV0bzsKICAgIH0KICAgIC5zYy1tb25pdG9yLXJvb3RbZGF0YS1vcGNvZGVePSJkYXRhXyJdIC5zYy1tb25pdG9yLXZhbHVlLWNvbG9yIHsKICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOGMxYTsKICAgIH0KICAgIC5zYy1tb25pdG9yLXJvdy12YWx1ZS1vdXRlciB7CiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYzY2MmM7CiAgICB9CiAgICAuc2MtbW9uaXRvci1yb3ctdmFsdWUtZWRpdGluZyAuc2MtbW9uaXRvci1yb3ctdmFsdWUtb3V0ZXIgewogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTI1YjI3OwogICAgfQogICAgCiAgPC9zdHlsZT4KICA8bWV0YSBuYW1lPSJ0aGVtZS1jb2xvciIgY29udGVudD0iIzAwMDAwMCI+CiAgCjwvaGVhZD4KPGJvZHk+CiAgPGRpdiBpZD0iYXBwIj48L2Rpdj4KCiAgCgogIDxkaXYgaWQ9ImxvYWRpbmciIGNsYXNzPSJzY3JlZW4iPgogICAgPG5vc2NyaXB0PkVuYWJsZSBKYXZhU2NyaXB0PC9ub3NjcmlwdD4KICAgIAogICAgCiAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXItb3V0ZXIiPjxkaXYgY2xhc3M9InByb2dyZXNzLWJhci1pbm5lciIgaWQ9ImxvYWRpbmctaW5uZXIiPjwvZGl2PjwvZGl2PgogIDwvZGl2PgoKICA8ZGl2IGlkPSJlcnJvciIgY2xhc3M9InNjcmVlbiIgaGlkZGVuPgogICAgPGgxPkVycm9yPC9oMT4KICAgIDxkZXRhaWxzPgogICAgICA8c3VtbWFyeSBpZD0iZXJyb3ItbWVzc2FnZSI+PC9zdW1tYXJ5PgogICAgICA8cCBpZD0iZXJyb3Itc3RhY2siPjwvcD4KICAgIDwvZGV0YWlscz4KICA8L2Rpdj4KCiAgPHNjcmlwdD4vKiEKUGFydHMgb2YgdGhpcyBzY3JpcHQgYXJlIGZyb20gdGhlIFBlbmd1aW5Nb2QgUGFja2FnZXIgPGh0dHBzOi8vc3R1ZGlvLnBlbmd1aW5tb2QuY29tL1Blbmd1aW5Nb2QtUGFja2FnZXIvPiwgbGljZW5zZWQgYXMgZm9sbG93czoKQ29weXJpZ2h0IChDKSAyMDIxLTIwMjIgVGhvbWFzIFdlYmVyCgpMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgpZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKClVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuClNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgpQYXJ0cyBvZiB0aGlzIHNjcmlwdCBhcmUgZnJvbSBTY3JhdGNoIDxodHRwczovL3NjcmF0Y2gubWl0LmVkdS8+LCBsaWNlbnNlZCBhcyBmb2xsb3dzOgpDb3B5cmlnaHQgKGMpIDIwMTYsIE1hc3NhY2h1c2V0dHMgSW5zdGl0dXRlIG9mIFRlY2hub2xvZ3kKQWxsIHJpZ2h0cyByZXNlcnZlZC4KClJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKCjEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KCjIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KCjMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KClRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiovCgohZnVuY3Rpb24oQSl7ZnVuY3Rpb24gZShlKXtmb3IodmFyIHQsaSxyPWVbMF0sbz1lWzFdLHM9MCxCPVtdO3M8ci5sZW5ndGg7cysrKWk9cltzXSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixpKSYmbltpXSYmQi5wdXNoKG5baV1bMF0pLG5baV09MDtmb3IodCBpbiBvKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvLHQpJiYoQVt0XT1vW3RdKTtmb3IoYSYmYShlKTtCLmxlbmd0aDspQi5zaGlmdCgpKCl9dmFyIHQ9e30sbj17MDowfTtmdW5jdGlvbiBpKGUpe2lmKHRbZV0pcmV0dXJuIHRbZV0uZXhwb3J0czt2YXIgbj10W2VdPXtpOmUsbDohMSxleHBvcnRzOnt9fTtyZXR1cm4gQVtlXS5jYWxsKG4uZXhwb3J0cyxuLG4uZXhwb3J0cyxpKSxuLmw9ITAsbi5leHBvcnRzfWkuZT1mdW5jdGlvbihBKXt2YXIgZT1bXSx0PW5bQV07aWYoMCE9PXQpaWYodCllLnB1c2godFsyXSk7ZWxzZXt2YXIgcj1uZXcgUHJvbWlzZSgoZnVuY3Rpb24oZSxpKXt0PW5bQV09W2UsaV19KSk7ZS5wdXNoKHRbMl09cik7dmFyIG8scz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtzLmNoYXJzZXQ9InV0Zi04IixzLnRpbWVvdXQ9MTIwLGkubmMmJnMuc2V0QXR0cmlidXRlKCJub25jZSIsaS5uYykscy5zcmM9ZnVuY3Rpb24oQSl7cmV0dXJuIGkucCsic2NhZmZvbGRpbmcvIisoezE6InZlbmRvcnN+aWZyYW1lLWV4dGVuc2lvbi13b3JrZXIifVtBXXx8QSkrIi5qcyJ9KEEpO3ZhciBhPW5ldyBFcnJvcjtvPWZ1bmN0aW9uKGUpe3Mub25lcnJvcj1zLm9ubG9hZD1udWxsLGNsZWFyVGltZW91dChCKTt2YXIgdD1uW0FdO2lmKDAhPT10KXtpZih0KXt2YXIgaT1lJiYoImxvYWQiPT09ZS50eXBlPyJtaXNzaW5nIjplLnR5cGUpLHI9ZSYmZS50YXJnZXQmJmUudGFyZ2V0LnNyYzthLm1lc3NhZ2U9IkxvYWRpbmcgY2h1bmsgIitBKyIgZmFpbGVkLlxuKCIraSsiOiAiK3IrIikiLGEubmFtZT0iQ2h1bmtMb2FkRXJyb3IiLGEudHlwZT1pLGEucmVxdWVzdD1yLHRbMV0oYSl9bltBXT12b2lkIDB9fTt2YXIgQj1zZXRUaW1lb3V0KChmdW5jdGlvbigpe28oe3R5cGU6InRpbWVvdXQiLHRhcmdldDpzfSl9KSwxMmU0KTtzLm9uZXJyb3I9cy5vbmxvYWQ9byxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHMpfXJldHVybiBQcm9taXNlLmFsbChlKX0saS5tPUEsaS5jPXQsaS5kPWZ1bmN0aW9uKEEsZSx0KXtpLm8oQSxlKXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7ZW51bWVyYWJsZTohMCxnZXQ6dH0pfSxpLnI9ZnVuY3Rpb24oQSl7InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0saS50PWZ1bmN0aW9uKEEsZSl7aWYoMSZlJiYoQT1pKEEpKSw4JmUpcmV0dXJuIEE7aWYoNCZlJiYib2JqZWN0Ij09dHlwZW9mIEEmJkEmJkEuX19lc01vZHVsZSlyZXR1cm4gQTt2YXIgdD1PYmplY3QuY3JlYXRlKG51bGwpO2lmKGkucih0KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6QX0pLDImZSYmInN0cmluZyIhPXR5cGVvZiBBKWZvcih2YXIgbiBpbiBBKWkuZCh0LG4sZnVuY3Rpb24oZSl7cmV0dXJuIEFbZV19LmJpbmQobnVsbCxuKSk7cmV0dXJuIHR9LGkubj1mdW5jdGlvbihBKXt2YXIgZT1BJiZBLl9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gQS5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiBBfTtyZXR1cm4gaS5kKGUsImEiLGUpLGV9LGkubz1mdW5jdGlvbihBLGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoQSxlKX0saS5wPSIiLGkub2U9ZnVuY3Rpb24oQSl7dGhyb3cgY29uc29sZS5lcnJvcihBKSxBfTt2YXIgcj13aW5kb3cud2VicGFja0pzb25wPXdpbmRvdy53ZWJwYWNrSnNvbnB8fFtdLG89ci5wdXNoLmJpbmQocik7ci5wdXNoPWUscj1yLnNsaWNlKCk7Zm9yKHZhciBzPTA7czxyLmxlbmd0aDtzKyspZShyW3NdKTt2YXIgYT1vO2koaS5zPTUwMyl9KFtmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSx0LmQoZSwiQUNFU0ZpbG1pY1RvbmVNYXBwaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gZUF9KSksdC5kKGUsIkFkZEVxdWF0aW9uIiwoZnVuY3Rpb24oKXtyZXR1cm4gRn0pKSx0LmQoZSwiQWRkT3BlcmF0aW9uIiwoZnVuY3Rpb24oKXtyZXR1cm4gWn0pKSx0LmQoZSwiQWRkaXRpdmVBbmltYXRpb25CbGVuZE1vZGUiLChmdW5jdGlvbigpe3JldHVybiB5ZX0pKSx0LmQoZSwiQWRkaXRpdmVCbGVuZGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIE19KSksdC5kKGUsIkFscGhhRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gUkF9KSksdC5kKGUsIkFsd2F5c0NvbXBhcmUiLChmdW5jdGlvbigpe3JldHVybiBRdH0pKSx0LmQoZSwiQWx3YXlzRGVwdGgiLChmdW5jdGlvbigpe3JldHVybiBKfSkpLHQuZChlLCJBbHdheXNTdGVuY2lsRnVuYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ0fSkpLHQuZChlLCJBbWJpZW50TGlnaHQiLChmdW5jdGlvbigpe3JldHVybiBZRX0pKSx0LmQoZSwiQW1iaWVudExpZ2h0UHJvYmUiLChmdW5jdGlvbigpe3JldHVybiBMRX0pKSx0LmQoZSwiQW5pbWF0aW9uQWN0aW9uIiwoZnVuY3Rpb24oKXtyZXR1cm4gbFF9KSksdC5kKGUsIkFuaW1hdGlvbkNsaXAiLChmdW5jdGlvbigpe3JldHVybiBaZ30pKSx0LmQoZSwiQW5pbWF0aW9uTG9hZGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gckV9KSksdC5kKGUsIkFuaW1hdGlvbk1peGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gd1F9KSksdC5kKGUsIkFuaW1hdGlvbk9iamVjdEdyb3VwIiwoZnVuY3Rpb24oKXtyZXR1cm4gdVF9KSksdC5kKGUsIkFuaW1hdGlvblV0aWxzIiwoZnVuY3Rpb24oKXtyZXR1cm4gSGd9KSksdC5kKGUsIkFyY0N1cnZlIiwoZnVuY3Rpb24oKXtyZXR1cm4gJEJ9KSksdC5kKGUsIkFycmF5Q2FtZXJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gcGF9KSksdC5kKGUsIkFycm93SGVscGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gc3V9KSksdC5kKGUsIkF1ZGlvIiwoZnVuY3Rpb24oKXtyZXR1cm4gZVF9KSksdC5kKGUsIkF1ZGlvQW5hbHlzZXIiLChmdW5jdGlvbigpe3JldHVybiBzUX0pKSx0LmQoZSwiQXVkaW9Db250ZXh0IiwoZnVuY3Rpb24oKXtyZXR1cm4gakV9KSksdC5kKGUsIkF1ZGlvTGlzdGVuZXIiLChmdW5jdGlvbigpe3JldHVybiBBUX0pKSx0LmQoZSwiQXVkaW9Mb2FkZXIiLChmdW5jdGlvbigpe3JldHVybiBKRX0pKSx0LmQoZSwiQXhlc0hlbHBlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGF1fSkpLHQuZChlLCJCYWNrU2lkZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGx9KSksdC5kKGUsIkJhc2ljRGVwdGhQYWNraW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gYmV9KSksdC5kKGUsIkJhc2ljU2hhZG93TWFwIiwoZnVuY3Rpb24oKXtyZXR1cm4gY30pKSx0LmQoZSwiQm9uZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHVCfSkpLHQuZChlLCJCb29sZWFuS2V5ZnJhbWVUcmFjayIsKGZ1bmN0aW9uKCl7cmV0dXJuIExnfSkpLHQuZChlLCJCb3gyIiwoZnVuY3Rpb24oKXtyZXR1cm4gVVF9KSksdC5kKGUsIkJveDMiLChmdW5jdGlvbigpe3JldHVybiBGbn0pKSx0LmQoZSwiQm94M0hlbHBlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIHR1fSkpLHQuZChlLCJCb3hCdWZmZXJHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGN1fSkpLHQuZChlLCJCb3hHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIFNyfSkpLHQuZChlLCJCb3hIZWxwZXIiLChmdW5jdGlvbigpe3JldHVybiBldX0pKSx0LmQoZSwiQnVmZmVyQXR0cmlidXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gX2l9KSksdC5kKGUsIkJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gbHJ9KSksdC5kKGUsIkJ1ZmZlckdlb21ldHJ5TG9hZGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gUkV9KSksdC5kKGUsIkJ5dGVUeXBlIiwoZnVuY3Rpb24oKXtyZXR1cm4gbUF9KSksdC5kKGUsIkNhY2hlIiwoZnVuY3Rpb24oKXtyZXR1cm4gcWd9KSksdC5kKGUsIkNhbWVyYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEpyfSkpLHQuZChlLCJDYW1lcmFIZWxwZXIiLChmdW5jdGlvbigpe3JldHVybiBxUX0pKSx0LmQoZSwiQ2FudmFzVGV4dHVyZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIFpCfSkpLHQuZChlLCJDYXBzdWxlQnVmZmVyR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBndX0pKSx0LmQoZSwiQ2Fwc3VsZUdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gTWN9KSksdC5kKGUsIkNhdG11bGxSb21DdXJ2ZTMiLChmdW5jdGlvbigpe3JldHVybiByY30pKSx0LmQoZSwiQ2luZW9uVG9uZU1hcHBpbmciLChmdW5jdGlvbigpe3JldHVybiBBQX0pKSx0LmQoZSwiQ2lyY2xlQnVmZmVyR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBFdX0pKSx0LmQoZSwiQ2lyY2xlR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBkY30pKSx0LmQoZSwiQ2xhbXBUb0VkZ2VXcmFwcGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGNBfSkpLHQuZChlLCJDbG9jayIsKGZ1bmN0aW9uKCl7cmV0dXJuIEtFfSkpLHQuZChlLCJDb2xvciIsKGZ1bmN0aW9uKCl7cmV0dXJuIEppfSkpLHQuZChlLCJDb2xvcktleWZyYW1lVHJhY2siLChmdW5jdGlvbigpe3JldHVybiBQZ30pKSx0LmQoZSwiQ29sb3JNYW5hZ2VtZW50IiwoZnVuY3Rpb24oKXtyZXR1cm4gcm59KSksdC5kKGUsIkNvbXByZXNzZWRBcnJheVRleHR1cmUiLChmdW5jdGlvbigpe3JldHVybiBYQn0pKSx0LmQoZSwiQ29tcHJlc3NlZFRleHR1cmUiLChmdW5jdGlvbigpe3JldHVybiBLQn0pKSx0LmQoZSwiQ29tcHJlc3NlZFRleHR1cmVMb2FkZXIiLChmdW5jdGlvbigpe3JldHVybiBvRX0pKSx0LmQoZSwiQ29uZUJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gUXV9KSksdC5kKGUsIkNvbmVHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG1jfSkpLHQuZChlLCJDdWJlQ2FtZXJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gTHJ9KSksdC5kKGUsIkN1YmVSZWZsZWN0aW9uTWFwcGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGlBfSkpLHQuZChlLCJDdWJlUmVmcmFjdGlvbk1hcHBpbmciLChmdW5jdGlvbigpe3JldHVybiByQX0pKSx0LmQoZSwiQ3ViZVRleHR1cmUiLChmdW5jdGlvbigpe3JldHVybiBQcn0pKSx0LmQoZSwiQ3ViZVRleHR1cmVMb2FkZXIiLChmdW5jdGlvbigpe3JldHVybiBhRX0pKSx0LmQoZSwiQ3ViZVVWUmVmbGVjdGlvbk1hcHBpbmciLChmdW5jdGlvbigpe3JldHVybiBhQX0pKSx0LmQoZSwiQ3ViaWNCZXppZXJDdXJ2ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEJjfSkpLHQuZChlLCJDdWJpY0JlemllckN1cnZlMyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGNjfSkpLHQuZChlLCJDdWJpY0ludGVycG9sYW50IiwoZnVuY3Rpb24oKXtyZXR1cm4ga2d9KSksdC5kKGUsIkN1bGxGYWNlQmFjayIsKGZ1bmN0aW9uKCl7cmV0dXJuIHN9KSksdC5kKGUsIkN1bGxGYWNlRnJvbnQiLChmdW5jdGlvbigpe3JldHVybiBhfSkpLHQuZChlLCJDdWxsRmFjZUZyb250QmFjayIsKGZ1bmN0aW9uKCl7cmV0dXJuIEJ9KSksdC5kKGUsIkN1bGxGYWNlTm9uZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG99KSksdC5kKGUsIkN1cnZlIiwoZnVuY3Rpb24oKXtyZXR1cm4gX0J9KSksdC5kKGUsIkN1cnZlUGF0aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHdjfSkpLHQuZChlLCJDdXN0b21CbGVuZGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIG19KSksdC5kKGUsIkN1c3RvbVRvbmVNYXBwaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gdEF9KSksdC5kKGUsIkN5bGluZGVyQnVmZmVyR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiB1dX0pKSx0LmQoZSwiQ3lsaW5kZXJHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHBjfSkpLHQuZChlLCJDeWxpbmRyaWNhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZRfSkpLHQuZChlLCJEYXRhM0RUZXh0dXJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gd259KSksdC5kKGUsIkRhdGFBcnJheVRleHR1cmUiLChmdW5jdGlvbigpe3JldHVybiBsbn0pKSx0LmQoZSwiRGF0YVRleHR1cmUiLChmdW5jdGlvbigpe3JldHVybiBsQn0pKSx0LmQoZSwiRGF0YVRleHR1cmVMb2FkZXIiLChmdW5jdGlvbigpe3JldHVybiBCRX0pKSx0LmQoZSwiRGF0YVV0aWxzIiwoZnVuY3Rpb24oKXtyZXR1cm4gS2l9KSksdC5kKGUsIkRlY3JlbWVudFN0ZW5jaWxPcCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEtlfSkpLHQuZChlLCJEZWNyZW1lbnRXcmFwU3RlbmNpbE9wIiwoZnVuY3Rpb24oKXtyZXR1cm4gWmV9KSksdC5kKGUsIkRlZmF1bHRMb2FkaW5nTWFuYWdlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIEFFfSkpLHQuZChlLCJEZXB0aEZvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEhBfSkpLHQuZChlLCJEZXB0aFN0ZW5jaWxGb3JtYXQiLChmdW5jdGlvbigpe3JldHVybiB2QX0pKSx0LmQoZSwiRGVwdGhUZXh0dXJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gWWF9KSksdC5kKGUsIkRpcmVjdGlvbmFsTGlnaHQiLChmdW5jdGlvbigpe3JldHVybiBERX0pKSx0LmQoZSwiRGlyZWN0aW9uYWxMaWdodEhlbHBlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIFhRfSkpLHQuZChlLCJEaXNjcmV0ZUludGVycG9sYW50IiwoZnVuY3Rpb24oKXtyZXR1cm4gSmd9KSksdC5kKGUsIkRpc3BsYXlQM0NvbG9yU3BhY2UiLChmdW5jdGlvbigpe3JldHVybiBMZX0pKSx0LmQoZSwiRG9kZWNhaGVkcm9uQnVmZmVyR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBsdX0pKSx0LmQoZSwiRG9kZWNhaGVkcm9uR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBEY30pKSx0LmQoZSwiRG91YmxlU2lkZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSksdC5kKGUsIkRzdEFscGhhRmFjdG9yIiwoZnVuY3Rpb24oKXtyZXR1cm4gU30pKSx0LmQoZSwiRHN0Q29sb3JGYWN0b3IiLChmdW5jdGlvbigpe3JldHVybiBIfSkpLHQuZChlLCJEeW5hbWljQ29weVVzYWdlIiwoZnVuY3Rpb24oKXtyZXR1cm4gZHR9KSksdC5kKGUsIkR5bmFtaWNEcmF3VXNhZ2UiLChmdW5jdGlvbigpe3JldHVybiBsdH0pKSx0LmQoZSwiRHluYW1pY1JlYWRVc2FnZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEN0fSkpLHQuZChlLCJFZGdlc0dlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4geWN9KSksdC5kKGUsIkVsbGlwc2VDdXJ2ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHFCfSkpLHQuZChlLCJFcXVhbENvbXBhcmUiLChmdW5jdGlvbigpe3JldHVybiBhdH0pKSx0LmQoZSwiRXF1YWxEZXB0aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFB9KSksdC5kKGUsIkVxdWFsU3RlbmNpbEZ1bmMiLChmdW5jdGlvbigpe3JldHVybiBBdH0pKSx0LmQoZSwiRXF1aXJlY3Rhbmd1bGFyUmVmbGVjdGlvbk1hcHBpbmciLChmdW5jdGlvbigpe3JldHVybiBvQX0pKSx0LmQoZSwiRXF1aXJlY3Rhbmd1bGFyUmVmcmFjdGlvbk1hcHBpbmciLChmdW5jdGlvbigpe3JldHVybiBzQX0pKSx0LmQoZSwiRXVsZXIiLChmdW5jdGlvbigpe3JldHVybiBzaX0pKSx0LmQoZSwiRXZlbnREaXNwYXRjaGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gTnR9KSksdC5kKGUsIkV4dHJ1ZGVCdWZmZXJHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh1fSkpLHQuZChlLCJFeHRydWRlR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBzZ30pKSx0LmQoZSwiRmlsZUxvYWRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGlFfSkpLHQuZChlLCJGbG9hdDE2QnVmZmVyQXR0cmlidXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gcnJ9KSksdC5kKGUsIkZsb2F0MzJCdWZmZXJBdHRyaWJ1dGUiLChmdW5jdGlvbigpe3JldHVybiBvcn0pKSx0LmQoZSwiRmxvYXQ2NEJ1ZmZlckF0dHJpYnV0ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHNyfSkpLHQuZChlLCJGbG9hdFR5cGUiLChmdW5jdGlvbigpe3JldHVybiBOQX0pKSx0LmQoZSwiRm9nIiwoZnVuY3Rpb24oKXtyZXR1cm4gR2F9KSksdC5kKGUsIkZvZ0V4cDIiLChmdW5jdGlvbigpe3JldHVybiBSYX0pKSx0LmQoZSwiRnJhbWVidWZmZXJUZXh0dXJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gV0J9KSksdC5kKGUsIkZyb250U2lkZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV9KSksdC5kKGUsIkZydXN0dW0iLChmdW5jdGlvbigpe3JldHVybiBxcn0pKSx0LmQoZSwiR0xCdWZmZXJBdHRyaWJ1dGUiLChmdW5jdGlvbigpe3JldHVybiBwUX0pKSx0LmQoZSwiR0xTTDEiLChmdW5jdGlvbigpe3JldHVybiBtdH0pKSx0LmQoZSwiR0xTTDMiLChmdW5jdGlvbigpe3JldHVybiBGdH0pKSx0LmQoZSwiR3JlYXRlckNvbXBhcmUiLChmdW5jdGlvbigpe3JldHVybiBjdH0pKSx0LmQoZSwiR3JlYXRlckRlcHRoIiwoZnVuY3Rpb24oKXtyZXR1cm4gVn0pKSx0LmQoZSwiR3JlYXRlckVxdWFsQ29tcGFyZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEV0fSkpLHQuZChlLCJHcmVhdGVyRXF1YWxEZXB0aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIE99KSksdC5kKGUsIkdyZWF0ZXJFcXVhbFN0ZW5jaWxGdW5jIiwoZnVuY3Rpb24oKXtyZXR1cm4gaXR9KSksdC5kKGUsIkdyZWF0ZXJTdGVuY2lsRnVuYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHR0fSkpLHQuZChlLCJHcmlkSGVscGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gUFF9KSksdC5kKGUsIkdyb3VwIiwoZnVuY3Rpb24oKXtyZXR1cm4gbWF9KSksdC5kKGUsIkhhbGZGbG9hdFR5cGUiLChmdW5jdGlvbigpe3JldHVybiBVQX0pKSx0LmQoZSwiSGVtaXNwaGVyZUxpZ2h0IiwoZnVuY3Rpb24oKXtyZXR1cm4gRUV9KSksdC5kKGUsIkhlbWlzcGhlcmVMaWdodEhlbHBlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIExRfSkpLHQuZChlLCJIZW1pc3BoZXJlTGlnaHRQcm9iZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHpFfSkpLHQuZChlLCJJY29zYWhlZHJvbkJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gd3V9KSksdC5kKGUsIkljb3NhaGVkcm9uR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBCZ30pKSx0LmQoZSwiSW1hZ2VCaXRtYXBMb2FkZXIiLChmdW5jdGlvbigpe3JldHVybiB2RX0pKSx0LmQoZSwiSW1hZ2VMb2FkZXIiLChmdW5jdGlvbigpe3JldHVybiBzRX0pKSx0LmQoZSwiSW1hZ2VVdGlscyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHNufSkpLHQuZChlLCJJbmNyZW1lbnRTdGVuY2lsT3AiLChmdW5jdGlvbigpe3JldHVybiBXZX0pKSx0LmQoZSwiSW5jcmVtZW50V3JhcFN0ZW5jaWxPcCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFhlfSkpLHQuZChlLCJJbnN0YW5jZWRCdWZmZXJBdHRyaWJ1dGUiLChmdW5jdGlvbigpe3JldHVybiBJQn0pKSx0LmQoZSwiSW5zdGFuY2VkQnVmZmVyR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiB4RX0pKSx0LmQoZSwiSW5zdGFuY2VkSW50ZXJsZWF2ZWRCdWZmZXIiLChmdW5jdGlvbigpe3JldHVybiBkUX0pKSx0LmQoZSwiSW5zdGFuY2VkTWVzaCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZCfSkpLHQuZChlLCJJbnQxNkJ1ZmZlckF0dHJpYnV0ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGVyfSkpLHQuZChlLCJJbnQzMkJ1ZmZlckF0dHJpYnV0ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG5yfSkpLHQuZChlLCJJbnQ4QnVmZmVyQXR0cmlidXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gcWl9KSksdC5kKGUsIkludFR5cGUiLChmdW5jdGlvbigpe3JldHVybiBZQX0pKSx0LmQoZSwiSW50ZXJsZWF2ZWRCdWZmZXIiLChmdW5jdGlvbigpe3JldHVybiBiYX0pKSx0LmQoZSwiSW50ZXJsZWF2ZWRCdWZmZXJBdHRyaWJ1dGUiLChmdW5jdGlvbigpe3JldHVybiB2YX0pKSx0LmQoZSwiSW50ZXJwb2xhbnQiLChmdW5jdGlvbigpe3JldHVybiB2Z30pKSx0LmQoZSwiSW50ZXJwb2xhdGVEaXNjcmV0ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG1lfSkpLHQuZChlLCJJbnRlcnBvbGF0ZUxpbmVhciIsKGZ1bmN0aW9uKCl7cmV0dXJuIEZlfSkpLHQuZChlLCJJbnRlcnBvbGF0ZVNtb290aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIERlfSkpLHQuZChlLCJJbnZlcnRTdGVuY2lsT3AiLChmdW5jdGlvbigpe3JldHVybiBfZX0pKSx0LmQoZSwiS2VlcFN0ZW5jaWxPcCIsKGZ1bmN0aW9uKCl7cmV0dXJuIE9lfSkpLHQuZChlLCJLZXlmcmFtZVRyYWNrIiwoZnVuY3Rpb24oKXtyZXR1cm4gemd9KSksdC5kKGUsIkxPRCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG5CfSkpLHQuZChlLCJMYXRoZUJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gQ3V9KSksdC5kKGUsIkxhdGhlR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBJY30pKSx0LmQoZSwiTGF5ZXJzIiwoZnVuY3Rpb24oKXtyZXR1cm4gYWl9KSksdC5kKGUsIkxlc3NDb21wYXJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gc3R9KSksdC5kKGUsIkxlc3NEZXB0aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHp9KSksdC5kKGUsIkxlc3NFcXVhbENvbXBhcmUiLChmdW5jdGlvbigpe3JldHVybiBCdH0pKSx0LmQoZSwiTGVzc0VxdWFsRGVwdGgiLChmdW5jdGlvbigpe3JldHVybiBMfSkpLHQuZChlLCJMZXNzRXF1YWxTdGVuY2lsRnVuYyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGV0fSkpLHQuZChlLCJMZXNzU3RlbmNpbEZ1bmMiLChmdW5jdGlvbigpe3JldHVybiAkZX0pKSx0LmQoZSwiTGlnaHQiLChmdW5jdGlvbigpe3JldHVybiBnRX0pKSx0LmQoZSwiTGlnaHRQcm9iZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIFVFfSkpLHQuZChlLCJMaW5lIiwoZnVuY3Rpb24oKXtyZXR1cm4gR0J9KSksdC5kKGUsIkxpbmUzIiwoZnVuY3Rpb24oKXtyZXR1cm4geFF9KSksdC5kKGUsIkxpbmVCYXNpY01hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4gTkJ9KSksdC5kKGUsIkxpbmVDdXJ2ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGdjfSkpLHQuZChlLCJMaW5lQ3VydmUzIiwoZnVuY3Rpb24oKXtyZXR1cm4gRWN9KSksdC5kKGUsIkxpbmVEYXNoZWRNYXRlcmlhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHlnfSkpLHQuZChlLCJMaW5lTG9vcCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHZCfSkpLHQuZChlLCJMaW5lU2VnbWVudHMiLChmdW5jdGlvbigpe3JldHVybiBIQn0pKSx0LmQoZSwiTGluZWFyRW5jb2RpbmciLChmdW5jdGlvbigpe3JldHVybiBHZX0pKSx0LmQoZSwiTGluZWFyRmlsdGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gd0F9KSksdC5kKGUsIkxpbmVhckludGVycG9sYW50IiwoZnVuY3Rpb24oKXtyZXR1cm4gamd9KSksdC5kKGUsIkxpbmVhck1pcE1hcExpbmVhckZpbHRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGRBfSkpLHQuZChlLCJMaW5lYXJNaXBNYXBOZWFyZXN0RmlsdGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gSUF9KSksdC5kKGUsIkxpbmVhck1pcG1hcExpbmVhckZpbHRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIE1BfSkpLHQuZChlLCJMaW5lYXJNaXBtYXBOZWFyZXN0RmlsdGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gQ0F9KSksdC5kKGUsIkxpbmVhclNSR0JDb2xvclNwYWNlIiwoZnVuY3Rpb24oKXtyZXR1cm4gemV9KSksdC5kKGUsIkxpbmVhclRvbmVNYXBwaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gcX0pKSx0LmQoZSwiTG9hZGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gZUV9KSksdC5kKGUsIkxvYWRlclV0aWxzIiwoZnVuY3Rpb24oKXtyZXR1cm4gVEV9KSksdC5kKGUsIkxvYWRpbmdNYW5hZ2VyIiwoZnVuY3Rpb24oKXtyZXR1cm4gJGd9KSksdC5kKGUsIkxvb3BPbmNlIiwoZnVuY3Rpb24oKXtyZXR1cm4gTWV9KSksdC5kKGUsIkxvb3BQaW5nUG9uZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHBlfSkpLHQuZChlLCJMb29wUmVwZWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gZGV9KSksdC5kKGUsIkx1bWluYW5jZUFscGhhRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gYkF9KSksdC5kKGUsIkx1bWluYW5jZUZvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFNBfSkpLHQuZChlLCJNT1VTRSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksdC5kKGUsIk1hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4gYml9KSksdC5kKGUsIk1hdGVyaWFsTG9hZGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4geUV9KSksdC5kKGUsIk1hdGhVdGlscyIsKGZ1bmN0aW9uKCl7cmV0dXJuIHp0fSkpLHQuZChlLCJNYXRyaXgzIiwoZnVuY3Rpb24oKXtyZXR1cm4gUHR9KSksdC5kKGUsIk1hdHJpeDQiLChmdW5jdGlvbigpe3JldHVybiBfbn0pKSx0LmQoZSwiTWF4RXF1YXRpb24iLChmdW5jdGlvbigpe3JldHVybiBOfSkpLHQuZChlLCJNZXNoIiwoZnVuY3Rpb24oKXtyZXR1cm4gUnJ9KSksdC5kKGUsIk1lc2hCYXNpY01hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4gTGl9KSksdC5kKGUsIk1lc2hEZXB0aE1hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4gaGF9KSksdC5kKGUsIk1lc2hEaXN0YW5jZU1hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4gd2F9KSksdC5kKGUsIk1lc2hMYW1iZXJ0TWF0ZXJpYWwiLChmdW5jdGlvbigpe3JldHVybiBOZ30pKSx0LmQoZSwiTWVzaE1hdGNhcE1hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4gVWd9KSksdC5kKGUsIk1lc2hOb3JtYWxNYXRlcmlhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZnfSkpLHQuZChlLCJNZXNoUGhvbmdNYXRlcmlhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIERnfSkpLHQuZChlLCJNZXNoUGh5c2ljYWxNYXRlcmlhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEZnfSkpLHQuZChlLCJNZXNoU3RhbmRhcmRNYXRlcmlhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG1nfSkpLHQuZChlLCJNZXNoVG9vbk1hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4gWWd9KSksdC5kKGUsIk1pbkVxdWF0aW9uIiwoZnVuY3Rpb24oKXtyZXR1cm4gZn0pKSx0LmQoZSwiTWlycm9yZWRSZXBlYXRXcmFwcGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGdBfSkpLHQuZChlLCJNaXhPcGVyYXRpb24iLChmdW5jdGlvbigpe3JldHVybiBYfSkpLHQuZChlLCJNdWx0aXBseUJsZW5kaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gcH0pKSx0LmQoZSwiTXVsdGlwbHlPcGVyYXRpb24iLChmdW5jdGlvbigpe3JldHVybiBLfSkpLHQuZChlLCJOZWFyZXN0RmlsdGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gRUF9KSksdC5kKGUsIk5lYXJlc3RNaXBNYXBMaW5lYXJGaWx0ZXIiLChmdW5jdGlvbigpe3JldHVybiBoQX0pKSx0LmQoZSwiTmVhcmVzdE1pcE1hcE5lYXJlc3RGaWx0ZXIiLChmdW5jdGlvbigpe3JldHVybiB1QX0pKSx0LmQoZSwiTmVhcmVzdE1pcG1hcExpbmVhckZpbHRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGxBfSkpLHQuZChlLCJOZWFyZXN0TWlwbWFwTmVhcmVzdEZpbHRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIFFBfSkpLHQuZChlLCJOZXZlckNvbXBhcmUiLChmdW5jdGlvbigpe3JldHVybiBvdH0pKSx0LmQoZSwiTmV2ZXJEZXB0aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGp9KSksdC5kKGUsIk5ldmVyU3RlbmNpbEZ1bmMiLChmdW5jdGlvbigpe3JldHVybiBxZX0pKSx0LmQoZSwiTm9CbGVuZGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIEN9KSksdC5kKGUsIk5vQ29sb3JTcGFjZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGplfSkpLHQuZChlLCJOb1RvbmVNYXBwaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gX30pKSx0LmQoZSwiTm9ybWFsQW5pbWF0aW9uQmxlbmRNb2RlIiwoZnVuY3Rpb24oKXtyZXR1cm4gVWV9KSksdC5kKGUsIk5vcm1hbEJsZW5kaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gSX0pKSx0LmQoZSwiTm90RXF1YWxDb21wYXJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gZ3R9KSksdC5kKGUsIk5vdEVxdWFsRGVwdGgiLChmdW5jdGlvbigpe3JldHVybiBXfSkpLHQuZChlLCJOb3RFcXVhbFN0ZW5jaWxGdW5jIiwoZnVuY3Rpb24oKXtyZXR1cm4gbnR9KSksdC5kKGUsIk51bWJlcktleWZyYW1lVHJhY2siLChmdW5jdGlvbigpe3JldHVybiBPZ30pKSx0LmQoZSwiT2JqZWN0M0QiLChmdW5jdGlvbigpe3JldHVybiBwaX0pKSx0LmQoZSwiT2JqZWN0TG9hZGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gR0V9KSksdC5kKGUsIk9iamVjdFNwYWNlTm9ybWFsTWFwIiwoZnVuY3Rpb24oKXtyZXR1cm4ga2V9KSksdC5kKGUsIk9jdGFoZWRyb25CdWZmZXJHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEl1fSkpLHQuZChlLCJPY3RhaGVkcm9uR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBjZ30pKSx0LmQoZSwiT25lRmFjdG9yIiwoZnVuY3Rpb24oKXtyZXR1cm4geX0pKSx0LmQoZSwiT25lTWludXNEc3RBbHBoYUZhY3RvciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGJ9KSksdC5kKGUsIk9uZU1pbnVzRHN0Q29sb3JGYWN0b3IiLChmdW5jdGlvbigpe3JldHVybiB2fSkpLHQuZChlLCJPbmVNaW51c1NyY0FscGhhRmFjdG9yIiwoZnVuY3Rpb24oKXtyZXR1cm4gR30pKSx0LmQoZSwiT25lTWludXNTcmNDb2xvckZhY3RvciIsKGZ1bmN0aW9uKCl7cmV0dXJuIHh9KSksdC5kKGUsIk9ydGhvZ3JhcGhpY0NhbWVyYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEVvfSkpLHQuZChlLCJQQ0ZTaGFkb3dNYXAiLChmdW5jdGlvbigpe3JldHVybiBnfSkpLHQuZChlLCJQQ0ZTb2Z0U2hhZG93TWFwIiwoZnVuY3Rpb24oKXtyZXR1cm4gRX0pKSx0LmQoZSwiUE1SRU1HZW5lcmF0b3IiLChmdW5jdGlvbigpe3JldHVybiBNb30pKSx0LmQoZSwiUGF0aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIENjfSkpLHQuZChlLCJQZXJzcGVjdGl2ZUNhbWVyYSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHpyfSkpLHQuZChlLCJQbGFuZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIFhyfSkpLHQuZChlLCJQbGFuZUJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gTXV9KSksdC5kKGUsIlBsYW5lR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBlb30pKSx0LmQoZSwiUGxhbmVIZWxwZXIiLChmdW5jdGlvbigpe3JldHVybiBudX0pKSx0LmQoZSwiUG9pbnRMaWdodCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG1FfSkpLHQuZChlLCJQb2ludExpZ2h0SGVscGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4ga1F9KSksdC5kKGUsIlBvaW50cyIsKGZ1bmN0aW9uKCl7cmV0dXJuIFBCfSkpLHQuZChlLCJQb2ludHNNYXRlcmlhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGtCfSkpLHQuZChlLCJQb2xhckdyaWRIZWxwZXIiLChmdW5jdGlvbigpe3JldHVybiBPUX0pKSx0LmQoZSwiUG9seWhlZHJvbkJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gZHV9KSksdC5kKGUsIlBvbHloZWRyb25HZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEZjfSkpLHQuZChlLCJQb3NpdGlvbmFsQXVkaW8iLChmdW5jdGlvbigpe3JldHVybiBvUX0pKSx0LmQoZSwiUHJvcGVydHlCaW5kaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gUVF9KSksdC5kKGUsIlByb3BlcnR5TWl4ZXIiLChmdW5jdGlvbigpe3JldHVybiBhUX0pKSx0LmQoZSwiUXVhZHJhdGljQmV6aWVyQ3VydmUiLChmdW5jdGlvbigpe3JldHVybiBRY30pKSx0LmQoZSwiUXVhZHJhdGljQmV6aWVyQ3VydmUzIiwoZnVuY3Rpb24oKXtyZXR1cm4gdWN9KSksdC5kKGUsIlF1YXRlcm5pb24iLChmdW5jdGlvbigpe3JldHVybiBNbn0pKSx0LmQoZSwiUXVhdGVybmlvbktleWZyYW1lVHJhY2siLChmdW5jdGlvbigpe3JldHVybiBXZ30pKSx0LmQoZSwiUXVhdGVybmlvbkxpbmVhckludGVycG9sYW50IiwoZnVuY3Rpb24oKXtyZXR1cm4gVmd9KSksdC5kKGUsIlJFRF9HUkVFTl9SR1RDMl9Gb3JtYXQiLChmdW5jdGlvbigpe3JldHVybiBDZX0pKSx0LmQoZSwiUkVEX1JHVEMxX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGhlfSkpLHQuZChlLCJSRVZJU0lPTiIsKGZ1bmN0aW9uKCl7cmV0dXJuIG59KSksdC5kKGUsIlJHQkFEZXB0aFBhY2tpbmciLChmdW5jdGlvbigpe3JldHVybiBIZX0pKSx0LmQoZSwiUkdCQUZvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEdBfSkpLHQuZChlLCJSR0JBSW50ZWdlckZvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIExBfSkpLHQuZChlLCJSR0JBX0FTVENfMTB4MTBfRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gRWV9KSksdC5kKGUsIlJHQkFfQVNUQ18xMHg1X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEJlfSkpLHQuZChlLCJSR0JBX0FTVENfMTB4Nl9Gb3JtYXQiLChmdW5jdGlvbigpe3JldHVybiBjZX0pKSx0LmQoZSwiUkdCQV9BU1RDXzEweDhfRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gZ2V9KSksdC5kKGUsIlJHQkFfQVNUQ18xMngxMF9Gb3JtYXQiLChmdW5jdGlvbigpe3JldHVybiBRZX0pKSx0LmQoZSwiUkdCQV9BU1RDXzEyeDEyX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHVlfSkpLHQuZChlLCJSR0JBX0FTVENfNHg0X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGVlfSkpLHQuZChlLCJSR0JBX0FTVENfNXg0X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHRlfSkpLHQuZChlLCJSR0JBX0FTVENfNXg1X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG5lfSkpLHQuZChlLCJSR0JBX0FTVENfNng1X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGllfSkpLHQuZChlLCJSR0JBX0FTVENfNng2X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJlfSkpLHQuZChlLCJSR0JBX0FTVENfOHg1X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIG9lfSkpLHQuZChlLCJSR0JBX0FTVENfOHg2X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHNlfSkpLHQuZChlLCJSR0JBX0FTVENfOHg4X0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGFlfSkpLHQuZChlLCJSR0JBX0JQVENfRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gbGV9KSksdC5kKGUsIlJHQkFfRVRDMl9FQUNfRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gQWV9KSksdC5kKGUsIlJHQkFfUFZSVENfMkJQUFYxX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIF9BfSkpLHQuZChlLCJSR0JBX1BWUlRDXzRCUFBWMV9Gb3JtYXQiLChmdW5jdGlvbigpe3JldHVybiBaQX0pKSx0LmQoZSwiUkdCQV9TM1RDX0RYVDFfRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gT0F9KSksdC5kKGUsIlJHQkFfUzNUQ19EWFQzX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFZBfSkpLHQuZChlLCJSR0JBX1MzVENfRFhUNV9Gb3JtYXQiLChmdW5jdGlvbigpe3JldHVybiBXQX0pKSx0LmQoZSwiUkdCX0VUQzFfRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gcUF9KSksdC5kKGUsIlJHQl9FVEMyX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuICRBfSkpLHQuZChlLCJSR0JfUFZSVENfMkJQUFYxX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFhBfSkpLHQuZChlLCJSR0JfUFZSVENfNEJQUFYxX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEtBfSkpLHQuZChlLCJSR0JfUzNUQ19EWFQxX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFBBfSkpLHQuZChlLCJSR0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEpBfSkpLHQuZChlLCJSR0ludGVnZXJGb3JtYXQiLChmdW5jdGlvbigpe3JldHVybiB6QX0pKSx0LmQoZSwiUmF3U2hhZGVyTWF0ZXJpYWwiLChmdW5jdGlvbigpe3JldHVybiBwZ30pKSx0LmQoZSwiUmF5IiwoZnVuY3Rpb24oKXtyZXR1cm4gWm59KSksdC5kKGUsIlJheWNhc3RlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIG1RfSkpLHQuZChlLCJSZWN0QXJlYUxpZ2h0IiwoZnVuY3Rpb24oKXtyZXR1cm4gZkV9KSksdC5kKGUsIlJlZEZvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGtBfSkpLHQuZChlLCJSZWRJbnRlZ2VyRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gakF9KSksdC5kKGUsIlJlaW5oYXJkVG9uZU1hcHBpbmciLChmdW5jdGlvbigpe3JldHVybiAkfSkpLHQuZChlLCJSZXBlYXRXcmFwcGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIEJBfSkpLHQuZChlLCJSZXBsYWNlU3RlbmNpbE9wIiwoZnVuY3Rpb24oKXtyZXR1cm4gVmV9KSksdC5kKGUsIlJldmVyc2VTdWJ0cmFjdEVxdWF0aW9uIiwoZnVuY3Rpb24oKXtyZXR1cm4gWX0pKSx0LmQoZSwiUmluZ0J1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gcHV9KSksdC5kKGUsIlJpbmdHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGdnfSkpLHQuZChlLCJTSUdORURfUkVEX0dSRUVOX1JHVEMyX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEllfSkpLHQuZChlLCJTSUdORURfUkVEX1JHVEMxX0Zvcm1hdCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHdlfSkpLHQuZChlLCJTUkdCQ29sb3JTcGFjZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEplfSkpLHQuZChlLCJTY2VuZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIFNhfSkpLHQuZChlLCJTaGFkZXJDaHVuayIsKGZ1bmN0aW9uKCl7cmV0dXJuIHRvfSkpLHQuZChlLCJTaGFkZXJMaWIiLChmdW5jdGlvbigpe3JldHVybiBpb30pKSx0LmQoZSwiU2hhZGVyTWF0ZXJpYWwiLChmdW5jdGlvbigpe3JldHVybiBqcn0pKSx0LmQoZSwiU2hhZG93TWF0ZXJpYWwiLChmdW5jdGlvbigpe3JldHVybiBkZ30pKSx0LmQoZSwiU2hhcGUiLChmdW5jdGlvbigpe3JldHVybiBUY30pKSx0LmQoZSwiU2hhcGVCdWZmZXJHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIG11fSkpLHQuZChlLCJTaGFwZUdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gRWd9KSksdC5kKGUsIlNoYXBlUGF0aCIsKGZ1bmN0aW9uKCl7cmV0dXJuIEJ1fSkpLHQuZChlLCJTaGFwZVV0aWxzIiwoZnVuY3Rpb24oKXtyZXR1cm4gaWd9KSksdC5kKGUsIlNob3J0VHlwZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEZBfSkpLHQuZChlLCJTa2VsZXRvbiIsKGZ1bmN0aW9uKCl7cmV0dXJuIENCfSkpLHQuZChlLCJTa2VsZXRvbkhlbHBlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIHZRfSkpLHQuZChlLCJTa2lubmVkTWVzaCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFFCfSkpLHQuZChlLCJTb3VyY2UiLChmdW5jdGlvbigpe3JldHVybiBCbn0pKSx0LmQoZSwiU3BoZXJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gem59KSksdC5kKGUsIlNwaGVyZUJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gRnV9KSksdC5kKGUsIlNwaGVyZUdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gUWd9KSksdC5kKGUsIlNwaGVyaWNhbCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFlRfSkpLHQuZChlLCJTcGhlcmljYWxIYXJtb25pY3MzIiwoZnVuY3Rpb24oKXtyZXR1cm4gTkV9KSksdC5kKGUsIlNwbGluZUN1cnZlIiwoZnVuY3Rpb24oKXtyZXR1cm4gbGN9KSksdC5kKGUsIlNwb3RMaWdodCIsKGZ1bmN0aW9uKCl7cmV0dXJuIENFfSkpLHQuZChlLCJTcG90TGlnaHRIZWxwZXIiLChmdW5jdGlvbigpe3JldHVybiBHUX0pKSx0LmQoZSwiU3ByaXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gJGF9KSksdC5kKGUsIlNwcml0ZU1hdGVyaWFsIiwoZnVuY3Rpb24oKXtyZXR1cm4ga2F9KSksdC5kKGUsIlNyY0FscGhhRmFjdG9yIiwoZnVuY3Rpb24oKXtyZXR1cm4gUn0pKSx0LmQoZSwiU3JjQWxwaGFTYXR1cmF0ZUZhY3RvciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGt9KSksdC5kKGUsIlNyY0NvbG9yRmFjdG9yIiwoZnVuY3Rpb24oKXtyZXR1cm4gVH0pKSx0LmQoZSwiU3RhdGljQ29weVVzYWdlIiwoZnVuY3Rpb24oKXtyZXR1cm4gTXR9KSksdC5kKGUsIlN0YXRpY0RyYXdVc2FnZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV0fSkpLHQuZChlLCJTdGF0aWNSZWFkVXNhZ2UiLChmdW5jdGlvbigpe3JldHVybiB3dH0pKSx0LmQoZSwiU3RlcmVvQ2FtZXJhIiwoZnVuY3Rpb24oKXtyZXR1cm4gV0V9KSksdC5kKGUsIlN0cmVhbUNvcHlVc2FnZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHB0fSkpLHQuZChlLCJTdHJlYW1EcmF3VXNhZ2UiLChmdW5jdGlvbigpe3JldHVybiBodH0pKSx0LmQoZSwiU3RyZWFtUmVhZFVzYWdlIiwoZnVuY3Rpb24oKXtyZXR1cm4gSXR9KSksdC5kKGUsIlN0cmluZ0tleWZyYW1lVHJhY2siLChmdW5jdGlvbigpe3JldHVybiBLZ30pKSx0LmQoZSwiU3VidHJhY3RFcXVhdGlvbiIsKGZ1bmN0aW9uKCl7cmV0dXJuIER9KSksdC5kKGUsIlN1YnRyYWN0aXZlQmxlbmRpbmciLChmdW5jdGlvbigpe3JldHVybiBkfSkpLHQuZChlLCJUT1VDSCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHJ9KSksdC5kKGUsIlRhbmdlbnRTcGFjZU5vcm1hbE1hcCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHZlfSkpLHQuZChlLCJUZXRyYWhlZHJvbkJ1ZmZlckdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gRHV9KSksdC5kKGUsIlRldHJhaGVkcm9uR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiB1Z30pKSx0LmQoZSwiVGV4dHVyZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEVufSkpLHQuZChlLCJUZXh0dXJlTG9hZGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gY0V9KSksdC5kKGUsIlRvcnVzQnVmZmVyR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBZdX0pKSx0LmQoZSwiVG9ydXNHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGxnfSkpLHQuZChlLCJUb3J1c0tub3RCdWZmZXJHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZ1fSkpLHQuZChlLCJUb3J1c0tub3RHZW9tZXRyeSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGhnfSkpLHQuZChlLCJUcmlhbmdsZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIEdpfSkpLHQuZChlLCJUcmlhbmdsZUZhbkRyYXdNb2RlIiwoZnVuY3Rpb24oKXtyZXR1cm4gUmV9KSksdC5kKGUsIlRyaWFuZ2xlU3RyaXBEcmF3TW9kZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHhlfSkpLHQuZChlLCJUcmlhbmdsZXNEcmF3TW9kZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIFRlfSkpLHQuZChlLCJUdWJlQnVmZmVyR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBOdX0pKSx0LmQoZSwiVHViZUdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gd2d9KSksdC5kKGUsIlR3b1Bhc3NEb3VibGVTaWRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gd30pKSx0LmQoZSwiVVZNYXBwaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gbkF9KSksdC5kKGUsIlVpbnQxNkJ1ZmZlckF0dHJpYnV0ZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHRyfSkpLHQuZChlLCJVaW50MzJCdWZmZXJBdHRyaWJ1dGUiLChmdW5jdGlvbigpe3JldHVybiBpcn0pKSx0LmQoZSwiVWludDhCdWZmZXJBdHRyaWJ1dGUiLChmdW5jdGlvbigpe3JldHVybiAkaX0pKSx0LmQoZSwiVWludDhDbGFtcGVkQnVmZmVyQXR0cmlidXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gQXJ9KSksdC5kKGUsIlVuaWZvcm0iLChmdW5jdGlvbigpe3JldHVybiBDUX0pKSx0LmQoZSwiVW5pZm9ybXNHcm91cCIsKGZ1bmN0aW9uKCl7cmV0dXJuIE1RfSkpLHQuZChlLCJVbmlmb3Jtc0xpYiIsKGZ1bmN0aW9uKCl7cmV0dXJuIG5vfSkpLHQuZChlLCJVbmlmb3Jtc1V0aWxzIiwoZnVuY3Rpb24oKXtyZXR1cm4ga3J9KSksdC5kKGUsIlVuc2lnbmVkQnl0ZVR5cGUiLChmdW5jdGlvbigpe3JldHVybiBwQX0pKSx0LmQoZSwiVW5zaWduZWRJbnQyNDhUeXBlIiwoZnVuY3Rpb24oKXtyZXR1cm4geEF9KSksdC5kKGUsIlVuc2lnbmVkSW50VHlwZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZBfSkpLHQuZChlLCJVbnNpZ25lZFNob3J0NDQ0NFR5cGUiLChmdW5jdGlvbigpe3JldHVybiB5QX0pKSx0LmQoZSwiVW5zaWduZWRTaG9ydDU1NTFUeXBlIiwoZnVuY3Rpb24oKXtyZXR1cm4gVEF9KSksdC5kKGUsIlVuc2lnbmVkU2hvcnRUeXBlIiwoZnVuY3Rpb24oKXtyZXR1cm4gREF9KSksdC5kKGUsIlZTTVNoYWRvd01hcCIsKGZ1bmN0aW9uKCl7cmV0dXJuIFF9KSksdC5kKGUsIlZlY3RvcjIiLChmdW5jdGlvbigpe3JldHVybiBMdH0pKSx0LmQoZSwiVmVjdG9yMyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGRufSkpLHQuZChlLCJWZWN0b3I0IiwoZnVuY3Rpb24oKXtyZXR1cm4gUW59KSksdC5kKGUsIlZlY3RvcktleWZyYW1lVHJhY2siLChmdW5jdGlvbigpe3JldHVybiBYZ30pKSx0LmQoZSwiVmlkZW9UZXh0dXJlIiwoZnVuY3Rpb24oKXtyZXR1cm4gVkJ9KSksdC5kKGUsIldlYkdMMVJlbmRlcmVyIiwoZnVuY3Rpb24oKXtyZXR1cm4geGF9KSksdC5kKGUsIldlYkdMM0RSZW5kZXJUYXJnZXQiLChmdW5jdGlvbigpe3JldHVybiBDbn0pKSx0LmQoZSwiV2ViR0xBcnJheVJlbmRlclRhcmdldCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGhufSkpLHQuZChlLCJXZWJHTENvb3JkaW5hdGVTeXN0ZW0iLChmdW5jdGlvbigpe3JldHVybiBZdH0pKSx0LmQoZSwiV2ViR0xDdWJlUmVuZGVyVGFyZ2V0IiwoZnVuY3Rpb24oKXtyZXR1cm4gT3J9KSksdC5kKGUsIldlYkdMTXVsdGlwbGVSZW5kZXJUYXJnZXRzIiwoZnVuY3Rpb24oKXtyZXR1cm4gSW59KSksdC5kKGUsIldlYkdMUmVuZGVyVGFyZ2V0IiwoZnVuY3Rpb24oKXtyZXR1cm4gdW59KSksdC5kKGUsIldlYkdMUmVuZGVyZXIiLChmdW5jdGlvbigpe3JldHVybiBUYX0pKSx0LmQoZSwiV2ViR0xVdGlscyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGRhfSkpLHQuZChlLCJXZWJHUFVDb29yZGluYXRlU3lzdGVtIiwoZnVuY3Rpb24oKXtyZXR1cm4gZnR9KSksdC5kKGUsIldpcmVmcmFtZUdlb21ldHJ5IiwoZnVuY3Rpb24oKXtyZXR1cm4gQ2d9KSksdC5kKGUsIldyYXBBcm91bmRFbmRpbmciLChmdW5jdGlvbigpe3JldHVybiBOZX0pKSx0LmQoZSwiWmVyb0N1cnZhdHVyZUVuZGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIFllfSkpLHQuZChlLCJaZXJvRmFjdG9yIiwoZnVuY3Rpb24oKXtyZXR1cm4gVX0pKSx0LmQoZSwiWmVyb1Nsb3BlRW5kaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gZmV9KSksdC5kKGUsIlplcm9TdGVuY2lsT3AiLChmdW5jdGlvbigpe3JldHVybiBQZX0pKSx0LmQoZSwiX1NSR0JBRm9ybWF0IiwoZnVuY3Rpb24oKXtyZXR1cm4gRHR9KSksdC5kKGUsInNSR0JFbmNvZGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIFNlfSkpOwovKioKICogQGxpY2Vuc2UKICogQ29weXJpZ2h0IDIwMTAtMjAyMyBUaHJlZS5qcyBBdXRob3JzCiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVQKICovCmNvbnN0IG49IjE1MyIsaT17TEVGVDowLE1JRERMRToxLFJJR0hUOjIsUk9UQVRFOjAsRE9MTFk6MSxQQU46Mn0scj17Uk9UQVRFOjAsUEFOOjEsRE9MTFlfUEFOOjIsRE9MTFlfUk9UQVRFOjN9LG89MCxzPTEsYT0yLEI9MyxjPTAsZz0xLEU9MixRPTMsdT0wLGw9MSxoPTIsdz0yLEM9MCxJPTEsTT0yLGQ9MyxwPTQsbT01LEY9MTAwLEQ9MTAxLFk9MTAyLGY9MTAzLE49MTA0LFU9MjAwLHk9MjAxLFQ9MjAyLHg9MjAzLFI9MjA0LEc9MjA1LFM9MjA2LGI9MjA3LEg9MjA4LHY9MjA5LGs9MjEwLGo9MCxKPTEsej0yLEw9MyxQPTQsTz01LFY9NixXPTcsSz0wLFg9MSxaPTIsXz0wLHE9MSwkPTIsQUE9MyxlQT00LHRBPTUsbkE9MzAwLGlBPTMwMSxyQT0zMDIsb0E9MzAzLHNBPTMwNCxhQT0zMDYsQkE9MWUzLGNBPTEwMDEsZ0E9MTAwMixFQT0xMDAzLFFBPTEwMDQsdUE9MTAwNCxsQT0xMDA1LGhBPTEwMDUsd0E9MTAwNixDQT0xMDA3LElBPTEwMDcsTUE9MTAwOCxkQT0xMDA4LHBBPTEwMDksbUE9MTAxMCxGQT0xMDExLERBPTEwMTIsWUE9MTAxMyxmQT0xMDE0LE5BPTEwMTUsVUE9MTAxNix5QT0xMDE3LFRBPTEwMTgseEE9MTAyMCxSQT0xMDIxLEdBPTEwMjMsU0E9MTAyNCxiQT0xMDI1LEhBPTEwMjYsdkE9MTAyNyxrQT0xMDI4LGpBPTEwMjksSkE9MTAzMCx6QT0xMDMxLExBPTEwMzMsUEE9MzM3NzYsT0E9MzM3NzcsVkE9MzM3NzgsV0E9MzM3NzksS0E9MzU4NDAsWEE9MzU4NDEsWkE9MzU4NDIsX0E9MzU4NDMscUE9MzYxOTYsJEE9Mzc0OTIsQWU9Mzc0OTYsZWU9Mzc4MDgsdGU9Mzc4MDksbmU9Mzc4MTAsaWU9Mzc4MTEscmU9Mzc4MTIsb2U9Mzc4MTMsc2U9Mzc4MTQsYWU9Mzc4MTUsQmU9Mzc4MTYsY2U9Mzc4MTcsZ2U9Mzc4MTgsRWU9Mzc4MTksUWU9Mzc4MjAsdWU9Mzc4MjEsbGU9MzY0OTIsaGU9MzYyODMsd2U9MzYyODQsQ2U9MzYyODUsSWU9MzYyODYsTWU9MjIwMCxkZT0yMjAxLHBlPTIyMDIsbWU9MjMwMCxGZT0yMzAxLERlPTIzMDIsWWU9MjQwMCxmZT0yNDAxLE5lPTI0MDIsVWU9MjUwMCx5ZT0yNTAxLFRlPTAseGU9MSxSZT0yLEdlPTNlMyxTZT0zMDAxLGJlPTMyMDAsSGU9MzIwMSx2ZT0wLGtlPTEsamU9IiIsSmU9InNyZ2IiLHplPSJzcmdiLWxpbmVhciIsTGU9ImRpc3BsYXktcDMiLFBlPTAsT2U9NzY4MCxWZT03NjgxLFdlPTc2ODIsS2U9NzY4MyxYZT0zNDA1NSxaZT0zNDA1NixfZT01Mzg2LHFlPTUxMiwkZT01MTMsQXQ9NTE0LGV0PTUxNSx0dD01MTYsbnQ9NTE3LGl0PTUxOCxydD01MTksb3Q9NTEyLHN0PTUxMyxhdD01MTQsQnQ9NTE1LGN0PTUxNixndD01MTcsRXQ9NTE4LFF0PTUxOSx1dD0zNTA0NCxsdD0zNTA0OCxodD0zNTA0MCx3dD0zNTA0NSxDdD0zNTA0OSxJdD0zNTA0MSxNdD0zNTA0NixkdD0zNTA1MCxwdD0zNTA0MixtdD0iMTAwIixGdD0iMzAwIGVzIixEdD0xMDM1LFl0PTJlMyxmdD0yMDAxO2NsYXNzIE50e2FkZEV2ZW50TGlzdGVuZXIoQSxlKXt2b2lkIDA9PT10aGlzLl9saXN0ZW5lcnMmJih0aGlzLl9saXN0ZW5lcnM9e30pO2NvbnN0IHQ9dGhpcy5fbGlzdGVuZXJzO3ZvaWQgMD09PXRbQV0mJih0W0FdPVtdKSwtMT09PXRbQV0uaW5kZXhPZihlKSYmdFtBXS5wdXNoKGUpfWhhc0V2ZW50TGlzdGVuZXIoQSxlKXtpZih2b2lkIDA9PT10aGlzLl9saXN0ZW5lcnMpcmV0dXJuITE7Y29uc3QgdD10aGlzLl9saXN0ZW5lcnM7cmV0dXJuIHZvaWQgMCE9PXRbQV0mJi0xIT09dFtBXS5pbmRleE9mKGUpfXJlbW92ZUV2ZW50TGlzdGVuZXIoQSxlKXtpZih2b2lkIDA9PT10aGlzLl9saXN0ZW5lcnMpcmV0dXJuO2NvbnN0IHQ9dGhpcy5fbGlzdGVuZXJzW0FdO2lmKHZvaWQgMCE9PXQpe2NvbnN0IEE9dC5pbmRleE9mKGUpOy0xIT09QSYmdC5zcGxpY2UoQSwxKX19ZGlzcGF0Y2hFdmVudChBKXtpZih2b2lkIDA9PT10aGlzLl9saXN0ZW5lcnMpcmV0dXJuO2NvbnN0IGU9dGhpcy5fbGlzdGVuZXJzW0EudHlwZV07aWYodm9pZCAwIT09ZSl7QS50YXJnZXQ9dGhpcztjb25zdCB0PWUuc2xpY2UoMCk7Zm9yKGxldCBlPTAsbj10Lmxlbmd0aDtlPG47ZSsrKXRbZV0uY2FsbCh0aGlzLEEpO0EudGFyZ2V0PW51bGx9fX1jb25zdCBVdD1bIjAwIiwiMDEiLCIwMiIsIjAzIiwiMDQiLCIwNSIsIjA2IiwiMDciLCIwOCIsIjA5IiwiMGEiLCIwYiIsIjBjIiwiMGQiLCIwZSIsIjBmIiwiMTAiLCIxMSIsIjEyIiwiMTMiLCIxNCIsIjE1IiwiMTYiLCIxNyIsIjE4IiwiMTkiLCIxYSIsIjFiIiwiMWMiLCIxZCIsIjFlIiwiMWYiLCIyMCIsIjIxIiwiMjIiLCIyMyIsIjI0IiwiMjUiLCIyNiIsIjI3IiwiMjgiLCIyOSIsIjJhIiwiMmIiLCIyYyIsIjJkIiwiMmUiLCIyZiIsIjMwIiwiMzEiLCIzMiIsIjMzIiwiMzQiLCIzNSIsIjM2IiwiMzciLCIzOCIsIjM5IiwiM2EiLCIzYiIsIjNjIiwiM2QiLCIzZSIsIjNmIiwiNDAiLCI0MSIsIjQyIiwiNDMiLCI0NCIsIjQ1IiwiNDYiLCI0NyIsIjQ4IiwiNDkiLCI0YSIsIjRiIiwiNGMiLCI0ZCIsIjRlIiwiNGYiLCI1MCIsIjUxIiwiNTIiLCI1MyIsIjU0IiwiNTUiLCI1NiIsIjU3IiwiNTgiLCI1OSIsIjVhIiwiNWIiLCI1YyIsIjVkIiwiNWUiLCI1ZiIsIjYwIiwiNjEiLCI2MiIsIjYzIiwiNjQiLCI2NSIsIjY2IiwiNjciLCI2OCIsIjY5IiwiNmEiLCI2YiIsIjZjIiwiNmQiLCI2ZSIsIjZmIiwiNzAiLCI3MSIsIjcyIiwiNzMiLCI3NCIsIjc1IiwiNzYiLCI3NyIsIjc4IiwiNzkiLCI3YSIsIjdiIiwiN2MiLCI3ZCIsIjdlIiwiN2YiLCI4MCIsIjgxIiwiODIiLCI4MyIsIjg0IiwiODUiLCI4NiIsIjg3IiwiODgiLCI4OSIsIjhhIiwiOGIiLCI4YyIsIjhkIiwiOGUiLCI4ZiIsIjkwIiwiOTEiLCI5MiIsIjkzIiwiOTQiLCI5NSIsIjk2IiwiOTciLCI5OCIsIjk5IiwiOWEiLCI5YiIsIjljIiwiOWQiLCI5ZSIsIjlmIiwiYTAiLCJhMSIsImEyIiwiYTMiLCJhNCIsImE1IiwiYTYiLCJhNyIsImE4IiwiYTkiLCJhYSIsImFiIiwiYWMiLCJhZCIsImFlIiwiYWYiLCJiMCIsImIxIiwiYjIiLCJiMyIsImI0IiwiYjUiLCJiNiIsImI3IiwiYjgiLCJiOSIsImJhIiwiYmIiLCJiYyIsImJkIiwiYmUiLCJiZiIsImMwIiwiYzEiLCJjMiIsImMzIiwiYzQiLCJjNSIsImM2IiwiYzciLCJjOCIsImM5IiwiY2EiLCJjYiIsImNjIiwiY2QiLCJjZSIsImNmIiwiZDAiLCJkMSIsImQyIiwiZDMiLCJkNCIsImQ1IiwiZDYiLCJkNyIsImQ4IiwiZDkiLCJkYSIsImRiIiwiZGMiLCJkZCIsImRlIiwiZGYiLCJlMCIsImUxIiwiZTIiLCJlMyIsImU0IiwiZTUiLCJlNiIsImU3IiwiZTgiLCJlOSIsImVhIiwiZWIiLCJlYyIsImVkIiwiZWUiLCJlZiIsImYwIiwiZjEiLCJmMiIsImYzIiwiZjQiLCJmNSIsImY2IiwiZjciLCJmOCIsImY5IiwiZmEiLCJmYiIsImZjIiwiZmQiLCJmZSIsImZmIl07bGV0IHl0PTEyMzQ1Njc7Y29uc3QgVHQ9TWF0aC5QSS8xODAseHQ9MTgwL01hdGguUEk7ZnVuY3Rpb24gUnQoKXtjb25zdCBBPTQyOTQ5NjcyOTUqTWF0aC5yYW5kb20oKXwwLGU9NDI5NDk2NzI5NSpNYXRoLnJhbmRvbSgpfDAsdD00Mjk0OTY3Mjk1Kk1hdGgucmFuZG9tKCl8MCxuPTQyOTQ5NjcyOTUqTWF0aC5yYW5kb20oKXwwO3JldHVybihVdFsyNTUmQV0rVXRbQT4+OCYyNTVdK1V0W0E+PjE2JjI1NV0rVXRbQT4+MjQmMjU1XSsiLSIrVXRbMjU1JmVdK1V0W2U+PjgmMjU1XSsiLSIrVXRbZT4+MTYmMTV8NjRdK1V0W2U+PjI0JjI1NV0rIi0iK1V0WzYzJnR8MTI4XStVdFt0Pj44JjI1NV0rIi0iK1V0W3Q+PjE2JjI1NV0rVXRbdD4+MjQmMjU1XStVdFsyNTUmbl0rVXRbbj4+OCYyNTVdK1V0W24+PjE2JjI1NV0rVXRbbj4+MjQmMjU1XSkudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBHdChBLGUsdCl7cmV0dXJuIE1hdGgubWF4KGUsTWF0aC5taW4odCxBKSl9ZnVuY3Rpb24gU3QoQSxlKXtyZXR1cm4oQSVlK2UpJWV9ZnVuY3Rpb24gYnQoQSxlLHQpe3JldHVybigxLXQpKkErdCplfWZ1bmN0aW9uIEh0KEEpe3JldHVybiAwPT0oQSZBLTEpJiYwIT09QX1mdW5jdGlvbiB2dChBKXtyZXR1cm4gTWF0aC5wb3coMixNYXRoLmNlaWwoTWF0aC5sb2coQSkvTWF0aC5MTjIpKX1mdW5jdGlvbiBrdChBKXtyZXR1cm4gTWF0aC5wb3coMixNYXRoLmZsb29yKE1hdGgubG9nKEEpL01hdGguTE4yKSl9ZnVuY3Rpb24ganQoQSxlKXtzd2l0Y2goZS5jb25zdHJ1Y3Rvcil7Y2FzZSBGbG9hdDMyQXJyYXk6cmV0dXJuIEE7Y2FzZSBVaW50MzJBcnJheTpyZXR1cm4gQS80Mjk0OTY3Mjk1O2Nhc2UgVWludDE2QXJyYXk6cmV0dXJuIEEvNjU1MzU7Y2FzZSBVaW50OEFycmF5OnJldHVybiBBLzI1NTtjYXNlIEludDMyQXJyYXk6cmV0dXJuIE1hdGgubWF4KEEvMjE0NzQ4MzY0NywtMSk7Y2FzZSBJbnQxNkFycmF5OnJldHVybiBNYXRoLm1heChBLzMyNzY3LC0xKTtjYXNlIEludDhBcnJheTpyZXR1cm4gTWF0aC5tYXgoQS8xMjcsLTEpO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCB0eXBlLiIpfX1mdW5jdGlvbiBKdChBLGUpe3N3aXRjaChlLmNvbnN0cnVjdG9yKXtjYXNlIEZsb2F0MzJBcnJheTpyZXR1cm4gQTtjYXNlIFVpbnQzMkFycmF5OnJldHVybiBNYXRoLnJvdW5kKDQyOTQ5NjcyOTUqQSk7Y2FzZSBVaW50MTZBcnJheTpyZXR1cm4gTWF0aC5yb3VuZCg2NTUzNSpBKTtjYXNlIFVpbnQ4QXJyYXk6cmV0dXJuIE1hdGgucm91bmQoMjU1KkEpO2Nhc2UgSW50MzJBcnJheTpyZXR1cm4gTWF0aC5yb3VuZCgyMTQ3NDgzNjQ3KkEpO2Nhc2UgSW50MTZBcnJheTpyZXR1cm4gTWF0aC5yb3VuZCgzMjc2NypBKTtjYXNlIEludDhBcnJheTpyZXR1cm4gTWF0aC5yb3VuZCgxMjcqQSk7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgY29tcG9uZW50IHR5cGUuIil9fWNvbnN0IHp0PXtERUcyUkFEOlR0LFJBRDJERUc6eHQsZ2VuZXJhdGVVVUlEOlJ0LGNsYW1wOkd0LGV1Y2xpZGVhbk1vZHVsbzpTdCxtYXBMaW5lYXI6ZnVuY3Rpb24oQSxlLHQsbixpKXtyZXR1cm4gbisoQS1lKSooaS1uKS8odC1lKX0saW52ZXJzZUxlcnA6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBIT09ZT8odC1BKS8oZS1BKTowfSxsZXJwOmJ0LGRhbXA6ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIGJ0KEEsZSwxLU1hdGguZXhwKC10Km4pKX0scGluZ3Bvbmc6ZnVuY3Rpb24oQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjE7cmV0dXJuIGUtTWF0aC5hYnMoU3QoQSwyKmUpLWUpfSxzbW9vdGhzdGVwOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQTw9ZT8wOkE+PXQ/MTooQT0oQS1lKS8odC1lKSkqQSooMy0yKkEpfSxzbW9vdGhlcnN0ZXA6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBPD1lPzA6QT49dD8xOihBPShBLWUpLyh0LWUpKSpBKkEqKEEqKDYqQS0xNSkrMTApfSxyYW5kSW50OmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEErTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKihlLUErMSkpfSxyYW5kRmxvYXQ6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQStNYXRoLnJhbmRvbSgpKihlLUEpfSxyYW5kRmxvYXRTcHJlYWQ6ZnVuY3Rpb24oQSl7cmV0dXJuIEEqKC41LU1hdGgucmFuZG9tKCkpfSxzZWVkZWRSYW5kb206ZnVuY3Rpb24oQSl7dm9pZCAwIT09QSYmKHl0PUEpO2xldCBlPXl0Kz0xODMxNTY1ODEzO3JldHVybiBlPU1hdGguaW11bChlXmU+Pj4xNSwxfGUpLGVePWUrTWF0aC5pbXVsKGVeZT4+PjcsNjF8ZSksKChlXmU+Pj4xNCk+Pj4wKS80Mjk0OTY3Mjk2fSxkZWdUb1JhZDpmdW5jdGlvbihBKXtyZXR1cm4gQSpUdH0scmFkVG9EZWc6ZnVuY3Rpb24oQSl7cmV0dXJuIEEqeHR9LGlzUG93ZXJPZlR3bzpIdCxjZWlsUG93ZXJPZlR3bzp2dCxmbG9vclBvd2VyT2ZUd286a3Qsc2V0UXVhdGVybmlvbkZyb21Qcm9wZXJFdWxlcjpmdW5jdGlvbihBLGUsdCxuLGkpe2NvbnN0IHI9TWF0aC5jb3Msbz1NYXRoLnNpbixzPXIodC8yKSxhPW8odC8yKSxCPXIoKGUrbikvMiksYz1vKChlK24pLzIpLGc9cigoZS1uKS8yKSxFPW8oKGUtbikvMiksUT1yKChuLWUpLzIpLHU9bygobi1lKS8yKTtzd2l0Y2goaSl7Y2FzZSJYWVgiOkEuc2V0KHMqYyxhKmcsYSpFLHMqQik7YnJlYWs7Y2FzZSJZWlkiOkEuc2V0KGEqRSxzKmMsYSpnLHMqQik7YnJlYWs7Y2FzZSJaWFoiOkEuc2V0KGEqZyxhKkUscypjLHMqQik7YnJlYWs7Y2FzZSJYWlgiOkEuc2V0KHMqYyxhKnUsYSpRLHMqQik7YnJlYWs7Y2FzZSJZWFkiOkEuc2V0KGEqUSxzKmMsYSp1LHMqQik7YnJlYWs7Y2FzZSJaWVoiOkEuc2V0KGEqdSxhKlEscypjLHMqQik7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLndhcm4oIlRIUkVFLk1hdGhVdGlsczogLnNldFF1YXRlcm5pb25Gcm9tUHJvcGVyRXVsZXIoKSBlbmNvdW50ZXJlZCBhbiB1bmtub3duIG9yZGVyOiAiK2kpfX0sbm9ybWFsaXplOkp0LGRlbm9ybWFsaXplOmp0fTtjbGFzcyBMdHtjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTowLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7THQucHJvdG90eXBlLmlzVmVjdG9yMj0hMCx0aGlzLng9QSx0aGlzLnk9ZX1nZXQgd2lkdGgoKXtyZXR1cm4gdGhpcy54fXNldCB3aWR0aChBKXt0aGlzLng9QX1nZXQgaGVpZ2h0KCl7cmV0dXJuIHRoaXMueX1zZXQgaGVpZ2h0KEEpe3RoaXMueT1BfXNldChBLGUpe3JldHVybiB0aGlzLng9QSx0aGlzLnk9ZSx0aGlzfXNldFNjYWxhcihBKXtyZXR1cm4gdGhpcy54PUEsdGhpcy55PUEsdGhpc31zZXRYKEEpe3JldHVybiB0aGlzLng9QSx0aGlzfXNldFkoQSl7cmV0dXJuIHRoaXMueT1BLHRoaXN9c2V0Q29tcG9uZW50KEEsZSl7c3dpdGNoKEEpe2Nhc2UgMDp0aGlzLng9ZTticmVhaztjYXNlIDE6dGhpcy55PWU7YnJlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoImluZGV4IGlzIG91dCBvZiByYW5nZTogIitBKX1yZXR1cm4gdGhpc31nZXRDb21wb25lbnQoQSl7c3dpdGNoKEEpe2Nhc2UgMDpyZXR1cm4gdGhpcy54O2Nhc2UgMTpyZXR1cm4gdGhpcy55O2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJpbmRleCBpcyBvdXQgb2YgcmFuZ2U6ICIrQSl9fWNsb25lKCl7cmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMueCx0aGlzLnkpfWNvcHkoQSl7cmV0dXJuIHRoaXMueD1BLngsdGhpcy55PUEueSx0aGlzfWFkZChBKXtyZXR1cm4gdGhpcy54Kz1BLngsdGhpcy55Kz1BLnksdGhpc31hZGRTY2FsYXIoQSl7cmV0dXJuIHRoaXMueCs9QSx0aGlzLnkrPUEsdGhpc31hZGRWZWN0b3JzKEEsZSl7cmV0dXJuIHRoaXMueD1BLngrZS54LHRoaXMueT1BLnkrZS55LHRoaXN9YWRkU2NhbGVkVmVjdG9yKEEsZSl7cmV0dXJuIHRoaXMueCs9QS54KmUsdGhpcy55Kz1BLnkqZSx0aGlzfXN1YihBKXtyZXR1cm4gdGhpcy54LT1BLngsdGhpcy55LT1BLnksdGhpc31zdWJTY2FsYXIoQSl7cmV0dXJuIHRoaXMueC09QSx0aGlzLnktPUEsdGhpc31zdWJWZWN0b3JzKEEsZSl7cmV0dXJuIHRoaXMueD1BLngtZS54LHRoaXMueT1BLnktZS55LHRoaXN9bXVsdGlwbHkoQSl7cmV0dXJuIHRoaXMueCo9QS54LHRoaXMueSo9QS55LHRoaXN9bXVsdGlwbHlTY2FsYXIoQSl7cmV0dXJuIHRoaXMueCo9QSx0aGlzLnkqPUEsdGhpc31kaXZpZGUoQSl7cmV0dXJuIHRoaXMueC89QS54LHRoaXMueS89QS55LHRoaXN9ZGl2aWRlU2NhbGFyKEEpe3JldHVybiB0aGlzLm11bHRpcGx5U2NhbGFyKDEvQSl9YXBwbHlNYXRyaXgzKEEpe2NvbnN0IGU9dGhpcy54LHQ9dGhpcy55LG49QS5lbGVtZW50cztyZXR1cm4gdGhpcy54PW5bMF0qZStuWzNdKnQrbls2XSx0aGlzLnk9blsxXSplK25bNF0qdCtuWzddLHRoaXN9bWluKEEpe3JldHVybiB0aGlzLng9TWF0aC5taW4odGhpcy54LEEueCksdGhpcy55PU1hdGgubWluKHRoaXMueSxBLnkpLHRoaXN9bWF4KEEpe3JldHVybiB0aGlzLng9TWF0aC5tYXgodGhpcy54LEEueCksdGhpcy55PU1hdGgubWF4KHRoaXMueSxBLnkpLHRoaXN9Y2xhbXAoQSxlKXtyZXR1cm4gdGhpcy54PU1hdGgubWF4KEEueCxNYXRoLm1pbihlLngsdGhpcy54KSksdGhpcy55PU1hdGgubWF4KEEueSxNYXRoLm1pbihlLnksdGhpcy55KSksdGhpc31jbGFtcFNjYWxhcihBLGUpe3JldHVybiB0aGlzLng9TWF0aC5tYXgoQSxNYXRoLm1pbihlLHRoaXMueCkpLHRoaXMueT1NYXRoLm1heChBLE1hdGgubWluKGUsdGhpcy55KSksdGhpc31jbGFtcExlbmd0aChBLGUpe2NvbnN0IHQ9dGhpcy5sZW5ndGgoKTtyZXR1cm4gdGhpcy5kaXZpZGVTY2FsYXIodHx8MSkubXVsdGlwbHlTY2FsYXIoTWF0aC5tYXgoQSxNYXRoLm1pbihlLHQpKSl9Zmxvb3IoKXtyZXR1cm4gdGhpcy54PU1hdGguZmxvb3IodGhpcy54KSx0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpLHRoaXN9Y2VpbCgpe3JldHVybiB0aGlzLng9TWF0aC5jZWlsKHRoaXMueCksdGhpcy55PU1hdGguY2VpbCh0aGlzLnkpLHRoaXN9cm91bmQoKXtyZXR1cm4gdGhpcy54PU1hdGgucm91bmQodGhpcy54KSx0aGlzLnk9TWF0aC5yb3VuZCh0aGlzLnkpLHRoaXN9cm91bmRUb1plcm8oKXtyZXR1cm4gdGhpcy54PXRoaXMueDwwP01hdGguY2VpbCh0aGlzLngpOk1hdGguZmxvb3IodGhpcy54KSx0aGlzLnk9dGhpcy55PDA/TWF0aC5jZWlsKHRoaXMueSk6TWF0aC5mbG9vcih0aGlzLnkpLHRoaXN9bmVnYXRlKCl7cmV0dXJuIHRoaXMueD0tdGhpcy54LHRoaXMueT0tdGhpcy55LHRoaXN9ZG90KEEpe3JldHVybiB0aGlzLngqQS54K3RoaXMueSpBLnl9Y3Jvc3MoQSl7cmV0dXJuIHRoaXMueCpBLnktdGhpcy55KkEueH1sZW5ndGhTcSgpe3JldHVybiB0aGlzLngqdGhpcy54K3RoaXMueSp0aGlzLnl9bGVuZ3RoKCl7cmV0dXJuIE1hdGguc3FydCh0aGlzLngqdGhpcy54K3RoaXMueSp0aGlzLnkpfW1hbmhhdHRhbkxlbmd0aCgpe3JldHVybiBNYXRoLmFicyh0aGlzLngpK01hdGguYWJzKHRoaXMueSl9bm9ybWFsaXplKCl7cmV0dXJuIHRoaXMuZGl2aWRlU2NhbGFyKHRoaXMubGVuZ3RoKCl8fDEpfWFuZ2xlKCl7cmV0dXJuIE1hdGguYXRhbjIoLXRoaXMueSwtdGhpcy54KStNYXRoLlBJfWFuZ2xlVG8oQSl7Y29uc3QgZT1NYXRoLnNxcnQodGhpcy5sZW5ndGhTcSgpKkEubGVuZ3RoU3EoKSk7aWYoMD09PWUpcmV0dXJuIE1hdGguUEkvMjtjb25zdCB0PXRoaXMuZG90KEEpL2U7cmV0dXJuIE1hdGguYWNvcyhHdCh0LC0xLDEpKX1kaXN0YW5jZVRvKEEpe3JldHVybiBNYXRoLnNxcnQodGhpcy5kaXN0YW5jZVRvU3F1YXJlZChBKSl9ZGlzdGFuY2VUb1NxdWFyZWQoQSl7Y29uc3QgZT10aGlzLngtQS54LHQ9dGhpcy55LUEueTtyZXR1cm4gZSplK3QqdH1tYW5oYXR0YW5EaXN0YW5jZVRvKEEpe3JldHVybiBNYXRoLmFicyh0aGlzLngtQS54KStNYXRoLmFicyh0aGlzLnktQS55KX1zZXRMZW5ndGgoQSl7cmV0dXJuIHRoaXMubm9ybWFsaXplKCkubXVsdGlwbHlTY2FsYXIoQSl9bGVycChBLGUpe3JldHVybiB0aGlzLngrPShBLngtdGhpcy54KSplLHRoaXMueSs9KEEueS10aGlzLnkpKmUsdGhpc31sZXJwVmVjdG9ycyhBLGUsdCl7cmV0dXJuIHRoaXMueD1BLngrKGUueC1BLngpKnQsdGhpcy55PUEueSsoZS55LUEueSkqdCx0aGlzfWVxdWFscyhBKXtyZXR1cm4gQS54PT09dGhpcy54JiZBLnk9PT10aGlzLnl9ZnJvbUFycmF5KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3JldHVybiB0aGlzLng9QVtlXSx0aGlzLnk9QVtlKzFdLHRoaXN9dG9BcnJheSgpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3JldHVybiBBW2VdPXRoaXMueCxBW2UrMV09dGhpcy55LEF9ZnJvbUJ1ZmZlckF0dHJpYnV0ZShBLGUpe3JldHVybiB0aGlzLng9QS5nZXRYKGUpLHRoaXMueT1BLmdldFkoZSksdGhpc31yb3RhdGVBcm91bmQoQSxlKXtjb25zdCB0PU1hdGguY29zKGUpLG49TWF0aC5zaW4oZSksaT10aGlzLngtQS54LHI9dGhpcy55LUEueTtyZXR1cm4gdGhpcy54PWkqdC1yKm4rQS54LHRoaXMueT1pKm4rcip0K0EueSx0aGlzfXJhbmRvbSgpe3JldHVybiB0aGlzLng9TWF0aC5yYW5kb20oKSx0aGlzLnk9TWF0aC5yYW5kb20oKSx0aGlzfSpbU3ltYm9sLml0ZXJhdG9yXSgpe3lpZWxkIHRoaXMueCx5aWVsZCB0aGlzLnl9fWNsYXNzIFB0e2NvbnN0cnVjdG9yKEEsZSx0LG4saSxyLG8scyxhKXtQdC5wcm90b3R5cGUuaXNNYXRyaXgzPSEwLHRoaXMuZWxlbWVudHM9WzEsMCwwLDAsMSwwLDAsMCwxXSx2b2lkIDAhPT1BJiZ0aGlzLnNldChBLGUsdCxuLGkscixvLHMsYSl9c2V0KEEsZSx0LG4saSxyLG8scyxhKXtjb25zdCBCPXRoaXMuZWxlbWVudHM7cmV0dXJuIEJbMF09QSxCWzFdPW4sQlsyXT1vLEJbM109ZSxCWzRdPWksQls1XT1zLEJbNl09dCxCWzddPXIsQls4XT1hLHRoaXN9aWRlbnRpdHkoKXtyZXR1cm4gdGhpcy5zZXQoMSwwLDAsMCwxLDAsMCwwLDEpLHRoaXN9Y29weShBKXtjb25zdCBlPXRoaXMuZWxlbWVudHMsdD1BLmVsZW1lbnRzO3JldHVybiBlWzBdPXRbMF0sZVsxXT10WzFdLGVbMl09dFsyXSxlWzNdPXRbM10sZVs0XT10WzRdLGVbNV09dFs1XSxlWzZdPXRbNl0sZVs3XT10WzddLGVbOF09dFs4XSx0aGlzfWV4dHJhY3RCYXNpcyhBLGUsdCl7cmV0dXJuIEEuc2V0RnJvbU1hdHJpeDNDb2x1bW4odGhpcywwKSxlLnNldEZyb21NYXRyaXgzQ29sdW1uKHRoaXMsMSksdC5zZXRGcm9tTWF0cml4M0NvbHVtbih0aGlzLDIpLHRoaXN9c2V0RnJvbU1hdHJpeDQoQSl7Y29uc3QgZT1BLmVsZW1lbnRzO3JldHVybiB0aGlzLnNldChlWzBdLGVbNF0sZVs4XSxlWzFdLGVbNV0sZVs5XSxlWzJdLGVbNl0sZVsxMF0pLHRoaXN9bXVsdGlwbHkoQSl7cmV0dXJuIHRoaXMubXVsdGlwbHlNYXRyaWNlcyh0aGlzLEEpfXByZW11bHRpcGx5KEEpe3JldHVybiB0aGlzLm11bHRpcGx5TWF0cmljZXMoQSx0aGlzKX1tdWx0aXBseU1hdHJpY2VzKEEsZSl7Y29uc3QgdD1BLmVsZW1lbnRzLG49ZS5lbGVtZW50cyxpPXRoaXMuZWxlbWVudHMscj10WzBdLG89dFszXSxzPXRbNl0sYT10WzFdLEI9dFs0XSxjPXRbN10sZz10WzJdLEU9dFs1XSxRPXRbOF0sdT1uWzBdLGw9blszXSxoPW5bNl0sdz1uWzFdLEM9bls0XSxJPW5bN10sTT1uWzJdLGQ9bls1XSxwPW5bOF07cmV0dXJuIGlbMF09cip1K28qdytzKk0saVszXT1yKmwrbypDK3MqZCxpWzZdPXIqaCtvKkkrcypwLGlbMV09YSp1K0IqdytjKk0saVs0XT1hKmwrQipDK2MqZCxpWzddPWEqaCtCKkkrYypwLGlbMl09Zyp1K0UqdytRKk0saVs1XT1nKmwrRSpDK1EqZCxpWzhdPWcqaCtFKkkrUSpwLHRoaXN9bXVsdGlwbHlTY2FsYXIoQSl7Y29uc3QgZT10aGlzLmVsZW1lbnRzO3JldHVybiBlWzBdKj1BLGVbM10qPUEsZVs2XSo9QSxlWzFdKj1BLGVbNF0qPUEsZVs3XSo9QSxlWzJdKj1BLGVbNV0qPUEsZVs4XSo9QSx0aGlzfWRldGVybWluYW50KCl7Y29uc3QgQT10aGlzLmVsZW1lbnRzLGU9QVswXSx0PUFbMV0sbj1BWzJdLGk9QVszXSxyPUFbNF0sbz1BWzVdLHM9QVs2XSxhPUFbN10sQj1BWzhdO3JldHVybiBlKnIqQi1lKm8qYS10KmkqQit0Km8qcytuKmkqYS1uKnIqc31pbnZlcnQoKXtjb25zdCBBPXRoaXMuZWxlbWVudHMsZT1BWzBdLHQ9QVsxXSxuPUFbMl0saT1BWzNdLHI9QVs0XSxvPUFbNV0scz1BWzZdLGE9QVs3XSxCPUFbOF0sYz1CKnItbyphLGc9bypzLUIqaSxFPWEqaS1yKnMsUT1lKmMrdCpnK24qRTtpZigwPT09USlyZXR1cm4gdGhpcy5zZXQoMCwwLDAsMCwwLDAsMCwwLDApO2NvbnN0IHU9MS9RO3JldHVybiBBWzBdPWMqdSxBWzFdPShuKmEtQip0KSp1LEFbMl09KG8qdC1uKnIpKnUsQVszXT1nKnUsQVs0XT0oQiplLW4qcykqdSxBWzVdPShuKmktbyplKSp1LEFbNl09RSp1LEFbN109KHQqcy1hKmUpKnUsQVs4XT0ociplLXQqaSkqdSx0aGlzfXRyYW5zcG9zZSgpe2xldCBBO2NvbnN0IGU9dGhpcy5lbGVtZW50cztyZXR1cm4gQT1lWzFdLGVbMV09ZVszXSxlWzNdPUEsQT1lWzJdLGVbMl09ZVs2XSxlWzZdPUEsQT1lWzVdLGVbNV09ZVs3XSxlWzddPUEsdGhpc31nZXROb3JtYWxNYXRyaXgoQSl7cmV0dXJuIHRoaXMuc2V0RnJvbU1hdHJpeDQoQSkuaW52ZXJ0KCkudHJhbnNwb3NlKCl9dHJhbnNwb3NlSW50b0FycmF5KEEpe2NvbnN0IGU9dGhpcy5lbGVtZW50cztyZXR1cm4gQVswXT1lWzBdLEFbMV09ZVszXSxBWzJdPWVbNl0sQVszXT1lWzFdLEFbNF09ZVs0XSxBWzVdPWVbN10sQVs2XT1lWzJdLEFbN109ZVs1XSxBWzhdPWVbOF0sdGhpc31zZXRVdlRyYW5zZm9ybShBLGUsdCxuLGkscixvKXtjb25zdCBzPU1hdGguY29zKGkpLGE9TWF0aC5zaW4oaSk7cmV0dXJuIHRoaXMuc2V0KHQqcyx0KmEsLXQqKHMqcithKm8pK3IrQSwtbiphLG4qcywtbiooLWEqcitzKm8pK28rZSwwLDAsMSksdGhpc31zY2FsZShBLGUpe3JldHVybiB0aGlzLnByZW11bHRpcGx5KE90Lm1ha2VTY2FsZShBLGUpKSx0aGlzfXJvdGF0ZShBKXtyZXR1cm4gdGhpcy5wcmVtdWx0aXBseShPdC5tYWtlUm90YXRpb24oLUEpKSx0aGlzfXRyYW5zbGF0ZShBLGUpe3JldHVybiB0aGlzLnByZW11bHRpcGx5KE90Lm1ha2VUcmFuc2xhdGlvbihBLGUpKSx0aGlzfW1ha2VUcmFuc2xhdGlvbihBLGUpe3JldHVybiBBLmlzVmVjdG9yMj90aGlzLnNldCgxLDAsQS54LDAsMSxBLnksMCwwLDEpOnRoaXMuc2V0KDEsMCxBLDAsMSxlLDAsMCwxKSx0aGlzfW1ha2VSb3RhdGlvbihBKXtjb25zdCBlPU1hdGguY29zKEEpLHQ9TWF0aC5zaW4oQSk7cmV0dXJuIHRoaXMuc2V0KGUsLXQsMCx0LGUsMCwwLDAsMSksdGhpc31tYWtlU2NhbGUoQSxlKXtyZXR1cm4gdGhpcy5zZXQoQSwwLDAsMCxlLDAsMCwwLDEpLHRoaXN9ZXF1YWxzKEEpe2NvbnN0IGU9dGhpcy5lbGVtZW50cyx0PUEuZWxlbWVudHM7Zm9yKGxldCBBPTA7QTw5O0ErKylpZihlW0FdIT09dFtBXSlyZXR1cm4hMTtyZXR1cm4hMH1mcm9tQXJyYXkoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7Zm9yKGxldCB0PTA7dDw5O3QrKyl0aGlzLmVsZW1lbnRzW3RdPUFbdCtlXTtyZXR1cm4gdGhpc310b0FycmF5KCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7Y29uc3QgdD10aGlzLmVsZW1lbnRzO3JldHVybiBBW2VdPXRbMF0sQVtlKzFdPXRbMV0sQVtlKzJdPXRbMl0sQVtlKzNdPXRbM10sQVtlKzRdPXRbNF0sQVtlKzVdPXRbNV0sQVtlKzZdPXRbNl0sQVtlKzddPXRbN10sQVtlKzhdPXRbOF0sQX1jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuZnJvbUFycmF5KHRoaXMuZWxlbWVudHMpfX1jb25zdCBPdD1uZXcgUHQ7ZnVuY3Rpb24gVnQoQSl7Zm9yKGxldCBlPUEubGVuZ3RoLTE7ZT49MDstLWUpaWYoQVtlXT49NjU1MzUpcmV0dXJuITA7cmV0dXJuITF9Y29uc3QgV3Q9e0ludDhBcnJheTpJbnQ4QXJyYXksVWludDhBcnJheTpVaW50OEFycmF5LFVpbnQ4Q2xhbXBlZEFycmF5OlVpbnQ4Q2xhbXBlZEFycmF5LEludDE2QXJyYXk6SW50MTZBcnJheSxVaW50MTZBcnJheTpVaW50MTZBcnJheSxJbnQzMkFycmF5OkludDMyQXJyYXksVWludDMyQXJyYXk6VWludDMyQXJyYXksRmxvYXQzMkFycmF5OkZsb2F0MzJBcnJheSxGbG9hdDY0QXJyYXk6RmxvYXQ2NEFycmF5fTtmdW5jdGlvbiBLdChBLGUpe3JldHVybiBuZXcgV3RbQV0oZSl9ZnVuY3Rpb24gWHQoQSl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsQSl9Y29uc3QgWnQ9e307ZnVuY3Rpb24gX3QoQSl7QSBpbiBadHx8KFp0W0FdPSEwLGNvbnNvbGUud2FybihBKSl9ZnVuY3Rpb24gcXQoQSl7cmV0dXJuIEE8LjA0MDQ1Py4wNzczOTkzODA4KkE6TWF0aC5wb3coLjk0Nzg2NzI5ODYqQSsuMDUyMTMyNzAxNCwyLjQpfWZ1bmN0aW9uICR0KEEpe3JldHVybiBBPC4wMDMxMzA4PzEyLjkyKkE6MS4wNTUqTWF0aC5wb3coQSwuNDE2NjYpLS4wNTV9Y29uc3QgQW49KG5ldyBQdCkuZnJvbUFycmF5KFsuODIyNDYyMSwuMDMzMTk0MSwuMDE3MDgyNywuMTc3NTM4LC45NjY4MDU4LC4wNzIzOTc0LC0xZS03LDFlLTcsLjkxMDUxOTldKSxlbj0obmV3IFB0KS5mcm9tQXJyYXkoWzEuMjI0OTQwMSwtLjA0MjA1NjksLS4wMTk2Mzc2LC0uMjI0OTQwNCwxLjA0MjA1NzEsLS4wNzg2MzYxLDFlLTcsMCwxLjA5ODI3MzVdKTtjb25zdCB0bj17W3plXTpBPT5BLFtKZV06QT0+QS5jb252ZXJ0U1JHQlRvTGluZWFyKCksW0xlXTpmdW5jdGlvbihBKXtyZXR1cm4gQS5jb252ZXJ0U1JHQlRvTGluZWFyKCkuYXBwbHlNYXRyaXgzKGVuKX19LG5uPXtbemVdOkE9PkEsW0plXTpBPT5BLmNvbnZlcnRMaW5lYXJUb1NSR0IoKSxbTGVdOmZ1bmN0aW9uKEEpe3JldHVybiBBLmFwcGx5TWF0cml4MyhBbikuY29udmVydExpbmVhclRvU1JHQigpfX0scm49e2VuYWJsZWQ6ITAsZ2V0IGxlZ2FjeU1vZGUoKXtyZXR1cm4gY29uc29sZS53YXJuKCJUSFJFRS5Db2xvck1hbmFnZW1lbnQ6IC5sZWdhY3lNb2RlPWZhbHNlIHJlbmFtZWQgdG8gLmVuYWJsZWQ9dHJ1ZSBpbiByMTUwLiIpLCF0aGlzLmVuYWJsZWR9LHNldCBsZWdhY3lNb2RlKEEpe2NvbnNvbGUud2FybigiVEhSRUUuQ29sb3JNYW5hZ2VtZW50OiAubGVnYWN5TW9kZT1mYWxzZSByZW5hbWVkIHRvIC5lbmFibGVkPXRydWUgaW4gcjE1MC4iKSx0aGlzLmVuYWJsZWQ9IUF9LGdldCB3b3JraW5nQ29sb3JTcGFjZSgpe3JldHVybiB6ZX0sc2V0IHdvcmtpbmdDb2xvclNwYWNlKEEpe2NvbnNvbGUud2FybigiVEhSRUUuQ29sb3JNYW5hZ2VtZW50OiAud29ya2luZ0NvbG9yU3BhY2UgaXMgcmVhZG9ubHkuIil9LGNvbnZlcnQ6ZnVuY3Rpb24oQSxlLHQpe2lmKCExPT09dGhpcy5lbmFibGVkfHxlPT09dHx8IWV8fCF0KXJldHVybiBBO2NvbnN0IG49dG5bZV0saT1ublt0XTtpZih2b2lkIDA9PT1ufHx2b2lkIDA9PT1pKXRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgY29sb3Igc3BhY2UgY29udmVyc2lvbiwgIicuY29uY2F0KGUsJyIgdG8gIicpLmNvbmNhdCh0LCciLicpKTtyZXR1cm4gaShuKEEpKX0sZnJvbVdvcmtpbmdDb2xvclNwYWNlOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHRoaXMuY29udmVydChBLHRoaXMud29ya2luZ0NvbG9yU3BhY2UsZSl9LHRvV29ya2luZ0NvbG9yU3BhY2U6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5jb252ZXJ0KEEsZSx0aGlzLndvcmtpbmdDb2xvclNwYWNlKX19O2xldCBvbjtjbGFzcyBzbntzdGF0aWMgZ2V0RGF0YVVSTChBKXtpZigvXmRhdGE6L2kudGVzdChBLnNyYykpcmV0dXJuIEEuc3JjO2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgSFRNTENhbnZhc0VsZW1lbnQpcmV0dXJuIEEuc3JjO2xldCBlO2lmKEEgaW5zdGFuY2VvZiBIVE1MQ2FudmFzRWxlbWVudCllPUE7ZWxzZXt2b2lkIDA9PT1vbiYmKG9uPVh0KCJjYW52YXMiKSksb24ud2lkdGg9QS53aWR0aCxvbi5oZWlnaHQ9QS5oZWlnaHQ7Y29uc3QgdD1vbi5nZXRDb250ZXh0KCIyZCIpO0EgaW5zdGFuY2VvZiBJbWFnZURhdGE/dC5wdXRJbWFnZURhdGEoQSwwLDApOnQuZHJhd0ltYWdlKEEsMCwwLEEud2lkdGgsQS5oZWlnaHQpLGU9b259cmV0dXJuIGUud2lkdGg+MjA0OHx8ZS5oZWlnaHQ+MjA0OD8oY29uc29sZS53YXJuKCJUSFJFRS5JbWFnZVV0aWxzLmdldERhdGFVUkw6IEltYWdlIGNvbnZlcnRlZCB0byBqcGcgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMiLEEpLGUudG9EYXRhVVJMKCJpbWFnZS9qcGVnIiwuNikpOmUudG9EYXRhVVJMKCJpbWFnZS9wbmciKX1zdGF0aWMgc1JHQlRvTGluZWFyKEEpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgSFRNTEltYWdlRWxlbWVudCYmQSBpbnN0YW5jZW9mIEhUTUxJbWFnZUVsZW1lbnR8fCJ1bmRlZmluZWQiIT10eXBlb2YgSFRNTENhbnZhc0VsZW1lbnQmJkEgaW5zdGFuY2VvZiBIVE1MQ2FudmFzRWxlbWVudHx8InVuZGVmaW5lZCIhPXR5cGVvZiBJbWFnZUJpdG1hcCYmQSBpbnN0YW5jZW9mIEltYWdlQml0bWFwKXtjb25zdCBlPVh0KCJjYW52YXMiKTtlLndpZHRoPUEud2lkdGgsZS5oZWlnaHQ9QS5oZWlnaHQ7Y29uc3QgdD1lLmdldENvbnRleHQoIjJkIik7dC5kcmF3SW1hZ2UoQSwwLDAsQS53aWR0aCxBLmhlaWdodCk7Y29uc3Qgbj10LmdldEltYWdlRGF0YSgwLDAsQS53aWR0aCxBLmhlaWdodCksaT1uLmRhdGE7Zm9yKGxldCBBPTA7QTxpLmxlbmd0aDtBKyspaVtBXT0yNTUqcXQoaVtBXS8yNTUpO3JldHVybiB0LnB1dEltYWdlRGF0YShuLDAsMCksZX1pZihBLmRhdGEpe2NvbnN0IGU9QS5kYXRhLnNsaWNlKDApO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7QSsrKWUgaW5zdGFuY2VvZiBVaW50OEFycmF5fHxlIGluc3RhbmNlb2YgVWludDhDbGFtcGVkQXJyYXk/ZVtBXT1NYXRoLmZsb29yKDI1NSpxdChlW0FdLzI1NSkpOmVbQV09cXQoZVtBXSk7cmV0dXJue2RhdGE6ZSx3aWR0aDpBLndpZHRoLGhlaWdodDpBLmhlaWdodH19cmV0dXJuIGNvbnNvbGUud2FybigiVEhSRUUuSW1hZ2VVdGlscy5zUkdCVG9MaW5lYXIoKTogVW5zdXBwb3J0ZWQgaW1hZ2UgdHlwZS4gTm8gY29sb3Igc3BhY2UgY29udmVyc2lvbiBhcHBsaWVkLiIpLEF9fWxldCBhbj0wO2NsYXNzIEJue2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm51bGw7dGhpcy5pc1NvdXJjZT0hMCxPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywiaWQiLHt2YWx1ZTphbisrfSksdGhpcy51dWlkPVJ0KCksdGhpcy5kYXRhPUEsdGhpcy52ZXJzaW9uPTB9c2V0IG5lZWRzVXBkYXRlKEEpeyEwPT09QSYmdGhpcy52ZXJzaW9uKyt9dG9KU09OKEEpe2NvbnN0IGU9dm9pZCAwPT09QXx8InN0cmluZyI9PXR5cGVvZiBBO2lmKCFlJiZ2b2lkIDAhPT1BLmltYWdlc1t0aGlzLnV1aWRdKXJldHVybiBBLmltYWdlc1t0aGlzLnV1aWRdO2NvbnN0IHQ9e3V1aWQ6dGhpcy51dWlkLHVybDoiIn0sbj10aGlzLmRhdGE7aWYobnVsbCE9PW4pe2xldCBBO2lmKEFycmF5LmlzQXJyYXkobikpe0E9W107Zm9yKGxldCBlPTAsdD1uLmxlbmd0aDtlPHQ7ZSsrKW5bZV0uaXNEYXRhVGV4dHVyZT9BLnB1c2goY24obltlXS5pbWFnZSkpOkEucHVzaChjbihuW2VdKSl9ZWxzZSBBPWNuKG4pO3QudXJsPUF9cmV0dXJuIGV8fChBLmltYWdlc1t0aGlzLnV1aWRdPXQpLHR9fWZ1bmN0aW9uIGNuKEEpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgSFRNTEltYWdlRWxlbWVudCYmQSBpbnN0YW5jZW9mIEhUTUxJbWFnZUVsZW1lbnR8fCJ1bmRlZmluZWQiIT10eXBlb2YgSFRNTENhbnZhc0VsZW1lbnQmJkEgaW5zdGFuY2VvZiBIVE1MQ2FudmFzRWxlbWVudHx8InVuZGVmaW5lZCIhPXR5cGVvZiBJbWFnZUJpdG1hcCYmQSBpbnN0YW5jZW9mIEltYWdlQml0bWFwP3NuLmdldERhdGFVUkwoQSk6QS5kYXRhP3tkYXRhOkFycmF5LmZyb20oQS5kYXRhKSx3aWR0aDpBLndpZHRoLGhlaWdodDpBLmhlaWdodCx0eXBlOkEuZGF0YS5jb25zdHJ1Y3Rvci5uYW1lfTooY29uc29sZS53YXJuKCJUSFJFRS5UZXh0dXJlOiBVbmFibGUgdG8gc2VyaWFsaXplIFRleHR1cmUuIikse30pfWxldCBnbj0wO2NsYXNzIEVuIGV4dGVuZHMgTnR7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06RW4uREVGQVVMVF9JTUFHRSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpFbi5ERUZBVUxUX01BUFBJTkcsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06Y0Esbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106Y0EsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06d0Escj1hcmd1bWVudHMubGVuZ3RoPjUmJnZvaWQgMCE9PWFyZ3VtZW50c1s1XT9hcmd1bWVudHNbNV06TUEsbz1hcmd1bWVudHMubGVuZ3RoPjYmJnZvaWQgMCE9PWFyZ3VtZW50c1s2XT9hcmd1bWVudHNbNl06R0Escz1hcmd1bWVudHMubGVuZ3RoPjcmJnZvaWQgMCE9PWFyZ3VtZW50c1s3XT9hcmd1bWVudHNbN106cEEsYT1hcmd1bWVudHMubGVuZ3RoPjgmJnZvaWQgMCE9PWFyZ3VtZW50c1s4XT9hcmd1bWVudHNbOF06RW4uREVGQVVMVF9BTklTT1RST1BZLEI9YXJndW1lbnRzLmxlbmd0aD45JiZ2b2lkIDAhPT1hcmd1bWVudHNbOV0/YXJndW1lbnRzWzldOmplO3N1cGVyKCksdGhpcy5pc1RleHR1cmU9ITAsT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsImlkIix7dmFsdWU6Z24rK30pLHRoaXMudXVpZD1SdCgpLHRoaXMubmFtZT0iIix0aGlzLnNvdXJjZT1uZXcgQm4oQSksdGhpcy5taXBtYXBzPVtdLHRoaXMubWFwcGluZz1lLHRoaXMuY2hhbm5lbD0wLHRoaXMud3JhcFM9dCx0aGlzLndyYXBUPW4sdGhpcy5tYWdGaWx0ZXI9aSx0aGlzLm1pbkZpbHRlcj1yLHRoaXMuYW5pc290cm9weT1hLHRoaXMuZm9ybWF0PW8sdGhpcy5pbnRlcm5hbEZvcm1hdD1udWxsLHRoaXMudHlwZT1zLHRoaXMub2Zmc2V0PW5ldyBMdCgwLDApLHRoaXMucmVwZWF0PW5ldyBMdCgxLDEpLHRoaXMuY2VudGVyPW5ldyBMdCgwLDApLHRoaXMucm90YXRpb249MCx0aGlzLm1hdHJpeEF1dG9VcGRhdGU9ITAsdGhpcy5tYXRyaXg9bmV3IFB0LHRoaXMuZ2VuZXJhdGVNaXBtYXBzPSEwLHRoaXMucHJlbXVsdGlwbHlBbHBoYT0hMSx0aGlzLmZsaXBZPSEwLHRoaXMudW5wYWNrQWxpZ25tZW50PTQsInN0cmluZyI9PXR5cGVvZiBCP3RoaXMuY29sb3JTcGFjZT1COihfdCgiVEhSRUUuVGV4dHVyZTogUHJvcGVydHkgLmVuY29kaW5nIGhhcyBiZWVuIHJlcGxhY2VkIGJ5IC5jb2xvclNwYWNlLiIpLHRoaXMuY29sb3JTcGFjZT1CPT09U2U/SmU6amUpLHRoaXMudXNlckRhdGE9e30sdGhpcy52ZXJzaW9uPTAsdGhpcy5vblVwZGF0ZT1udWxsLHRoaXMuaXNSZW5kZXJUYXJnZXRUZXh0dXJlPSExLHRoaXMubmVlZHNQTVJFTVVwZGF0ZT0hMX1nZXQgaW1hZ2UoKXtyZXR1cm4gdGhpcy5zb3VyY2UuZGF0YX1zZXQgaW1hZ2UoQSl7dm9pZCAwPT09QSYmKEE9bnVsbCksdGhpcy5zb3VyY2UuZGF0YT1BfXVwZGF0ZU1hdHJpeCgpe3RoaXMubWF0cml4LnNldFV2VHJhbnNmb3JtKHRoaXMub2Zmc2V0LngsdGhpcy5vZmZzZXQueSx0aGlzLnJlcGVhdC54LHRoaXMucmVwZWF0LnksdGhpcy5yb3RhdGlvbix0aGlzLmNlbnRlci54LHRoaXMuY2VudGVyLnkpfWNsb25lKCl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMpfWNvcHkoQSl7cmV0dXJuIHRoaXMubmFtZT1BLm5hbWUsdGhpcy5zb3VyY2U9QS5zb3VyY2UsdGhpcy5taXBtYXBzPUEubWlwbWFwcy5zbGljZSgwKSx0aGlzLm1hcHBpbmc9QS5tYXBwaW5nLHRoaXMuY2hhbm5lbD1BLmNoYW5uZWwsdGhpcy53cmFwUz1BLndyYXBTLHRoaXMud3JhcFQ9QS53cmFwVCx0aGlzLm1hZ0ZpbHRlcj1BLm1hZ0ZpbHRlcix0aGlzLm1pbkZpbHRlcj1BLm1pbkZpbHRlcix0aGlzLmFuaXNvdHJvcHk9QS5hbmlzb3Ryb3B5LHRoaXMuZm9ybWF0PUEuZm9ybWF0LHRoaXMuaW50ZXJuYWxGb3JtYXQ9QS5pbnRlcm5hbEZvcm1hdCx0aGlzLnR5cGU9QS50eXBlLHRoaXMub2Zmc2V0LmNvcHkoQS5vZmZzZXQpLHRoaXMucmVwZWF0LmNvcHkoQS5yZXBlYXQpLHRoaXMuY2VudGVyLmNvcHkoQS5jZW50ZXIpLHRoaXMucm90YXRpb249QS5yb3RhdGlvbix0aGlzLm1hdHJpeEF1dG9VcGRhdGU9QS5tYXRyaXhBdXRvVXBkYXRlLHRoaXMubWF0cml4LmNvcHkoQS5tYXRyaXgpLHRoaXMuZ2VuZXJhdGVNaXBtYXBzPUEuZ2VuZXJhdGVNaXBtYXBzLHRoaXMucHJlbXVsdGlwbHlBbHBoYT1BLnByZW11bHRpcGx5QWxwaGEsdGhpcy5mbGlwWT1BLmZsaXBZLHRoaXMudW5wYWNrQWxpZ25tZW50PUEudW5wYWNrQWxpZ25tZW50LHRoaXMuY29sb3JTcGFjZT1BLmNvbG9yU3BhY2UsdGhpcy51c2VyRGF0YT1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KEEudXNlckRhdGEpKSx0aGlzLm5lZWRzVXBkYXRlPSEwLHRoaXN9dG9KU09OKEEpe2NvbnN0IGU9dm9pZCAwPT09QXx8InN0cmluZyI9PXR5cGVvZiBBO2lmKCFlJiZ2b2lkIDAhPT1BLnRleHR1cmVzW3RoaXMudXVpZF0pcmV0dXJuIEEudGV4dHVyZXNbdGhpcy51dWlkXTtjb25zdCB0PXttZXRhZGF0YTp7dmVyc2lvbjo0LjYsdHlwZToiVGV4dHVyZSIsZ2VuZXJhdG9yOiJUZXh0dXJlLnRvSlNPTiJ9LHV1aWQ6dGhpcy51dWlkLG5hbWU6dGhpcy5uYW1lLGltYWdlOnRoaXMuc291cmNlLnRvSlNPTihBKS51dWlkLG1hcHBpbmc6dGhpcy5tYXBwaW5nLGNoYW5uZWw6dGhpcy5jaGFubmVsLHJlcGVhdDpbdGhpcy5yZXBlYXQueCx0aGlzLnJlcGVhdC55XSxvZmZzZXQ6W3RoaXMub2Zmc2V0LngsdGhpcy5vZmZzZXQueV0sY2VudGVyOlt0aGlzLmNlbnRlci54LHRoaXMuY2VudGVyLnldLHJvdGF0aW9uOnRoaXMucm90YXRpb24sd3JhcDpbdGhpcy53cmFwUyx0aGlzLndyYXBUXSxmb3JtYXQ6dGhpcy5mb3JtYXQsaW50ZXJuYWxGb3JtYXQ6dGhpcy5pbnRlcm5hbEZvcm1hdCx0eXBlOnRoaXMudHlwZSxjb2xvclNwYWNlOnRoaXMuY29sb3JTcGFjZSxtaW5GaWx0ZXI6dGhpcy5taW5GaWx0ZXIsbWFnRmlsdGVyOnRoaXMubWFnRmlsdGVyLGFuaXNvdHJvcHk6dGhpcy5hbmlzb3Ryb3B5LGZsaXBZOnRoaXMuZmxpcFksZ2VuZXJhdGVNaXBtYXBzOnRoaXMuZ2VuZXJhdGVNaXBtYXBzLHByZW11bHRpcGx5QWxwaGE6dGhpcy5wcmVtdWx0aXBseUFscGhhLHVucGFja0FsaWdubWVudDp0aGlzLnVucGFja0FsaWdubWVudH07cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMudXNlckRhdGEpLmxlbmd0aD4wJiYodC51c2VyRGF0YT10aGlzLnVzZXJEYXRhKSxlfHwoQS50ZXh0dXJlc1t0aGlzLnV1aWRdPXQpLHR9ZGlzcG9zZSgpe3RoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToiZGlzcG9zZSJ9KX10cmFuc2Zvcm1VdihBKXtpZih0aGlzLm1hcHBpbmchPT1uQSlyZXR1cm4gQTtpZihBLmFwcGx5TWF0cml4Myh0aGlzLm1hdHJpeCksQS54PDB8fEEueD4xKXN3aXRjaCh0aGlzLndyYXBTKXtjYXNlIEJBOkEueD1BLngtTWF0aC5mbG9vcihBLngpO2JyZWFrO2Nhc2UgY0E6QS54PUEueDwwPzA6MTticmVhaztjYXNlIGdBOjE9PT1NYXRoLmFicyhNYXRoLmZsb29yKEEueCklMik/QS54PU1hdGguY2VpbChBLngpLUEueDpBLng9QS54LU1hdGguZmxvb3IoQS54KX1pZihBLnk8MHx8QS55PjEpc3dpdGNoKHRoaXMud3JhcFQpe2Nhc2UgQkE6QS55PUEueS1NYXRoLmZsb29yKEEueSk7YnJlYWs7Y2FzZSBjQTpBLnk9QS55PDA/MDoxO2JyZWFrO2Nhc2UgZ0E6MT09PU1hdGguYWJzKE1hdGguZmxvb3IoQS55KSUyKT9BLnk9TWF0aC5jZWlsKEEueSktQS55OkEueT1BLnktTWF0aC5mbG9vcihBLnkpfXJldHVybiB0aGlzLmZsaXBZJiYoQS55PTEtQS55KSxBfXNldCBuZWVkc1VwZGF0ZShBKXshMD09PUEmJih0aGlzLnZlcnNpb24rKyx0aGlzLnNvdXJjZS5uZWVkc1VwZGF0ZT0hMCl9Z2V0IGVuY29kaW5nKCl7cmV0dXJuIF90KCJUSFJFRS5UZXh0dXJlOiBQcm9wZXJ0eSAuZW5jb2RpbmcgaGFzIGJlZW4gcmVwbGFjZWQgYnkgLmNvbG9yU3BhY2UuIiksdGhpcy5jb2xvclNwYWNlPT09SmU/U2U6R2V9c2V0IGVuY29kaW5nKEEpe190KCJUSFJFRS5UZXh0dXJlOiBQcm9wZXJ0eSAuZW5jb2RpbmcgaGFzIGJlZW4gcmVwbGFjZWQgYnkgLmNvbG9yU3BhY2UuIiksdGhpcy5jb2xvclNwYWNlPUE9PT1TZT9KZTpqZX19RW4uREVGQVVMVF9JTUFHRT1udWxsLEVuLkRFRkFVTFRfTUFQUElORz1uQSxFbi5ERUZBVUxUX0FOSVNPVFJPUFk9MTtjbGFzcyBRbntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTowLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXToxO1FuLnByb3RvdHlwZS5pc1ZlY3RvcjQ9ITAsdGhpcy54PUEsdGhpcy55PWUsdGhpcy56PXQsdGhpcy53PW59Z2V0IHdpZHRoKCl7cmV0dXJuIHRoaXMuen1zZXQgd2lkdGgoQSl7dGhpcy56PUF9Z2V0IGhlaWdodCgpe3JldHVybiB0aGlzLnd9c2V0IGhlaWdodChBKXt0aGlzLnc9QX1zZXQoQSxlLHQsbil7cmV0dXJuIHRoaXMueD1BLHRoaXMueT1lLHRoaXMuej10LHRoaXMudz1uLHRoaXN9c2V0U2NhbGFyKEEpe3JldHVybiB0aGlzLng9QSx0aGlzLnk9QSx0aGlzLno9QSx0aGlzLnc9QSx0aGlzfXNldFgoQSl7cmV0dXJuIHRoaXMueD1BLHRoaXN9c2V0WShBKXtyZXR1cm4gdGhpcy55PUEsdGhpc31zZXRaKEEpe3JldHVybiB0aGlzLno9QSx0aGlzfXNldFcoQSl7cmV0dXJuIHRoaXMudz1BLHRoaXN9c2V0Q29tcG9uZW50KEEsZSl7c3dpdGNoKEEpe2Nhc2UgMDp0aGlzLng9ZTticmVhaztjYXNlIDE6dGhpcy55PWU7YnJlYWs7Y2FzZSAyOnRoaXMuej1lO2JyZWFrO2Nhc2UgMzp0aGlzLnc9ZTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiaW5kZXggaXMgb3V0IG9mIHJhbmdlOiAiK0EpfXJldHVybiB0aGlzfWdldENvbXBvbmVudChBKXtzd2l0Y2goQSl7Y2FzZSAwOnJldHVybiB0aGlzLng7Y2FzZSAxOnJldHVybiB0aGlzLnk7Y2FzZSAyOnJldHVybiB0aGlzLno7Y2FzZSAzOnJldHVybiB0aGlzLnc7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoImluZGV4IGlzIG91dCBvZiByYW5nZTogIitBKX19Y2xvbmUoKXtyZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3IodGhpcy54LHRoaXMueSx0aGlzLnosdGhpcy53KX1jb3B5KEEpe3JldHVybiB0aGlzLng9QS54LHRoaXMueT1BLnksdGhpcy56PUEueix0aGlzLnc9dm9pZCAwIT09QS53P0EudzoxLHRoaXN9YWRkKEEpe3JldHVybiB0aGlzLngrPUEueCx0aGlzLnkrPUEueSx0aGlzLnorPUEueix0aGlzLncrPUEudyx0aGlzfWFkZFNjYWxhcihBKXtyZXR1cm4gdGhpcy54Kz1BLHRoaXMueSs9QSx0aGlzLnorPUEsdGhpcy53Kz1BLHRoaXN9YWRkVmVjdG9ycyhBLGUpe3JldHVybiB0aGlzLng9QS54K2UueCx0aGlzLnk9QS55K2UueSx0aGlzLno9QS56K2Uueix0aGlzLnc9QS53K2Uudyx0aGlzfWFkZFNjYWxlZFZlY3RvcihBLGUpe3JldHVybiB0aGlzLngrPUEueCplLHRoaXMueSs9QS55KmUsdGhpcy56Kz1BLnoqZSx0aGlzLncrPUEudyplLHRoaXN9c3ViKEEpe3JldHVybiB0aGlzLngtPUEueCx0aGlzLnktPUEueSx0aGlzLnotPUEueix0aGlzLnctPUEudyx0aGlzfXN1YlNjYWxhcihBKXtyZXR1cm4gdGhpcy54LT1BLHRoaXMueS09QSx0aGlzLnotPUEsdGhpcy53LT1BLHRoaXN9c3ViVmVjdG9ycyhBLGUpe3JldHVybiB0aGlzLng9QS54LWUueCx0aGlzLnk9QS55LWUueSx0aGlzLno9QS56LWUueix0aGlzLnc9QS53LWUudyx0aGlzfW11bHRpcGx5KEEpe3JldHVybiB0aGlzLngqPUEueCx0aGlzLnkqPUEueSx0aGlzLnoqPUEueix0aGlzLncqPUEudyx0aGlzfW11bHRpcGx5U2NhbGFyKEEpe3JldHVybiB0aGlzLngqPUEsdGhpcy55Kj1BLHRoaXMueio9QSx0aGlzLncqPUEsdGhpc31hcHBseU1hdHJpeDQoQSl7Y29uc3QgZT10aGlzLngsdD10aGlzLnksbj10aGlzLnosaT10aGlzLncscj1BLmVsZW1lbnRzO3JldHVybiB0aGlzLng9clswXSplK3JbNF0qdCtyWzhdKm4rclsxMl0qaSx0aGlzLnk9clsxXSplK3JbNV0qdCtyWzldKm4rclsxM10qaSx0aGlzLno9clsyXSplK3JbNl0qdCtyWzEwXSpuK3JbMTRdKmksdGhpcy53PXJbM10qZStyWzddKnQrclsxMV0qbityWzE1XSppLHRoaXN9ZGl2aWRlU2NhbGFyKEEpe3JldHVybiB0aGlzLm11bHRpcGx5U2NhbGFyKDEvQSl9c2V0QXhpc0FuZ2xlRnJvbVF1YXRlcm5pb24oQSl7dGhpcy53PTIqTWF0aC5hY29zKEEudyk7Y29uc3QgZT1NYXRoLnNxcnQoMS1BLncqQS53KTtyZXR1cm4gZTwxZS00Pyh0aGlzLng9MSx0aGlzLnk9MCx0aGlzLno9MCk6KHRoaXMueD1BLngvZSx0aGlzLnk9QS55L2UsdGhpcy56PUEuei9lKSx0aGlzfXNldEF4aXNBbmdsZUZyb21Sb3RhdGlvbk1hdHJpeChBKXtsZXQgZSx0LG4saTtjb25zdCByPUEuZWxlbWVudHMsbz1yWzBdLHM9cls0XSxhPXJbOF0sQj1yWzFdLGM9cls1XSxnPXJbOV0sRT1yWzJdLFE9cls2XSx1PXJbMTBdO2lmKE1hdGguYWJzKHMtQik8LjAxJiZNYXRoLmFicyhhLUUpPC4wMSYmTWF0aC5hYnMoZy1RKTwuMDEpe2lmKE1hdGguYWJzKHMrQik8LjEmJk1hdGguYWJzKGErRSk8LjEmJk1hdGguYWJzKGcrUSk8LjEmJk1hdGguYWJzKG8rYyt1LTMpPC4xKXJldHVybiB0aGlzLnNldCgxLDAsMCwwKSx0aGlzO2U9TWF0aC5QSTtjb25zdCBBPShvKzEpLzIscj0oYysxKS8yLGw9KHUrMSkvMixoPShzK0IpLzQsdz0oYStFKS80LEM9KGcrUSkvNDtyZXR1cm4gQT5yJiZBPmw/QTwuMDE/KHQ9MCxuPS43MDcxMDY3ODEsaT0uNzA3MTA2NzgxKToodD1NYXRoLnNxcnQoQSksbj1oL3QsaT13L3QpOnI+bD9yPC4wMT8odD0uNzA3MTA2NzgxLG49MCxpPS43MDcxMDY3ODEpOihuPU1hdGguc3FydChyKSx0PWgvbixpPUMvbik6bDwuMDE/KHQ9LjcwNzEwNjc4MSxuPS43MDcxMDY3ODEsaT0wKTooaT1NYXRoLnNxcnQobCksdD13L2ksbj1DL2kpLHRoaXMuc2V0KHQsbixpLGUpLHRoaXN9bGV0IGw9TWF0aC5zcXJ0KChRLWcpKihRLWcpKyhhLUUpKihhLUUpKyhCLXMpKihCLXMpKTtyZXR1cm4gTWF0aC5hYnMobCk8LjAwMSYmKGw9MSksdGhpcy54PShRLWcpL2wsdGhpcy55PShhLUUpL2wsdGhpcy56PShCLXMpL2wsdGhpcy53PU1hdGguYWNvcygobytjK3UtMSkvMiksdGhpc31taW4oQSl7cmV0dXJuIHRoaXMueD1NYXRoLm1pbih0aGlzLngsQS54KSx0aGlzLnk9TWF0aC5taW4odGhpcy55LEEueSksdGhpcy56PU1hdGgubWluKHRoaXMueixBLnopLHRoaXMudz1NYXRoLm1pbih0aGlzLncsQS53KSx0aGlzfW1heChBKXtyZXR1cm4gdGhpcy54PU1hdGgubWF4KHRoaXMueCxBLngpLHRoaXMueT1NYXRoLm1heCh0aGlzLnksQS55KSx0aGlzLno9TWF0aC5tYXgodGhpcy56LEEueiksdGhpcy53PU1hdGgubWF4KHRoaXMudyxBLncpLHRoaXN9Y2xhbXAoQSxlKXtyZXR1cm4gdGhpcy54PU1hdGgubWF4KEEueCxNYXRoLm1pbihlLngsdGhpcy54KSksdGhpcy55PU1hdGgubWF4KEEueSxNYXRoLm1pbihlLnksdGhpcy55KSksdGhpcy56PU1hdGgubWF4KEEueixNYXRoLm1pbihlLnosdGhpcy56KSksdGhpcy53PU1hdGgubWF4KEEudyxNYXRoLm1pbihlLncsdGhpcy53KSksdGhpc31jbGFtcFNjYWxhcihBLGUpe3JldHVybiB0aGlzLng9TWF0aC5tYXgoQSxNYXRoLm1pbihlLHRoaXMueCkpLHRoaXMueT1NYXRoLm1heChBLE1hdGgubWluKGUsdGhpcy55KSksdGhpcy56PU1hdGgubWF4KEEsTWF0aC5taW4oZSx0aGlzLnopKSx0aGlzLnc9TWF0aC5tYXgoQSxNYXRoLm1pbihlLHRoaXMudykpLHRoaXN9Y2xhbXBMZW5ndGgoQSxlKXtjb25zdCB0PXRoaXMubGVuZ3RoKCk7cmV0dXJuIHRoaXMuZGl2aWRlU2NhbGFyKHR8fDEpLm11bHRpcGx5U2NhbGFyKE1hdGgubWF4KEEsTWF0aC5taW4oZSx0KSkpfWZsb29yKCl7cmV0dXJuIHRoaXMueD1NYXRoLmZsb29yKHRoaXMueCksdGhpcy55PU1hdGguZmxvb3IodGhpcy55KSx0aGlzLno9TWF0aC5mbG9vcih0aGlzLnopLHRoaXMudz1NYXRoLmZsb29yKHRoaXMudyksdGhpc31jZWlsKCl7cmV0dXJuIHRoaXMueD1NYXRoLmNlaWwodGhpcy54KSx0aGlzLnk9TWF0aC5jZWlsKHRoaXMueSksdGhpcy56PU1hdGguY2VpbCh0aGlzLnopLHRoaXMudz1NYXRoLmNlaWwodGhpcy53KSx0aGlzfXJvdW5kKCl7cmV0dXJuIHRoaXMueD1NYXRoLnJvdW5kKHRoaXMueCksdGhpcy55PU1hdGgucm91bmQodGhpcy55KSx0aGlzLno9TWF0aC5yb3VuZCh0aGlzLnopLHRoaXMudz1NYXRoLnJvdW5kKHRoaXMudyksdGhpc31yb3VuZFRvWmVybygpe3JldHVybiB0aGlzLng9dGhpcy54PDA/TWF0aC5jZWlsKHRoaXMueCk6TWF0aC5mbG9vcih0aGlzLngpLHRoaXMueT10aGlzLnk8MD9NYXRoLmNlaWwodGhpcy55KTpNYXRoLmZsb29yKHRoaXMueSksdGhpcy56PXRoaXMuejwwP01hdGguY2VpbCh0aGlzLnopOk1hdGguZmxvb3IodGhpcy56KSx0aGlzLnc9dGhpcy53PDA/TWF0aC5jZWlsKHRoaXMudyk6TWF0aC5mbG9vcih0aGlzLncpLHRoaXN9bmVnYXRlKCl7cmV0dXJuIHRoaXMueD0tdGhpcy54LHRoaXMueT0tdGhpcy55LHRoaXMuej0tdGhpcy56LHRoaXMudz0tdGhpcy53LHRoaXN9ZG90KEEpe3JldHVybiB0aGlzLngqQS54K3RoaXMueSpBLnkrdGhpcy56KkEueit0aGlzLncqQS53fWxlbmd0aFNxKCl7cmV0dXJuIHRoaXMueCp0aGlzLngrdGhpcy55KnRoaXMueSt0aGlzLnoqdGhpcy56K3RoaXMudyp0aGlzLnd9bGVuZ3RoKCl7cmV0dXJuIE1hdGguc3FydCh0aGlzLngqdGhpcy54K3RoaXMueSp0aGlzLnkrdGhpcy56KnRoaXMueit0aGlzLncqdGhpcy53KX1tYW5oYXR0YW5MZW5ndGgoKXtyZXR1cm4gTWF0aC5hYnModGhpcy54KStNYXRoLmFicyh0aGlzLnkpK01hdGguYWJzKHRoaXMueikrTWF0aC5hYnModGhpcy53KX1ub3JtYWxpemUoKXtyZXR1cm4gdGhpcy5kaXZpZGVTY2FsYXIodGhpcy5sZW5ndGgoKXx8MSl9c2V0TGVuZ3RoKEEpe3JldHVybiB0aGlzLm5vcm1hbGl6ZSgpLm11bHRpcGx5U2NhbGFyKEEpfWxlcnAoQSxlKXtyZXR1cm4gdGhpcy54Kz0oQS54LXRoaXMueCkqZSx0aGlzLnkrPShBLnktdGhpcy55KSplLHRoaXMueis9KEEuei10aGlzLnopKmUsdGhpcy53Kz0oQS53LXRoaXMudykqZSx0aGlzfWxlcnBWZWN0b3JzKEEsZSx0KXtyZXR1cm4gdGhpcy54PUEueCsoZS54LUEueCkqdCx0aGlzLnk9QS55KyhlLnktQS55KSp0LHRoaXMuej1BLnorKGUuei1BLnopKnQsdGhpcy53PUEudysoZS53LUEudykqdCx0aGlzfWVxdWFscyhBKXtyZXR1cm4gQS54PT09dGhpcy54JiZBLnk9PT10aGlzLnkmJkEuej09PXRoaXMueiYmQS53PT09dGhpcy53fWZyb21BcnJheShBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MDtyZXR1cm4gdGhpcy54PUFbZV0sdGhpcy55PUFbZSsxXSx0aGlzLno9QVtlKzJdLHRoaXMudz1BW2UrM10sdGhpc310b0FycmF5KCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7cmV0dXJuIEFbZV09dGhpcy54LEFbZSsxXT10aGlzLnksQVtlKzJdPXRoaXMueixBW2UrM109dGhpcy53LEF9ZnJvbUJ1ZmZlckF0dHJpYnV0ZShBLGUpe3JldHVybiB0aGlzLng9QS5nZXRYKGUpLHRoaXMueT1BLmdldFkoZSksdGhpcy56PUEuZ2V0WihlKSx0aGlzLnc9QS5nZXRXKGUpLHRoaXN9cmFuZG9tKCl7cmV0dXJuIHRoaXMueD1NYXRoLnJhbmRvbSgpLHRoaXMueT1NYXRoLnJhbmRvbSgpLHRoaXMuej1NYXRoLnJhbmRvbSgpLHRoaXMudz1NYXRoLnJhbmRvbSgpLHRoaXN9KltTeW1ib2wuaXRlcmF0b3JdKCl7eWllbGQgdGhpcy54LHlpZWxkIHRoaXMueSx5aWVsZCB0aGlzLnoseWllbGQgdGhpcy53fX1jbGFzcyB1biBleHRlbmRzIE50e2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fTtzdXBlcigpLHRoaXMuaXNXZWJHTFJlbmRlclRhcmdldD0hMCx0aGlzLndpZHRoPUEsdGhpcy5oZWlnaHQ9ZSx0aGlzLmRlcHRoPTEsdGhpcy5zY2lzc29yPW5ldyBRbigwLDAsQSxlKSx0aGlzLnNjaXNzb3JUZXN0PSExLHRoaXMudmlld3BvcnQ9bmV3IFFuKDAsMCxBLGUpO2NvbnN0IG49e3dpZHRoOkEsaGVpZ2h0OmUsZGVwdGg6MX07dm9pZCAwIT09dC5lbmNvZGluZyYmKF90KCJUSFJFRS5XZWJHTFJlbmRlclRhcmdldDogb3B0aW9uLmVuY29kaW5nIGhhcyBiZWVuIHJlcGxhY2VkIGJ5IG9wdGlvbi5jb2xvclNwYWNlLiIpLHQuY29sb3JTcGFjZT10LmVuY29kaW5nPT09U2U/SmU6amUpLHRoaXMudGV4dHVyZT1uZXcgRW4obix0Lm1hcHBpbmcsdC53cmFwUyx0LndyYXBULHQubWFnRmlsdGVyLHQubWluRmlsdGVyLHQuZm9ybWF0LHQudHlwZSx0LmFuaXNvdHJvcHksdC5jb2xvclNwYWNlKSx0aGlzLnRleHR1cmUuaXNSZW5kZXJUYXJnZXRUZXh0dXJlPSEwLHRoaXMudGV4dHVyZS5mbGlwWT0hMSx0aGlzLnRleHR1cmUuZ2VuZXJhdGVNaXBtYXBzPXZvaWQgMCE9PXQuZ2VuZXJhdGVNaXBtYXBzJiZ0LmdlbmVyYXRlTWlwbWFwcyx0aGlzLnRleHR1cmUuaW50ZXJuYWxGb3JtYXQ9dm9pZCAwIT09dC5pbnRlcm5hbEZvcm1hdD90LmludGVybmFsRm9ybWF0Om51bGwsdGhpcy50ZXh0dXJlLm1pbkZpbHRlcj12b2lkIDAhPT10Lm1pbkZpbHRlcj90Lm1pbkZpbHRlcjp3QSx0aGlzLmRlcHRoQnVmZmVyPXZvaWQgMD09PXQuZGVwdGhCdWZmZXJ8fHQuZGVwdGhCdWZmZXIsdGhpcy5zdGVuY2lsQnVmZmVyPXZvaWQgMCE9PXQuc3RlbmNpbEJ1ZmZlciYmdC5zdGVuY2lsQnVmZmVyLHRoaXMuZGVwdGhUZXh0dXJlPXZvaWQgMCE9PXQuZGVwdGhUZXh0dXJlP3QuZGVwdGhUZXh0dXJlOm51bGwsdGhpcy5zYW1wbGVzPXZvaWQgMCE9PXQuc2FtcGxlcz90LnNhbXBsZXM6MH1zZXRTaXplKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjE7dGhpcy53aWR0aD09PUEmJnRoaXMuaGVpZ2h0PT09ZSYmdGhpcy5kZXB0aD09PXR8fCh0aGlzLndpZHRoPUEsdGhpcy5oZWlnaHQ9ZSx0aGlzLmRlcHRoPXQsdGhpcy50ZXh0dXJlLmltYWdlLndpZHRoPUEsdGhpcy50ZXh0dXJlLmltYWdlLmhlaWdodD1lLHRoaXMudGV4dHVyZS5pbWFnZS5kZXB0aD10LHRoaXMuZGlzcG9zZSgpKSx0aGlzLnZpZXdwb3J0LnNldCgwLDAsQSxlKSx0aGlzLnNjaXNzb3Iuc2V0KDAsMCxBLGUpfWNsb25lKCl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMpfWNvcHkoQSl7dGhpcy53aWR0aD1BLndpZHRoLHRoaXMuaGVpZ2h0PUEuaGVpZ2h0LHRoaXMuZGVwdGg9QS5kZXB0aCx0aGlzLnNjaXNzb3IuY29weShBLnNjaXNzb3IpLHRoaXMuc2Npc3NvclRlc3Q9QS5zY2lzc29yVGVzdCx0aGlzLnZpZXdwb3J0LmNvcHkoQS52aWV3cG9ydCksdGhpcy50ZXh0dXJlPUEudGV4dHVyZS5jbG9uZSgpLHRoaXMudGV4dHVyZS5pc1JlbmRlclRhcmdldFRleHR1cmU9ITA7Y29uc3QgZT1PYmplY3QuYXNzaWduKHt9LEEudGV4dHVyZS5pbWFnZSk7cmV0dXJuIHRoaXMudGV4dHVyZS5zb3VyY2U9bmV3IEJuKGUpLHRoaXMuZGVwdGhCdWZmZXI9QS5kZXB0aEJ1ZmZlcix0aGlzLnN0ZW5jaWxCdWZmZXI9QS5zdGVuY2lsQnVmZmVyLG51bGwhPT1BLmRlcHRoVGV4dHVyZSYmKHRoaXMuZGVwdGhUZXh0dXJlPUEuZGVwdGhUZXh0dXJlLmNsb25lKCkpLHRoaXMuc2FtcGxlcz1BLnNhbXBsZXMsdGhpc31kaXNwb3NlKCl7dGhpcy5kaXNwYXRjaEV2ZW50KHt0eXBlOiJkaXNwb3NlIn0pfX1jbGFzcyBsbiBleHRlbmRzIEVue2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm51bGwsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjE7c3VwZXIobnVsbCksdGhpcy5pc0RhdGFBcnJheVRleHR1cmU9ITAsdGhpcy5pbWFnZT17ZGF0YTpBLHdpZHRoOmUsaGVpZ2h0OnQsZGVwdGg6bn0sdGhpcy5tYWdGaWx0ZXI9RUEsdGhpcy5taW5GaWx0ZXI9RUEsdGhpcy53cmFwUj1jQSx0aGlzLmdlbmVyYXRlTWlwbWFwcz0hMSx0aGlzLmZsaXBZPSExLHRoaXMudW5wYWNrQWxpZ25tZW50PTF9fWNsYXNzIGhuIGV4dGVuZHMgdW57Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjE7c3VwZXIoQSxlKSx0aGlzLmlzV2ViR0xBcnJheVJlbmRlclRhcmdldD0hMCx0aGlzLmRlcHRoPXQsdGhpcy50ZXh0dXJlPW5ldyBsbihudWxsLEEsZSx0KSx0aGlzLnRleHR1cmUuaXNSZW5kZXJUYXJnZXRUZXh0dXJlPSEwfX1jbGFzcyB3biBleHRlbmRzIEVue2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm51bGwsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjE7c3VwZXIobnVsbCksdGhpcy5pc0RhdGEzRFRleHR1cmU9ITAsdGhpcy5pbWFnZT17ZGF0YTpBLHdpZHRoOmUsaGVpZ2h0OnQsZGVwdGg6bn0sdGhpcy5tYWdGaWx0ZXI9RUEsdGhpcy5taW5GaWx0ZXI9RUEsdGhpcy53cmFwUj1jQSx0aGlzLmdlbmVyYXRlTWlwbWFwcz0hMSx0aGlzLmZsaXBZPSExLHRoaXMudW5wYWNrQWxpZ25tZW50PTF9fWNsYXNzIENuIGV4dGVuZHMgdW57Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjE7c3VwZXIoQSxlKSx0aGlzLmlzV2ViR0wzRFJlbmRlclRhcmdldD0hMCx0aGlzLmRlcHRoPXQsdGhpcy50ZXh0dXJlPW5ldyB3bihudWxsLEEsZSx0KSx0aGlzLnRleHR1cmUuaXNSZW5kZXJUYXJnZXRUZXh0dXJlPSEwfX1jbGFzcyBJbiBleHRlbmRzIHVue2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjE7c3VwZXIoYXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEsYXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjEsYXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOnt9KSx0aGlzLmlzV2ViR0xNdWx0aXBsZVJlbmRlclRhcmdldHM9ITA7Y29uc3QgZT10aGlzLnRleHR1cmU7dGhpcy50ZXh0dXJlPVtdO2ZvcihsZXQgdD0wO3Q8QTt0KyspdGhpcy50ZXh0dXJlW3RdPWUuY2xvbmUoKSx0aGlzLnRleHR1cmVbdF0uaXNSZW5kZXJUYXJnZXRUZXh0dXJlPSEwfXNldFNpemUoQSxlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MTtpZih0aGlzLndpZHRoIT09QXx8dGhpcy5oZWlnaHQhPT1lfHx0aGlzLmRlcHRoIT09dCl7dGhpcy53aWR0aD1BLHRoaXMuaGVpZ2h0PWUsdGhpcy5kZXB0aD10O2ZvcihsZXQgbj0wLGk9dGhpcy50ZXh0dXJlLmxlbmd0aDtuPGk7bisrKXRoaXMudGV4dHVyZVtuXS5pbWFnZS53aWR0aD1BLHRoaXMudGV4dHVyZVtuXS5pbWFnZS5oZWlnaHQ9ZSx0aGlzLnRleHR1cmVbbl0uaW1hZ2UuZGVwdGg9dDt0aGlzLmRpc3Bvc2UoKX1yZXR1cm4gdGhpcy52aWV3cG9ydC5zZXQoMCwwLEEsZSksdGhpcy5zY2lzc29yLnNldCgwLDAsQSxlKSx0aGlzfWNvcHkoQSl7dGhpcy5kaXNwb3NlKCksdGhpcy53aWR0aD1BLndpZHRoLHRoaXMuaGVpZ2h0PUEuaGVpZ2h0LHRoaXMuZGVwdGg9QS5kZXB0aCx0aGlzLnNjaXNzb3IuY29weShBLnNjaXNzb3IpLHRoaXMuc2Npc3NvclRlc3Q9QS5zY2lzc29yVGVzdCx0aGlzLnZpZXdwb3J0LmNvcHkoQS52aWV3cG9ydCksdGhpcy5kZXB0aEJ1ZmZlcj1BLmRlcHRoQnVmZmVyLHRoaXMuc3RlbmNpbEJ1ZmZlcj1BLnN0ZW5jaWxCdWZmZXIsbnVsbCE9PUEuZGVwdGhUZXh0dXJlJiYodGhpcy5kZXB0aFRleHR1cmU9QS5kZXB0aFRleHR1cmUuY2xvbmUoKSksdGhpcy50ZXh0dXJlLmxlbmd0aD0wO2ZvcihsZXQgZT0wLHQ9QS50ZXh0dXJlLmxlbmd0aDtlPHQ7ZSsrKXRoaXMudGV4dHVyZVtlXT1BLnRleHR1cmVbZV0uY2xvbmUoKSx0aGlzLnRleHR1cmVbZV0uaXNSZW5kZXJUYXJnZXRUZXh0dXJlPSEwO3JldHVybiB0aGlzfX1jbGFzcyBNbntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTowLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXToxO3RoaXMuaXNRdWF0ZXJuaW9uPSEwLHRoaXMuX3g9QSx0aGlzLl95PWUsdGhpcy5fej10LHRoaXMuX3c9bn1zdGF0aWMgc2xlcnBGbGF0KEEsZSx0LG4saSxyLG8pe2xldCBzPXRbbiswXSxhPXRbbisxXSxCPXRbbisyXSxjPXRbbiszXTtjb25zdCBnPWlbciswXSxFPWlbcisxXSxRPWlbcisyXSx1PWlbciszXTtpZigwPT09bylyZXR1cm4gQVtlKzBdPXMsQVtlKzFdPWEsQVtlKzJdPUIsdm9pZChBW2UrM109Yyk7aWYoMT09PW8pcmV0dXJuIEFbZSswXT1nLEFbZSsxXT1FLEFbZSsyXT1RLHZvaWQoQVtlKzNdPXUpO2lmKGMhPT11fHxzIT09Z3x8YSE9PUV8fEIhPT1RKXtsZXQgQT0xLW87Y29uc3QgZT1zKmcrYSpFK0IqUStjKnUsdD1lPj0wPzE6LTEsbj0xLWUqZTtpZihuPk51bWJlci5FUFNJTE9OKXtjb25zdCBpPU1hdGguc3FydChuKSxyPU1hdGguYXRhbjIoaSxlKnQpO0E9TWF0aC5zaW4oQSpyKS9pLG89TWF0aC5zaW4obypyKS9pfWNvbnN0IGk9byp0O2lmKHM9cypBK2cqaSxhPWEqQStFKmksQj1CKkErUSppLGM9YypBK3UqaSxBPT09MS1vKXtjb25zdCBBPTEvTWF0aC5zcXJ0KHMqcythKmErQipCK2MqYyk7cyo9QSxhKj1BLEIqPUEsYyo9QX19QVtlXT1zLEFbZSsxXT1hLEFbZSsyXT1CLEFbZSszXT1jfXN0YXRpYyBtdWx0aXBseVF1YXRlcm5pb25zRmxhdChBLGUsdCxuLGkscil7Y29uc3Qgbz10W25dLHM9dFtuKzFdLGE9dFtuKzJdLEI9dFtuKzNdLGM9aVtyXSxnPWlbcisxXSxFPWlbcisyXSxRPWlbciszXTtyZXR1cm4gQVtlXT1vKlErQipjK3MqRS1hKmcsQVtlKzFdPXMqUStCKmcrYSpjLW8qRSxBW2UrMl09YSpRK0IqRStvKmctcypjLEFbZSszXT1CKlEtbypjLXMqZy1hKkUsQX1nZXQgeCgpe3JldHVybiB0aGlzLl94fXNldCB4KEEpe3RoaXMuX3g9QSx0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCl9Z2V0IHkoKXtyZXR1cm4gdGhpcy5feX1zZXQgeShBKXt0aGlzLl95PUEsdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpfWdldCB6KCl7cmV0dXJuIHRoaXMuX3p9c2V0IHooQSl7dGhpcy5fej1BLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKX1nZXQgdygpe3JldHVybiB0aGlzLl93fXNldCB3KEEpe3RoaXMuX3c9QSx0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCl9c2V0KEEsZSx0LG4pe3JldHVybiB0aGlzLl94PUEsdGhpcy5feT1lLHRoaXMuX3o9dCx0aGlzLl93PW4sdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpLHRoaXN9Y2xvbmUoKXtyZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3IodGhpcy5feCx0aGlzLl95LHRoaXMuX3osdGhpcy5fdyl9Y29weShBKXtyZXR1cm4gdGhpcy5feD1BLngsdGhpcy5feT1BLnksdGhpcy5fej1BLnosdGhpcy5fdz1BLncsdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpLHRoaXN9c2V0RnJvbUV1bGVyKEEsZSl7Y29uc3QgdD1BLl94LG49QS5feSxpPUEuX3oscj1BLl9vcmRlcixvPU1hdGguY29zLHM9TWF0aC5zaW4sYT1vKHQvMiksQj1vKG4vMiksYz1vKGkvMiksZz1zKHQvMiksRT1zKG4vMiksUT1zKGkvMik7c3dpdGNoKHIpe2Nhc2UiWFlaIjp0aGlzLl94PWcqQipjK2EqRSpRLHRoaXMuX3k9YSpFKmMtZypCKlEsdGhpcy5fej1hKkIqUStnKkUqYyx0aGlzLl93PWEqQipjLWcqRSpRO2JyZWFrO2Nhc2UiWVhaIjp0aGlzLl94PWcqQipjK2EqRSpRLHRoaXMuX3k9YSpFKmMtZypCKlEsdGhpcy5fej1hKkIqUS1nKkUqYyx0aGlzLl93PWEqQipjK2cqRSpRO2JyZWFrO2Nhc2UiWlhZIjp0aGlzLl94PWcqQipjLWEqRSpRLHRoaXMuX3k9YSpFKmMrZypCKlEsdGhpcy5fej1hKkIqUStnKkUqYyx0aGlzLl93PWEqQipjLWcqRSpRO2JyZWFrO2Nhc2UiWllYIjp0aGlzLl94PWcqQipjLWEqRSpRLHRoaXMuX3k9YSpFKmMrZypCKlEsdGhpcy5fej1hKkIqUS1nKkUqYyx0aGlzLl93PWEqQipjK2cqRSpRO2JyZWFrO2Nhc2UiWVpYIjp0aGlzLl94PWcqQipjK2EqRSpRLHRoaXMuX3k9YSpFKmMrZypCKlEsdGhpcy5fej1hKkIqUS1nKkUqYyx0aGlzLl93PWEqQipjLWcqRSpRO2JyZWFrO2Nhc2UiWFpZIjp0aGlzLl94PWcqQipjLWEqRSpRLHRoaXMuX3k9YSpFKmMtZypCKlEsdGhpcy5fej1hKkIqUStnKkUqYyx0aGlzLl93PWEqQipjK2cqRSpRO2JyZWFrO2RlZmF1bHQ6Y29uc29sZS53YXJuKCJUSFJFRS5RdWF0ZXJuaW9uOiAuc2V0RnJvbUV1bGVyKCkgZW5jb3VudGVyZWQgYW4gdW5rbm93biBvcmRlcjogIityKX1yZXR1cm4hMSE9PWUmJnRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfXNldEZyb21BeGlzQW5nbGUoQSxlKXtjb25zdCB0PWUvMixuPU1hdGguc2luKHQpO3JldHVybiB0aGlzLl94PUEueCpuLHRoaXMuX3k9QS55Km4sdGhpcy5fej1BLnoqbix0aGlzLl93PU1hdGguY29zKHQpLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfXNldEZyb21Sb3RhdGlvbk1hdHJpeChBKXtjb25zdCBlPUEuZWxlbWVudHMsdD1lWzBdLG49ZVs0XSxpPWVbOF0scj1lWzFdLG89ZVs1XSxzPWVbOV0sYT1lWzJdLEI9ZVs2XSxjPWVbMTBdLGc9dCtvK2M7aWYoZz4wKXtjb25zdCBBPS41L01hdGguc3FydChnKzEpO3RoaXMuX3c9LjI1L0EsdGhpcy5feD0oQi1zKSpBLHRoaXMuX3k9KGktYSkqQSx0aGlzLl96PShyLW4pKkF9ZWxzZSBpZih0Pm8mJnQ+Yyl7Y29uc3QgQT0yKk1hdGguc3FydCgxK3Qtby1jKTt0aGlzLl93PShCLXMpL0EsdGhpcy5feD0uMjUqQSx0aGlzLl95PShuK3IpL0EsdGhpcy5fej0oaSthKS9BfWVsc2UgaWYobz5jKXtjb25zdCBBPTIqTWF0aC5zcXJ0KDErby10LWMpO3RoaXMuX3c9KGktYSkvQSx0aGlzLl94PShuK3IpL0EsdGhpcy5feT0uMjUqQSx0aGlzLl96PShzK0IpL0F9ZWxzZXtjb25zdCBBPTIqTWF0aC5zcXJ0KDErYy10LW8pO3RoaXMuX3c9KHItbikvQSx0aGlzLl94PShpK2EpL0EsdGhpcy5feT0ocytCKS9BLHRoaXMuX3o9LjI1KkF9cmV0dXJuIHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfXNldEZyb21Vbml0VmVjdG9ycyhBLGUpe2xldCB0PUEuZG90KGUpKzE7cmV0dXJuIHQ8TnVtYmVyLkVQU0lMT04/KHQ9MCxNYXRoLmFicyhBLngpPk1hdGguYWJzKEEueik/KHRoaXMuX3g9LUEueSx0aGlzLl95PUEueCx0aGlzLl96PTAsdGhpcy5fdz10KToodGhpcy5feD0wLHRoaXMuX3k9LUEueix0aGlzLl96PUEueSx0aGlzLl93PXQpKToodGhpcy5feD1BLnkqZS56LUEueiplLnksdGhpcy5feT1BLnoqZS54LUEueCplLnosdGhpcy5fej1BLngqZS55LUEueSplLngsdGhpcy5fdz10KSx0aGlzLm5vcm1hbGl6ZSgpfWFuZ2xlVG8oQSl7cmV0dXJuIDIqTWF0aC5hY29zKE1hdGguYWJzKEd0KHRoaXMuZG90KEEpLC0xLDEpKSl9cm90YXRlVG93YXJkcyhBLGUpe2NvbnN0IHQ9dGhpcy5hbmdsZVRvKEEpO2lmKDA9PT10KXJldHVybiB0aGlzO2NvbnN0IG49TWF0aC5taW4oMSxlL3QpO3JldHVybiB0aGlzLnNsZXJwKEEsbiksdGhpc31pZGVudGl0eSgpe3JldHVybiB0aGlzLnNldCgwLDAsMCwxKX1pbnZlcnQoKXtyZXR1cm4gdGhpcy5jb25qdWdhdGUoKX1jb25qdWdhdGUoKXtyZXR1cm4gdGhpcy5feCo9LTEsdGhpcy5feSo9LTEsdGhpcy5feio9LTEsdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpLHRoaXN9ZG90KEEpe3JldHVybiB0aGlzLl94KkEuX3grdGhpcy5feSpBLl95K3RoaXMuX3oqQS5feit0aGlzLl93KkEuX3d9bGVuZ3RoU3EoKXtyZXR1cm4gdGhpcy5feCp0aGlzLl94K3RoaXMuX3kqdGhpcy5feSt0aGlzLl96KnRoaXMuX3ordGhpcy5fdyp0aGlzLl93fWxlbmd0aCgpe3JldHVybiBNYXRoLnNxcnQodGhpcy5feCp0aGlzLl94K3RoaXMuX3kqdGhpcy5feSt0aGlzLl96KnRoaXMuX3ordGhpcy5fdyp0aGlzLl93KX1ub3JtYWxpemUoKXtsZXQgQT10aGlzLmxlbmd0aCgpO3JldHVybiAwPT09QT8odGhpcy5feD0wLHRoaXMuX3k9MCx0aGlzLl96PTAsdGhpcy5fdz0xKTooQT0xL0EsdGhpcy5feD10aGlzLl94KkEsdGhpcy5feT10aGlzLl95KkEsdGhpcy5fej10aGlzLl96KkEsdGhpcy5fdz10aGlzLl93KkEpLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfW11bHRpcGx5KEEpe3JldHVybiB0aGlzLm11bHRpcGx5UXVhdGVybmlvbnModGhpcyxBKX1wcmVtdWx0aXBseShBKXtyZXR1cm4gdGhpcy5tdWx0aXBseVF1YXRlcm5pb25zKEEsdGhpcyl9bXVsdGlwbHlRdWF0ZXJuaW9ucyhBLGUpe2NvbnN0IHQ9QS5feCxuPUEuX3ksaT1BLl96LHI9QS5fdyxvPWUuX3gscz1lLl95LGE9ZS5feixCPWUuX3c7cmV0dXJuIHRoaXMuX3g9dCpCK3IqbytuKmEtaSpzLHRoaXMuX3k9bipCK3IqcytpKm8tdCphLHRoaXMuX3o9aSpCK3IqYSt0KnMtbipvLHRoaXMuX3c9cipCLXQqby1uKnMtaSphLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfXNsZXJwKEEsZSl7aWYoMD09PWUpcmV0dXJuIHRoaXM7aWYoMT09PWUpcmV0dXJuIHRoaXMuY29weShBKTtjb25zdCB0PXRoaXMuX3gsbj10aGlzLl95LGk9dGhpcy5feixyPXRoaXMuX3c7bGV0IG89cipBLl93K3QqQS5feCtuKkEuX3kraSpBLl96O2lmKG88MD8odGhpcy5fdz0tQS5fdyx0aGlzLl94PS1BLl94LHRoaXMuX3k9LUEuX3ksdGhpcy5fej0tQS5feixvPS1vKTp0aGlzLmNvcHkoQSksbz49MSlyZXR1cm4gdGhpcy5fdz1yLHRoaXMuX3g9dCx0aGlzLl95PW4sdGhpcy5fej1pLHRoaXM7Y29uc3Qgcz0xLW8qbztpZihzPD1OdW1iZXIuRVBTSUxPTil7Y29uc3QgQT0xLWU7cmV0dXJuIHRoaXMuX3c9QSpyK2UqdGhpcy5fdyx0aGlzLl94PUEqdCtlKnRoaXMuX3gsdGhpcy5feT1BKm4rZSp0aGlzLl95LHRoaXMuX3o9QSppK2UqdGhpcy5feix0aGlzLm5vcm1hbGl6ZSgpLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfWNvbnN0IGE9TWF0aC5zcXJ0KHMpLEI9TWF0aC5hdGFuMihhLG8pLGM9TWF0aC5zaW4oKDEtZSkqQikvYSxnPU1hdGguc2luKGUqQikvYTtyZXR1cm4gdGhpcy5fdz1yKmMrdGhpcy5fdypnLHRoaXMuX3g9dCpjK3RoaXMuX3gqZyx0aGlzLl95PW4qYyt0aGlzLl95KmcsdGhpcy5fej1pKmMrdGhpcy5feipnLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfXNsZXJwUXVhdGVybmlvbnMoQSxlLHQpe3JldHVybiB0aGlzLmNvcHkoQSkuc2xlcnAoZSx0KX1yYW5kb20oKXtjb25zdCBBPU1hdGgucmFuZG9tKCksZT1NYXRoLnNxcnQoMS1BKSx0PU1hdGguc3FydChBKSxuPTIqTWF0aC5QSSpNYXRoLnJhbmRvbSgpLGk9MipNYXRoLlBJKk1hdGgucmFuZG9tKCk7cmV0dXJuIHRoaXMuc2V0KGUqTWF0aC5jb3MobiksdCpNYXRoLnNpbihpKSx0Kk1hdGguY29zKGkpLGUqTWF0aC5zaW4obikpfWVxdWFscyhBKXtyZXR1cm4gQS5feD09PXRoaXMuX3gmJkEuX3k9PT10aGlzLl95JiZBLl96PT09dGhpcy5feiYmQS5fdz09PXRoaXMuX3d9ZnJvbUFycmF5KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3JldHVybiB0aGlzLl94PUFbZV0sdGhpcy5feT1BW2UrMV0sdGhpcy5fej1BW2UrMl0sdGhpcy5fdz1BW2UrM10sdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpLHRoaXN9dG9BcnJheSgpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3JldHVybiBBW2VdPXRoaXMuX3gsQVtlKzFdPXRoaXMuX3ksQVtlKzJdPXRoaXMuX3osQVtlKzNdPXRoaXMuX3csQX1mcm9tQnVmZmVyQXR0cmlidXRlKEEsZSl7cmV0dXJuIHRoaXMuX3g9QS5nZXRYKGUpLHRoaXMuX3k9QS5nZXRZKGUpLHRoaXMuX3o9QS5nZXRaKGUpLHRoaXMuX3c9QS5nZXRXKGUpLHRoaXN9dG9KU09OKCl7cmV0dXJuIHRoaXMudG9BcnJheSgpfV9vbkNoYW5nZShBKXtyZXR1cm4gdGhpcy5fb25DaGFuZ2VDYWxsYmFjaz1BLHRoaXN9X29uQ2hhbmdlQ2FsbGJhY2soKXt9KltTeW1ib2wuaXRlcmF0b3JdKCl7eWllbGQgdGhpcy5feCx5aWVsZCB0aGlzLl95LHlpZWxkIHRoaXMuX3oseWllbGQgdGhpcy5fd319Y2xhc3MgZG57Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MCxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjA7ZG4ucHJvdG90eXBlLmlzVmVjdG9yMz0hMCx0aGlzLng9QSx0aGlzLnk9ZSx0aGlzLno9dH1zZXQoQSxlLHQpe3JldHVybiB2b2lkIDA9PT10JiYodD10aGlzLnopLHRoaXMueD1BLHRoaXMueT1lLHRoaXMuej10LHRoaXN9c2V0U2NhbGFyKEEpe3JldHVybiB0aGlzLng9QSx0aGlzLnk9QSx0aGlzLno9QSx0aGlzfXNldFgoQSl7cmV0dXJuIHRoaXMueD1BLHRoaXN9c2V0WShBKXtyZXR1cm4gdGhpcy55PUEsdGhpc31zZXRaKEEpe3JldHVybiB0aGlzLno9QSx0aGlzfXNldENvbXBvbmVudChBLGUpe3N3aXRjaChBKXtjYXNlIDA6dGhpcy54PWU7YnJlYWs7Y2FzZSAxOnRoaXMueT1lO2JyZWFrO2Nhc2UgMjp0aGlzLno9ZTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiaW5kZXggaXMgb3V0IG9mIHJhbmdlOiAiK0EpfXJldHVybiB0aGlzfWdldENvbXBvbmVudChBKXtzd2l0Y2goQSl7Y2FzZSAwOnJldHVybiB0aGlzLng7Y2FzZSAxOnJldHVybiB0aGlzLnk7Y2FzZSAyOnJldHVybiB0aGlzLno7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoImluZGV4IGlzIG91dCBvZiByYW5nZTogIitBKX19Y2xvbmUoKXtyZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3IodGhpcy54LHRoaXMueSx0aGlzLnopfWNvcHkoQSl7cmV0dXJuIHRoaXMueD1BLngsdGhpcy55PUEueSx0aGlzLno9QS56LHRoaXN9YWRkKEEpe3JldHVybiB0aGlzLngrPUEueCx0aGlzLnkrPUEueSx0aGlzLnorPUEueix0aGlzfWFkZFNjYWxhcihBKXtyZXR1cm4gdGhpcy54Kz1BLHRoaXMueSs9QSx0aGlzLnorPUEsdGhpc31hZGRWZWN0b3JzKEEsZSl7cmV0dXJuIHRoaXMueD1BLngrZS54LHRoaXMueT1BLnkrZS55LHRoaXMuej1BLnorZS56LHRoaXN9YWRkU2NhbGVkVmVjdG9yKEEsZSl7cmV0dXJuIHRoaXMueCs9QS54KmUsdGhpcy55Kz1BLnkqZSx0aGlzLnorPUEueiplLHRoaXN9c3ViKEEpe3JldHVybiB0aGlzLngtPUEueCx0aGlzLnktPUEueSx0aGlzLnotPUEueix0aGlzfXN1YlNjYWxhcihBKXtyZXR1cm4gdGhpcy54LT1BLHRoaXMueS09QSx0aGlzLnotPUEsdGhpc31zdWJWZWN0b3JzKEEsZSl7cmV0dXJuIHRoaXMueD1BLngtZS54LHRoaXMueT1BLnktZS55LHRoaXMuej1BLnotZS56LHRoaXN9bXVsdGlwbHkoQSl7cmV0dXJuIHRoaXMueCo9QS54LHRoaXMueSo9QS55LHRoaXMueio9QS56LHRoaXN9bXVsdGlwbHlTY2FsYXIoQSl7cmV0dXJuIHRoaXMueCo9QSx0aGlzLnkqPUEsdGhpcy56Kj1BLHRoaXN9bXVsdGlwbHlWZWN0b3JzKEEsZSl7cmV0dXJuIHRoaXMueD1BLngqZS54LHRoaXMueT1BLnkqZS55LHRoaXMuej1BLnoqZS56LHRoaXN9YXBwbHlFdWxlcihBKXtyZXR1cm4gdGhpcy5hcHBseVF1YXRlcm5pb24obW4uc2V0RnJvbUV1bGVyKEEpKX1hcHBseUF4aXNBbmdsZShBLGUpe3JldHVybiB0aGlzLmFwcGx5UXVhdGVybmlvbihtbi5zZXRGcm9tQXhpc0FuZ2xlKEEsZSkpfWFwcGx5TWF0cml4MyhBKXtjb25zdCBlPXRoaXMueCx0PXRoaXMueSxuPXRoaXMueixpPUEuZWxlbWVudHM7cmV0dXJuIHRoaXMueD1pWzBdKmUraVszXSp0K2lbNl0qbix0aGlzLnk9aVsxXSplK2lbNF0qdCtpWzddKm4sdGhpcy56PWlbMl0qZStpWzVdKnQraVs4XSpuLHRoaXN9YXBwbHlOb3JtYWxNYXRyaXgoQSl7cmV0dXJuIHRoaXMuYXBwbHlNYXRyaXgzKEEpLm5vcm1hbGl6ZSgpfWFwcGx5TWF0cml4NChBKXtjb25zdCBlPXRoaXMueCx0PXRoaXMueSxuPXRoaXMueixpPUEuZWxlbWVudHMscj0xLyhpWzNdKmUraVs3XSp0K2lbMTFdKm4raVsxNV0pO3JldHVybiB0aGlzLng9KGlbMF0qZStpWzRdKnQraVs4XSpuK2lbMTJdKSpyLHRoaXMueT0oaVsxXSplK2lbNV0qdCtpWzldKm4raVsxM10pKnIsdGhpcy56PShpWzJdKmUraVs2XSp0K2lbMTBdKm4raVsxNF0pKnIsdGhpc31hcHBseVF1YXRlcm5pb24oQSl7Y29uc3QgZT10aGlzLngsdD10aGlzLnksbj10aGlzLnosaT1BLngscj1BLnksbz1BLnoscz1BLncsYT1zKmUrcipuLW8qdCxCPXMqdCtvKmUtaSpuLGM9cypuK2kqdC1yKmUsZz0taSplLXIqdC1vKm47cmV0dXJuIHRoaXMueD1hKnMrZyotaStCKi1vLWMqLXIsdGhpcy55PUIqcytnKi1yK2MqLWktYSotbyx0aGlzLno9YypzK2cqLW8rYSotci1CKi1pLHRoaXN9cHJvamVjdChBKXtyZXR1cm4gdGhpcy5hcHBseU1hdHJpeDQoQS5tYXRyaXhXb3JsZEludmVyc2UpLmFwcGx5TWF0cml4NChBLnByb2plY3Rpb25NYXRyaXgpfXVucHJvamVjdChBKXtyZXR1cm4gdGhpcy5hcHBseU1hdHJpeDQoQS5wcm9qZWN0aW9uTWF0cml4SW52ZXJzZSkuYXBwbHlNYXRyaXg0KEEubWF0cml4V29ybGQpfXRyYW5zZm9ybURpcmVjdGlvbihBKXtjb25zdCBlPXRoaXMueCx0PXRoaXMueSxuPXRoaXMueixpPUEuZWxlbWVudHM7cmV0dXJuIHRoaXMueD1pWzBdKmUraVs0XSp0K2lbOF0qbix0aGlzLnk9aVsxXSplK2lbNV0qdCtpWzldKm4sdGhpcy56PWlbMl0qZStpWzZdKnQraVsxMF0qbix0aGlzLm5vcm1hbGl6ZSgpfWRpdmlkZShBKXtyZXR1cm4gdGhpcy54Lz1BLngsdGhpcy55Lz1BLnksdGhpcy56Lz1BLnosdGhpc31kaXZpZGVTY2FsYXIoQSl7cmV0dXJuIHRoaXMubXVsdGlwbHlTY2FsYXIoMS9BKX1taW4oQSl7cmV0dXJuIHRoaXMueD1NYXRoLm1pbih0aGlzLngsQS54KSx0aGlzLnk9TWF0aC5taW4odGhpcy55LEEueSksdGhpcy56PU1hdGgubWluKHRoaXMueixBLnopLHRoaXN9bWF4KEEpe3JldHVybiB0aGlzLng9TWF0aC5tYXgodGhpcy54LEEueCksdGhpcy55PU1hdGgubWF4KHRoaXMueSxBLnkpLHRoaXMuej1NYXRoLm1heCh0aGlzLnosQS56KSx0aGlzfWNsYW1wKEEsZSl7cmV0dXJuIHRoaXMueD1NYXRoLm1heChBLngsTWF0aC5taW4oZS54LHRoaXMueCkpLHRoaXMueT1NYXRoLm1heChBLnksTWF0aC5taW4oZS55LHRoaXMueSkpLHRoaXMuej1NYXRoLm1heChBLnosTWF0aC5taW4oZS56LHRoaXMueikpLHRoaXN9Y2xhbXBTY2FsYXIoQSxlKXtyZXR1cm4gdGhpcy54PU1hdGgubWF4KEEsTWF0aC5taW4oZSx0aGlzLngpKSx0aGlzLnk9TWF0aC5tYXgoQSxNYXRoLm1pbihlLHRoaXMueSkpLHRoaXMuej1NYXRoLm1heChBLE1hdGgubWluKGUsdGhpcy56KSksdGhpc31jbGFtcExlbmd0aChBLGUpe2NvbnN0IHQ9dGhpcy5sZW5ndGgoKTtyZXR1cm4gdGhpcy5kaXZpZGVTY2FsYXIodHx8MSkubXVsdGlwbHlTY2FsYXIoTWF0aC5tYXgoQSxNYXRoLm1pbihlLHQpKSl9Zmxvb3IoKXtyZXR1cm4gdGhpcy54PU1hdGguZmxvb3IodGhpcy54KSx0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpLHRoaXMuej1NYXRoLmZsb29yKHRoaXMueiksdGhpc31jZWlsKCl7cmV0dXJuIHRoaXMueD1NYXRoLmNlaWwodGhpcy54KSx0aGlzLnk9TWF0aC5jZWlsKHRoaXMueSksdGhpcy56PU1hdGguY2VpbCh0aGlzLnopLHRoaXN9cm91bmQoKXtyZXR1cm4gdGhpcy54PU1hdGgucm91bmQodGhpcy54KSx0aGlzLnk9TWF0aC5yb3VuZCh0aGlzLnkpLHRoaXMuej1NYXRoLnJvdW5kKHRoaXMueiksdGhpc31yb3VuZFRvWmVybygpe3JldHVybiB0aGlzLng9dGhpcy54PDA/TWF0aC5jZWlsKHRoaXMueCk6TWF0aC5mbG9vcih0aGlzLngpLHRoaXMueT10aGlzLnk8MD9NYXRoLmNlaWwodGhpcy55KTpNYXRoLmZsb29yKHRoaXMueSksdGhpcy56PXRoaXMuejwwP01hdGguY2VpbCh0aGlzLnopOk1hdGguZmxvb3IodGhpcy56KSx0aGlzfW5lZ2F0ZSgpe3JldHVybiB0aGlzLng9LXRoaXMueCx0aGlzLnk9LXRoaXMueSx0aGlzLno9LXRoaXMueix0aGlzfWRvdChBKXtyZXR1cm4gdGhpcy54KkEueCt0aGlzLnkqQS55K3RoaXMueipBLnp9bGVuZ3RoU3EoKXtyZXR1cm4gdGhpcy54KnRoaXMueCt0aGlzLnkqdGhpcy55K3RoaXMueip0aGlzLnp9bGVuZ3RoKCl7cmV0dXJuIE1hdGguc3FydCh0aGlzLngqdGhpcy54K3RoaXMueSp0aGlzLnkrdGhpcy56KnRoaXMueil9bWFuaGF0dGFuTGVuZ3RoKCl7cmV0dXJuIE1hdGguYWJzKHRoaXMueCkrTWF0aC5hYnModGhpcy55KStNYXRoLmFicyh0aGlzLnopfW5vcm1hbGl6ZSgpe3JldHVybiB0aGlzLmRpdmlkZVNjYWxhcih0aGlzLmxlbmd0aCgpfHwxKX1zZXRMZW5ndGgoQSl7cmV0dXJuIHRoaXMubm9ybWFsaXplKCkubXVsdGlwbHlTY2FsYXIoQSl9bGVycChBLGUpe3JldHVybiB0aGlzLngrPShBLngtdGhpcy54KSplLHRoaXMueSs9KEEueS10aGlzLnkpKmUsdGhpcy56Kz0oQS56LXRoaXMueikqZSx0aGlzfWxlcnBWZWN0b3JzKEEsZSx0KXtyZXR1cm4gdGhpcy54PUEueCsoZS54LUEueCkqdCx0aGlzLnk9QS55KyhlLnktQS55KSp0LHRoaXMuej1BLnorKGUuei1BLnopKnQsdGhpc31jcm9zcyhBKXtyZXR1cm4gdGhpcy5jcm9zc1ZlY3RvcnModGhpcyxBKX1jcm9zc1ZlY3RvcnMoQSxlKXtjb25zdCB0PUEueCxuPUEueSxpPUEueixyPWUueCxvPWUueSxzPWUuejtyZXR1cm4gdGhpcy54PW4qcy1pKm8sdGhpcy55PWkqci10KnMsdGhpcy56PXQqby1uKnIsdGhpc31wcm9qZWN0T25WZWN0b3IoQSl7Y29uc3QgZT1BLmxlbmd0aFNxKCk7aWYoMD09PWUpcmV0dXJuIHRoaXMuc2V0KDAsMCwwKTtjb25zdCB0PUEuZG90KHRoaXMpL2U7cmV0dXJuIHRoaXMuY29weShBKS5tdWx0aXBseVNjYWxhcih0KX1wcm9qZWN0T25QbGFuZShBKXtyZXR1cm4gcG4uY29weSh0aGlzKS5wcm9qZWN0T25WZWN0b3IoQSksdGhpcy5zdWIocG4pfXJlZmxlY3QoQSl7cmV0dXJuIHRoaXMuc3ViKHBuLmNvcHkoQSkubXVsdGlwbHlTY2FsYXIoMip0aGlzLmRvdChBKSkpfWFuZ2xlVG8oQSl7Y29uc3QgZT1NYXRoLnNxcnQodGhpcy5sZW5ndGhTcSgpKkEubGVuZ3RoU3EoKSk7aWYoMD09PWUpcmV0dXJuIE1hdGguUEkvMjtjb25zdCB0PXRoaXMuZG90KEEpL2U7cmV0dXJuIE1hdGguYWNvcyhHdCh0LC0xLDEpKX1kaXN0YW5jZVRvKEEpe3JldHVybiBNYXRoLnNxcnQodGhpcy5kaXN0YW5jZVRvU3F1YXJlZChBKSl9ZGlzdGFuY2VUb1NxdWFyZWQoQSl7Y29uc3QgZT10aGlzLngtQS54LHQ9dGhpcy55LUEueSxuPXRoaXMuei1BLno7cmV0dXJuIGUqZSt0KnQrbipufW1hbmhhdHRhbkRpc3RhbmNlVG8oQSl7cmV0dXJuIE1hdGguYWJzKHRoaXMueC1BLngpK01hdGguYWJzKHRoaXMueS1BLnkpK01hdGguYWJzKHRoaXMuei1BLnopfXNldEZyb21TcGhlcmljYWwoQSl7cmV0dXJuIHRoaXMuc2V0RnJvbVNwaGVyaWNhbENvb3JkcyhBLnJhZGl1cyxBLnBoaSxBLnRoZXRhKX1zZXRGcm9tU3BoZXJpY2FsQ29vcmRzKEEsZSx0KXtjb25zdCBuPU1hdGguc2luKGUpKkE7cmV0dXJuIHRoaXMueD1uKk1hdGguc2luKHQpLHRoaXMueT1NYXRoLmNvcyhlKSpBLHRoaXMuej1uKk1hdGguY29zKHQpLHRoaXN9c2V0RnJvbUN5bGluZHJpY2FsKEEpe3JldHVybiB0aGlzLnNldEZyb21DeWxpbmRyaWNhbENvb3JkcyhBLnJhZGl1cyxBLnRoZXRhLEEueSl9c2V0RnJvbUN5bGluZHJpY2FsQ29vcmRzKEEsZSx0KXtyZXR1cm4gdGhpcy54PUEqTWF0aC5zaW4oZSksdGhpcy55PXQsdGhpcy56PUEqTWF0aC5jb3MoZSksdGhpc31zZXRGcm9tTWF0cml4UG9zaXRpb24oQSl7Y29uc3QgZT1BLmVsZW1lbnRzO3JldHVybiB0aGlzLng9ZVsxMl0sdGhpcy55PWVbMTNdLHRoaXMuej1lWzE0XSx0aGlzfXNldEZyb21NYXRyaXhTY2FsZShBKXtjb25zdCBlPXRoaXMuc2V0RnJvbU1hdHJpeENvbHVtbihBLDApLmxlbmd0aCgpLHQ9dGhpcy5zZXRGcm9tTWF0cml4Q29sdW1uKEEsMSkubGVuZ3RoKCksbj10aGlzLnNldEZyb21NYXRyaXhDb2x1bW4oQSwyKS5sZW5ndGgoKTtyZXR1cm4gdGhpcy54PWUsdGhpcy55PXQsdGhpcy56PW4sdGhpc31zZXRGcm9tTWF0cml4Q29sdW1uKEEsZSl7cmV0dXJuIHRoaXMuZnJvbUFycmF5KEEuZWxlbWVudHMsNCplKX1zZXRGcm9tTWF0cml4M0NvbHVtbihBLGUpe3JldHVybiB0aGlzLmZyb21BcnJheShBLmVsZW1lbnRzLDMqZSl9c2V0RnJvbUV1bGVyKEEpe3JldHVybiB0aGlzLng9QS5feCx0aGlzLnk9QS5feSx0aGlzLno9QS5feix0aGlzfXNldEZyb21Db2xvcihBKXtyZXR1cm4gdGhpcy54PUEucix0aGlzLnk9QS5nLHRoaXMuej1BLmIsdGhpc31lcXVhbHMoQSl7cmV0dXJuIEEueD09PXRoaXMueCYmQS55PT09dGhpcy55JiZBLno9PT10aGlzLnp9ZnJvbUFycmF5KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3JldHVybiB0aGlzLng9QVtlXSx0aGlzLnk9QVtlKzFdLHRoaXMuej1BW2UrMl0sdGhpc310b0FycmF5KCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7cmV0dXJuIEFbZV09dGhpcy54LEFbZSsxXT10aGlzLnksQVtlKzJdPXRoaXMueixBfWZyb21CdWZmZXJBdHRyaWJ1dGUoQSxlKXtyZXR1cm4gdGhpcy54PUEuZ2V0WChlKSx0aGlzLnk9QS5nZXRZKGUpLHRoaXMuej1BLmdldFooZSksdGhpc31yYW5kb20oKXtyZXR1cm4gdGhpcy54PU1hdGgucmFuZG9tKCksdGhpcy55PU1hdGgucmFuZG9tKCksdGhpcy56PU1hdGgucmFuZG9tKCksdGhpc31yYW5kb21EaXJlY3Rpb24oKXtjb25zdCBBPTIqKE1hdGgucmFuZG9tKCktLjUpLGU9TWF0aC5yYW5kb20oKSpNYXRoLlBJKjIsdD1NYXRoLnNxcnQoMS1BKioyKTtyZXR1cm4gdGhpcy54PXQqTWF0aC5jb3MoZSksdGhpcy55PXQqTWF0aC5zaW4oZSksdGhpcy56PUEsdGhpc30qW1N5bWJvbC5pdGVyYXRvcl0oKXt5aWVsZCB0aGlzLngseWllbGQgdGhpcy55LHlpZWxkIHRoaXMuen19Y29uc3QgcG49bmV3IGRuLG1uPW5ldyBNbjtjbGFzcyBGbntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpuZXcgZG4oMS8wLDEvMCwxLzApLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBkbigtMS8wLC0xLzAsLTEvMCk7dGhpcy5pc0JveDM9ITAsdGhpcy5taW49QSx0aGlzLm1heD1lfXNldChBLGUpe3JldHVybiB0aGlzLm1pbi5jb3B5KEEpLHRoaXMubWF4LmNvcHkoZSksdGhpc31zZXRGcm9tQXJyYXkoQSl7dGhpcy5tYWtlRW1wdHkoKTtmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKz0zKXRoaXMuZXhwYW5kQnlQb2ludChZbi5mcm9tQXJyYXkoQSxlKSk7cmV0dXJuIHRoaXN9c2V0RnJvbUJ1ZmZlckF0dHJpYnV0ZShBKXt0aGlzLm1ha2VFbXB0eSgpO2ZvcihsZXQgZT0wLHQ9QS5jb3VudDtlPHQ7ZSsrKXRoaXMuZXhwYW5kQnlQb2ludChZbi5mcm9tQnVmZmVyQXR0cmlidXRlKEEsZSkpO3JldHVybiB0aGlzfXNldEZyb21Qb2ludHMoQSl7dGhpcy5tYWtlRW1wdHkoKTtmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspdGhpcy5leHBhbmRCeVBvaW50KEFbZV0pO3JldHVybiB0aGlzfXNldEZyb21DZW50ZXJBbmRTaXplKEEsZSl7Y29uc3QgdD1Zbi5jb3B5KGUpLm11bHRpcGx5U2NhbGFyKC41KTtyZXR1cm4gdGhpcy5taW4uY29weShBKS5zdWIodCksdGhpcy5tYXguY29weShBKS5hZGQodCksdGhpc31zZXRGcm9tT2JqZWN0KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdJiZhcmd1bWVudHNbMV07cmV0dXJuIHRoaXMubWFrZUVtcHR5KCksdGhpcy5leHBhbmRCeU9iamVjdChBLGUpfWNsb25lKCl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMpfWNvcHkoQSl7cmV0dXJuIHRoaXMubWluLmNvcHkoQS5taW4pLHRoaXMubWF4LmNvcHkoQS5tYXgpLHRoaXN9bWFrZUVtcHR5KCl7cmV0dXJuIHRoaXMubWluLng9dGhpcy5taW4ueT10aGlzLm1pbi56PTEvMCx0aGlzLm1heC54PXRoaXMubWF4Lnk9dGhpcy5tYXguej0tMS8wLHRoaXN9aXNFbXB0eSgpe3JldHVybiB0aGlzLm1heC54PHRoaXMubWluLnh8fHRoaXMubWF4Lnk8dGhpcy5taW4ueXx8dGhpcy5tYXguejx0aGlzLm1pbi56fWdldENlbnRlcihBKXtyZXR1cm4gdGhpcy5pc0VtcHR5KCk/QS5zZXQoMCwwLDApOkEuYWRkVmVjdG9ycyh0aGlzLm1pbix0aGlzLm1heCkubXVsdGlwbHlTY2FsYXIoLjUpfWdldFNpemUoQSl7cmV0dXJuIHRoaXMuaXNFbXB0eSgpP0Euc2V0KDAsMCwwKTpBLnN1YlZlY3RvcnModGhpcy5tYXgsdGhpcy5taW4pfWV4cGFuZEJ5UG9pbnQoQSl7cmV0dXJuIHRoaXMubWluLm1pbihBKSx0aGlzLm1heC5tYXgoQSksdGhpc31leHBhbmRCeVZlY3RvcihBKXtyZXR1cm4gdGhpcy5taW4uc3ViKEEpLHRoaXMubWF4LmFkZChBKSx0aGlzfWV4cGFuZEJ5U2NhbGFyKEEpe3JldHVybiB0aGlzLm1pbi5hZGRTY2FsYXIoLUEpLHRoaXMubWF4LmFkZFNjYWxhcihBKSx0aGlzfWV4cGFuZEJ5T2JqZWN0KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdJiZhcmd1bWVudHNbMV07aWYoQS51cGRhdGVXb3JsZE1hdHJpeCghMSwhMSksdm9pZCAwIT09QS5ib3VuZGluZ0JveCludWxsPT09QS5ib3VuZGluZ0JveCYmQS5jb21wdXRlQm91bmRpbmdCb3goKSxmbi5jb3B5KEEuYm91bmRpbmdCb3gpLGZuLmFwcGx5TWF0cml4NChBLm1hdHJpeFdvcmxkKSx0aGlzLnVuaW9uKGZuKTtlbHNle2NvbnN0IHQ9QS5nZW9tZXRyeTtpZih2b2lkIDAhPT10KWlmKGUmJnZvaWQgMCE9PXQuYXR0cmlidXRlcyYmdm9pZCAwIT09dC5hdHRyaWJ1dGVzLnBvc2l0aW9uKXtjb25zdCBlPXQuYXR0cmlidXRlcy5wb3NpdGlvbjtmb3IobGV0IHQ9MCxuPWUuY291bnQ7dDxuO3QrKylZbi5mcm9tQnVmZmVyQXR0cmlidXRlKGUsdCkuYXBwbHlNYXRyaXg0KEEubWF0cml4V29ybGQpLHRoaXMuZXhwYW5kQnlQb2ludChZbil9ZWxzZSBudWxsPT09dC5ib3VuZGluZ0JveCYmdC5jb21wdXRlQm91bmRpbmdCb3goKSxmbi5jb3B5KHQuYm91bmRpbmdCb3gpLGZuLmFwcGx5TWF0cml4NChBLm1hdHJpeFdvcmxkKSx0aGlzLnVuaW9uKGZuKX1jb25zdCB0PUEuY2hpbGRyZW47Zm9yKGxldCBBPTAsbj10Lmxlbmd0aDtBPG47QSsrKXRoaXMuZXhwYW5kQnlPYmplY3QodFtBXSxlKTtyZXR1cm4gdGhpc31jb250YWluc1BvaW50KEEpe3JldHVybiEoQS54PHRoaXMubWluLnh8fEEueD50aGlzLm1heC54fHxBLnk8dGhpcy5taW4ueXx8QS55PnRoaXMubWF4Lnl8fEEuejx0aGlzLm1pbi56fHxBLno+dGhpcy5tYXgueil9Y29udGFpbnNCb3goQSl7cmV0dXJuIHRoaXMubWluLng8PUEubWluLngmJkEubWF4Lng8PXRoaXMubWF4LngmJnRoaXMubWluLnk8PUEubWluLnkmJkEubWF4Lnk8PXRoaXMubWF4LnkmJnRoaXMubWluLno8PUEubWluLnomJkEubWF4Lno8PXRoaXMubWF4Lnp9Z2V0UGFyYW1ldGVyKEEsZSl7cmV0dXJuIGUuc2V0KChBLngtdGhpcy5taW4ueCkvKHRoaXMubWF4LngtdGhpcy5taW4ueCksKEEueS10aGlzLm1pbi55KS8odGhpcy5tYXgueS10aGlzLm1pbi55KSwoQS56LXRoaXMubWluLnopLyh0aGlzLm1heC56LXRoaXMubWluLnopKX1pbnRlcnNlY3RzQm94KEEpe3JldHVybiEoQS5tYXgueDx0aGlzLm1pbi54fHxBLm1pbi54PnRoaXMubWF4Lnh8fEEubWF4Lnk8dGhpcy5taW4ueXx8QS5taW4ueT50aGlzLm1heC55fHxBLm1heC56PHRoaXMubWluLnp8fEEubWluLno+dGhpcy5tYXgueil9aW50ZXJzZWN0c1NwaGVyZShBKXtyZXR1cm4gdGhpcy5jbGFtcFBvaW50KEEuY2VudGVyLFluKSxZbi5kaXN0YW5jZVRvU3F1YXJlZChBLmNlbnRlcik8PUEucmFkaXVzKkEucmFkaXVzfWludGVyc2VjdHNQbGFuZShBKXtsZXQgZSx0O3JldHVybiBBLm5vcm1hbC54PjA/KGU9QS5ub3JtYWwueCp0aGlzLm1pbi54LHQ9QS5ub3JtYWwueCp0aGlzLm1heC54KTooZT1BLm5vcm1hbC54KnRoaXMubWF4LngsdD1BLm5vcm1hbC54KnRoaXMubWluLngpLEEubm9ybWFsLnk+MD8oZSs9QS5ub3JtYWwueSp0aGlzLm1pbi55LHQrPUEubm9ybWFsLnkqdGhpcy5tYXgueSk6KGUrPUEubm9ybWFsLnkqdGhpcy5tYXgueSx0Kz1BLm5vcm1hbC55KnRoaXMubWluLnkpLEEubm9ybWFsLno+MD8oZSs9QS5ub3JtYWwueip0aGlzLm1pbi56LHQrPUEubm9ybWFsLnoqdGhpcy5tYXgueik6KGUrPUEubm9ybWFsLnoqdGhpcy5tYXgueix0Kz1BLm5vcm1hbC56KnRoaXMubWluLnopLGU8PS1BLmNvbnN0YW50JiZ0Pj0tQS5jb25zdGFudH1pbnRlcnNlY3RzVHJpYW5nbGUoQSl7aWYodGhpcy5pc0VtcHR5KCkpcmV0dXJuITE7dGhpcy5nZXRDZW50ZXIoR24pLFNuLnN1YlZlY3RvcnModGhpcy5tYXgsR24pLE5uLnN1YlZlY3RvcnMoQS5hLEduKSxVbi5zdWJWZWN0b3JzKEEuYixHbikseW4uc3ViVmVjdG9ycyhBLmMsR24pLFRuLnN1YlZlY3RvcnMoVW4sTm4pLHhuLnN1YlZlY3RvcnMoeW4sVW4pLFJuLnN1YlZlY3RvcnMoTm4seW4pO2xldCBlPVswLC1Ubi56LFRuLnksMCwteG4ueix4bi55LDAsLVJuLnosUm4ueSxUbi56LDAsLVRuLngseG4ueiwwLC14bi54LFJuLnosMCwtUm4ueCwtVG4ueSxUbi54LDAsLXhuLnkseG4ueCwwLC1Sbi55LFJuLngsMF07cmV0dXJuISF2bihlLE5uLFVuLHluLFNuKSYmKGU9WzEsMCwwLDAsMSwwLDAsMCwxXSwhIXZuKGUsTm4sVW4seW4sU24pJiYoYm4uY3Jvc3NWZWN0b3JzKFRuLHhuKSxlPVtibi54LGJuLnksYm4uel0sdm4oZSxObixVbix5bixTbikpKX1jbGFtcFBvaW50KEEsZSl7cmV0dXJuIGUuY29weShBKS5jbGFtcCh0aGlzLm1pbix0aGlzLm1heCl9ZGlzdGFuY2VUb1BvaW50KEEpe3JldHVybiB0aGlzLmNsYW1wUG9pbnQoQSxZbikuZGlzdGFuY2VUbyhBKX1nZXRCb3VuZGluZ1NwaGVyZShBKXtyZXR1cm4gdGhpcy5pc0VtcHR5KCk/QS5tYWtlRW1wdHkoKToodGhpcy5nZXRDZW50ZXIoQS5jZW50ZXIpLEEucmFkaXVzPS41KnRoaXMuZ2V0U2l6ZShZbikubGVuZ3RoKCkpLEF9aW50ZXJzZWN0KEEpe3JldHVybiB0aGlzLm1pbi5tYXgoQS5taW4pLHRoaXMubWF4Lm1pbihBLm1heCksdGhpcy5pc0VtcHR5KCkmJnRoaXMubWFrZUVtcHR5KCksdGhpc311bmlvbihBKXtyZXR1cm4gdGhpcy5taW4ubWluKEEubWluKSx0aGlzLm1heC5tYXgoQS5tYXgpLHRoaXN9YXBwbHlNYXRyaXg0KEEpe3JldHVybiB0aGlzLmlzRW1wdHkoKXx8KERuWzBdLnNldCh0aGlzLm1pbi54LHRoaXMubWluLnksdGhpcy5taW4ueikuYXBwbHlNYXRyaXg0KEEpLERuWzFdLnNldCh0aGlzLm1pbi54LHRoaXMubWluLnksdGhpcy5tYXgueikuYXBwbHlNYXRyaXg0KEEpLERuWzJdLnNldCh0aGlzLm1pbi54LHRoaXMubWF4LnksdGhpcy5taW4ueikuYXBwbHlNYXRyaXg0KEEpLERuWzNdLnNldCh0aGlzLm1pbi54LHRoaXMubWF4LnksdGhpcy5tYXgueikuYXBwbHlNYXRyaXg0KEEpLERuWzRdLnNldCh0aGlzLm1heC54LHRoaXMubWluLnksdGhpcy5taW4ueikuYXBwbHlNYXRyaXg0KEEpLERuWzVdLnNldCh0aGlzLm1heC54LHRoaXMubWluLnksdGhpcy5tYXgueikuYXBwbHlNYXRyaXg0KEEpLERuWzZdLnNldCh0aGlzLm1heC54LHRoaXMubWF4LnksdGhpcy5taW4ueikuYXBwbHlNYXRyaXg0KEEpLERuWzddLnNldCh0aGlzLm1heC54LHRoaXMubWF4LnksdGhpcy5tYXgueikuYXBwbHlNYXRyaXg0KEEpLHRoaXMuc2V0RnJvbVBvaW50cyhEbikpLHRoaXN9dHJhbnNsYXRlKEEpe3JldHVybiB0aGlzLm1pbi5hZGQoQSksdGhpcy5tYXguYWRkKEEpLHRoaXN9ZXF1YWxzKEEpe3JldHVybiBBLm1pbi5lcXVhbHModGhpcy5taW4pJiZBLm1heC5lcXVhbHModGhpcy5tYXgpfX1jb25zdCBEbj1bbmV3IGRuLG5ldyBkbixuZXcgZG4sbmV3IGRuLG5ldyBkbixuZXcgZG4sbmV3IGRuLG5ldyBkbl0sWW49bmV3IGRuLGZuPW5ldyBGbixObj1uZXcgZG4sVW49bmV3IGRuLHluPW5ldyBkbixUbj1uZXcgZG4seG49bmV3IGRuLFJuPW5ldyBkbixHbj1uZXcgZG4sU249bmV3IGRuLGJuPW5ldyBkbixIbj1uZXcgZG47ZnVuY3Rpb24gdm4oQSxlLHQsbixpKXtmb3IobGV0IHI9MCxvPUEubGVuZ3RoLTM7cjw9bztyKz0zKXtIbi5mcm9tQXJyYXkoQSxyKTtjb25zdCBvPWkueCpNYXRoLmFicyhIbi54KStpLnkqTWF0aC5hYnMoSG4ueSkraS56Kk1hdGguYWJzKEhuLnopLHM9ZS5kb3QoSG4pLGE9dC5kb3QoSG4pLEI9bi5kb3QoSG4pO2lmKE1hdGgubWF4KC1NYXRoLm1heChzLGEsQiksTWF0aC5taW4ocyxhLEIpKT5vKXJldHVybiExfXJldHVybiEwfWNvbnN0IGtuPW5ldyBGbixqbj1uZXcgZG4sSm49bmV3IGRuO2NsYXNzIHpue2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBkbixlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTotMTt0aGlzLmNlbnRlcj1BLHRoaXMucmFkaXVzPWV9c2V0KEEsZSl7cmV0dXJuIHRoaXMuY2VudGVyLmNvcHkoQSksdGhpcy5yYWRpdXM9ZSx0aGlzfXNldEZyb21Qb2ludHMoQSxlKXtjb25zdCB0PXRoaXMuY2VudGVyO3ZvaWQgMCE9PWU/dC5jb3B5KGUpOmtuLnNldEZyb21Qb2ludHMoQSkuZ2V0Q2VudGVyKHQpO2xldCBuPTA7Zm9yKGxldCBlPTAsaT1BLmxlbmd0aDtlPGk7ZSsrKW49TWF0aC5tYXgobix0LmRpc3RhbmNlVG9TcXVhcmVkKEFbZV0pKTtyZXR1cm4gdGhpcy5yYWRpdXM9TWF0aC5zcXJ0KG4pLHRoaXN9Y29weShBKXtyZXR1cm4gdGhpcy5jZW50ZXIuY29weShBLmNlbnRlciksdGhpcy5yYWRpdXM9QS5yYWRpdXMsdGhpc31pc0VtcHR5KCl7cmV0dXJuIHRoaXMucmFkaXVzPDB9bWFrZUVtcHR5KCl7cmV0dXJuIHRoaXMuY2VudGVyLnNldCgwLDAsMCksdGhpcy5yYWRpdXM9LTEsdGhpc31jb250YWluc1BvaW50KEEpe3JldHVybiBBLmRpc3RhbmNlVG9TcXVhcmVkKHRoaXMuY2VudGVyKTw9dGhpcy5yYWRpdXMqdGhpcy5yYWRpdXN9ZGlzdGFuY2VUb1BvaW50KEEpe3JldHVybiBBLmRpc3RhbmNlVG8odGhpcy5jZW50ZXIpLXRoaXMucmFkaXVzfWludGVyc2VjdHNTcGhlcmUoQSl7Y29uc3QgZT10aGlzLnJhZGl1cytBLnJhZGl1cztyZXR1cm4gQS5jZW50ZXIuZGlzdGFuY2VUb1NxdWFyZWQodGhpcy5jZW50ZXIpPD1lKmV9aW50ZXJzZWN0c0JveChBKXtyZXR1cm4gQS5pbnRlcnNlY3RzU3BoZXJlKHRoaXMpfWludGVyc2VjdHNQbGFuZShBKXtyZXR1cm4gTWF0aC5hYnMoQS5kaXN0YW5jZVRvUG9pbnQodGhpcy5jZW50ZXIpKTw9dGhpcy5yYWRpdXN9Y2xhbXBQb2ludChBLGUpe2NvbnN0IHQ9dGhpcy5jZW50ZXIuZGlzdGFuY2VUb1NxdWFyZWQoQSk7cmV0dXJuIGUuY29weShBKSx0PnRoaXMucmFkaXVzKnRoaXMucmFkaXVzJiYoZS5zdWIodGhpcy5jZW50ZXIpLm5vcm1hbGl6ZSgpLGUubXVsdGlwbHlTY2FsYXIodGhpcy5yYWRpdXMpLmFkZCh0aGlzLmNlbnRlcikpLGV9Z2V0Qm91bmRpbmdCb3goQSl7cmV0dXJuIHRoaXMuaXNFbXB0eSgpPyhBLm1ha2VFbXB0eSgpLEEpOihBLnNldCh0aGlzLmNlbnRlcix0aGlzLmNlbnRlciksQS5leHBhbmRCeVNjYWxhcih0aGlzLnJhZGl1cyksQSl9YXBwbHlNYXRyaXg0KEEpe3JldHVybiB0aGlzLmNlbnRlci5hcHBseU1hdHJpeDQoQSksdGhpcy5yYWRpdXM9dGhpcy5yYWRpdXMqQS5nZXRNYXhTY2FsZU9uQXhpcygpLHRoaXN9dHJhbnNsYXRlKEEpe3JldHVybiB0aGlzLmNlbnRlci5hZGQoQSksdGhpc31leHBhbmRCeVBvaW50KEEpe2lmKHRoaXMuaXNFbXB0eSgpKXJldHVybiB0aGlzLmNlbnRlci5jb3B5KEEpLHRoaXMucmFkaXVzPTAsdGhpcztqbi5zdWJWZWN0b3JzKEEsdGhpcy5jZW50ZXIpO2NvbnN0IGU9am4ubGVuZ3RoU3EoKTtpZihlPnRoaXMucmFkaXVzKnRoaXMucmFkaXVzKXtjb25zdCBBPU1hdGguc3FydChlKSx0PS41KihBLXRoaXMucmFkaXVzKTt0aGlzLmNlbnRlci5hZGRTY2FsZWRWZWN0b3Ioam4sdC9BKSx0aGlzLnJhZGl1cys9dH1yZXR1cm4gdGhpc311bmlvbihBKXtyZXR1cm4gQS5pc0VtcHR5KCk/dGhpczp0aGlzLmlzRW1wdHkoKT8odGhpcy5jb3B5KEEpLHRoaXMpOighMD09PXRoaXMuY2VudGVyLmVxdWFscyhBLmNlbnRlcik/dGhpcy5yYWRpdXM9TWF0aC5tYXgodGhpcy5yYWRpdXMsQS5yYWRpdXMpOihKbi5zdWJWZWN0b3JzKEEuY2VudGVyLHRoaXMuY2VudGVyKS5zZXRMZW5ndGgoQS5yYWRpdXMpLHRoaXMuZXhwYW5kQnlQb2ludChqbi5jb3B5KEEuY2VudGVyKS5hZGQoSm4pKSx0aGlzLmV4cGFuZEJ5UG9pbnQoam4uY29weShBLmNlbnRlcikuc3ViKEpuKSkpLHRoaXMpfWVxdWFscyhBKXtyZXR1cm4gQS5jZW50ZXIuZXF1YWxzKHRoaXMuY2VudGVyKSYmQS5yYWRpdXM9PT10aGlzLnJhZGl1c31jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX19Y29uc3QgTG49bmV3IGRuLFBuPW5ldyBkbixPbj1uZXcgZG4sVm49bmV3IGRuLFduPW5ldyBkbixLbj1uZXcgZG4sWG49bmV3IGRuO2NsYXNzIFpue2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBkbixlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG4oMCwwLC0xKTt0aGlzLm9yaWdpbj1BLHRoaXMuZGlyZWN0aW9uPWV9c2V0KEEsZSl7cmV0dXJuIHRoaXMub3JpZ2luLmNvcHkoQSksdGhpcy5kaXJlY3Rpb24uY29weShlKSx0aGlzfWNvcHkoQSl7cmV0dXJuIHRoaXMub3JpZ2luLmNvcHkoQS5vcmlnaW4pLHRoaXMuZGlyZWN0aW9uLmNvcHkoQS5kaXJlY3Rpb24pLHRoaXN9YXQoQSxlKXtyZXR1cm4gZS5jb3B5KHRoaXMub3JpZ2luKS5hZGRTY2FsZWRWZWN0b3IodGhpcy5kaXJlY3Rpb24sQSl9bG9va0F0KEEpe3JldHVybiB0aGlzLmRpcmVjdGlvbi5jb3B5KEEpLnN1Yih0aGlzLm9yaWdpbikubm9ybWFsaXplKCksdGhpc31yZWNhc3QoQSl7cmV0dXJuIHRoaXMub3JpZ2luLmNvcHkodGhpcy5hdChBLExuKSksdGhpc31jbG9zZXN0UG9pbnRUb1BvaW50KEEsZSl7ZS5zdWJWZWN0b3JzKEEsdGhpcy5vcmlnaW4pO2NvbnN0IHQ9ZS5kb3QodGhpcy5kaXJlY3Rpb24pO3JldHVybiB0PDA/ZS5jb3B5KHRoaXMub3JpZ2luKTplLmNvcHkodGhpcy5vcmlnaW4pLmFkZFNjYWxlZFZlY3Rvcih0aGlzLmRpcmVjdGlvbix0KX1kaXN0YW5jZVRvUG9pbnQoQSl7cmV0dXJuIE1hdGguc3FydCh0aGlzLmRpc3RhbmNlU3FUb1BvaW50KEEpKX1kaXN0YW5jZVNxVG9Qb2ludChBKXtjb25zdCBlPUxuLnN1YlZlY3RvcnMoQSx0aGlzLm9yaWdpbikuZG90KHRoaXMuZGlyZWN0aW9uKTtyZXR1cm4gZTwwP3RoaXMub3JpZ2luLmRpc3RhbmNlVG9TcXVhcmVkKEEpOihMbi5jb3B5KHRoaXMub3JpZ2luKS5hZGRTY2FsZWRWZWN0b3IodGhpcy5kaXJlY3Rpb24sZSksTG4uZGlzdGFuY2VUb1NxdWFyZWQoQSkpfWRpc3RhbmNlU3FUb1NlZ21lbnQoQSxlLHQsbil7UG4uY29weShBKS5hZGQoZSkubXVsdGlwbHlTY2FsYXIoLjUpLE9uLmNvcHkoZSkuc3ViKEEpLm5vcm1hbGl6ZSgpLFZuLmNvcHkodGhpcy5vcmlnaW4pLnN1YihQbik7Y29uc3QgaT0uNSpBLmRpc3RhbmNlVG8oZSkscj0tdGhpcy5kaXJlY3Rpb24uZG90KE9uKSxvPVZuLmRvdCh0aGlzLmRpcmVjdGlvbikscz0tVm4uZG90KE9uKSxhPVZuLmxlbmd0aFNxKCksQj1NYXRoLmFicygxLXIqcik7bGV0IGMsZyxFLFE7aWYoQj4wKWlmKGM9cipzLW8sZz1yKm8tcyxRPWkqQixjPj0wKWlmKGc+PS1RKWlmKGc8PVEpe2NvbnN0IEE9MS9CO2MqPUEsZyo9QSxFPWMqKGMrcipnKzIqbykrZyoocipjK2crMipzKSthfWVsc2UgZz1pLGM9TWF0aC5tYXgoMCwtKHIqZytvKSksRT0tYypjK2cqKGcrMipzKSthO2Vsc2UgZz0taSxjPU1hdGgubWF4KDAsLShyKmcrbykpLEU9LWMqYytnKihnKzIqcykrYTtlbHNlIGc8PS1RPyhjPU1hdGgubWF4KDAsLSgtcippK28pKSxnPWM+MD8taTpNYXRoLm1pbihNYXRoLm1heCgtaSwtcyksaSksRT0tYypjK2cqKGcrMipzKSthKTpnPD1RPyhjPTAsZz1NYXRoLm1pbihNYXRoLm1heCgtaSwtcyksaSksRT1nKihnKzIqcykrYSk6KGM9TWF0aC5tYXgoMCwtKHIqaStvKSksZz1jPjA/aTpNYXRoLm1pbihNYXRoLm1heCgtaSwtcyksaSksRT0tYypjK2cqKGcrMipzKSthKTtlbHNlIGc9cj4wPy1pOmksYz1NYXRoLm1heCgwLC0ocipnK28pKSxFPS1jKmMrZyooZysyKnMpK2E7cmV0dXJuIHQmJnQuY29weSh0aGlzLm9yaWdpbikuYWRkU2NhbGVkVmVjdG9yKHRoaXMuZGlyZWN0aW9uLGMpLG4mJm4uY29weShQbikuYWRkU2NhbGVkVmVjdG9yKE9uLGcpLEV9aW50ZXJzZWN0U3BoZXJlKEEsZSl7TG4uc3ViVmVjdG9ycyhBLmNlbnRlcix0aGlzLm9yaWdpbik7Y29uc3QgdD1Mbi5kb3QodGhpcy5kaXJlY3Rpb24pLG49TG4uZG90KExuKS10KnQsaT1BLnJhZGl1cypBLnJhZGl1cztpZihuPmkpcmV0dXJuIG51bGw7Y29uc3Qgcj1NYXRoLnNxcnQoaS1uKSxvPXQtcixzPXQrcjtyZXR1cm4gczwwP251bGw6bzwwP3RoaXMuYXQocyxlKTp0aGlzLmF0KG8sZSl9aW50ZXJzZWN0c1NwaGVyZShBKXtyZXR1cm4gdGhpcy5kaXN0YW5jZVNxVG9Qb2ludChBLmNlbnRlcik8PUEucmFkaXVzKkEucmFkaXVzfWRpc3RhbmNlVG9QbGFuZShBKXtjb25zdCBlPUEubm9ybWFsLmRvdCh0aGlzLmRpcmVjdGlvbik7aWYoMD09PWUpcmV0dXJuIDA9PT1BLmRpc3RhbmNlVG9Qb2ludCh0aGlzLm9yaWdpbik/MDpudWxsO2NvbnN0IHQ9LSh0aGlzLm9yaWdpbi5kb3QoQS5ub3JtYWwpK0EuY29uc3RhbnQpL2U7cmV0dXJuIHQ+PTA/dDpudWxsfWludGVyc2VjdFBsYW5lKEEsZSl7Y29uc3QgdD10aGlzLmRpc3RhbmNlVG9QbGFuZShBKTtyZXR1cm4gbnVsbD09PXQ/bnVsbDp0aGlzLmF0KHQsZSl9aW50ZXJzZWN0c1BsYW5lKEEpe2NvbnN0IGU9QS5kaXN0YW5jZVRvUG9pbnQodGhpcy5vcmlnaW4pO2lmKDA9PT1lKXJldHVybiEwO3JldHVybiBBLm5vcm1hbC5kb3QodGhpcy5kaXJlY3Rpb24pKmU8MH1pbnRlcnNlY3RCb3goQSxlKXtsZXQgdCxuLGkscixvLHM7Y29uc3QgYT0xL3RoaXMuZGlyZWN0aW9uLngsQj0xL3RoaXMuZGlyZWN0aW9uLnksYz0xL3RoaXMuZGlyZWN0aW9uLnosZz10aGlzLm9yaWdpbjtyZXR1cm4gYT49MD8odD0oQS5taW4ueC1nLngpKmEsbj0oQS5tYXgueC1nLngpKmEpOih0PShBLm1heC54LWcueCkqYSxuPShBLm1pbi54LWcueCkqYSksQj49MD8oaT0oQS5taW4ueS1nLnkpKkIscj0oQS5tYXgueS1nLnkpKkIpOihpPShBLm1heC55LWcueSkqQixyPShBLm1pbi55LWcueSkqQiksdD5yfHxpPm4/bnVsbDooKGk+dHx8aXNOYU4odCkpJiYodD1pKSwocjxufHxpc05hTihuKSkmJihuPXIpLGM+PTA/KG89KEEubWluLnotZy56KSpjLHM9KEEubWF4LnotZy56KSpjKToobz0oQS5tYXguei1nLnopKmMscz0oQS5taW4uei1nLnopKmMpLHQ+c3x8bz5uP251bGw6KChvPnR8fHQhPXQpJiYodD1vKSwoczxufHxuIT1uKSYmKG49cyksbjwwP251bGw6dGhpcy5hdCh0Pj0wP3Q6bixlKSkpfWludGVyc2VjdHNCb3goQSl7cmV0dXJuIG51bGwhPT10aGlzLmludGVyc2VjdEJveChBLExuKX1pbnRlcnNlY3RUcmlhbmdsZShBLGUsdCxuLGkpe1duLnN1YlZlY3RvcnMoZSxBKSxLbi5zdWJWZWN0b3JzKHQsQSksWG4uY3Jvc3NWZWN0b3JzKFduLEtuKTtsZXQgcixvPXRoaXMuZGlyZWN0aW9uLmRvdChYbik7aWYobz4wKXtpZihuKXJldHVybiBudWxsO3I9MX1lbHNle2lmKCEobzwwKSlyZXR1cm4gbnVsbDtyPS0xLG89LW99Vm4uc3ViVmVjdG9ycyh0aGlzLm9yaWdpbixBKTtjb25zdCBzPXIqdGhpcy5kaXJlY3Rpb24uZG90KEtuLmNyb3NzVmVjdG9ycyhWbixLbikpO2lmKHM8MClyZXR1cm4gbnVsbDtjb25zdCBhPXIqdGhpcy5kaXJlY3Rpb24uZG90KFduLmNyb3NzKFZuKSk7aWYoYTwwKXJldHVybiBudWxsO2lmKHMrYT5vKXJldHVybiBudWxsO2NvbnN0IEI9LXIqVm4uZG90KFhuKTtyZXR1cm4gQjwwP251bGw6dGhpcy5hdChCL28saSl9YXBwbHlNYXRyaXg0KEEpe3JldHVybiB0aGlzLm9yaWdpbi5hcHBseU1hdHJpeDQoQSksdGhpcy5kaXJlY3Rpb24udHJhbnNmb3JtRGlyZWN0aW9uKEEpLHRoaXN9ZXF1YWxzKEEpe3JldHVybiBBLm9yaWdpbi5lcXVhbHModGhpcy5vcmlnaW4pJiZBLmRpcmVjdGlvbi5lcXVhbHModGhpcy5kaXJlY3Rpb24pfWNsb25lKCl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMpfX1jbGFzcyBfbntjb25zdHJ1Y3RvcihBLGUsdCxuLGkscixvLHMsYSxCLGMsZyxFLFEsdSxsKXtfbi5wcm90b3R5cGUuaXNNYXRyaXg0PSEwLHRoaXMuZWxlbWVudHM9WzEsMCwwLDAsMCwxLDAsMCwwLDAsMSwwLDAsMCwwLDFdLHZvaWQgMCE9PUEmJnRoaXMuc2V0KEEsZSx0LG4saSxyLG8scyxhLEIsYyxnLEUsUSx1LGwpfXNldChBLGUsdCxuLGkscixvLHMsYSxCLGMsZyxFLFEsdSxsKXtjb25zdCBoPXRoaXMuZWxlbWVudHM7cmV0dXJuIGhbMF09QSxoWzRdPWUsaFs4XT10LGhbMTJdPW4saFsxXT1pLGhbNV09cixoWzldPW8saFsxM109cyxoWzJdPWEsaFs2XT1CLGhbMTBdPWMsaFsxNF09ZyxoWzNdPUUsaFs3XT1RLGhbMTFdPXUsaFsxNV09bCx0aGlzfWlkZW50aXR5KCl7cmV0dXJuIHRoaXMuc2V0KDEsMCwwLDAsMCwxLDAsMCwwLDAsMSwwLDAsMCwwLDEpLHRoaXN9Y2xvbmUoKXtyZXR1cm4obmV3IF9uKS5mcm9tQXJyYXkodGhpcy5lbGVtZW50cyl9Y29weShBKXtjb25zdCBlPXRoaXMuZWxlbWVudHMsdD1BLmVsZW1lbnRzO3JldHVybiBlWzBdPXRbMF0sZVsxXT10WzFdLGVbMl09dFsyXSxlWzNdPXRbM10sZVs0XT10WzRdLGVbNV09dFs1XSxlWzZdPXRbNl0sZVs3XT10WzddLGVbOF09dFs4XSxlWzldPXRbOV0sZVsxMF09dFsxMF0sZVsxMV09dFsxMV0sZVsxMl09dFsxMl0sZVsxM109dFsxM10sZVsxNF09dFsxNF0sZVsxNV09dFsxNV0sdGhpc31jb3B5UG9zaXRpb24oQSl7Y29uc3QgZT10aGlzLmVsZW1lbnRzLHQ9QS5lbGVtZW50cztyZXR1cm4gZVsxMl09dFsxMl0sZVsxM109dFsxM10sZVsxNF09dFsxNF0sdGhpc31zZXRGcm9tTWF0cml4MyhBKXtjb25zdCBlPUEuZWxlbWVudHM7cmV0dXJuIHRoaXMuc2V0KGVbMF0sZVszXSxlWzZdLDAsZVsxXSxlWzRdLGVbN10sMCxlWzJdLGVbNV0sZVs4XSwwLDAsMCwwLDEpLHRoaXN9ZXh0cmFjdEJhc2lzKEEsZSx0KXtyZXR1cm4gQS5zZXRGcm9tTWF0cml4Q29sdW1uKHRoaXMsMCksZS5zZXRGcm9tTWF0cml4Q29sdW1uKHRoaXMsMSksdC5zZXRGcm9tTWF0cml4Q29sdW1uKHRoaXMsMiksdGhpc31tYWtlQmFzaXMoQSxlLHQpe3JldHVybiB0aGlzLnNldChBLngsZS54LHQueCwwLEEueSxlLnksdC55LDAsQS56LGUueix0LnosMCwwLDAsMCwxKSx0aGlzfWV4dHJhY3RSb3RhdGlvbihBKXtjb25zdCBlPXRoaXMuZWxlbWVudHMsdD1BLmVsZW1lbnRzLG49MS9xbi5zZXRGcm9tTWF0cml4Q29sdW1uKEEsMCkubGVuZ3RoKCksaT0xL3FuLnNldEZyb21NYXRyaXhDb2x1bW4oQSwxKS5sZW5ndGgoKSxyPTEvcW4uc2V0RnJvbU1hdHJpeENvbHVtbihBLDIpLmxlbmd0aCgpO3JldHVybiBlWzBdPXRbMF0qbixlWzFdPXRbMV0qbixlWzJdPXRbMl0qbixlWzNdPTAsZVs0XT10WzRdKmksZVs1XT10WzVdKmksZVs2XT10WzZdKmksZVs3XT0wLGVbOF09dFs4XSpyLGVbOV09dFs5XSpyLGVbMTBdPXRbMTBdKnIsZVsxMV09MCxlWzEyXT0wLGVbMTNdPTAsZVsxNF09MCxlWzE1XT0xLHRoaXN9bWFrZVJvdGF0aW9uRnJvbUV1bGVyKEEpe2NvbnN0IGU9dGhpcy5lbGVtZW50cyx0PUEueCxuPUEueSxpPUEueixyPU1hdGguY29zKHQpLG89TWF0aC5zaW4odCkscz1NYXRoLmNvcyhuKSxhPU1hdGguc2luKG4pLEI9TWF0aC5jb3MoaSksYz1NYXRoLnNpbihpKTtpZigiWFlaIj09PUEub3JkZXIpe2NvbnN0IEE9cipCLHQ9cipjLG49bypCLGk9bypjO2VbMF09cypCLGVbNF09LXMqYyxlWzhdPWEsZVsxXT10K24qYSxlWzVdPUEtaSphLGVbOV09LW8qcyxlWzJdPWktQSphLGVbNl09bit0KmEsZVsxMF09cipzfWVsc2UgaWYoIllYWiI9PT1BLm9yZGVyKXtjb25zdCBBPXMqQix0PXMqYyxuPWEqQixpPWEqYztlWzBdPUEraSpvLGVbNF09bipvLXQsZVs4XT1yKmEsZVsxXT1yKmMsZVs1XT1yKkIsZVs5XT0tbyxlWzJdPXQqby1uLGVbNl09aStBKm8sZVsxMF09cipzfWVsc2UgaWYoIlpYWSI9PT1BLm9yZGVyKXtjb25zdCBBPXMqQix0PXMqYyxuPWEqQixpPWEqYztlWzBdPUEtaSpvLGVbNF09LXIqYyxlWzhdPW4rdCpvLGVbMV09dCtuKm8sZVs1XT1yKkIsZVs5XT1pLUEqbyxlWzJdPS1yKmEsZVs2XT1vLGVbMTBdPXIqc31lbHNlIGlmKCJaWVgiPT09QS5vcmRlcil7Y29uc3QgQT1yKkIsdD1yKmMsbj1vKkIsaT1vKmM7ZVswXT1zKkIsZVs0XT1uKmEtdCxlWzhdPUEqYStpLGVbMV09cypjLGVbNV09aSphK0EsZVs5XT10KmEtbixlWzJdPS1hLGVbNl09bypzLGVbMTBdPXIqc31lbHNlIGlmKCJZWlgiPT09QS5vcmRlcil7Y29uc3QgQT1yKnMsdD1yKmEsbj1vKnMsaT1vKmE7ZVswXT1zKkIsZVs0XT1pLUEqYyxlWzhdPW4qYyt0LGVbMV09YyxlWzVdPXIqQixlWzldPS1vKkIsZVsyXT0tYSpCLGVbNl09dCpjK24sZVsxMF09QS1pKmN9ZWxzZSBpZigiWFpZIj09PUEub3JkZXIpe2NvbnN0IEE9cipzLHQ9ciphLG49bypzLGk9byphO2VbMF09cypCLGVbNF09LWMsZVs4XT1hKkIsZVsxXT1BKmMraSxlWzVdPXIqQixlWzldPXQqYy1uLGVbMl09bipjLXQsZVs2XT1vKkIsZVsxMF09aSpjK0F9cmV0dXJuIGVbM109MCxlWzddPTAsZVsxMV09MCxlWzEyXT0wLGVbMTNdPTAsZVsxNF09MCxlWzE1XT0xLHRoaXN9bWFrZVJvdGF0aW9uRnJvbVF1YXRlcm5pb24oQSl7cmV0dXJuIHRoaXMuY29tcG9zZShBaSxBLGVpKX1sb29rQXQoQSxlLHQpe2NvbnN0IG49dGhpcy5lbGVtZW50cztyZXR1cm4gaWkuc3ViVmVjdG9ycyhBLGUpLDA9PT1paS5sZW5ndGhTcSgpJiYoaWkuej0xKSxpaS5ub3JtYWxpemUoKSx0aS5jcm9zc1ZlY3RvcnModCxpaSksMD09PXRpLmxlbmd0aFNxKCkmJigxPT09TWF0aC5hYnModC56KT9paS54Kz0xZS00OmlpLnorPTFlLTQsaWkubm9ybWFsaXplKCksdGkuY3Jvc3NWZWN0b3JzKHQsaWkpKSx0aS5ub3JtYWxpemUoKSxuaS5jcm9zc1ZlY3RvcnMoaWksdGkpLG5bMF09dGkueCxuWzRdPW5pLngsbls4XT1paS54LG5bMV09dGkueSxuWzVdPW5pLnksbls5XT1paS55LG5bMl09dGkueixuWzZdPW5pLnosblsxMF09aWkueix0aGlzfW11bHRpcGx5KEEpe3JldHVybiB0aGlzLm11bHRpcGx5TWF0cmljZXModGhpcyxBKX1wcmVtdWx0aXBseShBKXtyZXR1cm4gdGhpcy5tdWx0aXBseU1hdHJpY2VzKEEsdGhpcyl9bXVsdGlwbHlNYXRyaWNlcyhBLGUpe2NvbnN0IHQ9QS5lbGVtZW50cyxuPWUuZWxlbWVudHMsaT10aGlzLmVsZW1lbnRzLHI9dFswXSxvPXRbNF0scz10WzhdLGE9dFsxMl0sQj10WzFdLGM9dFs1XSxnPXRbOV0sRT10WzEzXSxRPXRbMl0sdT10WzZdLGw9dFsxMF0saD10WzE0XSx3PXRbM10sQz10WzddLEk9dFsxMV0sTT10WzE1XSxkPW5bMF0scD1uWzRdLG09bls4XSxGPW5bMTJdLEQ9blsxXSxZPW5bNV0sZj1uWzldLE49blsxM10sVT1uWzJdLHk9bls2XSxUPW5bMTBdLHg9blsxNF0sUj1uWzNdLEc9bls3XSxTPW5bMTFdLGI9blsxNV07cmV0dXJuIGlbMF09cipkK28qRCtzKlUrYSpSLGlbNF09cipwK28qWStzKnkrYSpHLGlbOF09ciptK28qZitzKlQrYSpTLGlbMTJdPXIqRitvKk4rcyp4K2EqYixpWzFdPUIqZCtjKkQrZypVK0UqUixpWzVdPUIqcCtjKlkrZyp5K0UqRyxpWzldPUIqbStjKmYrZypUK0UqUyxpWzEzXT1CKkYrYypOK2cqeCtFKmIsaVsyXT1RKmQrdSpEK2wqVStoKlIsaVs2XT1RKnArdSpZK2wqeStoKkcsaVsxMF09USptK3UqZitsKlQraCpTLGlbMTRdPVEqRit1Kk4rbCp4K2gqYixpWzNdPXcqZCtDKkQrSSpVK00qUixpWzddPXcqcCtDKlkrSSp5K00qRyxpWzExXT13Km0rQypmK0kqVCtNKlMsaVsxNV09dypGK0MqTitJKngrTSpiLHRoaXN9bXVsdGlwbHlTY2FsYXIoQSl7Y29uc3QgZT10aGlzLmVsZW1lbnRzO3JldHVybiBlWzBdKj1BLGVbNF0qPUEsZVs4XSo9QSxlWzEyXSo9QSxlWzFdKj1BLGVbNV0qPUEsZVs5XSo9QSxlWzEzXSo9QSxlWzJdKj1BLGVbNl0qPUEsZVsxMF0qPUEsZVsxNF0qPUEsZVszXSo9QSxlWzddKj1BLGVbMTFdKj1BLGVbMTVdKj1BLHRoaXN9ZGV0ZXJtaW5hbnQoKXtjb25zdCBBPXRoaXMuZWxlbWVudHMsZT1BWzBdLHQ9QVs0XSxuPUFbOF0saT1BWzEyXSxyPUFbMV0sbz1BWzVdLHM9QVs5XSxhPUFbMTNdLEI9QVsyXSxjPUFbNl0sZz1BWzEwXSxFPUFbMTRdO3JldHVybiBBWzNdKigraSpzKmMtbiphKmMtaSpvKmcrdCphKmcrbipvKkUtdCpzKkUpK0FbN10qKCtlKnMqRS1lKmEqZytpKnIqZy1uKnIqRStuKmEqQi1pKnMqQikrQVsxMV0qKCtlKmEqYy1lKm8qRS1pKnIqYyt0KnIqRStpKm8qQi10KmEqQikrQVsxNV0qKC1uKm8qQi1lKnMqYytlKm8qZytuKnIqYy10KnIqZyt0KnMqQil9dHJhbnNwb3NlKCl7Y29uc3QgQT10aGlzLmVsZW1lbnRzO2xldCBlO3JldHVybiBlPUFbMV0sQVsxXT1BWzRdLEFbNF09ZSxlPUFbMl0sQVsyXT1BWzhdLEFbOF09ZSxlPUFbNl0sQVs2XT1BWzldLEFbOV09ZSxlPUFbM10sQVszXT1BWzEyXSxBWzEyXT1lLGU9QVs3XSxBWzddPUFbMTNdLEFbMTNdPWUsZT1BWzExXSxBWzExXT1BWzE0XSxBWzE0XT1lLHRoaXN9c2V0UG9zaXRpb24oQSxlLHQpe2NvbnN0IG49dGhpcy5lbGVtZW50cztyZXR1cm4gQS5pc1ZlY3RvcjM/KG5bMTJdPUEueCxuWzEzXT1BLnksblsxNF09QS56KTooblsxMl09QSxuWzEzXT1lLG5bMTRdPXQpLHRoaXN9aW52ZXJ0KCl7Y29uc3QgQT10aGlzLmVsZW1lbnRzLGU9QVswXSx0PUFbMV0sbj1BWzJdLGk9QVszXSxyPUFbNF0sbz1BWzVdLHM9QVs2XSxhPUFbN10sQj1BWzhdLGM9QVs5XSxnPUFbMTBdLEU9QVsxMV0sUT1BWzEyXSx1PUFbMTNdLGw9QVsxNF0saD1BWzE1XSx3PWMqbCphLXUqZyphK3UqcypFLW8qbCpFLWMqcypoK28qZypoLEM9USpnKmEtQipsKmEtUSpzKkUrcipsKkUrQipzKmgtcipnKmgsST1CKnUqYS1RKmMqYStRKm8qRS1yKnUqRS1CKm8qaCtyKmMqaCxNPVEqYypzLUIqdSpzLVEqbypnK3IqdSpnK0IqbypsLXIqYypsLGQ9ZSp3K3QqQytuKkkraSpNO2lmKDA9PT1kKXJldHVybiB0aGlzLnNldCgwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwKTtjb25zdCBwPTEvZDtyZXR1cm4gQVswXT13KnAsQVsxXT0odSpnKmktYypsKmktdSpuKkUrdCpsKkUrYypuKmgtdCpnKmgpKnAsQVsyXT0obypsKmktdSpzKmkrdSpuKmEtdCpsKmEtbypuKmgrdCpzKmgpKnAsQVszXT0oYypzKmktbypnKmktYypuKmErdCpnKmErbypuKkUtdCpzKkUpKnAsQVs0XT1DKnAsQVs1XT0oQipsKmktUSpnKmkrUSpuKkUtZSpsKkUtQipuKmgrZSpnKmgpKnAsQVs2XT0oUSpzKmktcipsKmktUSpuKmErZSpsKmErcipuKmgtZSpzKmgpKnAsQVs3XT0ocipnKmktQipzKmkrQipuKmEtZSpnKmEtcipuKkUrZSpzKkUpKnAsQVs4XT1JKnAsQVs5XT0oUSpjKmktQip1KmktUSp0KkUrZSp1KkUrQip0KmgtZSpjKmgpKnAsQVsxMF09KHIqdSppLVEqbyppK1EqdCphLWUqdSphLXIqdCpoK2UqbypoKSpwLEFbMTFdPShCKm8qaS1yKmMqaS1CKnQqYStlKmMqYStyKnQqRS1lKm8qRSkqcCxBWzEyXT1NKnAsQVsxM109KEIqdSpuLVEqYypuK1EqdCpnLWUqdSpnLUIqdCpsK2UqYypsKSpwLEFbMTRdPShRKm8qbi1yKnUqbi1RKnQqcytlKnUqcytyKnQqbC1lKm8qbCkqcCxBWzE1XT0ocipjKm4tQipvKm4rQip0KnMtZSpjKnMtcip0KmcrZSpvKmcpKnAsdGhpc31zY2FsZShBKXtjb25zdCBlPXRoaXMuZWxlbWVudHMsdD1BLngsbj1BLnksaT1BLno7cmV0dXJuIGVbMF0qPXQsZVs0XSo9bixlWzhdKj1pLGVbMV0qPXQsZVs1XSo9bixlWzldKj1pLGVbMl0qPXQsZVs2XSo9bixlWzEwXSo9aSxlWzNdKj10LGVbN10qPW4sZVsxMV0qPWksdGhpc31nZXRNYXhTY2FsZU9uQXhpcygpe2NvbnN0IEE9dGhpcy5lbGVtZW50cyxlPUFbMF0qQVswXStBWzFdKkFbMV0rQVsyXSpBWzJdLHQ9QVs0XSpBWzRdK0FbNV0qQVs1XStBWzZdKkFbNl0sbj1BWzhdKkFbOF0rQVs5XSpBWzldK0FbMTBdKkFbMTBdO3JldHVybiBNYXRoLnNxcnQoTWF0aC5tYXgoZSx0LG4pKX1tYWtlVHJhbnNsYXRpb24oQSxlLHQpe3JldHVybiBBLmlzVmVjdG9yMz90aGlzLnNldCgxLDAsMCxBLngsMCwxLDAsQS55LDAsMCwxLEEueiwwLDAsMCwxKTp0aGlzLnNldCgxLDAsMCxBLDAsMSwwLGUsMCwwLDEsdCwwLDAsMCwxKSx0aGlzfW1ha2VSb3RhdGlvblgoQSl7Y29uc3QgZT1NYXRoLmNvcyhBKSx0PU1hdGguc2luKEEpO3JldHVybiB0aGlzLnNldCgxLDAsMCwwLDAsZSwtdCwwLDAsdCxlLDAsMCwwLDAsMSksdGhpc31tYWtlUm90YXRpb25ZKEEpe2NvbnN0IGU9TWF0aC5jb3MoQSksdD1NYXRoLnNpbihBKTtyZXR1cm4gdGhpcy5zZXQoZSwwLHQsMCwwLDEsMCwwLC10LDAsZSwwLDAsMCwwLDEpLHRoaXN9bWFrZVJvdGF0aW9uWihBKXtjb25zdCBlPU1hdGguY29zKEEpLHQ9TWF0aC5zaW4oQSk7cmV0dXJuIHRoaXMuc2V0KGUsLXQsMCwwLHQsZSwwLDAsMCwwLDEsMCwwLDAsMCwxKSx0aGlzfW1ha2VSb3RhdGlvbkF4aXMoQSxlKXtjb25zdCB0PU1hdGguY29zKGUpLG49TWF0aC5zaW4oZSksaT0xLXQscj1BLngsbz1BLnkscz1BLnosYT1pKnIsQj1pKm87cmV0dXJuIHRoaXMuc2V0KGEqcit0LGEqby1uKnMsYSpzK24qbywwLGEqbytuKnMsQipvK3QsQipzLW4qciwwLGEqcy1uKm8sQipzK24qcixpKnMqcyt0LDAsMCwwLDAsMSksdGhpc31tYWtlU2NhbGUoQSxlLHQpe3JldHVybiB0aGlzLnNldChBLDAsMCwwLDAsZSwwLDAsMCwwLHQsMCwwLDAsMCwxKSx0aGlzfW1ha2VTaGVhcihBLGUsdCxuLGkscil7cmV0dXJuIHRoaXMuc2V0KDEsdCxpLDAsQSwxLHIsMCxlLG4sMSwwLDAsMCwwLDEpLHRoaXN9Y29tcG9zZShBLGUsdCl7Y29uc3Qgbj10aGlzLmVsZW1lbnRzLGk9ZS5feCxyPWUuX3ksbz1lLl96LHM9ZS5fdyxhPWkraSxCPXIrcixjPW8rbyxnPWkqYSxFPWkqQixRPWkqYyx1PXIqQixsPXIqYyxoPW8qYyx3PXMqYSxDPXMqQixJPXMqYyxNPXQueCxkPXQueSxwPXQuejtyZXR1cm4gblswXT0oMS0odStoKSkqTSxuWzFdPShFK0kpKk0sblsyXT0oUS1DKSpNLG5bM109MCxuWzRdPShFLUkpKmQsbls1XT0oMS0oZytoKSkqZCxuWzZdPShsK3cpKmQsbls3XT0wLG5bOF09KFErQykqcCxuWzldPShsLXcpKnAsblsxMF09KDEtKGcrdSkpKnAsblsxMV09MCxuWzEyXT1BLngsblsxM109QS55LG5bMTRdPUEueixuWzE1XT0xLHRoaXN9ZGVjb21wb3NlKEEsZSx0KXtjb25zdCBuPXRoaXMuZWxlbWVudHM7bGV0IGk9cW4uc2V0KG5bMF0sblsxXSxuWzJdKS5sZW5ndGgoKTtjb25zdCByPXFuLnNldChuWzRdLG5bNV0sbls2XSkubGVuZ3RoKCksbz1xbi5zZXQobls4XSxuWzldLG5bMTBdKS5sZW5ndGgoKTt0aGlzLmRldGVybWluYW50KCk8MCYmKGk9LWkpLEEueD1uWzEyXSxBLnk9blsxM10sQS56PW5bMTRdLCRuLmNvcHkodGhpcyk7Y29uc3Qgcz0xL2ksYT0xL3IsQj0xL287cmV0dXJuICRuLmVsZW1lbnRzWzBdKj1zLCRuLmVsZW1lbnRzWzFdKj1zLCRuLmVsZW1lbnRzWzJdKj1zLCRuLmVsZW1lbnRzWzRdKj1hLCRuLmVsZW1lbnRzWzVdKj1hLCRuLmVsZW1lbnRzWzZdKj1hLCRuLmVsZW1lbnRzWzhdKj1CLCRuLmVsZW1lbnRzWzldKj1CLCRuLmVsZW1lbnRzWzEwXSo9QixlLnNldEZyb21Sb3RhdGlvbk1hdHJpeCgkbiksdC54PWksdC55PXIsdC56PW8sdGhpc31tYWtlUGVyc3BlY3RpdmUoQSxlLHQsbixpLHIpe2xldCBvPWFyZ3VtZW50cy5sZW5ndGg+NiYmdm9pZCAwIT09YXJndW1lbnRzWzZdP2FyZ3VtZW50c1s2XTpZdDtjb25zdCBzPXRoaXMuZWxlbWVudHMsYT0yKmkvKGUtQSksQj0yKmkvKHQtbiksYz0oZStBKS8oZS1BKSxnPSh0K24pLyh0LW4pO2xldCBFLFE7aWYobz09PVl0KUU9LShyK2kpLyhyLWkpLFE9LTIqcippLyhyLWkpO2Vsc2V7aWYobyE9PWZ0KXRocm93IG5ldyBFcnJvcigiVEhSRUUuTWF0cml4NC5tYWtlUGVyc3BlY3RpdmUoKTogSW52YWxpZCBjb29yZGluYXRlIHN5c3RlbTogIitvKTtFPS1yLyhyLWkpLFE9LXIqaS8oci1pKX1yZXR1cm4gc1swXT1hLHNbNF09MCxzWzhdPWMsc1sxMl09MCxzWzFdPTAsc1s1XT1CLHNbOV09ZyxzWzEzXT0wLHNbMl09MCxzWzZdPTAsc1sxMF09RSxzWzE0XT1RLHNbM109MCxzWzddPTAsc1sxMV09LTEsc1sxNV09MCx0aGlzfW1ha2VPcnRob2dyYXBoaWMoQSxlLHQsbixpLHIpe2xldCBvPWFyZ3VtZW50cy5sZW5ndGg+NiYmdm9pZCAwIT09YXJndW1lbnRzWzZdP2FyZ3VtZW50c1s2XTpZdDtjb25zdCBzPXRoaXMuZWxlbWVudHMsYT0xLyhlLUEpLEI9MS8odC1uKSxjPTEvKHItaSksZz0oZStBKSphLEU9KHQrbikqQjtsZXQgUSx1O2lmKG89PT1ZdClRPShyK2kpKmMsdT0tMipjO2Vsc2V7aWYobyE9PWZ0KXRocm93IG5ldyBFcnJvcigiVEhSRUUuTWF0cml4NC5tYWtlT3J0aG9ncmFwaGljKCk6IEludmFsaWQgY29vcmRpbmF0ZSBzeXN0ZW06ICIrbyk7UT1pKmMsdT0tMSpjfXJldHVybiBzWzBdPTIqYSxzWzRdPTAsc1s4XT0wLHNbMTJdPS1nLHNbMV09MCxzWzVdPTIqQixzWzldPTAsc1sxM109LUUsc1syXT0wLHNbNl09MCxzWzEwXT11LHNbMTRdPS1RLHNbM109MCxzWzddPTAsc1sxMV09MCxzWzE1XT0xLHRoaXN9ZXF1YWxzKEEpe2NvbnN0IGU9dGhpcy5lbGVtZW50cyx0PUEuZWxlbWVudHM7Zm9yKGxldCBBPTA7QTwxNjtBKyspaWYoZVtBXSE9PXRbQV0pcmV0dXJuITE7cmV0dXJuITB9ZnJvbUFycmF5KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO2ZvcihsZXQgdD0wO3Q8MTY7dCsrKXRoaXMuZWxlbWVudHNbdF09QVt0K2VdO3JldHVybiB0aGlzfXRvQXJyYXkoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06W10sZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MDtjb25zdCB0PXRoaXMuZWxlbWVudHM7cmV0dXJuIEFbZV09dFswXSxBW2UrMV09dFsxXSxBW2UrMl09dFsyXSxBW2UrM109dFszXSxBW2UrNF09dFs0XSxBW2UrNV09dFs1XSxBW2UrNl09dFs2XSxBW2UrN109dFs3XSxBW2UrOF09dFs4XSxBW2UrOV09dFs5XSxBW2UrMTBdPXRbMTBdLEFbZSsxMV09dFsxMV0sQVtlKzEyXT10WzEyXSxBW2UrMTNdPXRbMTNdLEFbZSsxNF09dFsxNF0sQVtlKzE1XT10WzE1XSxBfX1jb25zdCBxbj1uZXcgZG4sJG49bmV3IF9uLEFpPW5ldyBkbigwLDAsMCksZWk9bmV3IGRuKDEsMSwxKSx0aT1uZXcgZG4sbmk9bmV3IGRuLGlpPW5ldyBkbixyaT1uZXcgX24sb2k9bmV3IE1uO2NsYXNzIHNpe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjAsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTowLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOnNpLkRFRkFVTFRfT1JERVI7dGhpcy5pc0V1bGVyPSEwLHRoaXMuX3g9QSx0aGlzLl95PWUsdGhpcy5fej10LHRoaXMuX29yZGVyPW59Z2V0IHgoKXtyZXR1cm4gdGhpcy5feH1zZXQgeChBKXt0aGlzLl94PUEsdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpfWdldCB5KCl7cmV0dXJuIHRoaXMuX3l9c2V0IHkoQSl7dGhpcy5feT1BLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKX1nZXQgeigpe3JldHVybiB0aGlzLl96fXNldCB6KEEpe3RoaXMuX3o9QSx0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCl9Z2V0IG9yZGVyKCl7cmV0dXJuIHRoaXMuX29yZGVyfXNldCBvcmRlcihBKXt0aGlzLl9vcmRlcj1BLHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKX1zZXQoQSxlLHQpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTp0aGlzLl9vcmRlcjtyZXR1cm4gdGhpcy5feD1BLHRoaXMuX3k9ZSx0aGlzLl96PXQsdGhpcy5fb3JkZXI9bix0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCksdGhpc31jbG9uZSgpe3JldHVybiBuZXcgdGhpcy5jb25zdHJ1Y3Rvcih0aGlzLl94LHRoaXMuX3ksdGhpcy5feix0aGlzLl9vcmRlcil9Y29weShBKXtyZXR1cm4gdGhpcy5feD1BLl94LHRoaXMuX3k9QS5feSx0aGlzLl96PUEuX3osdGhpcy5fb3JkZXI9QS5fb3JkZXIsdGhpcy5fb25DaGFuZ2VDYWxsYmFjaygpLHRoaXN9c2V0RnJvbVJvdGF0aW9uTWF0cml4KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp0aGlzLl9vcmRlcix0PSEoYXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0pfHxhcmd1bWVudHNbMl07Y29uc3Qgbj1BLmVsZW1lbnRzLGk9blswXSxyPW5bNF0sbz1uWzhdLHM9blsxXSxhPW5bNV0sQj1uWzldLGM9blsyXSxnPW5bNl0sRT1uWzEwXTtzd2l0Y2goZSl7Y2FzZSJYWVoiOnRoaXMuX3k9TWF0aC5hc2luKEd0KG8sLTEsMSkpLE1hdGguYWJzKG8pPC45OTk5OTk5Pyh0aGlzLl94PU1hdGguYXRhbjIoLUIsRSksdGhpcy5fej1NYXRoLmF0YW4yKC1yLGkpKToodGhpcy5feD1NYXRoLmF0YW4yKGcsYSksdGhpcy5fej0wKTticmVhaztjYXNlIllYWiI6dGhpcy5feD1NYXRoLmFzaW4oLUd0KEIsLTEsMSkpLE1hdGguYWJzKEIpPC45OTk5OTk5Pyh0aGlzLl95PU1hdGguYXRhbjIobyxFKSx0aGlzLl96PU1hdGguYXRhbjIocyxhKSk6KHRoaXMuX3k9TWF0aC5hdGFuMigtYyxpKSx0aGlzLl96PTApO2JyZWFrO2Nhc2UiWlhZIjp0aGlzLl94PU1hdGguYXNpbihHdChnLC0xLDEpKSxNYXRoLmFicyhnKTwuOTk5OTk5OT8odGhpcy5feT1NYXRoLmF0YW4yKC1jLEUpLHRoaXMuX3o9TWF0aC5hdGFuMigtcixhKSk6KHRoaXMuX3k9MCx0aGlzLl96PU1hdGguYXRhbjIocyxpKSk7YnJlYWs7Y2FzZSJaWVgiOnRoaXMuX3k9TWF0aC5hc2luKC1HdChjLC0xLDEpKSxNYXRoLmFicyhjKTwuOTk5OTk5OT8odGhpcy5feD1NYXRoLmF0YW4yKGcsRSksdGhpcy5fej1NYXRoLmF0YW4yKHMsaSkpOih0aGlzLl94PTAsdGhpcy5fej1NYXRoLmF0YW4yKC1yLGEpKTticmVhaztjYXNlIllaWCI6dGhpcy5fej1NYXRoLmFzaW4oR3QocywtMSwxKSksTWF0aC5hYnMocyk8Ljk5OTk5OTk/KHRoaXMuX3g9TWF0aC5hdGFuMigtQixhKSx0aGlzLl95PU1hdGguYXRhbjIoLWMsaSkpOih0aGlzLl94PTAsdGhpcy5feT1NYXRoLmF0YW4yKG8sRSkpO2JyZWFrO2Nhc2UiWFpZIjp0aGlzLl96PU1hdGguYXNpbigtR3QociwtMSwxKSksTWF0aC5hYnMocik8Ljk5OTk5OTk/KHRoaXMuX3g9TWF0aC5hdGFuMihnLGEpLHRoaXMuX3k9TWF0aC5hdGFuMihvLGkpKToodGhpcy5feD1NYXRoLmF0YW4yKC1CLEUpLHRoaXMuX3k9MCk7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLndhcm4oIlRIUkVFLkV1bGVyOiAuc2V0RnJvbVJvdGF0aW9uTWF0cml4KCkgZW5jb3VudGVyZWQgYW4gdW5rbm93biBvcmRlcjogIitlKX1yZXR1cm4gdGhpcy5fb3JkZXI9ZSwhMD09PXQmJnRoaXMuX29uQ2hhbmdlQ2FsbGJhY2soKSx0aGlzfXNldEZyb21RdWF0ZXJuaW9uKEEsZSx0KXtyZXR1cm4gcmkubWFrZVJvdGF0aW9uRnJvbVF1YXRlcm5pb24oQSksdGhpcy5zZXRGcm9tUm90YXRpb25NYXRyaXgocmksZSx0KX1zZXRGcm9tVmVjdG9yMyhBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06dGhpcy5fb3JkZXI7cmV0dXJuIHRoaXMuc2V0KEEueCxBLnksQS56LGUpfXJlb3JkZXIoQSl7cmV0dXJuIG9pLnNldEZyb21FdWxlcih0aGlzKSx0aGlzLnNldEZyb21RdWF0ZXJuaW9uKG9pLEEpfWVxdWFscyhBKXtyZXR1cm4gQS5feD09PXRoaXMuX3gmJkEuX3k9PT10aGlzLl95JiZBLl96PT09dGhpcy5feiYmQS5fb3JkZXI9PT10aGlzLl9vcmRlcn1mcm9tQXJyYXkoQSl7cmV0dXJuIHRoaXMuX3g9QVswXSx0aGlzLl95PUFbMV0sdGhpcy5fej1BWzJdLHZvaWQgMCE9PUFbM10mJih0aGlzLl9vcmRlcj1BWzNdKSx0aGlzLl9vbkNoYW5nZUNhbGxiYWNrKCksdGhpc310b0FycmF5KCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7cmV0dXJuIEFbZV09dGhpcy5feCxBW2UrMV09dGhpcy5feSxBW2UrMl09dGhpcy5feixBW2UrM109dGhpcy5fb3JkZXIsQX1fb25DaGFuZ2UoQSl7cmV0dXJuIHRoaXMuX29uQ2hhbmdlQ2FsbGJhY2s9QSx0aGlzfV9vbkNoYW5nZUNhbGxiYWNrKCl7fSpbU3ltYm9sLml0ZXJhdG9yXSgpe3lpZWxkIHRoaXMuX3gseWllbGQgdGhpcy5feSx5aWVsZCB0aGlzLl96LHlpZWxkIHRoaXMuX29yZGVyfX1zaS5ERUZBVUxUX09SREVSPSJYWVoiO2NsYXNzIGFpe2NvbnN0cnVjdG9yKCl7dGhpcy5tYXNrPTF9c2V0KEEpe3RoaXMubWFzaz0oMTw8QXwwKT4+PjB9ZW5hYmxlKEEpe3RoaXMubWFza3w9MTw8QXwwfWVuYWJsZUFsbCgpe3RoaXMubWFzaz0tMX10b2dnbGUoQSl7dGhpcy5tYXNrXj0xPDxBfDB9ZGlzYWJsZShBKXt0aGlzLm1hc2smPX4oMTw8QXwwKX1kaXNhYmxlQWxsKCl7dGhpcy5tYXNrPTB9dGVzdChBKXtyZXR1cm4gMCE9KHRoaXMubWFzayZBLm1hc2spfWlzRW5hYmxlZChBKXtyZXR1cm4gMCE9KHRoaXMubWFzayYoMTw8QXwwKSl9fWxldCBCaT0wO2NvbnN0IGNpPW5ldyBkbixnaT1uZXcgTW4sRWk9bmV3IF9uLFFpPW5ldyBkbix1aT1uZXcgZG4sbGk9bmV3IGRuLGhpPW5ldyBNbix3aT1uZXcgZG4oMSwwLDApLENpPW5ldyBkbigwLDEsMCksSWk9bmV3IGRuKDAsMCwxKSxNaT17dHlwZToiYWRkZWQifSxkaT17dHlwZToicmVtb3ZlZCJ9O2NsYXNzIHBpIGV4dGVuZHMgTnR7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMuaXNPYmplY3QzRD0hMCxPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywiaWQiLHt2YWx1ZTpCaSsrfSksdGhpcy51dWlkPVJ0KCksdGhpcy5uYW1lPSIiLHRoaXMudHlwZT0iT2JqZWN0M0QiLHRoaXMucGFyZW50PW51bGwsdGhpcy5jaGlsZHJlbj1bXSx0aGlzLnVwPXBpLkRFRkFVTFRfVVAuY2xvbmUoKTtjb25zdCBBPW5ldyBkbixlPW5ldyBzaSx0PW5ldyBNbixuPW5ldyBkbigxLDEsMSk7ZS5fb25DaGFuZ2UoKGZ1bmN0aW9uKCl7dC5zZXRGcm9tRXVsZXIoZSwhMSl9KSksdC5fb25DaGFuZ2UoKGZ1bmN0aW9uKCl7ZS5zZXRGcm9tUXVhdGVybmlvbih0LHZvaWQgMCwhMSl9KSksT2JqZWN0LmRlZmluZVByb3BlcnRpZXModGhpcyx7cG9zaXRpb246e2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLHZhbHVlOkF9LHJvdGF0aW9uOntjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx2YWx1ZTplfSxxdWF0ZXJuaW9uOntjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx2YWx1ZTp0fSxzY2FsZTp7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsdmFsdWU6bn0sbW9kZWxWaWV3TWF0cml4Ont2YWx1ZTpuZXcgX259LG5vcm1hbE1hdHJpeDp7dmFsdWU6bmV3IFB0fX0pLHRoaXMubWF0cml4PW5ldyBfbix0aGlzLm1hdHJpeFdvcmxkPW5ldyBfbix0aGlzLm1hdHJpeEF1dG9VcGRhdGU9cGkuREVGQVVMVF9NQVRSSVhfQVVUT19VUERBVEUsdGhpcy5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlPSExLHRoaXMubWF0cml4V29ybGRBdXRvVXBkYXRlPXBpLkRFRkFVTFRfTUFUUklYX1dPUkxEX0FVVE9fVVBEQVRFLHRoaXMubGF5ZXJzPW5ldyBhaSx0aGlzLnZpc2libGU9ITAsdGhpcy5jYXN0U2hhZG93PSExLHRoaXMucmVjZWl2ZVNoYWRvdz0hMSx0aGlzLmZydXN0dW1DdWxsZWQ9ITAsdGhpcy5yZW5kZXJPcmRlcj0wLHRoaXMuYW5pbWF0aW9ucz1bXSx0aGlzLnVzZXJEYXRhPXt9fW9uQmVmb3JlUmVuZGVyKCl7fW9uQWZ0ZXJSZW5kZXIoKXt9YXBwbHlNYXRyaXg0KEEpe3RoaXMubWF0cml4QXV0b1VwZGF0ZSYmdGhpcy51cGRhdGVNYXRyaXgoKSx0aGlzLm1hdHJpeC5wcmVtdWx0aXBseShBKSx0aGlzLm1hdHJpeC5kZWNvbXBvc2UodGhpcy5wb3NpdGlvbix0aGlzLnF1YXRlcm5pb24sdGhpcy5zY2FsZSl9YXBwbHlRdWF0ZXJuaW9uKEEpe3JldHVybiB0aGlzLnF1YXRlcm5pb24ucHJlbXVsdGlwbHkoQSksdGhpc31zZXRSb3RhdGlvbkZyb21BeGlzQW5nbGUoQSxlKXt0aGlzLnF1YXRlcm5pb24uc2V0RnJvbUF4aXNBbmdsZShBLGUpfXNldFJvdGF0aW9uRnJvbUV1bGVyKEEpe3RoaXMucXVhdGVybmlvbi5zZXRGcm9tRXVsZXIoQSwhMCl9c2V0Um90YXRpb25Gcm9tTWF0cml4KEEpe3RoaXMucXVhdGVybmlvbi5zZXRGcm9tUm90YXRpb25NYXRyaXgoQSl9c2V0Um90YXRpb25Gcm9tUXVhdGVybmlvbihBKXt0aGlzLnF1YXRlcm5pb24uY29weShBKX1yb3RhdGVPbkF4aXMoQSxlKXtyZXR1cm4gZ2kuc2V0RnJvbUF4aXNBbmdsZShBLGUpLHRoaXMucXVhdGVybmlvbi5tdWx0aXBseShnaSksdGhpc31yb3RhdGVPbldvcmxkQXhpcyhBLGUpe3JldHVybiBnaS5zZXRGcm9tQXhpc0FuZ2xlKEEsZSksdGhpcy5xdWF0ZXJuaW9uLnByZW11bHRpcGx5KGdpKSx0aGlzfXJvdGF0ZVgoQSl7cmV0dXJuIHRoaXMucm90YXRlT25BeGlzKHdpLEEpfXJvdGF0ZVkoQSl7cmV0dXJuIHRoaXMucm90YXRlT25BeGlzKENpLEEpfXJvdGF0ZVooQSl7cmV0dXJuIHRoaXMucm90YXRlT25BeGlzKElpLEEpfXRyYW5zbGF0ZU9uQXhpcyhBLGUpe3JldHVybiBjaS5jb3B5KEEpLmFwcGx5UXVhdGVybmlvbih0aGlzLnF1YXRlcm5pb24pLHRoaXMucG9zaXRpb24uYWRkKGNpLm11bHRpcGx5U2NhbGFyKGUpKSx0aGlzfXRyYW5zbGF0ZVgoQSl7cmV0dXJuIHRoaXMudHJhbnNsYXRlT25BeGlzKHdpLEEpfXRyYW5zbGF0ZVkoQSl7cmV0dXJuIHRoaXMudHJhbnNsYXRlT25BeGlzKENpLEEpfXRyYW5zbGF0ZVooQSl7cmV0dXJuIHRoaXMudHJhbnNsYXRlT25BeGlzKElpLEEpfWxvY2FsVG9Xb3JsZChBKXtyZXR1cm4gdGhpcy51cGRhdGVXb3JsZE1hdHJpeCghMCwhMSksQS5hcHBseU1hdHJpeDQodGhpcy5tYXRyaXhXb3JsZCl9d29ybGRUb0xvY2FsKEEpe3JldHVybiB0aGlzLnVwZGF0ZVdvcmxkTWF0cml4KCEwLCExKSxBLmFwcGx5TWF0cml4NChFaS5jb3B5KHRoaXMubWF0cml4V29ybGQpLmludmVydCgpKX1sb29rQXQoQSxlLHQpe0EuaXNWZWN0b3IzP1FpLmNvcHkoQSk6UWkuc2V0KEEsZSx0KTtjb25zdCBuPXRoaXMucGFyZW50O3RoaXMudXBkYXRlV29ybGRNYXRyaXgoITAsITEpLHVpLnNldEZyb21NYXRyaXhQb3NpdGlvbih0aGlzLm1hdHJpeFdvcmxkKSx0aGlzLmlzQ2FtZXJhfHx0aGlzLmlzTGlnaHQ/RWkubG9va0F0KHVpLFFpLHRoaXMudXApOkVpLmxvb2tBdChRaSx1aSx0aGlzLnVwKSx0aGlzLnF1YXRlcm5pb24uc2V0RnJvbVJvdGF0aW9uTWF0cml4KEVpKSxuJiYoRWkuZXh0cmFjdFJvdGF0aW9uKG4ubWF0cml4V29ybGQpLGdpLnNldEZyb21Sb3RhdGlvbk1hdHJpeChFaSksdGhpcy5xdWF0ZXJuaW9uLnByZW11bHRpcGx5KGdpLmludmVydCgpKSl9YWRkKEEpe2lmKGFyZ3VtZW50cy5sZW5ndGg+MSl7Zm9yKGxldCBBPTA7QTxhcmd1bWVudHMubGVuZ3RoO0ErKyl0aGlzLmFkZChhcmd1bWVudHNbQV0pO3JldHVybiB0aGlzfXJldHVybiBBPT09dGhpcz8oY29uc29sZS5lcnJvcigiVEhSRUUuT2JqZWN0M0QuYWRkOiBvYmplY3QgY2FuJ3QgYmUgYWRkZWQgYXMgYSBjaGlsZCBvZiBpdHNlbGYuIixBKSx0aGlzKTooQSYmQS5pc09iamVjdDNEPyhudWxsIT09QS5wYXJlbnQmJkEucGFyZW50LnJlbW92ZShBKSxBLnBhcmVudD10aGlzLHRoaXMuY2hpbGRyZW4ucHVzaChBKSxBLmRpc3BhdGNoRXZlbnQoTWkpKTpjb25zb2xlLmVycm9yKCJUSFJFRS5PYmplY3QzRC5hZGQ6IG9iamVjdCBub3QgYW4gaW5zdGFuY2Ugb2YgVEhSRUUuT2JqZWN0M0QuIixBKSx0aGlzKX1yZW1vdmUoQSl7aWYoYXJndW1lbnRzLmxlbmd0aD4xKXtmb3IobGV0IEE9MDtBPGFyZ3VtZW50cy5sZW5ndGg7QSsrKXRoaXMucmVtb3ZlKGFyZ3VtZW50c1tBXSk7cmV0dXJuIHRoaXN9Y29uc3QgZT10aGlzLmNoaWxkcmVuLmluZGV4T2YoQSk7cmV0dXJuLTEhPT1lJiYoQS5wYXJlbnQ9bnVsbCx0aGlzLmNoaWxkcmVuLnNwbGljZShlLDEpLEEuZGlzcGF0Y2hFdmVudChkaSkpLHRoaXN9cmVtb3ZlRnJvbVBhcmVudCgpe2NvbnN0IEE9dGhpcy5wYXJlbnQ7cmV0dXJuIG51bGwhPT1BJiZBLnJlbW92ZSh0aGlzKSx0aGlzfWNsZWFyKCl7Zm9yKGxldCBBPTA7QTx0aGlzLmNoaWxkcmVuLmxlbmd0aDtBKyspe2NvbnN0IGU9dGhpcy5jaGlsZHJlbltBXTtlLnBhcmVudD1udWxsLGUuZGlzcGF0Y2hFdmVudChkaSl9cmV0dXJuIHRoaXMuY2hpbGRyZW4ubGVuZ3RoPTAsdGhpc31hdHRhY2goQSl7cmV0dXJuIHRoaXMudXBkYXRlV29ybGRNYXRyaXgoITAsITEpLEVpLmNvcHkodGhpcy5tYXRyaXhXb3JsZCkuaW52ZXJ0KCksbnVsbCE9PUEucGFyZW50JiYoQS5wYXJlbnQudXBkYXRlV29ybGRNYXRyaXgoITAsITEpLEVpLm11bHRpcGx5KEEucGFyZW50Lm1hdHJpeFdvcmxkKSksQS5hcHBseU1hdHJpeDQoRWkpLHRoaXMuYWRkKEEpLEEudXBkYXRlV29ybGRNYXRyaXgoITEsITApLHRoaXN9Z2V0T2JqZWN0QnlJZChBKXtyZXR1cm4gdGhpcy5nZXRPYmplY3RCeVByb3BlcnR5KCJpZCIsQSl9Z2V0T2JqZWN0QnlOYW1lKEEpe3JldHVybiB0aGlzLmdldE9iamVjdEJ5UHJvcGVydHkoIm5hbWUiLEEpfWdldE9iamVjdEJ5UHJvcGVydHkoQSxlKXtpZih0aGlzW0FdPT09ZSlyZXR1cm4gdGhpcztmb3IobGV0IHQ9MCxuPXRoaXMuY2hpbGRyZW4ubGVuZ3RoO3Q8bjt0Kyspe2NvbnN0IG49dGhpcy5jaGlsZHJlblt0XS5nZXRPYmplY3RCeVByb3BlcnR5KEEsZSk7aWYodm9pZCAwIT09bilyZXR1cm4gbn19Z2V0T2JqZWN0c0J5UHJvcGVydHkoQSxlKXtsZXQgdD1bXTt0aGlzW0FdPT09ZSYmdC5wdXNoKHRoaXMpO2ZvcihsZXQgbj0wLGk9dGhpcy5jaGlsZHJlbi5sZW5ndGg7bjxpO24rKyl7Y29uc3QgaT10aGlzLmNoaWxkcmVuW25dLmdldE9iamVjdHNCeVByb3BlcnR5KEEsZSk7aS5sZW5ndGg+MCYmKHQ9dC5jb25jYXQoaSkpfXJldHVybiB0fWdldFdvcmxkUG9zaXRpb24oQSl7cmV0dXJuIHRoaXMudXBkYXRlV29ybGRNYXRyaXgoITAsITEpLEEuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKHRoaXMubWF0cml4V29ybGQpfWdldFdvcmxkUXVhdGVybmlvbihBKXtyZXR1cm4gdGhpcy51cGRhdGVXb3JsZE1hdHJpeCghMCwhMSksdGhpcy5tYXRyaXhXb3JsZC5kZWNvbXBvc2UodWksQSxsaSksQX1nZXRXb3JsZFNjYWxlKEEpe3JldHVybiB0aGlzLnVwZGF0ZVdvcmxkTWF0cml4KCEwLCExKSx0aGlzLm1hdHJpeFdvcmxkLmRlY29tcG9zZSh1aSxoaSxBKSxBfWdldFdvcmxkRGlyZWN0aW9uKEEpe3RoaXMudXBkYXRlV29ybGRNYXRyaXgoITAsITEpO2NvbnN0IGU9dGhpcy5tYXRyaXhXb3JsZC5lbGVtZW50cztyZXR1cm4gQS5zZXQoZVs4XSxlWzldLGVbMTBdKS5ub3JtYWxpemUoKX1yYXljYXN0KCl7fXRyYXZlcnNlKEEpe0EodGhpcyk7Y29uc3QgZT10aGlzLmNoaWxkcmVuO2ZvcihsZXQgdD0wLG49ZS5sZW5ndGg7dDxuO3QrKyllW3RdLnRyYXZlcnNlKEEpfXRyYXZlcnNlVmlzaWJsZShBKXtpZighMT09PXRoaXMudmlzaWJsZSlyZXR1cm47QSh0aGlzKTtjb25zdCBlPXRoaXMuY2hpbGRyZW47Zm9yKGxldCB0PTAsbj1lLmxlbmd0aDt0PG47dCsrKWVbdF0udHJhdmVyc2VWaXNpYmxlKEEpfXRyYXZlcnNlQW5jZXN0b3JzKEEpe2NvbnN0IGU9dGhpcy5wYXJlbnQ7bnVsbCE9PWUmJihBKGUpLGUudHJhdmVyc2VBbmNlc3RvcnMoQSkpfXVwZGF0ZU1hdHJpeCgpe3RoaXMubWF0cml4LmNvbXBvc2UodGhpcy5wb3NpdGlvbix0aGlzLnF1YXRlcm5pb24sdGhpcy5zY2FsZSksdGhpcy5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlPSEwfXVwZGF0ZU1hdHJpeFdvcmxkKEEpe3RoaXMubWF0cml4QXV0b1VwZGF0ZSYmdGhpcy51cGRhdGVNYXRyaXgoKSwodGhpcy5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlfHxBKSYmKG51bGw9PT10aGlzLnBhcmVudD90aGlzLm1hdHJpeFdvcmxkLmNvcHkodGhpcy5tYXRyaXgpOnRoaXMubWF0cml4V29ybGQubXVsdGlwbHlNYXRyaWNlcyh0aGlzLnBhcmVudC5tYXRyaXhXb3JsZCx0aGlzLm1hdHJpeCksdGhpcy5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlPSExLEE9ITApO2NvbnN0IGU9dGhpcy5jaGlsZHJlbjtmb3IobGV0IHQ9MCxuPWUubGVuZ3RoO3Q8bjt0Kyspe2NvbnN0IG49ZVt0XTshMCE9PW4ubWF0cml4V29ybGRBdXRvVXBkYXRlJiYhMCE9PUF8fG4udXBkYXRlTWF0cml4V29ybGQoQSl9fXVwZGF0ZVdvcmxkTWF0cml4KEEsZSl7Y29uc3QgdD10aGlzLnBhcmVudDtpZighMD09PUEmJm51bGwhPT10JiYhMD09PXQubWF0cml4V29ybGRBdXRvVXBkYXRlJiZ0LnVwZGF0ZVdvcmxkTWF0cml4KCEwLCExKSx0aGlzLm1hdHJpeEF1dG9VcGRhdGUmJnRoaXMudXBkYXRlTWF0cml4KCksbnVsbD09PXRoaXMucGFyZW50P3RoaXMubWF0cml4V29ybGQuY29weSh0aGlzLm1hdHJpeCk6dGhpcy5tYXRyaXhXb3JsZC5tdWx0aXBseU1hdHJpY2VzKHRoaXMucGFyZW50Lm1hdHJpeFdvcmxkLHRoaXMubWF0cml4KSwhMD09PWUpe2NvbnN0IEE9dGhpcy5jaGlsZHJlbjtmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QVtlXTshMD09PXQubWF0cml4V29ybGRBdXRvVXBkYXRlJiZ0LnVwZGF0ZVdvcmxkTWF0cml4KCExLCEwKX19fXRvSlNPTihBKXtjb25zdCBlPXZvaWQgMD09PUF8fCJzdHJpbmciPT10eXBlb2YgQSx0PXt9O2UmJihBPXtnZW9tZXRyaWVzOnt9LG1hdGVyaWFsczp7fSx0ZXh0dXJlczp7fSxpbWFnZXM6e30sc2hhcGVzOnt9LHNrZWxldG9uczp7fSxhbmltYXRpb25zOnt9LG5vZGVzOnt9fSx0Lm1ldGFkYXRhPXt2ZXJzaW9uOjQuNix0eXBlOiJPYmplY3QiLGdlbmVyYXRvcjoiT2JqZWN0M0QudG9KU09OIn0pO2NvbnN0IG49e307ZnVuY3Rpb24gaShlLHQpe3JldHVybiB2b2lkIDA9PT1lW3QudXVpZF0mJihlW3QudXVpZF09dC50b0pTT04oQSkpLHQudXVpZH1pZihuLnV1aWQ9dGhpcy51dWlkLG4udHlwZT10aGlzLnR5cGUsIiIhPT10aGlzLm5hbWUmJihuLm5hbWU9dGhpcy5uYW1lKSwhMD09PXRoaXMuY2FzdFNoYWRvdyYmKG4uY2FzdFNoYWRvdz0hMCksITA9PT10aGlzLnJlY2VpdmVTaGFkb3cmJihuLnJlY2VpdmVTaGFkb3c9ITApLCExPT09dGhpcy52aXNpYmxlJiYobi52aXNpYmxlPSExKSwhMT09PXRoaXMuZnJ1c3R1bUN1bGxlZCYmKG4uZnJ1c3R1bUN1bGxlZD0hMSksMCE9PXRoaXMucmVuZGVyT3JkZXImJihuLnJlbmRlck9yZGVyPXRoaXMucmVuZGVyT3JkZXIpLE9iamVjdC5rZXlzKHRoaXMudXNlckRhdGEpLmxlbmd0aD4wJiYobi51c2VyRGF0YT10aGlzLnVzZXJEYXRhKSxuLmxheWVycz10aGlzLmxheWVycy5tYXNrLG4ubWF0cml4PXRoaXMubWF0cml4LnRvQXJyYXkoKSxuLnVwPXRoaXMudXAudG9BcnJheSgpLCExPT09dGhpcy5tYXRyaXhBdXRvVXBkYXRlJiYobi5tYXRyaXhBdXRvVXBkYXRlPSExKSx0aGlzLmlzSW5zdGFuY2VkTWVzaCYmKG4udHlwZT0iSW5zdGFuY2VkTWVzaCIsbi5jb3VudD10aGlzLmNvdW50LG4uaW5zdGFuY2VNYXRyaXg9dGhpcy5pbnN0YW5jZU1hdHJpeC50b0pTT04oKSxudWxsIT09dGhpcy5pbnN0YW5jZUNvbG9yJiYobi5pbnN0YW5jZUNvbG9yPXRoaXMuaW5zdGFuY2VDb2xvci50b0pTT04oKSkpLHRoaXMuaXNTY2VuZSl0aGlzLmJhY2tncm91bmQmJih0aGlzLmJhY2tncm91bmQuaXNDb2xvcj9uLmJhY2tncm91bmQ9dGhpcy5iYWNrZ3JvdW5kLnRvSlNPTigpOnRoaXMuYmFja2dyb3VuZC5pc1RleHR1cmUmJihuLmJhY2tncm91bmQ9dGhpcy5iYWNrZ3JvdW5kLnRvSlNPTihBKS51dWlkKSksdGhpcy5lbnZpcm9ubWVudCYmdGhpcy5lbnZpcm9ubWVudC5pc1RleHR1cmUmJiEwIT09dGhpcy5lbnZpcm9ubWVudC5pc1JlbmRlclRhcmdldFRleHR1cmUmJihuLmVudmlyb25tZW50PXRoaXMuZW52aXJvbm1lbnQudG9KU09OKEEpLnV1aWQpO2Vsc2UgaWYodGhpcy5pc01lc2h8fHRoaXMuaXNMaW5lfHx0aGlzLmlzUG9pbnRzKXtuLmdlb21ldHJ5PWkoQS5nZW9tZXRyaWVzLHRoaXMuZ2VvbWV0cnkpO2NvbnN0IGU9dGhpcy5nZW9tZXRyeS5wYXJhbWV0ZXJzO2lmKHZvaWQgMCE9PWUmJnZvaWQgMCE9PWUuc2hhcGVzKXtjb25zdCB0PWUuc2hhcGVzO2lmKEFycmF5LmlzQXJyYXkodCkpZm9yKGxldCBlPTAsbj10Lmxlbmd0aDtlPG47ZSsrKXtjb25zdCBuPXRbZV07aShBLnNoYXBlcyxuKX1lbHNlIGkoQS5zaGFwZXMsdCl9fWlmKHRoaXMuaXNTa2lubmVkTWVzaCYmKG4uYmluZE1vZGU9dGhpcy5iaW5kTW9kZSxuLmJpbmRNYXRyaXg9dGhpcy5iaW5kTWF0cml4LnRvQXJyYXkoKSx2b2lkIDAhPT10aGlzLnNrZWxldG9uJiYoaShBLnNrZWxldG9ucyx0aGlzLnNrZWxldG9uKSxuLnNrZWxldG9uPXRoaXMuc2tlbGV0b24udXVpZCkpLHZvaWQgMCE9PXRoaXMubWF0ZXJpYWwpaWYoQXJyYXkuaXNBcnJheSh0aGlzLm1hdGVyaWFsKSl7Y29uc3QgZT1bXTtmb3IobGV0IHQ9MCxuPXRoaXMubWF0ZXJpYWwubGVuZ3RoO3Q8bjt0KyspZS5wdXNoKGkoQS5tYXRlcmlhbHMsdGhpcy5tYXRlcmlhbFt0XSkpO24ubWF0ZXJpYWw9ZX1lbHNlIG4ubWF0ZXJpYWw9aShBLm1hdGVyaWFscyx0aGlzLm1hdGVyaWFsKTtpZih0aGlzLmNoaWxkcmVuLmxlbmd0aD4wKXtuLmNoaWxkcmVuPVtdO2ZvcihsZXQgZT0wO2U8dGhpcy5jaGlsZHJlbi5sZW5ndGg7ZSsrKW4uY2hpbGRyZW4ucHVzaCh0aGlzLmNoaWxkcmVuW2VdLnRvSlNPTihBKS5vYmplY3QpfWlmKHRoaXMuYW5pbWF0aW9ucy5sZW5ndGg+MCl7bi5hbmltYXRpb25zPVtdO2ZvcihsZXQgZT0wO2U8dGhpcy5hbmltYXRpb25zLmxlbmd0aDtlKyspe2NvbnN0IHQ9dGhpcy5hbmltYXRpb25zW2VdO24uYW5pbWF0aW9ucy5wdXNoKGkoQS5hbmltYXRpb25zLHQpKX19aWYoZSl7Y29uc3QgZT1yKEEuZ2VvbWV0cmllcyksbj1yKEEubWF0ZXJpYWxzKSxpPXIoQS50ZXh0dXJlcyksbz1yKEEuaW1hZ2VzKSxzPXIoQS5zaGFwZXMpLGE9cihBLnNrZWxldG9ucyksQj1yKEEuYW5pbWF0aW9ucyksYz1yKEEubm9kZXMpO2UubGVuZ3RoPjAmJih0Lmdlb21ldHJpZXM9ZSksbi5sZW5ndGg+MCYmKHQubWF0ZXJpYWxzPW4pLGkubGVuZ3RoPjAmJih0LnRleHR1cmVzPWkpLG8ubGVuZ3RoPjAmJih0LmltYWdlcz1vKSxzLmxlbmd0aD4wJiYodC5zaGFwZXM9cyksYS5sZW5ndGg+MCYmKHQuc2tlbGV0b25zPWEpLEIubGVuZ3RoPjAmJih0LmFuaW1hdGlvbnM9QiksYy5sZW5ndGg+MCYmKHQubm9kZXM9Yyl9cmV0dXJuIHQub2JqZWN0PW4sdDtmdW5jdGlvbiByKEEpe2NvbnN0IGU9W107Zm9yKGNvbnN0IHQgaW4gQSl7Y29uc3Qgbj1BW3RdO2RlbGV0ZSBuLm1ldGFkYXRhLGUucHVzaChuKX1yZXR1cm4gZX19Y2xvbmUoQSl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMsQSl9Y29weShBKXtsZXQgZT0hKGFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdKXx8YXJndW1lbnRzWzFdO2lmKHRoaXMubmFtZT1BLm5hbWUsdGhpcy51cC5jb3B5KEEudXApLHRoaXMucG9zaXRpb24uY29weShBLnBvc2l0aW9uKSx0aGlzLnJvdGF0aW9uLm9yZGVyPUEucm90YXRpb24ub3JkZXIsdGhpcy5xdWF0ZXJuaW9uLmNvcHkoQS5xdWF0ZXJuaW9uKSx0aGlzLnNjYWxlLmNvcHkoQS5zY2FsZSksdGhpcy5tYXRyaXguY29weShBLm1hdHJpeCksdGhpcy5tYXRyaXhXb3JsZC5jb3B5KEEubWF0cml4V29ybGQpLHRoaXMubWF0cml4QXV0b1VwZGF0ZT1BLm1hdHJpeEF1dG9VcGRhdGUsdGhpcy5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlPUEubWF0cml4V29ybGROZWVkc1VwZGF0ZSx0aGlzLm1hdHJpeFdvcmxkQXV0b1VwZGF0ZT1BLm1hdHJpeFdvcmxkQXV0b1VwZGF0ZSx0aGlzLmxheWVycy5tYXNrPUEubGF5ZXJzLm1hc2ssdGhpcy52aXNpYmxlPUEudmlzaWJsZSx0aGlzLmNhc3RTaGFkb3c9QS5jYXN0U2hhZG93LHRoaXMucmVjZWl2ZVNoYWRvdz1BLnJlY2VpdmVTaGFkb3csdGhpcy5mcnVzdHVtQ3VsbGVkPUEuZnJ1c3R1bUN1bGxlZCx0aGlzLnJlbmRlck9yZGVyPUEucmVuZGVyT3JkZXIsdGhpcy5hbmltYXRpb25zPUEuYW5pbWF0aW9ucyx0aGlzLnVzZXJEYXRhPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoQS51c2VyRGF0YSkpLCEwPT09ZSlmb3IobGV0IGU9MDtlPEEuY2hpbGRyZW4ubGVuZ3RoO2UrKyl7Y29uc3QgdD1BLmNoaWxkcmVuW2VdO3RoaXMuYWRkKHQuY2xvbmUoKSl9cmV0dXJuIHRoaXN9fXBpLkRFRkFVTFRfVVA9bmV3IGRuKDAsMSwwKSxwaS5ERUZBVUxUX01BVFJJWF9BVVRPX1VQREFURT0hMCxwaS5ERUZBVUxUX01BVFJJWF9XT1JMRF9BVVRPX1VQREFURT0hMDtjb25zdCBtaT1uZXcgZG4sRmk9bmV3IGRuLERpPW5ldyBkbixZaT1uZXcgZG4sZmk9bmV3IGRuLE5pPW5ldyBkbixVaT1uZXcgZG4seWk9bmV3IGRuLFRpPW5ldyBkbix4aT1uZXcgZG47bGV0IFJpPSExO2NsYXNzIEdpe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBkbixlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG4sdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bmV3IGRuO3RoaXMuYT1BLHRoaXMuYj1lLHRoaXMuYz10fXN0YXRpYyBnZXROb3JtYWwoQSxlLHQsbil7bi5zdWJWZWN0b3JzKHQsZSksbWkuc3ViVmVjdG9ycyhBLGUpLG4uY3Jvc3MobWkpO2NvbnN0IGk9bi5sZW5ndGhTcSgpO3JldHVybiBpPjA/bi5tdWx0aXBseVNjYWxhcigxL01hdGguc3FydChpKSk6bi5zZXQoMCwwLDApfXN0YXRpYyBnZXRCYXJ5Y29vcmQoQSxlLHQsbixpKXttaS5zdWJWZWN0b3JzKG4sZSksRmkuc3ViVmVjdG9ycyh0LGUpLERpLnN1YlZlY3RvcnMoQSxlKTtjb25zdCByPW1pLmRvdChtaSksbz1taS5kb3QoRmkpLHM9bWkuZG90KERpKSxhPUZpLmRvdChGaSksQj1GaS5kb3QoRGkpLGM9ciphLW8qbztpZigwPT09YylyZXR1cm4gaS5zZXQoLTIsLTEsLTEpO2NvbnN0IGc9MS9jLEU9KGEqcy1vKkIpKmcsUT0ocipCLW8qcykqZztyZXR1cm4gaS5zZXQoMS1FLVEsUSxFKX1zdGF0aWMgY29udGFpbnNQb2ludChBLGUsdCxuKXtyZXR1cm4gdGhpcy5nZXRCYXJ5Y29vcmQoQSxlLHQsbixZaSksWWkueD49MCYmWWkueT49MCYmWWkueCtZaS55PD0xfXN0YXRpYyBnZXRVVihBLGUsdCxuLGkscixvLHMpe3JldHVybiExPT09UmkmJihjb25zb2xlLndhcm4oIlRIUkVFLlRyaWFuZ2xlLmdldFVWKCkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5UcmlhbmdsZS5nZXRJbnRlcnBvbGF0aW9uKCkuIiksUmk9ITApLHRoaXMuZ2V0SW50ZXJwb2xhdGlvbihBLGUsdCxuLGkscixvLHMpfXN0YXRpYyBnZXRJbnRlcnBvbGF0aW9uKEEsZSx0LG4saSxyLG8scyl7cmV0dXJuIHRoaXMuZ2V0QmFyeWNvb3JkKEEsZSx0LG4sWWkpLHMuc2V0U2NhbGFyKDApLHMuYWRkU2NhbGVkVmVjdG9yKGksWWkueCkscy5hZGRTY2FsZWRWZWN0b3IocixZaS55KSxzLmFkZFNjYWxlZFZlY3RvcihvLFlpLnopLHN9c3RhdGljIGlzRnJvbnRGYWNpbmcoQSxlLHQsbil7cmV0dXJuIG1pLnN1YlZlY3RvcnModCxlKSxGaS5zdWJWZWN0b3JzKEEsZSksbWkuY3Jvc3MoRmkpLmRvdChuKTwwfXNldChBLGUsdCl7cmV0dXJuIHRoaXMuYS5jb3B5KEEpLHRoaXMuYi5jb3B5KGUpLHRoaXMuYy5jb3B5KHQpLHRoaXN9c2V0RnJvbVBvaW50c0FuZEluZGljZXMoQSxlLHQsbil7cmV0dXJuIHRoaXMuYS5jb3B5KEFbZV0pLHRoaXMuYi5jb3B5KEFbdF0pLHRoaXMuYy5jb3B5KEFbbl0pLHRoaXN9c2V0RnJvbUF0dHJpYnV0ZUFuZEluZGljZXMoQSxlLHQsbil7cmV0dXJuIHRoaXMuYS5mcm9tQnVmZmVyQXR0cmlidXRlKEEsZSksdGhpcy5iLmZyb21CdWZmZXJBdHRyaWJ1dGUoQSx0KSx0aGlzLmMuZnJvbUJ1ZmZlckF0dHJpYnV0ZShBLG4pLHRoaXN9Y2xvbmUoKXtyZXR1cm4obmV3IHRoaXMuY29uc3RydWN0b3IpLmNvcHkodGhpcyl9Y29weShBKXtyZXR1cm4gdGhpcy5hLmNvcHkoQS5hKSx0aGlzLmIuY29weShBLmIpLHRoaXMuYy5jb3B5KEEuYyksdGhpc31nZXRBcmVhKCl7cmV0dXJuIG1pLnN1YlZlY3RvcnModGhpcy5jLHRoaXMuYiksRmkuc3ViVmVjdG9ycyh0aGlzLmEsdGhpcy5iKSwuNSptaS5jcm9zcyhGaSkubGVuZ3RoKCl9Z2V0TWlkcG9pbnQoQSl7cmV0dXJuIEEuYWRkVmVjdG9ycyh0aGlzLmEsdGhpcy5iKS5hZGQodGhpcy5jKS5tdWx0aXBseVNjYWxhcigxLzMpfWdldE5vcm1hbChBKXtyZXR1cm4gR2kuZ2V0Tm9ybWFsKHRoaXMuYSx0aGlzLmIsdGhpcy5jLEEpfWdldFBsYW5lKEEpe3JldHVybiBBLnNldEZyb21Db3BsYW5hclBvaW50cyh0aGlzLmEsdGhpcy5iLHRoaXMuYyl9Z2V0QmFyeWNvb3JkKEEsZSl7cmV0dXJuIEdpLmdldEJhcnljb29yZChBLHRoaXMuYSx0aGlzLmIsdGhpcy5jLGUpfWdldFVWKEEsZSx0LG4saSl7cmV0dXJuITE9PT1SaSYmKGNvbnNvbGUud2FybigiVEhSRUUuVHJpYW5nbGUuZ2V0VVYoKSBoYXMgYmVlbiByZW5hbWVkIHRvIFRIUkVFLlRyaWFuZ2xlLmdldEludGVycG9sYXRpb24oKS4iKSxSaT0hMCksR2kuZ2V0SW50ZXJwb2xhdGlvbihBLHRoaXMuYSx0aGlzLmIsdGhpcy5jLGUsdCxuLGkpfWdldEludGVycG9sYXRpb24oQSxlLHQsbixpKXtyZXR1cm4gR2kuZ2V0SW50ZXJwb2xhdGlvbihBLHRoaXMuYSx0aGlzLmIsdGhpcy5jLGUsdCxuLGkpfWNvbnRhaW5zUG9pbnQoQSl7cmV0dXJuIEdpLmNvbnRhaW5zUG9pbnQoQSx0aGlzLmEsdGhpcy5iLHRoaXMuYyl9aXNGcm9udEZhY2luZyhBKXtyZXR1cm4gR2kuaXNGcm9udEZhY2luZyh0aGlzLmEsdGhpcy5iLHRoaXMuYyxBKX1pbnRlcnNlY3RzQm94KEEpe3JldHVybiBBLmludGVyc2VjdHNUcmlhbmdsZSh0aGlzKX1jbG9zZXN0UG9pbnRUb1BvaW50KEEsZSl7Y29uc3QgdD10aGlzLmEsbj10aGlzLmIsaT10aGlzLmM7bGV0IHIsbztmaS5zdWJWZWN0b3JzKG4sdCksTmkuc3ViVmVjdG9ycyhpLHQpLHlpLnN1YlZlY3RvcnMoQSx0KTtjb25zdCBzPWZpLmRvdCh5aSksYT1OaS5kb3QoeWkpO2lmKHM8PTAmJmE8PTApcmV0dXJuIGUuY29weSh0KTtUaS5zdWJWZWN0b3JzKEEsbik7Y29uc3QgQj1maS5kb3QoVGkpLGM9TmkuZG90KFRpKTtpZihCPj0wJiZjPD1CKXJldHVybiBlLmNvcHkobik7Y29uc3QgZz1zKmMtQiphO2lmKGc8PTAmJnM+PTAmJkI8PTApcmV0dXJuIHI9cy8ocy1CKSxlLmNvcHkodCkuYWRkU2NhbGVkVmVjdG9yKGZpLHIpO3hpLnN1YlZlY3RvcnMoQSxpKTtjb25zdCBFPWZpLmRvdCh4aSksUT1OaS5kb3QoeGkpO2lmKFE+PTAmJkU8PVEpcmV0dXJuIGUuY29weShpKTtjb25zdCB1PUUqYS1zKlE7aWYodTw9MCYmYT49MCYmUTw9MClyZXR1cm4gbz1hLyhhLVEpLGUuY29weSh0KS5hZGRTY2FsZWRWZWN0b3IoTmksbyk7Y29uc3QgbD1CKlEtRSpjO2lmKGw8PTAmJmMtQj49MCYmRS1RPj0wKXJldHVybiBVaS5zdWJWZWN0b3JzKGksbiksbz0oYy1CKS8oYy1CKyhFLVEpKSxlLmNvcHkobikuYWRkU2NhbGVkVmVjdG9yKFVpLG8pO2NvbnN0IGg9MS8obCt1K2cpO3JldHVybiByPXUqaCxvPWcqaCxlLmNvcHkodCkuYWRkU2NhbGVkVmVjdG9yKGZpLHIpLmFkZFNjYWxlZFZlY3RvcihOaSxvKX1lcXVhbHMoQSl7cmV0dXJuIEEuYS5lcXVhbHModGhpcy5hKSYmQS5iLmVxdWFscyh0aGlzLmIpJiZBLmMuZXF1YWxzKHRoaXMuYyl9fWxldCBTaT0wO2NsYXNzIGJpIGV4dGVuZHMgTnR7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMuaXNNYXRlcmlhbD0hMCxPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywiaWQiLHt2YWx1ZTpTaSsrfSksdGhpcy51dWlkPVJ0KCksdGhpcy5uYW1lPSIiLHRoaXMudHlwZT0iTWF0ZXJpYWwiLHRoaXMuYmxlbmRpbmc9SSx0aGlzLnNpZGU9dSx0aGlzLnZlcnRleENvbG9ycz0hMSx0aGlzLm9wYWNpdHk9MSx0aGlzLnRyYW5zcGFyZW50PSExLHRoaXMuYmxlbmRTcmM9Uix0aGlzLmJsZW5kRHN0PUcsdGhpcy5ibGVuZEVxdWF0aW9uPUYsdGhpcy5ibGVuZFNyY0FscGhhPW51bGwsdGhpcy5ibGVuZERzdEFscGhhPW51bGwsdGhpcy5ibGVuZEVxdWF0aW9uQWxwaGE9bnVsbCx0aGlzLmRlcHRoRnVuYz1MLHRoaXMuZGVwdGhUZXN0PSEwLHRoaXMuZGVwdGhXcml0ZT0hMCx0aGlzLnN0ZW5jaWxXcml0ZU1hc2s9MjU1LHRoaXMuc3RlbmNpbEZ1bmM9cnQsdGhpcy5zdGVuY2lsUmVmPTAsdGhpcy5zdGVuY2lsRnVuY01hc2s9MjU1LHRoaXMuc3RlbmNpbEZhaWw9T2UsdGhpcy5zdGVuY2lsWkZhaWw9T2UsdGhpcy5zdGVuY2lsWlBhc3M9T2UsdGhpcy5zdGVuY2lsV3JpdGU9ITEsdGhpcy5jbGlwcGluZ1BsYW5lcz1udWxsLHRoaXMuY2xpcEludGVyc2VjdGlvbj0hMSx0aGlzLmNsaXBTaGFkb3dzPSExLHRoaXMuc2hhZG93U2lkZT1udWxsLHRoaXMuY29sb3JXcml0ZT0hMCx0aGlzLnByZWNpc2lvbj1udWxsLHRoaXMucG9seWdvbk9mZnNldD0hMSx0aGlzLnBvbHlnb25PZmZzZXRGYWN0b3I9MCx0aGlzLnBvbHlnb25PZmZzZXRVbml0cz0wLHRoaXMuZGl0aGVyaW5nPSExLHRoaXMuYWxwaGFUb0NvdmVyYWdlPSExLHRoaXMucHJlbXVsdGlwbGllZEFscGhhPSExLHRoaXMuZm9yY2VTaW5nbGVQYXNzPSExLHRoaXMudmlzaWJsZT0hMCx0aGlzLnRvbmVNYXBwZWQ9ITAsdGhpcy51c2VyRGF0YT17fSx0aGlzLnZlcnNpb249MCx0aGlzLl9hbHBoYVRlc3Q9MH1nZXQgYWxwaGFUZXN0KCl7cmV0dXJuIHRoaXMuX2FscGhhVGVzdH1zZXQgYWxwaGFUZXN0KEEpe3RoaXMuX2FscGhhVGVzdD4wIT1BPjAmJnRoaXMudmVyc2lvbisrLHRoaXMuX2FscGhhVGVzdD1BfW9uQnVpbGQoKXt9b25CZWZvcmVSZW5kZXIoKXt9b25CZWZvcmVDb21waWxlKCl7fWN1c3RvbVByb2dyYW1DYWNoZUtleSgpe3JldHVybiB0aGlzLm9uQmVmb3JlQ29tcGlsZS50b1N0cmluZygpfXNldFZhbHVlcyhBKXtpZih2b2lkIDAhPT1BKWZvcihjb25zdCBlIGluIEEpe2NvbnN0IHQ9QVtlXTtpZih2b2lkIDA9PT10KXtjb25zb2xlLndhcm4oIlRIUkVFLk1hdGVyaWFsOiBwYXJhbWV0ZXIgJyIuY29uY2F0KGUsIicgaGFzIHZhbHVlIG9mIHVuZGVmaW5lZC4iKSk7Y29udGludWV9Y29uc3Qgbj10aGlzW2VdO3ZvaWQgMCE9PW4/biYmbi5pc0NvbG9yP24uc2V0KHQpOm4mJm4uaXNWZWN0b3IzJiZ0JiZ0LmlzVmVjdG9yMz9uLmNvcHkodCk6dGhpc1tlXT10OmNvbnNvbGUud2FybigiVEhSRUUuTWF0ZXJpYWw6ICciLmNvbmNhdChlLCInIGlzIG5vdCBhIHByb3BlcnR5IG9mIFRIUkVFLiIpLmNvbmNhdCh0aGlzLnR5cGUsIi4iKSl9fXRvSlNPTihBKXtjb25zdCBlPXZvaWQgMD09PUF8fCJzdHJpbmciPT10eXBlb2YgQTtlJiYoQT17dGV4dHVyZXM6e30saW1hZ2VzOnt9fSk7Y29uc3QgdD17bWV0YWRhdGE6e3ZlcnNpb246NC42LHR5cGU6Ik1hdGVyaWFsIixnZW5lcmF0b3I6Ik1hdGVyaWFsLnRvSlNPTiJ9fTtmdW5jdGlvbiBuKEEpe2NvbnN0IGU9W107Zm9yKGNvbnN0IHQgaW4gQSl7Y29uc3Qgbj1BW3RdO2RlbGV0ZSBuLm1ldGFkYXRhLGUucHVzaChuKX1yZXR1cm4gZX1pZih0LnV1aWQ9dGhpcy51dWlkLHQudHlwZT10aGlzLnR5cGUsIiIhPT10aGlzLm5hbWUmJih0Lm5hbWU9dGhpcy5uYW1lKSx0aGlzLmNvbG9yJiZ0aGlzLmNvbG9yLmlzQ29sb3ImJih0LmNvbG9yPXRoaXMuY29sb3IuZ2V0SGV4KCkpLHZvaWQgMCE9PXRoaXMucm91Z2huZXNzJiYodC5yb3VnaG5lc3M9dGhpcy5yb3VnaG5lc3MpLHZvaWQgMCE9PXRoaXMubWV0YWxuZXNzJiYodC5tZXRhbG5lc3M9dGhpcy5tZXRhbG5lc3MpLHZvaWQgMCE9PXRoaXMuc2hlZW4mJih0LnNoZWVuPXRoaXMuc2hlZW4pLHRoaXMuc2hlZW5Db2xvciYmdGhpcy5zaGVlbkNvbG9yLmlzQ29sb3ImJih0LnNoZWVuQ29sb3I9dGhpcy5zaGVlbkNvbG9yLmdldEhleCgpKSx2b2lkIDAhPT10aGlzLnNoZWVuUm91Z2huZXNzJiYodC5zaGVlblJvdWdobmVzcz10aGlzLnNoZWVuUm91Z2huZXNzKSx0aGlzLmVtaXNzaXZlJiZ0aGlzLmVtaXNzaXZlLmlzQ29sb3ImJih0LmVtaXNzaXZlPXRoaXMuZW1pc3NpdmUuZ2V0SGV4KCkpLHRoaXMuZW1pc3NpdmVJbnRlbnNpdHkmJjEhPT10aGlzLmVtaXNzaXZlSW50ZW5zaXR5JiYodC5lbWlzc2l2ZUludGVuc2l0eT10aGlzLmVtaXNzaXZlSW50ZW5zaXR5KSx0aGlzLnNwZWN1bGFyJiZ0aGlzLnNwZWN1bGFyLmlzQ29sb3ImJih0LnNwZWN1bGFyPXRoaXMuc3BlY3VsYXIuZ2V0SGV4KCkpLHZvaWQgMCE9PXRoaXMuc3BlY3VsYXJJbnRlbnNpdHkmJih0LnNwZWN1bGFySW50ZW5zaXR5PXRoaXMuc3BlY3VsYXJJbnRlbnNpdHkpLHRoaXMuc3BlY3VsYXJDb2xvciYmdGhpcy5zcGVjdWxhckNvbG9yLmlzQ29sb3ImJih0LnNwZWN1bGFyQ29sb3I9dGhpcy5zcGVjdWxhckNvbG9yLmdldEhleCgpKSx2b2lkIDAhPT10aGlzLnNoaW5pbmVzcyYmKHQuc2hpbmluZXNzPXRoaXMuc2hpbmluZXNzKSx2b2lkIDAhPT10aGlzLmNsZWFyY29hdCYmKHQuY2xlYXJjb2F0PXRoaXMuY2xlYXJjb2F0KSx2b2lkIDAhPT10aGlzLmNsZWFyY29hdFJvdWdobmVzcyYmKHQuY2xlYXJjb2F0Um91Z2huZXNzPXRoaXMuY2xlYXJjb2F0Um91Z2huZXNzKSx0aGlzLmNsZWFyY29hdE1hcCYmdGhpcy5jbGVhcmNvYXRNYXAuaXNUZXh0dXJlJiYodC5jbGVhcmNvYXRNYXA9dGhpcy5jbGVhcmNvYXRNYXAudG9KU09OKEEpLnV1aWQpLHRoaXMuY2xlYXJjb2F0Um91Z2huZXNzTWFwJiZ0aGlzLmNsZWFyY29hdFJvdWdobmVzc01hcC5pc1RleHR1cmUmJih0LmNsZWFyY29hdFJvdWdobmVzc01hcD10aGlzLmNsZWFyY29hdFJvdWdobmVzc01hcC50b0pTT04oQSkudXVpZCksdGhpcy5jbGVhcmNvYXROb3JtYWxNYXAmJnRoaXMuY2xlYXJjb2F0Tm9ybWFsTWFwLmlzVGV4dHVyZSYmKHQuY2xlYXJjb2F0Tm9ybWFsTWFwPXRoaXMuY2xlYXJjb2F0Tm9ybWFsTWFwLnRvSlNPTihBKS51dWlkLHQuY2xlYXJjb2F0Tm9ybWFsU2NhbGU9dGhpcy5jbGVhcmNvYXROb3JtYWxTY2FsZS50b0FycmF5KCkpLHZvaWQgMCE9PXRoaXMuaXJpZGVzY2VuY2UmJih0LmlyaWRlc2NlbmNlPXRoaXMuaXJpZGVzY2VuY2UpLHZvaWQgMCE9PXRoaXMuaXJpZGVzY2VuY2VJT1ImJih0LmlyaWRlc2NlbmNlSU9SPXRoaXMuaXJpZGVzY2VuY2VJT1IpLHZvaWQgMCE9PXRoaXMuaXJpZGVzY2VuY2VUaGlja25lc3NSYW5nZSYmKHQuaXJpZGVzY2VuY2VUaGlja25lc3NSYW5nZT10aGlzLmlyaWRlc2NlbmNlVGhpY2tuZXNzUmFuZ2UpLHRoaXMuaXJpZGVzY2VuY2VNYXAmJnRoaXMuaXJpZGVzY2VuY2VNYXAuaXNUZXh0dXJlJiYodC5pcmlkZXNjZW5jZU1hcD10aGlzLmlyaWRlc2NlbmNlTWFwLnRvSlNPTihBKS51dWlkKSx0aGlzLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwJiZ0aGlzLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwLmlzVGV4dHVyZSYmKHQuaXJpZGVzY2VuY2VUaGlja25lc3NNYXA9dGhpcy5pcmlkZXNjZW5jZVRoaWNrbmVzc01hcC50b0pTT04oQSkudXVpZCksdm9pZCAwIT09dGhpcy5hbmlzb3Ryb3B5JiYodC5hbmlzb3Ryb3B5PXRoaXMuYW5pc290cm9weSksdm9pZCAwIT09dGhpcy5hbmlzb3Ryb3B5Um90YXRpb24mJih0LmFuaXNvdHJvcHlSb3RhdGlvbj10aGlzLmFuaXNvdHJvcHlSb3RhdGlvbiksdGhpcy5hbmlzb3Ryb3B5TWFwJiZ0aGlzLmFuaXNvdHJvcHlNYXAuaXNUZXh0dXJlJiYodC5hbmlzb3Ryb3B5TWFwPXRoaXMuYW5pc290cm9weU1hcC50b0pTT04oQSkudXVpZCksdGhpcy5tYXAmJnRoaXMubWFwLmlzVGV4dHVyZSYmKHQubWFwPXRoaXMubWFwLnRvSlNPTihBKS51dWlkKSx0aGlzLm1hdGNhcCYmdGhpcy5tYXRjYXAuaXNUZXh0dXJlJiYodC5tYXRjYXA9dGhpcy5tYXRjYXAudG9KU09OKEEpLnV1aWQpLHRoaXMuYWxwaGFNYXAmJnRoaXMuYWxwaGFNYXAuaXNUZXh0dXJlJiYodC5hbHBoYU1hcD10aGlzLmFscGhhTWFwLnRvSlNPTihBKS51dWlkKSx0aGlzLmxpZ2h0TWFwJiZ0aGlzLmxpZ2h0TWFwLmlzVGV4dHVyZSYmKHQubGlnaHRNYXA9dGhpcy5saWdodE1hcC50b0pTT04oQSkudXVpZCx0LmxpZ2h0TWFwSW50ZW5zaXR5PXRoaXMubGlnaHRNYXBJbnRlbnNpdHkpLHRoaXMuYW9NYXAmJnRoaXMuYW9NYXAuaXNUZXh0dXJlJiYodC5hb01hcD10aGlzLmFvTWFwLnRvSlNPTihBKS51dWlkLHQuYW9NYXBJbnRlbnNpdHk9dGhpcy5hb01hcEludGVuc2l0eSksdGhpcy5idW1wTWFwJiZ0aGlzLmJ1bXBNYXAuaXNUZXh0dXJlJiYodC5idW1wTWFwPXRoaXMuYnVtcE1hcC50b0pTT04oQSkudXVpZCx0LmJ1bXBTY2FsZT10aGlzLmJ1bXBTY2FsZSksdGhpcy5ub3JtYWxNYXAmJnRoaXMubm9ybWFsTWFwLmlzVGV4dHVyZSYmKHQubm9ybWFsTWFwPXRoaXMubm9ybWFsTWFwLnRvSlNPTihBKS51dWlkLHQubm9ybWFsTWFwVHlwZT10aGlzLm5vcm1hbE1hcFR5cGUsdC5ub3JtYWxTY2FsZT10aGlzLm5vcm1hbFNjYWxlLnRvQXJyYXkoKSksdGhpcy5kaXNwbGFjZW1lbnRNYXAmJnRoaXMuZGlzcGxhY2VtZW50TWFwLmlzVGV4dHVyZSYmKHQuZGlzcGxhY2VtZW50TWFwPXRoaXMuZGlzcGxhY2VtZW50TWFwLnRvSlNPTihBKS51dWlkLHQuZGlzcGxhY2VtZW50U2NhbGU9dGhpcy5kaXNwbGFjZW1lbnRTY2FsZSx0LmRpc3BsYWNlbWVudEJpYXM9dGhpcy5kaXNwbGFjZW1lbnRCaWFzKSx0aGlzLnJvdWdobmVzc01hcCYmdGhpcy5yb3VnaG5lc3NNYXAuaXNUZXh0dXJlJiYodC5yb3VnaG5lc3NNYXA9dGhpcy5yb3VnaG5lc3NNYXAudG9KU09OKEEpLnV1aWQpLHRoaXMubWV0YWxuZXNzTWFwJiZ0aGlzLm1ldGFsbmVzc01hcC5pc1RleHR1cmUmJih0Lm1ldGFsbmVzc01hcD10aGlzLm1ldGFsbmVzc01hcC50b0pTT04oQSkudXVpZCksdGhpcy5lbWlzc2l2ZU1hcCYmdGhpcy5lbWlzc2l2ZU1hcC5pc1RleHR1cmUmJih0LmVtaXNzaXZlTWFwPXRoaXMuZW1pc3NpdmVNYXAudG9KU09OKEEpLnV1aWQpLHRoaXMuc3BlY3VsYXJNYXAmJnRoaXMuc3BlY3VsYXJNYXAuaXNUZXh0dXJlJiYodC5zcGVjdWxhck1hcD10aGlzLnNwZWN1bGFyTWFwLnRvSlNPTihBKS51dWlkKSx0aGlzLnNwZWN1bGFySW50ZW5zaXR5TWFwJiZ0aGlzLnNwZWN1bGFySW50ZW5zaXR5TWFwLmlzVGV4dHVyZSYmKHQuc3BlY3VsYXJJbnRlbnNpdHlNYXA9dGhpcy5zcGVjdWxhckludGVuc2l0eU1hcC50b0pTT04oQSkudXVpZCksdGhpcy5zcGVjdWxhckNvbG9yTWFwJiZ0aGlzLnNwZWN1bGFyQ29sb3JNYXAuaXNUZXh0dXJlJiYodC5zcGVjdWxhckNvbG9yTWFwPXRoaXMuc3BlY3VsYXJDb2xvck1hcC50b0pTT04oQSkudXVpZCksdGhpcy5lbnZNYXAmJnRoaXMuZW52TWFwLmlzVGV4dHVyZSYmKHQuZW52TWFwPXRoaXMuZW52TWFwLnRvSlNPTihBKS51dWlkLHZvaWQgMCE9PXRoaXMuY29tYmluZSYmKHQuY29tYmluZT10aGlzLmNvbWJpbmUpKSx2b2lkIDAhPT10aGlzLmVudk1hcEludGVuc2l0eSYmKHQuZW52TWFwSW50ZW5zaXR5PXRoaXMuZW52TWFwSW50ZW5zaXR5KSx2b2lkIDAhPT10aGlzLnJlZmxlY3Rpdml0eSYmKHQucmVmbGVjdGl2aXR5PXRoaXMucmVmbGVjdGl2aXR5KSx2b2lkIDAhPT10aGlzLnJlZnJhY3Rpb25SYXRpbyYmKHQucmVmcmFjdGlvblJhdGlvPXRoaXMucmVmcmFjdGlvblJhdGlvKSx0aGlzLmdyYWRpZW50TWFwJiZ0aGlzLmdyYWRpZW50TWFwLmlzVGV4dHVyZSYmKHQuZ3JhZGllbnRNYXA9dGhpcy5ncmFkaWVudE1hcC50b0pTT04oQSkudXVpZCksdm9pZCAwIT09dGhpcy50cmFuc21pc3Npb24mJih0LnRyYW5zbWlzc2lvbj10aGlzLnRyYW5zbWlzc2lvbiksdGhpcy50cmFuc21pc3Npb25NYXAmJnRoaXMudHJhbnNtaXNzaW9uTWFwLmlzVGV4dHVyZSYmKHQudHJhbnNtaXNzaW9uTWFwPXRoaXMudHJhbnNtaXNzaW9uTWFwLnRvSlNPTihBKS51dWlkKSx2b2lkIDAhPT10aGlzLnRoaWNrbmVzcyYmKHQudGhpY2tuZXNzPXRoaXMudGhpY2tuZXNzKSx0aGlzLnRoaWNrbmVzc01hcCYmdGhpcy50aGlja25lc3NNYXAuaXNUZXh0dXJlJiYodC50aGlja25lc3NNYXA9dGhpcy50aGlja25lc3NNYXAudG9KU09OKEEpLnV1aWQpLHZvaWQgMCE9PXRoaXMuYXR0ZW51YXRpb25EaXN0YW5jZSYmdGhpcy5hdHRlbnVhdGlvbkRpc3RhbmNlIT09MS8wJiYodC5hdHRlbnVhdGlvbkRpc3RhbmNlPXRoaXMuYXR0ZW51YXRpb25EaXN0YW5jZSksdm9pZCAwIT09dGhpcy5hdHRlbnVhdGlvbkNvbG9yJiYodC5hdHRlbnVhdGlvbkNvbG9yPXRoaXMuYXR0ZW51YXRpb25Db2xvci5nZXRIZXgoKSksdm9pZCAwIT09dGhpcy5zaXplJiYodC5zaXplPXRoaXMuc2l6ZSksbnVsbCE9PXRoaXMuc2hhZG93U2lkZSYmKHQuc2hhZG93U2lkZT10aGlzLnNoYWRvd1NpZGUpLHZvaWQgMCE9PXRoaXMuc2l6ZUF0dGVudWF0aW9uJiYodC5zaXplQXR0ZW51YXRpb249dGhpcy5zaXplQXR0ZW51YXRpb24pLHRoaXMuYmxlbmRpbmchPT1JJiYodC5ibGVuZGluZz10aGlzLmJsZW5kaW5nKSx0aGlzLnNpZGUhPT11JiYodC5zaWRlPXRoaXMuc2lkZSksdGhpcy52ZXJ0ZXhDb2xvcnMmJih0LnZlcnRleENvbG9ycz0hMCksdGhpcy5vcGFjaXR5PDEmJih0Lm9wYWNpdHk9dGhpcy5vcGFjaXR5KSwhMD09PXRoaXMudHJhbnNwYXJlbnQmJih0LnRyYW5zcGFyZW50PXRoaXMudHJhbnNwYXJlbnQpLHQuZGVwdGhGdW5jPXRoaXMuZGVwdGhGdW5jLHQuZGVwdGhUZXN0PXRoaXMuZGVwdGhUZXN0LHQuZGVwdGhXcml0ZT10aGlzLmRlcHRoV3JpdGUsdC5jb2xvcldyaXRlPXRoaXMuY29sb3JXcml0ZSx0LnN0ZW5jaWxXcml0ZT10aGlzLnN0ZW5jaWxXcml0ZSx0LnN0ZW5jaWxXcml0ZU1hc2s9dGhpcy5zdGVuY2lsV3JpdGVNYXNrLHQuc3RlbmNpbEZ1bmM9dGhpcy5zdGVuY2lsRnVuYyx0LnN0ZW5jaWxSZWY9dGhpcy5zdGVuY2lsUmVmLHQuc3RlbmNpbEZ1bmNNYXNrPXRoaXMuc3RlbmNpbEZ1bmNNYXNrLHQuc3RlbmNpbEZhaWw9dGhpcy5zdGVuY2lsRmFpbCx0LnN0ZW5jaWxaRmFpbD10aGlzLnN0ZW5jaWxaRmFpbCx0LnN0ZW5jaWxaUGFzcz10aGlzLnN0ZW5jaWxaUGFzcyx2b2lkIDAhPT10aGlzLnJvdGF0aW9uJiYwIT09dGhpcy5yb3RhdGlvbiYmKHQucm90YXRpb249dGhpcy5yb3RhdGlvbiksITA9PT10aGlzLnBvbHlnb25PZmZzZXQmJih0LnBvbHlnb25PZmZzZXQ9ITApLDAhPT10aGlzLnBvbHlnb25PZmZzZXRGYWN0b3ImJih0LnBvbHlnb25PZmZzZXRGYWN0b3I9dGhpcy5wb2x5Z29uT2Zmc2V0RmFjdG9yKSwwIT09dGhpcy5wb2x5Z29uT2Zmc2V0VW5pdHMmJih0LnBvbHlnb25PZmZzZXRVbml0cz10aGlzLnBvbHlnb25PZmZzZXRVbml0cyksdm9pZCAwIT09dGhpcy5saW5ld2lkdGgmJjEhPT10aGlzLmxpbmV3aWR0aCYmKHQubGluZXdpZHRoPXRoaXMubGluZXdpZHRoKSx2b2lkIDAhPT10aGlzLmRhc2hTaXplJiYodC5kYXNoU2l6ZT10aGlzLmRhc2hTaXplKSx2b2lkIDAhPT10aGlzLmdhcFNpemUmJih0LmdhcFNpemU9dGhpcy5nYXBTaXplKSx2b2lkIDAhPT10aGlzLnNjYWxlJiYodC5zY2FsZT10aGlzLnNjYWxlKSwhMD09PXRoaXMuZGl0aGVyaW5nJiYodC5kaXRoZXJpbmc9ITApLHRoaXMuYWxwaGFUZXN0PjAmJih0LmFscGhhVGVzdD10aGlzLmFscGhhVGVzdCksITA9PT10aGlzLmFscGhhVG9Db3ZlcmFnZSYmKHQuYWxwaGFUb0NvdmVyYWdlPXRoaXMuYWxwaGFUb0NvdmVyYWdlKSwhMD09PXRoaXMucHJlbXVsdGlwbGllZEFscGhhJiYodC5wcmVtdWx0aXBsaWVkQWxwaGE9dGhpcy5wcmVtdWx0aXBsaWVkQWxwaGEpLCEwPT09dGhpcy5mb3JjZVNpbmdsZVBhc3MmJih0LmZvcmNlU2luZ2xlUGFzcz10aGlzLmZvcmNlU2luZ2xlUGFzcyksITA9PT10aGlzLndpcmVmcmFtZSYmKHQud2lyZWZyYW1lPXRoaXMud2lyZWZyYW1lKSx0aGlzLndpcmVmcmFtZUxpbmV3aWR0aD4xJiYodC53aXJlZnJhbWVMaW5ld2lkdGg9dGhpcy53aXJlZnJhbWVMaW5ld2lkdGgpLCJyb3VuZCIhPT10aGlzLndpcmVmcmFtZUxpbmVjYXAmJih0LndpcmVmcmFtZUxpbmVjYXA9dGhpcy53aXJlZnJhbWVMaW5lY2FwKSwicm91bmQiIT09dGhpcy53aXJlZnJhbWVMaW5lam9pbiYmKHQud2lyZWZyYW1lTGluZWpvaW49dGhpcy53aXJlZnJhbWVMaW5lam9pbiksITA9PT10aGlzLmZsYXRTaGFkaW5nJiYodC5mbGF0U2hhZGluZz10aGlzLmZsYXRTaGFkaW5nKSwhMT09PXRoaXMudmlzaWJsZSYmKHQudmlzaWJsZT0hMSksITE9PT10aGlzLnRvbmVNYXBwZWQmJih0LnRvbmVNYXBwZWQ9ITEpLCExPT09dGhpcy5mb2cmJih0LmZvZz0hMSksT2JqZWN0LmtleXModGhpcy51c2VyRGF0YSkubGVuZ3RoPjAmJih0LnVzZXJEYXRhPXRoaXMudXNlckRhdGEpLGUpe2NvbnN0IGU9bihBLnRleHR1cmVzKSxpPW4oQS5pbWFnZXMpO2UubGVuZ3RoPjAmJih0LnRleHR1cmVzPWUpLGkubGVuZ3RoPjAmJih0LmltYWdlcz1pKX1yZXR1cm4gdH1jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX1jb3B5KEEpe3RoaXMubmFtZT1BLm5hbWUsdGhpcy5ibGVuZGluZz1BLmJsZW5kaW5nLHRoaXMuc2lkZT1BLnNpZGUsdGhpcy52ZXJ0ZXhDb2xvcnM9QS52ZXJ0ZXhDb2xvcnMsdGhpcy5vcGFjaXR5PUEub3BhY2l0eSx0aGlzLnRyYW5zcGFyZW50PUEudHJhbnNwYXJlbnQsdGhpcy5ibGVuZFNyYz1BLmJsZW5kU3JjLHRoaXMuYmxlbmREc3Q9QS5ibGVuZERzdCx0aGlzLmJsZW5kRXF1YXRpb249QS5ibGVuZEVxdWF0aW9uLHRoaXMuYmxlbmRTcmNBbHBoYT1BLmJsZW5kU3JjQWxwaGEsdGhpcy5ibGVuZERzdEFscGhhPUEuYmxlbmREc3RBbHBoYSx0aGlzLmJsZW5kRXF1YXRpb25BbHBoYT1BLmJsZW5kRXF1YXRpb25BbHBoYSx0aGlzLmRlcHRoRnVuYz1BLmRlcHRoRnVuYyx0aGlzLmRlcHRoVGVzdD1BLmRlcHRoVGVzdCx0aGlzLmRlcHRoV3JpdGU9QS5kZXB0aFdyaXRlLHRoaXMuc3RlbmNpbFdyaXRlTWFzaz1BLnN0ZW5jaWxXcml0ZU1hc2ssdGhpcy5zdGVuY2lsRnVuYz1BLnN0ZW5jaWxGdW5jLHRoaXMuc3RlbmNpbFJlZj1BLnN0ZW5jaWxSZWYsdGhpcy5zdGVuY2lsRnVuY01hc2s9QS5zdGVuY2lsRnVuY01hc2ssdGhpcy5zdGVuY2lsRmFpbD1BLnN0ZW5jaWxGYWlsLHRoaXMuc3RlbmNpbFpGYWlsPUEuc3RlbmNpbFpGYWlsLHRoaXMuc3RlbmNpbFpQYXNzPUEuc3RlbmNpbFpQYXNzLHRoaXMuc3RlbmNpbFdyaXRlPUEuc3RlbmNpbFdyaXRlO2NvbnN0IGU9QS5jbGlwcGluZ1BsYW5lcztsZXQgdD1udWxsO2lmKG51bGwhPT1lKXtjb25zdCBBPWUubGVuZ3RoO3Q9bmV3IEFycmF5KEEpO2ZvcihsZXQgbj0wO24hPT1BOysrbil0W25dPWVbbl0uY2xvbmUoKX1yZXR1cm4gdGhpcy5jbGlwcGluZ1BsYW5lcz10LHRoaXMuY2xpcEludGVyc2VjdGlvbj1BLmNsaXBJbnRlcnNlY3Rpb24sdGhpcy5jbGlwU2hhZG93cz1BLmNsaXBTaGFkb3dzLHRoaXMuc2hhZG93U2lkZT1BLnNoYWRvd1NpZGUsdGhpcy5jb2xvcldyaXRlPUEuY29sb3JXcml0ZSx0aGlzLnByZWNpc2lvbj1BLnByZWNpc2lvbix0aGlzLnBvbHlnb25PZmZzZXQ9QS5wb2x5Z29uT2Zmc2V0LHRoaXMucG9seWdvbk9mZnNldEZhY3Rvcj1BLnBvbHlnb25PZmZzZXRGYWN0b3IsdGhpcy5wb2x5Z29uT2Zmc2V0VW5pdHM9QS5wb2x5Z29uT2Zmc2V0VW5pdHMsdGhpcy5kaXRoZXJpbmc9QS5kaXRoZXJpbmcsdGhpcy5hbHBoYVRlc3Q9QS5hbHBoYVRlc3QsdGhpcy5hbHBoYVRvQ292ZXJhZ2U9QS5hbHBoYVRvQ292ZXJhZ2UsdGhpcy5wcmVtdWx0aXBsaWVkQWxwaGE9QS5wcmVtdWx0aXBsaWVkQWxwaGEsdGhpcy5mb3JjZVNpbmdsZVBhc3M9QS5mb3JjZVNpbmdsZVBhc3MsdGhpcy52aXNpYmxlPUEudmlzaWJsZSx0aGlzLnRvbmVNYXBwZWQ9QS50b25lTWFwcGVkLHRoaXMudXNlckRhdGE9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShBLnVzZXJEYXRhKSksdGhpc31kaXNwb3NlKCl7dGhpcy5kaXNwYXRjaEV2ZW50KHt0eXBlOiJkaXNwb3NlIn0pfXNldCBuZWVkc1VwZGF0ZShBKXshMD09PUEmJnRoaXMudmVyc2lvbisrfX1jb25zdCBIaT17YWxpY2VibHVlOjE1NzkyMzgzLGFudGlxdWV3aGl0ZToxNjQ0NDM3NSxhcXVhOjY1NTM1LGFxdWFtYXJpbmU6ODM4ODU2NCxhenVyZToxNTc5NDE3NSxiZWlnZToxNjExOTI2MCxiaXNxdWU6MTY3NzAyNDQsYmxhY2s6MCxibGFuY2hlZGFsbW9uZDoxNjc3MjA0NSxibHVlOjI1NSxibHVldmlvbGV0OjkwNTUyMDIsYnJvd246MTA4MjQyMzQsYnVybHl3b29kOjE0NTk2MjMxLGNhZGV0Ymx1ZTo2MjY2NTI4LGNoYXJ0cmV1c2U6ODM4ODM1MixjaG9jb2xhdGU6MTM3ODk0NzAsY29yYWw6MTY3NDQyNzIsY29ybmZsb3dlcmJsdWU6NjU5MTk4MSxjb3Juc2lsazoxNjc3NTM4OCxjcmltc29uOjE0NDIzMTAwLGN5YW46NjU1MzUsZGFya2JsdWU6MTM5LGRhcmtjeWFuOjM1NzIzLGRhcmtnb2xkZW5yb2Q6MTIwOTI5MzksZGFya2dyYXk6MTExMTkwMTcsZGFya2dyZWVuOjI1NjAwLGRhcmtncmV5OjExMTE5MDE3LGRhcmtraGFraToxMjQzMzI1OSxkYXJrbWFnZW50YTo5MTA5NjQzLGRhcmtvbGl2ZWdyZWVuOjU1OTc5OTksZGFya29yYW5nZToxNjc0NzUyMCxkYXJrb3JjaGlkOjEwMDQwMDEyLGRhcmtyZWQ6OTEwOTUwNCxkYXJrc2FsbW9uOjE1MzA4NDEwLGRhcmtzZWFncmVlbjo5NDE5OTE5LGRhcmtzbGF0ZWJsdWU6NDczNDM0NyxkYXJrc2xhdGVncmF5OjMxMDA0OTUsZGFya3NsYXRlZ3JleTozMTAwNDk1LGRhcmt0dXJxdW9pc2U6NTI5NDUsZGFya3Zpb2xldDo5Njk5NTM5LGRlZXBwaW5rOjE2NzE2OTQ3LGRlZXBza3libHVlOjQ5MTUxLGRpbWdyYXk6NjkwODI2NSxkaW1ncmV5OjY5MDgyNjUsZG9kZ2VyYmx1ZToyMDAzMTk5LGZpcmVicmljazoxMTY3NDE0NixmbG9yYWx3aGl0ZToxNjc3NTkyMCxmb3Jlc3RncmVlbjoyMjYzODQyLGZ1Y2hzaWE6MTY3MTE5MzUsZ2FpbnNib3JvOjE0NDc0NDYwLGdob3N0d2hpdGU6MTYzMTY2NzEsZ29sZDoxNjc2NjcyMCxnb2xkZW5yb2Q6MTQzMjkxMjAsZ3JheTo4NDIxNTA0LGdyZWVuOjMyNzY4LGdyZWVueWVsbG93OjExNDAzMDU1LGdyZXk6ODQyMTUwNCxob25leWRldzoxNTc5NDE2MCxob3RwaW5rOjE2NzM4NzQwLGluZGlhbnJlZDoxMzQ1ODUyNCxpbmRpZ286NDkxNTMzMCxpdm9yeToxNjc3NzIwMCxraGFraToxNTc4NzY2MCxsYXZlbmRlcjoxNTEzMjQxMCxsYXZlbmRlcmJsdXNoOjE2NzczMzY1LGxhd25ncmVlbjo4MTkwOTc2LGxlbW9uY2hpZmZvbjoxNjc3NTg4NSxsaWdodGJsdWU6MTEzOTMyNTQsbGlnaHRjb3JhbDoxNTc2MTUzNixsaWdodGN5YW46MTQ3NDU1OTksbGlnaHRnb2xkZW5yb2R5ZWxsb3c6MTY0NDgyMTAsbGlnaHRncmF5OjEzODgyMzIzLGxpZ2h0Z3JlZW46OTQ5ODI1NixsaWdodGdyZXk6MTM4ODIzMjMsbGlnaHRwaW5rOjE2NzU4NDY1LGxpZ2h0c2FsbW9uOjE2NzUyNzYyLGxpZ2h0c2VhZ3JlZW46MjE0Mjg5MCxsaWdodHNreWJsdWU6ODkwMDM0NixsaWdodHNsYXRlZ3JheTo3ODMzNzUzLGxpZ2h0c2xhdGVncmV5Ojc4MzM3NTMsbGlnaHRzdGVlbGJsdWU6MTE1ODQ3MzQsbGlnaHR5ZWxsb3c6MTY3NzcxODQsbGltZTo2NTI4MCxsaW1lZ3JlZW46MzMyOTMzMCxsaW5lbjoxNjQ0NTY3MCxtYWdlbnRhOjE2NzExOTM1LG1hcm9vbjo4Mzg4NjA4LG1lZGl1bWFxdWFtYXJpbmU6NjczNzMyMixtZWRpdW1ibHVlOjIwNSxtZWRpdW1vcmNoaWQ6MTIyMTE2NjcsbWVkaXVtcHVycGxlOjk2NjI2ODMsbWVkaXVtc2VhZ3JlZW46Mzk3ODA5NyxtZWRpdW1zbGF0ZWJsdWU6ODA4Nzc5MCxtZWRpdW1zcHJpbmdncmVlbjo2NDE1NCxtZWRpdW10dXJxdW9pc2U6NDc3MjMwMCxtZWRpdW12aW9sZXRyZWQ6MTMwNDcxNzMsbWlkbmlnaHRibHVlOjE2NDQ5MTIsbWludGNyZWFtOjE2MTIxODUwLG1pc3R5cm9zZToxNjc3MDI3Myxtb2NjYXNpbjoxNjc3MDIyOSxuYXZham93aGl0ZToxNjc2ODY4NSxuYXZ5OjEyOCxvbGRsYWNlOjE2NjQzNTU4LG9saXZlOjg0MjEzNzYsb2xpdmVkcmFiOjcwNDg3Mzksb3JhbmdlOjE2NzUzOTIwLG9yYW5nZXJlZDoxNjcyOTM0NCxvcmNoaWQ6MTQzMTU3MzQscGFsZWdvbGRlbnJvZDoxNTY1NzEzMCxwYWxlZ3JlZW46MTAwMjU4ODAscGFsZXR1cnF1b2lzZToxMTUyOTk2NixwYWxldmlvbGV0cmVkOjE0MzgxMjAzLHBhcGF5YXdoaXA6MTY3NzMwNzcscGVhY2hwdWZmOjE2NzY3NjczLHBlcnU6MTM0Njg5OTEscGluazoxNjc2MTAzNSxwbHVtOjE0NTI0NjM3LHBvd2RlcmJsdWU6MTE1OTE5MTAscHVycGxlOjgzODg3MzYscmViZWNjYXB1cnBsZTo2Njk3ODgxLHJlZDoxNjcxMTY4MCxyb3N5YnJvd246MTIzNTc1MTkscm95YWxibHVlOjQyODY5NDUsc2FkZGxlYnJvd246OTEyNzE4NyxzYWxtb246MTY0MTY4ODIsc2FuZHlicm93bjoxNjAzMjg2NCxzZWFncmVlbjozMDUwMzI3LHNlYXNoZWxsOjE2Nzc0NjM4LHNpZW5uYToxMDUwNjc5NyxzaWx2ZXI6MTI2MzIyNTYsc2t5Ymx1ZTo4OTAwMzMxLHNsYXRlYmx1ZTo2OTcwMDYxLHNsYXRlZ3JheTo3MzcyOTQ0LHNsYXRlZ3JleTo3MzcyOTQ0LHNub3c6MTY3NzU5MzAsc3ByaW5nZ3JlZW46NjU0MDcsc3RlZWxibHVlOjQ2MjA5ODAsdGFuOjEzODA4NzgwLHRlYWw6MzI4OTYsdGhpc3RsZToxNDIwNDg4OCx0b21hdG86MTY3MzcwOTUsdHVycXVvaXNlOjQyNTE4NTYsdmlvbGV0OjE1NjMxMDg2LHdoZWF0OjE2MTEzMzMxLHdoaXRlOjE2Nzc3MjE1LHdoaXRlc21va2U6MTYxMTkyODUseWVsbG93OjE2Nzc2OTYwLHllbGxvd2dyZWVuOjEwMTQ1MDc0fSx2aT17aDowLHM6MCxsOjB9LGtpPXtoOjAsczowLGw6MH07ZnVuY3Rpb24gamkoQSxlLHQpe3JldHVybiB0PDAmJih0Kz0xKSx0PjEmJih0LT0xKSx0PDEvNj9BKzYqKGUtQSkqdDp0PC41P2U6dDwyLzM/QSs2KihlLUEpKigyLzMtdCk6QX1jbGFzcyBKaXtjb25zdHJ1Y3RvcihBLGUsdCl7cmV0dXJuIHRoaXMuaXNDb2xvcj0hMCx0aGlzLnI9MSx0aGlzLmc9MSx0aGlzLmI9MSx0aGlzLnNldChBLGUsdCl9c2V0KEEsZSx0KXtpZih2b2lkIDA9PT1lJiZ2b2lkIDA9PT10KXtjb25zdCBlPUE7ZSYmZS5pc0NvbG9yP3RoaXMuY29weShlKToibnVtYmVyIj09dHlwZW9mIGU/dGhpcy5zZXRIZXgoZSk6InN0cmluZyI9PXR5cGVvZiBlJiZ0aGlzLnNldFN0eWxlKGUpfWVsc2UgdGhpcy5zZXRSR0IoQSxlLHQpO3JldHVybiB0aGlzfXNldFNjYWxhcihBKXtyZXR1cm4gdGhpcy5yPUEsdGhpcy5nPUEsdGhpcy5iPUEsdGhpc31zZXRIZXgoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOkplO3JldHVybiBBPU1hdGguZmxvb3IoQSksdGhpcy5yPShBPj4xNiYyNTUpLzI1NSx0aGlzLmc9KEE+PjgmMjU1KS8yNTUsdGhpcy5iPSgyNTUmQSkvMjU1LHJuLnRvV29ya2luZ0NvbG9yU3BhY2UodGhpcyxlKSx0aGlzfXNldFJHQihBLGUsdCl7bGV0IG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOnJuLndvcmtpbmdDb2xvclNwYWNlO3JldHVybiB0aGlzLnI9QSx0aGlzLmc9ZSx0aGlzLmI9dCxybi50b1dvcmtpbmdDb2xvclNwYWNlKHRoaXMsbiksdGhpc31zZXRIU0woQSxlLHQpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTpybi53b3JraW5nQ29sb3JTcGFjZTtpZihBPVN0KEEsMSksZT1HdChlLDAsMSksdD1HdCh0LDAsMSksMD09PWUpdGhpcy5yPXRoaXMuZz10aGlzLmI9dDtlbHNle2NvbnN0IG49dDw9LjU/dCooMStlKTp0K2UtdCplLGk9Mip0LW47dGhpcy5yPWppKGksbixBKzEvMyksdGhpcy5nPWppKGksbixBKSx0aGlzLmI9amkoaSxuLEEtMS8zKX1yZXR1cm4gcm4udG9Xb3JraW5nQ29sb3JTcGFjZSh0aGlzLG4pLHRoaXN9c2V0U3R5bGUoQSl7bGV0IGUsdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06SmU7ZnVuY3Rpb24gbihlKXt2b2lkIDAhPT1lJiZwYXJzZUZsb2F0KGUpPDEmJmNvbnNvbGUud2FybigiVEhSRUUuQ29sb3I6IEFscGhhIGNvbXBvbmVudCBvZiAiK0ErIiB3aWxsIGJlIGlnbm9yZWQuIil9aWYoZT0vXihcdyspXCgoW15cKV0qKVwpLy5leGVjKEEpKXtsZXQgaTtjb25zdCByPWVbMV0sbz1lWzJdO3N3aXRjaChyKXtjYXNlInJnYiI6Y2FzZSJyZ2JhIjppZihpPS9eXHMqKFxkKylccyosXHMqKFxkKylccyosXHMqKFxkKylccyooPzosXHMqKFxkKlwuP1xkKylccyopPyQvLmV4ZWMobykpcmV0dXJuIG4oaVs0XSksdGhpcy5zZXRSR0IoTWF0aC5taW4oMjU1LHBhcnNlSW50KGlbMV0sMTApKS8yNTUsTWF0aC5taW4oMjU1LHBhcnNlSW50KGlbMl0sMTApKS8yNTUsTWF0aC5taW4oMjU1LHBhcnNlSW50KGlbM10sMTApKS8yNTUsdCk7aWYoaT0vXlxzKihcZCspXCVccyosXHMqKFxkKylcJVxzKixccyooXGQrKVwlXHMqKD86LFxzKihcZCpcLj9cZCspXHMqKT8kLy5leGVjKG8pKXJldHVybiBuKGlbNF0pLHRoaXMuc2V0UkdCKE1hdGgubWluKDEwMCxwYXJzZUludChpWzFdLDEwKSkvMTAwLE1hdGgubWluKDEwMCxwYXJzZUludChpWzJdLDEwKSkvMTAwLE1hdGgubWluKDEwMCxwYXJzZUludChpWzNdLDEwKSkvMTAwLHQpO2JyZWFrO2Nhc2UiaHNsIjpjYXNlImhzbGEiOmlmKGk9L15ccyooXGQqXC4/XGQrKVxzKixccyooXGQqXC4/XGQrKVwlXHMqLFxzKihcZCpcLj9cZCspXCVccyooPzosXHMqKFxkKlwuP1xkKylccyopPyQvLmV4ZWMobykpcmV0dXJuIG4oaVs0XSksdGhpcy5zZXRIU0wocGFyc2VGbG9hdChpWzFdKS8zNjAscGFyc2VGbG9hdChpWzJdKS8xMDAscGFyc2VGbG9hdChpWzNdKS8xMDAsdCk7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLndhcm4oIlRIUkVFLkNvbG9yOiBVbmtub3duIGNvbG9yIG1vZGVsICIrQSl9fWVsc2UgaWYoZT0vXlwjKFtBLUZhLWZcZF0rKSQvLmV4ZWMoQSkpe2NvbnN0IG49ZVsxXSxpPW4ubGVuZ3RoO2lmKDM9PT1pKXJldHVybiB0aGlzLnNldFJHQihwYXJzZUludChuLmNoYXJBdCgwKSwxNikvMTUscGFyc2VJbnQobi5jaGFyQXQoMSksMTYpLzE1LHBhcnNlSW50KG4uY2hhckF0KDIpLDE2KS8xNSx0KTtpZig2PT09aSlyZXR1cm4gdGhpcy5zZXRIZXgocGFyc2VJbnQobiwxNiksdCk7Y29uc29sZS53YXJuKCJUSFJFRS5Db2xvcjogSW52YWxpZCBoZXggY29sb3IgIitBKX1lbHNlIGlmKEEmJkEubGVuZ3RoPjApcmV0dXJuIHRoaXMuc2V0Q29sb3JOYW1lKEEsdCk7cmV0dXJuIHRoaXN9c2V0Q29sb3JOYW1lKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpKZTtjb25zdCB0PUhpW0EudG9Mb3dlckNhc2UoKV07cmV0dXJuIHZvaWQgMCE9PXQ/dGhpcy5zZXRIZXgodCxlKTpjb25zb2xlLndhcm4oIlRIUkVFLkNvbG9yOiBVbmtub3duIGNvbG9yICIrQSksdGhpc31jbG9uZSgpe3JldHVybiBuZXcgdGhpcy5jb25zdHJ1Y3Rvcih0aGlzLnIsdGhpcy5nLHRoaXMuYil9Y29weShBKXtyZXR1cm4gdGhpcy5yPUEucix0aGlzLmc9QS5nLHRoaXMuYj1BLmIsdGhpc31jb3B5U1JHQlRvTGluZWFyKEEpe3JldHVybiB0aGlzLnI9cXQoQS5yKSx0aGlzLmc9cXQoQS5nKSx0aGlzLmI9cXQoQS5iKSx0aGlzfWNvcHlMaW5lYXJUb1NSR0IoQSl7cmV0dXJuIHRoaXMucj0kdChBLnIpLHRoaXMuZz0kdChBLmcpLHRoaXMuYj0kdChBLmIpLHRoaXN9Y29udmVydFNSR0JUb0xpbmVhcigpe3JldHVybiB0aGlzLmNvcHlTUkdCVG9MaW5lYXIodGhpcyksdGhpc31jb252ZXJ0TGluZWFyVG9TUkdCKCl7cmV0dXJuIHRoaXMuY29weUxpbmVhclRvU1JHQih0aGlzKSx0aGlzfWdldEhleCgpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpKZTtyZXR1cm4gcm4uZnJvbVdvcmtpbmdDb2xvclNwYWNlKHppLmNvcHkodGhpcyksQSksNjU1MzYqTWF0aC5yb3VuZChHdCgyNTUqemkuciwwLDI1NSkpKzI1NipNYXRoLnJvdW5kKEd0KDI1NSp6aS5nLDAsMjU1KSkrTWF0aC5yb3VuZChHdCgyNTUqemkuYiwwLDI1NSkpfWdldEhleFN0cmluZygpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpKZTtyZXR1cm4oIjAwMDAwMCIrdGhpcy5nZXRIZXgoQSkudG9TdHJpbmcoMTYpKS5zbGljZSgtNil9Z2V0SFNMKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpybi53b3JraW5nQ29sb3JTcGFjZTtybi5mcm9tV29ya2luZ0NvbG9yU3BhY2UoemkuY29weSh0aGlzKSxlKTtjb25zdCB0PXppLnIsbj16aS5nLGk9emkuYixyPU1hdGgubWF4KHQsbixpKSxvPU1hdGgubWluKHQsbixpKTtsZXQgcyxhO2NvbnN0IEI9KG8rcikvMjtpZihvPT09cilzPTAsYT0wO2Vsc2V7Y29uc3QgQT1yLW87c3dpdGNoKGE9Qjw9LjU/QS8ocitvKTpBLygyLXItbykscil7Y2FzZSB0OnM9KG4taSkvQSsobjxpPzY6MCk7YnJlYWs7Y2FzZSBuOnM9KGktdCkvQSsyO2JyZWFrO2Nhc2UgaTpzPSh0LW4pL0ErNH1zLz02fXJldHVybiBBLmg9cyxBLnM9YSxBLmw9QixBfWdldFJHQihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06cm4ud29ya2luZ0NvbG9yU3BhY2U7cmV0dXJuIHJuLmZyb21Xb3JraW5nQ29sb3JTcGFjZSh6aS5jb3B5KHRoaXMpLGUpLEEucj16aS5yLEEuZz16aS5nLEEuYj16aS5iLEF9Z2V0U3R5bGUoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06SmU7cm4uZnJvbVdvcmtpbmdDb2xvclNwYWNlKHppLmNvcHkodGhpcyksQSk7Y29uc3QgZT16aS5yLHQ9emkuZyxuPXppLmI7cmV0dXJuIEEhPT1KZT8iY29sb3IoIi5jb25jYXQoQSwiICIpLmNvbmNhdChlLnRvRml4ZWQoMyksIiAiKS5jb25jYXQodC50b0ZpeGVkKDMpLCIgIikuY29uY2F0KG4udG9GaXhlZCgzKSwiKSIpOiJyZ2IoIi5jb25jYXQoTWF0aC5yb3VuZCgyNTUqZSksIiwiKS5jb25jYXQoTWF0aC5yb3VuZCgyNTUqdCksIiwiKS5jb25jYXQoTWF0aC5yb3VuZCgyNTUqbiksIikiKX1vZmZzZXRIU0woQSxlLHQpe3JldHVybiB0aGlzLmdldEhTTCh2aSksdmkuaCs9QSx2aS5zKz1lLHZpLmwrPXQsdGhpcy5zZXRIU0wodmkuaCx2aS5zLHZpLmwpLHRoaXN9YWRkKEEpe3JldHVybiB0aGlzLnIrPUEucix0aGlzLmcrPUEuZyx0aGlzLmIrPUEuYix0aGlzfWFkZENvbG9ycyhBLGUpe3JldHVybiB0aGlzLnI9QS5yK2Uucix0aGlzLmc9QS5nK2UuZyx0aGlzLmI9QS5iK2UuYix0aGlzfWFkZFNjYWxhcihBKXtyZXR1cm4gdGhpcy5yKz1BLHRoaXMuZys9QSx0aGlzLmIrPUEsdGhpc31zdWIoQSl7cmV0dXJuIHRoaXMucj1NYXRoLm1heCgwLHRoaXMuci1BLnIpLHRoaXMuZz1NYXRoLm1heCgwLHRoaXMuZy1BLmcpLHRoaXMuYj1NYXRoLm1heCgwLHRoaXMuYi1BLmIpLHRoaXN9bXVsdGlwbHkoQSl7cmV0dXJuIHRoaXMucio9QS5yLHRoaXMuZyo9QS5nLHRoaXMuYio9QS5iLHRoaXN9bXVsdGlwbHlTY2FsYXIoQSl7cmV0dXJuIHRoaXMucio9QSx0aGlzLmcqPUEsdGhpcy5iKj1BLHRoaXN9bGVycChBLGUpe3JldHVybiB0aGlzLnIrPShBLnItdGhpcy5yKSplLHRoaXMuZys9KEEuZy10aGlzLmcpKmUsdGhpcy5iKz0oQS5iLXRoaXMuYikqZSx0aGlzfWxlcnBDb2xvcnMoQSxlLHQpe3JldHVybiB0aGlzLnI9QS5yKyhlLnItQS5yKSp0LHRoaXMuZz1BLmcrKGUuZy1BLmcpKnQsdGhpcy5iPUEuYisoZS5iLUEuYikqdCx0aGlzfWxlcnBIU0woQSxlKXt0aGlzLmdldEhTTCh2aSksQS5nZXRIU0woa2kpO2NvbnN0IHQ9YnQodmkuaCxraS5oLGUpLG49YnQodmkucyxraS5zLGUpLGk9YnQodmkubCxraS5sLGUpO3JldHVybiB0aGlzLnNldEhTTCh0LG4saSksdGhpc31zZXRGcm9tVmVjdG9yMyhBKXtyZXR1cm4gdGhpcy5yPUEueCx0aGlzLmc9QS55LHRoaXMuYj1BLnosdGhpc31hcHBseU1hdHJpeDMoQSl7Y29uc3QgZT10aGlzLnIsdD10aGlzLmcsbj10aGlzLmIsaT1BLmVsZW1lbnRzO3JldHVybiB0aGlzLnI9aVswXSplK2lbM10qdCtpWzZdKm4sdGhpcy5nPWlbMV0qZStpWzRdKnQraVs3XSpuLHRoaXMuYj1pWzJdKmUraVs1XSp0K2lbOF0qbix0aGlzfWVxdWFscyhBKXtyZXR1cm4gQS5yPT09dGhpcy5yJiZBLmc9PT10aGlzLmcmJkEuYj09PXRoaXMuYn1mcm9tQXJyYXkoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7cmV0dXJuIHRoaXMucj1BW2VdLHRoaXMuZz1BW2UrMV0sdGhpcy5iPUFbZSsyXSx0aGlzfXRvQXJyYXkoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06W10sZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MDtyZXR1cm4gQVtlXT10aGlzLnIsQVtlKzFdPXRoaXMuZyxBW2UrMl09dGhpcy5iLEF9ZnJvbUJ1ZmZlckF0dHJpYnV0ZShBLGUpe3JldHVybiB0aGlzLnI9QS5nZXRYKGUpLHRoaXMuZz1BLmdldFkoZSksdGhpcy5iPUEuZ2V0WihlKSx0aGlzfXRvSlNPTigpe3JldHVybiB0aGlzLmdldEhleCgpfSpbU3ltYm9sLml0ZXJhdG9yXSgpe3lpZWxkIHRoaXMucix5aWVsZCB0aGlzLmcseWllbGQgdGhpcy5ifX1jb25zdCB6aT1uZXcgSmk7SmkuTkFNRVM9SGk7Y2xhc3MgTGkgZXh0ZW5kcyBiaXtjb25zdHJ1Y3RvcihBKXtzdXBlcigpLHRoaXMuaXNNZXNoQmFzaWNNYXRlcmlhbD0hMCx0aGlzLnR5cGU9Ik1lc2hCYXNpY01hdGVyaWFsIix0aGlzLmNvbG9yPW5ldyBKaSgxNjc3NzIxNSksdGhpcy5tYXA9bnVsbCx0aGlzLmxpZ2h0TWFwPW51bGwsdGhpcy5saWdodE1hcEludGVuc2l0eT0xLHRoaXMuYW9NYXA9bnVsbCx0aGlzLmFvTWFwSW50ZW5zaXR5PTEsdGhpcy5zcGVjdWxhck1hcD1udWxsLHRoaXMuYWxwaGFNYXA9bnVsbCx0aGlzLmVudk1hcD1udWxsLHRoaXMuY29tYmluZT1LLHRoaXMucmVmbGVjdGl2aXR5PTEsdGhpcy5yZWZyYWN0aW9uUmF0aW89Ljk4LHRoaXMud2lyZWZyYW1lPSExLHRoaXMud2lyZWZyYW1lTGluZXdpZHRoPTEsdGhpcy53aXJlZnJhbWVMaW5lY2FwPSJyb3VuZCIsdGhpcy53aXJlZnJhbWVMaW5lam9pbj0icm91bmQiLHRoaXMuZm9nPSEwLHRoaXMuc2V0VmFsdWVzKEEpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5jb2xvci5jb3B5KEEuY29sb3IpLHRoaXMubWFwPUEubWFwLHRoaXMubGlnaHRNYXA9QS5saWdodE1hcCx0aGlzLmxpZ2h0TWFwSW50ZW5zaXR5PUEubGlnaHRNYXBJbnRlbnNpdHksdGhpcy5hb01hcD1BLmFvTWFwLHRoaXMuYW9NYXBJbnRlbnNpdHk9QS5hb01hcEludGVuc2l0eSx0aGlzLnNwZWN1bGFyTWFwPUEuc3BlY3VsYXJNYXAsdGhpcy5hbHBoYU1hcD1BLmFscGhhTWFwLHRoaXMuZW52TWFwPUEuZW52TWFwLHRoaXMuY29tYmluZT1BLmNvbWJpbmUsdGhpcy5yZWZsZWN0aXZpdHk9QS5yZWZsZWN0aXZpdHksdGhpcy5yZWZyYWN0aW9uUmF0aW89QS5yZWZyYWN0aW9uUmF0aW8sdGhpcy53aXJlZnJhbWU9QS53aXJlZnJhbWUsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9QS53aXJlZnJhbWVMaW5ld2lkdGgsdGhpcy53aXJlZnJhbWVMaW5lY2FwPUEud2lyZWZyYW1lTGluZWNhcCx0aGlzLndpcmVmcmFtZUxpbmVqb2luPUEud2lyZWZyYW1lTGluZWpvaW4sdGhpcy5mb2c9QS5mb2csdGhpc319Y29uc3QgUGk9T2koKTtmdW5jdGlvbiBPaSgpe2NvbnN0IEE9bmV3IEFycmF5QnVmZmVyKDQpLGU9bmV3IEZsb2F0MzJBcnJheShBKSx0PW5ldyBVaW50MzJBcnJheShBKSxuPW5ldyBVaW50MzJBcnJheSg1MTIpLGk9bmV3IFVpbnQzMkFycmF5KDUxMik7Zm9yKGxldCBBPTA7QTwyNTY7KytBKXtjb25zdCBlPUEtMTI3O2U8LTI3PyhuW0FdPTAsblsyNTZ8QV09MzI3NjgsaVtBXT0yNCxpWzI1NnxBXT0yNCk6ZTwtMTQ/KG5bQV09MTAyND4+LWUtMTQsblsyNTZ8QV09MTAyND4+LWUtMTR8MzI3NjgsaVtBXT0tZS0xLGlbMjU2fEFdPS1lLTEpOmU8PTE1PyhuW0FdPWUrMTU8PDEwLG5bMjU2fEFdPWUrMTU8PDEwfDMyNzY4LGlbQV09MTMsaVsyNTZ8QV09MTMpOmU8MTI4PyhuW0FdPTMxNzQ0LG5bMjU2fEFdPTY0NTEyLGlbQV09MjQsaVsyNTZ8QV09MjQpOihuW0FdPTMxNzQ0LG5bMjU2fEFdPTY0NTEyLGlbQV09MTMsaVsyNTZ8QV09MTMpfWNvbnN0IHI9bmV3IFVpbnQzMkFycmF5KDIwNDgpLG89bmV3IFVpbnQzMkFycmF5KDY0KSxzPW5ldyBVaW50MzJBcnJheSg2NCk7Zm9yKGxldCBBPTE7QTwxMDI0OysrQSl7bGV0IGU9QTw8MTMsdD0wO2Zvcig7MD09KDgzODg2MDgmZSk7KWU8PD0xLHQtPTgzODg2MDg7ZSY9LTgzODg2MDksdCs9OTQ3OTEyNzA0LHJbQV09ZXx0fWZvcihsZXQgQT0xMDI0O0E8MjA0ODsrK0EpcltBXT05Mzk1MjQwOTYrKEEtMTAyNDw8MTMpO2ZvcihsZXQgQT0xO0E8MzE7KytBKW9bQV09QTw8MjM7b1szMV09MTE5OTU3MDk0NCxvWzMyXT0yMTQ3NDgzNjQ4O2ZvcihsZXQgQT0zMztBPDYzOysrQSlvW0FdPTIxNDc0ODM2NDgrKEEtMzI8PDIzKTtvWzYzXT0zMzQ3MDU0NTkyO2ZvcihsZXQgQT0xO0E8NjQ7KytBKTMyIT09QSYmKHNbQV09MTAyNCk7cmV0dXJue2Zsb2F0VmlldzplLHVpbnQzMlZpZXc6dCxiYXNlVGFibGU6bixzaGlmdFRhYmxlOmksbWFudGlzc2FUYWJsZTpyLGV4cG9uZW50VGFibGU6byxvZmZzZXRUYWJsZTpzfX1mdW5jdGlvbiBWaShBKXtNYXRoLmFicyhBKT42NTUwNCYmY29uc29sZS53YXJuKCJUSFJFRS5EYXRhVXRpbHMudG9IYWxmRmxvYXQoKTogVmFsdWUgb3V0IG9mIHJhbmdlLiIpLEE9R3QoQSwtNjU1MDQsNjU1MDQpLFBpLmZsb2F0Vmlld1swXT1BO2NvbnN0IGU9UGkudWludDMyVmlld1swXSx0PWU+PjIzJjUxMTtyZXR1cm4gUGkuYmFzZVRhYmxlW3RdKygoODM4ODYwNyZlKT4+UGkuc2hpZnRUYWJsZVt0XSl9ZnVuY3Rpb24gV2koQSl7Y29uc3QgZT1BPj4xMDtyZXR1cm4gUGkudWludDMyVmlld1swXT1QaS5tYW50aXNzYVRhYmxlW1BpLm9mZnNldFRhYmxlW2VdKygxMDIzJkEpXStQaS5leHBvbmVudFRhYmxlW2VdLFBpLmZsb2F0Vmlld1swXX1jb25zdCBLaT17dG9IYWxmRmxvYXQ6VmksZnJvbUhhbGZGbG9hdDpXaX0sWGk9bmV3IGRuLFppPW5ldyBMdDtjbGFzcyBfaXtjb25zdHJ1Y3RvcihBLGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl07aWYoQXJyYXkuaXNBcnJheShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJUSFJFRS5CdWZmZXJBdHRyaWJ1dGU6IGFycmF5IHNob3VsZCBiZSBhIFR5cGVkIEFycmF5LiIpO3RoaXMuaXNCdWZmZXJBdHRyaWJ1dGU9ITAsdGhpcy5uYW1lPSIiLHRoaXMuYXJyYXk9QSx0aGlzLml0ZW1TaXplPWUsdGhpcy5jb3VudD12b2lkIDAhPT1BP0EubGVuZ3RoL2U6MCx0aGlzLm5vcm1hbGl6ZWQ9dCx0aGlzLnVzYWdlPXV0LHRoaXMudXBkYXRlUmFuZ2U9e29mZnNldDowLGNvdW50Oi0xfSx0aGlzLmdwdVR5cGU9TkEsdGhpcy52ZXJzaW9uPTB9b25VcGxvYWRDYWxsYmFjaygpe31zZXQgbmVlZHNVcGRhdGUoQSl7ITA9PT1BJiZ0aGlzLnZlcnNpb24rK31zZXRVc2FnZShBKXtyZXR1cm4gdGhpcy51c2FnZT1BLHRoaXN9Y29weShBKXtyZXR1cm4gdGhpcy5uYW1lPUEubmFtZSx0aGlzLmFycmF5PW5ldyBBLmFycmF5LmNvbnN0cnVjdG9yKEEuYXJyYXkpLHRoaXMuaXRlbVNpemU9QS5pdGVtU2l6ZSx0aGlzLmNvdW50PUEuY291bnQsdGhpcy5ub3JtYWxpemVkPUEubm9ybWFsaXplZCx0aGlzLnVzYWdlPUEudXNhZ2UsdGhpcy5ncHVUeXBlPUEuZ3B1VHlwZSx0aGlzfWNvcHlBdChBLGUsdCl7QSo9dGhpcy5pdGVtU2l6ZSx0Kj1lLml0ZW1TaXplO2ZvcihsZXQgbj0wLGk9dGhpcy5pdGVtU2l6ZTtuPGk7bisrKXRoaXMuYXJyYXlbQStuXT1lLmFycmF5W3Qrbl07cmV0dXJuIHRoaXN9Y29weUFycmF5KEEpe3JldHVybiB0aGlzLmFycmF5LnNldChBKSx0aGlzfWFwcGx5TWF0cml4MyhBKXtpZigyPT09dGhpcy5pdGVtU2l6ZSlmb3IobGV0IGU9MCx0PXRoaXMuY291bnQ7ZTx0O2UrKylaaS5mcm9tQnVmZmVyQXR0cmlidXRlKHRoaXMsZSksWmkuYXBwbHlNYXRyaXgzKEEpLHRoaXMuc2V0WFkoZSxaaS54LFppLnkpO2Vsc2UgaWYoMz09PXRoaXMuaXRlbVNpemUpZm9yKGxldCBlPTAsdD10aGlzLmNvdW50O2U8dDtlKyspWGkuZnJvbUJ1ZmZlckF0dHJpYnV0ZSh0aGlzLGUpLFhpLmFwcGx5TWF0cml4MyhBKSx0aGlzLnNldFhZWihlLFhpLngsWGkueSxYaS56KTtyZXR1cm4gdGhpc31hcHBseU1hdHJpeDQoQSl7Zm9yKGxldCBlPTAsdD10aGlzLmNvdW50O2U8dDtlKyspWGkuZnJvbUJ1ZmZlckF0dHJpYnV0ZSh0aGlzLGUpLFhpLmFwcGx5TWF0cml4NChBKSx0aGlzLnNldFhZWihlLFhpLngsWGkueSxYaS56KTtyZXR1cm4gdGhpc31hcHBseU5vcm1hbE1hdHJpeChBKXtmb3IobGV0IGU9MCx0PXRoaXMuY291bnQ7ZTx0O2UrKylYaS5mcm9tQnVmZmVyQXR0cmlidXRlKHRoaXMsZSksWGkuYXBwbHlOb3JtYWxNYXRyaXgoQSksdGhpcy5zZXRYWVooZSxYaS54LFhpLnksWGkueik7cmV0dXJuIHRoaXN9dHJhbnNmb3JtRGlyZWN0aW9uKEEpe2ZvcihsZXQgZT0wLHQ9dGhpcy5jb3VudDtlPHQ7ZSsrKVhpLmZyb21CdWZmZXJBdHRyaWJ1dGUodGhpcyxlKSxYaS50cmFuc2Zvcm1EaXJlY3Rpb24oQSksdGhpcy5zZXRYWVooZSxYaS54LFhpLnksWGkueik7cmV0dXJuIHRoaXN9c2V0KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3JldHVybiB0aGlzLmFycmF5LnNldChBLGUpLHRoaXN9Z2V0WChBKXtsZXQgZT10aGlzLmFycmF5W0EqdGhpcy5pdGVtU2l6ZV07cmV0dXJuIHRoaXMubm9ybWFsaXplZCYmKGU9anQoZSx0aGlzLmFycmF5KSksZX1zZXRYKEEsZSl7cmV0dXJuIHRoaXMubm9ybWFsaXplZCYmKGU9SnQoZSx0aGlzLmFycmF5KSksdGhpcy5hcnJheVtBKnRoaXMuaXRlbVNpemVdPWUsdGhpc31nZXRZKEEpe2xldCBlPXRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzFdO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9c2V0WShBLGUpe3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSkpLHRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzFdPWUsdGhpc31nZXRaKEEpe2xldCBlPXRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzJdO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9c2V0WihBLGUpe3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSkpLHRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzJdPWUsdGhpc31nZXRXKEEpe2xldCBlPXRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzNdO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9c2V0VyhBLGUpe3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSkpLHRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzNdPWUsdGhpc31zZXRYWShBLGUsdCl7cmV0dXJuIEEqPXRoaXMuaXRlbVNpemUsdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpLHQ9SnQodCx0aGlzLmFycmF5KSksdGhpcy5hcnJheVtBKzBdPWUsdGhpcy5hcnJheVtBKzFdPXQsdGhpc31zZXRYWVooQSxlLHQsbil7cmV0dXJuIEEqPXRoaXMuaXRlbVNpemUsdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpLHQ9SnQodCx0aGlzLmFycmF5KSxuPUp0KG4sdGhpcy5hcnJheSkpLHRoaXMuYXJyYXlbQSswXT1lLHRoaXMuYXJyYXlbQSsxXT10LHRoaXMuYXJyYXlbQSsyXT1uLHRoaXN9c2V0WFlaVyhBLGUsdCxuLGkpe3JldHVybiBBKj10aGlzLml0ZW1TaXplLHRoaXMubm9ybWFsaXplZCYmKGU9SnQoZSx0aGlzLmFycmF5KSx0PUp0KHQsdGhpcy5hcnJheSksbj1KdChuLHRoaXMuYXJyYXkpLGk9SnQoaSx0aGlzLmFycmF5KSksdGhpcy5hcnJheVtBKzBdPWUsdGhpcy5hcnJheVtBKzFdPXQsdGhpcy5hcnJheVtBKzJdPW4sdGhpcy5hcnJheVtBKzNdPWksdGhpc31vblVwbG9hZChBKXtyZXR1cm4gdGhpcy5vblVwbG9hZENhbGxiYWNrPUEsdGhpc31jbG9uZSgpe3JldHVybiBuZXcgdGhpcy5jb25zdHJ1Y3Rvcih0aGlzLmFycmF5LHRoaXMuaXRlbVNpemUpLmNvcHkodGhpcyl9dG9KU09OKCl7Y29uc3QgQT17aXRlbVNpemU6dGhpcy5pdGVtU2l6ZSx0eXBlOnRoaXMuYXJyYXkuY29uc3RydWN0b3IubmFtZSxhcnJheTpBcnJheS5mcm9tKHRoaXMuYXJyYXkpLG5vcm1hbGl6ZWQ6dGhpcy5ub3JtYWxpemVkfTtyZXR1cm4iIiE9PXRoaXMubmFtZSYmKEEubmFtZT10aGlzLm5hbWUpLHRoaXMudXNhZ2UhPT11dCYmKEEudXNhZ2U9dGhpcy51c2FnZSksMD09PXRoaXMudXBkYXRlUmFuZ2Uub2Zmc2V0JiYtMT09PXRoaXMudXBkYXRlUmFuZ2UuY291bnR8fChBLnVwZGF0ZVJhbmdlPXRoaXMudXBkYXRlUmFuZ2UpLEF9Y29weUNvbG9yc0FycmF5KCl7Y29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyQXR0cmlidXRlOiBjb3B5Q29sb3JzQXJyYXkoKSB3YXMgcmVtb3ZlZCBpbiByMTQ0LiIpfWNvcHlWZWN0b3Iyc0FycmF5KCl7Y29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyQXR0cmlidXRlOiBjb3B5VmVjdG9yMnNBcnJheSgpIHdhcyByZW1vdmVkIGluIHIxNDQuIil9Y29weVZlY3RvcjNzQXJyYXkoKXtjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJBdHRyaWJ1dGU6IGNvcHlWZWN0b3Izc0FycmF5KCkgd2FzIHJlbW92ZWQgaW4gcjE0NC4iKX1jb3B5VmVjdG9yNHNBcnJheSgpe2NvbnNvbGUuZXJyb3IoIlRIUkVFLkJ1ZmZlckF0dHJpYnV0ZTogY29weVZlY3RvcjRzQXJyYXkoKSB3YXMgcmVtb3ZlZCBpbiByMTQ0LiIpfX1jbGFzcyBxaSBleHRlbmRzIF9pe2NvbnN0cnVjdG9yKEEsZSx0KXtzdXBlcihuZXcgSW50OEFycmF5KEEpLGUsdCl9fWNsYXNzICRpIGV4dGVuZHMgX2l7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKG5ldyBVaW50OEFycmF5KEEpLGUsdCl9fWNsYXNzIEFyIGV4dGVuZHMgX2l7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKG5ldyBVaW50OENsYW1wZWRBcnJheShBKSxlLHQpfX1jbGFzcyBlciBleHRlbmRzIF9pe2NvbnN0cnVjdG9yKEEsZSx0KXtzdXBlcihuZXcgSW50MTZBcnJheShBKSxlLHQpfX1jbGFzcyB0ciBleHRlbmRzIF9pe2NvbnN0cnVjdG9yKEEsZSx0KXtzdXBlcihuZXcgVWludDE2QXJyYXkoQSksZSx0KX19Y2xhc3MgbnIgZXh0ZW5kcyBfaXtjb25zdHJ1Y3RvcihBLGUsdCl7c3VwZXIobmV3IEludDMyQXJyYXkoQSksZSx0KX19Y2xhc3MgaXIgZXh0ZW5kcyBfaXtjb25zdHJ1Y3RvcihBLGUsdCl7c3VwZXIobmV3IFVpbnQzMkFycmF5KEEpLGUsdCl9fWNsYXNzIHJyIGV4dGVuZHMgX2l7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKG5ldyBVaW50MTZBcnJheShBKSxlLHQpLHRoaXMuaXNGbG9hdDE2QnVmZmVyQXR0cmlidXRlPSEwfWdldFgoQSl7bGV0IGU9V2kodGhpcy5hcnJheVtBKnRoaXMuaXRlbVNpemVdKTtyZXR1cm4gdGhpcy5ub3JtYWxpemVkJiYoZT1qdChlLHRoaXMuYXJyYXkpKSxlfXNldFgoQSxlKXtyZXR1cm4gdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpKSx0aGlzLmFycmF5W0EqdGhpcy5pdGVtU2l6ZV09VmkoZSksdGhpc31nZXRZKEEpe2xldCBlPVdpKHRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzFdKTtyZXR1cm4gdGhpcy5ub3JtYWxpemVkJiYoZT1qdChlLHRoaXMuYXJyYXkpKSxlfXNldFkoQSxlKXtyZXR1cm4gdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpKSx0aGlzLmFycmF5W0EqdGhpcy5pdGVtU2l6ZSsxXT1WaShlKSx0aGlzfWdldFooQSl7bGV0IGU9V2kodGhpcy5hcnJheVtBKnRoaXMuaXRlbVNpemUrMl0pO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9c2V0WihBLGUpe3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSkpLHRoaXMuYXJyYXlbQSp0aGlzLml0ZW1TaXplKzJdPVZpKGUpLHRoaXN9Z2V0VyhBKXtsZXQgZT1XaSh0aGlzLmFycmF5W0EqdGhpcy5pdGVtU2l6ZSszXSk7cmV0dXJuIHRoaXMubm9ybWFsaXplZCYmKGU9anQoZSx0aGlzLmFycmF5KSksZX1zZXRXKEEsZSl7cmV0dXJuIHRoaXMubm9ybWFsaXplZCYmKGU9SnQoZSx0aGlzLmFycmF5KSksdGhpcy5hcnJheVtBKnRoaXMuaXRlbVNpemUrM109VmkoZSksdGhpc31zZXRYWShBLGUsdCl7cmV0dXJuIEEqPXRoaXMuaXRlbVNpemUsdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpLHQ9SnQodCx0aGlzLmFycmF5KSksdGhpcy5hcnJheVtBKzBdPVZpKGUpLHRoaXMuYXJyYXlbQSsxXT1WaSh0KSx0aGlzfXNldFhZWihBLGUsdCxuKXtyZXR1cm4gQSo9dGhpcy5pdGVtU2l6ZSx0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSksdD1KdCh0LHRoaXMuYXJyYXkpLG49SnQobix0aGlzLmFycmF5KSksdGhpcy5hcnJheVtBKzBdPVZpKGUpLHRoaXMuYXJyYXlbQSsxXT1WaSh0KSx0aGlzLmFycmF5W0ErMl09VmkobiksdGhpc31zZXRYWVpXKEEsZSx0LG4saSl7cmV0dXJuIEEqPXRoaXMuaXRlbVNpemUsdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpLHQ9SnQodCx0aGlzLmFycmF5KSxuPUp0KG4sdGhpcy5hcnJheSksaT1KdChpLHRoaXMuYXJyYXkpKSx0aGlzLmFycmF5W0ErMF09VmkoZSksdGhpcy5hcnJheVtBKzFdPVZpKHQpLHRoaXMuYXJyYXlbQSsyXT1WaShuKSx0aGlzLmFycmF5W0ErM109VmkoaSksdGhpc319Y2xhc3Mgb3IgZXh0ZW5kcyBfaXtjb25zdHJ1Y3RvcihBLGUsdCl7c3VwZXIobmV3IEZsb2F0MzJBcnJheShBKSxlLHQpfX1jbGFzcyBzciBleHRlbmRzIF9pe2NvbnN0cnVjdG9yKEEsZSx0KXtzdXBlcihuZXcgRmxvYXQ2NEFycmF5KEEpLGUsdCl9fWxldCBhcj0wO2NvbnN0IEJyPW5ldyBfbixjcj1uZXcgcGksZ3I9bmV3IGRuLEVyPW5ldyBGbixRcj1uZXcgRm4sdXI9bmV3IGRuO2NsYXNzIGxyIGV4dGVuZHMgTnR7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMuaXNCdWZmZXJHZW9tZXRyeT0hMCxPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywiaWQiLHt2YWx1ZTphcisrfSksdGhpcy51dWlkPVJ0KCksdGhpcy5uYW1lPSIiLHRoaXMudHlwZT0iQnVmZmVyR2VvbWV0cnkiLHRoaXMuaW5kZXg9bnVsbCx0aGlzLmF0dHJpYnV0ZXM9e30sdGhpcy5tb3JwaEF0dHJpYnV0ZXM9e30sdGhpcy5tb3JwaFRhcmdldHNSZWxhdGl2ZT0hMSx0aGlzLmdyb3Vwcz1bXSx0aGlzLmJvdW5kaW5nQm94PW51bGwsdGhpcy5ib3VuZGluZ1NwaGVyZT1udWxsLHRoaXMuZHJhd1JhbmdlPXtzdGFydDowLGNvdW50OjEvMH0sdGhpcy51c2VyRGF0YT17fX1nZXRJbmRleCgpe3JldHVybiB0aGlzLmluZGV4fXNldEluZGV4KEEpe3JldHVybiBBcnJheS5pc0FycmF5KEEpP3RoaXMuaW5kZXg9bmV3KFZ0KEEpP2lyOnRyKShBLDEpOnRoaXMuaW5kZXg9QSx0aGlzfWdldEF0dHJpYnV0ZShBKXtyZXR1cm4gdGhpcy5hdHRyaWJ1dGVzW0FdfXNldEF0dHJpYnV0ZShBLGUpe3JldHVybiB0aGlzLmF0dHJpYnV0ZXNbQV09ZSx0aGlzfWRlbGV0ZUF0dHJpYnV0ZShBKXtyZXR1cm4gZGVsZXRlIHRoaXMuYXR0cmlidXRlc1tBXSx0aGlzfWhhc0F0dHJpYnV0ZShBKXtyZXR1cm4gdm9pZCAwIT09dGhpcy5hdHRyaWJ1dGVzW0FdfWFkZEdyb3VwKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjA7dGhpcy5ncm91cHMucHVzaCh7c3RhcnQ6QSxjb3VudDplLG1hdGVyaWFsSW5kZXg6dH0pfWNsZWFyR3JvdXBzKCl7dGhpcy5ncm91cHM9W119c2V0RHJhd1JhbmdlKEEsZSl7dGhpcy5kcmF3UmFuZ2Uuc3RhcnQ9QSx0aGlzLmRyYXdSYW5nZS5jb3VudD1lfWFwcGx5TWF0cml4NChBKXtjb25zdCBlPXRoaXMuYXR0cmlidXRlcy5wb3NpdGlvbjt2b2lkIDAhPT1lJiYoZS5hcHBseU1hdHJpeDQoQSksZS5uZWVkc1VwZGF0ZT0hMCk7Y29uc3QgdD10aGlzLmF0dHJpYnV0ZXMubm9ybWFsO2lmKHZvaWQgMCE9PXQpe2NvbnN0IGU9KG5ldyBQdCkuZ2V0Tm9ybWFsTWF0cml4KEEpO3QuYXBwbHlOb3JtYWxNYXRyaXgoZSksdC5uZWVkc1VwZGF0ZT0hMH1jb25zdCBuPXRoaXMuYXR0cmlidXRlcy50YW5nZW50O3JldHVybiB2b2lkIDAhPT1uJiYobi50cmFuc2Zvcm1EaXJlY3Rpb24oQSksbi5uZWVkc1VwZGF0ZT0hMCksbnVsbCE9PXRoaXMuYm91bmRpbmdCb3gmJnRoaXMuY29tcHV0ZUJvdW5kaW5nQm94KCksbnVsbCE9PXRoaXMuYm91bmRpbmdTcGhlcmUmJnRoaXMuY29tcHV0ZUJvdW5kaW5nU3BoZXJlKCksdGhpc31hcHBseVF1YXRlcm5pb24oQSl7cmV0dXJuIEJyLm1ha2VSb3RhdGlvbkZyb21RdWF0ZXJuaW9uKEEpLHRoaXMuYXBwbHlNYXRyaXg0KEJyKSx0aGlzfXJvdGF0ZVgoQSl7cmV0dXJuIEJyLm1ha2VSb3RhdGlvblgoQSksdGhpcy5hcHBseU1hdHJpeDQoQnIpLHRoaXN9cm90YXRlWShBKXtyZXR1cm4gQnIubWFrZVJvdGF0aW9uWShBKSx0aGlzLmFwcGx5TWF0cml4NChCciksdGhpc31yb3RhdGVaKEEpe3JldHVybiBCci5tYWtlUm90YXRpb25aKEEpLHRoaXMuYXBwbHlNYXRyaXg0KEJyKSx0aGlzfXRyYW5zbGF0ZShBLGUsdCl7cmV0dXJuIEJyLm1ha2VUcmFuc2xhdGlvbihBLGUsdCksdGhpcy5hcHBseU1hdHJpeDQoQnIpLHRoaXN9c2NhbGUoQSxlLHQpe3JldHVybiBCci5tYWtlU2NhbGUoQSxlLHQpLHRoaXMuYXBwbHlNYXRyaXg0KEJyKSx0aGlzfWxvb2tBdChBKXtyZXR1cm4gY3IubG9va0F0KEEpLGNyLnVwZGF0ZU1hdHJpeCgpLHRoaXMuYXBwbHlNYXRyaXg0KGNyLm1hdHJpeCksdGhpc31jZW50ZXIoKXtyZXR1cm4gdGhpcy5jb21wdXRlQm91bmRpbmdCb3goKSx0aGlzLmJvdW5kaW5nQm94LmdldENlbnRlcihncikubmVnYXRlKCksdGhpcy50cmFuc2xhdGUoZ3IueCxnci55LGdyLnopLHRoaXN9c2V0RnJvbVBvaW50cyhBKXtjb25zdCBlPVtdO2ZvcihsZXQgdD0wLG49QS5sZW5ndGg7dDxuO3QrKyl7Y29uc3Qgbj1BW3RdO2UucHVzaChuLngsbi55LG4uenx8MCl9cmV0dXJuIHRoaXMuc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKGUsMykpLHRoaXN9Y29tcHV0ZUJvdW5kaW5nQm94KCl7bnVsbD09PXRoaXMuYm91bmRpbmdCb3gmJih0aGlzLmJvdW5kaW5nQm94PW5ldyBGbik7Y29uc3QgQT10aGlzLmF0dHJpYnV0ZXMucG9zaXRpb24sZT10aGlzLm1vcnBoQXR0cmlidXRlcy5wb3NpdGlvbjtpZihBJiZBLmlzR0xCdWZmZXJBdHRyaWJ1dGUpcmV0dXJuIGNvbnNvbGUuZXJyb3IoJ1RIUkVFLkJ1ZmZlckdlb21ldHJ5LmNvbXB1dGVCb3VuZGluZ0JveCgpOiBHTEJ1ZmZlckF0dHJpYnV0ZSByZXF1aXJlcyBhIG1hbnVhbCBib3VuZGluZyBib3guIEFsdGVybmF0aXZlbHkgc2V0ICJtZXNoLmZydXN0dW1DdWxsZWQiIHRvICJmYWxzZSIuJyx0aGlzKSx2b2lkIHRoaXMuYm91bmRpbmdCb3guc2V0KG5ldyBkbigtMS8wLC0xLzAsLTEvMCksbmV3IGRuKDEvMCwxLzAsMS8wKSk7aWYodm9pZCAwIT09QSl7aWYodGhpcy5ib3VuZGluZ0JveC5zZXRGcm9tQnVmZmVyQXR0cmlidXRlKEEpLGUpZm9yKGxldCBBPTAsdD1lLmxlbmd0aDtBPHQ7QSsrKXtjb25zdCB0PWVbQV07RXIuc2V0RnJvbUJ1ZmZlckF0dHJpYnV0ZSh0KSx0aGlzLm1vcnBoVGFyZ2V0c1JlbGF0aXZlPyh1ci5hZGRWZWN0b3JzKHRoaXMuYm91bmRpbmdCb3gubWluLEVyLm1pbiksdGhpcy5ib3VuZGluZ0JveC5leHBhbmRCeVBvaW50KHVyKSx1ci5hZGRWZWN0b3JzKHRoaXMuYm91bmRpbmdCb3gubWF4LEVyLm1heCksdGhpcy5ib3VuZGluZ0JveC5leHBhbmRCeVBvaW50KHVyKSk6KHRoaXMuYm91bmRpbmdCb3guZXhwYW5kQnlQb2ludChFci5taW4pLHRoaXMuYm91bmRpbmdCb3guZXhwYW5kQnlQb2ludChFci5tYXgpKX19ZWxzZSB0aGlzLmJvdW5kaW5nQm94Lm1ha2VFbXB0eSgpOyhpc05hTih0aGlzLmJvdW5kaW5nQm94Lm1pbi54KXx8aXNOYU4odGhpcy5ib3VuZGluZ0JveC5taW4ueSl8fGlzTmFOKHRoaXMuYm91bmRpbmdCb3gubWluLnopKSYmY29uc29sZS5lcnJvcignVEhSRUUuQnVmZmVyR2VvbWV0cnkuY29tcHV0ZUJvdW5kaW5nQm94KCk6IENvbXB1dGVkIG1pbi9tYXggaGF2ZSBOYU4gdmFsdWVzLiBUaGUgInBvc2l0aW9uIiBhdHRyaWJ1dGUgaXMgbGlrZWx5IHRvIGhhdmUgTmFOIHZhbHVlcy4nLHRoaXMpfWNvbXB1dGVCb3VuZGluZ1NwaGVyZSgpe251bGw9PT10aGlzLmJvdW5kaW5nU3BoZXJlJiYodGhpcy5ib3VuZGluZ1NwaGVyZT1uZXcgem4pO2NvbnN0IEE9dGhpcy5hdHRyaWJ1dGVzLnBvc2l0aW9uLGU9dGhpcy5tb3JwaEF0dHJpYnV0ZXMucG9zaXRpb247aWYoQSYmQS5pc0dMQnVmZmVyQXR0cmlidXRlKXJldHVybiBjb25zb2xlLmVycm9yKCdUSFJFRS5CdWZmZXJHZW9tZXRyeS5jb21wdXRlQm91bmRpbmdTcGhlcmUoKTogR0xCdWZmZXJBdHRyaWJ1dGUgcmVxdWlyZXMgYSBtYW51YWwgYm91bmRpbmcgc3BoZXJlLiBBbHRlcm5hdGl2ZWx5IHNldCAibWVzaC5mcnVzdHVtQ3VsbGVkIiB0byAiZmFsc2UiLicsdGhpcyksdm9pZCB0aGlzLmJvdW5kaW5nU3BoZXJlLnNldChuZXcgZG4sMS8wKTtpZihBKXtjb25zdCB0PXRoaXMuYm91bmRpbmdTcGhlcmUuY2VudGVyO2lmKEVyLnNldEZyb21CdWZmZXJBdHRyaWJ1dGUoQSksZSlmb3IobGV0IEE9MCx0PWUubGVuZ3RoO0E8dDtBKyspe2NvbnN0IHQ9ZVtBXTtRci5zZXRGcm9tQnVmZmVyQXR0cmlidXRlKHQpLHRoaXMubW9ycGhUYXJnZXRzUmVsYXRpdmU/KHVyLmFkZFZlY3RvcnMoRXIubWluLFFyLm1pbiksRXIuZXhwYW5kQnlQb2ludCh1ciksdXIuYWRkVmVjdG9ycyhFci5tYXgsUXIubWF4KSxFci5leHBhbmRCeVBvaW50KHVyKSk6KEVyLmV4cGFuZEJ5UG9pbnQoUXIubWluKSxFci5leHBhbmRCeVBvaW50KFFyLm1heCkpfUVyLmdldENlbnRlcih0KTtsZXQgbj0wO2ZvcihsZXQgZT0wLGk9QS5jb3VudDtlPGk7ZSsrKXVyLmZyb21CdWZmZXJBdHRyaWJ1dGUoQSxlKSxuPU1hdGgubWF4KG4sdC5kaXN0YW5jZVRvU3F1YXJlZCh1cikpO2lmKGUpZm9yKGxldCBpPTAscj1lLmxlbmd0aDtpPHI7aSsrKXtjb25zdCByPWVbaV0sbz10aGlzLm1vcnBoVGFyZ2V0c1JlbGF0aXZlO2ZvcihsZXQgZT0wLGk9ci5jb3VudDtlPGk7ZSsrKXVyLmZyb21CdWZmZXJBdHRyaWJ1dGUocixlKSxvJiYoZ3IuZnJvbUJ1ZmZlckF0dHJpYnV0ZShBLGUpLHVyLmFkZChncikpLG49TWF0aC5tYXgobix0LmRpc3RhbmNlVG9TcXVhcmVkKHVyKSl9dGhpcy5ib3VuZGluZ1NwaGVyZS5yYWRpdXM9TWF0aC5zcXJ0KG4pLGlzTmFOKHRoaXMuYm91bmRpbmdTcGhlcmUucmFkaXVzKSYmY29uc29sZS5lcnJvcignVEhSRUUuQnVmZmVyR2VvbWV0cnkuY29tcHV0ZUJvdW5kaW5nU3BoZXJlKCk6IENvbXB1dGVkIHJhZGl1cyBpcyBOYU4uIFRoZSAicG9zaXRpb24iIGF0dHJpYnV0ZSBpcyBsaWtlbHkgdG8gaGF2ZSBOYU4gdmFsdWVzLicsdGhpcyl9fWNvbXB1dGVUYW5nZW50cygpe2NvbnN0IEE9dGhpcy5pbmRleCxlPXRoaXMuYXR0cmlidXRlcztpZihudWxsPT09QXx8dm9pZCAwPT09ZS5wb3NpdGlvbnx8dm9pZCAwPT09ZS5ub3JtYWx8fHZvaWQgMD09PWUudXYpcmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnk6IC5jb21wdXRlVGFuZ2VudHMoKSBmYWlsZWQuIE1pc3NpbmcgcmVxdWlyZWQgYXR0cmlidXRlcyAoaW5kZXgsIHBvc2l0aW9uLCBub3JtYWwgb3IgdXYpIik7Y29uc3QgdD1BLmFycmF5LG49ZS5wb3NpdGlvbi5hcnJheSxpPWUubm9ybWFsLmFycmF5LHI9ZS51di5hcnJheSxvPW4ubGVuZ3RoLzM7ITE9PT10aGlzLmhhc0F0dHJpYnV0ZSgidGFuZ2VudCIpJiZ0aGlzLnNldEF0dHJpYnV0ZSgidGFuZ2VudCIsbmV3IF9pKG5ldyBGbG9hdDMyQXJyYXkoNCpvKSw0KSk7Y29uc3Qgcz10aGlzLmdldEF0dHJpYnV0ZSgidGFuZ2VudCIpLmFycmF5LGE9W10sQj1bXTtmb3IobGV0IEE9MDtBPG87QSsrKWFbQV09bmV3IGRuLEJbQV09bmV3IGRuO2NvbnN0IGM9bmV3IGRuLGc9bmV3IGRuLEU9bmV3IGRuLFE9bmV3IEx0LHU9bmV3IEx0LGw9bmV3IEx0LGg9bmV3IGRuLHc9bmV3IGRuO2Z1bmN0aW9uIEMoQSxlLHQpe2MuZnJvbUFycmF5KG4sMypBKSxnLmZyb21BcnJheShuLDMqZSksRS5mcm9tQXJyYXkobiwzKnQpLFEuZnJvbUFycmF5KHIsMipBKSx1LmZyb21BcnJheShyLDIqZSksbC5mcm9tQXJyYXkociwyKnQpLGcuc3ViKGMpLEUuc3ViKGMpLHUuc3ViKFEpLGwuc3ViKFEpO2NvbnN0IGk9MS8odS54KmwueS1sLngqdS55KTtpc0Zpbml0ZShpKSYmKGguY29weShnKS5tdWx0aXBseVNjYWxhcihsLnkpLmFkZFNjYWxlZFZlY3RvcihFLC11LnkpLm11bHRpcGx5U2NhbGFyKGkpLHcuY29weShFKS5tdWx0aXBseVNjYWxhcih1LngpLmFkZFNjYWxlZFZlY3RvcihnLC1sLngpLm11bHRpcGx5U2NhbGFyKGkpLGFbQV0uYWRkKGgpLGFbZV0uYWRkKGgpLGFbdF0uYWRkKGgpLEJbQV0uYWRkKHcpLEJbZV0uYWRkKHcpLEJbdF0uYWRkKHcpKX1sZXQgST10aGlzLmdyb3VwczswPT09SS5sZW5ndGgmJihJPVt7c3RhcnQ6MCxjb3VudDp0Lmxlbmd0aH1dKTtmb3IobGV0IEE9MCxlPUkubGVuZ3RoO0E8ZTsrK0Epe2NvbnN0IGU9SVtBXSxuPWUuc3RhcnQ7Zm9yKGxldCBBPW4saT1uK2UuY291bnQ7QTxpO0ErPTMpQyh0W0ErMF0sdFtBKzFdLHRbQSsyXSl9Y29uc3QgTT1uZXcgZG4sZD1uZXcgZG4scD1uZXcgZG4sbT1uZXcgZG47ZnVuY3Rpb24gRihBKXtwLmZyb21BcnJheShpLDMqQSksbS5jb3B5KHApO2NvbnN0IGU9YVtBXTtNLmNvcHkoZSksTS5zdWIocC5tdWx0aXBseVNjYWxhcihwLmRvdChlKSkpLm5vcm1hbGl6ZSgpLGQuY3Jvc3NWZWN0b3JzKG0sZSk7Y29uc3QgdD1kLmRvdChCW0FdKTwwPy0xOjE7c1s0KkFdPU0ueCxzWzQqQSsxXT1NLnksc1s0KkErMl09TS56LHNbNCpBKzNdPXR9Zm9yKGxldCBBPTAsZT1JLmxlbmd0aDtBPGU7KytBKXtjb25zdCBlPUlbQV0sbj1lLnN0YXJ0O2ZvcihsZXQgQT1uLGk9bitlLmNvdW50O0E8aTtBKz0zKUYodFtBKzBdKSxGKHRbQSsxXSksRih0W0ErMl0pfX1jb21wdXRlVmVydGV4Tm9ybWFscygpe2NvbnN0IEE9dGhpcy5pbmRleCxlPXRoaXMuZ2V0QXR0cmlidXRlKCJwb3NpdGlvbiIpO2lmKHZvaWQgMCE9PWUpe2xldCB0PXRoaXMuZ2V0QXR0cmlidXRlKCJub3JtYWwiKTtpZih2b2lkIDA9PT10KXQ9bmV3IF9pKG5ldyBGbG9hdDMyQXJyYXkoMyplLmNvdW50KSwzKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIix0KTtlbHNlIGZvcihsZXQgQT0wLGU9dC5jb3VudDtBPGU7QSsrKXQuc2V0WFlaKEEsMCwwLDApO2NvbnN0IG49bmV3IGRuLGk9bmV3IGRuLHI9bmV3IGRuLG89bmV3IGRuLHM9bmV3IGRuLGE9bmV3IGRuLEI9bmV3IGRuLGM9bmV3IGRuO2lmKEEpZm9yKGxldCBnPTAsRT1BLmNvdW50O2c8RTtnKz0zKXtjb25zdCBFPUEuZ2V0WChnKzApLFE9QS5nZXRYKGcrMSksdT1BLmdldFgoZysyKTtuLmZyb21CdWZmZXJBdHRyaWJ1dGUoZSxFKSxpLmZyb21CdWZmZXJBdHRyaWJ1dGUoZSxRKSxyLmZyb21CdWZmZXJBdHRyaWJ1dGUoZSx1KSxCLnN1YlZlY3RvcnMocixpKSxjLnN1YlZlY3RvcnMobixpKSxCLmNyb3NzKGMpLG8uZnJvbUJ1ZmZlckF0dHJpYnV0ZSh0LEUpLHMuZnJvbUJ1ZmZlckF0dHJpYnV0ZSh0LFEpLGEuZnJvbUJ1ZmZlckF0dHJpYnV0ZSh0LHUpLG8uYWRkKEIpLHMuYWRkKEIpLGEuYWRkKEIpLHQuc2V0WFlaKEUsby54LG8ueSxvLnopLHQuc2V0WFlaKFEscy54LHMueSxzLnopLHQuc2V0WFlaKHUsYS54LGEueSxhLnopfWVsc2UgZm9yKGxldCBBPTAsbz1lLmNvdW50O0E8bztBKz0zKW4uZnJvbUJ1ZmZlckF0dHJpYnV0ZShlLEErMCksaS5mcm9tQnVmZmVyQXR0cmlidXRlKGUsQSsxKSxyLmZyb21CdWZmZXJBdHRyaWJ1dGUoZSxBKzIpLEIuc3ViVmVjdG9ycyhyLGkpLGMuc3ViVmVjdG9ycyhuLGkpLEIuY3Jvc3MoYyksdC5zZXRYWVooQSswLEIueCxCLnksQi56KSx0LnNldFhZWihBKzEsQi54LEIueSxCLnopLHQuc2V0WFlaKEErMixCLngsQi55LEIueik7dGhpcy5ub3JtYWxpemVOb3JtYWxzKCksdC5uZWVkc1VwZGF0ZT0hMH19bWVyZ2UoKXtyZXR1cm4gY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnkubWVyZ2UoKSBoYXMgYmVlbiByZW1vdmVkLiBVc2UgVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlscy5tZXJnZUdlb21ldHJpZXMoKSBpbnN0ZWFkLiIpLHRoaXN9bm9ybWFsaXplTm9ybWFscygpe2NvbnN0IEE9dGhpcy5hdHRyaWJ1dGVzLm5vcm1hbDtmb3IobGV0IGU9MCx0PUEuY291bnQ7ZTx0O2UrKyl1ci5mcm9tQnVmZmVyQXR0cmlidXRlKEEsZSksdXIubm9ybWFsaXplKCksQS5zZXRYWVooZSx1ci54LHVyLnksdXIueil9dG9Ob25JbmRleGVkKCl7ZnVuY3Rpb24gQShBLGUpe2NvbnN0IHQ9QS5hcnJheSxuPUEuaXRlbVNpemUsaT1BLm5vcm1hbGl6ZWQscj1uZXcgdC5jb25zdHJ1Y3RvcihlLmxlbmd0aCpuKTtsZXQgbz0wLHM9MDtmb3IobGV0IGk9MCxhPWUubGVuZ3RoO2k8YTtpKyspe289QS5pc0ludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlP2VbaV0qQS5kYXRhLnN0cmlkZStBLm9mZnNldDplW2ldKm47Zm9yKGxldCBBPTA7QTxuO0ErKylyW3MrK109dFtvKytdfXJldHVybiBuZXcgX2kocixuLGkpfWlmKG51bGw9PT10aGlzLmluZGV4KXJldHVybiBjb25zb2xlLndhcm4oIlRIUkVFLkJ1ZmZlckdlb21ldHJ5LnRvTm9uSW5kZXhlZCgpOiBCdWZmZXJHZW9tZXRyeSBpcyBhbHJlYWR5IG5vbi1pbmRleGVkLiIpLHRoaXM7Y29uc3QgZT1uZXcgbHIsdD10aGlzLmluZGV4LmFycmF5LG49dGhpcy5hdHRyaWJ1dGVzO2Zvcihjb25zdCBpIGluIG4pe2NvbnN0IHI9QShuW2ldLHQpO2Uuc2V0QXR0cmlidXRlKGkscil9Y29uc3QgaT10aGlzLm1vcnBoQXR0cmlidXRlcztmb3IoY29uc3QgbiBpbiBpKXtjb25zdCByPVtdLG89aVtuXTtmb3IobGV0IGU9MCxuPW8ubGVuZ3RoO2U8bjtlKyspe2NvbnN0IG49QShvW2VdLHQpO3IucHVzaChuKX1lLm1vcnBoQXR0cmlidXRlc1tuXT1yfWUubW9ycGhUYXJnZXRzUmVsYXRpdmU9dGhpcy5tb3JwaFRhcmdldHNSZWxhdGl2ZTtjb25zdCByPXRoaXMuZ3JvdXBzO2ZvcihsZXQgQT0wLHQ9ci5sZW5ndGg7QTx0O0ErKyl7Y29uc3QgdD1yW0FdO2UuYWRkR3JvdXAodC5zdGFydCx0LmNvdW50LHQubWF0ZXJpYWxJbmRleCl9cmV0dXJuIGV9dG9KU09OKCl7Y29uc3QgQT17bWV0YWRhdGE6e3ZlcnNpb246NC42LHR5cGU6IkJ1ZmZlckdlb21ldHJ5IixnZW5lcmF0b3I6IkJ1ZmZlckdlb21ldHJ5LnRvSlNPTiJ9fTtpZihBLnV1aWQ9dGhpcy51dWlkLEEudHlwZT10aGlzLnR5cGUsIiIhPT10aGlzLm5hbWUmJihBLm5hbWU9dGhpcy5uYW1lKSxPYmplY3Qua2V5cyh0aGlzLnVzZXJEYXRhKS5sZW5ndGg+MCYmKEEudXNlckRhdGE9dGhpcy51c2VyRGF0YSksdm9pZCAwIT09dGhpcy5wYXJhbWV0ZXJzKXtjb25zdCBlPXRoaXMucGFyYW1ldGVycztmb3IoY29uc3QgdCBpbiBlKXZvaWQgMCE9PWVbdF0mJihBW3RdPWVbdF0pO3JldHVybiBBfUEuZGF0YT17YXR0cmlidXRlczp7fX07Y29uc3QgZT10aGlzLmluZGV4O251bGwhPT1lJiYoQS5kYXRhLmluZGV4PXt0eXBlOmUuYXJyYXkuY29uc3RydWN0b3IubmFtZSxhcnJheTpBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChlLmFycmF5KX0pO2NvbnN0IHQ9dGhpcy5hdHRyaWJ1dGVzO2Zvcihjb25zdCBlIGluIHQpe2NvbnN0IG49dFtlXTtBLmRhdGEuYXR0cmlidXRlc1tlXT1uLnRvSlNPTihBLmRhdGEpfWNvbnN0IG49e307bGV0IGk9ITE7Zm9yKGNvbnN0IGUgaW4gdGhpcy5tb3JwaEF0dHJpYnV0ZXMpe2NvbnN0IHQ9dGhpcy5tb3JwaEF0dHJpYnV0ZXNbZV0scj1bXTtmb3IobGV0IGU9MCxuPXQubGVuZ3RoO2U8bjtlKyspe2NvbnN0IG49dFtlXTtyLnB1c2gobi50b0pTT04oQS5kYXRhKSl9ci5sZW5ndGg+MCYmKG5bZV09cixpPSEwKX1pJiYoQS5kYXRhLm1vcnBoQXR0cmlidXRlcz1uLEEuZGF0YS5tb3JwaFRhcmdldHNSZWxhdGl2ZT10aGlzLm1vcnBoVGFyZ2V0c1JlbGF0aXZlKTtjb25zdCByPXRoaXMuZ3JvdXBzO3IubGVuZ3RoPjAmJihBLmRhdGEuZ3JvdXBzPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkocikpKTtjb25zdCBvPXRoaXMuYm91bmRpbmdTcGhlcmU7cmV0dXJuIG51bGwhPT1vJiYoQS5kYXRhLmJvdW5kaW5nU3BoZXJlPXtjZW50ZXI6by5jZW50ZXIudG9BcnJheSgpLHJhZGl1czpvLnJhZGl1c30pLEF9Y2xvbmUoKXtyZXR1cm4obmV3IHRoaXMuY29uc3RydWN0b3IpLmNvcHkodGhpcyl9Y29weShBKXt0aGlzLmluZGV4PW51bGwsdGhpcy5hdHRyaWJ1dGVzPXt9LHRoaXMubW9ycGhBdHRyaWJ1dGVzPXt9LHRoaXMuZ3JvdXBzPVtdLHRoaXMuYm91bmRpbmdCb3g9bnVsbCx0aGlzLmJvdW5kaW5nU3BoZXJlPW51bGw7Y29uc3QgZT17fTt0aGlzLm5hbWU9QS5uYW1lO2NvbnN0IHQ9QS5pbmRleDtudWxsIT09dCYmdGhpcy5zZXRJbmRleCh0LmNsb25lKGUpKTtjb25zdCBuPUEuYXR0cmlidXRlcztmb3IoY29uc3QgQSBpbiBuKXtjb25zdCB0PW5bQV07dGhpcy5zZXRBdHRyaWJ1dGUoQSx0LmNsb25lKGUpKX1jb25zdCBpPUEubW9ycGhBdHRyaWJ1dGVzO2Zvcihjb25zdCBBIGluIGkpe2NvbnN0IHQ9W10sbj1pW0FdO2ZvcihsZXQgQT0wLGk9bi5sZW5ndGg7QTxpO0ErKyl0LnB1c2gobltBXS5jbG9uZShlKSk7dGhpcy5tb3JwaEF0dHJpYnV0ZXNbQV09dH10aGlzLm1vcnBoVGFyZ2V0c1JlbGF0aXZlPUEubW9ycGhUYXJnZXRzUmVsYXRpdmU7Y29uc3Qgcj1BLmdyb3Vwcztmb3IobGV0IEE9MCxlPXIubGVuZ3RoO0E8ZTtBKyspe2NvbnN0IGU9cltBXTt0aGlzLmFkZEdyb3VwKGUuc3RhcnQsZS5jb3VudCxlLm1hdGVyaWFsSW5kZXgpfWNvbnN0IG89QS5ib3VuZGluZ0JveDtudWxsIT09byYmKHRoaXMuYm91bmRpbmdCb3g9by5jbG9uZSgpKTtjb25zdCBzPUEuYm91bmRpbmdTcGhlcmU7cmV0dXJuIG51bGwhPT1zJiYodGhpcy5ib3VuZGluZ1NwaGVyZT1zLmNsb25lKCkpLHRoaXMuZHJhd1JhbmdlLnN0YXJ0PUEuZHJhd1JhbmdlLnN0YXJ0LHRoaXMuZHJhd1JhbmdlLmNvdW50PUEuZHJhd1JhbmdlLmNvdW50LHRoaXMudXNlckRhdGE9QS51c2VyRGF0YSx0aGlzfWRpc3Bvc2UoKXt0aGlzLmRpc3BhdGNoRXZlbnQoe3R5cGU6ImRpc3Bvc2UifSl9fWNvbnN0IGhyPW5ldyBfbix3cj1uZXcgWm4sQ3I9bmV3IHpuLElyPW5ldyBkbixNcj1uZXcgZG4sZHI9bmV3IGRuLHByPW5ldyBkbixtcj1uZXcgZG4sRnI9bmV3IGRuLERyPW5ldyBMdCxZcj1uZXcgTHQsZnI9bmV3IEx0LE5yPW5ldyBkbixVcj1uZXcgZG4seXI9bmV3IGRuLFRyPW5ldyBkbix4cj1uZXcgZG47Y2xhc3MgUnIgZXh0ZW5kcyBwaXtjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpuZXcgbHIsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bmV3IExpO3N1cGVyKCksdGhpcy5pc01lc2g9ITAsdGhpcy50eXBlPSJNZXNoIix0aGlzLmdlb21ldHJ5PUEsdGhpcy5tYXRlcmlhbD1lLHRoaXMudXBkYXRlTW9ycGhUYXJnZXRzKCl9Y29weShBLGUpe3JldHVybiBzdXBlci5jb3B5KEEsZSksdm9pZCAwIT09QS5tb3JwaFRhcmdldEluZmx1ZW5jZXMmJih0aGlzLm1vcnBoVGFyZ2V0SW5mbHVlbmNlcz1BLm1vcnBoVGFyZ2V0SW5mbHVlbmNlcy5zbGljZSgpKSx2b2lkIDAhPT1BLm1vcnBoVGFyZ2V0RGljdGlvbmFyeSYmKHRoaXMubW9ycGhUYXJnZXREaWN0aW9uYXJ5PU9iamVjdC5hc3NpZ24oe30sQS5tb3JwaFRhcmdldERpY3Rpb25hcnkpKSx0aGlzLm1hdGVyaWFsPUEubWF0ZXJpYWwsdGhpcy5nZW9tZXRyeT1BLmdlb21ldHJ5LHRoaXN9dXBkYXRlTW9ycGhUYXJnZXRzKCl7Y29uc3QgQT10aGlzLmdlb21ldHJ5Lm1vcnBoQXR0cmlidXRlcyxlPU9iamVjdC5rZXlzKEEpO2lmKGUubGVuZ3RoPjApe2NvbnN0IHQ9QVtlWzBdXTtpZih2b2lkIDAhPT10KXt0aGlzLm1vcnBoVGFyZ2V0SW5mbHVlbmNlcz1bXSx0aGlzLm1vcnBoVGFyZ2V0RGljdGlvbmFyeT17fTtmb3IobGV0IEE9MCxlPXQubGVuZ3RoO0E8ZTtBKyspe2NvbnN0IGU9dFtBXS5uYW1lfHxTdHJpbmcoQSk7dGhpcy5tb3JwaFRhcmdldEluZmx1ZW5jZXMucHVzaCgwKSx0aGlzLm1vcnBoVGFyZ2V0RGljdGlvbmFyeVtlXT1BfX19fWdldFZlcnRleFBvc2l0aW9uKEEsZSl7Y29uc3QgdD10aGlzLmdlb21ldHJ5LG49dC5hdHRyaWJ1dGVzLnBvc2l0aW9uLGk9dC5tb3JwaEF0dHJpYnV0ZXMucG9zaXRpb24scj10Lm1vcnBoVGFyZ2V0c1JlbGF0aXZlO2UuZnJvbUJ1ZmZlckF0dHJpYnV0ZShuLEEpO2NvbnN0IG89dGhpcy5tb3JwaFRhcmdldEluZmx1ZW5jZXM7aWYoaSYmbyl7RnIuc2V0KDAsMCwwKTtmb3IobGV0IHQ9MCxuPWkubGVuZ3RoO3Q8bjt0Kyspe2NvbnN0IG49b1t0XSxzPWlbdF07MCE9PW4mJihtci5mcm9tQnVmZmVyQXR0cmlidXRlKHMsQSkscj9Gci5hZGRTY2FsZWRWZWN0b3IobXIsbik6RnIuYWRkU2NhbGVkVmVjdG9yKG1yLnN1YihlKSxuKSl9ZS5hZGQoRnIpfXJldHVybiBlfXJheWNhc3QoQSxlKXtjb25zdCB0PXRoaXMuZ2VvbWV0cnksbj10aGlzLm1hdGVyaWFsLGk9dGhpcy5tYXRyaXhXb3JsZDtpZih2b2lkIDAhPT1uKXtpZihudWxsPT09dC5ib3VuZGluZ1NwaGVyZSYmdC5jb21wdXRlQm91bmRpbmdTcGhlcmUoKSxDci5jb3B5KHQuYm91bmRpbmdTcGhlcmUpLENyLmFwcGx5TWF0cml4NChpKSx3ci5jb3B5KEEucmF5KS5yZWNhc3QoQS5uZWFyKSwhMT09PUNyLmNvbnRhaW5zUG9pbnQod3Iub3JpZ2luKSl7aWYobnVsbD09PXdyLmludGVyc2VjdFNwaGVyZShDcixJcikpcmV0dXJuO2lmKHdyLm9yaWdpbi5kaXN0YW5jZVRvU3F1YXJlZChJcik+KEEuZmFyLUEubmVhcikqKjIpcmV0dXJufWhyLmNvcHkoaSkuaW52ZXJ0KCksd3IuY29weShBLnJheSkuYXBwbHlNYXRyaXg0KGhyKSxudWxsIT09dC5ib3VuZGluZ0JveCYmITE9PT13ci5pbnRlcnNlY3RzQm94KHQuYm91bmRpbmdCb3gpfHx0aGlzLl9jb21wdXRlSW50ZXJzZWN0aW9ucyhBLGUsd3IpfX1fY29tcHV0ZUludGVyc2VjdGlvbnMoQSxlLHQpe2xldCBuO2NvbnN0IGk9dGhpcy5nZW9tZXRyeSxyPXRoaXMubWF0ZXJpYWwsbz1pLmluZGV4LHM9aS5hdHRyaWJ1dGVzLnBvc2l0aW9uLGE9aS5hdHRyaWJ1dGVzLnV2LEI9aS5hdHRyaWJ1dGVzLnV2MSxjPWkuYXR0cmlidXRlcy5ub3JtYWwsZz1pLmdyb3VwcyxFPWkuZHJhd1JhbmdlO2lmKG51bGwhPT1vKWlmKEFycmF5LmlzQXJyYXkocikpZm9yKGxldCBpPTAscz1nLmxlbmd0aDtpPHM7aSsrKXtjb25zdCBzPWdbaV0sUT1yW3MubWF0ZXJpYWxJbmRleF07Zm9yKGxldCBpPU1hdGgubWF4KHMuc3RhcnQsRS5zdGFydCkscj1NYXRoLm1pbihvLmNvdW50LE1hdGgubWluKHMuc3RhcnQrcy5jb3VudCxFLnN0YXJ0K0UuY291bnQpKTtpPHI7aSs9Myl7bj1Hcih0aGlzLFEsQSx0LGEsQixjLG8uZ2V0WChpKSxvLmdldFgoaSsxKSxvLmdldFgoaSsyKSksbiYmKG4uZmFjZUluZGV4PU1hdGguZmxvb3IoaS8zKSxuLmZhY2UubWF0ZXJpYWxJbmRleD1zLm1hdGVyaWFsSW5kZXgsZS5wdXNoKG4pKX19ZWxzZXtmb3IobGV0IGk9TWF0aC5tYXgoMCxFLnN0YXJ0KSxzPU1hdGgubWluKG8uY291bnQsRS5zdGFydCtFLmNvdW50KTtpPHM7aSs9Myl7bj1Hcih0aGlzLHIsQSx0LGEsQixjLG8uZ2V0WChpKSxvLmdldFgoaSsxKSxvLmdldFgoaSsyKSksbiYmKG4uZmFjZUluZGV4PU1hdGguZmxvb3IoaS8zKSxlLnB1c2gobikpfX1lbHNlIGlmKHZvaWQgMCE9PXMpaWYoQXJyYXkuaXNBcnJheShyKSlmb3IobGV0IGk9MCxvPWcubGVuZ3RoO2k8bztpKyspe2NvbnN0IG89Z1tpXSxRPXJbby5tYXRlcmlhbEluZGV4XTtmb3IobGV0IGk9TWF0aC5tYXgoby5zdGFydCxFLnN0YXJ0KSxyPU1hdGgubWluKHMuY291bnQsTWF0aC5taW4oby5zdGFydCtvLmNvdW50LEUuc3RhcnQrRS5jb3VudCkpO2k8cjtpKz0zKXtuPUdyKHRoaXMsUSxBLHQsYSxCLGMsaSxpKzEsaSsyKSxuJiYobi5mYWNlSW5kZXg9TWF0aC5mbG9vcihpLzMpLG4uZmFjZS5tYXRlcmlhbEluZGV4PW8ubWF0ZXJpYWxJbmRleCxlLnB1c2gobikpfX1lbHNle2ZvcihsZXQgaT1NYXRoLm1heCgwLEUuc3RhcnQpLG89TWF0aC5taW4ocy5jb3VudCxFLnN0YXJ0K0UuY291bnQpO2k8bztpKz0zKXtuPUdyKHRoaXMscixBLHQsYSxCLGMsaSxpKzEsaSsyKSxuJiYobi5mYWNlSW5kZXg9TWF0aC5mbG9vcihpLzMpLGUucHVzaChuKSl9fX19ZnVuY3Rpb24gR3IoQSxlLHQsbixpLHIsbyxzLGEsQil7QS5nZXRWZXJ0ZXhQb3NpdGlvbihzLE1yKSxBLmdldFZlcnRleFBvc2l0aW9uKGEsZHIpLEEuZ2V0VmVydGV4UG9zaXRpb24oQixwcik7Y29uc3QgYz1mdW5jdGlvbihBLGUsdCxuLGkscixvLHMpe2xldCBhO2lmKGE9ZS5zaWRlPT09bD9uLmludGVyc2VjdFRyaWFuZ2xlKG8scixpLCEwLHMpOm4uaW50ZXJzZWN0VHJpYW5nbGUoaSxyLG8sZS5zaWRlPT09dSxzKSxudWxsPT09YSlyZXR1cm4gbnVsbDt4ci5jb3B5KHMpLHhyLmFwcGx5TWF0cml4NChBLm1hdHJpeFdvcmxkKTtjb25zdCBCPXQucmF5Lm9yaWdpbi5kaXN0YW5jZVRvKHhyKTtyZXR1cm4gQjx0Lm5lYXJ8fEI+dC5mYXI/bnVsbDp7ZGlzdGFuY2U6Qixwb2ludDp4ci5jbG9uZSgpLG9iamVjdDpBfX0oQSxlLHQsbixNcixkcixwcixUcik7aWYoYyl7aSYmKERyLmZyb21CdWZmZXJBdHRyaWJ1dGUoaSxzKSxZci5mcm9tQnVmZmVyQXR0cmlidXRlKGksYSksZnIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShpLEIpLGMudXY9R2kuZ2V0SW50ZXJwb2xhdGlvbihUcixNcixkcixwcixEcixZcixmcixuZXcgTHQpKSxyJiYoRHIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShyLHMpLFlyLmZyb21CdWZmZXJBdHRyaWJ1dGUocixhKSxmci5mcm9tQnVmZmVyQXR0cmlidXRlKHIsQiksYy51djE9R2kuZ2V0SW50ZXJwb2xhdGlvbihUcixNcixkcixwcixEcixZcixmcixuZXcgTHQpLGMudXYyPWMudXYxKSxvJiYoTnIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShvLHMpLFVyLmZyb21CdWZmZXJBdHRyaWJ1dGUobyxhKSx5ci5mcm9tQnVmZmVyQXR0cmlidXRlKG8sQiksYy5ub3JtYWw9R2kuZ2V0SW50ZXJwb2xhdGlvbihUcixNcixkcixwcixOcixVcix5cixuZXcgZG4pLGMubm9ybWFsLmRvdChuLmRpcmVjdGlvbik+MCYmYy5ub3JtYWwubXVsdGlwbHlTY2FsYXIoLTEpKTtjb25zdCBBPXthOnMsYjphLGM6Qixub3JtYWw6bmV3IGRuLG1hdGVyaWFsSW5kZXg6MH07R2kuZ2V0Tm9ybWFsKE1yLGRyLHByLEEubm9ybWFsKSxjLmZhY2U9QX1yZXR1cm4gY31jbGFzcyBTciBleHRlbmRzIGxye2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjEsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06MSxyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XToxO3N1cGVyKCksdGhpcy50eXBlPSJCb3hHZW9tZXRyeSIsdGhpcy5wYXJhbWV0ZXJzPXt3aWR0aDpBLGhlaWdodDplLGRlcHRoOnQsd2lkdGhTZWdtZW50czpuLGhlaWdodFNlZ21lbnRzOmksZGVwdGhTZWdtZW50czpyfTtjb25zdCBvPXRoaXM7bj1NYXRoLmZsb29yKG4pLGk9TWF0aC5mbG9vcihpKSxyPU1hdGguZmxvb3Iocik7Y29uc3Qgcz1bXSxhPVtdLEI9W10sYz1bXTtsZXQgZz0wLEU9MDtmdW5jdGlvbiBRKEEsZSx0LG4saSxyLFEsdSxsLGgsdyl7Y29uc3QgQz1yL2wsST1RL2gsTT1yLzIsZD1RLzIscD11LzIsbT1sKzEsRj1oKzE7bGV0IEQ9MCxZPTA7Y29uc3QgZj1uZXcgZG47Zm9yKGxldCByPTA7cjxGO3IrKyl7Y29uc3Qgbz1yKkktZDtmb3IobGV0IHM9MDtzPG07cysrKXtjb25zdCBnPXMqQy1NO2ZbQV09ZypuLGZbZV09byppLGZbdF09cCxhLnB1c2goZi54LGYueSxmLnopLGZbQV09MCxmW2VdPTAsZlt0XT11PjA/MTotMSxCLnB1c2goZi54LGYueSxmLnopLGMucHVzaChzL2wpLGMucHVzaCgxLXIvaCksRCs9MX19Zm9yKGxldCBBPTA7QTxoO0ErKylmb3IobGV0IGU9MDtlPGw7ZSsrKXtjb25zdCB0PWcrZSttKkEsbj1nK2UrbSooQSsxKSxpPWcrKGUrMSkrbSooQSsxKSxyPWcrKGUrMSkrbSpBO3MucHVzaCh0LG4scikscy5wdXNoKG4saSxyKSxZKz02fW8uYWRkR3JvdXAoRSxZLHcpLEUrPVksZys9RH1RKCJ6IiwieSIsIngiLC0xLC0xLHQsZSxBLHIsaSwwKSxRKCJ6IiwieSIsIngiLDEsLTEsdCxlLC1BLHIsaSwxKSxRKCJ4IiwieiIsInkiLDEsMSxBLHQsZSxuLHIsMiksUSgieCIsInoiLCJ5IiwxLC0xLEEsdCwtZSxuLHIsMyksUSgieCIsInkiLCJ6IiwxLC0xLEEsZSx0LG4saSw0KSxRKCJ4IiwieSIsInoiLC0xLC0xLEEsZSwtdCxuLGksNSksdGhpcy5zZXRJbmRleChzKSx0aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihhLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgb3IoQiwzKSksdGhpcy5zZXRBdHRyaWJ1dGUoInV2IixuZXcgb3IoYywyKSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgU3IoQS53aWR0aCxBLmhlaWdodCxBLmRlcHRoLEEud2lkdGhTZWdtZW50cyxBLmhlaWdodFNlZ21lbnRzLEEuZGVwdGhTZWdtZW50cyl9fWZ1bmN0aW9uIGJyKEEpe2NvbnN0IGU9e307Zm9yKGNvbnN0IHQgaW4gQSl7ZVt0XT17fTtmb3IoY29uc3QgbiBpbiBBW3RdKXtjb25zdCBpPUFbdF1bbl07aSYmKGkuaXNDb2xvcnx8aS5pc01hdHJpeDN8fGkuaXNNYXRyaXg0fHxpLmlzVmVjdG9yMnx8aS5pc1ZlY3RvcjN8fGkuaXNWZWN0b3I0fHxpLmlzVGV4dHVyZXx8aS5pc1F1YXRlcm5pb24pP2kuaXNSZW5kZXJUYXJnZXRUZXh0dXJlPyhjb25zb2xlLndhcm4oIlVuaWZvcm1zVXRpbHM6IFRleHR1cmVzIG9mIHJlbmRlciB0YXJnZXRzIGNhbm5vdCBiZSBjbG9uZWQgdmlhIGNsb25lVW5pZm9ybXMoKSBvciBtZXJnZVVuaWZvcm1zKCkuIiksZVt0XVtuXT1udWxsKTplW3RdW25dPWkuY2xvbmUoKTpBcnJheS5pc0FycmF5KGkpP2VbdF1bbl09aS5zbGljZSgpOmVbdF1bbl09aX19cmV0dXJuIGV9ZnVuY3Rpb24gSHIoQSl7Y29uc3QgZT17fTtmb3IobGV0IHQ9MDt0PEEubGVuZ3RoO3QrKyl7Y29uc3Qgbj1icihBW3RdKTtmb3IoY29uc3QgQSBpbiBuKWVbQV09bltBXX1yZXR1cm4gZX1mdW5jdGlvbiB2cihBKXtyZXR1cm4gbnVsbD09PUEuZ2V0UmVuZGVyVGFyZ2V0KCk/QS5vdXRwdXRDb2xvclNwYWNlOnplfWNvbnN0IGtyPXtjbG9uZTpicixtZXJnZTpIcn07Y2xhc3MganIgZXh0ZW5kcyBiaXtjb25zdHJ1Y3RvcihBKXtzdXBlcigpLHRoaXMuaXNTaGFkZXJNYXRlcmlhbD0hMCx0aGlzLnR5cGU9IlNoYWRlck1hdGVyaWFsIix0aGlzLmRlZmluZXM9e30sdGhpcy51bmlmb3Jtcz17fSx0aGlzLnVuaWZvcm1zR3JvdXBzPVtdLHRoaXMudmVydGV4U2hhZGVyPSJ2b2lkIG1haW4oKSB7XG5cdGdsX1Bvc2l0aW9uID0gcHJvamVjdGlvbk1hdHJpeCAqIG1vZGVsVmlld01hdHJpeCAqIHZlYzQoIHBvc2l0aW9uLCAxLjAgKTtcbn0iLHRoaXMuZnJhZ21lbnRTaGFkZXI9InZvaWQgbWFpbigpIHtcblx0Z2xfRnJhZ0NvbG9yID0gdmVjNCggMS4wLCAwLjAsIDAuMCwgMS4wICk7XG59Iix0aGlzLmxpbmV3aWR0aD0xLHRoaXMud2lyZWZyYW1lPSExLHRoaXMud2lyZWZyYW1lTGluZXdpZHRoPTEsdGhpcy5mb2c9ITEsdGhpcy5saWdodHM9ITEsdGhpcy5jbGlwcGluZz0hMSx0aGlzLmZvcmNlU2luZ2xlUGFzcz0hMCx0aGlzLmV4dGVuc2lvbnM9e2Rlcml2YXRpdmVzOiExLGZyYWdEZXB0aDohMSxkcmF3QnVmZmVyczohMSxzaGFkZXJUZXh0dXJlTE9EOiExfSx0aGlzLmRlZmF1bHRBdHRyaWJ1dGVWYWx1ZXM9e2NvbG9yOlsxLDEsMV0sdXY6WzAsMF0sdXYxOlswLDBdfSx0aGlzLmluZGV4MEF0dHJpYnV0ZU5hbWU9dm9pZCAwLHRoaXMudW5pZm9ybXNOZWVkVXBkYXRlPSExLHRoaXMuZ2xzbFZlcnNpb249bnVsbCx2b2lkIDAhPT1BJiZ0aGlzLnNldFZhbHVlcyhBKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuZnJhZ21lbnRTaGFkZXI9QS5mcmFnbWVudFNoYWRlcix0aGlzLnZlcnRleFNoYWRlcj1BLnZlcnRleFNoYWRlcix0aGlzLnVuaWZvcm1zPWJyKEEudW5pZm9ybXMpLHRoaXMudW5pZm9ybXNHcm91cHM9ZnVuY3Rpb24oQSl7Y29uc3QgZT1bXTtmb3IobGV0IHQ9MDt0PEEubGVuZ3RoO3QrKyllLnB1c2goQVt0XS5jbG9uZSgpKTtyZXR1cm4gZX0oQS51bmlmb3Jtc0dyb3VwcyksdGhpcy5kZWZpbmVzPU9iamVjdC5hc3NpZ24oe30sQS5kZWZpbmVzKSx0aGlzLndpcmVmcmFtZT1BLndpcmVmcmFtZSx0aGlzLndpcmVmcmFtZUxpbmV3aWR0aD1BLndpcmVmcmFtZUxpbmV3aWR0aCx0aGlzLmZvZz1BLmZvZyx0aGlzLmxpZ2h0cz1BLmxpZ2h0cyx0aGlzLmNsaXBwaW5nPUEuY2xpcHBpbmcsdGhpcy5leHRlbnNpb25zPU9iamVjdC5hc3NpZ24oe30sQS5leHRlbnNpb25zKSx0aGlzLmdsc2xWZXJzaW9uPUEuZ2xzbFZlcnNpb24sdGhpc310b0pTT04oQSl7Y29uc3QgZT1zdXBlci50b0pTT04oQSk7ZS5nbHNsVmVyc2lvbj10aGlzLmdsc2xWZXJzaW9uLGUudW5pZm9ybXM9e307Zm9yKGNvbnN0IHQgaW4gdGhpcy51bmlmb3Jtcyl7Y29uc3Qgbj10aGlzLnVuaWZvcm1zW3RdLnZhbHVlO24mJm4uaXNUZXh0dXJlP2UudW5pZm9ybXNbdF09e3R5cGU6InQiLHZhbHVlOm4udG9KU09OKEEpLnV1aWR9Om4mJm4uaXNDb2xvcj9lLnVuaWZvcm1zW3RdPXt0eXBlOiJjIix2YWx1ZTpuLmdldEhleCgpfTpuJiZuLmlzVmVjdG9yMj9lLnVuaWZvcm1zW3RdPXt0eXBlOiJ2MiIsdmFsdWU6bi50b0FycmF5KCl9Om4mJm4uaXNWZWN0b3IzP2UudW5pZm9ybXNbdF09e3R5cGU6InYzIix2YWx1ZTpuLnRvQXJyYXkoKX06biYmbi5pc1ZlY3RvcjQ/ZS51bmlmb3Jtc1t0XT17dHlwZToidjQiLHZhbHVlOm4udG9BcnJheSgpfTpuJiZuLmlzTWF0cml4Mz9lLnVuaWZvcm1zW3RdPXt0eXBlOiJtMyIsdmFsdWU6bi50b0FycmF5KCl9Om4mJm4uaXNNYXRyaXg0P2UudW5pZm9ybXNbdF09e3R5cGU6Im00Iix2YWx1ZTpuLnRvQXJyYXkoKX06ZS51bmlmb3Jtc1t0XT17dmFsdWU6bn19T2JqZWN0LmtleXModGhpcy5kZWZpbmVzKS5sZW5ndGg+MCYmKGUuZGVmaW5lcz10aGlzLmRlZmluZXMpLGUudmVydGV4U2hhZGVyPXRoaXMudmVydGV4U2hhZGVyLGUuZnJhZ21lbnRTaGFkZXI9dGhpcy5mcmFnbWVudFNoYWRlcixlLmxpZ2h0cz10aGlzLmxpZ2h0cyxlLmNsaXBwaW5nPXRoaXMuY2xpcHBpbmc7Y29uc3QgdD17fTtmb3IoY29uc3QgQSBpbiB0aGlzLmV4dGVuc2lvbnMpITA9PT10aGlzLmV4dGVuc2lvbnNbQV0mJih0W0FdPSEwKTtyZXR1cm4gT2JqZWN0LmtleXModCkubGVuZ3RoPjAmJihlLmV4dGVuc2lvbnM9dCksZX19Y2xhc3MgSnIgZXh0ZW5kcyBwaXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5pc0NhbWVyYT0hMCx0aGlzLnR5cGU9IkNhbWVyYSIsdGhpcy5tYXRyaXhXb3JsZEludmVyc2U9bmV3IF9uLHRoaXMucHJvamVjdGlvbk1hdHJpeD1uZXcgX24sdGhpcy5wcm9qZWN0aW9uTWF0cml4SW52ZXJzZT1uZXcgX24sdGhpcy5jb29yZGluYXRlU3lzdGVtPVl0fWNvcHkoQSxlKXtyZXR1cm4gc3VwZXIuY29weShBLGUpLHRoaXMubWF0cml4V29ybGRJbnZlcnNlLmNvcHkoQS5tYXRyaXhXb3JsZEludmVyc2UpLHRoaXMucHJvamVjdGlvbk1hdHJpeC5jb3B5KEEucHJvamVjdGlvbk1hdHJpeCksdGhpcy5wcm9qZWN0aW9uTWF0cml4SW52ZXJzZS5jb3B5KEEucHJvamVjdGlvbk1hdHJpeEludmVyc2UpLHRoaXMuY29vcmRpbmF0ZVN5c3RlbT1BLmNvb3JkaW5hdGVTeXN0ZW0sdGhpc31nZXRXb3JsZERpcmVjdGlvbihBKXt0aGlzLnVwZGF0ZVdvcmxkTWF0cml4KCEwLCExKTtjb25zdCBlPXRoaXMubWF0cml4V29ybGQuZWxlbWVudHM7cmV0dXJuIEEuc2V0KC1lWzhdLC1lWzldLC1lWzEwXSkubm9ybWFsaXplKCl9dXBkYXRlTWF0cml4V29ybGQoQSl7c3VwZXIudXBkYXRlTWF0cml4V29ybGQoQSksdGhpcy5tYXRyaXhXb3JsZEludmVyc2UuY29weSh0aGlzLm1hdHJpeFdvcmxkKS5pbnZlcnQoKX11cGRhdGVXb3JsZE1hdHJpeChBLGUpe3N1cGVyLnVwZGF0ZVdvcmxkTWF0cml4KEEsZSksdGhpcy5tYXRyaXhXb3JsZEludmVyc2UuY29weSh0aGlzLm1hdHJpeFdvcmxkKS5pbnZlcnQoKX1jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX19Y2xhc3MgenIgZXh0ZW5kcyBKcntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTo1MCxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOi4xLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjJlMztzdXBlcigpLHRoaXMuaXNQZXJzcGVjdGl2ZUNhbWVyYT0hMCx0aGlzLnR5cGU9IlBlcnNwZWN0aXZlQ2FtZXJhIix0aGlzLmZvdj1BLHRoaXMuem9vbT0xLHRoaXMubmVhcj10LHRoaXMuZmFyPW4sdGhpcy5mb2N1cz0xMCx0aGlzLmFzcGVjdD1lLHRoaXMudmlldz1udWxsLHRoaXMuZmlsbUdhdWdlPTM1LHRoaXMuZmlsbU9mZnNldD0wLHRoaXMudXBkYXRlUHJvamVjdGlvbk1hdHJpeCgpfWNvcHkoQSxlKXtyZXR1cm4gc3VwZXIuY29weShBLGUpLHRoaXMuZm92PUEuZm92LHRoaXMuem9vbT1BLnpvb20sdGhpcy5uZWFyPUEubmVhcix0aGlzLmZhcj1BLmZhcix0aGlzLmZvY3VzPUEuZm9jdXMsdGhpcy5hc3BlY3Q9QS5hc3BlY3QsdGhpcy52aWV3PW51bGw9PT1BLnZpZXc/bnVsbDpPYmplY3QuYXNzaWduKHt9LEEudmlldyksdGhpcy5maWxtR2F1Z2U9QS5maWxtR2F1Z2UsdGhpcy5maWxtT2Zmc2V0PUEuZmlsbU9mZnNldCx0aGlzfXNldEZvY2FsTGVuZ3RoKEEpe2NvbnN0IGU9LjUqdGhpcy5nZXRGaWxtSGVpZ2h0KCkvQTt0aGlzLmZvdj0yKnh0Kk1hdGguYXRhbihlKSx0aGlzLnVwZGF0ZVByb2plY3Rpb25NYXRyaXgoKX1nZXRGb2NhbExlbmd0aCgpe2NvbnN0IEE9TWF0aC50YW4oLjUqVHQqdGhpcy5mb3YpO3JldHVybi41KnRoaXMuZ2V0RmlsbUhlaWdodCgpL0F9Z2V0RWZmZWN0aXZlRk9WKCl7cmV0dXJuIDIqeHQqTWF0aC5hdGFuKE1hdGgudGFuKC41KlR0KnRoaXMuZm92KS90aGlzLnpvb20pfWdldEZpbG1XaWR0aCgpe3JldHVybiB0aGlzLmZpbG1HYXVnZSpNYXRoLm1pbih0aGlzLmFzcGVjdCwxKX1nZXRGaWxtSGVpZ2h0KCl7cmV0dXJuIHRoaXMuZmlsbUdhdWdlL01hdGgubWF4KHRoaXMuYXNwZWN0LDEpfXNldFZpZXdPZmZzZXQoQSxlLHQsbixpLHIpe3RoaXMuYXNwZWN0PUEvZSxudWxsPT09dGhpcy52aWV3JiYodGhpcy52aWV3PXtlbmFibGVkOiEwLGZ1bGxXaWR0aDoxLGZ1bGxIZWlnaHQ6MSxvZmZzZXRYOjAsb2Zmc2V0WTowLHdpZHRoOjEsaGVpZ2h0OjF9KSx0aGlzLnZpZXcuZW5hYmxlZD0hMCx0aGlzLnZpZXcuZnVsbFdpZHRoPUEsdGhpcy52aWV3LmZ1bGxIZWlnaHQ9ZSx0aGlzLnZpZXcub2Zmc2V0WD10LHRoaXMudmlldy5vZmZzZXRZPW4sdGhpcy52aWV3LndpZHRoPWksdGhpcy52aWV3LmhlaWdodD1yLHRoaXMudXBkYXRlUHJvamVjdGlvbk1hdHJpeCgpfWNsZWFyVmlld09mZnNldCgpe251bGwhPT10aGlzLnZpZXcmJih0aGlzLnZpZXcuZW5hYmxlZD0hMSksdGhpcy51cGRhdGVQcm9qZWN0aW9uTWF0cml4KCl9dXBkYXRlUHJvamVjdGlvbk1hdHJpeCgpe2NvbnN0IEE9dGhpcy5uZWFyO2xldCBlPUEqTWF0aC50YW4oLjUqVHQqdGhpcy5mb3YpL3RoaXMuem9vbSx0PTIqZSxuPXRoaXMuYXNwZWN0KnQsaT0tLjUqbjtjb25zdCByPXRoaXMudmlldztpZihudWxsIT09dGhpcy52aWV3JiZ0aGlzLnZpZXcuZW5hYmxlZCl7Y29uc3QgQT1yLmZ1bGxXaWR0aCxvPXIuZnVsbEhlaWdodDtpKz1yLm9mZnNldFgqbi9BLGUtPXIub2Zmc2V0WSp0L28sbio9ci53aWR0aC9BLHQqPXIuaGVpZ2h0L299Y29uc3Qgbz10aGlzLmZpbG1PZmZzZXQ7MCE9PW8mJihpKz1BKm8vdGhpcy5nZXRGaWxtV2lkdGgoKSksdGhpcy5wcm9qZWN0aW9uTWF0cml4Lm1ha2VQZXJzcGVjdGl2ZShpLGkrbixlLGUtdCxBLHRoaXMuZmFyLHRoaXMuY29vcmRpbmF0ZVN5c3RlbSksdGhpcy5wcm9qZWN0aW9uTWF0cml4SW52ZXJzZS5jb3B5KHRoaXMucHJvamVjdGlvbk1hdHJpeCkuaW52ZXJ0KCl9dG9KU09OKEEpe2NvbnN0IGU9c3VwZXIudG9KU09OKEEpO3JldHVybiBlLm9iamVjdC5mb3Y9dGhpcy5mb3YsZS5vYmplY3Quem9vbT10aGlzLnpvb20sZS5vYmplY3QubmVhcj10aGlzLm5lYXIsZS5vYmplY3QuZmFyPXRoaXMuZmFyLGUub2JqZWN0LmZvY3VzPXRoaXMuZm9jdXMsZS5vYmplY3QuYXNwZWN0PXRoaXMuYXNwZWN0LG51bGwhPT10aGlzLnZpZXcmJihlLm9iamVjdC52aWV3PU9iamVjdC5hc3NpZ24oe30sdGhpcy52aWV3KSksZS5vYmplY3QuZmlsbUdhdWdlPXRoaXMuZmlsbUdhdWdlLGUub2JqZWN0LmZpbG1PZmZzZXQ9dGhpcy5maWxtT2Zmc2V0LGV9fWNsYXNzIExyIGV4dGVuZHMgcGl7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKCksdGhpcy50eXBlPSJDdWJlQ2FtZXJhIix0aGlzLnJlbmRlclRhcmdldD10LHRoaXMuY29vcmRpbmF0ZVN5c3RlbT1udWxsO2NvbnN0IG49bmV3IHpyKC05MCwxLEEsZSk7bi5sYXllcnM9dGhpcy5sYXllcnMsdGhpcy5hZGQobik7Y29uc3QgaT1uZXcgenIoLTkwLDEsQSxlKTtpLmxheWVycz10aGlzLmxheWVycyx0aGlzLmFkZChpKTtjb25zdCByPW5ldyB6cigtOTAsMSxBLGUpO3IubGF5ZXJzPXRoaXMubGF5ZXJzLHRoaXMuYWRkKHIpO2NvbnN0IG89bmV3IHpyKC05MCwxLEEsZSk7by5sYXllcnM9dGhpcy5sYXllcnMsdGhpcy5hZGQobyk7Y29uc3Qgcz1uZXcgenIoLTkwLDEsQSxlKTtzLmxheWVycz10aGlzLmxheWVycyx0aGlzLmFkZChzKTtjb25zdCBhPW5ldyB6cigtOTAsMSxBLGUpO2EubGF5ZXJzPXRoaXMubGF5ZXJzLHRoaXMuYWRkKGEpfXVwZGF0ZUNvb3JkaW5hdGVTeXN0ZW0oKXtjb25zdCBBPXRoaXMuY29vcmRpbmF0ZVN5c3RlbSxlPXRoaXMuY2hpbGRyZW4uY29uY2F0KCksW3QsbixpLHIsbyxzXT1lO2Zvcihjb25zdCBBIG9mIGUpdGhpcy5yZW1vdmUoQSk7aWYoQT09PVl0KXQudXAuc2V0KDAsMSwwKSx0Lmxvb2tBdCgxLDAsMCksbi51cC5zZXQoMCwxLDApLG4ubG9va0F0KC0xLDAsMCksaS51cC5zZXQoMCwwLC0xKSxpLmxvb2tBdCgwLDEsMCksci51cC5zZXQoMCwwLDEpLHIubG9va0F0KDAsLTEsMCksby51cC5zZXQoMCwxLDApLG8ubG9va0F0KDAsMCwxKSxzLnVwLnNldCgwLDEsMCkscy5sb29rQXQoMCwwLC0xKTtlbHNle2lmKEEhPT1mdCl0aHJvdyBuZXcgRXJyb3IoIlRIUkVFLkN1YmVDYW1lcmEudXBkYXRlQ29vcmRpbmF0ZVN5c3RlbSgpOiBJbnZhbGlkIGNvb3JkaW5hdGUgc3lzdGVtOiAiK0EpO3QudXAuc2V0KDAsLTEsMCksdC5sb29rQXQoLTEsMCwwKSxuLnVwLnNldCgwLC0xLDApLG4ubG9va0F0KDEsMCwwKSxpLnVwLnNldCgwLDAsMSksaS5sb29rQXQoMCwxLDApLHIudXAuc2V0KDAsMCwtMSksci5sb29rQXQoMCwtMSwwKSxvLnVwLnNldCgwLC0xLDApLG8ubG9va0F0KDAsMCwxKSxzLnVwLnNldCgwLC0xLDApLHMubG9va0F0KDAsMCwtMSl9Zm9yKGNvbnN0IEEgb2YgZSl0aGlzLmFkZChBKSxBLnVwZGF0ZU1hdHJpeFdvcmxkKCl9dXBkYXRlKEEsZSl7bnVsbD09PXRoaXMucGFyZW50JiZ0aGlzLnVwZGF0ZU1hdHJpeFdvcmxkKCk7Y29uc3QgdD10aGlzLnJlbmRlclRhcmdldDt0aGlzLmNvb3JkaW5hdGVTeXN0ZW0hPT1BLmNvb3JkaW5hdGVTeXN0ZW0mJih0aGlzLmNvb3JkaW5hdGVTeXN0ZW09QS5jb29yZGluYXRlU3lzdGVtLHRoaXMudXBkYXRlQ29vcmRpbmF0ZVN5c3RlbSgpKTtjb25zdFtuLGkscixvLHMsYV09dGhpcy5jaGlsZHJlbixCPUEuZ2V0UmVuZGVyVGFyZ2V0KCksYz1BLnRvbmVNYXBwaW5nLGc9QS54ci5lbmFibGVkO0EudG9uZU1hcHBpbmc9XyxBLnhyLmVuYWJsZWQ9ITE7Y29uc3QgRT10LnRleHR1cmUuZ2VuZXJhdGVNaXBtYXBzO3QudGV4dHVyZS5nZW5lcmF0ZU1pcG1hcHM9ITEsQS5zZXRSZW5kZXJUYXJnZXQodCwwKSxBLnJlbmRlcihlLG4pLEEuc2V0UmVuZGVyVGFyZ2V0KHQsMSksQS5yZW5kZXIoZSxpKSxBLnNldFJlbmRlclRhcmdldCh0LDIpLEEucmVuZGVyKGUsciksQS5zZXRSZW5kZXJUYXJnZXQodCwzKSxBLnJlbmRlcihlLG8pLEEuc2V0UmVuZGVyVGFyZ2V0KHQsNCksQS5yZW5kZXIoZSxzKSx0LnRleHR1cmUuZ2VuZXJhdGVNaXBtYXBzPUUsQS5zZXRSZW5kZXJUYXJnZXQodCw1KSxBLnJlbmRlcihlLGEpLEEuc2V0UmVuZGVyVGFyZ2V0KEIpLEEudG9uZU1hcHBpbmc9YyxBLnhyLmVuYWJsZWQ9Zyx0LnRleHR1cmUubmVlZHNQTVJFTVVwZGF0ZT0hMH19Y2xhc3MgUHIgZXh0ZW5kcyBFbntjb25zdHJ1Y3RvcihBLGUsdCxuLGkscixvLHMsYSxCKXtzdXBlcihBPXZvaWQgMCE9PUE/QTpbXSxlPXZvaWQgMCE9PWU/ZTppQSx0LG4saSxyLG8scyxhLEIpLHRoaXMuaXNDdWJlVGV4dHVyZT0hMCx0aGlzLmZsaXBZPSExfWdldCBpbWFnZXMoKXtyZXR1cm4gdGhpcy5pbWFnZX1zZXQgaW1hZ2VzKEEpe3RoaXMuaW1hZ2U9QX19Y2xhc3MgT3IgZXh0ZW5kcyB1bntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O3N1cGVyKEEsQSxlKSx0aGlzLmlzV2ViR0xDdWJlUmVuZGVyVGFyZ2V0PSEwO2NvbnN0IHQ9e3dpZHRoOkEsaGVpZ2h0OkEsZGVwdGg6MX0sbj1bdCx0LHQsdCx0LHRdO3ZvaWQgMCE9PWUuZW5jb2RpbmcmJihfdCgiVEhSRUUuV2ViR0xDdWJlUmVuZGVyVGFyZ2V0OiBvcHRpb24uZW5jb2RpbmcgaGFzIGJlZW4gcmVwbGFjZWQgYnkgb3B0aW9uLmNvbG9yU3BhY2UuIiksZS5jb2xvclNwYWNlPWUuZW5jb2Rpbmc9PT1TZT9KZTpqZSksdGhpcy50ZXh0dXJlPW5ldyBQcihuLGUubWFwcGluZyxlLndyYXBTLGUud3JhcFQsZS5tYWdGaWx0ZXIsZS5taW5GaWx0ZXIsZS5mb3JtYXQsZS50eXBlLGUuYW5pc290cm9weSxlLmNvbG9yU3BhY2UpLHRoaXMudGV4dHVyZS5pc1JlbmRlclRhcmdldFRleHR1cmU9ITAsdGhpcy50ZXh0dXJlLmdlbmVyYXRlTWlwbWFwcz12b2lkIDAhPT1lLmdlbmVyYXRlTWlwbWFwcyYmZS5nZW5lcmF0ZU1pcG1hcHMsdGhpcy50ZXh0dXJlLm1pbkZpbHRlcj12b2lkIDAhPT1lLm1pbkZpbHRlcj9lLm1pbkZpbHRlcjp3QX1mcm9tRXF1aXJlY3Rhbmd1bGFyVGV4dHVyZShBLGUpe3RoaXMudGV4dHVyZS50eXBlPWUudHlwZSx0aGlzLnRleHR1cmUuY29sb3JTcGFjZT1lLmNvbG9yU3BhY2UsdGhpcy50ZXh0dXJlLmdlbmVyYXRlTWlwbWFwcz1lLmdlbmVyYXRlTWlwbWFwcyx0aGlzLnRleHR1cmUubWluRmlsdGVyPWUubWluRmlsdGVyLHRoaXMudGV4dHVyZS5tYWdGaWx0ZXI9ZS5tYWdGaWx0ZXI7Y29uc3QgdD17dEVxdWlyZWN0Ont2YWx1ZTpudWxsfX0sbj0iXG5cblx0XHRcdFx0dmFyeWluZyB2ZWMzIHZXb3JsZERpcmVjdGlvbjtcblxuXHRcdFx0XHR2ZWMzIHRyYW5zZm9ybURpcmVjdGlvbiggaW4gdmVjMyBkaXIsIGluIG1hdDQgbWF0cml4ICkge1xuXG5cdFx0XHRcdFx0cmV0dXJuIG5vcm1hbGl6ZSggKCBtYXRyaXggKiB2ZWM0KCBkaXIsIDAuMCApICkueHl6ICk7XG5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHZvaWQgbWFpbigpIHtcblxuXHRcdFx0XHRcdHZXb3JsZERpcmVjdGlvbiA9IHRyYW5zZm9ybURpcmVjdGlvbiggcG9zaXRpb24sIG1vZGVsTWF0cml4ICk7XG5cblx0XHRcdFx0XHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHRcdFx0XHRcdCNpbmNsdWRlIDxwcm9qZWN0X3ZlcnRleD5cblxuXHRcdFx0XHR9XG5cdFx0XHQiLGk9IlxuXG5cdFx0XHRcdHVuaWZvcm0gc2FtcGxlcjJEIHRFcXVpcmVjdDtcblxuXHRcdFx0XHR2YXJ5aW5nIHZlYzMgdldvcmxkRGlyZWN0aW9uO1xuXG5cdFx0XHRcdCNpbmNsdWRlIDxjb21tb24+XG5cblx0XHRcdFx0dm9pZCBtYWluKCkge1xuXG5cdFx0XHRcdFx0dmVjMyBkaXJlY3Rpb24gPSBub3JtYWxpemUoIHZXb3JsZERpcmVjdGlvbiApO1xuXG5cdFx0XHRcdFx0dmVjMiBzYW1wbGVVViA9IGVxdWlyZWN0VXYoIGRpcmVjdGlvbiApO1xuXG5cdFx0XHRcdFx0Z2xfRnJhZ0NvbG9yID0gdGV4dHVyZTJEKCB0RXF1aXJlY3QsIHNhbXBsZVVWICk7XG5cblx0XHRcdFx0fVxuXHRcdFx0IixyPW5ldyBTcig1LDUsNSksbz1uZXcganIoe25hbWU6IkN1YmVtYXBGcm9tRXF1aXJlY3QiLHVuaWZvcm1zOmJyKHQpLHZlcnRleFNoYWRlcjpuLGZyYWdtZW50U2hhZGVyOmksc2lkZTpsLGJsZW5kaW5nOkN9KTtvLnVuaWZvcm1zLnRFcXVpcmVjdC52YWx1ZT1lO2NvbnN0IHM9bmV3IFJyKHIsbyksYT1lLm1pbkZpbHRlcjtlLm1pbkZpbHRlcj09PU1BJiYoZS5taW5GaWx0ZXI9d0EpO3JldHVybiBuZXcgTHIoMSwxMCx0aGlzKS51cGRhdGUoQSxzKSxlLm1pbkZpbHRlcj1hLHMuZ2VvbWV0cnkuZGlzcG9zZSgpLHMubWF0ZXJpYWwuZGlzcG9zZSgpLHRoaXN9Y2xlYXIoQSxlLHQsbil7Y29uc3QgaT1BLmdldFJlbmRlclRhcmdldCgpO2ZvcihsZXQgaT0wO2k8NjtpKyspQS5zZXRSZW5kZXJUYXJnZXQodGhpcyxpKSxBLmNsZWFyKGUsdCxuKTtBLnNldFJlbmRlclRhcmdldChpKX19Y29uc3QgVnI9bmV3IGRuLFdyPW5ldyBkbixLcj1uZXcgUHQ7Y2xhc3MgWHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IGRuKDEsMCwwKSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3RoaXMuaXNQbGFuZT0hMCx0aGlzLm5vcm1hbD1BLHRoaXMuY29uc3RhbnQ9ZX1zZXQoQSxlKXtyZXR1cm4gdGhpcy5ub3JtYWwuY29weShBKSx0aGlzLmNvbnN0YW50PWUsdGhpc31zZXRDb21wb25lbnRzKEEsZSx0LG4pe3JldHVybiB0aGlzLm5vcm1hbC5zZXQoQSxlLHQpLHRoaXMuY29uc3RhbnQ9bix0aGlzfXNldEZyb21Ob3JtYWxBbmRDb3BsYW5hclBvaW50KEEsZSl7cmV0dXJuIHRoaXMubm9ybWFsLmNvcHkoQSksdGhpcy5jb25zdGFudD0tZS5kb3QodGhpcy5ub3JtYWwpLHRoaXN9c2V0RnJvbUNvcGxhbmFyUG9pbnRzKEEsZSx0KXtjb25zdCBuPVZyLnN1YlZlY3RvcnModCxlKS5jcm9zcyhXci5zdWJWZWN0b3JzKEEsZSkpLm5vcm1hbGl6ZSgpO3JldHVybiB0aGlzLnNldEZyb21Ob3JtYWxBbmRDb3BsYW5hclBvaW50KG4sQSksdGhpc31jb3B5KEEpe3JldHVybiB0aGlzLm5vcm1hbC5jb3B5KEEubm9ybWFsKSx0aGlzLmNvbnN0YW50PUEuY29uc3RhbnQsdGhpc31ub3JtYWxpemUoKXtjb25zdCBBPTEvdGhpcy5ub3JtYWwubGVuZ3RoKCk7cmV0dXJuIHRoaXMubm9ybWFsLm11bHRpcGx5U2NhbGFyKEEpLHRoaXMuY29uc3RhbnQqPUEsdGhpc31uZWdhdGUoKXtyZXR1cm4gdGhpcy5jb25zdGFudCo9LTEsdGhpcy5ub3JtYWwubmVnYXRlKCksdGhpc31kaXN0YW5jZVRvUG9pbnQoQSl7cmV0dXJuIHRoaXMubm9ybWFsLmRvdChBKSt0aGlzLmNvbnN0YW50fWRpc3RhbmNlVG9TcGhlcmUoQSl7cmV0dXJuIHRoaXMuZGlzdGFuY2VUb1BvaW50KEEuY2VudGVyKS1BLnJhZGl1c31wcm9qZWN0UG9pbnQoQSxlKXtyZXR1cm4gZS5jb3B5KEEpLmFkZFNjYWxlZFZlY3Rvcih0aGlzLm5vcm1hbCwtdGhpcy5kaXN0YW5jZVRvUG9pbnQoQSkpfWludGVyc2VjdExpbmUoQSxlKXtjb25zdCB0PUEuZGVsdGEoVnIpLG49dGhpcy5ub3JtYWwuZG90KHQpO2lmKDA9PT1uKXJldHVybiAwPT09dGhpcy5kaXN0YW5jZVRvUG9pbnQoQS5zdGFydCk/ZS5jb3B5KEEuc3RhcnQpOm51bGw7Y29uc3QgaT0tKEEuc3RhcnQuZG90KHRoaXMubm9ybWFsKSt0aGlzLmNvbnN0YW50KS9uO3JldHVybiBpPDB8fGk+MT9udWxsOmUuY29weShBLnN0YXJ0KS5hZGRTY2FsZWRWZWN0b3IodCxpKX1pbnRlcnNlY3RzTGluZShBKXtjb25zdCBlPXRoaXMuZGlzdGFuY2VUb1BvaW50KEEuc3RhcnQpLHQ9dGhpcy5kaXN0YW5jZVRvUG9pbnQoQS5lbmQpO3JldHVybiBlPDAmJnQ+MHx8dDwwJiZlPjB9aW50ZXJzZWN0c0JveChBKXtyZXR1cm4gQS5pbnRlcnNlY3RzUGxhbmUodGhpcyl9aW50ZXJzZWN0c1NwaGVyZShBKXtyZXR1cm4gQS5pbnRlcnNlY3RzUGxhbmUodGhpcyl9Y29wbGFuYXJQb2ludChBKXtyZXR1cm4gQS5jb3B5KHRoaXMubm9ybWFsKS5tdWx0aXBseVNjYWxhcigtdGhpcy5jb25zdGFudCl9YXBwbHlNYXRyaXg0KEEsZSl7Y29uc3QgdD1lfHxLci5nZXROb3JtYWxNYXRyaXgoQSksbj10aGlzLmNvcGxhbmFyUG9pbnQoVnIpLmFwcGx5TWF0cml4NChBKSxpPXRoaXMubm9ybWFsLmFwcGx5TWF0cml4Myh0KS5ub3JtYWxpemUoKTtyZXR1cm4gdGhpcy5jb25zdGFudD0tbi5kb3QoaSksdGhpc310cmFuc2xhdGUoQSl7cmV0dXJuIHRoaXMuY29uc3RhbnQtPUEuZG90KHRoaXMubm9ybWFsKSx0aGlzfWVxdWFscyhBKXtyZXR1cm4gQS5ub3JtYWwuZXF1YWxzKHRoaXMubm9ybWFsKSYmQS5jb25zdGFudD09PXRoaXMuY29uc3RhbnR9Y2xvbmUoKXtyZXR1cm4obmV3IHRoaXMuY29uc3RydWN0b3IpLmNvcHkodGhpcyl9fWNvbnN0IFpyPW5ldyB6bixfcj1uZXcgZG47Y2xhc3MgcXJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IFhyLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBYcix0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpuZXcgWHIsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bmV3IFhyLGk9YXJndW1lbnRzLmxlbmd0aD40JiZ2b2lkIDAhPT1hcmd1bWVudHNbNF0/YXJndW1lbnRzWzRdOm5ldyBYcixyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XTpuZXcgWHI7dGhpcy5wbGFuZXM9W0EsZSx0LG4saSxyXX1zZXQoQSxlLHQsbixpLHIpe2NvbnN0IG89dGhpcy5wbGFuZXM7cmV0dXJuIG9bMF0uY29weShBKSxvWzFdLmNvcHkoZSksb1syXS5jb3B5KHQpLG9bM10uY29weShuKSxvWzRdLmNvcHkoaSksb1s1XS5jb3B5KHIpLHRoaXN9Y29weShBKXtjb25zdCBlPXRoaXMucGxhbmVzO2ZvcihsZXQgdD0wO3Q8Njt0KyspZVt0XS5jb3B5KEEucGxhbmVzW3RdKTtyZXR1cm4gdGhpc31zZXRGcm9tUHJvamVjdGlvbk1hdHJpeChBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06WXQ7Y29uc3QgdD10aGlzLnBsYW5lcyxuPUEuZWxlbWVudHMsaT1uWzBdLHI9blsxXSxvPW5bMl0scz1uWzNdLGE9bls0XSxCPW5bNV0sYz1uWzZdLGc9bls3XSxFPW5bOF0sUT1uWzldLHU9blsxMF0sbD1uWzExXSxoPW5bMTJdLHc9blsxM10sQz1uWzE0XSxJPW5bMTVdO2lmKHRbMF0uc2V0Q29tcG9uZW50cyhzLWksZy1hLGwtRSxJLWgpLm5vcm1hbGl6ZSgpLHRbMV0uc2V0Q29tcG9uZW50cyhzK2ksZythLGwrRSxJK2gpLm5vcm1hbGl6ZSgpLHRbMl0uc2V0Q29tcG9uZW50cyhzK3IsZytCLGwrUSxJK3cpLm5vcm1hbGl6ZSgpLHRbM10uc2V0Q29tcG9uZW50cyhzLXIsZy1CLGwtUSxJLXcpLm5vcm1hbGl6ZSgpLHRbNF0uc2V0Q29tcG9uZW50cyhzLW8sZy1jLGwtdSxJLUMpLm5vcm1hbGl6ZSgpLGU9PT1ZdCl0WzVdLnNldENvbXBvbmVudHMocytvLGcrYyxsK3UsSStDKS5ub3JtYWxpemUoKTtlbHNle2lmKGUhPT1mdCl0aHJvdyBuZXcgRXJyb3IoIlRIUkVFLkZydXN0dW0uc2V0RnJvbVByb2plY3Rpb25NYXRyaXgoKTogSW52YWxpZCBjb29yZGluYXRlIHN5c3RlbTogIitlKTt0WzVdLnNldENvbXBvbmVudHMobyxjLHUsQykubm9ybWFsaXplKCl9cmV0dXJuIHRoaXN9aW50ZXJzZWN0c09iamVjdChBKXtpZih2b2lkIDAhPT1BLmJvdW5kaW5nU3BoZXJlKW51bGw9PT1BLmJvdW5kaW5nU3BoZXJlJiZBLmNvbXB1dGVCb3VuZGluZ1NwaGVyZSgpLFpyLmNvcHkoQS5ib3VuZGluZ1NwaGVyZSkuYXBwbHlNYXRyaXg0KEEubWF0cml4V29ybGQpO2Vsc2V7Y29uc3QgZT1BLmdlb21ldHJ5O251bGw9PT1lLmJvdW5kaW5nU3BoZXJlJiZlLmNvbXB1dGVCb3VuZGluZ1NwaGVyZSgpLFpyLmNvcHkoZS5ib3VuZGluZ1NwaGVyZSkuYXBwbHlNYXRyaXg0KEEubWF0cml4V29ybGQpfXJldHVybiB0aGlzLmludGVyc2VjdHNTcGhlcmUoWnIpfWludGVyc2VjdHNTcHJpdGUoQSl7cmV0dXJuIFpyLmNlbnRlci5zZXQoMCwwLDApLFpyLnJhZGl1cz0uNzA3MTA2NzgxMTg2NTQ3Nixaci5hcHBseU1hdHJpeDQoQS5tYXRyaXhXb3JsZCksdGhpcy5pbnRlcnNlY3RzU3BoZXJlKFpyKX1pbnRlcnNlY3RzU3BoZXJlKEEpe2NvbnN0IGU9dGhpcy5wbGFuZXMsdD1BLmNlbnRlcixuPS1BLnJhZGl1cztmb3IobGV0IEE9MDtBPDY7QSsrKXtpZihlW0FdLmRpc3RhbmNlVG9Qb2ludCh0KTxuKXJldHVybiExfXJldHVybiEwfWludGVyc2VjdHNCb3goQSl7Y29uc3QgZT10aGlzLnBsYW5lcztmb3IobGV0IHQ9MDt0PDY7dCsrKXtjb25zdCBuPWVbdF07aWYoX3IueD1uLm5vcm1hbC54PjA/QS5tYXgueDpBLm1pbi54LF9yLnk9bi5ub3JtYWwueT4wP0EubWF4Lnk6QS5taW4ueSxfci56PW4ubm9ybWFsLno+MD9BLm1heC56OkEubWluLnosbi5kaXN0YW5jZVRvUG9pbnQoX3IpPDApcmV0dXJuITF9cmV0dXJuITB9Y29udGFpbnNQb2ludChBKXtjb25zdCBlPXRoaXMucGxhbmVzO2ZvcihsZXQgdD0wO3Q8Njt0KyspaWYoZVt0XS5kaXN0YW5jZVRvUG9pbnQoQSk8MClyZXR1cm4hMTtyZXR1cm4hMH1jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX19ZnVuY3Rpb24gJHIoKXtsZXQgQT1udWxsLGU9ITEsdD1udWxsLG49bnVsbDtmdW5jdGlvbiBpKGUscil7dChlLHIpLG49QS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoaSl9cmV0dXJue3N0YXJ0OmZ1bmN0aW9uKCl7ITAhPT1lJiZudWxsIT09dCYmKG49QS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoaSksZT0hMCl9LHN0b3A6ZnVuY3Rpb24oKXtBLmNhbmNlbEFuaW1hdGlvbkZyYW1lKG4pLGU9ITF9LHNldEFuaW1hdGlvbkxvb3A6ZnVuY3Rpb24oQSl7dD1BfSxzZXRDb250ZXh0OmZ1bmN0aW9uKGUpe0E9ZX19fWZ1bmN0aW9uIEFvKEEsZSl7Y29uc3QgdD1lLmlzV2ViR0wyLG49bmV3IFdlYWtNYXA7cmV0dXJue2dldDpmdW5jdGlvbihBKXtyZXR1cm4gQS5pc0ludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlJiYoQT1BLmRhdGEpLG4uZ2V0KEEpfSxyZW1vdmU6ZnVuY3Rpb24oZSl7ZS5pc0ludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlJiYoZT1lLmRhdGEpO2NvbnN0IHQ9bi5nZXQoZSk7dCYmKEEuZGVsZXRlQnVmZmVyKHQuYnVmZmVyKSxuLmRlbGV0ZShlKSl9LHVwZGF0ZTpmdW5jdGlvbihlLGkpe2lmKGUuaXNHTEJ1ZmZlckF0dHJpYnV0ZSl7Y29uc3QgQT1uLmdldChlKTtyZXR1cm4gdm9pZCgoIUF8fEEudmVyc2lvbjxlLnZlcnNpb24pJiZuLnNldChlLHtidWZmZXI6ZS5idWZmZXIsdHlwZTplLnR5cGUsYnl0ZXNQZXJFbGVtZW50OmUuZWxlbWVudFNpemUsdmVyc2lvbjplLnZlcnNpb259KSl9ZS5pc0ludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlJiYoZT1lLmRhdGEpO2NvbnN0IHI9bi5nZXQoZSk7dm9pZCAwPT09cj9uLnNldChlLGZ1bmN0aW9uKGUsbil7Y29uc3QgaT1lLmFycmF5LHI9ZS51c2FnZSxvPUEuY3JlYXRlQnVmZmVyKCk7bGV0IHM7aWYoQS5iaW5kQnVmZmVyKG4sbyksQS5idWZmZXJEYXRhKG4saSxyKSxlLm9uVXBsb2FkQ2FsbGJhY2soKSxpIGluc3RhbmNlb2YgRmxvYXQzMkFycmF5KXM9QS5GTE9BVDtlbHNlIGlmKGkgaW5zdGFuY2VvZiBVaW50MTZBcnJheSlpZihlLmlzRmxvYXQxNkJ1ZmZlckF0dHJpYnV0ZSl7aWYoIXQpdGhyb3cgbmV3IEVycm9yKCJUSFJFRS5XZWJHTEF0dHJpYnV0ZXM6IFVzYWdlIG9mIEZsb2F0MTZCdWZmZXJBdHRyaWJ1dGUgcmVxdWlyZXMgV2ViR0wyLiIpO3M9QS5IQUxGX0ZMT0FUfWVsc2Ugcz1BLlVOU0lHTkVEX1NIT1JUO2Vsc2UgaWYoaSBpbnN0YW5jZW9mIEludDE2QXJyYXkpcz1BLlNIT1JUO2Vsc2UgaWYoaSBpbnN0YW5jZW9mIFVpbnQzMkFycmF5KXM9QS5VTlNJR05FRF9JTlQ7ZWxzZSBpZihpIGluc3RhbmNlb2YgSW50MzJBcnJheSlzPUEuSU5UO2Vsc2UgaWYoaSBpbnN0YW5jZW9mIEludDhBcnJheSlzPUEuQllURTtlbHNlIGlmKGkgaW5zdGFuY2VvZiBVaW50OEFycmF5KXM9QS5VTlNJR05FRF9CWVRFO2Vsc2V7aWYoIShpIGluc3RhbmNlb2YgVWludDhDbGFtcGVkQXJyYXkpKXRocm93IG5ldyBFcnJvcigiVEhSRUUuV2ViR0xBdHRyaWJ1dGVzOiBVbnN1cHBvcnRlZCBidWZmZXIgZGF0YSBmb3JtYXQ6ICIraSk7cz1BLlVOU0lHTkVEX0JZVEV9cmV0dXJue2J1ZmZlcjpvLHR5cGU6cyxieXRlc1BlckVsZW1lbnQ6aS5CWVRFU19QRVJfRUxFTUVOVCx2ZXJzaW9uOmUudmVyc2lvbn19KGUsaSkpOnIudmVyc2lvbjxlLnZlcnNpb24mJighZnVuY3Rpb24oZSxuLGkpe2NvbnN0IHI9bi5hcnJheSxvPW4udXBkYXRlUmFuZ2U7QS5iaW5kQnVmZmVyKGksZSksLTE9PT1vLmNvdW50P0EuYnVmZmVyU3ViRGF0YShpLDAscik6KHQ/QS5idWZmZXJTdWJEYXRhKGksby5vZmZzZXQqci5CWVRFU19QRVJfRUxFTUVOVCxyLG8ub2Zmc2V0LG8uY291bnQpOkEuYnVmZmVyU3ViRGF0YShpLG8ub2Zmc2V0KnIuQllURVNfUEVSX0VMRU1FTlQsci5zdWJhcnJheShvLm9mZnNldCxvLm9mZnNldCtvLmNvdW50KSksby5jb3VudD0tMSksbi5vblVwbG9hZENhbGxiYWNrKCl9KHIuYnVmZmVyLGUsaSksci52ZXJzaW9uPWUudmVyc2lvbil9fX1jbGFzcyBlbyBleHRlbmRzIGxye2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjE7c3VwZXIoKSx0aGlzLnR5cGU9IlBsYW5lR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17d2lkdGg6QSxoZWlnaHQ6ZSx3aWR0aFNlZ21lbnRzOnQsaGVpZ2h0U2VnbWVudHM6bn07Y29uc3QgaT1BLzIscj1lLzIsbz1NYXRoLmZsb29yKHQpLHM9TWF0aC5mbG9vcihuKSxhPW8rMSxCPXMrMSxjPUEvbyxnPWUvcyxFPVtdLFE9W10sdT1bXSxsPVtdO2ZvcihsZXQgQT0wO0E8QjtBKyspe2NvbnN0IGU9QSpnLXI7Zm9yKGxldCB0PTA7dDxhO3QrKyl7Y29uc3Qgbj10KmMtaTtRLnB1c2gobiwtZSwwKSx1LnB1c2goMCwwLDEpLGwucHVzaCh0L28pLGwucHVzaCgxLUEvcyl9fWZvcihsZXQgQT0wO0E8cztBKyspZm9yKGxldCBlPTA7ZTxvO2UrKyl7Y29uc3QgdD1lK2EqQSxuPWUrYSooQSsxKSxpPWUrMSthKihBKzEpLHI9ZSsxK2EqQTtFLnB1c2godCxuLHIpLEUucHVzaChuLGkscil9dGhpcy5zZXRJbmRleChFKSx0aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihRLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgb3IodSwzKSksdGhpcy5zZXRBdHRyaWJ1dGUoInV2IixuZXcgb3IobCwyKSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgZW8oQS53aWR0aCxBLmhlaWdodCxBLndpZHRoU2VnbWVudHMsQS5oZWlnaHRTZWdtZW50cyl9fWNvbnN0IHRvPXthbHBoYW1hcF9mcmFnbWVudDoiI2lmZGVmIFVTRV9BTFBIQU1BUFxuXHRkaWZmdXNlQ29sb3IuYSAqPSB0ZXh0dXJlMkQoIGFscGhhTWFwLCB2QWxwaGFNYXBVdiApLmc7XG4jZW5kaWYiLGFscGhhbWFwX3BhcnNfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfQUxQSEFNQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgYWxwaGFNYXA7XG4jZW5kaWYiLGFscGhhdGVzdF9mcmFnbWVudDoiI2lmZGVmIFVTRV9BTFBIQVRFU1Rcblx0aWYgKCBkaWZmdXNlQ29sb3IuYSA8IGFscGhhVGVzdCApIGRpc2NhcmQ7XG4jZW5kaWYiLGFscGhhdGVzdF9wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX0FMUEhBVEVTVFxuXHR1bmlmb3JtIGZsb2F0IGFscGhhVGVzdDtcbiNlbmRpZiIsYW9tYXBfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfQU9NQVBcblx0ZmxvYXQgYW1iaWVudE9jY2x1c2lvbiA9ICggdGV4dHVyZTJEKCBhb01hcCwgdkFvTWFwVXYgKS5yIC0gMS4wICkgKiBhb01hcEludGVuc2l0eSArIDEuMDtcblx0cmVmbGVjdGVkTGlnaHQuaW5kaXJlY3REaWZmdXNlICo9IGFtYmllbnRPY2NsdXNpb247XG5cdCNpZiBkZWZpbmVkKCBVU0VfRU5WTUFQICkgJiYgZGVmaW5lZCggU1RBTkRBUkQgKVxuXHRcdGZsb2F0IGRvdE5WID0gc2F0dXJhdGUoIGRvdCggZ2VvbWV0cnkubm9ybWFsLCBnZW9tZXRyeS52aWV3RGlyICkgKTtcblx0XHRyZWZsZWN0ZWRMaWdodC5pbmRpcmVjdFNwZWN1bGFyICo9IGNvbXB1dGVTcGVjdWxhck9jY2x1c2lvbiggZG90TlYsIGFtYmllbnRPY2NsdXNpb24sIG1hdGVyaWFsLnJvdWdobmVzcyApO1xuXHQjZW5kaWZcbiNlbmRpZiIsYW9tYXBfcGFyc19mcmFnbWVudDoiI2lmZGVmIFVTRV9BT01BUFxuXHR1bmlmb3JtIHNhbXBsZXIyRCBhb01hcDtcblx0dW5pZm9ybSBmbG9hdCBhb01hcEludGVuc2l0eTtcbiNlbmRpZiIsYmVnaW5fdmVydGV4OiJ2ZWMzIHRyYW5zZm9ybWVkID0gdmVjMyggcG9zaXRpb24gKTsiLGJlZ2lubm9ybWFsX3ZlcnRleDoidmVjMyBvYmplY3ROb3JtYWwgPSB2ZWMzKCBub3JtYWwgKTtcbiNpZmRlZiBVU0VfVEFOR0VOVFxuXHR2ZWMzIG9iamVjdFRhbmdlbnQgPSB2ZWMzKCB0YW5nZW50Lnh5eiApO1xuI2VuZGlmIixic2RmczoiZmxvYXQgR19CbGlublBob25nX0ltcGxpY2l0KCApIHtcblx0cmV0dXJuIDAuMjU7XG59XG5mbG9hdCBEX0JsaW5uUGhvbmcoIGNvbnN0IGluIGZsb2F0IHNoaW5pbmVzcywgY29uc3QgaW4gZmxvYXQgZG90TkggKSB7XG5cdHJldHVybiBSRUNJUFJPQ0FMX1BJICogKCBzaGluaW5lc3MgKiAwLjUgKyAxLjAgKSAqIHBvdyggZG90TkgsIHNoaW5pbmVzcyApO1xufVxudmVjMyBCUkRGX0JsaW5uUGhvbmcoIGNvbnN0IGluIHZlYzMgbGlnaHREaXIsIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIHZlYzMgc3BlY3VsYXJDb2xvciwgY29uc3QgaW4gZmxvYXQgc2hpbmluZXNzICkge1xuXHR2ZWMzIGhhbGZEaXIgPSBub3JtYWxpemUoIGxpZ2h0RGlyICsgdmlld0RpciApO1xuXHRmbG9hdCBkb3ROSCA9IHNhdHVyYXRlKCBkb3QoIG5vcm1hbCwgaGFsZkRpciApICk7XG5cdGZsb2F0IGRvdFZIID0gc2F0dXJhdGUoIGRvdCggdmlld0RpciwgaGFsZkRpciApICk7XG5cdHZlYzMgRiA9IEZfU2NobGljayggc3BlY3VsYXJDb2xvciwgMS4wLCBkb3RWSCApO1xuXHRmbG9hdCBHID0gR19CbGlublBob25nX0ltcGxpY2l0KCApO1xuXHRmbG9hdCBEID0gRF9CbGlublBob25nKCBzaGluaW5lc3MsIGRvdE5IICk7XG5cdHJldHVybiBGICogKCBHICogRCApO1xufSAvLyB2YWxpZGF0ZWQiLGlyaWRlc2NlbmNlX2ZyYWdtZW50OiIjaWZkZWYgVVNFX0lSSURFU0NFTkNFXG5cdGNvbnN0IG1hdDMgWFlaX1RPX1JFQzcwOSA9IG1hdDMoXG5cdFx0IDMuMjQwNDU0MiwgLTAuOTY5MjY2MCwgIDAuMDU1NjQzNCxcblx0XHQtMS41MzcxMzg1LCAgMS44NzYwMTA4LCAtMC4yMDQwMjU5LFxuXHRcdC0wLjQ5ODUzMTQsICAwLjA0MTU1NjAsICAxLjA1NzIyNTJcblx0KTtcblx0dmVjMyBGcmVzbmVsMFRvSW9yKCB2ZWMzIGZyZXNuZWwwICkge1xuXHRcdHZlYzMgc3FydEYwID0gc3FydCggZnJlc25lbDAgKTtcblx0XHRyZXR1cm4gKCB2ZWMzKCAxLjAgKSArIHNxcnRGMCApIC8gKCB2ZWMzKCAxLjAgKSAtIHNxcnRGMCApO1xuXHR9XG5cdHZlYzMgSW9yVG9GcmVzbmVsMCggdmVjMyB0cmFuc21pdHRlZElvciwgZmxvYXQgaW5jaWRlbnRJb3IgKSB7XG5cdFx0cmV0dXJuIHBvdzIoICggdHJhbnNtaXR0ZWRJb3IgLSB2ZWMzKCBpbmNpZGVudElvciApICkgLyAoIHRyYW5zbWl0dGVkSW9yICsgdmVjMyggaW5jaWRlbnRJb3IgKSApICk7XG5cdH1cblx0ZmxvYXQgSW9yVG9GcmVzbmVsMCggZmxvYXQgdHJhbnNtaXR0ZWRJb3IsIGZsb2F0IGluY2lkZW50SW9yICkge1xuXHRcdHJldHVybiBwb3cyKCAoIHRyYW5zbWl0dGVkSW9yIC0gaW5jaWRlbnRJb3IgKSAvICggdHJhbnNtaXR0ZWRJb3IgKyBpbmNpZGVudElvciApKTtcblx0fVxuXHR2ZWMzIGV2YWxTZW5zaXRpdml0eSggZmxvYXQgT1BELCB2ZWMzIHNoaWZ0ICkge1xuXHRcdGZsb2F0IHBoYXNlID0gMi4wICogUEkgKiBPUEQgKiAxLjBlLTk7XG5cdFx0dmVjMyB2YWwgPSB2ZWMzKCA1LjQ4NTZlLTEzLCA0LjQyMDFlLTEzLCA1LjI0ODFlLTEzICk7XG5cdFx0dmVjMyBwb3MgPSB2ZWMzKCAxLjY4MTBlKzA2LCAxLjc5NTNlKzA2LCAyLjIwODRlKzA2ICk7XG5cdFx0dmVjMyB2YXIgPSB2ZWMzKCA0LjMyNzhlKzA5LCA5LjMwNDZlKzA5LCA2LjYxMjFlKzA5ICk7XG5cdFx0dmVjMyB4eXogPSB2YWwgKiBzcXJ0KCAyLjAgKiBQSSAqIHZhciApICogY29zKCBwb3MgKiBwaGFzZSArIHNoaWZ0ICkgKiBleHAoIC0gcG93MiggcGhhc2UgKSAqIHZhciApO1xuXHRcdHh5ei54ICs9IDkuNzQ3MGUtMTQgKiBzcXJ0KCAyLjAgKiBQSSAqIDQuNTI4MmUrMDkgKSAqIGNvcyggMi4yMzk5ZSswNiAqIHBoYXNlICsgc2hpZnRbIDAgXSApICogZXhwKCAtIDQuNTI4MmUrMDkgKiBwb3cyKCBwaGFzZSApICk7XG5cdFx0eHl6IC89IDEuMDY4NWUtNztcblx0XHR2ZWMzIHJnYiA9IFhZWl9UT19SRUM3MDkgKiB4eXo7XG5cdFx0cmV0dXJuIHJnYjtcblx0fVxuXHR2ZWMzIGV2YWxJcmlkZXNjZW5jZSggZmxvYXQgb3V0c2lkZUlPUiwgZmxvYXQgZXRhMiwgZmxvYXQgY29zVGhldGExLCBmbG9hdCB0aGluRmlsbVRoaWNrbmVzcywgdmVjMyBiYXNlRjAgKSB7XG5cdFx0dmVjMyBJO1xuXHRcdGZsb2F0IGlyaWRlc2NlbmNlSU9SID0gbWl4KCBvdXRzaWRlSU9SLCBldGEyLCBzbW9vdGhzdGVwKCAwLjAsIDAuMDMsIHRoaW5GaWxtVGhpY2tuZXNzICkgKTtcblx0XHRmbG9hdCBzaW5UaGV0YTJTcSA9IHBvdzIoIG91dHNpZGVJT1IgLyBpcmlkZXNjZW5jZUlPUiApICogKCAxLjAgLSBwb3cyKCBjb3NUaGV0YTEgKSApO1xuXHRcdGZsb2F0IGNvc1RoZXRhMlNxID0gMS4wIC0gc2luVGhldGEyU3E7XG5cdFx0aWYgKCBjb3NUaGV0YTJTcSA8IDAuMCApIHtcblx0XHRcdCByZXR1cm4gdmVjMyggMS4wICk7XG5cdFx0fVxuXHRcdGZsb2F0IGNvc1RoZXRhMiA9IHNxcnQoIGNvc1RoZXRhMlNxICk7XG5cdFx0ZmxvYXQgUjAgPSBJb3JUb0ZyZXNuZWwwKCBpcmlkZXNjZW5jZUlPUiwgb3V0c2lkZUlPUiApO1xuXHRcdGZsb2F0IFIxMiA9IEZfU2NobGljayggUjAsIDEuMCwgY29zVGhldGExICk7XG5cdFx0ZmxvYXQgUjIxID0gUjEyO1xuXHRcdGZsb2F0IFQxMjEgPSAxLjAgLSBSMTI7XG5cdFx0ZmxvYXQgcGhpMTIgPSAwLjA7XG5cdFx0aWYgKCBpcmlkZXNjZW5jZUlPUiA8IG91dHNpZGVJT1IgKSBwaGkxMiA9IFBJO1xuXHRcdGZsb2F0IHBoaTIxID0gUEkgLSBwaGkxMjtcblx0XHR2ZWMzIGJhc2VJT1IgPSBGcmVzbmVsMFRvSW9yKCBjbGFtcCggYmFzZUYwLCAwLjAsIDAuOTk5OSApICk7XHRcdHZlYzMgUjEgPSBJb3JUb0ZyZXNuZWwwKCBiYXNlSU9SLCBpcmlkZXNjZW5jZUlPUiApO1xuXHRcdHZlYzMgUjIzID0gRl9TY2hsaWNrKCBSMSwgMS4wLCBjb3NUaGV0YTIgKTtcblx0XHR2ZWMzIHBoaTIzID0gdmVjMyggMC4wICk7XG5cdFx0aWYgKCBiYXNlSU9SWyAwIF0gPCBpcmlkZXNjZW5jZUlPUiApIHBoaTIzWyAwIF0gPSBQSTtcblx0XHRpZiAoIGJhc2VJT1JbIDEgXSA8IGlyaWRlc2NlbmNlSU9SICkgcGhpMjNbIDEgXSA9IFBJO1xuXHRcdGlmICggYmFzZUlPUlsgMiBdIDwgaXJpZGVzY2VuY2VJT1IgKSBwaGkyM1sgMiBdID0gUEk7XG5cdFx0ZmxvYXQgT1BEID0gMi4wICogaXJpZGVzY2VuY2VJT1IgKiB0aGluRmlsbVRoaWNrbmVzcyAqIGNvc1RoZXRhMjtcblx0XHR2ZWMzIHBoaSA9IHZlYzMoIHBoaTIxICkgKyBwaGkyMztcblx0XHR2ZWMzIFIxMjMgPSBjbGFtcCggUjEyICogUjIzLCAxZS01LCAwLjk5OTkgKTtcblx0XHR2ZWMzIHIxMjMgPSBzcXJ0KCBSMTIzICk7XG5cdFx0dmVjMyBScyA9IHBvdzIoIFQxMjEgKSAqIFIyMyAvICggdmVjMyggMS4wICkgLSBSMTIzICk7XG5cdFx0dmVjMyBDMCA9IFIxMiArIFJzO1xuXHRcdEkgPSBDMDtcblx0XHR2ZWMzIENtID0gUnMgLSBUMTIxO1xuXHRcdGZvciAoIGludCBtID0gMTsgbSA8PSAyOyArKyBtICkge1xuXHRcdFx0Q20gKj0gcjEyMztcblx0XHRcdHZlYzMgU20gPSAyLjAgKiBldmFsU2Vuc2l0aXZpdHkoIGZsb2F0KCBtICkgKiBPUEQsIGZsb2F0KCBtICkgKiBwaGkgKTtcblx0XHRcdEkgKz0gQ20gKiBTbTtcblx0XHR9XG5cdFx0cmV0dXJuIG1heCggSSwgdmVjMyggMC4wICkgKTtcblx0fVxuI2VuZGlmIixidW1wbWFwX3BhcnNfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfQlVNUE1BUFxuXHR1bmlmb3JtIHNhbXBsZXIyRCBidW1wTWFwO1xuXHR1bmlmb3JtIGZsb2F0IGJ1bXBTY2FsZTtcblx0dmVjMiBkSGR4eV9md2QoKSB7XG5cdFx0dmVjMiBkU1RkeCA9IGRGZHgoIHZCdW1wTWFwVXYgKTtcblx0XHR2ZWMyIGRTVGR5ID0gZEZkeSggdkJ1bXBNYXBVdiApO1xuXHRcdGZsb2F0IEhsbCA9IGJ1bXBTY2FsZSAqIHRleHR1cmUyRCggYnVtcE1hcCwgdkJ1bXBNYXBVdiApLng7XG5cdFx0ZmxvYXQgZEJ4ID0gYnVtcFNjYWxlICogdGV4dHVyZTJEKCBidW1wTWFwLCB2QnVtcE1hcFV2ICsgZFNUZHggKS54IC0gSGxsO1xuXHRcdGZsb2F0IGRCeSA9IGJ1bXBTY2FsZSAqIHRleHR1cmUyRCggYnVtcE1hcCwgdkJ1bXBNYXBVdiArIGRTVGR5ICkueCAtIEhsbDtcblx0XHRyZXR1cm4gdmVjMiggZEJ4LCBkQnkgKTtcblx0fVxuXHR2ZWMzIHBlcnR1cmJOb3JtYWxBcmIoIHZlYzMgc3VyZl9wb3MsIHZlYzMgc3VyZl9ub3JtLCB2ZWMyIGRIZHh5LCBmbG9hdCBmYWNlRGlyZWN0aW9uICkge1xuXHRcdHZlYzMgdlNpZ21hWCA9IGRGZHgoIHN1cmZfcG9zLnh5eiApO1xuXHRcdHZlYzMgdlNpZ21hWSA9IGRGZHkoIHN1cmZfcG9zLnh5eiApO1xuXHRcdHZlYzMgdk4gPSBzdXJmX25vcm07XG5cdFx0dmVjMyBSMSA9IGNyb3NzKCB2U2lnbWFZLCB2TiApO1xuXHRcdHZlYzMgUjIgPSBjcm9zcyggdk4sIHZTaWdtYVggKTtcblx0XHRmbG9hdCBmRGV0ID0gZG90KCB2U2lnbWFYLCBSMSApICogZmFjZURpcmVjdGlvbjtcblx0XHR2ZWMzIHZHcmFkID0gc2lnbiggZkRldCApICogKCBkSGR4eS54ICogUjEgKyBkSGR4eS55ICogUjIgKTtcblx0XHRyZXR1cm4gbm9ybWFsaXplKCBhYnMoIGZEZXQgKSAqIHN1cmZfbm9ybSAtIHZHcmFkICk7XG5cdH1cbiNlbmRpZiIsY2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50OiIjaWYgTlVNX0NMSVBQSU5HX1BMQU5FUyA+IDBcblx0dmVjNCBwbGFuZTtcblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9zdGFydFxuXHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBVTklPTl9DTElQUElOR19QTEFORVM7IGkgKysgKSB7XG5cdFx0cGxhbmUgPSBjbGlwcGluZ1BsYW5lc1sgaSBdO1xuXHRcdGlmICggZG90KCB2Q2xpcFBvc2l0aW9uLCBwbGFuZS54eXogKSA+IHBsYW5lLncgKSBkaXNjYXJkO1xuXHR9XG5cdCNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kXG5cdCNpZiBVTklPTl9DTElQUElOR19QTEFORVMgPCBOVU1fQ0xJUFBJTkdfUExBTkVTXG5cdFx0Ym9vbCBjbGlwcGVkID0gdHJ1ZTtcblx0XHQjcHJhZ21hIHVucm9sbF9sb29wX3N0YXJ0XG5cdFx0Zm9yICggaW50IGkgPSBVTklPTl9DTElQUElOR19QTEFORVM7IGkgPCBOVU1fQ0xJUFBJTkdfUExBTkVTOyBpICsrICkge1xuXHRcdFx0cGxhbmUgPSBjbGlwcGluZ1BsYW5lc1sgaSBdO1xuXHRcdFx0Y2xpcHBlZCA9ICggZG90KCB2Q2xpcFBvc2l0aW9uLCBwbGFuZS54eXogKSA+IHBsYW5lLncgKSAmJiBjbGlwcGVkO1xuXHRcdH1cblx0XHQjcHJhZ21hIHVucm9sbF9sb29wX2VuZFxuXHRcdGlmICggY2xpcHBlZCApIGRpc2NhcmQ7XG5cdCNlbmRpZlxuI2VuZGlmIixjbGlwcGluZ19wbGFuZXNfcGFyc19mcmFnbWVudDoiI2lmIE5VTV9DTElQUElOR19QTEFORVMgPiAwXG5cdHZhcnlpbmcgdmVjMyB2Q2xpcFBvc2l0aW9uO1xuXHR1bmlmb3JtIHZlYzQgY2xpcHBpbmdQbGFuZXNbIE5VTV9DTElQUElOR19QTEFORVMgXTtcbiNlbmRpZiIsY2xpcHBpbmdfcGxhbmVzX3BhcnNfdmVydGV4OiIjaWYgTlVNX0NMSVBQSU5HX1BMQU5FUyA+IDBcblx0dmFyeWluZyB2ZWMzIHZDbGlwUG9zaXRpb247XG4jZW5kaWYiLGNsaXBwaW5nX3BsYW5lc192ZXJ0ZXg6IiNpZiBOVU1fQ0xJUFBJTkdfUExBTkVTID4gMFxuXHR2Q2xpcFBvc2l0aW9uID0gLSBtdlBvc2l0aW9uLnh5ejtcbiNlbmRpZiIsY29sb3JfZnJhZ21lbnQ6IiNpZiBkZWZpbmVkKCBVU0VfQ09MT1JfQUxQSEEgKVxuXHRkaWZmdXNlQ29sb3IgKj0gdkNvbG9yO1xuI2VsaWYgZGVmaW5lZCggVVNFX0NPTE9SIClcblx0ZGlmZnVzZUNvbG9yLnJnYiAqPSB2Q29sb3I7XG4jZW5kaWYiLGNvbG9yX3BhcnNfZnJhZ21lbnQ6IiNpZiBkZWZpbmVkKCBVU0VfQ09MT1JfQUxQSEEgKVxuXHR2YXJ5aW5nIHZlYzQgdkNvbG9yO1xuI2VsaWYgZGVmaW5lZCggVVNFX0NPTE9SIClcblx0dmFyeWluZyB2ZWMzIHZDb2xvcjtcbiNlbmRpZiIsY29sb3JfcGFyc192ZXJ0ZXg6IiNpZiBkZWZpbmVkKCBVU0VfQ09MT1JfQUxQSEEgKVxuXHR2YXJ5aW5nIHZlYzQgdkNvbG9yO1xuI2VsaWYgZGVmaW5lZCggVVNFX0NPTE9SICkgfHwgZGVmaW5lZCggVVNFX0lOU1RBTkNJTkdfQ09MT1IgKVxuXHR2YXJ5aW5nIHZlYzMgdkNvbG9yO1xuI2VuZGlmIixjb2xvcl92ZXJ0ZXg6IiNpZiBkZWZpbmVkKCBVU0VfQ09MT1JfQUxQSEEgKVxuXHR2Q29sb3IgPSB2ZWM0KCAxLjAgKTtcbiNlbGlmIGRlZmluZWQoIFVTRV9DT0xPUiApIHx8IGRlZmluZWQoIFVTRV9JTlNUQU5DSU5HX0NPTE9SIClcblx0dkNvbG9yID0gdmVjMyggMS4wICk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQ09MT1Jcblx0dkNvbG9yICo9IGNvbG9yO1xuI2VuZGlmXG4jaWZkZWYgVVNFX0lOU1RBTkNJTkdfQ09MT1Jcblx0dkNvbG9yLnh5eiAqPSBpbnN0YW5jZUNvbG9yLnh5ejtcbiNlbmRpZiIsY29tbW9uOiIjZGVmaW5lIFBJIDMuMTQxNTkyNjUzNTg5NzkzXG4jZGVmaW5lIFBJMiA2LjI4MzE4NTMwNzE3OTU4NlxuI2RlZmluZSBQSV9IQUxGIDEuNTcwNzk2MzI2Nzk0ODk2NlxuI2RlZmluZSBSRUNJUFJPQ0FMX1BJIDAuMzE4MzA5ODg2MTgzNzkwN1xuI2RlZmluZSBSRUNJUFJPQ0FMX1BJMiAwLjE1OTE1NDk0MzA5MTg5NTM1XG4jZGVmaW5lIEVQU0lMT04gMWUtNlxuI2lmbmRlZiBzYXR1cmF0ZVxuI2RlZmluZSBzYXR1cmF0ZSggYSApIGNsYW1wKCBhLCAwLjAsIDEuMCApXG4jZW5kaWZcbiNkZWZpbmUgd2hpdGVDb21wbGVtZW50KCBhICkgKCAxLjAgLSBzYXR1cmF0ZSggYSApIClcbmZsb2F0IHBvdzIoIGNvbnN0IGluIGZsb2F0IHggKSB7IHJldHVybiB4Kng7IH1cbnZlYzMgcG93MiggY29uc3QgaW4gdmVjMyB4ICkgeyByZXR1cm4geCp4OyB9XG5mbG9hdCBwb3czKCBjb25zdCBpbiBmbG9hdCB4ICkgeyByZXR1cm4geCp4Kng7IH1cbmZsb2F0IHBvdzQoIGNvbnN0IGluIGZsb2F0IHggKSB7IGZsb2F0IHgyID0geCp4OyByZXR1cm4geDIqeDI7IH1cbmZsb2F0IG1heDMoIGNvbnN0IGluIHZlYzMgdiApIHsgcmV0dXJuIG1heCggbWF4KCB2LngsIHYueSApLCB2LnogKTsgfVxuZmxvYXQgYXZlcmFnZSggY29uc3QgaW4gdmVjMyB2ICkgeyByZXR1cm4gZG90KCB2LCB2ZWMzKCAwLjMzMzMzMzMgKSApOyB9XG5oaWdocCBmbG9hdCByYW5kKCBjb25zdCBpbiB2ZWMyIHV2ICkge1xuXHRjb25zdCBoaWdocCBmbG9hdCBhID0gMTIuOTg5OCwgYiA9IDc4LjIzMywgYyA9IDQzNzU4LjU0NTM7XG5cdGhpZ2hwIGZsb2F0IGR0ID0gZG90KCB1di54eSwgdmVjMiggYSxiICkgKSwgc24gPSBtb2QoIGR0LCBQSSApO1xuXHRyZXR1cm4gZnJhY3QoIHNpbiggc24gKSAqIGMgKTtcbn1cbiNpZmRlZiBISUdIX1BSRUNJU0lPTlxuXHRmbG9hdCBwcmVjaXNpb25TYWZlTGVuZ3RoKCB2ZWMzIHYgKSB7IHJldHVybiBsZW5ndGgoIHYgKTsgfVxuI2Vsc2Vcblx0ZmxvYXQgcHJlY2lzaW9uU2FmZUxlbmd0aCggdmVjMyB2ICkge1xuXHRcdGZsb2F0IG1heENvbXBvbmVudCA9IG1heDMoIGFicyggdiApICk7XG5cdFx0cmV0dXJuIGxlbmd0aCggdiAvIG1heENvbXBvbmVudCApICogbWF4Q29tcG9uZW50O1xuXHR9XG4jZW5kaWZcbnN0cnVjdCBJbmNpZGVudExpZ2h0IHtcblx0dmVjMyBjb2xvcjtcblx0dmVjMyBkaXJlY3Rpb247XG5cdGJvb2wgdmlzaWJsZTtcbn07XG5zdHJ1Y3QgUmVmbGVjdGVkTGlnaHQge1xuXHR2ZWMzIGRpcmVjdERpZmZ1c2U7XG5cdHZlYzMgZGlyZWN0U3BlY3VsYXI7XG5cdHZlYzMgaW5kaXJlY3REaWZmdXNlO1xuXHR2ZWMzIGluZGlyZWN0U3BlY3VsYXI7XG59O1xuc3RydWN0IEdlb21ldHJpY0NvbnRleHQge1xuXHR2ZWMzIHBvc2l0aW9uO1xuXHR2ZWMzIG5vcm1hbDtcblx0dmVjMyB2aWV3RGlyO1xuI2lmZGVmIFVTRV9DTEVBUkNPQVRcblx0dmVjMyBjbGVhcmNvYXROb3JtYWw7XG4jZW5kaWZcbn07XG52ZWMzIHRyYW5zZm9ybURpcmVjdGlvbiggaW4gdmVjMyBkaXIsIGluIG1hdDQgbWF0cml4ICkge1xuXHRyZXR1cm4gbm9ybWFsaXplKCAoIG1hdHJpeCAqIHZlYzQoIGRpciwgMC4wICkgKS54eXogKTtcbn1cbnZlYzMgaW52ZXJzZVRyYW5zZm9ybURpcmVjdGlvbiggaW4gdmVjMyBkaXIsIGluIG1hdDQgbWF0cml4ICkge1xuXHRyZXR1cm4gbm9ybWFsaXplKCAoIHZlYzQoIGRpciwgMC4wICkgKiBtYXRyaXggKS54eXogKTtcbn1cbm1hdDMgdHJhbnNwb3NlTWF0MyggY29uc3QgaW4gbWF0MyBtICkge1xuXHRtYXQzIHRtcDtcblx0dG1wWyAwIF0gPSB2ZWMzKCBtWyAwIF0ueCwgbVsgMSBdLngsIG1bIDIgXS54ICk7XG5cdHRtcFsgMSBdID0gdmVjMyggbVsgMCBdLnksIG1bIDEgXS55LCBtWyAyIF0ueSApO1xuXHR0bXBbIDIgXSA9IHZlYzMoIG1bIDAgXS56LCBtWyAxIF0ueiwgbVsgMiBdLnogKTtcblx0cmV0dXJuIHRtcDtcbn1cbmZsb2F0IGx1bWluYW5jZSggY29uc3QgaW4gdmVjMyByZ2IgKSB7XG5cdGNvbnN0IHZlYzMgd2VpZ2h0cyA9IHZlYzMoIDAuMjEyNjcyOSwgMC43MTUxNTIyLCAwLjA3MjE3NTAgKTtcblx0cmV0dXJuIGRvdCggd2VpZ2h0cywgcmdiICk7XG59XG5ib29sIGlzUGVyc3BlY3RpdmVNYXRyaXgoIG1hdDQgbSApIHtcblx0cmV0dXJuIG1bIDIgXVsgMyBdID09IC0gMS4wO1xufVxudmVjMiBlcXVpcmVjdFV2KCBpbiB2ZWMzIGRpciApIHtcblx0ZmxvYXQgdSA9IGF0YW4oIGRpci56LCBkaXIueCApICogUkVDSVBST0NBTF9QSTIgKyAwLjU7XG5cdGZsb2F0IHYgPSBhc2luKCBjbGFtcCggZGlyLnksIC0gMS4wLCAxLjAgKSApICogUkVDSVBST0NBTF9QSSArIDAuNTtcblx0cmV0dXJuIHZlYzIoIHUsIHYgKTtcbn1cbnZlYzMgQlJERl9MYW1iZXJ0KCBjb25zdCBpbiB2ZWMzIGRpZmZ1c2VDb2xvciApIHtcblx0cmV0dXJuIFJFQ0lQUk9DQUxfUEkgKiBkaWZmdXNlQ29sb3I7XG59XG52ZWMzIEZfU2NobGljayggY29uc3QgaW4gdmVjMyBmMCwgY29uc3QgaW4gZmxvYXQgZjkwLCBjb25zdCBpbiBmbG9hdCBkb3RWSCApIHtcblx0ZmxvYXQgZnJlc25lbCA9IGV4cDIoICggLSA1LjU1NDczICogZG90VkggLSA2Ljk4MzE2ICkgKiBkb3RWSCApO1xuXHRyZXR1cm4gZjAgKiAoIDEuMCAtIGZyZXNuZWwgKSArICggZjkwICogZnJlc25lbCApO1xufVxuZmxvYXQgRl9TY2hsaWNrKCBjb25zdCBpbiBmbG9hdCBmMCwgY29uc3QgaW4gZmxvYXQgZjkwLCBjb25zdCBpbiBmbG9hdCBkb3RWSCApIHtcblx0ZmxvYXQgZnJlc25lbCA9IGV4cDIoICggLSA1LjU1NDczICogZG90VkggLSA2Ljk4MzE2ICkgKiBkb3RWSCApO1xuXHRyZXR1cm4gZjAgKiAoIDEuMCAtIGZyZXNuZWwgKSArICggZjkwICogZnJlc25lbCApO1xufSAvLyB2YWxpZGF0ZWQiLGN1YmVfdXZfcmVmbGVjdGlvbl9mcmFnbWVudDoiI2lmZGVmIEVOVk1BUF9UWVBFX0NVQkVfVVZcblx0I2RlZmluZSBjdWJlVVZfbWluTWlwTGV2ZWwgNC4wXG5cdCNkZWZpbmUgY3ViZVVWX21pblRpbGVTaXplIDE2LjBcblx0ZmxvYXQgZ2V0RmFjZSggdmVjMyBkaXJlY3Rpb24gKSB7XG5cdFx0dmVjMyBhYnNEaXJlY3Rpb24gPSBhYnMoIGRpcmVjdGlvbiApO1xuXHRcdGZsb2F0IGZhY2UgPSAtIDEuMDtcblx0XHRpZiAoIGFic0RpcmVjdGlvbi54ID4gYWJzRGlyZWN0aW9uLnogKSB7XG5cdFx0XHRpZiAoIGFic0RpcmVjdGlvbi54ID4gYWJzRGlyZWN0aW9uLnkgKVxuXHRcdFx0XHRmYWNlID0gZGlyZWN0aW9uLnggPiAwLjAgPyAwLjAgOiAzLjA7XG5cdFx0XHRlbHNlXG5cdFx0XHRcdGZhY2UgPSBkaXJlY3Rpb24ueSA+IDAuMCA/IDEuMCA6IDQuMDtcblx0XHR9IGVsc2Uge1xuXHRcdFx0aWYgKCBhYnNEaXJlY3Rpb24ueiA+IGFic0RpcmVjdGlvbi55IClcblx0XHRcdFx0ZmFjZSA9IGRpcmVjdGlvbi56ID4gMC4wID8gMi4wIDogNS4wO1xuXHRcdFx0ZWxzZVxuXHRcdFx0XHRmYWNlID0gZGlyZWN0aW9uLnkgPiAwLjAgPyAxLjAgOiA0LjA7XG5cdFx0fVxuXHRcdHJldHVybiBmYWNlO1xuXHR9XG5cdHZlYzIgZ2V0VVYoIHZlYzMgZGlyZWN0aW9uLCBmbG9hdCBmYWNlICkge1xuXHRcdHZlYzIgdXY7XG5cdFx0aWYgKCBmYWNlID09IDAuMCApIHtcblx0XHRcdHV2ID0gdmVjMiggZGlyZWN0aW9uLnosIGRpcmVjdGlvbi55ICkgLyBhYnMoIGRpcmVjdGlvbi54ICk7XG5cdFx0fSBlbHNlIGlmICggZmFjZSA9PSAxLjAgKSB7XG5cdFx0XHR1diA9IHZlYzIoIC0gZGlyZWN0aW9uLngsIC0gZGlyZWN0aW9uLnogKSAvIGFicyggZGlyZWN0aW9uLnkgKTtcblx0XHR9IGVsc2UgaWYgKCBmYWNlID09IDIuMCApIHtcblx0XHRcdHV2ID0gdmVjMiggLSBkaXJlY3Rpb24ueCwgZGlyZWN0aW9uLnkgKSAvIGFicyggZGlyZWN0aW9uLnogKTtcblx0XHR9IGVsc2UgaWYgKCBmYWNlID09IDMuMCApIHtcblx0XHRcdHV2ID0gdmVjMiggLSBkaXJlY3Rpb24ueiwgZGlyZWN0aW9uLnkgKSAvIGFicyggZGlyZWN0aW9uLnggKTtcblx0XHR9IGVsc2UgaWYgKCBmYWNlID09IDQuMCApIHtcblx0XHRcdHV2ID0gdmVjMiggLSBkaXJlY3Rpb24ueCwgZGlyZWN0aW9uLnogKSAvIGFicyggZGlyZWN0aW9uLnkgKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dXYgPSB2ZWMyKCBkaXJlY3Rpb24ueCwgZGlyZWN0aW9uLnkgKSAvIGFicyggZGlyZWN0aW9uLnogKTtcblx0XHR9XG5cdFx0cmV0dXJuIDAuNSAqICggdXYgKyAxLjAgKTtcblx0fVxuXHR2ZWMzIGJpbGluZWFyQ3ViZVVWKCBzYW1wbGVyMkQgZW52TWFwLCB2ZWMzIGRpcmVjdGlvbiwgZmxvYXQgbWlwSW50ICkge1xuXHRcdGZsb2F0IGZhY2UgPSBnZXRGYWNlKCBkaXJlY3Rpb24gKTtcblx0XHRmbG9hdCBmaWx0ZXJJbnQgPSBtYXgoIGN1YmVVVl9taW5NaXBMZXZlbCAtIG1pcEludCwgMC4wICk7XG5cdFx0bWlwSW50ID0gbWF4KCBtaXBJbnQsIGN1YmVVVl9taW5NaXBMZXZlbCApO1xuXHRcdGZsb2F0IGZhY2VTaXplID0gZXhwMiggbWlwSW50ICk7XG5cdFx0aGlnaHAgdmVjMiB1diA9IGdldFVWKCBkaXJlY3Rpb24sIGZhY2UgKSAqICggZmFjZVNpemUgLSAyLjAgKSArIDEuMDtcblx0XHRpZiAoIGZhY2UgPiAyLjAgKSB7XG5cdFx0XHR1di55ICs9IGZhY2VTaXplO1xuXHRcdFx0ZmFjZSAtPSAzLjA7XG5cdFx0fVxuXHRcdHV2LnggKz0gZmFjZSAqIGZhY2VTaXplO1xuXHRcdHV2LnggKz0gZmlsdGVySW50ICogMy4wICogY3ViZVVWX21pblRpbGVTaXplO1xuXHRcdHV2LnkgKz0gNC4wICogKCBleHAyKCBDVUJFVVZfTUFYX01JUCApIC0gZmFjZVNpemUgKTtcblx0XHR1di54ICo9IENVQkVVVl9URVhFTF9XSURUSDtcblx0XHR1di55ICo9IENVQkVVVl9URVhFTF9IRUlHSFQ7XG5cdFx0I2lmZGVmIHRleHR1cmUyREdyYWRFWFRcblx0XHRcdHJldHVybiB0ZXh0dXJlMkRHcmFkRVhUKCBlbnZNYXAsIHV2LCB2ZWMyKCAwLjAgKSwgdmVjMiggMC4wICkgKS5yZ2I7XG5cdFx0I2Vsc2Vcblx0XHRcdHJldHVybiB0ZXh0dXJlMkQoIGVudk1hcCwgdXYgKS5yZ2I7XG5cdFx0I2VuZGlmXG5cdH1cblx0I2RlZmluZSBjdWJlVVZfcjAgMS4wXG5cdCNkZWZpbmUgY3ViZVVWX3YwIDAuMzM5XG5cdCNkZWZpbmUgY3ViZVVWX20wIC0gMi4wXG5cdCNkZWZpbmUgY3ViZVVWX3IxIDAuOFxuXHQjZGVmaW5lIGN1YmVVVl92MSAwLjI3NlxuXHQjZGVmaW5lIGN1YmVVVl9tMSAtIDEuMFxuXHQjZGVmaW5lIGN1YmVVVl9yNCAwLjRcblx0I2RlZmluZSBjdWJlVVZfdjQgMC4wNDZcblx0I2RlZmluZSBjdWJlVVZfbTQgMi4wXG5cdCNkZWZpbmUgY3ViZVVWX3I1IDAuMzA1XG5cdCNkZWZpbmUgY3ViZVVWX3Y1IDAuMDE2XG5cdCNkZWZpbmUgY3ViZVVWX201IDMuMFxuXHQjZGVmaW5lIGN1YmVVVl9yNiAwLjIxXG5cdCNkZWZpbmUgY3ViZVVWX3Y2IDAuMDAzOFxuXHQjZGVmaW5lIGN1YmVVVl9tNiA0LjBcblx0ZmxvYXQgcm91Z2huZXNzVG9NaXAoIGZsb2F0IHJvdWdobmVzcyApIHtcblx0XHRmbG9hdCBtaXAgPSAwLjA7XG5cdFx0aWYgKCByb3VnaG5lc3MgPj0gY3ViZVVWX3IxICkge1xuXHRcdFx0bWlwID0gKCBjdWJlVVZfcjAgLSByb3VnaG5lc3MgKSAqICggY3ViZVVWX20xIC0gY3ViZVVWX20wICkgLyAoIGN1YmVVVl9yMCAtIGN1YmVVVl9yMSApICsgY3ViZVVWX20wO1xuXHRcdH0gZWxzZSBpZiAoIHJvdWdobmVzcyA+PSBjdWJlVVZfcjQgKSB7XG5cdFx0XHRtaXAgPSAoIGN1YmVVVl9yMSAtIHJvdWdobmVzcyApICogKCBjdWJlVVZfbTQgLSBjdWJlVVZfbTEgKSAvICggY3ViZVVWX3IxIC0gY3ViZVVWX3I0ICkgKyBjdWJlVVZfbTE7XG5cdFx0fSBlbHNlIGlmICggcm91Z2huZXNzID49IGN1YmVVVl9yNSApIHtcblx0XHRcdG1pcCA9ICggY3ViZVVWX3I0IC0gcm91Z2huZXNzICkgKiAoIGN1YmVVVl9tNSAtIGN1YmVVVl9tNCApIC8gKCBjdWJlVVZfcjQgLSBjdWJlVVZfcjUgKSArIGN1YmVVVl9tNDtcblx0XHR9IGVsc2UgaWYgKCByb3VnaG5lc3MgPj0gY3ViZVVWX3I2ICkge1xuXHRcdFx0bWlwID0gKCBjdWJlVVZfcjUgLSByb3VnaG5lc3MgKSAqICggY3ViZVVWX202IC0gY3ViZVVWX201ICkgLyAoIGN1YmVVVl9yNSAtIGN1YmVVVl9yNiApICsgY3ViZVVWX201O1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRtaXAgPSAtIDIuMCAqIGxvZzIoIDEuMTYgKiByb3VnaG5lc3MgKTtcdFx0fVxuXHRcdHJldHVybiBtaXA7XG5cdH1cblx0dmVjNCB0ZXh0dXJlQ3ViZVVWKCBzYW1wbGVyMkQgZW52TWFwLCB2ZWMzIHNhbXBsZURpciwgZmxvYXQgcm91Z2huZXNzICkge1xuXHRcdGZsb2F0IG1pcCA9IGNsYW1wKCByb3VnaG5lc3NUb01pcCggcm91Z2huZXNzICksIGN1YmVVVl9tMCwgQ1VCRVVWX01BWF9NSVAgKTtcblx0XHRmbG9hdCBtaXBGID0gZnJhY3QoIG1pcCApO1xuXHRcdGZsb2F0IG1pcEludCA9IGZsb29yKCBtaXAgKTtcblx0XHR2ZWMzIGNvbG9yMCA9IGJpbGluZWFyQ3ViZVVWKCBlbnZNYXAsIHNhbXBsZURpciwgbWlwSW50ICk7XG5cdFx0aWYgKCBtaXBGID09IDAuMCApIHtcblx0XHRcdHJldHVybiB2ZWM0KCBjb2xvcjAsIDEuMCApO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR2ZWMzIGNvbG9yMSA9IGJpbGluZWFyQ3ViZVVWKCBlbnZNYXAsIHNhbXBsZURpciwgbWlwSW50ICsgMS4wICk7XG5cdFx0XHRyZXR1cm4gdmVjNCggbWl4KCBjb2xvcjAsIGNvbG9yMSwgbWlwRiApLCAxLjAgKTtcblx0XHR9XG5cdH1cbiNlbmRpZiIsZGVmYXVsdG5vcm1hbF92ZXJ0ZXg6InZlYzMgdHJhbnNmb3JtZWROb3JtYWwgPSBvYmplY3ROb3JtYWw7XG4jaWZkZWYgVVNFX0lOU1RBTkNJTkdcblx0bWF0MyBtID0gbWF0MyggaW5zdGFuY2VNYXRyaXggKTtcblx0dHJhbnNmb3JtZWROb3JtYWwgLz0gdmVjMyggZG90KCBtWyAwIF0sIG1bIDAgXSApLCBkb3QoIG1bIDEgXSwgbVsgMSBdICksIGRvdCggbVsgMiBdLCBtWyAyIF0gKSApO1xuXHR0cmFuc2Zvcm1lZE5vcm1hbCA9IG0gKiB0cmFuc2Zvcm1lZE5vcm1hbDtcbiNlbmRpZlxudHJhbnNmb3JtZWROb3JtYWwgPSBub3JtYWxNYXRyaXggKiB0cmFuc2Zvcm1lZE5vcm1hbDtcbiNpZmRlZiBGTElQX1NJREVEXG5cdHRyYW5zZm9ybWVkTm9ybWFsID0gLSB0cmFuc2Zvcm1lZE5vcm1hbDtcbiNlbmRpZlxuI2lmZGVmIFVTRV9UQU5HRU5UXG5cdHZlYzMgdHJhbnNmb3JtZWRUYW5nZW50ID0gKCBtb2RlbFZpZXdNYXRyaXggKiB2ZWM0KCBvYmplY3RUYW5nZW50LCAwLjAgKSApLnh5ejtcblx0I2lmZGVmIEZMSVBfU0lERURcblx0XHR0cmFuc2Zvcm1lZFRhbmdlbnQgPSAtIHRyYW5zZm9ybWVkVGFuZ2VudDtcblx0I2VuZGlmXG4jZW5kaWYiLGRpc3BsYWNlbWVudG1hcF9wYXJzX3ZlcnRleDoiI2lmZGVmIFVTRV9ESVNQTEFDRU1FTlRNQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgZGlzcGxhY2VtZW50TWFwO1xuXHR1bmlmb3JtIGZsb2F0IGRpc3BsYWNlbWVudFNjYWxlO1xuXHR1bmlmb3JtIGZsb2F0IGRpc3BsYWNlbWVudEJpYXM7XG4jZW5kaWYiLGRpc3BsYWNlbWVudG1hcF92ZXJ0ZXg6IiNpZmRlZiBVU0VfRElTUExBQ0VNRU5UTUFQXG5cdHRyYW5zZm9ybWVkICs9IG5vcm1hbGl6ZSggb2JqZWN0Tm9ybWFsICkgKiAoIHRleHR1cmUyRCggZGlzcGxhY2VtZW50TWFwLCB2RGlzcGxhY2VtZW50TWFwVXYgKS54ICogZGlzcGxhY2VtZW50U2NhbGUgKyBkaXNwbGFjZW1lbnRCaWFzICk7XG4jZW5kaWYiLGVtaXNzaXZlbWFwX2ZyYWdtZW50OiIjaWZkZWYgVVNFX0VNSVNTSVZFTUFQXG5cdHZlYzQgZW1pc3NpdmVDb2xvciA9IHRleHR1cmUyRCggZW1pc3NpdmVNYXAsIHZFbWlzc2l2ZU1hcFV2ICk7XG5cdHRvdGFsRW1pc3NpdmVSYWRpYW5jZSAqPSBlbWlzc2l2ZUNvbG9yLnJnYjtcbiNlbmRpZiIsZW1pc3NpdmVtYXBfcGFyc19mcmFnbWVudDoiI2lmZGVmIFVTRV9FTUlTU0lWRU1BUFxuXHR1bmlmb3JtIHNhbXBsZXIyRCBlbWlzc2l2ZU1hcDtcbiNlbmRpZiIsZW5jb2RpbmdzX2ZyYWdtZW50OiJnbF9GcmFnQ29sb3IgPSBsaW5lYXJUb091dHB1dFRleGVsKCBnbF9GcmFnQ29sb3IgKTsiLGVuY29kaW5nc19wYXJzX2ZyYWdtZW50OiJ2ZWM0IExpbmVhclRvTGluZWFyKCBpbiB2ZWM0IHZhbHVlICkge1xuXHRyZXR1cm4gdmFsdWU7XG59XG52ZWM0IExpbmVhclRvc1JHQiggaW4gdmVjNCB2YWx1ZSApIHtcblx0cmV0dXJuIHZlYzQoIG1peCggcG93KCB2YWx1ZS5yZ2IsIHZlYzMoIDAuNDE2NjYgKSApICogMS4wNTUgLSB2ZWMzKCAwLjA1NSApLCB2YWx1ZS5yZ2IgKiAxMi45MiwgdmVjMyggbGVzc1RoYW5FcXVhbCggdmFsdWUucmdiLCB2ZWMzKCAwLjAwMzEzMDggKSApICkgKSwgdmFsdWUuYSApO1xufSIsZW52bWFwX2ZyYWdtZW50OiIjaWZkZWYgVVNFX0VOVk1BUFxuXHQjaWZkZWYgRU5WX1dPUkxEUE9TXG5cdFx0dmVjMyBjYW1lcmFUb0ZyYWc7XG5cdFx0aWYgKCBpc09ydGhvZ3JhcGhpYyApIHtcblx0XHRcdGNhbWVyYVRvRnJhZyA9IG5vcm1hbGl6ZSggdmVjMyggLSB2aWV3TWF0cml4WyAwIF1bIDIgXSwgLSB2aWV3TWF0cml4WyAxIF1bIDIgXSwgLSB2aWV3TWF0cml4WyAyIF1bIDIgXSApICk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGNhbWVyYVRvRnJhZyA9IG5vcm1hbGl6ZSggdldvcmxkUG9zaXRpb24gLSBjYW1lcmFQb3NpdGlvbiApO1xuXHRcdH1cblx0XHR2ZWMzIHdvcmxkTm9ybWFsID0gaW52ZXJzZVRyYW5zZm9ybURpcmVjdGlvbiggbm9ybWFsLCB2aWV3TWF0cml4ICk7XG5cdFx0I2lmZGVmIEVOVk1BUF9NT0RFX1JFRkxFQ1RJT05cblx0XHRcdHZlYzMgcmVmbGVjdFZlYyA9IHJlZmxlY3QoIGNhbWVyYVRvRnJhZywgd29ybGROb3JtYWwgKTtcblx0XHQjZWxzZVxuXHRcdFx0dmVjMyByZWZsZWN0VmVjID0gcmVmcmFjdCggY2FtZXJhVG9GcmFnLCB3b3JsZE5vcm1hbCwgcmVmcmFjdGlvblJhdGlvICk7XG5cdFx0I2VuZGlmXG5cdCNlbHNlXG5cdFx0dmVjMyByZWZsZWN0VmVjID0gdlJlZmxlY3Q7XG5cdCNlbmRpZlxuXHQjaWZkZWYgRU5WTUFQX1RZUEVfQ1VCRVxuXHRcdHZlYzQgZW52Q29sb3IgPSB0ZXh0dXJlQ3ViZSggZW52TWFwLCB2ZWMzKCBmbGlwRW52TWFwICogcmVmbGVjdFZlYy54LCByZWZsZWN0VmVjLnl6ICkgKTtcblx0I2Vsc2Vcblx0XHR2ZWM0IGVudkNvbG9yID0gdmVjNCggMC4wICk7XG5cdCNlbmRpZlxuXHQjaWZkZWYgRU5WTUFQX0JMRU5ESU5HX01VTFRJUExZXG5cdFx0b3V0Z29pbmdMaWdodCA9IG1peCggb3V0Z29pbmdMaWdodCwgb3V0Z29pbmdMaWdodCAqIGVudkNvbG9yLnh5eiwgc3BlY3VsYXJTdHJlbmd0aCAqIHJlZmxlY3Rpdml0eSApO1xuXHQjZWxpZiBkZWZpbmVkKCBFTlZNQVBfQkxFTkRJTkdfTUlYIClcblx0XHRvdXRnb2luZ0xpZ2h0ID0gbWl4KCBvdXRnb2luZ0xpZ2h0LCBlbnZDb2xvci54eXosIHNwZWN1bGFyU3RyZW5ndGggKiByZWZsZWN0aXZpdHkgKTtcblx0I2VsaWYgZGVmaW5lZCggRU5WTUFQX0JMRU5ESU5HX0FERCApXG5cdFx0b3V0Z29pbmdMaWdodCArPSBlbnZDb2xvci54eXogKiBzcGVjdWxhclN0cmVuZ3RoICogcmVmbGVjdGl2aXR5O1xuXHQjZW5kaWZcbiNlbmRpZiIsZW52bWFwX2NvbW1vbl9wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX0VOVk1BUFxuXHR1bmlmb3JtIGZsb2F0IGVudk1hcEludGVuc2l0eTtcblx0dW5pZm9ybSBmbG9hdCBmbGlwRW52TWFwO1xuXHQjaWZkZWYgRU5WTUFQX1RZUEVfQ1VCRVxuXHRcdHVuaWZvcm0gc2FtcGxlckN1YmUgZW52TWFwO1xuXHQjZWxzZVxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIGVudk1hcDtcblx0I2VuZGlmXG5cdFxuI2VuZGlmIixlbnZtYXBfcGFyc19mcmFnbWVudDoiI2lmZGVmIFVTRV9FTlZNQVBcblx0dW5pZm9ybSBmbG9hdCByZWZsZWN0aXZpdHk7XG5cdCNpZiBkZWZpbmVkKCBVU0VfQlVNUE1BUCApIHx8IGRlZmluZWQoIFVTRV9OT1JNQUxNQVAgKSB8fCBkZWZpbmVkKCBQSE9ORyApIHx8IGRlZmluZWQoIExBTUJFUlQgKVxuXHRcdCNkZWZpbmUgRU5WX1dPUkxEUE9TXG5cdCNlbmRpZlxuXHQjaWZkZWYgRU5WX1dPUkxEUE9TXG5cdFx0dmFyeWluZyB2ZWMzIHZXb3JsZFBvc2l0aW9uO1xuXHRcdHVuaWZvcm0gZmxvYXQgcmVmcmFjdGlvblJhdGlvO1xuXHQjZWxzZVxuXHRcdHZhcnlpbmcgdmVjMyB2UmVmbGVjdDtcblx0I2VuZGlmXG4jZW5kaWYiLGVudm1hcF9wYXJzX3ZlcnRleDoiI2lmZGVmIFVTRV9FTlZNQVBcblx0I2lmIGRlZmluZWQoIFVTRV9CVU1QTUFQICkgfHwgZGVmaW5lZCggVVNFX05PUk1BTE1BUCApIHx8IGRlZmluZWQoIFBIT05HICkgfHwgZGVmaW5lZCggTEFNQkVSVCApXG5cdFx0I2RlZmluZSBFTlZfV09STERQT1Ncblx0I2VuZGlmXG5cdCNpZmRlZiBFTlZfV09STERQT1Ncblx0XHRcblx0XHR2YXJ5aW5nIHZlYzMgdldvcmxkUG9zaXRpb247XG5cdCNlbHNlXG5cdFx0dmFyeWluZyB2ZWMzIHZSZWZsZWN0O1xuXHRcdHVuaWZvcm0gZmxvYXQgcmVmcmFjdGlvblJhdGlvO1xuXHQjZW5kaWZcbiNlbmRpZiIsZW52bWFwX3BoeXNpY2FsX3BhcnNfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfRU5WTUFQXG5cdHZlYzMgZ2V0SUJMSXJyYWRpYW5jZSggY29uc3QgaW4gdmVjMyBub3JtYWwgKSB7XG5cdFx0I2lmZGVmIEVOVk1BUF9UWVBFX0NVQkVfVVZcblx0XHRcdHZlYzMgd29ybGROb3JtYWwgPSBpbnZlcnNlVHJhbnNmb3JtRGlyZWN0aW9uKCBub3JtYWwsIHZpZXdNYXRyaXggKTtcblx0XHRcdHZlYzQgZW52TWFwQ29sb3IgPSB0ZXh0dXJlQ3ViZVVWKCBlbnZNYXAsIHdvcmxkTm9ybWFsLCAxLjAgKTtcblx0XHRcdHJldHVybiBQSSAqIGVudk1hcENvbG9yLnJnYiAqIGVudk1hcEludGVuc2l0eTtcblx0XHQjZWxzZVxuXHRcdFx0cmV0dXJuIHZlYzMoIDAuMCApO1xuXHRcdCNlbmRpZlxuXHR9XG5cdHZlYzMgZ2V0SUJMUmFkaWFuY2UoIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIGZsb2F0IHJvdWdobmVzcyApIHtcblx0XHQjaWZkZWYgRU5WTUFQX1RZUEVfQ1VCRV9VVlxuXHRcdFx0dmVjMyByZWZsZWN0VmVjID0gcmVmbGVjdCggLSB2aWV3RGlyLCBub3JtYWwgKTtcblx0XHRcdHJlZmxlY3RWZWMgPSBub3JtYWxpemUoIG1peCggcmVmbGVjdFZlYywgbm9ybWFsLCByb3VnaG5lc3MgKiByb3VnaG5lc3MpICk7XG5cdFx0XHRyZWZsZWN0VmVjID0gaW52ZXJzZVRyYW5zZm9ybURpcmVjdGlvbiggcmVmbGVjdFZlYywgdmlld01hdHJpeCApO1xuXHRcdFx0dmVjNCBlbnZNYXBDb2xvciA9IHRleHR1cmVDdWJlVVYoIGVudk1hcCwgcmVmbGVjdFZlYywgcm91Z2huZXNzICk7XG5cdFx0XHRyZXR1cm4gZW52TWFwQ29sb3IucmdiICogZW52TWFwSW50ZW5zaXR5O1xuXHRcdCNlbHNlXG5cdFx0XHRyZXR1cm4gdmVjMyggMC4wICk7XG5cdFx0I2VuZGlmXG5cdH1cblx0I2lmZGVmIFVTRV9BTklTT1RST1BZXG5cdFx0dmVjMyBnZXRJQkxBbmlzb3Ryb3B5UmFkaWFuY2UoIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIGZsb2F0IHJvdWdobmVzcywgY29uc3QgaW4gdmVjMyBiaXRhbmdlbnQsIGNvbnN0IGluIGZsb2F0IGFuaXNvdHJvcHkgKSB7XG5cdFx0XHQjaWZkZWYgRU5WTUFQX1RZUEVfQ1VCRV9VVlxuXHRcdFx0XHR2ZWMzIGJlbnROb3JtYWwgPSBjcm9zcyggYml0YW5nZW50LCB2aWV3RGlyICk7XG5cdFx0XHRcdGJlbnROb3JtYWwgPSBub3JtYWxpemUoIGNyb3NzKCBiZW50Tm9ybWFsLCBiaXRhbmdlbnQgKSApO1xuXHRcdFx0XHRiZW50Tm9ybWFsID0gbm9ybWFsaXplKCBtaXgoIGJlbnROb3JtYWwsIG5vcm1hbCwgcG93MiggcG93MiggMS4wIC0gYW5pc290cm9weSAqICggMS4wIC0gcm91Z2huZXNzICkgKSApICkgKTtcblx0XHRcdFx0cmV0dXJuIGdldElCTFJhZGlhbmNlKCB2aWV3RGlyLCBiZW50Tm9ybWFsLCByb3VnaG5lc3MgKTtcblx0XHRcdCNlbHNlXG5cdFx0XHRcdHJldHVybiB2ZWMzKCAwLjAgKTtcblx0XHRcdCNlbmRpZlxuXHRcdH1cblx0I2VuZGlmXG4jZW5kaWYiLGVudm1hcF92ZXJ0ZXg6IiNpZmRlZiBVU0VfRU5WTUFQXG5cdCNpZmRlZiBFTlZfV09STERQT1Ncblx0XHR2V29ybGRQb3NpdGlvbiA9IHdvcmxkUG9zaXRpb24ueHl6O1xuXHQjZWxzZVxuXHRcdHZlYzMgY2FtZXJhVG9WZXJ0ZXg7XG5cdFx0aWYgKCBpc09ydGhvZ3JhcGhpYyApIHtcblx0XHRcdGNhbWVyYVRvVmVydGV4ID0gbm9ybWFsaXplKCB2ZWMzKCAtIHZpZXdNYXRyaXhbIDAgXVsgMiBdLCAtIHZpZXdNYXRyaXhbIDEgXVsgMiBdLCAtIHZpZXdNYXRyaXhbIDIgXVsgMiBdICkgKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0Y2FtZXJhVG9WZXJ0ZXggPSBub3JtYWxpemUoIHdvcmxkUG9zaXRpb24ueHl6IC0gY2FtZXJhUG9zaXRpb24gKTtcblx0XHR9XG5cdFx0dmVjMyB3b3JsZE5vcm1hbCA9IGludmVyc2VUcmFuc2Zvcm1EaXJlY3Rpb24oIHRyYW5zZm9ybWVkTm9ybWFsLCB2aWV3TWF0cml4ICk7XG5cdFx0I2lmZGVmIEVOVk1BUF9NT0RFX1JFRkxFQ1RJT05cblx0XHRcdHZSZWZsZWN0ID0gcmVmbGVjdCggY2FtZXJhVG9WZXJ0ZXgsIHdvcmxkTm9ybWFsICk7XG5cdFx0I2Vsc2Vcblx0XHRcdHZSZWZsZWN0ID0gcmVmcmFjdCggY2FtZXJhVG9WZXJ0ZXgsIHdvcmxkTm9ybWFsLCByZWZyYWN0aW9uUmF0aW8gKTtcblx0XHQjZW5kaWZcblx0I2VuZGlmXG4jZW5kaWYiLGZvZ192ZXJ0ZXg6IiNpZmRlZiBVU0VfRk9HXG5cdHZGb2dEZXB0aCA9IC0gbXZQb3NpdGlvbi56O1xuI2VuZGlmIixmb2dfcGFyc192ZXJ0ZXg6IiNpZmRlZiBVU0VfRk9HXG5cdHZhcnlpbmcgZmxvYXQgdkZvZ0RlcHRoO1xuI2VuZGlmIixmb2dfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfRk9HXG5cdCNpZmRlZiBGT0dfRVhQMlxuXHRcdGZsb2F0IGZvZ0ZhY3RvciA9IDEuMCAtIGV4cCggLSBmb2dEZW5zaXR5ICogZm9nRGVuc2l0eSAqIHZGb2dEZXB0aCAqIHZGb2dEZXB0aCApO1xuXHQjZWxzZVxuXHRcdGZsb2F0IGZvZ0ZhY3RvciA9IHNtb290aHN0ZXAoIGZvZ05lYXIsIGZvZ0ZhciwgdkZvZ0RlcHRoICk7XG5cdCNlbmRpZlxuXHRnbF9GcmFnQ29sb3IucmdiID0gbWl4KCBnbF9GcmFnQ29sb3IucmdiLCBmb2dDb2xvciwgZm9nRmFjdG9yICk7XG4jZW5kaWYiLGZvZ19wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX0ZPR1xuXHR1bmlmb3JtIHZlYzMgZm9nQ29sb3I7XG5cdHZhcnlpbmcgZmxvYXQgdkZvZ0RlcHRoO1xuXHQjaWZkZWYgRk9HX0VYUDJcblx0XHR1bmlmb3JtIGZsb2F0IGZvZ0RlbnNpdHk7XG5cdCNlbHNlXG5cdFx0dW5pZm9ybSBmbG9hdCBmb2dOZWFyO1xuXHRcdHVuaWZvcm0gZmxvYXQgZm9nRmFyO1xuXHQjZW5kaWZcbiNlbmRpZiIsZ3JhZGllbnRtYXBfcGFyc19mcmFnbWVudDoiI2lmZGVmIFVTRV9HUkFESUVOVE1BUFxuXHR1bmlmb3JtIHNhbXBsZXIyRCBncmFkaWVudE1hcDtcbiNlbmRpZlxudmVjMyBnZXRHcmFkaWVudElycmFkaWFuY2UoIHZlYzMgbm9ybWFsLCB2ZWMzIGxpZ2h0RGlyZWN0aW9uICkge1xuXHRmbG9hdCBkb3ROTCA9IGRvdCggbm9ybWFsLCBsaWdodERpcmVjdGlvbiApO1xuXHR2ZWMyIGNvb3JkID0gdmVjMiggZG90TkwgKiAwLjUgKyAwLjUsIDAuMCApO1xuXHQjaWZkZWYgVVNFX0dSQURJRU5UTUFQXG5cdFx0cmV0dXJuIHZlYzMoIHRleHR1cmUyRCggZ3JhZGllbnRNYXAsIGNvb3JkICkuciApO1xuXHQjZWxzZVxuXHRcdHZlYzIgZncgPSBmd2lkdGgoIGNvb3JkICkgKiAwLjU7XG5cdFx0cmV0dXJuIG1peCggdmVjMyggMC43ICksIHZlYzMoIDEuMCApLCBzbW9vdGhzdGVwKCAwLjcgLSBmdy54LCAwLjcgKyBmdy54LCBjb29yZC54ICkgKTtcblx0I2VuZGlmXG59IixsaWdodG1hcF9mcmFnbWVudDoiI2lmZGVmIFVTRV9MSUdIVE1BUFxuXHR2ZWM0IGxpZ2h0TWFwVGV4ZWwgPSB0ZXh0dXJlMkQoIGxpZ2h0TWFwLCB2TGlnaHRNYXBVdiApO1xuXHR2ZWMzIGxpZ2h0TWFwSXJyYWRpYW5jZSA9IGxpZ2h0TWFwVGV4ZWwucmdiICogbGlnaHRNYXBJbnRlbnNpdHk7XG5cdHJlZmxlY3RlZExpZ2h0LmluZGlyZWN0RGlmZnVzZSArPSBsaWdodE1hcElycmFkaWFuY2U7XG4jZW5kaWYiLGxpZ2h0bWFwX3BhcnNfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfTElHSFRNQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgbGlnaHRNYXA7XG5cdHVuaWZvcm0gZmxvYXQgbGlnaHRNYXBJbnRlbnNpdHk7XG4jZW5kaWYiLGxpZ2h0c19sYW1iZXJ0X2ZyYWdtZW50OiJMYW1iZXJ0TWF0ZXJpYWwgbWF0ZXJpYWw7XG5tYXRlcmlhbC5kaWZmdXNlQ29sb3IgPSBkaWZmdXNlQ29sb3IucmdiO1xubWF0ZXJpYWwuc3BlY3VsYXJTdHJlbmd0aCA9IHNwZWN1bGFyU3RyZW5ndGg7IixsaWdodHNfbGFtYmVydF9wYXJzX2ZyYWdtZW50OiJ2YXJ5aW5nIHZlYzMgdlZpZXdQb3NpdGlvbjtcbnN0cnVjdCBMYW1iZXJ0TWF0ZXJpYWwge1xuXHR2ZWMzIGRpZmZ1c2VDb2xvcjtcblx0ZmxvYXQgc3BlY3VsYXJTdHJlbmd0aDtcbn07XG52b2lkIFJFX0RpcmVjdF9MYW1iZXJ0KCBjb25zdCBpbiBJbmNpZGVudExpZ2h0IGRpcmVjdExpZ2h0LCBjb25zdCBpbiBHZW9tZXRyaWNDb250ZXh0IGdlb21ldHJ5LCBjb25zdCBpbiBMYW1iZXJ0TWF0ZXJpYWwgbWF0ZXJpYWwsIGlub3V0IFJlZmxlY3RlZExpZ2h0IHJlZmxlY3RlZExpZ2h0ICkge1xuXHRmbG9hdCBkb3ROTCA9IHNhdHVyYXRlKCBkb3QoIGdlb21ldHJ5Lm5vcm1hbCwgZGlyZWN0TGlnaHQuZGlyZWN0aW9uICkgKTtcblx0dmVjMyBpcnJhZGlhbmNlID0gZG90TkwgKiBkaXJlY3RMaWdodC5jb2xvcjtcblx0cmVmbGVjdGVkTGlnaHQuZGlyZWN0RGlmZnVzZSArPSBpcnJhZGlhbmNlICogQlJERl9MYW1iZXJ0KCBtYXRlcmlhbC5kaWZmdXNlQ29sb3IgKTtcbn1cbnZvaWQgUkVfSW5kaXJlY3REaWZmdXNlX0xhbWJlcnQoIGNvbnN0IGluIHZlYzMgaXJyYWRpYW5jZSwgY29uc3QgaW4gR2VvbWV0cmljQ29udGV4dCBnZW9tZXRyeSwgY29uc3QgaW4gTGFtYmVydE1hdGVyaWFsIG1hdGVyaWFsLCBpbm91dCBSZWZsZWN0ZWRMaWdodCByZWZsZWN0ZWRMaWdodCApIHtcblx0cmVmbGVjdGVkTGlnaHQuaW5kaXJlY3REaWZmdXNlICs9IGlycmFkaWFuY2UgKiBCUkRGX0xhbWJlcnQoIG1hdGVyaWFsLmRpZmZ1c2VDb2xvciApO1xufVxuI2RlZmluZSBSRV9EaXJlY3RcdFx0XHRcdFJFX0RpcmVjdF9MYW1iZXJ0XG4jZGVmaW5lIFJFX0luZGlyZWN0RGlmZnVzZVx0XHRSRV9JbmRpcmVjdERpZmZ1c2VfTGFtYmVydCIsbGlnaHRzX3BhcnNfYmVnaW46InVuaWZvcm0gYm9vbCByZWNlaXZlU2hhZG93O1xudW5pZm9ybSB2ZWMzIGFtYmllbnRMaWdodENvbG9yO1xudW5pZm9ybSB2ZWMzIGxpZ2h0UHJvYmVbIDkgXTtcbnZlYzMgc2hHZXRJcnJhZGlhbmNlQXQoIGluIHZlYzMgbm9ybWFsLCBpbiB2ZWMzIHNoQ29lZmZpY2llbnRzWyA5IF0gKSB7XG5cdGZsb2F0IHggPSBub3JtYWwueCwgeSA9IG5vcm1hbC55LCB6ID0gbm9ybWFsLno7XG5cdHZlYzMgcmVzdWx0ID0gc2hDb2VmZmljaWVudHNbIDAgXSAqIDAuODg2MjI3O1xuXHRyZXN1bHQgKz0gc2hDb2VmZmljaWVudHNbIDEgXSAqIDIuMCAqIDAuNTExNjY0ICogeTtcblx0cmVzdWx0ICs9IHNoQ29lZmZpY2llbnRzWyAyIF0gKiAyLjAgKiAwLjUxMTY2NCAqIHo7XG5cdHJlc3VsdCArPSBzaENvZWZmaWNpZW50c1sgMyBdICogMi4wICogMC41MTE2NjQgKiB4O1xuXHRyZXN1bHQgKz0gc2hDb2VmZmljaWVudHNbIDQgXSAqIDIuMCAqIDAuNDI5MDQzICogeCAqIHk7XG5cdHJlc3VsdCArPSBzaENvZWZmaWNpZW50c1sgNSBdICogMi4wICogMC40MjkwNDMgKiB5ICogejtcblx0cmVzdWx0ICs9IHNoQ29lZmZpY2llbnRzWyA2IF0gKiAoIDAuNzQzMTI1ICogeiAqIHogLSAwLjI0NzcwOCApO1xuXHRyZXN1bHQgKz0gc2hDb2VmZmljaWVudHNbIDcgXSAqIDIuMCAqIDAuNDI5MDQzICogeCAqIHo7XG5cdHJlc3VsdCArPSBzaENvZWZmaWNpZW50c1sgOCBdICogMC40MjkwNDMgKiAoIHggKiB4IC0geSAqIHkgKTtcblx0cmV0dXJuIHJlc3VsdDtcbn1cbnZlYzMgZ2V0TGlnaHRQcm9iZUlycmFkaWFuY2UoIGNvbnN0IGluIHZlYzMgbGlnaHRQcm9iZVsgOSBdLCBjb25zdCBpbiB2ZWMzIG5vcm1hbCApIHtcblx0dmVjMyB3b3JsZE5vcm1hbCA9IGludmVyc2VUcmFuc2Zvcm1EaXJlY3Rpb24oIG5vcm1hbCwgdmlld01hdHJpeCApO1xuXHR2ZWMzIGlycmFkaWFuY2UgPSBzaEdldElycmFkaWFuY2VBdCggd29ybGROb3JtYWwsIGxpZ2h0UHJvYmUgKTtcblx0cmV0dXJuIGlycmFkaWFuY2U7XG59XG52ZWMzIGdldEFtYmllbnRMaWdodElycmFkaWFuY2UoIGNvbnN0IGluIHZlYzMgYW1iaWVudExpZ2h0Q29sb3IgKSB7XG5cdHZlYzMgaXJyYWRpYW5jZSA9IGFtYmllbnRMaWdodENvbG9yO1xuXHRyZXR1cm4gaXJyYWRpYW5jZTtcbn1cbmZsb2F0IGdldERpc3RhbmNlQXR0ZW51YXRpb24oIGNvbnN0IGluIGZsb2F0IGxpZ2h0RGlzdGFuY2UsIGNvbnN0IGluIGZsb2F0IGN1dG9mZkRpc3RhbmNlLCBjb25zdCBpbiBmbG9hdCBkZWNheUV4cG9uZW50ICkge1xuXHQjaWYgZGVmaW5lZCAoIExFR0FDWV9MSUdIVFMgKVxuXHRcdGlmICggY3V0b2ZmRGlzdGFuY2UgPiAwLjAgJiYgZGVjYXlFeHBvbmVudCA+IDAuMCApIHtcblx0XHRcdHJldHVybiBwb3coIHNhdHVyYXRlKCAtIGxpZ2h0RGlzdGFuY2UgLyBjdXRvZmZEaXN0YW5jZSArIDEuMCApLCBkZWNheUV4cG9uZW50ICk7XG5cdFx0fVxuXHRcdHJldHVybiAxLjA7XG5cdCNlbHNlXG5cdFx0ZmxvYXQgZGlzdGFuY2VGYWxsb2ZmID0gMS4wIC8gbWF4KCBwb3coIGxpZ2h0RGlzdGFuY2UsIGRlY2F5RXhwb25lbnQgKSwgMC4wMSApO1xuXHRcdGlmICggY3V0b2ZmRGlzdGFuY2UgPiAwLjAgKSB7XG5cdFx0XHRkaXN0YW5jZUZhbGxvZmYgKj0gcG93Miggc2F0dXJhdGUoIDEuMCAtIHBvdzQoIGxpZ2h0RGlzdGFuY2UgLyBjdXRvZmZEaXN0YW5jZSApICkgKTtcblx0XHR9XG5cdFx0cmV0dXJuIGRpc3RhbmNlRmFsbG9mZjtcblx0I2VuZGlmXG59XG5mbG9hdCBnZXRTcG90QXR0ZW51YXRpb24oIGNvbnN0IGluIGZsb2F0IGNvbmVDb3NpbmUsIGNvbnN0IGluIGZsb2F0IHBlbnVtYnJhQ29zaW5lLCBjb25zdCBpbiBmbG9hdCBhbmdsZUNvc2luZSApIHtcblx0cmV0dXJuIHNtb290aHN0ZXAoIGNvbmVDb3NpbmUsIHBlbnVtYnJhQ29zaW5lLCBhbmdsZUNvc2luZSApO1xufVxuI2lmIE5VTV9ESVJfTElHSFRTID4gMFxuXHRzdHJ1Y3QgRGlyZWN0aW9uYWxMaWdodCB7XG5cdFx0dmVjMyBkaXJlY3Rpb247XG5cdFx0dmVjMyBjb2xvcjtcblx0fTtcblx0dW5pZm9ybSBEaXJlY3Rpb25hbExpZ2h0IGRpcmVjdGlvbmFsTGlnaHRzWyBOVU1fRElSX0xJR0hUUyBdO1xuXHR2b2lkIGdldERpcmVjdGlvbmFsTGlnaHRJbmZvKCBjb25zdCBpbiBEaXJlY3Rpb25hbExpZ2h0IGRpcmVjdGlvbmFsTGlnaHQsIGNvbnN0IGluIEdlb21ldHJpY0NvbnRleHQgZ2VvbWV0cnksIG91dCBJbmNpZGVudExpZ2h0IGxpZ2h0ICkge1xuXHRcdGxpZ2h0LmNvbG9yID0gZGlyZWN0aW9uYWxMaWdodC5jb2xvcjtcblx0XHRsaWdodC5kaXJlY3Rpb24gPSBkaXJlY3Rpb25hbExpZ2h0LmRpcmVjdGlvbjtcblx0XHRsaWdodC52aXNpYmxlID0gdHJ1ZTtcblx0fVxuI2VuZGlmXG4jaWYgTlVNX1BPSU5UX0xJR0hUUyA+IDBcblx0c3RydWN0IFBvaW50TGlnaHQge1xuXHRcdHZlYzMgcG9zaXRpb247XG5cdFx0dmVjMyBjb2xvcjtcblx0XHRmbG9hdCBkaXN0YW5jZTtcblx0XHRmbG9hdCBkZWNheTtcblx0fTtcblx0dW5pZm9ybSBQb2ludExpZ2h0IHBvaW50TGlnaHRzWyBOVU1fUE9JTlRfTElHSFRTIF07XG5cdHZvaWQgZ2V0UG9pbnRMaWdodEluZm8oIGNvbnN0IGluIFBvaW50TGlnaHQgcG9pbnRMaWdodCwgY29uc3QgaW4gR2VvbWV0cmljQ29udGV4dCBnZW9tZXRyeSwgb3V0IEluY2lkZW50TGlnaHQgbGlnaHQgKSB7XG5cdFx0dmVjMyBsVmVjdG9yID0gcG9pbnRMaWdodC5wb3NpdGlvbiAtIGdlb21ldHJ5LnBvc2l0aW9uO1xuXHRcdGxpZ2h0LmRpcmVjdGlvbiA9IG5vcm1hbGl6ZSggbFZlY3RvciApO1xuXHRcdGZsb2F0IGxpZ2h0RGlzdGFuY2UgPSBsZW5ndGgoIGxWZWN0b3IgKTtcblx0XHRsaWdodC5jb2xvciA9IHBvaW50TGlnaHQuY29sb3I7XG5cdFx0bGlnaHQuY29sb3IgKj0gZ2V0RGlzdGFuY2VBdHRlbnVhdGlvbiggbGlnaHREaXN0YW5jZSwgcG9pbnRMaWdodC5kaXN0YW5jZSwgcG9pbnRMaWdodC5kZWNheSApO1xuXHRcdGxpZ2h0LnZpc2libGUgPSAoIGxpZ2h0LmNvbG9yICE9IHZlYzMoIDAuMCApICk7XG5cdH1cbiNlbmRpZlxuI2lmIE5VTV9TUE9UX0xJR0hUUyA+IDBcblx0c3RydWN0IFNwb3RMaWdodCB7XG5cdFx0dmVjMyBwb3NpdGlvbjtcblx0XHR2ZWMzIGRpcmVjdGlvbjtcblx0XHR2ZWMzIGNvbG9yO1xuXHRcdGZsb2F0IGRpc3RhbmNlO1xuXHRcdGZsb2F0IGRlY2F5O1xuXHRcdGZsb2F0IGNvbmVDb3M7XG5cdFx0ZmxvYXQgcGVudW1icmFDb3M7XG5cdH07XG5cdHVuaWZvcm0gU3BvdExpZ2h0IHNwb3RMaWdodHNbIE5VTV9TUE9UX0xJR0hUUyBdO1xuXHR2b2lkIGdldFNwb3RMaWdodEluZm8oIGNvbnN0IGluIFNwb3RMaWdodCBzcG90TGlnaHQsIGNvbnN0IGluIEdlb21ldHJpY0NvbnRleHQgZ2VvbWV0cnksIG91dCBJbmNpZGVudExpZ2h0IGxpZ2h0ICkge1xuXHRcdHZlYzMgbFZlY3RvciA9IHNwb3RMaWdodC5wb3NpdGlvbiAtIGdlb21ldHJ5LnBvc2l0aW9uO1xuXHRcdGxpZ2h0LmRpcmVjdGlvbiA9IG5vcm1hbGl6ZSggbFZlY3RvciApO1xuXHRcdGZsb2F0IGFuZ2xlQ29zID0gZG90KCBsaWdodC5kaXJlY3Rpb24sIHNwb3RMaWdodC5kaXJlY3Rpb24gKTtcblx0XHRmbG9hdCBzcG90QXR0ZW51YXRpb24gPSBnZXRTcG90QXR0ZW51YXRpb24oIHNwb3RMaWdodC5jb25lQ29zLCBzcG90TGlnaHQucGVudW1icmFDb3MsIGFuZ2xlQ29zICk7XG5cdFx0aWYgKCBzcG90QXR0ZW51YXRpb24gPiAwLjAgKSB7XG5cdFx0XHRmbG9hdCBsaWdodERpc3RhbmNlID0gbGVuZ3RoKCBsVmVjdG9yICk7XG5cdFx0XHRsaWdodC5jb2xvciA9IHNwb3RMaWdodC5jb2xvciAqIHNwb3RBdHRlbnVhdGlvbjtcblx0XHRcdGxpZ2h0LmNvbG9yICo9IGdldERpc3RhbmNlQXR0ZW51YXRpb24oIGxpZ2h0RGlzdGFuY2UsIHNwb3RMaWdodC5kaXN0YW5jZSwgc3BvdExpZ2h0LmRlY2F5ICk7XG5cdFx0XHRsaWdodC52aXNpYmxlID0gKCBsaWdodC5jb2xvciAhPSB2ZWMzKCAwLjAgKSApO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRsaWdodC5jb2xvciA9IHZlYzMoIDAuMCApO1xuXHRcdFx0bGlnaHQudmlzaWJsZSA9IGZhbHNlO1xuXHRcdH1cblx0fVxuI2VuZGlmXG4jaWYgTlVNX1JFQ1RfQVJFQV9MSUdIVFMgPiAwXG5cdHN0cnVjdCBSZWN0QXJlYUxpZ2h0IHtcblx0XHR2ZWMzIGNvbG9yO1xuXHRcdHZlYzMgcG9zaXRpb247XG5cdFx0dmVjMyBoYWxmV2lkdGg7XG5cdFx0dmVjMyBoYWxmSGVpZ2h0O1xuXHR9O1xuXHR1bmlmb3JtIHNhbXBsZXIyRCBsdGNfMTtcdHVuaWZvcm0gc2FtcGxlcjJEIGx0Y18yO1xuXHR1bmlmb3JtIFJlY3RBcmVhTGlnaHQgcmVjdEFyZWFMaWdodHNbIE5VTV9SRUNUX0FSRUFfTElHSFRTIF07XG4jZW5kaWZcbiNpZiBOVU1fSEVNSV9MSUdIVFMgPiAwXG5cdHN0cnVjdCBIZW1pc3BoZXJlTGlnaHQge1xuXHRcdHZlYzMgZGlyZWN0aW9uO1xuXHRcdHZlYzMgc2t5Q29sb3I7XG5cdFx0dmVjMyBncm91bmRDb2xvcjtcblx0fTtcblx0dW5pZm9ybSBIZW1pc3BoZXJlTGlnaHQgaGVtaXNwaGVyZUxpZ2h0c1sgTlVNX0hFTUlfTElHSFRTIF07XG5cdHZlYzMgZ2V0SGVtaXNwaGVyZUxpZ2h0SXJyYWRpYW5jZSggY29uc3QgaW4gSGVtaXNwaGVyZUxpZ2h0IGhlbWlMaWdodCwgY29uc3QgaW4gdmVjMyBub3JtYWwgKSB7XG5cdFx0ZmxvYXQgZG90TkwgPSBkb3QoIG5vcm1hbCwgaGVtaUxpZ2h0LmRpcmVjdGlvbiApO1xuXHRcdGZsb2F0IGhlbWlEaWZmdXNlV2VpZ2h0ID0gMC41ICogZG90TkwgKyAwLjU7XG5cdFx0dmVjMyBpcnJhZGlhbmNlID0gbWl4KCBoZW1pTGlnaHQuZ3JvdW5kQ29sb3IsIGhlbWlMaWdodC5za3lDb2xvciwgaGVtaURpZmZ1c2VXZWlnaHQgKTtcblx0XHRyZXR1cm4gaXJyYWRpYW5jZTtcblx0fVxuI2VuZGlmIixsaWdodHNfdG9vbl9mcmFnbWVudDoiVG9vbk1hdGVyaWFsIG1hdGVyaWFsO1xubWF0ZXJpYWwuZGlmZnVzZUNvbG9yID0gZGlmZnVzZUNvbG9yLnJnYjsiLGxpZ2h0c190b29uX3BhcnNfZnJhZ21lbnQ6InZhcnlpbmcgdmVjMyB2Vmlld1Bvc2l0aW9uO1xuc3RydWN0IFRvb25NYXRlcmlhbCB7XG5cdHZlYzMgZGlmZnVzZUNvbG9yO1xufTtcbnZvaWQgUkVfRGlyZWN0X1Rvb24oIGNvbnN0IGluIEluY2lkZW50TGlnaHQgZGlyZWN0TGlnaHQsIGNvbnN0IGluIEdlb21ldHJpY0NvbnRleHQgZ2VvbWV0cnksIGNvbnN0IGluIFRvb25NYXRlcmlhbCBtYXRlcmlhbCwgaW5vdXQgUmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQgKSB7XG5cdHZlYzMgaXJyYWRpYW5jZSA9IGdldEdyYWRpZW50SXJyYWRpYW5jZSggZ2VvbWV0cnkubm9ybWFsLCBkaXJlY3RMaWdodC5kaXJlY3Rpb24gKSAqIGRpcmVjdExpZ2h0LmNvbG9yO1xuXHRyZWZsZWN0ZWRMaWdodC5kaXJlY3REaWZmdXNlICs9IGlycmFkaWFuY2UgKiBCUkRGX0xhbWJlcnQoIG1hdGVyaWFsLmRpZmZ1c2VDb2xvciApO1xufVxudm9pZCBSRV9JbmRpcmVjdERpZmZ1c2VfVG9vbiggY29uc3QgaW4gdmVjMyBpcnJhZGlhbmNlLCBjb25zdCBpbiBHZW9tZXRyaWNDb250ZXh0IGdlb21ldHJ5LCBjb25zdCBpbiBUb29uTWF0ZXJpYWwgbWF0ZXJpYWwsIGlub3V0IFJlZmxlY3RlZExpZ2h0IHJlZmxlY3RlZExpZ2h0ICkge1xuXHRyZWZsZWN0ZWRMaWdodC5pbmRpcmVjdERpZmZ1c2UgKz0gaXJyYWRpYW5jZSAqIEJSREZfTGFtYmVydCggbWF0ZXJpYWwuZGlmZnVzZUNvbG9yICk7XG59XG4jZGVmaW5lIFJFX0RpcmVjdFx0XHRcdFx0UkVfRGlyZWN0X1Rvb25cbiNkZWZpbmUgUkVfSW5kaXJlY3REaWZmdXNlXHRcdFJFX0luZGlyZWN0RGlmZnVzZV9Ub29uIixsaWdodHNfcGhvbmdfZnJhZ21lbnQ6IkJsaW5uUGhvbmdNYXRlcmlhbCBtYXRlcmlhbDtcbm1hdGVyaWFsLmRpZmZ1c2VDb2xvciA9IGRpZmZ1c2VDb2xvci5yZ2I7XG5tYXRlcmlhbC5zcGVjdWxhckNvbG9yID0gc3BlY3VsYXI7XG5tYXRlcmlhbC5zcGVjdWxhclNoaW5pbmVzcyA9IHNoaW5pbmVzcztcbm1hdGVyaWFsLnNwZWN1bGFyU3RyZW5ndGggPSBzcGVjdWxhclN0cmVuZ3RoOyIsbGlnaHRzX3Bob25nX3BhcnNfZnJhZ21lbnQ6InZhcnlpbmcgdmVjMyB2Vmlld1Bvc2l0aW9uO1xuc3RydWN0IEJsaW5uUGhvbmdNYXRlcmlhbCB7XG5cdHZlYzMgZGlmZnVzZUNvbG9yO1xuXHR2ZWMzIHNwZWN1bGFyQ29sb3I7XG5cdGZsb2F0IHNwZWN1bGFyU2hpbmluZXNzO1xuXHRmbG9hdCBzcGVjdWxhclN0cmVuZ3RoO1xufTtcbnZvaWQgUkVfRGlyZWN0X0JsaW5uUGhvbmcoIGNvbnN0IGluIEluY2lkZW50TGlnaHQgZGlyZWN0TGlnaHQsIGNvbnN0IGluIEdlb21ldHJpY0NvbnRleHQgZ2VvbWV0cnksIGNvbnN0IGluIEJsaW5uUGhvbmdNYXRlcmlhbCBtYXRlcmlhbCwgaW5vdXQgUmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQgKSB7XG5cdGZsb2F0IGRvdE5MID0gc2F0dXJhdGUoIGRvdCggZ2VvbWV0cnkubm9ybWFsLCBkaXJlY3RMaWdodC5kaXJlY3Rpb24gKSApO1xuXHR2ZWMzIGlycmFkaWFuY2UgPSBkb3ROTCAqIGRpcmVjdExpZ2h0LmNvbG9yO1xuXHRyZWZsZWN0ZWRMaWdodC5kaXJlY3REaWZmdXNlICs9IGlycmFkaWFuY2UgKiBCUkRGX0xhbWJlcnQoIG1hdGVyaWFsLmRpZmZ1c2VDb2xvciApO1xuXHRyZWZsZWN0ZWRMaWdodC5kaXJlY3RTcGVjdWxhciArPSBpcnJhZGlhbmNlICogQlJERl9CbGlublBob25nKCBkaXJlY3RMaWdodC5kaXJlY3Rpb24sIGdlb21ldHJ5LnZpZXdEaXIsIGdlb21ldHJ5Lm5vcm1hbCwgbWF0ZXJpYWwuc3BlY3VsYXJDb2xvciwgbWF0ZXJpYWwuc3BlY3VsYXJTaGluaW5lc3MgKSAqIG1hdGVyaWFsLnNwZWN1bGFyU3RyZW5ndGg7XG59XG52b2lkIFJFX0luZGlyZWN0RGlmZnVzZV9CbGlublBob25nKCBjb25zdCBpbiB2ZWMzIGlycmFkaWFuY2UsIGNvbnN0IGluIEdlb21ldHJpY0NvbnRleHQgZ2VvbWV0cnksIGNvbnN0IGluIEJsaW5uUGhvbmdNYXRlcmlhbCBtYXRlcmlhbCwgaW5vdXQgUmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQgKSB7XG5cdHJlZmxlY3RlZExpZ2h0LmluZGlyZWN0RGlmZnVzZSArPSBpcnJhZGlhbmNlICogQlJERl9MYW1iZXJ0KCBtYXRlcmlhbC5kaWZmdXNlQ29sb3IgKTtcbn1cbiNkZWZpbmUgUkVfRGlyZWN0XHRcdFx0XHRSRV9EaXJlY3RfQmxpbm5QaG9uZ1xuI2RlZmluZSBSRV9JbmRpcmVjdERpZmZ1c2VcdFx0UkVfSW5kaXJlY3REaWZmdXNlX0JsaW5uUGhvbmciLGxpZ2h0c19waHlzaWNhbF9mcmFnbWVudDoiUGh5c2ljYWxNYXRlcmlhbCBtYXRlcmlhbDtcbm1hdGVyaWFsLmRpZmZ1c2VDb2xvciA9IGRpZmZ1c2VDb2xvci5yZ2IgKiAoIDEuMCAtIG1ldGFsbmVzc0ZhY3RvciApO1xudmVjMyBkeHkgPSBtYXgoIGFicyggZEZkeCggZ2VvbWV0cnlOb3JtYWwgKSApLCBhYnMoIGRGZHkoIGdlb21ldHJ5Tm9ybWFsICkgKSApO1xuZmxvYXQgZ2VvbWV0cnlSb3VnaG5lc3MgPSBtYXgoIG1heCggZHh5LngsIGR4eS55ICksIGR4eS56ICk7XG5tYXRlcmlhbC5yb3VnaG5lc3MgPSBtYXgoIHJvdWdobmVzc0ZhY3RvciwgMC4wNTI1ICk7bWF0ZXJpYWwucm91Z2huZXNzICs9IGdlb21ldHJ5Um91Z2huZXNzO1xubWF0ZXJpYWwucm91Z2huZXNzID0gbWluKCBtYXRlcmlhbC5yb3VnaG5lc3MsIDEuMCApO1xuI2lmZGVmIElPUlxuXHRtYXRlcmlhbC5pb3IgPSBpb3I7XG5cdCNpZmRlZiBVU0VfU1BFQ1VMQVJcblx0XHRmbG9hdCBzcGVjdWxhckludGVuc2l0eUZhY3RvciA9IHNwZWN1bGFySW50ZW5zaXR5O1xuXHRcdHZlYzMgc3BlY3VsYXJDb2xvckZhY3RvciA9IHNwZWN1bGFyQ29sb3I7XG5cdFx0I2lmZGVmIFVTRV9TUEVDVUxBUl9DT0xPUk1BUFxuXHRcdFx0c3BlY3VsYXJDb2xvckZhY3RvciAqPSB0ZXh0dXJlMkQoIHNwZWN1bGFyQ29sb3JNYXAsIHZTcGVjdWxhckNvbG9yTWFwVXYgKS5yZ2I7XG5cdFx0I2VuZGlmXG5cdFx0I2lmZGVmIFVTRV9TUEVDVUxBUl9JTlRFTlNJVFlNQVBcblx0XHRcdHNwZWN1bGFySW50ZW5zaXR5RmFjdG9yICo9IHRleHR1cmUyRCggc3BlY3VsYXJJbnRlbnNpdHlNYXAsIHZTcGVjdWxhckludGVuc2l0eU1hcFV2ICkuYTtcblx0XHQjZW5kaWZcblx0XHRtYXRlcmlhbC5zcGVjdWxhckY5MCA9IG1peCggc3BlY3VsYXJJbnRlbnNpdHlGYWN0b3IsIDEuMCwgbWV0YWxuZXNzRmFjdG9yICk7XG5cdCNlbHNlXG5cdFx0ZmxvYXQgc3BlY3VsYXJJbnRlbnNpdHlGYWN0b3IgPSAxLjA7XG5cdFx0dmVjMyBzcGVjdWxhckNvbG9yRmFjdG9yID0gdmVjMyggMS4wICk7XG5cdFx0bWF0ZXJpYWwuc3BlY3VsYXJGOTAgPSAxLjA7XG5cdCNlbmRpZlxuXHRtYXRlcmlhbC5zcGVjdWxhckNvbG9yID0gbWl4KCBtaW4oIHBvdzIoICggbWF0ZXJpYWwuaW9yIC0gMS4wICkgLyAoIG1hdGVyaWFsLmlvciArIDEuMCApICkgKiBzcGVjdWxhckNvbG9yRmFjdG9yLCB2ZWMzKCAxLjAgKSApICogc3BlY3VsYXJJbnRlbnNpdHlGYWN0b3IsIGRpZmZ1c2VDb2xvci5yZ2IsIG1ldGFsbmVzc0ZhY3RvciApO1xuI2Vsc2Vcblx0bWF0ZXJpYWwuc3BlY3VsYXJDb2xvciA9IG1peCggdmVjMyggMC4wNCApLCBkaWZmdXNlQ29sb3IucmdiLCBtZXRhbG5lc3NGYWN0b3IgKTtcblx0bWF0ZXJpYWwuc3BlY3VsYXJGOTAgPSAxLjA7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQ0xFQVJDT0FUXG5cdG1hdGVyaWFsLmNsZWFyY29hdCA9IGNsZWFyY29hdDtcblx0bWF0ZXJpYWwuY2xlYXJjb2F0Um91Z2huZXNzID0gY2xlYXJjb2F0Um91Z2huZXNzO1xuXHRtYXRlcmlhbC5jbGVhcmNvYXRGMCA9IHZlYzMoIDAuMDQgKTtcblx0bWF0ZXJpYWwuY2xlYXJjb2F0RjkwID0gMS4wO1xuXHQjaWZkZWYgVVNFX0NMRUFSQ09BVE1BUFxuXHRcdG1hdGVyaWFsLmNsZWFyY29hdCAqPSB0ZXh0dXJlMkQoIGNsZWFyY29hdE1hcCwgdkNsZWFyY29hdE1hcFV2ICkueDtcblx0I2VuZGlmXG5cdCNpZmRlZiBVU0VfQ0xFQVJDT0FUX1JPVUdITkVTU01BUFxuXHRcdG1hdGVyaWFsLmNsZWFyY29hdFJvdWdobmVzcyAqPSB0ZXh0dXJlMkQoIGNsZWFyY29hdFJvdWdobmVzc01hcCwgdkNsZWFyY29hdFJvdWdobmVzc01hcFV2ICkueTtcblx0I2VuZGlmXG5cdG1hdGVyaWFsLmNsZWFyY29hdCA9IHNhdHVyYXRlKCBtYXRlcmlhbC5jbGVhcmNvYXQgKTtcdG1hdGVyaWFsLmNsZWFyY29hdFJvdWdobmVzcyA9IG1heCggbWF0ZXJpYWwuY2xlYXJjb2F0Um91Z2huZXNzLCAwLjA1MjUgKTtcblx0bWF0ZXJpYWwuY2xlYXJjb2F0Um91Z2huZXNzICs9IGdlb21ldHJ5Um91Z2huZXNzO1xuXHRtYXRlcmlhbC5jbGVhcmNvYXRSb3VnaG5lc3MgPSBtaW4oIG1hdGVyaWFsLmNsZWFyY29hdFJvdWdobmVzcywgMS4wICk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfSVJJREVTQ0VOQ0Vcblx0bWF0ZXJpYWwuaXJpZGVzY2VuY2UgPSBpcmlkZXNjZW5jZTtcblx0bWF0ZXJpYWwuaXJpZGVzY2VuY2VJT1IgPSBpcmlkZXNjZW5jZUlPUjtcblx0I2lmZGVmIFVTRV9JUklERVNDRU5DRU1BUFxuXHRcdG1hdGVyaWFsLmlyaWRlc2NlbmNlICo9IHRleHR1cmUyRCggaXJpZGVzY2VuY2VNYXAsIHZJcmlkZXNjZW5jZU1hcFV2ICkucjtcblx0I2VuZGlmXG5cdCNpZmRlZiBVU0VfSVJJREVTQ0VOQ0VfVEhJQ0tORVNTTUFQXG5cdFx0bWF0ZXJpYWwuaXJpZGVzY2VuY2VUaGlja25lc3MgPSAoaXJpZGVzY2VuY2VUaGlja25lc3NNYXhpbXVtIC0gaXJpZGVzY2VuY2VUaGlja25lc3NNaW5pbXVtKSAqIHRleHR1cmUyRCggaXJpZGVzY2VuY2VUaGlja25lc3NNYXAsIHZJcmlkZXNjZW5jZVRoaWNrbmVzc01hcFV2ICkuZyArIGlyaWRlc2NlbmNlVGhpY2tuZXNzTWluaW11bTtcblx0I2Vsc2Vcblx0XHRtYXRlcmlhbC5pcmlkZXNjZW5jZVRoaWNrbmVzcyA9IGlyaWRlc2NlbmNlVGhpY2tuZXNzTWF4aW11bTtcblx0I2VuZGlmXG4jZW5kaWZcbiNpZmRlZiBVU0VfU0hFRU5cblx0bWF0ZXJpYWwuc2hlZW5Db2xvciA9IHNoZWVuQ29sb3I7XG5cdCNpZmRlZiBVU0VfU0hFRU5fQ09MT1JNQVBcblx0XHRtYXRlcmlhbC5zaGVlbkNvbG9yICo9IHRleHR1cmUyRCggc2hlZW5Db2xvck1hcCwgdlNoZWVuQ29sb3JNYXBVdiApLnJnYjtcblx0I2VuZGlmXG5cdG1hdGVyaWFsLnNoZWVuUm91Z2huZXNzID0gY2xhbXAoIHNoZWVuUm91Z2huZXNzLCAwLjA3LCAxLjAgKTtcblx0I2lmZGVmIFVTRV9TSEVFTl9ST1VHSE5FU1NNQVBcblx0XHRtYXRlcmlhbC5zaGVlblJvdWdobmVzcyAqPSB0ZXh0dXJlMkQoIHNoZWVuUm91Z2huZXNzTWFwLCB2U2hlZW5Sb3VnaG5lc3NNYXBVdiApLmE7XG5cdCNlbmRpZlxuI2VuZGlmXG4jaWZkZWYgVVNFX0FOSVNPVFJPUFlcblx0I2lmZGVmIFVTRV9BTklTT1RST1BZTUFQXG5cdFx0bWF0MiBhbmlzb3Ryb3B5TWF0ID0gbWF0MiggYW5pc290cm9weVZlY3Rvci54LCBhbmlzb3Ryb3B5VmVjdG9yLnksIC0gYW5pc290cm9weVZlY3Rvci55LCBhbmlzb3Ryb3B5VmVjdG9yLnggKTtcblx0XHR2ZWMzIGFuaXNvdHJvcHlQb2xhciA9IHRleHR1cmUyRCggYW5pc290cm9weU1hcCwgdkFuaXNvdHJvcHlNYXBVdiApLnJnYjtcblx0XHR2ZWMyIGFuaXNvdHJvcHlWID0gYW5pc290cm9weU1hdCAqIG5vcm1hbGl6ZSggMi4wICogYW5pc290cm9weVBvbGFyLnJnIC0gdmVjMiggMS4wICkgKSAqIGFuaXNvdHJvcHlQb2xhci5iO1xuXHQjZWxzZVxuXHRcdHZlYzIgYW5pc290cm9weVYgPSBhbmlzb3Ryb3B5VmVjdG9yO1xuXHQjZW5kaWZcblx0bWF0ZXJpYWwuYW5pc290cm9weSA9IGxlbmd0aCggYW5pc290cm9weVYgKTtcblx0YW5pc290cm9weVYgLz0gbWF0ZXJpYWwuYW5pc290cm9weTtcblx0bWF0ZXJpYWwuYW5pc290cm9weSA9IHNhdHVyYXRlKCBtYXRlcmlhbC5hbmlzb3Ryb3B5ICk7XG5cdG1hdGVyaWFsLmFscGhhVCA9IG1peCggcG93MiggbWF0ZXJpYWwucm91Z2huZXNzICksIDEuMCwgcG93MiggbWF0ZXJpYWwuYW5pc290cm9weSApICk7XG5cdG1hdGVyaWFsLmFuaXNvdHJvcHlUID0gdGJuWyAwIF0gKiBhbmlzb3Ryb3B5Vi54IC0gdGJuWyAxIF0gKiBhbmlzb3Ryb3B5Vi55O1xuXHRtYXRlcmlhbC5hbmlzb3Ryb3B5QiA9IHRiblsgMSBdICogYW5pc290cm9weVYueCArIHRiblsgMCBdICogYW5pc290cm9weVYueTtcbiNlbmRpZiIsbGlnaHRzX3BoeXNpY2FsX3BhcnNfZnJhZ21lbnQ6InN0cnVjdCBQaHlzaWNhbE1hdGVyaWFsIHtcblx0dmVjMyBkaWZmdXNlQ29sb3I7XG5cdGZsb2F0IHJvdWdobmVzcztcblx0dmVjMyBzcGVjdWxhckNvbG9yO1xuXHRmbG9hdCBzcGVjdWxhckY5MDtcblx0I2lmZGVmIFVTRV9DTEVBUkNPQVRcblx0XHRmbG9hdCBjbGVhcmNvYXQ7XG5cdFx0ZmxvYXQgY2xlYXJjb2F0Um91Z2huZXNzO1xuXHRcdHZlYzMgY2xlYXJjb2F0RjA7XG5cdFx0ZmxvYXQgY2xlYXJjb2F0RjkwO1xuXHQjZW5kaWZcblx0I2lmZGVmIFVTRV9JUklERVNDRU5DRVxuXHRcdGZsb2F0IGlyaWRlc2NlbmNlO1xuXHRcdGZsb2F0IGlyaWRlc2NlbmNlSU9SO1xuXHRcdGZsb2F0IGlyaWRlc2NlbmNlVGhpY2tuZXNzO1xuXHRcdHZlYzMgaXJpZGVzY2VuY2VGcmVzbmVsO1xuXHRcdHZlYzMgaXJpZGVzY2VuY2VGMDtcblx0I2VuZGlmXG5cdCNpZmRlZiBVU0VfU0hFRU5cblx0XHR2ZWMzIHNoZWVuQ29sb3I7XG5cdFx0ZmxvYXQgc2hlZW5Sb3VnaG5lc3M7XG5cdCNlbmRpZlxuXHQjaWZkZWYgSU9SXG5cdFx0ZmxvYXQgaW9yO1xuXHQjZW5kaWZcblx0I2lmZGVmIFVTRV9UUkFOU01JU1NJT05cblx0XHRmbG9hdCB0cmFuc21pc3Npb247XG5cdFx0ZmxvYXQgdHJhbnNtaXNzaW9uQWxwaGE7XG5cdFx0ZmxvYXQgdGhpY2tuZXNzO1xuXHRcdGZsb2F0IGF0dGVudWF0aW9uRGlzdGFuY2U7XG5cdFx0dmVjMyBhdHRlbnVhdGlvbkNvbG9yO1xuXHQjZW5kaWZcblx0I2lmZGVmIFVTRV9BTklTT1RST1BZXG5cdFx0ZmxvYXQgYW5pc290cm9weTtcblx0XHRmbG9hdCBhbHBoYVQ7XG5cdFx0dmVjMyBhbmlzb3Ryb3B5VDtcblx0XHR2ZWMzIGFuaXNvdHJvcHlCO1xuXHQjZW5kaWZcbn07XG52ZWMzIGNsZWFyY29hdFNwZWN1bGFyID0gdmVjMyggMC4wICk7XG52ZWMzIHNoZWVuU3BlY3VsYXIgPSB2ZWMzKCAwLjAgKTtcbnZlYzMgU2NobGlja190b19GMCggY29uc3QgaW4gdmVjMyBmLCBjb25zdCBpbiBmbG9hdCBmOTAsIGNvbnN0IGluIGZsb2F0IGRvdFZIICkge1xuICAgIGZsb2F0IHggPSBjbGFtcCggMS4wIC0gZG90VkgsIDAuMCwgMS4wICk7XG4gICAgZmxvYXQgeDIgPSB4ICogeDtcbiAgICBmbG9hdCB4NSA9IGNsYW1wKCB4ICogeDIgKiB4MiwgMC4wLCAwLjk5OTkgKTtcbiAgICByZXR1cm4gKCBmIC0gdmVjMyggZjkwICkgKiB4NSApIC8gKCAxLjAgLSB4NSApO1xufVxuZmxvYXQgVl9HR1hfU21pdGhDb3JyZWxhdGVkKCBjb25zdCBpbiBmbG9hdCBhbHBoYSwgY29uc3QgaW4gZmxvYXQgZG90TkwsIGNvbnN0IGluIGZsb2F0IGRvdE5WICkge1xuXHRmbG9hdCBhMiA9IHBvdzIoIGFscGhhICk7XG5cdGZsb2F0IGd2ID0gZG90TkwgKiBzcXJ0KCBhMiArICggMS4wIC0gYTIgKSAqIHBvdzIoIGRvdE5WICkgKTtcblx0ZmxvYXQgZ2wgPSBkb3ROViAqIHNxcnQoIGEyICsgKCAxLjAgLSBhMiApICogcG93MiggZG90TkwgKSApO1xuXHRyZXR1cm4gMC41IC8gbWF4KCBndiArIGdsLCBFUFNJTE9OICk7XG59XG5mbG9hdCBEX0dHWCggY29uc3QgaW4gZmxvYXQgYWxwaGEsIGNvbnN0IGluIGZsb2F0IGRvdE5IICkge1xuXHRmbG9hdCBhMiA9IHBvdzIoIGFscGhhICk7XG5cdGZsb2F0IGRlbm9tID0gcG93MiggZG90TkggKSAqICggYTIgLSAxLjAgKSArIDEuMDtcblx0cmV0dXJuIFJFQ0lQUk9DQUxfUEkgKiBhMiAvIHBvdzIoIGRlbm9tICk7XG59XG4jaWZkZWYgVVNFX0FOSVNPVFJPUFlcblx0ZmxvYXQgVl9HR1hfU21pdGhDb3JyZWxhdGVkX0FuaXNvdHJvcGljKCBjb25zdCBpbiBmbG9hdCBhbHBoYVQsIGNvbnN0IGluIGZsb2F0IGFscGhhQiwgY29uc3QgaW4gZmxvYXQgZG90VFYsIGNvbnN0IGluIGZsb2F0IGRvdEJWLCBjb25zdCBpbiBmbG9hdCBkb3RUTCwgY29uc3QgaW4gZmxvYXQgZG90QkwsIGNvbnN0IGluIGZsb2F0IGRvdE5WLCBjb25zdCBpbiBmbG9hdCBkb3ROTCApIHtcblx0XHRmbG9hdCBndiA9IGRvdE5MICogbGVuZ3RoKCB2ZWMzKCBhbHBoYVQgKiBkb3RUViwgYWxwaGFCICogZG90QlYsIGRvdE5WICkgKTtcblx0XHRmbG9hdCBnbCA9IGRvdE5WICogbGVuZ3RoKCB2ZWMzKCBhbHBoYVQgKiBkb3RUTCwgYWxwaGFCICogZG90QkwsIGRvdE5MICkgKTtcblx0XHRmbG9hdCB2ID0gMC41IC8gKCBndiArIGdsICk7XG5cdFx0cmV0dXJuIHNhdHVyYXRlKHYpO1xuXHR9XG5cdGZsb2F0IERfR0dYX0FuaXNvdHJvcGljKCBjb25zdCBpbiBmbG9hdCBhbHBoYVQsIGNvbnN0IGluIGZsb2F0IGFscGhhQiwgY29uc3QgaW4gZmxvYXQgZG90TkgsIGNvbnN0IGluIGZsb2F0IGRvdFRILCBjb25zdCBpbiBmbG9hdCBkb3RCSCApIHtcblx0XHRmbG9hdCBhMiA9IGFscGhhVCAqIGFscGhhQjtcblx0XHRoaWdocCB2ZWMzIHYgPSB2ZWMzKCBhbHBoYUIgKiBkb3RUSCwgYWxwaGFUICogZG90QkgsIGEyICogZG90TkggKTtcblx0XHRoaWdocCBmbG9hdCB2MiA9IGRvdCggdiwgdiApO1xuXHRcdGZsb2F0IHcyID0gYTIgLyB2Mjtcblx0XHRyZXR1cm4gUkVDSVBST0NBTF9QSSAqIGEyICogcG93MiAoIHcyICk7XG5cdH1cbiNlbmRpZlxuI2lmZGVmIFVTRV9DTEVBUkNPQVRcblx0dmVjMyBCUkRGX0dHWF9DbGVhcmNvYXQoIGNvbnN0IGluIHZlYzMgbGlnaHREaXIsIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIFBoeXNpY2FsTWF0ZXJpYWwgbWF0ZXJpYWwpIHtcblx0XHR2ZWMzIGYwID0gbWF0ZXJpYWwuY2xlYXJjb2F0RjA7XG5cdFx0ZmxvYXQgZjkwID0gbWF0ZXJpYWwuY2xlYXJjb2F0RjkwO1xuXHRcdGZsb2F0IHJvdWdobmVzcyA9IG1hdGVyaWFsLmNsZWFyY29hdFJvdWdobmVzcztcblx0XHRmbG9hdCBhbHBoYSA9IHBvdzIoIHJvdWdobmVzcyApO1xuXHRcdHZlYzMgaGFsZkRpciA9IG5vcm1hbGl6ZSggbGlnaHREaXIgKyB2aWV3RGlyICk7XG5cdFx0ZmxvYXQgZG90TkwgPSBzYXR1cmF0ZSggZG90KCBub3JtYWwsIGxpZ2h0RGlyICkgKTtcblx0XHRmbG9hdCBkb3ROViA9IHNhdHVyYXRlKCBkb3QoIG5vcm1hbCwgdmlld0RpciApICk7XG5cdFx0ZmxvYXQgZG90TkggPSBzYXR1cmF0ZSggZG90KCBub3JtYWwsIGhhbGZEaXIgKSApO1xuXHRcdGZsb2F0IGRvdFZIID0gc2F0dXJhdGUoIGRvdCggdmlld0RpciwgaGFsZkRpciApICk7XG5cdFx0dmVjMyBGID0gRl9TY2hsaWNrKCBmMCwgZjkwLCBkb3RWSCApO1xuXHRcdGZsb2F0IFYgPSBWX0dHWF9TbWl0aENvcnJlbGF0ZWQoIGFscGhhLCBkb3ROTCwgZG90TlYgKTtcblx0XHRmbG9hdCBEID0gRF9HR1goIGFscGhhLCBkb3ROSCApO1xuXHRcdHJldHVybiBGICogKCBWICogRCApO1xuXHR9XG4jZW5kaWZcbnZlYzMgQlJERl9HR1goIGNvbnN0IGluIHZlYzMgbGlnaHREaXIsIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIFBoeXNpY2FsTWF0ZXJpYWwgbWF0ZXJpYWwgKSB7XG5cdHZlYzMgZjAgPSBtYXRlcmlhbC5zcGVjdWxhckNvbG9yO1xuXHRmbG9hdCBmOTAgPSBtYXRlcmlhbC5zcGVjdWxhckY5MDtcblx0ZmxvYXQgcm91Z2huZXNzID0gbWF0ZXJpYWwucm91Z2huZXNzO1xuXHRmbG9hdCBhbHBoYSA9IHBvdzIoIHJvdWdobmVzcyApO1xuXHR2ZWMzIGhhbGZEaXIgPSBub3JtYWxpemUoIGxpZ2h0RGlyICsgdmlld0RpciApO1xuXHRmbG9hdCBkb3ROTCA9IHNhdHVyYXRlKCBkb3QoIG5vcm1hbCwgbGlnaHREaXIgKSApO1xuXHRmbG9hdCBkb3ROViA9IHNhdHVyYXRlKCBkb3QoIG5vcm1hbCwgdmlld0RpciApICk7XG5cdGZsb2F0IGRvdE5IID0gc2F0dXJhdGUoIGRvdCggbm9ybWFsLCBoYWxmRGlyICkgKTtcblx0ZmxvYXQgZG90VkggPSBzYXR1cmF0ZSggZG90KCB2aWV3RGlyLCBoYWxmRGlyICkgKTtcblx0dmVjMyBGID0gRl9TY2hsaWNrKCBmMCwgZjkwLCBkb3RWSCApO1xuXHQjaWZkZWYgVVNFX0lSSURFU0NFTkNFXG5cdFx0RiA9IG1peCggRiwgbWF0ZXJpYWwuaXJpZGVzY2VuY2VGcmVzbmVsLCBtYXRlcmlhbC5pcmlkZXNjZW5jZSApO1xuXHQjZW5kaWZcblx0I2lmZGVmIFVTRV9BTklTT1RST1BZXG5cdFx0ZmxvYXQgZG90VEwgPSBkb3QoIG1hdGVyaWFsLmFuaXNvdHJvcHlULCBsaWdodERpciApO1xuXHRcdGZsb2F0IGRvdFRWID0gZG90KCBtYXRlcmlhbC5hbmlzb3Ryb3B5VCwgdmlld0RpciApO1xuXHRcdGZsb2F0IGRvdFRIID0gZG90KCBtYXRlcmlhbC5hbmlzb3Ryb3B5VCwgaGFsZkRpciApO1xuXHRcdGZsb2F0IGRvdEJMID0gZG90KCBtYXRlcmlhbC5hbmlzb3Ryb3B5QiwgbGlnaHREaXIgKTtcblx0XHRmbG9hdCBkb3RCViA9IGRvdCggbWF0ZXJpYWwuYW5pc290cm9weUIsIHZpZXdEaXIgKTtcblx0XHRmbG9hdCBkb3RCSCA9IGRvdCggbWF0ZXJpYWwuYW5pc290cm9weUIsIGhhbGZEaXIgKTtcblx0XHRmbG9hdCBWID0gVl9HR1hfU21pdGhDb3JyZWxhdGVkX0FuaXNvdHJvcGljKCBtYXRlcmlhbC5hbHBoYVQsIGFscGhhLCBkb3RUViwgZG90QlYsIGRvdFRMLCBkb3RCTCwgZG90TlYsIGRvdE5MICk7XG5cdFx0ZmxvYXQgRCA9IERfR0dYX0FuaXNvdHJvcGljKCBtYXRlcmlhbC5hbHBoYVQsIGFscGhhLCBkb3ROSCwgZG90VEgsIGRvdEJIICk7XG5cdCNlbHNlXG5cdFx0ZmxvYXQgViA9IFZfR0dYX1NtaXRoQ29ycmVsYXRlZCggYWxwaGEsIGRvdE5MLCBkb3ROViApO1xuXHRcdGZsb2F0IEQgPSBEX0dHWCggYWxwaGEsIGRvdE5IICk7XG5cdCNlbmRpZlxuXHRyZXR1cm4gRiAqICggViAqIEQgKTtcbn1cbnZlYzIgTFRDX1V2KCBjb25zdCBpbiB2ZWMzIE4sIGNvbnN0IGluIHZlYzMgViwgY29uc3QgaW4gZmxvYXQgcm91Z2huZXNzICkge1xuXHRjb25zdCBmbG9hdCBMVVRfU0laRSA9IDY0LjA7XG5cdGNvbnN0IGZsb2F0IExVVF9TQ0FMRSA9ICggTFVUX1NJWkUgLSAxLjAgKSAvIExVVF9TSVpFO1xuXHRjb25zdCBmbG9hdCBMVVRfQklBUyA9IDAuNSAvIExVVF9TSVpFO1xuXHRmbG9hdCBkb3ROViA9IHNhdHVyYXRlKCBkb3QoIE4sIFYgKSApO1xuXHR2ZWMyIHV2ID0gdmVjMiggcm91Z2huZXNzLCBzcXJ0KCAxLjAgLSBkb3ROViApICk7XG5cdHV2ID0gdXYgKiBMVVRfU0NBTEUgKyBMVVRfQklBUztcblx0cmV0dXJuIHV2O1xufVxuZmxvYXQgTFRDX0NsaXBwZWRTcGhlcmVGb3JtRmFjdG9yKCBjb25zdCBpbiB2ZWMzIGYgKSB7XG5cdGZsb2F0IGwgPSBsZW5ndGgoIGYgKTtcblx0cmV0dXJuIG1heCggKCBsICogbCArIGYueiApIC8gKCBsICsgMS4wICksIDAuMCApO1xufVxudmVjMyBMVENfRWRnZVZlY3RvckZvcm1GYWN0b3IoIGNvbnN0IGluIHZlYzMgdjEsIGNvbnN0IGluIHZlYzMgdjIgKSB7XG5cdGZsb2F0IHggPSBkb3QoIHYxLCB2MiApO1xuXHRmbG9hdCB5ID0gYWJzKCB4ICk7XG5cdGZsb2F0IGEgPSAwLjg1NDM5ODUgKyAoIDAuNDk2NTE1NSArIDAuMDE0NTIwNiAqIHkgKSAqIHk7XG5cdGZsb2F0IGIgPSAzLjQxNzU5NDAgKyAoIDQuMTYxNjcyNCArIHkgKSAqIHk7XG5cdGZsb2F0IHYgPSBhIC8gYjtcblx0ZmxvYXQgdGhldGFfc2ludGhldGEgPSAoIHggPiAwLjAgKSA/IHYgOiAwLjUgKiBpbnZlcnNlc3FydCggbWF4KCAxLjAgLSB4ICogeCwgMWUtNyApICkgLSB2O1xuXHRyZXR1cm4gY3Jvc3MoIHYxLCB2MiApICogdGhldGFfc2ludGhldGE7XG59XG52ZWMzIExUQ19FdmFsdWF0ZSggY29uc3QgaW4gdmVjMyBOLCBjb25zdCBpbiB2ZWMzIFYsIGNvbnN0IGluIHZlYzMgUCwgY29uc3QgaW4gbWF0MyBtSW52LCBjb25zdCBpbiB2ZWMzIHJlY3RDb29yZHNbIDQgXSApIHtcblx0dmVjMyB2MSA9IHJlY3RDb29yZHNbIDEgXSAtIHJlY3RDb29yZHNbIDAgXTtcblx0dmVjMyB2MiA9IHJlY3RDb29yZHNbIDMgXSAtIHJlY3RDb29yZHNbIDAgXTtcblx0dmVjMyBsaWdodE5vcm1hbCA9IGNyb3NzKCB2MSwgdjIgKTtcblx0aWYoIGRvdCggbGlnaHROb3JtYWwsIFAgLSByZWN0Q29vcmRzWyAwIF0gKSA8IDAuMCApIHJldHVybiB2ZWMzKCAwLjAgKTtcblx0dmVjMyBUMSwgVDI7XG5cdFQxID0gbm9ybWFsaXplKCBWIC0gTiAqIGRvdCggViwgTiApICk7XG5cdFQyID0gLSBjcm9zcyggTiwgVDEgKTtcblx0bWF0MyBtYXQgPSBtSW52ICogdHJhbnNwb3NlTWF0MyggbWF0MyggVDEsIFQyLCBOICkgKTtcblx0dmVjMyBjb29yZHNbIDQgXTtcblx0Y29vcmRzWyAwIF0gPSBtYXQgKiAoIHJlY3RDb29yZHNbIDAgXSAtIFAgKTtcblx0Y29vcmRzWyAxIF0gPSBtYXQgKiAoIHJlY3RDb29yZHNbIDEgXSAtIFAgKTtcblx0Y29vcmRzWyAyIF0gPSBtYXQgKiAoIHJlY3RDb29yZHNbIDIgXSAtIFAgKTtcblx0Y29vcmRzWyAzIF0gPSBtYXQgKiAoIHJlY3RDb29yZHNbIDMgXSAtIFAgKTtcblx0Y29vcmRzWyAwIF0gPSBub3JtYWxpemUoIGNvb3Jkc1sgMCBdICk7XG5cdGNvb3Jkc1sgMSBdID0gbm9ybWFsaXplKCBjb29yZHNbIDEgXSApO1xuXHRjb29yZHNbIDIgXSA9IG5vcm1hbGl6ZSggY29vcmRzWyAyIF0gKTtcblx0Y29vcmRzWyAzIF0gPSBub3JtYWxpemUoIGNvb3Jkc1sgMyBdICk7XG5cdHZlYzMgdmVjdG9yRm9ybUZhY3RvciA9IHZlYzMoIDAuMCApO1xuXHR2ZWN0b3JGb3JtRmFjdG9yICs9IExUQ19FZGdlVmVjdG9yRm9ybUZhY3RvciggY29vcmRzWyAwIF0sIGNvb3Jkc1sgMSBdICk7XG5cdHZlY3RvckZvcm1GYWN0b3IgKz0gTFRDX0VkZ2VWZWN0b3JGb3JtRmFjdG9yKCBjb29yZHNbIDEgXSwgY29vcmRzWyAyIF0gKTtcblx0dmVjdG9yRm9ybUZhY3RvciArPSBMVENfRWRnZVZlY3RvckZvcm1GYWN0b3IoIGNvb3Jkc1sgMiBdLCBjb29yZHNbIDMgXSApO1xuXHR2ZWN0b3JGb3JtRmFjdG9yICs9IExUQ19FZGdlVmVjdG9yRm9ybUZhY3RvciggY29vcmRzWyAzIF0sIGNvb3Jkc1sgMCBdICk7XG5cdGZsb2F0IHJlc3VsdCA9IExUQ19DbGlwcGVkU3BoZXJlRm9ybUZhY3RvciggdmVjdG9yRm9ybUZhY3RvciApO1xuXHRyZXR1cm4gdmVjMyggcmVzdWx0ICk7XG59XG4jaWYgZGVmaW5lZCggVVNFX1NIRUVOIClcbmZsb2F0IERfQ2hhcmxpZSggZmxvYXQgcm91Z2huZXNzLCBmbG9hdCBkb3ROSCApIHtcblx0ZmxvYXQgYWxwaGEgPSBwb3cyKCByb3VnaG5lc3MgKTtcblx0ZmxvYXQgaW52QWxwaGEgPSAxLjAgLyBhbHBoYTtcblx0ZmxvYXQgY29zMmggPSBkb3ROSCAqIGRvdE5IO1xuXHRmbG9hdCBzaW4yaCA9IG1heCggMS4wIC0gY29zMmgsIDAuMDA3ODEyNSApO1xuXHRyZXR1cm4gKCAyLjAgKyBpbnZBbHBoYSApICogcG93KCBzaW4yaCwgaW52QWxwaGEgKiAwLjUgKSAvICggMi4wICogUEkgKTtcbn1cbmZsb2F0IFZfTmV1YmVsdCggZmxvYXQgZG90TlYsIGZsb2F0IGRvdE5MICkge1xuXHRyZXR1cm4gc2F0dXJhdGUoIDEuMCAvICggNC4wICogKCBkb3ROTCArIGRvdE5WIC0gZG90TkwgKiBkb3ROViApICkgKTtcbn1cbnZlYzMgQlJERl9TaGVlbiggY29uc3QgaW4gdmVjMyBsaWdodERpciwgY29uc3QgaW4gdmVjMyB2aWV3RGlyLCBjb25zdCBpbiB2ZWMzIG5vcm1hbCwgdmVjMyBzaGVlbkNvbG9yLCBjb25zdCBpbiBmbG9hdCBzaGVlblJvdWdobmVzcyApIHtcblx0dmVjMyBoYWxmRGlyID0gbm9ybWFsaXplKCBsaWdodERpciArIHZpZXdEaXIgKTtcblx0ZmxvYXQgZG90TkwgPSBzYXR1cmF0ZSggZG90KCBub3JtYWwsIGxpZ2h0RGlyICkgKTtcblx0ZmxvYXQgZG90TlYgPSBzYXR1cmF0ZSggZG90KCBub3JtYWwsIHZpZXdEaXIgKSApO1xuXHRmbG9hdCBkb3ROSCA9IHNhdHVyYXRlKCBkb3QoIG5vcm1hbCwgaGFsZkRpciApICk7XG5cdGZsb2F0IEQgPSBEX0NoYXJsaWUoIHNoZWVuUm91Z2huZXNzLCBkb3ROSCApO1xuXHRmbG9hdCBWID0gVl9OZXViZWx0KCBkb3ROViwgZG90TkwgKTtcblx0cmV0dXJuIHNoZWVuQ29sb3IgKiAoIEQgKiBWICk7XG59XG4jZW5kaWZcbmZsb2F0IElCTFNoZWVuQlJERiggY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gZmxvYXQgcm91Z2huZXNzICkge1xuXHRmbG9hdCBkb3ROViA9IHNhdHVyYXRlKCBkb3QoIG5vcm1hbCwgdmlld0RpciApICk7XG5cdGZsb2F0IHIyID0gcm91Z2huZXNzICogcm91Z2huZXNzO1xuXHRmbG9hdCBhID0gcm91Z2huZXNzIDwgMC4yNSA/IC0zMzkuMiAqIHIyICsgMTYxLjQgKiByb3VnaG5lc3MgLSAyNS45IDogLTguNDggKiByMiArIDE0LjMgKiByb3VnaG5lc3MgLSA5Ljk1O1xuXHRmbG9hdCBiID0gcm91Z2huZXNzIDwgMC4yNSA/IDQ0LjAgKiByMiAtIDIzLjcgKiByb3VnaG5lc3MgKyAzLjI2IDogMS45NyAqIHIyIC0gMy4yNyAqIHJvdWdobmVzcyArIDAuNzI7XG5cdGZsb2F0IERHID0gZXhwKCBhICogZG90TlYgKyBiICkgKyAoIHJvdWdobmVzcyA8IDAuMjUgPyAwLjAgOiAwLjEgKiAoIHJvdWdobmVzcyAtIDAuMjUgKSApO1xuXHRyZXR1cm4gc2F0dXJhdGUoIERHICogUkVDSVBST0NBTF9QSSApO1xufVxudmVjMiBERkdBcHByb3goIGNvbnN0IGluIHZlYzMgbm9ybWFsLCBjb25zdCBpbiB2ZWMzIHZpZXdEaXIsIGNvbnN0IGluIGZsb2F0IHJvdWdobmVzcyApIHtcblx0ZmxvYXQgZG90TlYgPSBzYXR1cmF0ZSggZG90KCBub3JtYWwsIHZpZXdEaXIgKSApO1xuXHRjb25zdCB2ZWM0IGMwID0gdmVjNCggLSAxLCAtIDAuMDI3NSwgLSAwLjU3MiwgMC4wMjIgKTtcblx0Y29uc3QgdmVjNCBjMSA9IHZlYzQoIDEsIDAuMDQyNSwgMS4wNCwgLSAwLjA0ICk7XG5cdHZlYzQgciA9IHJvdWdobmVzcyAqIGMwICsgYzE7XG5cdGZsb2F0IGEwMDQgPSBtaW4oIHIueCAqIHIueCwgZXhwMiggLSA5LjI4ICogZG90TlYgKSApICogci54ICsgci55O1xuXHR2ZWMyIGZhYiA9IHZlYzIoIC0gMS4wNCwgMS4wNCApICogYTAwNCArIHIuenc7XG5cdHJldHVybiBmYWI7XG59XG52ZWMzIEVudmlyb25tZW50QlJERiggY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBzcGVjdWxhckNvbG9yLCBjb25zdCBpbiBmbG9hdCBzcGVjdWxhckY5MCwgY29uc3QgaW4gZmxvYXQgcm91Z2huZXNzICkge1xuXHR2ZWMyIGZhYiA9IERGR0FwcHJveCggbm9ybWFsLCB2aWV3RGlyLCByb3VnaG5lc3MgKTtcblx0cmV0dXJuIHNwZWN1bGFyQ29sb3IgKiBmYWIueCArIHNwZWN1bGFyRjkwICogZmFiLnk7XG59XG4jaWZkZWYgVVNFX0lSSURFU0NFTkNFXG52b2lkIGNvbXB1dGVNdWx0aXNjYXR0ZXJpbmdJcmlkZXNjZW5jZSggY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBzcGVjdWxhckNvbG9yLCBjb25zdCBpbiBmbG9hdCBzcGVjdWxhckY5MCwgY29uc3QgaW4gZmxvYXQgaXJpZGVzY2VuY2UsIGNvbnN0IGluIHZlYzMgaXJpZGVzY2VuY2VGMCwgY29uc3QgaW4gZmxvYXQgcm91Z2huZXNzLCBpbm91dCB2ZWMzIHNpbmdsZVNjYXR0ZXIsIGlub3V0IHZlYzMgbXVsdGlTY2F0dGVyICkge1xuI2Vsc2VcbnZvaWQgY29tcHV0ZU11bHRpc2NhdHRlcmluZyggY29uc3QgaW4gdmVjMyBub3JtYWwsIGNvbnN0IGluIHZlYzMgdmlld0RpciwgY29uc3QgaW4gdmVjMyBzcGVjdWxhckNvbG9yLCBjb25zdCBpbiBmbG9hdCBzcGVjdWxhckY5MCwgY29uc3QgaW4gZmxvYXQgcm91Z2huZXNzLCBpbm91dCB2ZWMzIHNpbmdsZVNjYXR0ZXIsIGlub3V0IHZlYzMgbXVsdGlTY2F0dGVyICkge1xuI2VuZGlmXG5cdHZlYzIgZmFiID0gREZHQXBwcm94KCBub3JtYWwsIHZpZXdEaXIsIHJvdWdobmVzcyApO1xuXHQjaWZkZWYgVVNFX0lSSURFU0NFTkNFXG5cdFx0dmVjMyBGciA9IG1peCggc3BlY3VsYXJDb2xvciwgaXJpZGVzY2VuY2VGMCwgaXJpZGVzY2VuY2UgKTtcblx0I2Vsc2Vcblx0XHR2ZWMzIEZyID0gc3BlY3VsYXJDb2xvcjtcblx0I2VuZGlmXG5cdHZlYzMgRnNzRXNzID0gRnIgKiBmYWIueCArIHNwZWN1bGFyRjkwICogZmFiLnk7XG5cdGZsb2F0IEVzcyA9IGZhYi54ICsgZmFiLnk7XG5cdGZsb2F0IEVtcyA9IDEuMCAtIEVzcztcblx0dmVjMyBGYXZnID0gRnIgKyAoIDEuMCAtIEZyICkgKiAwLjA0NzYxOTtcdHZlYzMgRm1zID0gRnNzRXNzICogRmF2ZyAvICggMS4wIC0gRW1zICogRmF2ZyApO1xuXHRzaW5nbGVTY2F0dGVyICs9IEZzc0Vzcztcblx0bXVsdGlTY2F0dGVyICs9IEZtcyAqIEVtcztcbn1cbiNpZiBOVU1fUkVDVF9BUkVBX0xJR0hUUyA+IDBcblx0dm9pZCBSRV9EaXJlY3RfUmVjdEFyZWFfUGh5c2ljYWwoIGNvbnN0IGluIFJlY3RBcmVhTGlnaHQgcmVjdEFyZWFMaWdodCwgY29uc3QgaW4gR2VvbWV0cmljQ29udGV4dCBnZW9tZXRyeSwgY29uc3QgaW4gUGh5c2ljYWxNYXRlcmlhbCBtYXRlcmlhbCwgaW5vdXQgUmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQgKSB7XG5cdFx0dmVjMyBub3JtYWwgPSBnZW9tZXRyeS5ub3JtYWw7XG5cdFx0dmVjMyB2aWV3RGlyID0gZ2VvbWV0cnkudmlld0Rpcjtcblx0XHR2ZWMzIHBvc2l0aW9uID0gZ2VvbWV0cnkucG9zaXRpb247XG5cdFx0dmVjMyBsaWdodFBvcyA9IHJlY3RBcmVhTGlnaHQucG9zaXRpb247XG5cdFx0dmVjMyBoYWxmV2lkdGggPSByZWN0QXJlYUxpZ2h0LmhhbGZXaWR0aDtcblx0XHR2ZWMzIGhhbGZIZWlnaHQgPSByZWN0QXJlYUxpZ2h0LmhhbGZIZWlnaHQ7XG5cdFx0dmVjMyBsaWdodENvbG9yID0gcmVjdEFyZWFMaWdodC5jb2xvcjtcblx0XHRmbG9hdCByb3VnaG5lc3MgPSBtYXRlcmlhbC5yb3VnaG5lc3M7XG5cdFx0dmVjMyByZWN0Q29vcmRzWyA0IF07XG5cdFx0cmVjdENvb3Jkc1sgMCBdID0gbGlnaHRQb3MgKyBoYWxmV2lkdGggLSBoYWxmSGVpZ2h0O1x0XHRyZWN0Q29vcmRzWyAxIF0gPSBsaWdodFBvcyAtIGhhbGZXaWR0aCAtIGhhbGZIZWlnaHQ7XG5cdFx0cmVjdENvb3Jkc1sgMiBdID0gbGlnaHRQb3MgLSBoYWxmV2lkdGggKyBoYWxmSGVpZ2h0O1xuXHRcdHJlY3RDb29yZHNbIDMgXSA9IGxpZ2h0UG9zICsgaGFsZldpZHRoICsgaGFsZkhlaWdodDtcblx0XHR2ZWMyIHV2ID0gTFRDX1V2KCBub3JtYWwsIHZpZXdEaXIsIHJvdWdobmVzcyApO1xuXHRcdHZlYzQgdDEgPSB0ZXh0dXJlMkQoIGx0Y18xLCB1diApO1xuXHRcdHZlYzQgdDIgPSB0ZXh0dXJlMkQoIGx0Y18yLCB1diApO1xuXHRcdG1hdDMgbUludiA9IG1hdDMoXG5cdFx0XHR2ZWMzKCB0MS54LCAwLCB0MS55ICksXG5cdFx0XHR2ZWMzKCAgICAwLCAxLCAgICAwICksXG5cdFx0XHR2ZWMzKCB0MS56LCAwLCB0MS53IClcblx0XHQpO1xuXHRcdHZlYzMgZnJlc25lbCA9ICggbWF0ZXJpYWwuc3BlY3VsYXJDb2xvciAqIHQyLnggKyAoIHZlYzMoIDEuMCApIC0gbWF0ZXJpYWwuc3BlY3VsYXJDb2xvciApICogdDIueSApO1xuXHRcdHJlZmxlY3RlZExpZ2h0LmRpcmVjdFNwZWN1bGFyICs9IGxpZ2h0Q29sb3IgKiBmcmVzbmVsICogTFRDX0V2YWx1YXRlKCBub3JtYWwsIHZpZXdEaXIsIHBvc2l0aW9uLCBtSW52LCByZWN0Q29vcmRzICk7XG5cdFx0cmVmbGVjdGVkTGlnaHQuZGlyZWN0RGlmZnVzZSArPSBsaWdodENvbG9yICogbWF0ZXJpYWwuZGlmZnVzZUNvbG9yICogTFRDX0V2YWx1YXRlKCBub3JtYWwsIHZpZXdEaXIsIHBvc2l0aW9uLCBtYXQzKCAxLjAgKSwgcmVjdENvb3JkcyApO1xuXHR9XG4jZW5kaWZcbnZvaWQgUkVfRGlyZWN0X1BoeXNpY2FsKCBjb25zdCBpbiBJbmNpZGVudExpZ2h0IGRpcmVjdExpZ2h0LCBjb25zdCBpbiBHZW9tZXRyaWNDb250ZXh0IGdlb21ldHJ5LCBjb25zdCBpbiBQaHlzaWNhbE1hdGVyaWFsIG1hdGVyaWFsLCBpbm91dCBSZWZsZWN0ZWRMaWdodCByZWZsZWN0ZWRMaWdodCApIHtcblx0ZmxvYXQgZG90TkwgPSBzYXR1cmF0ZSggZG90KCBnZW9tZXRyeS5ub3JtYWwsIGRpcmVjdExpZ2h0LmRpcmVjdGlvbiApICk7XG5cdHZlYzMgaXJyYWRpYW5jZSA9IGRvdE5MICogZGlyZWN0TGlnaHQuY29sb3I7XG5cdCNpZmRlZiBVU0VfQ0xFQVJDT0FUXG5cdFx0ZmxvYXQgZG90TkxjYyA9IHNhdHVyYXRlKCBkb3QoIGdlb21ldHJ5LmNsZWFyY29hdE5vcm1hbCwgZGlyZWN0TGlnaHQuZGlyZWN0aW9uICkgKTtcblx0XHR2ZWMzIGNjSXJyYWRpYW5jZSA9IGRvdE5MY2MgKiBkaXJlY3RMaWdodC5jb2xvcjtcblx0XHRjbGVhcmNvYXRTcGVjdWxhciArPSBjY0lycmFkaWFuY2UgKiBCUkRGX0dHWF9DbGVhcmNvYXQoIGRpcmVjdExpZ2h0LmRpcmVjdGlvbiwgZ2VvbWV0cnkudmlld0RpciwgZ2VvbWV0cnkuY2xlYXJjb2F0Tm9ybWFsLCBtYXRlcmlhbCApO1xuXHQjZW5kaWZcblx0I2lmZGVmIFVTRV9TSEVFTlxuXHRcdHNoZWVuU3BlY3VsYXIgKz0gaXJyYWRpYW5jZSAqIEJSREZfU2hlZW4oIGRpcmVjdExpZ2h0LmRpcmVjdGlvbiwgZ2VvbWV0cnkudmlld0RpciwgZ2VvbWV0cnkubm9ybWFsLCBtYXRlcmlhbC5zaGVlbkNvbG9yLCBtYXRlcmlhbC5zaGVlblJvdWdobmVzcyApO1xuXHQjZW5kaWZcblx0cmVmbGVjdGVkTGlnaHQuZGlyZWN0U3BlY3VsYXIgKz0gaXJyYWRpYW5jZSAqIEJSREZfR0dYKCBkaXJlY3RMaWdodC5kaXJlY3Rpb24sIGdlb21ldHJ5LnZpZXdEaXIsIGdlb21ldHJ5Lm5vcm1hbCwgbWF0ZXJpYWwgKTtcblx0cmVmbGVjdGVkTGlnaHQuZGlyZWN0RGlmZnVzZSArPSBpcnJhZGlhbmNlICogQlJERl9MYW1iZXJ0KCBtYXRlcmlhbC5kaWZmdXNlQ29sb3IgKTtcbn1cbnZvaWQgUkVfSW5kaXJlY3REaWZmdXNlX1BoeXNpY2FsKCBjb25zdCBpbiB2ZWMzIGlycmFkaWFuY2UsIGNvbnN0IGluIEdlb21ldHJpY0NvbnRleHQgZ2VvbWV0cnksIGNvbnN0IGluIFBoeXNpY2FsTWF0ZXJpYWwgbWF0ZXJpYWwsIGlub3V0IFJlZmxlY3RlZExpZ2h0IHJlZmxlY3RlZExpZ2h0ICkge1xuXHRyZWZsZWN0ZWRMaWdodC5pbmRpcmVjdERpZmZ1c2UgKz0gaXJyYWRpYW5jZSAqIEJSREZfTGFtYmVydCggbWF0ZXJpYWwuZGlmZnVzZUNvbG9yICk7XG59XG52b2lkIFJFX0luZGlyZWN0U3BlY3VsYXJfUGh5c2ljYWwoIGNvbnN0IGluIHZlYzMgcmFkaWFuY2UsIGNvbnN0IGluIHZlYzMgaXJyYWRpYW5jZSwgY29uc3QgaW4gdmVjMyBjbGVhcmNvYXRSYWRpYW5jZSwgY29uc3QgaW4gR2VvbWV0cmljQ29udGV4dCBnZW9tZXRyeSwgY29uc3QgaW4gUGh5c2ljYWxNYXRlcmlhbCBtYXRlcmlhbCwgaW5vdXQgUmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQpIHtcblx0I2lmZGVmIFVTRV9DTEVBUkNPQVRcblx0XHRjbGVhcmNvYXRTcGVjdWxhciArPSBjbGVhcmNvYXRSYWRpYW5jZSAqIEVudmlyb25tZW50QlJERiggZ2VvbWV0cnkuY2xlYXJjb2F0Tm9ybWFsLCBnZW9tZXRyeS52aWV3RGlyLCBtYXRlcmlhbC5jbGVhcmNvYXRGMCwgbWF0ZXJpYWwuY2xlYXJjb2F0RjkwLCBtYXRlcmlhbC5jbGVhcmNvYXRSb3VnaG5lc3MgKTtcblx0I2VuZGlmXG5cdCNpZmRlZiBVU0VfU0hFRU5cblx0XHRzaGVlblNwZWN1bGFyICs9IGlycmFkaWFuY2UgKiBtYXRlcmlhbC5zaGVlbkNvbG9yICogSUJMU2hlZW5CUkRGKCBnZW9tZXRyeS5ub3JtYWwsIGdlb21ldHJ5LnZpZXdEaXIsIG1hdGVyaWFsLnNoZWVuUm91Z2huZXNzICk7XG5cdCNlbmRpZlxuXHR2ZWMzIHNpbmdsZVNjYXR0ZXJpbmcgPSB2ZWMzKCAwLjAgKTtcblx0dmVjMyBtdWx0aVNjYXR0ZXJpbmcgPSB2ZWMzKCAwLjAgKTtcblx0dmVjMyBjb3NpbmVXZWlnaHRlZElycmFkaWFuY2UgPSBpcnJhZGlhbmNlICogUkVDSVBST0NBTF9QSTtcblx0I2lmZGVmIFVTRV9JUklERVNDRU5DRVxuXHRcdGNvbXB1dGVNdWx0aXNjYXR0ZXJpbmdJcmlkZXNjZW5jZSggZ2VvbWV0cnkubm9ybWFsLCBnZW9tZXRyeS52aWV3RGlyLCBtYXRlcmlhbC5zcGVjdWxhckNvbG9yLCBtYXRlcmlhbC5zcGVjdWxhckY5MCwgbWF0ZXJpYWwuaXJpZGVzY2VuY2UsIG1hdGVyaWFsLmlyaWRlc2NlbmNlRnJlc25lbCwgbWF0ZXJpYWwucm91Z2huZXNzLCBzaW5nbGVTY2F0dGVyaW5nLCBtdWx0aVNjYXR0ZXJpbmcgKTtcblx0I2Vsc2Vcblx0XHRjb21wdXRlTXVsdGlzY2F0dGVyaW5nKCBnZW9tZXRyeS5ub3JtYWwsIGdlb21ldHJ5LnZpZXdEaXIsIG1hdGVyaWFsLnNwZWN1bGFyQ29sb3IsIG1hdGVyaWFsLnNwZWN1bGFyRjkwLCBtYXRlcmlhbC5yb3VnaG5lc3MsIHNpbmdsZVNjYXR0ZXJpbmcsIG11bHRpU2NhdHRlcmluZyApO1xuXHQjZW5kaWZcblx0dmVjMyB0b3RhbFNjYXR0ZXJpbmcgPSBzaW5nbGVTY2F0dGVyaW5nICsgbXVsdGlTY2F0dGVyaW5nO1xuXHR2ZWMzIGRpZmZ1c2UgPSBtYXRlcmlhbC5kaWZmdXNlQ29sb3IgKiAoIDEuMCAtIG1heCggbWF4KCB0b3RhbFNjYXR0ZXJpbmcuciwgdG90YWxTY2F0dGVyaW5nLmcgKSwgdG90YWxTY2F0dGVyaW5nLmIgKSApO1xuXHRyZWZsZWN0ZWRMaWdodC5pbmRpcmVjdFNwZWN1bGFyICs9IHJhZGlhbmNlICogc2luZ2xlU2NhdHRlcmluZztcblx0cmVmbGVjdGVkTGlnaHQuaW5kaXJlY3RTcGVjdWxhciArPSBtdWx0aVNjYXR0ZXJpbmcgKiBjb3NpbmVXZWlnaHRlZElycmFkaWFuY2U7XG5cdHJlZmxlY3RlZExpZ2h0LmluZGlyZWN0RGlmZnVzZSArPSBkaWZmdXNlICogY29zaW5lV2VpZ2h0ZWRJcnJhZGlhbmNlO1xufVxuI2RlZmluZSBSRV9EaXJlY3RcdFx0XHRcdFJFX0RpcmVjdF9QaHlzaWNhbFxuI2RlZmluZSBSRV9EaXJlY3RfUmVjdEFyZWFcdFx0UkVfRGlyZWN0X1JlY3RBcmVhX1BoeXNpY2FsXG4jZGVmaW5lIFJFX0luZGlyZWN0RGlmZnVzZVx0XHRSRV9JbmRpcmVjdERpZmZ1c2VfUGh5c2ljYWxcbiNkZWZpbmUgUkVfSW5kaXJlY3RTcGVjdWxhclx0XHRSRV9JbmRpcmVjdFNwZWN1bGFyX1BoeXNpY2FsXG5mbG9hdCBjb21wdXRlU3BlY3VsYXJPY2NsdXNpb24oIGNvbnN0IGluIGZsb2F0IGRvdE5WLCBjb25zdCBpbiBmbG9hdCBhbWJpZW50T2NjbHVzaW9uLCBjb25zdCBpbiBmbG9hdCByb3VnaG5lc3MgKSB7XG5cdHJldHVybiBzYXR1cmF0ZSggcG93KCBkb3ROViArIGFtYmllbnRPY2NsdXNpb24sIGV4cDIoIC0gMTYuMCAqIHJvdWdobmVzcyAtIDEuMCApICkgLSAxLjAgKyBhbWJpZW50T2NjbHVzaW9uICk7XG59IixsaWdodHNfZnJhZ21lbnRfYmVnaW46IlxuR2VvbWV0cmljQ29udGV4dCBnZW9tZXRyeTtcbmdlb21ldHJ5LnBvc2l0aW9uID0gLSB2Vmlld1Bvc2l0aW9uO1xuZ2VvbWV0cnkubm9ybWFsID0gbm9ybWFsO1xuZ2VvbWV0cnkudmlld0RpciA9ICggaXNPcnRob2dyYXBoaWMgKSA/IHZlYzMoIDAsIDAsIDEgKSA6IG5vcm1hbGl6ZSggdlZpZXdQb3NpdGlvbiApO1xuI2lmZGVmIFVTRV9DTEVBUkNPQVRcblx0Z2VvbWV0cnkuY2xlYXJjb2F0Tm9ybWFsID0gY2xlYXJjb2F0Tm9ybWFsO1xuI2VuZGlmXG4jaWZkZWYgVVNFX0lSSURFU0NFTkNFXG5cdGZsb2F0IGRvdE5WaSA9IHNhdHVyYXRlKCBkb3QoIG5vcm1hbCwgZ2VvbWV0cnkudmlld0RpciApICk7XG5cdGlmICggbWF0ZXJpYWwuaXJpZGVzY2VuY2VUaGlja25lc3MgPT0gMC4wICkge1xuXHRcdG1hdGVyaWFsLmlyaWRlc2NlbmNlID0gMC4wO1xuXHR9IGVsc2Uge1xuXHRcdG1hdGVyaWFsLmlyaWRlc2NlbmNlID0gc2F0dXJhdGUoIG1hdGVyaWFsLmlyaWRlc2NlbmNlICk7XG5cdH1cblx0aWYgKCBtYXRlcmlhbC5pcmlkZXNjZW5jZSA+IDAuMCApIHtcblx0XHRtYXRlcmlhbC5pcmlkZXNjZW5jZUZyZXNuZWwgPSBldmFsSXJpZGVzY2VuY2UoIDEuMCwgbWF0ZXJpYWwuaXJpZGVzY2VuY2VJT1IsIGRvdE5WaSwgbWF0ZXJpYWwuaXJpZGVzY2VuY2VUaGlja25lc3MsIG1hdGVyaWFsLnNwZWN1bGFyQ29sb3IgKTtcblx0XHRtYXRlcmlhbC5pcmlkZXNjZW5jZUYwID0gU2NobGlja190b19GMCggbWF0ZXJpYWwuaXJpZGVzY2VuY2VGcmVzbmVsLCAxLjAsIGRvdE5WaSApO1xuXHR9XG4jZW5kaWZcbkluY2lkZW50TGlnaHQgZGlyZWN0TGlnaHQ7XG4jaWYgKCBOVU1fUE9JTlRfTElHSFRTID4gMCApICYmIGRlZmluZWQoIFJFX0RpcmVjdCApXG5cdFBvaW50TGlnaHQgcG9pbnRMaWdodDtcblx0I2lmIGRlZmluZWQoIFVTRV9TSEFET1dNQVAgKSAmJiBOVU1fUE9JTlRfTElHSFRfU0hBRE9XUyA+IDBcblx0UG9pbnRMaWdodFNoYWRvdyBwb2ludExpZ2h0U2hhZG93O1xuXHQjZW5kaWZcblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9zdGFydFxuXHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBOVU1fUE9JTlRfTElHSFRTOyBpICsrICkge1xuXHRcdHBvaW50TGlnaHQgPSBwb2ludExpZ2h0c1sgaSBdO1xuXHRcdGdldFBvaW50TGlnaHRJbmZvKCBwb2ludExpZ2h0LCBnZW9tZXRyeSwgZGlyZWN0TGlnaHQgKTtcblx0XHQjaWYgZGVmaW5lZCggVVNFX1NIQURPV01BUCApICYmICggVU5ST0xMRURfTE9PUF9JTkRFWCA8IE5VTV9QT0lOVF9MSUdIVF9TSEFET1dTIClcblx0XHRwb2ludExpZ2h0U2hhZG93ID0gcG9pbnRMaWdodFNoYWRvd3NbIGkgXTtcblx0XHRkaXJlY3RMaWdodC5jb2xvciAqPSAoIGRpcmVjdExpZ2h0LnZpc2libGUgJiYgcmVjZWl2ZVNoYWRvdyApID8gZ2V0UG9pbnRTaGFkb3coIHBvaW50U2hhZG93TWFwWyBpIF0sIHBvaW50TGlnaHRTaGFkb3cuc2hhZG93TWFwU2l6ZSwgcG9pbnRMaWdodFNoYWRvdy5zaGFkb3dCaWFzLCBwb2ludExpZ2h0U2hhZG93LnNoYWRvd1JhZGl1cywgdlBvaW50U2hhZG93Q29vcmRbIGkgXSwgcG9pbnRMaWdodFNoYWRvdy5zaGFkb3dDYW1lcmFOZWFyLCBwb2ludExpZ2h0U2hhZG93LnNoYWRvd0NhbWVyYUZhciApIDogMS4wO1xuXHRcdCNlbmRpZlxuXHRcdFJFX0RpcmVjdCggZGlyZWN0TGlnaHQsIGdlb21ldHJ5LCBtYXRlcmlhbCwgcmVmbGVjdGVkTGlnaHQgKTtcblx0fVxuXHQjcHJhZ21hIHVucm9sbF9sb29wX2VuZFxuI2VuZGlmXG4jaWYgKCBOVU1fU1BPVF9MSUdIVFMgPiAwICkgJiYgZGVmaW5lZCggUkVfRGlyZWN0IClcblx0U3BvdExpZ2h0IHNwb3RMaWdodDtcblx0dmVjNCBzcG90Q29sb3I7XG5cdHZlYzMgc3BvdExpZ2h0Q29vcmQ7XG5cdGJvb2wgaW5TcG90TGlnaHRNYXA7XG5cdCNpZiBkZWZpbmVkKCBVU0VfU0hBRE9XTUFQICkgJiYgTlVNX1NQT1RfTElHSFRfU0hBRE9XUyA+IDBcblx0U3BvdExpZ2h0U2hhZG93IHNwb3RMaWdodFNoYWRvdztcblx0I2VuZGlmXG5cdCNwcmFnbWEgdW5yb2xsX2xvb3Bfc3RhcnRcblx0Zm9yICggaW50IGkgPSAwOyBpIDwgTlVNX1NQT1RfTElHSFRTOyBpICsrICkge1xuXHRcdHNwb3RMaWdodCA9IHNwb3RMaWdodHNbIGkgXTtcblx0XHRnZXRTcG90TGlnaHRJbmZvKCBzcG90TGlnaHQsIGdlb21ldHJ5LCBkaXJlY3RMaWdodCApO1xuXHRcdCNpZiAoIFVOUk9MTEVEX0xPT1BfSU5ERVggPCBOVU1fU1BPVF9MSUdIVF9TSEFET1dTX1dJVEhfTUFQUyApXG5cdFx0I2RlZmluZSBTUE9UX0xJR0hUX01BUF9JTkRFWCBVTlJPTExFRF9MT09QX0lOREVYXG5cdFx0I2VsaWYgKCBVTlJPTExFRF9MT09QX0lOREVYIDwgTlVNX1NQT1RfTElHSFRfU0hBRE9XUyApXG5cdFx0I2RlZmluZSBTUE9UX0xJR0hUX01BUF9JTkRFWCBOVU1fU1BPVF9MSUdIVF9NQVBTXG5cdFx0I2Vsc2Vcblx0XHQjZGVmaW5lIFNQT1RfTElHSFRfTUFQX0lOREVYICggVU5ST0xMRURfTE9PUF9JTkRFWCAtIE5VTV9TUE9UX0xJR0hUX1NIQURPV1MgKyBOVU1fU1BPVF9MSUdIVF9TSEFET1dTX1dJVEhfTUFQUyApXG5cdFx0I2VuZGlmXG5cdFx0I2lmICggU1BPVF9MSUdIVF9NQVBfSU5ERVggPCBOVU1fU1BPVF9MSUdIVF9NQVBTIClcblx0XHRcdHNwb3RMaWdodENvb3JkID0gdlNwb3RMaWdodENvb3JkWyBpIF0ueHl6IC8gdlNwb3RMaWdodENvb3JkWyBpIF0udztcblx0XHRcdGluU3BvdExpZ2h0TWFwID0gYWxsKCBsZXNzVGhhbiggYWJzKCBzcG90TGlnaHRDb29yZCAqIDIuIC0gMS4gKSwgdmVjMyggMS4wICkgKSApO1xuXHRcdFx0c3BvdENvbG9yID0gdGV4dHVyZTJEKCBzcG90TGlnaHRNYXBbIFNQT1RfTElHSFRfTUFQX0lOREVYIF0sIHNwb3RMaWdodENvb3JkLnh5ICk7XG5cdFx0XHRkaXJlY3RMaWdodC5jb2xvciA9IGluU3BvdExpZ2h0TWFwID8gZGlyZWN0TGlnaHQuY29sb3IgKiBzcG90Q29sb3IucmdiIDogZGlyZWN0TGlnaHQuY29sb3I7XG5cdFx0I2VuZGlmXG5cdFx0I3VuZGVmIFNQT1RfTElHSFRfTUFQX0lOREVYXG5cdFx0I2lmIGRlZmluZWQoIFVTRV9TSEFET1dNQVAgKSAmJiAoIFVOUk9MTEVEX0xPT1BfSU5ERVggPCBOVU1fU1BPVF9MSUdIVF9TSEFET1dTIClcblx0XHRzcG90TGlnaHRTaGFkb3cgPSBzcG90TGlnaHRTaGFkb3dzWyBpIF07XG5cdFx0ZGlyZWN0TGlnaHQuY29sb3IgKj0gKCBkaXJlY3RMaWdodC52aXNpYmxlICYmIHJlY2VpdmVTaGFkb3cgKSA/IGdldFNoYWRvdyggc3BvdFNoYWRvd01hcFsgaSBdLCBzcG90TGlnaHRTaGFkb3cuc2hhZG93TWFwU2l6ZSwgc3BvdExpZ2h0U2hhZG93LnNoYWRvd0JpYXMsIHNwb3RMaWdodFNoYWRvdy5zaGFkb3dSYWRpdXMsIHZTcG90TGlnaHRDb29yZFsgaSBdICkgOiAxLjA7XG5cdFx0I2VuZGlmXG5cdFx0UkVfRGlyZWN0KCBkaXJlY3RMaWdodCwgZ2VvbWV0cnksIG1hdGVyaWFsLCByZWZsZWN0ZWRMaWdodCApO1xuXHR9XG5cdCNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kXG4jZW5kaWZcbiNpZiAoIE5VTV9ESVJfTElHSFRTID4gMCApICYmIGRlZmluZWQoIFJFX0RpcmVjdCApXG5cdERpcmVjdGlvbmFsTGlnaHQgZGlyZWN0aW9uYWxMaWdodDtcblx0I2lmIGRlZmluZWQoIFVTRV9TSEFET1dNQVAgKSAmJiBOVU1fRElSX0xJR0hUX1NIQURPV1MgPiAwXG5cdERpcmVjdGlvbmFsTGlnaHRTaGFkb3cgZGlyZWN0aW9uYWxMaWdodFNoYWRvdztcblx0I2VuZGlmXG5cdCNwcmFnbWEgdW5yb2xsX2xvb3Bfc3RhcnRcblx0Zm9yICggaW50IGkgPSAwOyBpIDwgTlVNX0RJUl9MSUdIVFM7IGkgKysgKSB7XG5cdFx0ZGlyZWN0aW9uYWxMaWdodCA9IGRpcmVjdGlvbmFsTGlnaHRzWyBpIF07XG5cdFx0Z2V0RGlyZWN0aW9uYWxMaWdodEluZm8oIGRpcmVjdGlvbmFsTGlnaHQsIGdlb21ldHJ5LCBkaXJlY3RMaWdodCApO1xuXHRcdCNpZiBkZWZpbmVkKCBVU0VfU0hBRE9XTUFQICkgJiYgKCBVTlJPTExFRF9MT09QX0lOREVYIDwgTlVNX0RJUl9MSUdIVF9TSEFET1dTIClcblx0XHRkaXJlY3Rpb25hbExpZ2h0U2hhZG93ID0gZGlyZWN0aW9uYWxMaWdodFNoYWRvd3NbIGkgXTtcblx0XHRkaXJlY3RMaWdodC5jb2xvciAqPSAoIGRpcmVjdExpZ2h0LnZpc2libGUgJiYgcmVjZWl2ZVNoYWRvdyApID8gZ2V0U2hhZG93KCBkaXJlY3Rpb25hbFNoYWRvd01hcFsgaSBdLCBkaXJlY3Rpb25hbExpZ2h0U2hhZG93LnNoYWRvd01hcFNpemUsIGRpcmVjdGlvbmFsTGlnaHRTaGFkb3cuc2hhZG93QmlhcywgZGlyZWN0aW9uYWxMaWdodFNoYWRvdy5zaGFkb3dSYWRpdXMsIHZEaXJlY3Rpb25hbFNoYWRvd0Nvb3JkWyBpIF0gKSA6IDEuMDtcblx0XHQjZW5kaWZcblx0XHRSRV9EaXJlY3QoIGRpcmVjdExpZ2h0LCBnZW9tZXRyeSwgbWF0ZXJpYWwsIHJlZmxlY3RlZExpZ2h0ICk7XG5cdH1cblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9lbmRcbiNlbmRpZlxuI2lmICggTlVNX1JFQ1RfQVJFQV9MSUdIVFMgPiAwICkgJiYgZGVmaW5lZCggUkVfRGlyZWN0X1JlY3RBcmVhIClcblx0UmVjdEFyZWFMaWdodCByZWN0QXJlYUxpZ2h0O1xuXHQjcHJhZ21hIHVucm9sbF9sb29wX3N0YXJ0XG5cdGZvciAoIGludCBpID0gMDsgaSA8IE5VTV9SRUNUX0FSRUFfTElHSFRTOyBpICsrICkge1xuXHRcdHJlY3RBcmVhTGlnaHQgPSByZWN0QXJlYUxpZ2h0c1sgaSBdO1xuXHRcdFJFX0RpcmVjdF9SZWN0QXJlYSggcmVjdEFyZWFMaWdodCwgZ2VvbWV0cnksIG1hdGVyaWFsLCByZWZsZWN0ZWRMaWdodCApO1xuXHR9XG5cdCNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kXG4jZW5kaWZcbiNpZiBkZWZpbmVkKCBSRV9JbmRpcmVjdERpZmZ1c2UgKVxuXHR2ZWMzIGlibElycmFkaWFuY2UgPSB2ZWMzKCAwLjAgKTtcblx0dmVjMyBpcnJhZGlhbmNlID0gZ2V0QW1iaWVudExpZ2h0SXJyYWRpYW5jZSggYW1iaWVudExpZ2h0Q29sb3IgKTtcblx0aXJyYWRpYW5jZSArPSBnZXRMaWdodFByb2JlSXJyYWRpYW5jZSggbGlnaHRQcm9iZSwgZ2VvbWV0cnkubm9ybWFsICk7XG5cdCNpZiAoIE5VTV9IRU1JX0xJR0hUUyA+IDAgKVxuXHRcdCNwcmFnbWEgdW5yb2xsX2xvb3Bfc3RhcnRcblx0XHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBOVU1fSEVNSV9MSUdIVFM7IGkgKysgKSB7XG5cdFx0XHRpcnJhZGlhbmNlICs9IGdldEhlbWlzcGhlcmVMaWdodElycmFkaWFuY2UoIGhlbWlzcGhlcmVMaWdodHNbIGkgXSwgZ2VvbWV0cnkubm9ybWFsICk7XG5cdFx0fVxuXHRcdCNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kXG5cdCNlbmRpZlxuI2VuZGlmXG4jaWYgZGVmaW5lZCggUkVfSW5kaXJlY3RTcGVjdWxhciApXG5cdHZlYzMgcmFkaWFuY2UgPSB2ZWMzKCAwLjAgKTtcblx0dmVjMyBjbGVhcmNvYXRSYWRpYW5jZSA9IHZlYzMoIDAuMCApO1xuI2VuZGlmIixsaWdodHNfZnJhZ21lbnRfbWFwczoiI2lmIGRlZmluZWQoIFJFX0luZGlyZWN0RGlmZnVzZSApXG5cdCNpZmRlZiBVU0VfTElHSFRNQVBcblx0XHR2ZWM0IGxpZ2h0TWFwVGV4ZWwgPSB0ZXh0dXJlMkQoIGxpZ2h0TWFwLCB2TGlnaHRNYXBVdiApO1xuXHRcdHZlYzMgbGlnaHRNYXBJcnJhZGlhbmNlID0gbGlnaHRNYXBUZXhlbC5yZ2IgKiBsaWdodE1hcEludGVuc2l0eTtcblx0XHRpcnJhZGlhbmNlICs9IGxpZ2h0TWFwSXJyYWRpYW5jZTtcblx0I2VuZGlmXG5cdCNpZiBkZWZpbmVkKCBVU0VfRU5WTUFQICkgJiYgZGVmaW5lZCggU1RBTkRBUkQgKSAmJiBkZWZpbmVkKCBFTlZNQVBfVFlQRV9DVUJFX1VWIClcblx0XHRpYmxJcnJhZGlhbmNlICs9IGdldElCTElycmFkaWFuY2UoIGdlb21ldHJ5Lm5vcm1hbCApO1xuXHQjZW5kaWZcbiNlbmRpZlxuI2lmIGRlZmluZWQoIFVTRV9FTlZNQVAgKSAmJiBkZWZpbmVkKCBSRV9JbmRpcmVjdFNwZWN1bGFyIClcblx0I2lmZGVmIFVTRV9BTklTT1RST1BZXG5cdFx0cmFkaWFuY2UgKz0gZ2V0SUJMQW5pc290cm9weVJhZGlhbmNlKCBnZW9tZXRyeS52aWV3RGlyLCBnZW9tZXRyeS5ub3JtYWwsIG1hdGVyaWFsLnJvdWdobmVzcywgbWF0ZXJpYWwuYW5pc290cm9weUIsIG1hdGVyaWFsLmFuaXNvdHJvcHkgKTtcblx0I2Vsc2Vcblx0XHRyYWRpYW5jZSArPSBnZXRJQkxSYWRpYW5jZSggZ2VvbWV0cnkudmlld0RpciwgZ2VvbWV0cnkubm9ybWFsLCBtYXRlcmlhbC5yb3VnaG5lc3MgKTtcblx0I2VuZGlmXG5cdCNpZmRlZiBVU0VfQ0xFQVJDT0FUXG5cdFx0Y2xlYXJjb2F0UmFkaWFuY2UgKz0gZ2V0SUJMUmFkaWFuY2UoIGdlb21ldHJ5LnZpZXdEaXIsIGdlb21ldHJ5LmNsZWFyY29hdE5vcm1hbCwgbWF0ZXJpYWwuY2xlYXJjb2F0Um91Z2huZXNzICk7XG5cdCNlbmRpZlxuI2VuZGlmIixsaWdodHNfZnJhZ21lbnRfZW5kOiIjaWYgZGVmaW5lZCggUkVfSW5kaXJlY3REaWZmdXNlIClcblx0UkVfSW5kaXJlY3REaWZmdXNlKCBpcnJhZGlhbmNlLCBnZW9tZXRyeSwgbWF0ZXJpYWwsIHJlZmxlY3RlZExpZ2h0ICk7XG4jZW5kaWZcbiNpZiBkZWZpbmVkKCBSRV9JbmRpcmVjdFNwZWN1bGFyIClcblx0UkVfSW5kaXJlY3RTcGVjdWxhciggcmFkaWFuY2UsIGlibElycmFkaWFuY2UsIGNsZWFyY29hdFJhZGlhbmNlLCBnZW9tZXRyeSwgbWF0ZXJpYWwsIHJlZmxlY3RlZExpZ2h0ICk7XG4jZW5kaWYiLGxvZ2RlcHRoYnVmX2ZyYWdtZW50OiIjaWYgZGVmaW5lZCggVVNFX0xPR0RFUFRIQlVGICkgJiYgZGVmaW5lZCggVVNFX0xPR0RFUFRIQlVGX0VYVCApXG5cdGdsX0ZyYWdEZXB0aEVYVCA9IHZJc1BlcnNwZWN0aXZlID09IDAuMCA/IGdsX0ZyYWdDb29yZC56IDogbG9nMiggdkZyYWdEZXB0aCApICogbG9nRGVwdGhCdWZGQyAqIDAuNTtcbiNlbmRpZiIsbG9nZGVwdGhidWZfcGFyc19mcmFnbWVudDoiI2lmIGRlZmluZWQoIFVTRV9MT0dERVBUSEJVRiApICYmIGRlZmluZWQoIFVTRV9MT0dERVBUSEJVRl9FWFQgKVxuXHR1bmlmb3JtIGZsb2F0IGxvZ0RlcHRoQnVmRkM7XG5cdHZhcnlpbmcgZmxvYXQgdkZyYWdEZXB0aDtcblx0dmFyeWluZyBmbG9hdCB2SXNQZXJzcGVjdGl2ZTtcbiNlbmRpZiIsbG9nZGVwdGhidWZfcGFyc192ZXJ0ZXg6IiNpZmRlZiBVU0VfTE9HREVQVEhCVUZcblx0I2lmZGVmIFVTRV9MT0dERVBUSEJVRl9FWFRcblx0XHR2YXJ5aW5nIGZsb2F0IHZGcmFnRGVwdGg7XG5cdFx0dmFyeWluZyBmbG9hdCB2SXNQZXJzcGVjdGl2ZTtcblx0I2Vsc2Vcblx0XHR1bmlmb3JtIGZsb2F0IGxvZ0RlcHRoQnVmRkM7XG5cdCNlbmRpZlxuI2VuZGlmIixsb2dkZXB0aGJ1Zl92ZXJ0ZXg6IiNpZmRlZiBVU0VfTE9HREVQVEhCVUZcblx0I2lmZGVmIFVTRV9MT0dERVBUSEJVRl9FWFRcblx0XHR2RnJhZ0RlcHRoID0gMS4wICsgZ2xfUG9zaXRpb24udztcblx0XHR2SXNQZXJzcGVjdGl2ZSA9IGZsb2F0KCBpc1BlcnNwZWN0aXZlTWF0cml4KCBwcm9qZWN0aW9uTWF0cml4ICkgKTtcblx0I2Vsc2Vcblx0XHRpZiAoIGlzUGVyc3BlY3RpdmVNYXRyaXgoIHByb2plY3Rpb25NYXRyaXggKSApIHtcblx0XHRcdGdsX1Bvc2l0aW9uLnogPSBsb2cyKCBtYXgoIEVQU0lMT04sIGdsX1Bvc2l0aW9uLncgKyAxLjAgKSApICogbG9nRGVwdGhCdWZGQyAtIDEuMDtcblx0XHRcdGdsX1Bvc2l0aW9uLnogKj0gZ2xfUG9zaXRpb24udztcblx0XHR9XG5cdCNlbmRpZlxuI2VuZGlmIixtYXBfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfTUFQXG5cdGRpZmZ1c2VDb2xvciAqPSB0ZXh0dXJlMkQoIG1hcCwgdk1hcFV2ICk7XG4jZW5kaWYiLG1hcF9wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX01BUFxuXHR1bmlmb3JtIHNhbXBsZXIyRCBtYXA7XG4jZW5kaWYiLG1hcF9wYXJ0aWNsZV9mcmFnbWVudDoiI2lmIGRlZmluZWQoIFVTRV9NQVAgKSB8fCBkZWZpbmVkKCBVU0VfQUxQSEFNQVAgKVxuXHQjaWYgZGVmaW5lZCggVVNFX1BPSU5UU19VViApXG5cdFx0dmVjMiB1diA9IHZVdjtcblx0I2Vsc2Vcblx0XHR2ZWMyIHV2ID0gKCB1dlRyYW5zZm9ybSAqIHZlYzMoIGdsX1BvaW50Q29vcmQueCwgMS4wIC0gZ2xfUG9pbnRDb29yZC55LCAxICkgKS54eTtcblx0I2VuZGlmXG4jZW5kaWZcbiNpZmRlZiBVU0VfTUFQXG5cdGRpZmZ1c2VDb2xvciAqPSB0ZXh0dXJlMkQoIG1hcCwgdXYgKTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9BTFBIQU1BUFxuXHRkaWZmdXNlQ29sb3IuYSAqPSB0ZXh0dXJlMkQoIGFscGhhTWFwLCB1diApLmc7XG4jZW5kaWYiLG1hcF9wYXJ0aWNsZV9wYXJzX2ZyYWdtZW50OiIjaWYgZGVmaW5lZCggVVNFX1BPSU5UU19VViApXG5cdHZhcnlpbmcgdmVjMiB2VXY7XG4jZWxzZVxuXHQjaWYgZGVmaW5lZCggVVNFX01BUCApIHx8IGRlZmluZWQoIFVTRV9BTFBIQU1BUCApXG5cdFx0dW5pZm9ybSBtYXQzIHV2VHJhbnNmb3JtO1xuXHQjZW5kaWZcbiNlbmRpZlxuI2lmZGVmIFVTRV9NQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgbWFwO1xuI2VuZGlmXG4jaWZkZWYgVVNFX0FMUEhBTUFQXG5cdHVuaWZvcm0gc2FtcGxlcjJEIGFscGhhTWFwO1xuI2VuZGlmIixtZXRhbG5lc3NtYXBfZnJhZ21lbnQ6ImZsb2F0IG1ldGFsbmVzc0ZhY3RvciA9IG1ldGFsbmVzcztcbiNpZmRlZiBVU0VfTUVUQUxORVNTTUFQXG5cdHZlYzQgdGV4ZWxNZXRhbG5lc3MgPSB0ZXh0dXJlMkQoIG1ldGFsbmVzc01hcCwgdk1ldGFsbmVzc01hcFV2ICk7XG5cdG1ldGFsbmVzc0ZhY3RvciAqPSB0ZXhlbE1ldGFsbmVzcy5iO1xuI2VuZGlmIixtZXRhbG5lc3NtYXBfcGFyc19mcmFnbWVudDoiI2lmZGVmIFVTRV9NRVRBTE5FU1NNQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgbWV0YWxuZXNzTWFwO1xuI2VuZGlmIixtb3JwaGNvbG9yX3ZlcnRleDoiI2lmIGRlZmluZWQoIFVTRV9NT1JQSENPTE9SUyApICYmIGRlZmluZWQoIE1PUlBIVEFSR0VUU19URVhUVVJFIClcblx0dkNvbG9yICo9IG1vcnBoVGFyZ2V0QmFzZUluZmx1ZW5jZTtcblx0Zm9yICggaW50IGkgPSAwOyBpIDwgTU9SUEhUQVJHRVRTX0NPVU5UOyBpICsrICkge1xuXHRcdCNpZiBkZWZpbmVkKCBVU0VfQ09MT1JfQUxQSEEgKVxuXHRcdFx0aWYgKCBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIGkgXSAhPSAwLjAgKSB2Q29sb3IgKz0gZ2V0TW9ycGgoIGdsX1ZlcnRleElELCBpLCAyICkgKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIGkgXTtcblx0XHQjZWxpZiBkZWZpbmVkKCBVU0VfQ09MT1IgKVxuXHRcdFx0aWYgKCBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIGkgXSAhPSAwLjAgKSB2Q29sb3IgKz0gZ2V0TW9ycGgoIGdsX1ZlcnRleElELCBpLCAyICkucmdiICogbW9ycGhUYXJnZXRJbmZsdWVuY2VzWyBpIF07XG5cdFx0I2VuZGlmXG5cdH1cbiNlbmRpZiIsbW9ycGhub3JtYWxfdmVydGV4OiIjaWZkZWYgVVNFX01PUlBITk9STUFMU1xuXHRvYmplY3ROb3JtYWwgKj0gbW9ycGhUYXJnZXRCYXNlSW5mbHVlbmNlO1xuXHQjaWZkZWYgTU9SUEhUQVJHRVRTX1RFWFRVUkVcblx0XHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBNT1JQSFRBUkdFVFNfQ09VTlQ7IGkgKysgKSB7XG5cdFx0XHRpZiAoIG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgaSBdICE9IDAuMCApIG9iamVjdE5vcm1hbCArPSBnZXRNb3JwaCggZ2xfVmVydGV4SUQsIGksIDEgKS54eXogKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIGkgXTtcblx0XHR9XG5cdCNlbHNlXG5cdFx0b2JqZWN0Tm9ybWFsICs9IG1vcnBoTm9ybWFsMCAqIG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgMCBdO1xuXHRcdG9iamVjdE5vcm1hbCArPSBtb3JwaE5vcm1hbDEgKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDEgXTtcblx0XHRvYmplY3ROb3JtYWwgKz0gbW9ycGhOb3JtYWwyICogbW9ycGhUYXJnZXRJbmZsdWVuY2VzWyAyIF07XG5cdFx0b2JqZWN0Tm9ybWFsICs9IG1vcnBoTm9ybWFsMyAqIG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgMyBdO1xuXHQjZW5kaWZcbiNlbmRpZiIsbW9ycGh0YXJnZXRfcGFyc192ZXJ0ZXg6IiNpZmRlZiBVU0VfTU9SUEhUQVJHRVRTXG5cdHVuaWZvcm0gZmxvYXQgbW9ycGhUYXJnZXRCYXNlSW5mbHVlbmNlO1xuXHQjaWZkZWYgTU9SUEhUQVJHRVRTX1RFWFRVUkVcblx0XHR1bmlmb3JtIGZsb2F0IG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgTU9SUEhUQVJHRVRTX0NPVU5UIF07XG5cdFx0dW5pZm9ybSBzYW1wbGVyMkRBcnJheSBtb3JwaFRhcmdldHNUZXh0dXJlO1xuXHRcdHVuaWZvcm0gaXZlYzIgbW9ycGhUYXJnZXRzVGV4dHVyZVNpemU7XG5cdFx0dmVjNCBnZXRNb3JwaCggY29uc3QgaW4gaW50IHZlcnRleEluZGV4LCBjb25zdCBpbiBpbnQgbW9ycGhUYXJnZXRJbmRleCwgY29uc3QgaW4gaW50IG9mZnNldCApIHtcblx0XHRcdGludCB0ZXhlbEluZGV4ID0gdmVydGV4SW5kZXggKiBNT1JQSFRBUkdFVFNfVEVYVFVSRV9TVFJJREUgKyBvZmZzZXQ7XG5cdFx0XHRpbnQgeSA9IHRleGVsSW5kZXggLyBtb3JwaFRhcmdldHNUZXh0dXJlU2l6ZS54O1xuXHRcdFx0aW50IHggPSB0ZXhlbEluZGV4IC0geSAqIG1vcnBoVGFyZ2V0c1RleHR1cmVTaXplLng7XG5cdFx0XHRpdmVjMyBtb3JwaFVWID0gaXZlYzMoIHgsIHksIG1vcnBoVGFyZ2V0SW5kZXggKTtcblx0XHRcdHJldHVybiB0ZXhlbEZldGNoKCBtb3JwaFRhcmdldHNUZXh0dXJlLCBtb3JwaFVWLCAwICk7XG5cdFx0fVxuXHQjZWxzZVxuXHRcdCNpZm5kZWYgVVNFX01PUlBITk9STUFMU1xuXHRcdFx0dW5pZm9ybSBmbG9hdCBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDggXTtcblx0XHQjZWxzZVxuXHRcdFx0dW5pZm9ybSBmbG9hdCBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDQgXTtcblx0XHQjZW5kaWZcblx0I2VuZGlmXG4jZW5kaWYiLG1vcnBodGFyZ2V0X3ZlcnRleDoiI2lmZGVmIFVTRV9NT1JQSFRBUkdFVFNcblx0dHJhbnNmb3JtZWQgKj0gbW9ycGhUYXJnZXRCYXNlSW5mbHVlbmNlO1xuXHQjaWZkZWYgTU9SUEhUQVJHRVRTX1RFWFRVUkVcblx0XHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBNT1JQSFRBUkdFVFNfQ09VTlQ7IGkgKysgKSB7XG5cdFx0XHRpZiAoIG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgaSBdICE9IDAuMCApIHRyYW5zZm9ybWVkICs9IGdldE1vcnBoKCBnbF9WZXJ0ZXhJRCwgaSwgMCApLnh5eiAqIG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgaSBdO1xuXHRcdH1cblx0I2Vsc2Vcblx0XHR0cmFuc2Zvcm1lZCArPSBtb3JwaFRhcmdldDAgKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDAgXTtcblx0XHR0cmFuc2Zvcm1lZCArPSBtb3JwaFRhcmdldDEgKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDEgXTtcblx0XHR0cmFuc2Zvcm1lZCArPSBtb3JwaFRhcmdldDIgKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDIgXTtcblx0XHR0cmFuc2Zvcm1lZCArPSBtb3JwaFRhcmdldDMgKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDMgXTtcblx0XHQjaWZuZGVmIFVTRV9NT1JQSE5PUk1BTFNcblx0XHRcdHRyYW5zZm9ybWVkICs9IG1vcnBoVGFyZ2V0NCAqIG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgNCBdO1xuXHRcdFx0dHJhbnNmb3JtZWQgKz0gbW9ycGhUYXJnZXQ1ICogbW9ycGhUYXJnZXRJbmZsdWVuY2VzWyA1IF07XG5cdFx0XHR0cmFuc2Zvcm1lZCArPSBtb3JwaFRhcmdldDYgKiBtb3JwaFRhcmdldEluZmx1ZW5jZXNbIDYgXTtcblx0XHRcdHRyYW5zZm9ybWVkICs9IG1vcnBoVGFyZ2V0NyAqIG1vcnBoVGFyZ2V0SW5mbHVlbmNlc1sgNyBdO1xuXHRcdCNlbmRpZlxuXHQjZW5kaWZcbiNlbmRpZiIsbm9ybWFsX2ZyYWdtZW50X2JlZ2luOiJmbG9hdCBmYWNlRGlyZWN0aW9uID0gZ2xfRnJvbnRGYWNpbmcgPyAxLjAgOiAtIDEuMDtcbiNpZmRlZiBGTEFUX1NIQURFRFxuXHR2ZWMzIGZkeCA9IGRGZHgoIHZWaWV3UG9zaXRpb24gKTtcblx0dmVjMyBmZHkgPSBkRmR5KCB2Vmlld1Bvc2l0aW9uICk7XG5cdHZlYzMgbm9ybWFsID0gbm9ybWFsaXplKCBjcm9zcyggZmR4LCBmZHkgKSApO1xuI2Vsc2Vcblx0dmVjMyBub3JtYWwgPSBub3JtYWxpemUoIHZOb3JtYWwgKTtcblx0I2lmZGVmIERPVUJMRV9TSURFRFxuXHRcdG5vcm1hbCAqPSBmYWNlRGlyZWN0aW9uO1xuXHQjZW5kaWZcbiNlbmRpZlxuI2lmIGRlZmluZWQoIFVTRV9OT1JNQUxNQVBfVEFOR0VOVFNQQUNFICkgfHwgZGVmaW5lZCggVVNFX0NMRUFSQ09BVF9OT1JNQUxNQVAgKSB8fCBkZWZpbmVkKCBVU0VfQU5JU09UUk9QWSApXG5cdCNpZmRlZiBVU0VfVEFOR0VOVFxuXHRcdG1hdDMgdGJuID0gbWF0Myggbm9ybWFsaXplKCB2VGFuZ2VudCApLCBub3JtYWxpemUoIHZCaXRhbmdlbnQgKSwgbm9ybWFsICk7XG5cdCNlbHNlXG5cdFx0bWF0MyB0Ym4gPSBnZXRUYW5nZW50RnJhbWUoIC0gdlZpZXdQb3NpdGlvbiwgbm9ybWFsLCB2Tm9ybWFsTWFwVXYgKTtcblx0I2VuZGlmXG5cdCNpZiBkZWZpbmVkKCBET1VCTEVfU0lERUQgKSAmJiAhIGRlZmluZWQoIEZMQVRfU0hBREVEIClcblx0XHR0Ym5bMF0gKj0gZmFjZURpcmVjdGlvbjtcblx0XHR0Ym5bMV0gKj0gZmFjZURpcmVjdGlvbjtcblx0I2VuZGlmXG4jZW5kaWZcbiNpZmRlZiBVU0VfQ0xFQVJDT0FUX05PUk1BTE1BUFxuXHQjaWZkZWYgVVNFX1RBTkdFTlRcblx0XHRtYXQzIHRibjIgPSBtYXQzKCBub3JtYWxpemUoIHZUYW5nZW50ICksIG5vcm1hbGl6ZSggdkJpdGFuZ2VudCApLCBub3JtYWwgKTtcblx0I2Vsc2Vcblx0XHRtYXQzIHRibjIgPSBnZXRUYW5nZW50RnJhbWUoIC0gdlZpZXdQb3NpdGlvbiwgbm9ybWFsLCB2Q2xlYXJjb2F0Tm9ybWFsTWFwVXYgKTtcblx0I2VuZGlmXG5cdCNpZiBkZWZpbmVkKCBET1VCTEVfU0lERUQgKSAmJiAhIGRlZmluZWQoIEZMQVRfU0hBREVEIClcblx0XHR0Ym4yWzBdICo9IGZhY2VEaXJlY3Rpb247XG5cdFx0dGJuMlsxXSAqPSBmYWNlRGlyZWN0aW9uO1xuXHQjZW5kaWZcbiNlbmRpZlxudmVjMyBnZW9tZXRyeU5vcm1hbCA9IG5vcm1hbDsiLG5vcm1hbF9mcmFnbWVudF9tYXBzOiIjaWZkZWYgVVNFX05PUk1BTE1BUF9PQkpFQ1RTUEFDRVxuXHRub3JtYWwgPSB0ZXh0dXJlMkQoIG5vcm1hbE1hcCwgdk5vcm1hbE1hcFV2ICkueHl6ICogMi4wIC0gMS4wO1xuXHQjaWZkZWYgRkxJUF9TSURFRFxuXHRcdG5vcm1hbCA9IC0gbm9ybWFsO1xuXHQjZW5kaWZcblx0I2lmZGVmIERPVUJMRV9TSURFRFxuXHRcdG5vcm1hbCA9IG5vcm1hbCAqIGZhY2VEaXJlY3Rpb247XG5cdCNlbmRpZlxuXHRub3JtYWwgPSBub3JtYWxpemUoIG5vcm1hbE1hdHJpeCAqIG5vcm1hbCApO1xuI2VsaWYgZGVmaW5lZCggVVNFX05PUk1BTE1BUF9UQU5HRU5UU1BBQ0UgKVxuXHR2ZWMzIG1hcE4gPSB0ZXh0dXJlMkQoIG5vcm1hbE1hcCwgdk5vcm1hbE1hcFV2ICkueHl6ICogMi4wIC0gMS4wO1xuXHRtYXBOLnh5ICo9IG5vcm1hbFNjYWxlO1xuXHRub3JtYWwgPSBub3JtYWxpemUoIHRibiAqIG1hcE4gKTtcbiNlbGlmIGRlZmluZWQoIFVTRV9CVU1QTUFQIClcblx0bm9ybWFsID0gcGVydHVyYk5vcm1hbEFyYiggLSB2Vmlld1Bvc2l0aW9uLCBub3JtYWwsIGRIZHh5X2Z3ZCgpLCBmYWNlRGlyZWN0aW9uICk7XG4jZW5kaWYiLG5vcm1hbF9wYXJzX2ZyYWdtZW50OiIjaWZuZGVmIEZMQVRfU0hBREVEXG5cdHZhcnlpbmcgdmVjMyB2Tm9ybWFsO1xuXHQjaWZkZWYgVVNFX1RBTkdFTlRcblx0XHR2YXJ5aW5nIHZlYzMgdlRhbmdlbnQ7XG5cdFx0dmFyeWluZyB2ZWMzIHZCaXRhbmdlbnQ7XG5cdCNlbmRpZlxuI2VuZGlmIixub3JtYWxfcGFyc192ZXJ0ZXg6IiNpZm5kZWYgRkxBVF9TSEFERURcblx0dmFyeWluZyB2ZWMzIHZOb3JtYWw7XG5cdCNpZmRlZiBVU0VfVEFOR0VOVFxuXHRcdHZhcnlpbmcgdmVjMyB2VGFuZ2VudDtcblx0XHR2YXJ5aW5nIHZlYzMgdkJpdGFuZ2VudDtcblx0I2VuZGlmXG4jZW5kaWYiLG5vcm1hbF92ZXJ0ZXg6IiNpZm5kZWYgRkxBVF9TSEFERURcblx0dk5vcm1hbCA9IG5vcm1hbGl6ZSggdHJhbnNmb3JtZWROb3JtYWwgKTtcblx0I2lmZGVmIFVTRV9UQU5HRU5UXG5cdFx0dlRhbmdlbnQgPSBub3JtYWxpemUoIHRyYW5zZm9ybWVkVGFuZ2VudCApO1xuXHRcdHZCaXRhbmdlbnQgPSBub3JtYWxpemUoIGNyb3NzKCB2Tm9ybWFsLCB2VGFuZ2VudCApICogdGFuZ2VudC53ICk7XG5cdCNlbmRpZlxuI2VuZGlmIixub3JtYWxtYXBfcGFyc19mcmFnbWVudDoiI2lmZGVmIFVTRV9OT1JNQUxNQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgbm9ybWFsTWFwO1xuXHR1bmlmb3JtIHZlYzIgbm9ybWFsU2NhbGU7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTk9STUFMTUFQX09CSkVDVFNQQUNFXG5cdHVuaWZvcm0gbWF0MyBub3JtYWxNYXRyaXg7XG4jZW5kaWZcbiNpZiAhIGRlZmluZWQgKCBVU0VfVEFOR0VOVCApICYmICggZGVmaW5lZCAoIFVTRV9OT1JNQUxNQVBfVEFOR0VOVFNQQUNFICkgfHwgZGVmaW5lZCAoIFVTRV9DTEVBUkNPQVRfTk9STUFMTUFQICkgfHwgZGVmaW5lZCggVVNFX0FOSVNPVFJPUFkgKSApXG5cdG1hdDMgZ2V0VGFuZ2VudEZyYW1lKCB2ZWMzIGV5ZV9wb3MsIHZlYzMgc3VyZl9ub3JtLCB2ZWMyIHV2ICkge1xuXHRcdHZlYzMgcTAgPSBkRmR4KCBleWVfcG9zLnh5eiApO1xuXHRcdHZlYzMgcTEgPSBkRmR5KCBleWVfcG9zLnh5eiApO1xuXHRcdHZlYzIgc3QwID0gZEZkeCggdXYuc3QgKTtcblx0XHR2ZWMyIHN0MSA9IGRGZHkoIHV2LnN0ICk7XG5cdFx0dmVjMyBOID0gc3VyZl9ub3JtO1xuXHRcdHZlYzMgcTFwZXJwID0gY3Jvc3MoIHExLCBOICk7XG5cdFx0dmVjMyBxMHBlcnAgPSBjcm9zcyggTiwgcTAgKTtcblx0XHR2ZWMzIFQgPSBxMXBlcnAgKiBzdDAueCArIHEwcGVycCAqIHN0MS54O1xuXHRcdHZlYzMgQiA9IHExcGVycCAqIHN0MC55ICsgcTBwZXJwICogc3QxLnk7XG5cdFx0ZmxvYXQgZGV0ID0gbWF4KCBkb3QoIFQsIFQgKSwgZG90KCBCLCBCICkgKTtcblx0XHRmbG9hdCBzY2FsZSA9ICggZGV0ID09IDAuMCApID8gMC4wIDogaW52ZXJzZXNxcnQoIGRldCApO1xuXHRcdHJldHVybiBtYXQzKCBUICogc2NhbGUsIEIgKiBzY2FsZSwgTiApO1xuXHR9XG4jZW5kaWYiLGNsZWFyY29hdF9ub3JtYWxfZnJhZ21lbnRfYmVnaW46IiNpZmRlZiBVU0VfQ0xFQVJDT0FUXG5cdHZlYzMgY2xlYXJjb2F0Tm9ybWFsID0gZ2VvbWV0cnlOb3JtYWw7XG4jZW5kaWYiLGNsZWFyY29hdF9ub3JtYWxfZnJhZ21lbnRfbWFwczoiI2lmZGVmIFVTRV9DTEVBUkNPQVRfTk9STUFMTUFQXG5cdHZlYzMgY2xlYXJjb2F0TWFwTiA9IHRleHR1cmUyRCggY2xlYXJjb2F0Tm9ybWFsTWFwLCB2Q2xlYXJjb2F0Tm9ybWFsTWFwVXYgKS54eXogKiAyLjAgLSAxLjA7XG5cdGNsZWFyY29hdE1hcE4ueHkgKj0gY2xlYXJjb2F0Tm9ybWFsU2NhbGU7XG5cdGNsZWFyY29hdE5vcm1hbCA9IG5vcm1hbGl6ZSggdGJuMiAqIGNsZWFyY29hdE1hcE4gKTtcbiNlbmRpZiIsY2xlYXJjb2F0X3BhcnNfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfQ0xFQVJDT0FUTUFQXG5cdHVuaWZvcm0gc2FtcGxlcjJEIGNsZWFyY29hdE1hcDtcbiNlbmRpZlxuI2lmZGVmIFVTRV9DTEVBUkNPQVRfTk9STUFMTUFQXG5cdHVuaWZvcm0gc2FtcGxlcjJEIGNsZWFyY29hdE5vcm1hbE1hcDtcblx0dW5pZm9ybSB2ZWMyIGNsZWFyY29hdE5vcm1hbFNjYWxlO1xuI2VuZGlmXG4jaWZkZWYgVVNFX0NMRUFSQ09BVF9ST1VHSE5FU1NNQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgY2xlYXJjb2F0Um91Z2huZXNzTWFwO1xuI2VuZGlmIixpcmlkZXNjZW5jZV9wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX0lSSURFU0NFTkNFTUFQXG5cdHVuaWZvcm0gc2FtcGxlcjJEIGlyaWRlc2NlbmNlTWFwO1xuI2VuZGlmXG4jaWZkZWYgVVNFX0lSSURFU0NFTkNFX1RISUNLTkVTU01BUFxuXHR1bmlmb3JtIHNhbXBsZXIyRCBpcmlkZXNjZW5jZVRoaWNrbmVzc01hcDtcbiNlbmRpZiIsb3V0cHV0X2ZyYWdtZW50OiIjaWZkZWYgT1BBUVVFXG5kaWZmdXNlQ29sb3IuYSA9IDEuMDtcbiNlbmRpZlxuI2lmZGVmIFVTRV9UUkFOU01JU1NJT05cbmRpZmZ1c2VDb2xvci5hICo9IG1hdGVyaWFsLnRyYW5zbWlzc2lvbkFscGhhO1xuI2VuZGlmXG5nbF9GcmFnQ29sb3IgPSB2ZWM0KCBvdXRnb2luZ0xpZ2h0LCBkaWZmdXNlQ29sb3IuYSApOyIscGFja2luZzoidmVjMyBwYWNrTm9ybWFsVG9SR0IoIGNvbnN0IGluIHZlYzMgbm9ybWFsICkge1xuXHRyZXR1cm4gbm9ybWFsaXplKCBub3JtYWwgKSAqIDAuNSArIDAuNTtcbn1cbnZlYzMgdW5wYWNrUkdCVG9Ob3JtYWwoIGNvbnN0IGluIHZlYzMgcmdiICkge1xuXHRyZXR1cm4gMi4wICogcmdiLnh5eiAtIDEuMDtcbn1cbmNvbnN0IGZsb2F0IFBhY2tVcHNjYWxlID0gMjU2LiAvIDI1NS47Y29uc3QgZmxvYXQgVW5wYWNrRG93bnNjYWxlID0gMjU1LiAvIDI1Ni47XG5jb25zdCB2ZWMzIFBhY2tGYWN0b3JzID0gdmVjMyggMjU2LiAqIDI1Ni4gKiAyNTYuLCAyNTYuICogMjU2LiwgMjU2LiApO1xuY29uc3QgdmVjNCBVbnBhY2tGYWN0b3JzID0gVW5wYWNrRG93bnNjYWxlIC8gdmVjNCggUGFja0ZhY3RvcnMsIDEuICk7XG5jb25zdCBmbG9hdCBTaGlmdFJpZ2h0OCA9IDEuIC8gMjU2LjtcbnZlYzQgcGFja0RlcHRoVG9SR0JBKCBjb25zdCBpbiBmbG9hdCB2ICkge1xuXHR2ZWM0IHIgPSB2ZWM0KCBmcmFjdCggdiAqIFBhY2tGYWN0b3JzICksIHYgKTtcblx0ci55encgLT0gci54eXogKiBTaGlmdFJpZ2h0ODtcdHJldHVybiByICogUGFja1Vwc2NhbGU7XG59XG5mbG9hdCB1bnBhY2tSR0JBVG9EZXB0aCggY29uc3QgaW4gdmVjNCB2ICkge1xuXHRyZXR1cm4gZG90KCB2LCBVbnBhY2tGYWN0b3JzICk7XG59XG52ZWMyIHBhY2tEZXB0aFRvUkcoIGluIGhpZ2hwIGZsb2F0IHYgKSB7XG5cdHJldHVybiBwYWNrRGVwdGhUb1JHQkEoIHYgKS55eDtcbn1cbmZsb2F0IHVucGFja1JHVG9EZXB0aCggY29uc3QgaW4gaGlnaHAgdmVjMiB2ICkge1xuXHRyZXR1cm4gdW5wYWNrUkdCQVRvRGVwdGgoIHZlYzQoIHYueHksIDAuMCwgMC4wICkgKTtcbn1cbnZlYzQgcGFjazJIYWxmVG9SR0JBKCB2ZWMyIHYgKSB7XG5cdHZlYzQgciA9IHZlYzQoIHYueCwgZnJhY3QoIHYueCAqIDI1NS4wICksIHYueSwgZnJhY3QoIHYueSAqIDI1NS4wICkgKTtcblx0cmV0dXJuIHZlYzQoIHIueCAtIHIueSAvIDI1NS4wLCByLnksIHIueiAtIHIudyAvIDI1NS4wLCByLncgKTtcbn1cbnZlYzIgdW5wYWNrUkdCQVRvMkhhbGYoIHZlYzQgdiApIHtcblx0cmV0dXJuIHZlYzIoIHYueCArICggdi55IC8gMjU1LjAgKSwgdi56ICsgKCB2LncgLyAyNTUuMCApICk7XG59XG5mbG9hdCB2aWV3WlRvT3J0aG9ncmFwaGljRGVwdGgoIGNvbnN0IGluIGZsb2F0IHZpZXdaLCBjb25zdCBpbiBmbG9hdCBuZWFyLCBjb25zdCBpbiBmbG9hdCBmYXIgKSB7XG5cdHJldHVybiAoIHZpZXdaICsgbmVhciApIC8gKCBuZWFyIC0gZmFyICk7XG59XG5mbG9hdCBvcnRob2dyYXBoaWNEZXB0aFRvVmlld1ooIGNvbnN0IGluIGZsb2F0IGRlcHRoLCBjb25zdCBpbiBmbG9hdCBuZWFyLCBjb25zdCBpbiBmbG9hdCBmYXIgKSB7XG5cdHJldHVybiBkZXB0aCAqICggbmVhciAtIGZhciApIC0gbmVhcjtcbn1cbmZsb2F0IHZpZXdaVG9QZXJzcGVjdGl2ZURlcHRoKCBjb25zdCBpbiBmbG9hdCB2aWV3WiwgY29uc3QgaW4gZmxvYXQgbmVhciwgY29uc3QgaW4gZmxvYXQgZmFyICkge1xuXHRyZXR1cm4gKCAoIG5lYXIgKyB2aWV3WiApICogZmFyICkgLyAoICggZmFyIC0gbmVhciApICogdmlld1ogKTtcbn1cbmZsb2F0IHBlcnNwZWN0aXZlRGVwdGhUb1ZpZXdaKCBjb25zdCBpbiBmbG9hdCBkZXB0aCwgY29uc3QgaW4gZmxvYXQgbmVhciwgY29uc3QgaW4gZmxvYXQgZmFyICkge1xuXHRyZXR1cm4gKCBuZWFyICogZmFyICkgLyAoICggZmFyIC0gbmVhciApICogZGVwdGggLSBmYXIgKTtcbn0iLHByZW11bHRpcGxpZWRfYWxwaGFfZnJhZ21lbnQ6IiNpZmRlZiBQUkVNVUxUSVBMSUVEX0FMUEhBXG5cdGdsX0ZyYWdDb2xvci5yZ2IgKj0gZ2xfRnJhZ0NvbG9yLmE7XG4jZW5kaWYiLHByb2plY3RfdmVydGV4OiJ2ZWM0IG12UG9zaXRpb24gPSB2ZWM0KCB0cmFuc2Zvcm1lZCwgMS4wICk7XG4jaWZkZWYgVVNFX0lOU1RBTkNJTkdcblx0bXZQb3NpdGlvbiA9IGluc3RhbmNlTWF0cml4ICogbXZQb3NpdGlvbjtcbiNlbmRpZlxubXZQb3NpdGlvbiA9IG1vZGVsVmlld01hdHJpeCAqIG12UG9zaXRpb247XG5nbF9Qb3NpdGlvbiA9IHByb2plY3Rpb25NYXRyaXggKiBtdlBvc2l0aW9uOyIsZGl0aGVyaW5nX2ZyYWdtZW50OiIjaWZkZWYgRElUSEVSSU5HXG5cdGdsX0ZyYWdDb2xvci5yZ2IgPSBkaXRoZXJpbmcoIGdsX0ZyYWdDb2xvci5yZ2IgKTtcbiNlbmRpZiIsZGl0aGVyaW5nX3BhcnNfZnJhZ21lbnQ6IiNpZmRlZiBESVRIRVJJTkdcblx0dmVjMyBkaXRoZXJpbmcoIHZlYzMgY29sb3IgKSB7XG5cdFx0ZmxvYXQgZ3JpZF9wb3NpdGlvbiA9IHJhbmQoIGdsX0ZyYWdDb29yZC54eSApO1xuXHRcdHZlYzMgZGl0aGVyX3NoaWZ0X1JHQiA9IHZlYzMoIDAuMjUgLyAyNTUuMCwgLTAuMjUgLyAyNTUuMCwgMC4yNSAvIDI1NS4wICk7XG5cdFx0ZGl0aGVyX3NoaWZ0X1JHQiA9IG1peCggMi4wICogZGl0aGVyX3NoaWZ0X1JHQiwgLTIuMCAqIGRpdGhlcl9zaGlmdF9SR0IsIGdyaWRfcG9zaXRpb24gKTtcblx0XHRyZXR1cm4gY29sb3IgKyBkaXRoZXJfc2hpZnRfUkdCO1xuXHR9XG4jZW5kaWYiLHJvdWdobmVzc21hcF9mcmFnbWVudDoiZmxvYXQgcm91Z2huZXNzRmFjdG9yID0gcm91Z2huZXNzO1xuI2lmZGVmIFVTRV9ST1VHSE5FU1NNQVBcblx0dmVjNCB0ZXhlbFJvdWdobmVzcyA9IHRleHR1cmUyRCggcm91Z2huZXNzTWFwLCB2Um91Z2huZXNzTWFwVXYgKTtcblx0cm91Z2huZXNzRmFjdG9yICo9IHRleGVsUm91Z2huZXNzLmc7XG4jZW5kaWYiLHJvdWdobmVzc21hcF9wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX1JPVUdITkVTU01BUFxuXHR1bmlmb3JtIHNhbXBsZXIyRCByb3VnaG5lc3NNYXA7XG4jZW5kaWYiLHNoYWRvd21hcF9wYXJzX2ZyYWdtZW50OiIjaWYgTlVNX1NQT1RfTElHSFRfQ09PUkRTID4gMFxuXHR2YXJ5aW5nIHZlYzQgdlNwb3RMaWdodENvb3JkWyBOVU1fU1BPVF9MSUdIVF9DT09SRFMgXTtcbiNlbmRpZlxuI2lmIE5VTV9TUE9UX0xJR0hUX01BUFMgPiAwXG5cdHVuaWZvcm0gc2FtcGxlcjJEIHNwb3RMaWdodE1hcFsgTlVNX1NQT1RfTElHSFRfTUFQUyBdO1xuI2VuZGlmXG4jaWZkZWYgVVNFX1NIQURPV01BUFxuXHQjaWYgTlVNX0RJUl9MSUdIVF9TSEFET1dTID4gMFxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIGRpcmVjdGlvbmFsU2hhZG93TWFwWyBOVU1fRElSX0xJR0hUX1NIQURPV1MgXTtcblx0XHR2YXJ5aW5nIHZlYzQgdkRpcmVjdGlvbmFsU2hhZG93Q29vcmRbIE5VTV9ESVJfTElHSFRfU0hBRE9XUyBdO1xuXHRcdHN0cnVjdCBEaXJlY3Rpb25hbExpZ2h0U2hhZG93IHtcblx0XHRcdGZsb2F0IHNoYWRvd0JpYXM7XG5cdFx0XHRmbG9hdCBzaGFkb3dOb3JtYWxCaWFzO1xuXHRcdFx0ZmxvYXQgc2hhZG93UmFkaXVzO1xuXHRcdFx0dmVjMiBzaGFkb3dNYXBTaXplO1xuXHRcdH07XG5cdFx0dW5pZm9ybSBEaXJlY3Rpb25hbExpZ2h0U2hhZG93IGRpcmVjdGlvbmFsTGlnaHRTaGFkb3dzWyBOVU1fRElSX0xJR0hUX1NIQURPV1MgXTtcblx0I2VuZGlmXG5cdCNpZiBOVU1fU1BPVF9MSUdIVF9TSEFET1dTID4gMFxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIHNwb3RTaGFkb3dNYXBbIE5VTV9TUE9UX0xJR0hUX1NIQURPV1MgXTtcblx0XHRzdHJ1Y3QgU3BvdExpZ2h0U2hhZG93IHtcblx0XHRcdGZsb2F0IHNoYWRvd0JpYXM7XG5cdFx0XHRmbG9hdCBzaGFkb3dOb3JtYWxCaWFzO1xuXHRcdFx0ZmxvYXQgc2hhZG93UmFkaXVzO1xuXHRcdFx0dmVjMiBzaGFkb3dNYXBTaXplO1xuXHRcdH07XG5cdFx0dW5pZm9ybSBTcG90TGlnaHRTaGFkb3cgc3BvdExpZ2h0U2hhZG93c1sgTlVNX1NQT1RfTElHSFRfU0hBRE9XUyBdO1xuXHQjZW5kaWZcblx0I2lmIE5VTV9QT0lOVF9MSUdIVF9TSEFET1dTID4gMFxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIHBvaW50U2hhZG93TWFwWyBOVU1fUE9JTlRfTElHSFRfU0hBRE9XUyBdO1xuXHRcdHZhcnlpbmcgdmVjNCB2UG9pbnRTaGFkb3dDb29yZFsgTlVNX1BPSU5UX0xJR0hUX1NIQURPV1MgXTtcblx0XHRzdHJ1Y3QgUG9pbnRMaWdodFNoYWRvdyB7XG5cdFx0XHRmbG9hdCBzaGFkb3dCaWFzO1xuXHRcdFx0ZmxvYXQgc2hhZG93Tm9ybWFsQmlhcztcblx0XHRcdGZsb2F0IHNoYWRvd1JhZGl1cztcblx0XHRcdHZlYzIgc2hhZG93TWFwU2l6ZTtcblx0XHRcdGZsb2F0IHNoYWRvd0NhbWVyYU5lYXI7XG5cdFx0XHRmbG9hdCBzaGFkb3dDYW1lcmFGYXI7XG5cdFx0fTtcblx0XHR1bmlmb3JtIFBvaW50TGlnaHRTaGFkb3cgcG9pbnRMaWdodFNoYWRvd3NbIE5VTV9QT0lOVF9MSUdIVF9TSEFET1dTIF07XG5cdCNlbmRpZlxuXHRmbG9hdCB0ZXh0dXJlMkRDb21wYXJlKCBzYW1wbGVyMkQgZGVwdGhzLCB2ZWMyIHV2LCBmbG9hdCBjb21wYXJlICkge1xuXHRcdHJldHVybiBzdGVwKCBjb21wYXJlLCB1bnBhY2tSR0JBVG9EZXB0aCggdGV4dHVyZTJEKCBkZXB0aHMsIHV2ICkgKSApO1xuXHR9XG5cdHZlYzIgdGV4dHVyZTJERGlzdHJpYnV0aW9uKCBzYW1wbGVyMkQgc2hhZG93LCB2ZWMyIHV2ICkge1xuXHRcdHJldHVybiB1bnBhY2tSR0JBVG8ySGFsZiggdGV4dHVyZTJEKCBzaGFkb3csIHV2ICkgKTtcblx0fVxuXHRmbG9hdCBWU01TaGFkb3cgKHNhbXBsZXIyRCBzaGFkb3csIHZlYzIgdXYsIGZsb2F0IGNvbXBhcmUgKXtcblx0XHRmbG9hdCBvY2NsdXNpb24gPSAxLjA7XG5cdFx0dmVjMiBkaXN0cmlidXRpb24gPSB0ZXh0dXJlMkREaXN0cmlidXRpb24oIHNoYWRvdywgdXYgKTtcblx0XHRmbG9hdCBoYXJkX3NoYWRvdyA9IHN0ZXAoIGNvbXBhcmUgLCBkaXN0cmlidXRpb24ueCApO1xuXHRcdGlmIChoYXJkX3NoYWRvdyAhPSAxLjAgKSB7XG5cdFx0XHRmbG9hdCBkaXN0YW5jZSA9IGNvbXBhcmUgLSBkaXN0cmlidXRpb24ueCA7XG5cdFx0XHRmbG9hdCB2YXJpYW5jZSA9IG1heCggMC4wMDAwMCwgZGlzdHJpYnV0aW9uLnkgKiBkaXN0cmlidXRpb24ueSApO1xuXHRcdFx0ZmxvYXQgc29mdG5lc3NfcHJvYmFiaWxpdHkgPSB2YXJpYW5jZSAvICh2YXJpYW5jZSArIGRpc3RhbmNlICogZGlzdGFuY2UgKTtcdFx0XHRzb2Z0bmVzc19wcm9iYWJpbGl0eSA9IGNsYW1wKCAoIHNvZnRuZXNzX3Byb2JhYmlsaXR5IC0gMC4zICkgLyAoIDAuOTUgLSAwLjMgKSwgMC4wLCAxLjAgKTtcdFx0XHRvY2NsdXNpb24gPSBjbGFtcCggbWF4KCBoYXJkX3NoYWRvdywgc29mdG5lc3NfcHJvYmFiaWxpdHkgKSwgMC4wLCAxLjAgKTtcblx0XHR9XG5cdFx0cmV0dXJuIG9jY2x1c2lvbjtcblx0fVxuXHRmbG9hdCBnZXRTaGFkb3coIHNhbXBsZXIyRCBzaGFkb3dNYXAsIHZlYzIgc2hhZG93TWFwU2l6ZSwgZmxvYXQgc2hhZG93QmlhcywgZmxvYXQgc2hhZG93UmFkaXVzLCB2ZWM0IHNoYWRvd0Nvb3JkICkge1xuXHRcdGZsb2F0IHNoYWRvdyA9IDEuMDtcblx0XHRzaGFkb3dDb29yZC54eXogLz0gc2hhZG93Q29vcmQudztcblx0XHRzaGFkb3dDb29yZC56ICs9IHNoYWRvd0JpYXM7XG5cdFx0Ym9vbCBpbkZydXN0dW0gPSBzaGFkb3dDb29yZC54ID49IDAuMCAmJiBzaGFkb3dDb29yZC54IDw9IDEuMCAmJiBzaGFkb3dDb29yZC55ID49IDAuMCAmJiBzaGFkb3dDb29yZC55IDw9IDEuMDtcblx0XHRib29sIGZydXN0dW1UZXN0ID0gaW5GcnVzdHVtICYmIHNoYWRvd0Nvb3JkLnogPD0gMS4wO1xuXHRcdGlmICggZnJ1c3R1bVRlc3QgKSB7XG5cdFx0I2lmIGRlZmluZWQoIFNIQURPV01BUF9UWVBFX1BDRiApXG5cdFx0XHR2ZWMyIHRleGVsU2l6ZSA9IHZlYzIoIDEuMCApIC8gc2hhZG93TWFwU2l6ZTtcblx0XHRcdGZsb2F0IGR4MCA9IC0gdGV4ZWxTaXplLnggKiBzaGFkb3dSYWRpdXM7XG5cdFx0XHRmbG9hdCBkeTAgPSAtIHRleGVsU2l6ZS55ICogc2hhZG93UmFkaXVzO1xuXHRcdFx0ZmxvYXQgZHgxID0gKyB0ZXhlbFNpemUueCAqIHNoYWRvd1JhZGl1cztcblx0XHRcdGZsb2F0IGR5MSA9ICsgdGV4ZWxTaXplLnkgKiBzaGFkb3dSYWRpdXM7XG5cdFx0XHRmbG9hdCBkeDIgPSBkeDAgLyAyLjA7XG5cdFx0XHRmbG9hdCBkeTIgPSBkeTAgLyAyLjA7XG5cdFx0XHRmbG9hdCBkeDMgPSBkeDEgLyAyLjA7XG5cdFx0XHRmbG9hdCBkeTMgPSBkeTEgLyAyLjA7XG5cdFx0XHRzaGFkb3cgPSAoXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgc2hhZG93Q29vcmQueHkgKyB2ZWMyKCBkeDAsIGR5MCApLCBzaGFkb3dDb29yZC56ICkgK1xuXHRcdFx0XHR0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHNoYWRvd0Nvb3JkLnh5ICsgdmVjMiggMC4wLCBkeTAgKSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBzaGFkb3dDb29yZC54eSArIHZlYzIoIGR4MSwgZHkwICksIHNoYWRvd0Nvb3JkLnogKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgc2hhZG93Q29vcmQueHkgKyB2ZWMyKCBkeDIsIGR5MiApLCBzaGFkb3dDb29yZC56ICkgK1xuXHRcdFx0XHR0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHNoYWRvd0Nvb3JkLnh5ICsgdmVjMiggMC4wLCBkeTIgKSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBzaGFkb3dDb29yZC54eSArIHZlYzIoIGR4MywgZHkyICksIHNoYWRvd0Nvb3JkLnogKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgc2hhZG93Q29vcmQueHkgKyB2ZWMyKCBkeDAsIDAuMCApLCBzaGFkb3dDb29yZC56ICkgK1xuXHRcdFx0XHR0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHNoYWRvd0Nvb3JkLnh5ICsgdmVjMiggZHgyLCAwLjAgKSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBzaGFkb3dDb29yZC54eSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBzaGFkb3dDb29yZC54eSArIHZlYzIoIGR4MywgMC4wICksIHNoYWRvd0Nvb3JkLnogKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgc2hhZG93Q29vcmQueHkgKyB2ZWMyKCBkeDEsIDAuMCApLCBzaGFkb3dDb29yZC56ICkgK1xuXHRcdFx0XHR0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHNoYWRvd0Nvb3JkLnh5ICsgdmVjMiggZHgyLCBkeTMgKSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBzaGFkb3dDb29yZC54eSArIHZlYzIoIDAuMCwgZHkzICksIHNoYWRvd0Nvb3JkLnogKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgc2hhZG93Q29vcmQueHkgKyB2ZWMyKCBkeDMsIGR5MyApLCBzaGFkb3dDb29yZC56ICkgK1xuXHRcdFx0XHR0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHNoYWRvd0Nvb3JkLnh5ICsgdmVjMiggZHgwLCBkeTEgKSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBzaGFkb3dDb29yZC54eSArIHZlYzIoIDAuMCwgZHkxICksIHNoYWRvd0Nvb3JkLnogKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgc2hhZG93Q29vcmQueHkgKyB2ZWMyKCBkeDEsIGR5MSApLCBzaGFkb3dDb29yZC56IClcblx0XHRcdCkgKiAoIDEuMCAvIDE3LjAgKTtcblx0XHQjZWxpZiBkZWZpbmVkKCBTSEFET1dNQVBfVFlQRV9QQ0ZfU09GVCApXG5cdFx0XHR2ZWMyIHRleGVsU2l6ZSA9IHZlYzIoIDEuMCApIC8gc2hhZG93TWFwU2l6ZTtcblx0XHRcdGZsb2F0IGR4ID0gdGV4ZWxTaXplLng7XG5cdFx0XHRmbG9hdCBkeSA9IHRleGVsU2l6ZS55O1xuXHRcdFx0dmVjMiB1diA9IHNoYWRvd0Nvb3JkLnh5O1xuXHRcdFx0dmVjMiBmID0gZnJhY3QoIHV2ICogc2hhZG93TWFwU2l6ZSArIDAuNSApO1xuXHRcdFx0dXYgLT0gZiAqIHRleGVsU2l6ZTtcblx0XHRcdHNoYWRvdyA9IChcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHZlYzIoIGR4LCAwLjAgKSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHZlYzIoIDAuMCwgZHkgKSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHRleGVsU2l6ZSwgc2hhZG93Q29vcmQueiApICtcblx0XHRcdFx0bWl4KCB0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHV2ICsgdmVjMiggLWR4LCAwLjAgKSwgc2hhZG93Q29vcmQueiApLFxuXHRcdFx0XHRcdCB0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHV2ICsgdmVjMiggMi4wICogZHgsIDAuMCApLCBzaGFkb3dDb29yZC56ICksXG5cdFx0XHRcdFx0IGYueCApICtcblx0XHRcdFx0bWl4KCB0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHV2ICsgdmVjMiggLWR4LCBkeSApLCBzaGFkb3dDb29yZC56ICksXG5cdFx0XHRcdFx0IHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgdXYgKyB2ZWMyKCAyLjAgKiBkeCwgZHkgKSwgc2hhZG93Q29vcmQueiApLFxuXHRcdFx0XHRcdCBmLnggKSArXG5cdFx0XHRcdG1peCggdGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHZlYzIoIDAuMCwgLWR5ICksIHNoYWRvd0Nvb3JkLnogKSxcblx0XHRcdFx0XHQgdGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHZlYzIoIDAuMCwgMi4wICogZHkgKSwgc2hhZG93Q29vcmQueiApLFxuXHRcdFx0XHRcdCBmLnkgKSArXG5cdFx0XHRcdG1peCggdGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHZlYzIoIGR4LCAtZHkgKSwgc2hhZG93Q29vcmQueiApLFxuXHRcdFx0XHRcdCB0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHV2ICsgdmVjMiggZHgsIDIuMCAqIGR5ICksIHNoYWRvd0Nvb3JkLnogKSxcblx0XHRcdFx0XHQgZi55ICkgK1xuXHRcdFx0XHRtaXgoIG1peCggdGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHZlYzIoIC1keCwgLWR5ICksIHNoYWRvd0Nvb3JkLnogKSxcblx0XHRcdFx0XHRcdCAgdGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCB1diArIHZlYzIoIDIuMCAqIGR4LCAtZHkgKSwgc2hhZG93Q29vcmQueiApLFxuXHRcdFx0XHRcdFx0ICBmLnggKSxcblx0XHRcdFx0XHQgbWl4KCB0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIHV2ICsgdmVjMiggLWR4LCAyLjAgKiBkeSApLCBzaGFkb3dDb29yZC56ICksXG5cdFx0XHRcdFx0XHQgIHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgdXYgKyB2ZWMyKCAyLjAgKiBkeCwgMi4wICogZHkgKSwgc2hhZG93Q29vcmQueiApLFxuXHRcdFx0XHRcdFx0ICBmLnggKSxcblx0XHRcdFx0XHQgZi55IClcblx0XHRcdCkgKiAoIDEuMCAvIDkuMCApO1xuXHRcdCNlbGlmIGRlZmluZWQoIFNIQURPV01BUF9UWVBFX1ZTTSApXG5cdFx0XHRzaGFkb3cgPSBWU01TaGFkb3coIHNoYWRvd01hcCwgc2hhZG93Q29vcmQueHksIHNoYWRvd0Nvb3JkLnogKTtcblx0XHQjZWxzZVxuXHRcdFx0c2hhZG93ID0gdGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBzaGFkb3dDb29yZC54eSwgc2hhZG93Q29vcmQueiApO1xuXHRcdCNlbmRpZlxuXHRcdH1cblx0XHRyZXR1cm4gc2hhZG93O1xuXHR9XG5cdHZlYzIgY3ViZVRvVVYoIHZlYzMgdiwgZmxvYXQgdGV4ZWxTaXplWSApIHtcblx0XHR2ZWMzIGFic1YgPSBhYnMoIHYgKTtcblx0XHRmbG9hdCBzY2FsZVRvQ3ViZSA9IDEuMCAvIG1heCggYWJzVi54LCBtYXgoIGFic1YueSwgYWJzVi56ICkgKTtcblx0XHRhYnNWICo9IHNjYWxlVG9DdWJlO1xuXHRcdHYgKj0gc2NhbGVUb0N1YmUgKiAoIDEuMCAtIDIuMCAqIHRleGVsU2l6ZVkgKTtcblx0XHR2ZWMyIHBsYW5hciA9IHYueHk7XG5cdFx0ZmxvYXQgYWxtb3N0QVRleGVsID0gMS41ICogdGV4ZWxTaXplWTtcblx0XHRmbG9hdCBhbG1vc3RPbmUgPSAxLjAgLSBhbG1vc3RBVGV4ZWw7XG5cdFx0aWYgKCBhYnNWLnogPj0gYWxtb3N0T25lICkge1xuXHRcdFx0aWYgKCB2LnogPiAwLjAgKVxuXHRcdFx0XHRwbGFuYXIueCA9IDQuMCAtIHYueDtcblx0XHR9IGVsc2UgaWYgKCBhYnNWLnggPj0gYWxtb3N0T25lICkge1xuXHRcdFx0ZmxvYXQgc2lnblggPSBzaWduKCB2LnggKTtcblx0XHRcdHBsYW5hci54ID0gdi56ICogc2lnblggKyAyLjAgKiBzaWduWDtcblx0XHR9IGVsc2UgaWYgKCBhYnNWLnkgPj0gYWxtb3N0T25lICkge1xuXHRcdFx0ZmxvYXQgc2lnblkgPSBzaWduKCB2LnkgKTtcblx0XHRcdHBsYW5hci54ID0gdi54ICsgMi4wICogc2lnblkgKyAyLjA7XG5cdFx0XHRwbGFuYXIueSA9IHYueiAqIHNpZ25ZIC0gMi4wO1xuXHRcdH1cblx0XHRyZXR1cm4gdmVjMiggMC4xMjUsIDAuMjUgKSAqIHBsYW5hciArIHZlYzIoIDAuMzc1LCAwLjc1ICk7XG5cdH1cblx0ZmxvYXQgZ2V0UG9pbnRTaGFkb3coIHNhbXBsZXIyRCBzaGFkb3dNYXAsIHZlYzIgc2hhZG93TWFwU2l6ZSwgZmxvYXQgc2hhZG93QmlhcywgZmxvYXQgc2hhZG93UmFkaXVzLCB2ZWM0IHNoYWRvd0Nvb3JkLCBmbG9hdCBzaGFkb3dDYW1lcmFOZWFyLCBmbG9hdCBzaGFkb3dDYW1lcmFGYXIgKSB7XG5cdFx0dmVjMiB0ZXhlbFNpemUgPSB2ZWMyKCAxLjAgKSAvICggc2hhZG93TWFwU2l6ZSAqIHZlYzIoIDQuMCwgMi4wICkgKTtcblx0XHR2ZWMzIGxpZ2h0VG9Qb3NpdGlvbiA9IHNoYWRvd0Nvb3JkLnh5ejtcblx0XHRmbG9hdCBkcCA9ICggbGVuZ3RoKCBsaWdodFRvUG9zaXRpb24gKSAtIHNoYWRvd0NhbWVyYU5lYXIgKSAvICggc2hhZG93Q2FtZXJhRmFyIC0gc2hhZG93Q2FtZXJhTmVhciApO1x0XHRkcCArPSBzaGFkb3dCaWFzO1xuXHRcdHZlYzMgYmQzRCA9IG5vcm1hbGl6ZSggbGlnaHRUb1Bvc2l0aW9uICk7XG5cdFx0I2lmIGRlZmluZWQoIFNIQURPV01BUF9UWVBFX1BDRiApIHx8IGRlZmluZWQoIFNIQURPV01BUF9UWVBFX1BDRl9TT0ZUICkgfHwgZGVmaW5lZCggU0hBRE9XTUFQX1RZUEVfVlNNIClcblx0XHRcdHZlYzIgb2Zmc2V0ID0gdmVjMiggLSAxLCAxICkgKiBzaGFkb3dSYWRpdXMgKiB0ZXhlbFNpemUueTtcblx0XHRcdHJldHVybiAoXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgY3ViZVRvVVYoIGJkM0QgKyBvZmZzZXQueHl5LCB0ZXhlbFNpemUueSApLCBkcCApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBjdWJlVG9VViggYmQzRCArIG9mZnNldC55eXksIHRleGVsU2l6ZS55ICksIGRwICkgK1xuXHRcdFx0XHR0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIGN1YmVUb1VWKCBiZDNEICsgb2Zmc2V0Lnh5eCwgdGV4ZWxTaXplLnkgKSwgZHAgKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgY3ViZVRvVVYoIGJkM0QgKyBvZmZzZXQueXl4LCB0ZXhlbFNpemUueSApLCBkcCApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBjdWJlVG9VViggYmQzRCwgdGV4ZWxTaXplLnkgKSwgZHAgKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgY3ViZVRvVVYoIGJkM0QgKyBvZmZzZXQueHh5LCB0ZXhlbFNpemUueSApLCBkcCApICtcblx0XHRcdFx0dGV4dHVyZTJEQ29tcGFyZSggc2hhZG93TWFwLCBjdWJlVG9VViggYmQzRCArIG9mZnNldC55eHksIHRleGVsU2l6ZS55ICksIGRwICkgK1xuXHRcdFx0XHR0ZXh0dXJlMkRDb21wYXJlKCBzaGFkb3dNYXAsIGN1YmVUb1VWKCBiZDNEICsgb2Zmc2V0Lnh4eCwgdGV4ZWxTaXplLnkgKSwgZHAgKSArXG5cdFx0XHRcdHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgY3ViZVRvVVYoIGJkM0QgKyBvZmZzZXQueXh4LCB0ZXhlbFNpemUueSApLCBkcCApXG5cdFx0XHQpICogKCAxLjAgLyA5LjAgKTtcblx0XHQjZWxzZVxuXHRcdFx0cmV0dXJuIHRleHR1cmUyRENvbXBhcmUoIHNoYWRvd01hcCwgY3ViZVRvVVYoIGJkM0QsIHRleGVsU2l6ZS55ICksIGRwICk7XG5cdFx0I2VuZGlmXG5cdH1cbiNlbmRpZiIsc2hhZG93bWFwX3BhcnNfdmVydGV4OiIjaWYgTlVNX1NQT1RfTElHSFRfQ09PUkRTID4gMFxuXHR1bmlmb3JtIG1hdDQgc3BvdExpZ2h0TWF0cml4WyBOVU1fU1BPVF9MSUdIVF9DT09SRFMgXTtcblx0dmFyeWluZyB2ZWM0IHZTcG90TGlnaHRDb29yZFsgTlVNX1NQT1RfTElHSFRfQ09PUkRTIF07XG4jZW5kaWZcbiNpZmRlZiBVU0VfU0hBRE9XTUFQXG5cdCNpZiBOVU1fRElSX0xJR0hUX1NIQURPV1MgPiAwXG5cdFx0dW5pZm9ybSBtYXQ0IGRpcmVjdGlvbmFsU2hhZG93TWF0cml4WyBOVU1fRElSX0xJR0hUX1NIQURPV1MgXTtcblx0XHR2YXJ5aW5nIHZlYzQgdkRpcmVjdGlvbmFsU2hhZG93Q29vcmRbIE5VTV9ESVJfTElHSFRfU0hBRE9XUyBdO1xuXHRcdHN0cnVjdCBEaXJlY3Rpb25hbExpZ2h0U2hhZG93IHtcblx0XHRcdGZsb2F0IHNoYWRvd0JpYXM7XG5cdFx0XHRmbG9hdCBzaGFkb3dOb3JtYWxCaWFzO1xuXHRcdFx0ZmxvYXQgc2hhZG93UmFkaXVzO1xuXHRcdFx0dmVjMiBzaGFkb3dNYXBTaXplO1xuXHRcdH07XG5cdFx0dW5pZm9ybSBEaXJlY3Rpb25hbExpZ2h0U2hhZG93IGRpcmVjdGlvbmFsTGlnaHRTaGFkb3dzWyBOVU1fRElSX0xJR0hUX1NIQURPV1MgXTtcblx0I2VuZGlmXG5cdCNpZiBOVU1fU1BPVF9MSUdIVF9TSEFET1dTID4gMFxuXHRcdHN0cnVjdCBTcG90TGlnaHRTaGFkb3cge1xuXHRcdFx0ZmxvYXQgc2hhZG93Qmlhcztcblx0XHRcdGZsb2F0IHNoYWRvd05vcm1hbEJpYXM7XG5cdFx0XHRmbG9hdCBzaGFkb3dSYWRpdXM7XG5cdFx0XHR2ZWMyIHNoYWRvd01hcFNpemU7XG5cdFx0fTtcblx0XHR1bmlmb3JtIFNwb3RMaWdodFNoYWRvdyBzcG90TGlnaHRTaGFkb3dzWyBOVU1fU1BPVF9MSUdIVF9TSEFET1dTIF07XG5cdCNlbmRpZlxuXHQjaWYgTlVNX1BPSU5UX0xJR0hUX1NIQURPV1MgPiAwXG5cdFx0dW5pZm9ybSBtYXQ0IHBvaW50U2hhZG93TWF0cml4WyBOVU1fUE9JTlRfTElHSFRfU0hBRE9XUyBdO1xuXHRcdHZhcnlpbmcgdmVjNCB2UG9pbnRTaGFkb3dDb29yZFsgTlVNX1BPSU5UX0xJR0hUX1NIQURPV1MgXTtcblx0XHRzdHJ1Y3QgUG9pbnRMaWdodFNoYWRvdyB7XG5cdFx0XHRmbG9hdCBzaGFkb3dCaWFzO1xuXHRcdFx0ZmxvYXQgc2hhZG93Tm9ybWFsQmlhcztcblx0XHRcdGZsb2F0IHNoYWRvd1JhZGl1cztcblx0XHRcdHZlYzIgc2hhZG93TWFwU2l6ZTtcblx0XHRcdGZsb2F0IHNoYWRvd0NhbWVyYU5lYXI7XG5cdFx0XHRmbG9hdCBzaGFkb3dDYW1lcmFGYXI7XG5cdFx0fTtcblx0XHR1bmlmb3JtIFBvaW50TGlnaHRTaGFkb3cgcG9pbnRMaWdodFNoYWRvd3NbIE5VTV9QT0lOVF9MSUdIVF9TSEFET1dTIF07XG5cdCNlbmRpZlxuI2VuZGlmIixzaGFkb3dtYXBfdmVydGV4OiIjaWYgKCBkZWZpbmVkKCBVU0VfU0hBRE9XTUFQICkgJiYgKCBOVU1fRElSX0xJR0hUX1NIQURPV1MgPiAwIHx8IE5VTV9QT0lOVF9MSUdIVF9TSEFET1dTID4gMCApICkgfHwgKCBOVU1fU1BPVF9MSUdIVF9DT09SRFMgPiAwIClcblx0dmVjMyBzaGFkb3dXb3JsZE5vcm1hbCA9IGludmVyc2VUcmFuc2Zvcm1EaXJlY3Rpb24oIHRyYW5zZm9ybWVkTm9ybWFsLCB2aWV3TWF0cml4ICk7XG5cdHZlYzQgc2hhZG93V29ybGRQb3NpdGlvbjtcbiNlbmRpZlxuI2lmIGRlZmluZWQoIFVTRV9TSEFET1dNQVAgKVxuXHQjaWYgTlVNX0RJUl9MSUdIVF9TSEFET1dTID4gMFxuXHRcdCNwcmFnbWEgdW5yb2xsX2xvb3Bfc3RhcnRcblx0XHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBOVU1fRElSX0xJR0hUX1NIQURPV1M7IGkgKysgKSB7XG5cdFx0XHRzaGFkb3dXb3JsZFBvc2l0aW9uID0gd29ybGRQb3NpdGlvbiArIHZlYzQoIHNoYWRvd1dvcmxkTm9ybWFsICogZGlyZWN0aW9uYWxMaWdodFNoYWRvd3NbIGkgXS5zaGFkb3dOb3JtYWxCaWFzLCAwICk7XG5cdFx0XHR2RGlyZWN0aW9uYWxTaGFkb3dDb29yZFsgaSBdID0gZGlyZWN0aW9uYWxTaGFkb3dNYXRyaXhbIGkgXSAqIHNoYWRvd1dvcmxkUG9zaXRpb247XG5cdFx0fVxuXHRcdCNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kXG5cdCNlbmRpZlxuXHQjaWYgTlVNX1BPSU5UX0xJR0hUX1NIQURPV1MgPiAwXG5cdFx0I3ByYWdtYSB1bnJvbGxfbG9vcF9zdGFydFxuXHRcdGZvciAoIGludCBpID0gMDsgaSA8IE5VTV9QT0lOVF9MSUdIVF9TSEFET1dTOyBpICsrICkge1xuXHRcdFx0c2hhZG93V29ybGRQb3NpdGlvbiA9IHdvcmxkUG9zaXRpb24gKyB2ZWM0KCBzaGFkb3dXb3JsZE5vcm1hbCAqIHBvaW50TGlnaHRTaGFkb3dzWyBpIF0uc2hhZG93Tm9ybWFsQmlhcywgMCApO1xuXHRcdFx0dlBvaW50U2hhZG93Q29vcmRbIGkgXSA9IHBvaW50U2hhZG93TWF0cml4WyBpIF0gKiBzaGFkb3dXb3JsZFBvc2l0aW9uO1xuXHRcdH1cblx0XHQjcHJhZ21hIHVucm9sbF9sb29wX2VuZFxuXHQjZW5kaWZcbiNlbmRpZlxuI2lmIE5VTV9TUE9UX0xJR0hUX0NPT1JEUyA+IDBcblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9zdGFydFxuXHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBOVU1fU1BPVF9MSUdIVF9DT09SRFM7IGkgKysgKSB7XG5cdFx0c2hhZG93V29ybGRQb3NpdGlvbiA9IHdvcmxkUG9zaXRpb247XG5cdFx0I2lmICggZGVmaW5lZCggVVNFX1NIQURPV01BUCApICYmIFVOUk9MTEVEX0xPT1BfSU5ERVggPCBOVU1fU1BPVF9MSUdIVF9TSEFET1dTIClcblx0XHRcdHNoYWRvd1dvcmxkUG9zaXRpb24ueHl6ICs9IHNoYWRvd1dvcmxkTm9ybWFsICogc3BvdExpZ2h0U2hhZG93c1sgaSBdLnNoYWRvd05vcm1hbEJpYXM7XG5cdFx0I2VuZGlmXG5cdFx0dlNwb3RMaWdodENvb3JkWyBpIF0gPSBzcG90TGlnaHRNYXRyaXhbIGkgXSAqIHNoYWRvd1dvcmxkUG9zaXRpb247XG5cdH1cblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9lbmRcbiNlbmRpZiIsc2hhZG93bWFza19wYXJzX2ZyYWdtZW50OiJmbG9hdCBnZXRTaGFkb3dNYXNrKCkge1xuXHRmbG9hdCBzaGFkb3cgPSAxLjA7XG5cdCNpZmRlZiBVU0VfU0hBRE9XTUFQXG5cdCNpZiBOVU1fRElSX0xJR0hUX1NIQURPV1MgPiAwXG5cdERpcmVjdGlvbmFsTGlnaHRTaGFkb3cgZGlyZWN0aW9uYWxMaWdodDtcblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9zdGFydFxuXHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBOVU1fRElSX0xJR0hUX1NIQURPV1M7IGkgKysgKSB7XG5cdFx0ZGlyZWN0aW9uYWxMaWdodCA9IGRpcmVjdGlvbmFsTGlnaHRTaGFkb3dzWyBpIF07XG5cdFx0c2hhZG93ICo9IHJlY2VpdmVTaGFkb3cgPyBnZXRTaGFkb3coIGRpcmVjdGlvbmFsU2hhZG93TWFwWyBpIF0sIGRpcmVjdGlvbmFsTGlnaHQuc2hhZG93TWFwU2l6ZSwgZGlyZWN0aW9uYWxMaWdodC5zaGFkb3dCaWFzLCBkaXJlY3Rpb25hbExpZ2h0LnNoYWRvd1JhZGl1cywgdkRpcmVjdGlvbmFsU2hhZG93Q29vcmRbIGkgXSApIDogMS4wO1xuXHR9XG5cdCNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kXG5cdCNlbmRpZlxuXHQjaWYgTlVNX1NQT1RfTElHSFRfU0hBRE9XUyA+IDBcblx0U3BvdExpZ2h0U2hhZG93IHNwb3RMaWdodDtcblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9zdGFydFxuXHRmb3IgKCBpbnQgaSA9IDA7IGkgPCBOVU1fU1BPVF9MSUdIVF9TSEFET1dTOyBpICsrICkge1xuXHRcdHNwb3RMaWdodCA9IHNwb3RMaWdodFNoYWRvd3NbIGkgXTtcblx0XHRzaGFkb3cgKj0gcmVjZWl2ZVNoYWRvdyA/IGdldFNoYWRvdyggc3BvdFNoYWRvd01hcFsgaSBdLCBzcG90TGlnaHQuc2hhZG93TWFwU2l6ZSwgc3BvdExpZ2h0LnNoYWRvd0JpYXMsIHNwb3RMaWdodC5zaGFkb3dSYWRpdXMsIHZTcG90TGlnaHRDb29yZFsgaSBdICkgOiAxLjA7XG5cdH1cblx0I3ByYWdtYSB1bnJvbGxfbG9vcF9lbmRcblx0I2VuZGlmXG5cdCNpZiBOVU1fUE9JTlRfTElHSFRfU0hBRE9XUyA+IDBcblx0UG9pbnRMaWdodFNoYWRvdyBwb2ludExpZ2h0O1xuXHQjcHJhZ21hIHVucm9sbF9sb29wX3N0YXJ0XG5cdGZvciAoIGludCBpID0gMDsgaSA8IE5VTV9QT0lOVF9MSUdIVF9TSEFET1dTOyBpICsrICkge1xuXHRcdHBvaW50TGlnaHQgPSBwb2ludExpZ2h0U2hhZG93c1sgaSBdO1xuXHRcdHNoYWRvdyAqPSByZWNlaXZlU2hhZG93ID8gZ2V0UG9pbnRTaGFkb3coIHBvaW50U2hhZG93TWFwWyBpIF0sIHBvaW50TGlnaHQuc2hhZG93TWFwU2l6ZSwgcG9pbnRMaWdodC5zaGFkb3dCaWFzLCBwb2ludExpZ2h0LnNoYWRvd1JhZGl1cywgdlBvaW50U2hhZG93Q29vcmRbIGkgXSwgcG9pbnRMaWdodC5zaGFkb3dDYW1lcmFOZWFyLCBwb2ludExpZ2h0LnNoYWRvd0NhbWVyYUZhciApIDogMS4wO1xuXHR9XG5cdCNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kXG5cdCNlbmRpZlxuXHQjZW5kaWZcblx0cmV0dXJuIHNoYWRvdztcbn0iLHNraW5iYXNlX3ZlcnRleDoiI2lmZGVmIFVTRV9TS0lOTklOR1xuXHRtYXQ0IGJvbmVNYXRYID0gZ2V0Qm9uZU1hdHJpeCggc2tpbkluZGV4LnggKTtcblx0bWF0NCBib25lTWF0WSA9IGdldEJvbmVNYXRyaXgoIHNraW5JbmRleC55ICk7XG5cdG1hdDQgYm9uZU1hdFogPSBnZXRCb25lTWF0cml4KCBza2luSW5kZXgueiApO1xuXHRtYXQ0IGJvbmVNYXRXID0gZ2V0Qm9uZU1hdHJpeCggc2tpbkluZGV4LncgKTtcbiNlbmRpZiIsc2tpbm5pbmdfcGFyc192ZXJ0ZXg6IiNpZmRlZiBVU0VfU0tJTk5JTkdcblx0dW5pZm9ybSBtYXQ0IGJpbmRNYXRyaXg7XG5cdHVuaWZvcm0gbWF0NCBiaW5kTWF0cml4SW52ZXJzZTtcblx0dW5pZm9ybSBoaWdocCBzYW1wbGVyMkQgYm9uZVRleHR1cmU7XG5cdHVuaWZvcm0gaW50IGJvbmVUZXh0dXJlU2l6ZTtcblx0bWF0NCBnZXRCb25lTWF0cml4KCBjb25zdCBpbiBmbG9hdCBpICkge1xuXHRcdGZsb2F0IGogPSBpICogNC4wO1xuXHRcdGZsb2F0IHggPSBtb2QoIGosIGZsb2F0KCBib25lVGV4dHVyZVNpemUgKSApO1xuXHRcdGZsb2F0IHkgPSBmbG9vciggaiAvIGZsb2F0KCBib25lVGV4dHVyZVNpemUgKSApO1xuXHRcdGZsb2F0IGR4ID0gMS4wIC8gZmxvYXQoIGJvbmVUZXh0dXJlU2l6ZSApO1xuXHRcdGZsb2F0IGR5ID0gMS4wIC8gZmxvYXQoIGJvbmVUZXh0dXJlU2l6ZSApO1xuXHRcdHkgPSBkeSAqICggeSArIDAuNSApO1xuXHRcdHZlYzQgdjEgPSB0ZXh0dXJlMkQoIGJvbmVUZXh0dXJlLCB2ZWMyKCBkeCAqICggeCArIDAuNSApLCB5ICkgKTtcblx0XHR2ZWM0IHYyID0gdGV4dHVyZTJEKCBib25lVGV4dHVyZSwgdmVjMiggZHggKiAoIHggKyAxLjUgKSwgeSApICk7XG5cdFx0dmVjNCB2MyA9IHRleHR1cmUyRCggYm9uZVRleHR1cmUsIHZlYzIoIGR4ICogKCB4ICsgMi41ICksIHkgKSApO1xuXHRcdHZlYzQgdjQgPSB0ZXh0dXJlMkQoIGJvbmVUZXh0dXJlLCB2ZWMyKCBkeCAqICggeCArIDMuNSApLCB5ICkgKTtcblx0XHRtYXQ0IGJvbmUgPSBtYXQ0KCB2MSwgdjIsIHYzLCB2NCApO1xuXHRcdHJldHVybiBib25lO1xuXHR9XG4jZW5kaWYiLHNraW5uaW5nX3ZlcnRleDoiI2lmZGVmIFVTRV9TS0lOTklOR1xuXHR2ZWM0IHNraW5WZXJ0ZXggPSBiaW5kTWF0cml4ICogdmVjNCggdHJhbnNmb3JtZWQsIDEuMCApO1xuXHR2ZWM0IHNraW5uZWQgPSB2ZWM0KCAwLjAgKTtcblx0c2tpbm5lZCArPSBib25lTWF0WCAqIHNraW5WZXJ0ZXggKiBza2luV2VpZ2h0Lng7XG5cdHNraW5uZWQgKz0gYm9uZU1hdFkgKiBza2luVmVydGV4ICogc2tpbldlaWdodC55O1xuXHRza2lubmVkICs9IGJvbmVNYXRaICogc2tpblZlcnRleCAqIHNraW5XZWlnaHQuejtcblx0c2tpbm5lZCArPSBib25lTWF0VyAqIHNraW5WZXJ0ZXggKiBza2luV2VpZ2h0Lnc7XG5cdHRyYW5zZm9ybWVkID0gKCBiaW5kTWF0cml4SW52ZXJzZSAqIHNraW5uZWQgKS54eXo7XG4jZW5kaWYiLHNraW5ub3JtYWxfdmVydGV4OiIjaWZkZWYgVVNFX1NLSU5OSU5HXG5cdG1hdDQgc2tpbk1hdHJpeCA9IG1hdDQoIDAuMCApO1xuXHRza2luTWF0cml4ICs9IHNraW5XZWlnaHQueCAqIGJvbmVNYXRYO1xuXHRza2luTWF0cml4ICs9IHNraW5XZWlnaHQueSAqIGJvbmVNYXRZO1xuXHRza2luTWF0cml4ICs9IHNraW5XZWlnaHQueiAqIGJvbmVNYXRaO1xuXHRza2luTWF0cml4ICs9IHNraW5XZWlnaHQudyAqIGJvbmVNYXRXO1xuXHRza2luTWF0cml4ID0gYmluZE1hdHJpeEludmVyc2UgKiBza2luTWF0cml4ICogYmluZE1hdHJpeDtcblx0b2JqZWN0Tm9ybWFsID0gdmVjNCggc2tpbk1hdHJpeCAqIHZlYzQoIG9iamVjdE5vcm1hbCwgMC4wICkgKS54eXo7XG5cdCNpZmRlZiBVU0VfVEFOR0VOVFxuXHRcdG9iamVjdFRhbmdlbnQgPSB2ZWM0KCBza2luTWF0cml4ICogdmVjNCggb2JqZWN0VGFuZ2VudCwgMC4wICkgKS54eXo7XG5cdCNlbmRpZlxuI2VuZGlmIixzcGVjdWxhcm1hcF9mcmFnbWVudDoiZmxvYXQgc3BlY3VsYXJTdHJlbmd0aDtcbiNpZmRlZiBVU0VfU1BFQ1VMQVJNQVBcblx0dmVjNCB0ZXhlbFNwZWN1bGFyID0gdGV4dHVyZTJEKCBzcGVjdWxhck1hcCwgdlNwZWN1bGFyTWFwVXYgKTtcblx0c3BlY3VsYXJTdHJlbmd0aCA9IHRleGVsU3BlY3VsYXIucjtcbiNlbHNlXG5cdHNwZWN1bGFyU3RyZW5ndGggPSAxLjA7XG4jZW5kaWYiLHNwZWN1bGFybWFwX3BhcnNfZnJhZ21lbnQ6IiNpZmRlZiBVU0VfU1BFQ1VMQVJNQVBcblx0dW5pZm9ybSBzYW1wbGVyMkQgc3BlY3VsYXJNYXA7XG4jZW5kaWYiLHRvbmVtYXBwaW5nX2ZyYWdtZW50OiIjaWYgZGVmaW5lZCggVE9ORV9NQVBQSU5HIClcblx0Z2xfRnJhZ0NvbG9yLnJnYiA9IHRvbmVNYXBwaW5nKCBnbF9GcmFnQ29sb3IucmdiICk7XG4jZW5kaWYiLHRvbmVtYXBwaW5nX3BhcnNfZnJhZ21lbnQ6IiNpZm5kZWYgc2F0dXJhdGVcbiNkZWZpbmUgc2F0dXJhdGUoIGEgKSBjbGFtcCggYSwgMC4wLCAxLjAgKVxuI2VuZGlmXG51bmlmb3JtIGZsb2F0IHRvbmVNYXBwaW5nRXhwb3N1cmU7XG52ZWMzIExpbmVhclRvbmVNYXBwaW5nKCB2ZWMzIGNvbG9yICkge1xuXHRyZXR1cm4gc2F0dXJhdGUoIHRvbmVNYXBwaW5nRXhwb3N1cmUgKiBjb2xvciApO1xufVxudmVjMyBSZWluaGFyZFRvbmVNYXBwaW5nKCB2ZWMzIGNvbG9yICkge1xuXHRjb2xvciAqPSB0b25lTWFwcGluZ0V4cG9zdXJlO1xuXHRyZXR1cm4gc2F0dXJhdGUoIGNvbG9yIC8gKCB2ZWMzKCAxLjAgKSArIGNvbG9yICkgKTtcbn1cbnZlYzMgT3B0aW1pemVkQ2luZW9uVG9uZU1hcHBpbmcoIHZlYzMgY29sb3IgKSB7XG5cdGNvbG9yICo9IHRvbmVNYXBwaW5nRXhwb3N1cmU7XG5cdGNvbG9yID0gbWF4KCB2ZWMzKCAwLjAgKSwgY29sb3IgLSAwLjAwNCApO1xuXHRyZXR1cm4gcG93KCAoIGNvbG9yICogKCA2LjIgKiBjb2xvciArIDAuNSApICkgLyAoIGNvbG9yICogKCA2LjIgKiBjb2xvciArIDEuNyApICsgMC4wNiApLCB2ZWMzKCAyLjIgKSApO1xufVxudmVjMyBSUlRBbmRPRFRGaXQoIHZlYzMgdiApIHtcblx0dmVjMyBhID0gdiAqICggdiArIDAuMDI0NTc4NiApIC0gMC4wMDAwOTA1Mzc7XG5cdHZlYzMgYiA9IHYgKiAoIDAuOTgzNzI5ICogdiArIDAuNDMyOTUxMCApICsgMC4yMzgwODE7XG5cdHJldHVybiBhIC8gYjtcbn1cbnZlYzMgQUNFU0ZpbG1pY1RvbmVNYXBwaW5nKCB2ZWMzIGNvbG9yICkge1xuXHRjb25zdCBtYXQzIEFDRVNJbnB1dE1hdCA9IG1hdDMoXG5cdFx0dmVjMyggMC41OTcxOSwgMC4wNzYwMCwgMC4wMjg0MCApLFx0XHR2ZWMzKCAwLjM1NDU4LCAwLjkwODM0LCAwLjEzMzgzICksXG5cdFx0dmVjMyggMC4wNDgyMywgMC4wMTU2NiwgMC44Mzc3NyApXG5cdCk7XG5cdGNvbnN0IG1hdDMgQUNFU091dHB1dE1hdCA9IG1hdDMoXG5cdFx0dmVjMyggIDEuNjA0NzUsIC0wLjEwMjA4LCAtMC4wMDMyNyApLFx0XHR2ZWMzKCAtMC41MzEwOCwgIDEuMTA4MTMsIC0wLjA3Mjc2ICksXG5cdFx0dmVjMyggLTAuMDczNjcsIC0wLjAwNjA1LCAgMS4wNzYwMiApXG5cdCk7XG5cdGNvbG9yICo9IHRvbmVNYXBwaW5nRXhwb3N1cmUgLyAwLjY7XG5cdGNvbG9yID0gQUNFU0lucHV0TWF0ICogY29sb3I7XG5cdGNvbG9yID0gUlJUQW5kT0RURml0KCBjb2xvciApO1xuXHRjb2xvciA9IEFDRVNPdXRwdXRNYXQgKiBjb2xvcjtcblx0cmV0dXJuIHNhdHVyYXRlKCBjb2xvciApO1xufVxudmVjMyBDdXN0b21Ub25lTWFwcGluZyggdmVjMyBjb2xvciApIHsgcmV0dXJuIGNvbG9yOyB9Iix0cmFuc21pc3Npb25fZnJhZ21lbnQ6IiNpZmRlZiBVU0VfVFJBTlNNSVNTSU9OXG5cdG1hdGVyaWFsLnRyYW5zbWlzc2lvbiA9IHRyYW5zbWlzc2lvbjtcblx0bWF0ZXJpYWwudHJhbnNtaXNzaW9uQWxwaGEgPSAxLjA7XG5cdG1hdGVyaWFsLnRoaWNrbmVzcyA9IHRoaWNrbmVzcztcblx0bWF0ZXJpYWwuYXR0ZW51YXRpb25EaXN0YW5jZSA9IGF0dGVudWF0aW9uRGlzdGFuY2U7XG5cdG1hdGVyaWFsLmF0dGVudWF0aW9uQ29sb3IgPSBhdHRlbnVhdGlvbkNvbG9yO1xuXHQjaWZkZWYgVVNFX1RSQU5TTUlTU0lPTk1BUFxuXHRcdG1hdGVyaWFsLnRyYW5zbWlzc2lvbiAqPSB0ZXh0dXJlMkQoIHRyYW5zbWlzc2lvbk1hcCwgdlRyYW5zbWlzc2lvbk1hcFV2ICkucjtcblx0I2VuZGlmXG5cdCNpZmRlZiBVU0VfVEhJQ0tORVNTTUFQXG5cdFx0bWF0ZXJpYWwudGhpY2tuZXNzICo9IHRleHR1cmUyRCggdGhpY2tuZXNzTWFwLCB2VGhpY2tuZXNzTWFwVXYgKS5nO1xuXHQjZW5kaWZcblx0dmVjMyBwb3MgPSB2V29ybGRQb3NpdGlvbjtcblx0dmVjMyB2ID0gbm9ybWFsaXplKCBjYW1lcmFQb3NpdGlvbiAtIHBvcyApO1xuXHR2ZWMzIG4gPSBpbnZlcnNlVHJhbnNmb3JtRGlyZWN0aW9uKCBub3JtYWwsIHZpZXdNYXRyaXggKTtcblx0dmVjNCB0cmFuc21pdHRlZCA9IGdldElCTFZvbHVtZVJlZnJhY3Rpb24oXG5cdFx0biwgdiwgbWF0ZXJpYWwucm91Z2huZXNzLCBtYXRlcmlhbC5kaWZmdXNlQ29sb3IsIG1hdGVyaWFsLnNwZWN1bGFyQ29sb3IsIG1hdGVyaWFsLnNwZWN1bGFyRjkwLFxuXHRcdHBvcywgbW9kZWxNYXRyaXgsIHZpZXdNYXRyaXgsIHByb2plY3Rpb25NYXRyaXgsIG1hdGVyaWFsLmlvciwgbWF0ZXJpYWwudGhpY2tuZXNzLFxuXHRcdG1hdGVyaWFsLmF0dGVudWF0aW9uQ29sb3IsIG1hdGVyaWFsLmF0dGVudWF0aW9uRGlzdGFuY2UgKTtcblx0bWF0ZXJpYWwudHJhbnNtaXNzaW9uQWxwaGEgPSBtaXgoIG1hdGVyaWFsLnRyYW5zbWlzc2lvbkFscGhhLCB0cmFuc21pdHRlZC5hLCBtYXRlcmlhbC50cmFuc21pc3Npb24gKTtcblx0dG90YWxEaWZmdXNlID0gbWl4KCB0b3RhbERpZmZ1c2UsIHRyYW5zbWl0dGVkLnJnYiwgbWF0ZXJpYWwudHJhbnNtaXNzaW9uICk7XG4jZW5kaWYiLHRyYW5zbWlzc2lvbl9wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX1RSQU5TTUlTU0lPTlxuXHR1bmlmb3JtIGZsb2F0IHRyYW5zbWlzc2lvbjtcblx0dW5pZm9ybSBmbG9hdCB0aGlja25lc3M7XG5cdHVuaWZvcm0gZmxvYXQgYXR0ZW51YXRpb25EaXN0YW5jZTtcblx0dW5pZm9ybSB2ZWMzIGF0dGVudWF0aW9uQ29sb3I7XG5cdCNpZmRlZiBVU0VfVFJBTlNNSVNTSU9OTUFQXG5cdFx0dW5pZm9ybSBzYW1wbGVyMkQgdHJhbnNtaXNzaW9uTWFwO1xuXHQjZW5kaWZcblx0I2lmZGVmIFVTRV9USElDS05FU1NNQVBcblx0XHR1bmlmb3JtIHNhbXBsZXIyRCB0aGlja25lc3NNYXA7XG5cdCNlbmRpZlxuXHR1bmlmb3JtIHZlYzIgdHJhbnNtaXNzaW9uU2FtcGxlclNpemU7XG5cdHVuaWZvcm0gc2FtcGxlcjJEIHRyYW5zbWlzc2lvblNhbXBsZXJNYXA7XG5cdHVuaWZvcm0gbWF0NCBtb2RlbE1hdHJpeDtcblx0dW5pZm9ybSBtYXQ0IHByb2plY3Rpb25NYXRyaXg7XG5cdHZhcnlpbmcgdmVjMyB2V29ybGRQb3NpdGlvbjtcblx0ZmxvYXQgdzAoIGZsb2F0IGEgKSB7XG5cdFx0cmV0dXJuICggMS4wIC8gNi4wICkgKiAoIGEgKiAoIGEgKiAoIC0gYSArIDMuMCApIC0gMy4wICkgKyAxLjAgKTtcblx0fVxuXHRmbG9hdCB3MSggZmxvYXQgYSApIHtcblx0XHRyZXR1cm4gKCAxLjAgLyA2LjAgKSAqICggYSAqICBhICogKCAzLjAgKiBhIC0gNi4wICkgKyA0LjAgKTtcblx0fVxuXHRmbG9hdCB3MiggZmxvYXQgYSApe1xuXHRcdHJldHVybiAoIDEuMCAvIDYuMCApICogKCBhICogKCBhICogKCAtIDMuMCAqIGEgKyAzLjAgKSArIDMuMCApICsgMS4wICk7XG5cdH1cblx0ZmxvYXQgdzMoIGZsb2F0IGEgKSB7XG5cdFx0cmV0dXJuICggMS4wIC8gNi4wICkgKiAoIGEgKiBhICogYSApO1xuXHR9XG5cdGZsb2F0IGcwKCBmbG9hdCBhICkge1xuXHRcdHJldHVybiB3MCggYSApICsgdzEoIGEgKTtcblx0fVxuXHRmbG9hdCBnMSggZmxvYXQgYSApIHtcblx0XHRyZXR1cm4gdzIoIGEgKSArIHczKCBhICk7XG5cdH1cblx0ZmxvYXQgaDAoIGZsb2F0IGEgKSB7XG5cdFx0cmV0dXJuIC0gMS4wICsgdzEoIGEgKSAvICggdzAoIGEgKSArIHcxKCBhICkgKTtcblx0fVxuXHRmbG9hdCBoMSggZmxvYXQgYSApIHtcblx0XHRyZXR1cm4gMS4wICsgdzMoIGEgKSAvICggdzIoIGEgKSArIHczKCBhICkgKTtcblx0fVxuXHR2ZWM0IGJpY3ViaWMoIHNhbXBsZXIyRCB0ZXgsIHZlYzIgdXYsIHZlYzQgdGV4ZWxTaXplLCBmbG9hdCBsb2QgKSB7XG5cdFx0dXYgPSB1diAqIHRleGVsU2l6ZS56dyArIDAuNTtcblx0XHR2ZWMyIGl1diA9IGZsb29yKCB1diApO1xuXHRcdHZlYzIgZnV2ID0gZnJhY3QoIHV2ICk7XG5cdFx0ZmxvYXQgZzB4ID0gZzAoIGZ1di54ICk7XG5cdFx0ZmxvYXQgZzF4ID0gZzEoIGZ1di54ICk7XG5cdFx0ZmxvYXQgaDB4ID0gaDAoIGZ1di54ICk7XG5cdFx0ZmxvYXQgaDF4ID0gaDEoIGZ1di54ICk7XG5cdFx0ZmxvYXQgaDB5ID0gaDAoIGZ1di55ICk7XG5cdFx0ZmxvYXQgaDF5ID0gaDEoIGZ1di55ICk7XG5cdFx0dmVjMiBwMCA9ICggdmVjMiggaXV2LnggKyBoMHgsIGl1di55ICsgaDB5ICkgLSAwLjUgKSAqIHRleGVsU2l6ZS54eTtcblx0XHR2ZWMyIHAxID0gKCB2ZWMyKCBpdXYueCArIGgxeCwgaXV2LnkgKyBoMHkgKSAtIDAuNSApICogdGV4ZWxTaXplLnh5O1xuXHRcdHZlYzIgcDIgPSAoIHZlYzIoIGl1di54ICsgaDB4LCBpdXYueSArIGgxeSApIC0gMC41ICkgKiB0ZXhlbFNpemUueHk7XG5cdFx0dmVjMiBwMyA9ICggdmVjMiggaXV2LnggKyBoMXgsIGl1di55ICsgaDF5ICkgLSAwLjUgKSAqIHRleGVsU2l6ZS54eTtcblx0XHRyZXR1cm4gZzAoIGZ1di55ICkgKiAoIGcweCAqIHRleHR1cmVMb2QoIHRleCwgcDAsIGxvZCApICsgZzF4ICogdGV4dHVyZUxvZCggdGV4LCBwMSwgbG9kICkgKSArXG5cdFx0XHRnMSggZnV2LnkgKSAqICggZzB4ICogdGV4dHVyZUxvZCggdGV4LCBwMiwgbG9kICkgKyBnMXggKiB0ZXh0dXJlTG9kKCB0ZXgsIHAzLCBsb2QgKSApO1xuXHR9XG5cdHZlYzQgdGV4dHVyZUJpY3ViaWMoIHNhbXBsZXIyRCBzYW1wbGVyLCB2ZWMyIHV2LCBmbG9hdCBsb2QgKSB7XG5cdFx0dmVjMiBmTG9kU2l6ZSA9IHZlYzIoIHRleHR1cmVTaXplKCBzYW1wbGVyLCBpbnQoIGxvZCApICkgKTtcblx0XHR2ZWMyIGNMb2RTaXplID0gdmVjMiggdGV4dHVyZVNpemUoIHNhbXBsZXIsIGludCggbG9kICsgMS4wICkgKSApO1xuXHRcdHZlYzIgZkxvZFNpemVJbnYgPSAxLjAgLyBmTG9kU2l6ZTtcblx0XHR2ZWMyIGNMb2RTaXplSW52ID0gMS4wIC8gY0xvZFNpemU7XG5cdFx0dmVjNCBmU2FtcGxlID0gYmljdWJpYyggc2FtcGxlciwgdXYsIHZlYzQoIGZMb2RTaXplSW52LCBmTG9kU2l6ZSApLCBmbG9vciggbG9kICkgKTtcblx0XHR2ZWM0IGNTYW1wbGUgPSBiaWN1YmljKCBzYW1wbGVyLCB1diwgdmVjNCggY0xvZFNpemVJbnYsIGNMb2RTaXplICksIGNlaWwoIGxvZCApICk7XG5cdFx0cmV0dXJuIG1peCggZlNhbXBsZSwgY1NhbXBsZSwgZnJhY3QoIGxvZCApICk7XG5cdH1cblx0dmVjMyBnZXRWb2x1bWVUcmFuc21pc3Npb25SYXkoIGNvbnN0IGluIHZlYzMgbiwgY29uc3QgaW4gdmVjMyB2LCBjb25zdCBpbiBmbG9hdCB0aGlja25lc3MsIGNvbnN0IGluIGZsb2F0IGlvciwgY29uc3QgaW4gbWF0NCBtb2RlbE1hdHJpeCApIHtcblx0XHR2ZWMzIHJlZnJhY3Rpb25WZWN0b3IgPSByZWZyYWN0KCAtIHYsIG5vcm1hbGl6ZSggbiApLCAxLjAgLyBpb3IgKTtcblx0XHR2ZWMzIG1vZGVsU2NhbGU7XG5cdFx0bW9kZWxTY2FsZS54ID0gbGVuZ3RoKCB2ZWMzKCBtb2RlbE1hdHJpeFsgMCBdLnh5eiApICk7XG5cdFx0bW9kZWxTY2FsZS55ID0gbGVuZ3RoKCB2ZWMzKCBtb2RlbE1hdHJpeFsgMSBdLnh5eiApICk7XG5cdFx0bW9kZWxTY2FsZS56ID0gbGVuZ3RoKCB2ZWMzKCBtb2RlbE1hdHJpeFsgMiBdLnh5eiApICk7XG5cdFx0cmV0dXJuIG5vcm1hbGl6ZSggcmVmcmFjdGlvblZlY3RvciApICogdGhpY2tuZXNzICogbW9kZWxTY2FsZTtcblx0fVxuXHRmbG9hdCBhcHBseUlvclRvUm91Z2huZXNzKCBjb25zdCBpbiBmbG9hdCByb3VnaG5lc3MsIGNvbnN0IGluIGZsb2F0IGlvciApIHtcblx0XHRyZXR1cm4gcm91Z2huZXNzICogY2xhbXAoIGlvciAqIDIuMCAtIDIuMCwgMC4wLCAxLjAgKTtcblx0fVxuXHR2ZWM0IGdldFRyYW5zbWlzc2lvblNhbXBsZSggY29uc3QgaW4gdmVjMiBmcmFnQ29vcmQsIGNvbnN0IGluIGZsb2F0IHJvdWdobmVzcywgY29uc3QgaW4gZmxvYXQgaW9yICkge1xuXHRcdGZsb2F0IGxvZCA9IGxvZzIoIHRyYW5zbWlzc2lvblNhbXBsZXJTaXplLnggKSAqIGFwcGx5SW9yVG9Sb3VnaG5lc3MoIHJvdWdobmVzcywgaW9yICk7XG5cdFx0cmV0dXJuIHRleHR1cmVCaWN1YmljKCB0cmFuc21pc3Npb25TYW1wbGVyTWFwLCBmcmFnQ29vcmQueHksIGxvZCApO1xuXHR9XG5cdHZlYzMgdm9sdW1lQXR0ZW51YXRpb24oIGNvbnN0IGluIGZsb2F0IHRyYW5zbWlzc2lvbkRpc3RhbmNlLCBjb25zdCBpbiB2ZWMzIGF0dGVudWF0aW9uQ29sb3IsIGNvbnN0IGluIGZsb2F0IGF0dGVudWF0aW9uRGlzdGFuY2UgKSB7XG5cdFx0aWYgKCBpc2luZiggYXR0ZW51YXRpb25EaXN0YW5jZSApICkge1xuXHRcdFx0cmV0dXJuIHZlYzMoIDEuMCApO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR2ZWMzIGF0dGVudWF0aW9uQ29lZmZpY2llbnQgPSAtbG9nKCBhdHRlbnVhdGlvbkNvbG9yICkgLyBhdHRlbnVhdGlvbkRpc3RhbmNlO1xuXHRcdFx0dmVjMyB0cmFuc21pdHRhbmNlID0gZXhwKCAtIGF0dGVudWF0aW9uQ29lZmZpY2llbnQgKiB0cmFuc21pc3Npb25EaXN0YW5jZSApO1x0XHRcdHJldHVybiB0cmFuc21pdHRhbmNlO1xuXHRcdH1cblx0fVxuXHR2ZWM0IGdldElCTFZvbHVtZVJlZnJhY3Rpb24oIGNvbnN0IGluIHZlYzMgbiwgY29uc3QgaW4gdmVjMyB2LCBjb25zdCBpbiBmbG9hdCByb3VnaG5lc3MsIGNvbnN0IGluIHZlYzMgZGlmZnVzZUNvbG9yLFxuXHRcdGNvbnN0IGluIHZlYzMgc3BlY3VsYXJDb2xvciwgY29uc3QgaW4gZmxvYXQgc3BlY3VsYXJGOTAsIGNvbnN0IGluIHZlYzMgcG9zaXRpb24sIGNvbnN0IGluIG1hdDQgbW9kZWxNYXRyaXgsXG5cdFx0Y29uc3QgaW4gbWF0NCB2aWV3TWF0cml4LCBjb25zdCBpbiBtYXQ0IHByb2pNYXRyaXgsIGNvbnN0IGluIGZsb2F0IGlvciwgY29uc3QgaW4gZmxvYXQgdGhpY2tuZXNzLFxuXHRcdGNvbnN0IGluIHZlYzMgYXR0ZW51YXRpb25Db2xvciwgY29uc3QgaW4gZmxvYXQgYXR0ZW51YXRpb25EaXN0YW5jZSApIHtcblx0XHR2ZWMzIHRyYW5zbWlzc2lvblJheSA9IGdldFZvbHVtZVRyYW5zbWlzc2lvblJheSggbiwgdiwgdGhpY2tuZXNzLCBpb3IsIG1vZGVsTWF0cml4ICk7XG5cdFx0dmVjMyByZWZyYWN0ZWRSYXlFeGl0ID0gcG9zaXRpb24gKyB0cmFuc21pc3Npb25SYXk7XG5cdFx0dmVjNCBuZGNQb3MgPSBwcm9qTWF0cml4ICogdmlld01hdHJpeCAqIHZlYzQoIHJlZnJhY3RlZFJheUV4aXQsIDEuMCApO1xuXHRcdHZlYzIgcmVmcmFjdGlvbkNvb3JkcyA9IG5kY1Bvcy54eSAvIG5kY1Bvcy53O1xuXHRcdHJlZnJhY3Rpb25Db29yZHMgKz0gMS4wO1xuXHRcdHJlZnJhY3Rpb25Db29yZHMgLz0gMi4wO1xuXHRcdHZlYzQgdHJhbnNtaXR0ZWRMaWdodCA9IGdldFRyYW5zbWlzc2lvblNhbXBsZSggcmVmcmFjdGlvbkNvb3Jkcywgcm91Z2huZXNzLCBpb3IgKTtcblx0XHR2ZWMzIHRyYW5zbWl0dGFuY2UgPSBkaWZmdXNlQ29sb3IgKiB2b2x1bWVBdHRlbnVhdGlvbiggbGVuZ3RoKCB0cmFuc21pc3Npb25SYXkgKSwgYXR0ZW51YXRpb25Db2xvciwgYXR0ZW51YXRpb25EaXN0YW5jZSApO1xuXHRcdHZlYzMgYXR0ZW51YXRlZENvbG9yID0gdHJhbnNtaXR0YW5jZSAqIHRyYW5zbWl0dGVkTGlnaHQucmdiO1xuXHRcdHZlYzMgRiA9IEVudmlyb25tZW50QlJERiggbiwgdiwgc3BlY3VsYXJDb2xvciwgc3BlY3VsYXJGOTAsIHJvdWdobmVzcyApO1xuXHRcdGZsb2F0IHRyYW5zbWl0dGFuY2VGYWN0b3IgPSAoIHRyYW5zbWl0dGFuY2UuciArIHRyYW5zbWl0dGFuY2UuZyArIHRyYW5zbWl0dGFuY2UuYiApIC8gMy4wO1xuXHRcdHJldHVybiB2ZWM0KCAoIDEuMCAtIEYgKSAqIGF0dGVudWF0ZWRDb2xvciwgMS4wIC0gKCAxLjAgLSB0cmFuc21pdHRlZExpZ2h0LmEgKSAqIHRyYW5zbWl0dGFuY2VGYWN0b3IgKTtcblx0fVxuI2VuZGlmIix1dl9wYXJzX2ZyYWdtZW50OiIjaWZkZWYgVVNFX1VWXG5cdHZhcnlpbmcgdmVjMiB2VXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTUFQXG5cdHZhcnlpbmcgdmVjMiB2TWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQUxQSEFNQVBcblx0dmFyeWluZyB2ZWMyIHZBbHBoYU1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0xJR0hUTUFQXG5cdHZhcnlpbmcgdmVjMiB2TGlnaHRNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9BT01BUFxuXHR2YXJ5aW5nIHZlYzIgdkFvTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQlVNUE1BUFxuXHR2YXJ5aW5nIHZlYzIgdkJ1bXBNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9OT1JNQUxNQVBcblx0dmFyeWluZyB2ZWMyIHZOb3JtYWxNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9FTUlTU0lWRU1BUFxuXHR2YXJ5aW5nIHZlYzIgdkVtaXNzaXZlTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTUVUQUxORVNTTUFQXG5cdHZhcnlpbmcgdmVjMiB2TWV0YWxuZXNzTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfUk9VR0hORVNTTUFQXG5cdHZhcnlpbmcgdmVjMiB2Um91Z2huZXNzTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQU5JU09UUk9QWU1BUFxuXHR2YXJ5aW5nIHZlYzIgdkFuaXNvdHJvcHlNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9DTEVBUkNPQVRNQVBcblx0dmFyeWluZyB2ZWMyIHZDbGVhcmNvYXRNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9DTEVBUkNPQVRfTk9STUFMTUFQXG5cdHZhcnlpbmcgdmVjMiB2Q2xlYXJjb2F0Tm9ybWFsTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQ0xFQVJDT0FUX1JPVUdITkVTU01BUFxuXHR2YXJ5aW5nIHZlYzIgdkNsZWFyY29hdFJvdWdobmVzc01hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0lSSURFU0NFTkNFTUFQXG5cdHZhcnlpbmcgdmVjMiB2SXJpZGVzY2VuY2VNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9JUklERVNDRU5DRV9USElDS05FU1NNQVBcblx0dmFyeWluZyB2ZWMyIHZJcmlkZXNjZW5jZVRoaWNrbmVzc01hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX1NIRUVOX0NPTE9STUFQXG5cdHZhcnlpbmcgdmVjMiB2U2hlZW5Db2xvck1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX1NIRUVOX1JPVUdITkVTU01BUFxuXHR2YXJ5aW5nIHZlYzIgdlNoZWVuUm91Z2huZXNzTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfU1BFQ1VMQVJNQVBcblx0dmFyeWluZyB2ZWMyIHZTcGVjdWxhck1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX1NQRUNVTEFSX0NPTE9STUFQXG5cdHZhcnlpbmcgdmVjMiB2U3BlY3VsYXJDb2xvck1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX1NQRUNVTEFSX0lOVEVOU0lUWU1BUFxuXHR2YXJ5aW5nIHZlYzIgdlNwZWN1bGFySW50ZW5zaXR5TWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfVFJBTlNNSVNTSU9OTUFQXG5cdHVuaWZvcm0gbWF0MyB0cmFuc21pc3Npb25NYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2VHJhbnNtaXNzaW9uTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfVEhJQ0tORVNTTUFQXG5cdHVuaWZvcm0gbWF0MyB0aGlja25lc3NNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2VGhpY2tuZXNzTWFwVXY7XG4jZW5kaWYiLHV2X3BhcnNfdmVydGV4OiIjaWZkZWYgVVNFX1VWXG5cdHZhcnlpbmcgdmVjMiB2VXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTUFQXG5cdHVuaWZvcm0gbWF0MyBtYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2TWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQUxQSEFNQVBcblx0dW5pZm9ybSBtYXQzIGFscGhhTWFwVHJhbnNmb3JtO1xuXHR2YXJ5aW5nIHZlYzIgdkFscGhhTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTElHSFRNQVBcblx0dW5pZm9ybSBtYXQzIGxpZ2h0TWFwVHJhbnNmb3JtO1xuXHR2YXJ5aW5nIHZlYzIgdkxpZ2h0TWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQU9NQVBcblx0dW5pZm9ybSBtYXQzIGFvTWFwVHJhbnNmb3JtO1xuXHR2YXJ5aW5nIHZlYzIgdkFvTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQlVNUE1BUFxuXHR1bmlmb3JtIG1hdDMgYnVtcE1hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZCdW1wTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTk9STUFMTUFQXG5cdHVuaWZvcm0gbWF0MyBub3JtYWxNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2Tm9ybWFsTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfRElTUExBQ0VNRU5UTUFQXG5cdHVuaWZvcm0gbWF0MyBkaXNwbGFjZW1lbnRNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2RGlzcGxhY2VtZW50TWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfRU1JU1NJVkVNQVBcblx0dW5pZm9ybSBtYXQzIGVtaXNzaXZlTWFwVHJhbnNmb3JtO1xuXHR2YXJ5aW5nIHZlYzIgdkVtaXNzaXZlTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTUVUQUxORVNTTUFQXG5cdHVuaWZvcm0gbWF0MyBtZXRhbG5lc3NNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2TWV0YWxuZXNzTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfUk9VR0hORVNTTUFQXG5cdHVuaWZvcm0gbWF0MyByb3VnaG5lc3NNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2Um91Z2huZXNzTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQU5JU09UUk9QWU1BUFxuXHR1bmlmb3JtIG1hdDMgYW5pc290cm9weU1hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZBbmlzb3Ryb3B5TWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQ0xFQVJDT0FUTUFQXG5cdHVuaWZvcm0gbWF0MyBjbGVhcmNvYXRNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2Q2xlYXJjb2F0TWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQ0xFQVJDT0FUX05PUk1BTE1BUFxuXHR1bmlmb3JtIG1hdDMgY2xlYXJjb2F0Tm9ybWFsTWFwVHJhbnNmb3JtO1xuXHR2YXJ5aW5nIHZlYzIgdkNsZWFyY29hdE5vcm1hbE1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0NMRUFSQ09BVF9ST1VHSE5FU1NNQVBcblx0dW5pZm9ybSBtYXQzIGNsZWFyY29hdFJvdWdobmVzc01hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZDbGVhcmNvYXRSb3VnaG5lc3NNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TSEVFTl9DT0xPUk1BUFxuXHR1bmlmb3JtIG1hdDMgc2hlZW5Db2xvck1hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZTaGVlbkNvbG9yTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfU0hFRU5fUk9VR0hORVNTTUFQXG5cdHVuaWZvcm0gbWF0MyBzaGVlblJvdWdobmVzc01hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZTaGVlblJvdWdobmVzc01hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0lSSURFU0NFTkNFTUFQXG5cdHVuaWZvcm0gbWF0MyBpcmlkZXNjZW5jZU1hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZJcmlkZXNjZW5jZU1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0lSSURFU0NFTkNFX1RISUNLTkVTU01BUFxuXHR1bmlmb3JtIG1hdDMgaXJpZGVzY2VuY2VUaGlja25lc3NNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2SXJpZGVzY2VuY2VUaGlja25lc3NNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TUEVDVUxBUk1BUFxuXHR1bmlmb3JtIG1hdDMgc3BlY3VsYXJNYXBUcmFuc2Zvcm07XG5cdHZhcnlpbmcgdmVjMiB2U3BlY3VsYXJNYXBVdjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TUEVDVUxBUl9DT0xPUk1BUFxuXHR1bmlmb3JtIG1hdDMgc3BlY3VsYXJDb2xvck1hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZTcGVjdWxhckNvbG9yTWFwVXY7XG4jZW5kaWZcbiNpZmRlZiBVU0VfU1BFQ1VMQVJfSU5URU5TSVRZTUFQXG5cdHVuaWZvcm0gbWF0MyBzcGVjdWxhckludGVuc2l0eU1hcFRyYW5zZm9ybTtcblx0dmFyeWluZyB2ZWMyIHZTcGVjdWxhckludGVuc2l0eU1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX1RSQU5TTUlTU0lPTk1BUFxuXHR1bmlmb3JtIG1hdDMgdHJhbnNtaXNzaW9uTWFwVHJhbnNmb3JtO1xuXHR2YXJ5aW5nIHZlYzIgdlRyYW5zbWlzc2lvbk1hcFV2O1xuI2VuZGlmXG4jaWZkZWYgVVNFX1RISUNLTkVTU01BUFxuXHR1bmlmb3JtIG1hdDMgdGhpY2tuZXNzTWFwVHJhbnNmb3JtO1xuXHR2YXJ5aW5nIHZlYzIgdlRoaWNrbmVzc01hcFV2O1xuI2VuZGlmIix1dl92ZXJ0ZXg6IiNpZmRlZiBVU0VfVVZcblx0dlV2ID0gdmVjMyggdXYsIDEgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9NQVBcblx0dk1hcFV2ID0gKCBtYXBUcmFuc2Zvcm0gKiB2ZWMzKCBNQVBfVVYsIDEgKSApLnh5O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0FMUEhBTUFQXG5cdHZBbHBoYU1hcFV2ID0gKCBhbHBoYU1hcFRyYW5zZm9ybSAqIHZlYzMoIEFMUEhBTUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9MSUdIVE1BUFxuXHR2TGlnaHRNYXBVdiA9ICggbGlnaHRNYXBUcmFuc2Zvcm0gKiB2ZWMzKCBMSUdIVE1BUF9VViwgMSApICkueHk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQU9NQVBcblx0dkFvTWFwVXYgPSAoIGFvTWFwVHJhbnNmb3JtICogdmVjMyggQU9NQVBfVVYsIDEgKSApLnh5O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0JVTVBNQVBcblx0dkJ1bXBNYXBVdiA9ICggYnVtcE1hcFRyYW5zZm9ybSAqIHZlYzMoIEJVTVBNQVBfVVYsIDEgKSApLnh5O1xuI2VuZGlmXG4jaWZkZWYgVVNFX05PUk1BTE1BUFxuXHR2Tm9ybWFsTWFwVXYgPSAoIG5vcm1hbE1hcFRyYW5zZm9ybSAqIHZlYzMoIE5PUk1BTE1BUF9VViwgMSApICkueHk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfRElTUExBQ0VNRU5UTUFQXG5cdHZEaXNwbGFjZW1lbnRNYXBVdiA9ICggZGlzcGxhY2VtZW50TWFwVHJhbnNmb3JtICogdmVjMyggRElTUExBQ0VNRU5UTUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9FTUlTU0lWRU1BUFxuXHR2RW1pc3NpdmVNYXBVdiA9ICggZW1pc3NpdmVNYXBUcmFuc2Zvcm0gKiB2ZWMzKCBFTUlTU0lWRU1BUF9VViwgMSApICkueHk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfTUVUQUxORVNTTUFQXG5cdHZNZXRhbG5lc3NNYXBVdiA9ICggbWV0YWxuZXNzTWFwVHJhbnNmb3JtICogdmVjMyggTUVUQUxORVNTTUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9ST1VHSE5FU1NNQVBcblx0dlJvdWdobmVzc01hcFV2ID0gKCByb3VnaG5lc3NNYXBUcmFuc2Zvcm0gKiB2ZWMzKCBST1VHSE5FU1NNQVBfVVYsIDEgKSApLnh5O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0FOSVNPVFJPUFlNQVBcblx0dkFuaXNvdHJvcHlNYXBVdiA9ICggYW5pc290cm9weU1hcFRyYW5zZm9ybSAqIHZlYzMoIEFOSVNPVFJPUFlNQVBfVVYsIDEgKSApLnh5O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0NMRUFSQ09BVE1BUFxuXHR2Q2xlYXJjb2F0TWFwVXYgPSAoIGNsZWFyY29hdE1hcFRyYW5zZm9ybSAqIHZlYzMoIENMRUFSQ09BVE1BUF9VViwgMSApICkueHk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfQ0xFQVJDT0FUX05PUk1BTE1BUFxuXHR2Q2xlYXJjb2F0Tm9ybWFsTWFwVXYgPSAoIGNsZWFyY29hdE5vcm1hbE1hcFRyYW5zZm9ybSAqIHZlYzMoIENMRUFSQ09BVF9OT1JNQUxNQVBfVVYsIDEgKSApLnh5O1xuI2VuZGlmXG4jaWZkZWYgVVNFX0NMRUFSQ09BVF9ST1VHSE5FU1NNQVBcblx0dkNsZWFyY29hdFJvdWdobmVzc01hcFV2ID0gKCBjbGVhcmNvYXRSb3VnaG5lc3NNYXBUcmFuc2Zvcm0gKiB2ZWMzKCBDTEVBUkNPQVRfUk9VR0hORVNTTUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9JUklERVNDRU5DRU1BUFxuXHR2SXJpZGVzY2VuY2VNYXBVdiA9ICggaXJpZGVzY2VuY2VNYXBUcmFuc2Zvcm0gKiB2ZWMzKCBJUklERVNDRU5DRU1BUF9VViwgMSApICkueHk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfSVJJREVTQ0VOQ0VfVEhJQ0tORVNTTUFQXG5cdHZJcmlkZXNjZW5jZVRoaWNrbmVzc01hcFV2ID0gKCBpcmlkZXNjZW5jZVRoaWNrbmVzc01hcFRyYW5zZm9ybSAqIHZlYzMoIElSSURFU0NFTkNFX1RISUNLTkVTU01BUF9VViwgMSApICkueHk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfU0hFRU5fQ09MT1JNQVBcblx0dlNoZWVuQ29sb3JNYXBVdiA9ICggc2hlZW5Db2xvck1hcFRyYW5zZm9ybSAqIHZlYzMoIFNIRUVOX0NPTE9STUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TSEVFTl9ST1VHSE5FU1NNQVBcblx0dlNoZWVuUm91Z2huZXNzTWFwVXYgPSAoIHNoZWVuUm91Z2huZXNzTWFwVHJhbnNmb3JtICogdmVjMyggU0hFRU5fUk9VR0hORVNTTUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TUEVDVUxBUk1BUFxuXHR2U3BlY3VsYXJNYXBVdiA9ICggc3BlY3VsYXJNYXBUcmFuc2Zvcm0gKiB2ZWMzKCBTUEVDVUxBUk1BUF9VViwgMSApICkueHk7XG4jZW5kaWZcbiNpZmRlZiBVU0VfU1BFQ1VMQVJfQ09MT1JNQVBcblx0dlNwZWN1bGFyQ29sb3JNYXBVdiA9ICggc3BlY3VsYXJDb2xvck1hcFRyYW5zZm9ybSAqIHZlYzMoIFNQRUNVTEFSX0NPTE9STUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TUEVDVUxBUl9JTlRFTlNJVFlNQVBcblx0dlNwZWN1bGFySW50ZW5zaXR5TWFwVXYgPSAoIHNwZWN1bGFySW50ZW5zaXR5TWFwVHJhbnNmb3JtICogdmVjMyggU1BFQ1VMQVJfSU5URU5TSVRZTUFQX1VWLCAxICkgKS54eTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9UUkFOU01JU1NJT05NQVBcblx0dlRyYW5zbWlzc2lvbk1hcFV2ID0gKCB0cmFuc21pc3Npb25NYXBUcmFuc2Zvcm0gKiB2ZWMzKCBUUkFOU01JU1NJT05NQVBfVVYsIDEgKSApLnh5O1xuI2VuZGlmXG4jaWZkZWYgVVNFX1RISUNLTkVTU01BUFxuXHR2VGhpY2tuZXNzTWFwVXYgPSAoIHRoaWNrbmVzc01hcFRyYW5zZm9ybSAqIHZlYzMoIFRISUNLTkVTU01BUF9VViwgMSApICkueHk7XG4jZW5kaWYiLHdvcmxkcG9zX3ZlcnRleDoiI2lmIGRlZmluZWQoIFVTRV9FTlZNQVAgKSB8fCBkZWZpbmVkKCBESVNUQU5DRSApIHx8IGRlZmluZWQgKCBVU0VfU0hBRE9XTUFQICkgfHwgZGVmaW5lZCAoIFVTRV9UUkFOU01JU1NJT04gKSB8fCBOVU1fU1BPVF9MSUdIVF9DT09SRFMgPiAwXG5cdHZlYzQgd29ybGRQb3NpdGlvbiA9IHZlYzQoIHRyYW5zZm9ybWVkLCAxLjAgKTtcblx0I2lmZGVmIFVTRV9JTlNUQU5DSU5HXG5cdFx0d29ybGRQb3NpdGlvbiA9IGluc3RhbmNlTWF0cml4ICogd29ybGRQb3NpdGlvbjtcblx0I2VuZGlmXG5cdHdvcmxkUG9zaXRpb24gPSBtb2RlbE1hdHJpeCAqIHdvcmxkUG9zaXRpb247XG4jZW5kaWYiLGJhY2tncm91bmRfdmVydDoidmFyeWluZyB2ZWMyIHZVdjtcbnVuaWZvcm0gbWF0MyB1dlRyYW5zZm9ybTtcbnZvaWQgbWFpbigpIHtcblx0dlV2ID0gKCB1dlRyYW5zZm9ybSAqIHZlYzMoIHV2LCAxICkgKS54eTtcblx0Z2xfUG9zaXRpb24gPSB2ZWM0KCBwb3NpdGlvbi54eSwgMS4wLCAxLjAgKTtcbn0iLGJhY2tncm91bmRfZnJhZzoidW5pZm9ybSBzYW1wbGVyMkQgdDJEO1xudW5pZm9ybSBmbG9hdCBiYWNrZ3JvdW5kSW50ZW5zaXR5O1xudmFyeWluZyB2ZWMyIHZVdjtcbnZvaWQgbWFpbigpIHtcblx0dmVjNCB0ZXhDb2xvciA9IHRleHR1cmUyRCggdDJELCB2VXYgKTtcblx0dGV4Q29sb3IucmdiICo9IGJhY2tncm91bmRJbnRlbnNpdHk7XG5cdGdsX0ZyYWdDb2xvciA9IHRleENvbG9yO1xuXHQjaW5jbHVkZSA8dG9uZW1hcHBpbmdfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxlbmNvZGluZ3NfZnJhZ21lbnQ+XG59IixiYWNrZ3JvdW5kQ3ViZV92ZXJ0OiJ2YXJ5aW5nIHZlYzMgdldvcmxkRGlyZWN0aW9uO1xuI2luY2x1ZGUgPGNvbW1vbj5cbnZvaWQgbWFpbigpIHtcblx0dldvcmxkRGlyZWN0aW9uID0gdHJhbnNmb3JtRGlyZWN0aW9uKCBwb3NpdGlvbiwgbW9kZWxNYXRyaXggKTtcblx0I2luY2x1ZGUgPGJlZ2luX3ZlcnRleD5cblx0I2luY2x1ZGUgPHByb2plY3RfdmVydGV4PlxuXHRnbF9Qb3NpdGlvbi56ID0gZ2xfUG9zaXRpb24udztcbn0iLGJhY2tncm91bmRDdWJlX2ZyYWc6IiNpZmRlZiBFTlZNQVBfVFlQRV9DVUJFXG5cdHVuaWZvcm0gc2FtcGxlckN1YmUgZW52TWFwO1xuI2VsaWYgZGVmaW5lZCggRU5WTUFQX1RZUEVfQ1VCRV9VViApXG5cdHVuaWZvcm0gc2FtcGxlcjJEIGVudk1hcDtcbiNlbmRpZlxudW5pZm9ybSBmbG9hdCBmbGlwRW52TWFwO1xudW5pZm9ybSBmbG9hdCBiYWNrZ3JvdW5kQmx1cnJpbmVzcztcbnVuaWZvcm0gZmxvYXQgYmFja2dyb3VuZEludGVuc2l0eTtcbnZhcnlpbmcgdmVjMyB2V29ybGREaXJlY3Rpb247XG4jaW5jbHVkZSA8Y3ViZV91dl9yZWZsZWN0aW9uX2ZyYWdtZW50Plxudm9pZCBtYWluKCkge1xuXHQjaWZkZWYgRU5WTUFQX1RZUEVfQ1VCRVxuXHRcdHZlYzQgdGV4Q29sb3IgPSB0ZXh0dXJlQ3ViZSggZW52TWFwLCB2ZWMzKCBmbGlwRW52TWFwICogdldvcmxkRGlyZWN0aW9uLngsIHZXb3JsZERpcmVjdGlvbi55eiApICk7XG5cdCNlbGlmIGRlZmluZWQoIEVOVk1BUF9UWVBFX0NVQkVfVVYgKVxuXHRcdHZlYzQgdGV4Q29sb3IgPSB0ZXh0dXJlQ3ViZVVWKCBlbnZNYXAsIHZXb3JsZERpcmVjdGlvbiwgYmFja2dyb3VuZEJsdXJyaW5lc3MgKTtcblx0I2Vsc2Vcblx0XHR2ZWM0IHRleENvbG9yID0gdmVjNCggMC4wLCAwLjAsIDAuMCwgMS4wICk7XG5cdCNlbmRpZlxuXHR0ZXhDb2xvci5yZ2IgKj0gYmFja2dyb3VuZEludGVuc2l0eTtcblx0Z2xfRnJhZ0NvbG9yID0gdGV4Q29sb3I7XG5cdCNpbmNsdWRlIDx0b25lbWFwcGluZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGVuY29kaW5nc19mcmFnbWVudD5cbn0iLGN1YmVfdmVydDoidmFyeWluZyB2ZWMzIHZXb3JsZERpcmVjdGlvbjtcbiNpbmNsdWRlIDxjb21tb24+XG52b2lkIG1haW4oKSB7XG5cdHZXb3JsZERpcmVjdGlvbiA9IHRyYW5zZm9ybURpcmVjdGlvbiggcG9zaXRpb24sIG1vZGVsTWF0cml4ICk7XG5cdCNpbmNsdWRlIDxiZWdpbl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxwcm9qZWN0X3ZlcnRleD5cblx0Z2xfUG9zaXRpb24ueiA9IGdsX1Bvc2l0aW9uLnc7XG59IixjdWJlX2ZyYWc6InVuaWZvcm0gc2FtcGxlckN1YmUgdEN1YmU7XG51bmlmb3JtIGZsb2F0IHRGbGlwO1xudW5pZm9ybSBmbG9hdCBvcGFjaXR5O1xudmFyeWluZyB2ZWMzIHZXb3JsZERpcmVjdGlvbjtcbnZvaWQgbWFpbigpIHtcblx0dmVjNCB0ZXhDb2xvciA9IHRleHR1cmVDdWJlKCB0Q3ViZSwgdmVjMyggdEZsaXAgKiB2V29ybGREaXJlY3Rpb24ueCwgdldvcmxkRGlyZWN0aW9uLnl6ICkgKTtcblx0Z2xfRnJhZ0NvbG9yID0gdGV4Q29sb3I7XG5cdGdsX0ZyYWdDb2xvci5hICo9IG9wYWNpdHk7XG5cdCNpbmNsdWRlIDx0b25lbWFwcGluZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGVuY29kaW5nc19mcmFnbWVudD5cbn0iLGRlcHRoX3ZlcnQ6IiNpbmNsdWRlIDxjb21tb24+XG4jaW5jbHVkZSA8dXZfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8ZGlzcGxhY2VtZW50bWFwX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPG1vcnBodGFyZ2V0X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPHNraW5uaW5nX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX3ZlcnRleD5cbnZhcnlpbmcgdmVjMiB2SGlnaFByZWNpc2lvblpXO1xudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8dXZfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbmJhc2VfdmVydGV4PlxuXHQjaWZkZWYgVVNFX0RJU1BMQUNFTUVOVE1BUFxuXHRcdCNpbmNsdWRlIDxiZWdpbm5vcm1hbF92ZXJ0ZXg+XG5cdFx0I2luY2x1ZGUgPG1vcnBobm9ybWFsX3ZlcnRleD5cblx0XHQjaW5jbHVkZSA8c2tpbm5vcm1hbF92ZXJ0ZXg+XG5cdCNlbmRpZlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5pbmdfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGlzcGxhY2VtZW50bWFwX3ZlcnRleD5cblx0I2luY2x1ZGUgPHByb2plY3RfdmVydGV4PlxuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfdmVydGV4PlxuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX3ZlcnRleD5cblx0dkhpZ2hQcmVjaXNpb25aVyA9IGdsX1Bvc2l0aW9uLnp3O1xufSIsZGVwdGhfZnJhZzoiI2lmIERFUFRIX1BBQ0tJTkcgPT0gMzIwMFxuXHR1bmlmb3JtIGZsb2F0IG9wYWNpdHk7XG4jZW5kaWZcbiNpbmNsdWRlIDxjb21tb24+XG4jaW5jbHVkZSA8cGFja2luZz5cbiNpbmNsdWRlIDx1dl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YWxwaGF0ZXN0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bG9nZGVwdGhidWZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc19mcmFnbWVudD5cbnZhcnlpbmcgdmVjMiB2SGlnaFByZWNpc2lvblpXO1xudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50PlxuXHR2ZWM0IGRpZmZ1c2VDb2xvciA9IHZlYzQoIDEuMCApO1xuXHQjaWYgREVQVEhfUEFDS0lORyA9PSAzMjAwXG5cdFx0ZGlmZnVzZUNvbG9yLmEgPSBvcGFjaXR5O1xuXHQjZW5kaWZcblx0I2luY2x1ZGUgPG1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGFscGhhbWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8YWxwaGF0ZXN0X2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfZnJhZ21lbnQ+XG5cdGZsb2F0IGZyYWdDb29yZFogPSAwLjUgKiB2SGlnaFByZWNpc2lvblpXWzBdIC8gdkhpZ2hQcmVjaXNpb25aV1sxXSArIDAuNTtcblx0I2lmIERFUFRIX1BBQ0tJTkcgPT0gMzIwMFxuXHRcdGdsX0ZyYWdDb2xvciA9IHZlYzQoIHZlYzMoIDEuMCAtIGZyYWdDb29yZFogKSwgb3BhY2l0eSApO1xuXHQjZWxpZiBERVBUSF9QQUNLSU5HID09IDMyMDFcblx0XHRnbF9GcmFnQ29sb3IgPSBwYWNrRGVwdGhUb1JHQkEoIGZyYWdDb29yZFogKTtcblx0I2VuZGlmXG59IixkaXN0YW5jZVJHQkFfdmVydDoiI2RlZmluZSBESVNUQU5DRVxudmFyeWluZyB2ZWMzIHZXb3JsZFBvc2l0aW9uO1xuI2luY2x1ZGUgPGNvbW1vbj5cbiNpbmNsdWRlIDx1dl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxkaXNwbGFjZW1lbnRtYXBfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8bW9ycGh0YXJnZXRfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8c2tpbm5pbmdfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX3BhcnNfdmVydGV4Plxudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8dXZfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbmJhc2VfdmVydGV4PlxuXHQjaWZkZWYgVVNFX0RJU1BMQUNFTUVOVE1BUFxuXHRcdCNpbmNsdWRlIDxiZWdpbm5vcm1hbF92ZXJ0ZXg+XG5cdFx0I2luY2x1ZGUgPG1vcnBobm9ybWFsX3ZlcnRleD5cblx0XHQjaW5jbHVkZSA8c2tpbm5vcm1hbF92ZXJ0ZXg+XG5cdCNlbmRpZlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5pbmdfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGlzcGxhY2VtZW50bWFwX3ZlcnRleD5cblx0I2luY2x1ZGUgPHByb2plY3RfdmVydGV4PlxuXHQjaW5jbHVkZSA8d29ybGRwb3NfdmVydGV4PlxuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX3ZlcnRleD5cblx0dldvcmxkUG9zaXRpb24gPSB3b3JsZFBvc2l0aW9uLnh5ejtcbn0iLGRpc3RhbmNlUkdCQV9mcmFnOiIjZGVmaW5lIERJU1RBTkNFXG51bmlmb3JtIHZlYzMgcmVmZXJlbmNlUG9zaXRpb247XG51bmlmb3JtIGZsb2F0IG5lYXJEaXN0YW5jZTtcbnVuaWZvcm0gZmxvYXQgZmFyRGlzdGFuY2U7XG52YXJ5aW5nIHZlYzMgdldvcmxkUG9zaXRpb247XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHBhY2tpbmc+XG4jaW5jbHVkZSA8dXZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxhbHBoYW1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhdGVzdF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX2ZyYWdtZW50Plxudm9pZCBtYWluICgpIHtcblx0I2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19mcmFnbWVudD5cblx0dmVjNCBkaWZmdXNlQ29sb3IgPSB2ZWM0KCAxLjAgKTtcblx0I2luY2x1ZGUgPG1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGFscGhhbWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8YWxwaGF0ZXN0X2ZyYWdtZW50PlxuXHRmbG9hdCBkaXN0ID0gbGVuZ3RoKCB2V29ybGRQb3NpdGlvbiAtIHJlZmVyZW5jZVBvc2l0aW9uICk7XG5cdGRpc3QgPSAoIGRpc3QgLSBuZWFyRGlzdGFuY2UgKSAvICggZmFyRGlzdGFuY2UgLSBuZWFyRGlzdGFuY2UgKTtcblx0ZGlzdCA9IHNhdHVyYXRlKCBkaXN0ICk7XG5cdGdsX0ZyYWdDb2xvciA9IHBhY2tEZXB0aFRvUkdCQSggZGlzdCApO1xufSIsZXF1aXJlY3RfdmVydDoidmFyeWluZyB2ZWMzIHZXb3JsZERpcmVjdGlvbjtcbiNpbmNsdWRlIDxjb21tb24+XG52b2lkIG1haW4oKSB7XG5cdHZXb3JsZERpcmVjdGlvbiA9IHRyYW5zZm9ybURpcmVjdGlvbiggcG9zaXRpb24sIG1vZGVsTWF0cml4ICk7XG5cdCNpbmNsdWRlIDxiZWdpbl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxwcm9qZWN0X3ZlcnRleD5cbn0iLGVxdWlyZWN0X2ZyYWc6InVuaWZvcm0gc2FtcGxlcjJEIHRFcXVpcmVjdDtcbnZhcnlpbmcgdmVjMyB2V29ybGREaXJlY3Rpb247XG4jaW5jbHVkZSA8Y29tbW9uPlxudm9pZCBtYWluKCkge1xuXHR2ZWMzIGRpcmVjdGlvbiA9IG5vcm1hbGl6ZSggdldvcmxkRGlyZWN0aW9uICk7XG5cdHZlYzIgc2FtcGxlVVYgPSBlcXVpcmVjdFV2KCBkaXJlY3Rpb24gKTtcblx0Z2xfRnJhZ0NvbG9yID0gdGV4dHVyZTJEKCB0RXF1aXJlY3QsIHNhbXBsZVVWICk7XG5cdCNpbmNsdWRlIDx0b25lbWFwcGluZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGVuY29kaW5nc19mcmFnbWVudD5cbn0iLGxpbmVkYXNoZWRfdmVydDoidW5pZm9ybSBmbG9hdCBzY2FsZTtcbmF0dHJpYnV0ZSBmbG9hdCBsaW5lRGlzdGFuY2U7XG52YXJ5aW5nIGZsb2F0IHZMaW5lRGlzdGFuY2U7XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHV2X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGZvZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxtb3JwaHRhcmdldF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc192ZXJ0ZXg+XG52b2lkIG1haW4oKSB7XG5cdHZMaW5lRGlzdGFuY2UgPSBzY2FsZSAqIGxpbmVEaXN0YW5jZTtcblx0I2luY2x1ZGUgPHV2X3ZlcnRleD5cblx0I2luY2x1ZGUgPGNvbG9yX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBoY29sb3JfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8cHJvamVjdF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbn0iLGxpbmVkYXNoZWRfZnJhZzoidW5pZm9ybSB2ZWMzIGRpZmZ1c2U7XG51bmlmb3JtIGZsb2F0IG9wYWNpdHk7XG51bmlmb3JtIGZsb2F0IGRhc2hTaXplO1xudW5pZm9ybSBmbG9hdCB0b3RhbFNpemU7XG52YXJ5aW5nIGZsb2F0IHZMaW5lRGlzdGFuY2U7XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8dXZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxmb2dfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX2ZyYWdtZW50Plxudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50PlxuXHRpZiAoIG1vZCggdkxpbmVEaXN0YW5jZSwgdG90YWxTaXplICkgPiBkYXNoU2l6ZSApIHtcblx0XHRkaXNjYXJkO1xuXHR9XG5cdHZlYzMgb3V0Z29pbmdMaWdodCA9IHZlYzMoIDAuMCApO1xuXHR2ZWM0IGRpZmZ1c2VDb2xvciA9IHZlYzQoIGRpZmZ1c2UsIG9wYWNpdHkgKTtcblx0I2luY2x1ZGUgPGxvZ2RlcHRoYnVmX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8Y29sb3JfZnJhZ21lbnQ+XG5cdG91dGdvaW5nTGlnaHQgPSBkaWZmdXNlQ29sb3IucmdiO1xuXHQjaW5jbHVkZSA8b3V0cHV0X2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8dG9uZW1hcHBpbmdfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxlbmNvZGluZ3NfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxmb2dfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxwcmVtdWx0aXBsaWVkX2FscGhhX2ZyYWdtZW50PlxufSIsbWVzaGJhc2ljX3ZlcnQ6IiNpbmNsdWRlIDxjb21tb24+XG4jaW5jbHVkZSA8dXZfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8ZW52bWFwX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGZvZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxtb3JwaHRhcmdldF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxza2lubmluZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc192ZXJ0ZXg+XG52b2lkIG1haW4oKSB7XG5cdCNpbmNsdWRlIDx1dl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjb2xvcl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaGNvbG9yX3ZlcnRleD5cblx0I2lmIGRlZmluZWQgKCBVU0VfRU5WTUFQICkgfHwgZGVmaW5lZCAoIFVTRV9TS0lOTklORyApXG5cdFx0I2luY2x1ZGUgPGJlZ2lubm9ybWFsX3ZlcnRleD5cblx0XHQjaW5jbHVkZSA8bW9ycGhub3JtYWxfdmVydGV4PlxuXHRcdCNpbmNsdWRlIDxza2luYmFzZV92ZXJ0ZXg+XG5cdFx0I2luY2x1ZGUgPHNraW5ub3JtYWxfdmVydGV4PlxuXHRcdCNpbmNsdWRlIDxkZWZhdWx0bm9ybWFsX3ZlcnRleD5cblx0I2VuZGlmXG5cdCNpbmNsdWRlIDxiZWdpbl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaHRhcmdldF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxza2lubmluZ192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxwcm9qZWN0X3ZlcnRleD5cblx0I2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3ZlcnRleD5cblx0I2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDx3b3JsZHBvc192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxlbnZtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbn0iLG1lc2hiYXNpY19mcmFnOiJ1bmlmb3JtIHZlYzMgZGlmZnVzZTtcbnVuaWZvcm0gZmxvYXQgb3BhY2l0eTtcbiNpZm5kZWYgRkxBVF9TSEFERURcblx0dmFyeWluZyB2ZWMzIHZOb3JtYWw7XG4jZW5kaWZcbiNpbmNsdWRlIDxjb21tb24+XG4jaW5jbHVkZSA8ZGl0aGVyaW5nX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Y29sb3JfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDx1dl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YWxwaGF0ZXN0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YW9tYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGVudm1hcF9jb21tb25fcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxlbnZtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxmb2dfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxzcGVjdWxhcm1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX3BhcnNfZnJhZ21lbnQ+XG52b2lkIG1haW4oKSB7XG5cdCNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfZnJhZ21lbnQ+XG5cdHZlYzQgZGlmZnVzZUNvbG9yID0gdmVjNCggZGlmZnVzZSwgb3BhY2l0eSApO1xuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxtYXBfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxjb2xvcl9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGFscGhhbWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8YWxwaGF0ZXN0X2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8c3BlY3VsYXJtYXBfZnJhZ21lbnQ+XG5cdFJlZmxlY3RlZExpZ2h0IHJlZmxlY3RlZExpZ2h0ID0gUmVmbGVjdGVkTGlnaHQoIHZlYzMoIDAuMCApLCB2ZWMzKCAwLjAgKSwgdmVjMyggMC4wICksIHZlYzMoIDAuMCApICk7XG5cdCNpZmRlZiBVU0VfTElHSFRNQVBcblx0XHR2ZWM0IGxpZ2h0TWFwVGV4ZWwgPSB0ZXh0dXJlMkQoIGxpZ2h0TWFwLCB2TGlnaHRNYXBVdiApO1xuXHRcdHJlZmxlY3RlZExpZ2h0LmluZGlyZWN0RGlmZnVzZSArPSBsaWdodE1hcFRleGVsLnJnYiAqIGxpZ2h0TWFwSW50ZW5zaXR5ICogUkVDSVBST0NBTF9QSTtcblx0I2Vsc2Vcblx0XHRyZWZsZWN0ZWRMaWdodC5pbmRpcmVjdERpZmZ1c2UgKz0gdmVjMyggMS4wICk7XG5cdCNlbmRpZlxuXHQjaW5jbHVkZSA8YW9tYXBfZnJhZ21lbnQ+XG5cdHJlZmxlY3RlZExpZ2h0LmluZGlyZWN0RGlmZnVzZSAqPSBkaWZmdXNlQ29sb3IucmdiO1xuXHR2ZWMzIG91dGdvaW5nTGlnaHQgPSByZWZsZWN0ZWRMaWdodC5pbmRpcmVjdERpZmZ1c2U7XG5cdCNpbmNsdWRlIDxlbnZtYXBfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxvdXRwdXRfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDx0b25lbWFwcGluZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGVuY29kaW5nc19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGZvZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPHByZW11bHRpcGxpZWRfYWxwaGFfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxkaXRoZXJpbmdfZnJhZ21lbnQ+XG59IixtZXNobGFtYmVydF92ZXJ0OiIjZGVmaW5lIExBTUJFUlRcbnZhcnlpbmcgdmVjMyB2Vmlld1Bvc2l0aW9uO1xuI2luY2x1ZGUgPGNvbW1vbj5cbiNpbmNsdWRlIDx1dl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxkaXNwbGFjZW1lbnRtYXBfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8ZW52bWFwX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGZvZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxub3JtYWxfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8bW9ycGh0YXJnZXRfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8c2tpbm5pbmdfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8c2hhZG93bWFwX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX3ZlcnRleD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPHV2X3ZlcnRleD5cblx0I2luY2x1ZGUgPGNvbG9yX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBoY29sb3JfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5ub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGhub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbmJhc2VfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxkZWZhdWx0bm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPG5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxiZWdpbl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaHRhcmdldF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxza2lubmluZ192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxkaXNwbGFjZW1lbnRtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8cHJvamVjdF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfdmVydGV4PlxuXHR2Vmlld1Bvc2l0aW9uID0gLSBtdlBvc2l0aW9uLnh5ejtcblx0I2luY2x1ZGUgPHdvcmxkcG9zX3ZlcnRleD5cblx0I2luY2x1ZGUgPGVudm1hcF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxzaGFkb3dtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbn0iLG1lc2hsYW1iZXJ0X2ZyYWc6IiNkZWZpbmUgTEFNQkVSVFxudW5pZm9ybSB2ZWMzIGRpZmZ1c2U7XG51bmlmb3JtIHZlYzMgZW1pc3NpdmU7XG51bmlmb3JtIGZsb2F0IG9wYWNpdHk7XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHBhY2tpbmc+XG4jaW5jbHVkZSA8ZGl0aGVyaW5nX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Y29sb3JfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDx1dl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YWxwaGF0ZXN0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YW9tYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGVtaXNzaXZlbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8ZW52bWFwX2NvbW1vbl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGVudm1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGZvZ19wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGJzZGZzPlxuI2luY2x1ZGUgPGxpZ2h0c19wYXJzX2JlZ2luPlxuI2luY2x1ZGUgPG5vcm1hbF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGxpZ2h0c19sYW1iZXJ0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8c2hhZG93bWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YnVtcG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG5vcm1hbG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPHNwZWN1bGFybWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bG9nZGVwdGhidWZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc19mcmFnbWVudD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19mcmFnbWVudD5cblx0dmVjNCBkaWZmdXNlQ29sb3IgPSB2ZWM0KCBkaWZmdXNlLCBvcGFjaXR5ICk7XG5cdFJlZmxlY3RlZExpZ2h0IHJlZmxlY3RlZExpZ2h0ID0gUmVmbGVjdGVkTGlnaHQoIHZlYzMoIDAuMCApLCB2ZWMzKCAwLjAgKSwgdmVjMyggMC4wICksIHZlYzMoIDAuMCApICk7XG5cdHZlYzMgdG90YWxFbWlzc2l2ZVJhZGlhbmNlID0gZW1pc3NpdmU7XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9mcmFnbWVudD5cblx0I2luY2x1ZGUgPG1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGNvbG9yX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8YWxwaGFtYXBfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxhbHBoYXRlc3RfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxzcGVjdWxhcm1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPG5vcm1hbF9mcmFnbWVudF9iZWdpbj5cblx0I2luY2x1ZGUgPG5vcm1hbF9mcmFnbWVudF9tYXBzPlxuXHQjaW5jbHVkZSA8ZW1pc3NpdmVtYXBfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxsaWdodHNfbGFtYmVydF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGxpZ2h0c19mcmFnbWVudF9iZWdpbj5cblx0I2luY2x1ZGUgPGxpZ2h0c19mcmFnbWVudF9tYXBzPlxuXHQjaW5jbHVkZSA8bGlnaHRzX2ZyYWdtZW50X2VuZD5cblx0I2luY2x1ZGUgPGFvbWFwX2ZyYWdtZW50PlxuXHR2ZWMzIG91dGdvaW5nTGlnaHQgPSByZWZsZWN0ZWRMaWdodC5kaXJlY3REaWZmdXNlICsgcmVmbGVjdGVkTGlnaHQuaW5kaXJlY3REaWZmdXNlICsgdG90YWxFbWlzc2l2ZVJhZGlhbmNlO1xuXHQjaW5jbHVkZSA8ZW52bWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8b3V0cHV0X2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8dG9uZW1hcHBpbmdfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxlbmNvZGluZ3NfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxmb2dfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxwcmVtdWx0aXBsaWVkX2FscGhhX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8ZGl0aGVyaW5nX2ZyYWdtZW50PlxufSIsbWVzaG1hdGNhcF92ZXJ0OiIjZGVmaW5lIE1BVENBUFxudmFyeWluZyB2ZWMzIHZWaWV3UG9zaXRpb247XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHV2X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGRpc3BsYWNlbWVudG1hcF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxmb2dfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8bm9ybWFsX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPG1vcnBodGFyZ2V0X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPHNraW5uaW5nX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX3ZlcnRleD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPHV2X3ZlcnRleD5cblx0I2luY2x1ZGUgPGNvbG9yX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBoY29sb3JfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5ub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGhub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbmJhc2VfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxkZWZhdWx0bm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPG5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxiZWdpbl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaHRhcmdldF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxza2lubmluZ192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxkaXNwbGFjZW1lbnRtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8cHJvamVjdF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cblx0dlZpZXdQb3NpdGlvbiA9IC0gbXZQb3NpdGlvbi54eXo7XG59IixtZXNobWF0Y2FwX2ZyYWc6IiNkZWZpbmUgTUFUQ0FQXG51bmlmb3JtIHZlYzMgZGlmZnVzZTtcbnVuaWZvcm0gZmxvYXQgb3BhY2l0eTtcbnVuaWZvcm0gc2FtcGxlcjJEIG1hdGNhcDtcbnZhcnlpbmcgdmVjMyB2Vmlld1Bvc2l0aW9uO1xuI2luY2x1ZGUgPGNvbW1vbj5cbiNpbmNsdWRlIDxkaXRoZXJpbmdfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxjb2xvcl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPHV2X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YWxwaGFtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxhbHBoYXRlc3RfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxmb2dfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxub3JtYWxfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxidW1wbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bm9ybWFsbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bG9nZGVwdGhidWZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc19mcmFnbWVudD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19mcmFnbWVudD5cblx0dmVjNCBkaWZmdXNlQ29sb3IgPSB2ZWM0KCBkaWZmdXNlLCBvcGFjaXR5ICk7XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9mcmFnbWVudD5cblx0I2luY2x1ZGUgPG1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGNvbG9yX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8YWxwaGFtYXBfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxhbHBoYXRlc3RfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxub3JtYWxfZnJhZ21lbnRfYmVnaW4+XG5cdCNpbmNsdWRlIDxub3JtYWxfZnJhZ21lbnRfbWFwcz5cblx0dmVjMyB2aWV3RGlyID0gbm9ybWFsaXplKCB2Vmlld1Bvc2l0aW9uICk7XG5cdHZlYzMgeCA9IG5vcm1hbGl6ZSggdmVjMyggdmlld0Rpci56LCAwLjAsIC0gdmlld0Rpci54ICkgKTtcblx0dmVjMyB5ID0gY3Jvc3MoIHZpZXdEaXIsIHggKTtcblx0dmVjMiB1diA9IHZlYzIoIGRvdCggeCwgbm9ybWFsICksIGRvdCggeSwgbm9ybWFsICkgKSAqIDAuNDk1ICsgMC41O1xuXHQjaWZkZWYgVVNFX01BVENBUFxuXHRcdHZlYzQgbWF0Y2FwQ29sb3IgPSB0ZXh0dXJlMkQoIG1hdGNhcCwgdXYgKTtcblx0I2Vsc2Vcblx0XHR2ZWM0IG1hdGNhcENvbG9yID0gdmVjNCggdmVjMyggbWl4KCAwLjIsIDAuOCwgdXYueSApICksIDEuMCApO1xuXHQjZW5kaWZcblx0dmVjMyBvdXRnb2luZ0xpZ2h0ID0gZGlmZnVzZUNvbG9yLnJnYiAqIG1hdGNhcENvbG9yLnJnYjtcblx0I2luY2x1ZGUgPG91dHB1dF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPHRvbmVtYXBwaW5nX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8ZW5jb2RpbmdzX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8Zm9nX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8cHJlbXVsdGlwbGllZF9hbHBoYV9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGRpdGhlcmluZ19mcmFnbWVudD5cbn0iLG1lc2hub3JtYWxfdmVydDoiI2RlZmluZSBOT1JNQUxcbiNpZiBkZWZpbmVkKCBGTEFUX1NIQURFRCApIHx8IGRlZmluZWQoIFVTRV9CVU1QTUFQICkgfHwgZGVmaW5lZCggVVNFX05PUk1BTE1BUF9UQU5HRU5UU1BBQ0UgKVxuXHR2YXJ5aW5nIHZlYzMgdlZpZXdQb3NpdGlvbjtcbiNlbmRpZlxuI2luY2x1ZGUgPGNvbW1vbj5cbiNpbmNsdWRlIDx1dl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxkaXNwbGFjZW1lbnRtYXBfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8bm9ybWFsX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPG1vcnBodGFyZ2V0X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPHNraW5uaW5nX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX3ZlcnRleD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPHV2X3ZlcnRleD5cblx0I2luY2x1ZGUgPGJlZ2lubm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBobm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPHNraW5iYXNlX3ZlcnRleD5cblx0I2luY2x1ZGUgPHNraW5ub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGVmYXVsdG5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5pbmdfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGlzcGxhY2VtZW50bWFwX3ZlcnRleD5cblx0I2luY2x1ZGUgPHByb2plY3RfdmVydGV4PlxuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfdmVydGV4PlxuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX3ZlcnRleD5cbiNpZiBkZWZpbmVkKCBGTEFUX1NIQURFRCApIHx8IGRlZmluZWQoIFVTRV9CVU1QTUFQICkgfHwgZGVmaW5lZCggVVNFX05PUk1BTE1BUF9UQU5HRU5UU1BBQ0UgKVxuXHR2Vmlld1Bvc2l0aW9uID0gLSBtdlBvc2l0aW9uLnh5ejtcbiNlbmRpZlxufSIsbWVzaG5vcm1hbF9mcmFnOiIjZGVmaW5lIE5PUk1BTFxudW5pZm9ybSBmbG9hdCBvcGFjaXR5O1xuI2lmIGRlZmluZWQoIEZMQVRfU0hBREVEICkgfHwgZGVmaW5lZCggVVNFX0JVTVBNQVAgKSB8fCBkZWZpbmVkKCBVU0VfTk9STUFMTUFQX1RBTkdFTlRTUEFDRSApXG5cdHZhcnlpbmcgdmVjMyB2Vmlld1Bvc2l0aW9uO1xuI2VuZGlmXG4jaW5jbHVkZSA8cGFja2luZz5cbiNpbmNsdWRlIDx1dl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG5vcm1hbF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGJ1bXBtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxub3JtYWxtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX2ZyYWdtZW50Plxudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxub3JtYWxfZnJhZ21lbnRfYmVnaW4+XG5cdCNpbmNsdWRlIDxub3JtYWxfZnJhZ21lbnRfbWFwcz5cblx0Z2xfRnJhZ0NvbG9yID0gdmVjNCggcGFja05vcm1hbFRvUkdCKCBub3JtYWwgKSwgb3BhY2l0eSApO1xuXHQjaWZkZWYgT1BBUVVFXG5cdFx0Z2xfRnJhZ0NvbG9yLmEgPSAxLjA7XG5cdCNlbmRpZlxufSIsbWVzaHBob25nX3ZlcnQ6IiNkZWZpbmUgUEhPTkdcbnZhcnlpbmcgdmVjMyB2Vmlld1Bvc2l0aW9uO1xuI2luY2x1ZGUgPGNvbW1vbj5cbiNpbmNsdWRlIDx1dl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxkaXNwbGFjZW1lbnRtYXBfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8ZW52bWFwX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGZvZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxub3JtYWxfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8bW9ycGh0YXJnZXRfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8c2tpbm5pbmdfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8c2hhZG93bWFwX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX3ZlcnRleD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPHV2X3ZlcnRleD5cblx0I2luY2x1ZGUgPGNvbG9yX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBoY29sb3JfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5ub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGhub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbmJhc2VfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxkZWZhdWx0bm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPG5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxiZWdpbl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaHRhcmdldF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxza2lubmluZ192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxkaXNwbGFjZW1lbnRtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8cHJvamVjdF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfdmVydGV4PlxuXHR2Vmlld1Bvc2l0aW9uID0gLSBtdlBvc2l0aW9uLnh5ejtcblx0I2luY2x1ZGUgPHdvcmxkcG9zX3ZlcnRleD5cblx0I2luY2x1ZGUgPGVudm1hcF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxzaGFkb3dtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbn0iLG1lc2hwaG9uZ19mcmFnOiIjZGVmaW5lIFBIT05HXG51bmlmb3JtIHZlYzMgZGlmZnVzZTtcbnVuaWZvcm0gdmVjMyBlbWlzc2l2ZTtcbnVuaWZvcm0gdmVjMyBzcGVjdWxhcjtcbnVuaWZvcm0gZmxvYXQgc2hpbmluZXNzO1xudW5pZm9ybSBmbG9hdCBvcGFjaXR5O1xuI2luY2x1ZGUgPGNvbW1vbj5cbiNpbmNsdWRlIDxwYWNraW5nPlxuI2luY2x1ZGUgPGRpdGhlcmluZ19wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8dXZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxhbHBoYW1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhdGVzdF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFvbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bGlnaHRtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxlbWlzc2l2ZW1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGVudm1hcF9jb21tb25fcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxlbnZtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxmb2dfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxic2Rmcz5cbiNpbmNsdWRlIDxsaWdodHNfcGFyc19iZWdpbj5cbiNpbmNsdWRlIDxub3JtYWxfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodHNfcGhvbmdfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxzaGFkb3dtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxidW1wbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bm9ybWFsbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8c3BlY3VsYXJtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX2ZyYWdtZW50Plxudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50PlxuXHR2ZWM0IGRpZmZ1c2VDb2xvciA9IHZlYzQoIGRpZmZ1c2UsIG9wYWNpdHkgKTtcblx0UmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQgPSBSZWZsZWN0ZWRMaWdodCggdmVjMyggMC4wICksIHZlYzMoIDAuMCApLCB2ZWMzKCAwLjAgKSwgdmVjMyggMC4wICkgKTtcblx0dmVjMyB0b3RhbEVtaXNzaXZlUmFkaWFuY2UgPSBlbWlzc2l2ZTtcblx0I2luY2x1ZGUgPGxvZ2RlcHRoYnVmX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8Y29sb3JfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxhbHBoYW1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGFscGhhdGVzdF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPHNwZWN1bGFybWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bm9ybWFsX2ZyYWdtZW50X2JlZ2luPlxuXHQjaW5jbHVkZSA8bm9ybWFsX2ZyYWdtZW50X21hcHM+XG5cdCNpbmNsdWRlIDxlbWlzc2l2ZW1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGxpZ2h0c19waG9uZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGxpZ2h0c19mcmFnbWVudF9iZWdpbj5cblx0I2luY2x1ZGUgPGxpZ2h0c19mcmFnbWVudF9tYXBzPlxuXHQjaW5jbHVkZSA8bGlnaHRzX2ZyYWdtZW50X2VuZD5cblx0I2luY2x1ZGUgPGFvbWFwX2ZyYWdtZW50PlxuXHR2ZWMzIG91dGdvaW5nTGlnaHQgPSByZWZsZWN0ZWRMaWdodC5kaXJlY3REaWZmdXNlICsgcmVmbGVjdGVkTGlnaHQuaW5kaXJlY3REaWZmdXNlICsgcmVmbGVjdGVkTGlnaHQuZGlyZWN0U3BlY3VsYXIgKyByZWZsZWN0ZWRMaWdodC5pbmRpcmVjdFNwZWN1bGFyICsgdG90YWxFbWlzc2l2ZVJhZGlhbmNlO1xuXHQjaW5jbHVkZSA8ZW52bWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8b3V0cHV0X2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8dG9uZW1hcHBpbmdfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxlbmNvZGluZ3NfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxmb2dfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxwcmVtdWx0aXBsaWVkX2FscGhhX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8ZGl0aGVyaW5nX2ZyYWdtZW50PlxufSIsbWVzaHBoeXNpY2FsX3ZlcnQ6IiNkZWZpbmUgU1RBTkRBUkRcbnZhcnlpbmcgdmVjMyB2Vmlld1Bvc2l0aW9uO1xuI2lmZGVmIFVTRV9UUkFOU01JU1NJT05cblx0dmFyeWluZyB2ZWMzIHZXb3JsZFBvc2l0aW9uO1xuI2VuZGlmXG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHV2X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGRpc3BsYWNlbWVudG1hcF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxjb2xvcl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxmb2dfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8bm9ybWFsX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPG1vcnBodGFyZ2V0X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPHNraW5uaW5nX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPHNoYWRvd21hcF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc192ZXJ0ZXg+XG52b2lkIG1haW4oKSB7XG5cdCNpbmNsdWRlIDx1dl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjb2xvcl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaGNvbG9yX3ZlcnRleD5cblx0I2luY2x1ZGUgPGJlZ2lubm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBobm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPHNraW5iYXNlX3ZlcnRleD5cblx0I2luY2x1ZGUgPHNraW5ub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGVmYXVsdG5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5pbmdfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGlzcGxhY2VtZW50bWFwX3ZlcnRleD5cblx0I2luY2x1ZGUgPHByb2plY3RfdmVydGV4PlxuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfdmVydGV4PlxuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX3ZlcnRleD5cblx0dlZpZXdQb3NpdGlvbiA9IC0gbXZQb3NpdGlvbi54eXo7XG5cdCNpbmNsdWRlIDx3b3JsZHBvc192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxzaGFkb3dtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbiNpZmRlZiBVU0VfVFJBTlNNSVNTSU9OXG5cdHZXb3JsZFBvc2l0aW9uID0gd29ybGRQb3NpdGlvbi54eXo7XG4jZW5kaWZcbn0iLG1lc2hwaHlzaWNhbF9mcmFnOiIjZGVmaW5lIFNUQU5EQVJEXG4jaWZkZWYgUEhZU0lDQUxcblx0I2RlZmluZSBJT1Jcblx0I2RlZmluZSBVU0VfU1BFQ1VMQVJcbiNlbmRpZlxudW5pZm9ybSB2ZWMzIGRpZmZ1c2U7XG51bmlmb3JtIHZlYzMgZW1pc3NpdmU7XG51bmlmb3JtIGZsb2F0IHJvdWdobmVzcztcbnVuaWZvcm0gZmxvYXQgbWV0YWxuZXNzO1xudW5pZm9ybSBmbG9hdCBvcGFjaXR5O1xuI2lmZGVmIElPUlxuXHR1bmlmb3JtIGZsb2F0IGlvcjtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TUEVDVUxBUlxuXHR1bmlmb3JtIGZsb2F0IHNwZWN1bGFySW50ZW5zaXR5O1xuXHR1bmlmb3JtIHZlYzMgc3BlY3VsYXJDb2xvcjtcblx0I2lmZGVmIFVTRV9TUEVDVUxBUl9DT0xPUk1BUFxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIHNwZWN1bGFyQ29sb3JNYXA7XG5cdCNlbmRpZlxuXHQjaWZkZWYgVVNFX1NQRUNVTEFSX0lOVEVOU0lUWU1BUFxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIHNwZWN1bGFySW50ZW5zaXR5TWFwO1xuXHQjZW5kaWZcbiNlbmRpZlxuI2lmZGVmIFVTRV9DTEVBUkNPQVRcblx0dW5pZm9ybSBmbG9hdCBjbGVhcmNvYXQ7XG5cdHVuaWZvcm0gZmxvYXQgY2xlYXJjb2F0Um91Z2huZXNzO1xuI2VuZGlmXG4jaWZkZWYgVVNFX0lSSURFU0NFTkNFXG5cdHVuaWZvcm0gZmxvYXQgaXJpZGVzY2VuY2U7XG5cdHVuaWZvcm0gZmxvYXQgaXJpZGVzY2VuY2VJT1I7XG5cdHVuaWZvcm0gZmxvYXQgaXJpZGVzY2VuY2VUaGlja25lc3NNaW5pbXVtO1xuXHR1bmlmb3JtIGZsb2F0IGlyaWRlc2NlbmNlVGhpY2tuZXNzTWF4aW11bTtcbiNlbmRpZlxuI2lmZGVmIFVTRV9TSEVFTlxuXHR1bmlmb3JtIHZlYzMgc2hlZW5Db2xvcjtcblx0dW5pZm9ybSBmbG9hdCBzaGVlblJvdWdobmVzcztcblx0I2lmZGVmIFVTRV9TSEVFTl9DT0xPUk1BUFxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIHNoZWVuQ29sb3JNYXA7XG5cdCNlbmRpZlxuXHQjaWZkZWYgVVNFX1NIRUVOX1JPVUdITkVTU01BUFxuXHRcdHVuaWZvcm0gc2FtcGxlcjJEIHNoZWVuUm91Z2huZXNzTWFwO1xuXHQjZW5kaWZcbiNlbmRpZlxuI2lmZGVmIFVTRV9BTklTT1RST1BZXG5cdHVuaWZvcm0gdmVjMiBhbmlzb3Ryb3B5VmVjdG9yO1xuXHQjaWZkZWYgVVNFX0FOSVNPVFJPUFlNQVBcblx0XHR1bmlmb3JtIHNhbXBsZXIyRCBhbmlzb3Ryb3B5TWFwO1xuXHQjZW5kaWZcbiNlbmRpZlxudmFyeWluZyB2ZWMzIHZWaWV3UG9zaXRpb247XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHBhY2tpbmc+XG4jaW5jbHVkZSA8ZGl0aGVyaW5nX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Y29sb3JfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDx1dl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YWxwaGF0ZXN0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YW9tYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGVtaXNzaXZlbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8aXJpZGVzY2VuY2VfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Y3ViZV91dl9yZWZsZWN0aW9uX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGVudm1hcF9jb21tb25fcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxlbnZtYXBfcGh5c2ljYWxfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxmb2dfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodHNfcGFyc19iZWdpbj5cbiNpbmNsdWRlIDxub3JtYWxfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodHNfcGh5c2ljYWxfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDx0cmFuc21pc3Npb25fcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxzaGFkb3dtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxidW1wbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bm9ybWFsbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Y2xlYXJjb2F0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8aXJpZGVzY2VuY2VfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxyb3VnaG5lc3NtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxtZXRhbG5lc3NtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX2ZyYWdtZW50Plxudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50PlxuXHR2ZWM0IGRpZmZ1c2VDb2xvciA9IHZlYzQoIGRpZmZ1c2UsIG9wYWNpdHkgKTtcblx0UmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQgPSBSZWZsZWN0ZWRMaWdodCggdmVjMyggMC4wICksIHZlYzMoIDAuMCApLCB2ZWMzKCAwLjAgKSwgdmVjMyggMC4wICkgKTtcblx0dmVjMyB0b3RhbEVtaXNzaXZlUmFkaWFuY2UgPSBlbWlzc2l2ZTtcblx0I2luY2x1ZGUgPGxvZ2RlcHRoYnVmX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8Y29sb3JfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxhbHBoYW1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGFscGhhdGVzdF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPHJvdWdobmVzc21hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPG1ldGFsbmVzc21hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPG5vcm1hbF9mcmFnbWVudF9iZWdpbj5cblx0I2luY2x1ZGUgPG5vcm1hbF9mcmFnbWVudF9tYXBzPlxuXHQjaW5jbHVkZSA8Y2xlYXJjb2F0X25vcm1hbF9mcmFnbWVudF9iZWdpbj5cblx0I2luY2x1ZGUgPGNsZWFyY29hdF9ub3JtYWxfZnJhZ21lbnRfbWFwcz5cblx0I2luY2x1ZGUgPGVtaXNzaXZlbWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bGlnaHRzX3BoeXNpY2FsX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bGlnaHRzX2ZyYWdtZW50X2JlZ2luPlxuXHQjaW5jbHVkZSA8bGlnaHRzX2ZyYWdtZW50X21hcHM+XG5cdCNpbmNsdWRlIDxsaWdodHNfZnJhZ21lbnRfZW5kPlxuXHQjaW5jbHVkZSA8YW9tYXBfZnJhZ21lbnQ+XG5cdHZlYzMgdG90YWxEaWZmdXNlID0gcmVmbGVjdGVkTGlnaHQuZGlyZWN0RGlmZnVzZSArIHJlZmxlY3RlZExpZ2h0LmluZGlyZWN0RGlmZnVzZTtcblx0dmVjMyB0b3RhbFNwZWN1bGFyID0gcmVmbGVjdGVkTGlnaHQuZGlyZWN0U3BlY3VsYXIgKyByZWZsZWN0ZWRMaWdodC5pbmRpcmVjdFNwZWN1bGFyO1xuXHQjaW5jbHVkZSA8dHJhbnNtaXNzaW9uX2ZyYWdtZW50PlxuXHR2ZWMzIG91dGdvaW5nTGlnaHQgPSB0b3RhbERpZmZ1c2UgKyB0b3RhbFNwZWN1bGFyICsgdG90YWxFbWlzc2l2ZVJhZGlhbmNlO1xuXHQjaWZkZWYgVVNFX1NIRUVOXG5cdFx0ZmxvYXQgc2hlZW5FbmVyZ3lDb21wID0gMS4wIC0gMC4xNTcgKiBtYXgzKCBtYXRlcmlhbC5zaGVlbkNvbG9yICk7XG5cdFx0b3V0Z29pbmdMaWdodCA9IG91dGdvaW5nTGlnaHQgKiBzaGVlbkVuZXJneUNvbXAgKyBzaGVlblNwZWN1bGFyO1xuXHQjZW5kaWZcblx0I2lmZGVmIFVTRV9DTEVBUkNPQVRcblx0XHRmbG9hdCBkb3ROVmNjID0gc2F0dXJhdGUoIGRvdCggZ2VvbWV0cnkuY2xlYXJjb2F0Tm9ybWFsLCBnZW9tZXRyeS52aWV3RGlyICkgKTtcblx0XHR2ZWMzIEZjYyA9IEZfU2NobGljayggbWF0ZXJpYWwuY2xlYXJjb2F0RjAsIG1hdGVyaWFsLmNsZWFyY29hdEY5MCwgZG90TlZjYyApO1xuXHRcdG91dGdvaW5nTGlnaHQgPSBvdXRnb2luZ0xpZ2h0ICogKCAxLjAgLSBtYXRlcmlhbC5jbGVhcmNvYXQgKiBGY2MgKSArIGNsZWFyY29hdFNwZWN1bGFyICogbWF0ZXJpYWwuY2xlYXJjb2F0O1xuXHQjZW5kaWZcblx0I2luY2x1ZGUgPG91dHB1dF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPHRvbmVtYXBwaW5nX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8ZW5jb2RpbmdzX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8Zm9nX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8cHJlbXVsdGlwbGllZF9hbHBoYV9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGRpdGhlcmluZ19mcmFnbWVudD5cbn0iLG1lc2h0b29uX3ZlcnQ6IiNkZWZpbmUgVE9PTlxudmFyeWluZyB2ZWMzIHZWaWV3UG9zaXRpb247XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHV2X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGRpc3BsYWNlbWVudG1hcF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxjb2xvcl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxmb2dfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8bm9ybWFsX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPG1vcnBodGFyZ2V0X3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPHNraW5uaW5nX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPHNoYWRvd21hcF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc192ZXJ0ZXg+XG52b2lkIG1haW4oKSB7XG5cdCNpbmNsdWRlIDx1dl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjb2xvcl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaGNvbG9yX3ZlcnRleD5cblx0I2luY2x1ZGUgPGJlZ2lubm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBobm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPHNraW5iYXNlX3ZlcnRleD5cblx0I2luY2x1ZGUgPHNraW5ub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGVmYXVsdG5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5pbmdfdmVydGV4PlxuXHQjaW5jbHVkZSA8ZGlzcGxhY2VtZW50bWFwX3ZlcnRleD5cblx0I2luY2x1ZGUgPHByb2plY3RfdmVydGV4PlxuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfdmVydGV4PlxuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX3ZlcnRleD5cblx0dlZpZXdQb3NpdGlvbiA9IC0gbXZQb3NpdGlvbi54eXo7XG5cdCNpbmNsdWRlIDx3b3JsZHBvc192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxzaGFkb3dtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbn0iLG1lc2h0b29uX2ZyYWc6IiNkZWZpbmUgVE9PTlxudW5pZm9ybSB2ZWMzIGRpZmZ1c2U7XG51bmlmb3JtIHZlYzMgZW1pc3NpdmU7XG51bmlmb3JtIGZsb2F0IG9wYWNpdHk7XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHBhY2tpbmc+XG4jaW5jbHVkZSA8ZGl0aGVyaW5nX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Y29sb3JfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDx1dl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YWxwaGF0ZXN0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YW9tYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGVtaXNzaXZlbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Z3JhZGllbnRtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxmb2dfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxic2Rmcz5cbiNpbmNsdWRlIDxsaWdodHNfcGFyc19iZWdpbj5cbiNpbmNsdWRlIDxub3JtYWxfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsaWdodHNfdG9vbl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPHNoYWRvd21hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGJ1bXBtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxub3JtYWxtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX2ZyYWdtZW50Plxudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50PlxuXHR2ZWM0IGRpZmZ1c2VDb2xvciA9IHZlYzQoIGRpZmZ1c2UsIG9wYWNpdHkgKTtcblx0UmVmbGVjdGVkTGlnaHQgcmVmbGVjdGVkTGlnaHQgPSBSZWZsZWN0ZWRMaWdodCggdmVjMyggMC4wICksIHZlYzMoIDAuMCApLCB2ZWMzKCAwLjAgKSwgdmVjMyggMC4wICkgKTtcblx0dmVjMyB0b3RhbEVtaXNzaXZlUmFkaWFuY2UgPSBlbWlzc2l2ZTtcblx0I2luY2x1ZGUgPGxvZ2RlcHRoYnVmX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8bWFwX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8Y29sb3JfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxhbHBoYW1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGFscGhhdGVzdF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPG5vcm1hbF9mcmFnbWVudF9iZWdpbj5cblx0I2luY2x1ZGUgPG5vcm1hbF9mcmFnbWVudF9tYXBzPlxuXHQjaW5jbHVkZSA8ZW1pc3NpdmVtYXBfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxsaWdodHNfdG9vbl9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGxpZ2h0c19mcmFnbWVudF9iZWdpbj5cblx0I2luY2x1ZGUgPGxpZ2h0c19mcmFnbWVudF9tYXBzPlxuXHQjaW5jbHVkZSA8bGlnaHRzX2ZyYWdtZW50X2VuZD5cblx0I2luY2x1ZGUgPGFvbWFwX2ZyYWdtZW50PlxuXHR2ZWMzIG91dGdvaW5nTGlnaHQgPSByZWZsZWN0ZWRMaWdodC5kaXJlY3REaWZmdXNlICsgcmVmbGVjdGVkTGlnaHQuaW5kaXJlY3REaWZmdXNlICsgdG90YWxFbWlzc2l2ZVJhZGlhbmNlO1xuXHQjaW5jbHVkZSA8b3V0cHV0X2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8dG9uZW1hcHBpbmdfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxlbmNvZGluZ3NfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxmb2dfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxwcmVtdWx0aXBsaWVkX2FscGhhX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8ZGl0aGVyaW5nX2ZyYWdtZW50PlxufSIscG9pbnRzX3ZlcnQ6InVuaWZvcm0gZmxvYXQgc2l6ZTtcbnVuaWZvcm0gZmxvYXQgc2NhbGU7XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPGNvbG9yX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGZvZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxtb3JwaHRhcmdldF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc192ZXJ0ZXg+XG4jaWZkZWYgVVNFX1BPSU5UU19VVlxuXHR2YXJ5aW5nIHZlYzIgdlV2O1xuXHR1bmlmb3JtIG1hdDMgdXZUcmFuc2Zvcm07XG4jZW5kaWZcbnZvaWQgbWFpbigpIHtcblx0I2lmZGVmIFVTRV9QT0lOVFNfVVZcblx0XHR2VXYgPSAoIHV2VHJhbnNmb3JtICogdmVjMyggdXYsIDEgKSApLnh5O1xuXHQjZW5kaWZcblx0I2luY2x1ZGUgPGNvbG9yX3ZlcnRleD5cblx0I2luY2x1ZGUgPG1vcnBoY29sb3JfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8cHJvamVjdF92ZXJ0ZXg+XG5cdGdsX1BvaW50U2l6ZSA9IHNpemU7XG5cdCNpZmRlZiBVU0VfU0laRUFUVEVOVUFUSU9OXG5cdFx0Ym9vbCBpc1BlcnNwZWN0aXZlID0gaXNQZXJzcGVjdGl2ZU1hdHJpeCggcHJvamVjdGlvbk1hdHJpeCApO1xuXHRcdGlmICggaXNQZXJzcGVjdGl2ZSApIGdsX1BvaW50U2l6ZSAqPSAoIHNjYWxlIC8gLSBtdlBvc2l0aW9uLnogKTtcblx0I2VuZGlmXG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfdmVydGV4PlxuXHQjaW5jbHVkZSA8d29ybGRwb3NfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbn0iLHBvaW50c19mcmFnOiJ1bmlmb3JtIHZlYzMgZGlmZnVzZTtcbnVuaWZvcm0gZmxvYXQgb3BhY2l0eTtcbiNpbmNsdWRlIDxjb21tb24+XG4jaW5jbHVkZSA8Y29sb3JfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxtYXBfcGFydGljbGVfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxhbHBoYXRlc3RfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxmb2dfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX2ZyYWdtZW50Plxudm9pZCBtYWluKCkge1xuXHQjaW5jbHVkZSA8Y2xpcHBpbmdfcGxhbmVzX2ZyYWdtZW50PlxuXHR2ZWMzIG91dGdvaW5nTGlnaHQgPSB2ZWMzKCAwLjAgKTtcblx0dmVjNCBkaWZmdXNlQ29sb3IgPSB2ZWM0KCBkaWZmdXNlLCBvcGFjaXR5ICk7XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9mcmFnbWVudD5cblx0I2luY2x1ZGUgPG1hcF9wYXJ0aWNsZV9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGNvbG9yX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8YWxwaGF0ZXN0X2ZyYWdtZW50PlxuXHRvdXRnb2luZ0xpZ2h0ID0gZGlmZnVzZUNvbG9yLnJnYjtcblx0I2luY2x1ZGUgPG91dHB1dF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPHRvbmVtYXBwaW5nX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8ZW5jb2RpbmdzX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8Zm9nX2ZyYWdtZW50PlxuXHQjaW5jbHVkZSA8cHJlbXVsdGlwbGllZF9hbHBoYV9mcmFnbWVudD5cbn0iLHNoYWRvd192ZXJ0OiIjaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPGZvZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxtb3JwaHRhcmdldF9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxza2lubmluZ19wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9wYXJzX3ZlcnRleD5cbiNpbmNsdWRlIDxzaGFkb3dtYXBfcGFyc192ZXJ0ZXg+XG52b2lkIG1haW4oKSB7XG5cdCNpbmNsdWRlIDxiZWdpbm5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxtb3JwaG5vcm1hbF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxza2luYmFzZV92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxza2lubm9ybWFsX3ZlcnRleD5cblx0I2luY2x1ZGUgPGRlZmF1bHRub3JtYWxfdmVydGV4PlxuXHQjaW5jbHVkZSA8YmVnaW5fdmVydGV4PlxuXHQjaW5jbHVkZSA8bW9ycGh0YXJnZXRfdmVydGV4PlxuXHQjaW5jbHVkZSA8c2tpbm5pbmdfdmVydGV4PlxuXHQjaW5jbHVkZSA8cHJvamVjdF92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl92ZXJ0ZXg+XG5cdCNpbmNsdWRlIDx3b3JsZHBvc192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxzaGFkb3dtYXBfdmVydGV4PlxuXHQjaW5jbHVkZSA8Zm9nX3ZlcnRleD5cbn0iLHNoYWRvd19mcmFnOiJ1bmlmb3JtIHZlYzMgY29sb3I7XG51bmlmb3JtIGZsb2F0IG9wYWNpdHk7XG4jaW5jbHVkZSA8Y29tbW9uPlxuI2luY2x1ZGUgPHBhY2tpbmc+XG4jaW5jbHVkZSA8Zm9nX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YnNkZnM+XG4jaW5jbHVkZSA8bGlnaHRzX3BhcnNfYmVnaW4+XG4jaW5jbHVkZSA8bG9nZGVwdGhidWZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxzaGFkb3dtYXBfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxzaGFkb3dtYXNrX3BhcnNfZnJhZ21lbnQ+XG52b2lkIG1haW4oKSB7XG5cdCNpbmNsdWRlIDxsb2dkZXB0aGJ1Zl9mcmFnbWVudD5cblx0Z2xfRnJhZ0NvbG9yID0gdmVjNCggY29sb3IsIG9wYWNpdHkgKiAoIDEuMCAtIGdldFNoYWRvd01hc2soKSApICk7XG5cdCNpbmNsdWRlIDx0b25lbWFwcGluZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGVuY29kaW5nc19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGZvZ19mcmFnbWVudD5cbn0iLHNwcml0ZV92ZXJ0OiJ1bmlmb3JtIGZsb2F0IHJvdGF0aW9uO1xudW5pZm9ybSB2ZWMyIGNlbnRlcjtcbiNpbmNsdWRlIDxjb21tb24+XG4jaW5jbHVkZSA8dXZfcGFyc192ZXJ0ZXg+XG4jaW5jbHVkZSA8Zm9nX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3BhcnNfdmVydGV4PlxuI2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19wYXJzX3ZlcnRleD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPHV2X3ZlcnRleD5cblx0dmVjNCBtdlBvc2l0aW9uID0gbW9kZWxWaWV3TWF0cml4ICogdmVjNCggMC4wLCAwLjAsIDAuMCwgMS4wICk7XG5cdHZlYzIgc2NhbGU7XG5cdHNjYWxlLnggPSBsZW5ndGgoIHZlYzMoIG1vZGVsTWF0cml4WyAwIF0ueCwgbW9kZWxNYXRyaXhbIDAgXS55LCBtb2RlbE1hdHJpeFsgMCBdLnogKSApO1xuXHRzY2FsZS55ID0gbGVuZ3RoKCB2ZWMzKCBtb2RlbE1hdHJpeFsgMSBdLngsIG1vZGVsTWF0cml4WyAxIF0ueSwgbW9kZWxNYXRyaXhbIDEgXS56ICkgKTtcblx0I2lmbmRlZiBVU0VfU0laRUFUVEVOVUFUSU9OXG5cdFx0Ym9vbCBpc1BlcnNwZWN0aXZlID0gaXNQZXJzcGVjdGl2ZU1hdHJpeCggcHJvamVjdGlvbk1hdHJpeCApO1xuXHRcdGlmICggaXNQZXJzcGVjdGl2ZSApIHNjYWxlICo9IC0gbXZQb3NpdGlvbi56O1xuXHQjZW5kaWZcblx0dmVjMiBhbGlnbmVkUG9zaXRpb24gPSAoIHBvc2l0aW9uLnh5IC0gKCBjZW50ZXIgLSB2ZWMyKCAwLjUgKSApICkgKiBzY2FsZTtcblx0dmVjMiByb3RhdGVkUG9zaXRpb247XG5cdHJvdGF0ZWRQb3NpdGlvbi54ID0gY29zKCByb3RhdGlvbiApICogYWxpZ25lZFBvc2l0aW9uLnggLSBzaW4oIHJvdGF0aW9uICkgKiBhbGlnbmVkUG9zaXRpb24ueTtcblx0cm90YXRlZFBvc2l0aW9uLnkgPSBzaW4oIHJvdGF0aW9uICkgKiBhbGlnbmVkUG9zaXRpb24ueCArIGNvcyggcm90YXRpb24gKSAqIGFsaWduZWRQb3NpdGlvbi55O1xuXHRtdlBvc2l0aW9uLnh5ICs9IHJvdGF0ZWRQb3NpdGlvbjtcblx0Z2xfUG9zaXRpb24gPSBwcm9qZWN0aW9uTWF0cml4ICogbXZQb3NpdGlvbjtcblx0I2luY2x1ZGUgPGxvZ2RlcHRoYnVmX3ZlcnRleD5cblx0I2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc192ZXJ0ZXg+XG5cdCNpbmNsdWRlIDxmb2dfdmVydGV4PlxufSIsc3ByaXRlX2ZyYWc6InVuaWZvcm0gdmVjMyBkaWZmdXNlO1xudW5pZm9ybSBmbG9hdCBvcGFjaXR5O1xuI2luY2x1ZGUgPGNvbW1vbj5cbiNpbmNsdWRlIDx1dl9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPG1hcF9wYXJzX2ZyYWdtZW50PlxuI2luY2x1ZGUgPGFscGhhbWFwX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8YWxwaGF0ZXN0X3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8Zm9nX3BhcnNfZnJhZ21lbnQ+XG4jaW5jbHVkZSA8bG9nZGVwdGhidWZfcGFyc19mcmFnbWVudD5cbiNpbmNsdWRlIDxjbGlwcGluZ19wbGFuZXNfcGFyc19mcmFnbWVudD5cbnZvaWQgbWFpbigpIHtcblx0I2luY2x1ZGUgPGNsaXBwaW5nX3BsYW5lc19mcmFnbWVudD5cblx0dmVjMyBvdXRnb2luZ0xpZ2h0ID0gdmVjMyggMC4wICk7XG5cdHZlYzQgZGlmZnVzZUNvbG9yID0gdmVjNCggZGlmZnVzZSwgb3BhY2l0eSApO1xuXHQjaW5jbHVkZSA8bG9nZGVwdGhidWZfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxtYXBfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDxhbHBoYW1hcF9mcmFnbWVudD5cblx0I2luY2x1ZGUgPGFscGhhdGVzdF9mcmFnbWVudD5cblx0b3V0Z29pbmdMaWdodCA9IGRpZmZ1c2VDb2xvci5yZ2I7XG5cdCNpbmNsdWRlIDxvdXRwdXRfZnJhZ21lbnQ+XG5cdCNpbmNsdWRlIDx0b25lbWFwcGluZ19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGVuY29kaW5nc19mcmFnbWVudD5cblx0I2luY2x1ZGUgPGZvZ19mcmFnbWVudD5cbn0ifSxubz17Y29tbW9uOntkaWZmdXNlOnt2YWx1ZTpuZXcgSmkoMTY3NzcyMTUpfSxvcGFjaXR5Ont2YWx1ZToxfSxtYXA6e3ZhbHVlOm51bGx9LG1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSxhbHBoYU1hcDp7dmFsdWU6bnVsbH0sYWxwaGFNYXBUcmFuc2Zvcm06e3ZhbHVlOm5ldyBQdH0sYWxwaGFUZXN0Ont2YWx1ZTowfX0sc3BlY3VsYXJtYXA6e3NwZWN1bGFyTWFwOnt2YWx1ZTpudWxsfSxzcGVjdWxhck1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fX0sZW52bWFwOntlbnZNYXA6e3ZhbHVlOm51bGx9LGZsaXBFbnZNYXA6e3ZhbHVlOi0xfSxyZWZsZWN0aXZpdHk6e3ZhbHVlOjF9LGlvcjp7dmFsdWU6MS41fSxyZWZyYWN0aW9uUmF0aW86e3ZhbHVlOi45OH19LGFvbWFwOnthb01hcDp7dmFsdWU6bnVsbH0sYW9NYXBJbnRlbnNpdHk6e3ZhbHVlOjF9LGFvTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9fSxsaWdodG1hcDp7bGlnaHRNYXA6e3ZhbHVlOm51bGx9LGxpZ2h0TWFwSW50ZW5zaXR5Ont2YWx1ZToxfSxsaWdodE1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fX0sYnVtcG1hcDp7YnVtcE1hcDp7dmFsdWU6bnVsbH0sYnVtcE1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSxidW1wU2NhbGU6e3ZhbHVlOjF9fSxub3JtYWxtYXA6e25vcm1hbE1hcDp7dmFsdWU6bnVsbH0sbm9ybWFsTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9LG5vcm1hbFNjYWxlOnt2YWx1ZTpuZXcgTHQoMSwxKX19LGRpc3BsYWNlbWVudG1hcDp7ZGlzcGxhY2VtZW50TWFwOnt2YWx1ZTpudWxsfSxkaXNwbGFjZW1lbnRNYXBUcmFuc2Zvcm06e3ZhbHVlOm5ldyBQdH0sZGlzcGxhY2VtZW50U2NhbGU6e3ZhbHVlOjF9LGRpc3BsYWNlbWVudEJpYXM6e3ZhbHVlOjB9fSxlbWlzc2l2ZW1hcDp7ZW1pc3NpdmVNYXA6e3ZhbHVlOm51bGx9LGVtaXNzaXZlTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9fSxtZXRhbG5lc3NtYXA6e21ldGFsbmVzc01hcDp7dmFsdWU6bnVsbH0sbWV0YWxuZXNzTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9fSxyb3VnaG5lc3NtYXA6e3JvdWdobmVzc01hcDp7dmFsdWU6bnVsbH0scm91Z2huZXNzTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9fSxncmFkaWVudG1hcDp7Z3JhZGllbnRNYXA6e3ZhbHVlOm51bGx9fSxmb2c6e2ZvZ0RlbnNpdHk6e3ZhbHVlOjI1ZS01fSxmb2dOZWFyOnt2YWx1ZToxfSxmb2dGYXI6e3ZhbHVlOjJlM30sZm9nQ29sb3I6e3ZhbHVlOm5ldyBKaSgxNjc3NzIxNSl9fSxsaWdodHM6e2FtYmllbnRMaWdodENvbG9yOnt2YWx1ZTpbXX0sbGlnaHRQcm9iZTp7dmFsdWU6W119LGRpcmVjdGlvbmFsTGlnaHRzOnt2YWx1ZTpbXSxwcm9wZXJ0aWVzOntkaXJlY3Rpb246e30sY29sb3I6e319fSxkaXJlY3Rpb25hbExpZ2h0U2hhZG93czp7dmFsdWU6W10scHJvcGVydGllczp7c2hhZG93Qmlhczp7fSxzaGFkb3dOb3JtYWxCaWFzOnt9LHNoYWRvd1JhZGl1czp7fSxzaGFkb3dNYXBTaXplOnt9fX0sZGlyZWN0aW9uYWxTaGFkb3dNYXA6e3ZhbHVlOltdfSxkaXJlY3Rpb25hbFNoYWRvd01hdHJpeDp7dmFsdWU6W119LHNwb3RMaWdodHM6e3ZhbHVlOltdLHByb3BlcnRpZXM6e2NvbG9yOnt9LHBvc2l0aW9uOnt9LGRpcmVjdGlvbjp7fSxkaXN0YW5jZTp7fSxjb25lQ29zOnt9LHBlbnVtYnJhQ29zOnt9LGRlY2F5Ont9fX0sc3BvdExpZ2h0U2hhZG93czp7dmFsdWU6W10scHJvcGVydGllczp7c2hhZG93Qmlhczp7fSxzaGFkb3dOb3JtYWxCaWFzOnt9LHNoYWRvd1JhZGl1czp7fSxzaGFkb3dNYXBTaXplOnt9fX0sc3BvdExpZ2h0TWFwOnt2YWx1ZTpbXX0sc3BvdFNoYWRvd01hcDp7dmFsdWU6W119LHNwb3RMaWdodE1hdHJpeDp7dmFsdWU6W119LHBvaW50TGlnaHRzOnt2YWx1ZTpbXSxwcm9wZXJ0aWVzOntjb2xvcjp7fSxwb3NpdGlvbjp7fSxkZWNheTp7fSxkaXN0YW5jZTp7fX19LHBvaW50TGlnaHRTaGFkb3dzOnt2YWx1ZTpbXSxwcm9wZXJ0aWVzOntzaGFkb3dCaWFzOnt9LHNoYWRvd05vcm1hbEJpYXM6e30sc2hhZG93UmFkaXVzOnt9LHNoYWRvd01hcFNpemU6e30sc2hhZG93Q2FtZXJhTmVhcjp7fSxzaGFkb3dDYW1lcmFGYXI6e319fSxwb2ludFNoYWRvd01hcDp7dmFsdWU6W119LHBvaW50U2hhZG93TWF0cml4Ont2YWx1ZTpbXX0saGVtaXNwaGVyZUxpZ2h0czp7dmFsdWU6W10scHJvcGVydGllczp7ZGlyZWN0aW9uOnt9LHNreUNvbG9yOnt9LGdyb3VuZENvbG9yOnt9fX0scmVjdEFyZWFMaWdodHM6e3ZhbHVlOltdLHByb3BlcnRpZXM6e2NvbG9yOnt9LHBvc2l0aW9uOnt9LHdpZHRoOnt9LGhlaWdodDp7fX19LGx0Y18xOnt2YWx1ZTpudWxsfSxsdGNfMjp7dmFsdWU6bnVsbH19LHBvaW50czp7ZGlmZnVzZTp7dmFsdWU6bmV3IEppKDE2Nzc3MjE1KX0sb3BhY2l0eTp7dmFsdWU6MX0sc2l6ZTp7dmFsdWU6MX0sc2NhbGU6e3ZhbHVlOjF9LG1hcDp7dmFsdWU6bnVsbH0sYWxwaGFNYXA6e3ZhbHVlOm51bGx9LGFscGhhTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9LGFscGhhVGVzdDp7dmFsdWU6MH0sdXZUcmFuc2Zvcm06e3ZhbHVlOm5ldyBQdH19LHNwcml0ZTp7ZGlmZnVzZTp7dmFsdWU6bmV3IEppKDE2Nzc3MjE1KX0sb3BhY2l0eTp7dmFsdWU6MX0sY2VudGVyOnt2YWx1ZTpuZXcgTHQoLjUsLjUpfSxyb3RhdGlvbjp7dmFsdWU6MH0sbWFwOnt2YWx1ZTpudWxsfSxtYXBUcmFuc2Zvcm06e3ZhbHVlOm5ldyBQdH0sYWxwaGFNYXA6e3ZhbHVlOm51bGx9LGFscGhhTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9LGFscGhhVGVzdDp7dmFsdWU6MH19fSxpbz17YmFzaWM6e3VuaWZvcm1zOkhyKFtuby5jb21tb24sbm8uc3BlY3VsYXJtYXAsbm8uZW52bWFwLG5vLmFvbWFwLG5vLmxpZ2h0bWFwLG5vLmZvZ10pLHZlcnRleFNoYWRlcjp0by5tZXNoYmFzaWNfdmVydCxmcmFnbWVudFNoYWRlcjp0by5tZXNoYmFzaWNfZnJhZ30sbGFtYmVydDp7dW5pZm9ybXM6SHIoW25vLmNvbW1vbixuby5zcGVjdWxhcm1hcCxuby5lbnZtYXAsbm8uYW9tYXAsbm8ubGlnaHRtYXAsbm8uZW1pc3NpdmVtYXAsbm8uYnVtcG1hcCxuby5ub3JtYWxtYXAsbm8uZGlzcGxhY2VtZW50bWFwLG5vLmZvZyxuby5saWdodHMse2VtaXNzaXZlOnt2YWx1ZTpuZXcgSmkoMCl9fV0pLHZlcnRleFNoYWRlcjp0by5tZXNobGFtYmVydF92ZXJ0LGZyYWdtZW50U2hhZGVyOnRvLm1lc2hsYW1iZXJ0X2ZyYWd9LHBob25nOnt1bmlmb3JtczpIcihbbm8uY29tbW9uLG5vLnNwZWN1bGFybWFwLG5vLmVudm1hcCxuby5hb21hcCxuby5saWdodG1hcCxuby5lbWlzc2l2ZW1hcCxuby5idW1wbWFwLG5vLm5vcm1hbG1hcCxuby5kaXNwbGFjZW1lbnRtYXAsbm8uZm9nLG5vLmxpZ2h0cyx7ZW1pc3NpdmU6e3ZhbHVlOm5ldyBKaSgwKX0sc3BlY3VsYXI6e3ZhbHVlOm5ldyBKaSgxMTE4NDgxKX0sc2hpbmluZXNzOnt2YWx1ZTozMH19XSksdmVydGV4U2hhZGVyOnRvLm1lc2hwaG9uZ192ZXJ0LGZyYWdtZW50U2hhZGVyOnRvLm1lc2hwaG9uZ19mcmFnfSxzdGFuZGFyZDp7dW5pZm9ybXM6SHIoW25vLmNvbW1vbixuby5lbnZtYXAsbm8uYW9tYXAsbm8ubGlnaHRtYXAsbm8uZW1pc3NpdmVtYXAsbm8uYnVtcG1hcCxuby5ub3JtYWxtYXAsbm8uZGlzcGxhY2VtZW50bWFwLG5vLnJvdWdobmVzc21hcCxuby5tZXRhbG5lc3NtYXAsbm8uZm9nLG5vLmxpZ2h0cyx7ZW1pc3NpdmU6e3ZhbHVlOm5ldyBKaSgwKX0scm91Z2huZXNzOnt2YWx1ZToxfSxtZXRhbG5lc3M6e3ZhbHVlOjB9LGVudk1hcEludGVuc2l0eTp7dmFsdWU6MX19XSksdmVydGV4U2hhZGVyOnRvLm1lc2hwaHlzaWNhbF92ZXJ0LGZyYWdtZW50U2hhZGVyOnRvLm1lc2hwaHlzaWNhbF9mcmFnfSx0b29uOnt1bmlmb3JtczpIcihbbm8uY29tbW9uLG5vLmFvbWFwLG5vLmxpZ2h0bWFwLG5vLmVtaXNzaXZlbWFwLG5vLmJ1bXBtYXAsbm8ubm9ybWFsbWFwLG5vLmRpc3BsYWNlbWVudG1hcCxuby5ncmFkaWVudG1hcCxuby5mb2csbm8ubGlnaHRzLHtlbWlzc2l2ZTp7dmFsdWU6bmV3IEppKDApfX1dKSx2ZXJ0ZXhTaGFkZXI6dG8ubWVzaHRvb25fdmVydCxmcmFnbWVudFNoYWRlcjp0by5tZXNodG9vbl9mcmFnfSxtYXRjYXA6e3VuaWZvcm1zOkhyKFtuby5jb21tb24sbm8uYnVtcG1hcCxuby5ub3JtYWxtYXAsbm8uZGlzcGxhY2VtZW50bWFwLG5vLmZvZyx7bWF0Y2FwOnt2YWx1ZTpudWxsfX1dKSx2ZXJ0ZXhTaGFkZXI6dG8ubWVzaG1hdGNhcF92ZXJ0LGZyYWdtZW50U2hhZGVyOnRvLm1lc2htYXRjYXBfZnJhZ30scG9pbnRzOnt1bmlmb3JtczpIcihbbm8ucG9pbnRzLG5vLmZvZ10pLHZlcnRleFNoYWRlcjp0by5wb2ludHNfdmVydCxmcmFnbWVudFNoYWRlcjp0by5wb2ludHNfZnJhZ30sZGFzaGVkOnt1bmlmb3JtczpIcihbbm8uY29tbW9uLG5vLmZvZyx7c2NhbGU6e3ZhbHVlOjF9LGRhc2hTaXplOnt2YWx1ZToxfSx0b3RhbFNpemU6e3ZhbHVlOjJ9fV0pLHZlcnRleFNoYWRlcjp0by5saW5lZGFzaGVkX3ZlcnQsZnJhZ21lbnRTaGFkZXI6dG8ubGluZWRhc2hlZF9mcmFnfSxkZXB0aDp7dW5pZm9ybXM6SHIoW25vLmNvbW1vbixuby5kaXNwbGFjZW1lbnRtYXBdKSx2ZXJ0ZXhTaGFkZXI6dG8uZGVwdGhfdmVydCxmcmFnbWVudFNoYWRlcjp0by5kZXB0aF9mcmFnfSxub3JtYWw6e3VuaWZvcm1zOkhyKFtuby5jb21tb24sbm8uYnVtcG1hcCxuby5ub3JtYWxtYXAsbm8uZGlzcGxhY2VtZW50bWFwLHtvcGFjaXR5Ont2YWx1ZToxfX1dKSx2ZXJ0ZXhTaGFkZXI6dG8ubWVzaG5vcm1hbF92ZXJ0LGZyYWdtZW50U2hhZGVyOnRvLm1lc2hub3JtYWxfZnJhZ30sc3ByaXRlOnt1bmlmb3JtczpIcihbbm8uc3ByaXRlLG5vLmZvZ10pLHZlcnRleFNoYWRlcjp0by5zcHJpdGVfdmVydCxmcmFnbWVudFNoYWRlcjp0by5zcHJpdGVfZnJhZ30sYmFja2dyb3VuZDp7dW5pZm9ybXM6e3V2VHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9LHQyRDp7dmFsdWU6bnVsbH0sYmFja2dyb3VuZEludGVuc2l0eTp7dmFsdWU6MX19LHZlcnRleFNoYWRlcjp0by5iYWNrZ3JvdW5kX3ZlcnQsZnJhZ21lbnRTaGFkZXI6dG8uYmFja2dyb3VuZF9mcmFnfSxiYWNrZ3JvdW5kQ3ViZTp7dW5pZm9ybXM6e2Vudk1hcDp7dmFsdWU6bnVsbH0sZmxpcEVudk1hcDp7dmFsdWU6LTF9LGJhY2tncm91bmRCbHVycmluZXNzOnt2YWx1ZTowfSxiYWNrZ3JvdW5kSW50ZW5zaXR5Ont2YWx1ZToxfX0sdmVydGV4U2hhZGVyOnRvLmJhY2tncm91bmRDdWJlX3ZlcnQsZnJhZ21lbnRTaGFkZXI6dG8uYmFja2dyb3VuZEN1YmVfZnJhZ30sY3ViZTp7dW5pZm9ybXM6e3RDdWJlOnt2YWx1ZTpudWxsfSx0RmxpcDp7dmFsdWU6LTF9LG9wYWNpdHk6e3ZhbHVlOjF9fSx2ZXJ0ZXhTaGFkZXI6dG8uY3ViZV92ZXJ0LGZyYWdtZW50U2hhZGVyOnRvLmN1YmVfZnJhZ30sZXF1aXJlY3Q6e3VuaWZvcm1zOnt0RXF1aXJlY3Q6e3ZhbHVlOm51bGx9fSx2ZXJ0ZXhTaGFkZXI6dG8uZXF1aXJlY3RfdmVydCxmcmFnbWVudFNoYWRlcjp0by5lcXVpcmVjdF9mcmFnfSxkaXN0YW5jZVJHQkE6e3VuaWZvcm1zOkhyKFtuby5jb21tb24sbm8uZGlzcGxhY2VtZW50bWFwLHtyZWZlcmVuY2VQb3NpdGlvbjp7dmFsdWU6bmV3IGRufSxuZWFyRGlzdGFuY2U6e3ZhbHVlOjF9LGZhckRpc3RhbmNlOnt2YWx1ZToxZTN9fV0pLHZlcnRleFNoYWRlcjp0by5kaXN0YW5jZVJHQkFfdmVydCxmcmFnbWVudFNoYWRlcjp0by5kaXN0YW5jZVJHQkFfZnJhZ30sc2hhZG93Ont1bmlmb3JtczpIcihbbm8ubGlnaHRzLG5vLmZvZyx7Y29sb3I6e3ZhbHVlOm5ldyBKaSgwKX0sb3BhY2l0eTp7dmFsdWU6MX19XSksdmVydGV4U2hhZGVyOnRvLnNoYWRvd192ZXJ0LGZyYWdtZW50U2hhZGVyOnRvLnNoYWRvd19mcmFnfX07aW8ucGh5c2ljYWw9e3VuaWZvcm1zOkhyKFtpby5zdGFuZGFyZC51bmlmb3Jtcyx7Y2xlYXJjb2F0Ont2YWx1ZTowfSxjbGVhcmNvYXRNYXA6e3ZhbHVlOm51bGx9LGNsZWFyY29hdE1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSxjbGVhcmNvYXROb3JtYWxNYXA6e3ZhbHVlOm51bGx9LGNsZWFyY29hdE5vcm1hbE1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSxjbGVhcmNvYXROb3JtYWxTY2FsZTp7dmFsdWU6bmV3IEx0KDEsMSl9LGNsZWFyY29hdFJvdWdobmVzczp7dmFsdWU6MH0sY2xlYXJjb2F0Um91Z2huZXNzTWFwOnt2YWx1ZTpudWxsfSxjbGVhcmNvYXRSb3VnaG5lc3NNYXBUcmFuc2Zvcm06e3ZhbHVlOm5ldyBQdH0saXJpZGVzY2VuY2U6e3ZhbHVlOjB9LGlyaWRlc2NlbmNlTWFwOnt2YWx1ZTpudWxsfSxpcmlkZXNjZW5jZU1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSxpcmlkZXNjZW5jZUlPUjp7dmFsdWU6MS4zfSxpcmlkZXNjZW5jZVRoaWNrbmVzc01pbmltdW06e3ZhbHVlOjEwMH0saXJpZGVzY2VuY2VUaGlja25lc3NNYXhpbXVtOnt2YWx1ZTo0MDB9LGlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwOnt2YWx1ZTpudWxsfSxpcmlkZXNjZW5jZVRoaWNrbmVzc01hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSxzaGVlbjp7dmFsdWU6MH0sc2hlZW5Db2xvcjp7dmFsdWU6bmV3IEppKDApfSxzaGVlbkNvbG9yTWFwOnt2YWx1ZTpudWxsfSxzaGVlbkNvbG9yTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9LHNoZWVuUm91Z2huZXNzOnt2YWx1ZToxfSxzaGVlblJvdWdobmVzc01hcDp7dmFsdWU6bnVsbH0sc2hlZW5Sb3VnaG5lc3NNYXBUcmFuc2Zvcm06e3ZhbHVlOm5ldyBQdH0sdHJhbnNtaXNzaW9uOnt2YWx1ZTowfSx0cmFuc21pc3Npb25NYXA6e3ZhbHVlOm51bGx9LHRyYW5zbWlzc2lvbk1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSx0cmFuc21pc3Npb25TYW1wbGVyU2l6ZTp7dmFsdWU6bmV3IEx0fSx0cmFuc21pc3Npb25TYW1wbGVyTWFwOnt2YWx1ZTpudWxsfSx0aGlja25lc3M6e3ZhbHVlOjB9LHRoaWNrbmVzc01hcDp7dmFsdWU6bnVsbH0sdGhpY2tuZXNzTWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9LGF0dGVudWF0aW9uRGlzdGFuY2U6e3ZhbHVlOjB9LGF0dGVudWF0aW9uQ29sb3I6e3ZhbHVlOm5ldyBKaSgwKX0sc3BlY3VsYXJDb2xvcjp7dmFsdWU6bmV3IEppKDEsMSwxKX0sc3BlY3VsYXJDb2xvck1hcDp7dmFsdWU6bnVsbH0sc3BlY3VsYXJDb2xvck1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fSxzcGVjdWxhckludGVuc2l0eTp7dmFsdWU6MX0sc3BlY3VsYXJJbnRlbnNpdHlNYXA6e3ZhbHVlOm51bGx9LHNwZWN1bGFySW50ZW5zaXR5TWFwVHJhbnNmb3JtOnt2YWx1ZTpuZXcgUHR9LGFuaXNvdHJvcHlWZWN0b3I6e3ZhbHVlOm5ldyBMdH0sYW5pc290cm9weU1hcDp7dmFsdWU6bnVsbH0sYW5pc290cm9weU1hcFRyYW5zZm9ybTp7dmFsdWU6bmV3IFB0fX1dKSx2ZXJ0ZXhTaGFkZXI6dG8ubWVzaHBoeXNpY2FsX3ZlcnQsZnJhZ21lbnRTaGFkZXI6dG8ubWVzaHBoeXNpY2FsX2ZyYWd9O2NvbnN0IHJvPXtyOjAsYjowLGc6MH07ZnVuY3Rpb24gb28oQSxlLHQsbixpLHIsbyl7Y29uc3Qgcz1uZXcgSmkoMCk7bGV0IGEsQixjPSEwPT09cj8wOjEsZz1udWxsLEU9MCxRPW51bGw7ZnVuY3Rpb24gaChlLHQpe2UuZ2V0UkdCKHJvLHZyKEEpKSxuLmJ1ZmZlcnMuY29sb3Iuc2V0Q2xlYXIocm8ucixyby5nLHJvLmIsdCxvKX1yZXR1cm57Z2V0Q2xlYXJDb2xvcjpmdW5jdGlvbigpe3JldHVybiBzfSxzZXRDbGVhckNvbG9yOmZ1bmN0aW9uKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxO3Muc2V0KEEpLGM9ZSxoKHMsYyl9LGdldENsZWFyQWxwaGE6ZnVuY3Rpb24oKXtyZXR1cm4gY30sc2V0Q2xlYXJBbHBoYTpmdW5jdGlvbihBKXtjPUEsaChzLGMpfSxyZW5kZXI6ZnVuY3Rpb24ocix3KXtsZXQgQz0hMSxJPSEwPT09dy5pc1NjZW5lP3cuYmFja2dyb3VuZDpudWxsO2lmKEkmJkkuaXNUZXh0dXJlKXtJPSh3LmJhY2tncm91bmRCbHVycmluZXNzPjA/dDplKS5nZXQoSSl9c3dpdGNoKG51bGw9PT1JP2gocyxjKTpJJiZJLmlzQ29sb3ImJihoKEksMSksQz0hMCksQS54ci5nZXRFbnZpcm9ubWVudEJsZW5kTW9kZSgpKXtjYXNlIm9wYXF1ZSI6Qz0hMDticmVhaztjYXNlImFkZGl0aXZlIjpuLmJ1ZmZlcnMuY29sb3Iuc2V0Q2xlYXIoMCwwLDAsMSxvKSxDPSEwO2JyZWFrO2Nhc2UiYWxwaGEtYmxlbmQiOm4uYnVmZmVycy5jb2xvci5zZXRDbGVhcigwLDAsMCwwLG8pLEM9ITB9KEEuYXV0b0NsZWFyfHxDKSYmQS5jbGVhcihBLmF1dG9DbGVhckNvbG9yLEEuYXV0b0NsZWFyRGVwdGgsQS5hdXRvQ2xlYXJTdGVuY2lsKSxJJiYoSS5pc0N1YmVUZXh0dXJlfHxJLm1hcHBpbmc9PT1hQSk/KHZvaWQgMD09PUImJihCPW5ldyBScihuZXcgU3IoMSwxLDEpLG5ldyBqcih7bmFtZToiQmFja2dyb3VuZEN1YmVNYXRlcmlhbCIsdW5pZm9ybXM6YnIoaW8uYmFja2dyb3VuZEN1YmUudW5pZm9ybXMpLHZlcnRleFNoYWRlcjppby5iYWNrZ3JvdW5kQ3ViZS52ZXJ0ZXhTaGFkZXIsZnJhZ21lbnRTaGFkZXI6aW8uYmFja2dyb3VuZEN1YmUuZnJhZ21lbnRTaGFkZXIsc2lkZTpsLGRlcHRoVGVzdDohMSxkZXB0aFdyaXRlOiExLGZvZzohMX0pKSxCLmdlb21ldHJ5LmRlbGV0ZUF0dHJpYnV0ZSgibm9ybWFsIiksQi5nZW9tZXRyeS5kZWxldGVBdHRyaWJ1dGUoInV2IiksQi5vbkJlZm9yZVJlbmRlcj1mdW5jdGlvbihBLGUsdCl7dGhpcy5tYXRyaXhXb3JsZC5jb3B5UG9zaXRpb24odC5tYXRyaXhXb3JsZCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShCLm1hdGVyaWFsLCJlbnZNYXAiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy51bmlmb3Jtcy5lbnZNYXAudmFsdWV9fSksaS51cGRhdGUoQikpLEIubWF0ZXJpYWwudW5pZm9ybXMuZW52TWFwLnZhbHVlPUksQi5tYXRlcmlhbC51bmlmb3Jtcy5mbGlwRW52TWFwLnZhbHVlPUkuaXNDdWJlVGV4dHVyZSYmITE9PT1JLmlzUmVuZGVyVGFyZ2V0VGV4dHVyZT8tMToxLEIubWF0ZXJpYWwudW5pZm9ybXMuYmFja2dyb3VuZEJsdXJyaW5lc3MudmFsdWU9dy5iYWNrZ3JvdW5kQmx1cnJpbmVzcyxCLm1hdGVyaWFsLnVuaWZvcm1zLmJhY2tncm91bmRJbnRlbnNpdHkudmFsdWU9dy5iYWNrZ3JvdW5kSW50ZW5zaXR5LEIubWF0ZXJpYWwudG9uZU1hcHBlZD1JLmNvbG9yU3BhY2UhPT1KZSxnPT09SSYmRT09PUkudmVyc2lvbiYmUT09PUEudG9uZU1hcHBpbmd8fChCLm1hdGVyaWFsLm5lZWRzVXBkYXRlPSEwLGc9SSxFPUkudmVyc2lvbixRPUEudG9uZU1hcHBpbmcpLEIubGF5ZXJzLmVuYWJsZUFsbCgpLHIudW5zaGlmdChCLEIuZ2VvbWV0cnksQi5tYXRlcmlhbCwwLDAsbnVsbCkpOkkmJkkuaXNUZXh0dXJlJiYodm9pZCAwPT09YSYmKGE9bmV3IFJyKG5ldyBlbygyLDIpLG5ldyBqcih7bmFtZToiQmFja2dyb3VuZE1hdGVyaWFsIix1bmlmb3Jtczpicihpby5iYWNrZ3JvdW5kLnVuaWZvcm1zKSx2ZXJ0ZXhTaGFkZXI6aW8uYmFja2dyb3VuZC52ZXJ0ZXhTaGFkZXIsZnJhZ21lbnRTaGFkZXI6aW8uYmFja2dyb3VuZC5mcmFnbWVudFNoYWRlcixzaWRlOnUsZGVwdGhUZXN0OiExLGRlcHRoV3JpdGU6ITEsZm9nOiExfSkpLGEuZ2VvbWV0cnkuZGVsZXRlQXR0cmlidXRlKCJub3JtYWwiKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoYS5tYXRlcmlhbCwibWFwIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudW5pZm9ybXMudDJELnZhbHVlfX0pLGkudXBkYXRlKGEpKSxhLm1hdGVyaWFsLnVuaWZvcm1zLnQyRC52YWx1ZT1JLGEubWF0ZXJpYWwudW5pZm9ybXMuYmFja2dyb3VuZEludGVuc2l0eS52YWx1ZT13LmJhY2tncm91bmRJbnRlbnNpdHksYS5tYXRlcmlhbC50b25lTWFwcGVkPUkuY29sb3JTcGFjZSE9PUplLCEwPT09SS5tYXRyaXhBdXRvVXBkYXRlJiZJLnVwZGF0ZU1hdHJpeCgpLGEubWF0ZXJpYWwudW5pZm9ybXMudXZUcmFuc2Zvcm0udmFsdWUuY29weShJLm1hdHJpeCksZz09PUkmJkU9PT1JLnZlcnNpb24mJlE9PT1BLnRvbmVNYXBwaW5nfHwoYS5tYXRlcmlhbC5uZWVkc1VwZGF0ZT0hMCxnPUksRT1JLnZlcnNpb24sUT1BLnRvbmVNYXBwaW5nKSxhLmxheWVycy5lbmFibGVBbGwoKSxyLnVuc2hpZnQoYSxhLmdlb21ldHJ5LGEubWF0ZXJpYWwsMCwwLG51bGwpKX19fWZ1bmN0aW9uIHNvKEEsZSx0LG4pe2NvbnN0IGk9QS5nZXRQYXJhbWV0ZXIoQS5NQVhfVkVSVEVYX0FUVFJJQlMpLHI9bi5pc1dlYkdMMj9udWxsOmUuZ2V0KCJPRVNfdmVydGV4X2FycmF5X29iamVjdCIpLG89bi5pc1dlYkdMMnx8bnVsbCE9PXIscz17fSxhPVEobnVsbCk7bGV0IEI9YSxjPSExO2Z1bmN0aW9uIGcoZSl7cmV0dXJuIG4uaXNXZWJHTDI/QS5iaW5kVmVydGV4QXJyYXkoZSk6ci5iaW5kVmVydGV4QXJyYXlPRVMoZSl9ZnVuY3Rpb24gRShlKXtyZXR1cm4gbi5pc1dlYkdMMj9BLmRlbGV0ZVZlcnRleEFycmF5KGUpOnIuZGVsZXRlVmVydGV4QXJyYXlPRVMoZSl9ZnVuY3Rpb24gUShBKXtjb25zdCBlPVtdLHQ9W10sbj1bXTtmb3IobGV0IEE9MDtBPGk7QSsrKWVbQV09MCx0W0FdPTAsbltBXT0wO3JldHVybntnZW9tZXRyeTpudWxsLHByb2dyYW06bnVsbCx3aXJlZnJhbWU6ITEsbmV3QXR0cmlidXRlczplLGVuYWJsZWRBdHRyaWJ1dGVzOnQsYXR0cmlidXRlRGl2aXNvcnM6bixvYmplY3Q6QSxhdHRyaWJ1dGVzOnt9LGluZGV4Om51bGx9fWZ1bmN0aW9uIHUoKXtjb25zdCBBPUIubmV3QXR0cmlidXRlcztmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspQVtlXT0wfWZ1bmN0aW9uIGwoQSl7aChBLDApfWZ1bmN0aW9uIGgodCxpKXtjb25zdCByPUIubmV3QXR0cmlidXRlcyxvPUIuZW5hYmxlZEF0dHJpYnV0ZXMscz1CLmF0dHJpYnV0ZURpdmlzb3JzO2lmKHJbdF09MSwwPT09b1t0XSYmKEEuZW5hYmxlVmVydGV4QXR0cmliQXJyYXkodCksb1t0XT0xKSxzW3RdIT09aSl7KG4uaXNXZWJHTDI/QTplLmdldCgiQU5HTEVfaW5zdGFuY2VkX2FycmF5cyIpKVtuLmlzV2ViR0wyPyJ2ZXJ0ZXhBdHRyaWJEaXZpc29yIjoidmVydGV4QXR0cmliRGl2aXNvckFOR0xFIl0odCxpKSxzW3RdPWl9fWZ1bmN0aW9uIHcoKXtjb25zdCBlPUIubmV3QXR0cmlidXRlcyx0PUIuZW5hYmxlZEF0dHJpYnV0ZXM7Zm9yKGxldCBuPTAsaT10Lmxlbmd0aDtuPGk7bisrKXRbbl0hPT1lW25dJiYoQS5kaXNhYmxlVmVydGV4QXR0cmliQXJyYXkobiksdFtuXT0wKX1mdW5jdGlvbiBDKGUsdCxuLGkscixvLHMpeyEwPT09cz9BLnZlcnRleEF0dHJpYklQb2ludGVyKGUsdCxuLHIsbyk6QS52ZXJ0ZXhBdHRyaWJQb2ludGVyKGUsdCxuLGkscixvKX1mdW5jdGlvbiBJKCl7TSgpLGM9ITAsQiE9PWEmJihCPWEsZyhCLm9iamVjdCkpfWZ1bmN0aW9uIE0oKXthLmdlb21ldHJ5PW51bGwsYS5wcm9ncmFtPW51bGwsYS53aXJlZnJhbWU9ITF9cmV0dXJue3NldHVwOmZ1bmN0aW9uKGksYSxFLEksTSl7bGV0IGQ9ITE7aWYobyl7Y29uc3QgZT1mdW5jdGlvbihlLHQsaSl7Y29uc3Qgbz0hMD09PWkud2lyZWZyYW1lO2xldCBhPXNbZS5pZF07dm9pZCAwPT09YSYmKGE9e30sc1tlLmlkXT1hKTtsZXQgQj1hW3QuaWRdO3ZvaWQgMD09PUImJihCPXt9LGFbdC5pZF09Qik7bGV0IGM9QltvXTt2b2lkIDA9PT1jJiYoYz1RKG4uaXNXZWJHTDI/QS5jcmVhdGVWZXJ0ZXhBcnJheSgpOnIuY3JlYXRlVmVydGV4QXJyYXlPRVMoKSksQltvXT1jKTtyZXR1cm4gY30oSSxFLGEpO0IhPT1lJiYoQj1lLGcoQi5vYmplY3QpKSxkPWZ1bmN0aW9uKEEsZSx0LG4pe2NvbnN0IGk9Qi5hdHRyaWJ1dGVzLHI9ZS5hdHRyaWJ1dGVzO2xldCBvPTA7Y29uc3Qgcz10LmdldEF0dHJpYnV0ZXMoKTtmb3IoY29uc3QgZSBpbiBzKXtpZihzW2VdLmxvY2F0aW9uPj0wKXtjb25zdCB0PWlbZV07bGV0IG49cltlXTtpZih2b2lkIDA9PT1uJiYoImluc3RhbmNlTWF0cml4Ij09PWUmJkEuaW5zdGFuY2VNYXRyaXgmJihuPUEuaW5zdGFuY2VNYXRyaXgpLCJpbnN0YW5jZUNvbG9yIj09PWUmJkEuaW5zdGFuY2VDb2xvciYmKG49QS5pbnN0YW5jZUNvbG9yKSksdm9pZCAwPT09dClyZXR1cm4hMDtpZih0LmF0dHJpYnV0ZSE9PW4pcmV0dXJuITA7aWYobiYmdC5kYXRhIT09bi5kYXRhKXJldHVybiEwO28rK319cmV0dXJuIEIuYXR0cmlidXRlc051bSE9PW98fEIuaW5kZXghPT1ufShpLEksRSxNKSxkJiZmdW5jdGlvbihBLGUsdCxuKXtjb25zdCBpPXt9LHI9ZS5hdHRyaWJ1dGVzO2xldCBvPTA7Y29uc3Qgcz10LmdldEF0dHJpYnV0ZXMoKTtmb3IoY29uc3QgZSBpbiBzKXtpZihzW2VdLmxvY2F0aW9uPj0wKXtsZXQgdD1yW2VdO3ZvaWQgMD09PXQmJigiaW5zdGFuY2VNYXRyaXgiPT09ZSYmQS5pbnN0YW5jZU1hdHJpeCYmKHQ9QS5pbnN0YW5jZU1hdHJpeCksImluc3RhbmNlQ29sb3IiPT09ZSYmQS5pbnN0YW5jZUNvbG9yJiYodD1BLmluc3RhbmNlQ29sb3IpKTtjb25zdCBuPXt9O24uYXR0cmlidXRlPXQsdCYmdC5kYXRhJiYobi5kYXRhPXQuZGF0YSksaVtlXT1uLG8rK319Qi5hdHRyaWJ1dGVzPWksQi5hdHRyaWJ1dGVzTnVtPW8sQi5pbmRleD1ufShpLEksRSxNKX1lbHNle2NvbnN0IEE9ITA9PT1hLndpcmVmcmFtZTtCLmdlb21ldHJ5PT09SS5pZCYmQi5wcm9ncmFtPT09RS5pZCYmQi53aXJlZnJhbWU9PT1BfHwoQi5nZW9tZXRyeT1JLmlkLEIucHJvZ3JhbT1FLmlkLEIud2lyZWZyYW1lPUEsZD0hMCl9bnVsbCE9PU0mJnQudXBkYXRlKE0sQS5FTEVNRU5UX0FSUkFZX0JVRkZFUiksKGR8fGMpJiYoYz0hMSxmdW5jdGlvbihpLHIsbyxzKXtpZighMT09PW4uaXNXZWJHTDImJihpLmlzSW5zdGFuY2VkTWVzaHx8cy5pc0luc3RhbmNlZEJ1ZmZlckdlb21ldHJ5KSYmbnVsbD09PWUuZ2V0KCJBTkdMRV9pbnN0YW5jZWRfYXJyYXlzIikpcmV0dXJuO3UoKTtjb25zdCBhPXMuYXR0cmlidXRlcyxCPW8uZ2V0QXR0cmlidXRlcygpLGM9ci5kZWZhdWx0QXR0cmlidXRlVmFsdWVzO2Zvcihjb25zdCBlIGluIEIpe2NvbnN0IHI9QltlXTtpZihyLmxvY2F0aW9uPj0wKXtsZXQgbz1hW2VdO2lmKHZvaWQgMD09PW8mJigiaW5zdGFuY2VNYXRyaXgiPT09ZSYmaS5pbnN0YW5jZU1hdHJpeCYmKG89aS5pbnN0YW5jZU1hdHJpeCksImluc3RhbmNlQ29sb3IiPT09ZSYmaS5pbnN0YW5jZUNvbG9yJiYobz1pLmluc3RhbmNlQ29sb3IpKSx2b2lkIDAhPT1vKXtjb25zdCBlPW8ubm9ybWFsaXplZCxhPW8uaXRlbVNpemUsQj10LmdldChvKTtpZih2b2lkIDA9PT1CKWNvbnRpbnVlO2NvbnN0IGM9Qi5idWZmZXIsZz1CLnR5cGUsRT1CLmJ5dGVzUGVyRWxlbWVudCxRPSEwPT09bi5pc1dlYkdMMiYmKGc9PT1BLklOVHx8Zz09PUEuVU5TSUdORURfSU5UfHxvLmdwdVR5cGU9PT1ZQSk7aWYoby5pc0ludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlKXtjb25zdCB0PW8uZGF0YSxuPXQuc3RyaWRlLEI9by5vZmZzZXQ7aWYodC5pc0luc3RhbmNlZEludGVybGVhdmVkQnVmZmVyKXtmb3IobGV0IEE9MDtBPHIubG9jYXRpb25TaXplO0ErKyloKHIubG9jYXRpb24rQSx0Lm1lc2hQZXJBdHRyaWJ1dGUpOyEwIT09aS5pc0luc3RhbmNlZE1lc2gmJnZvaWQgMD09PXMuX21heEluc3RhbmNlQ291bnQmJihzLl9tYXhJbnN0YW5jZUNvdW50PXQubWVzaFBlckF0dHJpYnV0ZSp0LmNvdW50KX1lbHNlIGZvcihsZXQgQT0wO0E8ci5sb2NhdGlvblNpemU7QSsrKWwoci5sb2NhdGlvbitBKTtBLmJpbmRCdWZmZXIoQS5BUlJBWV9CVUZGRVIsYyk7Zm9yKGxldCBBPTA7QTxyLmxvY2F0aW9uU2l6ZTtBKyspQyhyLmxvY2F0aW9uK0EsYS9yLmxvY2F0aW9uU2l6ZSxnLGUsbipFLChCK2Evci5sb2NhdGlvblNpemUqQSkqRSxRKX1lbHNle2lmKG8uaXNJbnN0YW5jZWRCdWZmZXJBdHRyaWJ1dGUpe2ZvcihsZXQgQT0wO0E8ci5sb2NhdGlvblNpemU7QSsrKWgoci5sb2NhdGlvbitBLG8ubWVzaFBlckF0dHJpYnV0ZSk7ITAhPT1pLmlzSW5zdGFuY2VkTWVzaCYmdm9pZCAwPT09cy5fbWF4SW5zdGFuY2VDb3VudCYmKHMuX21heEluc3RhbmNlQ291bnQ9by5tZXNoUGVyQXR0cmlidXRlKm8uY291bnQpfWVsc2UgZm9yKGxldCBBPTA7QTxyLmxvY2F0aW9uU2l6ZTtBKyspbChyLmxvY2F0aW9uK0EpO0EuYmluZEJ1ZmZlcihBLkFSUkFZX0JVRkZFUixjKTtmb3IobGV0IEE9MDtBPHIubG9jYXRpb25TaXplO0ErKylDKHIubG9jYXRpb24rQSxhL3IubG9jYXRpb25TaXplLGcsZSxhKkUsYS9yLmxvY2F0aW9uU2l6ZSpBKkUsUSl9fWVsc2UgaWYodm9pZCAwIT09Yyl7Y29uc3QgdD1jW2VdO2lmKHZvaWQgMCE9PXQpc3dpdGNoKHQubGVuZ3RoKXtjYXNlIDI6QS52ZXJ0ZXhBdHRyaWIyZnYoci5sb2NhdGlvbix0KTticmVhaztjYXNlIDM6QS52ZXJ0ZXhBdHRyaWIzZnYoci5sb2NhdGlvbix0KTticmVhaztjYXNlIDQ6QS52ZXJ0ZXhBdHRyaWI0ZnYoci5sb2NhdGlvbix0KTticmVhaztkZWZhdWx0OkEudmVydGV4QXR0cmliMWZ2KHIubG9jYXRpb24sdCl9fX19dygpfShpLGEsRSxJKSxudWxsIT09TSYmQS5iaW5kQnVmZmVyKEEuRUxFTUVOVF9BUlJBWV9CVUZGRVIsdC5nZXQoTSkuYnVmZmVyKSl9LHJlc2V0OkkscmVzZXREZWZhdWx0U3RhdGU6TSxkaXNwb3NlOmZ1bmN0aW9uKCl7SSgpO2Zvcihjb25zdCBBIGluIHMpe2NvbnN0IGU9c1tBXTtmb3IoY29uc3QgQSBpbiBlKXtjb25zdCB0PWVbQV07Zm9yKGNvbnN0IEEgaW4gdClFKHRbQV0ub2JqZWN0KSxkZWxldGUgdFtBXTtkZWxldGUgZVtBXX1kZWxldGUgc1tBXX19LHJlbGVhc2VTdGF0ZXNPZkdlb21ldHJ5OmZ1bmN0aW9uKEEpe2lmKHZvaWQgMD09PXNbQS5pZF0pcmV0dXJuO2NvbnN0IGU9c1tBLmlkXTtmb3IoY29uc3QgQSBpbiBlKXtjb25zdCB0PWVbQV07Zm9yKGNvbnN0IEEgaW4gdClFKHRbQV0ub2JqZWN0KSxkZWxldGUgdFtBXTtkZWxldGUgZVtBXX1kZWxldGUgc1tBLmlkXX0scmVsZWFzZVN0YXRlc09mUHJvZ3JhbTpmdW5jdGlvbihBKXtmb3IoY29uc3QgZSBpbiBzKXtjb25zdCB0PXNbZV07aWYodm9pZCAwPT09dFtBLmlkXSljb250aW51ZTtjb25zdCBuPXRbQS5pZF07Zm9yKGNvbnN0IEEgaW4gbilFKG5bQV0ub2JqZWN0KSxkZWxldGUgbltBXTtkZWxldGUgdFtBLmlkXX19LGluaXRBdHRyaWJ1dGVzOnUsZW5hYmxlQXR0cmlidXRlOmwsZGlzYWJsZVVudXNlZEF0dHJpYnV0ZXM6d319ZnVuY3Rpb24gYW8oQSxlLHQsbil7Y29uc3QgaT1uLmlzV2ViR0wyO2xldCByO3RoaXMuc2V0TW9kZT1mdW5jdGlvbihBKXtyPUF9LHRoaXMucmVuZGVyPWZ1bmN0aW9uKGUsbil7QS5kcmF3QXJyYXlzKHIsZSxuKSx0LnVwZGF0ZShuLHIsMSl9LHRoaXMucmVuZGVySW5zdGFuY2VzPWZ1bmN0aW9uKG4sbyxzKXtpZigwPT09cylyZXR1cm47bGV0IGEsQjtpZihpKWE9QSxCPSJkcmF3QXJyYXlzSW5zdGFuY2VkIjtlbHNlIGlmKGE9ZS5nZXQoIkFOR0xFX2luc3RhbmNlZF9hcnJheXMiKSxCPSJkcmF3QXJyYXlzSW5zdGFuY2VkQU5HTEUiLG51bGw9PT1hKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMQnVmZmVyUmVuZGVyZXI6IHVzaW5nIFRIUkVFLkluc3RhbmNlZEJ1ZmZlckdlb21ldHJ5IGJ1dCBoYXJkd2FyZSBkb2VzIG5vdCBzdXBwb3J0IGV4dGVuc2lvbiBBTkdMRV9pbnN0YW5jZWRfYXJyYXlzLiIpO2FbQl0ocixuLG8scyksdC51cGRhdGUobyxyLHMpfX1mdW5jdGlvbiBCbyhBLGUsdCl7bGV0IG47ZnVuY3Rpb24gaShlKXtpZigiaGlnaHAiPT09ZSl7aWYoQS5nZXRTaGFkZXJQcmVjaXNpb25Gb3JtYXQoQS5WRVJURVhfU0hBREVSLEEuSElHSF9GTE9BVCkucHJlY2lzaW9uPjAmJkEuZ2V0U2hhZGVyUHJlY2lzaW9uRm9ybWF0KEEuRlJBR01FTlRfU0hBREVSLEEuSElHSF9GTE9BVCkucHJlY2lzaW9uPjApcmV0dXJuImhpZ2hwIjtlPSJtZWRpdW1wIn1yZXR1cm4ibWVkaXVtcCI9PT1lJiZBLmdldFNoYWRlclByZWNpc2lvbkZvcm1hdChBLlZFUlRFWF9TSEFERVIsQS5NRURJVU1fRkxPQVQpLnByZWNpc2lvbj4wJiZBLmdldFNoYWRlclByZWNpc2lvbkZvcm1hdChBLkZSQUdNRU5UX1NIQURFUixBLk1FRElVTV9GTE9BVCkucHJlY2lzaW9uPjA/Im1lZGl1bXAiOiJsb3dwIn1jb25zdCByPSJ1bmRlZmluZWQiIT10eXBlb2YgV2ViR0wyUmVuZGVyaW5nQ29udGV4dCYmIldlYkdMMlJlbmRlcmluZ0NvbnRleHQiPT09QS5jb25zdHJ1Y3Rvci5uYW1lO2xldCBvPXZvaWQgMCE9PXQucHJlY2lzaW9uP3QucHJlY2lzaW9uOiJoaWdocCI7Y29uc3Qgcz1pKG8pO3MhPT1vJiYoY29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiIsbywibm90IHN1cHBvcnRlZCwgdXNpbmciLHMsImluc3RlYWQuIiksbz1zKTtjb25zdCBhPXJ8fGUuaGFzKCJXRUJHTF9kcmF3X2J1ZmZlcnMiKSxCPSEwPT09dC5sb2dhcml0aG1pY0RlcHRoQnVmZmVyLGM9QS5nZXRQYXJhbWV0ZXIoQS5NQVhfVEVYVFVSRV9JTUFHRV9VTklUUyksZz1BLmdldFBhcmFtZXRlcihBLk1BWF9WRVJURVhfVEVYVFVSRV9JTUFHRV9VTklUUyksRT1BLmdldFBhcmFtZXRlcihBLk1BWF9URVhUVVJFX1NJWkUpLFE9QS5nZXRQYXJhbWV0ZXIoQS5NQVhfQ1VCRV9NQVBfVEVYVFVSRV9TSVpFKSx1PUEuZ2V0UGFyYW1ldGVyKEEuTUFYX1ZFUlRFWF9BVFRSSUJTKSxsPUEuZ2V0UGFyYW1ldGVyKEEuTUFYX1ZFUlRFWF9VTklGT1JNX1ZFQ1RPUlMpLGg9QS5nZXRQYXJhbWV0ZXIoQS5NQVhfVkFSWUlOR19WRUNUT1JTKSx3PUEuZ2V0UGFyYW1ldGVyKEEuTUFYX0ZSQUdNRU5UX1VOSUZPUk1fVkVDVE9SUyksQz1nPjAsST1yfHxlLmhhcygiT0VTX3RleHR1cmVfZmxvYXQiKTtyZXR1cm57aXNXZWJHTDI6cixkcmF3QnVmZmVyczphLGdldE1heEFuaXNvdHJvcHk6ZnVuY3Rpb24oKXtpZih2b2lkIDAhPT1uKXJldHVybiBuO2lmKCEwPT09ZS5oYXMoIkVYVF90ZXh0dXJlX2ZpbHRlcl9hbmlzb3Ryb3BpYyIpKXtjb25zdCB0PWUuZ2V0KCJFWFRfdGV4dHVyZV9maWx0ZXJfYW5pc290cm9waWMiKTtuPUEuZ2V0UGFyYW1ldGVyKHQuTUFYX1RFWFRVUkVfTUFYX0FOSVNPVFJPUFlfRVhUKX1lbHNlIG49MDtyZXR1cm4gbn0sZ2V0TWF4UHJlY2lzaW9uOmkscHJlY2lzaW9uOm8sbG9nYXJpdGhtaWNEZXB0aEJ1ZmZlcjpCLG1heFRleHR1cmVzOmMsbWF4VmVydGV4VGV4dHVyZXM6ZyxtYXhUZXh0dXJlU2l6ZTpFLG1heEN1YmVtYXBTaXplOlEsbWF4QXR0cmlidXRlczp1LG1heFZlcnRleFVuaWZvcm1zOmwsbWF4VmFyeWluZ3M6aCxtYXhGcmFnbWVudFVuaWZvcm1zOncsdmVydGV4VGV4dHVyZXM6QyxmbG9hdEZyYWdtZW50VGV4dHVyZXM6SSxmbG9hdFZlcnRleFRleHR1cmVzOkMmJkksbWF4U2FtcGxlczpyP0EuZ2V0UGFyYW1ldGVyKEEuTUFYX1NBTVBMRVMpOjB9fWZ1bmN0aW9uIGNvKEEpe2NvbnN0IGU9dGhpcztsZXQgdD1udWxsLG49MCxpPSExLHI9ITE7Y29uc3Qgbz1uZXcgWHIscz1uZXcgUHQsYT17dmFsdWU6bnVsbCxuZWVkc1VwZGF0ZTohMX07ZnVuY3Rpb24gQihBLHQsbixpKXtjb25zdCByPW51bGwhPT1BP0EubGVuZ3RoOjA7bGV0IEI9bnVsbDtpZigwIT09cil7aWYoQj1hLnZhbHVlLCEwIT09aXx8bnVsbD09PUIpe2NvbnN0IGU9bis0KnIsaT10Lm1hdHJpeFdvcmxkSW52ZXJzZTtzLmdldE5vcm1hbE1hdHJpeChpKSwobnVsbD09PUJ8fEIubGVuZ3RoPGUpJiYoQj1uZXcgRmxvYXQzMkFycmF5KGUpKTtmb3IobGV0IGU9MCx0PW47ZSE9PXI7KytlLHQrPTQpby5jb3B5KEFbZV0pLmFwcGx5TWF0cml4NChpLHMpLG8ubm9ybWFsLnRvQXJyYXkoQix0KSxCW3QrM109by5jb25zdGFudH1hLnZhbHVlPUIsYS5uZWVkc1VwZGF0ZT0hMH1yZXR1cm4gZS5udW1QbGFuZXM9cixlLm51bUludGVyc2VjdGlvbj0wLEJ9dGhpcy51bmlmb3JtPWEsdGhpcy5udW1QbGFuZXM9MCx0aGlzLm51bUludGVyc2VjdGlvbj0wLHRoaXMuaW5pdD1mdW5jdGlvbihBLGUpe2NvbnN0IHQ9MCE9PUEubGVuZ3RofHxlfHwwIT09bnx8aTtyZXR1cm4gaT1lLG49QS5sZW5ndGgsdH0sdGhpcy5iZWdpblNoYWRvd3M9ZnVuY3Rpb24oKXtyPSEwLEIobnVsbCl9LHRoaXMuZW5kU2hhZG93cz1mdW5jdGlvbigpe3I9ITF9LHRoaXMuc2V0R2xvYmFsU3RhdGU9ZnVuY3Rpb24oQSxlKXt0PUIoQSxlLDApfSx0aGlzLnNldFN0YXRlPWZ1bmN0aW9uKG8scyxjKXtjb25zdCBnPW8uY2xpcHBpbmdQbGFuZXMsRT1vLmNsaXBJbnRlcnNlY3Rpb24sUT1vLmNsaXBTaGFkb3dzLHU9QS5nZXQobyk7aWYoIWl8fG51bGw9PT1nfHwwPT09Zy5sZW5ndGh8fHImJiFRKXI/QihudWxsKTpmdW5jdGlvbigpe2EudmFsdWUhPT10JiYoYS52YWx1ZT10LGEubmVlZHNVcGRhdGU9bj4wKTtlLm51bVBsYW5lcz1uLGUubnVtSW50ZXJzZWN0aW9uPTB9KCk7ZWxzZXtjb25zdCBBPXI/MDpuLGU9NCpBO2xldCBpPXUuY2xpcHBpbmdTdGF0ZXx8bnVsbDthLnZhbHVlPWksaT1CKGcscyxlLGMpO2ZvcihsZXQgQT0wO0EhPT1lOysrQSlpW0FdPXRbQV07dS5jbGlwcGluZ1N0YXRlPWksdGhpcy5udW1JbnRlcnNlY3Rpb249RT90aGlzLm51bVBsYW5lczowLHRoaXMubnVtUGxhbmVzKz1BfX19ZnVuY3Rpb24gZ28oQSl7bGV0IGU9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gdChBLGUpe3JldHVybiBlPT09b0E/QS5tYXBwaW5nPWlBOmU9PT1zQSYmKEEubWFwcGluZz1yQSksQX1mdW5jdGlvbiBuKEEpe2NvbnN0IHQ9QS50YXJnZXQ7dC5yZW1vdmVFdmVudExpc3RlbmVyKCJkaXNwb3NlIixuKTtjb25zdCBpPWUuZ2V0KHQpO3ZvaWQgMCE9PWkmJihlLmRlbGV0ZSh0KSxpLmRpc3Bvc2UoKSl9cmV0dXJue2dldDpmdW5jdGlvbihpKXtpZihpJiZpLmlzVGV4dHVyZSYmITE9PT1pLmlzUmVuZGVyVGFyZ2V0VGV4dHVyZSl7Y29uc3Qgcj1pLm1hcHBpbmc7aWYocj09PW9BfHxyPT09c0Epe2lmKGUuaGFzKGkpKXtyZXR1cm4gdChlLmdldChpKS50ZXh0dXJlLGkubWFwcGluZyl9e2NvbnN0IHI9aS5pbWFnZTtpZihyJiZyLmhlaWdodD4wKXtjb25zdCBvPW5ldyBPcihyLmhlaWdodC8yKTtyZXR1cm4gby5mcm9tRXF1aXJlY3Rhbmd1bGFyVGV4dHVyZShBLGkpLGUuc2V0KGksbyksaS5hZGRFdmVudExpc3RlbmVyKCJkaXNwb3NlIixuKSx0KG8udGV4dHVyZSxpLm1hcHBpbmcpfXJldHVybiBudWxsfX19cmV0dXJuIGl9LGRpc3Bvc2U6ZnVuY3Rpb24oKXtlPW5ldyBXZWFrTWFwfX19Y2xhc3MgRW8gZXh0ZW5kcyBKcntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTotMSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjEsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106LTEsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06LjEscj1hcmd1bWVudHMubGVuZ3RoPjUmJnZvaWQgMCE9PWFyZ3VtZW50c1s1XT9hcmd1bWVudHNbNV06MmUzO3N1cGVyKCksdGhpcy5pc09ydGhvZ3JhcGhpY0NhbWVyYT0hMCx0aGlzLnR5cGU9Ik9ydGhvZ3JhcGhpY0NhbWVyYSIsdGhpcy56b29tPTEsdGhpcy52aWV3PW51bGwsdGhpcy5sZWZ0PUEsdGhpcy5yaWdodD1lLHRoaXMudG9wPXQsdGhpcy5ib3R0b209bix0aGlzLm5lYXI9aSx0aGlzLmZhcj1yLHRoaXMudXBkYXRlUHJvamVjdGlvbk1hdHJpeCgpfWNvcHkoQSxlKXtyZXR1cm4gc3VwZXIuY29weShBLGUpLHRoaXMubGVmdD1BLmxlZnQsdGhpcy5yaWdodD1BLnJpZ2h0LHRoaXMudG9wPUEudG9wLHRoaXMuYm90dG9tPUEuYm90dG9tLHRoaXMubmVhcj1BLm5lYXIsdGhpcy5mYXI9QS5mYXIsdGhpcy56b29tPUEuem9vbSx0aGlzLnZpZXc9bnVsbD09PUEudmlldz9udWxsOk9iamVjdC5hc3NpZ24oe30sQS52aWV3KSx0aGlzfXNldFZpZXdPZmZzZXQoQSxlLHQsbixpLHIpe251bGw9PT10aGlzLnZpZXcmJih0aGlzLnZpZXc9e2VuYWJsZWQ6ITAsZnVsbFdpZHRoOjEsZnVsbEhlaWdodDoxLG9mZnNldFg6MCxvZmZzZXRZOjAsd2lkdGg6MSxoZWlnaHQ6MX0pLHRoaXMudmlldy5lbmFibGVkPSEwLHRoaXMudmlldy5mdWxsV2lkdGg9QSx0aGlzLnZpZXcuZnVsbEhlaWdodD1lLHRoaXMudmlldy5vZmZzZXRYPXQsdGhpcy52aWV3Lm9mZnNldFk9bix0aGlzLnZpZXcud2lkdGg9aSx0aGlzLnZpZXcuaGVpZ2h0PXIsdGhpcy51cGRhdGVQcm9qZWN0aW9uTWF0cml4KCl9Y2xlYXJWaWV3T2Zmc2V0KCl7bnVsbCE9PXRoaXMudmlldyYmKHRoaXMudmlldy5lbmFibGVkPSExKSx0aGlzLnVwZGF0ZVByb2plY3Rpb25NYXRyaXgoKX11cGRhdGVQcm9qZWN0aW9uTWF0cml4KCl7Y29uc3QgQT0odGhpcy5yaWdodC10aGlzLmxlZnQpLygyKnRoaXMuem9vbSksZT0odGhpcy50b3AtdGhpcy5ib3R0b20pLygyKnRoaXMuem9vbSksdD0odGhpcy5yaWdodCt0aGlzLmxlZnQpLzIsbj0odGhpcy50b3ArdGhpcy5ib3R0b20pLzI7bGV0IGk9dC1BLHI9dCtBLG89bitlLHM9bi1lO2lmKG51bGwhPT10aGlzLnZpZXcmJnRoaXMudmlldy5lbmFibGVkKXtjb25zdCBBPSh0aGlzLnJpZ2h0LXRoaXMubGVmdCkvdGhpcy52aWV3LmZ1bGxXaWR0aC90aGlzLnpvb20sZT0odGhpcy50b3AtdGhpcy5ib3R0b20pL3RoaXMudmlldy5mdWxsSGVpZ2h0L3RoaXMuem9vbTtpKz1BKnRoaXMudmlldy5vZmZzZXRYLHI9aStBKnRoaXMudmlldy53aWR0aCxvLT1lKnRoaXMudmlldy5vZmZzZXRZLHM9by1lKnRoaXMudmlldy5oZWlnaHR9dGhpcy5wcm9qZWN0aW9uTWF0cml4Lm1ha2VPcnRob2dyYXBoaWMoaSxyLG8scyx0aGlzLm5lYXIsdGhpcy5mYXIsdGhpcy5jb29yZGluYXRlU3lzdGVtKSx0aGlzLnByb2plY3Rpb25NYXRyaXhJbnZlcnNlLmNvcHkodGhpcy5wcm9qZWN0aW9uTWF0cml4KS5pbnZlcnQoKX10b0pTT04oQSl7Y29uc3QgZT1zdXBlci50b0pTT04oQSk7cmV0dXJuIGUub2JqZWN0Lnpvb209dGhpcy56b29tLGUub2JqZWN0LmxlZnQ9dGhpcy5sZWZ0LGUub2JqZWN0LnJpZ2h0PXRoaXMucmlnaHQsZS5vYmplY3QudG9wPXRoaXMudG9wLGUub2JqZWN0LmJvdHRvbT10aGlzLmJvdHRvbSxlLm9iamVjdC5uZWFyPXRoaXMubmVhcixlLm9iamVjdC5mYXI9dGhpcy5mYXIsbnVsbCE9PXRoaXMudmlldyYmKGUub2JqZWN0LnZpZXc9T2JqZWN0LmFzc2lnbih7fSx0aGlzLnZpZXcpKSxlfX1jb25zdCBRbz1bLjEyNSwuMjE1LC4zNSwuNDQ2LC41MjYsLjU4Ml0sdW89bmV3IEVvLGxvPW5ldyBKaTtsZXQgaG89bnVsbDtjb25zdCB3bz0oMStNYXRoLnNxcnQoNSkpLzIsQ289MS93byxJbz1bbmV3IGRuKDEsMSwxKSxuZXcgZG4oLTEsMSwxKSxuZXcgZG4oMSwxLC0xKSxuZXcgZG4oLTEsMSwtMSksbmV3IGRuKDAsd28sQ28pLG5ldyBkbigwLHdvLC1DbyksbmV3IGRuKENvLDAsd28pLG5ldyBkbigtQ28sMCx3byksbmV3IGRuKHdvLENvLDApLG5ldyBkbigtd28sQ28sMCldO2NsYXNzIE1ve2NvbnN0cnVjdG9yKEEpe3RoaXMuX3JlbmRlcmVyPUEsdGhpcy5fcGluZ1BvbmdSZW5kZXJUYXJnZXQ9bnVsbCx0aGlzLl9sb2RNYXg9MCx0aGlzLl9jdWJlU2l6ZT0wLHRoaXMuX2xvZFBsYW5lcz1bXSx0aGlzLl9zaXplTG9kcz1bXSx0aGlzLl9zaWdtYXM9W10sdGhpcy5fYmx1ck1hdGVyaWFsPW51bGwsdGhpcy5fY3ViZW1hcE1hdGVyaWFsPW51bGwsdGhpcy5fZXF1aXJlY3RNYXRlcmlhbD1udWxsLHRoaXMuX2NvbXBpbGVNYXRlcmlhbCh0aGlzLl9ibHVyTWF0ZXJpYWwpfWZyb21TY2VuZShBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTouMSxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXToxMDA7aG89dGhpcy5fcmVuZGVyZXIuZ2V0UmVuZGVyVGFyZ2V0KCksdGhpcy5fc2V0U2l6ZSgyNTYpO2NvbnN0IGk9dGhpcy5fYWxsb2NhdGVUYXJnZXRzKCk7cmV0dXJuIGkuZGVwdGhCdWZmZXI9ITAsdGhpcy5fc2NlbmVUb0N1YmVVVihBLHQsbixpKSxlPjAmJnRoaXMuX2JsdXIoaSwwLDAsZSksdGhpcy5fYXBwbHlQTVJFTShpKSx0aGlzLl9jbGVhbnVwKGkpLGl9ZnJvbUVxdWlyZWN0YW5ndWxhcihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bnVsbDtyZXR1cm4gdGhpcy5fZnJvbVRleHR1cmUoQSxlKX1mcm9tQ3ViZW1hcChBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bnVsbDtyZXR1cm4gdGhpcy5fZnJvbVRleHR1cmUoQSxlKX1jb21waWxlQ3ViZW1hcFNoYWRlcigpe251bGw9PT10aGlzLl9jdWJlbWFwTWF0ZXJpYWwmJih0aGlzLl9jdWJlbWFwTWF0ZXJpYWw9RG8oKSx0aGlzLl9jb21waWxlTWF0ZXJpYWwodGhpcy5fY3ViZW1hcE1hdGVyaWFsKSl9Y29tcGlsZUVxdWlyZWN0YW5ndWxhclNoYWRlcigpe251bGw9PT10aGlzLl9lcXVpcmVjdE1hdGVyaWFsJiYodGhpcy5fZXF1aXJlY3RNYXRlcmlhbD1GbygpLHRoaXMuX2NvbXBpbGVNYXRlcmlhbCh0aGlzLl9lcXVpcmVjdE1hdGVyaWFsKSl9ZGlzcG9zZSgpe3RoaXMuX2Rpc3Bvc2UoKSxudWxsIT09dGhpcy5fY3ViZW1hcE1hdGVyaWFsJiZ0aGlzLl9jdWJlbWFwTWF0ZXJpYWwuZGlzcG9zZSgpLG51bGwhPT10aGlzLl9lcXVpcmVjdE1hdGVyaWFsJiZ0aGlzLl9lcXVpcmVjdE1hdGVyaWFsLmRpc3Bvc2UoKX1fc2V0U2l6ZShBKXt0aGlzLl9sb2RNYXg9TWF0aC5mbG9vcihNYXRoLmxvZzIoQSkpLHRoaXMuX2N1YmVTaXplPU1hdGgucG93KDIsdGhpcy5fbG9kTWF4KX1fZGlzcG9zZSgpe251bGwhPT10aGlzLl9ibHVyTWF0ZXJpYWwmJnRoaXMuX2JsdXJNYXRlcmlhbC5kaXNwb3NlKCksbnVsbCE9PXRoaXMuX3BpbmdQb25nUmVuZGVyVGFyZ2V0JiZ0aGlzLl9waW5nUG9uZ1JlbmRlclRhcmdldC5kaXNwb3NlKCk7Zm9yKGxldCBBPTA7QTx0aGlzLl9sb2RQbGFuZXMubGVuZ3RoO0ErKyl0aGlzLl9sb2RQbGFuZXNbQV0uZGlzcG9zZSgpfV9jbGVhbnVwKEEpe3RoaXMuX3JlbmRlcmVyLnNldFJlbmRlclRhcmdldChobyksQS5zY2lzc29yVGVzdD0hMSxtbyhBLDAsMCxBLndpZHRoLEEuaGVpZ2h0KX1fZnJvbVRleHR1cmUoQSxlKXtBLm1hcHBpbmc9PT1pQXx8QS5tYXBwaW5nPT09ckE/dGhpcy5fc2V0U2l6ZSgwPT09QS5pbWFnZS5sZW5ndGg/MTY6QS5pbWFnZVswXS53aWR0aHx8QS5pbWFnZVswXS5pbWFnZS53aWR0aCk6dGhpcy5fc2V0U2l6ZShBLmltYWdlLndpZHRoLzQpLGhvPXRoaXMuX3JlbmRlcmVyLmdldFJlbmRlclRhcmdldCgpO2NvbnN0IHQ9ZXx8dGhpcy5fYWxsb2NhdGVUYXJnZXRzKCk7cmV0dXJuIHRoaXMuX3RleHR1cmVUb0N1YmVVVihBLHQpLHRoaXMuX2FwcGx5UE1SRU0odCksdGhpcy5fY2xlYW51cCh0KSx0fV9hbGxvY2F0ZVRhcmdldHMoKXtjb25zdCBBPTMqTWF0aC5tYXgodGhpcy5fY3ViZVNpemUsMTEyKSxlPTQqdGhpcy5fY3ViZVNpemUsdD17bWFnRmlsdGVyOndBLG1pbkZpbHRlcjp3QSxnZW5lcmF0ZU1pcG1hcHM6ITEsdHlwZTpVQSxmb3JtYXQ6R0EsY29sb3JTcGFjZTp6ZSxkZXB0aEJ1ZmZlcjohMX0sbj1wbyhBLGUsdCk7aWYobnVsbD09PXRoaXMuX3BpbmdQb25nUmVuZGVyVGFyZ2V0fHx0aGlzLl9waW5nUG9uZ1JlbmRlclRhcmdldC53aWR0aCE9PUF8fHRoaXMuX3BpbmdQb25nUmVuZGVyVGFyZ2V0LmhlaWdodCE9PWUpe251bGwhPT10aGlzLl9waW5nUG9uZ1JlbmRlclRhcmdldCYmdGhpcy5fZGlzcG9zZSgpLHRoaXMuX3BpbmdQb25nUmVuZGVyVGFyZ2V0PXBvKEEsZSx0KTtjb25zdHtfbG9kTWF4Om59PXRoaXM7KHtzaXplTG9kczp0aGlzLl9zaXplTG9kcyxsb2RQbGFuZXM6dGhpcy5fbG9kUGxhbmVzLHNpZ21hczp0aGlzLl9zaWdtYXN9PWZ1bmN0aW9uKEEpe2NvbnN0IGU9W10sdD1bXSxuPVtdO2xldCBpPUE7Y29uc3Qgcj1BLTQrMStRby5sZW5ndGg7Zm9yKGxldCBvPTA7bzxyO28rKyl7Y29uc3Qgcj1NYXRoLnBvdygyLGkpO3QucHVzaChyKTtsZXQgcz0xL3I7bz5BLTQ/cz1Rb1tvLUErNC0xXTowPT09byYmKHM9MCksbi5wdXNoKHMpO2NvbnN0IGE9MS8oci0yKSxCPS1hLGM9MSthLGc9W0IsQixjLEIsYyxjLEIsQixjLGMsQixjXSxFPTYsUT02LHU9MyxsPTIsaD0xLHc9bmV3IEZsb2F0MzJBcnJheSh1KlEqRSksQz1uZXcgRmxvYXQzMkFycmF5KGwqUSpFKSxJPW5ldyBGbG9hdDMyQXJyYXkoaCpRKkUpO2ZvcihsZXQgQT0wO0E8RTtBKyspe2NvbnN0IGU9QSUzKjIvMy0xLHQ9QT4yPzA6LTEsbj1bZSx0LDAsZSsyLzMsdCwwLGUrMi8zLHQrMSwwLGUsdCwwLGUrMi8zLHQrMSwwLGUsdCsxLDBdO3cuc2V0KG4sdSpRKkEpLEMuc2V0KGcsbCpRKkEpO2NvbnN0IGk9W0EsQSxBLEEsQSxBXTtJLnNldChpLGgqUSpBKX1jb25zdCBNPW5ldyBscjtNLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBfaSh3LHUpKSxNLnNldEF0dHJpYnV0ZSgidXYiLG5ldyBfaShDLGwpKSxNLnNldEF0dHJpYnV0ZSgiZmFjZUluZGV4IixuZXcgX2koSSxoKSksZS5wdXNoKE0pLGk+NCYmaS0tfXJldHVybntsb2RQbGFuZXM6ZSxzaXplTG9kczp0LHNpZ21hczpufX0obikpLHRoaXMuX2JsdXJNYXRlcmlhbD1mdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj1uZXcgRmxvYXQzMkFycmF5KDIwKSxpPW5ldyBkbigwLDEsMCk7cmV0dXJuIG5ldyBqcih7bmFtZToiU3BoZXJpY2FsR2F1c3NpYW5CbHVyIixkZWZpbmVzOntuOjIwLENVQkVVVl9URVhFTF9XSURUSDoxL2UsQ1VCRVVWX1RFWEVMX0hFSUdIVDoxL3QsQ1VCRVVWX01BWF9NSVA6IiIuY29uY2F0KEEsIi4wIil9LHVuaWZvcm1zOntlbnZNYXA6e3ZhbHVlOm51bGx9LHNhbXBsZXM6e3ZhbHVlOjF9LHdlaWdodHM6e3ZhbHVlOm59LGxhdGl0dWRpbmFsOnt2YWx1ZTohMX0sZFRoZXRhOnt2YWx1ZTowfSxtaXBJbnQ6e3ZhbHVlOjB9LHBvbGVBeGlzOnt2YWx1ZTppfX0sdmVydGV4U2hhZGVyOiJcblxuXHRcdHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xuXHRcdHByZWNpc2lvbiBtZWRpdW1wIGludDtcblxuXHRcdGF0dHJpYnV0ZSBmbG9hdCBmYWNlSW5kZXg7XG5cblx0XHR2YXJ5aW5nIHZlYzMgdk91dHB1dERpcmVjdGlvbjtcblxuXHRcdC8vIFJIIGNvb3JkaW5hdGUgc3lzdGVtOyBQTVJFTSBmYWNlLWluZGV4aW5nIGNvbnZlbnRpb25cblx0XHR2ZWMzIGdldERpcmVjdGlvbiggdmVjMiB1diwgZmxvYXQgZmFjZSApIHtcblxuXHRcdFx0dXYgPSAyLjAgKiB1diAtIDEuMDtcblxuXHRcdFx0dmVjMyBkaXJlY3Rpb24gPSB2ZWMzKCB1diwgMS4wICk7XG5cblx0XHRcdGlmICggZmFjZSA9PSAwLjAgKSB7XG5cblx0XHRcdFx0ZGlyZWN0aW9uID0gZGlyZWN0aW9uLnp5eDsgLy8gKCAxLCB2LCB1ICkgcG9zIHhcblxuXHRcdFx0fSBlbHNlIGlmICggZmFjZSA9PSAxLjAgKSB7XG5cblx0XHRcdFx0ZGlyZWN0aW9uID0gZGlyZWN0aW9uLnh6eTtcblx0XHRcdFx0ZGlyZWN0aW9uLnh6ICo9IC0xLjA7IC8vICggLXUsIDEsIC12ICkgcG9zIHlcblxuXHRcdFx0fSBlbHNlIGlmICggZmFjZSA9PSAyLjAgKSB7XG5cblx0XHRcdFx0ZGlyZWN0aW9uLnggKj0gLTEuMDsgLy8gKCAtdSwgdiwgMSApIHBvcyB6XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gMy4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbiA9IGRpcmVjdGlvbi56eXg7XG5cdFx0XHRcdGRpcmVjdGlvbi54eiAqPSAtMS4wOyAvLyAoIC0xLCB2LCAtdSApIG5lZyB4XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gNC4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbiA9IGRpcmVjdGlvbi54enk7XG5cdFx0XHRcdGRpcmVjdGlvbi54eSAqPSAtMS4wOyAvLyAoIC11LCAtMSwgdiApIG5lZyB5XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gNS4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbi56ICo9IC0xLjA7IC8vICggdSwgdiwgLTEgKSBuZWcgelxuXG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiBkaXJlY3Rpb247XG5cblx0XHR9XG5cblx0XHR2b2lkIG1haW4oKSB7XG5cblx0XHRcdHZPdXRwdXREaXJlY3Rpb24gPSBnZXREaXJlY3Rpb24oIHV2LCBmYWNlSW5kZXggKTtcblx0XHRcdGdsX1Bvc2l0aW9uID0gdmVjNCggcG9zaXRpb24sIDEuMCApO1xuXG5cdFx0fVxuXHQiLGZyYWdtZW50U2hhZGVyOiJcblxuXHRcdFx0cHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7XG5cdFx0XHRwcmVjaXNpb24gbWVkaXVtcCBpbnQ7XG5cblx0XHRcdHZhcnlpbmcgdmVjMyB2T3V0cHV0RGlyZWN0aW9uO1xuXG5cdFx0XHR1bmlmb3JtIHNhbXBsZXIyRCBlbnZNYXA7XG5cdFx0XHR1bmlmb3JtIGludCBzYW1wbGVzO1xuXHRcdFx0dW5pZm9ybSBmbG9hdCB3ZWlnaHRzWyBuIF07XG5cdFx0XHR1bmlmb3JtIGJvb2wgbGF0aXR1ZGluYWw7XG5cdFx0XHR1bmlmb3JtIGZsb2F0IGRUaGV0YTtcblx0XHRcdHVuaWZvcm0gZmxvYXQgbWlwSW50O1xuXHRcdFx0dW5pZm9ybSB2ZWMzIHBvbGVBeGlzO1xuXG5cdFx0XHQjZGVmaW5lIEVOVk1BUF9UWVBFX0NVQkVfVVZcblx0XHRcdCNpbmNsdWRlIDxjdWJlX3V2X3JlZmxlY3Rpb25fZnJhZ21lbnQ+XG5cblx0XHRcdHZlYzMgZ2V0U2FtcGxlKCBmbG9hdCB0aGV0YSwgdmVjMyBheGlzICkge1xuXG5cdFx0XHRcdGZsb2F0IGNvc1RoZXRhID0gY29zKCB0aGV0YSApO1xuXHRcdFx0XHQvLyBSb2RyaWd1ZXMnIGF4aXMtYW5nbGUgcm90YXRpb25cblx0XHRcdFx0dmVjMyBzYW1wbGVEaXJlY3Rpb24gPSB2T3V0cHV0RGlyZWN0aW9uICogY29zVGhldGFcblx0XHRcdFx0XHQrIGNyb3NzKCBheGlzLCB2T3V0cHV0RGlyZWN0aW9uICkgKiBzaW4oIHRoZXRhIClcblx0XHRcdFx0XHQrIGF4aXMgKiBkb3QoIGF4aXMsIHZPdXRwdXREaXJlY3Rpb24gKSAqICggMS4wIC0gY29zVGhldGEgKTtcblxuXHRcdFx0XHRyZXR1cm4gYmlsaW5lYXJDdWJlVVYoIGVudk1hcCwgc2FtcGxlRGlyZWN0aW9uLCBtaXBJbnQgKTtcblxuXHRcdFx0fVxuXG5cdFx0XHR2b2lkIG1haW4oKSB7XG5cblx0XHRcdFx0dmVjMyBheGlzID0gbGF0aXR1ZGluYWwgPyBwb2xlQXhpcyA6IGNyb3NzKCBwb2xlQXhpcywgdk91dHB1dERpcmVjdGlvbiApO1xuXG5cdFx0XHRcdGlmICggYWxsKCBlcXVhbCggYXhpcywgdmVjMyggMC4wICkgKSApICkge1xuXG5cdFx0XHRcdFx0YXhpcyA9IHZlYzMoIHZPdXRwdXREaXJlY3Rpb24ueiwgMC4wLCAtIHZPdXRwdXREaXJlY3Rpb24ueCApO1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0XHRheGlzID0gbm9ybWFsaXplKCBheGlzICk7XG5cblx0XHRcdFx0Z2xfRnJhZ0NvbG9yID0gdmVjNCggMC4wLCAwLjAsIDAuMCwgMS4wICk7XG5cdFx0XHRcdGdsX0ZyYWdDb2xvci5yZ2IgKz0gd2VpZ2h0c1sgMCBdICogZ2V0U2FtcGxlKCAwLjAsIGF4aXMgKTtcblxuXHRcdFx0XHRmb3IgKCBpbnQgaSA9IDE7IGkgPCBuOyBpKysgKSB7XG5cblx0XHRcdFx0XHRpZiAoIGkgPj0gc2FtcGxlcyApIHtcblxuXHRcdFx0XHRcdFx0YnJlYWs7XG5cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRmbG9hdCB0aGV0YSA9IGRUaGV0YSAqIGZsb2F0KCBpICk7XG5cdFx0XHRcdFx0Z2xfRnJhZ0NvbG9yLnJnYiArPSB3ZWlnaHRzWyBpIF0gKiBnZXRTYW1wbGUoIC0xLjAgKiB0aGV0YSwgYXhpcyApO1xuXHRcdFx0XHRcdGdsX0ZyYWdDb2xvci5yZ2IgKz0gd2VpZ2h0c1sgaSBdICogZ2V0U2FtcGxlKCB0aGV0YSwgYXhpcyApO1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXHRcdCIsYmxlbmRpbmc6QyxkZXB0aFRlc3Q6ITEsZGVwdGhXcml0ZTohMX0pfShuLEEsZSl9cmV0dXJuIG59X2NvbXBpbGVNYXRlcmlhbChBKXtjb25zdCBlPW5ldyBScih0aGlzLl9sb2RQbGFuZXNbMF0sQSk7dGhpcy5fcmVuZGVyZXIuY29tcGlsZShlLHVvKX1fc2NlbmVUb0N1YmVVVihBLGUsdCxuKXtjb25zdCBpPW5ldyB6cig5MCwxLGUsdCkscj1bMSwtMSwxLDEsMSwxXSxvPVsxLDEsMSwtMSwtMSwtMV0scz10aGlzLl9yZW5kZXJlcixhPXMuYXV0b0NsZWFyLEI9cy50b25lTWFwcGluZztzLmdldENsZWFyQ29sb3IobG8pLHMudG9uZU1hcHBpbmc9XyxzLmF1dG9DbGVhcj0hMTtjb25zdCBjPW5ldyBMaSh7bmFtZToiUE1SRU0uQmFja2dyb3VuZCIsc2lkZTpsLGRlcHRoV3JpdGU6ITEsZGVwdGhUZXN0OiExfSksZz1uZXcgUnIobmV3IFNyLGMpO2xldCBFPSExO2NvbnN0IFE9QS5iYWNrZ3JvdW5kO1E/US5pc0NvbG9yJiYoYy5jb2xvci5jb3B5KFEpLEEuYmFja2dyb3VuZD1udWxsLEU9ITApOihjLmNvbG9yLmNvcHkobG8pLEU9ITApO2ZvcihsZXQgZT0wO2U8NjtlKyspe2NvbnN0IHQ9ZSUzOzA9PT10PyhpLnVwLnNldCgwLHJbZV0sMCksaS5sb29rQXQob1tlXSwwLDApKToxPT09dD8oaS51cC5zZXQoMCwwLHJbZV0pLGkubG9va0F0KDAsb1tlXSwwKSk6KGkudXAuc2V0KDAscltlXSwwKSxpLmxvb2tBdCgwLDAsb1tlXSkpO2NvbnN0IGE9dGhpcy5fY3ViZVNpemU7bW8obix0KmEsZT4yP2E6MCxhLGEpLHMuc2V0UmVuZGVyVGFyZ2V0KG4pLEUmJnMucmVuZGVyKGcsaSkscy5yZW5kZXIoQSxpKX1nLmdlb21ldHJ5LmRpc3Bvc2UoKSxnLm1hdGVyaWFsLmRpc3Bvc2UoKSxzLnRvbmVNYXBwaW5nPUIscy5hdXRvQ2xlYXI9YSxBLmJhY2tncm91bmQ9UX1fdGV4dHVyZVRvQ3ViZVVWKEEsZSl7Y29uc3QgdD10aGlzLl9yZW5kZXJlcixuPUEubWFwcGluZz09PWlBfHxBLm1hcHBpbmc9PT1yQTtuPyhudWxsPT09dGhpcy5fY3ViZW1hcE1hdGVyaWFsJiYodGhpcy5fY3ViZW1hcE1hdGVyaWFsPURvKCkpLHRoaXMuX2N1YmVtYXBNYXRlcmlhbC51bmlmb3Jtcy5mbGlwRW52TWFwLnZhbHVlPSExPT09QS5pc1JlbmRlclRhcmdldFRleHR1cmU/LTE6MSk6bnVsbD09PXRoaXMuX2VxdWlyZWN0TWF0ZXJpYWwmJih0aGlzLl9lcXVpcmVjdE1hdGVyaWFsPUZvKCkpO2NvbnN0IGk9bj90aGlzLl9jdWJlbWFwTWF0ZXJpYWw6dGhpcy5fZXF1aXJlY3RNYXRlcmlhbCxyPW5ldyBScih0aGlzLl9sb2RQbGFuZXNbMF0saSk7aS51bmlmb3Jtcy5lbnZNYXAudmFsdWU9QTtjb25zdCBvPXRoaXMuX2N1YmVTaXplO21vKGUsMCwwLDMqbywyKm8pLHQuc2V0UmVuZGVyVGFyZ2V0KGUpLHQucmVuZGVyKHIsdW8pfV9hcHBseVBNUkVNKEEpe2NvbnN0IGU9dGhpcy5fcmVuZGVyZXIsdD1lLmF1dG9DbGVhcjtlLmF1dG9DbGVhcj0hMTtmb3IobGV0IGU9MTtlPHRoaXMuX2xvZFBsYW5lcy5sZW5ndGg7ZSsrKXtjb25zdCB0PU1hdGguc3FydCh0aGlzLl9zaWdtYXNbZV0qdGhpcy5fc2lnbWFzW2VdLXRoaXMuX3NpZ21hc1tlLTFdKnRoaXMuX3NpZ21hc1tlLTFdKSxuPUlvWyhlLTEpJUlvLmxlbmd0aF07dGhpcy5fYmx1cihBLGUtMSxlLHQsbil9ZS5hdXRvQ2xlYXI9dH1fYmx1cihBLGUsdCxuLGkpe2NvbnN0IHI9dGhpcy5fcGluZ1BvbmdSZW5kZXJUYXJnZXQ7dGhpcy5faGFsZkJsdXIoQSxyLGUsdCxuLCJsYXRpdHVkaW5hbCIsaSksdGhpcy5faGFsZkJsdXIocixBLHQsdCxuLCJsb25naXR1ZGluYWwiLGkpfV9oYWxmQmx1cihBLGUsdCxuLGkscixvKXtjb25zdCBzPXRoaXMuX3JlbmRlcmVyLGE9dGhpcy5fYmx1ck1hdGVyaWFsOyJsYXRpdHVkaW5hbCIhPT1yJiYibG9uZ2l0dWRpbmFsIiE9PXImJmNvbnNvbGUuZXJyb3IoImJsdXIgZGlyZWN0aW9uIG11c3QgYmUgZWl0aGVyIGxhdGl0dWRpbmFsIG9yIGxvbmdpdHVkaW5hbCEiKTtjb25zdCBCPW5ldyBScih0aGlzLl9sb2RQbGFuZXNbbl0sYSksYz1hLnVuaWZvcm1zLGc9dGhpcy5fc2l6ZUxvZHNbdF0tMSxFPWlzRmluaXRlKGkpP01hdGguUEkvKDIqZyk6MipNYXRoLlBJLzM5LFE9aS9FLHU9aXNGaW5pdGUoaSk/MStNYXRoLmZsb29yKDMqUSk6MjA7dT4yMCYmY29uc29sZS53YXJuKCJzaWdtYVJhZGlhbnMsICIuY29uY2F0KGksIiwgaXMgdG9vIGxhcmdlIGFuZCB3aWxsIGNsaXAsIGFzIGl0IHJlcXVlc3RlZCAiKS5jb25jYXQodSwiIHNhbXBsZXMgd2hlbiB0aGUgbWF4aW11bSBpcyBzZXQgdG8gIikuY29uY2F0KDIwKSk7Y29uc3QgbD1bXTtsZXQgaD0wO2ZvcihsZXQgQT0wO0E8MjA7KytBKXtjb25zdCBlPUEvUSx0PU1hdGguZXhwKC1lKmUvMik7bC5wdXNoKHQpLDA9PT1BP2grPXQ6QTx1JiYoaCs9Mip0KX1mb3IobGV0IEE9MDtBPGwubGVuZ3RoO0ErKylsW0FdPWxbQV0vaDtjLmVudk1hcC52YWx1ZT1BLnRleHR1cmUsYy5zYW1wbGVzLnZhbHVlPXUsYy53ZWlnaHRzLnZhbHVlPWwsYy5sYXRpdHVkaW5hbC52YWx1ZT0ibGF0aXR1ZGluYWwiPT09cixvJiYoYy5wb2xlQXhpcy52YWx1ZT1vKTtjb25zdHtfbG9kTWF4Ond9PXRoaXM7Yy5kVGhldGEudmFsdWU9RSxjLm1pcEludC52YWx1ZT13LXQ7Y29uc3QgQz10aGlzLl9zaXplTG9kc1tuXTttbyhlLDMqQyoobj53LTQ/bi13KzQ6MCksNCoodGhpcy5fY3ViZVNpemUtQyksMypDLDIqQykscy5zZXRSZW5kZXJUYXJnZXQoZSkscy5yZW5kZXIoQix1byl9fWZ1bmN0aW9uIHBvKEEsZSx0KXtjb25zdCBuPW5ldyB1bihBLGUsdCk7cmV0dXJuIG4udGV4dHVyZS5tYXBwaW5nPWFBLG4udGV4dHVyZS5uYW1lPSJQTVJFTS5jdWJlVXYiLG4uc2Npc3NvclRlc3Q9ITAsbn1mdW5jdGlvbiBtbyhBLGUsdCxuLGkpe0Eudmlld3BvcnQuc2V0KGUsdCxuLGkpLEEuc2Npc3Nvci5zZXQoZSx0LG4saSl9ZnVuY3Rpb24gRm8oKXtyZXR1cm4gbmV3IGpyKHtuYW1lOiJFcXVpcmVjdGFuZ3VsYXJUb0N1YmVVViIsdW5pZm9ybXM6e2Vudk1hcDp7dmFsdWU6bnVsbH19LHZlcnRleFNoYWRlcjoiXG5cblx0XHRwcmVjaXNpb24gbWVkaXVtcCBmbG9hdDtcblx0XHRwcmVjaXNpb24gbWVkaXVtcCBpbnQ7XG5cblx0XHRhdHRyaWJ1dGUgZmxvYXQgZmFjZUluZGV4O1xuXG5cdFx0dmFyeWluZyB2ZWMzIHZPdXRwdXREaXJlY3Rpb247XG5cblx0XHQvLyBSSCBjb29yZGluYXRlIHN5c3RlbTsgUE1SRU0gZmFjZS1pbmRleGluZyBjb252ZW50aW9uXG5cdFx0dmVjMyBnZXREaXJlY3Rpb24oIHZlYzIgdXYsIGZsb2F0IGZhY2UgKSB7XG5cblx0XHRcdHV2ID0gMi4wICogdXYgLSAxLjA7XG5cblx0XHRcdHZlYzMgZGlyZWN0aW9uID0gdmVjMyggdXYsIDEuMCApO1xuXG5cdFx0XHRpZiAoIGZhY2UgPT0gMC4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbiA9IGRpcmVjdGlvbi56eXg7IC8vICggMSwgdiwgdSApIHBvcyB4XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gMS4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbiA9IGRpcmVjdGlvbi54enk7XG5cdFx0XHRcdGRpcmVjdGlvbi54eiAqPSAtMS4wOyAvLyAoIC11LCAxLCAtdiApIHBvcyB5XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gMi4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbi54ICo9IC0xLjA7IC8vICggLXUsIHYsIDEgKSBwb3MgelxuXG5cdFx0XHR9IGVsc2UgaWYgKCBmYWNlID09IDMuMCApIHtcblxuXHRcdFx0XHRkaXJlY3Rpb24gPSBkaXJlY3Rpb24uenl4O1xuXHRcdFx0XHRkaXJlY3Rpb24ueHogKj0gLTEuMDsgLy8gKCAtMSwgdiwgLXUgKSBuZWcgeFxuXG5cdFx0XHR9IGVsc2UgaWYgKCBmYWNlID09IDQuMCApIHtcblxuXHRcdFx0XHRkaXJlY3Rpb24gPSBkaXJlY3Rpb24ueHp5O1xuXHRcdFx0XHRkaXJlY3Rpb24ueHkgKj0gLTEuMDsgLy8gKCAtdSwgLTEsIHYgKSBuZWcgeVxuXG5cdFx0XHR9IGVsc2UgaWYgKCBmYWNlID09IDUuMCApIHtcblxuXHRcdFx0XHRkaXJlY3Rpb24ueiAqPSAtMS4wOyAvLyAoIHUsIHYsIC0xICkgbmVnIHpcblxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gZGlyZWN0aW9uO1xuXG5cdFx0fVxuXG5cdFx0dm9pZCBtYWluKCkge1xuXG5cdFx0XHR2T3V0cHV0RGlyZWN0aW9uID0gZ2V0RGlyZWN0aW9uKCB1diwgZmFjZUluZGV4ICk7XG5cdFx0XHRnbF9Qb3NpdGlvbiA9IHZlYzQoIHBvc2l0aW9uLCAxLjAgKTtcblxuXHRcdH1cblx0IixmcmFnbWVudFNoYWRlcjoiXG5cblx0XHRcdHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xuXHRcdFx0cHJlY2lzaW9uIG1lZGl1bXAgaW50O1xuXG5cdFx0XHR2YXJ5aW5nIHZlYzMgdk91dHB1dERpcmVjdGlvbjtcblxuXHRcdFx0dW5pZm9ybSBzYW1wbGVyMkQgZW52TWFwO1xuXG5cdFx0XHQjaW5jbHVkZSA8Y29tbW9uPlxuXG5cdFx0XHR2b2lkIG1haW4oKSB7XG5cblx0XHRcdFx0dmVjMyBvdXRwdXREaXJlY3Rpb24gPSBub3JtYWxpemUoIHZPdXRwdXREaXJlY3Rpb24gKTtcblx0XHRcdFx0dmVjMiB1diA9IGVxdWlyZWN0VXYoIG91dHB1dERpcmVjdGlvbiApO1xuXG5cdFx0XHRcdGdsX0ZyYWdDb2xvciA9IHZlYzQoIHRleHR1cmUyRCAoIGVudk1hcCwgdXYgKS5yZ2IsIDEuMCApO1xuXG5cdFx0XHR9XG5cdFx0IixibGVuZGluZzpDLGRlcHRoVGVzdDohMSxkZXB0aFdyaXRlOiExfSl9ZnVuY3Rpb24gRG8oKXtyZXR1cm4gbmV3IGpyKHtuYW1lOiJDdWJlbWFwVG9DdWJlVVYiLHVuaWZvcm1zOntlbnZNYXA6e3ZhbHVlOm51bGx9LGZsaXBFbnZNYXA6e3ZhbHVlOi0xfX0sdmVydGV4U2hhZGVyOiJcblxuXHRcdHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xuXHRcdHByZWNpc2lvbiBtZWRpdW1wIGludDtcblxuXHRcdGF0dHJpYnV0ZSBmbG9hdCBmYWNlSW5kZXg7XG5cblx0XHR2YXJ5aW5nIHZlYzMgdk91dHB1dERpcmVjdGlvbjtcblxuXHRcdC8vIFJIIGNvb3JkaW5hdGUgc3lzdGVtOyBQTVJFTSBmYWNlLWluZGV4aW5nIGNvbnZlbnRpb25cblx0XHR2ZWMzIGdldERpcmVjdGlvbiggdmVjMiB1diwgZmxvYXQgZmFjZSApIHtcblxuXHRcdFx0dXYgPSAyLjAgKiB1diAtIDEuMDtcblxuXHRcdFx0dmVjMyBkaXJlY3Rpb24gPSB2ZWMzKCB1diwgMS4wICk7XG5cblx0XHRcdGlmICggZmFjZSA9PSAwLjAgKSB7XG5cblx0XHRcdFx0ZGlyZWN0aW9uID0gZGlyZWN0aW9uLnp5eDsgLy8gKCAxLCB2LCB1ICkgcG9zIHhcblxuXHRcdFx0fSBlbHNlIGlmICggZmFjZSA9PSAxLjAgKSB7XG5cblx0XHRcdFx0ZGlyZWN0aW9uID0gZGlyZWN0aW9uLnh6eTtcblx0XHRcdFx0ZGlyZWN0aW9uLnh6ICo9IC0xLjA7IC8vICggLXUsIDEsIC12ICkgcG9zIHlcblxuXHRcdFx0fSBlbHNlIGlmICggZmFjZSA9PSAyLjAgKSB7XG5cblx0XHRcdFx0ZGlyZWN0aW9uLnggKj0gLTEuMDsgLy8gKCAtdSwgdiwgMSApIHBvcyB6XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gMy4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbiA9IGRpcmVjdGlvbi56eXg7XG5cdFx0XHRcdGRpcmVjdGlvbi54eiAqPSAtMS4wOyAvLyAoIC0xLCB2LCAtdSApIG5lZyB4XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gNC4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbiA9IGRpcmVjdGlvbi54enk7XG5cdFx0XHRcdGRpcmVjdGlvbi54eSAqPSAtMS4wOyAvLyAoIC11LCAtMSwgdiApIG5lZyB5XG5cblx0XHRcdH0gZWxzZSBpZiAoIGZhY2UgPT0gNS4wICkge1xuXG5cdFx0XHRcdGRpcmVjdGlvbi56ICo9IC0xLjA7IC8vICggdSwgdiwgLTEgKSBuZWcgelxuXG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiBkaXJlY3Rpb247XG5cblx0XHR9XG5cblx0XHR2b2lkIG1haW4oKSB7XG5cblx0XHRcdHZPdXRwdXREaXJlY3Rpb24gPSBnZXREaXJlY3Rpb24oIHV2LCBmYWNlSW5kZXggKTtcblx0XHRcdGdsX1Bvc2l0aW9uID0gdmVjNCggcG9zaXRpb24sIDEuMCApO1xuXG5cdFx0fVxuXHQiLGZyYWdtZW50U2hhZGVyOiJcblxuXHRcdFx0cHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7XG5cdFx0XHRwcmVjaXNpb24gbWVkaXVtcCBpbnQ7XG5cblx0XHRcdHVuaWZvcm0gZmxvYXQgZmxpcEVudk1hcDtcblxuXHRcdFx0dmFyeWluZyB2ZWMzIHZPdXRwdXREaXJlY3Rpb247XG5cblx0XHRcdHVuaWZvcm0gc2FtcGxlckN1YmUgZW52TWFwO1xuXG5cdFx0XHR2b2lkIG1haW4oKSB7XG5cblx0XHRcdFx0Z2xfRnJhZ0NvbG9yID0gdGV4dHVyZUN1YmUoIGVudk1hcCwgdmVjMyggZmxpcEVudk1hcCAqIHZPdXRwdXREaXJlY3Rpb24ueCwgdk91dHB1dERpcmVjdGlvbi55eiApICk7XG5cblx0XHRcdH1cblx0XHQiLGJsZW5kaW5nOkMsZGVwdGhUZXN0OiExLGRlcHRoV3JpdGU6ITF9KX1mdW5jdGlvbiBZbyhBKXtsZXQgZT1uZXcgV2Vha01hcCx0PW51bGw7ZnVuY3Rpb24gbihBKXtjb25zdCB0PUEudGFyZ2V0O3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsbik7Y29uc3QgaT1lLmdldCh0KTt2b2lkIDAhPT1pJiYoZS5kZWxldGUodCksaS5kaXNwb3NlKCkpfXJldHVybntnZXQ6ZnVuY3Rpb24oaSl7aWYoaSYmaS5pc1RleHR1cmUpe2NvbnN0IHI9aS5tYXBwaW5nLG89cj09PW9BfHxyPT09c0Escz1yPT09aUF8fHI9PT1yQTtpZihvfHxzKXtpZihpLmlzUmVuZGVyVGFyZ2V0VGV4dHVyZSYmITA9PT1pLm5lZWRzUE1SRU1VcGRhdGUpe2kubmVlZHNQTVJFTVVwZGF0ZT0hMTtsZXQgbj1lLmdldChpKTtyZXR1cm4gbnVsbD09PXQmJih0PW5ldyBNbyhBKSksbj1vP3QuZnJvbUVxdWlyZWN0YW5ndWxhcihpLG4pOnQuZnJvbUN1YmVtYXAoaSxuKSxlLnNldChpLG4pLG4udGV4dHVyZX1pZihlLmhhcyhpKSlyZXR1cm4gZS5nZXQoaSkudGV4dHVyZTt7Y29uc3Qgcj1pLmltYWdlO2lmKG8mJnImJnIuaGVpZ2h0PjB8fHMmJnImJmZ1bmN0aW9uKEEpe2xldCBlPTA7Zm9yKGxldCB0PTA7dDw2O3QrKyl2b2lkIDAhPT1BW3RdJiZlKys7cmV0dXJuIDY9PT1lfShyKSl7bnVsbD09PXQmJih0PW5ldyBNbyhBKSk7Y29uc3Qgcj1vP3QuZnJvbUVxdWlyZWN0YW5ndWxhcihpKTp0LmZyb21DdWJlbWFwKGkpO3JldHVybiBlLnNldChpLHIpLGkuYWRkRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsbiksci50ZXh0dXJlfXJldHVybiBudWxsfX19cmV0dXJuIGl9LGRpc3Bvc2U6ZnVuY3Rpb24oKXtlPW5ldyBXZWFrTWFwLG51bGwhPT10JiYodC5kaXNwb3NlKCksdD1udWxsKX19fWZ1bmN0aW9uIGZvKEEpe2NvbnN0IGU9e307ZnVuY3Rpb24gdCh0KXtpZih2b2lkIDAhPT1lW3RdKXJldHVybiBlW3RdO2xldCBuO3N3aXRjaCh0KXtjYXNlIldFQkdMX2RlcHRoX3RleHR1cmUiOm49QS5nZXRFeHRlbnNpb24oIldFQkdMX2RlcHRoX3RleHR1cmUiKXx8QS5nZXRFeHRlbnNpb24oIk1PWl9XRUJHTF9kZXB0aF90ZXh0dXJlIil8fEEuZ2V0RXh0ZW5zaW9uKCJXRUJLSVRfV0VCR0xfZGVwdGhfdGV4dHVyZSIpO2JyZWFrO2Nhc2UiRVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGljIjpuPUEuZ2V0RXh0ZW5zaW9uKCJFWFRfdGV4dHVyZV9maWx0ZXJfYW5pc290cm9waWMiKXx8QS5nZXRFeHRlbnNpb24oIk1PWl9FWFRfdGV4dHVyZV9maWx0ZXJfYW5pc290cm9waWMiKXx8QS5nZXRFeHRlbnNpb24oIldFQktJVF9FWFRfdGV4dHVyZV9maWx0ZXJfYW5pc290cm9waWMiKTticmVhaztjYXNlIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9zM3RjIjpuPUEuZ2V0RXh0ZW5zaW9uKCJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfczN0YyIpfHxBLmdldEV4dGVuc2lvbigiTU9aX1dFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9zM3RjIil8fEEuZ2V0RXh0ZW5zaW9uKCJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3MzdGMiKTticmVhaztjYXNlIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9wdnJ0YyI6bj1BLmdldEV4dGVuc2lvbigiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3B2cnRjIil8fEEuZ2V0RXh0ZW5zaW9uKCJXRUJLSVRfV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3B2cnRjIik7YnJlYWs7ZGVmYXVsdDpuPUEuZ2V0RXh0ZW5zaW9uKHQpfXJldHVybiBlW3RdPW4sbn1yZXR1cm57aGFzOmZ1bmN0aW9uKEEpe3JldHVybiBudWxsIT09dChBKX0saW5pdDpmdW5jdGlvbihBKXtBLmlzV2ViR0wyP3QoIkVYVF9jb2xvcl9idWZmZXJfZmxvYXQiKToodCgiV0VCR0xfZGVwdGhfdGV4dHVyZSIpLHQoIk9FU190ZXh0dXJlX2Zsb2F0IiksdCgiT0VTX3RleHR1cmVfaGFsZl9mbG9hdCIpLHQoIk9FU190ZXh0dXJlX2hhbGZfZmxvYXRfbGluZWFyIiksdCgiT0VTX3N0YW5kYXJkX2Rlcml2YXRpdmVzIiksdCgiT0VTX2VsZW1lbnRfaW5kZXhfdWludCIpLHQoIk9FU192ZXJ0ZXhfYXJyYXlfb2JqZWN0IiksdCgiQU5HTEVfaW5zdGFuY2VkX2FycmF5cyIpKSx0KCJPRVNfdGV4dHVyZV9mbG9hdF9saW5lYXIiKSx0KCJFWFRfY29sb3JfYnVmZmVyX2hhbGZfZmxvYXQiKSx0KCJXRUJHTF9tdWx0aXNhbXBsZWRfcmVuZGVyX3RvX3RleHR1cmUiKX0sZ2V0OmZ1bmN0aW9uKEEpe2NvbnN0IGU9dChBKTtyZXR1cm4gbnVsbD09PWUmJmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogIitBKyIgZXh0ZW5zaW9uIG5vdCBzdXBwb3J0ZWQuIiksZX19fWZ1bmN0aW9uIE5vKEEsZSx0LG4pe2NvbnN0IGk9e30scj1uZXcgV2Vha01hcDtmdW5jdGlvbiBvKEEpe2NvbnN0IHM9QS50YXJnZXQ7bnVsbCE9PXMuaW5kZXgmJmUucmVtb3ZlKHMuaW5kZXgpO2Zvcihjb25zdCBBIGluIHMuYXR0cmlidXRlcyllLnJlbW92ZShzLmF0dHJpYnV0ZXNbQV0pO2Zvcihjb25zdCBBIGluIHMubW9ycGhBdHRyaWJ1dGVzKXtjb25zdCB0PXMubW9ycGhBdHRyaWJ1dGVzW0FdO2ZvcihsZXQgQT0wLG49dC5sZW5ndGg7QTxuO0ErKyllLnJlbW92ZSh0W0FdKX1zLnJlbW92ZUV2ZW50TGlzdGVuZXIoImRpc3Bvc2UiLG8pLGRlbGV0ZSBpW3MuaWRdO2NvbnN0IGE9ci5nZXQocyk7YSYmKGUucmVtb3ZlKGEpLHIuZGVsZXRlKHMpKSxuLnJlbGVhc2VTdGF0ZXNPZkdlb21ldHJ5KHMpLCEwPT09cy5pc0luc3RhbmNlZEJ1ZmZlckdlb21ldHJ5JiZkZWxldGUgcy5fbWF4SW5zdGFuY2VDb3VudCx0Lm1lbW9yeS5nZW9tZXRyaWVzLS19ZnVuY3Rpb24gcyhBKXtjb25zdCB0PVtdLG49QS5pbmRleCxpPUEuYXR0cmlidXRlcy5wb3NpdGlvbjtsZXQgbz0wO2lmKG51bGwhPT1uKXtjb25zdCBBPW4uYXJyYXk7bz1uLnZlcnNpb247Zm9yKGxldCBlPTAsbj1BLmxlbmd0aDtlPG47ZSs9Myl7Y29uc3Qgbj1BW2UrMF0saT1BW2UrMV0scj1BW2UrMl07dC5wdXNoKG4saSxpLHIscixuKX19ZWxzZXtjb25zdCBBPWkuYXJyYXk7bz1pLnZlcnNpb247Zm9yKGxldCBlPTAsbj1BLmxlbmd0aC8zLTE7ZTxuO2UrPTMpe2NvbnN0IEE9ZSswLG49ZSsxLGk9ZSsyO3QucHVzaChBLG4sbixpLGksQSl9fWNvbnN0IHM9bmV3KFZ0KHQpP2lyOnRyKSh0LDEpO3MudmVyc2lvbj1vO2NvbnN0IGE9ci5nZXQoQSk7YSYmZS5yZW1vdmUoYSksci5zZXQoQSxzKX1yZXR1cm57Z2V0OmZ1bmN0aW9uKEEsZSl7cmV0dXJuITA9PT1pW2UuaWRdfHwoZS5hZGRFdmVudExpc3RlbmVyKCJkaXNwb3NlIixvKSxpW2UuaWRdPSEwLHQubWVtb3J5Lmdlb21ldHJpZXMrKyksZX0sdXBkYXRlOmZ1bmN0aW9uKHQpe2NvbnN0IG49dC5hdHRyaWJ1dGVzO2Zvcihjb25zdCB0IGluIG4pZS51cGRhdGUoblt0XSxBLkFSUkFZX0JVRkZFUik7Y29uc3QgaT10Lm1vcnBoQXR0cmlidXRlcztmb3IoY29uc3QgdCBpbiBpKXtjb25zdCBuPWlbdF07Zm9yKGxldCB0PTAsaT1uLmxlbmd0aDt0PGk7dCsrKWUudXBkYXRlKG5bdF0sQS5BUlJBWV9CVUZGRVIpfX0sZ2V0V2lyZWZyYW1lQXR0cmlidXRlOmZ1bmN0aW9uKEEpe2NvbnN0IGU9ci5nZXQoQSk7aWYoZSl7Y29uc3QgdD1BLmluZGV4O251bGwhPT10JiZlLnZlcnNpb248dC52ZXJzaW9uJiZzKEEpfWVsc2UgcyhBKTtyZXR1cm4gci5nZXQoQSl9fX1mdW5jdGlvbiBVbyhBLGUsdCxuKXtjb25zdCBpPW4uaXNXZWJHTDI7bGV0IHIsbyxzO3RoaXMuc2V0TW9kZT1mdW5jdGlvbihBKXtyPUF9LHRoaXMuc2V0SW5kZXg9ZnVuY3Rpb24oQSl7bz1BLnR5cGUscz1BLmJ5dGVzUGVyRWxlbWVudH0sdGhpcy5yZW5kZXI9ZnVuY3Rpb24oZSxuKXtBLmRyYXdFbGVtZW50cyhyLG4sbyxlKnMpLHQudXBkYXRlKG4sciwxKX0sdGhpcy5yZW5kZXJJbnN0YW5jZXM9ZnVuY3Rpb24obixhLEIpe2lmKDA9PT1CKXJldHVybjtsZXQgYyxnO2lmKGkpYz1BLGc9ImRyYXdFbGVtZW50c0luc3RhbmNlZCI7ZWxzZSBpZihjPWUuZ2V0KCJBTkdMRV9pbnN0YW5jZWRfYXJyYXlzIiksZz0iZHJhd0VsZW1lbnRzSW5zdGFuY2VkQU5HTEUiLG51bGw9PT1jKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMSW5kZXhlZEJ1ZmZlclJlbmRlcmVyOiB1c2luZyBUSFJFRS5JbnN0YW5jZWRCdWZmZXJHZW9tZXRyeSBidXQgaGFyZHdhcmUgZG9lcyBub3Qgc3VwcG9ydCBleHRlbnNpb24gQU5HTEVfaW5zdGFuY2VkX2FycmF5cy4iKTtjW2ddKHIsYSxvLG4qcyxCKSx0LnVwZGF0ZShhLHIsQil9fWZ1bmN0aW9uIHlvKEEpe2NvbnN0IGU9e2ZyYW1lOjAsY2FsbHM6MCx0cmlhbmdsZXM6MCxwb2ludHM6MCxsaW5lczowfTtyZXR1cm57bWVtb3J5OntnZW9tZXRyaWVzOjAsdGV4dHVyZXM6MH0scmVuZGVyOmUscHJvZ3JhbXM6bnVsbCxhdXRvUmVzZXQ6ITAscmVzZXQ6ZnVuY3Rpb24oKXtlLmNhbGxzPTAsZS50cmlhbmdsZXM9MCxlLnBvaW50cz0wLGUubGluZXM9MH0sdXBkYXRlOmZ1bmN0aW9uKHQsbixpKXtzd2l0Y2goZS5jYWxscysrLG4pe2Nhc2UgQS5UUklBTkdMRVM6ZS50cmlhbmdsZXMrPWkqKHQvMyk7YnJlYWs7Y2FzZSBBLkxJTkVTOmUubGluZXMrPWkqKHQvMik7YnJlYWs7Y2FzZSBBLkxJTkVfU1RSSVA6ZS5saW5lcys9aSoodC0xKTticmVhaztjYXNlIEEuTElORV9MT09QOmUubGluZXMrPWkqdDticmVhaztjYXNlIEEuUE9JTlRTOmUucG9pbnRzKz1pKnQ7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTEluZm86IFVua25vd24gZHJhdyBtb2RlOiIsbil9fX19ZnVuY3Rpb24gVG8oQSxlKXtyZXR1cm4gQVswXS1lWzBdfWZ1bmN0aW9uIHhvKEEsZSl7cmV0dXJuIE1hdGguYWJzKGVbMV0pLU1hdGguYWJzKEFbMV0pfWZ1bmN0aW9uIFJvKEEsZSx0KXtjb25zdCBuPXt9LGk9bmV3IEZsb2F0MzJBcnJheSg4KSxyPW5ldyBXZWFrTWFwLG89bmV3IFFuLHM9W107Zm9yKGxldCBBPTA7QTw4O0ErKylzW0FdPVtBLDBdO3JldHVybnt1cGRhdGU6ZnVuY3Rpb24oYSxCLGMpe2NvbnN0IGc9YS5tb3JwaFRhcmdldEluZmx1ZW5jZXM7aWYoITA9PT1lLmlzV2ViR0wyKXtjb25zdCBuPUIubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9ufHxCLm1vcnBoQXR0cmlidXRlcy5ub3JtYWx8fEIubW9ycGhBdHRyaWJ1dGVzLmNvbG9yLGk9dm9pZCAwIT09bj9uLmxlbmd0aDowO2xldCBzPXIuZ2V0KEIpO2lmKHZvaWQgMD09PXN8fHMuY291bnQhPT1pKXt2b2lkIDAhPT1zJiZzLnRleHR1cmUuZGlzcG9zZSgpO2NvbnN0IEE9dm9pZCAwIT09Qi5tb3JwaEF0dHJpYnV0ZXMucG9zaXRpb24sdD12b2lkIDAhPT1CLm1vcnBoQXR0cmlidXRlcy5ub3JtYWwsbj12b2lkIDAhPT1CLm1vcnBoQXR0cmlidXRlcy5jb2xvcixhPUIubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9ufHxbXSxjPUIubW9ycGhBdHRyaWJ1dGVzLm5vcm1hbHx8W10sZz1CLm1vcnBoQXR0cmlidXRlcy5jb2xvcnx8W107bGV0IEU9MDshMD09PUEmJihFPTEpLCEwPT09dCYmKEU9MiksITA9PT1uJiYoRT0zKTtsZXQgUT1CLmF0dHJpYnV0ZXMucG9zaXRpb24uY291bnQqRSx1PTE7UT5lLm1heFRleHR1cmVTaXplJiYodT1NYXRoLmNlaWwoUS9lLm1heFRleHR1cmVTaXplKSxRPWUubWF4VGV4dHVyZVNpemUpO2NvbnN0IGw9bmV3IEZsb2F0MzJBcnJheShRKnUqNCppKSxoPW5ldyBsbihsLFEsdSxpKTtoLnR5cGU9TkEsaC5uZWVkc1VwZGF0ZT0hMDtjb25zdCB3PTQqRTtmb3IobGV0IGU9MDtlPGk7ZSsrKXtjb25zdCBpPWFbZV0scj1jW2VdLHM9Z1tlXSxCPVEqdSo0KmU7Zm9yKGxldCBlPTA7ZTxpLmNvdW50O2UrKyl7Y29uc3QgYT1lKnc7ITA9PT1BJiYoby5mcm9tQnVmZmVyQXR0cmlidXRlKGksZSksbFtCK2ErMF09by54LGxbQithKzFdPW8ueSxsW0IrYSsyXT1vLnosbFtCK2ErM109MCksITA9PT10JiYoby5mcm9tQnVmZmVyQXR0cmlidXRlKHIsZSksbFtCK2ErNF09by54LGxbQithKzVdPW8ueSxsW0IrYSs2XT1vLnosbFtCK2ErN109MCksITA9PT1uJiYoby5mcm9tQnVmZmVyQXR0cmlidXRlKHMsZSksbFtCK2ErOF09by54LGxbQithKzldPW8ueSxsW0IrYSsxMF09by56LGxbQithKzExXT00PT09cy5pdGVtU2l6ZT9vLnc6MSl9fXM9e2NvdW50OmksdGV4dHVyZTpoLHNpemU6bmV3IEx0KFEsdSl9LHIuc2V0KEIscyksQi5hZGRFdmVudExpc3RlbmVyKCJkaXNwb3NlIiwoZnVuY3Rpb24gQSgpe2guZGlzcG9zZSgpLHIuZGVsZXRlKEIpLEIucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsQSl9KSl9bGV0IGE9MDtmb3IobGV0IEE9MDtBPGcubGVuZ3RoO0ErKylhKz1nW0FdO2NvbnN0IEU9Qi5tb3JwaFRhcmdldHNSZWxhdGl2ZT8xOjEtYTtjLmdldFVuaWZvcm1zKCkuc2V0VmFsdWUoQSwibW9ycGhUYXJnZXRCYXNlSW5mbHVlbmNlIixFKSxjLmdldFVuaWZvcm1zKCkuc2V0VmFsdWUoQSwibW9ycGhUYXJnZXRJbmZsdWVuY2VzIixnKSxjLmdldFVuaWZvcm1zKCkuc2V0VmFsdWUoQSwibW9ycGhUYXJnZXRzVGV4dHVyZSIscy50ZXh0dXJlLHQpLGMuZ2V0VW5pZm9ybXMoKS5zZXRWYWx1ZShBLCJtb3JwaFRhcmdldHNUZXh0dXJlU2l6ZSIscy5zaXplKX1lbHNle2NvbnN0IGU9dm9pZCAwPT09Zz8wOmcubGVuZ3RoO2xldCB0PW5bQi5pZF07aWYodm9pZCAwPT09dHx8dC5sZW5ndGghPT1lKXt0PVtdO2ZvcihsZXQgQT0wO0E8ZTtBKyspdFtBXT1bQSwwXTtuW0IuaWRdPXR9Zm9yKGxldCBBPTA7QTxlO0ErKyl7Y29uc3QgZT10W0FdO2VbMF09QSxlWzFdPWdbQV19dC5zb3J0KHhvKTtmb3IobGV0IEE9MDtBPDg7QSsrKUE8ZSYmdFtBXVsxXT8oc1tBXVswXT10W0FdWzBdLHNbQV1bMV09dFtBXVsxXSk6KHNbQV1bMF09TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIsc1tBXVsxXT0wKTtzLnNvcnQoVG8pO2NvbnN0IHI9Qi5tb3JwaEF0dHJpYnV0ZXMucG9zaXRpb24sbz1CLm1vcnBoQXR0cmlidXRlcy5ub3JtYWw7bGV0IGE9MDtmb3IobGV0IEE9MDtBPDg7QSsrKXtjb25zdCBlPXNbQV0sdD1lWzBdLG49ZVsxXTt0IT09TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVImJm4/KHImJkIuZ2V0QXR0cmlidXRlKCJtb3JwaFRhcmdldCIrQSkhPT1yW3RdJiZCLnNldEF0dHJpYnV0ZSgibW9ycGhUYXJnZXQiK0Esclt0XSksbyYmQi5nZXRBdHRyaWJ1dGUoIm1vcnBoTm9ybWFsIitBKSE9PW9bdF0mJkIuc2V0QXR0cmlidXRlKCJtb3JwaE5vcm1hbCIrQSxvW3RdKSxpW0FdPW4sYSs9bik6KHImJiEwPT09Qi5oYXNBdHRyaWJ1dGUoIm1vcnBoVGFyZ2V0IitBKSYmQi5kZWxldGVBdHRyaWJ1dGUoIm1vcnBoVGFyZ2V0IitBKSxvJiYhMD09PUIuaGFzQXR0cmlidXRlKCJtb3JwaE5vcm1hbCIrQSkmJkIuZGVsZXRlQXR0cmlidXRlKCJtb3JwaE5vcm1hbCIrQSksaVtBXT0wKX1jb25zdCBFPUIubW9ycGhUYXJnZXRzUmVsYXRpdmU/MToxLWE7Yy5nZXRVbmlmb3JtcygpLnNldFZhbHVlKEEsIm1vcnBoVGFyZ2V0QmFzZUluZmx1ZW5jZSIsRSksYy5nZXRVbmlmb3JtcygpLnNldFZhbHVlKEEsIm1vcnBoVGFyZ2V0SW5mbHVlbmNlcyIsaSl9fX19ZnVuY3Rpb24gR28oQSxlLHQsbil7bGV0IGk9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gcihBKXtjb25zdCBlPUEudGFyZ2V0O2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsciksdC5yZW1vdmUoZS5pbnN0YW5jZU1hdHJpeCksbnVsbCE9PWUuaW5zdGFuY2VDb2xvciYmdC5yZW1vdmUoZS5pbnN0YW5jZUNvbG9yKX1yZXR1cm57dXBkYXRlOmZ1bmN0aW9uKG8pe2NvbnN0IHM9bi5yZW5kZXIuZnJhbWUsYT1vLmdlb21ldHJ5LEI9ZS5nZXQobyxhKTtyZXR1cm4gaS5nZXQoQikhPT1zJiYoZS51cGRhdGUoQiksaS5zZXQoQixzKSksby5pc0luc3RhbmNlZE1lc2gmJighMT09PW8uaGFzRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIscikmJm8uYWRkRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsciksdC51cGRhdGUoby5pbnN0YW5jZU1hdHJpeCxBLkFSUkFZX0JVRkZFUiksbnVsbCE9PW8uaW5zdGFuY2VDb2xvciYmdC51cGRhdGUoby5pbnN0YW5jZUNvbG9yLEEuQVJSQVlfQlVGRkVSKSksQn0sZGlzcG9zZTpmdW5jdGlvbigpe2k9bmV3IFdlYWtNYXB9fX1jb25zdCBTbz1uZXcgRW4sYm89bmV3IGxuLEhvPW5ldyB3bix2bz1uZXcgUHIsa289W10sam89W10sSm89bmV3IEZsb2F0MzJBcnJheSgxNiksem89bmV3IEZsb2F0MzJBcnJheSg5KSxMbz1uZXcgRmxvYXQzMkFycmF5KDQpO2Z1bmN0aW9uIFBvKEEsZSx0KXtjb25zdCBuPUFbMF07aWYobjw9MHx8bj4wKXJldHVybiBBO2NvbnN0IGk9ZSp0O2xldCByPWtvW2ldO2lmKHZvaWQgMD09PXImJihyPW5ldyBGbG9hdDMyQXJyYXkoaSksa29baV09ciksMCE9PWUpe24udG9BcnJheShyLDApO2ZvcihsZXQgbj0xLGk9MDtuIT09ZTsrK24paSs9dCxBW25dLnRvQXJyYXkocixpKX1yZXR1cm4gcn1mdW5jdGlvbiBPbyhBLGUpe2lmKEEubGVuZ3RoIT09ZS5sZW5ndGgpcmV0dXJuITE7Zm9yKGxldCB0PTAsbj1BLmxlbmd0aDt0PG47dCsrKWlmKEFbdF0hPT1lW3RdKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIFZvKEEsZSl7Zm9yKGxldCB0PTAsbj1lLmxlbmd0aDt0PG47dCsrKUFbdF09ZVt0XX1mdW5jdGlvbiBXbyhBLGUpe2xldCB0PWpvW2VdO3ZvaWQgMD09PXQmJih0PW5ldyBJbnQzMkFycmF5KGUpLGpvW2VdPXQpO2ZvcihsZXQgbj0wO24hPT1lOysrbil0W25dPUEuYWxsb2NhdGVUZXh0dXJlVW5pdCgpO3JldHVybiB0fWZ1bmN0aW9uIEtvKEEsZSl7Y29uc3QgdD10aGlzLmNhY2hlO3RbMF0hPT1lJiYoQS51bmlmb3JtMWYodGhpcy5hZGRyLGUpLHRbMF09ZSl9ZnVuY3Rpb24gWG8oQSxlKXtjb25zdCB0PXRoaXMuY2FjaGU7aWYodm9pZCAwIT09ZS54KXRbMF09PT1lLngmJnRbMV09PT1lLnl8fChBLnVuaWZvcm0yZih0aGlzLmFkZHIsZS54LGUueSksdFswXT1lLngsdFsxXT1lLnkpO2Vsc2V7aWYoT28odCxlKSlyZXR1cm47QS51bmlmb3JtMmZ2KHRoaXMuYWRkcixlKSxWbyh0LGUpfX1mdW5jdGlvbiBabyhBLGUpe2NvbnN0IHQ9dGhpcy5jYWNoZTtpZih2b2lkIDAhPT1lLngpdFswXT09PWUueCYmdFsxXT09PWUueSYmdFsyXT09PWUuenx8KEEudW5pZm9ybTNmKHRoaXMuYWRkcixlLngsZS55LGUueiksdFswXT1lLngsdFsxXT1lLnksdFsyXT1lLnopO2Vsc2UgaWYodm9pZCAwIT09ZS5yKXRbMF09PT1lLnImJnRbMV09PT1lLmcmJnRbMl09PT1lLmJ8fChBLnVuaWZvcm0zZih0aGlzLmFkZHIsZS5yLGUuZyxlLmIpLHRbMF09ZS5yLHRbMV09ZS5nLHRbMl09ZS5iKTtlbHNle2lmKE9vKHQsZSkpcmV0dXJuO0EudW5pZm9ybTNmdih0aGlzLmFkZHIsZSksVm8odCxlKX19ZnVuY3Rpb24gX28oQSxlKXtjb25zdCB0PXRoaXMuY2FjaGU7aWYodm9pZCAwIT09ZS54KXRbMF09PT1lLngmJnRbMV09PT1lLnkmJnRbMl09PT1lLnomJnRbM109PT1lLnd8fChBLnVuaWZvcm00Zih0aGlzLmFkZHIsZS54LGUueSxlLnosZS53KSx0WzBdPWUueCx0WzFdPWUueSx0WzJdPWUueix0WzNdPWUudyk7ZWxzZXtpZihPbyh0LGUpKXJldHVybjtBLnVuaWZvcm00ZnYodGhpcy5hZGRyLGUpLFZvKHQsZSl9fWZ1bmN0aW9uIHFvKEEsZSl7Y29uc3QgdD10aGlzLmNhY2hlLG49ZS5lbGVtZW50cztpZih2b2lkIDA9PT1uKXtpZihPbyh0LGUpKXJldHVybjtBLnVuaWZvcm1NYXRyaXgyZnYodGhpcy5hZGRyLCExLGUpLFZvKHQsZSl9ZWxzZXtpZihPbyh0LG4pKXJldHVybjtMby5zZXQobiksQS51bmlmb3JtTWF0cml4MmZ2KHRoaXMuYWRkciwhMSxMbyksVm8odCxuKX19ZnVuY3Rpb24gJG8oQSxlKXtjb25zdCB0PXRoaXMuY2FjaGUsbj1lLmVsZW1lbnRzO2lmKHZvaWQgMD09PW4pe2lmKE9vKHQsZSkpcmV0dXJuO0EudW5pZm9ybU1hdHJpeDNmdih0aGlzLmFkZHIsITEsZSksVm8odCxlKX1lbHNle2lmKE9vKHQsbikpcmV0dXJuO3pvLnNldChuKSxBLnVuaWZvcm1NYXRyaXgzZnYodGhpcy5hZGRyLCExLHpvKSxWbyh0LG4pfX1mdW5jdGlvbiBBcyhBLGUpe2NvbnN0IHQ9dGhpcy5jYWNoZSxuPWUuZWxlbWVudHM7aWYodm9pZCAwPT09bil7aWYoT28odCxlKSlyZXR1cm47QS51bmlmb3JtTWF0cml4NGZ2KHRoaXMuYWRkciwhMSxlKSxWbyh0LGUpfWVsc2V7aWYoT28odCxuKSlyZXR1cm47Sm8uc2V0KG4pLEEudW5pZm9ybU1hdHJpeDRmdih0aGlzLmFkZHIsITEsSm8pLFZvKHQsbil9fWZ1bmN0aW9uIGVzKEEsZSl7Y29uc3QgdD10aGlzLmNhY2hlO3RbMF0hPT1lJiYoQS51bmlmb3JtMWkodGhpcy5hZGRyLGUpLHRbMF09ZSl9ZnVuY3Rpb24gdHMoQSxlKXtjb25zdCB0PXRoaXMuY2FjaGU7aWYodm9pZCAwIT09ZS54KXRbMF09PT1lLngmJnRbMV09PT1lLnl8fChBLnVuaWZvcm0yaSh0aGlzLmFkZHIsZS54LGUueSksdFswXT1lLngsdFsxXT1lLnkpO2Vsc2V7aWYoT28odCxlKSlyZXR1cm47QS51bmlmb3JtMml2KHRoaXMuYWRkcixlKSxWbyh0LGUpfX1mdW5jdGlvbiBucyhBLGUpe2NvbnN0IHQ9dGhpcy5jYWNoZTtpZih2b2lkIDAhPT1lLngpdFswXT09PWUueCYmdFsxXT09PWUueSYmdFsyXT09PWUuenx8KEEudW5pZm9ybTNpKHRoaXMuYWRkcixlLngsZS55LGUueiksdFswXT1lLngsdFsxXT1lLnksdFsyXT1lLnopO2Vsc2V7aWYoT28odCxlKSlyZXR1cm47QS51bmlmb3JtM2l2KHRoaXMuYWRkcixlKSxWbyh0LGUpfX1mdW5jdGlvbiBpcyhBLGUpe2NvbnN0IHQ9dGhpcy5jYWNoZTtpZih2b2lkIDAhPT1lLngpdFswXT09PWUueCYmdFsxXT09PWUueSYmdFsyXT09PWUueiYmdFszXT09PWUud3x8KEEudW5pZm9ybTRpKHRoaXMuYWRkcixlLngsZS55LGUueixlLncpLHRbMF09ZS54LHRbMV09ZS55LHRbMl09ZS56LHRbM109ZS53KTtlbHNle2lmKE9vKHQsZSkpcmV0dXJuO0EudW5pZm9ybTRpdih0aGlzLmFkZHIsZSksVm8odCxlKX19ZnVuY3Rpb24gcnMoQSxlKXtjb25zdCB0PXRoaXMuY2FjaGU7dFswXSE9PWUmJihBLnVuaWZvcm0xdWkodGhpcy5hZGRyLGUpLHRbMF09ZSl9ZnVuY3Rpb24gb3MoQSxlKXtjb25zdCB0PXRoaXMuY2FjaGU7aWYodm9pZCAwIT09ZS54KXRbMF09PT1lLngmJnRbMV09PT1lLnl8fChBLnVuaWZvcm0ydWkodGhpcy5hZGRyLGUueCxlLnkpLHRbMF09ZS54LHRbMV09ZS55KTtlbHNle2lmKE9vKHQsZSkpcmV0dXJuO0EudW5pZm9ybTJ1aXYodGhpcy5hZGRyLGUpLFZvKHQsZSl9fWZ1bmN0aW9uIHNzKEEsZSl7Y29uc3QgdD10aGlzLmNhY2hlO2lmKHZvaWQgMCE9PWUueCl0WzBdPT09ZS54JiZ0WzFdPT09ZS55JiZ0WzJdPT09ZS56fHwoQS51bmlmb3JtM3VpKHRoaXMuYWRkcixlLngsZS55LGUueiksdFswXT1lLngsdFsxXT1lLnksdFsyXT1lLnopO2Vsc2V7aWYoT28odCxlKSlyZXR1cm47QS51bmlmb3JtM3Vpdih0aGlzLmFkZHIsZSksVm8odCxlKX19ZnVuY3Rpb24gYXMoQSxlKXtjb25zdCB0PXRoaXMuY2FjaGU7aWYodm9pZCAwIT09ZS54KXRbMF09PT1lLngmJnRbMV09PT1lLnkmJnRbMl09PT1lLnomJnRbM109PT1lLnd8fChBLnVuaWZvcm00dWkodGhpcy5hZGRyLGUueCxlLnksZS56LGUudyksdFswXT1lLngsdFsxXT1lLnksdFsyXT1lLnosdFszXT1lLncpO2Vsc2V7aWYoT28odCxlKSlyZXR1cm47QS51bmlmb3JtNHVpdih0aGlzLmFkZHIsZSksVm8odCxlKX19ZnVuY3Rpb24gQnMoQSxlLHQpe2NvbnN0IG49dGhpcy5jYWNoZSxpPXQuYWxsb2NhdGVUZXh0dXJlVW5pdCgpO25bMF0hPT1pJiYoQS51bmlmb3JtMWkodGhpcy5hZGRyLGkpLG5bMF09aSksdC5zZXRUZXh0dXJlMkQoZXx8U28saSl9ZnVuY3Rpb24gY3MoQSxlLHQpe2NvbnN0IG49dGhpcy5jYWNoZSxpPXQuYWxsb2NhdGVUZXh0dXJlVW5pdCgpO25bMF0hPT1pJiYoQS51bmlmb3JtMWkodGhpcy5hZGRyLGkpLG5bMF09aSksdC5zZXRUZXh0dXJlM0QoZXx8SG8saSl9ZnVuY3Rpb24gZ3MoQSxlLHQpe2NvbnN0IG49dGhpcy5jYWNoZSxpPXQuYWxsb2NhdGVUZXh0dXJlVW5pdCgpO25bMF0hPT1pJiYoQS51bmlmb3JtMWkodGhpcy5hZGRyLGkpLG5bMF09aSksdC5zZXRUZXh0dXJlQ3ViZShlfHx2byxpKX1mdW5jdGlvbiBFcyhBLGUsdCl7Y29uc3Qgbj10aGlzLmNhY2hlLGk9dC5hbGxvY2F0ZVRleHR1cmVVbml0KCk7blswXSE9PWkmJihBLnVuaWZvcm0xaSh0aGlzLmFkZHIsaSksblswXT1pKSx0LnNldFRleHR1cmUyREFycmF5KGV8fGJvLGkpfWZ1bmN0aW9uIFFzKEEsZSl7QS51bmlmb3JtMWZ2KHRoaXMuYWRkcixlKX1mdW5jdGlvbiB1cyhBLGUpe2NvbnN0IHQ9UG8oZSx0aGlzLnNpemUsMik7QS51bmlmb3JtMmZ2KHRoaXMuYWRkcix0KX1mdW5jdGlvbiBscyhBLGUpe2NvbnN0IHQ9UG8oZSx0aGlzLnNpemUsMyk7QS51bmlmb3JtM2Z2KHRoaXMuYWRkcix0KX1mdW5jdGlvbiBocyhBLGUpe2NvbnN0IHQ9UG8oZSx0aGlzLnNpemUsNCk7QS51bmlmb3JtNGZ2KHRoaXMuYWRkcix0KX1mdW5jdGlvbiB3cyhBLGUpe2NvbnN0IHQ9UG8oZSx0aGlzLnNpemUsNCk7QS51bmlmb3JtTWF0cml4MmZ2KHRoaXMuYWRkciwhMSx0KX1mdW5jdGlvbiBDcyhBLGUpe2NvbnN0IHQ9UG8oZSx0aGlzLnNpemUsOSk7QS51bmlmb3JtTWF0cml4M2Z2KHRoaXMuYWRkciwhMSx0KX1mdW5jdGlvbiBJcyhBLGUpe2NvbnN0IHQ9UG8oZSx0aGlzLnNpemUsMTYpO0EudW5pZm9ybU1hdHJpeDRmdih0aGlzLmFkZHIsITEsdCl9ZnVuY3Rpb24gTXMoQSxlKXtBLnVuaWZvcm0xaXYodGhpcy5hZGRyLGUpfWZ1bmN0aW9uIGRzKEEsZSl7QS51bmlmb3JtMml2KHRoaXMuYWRkcixlKX1mdW5jdGlvbiBwcyhBLGUpe0EudW5pZm9ybTNpdih0aGlzLmFkZHIsZSl9ZnVuY3Rpb24gbXMoQSxlKXtBLnVuaWZvcm00aXYodGhpcy5hZGRyLGUpfWZ1bmN0aW9uIEZzKEEsZSl7QS51bmlmb3JtMXVpdih0aGlzLmFkZHIsZSl9ZnVuY3Rpb24gRHMoQSxlKXtBLnVuaWZvcm0ydWl2KHRoaXMuYWRkcixlKX1mdW5jdGlvbiBZcyhBLGUpe0EudW5pZm9ybTN1aXYodGhpcy5hZGRyLGUpfWZ1bmN0aW9uIGZzKEEsZSl7QS51bmlmb3JtNHVpdih0aGlzLmFkZHIsZSl9ZnVuY3Rpb24gTnMoQSxlLHQpe2NvbnN0IG49dGhpcy5jYWNoZSxpPWUubGVuZ3RoLHI9V28odCxpKTtPbyhuLHIpfHwoQS51bmlmb3JtMWl2KHRoaXMuYWRkcixyKSxWbyhuLHIpKTtmb3IobGV0IEE9MDtBIT09aTsrK0EpdC5zZXRUZXh0dXJlMkQoZVtBXXx8U28scltBXSl9ZnVuY3Rpb24gVXMoQSxlLHQpe2NvbnN0IG49dGhpcy5jYWNoZSxpPWUubGVuZ3RoLHI9V28odCxpKTtPbyhuLHIpfHwoQS51bmlmb3JtMWl2KHRoaXMuYWRkcixyKSxWbyhuLHIpKTtmb3IobGV0IEE9MDtBIT09aTsrK0EpdC5zZXRUZXh0dXJlM0QoZVtBXXx8SG8scltBXSl9ZnVuY3Rpb24geXMoQSxlLHQpe2NvbnN0IG49dGhpcy5jYWNoZSxpPWUubGVuZ3RoLHI9V28odCxpKTtPbyhuLHIpfHwoQS51bmlmb3JtMWl2KHRoaXMuYWRkcixyKSxWbyhuLHIpKTtmb3IobGV0IEE9MDtBIT09aTsrK0EpdC5zZXRUZXh0dXJlQ3ViZShlW0FdfHx2byxyW0FdKX1mdW5jdGlvbiBUcyhBLGUsdCl7Y29uc3Qgbj10aGlzLmNhY2hlLGk9ZS5sZW5ndGgscj1Xbyh0LGkpO09vKG4scil8fChBLnVuaWZvcm0xaXYodGhpcy5hZGRyLHIpLFZvKG4scikpO2ZvcihsZXQgQT0wO0EhPT1pOysrQSl0LnNldFRleHR1cmUyREFycmF5KGVbQV18fGJvLHJbQV0pfWNsYXNzIHhze2NvbnN0cnVjdG9yKEEsZSx0KXt0aGlzLmlkPUEsdGhpcy5hZGRyPXQsdGhpcy5jYWNoZT1bXSx0aGlzLnNldFZhbHVlPWZ1bmN0aW9uKEEpe3N3aXRjaChBKXtjYXNlIDUxMjY6cmV0dXJuIEtvO2Nhc2UgMzU2NjQ6cmV0dXJuIFhvO2Nhc2UgMzU2NjU6cmV0dXJuIFpvO2Nhc2UgMzU2NjY6cmV0dXJuIF9vO2Nhc2UgMzU2NzQ6cmV0dXJuIHFvO2Nhc2UgMzU2NzU6cmV0dXJuICRvO2Nhc2UgMzU2NzY6cmV0dXJuIEFzO2Nhc2UgNTEyNDpjYXNlIDM1NjcwOnJldHVybiBlcztjYXNlIDM1NjY3OmNhc2UgMzU2NzE6cmV0dXJuIHRzO2Nhc2UgMzU2Njg6Y2FzZSAzNTY3MjpyZXR1cm4gbnM7Y2FzZSAzNTY2OTpjYXNlIDM1NjczOnJldHVybiBpcztjYXNlIDUxMjU6cmV0dXJuIHJzO2Nhc2UgMzYyOTQ6cmV0dXJuIG9zO2Nhc2UgMzYyOTU6cmV0dXJuIHNzO2Nhc2UgMzYyOTY6cmV0dXJuIGFzO2Nhc2UgMzU2Nzg6Y2FzZSAzNjE5ODpjYXNlIDM2Mjk4OmNhc2UgMzYzMDY6Y2FzZSAzNTY4MjpyZXR1cm4gQnM7Y2FzZSAzNTY3OTpjYXNlIDM2Mjk5OmNhc2UgMzYzMDc6cmV0dXJuIGNzO2Nhc2UgMzU2ODA6Y2FzZSAzNjMwMDpjYXNlIDM2MzA4OmNhc2UgMzYyOTM6cmV0dXJuIGdzO2Nhc2UgMzYyODk6Y2FzZSAzNjMwMzpjYXNlIDM2MzExOmNhc2UgMzYyOTI6cmV0dXJuIEVzfX0oZS50eXBlKX19Y2xhc3MgUnN7Y29uc3RydWN0b3IoQSxlLHQpe3RoaXMuaWQ9QSx0aGlzLmFkZHI9dCx0aGlzLmNhY2hlPVtdLHRoaXMuc2l6ZT1lLnNpemUsdGhpcy5zZXRWYWx1ZT1mdW5jdGlvbihBKXtzd2l0Y2goQSl7Y2FzZSA1MTI2OnJldHVybiBRcztjYXNlIDM1NjY0OnJldHVybiB1cztjYXNlIDM1NjY1OnJldHVybiBscztjYXNlIDM1NjY2OnJldHVybiBocztjYXNlIDM1Njc0OnJldHVybiB3cztjYXNlIDM1Njc1OnJldHVybiBDcztjYXNlIDM1Njc2OnJldHVybiBJcztjYXNlIDUxMjQ6Y2FzZSAzNTY3MDpyZXR1cm4gTXM7Y2FzZSAzNTY2NzpjYXNlIDM1NjcxOnJldHVybiBkcztjYXNlIDM1NjY4OmNhc2UgMzU2NzI6cmV0dXJuIHBzO2Nhc2UgMzU2Njk6Y2FzZSAzNTY3MzpyZXR1cm4gbXM7Y2FzZSA1MTI1OnJldHVybiBGcztjYXNlIDM2Mjk0OnJldHVybiBEcztjYXNlIDM2Mjk1OnJldHVybiBZcztjYXNlIDM2Mjk2OnJldHVybiBmcztjYXNlIDM1Njc4OmNhc2UgMzYxOTg6Y2FzZSAzNjI5ODpjYXNlIDM2MzA2OmNhc2UgMzU2ODI6cmV0dXJuIE5zO2Nhc2UgMzU2Nzk6Y2FzZSAzNjI5OTpjYXNlIDM2MzA3OnJldHVybiBVcztjYXNlIDM1NjgwOmNhc2UgMzYzMDA6Y2FzZSAzNjMwODpjYXNlIDM2MjkzOnJldHVybiB5cztjYXNlIDM2Mjg5OmNhc2UgMzYzMDM6Y2FzZSAzNjMxMTpjYXNlIDM2MjkyOnJldHVybiBUc319KGUudHlwZSl9fWNsYXNzIEdze2NvbnN0cnVjdG9yKEEpe3RoaXMuaWQ9QSx0aGlzLnNlcT1bXSx0aGlzLm1hcD17fX1zZXRWYWx1ZShBLGUsdCl7Y29uc3Qgbj10aGlzLnNlcTtmb3IobGV0IGk9MCxyPW4ubGVuZ3RoO2khPT1yOysraSl7Y29uc3Qgcj1uW2ldO3Iuc2V0VmFsdWUoQSxlW3IuaWRdLHQpfX19Y29uc3QgU3M9LyhcdyspKFxdKT8oXFt8XC4pPy9nO2Z1bmN0aW9uIGJzKEEsZSl7QS5zZXEucHVzaChlKSxBLm1hcFtlLmlkXT1lfWZ1bmN0aW9uIEhzKEEsZSx0KXtjb25zdCBuPUEubmFtZSxpPW4ubGVuZ3RoO2ZvcihTcy5sYXN0SW5kZXg9MDs7KXtjb25zdCByPVNzLmV4ZWMobiksbz1Tcy5sYXN0SW5kZXg7bGV0IHM9clsxXTtjb25zdCBhPSJdIj09PXJbMl0sQj1yWzNdO2lmKGEmJihzfD0wKSx2b2lkIDA9PT1CfHwiWyI9PT1CJiZvKzI9PT1pKXticyh0LHZvaWQgMD09PUI/bmV3IHhzKHMsQSxlKTpuZXcgUnMocyxBLGUpKTticmVha317bGV0IEE9dC5tYXBbc107dm9pZCAwPT09QSYmKEE9bmV3IEdzKHMpLGJzKHQsQSkpLHQ9QX19fWNsYXNzIHZze2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5zZXE9W10sdGhpcy5tYXA9e307Y29uc3QgdD1BLmdldFByb2dyYW1QYXJhbWV0ZXIoZSxBLkFDVElWRV9VTklGT1JNUyk7Zm9yKGxldCBuPTA7bjx0Oysrbil7Y29uc3QgdD1BLmdldEFjdGl2ZVVuaWZvcm0oZSxuKTtIcyh0LEEuZ2V0VW5pZm9ybUxvY2F0aW9uKGUsdC5uYW1lKSx0aGlzKX19c2V0VmFsdWUoQSxlLHQsbil7Y29uc3QgaT10aGlzLm1hcFtlXTt2b2lkIDAhPT1pJiZpLnNldFZhbHVlKEEsdCxuKX1zZXRPcHRpb25hbChBLGUsdCl7Y29uc3Qgbj1lW3RdO3ZvaWQgMCE9PW4mJnRoaXMuc2V0VmFsdWUoQSx0LG4pfXN0YXRpYyB1cGxvYWQoQSxlLHQsbil7Zm9yKGxldCBpPTAscj1lLmxlbmd0aDtpIT09cjsrK2kpe2NvbnN0IHI9ZVtpXSxvPXRbci5pZF07ITEhPT1vLm5lZWRzVXBkYXRlJiZyLnNldFZhbHVlKEEsby52YWx1ZSxuKX19c3RhdGljIHNlcVdpdGhWYWx1ZShBLGUpe2NvbnN0IHQ9W107Zm9yKGxldCBuPTAsaT1BLmxlbmd0aDtuIT09aTsrK24pe2NvbnN0IGk9QVtuXTtpLmlkIGluIGUmJnQucHVzaChpKX1yZXR1cm4gdH19ZnVuY3Rpb24ga3MoQSxlLHQpe2NvbnN0IG49QS5jcmVhdGVTaGFkZXIoZSk7cmV0dXJuIEEuc2hhZGVyU291cmNlKG4sdCksQS5jb21waWxlU2hhZGVyKG4pLG59bGV0IGpzPTA7ZnVuY3Rpb24gSnMoQSxlLHQpe2NvbnN0IG49QS5nZXRTaGFkZXJQYXJhbWV0ZXIoZSxBLkNPTVBJTEVfU1RBVFVTKSxpPUEuZ2V0U2hhZGVySW5mb0xvZyhlKS50cmltKCk7aWYobiYmIiI9PT1pKXJldHVybiIiO2NvbnN0IHI9L0VSUk9SOiAwOihcZCspLy5leGVjKGkpO2lmKHIpe2NvbnN0IG49cGFyc2VJbnQoclsxXSk7cmV0dXJuIHQudG9VcHBlckNhc2UoKSsiXG5cbiIraSsiXG5cbiIrZnVuY3Rpb24oQSxlKXtjb25zdCB0PUEuc3BsaXQoIlxuIiksbj1bXSxpPU1hdGgubWF4KGUtNiwwKSxyPU1hdGgubWluKGUrNix0Lmxlbmd0aCk7Zm9yKGxldCBBPWk7QTxyO0ErKyl7Y29uc3QgaT1BKzE7bi5wdXNoKCIiLmNvbmNhdChpPT09ZT8iPiI6IiAiLCIgIikuY29uY2F0KGksIjogIikuY29uY2F0KHRbQV0pKX1yZXR1cm4gbi5qb2luKCJcbiIpfShBLmdldFNoYWRlclNvdXJjZShlKSxuKX1yZXR1cm4gaX1mdW5jdGlvbiB6cyhBLGUpe2NvbnN0IHQ9ZnVuY3Rpb24oQSl7c3dpdGNoKEEpe2Nhc2UgemU6cmV0dXJuWyJMaW5lYXIiLCIoIHZhbHVlICkiXTtjYXNlIEplOnJldHVyblsic1JHQiIsIiggdmFsdWUgKSJdO2RlZmF1bHQ6cmV0dXJuIGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xQcm9ncmFtOiBVbnN1cHBvcnRlZCBjb2xvciBzcGFjZToiLEEpLFsiTGluZWFyIiwiKCB2YWx1ZSApIl19fShlKTtyZXR1cm4idmVjNCAiK0ErIiggdmVjNCB2YWx1ZSApIHsgcmV0dXJuIExpbmVhclRvIit0WzBdK3RbMV0rIjsgfSJ9ZnVuY3Rpb24gTHMoQSxlKXtsZXQgdDtzd2l0Y2goZSl7Y2FzZSBxOnQ9IkxpbmVhciI7YnJlYWs7Y2FzZSAkOnQ9IlJlaW5oYXJkIjticmVhaztjYXNlIEFBOnQ9Ik9wdGltaXplZENpbmVvbiI7YnJlYWs7Y2FzZSBlQTp0PSJBQ0VTRmlsbWljIjticmVhaztjYXNlIHRBOnQ9IkN1c3RvbSI7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUHJvZ3JhbTogVW5zdXBwb3J0ZWQgdG9uZU1hcHBpbmc6IixlKSx0PSJMaW5lYXIifXJldHVybiJ2ZWMzICIrQSsiKCB2ZWMzIGNvbG9yICkgeyByZXR1cm4gIit0KyJUb25lTWFwcGluZyggY29sb3IgKTsgfSJ9ZnVuY3Rpb24gUHMoQSl7cmV0dXJuIiIhPT1BfWZ1bmN0aW9uIE9zKEEsZSl7Y29uc3QgdD1lLm51bVNwb3RMaWdodFNoYWRvd3MrZS5udW1TcG90TGlnaHRNYXBzLWUubnVtU3BvdExpZ2h0U2hhZG93c1dpdGhNYXBzO3JldHVybiBBLnJlcGxhY2UoL05VTV9ESVJfTElHSFRTL2csZS5udW1EaXJMaWdodHMpLnJlcGxhY2UoL05VTV9TUE9UX0xJR0hUUy9nLGUubnVtU3BvdExpZ2h0cykucmVwbGFjZSgvTlVNX1NQT1RfTElHSFRfTUFQUy9nLGUubnVtU3BvdExpZ2h0TWFwcykucmVwbGFjZSgvTlVNX1NQT1RfTElHSFRfQ09PUkRTL2csdCkucmVwbGFjZSgvTlVNX1JFQ1RfQVJFQV9MSUdIVFMvZyxlLm51bVJlY3RBcmVhTGlnaHRzKS5yZXBsYWNlKC9OVU1fUE9JTlRfTElHSFRTL2csZS5udW1Qb2ludExpZ2h0cykucmVwbGFjZSgvTlVNX0hFTUlfTElHSFRTL2csZS5udW1IZW1pTGlnaHRzKS5yZXBsYWNlKC9OVU1fRElSX0xJR0hUX1NIQURPV1MvZyxlLm51bURpckxpZ2h0U2hhZG93cykucmVwbGFjZSgvTlVNX1NQT1RfTElHSFRfU0hBRE9XU19XSVRIX01BUFMvZyxlLm51bVNwb3RMaWdodFNoYWRvd3NXaXRoTWFwcykucmVwbGFjZSgvTlVNX1NQT1RfTElHSFRfU0hBRE9XUy9nLGUubnVtU3BvdExpZ2h0U2hhZG93cykucmVwbGFjZSgvTlVNX1BPSU5UX0xJR0hUX1NIQURPV1MvZyxlLm51bVBvaW50TGlnaHRTaGFkb3dzKX1mdW5jdGlvbiBWcyhBLGUpe3JldHVybiBBLnJlcGxhY2UoL05VTV9DTElQUElOR19QTEFORVMvZyxlLm51bUNsaXBwaW5nUGxhbmVzKS5yZXBsYWNlKC9VTklPTl9DTElQUElOR19QTEFORVMvZyxlLm51bUNsaXBwaW5nUGxhbmVzLWUubnVtQ2xpcEludGVyc2VjdGlvbil9Y29uc3QgV3M9L15bIFx0XSojaW5jbHVkZSArPChbXHdcZC4vXSspPi9nbTtmdW5jdGlvbiBLcyhBKXtyZXR1cm4gQS5yZXBsYWNlKFdzLFhzKX1mdW5jdGlvbiBYcyhBLGUpe2NvbnN0IHQ9dG9bZV07aWYodm9pZCAwPT09dCl0aHJvdyBuZXcgRXJyb3IoIkNhbiBub3QgcmVzb2x2ZSAjaW5jbHVkZSA8IitlKyI+Iik7cmV0dXJuIEtzKHQpfWNvbnN0IFpzPS8jcHJhZ21hIHVucm9sbF9sb29wX3N0YXJ0XHMrZm9yXHMqXChccyppbnRccytpXHMqPVxzKihcZCspXHMqO1xzKmlccyo8XHMqKFxkKylccyo7XHMqaVxzKlwrXCtccypcKVxzKnsoW1xzXFNdKz8pfVxzKyNwcmFnbWEgdW5yb2xsX2xvb3BfZW5kL2c7ZnVuY3Rpb24gX3MoQSl7cmV0dXJuIEEucmVwbGFjZShacyxxcyl9ZnVuY3Rpb24gcXMoQSxlLHQsbil7bGV0IGk9IiI7Zm9yKGxldCBBPXBhcnNlSW50KGUpO0E8cGFyc2VJbnQodCk7QSsrKWkrPW4ucmVwbGFjZSgvXFtccyppXHMqXF0vZywiWyAiK0ErIiBdIikucmVwbGFjZSgvVU5ST0xMRURfTE9PUF9JTkRFWC9nLEEpO3JldHVybiBpfWZ1bmN0aW9uICRzKEEpe2xldCBlPSJwcmVjaXNpb24gIitBLnByZWNpc2lvbisiIGZsb2F0O1xucHJlY2lzaW9uICIrQS5wcmVjaXNpb24rIiBpbnQ7IjtyZXR1cm4iaGlnaHAiPT09QS5wcmVjaXNpb24/ZSs9IlxuI2RlZmluZSBISUdIX1BSRUNJU0lPTiI6Im1lZGl1bXAiPT09QS5wcmVjaXNpb24/ZSs9IlxuI2RlZmluZSBNRURJVU1fUFJFQ0lTSU9OIjoibG93cCI9PT1BLnByZWNpc2lvbiYmKGUrPSJcbiNkZWZpbmUgTE9XX1BSRUNJU0lPTiIpLGV9ZnVuY3Rpb24gQWEoQSxlLHQsbil7Y29uc3QgaT1BLmdldENvbnRleHQoKSxyPXQuZGVmaW5lcztsZXQgbz10LnZlcnRleFNoYWRlcixzPXQuZnJhZ21lbnRTaGFkZXI7Y29uc3QgYT1mdW5jdGlvbihBKXtsZXQgZT0iU0hBRE9XTUFQX1RZUEVfQkFTSUMiO3JldHVybiBBLnNoYWRvd01hcFR5cGU9PT1nP2U9IlNIQURPV01BUF9UWVBFX1BDRiI6QS5zaGFkb3dNYXBUeXBlPT09RT9lPSJTSEFET1dNQVBfVFlQRV9QQ0ZfU09GVCI6QS5zaGFkb3dNYXBUeXBlPT09USYmKGU9IlNIQURPV01BUF9UWVBFX1ZTTSIpLGV9KHQpLEI9ZnVuY3Rpb24oQSl7bGV0IGU9IkVOVk1BUF9UWVBFX0NVQkUiO2lmKEEuZW52TWFwKXN3aXRjaChBLmVudk1hcE1vZGUpe2Nhc2UgaUE6Y2FzZSByQTplPSJFTlZNQVBfVFlQRV9DVUJFIjticmVhaztjYXNlIGFBOmU9IkVOVk1BUF9UWVBFX0NVQkVfVVYifXJldHVybiBlfSh0KSxjPWZ1bmN0aW9uKEEpe2xldCBlPSJFTlZNQVBfTU9ERV9SRUZMRUNUSU9OIjtpZihBLmVudk1hcClzd2l0Y2goQS5lbnZNYXBNb2RlKXtjYXNlIHJBOmU9IkVOVk1BUF9NT0RFX1JFRlJBQ1RJT04ifXJldHVybiBlfSh0KSx1PWZ1bmN0aW9uKEEpe2xldCBlPSJFTlZNQVBfQkxFTkRJTkdfTk9ORSI7aWYoQS5lbnZNYXApc3dpdGNoKEEuY29tYmluZSl7Y2FzZSBLOmU9IkVOVk1BUF9CTEVORElOR19NVUxUSVBMWSI7YnJlYWs7Y2FzZSBYOmU9IkVOVk1BUF9CTEVORElOR19NSVgiO2JyZWFrO2Nhc2UgWjplPSJFTlZNQVBfQkxFTkRJTkdfQUREIn1yZXR1cm4gZX0odCksbD1mdW5jdGlvbihBKXtjb25zdCBlPUEuZW52TWFwQ3ViZVVWSGVpZ2h0O2lmKG51bGw9PT1lKXJldHVybiBudWxsO2NvbnN0IHQ9TWF0aC5sb2cyKGUpLTIsbj0xL2U7cmV0dXJue3RleGVsV2lkdGg6MS8oMypNYXRoLm1heChNYXRoLnBvdygyLHQpLDExMikpLHRleGVsSGVpZ2h0Om4sbWF4TWlwOnR9fSh0KSxoPXQuaXNXZWJHTDI/IiI6ZnVuY3Rpb24oQSl7cmV0dXJuW0EuZXh0ZW5zaW9uRGVyaXZhdGl2ZXN8fEEuZW52TWFwQ3ViZVVWSGVpZ2h0fHxBLmJ1bXBNYXB8fEEubm9ybWFsTWFwVGFuZ2VudFNwYWNlfHxBLmNsZWFyY29hdE5vcm1hbE1hcHx8QS5mbGF0U2hhZGluZ3x8InBoeXNpY2FsIj09PUEuc2hhZGVySUQ/IiNleHRlbnNpb24gR0xfT0VTX3N0YW5kYXJkX2Rlcml2YXRpdmVzIDogZW5hYmxlIjoiIiwoQS5leHRlbnNpb25GcmFnRGVwdGh8fEEubG9nYXJpdGhtaWNEZXB0aEJ1ZmZlcikmJkEucmVuZGVyZXJFeHRlbnNpb25GcmFnRGVwdGg/IiNleHRlbnNpb24gR0xfRVhUX2ZyYWdfZGVwdGggOiBlbmFibGUiOiIiLEEuZXh0ZW5zaW9uRHJhd0J1ZmZlcnMmJkEucmVuZGVyZXJFeHRlbnNpb25EcmF3QnVmZmVycz8iI2V4dGVuc2lvbiBHTF9FWFRfZHJhd19idWZmZXJzIDogcmVxdWlyZSI6IiIsKEEuZXh0ZW5zaW9uU2hhZGVyVGV4dHVyZUxPRHx8QS5lbnZNYXB8fEEudHJhbnNtaXNzaW9uKSYmQS5yZW5kZXJlckV4dGVuc2lvblNoYWRlclRleHR1cmVMb2Q/IiNleHRlbnNpb24gR0xfRVhUX3NoYWRlcl90ZXh0dXJlX2xvZCA6IGVuYWJsZSI6IiJdLmZpbHRlcihQcykuam9pbigiXG4iKX0odCksdz1mdW5jdGlvbihBKXtjb25zdCBlPVtdO2Zvcihjb25zdCB0IGluIEEpe2NvbnN0IG49QVt0XTshMSE9PW4mJmUucHVzaCgiI2RlZmluZSAiK3QrIiAiK24pfXJldHVybiBlLmpvaW4oIlxuIil9KHIpLEM9aS5jcmVhdGVQcm9ncmFtKCk7bGV0IEksTSxkPXQuZ2xzbFZlcnNpb24/IiN2ZXJzaW9uICIrdC5nbHNsVmVyc2lvbisiXG4iOiIiO3QuaXNSYXdTaGFkZXJNYXRlcmlhbD8oST1bIiNkZWZpbmUgU0hBREVSX1RZUEUgIit0LnNoYWRlclR5cGUsIiNkZWZpbmUgU0hBREVSX05BTUUgIit0LnNoYWRlck5hbWUsd10uZmlsdGVyKFBzKS5qb2luKCJcbiIpLEkubGVuZ3RoPjAmJihJKz0iXG4iKSxNPVtoLCIjZGVmaW5lIFNIQURFUl9UWVBFICIrdC5zaGFkZXJUeXBlLCIjZGVmaW5lIFNIQURFUl9OQU1FICIrdC5zaGFkZXJOYW1lLHddLmZpbHRlcihQcykuam9pbigiXG4iKSxNLmxlbmd0aD4wJiYoTSs9IlxuIikpOihJPVskcyh0KSwiI2RlZmluZSBTSEFERVJfVFlQRSAiK3Quc2hhZGVyVHlwZSwiI2RlZmluZSBTSEFERVJfTkFNRSAiK3Quc2hhZGVyTmFtZSx3LHQuaW5zdGFuY2luZz8iI2RlZmluZSBVU0VfSU5TVEFOQ0lORyI6IiIsdC5pbnN0YW5jaW5nQ29sb3I/IiNkZWZpbmUgVVNFX0lOU1RBTkNJTkdfQ09MT1IiOiIiLHQudXNlRm9nJiZ0LmZvZz8iI2RlZmluZSBVU0VfRk9HIjoiIix0LnVzZUZvZyYmdC5mb2dFeHAyPyIjZGVmaW5lIEZPR19FWFAyIjoiIix0Lm1hcD8iI2RlZmluZSBVU0VfTUFQIjoiIix0LmVudk1hcD8iI2RlZmluZSBVU0VfRU5WTUFQIjoiIix0LmVudk1hcD8iI2RlZmluZSAiK2M6IiIsdC5saWdodE1hcD8iI2RlZmluZSBVU0VfTElHSFRNQVAiOiIiLHQuYW9NYXA/IiNkZWZpbmUgVVNFX0FPTUFQIjoiIix0LmJ1bXBNYXA/IiNkZWZpbmUgVVNFX0JVTVBNQVAiOiIiLHQubm9ybWFsTWFwPyIjZGVmaW5lIFVTRV9OT1JNQUxNQVAiOiIiLHQubm9ybWFsTWFwT2JqZWN0U3BhY2U/IiNkZWZpbmUgVVNFX05PUk1BTE1BUF9PQkpFQ1RTUEFDRSI6IiIsdC5ub3JtYWxNYXBUYW5nZW50U3BhY2U/IiNkZWZpbmUgVVNFX05PUk1BTE1BUF9UQU5HRU5UU1BBQ0UiOiIiLHQuZGlzcGxhY2VtZW50TWFwPyIjZGVmaW5lIFVTRV9ESVNQTEFDRU1FTlRNQVAiOiIiLHQuZW1pc3NpdmVNYXA/IiNkZWZpbmUgVVNFX0VNSVNTSVZFTUFQIjoiIix0LmFuaXNvdHJvcHlNYXA/IiNkZWZpbmUgVVNFX0FOSVNPVFJPUFlNQVAiOiIiLHQuY2xlYXJjb2F0TWFwPyIjZGVmaW5lIFVTRV9DTEVBUkNPQVRNQVAiOiIiLHQuY2xlYXJjb2F0Um91Z2huZXNzTWFwPyIjZGVmaW5lIFVTRV9DTEVBUkNPQVRfUk9VR0hORVNTTUFQIjoiIix0LmNsZWFyY29hdE5vcm1hbE1hcD8iI2RlZmluZSBVU0VfQ0xFQVJDT0FUX05PUk1BTE1BUCI6IiIsdC5pcmlkZXNjZW5jZU1hcD8iI2RlZmluZSBVU0VfSVJJREVTQ0VOQ0VNQVAiOiIiLHQuaXJpZGVzY2VuY2VUaGlja25lc3NNYXA/IiNkZWZpbmUgVVNFX0lSSURFU0NFTkNFX1RISUNLTkVTU01BUCI6IiIsdC5zcGVjdWxhck1hcD8iI2RlZmluZSBVU0VfU1BFQ1VMQVJNQVAiOiIiLHQuc3BlY3VsYXJDb2xvck1hcD8iI2RlZmluZSBVU0VfU1BFQ1VMQVJfQ09MT1JNQVAiOiIiLHQuc3BlY3VsYXJJbnRlbnNpdHlNYXA/IiNkZWZpbmUgVVNFX1NQRUNVTEFSX0lOVEVOU0lUWU1BUCI6IiIsdC5yb3VnaG5lc3NNYXA/IiNkZWZpbmUgVVNFX1JPVUdITkVTU01BUCI6IiIsdC5tZXRhbG5lc3NNYXA/IiNkZWZpbmUgVVNFX01FVEFMTkVTU01BUCI6IiIsdC5hbHBoYU1hcD8iI2RlZmluZSBVU0VfQUxQSEFNQVAiOiIiLHQudHJhbnNtaXNzaW9uPyIjZGVmaW5lIFVTRV9UUkFOU01JU1NJT04iOiIiLHQudHJhbnNtaXNzaW9uTWFwPyIjZGVmaW5lIFVTRV9UUkFOU01JU1NJT05NQVAiOiIiLHQudGhpY2tuZXNzTWFwPyIjZGVmaW5lIFVTRV9USElDS05FU1NNQVAiOiIiLHQuc2hlZW5Db2xvck1hcD8iI2RlZmluZSBVU0VfU0hFRU5fQ09MT1JNQVAiOiIiLHQuc2hlZW5Sb3VnaG5lc3NNYXA/IiNkZWZpbmUgVVNFX1NIRUVOX1JPVUdITkVTU01BUCI6IiIsdC5tYXBVdj8iI2RlZmluZSBNQVBfVVYgIit0Lm1hcFV2OiIiLHQuYWxwaGFNYXBVdj8iI2RlZmluZSBBTFBIQU1BUF9VViAiK3QuYWxwaGFNYXBVdjoiIix0LmxpZ2h0TWFwVXY/IiNkZWZpbmUgTElHSFRNQVBfVVYgIit0LmxpZ2h0TWFwVXY6IiIsdC5hb01hcFV2PyIjZGVmaW5lIEFPTUFQX1VWICIrdC5hb01hcFV2OiIiLHQuZW1pc3NpdmVNYXBVdj8iI2RlZmluZSBFTUlTU0lWRU1BUF9VViAiK3QuZW1pc3NpdmVNYXBVdjoiIix0LmJ1bXBNYXBVdj8iI2RlZmluZSBCVU1QTUFQX1VWICIrdC5idW1wTWFwVXY6IiIsdC5ub3JtYWxNYXBVdj8iI2RlZmluZSBOT1JNQUxNQVBfVVYgIit0Lm5vcm1hbE1hcFV2OiIiLHQuZGlzcGxhY2VtZW50TWFwVXY/IiNkZWZpbmUgRElTUExBQ0VNRU5UTUFQX1VWICIrdC5kaXNwbGFjZW1lbnRNYXBVdjoiIix0Lm1ldGFsbmVzc01hcFV2PyIjZGVmaW5lIE1FVEFMTkVTU01BUF9VViAiK3QubWV0YWxuZXNzTWFwVXY6IiIsdC5yb3VnaG5lc3NNYXBVdj8iI2RlZmluZSBST1VHSE5FU1NNQVBfVVYgIit0LnJvdWdobmVzc01hcFV2OiIiLHQuYW5pc290cm9weU1hcFV2PyIjZGVmaW5lIEFOSVNPVFJPUFlNQVBfVVYgIit0LmFuaXNvdHJvcHlNYXBVdjoiIix0LmNsZWFyY29hdE1hcFV2PyIjZGVmaW5lIENMRUFSQ09BVE1BUF9VViAiK3QuY2xlYXJjb2F0TWFwVXY6IiIsdC5jbGVhcmNvYXROb3JtYWxNYXBVdj8iI2RlZmluZSBDTEVBUkNPQVRfTk9STUFMTUFQX1VWICIrdC5jbGVhcmNvYXROb3JtYWxNYXBVdjoiIix0LmNsZWFyY29hdFJvdWdobmVzc01hcFV2PyIjZGVmaW5lIENMRUFSQ09BVF9ST1VHSE5FU1NNQVBfVVYgIit0LmNsZWFyY29hdFJvdWdobmVzc01hcFV2OiIiLHQuaXJpZGVzY2VuY2VNYXBVdj8iI2RlZmluZSBJUklERVNDRU5DRU1BUF9VViAiK3QuaXJpZGVzY2VuY2VNYXBVdjoiIix0LmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwVXY/IiNkZWZpbmUgSVJJREVTQ0VOQ0VfVEhJQ0tORVNTTUFQX1VWICIrdC5pcmlkZXNjZW5jZVRoaWNrbmVzc01hcFV2OiIiLHQuc2hlZW5Db2xvck1hcFV2PyIjZGVmaW5lIFNIRUVOX0NPTE9STUFQX1VWICIrdC5zaGVlbkNvbG9yTWFwVXY6IiIsdC5zaGVlblJvdWdobmVzc01hcFV2PyIjZGVmaW5lIFNIRUVOX1JPVUdITkVTU01BUF9VViAiK3Quc2hlZW5Sb3VnaG5lc3NNYXBVdjoiIix0LnNwZWN1bGFyTWFwVXY/IiNkZWZpbmUgU1BFQ1VMQVJNQVBfVVYgIit0LnNwZWN1bGFyTWFwVXY6IiIsdC5zcGVjdWxhckNvbG9yTWFwVXY/IiNkZWZpbmUgU1BFQ1VMQVJfQ09MT1JNQVBfVVYgIit0LnNwZWN1bGFyQ29sb3JNYXBVdjoiIix0LnNwZWN1bGFySW50ZW5zaXR5TWFwVXY/IiNkZWZpbmUgU1BFQ1VMQVJfSU5URU5TSVRZTUFQX1VWICIrdC5zcGVjdWxhckludGVuc2l0eU1hcFV2OiIiLHQudHJhbnNtaXNzaW9uTWFwVXY/IiNkZWZpbmUgVFJBTlNNSVNTSU9OTUFQX1VWICIrdC50cmFuc21pc3Npb25NYXBVdjoiIix0LnRoaWNrbmVzc01hcFV2PyIjZGVmaW5lIFRISUNLTkVTU01BUF9VViAiK3QudGhpY2tuZXNzTWFwVXY6IiIsdC52ZXJ0ZXhUYW5nZW50cz8iI2RlZmluZSBVU0VfVEFOR0VOVCI6IiIsdC52ZXJ0ZXhDb2xvcnM/IiNkZWZpbmUgVVNFX0NPTE9SIjoiIix0LnZlcnRleEFscGhhcz8iI2RlZmluZSBVU0VfQ09MT1JfQUxQSEEiOiIiLHQudmVydGV4VXYxcz8iI2RlZmluZSBVU0VfVVYxIjoiIix0LnZlcnRleFV2MnM/IiNkZWZpbmUgVVNFX1VWMiI6IiIsdC52ZXJ0ZXhVdjNzPyIjZGVmaW5lIFVTRV9VVjMiOiIiLHQucG9pbnRzVXZzPyIjZGVmaW5lIFVTRV9QT0lOVFNfVVYiOiIiLHQuZmxhdFNoYWRpbmc/IiNkZWZpbmUgRkxBVF9TSEFERUQiOiIiLHQuc2tpbm5pbmc/IiNkZWZpbmUgVVNFX1NLSU5OSU5HIjoiIix0Lm1vcnBoVGFyZ2V0cz8iI2RlZmluZSBVU0VfTU9SUEhUQVJHRVRTIjoiIix0Lm1vcnBoTm9ybWFscyYmITE9PT10LmZsYXRTaGFkaW5nPyIjZGVmaW5lIFVTRV9NT1JQSE5PUk1BTFMiOiIiLHQubW9ycGhDb2xvcnMmJnQuaXNXZWJHTDI/IiNkZWZpbmUgVVNFX01PUlBIQ09MT1JTIjoiIix0Lm1vcnBoVGFyZ2V0c0NvdW50PjAmJnQuaXNXZWJHTDI/IiNkZWZpbmUgTU9SUEhUQVJHRVRTX1RFWFRVUkUiOiIiLHQubW9ycGhUYXJnZXRzQ291bnQ+MCYmdC5pc1dlYkdMMj8iI2RlZmluZSBNT1JQSFRBUkdFVFNfVEVYVFVSRV9TVFJJREUgIit0Lm1vcnBoVGV4dHVyZVN0cmlkZToiIix0Lm1vcnBoVGFyZ2V0c0NvdW50PjAmJnQuaXNXZWJHTDI/IiNkZWZpbmUgTU9SUEhUQVJHRVRTX0NPVU5UICIrdC5tb3JwaFRhcmdldHNDb3VudDoiIix0LmRvdWJsZVNpZGVkPyIjZGVmaW5lIERPVUJMRV9TSURFRCI6IiIsdC5mbGlwU2lkZWQ/IiNkZWZpbmUgRkxJUF9TSURFRCI6IiIsdC5zaGFkb3dNYXBFbmFibGVkPyIjZGVmaW5lIFVTRV9TSEFET1dNQVAiOiIiLHQuc2hhZG93TWFwRW5hYmxlZD8iI2RlZmluZSAiK2E6IiIsdC5zaXplQXR0ZW51YXRpb24/IiNkZWZpbmUgVVNFX1NJWkVBVFRFTlVBVElPTiI6IiIsdC51c2VMZWdhY3lMaWdodHM/IiNkZWZpbmUgTEVHQUNZX0xJR0hUUyI6IiIsdC5sb2dhcml0aG1pY0RlcHRoQnVmZmVyPyIjZGVmaW5lIFVTRV9MT0dERVBUSEJVRiI6IiIsdC5sb2dhcml0aG1pY0RlcHRoQnVmZmVyJiZ0LnJlbmRlcmVyRXh0ZW5zaW9uRnJhZ0RlcHRoPyIjZGVmaW5lIFVTRV9MT0dERVBUSEJVRl9FWFQiOiIiLCJ1bmlmb3JtIG1hdDQgbW9kZWxNYXRyaXg7IiwidW5pZm9ybSBtYXQ0IG1vZGVsVmlld01hdHJpeDsiLCJ1bmlmb3JtIG1hdDQgcHJvamVjdGlvbk1hdHJpeDsiLCJ1bmlmb3JtIG1hdDQgdmlld01hdHJpeDsiLCJ1bmlmb3JtIG1hdDMgbm9ybWFsTWF0cml4OyIsInVuaWZvcm0gdmVjMyBjYW1lcmFQb3NpdGlvbjsiLCJ1bmlmb3JtIGJvb2wgaXNPcnRob2dyYXBoaWM7IiwiI2lmZGVmIFVTRV9JTlNUQU5DSU5HIiwiXHRhdHRyaWJ1dGUgbWF0NCBpbnN0YW5jZU1hdHJpeDsiLCIjZW5kaWYiLCIjaWZkZWYgVVNFX0lOU1RBTkNJTkdfQ09MT1IiLCJcdGF0dHJpYnV0ZSB2ZWMzIGluc3RhbmNlQ29sb3I7IiwiI2VuZGlmIiwiYXR0cmlidXRlIHZlYzMgcG9zaXRpb247IiwiYXR0cmlidXRlIHZlYzMgbm9ybWFsOyIsImF0dHJpYnV0ZSB2ZWMyIHV2OyIsIiNpZmRlZiBVU0VfVVYxIiwiXHRhdHRyaWJ1dGUgdmVjMiB1djE7IiwiI2VuZGlmIiwiI2lmZGVmIFVTRV9VVjIiLCJcdGF0dHJpYnV0ZSB2ZWMyIHV2MjsiLCIjZW5kaWYiLCIjaWZkZWYgVVNFX1VWMyIsIlx0YXR0cmlidXRlIHZlYzIgdXYzOyIsIiNlbmRpZiIsIiNpZmRlZiBVU0VfVEFOR0VOVCIsIlx0YXR0cmlidXRlIHZlYzQgdGFuZ2VudDsiLCIjZW5kaWYiLCIjaWYgZGVmaW5lZCggVVNFX0NPTE9SX0FMUEhBICkiLCJcdGF0dHJpYnV0ZSB2ZWM0IGNvbG9yOyIsIiNlbGlmIGRlZmluZWQoIFVTRV9DT0xPUiApIiwiXHRhdHRyaWJ1dGUgdmVjMyBjb2xvcjsiLCIjZW5kaWYiLCIjaWYgKCBkZWZpbmVkKCBVU0VfTU9SUEhUQVJHRVRTICkgJiYgISBkZWZpbmVkKCBNT1JQSFRBUkdFVFNfVEVYVFVSRSApICkiLCJcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoVGFyZ2V0MDsiLCJcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoVGFyZ2V0MTsiLCJcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoVGFyZ2V0MjsiLCJcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoVGFyZ2V0MzsiLCJcdCNpZmRlZiBVU0VfTU9SUEhOT1JNQUxTIiwiXHRcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoTm9ybWFsMDsiLCJcdFx0YXR0cmlidXRlIHZlYzMgbW9ycGhOb3JtYWwxOyIsIlx0XHRhdHRyaWJ1dGUgdmVjMyBtb3JwaE5vcm1hbDI7IiwiXHRcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoTm9ybWFsMzsiLCJcdCNlbHNlIiwiXHRcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoVGFyZ2V0NDsiLCJcdFx0YXR0cmlidXRlIHZlYzMgbW9ycGhUYXJnZXQ1OyIsIlx0XHRhdHRyaWJ1dGUgdmVjMyBtb3JwaFRhcmdldDY7IiwiXHRcdGF0dHJpYnV0ZSB2ZWMzIG1vcnBoVGFyZ2V0NzsiLCJcdCNlbmRpZiIsIiNlbmRpZiIsIiNpZmRlZiBVU0VfU0tJTk5JTkciLCJcdGF0dHJpYnV0ZSB2ZWM0IHNraW5JbmRleDsiLCJcdGF0dHJpYnV0ZSB2ZWM0IHNraW5XZWlnaHQ7IiwiI2VuZGlmIiwiXG4iXS5maWx0ZXIoUHMpLmpvaW4oIlxuIiksTT1baCwkcyh0KSwiI2RlZmluZSBTSEFERVJfVFlQRSAiK3Quc2hhZGVyVHlwZSwiI2RlZmluZSBTSEFERVJfTkFNRSAiK3Quc2hhZGVyTmFtZSx3LHQudXNlRm9nJiZ0LmZvZz8iI2RlZmluZSBVU0VfRk9HIjoiIix0LnVzZUZvZyYmdC5mb2dFeHAyPyIjZGVmaW5lIEZPR19FWFAyIjoiIix0Lm1hcD8iI2RlZmluZSBVU0VfTUFQIjoiIix0Lm1hdGNhcD8iI2RlZmluZSBVU0VfTUFUQ0FQIjoiIix0LmVudk1hcD8iI2RlZmluZSBVU0VfRU5WTUFQIjoiIix0LmVudk1hcD8iI2RlZmluZSAiK0I6IiIsdC5lbnZNYXA/IiNkZWZpbmUgIitjOiIiLHQuZW52TWFwPyIjZGVmaW5lICIrdToiIixsPyIjZGVmaW5lIENVQkVVVl9URVhFTF9XSURUSCAiK2wudGV4ZWxXaWR0aDoiIixsPyIjZGVmaW5lIENVQkVVVl9URVhFTF9IRUlHSFQgIitsLnRleGVsSGVpZ2h0OiIiLGw/IiNkZWZpbmUgQ1VCRVVWX01BWF9NSVAgIitsLm1heE1pcCsiLjAiOiIiLHQubGlnaHRNYXA/IiNkZWZpbmUgVVNFX0xJR0hUTUFQIjoiIix0LmFvTWFwPyIjZGVmaW5lIFVTRV9BT01BUCI6IiIsdC5idW1wTWFwPyIjZGVmaW5lIFVTRV9CVU1QTUFQIjoiIix0Lm5vcm1hbE1hcD8iI2RlZmluZSBVU0VfTk9STUFMTUFQIjoiIix0Lm5vcm1hbE1hcE9iamVjdFNwYWNlPyIjZGVmaW5lIFVTRV9OT1JNQUxNQVBfT0JKRUNUU1BBQ0UiOiIiLHQubm9ybWFsTWFwVGFuZ2VudFNwYWNlPyIjZGVmaW5lIFVTRV9OT1JNQUxNQVBfVEFOR0VOVFNQQUNFIjoiIix0LmVtaXNzaXZlTWFwPyIjZGVmaW5lIFVTRV9FTUlTU0lWRU1BUCI6IiIsdC5hbmlzb3Ryb3B5PyIjZGVmaW5lIFVTRV9BTklTT1RST1BZIjoiIix0LmFuaXNvdHJvcHlNYXA/IiNkZWZpbmUgVVNFX0FOSVNPVFJPUFlNQVAiOiIiLHQuY2xlYXJjb2F0PyIjZGVmaW5lIFVTRV9DTEVBUkNPQVQiOiIiLHQuY2xlYXJjb2F0TWFwPyIjZGVmaW5lIFVTRV9DTEVBUkNPQVRNQVAiOiIiLHQuY2xlYXJjb2F0Um91Z2huZXNzTWFwPyIjZGVmaW5lIFVTRV9DTEVBUkNPQVRfUk9VR0hORVNTTUFQIjoiIix0LmNsZWFyY29hdE5vcm1hbE1hcD8iI2RlZmluZSBVU0VfQ0xFQVJDT0FUX05PUk1BTE1BUCI6IiIsdC5pcmlkZXNjZW5jZT8iI2RlZmluZSBVU0VfSVJJREVTQ0VOQ0UiOiIiLHQuaXJpZGVzY2VuY2VNYXA/IiNkZWZpbmUgVVNFX0lSSURFU0NFTkNFTUFQIjoiIix0LmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwPyIjZGVmaW5lIFVTRV9JUklERVNDRU5DRV9USElDS05FU1NNQVAiOiIiLHQuc3BlY3VsYXJNYXA/IiNkZWZpbmUgVVNFX1NQRUNVTEFSTUFQIjoiIix0LnNwZWN1bGFyQ29sb3JNYXA/IiNkZWZpbmUgVVNFX1NQRUNVTEFSX0NPTE9STUFQIjoiIix0LnNwZWN1bGFySW50ZW5zaXR5TWFwPyIjZGVmaW5lIFVTRV9TUEVDVUxBUl9JTlRFTlNJVFlNQVAiOiIiLHQucm91Z2huZXNzTWFwPyIjZGVmaW5lIFVTRV9ST1VHSE5FU1NNQVAiOiIiLHQubWV0YWxuZXNzTWFwPyIjZGVmaW5lIFVTRV9NRVRBTE5FU1NNQVAiOiIiLHQuYWxwaGFNYXA/IiNkZWZpbmUgVVNFX0FMUEhBTUFQIjoiIix0LmFscGhhVGVzdD8iI2RlZmluZSBVU0VfQUxQSEFURVNUIjoiIix0LnNoZWVuPyIjZGVmaW5lIFVTRV9TSEVFTiI6IiIsdC5zaGVlbkNvbG9yTWFwPyIjZGVmaW5lIFVTRV9TSEVFTl9DT0xPUk1BUCI6IiIsdC5zaGVlblJvdWdobmVzc01hcD8iI2RlZmluZSBVU0VfU0hFRU5fUk9VR0hORVNTTUFQIjoiIix0LnRyYW5zbWlzc2lvbj8iI2RlZmluZSBVU0VfVFJBTlNNSVNTSU9OIjoiIix0LnRyYW5zbWlzc2lvbk1hcD8iI2RlZmluZSBVU0VfVFJBTlNNSVNTSU9OTUFQIjoiIix0LnRoaWNrbmVzc01hcD8iI2RlZmluZSBVU0VfVEhJQ0tORVNTTUFQIjoiIix0LnZlcnRleFRhbmdlbnRzPyIjZGVmaW5lIFVTRV9UQU5HRU5UIjoiIix0LnZlcnRleENvbG9yc3x8dC5pbnN0YW5jaW5nQ29sb3I/IiNkZWZpbmUgVVNFX0NPTE9SIjoiIix0LnZlcnRleEFscGhhcz8iI2RlZmluZSBVU0VfQ09MT1JfQUxQSEEiOiIiLHQudmVydGV4VXYxcz8iI2RlZmluZSBVU0VfVVYxIjoiIix0LnZlcnRleFV2MnM/IiNkZWZpbmUgVVNFX1VWMiI6IiIsdC52ZXJ0ZXhVdjNzPyIjZGVmaW5lIFVTRV9VVjMiOiIiLHQucG9pbnRzVXZzPyIjZGVmaW5lIFVTRV9QT0lOVFNfVVYiOiIiLHQuZ3JhZGllbnRNYXA/IiNkZWZpbmUgVVNFX0dSQURJRU5UTUFQIjoiIix0LmZsYXRTaGFkaW5nPyIjZGVmaW5lIEZMQVRfU0hBREVEIjoiIix0LmRvdWJsZVNpZGVkPyIjZGVmaW5lIERPVUJMRV9TSURFRCI6IiIsdC5mbGlwU2lkZWQ/IiNkZWZpbmUgRkxJUF9TSURFRCI6IiIsdC5zaGFkb3dNYXBFbmFibGVkPyIjZGVmaW5lIFVTRV9TSEFET1dNQVAiOiIiLHQuc2hhZG93TWFwRW5hYmxlZD8iI2RlZmluZSAiK2E6IiIsdC5wcmVtdWx0aXBsaWVkQWxwaGE/IiNkZWZpbmUgUFJFTVVMVElQTElFRF9BTFBIQSI6IiIsdC51c2VMZWdhY3lMaWdodHM/IiNkZWZpbmUgTEVHQUNZX0xJR0hUUyI6IiIsdC5sb2dhcml0aG1pY0RlcHRoQnVmZmVyPyIjZGVmaW5lIFVTRV9MT0dERVBUSEJVRiI6IiIsdC5sb2dhcml0aG1pY0RlcHRoQnVmZmVyJiZ0LnJlbmRlcmVyRXh0ZW5zaW9uRnJhZ0RlcHRoPyIjZGVmaW5lIFVTRV9MT0dERVBUSEJVRl9FWFQiOiIiLCJ1bmlmb3JtIG1hdDQgdmlld01hdHJpeDsiLCJ1bmlmb3JtIHZlYzMgY2FtZXJhUG9zaXRpb247IiwidW5pZm9ybSBib29sIGlzT3J0aG9ncmFwaGljOyIsdC50b25lTWFwcGluZyE9PV8/IiNkZWZpbmUgVE9ORV9NQVBQSU5HIjoiIix0LnRvbmVNYXBwaW5nIT09Xz90by50b25lbWFwcGluZ19wYXJzX2ZyYWdtZW50OiIiLHQudG9uZU1hcHBpbmchPT1fP0xzKCJ0b25lTWFwcGluZyIsdC50b25lTWFwcGluZyk6IiIsdC5kaXRoZXJpbmc/IiNkZWZpbmUgRElUSEVSSU5HIjoiIix0Lm9wYXF1ZT8iI2RlZmluZSBPUEFRVUUiOiIiLHRvLmVuY29kaW5nc19wYXJzX2ZyYWdtZW50LHpzKCJsaW5lYXJUb091dHB1dFRleGVsIix0Lm91dHB1dENvbG9yU3BhY2UpLHQudXNlRGVwdGhQYWNraW5nPyIjZGVmaW5lIERFUFRIX1BBQ0tJTkcgIit0LmRlcHRoUGFja2luZzoiIiwiXG4iXS5maWx0ZXIoUHMpLmpvaW4oIlxuIikpLG89S3Mobyksbz1PcyhvLHQpLG89VnMobyx0KSxzPUtzKHMpLHM9T3Mocyx0KSxzPVZzKHMsdCksbz1fcyhvKSxzPV9zKHMpLHQuaXNXZWJHTDImJiEwIT09dC5pc1Jhd1NoYWRlck1hdGVyaWFsJiYoZD0iI3ZlcnNpb24gMzAwIGVzXG4iLEk9WyJwcmVjaXNpb24gbWVkaXVtcCBzYW1wbGVyMkRBcnJheTsiLCIjZGVmaW5lIGF0dHJpYnV0ZSBpbiIsIiNkZWZpbmUgdmFyeWluZyBvdXQiLCIjZGVmaW5lIHRleHR1cmUyRCB0ZXh0dXJlIl0uam9pbigiXG4iKSsiXG4iK0ksTT1bIiNkZWZpbmUgdmFyeWluZyBpbiIsdC5nbHNsVmVyc2lvbj09PUZ0PyIiOiJsYXlvdXQobG9jYXRpb24gPSAwKSBvdXQgaGlnaHAgdmVjNCBwY19mcmFnQ29sb3I7Iix0Lmdsc2xWZXJzaW9uPT09RnQ/IiI6IiNkZWZpbmUgZ2xfRnJhZ0NvbG9yIHBjX2ZyYWdDb2xvciIsIiNkZWZpbmUgZ2xfRnJhZ0RlcHRoRVhUIGdsX0ZyYWdEZXB0aCIsIiNkZWZpbmUgdGV4dHVyZTJEIHRleHR1cmUiLCIjZGVmaW5lIHRleHR1cmVDdWJlIHRleHR1cmUiLCIjZGVmaW5lIHRleHR1cmUyRFByb2ogdGV4dHVyZVByb2oiLCIjZGVmaW5lIHRleHR1cmUyRExvZEVYVCB0ZXh0dXJlTG9kIiwiI2RlZmluZSB0ZXh0dXJlMkRQcm9qTG9kRVhUIHRleHR1cmVQcm9qTG9kIiwiI2RlZmluZSB0ZXh0dXJlQ3ViZUxvZEVYVCB0ZXh0dXJlTG9kIiwiI2RlZmluZSB0ZXh0dXJlMkRHcmFkRVhUIHRleHR1cmVHcmFkIiwiI2RlZmluZSB0ZXh0dXJlMkRQcm9qR3JhZEVYVCB0ZXh0dXJlUHJvakdyYWQiLCIjZGVmaW5lIHRleHR1cmVDdWJlR3JhZEVYVCB0ZXh0dXJlR3JhZCJdLmpvaW4oIlxuIikrIlxuIitNKTtjb25zdCBwPWQrSStvLG09ZCtNK3MsRj1rcyhpLGkuVkVSVEVYX1NIQURFUixwKSxEPWtzKGksaS5GUkFHTUVOVF9TSEFERVIsbSk7aWYoaS5hdHRhY2hTaGFkZXIoQyxGKSxpLmF0dGFjaFNoYWRlcihDLEQpLHZvaWQgMCE9PXQuaW5kZXgwQXR0cmlidXRlTmFtZT9pLmJpbmRBdHRyaWJMb2NhdGlvbihDLDAsdC5pbmRleDBBdHRyaWJ1dGVOYW1lKTohMD09PXQubW9ycGhUYXJnZXRzJiZpLmJpbmRBdHRyaWJMb2NhdGlvbihDLDAsInBvc2l0aW9uIiksaS5saW5rUHJvZ3JhbShDKSxBLmRlYnVnLmNoZWNrU2hhZGVyRXJyb3JzKXtjb25zdCBlPWkuZ2V0UHJvZ3JhbUluZm9Mb2coQykudHJpbSgpLHQ9aS5nZXRTaGFkZXJJbmZvTG9nKEYpLnRyaW0oKSxuPWkuZ2V0U2hhZGVySW5mb0xvZyhEKS50cmltKCk7bGV0IHI9ITAsbz0hMDtpZighMT09PWkuZ2V0UHJvZ3JhbVBhcmFtZXRlcihDLGkuTElOS19TVEFUVVMpKWlmKHI9ITEsImZ1bmN0aW9uIj09dHlwZW9mIEEuZGVidWcub25TaGFkZXJFcnJvcilBLmRlYnVnLm9uU2hhZGVyRXJyb3IoaSxDLEYsRCk7ZWxzZXtjb25zdCBBPUpzKGksRiwidmVydGV4IiksdD1KcyhpLEQsImZyYWdtZW50Iik7Y29uc29sZS5lcnJvcigiVEhSRUUuV2ViR0xQcm9ncmFtOiBTaGFkZXIgRXJyb3IgIitpLmdldEVycm9yKCkrIiAtIFZBTElEQVRFX1NUQVRVUyAiK2kuZ2V0UHJvZ3JhbVBhcmFtZXRlcihDLGkuVkFMSURBVEVfU1RBVFVTKSsiXG5cblByb2dyYW0gSW5mbyBMb2c6ICIrZSsiXG4iK0ErIlxuIit0KX1lbHNlIiIhPT1lP2NvbnNvbGUud2FybigiVEhSRUUuV2ViR0xQcm9ncmFtOiBQcm9ncmFtIEluZm8gTG9nOiIsZSk6IiIhPT10JiYiIiE9PW58fChvPSExKTtvJiYodGhpcy5kaWFnbm9zdGljcz17cnVubmFibGU6cixwcm9ncmFtTG9nOmUsdmVydGV4U2hhZGVyOntsb2c6dCxwcmVmaXg6SX0sZnJhZ21lbnRTaGFkZXI6e2xvZzpuLHByZWZpeDpNfX0pfWxldCBZLGY7cmV0dXJuIGkuZGVsZXRlU2hhZGVyKEYpLGkuZGVsZXRlU2hhZGVyKEQpLHRoaXMuZ2V0VW5pZm9ybXM9ZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwPT09WSYmKFk9bmV3IHZzKGksQykpLFl9LHRoaXMuZ2V0QXR0cmlidXRlcz1mdW5jdGlvbigpe3JldHVybiB2b2lkIDA9PT1mJiYoZj1mdW5jdGlvbihBLGUpe2NvbnN0IHQ9e30sbj1BLmdldFByb2dyYW1QYXJhbWV0ZXIoZSxBLkFDVElWRV9BVFRSSUJVVEVTKTtmb3IobGV0IGk9MDtpPG47aSsrKXtjb25zdCBuPUEuZ2V0QWN0aXZlQXR0cmliKGUsaSkscj1uLm5hbWU7bGV0IG89MTtuLnR5cGU9PT1BLkZMT0FUX01BVDImJihvPTIpLG4udHlwZT09PUEuRkxPQVRfTUFUMyYmKG89Myksbi50eXBlPT09QS5GTE9BVF9NQVQ0JiYobz00KSx0W3JdPXt0eXBlOm4udHlwZSxsb2NhdGlvbjpBLmdldEF0dHJpYkxvY2F0aW9uKGUsciksbG9jYXRpb25TaXplOm99fXJldHVybiB0fShpLEMpKSxmfSx0aGlzLmRlc3Ryb3k9ZnVuY3Rpb24oKXtuLnJlbGVhc2VTdGF0ZXNPZlByb2dyYW0odGhpcyksaS5kZWxldGVQcm9ncmFtKEMpLHRoaXMucHJvZ3JhbT12b2lkIDB9LHRoaXMudHlwZT10LnNoYWRlclR5cGUsdGhpcy5uYW1lPXQuc2hhZGVyTmFtZSx0aGlzLmlkPWpzKyssdGhpcy5jYWNoZUtleT1lLHRoaXMudXNlZFRpbWVzPTEsdGhpcy5wcm9ncmFtPUMsdGhpcy52ZXJ0ZXhTaGFkZXI9Rix0aGlzLmZyYWdtZW50U2hhZGVyPUQsdGhpc31sZXQgZWE9MDtjbGFzcyB0YXtjb25zdHJ1Y3Rvcigpe3RoaXMuc2hhZGVyQ2FjaGU9bmV3IE1hcCx0aGlzLm1hdGVyaWFsQ2FjaGU9bmV3IE1hcH11cGRhdGUoQSl7Y29uc3QgZT1BLnZlcnRleFNoYWRlcix0PUEuZnJhZ21lbnRTaGFkZXIsbj10aGlzLl9nZXRTaGFkZXJTdGFnZShlKSxpPXRoaXMuX2dldFNoYWRlclN0YWdlKHQpLHI9dGhpcy5fZ2V0U2hhZGVyQ2FjaGVGb3JNYXRlcmlhbChBKTtyZXR1cm4hMT09PXIuaGFzKG4pJiYoci5hZGQobiksbi51c2VkVGltZXMrKyksITE9PT1yLmhhcyhpKSYmKHIuYWRkKGkpLGkudXNlZFRpbWVzKyspLHRoaXN9cmVtb3ZlKEEpe2NvbnN0IGU9dGhpcy5tYXRlcmlhbENhY2hlLmdldChBKTtmb3IoY29uc3QgQSBvZiBlKUEudXNlZFRpbWVzLS0sMD09PUEudXNlZFRpbWVzJiZ0aGlzLnNoYWRlckNhY2hlLmRlbGV0ZShBLmNvZGUpO3JldHVybiB0aGlzLm1hdGVyaWFsQ2FjaGUuZGVsZXRlKEEpLHRoaXN9Z2V0VmVydGV4U2hhZGVySUQoQSl7cmV0dXJuIHRoaXMuX2dldFNoYWRlclN0YWdlKEEudmVydGV4U2hhZGVyKS5pZH1nZXRGcmFnbWVudFNoYWRlcklEKEEpe3JldHVybiB0aGlzLl9nZXRTaGFkZXJTdGFnZShBLmZyYWdtZW50U2hhZGVyKS5pZH1kaXNwb3NlKCl7dGhpcy5zaGFkZXJDYWNoZS5jbGVhcigpLHRoaXMubWF0ZXJpYWxDYWNoZS5jbGVhcigpfV9nZXRTaGFkZXJDYWNoZUZvck1hdGVyaWFsKEEpe2NvbnN0IGU9dGhpcy5tYXRlcmlhbENhY2hlO2xldCB0PWUuZ2V0KEEpO3JldHVybiB2b2lkIDA9PT10JiYodD1uZXcgU2V0LGUuc2V0KEEsdCkpLHR9X2dldFNoYWRlclN0YWdlKEEpe2NvbnN0IGU9dGhpcy5zaGFkZXJDYWNoZTtsZXQgdD1lLmdldChBKTtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9bmV3IG5hKEEpLGUuc2V0KEEsdCkpLHR9fWNsYXNzIG5he2NvbnN0cnVjdG9yKEEpe3RoaXMuaWQ9ZWErKyx0aGlzLmNvZGU9QSx0aGlzLnVzZWRUaW1lcz0wfX1mdW5jdGlvbiBpYShBLGUsdCxuLGkscixvKXtjb25zdCBzPW5ldyBhaSxhPW5ldyB0YSxCPVtdLGM9aS5pc1dlYkdMMixnPWkubG9nYXJpdGhtaWNEZXB0aEJ1ZmZlcixFPWkudmVydGV4VGV4dHVyZXM7bGV0IFE9aS5wcmVjaXNpb247Y29uc3QgdT17TWVzaERlcHRoTWF0ZXJpYWw6ImRlcHRoIixNZXNoRGlzdGFuY2VNYXRlcmlhbDoiZGlzdGFuY2VSR0JBIixNZXNoTm9ybWFsTWF0ZXJpYWw6Im5vcm1hbCIsTWVzaEJhc2ljTWF0ZXJpYWw6ImJhc2ljIixNZXNoTGFtYmVydE1hdGVyaWFsOiJsYW1iZXJ0IixNZXNoUGhvbmdNYXRlcmlhbDoicGhvbmciLE1lc2hUb29uTWF0ZXJpYWw6InRvb24iLE1lc2hTdGFuZGFyZE1hdGVyaWFsOiJwaHlzaWNhbCIsTWVzaFBoeXNpY2FsTWF0ZXJpYWw6InBoeXNpY2FsIixNZXNoTWF0Y2FwTWF0ZXJpYWw6Im1hdGNhcCIsTGluZUJhc2ljTWF0ZXJpYWw6ImJhc2ljIixMaW5lRGFzaGVkTWF0ZXJpYWw6ImRhc2hlZCIsUG9pbnRzTWF0ZXJpYWw6InBvaW50cyIsU2hhZG93TWF0ZXJpYWw6InNoYWRvdyIsU3ByaXRlTWF0ZXJpYWw6InNwcml0ZSJ9O2Z1bmN0aW9uIHcoQSl7cmV0dXJuIDA9PT1BPyJ1diI6InV2Ii5jb25jYXQoQSl9cmV0dXJue2dldFBhcmFtZXRlcnM6ZnVuY3Rpb24ocixzLEIsQyxNKXtjb25zdCBkPUMuZm9nLHA9TS5nZW9tZXRyeSxtPXIuaXNNZXNoU3RhbmRhcmRNYXRlcmlhbD9DLmVudmlyb25tZW50Om51bGwsRj0oci5pc01lc2hTdGFuZGFyZE1hdGVyaWFsP3Q6ZSkuZ2V0KHIuZW52TWFwfHxtKSxEPUYmJkYubWFwcGluZz09PWFBP0YuaW1hZ2UuaGVpZ2h0Om51bGwsWT11W3IudHlwZV07bnVsbCE9PXIucHJlY2lzaW9uJiYoUT1pLmdldE1heFByZWNpc2lvbihyLnByZWNpc2lvbiksUSE9PXIucHJlY2lzaW9uJiZjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUHJvZ3JhbS5nZXRQYXJhbWV0ZXJzOiIsci5wcmVjaXNpb24sIm5vdCBzdXBwb3J0ZWQsIHVzaW5nIixRLCJpbnN0ZWFkLiIpKTtjb25zdCBmPXAubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9ufHxwLm1vcnBoQXR0cmlidXRlcy5ub3JtYWx8fHAubW9ycGhBdHRyaWJ1dGVzLmNvbG9yLE49dm9pZCAwIT09Zj9mLmxlbmd0aDowO2xldCBVLHksVCx4LFI9MDtpZih2b2lkIDAhPT1wLm1vcnBoQXR0cmlidXRlcy5wb3NpdGlvbiYmKFI9MSksdm9pZCAwIT09cC5tb3JwaEF0dHJpYnV0ZXMubm9ybWFsJiYoUj0yKSx2b2lkIDAhPT1wLm1vcnBoQXR0cmlidXRlcy5jb2xvciYmKFI9MyksWSl7Y29uc3QgQT1pb1tZXTtVPUEudmVydGV4U2hhZGVyLHk9QS5mcmFnbWVudFNoYWRlcn1lbHNlIFU9ci52ZXJ0ZXhTaGFkZXIseT1yLmZyYWdtZW50U2hhZGVyLGEudXBkYXRlKHIpLFQ9YS5nZXRWZXJ0ZXhTaGFkZXJJRChyKSx4PWEuZ2V0RnJhZ21lbnRTaGFkZXJJRChyKTtjb25zdCBHPUEuZ2V0UmVuZGVyVGFyZ2V0KCksUz0hMD09PU0uaXNJbnN0YW5jZWRNZXNoLGI9ISFyLm1hcCxIPSEhci5tYXRjYXAsdj0hIUYsaz0hIXIuYW9NYXAsaj0hIXIubGlnaHRNYXAsSj0hIXIuYnVtcE1hcCx6PSEhci5ub3JtYWxNYXAsTD0hIXIuZGlzcGxhY2VtZW50TWFwLFA9ISFyLmVtaXNzaXZlTWFwLE89ISFyLm1ldGFsbmVzc01hcCxWPSEhci5yb3VnaG5lc3NNYXAsVz1yLmFuaXNvdHJvcHk+MCxLPXIuY2xlYXJjb2F0PjAsWD1yLmlyaWRlc2NlbmNlPjAsWj1yLnNoZWVuPjAscT1yLnRyYW5zbWlzc2lvbj4wLCQ9VyYmISFyLmFuaXNvdHJvcHlNYXAsQUE9SyYmISFyLmNsZWFyY29hdE1hcCxlQT1LJiYhIXIuY2xlYXJjb2F0Tm9ybWFsTWFwLHRBPUsmJiEhci5jbGVhcmNvYXRSb3VnaG5lc3NNYXAsbkE9WCYmISFyLmlyaWRlc2NlbmNlTWFwLGlBPVgmJiEhci5pcmlkZXNjZW5jZVRoaWNrbmVzc01hcCxyQT1aJiYhIXIuc2hlZW5Db2xvck1hcCxvQT1aJiYhIXIuc2hlZW5Sb3VnaG5lc3NNYXAsc0E9ISFyLnNwZWN1bGFyTWFwLEJBPSEhci5zcGVjdWxhckNvbG9yTWFwLGNBPSEhci5zcGVjdWxhckludGVuc2l0eU1hcCxnQT1xJiYhIXIudHJhbnNtaXNzaW9uTWFwLEVBPXEmJiEhci50aGlja25lc3NNYXAsUUE9ISFyLmdyYWRpZW50TWFwLHVBPSEhci5hbHBoYU1hcCxsQT1yLmFscGhhVGVzdD4wLGhBPSEhci5leHRlbnNpb25zLHdBPSEhcC5hdHRyaWJ1dGVzLnV2MSxDQT0hIXAuYXR0cmlidXRlcy51djIsSUE9ISFwLmF0dHJpYnV0ZXMudXYzO3JldHVybntpc1dlYkdMMjpjLHNoYWRlcklEOlksc2hhZGVyVHlwZTpyLnR5cGUsc2hhZGVyTmFtZTpyLm5hbWUsdmVydGV4U2hhZGVyOlUsZnJhZ21lbnRTaGFkZXI6eSxkZWZpbmVzOnIuZGVmaW5lcyxjdXN0b21WZXJ0ZXhTaGFkZXJJRDpULGN1c3RvbUZyYWdtZW50U2hhZGVySUQ6eCxpc1Jhd1NoYWRlck1hdGVyaWFsOiEwPT09ci5pc1Jhd1NoYWRlck1hdGVyaWFsLGdsc2xWZXJzaW9uOnIuZ2xzbFZlcnNpb24scHJlY2lzaW9uOlEsaW5zdGFuY2luZzpTLGluc3RhbmNpbmdDb2xvcjpTJiZudWxsIT09TS5pbnN0YW5jZUNvbG9yLHN1cHBvcnRzVmVydGV4VGV4dHVyZXM6RSxvdXRwdXRDb2xvclNwYWNlOm51bGw9PT1HP0Eub3V0cHV0Q29sb3JTcGFjZTohMD09PUcuaXNYUlJlbmRlclRhcmdldD9HLnRleHR1cmUuY29sb3JTcGFjZTp6ZSxtYXA6YixtYXRjYXA6SCxlbnZNYXA6dixlbnZNYXBNb2RlOnYmJkYubWFwcGluZyxlbnZNYXBDdWJlVVZIZWlnaHQ6RCxhb01hcDprLGxpZ2h0TWFwOmosYnVtcE1hcDpKLG5vcm1hbE1hcDp6LGRpc3BsYWNlbWVudE1hcDpFJiZMLGVtaXNzaXZlTWFwOlAsbm9ybWFsTWFwT2JqZWN0U3BhY2U6eiYmci5ub3JtYWxNYXBUeXBlPT09a2Usbm9ybWFsTWFwVGFuZ2VudFNwYWNlOnomJnIubm9ybWFsTWFwVHlwZT09PXZlLG1ldGFsbmVzc01hcDpPLHJvdWdobmVzc01hcDpWLGFuaXNvdHJvcHk6Vyxhbmlzb3Ryb3B5TWFwOiQsY2xlYXJjb2F0OkssY2xlYXJjb2F0TWFwOkFBLGNsZWFyY29hdE5vcm1hbE1hcDplQSxjbGVhcmNvYXRSb3VnaG5lc3NNYXA6dEEsaXJpZGVzY2VuY2U6WCxpcmlkZXNjZW5jZU1hcDpuQSxpcmlkZXNjZW5jZVRoaWNrbmVzc01hcDppQSxzaGVlbjpaLHNoZWVuQ29sb3JNYXA6ckEsc2hlZW5Sb3VnaG5lc3NNYXA6b0Esc3BlY3VsYXJNYXA6c0Esc3BlY3VsYXJDb2xvck1hcDpCQSxzcGVjdWxhckludGVuc2l0eU1hcDpjQSx0cmFuc21pc3Npb246cSx0cmFuc21pc3Npb25NYXA6Z0EsdGhpY2tuZXNzTWFwOkVBLGdyYWRpZW50TWFwOlFBLG9wYXF1ZTohMT09PXIudHJhbnNwYXJlbnQmJnIuYmxlbmRpbmc9PT1JLGFscGhhTWFwOnVBLGFscGhhVGVzdDpsQSxjb21iaW5lOnIuY29tYmluZSxtYXBVdjpiJiZ3KHIubWFwLmNoYW5uZWwpLGFvTWFwVXY6ayYmdyhyLmFvTWFwLmNoYW5uZWwpLGxpZ2h0TWFwVXY6aiYmdyhyLmxpZ2h0TWFwLmNoYW5uZWwpLGJ1bXBNYXBVdjpKJiZ3KHIuYnVtcE1hcC5jaGFubmVsKSxub3JtYWxNYXBVdjp6JiZ3KHIubm9ybWFsTWFwLmNoYW5uZWwpLGRpc3BsYWNlbWVudE1hcFV2OkwmJncoci5kaXNwbGFjZW1lbnRNYXAuY2hhbm5lbCksZW1pc3NpdmVNYXBVdjpQJiZ3KHIuZW1pc3NpdmVNYXAuY2hhbm5lbCksbWV0YWxuZXNzTWFwVXY6TyYmdyhyLm1ldGFsbmVzc01hcC5jaGFubmVsKSxyb3VnaG5lc3NNYXBVdjpWJiZ3KHIucm91Z2huZXNzTWFwLmNoYW5uZWwpLGFuaXNvdHJvcHlNYXBVdjokJiZ3KHIuYW5pc290cm9weU1hcC5jaGFubmVsKSxjbGVhcmNvYXRNYXBVdjpBQSYmdyhyLmNsZWFyY29hdE1hcC5jaGFubmVsKSxjbGVhcmNvYXROb3JtYWxNYXBVdjplQSYmdyhyLmNsZWFyY29hdE5vcm1hbE1hcC5jaGFubmVsKSxjbGVhcmNvYXRSb3VnaG5lc3NNYXBVdjp0QSYmdyhyLmNsZWFyY29hdFJvdWdobmVzc01hcC5jaGFubmVsKSxpcmlkZXNjZW5jZU1hcFV2Om5BJiZ3KHIuaXJpZGVzY2VuY2VNYXAuY2hhbm5lbCksaXJpZGVzY2VuY2VUaGlja25lc3NNYXBVdjppQSYmdyhyLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwLmNoYW5uZWwpLHNoZWVuQ29sb3JNYXBVdjpyQSYmdyhyLnNoZWVuQ29sb3JNYXAuY2hhbm5lbCksc2hlZW5Sb3VnaG5lc3NNYXBVdjpvQSYmdyhyLnNoZWVuUm91Z2huZXNzTWFwLmNoYW5uZWwpLHNwZWN1bGFyTWFwVXY6c0EmJncoci5zcGVjdWxhck1hcC5jaGFubmVsKSxzcGVjdWxhckNvbG9yTWFwVXY6QkEmJncoci5zcGVjdWxhckNvbG9yTWFwLmNoYW5uZWwpLHNwZWN1bGFySW50ZW5zaXR5TWFwVXY6Y0EmJncoci5zcGVjdWxhckludGVuc2l0eU1hcC5jaGFubmVsKSx0cmFuc21pc3Npb25NYXBVdjpnQSYmdyhyLnRyYW5zbWlzc2lvbk1hcC5jaGFubmVsKSx0aGlja25lc3NNYXBVdjpFQSYmdyhyLnRoaWNrbmVzc01hcC5jaGFubmVsKSxhbHBoYU1hcFV2OnVBJiZ3KHIuYWxwaGFNYXAuY2hhbm5lbCksdmVydGV4VGFuZ2VudHM6ISFwLmF0dHJpYnV0ZXMudGFuZ2VudCYmKHp8fFcpLHZlcnRleENvbG9yczpyLnZlcnRleENvbG9ycyx2ZXJ0ZXhBbHBoYXM6ITA9PT1yLnZlcnRleENvbG9ycyYmISFwLmF0dHJpYnV0ZXMuY29sb3ImJjQ9PT1wLmF0dHJpYnV0ZXMuY29sb3IuaXRlbVNpemUsdmVydGV4VXYxczp3QSx2ZXJ0ZXhVdjJzOkNBLHZlcnRleFV2M3M6SUEscG9pbnRzVXZzOiEwPT09TS5pc1BvaW50cyYmISFwLmF0dHJpYnV0ZXMudXYmJihifHx1QSksZm9nOiEhZCx1c2VGb2c6ITA9PT1yLmZvZyxmb2dFeHAyOmQmJmQuaXNGb2dFeHAyLGZsYXRTaGFkaW5nOiEwPT09ci5mbGF0U2hhZGluZyxzaXplQXR0ZW51YXRpb246ITA9PT1yLnNpemVBdHRlbnVhdGlvbixsb2dhcml0aG1pY0RlcHRoQnVmZmVyOmcsc2tpbm5pbmc6ITA9PT1NLmlzU2tpbm5lZE1lc2gsbW9ycGhUYXJnZXRzOnZvaWQgMCE9PXAubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9uLG1vcnBoTm9ybWFsczp2b2lkIDAhPT1wLm1vcnBoQXR0cmlidXRlcy5ub3JtYWwsbW9ycGhDb2xvcnM6dm9pZCAwIT09cC5tb3JwaEF0dHJpYnV0ZXMuY29sb3IsbW9ycGhUYXJnZXRzQ291bnQ6Tixtb3JwaFRleHR1cmVTdHJpZGU6UixudW1EaXJMaWdodHM6cy5kaXJlY3Rpb25hbC5sZW5ndGgsbnVtUG9pbnRMaWdodHM6cy5wb2ludC5sZW5ndGgsbnVtU3BvdExpZ2h0czpzLnNwb3QubGVuZ3RoLG51bVNwb3RMaWdodE1hcHM6cy5zcG90TGlnaHRNYXAubGVuZ3RoLG51bVJlY3RBcmVhTGlnaHRzOnMucmVjdEFyZWEubGVuZ3RoLG51bUhlbWlMaWdodHM6cy5oZW1pLmxlbmd0aCxudW1EaXJMaWdodFNoYWRvd3M6cy5kaXJlY3Rpb25hbFNoYWRvd01hcC5sZW5ndGgsbnVtUG9pbnRMaWdodFNoYWRvd3M6cy5wb2ludFNoYWRvd01hcC5sZW5ndGgsbnVtU3BvdExpZ2h0U2hhZG93czpzLnNwb3RTaGFkb3dNYXAubGVuZ3RoLG51bVNwb3RMaWdodFNoYWRvd3NXaXRoTWFwczpzLm51bVNwb3RMaWdodFNoYWRvd3NXaXRoTWFwcyxudW1DbGlwcGluZ1BsYW5lczpvLm51bVBsYW5lcyxudW1DbGlwSW50ZXJzZWN0aW9uOm8ubnVtSW50ZXJzZWN0aW9uLGRpdGhlcmluZzpyLmRpdGhlcmluZyxzaGFkb3dNYXBFbmFibGVkOkEuc2hhZG93TWFwLmVuYWJsZWQmJkIubGVuZ3RoPjAsc2hhZG93TWFwVHlwZTpBLnNoYWRvd01hcC50eXBlLHRvbmVNYXBwaW5nOnIudG9uZU1hcHBlZD9BLnRvbmVNYXBwaW5nOl8sdXNlTGVnYWN5TGlnaHRzOkEudXNlTGVnYWN5TGlnaHRzLHByZW11bHRpcGxpZWRBbHBoYTpyLnByZW11bHRpcGxpZWRBbHBoYSxkb3VibGVTaWRlZDpyLnNpZGU9PT1oLGZsaXBTaWRlZDpyLnNpZGU9PT1sLHVzZURlcHRoUGFja2luZzpyLmRlcHRoUGFja2luZz49MCxkZXB0aFBhY2tpbmc6ci5kZXB0aFBhY2tpbmd8fDAsaW5kZXgwQXR0cmlidXRlTmFtZTpyLmluZGV4MEF0dHJpYnV0ZU5hbWUsZXh0ZW5zaW9uRGVyaXZhdGl2ZXM6aEEmJiEwPT09ci5leHRlbnNpb25zLmRlcml2YXRpdmVzLGV4dGVuc2lvbkZyYWdEZXB0aDpoQSYmITA9PT1yLmV4dGVuc2lvbnMuZnJhZ0RlcHRoLGV4dGVuc2lvbkRyYXdCdWZmZXJzOmhBJiYhMD09PXIuZXh0ZW5zaW9ucy5kcmF3QnVmZmVycyxleHRlbnNpb25TaGFkZXJUZXh0dXJlTE9EOmhBJiYhMD09PXIuZXh0ZW5zaW9ucy5zaGFkZXJUZXh0dXJlTE9ELHJlbmRlcmVyRXh0ZW5zaW9uRnJhZ0RlcHRoOmN8fG4uaGFzKCJFWFRfZnJhZ19kZXB0aCIpLHJlbmRlcmVyRXh0ZW5zaW9uRHJhd0J1ZmZlcnM6Y3x8bi5oYXMoIldFQkdMX2RyYXdfYnVmZmVycyIpLHJlbmRlcmVyRXh0ZW5zaW9uU2hhZGVyVGV4dHVyZUxvZDpjfHxuLmhhcygiRVhUX3NoYWRlcl90ZXh0dXJlX2xvZCIpLGN1c3RvbVByb2dyYW1DYWNoZUtleTpyLmN1c3RvbVByb2dyYW1DYWNoZUtleSgpfX0sZ2V0UHJvZ3JhbUNhY2hlS2V5OmZ1bmN0aW9uKGUpe2NvbnN0IHQ9W107aWYoZS5zaGFkZXJJRD90LnB1c2goZS5zaGFkZXJJRCk6KHQucHVzaChlLmN1c3RvbVZlcnRleFNoYWRlcklEKSx0LnB1c2goZS5jdXN0b21GcmFnbWVudFNoYWRlcklEKSksdm9pZCAwIT09ZS5kZWZpbmVzKWZvcihjb25zdCBBIGluIGUuZGVmaW5lcyl0LnB1c2goQSksdC5wdXNoKGUuZGVmaW5lc1tBXSk7cmV0dXJuITE9PT1lLmlzUmF3U2hhZGVyTWF0ZXJpYWwmJighZnVuY3Rpb24oQSxlKXtBLnB1c2goZS5wcmVjaXNpb24pLEEucHVzaChlLm91dHB1dENvbG9yU3BhY2UpLEEucHVzaChlLmVudk1hcE1vZGUpLEEucHVzaChlLmVudk1hcEN1YmVVVkhlaWdodCksQS5wdXNoKGUubWFwVXYpLEEucHVzaChlLmFscGhhTWFwVXYpLEEucHVzaChlLmxpZ2h0TWFwVXYpLEEucHVzaChlLmFvTWFwVXYpLEEucHVzaChlLmJ1bXBNYXBVdiksQS5wdXNoKGUubm9ybWFsTWFwVXYpLEEucHVzaChlLmRpc3BsYWNlbWVudE1hcFV2KSxBLnB1c2goZS5lbWlzc2l2ZU1hcFV2KSxBLnB1c2goZS5tZXRhbG5lc3NNYXBVdiksQS5wdXNoKGUucm91Z2huZXNzTWFwVXYpLEEucHVzaChlLmFuaXNvdHJvcHlNYXBVdiksQS5wdXNoKGUuY2xlYXJjb2F0TWFwVXYpLEEucHVzaChlLmNsZWFyY29hdE5vcm1hbE1hcFV2KSxBLnB1c2goZS5jbGVhcmNvYXRSb3VnaG5lc3NNYXBVdiksQS5wdXNoKGUuaXJpZGVzY2VuY2VNYXBVdiksQS5wdXNoKGUuaXJpZGVzY2VuY2VUaGlja25lc3NNYXBVdiksQS5wdXNoKGUuc2hlZW5Db2xvck1hcFV2KSxBLnB1c2goZS5zaGVlblJvdWdobmVzc01hcFV2KSxBLnB1c2goZS5zcGVjdWxhck1hcFV2KSxBLnB1c2goZS5zcGVjdWxhckNvbG9yTWFwVXYpLEEucHVzaChlLnNwZWN1bGFySW50ZW5zaXR5TWFwVXYpLEEucHVzaChlLnRyYW5zbWlzc2lvbk1hcFV2KSxBLnB1c2goZS50aGlja25lc3NNYXBVdiksQS5wdXNoKGUuY29tYmluZSksQS5wdXNoKGUuZm9nRXhwMiksQS5wdXNoKGUuc2l6ZUF0dGVudWF0aW9uKSxBLnB1c2goZS5tb3JwaFRhcmdldHNDb3VudCksQS5wdXNoKGUubW9ycGhBdHRyaWJ1dGVDb3VudCksQS5wdXNoKGUubnVtRGlyTGlnaHRzKSxBLnB1c2goZS5udW1Qb2ludExpZ2h0cyksQS5wdXNoKGUubnVtU3BvdExpZ2h0cyksQS5wdXNoKGUubnVtU3BvdExpZ2h0TWFwcyksQS5wdXNoKGUubnVtSGVtaUxpZ2h0cyksQS5wdXNoKGUubnVtUmVjdEFyZWFMaWdodHMpLEEucHVzaChlLm51bURpckxpZ2h0U2hhZG93cyksQS5wdXNoKGUubnVtUG9pbnRMaWdodFNoYWRvd3MpLEEucHVzaChlLm51bVNwb3RMaWdodFNoYWRvd3MpLEEucHVzaChlLm51bVNwb3RMaWdodFNoYWRvd3NXaXRoTWFwcyksQS5wdXNoKGUuc2hhZG93TWFwVHlwZSksQS5wdXNoKGUudG9uZU1hcHBpbmcpLEEucHVzaChlLm51bUNsaXBwaW5nUGxhbmVzKSxBLnB1c2goZS5udW1DbGlwSW50ZXJzZWN0aW9uKSxBLnB1c2goZS5kZXB0aFBhY2tpbmcpfSh0LGUpLGZ1bmN0aW9uKEEsZSl7cy5kaXNhYmxlQWxsKCksZS5pc1dlYkdMMiYmcy5lbmFibGUoMCk7ZS5zdXBwb3J0c1ZlcnRleFRleHR1cmVzJiZzLmVuYWJsZSgxKTtlLmluc3RhbmNpbmcmJnMuZW5hYmxlKDIpO2UuaW5zdGFuY2luZ0NvbG9yJiZzLmVuYWJsZSgzKTtlLm1hdGNhcCYmcy5lbmFibGUoNCk7ZS5lbnZNYXAmJnMuZW5hYmxlKDUpO2Uubm9ybWFsTWFwT2JqZWN0U3BhY2UmJnMuZW5hYmxlKDYpO2Uubm9ybWFsTWFwVGFuZ2VudFNwYWNlJiZzLmVuYWJsZSg3KTtlLmNsZWFyY29hdCYmcy5lbmFibGUoOCk7ZS5pcmlkZXNjZW5jZSYmcy5lbmFibGUoOSk7ZS5hbHBoYVRlc3QmJnMuZW5hYmxlKDEwKTtlLnZlcnRleENvbG9ycyYmcy5lbmFibGUoMTEpO2UudmVydGV4QWxwaGFzJiZzLmVuYWJsZSgxMik7ZS52ZXJ0ZXhVdjFzJiZzLmVuYWJsZSgxMyk7ZS52ZXJ0ZXhVdjJzJiZzLmVuYWJsZSgxNCk7ZS52ZXJ0ZXhVdjNzJiZzLmVuYWJsZSgxNSk7ZS52ZXJ0ZXhUYW5nZW50cyYmcy5lbmFibGUoMTYpO2UuYW5pc290cm9weSYmcy5lbmFibGUoMTcpO0EucHVzaChzLm1hc2spLHMuZGlzYWJsZUFsbCgpLGUuZm9nJiZzLmVuYWJsZSgwKTtlLnVzZUZvZyYmcy5lbmFibGUoMSk7ZS5mbGF0U2hhZGluZyYmcy5lbmFibGUoMik7ZS5sb2dhcml0aG1pY0RlcHRoQnVmZmVyJiZzLmVuYWJsZSgzKTtlLnNraW5uaW5nJiZzLmVuYWJsZSg0KTtlLm1vcnBoVGFyZ2V0cyYmcy5lbmFibGUoNSk7ZS5tb3JwaE5vcm1hbHMmJnMuZW5hYmxlKDYpO2UubW9ycGhDb2xvcnMmJnMuZW5hYmxlKDcpO2UucHJlbXVsdGlwbGllZEFscGhhJiZzLmVuYWJsZSg4KTtlLnNoYWRvd01hcEVuYWJsZWQmJnMuZW5hYmxlKDkpO2UudXNlTGVnYWN5TGlnaHRzJiZzLmVuYWJsZSgxMCk7ZS5kb3VibGVTaWRlZCYmcy5lbmFibGUoMTEpO2UuZmxpcFNpZGVkJiZzLmVuYWJsZSgxMik7ZS51c2VEZXB0aFBhY2tpbmcmJnMuZW5hYmxlKDEzKTtlLmRpdGhlcmluZyYmcy5lbmFibGUoMTQpO2UudHJhbnNtaXNzaW9uJiZzLmVuYWJsZSgxNSk7ZS5zaGVlbiYmcy5lbmFibGUoMTYpO2Uub3BhcXVlJiZzLmVuYWJsZSgxNyk7ZS5wb2ludHNVdnMmJnMuZW5hYmxlKDE4KTtBLnB1c2gocy5tYXNrKX0odCxlKSx0LnB1c2goQS5vdXRwdXRDb2xvclNwYWNlKSksdC5wdXNoKGUuY3VzdG9tUHJvZ3JhbUNhY2hlS2V5KSx0LmpvaW4oKX0sZ2V0VW5pZm9ybXM6ZnVuY3Rpb24oQSl7Y29uc3QgZT11W0EudHlwZV07bGV0IHQ7aWYoZSl7Y29uc3QgQT1pb1tlXTt0PWtyLmNsb25lKEEudW5pZm9ybXMpfWVsc2UgdD1BLnVuaWZvcm1zO3JldHVybiB0fSxhY3F1aXJlUHJvZ3JhbTpmdW5jdGlvbihlLHQpe2xldCBuO2ZvcihsZXQgQT0wLGU9Qi5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1CW0FdO2lmKGUuY2FjaGVLZXk9PT10KXtuPWUsKytuLnVzZWRUaW1lczticmVha319cmV0dXJuIHZvaWQgMD09PW4mJihuPW5ldyBBYShBLHQsZSxyKSxCLnB1c2gobikpLG59LHJlbGVhc2VQcm9ncmFtOmZ1bmN0aW9uKEEpe2lmKDA9PS0tQS51c2VkVGltZXMpe2NvbnN0IGU9Qi5pbmRleE9mKEEpO0JbZV09QltCLmxlbmd0aC0xXSxCLnBvcCgpLEEuZGVzdHJveSgpfX0scmVsZWFzZVNoYWRlckNhY2hlOmZ1bmN0aW9uKEEpe2EucmVtb3ZlKEEpfSxwcm9ncmFtczpCLGRpc3Bvc2U6ZnVuY3Rpb24oKXthLmRpc3Bvc2UoKX19fWZ1bmN0aW9uIHJhKCl7bGV0IEE9bmV3IFdlYWtNYXA7cmV0dXJue2dldDpmdW5jdGlvbihlKXtsZXQgdD1BLmdldChlKTtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9e30sQS5zZXQoZSx0KSksdH0scmVtb3ZlOmZ1bmN0aW9uKGUpe0EuZGVsZXRlKGUpfSx1cGRhdGU6ZnVuY3Rpb24oZSx0LG4pe0EuZ2V0KGUpW3RdPW59LGRpc3Bvc2U6ZnVuY3Rpb24oKXtBPW5ldyBXZWFrTWFwfX19ZnVuY3Rpb24gb2EoQSxlKXtyZXR1cm4gQS5ncm91cE9yZGVyIT09ZS5ncm91cE9yZGVyP0EuZ3JvdXBPcmRlci1lLmdyb3VwT3JkZXI6QS5yZW5kZXJPcmRlciE9PWUucmVuZGVyT3JkZXI/QS5yZW5kZXJPcmRlci1lLnJlbmRlck9yZGVyOkEubWF0ZXJpYWwuaWQhPT1lLm1hdGVyaWFsLmlkP0EubWF0ZXJpYWwuaWQtZS5tYXRlcmlhbC5pZDpBLnohPT1lLno/QS56LWUuejpBLmlkLWUuaWR9ZnVuY3Rpb24gc2EoQSxlKXtyZXR1cm4gQS5ncm91cE9yZGVyIT09ZS5ncm91cE9yZGVyP0EuZ3JvdXBPcmRlci1lLmdyb3VwT3JkZXI6QS5yZW5kZXJPcmRlciE9PWUucmVuZGVyT3JkZXI/QS5yZW5kZXJPcmRlci1lLnJlbmRlck9yZGVyOkEueiE9PWUuej9lLnotQS56OkEuaWQtZS5pZH1mdW5jdGlvbiBhYSgpe2NvbnN0IEE9W107bGV0IGU9MDtjb25zdCB0PVtdLG49W10saT1bXTtmdW5jdGlvbiByKHQsbixpLHIsbyxzKXtsZXQgYT1BW2VdO3JldHVybiB2b2lkIDA9PT1hPyhhPXtpZDp0LmlkLG9iamVjdDp0LGdlb21ldHJ5Om4sbWF0ZXJpYWw6aSxncm91cE9yZGVyOnIscmVuZGVyT3JkZXI6dC5yZW5kZXJPcmRlcix6Om8sZ3JvdXA6c30sQVtlXT1hKTooYS5pZD10LmlkLGEub2JqZWN0PXQsYS5nZW9tZXRyeT1uLGEubWF0ZXJpYWw9aSxhLmdyb3VwT3JkZXI9cixhLnJlbmRlck9yZGVyPXQucmVuZGVyT3JkZXIsYS56PW8sYS5ncm91cD1zKSxlKyssYX1yZXR1cm57b3BhcXVlOnQsdHJhbnNtaXNzaXZlOm4sdHJhbnNwYXJlbnQ6aSxpbml0OmZ1bmN0aW9uKCl7ZT0wLHQubGVuZ3RoPTAsbi5sZW5ndGg9MCxpLmxlbmd0aD0wfSxwdXNoOmZ1bmN0aW9uKEEsZSxvLHMsYSxCKXtjb25zdCBjPXIoQSxlLG8scyxhLEIpO28udHJhbnNtaXNzaW9uPjA/bi5wdXNoKGMpOiEwPT09by50cmFuc3BhcmVudD9pLnB1c2goYyk6dC5wdXNoKGMpfSx1bnNoaWZ0OmZ1bmN0aW9uKEEsZSxvLHMsYSxCKXtjb25zdCBjPXIoQSxlLG8scyxhLEIpO28udHJhbnNtaXNzaW9uPjA/bi51bnNoaWZ0KGMpOiEwPT09by50cmFuc3BhcmVudD9pLnVuc2hpZnQoYyk6dC51bnNoaWZ0KGMpfSxmaW5pc2g6ZnVuY3Rpb24oKXtmb3IobGV0IHQ9ZSxuPUEubGVuZ3RoO3Q8bjt0Kyspe2NvbnN0IGU9QVt0XTtpZihudWxsPT09ZS5pZClicmVhaztlLmlkPW51bGwsZS5vYmplY3Q9bnVsbCxlLmdlb21ldHJ5PW51bGwsZS5tYXRlcmlhbD1udWxsLGUuZ3JvdXA9bnVsbH19LHNvcnQ6ZnVuY3Rpb24oQSxlKXt0Lmxlbmd0aD4xJiZ0LnNvcnQoQXx8b2EpLG4ubGVuZ3RoPjEmJm4uc29ydChlfHxzYSksaS5sZW5ndGg+MSYmaS5zb3J0KGV8fHNhKX19fWZ1bmN0aW9uIEJhKCl7bGV0IEE9bmV3IFdlYWtNYXA7cmV0dXJue2dldDpmdW5jdGlvbihlLHQpe2NvbnN0IG49QS5nZXQoZSk7bGV0IGk7cmV0dXJuIHZvaWQgMD09PW4/KGk9bmV3IGFhLEEuc2V0KGUsW2ldKSk6dD49bi5sZW5ndGg/KGk9bmV3IGFhLG4ucHVzaChpKSk6aT1uW3RdLGl9LGRpc3Bvc2U6ZnVuY3Rpb24oKXtBPW5ldyBXZWFrTWFwfX19ZnVuY3Rpb24gY2EoKXtjb25zdCBBPXt9O3JldHVybntnZXQ6ZnVuY3Rpb24oZSl7aWYodm9pZCAwIT09QVtlLmlkXSlyZXR1cm4gQVtlLmlkXTtsZXQgdDtzd2l0Y2goZS50eXBlKXtjYXNlIkRpcmVjdGlvbmFsTGlnaHQiOnQ9e2RpcmVjdGlvbjpuZXcgZG4sY29sb3I6bmV3IEppfTticmVhaztjYXNlIlNwb3RMaWdodCI6dD17cG9zaXRpb246bmV3IGRuLGRpcmVjdGlvbjpuZXcgZG4sY29sb3I6bmV3IEppLGRpc3RhbmNlOjAsY29uZUNvczowLHBlbnVtYnJhQ29zOjAsZGVjYXk6MH07YnJlYWs7Y2FzZSJQb2ludExpZ2h0Ijp0PXtwb3NpdGlvbjpuZXcgZG4sY29sb3I6bmV3IEppLGRpc3RhbmNlOjAsZGVjYXk6MH07YnJlYWs7Y2FzZSJIZW1pc3BoZXJlTGlnaHQiOnQ9e2RpcmVjdGlvbjpuZXcgZG4sc2t5Q29sb3I6bmV3IEppLGdyb3VuZENvbG9yOm5ldyBKaX07YnJlYWs7Y2FzZSJSZWN0QXJlYUxpZ2h0Ijp0PXtjb2xvcjpuZXcgSmkscG9zaXRpb246bmV3IGRuLGhhbGZXaWR0aDpuZXcgZG4saGFsZkhlaWdodDpuZXcgZG59fXJldHVybiBBW2UuaWRdPXQsdH19fWxldCBnYT0wO2Z1bmN0aW9uIEVhKEEsZSl7cmV0dXJuKGUuY2FzdFNoYWRvdz8yOjApLShBLmNhc3RTaGFkb3c/MjowKSsoZS5tYXA/MTowKS0oQS5tYXA/MTowKX1mdW5jdGlvbiBRYShBLGUpe2NvbnN0IHQ9bmV3IGNhLG49ZnVuY3Rpb24oKXtjb25zdCBBPXt9O3JldHVybntnZXQ6ZnVuY3Rpb24oZSl7aWYodm9pZCAwIT09QVtlLmlkXSlyZXR1cm4gQVtlLmlkXTtsZXQgdDtzd2l0Y2goZS50eXBlKXtjYXNlIkRpcmVjdGlvbmFsTGlnaHQiOmNhc2UiU3BvdExpZ2h0Ijp0PXtzaGFkb3dCaWFzOjAsc2hhZG93Tm9ybWFsQmlhczowLHNoYWRvd1JhZGl1czoxLHNoYWRvd01hcFNpemU6bmV3IEx0fTticmVhaztjYXNlIlBvaW50TGlnaHQiOnQ9e3NoYWRvd0JpYXM6MCxzaGFkb3dOb3JtYWxCaWFzOjAsc2hhZG93UmFkaXVzOjEsc2hhZG93TWFwU2l6ZTpuZXcgTHQsc2hhZG93Q2FtZXJhTmVhcjoxLHNoYWRvd0NhbWVyYUZhcjoxZTN9fXJldHVybiBBW2UuaWRdPXQsdH19fSgpLGk9e3ZlcnNpb246MCxoYXNoOntkaXJlY3Rpb25hbExlbmd0aDotMSxwb2ludExlbmd0aDotMSxzcG90TGVuZ3RoOi0xLHJlY3RBcmVhTGVuZ3RoOi0xLGhlbWlMZW5ndGg6LTEsbnVtRGlyZWN0aW9uYWxTaGFkb3dzOi0xLG51bVBvaW50U2hhZG93czotMSxudW1TcG90U2hhZG93czotMSxudW1TcG90TWFwczotMX0sYW1iaWVudDpbMCwwLDBdLHByb2JlOltdLGRpcmVjdGlvbmFsOltdLGRpcmVjdGlvbmFsU2hhZG93OltdLGRpcmVjdGlvbmFsU2hhZG93TWFwOltdLGRpcmVjdGlvbmFsU2hhZG93TWF0cml4OltdLHNwb3Q6W10sc3BvdExpZ2h0TWFwOltdLHNwb3RTaGFkb3c6W10sc3BvdFNoYWRvd01hcDpbXSxzcG90TGlnaHRNYXRyaXg6W10scmVjdEFyZWE6W10scmVjdEFyZWFMVEMxOm51bGwscmVjdEFyZWFMVEMyOm51bGwscG9pbnQ6W10scG9pbnRTaGFkb3c6W10scG9pbnRTaGFkb3dNYXA6W10scG9pbnRTaGFkb3dNYXRyaXg6W10saGVtaTpbXSxudW1TcG90TGlnaHRTaGFkb3dzV2l0aE1hcHM6MH07Zm9yKGxldCBBPTA7QTw5O0ErKylpLnByb2JlLnB1c2gobmV3IGRuKTtjb25zdCByPW5ldyBkbixvPW5ldyBfbixzPW5ldyBfbjtyZXR1cm57c2V0dXA6ZnVuY3Rpb24ocixvKXtsZXQgcz0wLGE9MCxCPTA7Zm9yKGxldCBBPTA7QTw5O0ErKylpLnByb2JlW0FdLnNldCgwLDAsMCk7bGV0IGM9MCxnPTAsRT0wLFE9MCx1PTAsbD0wLGg9MCx3PTAsQz0wLEk9MDtyLnNvcnQoRWEpO2NvbnN0IE09ITA9PT1vP01hdGguUEk6MTtmb3IobGV0IEE9MCxlPXIubGVuZ3RoO0E8ZTtBKyspe2NvbnN0IGU9cltBXSxvPWUuY29sb3IsZD1lLmludGVuc2l0eSxwPWUuZGlzdGFuY2UsbT1lLnNoYWRvdyYmZS5zaGFkb3cubWFwP2Uuc2hhZG93Lm1hcC50ZXh0dXJlOm51bGw7aWYoZS5pc0FtYmllbnRMaWdodClzKz1vLnIqZCpNLGErPW8uZypkKk0sQis9by5iKmQqTTtlbHNlIGlmKGUuaXNMaWdodFByb2JlKWZvcihsZXQgQT0wO0E8OTtBKyspaS5wcm9iZVtBXS5hZGRTY2FsZWRWZWN0b3IoZS5zaC5jb2VmZmljaWVudHNbQV0sZCk7ZWxzZSBpZihlLmlzRGlyZWN0aW9uYWxMaWdodCl7Y29uc3QgQT10LmdldChlKTtpZihBLmNvbG9yLmNvcHkoZS5jb2xvcikubXVsdGlwbHlTY2FsYXIoZS5pbnRlbnNpdHkqTSksZS5jYXN0U2hhZG93KXtjb25zdCBBPWUuc2hhZG93LHQ9bi5nZXQoZSk7dC5zaGFkb3dCaWFzPUEuYmlhcyx0LnNoYWRvd05vcm1hbEJpYXM9QS5ub3JtYWxCaWFzLHQuc2hhZG93UmFkaXVzPUEucmFkaXVzLHQuc2hhZG93TWFwU2l6ZT1BLm1hcFNpemUsaS5kaXJlY3Rpb25hbFNoYWRvd1tjXT10LGkuZGlyZWN0aW9uYWxTaGFkb3dNYXBbY109bSxpLmRpcmVjdGlvbmFsU2hhZG93TWF0cml4W2NdPWUuc2hhZG93Lm1hdHJpeCxsKyt9aS5kaXJlY3Rpb25hbFtjXT1BLGMrK31lbHNlIGlmKGUuaXNTcG90TGlnaHQpe2NvbnN0IEE9dC5nZXQoZSk7QS5wb3NpdGlvbi5zZXRGcm9tTWF0cml4UG9zaXRpb24oZS5tYXRyaXhXb3JsZCksQS5jb2xvci5jb3B5KG8pLm11bHRpcGx5U2NhbGFyKGQqTSksQS5kaXN0YW5jZT1wLEEuY29uZUNvcz1NYXRoLmNvcyhlLmFuZ2xlKSxBLnBlbnVtYnJhQ29zPU1hdGguY29zKGUuYW5nbGUqKDEtZS5wZW51bWJyYSkpLEEuZGVjYXk9ZS5kZWNheSxpLnNwb3RbRV09QTtjb25zdCByPWUuc2hhZG93O2lmKGUubWFwJiYoaS5zcG90TGlnaHRNYXBbQ109ZS5tYXAsQysrLHIudXBkYXRlTWF0cmljZXMoZSksZS5jYXN0U2hhZG93JiZJKyspLGkuc3BvdExpZ2h0TWF0cml4W0VdPXIubWF0cml4LGUuY2FzdFNoYWRvdyl7Y29uc3QgQT1uLmdldChlKTtBLnNoYWRvd0JpYXM9ci5iaWFzLEEuc2hhZG93Tm9ybWFsQmlhcz1yLm5vcm1hbEJpYXMsQS5zaGFkb3dSYWRpdXM9ci5yYWRpdXMsQS5zaGFkb3dNYXBTaXplPXIubWFwU2l6ZSxpLnNwb3RTaGFkb3dbRV09QSxpLnNwb3RTaGFkb3dNYXBbRV09bSx3Kyt9RSsrfWVsc2UgaWYoZS5pc1JlY3RBcmVhTGlnaHQpe2NvbnN0IEE9dC5nZXQoZSk7QS5jb2xvci5jb3B5KG8pLm11bHRpcGx5U2NhbGFyKGQpLEEuaGFsZldpZHRoLnNldCguNSplLndpZHRoLDAsMCksQS5oYWxmSGVpZ2h0LnNldCgwLC41KmUuaGVpZ2h0LDApLGkucmVjdEFyZWFbUV09QSxRKyt9ZWxzZSBpZihlLmlzUG9pbnRMaWdodCl7Y29uc3QgQT10LmdldChlKTtpZihBLmNvbG9yLmNvcHkoZS5jb2xvcikubXVsdGlwbHlTY2FsYXIoZS5pbnRlbnNpdHkqTSksQS5kaXN0YW5jZT1lLmRpc3RhbmNlLEEuZGVjYXk9ZS5kZWNheSxlLmNhc3RTaGFkb3cpe2NvbnN0IEE9ZS5zaGFkb3csdD1uLmdldChlKTt0LnNoYWRvd0JpYXM9QS5iaWFzLHQuc2hhZG93Tm9ybWFsQmlhcz1BLm5vcm1hbEJpYXMsdC5zaGFkb3dSYWRpdXM9QS5yYWRpdXMsdC5zaGFkb3dNYXBTaXplPUEubWFwU2l6ZSx0LnNoYWRvd0NhbWVyYU5lYXI9QS5jYW1lcmEubmVhcix0LnNoYWRvd0NhbWVyYUZhcj1BLmNhbWVyYS5mYXIsaS5wb2ludFNoYWRvd1tnXT10LGkucG9pbnRTaGFkb3dNYXBbZ109bSxpLnBvaW50U2hhZG93TWF0cml4W2ddPWUuc2hhZG93Lm1hdHJpeCxoKyt9aS5wb2ludFtnXT1BLGcrK31lbHNlIGlmKGUuaXNIZW1pc3BoZXJlTGlnaHQpe2NvbnN0IEE9dC5nZXQoZSk7QS5za3lDb2xvci5jb3B5KGUuY29sb3IpLm11bHRpcGx5U2NhbGFyKGQqTSksQS5ncm91bmRDb2xvci5jb3B5KGUuZ3JvdW5kQ29sb3IpLm11bHRpcGx5U2NhbGFyKGQqTSksaS5oZW1pW3VdPUEsdSsrfX1RPjAmJihlLmlzV2ViR0wyfHwhMD09PUEuaGFzKCJPRVNfdGV4dHVyZV9mbG9hdF9saW5lYXIiKT8oaS5yZWN0QXJlYUxUQzE9bm8uTFRDX0ZMT0FUXzEsaS5yZWN0QXJlYUxUQzI9bm8uTFRDX0ZMT0FUXzIpOiEwPT09QS5oYXMoIk9FU190ZXh0dXJlX2hhbGZfZmxvYXRfbGluZWFyIik/KGkucmVjdEFyZWFMVEMxPW5vLkxUQ19IQUxGXzEsaS5yZWN0QXJlYUxUQzI9bm8uTFRDX0hBTEZfMik6Y29uc29sZS5lcnJvcigiVEhSRUUuV2ViR0xSZW5kZXJlcjogVW5hYmxlIHRvIHVzZSBSZWN0QXJlYUxpZ2h0LiBNaXNzaW5nIFdlYkdMIGV4dGVuc2lvbnMuIikpLGkuYW1iaWVudFswXT1zLGkuYW1iaWVudFsxXT1hLGkuYW1iaWVudFsyXT1CO2NvbnN0IGQ9aS5oYXNoO2QuZGlyZWN0aW9uYWxMZW5ndGg9PT1jJiZkLnBvaW50TGVuZ3RoPT09ZyYmZC5zcG90TGVuZ3RoPT09RSYmZC5yZWN0QXJlYUxlbmd0aD09PVEmJmQuaGVtaUxlbmd0aD09PXUmJmQubnVtRGlyZWN0aW9uYWxTaGFkb3dzPT09bCYmZC5udW1Qb2ludFNoYWRvd3M9PT1oJiZkLm51bVNwb3RTaGFkb3dzPT09dyYmZC5udW1TcG90TWFwcz09PUN8fChpLmRpcmVjdGlvbmFsLmxlbmd0aD1jLGkuc3BvdC5sZW5ndGg9RSxpLnJlY3RBcmVhLmxlbmd0aD1RLGkucG9pbnQubGVuZ3RoPWcsaS5oZW1pLmxlbmd0aD11LGkuZGlyZWN0aW9uYWxTaGFkb3cubGVuZ3RoPWwsaS5kaXJlY3Rpb25hbFNoYWRvd01hcC5sZW5ndGg9bCxpLnBvaW50U2hhZG93Lmxlbmd0aD1oLGkucG9pbnRTaGFkb3dNYXAubGVuZ3RoPWgsaS5zcG90U2hhZG93Lmxlbmd0aD13LGkuc3BvdFNoYWRvd01hcC5sZW5ndGg9dyxpLmRpcmVjdGlvbmFsU2hhZG93TWF0cml4Lmxlbmd0aD1sLGkucG9pbnRTaGFkb3dNYXRyaXgubGVuZ3RoPWgsaS5zcG90TGlnaHRNYXRyaXgubGVuZ3RoPXcrQy1JLGkuc3BvdExpZ2h0TWFwLmxlbmd0aD1DLGkubnVtU3BvdExpZ2h0U2hhZG93c1dpdGhNYXBzPUksZC5kaXJlY3Rpb25hbExlbmd0aD1jLGQucG9pbnRMZW5ndGg9ZyxkLnNwb3RMZW5ndGg9RSxkLnJlY3RBcmVhTGVuZ3RoPVEsZC5oZW1pTGVuZ3RoPXUsZC5udW1EaXJlY3Rpb25hbFNoYWRvd3M9bCxkLm51bVBvaW50U2hhZG93cz1oLGQubnVtU3BvdFNoYWRvd3M9dyxkLm51bVNwb3RNYXBzPUMsaS52ZXJzaW9uPWdhKyspfSxzZXR1cFZpZXc6ZnVuY3Rpb24oQSxlKXtsZXQgdD0wLG49MCxhPTAsQj0wLGM9MDtjb25zdCBnPWUubWF0cml4V29ybGRJbnZlcnNlO2ZvcihsZXQgZT0wLEU9QS5sZW5ndGg7ZTxFO2UrKyl7Y29uc3QgRT1BW2VdO2lmKEUuaXNEaXJlY3Rpb25hbExpZ2h0KXtjb25zdCBBPWkuZGlyZWN0aW9uYWxbdF07QS5kaXJlY3Rpb24uc2V0RnJvbU1hdHJpeFBvc2l0aW9uKEUubWF0cml4V29ybGQpLHIuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKEUudGFyZ2V0Lm1hdHJpeFdvcmxkKSxBLmRpcmVjdGlvbi5zdWIociksQS5kaXJlY3Rpb24udHJhbnNmb3JtRGlyZWN0aW9uKGcpLHQrK31lbHNlIGlmKEUuaXNTcG90TGlnaHQpe2NvbnN0IEE9aS5zcG90W2FdO0EucG9zaXRpb24uc2V0RnJvbU1hdHJpeFBvc2l0aW9uKEUubWF0cml4V29ybGQpLEEucG9zaXRpb24uYXBwbHlNYXRyaXg0KGcpLEEuZGlyZWN0aW9uLnNldEZyb21NYXRyaXhQb3NpdGlvbihFLm1hdHJpeFdvcmxkKSxyLnNldEZyb21NYXRyaXhQb3NpdGlvbihFLnRhcmdldC5tYXRyaXhXb3JsZCksQS5kaXJlY3Rpb24uc3ViKHIpLEEuZGlyZWN0aW9uLnRyYW5zZm9ybURpcmVjdGlvbihnKSxhKyt9ZWxzZSBpZihFLmlzUmVjdEFyZWFMaWdodCl7Y29uc3QgQT1pLnJlY3RBcmVhW0JdO0EucG9zaXRpb24uc2V0RnJvbU1hdHJpeFBvc2l0aW9uKEUubWF0cml4V29ybGQpLEEucG9zaXRpb24uYXBwbHlNYXRyaXg0KGcpLHMuaWRlbnRpdHkoKSxvLmNvcHkoRS5tYXRyaXhXb3JsZCksby5wcmVtdWx0aXBseShnKSxzLmV4dHJhY3RSb3RhdGlvbihvKSxBLmhhbGZXaWR0aC5zZXQoLjUqRS53aWR0aCwwLDApLEEuaGFsZkhlaWdodC5zZXQoMCwuNSpFLmhlaWdodCwwKSxBLmhhbGZXaWR0aC5hcHBseU1hdHJpeDQocyksQS5oYWxmSGVpZ2h0LmFwcGx5TWF0cml4NChzKSxCKyt9ZWxzZSBpZihFLmlzUG9pbnRMaWdodCl7Y29uc3QgQT1pLnBvaW50W25dO0EucG9zaXRpb24uc2V0RnJvbU1hdHJpeFBvc2l0aW9uKEUubWF0cml4V29ybGQpLEEucG9zaXRpb24uYXBwbHlNYXRyaXg0KGcpLG4rK31lbHNlIGlmKEUuaXNIZW1pc3BoZXJlTGlnaHQpe2NvbnN0IEE9aS5oZW1pW2NdO0EuZGlyZWN0aW9uLnNldEZyb21NYXRyaXhQb3NpdGlvbihFLm1hdHJpeFdvcmxkKSxBLmRpcmVjdGlvbi50cmFuc2Zvcm1EaXJlY3Rpb24oZyksYysrfX19LHN0YXRlOml9fWZ1bmN0aW9uIHVhKEEsZSl7Y29uc3QgdD1uZXcgUWEoQSxlKSxuPVtdLGk9W107cmV0dXJue2luaXQ6ZnVuY3Rpb24oKXtuLmxlbmd0aD0wLGkubGVuZ3RoPTB9LHN0YXRlOntsaWdodHNBcnJheTpuLHNoYWRvd3NBcnJheTppLGxpZ2h0czp0fSxzZXR1cExpZ2h0czpmdW5jdGlvbihBKXt0LnNldHVwKG4sQSl9LHNldHVwTGlnaHRzVmlldzpmdW5jdGlvbihBKXt0LnNldHVwVmlldyhuLEEpfSxwdXNoTGlnaHQ6ZnVuY3Rpb24oQSl7bi5wdXNoKEEpfSxwdXNoU2hhZG93OmZ1bmN0aW9uKEEpe2kucHVzaChBKX19fWZ1bmN0aW9uIGxhKEEsZSl7bGV0IHQ9bmV3IFdlYWtNYXA7cmV0dXJue2dldDpmdW5jdGlvbihuKXtsZXQgaT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MDtjb25zdCByPXQuZ2V0KG4pO2xldCBvO3JldHVybiB2b2lkIDA9PT1yPyhvPW5ldyB1YShBLGUpLHQuc2V0KG4sW29dKSk6aT49ci5sZW5ndGg/KG89bmV3IHVhKEEsZSksci5wdXNoKG8pKTpvPXJbaV0sb30sZGlzcG9zZTpmdW5jdGlvbigpe3Q9bmV3IFdlYWtNYXB9fX1jbGFzcyBoYSBleHRlbmRzIGJpe2NvbnN0cnVjdG9yKEEpe3N1cGVyKCksdGhpcy5pc01lc2hEZXB0aE1hdGVyaWFsPSEwLHRoaXMudHlwZT0iTWVzaERlcHRoTWF0ZXJpYWwiLHRoaXMuZGVwdGhQYWNraW5nPWJlLHRoaXMubWFwPW51bGwsdGhpcy5hbHBoYU1hcD1udWxsLHRoaXMuZGlzcGxhY2VtZW50TWFwPW51bGwsdGhpcy5kaXNwbGFjZW1lbnRTY2FsZT0xLHRoaXMuZGlzcGxhY2VtZW50Qmlhcz0wLHRoaXMud2lyZWZyYW1lPSExLHRoaXMud2lyZWZyYW1lTGluZXdpZHRoPTEsdGhpcy5zZXRWYWx1ZXMoQSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLmRlcHRoUGFja2luZz1BLmRlcHRoUGFja2luZyx0aGlzLm1hcD1BLm1hcCx0aGlzLmFscGhhTWFwPUEuYWxwaGFNYXAsdGhpcy5kaXNwbGFjZW1lbnRNYXA9QS5kaXNwbGFjZW1lbnRNYXAsdGhpcy5kaXNwbGFjZW1lbnRTY2FsZT1BLmRpc3BsYWNlbWVudFNjYWxlLHRoaXMuZGlzcGxhY2VtZW50Qmlhcz1BLmRpc3BsYWNlbWVudEJpYXMsdGhpcy53aXJlZnJhbWU9QS53aXJlZnJhbWUsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9QS53aXJlZnJhbWVMaW5ld2lkdGgsdGhpc319Y2xhc3Mgd2EgZXh0ZW5kcyBiaXtjb25zdHJ1Y3RvcihBKXtzdXBlcigpLHRoaXMuaXNNZXNoRGlzdGFuY2VNYXRlcmlhbD0hMCx0aGlzLnR5cGU9Ik1lc2hEaXN0YW5jZU1hdGVyaWFsIix0aGlzLm1hcD1udWxsLHRoaXMuYWxwaGFNYXA9bnVsbCx0aGlzLmRpc3BsYWNlbWVudE1hcD1udWxsLHRoaXMuZGlzcGxhY2VtZW50U2NhbGU9MSx0aGlzLmRpc3BsYWNlbWVudEJpYXM9MCx0aGlzLnNldFZhbHVlcyhBKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMubWFwPUEubWFwLHRoaXMuYWxwaGFNYXA9QS5hbHBoYU1hcCx0aGlzLmRpc3BsYWNlbWVudE1hcD1BLmRpc3BsYWNlbWVudE1hcCx0aGlzLmRpc3BsYWNlbWVudFNjYWxlPUEuZGlzcGxhY2VtZW50U2NhbGUsdGhpcy5kaXNwbGFjZW1lbnRCaWFzPUEuZGlzcGxhY2VtZW50Qmlhcyx0aGlzfX1mdW5jdGlvbiBDYShBLGUsdCl7bGV0IG49bmV3IHFyO2NvbnN0IGk9bmV3IEx0LHI9bmV3IEx0LG89bmV3IFFuLHM9bmV3IGhhKHtkZXB0aFBhY2tpbmc6SGV9KSxhPW5ldyB3YSxCPXt9LGM9dC5tYXhUZXh0dXJlU2l6ZSxFPXtbdV06bCxbbF06dSxbaF06aH0sdz1uZXcganIoe2RlZmluZXM6e1ZTTV9TQU1QTEVTOjh9LHVuaWZvcm1zOntzaGFkb3dfcGFzczp7dmFsdWU6bnVsbH0scmVzb2x1dGlvbjp7dmFsdWU6bmV3IEx0fSxyYWRpdXM6e3ZhbHVlOjR9fSx2ZXJ0ZXhTaGFkZXI6InZvaWQgbWFpbigpIHtcblx0Z2xfUG9zaXRpb24gPSB2ZWM0KCBwb3NpdGlvbiwgMS4wICk7XG59IixmcmFnbWVudFNoYWRlcjoidW5pZm9ybSBzYW1wbGVyMkQgc2hhZG93X3Bhc3M7XG51bmlmb3JtIHZlYzIgcmVzb2x1dGlvbjtcbnVuaWZvcm0gZmxvYXQgcmFkaXVzO1xuI2luY2x1ZGUgPHBhY2tpbmc+XG52b2lkIG1haW4oKSB7XG5cdGNvbnN0IGZsb2F0IHNhbXBsZXMgPSBmbG9hdCggVlNNX1NBTVBMRVMgKTtcblx0ZmxvYXQgbWVhbiA9IDAuMDtcblx0ZmxvYXQgc3F1YXJlZF9tZWFuID0gMC4wO1xuXHRmbG9hdCB1dlN0cmlkZSA9IHNhbXBsZXMgPD0gMS4wID8gMC4wIDogMi4wIC8gKCBzYW1wbGVzIC0gMS4wICk7XG5cdGZsb2F0IHV2U3RhcnQgPSBzYW1wbGVzIDw9IDEuMCA/IDAuMCA6IC0gMS4wO1xuXHRmb3IgKCBmbG9hdCBpID0gMC4wOyBpIDwgc2FtcGxlczsgaSArKyApIHtcblx0XHRmbG9hdCB1dk9mZnNldCA9IHV2U3RhcnQgKyBpICogdXZTdHJpZGU7XG5cdFx0I2lmZGVmIEhPUklaT05UQUxfUEFTU1xuXHRcdFx0dmVjMiBkaXN0cmlidXRpb24gPSB1bnBhY2tSR0JBVG8ySGFsZiggdGV4dHVyZTJEKCBzaGFkb3dfcGFzcywgKCBnbF9GcmFnQ29vcmQueHkgKyB2ZWMyKCB1dk9mZnNldCwgMC4wICkgKiByYWRpdXMgKSAvIHJlc29sdXRpb24gKSApO1xuXHRcdFx0bWVhbiArPSBkaXN0cmlidXRpb24ueDtcblx0XHRcdHNxdWFyZWRfbWVhbiArPSBkaXN0cmlidXRpb24ueSAqIGRpc3RyaWJ1dGlvbi55ICsgZGlzdHJpYnV0aW9uLnggKiBkaXN0cmlidXRpb24ueDtcblx0XHQjZWxzZVxuXHRcdFx0ZmxvYXQgZGVwdGggPSB1bnBhY2tSR0JBVG9EZXB0aCggdGV4dHVyZTJEKCBzaGFkb3dfcGFzcywgKCBnbF9GcmFnQ29vcmQueHkgKyB2ZWMyKCAwLjAsIHV2T2Zmc2V0ICkgKiByYWRpdXMgKSAvIHJlc29sdXRpb24gKSApO1xuXHRcdFx0bWVhbiArPSBkZXB0aDtcblx0XHRcdHNxdWFyZWRfbWVhbiArPSBkZXB0aCAqIGRlcHRoO1xuXHRcdCNlbmRpZlxuXHR9XG5cdG1lYW4gPSBtZWFuIC8gc2FtcGxlcztcblx0c3F1YXJlZF9tZWFuID0gc3F1YXJlZF9tZWFuIC8gc2FtcGxlcztcblx0ZmxvYXQgc3RkX2RldiA9IHNxcnQoIHNxdWFyZWRfbWVhbiAtIG1lYW4gKiBtZWFuICk7XG5cdGdsX0ZyYWdDb2xvciA9IHBhY2sySGFsZlRvUkdCQSggdmVjMiggbWVhbiwgc3RkX2RldiApICk7XG59In0pLEk9dy5jbG9uZSgpO0kuZGVmaW5lcy5IT1JJWk9OVEFMX1BBU1M9MTtjb25zdCBNPW5ldyBscjtNLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBfaShuZXcgRmxvYXQzMkFycmF5KFstMSwtMSwuNSwzLC0xLC41LC0xLDMsLjVdKSwzKSk7Y29uc3QgZD1uZXcgUnIoTSx3KSxwPXRoaXM7dGhpcy5lbmFibGVkPSExLHRoaXMuYXV0b1VwZGF0ZT0hMCx0aGlzLm5lZWRzVXBkYXRlPSExLHRoaXMudHlwZT1nO2xldCBtPXRoaXMudHlwZTtmdW5jdGlvbiBGKHQsbil7Y29uc3Qgcj1lLnVwZGF0ZShkKTt3LmRlZmluZXMuVlNNX1NBTVBMRVMhPT10LmJsdXJTYW1wbGVzJiYody5kZWZpbmVzLlZTTV9TQU1QTEVTPXQuYmx1clNhbXBsZXMsSS5kZWZpbmVzLlZTTV9TQU1QTEVTPXQuYmx1clNhbXBsZXMsdy5uZWVkc1VwZGF0ZT0hMCxJLm5lZWRzVXBkYXRlPSEwKSxudWxsPT09dC5tYXBQYXNzJiYodC5tYXBQYXNzPW5ldyB1bihpLngsaS55KSksdy51bmlmb3Jtcy5zaGFkb3dfcGFzcy52YWx1ZT10Lm1hcC50ZXh0dXJlLHcudW5pZm9ybXMucmVzb2x1dGlvbi52YWx1ZT10Lm1hcFNpemUsdy51bmlmb3Jtcy5yYWRpdXMudmFsdWU9dC5yYWRpdXMsQS5zZXRSZW5kZXJUYXJnZXQodC5tYXBQYXNzKSxBLmNsZWFyKCksQS5yZW5kZXJCdWZmZXJEaXJlY3QobixudWxsLHIsdyxkLG51bGwpLEkudW5pZm9ybXMuc2hhZG93X3Bhc3MudmFsdWU9dC5tYXBQYXNzLnRleHR1cmUsSS51bmlmb3Jtcy5yZXNvbHV0aW9uLnZhbHVlPXQubWFwU2l6ZSxJLnVuaWZvcm1zLnJhZGl1cy52YWx1ZT10LnJhZGl1cyxBLnNldFJlbmRlclRhcmdldCh0Lm1hcCksQS5jbGVhcigpLEEucmVuZGVyQnVmZmVyRGlyZWN0KG4sbnVsbCxyLEksZCxudWxsKX1mdW5jdGlvbiBEKGUsdCxuLGkpe2xldCByPW51bGw7Y29uc3Qgbz0hMD09PW4uaXNQb2ludExpZ2h0P2UuY3VzdG9tRGlzdGFuY2VNYXRlcmlhbDplLmN1c3RvbURlcHRoTWF0ZXJpYWw7aWYodm9pZCAwIT09bylyPW87ZWxzZSBpZihyPSEwPT09bi5pc1BvaW50TGlnaHQ/YTpzLEEubG9jYWxDbGlwcGluZ0VuYWJsZWQmJiEwPT09dC5jbGlwU2hhZG93cyYmQXJyYXkuaXNBcnJheSh0LmNsaXBwaW5nUGxhbmVzKSYmMCE9PXQuY2xpcHBpbmdQbGFuZXMubGVuZ3RofHx0LmRpc3BsYWNlbWVudE1hcCYmMCE9PXQuZGlzcGxhY2VtZW50U2NhbGV8fHQuYWxwaGFNYXAmJnQuYWxwaGFUZXN0PjB8fHQubWFwJiZ0LmFscGhhVGVzdD4wKXtjb25zdCBBPXIudXVpZCxlPXQudXVpZDtsZXQgbj1CW0FdO3ZvaWQgMD09PW4mJihuPXt9LEJbQV09bik7bGV0IGk9bltlXTt2b2lkIDA9PT1pJiYoaT1yLmNsb25lKCksbltlXT1pKSxyPWl9aWYoci52aXNpYmxlPXQudmlzaWJsZSxyLndpcmVmcmFtZT10LndpcmVmcmFtZSxyLnNpZGU9aT09PVE/bnVsbCE9PXQuc2hhZG93U2lkZT90LnNoYWRvd1NpZGU6dC5zaWRlOm51bGwhPT10LnNoYWRvd1NpZGU/dC5zaGFkb3dTaWRlOkVbdC5zaWRlXSxyLmFscGhhTWFwPXQuYWxwaGFNYXAsci5hbHBoYVRlc3Q9dC5hbHBoYVRlc3Qsci5tYXA9dC5tYXAsci5jbGlwU2hhZG93cz10LmNsaXBTaGFkb3dzLHIuY2xpcHBpbmdQbGFuZXM9dC5jbGlwcGluZ1BsYW5lcyxyLmNsaXBJbnRlcnNlY3Rpb249dC5jbGlwSW50ZXJzZWN0aW9uLHIuZGlzcGxhY2VtZW50TWFwPXQuZGlzcGxhY2VtZW50TWFwLHIuZGlzcGxhY2VtZW50U2NhbGU9dC5kaXNwbGFjZW1lbnRTY2FsZSxyLmRpc3BsYWNlbWVudEJpYXM9dC5kaXNwbGFjZW1lbnRCaWFzLHIud2lyZWZyYW1lTGluZXdpZHRoPXQud2lyZWZyYW1lTGluZXdpZHRoLHIubGluZXdpZHRoPXQubGluZXdpZHRoLCEwPT09bi5pc1BvaW50TGlnaHQmJiEwPT09ci5pc01lc2hEaXN0YW5jZU1hdGVyaWFsKXtBLnByb3BlcnRpZXMuZ2V0KHIpLmxpZ2h0PW59cmV0dXJuIHJ9ZnVuY3Rpb24gWSh0LGkscixvLHMpe2lmKCExPT09dC52aXNpYmxlKXJldHVybjtpZih0LmxheWVycy50ZXN0KGkubGF5ZXJzKSYmKHQuaXNNZXNofHx0LmlzTGluZXx8dC5pc1BvaW50cykmJih0LmNhc3RTaGFkb3d8fHQucmVjZWl2ZVNoYWRvdyYmcz09PVEpJiYoIXQuZnJ1c3R1bUN1bGxlZHx8bi5pbnRlcnNlY3RzT2JqZWN0KHQpKSl7dC5tb2RlbFZpZXdNYXRyaXgubXVsdGlwbHlNYXRyaWNlcyhyLm1hdHJpeFdvcmxkSW52ZXJzZSx0Lm1hdHJpeFdvcmxkKTtjb25zdCBuPWUudXBkYXRlKHQpLGk9dC5tYXRlcmlhbDtpZihBcnJheS5pc0FycmF5KGkpKXtjb25zdCBlPW4uZ3JvdXBzO2ZvcihsZXQgYT0wLEI9ZS5sZW5ndGg7YTxCO2ErKyl7Y29uc3QgQj1lW2FdLGM9aVtCLm1hdGVyaWFsSW5kZXhdO2lmKGMmJmMudmlzaWJsZSl7Y29uc3QgZT1EKHQsYyxvLHMpO0EucmVuZGVyQnVmZmVyRGlyZWN0KHIsbnVsbCxuLGUsdCxCKX19fWVsc2UgaWYoaS52aXNpYmxlKXtjb25zdCBlPUQodCxpLG8scyk7QS5yZW5kZXJCdWZmZXJEaXJlY3QocixudWxsLG4sZSx0LG51bGwpfX1jb25zdCBhPXQuY2hpbGRyZW47Zm9yKGxldCBBPTAsZT1hLmxlbmd0aDtBPGU7QSsrKVkoYVtBXSxpLHIsbyxzKX10aGlzLnJlbmRlcj1mdW5jdGlvbihlLHQscyl7aWYoITE9PT1wLmVuYWJsZWQpcmV0dXJuO2lmKCExPT09cC5hdXRvVXBkYXRlJiYhMT09PXAubmVlZHNVcGRhdGUpcmV0dXJuO2lmKDA9PT1lLmxlbmd0aClyZXR1cm47Y29uc3QgYT1BLmdldFJlbmRlclRhcmdldCgpLEI9QS5nZXRBY3RpdmVDdWJlRmFjZSgpLGc9QS5nZXRBY3RpdmVNaXBtYXBMZXZlbCgpLEU9QS5zdGF0ZTtFLnNldEJsZW5kaW5nKEMpLEUuYnVmZmVycy5jb2xvci5zZXRDbGVhcigxLDEsMSwxKSxFLmJ1ZmZlcnMuZGVwdGguc2V0VGVzdCghMCksRS5zZXRTY2lzc29yVGVzdCghMSk7Y29uc3QgdT1tIT09USYmdGhpcy50eXBlPT09USxsPW09PT1RJiZ0aGlzLnR5cGUhPT1RO2ZvcihsZXQgYT0wLEI9ZS5sZW5ndGg7YTxCO2ErKyl7Y29uc3QgQj1lW2FdLGc9Qi5zaGFkb3c7aWYodm9pZCAwPT09Zyl7Y29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFNoYWRvd01hcDoiLEIsImhhcyBubyBzaGFkb3cuIik7Y29udGludWV9aWYoITE9PT1nLmF1dG9VcGRhdGUmJiExPT09Zy5uZWVkc1VwZGF0ZSljb250aW51ZTtpLmNvcHkoZy5tYXBTaXplKTtjb25zdCBoPWcuZ2V0RnJhbWVFeHRlbnRzKCk7aWYoaS5tdWx0aXBseShoKSxyLmNvcHkoZy5tYXBTaXplKSwoaS54PmN8fGkueT5jKSYmKGkueD5jJiYoci54PU1hdGguZmxvb3IoYy9oLngpLGkueD1yLngqaC54LGcubWFwU2l6ZS54PXIueCksaS55PmMmJihyLnk9TWF0aC5mbG9vcihjL2gueSksaS55PXIueSpoLnksZy5tYXBTaXplLnk9ci55KSksbnVsbD09PWcubWFwfHwhMD09PXV8fCEwPT09bCl7Y29uc3QgQT10aGlzLnR5cGUhPT1RP3ttaW5GaWx0ZXI6RUEsbWFnRmlsdGVyOkVBfTp7fTtudWxsIT09Zy5tYXAmJmcubWFwLmRpc3Bvc2UoKSxnLm1hcD1uZXcgdW4oaS54LGkueSxBKSxnLm1hcC50ZXh0dXJlLm5hbWU9Qi5uYW1lKyIuc2hhZG93TWFwIixnLmNhbWVyYS51cGRhdGVQcm9qZWN0aW9uTWF0cml4KCl9QS5zZXRSZW5kZXJUYXJnZXQoZy5tYXApLEEuY2xlYXIoKTtjb25zdCB3PWcuZ2V0Vmlld3BvcnRDb3VudCgpO2ZvcihsZXQgQT0wO0E8dztBKyspe2NvbnN0IGU9Zy5nZXRWaWV3cG9ydChBKTtvLnNldChyLngqZS54LHIueSplLnksci54KmUueixyLnkqZS53KSxFLnZpZXdwb3J0KG8pLGcudXBkYXRlTWF0cmljZXMoQixBKSxuPWcuZ2V0RnJ1c3R1bSgpLFkodCxzLGcuY2FtZXJhLEIsdGhpcy50eXBlKX0hMCE9PWcuaXNQb2ludExpZ2h0U2hhZG93JiZ0aGlzLnR5cGU9PT1RJiZGKGcscyksZy5uZWVkc1VwZGF0ZT0hMX1tPXRoaXMudHlwZSxwLm5lZWRzVXBkYXRlPSExLEEuc2V0UmVuZGVyVGFyZ2V0KGEsQixnKX19ZnVuY3Rpb24gSWEoQSxlLHQpe2NvbnN0IG49dC5pc1dlYkdMMjtjb25zdCBpPW5ldyBmdW5jdGlvbigpe2xldCBlPSExO2NvbnN0IHQ9bmV3IFFuO2xldCBuPW51bGw7Y29uc3QgaT1uZXcgUW4oMCwwLDAsMCk7cmV0dXJue3NldE1hc2s6ZnVuY3Rpb24odCl7bj09PXR8fGV8fChBLmNvbG9yTWFzayh0LHQsdCx0KSxuPXQpfSxzZXRMb2NrZWQ6ZnVuY3Rpb24oQSl7ZT1BfSxzZXRDbGVhcjpmdW5jdGlvbihlLG4scixvLHMpeyEwPT09cyYmKGUqPW8sbio9byxyKj1vKSx0LnNldChlLG4scixvKSwhMT09PWkuZXF1YWxzKHQpJiYoQS5jbGVhckNvbG9yKGUsbixyLG8pLGkuY29weSh0KSl9LHJlc2V0OmZ1bmN0aW9uKCl7ZT0hMSxuPW51bGwsaS5zZXQoLTEsMCwwLDApfX19LHI9bmV3IGZ1bmN0aW9uKCl7bGV0IGU9ITEsdD1udWxsLG49bnVsbCxpPW51bGw7cmV0dXJue3NldFRlc3Q6ZnVuY3Rpb24oZSl7ZT9kQShBLkRFUFRIX1RFU1QpOnBBKEEuREVQVEhfVEVTVCl9LHNldE1hc2s6ZnVuY3Rpb24obil7dD09PW58fGV8fChBLmRlcHRoTWFzayhuKSx0PW4pfSxzZXRGdW5jOmZ1bmN0aW9uKGUpe2lmKG4hPT1lKXtzd2l0Y2goZSl7Y2FzZSBqOkEuZGVwdGhGdW5jKEEuTkVWRVIpO2JyZWFrO2Nhc2UgSjpBLmRlcHRoRnVuYyhBLkFMV0FZUyk7YnJlYWs7Y2FzZSB6OkEuZGVwdGhGdW5jKEEuTEVTUyk7YnJlYWs7Y2FzZSBMOkEuZGVwdGhGdW5jKEEuTEVRVUFMKTticmVhaztjYXNlIFA6QS5kZXB0aEZ1bmMoQS5FUVVBTCk7YnJlYWs7Y2FzZSBPOkEuZGVwdGhGdW5jKEEuR0VRVUFMKTticmVhaztjYXNlIFY6QS5kZXB0aEZ1bmMoQS5HUkVBVEVSKTticmVhaztjYXNlIFc6QS5kZXB0aEZ1bmMoQS5OT1RFUVVBTCk7YnJlYWs7ZGVmYXVsdDpBLmRlcHRoRnVuYyhBLkxFUVVBTCl9bj1lfX0sc2V0TG9ja2VkOmZ1bmN0aW9uKEEpe2U9QX0sc2V0Q2xlYXI6ZnVuY3Rpb24oZSl7aSE9PWUmJihBLmNsZWFyRGVwdGgoZSksaT1lKX0scmVzZXQ6ZnVuY3Rpb24oKXtlPSExLHQ9bnVsbCxuPW51bGwsaT1udWxsfX19LEI9bmV3IGZ1bmN0aW9uKCl7bGV0IGU9ITEsdD1udWxsLG49bnVsbCxpPW51bGwscj1udWxsLG89bnVsbCxzPW51bGwsYT1udWxsLEI9bnVsbDtyZXR1cm57c2V0VGVzdDpmdW5jdGlvbih0KXtlfHwodD9kQShBLlNURU5DSUxfVEVTVCk6cEEoQS5TVEVOQ0lMX1RFU1QpKX0sc2V0TWFzazpmdW5jdGlvbihuKXt0PT09bnx8ZXx8KEEuc3RlbmNpbE1hc2sobiksdD1uKX0sc2V0RnVuYzpmdW5jdGlvbihlLHQsbyl7bj09PWUmJmk9PT10JiZyPT09b3x8KEEuc3RlbmNpbEZ1bmMoZSx0LG8pLG49ZSxpPXQscj1vKX0sc2V0T3A6ZnVuY3Rpb24oZSx0LG4pe289PT1lJiZzPT09dCYmYT09PW58fChBLnN0ZW5jaWxPcChlLHQsbiksbz1lLHM9dCxhPW4pfSxzZXRMb2NrZWQ6ZnVuY3Rpb24oQSl7ZT1BfSxzZXRDbGVhcjpmdW5jdGlvbihlKXtCIT09ZSYmKEEuY2xlYXJTdGVuY2lsKGUpLEI9ZSl9LHJlc2V0OmZ1bmN0aW9uKCl7ZT0hMSx0PW51bGwsbj1udWxsLGk9bnVsbCxyPW51bGwsbz1udWxsLHM9bnVsbCxhPW51bGwsQj1udWxsfX19LGM9bmV3IFdlYWtNYXAsZz1uZXcgV2Vha01hcDtsZXQgRT17fSxRPXt9LHU9bmV3IFdlYWtNYXAsdz1bXSxLPW51bGwsWD0hMSxaPW51bGwsXz1udWxsLHE9bnVsbCwkPW51bGwsQUE9bnVsbCxlQT1udWxsLHRBPW51bGwsbkE9ITEsaUE9bnVsbCxyQT1udWxsLG9BPW51bGwsc0E9bnVsbCxhQT1udWxsO2NvbnN0IEJBPUEuZ2V0UGFyYW1ldGVyKEEuTUFYX0NPTUJJTkVEX1RFWFRVUkVfSU1BR0VfVU5JVFMpO2xldCBjQT0hMSxnQT0wO2NvbnN0IEVBPUEuZ2V0UGFyYW1ldGVyKEEuVkVSU0lPTik7LTEhPT1FQS5pbmRleE9mKCJXZWJHTCIpPyhnQT1wYXJzZUZsb2F0KC9eV2ViR0wgKFxkKS8uZXhlYyhFQSlbMV0pLGNBPWdBPj0xKTotMSE9PUVBLmluZGV4T2YoIk9wZW5HTCBFUyIpJiYoZ0E9cGFyc2VGbG9hdCgvXk9wZW5HTCBFUyAoXGQpLy5leGVjKEVBKVsxXSksY0E9Z0E+PTIpO2xldCBRQT1udWxsLHVBPXt9O2NvbnN0IGxBPUEuZ2V0UGFyYW1ldGVyKEEuU0NJU1NPUl9CT1gpLGhBPUEuZ2V0UGFyYW1ldGVyKEEuVklFV1BPUlQpLHdBPShuZXcgUW4pLmZyb21BcnJheShsQSksQ0E9KG5ldyBRbikuZnJvbUFycmF5KGhBKTtmdW5jdGlvbiBJQShlLHQsaSxyKXtjb25zdCBvPW5ldyBVaW50OEFycmF5KDQpLHM9QS5jcmVhdGVUZXh0dXJlKCk7QS5iaW5kVGV4dHVyZShlLHMpLEEudGV4UGFyYW1ldGVyaShlLEEuVEVYVFVSRV9NSU5fRklMVEVSLEEuTkVBUkVTVCksQS50ZXhQYXJhbWV0ZXJpKGUsQS5URVhUVVJFX01BR19GSUxURVIsQS5ORUFSRVNUKTtmb3IobGV0IHM9MDtzPGk7cysrKSFufHxlIT09QS5URVhUVVJFXzNEJiZlIT09QS5URVhUVVJFXzJEX0FSUkFZP0EudGV4SW1hZ2UyRCh0K3MsMCxBLlJHQkEsMSwxLDAsQS5SR0JBLEEuVU5TSUdORURfQllURSxvKTpBLnRleEltYWdlM0QodCwwLEEuUkdCQSwxLDEsciwwLEEuUkdCQSxBLlVOU0lHTkVEX0JZVEUsbyk7cmV0dXJuIHN9Y29uc3QgTUE9e307ZnVuY3Rpb24gZEEoZSl7ITAhPT1FW2VdJiYoQS5lbmFibGUoZSksRVtlXT0hMCl9ZnVuY3Rpb24gcEEoZSl7ITEhPT1FW2VdJiYoQS5kaXNhYmxlKGUpLEVbZV09ITEpfU1BW0EuVEVYVFVSRV8yRF09SUEoQS5URVhUVVJFXzJELEEuVEVYVFVSRV8yRCwxKSxNQVtBLlRFWFRVUkVfQ1VCRV9NQVBdPUlBKEEuVEVYVFVSRV9DVUJFX01BUCxBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCw2KSxuJiYoTUFbQS5URVhUVVJFXzJEX0FSUkFZXT1JQShBLlRFWFRVUkVfMkRfQVJSQVksQS5URVhUVVJFXzJEX0FSUkFZLDEsMSksTUFbQS5URVhUVVJFXzNEXT1JQShBLlRFWFRVUkVfM0QsQS5URVhUVVJFXzNELDEsMSkpLGkuc2V0Q2xlYXIoMCwwLDAsMSksci5zZXRDbGVhcigxKSxCLnNldENsZWFyKDApLGRBKEEuREVQVEhfVEVTVCksci5zZXRGdW5jKEwpLFlBKCExKSxmQShzKSxkQShBLkNVTExfRkFDRSksREEoQyk7Y29uc3QgbUE9e1tGXTpBLkZVTkNfQURELFtEXTpBLkZVTkNfU1VCVFJBQ1QsW1ldOkEuRlVOQ19SRVZFUlNFX1NVQlRSQUNUfTtpZihuKW1BW2ZdPUEuTUlOLG1BW05dPUEuTUFYO2Vsc2V7Y29uc3QgQT1lLmdldCgiRVhUX2JsZW5kX21pbm1heCIpO251bGwhPT1BJiYobUFbZl09QS5NSU5fRVhULG1BW05dPUEuTUFYX0VYVCl9Y29uc3QgRkE9e1tVXTpBLlpFUk8sW3ldOkEuT05FLFtUXTpBLlNSQ19DT0xPUixbUl06QS5TUkNfQUxQSEEsW2tdOkEuU1JDX0FMUEhBX1NBVFVSQVRFLFtIXTpBLkRTVF9DT0xPUixbU106QS5EU1RfQUxQSEEsW3hdOkEuT05FX01JTlVTX1NSQ19DT0xPUixbR106QS5PTkVfTUlOVVNfU1JDX0FMUEhBLFt2XTpBLk9ORV9NSU5VU19EU1RfQ09MT1IsW2JdOkEuT05FX01JTlVTX0RTVF9BTFBIQX07ZnVuY3Rpb24gREEoZSx0LG4saSxyLG8scyxhKXtpZihlIT09Qyl7aWYoITE9PT1YJiYoZEEoQS5CTEVORCksWD0hMCksZT09PW0pcj1yfHx0LG89b3x8bixzPXN8fGksdD09PV8mJnI9PT1BQXx8KEEuYmxlbmRFcXVhdGlvblNlcGFyYXRlKG1BW3RdLG1BW3JdKSxfPXQsQUE9ciksbj09PXEmJmk9PT0kJiZvPT09ZUEmJnM9PT10QXx8KEEuYmxlbmRGdW5jU2VwYXJhdGUoRkFbbl0sRkFbaV0sRkFbb10sRkFbc10pLHE9biwkPWksZUE9byx0QT1zKSxaPWUsbkE9ITE7ZWxzZSBpZihlIT09Wnx8YSE9PW5BKXtpZihfPT09RiYmQUE9PT1GfHwoQS5ibGVuZEVxdWF0aW9uKEEuRlVOQ19BREQpLF89RixBQT1GKSxhKXN3aXRjaChlKXtjYXNlIEk6QS5ibGVuZEZ1bmNTZXBhcmF0ZShBLk9ORSxBLk9ORV9NSU5VU19TUkNfQUxQSEEsQS5PTkUsQS5PTkVfTUlOVVNfU1JDX0FMUEhBKTticmVhaztjYXNlIE06QS5ibGVuZEZ1bmMoQS5PTkUsQS5PTkUpO2JyZWFrO2Nhc2UgZDpBLmJsZW5kRnVuY1NlcGFyYXRlKEEuWkVSTyxBLk9ORV9NSU5VU19TUkNfQ09MT1IsQS5aRVJPLEEuT05FKTticmVhaztjYXNlIHA6QS5ibGVuZEZ1bmNTZXBhcmF0ZShBLlpFUk8sQS5TUkNfQ09MT1IsQS5aRVJPLEEuU1JDX0FMUEhBKTticmVhaztkZWZhdWx0OmNvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMU3RhdGU6IEludmFsaWQgYmxlbmRpbmc6ICIsZSl9ZWxzZSBzd2l0Y2goZSl7Y2FzZSBJOkEuYmxlbmRGdW5jU2VwYXJhdGUoQS5TUkNfQUxQSEEsQS5PTkVfTUlOVVNfU1JDX0FMUEhBLEEuT05FLEEuT05FX01JTlVTX1NSQ19BTFBIQSk7YnJlYWs7Y2FzZSBNOkEuYmxlbmRGdW5jKEEuU1JDX0FMUEhBLEEuT05FKTticmVhaztjYXNlIGQ6QS5ibGVuZEZ1bmNTZXBhcmF0ZShBLlpFUk8sQS5PTkVfTUlOVVNfU1JDX0NPTE9SLEEuWkVSTyxBLk9ORSk7YnJlYWs7Y2FzZSBwOkEuYmxlbmRGdW5jKEEuWkVSTyxBLlNSQ19DT0xPUik7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFN0YXRlOiBJbnZhbGlkIGJsZW5kaW5nOiAiLGUpfXE9bnVsbCwkPW51bGwsZUE9bnVsbCx0QT1udWxsLFo9ZSxuQT1hfX1lbHNlITA9PT1YJiYocEEoQS5CTEVORCksWD0hMSl9ZnVuY3Rpb24gWUEoZSl7aUEhPT1lJiYoZT9BLmZyb250RmFjZShBLkNXKTpBLmZyb250RmFjZShBLkNDVyksaUE9ZSl9ZnVuY3Rpb24gZkEoZSl7ZSE9PW8/KGRBKEEuQ1VMTF9GQUNFKSxlIT09ckEmJihlPT09cz9BLmN1bGxGYWNlKEEuQkFDSyk6ZT09PWE/QS5jdWxsRmFjZShBLkZST05UKTpBLmN1bGxGYWNlKEEuRlJPTlRfQU5EX0JBQ0spKSk6cEEoQS5DVUxMX0ZBQ0UpLHJBPWV9ZnVuY3Rpb24gTkEoZSx0LG4pe2U/KGRBKEEuUE9MWUdPTl9PRkZTRVRfRklMTCksc0E9PT10JiZhQT09PW58fChBLnBvbHlnb25PZmZzZXQodCxuKSxzQT10LGFBPW4pKTpwQShBLlBPTFlHT05fT0ZGU0VUX0ZJTEwpfXJldHVybntidWZmZXJzOntjb2xvcjppLGRlcHRoOnIsc3RlbmNpbDpCfSxlbmFibGU6ZEEsZGlzYWJsZTpwQSxiaW5kRnJhbWVidWZmZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gUVtlXSE9PXQmJihBLmJpbmRGcmFtZWJ1ZmZlcihlLHQpLFFbZV09dCxuJiYoZT09PUEuRFJBV19GUkFNRUJVRkZFUiYmKFFbQS5GUkFNRUJVRkZFUl09dCksZT09PUEuRlJBTUVCVUZGRVImJihRW0EuRFJBV19GUkFNRUJVRkZFUl09dCkpLCEwKX0sZHJhd0J1ZmZlcnM6ZnVuY3Rpb24obixpKXtsZXQgcj13LG89ITE7aWYobilpZihyPXUuZ2V0KGkpLHZvaWQgMD09PXImJihyPVtdLHUuc2V0KGkscikpLG4uaXNXZWJHTE11bHRpcGxlUmVuZGVyVGFyZ2V0cyl7Y29uc3QgZT1uLnRleHR1cmU7aWYoci5sZW5ndGghPT1lLmxlbmd0aHx8clswXSE9PUEuQ09MT1JfQVRUQUNITUVOVDApe2ZvcihsZXQgdD0wLG49ZS5sZW5ndGg7dDxuO3QrKylyW3RdPUEuQ09MT1JfQVRUQUNITUVOVDArdDtyLmxlbmd0aD1lLmxlbmd0aCxvPSEwfX1lbHNlIHJbMF0hPT1BLkNPTE9SX0FUVEFDSE1FTlQwJiYoclswXT1BLkNPTE9SX0FUVEFDSE1FTlQwLG89ITApO2Vsc2UgclswXSE9PUEuQkFDSyYmKHJbMF09QS5CQUNLLG89ITApO28mJih0LmlzV2ViR0wyP0EuZHJhd0J1ZmZlcnMocik6ZS5nZXQoIldFQkdMX2RyYXdfYnVmZmVycyIpLmRyYXdCdWZmZXJzV0VCR0wocikpfSx1c2VQcm9ncmFtOmZ1bmN0aW9uKGUpe3JldHVybiBLIT09ZSYmKEEudXNlUHJvZ3JhbShlKSxLPWUsITApfSxzZXRCbGVuZGluZzpEQSxzZXRNYXRlcmlhbDpmdW5jdGlvbihlLHQpe2Uuc2lkZT09PWg/cEEoQS5DVUxMX0ZBQ0UpOmRBKEEuQ1VMTF9GQUNFKTtsZXQgbj1lLnNpZGU9PT1sO3QmJihuPSFuKSxZQShuKSxlLmJsZW5kaW5nPT09SSYmITE9PT1lLnRyYW5zcGFyZW50P0RBKEMpOkRBKGUuYmxlbmRpbmcsZS5ibGVuZEVxdWF0aW9uLGUuYmxlbmRTcmMsZS5ibGVuZERzdCxlLmJsZW5kRXF1YXRpb25BbHBoYSxlLmJsZW5kU3JjQWxwaGEsZS5ibGVuZERzdEFscGhhLGUucHJlbXVsdGlwbGllZEFscGhhKSxyLnNldEZ1bmMoZS5kZXB0aEZ1bmMpLHIuc2V0VGVzdChlLmRlcHRoVGVzdCksci5zZXRNYXNrKGUuZGVwdGhXcml0ZSksaS5zZXRNYXNrKGUuY29sb3JXcml0ZSk7Y29uc3Qgbz1lLnN0ZW5jaWxXcml0ZTtCLnNldFRlc3QobyksbyYmKEIuc2V0TWFzayhlLnN0ZW5jaWxXcml0ZU1hc2spLEIuc2V0RnVuYyhlLnN0ZW5jaWxGdW5jLGUuc3RlbmNpbFJlZixlLnN0ZW5jaWxGdW5jTWFzayksQi5zZXRPcChlLnN0ZW5jaWxGYWlsLGUuc3RlbmNpbFpGYWlsLGUuc3RlbmNpbFpQYXNzKSksTkEoZS5wb2x5Z29uT2Zmc2V0LGUucG9seWdvbk9mZnNldEZhY3RvcixlLnBvbHlnb25PZmZzZXRVbml0cyksITA9PT1lLmFscGhhVG9Db3ZlcmFnZT9kQShBLlNBTVBMRV9BTFBIQV9UT19DT1ZFUkFHRSk6cEEoQS5TQU1QTEVfQUxQSEFfVE9fQ09WRVJBR0UpfSxzZXRGbGlwU2lkZWQ6WUEsc2V0Q3VsbEZhY2U6ZkEsc2V0TGluZVdpZHRoOmZ1bmN0aW9uKGUpe2UhPT1vQSYmKGNBJiZBLmxpbmVXaWR0aChlKSxvQT1lKX0sc2V0UG9seWdvbk9mZnNldDpOQSxzZXRTY2lzc29yVGVzdDpmdW5jdGlvbihlKXtlP2RBKEEuU0NJU1NPUl9URVNUKTpwQShBLlNDSVNTT1JfVEVTVCl9LGFjdGl2ZVRleHR1cmU6ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9QS5URVhUVVJFMCtCQS0xKSxRQSE9PWUmJihBLmFjdGl2ZVRleHR1cmUoZSksUUE9ZSl9LGJpbmRUZXh0dXJlOmZ1bmN0aW9uKGUsdCxuKXt2b2lkIDA9PT1uJiYobj1udWxsPT09UUE/QS5URVhUVVJFMCtCQS0xOlFBKTtsZXQgaT11QVtuXTt2b2lkIDA9PT1pJiYoaT17dHlwZTp2b2lkIDAsdGV4dHVyZTp2b2lkIDB9LHVBW25dPWkpLGkudHlwZT09PWUmJmkudGV4dHVyZT09PXR8fChRQSE9PW4mJihBLmFjdGl2ZVRleHR1cmUobiksUUE9biksQS5iaW5kVGV4dHVyZShlLHR8fE1BW2VdKSxpLnR5cGU9ZSxpLnRleHR1cmU9dCl9LHVuYmluZFRleHR1cmU6ZnVuY3Rpb24oKXtjb25zdCBlPXVBW1FBXTt2b2lkIDAhPT1lJiZ2b2lkIDAhPT1lLnR5cGUmJihBLmJpbmRUZXh0dXJlKGUudHlwZSxudWxsKSxlLnR5cGU9dm9pZCAwLGUudGV4dHVyZT12b2lkIDApfSxjb21wcmVzc2VkVGV4SW1hZ2UyRDpmdW5jdGlvbigpe3RyeXtBLmNvbXByZXNzZWRUZXhJbWFnZTJELmFwcGx5KEEsYXJndW1lbnRzKX1jYXRjaChBKXtjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFN0YXRlOiIsQSl9fSxjb21wcmVzc2VkVGV4SW1hZ2UzRDpmdW5jdGlvbigpe3RyeXtBLmNvbXByZXNzZWRUZXhJbWFnZTNELmFwcGx5KEEsYXJndW1lbnRzKX1jYXRjaChBKXtjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFN0YXRlOiIsQSl9fSx0ZXhJbWFnZTJEOmZ1bmN0aW9uKCl7dHJ5e0EudGV4SW1hZ2UyRC5hcHBseShBLGFyZ3VtZW50cyl9Y2F0Y2goQSl7Y29uc29sZS5lcnJvcigiVEhSRUUuV2ViR0xTdGF0ZToiLEEpfX0sdGV4SW1hZ2UzRDpmdW5jdGlvbigpe3RyeXtBLnRleEltYWdlM0QuYXBwbHkoQSxhcmd1bWVudHMpfWNhdGNoKEEpe2NvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMU3RhdGU6IixBKX19LHVwZGF0ZVVCT01hcHBpbmc6ZnVuY3Rpb24oZSx0KXtsZXQgbj1nLmdldCh0KTt2b2lkIDA9PT1uJiYobj1uZXcgV2Vha01hcCxnLnNldCh0LG4pKTtsZXQgaT1uLmdldChlKTt2b2lkIDA9PT1pJiYoaT1BLmdldFVuaWZvcm1CbG9ja0luZGV4KHQsZS5uYW1lKSxuLnNldChlLGkpKX0sdW5pZm9ybUJsb2NrQmluZGluZzpmdW5jdGlvbihlLHQpe2NvbnN0IG49Zy5nZXQodCkuZ2V0KGUpO2MuZ2V0KHQpIT09biYmKEEudW5pZm9ybUJsb2NrQmluZGluZyh0LG4sZS5fX2JpbmRpbmdQb2ludEluZGV4KSxjLnNldCh0LG4pKX0sdGV4U3RvcmFnZTJEOmZ1bmN0aW9uKCl7dHJ5e0EudGV4U3RvcmFnZTJELmFwcGx5KEEsYXJndW1lbnRzKX1jYXRjaChBKXtjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFN0YXRlOiIsQSl9fSx0ZXhTdG9yYWdlM0Q6ZnVuY3Rpb24oKXt0cnl7QS50ZXhTdG9yYWdlM0QuYXBwbHkoQSxhcmd1bWVudHMpfWNhdGNoKEEpe2NvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMU3RhdGU6IixBKX19LHRleFN1YkltYWdlMkQ6ZnVuY3Rpb24oKXt0cnl7QS50ZXhTdWJJbWFnZTJELmFwcGx5KEEsYXJndW1lbnRzKX1jYXRjaChBKXtjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFN0YXRlOiIsQSl9fSx0ZXhTdWJJbWFnZTNEOmZ1bmN0aW9uKCl7dHJ5e0EudGV4U3ViSW1hZ2UzRC5hcHBseShBLGFyZ3VtZW50cyl9Y2F0Y2goQSl7Y29uc29sZS5lcnJvcigiVEhSRUUuV2ViR0xTdGF0ZToiLEEpfX0sY29tcHJlc3NlZFRleFN1YkltYWdlMkQ6ZnVuY3Rpb24oKXt0cnl7QS5jb21wcmVzc2VkVGV4U3ViSW1hZ2UyRC5hcHBseShBLGFyZ3VtZW50cyl9Y2F0Y2goQSl7Y29uc29sZS5lcnJvcigiVEhSRUUuV2ViR0xTdGF0ZToiLEEpfX0sY29tcHJlc3NlZFRleFN1YkltYWdlM0Q6ZnVuY3Rpb24oKXt0cnl7QS5jb21wcmVzc2VkVGV4U3ViSW1hZ2UzRC5hcHBseShBLGFyZ3VtZW50cyl9Y2F0Y2goQSl7Y29uc29sZS5lcnJvcigiVEhSRUUuV2ViR0xTdGF0ZToiLEEpfX0sc2Npc3NvcjpmdW5jdGlvbihlKXshMT09PXdBLmVxdWFscyhlKSYmKEEuc2Npc3NvcihlLngsZS55LGUueixlLncpLHdBLmNvcHkoZSkpfSx2aWV3cG9ydDpmdW5jdGlvbihlKXshMT09PUNBLmVxdWFscyhlKSYmKEEudmlld3BvcnQoZS54LGUueSxlLnosZS53KSxDQS5jb3B5KGUpKX0scmVzZXQ6ZnVuY3Rpb24oKXtBLmRpc2FibGUoQS5CTEVORCksQS5kaXNhYmxlKEEuQ1VMTF9GQUNFKSxBLmRpc2FibGUoQS5ERVBUSF9URVNUKSxBLmRpc2FibGUoQS5QT0xZR09OX09GRlNFVF9GSUxMKSxBLmRpc2FibGUoQS5TQ0lTU09SX1RFU1QpLEEuZGlzYWJsZShBLlNURU5DSUxfVEVTVCksQS5kaXNhYmxlKEEuU0FNUExFX0FMUEhBX1RPX0NPVkVSQUdFKSxBLmJsZW5kRXF1YXRpb24oQS5GVU5DX0FERCksQS5ibGVuZEZ1bmMoQS5PTkUsQS5aRVJPKSxBLmJsZW5kRnVuY1NlcGFyYXRlKEEuT05FLEEuWkVSTyxBLk9ORSxBLlpFUk8pLEEuY29sb3JNYXNrKCEwLCEwLCEwLCEwKSxBLmNsZWFyQ29sb3IoMCwwLDAsMCksQS5kZXB0aE1hc2soITApLEEuZGVwdGhGdW5jKEEuTEVTUyksQS5jbGVhckRlcHRoKDEpLEEuc3RlbmNpbE1hc2soNDI5NDk2NzI5NSksQS5zdGVuY2lsRnVuYyhBLkFMV0FZUywwLDQyOTQ5NjcyOTUpLEEuc3RlbmNpbE9wKEEuS0VFUCxBLktFRVAsQS5LRUVQKSxBLmNsZWFyU3RlbmNpbCgwKSxBLmN1bGxGYWNlKEEuQkFDSyksQS5mcm9udEZhY2UoQS5DQ1cpLEEucG9seWdvbk9mZnNldCgwLDApLEEuYWN0aXZlVGV4dHVyZShBLlRFWFRVUkUwKSxBLmJpbmRGcmFtZWJ1ZmZlcihBLkZSQU1FQlVGRkVSLG51bGwpLCEwPT09biYmKEEuYmluZEZyYW1lYnVmZmVyKEEuRFJBV19GUkFNRUJVRkZFUixudWxsKSxBLmJpbmRGcmFtZWJ1ZmZlcihBLlJFQURfRlJBTUVCVUZGRVIsbnVsbCkpLEEudXNlUHJvZ3JhbShudWxsKSxBLmxpbmVXaWR0aCgxKSxBLnNjaXNzb3IoMCwwLEEuY2FudmFzLndpZHRoLEEuY2FudmFzLmhlaWdodCksQS52aWV3cG9ydCgwLDAsQS5jYW52YXMud2lkdGgsQS5jYW52YXMuaGVpZ2h0KSxFPXt9LFFBPW51bGwsdUE9e30sUT17fSx1PW5ldyBXZWFrTWFwLHc9W10sSz1udWxsLFg9ITEsWj1udWxsLF89bnVsbCxxPW51bGwsJD1udWxsLEFBPW51bGwsZUE9bnVsbCx0QT1udWxsLG5BPSExLGlBPW51bGwsckE9bnVsbCxvQT1udWxsLHNBPW51bGwsYUE9bnVsbCx3QS5zZXQoMCwwLEEuY2FudmFzLndpZHRoLEEuY2FudmFzLmhlaWdodCksQ0Euc2V0KDAsMCxBLmNhbnZhcy53aWR0aCxBLmNhbnZhcy5oZWlnaHQpLGkucmVzZXQoKSxyLnJlc2V0KCksQi5yZXNldCgpfX19ZnVuY3Rpb24gTWEoQSxlLHQsbixpLHIsbyl7Y29uc3Qgcz1pLmlzV2ViR0wyLGE9aS5tYXhUZXh0dXJlcyxCPWkubWF4Q3ViZW1hcFNpemUsYz1pLm1heFRleHR1cmVTaXplLGc9aS5tYXhTYW1wbGVzLEU9ZS5oYXMoIldFQkdMX211bHRpc2FtcGxlZF9yZW5kZXJfdG9fdGV4dHVyZSIpP2UuZ2V0KCJXRUJHTF9tdWx0aXNhbXBsZWRfcmVuZGVyX3RvX3RleHR1cmUiKTpudWxsLFE9InVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJi9PY3VsdXNCcm93c2VyL2cudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSx1PW5ldyBXZWFrTWFwO2xldCBsO2NvbnN0IGg9bmV3IFdlYWtNYXA7bGV0IHc9ITE7dHJ5e3c9InVuZGVmaW5lZCIhPXR5cGVvZiBPZmZzY3JlZW5DYW52YXMmJm51bGwhPT1uZXcgT2Zmc2NyZWVuQ2FudmFzKDEsMSkuZ2V0Q29udGV4dCgiMmQiKX1jYXRjaChBKXt9ZnVuY3Rpb24gQyhBLGUpe3JldHVybiB3P25ldyBPZmZzY3JlZW5DYW52YXMoQSxlKTpYdCgiY2FudmFzIil9ZnVuY3Rpb24gSShBLGUsdCxuKXtsZXQgaT0xO2lmKChBLndpZHRoPm58fEEuaGVpZ2h0Pm4pJiYoaT1uL01hdGgubWF4KEEud2lkdGgsQS5oZWlnaHQpKSxpPDF8fCEwPT09ZSl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBIVE1MSW1hZ2VFbGVtZW50JiZBIGluc3RhbmNlb2YgSFRNTEltYWdlRWxlbWVudHx8InVuZGVmaW5lZCIhPXR5cGVvZiBIVE1MQ2FudmFzRWxlbWVudCYmQSBpbnN0YW5jZW9mIEhUTUxDYW52YXNFbGVtZW50fHwidW5kZWZpbmVkIiE9dHlwZW9mIEltYWdlQml0bWFwJiZBIGluc3RhbmNlb2YgSW1hZ2VCaXRtYXApe2NvbnN0IG49ZT9rdDpNYXRoLmZsb29yLHI9bihpKkEud2lkdGgpLG89bihpKkEuaGVpZ2h0KTt2b2lkIDA9PT1sJiYobD1DKHIsbykpO2NvbnN0IHM9dD9DKHIsbyk6bDtzLndpZHRoPXIscy5oZWlnaHQ9bztyZXR1cm4gcy5nZXRDb250ZXh0KCIyZCIpLmRyYXdJbWFnZShBLDAsMCxyLG8pLGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogVGV4dHVyZSBoYXMgYmVlbiByZXNpemVkIGZyb20gKCIrQS53aWR0aCsieCIrQS5oZWlnaHQrIikgdG8gKCIrcisieCIrbysiKS4iKSxzfXJldHVybiJkYXRhImluIEEmJmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogSW1hZ2UgaW4gRGF0YVRleHR1cmUgaXMgdG9vIGJpZyAoIitBLndpZHRoKyJ4IitBLmhlaWdodCsiKS4iKSxBfXJldHVybiBBfWZ1bmN0aW9uIE0oQSl7cmV0dXJuIEh0KEEud2lkdGgpJiZIdChBLmhlaWdodCl9ZnVuY3Rpb24gZChBLGUpe3JldHVybiBBLmdlbmVyYXRlTWlwbWFwcyYmZSYmQS5taW5GaWx0ZXIhPT1FQSYmQS5taW5GaWx0ZXIhPT13QX1mdW5jdGlvbiBwKGUpe0EuZ2VuZXJhdGVNaXBtYXAoZSl9ZnVuY3Rpb24gbSh0LG4saSxyKXtsZXQgbz1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XSYmYXJndW1lbnRzWzRdO2lmKCExPT09cylyZXR1cm4gbjtpZihudWxsIT09dCl7aWYodm9pZCAwIT09QVt0XSlyZXR1cm4gQVt0XTtjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUmVuZGVyZXI6IEF0dGVtcHQgdG8gdXNlIG5vbi1leGlzdGluZyBXZWJHTCBpbnRlcm5hbCBmb3JtYXQgJyIrdCsiJyIpfWxldCBhPW47cmV0dXJuIG49PT1BLlJFRCYmKGk9PT1BLkZMT0FUJiYoYT1BLlIzMkYpLGk9PT1BLkhBTEZfRkxPQVQmJihhPUEuUjE2RiksaT09PUEuVU5TSUdORURfQllURSYmKGE9QS5SOCkpLG49PT1BLlJHJiYoaT09PUEuRkxPQVQmJihhPUEuUkczMkYpLGk9PT1BLkhBTEZfRkxPQVQmJihhPUEuUkcxNkYpLGk9PT1BLlVOU0lHTkVEX0JZVEUmJihhPUEuUkc4KSksbj09PUEuUkdCQSYmKGk9PT1BLkZMT0FUJiYoYT1BLlJHQkEzMkYpLGk9PT1BLkhBTEZfRkxPQVQmJihhPUEuUkdCQTE2RiksaT09PUEuVU5TSUdORURfQllURSYmKGE9cj09PUplJiYhMT09PW8/QS5TUkdCOF9BTFBIQTg6QS5SR0JBOCksaT09PUEuVU5TSUdORURfU0hPUlRfNF80XzRfNCYmKGE9QS5SR0JBNCksaT09PUEuVU5TSUdORURfU0hPUlRfNV81XzVfMSYmKGE9QS5SR0I1X0ExKSksYSE9PUEuUjE2RiYmYSE9PUEuUjMyRiYmYSE9PUEuUkcxNkYmJmEhPT1BLlJHMzJGJiZhIT09QS5SR0JBMTZGJiZhIT09QS5SR0JBMzJGfHxlLmdldCgiRVhUX2NvbG9yX2J1ZmZlcl9mbG9hdCIpLGF9ZnVuY3Rpb24gRihBLGUsdCl7cmV0dXJuITA9PT1kKEEsdCl8fEEuaXNGcmFtZWJ1ZmZlclRleHR1cmUmJkEubWluRmlsdGVyIT09RUEmJkEubWluRmlsdGVyIT09d0E/TWF0aC5sb2cyKE1hdGgubWF4KGUud2lkdGgsZS5oZWlnaHQpKSsxOnZvaWQgMCE9PUEubWlwbWFwcyYmQS5taXBtYXBzLmxlbmd0aD4wP0EubWlwbWFwcy5sZW5ndGg6QS5pc0NvbXByZXNzZWRUZXh0dXJlJiZBcnJheS5pc0FycmF5KEEuaW1hZ2UpP2UubWlwbWFwcy5sZW5ndGg6MX1mdW5jdGlvbiBEKGUpe3JldHVybiBlPT09RUF8fGU9PT1RQXx8ZT09PWxBP0EuTkVBUkVTVDpBLkxJTkVBUn1mdW5jdGlvbiBZKEEpe2NvbnN0IGU9QS50YXJnZXQ7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJkaXNwb3NlIixZKSxmdW5jdGlvbihBKXtjb25zdCBlPW4uZ2V0KEEpO2lmKHZvaWQgMD09PWUuX193ZWJnbEluaXQpcmV0dXJuO2NvbnN0IHQ9QS5zb3VyY2UsaT1oLmdldCh0KTtpZihpKXtjb25zdCBuPWlbZS5fX2NhY2hlS2V5XTtuLnVzZWRUaW1lcy0tLDA9PT1uLnVzZWRUaW1lcyYmTihBKSwwPT09T2JqZWN0LmtleXMoaSkubGVuZ3RoJiZoLmRlbGV0ZSh0KX1uLnJlbW92ZShBKX0oZSksZS5pc1ZpZGVvVGV4dHVyZSYmdS5kZWxldGUoZSl9ZnVuY3Rpb24gZihlKXtjb25zdCB0PWUudGFyZ2V0O3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsZiksZnVuY3Rpb24oZSl7Y29uc3QgdD1lLnRleHR1cmUsaT1uLmdldChlKSxyPW4uZ2V0KHQpO3ZvaWQgMCE9PXIuX193ZWJnbFRleHR1cmUmJihBLmRlbGV0ZVRleHR1cmUoci5fX3dlYmdsVGV4dHVyZSksby5tZW1vcnkudGV4dHVyZXMtLSk7ZS5kZXB0aFRleHR1cmUmJmUuZGVwdGhUZXh0dXJlLmRpc3Bvc2UoKTtpZihlLmlzV2ViR0xDdWJlUmVuZGVyVGFyZ2V0KWZvcihsZXQgZT0wO2U8NjtlKyspQS5kZWxldGVGcmFtZWJ1ZmZlcihpLl9fd2ViZ2xGcmFtZWJ1ZmZlcltlXSksaS5fX3dlYmdsRGVwdGhidWZmZXImJkEuZGVsZXRlUmVuZGVyYnVmZmVyKGkuX193ZWJnbERlcHRoYnVmZmVyW2VdKTtlbHNle2lmKEEuZGVsZXRlRnJhbWVidWZmZXIoaS5fX3dlYmdsRnJhbWVidWZmZXIpLGkuX193ZWJnbERlcHRoYnVmZmVyJiZBLmRlbGV0ZVJlbmRlcmJ1ZmZlcihpLl9fd2ViZ2xEZXB0aGJ1ZmZlciksaS5fX3dlYmdsTXVsdGlzYW1wbGVkRnJhbWVidWZmZXImJkEuZGVsZXRlRnJhbWVidWZmZXIoaS5fX3dlYmdsTXVsdGlzYW1wbGVkRnJhbWVidWZmZXIpLGkuX193ZWJnbENvbG9yUmVuZGVyYnVmZmVyKWZvcihsZXQgZT0wO2U8aS5fX3dlYmdsQ29sb3JSZW5kZXJidWZmZXIubGVuZ3RoO2UrKylpLl9fd2ViZ2xDb2xvclJlbmRlcmJ1ZmZlcltlXSYmQS5kZWxldGVSZW5kZXJidWZmZXIoaS5fX3dlYmdsQ29sb3JSZW5kZXJidWZmZXJbZV0pO2kuX193ZWJnbERlcHRoUmVuZGVyYnVmZmVyJiZBLmRlbGV0ZVJlbmRlcmJ1ZmZlcihpLl9fd2ViZ2xEZXB0aFJlbmRlcmJ1ZmZlcil9aWYoZS5pc1dlYkdMTXVsdGlwbGVSZW5kZXJUYXJnZXRzKWZvcihsZXQgZT0wLGk9dC5sZW5ndGg7ZTxpO2UrKyl7Y29uc3QgaT1uLmdldCh0W2VdKTtpLl9fd2ViZ2xUZXh0dXJlJiYoQS5kZWxldGVUZXh0dXJlKGkuX193ZWJnbFRleHR1cmUpLG8ubWVtb3J5LnRleHR1cmVzLS0pLG4ucmVtb3ZlKHRbZV0pfW4ucmVtb3ZlKHQpLG4ucmVtb3ZlKGUpfSh0KX1mdW5jdGlvbiBOKGUpe2NvbnN0IHQ9bi5nZXQoZSk7QS5kZWxldGVUZXh0dXJlKHQuX193ZWJnbFRleHR1cmUpO2NvbnN0IGk9ZS5zb3VyY2U7ZGVsZXRlIGguZ2V0KGkpW3QuX19jYWNoZUtleV0sby5tZW1vcnkudGV4dHVyZXMtLX1sZXQgVT0wO2Z1bmN0aW9uIHkoZSxpKXtjb25zdCByPW4uZ2V0KGUpO2lmKGUuaXNWaWRlb1RleHR1cmUmJmZ1bmN0aW9uKEEpe2NvbnN0IGU9by5yZW5kZXIuZnJhbWU7dS5nZXQoQSkhPT1lJiYodS5zZXQoQSxlKSxBLnVwZGF0ZSgpKX0oZSksITE9PT1lLmlzUmVuZGVyVGFyZ2V0VGV4dHVyZSYmZS52ZXJzaW9uPjAmJnIuX192ZXJzaW9uIT09ZS52ZXJzaW9uKXtjb25zdCBBPWUuaW1hZ2U7aWYobnVsbD09PUEpY29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBUZXh0dXJlIG1hcmtlZCBmb3IgdXBkYXRlIGJ1dCBubyBpbWFnZSBkYXRhIGZvdW5kLiIpO2Vsc2V7aWYoITEhPT1BLmNvbXBsZXRlKXJldHVybiB2b2lkIGIocixlLGkpO2NvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogVGV4dHVyZSBtYXJrZWQgZm9yIHVwZGF0ZSBidXQgaW1hZ2UgaXMgaW5jb21wbGV0ZSIpfX10LmJpbmRUZXh0dXJlKEEuVEVYVFVSRV8yRCxyLl9fd2ViZ2xUZXh0dXJlLEEuVEVYVFVSRTAraSl9Y29uc3QgVD17W0JBXTpBLlJFUEVBVCxbY0FdOkEuQ0xBTVBfVE9fRURHRSxbZ0FdOkEuTUlSUk9SRURfUkVQRUFUfSx4PXtbRUFdOkEuTkVBUkVTVCxbUUFdOkEuTkVBUkVTVF9NSVBNQVBfTkVBUkVTVCxbbEFdOkEuTkVBUkVTVF9NSVBNQVBfTElORUFSLFt3QV06QS5MSU5FQVIsW0NBXTpBLkxJTkVBUl9NSVBNQVBfTkVBUkVTVCxbTUFdOkEuTElORUFSX01JUE1BUF9MSU5FQVJ9LFI9e1tvdF06QS5ORVZFUixbUXRdOkEuQUxXQVlTLFtzdF06QS5MRVNTLFtCdF06QS5MRVFVQUwsW2F0XTpBLkVRVUFMLFtFdF06QS5HRVFVQUwsW2N0XTpBLkdSRUFURVIsW2d0XTpBLk5PVEVRVUFMfTtmdW5jdGlvbiBHKHQscixvKXtpZihvPyhBLnRleFBhcmFtZXRlcmkodCxBLlRFWFRVUkVfV1JBUF9TLFRbci53cmFwU10pLEEudGV4UGFyYW1ldGVyaSh0LEEuVEVYVFVSRV9XUkFQX1QsVFtyLndyYXBUXSksdCE9PUEuVEVYVFVSRV8zRCYmdCE9PUEuVEVYVFVSRV8yRF9BUlJBWXx8QS50ZXhQYXJhbWV0ZXJpKHQsQS5URVhUVVJFX1dSQVBfUixUW3Iud3JhcFJdKSxBLnRleFBhcmFtZXRlcmkodCxBLlRFWFRVUkVfTUFHX0ZJTFRFUix4W3IubWFnRmlsdGVyXSksQS50ZXhQYXJhbWV0ZXJpKHQsQS5URVhUVVJFX01JTl9GSUxURVIseFtyLm1pbkZpbHRlcl0pKTooQS50ZXhQYXJhbWV0ZXJpKHQsQS5URVhUVVJFX1dSQVBfUyxBLkNMQU1QX1RPX0VER0UpLEEudGV4UGFyYW1ldGVyaSh0LEEuVEVYVFVSRV9XUkFQX1QsQS5DTEFNUF9UT19FREdFKSx0IT09QS5URVhUVVJFXzNEJiZ0IT09QS5URVhUVVJFXzJEX0FSUkFZfHxBLnRleFBhcmFtZXRlcmkodCxBLlRFWFRVUkVfV1JBUF9SLEEuQ0xBTVBfVE9fRURHRSksci53cmFwUz09PWNBJiZyLndyYXBUPT09Y0F8fGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogVGV4dHVyZSBpcyBub3QgcG93ZXIgb2YgdHdvLiBUZXh0dXJlLndyYXBTIGFuZCBUZXh0dXJlLndyYXBUIHNob3VsZCBiZSBzZXQgdG8gVEhSRUUuQ2xhbXBUb0VkZ2VXcmFwcGluZy4iKSxBLnRleFBhcmFtZXRlcmkodCxBLlRFWFRVUkVfTUFHX0ZJTFRFUixEKHIubWFnRmlsdGVyKSksQS50ZXhQYXJhbWV0ZXJpKHQsQS5URVhUVVJFX01JTl9GSUxURVIsRChyLm1pbkZpbHRlcikpLHIubWluRmlsdGVyIT09RUEmJnIubWluRmlsdGVyIT09d0EmJmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogVGV4dHVyZSBpcyBub3QgcG93ZXIgb2YgdHdvLiBUZXh0dXJlLm1pbkZpbHRlciBzaG91bGQgYmUgc2V0IHRvIFRIUkVFLk5lYXJlc3RGaWx0ZXIgb3IgVEhSRUUuTGluZWFyRmlsdGVyLiIpKSxyLmNvbXBhcmVGdW5jdGlvbiYmKEEudGV4UGFyYW1ldGVyaSh0LEEuVEVYVFVSRV9DT01QQVJFX01PREUsQS5DT01QQVJFX1JFRl9UT19URVhUVVJFKSxBLnRleFBhcmFtZXRlcmkodCxBLlRFWFRVUkVfQ09NUEFSRV9GVU5DLFJbci5jb21wYXJlRnVuY3Rpb25dKSksITA9PT1lLmhhcygiRVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGljIikpe2NvbnN0IG89ZS5nZXQoIkVYVF90ZXh0dXJlX2ZpbHRlcl9hbmlzb3Ryb3BpYyIpO2lmKHIubWFnRmlsdGVyPT09RUEpcmV0dXJuO2lmKHIubWluRmlsdGVyIT09bEEmJnIubWluRmlsdGVyIT09TUEpcmV0dXJuO2lmKHIudHlwZT09PU5BJiYhMT09PWUuaGFzKCJPRVNfdGV4dHVyZV9mbG9hdF9saW5lYXIiKSlyZXR1cm47aWYoITE9PT1zJiZyLnR5cGU9PT1VQSYmITE9PT1lLmhhcygiT0VTX3RleHR1cmVfaGFsZl9mbG9hdF9saW5lYXIiKSlyZXR1cm47KHIuYW5pc290cm9weT4xfHxuLmdldChyKS5fX2N1cnJlbnRBbmlzb3Ryb3B5KSYmKEEudGV4UGFyYW1ldGVyZih0LG8uVEVYVFVSRV9NQVhfQU5JU09UUk9QWV9FWFQsTWF0aC5taW4oci5hbmlzb3Ryb3B5LGkuZ2V0TWF4QW5pc290cm9weSgpKSksbi5nZXQocikuX19jdXJyZW50QW5pc290cm9weT1yLmFuaXNvdHJvcHkpfX1mdW5jdGlvbiBTKGUsdCl7bGV0IG49ITE7dm9pZCAwPT09ZS5fX3dlYmdsSW5pdCYmKGUuX193ZWJnbEluaXQ9ITAsdC5hZGRFdmVudExpc3RlbmVyKCJkaXNwb3NlIixZKSk7Y29uc3QgaT10LnNvdXJjZTtsZXQgcj1oLmdldChpKTt2b2lkIDA9PT1yJiYocj17fSxoLnNldChpLHIpKTtjb25zdCBzPWZ1bmN0aW9uKEEpe2NvbnN0IGU9W107cmV0dXJuIGUucHVzaChBLndyYXBTKSxlLnB1c2goQS53cmFwVCksZS5wdXNoKEEud3JhcFJ8fDApLGUucHVzaChBLm1hZ0ZpbHRlciksZS5wdXNoKEEubWluRmlsdGVyKSxlLnB1c2goQS5hbmlzb3Ryb3B5KSxlLnB1c2goQS5pbnRlcm5hbEZvcm1hdCksZS5wdXNoKEEuZm9ybWF0KSxlLnB1c2goQS50eXBlKSxlLnB1c2goQS5nZW5lcmF0ZU1pcG1hcHMpLGUucHVzaChBLnByZW11bHRpcGx5QWxwaGEpLGUucHVzaChBLmZsaXBZKSxlLnB1c2goQS51bnBhY2tBbGlnbm1lbnQpLGUucHVzaChBLmNvbG9yU3BhY2UpLGUuam9pbigpfSh0KTtpZihzIT09ZS5fX2NhY2hlS2V5KXt2b2lkIDA9PT1yW3NdJiYocltzXT17dGV4dHVyZTpBLmNyZWF0ZVRleHR1cmUoKSx1c2VkVGltZXM6MH0sby5tZW1vcnkudGV4dHVyZXMrKyxuPSEwKSxyW3NdLnVzZWRUaW1lcysrO2NvbnN0IGk9cltlLl9fY2FjaGVLZXldO3ZvaWQgMCE9PWkmJihyW2UuX19jYWNoZUtleV0udXNlZFRpbWVzLS0sMD09PWkudXNlZFRpbWVzJiZOKHQpKSxlLl9fY2FjaGVLZXk9cyxlLl9fd2ViZ2xUZXh0dXJlPXJbc10udGV4dHVyZX1yZXR1cm4gbn1mdW5jdGlvbiBiKGUsaSxvKXtsZXQgYT1BLlRFWFRVUkVfMkQ7KGkuaXNEYXRhQXJyYXlUZXh0dXJlfHxpLmlzQ29tcHJlc3NlZEFycmF5VGV4dHVyZSkmJihhPUEuVEVYVFVSRV8yRF9BUlJBWSksaS5pc0RhdGEzRFRleHR1cmUmJihhPUEuVEVYVFVSRV8zRCk7Y29uc3QgQj1TKGUsaSksZz1pLnNvdXJjZTt0LmJpbmRUZXh0dXJlKGEsZS5fX3dlYmdsVGV4dHVyZSxBLlRFWFRVUkUwK28pO2NvbnN0IEU9bi5nZXQoZyk7aWYoZy52ZXJzaW9uIT09RS5fX3ZlcnNpb258fCEwPT09Qil7dC5hY3RpdmVUZXh0dXJlKEEuVEVYVFVSRTArbyksQS5waXhlbFN0b3JlaShBLlVOUEFDS19GTElQX1lfV0VCR0wsaS5mbGlwWSksQS5waXhlbFN0b3JlaShBLlVOUEFDS19QUkVNVUxUSVBMWV9BTFBIQV9XRUJHTCxpLnByZW11bHRpcGx5QWxwaGEpLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfQUxJR05NRU5ULGkudW5wYWNrQWxpZ25tZW50KSxBLnBpeGVsU3RvcmVpKEEuVU5QQUNLX0NPTE9SU1BBQ0VfQ09OVkVSU0lPTl9XRUJHTCxBLk5PTkUpO2NvbnN0IGU9ZnVuY3Rpb24oQSl7cmV0dXJuIXMmJihBLndyYXBTIT09Y0F8fEEud3JhcFQhPT1jQXx8QS5taW5GaWx0ZXIhPT1FQSYmQS5taW5GaWx0ZXIhPT13QSl9KGkpJiYhMT09PU0oaS5pbWFnZSk7bGV0IG49SShpLmltYWdlLGUsITEsYyk7bj16KGksbik7Y29uc3QgUT1NKG4pfHxzLHU9ci5jb252ZXJ0KGkuZm9ybWF0LGkuY29sb3JTcGFjZSk7bGV0IGwsaD1yLmNvbnZlcnQoaS50eXBlKSx3PW0oaS5pbnRlcm5hbEZvcm1hdCx1LGgsaS5jb2xvclNwYWNlKTtHKGEsaSxRKTtjb25zdCBDPWkubWlwbWFwcyxEPXMmJiEwIT09aS5pc1ZpZGVvVGV4dHVyZSxZPXZvaWQgMD09PUUuX192ZXJzaW9ufHwhMD09PUIsZj1GKGksbixRKTtpZihpLmlzRGVwdGhUZXh0dXJlKXc9QS5ERVBUSF9DT01QT05FTlQscz93PWkudHlwZT09PU5BP0EuREVQVEhfQ09NUE9ORU5UMzJGOmkudHlwZT09PWZBP0EuREVQVEhfQ09NUE9ORU5UMjQ6aS50eXBlPT09eEE/QS5ERVBUSDI0X1NURU5DSUw4OkEuREVQVEhfQ09NUE9ORU5UMTY6aS50eXBlPT09TkEmJmNvbnNvbGUuZXJyb3IoIldlYkdMUmVuZGVyZXI6IEZsb2F0aW5nIHBvaW50IGRlcHRoIHRleHR1cmUgcmVxdWlyZXMgV2ViR0wyLiIpLGkuZm9ybWF0PT09SEEmJnc9PT1BLkRFUFRIX0NPTVBPTkVOVCYmaS50eXBlIT09REEmJmkudHlwZSE9PWZBJiYoY29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBVc2UgVW5zaWduZWRTaG9ydFR5cGUgb3IgVW5zaWduZWRJbnRUeXBlIGZvciBEZXB0aEZvcm1hdCBEZXB0aFRleHR1cmUuIiksaS50eXBlPWZBLGg9ci5jb252ZXJ0KGkudHlwZSkpLGkuZm9ybWF0PT09dkEmJnc9PT1BLkRFUFRIX0NPTVBPTkVOVCYmKHc9QS5ERVBUSF9TVEVOQ0lMLGkudHlwZSE9PXhBJiYoY29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBVc2UgVW5zaWduZWRJbnQyNDhUeXBlIGZvciBEZXB0aFN0ZW5jaWxGb3JtYXQgRGVwdGhUZXh0dXJlLiIpLGkudHlwZT14QSxoPXIuY29udmVydChpLnR5cGUpKSksWSYmKEQ/dC50ZXhTdG9yYWdlMkQoQS5URVhUVVJFXzJELDEsdyxuLndpZHRoLG4uaGVpZ2h0KTp0LnRleEltYWdlMkQoQS5URVhUVVJFXzJELDAsdyxuLndpZHRoLG4uaGVpZ2h0LDAsdSxoLG51bGwpKTtlbHNlIGlmKGkuaXNEYXRhVGV4dHVyZSlpZihDLmxlbmd0aD4wJiZRKXtEJiZZJiZ0LnRleFN0b3JhZ2UyRChBLlRFWFRVUkVfMkQsZix3LENbMF0ud2lkdGgsQ1swXS5oZWlnaHQpO2ZvcihsZXQgZT0wLG49Qy5sZW5ndGg7ZTxuO2UrKylsPUNbZV0sRD90LnRleFN1YkltYWdlMkQoQS5URVhUVVJFXzJELGUsMCwwLGwud2lkdGgsbC5oZWlnaHQsdSxoLGwuZGF0YSk6dC50ZXhJbWFnZTJEKEEuVEVYVFVSRV8yRCxlLHcsbC53aWR0aCxsLmhlaWdodCwwLHUsaCxsLmRhdGEpO2kuZ2VuZXJhdGVNaXBtYXBzPSExfWVsc2UgRD8oWSYmdC50ZXhTdG9yYWdlMkQoQS5URVhUVVJFXzJELGYsdyxuLndpZHRoLG4uaGVpZ2h0KSx0LnRleFN1YkltYWdlMkQoQS5URVhUVVJFXzJELDAsMCwwLG4ud2lkdGgsbi5oZWlnaHQsdSxoLG4uZGF0YSkpOnQudGV4SW1hZ2UyRChBLlRFWFRVUkVfMkQsMCx3LG4ud2lkdGgsbi5oZWlnaHQsMCx1LGgsbi5kYXRhKTtlbHNlIGlmKGkuaXNDb21wcmVzc2VkVGV4dHVyZSlpZihpLmlzQ29tcHJlc3NlZEFycmF5VGV4dHVyZSl7RCYmWSYmdC50ZXhTdG9yYWdlM0QoQS5URVhUVVJFXzJEX0FSUkFZLGYsdyxDWzBdLndpZHRoLENbMF0uaGVpZ2h0LG4uZGVwdGgpO2ZvcihsZXQgZT0wLHI9Qy5sZW5ndGg7ZTxyO2UrKylsPUNbZV0saS5mb3JtYXQhPT1HQT9udWxsIT09dT9EP3QuY29tcHJlc3NlZFRleFN1YkltYWdlM0QoQS5URVhUVVJFXzJEX0FSUkFZLGUsMCwwLDAsbC53aWR0aCxsLmhlaWdodCxuLmRlcHRoLHUsbC5kYXRhLDAsMCk6dC5jb21wcmVzc2VkVGV4SW1hZ2UzRChBLlRFWFRVUkVfMkRfQVJSQVksZSx3LGwud2lkdGgsbC5oZWlnaHQsbi5kZXB0aCwwLGwuZGF0YSwwLDApOmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogQXR0ZW1wdCB0byBsb2FkIHVuc3VwcG9ydGVkIGNvbXByZXNzZWQgdGV4dHVyZSBmb3JtYXQgaW4gLnVwbG9hZFRleHR1cmUoKSIpOkQ/dC50ZXhTdWJJbWFnZTNEKEEuVEVYVFVSRV8yRF9BUlJBWSxlLDAsMCwwLGwud2lkdGgsbC5oZWlnaHQsbi5kZXB0aCx1LGgsbC5kYXRhKTp0LnRleEltYWdlM0QoQS5URVhUVVJFXzJEX0FSUkFZLGUsdyxsLndpZHRoLGwuaGVpZ2h0LG4uZGVwdGgsMCx1LGgsbC5kYXRhKX1lbHNle0QmJlkmJnQudGV4U3RvcmFnZTJEKEEuVEVYVFVSRV8yRCxmLHcsQ1swXS53aWR0aCxDWzBdLmhlaWdodCk7Zm9yKGxldCBlPTAsbj1DLmxlbmd0aDtlPG47ZSsrKWw9Q1tlXSxpLmZvcm1hdCE9PUdBP251bGwhPT11P0Q/dC5jb21wcmVzc2VkVGV4U3ViSW1hZ2UyRChBLlRFWFRVUkVfMkQsZSwwLDAsbC53aWR0aCxsLmhlaWdodCx1LGwuZGF0YSk6dC5jb21wcmVzc2VkVGV4SW1hZ2UyRChBLlRFWFRVUkVfMkQsZSx3LGwud2lkdGgsbC5oZWlnaHQsMCxsLmRhdGEpOmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogQXR0ZW1wdCB0byBsb2FkIHVuc3VwcG9ydGVkIGNvbXByZXNzZWQgdGV4dHVyZSBmb3JtYXQgaW4gLnVwbG9hZFRleHR1cmUoKSIpOkQ/dC50ZXhTdWJJbWFnZTJEKEEuVEVYVFVSRV8yRCxlLDAsMCxsLndpZHRoLGwuaGVpZ2h0LHUsaCxsLmRhdGEpOnQudGV4SW1hZ2UyRChBLlRFWFRVUkVfMkQsZSx3LGwud2lkdGgsbC5oZWlnaHQsMCx1LGgsbC5kYXRhKX1lbHNlIGlmKGkuaXNEYXRhQXJyYXlUZXh0dXJlKUQ/KFkmJnQudGV4U3RvcmFnZTNEKEEuVEVYVFVSRV8yRF9BUlJBWSxmLHcsbi53aWR0aCxuLmhlaWdodCxuLmRlcHRoKSx0LnRleFN1YkltYWdlM0QoQS5URVhUVVJFXzJEX0FSUkFZLDAsMCwwLDAsbi53aWR0aCxuLmhlaWdodCxuLmRlcHRoLHUsaCxuLmRhdGEpKTp0LnRleEltYWdlM0QoQS5URVhUVVJFXzJEX0FSUkFZLDAsdyxuLndpZHRoLG4uaGVpZ2h0LG4uZGVwdGgsMCx1LGgsbi5kYXRhKTtlbHNlIGlmKGkuaXNEYXRhM0RUZXh0dXJlKUQ/KFkmJnQudGV4U3RvcmFnZTNEKEEuVEVYVFVSRV8zRCxmLHcsbi53aWR0aCxuLmhlaWdodCxuLmRlcHRoKSx0LnRleFN1YkltYWdlM0QoQS5URVhUVVJFXzNELDAsMCwwLDAsbi53aWR0aCxuLmhlaWdodCxuLmRlcHRoLHUsaCxuLmRhdGEpKTp0LnRleEltYWdlM0QoQS5URVhUVVJFXzNELDAsdyxuLndpZHRoLG4uaGVpZ2h0LG4uZGVwdGgsMCx1LGgsbi5kYXRhKTtlbHNlIGlmKGkuaXNGcmFtZWJ1ZmZlclRleHR1cmUpe2lmKFkpaWYoRCl0LnRleFN0b3JhZ2UyRChBLlRFWFRVUkVfMkQsZix3LG4ud2lkdGgsbi5oZWlnaHQpO2Vsc2V7bGV0IGU9bi53aWR0aCxpPW4uaGVpZ2h0O2ZvcihsZXQgbj0wO248ZjtuKyspdC50ZXhJbWFnZTJEKEEuVEVYVFVSRV8yRCxuLHcsZSxpLDAsdSxoLG51bGwpLGU+Pj0xLGk+Pj0xfX1lbHNlIGlmKEMubGVuZ3RoPjAmJlEpe0QmJlkmJnQudGV4U3RvcmFnZTJEKEEuVEVYVFVSRV8yRCxmLHcsQ1swXS53aWR0aCxDWzBdLmhlaWdodCk7Zm9yKGxldCBlPTAsbj1DLmxlbmd0aDtlPG47ZSsrKWw9Q1tlXSxEP3QudGV4U3ViSW1hZ2UyRChBLlRFWFRVUkVfMkQsZSwwLDAsdSxoLGwpOnQudGV4SW1hZ2UyRChBLlRFWFRVUkVfMkQsZSx3LHUsaCxsKTtpLmdlbmVyYXRlTWlwbWFwcz0hMX1lbHNlIEQ/KFkmJnQudGV4U3RvcmFnZTJEKEEuVEVYVFVSRV8yRCxmLHcsbi53aWR0aCxuLmhlaWdodCksdC50ZXhTdWJJbWFnZTJEKEEuVEVYVFVSRV8yRCwwLDAsMCx1LGgsbikpOnQudGV4SW1hZ2UyRChBLlRFWFRVUkVfMkQsMCx3LHUsaCxuKTtkKGksUSkmJnAoYSksRS5fX3ZlcnNpb249Zy52ZXJzaW9uLGkub25VcGRhdGUmJmkub25VcGRhdGUoaSl9ZS5fX3ZlcnNpb249aS52ZXJzaW9ufWZ1bmN0aW9uIEgoZSxpLG8scyxhKXtjb25zdCBCPXIuY29udmVydChvLmZvcm1hdCxvLmNvbG9yU3BhY2UpLGM9ci5jb252ZXJ0KG8udHlwZSksZz1tKG8uaW50ZXJuYWxGb3JtYXQsQixjLG8uY29sb3JTcGFjZSk7bi5nZXQoaSkuX19oYXNFeHRlcm5hbFRleHR1cmVzfHwoYT09PUEuVEVYVFVSRV8zRHx8YT09PUEuVEVYVFVSRV8yRF9BUlJBWT90LnRleEltYWdlM0QoYSwwLGcsaS53aWR0aCxpLmhlaWdodCxpLmRlcHRoLDAsQixjLG51bGwpOnQudGV4SW1hZ2UyRChhLDAsZyxpLndpZHRoLGkuaGVpZ2h0LDAsQixjLG51bGwpKSx0LmJpbmRGcmFtZWJ1ZmZlcihBLkZSQU1FQlVGRkVSLGUpLEooaSk/RS5mcmFtZWJ1ZmZlclRleHR1cmUyRE11bHRpc2FtcGxlRVhUKEEuRlJBTUVCVUZGRVIscyxhLG4uZ2V0KG8pLl9fd2ViZ2xUZXh0dXJlLDAsaihpKSk6KGE9PT1BLlRFWFRVUkVfMkR8fGE+PUEuVEVYVFVSRV9DVUJFX01BUF9QT1NJVElWRV9YJiZhPD1BLlRFWFRVUkVfQ1VCRV9NQVBfTkVHQVRJVkVfWikmJkEuZnJhbWVidWZmZXJUZXh0dXJlMkQoQS5GUkFNRUJVRkZFUixzLGEsbi5nZXQobykuX193ZWJnbFRleHR1cmUsMCksdC5iaW5kRnJhbWVidWZmZXIoQS5GUkFNRUJVRkZFUixudWxsKX1mdW5jdGlvbiB2KGUsdCxuKXtpZihBLmJpbmRSZW5kZXJidWZmZXIoQS5SRU5ERVJCVUZGRVIsZSksdC5kZXB0aEJ1ZmZlciYmIXQuc3RlbmNpbEJ1ZmZlcil7bGV0IGk9QS5ERVBUSF9DT01QT05FTlQxNjtpZihufHxKKHQpKXtjb25zdCBlPXQuZGVwdGhUZXh0dXJlO2UmJmUuaXNEZXB0aFRleHR1cmUmJihlLnR5cGU9PT1OQT9pPUEuREVQVEhfQ09NUE9ORU5UMzJGOmUudHlwZT09PWZBJiYoaT1BLkRFUFRIX0NPTVBPTkVOVDI0KSk7Y29uc3Qgbj1qKHQpO0oodCk/RS5yZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGVFWFQoQS5SRU5ERVJCVUZGRVIsbixpLHQud2lkdGgsdC5oZWlnaHQpOkEucmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlKEEuUkVOREVSQlVGRkVSLG4saSx0LndpZHRoLHQuaGVpZ2h0KX1lbHNlIEEucmVuZGVyYnVmZmVyU3RvcmFnZShBLlJFTkRFUkJVRkZFUixpLHQud2lkdGgsdC5oZWlnaHQpO0EuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoQS5GUkFNRUJVRkZFUixBLkRFUFRIX0FUVEFDSE1FTlQsQS5SRU5ERVJCVUZGRVIsZSl9ZWxzZSBpZih0LmRlcHRoQnVmZmVyJiZ0LnN0ZW5jaWxCdWZmZXIpe2NvbnN0IGk9aih0KTtuJiYhMT09PUoodCk/QS5yZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUoQS5SRU5ERVJCVUZGRVIsaSxBLkRFUFRIMjRfU1RFTkNJTDgsdC53aWR0aCx0LmhlaWdodCk6Sih0KT9FLnJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZUVYVChBLlJFTkRFUkJVRkZFUixpLEEuREVQVEgyNF9TVEVOQ0lMOCx0LndpZHRoLHQuaGVpZ2h0KTpBLnJlbmRlcmJ1ZmZlclN0b3JhZ2UoQS5SRU5ERVJCVUZGRVIsQS5ERVBUSF9TVEVOQ0lMLHQud2lkdGgsdC5oZWlnaHQpLEEuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoQS5GUkFNRUJVRkZFUixBLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCxBLlJFTkRFUkJVRkZFUixlKX1lbHNle2NvbnN0IGU9ITA9PT10LmlzV2ViR0xNdWx0aXBsZVJlbmRlclRhcmdldHM/dC50ZXh0dXJlOlt0LnRleHR1cmVdO2ZvcihsZXQgaT0wO2k8ZS5sZW5ndGg7aSsrKXtjb25zdCBvPWVbaV0scz1yLmNvbnZlcnQoby5mb3JtYXQsby5jb2xvclNwYWNlKSxhPXIuY29udmVydChvLnR5cGUpLEI9bShvLmludGVybmFsRm9ybWF0LHMsYSxvLmNvbG9yU3BhY2UpLGM9aih0KTtuJiYhMT09PUoodCk/QS5yZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUoQS5SRU5ERVJCVUZGRVIsYyxCLHQud2lkdGgsdC5oZWlnaHQpOkoodCk/RS5yZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGVFWFQoQS5SRU5ERVJCVUZGRVIsYyxCLHQud2lkdGgsdC5oZWlnaHQpOkEucmVuZGVyYnVmZmVyU3RvcmFnZShBLlJFTkRFUkJVRkZFUixCLHQud2lkdGgsdC5oZWlnaHQpfX1BLmJpbmRSZW5kZXJidWZmZXIoQS5SRU5ERVJCVUZGRVIsbnVsbCl9ZnVuY3Rpb24gayhlKXtjb25zdCBpPW4uZ2V0KGUpLHI9ITA9PT1lLmlzV2ViR0xDdWJlUmVuZGVyVGFyZ2V0O2lmKGUuZGVwdGhUZXh0dXJlJiYhaS5fX2F1dG9BbGxvY2F0ZURlcHRoQnVmZmVyKXtpZihyKXRocm93IG5ldyBFcnJvcigidGFyZ2V0LmRlcHRoVGV4dHVyZSBub3Qgc3VwcG9ydGVkIGluIEN1YmUgcmVuZGVyIHRhcmdldHMiKTshZnVuY3Rpb24oZSxpKXtpZihpJiZpLmlzV2ViR0xDdWJlUmVuZGVyVGFyZ2V0KXRocm93IG5ldyBFcnJvcigiRGVwdGggVGV4dHVyZSB3aXRoIGN1YmUgcmVuZGVyIHRhcmdldHMgaXMgbm90IHN1cHBvcnRlZCIpO2lmKHQuYmluZEZyYW1lYnVmZmVyKEEuRlJBTUVCVUZGRVIsZSksIWkuZGVwdGhUZXh0dXJlfHwhaS5kZXB0aFRleHR1cmUuaXNEZXB0aFRleHR1cmUpdGhyb3cgbmV3IEVycm9yKCJyZW5kZXJUYXJnZXQuZGVwdGhUZXh0dXJlIG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgVEhSRUUuRGVwdGhUZXh0dXJlIik7bi5nZXQoaS5kZXB0aFRleHR1cmUpLl9fd2ViZ2xUZXh0dXJlJiZpLmRlcHRoVGV4dHVyZS5pbWFnZS53aWR0aD09PWkud2lkdGgmJmkuZGVwdGhUZXh0dXJlLmltYWdlLmhlaWdodD09PWkuaGVpZ2h0fHwoaS5kZXB0aFRleHR1cmUuaW1hZ2Uud2lkdGg9aS53aWR0aCxpLmRlcHRoVGV4dHVyZS5pbWFnZS5oZWlnaHQ9aS5oZWlnaHQsaS5kZXB0aFRleHR1cmUubmVlZHNVcGRhdGU9ITApLHkoaS5kZXB0aFRleHR1cmUsMCk7Y29uc3Qgcj1uLmdldChpLmRlcHRoVGV4dHVyZSkuX193ZWJnbFRleHR1cmUsbz1qKGkpO2lmKGkuZGVwdGhUZXh0dXJlLmZvcm1hdD09PUhBKUooaSk/RS5mcmFtZWJ1ZmZlclRleHR1cmUyRE11bHRpc2FtcGxlRVhUKEEuRlJBTUVCVUZGRVIsQS5ERVBUSF9BVFRBQ0hNRU5ULEEuVEVYVFVSRV8yRCxyLDAsbyk6QS5mcmFtZWJ1ZmZlclRleHR1cmUyRChBLkZSQU1FQlVGRkVSLEEuREVQVEhfQVRUQUNITUVOVCxBLlRFWFRVUkVfMkQsciwwKTtlbHNle2lmKGkuZGVwdGhUZXh0dXJlLmZvcm1hdCE9PXZBKXRocm93IG5ldyBFcnJvcigiVW5rbm93biBkZXB0aFRleHR1cmUgZm9ybWF0Iik7SihpKT9FLmZyYW1lYnVmZmVyVGV4dHVyZTJETXVsdGlzYW1wbGVFWFQoQS5GUkFNRUJVRkZFUixBLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCxBLlRFWFRVUkVfMkQsciwwLG8pOkEuZnJhbWVidWZmZXJUZXh0dXJlMkQoQS5GUkFNRUJVRkZFUixBLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVCxBLlRFWFRVUkVfMkQsciwwKX19KGkuX193ZWJnbEZyYW1lYnVmZmVyLGUpfWVsc2UgaWYocil7aS5fX3dlYmdsRGVwdGhidWZmZXI9W107Zm9yKGxldCBuPTA7bjw2O24rKyl0LmJpbmRGcmFtZWJ1ZmZlcihBLkZSQU1FQlVGRkVSLGkuX193ZWJnbEZyYW1lYnVmZmVyW25dKSxpLl9fd2ViZ2xEZXB0aGJ1ZmZlcltuXT1BLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpLHYoaS5fX3dlYmdsRGVwdGhidWZmZXJbbl0sZSwhMSl9ZWxzZSB0LmJpbmRGcmFtZWJ1ZmZlcihBLkZSQU1FQlVGRkVSLGkuX193ZWJnbEZyYW1lYnVmZmVyKSxpLl9fd2ViZ2xEZXB0aGJ1ZmZlcj1BLmNyZWF0ZVJlbmRlcmJ1ZmZlcigpLHYoaS5fX3dlYmdsRGVwdGhidWZmZXIsZSwhMSk7dC5iaW5kRnJhbWVidWZmZXIoQS5GUkFNRUJVRkZFUixudWxsKX1mdW5jdGlvbiBqKEEpe3JldHVybiBNYXRoLm1pbihnLEEuc2FtcGxlcyl9ZnVuY3Rpb24gSihBKXtjb25zdCB0PW4uZ2V0KEEpO3JldHVybiBzJiZBLnNhbXBsZXM+MCYmITA9PT1lLmhhcygiV0VCR0xfbXVsdGlzYW1wbGVkX3JlbmRlcl90b190ZXh0dXJlIikmJiExIT09dC5fX3VzZVJlbmRlclRvVGV4dHVyZX1mdW5jdGlvbiB6KEEsdCl7Y29uc3Qgbj1BLmNvbG9yU3BhY2UsaT1BLmZvcm1hdCxyPUEudHlwZTtyZXR1cm4hMD09PUEuaXNDb21wcmVzc2VkVGV4dHVyZXx8QS5mb3JtYXQ9PT1EdHx8biE9PXplJiZuIT09amUmJihuPT09SmU/ITE9PT1zPyEwPT09ZS5oYXMoIkVYVF9zUkdCIikmJmk9PT1HQT8oQS5mb3JtYXQ9RHQsQS5taW5GaWx0ZXI9d0EsQS5nZW5lcmF0ZU1pcG1hcHM9ITEpOnQ9c24uc1JHQlRvTGluZWFyKHQpOmk9PT1HQSYmcj09PXBBfHxjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMVGV4dHVyZXM6IHNSR0IgZW5jb2RlZCB0ZXh0dXJlcyBoYXZlIHRvIHVzZSBSR0JBRm9ybWF0IGFuZCBVbnNpZ25lZEJ5dGVUeXBlLiIpOmNvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMVGV4dHVyZXM6IFVuc3VwcG9ydGVkIHRleHR1cmUgY29sb3Igc3BhY2U6IixuKSksdH10aGlzLmFsbG9jYXRlVGV4dHVyZVVuaXQ9ZnVuY3Rpb24oKXtjb25zdCBBPVU7cmV0dXJuIEE+PWEmJmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xUZXh0dXJlczogVHJ5aW5nIHRvIHVzZSAiK0ErIiB0ZXh0dXJlIHVuaXRzIHdoaWxlIHRoaXMgR1BVIHN1cHBvcnRzIG9ubHkgIithKSxVKz0xLEF9LHRoaXMucmVzZXRUZXh0dXJlVW5pdHM9ZnVuY3Rpb24oKXtVPTB9LHRoaXMuc2V0VGV4dHVyZTJEPXksdGhpcy5zZXRUZXh0dXJlMkRBcnJheT1mdW5jdGlvbihlLGkpe2NvbnN0IHI9bi5nZXQoZSk7ZS52ZXJzaW9uPjAmJnIuX192ZXJzaW9uIT09ZS52ZXJzaW9uP2IocixlLGkpOnQuYmluZFRleHR1cmUoQS5URVhUVVJFXzJEX0FSUkFZLHIuX193ZWJnbFRleHR1cmUsQS5URVhUVVJFMCtpKX0sdGhpcy5zZXRUZXh0dXJlM0Q9ZnVuY3Rpb24oZSxpKXtjb25zdCByPW4uZ2V0KGUpO2UudmVyc2lvbj4wJiZyLl9fdmVyc2lvbiE9PWUudmVyc2lvbj9iKHIsZSxpKTp0LmJpbmRUZXh0dXJlKEEuVEVYVFVSRV8zRCxyLl9fd2ViZ2xUZXh0dXJlLEEuVEVYVFVSRTAraSl9LHRoaXMuc2V0VGV4dHVyZUN1YmU9ZnVuY3Rpb24oZSxpKXtjb25zdCBvPW4uZ2V0KGUpO2UudmVyc2lvbj4wJiZvLl9fdmVyc2lvbiE9PWUudmVyc2lvbj9mdW5jdGlvbihlLGksbyl7aWYoNiE9PWkuaW1hZ2UubGVuZ3RoKXJldHVybjtjb25zdCBhPVMoZSxpKSxjPWkuc291cmNlO3QuYmluZFRleHR1cmUoQS5URVhUVVJFX0NVQkVfTUFQLGUuX193ZWJnbFRleHR1cmUsQS5URVhUVVJFMCtvKTtjb25zdCBnPW4uZ2V0KGMpO2lmKGMudmVyc2lvbiE9PWcuX192ZXJzaW9ufHwhMD09PWEpe3QuYWN0aXZlVGV4dHVyZShBLlRFWFRVUkUwK28pLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfRkxJUF9ZX1dFQkdMLGkuZmxpcFkpLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfUFJFTVVMVElQTFlfQUxQSEFfV0VCR0wsaS5wcmVtdWx0aXBseUFscGhhKSxBLnBpeGVsU3RvcmVpKEEuVU5QQUNLX0FMSUdOTUVOVCxpLnVucGFja0FsaWdubWVudCksQS5waXhlbFN0b3JlaShBLlVOUEFDS19DT0xPUlNQQUNFX0NPTlZFUlNJT05fV0VCR0wsQS5OT05FKTtjb25zdCBlPWkuaXNDb21wcmVzc2VkVGV4dHVyZXx8aS5pbWFnZVswXS5pc0NvbXByZXNzZWRUZXh0dXJlLG49aS5pbWFnZVswXSYmaS5pbWFnZVswXS5pc0RhdGFUZXh0dXJlLEU9W107Zm9yKGxldCBBPTA7QTw2O0ErKylFW0FdPWV8fG4/bj9pLmltYWdlW0FdLmltYWdlOmkuaW1hZ2VbQV06SShpLmltYWdlW0FdLCExLCEwLEIpLEVbQV09eihpLEVbQV0pO2NvbnN0IFE9RVswXSx1PU0oUSl8fHMsbD1yLmNvbnZlcnQoaS5mb3JtYXQsaS5jb2xvclNwYWNlKSxoPXIuY29udmVydChpLnR5cGUpLHc9bShpLmludGVybmFsRm9ybWF0LGwsaCxpLmNvbG9yU3BhY2UpLEM9cyYmITAhPT1pLmlzVmlkZW9UZXh0dXJlLEQ9dm9pZCAwPT09Zy5fX3ZlcnNpb258fCEwPT09YTtsZXQgWSxmPUYoaSxRLHUpO2lmKEcoQS5URVhUVVJFX0NVQkVfTUFQLGksdSksZSl7QyYmRCYmdC50ZXhTdG9yYWdlMkQoQS5URVhUVVJFX0NVQkVfTUFQLGYsdyxRLndpZHRoLFEuaGVpZ2h0KTtmb3IobGV0IGU9MDtlPDY7ZSsrKXtZPUVbZV0ubWlwbWFwcztmb3IobGV0IG49MDtuPFkubGVuZ3RoO24rKyl7Y29uc3Qgcj1ZW25dO2kuZm9ybWF0IT09R0E/bnVsbCE9PWw/Qz90LmNvbXByZXNzZWRUZXhTdWJJbWFnZTJEKEEuVEVYVFVSRV9DVUJFX01BUF9QT1NJVElWRV9YK2UsbiwwLDAsci53aWR0aCxyLmhlaWdodCxsLHIuZGF0YSk6dC5jb21wcmVzc2VkVGV4SW1hZ2UyRChBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCtlLG4sdyxyLndpZHRoLHIuaGVpZ2h0LDAsci5kYXRhKTpjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUmVuZGVyZXI6IEF0dGVtcHQgdG8gbG9hZCB1bnN1cHBvcnRlZCBjb21wcmVzc2VkIHRleHR1cmUgZm9ybWF0IGluIC5zZXRUZXh0dXJlQ3ViZSgpIik6Qz90LnRleFN1YkltYWdlMkQoQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1grZSxuLDAsMCxyLndpZHRoLHIuaGVpZ2h0LGwsaCxyLmRhdGEpOnQudGV4SW1hZ2UyRChBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCtlLG4sdyxyLndpZHRoLHIuaGVpZ2h0LDAsbCxoLHIuZGF0YSl9fX1lbHNle1k9aS5taXBtYXBzLEMmJkQmJihZLmxlbmd0aD4wJiZmKyssdC50ZXhTdG9yYWdlMkQoQS5URVhUVVJFX0NVQkVfTUFQLGYsdyxFWzBdLndpZHRoLEVbMF0uaGVpZ2h0KSk7Zm9yKGxldCBlPTA7ZTw2O2UrKylpZihuKXtDP3QudGV4U3ViSW1hZ2UyRChBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCtlLDAsMCwwLEVbZV0ud2lkdGgsRVtlXS5oZWlnaHQsbCxoLEVbZV0uZGF0YSk6dC50ZXhJbWFnZTJEKEEuVEVYVFVSRV9DVUJFX01BUF9QT1NJVElWRV9YK2UsMCx3LEVbZV0ud2lkdGgsRVtlXS5oZWlnaHQsMCxsLGgsRVtlXS5kYXRhKTtmb3IobGV0IG49MDtuPFkubGVuZ3RoO24rKyl7Y29uc3QgaT1ZW25dLmltYWdlW2VdLmltYWdlO0M/dC50ZXhTdWJJbWFnZTJEKEEuVEVYVFVSRV9DVUJFX01BUF9QT1NJVElWRV9YK2UsbisxLDAsMCxpLndpZHRoLGkuaGVpZ2h0LGwsaCxpLmRhdGEpOnQudGV4SW1hZ2UyRChBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCtlLG4rMSx3LGkud2lkdGgsaS5oZWlnaHQsMCxsLGgsaS5kYXRhKX19ZWxzZXtDP3QudGV4U3ViSW1hZ2UyRChBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCtlLDAsMCwwLGwsaCxFW2VdKTp0LnRleEltYWdlMkQoQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1grZSwwLHcsbCxoLEVbZV0pO2ZvcihsZXQgbj0wO248WS5sZW5ndGg7bisrKXtjb25zdCBpPVlbbl07Qz90LnRleFN1YkltYWdlMkQoQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1grZSxuKzEsMCwwLGwsaCxpLmltYWdlW2VdKTp0LnRleEltYWdlMkQoQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1grZSxuKzEsdyxsLGgsaS5pbWFnZVtlXSl9fX1kKGksdSkmJnAoQS5URVhUVVJFX0NVQkVfTUFQKSxnLl9fdmVyc2lvbj1jLnZlcnNpb24saS5vblVwZGF0ZSYmaS5vblVwZGF0ZShpKX1lLl9fdmVyc2lvbj1pLnZlcnNpb259KG8sZSxpKTp0LmJpbmRUZXh0dXJlKEEuVEVYVFVSRV9DVUJFX01BUCxvLl9fd2ViZ2xUZXh0dXJlLEEuVEVYVFVSRTAraSl9LHRoaXMucmViaW5kVGV4dHVyZXM9ZnVuY3Rpb24oZSx0LGkpe2NvbnN0IHI9bi5nZXQoZSk7dm9pZCAwIT09dCYmSChyLl9fd2ViZ2xGcmFtZWJ1ZmZlcixlLGUudGV4dHVyZSxBLkNPTE9SX0FUVEFDSE1FTlQwLEEuVEVYVFVSRV8yRCksdm9pZCAwIT09aSYmayhlKX0sdGhpcy5zZXR1cFJlbmRlclRhcmdldD1mdW5jdGlvbihlKXtjb25zdCBhPWUudGV4dHVyZSxCPW4uZ2V0KGUpLGM9bi5nZXQoYSk7ZS5hZGRFdmVudExpc3RlbmVyKCJkaXNwb3NlIixmKSwhMCE9PWUuaXNXZWJHTE11bHRpcGxlUmVuZGVyVGFyZ2V0cyYmKHZvaWQgMD09PWMuX193ZWJnbFRleHR1cmUmJihjLl9fd2ViZ2xUZXh0dXJlPUEuY3JlYXRlVGV4dHVyZSgpKSxjLl9fdmVyc2lvbj1hLnZlcnNpb24sby5tZW1vcnkudGV4dHVyZXMrKyk7Y29uc3QgZz0hMD09PWUuaXNXZWJHTEN1YmVSZW5kZXJUYXJnZXQsRT0hMD09PWUuaXNXZWJHTE11bHRpcGxlUmVuZGVyVGFyZ2V0cyxRPU0oZSl8fHM7aWYoZyl7Qi5fX3dlYmdsRnJhbWVidWZmZXI9W107Zm9yKGxldCBlPTA7ZTw2O2UrKylCLl9fd2ViZ2xGcmFtZWJ1ZmZlcltlXT1BLmNyZWF0ZUZyYW1lYnVmZmVyKCl9ZWxzZXtpZihCLl9fd2ViZ2xGcmFtZWJ1ZmZlcj1BLmNyZWF0ZUZyYW1lYnVmZmVyKCksRSlpZihpLmRyYXdCdWZmZXJzKXtjb25zdCB0PWUudGV4dHVyZTtmb3IobGV0IGU9MCxpPXQubGVuZ3RoO2U8aTtlKyspe2NvbnN0IGk9bi5nZXQodFtlXSk7dm9pZCAwPT09aS5fX3dlYmdsVGV4dHVyZSYmKGkuX193ZWJnbFRleHR1cmU9QS5jcmVhdGVUZXh0dXJlKCksby5tZW1vcnkudGV4dHVyZXMrKyl9fWVsc2UgY29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBXZWJHTE11bHRpcGxlUmVuZGVyVGFyZ2V0cyBjYW4gb25seSBiZSB1c2VkIHdpdGggV2ViR0wyIG9yIFdFQkdMX2RyYXdfYnVmZmVycyBleHRlbnNpb24uIik7aWYocyYmZS5zYW1wbGVzPjAmJiExPT09SihlKSl7Y29uc3Qgbj1FP2E6W2FdO0IuX193ZWJnbE11bHRpc2FtcGxlZEZyYW1lYnVmZmVyPUEuY3JlYXRlRnJhbWVidWZmZXIoKSxCLl9fd2ViZ2xDb2xvclJlbmRlcmJ1ZmZlcj1bXSx0LmJpbmRGcmFtZWJ1ZmZlcihBLkZSQU1FQlVGRkVSLEIuX193ZWJnbE11bHRpc2FtcGxlZEZyYW1lYnVmZmVyKTtmb3IobGV0IHQ9MDt0PG4ubGVuZ3RoO3QrKyl7Y29uc3QgaT1uW3RdO0IuX193ZWJnbENvbG9yUmVuZGVyYnVmZmVyW3RdPUEuY3JlYXRlUmVuZGVyYnVmZmVyKCksQS5iaW5kUmVuZGVyYnVmZmVyKEEuUkVOREVSQlVGRkVSLEIuX193ZWJnbENvbG9yUmVuZGVyYnVmZmVyW3RdKTtjb25zdCBvPXIuY29udmVydChpLmZvcm1hdCxpLmNvbG9yU3BhY2UpLHM9ci5jb252ZXJ0KGkudHlwZSksYT1tKGkuaW50ZXJuYWxGb3JtYXQsbyxzLGkuY29sb3JTcGFjZSwhMD09PWUuaXNYUlJlbmRlclRhcmdldCksYz1qKGUpO0EucmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlKEEuUkVOREVSQlVGRkVSLGMsYSxlLndpZHRoLGUuaGVpZ2h0KSxBLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEEuRlJBTUVCVUZGRVIsQS5DT0xPUl9BVFRBQ0hNRU5UMCt0LEEuUkVOREVSQlVGRkVSLEIuX193ZWJnbENvbG9yUmVuZGVyYnVmZmVyW3RdKX1BLmJpbmRSZW5kZXJidWZmZXIoQS5SRU5ERVJCVUZGRVIsbnVsbCksZS5kZXB0aEJ1ZmZlciYmKEIuX193ZWJnbERlcHRoUmVuZGVyYnVmZmVyPUEuY3JlYXRlUmVuZGVyYnVmZmVyKCksdihCLl9fd2ViZ2xEZXB0aFJlbmRlcmJ1ZmZlcixlLCEwKSksdC5iaW5kRnJhbWVidWZmZXIoQS5GUkFNRUJVRkZFUixudWxsKX19aWYoZyl7dC5iaW5kVGV4dHVyZShBLlRFWFRVUkVfQ1VCRV9NQVAsYy5fX3dlYmdsVGV4dHVyZSksRyhBLlRFWFRVUkVfQ1VCRV9NQVAsYSxRKTtmb3IobGV0IHQ9MDt0PDY7dCsrKUgoQi5fX3dlYmdsRnJhbWVidWZmZXJbdF0sZSxhLEEuQ09MT1JfQVRUQUNITUVOVDAsQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1grdCk7ZChhLFEpJiZwKEEuVEVYVFVSRV9DVUJFX01BUCksdC51bmJpbmRUZXh0dXJlKCl9ZWxzZSBpZihFKXtjb25zdCBpPWUudGV4dHVyZTtmb3IobGV0IHI9MCxvPWkubGVuZ3RoO3I8bztyKyspe2NvbnN0IG89aVtyXSxzPW4uZ2V0KG8pO3QuYmluZFRleHR1cmUoQS5URVhUVVJFXzJELHMuX193ZWJnbFRleHR1cmUpLEcoQS5URVhUVVJFXzJELG8sUSksSChCLl9fd2ViZ2xGcmFtZWJ1ZmZlcixlLG8sQS5DT0xPUl9BVFRBQ0hNRU5UMCtyLEEuVEVYVFVSRV8yRCksZChvLFEpJiZwKEEuVEVYVFVSRV8yRCl9dC51bmJpbmRUZXh0dXJlKCl9ZWxzZXtsZXQgbj1BLlRFWFRVUkVfMkQ7KGUuaXNXZWJHTDNEUmVuZGVyVGFyZ2V0fHxlLmlzV2ViR0xBcnJheVJlbmRlclRhcmdldCkmJihzP249ZS5pc1dlYkdMM0RSZW5kZXJUYXJnZXQ/QS5URVhUVVJFXzNEOkEuVEVYVFVSRV8yRF9BUlJBWTpjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFRleHR1cmVzOiBUSFJFRS5EYXRhM0RUZXh0dXJlIGFuZCBUSFJFRS5EYXRhQXJyYXlUZXh0dXJlIG9ubHkgc3VwcG9ydGVkIHdpdGggV2ViR0wyLiIpKSx0LmJpbmRUZXh0dXJlKG4sYy5fX3dlYmdsVGV4dHVyZSksRyhuLGEsUSksSChCLl9fd2ViZ2xGcmFtZWJ1ZmZlcixlLGEsQS5DT0xPUl9BVFRBQ0hNRU5UMCxuKSxkKGEsUSkmJnAobiksdC51bmJpbmRUZXh0dXJlKCl9ZS5kZXB0aEJ1ZmZlciYmayhlKX0sdGhpcy51cGRhdGVSZW5kZXJUYXJnZXRNaXBtYXA9ZnVuY3Rpb24oZSl7Y29uc3QgaT1NKGUpfHxzLHI9ITA9PT1lLmlzV2ViR0xNdWx0aXBsZVJlbmRlclRhcmdldHM/ZS50ZXh0dXJlOltlLnRleHR1cmVdO2ZvcihsZXQgbz0wLHM9ci5sZW5ndGg7bzxzO28rKyl7Y29uc3Qgcz1yW29dO2lmKGQocyxpKSl7Y29uc3QgaT1lLmlzV2ViR0xDdWJlUmVuZGVyVGFyZ2V0P0EuVEVYVFVSRV9DVUJFX01BUDpBLlRFWFRVUkVfMkQscj1uLmdldChzKS5fX3dlYmdsVGV4dHVyZTt0LmJpbmRUZXh0dXJlKGkscikscChpKSx0LnVuYmluZFRleHR1cmUoKX19fSx0aGlzLnVwZGF0ZU11bHRpc2FtcGxlUmVuZGVyVGFyZ2V0PWZ1bmN0aW9uKGUpe2lmKHMmJmUuc2FtcGxlcz4wJiYhMT09PUooZSkpe2NvbnN0IGk9ZS5pc1dlYkdMTXVsdGlwbGVSZW5kZXJUYXJnZXRzP2UudGV4dHVyZTpbZS50ZXh0dXJlXSxyPWUud2lkdGgsbz1lLmhlaWdodDtsZXQgcz1BLkNPTE9SX0JVRkZFUl9CSVQ7Y29uc3QgYT1bXSxCPWUuc3RlbmNpbEJ1ZmZlcj9BLkRFUFRIX1NURU5DSUxfQVRUQUNITUVOVDpBLkRFUFRIX0FUVEFDSE1FTlQsYz1uLmdldChlKSxnPSEwPT09ZS5pc1dlYkdMTXVsdGlwbGVSZW5kZXJUYXJnZXRzO2lmKGcpZm9yKGxldCBlPTA7ZTxpLmxlbmd0aDtlKyspdC5iaW5kRnJhbWVidWZmZXIoQS5GUkFNRUJVRkZFUixjLl9fd2ViZ2xNdWx0aXNhbXBsZWRGcmFtZWJ1ZmZlciksQS5mcmFtZWJ1ZmZlclJlbmRlcmJ1ZmZlcihBLkZSQU1FQlVGRkVSLEEuQ09MT1JfQVRUQUNITUVOVDArZSxBLlJFTkRFUkJVRkZFUixudWxsKSx0LmJpbmRGcmFtZWJ1ZmZlcihBLkZSQU1FQlVGRkVSLGMuX193ZWJnbEZyYW1lYnVmZmVyKSxBLmZyYW1lYnVmZmVyVGV4dHVyZTJEKEEuRFJBV19GUkFNRUJVRkZFUixBLkNPTE9SX0FUVEFDSE1FTlQwK2UsQS5URVhUVVJFXzJELG51bGwsMCk7dC5iaW5kRnJhbWVidWZmZXIoQS5SRUFEX0ZSQU1FQlVGRkVSLGMuX193ZWJnbE11bHRpc2FtcGxlZEZyYW1lYnVmZmVyKSx0LmJpbmRGcmFtZWJ1ZmZlcihBLkRSQVdfRlJBTUVCVUZGRVIsYy5fX3dlYmdsRnJhbWVidWZmZXIpO2ZvcihsZXQgdD0wO3Q8aS5sZW5ndGg7dCsrKXthLnB1c2goQS5DT0xPUl9BVFRBQ0hNRU5UMCt0KSxlLmRlcHRoQnVmZmVyJiZhLnB1c2goQik7Y29uc3QgRT12b2lkIDAhPT1jLl9faWdub3JlRGVwdGhWYWx1ZXMmJmMuX19pZ25vcmVEZXB0aFZhbHVlcztpZighMT09PUUmJihlLmRlcHRoQnVmZmVyJiYoc3w9QS5ERVBUSF9CVUZGRVJfQklUKSxlLnN0ZW5jaWxCdWZmZXImJihzfD1BLlNURU5DSUxfQlVGRkVSX0JJVCkpLGcmJkEuZnJhbWVidWZmZXJSZW5kZXJidWZmZXIoQS5SRUFEX0ZSQU1FQlVGRkVSLEEuQ09MT1JfQVRUQUNITUVOVDAsQS5SRU5ERVJCVUZGRVIsYy5fX3dlYmdsQ29sb3JSZW5kZXJidWZmZXJbdF0pLCEwPT09RSYmKEEuaW52YWxpZGF0ZUZyYW1lYnVmZmVyKEEuUkVBRF9GUkFNRUJVRkZFUixbQl0pLEEuaW52YWxpZGF0ZUZyYW1lYnVmZmVyKEEuRFJBV19GUkFNRUJVRkZFUixbQl0pKSxnKXtjb25zdCBlPW4uZ2V0KGlbdF0pLl9fd2ViZ2xUZXh0dXJlO0EuZnJhbWVidWZmZXJUZXh0dXJlMkQoQS5EUkFXX0ZSQU1FQlVGRkVSLEEuQ09MT1JfQVRUQUNITUVOVDAsQS5URVhUVVJFXzJELGUsMCl9QS5ibGl0RnJhbWVidWZmZXIoMCwwLHIsbywwLDAscixvLHMsQS5ORUFSRVNUKSxRJiZBLmludmFsaWRhdGVGcmFtZWJ1ZmZlcihBLlJFQURfRlJBTUVCVUZGRVIsYSl9aWYodC5iaW5kRnJhbWVidWZmZXIoQS5SRUFEX0ZSQU1FQlVGRkVSLG51bGwpLHQuYmluZEZyYW1lYnVmZmVyKEEuRFJBV19GUkFNRUJVRkZFUixudWxsKSxnKWZvcihsZXQgZT0wO2U8aS5sZW5ndGg7ZSsrKXt0LmJpbmRGcmFtZWJ1ZmZlcihBLkZSQU1FQlVGRkVSLGMuX193ZWJnbE11bHRpc2FtcGxlZEZyYW1lYnVmZmVyKSxBLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEEuRlJBTUVCVUZGRVIsQS5DT0xPUl9BVFRBQ0hNRU5UMCtlLEEuUkVOREVSQlVGRkVSLGMuX193ZWJnbENvbG9yUmVuZGVyYnVmZmVyW2VdKTtjb25zdCByPW4uZ2V0KGlbZV0pLl9fd2ViZ2xUZXh0dXJlO3QuYmluZEZyYW1lYnVmZmVyKEEuRlJBTUVCVUZGRVIsYy5fX3dlYmdsRnJhbWVidWZmZXIpLEEuZnJhbWVidWZmZXJUZXh0dXJlMkQoQS5EUkFXX0ZSQU1FQlVGRkVSLEEuQ09MT1JfQVRUQUNITUVOVDArZSxBLlRFWFRVUkVfMkQsciwwKX10LmJpbmRGcmFtZWJ1ZmZlcihBLkRSQVdfRlJBTUVCVUZGRVIsYy5fX3dlYmdsTXVsdGlzYW1wbGVkRnJhbWVidWZmZXIpfX0sdGhpcy5zZXR1cERlcHRoUmVuZGVyYnVmZmVyPWssdGhpcy5zZXR1cEZyYW1lQnVmZmVyVGV4dHVyZT1ILHRoaXMudXNlTXVsdGlzYW1wbGVkUlRUPUp9ZnVuY3Rpb24gZGEoQSxlLHQpe2NvbnN0IG49dC5pc1dlYkdMMjtyZXR1cm57Y29udmVydDpmdW5jdGlvbih0KXtsZXQgaSxyPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpqZTtpZih0PT09cEEpcmV0dXJuIEEuVU5TSUdORURfQllURTtpZih0PT09eUEpcmV0dXJuIEEuVU5TSUdORURfU0hPUlRfNF80XzRfNDtpZih0PT09VEEpcmV0dXJuIEEuVU5TSUdORURfU0hPUlRfNV81XzVfMTtpZih0PT09bUEpcmV0dXJuIEEuQllURTtpZih0PT09RkEpcmV0dXJuIEEuU0hPUlQ7aWYodD09PURBKXJldHVybiBBLlVOU0lHTkVEX1NIT1JUO2lmKHQ9PT1ZQSlyZXR1cm4gQS5JTlQ7aWYodD09PWZBKXJldHVybiBBLlVOU0lHTkVEX0lOVDtpZih0PT09TkEpcmV0dXJuIEEuRkxPQVQ7aWYodD09PVVBKXJldHVybiBuP0EuSEFMRl9GTE9BVDooaT1lLmdldCgiT0VTX3RleHR1cmVfaGFsZl9mbG9hdCIpLG51bGwhPT1pP2kuSEFMRl9GTE9BVF9PRVM6bnVsbCk7aWYodD09PVJBKXJldHVybiBBLkFMUEhBO2lmKHQ9PT1HQSlyZXR1cm4gQS5SR0JBO2lmKHQ9PT1TQSlyZXR1cm4gQS5MVU1JTkFOQ0U7aWYodD09PWJBKXJldHVybiBBLkxVTUlOQU5DRV9BTFBIQTtpZih0PT09SEEpcmV0dXJuIEEuREVQVEhfQ09NUE9ORU5UO2lmKHQ9PT12QSlyZXR1cm4gQS5ERVBUSF9TVEVOQ0lMO2lmKHQ9PT1EdClyZXR1cm4gaT1lLmdldCgiRVhUX3NSR0IiKSxudWxsIT09aT9pLlNSR0JfQUxQSEFfRVhUOm51bGw7aWYodD09PWtBKXJldHVybiBBLlJFRDtpZih0PT09akEpcmV0dXJuIEEuUkVEX0lOVEVHRVI7aWYodD09PUpBKXJldHVybiBBLlJHO2lmKHQ9PT16QSlyZXR1cm4gQS5SR19JTlRFR0VSO2lmKHQ9PT1MQSlyZXR1cm4gQS5SR0JBX0lOVEVHRVI7aWYodD09PVBBfHx0PT09T0F8fHQ9PT1WQXx8dD09PVdBKWlmKHI9PT1KZSl7aWYoaT1lLmdldCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX3MzdGNfc3JnYiIpLG51bGw9PT1pKXJldHVybiBudWxsO2lmKHQ9PT1QQSlyZXR1cm4gaS5DT01QUkVTU0VEX1NSR0JfUzNUQ19EWFQxX0VYVDtpZih0PT09T0EpcmV0dXJuIGkuQ09NUFJFU1NFRF9TUkdCX0FMUEhBX1MzVENfRFhUMV9FWFQ7aWYodD09PVZBKXJldHVybiBpLkNPTVBSRVNTRURfU1JHQl9BTFBIQV9TM1RDX0RYVDNfRVhUO2lmKHQ9PT1XQSlyZXR1cm4gaS5DT01QUkVTU0VEX1NSR0JfQUxQSEFfUzNUQ19EWFQ1X0VYVH1lbHNle2lmKGk9ZS5nZXQoIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9zM3RjIiksbnVsbD09PWkpcmV0dXJuIG51bGw7aWYodD09PVBBKXJldHVybiBpLkNPTVBSRVNTRURfUkdCX1MzVENfRFhUMV9FWFQ7aWYodD09PU9BKXJldHVybiBpLkNPTVBSRVNTRURfUkdCQV9TM1RDX0RYVDFfRVhUO2lmKHQ9PT1WQSlyZXR1cm4gaS5DT01QUkVTU0VEX1JHQkFfUzNUQ19EWFQzX0VYVDtpZih0PT09V0EpcmV0dXJuIGkuQ09NUFJFU1NFRF9SR0JBX1MzVENfRFhUNV9FWFR9aWYodD09PUtBfHx0PT09WEF8fHQ9PT1aQXx8dD09PV9BKXtpZihpPWUuZ2V0KCJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfcHZydGMiKSxudWxsPT09aSlyZXR1cm4gbnVsbDtpZih0PT09S0EpcmV0dXJuIGkuQ09NUFJFU1NFRF9SR0JfUFZSVENfNEJQUFYxX0lNRztpZih0PT09WEEpcmV0dXJuIGkuQ09NUFJFU1NFRF9SR0JfUFZSVENfMkJQUFYxX0lNRztpZih0PT09WkEpcmV0dXJuIGkuQ09NUFJFU1NFRF9SR0JBX1BWUlRDXzRCUFBWMV9JTUc7aWYodD09PV9BKXJldHVybiBpLkNPTVBSRVNTRURfUkdCQV9QVlJUQ18yQlBQVjFfSU1HfWlmKHQ9PT1xQSlyZXR1cm4gaT1lLmdldCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEiKSxudWxsIT09aT9pLkNPTVBSRVNTRURfUkdCX0VUQzFfV0VCR0w6bnVsbDtpZih0PT09JEF8fHQ9PT1BZSl7aWYoaT1lLmdldCgiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YyIpLG51bGw9PT1pKXJldHVybiBudWxsO2lmKHQ9PT0kQSlyZXR1cm4gcj09PUplP2kuQ09NUFJFU1NFRF9TUkdCOF9FVEMyOmkuQ09NUFJFU1NFRF9SR0I4X0VUQzI7aWYodD09PUFlKXJldHVybiByPT09SmU/aS5DT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9FVEMyX0VBQzppLkNPTVBSRVNTRURfUkdCQThfRVRDMl9FQUN9aWYodD09PWVlfHx0PT09dGV8fHQ9PT1uZXx8dD09PWllfHx0PT09cmV8fHQ9PT1vZXx8dD09PXNlfHx0PT09YWV8fHQ9PT1CZXx8dD09PWNlfHx0PT09Z2V8fHQ9PT1FZXx8dD09PVFlfHx0PT09dWUpe2lmKGk9ZS5nZXQoIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9hc3RjIiksbnVsbD09PWkpcmV0dXJuIG51bGw7aWYodD09PWVlKXJldHVybiByPT09SmU/aS5DT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9BU1RDXzR4NF9LSFI6aS5DT01QUkVTU0VEX1JHQkFfQVNUQ180eDRfS0hSO2lmKHQ9PT10ZSlyZXR1cm4gcj09PUplP2kuQ09NUFJFU1NFRF9TUkdCOF9BTFBIQThfQVNUQ181eDRfS0hSOmkuQ09NUFJFU1NFRF9SR0JBX0FTVENfNXg0X0tIUjtpZih0PT09bmUpcmV0dXJuIHI9PT1KZT9pLkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfNXg1X0tIUjppLkNPTVBSRVNTRURfUkdCQV9BU1RDXzV4NV9LSFI7aWYodD09PWllKXJldHVybiByPT09SmU/aS5DT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9BU1RDXzZ4NV9LSFI6aS5DT01QUkVTU0VEX1JHQkFfQVNUQ182eDVfS0hSO2lmKHQ9PT1yZSlyZXR1cm4gcj09PUplP2kuQ09NUFJFU1NFRF9TUkdCOF9BTFBIQThfQVNUQ182eDZfS0hSOmkuQ09NUFJFU1NFRF9SR0JBX0FTVENfNng2X0tIUjtpZih0PT09b2UpcmV0dXJuIHI9PT1KZT9pLkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfOHg1X0tIUjppLkNPTVBSRVNTRURfUkdCQV9BU1RDXzh4NV9LSFI7aWYodD09PXNlKXJldHVybiByPT09SmU/aS5DT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9BU1RDXzh4Nl9LSFI6aS5DT01QUkVTU0VEX1JHQkFfQVNUQ184eDZfS0hSO2lmKHQ9PT1hZSlyZXR1cm4gcj09PUplP2kuQ09NUFJFU1NFRF9TUkdCOF9BTFBIQThfQVNUQ184eDhfS0hSOmkuQ09NUFJFU1NFRF9SR0JBX0FTVENfOHg4X0tIUjtpZih0PT09QmUpcmV0dXJuIHI9PT1KZT9pLkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfMTB4NV9LSFI6aS5DT01QUkVTU0VEX1JHQkFfQVNUQ18xMHg1X0tIUjtpZih0PT09Y2UpcmV0dXJuIHI9PT1KZT9pLkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfMTB4Nl9LSFI6aS5DT01QUkVTU0VEX1JHQkFfQVNUQ18xMHg2X0tIUjtpZih0PT09Z2UpcmV0dXJuIHI9PT1KZT9pLkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfMTB4OF9LSFI6aS5DT01QUkVTU0VEX1JHQkFfQVNUQ18xMHg4X0tIUjtpZih0PT09RWUpcmV0dXJuIHI9PT1KZT9pLkNPTVBSRVNTRURfU1JHQjhfQUxQSEE4X0FTVENfMTB4MTBfS0hSOmkuQ09NUFJFU1NFRF9SR0JBX0FTVENfMTB4MTBfS0hSO2lmKHQ9PT1RZSlyZXR1cm4gcj09PUplP2kuQ09NUFJFU1NFRF9TUkdCOF9BTFBIQThfQVNUQ18xMngxMF9LSFI6aS5DT01QUkVTU0VEX1JHQkFfQVNUQ18xMngxMF9LSFI7aWYodD09PXVlKXJldHVybiByPT09SmU/aS5DT01QUkVTU0VEX1NSR0I4X0FMUEhBOF9BU1RDXzEyeDEyX0tIUjppLkNPTVBSRVNTRURfUkdCQV9BU1RDXzEyeDEyX0tIUn1pZih0PT09bGUpe2lmKGk9ZS5nZXQoIkVYVF90ZXh0dXJlX2NvbXByZXNzaW9uX2JwdGMiKSxudWxsPT09aSlyZXR1cm4gbnVsbDtpZih0PT09bGUpcmV0dXJuIHI9PT1KZT9pLkNPTVBSRVNTRURfU1JHQl9BTFBIQV9CUFRDX1VOT1JNX0VYVDppLkNPTVBSRVNTRURfUkdCQV9CUFRDX1VOT1JNX0VYVH1pZih0PT09aGV8fHQ9PT13ZXx8dD09PUNlfHx0PT09SWUpe2lmKGk9ZS5nZXQoIkVYVF90ZXh0dXJlX2NvbXByZXNzaW9uX3JndGMiKSxudWxsPT09aSlyZXR1cm4gbnVsbDtpZih0PT09bGUpcmV0dXJuIGkuQ09NUFJFU1NFRF9SRURfUkdUQzFfRVhUO2lmKHQ9PT13ZSlyZXR1cm4gaS5DT01QUkVTU0VEX1NJR05FRF9SRURfUkdUQzFfRVhUO2lmKHQ9PT1DZSlyZXR1cm4gaS5DT01QUkVTU0VEX1JFRF9HUkVFTl9SR1RDMl9FWFQ7aWYodD09PUllKXJldHVybiBpLkNPTVBSRVNTRURfU0lHTkVEX1JFRF9HUkVFTl9SR1RDMl9FWFR9cmV0dXJuIHQ9PT14QT9uP0EuVU5TSUdORURfSU5UXzI0Xzg6KGk9ZS5nZXQoIldFQkdMX2RlcHRoX3RleHR1cmUiKSxudWxsIT09aT9pLlVOU0lHTkVEX0lOVF8yNF84X1dFQkdMOm51bGwpOnZvaWQgMCE9PUFbdF0/QVt0XTpudWxsfX19Y2xhc3MgcGEgZXh0ZW5kcyB6cntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXTtzdXBlcigpLHRoaXMuaXNBcnJheUNhbWVyYT0hMCx0aGlzLmNhbWVyYXM9QX19Y2xhc3MgbWEgZXh0ZW5kcyBwaXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5pc0dyb3VwPSEwLHRoaXMudHlwZT0iR3JvdXAifX1jb25zdCBGYT17dHlwZToibW92ZSJ9O2NsYXNzIERhe2NvbnN0cnVjdG9yKCl7dGhpcy5fdGFyZ2V0UmF5PW51bGwsdGhpcy5fZ3JpcD1udWxsLHRoaXMuX2hhbmQ9bnVsbH1nZXRIYW5kU3BhY2UoKXtyZXR1cm4gbnVsbD09PXRoaXMuX2hhbmQmJih0aGlzLl9oYW5kPW5ldyBtYSx0aGlzLl9oYW5kLm1hdHJpeEF1dG9VcGRhdGU9ITEsdGhpcy5faGFuZC52aXNpYmxlPSExLHRoaXMuX2hhbmQuam9pbnRzPXt9LHRoaXMuX2hhbmQuaW5wdXRTdGF0ZT17cGluY2hpbmc6ITF9KSx0aGlzLl9oYW5kfWdldFRhcmdldFJheVNwYWNlKCl7cmV0dXJuIG51bGw9PT10aGlzLl90YXJnZXRSYXkmJih0aGlzLl90YXJnZXRSYXk9bmV3IG1hLHRoaXMuX3RhcmdldFJheS5tYXRyaXhBdXRvVXBkYXRlPSExLHRoaXMuX3RhcmdldFJheS52aXNpYmxlPSExLHRoaXMuX3RhcmdldFJheS5oYXNMaW5lYXJWZWxvY2l0eT0hMSx0aGlzLl90YXJnZXRSYXkubGluZWFyVmVsb2NpdHk9bmV3IGRuLHRoaXMuX3RhcmdldFJheS5oYXNBbmd1bGFyVmVsb2NpdHk9ITEsdGhpcy5fdGFyZ2V0UmF5LmFuZ3VsYXJWZWxvY2l0eT1uZXcgZG4pLHRoaXMuX3RhcmdldFJheX1nZXRHcmlwU3BhY2UoKXtyZXR1cm4gbnVsbD09PXRoaXMuX2dyaXAmJih0aGlzLl9ncmlwPW5ldyBtYSx0aGlzLl9ncmlwLm1hdHJpeEF1dG9VcGRhdGU9ITEsdGhpcy5fZ3JpcC52aXNpYmxlPSExLHRoaXMuX2dyaXAuaGFzTGluZWFyVmVsb2NpdHk9ITEsdGhpcy5fZ3JpcC5saW5lYXJWZWxvY2l0eT1uZXcgZG4sdGhpcy5fZ3JpcC5oYXNBbmd1bGFyVmVsb2NpdHk9ITEsdGhpcy5fZ3JpcC5hbmd1bGFyVmVsb2NpdHk9bmV3IGRuKSx0aGlzLl9ncmlwfWRpc3BhdGNoRXZlbnQoQSl7cmV0dXJuIG51bGwhPT10aGlzLl90YXJnZXRSYXkmJnRoaXMuX3RhcmdldFJheS5kaXNwYXRjaEV2ZW50KEEpLG51bGwhPT10aGlzLl9ncmlwJiZ0aGlzLl9ncmlwLmRpc3BhdGNoRXZlbnQoQSksbnVsbCE9PXRoaXMuX2hhbmQmJnRoaXMuX2hhbmQuZGlzcGF0Y2hFdmVudChBKSx0aGlzfWNvbm5lY3QoQSl7aWYoQSYmQS5oYW5kKXtjb25zdCBlPXRoaXMuX2hhbmQ7aWYoZSlmb3IoY29uc3QgdCBvZiBBLmhhbmQudmFsdWVzKCkpdGhpcy5fZ2V0SGFuZEpvaW50KGUsdCl9cmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToiY29ubmVjdGVkIixkYXRhOkF9KSx0aGlzfWRpc2Nvbm5lY3QoQSl7cmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToiZGlzY29ubmVjdGVkIixkYXRhOkF9KSxudWxsIT09dGhpcy5fdGFyZ2V0UmF5JiYodGhpcy5fdGFyZ2V0UmF5LnZpc2libGU9ITEpLG51bGwhPT10aGlzLl9ncmlwJiYodGhpcy5fZ3JpcC52aXNpYmxlPSExKSxudWxsIT09dGhpcy5faGFuZCYmKHRoaXMuX2hhbmQudmlzaWJsZT0hMSksdGhpc311cGRhdGUoQSxlLHQpe2xldCBuPW51bGwsaT1udWxsLHI9bnVsbDtjb25zdCBvPXRoaXMuX3RhcmdldFJheSxzPXRoaXMuX2dyaXAsYT10aGlzLl9oYW5kO2lmKEEmJiJ2aXNpYmxlLWJsdXJyZWQiIT09ZS5zZXNzaW9uLnZpc2liaWxpdHlTdGF0ZSl7aWYoYSYmQS5oYW5kKXtyPSEwO2Zvcihjb25zdCBuIG9mIEEuaGFuZC52YWx1ZXMoKSl7Y29uc3QgQT1lLmdldEpvaW50UG9zZShuLHQpLGk9dGhpcy5fZ2V0SGFuZEpvaW50KGEsbik7bnVsbCE9PUEmJihpLm1hdHJpeC5mcm9tQXJyYXkoQS50cmFuc2Zvcm0ubWF0cml4KSxpLm1hdHJpeC5kZWNvbXBvc2UoaS5wb3NpdGlvbixpLnJvdGF0aW9uLGkuc2NhbGUpLGkubWF0cml4V29ybGROZWVkc1VwZGF0ZT0hMCxpLmpvaW50UmFkaXVzPUEucmFkaXVzKSxpLnZpc2libGU9bnVsbCE9PUF9Y29uc3Qgbj1hLmpvaW50c1siaW5kZXgtZmluZ2VyLXRpcCJdLGk9YS5qb2ludHNbInRodW1iLXRpcCJdLG89bi5wb3NpdGlvbi5kaXN0YW5jZVRvKGkucG9zaXRpb24pLHM9LjAyLEI9LjAwNTthLmlucHV0U3RhdGUucGluY2hpbmcmJm8+cytCPyhhLmlucHV0U3RhdGUucGluY2hpbmc9ITEsdGhpcy5kaXNwYXRjaEV2ZW50KHt0eXBlOiJwaW5jaGVuZCIsaGFuZGVkbmVzczpBLmhhbmRlZG5lc3MsdGFyZ2V0OnRoaXN9KSk6IWEuaW5wdXRTdGF0ZS5waW5jaGluZyYmbzw9cy1CJiYoYS5pbnB1dFN0YXRlLnBpbmNoaW5nPSEwLHRoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToicGluY2hzdGFydCIsaGFuZGVkbmVzczpBLmhhbmRlZG5lc3MsdGFyZ2V0OnRoaXN9KSl9ZWxzZSBudWxsIT09cyYmQS5ncmlwU3BhY2UmJihpPWUuZ2V0UG9zZShBLmdyaXBTcGFjZSx0KSxudWxsIT09aSYmKHMubWF0cml4LmZyb21BcnJheShpLnRyYW5zZm9ybS5tYXRyaXgpLHMubWF0cml4LmRlY29tcG9zZShzLnBvc2l0aW9uLHMucm90YXRpb24scy5zY2FsZSkscy5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlPSEwLGkubGluZWFyVmVsb2NpdHk/KHMuaGFzTGluZWFyVmVsb2NpdHk9ITAscy5saW5lYXJWZWxvY2l0eS5jb3B5KGkubGluZWFyVmVsb2NpdHkpKTpzLmhhc0xpbmVhclZlbG9jaXR5PSExLGkuYW5ndWxhclZlbG9jaXR5PyhzLmhhc0FuZ3VsYXJWZWxvY2l0eT0hMCxzLmFuZ3VsYXJWZWxvY2l0eS5jb3B5KGkuYW5ndWxhclZlbG9jaXR5KSk6cy5oYXNBbmd1bGFyVmVsb2NpdHk9ITEpKTtudWxsIT09byYmKG49ZS5nZXRQb3NlKEEudGFyZ2V0UmF5U3BhY2UsdCksbnVsbD09PW4mJm51bGwhPT1pJiYobj1pKSxudWxsIT09biYmKG8ubWF0cml4LmZyb21BcnJheShuLnRyYW5zZm9ybS5tYXRyaXgpLG8ubWF0cml4LmRlY29tcG9zZShvLnBvc2l0aW9uLG8ucm90YXRpb24sby5zY2FsZSksby5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlPSEwLG4ubGluZWFyVmVsb2NpdHk/KG8uaGFzTGluZWFyVmVsb2NpdHk9ITAsby5saW5lYXJWZWxvY2l0eS5jb3B5KG4ubGluZWFyVmVsb2NpdHkpKTpvLmhhc0xpbmVhclZlbG9jaXR5PSExLG4uYW5ndWxhclZlbG9jaXR5PyhvLmhhc0FuZ3VsYXJWZWxvY2l0eT0hMCxvLmFuZ3VsYXJWZWxvY2l0eS5jb3B5KG4uYW5ndWxhclZlbG9jaXR5KSk6by5oYXNBbmd1bGFyVmVsb2NpdHk9ITEsdGhpcy5kaXNwYXRjaEV2ZW50KEZhKSkpfXJldHVybiBudWxsIT09byYmKG8udmlzaWJsZT1udWxsIT09biksbnVsbCE9PXMmJihzLnZpc2libGU9bnVsbCE9PWkpLG51bGwhPT1hJiYoYS52aXNpYmxlPW51bGwhPT1yKSx0aGlzfV9nZXRIYW5kSm9pbnQoQSxlKXtpZih2b2lkIDA9PT1BLmpvaW50c1tlLmpvaW50TmFtZV0pe2NvbnN0IHQ9bmV3IG1hO3QubWF0cml4QXV0b1VwZGF0ZT0hMSx0LnZpc2libGU9ITEsQS5qb2ludHNbZS5qb2ludE5hbWVdPXQsQS5hZGQodCl9cmV0dXJuIEEuam9pbnRzW2Uuam9pbnROYW1lXX19Y2xhc3MgWWEgZXh0ZW5kcyBFbntjb25zdHJ1Y3RvcihBLGUsdCxuLGkscixvLHMsYSxCKXtpZigoQj12b2lkIDAhPT1CP0I6SEEpIT09SEEmJkIhPT12QSl0aHJvdyBuZXcgRXJyb3IoIkRlcHRoVGV4dHVyZSBmb3JtYXQgbXVzdCBiZSBlaXRoZXIgVEhSRUUuRGVwdGhGb3JtYXQgb3IgVEhSRUUuRGVwdGhTdGVuY2lsRm9ybWF0Iik7dm9pZCAwPT09dCYmQj09PUhBJiYodD1mQSksdm9pZCAwPT09dCYmQj09PXZBJiYodD14QSksc3VwZXIobnVsbCxuLGkscixvLHMsQix0LGEpLHRoaXMuaXNEZXB0aFRleHR1cmU9ITAsdGhpcy5pbWFnZT17d2lkdGg6QSxoZWlnaHQ6ZX0sdGhpcy5tYWdGaWx0ZXI9dm9pZCAwIT09bz9vOkVBLHRoaXMubWluRmlsdGVyPXZvaWQgMCE9PXM/czpFQSx0aGlzLmZsaXBZPSExLHRoaXMuZ2VuZXJhdGVNaXBtYXBzPSExLHRoaXMuY29tcGFyZUZ1bmN0aW9uPW51bGx9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLmNvbXBhcmVGdW5jdGlvbj1BLmNvbXBhcmVGdW5jdGlvbix0aGlzfXRvSlNPTihBKXtjb25zdCBlPXN1cGVyLnRvSlNPTihBKTtyZXR1cm4gbnVsbCE9PXRoaXMuY29tcGFyZUZ1bmN0aW9uJiYoZS5jb21wYXJlRnVuY3Rpb249dGhpcy5jb21wYXJlRnVuY3Rpb24pLGV9fWNsYXNzIGZhIGV4dGVuZHMgTnR7Y29uc3RydWN0b3IoQSxlKXtzdXBlcigpO2NvbnN0IHQ9dGhpcztsZXQgbj1udWxsLGk9MSxyPW51bGwsbz0ibG9jYWwtZmxvb3IiLHM9MSxhPW51bGwsQj1udWxsLGM9bnVsbCxnPW51bGwsRT1udWxsLFE9bnVsbDtjb25zdCB1PWUuZ2V0Q29udGV4dEF0dHJpYnV0ZXMoKTtsZXQgbD1udWxsLGg9bnVsbDtjb25zdCB3PVtdLEM9W107bGV0IEk9bnVsbDtjb25zdCBNPW5ldyB6cjtNLmxheWVycy5lbmFibGUoMSksTS52aWV3cG9ydD1uZXcgUW47Y29uc3QgZD1uZXcgenI7ZC5sYXllcnMuZW5hYmxlKDIpLGQudmlld3BvcnQ9bmV3IFFuO2NvbnN0IHA9W00sZF0sbT1uZXcgcGE7bS5sYXllcnMuZW5hYmxlKDEpLG0ubGF5ZXJzLmVuYWJsZSgyKTtsZXQgRj1udWxsLEQ9bnVsbDtmdW5jdGlvbiBZKEEpe2NvbnN0IGU9Qy5pbmRleE9mKEEuaW5wdXRTb3VyY2UpO2lmKC0xPT09ZSlyZXR1cm47Y29uc3QgdD13W2VdO3ZvaWQgMCE9PXQmJih0LnVwZGF0ZShBLmlucHV0U291cmNlLEEuZnJhbWUsYXx8ciksdC5kaXNwYXRjaEV2ZW50KHt0eXBlOkEudHlwZSxkYXRhOkEuaW5wdXRTb3VyY2V9KSl9ZnVuY3Rpb24gZigpe24ucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2VsZWN0IixZKSxuLnJlbW92ZUV2ZW50TGlzdGVuZXIoInNlbGVjdHN0YXJ0IixZKSxuLnJlbW92ZUV2ZW50TGlzdGVuZXIoInNlbGVjdGVuZCIsWSksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJzcXVlZXplIixZKSxuLnJlbW92ZUV2ZW50TGlzdGVuZXIoInNxdWVlemVzdGFydCIsWSksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJzcXVlZXplZW5kIixZKSxuLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVuZCIsZiksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJpbnB1dHNvdXJjZXNjaGFuZ2UiLE4pO2ZvcihsZXQgQT0wO0E8dy5sZW5ndGg7QSsrKXtjb25zdCBlPUNbQV07bnVsbCE9PWUmJihDW0FdPW51bGwsd1tBXS5kaXNjb25uZWN0KGUpKX1GPW51bGwsRD1udWxsLEEuc2V0UmVuZGVyVGFyZ2V0KGwpLEU9bnVsbCxnPW51bGwsYz1udWxsLG49bnVsbCxoPW51bGwsUi5zdG9wKCksdC5pc1ByZXNlbnRpbmc9ITEsdC5kaXNwYXRjaEV2ZW50KHt0eXBlOiJzZXNzaW9uZW5kIn0pfWZ1bmN0aW9uIE4oQSl7Zm9yKGxldCBlPTA7ZTxBLnJlbW92ZWQubGVuZ3RoO2UrKyl7Y29uc3QgdD1BLnJlbW92ZWRbZV0sbj1DLmluZGV4T2YodCk7bj49MCYmKENbbl09bnVsbCx3W25dLmRpc2Nvbm5lY3QodCkpfWZvcihsZXQgZT0wO2U8QS5hZGRlZC5sZW5ndGg7ZSsrKXtjb25zdCB0PUEuYWRkZWRbZV07bGV0IG49Qy5pbmRleE9mKHQpO2lmKC0xPT09bil7Zm9yKGxldCBBPTA7QTx3Lmxlbmd0aDtBKyspe2lmKEE+PUMubGVuZ3RoKXtDLnB1c2godCksbj1BO2JyZWFrfWlmKG51bGw9PT1DW0FdKXtDW0FdPXQsbj1BO2JyZWFrfX1pZigtMT09PW4pYnJlYWt9Y29uc3QgaT13W25dO2kmJmkuY29ubmVjdCh0KX19dGhpcy5jYW1lcmFBdXRvVXBkYXRlPSEwLHRoaXMuZW5hYmxlZD0hMSx0aGlzLmlzUHJlc2VudGluZz0hMSx0aGlzLmdldENhbWVyYT1mdW5jdGlvbigpe30sdGhpcy5zZXRVc2VyQ2FtZXJhPWZ1bmN0aW9uKEEpe0k9QX0sdGhpcy5nZXRDb250cm9sbGVyPWZ1bmN0aW9uKEEpe2xldCBlPXdbQV07cmV0dXJuIHZvaWQgMD09PWUmJihlPW5ldyBEYSx3W0FdPWUpLGUuZ2V0VGFyZ2V0UmF5U3BhY2UoKX0sdGhpcy5nZXRDb250cm9sbGVyR3JpcD1mdW5jdGlvbihBKXtsZXQgZT13W0FdO3JldHVybiB2b2lkIDA9PT1lJiYoZT1uZXcgRGEsd1tBXT1lKSxlLmdldEdyaXBTcGFjZSgpfSx0aGlzLmdldEhhbmQ9ZnVuY3Rpb24oQSl7bGV0IGU9d1tBXTtyZXR1cm4gdm9pZCAwPT09ZSYmKGU9bmV3IERhLHdbQV09ZSksZS5nZXRIYW5kU3BhY2UoKX0sdGhpcy5zZXRGcmFtZWJ1ZmZlclNjYWxlRmFjdG9yPWZ1bmN0aW9uKEEpe2k9QSwhMD09PXQuaXNQcmVzZW50aW5nJiZjb25zb2xlLndhcm4oIlRIUkVFLldlYlhSTWFuYWdlcjogQ2Fubm90IGNoYW5nZSBmcmFtZWJ1ZmZlciBzY2FsZSB3aGlsZSBwcmVzZW50aW5nLiIpfSx0aGlzLnNldFJlZmVyZW5jZVNwYWNlVHlwZT1mdW5jdGlvbihBKXtvPUEsITA9PT10LmlzUHJlc2VudGluZyYmY29uc29sZS53YXJuKCJUSFJFRS5XZWJYUk1hbmFnZXI6IENhbm5vdCBjaGFuZ2UgcmVmZXJlbmNlIHNwYWNlIHR5cGUgd2hpbGUgcHJlc2VudGluZy4iKX0sdGhpcy5nZXRSZWZlcmVuY2VTcGFjZT1mdW5jdGlvbigpe3JldHVybiBhfHxyfSx0aGlzLnNldFJlZmVyZW5jZVNwYWNlPWZ1bmN0aW9uKEEpe2E9QX0sdGhpcy5nZXRCYXNlTGF5ZXI9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbCE9PWc/ZzpFfSx0aGlzLmdldEJpbmRpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gY30sdGhpcy5nZXRGcmFtZT1mdW5jdGlvbigpe3JldHVybiBRfSx0aGlzLmdldFNlc3Npb249ZnVuY3Rpb24oKXtyZXR1cm4gbn0sdGhpcy5zZXRTZXNzaW9uPWFzeW5jIGZ1bmN0aW9uKEIpe2lmKG49QixudWxsIT09bil7aWYobD1BLmdldFJlbmRlclRhcmdldCgpLG4uYWRkRXZlbnRMaXN0ZW5lcigic2VsZWN0IixZKSxuLmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdHN0YXJ0IixZKSxuLmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdGVuZCIsWSksbi5hZGRFdmVudExpc3RlbmVyKCJzcXVlZXplIixZKSxuLmFkZEV2ZW50TGlzdGVuZXIoInNxdWVlemVzdGFydCIsWSksbi5hZGRFdmVudExpc3RlbmVyKCJzcXVlZXplZW5kIixZKSxuLmFkZEV2ZW50TGlzdGVuZXIoImVuZCIsZiksbi5hZGRFdmVudExpc3RlbmVyKCJpbnB1dHNvdXJjZXNjaGFuZ2UiLE4pLCEwIT09dS54ckNvbXBhdGlibGUmJmF3YWl0IGUubWFrZVhSQ29tcGF0aWJsZSgpLHZvaWQgMD09PW4ucmVuZGVyU3RhdGUubGF5ZXJzfHwhMT09PUEuY2FwYWJpbGl0aWVzLmlzV2ViR0wyKXtjb25zdCB0PXthbnRpYWxpYXM6dm9pZCAwIT09bi5yZW5kZXJTdGF0ZS5sYXllcnN8fHUuYW50aWFsaWFzLGFscGhhOiEwLGRlcHRoOnUuZGVwdGgsc3RlbmNpbDp1LnN0ZW5jaWwsZnJhbWVidWZmZXJTY2FsZUZhY3RvcjppfTtFPW5ldyBYUldlYkdMTGF5ZXIobixlLHQpLG4udXBkYXRlUmVuZGVyU3RhdGUoe2Jhc2VMYXllcjpFfSksaD1uZXcgdW4oRS5mcmFtZWJ1ZmZlcldpZHRoLEUuZnJhbWVidWZmZXJIZWlnaHQse2Zvcm1hdDpHQSx0eXBlOnBBLGNvbG9yU3BhY2U6QS5vdXRwdXRDb2xvclNwYWNlLHN0ZW5jaWxCdWZmZXI6dS5zdGVuY2lsfSl9ZWxzZXtsZXQgdD1udWxsLHI9bnVsbCxvPW51bGw7dS5kZXB0aCYmKG89dS5zdGVuY2lsP2UuREVQVEgyNF9TVEVOQ0lMODplLkRFUFRIX0NPTVBPTkVOVDI0LHQ9dS5zdGVuY2lsP3ZBOkhBLHI9dS5zdGVuY2lsP3hBOmZBKTtjb25zdCBzPXtjb2xvckZvcm1hdDplLlJHQkE4LGRlcHRoRm9ybWF0Om8sc2NhbGVGYWN0b3I6aX07Yz1uZXcgWFJXZWJHTEJpbmRpbmcobixlKSxnPWMuY3JlYXRlUHJvamVjdGlvbkxheWVyKHMpLG4udXBkYXRlUmVuZGVyU3RhdGUoe2xheWVyczpbZ119KSxoPW5ldyB1bihnLnRleHR1cmVXaWR0aCxnLnRleHR1cmVIZWlnaHQse2Zvcm1hdDpHQSx0eXBlOnBBLGRlcHRoVGV4dHVyZTpuZXcgWWEoZy50ZXh0dXJlV2lkdGgsZy50ZXh0dXJlSGVpZ2h0LHIsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdCksc3RlbmNpbEJ1ZmZlcjp1LnN0ZW5jaWwsY29sb3JTcGFjZTpBLm91dHB1dENvbG9yU3BhY2Usc2FtcGxlczp1LmFudGlhbGlhcz80OjB9KTtBLnByb3BlcnRpZXMuZ2V0KGgpLl9faWdub3JlRGVwdGhWYWx1ZXM9Zy5pZ25vcmVEZXB0aFZhbHVlc31oLmlzWFJSZW5kZXJUYXJnZXQ9ITAsdGhpcy5zZXRGb3ZlYXRpb24ocyksYT1udWxsLHI9YXdhaXQgbi5yZXF1ZXN0UmVmZXJlbmNlU3BhY2UobyksUi5zZXRDb250ZXh0KG4pLFIuc3RhcnQoKSx0LmlzUHJlc2VudGluZz0hMCx0LmRpc3BhdGNoRXZlbnQoe3R5cGU6InNlc3Npb25zdGFydCJ9KX19LHRoaXMuZ2V0RW52aXJvbm1lbnRCbGVuZE1vZGU9ZnVuY3Rpb24oKXtpZihudWxsIT09bilyZXR1cm4gbi5lbnZpcm9ubWVudEJsZW5kTW9kZX07Y29uc3QgVT1uZXcgZG4seT1uZXcgZG47ZnVuY3Rpb24gVChBLGUpe251bGw9PT1lP0EubWF0cml4V29ybGQuY29weShBLm1hdHJpeCk6QS5tYXRyaXhXb3JsZC5tdWx0aXBseU1hdHJpY2VzKGUubWF0cml4V29ybGQsQS5tYXRyaXgpLEEubWF0cml4V29ybGRJbnZlcnNlLmNvcHkoQS5tYXRyaXhXb3JsZCkuaW52ZXJ0KCl9dGhpcy51cGRhdGVDYW1lcmFYUj1mdW5jdGlvbihBKXtpZihudWxsPT09bilyZXR1cm4gQTtJJiYoQT1JKSxtLm5lYXI9ZC5uZWFyPU0ubmVhcj1BLm5lYXIsbS5mYXI9ZC5mYXI9TS5mYXI9QS5mYXIsRj09PW0ubmVhciYmRD09PW0uZmFyfHwobi51cGRhdGVSZW5kZXJTdGF0ZSh7ZGVwdGhOZWFyOm0ubmVhcixkZXB0aEZhcjptLmZhcn0pLEY9bS5uZWFyLEQ9bS5mYXIpO2NvbnN0IGU9QS5wYXJlbnQsdD1tLmNhbWVyYXM7VChtLGUpO2ZvcihsZXQgQT0wO0E8dC5sZW5ndGg7QSsrKVQodFtBXSxlKTtyZXR1cm4gMj09PXQubGVuZ3RoP2Z1bmN0aW9uKEEsZSx0KXtVLnNldEZyb21NYXRyaXhQb3NpdGlvbihlLm1hdHJpeFdvcmxkKSx5LnNldEZyb21NYXRyaXhQb3NpdGlvbih0Lm1hdHJpeFdvcmxkKTtjb25zdCBuPVUuZGlzdGFuY2VUbyh5KSxpPWUucHJvamVjdGlvbk1hdHJpeC5lbGVtZW50cyxyPXQucHJvamVjdGlvbk1hdHJpeC5lbGVtZW50cyxvPWlbMTRdLyhpWzEwXS0xKSxzPWlbMTRdLyhpWzEwXSsxKSxhPShpWzldKzEpL2lbNV0sQj0oaVs5XS0xKS9pWzVdLGM9KGlbOF0tMSkvaVswXSxnPShyWzhdKzEpL3JbMF0sRT1vKmMsUT1vKmcsdT1uLygtYytnKSxsPXUqLWM7ZS5tYXRyaXhXb3JsZC5kZWNvbXBvc2UoQS5wb3NpdGlvbixBLnF1YXRlcm5pb24sQS5zY2FsZSksQS50cmFuc2xhdGVYKGwpLEEudHJhbnNsYXRlWih1KSxBLm1hdHJpeFdvcmxkLmNvbXBvc2UoQS5wb3NpdGlvbixBLnF1YXRlcm5pb24sQS5zY2FsZSksQS5tYXRyaXhXb3JsZEludmVyc2UuY29weShBLm1hdHJpeFdvcmxkKS5pbnZlcnQoKTtjb25zdCBoPW8rdSx3PXMrdSxDPUUtbCxJPVErKG4tbCksTT1hKnMvdypoLGQ9QipzL3cqaDtBLnByb2plY3Rpb25NYXRyaXgubWFrZVBlcnNwZWN0aXZlKEMsSSxNLGQsaCx3KSxBLnByb2plY3Rpb25NYXRyaXhJbnZlcnNlLmNvcHkoQS5wcm9qZWN0aW9uTWF0cml4KS5pbnZlcnQoKX0obSxNLGQpOm0ucHJvamVjdGlvbk1hdHJpeC5jb3B5KE0ucHJvamVjdGlvbk1hdHJpeCksSSYmZnVuY3Rpb24oQSxlKXtjb25zdCB0PUk7bnVsbD09PWU/dC5tYXRyaXguY29weShBLm1hdHJpeFdvcmxkKToodC5tYXRyaXguY29weShlLm1hdHJpeFdvcmxkKSx0Lm1hdHJpeC5pbnZlcnQoKSx0Lm1hdHJpeC5tdWx0aXBseShBLm1hdHJpeFdvcmxkKSk7dC5tYXRyaXguZGVjb21wb3NlKHQucG9zaXRpb24sdC5xdWF0ZXJuaW9uLHQuc2NhbGUpLHQudXBkYXRlTWF0cml4V29ybGQoITApO2NvbnN0IG49dC5jaGlsZHJlbjtmb3IobGV0IEE9MCxlPW4ubGVuZ3RoO0E8ZTtBKyspbltBXS51cGRhdGVNYXRyaXhXb3JsZCghMCk7dC5wcm9qZWN0aW9uTWF0cml4LmNvcHkoQS5wcm9qZWN0aW9uTWF0cml4KSx0LnByb2plY3Rpb25NYXRyaXhJbnZlcnNlLmNvcHkoQS5wcm9qZWN0aW9uTWF0cml4SW52ZXJzZSksdC5pc1BlcnNwZWN0aXZlQ2FtZXJhJiYodC5mb3Y9Mip4dCpNYXRoLmF0YW4oMS90LnByb2plY3Rpb25NYXRyaXguZWxlbWVudHNbNV0pLHQuem9vbT0xKX0obSxlKSxtfSx0aGlzLmdldEZvdmVhdGlvbj1mdW5jdGlvbigpe2lmKG51bGwhPT1nfHxudWxsIT09RSlyZXR1cm4gc30sdGhpcy5zZXRGb3ZlYXRpb249ZnVuY3Rpb24oQSl7cz1BLG51bGwhPT1nJiYoZy5maXhlZEZvdmVhdGlvbj1BKSxudWxsIT09RSYmdm9pZCAwIT09RS5maXhlZEZvdmVhdGlvbiYmKEUuZml4ZWRGb3ZlYXRpb249QSl9O2xldCB4PW51bGw7Y29uc3QgUj1uZXcgJHI7Ui5zZXRBbmltYXRpb25Mb29wKChmdW5jdGlvbihlLG4pe2lmKEI9bi5nZXRWaWV3ZXJQb3NlKGF8fHIpLFE9bixudWxsIT09Qil7Y29uc3QgZT1CLnZpZXdzO251bGwhPT1FJiYoQS5zZXRSZW5kZXJUYXJnZXRGcmFtZWJ1ZmZlcihoLEUuZnJhbWVidWZmZXIpLEEuc2V0UmVuZGVyVGFyZ2V0KGgpKTtsZXQgdD0hMTtlLmxlbmd0aCE9PW0uY2FtZXJhcy5sZW5ndGgmJihtLmNhbWVyYXMubGVuZ3RoPTAsdD0hMCk7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspe2NvbnN0IGk9ZVtuXTtsZXQgcj1udWxsO2lmKG51bGwhPT1FKXI9RS5nZXRWaWV3cG9ydChpKTtlbHNle2NvbnN0IGU9Yy5nZXRWaWV3U3ViSW1hZ2UoZyxpKTtyPWUudmlld3BvcnQsMD09PW4mJihBLnNldFJlbmRlclRhcmdldFRleHR1cmVzKGgsZS5jb2xvclRleHR1cmUsZy5pZ25vcmVEZXB0aFZhbHVlcz92b2lkIDA6ZS5kZXB0aFN0ZW5jaWxUZXh0dXJlKSxBLnNldFJlbmRlclRhcmdldChoKSl9bGV0IG89cFtuXTt2b2lkIDA9PT1vJiYobz1uZXcgenIsby5sYXllcnMuZW5hYmxlKG4pLG8udmlld3BvcnQ9bmV3IFFuLHBbbl09byksby5tYXRyaXguZnJvbUFycmF5KGkudHJhbnNmb3JtLm1hdHJpeCksby5tYXRyaXguZGVjb21wb3NlKG8ucG9zaXRpb24sby5xdWF0ZXJuaW9uLG8uc2NhbGUpLG8ucHJvamVjdGlvbk1hdHJpeC5mcm9tQXJyYXkoaS5wcm9qZWN0aW9uTWF0cml4KSxvLnByb2plY3Rpb25NYXRyaXhJbnZlcnNlLmNvcHkoby5wcm9qZWN0aW9uTWF0cml4KS5pbnZlcnQoKSxvLnZpZXdwb3J0LnNldChyLngsci55LHIud2lkdGgsci5oZWlnaHQpLDA9PT1uJiYobS5tYXRyaXguY29weShvLm1hdHJpeCksbS5tYXRyaXguZGVjb21wb3NlKG0ucG9zaXRpb24sbS5xdWF0ZXJuaW9uLG0uc2NhbGUpKSwhMD09PXQmJm0uY2FtZXJhcy5wdXNoKG8pfX1mb3IobGV0IEE9MDtBPHcubGVuZ3RoO0ErKyl7Y29uc3QgZT1DW0FdLHQ9d1tBXTtudWxsIT09ZSYmdm9pZCAwIT09dCYmdC51cGRhdGUoZSxuLGF8fHIpfXgmJngoZSxuKSxuLmRldGVjdGVkUGxhbmVzJiZ0LmRpc3BhdGNoRXZlbnQoe3R5cGU6InBsYW5lc2RldGVjdGVkIixkYXRhOm59KSxRPW51bGx9KSksdGhpcy5zZXRBbmltYXRpb25Mb29wPWZ1bmN0aW9uKEEpe3g9QX0sdGhpcy5kaXNwb3NlPWZ1bmN0aW9uKCl7fX19ZnVuY3Rpb24gTmEoQSxlKXtmdW5jdGlvbiB0KEEsZSl7ITA9PT1BLm1hdHJpeEF1dG9VcGRhdGUmJkEudXBkYXRlTWF0cml4KCksZS52YWx1ZS5jb3B5KEEubWF0cml4KX1mdW5jdGlvbiBuKG4saSl7bi5vcGFjaXR5LnZhbHVlPWkub3BhY2l0eSxpLmNvbG9yJiZuLmRpZmZ1c2UudmFsdWUuY29weShpLmNvbG9yKSxpLmVtaXNzaXZlJiZuLmVtaXNzaXZlLnZhbHVlLmNvcHkoaS5lbWlzc2l2ZSkubXVsdGlwbHlTY2FsYXIoaS5lbWlzc2l2ZUludGVuc2l0eSksaS5tYXAmJihuLm1hcC52YWx1ZT1pLm1hcCx0KGkubWFwLG4ubWFwVHJhbnNmb3JtKSksaS5hbHBoYU1hcCYmKG4uYWxwaGFNYXAudmFsdWU9aS5hbHBoYU1hcCx0KGkuYWxwaGFNYXAsbi5hbHBoYU1hcFRyYW5zZm9ybSkpLGkuYnVtcE1hcCYmKG4uYnVtcE1hcC52YWx1ZT1pLmJ1bXBNYXAsdChpLmJ1bXBNYXAsbi5idW1wTWFwVHJhbnNmb3JtKSxuLmJ1bXBTY2FsZS52YWx1ZT1pLmJ1bXBTY2FsZSxpLnNpZGU9PT1sJiYobi5idW1wU2NhbGUudmFsdWUqPS0xKSksaS5ub3JtYWxNYXAmJihuLm5vcm1hbE1hcC52YWx1ZT1pLm5vcm1hbE1hcCx0KGkubm9ybWFsTWFwLG4ubm9ybWFsTWFwVHJhbnNmb3JtKSxuLm5vcm1hbFNjYWxlLnZhbHVlLmNvcHkoaS5ub3JtYWxTY2FsZSksaS5zaWRlPT09bCYmbi5ub3JtYWxTY2FsZS52YWx1ZS5uZWdhdGUoKSksaS5kaXNwbGFjZW1lbnRNYXAmJihuLmRpc3BsYWNlbWVudE1hcC52YWx1ZT1pLmRpc3BsYWNlbWVudE1hcCx0KGkuZGlzcGxhY2VtZW50TWFwLG4uZGlzcGxhY2VtZW50TWFwVHJhbnNmb3JtKSxuLmRpc3BsYWNlbWVudFNjYWxlLnZhbHVlPWkuZGlzcGxhY2VtZW50U2NhbGUsbi5kaXNwbGFjZW1lbnRCaWFzLnZhbHVlPWkuZGlzcGxhY2VtZW50QmlhcyksaS5lbWlzc2l2ZU1hcCYmKG4uZW1pc3NpdmVNYXAudmFsdWU9aS5lbWlzc2l2ZU1hcCx0KGkuZW1pc3NpdmVNYXAsbi5lbWlzc2l2ZU1hcFRyYW5zZm9ybSkpLGkuc3BlY3VsYXJNYXAmJihuLnNwZWN1bGFyTWFwLnZhbHVlPWkuc3BlY3VsYXJNYXAsdChpLnNwZWN1bGFyTWFwLG4uc3BlY3VsYXJNYXBUcmFuc2Zvcm0pKSxpLmFscGhhVGVzdD4wJiYobi5hbHBoYVRlc3QudmFsdWU9aS5hbHBoYVRlc3QpO2NvbnN0IHI9ZS5nZXQoaSkuZW52TWFwO2lmKHImJihuLmVudk1hcC52YWx1ZT1yLG4uZmxpcEVudk1hcC52YWx1ZT1yLmlzQ3ViZVRleHR1cmUmJiExPT09ci5pc1JlbmRlclRhcmdldFRleHR1cmU/LTE6MSxuLnJlZmxlY3Rpdml0eS52YWx1ZT1pLnJlZmxlY3Rpdml0eSxuLmlvci52YWx1ZT1pLmlvcixuLnJlZnJhY3Rpb25SYXRpby52YWx1ZT1pLnJlZnJhY3Rpb25SYXRpbyksaS5saWdodE1hcCl7bi5saWdodE1hcC52YWx1ZT1pLmxpZ2h0TWFwO2NvbnN0IGU9ITA9PT1BLnVzZUxlZ2FjeUxpZ2h0cz9NYXRoLlBJOjE7bi5saWdodE1hcEludGVuc2l0eS52YWx1ZT1pLmxpZ2h0TWFwSW50ZW5zaXR5KmUsdChpLmxpZ2h0TWFwLG4ubGlnaHRNYXBUcmFuc2Zvcm0pfWkuYW9NYXAmJihuLmFvTWFwLnZhbHVlPWkuYW9NYXAsbi5hb01hcEludGVuc2l0eS52YWx1ZT1pLmFvTWFwSW50ZW5zaXR5LHQoaS5hb01hcCxuLmFvTWFwVHJhbnNmb3JtKSl9cmV0dXJue3JlZnJlc2hGb2dVbmlmb3JtczpmdW5jdGlvbihlLHQpe3QuY29sb3IuZ2V0UkdCKGUuZm9nQ29sb3IudmFsdWUsdnIoQSkpLHQuaXNGb2c/KGUuZm9nTmVhci52YWx1ZT10Lm5lYXIsZS5mb2dGYXIudmFsdWU9dC5mYXIpOnQuaXNGb2dFeHAyJiYoZS5mb2dEZW5zaXR5LnZhbHVlPXQuZGVuc2l0eSl9LHJlZnJlc2hNYXRlcmlhbFVuaWZvcm1zOmZ1bmN0aW9uKEEsaSxyLG8scyl7aS5pc01lc2hCYXNpY01hdGVyaWFsfHxpLmlzTWVzaExhbWJlcnRNYXRlcmlhbD9uKEEsaSk6aS5pc01lc2hUb29uTWF0ZXJpYWw/KG4oQSxpKSxmdW5jdGlvbihBLGUpe2UuZ3JhZGllbnRNYXAmJihBLmdyYWRpZW50TWFwLnZhbHVlPWUuZ3JhZGllbnRNYXApfShBLGkpKTppLmlzTWVzaFBob25nTWF0ZXJpYWw/KG4oQSxpKSxmdW5jdGlvbihBLGUpe0Euc3BlY3VsYXIudmFsdWUuY29weShlLnNwZWN1bGFyKSxBLnNoaW5pbmVzcy52YWx1ZT1NYXRoLm1heChlLnNoaW5pbmVzcywxZS00KX0oQSxpKSk6aS5pc01lc2hTdGFuZGFyZE1hdGVyaWFsPyhuKEEsaSksZnVuY3Rpb24oQSxuKXtBLm1ldGFsbmVzcy52YWx1ZT1uLm1ldGFsbmVzcyxuLm1ldGFsbmVzc01hcCYmKEEubWV0YWxuZXNzTWFwLnZhbHVlPW4ubWV0YWxuZXNzTWFwLHQobi5tZXRhbG5lc3NNYXAsQS5tZXRhbG5lc3NNYXBUcmFuc2Zvcm0pKTtBLnJvdWdobmVzcy52YWx1ZT1uLnJvdWdobmVzcyxuLnJvdWdobmVzc01hcCYmKEEucm91Z2huZXNzTWFwLnZhbHVlPW4ucm91Z2huZXNzTWFwLHQobi5yb3VnaG5lc3NNYXAsQS5yb3VnaG5lc3NNYXBUcmFuc2Zvcm0pKTtlLmdldChuKS5lbnZNYXAmJihBLmVudk1hcEludGVuc2l0eS52YWx1ZT1uLmVudk1hcEludGVuc2l0eSl9KEEsaSksaS5pc01lc2hQaHlzaWNhbE1hdGVyaWFsJiZmdW5jdGlvbihBLGUsbil7QS5pb3IudmFsdWU9ZS5pb3IsZS5zaGVlbj4wJiYoQS5zaGVlbkNvbG9yLnZhbHVlLmNvcHkoZS5zaGVlbkNvbG9yKS5tdWx0aXBseVNjYWxhcihlLnNoZWVuKSxBLnNoZWVuUm91Z2huZXNzLnZhbHVlPWUuc2hlZW5Sb3VnaG5lc3MsZS5zaGVlbkNvbG9yTWFwJiYoQS5zaGVlbkNvbG9yTWFwLnZhbHVlPWUuc2hlZW5Db2xvck1hcCx0KGUuc2hlZW5Db2xvck1hcCxBLnNoZWVuQ29sb3JNYXBUcmFuc2Zvcm0pKSxlLnNoZWVuUm91Z2huZXNzTWFwJiYoQS5zaGVlblJvdWdobmVzc01hcC52YWx1ZT1lLnNoZWVuUm91Z2huZXNzTWFwLHQoZS5zaGVlblJvdWdobmVzc01hcCxBLnNoZWVuUm91Z2huZXNzTWFwVHJhbnNmb3JtKSkpO2UuY2xlYXJjb2F0PjAmJihBLmNsZWFyY29hdC52YWx1ZT1lLmNsZWFyY29hdCxBLmNsZWFyY29hdFJvdWdobmVzcy52YWx1ZT1lLmNsZWFyY29hdFJvdWdobmVzcyxlLmNsZWFyY29hdE1hcCYmKEEuY2xlYXJjb2F0TWFwLnZhbHVlPWUuY2xlYXJjb2F0TWFwLHQoZS5jbGVhcmNvYXRNYXAsQS5jbGVhcmNvYXRNYXBUcmFuc2Zvcm0pKSxlLmNsZWFyY29hdFJvdWdobmVzc01hcCYmKEEuY2xlYXJjb2F0Um91Z2huZXNzTWFwLnZhbHVlPWUuY2xlYXJjb2F0Um91Z2huZXNzTWFwLHQoZS5jbGVhcmNvYXRSb3VnaG5lc3NNYXAsQS5jbGVhcmNvYXRSb3VnaG5lc3NNYXBUcmFuc2Zvcm0pKSxlLmNsZWFyY29hdE5vcm1hbE1hcCYmKEEuY2xlYXJjb2F0Tm9ybWFsTWFwLnZhbHVlPWUuY2xlYXJjb2F0Tm9ybWFsTWFwLHQoZS5jbGVhcmNvYXROb3JtYWxNYXAsQS5jbGVhcmNvYXROb3JtYWxNYXBUcmFuc2Zvcm0pLEEuY2xlYXJjb2F0Tm9ybWFsU2NhbGUudmFsdWUuY29weShlLmNsZWFyY29hdE5vcm1hbFNjYWxlKSxlLnNpZGU9PT1sJiZBLmNsZWFyY29hdE5vcm1hbFNjYWxlLnZhbHVlLm5lZ2F0ZSgpKSk7ZS5pcmlkZXNjZW5jZT4wJiYoQS5pcmlkZXNjZW5jZS52YWx1ZT1lLmlyaWRlc2NlbmNlLEEuaXJpZGVzY2VuY2VJT1IudmFsdWU9ZS5pcmlkZXNjZW5jZUlPUixBLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWluaW11bS52YWx1ZT1lLmlyaWRlc2NlbmNlVGhpY2tuZXNzUmFuZ2VbMF0sQS5pcmlkZXNjZW5jZVRoaWNrbmVzc01heGltdW0udmFsdWU9ZS5pcmlkZXNjZW5jZVRoaWNrbmVzc1JhbmdlWzFdLGUuaXJpZGVzY2VuY2VNYXAmJihBLmlyaWRlc2NlbmNlTWFwLnZhbHVlPWUuaXJpZGVzY2VuY2VNYXAsdChlLmlyaWRlc2NlbmNlTWFwLEEuaXJpZGVzY2VuY2VNYXBUcmFuc2Zvcm0pKSxlLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwJiYoQS5pcmlkZXNjZW5jZVRoaWNrbmVzc01hcC52YWx1ZT1lLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwLHQoZS5pcmlkZXNjZW5jZVRoaWNrbmVzc01hcCxBLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwVHJhbnNmb3JtKSkpO2UudHJhbnNtaXNzaW9uPjAmJihBLnRyYW5zbWlzc2lvbi52YWx1ZT1lLnRyYW5zbWlzc2lvbixBLnRyYW5zbWlzc2lvblNhbXBsZXJNYXAudmFsdWU9bi50ZXh0dXJlLEEudHJhbnNtaXNzaW9uU2FtcGxlclNpemUudmFsdWUuc2V0KG4ud2lkdGgsbi5oZWlnaHQpLGUudHJhbnNtaXNzaW9uTWFwJiYoQS50cmFuc21pc3Npb25NYXAudmFsdWU9ZS50cmFuc21pc3Npb25NYXAsdChlLnRyYW5zbWlzc2lvbk1hcCxBLnRyYW5zbWlzc2lvbk1hcFRyYW5zZm9ybSkpLEEudGhpY2tuZXNzLnZhbHVlPWUudGhpY2tuZXNzLGUudGhpY2tuZXNzTWFwJiYoQS50aGlja25lc3NNYXAudmFsdWU9ZS50aGlja25lc3NNYXAsdChlLnRoaWNrbmVzc01hcCxBLnRoaWNrbmVzc01hcFRyYW5zZm9ybSkpLEEuYXR0ZW51YXRpb25EaXN0YW5jZS52YWx1ZT1lLmF0dGVudWF0aW9uRGlzdGFuY2UsQS5hdHRlbnVhdGlvbkNvbG9yLnZhbHVlLmNvcHkoZS5hdHRlbnVhdGlvbkNvbG9yKSk7ZS5hbmlzb3Ryb3B5PjAmJihBLmFuaXNvdHJvcHlWZWN0b3IudmFsdWUuc2V0KGUuYW5pc290cm9weSpNYXRoLmNvcyhlLmFuaXNvdHJvcHlSb3RhdGlvbiksZS5hbmlzb3Ryb3B5Kk1hdGguc2luKGUuYW5pc290cm9weVJvdGF0aW9uKSksZS5hbmlzb3Ryb3B5TWFwJiYoQS5hbmlzb3Ryb3B5TWFwLnZhbHVlPWUuYW5pc290cm9weU1hcCx0KGUuYW5pc290cm9weU1hcCxBLmFuaXNvdHJvcHlNYXBUcmFuc2Zvcm0pKSk7QS5zcGVjdWxhckludGVuc2l0eS52YWx1ZT1lLnNwZWN1bGFySW50ZW5zaXR5LEEuc3BlY3VsYXJDb2xvci52YWx1ZS5jb3B5KGUuc3BlY3VsYXJDb2xvciksZS5zcGVjdWxhckNvbG9yTWFwJiYoQS5zcGVjdWxhckNvbG9yTWFwLnZhbHVlPWUuc3BlY3VsYXJDb2xvck1hcCx0KGUuc3BlY3VsYXJDb2xvck1hcCxBLnNwZWN1bGFyQ29sb3JNYXBUcmFuc2Zvcm0pKTtlLnNwZWN1bGFySW50ZW5zaXR5TWFwJiYoQS5zcGVjdWxhckludGVuc2l0eU1hcC52YWx1ZT1lLnNwZWN1bGFySW50ZW5zaXR5TWFwLHQoZS5zcGVjdWxhckludGVuc2l0eU1hcCxBLnNwZWN1bGFySW50ZW5zaXR5TWFwVHJhbnNmb3JtKSl9KEEsaSxzKSk6aS5pc01lc2hNYXRjYXBNYXRlcmlhbD8obihBLGkpLGZ1bmN0aW9uKEEsZSl7ZS5tYXRjYXAmJihBLm1hdGNhcC52YWx1ZT1lLm1hdGNhcCl9KEEsaSkpOmkuaXNNZXNoRGVwdGhNYXRlcmlhbD9uKEEsaSk6aS5pc01lc2hEaXN0YW5jZU1hdGVyaWFsPyhuKEEsaSksZnVuY3Rpb24oQSx0KXtjb25zdCBuPWUuZ2V0KHQpLmxpZ2h0O0EucmVmZXJlbmNlUG9zaXRpb24udmFsdWUuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKG4ubWF0cml4V29ybGQpLEEubmVhckRpc3RhbmNlLnZhbHVlPW4uc2hhZG93LmNhbWVyYS5uZWFyLEEuZmFyRGlzdGFuY2UudmFsdWU9bi5zaGFkb3cuY2FtZXJhLmZhcn0oQSxpKSk6aS5pc01lc2hOb3JtYWxNYXRlcmlhbD9uKEEsaSk6aS5pc0xpbmVCYXNpY01hdGVyaWFsPyhmdW5jdGlvbihBLGUpe0EuZGlmZnVzZS52YWx1ZS5jb3B5KGUuY29sb3IpLEEub3BhY2l0eS52YWx1ZT1lLm9wYWNpdHksZS5tYXAmJihBLm1hcC52YWx1ZT1lLm1hcCx0KGUubWFwLEEubWFwVHJhbnNmb3JtKSl9KEEsaSksaS5pc0xpbmVEYXNoZWRNYXRlcmlhbCYmZnVuY3Rpb24oQSxlKXtBLmRhc2hTaXplLnZhbHVlPWUuZGFzaFNpemUsQS50b3RhbFNpemUudmFsdWU9ZS5kYXNoU2l6ZStlLmdhcFNpemUsQS5zY2FsZS52YWx1ZT1lLnNjYWxlfShBLGkpKTppLmlzUG9pbnRzTWF0ZXJpYWw/ZnVuY3Rpb24oQSxlLG4saSl7QS5kaWZmdXNlLnZhbHVlLmNvcHkoZS5jb2xvciksQS5vcGFjaXR5LnZhbHVlPWUub3BhY2l0eSxBLnNpemUudmFsdWU9ZS5zaXplKm4sQS5zY2FsZS52YWx1ZT0uNSppLGUubWFwJiYoQS5tYXAudmFsdWU9ZS5tYXAsdChlLm1hcCxBLnV2VHJhbnNmb3JtKSk7ZS5hbHBoYU1hcCYmKEEuYWxwaGFNYXAudmFsdWU9ZS5hbHBoYU1hcCx0KGUuYWxwaGFNYXAsQS5hbHBoYU1hcFRyYW5zZm9ybSkpO2UuYWxwaGFUZXN0PjAmJihBLmFscGhhVGVzdC52YWx1ZT1lLmFscGhhVGVzdCl9KEEsaSxyLG8pOmkuaXNTcHJpdGVNYXRlcmlhbD9mdW5jdGlvbihBLGUpe0EuZGlmZnVzZS52YWx1ZS5jb3B5KGUuY29sb3IpLEEub3BhY2l0eS52YWx1ZT1lLm9wYWNpdHksQS5yb3RhdGlvbi52YWx1ZT1lLnJvdGF0aW9uLGUubWFwJiYoQS5tYXAudmFsdWU9ZS5tYXAsdChlLm1hcCxBLm1hcFRyYW5zZm9ybSkpO2UuYWxwaGFNYXAmJihBLmFscGhhTWFwLnZhbHVlPWUuYWxwaGFNYXAsdChlLmFscGhhTWFwLEEuYWxwaGFNYXBUcmFuc2Zvcm0pKTtlLmFscGhhVGVzdD4wJiYoQS5hbHBoYVRlc3QudmFsdWU9ZS5hbHBoYVRlc3QpfShBLGkpOmkuaXNTaGFkb3dNYXRlcmlhbD8oQS5jb2xvci52YWx1ZS5jb3B5KGkuY29sb3IpLEEub3BhY2l0eS52YWx1ZT1pLm9wYWNpdHkpOmkuaXNTaGFkZXJNYXRlcmlhbCYmKGkudW5pZm9ybXNOZWVkVXBkYXRlPSExKX19fWZ1bmN0aW9uIFVhKEEsZSx0LG4pe2xldCBpPXt9LHI9e30sbz1bXTtjb25zdCBzPXQuaXNXZWJHTDI/QS5nZXRQYXJhbWV0ZXIoQS5NQVhfVU5JRk9STV9CVUZGRVJfQklORElOR1MpOjA7ZnVuY3Rpb24gYShBLGUsdCl7Y29uc3Qgbj1BLnZhbHVlO2lmKHZvaWQgMD09PXRbZV0pe2lmKCJudW1iZXIiPT10eXBlb2Ygbil0W2VdPW47ZWxzZXtjb25zdCBBPUFycmF5LmlzQXJyYXkobik/bjpbbl0saT1bXTtmb3IobGV0IGU9MDtlPEEubGVuZ3RoO2UrKylpLnB1c2goQVtlXS5jbG9uZSgpKTt0W2VdPWl9cmV0dXJuITB9aWYoIm51bWJlciI9PXR5cGVvZiBuKXtpZih0W2VdIT09bilyZXR1cm4gdFtlXT1uLCEwfWVsc2V7Y29uc3QgQT1BcnJheS5pc0FycmF5KHRbZV0pP3RbZV06W3RbZV1dLGk9QXJyYXkuaXNBcnJheShuKT9uOltuXTtmb3IobGV0IGU9MDtlPEEubGVuZ3RoO2UrKyl7Y29uc3QgdD1BW2VdO2lmKCExPT09dC5lcXVhbHMoaVtlXSkpcmV0dXJuIHQuY29weShpW2VdKSwhMH19cmV0dXJuITF9ZnVuY3Rpb24gQihBKXtjb25zdCBlPXtib3VuZGFyeTowLHN0b3JhZ2U6MH07cmV0dXJuIm51bWJlciI9PXR5cGVvZiBBPyhlLmJvdW5kYXJ5PTQsZS5zdG9yYWdlPTQpOkEuaXNWZWN0b3IyPyhlLmJvdW5kYXJ5PTgsZS5zdG9yYWdlPTgpOkEuaXNWZWN0b3IzfHxBLmlzQ29sb3I/KGUuYm91bmRhcnk9MTYsZS5zdG9yYWdlPTEyKTpBLmlzVmVjdG9yND8oZS5ib3VuZGFyeT0xNixlLnN0b3JhZ2U9MTYpOkEuaXNNYXRyaXgzPyhlLmJvdW5kYXJ5PTQ4LGUuc3RvcmFnZT00OCk6QS5pc01hdHJpeDQ/KGUuYm91bmRhcnk9NjQsZS5zdG9yYWdlPTY0KTpBLmlzVGV4dHVyZT9jb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUmVuZGVyZXI6IFRleHR1cmUgc2FtcGxlcnMgY2FuIG5vdCBiZSBwYXJ0IG9mIGFuIHVuaWZvcm1zIGdyb3VwLiIpOmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogVW5zdXBwb3J0ZWQgdW5pZm9ybSB2YWx1ZSB0eXBlLiIsQSksZX1mdW5jdGlvbiBjKGUpe2NvbnN0IHQ9ZS50YXJnZXQ7dC5yZW1vdmVFdmVudExpc3RlbmVyKCJkaXNwb3NlIixjKTtjb25zdCBuPW8uaW5kZXhPZih0Ll9fYmluZGluZ1BvaW50SW5kZXgpO28uc3BsaWNlKG4sMSksQS5kZWxldGVCdWZmZXIoaVt0LmlkXSksZGVsZXRlIGlbdC5pZF0sZGVsZXRlIHJbdC5pZF19cmV0dXJue2JpbmQ6ZnVuY3Rpb24oQSxlKXtjb25zdCB0PWUucHJvZ3JhbTtuLnVuaWZvcm1CbG9ja0JpbmRpbmcoQSx0KX0sdXBkYXRlOmZ1bmN0aW9uKHQsZyl7bGV0IEU9aVt0LmlkXTt2b2lkIDA9PT1FJiYoIWZ1bmN0aW9uKEEpe2NvbnN0IGU9QS51bmlmb3JtcztsZXQgdD0wO2xldCBuPTA7Zm9yKGxldCBBPTAsaT1lLmxlbmd0aDtBPGk7QSsrKXtjb25zdCBpPWVbQV0scj17Ym91bmRhcnk6MCxzdG9yYWdlOjB9LG89QXJyYXkuaXNBcnJheShpLnZhbHVlKT9pLnZhbHVlOltpLnZhbHVlXTtmb3IobGV0IEE9MCxlPW8ubGVuZ3RoO0E8ZTtBKyspe2NvbnN0IGU9QihvW0FdKTtyLmJvdW5kYXJ5Kz1lLmJvdW5kYXJ5LHIuc3RvcmFnZSs9ZS5zdG9yYWdlfWlmKGkuX19kYXRhPW5ldyBGbG9hdDMyQXJyYXkoci5zdG9yYWdlL0Zsb2F0MzJBcnJheS5CWVRFU19QRVJfRUxFTUVOVCksaS5fX29mZnNldD10LEE+MCl7bj10JTE2O2NvbnN0IEE9MTYtbjswIT09biYmQS1yLmJvdW5kYXJ5PDAmJih0Kz0xNi1uLGkuX19vZmZzZXQ9dCl9dCs9ci5zdG9yYWdlfW49dCUxNixuPjAmJih0Kz0xNi1uKTtBLl9fc2l6ZT10LEEuX19jYWNoZT17fX0odCksRT1mdW5jdGlvbihlKXtjb25zdCB0PWZ1bmN0aW9uKCl7Zm9yKGxldCBBPTA7QTxzO0ErKylpZigtMT09PW8uaW5kZXhPZihBKSlyZXR1cm4gby5wdXNoKEEpLEE7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMUmVuZGVyZXI6IE1heGltdW0gbnVtYmVyIG9mIHNpbXVsdGFuZW91c2x5IHVzYWJsZSB1bmlmb3JtcyBncm91cHMgcmVhY2hlZC4iKSwwfSgpO2UuX19iaW5kaW5nUG9pbnRJbmRleD10O2NvbnN0IG49QS5jcmVhdGVCdWZmZXIoKSxpPWUuX19zaXplLHI9ZS51c2FnZTtyZXR1cm4gQS5iaW5kQnVmZmVyKEEuVU5JRk9STV9CVUZGRVIsbiksQS5idWZmZXJEYXRhKEEuVU5JRk9STV9CVUZGRVIsaSxyKSxBLmJpbmRCdWZmZXIoQS5VTklGT1JNX0JVRkZFUixudWxsKSxBLmJpbmRCdWZmZXJCYXNlKEEuVU5JRk9STV9CVUZGRVIsdCxuKSxufSh0KSxpW3QuaWRdPUUsdC5hZGRFdmVudExpc3RlbmVyKCJkaXNwb3NlIixjKSk7Y29uc3QgUT1nLnByb2dyYW07bi51cGRhdGVVQk9NYXBwaW5nKHQsUSk7Y29uc3QgdT1lLnJlbmRlci5mcmFtZTtyW3QuaWRdIT09dSYmKCFmdW5jdGlvbihlKXtjb25zdCB0PWlbZS5pZF0sbj1lLnVuaWZvcm1zLHI9ZS5fX2NhY2hlO0EuYmluZEJ1ZmZlcihBLlVOSUZPUk1fQlVGRkVSLHQpO2ZvcihsZXQgZT0wLHQ9bi5sZW5ndGg7ZTx0O2UrKyl7Y29uc3QgdD1uW2VdO2lmKCEwPT09YSh0LGUscikpe2NvbnN0IGU9dC5fX29mZnNldCxuPUFycmF5LmlzQXJyYXkodC52YWx1ZSk/dC52YWx1ZTpbdC52YWx1ZV07bGV0IGk9MDtmb3IobGV0IHI9MDtyPG4ubGVuZ3RoO3IrKyl7Y29uc3Qgbz1uW3JdLHM9QihvKTsibnVtYmVyIj09dHlwZW9mIG8/KHQuX19kYXRhWzBdPW8sQS5idWZmZXJTdWJEYXRhKEEuVU5JRk9STV9CVUZGRVIsZStpLHQuX19kYXRhKSk6by5pc01hdHJpeDM/KHQuX19kYXRhWzBdPW8uZWxlbWVudHNbMF0sdC5fX2RhdGFbMV09by5lbGVtZW50c1sxXSx0Ll9fZGF0YVsyXT1vLmVsZW1lbnRzWzJdLHQuX19kYXRhWzNdPW8uZWxlbWVudHNbMF0sdC5fX2RhdGFbNF09by5lbGVtZW50c1szXSx0Ll9fZGF0YVs1XT1vLmVsZW1lbnRzWzRdLHQuX19kYXRhWzZdPW8uZWxlbWVudHNbNV0sdC5fX2RhdGFbN109by5lbGVtZW50c1swXSx0Ll9fZGF0YVs4XT1vLmVsZW1lbnRzWzZdLHQuX19kYXRhWzldPW8uZWxlbWVudHNbN10sdC5fX2RhdGFbMTBdPW8uZWxlbWVudHNbOF0sdC5fX2RhdGFbMTFdPW8uZWxlbWVudHNbMF0pOihvLnRvQXJyYXkodC5fX2RhdGEsaSksaSs9cy5zdG9yYWdlL0Zsb2F0MzJBcnJheS5CWVRFU19QRVJfRUxFTUVOVCl9QS5idWZmZXJTdWJEYXRhKEEuVU5JRk9STV9CVUZGRVIsZSx0Ll9fZGF0YSl9fUEuYmluZEJ1ZmZlcihBLlVOSUZPUk1fQlVGRkVSLG51bGwpfSh0KSxyW3QuaWRdPXUpfSxkaXNwb3NlOmZ1bmN0aW9uKCl7Zm9yKGNvbnN0IGUgaW4gaSlBLmRlbGV0ZUJ1ZmZlcihpW2VdKTtvPVtdLGk9e30scj17fX19fWZ1bmN0aW9uIHlhKCl7Y29uc3QgQT1YdCgiY2FudmFzIik7cmV0dXJuIEEuc3R5bGUuZGlzcGxheT0iYmxvY2siLEF9Y2xhc3MgVGF7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e307Y29uc3R7Y2FudmFzOmU9eWEoKSxjb250ZXh0OnQ9bnVsbCxkZXB0aDppPSEwLHN0ZW5jaWw6cj0hMCxhbHBoYTpvPSExLGFudGlhbGlhczpzPSExLHByZW11bHRpcGxpZWRBbHBoYTphPSEwLHByZXNlcnZlRHJhd2luZ0J1ZmZlcjpCPSExLHBvd2VyUHJlZmVyZW5jZTpjPSJkZWZhdWx0IixmYWlsSWZNYWpvclBlcmZvcm1hbmNlQ2F2ZWF0Omc9ITF9PUE7bGV0IEU7dGhpcy5pc1dlYkdMUmVuZGVyZXI9ITAsRT1udWxsIT09dD90LmdldENvbnRleHRBdHRyaWJ1dGVzKCkuYWxwaGE6bztjb25zdCBRPW5ldyBVaW50MzJBcnJheSg0KSx3PW5ldyBJbnQzMkFycmF5KDQpO2xldCBDPW51bGwsST1udWxsO2NvbnN0IE09W10sZD1bXTt0aGlzLmRvbUVsZW1lbnQ9ZSx0aGlzLmRlYnVnPXtjaGVja1NoYWRlckVycm9yczohMCxvblNoYWRlckVycm9yOm51bGx9LHRoaXMuYXV0b0NsZWFyPSEwLHRoaXMuYXV0b0NsZWFyQ29sb3I9ITAsdGhpcy5hdXRvQ2xlYXJEZXB0aD0hMCx0aGlzLmF1dG9DbGVhclN0ZW5jaWw9ITAsdGhpcy5zb3J0T2JqZWN0cz0hMCx0aGlzLmNsaXBwaW5nUGxhbmVzPVtdLHRoaXMubG9jYWxDbGlwcGluZ0VuYWJsZWQ9ITEsdGhpcy5vdXRwdXRDb2xvclNwYWNlPUplLHRoaXMudXNlTGVnYWN5TGlnaHRzPSEwLHRoaXMudG9uZU1hcHBpbmc9Xyx0aGlzLnRvbmVNYXBwaW5nRXhwb3N1cmU9MTtjb25zdCBwPXRoaXM7bGV0IG09ITEsRj0wLEQ9MCxZPW51bGwsZj0tMSxOPW51bGw7Y29uc3QgVT1uZXcgUW4seT1uZXcgUW47bGV0IFQ9bnVsbDtjb25zdCB4PW5ldyBKaSgwKTtsZXQgUj0wLEc9ZS53aWR0aCxTPWUuaGVpZ2h0LGI9MSxIPW51bGwsdj1udWxsO2NvbnN0IGs9bmV3IFFuKDAsMCxHLFMpLGo9bmV3IFFuKDAsMCxHLFMpO2xldCBKPSExO2NvbnN0IHo9bmV3IHFyO2xldCBMPSExLFA9ITEsTz1udWxsO2NvbnN0IFY9bmV3IF9uLFc9bmV3IEx0LEs9bmV3IGRuLFg9e2JhY2tncm91bmQ6bnVsbCxmb2c6bnVsbCxlbnZpcm9ubWVudDpudWxsLG92ZXJyaWRlTWF0ZXJpYWw6bnVsbCxpc1NjZW5lOiEwfTtmdW5jdGlvbiBaKCl7cmV0dXJuIG51bGw9PT1ZP2I6MX1sZXQgcSwkLEFBLGVBLHRBLG5BLGlBLHJBLG9BLHNBLGFBLEJBLGNBLGdBLEVBLFFBLHVBLGxBLGhBLHdBLENBLElBLGRBLG1BLEZBPXQ7ZnVuY3Rpb24gWUEoQSx0KXtmb3IobGV0IG49MDtuPEEubGVuZ3RoO24rKyl7Y29uc3QgaT1BW25dLHI9ZS5nZXRDb250ZXh0KGksdCk7aWYobnVsbCE9PXIpcmV0dXJuIHJ9cmV0dXJuIG51bGx9dHJ5e2NvbnN0IEE9e2FscGhhOiEwLGRlcHRoOmksc3RlbmNpbDpyLGFudGlhbGlhczpzLHByZW11bHRpcGxpZWRBbHBoYTphLHByZXNlcnZlRHJhd2luZ0J1ZmZlcjpCLHBvd2VyUHJlZmVyZW5jZTpjLGZhaWxJZk1ham9yUGVyZm9ybWFuY2VDYXZlYXQ6Z307aWYoInNldEF0dHJpYnV0ZSJpbiBlJiZlLnNldEF0dHJpYnV0ZSgiZGF0YS1lbmdpbmUiLCJ0aHJlZS5qcyByIi5jb25jYXQobikpLGUuYWRkRXZlbnRMaXN0ZW5lcigid2ViZ2xjb250ZXh0bG9zdCIsYkEsITEpLGUuYWRkRXZlbnRMaXN0ZW5lcigid2ViZ2xjb250ZXh0cmVzdG9yZWQiLEhBLCExKSxlLmFkZEV2ZW50TGlzdGVuZXIoIndlYmdsY29udGV4dGNyZWF0aW9uZXJyb3IiLHZBLCExKSxudWxsPT09RkEpe2NvbnN0IGU9WyJ3ZWJnbDIiLCJ3ZWJnbCIsImV4cGVyaW1lbnRhbC13ZWJnbCJdO2lmKCEwPT09cC5pc1dlYkdMMVJlbmRlcmVyJiZlLnNoaWZ0KCksRkE9WUEoZSxBKSxudWxsPT09RkEpdGhyb3cgWUEoZSk/bmV3IEVycm9yKCJFcnJvciBjcmVhdGluZyBXZWJHTCBjb250ZXh0IHdpdGggeW91ciBzZWxlY3RlZCBhdHRyaWJ1dGVzLiIpOm5ldyBFcnJvcigiRXJyb3IgY3JlYXRpbmcgV2ViR0wgY29udGV4dC4iKX1GQSBpbnN0YW5jZW9mIFdlYkdMUmVuZGVyaW5nQ29udGV4dCYmY29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBXZWJHTCAxIHN1cHBvcnQgd2FzIGRlcHJlY2F0ZWQgaW4gcjE1MyBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHIxNjMuIiksdm9pZCAwPT09RkEuZ2V0U2hhZGVyUHJlY2lzaW9uRm9ybWF0JiYoRkEuZ2V0U2hhZGVyUHJlY2lzaW9uRm9ybWF0PWZ1bmN0aW9uKCl7cmV0dXJue3JhbmdlTWluOjEscmFuZ2VNYXg6MSxwcmVjaXNpb246MX19KX1jYXRjaChBKXt0aHJvdyBjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiAiK0EubWVzc2FnZSksQX1mdW5jdGlvbiBSQSgpe3E9bmV3IGZvKEZBKSwkPW5ldyBCbyhGQSxxLEEpLHEuaW5pdCgkKSxJQT1uZXcgZGEoRkEscSwkKSxBQT1uZXcgSWEoRkEscSwkKSxlQT1uZXcgeW8oRkEpLHRBPW5ldyByYSxuQT1uZXcgTWEoRkEscSxBQSx0QSwkLElBLGVBKSxpQT1uZXcgZ28ocCksckE9bmV3IFlvKHApLG9BPW5ldyBBbyhGQSwkKSxkQT1uZXcgc28oRkEscSxvQSwkKSxzQT1uZXcgTm8oRkEsb0EsZUEsZEEpLGFBPW5ldyBHbyhGQSxzQSxvQSxlQSksaEE9bmV3IFJvKEZBLCQsbkEpLFFBPW5ldyBjbyh0QSksQkE9bmV3IGlhKHAsaUEsckEscSwkLGRBLFFBKSxjQT1uZXcgTmEocCx0QSksZ0E9bmV3IEJhLEVBPW5ldyBsYShxLCQpLGxBPW5ldyBvbyhwLGlBLHJBLEFBLGFBLEUsYSksdUE9bmV3IENhKHAsYUEsJCksbUE9bmV3IFVhKEZBLGVBLCQsQUEpLHdBPW5ldyBhbyhGQSxxLGVBLCQpLENBPW5ldyBVbyhGQSxxLGVBLCQpLGVBLnByb2dyYW1zPUJBLnByb2dyYW1zLHAuY2FwYWJpbGl0aWVzPSQscC5leHRlbnNpb25zPXEscC5wcm9wZXJ0aWVzPXRBLHAucmVuZGVyTGlzdHM9Z0EscC5zaGFkb3dNYXA9dUEscC5zdGF0ZT1BQSxwLmluZm89ZUF9UkEoKTtjb25zdCBTQT1uZXcgZmEocCxGQSk7ZnVuY3Rpb24gYkEoQSl7QS5wcmV2ZW50RGVmYXVsdCgpLGNvbnNvbGUubG9nKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBDb250ZXh0IExvc3QuIiksbT0hMH1mdW5jdGlvbiBIQSgpe2NvbnNvbGUubG9nKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBDb250ZXh0IFJlc3RvcmVkLiIpLG09ITE7Y29uc3QgQT1lQS5hdXRvUmVzZXQsZT11QS5lbmFibGVkLHQ9dUEuYXV0b1VwZGF0ZSxuPXVBLm5lZWRzVXBkYXRlLGk9dUEudHlwZTtSQSgpLGVBLmF1dG9SZXNldD1BLHVBLmVuYWJsZWQ9ZSx1QS5hdXRvVXBkYXRlPXQsdUEubmVlZHNVcGRhdGU9bix1QS50eXBlPWl9ZnVuY3Rpb24gdkEoQSl7Y29uc29sZS5lcnJvcigiVEhSRUUuV2ViR0xSZW5kZXJlcjogQSBXZWJHTCBjb250ZXh0IGNvdWxkIG5vdCBiZSBjcmVhdGVkLiBSZWFzb246ICIsQS5zdGF0dXNNZXNzYWdlKX1mdW5jdGlvbiBrQShBKXtjb25zdCBlPUEudGFyZ2V0O2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsa0EpLGZ1bmN0aW9uKEEpeyhmdW5jdGlvbihBKXtjb25zdCBlPXRBLmdldChBKS5wcm9ncmFtczt2b2lkIDAhPT1lJiYoZS5mb3JFYWNoKChmdW5jdGlvbihBKXtCQS5yZWxlYXNlUHJvZ3JhbShBKX0pKSxBLmlzU2hhZGVyTWF0ZXJpYWwmJkJBLnJlbGVhc2VTaGFkZXJDYWNoZShBKSl9KShBKSx0QS5yZW1vdmUoQSl9KGUpfXRoaXMueHI9U0EsdGhpcy5nZXRDb250ZXh0PWZ1bmN0aW9uKCl7cmV0dXJuIEZBfSx0aGlzLmdldENvbnRleHRBdHRyaWJ1dGVzPWZ1bmN0aW9uKCl7cmV0dXJuIEZBLmdldENvbnRleHRBdHRyaWJ1dGVzKCl9LHRoaXMuZm9yY2VDb250ZXh0TG9zcz1mdW5jdGlvbigpe2NvbnN0IEE9cS5nZXQoIldFQkdMX2xvc2VfY29udGV4dCIpO0EmJkEubG9zZUNvbnRleHQoKX0sdGhpcy5mb3JjZUNvbnRleHRSZXN0b3JlPWZ1bmN0aW9uKCl7Y29uc3QgQT1xLmdldCgiV0VCR0xfbG9zZV9jb250ZXh0Iik7QSYmQS5yZXN0b3JlQ29udGV4dCgpfSx0aGlzLmdldFBpeGVsUmF0aW89ZnVuY3Rpb24oKXtyZXR1cm4gYn0sdGhpcy5zZXRQaXhlbFJhdGlvPWZ1bmN0aW9uKEEpe3ZvaWQgMCE9PUEmJihiPUEsdGhpcy5zZXRTaXplKEcsUywhMSkpfSx0aGlzLmdldFNpemU9ZnVuY3Rpb24oQSl7cmV0dXJuIEEuc2V0KEcsUyl9LHRoaXMuc2V0U2l6ZT1mdW5jdGlvbihBLHQpe2xldCBuPSEoYXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0pfHxhcmd1bWVudHNbMl07U0EuaXNQcmVzZW50aW5nP2NvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogQ2FuJ3QgY2hhbmdlIHNpemUgd2hpbGUgVlIgZGV2aWNlIGlzIHByZXNlbnRpbmcuIik6KEc9QSxTPXQsZS53aWR0aD1NYXRoLmZsb29yKEEqYiksZS5oZWlnaHQ9TWF0aC5mbG9vcih0KmIpLCEwPT09biYmKGUuc3R5bGUud2lkdGg9QSsicHgiLGUuc3R5bGUuaGVpZ2h0PXQrInB4IiksdGhpcy5zZXRWaWV3cG9ydCgwLDAsQSx0KSl9LHRoaXMuZ2V0RHJhd2luZ0J1ZmZlclNpemU9ZnVuY3Rpb24oQSl7cmV0dXJuIEEuc2V0KEcqYixTKmIpLmZsb29yKCl9LHRoaXMuc2V0RHJhd2luZ0J1ZmZlclNpemU9ZnVuY3Rpb24oQSx0LG4pe0c9QSxTPXQsYj1uLGUud2lkdGg9TWF0aC5mbG9vcihBKm4pLGUuaGVpZ2h0PU1hdGguZmxvb3IodCpuKSx0aGlzLnNldFZpZXdwb3J0KDAsMCxBLHQpfSx0aGlzLmdldEN1cnJlbnRWaWV3cG9ydD1mdW5jdGlvbihBKXtyZXR1cm4gQS5jb3B5KFUpfSx0aGlzLmdldFZpZXdwb3J0PWZ1bmN0aW9uKEEpe3JldHVybiBBLmNvcHkoayl9LHRoaXMuc2V0Vmlld3BvcnQ9ZnVuY3Rpb24oQSxlLHQsbil7QS5pc1ZlY3RvcjQ/ay5zZXQoQS54LEEueSxBLnosQS53KTprLnNldChBLGUsdCxuKSxBQS52aWV3cG9ydChVLmNvcHkoaykubXVsdGlwbHlTY2FsYXIoYikuZmxvb3IoKSl9LHRoaXMuZ2V0U2Npc3Nvcj1mdW5jdGlvbihBKXtyZXR1cm4gQS5jb3B5KGopfSx0aGlzLnNldFNjaXNzb3I9ZnVuY3Rpb24oQSxlLHQsbil7QS5pc1ZlY3RvcjQ/ai5zZXQoQS54LEEueSxBLnosQS53KTpqLnNldChBLGUsdCxuKSxBQS5zY2lzc29yKHkuY29weShqKS5tdWx0aXBseVNjYWxhcihiKS5mbG9vcigpKX0sdGhpcy5nZXRTY2lzc29yVGVzdD1mdW5jdGlvbigpe3JldHVybiBKfSx0aGlzLnNldFNjaXNzb3JUZXN0PWZ1bmN0aW9uKEEpe0FBLnNldFNjaXNzb3JUZXN0KEo9QSl9LHRoaXMuc2V0T3BhcXVlU29ydD1mdW5jdGlvbihBKXtIPUF9LHRoaXMuc2V0VHJhbnNwYXJlbnRTb3J0PWZ1bmN0aW9uKEEpe3Y9QX0sdGhpcy5nZXRDbGVhckNvbG9yPWZ1bmN0aW9uKEEpe3JldHVybiBBLmNvcHkobEEuZ2V0Q2xlYXJDb2xvcigpKX0sdGhpcy5zZXRDbGVhckNvbG9yPWZ1bmN0aW9uKCl7bEEuc2V0Q2xlYXJDb2xvci5hcHBseShsQSxhcmd1bWVudHMpfSx0aGlzLmdldENsZWFyQWxwaGE9ZnVuY3Rpb24oKXtyZXR1cm4gbEEuZ2V0Q2xlYXJBbHBoYSgpfSx0aGlzLnNldENsZWFyQWxwaGE9ZnVuY3Rpb24oKXtsQS5zZXRDbGVhckFscGhhLmFwcGx5KGxBLGFyZ3VtZW50cyl9LHRoaXMuY2xlYXI9ZnVuY3Rpb24oKXtsZXQgQT0hKGFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdKXx8YXJndW1lbnRzWzBdLGU9IShhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSl8fGFyZ3VtZW50c1sxXSx0PSEoYXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0pfHxhcmd1bWVudHNbMl0sbj0wO2lmKEEpe2xldCBBPSExO2lmKG51bGwhPT1ZKXtjb25zdCBlPVkudGV4dHVyZS5mb3JtYXQ7QT1lPT09TEF8fGU9PT16QXx8ZT09PWpBfWlmKEEpe2NvbnN0IEE9WS50ZXh0dXJlLnR5cGUsZT1BPT09cEF8fEE9PT1mQXx8QT09PURBfHxBPT09eEF8fEE9PT15QXx8QT09PVRBLHQ9bEEuZ2V0Q2xlYXJDb2xvcigpLG49bEEuZ2V0Q2xlYXJBbHBoYSgpLGk9dC5yLHI9dC5nLG89dC5iLHM9dEEuZ2V0KFkpLl9fd2ViZ2xGcmFtZWJ1ZmZlcjtlPyhRWzBdPWksUVsxXT1yLFFbMl09byxRWzNdPW4sRkEuY2xlYXJCdWZmZXJ1aXYoRkEuQ09MT1IscyxRKSk6KHdbMF09aSx3WzFdPXIsd1syXT1vLHdbM109bixGQS5jbGVhckJ1ZmZlcml2KEZBLkNPTE9SLHMsdykpfWVsc2Ugbnw9RkEuQ09MT1JfQlVGRkVSX0JJVH1lJiYobnw9RkEuREVQVEhfQlVGRkVSX0JJVCksdCYmKG58PUZBLlNURU5DSUxfQlVGRkVSX0JJVCksRkEuY2xlYXIobil9LHRoaXMuY2xlYXJDb2xvcj1mdW5jdGlvbigpe3RoaXMuY2xlYXIoITAsITEsITEpfSx0aGlzLmNsZWFyRGVwdGg9ZnVuY3Rpb24oKXt0aGlzLmNsZWFyKCExLCEwLCExKX0sdGhpcy5jbGVhclN0ZW5jaWw9ZnVuY3Rpb24oKXt0aGlzLmNsZWFyKCExLCExLCEwKX0sdGhpcy5kaXNwb3NlPWZ1bmN0aW9uKCl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJ3ZWJnbGNvbnRleHRsb3N0IixiQSwhMSksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJ3ZWJnbGNvbnRleHRyZXN0b3JlZCIsSEEsITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2ViZ2xjb250ZXh0Y3JlYXRpb25lcnJvciIsdkEsITEpLGdBLmRpc3Bvc2UoKSxFQS5kaXNwb3NlKCksdEEuZGlzcG9zZSgpLGlBLmRpc3Bvc2UoKSxyQS5kaXNwb3NlKCksYUEuZGlzcG9zZSgpLGRBLmRpc3Bvc2UoKSxtQS5kaXNwb3NlKCksQkEuZGlzcG9zZSgpLFNBLmRpc3Bvc2UoKSxTQS5yZW1vdmVFdmVudExpc3RlbmVyKCJzZXNzaW9uc3RhcnQiLFBBKSxTQS5yZW1vdmVFdmVudExpc3RlbmVyKCJzZXNzaW9uZW5kIixPQSksTyYmKE8uZGlzcG9zZSgpLE89bnVsbCksVkEuc3RvcCgpfSx0aGlzLnJlbmRlckJ1ZmZlckRpcmVjdD1mdW5jdGlvbihBLGUsdCxuLGkscil7bnVsbD09PWUmJihlPVgpO2NvbnN0IG89aS5pc01lc2gmJmkubWF0cml4V29ybGQuZGV0ZXJtaW5hbnQoKTwwLHM9ZnVuY3Rpb24oQSxlLHQsbixpKXshMCE9PWUuaXNTY2VuZSYmKGU9WCk7bkEucmVzZXRUZXh0dXJlVW5pdHMoKTtjb25zdCByPWUuZm9nLG89bi5pc01lc2hTdGFuZGFyZE1hdGVyaWFsP2UuZW52aXJvbm1lbnQ6bnVsbCxzPW51bGw9PT1ZP3Aub3V0cHV0Q29sb3JTcGFjZTohMD09PVkuaXNYUlJlbmRlclRhcmdldD9ZLnRleHR1cmUuY29sb3JTcGFjZTp6ZSxhPShuLmlzTWVzaFN0YW5kYXJkTWF0ZXJpYWw/ckE6aUEpLmdldChuLmVudk1hcHx8byksQj0hMD09PW4udmVydGV4Q29sb3JzJiYhIXQuYXR0cmlidXRlcy5jb2xvciYmND09PXQuYXR0cmlidXRlcy5jb2xvci5pdGVtU2l6ZSxjPSEhdC5hdHRyaWJ1dGVzLnRhbmdlbnQmJighIW4ubm9ybWFsTWFwfHxuLmFuaXNvdHJvcHk+MCksZz0hIXQubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9uLEU9ISF0Lm1vcnBoQXR0cmlidXRlcy5ub3JtYWwsUT0hIXQubW9ycGhBdHRyaWJ1dGVzLmNvbG9yLHU9bi50b25lTWFwcGVkP3AudG9uZU1hcHBpbmc6XyxsPXQubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9ufHx0Lm1vcnBoQXR0cmlidXRlcy5ub3JtYWx8fHQubW9ycGhBdHRyaWJ1dGVzLmNvbG9yLGg9dm9pZCAwIT09bD9sLmxlbmd0aDowLHc9dEEuZ2V0KG4pLEM9SS5zdGF0ZS5saWdodHM7aWYoITA9PT1MJiYoITA9PT1QfHxBIT09Tikpe2NvbnN0IGU9QT09PU4mJm4uaWQ9PT1mO1FBLnNldFN0YXRlKG4sQSxlKX1sZXQgTT0hMTtuLnZlcnNpb249PT13Ll9fdmVyc2lvbj93Lm5lZWRzTGlnaHRzJiZ3LmxpZ2h0c1N0YXRlVmVyc2lvbiE9PUMuc3RhdGUudmVyc2lvbnx8dy5vdXRwdXRDb2xvclNwYWNlIT09c3x8aS5pc0luc3RhbmNlZE1lc2gmJiExPT09dy5pbnN0YW5jaW5nP009ITA6aS5pc0luc3RhbmNlZE1lc2h8fCEwIT09dy5pbnN0YW5jaW5nP2kuaXNTa2lubmVkTWVzaCYmITE9PT13LnNraW5uaW5nP009ITA6aS5pc1NraW5uZWRNZXNofHwhMCE9PXcuc2tpbm5pbmc/dy5lbnZNYXAhPT1hfHwhMD09PW4uZm9nJiZ3LmZvZyE9PXI/TT0hMDp2b2lkIDA9PT13Lm51bUNsaXBwaW5nUGxhbmVzfHx3Lm51bUNsaXBwaW5nUGxhbmVzPT09UUEubnVtUGxhbmVzJiZ3Lm51bUludGVyc2VjdGlvbj09PVFBLm51bUludGVyc2VjdGlvbj8ody52ZXJ0ZXhBbHBoYXMhPT1CfHx3LnZlcnRleFRhbmdlbnRzIT09Y3x8dy5tb3JwaFRhcmdldHMhPT1nfHx3Lm1vcnBoTm9ybWFscyE9PUV8fHcubW9ycGhDb2xvcnMhPT1RfHx3LnRvbmVNYXBwaW5nIT09dXx8ITA9PT0kLmlzV2ViR0wyJiZ3Lm1vcnBoVGFyZ2V0c0NvdW50IT09aCkmJihNPSEwKTpNPSEwOk09ITA6TT0hMDooTT0hMCx3Ll9fdmVyc2lvbj1uLnZlcnNpb24pO2xldCBkPXcuY3VycmVudFByb2dyYW07ITA9PT1NJiYoZD1aQShuLGUsaSkpO2xldCBtPSExLEY9ITEsRD0hMTtjb25zdCBVPWQuZ2V0VW5pZm9ybXMoKSx5PXcudW5pZm9ybXM7QUEudXNlUHJvZ3JhbShkLnByb2dyYW0pJiYobT0hMCxGPSEwLEQ9ITApO24uaWQhPT1mJiYoZj1uLmlkLEY9ITApO2lmKG18fE4hPT1BKXtpZihVLnNldFZhbHVlKEZBLCJwcm9qZWN0aW9uTWF0cml4IixBLnByb2plY3Rpb25NYXRyaXgpLCQubG9nYXJpdGhtaWNEZXB0aEJ1ZmZlciYmVS5zZXRWYWx1ZShGQSwibG9nRGVwdGhCdWZGQyIsMi8oTWF0aC5sb2coQS5mYXIrMSkvTWF0aC5MTjIpKSxOIT09QSYmKE49QSxGPSEwLEQ9ITApLG4uaXNTaGFkZXJNYXRlcmlhbHx8bi5pc01lc2hQaG9uZ01hdGVyaWFsfHxuLmlzTWVzaFRvb25NYXRlcmlhbHx8bi5pc01lc2hTdGFuZGFyZE1hdGVyaWFsfHxuLmVudk1hcCl7Y29uc3QgZT1VLm1hcC5jYW1lcmFQb3NpdGlvbjt2b2lkIDAhPT1lJiZlLnNldFZhbHVlKEZBLEsuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKEEubWF0cml4V29ybGQpKX0obi5pc01lc2hQaG9uZ01hdGVyaWFsfHxuLmlzTWVzaFRvb25NYXRlcmlhbHx8bi5pc01lc2hMYW1iZXJ0TWF0ZXJpYWx8fG4uaXNNZXNoQmFzaWNNYXRlcmlhbHx8bi5pc01lc2hTdGFuZGFyZE1hdGVyaWFsfHxuLmlzU2hhZGVyTWF0ZXJpYWwpJiZVLnNldFZhbHVlKEZBLCJpc09ydGhvZ3JhcGhpYyIsITA9PT1BLmlzT3J0aG9ncmFwaGljQ2FtZXJhKSwobi5pc01lc2hQaG9uZ01hdGVyaWFsfHxuLmlzTWVzaFRvb25NYXRlcmlhbHx8bi5pc01lc2hMYW1iZXJ0TWF0ZXJpYWx8fG4uaXNNZXNoQmFzaWNNYXRlcmlhbHx8bi5pc01lc2hTdGFuZGFyZE1hdGVyaWFsfHxuLmlzU2hhZGVyTWF0ZXJpYWx8fG4uaXNTaGFkb3dNYXRlcmlhbHx8aS5pc1NraW5uZWRNZXNoKSYmVS5zZXRWYWx1ZShGQSwidmlld01hdHJpeCIsQS5tYXRyaXhXb3JsZEludmVyc2UpfWlmKGkuaXNTa2lubmVkTWVzaCl7VS5zZXRPcHRpb25hbChGQSxpLCJiaW5kTWF0cml4IiksVS5zZXRPcHRpb25hbChGQSxpLCJiaW5kTWF0cml4SW52ZXJzZSIpO2NvbnN0IEE9aS5za2VsZXRvbjtBJiYoJC5mbG9hdFZlcnRleFRleHR1cmVzPyhudWxsPT09QS5ib25lVGV4dHVyZSYmQS5jb21wdXRlQm9uZVRleHR1cmUoKSxVLnNldFZhbHVlKEZBLCJib25lVGV4dHVyZSIsQS5ib25lVGV4dHVyZSxuQSksVS5zZXRWYWx1ZShGQSwiYm9uZVRleHR1cmVTaXplIixBLmJvbmVUZXh0dXJlU2l6ZSkpOmNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogU2tpbm5lZE1lc2ggY2FuIG9ubHkgYmUgdXNlZCB3aXRoIFdlYkdMIDIuIFdpdGggV2ViR0wgMSBPRVNfdGV4dHVyZV9mbG9hdCBhbmQgdmVydGV4IHRleHR1cmVzIHN1cHBvcnQgaXMgcmVxdWlyZWQuIikpfWNvbnN0IFQ9dC5tb3JwaEF0dHJpYnV0ZXM7KHZvaWQgMCE9PVQucG9zaXRpb258fHZvaWQgMCE9PVQubm9ybWFsfHx2b2lkIDAhPT1ULmNvbG9yJiYhMD09PSQuaXNXZWJHTDIpJiZoQS51cGRhdGUoaSx0LGQpOyhGfHx3LnJlY2VpdmVTaGFkb3chPT1pLnJlY2VpdmVTaGFkb3cpJiYody5yZWNlaXZlU2hhZG93PWkucmVjZWl2ZVNoYWRvdyxVLnNldFZhbHVlKEZBLCJyZWNlaXZlU2hhZG93IixpLnJlY2VpdmVTaGFkb3cpKTtuLmlzTWVzaEdvdXJhdWRNYXRlcmlhbCYmbnVsbCE9PW4uZW52TWFwJiYoeS5lbnZNYXAudmFsdWU9YSx5LmZsaXBFbnZNYXAudmFsdWU9YS5pc0N1YmVUZXh0dXJlJiYhMT09PWEuaXNSZW5kZXJUYXJnZXRUZXh0dXJlPy0xOjEpO0YmJihVLnNldFZhbHVlKEZBLCJ0b25lTWFwcGluZ0V4cG9zdXJlIixwLnRvbmVNYXBwaW5nRXhwb3N1cmUpLHcubmVlZHNMaWdodHMmJihSPUQsKHg9eSkuYW1iaWVudExpZ2h0Q29sb3IubmVlZHNVcGRhdGU9Uix4LmxpZ2h0UHJvYmUubmVlZHNVcGRhdGU9Uix4LmRpcmVjdGlvbmFsTGlnaHRzLm5lZWRzVXBkYXRlPVIseC5kaXJlY3Rpb25hbExpZ2h0U2hhZG93cy5uZWVkc1VwZGF0ZT1SLHgucG9pbnRMaWdodHMubmVlZHNVcGRhdGU9Uix4LnBvaW50TGlnaHRTaGFkb3dzLm5lZWRzVXBkYXRlPVIseC5zcG90TGlnaHRzLm5lZWRzVXBkYXRlPVIseC5zcG90TGlnaHRTaGFkb3dzLm5lZWRzVXBkYXRlPVIseC5yZWN0QXJlYUxpZ2h0cy5uZWVkc1VwZGF0ZT1SLHguaGVtaXNwaGVyZUxpZ2h0cy5uZWVkc1VwZGF0ZT1SKSxyJiYhMD09PW4uZm9nJiZjQS5yZWZyZXNoRm9nVW5pZm9ybXMoeSxyKSxjQS5yZWZyZXNoTWF0ZXJpYWxVbmlmb3Jtcyh5LG4sYixTLE8pLHZzLnVwbG9hZChGQSx3LnVuaWZvcm1zTGlzdCx5LG5BKSk7dmFyIHgsUjtuLmlzU2hhZGVyTWF0ZXJpYWwmJiEwPT09bi51bmlmb3Jtc05lZWRVcGRhdGUmJih2cy51cGxvYWQoRkEsdy51bmlmb3Jtc0xpc3QseSxuQSksbi51bmlmb3Jtc05lZWRVcGRhdGU9ITEpO24uaXNTcHJpdGVNYXRlcmlhbCYmVS5zZXRWYWx1ZShGQSwiY2VudGVyIixpLmNlbnRlcik7aWYoVS5zZXRWYWx1ZShGQSwibW9kZWxWaWV3TWF0cml4IixpLm1vZGVsVmlld01hdHJpeCksVS5zZXRWYWx1ZShGQSwibm9ybWFsTWF0cml4IixpLm5vcm1hbE1hdHJpeCksVS5zZXRWYWx1ZShGQSwibW9kZWxNYXRyaXgiLGkubWF0cml4V29ybGQpLG4uaXNTaGFkZXJNYXRlcmlhbHx8bi5pc1Jhd1NoYWRlck1hdGVyaWFsKXtjb25zdCBBPW4udW5pZm9ybXNHcm91cHM7Zm9yKGxldCBlPTAsdD1BLmxlbmd0aDtlPHQ7ZSsrKWlmKCQuaXNXZWJHTDIpe2NvbnN0IHQ9QVtlXTttQS51cGRhdGUodCxkKSxtQS5iaW5kKHQsZCl9ZWxzZSBjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUmVuZGVyZXI6IFVuaWZvcm0gQnVmZmVyIE9iamVjdHMgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIFdlYkdMIDIuIil9cmV0dXJuIGR9KEEsZSx0LG4saSk7QUEuc2V0TWF0ZXJpYWwobixvKTtsZXQgYT10LmluZGV4LEI9MTshMD09PW4ud2lyZWZyYW1lJiYoYT1zQS5nZXRXaXJlZnJhbWVBdHRyaWJ1dGUodCksQj0yKTtjb25zdCBjPXQuZHJhd1JhbmdlLGc9dC5hdHRyaWJ1dGVzLnBvc2l0aW9uO2xldCBFPWMuc3RhcnQqQixRPShjLnN0YXJ0K2MuY291bnQpKkI7bnVsbCE9PXImJihFPU1hdGgubWF4KEUsci5zdGFydCpCKSxRPU1hdGgubWluKFEsKHIuc3RhcnQrci5jb3VudCkqQikpLG51bGwhPT1hPyhFPU1hdGgubWF4KEUsMCksUT1NYXRoLm1pbihRLGEuY291bnQpKTpudWxsIT1nJiYoRT1NYXRoLm1heChFLDApLFE9TWF0aC5taW4oUSxnLmNvdW50KSk7Y29uc3QgdT1RLUU7aWYodTwwfHx1PT09MS8wKXJldHVybjtsZXQgbDtkQS5zZXR1cChpLG4scyx0LGEpO2xldCBoPXdBO2lmKG51bGwhPT1hJiYobD1vQS5nZXQoYSksaD1DQSxoLnNldEluZGV4KGwpKSxpLmlzTWVzaCkhMD09PW4ud2lyZWZyYW1lPyhBQS5zZXRMaW5lV2lkdGgobi53aXJlZnJhbWVMaW5ld2lkdGgqWigpKSxoLnNldE1vZGUoRkEuTElORVMpKTpoLnNldE1vZGUoRkEuVFJJQU5HTEVTKTtlbHNlIGlmKGkuaXNMaW5lKXtsZXQgQT1uLmxpbmV3aWR0aDt2b2lkIDA9PT1BJiYoQT0xKSxBQS5zZXRMaW5lV2lkdGgoQSpaKCkpLGkuaXNMaW5lU2VnbWVudHM/aC5zZXRNb2RlKEZBLkxJTkVTKTppLmlzTGluZUxvb3A/aC5zZXRNb2RlKEZBLkxJTkVfTE9PUCk6aC5zZXRNb2RlKEZBLkxJTkVfU1RSSVApfWVsc2UgaS5pc1BvaW50cz9oLnNldE1vZGUoRkEuUE9JTlRTKTppLmlzU3ByaXRlJiZoLnNldE1vZGUoRkEuVFJJQU5HTEVTKTtpZihpLmlzSW5zdGFuY2VkTWVzaCloLnJlbmRlckluc3RhbmNlcyhFLHUsaS5jb3VudCk7ZWxzZSBpZih0LmlzSW5zdGFuY2VkQnVmZmVyR2VvbWV0cnkpe2NvbnN0IEE9dm9pZCAwIT09dC5fbWF4SW5zdGFuY2VDb3VudD90Ll9tYXhJbnN0YW5jZUNvdW50OjEvMCxlPU1hdGgubWluKHQuaW5zdGFuY2VDb3VudCxBKTtoLnJlbmRlckluc3RhbmNlcyhFLHUsZSl9ZWxzZSBoLnJlbmRlcihFLHUpfSx0aGlzLmNvbXBpbGU9ZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXshMD09PUEudHJhbnNwYXJlbnQmJkEuc2lkZT09PWgmJiExPT09QS5mb3JjZVNpbmdsZVBhc3M/KEEuc2lkZT1sLEEubmVlZHNVcGRhdGU9ITAsWkEoQSxlLHQpLEEuc2lkZT11LEEubmVlZHNVcGRhdGU9ITAsWkEoQSxlLHQpLEEuc2lkZT1oKTpaQShBLGUsdCl9ST1FQS5nZXQoQSksSS5pbml0KCksZC5wdXNoKEkpLEEudHJhdmVyc2VWaXNpYmxlKChmdW5jdGlvbihBKXtBLmlzTGlnaHQmJkEubGF5ZXJzLnRlc3QoZS5sYXllcnMpJiYoSS5wdXNoTGlnaHQoQSksQS5jYXN0U2hhZG93JiZJLnB1c2hTaGFkb3coQSkpfSkpLEkuc2V0dXBMaWdodHMocC51c2VMZWdhY3lMaWdodHMpLEEudHJhdmVyc2UoKGZ1bmN0aW9uKGUpe2NvbnN0IG49ZS5tYXRlcmlhbDtpZihuKWlmKEFycmF5LmlzQXJyYXkobikpZm9yKGxldCBpPTA7aTxuLmxlbmd0aDtpKyspe3QobltpXSxBLGUpfWVsc2UgdChuLEEsZSl9KSksZC5wb3AoKSxJPW51bGx9O2xldCBKQT1udWxsO2Z1bmN0aW9uIFBBKCl7VkEuc3RvcCgpfWZ1bmN0aW9uIE9BKCl7VkEuc3RhcnQoKX1jb25zdCBWQT1uZXcgJHI7ZnVuY3Rpb24gV0EoQSxlLHQsbil7Y29uc3QgaT1BLm9wYXF1ZSxyPUEudHJhbnNtaXNzaXZlLG89QS50cmFuc3BhcmVudDtJLnNldHVwTGlnaHRzVmlldyh0KSwhMD09PUwmJlFBLnNldEdsb2JhbFN0YXRlKHAuY2xpcHBpbmdQbGFuZXMsdCksci5sZW5ndGg+MCYmZnVuY3Rpb24oQSxlLHQsbil7Y29uc3QgaT0kLmlzV2ViR0wyO251bGw9PT1PJiYoTz1uZXcgdW4oMSwxLHtnZW5lcmF0ZU1pcG1hcHM6ITAsdHlwZTpxLmhhcygiRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0Iik/VUE6cEEsbWluRmlsdGVyOk1BLHNhbXBsZXM6aSYmITA9PT1zPzQ6MH0pKTtwLmdldERyYXdpbmdCdWZmZXJTaXplKFcpLGk/Ty5zZXRTaXplKFcueCxXLnkpOk8uc2V0U2l6ZShrdChXLngpLGt0KFcueSkpO2NvbnN0IHI9cC5nZXRSZW5kZXJUYXJnZXQoKTtwLnNldFJlbmRlclRhcmdldChPKSxwLmdldENsZWFyQ29sb3IoeCksUj1wLmdldENsZWFyQWxwaGEoKSxSPDEmJnAuc2V0Q2xlYXJDb2xvcigxNjc3NzIxNSwuNSk7cC5jbGVhcigpO2NvbnN0IG89cC50b25lTWFwcGluZztwLnRvbmVNYXBwaW5nPV8sS0EoQSx0LG4pLG5BLnVwZGF0ZU11bHRpc2FtcGxlUmVuZGVyVGFyZ2V0KE8pLG5BLnVwZGF0ZVJlbmRlclRhcmdldE1pcG1hcChPKTtsZXQgYT0hMTtmb3IobGV0IEE9MCxpPWUubGVuZ3RoO0E8aTtBKyspe2NvbnN0IGk9ZVtBXSxyPWkub2JqZWN0LG89aS5nZW9tZXRyeSxzPWkubWF0ZXJpYWwsQj1pLmdyb3VwO2lmKHMuc2lkZT09PWgmJnIubGF5ZXJzLnRlc3Qobi5sYXllcnMpKXtjb25zdCBBPXMuc2lkZTtzLnNpZGU9bCxzLm5lZWRzVXBkYXRlPSEwLFhBKHIsdCxuLG8scyxCKSxzLnNpZGU9QSxzLm5lZWRzVXBkYXRlPSEwLGE9ITB9fSEwPT09YSYmKG5BLnVwZGF0ZU11bHRpc2FtcGxlUmVuZGVyVGFyZ2V0KE8pLG5BLnVwZGF0ZVJlbmRlclRhcmdldE1pcG1hcChPKSk7cC5zZXRSZW5kZXJUYXJnZXQocikscC5zZXRDbGVhckNvbG9yKHgsUikscC50b25lTWFwcGluZz1vfShpLHIsZSx0KSxuJiZBQS52aWV3cG9ydChVLmNvcHkobikpLGkubGVuZ3RoPjAmJktBKGksZSx0KSxyLmxlbmd0aD4wJiZLQShyLGUsdCksby5sZW5ndGg+MCYmS0EobyxlLHQpLEFBLmJ1ZmZlcnMuZGVwdGguc2V0VGVzdCghMCksQUEuYnVmZmVycy5kZXB0aC5zZXRNYXNrKCEwKSxBQS5idWZmZXJzLmNvbG9yLnNldE1hc2soITApLEFBLnNldFBvbHlnb25PZmZzZXQoITEpfWZ1bmN0aW9uIEtBKEEsZSx0KXtjb25zdCBuPSEwPT09ZS5pc1NjZW5lP2Uub3ZlcnJpZGVNYXRlcmlhbDpudWxsO2ZvcihsZXQgaT0wLHI9QS5sZW5ndGg7aTxyO2krKyl7Y29uc3Qgcj1BW2ldLG89ci5vYmplY3Qscz1yLmdlb21ldHJ5LGE9bnVsbD09PW4/ci5tYXRlcmlhbDpuLEI9ci5ncm91cDtvLmxheWVycy50ZXN0KHQubGF5ZXJzKSYmWEEobyxlLHQscyxhLEIpfX1mdW5jdGlvbiBYQShBLGUsdCxuLGkscil7QS5vbkJlZm9yZVJlbmRlcihwLGUsdCxuLGksciksQS5tb2RlbFZpZXdNYXRyaXgubXVsdGlwbHlNYXRyaWNlcyh0Lm1hdHJpeFdvcmxkSW52ZXJzZSxBLm1hdHJpeFdvcmxkKSxBLm5vcm1hbE1hdHJpeC5nZXROb3JtYWxNYXRyaXgoQS5tb2RlbFZpZXdNYXRyaXgpLGkub25CZWZvcmVSZW5kZXIocCxlLHQsbixBLHIpLCEwPT09aS50cmFuc3BhcmVudCYmaS5zaWRlPT09aCYmITE9PT1pLmZvcmNlU2luZ2xlUGFzcz8oaS5zaWRlPWwsaS5uZWVkc1VwZGF0ZT0hMCxwLnJlbmRlckJ1ZmZlckRpcmVjdCh0LGUsbixpLEEsciksaS5zaWRlPXUsaS5uZWVkc1VwZGF0ZT0hMCxwLnJlbmRlckJ1ZmZlckRpcmVjdCh0LGUsbixpLEEsciksaS5zaWRlPWgpOnAucmVuZGVyQnVmZmVyRGlyZWN0KHQsZSxuLGksQSxyKSxBLm9uQWZ0ZXJSZW5kZXIocCxlLHQsbixpLHIpfWZ1bmN0aW9uIFpBKEEsZSx0KXshMCE9PWUuaXNTY2VuZSYmKGU9WCk7Y29uc3Qgbj10QS5nZXQoQSksaT1JLnN0YXRlLmxpZ2h0cyxyPUkuc3RhdGUuc2hhZG93c0FycmF5LG89aS5zdGF0ZS52ZXJzaW9uLHM9QkEuZ2V0UGFyYW1ldGVycyhBLGkuc3RhdGUscixlLHQpLGE9QkEuZ2V0UHJvZ3JhbUNhY2hlS2V5KHMpO2xldCBCPW4ucHJvZ3JhbXM7bi5lbnZpcm9ubWVudD1BLmlzTWVzaFN0YW5kYXJkTWF0ZXJpYWw/ZS5lbnZpcm9ubWVudDpudWxsLG4uZm9nPWUuZm9nLG4uZW52TWFwPShBLmlzTWVzaFN0YW5kYXJkTWF0ZXJpYWw/ckE6aUEpLmdldChBLmVudk1hcHx8bi5lbnZpcm9ubWVudCksdm9pZCAwPT09QiYmKEEuYWRkRXZlbnRMaXN0ZW5lcigiZGlzcG9zZSIsa0EpLEI9bmV3IE1hcCxuLnByb2dyYW1zPUIpO2xldCBjPUIuZ2V0KGEpO2lmKHZvaWQgMCE9PWMpe2lmKG4uY3VycmVudFByb2dyYW09PT1jJiZuLmxpZ2h0c1N0YXRlVmVyc2lvbj09PW8pcmV0dXJuIF9BKEEscyksY31lbHNlIHMudW5pZm9ybXM9QkEuZ2V0VW5pZm9ybXMoQSksQS5vbkJ1aWxkKHQscyxwKSxBLm9uQmVmb3JlQ29tcGlsZShzLHApLGM9QkEuYWNxdWlyZVByb2dyYW0ocyxhKSxCLnNldChhLGMpLG4udW5pZm9ybXM9cy51bmlmb3Jtcztjb25zdCBnPW4udW5pZm9ybXM7KEEuaXNTaGFkZXJNYXRlcmlhbHx8QS5pc1Jhd1NoYWRlck1hdGVyaWFsKSYmITAhPT1BLmNsaXBwaW5nfHwoZy5jbGlwcGluZ1BsYW5lcz1RQS51bmlmb3JtKSxfQShBLHMpLG4ubmVlZHNMaWdodHM9ZnVuY3Rpb24oQSl7cmV0dXJuIEEuaXNNZXNoTGFtYmVydE1hdGVyaWFsfHxBLmlzTWVzaFRvb25NYXRlcmlhbHx8QS5pc01lc2hQaG9uZ01hdGVyaWFsfHxBLmlzTWVzaFN0YW5kYXJkTWF0ZXJpYWx8fEEuaXNTaGFkb3dNYXRlcmlhbHx8QS5pc1NoYWRlck1hdGVyaWFsJiYhMD09PUEubGlnaHRzfShBKSxuLmxpZ2h0c1N0YXRlVmVyc2lvbj1vLG4ubmVlZHNMaWdodHMmJihnLmFtYmllbnRMaWdodENvbG9yLnZhbHVlPWkuc3RhdGUuYW1iaWVudCxnLmxpZ2h0UHJvYmUudmFsdWU9aS5zdGF0ZS5wcm9iZSxnLmRpcmVjdGlvbmFsTGlnaHRzLnZhbHVlPWkuc3RhdGUuZGlyZWN0aW9uYWwsZy5kaXJlY3Rpb25hbExpZ2h0U2hhZG93cy52YWx1ZT1pLnN0YXRlLmRpcmVjdGlvbmFsU2hhZG93LGcuc3BvdExpZ2h0cy52YWx1ZT1pLnN0YXRlLnNwb3QsZy5zcG90TGlnaHRTaGFkb3dzLnZhbHVlPWkuc3RhdGUuc3BvdFNoYWRvdyxnLnJlY3RBcmVhTGlnaHRzLnZhbHVlPWkuc3RhdGUucmVjdEFyZWEsZy5sdGNfMS52YWx1ZT1pLnN0YXRlLnJlY3RBcmVhTFRDMSxnLmx0Y18yLnZhbHVlPWkuc3RhdGUucmVjdEFyZWFMVEMyLGcucG9pbnRMaWdodHMudmFsdWU9aS5zdGF0ZS5wb2ludCxnLnBvaW50TGlnaHRTaGFkb3dzLnZhbHVlPWkuc3RhdGUucG9pbnRTaGFkb3csZy5oZW1pc3BoZXJlTGlnaHRzLnZhbHVlPWkuc3RhdGUuaGVtaSxnLmRpcmVjdGlvbmFsU2hhZG93TWFwLnZhbHVlPWkuc3RhdGUuZGlyZWN0aW9uYWxTaGFkb3dNYXAsZy5kaXJlY3Rpb25hbFNoYWRvd01hdHJpeC52YWx1ZT1pLnN0YXRlLmRpcmVjdGlvbmFsU2hhZG93TWF0cml4LGcuc3BvdFNoYWRvd01hcC52YWx1ZT1pLnN0YXRlLnNwb3RTaGFkb3dNYXAsZy5zcG90TGlnaHRNYXRyaXgudmFsdWU9aS5zdGF0ZS5zcG90TGlnaHRNYXRyaXgsZy5zcG90TGlnaHRNYXAudmFsdWU9aS5zdGF0ZS5zcG90TGlnaHRNYXAsZy5wb2ludFNoYWRvd01hcC52YWx1ZT1pLnN0YXRlLnBvaW50U2hhZG93TWFwLGcucG9pbnRTaGFkb3dNYXRyaXgudmFsdWU9aS5zdGF0ZS5wb2ludFNoYWRvd01hdHJpeCk7Y29uc3QgRT1jLmdldFVuaWZvcm1zKCksUT12cy5zZXFXaXRoVmFsdWUoRS5zZXEsZyk7cmV0dXJuIG4uY3VycmVudFByb2dyYW09YyxuLnVuaWZvcm1zTGlzdD1RLGN9ZnVuY3Rpb24gX0EoQSxlKXtjb25zdCB0PXRBLmdldChBKTt0Lm91dHB1dENvbG9yU3BhY2U9ZS5vdXRwdXRDb2xvclNwYWNlLHQuaW5zdGFuY2luZz1lLmluc3RhbmNpbmcsdC5za2lubmluZz1lLnNraW5uaW5nLHQubW9ycGhUYXJnZXRzPWUubW9ycGhUYXJnZXRzLHQubW9ycGhOb3JtYWxzPWUubW9ycGhOb3JtYWxzLHQubW9ycGhDb2xvcnM9ZS5tb3JwaENvbG9ycyx0Lm1vcnBoVGFyZ2V0c0NvdW50PWUubW9ycGhUYXJnZXRzQ291bnQsdC5udW1DbGlwcGluZ1BsYW5lcz1lLm51bUNsaXBwaW5nUGxhbmVzLHQubnVtSW50ZXJzZWN0aW9uPWUubnVtQ2xpcEludGVyc2VjdGlvbix0LnZlcnRleEFscGhhcz1lLnZlcnRleEFscGhhcyx0LnZlcnRleFRhbmdlbnRzPWUudmVydGV4VGFuZ2VudHMsdC50b25lTWFwcGluZz1lLnRvbmVNYXBwaW5nfVZBLnNldEFuaW1hdGlvbkxvb3AoKGZ1bmN0aW9uKEEpe0pBJiZKQShBKX0pKSwidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJlZBLnNldENvbnRleHQoc2VsZiksdGhpcy5zZXRBbmltYXRpb25Mb29wPWZ1bmN0aW9uKEEpe0pBPUEsU0Euc2V0QW5pbWF0aW9uTG9vcChBKSxudWxsPT09QT9WQS5zdG9wKCk6VkEuc3RhcnQoKX0sU0EuYWRkRXZlbnRMaXN0ZW5lcigic2Vzc2lvbnN0YXJ0IixQQSksU0EuYWRkRXZlbnRMaXN0ZW5lcigic2Vzc2lvbmVuZCIsT0EpLHRoaXMucmVuZGVyPWZ1bmN0aW9uKEEsZSl7aWYodm9pZCAwIT09ZSYmITAhPT1lLmlzQ2FtZXJhKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMUmVuZGVyZXIucmVuZGVyOiBjYW1lcmEgaXMgbm90IGFuIGluc3RhbmNlIG9mIFRIUkVFLkNhbWVyYS4iKTtpZighMD09PW0pcmV0dXJuOyEwPT09QS5tYXRyaXhXb3JsZEF1dG9VcGRhdGUmJkEudXBkYXRlTWF0cml4V29ybGQoKSxudWxsPT09ZS5wYXJlbnQmJiEwPT09ZS5tYXRyaXhXb3JsZEF1dG9VcGRhdGUmJmUudXBkYXRlTWF0cml4V29ybGQoKSwhMD09PVNBLmVuYWJsZWQmJiEwPT09U0EuaXNQcmVzZW50aW5nJiYoZT1TQS51cGRhdGVDYW1lcmFYUihlKSksITA9PT1BLmlzU2NlbmUmJkEub25CZWZvcmVSZW5kZXIocCxBLGUsWSksST1FQS5nZXQoQSxkLmxlbmd0aCksSS5pbml0KCksZC5wdXNoKEkpLFYubXVsdGlwbHlNYXRyaWNlcyhlLnByb2plY3Rpb25NYXRyaXgsZS5tYXRyaXhXb3JsZEludmVyc2UpLHouc2V0RnJvbVByb2plY3Rpb25NYXRyaXgoViksUD10aGlzLmxvY2FsQ2xpcHBpbmdFbmFibGVkLEw9UUEuaW5pdCh0aGlzLmNsaXBwaW5nUGxhbmVzLFApLEM9Z0EuZ2V0KEEsTS5sZW5ndGgpLEMuaW5pdCgpLE0ucHVzaChDKSxmdW5jdGlvbiBBKGUsdCxuLGkpe2lmKCExPT09ZS52aXNpYmxlKXJldHVybjtpZihlLmxheWVycy50ZXN0KHQubGF5ZXJzKSlpZihlLmlzR3JvdXApbj1lLnJlbmRlck9yZGVyO2Vsc2UgaWYoZS5pc0xPRCkhMD09PWUuYXV0b1VwZGF0ZSYmZS51cGRhdGUodCk7ZWxzZSBpZihlLmlzTGlnaHQpSS5wdXNoTGlnaHQoZSksZS5jYXN0U2hhZG93JiZJLnB1c2hTaGFkb3coZSk7ZWxzZSBpZihlLmlzU3ByaXRlKXtpZighZS5mcnVzdHVtQ3VsbGVkfHx6LmludGVyc2VjdHNTcHJpdGUoZSkpe2kmJksuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKGUubWF0cml4V29ybGQpLmFwcGx5TWF0cml4NChWKTtjb25zdCBBPWFBLnVwZGF0ZShlKSx0PWUubWF0ZXJpYWw7dC52aXNpYmxlJiZDLnB1c2goZSxBLHQsbixLLnosbnVsbCl9fWVsc2UgaWYoKGUuaXNNZXNofHxlLmlzTGluZXx8ZS5pc1BvaW50cykmJighZS5mcnVzdHVtQ3VsbGVkfHx6LmludGVyc2VjdHNPYmplY3QoZSkpKXtlLmlzU2tpbm5lZE1lc2gmJmUuc2tlbGV0b24uZnJhbWUhPT1lQS5yZW5kZXIuZnJhbWUmJihlLnNrZWxldG9uLnVwZGF0ZSgpLGUuc2tlbGV0b24uZnJhbWU9ZUEucmVuZGVyLmZyYW1lKTtjb25zdCBBPWFBLnVwZGF0ZShlKSx0PWUubWF0ZXJpYWw7aWYoaSYmKHZvaWQgMCE9PWUuYm91bmRpbmdTcGhlcmU/KG51bGw9PT1lLmJvdW5kaW5nU3BoZXJlJiZlLmNvbXB1dGVCb3VuZGluZ1NwaGVyZSgpLEsuY29weShlLmJvdW5kaW5nU3BoZXJlLmNlbnRlcikpOihudWxsPT09QS5ib3VuZGluZ1NwaGVyZSYmQS5jb21wdXRlQm91bmRpbmdTcGhlcmUoKSxLLmNvcHkoQS5ib3VuZGluZ1NwaGVyZS5jZW50ZXIpKSxLLmFwcGx5TWF0cml4NChlLm1hdHJpeFdvcmxkKS5hcHBseU1hdHJpeDQoVikpLEFycmF5LmlzQXJyYXkodCkpe2NvbnN0IGk9QS5ncm91cHM7Zm9yKGxldCByPTAsbz1pLmxlbmd0aDtyPG87cisrKXtjb25zdCBvPWlbcl0scz10W28ubWF0ZXJpYWxJbmRleF07cyYmcy52aXNpYmxlJiZDLnB1c2goZSxBLHMsbixLLnosbyl9fWVsc2UgdC52aXNpYmxlJiZDLnB1c2goZSxBLHQsbixLLnosbnVsbCl9Y29uc3Qgcj1lLmNoaWxkcmVuO2ZvcihsZXQgZT0wLG89ci5sZW5ndGg7ZTxvO2UrKylBKHJbZV0sdCxuLGkpfShBLGUsMCxwLnNvcnRPYmplY3RzKSxDLmZpbmlzaCgpLCEwPT09cC5zb3J0T2JqZWN0cyYmQy5zb3J0KEgsdiksITA9PT1MJiZRQS5iZWdpblNoYWRvd3MoKTtjb25zdCB0PUkuc3RhdGUuc2hhZG93c0FycmF5O2lmKHVBLnJlbmRlcih0LEEsZSksITA9PT1MJiZRQS5lbmRTaGFkb3dzKCksITA9PT10aGlzLmluZm8uYXV0b1Jlc2V0JiZ0aGlzLmluZm8ucmVzZXQoKSx0aGlzLmluZm8ucmVuZGVyLmZyYW1lKyssbEEucmVuZGVyKEMsQSksSS5zZXR1cExpZ2h0cyhwLnVzZUxlZ2FjeUxpZ2h0cyksZS5pc0FycmF5Q2FtZXJhKXtjb25zdCB0PWUuY2FtZXJhcztmb3IobGV0IGU9MCxuPXQubGVuZ3RoO2U8bjtlKyspe2NvbnN0IG49dFtlXTtXQShDLEEsbixuLnZpZXdwb3J0KX19ZWxzZSBXQShDLEEsZSk7bnVsbCE9PVkmJihuQS51cGRhdGVNdWx0aXNhbXBsZVJlbmRlclRhcmdldChZKSxuQS51cGRhdGVSZW5kZXJUYXJnZXRNaXBtYXAoWSkpLCEwPT09QS5pc1NjZW5lJiZBLm9uQWZ0ZXJSZW5kZXIocCxBLGUpLGRBLnJlc2V0RGVmYXVsdFN0YXRlKCksZj0tMSxOPW51bGwsZC5wb3AoKSxJPWQubGVuZ3RoPjA/ZFtkLmxlbmd0aC0xXTpudWxsLE0ucG9wKCksQz1NLmxlbmd0aD4wP01bTS5sZW5ndGgtMV06bnVsbH0sdGhpcy5nZXRBY3RpdmVDdWJlRmFjZT1mdW5jdGlvbigpe3JldHVybiBGfSx0aGlzLmdldEFjdGl2ZU1pcG1hcExldmVsPWZ1bmN0aW9uKCl7cmV0dXJuIER9LHRoaXMuZ2V0UmVuZGVyVGFyZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIFl9LHRoaXMuc2V0UmVuZGVyVGFyZ2V0VGV4dHVyZXM9ZnVuY3Rpb24oQSxlLHQpe3RBLmdldChBLnRleHR1cmUpLl9fd2ViZ2xUZXh0dXJlPWUsdEEuZ2V0KEEuZGVwdGhUZXh0dXJlKS5fX3dlYmdsVGV4dHVyZT10O2NvbnN0IG49dEEuZ2V0KEEpO24uX19oYXNFeHRlcm5hbFRleHR1cmVzPSEwLG4uX19oYXNFeHRlcm5hbFRleHR1cmVzJiYobi5fX2F1dG9BbGxvY2F0ZURlcHRoQnVmZmVyPXZvaWQgMD09PXQsbi5fX2F1dG9BbGxvY2F0ZURlcHRoQnVmZmVyfHwhMD09PXEuaGFzKCJXRUJHTF9tdWx0aXNhbXBsZWRfcmVuZGVyX3RvX3RleHR1cmUiKSYmKGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogUmVuZGVyLXRvLXRleHR1cmUgZXh0ZW5zaW9uIHdhcyBkaXNhYmxlZCBiZWNhdXNlIGFuIGV4dGVybmFsIHRleHR1cmUgd2FzIHByb3ZpZGVkIiksbi5fX3VzZVJlbmRlclRvVGV4dHVyZT0hMSkpfSx0aGlzLnNldFJlbmRlclRhcmdldEZyYW1lYnVmZmVyPWZ1bmN0aW9uKEEsZSl7Y29uc3QgdD10QS5nZXQoQSk7dC5fX3dlYmdsRnJhbWVidWZmZXI9ZSx0Ll9fdXNlRGVmYXVsdEZyYW1lYnVmZmVyPXZvaWQgMD09PWV9LHRoaXMuc2V0UmVuZGVyVGFyZ2V0PWZ1bmN0aW9uKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjA7WT1BLEY9ZSxEPXQ7bGV0IG49ITAsaT1udWxsLHI9ITEsbz0hMTtpZihBKXtjb25zdCB0PXRBLmdldChBKTt2b2lkIDAhPT10Ll9fdXNlRGVmYXVsdEZyYW1lYnVmZmVyPyhBQS5iaW5kRnJhbWVidWZmZXIoRkEuRlJBTUVCVUZGRVIsbnVsbCksbj0hMSk6dm9pZCAwPT09dC5fX3dlYmdsRnJhbWVidWZmZXI/bkEuc2V0dXBSZW5kZXJUYXJnZXQoQSk6dC5fX2hhc0V4dGVybmFsVGV4dHVyZXMmJm5BLnJlYmluZFRleHR1cmVzKEEsdEEuZ2V0KEEudGV4dHVyZSkuX193ZWJnbFRleHR1cmUsdEEuZ2V0KEEuZGVwdGhUZXh0dXJlKS5fX3dlYmdsVGV4dHVyZSk7Y29uc3Qgcz1BLnRleHR1cmU7KHMuaXNEYXRhM0RUZXh0dXJlfHxzLmlzRGF0YUFycmF5VGV4dHVyZXx8cy5pc0NvbXByZXNzZWRBcnJheVRleHR1cmUpJiYobz0hMCk7Y29uc3QgYT10QS5nZXQoQSkuX193ZWJnbEZyYW1lYnVmZmVyO0EuaXNXZWJHTEN1YmVSZW5kZXJUYXJnZXQ/KGk9YVtlXSxyPSEwKTppPSQuaXNXZWJHTDImJkEuc2FtcGxlcz4wJiYhMT09PW5BLnVzZU11bHRpc2FtcGxlZFJUVChBKT90QS5nZXQoQSkuX193ZWJnbE11bHRpc2FtcGxlZEZyYW1lYnVmZmVyOmEsVS5jb3B5KEEudmlld3BvcnQpLHkuY29weShBLnNjaXNzb3IpLFQ9QS5zY2lzc29yVGVzdH1lbHNlIFUuY29weShrKS5tdWx0aXBseVNjYWxhcihiKS5mbG9vcigpLHkuY29weShqKS5tdWx0aXBseVNjYWxhcihiKS5mbG9vcigpLFQ9Sjtjb25zdCBzPUFBLmJpbmRGcmFtZWJ1ZmZlcihGQS5GUkFNRUJVRkZFUixpKTtpZihzJiYkLmRyYXdCdWZmZXJzJiZuJiZBQS5kcmF3QnVmZmVycyhBLGkpLEFBLnZpZXdwb3J0KFUpLEFBLnNjaXNzb3IoeSksQUEuc2V0U2Npc3NvclRlc3QoVCkscil7Y29uc3Qgbj10QS5nZXQoQS50ZXh0dXJlKTtGQS5mcmFtZWJ1ZmZlclRleHR1cmUyRChGQS5GUkFNRUJVRkZFUixGQS5DT0xPUl9BVFRBQ0hNRU5UMCxGQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1grZSxuLl9fd2ViZ2xUZXh0dXJlLHQpfWVsc2UgaWYobyl7Y29uc3Qgbj10QS5nZXQoQS50ZXh0dXJlKSxpPWV8fDA7RkEuZnJhbWVidWZmZXJUZXh0dXJlTGF5ZXIoRkEuRlJBTUVCVUZGRVIsRkEuQ09MT1JfQVRUQUNITUVOVDAsbi5fX3dlYmdsVGV4dHVyZSx0fHwwLGkpfWY9LTF9LHRoaXMucmVhZFJlbmRlclRhcmdldFBpeGVscz1mdW5jdGlvbihBLGUsdCxuLGkscixvKXtpZighQXx8IUEuaXNXZWJHTFJlbmRlclRhcmdldClyZXR1cm4gdm9pZCBjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFJlbmRlcmVyLnJlYWRSZW5kZXJUYXJnZXRQaXhlbHM6IHJlbmRlclRhcmdldCBpcyBub3QgVEhSRUUuV2ViR0xSZW5kZXJUYXJnZXQuIik7bGV0IHM9dEEuZ2V0KEEpLl9fd2ViZ2xGcmFtZWJ1ZmZlcjtpZihBLmlzV2ViR0xDdWJlUmVuZGVyVGFyZ2V0JiZ2b2lkIDAhPT1vJiYocz1zW29dKSxzKXtBQS5iaW5kRnJhbWVidWZmZXIoRkEuRlJBTUVCVUZGRVIscyk7dHJ5e2NvbnN0IG89QS50ZXh0dXJlLHM9by5mb3JtYXQsYT1vLnR5cGU7aWYocyE9PUdBJiZJQS5jb252ZXJ0KHMpIT09RkEuZ2V0UGFyYW1ldGVyKEZBLklNUExFTUVOVEFUSU9OX0NPTE9SX1JFQURfRk9STUFUKSlyZXR1cm4gdm9pZCBjb25zb2xlLmVycm9yKCJUSFJFRS5XZWJHTFJlbmRlcmVyLnJlYWRSZW5kZXJUYXJnZXRQaXhlbHM6IHJlbmRlclRhcmdldCBpcyBub3QgaW4gUkdCQSBvciBpbXBsZW1lbnRhdGlvbiBkZWZpbmVkIGZvcm1hdC4iKTtjb25zdCBCPWE9PT1VQSYmKHEuaGFzKCJFWFRfY29sb3JfYnVmZmVyX2hhbGZfZmxvYXQiKXx8JC5pc1dlYkdMMiYmcS5oYXMoIkVYVF9jb2xvcl9idWZmZXJfZmxvYXQiKSk7aWYoIShhPT09cEF8fElBLmNvbnZlcnQoYSk9PT1GQS5nZXRQYXJhbWV0ZXIoRkEuSU1QTEVNRU5UQVRJT05fQ09MT1JfUkVBRF9UWVBFKXx8YT09PU5BJiYoJC5pc1dlYkdMMnx8cS5oYXMoIk9FU190ZXh0dXJlX2Zsb2F0Iil8fHEuaGFzKCJXRUJHTF9jb2xvcl9idWZmZXJfZmxvYXQiKSl8fEIpKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLldlYkdMUmVuZGVyZXIucmVhZFJlbmRlclRhcmdldFBpeGVsczogcmVuZGVyVGFyZ2V0IGlzIG5vdCBpbiBVbnNpZ25lZEJ5dGVUeXBlIG9yIGltcGxlbWVudGF0aW9uIGRlZmluZWQgdHlwZS4iKTtlPj0wJiZlPD1BLndpZHRoLW4mJnQ+PTAmJnQ8PUEuaGVpZ2h0LWkmJkZBLnJlYWRQaXhlbHMoZSx0LG4saSxJQS5jb252ZXJ0KHMpLElBLmNvbnZlcnQoYSkscil9ZmluYWxseXtjb25zdCBBPW51bGwhPT1ZP3RBLmdldChZKS5fX3dlYmdsRnJhbWVidWZmZXI6bnVsbDtBQS5iaW5kRnJhbWVidWZmZXIoRkEuRlJBTUVCVUZGRVIsQSl9fX0sdGhpcy5jb3B5RnJhbWVidWZmZXJUb1RleHR1cmU9ZnVuY3Rpb24oQSxlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MDtjb25zdCBuPU1hdGgucG93KDIsLXQpLGk9TWF0aC5mbG9vcihlLmltYWdlLndpZHRoKm4pLHI9TWF0aC5mbG9vcihlLmltYWdlLmhlaWdodCpuKTtuQS5zZXRUZXh0dXJlMkQoZSwwKSxGQS5jb3B5VGV4U3ViSW1hZ2UyRChGQS5URVhUVVJFXzJELHQsMCwwLEEueCxBLnksaSxyKSxBQS51bmJpbmRUZXh0dXJlKCl9LHRoaXMuY29weVRleHR1cmVUb1RleHR1cmU9ZnVuY3Rpb24oQSxlLHQpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTowO2NvbnN0IGk9ZS5pbWFnZS53aWR0aCxyPWUuaW1hZ2UuaGVpZ2h0LG89SUEuY29udmVydCh0LmZvcm1hdCkscz1JQS5jb252ZXJ0KHQudHlwZSk7bkEuc2V0VGV4dHVyZTJEKHQsMCksRkEucGl4ZWxTdG9yZWkoRkEuVU5QQUNLX0ZMSVBfWV9XRUJHTCx0LmZsaXBZKSxGQS5waXhlbFN0b3JlaShGQS5VTlBBQ0tfUFJFTVVMVElQTFlfQUxQSEFfV0VCR0wsdC5wcmVtdWx0aXBseUFscGhhKSxGQS5waXhlbFN0b3JlaShGQS5VTlBBQ0tfQUxJR05NRU5ULHQudW5wYWNrQWxpZ25tZW50KSxlLmlzRGF0YVRleHR1cmU/RkEudGV4U3ViSW1hZ2UyRChGQS5URVhUVVJFXzJELG4sQS54LEEueSxpLHIsbyxzLGUuaW1hZ2UuZGF0YSk6ZS5pc0NvbXByZXNzZWRUZXh0dXJlP0ZBLmNvbXByZXNzZWRUZXhTdWJJbWFnZTJEKEZBLlRFWFRVUkVfMkQsbixBLngsQS55LGUubWlwbWFwc1swXS53aWR0aCxlLm1pcG1hcHNbMF0uaGVpZ2h0LG8sZS5taXBtYXBzWzBdLmRhdGEpOkZBLnRleFN1YkltYWdlMkQoRkEuVEVYVFVSRV8yRCxuLEEueCxBLnksbyxzLGUuaW1hZ2UpLDA9PT1uJiZ0LmdlbmVyYXRlTWlwbWFwcyYmRkEuZ2VuZXJhdGVNaXBtYXAoRkEuVEVYVFVSRV8yRCksQUEudW5iaW5kVGV4dHVyZSgpfSx0aGlzLmNvcHlUZXh0dXJlVG9UZXh0dXJlM0Q9ZnVuY3Rpb24oQSxlLHQsbil7bGV0IGk9YXJndW1lbnRzLmxlbmd0aD40JiZ2b2lkIDAhPT1hcmd1bWVudHNbNF0/YXJndW1lbnRzWzRdOjA7aWYocC5pc1dlYkdMMVJlbmRlcmVyKXJldHVybiB2b2lkIGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlci5jb3B5VGV4dHVyZVRvVGV4dHVyZTNEOiBjYW4gb25seSBiZSB1c2VkIHdpdGggV2ViR0wyLiIpO2NvbnN0IHI9QS5tYXgueC1BLm1pbi54KzEsbz1BLm1heC55LUEubWluLnkrMSxzPUEubWF4LnotQS5taW4ueisxLGE9SUEuY29udmVydChuLmZvcm1hdCksQj1JQS5jb252ZXJ0KG4udHlwZSk7bGV0IGM7aWYobi5pc0RhdGEzRFRleHR1cmUpbkEuc2V0VGV4dHVyZTNEKG4sMCksYz1GQS5URVhUVVJFXzNEO2Vsc2V7aWYoIW4uaXNEYXRhQXJyYXlUZXh0dXJlKXJldHVybiB2b2lkIGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlci5jb3B5VGV4dHVyZVRvVGV4dHVyZTNEOiBvbmx5IHN1cHBvcnRzIFRIUkVFLkRhdGFUZXh0dXJlM0QgYW5kIFRIUkVFLkRhdGFUZXh0dXJlMkRBcnJheS4iKTtuQS5zZXRUZXh0dXJlMkRBcnJheShuLDApLGM9RkEuVEVYVFVSRV8yRF9BUlJBWX1GQS5waXhlbFN0b3JlaShGQS5VTlBBQ0tfRkxJUF9ZX1dFQkdMLG4uZmxpcFkpLEZBLnBpeGVsU3RvcmVpKEZBLlVOUEFDS19QUkVNVUxUSVBMWV9BTFBIQV9XRUJHTCxuLnByZW11bHRpcGx5QWxwaGEpLEZBLnBpeGVsU3RvcmVpKEZBLlVOUEFDS19BTElHTk1FTlQsbi51bnBhY2tBbGlnbm1lbnQpO2NvbnN0IGc9RkEuZ2V0UGFyYW1ldGVyKEZBLlVOUEFDS19ST1dfTEVOR1RIKSxFPUZBLmdldFBhcmFtZXRlcihGQS5VTlBBQ0tfSU1BR0VfSEVJR0hUKSxRPUZBLmdldFBhcmFtZXRlcihGQS5VTlBBQ0tfU0tJUF9QSVhFTFMpLHU9RkEuZ2V0UGFyYW1ldGVyKEZBLlVOUEFDS19TS0lQX1JPV1MpLGw9RkEuZ2V0UGFyYW1ldGVyKEZBLlVOUEFDS19TS0lQX0lNQUdFUyksaD10LmlzQ29tcHJlc3NlZFRleHR1cmU/dC5taXBtYXBzWzBdOnQuaW1hZ2U7RkEucGl4ZWxTdG9yZWkoRkEuVU5QQUNLX1JPV19MRU5HVEgsaC53aWR0aCksRkEucGl4ZWxTdG9yZWkoRkEuVU5QQUNLX0lNQUdFX0hFSUdIVCxoLmhlaWdodCksRkEucGl4ZWxTdG9yZWkoRkEuVU5QQUNLX1NLSVBfUElYRUxTLEEubWluLngpLEZBLnBpeGVsU3RvcmVpKEZBLlVOUEFDS19TS0lQX1JPV1MsQS5taW4ueSksRkEucGl4ZWxTdG9yZWkoRkEuVU5QQUNLX1NLSVBfSU1BR0VTLEEubWluLnopLHQuaXNEYXRhVGV4dHVyZXx8dC5pc0RhdGEzRFRleHR1cmU/RkEudGV4U3ViSW1hZ2UzRChjLGksZS54LGUueSxlLnoscixvLHMsYSxCLGguZGF0YSk6dC5pc0NvbXByZXNzZWRBcnJheVRleHR1cmU/KGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlci5jb3B5VGV4dHVyZVRvVGV4dHVyZTNEOiB1bnRlc3RlZCBzdXBwb3J0IGZvciBjb21wcmVzc2VkIHNyY1RleHR1cmUuIiksRkEuY29tcHJlc3NlZFRleFN1YkltYWdlM0QoYyxpLGUueCxlLnksZS56LHIsbyxzLGEsaC5kYXRhKSk6RkEudGV4U3ViSW1hZ2UzRChjLGksZS54LGUueSxlLnoscixvLHMsYSxCLGgpLEZBLnBpeGVsU3RvcmVpKEZBLlVOUEFDS19ST1dfTEVOR1RILGcpLEZBLnBpeGVsU3RvcmVpKEZBLlVOUEFDS19JTUFHRV9IRUlHSFQsRSksRkEucGl4ZWxTdG9yZWkoRkEuVU5QQUNLX1NLSVBfUElYRUxTLFEpLEZBLnBpeGVsU3RvcmVpKEZBLlVOUEFDS19TS0lQX1JPV1MsdSksRkEucGl4ZWxTdG9yZWkoRkEuVU5QQUNLX1NLSVBfSU1BR0VTLGwpLDA9PT1pJiZuLmdlbmVyYXRlTWlwbWFwcyYmRkEuZ2VuZXJhdGVNaXBtYXAoYyksQUEudW5iaW5kVGV4dHVyZSgpfSx0aGlzLmluaXRUZXh0dXJlPWZ1bmN0aW9uKEEpe0EuaXNDdWJlVGV4dHVyZT9uQS5zZXRUZXh0dXJlQ3ViZShBLDApOkEuaXNEYXRhM0RUZXh0dXJlP25BLnNldFRleHR1cmUzRChBLDApOkEuaXNEYXRhQXJyYXlUZXh0dXJlfHxBLmlzQ29tcHJlc3NlZEFycmF5VGV4dHVyZT9uQS5zZXRUZXh0dXJlMkRBcnJheShBLDApOm5BLnNldFRleHR1cmUyRChBLDApLEFBLnVuYmluZFRleHR1cmUoKX0sdGhpcy5yZXNldFN0YXRlPWZ1bmN0aW9uKCl7Rj0wLEQ9MCxZPW51bGwsQUEucmVzZXQoKSxkQS5yZXNldCgpfSwidW5kZWZpbmVkIiE9dHlwZW9mIF9fVEhSRUVfREVWVE9PTFNfXyYmX19USFJFRV9ERVZUT09MU19fLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJvYnNlcnZlIix7ZGV0YWlsOnRoaXN9KSl9Z2V0IGNvb3JkaW5hdGVTeXN0ZW0oKXtyZXR1cm4gWXR9Z2V0IHBoeXNpY2FsbHlDb3JyZWN0TGlnaHRzKCl7cmV0dXJuIGNvbnNvbGUud2FybigiVEhSRUUuV2ViR0xSZW5kZXJlcjogdGhlIHByb3BlcnR5IC5waHlzaWNhbGx5Q29ycmVjdExpZ2h0cyBoYXMgYmVlbiByZW1vdmVkLiBTZXQgcmVuZGVyZXIudXNlTGVnYWN5TGlnaHRzIGluc3RlYWQuIiksIXRoaXMudXNlTGVnYWN5TGlnaHRzfXNldCBwaHlzaWNhbGx5Q29ycmVjdExpZ2h0cyhBKXtjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUmVuZGVyZXI6IHRoZSBwcm9wZXJ0eSAucGh5c2ljYWxseUNvcnJlY3RMaWdodHMgaGFzIGJlZW4gcmVtb3ZlZC4gU2V0IHJlbmRlcmVyLnVzZUxlZ2FjeUxpZ2h0cyBpbnN0ZWFkLiIpLHRoaXMudXNlTGVnYWN5TGlnaHRzPSFBfWdldCBvdXRwdXRFbmNvZGluZygpe3JldHVybiBjb25zb2xlLndhcm4oIlRIUkVFLldlYkdMUmVuZGVyZXI6IFByb3BlcnR5IC5vdXRwdXRFbmNvZGluZyBoYXMgYmVlbiByZW1vdmVkLiBVc2UgLm91dHB1dENvbG9yU3BhY2UgaW5zdGVhZC4iKSx0aGlzLm91dHB1dENvbG9yU3BhY2U9PT1KZT9TZTpHZX1zZXQgb3V0cHV0RW5jb2RpbmcoQSl7Y29uc29sZS53YXJuKCJUSFJFRS5XZWJHTFJlbmRlcmVyOiBQcm9wZXJ0eSAub3V0cHV0RW5jb2RpbmcgaGFzIGJlZW4gcmVtb3ZlZC4gVXNlIC5vdXRwdXRDb2xvclNwYWNlIGluc3RlYWQuIiksdGhpcy5vdXRwdXRDb2xvclNwYWNlPUE9PT1TZT9KZTp6ZX19Y2xhc3MgeGEgZXh0ZW5kcyBUYXt9eGEucHJvdG90eXBlLmlzV2ViR0wxUmVuZGVyZXI9ITA7Y2xhc3MgUmF7Y29uc3RydWN0b3IoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjI1ZS01O3RoaXMuaXNGb2dFeHAyPSEwLHRoaXMubmFtZT0iIix0aGlzLmNvbG9yPW5ldyBKaShBKSx0aGlzLmRlbnNpdHk9ZX1jbG9uZSgpe3JldHVybiBuZXcgUmEodGhpcy5jb2xvcix0aGlzLmRlbnNpdHkpfXRvSlNPTigpe3JldHVybnt0eXBlOiJGb2dFeHAyIixjb2xvcjp0aGlzLmNvbG9yLmdldEhleCgpLGRlbnNpdHk6dGhpcy5kZW5zaXR5fX19Y2xhc3MgR2F7Y29uc3RydWN0b3IoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjEsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MWUzO3RoaXMuaXNGb2c9ITAsdGhpcy5uYW1lPSIiLHRoaXMuY29sb3I9bmV3IEppKEEpLHRoaXMubmVhcj1lLHRoaXMuZmFyPXR9Y2xvbmUoKXtyZXR1cm4gbmV3IEdhKHRoaXMuY29sb3IsdGhpcy5uZWFyLHRoaXMuZmFyKX10b0pTT04oKXtyZXR1cm57dHlwZToiRm9nIixjb2xvcjp0aGlzLmNvbG9yLmdldEhleCgpLG5lYXI6dGhpcy5uZWFyLGZhcjp0aGlzLmZhcn19fWNsYXNzIFNhIGV4dGVuZHMgcGl7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMuaXNTY2VuZT0hMCx0aGlzLnR5cGU9IlNjZW5lIix0aGlzLmJhY2tncm91bmQ9bnVsbCx0aGlzLmVudmlyb25tZW50PW51bGwsdGhpcy5mb2c9bnVsbCx0aGlzLmJhY2tncm91bmRCbHVycmluZXNzPTAsdGhpcy5iYWNrZ3JvdW5kSW50ZW5zaXR5PTEsdGhpcy5vdmVycmlkZU1hdGVyaWFsPW51bGwsInVuZGVmaW5lZCIhPXR5cGVvZiBfX1RIUkVFX0RFVlRPT0xTX18mJl9fVEhSRUVfREVWVE9PTFNfXy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgib2JzZXJ2ZSIse2RldGFpbDp0aGlzfSkpfWNvcHkoQSxlKXtyZXR1cm4gc3VwZXIuY29weShBLGUpLG51bGwhPT1BLmJhY2tncm91bmQmJih0aGlzLmJhY2tncm91bmQ9QS5iYWNrZ3JvdW5kLmNsb25lKCkpLG51bGwhPT1BLmVudmlyb25tZW50JiYodGhpcy5lbnZpcm9ubWVudD1BLmVudmlyb25tZW50LmNsb25lKCkpLG51bGwhPT1BLmZvZyYmKHRoaXMuZm9nPUEuZm9nLmNsb25lKCkpLHRoaXMuYmFja2dyb3VuZEJsdXJyaW5lc3M9QS5iYWNrZ3JvdW5kQmx1cnJpbmVzcyx0aGlzLmJhY2tncm91bmRJbnRlbnNpdHk9QS5iYWNrZ3JvdW5kSW50ZW5zaXR5LG51bGwhPT1BLm92ZXJyaWRlTWF0ZXJpYWwmJih0aGlzLm92ZXJyaWRlTWF0ZXJpYWw9QS5vdmVycmlkZU1hdGVyaWFsLmNsb25lKCkpLHRoaXMubWF0cml4QXV0b1VwZGF0ZT1BLm1hdHJpeEF1dG9VcGRhdGUsdGhpc310b0pTT04oQSl7Y29uc3QgZT1zdXBlci50b0pTT04oQSk7cmV0dXJuIG51bGwhPT10aGlzLmZvZyYmKGUub2JqZWN0LmZvZz10aGlzLmZvZy50b0pTT04oKSksdGhpcy5iYWNrZ3JvdW5kQmx1cnJpbmVzcz4wJiYoZS5vYmplY3QuYmFja2dyb3VuZEJsdXJyaW5lc3M9dGhpcy5iYWNrZ3JvdW5kQmx1cnJpbmVzcyksMSE9PXRoaXMuYmFja2dyb3VuZEludGVuc2l0eSYmKGUub2JqZWN0LmJhY2tncm91bmRJbnRlbnNpdHk9dGhpcy5iYWNrZ3JvdW5kSW50ZW5zaXR5KSxlfWdldCBhdXRvVXBkYXRlKCl7cmV0dXJuIGNvbnNvbGUud2FybigiVEhSRUUuU2NlbmU6IGF1dG9VcGRhdGUgd2FzIHJlbmFtZWQgdG8gbWF0cml4V29ybGRBdXRvVXBkYXRlIGluIHIxNDQuIiksdGhpcy5tYXRyaXhXb3JsZEF1dG9VcGRhdGV9c2V0IGF1dG9VcGRhdGUoQSl7Y29uc29sZS53YXJuKCJUSFJFRS5TY2VuZTogYXV0b1VwZGF0ZSB3YXMgcmVuYW1lZCB0byBtYXRyaXhXb3JsZEF1dG9VcGRhdGUgaW4gcjE0NC4iKSx0aGlzLm1hdHJpeFdvcmxkQXV0b1VwZGF0ZT1BfX1jbGFzcyBiYXtjb25zdHJ1Y3RvcihBLGUpe3RoaXMuaXNJbnRlcmxlYXZlZEJ1ZmZlcj0hMCx0aGlzLmFycmF5PUEsdGhpcy5zdHJpZGU9ZSx0aGlzLmNvdW50PXZvaWQgMCE9PUE/QS5sZW5ndGgvZTowLHRoaXMudXNhZ2U9dXQsdGhpcy51cGRhdGVSYW5nZT17b2Zmc2V0OjAsY291bnQ6LTF9LHRoaXMudmVyc2lvbj0wLHRoaXMudXVpZD1SdCgpfW9uVXBsb2FkQ2FsbGJhY2soKXt9c2V0IG5lZWRzVXBkYXRlKEEpeyEwPT09QSYmdGhpcy52ZXJzaW9uKyt9c2V0VXNhZ2UoQSl7cmV0dXJuIHRoaXMudXNhZ2U9QSx0aGlzfWNvcHkoQSl7cmV0dXJuIHRoaXMuYXJyYXk9bmV3IEEuYXJyYXkuY29uc3RydWN0b3IoQS5hcnJheSksdGhpcy5jb3VudD1BLmNvdW50LHRoaXMuc3RyaWRlPUEuc3RyaWRlLHRoaXMudXNhZ2U9QS51c2FnZSx0aGlzfWNvcHlBdChBLGUsdCl7QSo9dGhpcy5zdHJpZGUsdCo9ZS5zdHJpZGU7Zm9yKGxldCBuPTAsaT10aGlzLnN0cmlkZTtuPGk7bisrKXRoaXMuYXJyYXlbQStuXT1lLmFycmF5W3Qrbl07cmV0dXJuIHRoaXN9c2V0KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3JldHVybiB0aGlzLmFycmF5LnNldChBLGUpLHRoaXN9Y2xvbmUoQSl7dm9pZCAwPT09QS5hcnJheUJ1ZmZlcnMmJihBLmFycmF5QnVmZmVycz17fSksdm9pZCAwPT09dGhpcy5hcnJheS5idWZmZXIuX3V1aWQmJih0aGlzLmFycmF5LmJ1ZmZlci5fdXVpZD1SdCgpKSx2b2lkIDA9PT1BLmFycmF5QnVmZmVyc1t0aGlzLmFycmF5LmJ1ZmZlci5fdXVpZF0mJihBLmFycmF5QnVmZmVyc1t0aGlzLmFycmF5LmJ1ZmZlci5fdXVpZF09dGhpcy5hcnJheS5zbGljZSgwKS5idWZmZXIpO2NvbnN0IGU9bmV3IHRoaXMuYXJyYXkuY29uc3RydWN0b3IoQS5hcnJheUJ1ZmZlcnNbdGhpcy5hcnJheS5idWZmZXIuX3V1aWRdKSx0PW5ldyB0aGlzLmNvbnN0cnVjdG9yKGUsdGhpcy5zdHJpZGUpO3JldHVybiB0LnNldFVzYWdlKHRoaXMudXNhZ2UpLHR9b25VcGxvYWQoQSl7cmV0dXJuIHRoaXMub25VcGxvYWRDYWxsYmFjaz1BLHRoaXN9dG9KU09OKEEpe3JldHVybiB2b2lkIDA9PT1BLmFycmF5QnVmZmVycyYmKEEuYXJyYXlCdWZmZXJzPXt9KSx2b2lkIDA9PT10aGlzLmFycmF5LmJ1ZmZlci5fdXVpZCYmKHRoaXMuYXJyYXkuYnVmZmVyLl91dWlkPVJ0KCkpLHZvaWQgMD09PUEuYXJyYXlCdWZmZXJzW3RoaXMuYXJyYXkuYnVmZmVyLl91dWlkXSYmKEEuYXJyYXlCdWZmZXJzW3RoaXMuYXJyYXkuYnVmZmVyLl91dWlkXT1BcnJheS5mcm9tKG5ldyBVaW50MzJBcnJheSh0aGlzLmFycmF5LmJ1ZmZlcikpKSx7dXVpZDp0aGlzLnV1aWQsYnVmZmVyOnRoaXMuYXJyYXkuYnVmZmVyLl91dWlkLHR5cGU6dGhpcy5hcnJheS5jb25zdHJ1Y3Rvci5uYW1lLHN0cmlkZTp0aGlzLnN0cmlkZX19fWNvbnN0IEhhPW5ldyBkbjtjbGFzcyB2YXtjb25zdHJ1Y3RvcihBLGUsdCl7bGV0IG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10mJmFyZ3VtZW50c1szXTt0aGlzLmlzSW50ZXJsZWF2ZWRCdWZmZXJBdHRyaWJ1dGU9ITAsdGhpcy5uYW1lPSIiLHRoaXMuZGF0YT1BLHRoaXMuaXRlbVNpemU9ZSx0aGlzLm9mZnNldD10LHRoaXMubm9ybWFsaXplZD1ufWdldCBjb3VudCgpe3JldHVybiB0aGlzLmRhdGEuY291bnR9Z2V0IGFycmF5KCl7cmV0dXJuIHRoaXMuZGF0YS5hcnJheX1zZXQgbmVlZHNVcGRhdGUoQSl7dGhpcy5kYXRhLm5lZWRzVXBkYXRlPUF9YXBwbHlNYXRyaXg0KEEpe2ZvcihsZXQgZT0wLHQ9dGhpcy5kYXRhLmNvdW50O2U8dDtlKyspSGEuZnJvbUJ1ZmZlckF0dHJpYnV0ZSh0aGlzLGUpLEhhLmFwcGx5TWF0cml4NChBKSx0aGlzLnNldFhZWihlLEhhLngsSGEueSxIYS56KTtyZXR1cm4gdGhpc31hcHBseU5vcm1hbE1hdHJpeChBKXtmb3IobGV0IGU9MCx0PXRoaXMuY291bnQ7ZTx0O2UrKylIYS5mcm9tQnVmZmVyQXR0cmlidXRlKHRoaXMsZSksSGEuYXBwbHlOb3JtYWxNYXRyaXgoQSksdGhpcy5zZXRYWVooZSxIYS54LEhhLnksSGEueik7cmV0dXJuIHRoaXN9dHJhbnNmb3JtRGlyZWN0aW9uKEEpe2ZvcihsZXQgZT0wLHQ9dGhpcy5jb3VudDtlPHQ7ZSsrKUhhLmZyb21CdWZmZXJBdHRyaWJ1dGUodGhpcyxlKSxIYS50cmFuc2Zvcm1EaXJlY3Rpb24oQSksdGhpcy5zZXRYWVooZSxIYS54LEhhLnksSGEueik7cmV0dXJuIHRoaXN9c2V0WChBLGUpe3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSkpLHRoaXMuZGF0YS5hcnJheVtBKnRoaXMuZGF0YS5zdHJpZGUrdGhpcy5vZmZzZXRdPWUsdGhpc31zZXRZKEEsZSl7cmV0dXJuIHRoaXMubm9ybWFsaXplZCYmKGU9SnQoZSx0aGlzLmFycmF5KSksdGhpcy5kYXRhLmFycmF5W0EqdGhpcy5kYXRhLnN0cmlkZSt0aGlzLm9mZnNldCsxXT1lLHRoaXN9c2V0WihBLGUpe3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSkpLHRoaXMuZGF0YS5hcnJheVtBKnRoaXMuZGF0YS5zdHJpZGUrdGhpcy5vZmZzZXQrMl09ZSx0aGlzfXNldFcoQSxlKXtyZXR1cm4gdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpKSx0aGlzLmRhdGEuYXJyYXlbQSp0aGlzLmRhdGEuc3RyaWRlK3RoaXMub2Zmc2V0KzNdPWUsdGhpc31nZXRYKEEpe2xldCBlPXRoaXMuZGF0YS5hcnJheVtBKnRoaXMuZGF0YS5zdHJpZGUrdGhpcy5vZmZzZXRdO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9Z2V0WShBKXtsZXQgZT10aGlzLmRhdGEuYXJyYXlbQSp0aGlzLmRhdGEuc3RyaWRlK3RoaXMub2Zmc2V0KzFdO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9Z2V0WihBKXtsZXQgZT10aGlzLmRhdGEuYXJyYXlbQSp0aGlzLmRhdGEuc3RyaWRlK3RoaXMub2Zmc2V0KzJdO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9Z2V0VyhBKXtsZXQgZT10aGlzLmRhdGEuYXJyYXlbQSp0aGlzLmRhdGEuc3RyaWRlK3RoaXMub2Zmc2V0KzNdO3JldHVybiB0aGlzLm5vcm1hbGl6ZWQmJihlPWp0KGUsdGhpcy5hcnJheSkpLGV9c2V0WFkoQSxlLHQpe3JldHVybiBBPUEqdGhpcy5kYXRhLnN0cmlkZSt0aGlzLm9mZnNldCx0aGlzLm5vcm1hbGl6ZWQmJihlPUp0KGUsdGhpcy5hcnJheSksdD1KdCh0LHRoaXMuYXJyYXkpKSx0aGlzLmRhdGEuYXJyYXlbQSswXT1lLHRoaXMuZGF0YS5hcnJheVtBKzFdPXQsdGhpc31zZXRYWVooQSxlLHQsbil7cmV0dXJuIEE9QSp0aGlzLmRhdGEuc3RyaWRlK3RoaXMub2Zmc2V0LHRoaXMubm9ybWFsaXplZCYmKGU9SnQoZSx0aGlzLmFycmF5KSx0PUp0KHQsdGhpcy5hcnJheSksbj1KdChuLHRoaXMuYXJyYXkpKSx0aGlzLmRhdGEuYXJyYXlbQSswXT1lLHRoaXMuZGF0YS5hcnJheVtBKzFdPXQsdGhpcy5kYXRhLmFycmF5W0ErMl09bix0aGlzfXNldFhZWlcoQSxlLHQsbixpKXtyZXR1cm4gQT1BKnRoaXMuZGF0YS5zdHJpZGUrdGhpcy5vZmZzZXQsdGhpcy5ub3JtYWxpemVkJiYoZT1KdChlLHRoaXMuYXJyYXkpLHQ9SnQodCx0aGlzLmFycmF5KSxuPUp0KG4sdGhpcy5hcnJheSksaT1KdChpLHRoaXMuYXJyYXkpKSx0aGlzLmRhdGEuYXJyYXlbQSswXT1lLHRoaXMuZGF0YS5hcnJheVtBKzFdPXQsdGhpcy5kYXRhLmFycmF5W0ErMl09bix0aGlzLmRhdGEuYXJyYXlbQSszXT1pLHRoaXN9Y2xvbmUoQSl7aWYodm9pZCAwPT09QSl7Y29uc29sZS5sb2coIlRIUkVFLkludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlLmNsb25lKCk6IENsb25pbmcgYW4gaW50ZXJsZWF2ZWQgYnVmZmVyIGF0dHJpYnV0ZSB3aWxsIGRlLWludGVybGVhdmUgYnVmZmVyIGRhdGEuIik7Y29uc3QgQT1bXTtmb3IobGV0IGU9MDtlPHRoaXMuY291bnQ7ZSsrKXtjb25zdCB0PWUqdGhpcy5kYXRhLnN0cmlkZSt0aGlzLm9mZnNldDtmb3IobGV0IGU9MDtlPHRoaXMuaXRlbVNpemU7ZSsrKUEucHVzaCh0aGlzLmRhdGEuYXJyYXlbdCtlXSl9cmV0dXJuIG5ldyBfaShuZXcgdGhpcy5hcnJheS5jb25zdHJ1Y3RvcihBKSx0aGlzLml0ZW1TaXplLHRoaXMubm9ybWFsaXplZCl9cmV0dXJuIHZvaWQgMD09PUEuaW50ZXJsZWF2ZWRCdWZmZXJzJiYoQS5pbnRlcmxlYXZlZEJ1ZmZlcnM9e30pLHZvaWQgMD09PUEuaW50ZXJsZWF2ZWRCdWZmZXJzW3RoaXMuZGF0YS51dWlkXSYmKEEuaW50ZXJsZWF2ZWRCdWZmZXJzW3RoaXMuZGF0YS51dWlkXT10aGlzLmRhdGEuY2xvbmUoQSkpLG5ldyB2YShBLmludGVybGVhdmVkQnVmZmVyc1t0aGlzLmRhdGEudXVpZF0sdGhpcy5pdGVtU2l6ZSx0aGlzLm9mZnNldCx0aGlzLm5vcm1hbGl6ZWQpfXRvSlNPTihBKXtpZih2b2lkIDA9PT1BKXtjb25zb2xlLmxvZygiVEhSRUUuSW50ZXJsZWF2ZWRCdWZmZXJBdHRyaWJ1dGUudG9KU09OKCk6IFNlcmlhbGl6aW5nIGFuIGludGVybGVhdmVkIGJ1ZmZlciBhdHRyaWJ1dGUgd2lsbCBkZS1pbnRlcmxlYXZlIGJ1ZmZlciBkYXRhLiIpO2NvbnN0IEE9W107Zm9yKGxldCBlPTA7ZTx0aGlzLmNvdW50O2UrKyl7Y29uc3QgdD1lKnRoaXMuZGF0YS5zdHJpZGUrdGhpcy5vZmZzZXQ7Zm9yKGxldCBlPTA7ZTx0aGlzLml0ZW1TaXplO2UrKylBLnB1c2godGhpcy5kYXRhLmFycmF5W3QrZV0pfXJldHVybntpdGVtU2l6ZTp0aGlzLml0ZW1TaXplLHR5cGU6dGhpcy5hcnJheS5jb25zdHJ1Y3Rvci5uYW1lLGFycmF5OkEsbm9ybWFsaXplZDp0aGlzLm5vcm1hbGl6ZWR9fXJldHVybiB2b2lkIDA9PT1BLmludGVybGVhdmVkQnVmZmVycyYmKEEuaW50ZXJsZWF2ZWRCdWZmZXJzPXt9KSx2b2lkIDA9PT1BLmludGVybGVhdmVkQnVmZmVyc1t0aGlzLmRhdGEudXVpZF0mJihBLmludGVybGVhdmVkQnVmZmVyc1t0aGlzLmRhdGEudXVpZF09dGhpcy5kYXRhLnRvSlNPTihBKSkse2lzSW50ZXJsZWF2ZWRCdWZmZXJBdHRyaWJ1dGU6ITAsaXRlbVNpemU6dGhpcy5pdGVtU2l6ZSxkYXRhOnRoaXMuZGF0YS51dWlkLG9mZnNldDp0aGlzLm9mZnNldCxub3JtYWxpemVkOnRoaXMubm9ybWFsaXplZH19fWNsYXNzIGthIGV4dGVuZHMgYml7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLmlzU3ByaXRlTWF0ZXJpYWw9ITAsdGhpcy50eXBlPSJTcHJpdGVNYXRlcmlhbCIsdGhpcy5jb2xvcj1uZXcgSmkoMTY3NzcyMTUpLHRoaXMubWFwPW51bGwsdGhpcy5hbHBoYU1hcD1udWxsLHRoaXMucm90YXRpb249MCx0aGlzLnNpemVBdHRlbnVhdGlvbj0hMCx0aGlzLnRyYW5zcGFyZW50PSEwLHRoaXMuZm9nPSEwLHRoaXMuc2V0VmFsdWVzKEEpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5jb2xvci5jb3B5KEEuY29sb3IpLHRoaXMubWFwPUEubWFwLHRoaXMuYWxwaGFNYXA9QS5hbHBoYU1hcCx0aGlzLnJvdGF0aW9uPUEucm90YXRpb24sdGhpcy5zaXplQXR0ZW51YXRpb249QS5zaXplQXR0ZW51YXRpb24sdGhpcy5mb2c9QS5mb2csdGhpc319bGV0IGphO2NvbnN0IEphPW5ldyBkbix6YT1uZXcgZG4sTGE9bmV3IGRuLFBhPW5ldyBMdCxPYT1uZXcgTHQsVmE9bmV3IF9uLFdhPW5ldyBkbixLYT1uZXcgZG4sWGE9bmV3IGRuLFphPW5ldyBMdCxfYT1uZXcgTHQscWE9bmV3IEx0O2NsYXNzICRhIGV4dGVuZHMgcGl7Y29uc3RydWN0b3IoQSl7aWYoc3VwZXIoKSx0aGlzLmlzU3ByaXRlPSEwLHRoaXMudHlwZT0iU3ByaXRlIix2b2lkIDA9PT1qYSl7amE9bmV3IGxyO2NvbnN0IEE9bmV3IEZsb2F0MzJBcnJheShbLS41LC0uNSwwLDAsMCwuNSwtLjUsMCwxLDAsLjUsLjUsMCwxLDEsLS41LC41LDAsMCwxXSksZT1uZXcgYmEoQSw1KTtqYS5zZXRJbmRleChbMCwxLDIsMCwyLDNdKSxqYS5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgdmEoZSwzLDAsITEpKSxqYS5zZXRBdHRyaWJ1dGUoInV2IixuZXcgdmEoZSwyLDMsITEpKX10aGlzLmdlb21ldHJ5PWphLHRoaXMubWF0ZXJpYWw9dm9pZCAwIT09QT9BOm5ldyBrYSx0aGlzLmNlbnRlcj1uZXcgTHQoLjUsLjUpfXJheWNhc3QoQSxlKXtudWxsPT09QS5jYW1lcmEmJmNvbnNvbGUuZXJyb3IoJ1RIUkVFLlNwcml0ZTogIlJheWNhc3Rlci5jYW1lcmEiIG5lZWRzIHRvIGJlIHNldCBpbiBvcmRlciB0byByYXljYXN0IGFnYWluc3Qgc3ByaXRlcy4nKSx6YS5zZXRGcm9tTWF0cml4U2NhbGUodGhpcy5tYXRyaXhXb3JsZCksVmEuY29weShBLmNhbWVyYS5tYXRyaXhXb3JsZCksdGhpcy5tb2RlbFZpZXdNYXRyaXgubXVsdGlwbHlNYXRyaWNlcyhBLmNhbWVyYS5tYXRyaXhXb3JsZEludmVyc2UsdGhpcy5tYXRyaXhXb3JsZCksTGEuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKHRoaXMubW9kZWxWaWV3TWF0cml4KSxBLmNhbWVyYS5pc1BlcnNwZWN0aXZlQ2FtZXJhJiYhMT09PXRoaXMubWF0ZXJpYWwuc2l6ZUF0dGVudWF0aW9uJiZ6YS5tdWx0aXBseVNjYWxhcigtTGEueik7Y29uc3QgdD10aGlzLm1hdGVyaWFsLnJvdGF0aW9uO2xldCBuLGk7MCE9PXQmJihpPU1hdGguY29zKHQpLG49TWF0aC5zaW4odCkpO2NvbnN0IHI9dGhpcy5jZW50ZXI7QUIoV2Euc2V0KC0uNSwtLjUsMCksTGEscix6YSxuLGkpLEFCKEthLnNldCguNSwtLjUsMCksTGEscix6YSxuLGkpLEFCKFhhLnNldCguNSwuNSwwKSxMYSxyLHphLG4saSksWmEuc2V0KDAsMCksX2Euc2V0KDEsMCkscWEuc2V0KDEsMSk7bGV0IG89QS5yYXkuaW50ZXJzZWN0VHJpYW5nbGUoV2EsS2EsWGEsITEsSmEpO2lmKG51bGw9PT1vJiYoQUIoS2Euc2V0KC0uNSwuNSwwKSxMYSxyLHphLG4saSksX2Euc2V0KDAsMSksbz1BLnJheS5pbnRlcnNlY3RUcmlhbmdsZShXYSxYYSxLYSwhMSxKYSksbnVsbD09PW8pKXJldHVybjtjb25zdCBzPUEucmF5Lm9yaWdpbi5kaXN0YW5jZVRvKEphKTtzPEEubmVhcnx8cz5BLmZhcnx8ZS5wdXNoKHtkaXN0YW5jZTpzLHBvaW50OkphLmNsb25lKCksdXY6R2kuZ2V0SW50ZXJwb2xhdGlvbihKYSxXYSxLYSxYYSxaYSxfYSxxYSxuZXcgTHQpLGZhY2U6bnVsbCxvYmplY3Q6dGhpc30pfWNvcHkoQSxlKXtyZXR1cm4gc3VwZXIuY29weShBLGUpLHZvaWQgMCE9PUEuY2VudGVyJiZ0aGlzLmNlbnRlci5jb3B5KEEuY2VudGVyKSx0aGlzLm1hdGVyaWFsPUEubWF0ZXJpYWwsdGhpc319ZnVuY3Rpb24gQUIoQSxlLHQsbixpLHIpe1BhLnN1YlZlY3RvcnMoQSx0KS5hZGRTY2FsYXIoLjUpLm11bHRpcGx5KG4pLHZvaWQgMCE9PWk/KE9hLng9cipQYS54LWkqUGEueSxPYS55PWkqUGEueCtyKlBhLnkpOk9hLmNvcHkoUGEpLEEuY29weShlKSxBLngrPU9hLngsQS55Kz1PYS55LEEuYXBwbHlNYXRyaXg0KFZhKX1jb25zdCBlQj1uZXcgZG4sdEI9bmV3IGRuO2NsYXNzIG5CIGV4dGVuZHMgcGl7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMuX2N1cnJlbnRMZXZlbD0wLHRoaXMudHlwZT0iTE9EIixPYmplY3QuZGVmaW5lUHJvcGVydGllcyh0aGlzLHtsZXZlbHM6e2VudW1lcmFibGU6ITAsdmFsdWU6W119LGlzTE9EOnt2YWx1ZTohMH19KSx0aGlzLmF1dG9VcGRhdGU9ITB9Y29weShBKXtzdXBlci5jb3B5KEEsITEpO2NvbnN0IGU9QS5sZXZlbHM7Zm9yKGxldCBBPTAsdD1lLmxlbmd0aDtBPHQ7QSsrKXtjb25zdCB0PWVbQV07dGhpcy5hZGRMZXZlbCh0Lm9iamVjdC5jbG9uZSgpLHQuZGlzdGFuY2UsdC5oeXN0ZXJlc2lzKX1yZXR1cm4gdGhpcy5hdXRvVXBkYXRlPUEuYXV0b1VwZGF0ZSx0aGlzfWFkZExldmVsKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjA7ZT1NYXRoLmFicyhlKTtjb25zdCBuPXRoaXMubGV2ZWxzO2xldCBpO2ZvcihpPTA7aTxuLmxlbmd0aCYmIShlPG5baV0uZGlzdGFuY2UpO2krKyk7cmV0dXJuIG4uc3BsaWNlKGksMCx7ZGlzdGFuY2U6ZSxoeXN0ZXJlc2lzOnQsb2JqZWN0OkF9KSx0aGlzLmFkZChBKSx0aGlzfWdldEN1cnJlbnRMZXZlbCgpe3JldHVybiB0aGlzLl9jdXJyZW50TGV2ZWx9Z2V0T2JqZWN0Rm9yRGlzdGFuY2UoQSl7Y29uc3QgZT10aGlzLmxldmVscztpZihlLmxlbmd0aD4wKXtsZXQgdCxuO2Zvcih0PTEsbj1lLmxlbmd0aDt0PG47dCsrKXtsZXQgbj1lW3RdLmRpc3RhbmNlO2lmKGVbdF0ub2JqZWN0LnZpc2libGUmJihuLT1uKmVbdF0uaHlzdGVyZXNpcyksQTxuKWJyZWFrfXJldHVybiBlW3QtMV0ub2JqZWN0fXJldHVybiBudWxsfXJheWNhc3QoQSxlKXtpZih0aGlzLmxldmVscy5sZW5ndGg+MCl7ZUIuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKHRoaXMubWF0cml4V29ybGQpO2NvbnN0IHQ9QS5yYXkub3JpZ2luLmRpc3RhbmNlVG8oZUIpO3RoaXMuZ2V0T2JqZWN0Rm9yRGlzdGFuY2UodCkucmF5Y2FzdChBLGUpfX11cGRhdGUoQSl7Y29uc3QgZT10aGlzLmxldmVscztpZihlLmxlbmd0aD4xKXtlQi5zZXRGcm9tTWF0cml4UG9zaXRpb24oQS5tYXRyaXhXb3JsZCksdEIuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKHRoaXMubWF0cml4V29ybGQpO2NvbnN0IHQ9ZUIuZGlzdGFuY2VUbyh0QikvQS56b29tO2xldCBuLGk7Zm9yKGVbMF0ub2JqZWN0LnZpc2libGU9ITAsbj0xLGk9ZS5sZW5ndGg7bjxpO24rKyl7bGV0IEE9ZVtuXS5kaXN0YW5jZTtpZihlW25dLm9iamVjdC52aXNpYmxlJiYoQS09QSplW25dLmh5c3RlcmVzaXMpLCEodD49QSkpYnJlYWs7ZVtuLTFdLm9iamVjdC52aXNpYmxlPSExLGVbbl0ub2JqZWN0LnZpc2libGU9ITB9Zm9yKHRoaXMuX2N1cnJlbnRMZXZlbD1uLTE7bjxpO24rKyllW25dLm9iamVjdC52aXNpYmxlPSExfX10b0pTT04oQSl7Y29uc3QgZT1zdXBlci50b0pTT04oQSk7ITE9PT10aGlzLmF1dG9VcGRhdGUmJihlLm9iamVjdC5hdXRvVXBkYXRlPSExKSxlLm9iamVjdC5sZXZlbHM9W107Y29uc3QgdD10aGlzLmxldmVscztmb3IobGV0IEE9MCxuPXQubGVuZ3RoO0E8bjtBKyspe2NvbnN0IG49dFtBXTtlLm9iamVjdC5sZXZlbHMucHVzaCh7b2JqZWN0Om4ub2JqZWN0LnV1aWQsZGlzdGFuY2U6bi5kaXN0YW5jZSxoeXN0ZXJlc2lzOm4uaHlzdGVyZXNpc30pfXJldHVybiBlfX1jb25zdCBpQj1uZXcgZG4sckI9bmV3IFFuLG9CPW5ldyBRbixzQj1uZXcgZG4sYUI9bmV3IF9uLEJCPW5ldyBkbixjQj1uZXcgem4sZ0I9bmV3IF9uLEVCPW5ldyBabjtjbGFzcyBRQiBleHRlbmRzIFJye2NvbnN0cnVjdG9yKEEsZSl7c3VwZXIoQSxlKSx0aGlzLmlzU2tpbm5lZE1lc2g9ITAsdGhpcy50eXBlPSJTa2lubmVkTWVzaCIsdGhpcy5iaW5kTW9kZT0iYXR0YWNoZWQiLHRoaXMuYmluZE1hdHJpeD1uZXcgX24sdGhpcy5iaW5kTWF0cml4SW52ZXJzZT1uZXcgX24sdGhpcy5ib3VuZGluZ0JveD1udWxsLHRoaXMuYm91bmRpbmdTcGhlcmU9bnVsbH1jb21wdXRlQm91bmRpbmdCb3goKXtjb25zdCBBPXRoaXMuZ2VvbWV0cnk7bnVsbD09PXRoaXMuYm91bmRpbmdCb3gmJih0aGlzLmJvdW5kaW5nQm94PW5ldyBGbiksdGhpcy5ib3VuZGluZ0JveC5tYWtlRW1wdHkoKTtjb25zdCBlPUEuZ2V0QXR0cmlidXRlKCJwb3NpdGlvbiIpO2ZvcihsZXQgQT0wO0E8ZS5jb3VudDtBKyspQkIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShlLEEpLHRoaXMuYXBwbHlCb25lVHJhbnNmb3JtKEEsQkIpLHRoaXMuYm91bmRpbmdCb3guZXhwYW5kQnlQb2ludChCQil9Y29tcHV0ZUJvdW5kaW5nU3BoZXJlKCl7Y29uc3QgQT10aGlzLmdlb21ldHJ5O251bGw9PT10aGlzLmJvdW5kaW5nU3BoZXJlJiYodGhpcy5ib3VuZGluZ1NwaGVyZT1uZXcgem4pLHRoaXMuYm91bmRpbmdTcGhlcmUubWFrZUVtcHR5KCk7Y29uc3QgZT1BLmdldEF0dHJpYnV0ZSgicG9zaXRpb24iKTtmb3IobGV0IEE9MDtBPGUuY291bnQ7QSsrKUJCLmZyb21CdWZmZXJBdHRyaWJ1dGUoZSxBKSx0aGlzLmFwcGx5Qm9uZVRyYW5zZm9ybShBLEJCKSx0aGlzLmJvdW5kaW5nU3BoZXJlLmV4cGFuZEJ5UG9pbnQoQkIpfWNvcHkoQSxlKXtyZXR1cm4gc3VwZXIuY29weShBLGUpLHRoaXMuYmluZE1vZGU9QS5iaW5kTW9kZSx0aGlzLmJpbmRNYXRyaXguY29weShBLmJpbmRNYXRyaXgpLHRoaXMuYmluZE1hdHJpeEludmVyc2UuY29weShBLmJpbmRNYXRyaXhJbnZlcnNlKSx0aGlzLnNrZWxldG9uPUEuc2tlbGV0b24sbnVsbCE9PUEuYm91bmRpbmdCb3gmJih0aGlzLmJvdW5kaW5nQm94PUEuYm91bmRpbmdCb3guY2xvbmUoKSksbnVsbCE9PUEuYm91bmRpbmdTcGhlcmUmJih0aGlzLmJvdW5kaW5nU3BoZXJlPUEuYm91bmRpbmdTcGhlcmUuY2xvbmUoKSksdGhpc31yYXljYXN0KEEsZSl7Y29uc3QgdD10aGlzLm1hdGVyaWFsLG49dGhpcy5tYXRyaXhXb3JsZDt2b2lkIDAhPT10JiYobnVsbD09PXRoaXMuYm91bmRpbmdTcGhlcmUmJnRoaXMuY29tcHV0ZUJvdW5kaW5nU3BoZXJlKCksY0IuY29weSh0aGlzLmJvdW5kaW5nU3BoZXJlKSxjQi5hcHBseU1hdHJpeDQobiksITEhPT1BLnJheS5pbnRlcnNlY3RzU3BoZXJlKGNCKSYmKGdCLmNvcHkobikuaW52ZXJ0KCksRUIuY29weShBLnJheSkuYXBwbHlNYXRyaXg0KGdCKSxudWxsIT09dGhpcy5ib3VuZGluZ0JveCYmITE9PT1FQi5pbnRlcnNlY3RzQm94KHRoaXMuYm91bmRpbmdCb3gpfHx0aGlzLl9jb21wdXRlSW50ZXJzZWN0aW9ucyhBLGUsRUIpKSl9Z2V0VmVydGV4UG9zaXRpb24oQSxlKXtyZXR1cm4gc3VwZXIuZ2V0VmVydGV4UG9zaXRpb24oQSxlKSx0aGlzLmFwcGx5Qm9uZVRyYW5zZm9ybShBLGUpLGV9YmluZChBLGUpe3RoaXMuc2tlbGV0b249QSx2b2lkIDA9PT1lJiYodGhpcy51cGRhdGVNYXRyaXhXb3JsZCghMCksdGhpcy5za2VsZXRvbi5jYWxjdWxhdGVJbnZlcnNlcygpLGU9dGhpcy5tYXRyaXhXb3JsZCksdGhpcy5iaW5kTWF0cml4LmNvcHkoZSksdGhpcy5iaW5kTWF0cml4SW52ZXJzZS5jb3B5KGUpLmludmVydCgpfXBvc2UoKXt0aGlzLnNrZWxldG9uLnBvc2UoKX1ub3JtYWxpemVTa2luV2VpZ2h0cygpe2NvbnN0IEE9bmV3IFFuLGU9dGhpcy5nZW9tZXRyeS5hdHRyaWJ1dGVzLnNraW5XZWlnaHQ7Zm9yKGxldCB0PTAsbj1lLmNvdW50O3Q8bjt0Kyspe0EuZnJvbUJ1ZmZlckF0dHJpYnV0ZShlLHQpO2NvbnN0IG49MS9BLm1hbmhhdHRhbkxlbmd0aCgpO24hPT0xLzA/QS5tdWx0aXBseVNjYWxhcihuKTpBLnNldCgxLDAsMCwwKSxlLnNldFhZWlcodCxBLngsQS55LEEueixBLncpfX11cGRhdGVNYXRyaXhXb3JsZChBKXtzdXBlci51cGRhdGVNYXRyaXhXb3JsZChBKSwiYXR0YWNoZWQiPT09dGhpcy5iaW5kTW9kZT90aGlzLmJpbmRNYXRyaXhJbnZlcnNlLmNvcHkodGhpcy5tYXRyaXhXb3JsZCkuaW52ZXJ0KCk6ImRldGFjaGVkIj09PXRoaXMuYmluZE1vZGU/dGhpcy5iaW5kTWF0cml4SW52ZXJzZS5jb3B5KHRoaXMuYmluZE1hdHJpeCkuaW52ZXJ0KCk6Y29uc29sZS53YXJuKCJUSFJFRS5Ta2lubmVkTWVzaDogVW5yZWNvZ25pemVkIGJpbmRNb2RlOiAiK3RoaXMuYmluZE1vZGUpfWFwcGx5Qm9uZVRyYW5zZm9ybShBLGUpe2NvbnN0IHQ9dGhpcy5za2VsZXRvbixuPXRoaXMuZ2VvbWV0cnk7ckIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShuLmF0dHJpYnV0ZXMuc2tpbkluZGV4LEEpLG9CLmZyb21CdWZmZXJBdHRyaWJ1dGUobi5hdHRyaWJ1dGVzLnNraW5XZWlnaHQsQSksaUIuY29weShlKS5hcHBseU1hdHJpeDQodGhpcy5iaW5kTWF0cml4KSxlLnNldCgwLDAsMCk7Zm9yKGxldCBBPTA7QTw0O0ErKyl7Y29uc3Qgbj1vQi5nZXRDb21wb25lbnQoQSk7aWYoMCE9PW4pe2NvbnN0IGk9ckIuZ2V0Q29tcG9uZW50KEEpO2FCLm11bHRpcGx5TWF0cmljZXModC5ib25lc1tpXS5tYXRyaXhXb3JsZCx0LmJvbmVJbnZlcnNlc1tpXSksZS5hZGRTY2FsZWRWZWN0b3Ioc0IuY29weShpQikuYXBwbHlNYXRyaXg0KGFCKSxuKX19cmV0dXJuIGUuYXBwbHlNYXRyaXg0KHRoaXMuYmluZE1hdHJpeEludmVyc2UpfWJvbmVUcmFuc2Zvcm0oQSxlKXtyZXR1cm4gY29uc29sZS53YXJuKCJUSFJFRS5Ta2lubmVkTWVzaDogLmJvbmVUcmFuc2Zvcm0oKSB3YXMgcmVuYW1lZCB0byAuYXBwbHlCb25lVHJhbnNmb3JtKCkgaW4gcjE1MS4iKSx0aGlzLmFwcGx5Qm9uZVRyYW5zZm9ybShBLGUpfX1jbGFzcyB1QiBleHRlbmRzIHBpe2NvbnN0cnVjdG9yKCl7c3VwZXIoKSx0aGlzLmlzQm9uZT0hMCx0aGlzLnR5cGU9IkJvbmUifX1jbGFzcyBsQiBleHRlbmRzIEVue2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm51bGwsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxO3N1cGVyKG51bGwsYXJndW1lbnRzLmxlbmd0aD41P2FyZ3VtZW50c1s1XTp2b2lkIDAsYXJndW1lbnRzLmxlbmd0aD42P2FyZ3VtZW50c1s2XTp2b2lkIDAsYXJndW1lbnRzLmxlbmd0aD43P2FyZ3VtZW50c1s3XTp2b2lkIDAsYXJndW1lbnRzLmxlbmd0aD44JiZ2b2lkIDAhPT1hcmd1bWVudHNbOF0/YXJndW1lbnRzWzhdOkVBLGFyZ3VtZW50cy5sZW5ndGg+OSYmdm9pZCAwIT09YXJndW1lbnRzWzldP2FyZ3VtZW50c1s5XTpFQSxhcmd1bWVudHMubGVuZ3RoPjM/YXJndW1lbnRzWzNdOnZvaWQgMCxhcmd1bWVudHMubGVuZ3RoPjQ/YXJndW1lbnRzWzRdOnZvaWQgMCxhcmd1bWVudHMubGVuZ3RoPjEwP2FyZ3VtZW50c1sxMF06dm9pZCAwLGFyZ3VtZW50cy5sZW5ndGg+MTE/YXJndW1lbnRzWzExXTp2b2lkIDApLHRoaXMuaXNEYXRhVGV4dHVyZT0hMCx0aGlzLmltYWdlPXtkYXRhOkEsd2lkdGg6ZSxoZWlnaHQ6dH0sdGhpcy5nZW5lcmF0ZU1pcG1hcHM9ITEsdGhpcy5mbGlwWT0hMSx0aGlzLnVucGFja0FsaWdubWVudD0xfX1jb25zdCBoQj1uZXcgX24sd0I9bmV3IF9uO2NsYXNzIENCe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOltdO3RoaXMudXVpZD1SdCgpLHRoaXMuYm9uZXM9QS5zbGljZSgwKSx0aGlzLmJvbmVJbnZlcnNlcz1lLHRoaXMuYm9uZU1hdHJpY2VzPW51bGwsdGhpcy5ib25lVGV4dHVyZT1udWxsLHRoaXMuYm9uZVRleHR1cmVTaXplPTAsdGhpcy5mcmFtZT0tMSx0aGlzLmluaXQoKX1pbml0KCl7Y29uc3QgQT10aGlzLmJvbmVzLGU9dGhpcy5ib25lSW52ZXJzZXM7aWYodGhpcy5ib25lTWF0cmljZXM9bmV3IEZsb2F0MzJBcnJheSgxNipBLmxlbmd0aCksMD09PWUubGVuZ3RoKXRoaXMuY2FsY3VsYXRlSW52ZXJzZXMoKTtlbHNlIGlmKEEubGVuZ3RoIT09ZS5sZW5ndGgpe2NvbnNvbGUud2FybigiVEhSRUUuU2tlbGV0b246IE51bWJlciBvZiBpbnZlcnNlIGJvbmUgbWF0cmljZXMgZG9lcyBub3QgbWF0Y2ggYW1vdW50IG9mIGJvbmVzLiIpLHRoaXMuYm9uZUludmVyc2VzPVtdO2ZvcihsZXQgQT0wLGU9dGhpcy5ib25lcy5sZW5ndGg7QTxlO0ErKyl0aGlzLmJvbmVJbnZlcnNlcy5wdXNoKG5ldyBfbil9fWNhbGN1bGF0ZUludmVyc2VzKCl7dGhpcy5ib25lSW52ZXJzZXMubGVuZ3RoPTA7Zm9yKGxldCBBPTAsZT10aGlzLmJvbmVzLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPW5ldyBfbjt0aGlzLmJvbmVzW0FdJiZlLmNvcHkodGhpcy5ib25lc1tBXS5tYXRyaXhXb3JsZCkuaW52ZXJ0KCksdGhpcy5ib25lSW52ZXJzZXMucHVzaChlKX19cG9zZSgpe2ZvcihsZXQgQT0wLGU9dGhpcy5ib25lcy5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT10aGlzLmJvbmVzW0FdO2UmJmUubWF0cml4V29ybGQuY29weSh0aGlzLmJvbmVJbnZlcnNlc1tBXSkuaW52ZXJ0KCl9Zm9yKGxldCBBPTAsZT10aGlzLmJvbmVzLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPXRoaXMuYm9uZXNbQV07ZSYmKGUucGFyZW50JiZlLnBhcmVudC5pc0JvbmU/KGUubWF0cml4LmNvcHkoZS5wYXJlbnQubWF0cml4V29ybGQpLmludmVydCgpLGUubWF0cml4Lm11bHRpcGx5KGUubWF0cml4V29ybGQpKTplLm1hdHJpeC5jb3B5KGUubWF0cml4V29ybGQpLGUubWF0cml4LmRlY29tcG9zZShlLnBvc2l0aW9uLGUucXVhdGVybmlvbixlLnNjYWxlKSl9fXVwZGF0ZSgpe2NvbnN0IEE9dGhpcy5ib25lcyxlPXRoaXMuYm9uZUludmVyc2VzLHQ9dGhpcy5ib25lTWF0cmljZXMsbj10aGlzLmJvbmVUZXh0dXJlO2ZvcihsZXQgbj0wLGk9QS5sZW5ndGg7bjxpO24rKyl7Y29uc3QgaT1BW25dP0Fbbl0ubWF0cml4V29ybGQ6d0I7aEIubXVsdGlwbHlNYXRyaWNlcyhpLGVbbl0pLGhCLnRvQXJyYXkodCwxNipuKX1udWxsIT09biYmKG4ubmVlZHNVcGRhdGU9ITApfWNsb25lKCl7cmV0dXJuIG5ldyBDQih0aGlzLmJvbmVzLHRoaXMuYm9uZUludmVyc2VzKX1jb21wdXRlQm9uZVRleHR1cmUoKXtsZXQgQT1NYXRoLnNxcnQoNCp0aGlzLmJvbmVzLmxlbmd0aCk7QT12dChBKSxBPU1hdGgubWF4KEEsNCk7Y29uc3QgZT1uZXcgRmxvYXQzMkFycmF5KEEqQSo0KTtlLnNldCh0aGlzLmJvbmVNYXRyaWNlcyk7Y29uc3QgdD1uZXcgbEIoZSxBLEEsR0EsTkEpO3JldHVybiB0Lm5lZWRzVXBkYXRlPSEwLHRoaXMuYm9uZU1hdHJpY2VzPWUsdGhpcy5ib25lVGV4dHVyZT10LHRoaXMuYm9uZVRleHR1cmVTaXplPUEsdGhpc31nZXRCb25lQnlOYW1lKEEpe2ZvcihsZXQgZT0wLHQ9dGhpcy5ib25lcy5sZW5ndGg7ZTx0O2UrKyl7Y29uc3QgdD10aGlzLmJvbmVzW2VdO2lmKHQubmFtZT09PUEpcmV0dXJuIHR9fWRpc3Bvc2UoKXtudWxsIT09dGhpcy5ib25lVGV4dHVyZSYmKHRoaXMuYm9uZVRleHR1cmUuZGlzcG9zZSgpLHRoaXMuYm9uZVRleHR1cmU9bnVsbCl9ZnJvbUpTT04oQSxlKXt0aGlzLnV1aWQ9QS51dWlkO2ZvcihsZXQgdD0wLG49QS5ib25lcy5sZW5ndGg7dDxuO3QrKyl7Y29uc3Qgbj1BLmJvbmVzW3RdO2xldCBpPWVbbl07dm9pZCAwPT09aSYmKGNvbnNvbGUud2FybigiVEhSRUUuU2tlbGV0b246IE5vIGJvbmUgZm91bmQgd2l0aCBVVUlEOiIsbiksaT1uZXcgdUIpLHRoaXMuYm9uZXMucHVzaChpKSx0aGlzLmJvbmVJbnZlcnNlcy5wdXNoKChuZXcgX24pLmZyb21BcnJheShBLmJvbmVJbnZlcnNlc1t0XSkpfXJldHVybiB0aGlzLmluaXQoKSx0aGlzfXRvSlNPTigpe2NvbnN0IEE9e21ldGFkYXRhOnt2ZXJzaW9uOjQuNix0eXBlOiJTa2VsZXRvbiIsZ2VuZXJhdG9yOiJTa2VsZXRvbi50b0pTT04ifSxib25lczpbXSxib25lSW52ZXJzZXM6W119O0EudXVpZD10aGlzLnV1aWQ7Y29uc3QgZT10aGlzLmJvbmVzLHQ9dGhpcy5ib25lSW52ZXJzZXM7Zm9yKGxldCBuPTAsaT1lLmxlbmd0aDtuPGk7bisrKXtjb25zdCBpPWVbbl07QS5ib25lcy5wdXNoKGkudXVpZCk7Y29uc3Qgcj10W25dO0EuYm9uZUludmVyc2VzLnB1c2goci50b0FycmF5KCkpfXJldHVybiBBfX1jbGFzcyBJQiBleHRlbmRzIF9pe2NvbnN0cnVjdG9yKEEsZSx0KXtsZXQgbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106MTtzdXBlcihBLGUsdCksdGhpcy5pc0luc3RhbmNlZEJ1ZmZlckF0dHJpYnV0ZT0hMCx0aGlzLm1lc2hQZXJBdHRyaWJ1dGU9bn1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMubWVzaFBlckF0dHJpYnV0ZT1BLm1lc2hQZXJBdHRyaWJ1dGUsdGhpc310b0pTT04oKXtjb25zdCBBPXN1cGVyLnRvSlNPTigpO3JldHVybiBBLm1lc2hQZXJBdHRyaWJ1dGU9dGhpcy5tZXNoUGVyQXR0cmlidXRlLEEuaXNJbnN0YW5jZWRCdWZmZXJBdHRyaWJ1dGU9ITAsQX19Y29uc3QgTUI9bmV3IF9uLGRCPW5ldyBfbixwQj1bXSxtQj1uZXcgRm4sRkI9bmV3IF9uLERCPW5ldyBScixZQj1uZXcgem47Y2xhc3MgZkIgZXh0ZW5kcyBScntjb25zdHJ1Y3RvcihBLGUsdCl7c3VwZXIoQSxlKSx0aGlzLmlzSW5zdGFuY2VkTWVzaD0hMCx0aGlzLmluc3RhbmNlTWF0cml4PW5ldyBJQihuZXcgRmxvYXQzMkFycmF5KDE2KnQpLDE2KSx0aGlzLmluc3RhbmNlQ29sb3I9bnVsbCx0aGlzLmNvdW50PXQsdGhpcy5ib3VuZGluZ0JveD1udWxsLHRoaXMuYm91bmRpbmdTcGhlcmU9bnVsbDtmb3IobGV0IEE9MDtBPHQ7QSsrKXRoaXMuc2V0TWF0cml4QXQoQSxGQil9Y29tcHV0ZUJvdW5kaW5nQm94KCl7Y29uc3QgQT10aGlzLmdlb21ldHJ5LGU9dGhpcy5jb3VudDtudWxsPT09dGhpcy5ib3VuZGluZ0JveCYmKHRoaXMuYm91bmRpbmdCb3g9bmV3IEZuKSxudWxsPT09QS5ib3VuZGluZ0JveCYmQS5jb21wdXRlQm91bmRpbmdCb3goKSx0aGlzLmJvdW5kaW5nQm94Lm1ha2VFbXB0eSgpO2ZvcihsZXQgdD0wO3Q8ZTt0KyspdGhpcy5nZXRNYXRyaXhBdCh0LE1CKSxtQi5jb3B5KEEuYm91bmRpbmdCb3gpLmFwcGx5TWF0cml4NChNQiksdGhpcy5ib3VuZGluZ0JveC51bmlvbihtQil9Y29tcHV0ZUJvdW5kaW5nU3BoZXJlKCl7Y29uc3QgQT10aGlzLmdlb21ldHJ5LGU9dGhpcy5jb3VudDtudWxsPT09dGhpcy5ib3VuZGluZ1NwaGVyZSYmKHRoaXMuYm91bmRpbmdTcGhlcmU9bmV3IHpuKSxudWxsPT09QS5ib3VuZGluZ1NwaGVyZSYmQS5jb21wdXRlQm91bmRpbmdTcGhlcmUoKSx0aGlzLmJvdW5kaW5nU3BoZXJlLm1ha2VFbXB0eSgpO2ZvcihsZXQgdD0wO3Q8ZTt0KyspdGhpcy5nZXRNYXRyaXhBdCh0LE1CKSxZQi5jb3B5KEEuYm91bmRpbmdTcGhlcmUpLmFwcGx5TWF0cml4NChNQiksdGhpcy5ib3VuZGluZ1NwaGVyZS51bmlvbihZQil9Y29weShBLGUpe3JldHVybiBzdXBlci5jb3B5KEEsZSksdGhpcy5pbnN0YW5jZU1hdHJpeC5jb3B5KEEuaW5zdGFuY2VNYXRyaXgpLG51bGwhPT1BLmluc3RhbmNlQ29sb3ImJih0aGlzLmluc3RhbmNlQ29sb3I9QS5pbnN0YW5jZUNvbG9yLmNsb25lKCkpLHRoaXMuY291bnQ9QS5jb3VudCxudWxsIT09QS5ib3VuZGluZ0JveCYmKHRoaXMuYm91bmRpbmdCb3g9QS5ib3VuZGluZ0JveC5jbG9uZSgpKSxudWxsIT09QS5ib3VuZGluZ1NwaGVyZSYmKHRoaXMuYm91bmRpbmdTcGhlcmU9QS5ib3VuZGluZ1NwaGVyZS5jbG9uZSgpKSx0aGlzfWdldENvbG9yQXQoQSxlKXtlLmZyb21BcnJheSh0aGlzLmluc3RhbmNlQ29sb3IuYXJyYXksMypBKX1nZXRNYXRyaXhBdChBLGUpe2UuZnJvbUFycmF5KHRoaXMuaW5zdGFuY2VNYXRyaXguYXJyYXksMTYqQSl9cmF5Y2FzdChBLGUpe2NvbnN0IHQ9dGhpcy5tYXRyaXhXb3JsZCxuPXRoaXMuY291bnQ7aWYoREIuZ2VvbWV0cnk9dGhpcy5nZW9tZXRyeSxEQi5tYXRlcmlhbD10aGlzLm1hdGVyaWFsLHZvaWQgMCE9PURCLm1hdGVyaWFsJiYobnVsbD09PXRoaXMuYm91bmRpbmdTcGhlcmUmJnRoaXMuY29tcHV0ZUJvdW5kaW5nU3BoZXJlKCksWUIuY29weSh0aGlzLmJvdW5kaW5nU3BoZXJlKSxZQi5hcHBseU1hdHJpeDQodCksITEhPT1BLnJheS5pbnRlcnNlY3RzU3BoZXJlKFlCKSkpZm9yKGxldCBpPTA7aTxuO2krKyl7dGhpcy5nZXRNYXRyaXhBdChpLE1CKSxkQi5tdWx0aXBseU1hdHJpY2VzKHQsTUIpLERCLm1hdHJpeFdvcmxkPWRCLERCLnJheWNhc3QoQSxwQik7Zm9yKGxldCBBPTAsdD1wQi5sZW5ndGg7QTx0O0ErKyl7Y29uc3QgdD1wQltBXTt0Lmluc3RhbmNlSWQ9aSx0Lm9iamVjdD10aGlzLGUucHVzaCh0KX1wQi5sZW5ndGg9MH19c2V0Q29sb3JBdChBLGUpe251bGw9PT10aGlzLmluc3RhbmNlQ29sb3ImJih0aGlzLmluc3RhbmNlQ29sb3I9bmV3IElCKG5ldyBGbG9hdDMyQXJyYXkoMyp0aGlzLmluc3RhbmNlTWF0cml4LmNvdW50KSwzKSksZS50b0FycmF5KHRoaXMuaW5zdGFuY2VDb2xvci5hcnJheSwzKkEpfXNldE1hdHJpeEF0KEEsZSl7ZS50b0FycmF5KHRoaXMuaW5zdGFuY2VNYXRyaXguYXJyYXksMTYqQSl9dXBkYXRlTW9ycGhUYXJnZXRzKCl7fWRpc3Bvc2UoKXt0aGlzLmRpc3BhdGNoRXZlbnQoe3R5cGU6ImRpc3Bvc2UifSl9fWNsYXNzIE5CIGV4dGVuZHMgYml7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLmlzTGluZUJhc2ljTWF0ZXJpYWw9ITAsdGhpcy50eXBlPSJMaW5lQmFzaWNNYXRlcmlhbCIsdGhpcy5jb2xvcj1uZXcgSmkoMTY3NzcyMTUpLHRoaXMubWFwPW51bGwsdGhpcy5saW5ld2lkdGg9MSx0aGlzLmxpbmVjYXA9InJvdW5kIix0aGlzLmxpbmVqb2luPSJyb3VuZCIsdGhpcy5mb2c9ITAsdGhpcy5zZXRWYWx1ZXMoQSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLmNvbG9yLmNvcHkoQS5jb2xvciksdGhpcy5tYXA9QS5tYXAsdGhpcy5saW5ld2lkdGg9QS5saW5ld2lkdGgsdGhpcy5saW5lY2FwPUEubGluZWNhcCx0aGlzLmxpbmVqb2luPUEubGluZWpvaW4sdGhpcy5mb2c9QS5mb2csdGhpc319Y29uc3QgVUI9bmV3IGRuLHlCPW5ldyBkbixUQj1uZXcgX24seEI9bmV3IFpuLFJCPW5ldyB6bjtjbGFzcyBHQiBleHRlbmRzIHBpe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBscixlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgTkI7c3VwZXIoKSx0aGlzLmlzTGluZT0hMCx0aGlzLnR5cGU9IkxpbmUiLHRoaXMuZ2VvbWV0cnk9QSx0aGlzLm1hdGVyaWFsPWUsdGhpcy51cGRhdGVNb3JwaFRhcmdldHMoKX1jb3B5KEEsZSl7cmV0dXJuIHN1cGVyLmNvcHkoQSxlKSx0aGlzLm1hdGVyaWFsPUEubWF0ZXJpYWwsdGhpcy5nZW9tZXRyeT1BLmdlb21ldHJ5LHRoaXN9Y29tcHV0ZUxpbmVEaXN0YW5jZXMoKXtjb25zdCBBPXRoaXMuZ2VvbWV0cnk7aWYobnVsbD09PUEuaW5kZXgpe2NvbnN0IGU9QS5hdHRyaWJ1dGVzLnBvc2l0aW9uLHQ9WzBdO2ZvcihsZXQgQT0xLG49ZS5jb3VudDtBPG47QSsrKVVCLmZyb21CdWZmZXJBdHRyaWJ1dGUoZSxBLTEpLHlCLmZyb21CdWZmZXJBdHRyaWJ1dGUoZSxBKSx0W0FdPXRbQS0xXSx0W0FdKz1VQi5kaXN0YW5jZVRvKHlCKTtBLnNldEF0dHJpYnV0ZSgibGluZURpc3RhbmNlIixuZXcgb3IodCwxKSl9ZWxzZSBjb25zb2xlLndhcm4oIlRIUkVFLkxpbmUuY29tcHV0ZUxpbmVEaXN0YW5jZXMoKTogQ29tcHV0YXRpb24gb25seSBwb3NzaWJsZSB3aXRoIG5vbi1pbmRleGVkIEJ1ZmZlckdlb21ldHJ5LiIpO3JldHVybiB0aGlzfXJheWNhc3QoQSxlKXtjb25zdCB0PXRoaXMuZ2VvbWV0cnksbj10aGlzLm1hdHJpeFdvcmxkLGk9QS5wYXJhbXMuTGluZS50aHJlc2hvbGQscj10LmRyYXdSYW5nZTtpZihudWxsPT09dC5ib3VuZGluZ1NwaGVyZSYmdC5jb21wdXRlQm91bmRpbmdTcGhlcmUoKSxSQi5jb3B5KHQuYm91bmRpbmdTcGhlcmUpLFJCLmFwcGx5TWF0cml4NChuKSxSQi5yYWRpdXMrPWksITE9PT1BLnJheS5pbnRlcnNlY3RzU3BoZXJlKFJCKSlyZXR1cm47VEIuY29weShuKS5pbnZlcnQoKSx4Qi5jb3B5KEEucmF5KS5hcHBseU1hdHJpeDQoVEIpO2NvbnN0IG89aS8oKHRoaXMuc2NhbGUueCt0aGlzLnNjYWxlLnkrdGhpcy5zY2FsZS56KS8zKSxzPW8qbyxhPW5ldyBkbixCPW5ldyBkbixjPW5ldyBkbixnPW5ldyBkbixFPXRoaXMuaXNMaW5lU2VnbWVudHM/MjoxLFE9dC5pbmRleCx1PXQuYXR0cmlidXRlcy5wb3NpdGlvbjtpZihudWxsIT09USl7Zm9yKGxldCB0PU1hdGgubWF4KDAsci5zdGFydCksbj1NYXRoLm1pbihRLmNvdW50LHIuc3RhcnQrci5jb3VudCktMTt0PG47dCs9RSl7Y29uc3Qgbj1RLmdldFgodCksaT1RLmdldFgodCsxKTthLmZyb21CdWZmZXJBdHRyaWJ1dGUodSxuKSxCLmZyb21CdWZmZXJBdHRyaWJ1dGUodSxpKTtpZih4Qi5kaXN0YW5jZVNxVG9TZWdtZW50KGEsQixnLGMpPnMpY29udGludWU7Zy5hcHBseU1hdHJpeDQodGhpcy5tYXRyaXhXb3JsZCk7Y29uc3Qgcj1BLnJheS5vcmlnaW4uZGlzdGFuY2VUbyhnKTtyPEEubmVhcnx8cj5BLmZhcnx8ZS5wdXNoKHtkaXN0YW5jZTpyLHBvaW50OmMuY2xvbmUoKS5hcHBseU1hdHJpeDQodGhpcy5tYXRyaXhXb3JsZCksaW5kZXg6dCxmYWNlOm51bGwsZmFjZUluZGV4Om51bGwsb2JqZWN0OnRoaXN9KX19ZWxzZXtmb3IobGV0IHQ9TWF0aC5tYXgoMCxyLnN0YXJ0KSxuPU1hdGgubWluKHUuY291bnQsci5zdGFydCtyLmNvdW50KS0xO3Q8bjt0Kz1FKXthLmZyb21CdWZmZXJBdHRyaWJ1dGUodSx0KSxCLmZyb21CdWZmZXJBdHRyaWJ1dGUodSx0KzEpO2lmKHhCLmRpc3RhbmNlU3FUb1NlZ21lbnQoYSxCLGcsYyk+cyljb250aW51ZTtnLmFwcGx5TWF0cml4NCh0aGlzLm1hdHJpeFdvcmxkKTtjb25zdCBuPUEucmF5Lm9yaWdpbi5kaXN0YW5jZVRvKGcpO248QS5uZWFyfHxuPkEuZmFyfHxlLnB1c2goe2Rpc3RhbmNlOm4scG9pbnQ6Yy5jbG9uZSgpLmFwcGx5TWF0cml4NCh0aGlzLm1hdHJpeFdvcmxkKSxpbmRleDp0LGZhY2U6bnVsbCxmYWNlSW5kZXg6bnVsbCxvYmplY3Q6dGhpc30pfX19dXBkYXRlTW9ycGhUYXJnZXRzKCl7Y29uc3QgQT10aGlzLmdlb21ldHJ5Lm1vcnBoQXR0cmlidXRlcyxlPU9iamVjdC5rZXlzKEEpO2lmKGUubGVuZ3RoPjApe2NvbnN0IHQ9QVtlWzBdXTtpZih2b2lkIDAhPT10KXt0aGlzLm1vcnBoVGFyZ2V0SW5mbHVlbmNlcz1bXSx0aGlzLm1vcnBoVGFyZ2V0RGljdGlvbmFyeT17fTtmb3IobGV0IEE9MCxlPXQubGVuZ3RoO0E8ZTtBKyspe2NvbnN0IGU9dFtBXS5uYW1lfHxTdHJpbmcoQSk7dGhpcy5tb3JwaFRhcmdldEluZmx1ZW5jZXMucHVzaCgwKSx0aGlzLm1vcnBoVGFyZ2V0RGljdGlvbmFyeVtlXT1BfX19fX1jb25zdCBTQj1uZXcgZG4sYkI9bmV3IGRuO2NsYXNzIEhCIGV4dGVuZHMgR0J7Y29uc3RydWN0b3IoQSxlKXtzdXBlcihBLGUpLHRoaXMuaXNMaW5lU2VnbWVudHM9ITAsdGhpcy50eXBlPSJMaW5lU2VnbWVudHMifWNvbXB1dGVMaW5lRGlzdGFuY2VzKCl7Y29uc3QgQT10aGlzLmdlb21ldHJ5O2lmKG51bGw9PT1BLmluZGV4KXtjb25zdCBlPUEuYXR0cmlidXRlcy5wb3NpdGlvbix0PVtdO2ZvcihsZXQgQT0wLG49ZS5jb3VudDtBPG47QSs9MilTQi5mcm9tQnVmZmVyQXR0cmlidXRlKGUsQSksYkIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShlLEErMSksdFtBXT0wPT09QT8wOnRbQS0xXSx0W0ErMV09dFtBXStTQi5kaXN0YW5jZVRvKGJCKTtBLnNldEF0dHJpYnV0ZSgibGluZURpc3RhbmNlIixuZXcgb3IodCwxKSl9ZWxzZSBjb25zb2xlLndhcm4oIlRIUkVFLkxpbmVTZWdtZW50cy5jb21wdXRlTGluZURpc3RhbmNlcygpOiBDb21wdXRhdGlvbiBvbmx5IHBvc3NpYmxlIHdpdGggbm9uLWluZGV4ZWQgQnVmZmVyR2VvbWV0cnkuIik7cmV0dXJuIHRoaXN9fWNsYXNzIHZCIGV4dGVuZHMgR0J7Y29uc3RydWN0b3IoQSxlKXtzdXBlcihBLGUpLHRoaXMuaXNMaW5lTG9vcD0hMCx0aGlzLnR5cGU9IkxpbmVMb29wIn19Y2xhc3Mga0IgZXh0ZW5kcyBiaXtjb25zdHJ1Y3RvcihBKXtzdXBlcigpLHRoaXMuaXNQb2ludHNNYXRlcmlhbD0hMCx0aGlzLnR5cGU9IlBvaW50c01hdGVyaWFsIix0aGlzLmNvbG9yPW5ldyBKaSgxNjc3NzIxNSksdGhpcy5tYXA9bnVsbCx0aGlzLmFscGhhTWFwPW51bGwsdGhpcy5zaXplPTEsdGhpcy5zaXplQXR0ZW51YXRpb249ITAsdGhpcy5mb2c9ITAsdGhpcy5zZXRWYWx1ZXMoQSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLmNvbG9yLmNvcHkoQS5jb2xvciksdGhpcy5tYXA9QS5tYXAsdGhpcy5hbHBoYU1hcD1BLmFscGhhTWFwLHRoaXMuc2l6ZT1BLnNpemUsdGhpcy5zaXplQXR0ZW51YXRpb249QS5zaXplQXR0ZW51YXRpb24sdGhpcy5mb2c9QS5mb2csdGhpc319Y29uc3QgakI9bmV3IF9uLEpCPW5ldyBabix6Qj1uZXcgem4sTEI9bmV3IGRuO2NsYXNzIFBCIGV4dGVuZHMgcGl7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IGxyLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBrQjtzdXBlcigpLHRoaXMuaXNQb2ludHM9ITAsdGhpcy50eXBlPSJQb2ludHMiLHRoaXMuZ2VvbWV0cnk9QSx0aGlzLm1hdGVyaWFsPWUsdGhpcy51cGRhdGVNb3JwaFRhcmdldHMoKX1jb3B5KEEsZSl7cmV0dXJuIHN1cGVyLmNvcHkoQSxlKSx0aGlzLm1hdGVyaWFsPUEubWF0ZXJpYWwsdGhpcy5nZW9tZXRyeT1BLmdlb21ldHJ5LHRoaXN9cmF5Y2FzdChBLGUpe2NvbnN0IHQ9dGhpcy5nZW9tZXRyeSxuPXRoaXMubWF0cml4V29ybGQsaT1BLnBhcmFtcy5Qb2ludHMudGhyZXNob2xkLHI9dC5kcmF3UmFuZ2U7aWYobnVsbD09PXQuYm91bmRpbmdTcGhlcmUmJnQuY29tcHV0ZUJvdW5kaW5nU3BoZXJlKCksekIuY29weSh0LmJvdW5kaW5nU3BoZXJlKSx6Qi5hcHBseU1hdHJpeDQobiksekIucmFkaXVzKz1pLCExPT09QS5yYXkuaW50ZXJzZWN0c1NwaGVyZSh6QikpcmV0dXJuO2pCLmNvcHkobikuaW52ZXJ0KCksSkIuY29weShBLnJheSkuYXBwbHlNYXRyaXg0KGpCKTtjb25zdCBvPWkvKCh0aGlzLnNjYWxlLngrdGhpcy5zY2FsZS55K3RoaXMuc2NhbGUueikvMykscz1vKm8sYT10LmluZGV4LEI9dC5hdHRyaWJ1dGVzLnBvc2l0aW9uO2lmKG51bGwhPT1hKXtmb3IobGV0IHQ9TWF0aC5tYXgoMCxyLnN0YXJ0KSxpPU1hdGgubWluKGEuY291bnQsci5zdGFydCtyLmNvdW50KTt0PGk7dCsrKXtjb25zdCBpPWEuZ2V0WCh0KTtMQi5mcm9tQnVmZmVyQXR0cmlidXRlKEIsaSksT0IoTEIsaSxzLG4sQSxlLHRoaXMpfX1lbHNle2ZvcihsZXQgdD1NYXRoLm1heCgwLHIuc3RhcnQpLGk9TWF0aC5taW4oQi5jb3VudCxyLnN0YXJ0K3IuY291bnQpO3Q8aTt0KyspTEIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShCLHQpLE9CKExCLHQscyxuLEEsZSx0aGlzKX19dXBkYXRlTW9ycGhUYXJnZXRzKCl7Y29uc3QgQT10aGlzLmdlb21ldHJ5Lm1vcnBoQXR0cmlidXRlcyxlPU9iamVjdC5rZXlzKEEpO2lmKGUubGVuZ3RoPjApe2NvbnN0IHQ9QVtlWzBdXTtpZih2b2lkIDAhPT10KXt0aGlzLm1vcnBoVGFyZ2V0SW5mbHVlbmNlcz1bXSx0aGlzLm1vcnBoVGFyZ2V0RGljdGlvbmFyeT17fTtmb3IobGV0IEE9MCxlPXQubGVuZ3RoO0E8ZTtBKyspe2NvbnN0IGU9dFtBXS5uYW1lfHxTdHJpbmcoQSk7dGhpcy5tb3JwaFRhcmdldEluZmx1ZW5jZXMucHVzaCgwKSx0aGlzLm1vcnBoVGFyZ2V0RGljdGlvbmFyeVtlXT1BfX19fX1mdW5jdGlvbiBPQihBLGUsdCxuLGkscixvKXtjb25zdCBzPUpCLmRpc3RhbmNlU3FUb1BvaW50KEEpO2lmKHM8dCl7Y29uc3QgdD1uZXcgZG47SkIuY2xvc2VzdFBvaW50VG9Qb2ludChBLHQpLHQuYXBwbHlNYXRyaXg0KG4pO2NvbnN0IGE9aS5yYXkub3JpZ2luLmRpc3RhbmNlVG8odCk7aWYoYTxpLm5lYXJ8fGE+aS5mYXIpcmV0dXJuO3IucHVzaCh7ZGlzdGFuY2U6YSxkaXN0YW5jZVRvUmF5Ok1hdGguc3FydChzKSxwb2ludDp0LGluZGV4OmUsZmFjZTpudWxsLG9iamVjdDpvfSl9fWNsYXNzIFZCIGV4dGVuZHMgRW57Y29uc3RydWN0b3IoQSxlLHQsbixpLHIsbyxzLGEpe3N1cGVyKEEsZSx0LG4saSxyLG8scyxhKSx0aGlzLmlzVmlkZW9UZXh0dXJlPSEwLHRoaXMubWluRmlsdGVyPXZvaWQgMCE9PXI/cjp3QSx0aGlzLm1hZ0ZpbHRlcj12b2lkIDAhPT1pP2k6d0EsdGhpcy5nZW5lcmF0ZU1pcG1hcHM9ITE7Y29uc3QgQj10aGlzOyJyZXF1ZXN0VmlkZW9GcmFtZUNhbGxiYWNrImluIEEmJkEucmVxdWVzdFZpZGVvRnJhbWVDYWxsYmFjaygoZnVuY3Rpb24gZSgpe0IubmVlZHNVcGRhdGU9ITAsQS5yZXF1ZXN0VmlkZW9GcmFtZUNhbGxiYWNrKGUpfSkpfWNsb25lKCl7cmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMuaW1hZ2UpLmNvcHkodGhpcyl9dXBkYXRlKCl7Y29uc3QgQT10aGlzLmltYWdlOyExPT09InJlcXVlc3RWaWRlb0ZyYW1lQ2FsbGJhY2siaW4gQSYmQS5yZWFkeVN0YXRlPj1BLkhBVkVfQ1VSUkVOVF9EQVRBJiYodGhpcy5uZWVkc1VwZGF0ZT0hMCl9fWNsYXNzIFdCIGV4dGVuZHMgRW57Y29uc3RydWN0b3IoQSxlKXtzdXBlcih7d2lkdGg6QSxoZWlnaHQ6ZX0pLHRoaXMuaXNGcmFtZWJ1ZmZlclRleHR1cmU9ITAsdGhpcy5tYWdGaWx0ZXI9RUEsdGhpcy5taW5GaWx0ZXI9RUEsdGhpcy5nZW5lcmF0ZU1pcG1hcHM9ITEsdGhpcy5uZWVkc1VwZGF0ZT0hMH19Y2xhc3MgS0IgZXh0ZW5kcyBFbntjb25zdHJ1Y3RvcihBLGUsdCxuLGkscixvLHMsYSxCLGMsZyl7c3VwZXIobnVsbCxyLG8scyxhLEIsbixpLGMsZyksdGhpcy5pc0NvbXByZXNzZWRUZXh0dXJlPSEwLHRoaXMuaW1hZ2U9e3dpZHRoOmUsaGVpZ2h0OnR9LHRoaXMubWlwbWFwcz1BLHRoaXMuZmxpcFk9ITEsdGhpcy5nZW5lcmF0ZU1pcG1hcHM9ITF9fWNsYXNzIFhCIGV4dGVuZHMgS0J7Y29uc3RydWN0b3IoQSxlLHQsbixpLHIpe3N1cGVyKEEsZSx0LGksciksdGhpcy5pc0NvbXByZXNzZWRBcnJheVRleHR1cmU9ITAsdGhpcy5pbWFnZS5kZXB0aD1uLHRoaXMud3JhcFI9Y0F9fWNsYXNzIFpCIGV4dGVuZHMgRW57Y29uc3RydWN0b3IoQSxlLHQsbixpLHIsbyxzLGEpe3N1cGVyKEEsZSx0LG4saSxyLG8scyxhKSx0aGlzLmlzQ2FudmFzVGV4dHVyZT0hMCx0aGlzLm5lZWRzVXBkYXRlPSEwfX1jbGFzcyBfQntjb25zdHJ1Y3Rvcigpe3RoaXMudHlwZT0iQ3VydmUiLHRoaXMuYXJjTGVuZ3RoRGl2aXNpb25zPTIwMH1nZXRQb2ludCgpe3JldHVybiBjb25zb2xlLndhcm4oIlRIUkVFLkN1cnZlOiAuZ2V0UG9pbnQoKSBub3QgaW1wbGVtZW50ZWQuIiksbnVsbH1nZXRQb2ludEF0KEEsZSl7Y29uc3QgdD10aGlzLmdldFV0b1RtYXBwaW5nKEEpO3JldHVybiB0aGlzLmdldFBvaW50KHQsZSl9Z2V0UG9pbnRzKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjU7Y29uc3QgZT1bXTtmb3IobGV0IHQ9MDt0PD1BO3QrKyllLnB1c2godGhpcy5nZXRQb2ludCh0L0EpKTtyZXR1cm4gZX1nZXRTcGFjZWRQb2ludHMoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06NTtjb25zdCBlPVtdO2ZvcihsZXQgdD0wO3Q8PUE7dCsrKWUucHVzaCh0aGlzLmdldFBvaW50QXQodC9BKSk7cmV0dXJuIGV9Z2V0TGVuZ3RoKCl7Y29uc3QgQT10aGlzLmdldExlbmd0aHMoKTtyZXR1cm4gQVtBLmxlbmd0aC0xXX1nZXRMZW5ndGhzKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOnRoaXMuYXJjTGVuZ3RoRGl2aXNpb25zO2lmKHRoaXMuY2FjaGVBcmNMZW5ndGhzJiZ0aGlzLmNhY2hlQXJjTGVuZ3Rocy5sZW5ndGg9PT1BKzEmJiF0aGlzLm5lZWRzVXBkYXRlKXJldHVybiB0aGlzLmNhY2hlQXJjTGVuZ3Roczt0aGlzLm5lZWRzVXBkYXRlPSExO2NvbnN0IGU9W107bGV0IHQsbj10aGlzLmdldFBvaW50KDApLGk9MDtlLnB1c2goMCk7Zm9yKGxldCByPTE7cjw9QTtyKyspdD10aGlzLmdldFBvaW50KHIvQSksaSs9dC5kaXN0YW5jZVRvKG4pLGUucHVzaChpKSxuPXQ7cmV0dXJuIHRoaXMuY2FjaGVBcmNMZW5ndGhzPWUsZX11cGRhdGVBcmNMZW5ndGhzKCl7dGhpcy5uZWVkc1VwZGF0ZT0hMCx0aGlzLmdldExlbmd0aHMoKX1nZXRVdG9UbWFwcGluZyhBLGUpe2NvbnN0IHQ9dGhpcy5nZXRMZW5ndGhzKCk7bGV0IG49MDtjb25zdCBpPXQubGVuZ3RoO2xldCByO3I9ZXx8QSp0W2ktMV07bGV0IG8scz0wLGE9aS0xO2Zvcig7czw9YTspaWYobj1NYXRoLmZsb29yKHMrKGEtcykvMiksbz10W25dLXIsbzwwKXM9bisxO2Vsc2V7aWYoIShvPjApKXthPW47YnJlYWt9YT1uLTF9aWYobj1hLHRbbl09PT1yKXJldHVybiBuLyhpLTEpO2NvbnN0IEI9dFtuXTtyZXR1cm4obisoci1CKS8odFtuKzFdLUIpKS8oaS0xKX1nZXRUYW5nZW50KEEsZSl7bGV0IHQ9QS0xZS00LG49QSsxZS00O3Q8MCYmKHQ9MCksbj4xJiYobj0xKTtjb25zdCBpPXRoaXMuZ2V0UG9pbnQodCkscj10aGlzLmdldFBvaW50KG4pLG89ZXx8KGkuaXNWZWN0b3IyP25ldyBMdDpuZXcgZG4pO3JldHVybiBvLmNvcHkocikuc3ViKGkpLm5vcm1hbGl6ZSgpLG99Z2V0VGFuZ2VudEF0KEEsZSl7Y29uc3QgdD10aGlzLmdldFV0b1RtYXBwaW5nKEEpO3JldHVybiB0aGlzLmdldFRhbmdlbnQodCxlKX1jb21wdXRlRnJlbmV0RnJhbWVzKEEsZSl7Y29uc3QgdD1uZXcgZG4sbj1bXSxpPVtdLHI9W10sbz1uZXcgZG4scz1uZXcgX247Zm9yKGxldCBlPTA7ZTw9QTtlKyspe2NvbnN0IHQ9ZS9BO25bZV09dGhpcy5nZXRUYW5nZW50QXQodCxuZXcgZG4pfWlbMF09bmV3IGRuLHJbMF09bmV3IGRuO2xldCBhPU51bWJlci5NQVhfVkFMVUU7Y29uc3QgQj1NYXRoLmFicyhuWzBdLngpLGM9TWF0aC5hYnMoblswXS55KSxnPU1hdGguYWJzKG5bMF0ueik7Qjw9YSYmKGE9Qix0LnNldCgxLDAsMCkpLGM8PWEmJihhPWMsdC5zZXQoMCwxLDApKSxnPD1hJiZ0LnNldCgwLDAsMSksby5jcm9zc1ZlY3RvcnMoblswXSx0KS5ub3JtYWxpemUoKSxpWzBdLmNyb3NzVmVjdG9ycyhuWzBdLG8pLHJbMF0uY3Jvc3NWZWN0b3JzKG5bMF0saVswXSk7Zm9yKGxldCBlPTE7ZTw9QTtlKyspe2lmKGlbZV09aVtlLTFdLmNsb25lKCkscltlXT1yW2UtMV0uY2xvbmUoKSxvLmNyb3NzVmVjdG9ycyhuW2UtMV0sbltlXSksby5sZW5ndGgoKT5OdW1iZXIuRVBTSUxPTil7by5ub3JtYWxpemUoKTtjb25zdCBBPU1hdGguYWNvcyhHdChuW2UtMV0uZG90KG5bZV0pLC0xLDEpKTtpW2VdLmFwcGx5TWF0cml4NChzLm1ha2VSb3RhdGlvbkF4aXMobyxBKSl9cltlXS5jcm9zc1ZlY3RvcnMobltlXSxpW2VdKX1pZighMD09PWUpe2xldCBlPU1hdGguYWNvcyhHdChpWzBdLmRvdChpW0FdKSwtMSwxKSk7ZS89QSxuWzBdLmRvdChvLmNyb3NzVmVjdG9ycyhpWzBdLGlbQV0pKT4wJiYoZT0tZSk7Zm9yKGxldCB0PTE7dDw9QTt0KyspaVt0XS5hcHBseU1hdHJpeDQocy5tYWtlUm90YXRpb25BeGlzKG5bdF0sZSp0KSksclt0XS5jcm9zc1ZlY3RvcnMoblt0XSxpW3RdKX1yZXR1cm57dGFuZ2VudHM6bixub3JtYWxzOmksYmlub3JtYWxzOnJ9fWNsb25lKCl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMpfWNvcHkoQSl7cmV0dXJuIHRoaXMuYXJjTGVuZ3RoRGl2aXNpb25zPUEuYXJjTGVuZ3RoRGl2aXNpb25zLHRoaXN9dG9KU09OKCl7Y29uc3QgQT17bWV0YWRhdGE6e3ZlcnNpb246NC42LHR5cGU6IkN1cnZlIixnZW5lcmF0b3I6IkN1cnZlLnRvSlNPTiJ9fTtyZXR1cm4gQS5hcmNMZW5ndGhEaXZpc2lvbnM9dGhpcy5hcmNMZW5ndGhEaXZpc2lvbnMsQS50eXBlPXRoaXMudHlwZSxBfWZyb21KU09OKEEpe3JldHVybiB0aGlzLmFyY0xlbmd0aERpdmlzaW9ucz1BLmFyY0xlbmd0aERpdmlzaW9ucyx0aGlzfX1jbGFzcyBxQiBleHRlbmRzIF9Ce2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjAsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjEsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06MCxyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XToyKk1hdGguUEksbz1hcmd1bWVudHMubGVuZ3RoPjYmJnZvaWQgMCE9PWFyZ3VtZW50c1s2XSYmYXJndW1lbnRzWzZdLHM9YXJndW1lbnRzLmxlbmd0aD43JiZ2b2lkIDAhPT1hcmd1bWVudHNbN10/YXJndW1lbnRzWzddOjA7c3VwZXIoKSx0aGlzLmlzRWxsaXBzZUN1cnZlPSEwLHRoaXMudHlwZT0iRWxsaXBzZUN1cnZlIix0aGlzLmFYPUEsdGhpcy5hWT1lLHRoaXMueFJhZGl1cz10LHRoaXMueVJhZGl1cz1uLHRoaXMuYVN0YXJ0QW5nbGU9aSx0aGlzLmFFbmRBbmdsZT1yLHRoaXMuYUNsb2Nrd2lzZT1vLHRoaXMuYVJvdGF0aW9uPXN9Z2V0UG9pbnQoQSxlKXtjb25zdCB0PWV8fG5ldyBMdCxuPTIqTWF0aC5QSTtsZXQgaT10aGlzLmFFbmRBbmdsZS10aGlzLmFTdGFydEFuZ2xlO2NvbnN0IHI9TWF0aC5hYnMoaSk8TnVtYmVyLkVQU0lMT047Zm9yKDtpPDA7KWkrPW47Zm9yKDtpPm47KWktPW47aTxOdW1iZXIuRVBTSUxPTiYmKGk9cj8wOm4pLCEwIT09dGhpcy5hQ2xvY2t3aXNlfHxyfHwoaT09PW4/aT0tbjppLT1uKTtjb25zdCBvPXRoaXMuYVN0YXJ0QW5nbGUrQSppO2xldCBzPXRoaXMuYVgrdGhpcy54UmFkaXVzKk1hdGguY29zKG8pLGE9dGhpcy5hWSt0aGlzLnlSYWRpdXMqTWF0aC5zaW4obyk7aWYoMCE9PXRoaXMuYVJvdGF0aW9uKXtjb25zdCBBPU1hdGguY29zKHRoaXMuYVJvdGF0aW9uKSxlPU1hdGguc2luKHRoaXMuYVJvdGF0aW9uKSx0PXMtdGhpcy5hWCxuPWEtdGhpcy5hWTtzPXQqQS1uKmUrdGhpcy5hWCxhPXQqZStuKkErdGhpcy5hWX1yZXR1cm4gdC5zZXQocyxhKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuYVg9QS5hWCx0aGlzLmFZPUEuYVksdGhpcy54UmFkaXVzPUEueFJhZGl1cyx0aGlzLnlSYWRpdXM9QS55UmFkaXVzLHRoaXMuYVN0YXJ0QW5nbGU9QS5hU3RhcnRBbmdsZSx0aGlzLmFFbmRBbmdsZT1BLmFFbmRBbmdsZSx0aGlzLmFDbG9ja3dpc2U9QS5hQ2xvY2t3aXNlLHRoaXMuYVJvdGF0aW9uPUEuYVJvdGF0aW9uLHRoaXN9dG9KU09OKCl7Y29uc3QgQT1zdXBlci50b0pTT04oKTtyZXR1cm4gQS5hWD10aGlzLmFYLEEuYVk9dGhpcy5hWSxBLnhSYWRpdXM9dGhpcy54UmFkaXVzLEEueVJhZGl1cz10aGlzLnlSYWRpdXMsQS5hU3RhcnRBbmdsZT10aGlzLmFTdGFydEFuZ2xlLEEuYUVuZEFuZ2xlPXRoaXMuYUVuZEFuZ2xlLEEuYUNsb2Nrd2lzZT10aGlzLmFDbG9ja3dpc2UsQS5hUm90YXRpb249dGhpcy5hUm90YXRpb24sQX1mcm9tSlNPTihBKXtyZXR1cm4gc3VwZXIuZnJvbUpTT04oQSksdGhpcy5hWD1BLmFYLHRoaXMuYVk9QS5hWSx0aGlzLnhSYWRpdXM9QS54UmFkaXVzLHRoaXMueVJhZGl1cz1BLnlSYWRpdXMsdGhpcy5hU3RhcnRBbmdsZT1BLmFTdGFydEFuZ2xlLHRoaXMuYUVuZEFuZ2xlPUEuYUVuZEFuZ2xlLHRoaXMuYUNsb2Nrd2lzZT1BLmFDbG9ja3dpc2UsdGhpcy5hUm90YXRpb249QS5hUm90YXRpb24sdGhpc319Y2xhc3MgJEIgZXh0ZW5kcyBxQntjb25zdHJ1Y3RvcihBLGUsdCxuLGkscil7c3VwZXIoQSxlLHQsdCxuLGksciksdGhpcy5pc0FyY0N1cnZlPSEwLHRoaXMudHlwZT0iQXJjQ3VydmUifX1mdW5jdGlvbiBBYygpe2xldCBBPTAsZT0wLHQ9MCxuPTA7ZnVuY3Rpb24gaShpLHIsbyxzKXtBPWksZT1vLHQ9LTMqaSszKnItMipvLXMsbj0yKmktMipyK28rc31yZXR1cm57aW5pdENhdG11bGxSb206ZnVuY3Rpb24oQSxlLHQsbixyKXtpKGUsdCxyKih0LUEpLHIqKG4tZSkpfSxpbml0Tm9udW5pZm9ybUNhdG11bGxSb206ZnVuY3Rpb24oQSxlLHQsbixyLG8scyl7bGV0IGE9KGUtQSkvci0odC1BKS8ocitvKSsodC1lKS9vLEI9KHQtZSkvby0obi1lKS8obytzKSsobi10KS9zO2EqPW8sQio9byxpKGUsdCxhLEIpfSxjYWxjOmZ1bmN0aW9uKGkpe2NvbnN0IHI9aSppO3JldHVybiBBK2UqaSt0KnIrbioocippKX19fWNvbnN0IGVjPW5ldyBkbix0Yz1uZXcgQWMsbmM9bmV3IEFjLGljPW5ldyBBYztjbGFzcyByYyBleHRlbmRzIF9Ce2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0mJmFyZ3VtZW50c1sxXSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToiY2VudHJpcGV0YWwiLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOi41O3N1cGVyKCksdGhpcy5pc0NhdG11bGxSb21DdXJ2ZTM9ITAsdGhpcy50eXBlPSJDYXRtdWxsUm9tQ3VydmUzIix0aGlzLnBvaW50cz1BLHRoaXMuY2xvc2VkPWUsdGhpcy5jdXJ2ZVR5cGU9dCx0aGlzLnRlbnNpb249bn1nZXRQb2ludChBKXtjb25zdCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG4sdD10aGlzLnBvaW50cyxuPXQubGVuZ3RoLGk9KG4tKHRoaXMuY2xvc2VkPzA6MSkpKkE7bGV0IHIsbyxzPU1hdGguZmxvb3IoaSksYT1pLXM7dGhpcy5jbG9zZWQ/cys9cz4wPzA6KE1hdGguZmxvb3IoTWF0aC5hYnMocykvbikrMSkqbjowPT09YSYmcz09PW4tMSYmKHM9bi0yLGE9MSksdGhpcy5jbG9zZWR8fHM+MD9yPXRbKHMtMSklbl06KGVjLnN1YlZlY3RvcnModFswXSx0WzFdKS5hZGQodFswXSkscj1lYyk7Y29uc3QgQj10W3Mlbl0sYz10WyhzKzEpJW5dO2lmKHRoaXMuY2xvc2VkfHxzKzI8bj9vPXRbKHMrMiklbl06KGVjLnN1YlZlY3RvcnModFtuLTFdLHRbbi0yXSkuYWRkKHRbbi0xXSksbz1lYyksImNlbnRyaXBldGFsIj09PXRoaXMuY3VydmVUeXBlfHwiY2hvcmRhbCI9PT10aGlzLmN1cnZlVHlwZSl7Y29uc3QgQT0iY2hvcmRhbCI9PT10aGlzLmN1cnZlVHlwZT8uNTouMjU7bGV0IGU9TWF0aC5wb3coci5kaXN0YW5jZVRvU3F1YXJlZChCKSxBKSx0PU1hdGgucG93KEIuZGlzdGFuY2VUb1NxdWFyZWQoYyksQSksbj1NYXRoLnBvdyhjLmRpc3RhbmNlVG9TcXVhcmVkKG8pLEEpO3Q8MWUtNCYmKHQ9MSksZTwxZS00JiYoZT10KSxuPDFlLTQmJihuPXQpLHRjLmluaXROb251bmlmb3JtQ2F0bXVsbFJvbShyLngsQi54LGMueCxvLngsZSx0LG4pLG5jLmluaXROb251bmlmb3JtQ2F0bXVsbFJvbShyLnksQi55LGMueSxvLnksZSx0LG4pLGljLmluaXROb251bmlmb3JtQ2F0bXVsbFJvbShyLnosQi56LGMueixvLnosZSx0LG4pfWVsc2UiY2F0bXVsbHJvbSI9PT10aGlzLmN1cnZlVHlwZSYmKHRjLmluaXRDYXRtdWxsUm9tKHIueCxCLngsYy54LG8ueCx0aGlzLnRlbnNpb24pLG5jLmluaXRDYXRtdWxsUm9tKHIueSxCLnksYy55LG8ueSx0aGlzLnRlbnNpb24pLGljLmluaXRDYXRtdWxsUm9tKHIueixCLnosYy56LG8ueix0aGlzLnRlbnNpb24pKTtyZXR1cm4gZS5zZXQodGMuY2FsYyhhKSxuYy5jYWxjKGEpLGljLmNhbGMoYSkpLGV9Y29weShBKXtzdXBlci5jb3B5KEEpLHRoaXMucG9pbnRzPVtdO2ZvcihsZXQgZT0wLHQ9QS5wb2ludHMubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QS5wb2ludHNbZV07dGhpcy5wb2ludHMucHVzaCh0LmNsb25lKCkpfXJldHVybiB0aGlzLmNsb3NlZD1BLmNsb3NlZCx0aGlzLmN1cnZlVHlwZT1BLmN1cnZlVHlwZSx0aGlzLnRlbnNpb249QS50ZW5zaW9uLHRoaXN9dG9KU09OKCl7Y29uc3QgQT1zdXBlci50b0pTT04oKTtBLnBvaW50cz1bXTtmb3IobGV0IGU9MCx0PXRoaXMucG9pbnRzLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PXRoaXMucG9pbnRzW2VdO0EucG9pbnRzLnB1c2godC50b0FycmF5KCkpfXJldHVybiBBLmNsb3NlZD10aGlzLmNsb3NlZCxBLmN1cnZlVHlwZT10aGlzLmN1cnZlVHlwZSxBLnRlbnNpb249dGhpcy50ZW5zaW9uLEF9ZnJvbUpTT04oQSl7c3VwZXIuZnJvbUpTT04oQSksdGhpcy5wb2ludHM9W107Zm9yKGxldCBlPTAsdD1BLnBvaW50cy5sZW5ndGg7ZTx0O2UrKyl7Y29uc3QgdD1BLnBvaW50c1tlXTt0aGlzLnBvaW50cy5wdXNoKChuZXcgZG4pLmZyb21BcnJheSh0KSl9cmV0dXJuIHRoaXMuY2xvc2VkPUEuY2xvc2VkLHRoaXMuY3VydmVUeXBlPUEuY3VydmVUeXBlLHRoaXMudGVuc2lvbj1BLnRlbnNpb24sdGhpc319ZnVuY3Rpb24gb2MoQSxlLHQsbixpKXtjb25zdCByPS41KihuLWUpLG89LjUqKGktdCkscz1BKkE7cmV0dXJuKDIqdC0yKm4rcitvKSooQSpzKSsoLTMqdCszKm4tMipyLW8pKnMrcipBK3R9ZnVuY3Rpb24gc2MoQSxlLHQsbil7cmV0dXJuIGZ1bmN0aW9uKEEsZSl7Y29uc3QgdD0xLUE7cmV0dXJuIHQqdCplfShBLGUpK2Z1bmN0aW9uKEEsZSl7cmV0dXJuIDIqKDEtQSkqQSplfShBLHQpK2Z1bmN0aW9uKEEsZSl7cmV0dXJuIEEqQSplfShBLG4pfWZ1bmN0aW9uIGFjKEEsZSx0LG4saSl7cmV0dXJuIGZ1bmN0aW9uKEEsZSl7Y29uc3QgdD0xLUE7cmV0dXJuIHQqdCp0KmV9KEEsZSkrZnVuY3Rpb24oQSxlKXtjb25zdCB0PTEtQTtyZXR1cm4gMyp0KnQqQSplfShBLHQpK2Z1bmN0aW9uKEEsZSl7cmV0dXJuIDMqKDEtQSkqQSpBKmV9KEEsbikrZnVuY3Rpb24oQSxlKXtyZXR1cm4gQSpBKkEqZX0oQSxpKX1jbGFzcyBCYyBleHRlbmRzIF9Ce2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBMdCxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgTHQsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bmV3IEx0LG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOm5ldyBMdDtzdXBlcigpLHRoaXMuaXNDdWJpY0JlemllckN1cnZlPSEwLHRoaXMudHlwZT0iQ3ViaWNCZXppZXJDdXJ2ZSIsdGhpcy52MD1BLHRoaXMudjE9ZSx0aGlzLnYyPXQsdGhpcy52Mz1ufWdldFBvaW50KEEpe2NvbnN0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBMdCx0PXRoaXMudjAsbj10aGlzLnYxLGk9dGhpcy52MixyPXRoaXMudjM7cmV0dXJuIGUuc2V0KGFjKEEsdC54LG4ueCxpLngsci54KSxhYyhBLHQueSxuLnksaS55LHIueSkpLGV9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnYwLmNvcHkoQS52MCksdGhpcy52MS5jb3B5KEEudjEpLHRoaXMudjIuY29weShBLnYyKSx0aGlzLnYzLmNvcHkoQS52MyksdGhpc310b0pTT04oKXtjb25zdCBBPXN1cGVyLnRvSlNPTigpO3JldHVybiBBLnYwPXRoaXMudjAudG9BcnJheSgpLEEudjE9dGhpcy52MS50b0FycmF5KCksQS52Mj10aGlzLnYyLnRvQXJyYXkoKSxBLnYzPXRoaXMudjMudG9BcnJheSgpLEF9ZnJvbUpTT04oQSl7cmV0dXJuIHN1cGVyLmZyb21KU09OKEEpLHRoaXMudjAuZnJvbUFycmF5KEEudjApLHRoaXMudjEuZnJvbUFycmF5KEEudjEpLHRoaXMudjIuZnJvbUFycmF5KEEudjIpLHRoaXMudjMuZnJvbUFycmF5KEEudjMpLHRoaXN9fWNsYXNzIGNjIGV4dGVuZHMgX0J7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IGRuLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBkbix0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpuZXcgZG4sbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bmV3IGRuO3N1cGVyKCksdGhpcy5pc0N1YmljQmV6aWVyQ3VydmUzPSEwLHRoaXMudHlwZT0iQ3ViaWNCZXppZXJDdXJ2ZTMiLHRoaXMudjA9QSx0aGlzLnYxPWUsdGhpcy52Mj10LHRoaXMudjM9bn1nZXRQb2ludChBKXtjb25zdCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG4sdD10aGlzLnYwLG49dGhpcy52MSxpPXRoaXMudjIscj10aGlzLnYzO3JldHVybiBlLnNldChhYyhBLHQueCxuLngsaS54LHIueCksYWMoQSx0Lnksbi55LGkueSxyLnkpLGFjKEEsdC56LG4ueixpLnosci56KSksZX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMudjAuY29weShBLnYwKSx0aGlzLnYxLmNvcHkoQS52MSksdGhpcy52Mi5jb3B5KEEudjIpLHRoaXMudjMuY29weShBLnYzKSx0aGlzfXRvSlNPTigpe2NvbnN0IEE9c3VwZXIudG9KU09OKCk7cmV0dXJuIEEudjA9dGhpcy52MC50b0FycmF5KCksQS52MT10aGlzLnYxLnRvQXJyYXkoKSxBLnYyPXRoaXMudjIudG9BcnJheSgpLEEudjM9dGhpcy52My50b0FycmF5KCksQX1mcm9tSlNPTihBKXtyZXR1cm4gc3VwZXIuZnJvbUpTT04oQSksdGhpcy52MC5mcm9tQXJyYXkoQS52MCksdGhpcy52MS5mcm9tQXJyYXkoQS52MSksdGhpcy52Mi5mcm9tQXJyYXkoQS52MiksdGhpcy52My5mcm9tQXJyYXkoQS52MyksdGhpc319Y2xhc3MgZ2MgZXh0ZW5kcyBfQntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpuZXcgTHQsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bmV3IEx0O3N1cGVyKCksdGhpcy5pc0xpbmVDdXJ2ZT0hMCx0aGlzLnR5cGU9IkxpbmVDdXJ2ZSIsdGhpcy52MT1BLHRoaXMudjI9ZX1nZXRQb2ludChBKXtjb25zdCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgTHQ7cmV0dXJuIDE9PT1BP2UuY29weSh0aGlzLnYyKTooZS5jb3B5KHRoaXMudjIpLnN1Yih0aGlzLnYxKSxlLm11bHRpcGx5U2NhbGFyKEEpLmFkZCh0aGlzLnYxKSksZX1nZXRQb2ludEF0KEEsZSl7cmV0dXJuIHRoaXMuZ2V0UG9pbnQoQSxlKX1nZXRUYW5nZW50KEEpe3JldHVybihhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bmV3IEx0KS5zdWJWZWN0b3JzKHRoaXMudjIsdGhpcy52MSkubm9ybWFsaXplKCl9Z2V0VGFuZ2VudEF0KEEsZSl7cmV0dXJuIHRoaXMuZ2V0VGFuZ2VudChBLGUpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy52MS5jb3B5KEEudjEpLHRoaXMudjIuY29weShBLnYyKSx0aGlzfXRvSlNPTigpe2NvbnN0IEE9c3VwZXIudG9KU09OKCk7cmV0dXJuIEEudjE9dGhpcy52MS50b0FycmF5KCksQS52Mj10aGlzLnYyLnRvQXJyYXkoKSxBfWZyb21KU09OKEEpe3JldHVybiBzdXBlci5mcm9tSlNPTihBKSx0aGlzLnYxLmZyb21BcnJheShBLnYxKSx0aGlzLnYyLmZyb21BcnJheShBLnYyKSx0aGlzfX1jbGFzcyBFYyBleHRlbmRzIF9Ce2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBkbixlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG47c3VwZXIoKSx0aGlzLmlzTGluZUN1cnZlMz0hMCx0aGlzLnR5cGU9IkxpbmVDdXJ2ZTMiLHRoaXMudjE9QSx0aGlzLnYyPWV9Z2V0UG9pbnQoQSl7Y29uc3QgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bmV3IGRuO3JldHVybiAxPT09QT9lLmNvcHkodGhpcy52Mik6KGUuY29weSh0aGlzLnYyKS5zdWIodGhpcy52MSksZS5tdWx0aXBseVNjYWxhcihBKS5hZGQodGhpcy52MSkpLGV9Z2V0UG9pbnRBdChBLGUpe3JldHVybiB0aGlzLmdldFBvaW50KEEsZSl9Z2V0VGFuZ2VudChBKXtyZXR1cm4oYXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBkbikuc3ViVmVjdG9ycyh0aGlzLnYyLHRoaXMudjEpLm5vcm1hbGl6ZSgpfWdldFRhbmdlbnRBdChBLGUpe3JldHVybiB0aGlzLmdldFRhbmdlbnQoQSxlKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMudjEuY29weShBLnYxKSx0aGlzLnYyLmNvcHkoQS52MiksdGhpc310b0pTT04oKXtjb25zdCBBPXN1cGVyLnRvSlNPTigpO3JldHVybiBBLnYxPXRoaXMudjEudG9BcnJheSgpLEEudjI9dGhpcy52Mi50b0FycmF5KCksQX1mcm9tSlNPTihBKXtyZXR1cm4gc3VwZXIuZnJvbUpTT04oQSksdGhpcy52MS5mcm9tQXJyYXkoQS52MSksdGhpcy52Mi5mcm9tQXJyYXkoQS52MiksdGhpc319Y2xhc3MgUWMgZXh0ZW5kcyBfQntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpuZXcgTHQsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bmV3IEx0LHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm5ldyBMdDtzdXBlcigpLHRoaXMuaXNRdWFkcmF0aWNCZXppZXJDdXJ2ZT0hMCx0aGlzLnR5cGU9IlF1YWRyYXRpY0JlemllckN1cnZlIix0aGlzLnYwPUEsdGhpcy52MT1lLHRoaXMudjI9dH1nZXRQb2ludChBKXtjb25zdCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgTHQsdD10aGlzLnYwLG49dGhpcy52MSxpPXRoaXMudjI7cmV0dXJuIGUuc2V0KHNjKEEsdC54LG4ueCxpLngpLHNjKEEsdC55LG4ueSxpLnkpKSxlfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy52MC5jb3B5KEEudjApLHRoaXMudjEuY29weShBLnYxKSx0aGlzLnYyLmNvcHkoQS52MiksdGhpc310b0pTT04oKXtjb25zdCBBPXN1cGVyLnRvSlNPTigpO3JldHVybiBBLnYwPXRoaXMudjAudG9BcnJheSgpLEEudjE9dGhpcy52MS50b0FycmF5KCksQS52Mj10aGlzLnYyLnRvQXJyYXkoKSxBfWZyb21KU09OKEEpe3JldHVybiBzdXBlci5mcm9tSlNPTihBKSx0aGlzLnYwLmZyb21BcnJheShBLnYwKSx0aGlzLnYxLmZyb21BcnJheShBLnYxKSx0aGlzLnYyLmZyb21BcnJheShBLnYyKSx0aGlzfX1jbGFzcyB1YyBleHRlbmRzIF9Ce2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBkbixlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG4sdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bmV3IGRuO3N1cGVyKCksdGhpcy5pc1F1YWRyYXRpY0JlemllckN1cnZlMz0hMCx0aGlzLnR5cGU9IlF1YWRyYXRpY0JlemllckN1cnZlMyIsdGhpcy52MD1BLHRoaXMudjE9ZSx0aGlzLnYyPXR9Z2V0UG9pbnQoQSl7Y29uc3QgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bmV3IGRuLHQ9dGhpcy52MCxuPXRoaXMudjEsaT10aGlzLnYyO3JldHVybiBlLnNldChzYyhBLHQueCxuLngsaS54KSxzYyhBLHQueSxuLnksaS55KSxzYyhBLHQueixuLnosaS56KSksZX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMudjAuY29weShBLnYwKSx0aGlzLnYxLmNvcHkoQS52MSksdGhpcy52Mi5jb3B5KEEudjIpLHRoaXN9dG9KU09OKCl7Y29uc3QgQT1zdXBlci50b0pTT04oKTtyZXR1cm4gQS52MD10aGlzLnYwLnRvQXJyYXkoKSxBLnYxPXRoaXMudjEudG9BcnJheSgpLEEudjI9dGhpcy52Mi50b0FycmF5KCksQX1mcm9tSlNPTihBKXtyZXR1cm4gc3VwZXIuZnJvbUpTT04oQSksdGhpcy52MC5mcm9tQXJyYXkoQS52MCksdGhpcy52MS5mcm9tQXJyYXkoQS52MSksdGhpcy52Mi5mcm9tQXJyYXkoQS52MiksdGhpc319Y2xhc3MgbGMgZXh0ZW5kcyBfQntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXTtzdXBlcigpLHRoaXMuaXNTcGxpbmVDdXJ2ZT0hMCx0aGlzLnR5cGU9IlNwbGluZUN1cnZlIix0aGlzLnBvaW50cz1BfWdldFBvaW50KEEpe2NvbnN0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBMdCx0PXRoaXMucG9pbnRzLG49KHQubGVuZ3RoLTEpKkEsaT1NYXRoLmZsb29yKG4pLHI9bi1pLG89dFswPT09aT9pOmktMV0scz10W2ldLGE9dFtpPnQubGVuZ3RoLTI/dC5sZW5ndGgtMTppKzFdLEI9dFtpPnQubGVuZ3RoLTM/dC5sZW5ndGgtMTppKzJdO3JldHVybiBlLnNldChvYyhyLG8ueCxzLngsYS54LEIueCksb2MocixvLnkscy55LGEueSxCLnkpKSxlfWNvcHkoQSl7c3VwZXIuY29weShBKSx0aGlzLnBvaW50cz1bXTtmb3IobGV0IGU9MCx0PUEucG9pbnRzLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PUEucG9pbnRzW2VdO3RoaXMucG9pbnRzLnB1c2godC5jbG9uZSgpKX1yZXR1cm4gdGhpc310b0pTT04oKXtjb25zdCBBPXN1cGVyLnRvSlNPTigpO0EucG9pbnRzPVtdO2ZvcihsZXQgZT0wLHQ9dGhpcy5wb2ludHMubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9dGhpcy5wb2ludHNbZV07QS5wb2ludHMucHVzaCh0LnRvQXJyYXkoKSl9cmV0dXJuIEF9ZnJvbUpTT04oQSl7c3VwZXIuZnJvbUpTT04oQSksdGhpcy5wb2ludHM9W107Zm9yKGxldCBlPTAsdD1BLnBvaW50cy5sZW5ndGg7ZTx0O2UrKyl7Y29uc3QgdD1BLnBvaW50c1tlXTt0aGlzLnBvaW50cy5wdXNoKChuZXcgTHQpLmZyb21BcnJheSh0KSl9cmV0dXJuIHRoaXN9fXZhciBoYz1PYmplY3QuZnJlZXplKHtfX3Byb3RvX186bnVsbCxBcmNDdXJ2ZTokQixDYXRtdWxsUm9tQ3VydmUzOnJjLEN1YmljQmV6aWVyQ3VydmU6QmMsQ3ViaWNCZXppZXJDdXJ2ZTM6Y2MsRWxsaXBzZUN1cnZlOnFCLExpbmVDdXJ2ZTpnYyxMaW5lQ3VydmUzOkVjLFF1YWRyYXRpY0JlemllckN1cnZlOlFjLFF1YWRyYXRpY0JlemllckN1cnZlMzp1YyxTcGxpbmVDdXJ2ZTpsY30pO2NsYXNzIHdjIGV4dGVuZHMgX0J7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMudHlwZT0iQ3VydmVQYXRoIix0aGlzLmN1cnZlcz1bXSx0aGlzLmF1dG9DbG9zZT0hMX1hZGQoQSl7dGhpcy5jdXJ2ZXMucHVzaChBKX1jbG9zZVBhdGgoKXtjb25zdCBBPXRoaXMuY3VydmVzWzBdLmdldFBvaW50KDApLGU9dGhpcy5jdXJ2ZXNbdGhpcy5jdXJ2ZXMubGVuZ3RoLTFdLmdldFBvaW50KDEpO0EuZXF1YWxzKGUpfHx0aGlzLmN1cnZlcy5wdXNoKG5ldyBnYyhlLEEpKX1nZXRQb2ludChBLGUpe2NvbnN0IHQ9QSp0aGlzLmdldExlbmd0aCgpLG49dGhpcy5nZXRDdXJ2ZUxlbmd0aHMoKTtsZXQgaT0wO2Zvcig7aTxuLmxlbmd0aDspe2lmKG5baV0+PXQpe2NvbnN0IEE9bltpXS10LHI9dGhpcy5jdXJ2ZXNbaV0sbz1yLmdldExlbmd0aCgpLHM9MD09PW8/MDoxLUEvbztyZXR1cm4gci5nZXRQb2ludEF0KHMsZSl9aSsrfXJldHVybiBudWxsfWdldExlbmd0aCgpe2NvbnN0IEE9dGhpcy5nZXRDdXJ2ZUxlbmd0aHMoKTtyZXR1cm4gQVtBLmxlbmd0aC0xXX11cGRhdGVBcmNMZW5ndGhzKCl7dGhpcy5uZWVkc1VwZGF0ZT0hMCx0aGlzLmNhY2hlTGVuZ3Rocz1udWxsLHRoaXMuZ2V0Q3VydmVMZW5ndGhzKCl9Z2V0Q3VydmVMZW5ndGhzKCl7aWYodGhpcy5jYWNoZUxlbmd0aHMmJnRoaXMuY2FjaGVMZW5ndGhzLmxlbmd0aD09PXRoaXMuY3VydmVzLmxlbmd0aClyZXR1cm4gdGhpcy5jYWNoZUxlbmd0aHM7Y29uc3QgQT1bXTtsZXQgZT0wO2ZvcihsZXQgdD0wLG49dGhpcy5jdXJ2ZXMubGVuZ3RoO3Q8bjt0KyspZSs9dGhpcy5jdXJ2ZXNbdF0uZ2V0TGVuZ3RoKCksQS5wdXNoKGUpO3JldHVybiB0aGlzLmNhY2hlTGVuZ3Rocz1BLEF9Z2V0U3BhY2VkUG9pbnRzKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjQwO2NvbnN0IGU9W107Zm9yKGxldCB0PTA7dDw9QTt0KyspZS5wdXNoKHRoaXMuZ2V0UG9pbnQodC9BKSk7cmV0dXJuIHRoaXMuYXV0b0Nsb3NlJiZlLnB1c2goZVswXSksZX1nZXRQb2ludHMoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MTI7Y29uc3QgZT1bXTtsZXQgdDtmb3IobGV0IG49MCxpPXRoaXMuY3VydmVzO248aS5sZW5ndGg7bisrKXtjb25zdCByPWlbbl0sbz1yLmlzRWxsaXBzZUN1cnZlPzIqQTpyLmlzTGluZUN1cnZlfHxyLmlzTGluZUN1cnZlMz8xOnIuaXNTcGxpbmVDdXJ2ZT9BKnIucG9pbnRzLmxlbmd0aDpBLHM9ci5nZXRQb2ludHMobyk7Zm9yKGxldCBBPTA7QTxzLmxlbmd0aDtBKyspe2NvbnN0IG49c1tBXTt0JiZ0LmVxdWFscyhuKXx8KGUucHVzaChuKSx0PW4pfX1yZXR1cm4gdGhpcy5hdXRvQ2xvc2UmJmUubGVuZ3RoPjEmJiFlW2UubGVuZ3RoLTFdLmVxdWFscyhlWzBdKSYmZS5wdXNoKGVbMF0pLGV9Y29weShBKXtzdXBlci5jb3B5KEEpLHRoaXMuY3VydmVzPVtdO2ZvcihsZXQgZT0wLHQ9QS5jdXJ2ZXMubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QS5jdXJ2ZXNbZV07dGhpcy5jdXJ2ZXMucHVzaCh0LmNsb25lKCkpfXJldHVybiB0aGlzLmF1dG9DbG9zZT1BLmF1dG9DbG9zZSx0aGlzfXRvSlNPTigpe2NvbnN0IEE9c3VwZXIudG9KU09OKCk7QS5hdXRvQ2xvc2U9dGhpcy5hdXRvQ2xvc2UsQS5jdXJ2ZXM9W107Zm9yKGxldCBlPTAsdD10aGlzLmN1cnZlcy5sZW5ndGg7ZTx0O2UrKyl7Y29uc3QgdD10aGlzLmN1cnZlc1tlXTtBLmN1cnZlcy5wdXNoKHQudG9KU09OKCkpfXJldHVybiBBfWZyb21KU09OKEEpe3N1cGVyLmZyb21KU09OKEEpLHRoaXMuYXV0b0Nsb3NlPUEuYXV0b0Nsb3NlLHRoaXMuY3VydmVzPVtdO2ZvcihsZXQgZT0wLHQ9QS5jdXJ2ZXMubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QS5jdXJ2ZXNbZV07dGhpcy5jdXJ2ZXMucHVzaCgobmV3IGhjW3QudHlwZV0pLmZyb21KU09OKHQpKX1yZXR1cm4gdGhpc319Y2xhc3MgQ2MgZXh0ZW5kcyB3Y3tjb25zdHJ1Y3RvcihBKXtzdXBlcigpLHRoaXMudHlwZT0iUGF0aCIsdGhpcy5jdXJyZW50UG9pbnQ9bmV3IEx0LEEmJnRoaXMuc2V0RnJvbVBvaW50cyhBKX1zZXRGcm9tUG9pbnRzKEEpe3RoaXMubW92ZVRvKEFbMF0ueCxBWzBdLnkpO2ZvcihsZXQgZT0xLHQ9QS5sZW5ndGg7ZTx0O2UrKyl0aGlzLmxpbmVUbyhBW2VdLngsQVtlXS55KTtyZXR1cm4gdGhpc31tb3ZlVG8oQSxlKXtyZXR1cm4gdGhpcy5jdXJyZW50UG9pbnQuc2V0KEEsZSksdGhpc31saW5lVG8oQSxlKXtjb25zdCB0PW5ldyBnYyh0aGlzLmN1cnJlbnRQb2ludC5jbG9uZSgpLG5ldyBMdChBLGUpKTtyZXR1cm4gdGhpcy5jdXJ2ZXMucHVzaCh0KSx0aGlzLmN1cnJlbnRQb2ludC5zZXQoQSxlKSx0aGlzfXF1YWRyYXRpY0N1cnZlVG8oQSxlLHQsbil7Y29uc3QgaT1uZXcgUWModGhpcy5jdXJyZW50UG9pbnQuY2xvbmUoKSxuZXcgTHQoQSxlKSxuZXcgTHQodCxuKSk7cmV0dXJuIHRoaXMuY3VydmVzLnB1c2goaSksdGhpcy5jdXJyZW50UG9pbnQuc2V0KHQsbiksdGhpc31iZXppZXJDdXJ2ZVRvKEEsZSx0LG4saSxyKXtjb25zdCBvPW5ldyBCYyh0aGlzLmN1cnJlbnRQb2ludC5jbG9uZSgpLG5ldyBMdChBLGUpLG5ldyBMdCh0LG4pLG5ldyBMdChpLHIpKTtyZXR1cm4gdGhpcy5jdXJ2ZXMucHVzaChvKSx0aGlzLmN1cnJlbnRQb2ludC5zZXQoaSxyKSx0aGlzfXNwbGluZVRocnUoQSl7Y29uc3QgZT1bdGhpcy5jdXJyZW50UG9pbnQuY2xvbmUoKV0uY29uY2F0KEEpLHQ9bmV3IGxjKGUpO3JldHVybiB0aGlzLmN1cnZlcy5wdXNoKHQpLHRoaXMuY3VycmVudFBvaW50LmNvcHkoQVtBLmxlbmd0aC0xXSksdGhpc31hcmMoQSxlLHQsbixpLHIpe2NvbnN0IG89dGhpcy5jdXJyZW50UG9pbnQueCxzPXRoaXMuY3VycmVudFBvaW50Lnk7cmV0dXJuIHRoaXMuYWJzYXJjKEErbyxlK3MsdCxuLGksciksdGhpc31hYnNhcmMoQSxlLHQsbixpLHIpe3JldHVybiB0aGlzLmFic2VsbGlwc2UoQSxlLHQsdCxuLGksciksdGhpc31lbGxpcHNlKEEsZSx0LG4saSxyLG8scyl7Y29uc3QgYT10aGlzLmN1cnJlbnRQb2ludC54LEI9dGhpcy5jdXJyZW50UG9pbnQueTtyZXR1cm4gdGhpcy5hYnNlbGxpcHNlKEErYSxlK0IsdCxuLGkscixvLHMpLHRoaXN9YWJzZWxsaXBzZShBLGUsdCxuLGkscixvLHMpe2NvbnN0IGE9bmV3IHFCKEEsZSx0LG4saSxyLG8scyk7aWYodGhpcy5jdXJ2ZXMubGVuZ3RoPjApe2NvbnN0IEE9YS5nZXRQb2ludCgwKTtBLmVxdWFscyh0aGlzLmN1cnJlbnRQb2ludCl8fHRoaXMubGluZVRvKEEueCxBLnkpfXRoaXMuY3VydmVzLnB1c2goYSk7Y29uc3QgQj1hLmdldFBvaW50KDEpO3JldHVybiB0aGlzLmN1cnJlbnRQb2ludC5jb3B5KEIpLHRoaXN9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLmN1cnJlbnRQb2ludC5jb3B5KEEuY3VycmVudFBvaW50KSx0aGlzfXRvSlNPTigpe2NvbnN0IEE9c3VwZXIudG9KU09OKCk7cmV0dXJuIEEuY3VycmVudFBvaW50PXRoaXMuY3VycmVudFBvaW50LnRvQXJyYXkoKSxBfWZyb21KU09OKEEpe3JldHVybiBzdXBlci5mcm9tSlNPTihBKSx0aGlzLmN1cnJlbnRQb2ludC5mcm9tQXJyYXkoQS5jdXJyZW50UG9pbnQpLHRoaXN9fWNsYXNzIEljIGV4dGVuZHMgbHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06W25ldyBMdCgwLC0uNSksbmV3IEx0KC41LDApLG5ldyBMdCgwLC41KV0sZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MTIsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXToyKk1hdGguUEk7c3VwZXIoKSx0aGlzLnR5cGU9IkxhdGhlR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17cG9pbnRzOkEsc2VnbWVudHM6ZSxwaGlTdGFydDp0LHBoaUxlbmd0aDpufSxlPU1hdGguZmxvb3IoZSksbj1HdChuLDAsMipNYXRoLlBJKTtjb25zdCBpPVtdLHI9W10sbz1bXSxzPVtdLGE9W10sQj0xL2UsYz1uZXcgZG4sZz1uZXcgTHQsRT1uZXcgZG4sUT1uZXcgZG4sdT1uZXcgZG47bGV0IGw9MCxoPTA7Zm9yKGxldCBlPTA7ZTw9QS5sZW5ndGgtMTtlKyspc3dpdGNoKGUpe2Nhc2UgMDpsPUFbZSsxXS54LUFbZV0ueCxoPUFbZSsxXS55LUFbZV0ueSxFLng9MSpoLEUueT0tbCxFLno9MCpoLHUuY29weShFKSxFLm5vcm1hbGl6ZSgpLHMucHVzaChFLngsRS55LEUueik7YnJlYWs7Y2FzZSBBLmxlbmd0aC0xOnMucHVzaCh1LngsdS55LHUueik7YnJlYWs7ZGVmYXVsdDpsPUFbZSsxXS54LUFbZV0ueCxoPUFbZSsxXS55LUFbZV0ueSxFLng9MSpoLEUueT0tbCxFLno9MCpoLFEuY29weShFKSxFLngrPXUueCxFLnkrPXUueSxFLnorPXUueixFLm5vcm1hbGl6ZSgpLHMucHVzaChFLngsRS55LEUueiksdS5jb3B5KFEpfWZvcihsZXQgaT0wO2k8PWU7aSsrKXtjb25zdCBFPXQraSpCKm4sUT1NYXRoLnNpbihFKSx1PU1hdGguY29zKEUpO2ZvcihsZXQgdD0wO3Q8PUEubGVuZ3RoLTE7dCsrKXtjLng9QVt0XS54KlEsYy55PUFbdF0ueSxjLno9QVt0XS54KnUsci5wdXNoKGMueCxjLnksYy56KSxnLng9aS9lLGcueT10LyhBLmxlbmd0aC0xKSxvLnB1c2goZy54LGcueSk7Y29uc3Qgbj1zWzMqdCswXSpRLEI9c1szKnQrMV0sRT1zWzMqdCswXSp1O2EucHVzaChuLEIsRSl9fWZvcihsZXQgdD0wO3Q8ZTt0KyspZm9yKGxldCBlPTA7ZTxBLmxlbmd0aC0xO2UrKyl7Y29uc3Qgbj1lK3QqQS5sZW5ndGgscj1uLG89bitBLmxlbmd0aCxzPW4rQS5sZW5ndGgrMSxhPW4rMTtpLnB1c2gocixvLGEpLGkucHVzaChzLGEsbyl9dGhpcy5zZXRJbmRleChpKSx0aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihyLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgidXYiLG5ldyBvcihvLDIpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgb3IoYSwzKSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgSWMoQS5wb2ludHMsQS5zZWdtZW50cyxBLnBoaVN0YXJ0LEEucGhpTGVuZ3RoKX19Y2xhc3MgTWMgZXh0ZW5kcyBJY3tjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjEsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06NCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTo4O2NvbnN0IGk9bmV3IENjO2kuYWJzYXJjKDAsLWUvMixBLDEuNSpNYXRoLlBJLDApLGkuYWJzYXJjKDAsZS8yLEEsMCwuNSpNYXRoLlBJKSxzdXBlcihpLmdldFBvaW50cyh0KSxuKSx0aGlzLnR5cGU9IkNhcHN1bGVHZW9tZXRyeSIsdGhpcy5wYXJhbWV0ZXJzPXtyYWRpdXM6QSxoZWlnaHQ6ZSxjYXBTZWdtZW50czp0LHJhZGlhbFNlZ21lbnRzOm59fXN0YXRpYyBmcm9tSlNPTihBKXtyZXR1cm4gbmV3IE1jKEEucmFkaXVzLEEubGVuZ3RoLEEuY2FwU2VnbWVudHMsQS5yYWRpYWxTZWdtZW50cyl9fWNsYXNzIGRjIGV4dGVuZHMgbHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTozMix0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTowLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjIqTWF0aC5QSTtzdXBlcigpLHRoaXMudHlwZT0iQ2lyY2xlR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17cmFkaXVzOkEsc2VnbWVudHM6ZSx0aGV0YVN0YXJ0OnQsdGhldGFMZW5ndGg6bn0sZT1NYXRoLm1heCgzLGUpO2NvbnN0IGk9W10scj1bXSxvPVtdLHM9W10sYT1uZXcgZG4sQj1uZXcgTHQ7ci5wdXNoKDAsMCwwKSxvLnB1c2goMCwwLDEpLHMucHVzaCguNSwuNSk7Zm9yKGxldCBpPTAsYz0zO2k8PWU7aSsrLGMrPTMpe2NvbnN0IGc9dCtpL2UqbjthLng9QSpNYXRoLmNvcyhnKSxhLnk9QSpNYXRoLnNpbihnKSxyLnB1c2goYS54LGEueSxhLnopLG8ucHVzaCgwLDAsMSksQi54PShyW2NdL0ErMSkvMixCLnk9KHJbYysxXS9BKzEpLzIscy5wdXNoKEIueCxCLnkpfWZvcihsZXQgQT0xO0E8PWU7QSsrKWkucHVzaChBLEErMSwwKTt0aGlzLnNldEluZGV4KGkpLHRoaXMuc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKHIsMykpLHRoaXMuc2V0QXR0cmlidXRlKCJub3JtYWwiLG5ldyBvcihvLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgidXYiLG5ldyBvcihzLDIpKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMucGFyYW1ldGVycz1PYmplY3QuYXNzaWduKHt9LEEucGFyYW1ldGVycyksdGhpc31zdGF0aWMgZnJvbUpTT04oQSl7cmV0dXJuIG5ldyBkYyhBLnJhZGl1cyxBLnNlZ21lbnRzLEEudGhldGFTdGFydCxBLnRoZXRhTGVuZ3RoKX19Y2xhc3MgcGMgZXh0ZW5kcyBscntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjEsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MSxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTozMixpPWFyZ3VtZW50cy5sZW5ndGg+NCYmdm9pZCAwIT09YXJndW1lbnRzWzRdP2FyZ3VtZW50c1s0XToxLHI9YXJndW1lbnRzLmxlbmd0aD41JiZ2b2lkIDAhPT1hcmd1bWVudHNbNV0mJmFyZ3VtZW50c1s1XSxvPWFyZ3VtZW50cy5sZW5ndGg+NiYmdm9pZCAwIT09YXJndW1lbnRzWzZdP2FyZ3VtZW50c1s2XTowLHM9YXJndW1lbnRzLmxlbmd0aD43JiZ2b2lkIDAhPT1hcmd1bWVudHNbN10/YXJndW1lbnRzWzddOjIqTWF0aC5QSTtzdXBlcigpLHRoaXMudHlwZT0iQ3lsaW5kZXJHZW9tZXRyeSIsdGhpcy5wYXJhbWV0ZXJzPXtyYWRpdXNUb3A6QSxyYWRpdXNCb3R0b206ZSxoZWlnaHQ6dCxyYWRpYWxTZWdtZW50czpuLGhlaWdodFNlZ21lbnRzOmksb3BlbkVuZGVkOnIsdGhldGFTdGFydDpvLHRoZXRhTGVuZ3RoOnN9O2NvbnN0IGE9dGhpcztuPU1hdGguZmxvb3IobiksaT1NYXRoLmZsb29yKGkpO2NvbnN0IEI9W10sYz1bXSxnPVtdLEU9W107bGV0IFE9MDtjb25zdCB1PVtdLGw9dC8yO2xldCBoPTA7ZnVuY3Rpb24gdyh0KXtjb25zdCBpPVEscj1uZXcgTHQsdT1uZXcgZG47bGV0IHc9MDtjb25zdCBDPSEwPT09dD9BOmUsST0hMD09PXQ/MTotMTtmb3IobGV0IEE9MTtBPD1uO0ErKyljLnB1c2goMCxsKkksMCksZy5wdXNoKDAsSSwwKSxFLnB1c2goLjUsLjUpLFErKztjb25zdCBNPVE7Zm9yKGxldCBBPTA7QTw9bjtBKyspe2NvbnN0IGU9QS9uKnMrbyx0PU1hdGguY29zKGUpLGk9TWF0aC5zaW4oZSk7dS54PUMqaSx1Lnk9bCpJLHUuej1DKnQsYy5wdXNoKHUueCx1LnksdS56KSxnLnB1c2goMCxJLDApLHIueD0uNSp0Ky41LHIueT0uNSppKkkrLjUsRS5wdXNoKHIueCxyLnkpLFErK31mb3IobGV0IEE9MDtBPG47QSsrKXtjb25zdCBlPWkrQSxuPU0rQTshMD09PXQ/Qi5wdXNoKG4sbisxLGUpOkIucHVzaChuKzEsbixlKSx3Kz0zfWEuYWRkR3JvdXAoaCx3LCEwPT09dD8xOjIpLGgrPXd9IWZ1bmN0aW9uKCl7Y29uc3Qgcj1uZXcgZG4sdz1uZXcgZG47bGV0IEM9MDtjb25zdCBJPShlLUEpL3Q7Zm9yKGxldCBhPTA7YTw9aTthKyspe2NvbnN0IEI9W10saD1hL2ksQz1oKihlLUEpK0E7Zm9yKGxldCBBPTA7QTw9bjtBKyspe2NvbnN0IGU9QS9uLGk9ZSpzK28sYT1NYXRoLnNpbihpKSx1PU1hdGguY29zKGkpO3cueD1DKmEsdy55PS1oKnQrbCx3Lno9Qyp1LGMucHVzaCh3Lngsdy55LHcueiksci5zZXQoYSxJLHUpLm5vcm1hbGl6ZSgpLGcucHVzaChyLngsci55LHIueiksRS5wdXNoKGUsMS1oKSxCLnB1c2goUSsrKX11LnB1c2goQil9Zm9yKGxldCBBPTA7QTxuO0ErKylmb3IobGV0IGU9MDtlPGk7ZSsrKXtjb25zdCB0PXVbZV1bQV0sbj11W2UrMV1bQV0saT11W2UrMV1bQSsxXSxyPXVbZV1bQSsxXTtCLnB1c2godCxuLHIpLEIucHVzaChuLGksciksQys9Nn1hLmFkZEdyb3VwKGgsQywwKSxoKz1DfSgpLCExPT09ciYmKEE+MCYmdyghMCksZT4wJiZ3KCExKSksdGhpcy5zZXRJbmRleChCKSx0aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihjLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgb3IoZywzKSksdGhpcy5zZXRBdHRyaWJ1dGUoInV2IixuZXcgb3IoRSwyKSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgcGMoQS5yYWRpdXNUb3AsQS5yYWRpdXNCb3R0b20sQS5oZWlnaHQsQS5yYWRpYWxTZWdtZW50cyxBLmhlaWdodFNlZ21lbnRzLEEub3BlbkVuZGVkLEEudGhldGFTdGFydCxBLnRoZXRhTGVuZ3RoKX19Y2xhc3MgbWMgZXh0ZW5kcyBwY3tjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjEsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MzIsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106MSxpPWFyZ3VtZW50cy5sZW5ndGg+NCYmdm9pZCAwIT09YXJndW1lbnRzWzRdJiZhcmd1bWVudHNbNF0scj1hcmd1bWVudHMubGVuZ3RoPjUmJnZvaWQgMCE9PWFyZ3VtZW50c1s1XT9hcmd1bWVudHNbNV06MCxvPWFyZ3VtZW50cy5sZW5ndGg+NiYmdm9pZCAwIT09YXJndW1lbnRzWzZdP2FyZ3VtZW50c1s2XToyKk1hdGguUEk7c3VwZXIoMCxBLGUsdCxuLGkscixvKSx0aGlzLnR5cGU9IkNvbmVHZW9tZXRyeSIsdGhpcy5wYXJhbWV0ZXJzPXtyYWRpdXM6QSxoZWlnaHQ6ZSxyYWRpYWxTZWdtZW50czp0LGhlaWdodFNlZ21lbnRzOm4sb3BlbkVuZGVkOmksdGhldGFTdGFydDpyLHRoZXRhTGVuZ3RoOm99fXN0YXRpYyBmcm9tSlNPTihBKXtyZXR1cm4gbmV3IG1jKEEucmFkaXVzLEEuaGVpZ2h0LEEucmFkaWFsU2VnbWVudHMsQS5oZWlnaHRTZWdtZW50cyxBLm9wZW5FbmRlZCxBLnRoZXRhU3RhcnQsQS50aGV0YUxlbmd0aCl9fWNsYXNzIEZjIGV4dGVuZHMgbHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06W10sZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06W10sdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MSxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTowO3N1cGVyKCksdGhpcy50eXBlPSJQb2x5aGVkcm9uR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17dmVydGljZXM6QSxpbmRpY2VzOmUscmFkaXVzOnQsZGV0YWlsOm59O2NvbnN0IGk9W10scj1bXTtmdW5jdGlvbiBvKEEsZSx0LG4pe2NvbnN0IGk9bisxLHI9W107Zm9yKGxldCBuPTA7bjw9aTtuKyspe3Jbbl09W107Y29uc3Qgbz1BLmNsb25lKCkubGVycCh0LG4vaSkscz1lLmNsb25lKCkubGVycCh0LG4vaSksYT1pLW47Zm9yKGxldCBBPTA7QTw9YTtBKyspcltuXVtBXT0wPT09QSYmbj09PWk/bzpvLmNsb25lKCkubGVycChzLEEvYSl9Zm9yKGxldCBBPTA7QTxpO0ErKylmb3IobGV0IGU9MDtlPDIqKGktQSktMTtlKyspe2NvbnN0IHQ9TWF0aC5mbG9vcihlLzIpO2UlMj09MD8ocyhyW0FdW3QrMV0pLHMocltBKzFdW3RdKSxzKHJbQV1bdF0pKToocyhyW0FdW3QrMV0pLHMocltBKzFdW3QrMV0pLHMocltBKzFdW3RdKSl9fWZ1bmN0aW9uIHMoQSl7aS5wdXNoKEEueCxBLnksQS56KX1mdW5jdGlvbiBhKGUsdCl7Y29uc3Qgbj0zKmU7dC54PUFbbiswXSx0Lnk9QVtuKzFdLHQuej1BW24rMl19ZnVuY3Rpb24gQihBLGUsdCxuKXtuPDAmJjE9PT1BLngmJihyW2VdPUEueC0xKSwwPT09dC54JiYwPT09dC56JiYocltlXT1uLzIvTWF0aC5QSSsuNSl9ZnVuY3Rpb24gYyhBKXtyZXR1cm4gTWF0aC5hdGFuMihBLnosLUEueCl9IWZ1bmN0aW9uKEEpe2NvbnN0IHQ9bmV3IGRuLG49bmV3IGRuLGk9bmV3IGRuO2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cis9MylhKGVbciswXSx0KSxhKGVbcisxXSxuKSxhKGVbcisyXSxpKSxvKHQsbixpLEEpfShuKSxmdW5jdGlvbihBKXtjb25zdCBlPW5ldyBkbjtmb3IobGV0IHQ9MDt0PGkubGVuZ3RoO3QrPTMpZS54PWlbdCswXSxlLnk9aVt0KzFdLGUuej1pW3QrMl0sZS5ub3JtYWxpemUoKS5tdWx0aXBseVNjYWxhcihBKSxpW3QrMF09ZS54LGlbdCsxXT1lLnksaVt0KzJdPWUuen0odCksZnVuY3Rpb24oKXtjb25zdCBBPW5ldyBkbjtmb3IobGV0IHQ9MDt0PGkubGVuZ3RoO3QrPTMpe0EueD1pW3QrMF0sQS55PWlbdCsxXSxBLno9aVt0KzJdO2NvbnN0IG49YyhBKS8yL01hdGguUEkrLjUsbz0oZT1BLE1hdGguYXRhbjIoLWUueSxNYXRoLnNxcnQoZS54KmUueCtlLnoqZS56KSkvTWF0aC5QSSsuNSk7ci5wdXNoKG4sMS1vKX12YXIgZTsoZnVuY3Rpb24oKXtjb25zdCBBPW5ldyBkbixlPW5ldyBkbix0PW5ldyBkbixuPW5ldyBkbixvPW5ldyBMdCxzPW5ldyBMdCxhPW5ldyBMdDtmb3IobGV0IGc9MCxFPTA7ZzxpLmxlbmd0aDtnKz05LEUrPTYpe0Euc2V0KGlbZyswXSxpW2crMV0saVtnKzJdKSxlLnNldChpW2crM10saVtnKzRdLGlbZys1XSksdC5zZXQoaVtnKzZdLGlbZys3XSxpW2crOF0pLG8uc2V0KHJbRSswXSxyW0UrMV0pLHMuc2V0KHJbRSsyXSxyW0UrM10pLGEuc2V0KHJbRSs0XSxyW0UrNV0pLG4uY29weShBKS5hZGQoZSkuYWRkKHQpLmRpdmlkZVNjYWxhcigzKTtjb25zdCBRPWMobik7QihvLEUrMCxBLFEpLEIocyxFKzIsZSxRKSxCKGEsRSs0LHQsUSl9fSkoKSxmdW5jdGlvbigpe2ZvcihsZXQgQT0wO0E8ci5sZW5ndGg7QSs9Nil7Y29uc3QgZT1yW0ErMF0sdD1yW0ErMl0sbj1yW0ErNF0saT1NYXRoLm1heChlLHQsbiksbz1NYXRoLm1pbihlLHQsbik7aT4uOSYmbzwuMSYmKGU8LjImJihyW0ErMF0rPTEpLHQ8LjImJihyW0ErMl0rPTEpLG48LjImJihyW0ErNF0rPTEpKX19KCl9KCksdGhpcy5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IoaSwzKSksdGhpcy5zZXRBdHRyaWJ1dGUoIm5vcm1hbCIsbmV3IG9yKGkuc2xpY2UoKSwzKSksdGhpcy5zZXRBdHRyaWJ1dGUoInV2IixuZXcgb3IociwyKSksMD09PW4/dGhpcy5jb21wdXRlVmVydGV4Tm9ybWFscygpOnRoaXMubm9ybWFsaXplTm9ybWFscygpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5wYXJhbWV0ZXJzPU9iamVjdC5hc3NpZ24oe30sQS5wYXJhbWV0ZXJzKSx0aGlzfXN0YXRpYyBmcm9tSlNPTihBKXtyZXR1cm4gbmV3IEZjKEEudmVydGljZXMsQS5pbmRpY2VzLEEucmFkaXVzLEEuZGV0YWlscyl9fWNsYXNzIERjIGV4dGVuZHMgRmN7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO2NvbnN0IHQ9KDErTWF0aC5zcXJ0KDUpKS8yLG49MS90O3N1cGVyKFstMSwtMSwtMSwtMSwtMSwxLC0xLDEsLTEsLTEsMSwxLDEsLTEsLTEsMSwtMSwxLDEsMSwtMSwxLDEsMSwwLC1uLC10LDAsLW4sdCwwLG4sLXQsMCxuLHQsLW4sLXQsMCwtbix0LDAsbiwtdCwwLG4sdCwwLC10LDAsLW4sdCwwLC1uLC10LDAsbix0LDAsbl0sWzMsMTEsNywzLDcsMTUsMywxNSwxMyw3LDE5LDE3LDcsMTcsNiw3LDYsMTUsMTcsNCw4LDE3LDgsMTAsMTcsMTAsNiw4LDAsMTYsOCwxNiwyLDgsMiwxMCwwLDEyLDEsMCwxLDE4LDAsMTgsMTYsNiwxMCwyLDYsMiwxMyw2LDEzLDE1LDIsMTYsMTgsMiwxOCwzLDIsMywxMywxOCwxLDksMTgsOSwxMSwxOCwxMSwzLDQsMTQsMTIsNCwxMiwwLDQsMCw4LDExLDksNSwxMSw1LDE5LDExLDE5LDcsMTksNSwxNCwxOSwxNCw0LDE5LDQsMTcsMSwxMiwxNCwxLDE0LDUsMSw1LDldLEEsZSksdGhpcy50eXBlPSJEb2RlY2FoZWRyb25HZW9tZXRyeSIsdGhpcy5wYXJhbWV0ZXJzPXtyYWRpdXM6QSxkZXRhaWw6ZX19c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgRGMoQS5yYWRpdXMsQS5kZXRhaWwpfX1jb25zdCBZYz1uZXcgZG4sZmM9bmV3IGRuLE5jPW5ldyBkbixVYz1uZXcgR2k7Y2xhc3MgeWMgZXh0ZW5kcyBscntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpudWxsLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjE7aWYoc3VwZXIoKSx0aGlzLnR5cGU9IkVkZ2VzR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17Z2VvbWV0cnk6QSx0aHJlc2hvbGRBbmdsZTplfSxudWxsIT09QSl7Y29uc3QgdD00LG49TWF0aC5wb3coMTAsdCksaT1NYXRoLmNvcyhUdCplKSxyPUEuZ2V0SW5kZXgoKSxvPUEuZ2V0QXR0cmlidXRlKCJwb3NpdGlvbiIpLHM9cj9yLmNvdW50Om8uY291bnQsYT1bMCwwLDBdLEI9WyJhIiwiYiIsImMiXSxjPW5ldyBBcnJheSgzKSxnPXt9LEU9W107Zm9yKGxldCBBPTA7QTxzO0ErPTMpe3I/KGFbMF09ci5nZXRYKEEpLGFbMV09ci5nZXRYKEErMSksYVsyXT1yLmdldFgoQSsyKSk6KGFbMF09QSxhWzFdPUErMSxhWzJdPUErMik7Y29uc3R7YTplLGI6dCxjOnN9PVVjO2lmKGUuZnJvbUJ1ZmZlckF0dHJpYnV0ZShvLGFbMF0pLHQuZnJvbUJ1ZmZlckF0dHJpYnV0ZShvLGFbMV0pLHMuZnJvbUJ1ZmZlckF0dHJpYnV0ZShvLGFbMl0pLFVjLmdldE5vcm1hbChOYyksY1swXT0iIi5jb25jYXQoTWF0aC5yb3VuZChlLngqbiksIiwiKS5jb25jYXQoTWF0aC5yb3VuZChlLnkqbiksIiwiKS5jb25jYXQoTWF0aC5yb3VuZChlLnoqbikpLGNbMV09IiIuY29uY2F0KE1hdGgucm91bmQodC54Km4pLCIsIikuY29uY2F0KE1hdGgucm91bmQodC55Km4pLCIsIikuY29uY2F0KE1hdGgucm91bmQodC56Km4pKSxjWzJdPSIiLmNvbmNhdChNYXRoLnJvdW5kKHMueCpuKSwiLCIpLmNvbmNhdChNYXRoLnJvdW5kKHMueSpuKSwiLCIpLmNvbmNhdChNYXRoLnJvdW5kKHMueipuKSksY1swXSE9PWNbMV0mJmNbMV0hPT1jWzJdJiZjWzJdIT09Y1swXSlmb3IobGV0IEE9MDtBPDM7QSsrKXtjb25zdCBlPShBKzEpJTMsdD1jW0FdLG49Y1tlXSxyPVVjW0JbQV1dLG89VWNbQltlXV0scz0iIi5jb25jYXQodCwiXyIpLmNvbmNhdChuKSxRPSIiLmNvbmNhdChuLCJfIikuY29uY2F0KHQpO1EgaW4gZyYmZ1tRXT8oTmMuZG90KGdbUV0ubm9ybWFsKTw9aSYmKEUucHVzaChyLngsci55LHIueiksRS5wdXNoKG8ueCxvLnksby56KSksZ1tRXT1udWxsKTpzIGluIGd8fChnW3NdPXtpbmRleDA6YVtBXSxpbmRleDE6YVtlXSxub3JtYWw6TmMuY2xvbmUoKX0pfX1mb3IoY29uc3QgQSBpbiBnKWlmKGdbQV0pe2NvbnN0e2luZGV4MDplLGluZGV4MTp0fT1nW0FdO1ljLmZyb21CdWZmZXJBdHRyaWJ1dGUobyxlKSxmYy5mcm9tQnVmZmVyQXR0cmlidXRlKG8sdCksRS5wdXNoKFljLngsWWMueSxZYy56KSxFLnB1c2goZmMueCxmYy55LGZjLnopfXRoaXMuc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKEUsMykpfX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMucGFyYW1ldGVycz1PYmplY3QuYXNzaWduKHt9LEEucGFyYW1ldGVycyksdGhpc319Y2xhc3MgVGMgZXh0ZW5kcyBDY3tjb25zdHJ1Y3RvcihBKXtzdXBlcihBKSx0aGlzLnV1aWQ9UnQoKSx0aGlzLnR5cGU9IlNoYXBlIix0aGlzLmhvbGVzPVtdfWdldFBvaW50c0hvbGVzKEEpe2NvbnN0IGU9W107Zm9yKGxldCB0PTAsbj10aGlzLmhvbGVzLmxlbmd0aDt0PG47dCsrKWVbdF09dGhpcy5ob2xlc1t0XS5nZXRQb2ludHMoQSk7cmV0dXJuIGV9ZXh0cmFjdFBvaW50cyhBKXtyZXR1cm57c2hhcGU6dGhpcy5nZXRQb2ludHMoQSksaG9sZXM6dGhpcy5nZXRQb2ludHNIb2xlcyhBKX19Y29weShBKXtzdXBlci5jb3B5KEEpLHRoaXMuaG9sZXM9W107Zm9yKGxldCBlPTAsdD1BLmhvbGVzLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PUEuaG9sZXNbZV07dGhpcy5ob2xlcy5wdXNoKHQuY2xvbmUoKSl9cmV0dXJuIHRoaXN9dG9KU09OKCl7Y29uc3QgQT1zdXBlci50b0pTT04oKTtBLnV1aWQ9dGhpcy51dWlkLEEuaG9sZXM9W107Zm9yKGxldCBlPTAsdD10aGlzLmhvbGVzLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PXRoaXMuaG9sZXNbZV07QS5ob2xlcy5wdXNoKHQudG9KU09OKCkpfXJldHVybiBBfWZyb21KU09OKEEpe3N1cGVyLmZyb21KU09OKEEpLHRoaXMudXVpZD1BLnV1aWQsdGhpcy5ob2xlcz1bXTtmb3IobGV0IGU9MCx0PUEuaG9sZXMubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QS5ob2xlc1tlXTt0aGlzLmhvbGVzLnB1c2goKG5ldyBDYykuZnJvbUpTT04odCkpfXJldHVybiB0aGlzfX1jb25zdCB4Yz1mdW5jdGlvbihBLGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToyO2NvbnN0IG49ZSYmZS5sZW5ndGgsaT1uP2VbMF0qdDpBLmxlbmd0aDtsZXQgcj1SYyhBLDAsaSx0LCEwKTtjb25zdCBvPVtdO2lmKCFyfHxyLm5leHQ9PT1yLnByZXYpcmV0dXJuIG87bGV0IHMsYSxCLGMsZyxFLFE7aWYobiYmKHI9amMoQSxlLHIsdCkpLEEubGVuZ3RoPjgwKnQpe3M9Qj1BWzBdLGE9Yz1BWzFdO2ZvcihsZXQgZT10O2U8aTtlKz10KWc9QVtlXSxFPUFbZSsxXSxnPHMmJihzPWcpLEU8YSYmKGE9RSksZz5CJiYoQj1nKSxFPmMmJihjPUUpO1E9TWF0aC5tYXgoQi1zLGMtYSksUT0wIT09UT8zMjc2Ny9ROjB9cmV0dXJuIFNjKHIsbyx0LHMsYSxRLDApLG99O2Z1bmN0aW9uIFJjKEEsZSx0LG4saSl7bGV0IHIsbztpZihpPT09ZnVuY3Rpb24oQSxlLHQsbil7bGV0IGk9MDtmb3IobGV0IHI9ZSxvPXQtbjtyPHQ7cis9bilpKz0oQVtvXS1BW3JdKSooQVtyKzFdK0FbbysxXSksbz1yO3JldHVybiBpfShBLGUsdCxuKT4wKWZvcihyPWU7cjx0O3IrPW4pbz1lZyhyLEFbcl0sQVtyKzFdLG8pO2Vsc2UgZm9yKHI9dC1uO3I+PWU7ci09bilvPWVnKHIsQVtyXSxBW3IrMV0sbyk7cmV0dXJuIG8mJlhjKG8sby5uZXh0KSYmKHRnKG8pLG89by5uZXh0KSxvfWZ1bmN0aW9uIEdjKEEsZSl7aWYoIUEpcmV0dXJuIEE7ZXx8KGU9QSk7bGV0IHQsbj1BO2Rve2lmKHQ9ITEsbi5zdGVpbmVyfHwhWGMobixuLm5leHQpJiYwIT09S2Mobi5wcmV2LG4sbi5uZXh0KSluPW4ubmV4dDtlbHNle2lmKHRnKG4pLG49ZT1uLnByZXYsbj09PW4ubmV4dClicmVhazt0PSEwfX13aGlsZSh0fHxuIT09ZSk7cmV0dXJuIGV9ZnVuY3Rpb24gU2MoQSxlLHQsbixpLHIsbyl7aWYoIUEpcmV0dXJuOyFvJiZyJiZmdW5jdGlvbihBLGUsdCxuKXtsZXQgaT1BO2RvezA9PT1pLnomJihpLno9UGMoaS54LGkueSxlLHQsbikpLGkucHJldlo9aS5wcmV2LGkubmV4dFo9aS5uZXh0LGk9aS5uZXh0fXdoaWxlKGkhPT1BKTtpLnByZXZaLm5leHRaPW51bGwsaS5wcmV2Wj1udWxsLGZ1bmN0aW9uKEEpe2xldCBlLHQsbixpLHIsbyxzLGEsQj0xO2Rve2Zvcih0PUEsQT1udWxsLHI9bnVsbCxvPTA7dDspe2ZvcihvKyssbj10LHM9MCxlPTA7ZTxCJiYocysrLG49bi5uZXh0WixuKTtlKyspO2ZvcihhPUI7cz4wfHxhPjAmJm47KTAhPT1zJiYoMD09PWF8fCFufHx0Lno8PW4ueik/KGk9dCx0PXQubmV4dFoscy0tKTooaT1uLG49bi5uZXh0WixhLS0pLHI/ci5uZXh0Wj1pOkE9aSxpLnByZXZaPXIscj1pO3Q9bn1yLm5leHRaPW51bGwsQio9Mn13aGlsZShvPjEpfShpKX0oQSxuLGkscik7bGV0IHMsYSxCPUE7Zm9yKDtBLnByZXYhPT1BLm5leHQ7KWlmKHM9QS5wcmV2LGE9QS5uZXh0LHI/SGMoQSxuLGkscik6YmMoQSkpZS5wdXNoKHMuaS90fDApLGUucHVzaChBLmkvdHwwKSxlLnB1c2goYS5pL3R8MCksdGcoQSksQT1hLm5leHQsQj1hLm5leHQ7ZWxzZSBpZigoQT1hKT09PUIpe28/MT09PW8/U2MoQT12YyhHYyhBKSxlLHQpLGUsdCxuLGksciwyKToyPT09byYma2MoQSxlLHQsbixpLHIpOlNjKEdjKEEpLGUsdCxuLGksciwxKTticmVha319ZnVuY3Rpb24gYmMoQSl7Y29uc3QgZT1BLnByZXYsdD1BLG49QS5uZXh0O2lmKEtjKGUsdCxuKT49MClyZXR1cm4hMTtjb25zdCBpPWUueCxyPXQueCxvPW4ueCxzPWUueSxhPXQueSxCPW4ueSxjPWk8cj9pPG8/aTpvOnI8bz9yOm8sZz1zPGE/czxCP3M6QjphPEI/YTpCLEU9aT5yP2k+bz9pOm86cj5vP3I6byxRPXM+YT9zPkI/czpCOmE+Qj9hOkI7bGV0IHU9bi5uZXh0O2Zvcig7dSE9PWU7KXtpZih1Lng+PWMmJnUueDw9RSYmdS55Pj1nJiZ1Lnk8PVEmJlZjKGkscyxyLGEsbyxCLHUueCx1LnkpJiZLYyh1LnByZXYsdSx1Lm5leHQpPj0wKXJldHVybiExO3U9dS5uZXh0fXJldHVybiEwfWZ1bmN0aW9uIEhjKEEsZSx0LG4pe2NvbnN0IGk9QS5wcmV2LHI9QSxvPUEubmV4dDtpZihLYyhpLHIsbyk+PTApcmV0dXJuITE7Y29uc3Qgcz1pLngsYT1yLngsQj1vLngsYz1pLnksZz1yLnksRT1vLnksUT1zPGE/czxCP3M6QjphPEI/YTpCLHU9YzxnP2M8RT9jOkU6ZzxFP2c6RSxsPXM+YT9zPkI/czpCOmE+Qj9hOkIsaD1jPmc/Yz5FP2M6RTpnPkU/ZzpFLHc9UGMoUSx1LGUsdCxuKSxDPVBjKGwsaCxlLHQsbik7bGV0IEk9QS5wcmV2WixNPUEubmV4dFo7Zm9yKDtJJiZJLno+PXcmJk0mJk0uejw9Qzspe2lmKEkueD49USYmSS54PD1sJiZJLnk+PXUmJkkueTw9aCYmSSE9PWkmJkkhPT1vJiZWYyhzLGMsYSxnLEIsRSxJLngsSS55KSYmS2MoSS5wcmV2LEksSS5uZXh0KT49MClyZXR1cm4hMTtpZihJPUkucHJldlosTS54Pj1RJiZNLng8PWwmJk0ueT49dSYmTS55PD1oJiZNIT09aSYmTSE9PW8mJlZjKHMsYyxhLGcsQixFLE0ueCxNLnkpJiZLYyhNLnByZXYsTSxNLm5leHQpPj0wKXJldHVybiExO009TS5uZXh0Wn1mb3IoO0kmJkkuej49dzspe2lmKEkueD49USYmSS54PD1sJiZJLnk+PXUmJkkueTw9aCYmSSE9PWkmJkkhPT1vJiZWYyhzLGMsYSxnLEIsRSxJLngsSS55KSYmS2MoSS5wcmV2LEksSS5uZXh0KT49MClyZXR1cm4hMTtJPUkucHJldlp9Zm9yKDtNJiZNLno8PUM7KXtpZihNLng+PVEmJk0ueDw9bCYmTS55Pj11JiZNLnk8PWgmJk0hPT1pJiZNIT09byYmVmMocyxjLGEsZyxCLEUsTS54LE0ueSkmJktjKE0ucHJldixNLE0ubmV4dCk+PTApcmV0dXJuITE7TT1NLm5leHRafXJldHVybiEwfWZ1bmN0aW9uIHZjKEEsZSx0KXtsZXQgbj1BO2Rve2NvbnN0IGk9bi5wcmV2LHI9bi5uZXh0Lm5leHQ7IVhjKGkscikmJlpjKGksbixuLm5leHQscikmJiRjKGkscikmJiRjKHIsaSkmJihlLnB1c2goaS5pL3R8MCksZS5wdXNoKG4uaS90fDApLGUucHVzaChyLmkvdHwwKSx0ZyhuKSx0ZyhuLm5leHQpLG49QT1yKSxuPW4ubmV4dH13aGlsZShuIT09QSk7cmV0dXJuIEdjKG4pfWZ1bmN0aW9uIGtjKEEsZSx0LG4saSxyKXtsZXQgbz1BO2Rve2xldCBBPW8ubmV4dC5uZXh0O2Zvcig7QSE9PW8ucHJldjspe2lmKG8uaSE9PUEuaSYmV2MobyxBKSl7bGV0IHM9QWcobyxBKTtyZXR1cm4gbz1HYyhvLG8ubmV4dCkscz1HYyhzLHMubmV4dCksU2MobyxlLHQsbixpLHIsMCksdm9pZCBTYyhzLGUsdCxuLGksciwwKX1BPUEubmV4dH1vPW8ubmV4dH13aGlsZShvIT09QSl9ZnVuY3Rpb24gamMoQSxlLHQsbil7Y29uc3QgaT1bXTtsZXQgcixvLHMsYSxCO2ZvcihyPTAsbz1lLmxlbmd0aDtyPG87cisrKXM9ZVtyXSpuLGE9cjxvLTE/ZVtyKzFdKm46QS5sZW5ndGgsQj1SYyhBLHMsYSxuLCExKSxCPT09Qi5uZXh0JiYoQi5zdGVpbmVyPSEwKSxpLnB1c2goT2MoQikpO2ZvcihpLnNvcnQoSmMpLHI9MDtyPGkubGVuZ3RoO3IrKyl0PXpjKGlbcl0sdCk7cmV0dXJuIHR9ZnVuY3Rpb24gSmMoQSxlKXtyZXR1cm4gQS54LWUueH1mdW5jdGlvbiB6YyhBLGUpe2NvbnN0IHQ9ZnVuY3Rpb24oQSxlKXtsZXQgdCxuPWUsaT0tMS8wO2NvbnN0IHI9QS54LG89QS55O2Rve2lmKG88PW4ueSYmbz49bi5uZXh0LnkmJm4ubmV4dC55IT09bi55KXtjb25zdCBBPW4ueCsoby1uLnkpKihuLm5leHQueC1uLngpLyhuLm5leHQueS1uLnkpO2lmKEE8PXImJkE+aSYmKGk9QSx0PW4ueDxuLm5leHQueD9uOm4ubmV4dCxBPT09cikpcmV0dXJuIHR9bj1uLm5leHR9d2hpbGUobiE9PWUpO2lmKCF0KXJldHVybiBudWxsO2NvbnN0IHM9dCxhPXQueCxCPXQueTtsZXQgYyxnPTEvMDtuPXQ7ZG97cj49bi54JiZuLng+PWEmJnIhPT1uLngmJlZjKG88Qj9yOmksbyxhLEIsbzxCP2k6cixvLG4ueCxuLnkpJiYoYz1NYXRoLmFicyhvLW4ueSkvKHItbi54KSwkYyhuLEEpJiYoYzxnfHxjPT09ZyYmKG4ueD50Lnh8fG4ueD09PXQueCYmTGModCxuKSkpJiYodD1uLGc9YykpLG49bi5uZXh0fXdoaWxlKG4hPT1zKTtyZXR1cm4gdH0oQSxlKTtpZighdClyZXR1cm4gZTtjb25zdCBuPUFnKHQsQSk7cmV0dXJuIEdjKG4sbi5uZXh0KSxHYyh0LHQubmV4dCl9ZnVuY3Rpb24gTGMoQSxlKXtyZXR1cm4gS2MoQS5wcmV2LEEsZS5wcmV2KTwwJiZLYyhlLm5leHQsQSxBLm5leHQpPDB9ZnVuY3Rpb24gUGMoQSxlLHQsbixpKXtyZXR1cm4oQT0xNDMxNjU1NzY1JigoQT04NTg5OTM0NTkmKChBPTI1MjY0NTEzNSYoKEE9MTY3MTE5MzUmKChBPShBLXQpKml8MCl8QTw8OCkpfEE8PDQpKXxBPDwyKSl8QTw8MSkpfChlPTE0MzE2NTU3NjUmKChlPTg1ODk5MzQ1OSYoKGU9MjUyNjQ1MTM1JigoZT0xNjcxMTkzNSYoKGU9KGUtbikqaXwwKXxlPDw4KSl8ZTw8NCkpfGU8PDIpKXxlPDwxKSk8PDF9ZnVuY3Rpb24gT2MoQSl7bGV0IGU9QSx0PUE7ZG97KGUueDx0Lnh8fGUueD09PXQueCYmZS55PHQueSkmJih0PWUpLGU9ZS5uZXh0fXdoaWxlKGUhPT1BKTtyZXR1cm4gdH1mdW5jdGlvbiBWYyhBLGUsdCxuLGkscixvLHMpe3JldHVybihpLW8pKihlLXMpPj0oQS1vKSooci1zKSYmKEEtbykqKG4tcyk+PSh0LW8pKihlLXMpJiYodC1vKSooci1zKT49KGktbykqKG4tcyl9ZnVuY3Rpb24gV2MoQSxlKXtyZXR1cm4gQS5uZXh0LmkhPT1lLmkmJkEucHJldi5pIT09ZS5pJiYhZnVuY3Rpb24oQSxlKXtsZXQgdD1BO2Rve2lmKHQuaSE9PUEuaSYmdC5uZXh0LmkhPT1BLmkmJnQuaSE9PWUuaSYmdC5uZXh0LmkhPT1lLmkmJlpjKHQsdC5uZXh0LEEsZSkpcmV0dXJuITA7dD10Lm5leHR9d2hpbGUodCE9PUEpO3JldHVybiExfShBLGUpJiYoJGMoQSxlKSYmJGMoZSxBKSYmZnVuY3Rpb24oQSxlKXtsZXQgdD1BLG49ITE7Y29uc3QgaT0oQS54K2UueCkvMixyPShBLnkrZS55KS8yO2Rve3QueT5yIT10Lm5leHQueT5yJiZ0Lm5leHQueSE9PXQueSYmaTwodC5uZXh0LngtdC54KSooci10LnkpLyh0Lm5leHQueS10LnkpK3QueCYmKG49IW4pLHQ9dC5uZXh0fXdoaWxlKHQhPT1BKTtyZXR1cm4gbn0oQSxlKSYmKEtjKEEucHJldixBLGUucHJldil8fEtjKEEsZS5wcmV2LGUpKXx8WGMoQSxlKSYmS2MoQS5wcmV2LEEsQS5uZXh0KT4wJiZLYyhlLnByZXYsZSxlLm5leHQpPjApfWZ1bmN0aW9uIEtjKEEsZSx0KXtyZXR1cm4oZS55LUEueSkqKHQueC1lLngpLShlLngtQS54KSoodC55LWUueSl9ZnVuY3Rpb24gWGMoQSxlKXtyZXR1cm4gQS54PT09ZS54JiZBLnk9PT1lLnl9ZnVuY3Rpb24gWmMoQSxlLHQsbil7Y29uc3QgaT1xYyhLYyhBLGUsdCkpLHI9cWMoS2MoQSxlLG4pKSxvPXFjKEtjKHQsbixBKSkscz1xYyhLYyh0LG4sZSkpO3JldHVybiBpIT09ciYmbyE9PXN8fCghKDAhPT1pfHwhX2MoQSx0LGUpKXx8KCEoMCE9PXJ8fCFfYyhBLG4sZSkpfHwoISgwIT09b3x8IV9jKHQsQSxuKSl8fCEoMCE9PXN8fCFfYyh0LGUsbikpKSkpfWZ1bmN0aW9uIF9jKEEsZSx0KXtyZXR1cm4gZS54PD1NYXRoLm1heChBLngsdC54KSYmZS54Pj1NYXRoLm1pbihBLngsdC54KSYmZS55PD1NYXRoLm1heChBLnksdC55KSYmZS55Pj1NYXRoLm1pbihBLnksdC55KX1mdW5jdGlvbiBxYyhBKXtyZXR1cm4gQT4wPzE6QTwwPy0xOjB9ZnVuY3Rpb24gJGMoQSxlKXtyZXR1cm4gS2MoQS5wcmV2LEEsQS5uZXh0KTwwP0tjKEEsZSxBLm5leHQpPj0wJiZLYyhBLEEucHJldixlKT49MDpLYyhBLGUsQS5wcmV2KTwwfHxLYyhBLEEubmV4dCxlKTwwfWZ1bmN0aW9uIEFnKEEsZSl7Y29uc3QgdD1uZXcgbmcoQS5pLEEueCxBLnkpLG49bmV3IG5nKGUuaSxlLngsZS55KSxpPUEubmV4dCxyPWUucHJldjtyZXR1cm4gQS5uZXh0PWUsZS5wcmV2PUEsdC5uZXh0PWksaS5wcmV2PXQsbi5uZXh0PXQsdC5wcmV2PW4sci5uZXh0PW4sbi5wcmV2PXIsbn1mdW5jdGlvbiBlZyhBLGUsdCxuKXtjb25zdCBpPW5ldyBuZyhBLGUsdCk7cmV0dXJuIG4/KGkubmV4dD1uLm5leHQsaS5wcmV2PW4sbi5uZXh0LnByZXY9aSxuLm5leHQ9aSk6KGkucHJldj1pLGkubmV4dD1pKSxpfWZ1bmN0aW9uIHRnKEEpe0EubmV4dC5wcmV2PUEucHJldixBLnByZXYubmV4dD1BLm5leHQsQS5wcmV2WiYmKEEucHJldloubmV4dFo9QS5uZXh0WiksQS5uZXh0WiYmKEEubmV4dFoucHJldlo9QS5wcmV2Wil9ZnVuY3Rpb24gbmcoQSxlLHQpe3RoaXMuaT1BLHRoaXMueD1lLHRoaXMueT10LHRoaXMucHJldj1udWxsLHRoaXMubmV4dD1udWxsLHRoaXMuej0wLHRoaXMucHJldlo9bnVsbCx0aGlzLm5leHRaPW51bGwsdGhpcy5zdGVpbmVyPSExfWNsYXNzIGlne3N0YXRpYyBhcmVhKEEpe2NvbnN0IGU9QS5sZW5ndGg7bGV0IHQ9MDtmb3IobGV0IG49ZS0xLGk9MDtpPGU7bj1pKyspdCs9QVtuXS54KkFbaV0ueS1BW2ldLngqQVtuXS55O3JldHVybi41KnR9c3RhdGljIGlzQ2xvY2tXaXNlKEEpe3JldHVybiBpZy5hcmVhKEEpPDB9c3RhdGljIHRyaWFuZ3VsYXRlU2hhcGUoQSxlKXtjb25zdCB0PVtdLG49W10saT1bXTtyZyhBKSxvZyh0LEEpO2xldCByPUEubGVuZ3RoO2UuZm9yRWFjaChyZyk7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspbi5wdXNoKHIpLHIrPWVbQV0ubGVuZ3RoLG9nKHQsZVtBXSk7Y29uc3Qgbz14Yyh0LG4pO2ZvcihsZXQgQT0wO0E8by5sZW5ndGg7QSs9MylpLnB1c2goby5zbGljZShBLEErMykpO3JldHVybiBpfX1mdW5jdGlvbiByZyhBKXtjb25zdCBlPUEubGVuZ3RoO2U+MiYmQVtlLTFdLmVxdWFscyhBWzBdKSYmQS5wb3AoKX1mdW5jdGlvbiBvZyhBLGUpe2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKUEucHVzaChlW3RdLngpLEEucHVzaChlW3RdLnkpfWNsYXNzIHNnIGV4dGVuZHMgbHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IFRjKFtuZXcgTHQoLjUsLjUpLG5ldyBMdCgtLjUsLjUpLG5ldyBMdCgtLjUsLS41KSxuZXcgTHQoLjUsLS41KV0pLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O3N1cGVyKCksdGhpcy50eXBlPSJFeHRydWRlR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17c2hhcGVzOkEsb3B0aW9uczplfSxBPUFycmF5LmlzQXJyYXkoQSk/QTpbQV07Y29uc3QgdD10aGlzLG49W10saT1bXTtmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspe3IoQVtlXSl9ZnVuY3Rpb24gcihBKXtjb25zdCByPVtdLG89dm9pZCAwIT09ZS5jdXJ2ZVNlZ21lbnRzP2UuY3VydmVTZWdtZW50czoxMixzPXZvaWQgMCE9PWUuc3RlcHM/ZS5zdGVwczoxLGE9dm9pZCAwIT09ZS5kZXB0aD9lLmRlcHRoOjE7bGV0IEI9dm9pZCAwPT09ZS5iZXZlbEVuYWJsZWR8fGUuYmV2ZWxFbmFibGVkLGM9dm9pZCAwIT09ZS5iZXZlbFRoaWNrbmVzcz9lLmJldmVsVGhpY2tuZXNzOi4yLGc9dm9pZCAwIT09ZS5iZXZlbFNpemU/ZS5iZXZlbFNpemU6Yy0uMSxFPXZvaWQgMCE9PWUuYmV2ZWxPZmZzZXQ/ZS5iZXZlbE9mZnNldDowLFE9dm9pZCAwIT09ZS5iZXZlbFNlZ21lbnRzP2UuYmV2ZWxTZWdtZW50czozO2NvbnN0IHU9ZS5leHRydWRlUGF0aCxsPXZvaWQgMCE9PWUuVVZHZW5lcmF0b3I/ZS5VVkdlbmVyYXRvcjphZztsZXQgaCx3LEMsSSxNLGQ9ITE7dSYmKGg9dS5nZXRTcGFjZWRQb2ludHMocyksZD0hMCxCPSExLHc9dS5jb21wdXRlRnJlbmV0RnJhbWVzKHMsITEpLEM9bmV3IGRuLEk9bmV3IGRuLE09bmV3IGRuKSxCfHwoUT0wLGM9MCxnPTAsRT0wKTtjb25zdCBwPUEuZXh0cmFjdFBvaW50cyhvKTtsZXQgbT1wLnNoYXBlO2NvbnN0IEY9cC5ob2xlcztpZighaWcuaXNDbG9ja1dpc2UobSkpe209bS5yZXZlcnNlKCk7Zm9yKGxldCBBPTAsZT1GLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPUZbQV07aWcuaXNDbG9ja1dpc2UoZSkmJihGW0FdPWUucmV2ZXJzZSgpKX19Y29uc3QgRD1pZy50cmlhbmd1bGF0ZVNoYXBlKG0sRiksWT1tO2ZvcihsZXQgQT0wLGU9Ri5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1GW0FdO209bS5jb25jYXQoZSl9ZnVuY3Rpb24gZihBLGUsdCl7cmV0dXJuIGV8fGNvbnNvbGUuZXJyb3IoIlRIUkVFLkV4dHJ1ZGVHZW9tZXRyeTogdmVjIGRvZXMgbm90IGV4aXN0IiksQS5jbG9uZSgpLmFkZFNjYWxlZFZlY3RvcihlLHQpfWNvbnN0IE49bS5sZW5ndGgsVT1ELmxlbmd0aDtmdW5jdGlvbiB5KEEsZSx0KXtsZXQgbixpLHI7Y29uc3Qgbz1BLngtZS54LHM9QS55LWUueSxhPXQueC1BLngsQj10LnktQS55LGM9bypvK3MqcyxnPW8qQi1zKmE7aWYoTWF0aC5hYnMoZyk+TnVtYmVyLkVQU0lMT04pe2NvbnN0IGc9TWF0aC5zcXJ0KGMpLEU9TWF0aC5zcXJ0KGEqYStCKkIpLFE9ZS54LXMvZyx1PWUueStvL2csbD0oKHQueC1CL0UtUSkqQi0odC55K2EvRS11KSphKS8obypCLXMqYSk7bj1RK28qbC1BLngsaT11K3MqbC1BLnk7Y29uc3QgaD1uKm4raSppO2lmKGg8PTIpcmV0dXJuIG5ldyBMdChuLGkpO3I9TWF0aC5zcXJ0KGgvMil9ZWxzZXtsZXQgQT0hMTtvPk51bWJlci5FUFNJTE9OP2E+TnVtYmVyLkVQU0lMT04mJihBPSEwKTpvPC1OdW1iZXIuRVBTSUxPTj9hPC1OdW1iZXIuRVBTSUxPTiYmKEE9ITApOk1hdGguc2lnbihzKT09PU1hdGguc2lnbihCKSYmKEE9ITApLEE/KG49LXMsaT1vLHI9TWF0aC5zcXJ0KGMpKToobj1vLGk9cyxyPU1hdGguc3FydChjLzIpKX1yZXR1cm4gbmV3IEx0KG4vcixpL3IpfWNvbnN0IFQ9W107Zm9yKGxldCBBPTAsZT1ZLmxlbmd0aCx0PWUtMSxuPUErMTtBPGU7QSsrLHQrKyxuKyspdD09PWUmJih0PTApLG49PT1lJiYobj0wKSxUW0FdPXkoWVtBXSxZW3RdLFlbbl0pO2NvbnN0IHg9W107bGV0IFIsRz1ULmNvbmNhdCgpO2ZvcihsZXQgQT0wLGU9Ri5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1GW0FdO1I9W107Zm9yKGxldCBBPTAsdD1lLmxlbmd0aCxuPXQtMSxpPUErMTtBPHQ7QSsrLG4rKyxpKyspbj09PXQmJihuPTApLGk9PT10JiYoaT0wKSxSW0FdPXkoZVtBXSxlW25dLGVbaV0pO3gucHVzaChSKSxHPUcuY29uY2F0KFIpfWZvcihsZXQgQT0wO0E8UTtBKyspe2NvbnN0IGU9QS9RLHQ9YypNYXRoLmNvcyhlKk1hdGguUEkvMiksbj1nKk1hdGguc2luKGUqTWF0aC5QSS8yKStFO2ZvcihsZXQgQT0wLGU9WS5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1mKFlbQV0sVFtBXSxuKTtIKGUueCxlLnksLXQpfWZvcihsZXQgQT0wLGU9Ri5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1GW0FdO1I9eFtBXTtmb3IobGV0IEE9MCxpPWUubGVuZ3RoO0E8aTtBKyspe2NvbnN0IGk9ZihlW0FdLFJbQV0sbik7SChpLngsaS55LC10KX19fWNvbnN0IFM9ZytFO2ZvcihsZXQgQT0wO0E8TjtBKyspe2NvbnN0IGU9Qj9mKG1bQV0sR1tBXSxTKTptW0FdO2Q/KEkuY29weSh3Lm5vcm1hbHNbMF0pLm11bHRpcGx5U2NhbGFyKGUueCksQy5jb3B5KHcuYmlub3JtYWxzWzBdKS5tdWx0aXBseVNjYWxhcihlLnkpLE0uY29weShoWzBdKS5hZGQoSSkuYWRkKEMpLEgoTS54LE0ueSxNLnopKTpIKGUueCxlLnksMCl9Zm9yKGxldCBBPTE7QTw9cztBKyspZm9yKGxldCBlPTA7ZTxOO2UrKyl7Y29uc3QgdD1CP2YobVtlXSxHW2VdLFMpOm1bZV07ZD8oSS5jb3B5KHcubm9ybWFsc1tBXSkubXVsdGlwbHlTY2FsYXIodC54KSxDLmNvcHkody5iaW5vcm1hbHNbQV0pLm11bHRpcGx5U2NhbGFyKHQueSksTS5jb3B5KGhbQV0pLmFkZChJKS5hZGQoQyksSChNLngsTS55LE0ueikpOkgodC54LHQueSxhL3MqQSl9Zm9yKGxldCBBPVEtMTtBPj0wO0EtLSl7Y29uc3QgZT1BL1EsdD1jKk1hdGguY29zKGUqTWF0aC5QSS8yKSxuPWcqTWF0aC5zaW4oZSpNYXRoLlBJLzIpK0U7Zm9yKGxldCBBPTAsZT1ZLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPWYoWVtBXSxUW0FdLG4pO0goZS54LGUueSxhK3QpfWZvcihsZXQgQT0wLGU9Ri5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1GW0FdO1I9eFtBXTtmb3IobGV0IEE9MCxpPWUubGVuZ3RoO0E8aTtBKyspe2NvbnN0IGk9ZihlW0FdLFJbQV0sbik7ZD9IKGkueCxpLnkraFtzLTFdLnksaFtzLTFdLngrdCk6SChpLngsaS55LGErdCl9fX1mdW5jdGlvbiBiKEEsZSl7bGV0IHQ9QS5sZW5ndGg7Zm9yKDstLXQ+PTA7KXtjb25zdCBuPXQ7bGV0IGk9dC0xO2k8MCYmKGk9QS5sZW5ndGgtMSk7Zm9yKGxldCBBPTAsdD1zKzIqUTtBPHQ7QSsrKXtjb25zdCB0PU4qQSxyPU4qKEErMSk7ayhlK24rdCxlK2krdCxlK2krcixlK24rcil9fX1mdW5jdGlvbiBIKEEsZSx0KXtyLnB1c2goQSksci5wdXNoKGUpLHIucHVzaCh0KX1mdW5jdGlvbiB2KEEsZSxpKXtqKEEpLGooZSksaihpKTtjb25zdCByPW4ubGVuZ3RoLzMsbz1sLmdlbmVyYXRlVG9wVVYodCxuLHItMyxyLTIsci0xKTtKKG9bMF0pLEoob1sxXSksSihvWzJdKX1mdW5jdGlvbiBrKEEsZSxpLHIpe2ooQSksaihlKSxqKHIpLGooZSksaihpKSxqKHIpO2NvbnN0IG89bi5sZW5ndGgvMyxzPWwuZ2VuZXJhdGVTaWRlV2FsbFVWKHQsbixvLTYsby0zLG8tMixvLTEpO0ooc1swXSksSihzWzFdKSxKKHNbM10pLEooc1sxXSksSihzWzJdKSxKKHNbM10pfWZ1bmN0aW9uIGooQSl7bi5wdXNoKHJbMypBKzBdKSxuLnB1c2goclszKkErMV0pLG4ucHVzaChyWzMqQSsyXSl9ZnVuY3Rpb24gSihBKXtpLnB1c2goQS54KSxpLnB1c2goQS55KX0hZnVuY3Rpb24oKXtjb25zdCBBPW4ubGVuZ3RoLzM7aWYoQil7bGV0IEE9MCxlPU4qQTtmb3IobGV0IEE9MDtBPFU7QSsrKXtjb25zdCB0PURbQV07dih0WzJdK2UsdFsxXStlLHRbMF0rZSl9QT1zKzIqUSxlPU4qQTtmb3IobGV0IEE9MDtBPFU7QSsrKXtjb25zdCB0PURbQV07dih0WzBdK2UsdFsxXStlLHRbMl0rZSl9fWVsc2V7Zm9yKGxldCBBPTA7QTxVO0ErKyl7Y29uc3QgZT1EW0FdO3YoZVsyXSxlWzFdLGVbMF0pfWZvcihsZXQgQT0wO0E8VTtBKyspe2NvbnN0IGU9RFtBXTt2KGVbMF0rTipzLGVbMV0rTipzLGVbMl0rTipzKX19dC5hZGRHcm91cChBLG4ubGVuZ3RoLzMtQSwwKX0oKSxmdW5jdGlvbigpe2NvbnN0IEE9bi5sZW5ndGgvMztsZXQgZT0wO2IoWSxlKSxlKz1ZLmxlbmd0aDtmb3IobGV0IEE9MCx0PUYubGVuZ3RoO0E8dDtBKyspe2NvbnN0IHQ9RltBXTtiKHQsZSksZSs9dC5sZW5ndGh9dC5hZGRHcm91cChBLG4ubGVuZ3RoLzMtQSwxKX0oKX10aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihuLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgidXYiLG5ldyBvcihpLDIpKSx0aGlzLmNvbXB1dGVWZXJ0ZXhOb3JtYWxzKCl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9dG9KU09OKCl7Y29uc3QgQT1zdXBlci50b0pTT04oKTtyZXR1cm4gZnVuY3Rpb24oQSxlLHQpe2lmKHQuc2hhcGVzPVtdLEFycmF5LmlzQXJyYXkoQSkpZm9yKGxldCBlPTAsbj1BLmxlbmd0aDtlPG47ZSsrKXtjb25zdCBuPUFbZV07dC5zaGFwZXMucHVzaChuLnV1aWQpfWVsc2UgdC5zaGFwZXMucHVzaChBLnV1aWQpO3Qub3B0aW9ucz1PYmplY3QuYXNzaWduKHt9LGUpLHZvaWQgMCE9PWUuZXh0cnVkZVBhdGgmJih0Lm9wdGlvbnMuZXh0cnVkZVBhdGg9ZS5leHRydWRlUGF0aC50b0pTT04oKSk7cmV0dXJuIHR9KHRoaXMucGFyYW1ldGVycy5zaGFwZXMsdGhpcy5wYXJhbWV0ZXJzLm9wdGlvbnMsQSl9c3RhdGljIGZyb21KU09OKEEsZSl7Y29uc3QgdD1bXTtmb3IobGV0IG49MCxpPUEuc2hhcGVzLmxlbmd0aDtuPGk7bisrKXtjb25zdCBpPWVbQS5zaGFwZXNbbl1dO3QucHVzaChpKX1jb25zdCBuPUEub3B0aW9ucy5leHRydWRlUGF0aDtyZXR1cm4gdm9pZCAwIT09biYmKEEub3B0aW9ucy5leHRydWRlUGF0aD0obmV3IGhjW24udHlwZV0pLmZyb21KU09OKG4pKSxuZXcgc2codCxBLm9wdGlvbnMpfX1jb25zdCBhZz17Z2VuZXJhdGVUb3BVVjpmdW5jdGlvbihBLGUsdCxuLGkpe2NvbnN0IHI9ZVszKnRdLG89ZVszKnQrMV0scz1lWzMqbl0sYT1lWzMqbisxXSxCPWVbMyppXSxjPWVbMyppKzFdO3JldHVybltuZXcgTHQocixvKSxuZXcgTHQocyxhKSxuZXcgTHQoQixjKV19LGdlbmVyYXRlU2lkZVdhbGxVVjpmdW5jdGlvbihBLGUsdCxuLGkscil7Y29uc3Qgbz1lWzMqdF0scz1lWzMqdCsxXSxhPWVbMyp0KzJdLEI9ZVszKm5dLGM9ZVszKm4rMV0sZz1lWzMqbisyXSxFPWVbMyppXSxRPWVbMyppKzFdLHU9ZVszKmkrMl0sbD1lWzMqcl0saD1lWzMqcisxXSx3PWVbMypyKzJdO3JldHVybiBNYXRoLmFicyhzLWMpPE1hdGguYWJzKG8tQik/W25ldyBMdChvLDEtYSksbmV3IEx0KEIsMS1nKSxuZXcgTHQoRSwxLXUpLG5ldyBMdChsLDEtdyldOltuZXcgTHQocywxLWEpLG5ldyBMdChjLDEtZyksbmV3IEx0KFEsMS11KSxuZXcgTHQoaCwxLXcpXX19O2NsYXNzIEJnIGV4dGVuZHMgRmN7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO2NvbnN0IHQ9KDErTWF0aC5zcXJ0KDUpKS8yO3N1cGVyKFstMSx0LDAsMSx0LDAsLTEsLXQsMCwxLC10LDAsMCwtMSx0LDAsMSx0LDAsLTEsLXQsMCwxLC10LHQsMCwtMSx0LDAsMSwtdCwwLC0xLC10LDAsMV0sWzAsMTEsNSwwLDUsMSwwLDEsNywwLDcsMTAsMCwxMCwxMSwxLDUsOSw1LDExLDQsMTEsMTAsMiwxMCw3LDYsNywxLDgsMyw5LDQsMyw0LDIsMywyLDYsMyw2LDgsMyw4LDksNCw5LDUsMiw0LDExLDYsMiwxMCw4LDYsNyw5LDgsMV0sQSxlKSx0aGlzLnR5cGU9Ikljb3NhaGVkcm9uR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17cmFkaXVzOkEsZGV0YWlsOmV9fXN0YXRpYyBmcm9tSlNPTihBKXtyZXR1cm4gbmV3IEJnKEEucmFkaXVzLEEuZGV0YWlsKX19Y2xhc3MgY2cgZXh0ZW5kcyBGY3tjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7c3VwZXIoWzEsMCwwLC0xLDAsMCwwLDEsMCwwLC0xLDAsMCwwLDEsMCwwLC0xXSxbMCwyLDQsMCw0LDMsMCwzLDUsMCw1LDIsMSwyLDUsMSw1LDMsMSwzLDQsMSw0LDJdLEEsZSksdGhpcy50eXBlPSJPY3RhaGVkcm9uR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17cmFkaXVzOkEsZGV0YWlsOmV9fXN0YXRpYyBmcm9tSlNPTihBKXtyZXR1cm4gbmV3IGNnKEEucmFkaXVzLEEuZGV0YWlsKX19Y2xhc3MgZ2cgZXh0ZW5kcyBscntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTouNSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjMyLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjEsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06MCxyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XToyKk1hdGguUEk7c3VwZXIoKSx0aGlzLnR5cGU9IlJpbmdHZW9tZXRyeSIsdGhpcy5wYXJhbWV0ZXJzPXtpbm5lclJhZGl1czpBLG91dGVyUmFkaXVzOmUsdGhldGFTZWdtZW50czp0LHBoaVNlZ21lbnRzOm4sdGhldGFTdGFydDppLHRoZXRhTGVuZ3RoOnJ9LHQ9TWF0aC5tYXgoMyx0KSxuPU1hdGgubWF4KDEsbik7Y29uc3Qgbz1bXSxzPVtdLGE9W10sQj1bXTtsZXQgYz1BO2NvbnN0IGc9KGUtQSkvbixFPW5ldyBkbixRPW5ldyBMdDtmb3IobGV0IEE9MDtBPD1uO0ErKyl7Zm9yKGxldCBBPTA7QTw9dDtBKyspe2NvbnN0IG49aStBL3QqcjtFLng9YypNYXRoLmNvcyhuKSxFLnk9YypNYXRoLnNpbihuKSxzLnB1c2goRS54LEUueSxFLnopLGEucHVzaCgwLDAsMSksUS54PShFLngvZSsxKS8yLFEueT0oRS55L2UrMSkvMixCLnB1c2goUS54LFEueSl9Yys9Z31mb3IobGV0IEE9MDtBPG47QSsrKXtjb25zdCBlPUEqKHQrMSk7Zm9yKGxldCBBPTA7QTx0O0ErKyl7Y29uc3Qgbj1BK2UsaT1uLHI9bit0KzEscz1uK3QrMixhPW4rMTtvLnB1c2goaSxyLGEpLG8ucHVzaChyLHMsYSl9fXRoaXMuc2V0SW5kZXgobyksdGhpcy5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IocywzKSksdGhpcy5zZXRBdHRyaWJ1dGUoIm5vcm1hbCIsbmV3IG9yKGEsMykpLHRoaXMuc2V0QXR0cmlidXRlKCJ1diIsbmV3IG9yKEIsMikpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5wYXJhbWV0ZXJzPU9iamVjdC5hc3NpZ24oe30sQS5wYXJhbWV0ZXJzKSx0aGlzfXN0YXRpYyBmcm9tSlNPTihBKXtyZXR1cm4gbmV3IGdnKEEuaW5uZXJSYWRpdXMsQS5vdXRlclJhZGl1cyxBLnRoZXRhU2VnbWVudHMsQS5waGlTZWdtZW50cyxBLnRoZXRhU3RhcnQsQS50aGV0YUxlbmd0aCl9fWNsYXNzIEVnIGV4dGVuZHMgbHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IFRjKFtuZXcgTHQoMCwuNSksbmV3IEx0KC0uNSwtLjUpLG5ldyBMdCguNSwtLjUpXSksZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MTI7c3VwZXIoKSx0aGlzLnR5cGU9IlNoYXBlR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17c2hhcGVzOkEsY3VydmVTZWdtZW50czplfTtjb25zdCB0PVtdLG49W10saT1bXSxyPVtdO2xldCBvPTAscz0wO2lmKCExPT09QXJyYXkuaXNBcnJheShBKSlhKEEpO2Vsc2UgZm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKyspYShBW2VdKSx0aGlzLmFkZEdyb3VwKG8scyxlKSxvKz1zLHM9MDtmdW5jdGlvbiBhKEEpe2NvbnN0IG89bi5sZW5ndGgvMyxhPUEuZXh0cmFjdFBvaW50cyhlKTtsZXQgQj1hLnNoYXBlO2NvbnN0IGM9YS5ob2xlczshMT09PWlnLmlzQ2xvY2tXaXNlKEIpJiYoQj1CLnJldmVyc2UoKSk7Zm9yKGxldCBBPTAsZT1jLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPWNbQV07ITA9PT1pZy5pc0Nsb2NrV2lzZShlKSYmKGNbQV09ZS5yZXZlcnNlKCkpfWNvbnN0IGc9aWcudHJpYW5ndWxhdGVTaGFwZShCLGMpO2ZvcihsZXQgQT0wLGU9Yy5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1jW0FdO0I9Qi5jb25jYXQoZSl9Zm9yKGxldCBBPTAsZT1CLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPUJbQV07bi5wdXNoKGUueCxlLnksMCksaS5wdXNoKDAsMCwxKSxyLnB1c2goZS54LGUueSl9Zm9yKGxldCBBPTAsZT1nLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPWdbQV0sbj1lWzBdK28saT1lWzFdK28scj1lWzJdK287dC5wdXNoKG4saSxyKSxzKz0zfX10aGlzLnNldEluZGV4KHQpLHRoaXMuc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKG4sMykpLHRoaXMuc2V0QXR0cmlidXRlKCJub3JtYWwiLG5ldyBvcihpLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgidXYiLG5ldyBvcihyLDIpKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMucGFyYW1ldGVycz1PYmplY3QuYXNzaWduKHt9LEEucGFyYW1ldGVycyksdGhpc310b0pTT04oKXtjb25zdCBBPXN1cGVyLnRvSlNPTigpO3JldHVybiBmdW5jdGlvbihBLGUpe2lmKGUuc2hhcGVzPVtdLEFycmF5LmlzQXJyYXkoQSkpZm9yKGxldCB0PTAsbj1BLmxlbmd0aDt0PG47dCsrKXtjb25zdCBuPUFbdF07ZS5zaGFwZXMucHVzaChuLnV1aWQpfWVsc2UgZS5zaGFwZXMucHVzaChBLnV1aWQpO3JldHVybiBlfSh0aGlzLnBhcmFtZXRlcnMuc2hhcGVzLEEpfXN0YXRpYyBmcm9tSlNPTihBLGUpe2NvbnN0IHQ9W107Zm9yKGxldCBuPTAsaT1BLnNoYXBlcy5sZW5ndGg7bjxpO24rKyl7Y29uc3QgaT1lW0Euc2hhcGVzW25dXTt0LnB1c2goaSl9cmV0dXJuIG5ldyBFZyh0LEEuY3VydmVTZWdtZW50cyl9fWNsYXNzIFFnIGV4dGVuZHMgbHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTozMix0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxNixuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTowLGk9YXJndW1lbnRzLmxlbmd0aD40JiZ2b2lkIDAhPT1hcmd1bWVudHNbNF0/YXJndW1lbnRzWzRdOjIqTWF0aC5QSSxyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XTowLG89YXJndW1lbnRzLmxlbmd0aD42JiZ2b2lkIDAhPT1hcmd1bWVudHNbNl0/YXJndW1lbnRzWzZdOk1hdGguUEk7c3VwZXIoKSx0aGlzLnR5cGU9IlNwaGVyZUdlb21ldHJ5Iix0aGlzLnBhcmFtZXRlcnM9e3JhZGl1czpBLHdpZHRoU2VnbWVudHM6ZSxoZWlnaHRTZWdtZW50czp0LHBoaVN0YXJ0Om4scGhpTGVuZ3RoOmksdGhldGFTdGFydDpyLHRoZXRhTGVuZ3RoOm99LGU9TWF0aC5tYXgoMyxNYXRoLmZsb29yKGUpKSx0PU1hdGgubWF4KDIsTWF0aC5mbG9vcih0KSk7Y29uc3Qgcz1NYXRoLm1pbihyK28sTWF0aC5QSSk7bGV0IGE9MDtjb25zdCBCPVtdLGM9bmV3IGRuLGc9bmV3IGRuLEU9W10sUT1bXSx1PVtdLGw9W107Zm9yKGxldCBFPTA7RTw9dDtFKyspe2NvbnN0IGg9W10sdz1FL3Q7bGV0IEM9MDswPT09RSYmMD09PXI/Qz0uNS9lOkU9PT10JiZzPT09TWF0aC5QSSYmKEM9LS41L2UpO2ZvcihsZXQgdD0wO3Q8PWU7dCsrKXtjb25zdCBzPXQvZTtjLng9LUEqTWF0aC5jb3MobitzKmkpKk1hdGguc2luKHIrdypvKSxjLnk9QSpNYXRoLmNvcyhyK3cqbyksYy56PUEqTWF0aC5zaW4obitzKmkpKk1hdGguc2luKHIrdypvKSxRLnB1c2goYy54LGMueSxjLnopLGcuY29weShjKS5ub3JtYWxpemUoKSx1LnB1c2goZy54LGcueSxnLnopLGwucHVzaChzK0MsMS13KSxoLnB1c2goYSsrKX1CLnB1c2goaCl9Zm9yKGxldCBBPTA7QTx0O0ErKylmb3IobGV0IG49MDtuPGU7bisrKXtjb25zdCBlPUJbQV1bbisxXSxpPUJbQV1bbl0sbz1CW0ErMV1bbl0sYT1CW0ErMV1bbisxXTsoMCE9PUF8fHI+MCkmJkUucHVzaChlLGksYSksKEEhPT10LTF8fHM8TWF0aC5QSSkmJkUucHVzaChpLG8sYSl9dGhpcy5zZXRJbmRleChFKSx0aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihRLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgb3IodSwzKSksdGhpcy5zZXRBdHRyaWJ1dGUoInV2IixuZXcgb3IobCwyKSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgUWcoQS5yYWRpdXMsQS53aWR0aFNlZ21lbnRzLEEuaGVpZ2h0U2VnbWVudHMsQS5waGlTdGFydCxBLnBoaUxlbmd0aCxBLnRoZXRhU3RhcnQsQS50aGV0YUxlbmd0aCl9fWNsYXNzIHVnIGV4dGVuZHMgRmN7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3N1cGVyKFsxLDEsMSwtMSwtMSwxLC0xLDEsLTEsMSwtMSwtMV0sWzIsMSwwLDAsMywyLDEsMywwLDIsMywxXSxBLGUpLHRoaXMudHlwZT0iVGV0cmFoZWRyb25HZW9tZXRyeSIsdGhpcy5wYXJhbWV0ZXJzPXtyYWRpdXM6QSxkZXRhaWw6ZX19c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgdWcoQS5yYWRpdXMsQS5kZXRhaWwpfX1jbGFzcyBsZyBleHRlbmRzIGxye2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06LjQsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MTIsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106NDgsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06MipNYXRoLlBJO3N1cGVyKCksdGhpcy50eXBlPSJUb3J1c0dlb21ldHJ5Iix0aGlzLnBhcmFtZXRlcnM9e3JhZGl1czpBLHR1YmU6ZSxyYWRpYWxTZWdtZW50czp0LHR1YnVsYXJTZWdtZW50czpuLGFyYzppfSx0PU1hdGguZmxvb3IodCksbj1NYXRoLmZsb29yKG4pO2NvbnN0IHI9W10sbz1bXSxzPVtdLGE9W10sQj1uZXcgZG4sYz1uZXcgZG4sZz1uZXcgZG47Zm9yKGxldCByPTA7cjw9dDtyKyspZm9yKGxldCBFPTA7RTw9bjtFKyspe2NvbnN0IFE9RS9uKmksdT1yL3QqTWF0aC5QSSoyO2MueD0oQStlKk1hdGguY29zKHUpKSpNYXRoLmNvcyhRKSxjLnk9KEErZSpNYXRoLmNvcyh1KSkqTWF0aC5zaW4oUSksYy56PWUqTWF0aC5zaW4odSksby5wdXNoKGMueCxjLnksYy56KSxCLng9QSpNYXRoLmNvcyhRKSxCLnk9QSpNYXRoLnNpbihRKSxnLnN1YlZlY3RvcnMoYyxCKS5ub3JtYWxpemUoKSxzLnB1c2goZy54LGcueSxnLnopLGEucHVzaChFL24pLGEucHVzaChyL3QpfWZvcihsZXQgQT0xO0E8PXQ7QSsrKWZvcihsZXQgZT0xO2U8PW47ZSsrKXtjb25zdCB0PShuKzEpKkErZS0xLGk9KG4rMSkqKEEtMSkrZS0xLG89KG4rMSkqKEEtMSkrZSxzPShuKzEpKkErZTtyLnB1c2godCxpLHMpLHIucHVzaChpLG8scyl9dGhpcy5zZXRJbmRleChyKSx0aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihvLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgb3IocywzKSksdGhpcy5zZXRBdHRyaWJ1dGUoInV2IixuZXcgb3IoYSwyKSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgbGcoQS5yYWRpdXMsQS50dWJlLEEucmFkaWFsU2VnbWVudHMsQS50dWJ1bGFyU2VnbWVudHMsQS5hcmMpfX1jbGFzcyBoZyBleHRlbmRzIGxye2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06LjQsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06NjQsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106OCxpPWFyZ3VtZW50cy5sZW5ndGg+NCYmdm9pZCAwIT09YXJndW1lbnRzWzRdP2FyZ3VtZW50c1s0XToyLHI9YXJndW1lbnRzLmxlbmd0aD41JiZ2b2lkIDAhPT1hcmd1bWVudHNbNV0/YXJndW1lbnRzWzVdOjM7c3VwZXIoKSx0aGlzLnR5cGU9IlRvcnVzS25vdEdlb21ldHJ5Iix0aGlzLnBhcmFtZXRlcnM9e3JhZGl1czpBLHR1YmU6ZSx0dWJ1bGFyU2VnbWVudHM6dCxyYWRpYWxTZWdtZW50czpuLHA6aSxxOnJ9LHQ9TWF0aC5mbG9vcih0KSxuPU1hdGguZmxvb3Iobik7Y29uc3Qgbz1bXSxzPVtdLGE9W10sQj1bXSxjPW5ldyBkbixnPW5ldyBkbixFPW5ldyBkbixRPW5ldyBkbix1PW5ldyBkbixsPW5ldyBkbixoPW5ldyBkbjtmb3IobGV0IG89MDtvPD10Oysrbyl7Y29uc3QgQz1vL3QqaSpNYXRoLlBJKjI7dyhDLGkscixBLEUpLHcoQysuMDEsaSxyLEEsUSksbC5zdWJWZWN0b3JzKFEsRSksaC5hZGRWZWN0b3JzKFEsRSksdS5jcm9zc1ZlY3RvcnMobCxoKSxoLmNyb3NzVmVjdG9ycyh1LGwpLHUubm9ybWFsaXplKCksaC5ub3JtYWxpemUoKTtmb3IobGV0IEE9MDtBPD1uOysrQSl7Y29uc3QgaT1BL24qTWF0aC5QSSoyLHI9LWUqTWF0aC5jb3MoaSksUT1lKk1hdGguc2luKGkpO2MueD1FLngrKHIqaC54K1EqdS54KSxjLnk9RS55KyhyKmgueStRKnUueSksYy56PUUueisocipoLnorUSp1LnopLHMucHVzaChjLngsYy55LGMueiksZy5zdWJWZWN0b3JzKGMsRSkubm9ybWFsaXplKCksYS5wdXNoKGcueCxnLnksZy56KSxCLnB1c2goby90KSxCLnB1c2goQS9uKX19Zm9yKGxldCBBPTE7QTw9dDtBKyspZm9yKGxldCBlPTE7ZTw9bjtlKyspe2NvbnN0IHQ9KG4rMSkqKEEtMSkrKGUtMSksaT0obisxKSpBKyhlLTEpLHI9KG4rMSkqQStlLHM9KG4rMSkqKEEtMSkrZTtvLnB1c2godCxpLHMpLG8ucHVzaChpLHIscyl9ZnVuY3Rpb24gdyhBLGUsdCxuLGkpe2NvbnN0IHI9TWF0aC5jb3MoQSksbz1NYXRoLnNpbihBKSxzPXQvZSpBLGE9TWF0aC5jb3Mocyk7aS54PW4qKDIrYSkqLjUqcixpLnk9biooMithKSpvKi41LGkuej1uKk1hdGguc2luKHMpKi41fXRoaXMuc2V0SW5kZXgobyksdGhpcy5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IocywzKSksdGhpcy5zZXRBdHRyaWJ1dGUoIm5vcm1hbCIsbmV3IG9yKGEsMykpLHRoaXMuc2V0QXR0cmlidXRlKCJ1diIsbmV3IG9yKEIsMikpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5wYXJhbWV0ZXJzPU9iamVjdC5hc3NpZ24oe30sQS5wYXJhbWV0ZXJzKSx0aGlzfXN0YXRpYyBmcm9tSlNPTihBKXtyZXR1cm4gbmV3IGhnKEEucmFkaXVzLEEudHViZSxBLnR1YnVsYXJTZWdtZW50cyxBLnJhZGlhbFNlZ21lbnRzLEEucCxBLnEpfX1jbGFzcyB3ZyBleHRlbmRzIGxye2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyB1YyhuZXcgZG4oLTEsLTEsMCksbmV3IGRuKC0xLDEsMCksbmV3IGRuKDEsMSwwKSksZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06NjQsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MSxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTo4LGk9YXJndW1lbnRzLmxlbmd0aD40JiZ2b2lkIDAhPT1hcmd1bWVudHNbNF0mJmFyZ3VtZW50c1s0XTtzdXBlcigpLHRoaXMudHlwZT0iVHViZUdlb21ldHJ5Iix0aGlzLnBhcmFtZXRlcnM9e3BhdGg6QSx0dWJ1bGFyU2VnbWVudHM6ZSxyYWRpdXM6dCxyYWRpYWxTZWdtZW50czpuLGNsb3NlZDppfTtjb25zdCByPUEuY29tcHV0ZUZyZW5ldEZyYW1lcyhlLGkpO3RoaXMudGFuZ2VudHM9ci50YW5nZW50cyx0aGlzLm5vcm1hbHM9ci5ub3JtYWxzLHRoaXMuYmlub3JtYWxzPXIuYmlub3JtYWxzO2NvbnN0IG89bmV3IGRuLHM9bmV3IGRuLGE9bmV3IEx0O2xldCBCPW5ldyBkbjtjb25zdCBjPVtdLGc9W10sRT1bXSxRPVtdO2Z1bmN0aW9uIHUoaSl7Qj1BLmdldFBvaW50QXQoaS9lLEIpO2NvbnN0IGE9ci5ub3JtYWxzW2ldLEU9ci5iaW5vcm1hbHNbaV07Zm9yKGxldCBBPTA7QTw9bjtBKyspe2NvbnN0IGU9QS9uKk1hdGguUEkqMixpPU1hdGguc2luKGUpLHI9LU1hdGguY29zKGUpO3MueD1yKmEueCtpKkUueCxzLnk9ciphLnkraSpFLnkscy56PXIqYS56K2kqRS56LHMubm9ybWFsaXplKCksZy5wdXNoKHMueCxzLnkscy56KSxvLng9Qi54K3Qqcy54LG8ueT1CLnkrdCpzLnksby56PUIueit0KnMueixjLnB1c2goby54LG8ueSxvLnopfX0hZnVuY3Rpb24oKXtmb3IobGV0IEE9MDtBPGU7QSsrKXUoQSk7dSghMT09PWk/ZTowKSxmdW5jdGlvbigpe2ZvcihsZXQgQT0wO0E8PWU7QSsrKWZvcihsZXQgdD0wO3Q8PW47dCsrKWEueD1BL2UsYS55PXQvbixFLnB1c2goYS54LGEueSl9KCksZnVuY3Rpb24oKXtmb3IobGV0IEE9MTtBPD1lO0ErKylmb3IobGV0IGU9MTtlPD1uO2UrKyl7Y29uc3QgdD0obisxKSooQS0xKSsoZS0xKSxpPShuKzEpKkErKGUtMSkscj0obisxKSpBK2Usbz0obisxKSooQS0xKStlO1EucHVzaCh0LGksbyksUS5wdXNoKGkscixvKX19KCl9KCksdGhpcy5zZXRJbmRleChRKSx0aGlzLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihjLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgb3IoZywzKSksdGhpcy5zZXRBdHRyaWJ1dGUoInV2IixuZXcgb3IoRSwyKSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLnBhcmFtZXRlcnM9T2JqZWN0LmFzc2lnbih7fSxBLnBhcmFtZXRlcnMpLHRoaXN9dG9KU09OKCl7Y29uc3QgQT1zdXBlci50b0pTT04oKTtyZXR1cm4gQS5wYXRoPXRoaXMucGFyYW1ldGVycy5wYXRoLnRvSlNPTigpLEF9c3RhdGljIGZyb21KU09OKEEpe3JldHVybiBuZXcgd2coKG5ldyBoY1tBLnBhdGgudHlwZV0pLmZyb21KU09OKEEucGF0aCksQS50dWJ1bGFyU2VnbWVudHMsQS5yYWRpdXMsQS5yYWRpYWxTZWdtZW50cyxBLmNsb3NlZCl9fWNsYXNzIENnIGV4dGVuZHMgbHJ7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bnVsbDtpZihzdXBlcigpLHRoaXMudHlwZT0iV2lyZWZyYW1lR2VvbWV0cnkiLHRoaXMucGFyYW1ldGVycz17Z2VvbWV0cnk6QX0sbnVsbCE9PUEpe2NvbnN0IGU9W10sdD1uZXcgU2V0LG49bmV3IGRuLGk9bmV3IGRuO2lmKG51bGwhPT1BLmluZGV4KXtjb25zdCByPUEuYXR0cmlidXRlcy5wb3NpdGlvbixvPUEuaW5kZXg7bGV0IHM9QS5ncm91cHM7MD09PXMubGVuZ3RoJiYocz1be3N0YXJ0OjAsY291bnQ6by5jb3VudCxtYXRlcmlhbEluZGV4OjB9XSk7Zm9yKGxldCBBPTAsYT1zLmxlbmd0aDtBPGE7KytBKXtjb25zdCBhPXNbQV0sQj1hLnN0YXJ0O2ZvcihsZXQgQT1CLHM9QithLmNvdW50O0E8cztBKz0zKWZvcihsZXQgcz0wO3M8MztzKyspe2NvbnN0IGE9by5nZXRYKEErcyksQj1vLmdldFgoQSsocysxKSUzKTtuLmZyb21CdWZmZXJBdHRyaWJ1dGUocixhKSxpLmZyb21CdWZmZXJBdHRyaWJ1dGUocixCKSwhMD09PUlnKG4saSx0KSYmKGUucHVzaChuLngsbi55LG4ueiksZS5wdXNoKGkueCxpLnksaS56KSl9fX1lbHNle2NvbnN0IHI9QS5hdHRyaWJ1dGVzLnBvc2l0aW9uO2ZvcihsZXQgQT0wLG89ci5jb3VudC8zO0E8bztBKyspZm9yKGxldCBvPTA7bzwzO28rKyl7Y29uc3Qgcz0zKkErbyxhPTMqQSsobysxKSUzO24uZnJvbUJ1ZmZlckF0dHJpYnV0ZShyLHMpLGkuZnJvbUJ1ZmZlckF0dHJpYnV0ZShyLGEpLCEwPT09SWcobixpLHQpJiYoZS5wdXNoKG4ueCxuLnksbi56KSxlLnB1c2goaS54LGkueSxpLnopKX19dGhpcy5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IoZSwzKSl9fWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5wYXJhbWV0ZXJzPU9iamVjdC5hc3NpZ24oe30sQS5wYXJhbWV0ZXJzKSx0aGlzfX1mdW5jdGlvbiBJZyhBLGUsdCl7Y29uc3Qgbj0iIi5jb25jYXQoQS54LCIsIikuY29uY2F0KEEueSwiLCIpLmNvbmNhdChBLnosIi0iKS5jb25jYXQoZS54LCIsIikuY29uY2F0KGUueSwiLCIpLmNvbmNhdChlLnopLGk9IiIuY29uY2F0KGUueCwiLCIpLmNvbmNhdChlLnksIiwiKS5jb25jYXQoZS56LCItIikuY29uY2F0KEEueCwiLCIpLmNvbmNhdChBLnksIiwiKS5jb25jYXQoQS56KTtyZXR1cm4hMCE9PXQuaGFzKG4pJiYhMCE9PXQuaGFzKGkpJiYodC5hZGQobiksdC5hZGQoaSksITApfXZhciBNZz1PYmplY3QuZnJlZXplKHtfX3Byb3RvX186bnVsbCxCb3hHZW9tZXRyeTpTcixDYXBzdWxlR2VvbWV0cnk6TWMsQ2lyY2xlR2VvbWV0cnk6ZGMsQ29uZUdlb21ldHJ5Om1jLEN5bGluZGVyR2VvbWV0cnk6cGMsRG9kZWNhaGVkcm9uR2VvbWV0cnk6RGMsRWRnZXNHZW9tZXRyeTp5YyxFeHRydWRlR2VvbWV0cnk6c2csSWNvc2FoZWRyb25HZW9tZXRyeTpCZyxMYXRoZUdlb21ldHJ5OkljLE9jdGFoZWRyb25HZW9tZXRyeTpjZyxQbGFuZUdlb21ldHJ5OmVvLFBvbHloZWRyb25HZW9tZXRyeTpGYyxSaW5nR2VvbWV0cnk6Z2csU2hhcGVHZW9tZXRyeTpFZyxTcGhlcmVHZW9tZXRyeTpRZyxUZXRyYWhlZHJvbkdlb21ldHJ5OnVnLFRvcnVzR2VvbWV0cnk6bGcsVG9ydXNLbm90R2VvbWV0cnk6aGcsVHViZUdlb21ldHJ5OndnLFdpcmVmcmFtZUdlb21ldHJ5OkNnfSk7Y2xhc3MgZGcgZXh0ZW5kcyBiaXtjb25zdHJ1Y3RvcihBKXtzdXBlcigpLHRoaXMuaXNTaGFkb3dNYXRlcmlhbD0hMCx0aGlzLnR5cGU9IlNoYWRvd01hdGVyaWFsIix0aGlzLmNvbG9yPW5ldyBKaSgwKSx0aGlzLnRyYW5zcGFyZW50PSEwLHRoaXMuZm9nPSEwLHRoaXMuc2V0VmFsdWVzKEEpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5jb2xvci5jb3B5KEEuY29sb3IpLHRoaXMuZm9nPUEuZm9nLHRoaXN9fWNsYXNzIHBnIGV4dGVuZHMganJ7Y29uc3RydWN0b3IoQSl7c3VwZXIoQSksdGhpcy5pc1Jhd1NoYWRlck1hdGVyaWFsPSEwLHRoaXMudHlwZT0iUmF3U2hhZGVyTWF0ZXJpYWwifX1jbGFzcyBtZyBleHRlbmRzIGJpe2NvbnN0cnVjdG9yKEEpe3N1cGVyKCksdGhpcy5pc01lc2hTdGFuZGFyZE1hdGVyaWFsPSEwLHRoaXMuZGVmaW5lcz17U1RBTkRBUkQ6IiJ9LHRoaXMudHlwZT0iTWVzaFN0YW5kYXJkTWF0ZXJpYWwiLHRoaXMuY29sb3I9bmV3IEppKDE2Nzc3MjE1KSx0aGlzLnJvdWdobmVzcz0xLHRoaXMubWV0YWxuZXNzPTAsdGhpcy5tYXA9bnVsbCx0aGlzLmxpZ2h0TWFwPW51bGwsdGhpcy5saWdodE1hcEludGVuc2l0eT0xLHRoaXMuYW9NYXA9bnVsbCx0aGlzLmFvTWFwSW50ZW5zaXR5PTEsdGhpcy5lbWlzc2l2ZT1uZXcgSmkoMCksdGhpcy5lbWlzc2l2ZUludGVuc2l0eT0xLHRoaXMuZW1pc3NpdmVNYXA9bnVsbCx0aGlzLmJ1bXBNYXA9bnVsbCx0aGlzLmJ1bXBTY2FsZT0xLHRoaXMubm9ybWFsTWFwPW51bGwsdGhpcy5ub3JtYWxNYXBUeXBlPXZlLHRoaXMubm9ybWFsU2NhbGU9bmV3IEx0KDEsMSksdGhpcy5kaXNwbGFjZW1lbnRNYXA9bnVsbCx0aGlzLmRpc3BsYWNlbWVudFNjYWxlPTEsdGhpcy5kaXNwbGFjZW1lbnRCaWFzPTAsdGhpcy5yb3VnaG5lc3NNYXA9bnVsbCx0aGlzLm1ldGFsbmVzc01hcD1udWxsLHRoaXMuYWxwaGFNYXA9bnVsbCx0aGlzLmVudk1hcD1udWxsLHRoaXMuZW52TWFwSW50ZW5zaXR5PTEsdGhpcy53aXJlZnJhbWU9ITEsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9MSx0aGlzLndpcmVmcmFtZUxpbmVjYXA9InJvdW5kIix0aGlzLndpcmVmcmFtZUxpbmVqb2luPSJyb3VuZCIsdGhpcy5mbGF0U2hhZGluZz0hMSx0aGlzLmZvZz0hMCx0aGlzLnNldFZhbHVlcyhBKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuZGVmaW5lcz17U1RBTkRBUkQ6IiJ9LHRoaXMuY29sb3IuY29weShBLmNvbG9yKSx0aGlzLnJvdWdobmVzcz1BLnJvdWdobmVzcyx0aGlzLm1ldGFsbmVzcz1BLm1ldGFsbmVzcyx0aGlzLm1hcD1BLm1hcCx0aGlzLmxpZ2h0TWFwPUEubGlnaHRNYXAsdGhpcy5saWdodE1hcEludGVuc2l0eT1BLmxpZ2h0TWFwSW50ZW5zaXR5LHRoaXMuYW9NYXA9QS5hb01hcCx0aGlzLmFvTWFwSW50ZW5zaXR5PUEuYW9NYXBJbnRlbnNpdHksdGhpcy5lbWlzc2l2ZS5jb3B5KEEuZW1pc3NpdmUpLHRoaXMuZW1pc3NpdmVNYXA9QS5lbWlzc2l2ZU1hcCx0aGlzLmVtaXNzaXZlSW50ZW5zaXR5PUEuZW1pc3NpdmVJbnRlbnNpdHksdGhpcy5idW1wTWFwPUEuYnVtcE1hcCx0aGlzLmJ1bXBTY2FsZT1BLmJ1bXBTY2FsZSx0aGlzLm5vcm1hbE1hcD1BLm5vcm1hbE1hcCx0aGlzLm5vcm1hbE1hcFR5cGU9QS5ub3JtYWxNYXBUeXBlLHRoaXMubm9ybWFsU2NhbGUuY29weShBLm5vcm1hbFNjYWxlKSx0aGlzLmRpc3BsYWNlbWVudE1hcD1BLmRpc3BsYWNlbWVudE1hcCx0aGlzLmRpc3BsYWNlbWVudFNjYWxlPUEuZGlzcGxhY2VtZW50U2NhbGUsdGhpcy5kaXNwbGFjZW1lbnRCaWFzPUEuZGlzcGxhY2VtZW50Qmlhcyx0aGlzLnJvdWdobmVzc01hcD1BLnJvdWdobmVzc01hcCx0aGlzLm1ldGFsbmVzc01hcD1BLm1ldGFsbmVzc01hcCx0aGlzLmFscGhhTWFwPUEuYWxwaGFNYXAsdGhpcy5lbnZNYXA9QS5lbnZNYXAsdGhpcy5lbnZNYXBJbnRlbnNpdHk9QS5lbnZNYXBJbnRlbnNpdHksdGhpcy53aXJlZnJhbWU9QS53aXJlZnJhbWUsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9QS53aXJlZnJhbWVMaW5ld2lkdGgsdGhpcy53aXJlZnJhbWVMaW5lY2FwPUEud2lyZWZyYW1lTGluZWNhcCx0aGlzLndpcmVmcmFtZUxpbmVqb2luPUEud2lyZWZyYW1lTGluZWpvaW4sdGhpcy5mbGF0U2hhZGluZz1BLmZsYXRTaGFkaW5nLHRoaXMuZm9nPUEuZm9nLHRoaXN9fWNsYXNzIEZnIGV4dGVuZHMgbWd7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLmlzTWVzaFBoeXNpY2FsTWF0ZXJpYWw9ITAsdGhpcy5kZWZpbmVzPXtTVEFOREFSRDoiIixQSFlTSUNBTDoiIn0sdGhpcy50eXBlPSJNZXNoUGh5c2ljYWxNYXRlcmlhbCIsdGhpcy5hbmlzb3Ryb3B5Um90YXRpb249MCx0aGlzLmFuaXNvdHJvcHlNYXA9bnVsbCx0aGlzLmNsZWFyY29hdE1hcD1udWxsLHRoaXMuY2xlYXJjb2F0Um91Z2huZXNzPTAsdGhpcy5jbGVhcmNvYXRSb3VnaG5lc3NNYXA9bnVsbCx0aGlzLmNsZWFyY29hdE5vcm1hbFNjYWxlPW5ldyBMdCgxLDEpLHRoaXMuY2xlYXJjb2F0Tm9ybWFsTWFwPW51bGwsdGhpcy5pb3I9MS41LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCJyZWZsZWN0aXZpdHkiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gR3QoMi41Kih0aGlzLmlvci0xKS8odGhpcy5pb3IrMSksMCwxKX0sc2V0OmZ1bmN0aW9uKEEpe3RoaXMuaW9yPSgxKy40KkEpLygxLS40KkEpfX0pLHRoaXMuaXJpZGVzY2VuY2VNYXA9bnVsbCx0aGlzLmlyaWRlc2NlbmNlSU9SPTEuMyx0aGlzLmlyaWRlc2NlbmNlVGhpY2tuZXNzUmFuZ2U9WzEwMCw0MDBdLHRoaXMuaXJpZGVzY2VuY2VUaGlja25lc3NNYXA9bnVsbCx0aGlzLnNoZWVuQ29sb3I9bmV3IEppKDApLHRoaXMuc2hlZW5Db2xvck1hcD1udWxsLHRoaXMuc2hlZW5Sb3VnaG5lc3M9MSx0aGlzLnNoZWVuUm91Z2huZXNzTWFwPW51bGwsdGhpcy50cmFuc21pc3Npb25NYXA9bnVsbCx0aGlzLnRoaWNrbmVzcz0wLHRoaXMudGhpY2tuZXNzTWFwPW51bGwsdGhpcy5hdHRlbnVhdGlvbkRpc3RhbmNlPTEvMCx0aGlzLmF0dGVudWF0aW9uQ29sb3I9bmV3IEppKDEsMSwxKSx0aGlzLnNwZWN1bGFySW50ZW5zaXR5PTEsdGhpcy5zcGVjdWxhckludGVuc2l0eU1hcD1udWxsLHRoaXMuc3BlY3VsYXJDb2xvcj1uZXcgSmkoMSwxLDEpLHRoaXMuc3BlY3VsYXJDb2xvck1hcD1udWxsLHRoaXMuX2FuaXNvdHJvcHk9MCx0aGlzLl9jbGVhcmNvYXQ9MCx0aGlzLl9pcmlkZXNjZW5jZT0wLHRoaXMuX3NoZWVuPTAsdGhpcy5fdHJhbnNtaXNzaW9uPTAsdGhpcy5zZXRWYWx1ZXMoQSl9Z2V0IGFuaXNvdHJvcHkoKXtyZXR1cm4gdGhpcy5fYW5pc290cm9weX1zZXQgYW5pc290cm9weShBKXt0aGlzLl9hbmlzb3Ryb3B5PjAhPUE+MCYmdGhpcy52ZXJzaW9uKyssdGhpcy5fYW5pc290cm9weT1BfWdldCBjbGVhcmNvYXQoKXtyZXR1cm4gdGhpcy5fY2xlYXJjb2F0fXNldCBjbGVhcmNvYXQoQSl7dGhpcy5fY2xlYXJjb2F0PjAhPUE+MCYmdGhpcy52ZXJzaW9uKyssdGhpcy5fY2xlYXJjb2F0PUF9Z2V0IGlyaWRlc2NlbmNlKCl7cmV0dXJuIHRoaXMuX2lyaWRlc2NlbmNlfXNldCBpcmlkZXNjZW5jZShBKXt0aGlzLl9pcmlkZXNjZW5jZT4wIT1BPjAmJnRoaXMudmVyc2lvbisrLHRoaXMuX2lyaWRlc2NlbmNlPUF9Z2V0IHNoZWVuKCl7cmV0dXJuIHRoaXMuX3NoZWVufXNldCBzaGVlbihBKXt0aGlzLl9zaGVlbj4wIT1BPjAmJnRoaXMudmVyc2lvbisrLHRoaXMuX3NoZWVuPUF9Z2V0IHRyYW5zbWlzc2lvbigpe3JldHVybiB0aGlzLl90cmFuc21pc3Npb259c2V0IHRyYW5zbWlzc2lvbihBKXt0aGlzLl90cmFuc21pc3Npb24+MCE9QT4wJiZ0aGlzLnZlcnNpb24rKyx0aGlzLl90cmFuc21pc3Npb249QX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuZGVmaW5lcz17U1RBTkRBUkQ6IiIsUEhZU0lDQUw6IiJ9LHRoaXMuYW5pc290cm9weT1BLmFuaXNvdHJvcHksdGhpcy5hbmlzb3Ryb3B5Um90YXRpb249QS5hbmlzb3Ryb3B5Um90YXRpb24sdGhpcy5hbmlzb3Ryb3B5TWFwPUEuYW5pc290cm9weU1hcCx0aGlzLmNsZWFyY29hdD1BLmNsZWFyY29hdCx0aGlzLmNsZWFyY29hdE1hcD1BLmNsZWFyY29hdE1hcCx0aGlzLmNsZWFyY29hdFJvdWdobmVzcz1BLmNsZWFyY29hdFJvdWdobmVzcyx0aGlzLmNsZWFyY29hdFJvdWdobmVzc01hcD1BLmNsZWFyY29hdFJvdWdobmVzc01hcCx0aGlzLmNsZWFyY29hdE5vcm1hbE1hcD1BLmNsZWFyY29hdE5vcm1hbE1hcCx0aGlzLmNsZWFyY29hdE5vcm1hbFNjYWxlLmNvcHkoQS5jbGVhcmNvYXROb3JtYWxTY2FsZSksdGhpcy5pb3I9QS5pb3IsdGhpcy5pcmlkZXNjZW5jZT1BLmlyaWRlc2NlbmNlLHRoaXMuaXJpZGVzY2VuY2VNYXA9QS5pcmlkZXNjZW5jZU1hcCx0aGlzLmlyaWRlc2NlbmNlSU9SPUEuaXJpZGVzY2VuY2VJT1IsdGhpcy5pcmlkZXNjZW5jZVRoaWNrbmVzc1JhbmdlPVsuLi5BLmlyaWRlc2NlbmNlVGhpY2tuZXNzUmFuZ2VdLHRoaXMuaXJpZGVzY2VuY2VUaGlja25lc3NNYXA9QS5pcmlkZXNjZW5jZVRoaWNrbmVzc01hcCx0aGlzLnNoZWVuPUEuc2hlZW4sdGhpcy5zaGVlbkNvbG9yLmNvcHkoQS5zaGVlbkNvbG9yKSx0aGlzLnNoZWVuQ29sb3JNYXA9QS5zaGVlbkNvbG9yTWFwLHRoaXMuc2hlZW5Sb3VnaG5lc3M9QS5zaGVlblJvdWdobmVzcyx0aGlzLnNoZWVuUm91Z2huZXNzTWFwPUEuc2hlZW5Sb3VnaG5lc3NNYXAsdGhpcy50cmFuc21pc3Npb249QS50cmFuc21pc3Npb24sdGhpcy50cmFuc21pc3Npb25NYXA9QS50cmFuc21pc3Npb25NYXAsdGhpcy50aGlja25lc3M9QS50aGlja25lc3MsdGhpcy50aGlja25lc3NNYXA9QS50aGlja25lc3NNYXAsdGhpcy5hdHRlbnVhdGlvbkRpc3RhbmNlPUEuYXR0ZW51YXRpb25EaXN0YW5jZSx0aGlzLmF0dGVudWF0aW9uQ29sb3IuY29weShBLmF0dGVudWF0aW9uQ29sb3IpLHRoaXMuc3BlY3VsYXJJbnRlbnNpdHk9QS5zcGVjdWxhckludGVuc2l0eSx0aGlzLnNwZWN1bGFySW50ZW5zaXR5TWFwPUEuc3BlY3VsYXJJbnRlbnNpdHlNYXAsdGhpcy5zcGVjdWxhckNvbG9yLmNvcHkoQS5zcGVjdWxhckNvbG9yKSx0aGlzLnNwZWN1bGFyQ29sb3JNYXA9QS5zcGVjdWxhckNvbG9yTWFwLHRoaXN9fWNsYXNzIERnIGV4dGVuZHMgYml7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLmlzTWVzaFBob25nTWF0ZXJpYWw9ITAsdGhpcy50eXBlPSJNZXNoUGhvbmdNYXRlcmlhbCIsdGhpcy5jb2xvcj1uZXcgSmkoMTY3NzcyMTUpLHRoaXMuc3BlY3VsYXI9bmV3IEppKDExMTg0ODEpLHRoaXMuc2hpbmluZXNzPTMwLHRoaXMubWFwPW51bGwsdGhpcy5saWdodE1hcD1udWxsLHRoaXMubGlnaHRNYXBJbnRlbnNpdHk9MSx0aGlzLmFvTWFwPW51bGwsdGhpcy5hb01hcEludGVuc2l0eT0xLHRoaXMuZW1pc3NpdmU9bmV3IEppKDApLHRoaXMuZW1pc3NpdmVJbnRlbnNpdHk9MSx0aGlzLmVtaXNzaXZlTWFwPW51bGwsdGhpcy5idW1wTWFwPW51bGwsdGhpcy5idW1wU2NhbGU9MSx0aGlzLm5vcm1hbE1hcD1udWxsLHRoaXMubm9ybWFsTWFwVHlwZT12ZSx0aGlzLm5vcm1hbFNjYWxlPW5ldyBMdCgxLDEpLHRoaXMuZGlzcGxhY2VtZW50TWFwPW51bGwsdGhpcy5kaXNwbGFjZW1lbnRTY2FsZT0xLHRoaXMuZGlzcGxhY2VtZW50Qmlhcz0wLHRoaXMuc3BlY3VsYXJNYXA9bnVsbCx0aGlzLmFscGhhTWFwPW51bGwsdGhpcy5lbnZNYXA9bnVsbCx0aGlzLmNvbWJpbmU9Syx0aGlzLnJlZmxlY3Rpdml0eT0xLHRoaXMucmVmcmFjdGlvblJhdGlvPS45OCx0aGlzLndpcmVmcmFtZT0hMSx0aGlzLndpcmVmcmFtZUxpbmV3aWR0aD0xLHRoaXMud2lyZWZyYW1lTGluZWNhcD0icm91bmQiLHRoaXMud2lyZWZyYW1lTGluZWpvaW49InJvdW5kIix0aGlzLmZsYXRTaGFkaW5nPSExLHRoaXMuZm9nPSEwLHRoaXMuc2V0VmFsdWVzKEEpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5jb2xvci5jb3B5KEEuY29sb3IpLHRoaXMuc3BlY3VsYXIuY29weShBLnNwZWN1bGFyKSx0aGlzLnNoaW5pbmVzcz1BLnNoaW5pbmVzcyx0aGlzLm1hcD1BLm1hcCx0aGlzLmxpZ2h0TWFwPUEubGlnaHRNYXAsdGhpcy5saWdodE1hcEludGVuc2l0eT1BLmxpZ2h0TWFwSW50ZW5zaXR5LHRoaXMuYW9NYXA9QS5hb01hcCx0aGlzLmFvTWFwSW50ZW5zaXR5PUEuYW9NYXBJbnRlbnNpdHksdGhpcy5lbWlzc2l2ZS5jb3B5KEEuZW1pc3NpdmUpLHRoaXMuZW1pc3NpdmVNYXA9QS5lbWlzc2l2ZU1hcCx0aGlzLmVtaXNzaXZlSW50ZW5zaXR5PUEuZW1pc3NpdmVJbnRlbnNpdHksdGhpcy5idW1wTWFwPUEuYnVtcE1hcCx0aGlzLmJ1bXBTY2FsZT1BLmJ1bXBTY2FsZSx0aGlzLm5vcm1hbE1hcD1BLm5vcm1hbE1hcCx0aGlzLm5vcm1hbE1hcFR5cGU9QS5ub3JtYWxNYXBUeXBlLHRoaXMubm9ybWFsU2NhbGUuY29weShBLm5vcm1hbFNjYWxlKSx0aGlzLmRpc3BsYWNlbWVudE1hcD1BLmRpc3BsYWNlbWVudE1hcCx0aGlzLmRpc3BsYWNlbWVudFNjYWxlPUEuZGlzcGxhY2VtZW50U2NhbGUsdGhpcy5kaXNwbGFjZW1lbnRCaWFzPUEuZGlzcGxhY2VtZW50Qmlhcyx0aGlzLnNwZWN1bGFyTWFwPUEuc3BlY3VsYXJNYXAsdGhpcy5hbHBoYU1hcD1BLmFscGhhTWFwLHRoaXMuZW52TWFwPUEuZW52TWFwLHRoaXMuY29tYmluZT1BLmNvbWJpbmUsdGhpcy5yZWZsZWN0aXZpdHk9QS5yZWZsZWN0aXZpdHksdGhpcy5yZWZyYWN0aW9uUmF0aW89QS5yZWZyYWN0aW9uUmF0aW8sdGhpcy53aXJlZnJhbWU9QS53aXJlZnJhbWUsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9QS53aXJlZnJhbWVMaW5ld2lkdGgsdGhpcy53aXJlZnJhbWVMaW5lY2FwPUEud2lyZWZyYW1lTGluZWNhcCx0aGlzLndpcmVmcmFtZUxpbmVqb2luPUEud2lyZWZyYW1lTGluZWpvaW4sdGhpcy5mbGF0U2hhZGluZz1BLmZsYXRTaGFkaW5nLHRoaXMuZm9nPUEuZm9nLHRoaXN9fWNsYXNzIFlnIGV4dGVuZHMgYml7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLmlzTWVzaFRvb25NYXRlcmlhbD0hMCx0aGlzLmRlZmluZXM9e1RPT046IiJ9LHRoaXMudHlwZT0iTWVzaFRvb25NYXRlcmlhbCIsdGhpcy5jb2xvcj1uZXcgSmkoMTY3NzcyMTUpLHRoaXMubWFwPW51bGwsdGhpcy5ncmFkaWVudE1hcD1udWxsLHRoaXMubGlnaHRNYXA9bnVsbCx0aGlzLmxpZ2h0TWFwSW50ZW5zaXR5PTEsdGhpcy5hb01hcD1udWxsLHRoaXMuYW9NYXBJbnRlbnNpdHk9MSx0aGlzLmVtaXNzaXZlPW5ldyBKaSgwKSx0aGlzLmVtaXNzaXZlSW50ZW5zaXR5PTEsdGhpcy5lbWlzc2l2ZU1hcD1udWxsLHRoaXMuYnVtcE1hcD1udWxsLHRoaXMuYnVtcFNjYWxlPTEsdGhpcy5ub3JtYWxNYXA9bnVsbCx0aGlzLm5vcm1hbE1hcFR5cGU9dmUsdGhpcy5ub3JtYWxTY2FsZT1uZXcgTHQoMSwxKSx0aGlzLmRpc3BsYWNlbWVudE1hcD1udWxsLHRoaXMuZGlzcGxhY2VtZW50U2NhbGU9MSx0aGlzLmRpc3BsYWNlbWVudEJpYXM9MCx0aGlzLmFscGhhTWFwPW51bGwsdGhpcy53aXJlZnJhbWU9ITEsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9MSx0aGlzLndpcmVmcmFtZUxpbmVjYXA9InJvdW5kIix0aGlzLndpcmVmcmFtZUxpbmVqb2luPSJyb3VuZCIsdGhpcy5mb2c9ITAsdGhpcy5zZXRWYWx1ZXMoQSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLmNvbG9yLmNvcHkoQS5jb2xvciksdGhpcy5tYXA9QS5tYXAsdGhpcy5ncmFkaWVudE1hcD1BLmdyYWRpZW50TWFwLHRoaXMubGlnaHRNYXA9QS5saWdodE1hcCx0aGlzLmxpZ2h0TWFwSW50ZW5zaXR5PUEubGlnaHRNYXBJbnRlbnNpdHksdGhpcy5hb01hcD1BLmFvTWFwLHRoaXMuYW9NYXBJbnRlbnNpdHk9QS5hb01hcEludGVuc2l0eSx0aGlzLmVtaXNzaXZlLmNvcHkoQS5lbWlzc2l2ZSksdGhpcy5lbWlzc2l2ZU1hcD1BLmVtaXNzaXZlTWFwLHRoaXMuZW1pc3NpdmVJbnRlbnNpdHk9QS5lbWlzc2l2ZUludGVuc2l0eSx0aGlzLmJ1bXBNYXA9QS5idW1wTWFwLHRoaXMuYnVtcFNjYWxlPUEuYnVtcFNjYWxlLHRoaXMubm9ybWFsTWFwPUEubm9ybWFsTWFwLHRoaXMubm9ybWFsTWFwVHlwZT1BLm5vcm1hbE1hcFR5cGUsdGhpcy5ub3JtYWxTY2FsZS5jb3B5KEEubm9ybWFsU2NhbGUpLHRoaXMuZGlzcGxhY2VtZW50TWFwPUEuZGlzcGxhY2VtZW50TWFwLHRoaXMuZGlzcGxhY2VtZW50U2NhbGU9QS5kaXNwbGFjZW1lbnRTY2FsZSx0aGlzLmRpc3BsYWNlbWVudEJpYXM9QS5kaXNwbGFjZW1lbnRCaWFzLHRoaXMuYWxwaGFNYXA9QS5hbHBoYU1hcCx0aGlzLndpcmVmcmFtZT1BLndpcmVmcmFtZSx0aGlzLndpcmVmcmFtZUxpbmV3aWR0aD1BLndpcmVmcmFtZUxpbmV3aWR0aCx0aGlzLndpcmVmcmFtZUxpbmVjYXA9QS53aXJlZnJhbWVMaW5lY2FwLHRoaXMud2lyZWZyYW1lTGluZWpvaW49QS53aXJlZnJhbWVMaW5lam9pbix0aGlzLmZvZz1BLmZvZyx0aGlzfX1jbGFzcyBmZyBleHRlbmRzIGJpe2NvbnN0cnVjdG9yKEEpe3N1cGVyKCksdGhpcy5pc01lc2hOb3JtYWxNYXRlcmlhbD0hMCx0aGlzLnR5cGU9Ik1lc2hOb3JtYWxNYXRlcmlhbCIsdGhpcy5idW1wTWFwPW51bGwsdGhpcy5idW1wU2NhbGU9MSx0aGlzLm5vcm1hbE1hcD1udWxsLHRoaXMubm9ybWFsTWFwVHlwZT12ZSx0aGlzLm5vcm1hbFNjYWxlPW5ldyBMdCgxLDEpLHRoaXMuZGlzcGxhY2VtZW50TWFwPW51bGwsdGhpcy5kaXNwbGFjZW1lbnRTY2FsZT0xLHRoaXMuZGlzcGxhY2VtZW50Qmlhcz0wLHRoaXMud2lyZWZyYW1lPSExLHRoaXMud2lyZWZyYW1lTGluZXdpZHRoPTEsdGhpcy5mbGF0U2hhZGluZz0hMSx0aGlzLnNldFZhbHVlcyhBKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuYnVtcE1hcD1BLmJ1bXBNYXAsdGhpcy5idW1wU2NhbGU9QS5idW1wU2NhbGUsdGhpcy5ub3JtYWxNYXA9QS5ub3JtYWxNYXAsdGhpcy5ub3JtYWxNYXBUeXBlPUEubm9ybWFsTWFwVHlwZSx0aGlzLm5vcm1hbFNjYWxlLmNvcHkoQS5ub3JtYWxTY2FsZSksdGhpcy5kaXNwbGFjZW1lbnRNYXA9QS5kaXNwbGFjZW1lbnRNYXAsdGhpcy5kaXNwbGFjZW1lbnRTY2FsZT1BLmRpc3BsYWNlbWVudFNjYWxlLHRoaXMuZGlzcGxhY2VtZW50Qmlhcz1BLmRpc3BsYWNlbWVudEJpYXMsdGhpcy53aXJlZnJhbWU9QS53aXJlZnJhbWUsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9QS53aXJlZnJhbWVMaW5ld2lkdGgsdGhpcy5mbGF0U2hhZGluZz1BLmZsYXRTaGFkaW5nLHRoaXN9fWNsYXNzIE5nIGV4dGVuZHMgYml7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLmlzTWVzaExhbWJlcnRNYXRlcmlhbD0hMCx0aGlzLnR5cGU9Ik1lc2hMYW1iZXJ0TWF0ZXJpYWwiLHRoaXMuY29sb3I9bmV3IEppKDE2Nzc3MjE1KSx0aGlzLm1hcD1udWxsLHRoaXMubGlnaHRNYXA9bnVsbCx0aGlzLmxpZ2h0TWFwSW50ZW5zaXR5PTEsdGhpcy5hb01hcD1udWxsLHRoaXMuYW9NYXBJbnRlbnNpdHk9MSx0aGlzLmVtaXNzaXZlPW5ldyBKaSgwKSx0aGlzLmVtaXNzaXZlSW50ZW5zaXR5PTEsdGhpcy5lbWlzc2l2ZU1hcD1udWxsLHRoaXMuYnVtcE1hcD1udWxsLHRoaXMuYnVtcFNjYWxlPTEsdGhpcy5ub3JtYWxNYXA9bnVsbCx0aGlzLm5vcm1hbE1hcFR5cGU9dmUsdGhpcy5ub3JtYWxTY2FsZT1uZXcgTHQoMSwxKSx0aGlzLmRpc3BsYWNlbWVudE1hcD1udWxsLHRoaXMuZGlzcGxhY2VtZW50U2NhbGU9MSx0aGlzLmRpc3BsYWNlbWVudEJpYXM9MCx0aGlzLnNwZWN1bGFyTWFwPW51bGwsdGhpcy5hbHBoYU1hcD1udWxsLHRoaXMuZW52TWFwPW51bGwsdGhpcy5jb21iaW5lPUssdGhpcy5yZWZsZWN0aXZpdHk9MSx0aGlzLnJlZnJhY3Rpb25SYXRpbz0uOTgsdGhpcy53aXJlZnJhbWU9ITEsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9MSx0aGlzLndpcmVmcmFtZUxpbmVjYXA9InJvdW5kIix0aGlzLndpcmVmcmFtZUxpbmVqb2luPSJyb3VuZCIsdGhpcy5mbGF0U2hhZGluZz0hMSx0aGlzLmZvZz0hMCx0aGlzLnNldFZhbHVlcyhBKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuY29sb3IuY29weShBLmNvbG9yKSx0aGlzLm1hcD1BLm1hcCx0aGlzLmxpZ2h0TWFwPUEubGlnaHRNYXAsdGhpcy5saWdodE1hcEludGVuc2l0eT1BLmxpZ2h0TWFwSW50ZW5zaXR5LHRoaXMuYW9NYXA9QS5hb01hcCx0aGlzLmFvTWFwSW50ZW5zaXR5PUEuYW9NYXBJbnRlbnNpdHksdGhpcy5lbWlzc2l2ZS5jb3B5KEEuZW1pc3NpdmUpLHRoaXMuZW1pc3NpdmVNYXA9QS5lbWlzc2l2ZU1hcCx0aGlzLmVtaXNzaXZlSW50ZW5zaXR5PUEuZW1pc3NpdmVJbnRlbnNpdHksdGhpcy5idW1wTWFwPUEuYnVtcE1hcCx0aGlzLmJ1bXBTY2FsZT1BLmJ1bXBTY2FsZSx0aGlzLm5vcm1hbE1hcD1BLm5vcm1hbE1hcCx0aGlzLm5vcm1hbE1hcFR5cGU9QS5ub3JtYWxNYXBUeXBlLHRoaXMubm9ybWFsU2NhbGUuY29weShBLm5vcm1hbFNjYWxlKSx0aGlzLmRpc3BsYWNlbWVudE1hcD1BLmRpc3BsYWNlbWVudE1hcCx0aGlzLmRpc3BsYWNlbWVudFNjYWxlPUEuZGlzcGxhY2VtZW50U2NhbGUsdGhpcy5kaXNwbGFjZW1lbnRCaWFzPUEuZGlzcGxhY2VtZW50Qmlhcyx0aGlzLnNwZWN1bGFyTWFwPUEuc3BlY3VsYXJNYXAsdGhpcy5hbHBoYU1hcD1BLmFscGhhTWFwLHRoaXMuZW52TWFwPUEuZW52TWFwLHRoaXMuY29tYmluZT1BLmNvbWJpbmUsdGhpcy5yZWZsZWN0aXZpdHk9QS5yZWZsZWN0aXZpdHksdGhpcy5yZWZyYWN0aW9uUmF0aW89QS5yZWZyYWN0aW9uUmF0aW8sdGhpcy53aXJlZnJhbWU9QS53aXJlZnJhbWUsdGhpcy53aXJlZnJhbWVMaW5ld2lkdGg9QS53aXJlZnJhbWVMaW5ld2lkdGgsdGhpcy53aXJlZnJhbWVMaW5lY2FwPUEud2lyZWZyYW1lTGluZWNhcCx0aGlzLndpcmVmcmFtZUxpbmVqb2luPUEud2lyZWZyYW1lTGluZWpvaW4sdGhpcy5mbGF0U2hhZGluZz1BLmZsYXRTaGFkaW5nLHRoaXMuZm9nPUEuZm9nLHRoaXN9fWNsYXNzIFVnIGV4dGVuZHMgYml7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLmlzTWVzaE1hdGNhcE1hdGVyaWFsPSEwLHRoaXMuZGVmaW5lcz17TUFUQ0FQOiIifSx0aGlzLnR5cGU9Ik1lc2hNYXRjYXBNYXRlcmlhbCIsdGhpcy5jb2xvcj1uZXcgSmkoMTY3NzcyMTUpLHRoaXMubWF0Y2FwPW51bGwsdGhpcy5tYXA9bnVsbCx0aGlzLmJ1bXBNYXA9bnVsbCx0aGlzLmJ1bXBTY2FsZT0xLHRoaXMubm9ybWFsTWFwPW51bGwsdGhpcy5ub3JtYWxNYXBUeXBlPXZlLHRoaXMubm9ybWFsU2NhbGU9bmV3IEx0KDEsMSksdGhpcy5kaXNwbGFjZW1lbnRNYXA9bnVsbCx0aGlzLmRpc3BsYWNlbWVudFNjYWxlPTEsdGhpcy5kaXNwbGFjZW1lbnRCaWFzPTAsdGhpcy5hbHBoYU1hcD1udWxsLHRoaXMuZmxhdFNoYWRpbmc9ITEsdGhpcy5mb2c9ITAsdGhpcy5zZXRWYWx1ZXMoQSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBKSx0aGlzLmRlZmluZXM9e01BVENBUDoiIn0sdGhpcy5jb2xvci5jb3B5KEEuY29sb3IpLHRoaXMubWF0Y2FwPUEubWF0Y2FwLHRoaXMubWFwPUEubWFwLHRoaXMuYnVtcE1hcD1BLmJ1bXBNYXAsdGhpcy5idW1wU2NhbGU9QS5idW1wU2NhbGUsdGhpcy5ub3JtYWxNYXA9QS5ub3JtYWxNYXAsdGhpcy5ub3JtYWxNYXBUeXBlPUEubm9ybWFsTWFwVHlwZSx0aGlzLm5vcm1hbFNjYWxlLmNvcHkoQS5ub3JtYWxTY2FsZSksdGhpcy5kaXNwbGFjZW1lbnRNYXA9QS5kaXNwbGFjZW1lbnRNYXAsdGhpcy5kaXNwbGFjZW1lbnRTY2FsZT1BLmRpc3BsYWNlbWVudFNjYWxlLHRoaXMuZGlzcGxhY2VtZW50Qmlhcz1BLmRpc3BsYWNlbWVudEJpYXMsdGhpcy5hbHBoYU1hcD1BLmFscGhhTWFwLHRoaXMuZmxhdFNoYWRpbmc9QS5mbGF0U2hhZGluZyx0aGlzLmZvZz1BLmZvZyx0aGlzfX1jbGFzcyB5ZyBleHRlbmRzIE5Ce2NvbnN0cnVjdG9yKEEpe3N1cGVyKCksdGhpcy5pc0xpbmVEYXNoZWRNYXRlcmlhbD0hMCx0aGlzLnR5cGU9IkxpbmVEYXNoZWRNYXRlcmlhbCIsdGhpcy5zY2FsZT0xLHRoaXMuZGFzaFNpemU9Myx0aGlzLmdhcFNpemU9MSx0aGlzLnNldFZhbHVlcyhBKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuc2NhbGU9QS5zY2FsZSx0aGlzLmRhc2hTaXplPUEuZGFzaFNpemUsdGhpcy5nYXBTaXplPUEuZ2FwU2l6ZSx0aGlzfX1mdW5jdGlvbiBUZyhBLGUsdCl7cmV0dXJuIFJnKEEpP25ldyBBLmNvbnN0cnVjdG9yKEEuc3ViYXJyYXkoZSx2b2lkIDAhPT10P3Q6QS5sZW5ndGgpKTpBLnNsaWNlKGUsdCl9ZnVuY3Rpb24geGcoQSxlLHQpe3JldHVybiFBfHwhdCYmQS5jb25zdHJ1Y3Rvcj09PWU/QToibnVtYmVyIj09dHlwZW9mIGUuQllURVNfUEVSX0VMRU1FTlQ/bmV3IGUoQSk6QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoQSl9ZnVuY3Rpb24gUmcoQSl7cmV0dXJuIEFycmF5QnVmZmVyLmlzVmlldyhBKSYmIShBIGluc3RhbmNlb2YgRGF0YVZpZXcpfWZ1bmN0aW9uIEdnKEEpe2NvbnN0IGU9QS5sZW5ndGgsdD1uZXcgQXJyYXkoZSk7Zm9yKGxldCBBPTA7QSE9PWU7KytBKXRbQV09QTtyZXR1cm4gdC5zb3J0KChmdW5jdGlvbihlLHQpe3JldHVybiBBW2VdLUFbdF19KSksdH1mdW5jdGlvbiBTZyhBLGUsdCl7Y29uc3Qgbj1BLmxlbmd0aCxpPW5ldyBBLmNvbnN0cnVjdG9yKG4pO2ZvcihsZXQgcj0wLG89MDtvIT09bjsrK3Ipe2NvbnN0IG49dFtyXSplO2ZvcihsZXQgdD0wO3QhPT1lOysrdClpW28rK109QVtuK3RdfXJldHVybiBpfWZ1bmN0aW9uIGJnKEEsZSx0LG4pe2xldCBpPTEscj1BWzBdO2Zvcig7dm9pZCAwIT09ciYmdm9pZCAwPT09cltuXTspcj1BW2krK107aWYodm9pZCAwPT09cilyZXR1cm47bGV0IG89cltuXTtpZih2b2lkIDAhPT1vKWlmKEFycmF5LmlzQXJyYXkobykpZG97bz1yW25dLHZvaWQgMCE9PW8mJihlLnB1c2goci50aW1lKSx0LnB1c2guYXBwbHkodCxvKSkscj1BW2krK119d2hpbGUodm9pZCAwIT09cik7ZWxzZSBpZih2b2lkIDAhPT1vLnRvQXJyYXkpZG97bz1yW25dLHZvaWQgMCE9PW8mJihlLnB1c2goci50aW1lKSxvLnRvQXJyYXkodCx0Lmxlbmd0aCkpLHI9QVtpKytdfXdoaWxlKHZvaWQgMCE9PXIpO2Vsc2UgZG97bz1yW25dLHZvaWQgMCE9PW8mJihlLnB1c2goci50aW1lKSx0LnB1c2gobykpLHI9QVtpKytdfXdoaWxlKHZvaWQgMCE9PXIpfWNvbnN0IEhnPXthcnJheVNsaWNlOlRnLGNvbnZlcnRBcnJheTp4Zyxpc1R5cGVkQXJyYXk6UmcsZ2V0S2V5ZnJhbWVPcmRlcjpHZyxzb3J0ZWRBcnJheTpTZyxmbGF0dGVuSlNPTjpiZyxzdWJjbGlwOmZ1bmN0aW9uKEEsZSx0LG4pe2xldCBpPWFyZ3VtZW50cy5sZW5ndGg+NCYmdm9pZCAwIT09YXJndW1lbnRzWzRdP2FyZ3VtZW50c1s0XTozMDtjb25zdCByPUEuY2xvbmUoKTtyLm5hbWU9ZTtjb25zdCBvPVtdO2ZvcihsZXQgQT0wO0E8ci50cmFja3MubGVuZ3RoOysrQSl7Y29uc3QgZT1yLnRyYWNrc1tBXSxzPWUuZ2V0VmFsdWVTaXplKCksYT1bXSxCPVtdO2ZvcihsZXQgQT0wO0E8ZS50aW1lcy5sZW5ndGg7KytBKXtjb25zdCByPWUudGltZXNbQV0qaTtpZighKHI8dHx8cj49bikpe2EucHVzaChlLnRpbWVzW0FdKTtmb3IobGV0IHQ9MDt0PHM7Kyt0KUIucHVzaChlLnZhbHVlc1tBKnMrdF0pfX0wIT09YS5sZW5ndGgmJihlLnRpbWVzPXhnKGEsZS50aW1lcy5jb25zdHJ1Y3RvciksZS52YWx1ZXM9eGcoQixlLnZhbHVlcy5jb25zdHJ1Y3Rvciksby5wdXNoKGUpKX1yLnRyYWNrcz1vO2xldCBzPTEvMDtmb3IobGV0IEE9MDtBPHIudHJhY2tzLmxlbmd0aDsrK0Epcz5yLnRyYWNrc1tBXS50aW1lc1swXSYmKHM9ci50cmFja3NbQV0udGltZXNbMF0pO2ZvcihsZXQgQT0wO0E8ci50cmFja3MubGVuZ3RoOysrQSlyLnRyYWNrc1tBXS5zaGlmdCgtMSpzKTtyZXR1cm4gci5yZXNldER1cmF0aW9uKCkscn0sbWFrZUNsaXBBZGRpdGl2ZTpmdW5jdGlvbihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpBLG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjMwO248PTAmJihuPTMwKTtjb25zdCBpPXQudHJhY2tzLmxlbmd0aCxyPWUvbjtmb3IobGV0IGU9MDtlPGk7KytlKXtjb25zdCBuPXQudHJhY2tzW2VdLGk9bi5WYWx1ZVR5cGVOYW1lO2lmKCJib29sIj09PWl8fCJzdHJpbmciPT09aSljb250aW51ZTtjb25zdCBvPUEudHJhY2tzLmZpbmQoKGZ1bmN0aW9uKEEpe3JldHVybiBBLm5hbWU9PT1uLm5hbWUmJkEuVmFsdWVUeXBlTmFtZT09PWl9KSk7aWYodm9pZCAwPT09byljb250aW51ZTtsZXQgcz0wO2NvbnN0IGE9bi5nZXRWYWx1ZVNpemUoKTtuLmNyZWF0ZUludGVycG9sYW50LmlzSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kR0xURkN1YmljU3BsaW5lJiYocz1hLzMpO2xldCBCPTA7Y29uc3QgYz1vLmdldFZhbHVlU2l6ZSgpO28uY3JlYXRlSW50ZXJwb2xhbnQuaXNJbnRlcnBvbGFudEZhY3RvcnlNZXRob2RHTFRGQ3ViaWNTcGxpbmUmJihCPWMvMyk7Y29uc3QgZz1uLnRpbWVzLmxlbmd0aC0xO2xldCBFO2lmKHI8PW4udGltZXNbMF0pe2NvbnN0IEE9cyxlPWEtcztFPVRnKG4udmFsdWVzLEEsZSl9ZWxzZSBpZihyPj1uLnRpbWVzW2ddKXtjb25zdCBBPWcqYStzLGU9QSthLXM7RT1UZyhuLnZhbHVlcyxBLGUpfWVsc2V7Y29uc3QgQT1uLmNyZWF0ZUludGVycG9sYW50KCksZT1zLHQ9YS1zO0EuZXZhbHVhdGUociksRT1UZyhBLnJlc3VsdEJ1ZmZlcixlLHQpfWlmKCJxdWF0ZXJuaW9uIj09PWkpeyhuZXcgTW4pLmZyb21BcnJheShFKS5ub3JtYWxpemUoKS5jb25qdWdhdGUoKS50b0FycmF5KEUpfWNvbnN0IFE9by50aW1lcy5sZW5ndGg7Zm9yKGxldCBBPTA7QTxROysrQSl7Y29uc3QgZT1BKmMrQjtpZigicXVhdGVybmlvbiI9PT1pKU1uLm11bHRpcGx5UXVhdGVybmlvbnNGbGF0KG8udmFsdWVzLGUsRSwwLG8udmFsdWVzLGUpO2Vsc2V7Y29uc3QgQT1jLTIqQjtmb3IobGV0IHQ9MDt0PEE7Kyt0KW8udmFsdWVzW2UrdF0tPUVbdF19fX1yZXR1cm4gQS5ibGVuZE1vZGU9eWUsQX19O2NsYXNzIHZne2NvbnN0cnVjdG9yKEEsZSx0LG4pe3RoaXMucGFyYW1ldGVyUG9zaXRpb25zPUEsdGhpcy5fY2FjaGVkSW5kZXg9MCx0aGlzLnJlc3VsdEJ1ZmZlcj12b2lkIDAhPT1uP246bmV3IGUuY29uc3RydWN0b3IodCksdGhpcy5zYW1wbGVWYWx1ZXM9ZSx0aGlzLnZhbHVlU2l6ZT10LHRoaXMuc2V0dGluZ3M9bnVsbCx0aGlzLkRlZmF1bHRTZXR0aW5nc189e319ZXZhbHVhdGUoQSl7Y29uc3QgZT10aGlzLnBhcmFtZXRlclBvc2l0aW9ucztsZXQgdD10aGlzLl9jYWNoZWRJbmRleCxuPWVbdF0saT1lW3QtMV07QTp7ZTp7bGV0IHI7dDp7bjppZighKEE8bikpe2ZvcihsZXQgcj10KzI7Oyl7aWYodm9pZCAwPT09bil7aWYoQTxpKWJyZWFrIG47cmV0dXJuIHQ9ZS5sZW5ndGgsdGhpcy5fY2FjaGVkSW5kZXg9dCx0aGlzLmNvcHlTYW1wbGVWYWx1ZV8odC0xKX1pZih0PT09cilicmVhaztpZihpPW4sbj1lWysrdF0sQTxuKWJyZWFrIGV9cj1lLmxlbmd0aDticmVhayB0fWlmKEE+PWkpYnJlYWsgQTt7Y29uc3Qgbz1lWzFdO0E8byYmKHQ9MixpPW8pO2ZvcihsZXQgcj10LTI7Oyl7aWYodm9pZCAwPT09aSlyZXR1cm4gdGhpcy5fY2FjaGVkSW5kZXg9MCx0aGlzLmNvcHlTYW1wbGVWYWx1ZV8oMCk7aWYodD09PXIpYnJlYWs7aWYobj1pLGk9ZVstLXQtMV0sQT49aSlicmVhayBlfXI9dCx0PTB9fWZvcig7dDxyOyl7Y29uc3Qgbj10K3I+Pj4xO0E8ZVtuXT9yPW46dD1uKzF9aWYobj1lW3RdLGk9ZVt0LTFdLHZvaWQgMD09PWkpcmV0dXJuIHRoaXMuX2NhY2hlZEluZGV4PTAsdGhpcy5jb3B5U2FtcGxlVmFsdWVfKDApO2lmKHZvaWQgMD09PW4pcmV0dXJuIHQ9ZS5sZW5ndGgsdGhpcy5fY2FjaGVkSW5kZXg9dCx0aGlzLmNvcHlTYW1wbGVWYWx1ZV8odC0xKX10aGlzLl9jYWNoZWRJbmRleD10LHRoaXMuaW50ZXJ2YWxDaGFuZ2VkXyh0LGksbil9cmV0dXJuIHRoaXMuaW50ZXJwb2xhdGVfKHQsaSxBLG4pfWdldFNldHRpbmdzXygpe3JldHVybiB0aGlzLnNldHRpbmdzfHx0aGlzLkRlZmF1bHRTZXR0aW5nc199Y29weVNhbXBsZVZhbHVlXyhBKXtjb25zdCBlPXRoaXMucmVzdWx0QnVmZmVyLHQ9dGhpcy5zYW1wbGVWYWx1ZXMsbj10aGlzLnZhbHVlU2l6ZSxpPUEqbjtmb3IobGV0IEE9MDtBIT09bjsrK0EpZVtBXT10W2krQV07cmV0dXJuIGV9aW50ZXJwb2xhdGVfKCl7dGhyb3cgbmV3IEVycm9yKCJjYWxsIHRvIGFic3RyYWN0IG1ldGhvZCIpfWludGVydmFsQ2hhbmdlZF8oKXt9fWNsYXNzIGtnIGV4dGVuZHMgdmd7Y29uc3RydWN0b3IoQSxlLHQsbil7c3VwZXIoQSxlLHQsbiksdGhpcy5fd2VpZ2h0UHJldj0tMCx0aGlzLl9vZmZzZXRQcmV2PS0wLHRoaXMuX3dlaWdodE5leHQ9LTAsdGhpcy5fb2Zmc2V0TmV4dD0tMCx0aGlzLkRlZmF1bHRTZXR0aW5nc189e2VuZGluZ1N0YXJ0OlllLGVuZGluZ0VuZDpZZX19aW50ZXJ2YWxDaGFuZ2VkXyhBLGUsdCl7Y29uc3Qgbj10aGlzLnBhcmFtZXRlclBvc2l0aW9ucztsZXQgaT1BLTIscj1BKzEsbz1uW2ldLHM9bltyXTtpZih2b2lkIDA9PT1vKXN3aXRjaCh0aGlzLmdldFNldHRpbmdzXygpLmVuZGluZ1N0YXJ0KXtjYXNlIGZlOmk9QSxvPTIqZS10O2JyZWFrO2Nhc2UgTmU6aT1uLmxlbmd0aC0yLG89ZStuW2ldLW5baSsxXTticmVhaztkZWZhdWx0Omk9QSxvPXR9aWYodm9pZCAwPT09cylzd2l0Y2godGhpcy5nZXRTZXR0aW5nc18oKS5lbmRpbmdFbmQpe2Nhc2UgZmU6cj1BLHM9Mip0LWU7YnJlYWs7Y2FzZSBOZTpyPTEscz10K25bMV0tblswXTticmVhaztkZWZhdWx0OnI9QS0xLHM9ZX1jb25zdCBhPS41Kih0LWUpLEI9dGhpcy52YWx1ZVNpemU7dGhpcy5fd2VpZ2h0UHJldj1hLyhlLW8pLHRoaXMuX3dlaWdodE5leHQ9YS8ocy10KSx0aGlzLl9vZmZzZXRQcmV2PWkqQix0aGlzLl9vZmZzZXROZXh0PXIqQn1pbnRlcnBvbGF0ZV8oQSxlLHQsbil7Y29uc3QgaT10aGlzLnJlc3VsdEJ1ZmZlcixyPXRoaXMuc2FtcGxlVmFsdWVzLG89dGhpcy52YWx1ZVNpemUscz1BKm8sYT1zLW8sQj10aGlzLl9vZmZzZXRQcmV2LGM9dGhpcy5fb2Zmc2V0TmV4dCxnPXRoaXMuX3dlaWdodFByZXYsRT10aGlzLl93ZWlnaHROZXh0LFE9KHQtZSkvKG4tZSksdT1RKlEsbD11KlEsaD0tZypsKzIqZyp1LWcqUSx3PSgxK2cpKmwrKC0xLjUtMipnKSp1KygtLjUrZykqUSsxLEM9KC0xLUUpKmwrKDEuNStFKSp1Ky41KlEsST1FKmwtRSp1O2ZvcihsZXQgQT0wO0EhPT1vOysrQSlpW0FdPWgqcltCK0FdK3cqclthK0FdK0MqcltzK0FdK0kqcltjK0FdO3JldHVybiBpfX1jbGFzcyBqZyBleHRlbmRzIHZne2NvbnN0cnVjdG9yKEEsZSx0LG4pe3N1cGVyKEEsZSx0LG4pfWludGVycG9sYXRlXyhBLGUsdCxuKXtjb25zdCBpPXRoaXMucmVzdWx0QnVmZmVyLHI9dGhpcy5zYW1wbGVWYWx1ZXMsbz10aGlzLnZhbHVlU2l6ZSxzPUEqbyxhPXMtbyxCPSh0LWUpLyhuLWUpLGM9MS1CO2ZvcihsZXQgQT0wO0EhPT1vOysrQSlpW0FdPXJbYStBXSpjK3JbcytBXSpCO3JldHVybiBpfX1jbGFzcyBKZyBleHRlbmRzIHZne2NvbnN0cnVjdG9yKEEsZSx0LG4pe3N1cGVyKEEsZSx0LG4pfWludGVycG9sYXRlXyhBKXtyZXR1cm4gdGhpcy5jb3B5U2FtcGxlVmFsdWVfKEEtMSl9fWNsYXNzIHpne2NvbnN0cnVjdG9yKEEsZSx0LG4pe2lmKHZvaWQgMD09PUEpdGhyb3cgbmV3IEVycm9yKCJUSFJFRS5LZXlmcmFtZVRyYWNrOiB0cmFjayBuYW1lIGlzIHVuZGVmaW5lZCIpO2lmKHZvaWQgMD09PWV8fDA9PT1lLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIlRIUkVFLktleWZyYW1lVHJhY2s6IG5vIGtleWZyYW1lcyBpbiB0cmFjayBuYW1lZCAiK0EpO3RoaXMubmFtZT1BLHRoaXMudGltZXM9eGcoZSx0aGlzLlRpbWVCdWZmZXJUeXBlKSx0aGlzLnZhbHVlcz14Zyh0LHRoaXMuVmFsdWVCdWZmZXJUeXBlKSx0aGlzLnNldEludGVycG9sYXRpb24obnx8dGhpcy5EZWZhdWx0SW50ZXJwb2xhdGlvbil9c3RhdGljIHRvSlNPTihBKXtjb25zdCBlPUEuY29uc3RydWN0b3I7bGV0IHQ7aWYoZS50b0pTT04hPT10aGlzLnRvSlNPTil0PWUudG9KU09OKEEpO2Vsc2V7dD17bmFtZTpBLm5hbWUsdGltZXM6eGcoQS50aW1lcyxBcnJheSksdmFsdWVzOnhnKEEudmFsdWVzLEFycmF5KX07Y29uc3QgZT1BLmdldEludGVycG9sYXRpb24oKTtlIT09QS5EZWZhdWx0SW50ZXJwb2xhdGlvbiYmKHQuaW50ZXJwb2xhdGlvbj1lKX1yZXR1cm4gdC50eXBlPUEuVmFsdWVUeXBlTmFtZSx0fUludGVycG9sYW50RmFjdG9yeU1ldGhvZERpc2NyZXRlKEEpe3JldHVybiBuZXcgSmcodGhpcy50aW1lcyx0aGlzLnZhbHVlcyx0aGlzLmdldFZhbHVlU2l6ZSgpLEEpfUludGVycG9sYW50RmFjdG9yeU1ldGhvZExpbmVhcihBKXtyZXR1cm4gbmV3IGpnKHRoaXMudGltZXMsdGhpcy52YWx1ZXMsdGhpcy5nZXRWYWx1ZVNpemUoKSxBKX1JbnRlcnBvbGFudEZhY3RvcnlNZXRob2RTbW9vdGgoQSl7cmV0dXJuIG5ldyBrZyh0aGlzLnRpbWVzLHRoaXMudmFsdWVzLHRoaXMuZ2V0VmFsdWVTaXplKCksQSl9c2V0SW50ZXJwb2xhdGlvbihBKXtsZXQgZTtzd2l0Y2goQSl7Y2FzZSBtZTplPXRoaXMuSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kRGlzY3JldGU7YnJlYWs7Y2FzZSBGZTplPXRoaXMuSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kTGluZWFyO2JyZWFrO2Nhc2UgRGU6ZT10aGlzLkludGVycG9sYW50RmFjdG9yeU1ldGhvZFNtb290aH1pZih2b2lkIDA9PT1lKXtjb25zdCBlPSJ1bnN1cHBvcnRlZCBpbnRlcnBvbGF0aW9uIGZvciAiK3RoaXMuVmFsdWVUeXBlTmFtZSsiIGtleWZyYW1lIHRyYWNrIG5hbWVkICIrdGhpcy5uYW1lO2lmKHZvaWQgMD09PXRoaXMuY3JlYXRlSW50ZXJwb2xhbnQpe2lmKEE9PT10aGlzLkRlZmF1bHRJbnRlcnBvbGF0aW9uKXRocm93IG5ldyBFcnJvcihlKTt0aGlzLnNldEludGVycG9sYXRpb24odGhpcy5EZWZhdWx0SW50ZXJwb2xhdGlvbil9cmV0dXJuIGNvbnNvbGUud2FybigiVEhSRUUuS2V5ZnJhbWVUcmFjazoiLGUpLHRoaXN9cmV0dXJuIHRoaXMuY3JlYXRlSW50ZXJwb2xhbnQ9ZSx0aGlzfWdldEludGVycG9sYXRpb24oKXtzd2l0Y2godGhpcy5jcmVhdGVJbnRlcnBvbGFudCl7Y2FzZSB0aGlzLkludGVycG9sYW50RmFjdG9yeU1ldGhvZERpc2NyZXRlOnJldHVybiBtZTtjYXNlIHRoaXMuSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kTGluZWFyOnJldHVybiBGZTtjYXNlIHRoaXMuSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kU21vb3RoOnJldHVybiBEZX19Z2V0VmFsdWVTaXplKCl7cmV0dXJuIHRoaXMudmFsdWVzLmxlbmd0aC90aGlzLnRpbWVzLmxlbmd0aH1zaGlmdChBKXtpZigwIT09QSl7Y29uc3QgZT10aGlzLnRpbWVzO2ZvcihsZXQgdD0wLG49ZS5sZW5ndGg7dCE9PW47Kyt0KWVbdF0rPUF9cmV0dXJuIHRoaXN9c2NhbGUoQSl7aWYoMSE9PUEpe2NvbnN0IGU9dGhpcy50aW1lcztmb3IobGV0IHQ9MCxuPWUubGVuZ3RoO3QhPT1uOysrdCllW3RdKj1BfXJldHVybiB0aGlzfXRyaW0oQSxlKXtjb25zdCB0PXRoaXMudGltZXMsbj10Lmxlbmd0aDtsZXQgaT0wLHI9bi0xO2Zvcig7aSE9PW4mJnRbaV08QTspKytpO2Zvcig7LTEhPT1yJiZ0W3JdPmU7KS0tcjtpZigrK3IsMCE9PWl8fHIhPT1uKXtpPj1yJiYocj1NYXRoLm1heChyLDEpLGk9ci0xKTtjb25zdCBBPXRoaXMuZ2V0VmFsdWVTaXplKCk7dGhpcy50aW1lcz1UZyh0LGksciksdGhpcy52YWx1ZXM9VGcodGhpcy52YWx1ZXMsaSpBLHIqQSl9cmV0dXJuIHRoaXN9dmFsaWRhdGUoKXtsZXQgQT0hMDtjb25zdCBlPXRoaXMuZ2V0VmFsdWVTaXplKCk7ZS1NYXRoLmZsb29yKGUpIT0wJiYoY29uc29sZS5lcnJvcigiVEhSRUUuS2V5ZnJhbWVUcmFjazogSW52YWxpZCB2YWx1ZSBzaXplIGluIHRyYWNrLiIsdGhpcyksQT0hMSk7Y29uc3QgdD10aGlzLnRpbWVzLG49dGhpcy52YWx1ZXMsaT10Lmxlbmd0aDswPT09aSYmKGNvbnNvbGUuZXJyb3IoIlRIUkVFLktleWZyYW1lVHJhY2s6IFRyYWNrIGlzIGVtcHR5LiIsdGhpcyksQT0hMSk7bGV0IHI9bnVsbDtmb3IobGV0IGU9MDtlIT09aTtlKyspe2NvbnN0IG49dFtlXTtpZigibnVtYmVyIj09dHlwZW9mIG4mJmlzTmFOKG4pKXtjb25zb2xlLmVycm9yKCJUSFJFRS5LZXlmcmFtZVRyYWNrOiBUaW1lIGlzIG5vdCBhIHZhbGlkIG51bWJlci4iLHRoaXMsZSxuKSxBPSExO2JyZWFrfWlmKG51bGwhPT1yJiZyPm4pe2NvbnNvbGUuZXJyb3IoIlRIUkVFLktleWZyYW1lVHJhY2s6IE91dCBvZiBvcmRlciBrZXlzLiIsdGhpcyxlLG4sciksQT0hMTticmVha31yPW59aWYodm9pZCAwIT09biYmUmcobikpZm9yKGxldCBlPTAsdD1uLmxlbmd0aDtlIT09dDsrK2Upe2NvbnN0IHQ9bltlXTtpZihpc05hTih0KSl7Y29uc29sZS5lcnJvcigiVEhSRUUuS2V5ZnJhbWVUcmFjazogVmFsdWUgaXMgbm90IGEgdmFsaWQgbnVtYmVyLiIsdGhpcyxlLHQpLEE9ITE7YnJlYWt9fXJldHVybiBBfW9wdGltaXplKCl7Y29uc3QgQT1UZyh0aGlzLnRpbWVzKSxlPVRnKHRoaXMudmFsdWVzKSx0PXRoaXMuZ2V0VmFsdWVTaXplKCksbj10aGlzLmdldEludGVycG9sYXRpb24oKT09PURlLGk9QS5sZW5ndGgtMTtsZXQgcj0xO2ZvcihsZXQgbz0xO288aTsrK28pe2xldCBpPSExO2NvbnN0IHM9QVtvXTtpZihzIT09QVtvKzFdJiYoMSE9PW98fHMhPT1BWzBdKSlpZihuKWk9ITA7ZWxzZXtjb25zdCBBPW8qdCxuPUEtdCxyPUErdDtmb3IobGV0IG89MDtvIT09dDsrK28pe2NvbnN0IHQ9ZVtBK29dO2lmKHQhPT1lW24rb118fHQhPT1lW3Irb10pe2k9ITA7YnJlYWt9fX1pZihpKXtpZihvIT09cil7QVtyXT1BW29dO2NvbnN0IG49byp0LGk9cip0O2ZvcihsZXQgQT0wO0EhPT10OysrQSllW2krQV09ZVtuK0FdfSsrcn19aWYoaT4wKXtBW3JdPUFbaV07Zm9yKGxldCBBPWkqdCxuPXIqdCxvPTA7byE9PXQ7KytvKWVbbitvXT1lW0Erb107KytyfXJldHVybiByIT09QS5sZW5ndGg/KHRoaXMudGltZXM9VGcoQSwwLHIpLHRoaXMudmFsdWVzPVRnKGUsMCxyKnQpKToodGhpcy50aW1lcz1BLHRoaXMudmFsdWVzPWUpLHRoaXN9Y2xvbmUoKXtjb25zdCBBPVRnKHRoaXMudGltZXMsMCksZT1UZyh0aGlzLnZhbHVlcywwKSx0PW5ldygwLHRoaXMuY29uc3RydWN0b3IpKHRoaXMubmFtZSxBLGUpO3JldHVybiB0LmNyZWF0ZUludGVycG9sYW50PXRoaXMuY3JlYXRlSW50ZXJwb2xhbnQsdH19emcucHJvdG90eXBlLlRpbWVCdWZmZXJUeXBlPUZsb2F0MzJBcnJheSx6Zy5wcm90b3R5cGUuVmFsdWVCdWZmZXJUeXBlPUZsb2F0MzJBcnJheSx6Zy5wcm90b3R5cGUuRGVmYXVsdEludGVycG9sYXRpb249RmU7Y2xhc3MgTGcgZXh0ZW5kcyB6Z3t9TGcucHJvdG90eXBlLlZhbHVlVHlwZU5hbWU9ImJvb2wiLExnLnByb3RvdHlwZS5WYWx1ZUJ1ZmZlclR5cGU9QXJyYXksTGcucHJvdG90eXBlLkRlZmF1bHRJbnRlcnBvbGF0aW9uPW1lLExnLnByb3RvdHlwZS5JbnRlcnBvbGFudEZhY3RvcnlNZXRob2RMaW5lYXI9dm9pZCAwLExnLnByb3RvdHlwZS5JbnRlcnBvbGFudEZhY3RvcnlNZXRob2RTbW9vdGg9dm9pZCAwO2NsYXNzIFBnIGV4dGVuZHMgemd7fVBnLnByb3RvdHlwZS5WYWx1ZVR5cGVOYW1lPSJjb2xvciI7Y2xhc3MgT2cgZXh0ZW5kcyB6Z3t9T2cucHJvdG90eXBlLlZhbHVlVHlwZU5hbWU9Im51bWJlciI7Y2xhc3MgVmcgZXh0ZW5kcyB2Z3tjb25zdHJ1Y3RvcihBLGUsdCxuKXtzdXBlcihBLGUsdCxuKX1pbnRlcnBvbGF0ZV8oQSxlLHQsbil7Y29uc3QgaT10aGlzLnJlc3VsdEJ1ZmZlcixyPXRoaXMuc2FtcGxlVmFsdWVzLG89dGhpcy52YWx1ZVNpemUscz0odC1lKS8obi1lKTtsZXQgYT1BKm87Zm9yKGxldCBBPWErbzthIT09QTthKz00KU1uLnNsZXJwRmxhdChpLDAscixhLW8scixhLHMpO3JldHVybiBpfX1jbGFzcyBXZyBleHRlbmRzIHpne0ludGVycG9sYW50RmFjdG9yeU1ldGhvZExpbmVhcihBKXtyZXR1cm4gbmV3IFZnKHRoaXMudGltZXMsdGhpcy52YWx1ZXMsdGhpcy5nZXRWYWx1ZVNpemUoKSxBKX19V2cucHJvdG90eXBlLlZhbHVlVHlwZU5hbWU9InF1YXRlcm5pb24iLFdnLnByb3RvdHlwZS5EZWZhdWx0SW50ZXJwb2xhdGlvbj1GZSxXZy5wcm90b3R5cGUuSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kU21vb3RoPXZvaWQgMDtjbGFzcyBLZyBleHRlbmRzIHpne31LZy5wcm90b3R5cGUuVmFsdWVUeXBlTmFtZT0ic3RyaW5nIixLZy5wcm90b3R5cGUuVmFsdWVCdWZmZXJUeXBlPUFycmF5LEtnLnByb3RvdHlwZS5EZWZhdWx0SW50ZXJwb2xhdGlvbj1tZSxLZy5wcm90b3R5cGUuSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kTGluZWFyPXZvaWQgMCxLZy5wcm90b3R5cGUuSW50ZXJwb2xhbnRGYWN0b3J5TWV0aG9kU21vb3RoPXZvaWQgMDtjbGFzcyBYZyBleHRlbmRzIHpne31YZy5wcm90b3R5cGUuVmFsdWVUeXBlTmFtZT0idmVjdG9yIjtjbGFzcyBaZ3tjb25zdHJ1Y3RvcihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06LTEsdD1hcmd1bWVudHMubGVuZ3RoPjI/YXJndW1lbnRzWzJdOnZvaWQgMCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTpVZTt0aGlzLm5hbWU9QSx0aGlzLnRyYWNrcz10LHRoaXMuZHVyYXRpb249ZSx0aGlzLmJsZW5kTW9kZT1uLHRoaXMudXVpZD1SdCgpLHRoaXMuZHVyYXRpb248MCYmdGhpcy5yZXNldER1cmF0aW9uKCl9c3RhdGljIHBhcnNlKEEpe2NvbnN0IGU9W10sdD1BLnRyYWNrcyxuPTEvKEEuZnBzfHwxKTtmb3IobGV0IEE9MCxpPXQubGVuZ3RoO0EhPT1pOysrQSllLnB1c2goX2codFtBXSkuc2NhbGUobikpO2NvbnN0IGk9bmV3IHRoaXMoQS5uYW1lLEEuZHVyYXRpb24sZSxBLmJsZW5kTW9kZSk7cmV0dXJuIGkudXVpZD1BLnV1aWQsaX1zdGF0aWMgdG9KU09OKEEpe2NvbnN0IGU9W10sdD1BLnRyYWNrcyxuPXtuYW1lOkEubmFtZSxkdXJhdGlvbjpBLmR1cmF0aW9uLHRyYWNrczplLHV1aWQ6QS51dWlkLGJsZW5kTW9kZTpBLmJsZW5kTW9kZX07Zm9yKGxldCBBPTAsbj10Lmxlbmd0aDtBIT09bjsrK0EpZS5wdXNoKHpnLnRvSlNPTih0W0FdKSk7cmV0dXJuIG59c3RhdGljIENyZWF0ZUZyb21Nb3JwaFRhcmdldFNlcXVlbmNlKEEsZSx0LG4pe2NvbnN0IGk9ZS5sZW5ndGgscj1bXTtmb3IobGV0IEE9MDtBPGk7QSsrKXtsZXQgbz1bXSxzPVtdO28ucHVzaCgoQStpLTEpJWksQSwoQSsxKSVpKSxzLnB1c2goMCwxLDApO2NvbnN0IGE9R2cobyk7bz1TZyhvLDEsYSkscz1TZyhzLDEsYSksbnx8MCE9PW9bMF18fChvLnB1c2goaSkscy5wdXNoKHNbMF0pKSxyLnB1c2gobmV3IE9nKCIubW9ycGhUYXJnZXRJbmZsdWVuY2VzWyIrZVtBXS5uYW1lKyJdIixvLHMpLnNjYWxlKDEvdCkpfXJldHVybiBuZXcgdGhpcyhBLC0xLHIpfXN0YXRpYyBmaW5kQnlOYW1lKEEsZSl7bGV0IHQ9QTtpZighQXJyYXkuaXNBcnJheShBKSl7Y29uc3QgZT1BO3Q9ZS5nZW9tZXRyeSYmZS5nZW9tZXRyeS5hbmltYXRpb25zfHxlLmFuaW1hdGlvbnN9Zm9yKGxldCBBPTA7QTx0Lmxlbmd0aDtBKyspaWYodFtBXS5uYW1lPT09ZSlyZXR1cm4gdFtBXTtyZXR1cm4gbnVsbH1zdGF0aWMgQ3JlYXRlQ2xpcHNGcm9tTW9ycGhUYXJnZXRTZXF1ZW5jZXMoQSxlLHQpe2NvbnN0IG49e30saT0vXihbXHctXSo/KShbXGRdKykkLztmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QVtlXSxyPXQubmFtZS5tYXRjaChpKTtpZihyJiZyLmxlbmd0aD4xKXtjb25zdCBBPXJbMV07bGV0IGU9bltBXTtlfHwobltBXT1lPVtdKSxlLnB1c2godCl9fWNvbnN0IHI9W107Zm9yKGNvbnN0IEEgaW4gbilyLnB1c2godGhpcy5DcmVhdGVGcm9tTW9ycGhUYXJnZXRTZXF1ZW5jZShBLG5bQV0sZSx0KSk7cmV0dXJuIHJ9c3RhdGljIHBhcnNlQW5pbWF0aW9uKEEsZSl7aWYoIUEpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIlRIUkVFLkFuaW1hdGlvbkNsaXA6IE5vIGFuaW1hdGlvbiBpbiBKU09OTG9hZGVyIGRhdGEuIiksbnVsbDtjb25zdCB0PWZ1bmN0aW9uKEEsZSx0LG4saSl7aWYoMCE9PXQubGVuZ3RoKXtjb25zdCByPVtdLG89W107YmcodCxyLG8sbiksMCE9PXIubGVuZ3RoJiZpLnB1c2gobmV3IEEoZSxyLG8pKX19LG49W10saT1BLm5hbWV8fCJkZWZhdWx0IixyPUEuZnBzfHwzMCxvPUEuYmxlbmRNb2RlO2xldCBzPUEubGVuZ3RofHwtMTtjb25zdCBhPUEuaGllcmFyY2h5fHxbXTtmb3IobGV0IEE9MDtBPGEubGVuZ3RoO0ErKyl7Y29uc3QgaT1hW0FdLmtleXM7aWYoaSYmMCE9PWkubGVuZ3RoKWlmKGlbMF0ubW9ycGhUYXJnZXRzKXtjb25zdCBBPXt9O2xldCBlO2ZvcihlPTA7ZTxpLmxlbmd0aDtlKyspaWYoaVtlXS5tb3JwaFRhcmdldHMpZm9yKGxldCB0PTA7dDxpW2VdLm1vcnBoVGFyZ2V0cy5sZW5ndGg7dCsrKUFbaVtlXS5tb3JwaFRhcmdldHNbdF1dPS0xO2Zvcihjb25zdCB0IGluIEEpe2NvbnN0IEE9W10scj1bXTtmb3IobGV0IG49MDtuIT09aVtlXS5tb3JwaFRhcmdldHMubGVuZ3RoOysrbil7Y29uc3Qgbj1pW2VdO0EucHVzaChuLnRpbWUpLHIucHVzaChuLm1vcnBoVGFyZ2V0PT09dD8xOjApfW4ucHVzaChuZXcgT2coIi5tb3JwaFRhcmdldEluZmx1ZW5jZVsiK3QrIl0iLEEscikpfXM9QS5sZW5ndGgqcn1lbHNle2NvbnN0IHI9Ii5ib25lc1siK2VbQV0ubmFtZSsiXSI7dChYZyxyKyIucG9zaXRpb24iLGksInBvcyIsbiksdChXZyxyKyIucXVhdGVybmlvbiIsaSwicm90IixuKSx0KFhnLHIrIi5zY2FsZSIsaSwic2NsIixuKX19aWYoMD09PW4ubGVuZ3RoKXJldHVybiBudWxsO3JldHVybiBuZXcgdGhpcyhpLHMsbixvKX1yZXNldER1cmF0aW9uKCl7bGV0IEE9MDtmb3IobGV0IGU9MCx0PXRoaXMudHJhY2tzLmxlbmd0aDtlIT09dDsrK2Upe2NvbnN0IHQ9dGhpcy50cmFja3NbZV07QT1NYXRoLm1heChBLHQudGltZXNbdC50aW1lcy5sZW5ndGgtMV0pfXJldHVybiB0aGlzLmR1cmF0aW9uPUEsdGhpc310cmltKCl7Zm9yKGxldCBBPTA7QTx0aGlzLnRyYWNrcy5sZW5ndGg7QSsrKXRoaXMudHJhY2tzW0FdLnRyaW0oMCx0aGlzLmR1cmF0aW9uKTtyZXR1cm4gdGhpc312YWxpZGF0ZSgpe2xldCBBPSEwO2ZvcihsZXQgZT0wO2U8dGhpcy50cmFja3MubGVuZ3RoO2UrKylBPUEmJnRoaXMudHJhY2tzW2VdLnZhbGlkYXRlKCk7cmV0dXJuIEF9b3B0aW1pemUoKXtmb3IobGV0IEE9MDtBPHRoaXMudHJhY2tzLmxlbmd0aDtBKyspdGhpcy50cmFja3NbQV0ub3B0aW1pemUoKTtyZXR1cm4gdGhpc31jbG9uZSgpe2NvbnN0IEE9W107Zm9yKGxldCBlPTA7ZTx0aGlzLnRyYWNrcy5sZW5ndGg7ZSsrKUEucHVzaCh0aGlzLnRyYWNrc1tlXS5jbG9uZSgpKTtyZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3IodGhpcy5uYW1lLHRoaXMuZHVyYXRpb24sQSx0aGlzLmJsZW5kTW9kZSl9dG9KU09OKCl7cmV0dXJuIHRoaXMuY29uc3RydWN0b3IudG9KU09OKHRoaXMpfX1mdW5jdGlvbiBfZyhBKXtpZih2b2lkIDA9PT1BLnR5cGUpdGhyb3cgbmV3IEVycm9yKCJUSFJFRS5LZXlmcmFtZVRyYWNrOiB0cmFjayB0eXBlIHVuZGVmaW5lZCwgY2FuIG5vdCBwYXJzZSIpO2NvbnN0IGU9ZnVuY3Rpb24oQSl7c3dpdGNoKEEudG9Mb3dlckNhc2UoKSl7Y2FzZSJzY2FsYXIiOmNhc2UiZG91YmxlIjpjYXNlImZsb2F0IjpjYXNlIm51bWJlciI6Y2FzZSJpbnRlZ2VyIjpyZXR1cm4gT2c7Y2FzZSJ2ZWN0b3IiOmNhc2UidmVjdG9yMiI6Y2FzZSJ2ZWN0b3IzIjpjYXNlInZlY3RvcjQiOnJldHVybiBYZztjYXNlImNvbG9yIjpyZXR1cm4gUGc7Y2FzZSJxdWF0ZXJuaW9uIjpyZXR1cm4gV2c7Y2FzZSJib29sIjpjYXNlImJvb2xlYW4iOnJldHVybiBMZztjYXNlInN0cmluZyI6cmV0dXJuIEtnfXRocm93IG5ldyBFcnJvcigiVEhSRUUuS2V5ZnJhbWVUcmFjazogVW5zdXBwb3J0ZWQgdHlwZU5hbWU6ICIrQSl9KEEudHlwZSk7aWYodm9pZCAwPT09QS50aW1lcyl7Y29uc3QgZT1bXSx0PVtdO2JnKEEua2V5cyxlLHQsInZhbHVlIiksQS50aW1lcz1lLEEudmFsdWVzPXR9cmV0dXJuIHZvaWQgMCE9PWUucGFyc2U/ZS5wYXJzZShBKTpuZXcgZShBLm5hbWUsQS50aW1lcyxBLnZhbHVlcyxBLmludGVycG9sYXRpb24pfWNvbnN0IHFnPXtlbmFibGVkOiExLGZpbGVzOnt9LGFkZDpmdW5jdGlvbihBLGUpeyExIT09dGhpcy5lbmFibGVkJiYodGhpcy5maWxlc1tBXT1lKX0sZ2V0OmZ1bmN0aW9uKEEpe2lmKCExIT09dGhpcy5lbmFibGVkKXJldHVybiB0aGlzLmZpbGVzW0FdfSxyZW1vdmU6ZnVuY3Rpb24oQSl7ZGVsZXRlIHRoaXMuZmlsZXNbQV19LGNsZWFyOmZ1bmN0aW9uKCl7dGhpcy5maWxlcz17fX19O2NsYXNzICRne2NvbnN0cnVjdG9yKEEsZSx0KXtjb25zdCBuPXRoaXM7bGV0IGk9ITEscj0wLG89MCxzPXZvaWQgMDtjb25zdCBhPVtdO3RoaXMub25TdGFydD12b2lkIDAsdGhpcy5vbkxvYWQ9QSx0aGlzLm9uUHJvZ3Jlc3M9ZSx0aGlzLm9uRXJyb3I9dCx0aGlzLml0ZW1TdGFydD1mdW5jdGlvbihBKXtvKyssITE9PT1pJiZ2b2lkIDAhPT1uLm9uU3RhcnQmJm4ub25TdGFydChBLHIsbyksaT0hMH0sdGhpcy5pdGVtRW5kPWZ1bmN0aW9uKEEpe3IrKyx2b2lkIDAhPT1uLm9uUHJvZ3Jlc3MmJm4ub25Qcm9ncmVzcyhBLHIsbykscj09PW8mJihpPSExLHZvaWQgMCE9PW4ub25Mb2FkJiZuLm9uTG9hZCgpKX0sdGhpcy5pdGVtRXJyb3I9ZnVuY3Rpb24oQSl7dm9pZCAwIT09bi5vbkVycm9yJiZuLm9uRXJyb3IoQSl9LHRoaXMucmVzb2x2ZVVSTD1mdW5jdGlvbihBKXtyZXR1cm4gcz9zKEEpOkF9LHRoaXMuc2V0VVJMTW9kaWZpZXI9ZnVuY3Rpb24oQSl7cmV0dXJuIHM9QSx0aGlzfSx0aGlzLmFkZEhhbmRsZXI9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gYS5wdXNoKEEsZSksdGhpc30sdGhpcy5yZW1vdmVIYW5kbGVyPWZ1bmN0aW9uKEEpe2NvbnN0IGU9YS5pbmRleE9mKEEpO3JldHVybi0xIT09ZSYmYS5zcGxpY2UoZSwyKSx0aGlzfSx0aGlzLmdldEhhbmRsZXI9ZnVuY3Rpb24oQSl7Zm9yKGxldCBlPTAsdD1hLmxlbmd0aDtlPHQ7ZSs9Mil7Y29uc3QgdD1hW2VdLG49YVtlKzFdO2lmKHQuZ2xvYmFsJiYodC5sYXN0SW5kZXg9MCksdC50ZXN0KEEpKXJldHVybiBufXJldHVybiBudWxsfX19Y29uc3QgQUU9bmV3ICRnO2NsYXNzIGVFe2NvbnN0cnVjdG9yKEEpe3RoaXMubWFuYWdlcj12b2lkIDAhPT1BP0E6QUUsdGhpcy5jcm9zc09yaWdpbj0iYW5vbnltb3VzIix0aGlzLndpdGhDcmVkZW50aWFscz0hMSx0aGlzLnBhdGg9IiIsdGhpcy5yZXNvdXJjZVBhdGg9IiIsdGhpcy5yZXF1ZXN0SGVhZGVyPXt9fWxvYWQoKXt9bG9hZEFzeW5jKEEsZSl7Y29uc3QgdD10aGlzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24obixpKXt0LmxvYWQoQSxuLGUsaSl9KSl9cGFyc2UoKXt9c2V0Q3Jvc3NPcmlnaW4oQSl7cmV0dXJuIHRoaXMuY3Jvc3NPcmlnaW49QSx0aGlzfXNldFdpdGhDcmVkZW50aWFscyhBKXtyZXR1cm4gdGhpcy53aXRoQ3JlZGVudGlhbHM9QSx0aGlzfXNldFBhdGgoQSl7cmV0dXJuIHRoaXMucGF0aD1BLHRoaXN9c2V0UmVzb3VyY2VQYXRoKEEpe3JldHVybiB0aGlzLnJlc291cmNlUGF0aD1BLHRoaXN9c2V0UmVxdWVzdEhlYWRlcihBKXtyZXR1cm4gdGhpcy5yZXF1ZXN0SGVhZGVyPUEsdGhpc319Y29uc3QgdEU9e307Y2xhc3MgbkUgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihBLGUpe3N1cGVyKEEpLHRoaXMucmVzcG9uc2U9ZX19Y2xhc3MgaUUgZXh0ZW5kcyBlRXtjb25zdHJ1Y3RvcihBKXtzdXBlcihBKX1sb2FkKEEsZSx0LG4pe3ZvaWQgMD09PUEmJihBPSIiKSx2b2lkIDAhPT10aGlzLnBhdGgmJihBPXRoaXMucGF0aCtBKSxBPXRoaXMubWFuYWdlci5yZXNvbHZlVVJMKEEpO2NvbnN0IGk9cWcuZ2V0KEEpO2lmKHZvaWQgMCE9PWkpcmV0dXJuIHRoaXMubWFuYWdlci5pdGVtU3RhcnQoQSksc2V0VGltZW91dCgoKT0+e2UmJmUoaSksdGhpcy5tYW5hZ2VyLml0ZW1FbmQoQSl9LDApLGk7aWYodm9pZCAwIT09dEVbQV0pcmV0dXJuIHZvaWQgdEVbQV0ucHVzaCh7b25Mb2FkOmUsb25Qcm9ncmVzczp0LG9uRXJyb3I6bn0pO3RFW0FdPVtdLHRFW0FdLnB1c2goe29uTG9hZDplLG9uUHJvZ3Jlc3M6dCxvbkVycm9yOm59KTtjb25zdCByPW5ldyBSZXF1ZXN0KEEse2hlYWRlcnM6bmV3IEhlYWRlcnModGhpcy5yZXF1ZXN0SGVhZGVyKSxjcmVkZW50aWFsczp0aGlzLndpdGhDcmVkZW50aWFscz8iaW5jbHVkZSI6InNhbWUtb3JpZ2luIn0pLG89dGhpcy5taW1lVHlwZSxzPXRoaXMucmVzcG9uc2VUeXBlO2ZldGNoKHIpLnRoZW4oZT0+e2lmKDIwMD09PWUuc3RhdHVzfHwwPT09ZS5zdGF0dXMpe2lmKDA9PT1lLnN0YXR1cyYmY29uc29sZS53YXJuKCJUSFJFRS5GaWxlTG9hZGVyOiBIVFRQIFN0YXR1cyAwIHJlY2VpdmVkLiIpLCJ1bmRlZmluZWQiPT10eXBlb2YgUmVhZGFibGVTdHJlYW18fHZvaWQgMD09PWUuYm9keXx8dm9pZCAwPT09ZS5ib2R5LmdldFJlYWRlcilyZXR1cm4gZTtjb25zdCB0PXRFW0FdLG49ZS5ib2R5LmdldFJlYWRlcigpLGk9ZS5oZWFkZXJzLmdldCgiQ29udGVudC1MZW5ndGgiKXx8ZS5oZWFkZXJzLmdldCgiWC1GaWxlLVNpemUiKSxyPWk/cGFyc2VJbnQoaSk6MCxvPTAhPT1yO2xldCBzPTA7Y29uc3QgYT1uZXcgUmVhZGFibGVTdHJlYW0oe3N0YXJ0KEEpeyFmdW5jdGlvbiBlKCl7bi5yZWFkKCkudGhlbihuPT57bGV0e2RvbmU6aSx2YWx1ZTphfT1uO2lmKGkpQS5jbG9zZSgpO2Vsc2V7cys9YS5ieXRlTGVuZ3RoO2NvbnN0IG49bmV3IFByb2dyZXNzRXZlbnQoInByb2dyZXNzIix7bGVuZ3RoQ29tcHV0YWJsZTpvLGxvYWRlZDpzLHRvdGFsOnJ9KTtmb3IobGV0IEE9MCxlPXQubGVuZ3RoO0E8ZTtBKyspe2NvbnN0IGU9dFtBXTtlLm9uUHJvZ3Jlc3MmJmUub25Qcm9ncmVzcyhuKX1BLmVucXVldWUoYSksZSgpfX0pfSgpfX0pO3JldHVybiBuZXcgUmVzcG9uc2UoYSl9dGhyb3cgbmV3IG5FKCdmZXRjaCBmb3IgIicuY29uY2F0KGUudXJsLCciIHJlc3BvbmRlZCB3aXRoICcpLmNvbmNhdChlLnN0YXR1cywiOiAiKS5jb25jYXQoZS5zdGF0dXNUZXh0KSxlKX0pLnRoZW4oQT0+e3N3aXRjaChzKXtjYXNlImFycmF5YnVmZmVyIjpyZXR1cm4gQS5hcnJheUJ1ZmZlcigpO2Nhc2UiYmxvYiI6cmV0dXJuIEEuYmxvYigpO2Nhc2UiZG9jdW1lbnQiOnJldHVybiBBLnRleHQoKS50aGVuKEE9PihuZXcgRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoQSxvKSk7Y2FzZSJqc29uIjpyZXR1cm4gQS5qc29uKCk7ZGVmYXVsdDppZih2b2lkIDA9PT1vKXJldHVybiBBLnRleHQoKTt7Y29uc3QgZT0vY2hhcnNldD0iPyhbXjsiXHNdKikiPy9pLmV4ZWMobyksdD1lJiZlWzFdP2VbMV0udG9Mb3dlckNhc2UoKTp2b2lkIDAsbj1uZXcgVGV4dERlY29kZXIodCk7cmV0dXJuIEEuYXJyYXlCdWZmZXIoKS50aGVuKEE9Pm4uZGVjb2RlKEEpKX19fSkudGhlbihlPT57cWcuYWRkKEEsZSk7Y29uc3QgdD10RVtBXTtkZWxldGUgdEVbQV07Zm9yKGxldCBBPTAsbj10Lmxlbmd0aDtBPG47QSsrKXtjb25zdCBuPXRbQV07bi5vbkxvYWQmJm4ub25Mb2FkKGUpfX0pLmNhdGNoKGU9Pntjb25zdCB0PXRFW0FdO2lmKHZvaWQgMD09PXQpdGhyb3cgdGhpcy5tYW5hZ2VyLml0ZW1FcnJvcihBKSxlO2RlbGV0ZSB0RVtBXTtmb3IobGV0IEE9MCxuPXQubGVuZ3RoO0E8bjtBKyspe2NvbnN0IG49dFtBXTtuLm9uRXJyb3ImJm4ub25FcnJvcihlKX10aGlzLm1hbmFnZXIuaXRlbUVycm9yKEEpfSkuZmluYWxseSgoKT0+e3RoaXMubWFuYWdlci5pdGVtRW5kKEEpfSksdGhpcy5tYW5hZ2VyLml0ZW1TdGFydChBKX1zZXRSZXNwb25zZVR5cGUoQSl7cmV0dXJuIHRoaXMucmVzcG9uc2VUeXBlPUEsdGhpc31zZXRNaW1lVHlwZShBKXtyZXR1cm4gdGhpcy5taW1lVHlwZT1BLHRoaXN9fWNsYXNzIHJFIGV4dGVuZHMgZUV7Y29uc3RydWN0b3IoQSl7c3VwZXIoQSl9bG9hZChBLGUsdCxuKXtjb25zdCBpPXRoaXMscj1uZXcgaUUodGhpcy5tYW5hZ2VyKTtyLnNldFBhdGgodGhpcy5wYXRoKSxyLnNldFJlcXVlc3RIZWFkZXIodGhpcy5yZXF1ZXN0SGVhZGVyKSxyLnNldFdpdGhDcmVkZW50aWFscyh0aGlzLndpdGhDcmVkZW50aWFscyksci5sb2FkKEEsKGZ1bmN0aW9uKHQpe3RyeXtlKGkucGFyc2UoSlNPTi5wYXJzZSh0KSkpfWNhdGNoKGUpe24/bihlKTpjb25zb2xlLmVycm9yKGUpLGkubWFuYWdlci5pdGVtRXJyb3IoQSl9fSksdCxuKX1wYXJzZShBKXtjb25zdCBlPVtdO2ZvcihsZXQgdD0wO3Q8QS5sZW5ndGg7dCsrKXtjb25zdCBuPVpnLnBhcnNlKEFbdF0pO2UucHVzaChuKX1yZXR1cm4gZX19Y2xhc3Mgb0UgZXh0ZW5kcyBlRXtjb25zdHJ1Y3RvcihBKXtzdXBlcihBKX1sb2FkKEEsZSx0LG4pe2NvbnN0IGk9dGhpcyxyPVtdLG89bmV3IEtCLHM9bmV3IGlFKHRoaXMubWFuYWdlcik7cy5zZXRQYXRoKHRoaXMucGF0aCkscy5zZXRSZXNwb25zZVR5cGUoImFycmF5YnVmZmVyIikscy5zZXRSZXF1ZXN0SGVhZGVyKHRoaXMucmVxdWVzdEhlYWRlcikscy5zZXRXaXRoQ3JlZGVudGlhbHMoaS53aXRoQ3JlZGVudGlhbHMpO2xldCBhPTA7ZnVuY3Rpb24gQihCKXtzLmxvYWQoQVtCXSwoZnVuY3Rpb24oQSl7Y29uc3QgdD1pLnBhcnNlKEEsITApO3JbQl09e3dpZHRoOnQud2lkdGgsaGVpZ2h0OnQuaGVpZ2h0LGZvcm1hdDp0LmZvcm1hdCxtaXBtYXBzOnQubWlwbWFwc30sYSs9MSw2PT09YSYmKDE9PT10Lm1pcG1hcENvdW50JiYoby5taW5GaWx0ZXI9d0EpLG8uaW1hZ2U9cixvLmZvcm1hdD10LmZvcm1hdCxvLm5lZWRzVXBkYXRlPSEwLGUmJmUobykpfSksdCxuKX1pZihBcnJheS5pc0FycmF5KEEpKWZvcihsZXQgZT0wLHQ9QS5sZW5ndGg7ZTx0OysrZSlCKGUpO2Vsc2Ugcy5sb2FkKEEsKGZ1bmN0aW9uKEEpe2NvbnN0IHQ9aS5wYXJzZShBLCEwKTtpZih0LmlzQ3ViZW1hcCl7Y29uc3QgQT10Lm1pcG1hcHMubGVuZ3RoL3QubWlwbWFwQ291bnQ7Zm9yKGxldCBlPTA7ZTxBO2UrKyl7cltlXT17bWlwbWFwczpbXX07Zm9yKGxldCBBPTA7QTx0Lm1pcG1hcENvdW50O0ErKylyW2VdLm1pcG1hcHMucHVzaCh0Lm1pcG1hcHNbZSp0Lm1pcG1hcENvdW50K0FdKSxyW2VdLmZvcm1hdD10LmZvcm1hdCxyW2VdLndpZHRoPXQud2lkdGgscltlXS5oZWlnaHQ9dC5oZWlnaHR9by5pbWFnZT1yfWVsc2Ugby5pbWFnZS53aWR0aD10LndpZHRoLG8uaW1hZ2UuaGVpZ2h0PXQuaGVpZ2h0LG8ubWlwbWFwcz10Lm1pcG1hcHM7MT09PXQubWlwbWFwQ291bnQmJihvLm1pbkZpbHRlcj13QSksby5mb3JtYXQ9dC5mb3JtYXQsby5uZWVkc1VwZGF0ZT0hMCxlJiZlKG8pfSksdCxuKTtyZXR1cm4gb319Y2xhc3Mgc0UgZXh0ZW5kcyBlRXtjb25zdHJ1Y3RvcihBKXtzdXBlcihBKX1sb2FkKEEsZSx0LG4pe3ZvaWQgMCE9PXRoaXMucGF0aCYmKEE9dGhpcy5wYXRoK0EpLEE9dGhpcy5tYW5hZ2VyLnJlc29sdmVVUkwoQSk7Y29uc3QgaT10aGlzLHI9cWcuZ2V0KEEpO2lmKHZvaWQgMCE9PXIpcmV0dXJuIGkubWFuYWdlci5pdGVtU3RhcnQoQSksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtlJiZlKHIpLGkubWFuYWdlci5pdGVtRW5kKEEpfSksMCkscjtjb25zdCBvPVh0KCJpbWciKTtmdW5jdGlvbiBzKCl7QigpLHFnLmFkZChBLHRoaXMpLGUmJmUodGhpcyksaS5tYW5hZ2VyLml0ZW1FbmQoQSl9ZnVuY3Rpb24gYShlKXtCKCksbiYmbihlKSxpLm1hbmFnZXIuaXRlbUVycm9yKEEpLGkubWFuYWdlci5pdGVtRW5kKEEpfWZ1bmN0aW9uIEIoKXtvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLHMsITEpLG8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGEsITEpfXJldHVybiBvLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLHMsITEpLG8uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGEsITEpLCJkYXRhOiIhPT1BLnNsaWNlKDAsNSkmJnZvaWQgMCE9PXRoaXMuY3Jvc3NPcmlnaW4mJihvLmNyb3NzT3JpZ2luPXRoaXMuY3Jvc3NPcmlnaW4pLGkubWFuYWdlci5pdGVtU3RhcnQoQSksby5zcmM9QSxvfX1jbGFzcyBhRSBleHRlbmRzIGVFe2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpfWxvYWQoQSxlLHQsbil7Y29uc3QgaT1uZXcgUHI7aS5jb2xvclNwYWNlPUplO2NvbnN0IHI9bmV3IHNFKHRoaXMubWFuYWdlcik7ci5zZXRDcm9zc09yaWdpbih0aGlzLmNyb3NzT3JpZ2luKSxyLnNldFBhdGgodGhpcy5wYXRoKTtsZXQgbz0wO2Z1bmN0aW9uIHModCl7ci5sb2FkKEFbdF0sKGZ1bmN0aW9uKEEpe2kuaW1hZ2VzW3RdPUEsbysrLDY9PT1vJiYoaS5uZWVkc1VwZGF0ZT0hMCxlJiZlKGkpKX0pLHZvaWQgMCxuKX1mb3IobGV0IGU9MDtlPEEubGVuZ3RoOysrZSlzKGUpO3JldHVybiBpfX1jbGFzcyBCRSBleHRlbmRzIGVFe2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpfWxvYWQoQSxlLHQsbil7Y29uc3QgaT10aGlzLHI9bmV3IGxCLG89bmV3IGlFKHRoaXMubWFuYWdlcik7cmV0dXJuIG8uc2V0UmVzcG9uc2VUeXBlKCJhcnJheWJ1ZmZlciIpLG8uc2V0UmVxdWVzdEhlYWRlcih0aGlzLnJlcXVlc3RIZWFkZXIpLG8uc2V0UGF0aCh0aGlzLnBhdGgpLG8uc2V0V2l0aENyZWRlbnRpYWxzKGkud2l0aENyZWRlbnRpYWxzKSxvLmxvYWQoQSwoZnVuY3Rpb24oQSl7Y29uc3QgdD1pLnBhcnNlKEEpO3QmJih2b2lkIDAhPT10LmltYWdlP3IuaW1hZ2U9dC5pbWFnZTp2b2lkIDAhPT10LmRhdGEmJihyLmltYWdlLndpZHRoPXQud2lkdGgsci5pbWFnZS5oZWlnaHQ9dC5oZWlnaHQsci5pbWFnZS5kYXRhPXQuZGF0YSksci53cmFwUz12b2lkIDAhPT10LndyYXBTP3Qud3JhcFM6Y0Esci53cmFwVD12b2lkIDAhPT10LndyYXBUP3Qud3JhcFQ6Y0Esci5tYWdGaWx0ZXI9dm9pZCAwIT09dC5tYWdGaWx0ZXI/dC5tYWdGaWx0ZXI6d0Esci5taW5GaWx0ZXI9dm9pZCAwIT09dC5taW5GaWx0ZXI/dC5taW5GaWx0ZXI6d0Esci5hbmlzb3Ryb3B5PXZvaWQgMCE9PXQuYW5pc290cm9weT90LmFuaXNvdHJvcHk6MSx2b2lkIDAhPT10LmNvbG9yU3BhY2U/ci5jb2xvclNwYWNlPXQuY29sb3JTcGFjZTp2b2lkIDAhPT10LmVuY29kaW5nJiYoci5lbmNvZGluZz10LmVuY29kaW5nKSx2b2lkIDAhPT10LmZsaXBZJiYoci5mbGlwWT10LmZsaXBZKSx2b2lkIDAhPT10LmZvcm1hdCYmKHIuZm9ybWF0PXQuZm9ybWF0KSx2b2lkIDAhPT10LnR5cGUmJihyLnR5cGU9dC50eXBlKSx2b2lkIDAhPT10Lm1pcG1hcHMmJihyLm1pcG1hcHM9dC5taXBtYXBzLHIubWluRmlsdGVyPU1BKSwxPT09dC5taXBtYXBDb3VudCYmKHIubWluRmlsdGVyPXdBKSx2b2lkIDAhPT10LmdlbmVyYXRlTWlwbWFwcyYmKHIuZ2VuZXJhdGVNaXBtYXBzPXQuZ2VuZXJhdGVNaXBtYXBzKSxyLm5lZWRzVXBkYXRlPSEwLGUmJmUocix0KSl9KSx0LG4pLHJ9fWNsYXNzIGNFIGV4dGVuZHMgZUV7Y29uc3RydWN0b3IoQSl7c3VwZXIoQSl9bG9hZChBLGUsdCxuKXtjb25zdCBpPW5ldyBFbixyPW5ldyBzRSh0aGlzLm1hbmFnZXIpO3JldHVybiByLnNldENyb3NzT3JpZ2luKHRoaXMuY3Jvc3NPcmlnaW4pLHIuc2V0UGF0aCh0aGlzLnBhdGgpLHIubG9hZChBLChmdW5jdGlvbihBKXtpLmltYWdlPUEsaS5uZWVkc1VwZGF0ZT0hMCx2b2lkIDAhPT1lJiZlKGkpfSksdCxuKSxpfX1jbGFzcyBnRSBleHRlbmRzIHBpe2NvbnN0cnVjdG9yKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxO3N1cGVyKCksdGhpcy5pc0xpZ2h0PSEwLHRoaXMudHlwZT0iTGlnaHQiLHRoaXMuY29sb3I9bmV3IEppKEEpLHRoaXMuaW50ZW5zaXR5PWV9ZGlzcG9zZSgpe31jb3B5KEEsZSl7cmV0dXJuIHN1cGVyLmNvcHkoQSxlKSx0aGlzLmNvbG9yLmNvcHkoQS5jb2xvciksdGhpcy5pbnRlbnNpdHk9QS5pbnRlbnNpdHksdGhpc310b0pTT04oQSl7Y29uc3QgZT1zdXBlci50b0pTT04oQSk7cmV0dXJuIGUub2JqZWN0LmNvbG9yPXRoaXMuY29sb3IuZ2V0SGV4KCksZS5vYmplY3QuaW50ZW5zaXR5PXRoaXMuaW50ZW5zaXR5LHZvaWQgMCE9PXRoaXMuZ3JvdW5kQ29sb3ImJihlLm9iamVjdC5ncm91bmRDb2xvcj10aGlzLmdyb3VuZENvbG9yLmdldEhleCgpKSx2b2lkIDAhPT10aGlzLmRpc3RhbmNlJiYoZS5vYmplY3QuZGlzdGFuY2U9dGhpcy5kaXN0YW5jZSksdm9pZCAwIT09dGhpcy5hbmdsZSYmKGUub2JqZWN0LmFuZ2xlPXRoaXMuYW5nbGUpLHZvaWQgMCE9PXRoaXMuZGVjYXkmJihlLm9iamVjdC5kZWNheT10aGlzLmRlY2F5KSx2b2lkIDAhPT10aGlzLnBlbnVtYnJhJiYoZS5vYmplY3QucGVudW1icmE9dGhpcy5wZW51bWJyYSksdm9pZCAwIT09dGhpcy5zaGFkb3cmJihlLm9iamVjdC5zaGFkb3c9dGhpcy5zaGFkb3cudG9KU09OKCkpLGV9fWNsYXNzIEVFIGV4dGVuZHMgZ0V7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKEEsdCksdGhpcy5pc0hlbWlzcGhlcmVMaWdodD0hMCx0aGlzLnR5cGU9IkhlbWlzcGhlcmVMaWdodCIsdGhpcy5wb3NpdGlvbi5jb3B5KHBpLkRFRkFVTFRfVVApLHRoaXMudXBkYXRlTWF0cml4KCksdGhpcy5ncm91bmRDb2xvcj1uZXcgSmkoZSl9Y29weShBLGUpe3JldHVybiBzdXBlci5jb3B5KEEsZSksdGhpcy5ncm91bmRDb2xvci5jb3B5KEEuZ3JvdW5kQ29sb3IpLHRoaXN9fWNvbnN0IFFFPW5ldyBfbix1RT1uZXcgZG4sbEU9bmV3IGRuO2NsYXNzIGhFe2NvbnN0cnVjdG9yKEEpe3RoaXMuY2FtZXJhPUEsdGhpcy5iaWFzPTAsdGhpcy5ub3JtYWxCaWFzPTAsdGhpcy5yYWRpdXM9MSx0aGlzLmJsdXJTYW1wbGVzPTgsdGhpcy5tYXBTaXplPW5ldyBMdCg1MTIsNTEyKSx0aGlzLm1hcD1udWxsLHRoaXMubWFwUGFzcz1udWxsLHRoaXMubWF0cml4PW5ldyBfbix0aGlzLmF1dG9VcGRhdGU9ITAsdGhpcy5uZWVkc1VwZGF0ZT0hMSx0aGlzLl9mcnVzdHVtPW5ldyBxcix0aGlzLl9mcmFtZUV4dGVudHM9bmV3IEx0KDEsMSksdGhpcy5fdmlld3BvcnRDb3VudD0xLHRoaXMuX3ZpZXdwb3J0cz1bbmV3IFFuKDAsMCwxLDEpXX1nZXRWaWV3cG9ydENvdW50KCl7cmV0dXJuIHRoaXMuX3ZpZXdwb3J0Q291bnR9Z2V0RnJ1c3R1bSgpe3JldHVybiB0aGlzLl9mcnVzdHVtfXVwZGF0ZU1hdHJpY2VzKEEpe2NvbnN0IGU9dGhpcy5jYW1lcmEsdD10aGlzLm1hdHJpeDt1RS5zZXRGcm9tTWF0cml4UG9zaXRpb24oQS5tYXRyaXhXb3JsZCksZS5wb3NpdGlvbi5jb3B5KHVFKSxsRS5zZXRGcm9tTWF0cml4UG9zaXRpb24oQS50YXJnZXQubWF0cml4V29ybGQpLGUubG9va0F0KGxFKSxlLnVwZGF0ZU1hdHJpeFdvcmxkKCksUUUubXVsdGlwbHlNYXRyaWNlcyhlLnByb2plY3Rpb25NYXRyaXgsZS5tYXRyaXhXb3JsZEludmVyc2UpLHRoaXMuX2ZydXN0dW0uc2V0RnJvbVByb2plY3Rpb25NYXRyaXgoUUUpLHQuc2V0KC41LDAsMCwuNSwwLC41LDAsLjUsMCwwLC41LC41LDAsMCwwLDEpLHQubXVsdGlwbHkoUUUpfWdldFZpZXdwb3J0KEEpe3JldHVybiB0aGlzLl92aWV3cG9ydHNbQV19Z2V0RnJhbWVFeHRlbnRzKCl7cmV0dXJuIHRoaXMuX2ZyYW1lRXh0ZW50c31kaXNwb3NlKCl7dGhpcy5tYXAmJnRoaXMubWFwLmRpc3Bvc2UoKSx0aGlzLm1hcFBhc3MmJnRoaXMubWFwUGFzcy5kaXNwb3NlKCl9Y29weShBKXtyZXR1cm4gdGhpcy5jYW1lcmE9QS5jYW1lcmEuY2xvbmUoKSx0aGlzLmJpYXM9QS5iaWFzLHRoaXMucmFkaXVzPUEucmFkaXVzLHRoaXMubWFwU2l6ZS5jb3B5KEEubWFwU2l6ZSksdGhpc31jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX10b0pTT04oKXtjb25zdCBBPXt9O3JldHVybiAwIT09dGhpcy5iaWFzJiYoQS5iaWFzPXRoaXMuYmlhcyksMCE9PXRoaXMubm9ybWFsQmlhcyYmKEEubm9ybWFsQmlhcz10aGlzLm5vcm1hbEJpYXMpLDEhPT10aGlzLnJhZGl1cyYmKEEucmFkaXVzPXRoaXMucmFkaXVzKSw1MTI9PT10aGlzLm1hcFNpemUueCYmNTEyPT09dGhpcy5tYXBTaXplLnl8fChBLm1hcFNpemU9dGhpcy5tYXBTaXplLnRvQXJyYXkoKSksQS5jYW1lcmE9dGhpcy5jYW1lcmEudG9KU09OKCExKS5vYmplY3QsZGVsZXRlIEEuY2FtZXJhLm1hdHJpeCxBfX1jbGFzcyB3RSBleHRlbmRzIGhFe2NvbnN0cnVjdG9yKCl7c3VwZXIobmV3IHpyKDUwLDEsLjUsNTAwKSksdGhpcy5pc1Nwb3RMaWdodFNoYWRvdz0hMCx0aGlzLmZvY3VzPTF9dXBkYXRlTWF0cmljZXMoQSl7Y29uc3QgZT10aGlzLmNhbWVyYSx0PTIqeHQqQS5hbmdsZSp0aGlzLmZvY3VzLG49dGhpcy5tYXBTaXplLndpZHRoL3RoaXMubWFwU2l6ZS5oZWlnaHQsaT1BLmRpc3RhbmNlfHxlLmZhcjt0PT09ZS5mb3YmJm49PT1lLmFzcGVjdCYmaT09PWUuZmFyfHwoZS5mb3Y9dCxlLmFzcGVjdD1uLGUuZmFyPWksZS51cGRhdGVQcm9qZWN0aW9uTWF0cml4KCkpLHN1cGVyLnVwZGF0ZU1hdHJpY2VzKEEpfWNvcHkoQSl7cmV0dXJuIHN1cGVyLmNvcHkoQSksdGhpcy5mb2N1cz1BLmZvY3VzLHRoaXN9fWNsYXNzIENFIGV4dGVuZHMgZ0V7Y29uc3RydWN0b3IoQSxlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTpNYXRoLlBJLzMsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06MCxyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XToyO3N1cGVyKEEsZSksdGhpcy5pc1Nwb3RMaWdodD0hMCx0aGlzLnR5cGU9IlNwb3RMaWdodCIsdGhpcy5wb3NpdGlvbi5jb3B5KHBpLkRFRkFVTFRfVVApLHRoaXMudXBkYXRlTWF0cml4KCksdGhpcy50YXJnZXQ9bmV3IHBpLHRoaXMuZGlzdGFuY2U9dCx0aGlzLmFuZ2xlPW4sdGhpcy5wZW51bWJyYT1pLHRoaXMuZGVjYXk9cix0aGlzLm1hcD1udWxsLHRoaXMuc2hhZG93PW5ldyB3RX1nZXQgcG93ZXIoKXtyZXR1cm4gdGhpcy5pbnRlbnNpdHkqTWF0aC5QSX1zZXQgcG93ZXIoQSl7dGhpcy5pbnRlbnNpdHk9QS9NYXRoLlBJfWRpc3Bvc2UoKXt0aGlzLnNoYWRvdy5kaXNwb3NlKCl9Y29weShBLGUpe3JldHVybiBzdXBlci5jb3B5KEEsZSksdGhpcy5kaXN0YW5jZT1BLmRpc3RhbmNlLHRoaXMuYW5nbGU9QS5hbmdsZSx0aGlzLnBlbnVtYnJhPUEucGVudW1icmEsdGhpcy5kZWNheT1BLmRlY2F5LHRoaXMudGFyZ2V0PUEudGFyZ2V0LmNsb25lKCksdGhpcy5zaGFkb3c9QS5zaGFkb3cuY2xvbmUoKSx0aGlzfX1jb25zdCBJRT1uZXcgX24sTUU9bmV3IGRuLGRFPW5ldyBkbjtjbGFzcyBwRSBleHRlbmRzIGhFe2NvbnN0cnVjdG9yKCl7c3VwZXIobmV3IHpyKDkwLDEsLjUsNTAwKSksdGhpcy5pc1BvaW50TGlnaHRTaGFkb3c9ITAsdGhpcy5fZnJhbWVFeHRlbnRzPW5ldyBMdCg0LDIpLHRoaXMuX3ZpZXdwb3J0Q291bnQ9Nix0aGlzLl92aWV3cG9ydHM9W25ldyBRbigyLDEsMSwxKSxuZXcgUW4oMCwxLDEsMSksbmV3IFFuKDMsMSwxLDEpLG5ldyBRbigxLDEsMSwxKSxuZXcgUW4oMywwLDEsMSksbmV3IFFuKDEsMCwxLDEpXSx0aGlzLl9jdWJlRGlyZWN0aW9ucz1bbmV3IGRuKDEsMCwwKSxuZXcgZG4oLTEsMCwwKSxuZXcgZG4oMCwwLDEpLG5ldyBkbigwLDAsLTEpLG5ldyBkbigwLDEsMCksbmV3IGRuKDAsLTEsMCldLHRoaXMuX2N1YmVVcHM9W25ldyBkbigwLDEsMCksbmV3IGRuKDAsMSwwKSxuZXcgZG4oMCwxLDApLG5ldyBkbigwLDEsMCksbmV3IGRuKDAsMCwxKSxuZXcgZG4oMCwwLC0xKV19dXBkYXRlTWF0cmljZXMoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7Y29uc3QgdD10aGlzLmNhbWVyYSxuPXRoaXMubWF0cml4LGk9QS5kaXN0YW5jZXx8dC5mYXI7aSE9PXQuZmFyJiYodC5mYXI9aSx0LnVwZGF0ZVByb2plY3Rpb25NYXRyaXgoKSksTUUuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKEEubWF0cml4V29ybGQpLHQucG9zaXRpb24uY29weShNRSksZEUuY29weSh0LnBvc2l0aW9uKSxkRS5hZGQodGhpcy5fY3ViZURpcmVjdGlvbnNbZV0pLHQudXAuY29weSh0aGlzLl9jdWJlVXBzW2VdKSx0Lmxvb2tBdChkRSksdC51cGRhdGVNYXRyaXhXb3JsZCgpLG4ubWFrZVRyYW5zbGF0aW9uKC1NRS54LC1NRS55LC1NRS56KSxJRS5tdWx0aXBseU1hdHJpY2VzKHQucHJvamVjdGlvbk1hdHJpeCx0Lm1hdHJpeFdvcmxkSW52ZXJzZSksdGhpcy5fZnJ1c3R1bS5zZXRGcm9tUHJvamVjdGlvbk1hdHJpeChJRSl9fWNsYXNzIG1FIGV4dGVuZHMgZ0V7Y29uc3RydWN0b3IoQSxlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXToyO3N1cGVyKEEsZSksdGhpcy5pc1BvaW50TGlnaHQ9ITAsdGhpcy50eXBlPSJQb2ludExpZ2h0Iix0aGlzLmRpc3RhbmNlPXQsdGhpcy5kZWNheT1uLHRoaXMuc2hhZG93PW5ldyBwRX1nZXQgcG93ZXIoKXtyZXR1cm4gNCp0aGlzLmludGVuc2l0eSpNYXRoLlBJfXNldCBwb3dlcihBKXt0aGlzLmludGVuc2l0eT1BLyg0Kk1hdGguUEkpfWRpc3Bvc2UoKXt0aGlzLnNoYWRvdy5kaXNwb3NlKCl9Y29weShBLGUpe3JldHVybiBzdXBlci5jb3B5KEEsZSksdGhpcy5kaXN0YW5jZT1BLmRpc3RhbmNlLHRoaXMuZGVjYXk9QS5kZWNheSx0aGlzLnNoYWRvdz1BLnNoYWRvdy5jbG9uZSgpLHRoaXN9fWNsYXNzIEZFIGV4dGVuZHMgaEV7Y29uc3RydWN0b3IoKXtzdXBlcihuZXcgRW8oLTUsNSw1LC01LC41LDUwMCkpLHRoaXMuaXNEaXJlY3Rpb25hbExpZ2h0U2hhZG93PSEwfX1jbGFzcyBERSBleHRlbmRzIGdFe2NvbnN0cnVjdG9yKEEsZSl7c3VwZXIoQSxlKSx0aGlzLmlzRGlyZWN0aW9uYWxMaWdodD0hMCx0aGlzLnR5cGU9IkRpcmVjdGlvbmFsTGlnaHQiLHRoaXMucG9zaXRpb24uY29weShwaS5ERUZBVUxUX1VQKSx0aGlzLnVwZGF0ZU1hdHJpeCgpLHRoaXMudGFyZ2V0PW5ldyBwaSx0aGlzLnNoYWRvdz1uZXcgRkV9ZGlzcG9zZSgpe3RoaXMuc2hhZG93LmRpc3Bvc2UoKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMudGFyZ2V0PUEudGFyZ2V0LmNsb25lKCksdGhpcy5zaGFkb3c9QS5zaGFkb3cuY2xvbmUoKSx0aGlzfX1jbGFzcyBZRSBleHRlbmRzIGdFe2NvbnN0cnVjdG9yKEEsZSl7c3VwZXIoQSxlKSx0aGlzLmlzQW1iaWVudExpZ2h0PSEwLHRoaXMudHlwZT0iQW1iaWVudExpZ2h0In19Y2xhc3MgZkUgZXh0ZW5kcyBnRXtjb25zdHJ1Y3RvcihBLGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxMCxuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXToxMDtzdXBlcihBLGUpLHRoaXMuaXNSZWN0QXJlYUxpZ2h0PSEwLHRoaXMudHlwZT0iUmVjdEFyZWFMaWdodCIsdGhpcy53aWR0aD10LHRoaXMuaGVpZ2h0PW59Z2V0IHBvd2VyKCl7cmV0dXJuIHRoaXMuaW50ZW5zaXR5KnRoaXMud2lkdGgqdGhpcy5oZWlnaHQqTWF0aC5QSX1zZXQgcG93ZXIoQSl7dGhpcy5pbnRlbnNpdHk9QS8odGhpcy53aWR0aCp0aGlzLmhlaWdodCpNYXRoLlBJKX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMud2lkdGg9QS53aWR0aCx0aGlzLmhlaWdodD1BLmhlaWdodCx0aGlzfXRvSlNPTihBKXtjb25zdCBlPXN1cGVyLnRvSlNPTihBKTtyZXR1cm4gZS5vYmplY3Qud2lkdGg9dGhpcy53aWR0aCxlLm9iamVjdC5oZWlnaHQ9dGhpcy5oZWlnaHQsZX19Y2xhc3MgTkV7Y29uc3RydWN0b3IoKXt0aGlzLmlzU3BoZXJpY2FsSGFybW9uaWNzMz0hMCx0aGlzLmNvZWZmaWNpZW50cz1bXTtmb3IobGV0IEE9MDtBPDk7QSsrKXRoaXMuY29lZmZpY2llbnRzLnB1c2gobmV3IGRuKX1zZXQoQSl7Zm9yKGxldCBlPTA7ZTw5O2UrKyl0aGlzLmNvZWZmaWNpZW50c1tlXS5jb3B5KEFbZV0pO3JldHVybiB0aGlzfXplcm8oKXtmb3IobGV0IEE9MDtBPDk7QSsrKXRoaXMuY29lZmZpY2llbnRzW0FdLnNldCgwLDAsMCk7cmV0dXJuIHRoaXN9Z2V0QXQoQSxlKXtjb25zdCB0PUEueCxuPUEueSxpPUEueixyPXRoaXMuY29lZmZpY2llbnRzO3JldHVybiBlLmNvcHkoclswXSkubXVsdGlwbHlTY2FsYXIoLjI4MjA5NSksZS5hZGRTY2FsZWRWZWN0b3IoclsxXSwuNDg4NjAzKm4pLGUuYWRkU2NhbGVkVmVjdG9yKHJbMl0sLjQ4ODYwMyppKSxlLmFkZFNjYWxlZFZlY3RvcihyWzNdLC40ODg2MDMqdCksZS5hZGRTY2FsZWRWZWN0b3Iocls0XSx0Km4qMS4wOTI1NDgpLGUuYWRkU2NhbGVkVmVjdG9yKHJbNV0sbippKjEuMDkyNTQ4KSxlLmFkZFNjYWxlZFZlY3RvcihyWzZdLC4zMTUzOTIqKDMqaSppLTEpKSxlLmFkZFNjYWxlZFZlY3RvcihyWzddLHQqaSoxLjA5MjU0OCksZS5hZGRTY2FsZWRWZWN0b3Iocls4XSwuNTQ2Mjc0Kih0KnQtbipuKSksZX1nZXRJcnJhZGlhbmNlQXQoQSxlKXtjb25zdCB0PUEueCxuPUEueSxpPUEueixyPXRoaXMuY29lZmZpY2llbnRzO3JldHVybiBlLmNvcHkoclswXSkubXVsdGlwbHlTY2FsYXIoLjg4NjIyNyksZS5hZGRTY2FsZWRWZWN0b3IoclsxXSwxLjAyMzMyOCpuKSxlLmFkZFNjYWxlZFZlY3RvcihyWzJdLDEuMDIzMzI4KmkpLGUuYWRkU2NhbGVkVmVjdG9yKHJbM10sMS4wMjMzMjgqdCksZS5hZGRTY2FsZWRWZWN0b3Iocls0XSwuODU4MDg2KnQqbiksZS5hZGRTY2FsZWRWZWN0b3Iocls1XSwuODU4MDg2Km4qaSksZS5hZGRTY2FsZWRWZWN0b3Iocls2XSwuNzQzMTI1KmkqaS0uMjQ3NzA4KSxlLmFkZFNjYWxlZFZlY3RvcihyWzddLC44NTgwODYqdCppKSxlLmFkZFNjYWxlZFZlY3RvcihyWzhdLC40MjkwNDMqKHQqdC1uKm4pKSxlfWFkZChBKXtmb3IobGV0IGU9MDtlPDk7ZSsrKXRoaXMuY29lZmZpY2llbnRzW2VdLmFkZChBLmNvZWZmaWNpZW50c1tlXSk7cmV0dXJuIHRoaXN9YWRkU2NhbGVkU0goQSxlKXtmb3IobGV0IHQ9MDt0PDk7dCsrKXRoaXMuY29lZmZpY2llbnRzW3RdLmFkZFNjYWxlZFZlY3RvcihBLmNvZWZmaWNpZW50c1t0XSxlKTtyZXR1cm4gdGhpc31zY2FsZShBKXtmb3IobGV0IGU9MDtlPDk7ZSsrKXRoaXMuY29lZmZpY2llbnRzW2VdLm11bHRpcGx5U2NhbGFyKEEpO3JldHVybiB0aGlzfWxlcnAoQSxlKXtmb3IobGV0IHQ9MDt0PDk7dCsrKXRoaXMuY29lZmZpY2llbnRzW3RdLmxlcnAoQS5jb2VmZmljaWVudHNbdF0sZSk7cmV0dXJuIHRoaXN9ZXF1YWxzKEEpe2ZvcihsZXQgZT0wO2U8OTtlKyspaWYoIXRoaXMuY29lZmZpY2llbnRzW2VdLmVxdWFscyhBLmNvZWZmaWNpZW50c1tlXSkpcmV0dXJuITE7cmV0dXJuITB9Y29weShBKXtyZXR1cm4gdGhpcy5zZXQoQS5jb2VmZmljaWVudHMpfWNsb25lKCl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMpfWZyb21BcnJheShBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MDtjb25zdCB0PXRoaXMuY29lZmZpY2llbnRzO2ZvcihsZXQgbj0wO248OTtuKyspdFtuXS5mcm9tQXJyYXkoQSxlKzMqbik7cmV0dXJuIHRoaXN9dG9BcnJheSgpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpbXSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO2NvbnN0IHQ9dGhpcy5jb2VmZmljaWVudHM7Zm9yKGxldCBuPTA7bjw5O24rKyl0W25dLnRvQXJyYXkoQSxlKzMqbik7cmV0dXJuIEF9c3RhdGljIGdldEJhc2lzQXQoQSxlKXtjb25zdCB0PUEueCxuPUEueSxpPUEuejtlWzBdPS4yODIwOTUsZVsxXT0uNDg4NjAzKm4sZVsyXT0uNDg4NjAzKmksZVszXT0uNDg4NjAzKnQsZVs0XT0xLjA5MjU0OCp0Km4sZVs1XT0xLjA5MjU0OCpuKmksZVs2XT0uMzE1MzkyKigzKmkqaS0xKSxlWzddPTEuMDkyNTQ4KnQqaSxlWzhdPS41NDYyNzQqKHQqdC1uKm4pfX1jbGFzcyBVRSBleHRlbmRzIGdFe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBORTtzdXBlcih2b2lkIDAsYXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjEpLHRoaXMuaXNMaWdodFByb2JlPSEwLHRoaXMuc2g9QX1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuc2guY29weShBLnNoKSx0aGlzfWZyb21KU09OKEEpe3JldHVybiB0aGlzLmludGVuc2l0eT1BLmludGVuc2l0eSx0aGlzLnNoLmZyb21BcnJheShBLnNoKSx0aGlzfXRvSlNPTihBKXtjb25zdCBlPXN1cGVyLnRvSlNPTihBKTtyZXR1cm4gZS5vYmplY3Quc2g9dGhpcy5zaC50b0FycmF5KCksZX19Y2xhc3MgeUUgZXh0ZW5kcyBlRXtjb25zdHJ1Y3RvcihBKXtzdXBlcihBKSx0aGlzLnRleHR1cmVzPXt9fWxvYWQoQSxlLHQsbil7Y29uc3QgaT10aGlzLHI9bmV3IGlFKGkubWFuYWdlcik7ci5zZXRQYXRoKGkucGF0aCksci5zZXRSZXF1ZXN0SGVhZGVyKGkucmVxdWVzdEhlYWRlciksci5zZXRXaXRoQ3JlZGVudGlhbHMoaS53aXRoQ3JlZGVudGlhbHMpLHIubG9hZChBLChmdW5jdGlvbih0KXt0cnl7ZShpLnBhcnNlKEpTT04ucGFyc2UodCkpKX1jYXRjaChlKXtuP24oZSk6Y29uc29sZS5lcnJvcihlKSxpLm1hbmFnZXIuaXRlbUVycm9yKEEpfX0pLHQsbil9cGFyc2UoQSl7Y29uc3QgZT10aGlzLnRleHR1cmVzO2Z1bmN0aW9uIHQoQSl7cmV0dXJuIHZvaWQgMD09PWVbQV0mJmNvbnNvbGUud2FybigiVEhSRUUuTWF0ZXJpYWxMb2FkZXI6IFVuZGVmaW5lZCB0ZXh0dXJlIixBKSxlW0FdfWNvbnN0IG49eUUuY3JlYXRlTWF0ZXJpYWxGcm9tVHlwZShBLnR5cGUpO2lmKHZvaWQgMCE9PUEudXVpZCYmKG4udXVpZD1BLnV1aWQpLHZvaWQgMCE9PUEubmFtZSYmKG4ubmFtZT1BLm5hbWUpLHZvaWQgMCE9PUEuY29sb3ImJnZvaWQgMCE9PW4uY29sb3ImJm4uY29sb3Iuc2V0SGV4KEEuY29sb3IpLHZvaWQgMCE9PUEucm91Z2huZXNzJiYobi5yb3VnaG5lc3M9QS5yb3VnaG5lc3MpLHZvaWQgMCE9PUEubWV0YWxuZXNzJiYobi5tZXRhbG5lc3M9QS5tZXRhbG5lc3MpLHZvaWQgMCE9PUEuc2hlZW4mJihuLnNoZWVuPUEuc2hlZW4pLHZvaWQgMCE9PUEuc2hlZW5Db2xvciYmKG4uc2hlZW5Db2xvcj0obmV3IEppKS5zZXRIZXgoQS5zaGVlbkNvbG9yKSksdm9pZCAwIT09QS5zaGVlblJvdWdobmVzcyYmKG4uc2hlZW5Sb3VnaG5lc3M9QS5zaGVlblJvdWdobmVzcyksdm9pZCAwIT09QS5lbWlzc2l2ZSYmdm9pZCAwIT09bi5lbWlzc2l2ZSYmbi5lbWlzc2l2ZS5zZXRIZXgoQS5lbWlzc2l2ZSksdm9pZCAwIT09QS5zcGVjdWxhciYmdm9pZCAwIT09bi5zcGVjdWxhciYmbi5zcGVjdWxhci5zZXRIZXgoQS5zcGVjdWxhciksdm9pZCAwIT09QS5zcGVjdWxhckludGVuc2l0eSYmKG4uc3BlY3VsYXJJbnRlbnNpdHk9QS5zcGVjdWxhckludGVuc2l0eSksdm9pZCAwIT09QS5zcGVjdWxhckNvbG9yJiZ2b2lkIDAhPT1uLnNwZWN1bGFyQ29sb3ImJm4uc3BlY3VsYXJDb2xvci5zZXRIZXgoQS5zcGVjdWxhckNvbG9yKSx2b2lkIDAhPT1BLnNoaW5pbmVzcyYmKG4uc2hpbmluZXNzPUEuc2hpbmluZXNzKSx2b2lkIDAhPT1BLmNsZWFyY29hdCYmKG4uY2xlYXJjb2F0PUEuY2xlYXJjb2F0KSx2b2lkIDAhPT1BLmNsZWFyY29hdFJvdWdobmVzcyYmKG4uY2xlYXJjb2F0Um91Z2huZXNzPUEuY2xlYXJjb2F0Um91Z2huZXNzKSx2b2lkIDAhPT1BLmlyaWRlc2NlbmNlJiYobi5pcmlkZXNjZW5jZT1BLmlyaWRlc2NlbmNlKSx2b2lkIDAhPT1BLmlyaWRlc2NlbmNlSU9SJiYobi5pcmlkZXNjZW5jZUlPUj1BLmlyaWRlc2NlbmNlSU9SKSx2b2lkIDAhPT1BLmlyaWRlc2NlbmNlVGhpY2tuZXNzUmFuZ2UmJihuLmlyaWRlc2NlbmNlVGhpY2tuZXNzUmFuZ2U9QS5pcmlkZXNjZW5jZVRoaWNrbmVzc1JhbmdlKSx2b2lkIDAhPT1BLnRyYW5zbWlzc2lvbiYmKG4udHJhbnNtaXNzaW9uPUEudHJhbnNtaXNzaW9uKSx2b2lkIDAhPT1BLnRoaWNrbmVzcyYmKG4udGhpY2tuZXNzPUEudGhpY2tuZXNzKSx2b2lkIDAhPT1BLmF0dGVudWF0aW9uRGlzdGFuY2UmJihuLmF0dGVudWF0aW9uRGlzdGFuY2U9QS5hdHRlbnVhdGlvbkRpc3RhbmNlKSx2b2lkIDAhPT1BLmF0dGVudWF0aW9uQ29sb3ImJnZvaWQgMCE9PW4uYXR0ZW51YXRpb25Db2xvciYmbi5hdHRlbnVhdGlvbkNvbG9yLnNldEhleChBLmF0dGVudWF0aW9uQ29sb3IpLHZvaWQgMCE9PUEuYW5pc290cm9weSYmKG4uYW5pc290cm9weT1BLmFuaXNvdHJvcHkpLHZvaWQgMCE9PUEuYW5pc290cm9weVJvdGF0aW9uJiYobi5hbmlzb3Ryb3B5Um90YXRpb249QS5hbmlzb3Ryb3B5Um90YXRpb24pLHZvaWQgMCE9PUEuZm9nJiYobi5mb2c9QS5mb2cpLHZvaWQgMCE9PUEuZmxhdFNoYWRpbmcmJihuLmZsYXRTaGFkaW5nPUEuZmxhdFNoYWRpbmcpLHZvaWQgMCE9PUEuYmxlbmRpbmcmJihuLmJsZW5kaW5nPUEuYmxlbmRpbmcpLHZvaWQgMCE9PUEuY29tYmluZSYmKG4uY29tYmluZT1BLmNvbWJpbmUpLHZvaWQgMCE9PUEuc2lkZSYmKG4uc2lkZT1BLnNpZGUpLHZvaWQgMCE9PUEuc2hhZG93U2lkZSYmKG4uc2hhZG93U2lkZT1BLnNoYWRvd1NpZGUpLHZvaWQgMCE9PUEub3BhY2l0eSYmKG4ub3BhY2l0eT1BLm9wYWNpdHkpLHZvaWQgMCE9PUEudHJhbnNwYXJlbnQmJihuLnRyYW5zcGFyZW50PUEudHJhbnNwYXJlbnQpLHZvaWQgMCE9PUEuYWxwaGFUZXN0JiYobi5hbHBoYVRlc3Q9QS5hbHBoYVRlc3QpLHZvaWQgMCE9PUEuZGVwdGhUZXN0JiYobi5kZXB0aFRlc3Q9QS5kZXB0aFRlc3QpLHZvaWQgMCE9PUEuZGVwdGhXcml0ZSYmKG4uZGVwdGhXcml0ZT1BLmRlcHRoV3JpdGUpLHZvaWQgMCE9PUEuY29sb3JXcml0ZSYmKG4uY29sb3JXcml0ZT1BLmNvbG9yV3JpdGUpLHZvaWQgMCE9PUEuc3RlbmNpbFdyaXRlJiYobi5zdGVuY2lsV3JpdGU9QS5zdGVuY2lsV3JpdGUpLHZvaWQgMCE9PUEuc3RlbmNpbFdyaXRlTWFzayYmKG4uc3RlbmNpbFdyaXRlTWFzaz1BLnN0ZW5jaWxXcml0ZU1hc2spLHZvaWQgMCE9PUEuc3RlbmNpbEZ1bmMmJihuLnN0ZW5jaWxGdW5jPUEuc3RlbmNpbEZ1bmMpLHZvaWQgMCE9PUEuc3RlbmNpbFJlZiYmKG4uc3RlbmNpbFJlZj1BLnN0ZW5jaWxSZWYpLHZvaWQgMCE9PUEuc3RlbmNpbEZ1bmNNYXNrJiYobi5zdGVuY2lsRnVuY01hc2s9QS5zdGVuY2lsRnVuY01hc2spLHZvaWQgMCE9PUEuc3RlbmNpbEZhaWwmJihuLnN0ZW5jaWxGYWlsPUEuc3RlbmNpbEZhaWwpLHZvaWQgMCE9PUEuc3RlbmNpbFpGYWlsJiYobi5zdGVuY2lsWkZhaWw9QS5zdGVuY2lsWkZhaWwpLHZvaWQgMCE9PUEuc3RlbmNpbFpQYXNzJiYobi5zdGVuY2lsWlBhc3M9QS5zdGVuY2lsWlBhc3MpLHZvaWQgMCE9PUEud2lyZWZyYW1lJiYobi53aXJlZnJhbWU9QS53aXJlZnJhbWUpLHZvaWQgMCE9PUEud2lyZWZyYW1lTGluZXdpZHRoJiYobi53aXJlZnJhbWVMaW5ld2lkdGg9QS53aXJlZnJhbWVMaW5ld2lkdGgpLHZvaWQgMCE9PUEud2lyZWZyYW1lTGluZWNhcCYmKG4ud2lyZWZyYW1lTGluZWNhcD1BLndpcmVmcmFtZUxpbmVjYXApLHZvaWQgMCE9PUEud2lyZWZyYW1lTGluZWpvaW4mJihuLndpcmVmcmFtZUxpbmVqb2luPUEud2lyZWZyYW1lTGluZWpvaW4pLHZvaWQgMCE9PUEucm90YXRpb24mJihuLnJvdGF0aW9uPUEucm90YXRpb24pLDEhPT1BLmxpbmV3aWR0aCYmKG4ubGluZXdpZHRoPUEubGluZXdpZHRoKSx2b2lkIDAhPT1BLmRhc2hTaXplJiYobi5kYXNoU2l6ZT1BLmRhc2hTaXplKSx2b2lkIDAhPT1BLmdhcFNpemUmJihuLmdhcFNpemU9QS5nYXBTaXplKSx2b2lkIDAhPT1BLnNjYWxlJiYobi5zY2FsZT1BLnNjYWxlKSx2b2lkIDAhPT1BLnBvbHlnb25PZmZzZXQmJihuLnBvbHlnb25PZmZzZXQ9QS5wb2x5Z29uT2Zmc2V0KSx2b2lkIDAhPT1BLnBvbHlnb25PZmZzZXRGYWN0b3ImJihuLnBvbHlnb25PZmZzZXRGYWN0b3I9QS5wb2x5Z29uT2Zmc2V0RmFjdG9yKSx2b2lkIDAhPT1BLnBvbHlnb25PZmZzZXRVbml0cyYmKG4ucG9seWdvbk9mZnNldFVuaXRzPUEucG9seWdvbk9mZnNldFVuaXRzKSx2b2lkIDAhPT1BLmRpdGhlcmluZyYmKG4uZGl0aGVyaW5nPUEuZGl0aGVyaW5nKSx2b2lkIDAhPT1BLmFscGhhVG9Db3ZlcmFnZSYmKG4uYWxwaGFUb0NvdmVyYWdlPUEuYWxwaGFUb0NvdmVyYWdlKSx2b2lkIDAhPT1BLnByZW11bHRpcGxpZWRBbHBoYSYmKG4ucHJlbXVsdGlwbGllZEFscGhhPUEucHJlbXVsdGlwbGllZEFscGhhKSx2b2lkIDAhPT1BLmZvcmNlU2luZ2xlUGFzcyYmKG4uZm9yY2VTaW5nbGVQYXNzPUEuZm9yY2VTaW5nbGVQYXNzKSx2b2lkIDAhPT1BLnZpc2libGUmJihuLnZpc2libGU9QS52aXNpYmxlKSx2b2lkIDAhPT1BLnRvbmVNYXBwZWQmJihuLnRvbmVNYXBwZWQ9QS50b25lTWFwcGVkKSx2b2lkIDAhPT1BLnVzZXJEYXRhJiYobi51c2VyRGF0YT1BLnVzZXJEYXRhKSx2b2lkIDAhPT1BLnZlcnRleENvbG9ycyYmKCJudW1iZXIiPT10eXBlb2YgQS52ZXJ0ZXhDb2xvcnM/bi52ZXJ0ZXhDb2xvcnM9QS52ZXJ0ZXhDb2xvcnM+MDpuLnZlcnRleENvbG9ycz1BLnZlcnRleENvbG9ycyksdm9pZCAwIT09QS51bmlmb3Jtcylmb3IoY29uc3QgZSBpbiBBLnVuaWZvcm1zKXtjb25zdCBpPUEudW5pZm9ybXNbZV07c3dpdGNoKG4udW5pZm9ybXNbZV09e30saS50eXBlKXtjYXNlInQiOm4udW5pZm9ybXNbZV0udmFsdWU9dChpLnZhbHVlKTticmVhaztjYXNlImMiOm4udW5pZm9ybXNbZV0udmFsdWU9KG5ldyBKaSkuc2V0SGV4KGkudmFsdWUpO2JyZWFrO2Nhc2UidjIiOm4udW5pZm9ybXNbZV0udmFsdWU9KG5ldyBMdCkuZnJvbUFycmF5KGkudmFsdWUpO2JyZWFrO2Nhc2UidjMiOm4udW5pZm9ybXNbZV0udmFsdWU9KG5ldyBkbikuZnJvbUFycmF5KGkudmFsdWUpO2JyZWFrO2Nhc2UidjQiOm4udW5pZm9ybXNbZV0udmFsdWU9KG5ldyBRbikuZnJvbUFycmF5KGkudmFsdWUpO2JyZWFrO2Nhc2UibTMiOm4udW5pZm9ybXNbZV0udmFsdWU9KG5ldyBQdCkuZnJvbUFycmF5KGkudmFsdWUpO2JyZWFrO2Nhc2UibTQiOm4udW5pZm9ybXNbZV0udmFsdWU9KG5ldyBfbikuZnJvbUFycmF5KGkudmFsdWUpO2JyZWFrO2RlZmF1bHQ6bi51bmlmb3Jtc1tlXS52YWx1ZT1pLnZhbHVlfX1pZih2b2lkIDAhPT1BLmRlZmluZXMmJihuLmRlZmluZXM9QS5kZWZpbmVzKSx2b2lkIDAhPT1BLnZlcnRleFNoYWRlciYmKG4udmVydGV4U2hhZGVyPUEudmVydGV4U2hhZGVyKSx2b2lkIDAhPT1BLmZyYWdtZW50U2hhZGVyJiYobi5mcmFnbWVudFNoYWRlcj1BLmZyYWdtZW50U2hhZGVyKSx2b2lkIDAhPT1BLmdsc2xWZXJzaW9uJiYobi5nbHNsVmVyc2lvbj1BLmdsc2xWZXJzaW9uKSx2b2lkIDAhPT1BLmV4dGVuc2lvbnMpZm9yKGNvbnN0IGUgaW4gQS5leHRlbnNpb25zKW4uZXh0ZW5zaW9uc1tlXT1BLmV4dGVuc2lvbnNbZV07aWYodm9pZCAwIT09QS5saWdodHMmJihuLmxpZ2h0cz1BLmxpZ2h0cyksdm9pZCAwIT09QS5jbGlwcGluZyYmKG4uY2xpcHBpbmc9QS5jbGlwcGluZyksdm9pZCAwIT09QS5zaXplJiYobi5zaXplPUEuc2l6ZSksdm9pZCAwIT09QS5zaXplQXR0ZW51YXRpb24mJihuLnNpemVBdHRlbnVhdGlvbj1BLnNpemVBdHRlbnVhdGlvbiksdm9pZCAwIT09QS5tYXAmJihuLm1hcD10KEEubWFwKSksdm9pZCAwIT09QS5tYXRjYXAmJihuLm1hdGNhcD10KEEubWF0Y2FwKSksdm9pZCAwIT09QS5hbHBoYU1hcCYmKG4uYWxwaGFNYXA9dChBLmFscGhhTWFwKSksdm9pZCAwIT09QS5idW1wTWFwJiYobi5idW1wTWFwPXQoQS5idW1wTWFwKSksdm9pZCAwIT09QS5idW1wU2NhbGUmJihuLmJ1bXBTY2FsZT1BLmJ1bXBTY2FsZSksdm9pZCAwIT09QS5ub3JtYWxNYXAmJihuLm5vcm1hbE1hcD10KEEubm9ybWFsTWFwKSksdm9pZCAwIT09QS5ub3JtYWxNYXBUeXBlJiYobi5ub3JtYWxNYXBUeXBlPUEubm9ybWFsTWFwVHlwZSksdm9pZCAwIT09QS5ub3JtYWxTY2FsZSl7bGV0IGU9QS5ub3JtYWxTY2FsZTshMT09PUFycmF5LmlzQXJyYXkoZSkmJihlPVtlLGVdKSxuLm5vcm1hbFNjYWxlPShuZXcgTHQpLmZyb21BcnJheShlKX1yZXR1cm4gdm9pZCAwIT09QS5kaXNwbGFjZW1lbnRNYXAmJihuLmRpc3BsYWNlbWVudE1hcD10KEEuZGlzcGxhY2VtZW50TWFwKSksdm9pZCAwIT09QS5kaXNwbGFjZW1lbnRTY2FsZSYmKG4uZGlzcGxhY2VtZW50U2NhbGU9QS5kaXNwbGFjZW1lbnRTY2FsZSksdm9pZCAwIT09QS5kaXNwbGFjZW1lbnRCaWFzJiYobi5kaXNwbGFjZW1lbnRCaWFzPUEuZGlzcGxhY2VtZW50Qmlhcyksdm9pZCAwIT09QS5yb3VnaG5lc3NNYXAmJihuLnJvdWdobmVzc01hcD10KEEucm91Z2huZXNzTWFwKSksdm9pZCAwIT09QS5tZXRhbG5lc3NNYXAmJihuLm1ldGFsbmVzc01hcD10KEEubWV0YWxuZXNzTWFwKSksdm9pZCAwIT09QS5lbWlzc2l2ZU1hcCYmKG4uZW1pc3NpdmVNYXA9dChBLmVtaXNzaXZlTWFwKSksdm9pZCAwIT09QS5lbWlzc2l2ZUludGVuc2l0eSYmKG4uZW1pc3NpdmVJbnRlbnNpdHk9QS5lbWlzc2l2ZUludGVuc2l0eSksdm9pZCAwIT09QS5zcGVjdWxhck1hcCYmKG4uc3BlY3VsYXJNYXA9dChBLnNwZWN1bGFyTWFwKSksdm9pZCAwIT09QS5zcGVjdWxhckludGVuc2l0eU1hcCYmKG4uc3BlY3VsYXJJbnRlbnNpdHlNYXA9dChBLnNwZWN1bGFySW50ZW5zaXR5TWFwKSksdm9pZCAwIT09QS5zcGVjdWxhckNvbG9yTWFwJiYobi5zcGVjdWxhckNvbG9yTWFwPXQoQS5zcGVjdWxhckNvbG9yTWFwKSksdm9pZCAwIT09QS5lbnZNYXAmJihuLmVudk1hcD10KEEuZW52TWFwKSksdm9pZCAwIT09QS5lbnZNYXBJbnRlbnNpdHkmJihuLmVudk1hcEludGVuc2l0eT1BLmVudk1hcEludGVuc2l0eSksdm9pZCAwIT09QS5yZWZsZWN0aXZpdHkmJihuLnJlZmxlY3Rpdml0eT1BLnJlZmxlY3Rpdml0eSksdm9pZCAwIT09QS5yZWZyYWN0aW9uUmF0aW8mJihuLnJlZnJhY3Rpb25SYXRpbz1BLnJlZnJhY3Rpb25SYXRpbyksdm9pZCAwIT09QS5saWdodE1hcCYmKG4ubGlnaHRNYXA9dChBLmxpZ2h0TWFwKSksdm9pZCAwIT09QS5saWdodE1hcEludGVuc2l0eSYmKG4ubGlnaHRNYXBJbnRlbnNpdHk9QS5saWdodE1hcEludGVuc2l0eSksdm9pZCAwIT09QS5hb01hcCYmKG4uYW9NYXA9dChBLmFvTWFwKSksdm9pZCAwIT09QS5hb01hcEludGVuc2l0eSYmKG4uYW9NYXBJbnRlbnNpdHk9QS5hb01hcEludGVuc2l0eSksdm9pZCAwIT09QS5ncmFkaWVudE1hcCYmKG4uZ3JhZGllbnRNYXA9dChBLmdyYWRpZW50TWFwKSksdm9pZCAwIT09QS5jbGVhcmNvYXRNYXAmJihuLmNsZWFyY29hdE1hcD10KEEuY2xlYXJjb2F0TWFwKSksdm9pZCAwIT09QS5jbGVhcmNvYXRSb3VnaG5lc3NNYXAmJihuLmNsZWFyY29hdFJvdWdobmVzc01hcD10KEEuY2xlYXJjb2F0Um91Z2huZXNzTWFwKSksdm9pZCAwIT09QS5jbGVhcmNvYXROb3JtYWxNYXAmJihuLmNsZWFyY29hdE5vcm1hbE1hcD10KEEuY2xlYXJjb2F0Tm9ybWFsTWFwKSksdm9pZCAwIT09QS5jbGVhcmNvYXROb3JtYWxTY2FsZSYmKG4uY2xlYXJjb2F0Tm9ybWFsU2NhbGU9KG5ldyBMdCkuZnJvbUFycmF5KEEuY2xlYXJjb2F0Tm9ybWFsU2NhbGUpKSx2b2lkIDAhPT1BLmlyaWRlc2NlbmNlTWFwJiYobi5pcmlkZXNjZW5jZU1hcD10KEEuaXJpZGVzY2VuY2VNYXApKSx2b2lkIDAhPT1BLmlyaWRlc2NlbmNlVGhpY2tuZXNzTWFwJiYobi5pcmlkZXNjZW5jZVRoaWNrbmVzc01hcD10KEEuaXJpZGVzY2VuY2VUaGlja25lc3NNYXApKSx2b2lkIDAhPT1BLnRyYW5zbWlzc2lvbk1hcCYmKG4udHJhbnNtaXNzaW9uTWFwPXQoQS50cmFuc21pc3Npb25NYXApKSx2b2lkIDAhPT1BLnRoaWNrbmVzc01hcCYmKG4udGhpY2tuZXNzTWFwPXQoQS50aGlja25lc3NNYXApKSx2b2lkIDAhPT1BLmFuaXNvdHJvcHlNYXAmJihuLmFuaXNvdHJvcHlNYXA9dChBLmFuaXNvdHJvcHlNYXApKSx2b2lkIDAhPT1BLnNoZWVuQ29sb3JNYXAmJihuLnNoZWVuQ29sb3JNYXA9dChBLnNoZWVuQ29sb3JNYXApKSx2b2lkIDAhPT1BLnNoZWVuUm91Z2huZXNzTWFwJiYobi5zaGVlblJvdWdobmVzc01hcD10KEEuc2hlZW5Sb3VnaG5lc3NNYXApKSxufXNldFRleHR1cmVzKEEpe3JldHVybiB0aGlzLnRleHR1cmVzPUEsdGhpc31zdGF0aWMgY3JlYXRlTWF0ZXJpYWxGcm9tVHlwZShBKXtyZXR1cm4gbmV3e1NoYWRvd01hdGVyaWFsOmRnLFNwcml0ZU1hdGVyaWFsOmthLFJhd1NoYWRlck1hdGVyaWFsOnBnLFNoYWRlck1hdGVyaWFsOmpyLFBvaW50c01hdGVyaWFsOmtCLE1lc2hQaHlzaWNhbE1hdGVyaWFsOkZnLE1lc2hTdGFuZGFyZE1hdGVyaWFsOm1nLE1lc2hQaG9uZ01hdGVyaWFsOkRnLE1lc2hUb29uTWF0ZXJpYWw6WWcsTWVzaE5vcm1hbE1hdGVyaWFsOmZnLE1lc2hMYW1iZXJ0TWF0ZXJpYWw6TmcsTWVzaERlcHRoTWF0ZXJpYWw6aGEsTWVzaERpc3RhbmNlTWF0ZXJpYWw6d2EsTWVzaEJhc2ljTWF0ZXJpYWw6TGksTWVzaE1hdGNhcE1hdGVyaWFsOlVnLExpbmVEYXNoZWRNYXRlcmlhbDp5ZyxMaW5lQmFzaWNNYXRlcmlhbDpOQixNYXRlcmlhbDpiaX1bQV19fWNsYXNzIFRFe3N0YXRpYyBkZWNvZGVUZXh0KEEpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgVGV4dERlY29kZXIpcmV0dXJuKG5ldyBUZXh0RGVjb2RlcikuZGVjb2RlKEEpO2xldCBlPSIiO2ZvcihsZXQgdD0wLG49QS5sZW5ndGg7dDxuO3QrKyllKz1TdHJpbmcuZnJvbUNoYXJDb2RlKEFbdF0pO3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGVzY2FwZShlKSl9Y2F0Y2goQSl7cmV0dXJuIGV9fXN0YXRpYyBleHRyYWN0VXJsQmFzZShBKXtjb25zdCBlPUEubGFzdEluZGV4T2YoIi8iKTtyZXR1cm4tMT09PWU/Ii4vIjpBLnNsaWNlKDAsZSsxKX1zdGF0aWMgcmVzb2x2ZVVSTChBLGUpe3JldHVybiJzdHJpbmciIT10eXBlb2YgQXx8IiI9PT1BPyIiOigvXmh0dHBzPzpcL1wvL2kudGVzdChlKSYmL15cLy8udGVzdChBKSYmKGU9ZS5yZXBsYWNlKC8oXmh0dHBzPzpcL1wvW15cL10rKS4qL2ksIiQxIikpLC9eKGh0dHBzPzopP1wvXC8vaS50ZXN0KEEpfHwvXmRhdGE6LiosLiokL2kudGVzdChBKXx8L15ibG9iOi4qJC9pLnRlc3QoQSk/QTplK0EpfX1jbGFzcyB4RSBleHRlbmRzIGxye2NvbnN0cnVjdG9yKCl7c3VwZXIoKSx0aGlzLmlzSW5zdGFuY2VkQnVmZmVyR2VvbWV0cnk9ITAsdGhpcy50eXBlPSJJbnN0YW5jZWRCdWZmZXJHZW9tZXRyeSIsdGhpcy5pbnN0YW5jZUNvdW50PTEvMH1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMuaW5zdGFuY2VDb3VudD1BLmluc3RhbmNlQ291bnQsdGhpc310b0pTT04oKXtjb25zdCBBPXN1cGVyLnRvSlNPTigpO3JldHVybiBBLmluc3RhbmNlQ291bnQ9dGhpcy5pbnN0YW5jZUNvdW50LEEuaXNJbnN0YW5jZWRCdWZmZXJHZW9tZXRyeT0hMCxBfX1jbGFzcyBSRSBleHRlbmRzIGVFe2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpfWxvYWQoQSxlLHQsbil7Y29uc3QgaT10aGlzLHI9bmV3IGlFKGkubWFuYWdlcik7ci5zZXRQYXRoKGkucGF0aCksci5zZXRSZXF1ZXN0SGVhZGVyKGkucmVxdWVzdEhlYWRlciksci5zZXRXaXRoQ3JlZGVudGlhbHMoaS53aXRoQ3JlZGVudGlhbHMpLHIubG9hZChBLChmdW5jdGlvbih0KXt0cnl7ZShpLnBhcnNlKEpTT04ucGFyc2UodCkpKX1jYXRjaChlKXtuP24oZSk6Y29uc29sZS5lcnJvcihlKSxpLm1hbmFnZXIuaXRlbUVycm9yKEEpfX0pLHQsbil9cGFyc2UoQSl7Y29uc3QgZT17fSx0PXt9O2Z1bmN0aW9uIG4oQSxuKXtpZih2b2lkIDAhPT1lW25dKXJldHVybiBlW25dO2NvbnN0IGk9QS5pbnRlcmxlYXZlZEJ1ZmZlcnNbbl0scj1mdW5jdGlvbihBLGUpe2lmKHZvaWQgMCE9PXRbZV0pcmV0dXJuIHRbZV07Y29uc3Qgbj1BLmFycmF5QnVmZmVyc1tlXSxpPW5ldyBVaW50MzJBcnJheShuKS5idWZmZXI7cmV0dXJuIHRbZV09aSxpfShBLGkuYnVmZmVyKSxvPUt0KGkudHlwZSxyKSxzPW5ldyBiYShvLGkuc3RyaWRlKTtyZXR1cm4gcy51dWlkPWkudXVpZCxlW25dPXMsc31jb25zdCBpPUEuaXNJbnN0YW5jZWRCdWZmZXJHZW9tZXRyeT9uZXcgeEU6bmV3IGxyLHI9QS5kYXRhLmluZGV4O2lmKHZvaWQgMCE9PXIpe2NvbnN0IEE9S3Qoci50eXBlLHIuYXJyYXkpO2kuc2V0SW5kZXgobmV3IF9pKEEsMSkpfWNvbnN0IG89QS5kYXRhLmF0dHJpYnV0ZXM7Zm9yKGNvbnN0IGUgaW4gbyl7Y29uc3QgdD1vW2VdO2xldCByO2lmKHQuaXNJbnRlcmxlYXZlZEJ1ZmZlckF0dHJpYnV0ZSl7Y29uc3QgZT1uKEEuZGF0YSx0LmRhdGEpO3I9bmV3IHZhKGUsdC5pdGVtU2l6ZSx0Lm9mZnNldCx0Lm5vcm1hbGl6ZWQpfWVsc2V7Y29uc3QgQT1LdCh0LnR5cGUsdC5hcnJheSk7cj1uZXcodC5pc0luc3RhbmNlZEJ1ZmZlckF0dHJpYnV0ZT9JQjpfaSkoQSx0Lml0ZW1TaXplLHQubm9ybWFsaXplZCl9dm9pZCAwIT09dC5uYW1lJiYoci5uYW1lPXQubmFtZSksdm9pZCAwIT09dC51c2FnZSYmci5zZXRVc2FnZSh0LnVzYWdlKSx2b2lkIDAhPT10LnVwZGF0ZVJhbmdlJiYoci51cGRhdGVSYW5nZS5vZmZzZXQ9dC51cGRhdGVSYW5nZS5vZmZzZXQsci51cGRhdGVSYW5nZS5jb3VudD10LnVwZGF0ZVJhbmdlLmNvdW50KSxpLnNldEF0dHJpYnV0ZShlLHIpfWNvbnN0IHM9QS5kYXRhLm1vcnBoQXR0cmlidXRlcztpZihzKWZvcihjb25zdCBlIGluIHMpe2NvbnN0IHQ9c1tlXSxyPVtdO2ZvcihsZXQgZT0wLGk9dC5sZW5ndGg7ZTxpO2UrKyl7Y29uc3QgaT10W2VdO2xldCBvO2lmKGkuaXNJbnRlcmxlYXZlZEJ1ZmZlckF0dHJpYnV0ZSl7Y29uc3QgZT1uKEEuZGF0YSxpLmRhdGEpO289bmV3IHZhKGUsaS5pdGVtU2l6ZSxpLm9mZnNldCxpLm5vcm1hbGl6ZWQpfWVsc2V7Y29uc3QgQT1LdChpLnR5cGUsaS5hcnJheSk7bz1uZXcgX2koQSxpLml0ZW1TaXplLGkubm9ybWFsaXplZCl9dm9pZCAwIT09aS5uYW1lJiYoby5uYW1lPWkubmFtZSksci5wdXNoKG8pfWkubW9ycGhBdHRyaWJ1dGVzW2VdPXJ9QS5kYXRhLm1vcnBoVGFyZ2V0c1JlbGF0aXZlJiYoaS5tb3JwaFRhcmdldHNSZWxhdGl2ZT0hMCk7Y29uc3QgYT1BLmRhdGEuZ3JvdXBzfHxBLmRhdGEuZHJhd2NhbGxzfHxBLmRhdGEub2Zmc2V0cztpZih2b2lkIDAhPT1hKWZvcihsZXQgQT0wLGU9YS5sZW5ndGg7QSE9PWU7KytBKXtjb25zdCBlPWFbQV07aS5hZGRHcm91cChlLnN0YXJ0LGUuY291bnQsZS5tYXRlcmlhbEluZGV4KX1jb25zdCBCPUEuZGF0YS5ib3VuZGluZ1NwaGVyZTtpZih2b2lkIDAhPT1CKXtjb25zdCBBPW5ldyBkbjt2b2lkIDAhPT1CLmNlbnRlciYmQS5mcm9tQXJyYXkoQi5jZW50ZXIpLGkuYm91bmRpbmdTcGhlcmU9bmV3IHpuKEEsQi5yYWRpdXMpfXJldHVybiBBLm5hbWUmJihpLm5hbWU9QS5uYW1lKSxBLnVzZXJEYXRhJiYoaS51c2VyRGF0YT1BLnVzZXJEYXRhKSxpfX1jbGFzcyBHRSBleHRlbmRzIGVFe2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpfWxvYWQoQSxlLHQsbil7Y29uc3QgaT10aGlzLHI9IiI9PT10aGlzLnBhdGg/VEUuZXh0cmFjdFVybEJhc2UoQSk6dGhpcy5wYXRoO3RoaXMucmVzb3VyY2VQYXRoPXRoaXMucmVzb3VyY2VQYXRofHxyO2NvbnN0IG89bmV3IGlFKHRoaXMubWFuYWdlcik7by5zZXRQYXRoKHRoaXMucGF0aCksby5zZXRSZXF1ZXN0SGVhZGVyKHRoaXMucmVxdWVzdEhlYWRlciksby5zZXRXaXRoQ3JlZGVudGlhbHModGhpcy53aXRoQ3JlZGVudGlhbHMpLG8ubG9hZChBLChmdW5jdGlvbih0KXtsZXQgcj1udWxsO3RyeXtyPUpTT04ucGFyc2UodCl9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgMCE9PW4mJm4oZSksdm9pZCBjb25zb2xlLmVycm9yKCJUSFJFRTpPYmplY3RMb2FkZXI6IENhbid0IHBhcnNlICIrQSsiLiIsZS5tZXNzYWdlKX1jb25zdCBvPXIubWV0YWRhdGE7aWYodm9pZCAwPT09b3x8dm9pZCAwPT09by50eXBlfHwiZ2VvbWV0cnkiPT09by50eXBlLnRvTG93ZXJDYXNlKCkpcmV0dXJuIHZvaWQgMCE9PW4mJm4obmV3IEVycm9yKCJUSFJFRS5PYmplY3RMb2FkZXI6IENhbid0IGxvYWQgIitBKSksdm9pZCBjb25zb2xlLmVycm9yKCJUSFJFRS5PYmplY3RMb2FkZXI6IENhbid0IGxvYWQgIitBKTtpLnBhcnNlKHIsZSl9KSx0LG4pfWFzeW5jIGxvYWRBc3luYyhBLGUpe2NvbnN0IHQ9IiI9PT10aGlzLnBhdGg/VEUuZXh0cmFjdFVybEJhc2UoQSk6dGhpcy5wYXRoO3RoaXMucmVzb3VyY2VQYXRoPXRoaXMucmVzb3VyY2VQYXRofHx0O2NvbnN0IG49bmV3IGlFKHRoaXMubWFuYWdlcik7bi5zZXRQYXRoKHRoaXMucGF0aCksbi5zZXRSZXF1ZXN0SGVhZGVyKHRoaXMucmVxdWVzdEhlYWRlciksbi5zZXRXaXRoQ3JlZGVudGlhbHModGhpcy53aXRoQ3JlZGVudGlhbHMpO2NvbnN0IGk9YXdhaXQgbi5sb2FkQXN5bmMoQSxlKSxyPUpTT04ucGFyc2UoaSksbz1yLm1ldGFkYXRhO2lmKHZvaWQgMD09PW98fHZvaWQgMD09PW8udHlwZXx8Imdlb21ldHJ5Ij09PW8udHlwZS50b0xvd2VyQ2FzZSgpKXRocm93IG5ldyBFcnJvcigiVEhSRUUuT2JqZWN0TG9hZGVyOiBDYW4ndCBsb2FkICIrQSk7cmV0dXJuIGF3YWl0IHRoaXMucGFyc2VBc3luYyhyKX1wYXJzZShBLGUpe2NvbnN0IHQ9dGhpcy5wYXJzZUFuaW1hdGlvbnMoQS5hbmltYXRpb25zKSxuPXRoaXMucGFyc2VTaGFwZXMoQS5zaGFwZXMpLGk9dGhpcy5wYXJzZUdlb21ldHJpZXMoQS5nZW9tZXRyaWVzLG4pLHI9dGhpcy5wYXJzZUltYWdlcyhBLmltYWdlcywoZnVuY3Rpb24oKXt2b2lkIDAhPT1lJiZlKGEpfSkpLG89dGhpcy5wYXJzZVRleHR1cmVzKEEudGV4dHVyZXMscikscz10aGlzLnBhcnNlTWF0ZXJpYWxzKEEubWF0ZXJpYWxzLG8pLGE9dGhpcy5wYXJzZU9iamVjdChBLm9iamVjdCxpLHMsbyx0KSxCPXRoaXMucGFyc2VTa2VsZXRvbnMoQS5za2VsZXRvbnMsYSk7aWYodGhpcy5iaW5kU2tlbGV0b25zKGEsQiksdm9pZCAwIT09ZSl7bGV0IEE9ITE7Zm9yKGNvbnN0IGUgaW4gcilpZihyW2VdLmRhdGEgaW5zdGFuY2VvZiBIVE1MSW1hZ2VFbGVtZW50KXtBPSEwO2JyZWFrfSExPT09QSYmZShhKX1yZXR1cm4gYX1hc3luYyBwYXJzZUFzeW5jKEEpe2NvbnN0IGU9dGhpcy5wYXJzZUFuaW1hdGlvbnMoQS5hbmltYXRpb25zKSx0PXRoaXMucGFyc2VTaGFwZXMoQS5zaGFwZXMpLG49dGhpcy5wYXJzZUdlb21ldHJpZXMoQS5nZW9tZXRyaWVzLHQpLGk9YXdhaXQgdGhpcy5wYXJzZUltYWdlc0FzeW5jKEEuaW1hZ2VzKSxyPXRoaXMucGFyc2VUZXh0dXJlcyhBLnRleHR1cmVzLGkpLG89dGhpcy5wYXJzZU1hdGVyaWFscyhBLm1hdGVyaWFscyxyKSxzPXRoaXMucGFyc2VPYmplY3QoQS5vYmplY3QsbixvLHIsZSksYT10aGlzLnBhcnNlU2tlbGV0b25zKEEuc2tlbGV0b25zLHMpO3JldHVybiB0aGlzLmJpbmRTa2VsZXRvbnMocyxhKSxzfXBhcnNlU2hhcGVzKEEpe2NvbnN0IGU9e307aWYodm9pZCAwIT09QSlmb3IobGV0IHQ9MCxuPUEubGVuZ3RoO3Q8bjt0Kyspe2NvbnN0IG49KG5ldyBUYykuZnJvbUpTT04oQVt0XSk7ZVtuLnV1aWRdPW59cmV0dXJuIGV9cGFyc2VTa2VsZXRvbnMoQSxlKXtjb25zdCB0PXt9LG49e307aWYoZS50cmF2ZXJzZSgoZnVuY3Rpb24oQSl7QS5pc0JvbmUmJihuW0EudXVpZF09QSl9KSksdm9pZCAwIT09QSlmb3IobGV0IGU9MCxpPUEubGVuZ3RoO2U8aTtlKyspe2NvbnN0IGk9KG5ldyBDQikuZnJvbUpTT04oQVtlXSxuKTt0W2kudXVpZF09aX1yZXR1cm4gdH1wYXJzZUdlb21ldHJpZXMoQSxlKXtjb25zdCB0PXt9O2lmKHZvaWQgMCE9PUEpe2NvbnN0IG49bmV3IFJFO2ZvcihsZXQgaT0wLHI9QS5sZW5ndGg7aTxyO2krKyl7bGV0IHI7Y29uc3Qgbz1BW2ldO3N3aXRjaChvLnR5cGUpe2Nhc2UiQnVmZmVyR2VvbWV0cnkiOmNhc2UiSW5zdGFuY2VkQnVmZmVyR2VvbWV0cnkiOnI9bi5wYXJzZShvKTticmVhaztkZWZhdWx0Om8udHlwZSBpbiBNZz9yPU1nW28udHlwZV0uZnJvbUpTT04obyxlKTpjb25zb2xlLndhcm4oJ1RIUkVFLk9iamVjdExvYWRlcjogVW5zdXBwb3J0ZWQgZ2VvbWV0cnkgdHlwZSAiJy5jb25jYXQoby50eXBlLCciJykpfXIudXVpZD1vLnV1aWQsdm9pZCAwIT09by5uYW1lJiYoci5uYW1lPW8ubmFtZSksdm9pZCAwIT09by51c2VyRGF0YSYmKHIudXNlckRhdGE9by51c2VyRGF0YSksdFtvLnV1aWRdPXJ9fXJldHVybiB0fXBhcnNlTWF0ZXJpYWxzKEEsZSl7Y29uc3QgdD17fSxuPXt9O2lmKHZvaWQgMCE9PUEpe2NvbnN0IGk9bmV3IHlFO2kuc2V0VGV4dHVyZXMoZSk7Zm9yKGxldCBlPTAscj1BLmxlbmd0aDtlPHI7ZSsrKXtjb25zdCByPUFbZV07dm9pZCAwPT09dFtyLnV1aWRdJiYodFtyLnV1aWRdPWkucGFyc2UocikpLG5bci51dWlkXT10W3IudXVpZF19fXJldHVybiBufXBhcnNlQW5pbWF0aW9ucyhBKXtjb25zdCBlPXt9O2lmKHZvaWQgMCE9PUEpZm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0Kyspe2NvbnN0IG49QVt0XSxpPVpnLnBhcnNlKG4pO2VbaS51dWlkXT1pfXJldHVybiBlfXBhcnNlSW1hZ2VzKEEsZSl7Y29uc3QgdD10aGlzLG49e307bGV0IGk7ZnVuY3Rpb24gcihBKXtpZigic3RyaW5nIj09dHlwZW9mIEEpe2NvbnN0IGU9QTtyZXR1cm4gZnVuY3Rpb24oQSl7cmV0dXJuIHQubWFuYWdlci5pdGVtU3RhcnQoQSksaS5sb2FkKEEsKGZ1bmN0aW9uKCl7dC5tYW5hZ2VyLml0ZW1FbmQoQSl9KSx2b2lkIDAsKGZ1bmN0aW9uKCl7dC5tYW5hZ2VyLml0ZW1FcnJvcihBKSx0Lm1hbmFnZXIuaXRlbUVuZChBKX0pKX0oL14oXC9cLyl8KFthLXpdKzooXC9cLyk/KS9pLnRlc3QoZSk/ZTp0LnJlc291cmNlUGF0aCtlKX1yZXR1cm4gQS5kYXRhP3tkYXRhOkt0KEEudHlwZSxBLmRhdGEpLHdpZHRoOkEud2lkdGgsaGVpZ2h0OkEuaGVpZ2h0fTpudWxsfWlmKHZvaWQgMCE9PUEmJkEubGVuZ3RoPjApe2NvbnN0IHQ9bmV3ICRnKGUpO2k9bmV3IHNFKHQpLGkuc2V0Q3Jvc3NPcmlnaW4odGhpcy5jcm9zc09yaWdpbik7Zm9yKGxldCBlPTAsdD1BLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PUFbZV0saT10LnVybDtpZihBcnJheS5pc0FycmF5KGkpKXtjb25zdCBBPVtdO2ZvcihsZXQgZT0wLHQ9aS5sZW5ndGg7ZTx0O2UrKyl7Y29uc3QgdD1yKGlbZV0pO251bGwhPT10JiYodCBpbnN0YW5jZW9mIEhUTUxJbWFnZUVsZW1lbnQ/QS5wdXNoKHQpOkEucHVzaChuZXcgbEIodC5kYXRhLHQud2lkdGgsdC5oZWlnaHQpKSl9blt0LnV1aWRdPW5ldyBCbihBKX1lbHNle2NvbnN0IEE9cih0LnVybCk7blt0LnV1aWRdPW5ldyBCbihBKX19fXJldHVybiBufWFzeW5jIHBhcnNlSW1hZ2VzQXN5bmMoQSl7Y29uc3QgZT10aGlzLHQ9e307bGV0IG47YXN5bmMgZnVuY3Rpb24gaShBKXtpZigic3RyaW5nIj09dHlwZW9mIEEpe2NvbnN0IHQ9QSxpPS9eKFwvXC8pfChbYS16XSs6KFwvXC8pPykvaS50ZXN0KHQpP3Q6ZS5yZXNvdXJjZVBhdGgrdDtyZXR1cm4gYXdhaXQgbi5sb2FkQXN5bmMoaSl9cmV0dXJuIEEuZGF0YT97ZGF0YTpLdChBLnR5cGUsQS5kYXRhKSx3aWR0aDpBLndpZHRoLGhlaWdodDpBLmhlaWdodH06bnVsbH1pZih2b2lkIDAhPT1BJiZBLmxlbmd0aD4wKXtuPW5ldyBzRSh0aGlzLm1hbmFnZXIpLG4uc2V0Q3Jvc3NPcmlnaW4odGhpcy5jcm9zc09yaWdpbik7Zm9yKGxldCBlPTAsbj1BLmxlbmd0aDtlPG47ZSsrKXtjb25zdCBuPUFbZV0scj1uLnVybDtpZihBcnJheS5pc0FycmF5KHIpKXtjb25zdCBBPVtdO2ZvcihsZXQgZT0wLHQ9ci5sZW5ndGg7ZTx0O2UrKyl7Y29uc3QgdD1yW2VdLG49YXdhaXQgaSh0KTtudWxsIT09biYmKG4gaW5zdGFuY2VvZiBIVE1MSW1hZ2VFbGVtZW50P0EucHVzaChuKTpBLnB1c2gobmV3IGxCKG4uZGF0YSxuLndpZHRoLG4uaGVpZ2h0KSkpfXRbbi51dWlkXT1uZXcgQm4oQSl9ZWxzZXtjb25zdCBBPWF3YWl0IGkobi51cmwpO3Rbbi51dWlkXT1uZXcgQm4oQSl9fX1yZXR1cm4gdH1wYXJzZVRleHR1cmVzKEEsZSl7ZnVuY3Rpb24gdChBLGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgQT9BOihjb25zb2xlLndhcm4oIlRIUkVFLk9iamVjdExvYWRlci5wYXJzZVRleHR1cmU6IENvbnN0YW50IHNob3VsZCBiZSBpbiBudW1lcmljIGZvcm0uIixBKSxlW0FdKX1jb25zdCBuPXt9O2lmKHZvaWQgMCE9PUEpZm9yKGxldCBpPTAscj1BLmxlbmd0aDtpPHI7aSsrKXtjb25zdCByPUFbaV07dm9pZCAwPT09ci5pbWFnZSYmY29uc29sZS53YXJuKCdUSFJFRS5PYmplY3RMb2FkZXI6IE5vICJpbWFnZSIgc3BlY2lmaWVkIGZvcicsci51dWlkKSx2b2lkIDA9PT1lW3IuaW1hZ2VdJiZjb25zb2xlLndhcm4oIlRIUkVFLk9iamVjdExvYWRlcjogVW5kZWZpbmVkIGltYWdlIixyLmltYWdlKTtjb25zdCBvPWVbci5pbWFnZV0scz1vLmRhdGE7bGV0IGE7QXJyYXkuaXNBcnJheShzKT8oYT1uZXcgUHIsNj09PXMubGVuZ3RoJiYoYS5uZWVkc1VwZGF0ZT0hMCkpOihhPXMmJnMuZGF0YT9uZXcgbEI6bmV3IEVuLHMmJihhLm5lZWRzVXBkYXRlPSEwKSksYS5zb3VyY2U9byxhLnV1aWQ9ci51dWlkLHZvaWQgMCE9PXIubmFtZSYmKGEubmFtZT1yLm5hbWUpLHZvaWQgMCE9PXIubWFwcGluZyYmKGEubWFwcGluZz10KHIubWFwcGluZyxTRSkpLHZvaWQgMCE9PXIuY2hhbm5lbCYmKGEuY2hhbm5lbD1yLmNoYW5uZWwpLHZvaWQgMCE9PXIub2Zmc2V0JiZhLm9mZnNldC5mcm9tQXJyYXkoci5vZmZzZXQpLHZvaWQgMCE9PXIucmVwZWF0JiZhLnJlcGVhdC5mcm9tQXJyYXkoci5yZXBlYXQpLHZvaWQgMCE9PXIuY2VudGVyJiZhLmNlbnRlci5mcm9tQXJyYXkoci5jZW50ZXIpLHZvaWQgMCE9PXIucm90YXRpb24mJihhLnJvdGF0aW9uPXIucm90YXRpb24pLHZvaWQgMCE9PXIud3JhcCYmKGEud3JhcFM9dChyLndyYXBbMF0sYkUpLGEud3JhcFQ9dChyLndyYXBbMV0sYkUpKSx2b2lkIDAhPT1yLmZvcm1hdCYmKGEuZm9ybWF0PXIuZm9ybWF0KSx2b2lkIDAhPT1yLmludGVybmFsRm9ybWF0JiYoYS5pbnRlcm5hbEZvcm1hdD1yLmludGVybmFsRm9ybWF0KSx2b2lkIDAhPT1yLnR5cGUmJihhLnR5cGU9ci50eXBlKSx2b2lkIDAhPT1yLmNvbG9yU3BhY2UmJihhLmNvbG9yU3BhY2U9ci5jb2xvclNwYWNlKSx2b2lkIDAhPT1yLmVuY29kaW5nJiYoYS5lbmNvZGluZz1yLmVuY29kaW5nKSx2b2lkIDAhPT1yLm1pbkZpbHRlciYmKGEubWluRmlsdGVyPXQoci5taW5GaWx0ZXIsSEUpKSx2b2lkIDAhPT1yLm1hZ0ZpbHRlciYmKGEubWFnRmlsdGVyPXQoci5tYWdGaWx0ZXIsSEUpKSx2b2lkIDAhPT1yLmFuaXNvdHJvcHkmJihhLmFuaXNvdHJvcHk9ci5hbmlzb3Ryb3B5KSx2b2lkIDAhPT1yLmZsaXBZJiYoYS5mbGlwWT1yLmZsaXBZKSx2b2lkIDAhPT1yLmdlbmVyYXRlTWlwbWFwcyYmKGEuZ2VuZXJhdGVNaXBtYXBzPXIuZ2VuZXJhdGVNaXBtYXBzKSx2b2lkIDAhPT1yLnByZW11bHRpcGx5QWxwaGEmJihhLnByZW11bHRpcGx5QWxwaGE9ci5wcmVtdWx0aXBseUFscGhhKSx2b2lkIDAhPT1yLnVucGFja0FsaWdubWVudCYmKGEudW5wYWNrQWxpZ25tZW50PXIudW5wYWNrQWxpZ25tZW50KSx2b2lkIDAhPT1yLmNvbXBhcmVGdW5jdGlvbiYmKGEuY29tcGFyZUZ1bmN0aW9uPXIuY29tcGFyZUZ1bmN0aW9uKSx2b2lkIDAhPT1yLnVzZXJEYXRhJiYoYS51c2VyRGF0YT1yLnVzZXJEYXRhKSxuW3IudXVpZF09YX1yZXR1cm4gbn1wYXJzZU9iamVjdChBLGUsdCxuLGkpe2xldCByLG8scztmdW5jdGlvbiBhKEEpe3JldHVybiB2b2lkIDA9PT1lW0FdJiZjb25zb2xlLndhcm4oIlRIUkVFLk9iamVjdExvYWRlcjogVW5kZWZpbmVkIGdlb21ldHJ5IixBKSxlW0FdfWZ1bmN0aW9uIEIoQSl7aWYodm9pZCAwIT09QSl7aWYoQXJyYXkuaXNBcnJheShBKSl7Y29uc3QgZT1bXTtmb3IobGV0IG49MCxpPUEubGVuZ3RoO248aTtuKyspe2NvbnN0IGk9QVtuXTt2b2lkIDA9PT10W2ldJiZjb25zb2xlLndhcm4oIlRIUkVFLk9iamVjdExvYWRlcjogVW5kZWZpbmVkIG1hdGVyaWFsIixpKSxlLnB1c2godFtpXSl9cmV0dXJuIGV9cmV0dXJuIHZvaWQgMD09PXRbQV0mJmNvbnNvbGUud2FybigiVEhSRUUuT2JqZWN0TG9hZGVyOiBVbmRlZmluZWQgbWF0ZXJpYWwiLEEpLHRbQV19fWZ1bmN0aW9uIGMoQSl7cmV0dXJuIHZvaWQgMD09PW5bQV0mJmNvbnNvbGUud2FybigiVEhSRUUuT2JqZWN0TG9hZGVyOiBVbmRlZmluZWQgdGV4dHVyZSIsQSksbltBXX1zd2l0Y2goQS50eXBlKXtjYXNlIlNjZW5lIjpyPW5ldyBTYSx2b2lkIDAhPT1BLmJhY2tncm91bmQmJihOdW1iZXIuaXNJbnRlZ2VyKEEuYmFja2dyb3VuZCk/ci5iYWNrZ3JvdW5kPW5ldyBKaShBLmJhY2tncm91bmQpOnIuYmFja2dyb3VuZD1jKEEuYmFja2dyb3VuZCkpLHZvaWQgMCE9PUEuZW52aXJvbm1lbnQmJihyLmVudmlyb25tZW50PWMoQS5lbnZpcm9ubWVudCkpLHZvaWQgMCE9PUEuZm9nJiYoIkZvZyI9PT1BLmZvZy50eXBlP3IuZm9nPW5ldyBHYShBLmZvZy5jb2xvcixBLmZvZy5uZWFyLEEuZm9nLmZhcik6IkZvZ0V4cDIiPT09QS5mb2cudHlwZSYmKHIuZm9nPW5ldyBSYShBLmZvZy5jb2xvcixBLmZvZy5kZW5zaXR5KSkpLHZvaWQgMCE9PUEuYmFja2dyb3VuZEJsdXJyaW5lc3MmJihyLmJhY2tncm91bmRCbHVycmluZXNzPUEuYmFja2dyb3VuZEJsdXJyaW5lc3MpLHZvaWQgMCE9PUEuYmFja2dyb3VuZEludGVuc2l0eSYmKHIuYmFja2dyb3VuZEludGVuc2l0eT1BLmJhY2tncm91bmRJbnRlbnNpdHkpO2JyZWFrO2Nhc2UiUGVyc3BlY3RpdmVDYW1lcmEiOnI9bmV3IHpyKEEuZm92LEEuYXNwZWN0LEEubmVhcixBLmZhciksdm9pZCAwIT09QS5mb2N1cyYmKHIuZm9jdXM9QS5mb2N1cyksdm9pZCAwIT09QS56b29tJiYoci56b29tPUEuem9vbSksdm9pZCAwIT09QS5maWxtR2F1Z2UmJihyLmZpbG1HYXVnZT1BLmZpbG1HYXVnZSksdm9pZCAwIT09QS5maWxtT2Zmc2V0JiYoci5maWxtT2Zmc2V0PUEuZmlsbU9mZnNldCksdm9pZCAwIT09QS52aWV3JiYoci52aWV3PU9iamVjdC5hc3NpZ24oe30sQS52aWV3KSk7YnJlYWs7Y2FzZSJPcnRob2dyYXBoaWNDYW1lcmEiOnI9bmV3IEVvKEEubGVmdCxBLnJpZ2h0LEEudG9wLEEuYm90dG9tLEEubmVhcixBLmZhciksdm9pZCAwIT09QS56b29tJiYoci56b29tPUEuem9vbSksdm9pZCAwIT09QS52aWV3JiYoci52aWV3PU9iamVjdC5hc3NpZ24oe30sQS52aWV3KSk7YnJlYWs7Y2FzZSJBbWJpZW50TGlnaHQiOnI9bmV3IFlFKEEuY29sb3IsQS5pbnRlbnNpdHkpO2JyZWFrO2Nhc2UiRGlyZWN0aW9uYWxMaWdodCI6cj1uZXcgREUoQS5jb2xvcixBLmludGVuc2l0eSk7YnJlYWs7Y2FzZSJQb2ludExpZ2h0IjpyPW5ldyBtRShBLmNvbG9yLEEuaW50ZW5zaXR5LEEuZGlzdGFuY2UsQS5kZWNheSk7YnJlYWs7Y2FzZSJSZWN0QXJlYUxpZ2h0IjpyPW5ldyBmRShBLmNvbG9yLEEuaW50ZW5zaXR5LEEud2lkdGgsQS5oZWlnaHQpO2JyZWFrO2Nhc2UiU3BvdExpZ2h0IjpyPW5ldyBDRShBLmNvbG9yLEEuaW50ZW5zaXR5LEEuZGlzdGFuY2UsQS5hbmdsZSxBLnBlbnVtYnJhLEEuZGVjYXkpO2JyZWFrO2Nhc2UiSGVtaXNwaGVyZUxpZ2h0IjpyPW5ldyBFRShBLmNvbG9yLEEuZ3JvdW5kQ29sb3IsQS5pbnRlbnNpdHkpO2JyZWFrO2Nhc2UiTGlnaHRQcm9iZSI6cj0obmV3IFVFKS5mcm9tSlNPTihBKTticmVhaztjYXNlIlNraW5uZWRNZXNoIjpvPWEoQS5nZW9tZXRyeSkscz1CKEEubWF0ZXJpYWwpLHI9bmV3IFFCKG8scyksdm9pZCAwIT09QS5iaW5kTW9kZSYmKHIuYmluZE1vZGU9QS5iaW5kTW9kZSksdm9pZCAwIT09QS5iaW5kTWF0cml4JiZyLmJpbmRNYXRyaXguZnJvbUFycmF5KEEuYmluZE1hdHJpeCksdm9pZCAwIT09QS5za2VsZXRvbiYmKHIuc2tlbGV0b249QS5za2VsZXRvbik7YnJlYWs7Y2FzZSJNZXNoIjpvPWEoQS5nZW9tZXRyeSkscz1CKEEubWF0ZXJpYWwpLHI9bmV3IFJyKG8scyk7YnJlYWs7Y2FzZSJJbnN0YW5jZWRNZXNoIjpvPWEoQS5nZW9tZXRyeSkscz1CKEEubWF0ZXJpYWwpO2NvbnN0IGU9QS5jb3VudCx0PUEuaW5zdGFuY2VNYXRyaXgsbj1BLmluc3RhbmNlQ29sb3I7cj1uZXcgZkIobyxzLGUpLHIuaW5zdGFuY2VNYXRyaXg9bmV3IElCKG5ldyBGbG9hdDMyQXJyYXkodC5hcnJheSksMTYpLHZvaWQgMCE9PW4mJihyLmluc3RhbmNlQ29sb3I9bmV3IElCKG5ldyBGbG9hdDMyQXJyYXkobi5hcnJheSksbi5pdGVtU2l6ZSkpO2JyZWFrO2Nhc2UiTE9EIjpyPW5ldyBuQjticmVhaztjYXNlIkxpbmUiOnI9bmV3IEdCKGEoQS5nZW9tZXRyeSksQihBLm1hdGVyaWFsKSk7YnJlYWs7Y2FzZSJMaW5lTG9vcCI6cj1uZXcgdkIoYShBLmdlb21ldHJ5KSxCKEEubWF0ZXJpYWwpKTticmVhaztjYXNlIkxpbmVTZWdtZW50cyI6cj1uZXcgSEIoYShBLmdlb21ldHJ5KSxCKEEubWF0ZXJpYWwpKTticmVhaztjYXNlIlBvaW50Q2xvdWQiOmNhc2UiUG9pbnRzIjpyPW5ldyBQQihhKEEuZ2VvbWV0cnkpLEIoQS5tYXRlcmlhbCkpO2JyZWFrO2Nhc2UiU3ByaXRlIjpyPW5ldyAkYShCKEEubWF0ZXJpYWwpKTticmVhaztjYXNlIkdyb3VwIjpyPW5ldyBtYTticmVhaztjYXNlIkJvbmUiOnI9bmV3IHVCO2JyZWFrO2RlZmF1bHQ6cj1uZXcgcGl9aWYoci51dWlkPUEudXVpZCx2b2lkIDAhPT1BLm5hbWUmJihyLm5hbWU9QS5uYW1lKSx2b2lkIDAhPT1BLm1hdHJpeD8oci5tYXRyaXguZnJvbUFycmF5KEEubWF0cml4KSx2b2lkIDAhPT1BLm1hdHJpeEF1dG9VcGRhdGUmJihyLm1hdHJpeEF1dG9VcGRhdGU9QS5tYXRyaXhBdXRvVXBkYXRlKSxyLm1hdHJpeEF1dG9VcGRhdGUmJnIubWF0cml4LmRlY29tcG9zZShyLnBvc2l0aW9uLHIucXVhdGVybmlvbixyLnNjYWxlKSk6KHZvaWQgMCE9PUEucG9zaXRpb24mJnIucG9zaXRpb24uZnJvbUFycmF5KEEucG9zaXRpb24pLHZvaWQgMCE9PUEucm90YXRpb24mJnIucm90YXRpb24uZnJvbUFycmF5KEEucm90YXRpb24pLHZvaWQgMCE9PUEucXVhdGVybmlvbiYmci5xdWF0ZXJuaW9uLmZyb21BcnJheShBLnF1YXRlcm5pb24pLHZvaWQgMCE9PUEuc2NhbGUmJnIuc2NhbGUuZnJvbUFycmF5KEEuc2NhbGUpKSx2b2lkIDAhPT1BLnVwJiZyLnVwLmZyb21BcnJheShBLnVwKSx2b2lkIDAhPT1BLmNhc3RTaGFkb3cmJihyLmNhc3RTaGFkb3c9QS5jYXN0U2hhZG93KSx2b2lkIDAhPT1BLnJlY2VpdmVTaGFkb3cmJihyLnJlY2VpdmVTaGFkb3c9QS5yZWNlaXZlU2hhZG93KSxBLnNoYWRvdyYmKHZvaWQgMCE9PUEuc2hhZG93LmJpYXMmJihyLnNoYWRvdy5iaWFzPUEuc2hhZG93LmJpYXMpLHZvaWQgMCE9PUEuc2hhZG93Lm5vcm1hbEJpYXMmJihyLnNoYWRvdy5ub3JtYWxCaWFzPUEuc2hhZG93Lm5vcm1hbEJpYXMpLHZvaWQgMCE9PUEuc2hhZG93LnJhZGl1cyYmKHIuc2hhZG93LnJhZGl1cz1BLnNoYWRvdy5yYWRpdXMpLHZvaWQgMCE9PUEuc2hhZG93Lm1hcFNpemUmJnIuc2hhZG93Lm1hcFNpemUuZnJvbUFycmF5KEEuc2hhZG93Lm1hcFNpemUpLHZvaWQgMCE9PUEuc2hhZG93LmNhbWVyYSYmKHIuc2hhZG93LmNhbWVyYT10aGlzLnBhcnNlT2JqZWN0KEEuc2hhZG93LmNhbWVyYSkpKSx2b2lkIDAhPT1BLnZpc2libGUmJihyLnZpc2libGU9QS52aXNpYmxlKSx2b2lkIDAhPT1BLmZydXN0dW1DdWxsZWQmJihyLmZydXN0dW1DdWxsZWQ9QS5mcnVzdHVtQ3VsbGVkKSx2b2lkIDAhPT1BLnJlbmRlck9yZGVyJiYoci5yZW5kZXJPcmRlcj1BLnJlbmRlck9yZGVyKSx2b2lkIDAhPT1BLnVzZXJEYXRhJiYoci51c2VyRGF0YT1BLnVzZXJEYXRhKSx2b2lkIDAhPT1BLmxheWVycyYmKHIubGF5ZXJzLm1hc2s9QS5sYXllcnMpLHZvaWQgMCE9PUEuY2hpbGRyZW4pe2NvbnN0IG89QS5jaGlsZHJlbjtmb3IobGV0IEE9MDtBPG8ubGVuZ3RoO0ErKylyLmFkZCh0aGlzLnBhcnNlT2JqZWN0KG9bQV0sZSx0LG4saSkpfWlmKHZvaWQgMCE9PUEuYW5pbWF0aW9ucyl7Y29uc3QgZT1BLmFuaW1hdGlvbnM7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspe2NvbnN0IHQ9ZVtBXTtyLmFuaW1hdGlvbnMucHVzaChpW3RdKX19aWYoIkxPRCI9PT1BLnR5cGUpe3ZvaWQgMCE9PUEuYXV0b1VwZGF0ZSYmKHIuYXV0b1VwZGF0ZT1BLmF1dG9VcGRhdGUpO2NvbnN0IGU9QS5sZXZlbHM7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspe2NvbnN0IHQ9ZVtBXSxuPXIuZ2V0T2JqZWN0QnlQcm9wZXJ0eSgidXVpZCIsdC5vYmplY3QpO3ZvaWQgMCE9PW4mJnIuYWRkTGV2ZWwobix0LmRpc3RhbmNlLHQuaHlzdGVyZXNpcyl9fXJldHVybiByfWJpbmRTa2VsZXRvbnMoQSxlKXswIT09T2JqZWN0LmtleXMoZSkubGVuZ3RoJiZBLnRyYXZlcnNlKChmdW5jdGlvbihBKXtpZighMD09PUEuaXNTa2lubmVkTWVzaCYmdm9pZCAwIT09QS5za2VsZXRvbil7Y29uc3QgdD1lW0Euc2tlbGV0b25dO3ZvaWQgMD09PXQ/Y29uc29sZS53YXJuKCJUSFJFRS5PYmplY3RMb2FkZXI6IE5vIHNrZWxldG9uIGZvdW5kIHdpdGggVVVJRDoiLEEuc2tlbGV0b24pOkEuYmluZCh0LEEuYmluZE1hdHJpeCl9fSkpfX1jb25zdCBTRT17VVZNYXBwaW5nOm5BLEN1YmVSZWZsZWN0aW9uTWFwcGluZzppQSxDdWJlUmVmcmFjdGlvbk1hcHBpbmc6ckEsRXF1aXJlY3Rhbmd1bGFyUmVmbGVjdGlvbk1hcHBpbmc6b0EsRXF1aXJlY3Rhbmd1bGFyUmVmcmFjdGlvbk1hcHBpbmc6c0EsQ3ViZVVWUmVmbGVjdGlvbk1hcHBpbmc6YUF9LGJFPXtSZXBlYXRXcmFwcGluZzpCQSxDbGFtcFRvRWRnZVdyYXBwaW5nOmNBLE1pcnJvcmVkUmVwZWF0V3JhcHBpbmc6Z0F9LEhFPXtOZWFyZXN0RmlsdGVyOkVBLE5lYXJlc3RNaXBtYXBOZWFyZXN0RmlsdGVyOlFBLE5lYXJlc3RNaXBtYXBMaW5lYXJGaWx0ZXI6bEEsTGluZWFyRmlsdGVyOndBLExpbmVhck1pcG1hcE5lYXJlc3RGaWx0ZXI6Q0EsTGluZWFyTWlwbWFwTGluZWFyRmlsdGVyOk1BfTtjbGFzcyB2RSBleHRlbmRzIGVFe2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpLHRoaXMuaXNJbWFnZUJpdG1hcExvYWRlcj0hMCwidW5kZWZpbmVkIj09dHlwZW9mIGNyZWF0ZUltYWdlQml0bWFwJiZjb25zb2xlLndhcm4oIlRIUkVFLkltYWdlQml0bWFwTG9hZGVyOiBjcmVhdGVJbWFnZUJpdG1hcCgpIG5vdCBzdXBwb3J0ZWQuIiksInVuZGVmaW5lZCI9PXR5cGVvZiBmZXRjaCYmY29uc29sZS53YXJuKCJUSFJFRS5JbWFnZUJpdG1hcExvYWRlcjogZmV0Y2goKSBub3Qgc3VwcG9ydGVkLiIpLHRoaXMub3B0aW9ucz17cHJlbXVsdGlwbHlBbHBoYToibm9uZSJ9fXNldE9wdGlvbnMoQSl7cmV0dXJuIHRoaXMub3B0aW9ucz1BLHRoaXN9bG9hZChBLGUsdCxuKXt2b2lkIDA9PT1BJiYoQT0iIiksdm9pZCAwIT09dGhpcy5wYXRoJiYoQT10aGlzLnBhdGgrQSksQT10aGlzLm1hbmFnZXIucmVzb2x2ZVVSTChBKTtjb25zdCBpPXRoaXMscj1xZy5nZXQoQSk7aWYodm9pZCAwIT09cilyZXR1cm4gaS5tYW5hZ2VyLml0ZW1TdGFydChBKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2UmJmUociksaS5tYW5hZ2VyLml0ZW1FbmQoQSl9KSwwKSxyO2NvbnN0IG89e307by5jcmVkZW50aWFscz0iYW5vbnltb3VzIj09PXRoaXMuY3Jvc3NPcmlnaW4/InNhbWUtb3JpZ2luIjoiaW5jbHVkZSIsby5oZWFkZXJzPXRoaXMucmVxdWVzdEhlYWRlcixmZXRjaChBLG8pLnRoZW4oKGZ1bmN0aW9uKEEpe3JldHVybiBBLmJsb2IoKX0pKS50aGVuKChmdW5jdGlvbihBKXtyZXR1cm4gY3JlYXRlSW1hZ2VCaXRtYXAoQSxPYmplY3QuYXNzaWduKGkub3B0aW9ucyx7Y29sb3JTcGFjZUNvbnZlcnNpb246Im5vbmUifSkpfSkpLnRoZW4oKGZ1bmN0aW9uKHQpe3FnLmFkZChBLHQpLGUmJmUodCksaS5tYW5hZ2VyLml0ZW1FbmQoQSl9KSkuY2F0Y2goKGZ1bmN0aW9uKGUpe24mJm4oZSksaS5tYW5hZ2VyLml0ZW1FcnJvcihBKSxpLm1hbmFnZXIuaXRlbUVuZChBKX0pKSxpLm1hbmFnZXIuaXRlbVN0YXJ0KEEpfX1sZXQga0U7Y2xhc3MgakV7c3RhdGljIGdldENvbnRleHQoKXtyZXR1cm4gdm9pZCAwPT09a0UmJihrRT1uZXcod2luZG93LkF1ZGlvQ29udGV4dHx8d2luZG93LndlYmtpdEF1ZGlvQ29udGV4dCkpLGtFfXN0YXRpYyBzZXRDb250ZXh0KEEpe2tFPUF9fWNsYXNzIEpFIGV4dGVuZHMgZUV7Y29uc3RydWN0b3IoQSl7c3VwZXIoQSl9bG9hZChBLGUsdCxuKXtjb25zdCBpPXRoaXMscj1uZXcgaUUodGhpcy5tYW5hZ2VyKTtmdW5jdGlvbiBvKGUpe24/bihlKTpjb25zb2xlLmVycm9yKGUpLGkubWFuYWdlci5pdGVtRXJyb3IoQSl9ci5zZXRSZXNwb25zZVR5cGUoImFycmF5YnVmZmVyIiksci5zZXRQYXRoKHRoaXMucGF0aCksci5zZXRSZXF1ZXN0SGVhZGVyKHRoaXMucmVxdWVzdEhlYWRlciksci5zZXRXaXRoQ3JlZGVudGlhbHModGhpcy53aXRoQ3JlZGVudGlhbHMpLHIubG9hZChBLChmdW5jdGlvbihBKXt0cnl7Y29uc3QgdD1BLnNsaWNlKDApO2pFLmdldENvbnRleHQoKS5kZWNvZGVBdWRpb0RhdGEodCwoZnVuY3Rpb24oQSl7ZShBKX0pLG8pfWNhdGNoKEEpe28oQSl9fSksdCxuKX19Y2xhc3MgekUgZXh0ZW5kcyBVRXtjb25zdHJ1Y3RvcihBLGUpe3N1cGVyKHZvaWQgMCxhcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MSksdGhpcy5pc0hlbWlzcGhlcmVMaWdodFByb2JlPSEwO2NvbnN0IHQ9KG5ldyBKaSkuc2V0KEEpLG49KG5ldyBKaSkuc2V0KGUpLGk9bmV3IGRuKHQucix0LmcsdC5iKSxyPW5ldyBkbihuLnIsbi5nLG4uYiksbz1NYXRoLnNxcnQoTWF0aC5QSSkscz1vKk1hdGguc3FydCguNzUpO3RoaXMuc2guY29lZmZpY2llbnRzWzBdLmNvcHkoaSkuYWRkKHIpLm11bHRpcGx5U2NhbGFyKG8pLHRoaXMuc2guY29lZmZpY2llbnRzWzFdLmNvcHkoaSkuc3ViKHIpLm11bHRpcGx5U2NhbGFyKHMpfX1jbGFzcyBMRSBleHRlbmRzIFVFe2NvbnN0cnVjdG9yKEEpe3N1cGVyKHZvaWQgMCxhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MSksdGhpcy5pc0FtYmllbnRMaWdodFByb2JlPSEwO2NvbnN0IGU9KG5ldyBKaSkuc2V0KEEpO3RoaXMuc2guY29lZmZpY2llbnRzWzBdLnNldChlLnIsZS5nLGUuYikubXVsdGlwbHlTY2FsYXIoMipNYXRoLnNxcnQoTWF0aC5QSSkpfX1jb25zdCBQRT1uZXcgX24sT0U9bmV3IF9uLFZFPW5ldyBfbjtjbGFzcyBXRXtjb25zdHJ1Y3Rvcigpe3RoaXMudHlwZT0iU3RlcmVvQ2FtZXJhIix0aGlzLmFzcGVjdD0xLHRoaXMuZXllU2VwPS4wNjQsdGhpcy5jYW1lcmFMPW5ldyB6cix0aGlzLmNhbWVyYUwubGF5ZXJzLmVuYWJsZSgxKSx0aGlzLmNhbWVyYUwubWF0cml4QXV0b1VwZGF0ZT0hMSx0aGlzLmNhbWVyYVI9bmV3IHpyLHRoaXMuY2FtZXJhUi5sYXllcnMuZW5hYmxlKDIpLHRoaXMuY2FtZXJhUi5tYXRyaXhBdXRvVXBkYXRlPSExLHRoaXMuX2NhY2hlPXtmb2N1czpudWxsLGZvdjpudWxsLGFzcGVjdDpudWxsLG5lYXI6bnVsbCxmYXI6bnVsbCx6b29tOm51bGwsZXllU2VwOm51bGx9fXVwZGF0ZShBKXtjb25zdCBlPXRoaXMuX2NhY2hlO2lmKGUuZm9jdXMhPT1BLmZvY3VzfHxlLmZvdiE9PUEuZm92fHxlLmFzcGVjdCE9PUEuYXNwZWN0KnRoaXMuYXNwZWN0fHxlLm5lYXIhPT1BLm5lYXJ8fGUuZmFyIT09QS5mYXJ8fGUuem9vbSE9PUEuem9vbXx8ZS5leWVTZXAhPT10aGlzLmV5ZVNlcCl7ZS5mb2N1cz1BLmZvY3VzLGUuZm92PUEuZm92LGUuYXNwZWN0PUEuYXNwZWN0KnRoaXMuYXNwZWN0LGUubmVhcj1BLm5lYXIsZS5mYXI9QS5mYXIsZS56b29tPUEuem9vbSxlLmV5ZVNlcD10aGlzLmV5ZVNlcCxWRS5jb3B5KEEucHJvamVjdGlvbk1hdHJpeCk7Y29uc3QgdD1lLmV5ZVNlcC8yLG49dCplLm5lYXIvZS5mb2N1cyxpPWUubmVhcipNYXRoLnRhbihUdCplLmZvdiouNSkvZS56b29tO2xldCByLG87T0UuZWxlbWVudHNbMTJdPS10LFBFLmVsZW1lbnRzWzEyXT10LHI9LWkqZS5hc3BlY3QrbixvPWkqZS5hc3BlY3QrbixWRS5lbGVtZW50c1swXT0yKmUubmVhci8oby1yKSxWRS5lbGVtZW50c1s4XT0obytyKS8oby1yKSx0aGlzLmNhbWVyYUwucHJvamVjdGlvbk1hdHJpeC5jb3B5KFZFKSxyPS1pKmUuYXNwZWN0LW4sbz1pKmUuYXNwZWN0LW4sVkUuZWxlbWVudHNbMF09MiplLm5lYXIvKG8tciksVkUuZWxlbWVudHNbOF09KG8rcikvKG8tciksdGhpcy5jYW1lcmFSLnByb2plY3Rpb25NYXRyaXguY29weShWRSl9dGhpcy5jYW1lcmFMLm1hdHJpeFdvcmxkLmNvcHkoQS5tYXRyaXhXb3JsZCkubXVsdGlwbHkoT0UpLHRoaXMuY2FtZXJhUi5tYXRyaXhXb3JsZC5jb3B5KEEubWF0cml4V29ybGQpLm11bHRpcGx5KFBFKX19Y2xhc3MgS0V7Y29uc3RydWN0b3IoKXtsZXQgQT0hKGFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdKXx8YXJndW1lbnRzWzBdO3RoaXMuYXV0b1N0YXJ0PUEsdGhpcy5zdGFydFRpbWU9MCx0aGlzLm9sZFRpbWU9MCx0aGlzLmVsYXBzZWRUaW1lPTAsdGhpcy5ydW5uaW5nPSExfXN0YXJ0KCl7dGhpcy5zdGFydFRpbWU9WEUoKSx0aGlzLm9sZFRpbWU9dGhpcy5zdGFydFRpbWUsdGhpcy5lbGFwc2VkVGltZT0wLHRoaXMucnVubmluZz0hMH1zdG9wKCl7dGhpcy5nZXRFbGFwc2VkVGltZSgpLHRoaXMucnVubmluZz0hMSx0aGlzLmF1dG9TdGFydD0hMX1nZXRFbGFwc2VkVGltZSgpe3JldHVybiB0aGlzLmdldERlbHRhKCksdGhpcy5lbGFwc2VkVGltZX1nZXREZWx0YSgpe2xldCBBPTA7aWYodGhpcy5hdXRvU3RhcnQmJiF0aGlzLnJ1bm5pbmcpcmV0dXJuIHRoaXMuc3RhcnQoKSwwO2lmKHRoaXMucnVubmluZyl7Y29uc3QgZT1YRSgpO0E9KGUtdGhpcy5vbGRUaW1lKS8xZTMsdGhpcy5vbGRUaW1lPWUsdGhpcy5lbGFwc2VkVGltZSs9QX1yZXR1cm4gQX19ZnVuY3Rpb24gWEUoKXtyZXR1cm4oInVuZGVmaW5lZCI9PXR5cGVvZiBwZXJmb3JtYW5jZT9EYXRlOnBlcmZvcm1hbmNlKS5ub3coKX1jb25zdCBaRT1uZXcgZG4sX0U9bmV3IE1uLHFFPW5ldyBkbiwkRT1uZXcgZG47Y2xhc3MgQVEgZXh0ZW5kcyBwaXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy50eXBlPSJBdWRpb0xpc3RlbmVyIix0aGlzLmNvbnRleHQ9akUuZ2V0Q29udGV4dCgpLHRoaXMuZ2Fpbj10aGlzLmNvbnRleHQuY3JlYXRlR2FpbigpLHRoaXMuZ2Fpbi5jb25uZWN0KHRoaXMuY29udGV4dC5kZXN0aW5hdGlvbiksdGhpcy5maWx0ZXI9bnVsbCx0aGlzLnRpbWVEZWx0YT0wLHRoaXMuX2Nsb2NrPW5ldyBLRX1nZXRJbnB1dCgpe3JldHVybiB0aGlzLmdhaW59cmVtb3ZlRmlsdGVyKCl7cmV0dXJuIG51bGwhPT10aGlzLmZpbHRlciYmKHRoaXMuZ2Fpbi5kaXNjb25uZWN0KHRoaXMuZmlsdGVyKSx0aGlzLmZpbHRlci5kaXNjb25uZWN0KHRoaXMuY29udGV4dC5kZXN0aW5hdGlvbiksdGhpcy5nYWluLmNvbm5lY3QodGhpcy5jb250ZXh0LmRlc3RpbmF0aW9uKSx0aGlzLmZpbHRlcj1udWxsKSx0aGlzfWdldEZpbHRlcigpe3JldHVybiB0aGlzLmZpbHRlcn1zZXRGaWx0ZXIoQSl7cmV0dXJuIG51bGwhPT10aGlzLmZpbHRlcj8odGhpcy5nYWluLmRpc2Nvbm5lY3QodGhpcy5maWx0ZXIpLHRoaXMuZmlsdGVyLmRpc2Nvbm5lY3QodGhpcy5jb250ZXh0LmRlc3RpbmF0aW9uKSk6dGhpcy5nYWluLmRpc2Nvbm5lY3QodGhpcy5jb250ZXh0LmRlc3RpbmF0aW9uKSx0aGlzLmZpbHRlcj1BLHRoaXMuZ2Fpbi5jb25uZWN0KHRoaXMuZmlsdGVyKSx0aGlzLmZpbHRlci5jb25uZWN0KHRoaXMuY29udGV4dC5kZXN0aW5hdGlvbiksdGhpc31nZXRNYXN0ZXJWb2x1bWUoKXtyZXR1cm4gdGhpcy5nYWluLmdhaW4udmFsdWV9c2V0TWFzdGVyVm9sdW1lKEEpe3JldHVybiB0aGlzLmdhaW4uZ2Fpbi5zZXRUYXJnZXRBdFRpbWUoQSx0aGlzLmNvbnRleHQuY3VycmVudFRpbWUsLjAxKSx0aGlzfXVwZGF0ZU1hdHJpeFdvcmxkKEEpe3N1cGVyLnVwZGF0ZU1hdHJpeFdvcmxkKEEpO2NvbnN0IGU9dGhpcy5jb250ZXh0Lmxpc3RlbmVyLHQ9dGhpcy51cDtpZih0aGlzLnRpbWVEZWx0YT10aGlzLl9jbG9jay5nZXREZWx0YSgpLHRoaXMubWF0cml4V29ybGQuZGVjb21wb3NlKFpFLF9FLHFFKSwkRS5zZXQoMCwwLC0xKS5hcHBseVF1YXRlcm5pb24oX0UpLGUucG9zaXRpb25YKXtjb25zdCBBPXRoaXMuY29udGV4dC5jdXJyZW50VGltZSt0aGlzLnRpbWVEZWx0YTtlLnBvc2l0aW9uWC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZShaRS54LEEpLGUucG9zaXRpb25ZLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKFpFLnksQSksZS5wb3NpdGlvbloubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoWkUueixBKSxlLmZvcndhcmRYLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKCRFLngsQSksZS5mb3J3YXJkWS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSgkRS55LEEpLGUuZm9yd2FyZFoubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoJEUueixBKSxlLnVwWC5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSh0LngsQSksZS51cFkubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUodC55LEEpLGUudXBaLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKHQueixBKX1lbHNlIGUuc2V0UG9zaXRpb24oWkUueCxaRS55LFpFLnopLGUuc2V0T3JpZW50YXRpb24oJEUueCwkRS55LCRFLnosdC54LHQueSx0LnopfX1jbGFzcyBlUSBleHRlbmRzIHBpe2NvbnN0cnVjdG9yKEEpe3N1cGVyKCksdGhpcy50eXBlPSJBdWRpbyIsdGhpcy5saXN0ZW5lcj1BLHRoaXMuY29udGV4dD1BLmNvbnRleHQsdGhpcy5nYWluPXRoaXMuY29udGV4dC5jcmVhdGVHYWluKCksdGhpcy5nYWluLmNvbm5lY3QoQS5nZXRJbnB1dCgpKSx0aGlzLmF1dG9wbGF5PSExLHRoaXMuYnVmZmVyPW51bGwsdGhpcy5kZXR1bmU9MCx0aGlzLmxvb3A9ITEsdGhpcy5sb29wU3RhcnQ9MCx0aGlzLmxvb3BFbmQ9MCx0aGlzLm9mZnNldD0wLHRoaXMuZHVyYXRpb249dm9pZCAwLHRoaXMucGxheWJhY2tSYXRlPTEsdGhpcy5pc1BsYXlpbmc9ITEsdGhpcy5oYXNQbGF5YmFja0NvbnRyb2w9ITAsdGhpcy5zb3VyY2U9bnVsbCx0aGlzLnNvdXJjZVR5cGU9ImVtcHR5Iix0aGlzLl9zdGFydGVkQXQ9MCx0aGlzLl9wcm9ncmVzcz0wLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLmZpbHRlcnM9W119Z2V0T3V0cHV0KCl7cmV0dXJuIHRoaXMuZ2Fpbn1zZXROb2RlU291cmNlKEEpe3JldHVybiB0aGlzLmhhc1BsYXliYWNrQ29udHJvbD0hMSx0aGlzLnNvdXJjZVR5cGU9ImF1ZGlvTm9kZSIsdGhpcy5zb3VyY2U9QSx0aGlzLmNvbm5lY3QoKSx0aGlzfXNldE1lZGlhRWxlbWVudFNvdXJjZShBKXtyZXR1cm4gdGhpcy5oYXNQbGF5YmFja0NvbnRyb2w9ITEsdGhpcy5zb3VyY2VUeXBlPSJtZWRpYU5vZGUiLHRoaXMuc291cmNlPXRoaXMuY29udGV4dC5jcmVhdGVNZWRpYUVsZW1lbnRTb3VyY2UoQSksdGhpcy5jb25uZWN0KCksdGhpc31zZXRNZWRpYVN0cmVhbVNvdXJjZShBKXtyZXR1cm4gdGhpcy5oYXNQbGF5YmFja0NvbnRyb2w9ITEsdGhpcy5zb3VyY2VUeXBlPSJtZWRpYVN0cmVhbU5vZGUiLHRoaXMuc291cmNlPXRoaXMuY29udGV4dC5jcmVhdGVNZWRpYVN0cmVhbVNvdXJjZShBKSx0aGlzLmNvbm5lY3QoKSx0aGlzfXNldEJ1ZmZlcihBKXtyZXR1cm4gdGhpcy5idWZmZXI9QSx0aGlzLnNvdXJjZVR5cGU9ImJ1ZmZlciIsdGhpcy5hdXRvcGxheSYmdGhpcy5wbGF5KCksdGhpc31wbGF5KCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjA7aWYoITA9PT10aGlzLmlzUGxheWluZylyZXR1cm4gdm9pZCBjb25zb2xlLndhcm4oIlRIUkVFLkF1ZGlvOiBBdWRpbyBpcyBhbHJlYWR5IHBsYXlpbmcuIik7aWYoITE9PT10aGlzLmhhc1BsYXliYWNrQ29udHJvbClyZXR1cm4gdm9pZCBjb25zb2xlLndhcm4oIlRIUkVFLkF1ZGlvOiB0aGlzIEF1ZGlvIGhhcyBubyBwbGF5YmFjayBjb250cm9sLiIpO3RoaXMuX3N0YXJ0ZWRBdD10aGlzLmNvbnRleHQuY3VycmVudFRpbWUrQTtjb25zdCBlPXRoaXMuY29udGV4dC5jcmVhdGVCdWZmZXJTb3VyY2UoKTtyZXR1cm4gZS5idWZmZXI9dGhpcy5idWZmZXIsZS5sb29wPXRoaXMubG9vcCxlLmxvb3BTdGFydD10aGlzLmxvb3BTdGFydCxlLmxvb3BFbmQ9dGhpcy5sb29wRW5kLGUub25lbmRlZD10aGlzLm9uRW5kZWQuYmluZCh0aGlzKSxlLnN0YXJ0KHRoaXMuX3N0YXJ0ZWRBdCx0aGlzLl9wcm9ncmVzcyt0aGlzLm9mZnNldCx0aGlzLmR1cmF0aW9uKSx0aGlzLmlzUGxheWluZz0hMCx0aGlzLnNvdXJjZT1lLHRoaXMuc2V0RGV0dW5lKHRoaXMuZGV0dW5lKSx0aGlzLnNldFBsYXliYWNrUmF0ZSh0aGlzLnBsYXliYWNrUmF0ZSksdGhpcy5jb25uZWN0KCl9cGF1c2UoKXtpZighMSE9PXRoaXMuaGFzUGxheWJhY2tDb250cm9sKXJldHVybiEwPT09dGhpcy5pc1BsYXlpbmcmJih0aGlzLl9wcm9ncmVzcys9TWF0aC5tYXgodGhpcy5jb250ZXh0LmN1cnJlbnRUaW1lLXRoaXMuX3N0YXJ0ZWRBdCwwKSp0aGlzLnBsYXliYWNrUmF0ZSwhMD09PXRoaXMubG9vcCYmKHRoaXMuX3Byb2dyZXNzPXRoaXMuX3Byb2dyZXNzJSh0aGlzLmR1cmF0aW9ufHx0aGlzLmJ1ZmZlci5kdXJhdGlvbikpLHRoaXMuc291cmNlLnN0b3AoKSx0aGlzLnNvdXJjZS5vbmVuZGVkPW51bGwsdGhpcy5pc1BsYXlpbmc9ITEpLHRoaXM7Y29uc29sZS53YXJuKCJUSFJFRS5BdWRpbzogdGhpcyBBdWRpbyBoYXMgbm8gcGxheWJhY2sgY29udHJvbC4iKX1zdG9wKCl7aWYoITEhPT10aGlzLmhhc1BsYXliYWNrQ29udHJvbClyZXR1cm4gdGhpcy5fcHJvZ3Jlc3M9MCxudWxsIT09dGhpcy5zb3VyY2UmJih0aGlzLnNvdXJjZS5zdG9wKCksdGhpcy5zb3VyY2Uub25lbmRlZD1udWxsKSx0aGlzLmlzUGxheWluZz0hMSx0aGlzO2NvbnNvbGUud2FybigiVEhSRUUuQXVkaW86IHRoaXMgQXVkaW8gaGFzIG5vIHBsYXliYWNrIGNvbnRyb2wuIil9Y29ubmVjdCgpe2lmKHRoaXMuZmlsdGVycy5sZW5ndGg+MCl7dGhpcy5zb3VyY2UuY29ubmVjdCh0aGlzLmZpbHRlcnNbMF0pO2ZvcihsZXQgQT0xLGU9dGhpcy5maWx0ZXJzLmxlbmd0aDtBPGU7QSsrKXRoaXMuZmlsdGVyc1tBLTFdLmNvbm5lY3QodGhpcy5maWx0ZXJzW0FdKTt0aGlzLmZpbHRlcnNbdGhpcy5maWx0ZXJzLmxlbmd0aC0xXS5jb25uZWN0KHRoaXMuZ2V0T3V0cHV0KCkpfWVsc2UgdGhpcy5zb3VyY2UuY29ubmVjdCh0aGlzLmdldE91dHB1dCgpKTtyZXR1cm4gdGhpcy5fY29ubmVjdGVkPSEwLHRoaXN9ZGlzY29ubmVjdCgpe2lmKHRoaXMuZmlsdGVycy5sZW5ndGg+MCl7dGhpcy5zb3VyY2UuZGlzY29ubmVjdCh0aGlzLmZpbHRlcnNbMF0pO2ZvcihsZXQgQT0xLGU9dGhpcy5maWx0ZXJzLmxlbmd0aDtBPGU7QSsrKXRoaXMuZmlsdGVyc1tBLTFdLmRpc2Nvbm5lY3QodGhpcy5maWx0ZXJzW0FdKTt0aGlzLmZpbHRlcnNbdGhpcy5maWx0ZXJzLmxlbmd0aC0xXS5kaXNjb25uZWN0KHRoaXMuZ2V0T3V0cHV0KCkpfWVsc2UgdGhpcy5zb3VyY2UuZGlzY29ubmVjdCh0aGlzLmdldE91dHB1dCgpKTtyZXR1cm4gdGhpcy5fY29ubmVjdGVkPSExLHRoaXN9Z2V0RmlsdGVycygpe3JldHVybiB0aGlzLmZpbHRlcnN9c2V0RmlsdGVycyhBKXtyZXR1cm4gQXx8KEE9W10pLCEwPT09dGhpcy5fY29ubmVjdGVkPyh0aGlzLmRpc2Nvbm5lY3QoKSx0aGlzLmZpbHRlcnM9QS5zbGljZSgpLHRoaXMuY29ubmVjdCgpKTp0aGlzLmZpbHRlcnM9QS5zbGljZSgpLHRoaXN9c2V0RGV0dW5lKEEpe2lmKHRoaXMuZGV0dW5lPUEsdm9pZCAwIT09dGhpcy5zb3VyY2UuZGV0dW5lKXJldHVybiEwPT09dGhpcy5pc1BsYXlpbmcmJnRoaXMuc291cmNlLmRldHVuZS5zZXRUYXJnZXRBdFRpbWUodGhpcy5kZXR1bmUsdGhpcy5jb250ZXh0LmN1cnJlbnRUaW1lLC4wMSksdGhpc31nZXREZXR1bmUoKXtyZXR1cm4gdGhpcy5kZXR1bmV9Z2V0RmlsdGVyKCl7cmV0dXJuIHRoaXMuZ2V0RmlsdGVycygpWzBdfXNldEZpbHRlcihBKXtyZXR1cm4gdGhpcy5zZXRGaWx0ZXJzKEE/W0FdOltdKX1zZXRQbGF5YmFja1JhdGUoQSl7aWYoITEhPT10aGlzLmhhc1BsYXliYWNrQ29udHJvbClyZXR1cm4gdGhpcy5wbGF5YmFja1JhdGU9QSwhMD09PXRoaXMuaXNQbGF5aW5nJiZ0aGlzLnNvdXJjZS5wbGF5YmFja1JhdGUuc2V0VGFyZ2V0QXRUaW1lKHRoaXMucGxheWJhY2tSYXRlLHRoaXMuY29udGV4dC5jdXJyZW50VGltZSwuMDEpLHRoaXM7Y29uc29sZS53YXJuKCJUSFJFRS5BdWRpbzogdGhpcyBBdWRpbyBoYXMgbm8gcGxheWJhY2sgY29udHJvbC4iKX1nZXRQbGF5YmFja1JhdGUoKXtyZXR1cm4gdGhpcy5wbGF5YmFja1JhdGV9b25FbmRlZCgpe3RoaXMuaXNQbGF5aW5nPSExfWdldExvb3AoKXtyZXR1cm4hMT09PXRoaXMuaGFzUGxheWJhY2tDb250cm9sPyhjb25zb2xlLndhcm4oIlRIUkVFLkF1ZGlvOiB0aGlzIEF1ZGlvIGhhcyBubyBwbGF5YmFjayBjb250cm9sLiIpLCExKTp0aGlzLmxvb3B9c2V0TG9vcChBKXtpZighMSE9PXRoaXMuaGFzUGxheWJhY2tDb250cm9sKXJldHVybiB0aGlzLmxvb3A9QSwhMD09PXRoaXMuaXNQbGF5aW5nJiYodGhpcy5zb3VyY2UubG9vcD10aGlzLmxvb3ApLHRoaXM7Y29uc29sZS53YXJuKCJUSFJFRS5BdWRpbzogdGhpcyBBdWRpbyBoYXMgbm8gcGxheWJhY2sgY29udHJvbC4iKX1zZXRMb29wU3RhcnQoQSl7cmV0dXJuIHRoaXMubG9vcFN0YXJ0PUEsdGhpc31zZXRMb29wRW5kKEEpe3JldHVybiB0aGlzLmxvb3BFbmQ9QSx0aGlzfWdldFZvbHVtZSgpe3JldHVybiB0aGlzLmdhaW4uZ2Fpbi52YWx1ZX1zZXRWb2x1bWUoQSl7cmV0dXJuIHRoaXMuZ2Fpbi5nYWluLnNldFRhcmdldEF0VGltZShBLHRoaXMuY29udGV4dC5jdXJyZW50VGltZSwuMDEpLHRoaXN9fWNvbnN0IHRRPW5ldyBkbixuUT1uZXcgTW4saVE9bmV3IGRuLHJRPW5ldyBkbjtjbGFzcyBvUSBleHRlbmRzIGVRe2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpLHRoaXMucGFubmVyPXRoaXMuY29udGV4dC5jcmVhdGVQYW5uZXIoKSx0aGlzLnBhbm5lci5wYW5uaW5nTW9kZWw9IkhSVEYiLHRoaXMucGFubmVyLmNvbm5lY3QodGhpcy5nYWluKX1jb25uZWN0KCl7c3VwZXIuY29ubmVjdCgpLHRoaXMucGFubmVyLmNvbm5lY3QodGhpcy5nYWluKX1kaXNjb25uZWN0KCl7c3VwZXIuZGlzY29ubmVjdCgpLHRoaXMucGFubmVyLmRpc2Nvbm5lY3QodGhpcy5nYWluKX1nZXRPdXRwdXQoKXtyZXR1cm4gdGhpcy5wYW5uZXJ9Z2V0UmVmRGlzdGFuY2UoKXtyZXR1cm4gdGhpcy5wYW5uZXIucmVmRGlzdGFuY2V9c2V0UmVmRGlzdGFuY2UoQSl7cmV0dXJuIHRoaXMucGFubmVyLnJlZkRpc3RhbmNlPUEsdGhpc31nZXRSb2xsb2ZmRmFjdG9yKCl7cmV0dXJuIHRoaXMucGFubmVyLnJvbGxvZmZGYWN0b3J9c2V0Um9sbG9mZkZhY3RvcihBKXtyZXR1cm4gdGhpcy5wYW5uZXIucm9sbG9mZkZhY3Rvcj1BLHRoaXN9Z2V0RGlzdGFuY2VNb2RlbCgpe3JldHVybiB0aGlzLnBhbm5lci5kaXN0YW5jZU1vZGVsfXNldERpc3RhbmNlTW9kZWwoQSl7cmV0dXJuIHRoaXMucGFubmVyLmRpc3RhbmNlTW9kZWw9QSx0aGlzfWdldE1heERpc3RhbmNlKCl7cmV0dXJuIHRoaXMucGFubmVyLm1heERpc3RhbmNlfXNldE1heERpc3RhbmNlKEEpe3JldHVybiB0aGlzLnBhbm5lci5tYXhEaXN0YW5jZT1BLHRoaXN9c2V0RGlyZWN0aW9uYWxDb25lKEEsZSx0KXtyZXR1cm4gdGhpcy5wYW5uZXIuY29uZUlubmVyQW5nbGU9QSx0aGlzLnBhbm5lci5jb25lT3V0ZXJBbmdsZT1lLHRoaXMucGFubmVyLmNvbmVPdXRlckdhaW49dCx0aGlzfXVwZGF0ZU1hdHJpeFdvcmxkKEEpe2lmKHN1cGVyLnVwZGF0ZU1hdHJpeFdvcmxkKEEpLCEwPT09dGhpcy5oYXNQbGF5YmFja0NvbnRyb2wmJiExPT09dGhpcy5pc1BsYXlpbmcpcmV0dXJuO3RoaXMubWF0cml4V29ybGQuZGVjb21wb3NlKHRRLG5RLGlRKSxyUS5zZXQoMCwwLDEpLmFwcGx5UXVhdGVybmlvbihuUSk7Y29uc3QgZT10aGlzLnBhbm5lcjtpZihlLnBvc2l0aW9uWCl7Y29uc3QgQT10aGlzLmNvbnRleHQuY3VycmVudFRpbWUrdGhpcy5saXN0ZW5lci50aW1lRGVsdGE7ZS5wb3NpdGlvblgubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUodFEueCxBKSxlLnBvc2l0aW9uWS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSh0US55LEEpLGUucG9zaXRpb25aLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKHRRLnosQSksZS5vcmllbnRhdGlvblgubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoclEueCxBKSxlLm9yaWVudGF0aW9uWS5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZShyUS55LEEpLGUub3JpZW50YXRpb25aLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKHJRLnosQSl9ZWxzZSBlLnNldFBvc2l0aW9uKHRRLngsdFEueSx0US56KSxlLnNldE9yaWVudGF0aW9uKHJRLngsclEueSxyUS56KX19Y2xhc3Mgc1F7Y29uc3RydWN0b3IoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjIwNDg7dGhpcy5hbmFseXNlcj1BLmNvbnRleHQuY3JlYXRlQW5hbHlzZXIoKSx0aGlzLmFuYWx5c2VyLmZmdFNpemU9ZSx0aGlzLmRhdGE9bmV3IFVpbnQ4QXJyYXkodGhpcy5hbmFseXNlci5mcmVxdWVuY3lCaW5Db3VudCksQS5nZXRPdXRwdXQoKS5jb25uZWN0KHRoaXMuYW5hbHlzZXIpfWdldEZyZXF1ZW5jeURhdGEoKXtyZXR1cm4gdGhpcy5hbmFseXNlci5nZXRCeXRlRnJlcXVlbmN5RGF0YSh0aGlzLmRhdGEpLHRoaXMuZGF0YX1nZXRBdmVyYWdlRnJlcXVlbmN5KCl7bGV0IEE9MDtjb25zdCBlPXRoaXMuZ2V0RnJlcXVlbmN5RGF0YSgpO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKUErPWVbdF07cmV0dXJuIEEvZS5sZW5ndGh9fWNsYXNzIGFRe2NvbnN0cnVjdG9yKEEsZSx0KXtsZXQgbixpLHI7c3dpdGNoKHRoaXMuYmluZGluZz1BLHRoaXMudmFsdWVTaXplPXQsZSl7Y2FzZSJxdWF0ZXJuaW9uIjpuPXRoaXMuX3NsZXJwLGk9dGhpcy5fc2xlcnBBZGRpdGl2ZSxyPXRoaXMuX3NldEFkZGl0aXZlSWRlbnRpdHlRdWF0ZXJuaW9uLHRoaXMuYnVmZmVyPW5ldyBGbG9hdDY0QXJyYXkoNip0KSx0aGlzLl93b3JrSW5kZXg9NTticmVhaztjYXNlInN0cmluZyI6Y2FzZSJib29sIjpuPXRoaXMuX3NlbGVjdCxpPXRoaXMuX3NlbGVjdCxyPXRoaXMuX3NldEFkZGl0aXZlSWRlbnRpdHlPdGhlcix0aGlzLmJ1ZmZlcj1uZXcgQXJyYXkoNSp0KTticmVhaztkZWZhdWx0Om49dGhpcy5fbGVycCxpPXRoaXMuX2xlcnBBZGRpdGl2ZSxyPXRoaXMuX3NldEFkZGl0aXZlSWRlbnRpdHlOdW1lcmljLHRoaXMuYnVmZmVyPW5ldyBGbG9hdDY0QXJyYXkoNSp0KX10aGlzLl9taXhCdWZmZXJSZWdpb249bix0aGlzLl9taXhCdWZmZXJSZWdpb25BZGRpdGl2ZT1pLHRoaXMuX3NldElkZW50aXR5PXIsdGhpcy5fb3JpZ0luZGV4PTMsdGhpcy5fYWRkSW5kZXg9NCx0aGlzLmN1bXVsYXRpdmVXZWlnaHQ9MCx0aGlzLmN1bXVsYXRpdmVXZWlnaHRBZGRpdGl2ZT0wLHRoaXMudXNlQ291bnQ9MCx0aGlzLnJlZmVyZW5jZUNvdW50PTB9YWNjdW11bGF0ZShBLGUpe2NvbnN0IHQ9dGhpcy5idWZmZXIsbj10aGlzLnZhbHVlU2l6ZSxpPUEqbituO2xldCByPXRoaXMuY3VtdWxhdGl2ZVdlaWdodDtpZigwPT09cil7Zm9yKGxldCBBPTA7QSE9PW47KytBKXRbaStBXT10W0FdO3I9ZX1lbHNle3IrPWU7Y29uc3QgQT1lL3I7dGhpcy5fbWl4QnVmZmVyUmVnaW9uKHQsaSwwLEEsbil9dGhpcy5jdW11bGF0aXZlV2VpZ2h0PXJ9YWNjdW11bGF0ZUFkZGl0aXZlKEEpe2NvbnN0IGU9dGhpcy5idWZmZXIsdD10aGlzLnZhbHVlU2l6ZSxuPXQqdGhpcy5fYWRkSW5kZXg7MD09PXRoaXMuY3VtdWxhdGl2ZVdlaWdodEFkZGl0aXZlJiZ0aGlzLl9zZXRJZGVudGl0eSgpLHRoaXMuX21peEJ1ZmZlclJlZ2lvbkFkZGl0aXZlKGUsbiwwLEEsdCksdGhpcy5jdW11bGF0aXZlV2VpZ2h0QWRkaXRpdmUrPUF9YXBwbHkoQSl7Y29uc3QgZT10aGlzLnZhbHVlU2l6ZSx0PXRoaXMuYnVmZmVyLG49QSplK2UsaT10aGlzLmN1bXVsYXRpdmVXZWlnaHQscj10aGlzLmN1bXVsYXRpdmVXZWlnaHRBZGRpdGl2ZSxvPXRoaXMuYmluZGluZztpZih0aGlzLmN1bXVsYXRpdmVXZWlnaHQ9MCx0aGlzLmN1bXVsYXRpdmVXZWlnaHRBZGRpdGl2ZT0wLGk8MSl7Y29uc3QgQT1lKnRoaXMuX29yaWdJbmRleDt0aGlzLl9taXhCdWZmZXJSZWdpb24odCxuLEEsMS1pLGUpfXI+MCYmdGhpcy5fbWl4QnVmZmVyUmVnaW9uQWRkaXRpdmUodCxuLHRoaXMuX2FkZEluZGV4KmUsMSxlKTtmb3IobGV0IEE9ZSxpPWUrZTtBIT09aTsrK0EpaWYodFtBXSE9PXRbQStlXSl7by5zZXRWYWx1ZSh0LG4pO2JyZWFrfX1zYXZlT3JpZ2luYWxTdGF0ZSgpe2NvbnN0IEE9dGhpcy5iaW5kaW5nLGU9dGhpcy5idWZmZXIsdD10aGlzLnZhbHVlU2l6ZSxuPXQqdGhpcy5fb3JpZ0luZGV4O0EuZ2V0VmFsdWUoZSxuKTtmb3IobGV0IEE9dCxpPW47QSE9PWk7KytBKWVbQV09ZVtuK0EldF07dGhpcy5fc2V0SWRlbnRpdHkoKSx0aGlzLmN1bXVsYXRpdmVXZWlnaHQ9MCx0aGlzLmN1bXVsYXRpdmVXZWlnaHRBZGRpdGl2ZT0wfXJlc3RvcmVPcmlnaW5hbFN0YXRlKCl7Y29uc3QgQT0zKnRoaXMudmFsdWVTaXplO3RoaXMuYmluZGluZy5zZXRWYWx1ZSh0aGlzLmJ1ZmZlcixBKX1fc2V0QWRkaXRpdmVJZGVudGl0eU51bWVyaWMoKXtjb25zdCBBPXRoaXMuX2FkZEluZGV4KnRoaXMudmFsdWVTaXplLGU9QSt0aGlzLnZhbHVlU2l6ZTtmb3IobGV0IHQ9QTt0PGU7dCsrKXRoaXMuYnVmZmVyW3RdPTB9X3NldEFkZGl0aXZlSWRlbnRpdHlRdWF0ZXJuaW9uKCl7dGhpcy5fc2V0QWRkaXRpdmVJZGVudGl0eU51bWVyaWMoKSx0aGlzLmJ1ZmZlclt0aGlzLl9hZGRJbmRleCp0aGlzLnZhbHVlU2l6ZSszXT0xfV9zZXRBZGRpdGl2ZUlkZW50aXR5T3RoZXIoKXtjb25zdCBBPXRoaXMuX29yaWdJbmRleCp0aGlzLnZhbHVlU2l6ZSxlPXRoaXMuX2FkZEluZGV4KnRoaXMudmFsdWVTaXplO2ZvcihsZXQgdD0wO3Q8dGhpcy52YWx1ZVNpemU7dCsrKXRoaXMuYnVmZmVyW2UrdF09dGhpcy5idWZmZXJbQSt0XX1fc2VsZWN0KEEsZSx0LG4saSl7aWYobj49LjUpZm9yKGxldCBuPTA7biE9PWk7KytuKUFbZStuXT1BW3Qrbl19X3NsZXJwKEEsZSx0LG4pe01uLnNsZXJwRmxhdChBLGUsQSxlLEEsdCxuKX1fc2xlcnBBZGRpdGl2ZShBLGUsdCxuLGkpe2NvbnN0IHI9dGhpcy5fd29ya0luZGV4Kmk7TW4ubXVsdGlwbHlRdWF0ZXJuaW9uc0ZsYXQoQSxyLEEsZSxBLHQpLE1uLnNsZXJwRmxhdChBLGUsQSxlLEEscixuKX1fbGVycChBLGUsdCxuLGkpe2NvbnN0IHI9MS1uO2ZvcihsZXQgbz0wO28hPT1pOysrbyl7Y29uc3QgaT1lK287QVtpXT1BW2ldKnIrQVt0K29dKm59fV9sZXJwQWRkaXRpdmUoQSxlLHQsbixpKXtmb3IobGV0IHI9MDtyIT09aTsrK3Ipe2NvbnN0IGk9ZStyO0FbaV09QVtpXStBW3Qrcl0qbn19fWNvbnN0IEJRPW5ldyBSZWdFeHAoIltcXFtcXF1cXC46XFwvXSIsImciKSxjUT0iW14iKyJcXFtcXF1cXC46XFwvIi5yZXBsYWNlKCJcXC4iLCIiKSsiXSIsZ1E9bmV3IFJlZ0V4cCgiXiIrLygoPzpXQytbXC86XSkqKS8uc291cmNlLnJlcGxhY2UoIldDIiwiW15cXFtcXF1cXC46XFwvXSIpKy8oV0NPRCspPy8uc291cmNlLnJlcGxhY2UoIldDT0QiLGNRKSsvKD86XC4oV0MrKSg/OlxbKC4rKVxdKT8pPy8uc291cmNlLnJlcGxhY2UoIldDIiwiW15cXFtcXF1cXC46XFwvXSIpKy9cLihXQyspKD86XFsoLispXF0pPy8uc291cmNlLnJlcGxhY2UoIldDIiwiW15cXFtcXF1cXC46XFwvXSIpKyIkIiksRVE9WyJtYXRlcmlhbCIsIm1hdGVyaWFscyIsImJvbmVzIiwibWFwIl07Y2xhc3MgUVF7Y29uc3RydWN0b3IoQSxlLHQpe3RoaXMucGF0aD1lLHRoaXMucGFyc2VkUGF0aD10fHxRUS5wYXJzZVRyYWNrTmFtZShlKSx0aGlzLm5vZGU9UVEuZmluZE5vZGUoQSx0aGlzLnBhcnNlZFBhdGgubm9kZU5hbWUpLHRoaXMucm9vdE5vZGU9QSx0aGlzLmdldFZhbHVlPXRoaXMuX2dldFZhbHVlX3VuYm91bmQsdGhpcy5zZXRWYWx1ZT10aGlzLl9zZXRWYWx1ZV91bmJvdW5kfXN0YXRpYyBjcmVhdGUoQSxlLHQpe3JldHVybiBBJiZBLmlzQW5pbWF0aW9uT2JqZWN0R3JvdXA/bmV3IFFRLkNvbXBvc2l0ZShBLGUsdCk6bmV3IFFRKEEsZSx0KX1zdGF0aWMgc2FuaXRpemVOb2RlTmFtZShBKXtyZXR1cm4gQS5yZXBsYWNlKC9ccy9nLCJfIikucmVwbGFjZShCUSwiIil9c3RhdGljIHBhcnNlVHJhY2tOYW1lKEEpe2NvbnN0IGU9Z1EuZXhlYyhBKTtpZihudWxsPT09ZSl0aHJvdyBuZXcgRXJyb3IoIlByb3BlcnR5QmluZGluZzogQ2Fubm90IHBhcnNlIHRyYWNrTmFtZTogIitBKTtjb25zdCB0PXtub2RlTmFtZTplWzJdLG9iamVjdE5hbWU6ZVszXSxvYmplY3RJbmRleDplWzRdLHByb3BlcnR5TmFtZTplWzVdLHByb3BlcnR5SW5kZXg6ZVs2XX0sbj10Lm5vZGVOYW1lJiZ0Lm5vZGVOYW1lLmxhc3RJbmRleE9mKCIuIik7aWYodm9pZCAwIT09biYmLTEhPT1uKXtjb25zdCBBPXQubm9kZU5hbWUuc3Vic3RyaW5nKG4rMSk7LTEhPT1FUS5pbmRleE9mKEEpJiYodC5ub2RlTmFtZT10Lm5vZGVOYW1lLnN1YnN0cmluZygwLG4pLHQub2JqZWN0TmFtZT1BKX1pZihudWxsPT09dC5wcm9wZXJ0eU5hbWV8fDA9PT10LnByb3BlcnR5TmFtZS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJQcm9wZXJ0eUJpbmRpbmc6IGNhbiBub3QgcGFyc2UgcHJvcGVydHlOYW1lIGZyb20gdHJhY2tOYW1lOiAiK0EpO3JldHVybiB0fXN0YXRpYyBmaW5kTm9kZShBLGUpe2lmKHZvaWQgMD09PWV8fCIiPT09ZXx8Ii4iPT09ZXx8LTE9PT1lfHxlPT09QS5uYW1lfHxlPT09QS51dWlkKXJldHVybiBBO2lmKEEuc2tlbGV0b24pe2NvbnN0IHQ9QS5za2VsZXRvbi5nZXRCb25lQnlOYW1lKGUpO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHR9aWYoQS5jaGlsZHJlbil7Y29uc3QgdD1mdW5jdGlvbihBKXtmb3IobGV0IG49MDtuPEEubGVuZ3RoO24rKyl7Y29uc3QgaT1BW25dO2lmKGkubmFtZT09PWV8fGkudXVpZD09PWUpcmV0dXJuIGk7Y29uc3Qgcj10KGkuY2hpbGRyZW4pO2lmKHIpcmV0dXJuIHJ9cmV0dXJuIG51bGx9LG49dChBLmNoaWxkcmVuKTtpZihuKXJldHVybiBufXJldHVybiBudWxsfV9nZXRWYWx1ZV91bmF2YWlsYWJsZSgpe31fc2V0VmFsdWVfdW5hdmFpbGFibGUoKXt9X2dldFZhbHVlX2RpcmVjdChBLGUpe0FbZV09dGhpcy50YXJnZXRPYmplY3RbdGhpcy5wcm9wZXJ0eU5hbWVdfV9nZXRWYWx1ZV9hcnJheShBLGUpe2NvbnN0IHQ9dGhpcy5yZXNvbHZlZFByb3BlcnR5O2ZvcihsZXQgbj0wLGk9dC5sZW5ndGg7biE9PWk7KytuKUFbZSsrXT10W25dfV9nZXRWYWx1ZV9hcnJheUVsZW1lbnQoQSxlKXtBW2VdPXRoaXMucmVzb2x2ZWRQcm9wZXJ0eVt0aGlzLnByb3BlcnR5SW5kZXhdfV9nZXRWYWx1ZV90b0FycmF5KEEsZSl7dGhpcy5yZXNvbHZlZFByb3BlcnR5LnRvQXJyYXkoQSxlKX1fc2V0VmFsdWVfZGlyZWN0KEEsZSl7dGhpcy50YXJnZXRPYmplY3RbdGhpcy5wcm9wZXJ0eU5hbWVdPUFbZV19X3NldFZhbHVlX2RpcmVjdF9zZXROZWVkc1VwZGF0ZShBLGUpe3RoaXMudGFyZ2V0T2JqZWN0W3RoaXMucHJvcGVydHlOYW1lXT1BW2VdLHRoaXMudGFyZ2V0T2JqZWN0Lm5lZWRzVXBkYXRlPSEwfV9zZXRWYWx1ZV9kaXJlY3Rfc2V0TWF0cml4V29ybGROZWVkc1VwZGF0ZShBLGUpe3RoaXMudGFyZ2V0T2JqZWN0W3RoaXMucHJvcGVydHlOYW1lXT1BW2VdLHRoaXMudGFyZ2V0T2JqZWN0Lm1hdHJpeFdvcmxkTmVlZHNVcGRhdGU9ITB9X3NldFZhbHVlX2FycmF5KEEsZSl7Y29uc3QgdD10aGlzLnJlc29sdmVkUHJvcGVydHk7Zm9yKGxldCBuPTAsaT10Lmxlbmd0aDtuIT09aTsrK24pdFtuXT1BW2UrK119X3NldFZhbHVlX2FycmF5X3NldE5lZWRzVXBkYXRlKEEsZSl7Y29uc3QgdD10aGlzLnJlc29sdmVkUHJvcGVydHk7Zm9yKGxldCBuPTAsaT10Lmxlbmd0aDtuIT09aTsrK24pdFtuXT1BW2UrK107dGhpcy50YXJnZXRPYmplY3QubmVlZHNVcGRhdGU9ITB9X3NldFZhbHVlX2FycmF5X3NldE1hdHJpeFdvcmxkTmVlZHNVcGRhdGUoQSxlKXtjb25zdCB0PXRoaXMucmVzb2x2ZWRQcm9wZXJ0eTtmb3IobGV0IG49MCxpPXQubGVuZ3RoO24hPT1pOysrbil0W25dPUFbZSsrXTt0aGlzLnRhcmdldE9iamVjdC5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlPSEwfV9zZXRWYWx1ZV9hcnJheUVsZW1lbnQoQSxlKXt0aGlzLnJlc29sdmVkUHJvcGVydHlbdGhpcy5wcm9wZXJ0eUluZGV4XT1BW2VdfV9zZXRWYWx1ZV9hcnJheUVsZW1lbnRfc2V0TmVlZHNVcGRhdGUoQSxlKXt0aGlzLnJlc29sdmVkUHJvcGVydHlbdGhpcy5wcm9wZXJ0eUluZGV4XT1BW2VdLHRoaXMudGFyZ2V0T2JqZWN0Lm5lZWRzVXBkYXRlPSEwfV9zZXRWYWx1ZV9hcnJheUVsZW1lbnRfc2V0TWF0cml4V29ybGROZWVkc1VwZGF0ZShBLGUpe3RoaXMucmVzb2x2ZWRQcm9wZXJ0eVt0aGlzLnByb3BlcnR5SW5kZXhdPUFbZV0sdGhpcy50YXJnZXRPYmplY3QubWF0cml4V29ybGROZWVkc1VwZGF0ZT0hMH1fc2V0VmFsdWVfZnJvbUFycmF5KEEsZSl7dGhpcy5yZXNvbHZlZFByb3BlcnR5LmZyb21BcnJheShBLGUpfV9zZXRWYWx1ZV9mcm9tQXJyYXlfc2V0TmVlZHNVcGRhdGUoQSxlKXt0aGlzLnJlc29sdmVkUHJvcGVydHkuZnJvbUFycmF5KEEsZSksdGhpcy50YXJnZXRPYmplY3QubmVlZHNVcGRhdGU9ITB9X3NldFZhbHVlX2Zyb21BcnJheV9zZXRNYXRyaXhXb3JsZE5lZWRzVXBkYXRlKEEsZSl7dGhpcy5yZXNvbHZlZFByb3BlcnR5LmZyb21BcnJheShBLGUpLHRoaXMudGFyZ2V0T2JqZWN0Lm1hdHJpeFdvcmxkTmVlZHNVcGRhdGU9ITB9X2dldFZhbHVlX3VuYm91bmQoQSxlKXt0aGlzLmJpbmQoKSx0aGlzLmdldFZhbHVlKEEsZSl9X3NldFZhbHVlX3VuYm91bmQoQSxlKXt0aGlzLmJpbmQoKSx0aGlzLnNldFZhbHVlKEEsZSl9YmluZCgpe2xldCBBPXRoaXMubm9kZTtjb25zdCBlPXRoaXMucGFyc2VkUGF0aCx0PWUub2JqZWN0TmFtZSxuPWUucHJvcGVydHlOYW1lO2xldCBpPWUucHJvcGVydHlJbmRleDtpZihBfHwoQT1RUS5maW5kTm9kZSh0aGlzLnJvb3ROb2RlLGUubm9kZU5hbWUpLHRoaXMubm9kZT1BKSx0aGlzLmdldFZhbHVlPXRoaXMuX2dldFZhbHVlX3VuYXZhaWxhYmxlLHRoaXMuc2V0VmFsdWU9dGhpcy5fc2V0VmFsdWVfdW5hdmFpbGFibGUsIUEpcmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcigiVEhSRUUuUHJvcGVydHlCaW5kaW5nOiBUcnlpbmcgdG8gdXBkYXRlIG5vZGUgZm9yIHRyYWNrOiAiK3RoaXMucGF0aCsiIGJ1dCBpdCB3YXNuJ3QgZm91bmQuIik7aWYodCl7bGV0IG49ZS5vYmplY3RJbmRleDtzd2l0Y2godCl7Y2FzZSJtYXRlcmlhbHMiOmlmKCFBLm1hdGVyaWFsKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLlByb3BlcnR5QmluZGluZzogQ2FuIG5vdCBiaW5kIHRvIG1hdGVyaWFsIGFzIG5vZGUgZG9lcyBub3QgaGF2ZSBhIG1hdGVyaWFsLiIsdGhpcyk7aWYoIUEubWF0ZXJpYWwubWF0ZXJpYWxzKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLlByb3BlcnR5QmluZGluZzogQ2FuIG5vdCBiaW5kIHRvIG1hdGVyaWFsLm1hdGVyaWFscyBhcyBub2RlLm1hdGVyaWFsIGRvZXMgbm90IGhhdmUgYSBtYXRlcmlhbHMgYXJyYXkuIix0aGlzKTtBPUEubWF0ZXJpYWwubWF0ZXJpYWxzO2JyZWFrO2Nhc2UiYm9uZXMiOmlmKCFBLnNrZWxldG9uKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLlByb3BlcnR5QmluZGluZzogQ2FuIG5vdCBiaW5kIHRvIGJvbmVzIGFzIG5vZGUgZG9lcyBub3QgaGF2ZSBhIHNrZWxldG9uLiIsdGhpcyk7QT1BLnNrZWxldG9uLmJvbmVzO2ZvcihsZXQgZT0wO2U8QS5sZW5ndGg7ZSsrKWlmKEFbZV0ubmFtZT09PW4pe249ZTticmVha31icmVhaztjYXNlIm1hcCI6aWYoIm1hcCJpbiBBKXtBPUEubWFwO2JyZWFrfWlmKCFBLm1hdGVyaWFsKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLlByb3BlcnR5QmluZGluZzogQ2FuIG5vdCBiaW5kIHRvIG1hdGVyaWFsIGFzIG5vZGUgZG9lcyBub3QgaGF2ZSBhIG1hdGVyaWFsLiIsdGhpcyk7aWYoIUEubWF0ZXJpYWwubWFwKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLlByb3BlcnR5QmluZGluZzogQ2FuIG5vdCBiaW5kIHRvIG1hdGVyaWFsLm1hcCBhcyBub2RlLm1hdGVyaWFsIGRvZXMgbm90IGhhdmUgYSBtYXAuIix0aGlzKTtBPUEubWF0ZXJpYWwubWFwO2JyZWFrO2RlZmF1bHQ6aWYodm9pZCAwPT09QVt0XSlyZXR1cm4gdm9pZCBjb25zb2xlLmVycm9yKCJUSFJFRS5Qcm9wZXJ0eUJpbmRpbmc6IENhbiBub3QgYmluZCB0byBvYmplY3ROYW1lIG9mIG5vZGUgdW5kZWZpbmVkLiIsdGhpcyk7QT1BW3RdfWlmKHZvaWQgMCE9PW4pe2lmKHZvaWQgMD09PUFbbl0pcmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcigiVEhSRUUuUHJvcGVydHlCaW5kaW5nOiBUcnlpbmcgdG8gYmluZCB0byBvYmplY3RJbmRleCBvZiBvYmplY3ROYW1lLCBidXQgaXMgdW5kZWZpbmVkLiIsdGhpcyxBKTtBPUFbbl19fWNvbnN0IHI9QVtuXTtpZih2b2lkIDA9PT1yKXtjb25zdCB0PWUubm9kZU5hbWU7cmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcigiVEhSRUUuUHJvcGVydHlCaW5kaW5nOiBUcnlpbmcgdG8gdXBkYXRlIHByb3BlcnR5IGZvciB0cmFjazogIit0KyIuIituKyIgYnV0IGl0IHdhc24ndCBmb3VuZC4iLEEpfWxldCBvPXRoaXMuVmVyc2lvbmluZy5Ob25lO3RoaXMudGFyZ2V0T2JqZWN0PUEsdm9pZCAwIT09QS5uZWVkc1VwZGF0ZT9vPXRoaXMuVmVyc2lvbmluZy5OZWVkc1VwZGF0ZTp2b2lkIDAhPT1BLm1hdHJpeFdvcmxkTmVlZHNVcGRhdGUmJihvPXRoaXMuVmVyc2lvbmluZy5NYXRyaXhXb3JsZE5lZWRzVXBkYXRlKTtsZXQgcz10aGlzLkJpbmRpbmdUeXBlLkRpcmVjdDtpZih2b2lkIDAhPT1pKXtpZigibW9ycGhUYXJnZXRJbmZsdWVuY2VzIj09PW4pe2lmKCFBLmdlb21ldHJ5KXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLlByb3BlcnR5QmluZGluZzogQ2FuIG5vdCBiaW5kIHRvIG1vcnBoVGFyZ2V0SW5mbHVlbmNlcyBiZWNhdXNlIG5vZGUgZG9lcyBub3QgaGF2ZSBhIGdlb21ldHJ5LiIsdGhpcyk7aWYoIUEuZ2VvbWV0cnkubW9ycGhBdHRyaWJ1dGVzKXJldHVybiB2b2lkIGNvbnNvbGUuZXJyb3IoIlRIUkVFLlByb3BlcnR5QmluZGluZzogQ2FuIG5vdCBiaW5kIHRvIG1vcnBoVGFyZ2V0SW5mbHVlbmNlcyBiZWNhdXNlIG5vZGUgZG9lcyBub3QgaGF2ZSBhIGdlb21ldHJ5Lm1vcnBoQXR0cmlidXRlcy4iLHRoaXMpO3ZvaWQgMCE9PUEubW9ycGhUYXJnZXREaWN0aW9uYXJ5W2ldJiYoaT1BLm1vcnBoVGFyZ2V0RGljdGlvbmFyeVtpXSl9cz10aGlzLkJpbmRpbmdUeXBlLkFycmF5RWxlbWVudCx0aGlzLnJlc29sdmVkUHJvcGVydHk9cix0aGlzLnByb3BlcnR5SW5kZXg9aX1lbHNlIHZvaWQgMCE9PXIuZnJvbUFycmF5JiZ2b2lkIDAhPT1yLnRvQXJyYXk/KHM9dGhpcy5CaW5kaW5nVHlwZS5IYXNGcm9tVG9BcnJheSx0aGlzLnJlc29sdmVkUHJvcGVydHk9cik6QXJyYXkuaXNBcnJheShyKT8ocz10aGlzLkJpbmRpbmdUeXBlLkVudGlyZUFycmF5LHRoaXMucmVzb2x2ZWRQcm9wZXJ0eT1yKTp0aGlzLnByb3BlcnR5TmFtZT1uO3RoaXMuZ2V0VmFsdWU9dGhpcy5HZXR0ZXJCeUJpbmRpbmdUeXBlW3NdLHRoaXMuc2V0VmFsdWU9dGhpcy5TZXR0ZXJCeUJpbmRpbmdUeXBlQW5kVmVyc2lvbmluZ1tzXVtvXX11bmJpbmQoKXt0aGlzLm5vZGU9bnVsbCx0aGlzLmdldFZhbHVlPXRoaXMuX2dldFZhbHVlX3VuYm91bmQsdGhpcy5zZXRWYWx1ZT10aGlzLl9zZXRWYWx1ZV91bmJvdW5kfX1RUS5Db21wb3NpdGU9Y2xhc3N7Y29uc3RydWN0b3IoQSxlLHQpe2NvbnN0IG49dHx8UVEucGFyc2VUcmFja05hbWUoZSk7dGhpcy5fdGFyZ2V0R3JvdXA9QSx0aGlzLl9iaW5kaW5ncz1BLnN1YnNjcmliZV8oZSxuKX1nZXRWYWx1ZShBLGUpe3RoaXMuYmluZCgpO2NvbnN0IHQ9dGhpcy5fdGFyZ2V0R3JvdXAubkNhY2hlZE9iamVjdHNfLG49dGhpcy5fYmluZGluZ3NbdF07dm9pZCAwIT09biYmbi5nZXRWYWx1ZShBLGUpfXNldFZhbHVlKEEsZSl7Y29uc3QgdD10aGlzLl9iaW5kaW5ncztmb3IobGV0IG49dGhpcy5fdGFyZ2V0R3JvdXAubkNhY2hlZE9iamVjdHNfLGk9dC5sZW5ndGg7biE9PWk7KytuKXRbbl0uc2V0VmFsdWUoQSxlKX1iaW5kKCl7Y29uc3QgQT10aGlzLl9iaW5kaW5ncztmb3IobGV0IGU9dGhpcy5fdGFyZ2V0R3JvdXAubkNhY2hlZE9iamVjdHNfLHQ9QS5sZW5ndGg7ZSE9PXQ7KytlKUFbZV0uYmluZCgpfXVuYmluZCgpe2NvbnN0IEE9dGhpcy5fYmluZGluZ3M7Zm9yKGxldCBlPXRoaXMuX3RhcmdldEdyb3VwLm5DYWNoZWRPYmplY3RzXyx0PUEubGVuZ3RoO2UhPT10OysrZSlBW2VdLnVuYmluZCgpfX0sUVEucHJvdG90eXBlLkJpbmRpbmdUeXBlPXtEaXJlY3Q6MCxFbnRpcmVBcnJheToxLEFycmF5RWxlbWVudDoyLEhhc0Zyb21Ub0FycmF5OjN9LFFRLnByb3RvdHlwZS5WZXJzaW9uaW5nPXtOb25lOjAsTmVlZHNVcGRhdGU6MSxNYXRyaXhXb3JsZE5lZWRzVXBkYXRlOjJ9LFFRLnByb3RvdHlwZS5HZXR0ZXJCeUJpbmRpbmdUeXBlPVtRUS5wcm90b3R5cGUuX2dldFZhbHVlX2RpcmVjdCxRUS5wcm90b3R5cGUuX2dldFZhbHVlX2FycmF5LFFRLnByb3RvdHlwZS5fZ2V0VmFsdWVfYXJyYXlFbGVtZW50LFFRLnByb3RvdHlwZS5fZ2V0VmFsdWVfdG9BcnJheV0sUVEucHJvdG90eXBlLlNldHRlckJ5QmluZGluZ1R5cGVBbmRWZXJzaW9uaW5nPVtbUVEucHJvdG90eXBlLl9zZXRWYWx1ZV9kaXJlY3QsUVEucHJvdG90eXBlLl9zZXRWYWx1ZV9kaXJlY3Rfc2V0TmVlZHNVcGRhdGUsUVEucHJvdG90eXBlLl9zZXRWYWx1ZV9kaXJlY3Rfc2V0TWF0cml4V29ybGROZWVkc1VwZGF0ZV0sW1FRLnByb3RvdHlwZS5fc2V0VmFsdWVfYXJyYXksUVEucHJvdG90eXBlLl9zZXRWYWx1ZV9hcnJheV9zZXROZWVkc1VwZGF0ZSxRUS5wcm90b3R5cGUuX3NldFZhbHVlX2FycmF5X3NldE1hdHJpeFdvcmxkTmVlZHNVcGRhdGVdLFtRUS5wcm90b3R5cGUuX3NldFZhbHVlX2FycmF5RWxlbWVudCxRUS5wcm90b3R5cGUuX3NldFZhbHVlX2FycmF5RWxlbWVudF9zZXROZWVkc1VwZGF0ZSxRUS5wcm90b3R5cGUuX3NldFZhbHVlX2FycmF5RWxlbWVudF9zZXRNYXRyaXhXb3JsZE5lZWRzVXBkYXRlXSxbUVEucHJvdG90eXBlLl9zZXRWYWx1ZV9mcm9tQXJyYXksUVEucHJvdG90eXBlLl9zZXRWYWx1ZV9mcm9tQXJyYXlfc2V0TmVlZHNVcGRhdGUsUVEucHJvdG90eXBlLl9zZXRWYWx1ZV9mcm9tQXJyYXlfc2V0TWF0cml4V29ybGROZWVkc1VwZGF0ZV1dO2NsYXNzIHVRe2NvbnN0cnVjdG9yKCl7dGhpcy5pc0FuaW1hdGlvbk9iamVjdEdyb3VwPSEwLHRoaXMudXVpZD1SdCgpLHRoaXMuX29iamVjdHM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKSx0aGlzLm5DYWNoZWRPYmplY3RzXz0wO2NvbnN0IEE9e307dGhpcy5faW5kaWNlc0J5VVVJRD1BO2ZvcihsZXQgZT0wLHQ9YXJndW1lbnRzLmxlbmd0aDtlIT09dDsrK2UpQVthcmd1bWVudHNbZV0udXVpZF09ZTt0aGlzLl9wYXRocz1bXSx0aGlzLl9wYXJzZWRQYXRocz1bXSx0aGlzLl9iaW5kaW5ncz1bXSx0aGlzLl9iaW5kaW5nc0luZGljZXNCeVBhdGg9e307Y29uc3QgZT10aGlzO3RoaXMuc3RhdHM9e29iamVjdHM6e2dldCB0b3RhbCgpe3JldHVybiBlLl9vYmplY3RzLmxlbmd0aH0sZ2V0IGluVXNlKCl7cmV0dXJuIHRoaXMudG90YWwtZS5uQ2FjaGVkT2JqZWN0c199fSxnZXQgYmluZGluZ3NQZXJPYmplY3QoKXtyZXR1cm4gZS5fYmluZGluZ3MubGVuZ3RofX19YWRkKCl7Y29uc3QgQT10aGlzLl9vYmplY3RzLGU9dGhpcy5faW5kaWNlc0J5VVVJRCx0PXRoaXMuX3BhdGhzLG49dGhpcy5fcGFyc2VkUGF0aHMsaT10aGlzLl9iaW5kaW5ncyxyPWkubGVuZ3RoO2xldCBvPXZvaWQgMCxzPUEubGVuZ3RoLGE9dGhpcy5uQ2FjaGVkT2JqZWN0c187Zm9yKGxldCBCPTAsYz1hcmd1bWVudHMubGVuZ3RoO0IhPT1jOysrQil7Y29uc3QgYz1hcmd1bWVudHNbQl0sZz1jLnV1aWQ7bGV0IEU9ZVtnXTtpZih2b2lkIDA9PT1FKXtFPXMrKyxlW2ddPUUsQS5wdXNoKGMpO2ZvcihsZXQgQT0wLGU9cjtBIT09ZTsrK0EpaVtBXS5wdXNoKG5ldyBRUShjLHRbQV0sbltBXSkpfWVsc2UgaWYoRTxhKXtvPUFbRV07Y29uc3Qgcz0tLWEsQj1BW3NdO2VbQi51dWlkXT1FLEFbRV09QixlW2ddPXMsQVtzXT1jO2ZvcihsZXQgQT0wLGU9cjtBIT09ZTsrK0Epe2NvbnN0IGU9aVtBXSxyPWVbc107bGV0IG89ZVtFXTtlW0VdPXIsdm9pZCAwPT09byYmKG89bmV3IFFRKGMsdFtBXSxuW0FdKSksZVtzXT1vfX1lbHNlIEFbRV0hPT1vJiZjb25zb2xlLmVycm9yKCJUSFJFRS5BbmltYXRpb25PYmplY3RHcm91cDogRGlmZmVyZW50IG9iamVjdHMgd2l0aCB0aGUgc2FtZSBVVUlEIGRldGVjdGVkLiBDbGVhbiB0aGUgY2FjaGVzIG9yIHJlY3JlYXRlIHlvdXIgaW5mcmFzdHJ1Y3R1cmUgd2hlbiByZWxvYWRpbmcgc2NlbmVzLiIpfXRoaXMubkNhY2hlZE9iamVjdHNfPWF9cmVtb3ZlKCl7Y29uc3QgQT10aGlzLl9vYmplY3RzLGU9dGhpcy5faW5kaWNlc0J5VVVJRCx0PXRoaXMuX2JpbmRpbmdzLG49dC5sZW5ndGg7bGV0IGk9dGhpcy5uQ2FjaGVkT2JqZWN0c187Zm9yKGxldCByPTAsbz1hcmd1bWVudHMubGVuZ3RoO3IhPT1vOysrcil7Y29uc3Qgbz1hcmd1bWVudHNbcl0scz1vLnV1aWQsYT1lW3NdO2lmKHZvaWQgMCE9PWEmJmE+PWkpe2NvbnN0IHI9aSsrLEI9QVtyXTtlW0IudXVpZF09YSxBW2FdPUIsZVtzXT1yLEFbcl09bztmb3IobGV0IEE9MCxlPW47QSE9PWU7KytBKXtjb25zdCBlPXRbQV0sbj1lW3JdLGk9ZVthXTtlW2FdPW4sZVtyXT1pfX19dGhpcy5uQ2FjaGVkT2JqZWN0c189aX11bmNhY2hlKCl7Y29uc3QgQT10aGlzLl9vYmplY3RzLGU9dGhpcy5faW5kaWNlc0J5VVVJRCx0PXRoaXMuX2JpbmRpbmdzLG49dC5sZW5ndGg7bGV0IGk9dGhpcy5uQ2FjaGVkT2JqZWN0c18scj1BLmxlbmd0aDtmb3IobGV0IG89MCxzPWFyZ3VtZW50cy5sZW5ndGg7byE9PXM7KytvKXtjb25zdCBzPWFyZ3VtZW50c1tvXS51dWlkLGE9ZVtzXTtpZih2b2lkIDAhPT1hKWlmKGRlbGV0ZSBlW3NdLGE8aSl7Y29uc3Qgbz0tLWkscz1BW29dLEI9LS1yLGM9QVtCXTtlW3MudXVpZF09YSxBW2FdPXMsZVtjLnV1aWRdPW8sQVtvXT1jLEEucG9wKCk7Zm9yKGxldCBBPTAsZT1uO0EhPT1lOysrQSl7Y29uc3QgZT10W0FdLG49ZVtvXSxpPWVbQl07ZVthXT1uLGVbb109aSxlLnBvcCgpfX1lbHNle2NvbnN0IGk9LS1yLG89QVtpXTtpPjAmJihlW28udXVpZF09YSksQVthXT1vLEEucG9wKCk7Zm9yKGxldCBBPTAsZT1uO0EhPT1lOysrQSl7Y29uc3QgZT10W0FdO2VbYV09ZVtpXSxlLnBvcCgpfX19dGhpcy5uQ2FjaGVkT2JqZWN0c189aX1zdWJzY3JpYmVfKEEsZSl7Y29uc3QgdD10aGlzLl9iaW5kaW5nc0luZGljZXNCeVBhdGg7bGV0IG49dFtBXTtjb25zdCBpPXRoaXMuX2JpbmRpbmdzO2lmKHZvaWQgMCE9PW4pcmV0dXJuIGlbbl07Y29uc3Qgcj10aGlzLl9wYXRocyxvPXRoaXMuX3BhcnNlZFBhdGhzLHM9dGhpcy5fb2JqZWN0cyxhPXMubGVuZ3RoLEI9dGhpcy5uQ2FjaGVkT2JqZWN0c18sYz1uZXcgQXJyYXkoYSk7bj1pLmxlbmd0aCx0W0FdPW4sci5wdXNoKEEpLG8ucHVzaChlKSxpLnB1c2goYyk7Zm9yKGxldCB0PUIsbj1zLmxlbmd0aDt0IT09bjsrK3Qpe2NvbnN0IG49c1t0XTtjW3RdPW5ldyBRUShuLEEsZSl9cmV0dXJuIGN9dW5zdWJzY3JpYmVfKEEpe2NvbnN0IGU9dGhpcy5fYmluZGluZ3NJbmRpY2VzQnlQYXRoLHQ9ZVtBXTtpZih2b2lkIDAhPT10KXtjb25zdCBuPXRoaXMuX3BhdGhzLGk9dGhpcy5fcGFyc2VkUGF0aHMscj10aGlzLl9iaW5kaW5ncyxvPXIubGVuZ3RoLTEscz1yW29dO2VbQVtvXV09dCxyW3RdPXMsci5wb3AoKSxpW3RdPWlbb10saS5wb3AoKSxuW3RdPW5bb10sbi5wb3AoKX19fWNsYXNzIGxRe2NvbnN0cnVjdG9yKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGwsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106ZS5ibGVuZE1vZGU7dGhpcy5fbWl4ZXI9QSx0aGlzLl9jbGlwPWUsdGhpcy5fbG9jYWxSb290PXQsdGhpcy5ibGVuZE1vZGU9bjtjb25zdCBpPWUudHJhY2tzLHI9aS5sZW5ndGgsbz1uZXcgQXJyYXkocikscz17ZW5kaW5nU3RhcnQ6WWUsZW5kaW5nRW5kOlllfTtmb3IobGV0IEE9MDtBIT09cjsrK0Epe2NvbnN0IGU9aVtBXS5jcmVhdGVJbnRlcnBvbGFudChudWxsKTtvW0FdPWUsZS5zZXR0aW5ncz1zfXRoaXMuX2ludGVycG9sYW50U2V0dGluZ3M9cyx0aGlzLl9pbnRlcnBvbGFudHM9byx0aGlzLl9wcm9wZXJ0eUJpbmRpbmdzPW5ldyBBcnJheShyKSx0aGlzLl9jYWNoZUluZGV4PW51bGwsdGhpcy5fYnlDbGlwQ2FjaGVJbmRleD1udWxsLHRoaXMuX3RpbWVTY2FsZUludGVycG9sYW50PW51bGwsdGhpcy5fd2VpZ2h0SW50ZXJwb2xhbnQ9bnVsbCx0aGlzLmxvb3A9ZGUsdGhpcy5fbG9vcENvdW50PS0xLHRoaXMuX3N0YXJ0VGltZT1udWxsLHRoaXMudGltZT0wLHRoaXMudGltZVNjYWxlPTEsdGhpcy5fZWZmZWN0aXZlVGltZVNjYWxlPTEsdGhpcy53ZWlnaHQ9MSx0aGlzLl9lZmZlY3RpdmVXZWlnaHQ9MSx0aGlzLnJlcGV0aXRpb25zPTEvMCx0aGlzLnBhdXNlZD0hMSx0aGlzLmVuYWJsZWQ9ITAsdGhpcy5jbGFtcFdoZW5GaW5pc2hlZD0hMSx0aGlzLnplcm9TbG9wZUF0U3RhcnQ9ITAsdGhpcy56ZXJvU2xvcGVBdEVuZD0hMH1wbGF5KCl7cmV0dXJuIHRoaXMuX21peGVyLl9hY3RpdmF0ZUFjdGlvbih0aGlzKSx0aGlzfXN0b3AoKXtyZXR1cm4gdGhpcy5fbWl4ZXIuX2RlYWN0aXZhdGVBY3Rpb24odGhpcyksdGhpcy5yZXNldCgpfXJlc2V0KCl7cmV0dXJuIHRoaXMucGF1c2VkPSExLHRoaXMuZW5hYmxlZD0hMCx0aGlzLnRpbWU9MCx0aGlzLl9sb29wQ291bnQ9LTEsdGhpcy5fc3RhcnRUaW1lPW51bGwsdGhpcy5zdG9wRmFkaW5nKCkuc3RvcFdhcnBpbmcoKX1pc1J1bm5pbmcoKXtyZXR1cm4gdGhpcy5lbmFibGVkJiYhdGhpcy5wYXVzZWQmJjAhPT10aGlzLnRpbWVTY2FsZSYmbnVsbD09PXRoaXMuX3N0YXJ0VGltZSYmdGhpcy5fbWl4ZXIuX2lzQWN0aXZlQWN0aW9uKHRoaXMpfWlzU2NoZWR1bGVkKCl7cmV0dXJuIHRoaXMuX21peGVyLl9pc0FjdGl2ZUFjdGlvbih0aGlzKX1zdGFydEF0KEEpe3JldHVybiB0aGlzLl9zdGFydFRpbWU9QSx0aGlzfXNldExvb3AoQSxlKXtyZXR1cm4gdGhpcy5sb29wPUEsdGhpcy5yZXBldGl0aW9ucz1lLHRoaXN9c2V0RWZmZWN0aXZlV2VpZ2h0KEEpe3JldHVybiB0aGlzLndlaWdodD1BLHRoaXMuX2VmZmVjdGl2ZVdlaWdodD10aGlzLmVuYWJsZWQ/QTowLHRoaXMuc3RvcEZhZGluZygpfWdldEVmZmVjdGl2ZVdlaWdodCgpe3JldHVybiB0aGlzLl9lZmZlY3RpdmVXZWlnaHR9ZmFkZUluKEEpe3JldHVybiB0aGlzLl9zY2hlZHVsZUZhZGluZyhBLDAsMSl9ZmFkZU91dChBKXtyZXR1cm4gdGhpcy5fc2NoZWR1bGVGYWRpbmcoQSwxLDApfWNyb3NzRmFkZUZyb20oQSxlLHQpe2lmKEEuZmFkZU91dChlKSx0aGlzLmZhZGVJbihlKSx0KXtjb25zdCB0PXRoaXMuX2NsaXAuZHVyYXRpb24sbj1BLl9jbGlwLmR1cmF0aW9uLGk9bi90LHI9dC9uO0Eud2FycCgxLGksZSksdGhpcy53YXJwKHIsMSxlKX1yZXR1cm4gdGhpc31jcm9zc0ZhZGVUbyhBLGUsdCl7cmV0dXJuIEEuY3Jvc3NGYWRlRnJvbSh0aGlzLGUsdCl9c3RvcEZhZGluZygpe2NvbnN0IEE9dGhpcy5fd2VpZ2h0SW50ZXJwb2xhbnQ7cmV0dXJuIG51bGwhPT1BJiYodGhpcy5fd2VpZ2h0SW50ZXJwb2xhbnQ9bnVsbCx0aGlzLl9taXhlci5fdGFrZUJhY2tDb250cm9sSW50ZXJwb2xhbnQoQSkpLHRoaXN9c2V0RWZmZWN0aXZlVGltZVNjYWxlKEEpe3JldHVybiB0aGlzLnRpbWVTY2FsZT1BLHRoaXMuX2VmZmVjdGl2ZVRpbWVTY2FsZT10aGlzLnBhdXNlZD8wOkEsdGhpcy5zdG9wV2FycGluZygpfWdldEVmZmVjdGl2ZVRpbWVTY2FsZSgpe3JldHVybiB0aGlzLl9lZmZlY3RpdmVUaW1lU2NhbGV9c2V0RHVyYXRpb24oQSl7cmV0dXJuIHRoaXMudGltZVNjYWxlPXRoaXMuX2NsaXAuZHVyYXRpb24vQSx0aGlzLnN0b3BXYXJwaW5nKCl9c3luY1dpdGgoQSl7cmV0dXJuIHRoaXMudGltZT1BLnRpbWUsdGhpcy50aW1lU2NhbGU9QS50aW1lU2NhbGUsdGhpcy5zdG9wV2FycGluZygpfWhhbHQoQSl7cmV0dXJuIHRoaXMud2FycCh0aGlzLl9lZmZlY3RpdmVUaW1lU2NhbGUsMCxBKX13YXJwKEEsZSx0KXtjb25zdCBuPXRoaXMuX21peGVyLGk9bi50aW1lLHI9dGhpcy50aW1lU2NhbGU7bGV0IG89dGhpcy5fdGltZVNjYWxlSW50ZXJwb2xhbnQ7bnVsbD09PW8mJihvPW4uX2xlbmRDb250cm9sSW50ZXJwb2xhbnQoKSx0aGlzLl90aW1lU2NhbGVJbnRlcnBvbGFudD1vKTtjb25zdCBzPW8ucGFyYW1ldGVyUG9zaXRpb25zLGE9by5zYW1wbGVWYWx1ZXM7cmV0dXJuIHNbMF09aSxzWzFdPWkrdCxhWzBdPUEvcixhWzFdPWUvcix0aGlzfXN0b3BXYXJwaW5nKCl7Y29uc3QgQT10aGlzLl90aW1lU2NhbGVJbnRlcnBvbGFudDtyZXR1cm4gbnVsbCE9PUEmJih0aGlzLl90aW1lU2NhbGVJbnRlcnBvbGFudD1udWxsLHRoaXMuX21peGVyLl90YWtlQmFja0NvbnRyb2xJbnRlcnBvbGFudChBKSksdGhpc31nZXRNaXhlcigpe3JldHVybiB0aGlzLl9taXhlcn1nZXRDbGlwKCl7cmV0dXJuIHRoaXMuX2NsaXB9Z2V0Um9vdCgpe3JldHVybiB0aGlzLl9sb2NhbFJvb3R8fHRoaXMuX21peGVyLl9yb290fV91cGRhdGUoQSxlLHQsbil7aWYoIXRoaXMuZW5hYmxlZClyZXR1cm4gdm9pZCB0aGlzLl91cGRhdGVXZWlnaHQoQSk7Y29uc3QgaT10aGlzLl9zdGFydFRpbWU7aWYobnVsbCE9PWkpe2NvbnN0IG49KEEtaSkqdDtuPDB8fDA9PT10P2U9MDoodGhpcy5fc3RhcnRUaW1lPW51bGwsZT10Km4pfWUqPXRoaXMuX3VwZGF0ZVRpbWVTY2FsZShBKTtjb25zdCByPXRoaXMuX3VwZGF0ZVRpbWUoZSksbz10aGlzLl91cGRhdGVXZWlnaHQoQSk7aWYobz4wKXtjb25zdCBBPXRoaXMuX2ludGVycG9sYW50cyxlPXRoaXMuX3Byb3BlcnR5QmluZGluZ3M7c3dpdGNoKHRoaXMuYmxlbmRNb2RlKXtjYXNlIHllOmZvcihsZXQgdD0wLG49QS5sZW5ndGg7dCE9PW47Kyt0KUFbdF0uZXZhbHVhdGUociksZVt0XS5hY2N1bXVsYXRlQWRkaXRpdmUobyk7YnJlYWs7Y2FzZSBVZTpkZWZhdWx0OmZvcihsZXQgdD0wLGk9QS5sZW5ndGg7dCE9PWk7Kyt0KUFbdF0uZXZhbHVhdGUociksZVt0XS5hY2N1bXVsYXRlKG4sbyl9fX1fdXBkYXRlV2VpZ2h0KEEpe2xldCBlPTA7aWYodGhpcy5lbmFibGVkKXtlPXRoaXMud2VpZ2h0O2NvbnN0IHQ9dGhpcy5fd2VpZ2h0SW50ZXJwb2xhbnQ7aWYobnVsbCE9PXQpe2NvbnN0IG49dC5ldmFsdWF0ZShBKVswXTtlKj1uLEE+dC5wYXJhbWV0ZXJQb3NpdGlvbnNbMV0mJih0aGlzLnN0b3BGYWRpbmcoKSwwPT09biYmKHRoaXMuZW5hYmxlZD0hMSkpfX1yZXR1cm4gdGhpcy5fZWZmZWN0aXZlV2VpZ2h0PWUsZX1fdXBkYXRlVGltZVNjYWxlKEEpe2xldCBlPTA7aWYoIXRoaXMucGF1c2VkKXtlPXRoaXMudGltZVNjYWxlO2NvbnN0IHQ9dGhpcy5fdGltZVNjYWxlSW50ZXJwb2xhbnQ7aWYobnVsbCE9PXQpe2UqPXQuZXZhbHVhdGUoQSlbMF0sQT50LnBhcmFtZXRlclBvc2l0aW9uc1sxXSYmKHRoaXMuc3RvcFdhcnBpbmcoKSwwPT09ZT90aGlzLnBhdXNlZD0hMDp0aGlzLnRpbWVTY2FsZT1lKX19cmV0dXJuIHRoaXMuX2VmZmVjdGl2ZVRpbWVTY2FsZT1lLGV9X3VwZGF0ZVRpbWUoQSl7Y29uc3QgZT10aGlzLl9jbGlwLmR1cmF0aW9uLHQ9dGhpcy5sb29wO2xldCBuPXRoaXMudGltZStBLGk9dGhpcy5fbG9vcENvdW50O2NvbnN0IHI9dD09PXBlO2lmKDA9PT1BKXJldHVybi0xPT09aT9uOnImJjE9PSgxJmkpP2UtbjpuO2lmKHQ9PT1NZSl7LTE9PT1pJiYodGhpcy5fbG9vcENvdW50PTAsdGhpcy5fc2V0RW5kaW5ncyghMCwhMCwhMSkpO0E6e2lmKG4+PWUpbj1lO2Vsc2V7aWYoIShuPDApKXt0aGlzLnRpbWU9bjticmVhayBBfW49MH10aGlzLmNsYW1wV2hlbkZpbmlzaGVkP3RoaXMucGF1c2VkPSEwOnRoaXMuZW5hYmxlZD0hMSx0aGlzLnRpbWU9bix0aGlzLl9taXhlci5kaXNwYXRjaEV2ZW50KHt0eXBlOiJmaW5pc2hlZCIsYWN0aW9uOnRoaXMsZGlyZWN0aW9uOkE8MD8tMToxfSl9fWVsc2V7aWYoLTE9PT1pJiYoQT49MD8oaT0wLHRoaXMuX3NldEVuZGluZ3MoITAsMD09PXRoaXMucmVwZXRpdGlvbnMscikpOnRoaXMuX3NldEVuZGluZ3MoMD09PXRoaXMucmVwZXRpdGlvbnMsITAscikpLG4+PWV8fG48MCl7Y29uc3QgdD1NYXRoLmZsb29yKG4vZSk7bi09ZSp0LGkrPU1hdGguYWJzKHQpO2NvbnN0IG89dGhpcy5yZXBldGl0aW9ucy1pO2lmKG88PTApdGhpcy5jbGFtcFdoZW5GaW5pc2hlZD90aGlzLnBhdXNlZD0hMDp0aGlzLmVuYWJsZWQ9ITEsbj1BPjA/ZTowLHRoaXMudGltZT1uLHRoaXMuX21peGVyLmRpc3BhdGNoRXZlbnQoe3R5cGU6ImZpbmlzaGVkIixhY3Rpb246dGhpcyxkaXJlY3Rpb246QT4wPzE6LTF9KTtlbHNle2lmKDE9PT1vKXtjb25zdCBlPUE8MDt0aGlzLl9zZXRFbmRpbmdzKGUsIWUscil9ZWxzZSB0aGlzLl9zZXRFbmRpbmdzKCExLCExLHIpO3RoaXMuX2xvb3BDb3VudD1pLHRoaXMudGltZT1uLHRoaXMuX21peGVyLmRpc3BhdGNoRXZlbnQoe3R5cGU6Imxvb3AiLGFjdGlvbjp0aGlzLGxvb3BEZWx0YTp0fSl9fWVsc2UgdGhpcy50aW1lPW47aWYociYmMT09KDEmaSkpcmV0dXJuIGUtbn1yZXR1cm4gbn1fc2V0RW5kaW5ncyhBLGUsdCl7Y29uc3Qgbj10aGlzLl9pbnRlcnBvbGFudFNldHRpbmdzO3Q/KG4uZW5kaW5nU3RhcnQ9ZmUsbi5lbmRpbmdFbmQ9ZmUpOihuLmVuZGluZ1N0YXJ0PUE/dGhpcy56ZXJvU2xvcGVBdFN0YXJ0P2ZlOlllOk5lLG4uZW5kaW5nRW5kPWU/dGhpcy56ZXJvU2xvcGVBdEVuZD9mZTpZZTpOZSl9X3NjaGVkdWxlRmFkaW5nKEEsZSx0KXtjb25zdCBuPXRoaXMuX21peGVyLGk9bi50aW1lO2xldCByPXRoaXMuX3dlaWdodEludGVycG9sYW50O251bGw9PT1yJiYocj1uLl9sZW5kQ29udHJvbEludGVycG9sYW50KCksdGhpcy5fd2VpZ2h0SW50ZXJwb2xhbnQ9cik7Y29uc3Qgbz1yLnBhcmFtZXRlclBvc2l0aW9ucyxzPXIuc2FtcGxlVmFsdWVzO3JldHVybiBvWzBdPWksc1swXT1lLG9bMV09aStBLHNbMV09dCx0aGlzfX1jb25zdCBoUT1uZXcgRmxvYXQzMkFycmF5KDEpO2NsYXNzIHdRIGV4dGVuZHMgTnR7Y29uc3RydWN0b3IoQSl7c3VwZXIoKSx0aGlzLl9yb290PUEsdGhpcy5faW5pdE1lbW9yeU1hbmFnZXIoKSx0aGlzLl9hY2N1SW5kZXg9MCx0aGlzLnRpbWU9MCx0aGlzLnRpbWVTY2FsZT0xfV9iaW5kQWN0aW9uKEEsZSl7Y29uc3QgdD1BLl9sb2NhbFJvb3R8fHRoaXMuX3Jvb3Qsbj1BLl9jbGlwLnRyYWNrcyxpPW4ubGVuZ3RoLHI9QS5fcHJvcGVydHlCaW5kaW5ncyxvPUEuX2ludGVycG9sYW50cyxzPXQudXVpZCxhPXRoaXMuX2JpbmRpbmdzQnlSb290QW5kTmFtZTtsZXQgQj1hW3NdO3ZvaWQgMD09PUImJihCPXt9LGFbc109Qik7Zm9yKGxldCBBPTA7QSE9PWk7KytBKXtjb25zdCBpPW5bQV0sYT1pLm5hbWU7bGV0IGM9QlthXTtpZih2b2lkIDAhPT1jKSsrYy5yZWZlcmVuY2VDb3VudCxyW0FdPWM7ZWxzZXtpZihjPXJbQV0sdm9pZCAwIT09Yyl7bnVsbD09PWMuX2NhY2hlSW5kZXgmJigrK2MucmVmZXJlbmNlQ291bnQsdGhpcy5fYWRkSW5hY3RpdmVCaW5kaW5nKGMscyxhKSk7Y29udGludWV9Y29uc3Qgbj1lJiZlLl9wcm9wZXJ0eUJpbmRpbmdzW0FdLmJpbmRpbmcucGFyc2VkUGF0aDtjPW5ldyBhUShRUS5jcmVhdGUodCxhLG4pLGkuVmFsdWVUeXBlTmFtZSxpLmdldFZhbHVlU2l6ZSgpKSwrK2MucmVmZXJlbmNlQ291bnQsdGhpcy5fYWRkSW5hY3RpdmVCaW5kaW5nKGMscyxhKSxyW0FdPWN9b1tBXS5yZXN1bHRCdWZmZXI9Yy5idWZmZXJ9fV9hY3RpdmF0ZUFjdGlvbihBKXtpZighdGhpcy5faXNBY3RpdmVBY3Rpb24oQSkpe2lmKG51bGw9PT1BLl9jYWNoZUluZGV4KXtjb25zdCBlPShBLl9sb2NhbFJvb3R8fHRoaXMuX3Jvb3QpLnV1aWQsdD1BLl9jbGlwLnV1aWQsbj10aGlzLl9hY3Rpb25zQnlDbGlwW3RdO3RoaXMuX2JpbmRBY3Rpb24oQSxuJiZuLmtub3duQWN0aW9uc1swXSksdGhpcy5fYWRkSW5hY3RpdmVBY3Rpb24oQSx0LGUpfWNvbnN0IGU9QS5fcHJvcGVydHlCaW5kaW5ncztmb3IobGV0IEE9MCx0PWUubGVuZ3RoO0EhPT10OysrQSl7Y29uc3QgdD1lW0FdOzA9PXQudXNlQ291bnQrKyYmKHRoaXMuX2xlbmRCaW5kaW5nKHQpLHQuc2F2ZU9yaWdpbmFsU3RhdGUoKSl9dGhpcy5fbGVuZEFjdGlvbihBKX19X2RlYWN0aXZhdGVBY3Rpb24oQSl7aWYodGhpcy5faXNBY3RpdmVBY3Rpb24oQSkpe2NvbnN0IGU9QS5fcHJvcGVydHlCaW5kaW5ncztmb3IobGV0IEE9MCx0PWUubGVuZ3RoO0EhPT10OysrQSl7Y29uc3QgdD1lW0FdOzA9PS0tdC51c2VDb3VudCYmKHQucmVzdG9yZU9yaWdpbmFsU3RhdGUoKSx0aGlzLl90YWtlQmFja0JpbmRpbmcodCkpfXRoaXMuX3Rha2VCYWNrQWN0aW9uKEEpfX1faW5pdE1lbW9yeU1hbmFnZXIoKXt0aGlzLl9hY3Rpb25zPVtdLHRoaXMuX25BY3RpdmVBY3Rpb25zPTAsdGhpcy5fYWN0aW9uc0J5Q2xpcD17fSx0aGlzLl9iaW5kaW5ncz1bXSx0aGlzLl9uQWN0aXZlQmluZGluZ3M9MCx0aGlzLl9iaW5kaW5nc0J5Um9vdEFuZE5hbWU9e30sdGhpcy5fY29udHJvbEludGVycG9sYW50cz1bXSx0aGlzLl9uQWN0aXZlQ29udHJvbEludGVycG9sYW50cz0wO2NvbnN0IEE9dGhpczt0aGlzLnN0YXRzPXthY3Rpb25zOntnZXQgdG90YWwoKXtyZXR1cm4gQS5fYWN0aW9ucy5sZW5ndGh9LGdldCBpblVzZSgpe3JldHVybiBBLl9uQWN0aXZlQWN0aW9uc319LGJpbmRpbmdzOntnZXQgdG90YWwoKXtyZXR1cm4gQS5fYmluZGluZ3MubGVuZ3RofSxnZXQgaW5Vc2UoKXtyZXR1cm4gQS5fbkFjdGl2ZUJpbmRpbmdzfX0sY29udHJvbEludGVycG9sYW50czp7Z2V0IHRvdGFsKCl7cmV0dXJuIEEuX2NvbnRyb2xJbnRlcnBvbGFudHMubGVuZ3RofSxnZXQgaW5Vc2UoKXtyZXR1cm4gQS5fbkFjdGl2ZUNvbnRyb2xJbnRlcnBvbGFudHN9fX19X2lzQWN0aXZlQWN0aW9uKEEpe2NvbnN0IGU9QS5fY2FjaGVJbmRleDtyZXR1cm4gbnVsbCE9PWUmJmU8dGhpcy5fbkFjdGl2ZUFjdGlvbnN9X2FkZEluYWN0aXZlQWN0aW9uKEEsZSx0KXtjb25zdCBuPXRoaXMuX2FjdGlvbnMsaT10aGlzLl9hY3Rpb25zQnlDbGlwO2xldCByPWlbZV07aWYodm9pZCAwPT09cilyPXtrbm93bkFjdGlvbnM6W0FdLGFjdGlvbkJ5Um9vdDp7fX0sQS5fYnlDbGlwQ2FjaGVJbmRleD0wLGlbZV09cjtlbHNle2NvbnN0IGU9ci5rbm93bkFjdGlvbnM7QS5fYnlDbGlwQ2FjaGVJbmRleD1lLmxlbmd0aCxlLnB1c2goQSl9QS5fY2FjaGVJbmRleD1uLmxlbmd0aCxuLnB1c2goQSksci5hY3Rpb25CeVJvb3RbdF09QX1fcmVtb3ZlSW5hY3RpdmVBY3Rpb24oQSl7Y29uc3QgZT10aGlzLl9hY3Rpb25zLHQ9ZVtlLmxlbmd0aC0xXSxuPUEuX2NhY2hlSW5kZXg7dC5fY2FjaGVJbmRleD1uLGVbbl09dCxlLnBvcCgpLEEuX2NhY2hlSW5kZXg9bnVsbDtjb25zdCBpPUEuX2NsaXAudXVpZCxyPXRoaXMuX2FjdGlvbnNCeUNsaXAsbz1yW2ldLHM9by5rbm93bkFjdGlvbnMsYT1zW3MubGVuZ3RoLTFdLEI9QS5fYnlDbGlwQ2FjaGVJbmRleDthLl9ieUNsaXBDYWNoZUluZGV4PUIsc1tCXT1hLHMucG9wKCksQS5fYnlDbGlwQ2FjaGVJbmRleD1udWxsO2RlbGV0ZSBvLmFjdGlvbkJ5Um9vdFsoQS5fbG9jYWxSb290fHx0aGlzLl9yb290KS51dWlkXSwwPT09cy5sZW5ndGgmJmRlbGV0ZSByW2ldLHRoaXMuX3JlbW92ZUluYWN0aXZlQmluZGluZ3NGb3JBY3Rpb24oQSl9X3JlbW92ZUluYWN0aXZlQmluZGluZ3NGb3JBY3Rpb24oQSl7Y29uc3QgZT1BLl9wcm9wZXJ0eUJpbmRpbmdzO2ZvcihsZXQgQT0wLHQ9ZS5sZW5ndGg7QSE9PXQ7KytBKXtjb25zdCB0PWVbQV07MD09LS10LnJlZmVyZW5jZUNvdW50JiZ0aGlzLl9yZW1vdmVJbmFjdGl2ZUJpbmRpbmcodCl9fV9sZW5kQWN0aW9uKEEpe2NvbnN0IGU9dGhpcy5fYWN0aW9ucyx0PUEuX2NhY2hlSW5kZXgsbj10aGlzLl9uQWN0aXZlQWN0aW9ucysrLGk9ZVtuXTtBLl9jYWNoZUluZGV4PW4sZVtuXT1BLGkuX2NhY2hlSW5kZXg9dCxlW3RdPWl9X3Rha2VCYWNrQWN0aW9uKEEpe2NvbnN0IGU9dGhpcy5fYWN0aW9ucyx0PUEuX2NhY2hlSW5kZXgsbj0tLXRoaXMuX25BY3RpdmVBY3Rpb25zLGk9ZVtuXTtBLl9jYWNoZUluZGV4PW4sZVtuXT1BLGkuX2NhY2hlSW5kZXg9dCxlW3RdPWl9X2FkZEluYWN0aXZlQmluZGluZyhBLGUsdCl7Y29uc3Qgbj10aGlzLl9iaW5kaW5nc0J5Um9vdEFuZE5hbWUsaT10aGlzLl9iaW5kaW5ncztsZXQgcj1uW2VdO3ZvaWQgMD09PXImJihyPXt9LG5bZV09ciksclt0XT1BLEEuX2NhY2hlSW5kZXg9aS5sZW5ndGgsaS5wdXNoKEEpfV9yZW1vdmVJbmFjdGl2ZUJpbmRpbmcoQSl7Y29uc3QgZT10aGlzLl9iaW5kaW5ncyx0PUEuYmluZGluZyxuPXQucm9vdE5vZGUudXVpZCxpPXQucGF0aCxyPXRoaXMuX2JpbmRpbmdzQnlSb290QW5kTmFtZSxvPXJbbl0scz1lW2UubGVuZ3RoLTFdLGE9QS5fY2FjaGVJbmRleDtzLl9jYWNoZUluZGV4PWEsZVthXT1zLGUucG9wKCksZGVsZXRlIG9baV0sMD09PU9iamVjdC5rZXlzKG8pLmxlbmd0aCYmZGVsZXRlIHJbbl19X2xlbmRCaW5kaW5nKEEpe2NvbnN0IGU9dGhpcy5fYmluZGluZ3MsdD1BLl9jYWNoZUluZGV4LG49dGhpcy5fbkFjdGl2ZUJpbmRpbmdzKyssaT1lW25dO0EuX2NhY2hlSW5kZXg9bixlW25dPUEsaS5fY2FjaGVJbmRleD10LGVbdF09aX1fdGFrZUJhY2tCaW5kaW5nKEEpe2NvbnN0IGU9dGhpcy5fYmluZGluZ3MsdD1BLl9jYWNoZUluZGV4LG49LS10aGlzLl9uQWN0aXZlQmluZGluZ3MsaT1lW25dO0EuX2NhY2hlSW5kZXg9bixlW25dPUEsaS5fY2FjaGVJbmRleD10LGVbdF09aX1fbGVuZENvbnRyb2xJbnRlcnBvbGFudCgpe2NvbnN0IEE9dGhpcy5fY29udHJvbEludGVycG9sYW50cyxlPXRoaXMuX25BY3RpdmVDb250cm9sSW50ZXJwb2xhbnRzKys7bGV0IHQ9QVtlXTtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9bmV3IGpnKG5ldyBGbG9hdDMyQXJyYXkoMiksbmV3IEZsb2F0MzJBcnJheSgyKSwxLGhRKSx0Ll9fY2FjaGVJbmRleD1lLEFbZV09dCksdH1fdGFrZUJhY2tDb250cm9sSW50ZXJwb2xhbnQoQSl7Y29uc3QgZT10aGlzLl9jb250cm9sSW50ZXJwb2xhbnRzLHQ9QS5fX2NhY2hlSW5kZXgsbj0tLXRoaXMuX25BY3RpdmVDb250cm9sSW50ZXJwb2xhbnRzLGk9ZVtuXTtBLl9fY2FjaGVJbmRleD1uLGVbbl09QSxpLl9fY2FjaGVJbmRleD10LGVbdF09aX1jbGlwQWN0aW9uKEEsZSx0KXtjb25zdCBuPWV8fHRoaXMuX3Jvb3QsaT1uLnV1aWQ7bGV0IHI9InN0cmluZyI9PXR5cGVvZiBBP1pnLmZpbmRCeU5hbWUobixBKTpBO2NvbnN0IG89bnVsbCE9PXI/ci51dWlkOkEscz10aGlzLl9hY3Rpb25zQnlDbGlwW29dO2xldCBhPW51bGw7aWYodm9pZCAwPT09dCYmKHQ9bnVsbCE9PXI/ci5ibGVuZE1vZGU6VWUpLHZvaWQgMCE9PXMpe2NvbnN0IEE9cy5hY3Rpb25CeVJvb3RbaV07aWYodm9pZCAwIT09QSYmQS5ibGVuZE1vZGU9PT10KXJldHVybiBBO2E9cy5rbm93bkFjdGlvbnNbMF0sbnVsbD09PXImJihyPWEuX2NsaXApfWlmKG51bGw9PT1yKXJldHVybiBudWxsO2NvbnN0IEI9bmV3IGxRKHRoaXMscixlLHQpO3JldHVybiB0aGlzLl9iaW5kQWN0aW9uKEIsYSksdGhpcy5fYWRkSW5hY3RpdmVBY3Rpb24oQixvLGkpLEJ9ZXhpc3RpbmdBY3Rpb24oQSxlKXtjb25zdCB0PWV8fHRoaXMuX3Jvb3Qsbj10LnV1aWQsaT0ic3RyaW5nIj09dHlwZW9mIEE/WmcuZmluZEJ5TmFtZSh0LEEpOkEscj1pP2kudXVpZDpBLG89dGhpcy5fYWN0aW9uc0J5Q2xpcFtyXTtyZXR1cm4gdm9pZCAwIT09byYmby5hY3Rpb25CeVJvb3Rbbl18fG51bGx9c3RvcEFsbEFjdGlvbigpe2NvbnN0IEE9dGhpcy5fYWN0aW9ucztmb3IobGV0IGU9dGhpcy5fbkFjdGl2ZUFjdGlvbnMtMTtlPj0wOy0tZSlBW2VdLnN0b3AoKTtyZXR1cm4gdGhpc311cGRhdGUoQSl7QSo9dGhpcy50aW1lU2NhbGU7Y29uc3QgZT10aGlzLl9hY3Rpb25zLHQ9dGhpcy5fbkFjdGl2ZUFjdGlvbnMsbj10aGlzLnRpbWUrPUEsaT1NYXRoLnNpZ24oQSkscj10aGlzLl9hY2N1SW5kZXhePTE7Zm9yKGxldCBvPTA7byE9PXQ7KytvKXtlW29dLl91cGRhdGUobixBLGkscil9Y29uc3Qgbz10aGlzLl9iaW5kaW5ncyxzPXRoaXMuX25BY3RpdmVCaW5kaW5ncztmb3IobGV0IEE9MDtBIT09czsrK0Epb1tBXS5hcHBseShyKTtyZXR1cm4gdGhpc31zZXRUaW1lKEEpe3RoaXMudGltZT0wO2ZvcihsZXQgQT0wO0E8dGhpcy5fYWN0aW9ucy5sZW5ndGg7QSsrKXRoaXMuX2FjdGlvbnNbQV0udGltZT0wO3JldHVybiB0aGlzLnVwZGF0ZShBKX1nZXRSb290KCl7cmV0dXJuIHRoaXMuX3Jvb3R9dW5jYWNoZUNsaXAoQSl7Y29uc3QgZT10aGlzLl9hY3Rpb25zLHQ9QS51dWlkLG49dGhpcy5fYWN0aW9uc0J5Q2xpcCxpPW5bdF07aWYodm9pZCAwIT09aSl7Y29uc3QgQT1pLmtub3duQWN0aW9ucztmb3IobGV0IHQ9MCxuPUEubGVuZ3RoO3QhPT1uOysrdCl7Y29uc3Qgbj1BW3RdO3RoaXMuX2RlYWN0aXZhdGVBY3Rpb24obik7Y29uc3QgaT1uLl9jYWNoZUluZGV4LHI9ZVtlLmxlbmd0aC0xXTtuLl9jYWNoZUluZGV4PW51bGwsbi5fYnlDbGlwQ2FjaGVJbmRleD1udWxsLHIuX2NhY2hlSW5kZXg9aSxlW2ldPXIsZS5wb3AoKSx0aGlzLl9yZW1vdmVJbmFjdGl2ZUJpbmRpbmdzRm9yQWN0aW9uKG4pfWRlbGV0ZSBuW3RdfX11bmNhY2hlUm9vdChBKXtjb25zdCBlPUEudXVpZCx0PXRoaXMuX2FjdGlvbnNCeUNsaXA7Zm9yKGNvbnN0IEEgaW4gdCl7Y29uc3Qgbj10W0FdLmFjdGlvbkJ5Um9vdFtlXTt2b2lkIDAhPT1uJiYodGhpcy5fZGVhY3RpdmF0ZUFjdGlvbihuKSx0aGlzLl9yZW1vdmVJbmFjdGl2ZUFjdGlvbihuKSl9Y29uc3Qgbj10aGlzLl9iaW5kaW5nc0J5Um9vdEFuZE5hbWVbZV07aWYodm9pZCAwIT09bilmb3IoY29uc3QgQSBpbiBuKXtjb25zdCBlPW5bQV07ZS5yZXN0b3JlT3JpZ2luYWxTdGF0ZSgpLHRoaXMuX3JlbW92ZUluYWN0aXZlQmluZGluZyhlKX19dW5jYWNoZUFjdGlvbihBLGUpe2NvbnN0IHQ9dGhpcy5leGlzdGluZ0FjdGlvbihBLGUpO251bGwhPT10JiYodGhpcy5fZGVhY3RpdmF0ZUFjdGlvbih0KSx0aGlzLl9yZW1vdmVJbmFjdGl2ZUFjdGlvbih0KSl9fWNsYXNzIENRe2NvbnN0cnVjdG9yKEEpe3RoaXMudmFsdWU9QX1jbG9uZSgpe3JldHVybiBuZXcgQ1Eodm9pZCAwPT09dGhpcy52YWx1ZS5jbG9uZT90aGlzLnZhbHVlOnRoaXMudmFsdWUuY2xvbmUoKSl9fWxldCBJUT0wO2NsYXNzIE1RIGV4dGVuZHMgTnR7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMuaXNVbmlmb3Jtc0dyb3VwPSEwLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCJpZCIse3ZhbHVlOklRKyt9KSx0aGlzLm5hbWU9IiIsdGhpcy51c2FnZT11dCx0aGlzLnVuaWZvcm1zPVtdfWFkZChBKXtyZXR1cm4gdGhpcy51bmlmb3Jtcy5wdXNoKEEpLHRoaXN9cmVtb3ZlKEEpe2NvbnN0IGU9dGhpcy51bmlmb3Jtcy5pbmRleE9mKEEpO3JldHVybi0xIT09ZSYmdGhpcy51bmlmb3Jtcy5zcGxpY2UoZSwxKSx0aGlzfXNldE5hbWUoQSl7cmV0dXJuIHRoaXMubmFtZT1BLHRoaXN9c2V0VXNhZ2UoQSl7cmV0dXJuIHRoaXMudXNhZ2U9QSx0aGlzfWRpc3Bvc2UoKXtyZXR1cm4gdGhpcy5kaXNwYXRjaEV2ZW50KHt0eXBlOiJkaXNwb3NlIn0pLHRoaXN9Y29weShBKXt0aGlzLm5hbWU9QS5uYW1lLHRoaXMudXNhZ2U9QS51c2FnZTtjb25zdCBlPUEudW5pZm9ybXM7dGhpcy51bmlmb3Jtcy5sZW5ndGg9MDtmb3IobGV0IEE9MCx0PWUubGVuZ3RoO0E8dDtBKyspdGhpcy51bmlmb3Jtcy5wdXNoKGVbQV0uY2xvbmUoKSk7cmV0dXJuIHRoaXN9Y2xvbmUoKXtyZXR1cm4obmV3IHRoaXMuY29uc3RydWN0b3IpLmNvcHkodGhpcyl9fWNsYXNzIGRRIGV4dGVuZHMgYmF7Y29uc3RydWN0b3IoQSxlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MTtzdXBlcihBLGUpLHRoaXMuaXNJbnN0YW5jZWRJbnRlcmxlYXZlZEJ1ZmZlcj0hMCx0aGlzLm1lc2hQZXJBdHRyaWJ1dGU9dH1jb3B5KEEpe3JldHVybiBzdXBlci5jb3B5KEEpLHRoaXMubWVzaFBlckF0dHJpYnV0ZT1BLm1lc2hQZXJBdHRyaWJ1dGUsdGhpc31jbG9uZShBKXtjb25zdCBlPXN1cGVyLmNsb25lKEEpO3JldHVybiBlLm1lc2hQZXJBdHRyaWJ1dGU9dGhpcy5tZXNoUGVyQXR0cmlidXRlLGV9dG9KU09OKEEpe2NvbnN0IGU9c3VwZXIudG9KU09OKEEpO3JldHVybiBlLmlzSW5zdGFuY2VkSW50ZXJsZWF2ZWRCdWZmZXI9ITAsZS5tZXNoUGVyQXR0cmlidXRlPXRoaXMubWVzaFBlckF0dHJpYnV0ZSxlfX1jbGFzcyBwUXtjb25zdHJ1Y3RvcihBLGUsdCxuLGkpe3RoaXMuaXNHTEJ1ZmZlckF0dHJpYnV0ZT0hMCx0aGlzLm5hbWU9IiIsdGhpcy5idWZmZXI9QSx0aGlzLnR5cGU9ZSx0aGlzLml0ZW1TaXplPXQsdGhpcy5lbGVtZW50U2l6ZT1uLHRoaXMuY291bnQ9aSx0aGlzLnZlcnNpb249MH1zZXQgbmVlZHNVcGRhdGUoQSl7ITA9PT1BJiZ0aGlzLnZlcnNpb24rK31zZXRCdWZmZXIoQSl7cmV0dXJuIHRoaXMuYnVmZmVyPUEsdGhpc31zZXRUeXBlKEEsZSl7cmV0dXJuIHRoaXMudHlwZT1BLHRoaXMuZWxlbWVudFNpemU9ZSx0aGlzfXNldEl0ZW1TaXplKEEpe3JldHVybiB0aGlzLml0ZW1TaXplPUEsdGhpc31zZXRDb3VudChBKXtyZXR1cm4gdGhpcy5jb3VudD1BLHRoaXN9fWNsYXNzIG1Re2NvbnN0cnVjdG9yKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjAsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106MS8wO3RoaXMucmF5PW5ldyBabihBLGUpLHRoaXMubmVhcj10LHRoaXMuZmFyPW4sdGhpcy5jYW1lcmE9bnVsbCx0aGlzLmxheWVycz1uZXcgYWksdGhpcy5wYXJhbXM9e01lc2g6e30sTGluZTp7dGhyZXNob2xkOjF9LExPRDp7fSxQb2ludHM6e3RocmVzaG9sZDoxfSxTcHJpdGU6e319fXNldChBLGUpe3RoaXMucmF5LnNldChBLGUpfXNldEZyb21DYW1lcmEoQSxlKXtlLmlzUGVyc3BlY3RpdmVDYW1lcmE/KHRoaXMucmF5Lm9yaWdpbi5zZXRGcm9tTWF0cml4UG9zaXRpb24oZS5tYXRyaXhXb3JsZCksdGhpcy5yYXkuZGlyZWN0aW9uLnNldChBLngsQS55LC41KS51bnByb2plY3QoZSkuc3ViKHRoaXMucmF5Lm9yaWdpbikubm9ybWFsaXplKCksdGhpcy5jYW1lcmE9ZSk6ZS5pc09ydGhvZ3JhcGhpY0NhbWVyYT8odGhpcy5yYXkub3JpZ2luLnNldChBLngsQS55LChlLm5lYXIrZS5mYXIpLyhlLm5lYXItZS5mYXIpKS51bnByb2plY3QoZSksdGhpcy5yYXkuZGlyZWN0aW9uLnNldCgwLDAsLTEpLnRyYW5zZm9ybURpcmVjdGlvbihlLm1hdHJpeFdvcmxkKSx0aGlzLmNhbWVyYT1lKTpjb25zb2xlLmVycm9yKCJUSFJFRS5SYXljYXN0ZXI6IFVuc3VwcG9ydGVkIGNhbWVyYSB0eXBlOiAiK2UudHlwZSl9aW50ZXJzZWN0T2JqZWN0KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpbXTtyZXR1cm4gRFEoQSx0aGlzLGUsIShhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSl8fGFyZ3VtZW50c1sxXSksZS5zb3J0KEZRKSxlfWludGVyc2VjdE9iamVjdHMoQSl7bGV0IGU9IShhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSl8fGFyZ3VtZW50c1sxXSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpbXTtmb3IobGV0IG49MCxpPUEubGVuZ3RoO248aTtuKyspRFEoQVtuXSx0aGlzLHQsZSk7cmV0dXJuIHQuc29ydChGUSksdH19ZnVuY3Rpb24gRlEoQSxlKXtyZXR1cm4gQS5kaXN0YW5jZS1lLmRpc3RhbmNlfWZ1bmN0aW9uIERRKEEsZSx0LG4pe2lmKEEubGF5ZXJzLnRlc3QoZS5sYXllcnMpJiZBLnJheWNhc3QoZSx0KSwhMD09PW4pe2NvbnN0IG49QS5jaGlsZHJlbjtmb3IobGV0IEE9MCxpPW4ubGVuZ3RoO0E8aTtBKyspRFEobltBXSxlLHQsITApfX1jbGFzcyBZUXtjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MDtyZXR1cm4gdGhpcy5yYWRpdXM9QSx0aGlzLnBoaT1lLHRoaXMudGhldGE9dCx0aGlzfXNldChBLGUsdCl7cmV0dXJuIHRoaXMucmFkaXVzPUEsdGhpcy5waGk9ZSx0aGlzLnRoZXRhPXQsdGhpc31jb3B5KEEpe3JldHVybiB0aGlzLnJhZGl1cz1BLnJhZGl1cyx0aGlzLnBoaT1BLnBoaSx0aGlzLnRoZXRhPUEudGhldGEsdGhpc31tYWtlU2FmZSgpe3JldHVybiB0aGlzLnBoaT1NYXRoLm1heCgxZS02LE1hdGgubWluKE1hdGguUEktMWUtNix0aGlzLnBoaSkpLHRoaXN9c2V0RnJvbVZlY3RvcjMoQSl7cmV0dXJuIHRoaXMuc2V0RnJvbUNhcnRlc2lhbkNvb3JkcyhBLngsQS55LEEueil9c2V0RnJvbUNhcnRlc2lhbkNvb3JkcyhBLGUsdCl7cmV0dXJuIHRoaXMucmFkaXVzPU1hdGguc3FydChBKkErZSplK3QqdCksMD09PXRoaXMucmFkaXVzPyh0aGlzLnRoZXRhPTAsdGhpcy5waGk9MCk6KHRoaXMudGhldGE9TWF0aC5hdGFuMihBLHQpLHRoaXMucGhpPU1hdGguYWNvcyhHdChlL3RoaXMucmFkaXVzLC0xLDEpKSksdGhpc31jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX19Y2xhc3MgZlF7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjA7cmV0dXJuIHRoaXMucmFkaXVzPUEsdGhpcy50aGV0YT1lLHRoaXMueT10LHRoaXN9c2V0KEEsZSx0KXtyZXR1cm4gdGhpcy5yYWRpdXM9QSx0aGlzLnRoZXRhPWUsdGhpcy55PXQsdGhpc31jb3B5KEEpe3JldHVybiB0aGlzLnJhZGl1cz1BLnJhZGl1cyx0aGlzLnRoZXRhPUEudGhldGEsdGhpcy55PUEueSx0aGlzfXNldEZyb21WZWN0b3IzKEEpe3JldHVybiB0aGlzLnNldEZyb21DYXJ0ZXNpYW5Db29yZHMoQS54LEEueSxBLnopfXNldEZyb21DYXJ0ZXNpYW5Db29yZHMoQSxlLHQpe3JldHVybiB0aGlzLnJhZGl1cz1NYXRoLnNxcnQoQSpBK3QqdCksdGhpcy50aGV0YT1NYXRoLmF0YW4yKEEsdCksdGhpcy55PWUsdGhpc31jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX19Y29uc3QgTlE9bmV3IEx0O2NsYXNzIFVRe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBMdCgxLzAsMS8wKSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgTHQoLTEvMCwtMS8wKTt0aGlzLmlzQm94Mj0hMCx0aGlzLm1pbj1BLHRoaXMubWF4PWV9c2V0KEEsZSl7cmV0dXJuIHRoaXMubWluLmNvcHkoQSksdGhpcy5tYXguY29weShlKSx0aGlzfXNldEZyb21Qb2ludHMoQSl7dGhpcy5tYWtlRW1wdHkoKTtmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspdGhpcy5leHBhbmRCeVBvaW50KEFbZV0pO3JldHVybiB0aGlzfXNldEZyb21DZW50ZXJBbmRTaXplKEEsZSl7Y29uc3QgdD1OUS5jb3B5KGUpLm11bHRpcGx5U2NhbGFyKC41KTtyZXR1cm4gdGhpcy5taW4uY29weShBKS5zdWIodCksdGhpcy5tYXguY29weShBKS5hZGQodCksdGhpc31jbG9uZSgpe3JldHVybihuZXcgdGhpcy5jb25zdHJ1Y3RvcikuY29weSh0aGlzKX1jb3B5KEEpe3JldHVybiB0aGlzLm1pbi5jb3B5KEEubWluKSx0aGlzLm1heC5jb3B5KEEubWF4KSx0aGlzfW1ha2VFbXB0eSgpe3JldHVybiB0aGlzLm1pbi54PXRoaXMubWluLnk9MS8wLHRoaXMubWF4Lng9dGhpcy5tYXgueT0tMS8wLHRoaXN9aXNFbXB0eSgpe3JldHVybiB0aGlzLm1heC54PHRoaXMubWluLnh8fHRoaXMubWF4Lnk8dGhpcy5taW4ueX1nZXRDZW50ZXIoQSl7cmV0dXJuIHRoaXMuaXNFbXB0eSgpP0Euc2V0KDAsMCk6QS5hZGRWZWN0b3JzKHRoaXMubWluLHRoaXMubWF4KS5tdWx0aXBseVNjYWxhciguNSl9Z2V0U2l6ZShBKXtyZXR1cm4gdGhpcy5pc0VtcHR5KCk/QS5zZXQoMCwwKTpBLnN1YlZlY3RvcnModGhpcy5tYXgsdGhpcy5taW4pfWV4cGFuZEJ5UG9pbnQoQSl7cmV0dXJuIHRoaXMubWluLm1pbihBKSx0aGlzLm1heC5tYXgoQSksdGhpc31leHBhbmRCeVZlY3RvcihBKXtyZXR1cm4gdGhpcy5taW4uc3ViKEEpLHRoaXMubWF4LmFkZChBKSx0aGlzfWV4cGFuZEJ5U2NhbGFyKEEpe3JldHVybiB0aGlzLm1pbi5hZGRTY2FsYXIoLUEpLHRoaXMubWF4LmFkZFNjYWxhcihBKSx0aGlzfWNvbnRhaW5zUG9pbnQoQSl7cmV0dXJuIShBLng8dGhpcy5taW4ueHx8QS54PnRoaXMubWF4Lnh8fEEueTx0aGlzLm1pbi55fHxBLnk+dGhpcy5tYXgueSl9Y29udGFpbnNCb3goQSl7cmV0dXJuIHRoaXMubWluLng8PUEubWluLngmJkEubWF4Lng8PXRoaXMubWF4LngmJnRoaXMubWluLnk8PUEubWluLnkmJkEubWF4Lnk8PXRoaXMubWF4Lnl9Z2V0UGFyYW1ldGVyKEEsZSl7cmV0dXJuIGUuc2V0KChBLngtdGhpcy5taW4ueCkvKHRoaXMubWF4LngtdGhpcy5taW4ueCksKEEueS10aGlzLm1pbi55KS8odGhpcy5tYXgueS10aGlzLm1pbi55KSl9aW50ZXJzZWN0c0JveChBKXtyZXR1cm4hKEEubWF4Lng8dGhpcy5taW4ueHx8QS5taW4ueD50aGlzLm1heC54fHxBLm1heC55PHRoaXMubWluLnl8fEEubWluLnk+dGhpcy5tYXgueSl9Y2xhbXBQb2ludChBLGUpe3JldHVybiBlLmNvcHkoQSkuY2xhbXAodGhpcy5taW4sdGhpcy5tYXgpfWRpc3RhbmNlVG9Qb2ludChBKXtyZXR1cm4gdGhpcy5jbGFtcFBvaW50KEEsTlEpLmRpc3RhbmNlVG8oQSl9aW50ZXJzZWN0KEEpe3JldHVybiB0aGlzLm1pbi5tYXgoQS5taW4pLHRoaXMubWF4Lm1pbihBLm1heCksdGhpcy5pc0VtcHR5KCkmJnRoaXMubWFrZUVtcHR5KCksdGhpc311bmlvbihBKXtyZXR1cm4gdGhpcy5taW4ubWluKEEubWluKSx0aGlzLm1heC5tYXgoQS5tYXgpLHRoaXN9dHJhbnNsYXRlKEEpe3JldHVybiB0aGlzLm1pbi5hZGQoQSksdGhpcy5tYXguYWRkKEEpLHRoaXN9ZXF1YWxzKEEpe3JldHVybiBBLm1pbi5lcXVhbHModGhpcy5taW4pJiZBLm1heC5lcXVhbHModGhpcy5tYXgpfX1jb25zdCB5UT1uZXcgZG4sVFE9bmV3IGRuO2NsYXNzIHhRe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBkbixlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG47dGhpcy5zdGFydD1BLHRoaXMuZW5kPWV9c2V0KEEsZSl7cmV0dXJuIHRoaXMuc3RhcnQuY29weShBKSx0aGlzLmVuZC5jb3B5KGUpLHRoaXN9Y29weShBKXtyZXR1cm4gdGhpcy5zdGFydC5jb3B5KEEuc3RhcnQpLHRoaXMuZW5kLmNvcHkoQS5lbmQpLHRoaXN9Z2V0Q2VudGVyKEEpe3JldHVybiBBLmFkZFZlY3RvcnModGhpcy5zdGFydCx0aGlzLmVuZCkubXVsdGlwbHlTY2FsYXIoLjUpfWRlbHRhKEEpe3JldHVybiBBLnN1YlZlY3RvcnModGhpcy5lbmQsdGhpcy5zdGFydCl9ZGlzdGFuY2VTcSgpe3JldHVybiB0aGlzLnN0YXJ0LmRpc3RhbmNlVG9TcXVhcmVkKHRoaXMuZW5kKX1kaXN0YW5jZSgpe3JldHVybiB0aGlzLnN0YXJ0LmRpc3RhbmNlVG8odGhpcy5lbmQpfWF0KEEsZSl7cmV0dXJuIHRoaXMuZGVsdGEoZSkubXVsdGlwbHlTY2FsYXIoQSkuYWRkKHRoaXMuc3RhcnQpfWNsb3Nlc3RQb2ludFRvUG9pbnRQYXJhbWV0ZXIoQSxlKXt5US5zdWJWZWN0b3JzKEEsdGhpcy5zdGFydCksVFEuc3ViVmVjdG9ycyh0aGlzLmVuZCx0aGlzLnN0YXJ0KTtjb25zdCB0PVRRLmRvdChUUSk7bGV0IG49VFEuZG90KHlRKS90O3JldHVybiBlJiYobj1HdChuLDAsMSkpLG59Y2xvc2VzdFBvaW50VG9Qb2ludChBLGUsdCl7Y29uc3Qgbj10aGlzLmNsb3Nlc3RQb2ludFRvUG9pbnRQYXJhbWV0ZXIoQSxlKTtyZXR1cm4gdGhpcy5kZWx0YSh0KS5tdWx0aXBseVNjYWxhcihuKS5hZGQodGhpcy5zdGFydCl9YXBwbHlNYXRyaXg0KEEpe3JldHVybiB0aGlzLnN0YXJ0LmFwcGx5TWF0cml4NChBKSx0aGlzLmVuZC5hcHBseU1hdHJpeDQoQSksdGhpc31lcXVhbHMoQSl7cmV0dXJuIEEuc3RhcnQuZXF1YWxzKHRoaXMuc3RhcnQpJiZBLmVuZC5lcXVhbHModGhpcy5lbmQpfWNsb25lKCl7cmV0dXJuKG5ldyB0aGlzLmNvbnN0cnVjdG9yKS5jb3B5KHRoaXMpfX1jb25zdCBSUT1uZXcgZG47Y2xhc3MgR1EgZXh0ZW5kcyBwaXtjb25zdHJ1Y3RvcihBLGUpe3N1cGVyKCksdGhpcy5saWdodD1BLHRoaXMubWF0cml4PUEubWF0cml4V29ybGQsdGhpcy5tYXRyaXhBdXRvVXBkYXRlPSExLHRoaXMuY29sb3I9ZSx0aGlzLnR5cGU9IlNwb3RMaWdodEhlbHBlciI7Y29uc3QgdD1uZXcgbHIsbj1bMCwwLDAsMCwwLDEsMCwwLDAsMSwwLDEsMCwwLDAsLTEsMCwxLDAsMCwwLDAsMSwxLDAsMCwwLDAsLTEsMV07Zm9yKGxldCBBPTAsZT0xLHQ9MzI7QTx0O0ErKyxlKyspe2NvbnN0IGk9QS90Kk1hdGguUEkqMixyPWUvdCpNYXRoLlBJKjI7bi5wdXNoKE1hdGguY29zKGkpLE1hdGguc2luKGkpLDEsTWF0aC5jb3MociksTWF0aC5zaW4ociksMSl9dC5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IobiwzKSk7Y29uc3QgaT1uZXcgTkIoe2ZvZzohMSx0b25lTWFwcGVkOiExfSk7dGhpcy5jb25lPW5ldyBIQih0LGkpLHRoaXMuYWRkKHRoaXMuY29uZSksdGhpcy51cGRhdGUoKX1kaXNwb3NlKCl7dGhpcy5jb25lLmdlb21ldHJ5LmRpc3Bvc2UoKSx0aGlzLmNvbmUubWF0ZXJpYWwuZGlzcG9zZSgpfXVwZGF0ZSgpe3RoaXMubGlnaHQudXBkYXRlV29ybGRNYXRyaXgoITAsITEpLHRoaXMubGlnaHQudGFyZ2V0LnVwZGF0ZVdvcmxkTWF0cml4KCEwLCExKTtjb25zdCBBPXRoaXMubGlnaHQuZGlzdGFuY2U/dGhpcy5saWdodC5kaXN0YW5jZToxZTMsZT1BKk1hdGgudGFuKHRoaXMubGlnaHQuYW5nbGUpO3RoaXMuY29uZS5zY2FsZS5zZXQoZSxlLEEpLFJRLnNldEZyb21NYXRyaXhQb3NpdGlvbih0aGlzLmxpZ2h0LnRhcmdldC5tYXRyaXhXb3JsZCksdGhpcy5jb25lLmxvb2tBdChSUSksdm9pZCAwIT09dGhpcy5jb2xvcj90aGlzLmNvbmUubWF0ZXJpYWwuY29sb3Iuc2V0KHRoaXMuY29sb3IpOnRoaXMuY29uZS5tYXRlcmlhbC5jb2xvci5jb3B5KHRoaXMubGlnaHQuY29sb3IpfX1jb25zdCBTUT1uZXcgZG4sYlE9bmV3IF9uLEhRPW5ldyBfbjtjbGFzcyB2USBleHRlbmRzIEhCe2NvbnN0cnVjdG9yKEEpe2NvbnN0IGU9ZnVuY3Rpb24gQShlKXtjb25zdCB0PVtdOyEwPT09ZS5pc0JvbmUmJnQucHVzaChlKTtmb3IobGV0IG49MDtuPGUuY2hpbGRyZW4ubGVuZ3RoO24rKyl0LnB1c2guYXBwbHkodCxBKGUuY2hpbGRyZW5bbl0pKTtyZXR1cm4gdH0oQSksdD1uZXcgbHIsbj1bXSxpPVtdLHI9bmV3IEppKDAsMCwxKSxvPW5ldyBKaSgwLDEsMCk7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspe2NvbnN0IHQ9ZVtBXTt0LnBhcmVudCYmdC5wYXJlbnQuaXNCb25lJiYobi5wdXNoKDAsMCwwKSxuLnB1c2goMCwwLDApLGkucHVzaChyLnIsci5nLHIuYiksaS5wdXNoKG8ucixvLmcsby5iKSl9dC5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IobiwzKSksdC5zZXRBdHRyaWJ1dGUoImNvbG9yIixuZXcgb3IoaSwzKSk7c3VwZXIodCxuZXcgTkIoe3ZlcnRleENvbG9yczohMCxkZXB0aFRlc3Q6ITEsZGVwdGhXcml0ZTohMSx0b25lTWFwcGVkOiExLHRyYW5zcGFyZW50OiEwfSkpLHRoaXMuaXNTa2VsZXRvbkhlbHBlcj0hMCx0aGlzLnR5cGU9IlNrZWxldG9uSGVscGVyIix0aGlzLnJvb3Q9QSx0aGlzLmJvbmVzPWUsdGhpcy5tYXRyaXg9QS5tYXRyaXhXb3JsZCx0aGlzLm1hdHJpeEF1dG9VcGRhdGU9ITF9dXBkYXRlTWF0cml4V29ybGQoQSl7Y29uc3QgZT10aGlzLmJvbmVzLHQ9dGhpcy5nZW9tZXRyeSxuPXQuZ2V0QXR0cmlidXRlKCJwb3NpdGlvbiIpO0hRLmNvcHkodGhpcy5yb290Lm1hdHJpeFdvcmxkKS5pbnZlcnQoKTtmb3IobGV0IEE9MCx0PTA7QTxlLmxlbmd0aDtBKyspe2NvbnN0IGk9ZVtBXTtpLnBhcmVudCYmaS5wYXJlbnQuaXNCb25lJiYoYlEubXVsdGlwbHlNYXRyaWNlcyhIUSxpLm1hdHJpeFdvcmxkKSxTUS5zZXRGcm9tTWF0cml4UG9zaXRpb24oYlEpLG4uc2V0WFlaKHQsU1EueCxTUS55LFNRLnopLGJRLm11bHRpcGx5TWF0cmljZXMoSFEsaS5wYXJlbnQubWF0cml4V29ybGQpLFNRLnNldEZyb21NYXRyaXhQb3NpdGlvbihiUSksbi5zZXRYWVoodCsxLFNRLngsU1EueSxTUS56KSx0Kz0yKX10LmdldEF0dHJpYnV0ZSgicG9zaXRpb24iKS5uZWVkc1VwZGF0ZT0hMCxzdXBlci51cGRhdGVNYXRyaXhXb3JsZChBKX1kaXNwb3NlKCl7dGhpcy5nZW9tZXRyeS5kaXNwb3NlKCksdGhpcy5tYXRlcmlhbC5kaXNwb3NlKCl9fWNsYXNzIGtRIGV4dGVuZHMgUnJ7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKG5ldyBRZyhlLDQsMiksbmV3IExpKHt3aXJlZnJhbWU6ITAsZm9nOiExLHRvbmVNYXBwZWQ6ITF9KSksdGhpcy5saWdodD1BLHRoaXMuY29sb3I9dCx0aGlzLnR5cGU9IlBvaW50TGlnaHRIZWxwZXIiLHRoaXMubWF0cml4PXRoaXMubGlnaHQubWF0cml4V29ybGQsdGhpcy5tYXRyaXhBdXRvVXBkYXRlPSExLHRoaXMudXBkYXRlKCl9ZGlzcG9zZSgpe3RoaXMuZ2VvbWV0cnkuZGlzcG9zZSgpLHRoaXMubWF0ZXJpYWwuZGlzcG9zZSgpfXVwZGF0ZSgpe3RoaXMubGlnaHQudXBkYXRlV29ybGRNYXRyaXgoITAsITEpLHZvaWQgMCE9PXRoaXMuY29sb3I/dGhpcy5tYXRlcmlhbC5jb2xvci5zZXQodGhpcy5jb2xvcik6dGhpcy5tYXRlcmlhbC5jb2xvci5jb3B5KHRoaXMubGlnaHQuY29sb3IpfX1jb25zdCBqUT1uZXcgZG4sSlE9bmV3IEppLHpRPW5ldyBKaTtjbGFzcyBMUSBleHRlbmRzIHBpe2NvbnN0cnVjdG9yKEEsZSx0KXtzdXBlcigpLHRoaXMubGlnaHQ9QSx0aGlzLm1hdHJpeD1BLm1hdHJpeFdvcmxkLHRoaXMubWF0cml4QXV0b1VwZGF0ZT0hMSx0aGlzLmNvbG9yPXQsdGhpcy50eXBlPSJIZW1pc3BoZXJlTGlnaHRIZWxwZXIiO2NvbnN0IG49bmV3IGNnKGUpO24ucm90YXRlWSguNSpNYXRoLlBJKSx0aGlzLm1hdGVyaWFsPW5ldyBMaSh7d2lyZWZyYW1lOiEwLGZvZzohMSx0b25lTWFwcGVkOiExfSksdm9pZCAwPT09dGhpcy5jb2xvciYmKHRoaXMubWF0ZXJpYWwudmVydGV4Q29sb3JzPSEwKTtjb25zdCBpPW4uZ2V0QXR0cmlidXRlKCJwb3NpdGlvbiIpLHI9bmV3IEZsb2F0MzJBcnJheSgzKmkuY291bnQpO24uc2V0QXR0cmlidXRlKCJjb2xvciIsbmV3IF9pKHIsMykpLHRoaXMuYWRkKG5ldyBScihuLHRoaXMubWF0ZXJpYWwpKSx0aGlzLnVwZGF0ZSgpfWRpc3Bvc2UoKXt0aGlzLmNoaWxkcmVuWzBdLmdlb21ldHJ5LmRpc3Bvc2UoKSx0aGlzLmNoaWxkcmVuWzBdLm1hdGVyaWFsLmRpc3Bvc2UoKX11cGRhdGUoKXtjb25zdCBBPXRoaXMuY2hpbGRyZW5bMF07aWYodm9pZCAwIT09dGhpcy5jb2xvcil0aGlzLm1hdGVyaWFsLmNvbG9yLnNldCh0aGlzLmNvbG9yKTtlbHNle2NvbnN0IGU9QS5nZW9tZXRyeS5nZXRBdHRyaWJ1dGUoImNvbG9yIik7SlEuY29weSh0aGlzLmxpZ2h0LmNvbG9yKSx6US5jb3B5KHRoaXMubGlnaHQuZ3JvdW5kQ29sb3IpO2ZvcihsZXQgQT0wLHQ9ZS5jb3VudDtBPHQ7QSsrKXtjb25zdCBuPUE8dC8yP0pROnpRO2Uuc2V0WFlaKEEsbi5yLG4uZyxuLmIpfWUubmVlZHNVcGRhdGU9ITB9dGhpcy5saWdodC51cGRhdGVXb3JsZE1hdHJpeCghMCwhMSksQS5sb29rQXQoalEuc2V0RnJvbU1hdHJpeFBvc2l0aW9uKHRoaXMubGlnaHQubWF0cml4V29ybGQpLm5lZ2F0ZSgpKX19Y2xhc3MgUFEgZXh0ZW5kcyBIQntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxMCxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxMCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTo0NDczOTI0LG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOjg5NDc4NDg7dD1uZXcgSmkodCksbj1uZXcgSmkobik7Y29uc3QgaT1lLzIscj1BL2Usbz1BLzIscz1bXSxhPVtdO2ZvcihsZXQgQT0wLEI9MCxjPS1vO0E8PWU7QSsrLGMrPXIpe3MucHVzaCgtbywwLGMsbywwLGMpLHMucHVzaChjLDAsLW8sYywwLG8pO2NvbnN0IGU9QT09PWk/dDpuO2UudG9BcnJheShhLEIpLEIrPTMsZS50b0FycmF5KGEsQiksQis9MyxlLnRvQXJyYXkoYSxCKSxCKz0zLGUudG9BcnJheShhLEIpLEIrPTN9Y29uc3QgQj1uZXcgbHI7Qi5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IocywzKSksQi5zZXRBdHRyaWJ1dGUoImNvbG9yIixuZXcgb3IoYSwzKSk7c3VwZXIoQixuZXcgTkIoe3ZlcnRleENvbG9yczohMCx0b25lTWFwcGVkOiExfSkpLHRoaXMudHlwZT0iR3JpZEhlbHBlciJ9ZGlzcG9zZSgpe3RoaXMuZ2VvbWV0cnkuZGlzcG9zZSgpLHRoaXMubWF0ZXJpYWwuZGlzcG9zZSgpfX1jbGFzcyBPUSBleHRlbmRzIEhCe2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEwLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjE2LHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjgsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106NjQsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06NDQ3MzkyNCxyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XTo4OTQ3ODQ4O2k9bmV3IEppKGkpLHI9bmV3IEppKHIpO2NvbnN0IG89W10scz1bXTtpZihlPjEpZm9yKGxldCB0PTA7dDxlO3QrKyl7Y29uc3Qgbj10L2UqKDIqTWF0aC5QSSksYT1NYXRoLnNpbihuKSpBLEI9TWF0aC5jb3MobikqQTtvLnB1c2goMCwwLDApLG8ucHVzaChhLDAsQik7Y29uc3QgYz0xJnQ/aTpyO3MucHVzaChjLnIsYy5nLGMuYikscy5wdXNoKGMucixjLmcsYy5iKX1mb3IobGV0IGU9MDtlPHQ7ZSsrKXtjb25zdCBhPTEmZT9pOnIsQj1BLUEvdCplO2ZvcihsZXQgQT0wO0E8bjtBKyspe2xldCBlPUEvbiooMipNYXRoLlBJKSx0PU1hdGguc2luKGUpKkIsaT1NYXRoLmNvcyhlKSpCO28ucHVzaCh0LDAsaSkscy5wdXNoKGEucixhLmcsYS5iKSxlPShBKzEpL24qKDIqTWF0aC5QSSksdD1NYXRoLnNpbihlKSpCLGk9TWF0aC5jb3MoZSkqQixvLnB1c2godCwwLGkpLHMucHVzaChhLnIsYS5nLGEuYil9fWNvbnN0IGE9bmV3IGxyO2Euc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKG8sMykpLGEuc2V0QXR0cmlidXRlKCJjb2xvciIsbmV3IG9yKHMsMykpO3N1cGVyKGEsbmV3IE5CKHt2ZXJ0ZXhDb2xvcnM6ITAsdG9uZU1hcHBlZDohMX0pKSx0aGlzLnR5cGU9IlBvbGFyR3JpZEhlbHBlciJ9ZGlzcG9zZSgpe3RoaXMuZ2VvbWV0cnkuZGlzcG9zZSgpLHRoaXMubWF0ZXJpYWwuZGlzcG9zZSgpfX1jb25zdCBWUT1uZXcgZG4sV1E9bmV3IGRuLEtRPW5ldyBkbjtjbGFzcyBYUSBleHRlbmRzIHBpe2NvbnN0cnVjdG9yKEEsZSx0KXtzdXBlcigpLHRoaXMubGlnaHQ9QSx0aGlzLm1hdHJpeD1BLm1hdHJpeFdvcmxkLHRoaXMubWF0cml4QXV0b1VwZGF0ZT0hMSx0aGlzLmNvbG9yPXQsdGhpcy50eXBlPSJEaXJlY3Rpb25hbExpZ2h0SGVscGVyIix2b2lkIDA9PT1lJiYoZT0xKTtsZXQgbj1uZXcgbHI7bi5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IoWy1lLGUsMCxlLGUsMCxlLC1lLDAsLWUsLWUsMCwtZSxlLDBdLDMpKTtjb25zdCBpPW5ldyBOQih7Zm9nOiExLHRvbmVNYXBwZWQ6ITF9KTt0aGlzLmxpZ2h0UGxhbmU9bmV3IEdCKG4saSksdGhpcy5hZGQodGhpcy5saWdodFBsYW5lKSxuPW5ldyBscixuLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihbMCwwLDAsMCwwLDFdLDMpKSx0aGlzLnRhcmdldExpbmU9bmV3IEdCKG4saSksdGhpcy5hZGQodGhpcy50YXJnZXRMaW5lKSx0aGlzLnVwZGF0ZSgpfWRpc3Bvc2UoKXt0aGlzLmxpZ2h0UGxhbmUuZ2VvbWV0cnkuZGlzcG9zZSgpLHRoaXMubGlnaHRQbGFuZS5tYXRlcmlhbC5kaXNwb3NlKCksdGhpcy50YXJnZXRMaW5lLmdlb21ldHJ5LmRpc3Bvc2UoKSx0aGlzLnRhcmdldExpbmUubWF0ZXJpYWwuZGlzcG9zZSgpfXVwZGF0ZSgpe3RoaXMubGlnaHQudXBkYXRlV29ybGRNYXRyaXgoITAsITEpLHRoaXMubGlnaHQudGFyZ2V0LnVwZGF0ZVdvcmxkTWF0cml4KCEwLCExKSxWUS5zZXRGcm9tTWF0cml4UG9zaXRpb24odGhpcy5saWdodC5tYXRyaXhXb3JsZCksV1Euc2V0RnJvbU1hdHJpeFBvc2l0aW9uKHRoaXMubGlnaHQudGFyZ2V0Lm1hdHJpeFdvcmxkKSxLUS5zdWJWZWN0b3JzKFdRLFZRKSx0aGlzLmxpZ2h0UGxhbmUubG9va0F0KFdRKSx2b2lkIDAhPT10aGlzLmNvbG9yPyh0aGlzLmxpZ2h0UGxhbmUubWF0ZXJpYWwuY29sb3Iuc2V0KHRoaXMuY29sb3IpLHRoaXMudGFyZ2V0TGluZS5tYXRlcmlhbC5jb2xvci5zZXQodGhpcy5jb2xvcikpOih0aGlzLmxpZ2h0UGxhbmUubWF0ZXJpYWwuY29sb3IuY29weSh0aGlzLmxpZ2h0LmNvbG9yKSx0aGlzLnRhcmdldExpbmUubWF0ZXJpYWwuY29sb3IuY29weSh0aGlzLmxpZ2h0LmNvbG9yKSksdGhpcy50YXJnZXRMaW5lLmxvb2tBdChXUSksdGhpcy50YXJnZXRMaW5lLnNjYWxlLno9S1EubGVuZ3RoKCl9fWNvbnN0IFpRPW5ldyBkbixfUT1uZXcgSnI7Y2xhc3MgcVEgZXh0ZW5kcyBIQntjb25zdHJ1Y3RvcihBKXtjb25zdCBlPW5ldyBscix0PW5ldyBOQih7Y29sb3I6MTY3NzcyMTUsdmVydGV4Q29sb3JzOiEwLHRvbmVNYXBwZWQ6ITF9KSxuPVtdLGk9W10scj17fTtmdW5jdGlvbiBvKEEsZSl7cyhBKSxzKGUpfWZ1bmN0aW9uIHMoQSl7bi5wdXNoKDAsMCwwKSxpLnB1c2goMCwwLDApLHZvaWQgMD09PXJbQV0mJihyW0FdPVtdKSxyW0FdLnB1c2gobi5sZW5ndGgvMy0xKX1vKCJuMSIsIm4yIiksbygibjIiLCJuNCIpLG8oIm40IiwibjMiKSxvKCJuMyIsIm4xIiksbygiZjEiLCJmMiIpLG8oImYyIiwiZjQiKSxvKCJmNCIsImYzIiksbygiZjMiLCJmMSIpLG8oIm4xIiwiZjEiKSxvKCJuMiIsImYyIiksbygibjMiLCJmMyIpLG8oIm40IiwiZjQiKSxvKCJwIiwibjEiKSxvKCJwIiwibjIiKSxvKCJwIiwibjMiKSxvKCJwIiwibjQiKSxvKCJ1MSIsInUyIiksbygidTIiLCJ1MyIpLG8oInUzIiwidTEiKSxvKCJjIiwidCIpLG8oInAiLCJjIiksbygiY24xIiwiY24yIiksbygiY24zIiwiY240IiksbygiY2YxIiwiY2YyIiksbygiY2YzIiwiY2Y0IiksZS5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgb3IobiwzKSksZS5zZXRBdHRyaWJ1dGUoImNvbG9yIixuZXcgb3IoaSwzKSksc3VwZXIoZSx0KSx0aGlzLnR5cGU9IkNhbWVyYUhlbHBlciIsdGhpcy5jYW1lcmE9QSx0aGlzLmNhbWVyYS51cGRhdGVQcm9qZWN0aW9uTWF0cml4JiZ0aGlzLmNhbWVyYS51cGRhdGVQcm9qZWN0aW9uTWF0cml4KCksdGhpcy5tYXRyaXg9QS5tYXRyaXhXb3JsZCx0aGlzLm1hdHJpeEF1dG9VcGRhdGU9ITEsdGhpcy5wb2ludE1hcD1yLHRoaXMudXBkYXRlKCk7Y29uc3QgYT1uZXcgSmkoMTY3NTUyMDApLEI9bmV3IEppKDE2NzExNjgwKSxjPW5ldyBKaSg0Mzc3NSksZz1uZXcgSmkoMTY3NzcyMTUpLEU9bmV3IEppKDMzNTU0NDMpO3RoaXMuc2V0Q29sb3JzKGEsQixjLGcsRSl9c2V0Q29sb3JzKEEsZSx0LG4saSl7Y29uc3Qgcj10aGlzLmdlb21ldHJ5LmdldEF0dHJpYnV0ZSgiY29sb3IiKTtyLnNldFhZWigwLEEucixBLmcsQS5iKSxyLnNldFhZWigxLEEucixBLmcsQS5iKSxyLnNldFhZWigyLEEucixBLmcsQS5iKSxyLnNldFhZWigzLEEucixBLmcsQS5iKSxyLnNldFhZWig0LEEucixBLmcsQS5iKSxyLnNldFhZWig1LEEucixBLmcsQS5iKSxyLnNldFhZWig2LEEucixBLmcsQS5iKSxyLnNldFhZWig3LEEucixBLmcsQS5iKSxyLnNldFhZWig4LEEucixBLmcsQS5iKSxyLnNldFhZWig5LEEucixBLmcsQS5iKSxyLnNldFhZWigxMCxBLnIsQS5nLEEuYiksci5zZXRYWVooMTEsQS5yLEEuZyxBLmIpLHIuc2V0WFlaKDEyLEEucixBLmcsQS5iKSxyLnNldFhZWigxMyxBLnIsQS5nLEEuYiksci5zZXRYWVooMTQsQS5yLEEuZyxBLmIpLHIuc2V0WFlaKDE1LEEucixBLmcsQS5iKSxyLnNldFhZWigxNixBLnIsQS5nLEEuYiksci5zZXRYWVooMTcsQS5yLEEuZyxBLmIpLHIuc2V0WFlaKDE4LEEucixBLmcsQS5iKSxyLnNldFhZWigxOSxBLnIsQS5nLEEuYiksci5zZXRYWVooMjAsQS5yLEEuZyxBLmIpLHIuc2V0WFlaKDIxLEEucixBLmcsQS5iKSxyLnNldFhZWigyMixBLnIsQS5nLEEuYiksci5zZXRYWVooMjMsQS5yLEEuZyxBLmIpLHIuc2V0WFlaKDI0LGUucixlLmcsZS5iKSxyLnNldFhZWigyNSxlLnIsZS5nLGUuYiksci5zZXRYWVooMjYsZS5yLGUuZyxlLmIpLHIuc2V0WFlaKDI3LGUucixlLmcsZS5iKSxyLnNldFhZWigyOCxlLnIsZS5nLGUuYiksci5zZXRYWVooMjksZS5yLGUuZyxlLmIpLHIuc2V0WFlaKDMwLGUucixlLmcsZS5iKSxyLnNldFhZWigzMSxlLnIsZS5nLGUuYiksci5zZXRYWVooMzIsdC5yLHQuZyx0LmIpLHIuc2V0WFlaKDMzLHQucix0LmcsdC5iKSxyLnNldFhZWigzNCx0LnIsdC5nLHQuYiksci5zZXRYWVooMzUsdC5yLHQuZyx0LmIpLHIuc2V0WFlaKDM2LHQucix0LmcsdC5iKSxyLnNldFhZWigzNyx0LnIsdC5nLHQuYiksci5zZXRYWVooMzgsbi5yLG4uZyxuLmIpLHIuc2V0WFlaKDM5LG4ucixuLmcsbi5iKSxyLnNldFhZWig0MCxpLnIsaS5nLGkuYiksci5zZXRYWVooNDEsaS5yLGkuZyxpLmIpLHIuc2V0WFlaKDQyLGkucixpLmcsaS5iKSxyLnNldFhZWig0MyxpLnIsaS5nLGkuYiksci5zZXRYWVooNDQsaS5yLGkuZyxpLmIpLHIuc2V0WFlaKDQ1LGkucixpLmcsaS5iKSxyLnNldFhZWig0NixpLnIsaS5nLGkuYiksci5zZXRYWVooNDcsaS5yLGkuZyxpLmIpLHIuc2V0WFlaKDQ4LGkucixpLmcsaS5iKSxyLnNldFhZWig0OSxpLnIsaS5nLGkuYiksci5uZWVkc1VwZGF0ZT0hMH11cGRhdGUoKXtjb25zdCBBPXRoaXMuZ2VvbWV0cnksZT10aGlzLnBvaW50TWFwO19RLnByb2plY3Rpb25NYXRyaXhJbnZlcnNlLmNvcHkodGhpcy5jYW1lcmEucHJvamVjdGlvbk1hdHJpeEludmVyc2UpLCRRKCJjIixlLEEsX1EsMCwwLC0xKSwkUSgidCIsZSxBLF9RLDAsMCwxKSwkUSgibjEiLGUsQSxfUSwtMSwtMSwtMSksJFEoIm4yIixlLEEsX1EsMSwtMSwtMSksJFEoIm4zIixlLEEsX1EsLTEsMSwtMSksJFEoIm40IixlLEEsX1EsMSwxLC0xKSwkUSgiZjEiLGUsQSxfUSwtMSwtMSwxKSwkUSgiZjIiLGUsQSxfUSwxLC0xLDEpLCRRKCJmMyIsZSxBLF9RLC0xLDEsMSksJFEoImY0IixlLEEsX1EsMSwxLDEpLCRRKCJ1MSIsZSxBLF9RLC43LDEuMSwtMSksJFEoInUyIixlLEEsX1EsLS43LDEuMSwtMSksJFEoInUzIixlLEEsX1EsMCwyLC0xKSwkUSgiY2YxIixlLEEsX1EsLTEsMCwxKSwkUSgiY2YyIixlLEEsX1EsMSwwLDEpLCRRKCJjZjMiLGUsQSxfUSwwLC0xLDEpLCRRKCJjZjQiLGUsQSxfUSwwLDEsMSksJFEoImNuMSIsZSxBLF9RLC0xLDAsLTEpLCRRKCJjbjIiLGUsQSxfUSwxLDAsLTEpLCRRKCJjbjMiLGUsQSxfUSwwLC0xLC0xKSwkUSgiY240IixlLEEsX1EsMCwxLC0xKSxBLmdldEF0dHJpYnV0ZSgicG9zaXRpb24iKS5uZWVkc1VwZGF0ZT0hMH1kaXNwb3NlKCl7dGhpcy5nZW9tZXRyeS5kaXNwb3NlKCksdGhpcy5tYXRlcmlhbC5kaXNwb3NlKCl9fWZ1bmN0aW9uICRRKEEsZSx0LG4saSxyLG8pe1pRLnNldChpLHIsbykudW5wcm9qZWN0KG4pO2NvbnN0IHM9ZVtBXTtpZih2b2lkIDAhPT1zKXtjb25zdCBBPXQuZ2V0QXR0cmlidXRlKCJwb3NpdGlvbiIpO2ZvcihsZXQgZT0wLHQ9cy5sZW5ndGg7ZTx0O2UrKylBLnNldFhZWihzW2VdLFpRLngsWlEueSxaUS56KX19Y29uc3QgQXU9bmV3IEZuO2NsYXNzIGV1IGV4dGVuZHMgSEJ7Y29uc3RydWN0b3IoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjE2Nzc2OTYwO2NvbnN0IHQ9bmV3IFVpbnQxNkFycmF5KFswLDEsMSwyLDIsMywzLDAsNCw1LDUsNiw2LDcsNyw0LDAsNCwxLDUsMiw2LDMsN10pLG49bmV3IEZsb2F0MzJBcnJheSgyNCksaT1uZXcgbHI7aS5zZXRJbmRleChuZXcgX2kodCwxKSksaS5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgX2kobiwzKSksc3VwZXIoaSxuZXcgTkIoe2NvbG9yOmUsdG9uZU1hcHBlZDohMX0pKSx0aGlzLm9iamVjdD1BLHRoaXMudHlwZT0iQm94SGVscGVyIix0aGlzLm1hdHJpeEF1dG9VcGRhdGU9ITEsdGhpcy51cGRhdGUoKX11cGRhdGUoQSl7aWYodm9pZCAwIT09QSYmY29uc29sZS53YXJuKCJUSFJFRS5Cb3hIZWxwZXI6IC51cGRhdGUoKSBoYXMgbm8gbG9uZ2VyIGFyZ3VtZW50cy4iKSx2b2lkIDAhPT10aGlzLm9iamVjdCYmQXUuc2V0RnJvbU9iamVjdCh0aGlzLm9iamVjdCksQXUuaXNFbXB0eSgpKXJldHVybjtjb25zdCBlPUF1Lm1pbix0PUF1Lm1heCxuPXRoaXMuZ2VvbWV0cnkuYXR0cmlidXRlcy5wb3NpdGlvbixpPW4uYXJyYXk7aVswXT10LngsaVsxXT10LnksaVsyXT10LnosaVszXT1lLngsaVs0XT10LnksaVs1XT10LnosaVs2XT1lLngsaVs3XT1lLnksaVs4XT10LnosaVs5XT10LngsaVsxMF09ZS55LGlbMTFdPXQueixpWzEyXT10LngsaVsxM109dC55LGlbMTRdPWUueixpWzE1XT1lLngsaVsxNl09dC55LGlbMTddPWUueixpWzE4XT1lLngsaVsxOV09ZS55LGlbMjBdPWUueixpWzIxXT10LngsaVsyMl09ZS55LGlbMjNdPWUueixuLm5lZWRzVXBkYXRlPSEwLHRoaXMuZ2VvbWV0cnkuY29tcHV0ZUJvdW5kaW5nU3BoZXJlKCl9c2V0RnJvbU9iamVjdChBKXtyZXR1cm4gdGhpcy5vYmplY3Q9QSx0aGlzLnVwZGF0ZSgpLHRoaXN9Y29weShBLGUpe3JldHVybiBzdXBlci5jb3B5KEEsZSksdGhpcy5vYmplY3Q9QS5vYmplY3QsdGhpc31kaXNwb3NlKCl7dGhpcy5nZW9tZXRyeS5kaXNwb3NlKCksdGhpcy5tYXRlcmlhbC5kaXNwb3NlKCl9fWNsYXNzIHR1IGV4dGVuZHMgSEJ7Y29uc3RydWN0b3IoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjE2Nzc2OTYwO2NvbnN0IHQ9bmV3IFVpbnQxNkFycmF5KFswLDEsMSwyLDIsMywzLDAsNCw1LDUsNiw2LDcsNyw0LDAsNCwxLDUsMiw2LDMsN10pLG49bmV3IGxyO24uc2V0SW5kZXgobmV3IF9pKHQsMSkpLG4uc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKFsxLDEsMSwtMSwxLDEsLTEsLTEsMSwxLC0xLDEsMSwxLC0xLC0xLDEsLTEsLTEsLTEsLTEsMSwtMSwtMV0sMykpLHN1cGVyKG4sbmV3IE5CKHtjb2xvcjplLHRvbmVNYXBwZWQ6ITF9KSksdGhpcy5ib3g9QSx0aGlzLnR5cGU9IkJveDNIZWxwZXIiLHRoaXMuZ2VvbWV0cnkuY29tcHV0ZUJvdW5kaW5nU3BoZXJlKCl9dXBkYXRlTWF0cml4V29ybGQoQSl7Y29uc3QgZT10aGlzLmJveDtlLmlzRW1wdHkoKXx8KGUuZ2V0Q2VudGVyKHRoaXMucG9zaXRpb24pLGUuZ2V0U2l6ZSh0aGlzLnNjYWxlKSx0aGlzLnNjYWxlLm11bHRpcGx5U2NhbGFyKC41KSxzdXBlci51cGRhdGVNYXRyaXhXb3JsZChBKSl9ZGlzcG9zZSgpe3RoaXMuZ2VvbWV0cnkuZGlzcG9zZSgpLHRoaXMubWF0ZXJpYWwuZGlzcG9zZSgpfX1jbGFzcyBudSBleHRlbmRzIEdCe2NvbnN0cnVjdG9yKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToxO2NvbnN0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjE2Nzc2OTYwLG49bmV3IGxyO24uc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKFsxLC0xLDAsLTEsMSwwLC0xLC0xLDAsMSwxLDAsLTEsMSwwLC0xLC0xLDAsMSwtMSwwLDEsMSwwXSwzKSksbi5jb21wdXRlQm91bmRpbmdTcGhlcmUoKSxzdXBlcihuLG5ldyBOQih7Y29sb3I6dCx0b25lTWFwcGVkOiExfSkpLHRoaXMudHlwZT0iUGxhbmVIZWxwZXIiLHRoaXMucGxhbmU9QSx0aGlzLnNpemU9ZTtjb25zdCBpPW5ldyBscjtpLnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihbMSwxLDAsLTEsMSwwLC0xLC0xLDAsMSwxLDAsLTEsLTEsMCwxLC0xLDBdLDMpKSxpLmNvbXB1dGVCb3VuZGluZ1NwaGVyZSgpLHRoaXMuYWRkKG5ldyBScihpLG5ldyBMaSh7Y29sb3I6dCxvcGFjaXR5Oi4yLHRyYW5zcGFyZW50OiEwLGRlcHRoV3JpdGU6ITEsdG9uZU1hcHBlZDohMX0pKSl9dXBkYXRlTWF0cml4V29ybGQoQSl7dGhpcy5wb3NpdGlvbi5zZXQoMCwwLDApLHRoaXMuc2NhbGUuc2V0KC41KnRoaXMuc2l6ZSwuNSp0aGlzLnNpemUsMSksdGhpcy5sb29rQXQodGhpcy5wbGFuZS5ub3JtYWwpLHRoaXMudHJhbnNsYXRlWigtdGhpcy5wbGFuZS5jb25zdGFudCksc3VwZXIudXBkYXRlTWF0cml4V29ybGQoQSl9ZGlzcG9zZSgpe3RoaXMuZ2VvbWV0cnkuZGlzcG9zZSgpLHRoaXMubWF0ZXJpYWwuZGlzcG9zZSgpLHRoaXMuY2hpbGRyZW5bMF0uZ2VvbWV0cnkuZGlzcG9zZSgpLHRoaXMuY2hpbGRyZW5bMF0ubWF0ZXJpYWwuZGlzcG9zZSgpfX1jb25zdCBpdT1uZXcgZG47bGV0IHJ1LG91O2NsYXNzIHN1IGV4dGVuZHMgcGl7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IGRuKDAsMCwxKSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgZG4oMCwwLDApLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjEsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106MTY3NzY5NjAsaT1hcmd1bWVudHMubGVuZ3RoPjQmJnZvaWQgMCE9PWFyZ3VtZW50c1s0XT9hcmd1bWVudHNbNF06LjIqdCxyPWFyZ3VtZW50cy5sZW5ndGg+NSYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XTouMippO3N1cGVyKCksdGhpcy50eXBlPSJBcnJvd0hlbHBlciIsdm9pZCAwPT09cnUmJihydT1uZXcgbHIscnUuc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG9yKFswLDAsMCwwLDEsMF0sMykpLG91PW5ldyBwYygwLC41LDEsNSwxKSxvdS50cmFuc2xhdGUoMCwtLjUsMCkpLHRoaXMucG9zaXRpb24uY29weShlKSx0aGlzLmxpbmU9bmV3IEdCKHJ1LG5ldyBOQih7Y29sb3I6bix0b25lTWFwcGVkOiExfSkpLHRoaXMubGluZS5tYXRyaXhBdXRvVXBkYXRlPSExLHRoaXMuYWRkKHRoaXMubGluZSksdGhpcy5jb25lPW5ldyBScihvdSxuZXcgTGkoe2NvbG9yOm4sdG9uZU1hcHBlZDohMX0pKSx0aGlzLmNvbmUubWF0cml4QXV0b1VwZGF0ZT0hMSx0aGlzLmFkZCh0aGlzLmNvbmUpLHRoaXMuc2V0RGlyZWN0aW9uKEEpLHRoaXMuc2V0TGVuZ3RoKHQsaSxyKX1zZXREaXJlY3Rpb24oQSl7aWYoQS55Pi45OTk5OSl0aGlzLnF1YXRlcm5pb24uc2V0KDAsMCwwLDEpO2Vsc2UgaWYoQS55PC0uOTk5OTkpdGhpcy5xdWF0ZXJuaW9uLnNldCgxLDAsMCwwKTtlbHNle2l1LnNldChBLnosMCwtQS54KS5ub3JtYWxpemUoKTtjb25zdCBlPU1hdGguYWNvcyhBLnkpO3RoaXMucXVhdGVybmlvbi5zZXRGcm9tQXhpc0FuZ2xlKGl1LGUpfX1zZXRMZW5ndGgoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOi4yKkEsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06LjIqZTt0aGlzLmxpbmUuc2NhbGUuc2V0KDEsTWF0aC5tYXgoMWUtNCxBLWUpLDEpLHRoaXMubGluZS51cGRhdGVNYXRyaXgoKSx0aGlzLmNvbmUuc2NhbGUuc2V0KHQsZSx0KSx0aGlzLmNvbmUucG9zaXRpb24ueT1BLHRoaXMuY29uZS51cGRhdGVNYXRyaXgoKX1zZXRDb2xvcihBKXt0aGlzLmxpbmUubWF0ZXJpYWwuY29sb3Iuc2V0KEEpLHRoaXMuY29uZS5tYXRlcmlhbC5jb2xvci5zZXQoQSl9Y29weShBKXtyZXR1cm4gc3VwZXIuY29weShBLCExKSx0aGlzLmxpbmUuY29weShBLmxpbmUpLHRoaXMuY29uZS5jb3B5KEEuY29uZSksdGhpc31kaXNwb3NlKCl7dGhpcy5saW5lLmdlb21ldHJ5LmRpc3Bvc2UoKSx0aGlzLmxpbmUubWF0ZXJpYWwuZGlzcG9zZSgpLHRoaXMuY29uZS5nZW9tZXRyeS5kaXNwb3NlKCksdGhpcy5jb25lLm1hdGVyaWFsLmRpc3Bvc2UoKX19Y2xhc3MgYXUgZXh0ZW5kcyBIQntjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxO2NvbnN0IGU9WzAsMCwwLEEsMCwwLDAsMCwwLDAsQSwwLDAsMCwwLDAsMCxBXSx0PW5ldyBscjt0LnNldEF0dHJpYnV0ZSgicG9zaXRpb24iLG5ldyBvcihlLDMpKSx0LnNldEF0dHJpYnV0ZSgiY29sb3IiLG5ldyBvcihbMSwwLDAsMSwuNiwwLDAsMSwwLC42LDEsMCwwLDAsMSwwLC42LDFdLDMpKTtzdXBlcih0LG5ldyBOQih7dmVydGV4Q29sb3JzOiEwLHRvbmVNYXBwZWQ6ITF9KSksdGhpcy50eXBlPSJBeGVzSGVscGVyIn1zZXRDb2xvcnMoQSxlLHQpe2NvbnN0IG49bmV3IEppLGk9dGhpcy5nZW9tZXRyeS5hdHRyaWJ1dGVzLmNvbG9yLmFycmF5O3JldHVybiBuLnNldChBKSxuLnRvQXJyYXkoaSwwKSxuLnRvQXJyYXkoaSwzKSxuLnNldChlKSxuLnRvQXJyYXkoaSw2KSxuLnRvQXJyYXkoaSw5KSxuLnNldCh0KSxuLnRvQXJyYXkoaSwxMiksbi50b0FycmF5KGksMTUpLHRoaXMuZ2VvbWV0cnkuYXR0cmlidXRlcy5jb2xvci5uZWVkc1VwZGF0ZT0hMCx0aGlzfWRpc3Bvc2UoKXt0aGlzLmdlb21ldHJ5LmRpc3Bvc2UoKSx0aGlzLm1hdGVyaWFsLmRpc3Bvc2UoKX19Y2xhc3MgQnV7Y29uc3RydWN0b3IoKXt0aGlzLnR5cGU9IlNoYXBlUGF0aCIsdGhpcy5jb2xvcj1uZXcgSmksdGhpcy5zdWJQYXRocz1bXSx0aGlzLmN1cnJlbnRQYXRoPW51bGx9bW92ZVRvKEEsZSl7cmV0dXJuIHRoaXMuY3VycmVudFBhdGg9bmV3IENjLHRoaXMuc3ViUGF0aHMucHVzaCh0aGlzLmN1cnJlbnRQYXRoKSx0aGlzLmN1cnJlbnRQYXRoLm1vdmVUbyhBLGUpLHRoaXN9bGluZVRvKEEsZSl7cmV0dXJuIHRoaXMuY3VycmVudFBhdGgubGluZVRvKEEsZSksdGhpc31xdWFkcmF0aWNDdXJ2ZVRvKEEsZSx0LG4pe3JldHVybiB0aGlzLmN1cnJlbnRQYXRoLnF1YWRyYXRpY0N1cnZlVG8oQSxlLHQsbiksdGhpc31iZXppZXJDdXJ2ZVRvKEEsZSx0LG4saSxyKXtyZXR1cm4gdGhpcy5jdXJyZW50UGF0aC5iZXppZXJDdXJ2ZVRvKEEsZSx0LG4saSxyKSx0aGlzfXNwbGluZVRocnUoQSl7cmV0dXJuIHRoaXMuY3VycmVudFBhdGguc3BsaW5lVGhydShBKSx0aGlzfXRvU2hhcGVzKEEpe2Z1bmN0aW9uIGUoQSxlKXtjb25zdCB0PWUubGVuZ3RoO2xldCBuPSExO2ZvcihsZXQgaT10LTEscj0wO3I8dDtpPXIrKyl7bGV0IHQ9ZVtpXSxvPWVbcl0scz1vLngtdC54LGE9by55LXQueTtpZihNYXRoLmFicyhhKT5OdW1iZXIuRVBTSUxPTil7aWYoYTwwJiYodD1lW3JdLHM9LXMsbz1lW2ldLGE9LWEpLEEueTx0Lnl8fEEueT5vLnkpY29udGludWU7aWYoQS55PT09dC55KXtpZihBLng9PT10LngpcmV0dXJuITB9ZWxzZXtjb25zdCBlPWEqKEEueC10LngpLXMqKEEueS10LnkpO2lmKDA9PT1lKXJldHVybiEwO2lmKGU8MCljb250aW51ZTtuPSFufX1lbHNle2lmKEEueSE9PXQueSljb250aW51ZTtpZihvLng8PUEueCYmQS54PD10Lnh8fHQueDw9QS54JiZBLng8PW8ueClyZXR1cm4hMH19cmV0dXJuIG59Y29uc3QgdD1pZy5pc0Nsb2NrV2lzZSxuPXRoaXMuc3ViUGF0aHM7aWYoMD09PW4ubGVuZ3RoKXJldHVybltdO2xldCBpLHIsbztjb25zdCBzPVtdO2lmKDE9PT1uLmxlbmd0aClyZXR1cm4gcj1uWzBdLG89bmV3IFRjLG8uY3VydmVzPXIuY3VydmVzLHMucHVzaChvKSxzO2xldCBhPSF0KG5bMF0uZ2V0UG9pbnRzKCkpO2E9QT8hYTphO2NvbnN0IEI9W10sYz1bXTtsZXQgZyxFLFE9W10sdT0wO2NbdV09dm9pZCAwLFFbdV09W107Zm9yKGxldCBlPTAsbz1uLmxlbmd0aDtlPG87ZSsrKXI9bltlXSxnPXIuZ2V0UG9pbnRzKCksaT10KGcpLGk9QT8haTppLGk/KCFhJiZjW3VdJiZ1KyssY1t1XT17czpuZXcgVGMscDpnfSxjW3VdLnMuY3VydmVzPXIuY3VydmVzLGEmJnUrKyxRW3VdPVtdKTpRW3VdLnB1c2goe2g6cixwOmdbMF19KTtpZighY1swXSlyZXR1cm4gZnVuY3Rpb24oQSl7Y29uc3QgZT1bXTtmb3IobGV0IHQ9MCxuPUEubGVuZ3RoO3Q8bjt0Kyspe2NvbnN0IG49QVt0XSxpPW5ldyBUYztpLmN1cnZlcz1uLmN1cnZlcyxlLnB1c2goaSl9cmV0dXJuIGV9KG4pO2lmKGMubGVuZ3RoPjEpe2xldCBBPSExLHQ9MDtmb3IobGV0IEE9MCxlPWMubGVuZ3RoO0E8ZTtBKyspQltBXT1bXTtmb3IobGV0IG49MCxpPWMubGVuZ3RoO248aTtuKyspe2NvbnN0IGk9UVtuXTtmb3IobGV0IHI9MDtyPGkubGVuZ3RoO3IrKyl7Y29uc3Qgbz1pW3JdO2xldCBzPSEwO2ZvcihsZXQgaT0wO2k8Yy5sZW5ndGg7aSsrKWUoby5wLGNbaV0ucCkmJihuIT09aSYmdCsrLHM/KHM9ITEsQltpXS5wdXNoKG8pKTpBPSEwKTtzJiZCW25dLnB1c2gobyl9fXQ+MCYmITE9PT1BJiYoUT1CKX1mb3IobGV0IEE9MCxlPWMubGVuZ3RoO0E8ZTtBKyspe289Y1tBXS5zLHMucHVzaChvKSxFPVFbQV07Zm9yKGxldCBBPTAsZT1FLmxlbmd0aDtBPGU7QSsrKW8uaG9sZXMucHVzaChFW0FdLmgpfXJldHVybiBzfX1jbGFzcyBjdSBleHRlbmRzIFNye2NvbnN0cnVjdG9yKEEsZSx0LG4saSxyKXtjb25zb2xlLndhcm4oIlRIUkVFLkJveEJ1ZmZlckdlb21ldHJ5IGhhcyBiZWVuIHJlbmFtZWQgdG8gVEhSRUUuQm94R2VvbWV0cnkuIiksc3VwZXIoQSxlLHQsbixpLHIpfX1jbGFzcyBndSBleHRlbmRzIE1je2NvbnN0cnVjdG9yKEEsZSx0LG4pe2NvbnNvbGUud2FybigiVEhSRUUuQ2Fwc3VsZUJ1ZmZlckdlb21ldHJ5IGhhcyBiZWVuIHJlbmFtZWQgdG8gVEhSRUUuQ2Fwc3VsZUdlb21ldHJ5LiIpLHN1cGVyKEEsZSx0LG4pfX1jbGFzcyBFdSBleHRlbmRzIGRje2NvbnN0cnVjdG9yKEEsZSx0LG4pe2NvbnNvbGUud2FybigiVEhSRUUuQ2lyY2xlQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5DaXJjbGVHZW9tZXRyeS4iKSxzdXBlcihBLGUsdCxuKX19Y2xhc3MgUXUgZXh0ZW5kcyBtY3tjb25zdHJ1Y3RvcihBLGUsdCxuLGkscixvKXtjb25zb2xlLndhcm4oIlRIUkVFLkNvbmVCdWZmZXJHZW9tZXRyeSBoYXMgYmVlbiByZW5hbWVkIHRvIFRIUkVFLkNvbmVHZW9tZXRyeS4iKSxzdXBlcihBLGUsdCxuLGkscixvKX19Y2xhc3MgdXUgZXh0ZW5kcyBwY3tjb25zdHJ1Y3RvcihBLGUsdCxuLGkscixvLHMpe2NvbnNvbGUud2FybigiVEhSRUUuQ3lsaW5kZXJCdWZmZXJHZW9tZXRyeSBoYXMgYmVlbiByZW5hbWVkIHRvIFRIUkVFLkN5bGluZGVyR2VvbWV0cnkuIiksc3VwZXIoQSxlLHQsbixpLHIsbyxzKX19Y2xhc3MgbHUgZXh0ZW5kcyBEY3tjb25zdHJ1Y3RvcihBLGUpe2NvbnNvbGUud2FybigiVEhSRUUuRG9kZWNhaGVkcm9uQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5Eb2RlY2FoZWRyb25HZW9tZXRyeS4iKSxzdXBlcihBLGUpfX1jbGFzcyBodSBleHRlbmRzIHNne2NvbnN0cnVjdG9yKEEsZSl7Y29uc29sZS53YXJuKCJUSFJFRS5FeHRydWRlQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5FeHRydWRlR2VvbWV0cnkuIiksc3VwZXIoQSxlKX19Y2xhc3Mgd3UgZXh0ZW5kcyBCZ3tjb25zdHJ1Y3RvcihBLGUpe2NvbnNvbGUud2FybigiVEhSRUUuSWNvc2FoZWRyb25CdWZmZXJHZW9tZXRyeSBoYXMgYmVlbiByZW5hbWVkIHRvIFRIUkVFLkljb3NhaGVkcm9uR2VvbWV0cnkuIiksc3VwZXIoQSxlKX19Y2xhc3MgQ3UgZXh0ZW5kcyBJY3tjb25zdHJ1Y3RvcihBLGUsdCxuKXtjb25zb2xlLndhcm4oIlRIUkVFLkxhdGhlQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5MYXRoZUdlb21ldHJ5LiIpLHN1cGVyKEEsZSx0LG4pfX1jbGFzcyBJdSBleHRlbmRzIGNne2NvbnN0cnVjdG9yKEEsZSl7Y29uc29sZS53YXJuKCJUSFJFRS5PY3RhaGVkcm9uQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5PY3RhaGVkcm9uR2VvbWV0cnkuIiksc3VwZXIoQSxlKX19Y2xhc3MgTXUgZXh0ZW5kcyBlb3tjb25zdHJ1Y3RvcihBLGUsdCxuKXtjb25zb2xlLndhcm4oIlRIUkVFLlBsYW5lQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5QbGFuZUdlb21ldHJ5LiIpLHN1cGVyKEEsZSx0LG4pfX1jbGFzcyBkdSBleHRlbmRzIEZje2NvbnN0cnVjdG9yKEEsZSx0LG4pe2NvbnNvbGUud2FybigiVEhSRUUuUG9seWhlZHJvbkJ1ZmZlckdlb21ldHJ5IGhhcyBiZWVuIHJlbmFtZWQgdG8gVEhSRUUuUG9seWhlZHJvbkdlb21ldHJ5LiIpLHN1cGVyKEEsZSx0LG4pfX1jbGFzcyBwdSBleHRlbmRzIGdne2NvbnN0cnVjdG9yKEEsZSx0LG4saSxyKXtjb25zb2xlLndhcm4oIlRIUkVFLlJpbmdCdWZmZXJHZW9tZXRyeSBoYXMgYmVlbiByZW5hbWVkIHRvIFRIUkVFLlJpbmdHZW9tZXRyeS4iKSxzdXBlcihBLGUsdCxuLGkscil9fWNsYXNzIG11IGV4dGVuZHMgRWd7Y29uc3RydWN0b3IoQSxlKXtjb25zb2xlLndhcm4oIlRIUkVFLlNoYXBlQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5TaGFwZUdlb21ldHJ5LiIpLHN1cGVyKEEsZSl9fWNsYXNzIEZ1IGV4dGVuZHMgUWd7Y29uc3RydWN0b3IoQSxlLHQsbixpLHIsbyl7Y29uc29sZS53YXJuKCJUSFJFRS5TcGhlcmVCdWZmZXJHZW9tZXRyeSBoYXMgYmVlbiByZW5hbWVkIHRvIFRIUkVFLlNwaGVyZUdlb21ldHJ5LiIpLHN1cGVyKEEsZSx0LG4saSxyLG8pfX1jbGFzcyBEdSBleHRlbmRzIHVne2NvbnN0cnVjdG9yKEEsZSl7Y29uc29sZS53YXJuKCJUSFJFRS5UZXRyYWhlZHJvbkJ1ZmZlckdlb21ldHJ5IGhhcyBiZWVuIHJlbmFtZWQgdG8gVEhSRUUuVGV0cmFoZWRyb25HZW9tZXRyeS4iKSxzdXBlcihBLGUpfX1jbGFzcyBZdSBleHRlbmRzIGxne2NvbnN0cnVjdG9yKEEsZSx0LG4saSl7Y29uc29sZS53YXJuKCJUSFJFRS5Ub3J1c0J1ZmZlckdlb21ldHJ5IGhhcyBiZWVuIHJlbmFtZWQgdG8gVEhSRUUuVG9ydXNHZW9tZXRyeS4iKSxzdXBlcihBLGUsdCxuLGkpfX1jbGFzcyBmdSBleHRlbmRzIGhne2NvbnN0cnVjdG9yKEEsZSx0LG4saSxyKXtjb25zb2xlLndhcm4oIlRIUkVFLlRvcnVzS25vdEJ1ZmZlckdlb21ldHJ5IGhhcyBiZWVuIHJlbmFtZWQgdG8gVEhSRUUuVG9ydXNLbm90R2VvbWV0cnkuIiksc3VwZXIoQSxlLHQsbixpLHIpfX1jbGFzcyBOdSBleHRlbmRzIHdne2NvbnN0cnVjdG9yKEEsZSx0LG4saSl7Y29uc29sZS53YXJuKCJUSFJFRS5UdWJlQnVmZmVyR2VvbWV0cnkgaGFzIGJlZW4gcmVuYW1lZCB0byBUSFJFRS5UdWJlR2VvbWV0cnkuIiksc3VwZXIoQSxlLHQsbixpKX19InVuZGVmaW5lZCIhPXR5cGVvZiBfX1RIUkVFX0RFVlRPT0xTX18mJl9fVEhSRUVfREVWVE9PTFNfXy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgicmVnaXN0ZXIiLHtkZXRhaWw6e3JldmlzaW9uOm59fSkpLCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYod2luZG93Ll9fVEhSRUVfXz9jb25zb2xlLndhcm4oIldBUk5JTkc6IE11bHRpcGxlIGluc3RhbmNlcyBvZiBUaHJlZS5qcyBiZWluZyBpbXBvcnRlZC4iKTp3aW5kb3cuX19USFJFRV9fPW4pfSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz17Qk9PTEVBTjoiQm9vbGVhbiIsQlVUVE9OOiJidXR0b24iLExBQkVMOiJsYWJlbCIsQ09NTUFORDoiY29tbWFuZCIsQ09ORElUSU9OQUw6ImNvbmRpdGlvbmFsIixFVkVOVDoiZXZlbnQiLEhBVDoiaGF0IixMT09QOiJsb29wIixSRVBPUlRFUjoicmVwb3J0ZXIiLFhNTDoieG1sIn19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoOCksaT1BPT57aWYoInN0cmluZyIhPXR5cGVvZiBBKXJldHVybiExO2ZvcihsZXQgZT0wO2U8QS5sZW5ndGg7ZSsrKXtjb25zdCB0PUEuY2hhckNvZGVBdChlKTtpZig0OD09PXR8fDk9PT10KXJldHVybiExfXJldHVybiEwfTtjbGFzcyBye3N0YXRpYyB0b051bWJlcihBKXtpZigibnVtYmVyIj09dHlwZW9mIEEpcmV0dXJuIE51bWJlci5pc05hTihBKT8wOkE7Y29uc3QgZT1OdW1iZXIoQSk7cmV0dXJuIE51bWJlci5pc05hTihlKT8wOmV9c3RhdGljIHRvQm9vbGVhbihBKXtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiBBP0E6InN0cmluZyI9PXR5cGVvZiBBPyIiIT09QSYmIjAiIT09QSYmImZhbHNlIiE9PUEudG9Mb3dlckNhc2UoKTpCb29sZWFuKEEpfXN0YXRpYyB0b1N0cmluZyhBKXtyZXR1cm4gU3RyaW5nKEEpfXN0YXRpYyB0b1JnYkNvbG9yTGlzdChBKXtjb25zdCBlPXIudG9SZ2JDb2xvck9iamVjdChBKTtyZXR1cm5bZS5yLGUuZyxlLmJdfXN0YXRpYyB0b1JnYkNvbG9yT2JqZWN0KEEpe2xldCBlO3JldHVybiJzdHJpbmciPT10eXBlb2YgQSYmIiMiPT09QS5zdWJzdHJpbmcoMCwxKT8oZT1uLmhleFRvUmdiKEEpLGV8fChlPXtyOjAsZzowLGI6MCxhOjI1NX0pKTplPW4uZGVjaW1hbFRvUmdiKHIudG9OdW1iZXIoQSkpLGV9c3RhdGljIGlzV2hpdGVTcGFjZShBKXtyZXR1cm4gbnVsbD09PUF8fCJzdHJpbmciPT10eXBlb2YgQSYmMD09PUEudHJpbSgpLmxlbmd0aH1zdGF0aWMgY29tcGFyZShBLGUpe2xldCB0PU51bWJlcihBKSxuPU51bWJlcihlKTtpZigwPT09dCYmaShBKT90PU5hTjowPT09biYmaShlKSYmKG49TmFOKSxpc05hTih0KXx8aXNOYU4obikpe2NvbnN0IHQ9U3RyaW5nKEEpLnRvTG93ZXJDYXNlKCksbj1TdHJpbmcoZSkudG9Mb3dlckNhc2UoKTtyZXR1cm4gdDxuPy0xOnQ+bj8xOjB9cmV0dXJuIHQ9PT0xLzAmJm49PT0xLzB8fHQ9PT0tMS8wJiZuPT09LTEvMD8wOnQtbn1zdGF0aWMgaXNJbnQoQSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBBPyEhaXNOYU4oQSl8fEE9PT1NYXRoLmZsb29yKEEpOiJib29sZWFuIj09dHlwZW9mIEF8fCJzdHJpbmciPT10eXBlb2YgQSYmQS5pbmRleE9mKCIuIik8MH1zdGF0aWMgZ2V0IExJU1RfSU5WQUxJRCgpe3JldHVybiJJTlZBTElEIn1zdGF0aWMgZ2V0IExJU1RfQUxMKCl7cmV0dXJuIkFMTCJ9c3RhdGljIHRvTGlzdEluZGV4KEEsZSx0KXtpZigibnVtYmVyIiE9dHlwZW9mIEEpe2lmKCJhbGwiPT09QSlyZXR1cm4gdD9yLkxJU1RfQUxMOnIuTElTVF9JTlZBTElEO2lmKCJsYXN0Ij09PUEpcmV0dXJuIGU+MD9lOnIuTElTVF9JTlZBTElEO2lmKCJyYW5kb20iPT09QXx8ImFueSI9PT1BKXJldHVybiBlPjA/MStNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqZSk6ci5MSVNUX0lOVkFMSUR9cmV0dXJuKEE9TWF0aC5mbG9vcihyLnRvTnVtYmVyKEEpKSk8MXx8QT5lP3IuTElTVF9JTlZBTElEOkF9fUEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz17QU5HTEU6ImFuZ2xlIixCT09MRUFOOiJCb29sZWFuIixDT0xPUjoiY29sb3IiLE5VTUJFUjoibnVtYmVyIixTVFJJTkc6InN0cmluZyIsTUFUUklYOiJtYXRyaXgiLE5PVEU6Im5vdGUiLElNQUdFOiJpbWFnZSIsUE9MWUdPTjoicG9seWdvbiIsQ1VTVE9NOiJjdXN0b20iLENPU1RVTUU6ImNvc3R1bWUiLFNPVU5EOiJzb3VuZCIsVkFSSUFCTEU6InZhcmlhYmxlIixMSVNUOiJsaXN0IixCUk9BRENBU1Q6ImJyb2FkY2FzdCIsU0VQRVJBVE9SOiJzZXBlcmF0b3IifX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDE0MyksaT10KDE0NCkscj10KDg3KSxvPXQoODYpLHM9dCg4NSk7ZnVuY3Rpb24gYShBLGUpe3JldHVybiBPYmplY3Qua2V5cyhlKS5mb3JFYWNoKChmdW5jdGlvbih0KXtBW3RdPWVbdF19KSksQX1BLmV4cG9ydHM9ZnVuY3Rpb24gQSgpe3ZhciBlPWEoe30scyksdD0iZW4iLEI9e30sYz1mdW5jdGlvbihBKXtyZXR1cm4gQX0sZz1udWxsLEU9Indhcm5pbmciLFE9e307ZnVuY3Rpb24gdShBLGUscil7dmFyIG89InN0cmluZyI9PXR5cGVvZiBBP0E6QS5kZWZhdWx0LHM9dyhvLCJvYmplY3QiPT10eXBlb2YgQSYmQS5pZHx8YyhvKSxyfHx0KTtyZXR1cm4ocy5mb3JtYXR8fChzLmZvcm1hdD1pKG4ocy5tZXNzYWdlKSxyfHx0LFEpKSkoZSl9dS5yaWNoPWZ1bmN0aW9uKEEsZSxyKXt2YXIgbz0ic3RyaW5nIj09dHlwZW9mIEE/QTpBLmRlZmF1bHQscz13KG8sIm9iamVjdCI9PXR5cGVvZiBBJiZBLmlkfHxjKG8pLHJ8fHQpO3JldHVybihzLnRvUGFydHN8fChzLnRvUGFydHM9aS50b1BhcnRzKG4ocy5tZXNzYWdlLHt0YWdzVHlwZTpsfSkscnx8dCxRKSkpKGUpfTt2YXIgbD0iPD4iO2Z1bmN0aW9uIGgoQSxlKXt2YXIgdD1BWzJdO3JldHVybiBmdW5jdGlvbihBLGUpe3ZhciBuPSJvYmplY3QiPT10eXBlb2YgdD9mdW5jdGlvbihBLGUpe3JldHVybiBPYmplY3Qua2V5cyhBKS5yZWR1Y2UoKGZ1bmN0aW9uKHQsbil7cmV0dXJuIHRbbl09QVtuXShlKSx0fSkse30pfSh0LGUpOnQ7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIEE/QShuKTpBfX1mdW5jdGlvbiB3KEEsZSx0KXt2YXIgbj1vKHQsQil8fCJlbiIsaT1CW25dfHwoQltuXT17fSkscj1pW2VdO2lmKCJzdHJpbmciPT10eXBlb2YgciYmKHI9aVtlXT17bWVzc2FnZTpyfSksIXIpe3ZhciBzPSdUcmFuc2xhdGlvbiBmb3IgIicrZSsnIiBpbiAiJytuKyciIGlzIG1pc3NpbmcnO2lmKCJ3YXJuaW5nIj09PUUpInVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlLndhcm4ocyk7ZWxzZSBpZigiaWdub3JlIiE9PUUpdGhyb3cgbmV3IEVycm9yKHMpO3ZhciBhPSJmdW5jdGlvbiI9PXR5cGVvZiBnP2coQSxlLG4pfHxBOmd8fEE7cj1pW2VdPXttZXNzYWdlOmF9fXJldHVybiByfWZ1bmN0aW9uIEMoQSxlLG4saSxzKXsib2JqZWN0Ij09dHlwZW9mIG4mJiJvYmplY3QiIT10eXBlb2YgaSYmKHM9aSxpPW4sbj0wKTt2YXIgYT1vKHN8fHQsciksQj1hJiZyW2FdW0FdfHxJO3JldHVybiBpWyI9IisgK2VdfHxpW0IoZS1uKV18fGkub3RoZXJ9ZnVuY3Rpb24gSSgpe3JldHVybiJvdGhlciJ9cmV0dXJuIFFbbF09aCx1LnNldHVwPWZ1bmN0aW9uKEEpe3JldHVybihBPUF8fHt9KS5sb2NhbGUmJih0PUEubG9jYWxlKSwidHJhbnNsYXRpb25zImluIEEmJihCPUEudHJhbnNsYXRpb25zfHx7fSksQS5nZW5lcmF0ZUlkJiYoYz1BLmdlbmVyYXRlSWQpLCJtaXNzaW5nUmVwbGFjZW1lbnQiaW4gQSYmKGc9QS5taXNzaW5nUmVwbGFjZW1lbnQpLEEubWlzc2luZ1RyYW5zbGF0aW9uJiYoRT1BLm1pc3NpbmdUcmFuc2xhdGlvbiksQS5mb3JtYXRzJiYoQS5mb3JtYXRzLm51bWJlciYmYShlLm51bWJlcixBLmZvcm1hdHMubnVtYmVyKSxBLmZvcm1hdHMuZGF0ZSYmYShlLmRhdGUsQS5mb3JtYXRzLmRhdGUpLEEuZm9ybWF0cy50aW1lJiZhKGUudGltZSxBLmZvcm1hdHMudGltZSkpLEEudHlwZXMmJigoUT1BLnR5cGVzKVtsXT1oKSx7bG9jYWxlOnQsdHJhbnNsYXRpb25zOkIsZ2VuZXJhdGVJZDpjLG1pc3NpbmdSZXBsYWNlbWVudDpnLG1pc3NpbmdUcmFuc2xhdGlvbjpFLGZvcm1hdHM6ZSx0eXBlczpRfX0sdS5udW1iZXI9ZnVuY3Rpb24oQSxuLGkpe3ZhciByPW4mJmUubnVtYmVyW25dfHxlLnBhcnNlTnVtYmVyUGF0dGVybihuKXx8ZS5udW1iZXIuZGVmYXVsdDtyZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KGl8fHQscikuZm9ybWF0KEEpfSx1LmRhdGU9ZnVuY3Rpb24oQSxuLGkpe3ZhciByPW4mJmUuZGF0ZVtuXXx8ZS5wYXJzZURhdGVQYXR0ZXJuKG4pfHxlLmRhdGUuZGVmYXVsdDtyZXR1cm4gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoaXx8dCxyKS5mb3JtYXQoQSl9LHUudGltZT1mdW5jdGlvbihBLG4saSl7dmFyIHI9biYmZS50aW1lW25dfHxlLnBhcnNlRGF0ZVBhdHRlcm4obil8fGUudGltZS5kZWZhdWx0O3JldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChpfHx0LHIpLmZvcm1hdChBKX0sdS5zZWxlY3Q9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZVtBXXx8ZS5vdGhlcn0sdS5jdXN0b209ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIEFbMV1pbiBRP1FbQVsxXV0oQSxlKSh0LG4pOnR9LHUucGx1cmFsPUMuYmluZChudWxsLCJjYXJkaW5hbCIpLHUuc2VsZWN0b3JkaW5hbD1DLmJpbmQobnVsbCwib3JkaW5hbCIpLHUubmFtZXNwYWNlPUEsdX0oKX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg1Myk7bi5lbmFibGUoKSxBLmV4cG9ydHM9bigidm0iKX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9Y2xhc3N7c3RhdGljIGRlZ1RvUmFkKEEpe3JldHVybiBBKk1hdGguUEkvMTgwfXN0YXRpYyByYWRUb0RlZyhBKXtyZXR1cm4gMTgwKkEvTWF0aC5QSX1zdGF0aWMgY2xhbXAoQSxlLHQpe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChBLGUpLHQpfXN0YXRpYyB3cmFwQ2xhbXAoQSxlLHQpe2NvbnN0IG49dC1lKzE7cmV0dXJuIEEtTWF0aC5mbG9vcigoQS1lKS9uKSpufXN0YXRpYyB0YW4oQSl7c3dpdGNoKEElPTM2MCl7Y2FzZS0yNzA6Y2FzZSA5MDpyZXR1cm4gMS8wO2Nhc2UtOTA6Y2FzZSAyNzA6cmV0dXJuLTEvMDtkZWZhdWx0OnJldHVybiBNYXRoLnJvdW5kKDFlMTAqTWF0aC50YW4oTWF0aC5QSSpBLzE4MCkpLzFlMTB9fXN0YXRpYyByZWR1Y2VkU29ydE9yZGVyaW5nKEEpe2NvbnN0IGU9QS5zbGljZSgwKS5zb3J0KChBLGUpPT5BLWUpO3JldHVybiBBLm1hcChBPT5lLmluZGV4T2YoQSkpfXN0YXRpYyBpbmNsdXNpdmVSYW5kSW50V2l0aG91dChBLGUsdCl7Y29uc3Qgbj1lLUEsaT1BK01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSpuKTtyZXR1cm4gaT49dD9pKzE6aX1zdGF0aWMgc2NhbGUoQSxlLHQsbixpKXtyZXR1cm4oQS1lKS8odC1lKSooaS1uKStufX19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWNsYXNze3N0YXRpYyBzaW1wbGUoQSl7cmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoQSkpfX19LGZ1bmN0aW9uKEEsZSl7Y2xhc3MgdHtzdGF0aWMgZ2V0IFJHQl9CTEFDSygpe3JldHVybntyOjAsZzowLGI6MH19c3RhdGljIGdldCBSR0JfV0hJVEUoKXtyZXR1cm57cjoyNTUsZzoyNTUsYjoyNTV9fXN0YXRpYyBkZWNpbWFsVG9IZXgoQSl7QTwwJiYoQSs9MTY3NzcyMTYpO2xldCBlPU1hdGgucm91bmQoTnVtYmVyKEEpKS50b1N0cmluZygxNik7cmV0dXJuIGU9IiMiLmNvbmNhdCgiMDAwMDAwIi5zdWJzdHIoMCw2LWUubGVuZ3RoKSkuY29uY2F0KGUpLGV9c3RhdGljIGRlY2ltYWxUb1JnYihBKXtjb25zdCBlPUE+PjI0JjI1NTtyZXR1cm57cjpBPj4xNiYyNTUsZzpBPj44JjI1NSxiOjI1NSZBLGE6ZT4wP2U6MjU1fX1zdGF0aWMgaGV4VG9SZ2IoQSl7QS5zdGFydHNXaXRoKCIjIikmJihBPUEuc3Vic3RyaW5nKDEpKSw4PT09QS5sZW5ndGgmJihBPUEuc2xpY2UoMCw2KSk7Y29uc3QgZT1wYXJzZUludChBLDE2KTtpZihpc05hTihlKSlyZXR1cm4gbnVsbDtpZig2PT09QS5sZW5ndGgpcmV0dXJue3I6ZT4+MTYmMjU1LGc6ZT4+OCYyNTUsYjoyNTUmZX07aWYoMz09PUEubGVuZ3RoKXtjb25zdCBBPWU+PjgmMTUsdD1lPj40JjE1LG49MTUmZTtyZXR1cm57cjpBPDw0fEEsZzp0PDw0fHQsYjpuPDw0fG59fXJldHVybiBudWxsfXN0YXRpYyByZ2JUb0hleChBKXtyZXR1cm4gdC5kZWNpbWFsVG9IZXgodC5yZ2JUb0RlY2ltYWwoQSkpfXN0YXRpYyByZ2JUb0RlY2ltYWwoQSl7cmV0dXJuKEEucjw8MTYpKyhBLmc8PDgpK0EuYn1zdGF0aWMgaGV4VG9EZWNpbWFsKEEpe3JldHVybiB0LnJnYlRvRGVjaW1hbCh0LmhleFRvUmdiKEEpKX1zdGF0aWMgaHN2VG9SZ2IoQSl7bGV0IGU9QS5oJTM2MDtlPDAmJihlKz0zNjApO2NvbnN0IHQ9TWF0aC5tYXgoMCxNYXRoLm1pbihBLnMsMSkpLG49TWF0aC5tYXgoMCxNYXRoLm1pbihBLnYsMSkpLGk9TWF0aC5mbG9vcihlLzYwKSxyPWUvNjAtaSxvPW4qKDEtdCkscz1uKigxLXQqciksYT1uKigxLXQqKDEtcikpO2xldCBCLGMsZztzd2l0Y2goaSl7ZGVmYXVsdDpjYXNlIDA6Qj1uLGM9YSxnPW87YnJlYWs7Y2FzZSAxOkI9cyxjPW4sZz1vO2JyZWFrO2Nhc2UgMjpCPW8sYz1uLGc9YTticmVhaztjYXNlIDM6Qj1vLGM9cyxnPW47YnJlYWs7Y2FzZSA0OkI9YSxjPW8sZz1uO2JyZWFrO2Nhc2UgNTpCPW4sYz1vLGc9c31yZXR1cm57cjpNYXRoLmZsb29yKDI1NSpCKSxnOk1hdGguZmxvb3IoMjU1KmMpLGI6TWF0aC5mbG9vcigyNTUqZyl9fXN0YXRpYyByZ2JUb0hzdihBKXtjb25zdCBlPUEuci8yNTUsdD1BLmcvMjU1LG49QS5iLzI1NSxpPU1hdGgubWluKE1hdGgubWluKGUsdCksbikscj1NYXRoLm1heChNYXRoLm1heChlLHQpLG4pO2xldCBvPTAscz0wO2lmKGkhPT1yKXtvPTYwKigoZT09PWk/Mzp0PT09aT81OjEpLShlPT09aT90LW46dD09PWk/bi1lOmUtdCkvKHItaSkpJTM2MCxzPShyLWkpL3J9cmV0dXJue2g6byxzOnMsdjpyfX1zdGF0aWMgbWl4UmdiKEEsZSx0KXtpZih0PD0wKXJldHVybiBBO2lmKHQ+PTEpcmV0dXJuIGU7Y29uc3Qgbj0xLXQ7cmV0dXJue3I6bipBLnIrdCplLnIsZzpuKkEuZyt0KmUuZyxiOm4qQS5iK3QqZS5ifX19QS5leHBvcnRzPXR9LGZ1bmN0aW9uKEEsZSl7Y29uc3QgdD0iISMlKCkqKywtLi86Oz0/QFtdXl9ge3x9fkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IjtBLmV4cG9ydHM9ZnVuY3Rpb24oKXtjb25zdCBBPXQubGVuZ3RoLGU9W107Zm9yKGxldCBuPTA7bjwyMDtuKyspZVtuXT10LmNoYXJBdChNYXRoLnJhbmRvbSgpKkEpO3JldHVybiBlLmpvaW4oIiIpfX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e0hFWEFHT05BTDoxLFJPVU5EOjIsU1FVQVJFOjMsTEVBRjo0LFBMVVM6NSxPQ1RBR09OQUw6NixCVU1QRUQ6NyxJTkRFTlRFRDo4LFNDUkFQUEVEOjksQVJST1c6MTAsVElDS0VUOjExfX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg1KTtjbGFzcyBpe3N0YXRpYyB3aXRob3V0VHJhaWxpbmdEaWdpdHMoQSl7bGV0IGU9QS5sZW5ndGgtMTtmb3IoO2U+PTAmJiIwMTIzNDU2Nzg5Ii5pbmRleE9mKEEuY2hhckF0KGUpKT4tMTspZS0tO3JldHVybiBBLnNsaWNlKDAsZSsxKX1zdGF0aWMgdW51c2VkTmFtZShBLGUpe2lmKGUuaW5kZXhPZihBKTwwKXJldHVybiBBO0E9aS53aXRob3V0VHJhaWxpbmdEaWdpdHMoQSk7bGV0IHQ9Mjtmb3IoO2UuaW5kZXhPZihBK3QpPj0wOyl0Kys7cmV0dXJuIEErdH1zdGF0aWMgc3BsaXRGaXJzdChBLGUpe2NvbnN0IHQ9QS5pbmRleE9mKGUpO3JldHVybiB0Pj0wP1tBLnN1YnN0cmluZygwLHQpLEEuc3Vic3RyaW5nKHQrMSldOltBLG51bGxdfXN0YXRpYyBzdHJpbmdpZnkoQSxlKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoQSwoQSxlKT0+Im51bWJlciIhPXR5cGVvZiBlfHxlIT09MS8wJiZlIT09LTEvMCYmIWlzTmFOKGUpP2U6MCxlPzQ6MCl9c3RhdGljIHJlcGxhY2VVbnNhZmVDaGFycyhBKXtpZigic3RyaW5nIiE9dHlwZW9mIEEpe2lmKCFBcnJheS5pc0FycmF5KEEpKXJldHVybiBuLmVycm9yKCJVbmV4cGVjdGVkIGlucHV0IHJlY2lldmVkIGluIHJlcGxhY2VVbnNhZmVDaGFycyIpLEE7QT1TdHJpbmcoQSl9cmV0dXJuIEEucmVwbGFjZSgvWzw+JiciXS9nLEE9Pntzd2l0Y2goQSl7Y2FzZSI8IjpyZXR1cm4ibHQiO2Nhc2UiPiI6cmV0dXJuImd0IjtjYXNlIiYiOnJldHVybiJhbXAiO2Nhc2UiJyI6cmV0dXJuImFwb3MiO2Nhc2UnIic6cmV0dXJuInF1b3QifX0pfX1BLmV4cG9ydHM9aX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e0Fsd2F5czoxLE5ldmVyOjIsSWZBdE1vc3RPbmVPYnN0YWNsZTozLE9ubHlXaGVuTm9PYnN0YWNsZXM6NH19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPXtTUFJJVEU6InNwcml0ZSIsU1RBR0U6InN0YWdlIn19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPXt2YWxpZGF0ZUpTT046QT0+e2xldCBlPSExLHQ9e307dHJ5e2lmKCFBLnN0YXJ0c1dpdGgoInsiKSl0aHJvdyBuZXcgRXJyb3IoImVycm9yIGxvbCIpO3Q9SlNPTi5wYXJzZShBKSxlPSEwfWNhdGNoKEEpe31yZXR1cm57b2JqZWN0OnQsanNvbjpBLGlzVmFsaWQ6ZX19LHZhbGlkYXRlQXJyYXk6QT0+e2xldCBlPSExLHQ9W107dHJ5e2lmKCFBLnN0YXJ0c1dpdGgoIlsiKSl0aHJvdyBuZXcgRXJyb3IoImVycm9yIGxvbCIpO3Q9SlNPTi5wYXJzZShBKSxlPSEwfWNhdGNoKEEpe31yZXR1cm57YXJyYXk6dCxqc29uOkEsaXNWYWxpZDplfX0sc3RyaW5nVG9FcWl2YWxpbnQ6QT0+e3RyeXtpZighQS5zdGFydHNXaXRoKCJ7IikmJiFBLnN0YXJ0c1dpdGgoIlsiKSl0aHJvdyBuZXcgRXJyb3IoIm5vdCBhY3R1YWx5IGEganNvbiEhISEhISEhISEiKTtBPUpTT04ucGFyc2UoQSl9Y2F0Y2goZSl7U3RyaW5nKE51bWJlcihBKSk9PT1BP0E9TnVtYmVyKEEpOiJ0cnVlIj09PUEudG9Mb3dlckNhc2UoKT9BPSEwOiJmYWxzZSI9PT1BLnRvTG93ZXJDYXNlKCk/QT0hMToidW5kZWZpbmVkIj09PUE/QT12b2lkIDA6Im51bGwiPT09QSYmKEE9bnVsbCl9cmV0dXJuIEF9LHZhbHVlVG9TdHJpbmc6QT0+QT0ib2JqZWN0Ij09dHlwZW9mIEE/SlNPTi5zdHJpbmdpZnkoQSk6U3RyaW5nKEEpLHZhbGlkYXRlUmVnZXg6KEEsZSk9PntsZXQgdD0hMTt0cnl7bmV3IFJlZ0V4cChBLGUpLHQ9ITB9Y2F0Y2goQSl7fXJldHVybiB0fX19LGZ1bmN0aW9uKEEsZSl7dmFyIHQ7dD1mdW5jdGlvbigpe3JldHVybiB0aGlzfSgpO3RyeXt0PXR8fG5ldyBGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfWNhdGNoKEEpeyJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYodD13aW5kb3cpfUEuZXhwb3J0cz10fSxmdW5jdGlvbihBLGUpe2NsYXNzIHR7c3RhdGljIGdldCBCQUNLR1JPVU5EX0xBWUVSKCl7cmV0dXJuImJhY2tncm91bmQifXN0YXRpYyBnZXQgVklERU9fTEFZRVIoKXtyZXR1cm4idmlkZW8ifXN0YXRpYyBnZXQgUEVOX0xBWUVSKCl7cmV0dXJuInBlbiJ9c3RhdGljIGdldCBTUFJJVEVfTEFZRVIoKXtyZXR1cm4ic3ByaXRlIn1zdGF0aWMgZ2V0IExBWUVSX0dST1VQUygpe3JldHVyblt0LkJBQ0tHUk9VTkRfTEFZRVIsdC5WSURFT19MQVlFUix0LlBFTl9MQVlFUix0LlNQUklURV9MQVlFUl19c3RhdGljIGdldCBMQVlFUl9HUk9VUFNfUEVOKCl7cmV0dXJuW3QuQkFDS0dST1VORF9MQVlFUix0LlZJREVPX0xBWUVSLHQuU1BSSVRFX0xBWUVSLHQuUEVOX0xBWUVSXX19QS5leHBvcnRzPXR9LGZ1bmN0aW9uKEEsZSx0KXsKLyohCiAqIEBsaWNlbnNlIHR3Z2wuanMgNC40LjAgQ29weXJpZ2h0IChjKSAyMDE1LCBHcmVnZyBUYXZhcmVzIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAqIEF2YWlsYWJsZSB2aWEgdGhlIE1JVCBsaWNlbnNlLgogKiBzZWU6IGh0dHA6Ly9naXRodWIuY29tL2dyZWdnbWFuL3R3Z2wuanMgZm9yIGRldGFpbHMKICovCnZhciBuOyJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZixuPWZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKEEpe3ZhciBlPXt9O2Z1bmN0aW9uIHQobil7aWYoZVtuXSlyZXR1cm4gZVtuXS5leHBvcnRzO3ZhciBpPWVbbl09e2k6bixsOiExLGV4cG9ydHM6e319O3JldHVybiBBW25dLmNhbGwoaS5leHBvcnRzLGksaS5leHBvcnRzLHQpLGkubD0hMCxpLmV4cG9ydHN9cmV0dXJuIHQubT1BLHQuYz1lLHQuZD1mdW5jdGlvbihBLGUsbil7dC5vKEEsZSl8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse2NvbmZpZ3VyYWJsZTohMSxlbnVtZXJhYmxlOiEwLGdldDpufSl9LHQubj1mdW5jdGlvbihBKXt2YXIgZT1BJiZBLl9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gQS5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiBBfTtyZXR1cm4gdC5kKGUsImEiLGUpLGV9LHQubz1mdW5jdGlvbihBLGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoQSxlKX0sdC5wPSIiLHQodC5zPTkpfShbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5jb3B5RXhpc3RpbmdQcm9wZXJ0aWVzPWZ1bmN0aW9uKEEsZSl7T2JqZWN0LmtleXMoZSkuZm9yRWFjaCgoZnVuY3Rpb24odCl7ZS5oYXNPd25Qcm9wZXJ0eSh0KSYmQS5oYXNPd25Qcm9wZXJ0eSh0KSYmKGVbdF09QVt0XSl9KSl9LGUuY29weU5hbWVkUHJvcGVydGllcz1mdW5jdGlvbihBLGUsdCl7QS5mb3JFYWNoKChmdW5jdGlvbihBKXt2YXIgbj1lW0FdO3ZvaWQgMCE9PW4mJih0W0FdPW4pfSkpfSxlLmlzQnVmZmVyPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG98fChvPUEuY3JlYXRlQnVmZmVyKCkpLGUgaW5zdGFuY2VvZiBvLmNvbnN0cnVjdG9yfSxlLmlzUmVuZGVyYnVmZmVyPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHN8fChzPUEuY3JlYXRlUmVuZGVyYnVmZmVyKCkpLGUgaW5zdGFuY2VvZiBzLmNvbnN0cnVjdG9yfSxlLmlzU2hhZGVyPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGF8fChhPUEuY3JlYXRlU2hhZGVyKEEuVkVSVEVYX1NIQURFUikpLGUgaW5zdGFuY2VvZiBhLmNvbnN0cnVjdG9yfSxlLmlzVGV4dHVyZT1mdW5jdGlvbihBLGUpe3JldHVybiBCfHwoQj1BLmNyZWF0ZVRleHR1cmUoKSksZSBpbnN0YW5jZW9mIEIuY29uc3RydWN0b3J9LGUuaXNTYW1wbGVyPWZ1bmN0aW9uKEEsZSl7aWYoIWMpe2lmKCFBLmNyZWF0ZVNhbXBsZXIpcmV0dXJuITE7Yz1BLmNyZWF0ZVNhbXBsZXIoKX1yZXR1cm4gZSBpbnN0YW5jZW9mIGMuY29uc3RydWN0b3J9LGUud2Fybj1lLmVycm9yPXZvaWQgMDt2YXIgbixpPShuPXQoMikpJiZuLl9fZXNNb2R1bGU/bjp7ZGVmYXVsdDpufSxyPWkuZGVmYXVsdC5jb25zb2xlJiZpLmRlZmF1bHQuY29uc29sZS5lcnJvciYmImZ1bmN0aW9uIj09dHlwZW9mIGkuZGVmYXVsdC5jb25zb2xlLmVycm9yP2kuZGVmYXVsdC5jb25zb2xlLmVycm9yLmJpbmQoaS5kZWZhdWx0LmNvbnNvbGUpOmZ1bmN0aW9uKCl7fTtlLmVycm9yPXI7dmFyIG8scyxhLEIsYyxnPWkuZGVmYXVsdC5jb25zb2xlJiZpLmRlZmF1bHQuY29uc29sZS53YXJuJiYiZnVuY3Rpb24iPT10eXBlb2YgaS5kZWZhdWx0LmNvbnNvbGUud2Fybj9pLmRlZmF1bHQuY29uc29sZS53YXJuLmJpbmQoaS5kZWZhdWx0LmNvbnNvbGUpOmZ1bmN0aW9uKCl7fTtlLndhcm49Z30sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5nZXRHTFR5cGVGb3JUeXBlZEFycmF5PWZ1bmN0aW9uKEEpe2lmKEEgaW5zdGFuY2VvZiBJbnQ4QXJyYXkpcmV0dXJuIDUxMjA7aWYoQSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpcmV0dXJuIDUxMjE7aWYoQSBpbnN0YW5jZW9mIFVpbnQ4Q2xhbXBlZEFycmF5KXJldHVybiA1MTIxO2lmKEEgaW5zdGFuY2VvZiBJbnQxNkFycmF5KXJldHVybiA1MTIyO2lmKEEgaW5zdGFuY2VvZiBVaW50MTZBcnJheSlyZXR1cm4gNTEyMztpZihBIGluc3RhbmNlb2YgSW50MzJBcnJheSlyZXR1cm4gNTEyNDtpZihBIGluc3RhbmNlb2YgVWludDMyQXJyYXkpcmV0dXJuIDUxMjU7aWYoQSBpbnN0YW5jZW9mIEZsb2F0MzJBcnJheSlyZXR1cm4gNTEyNjt0aHJvdyJ1bnN1cHBvcnRlZCB0eXBlZCBhcnJheSB0eXBlIn0sZS5nZXRHTFR5cGVGb3JUeXBlZEFycmF5VHlwZT1mdW5jdGlvbihBKXtpZihBPT09SW50OEFycmF5KXJldHVybiA1MTIwO2lmKEE9PT1VaW50OEFycmF5KXJldHVybiA1MTIxO2lmKEE9PT1VaW50OENsYW1wZWRBcnJheSlyZXR1cm4gNTEyMTtpZihBPT09SW50MTZBcnJheSlyZXR1cm4gNTEyMjtpZihBPT09VWludDE2QXJyYXkpcmV0dXJuIDUxMjM7aWYoQT09PUludDMyQXJyYXkpcmV0dXJuIDUxMjQ7aWYoQT09PVVpbnQzMkFycmF5KXJldHVybiA1MTI1O2lmKEE9PT1GbG9hdDMyQXJyYXkpcmV0dXJuIDUxMjY7dGhyb3cidW5zdXBwb3J0ZWQgdHlwZWQgYXJyYXkgdHlwZSJ9LGUuZ2V0VHlwZWRBcnJheVR5cGVGb3JHTFR5cGU9ZnVuY3Rpb24oQSl7dmFyIGU9cltBXTtpZighZSl0aHJvdyJ1bmtub3duIGdsIHR5cGUiO3JldHVybiBlfSxlLmlzQXJyYXlCdWZmZXI9dm9pZCAwO3ZhciBuLGk9KG49dCgyKSkmJm4uX19lc01vZHVsZT9uOntkZWZhdWx0Om59LHI9e30sbz1yO29bNTEyMF09SW50OEFycmF5LG9bNTEyMV09VWludDhBcnJheSxvWzUxMjJdPUludDE2QXJyYXksb1s1MTIzXT1VaW50MTZBcnJheSxvWzUxMjRdPUludDMyQXJyYXksb1s1MTI1XT1VaW50MzJBcnJheSxvWzUxMjZdPUZsb2F0MzJBcnJheSxvWzMyODE5XT1VaW50MTZBcnJheSxvWzMyODIwXT1VaW50MTZBcnJheSxvWzMzNjM1XT1VaW50MTZBcnJheSxvWzUxMzFdPVVpbnQxNkFycmF5LG9bMzM2NDBdPVVpbnQzMkFycmF5LG9bMzU4OTldPVVpbnQzMkFycmF5LG9bMzU5MDJdPVVpbnQzMkFycmF5LG9bMzYyNjldPVVpbnQzMkFycmF5LG9bMzQwNDJdPVVpbnQzMkFycmF5O3ZhciBzPWkuZGVmYXVsdC5TaGFyZWRBcnJheUJ1ZmZlcj9mdW5jdGlvbihBKXtyZXR1cm4gQSYmQS5idWZmZXImJihBLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyfHxBLmJ1ZmZlciBpbnN0YW5jZW9mIGkuZGVmYXVsdC5TaGFyZWRBcnJheUJ1ZmZlcil9OmZ1bmN0aW9uKEEpe3JldHVybiBBJiZBLmJ1ZmZlciYmQS5idWZmZXIgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcn07ZS5pc0FycmF5QnVmZmVyPXN9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5fX2VzTW9kdWxlPSEwLGUuZGVmYXVsdD12b2lkIDA7dmFyIG49dm9pZCAwIT09bj9uOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp7fTtlLmRlZmF1bHQ9bn0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5hZGQ9ZnVuY3Rpb24oQSxlLHQpe3JldHVybih0PXR8fG5ldyBuKDMpKVswXT1BWzBdK2VbMF0sdFsxXT1BWzFdK2VbMV0sdFsyXT1BWzJdK2VbMl0sdH0sZS5jb3B5PWZ1bmN0aW9uKEEsZSl7cmV0dXJuKGU9ZXx8bmV3IG4oMykpWzBdPUFbMF0sZVsxXT1BWzFdLGVbMl09QVsyXSxlfSxlLmNyZWF0ZT1mdW5jdGlvbihBLGUsdCl7dmFyIGk9bmV3IG4oMyk7cmV0dXJuIEEmJihpWzBdPUEpLGUmJihpWzFdPWUpLHQmJihpWzJdPXQpLGl9LGUuY3Jvc3M9ZnVuY3Rpb24oQSxlLHQpe3Q9dHx8bmV3IG4oMyk7dmFyIGk9QVsyXSplWzBdLUFbMF0qZVsyXSxyPUFbMF0qZVsxXS1BWzFdKmVbMF07cmV0dXJuIHRbMF09QVsxXSplWzJdLUFbMl0qZVsxXSx0WzFdPWksdFsyXT1yLHR9LGUuZGlzdGFuY2U9ZnVuY3Rpb24oQSxlKXt2YXIgdD1BWzBdLWVbMF0sbj1BWzFdLWVbMV0saT1BWzJdLWVbMl07cmV0dXJuIE1hdGguc3FydCh0KnQrbipuK2kqaSl9LGUuZGlzdGFuY2VTcT1mdW5jdGlvbihBLGUpe3ZhciB0PUFbMF0tZVswXSxuPUFbMV0tZVsxXSxpPUFbMl0tZVsyXTtyZXR1cm4gdCp0K24qbitpKml9LGUuZGl2aWRlPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4odD10fHxuZXcgbigzKSlbMF09QVswXS9lWzBdLHRbMV09QVsxXS9lWzFdLHRbMl09QVsyXS9lWzJdLHR9LGUuZGl2U2NhbGFyPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4odD10fHxuZXcgbigzKSlbMF09QVswXS9lLHRbMV09QVsxXS9lLHRbMl09QVsyXS9lLHR9LGUuZG90PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEFbMF0qZVswXStBWzFdKmVbMV0rQVsyXSplWzJdfSxlLmxlcnA9ZnVuY3Rpb24oQSxlLHQsaSl7cmV0dXJuKGk9aXx8bmV3IG4oMykpWzBdPSgxLXQpKkFbMF0rdCplWzBdLGlbMV09KDEtdCkqQVsxXSt0KmVbMV0saVsyXT0oMS10KSpBWzJdK3QqZVsyXSxpfSxlLmxlbmd0aD1mdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5zcXJ0KEFbMF0qQVswXStBWzFdKkFbMV0rQVsyXSpBWzJdKX0sZS5sZW5ndGhTcT1mdW5jdGlvbihBKXtyZXR1cm4gQVswXSpBWzBdK0FbMV0qQVsxXStBWzJdKkFbMl19LGUubXVsU2NhbGFyPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4odD10fHxuZXcgbigzKSlbMF09QVswXSplLHRbMV09QVsxXSplLHRbMl09QVsyXSplLHR9LGUubXVsdGlwbHk9ZnVuY3Rpb24oQSxlLHQpe3JldHVybih0PXR8fG5ldyBuKDMpKVswXT1BWzBdKmVbMF0sdFsxXT1BWzFdKmVbMV0sdFsyXT1BWzJdKmVbMl0sdH0sZS5uZWdhdGU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4oZT1lfHxuZXcgbigzKSlbMF09LUFbMF0sZVsxXT0tQVsxXSxlWzJdPS1BWzJdLGV9LGUubm9ybWFsaXplPWZ1bmN0aW9uKEEsZSl7ZT1lfHxuZXcgbigzKTt2YXIgdD1BWzBdKkFbMF0rQVsxXSpBWzFdK0FbMl0qQVsyXSxpPU1hdGguc3FydCh0KTtyZXR1cm4gaT4xZS01PyhlWzBdPUFbMF0vaSxlWzFdPUFbMV0vaSxlWzJdPUFbMl0vaSk6KGVbMF09MCxlWzFdPTAsZVsyXT0wKSxlfSxlLnNldERlZmF1bHRUeXBlPWZ1bmN0aW9uKEEpe3ZhciBlPW47cmV0dXJuIG49QSxlfSxlLnN1YnRyYWN0PWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4odD10fHxuZXcgbigzKSlbMF09QVswXS1lWzBdLHRbMV09QVsxXS1lWzFdLHRbMl09QVsyXS1lWzJdLHR9O3ZhciBuPUZsb2F0MzJBcnJheX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5pc1dlYkdMMT1mdW5jdGlvbihBKXtyZXR1cm4hQS50ZXhTdG9yYWdlMkR9LGUuaXNXZWJHTDI9ZnVuY3Rpb24oQSl7cmV0dXJuISFBLnRleFN0b3JhZ2UyRH0sZS5nbEVudW1Ub1N0cmluZz12b2lkIDA7dmFyIG4saSxyPShuPXt9LGk9e30sZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24oQSl7dmFyIGU9QS5jb25zdHJ1Y3Rvci5uYW1lO2lmKCFuW2VdKXtmb3IodmFyIHQgaW4gQSlpZigibnVtYmVyIj09dHlwZW9mIEFbdF0pe3ZhciByPWlbQVt0XV07aVtBW3RdXT1yPyIiLmNvbmNhdChyLCIgfCAiKS5jb25jYXQodCk6dH1uW2VdPSEwfX0oQSksaVtlXXx8IjB4IitlLnRvU3RyaW5nKDE2KX0pO2UuZ2xFbnVtVG9TdHJpbmc9cn0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5jcmVhdGVBdHRyaWJ1dGVTZXR0ZXJzPUosZS5jcmVhdGVQcm9ncmFtPXksZS5jcmVhdGVQcm9ncmFtRnJvbVNjcmlwdHM9ZnVuY3Rpb24oQSxlLHQsbixpKXtmb3IodmFyIHI9WSh0LG4saSksbz1bXSxzPTA7czxlLmxlbmd0aDsrK3Mpe3ZhciBhPVQoQSxlW3NdLEFbZltzXV0sci5lcnJvckNhbGxiYWNrKTtpZighYSlyZXR1cm4gbnVsbDtvLnB1c2goYSl9cmV0dXJuIHkoQSxvLHIpfSxlLmNyZWF0ZVByb2dyYW1Gcm9tU291cmNlcz14LGUuY3JlYXRlUHJvZ3JhbUluZm89ZnVuY3Rpb24oQSxlLHQsbixpKXt2YXIgcj1ZKHQsbixpKSxvPSEwO2lmKGU9ZS5tYXAoKGZ1bmN0aW9uKEEpe2lmKEEuaW5kZXhPZigiXG4iKTwwKXt2YXIgZT1jKEEpO2U/QT1lLnRleHQ6KHIuZXJyb3JDYWxsYmFjaygibm8gZWxlbWVudCB3aXRoIGlkOiAiK0EpLG89ITEpfXJldHVybiBBfSkpLCFvKXJldHVybiBudWxsO3ZhciBzPXgoQSxlLHIpO3JldHVybiBzP0woQSxzKTpudWxsfSxlLmNyZWF0ZVByb2dyYW1JbmZvRnJvbVByb2dyYW09TCxlLmNyZWF0ZVVuaWZvcm1TZXR0ZXJzPUcsZS5jcmVhdGVVbmlmb3JtQmxvY2tTcGVjRnJvbVByb2dyYW09SCxlLmNyZWF0ZVVuaWZvcm1CbG9ja0luZm9Gcm9tUHJvZ3JhbT1rLGUuY3JlYXRlVW5pZm9ybUJsb2NrSW5mbz1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIGsoQSxlLnByb2dyYW0sZS51bmlmb3JtQmxvY2tTcGVjLHQpfSxlLmNyZWF0ZVRyYW5zZm9ybUZlZWRiYWNrPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1BLmNyZWF0ZVRyYW5zZm9ybUZlZWRiYWNrKCk7cmV0dXJuIEEuYmluZFRyYW5zZm9ybUZlZWRiYWNrKEEuVFJBTlNGT1JNX0ZFRURCQUNLLG4pLEEudXNlUHJvZ3JhbShlLnByb2dyYW0pLGIoQSxlLHQpLEEuYmluZFRyYW5zZm9ybUZlZWRiYWNrKEEuVFJBTlNGT1JNX0ZFRURCQUNLLG51bGwpLGZ1bmN0aW9uKEEsZSx0KXtmb3IodmFyIG4gaW4gZS50cmFuc2Zvcm1GZWVkYmFja0luZm8mJihlPWUudHJhbnNmb3JtRmVlZGJhY2tJbmZvKSx0LmF0dHJpYnMmJih0PXQuYXR0cmlicyksdCl7dmFyIGk9ZVtuXTtpJiZBLmJpbmRCdWZmZXJCYXNlKEEuVFJBTlNGT1JNX0ZFRURCQUNLX0JVRkZFUixpLmluZGV4LG51bGwpfX0oQSxlLHQpLG59LGUuY3JlYXRlVHJhbnNmb3JtRmVlZGJhY2tJbmZvPVMsZS5iaW5kVHJhbnNmb3JtRmVlZGJhY2tJbmZvPWIsZS5zZXRBdHRyaWJ1dGVzPXosZS5zZXRCdWZmZXJzQW5kQXR0cmlidXRlcz1mdW5jdGlvbihBLGUsdCl7dC52ZXJ0ZXhBcnJheU9iamVjdD9BLmJpbmRWZXJ0ZXhBcnJheSh0LnZlcnRleEFycmF5T2JqZWN0KTooeihlLmF0dHJpYlNldHRlcnN8fGUsdC5hdHRyaWJzKSx0LmluZGljZXMmJkEuYmluZEJ1ZmZlcihBLkVMRU1FTlRfQVJSQVlfQlVGRkVSLHQuaW5kaWNlcykpfSxlLnNldFVuaWZvcm1zPWZ1bmN0aW9uIEEoZSx0KXtmb3IodmFyIG49ZS51bmlmb3JtU2V0dGVyc3x8ZSxpPWFyZ3VtZW50cy5sZW5ndGgscj0xO3I8aTsrK3Ipe3ZhciBvPWFyZ3VtZW50c1tyXTtpZihBcnJheS5pc0FycmF5KG8pKWZvcih2YXIgcz1vLmxlbmd0aCxhPTA7YTxzOysrYSlBKG4sb1thXSk7ZWxzZSBmb3IodmFyIEIgaW4gbyl7dmFyIGM9bltCXTtjJiZjKG9bQl0pfX19LGUuc2V0VW5pZm9ybUJsb2NrPWZ1bmN0aW9uKEEsZSx0KXtqKEEsZSx0KSYmQS5idWZmZXJEYXRhKEEuVU5JRk9STV9CVUZGRVIsdC5hcnJheSxBLkRZTkFNSUNfRFJBVyl9LGUuc2V0QmxvY2tVbmlmb3Jtcz1mdW5jdGlvbihBLGUpe3ZhciB0PUEudW5pZm9ybXM7Zm9yKHZhciBuIGluIGUpe3ZhciBpPXRbbl07aWYoaSl7dmFyIHI9ZVtuXTtyLmxlbmd0aD9pLnNldChyKTppWzBdPXJ9fX0sZS5iaW5kVW5pZm9ybUJsb2NrPWo7dmFyIG4saT1zKHQoNCkpLHI9cyh0KDApKSxvPShuPXQoMikpJiZuLl9fZXNNb2R1bGU/bjp7ZGVmYXVsdDpufTtmdW5jdGlvbiBzKEEpe2lmKEEmJkEuX19lc01vZHVsZSlyZXR1cm4gQTt2YXIgZT17fTtpZihudWxsIT1BKWZvcih2YXIgdCBpbiBBKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLHQpKXt2YXIgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLHQpOnt9O24uZ2V0fHxuLnNldD9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LG4pOmVbdF09QVt0XX1yZXR1cm4gZS5kZWZhdWx0PUEsZX12YXIgYT1yLmVycm9yLEI9ci53YXJuLGM9by5kZWZhdWx0JiZvLmRlZmF1bHQuZG9jdW1lbnQmJm8uZGVmYXVsdC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZD9vLmRlZmF1bHQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQuYmluZChvLmRlZmF1bHQuZG9jdW1lbnQpOmZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9LGc9e307ZnVuY3Rpb24gRShBLGUpe3JldHVybiBnW2VdLmJpbmRQb2ludH1mdW5jdGlvbiBRKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe0EudW5pZm9ybTFpKGUsdCl9fWZ1bmN0aW9uIHUoQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtMWl2KGUsdCl9fWZ1bmN0aW9uIGwoQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtMml2KGUsdCl9fWZ1bmN0aW9uIGgoQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtM2l2KGUsdCl9fWZ1bmN0aW9uIHcoQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtNGl2KGUsdCl9fWZ1bmN0aW9uIEMoQSxlLHQsbil7dmFyIG89RSgwLGUpO3JldHVybiBpLmlzV2ViR0wyKEEpP2Z1bmN0aW9uKGUpe3ZhciBpLHM7ci5pc1RleHR1cmUoQSxlKT8oaT1lLHM9bnVsbCk6KGk9ZS50ZXh0dXJlLHM9ZS5zYW1wbGVyKSxBLnVuaWZvcm0xaShuLHQpLEEuYWN0aXZlVGV4dHVyZShBLlRFWFRVUkUwK3QpLEEuYmluZFRleHR1cmUobyxpKSxBLmJpbmRTYW1wbGVyKHQscyl9OmZ1bmN0aW9uKGUpe0EudW5pZm9ybTFpKG4sdCksQS5hY3RpdmVUZXh0dXJlKEEuVEVYVFVSRTArdCksQS5iaW5kVGV4dHVyZShvLGUpfX1mdW5jdGlvbiBJKEEsZSx0LG4sbyl7Zm9yKHZhciBzPUUoMCxlKSxhPW5ldyBJbnQzMkFycmF5KG8pLEI9MDtCPG87KytCKWFbQl09dCtCO3JldHVybiBpLmlzV2ViR0wyKEEpP2Z1bmN0aW9uKGUpe0EudW5pZm9ybTFpdihuLGEpLGUuZm9yRWFjaCgoZnVuY3Rpb24oZSxuKXt2YXIgaSxvO0EuYWN0aXZlVGV4dHVyZShBLlRFWFRVUkUwK2Fbbl0pLHIuaXNUZXh0dXJlKEEsZSk/KGk9ZSxvPW51bGwpOihpPWUudGV4dHVyZSxvPWUuc2FtcGxlciksQS5iaW5kU2FtcGxlcih0LG8pLEEuYmluZFRleHR1cmUocyxpKX0pKX06ZnVuY3Rpb24oZSl7QS51bmlmb3JtMWl2KG4sYSksZS5mb3JFYWNoKChmdW5jdGlvbihlLHQpe0EuYWN0aXZlVGV4dHVyZShBLlRFWFRVUkUwK2FbdF0pLEEuYmluZFRleHR1cmUocyxlKX0pKX19ZnVuY3Rpb24gTShBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLmJpbmRCdWZmZXIoQS5BUlJBWV9CVUZGRVIsdC5idWZmZXIpLEEuZW5hYmxlVmVydGV4QXR0cmliQXJyYXkoZSksQS52ZXJ0ZXhBdHRyaWJQb2ludGVyKGUsdC5udW1Db21wb25lbnRzfHx0LnNpemUsdC50eXBlfHxBLkZMT0FULHQubm9ybWFsaXplfHwhMSx0LnN0cmlkZXx8MCx0Lm9mZnNldHx8MCksdm9pZCAwIT09dC5kaXZpc29yJiZBLnZlcnRleEF0dHJpYkRpdmlzb3IoZSx0LmRpdmlzb3IpfX1mdW5jdGlvbiBkKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe0EuYmluZEJ1ZmZlcihBLkFSUkFZX0JVRkZFUix0LmJ1ZmZlciksQS5lbmFibGVWZXJ0ZXhBdHRyaWJBcnJheShlKSxBLnZlcnRleEF0dHJpYklQb2ludGVyKGUsdC5udW1Db21wb25lbnRzfHx0LnNpemUsdC50eXBlfHxBLklOVCx0LnN0cmlkZXx8MCx0Lm9mZnNldHx8MCksdm9pZCAwIT09dC5kaXZpc29yJiZBLnZlcnRleEF0dHJpYkRpdmlzb3IoZSx0LmRpdmlzb3IpfX1mdW5jdGlvbiBwKEEsZSx0KXt2YXIgbj10LnNpemUsaT10LmNvdW50O3JldHVybiBmdW5jdGlvbih0KXtBLmJpbmRCdWZmZXIoQS5BUlJBWV9CVUZGRVIsdC5idWZmZXIpO2Zvcih2YXIgcj10LnNpemV8fHQubnVtQ29tcG9uZW50c3x8bixvPXIvaSxzPXQudHlwZXx8QS5GTE9BVCxhPWdbc10uc2l6ZSpyLEI9dC5ub3JtYWxpemV8fCExLGM9dC5vZmZzZXR8fDAsRT1hL2ksUT0wO1E8aTsrK1EpQS5lbmFibGVWZXJ0ZXhBdHRyaWJBcnJheShlK1EpLEEudmVydGV4QXR0cmliUG9pbnRlcihlK1EsbyxzLEIsYSxjK0UqUSksdm9pZCAwIT09dC5kaXZpc29yJiZBLnZlcnRleEF0dHJpYkRpdmlzb3IoZStRLHQuZGl2aXNvcil9fWdbNTEyNl09e1R5cGU6RmxvYXQzMkFycmF5LHNpemU6NCxzZXR0ZXI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtMWYoZSx0KX19LGFycmF5U2V0dGVyOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe0EudW5pZm9ybTFmdihlLHQpfX19LGdbMzU2NjRdPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjgsc2V0dGVyOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe0EudW5pZm9ybTJmdihlLHQpfX19LGdbMzU2NjVdPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjEyLHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm0zZnYoZSx0KX19fSxnWzM1NjY2XT17VHlwZTpGbG9hdDMyQXJyYXksc2l6ZToxNixzZXR0ZXI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtNGZ2KGUsdCl9fX0sZ1s1MTI0XT17VHlwZTpJbnQzMkFycmF5LHNpemU6NCxzZXR0ZXI6USxhcnJheVNldHRlcjp1fSxnWzM1NjY3XT17VHlwZTpJbnQzMkFycmF5LHNpemU6OCxzZXR0ZXI6bH0sZ1szNTY2OF09e1R5cGU6SW50MzJBcnJheSxzaXplOjEyLHNldHRlcjpofSxnWzM1NjY5XT17VHlwZTpJbnQzMkFycmF5LHNpemU6MTYsc2V0dGVyOnd9LGdbNTEyNV09e1R5cGU6VWludDMyQXJyYXksc2l6ZTo0LHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm0xdWkoZSx0KX19LGFycmF5U2V0dGVyOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe0EudW5pZm9ybTF1aXYoZSx0KX19fSxnWzM2Mjk0XT17VHlwZTpVaW50MzJBcnJheSxzaXplOjgsc2V0dGVyOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe0EudW5pZm9ybTJ1aXYoZSx0KX19fSxnWzM2Mjk1XT17VHlwZTpVaW50MzJBcnJheSxzaXplOjEyLHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm0zdWl2KGUsdCl9fX0sZ1szNjI5Nl09e1R5cGU6VWludDMyQXJyYXksc2l6ZToxNixzZXR0ZXI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtNHVpdihlLHQpfX19LGdbMzU2NzBdPXtUeXBlOlVpbnQzMkFycmF5LHNpemU6NCxzZXR0ZXI6USxhcnJheVNldHRlcjp1fSxnWzM1NjcxXT17VHlwZTpVaW50MzJBcnJheSxzaXplOjgsc2V0dGVyOmx9LGdbMzU2NzJdPXtUeXBlOlVpbnQzMkFycmF5LHNpemU6MTIsc2V0dGVyOmh9LGdbMzU2NzNdPXtUeXBlOlVpbnQzMkFycmF5LHNpemU6MTYsc2V0dGVyOnd9LGdbMzU2NzRdPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjE2LHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm1NYXRyaXgyZnYoZSwhMSx0KX19fSxnWzM1Njc1XT17VHlwZTpGbG9hdDMyQXJyYXksc2l6ZTozNixzZXR0ZXI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24odCl7QS51bmlmb3JtTWF0cml4M2Z2KGUsITEsdCl9fX0sZ1szNTY3Nl09e1R5cGU6RmxvYXQzMkFycmF5LHNpemU6NjQsc2V0dGVyOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe0EudW5pZm9ybU1hdHJpeDRmdihlLCExLHQpfX19LGdbMzU2ODVdPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjI0LHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm1NYXRyaXgyeDNmdihlLCExLHQpfX19LGdbMzU2ODZdPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjMyLHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm1NYXRyaXgyeDRmdihlLCExLHQpfX19LGdbMzU2ODddPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjI0LHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm1NYXRyaXgzeDJmdihlLCExLHQpfX19LGdbMzU2ODhdPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjQ4LHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm1NYXRyaXgzeDRmdihlLCExLHQpfX19LGdbMzU2ODldPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjMyLHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm1NYXRyaXg0eDJmdihlLCExLHQpfX19LGdbMzU2OTBdPXtUeXBlOkZsb2F0MzJBcnJheSxzaXplOjQ4LHNldHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbih0KXtBLnVuaWZvcm1NYXRyaXg0eDNmdihlLCExLHQpfX19LGdbMzU2NzhdPXtUeXBlOm51bGwsc2l6ZTowLHNldHRlcjpDLGFycmF5U2V0dGVyOkksYmluZFBvaW50OjM1NTN9LGdbMzU2ODBdPXtUeXBlOm51bGwsc2l6ZTowLHNldHRlcjpDLGFycmF5U2V0dGVyOkksYmluZFBvaW50OjM0MDY3fSxnWzM1Njc5XT17VHlwZTpudWxsLHNpemU6MCxzZXR0ZXI6QyxhcnJheVNldHRlcjpJLGJpbmRQb2ludDozMjg3OX0sZ1szNTY4Ml09e1R5cGU6bnVsbCxzaXplOjAsc2V0dGVyOkMsYXJyYXlTZXR0ZXI6SSxiaW5kUG9pbnQ6MzU1M30sZ1szNjI4OV09e1R5cGU6bnVsbCxzaXplOjAsc2V0dGVyOkMsYXJyYXlTZXR0ZXI6SSxiaW5kUG9pbnQ6MzU4NjZ9LGdbMzYyOTJdPXtUeXBlOm51bGwsc2l6ZTowLHNldHRlcjpDLGFycmF5U2V0dGVyOkksYmluZFBvaW50OjM1ODY2fSxnWzM2MjkzXT17VHlwZTpudWxsLHNpemU6MCxzZXR0ZXI6QyxhcnJheVNldHRlcjpJLGJpbmRQb2ludDozNDA2N30sZ1szNjI5OF09e1R5cGU6bnVsbCxzaXplOjAsc2V0dGVyOkMsYXJyYXlTZXR0ZXI6SSxiaW5kUG9pbnQ6MzU1M30sZ1szNjI5OV09e1R5cGU6bnVsbCxzaXplOjAsc2V0dGVyOkMsYXJyYXlTZXR0ZXI6SSxiaW5kUG9pbnQ6MzI4Nzl9LGdbMzYzMDBdPXtUeXBlOm51bGwsc2l6ZTowLHNldHRlcjpDLGFycmF5U2V0dGVyOkksYmluZFBvaW50OjM0MDY3fSxnWzM2MzAzXT17VHlwZTpudWxsLHNpemU6MCxzZXR0ZXI6QyxhcnJheVNldHRlcjpJLGJpbmRQb2ludDozNTg2Nn0sZ1szNjMwNl09e1R5cGU6bnVsbCxzaXplOjAsc2V0dGVyOkMsYXJyYXlTZXR0ZXI6SSxiaW5kUG9pbnQ6MzU1M30sZ1szNjMwN109e1R5cGU6bnVsbCxzaXplOjAsc2V0dGVyOkMsYXJyYXlTZXR0ZXI6SSxiaW5kUG9pbnQ6MzI4Nzl9LGdbMzYzMDhdPXtUeXBlOm51bGwsc2l6ZTowLHNldHRlcjpDLGFycmF5U2V0dGVyOkksYmluZFBvaW50OjM0MDY3fSxnWzM2MzExXT17VHlwZTpudWxsLHNpemU6MCxzZXR0ZXI6QyxhcnJheVNldHRlcjpJLGJpbmRQb2ludDozNTg2Nn07dmFyIG09e307bVs1MTI2XT17c2l6ZTo0LHNldHRlcjpNfSxtWzM1NjY0XT17c2l6ZTo4LHNldHRlcjpNfSxtWzM1NjY1XT17c2l6ZToxMixzZXR0ZXI6TX0sbVszNTY2Nl09e3NpemU6MTYsc2V0dGVyOk19LG1bNTEyNF09e3NpemU6NCxzZXR0ZXI6ZH0sbVszNTY2N109e3NpemU6OCxzZXR0ZXI6ZH0sbVszNTY2OF09e3NpemU6MTIsc2V0dGVyOmR9LG1bMzU2NjldPXtzaXplOjE2LHNldHRlcjpkfSxtWzUxMjVdPXtzaXplOjQsc2V0dGVyOmR9LG1bMzYyOTRdPXtzaXplOjgsc2V0dGVyOmR9LG1bMzYyOTVdPXtzaXplOjEyLHNldHRlcjpkfSxtWzM2Mjk2XT17c2l6ZToxNixzZXR0ZXI6ZH0sbVszNTY3MF09e3NpemU6NCxzZXR0ZXI6ZH0sbVszNTY3MV09e3NpemU6OCxzZXR0ZXI6ZH0sbVszNTY3Ml09e3NpemU6MTIsc2V0dGVyOmR9LG1bMzU2NzNdPXtzaXplOjE2LHNldHRlcjpkfSxtWzM1Njc0XT17c2l6ZTo0LHNldHRlcjpwLGNvdW50OjJ9LG1bMzU2NzVdPXtzaXplOjksc2V0dGVyOnAsY291bnQ6M30sbVszNTY3Nl09e3NpemU6MTYsc2V0dGVyOnAsY291bnQ6NH07dmFyIEY9L15bIFx0XSpcbi87ZnVuY3Rpb24gRChBLGUsdCxuKXt2YXIgaT1ufHxhLHI9QS5jcmVhdGVTaGFkZXIodCksbz0wO2lmKEYudGVzdChlKSYmKG89MSxlPWUucmVwbGFjZShGLCIiKSksQS5zaGFkZXJTb3VyY2UocixlKSxBLmNvbXBpbGVTaGFkZXIociksIUEuZ2V0U2hhZGVyUGFyYW1ldGVyKHIsQS5DT01QSUxFX1NUQVRVUykpe3ZhciBzPUEuZ2V0U2hhZGVySW5mb0xvZyhyKTtyZXR1cm4gaShmdW5jdGlvbihBLGUpe3JldHVybiBlPWV8fDAsKytlLEEuc3BsaXQoIlxuIikubWFwKChmdW5jdGlvbihBLHQpe3JldHVybiB0K2UrIjogIitBfSkpLmpvaW4oIlxuIil9KGUsbykrIlxuKioqIEVycm9yIGNvbXBpbGluZyBzaGFkZXI6ICIrcyksQS5kZWxldGVTaGFkZXIociksbnVsbH1yZXR1cm4gcn1mdW5jdGlvbiBZKEEsZSx0KXt2YXIgbjtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksImZ1bmN0aW9uIj09dHlwZW9mIEEpdD1BLEE9dm9pZCAwO2Vsc2UgaWYoQSYmIUFycmF5LmlzQXJyYXkoQSkpe2lmKEEuZXJyb3JDYWxsYmFjaylyZXR1cm4gQTt2YXIgaT1BO3Q9aS5lcnJvckNhbGxiYWNrLEE9aS5hdHRyaWJMb2NhdGlvbnMsbj1pLnRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ3N9dmFyIHI9e2Vycm9yQ2FsbGJhY2s6dHx8YSx0cmFuc2Zvcm1GZWVkYmFja1ZhcnlpbmdzOm59O2lmKEEpe3ZhciBvPXt9O0FycmF5LmlzQXJyYXkoQSk/QS5mb3JFYWNoKChmdW5jdGlvbihBLHQpe29bQV09ZT9lW3RdOnR9KSk6bz1BLHIuYXR0cmliTG9jYXRpb25zPW99cmV0dXJuIHJ9dmFyIGY9WyJWRVJURVhfU0hBREVSIiwiRlJBR01FTlRfU0hBREVSIl07ZnVuY3Rpb24gTihBKXtyZXR1cm4gQS5pbmRleE9mKCJmcmFnIik+PTA/KHZvaWQgMCkuRlJBR01FTlRfU0hBREVSOkEuaW5kZXhPZigidmVydCIpPj0wPyh2b2lkIDApLlZFUlRFWF9TSEFERVI6dm9pZCAwfWZ1bmN0aW9uIFUoQSxlKXtlLmZvckVhY2goKGZ1bmN0aW9uKGUpe0EuZGVsZXRlU2hhZGVyKGUpfSkpfWZ1bmN0aW9uIHkoQSxlLHQsbixpKXtmb3IodmFyIG89WSh0LG4saSkscz1bXSxhPVtdLEI9MDtCPGUubGVuZ3RoOysrQil7dmFyIGc9ZVtCXTtpZigic3RyaW5nIj09dHlwZW9mIGcpe3ZhciBFPWMoZyksUT1FP0UudGV4dDpnLHU9QVtmW0JdXTtFJiZFLnR5cGUmJih1PU4oRS50eXBlKXx8dSksZz1EKEEsUSx1LG8uZXJyb3JDYWxsYmFjayksYS5wdXNoKGcpfXIuaXNTaGFkZXIoQSxnKSYmcy5wdXNoKGcpfWlmKHMubGVuZ3RoIT09ZS5sZW5ndGgpcmV0dXJuIG8uZXJyb3JDYWxsYmFjaygibm90IGVub3VnaCBzaGFkZXJzIGZvciBwcm9ncmFtIiksVShBLGEpLG51bGw7dmFyIGw9QS5jcmVhdGVQcm9ncmFtKCk7cy5mb3JFYWNoKChmdW5jdGlvbihlKXtBLmF0dGFjaFNoYWRlcihsLGUpfSkpLG8uYXR0cmliTG9jYXRpb25zJiZPYmplY3Qua2V5cyhvLmF0dHJpYkxvY2F0aW9ucykuZm9yRWFjaCgoZnVuY3Rpb24oZSl7QS5iaW5kQXR0cmliTG9jYXRpb24obCxvLmF0dHJpYkxvY2F0aW9uc1tlXSxlKX0pKTt2YXIgaD1vLnRyYW5zZm9ybUZlZWRiYWNrVmFyeWluZ3M7aWYoaCYmKGguYXR0cmlicyYmKGg9aC5hdHRyaWJzKSxBcnJheS5pc0FycmF5KGgpfHwoaD1PYmplY3Qua2V5cyhoKSksQS50cmFuc2Zvcm1GZWVkYmFja1ZhcnlpbmdzKGwsaCxvLnRyYW5zZm9ybUZlZWRiYWNrTW9kZXx8QS5TRVBBUkFURV9BVFRSSUJTKSksQS5saW5rUHJvZ3JhbShsKSwhQS5nZXRQcm9ncmFtUGFyYW1ldGVyKGwsQS5MSU5LX1NUQVRVUykpe3ZhciB3PUEuZ2V0UHJvZ3JhbUluZm9Mb2cobCk7cmV0dXJuIG8uZXJyb3JDYWxsYmFjaygiRXJyb3IgaW4gcHJvZ3JhbSBsaW5raW5nOiIrdyksQS5kZWxldGVQcm9ncmFtKGwpLFUoQSxhKSxudWxsfXJldHVybiBsfWZ1bmN0aW9uIFQoQSxlLHQsbil7dmFyIGkscj1jKGUpO2lmKCFyKXRocm93IioqKiBFcnJvcjogdW5rbm93biBzY3JpcHQgZWxlbWVudCIrZTtpPXIudGV4dDt2YXIgbz10fHxOKHIudHlwZSk7aWYoIW8pdGhyb3ciKioqIEVycm9yOiB1bmtub3duIHNoYWRlciB0eXBlIjtyZXR1cm4gRChBLGksbyxuKX1mdW5jdGlvbiB4KEEsZSx0LG4saSl7Zm9yKHZhciByPVkodCxuLGkpLG89W10scz0wO3M8ZS5sZW5ndGg7KytzKXt2YXIgYT1EKEEsZVtzXSxBW2Zbc11dLHIuZXJyb3JDYWxsYmFjayk7aWYoIWEpcmV0dXJuIG51bGw7by5wdXNoKGEpfXJldHVybiB5KEEsbyxyKX1mdW5jdGlvbiBSKEEpe3ZhciBlPUEubmFtZTtyZXR1cm4gZS5zdGFydHNXaXRoKCJnbF8iKXx8ZS5zdGFydHNXaXRoKCJ3ZWJnbF8iKX1mdW5jdGlvbiBHKEEsZSl7dmFyIHQ9MDtmdW5jdGlvbiBuKGUsbil7dmFyIGkscj1BLmdldFVuaWZvcm1Mb2NhdGlvbihlLG4ubmFtZSksbz1uLnNpemU+MSYmIlswXSI9PT1uLm5hbWUuc3Vic3RyKC0zKSxzPW4udHlwZSxhPWdbc107aWYoIWEpdGhyb3cidW5rbm93biB0eXBlOiAweCIrcy50b1N0cmluZygxNik7aWYoYS5iaW5kUG9pbnQpe3ZhciBCPXQ7dCs9bi5zaXplLGk9bz9hLmFycmF5U2V0dGVyKEEscyxCLHIsbi5zaXplKTphLnNldHRlcihBLHMsQixyLG4uc2l6ZSl9ZWxzZSBpPWEuYXJyYXlTZXR0ZXImJm8/YS5hcnJheVNldHRlcihBLHIpOmEuc2V0dGVyKEEscik7cmV0dXJuIGkubG9jYXRpb249cixpfWZvcih2YXIgaT17fSxyPUEuZ2V0UHJvZ3JhbVBhcmFtZXRlcihlLEEuQUNUSVZFX1VOSUZPUk1TKSxvPTA7bzxyOysrbyl7dmFyIHM9QS5nZXRBY3RpdmVVbmlmb3JtKGUsbyk7aWYoIVIocykpe3ZhciBhPXMubmFtZTsiWzBdIj09PWEuc3Vic3RyKC0zKSYmKGE9YS5zdWJzdHIoMCxhLmxlbmd0aC0zKSk7dmFyIEI9bihlLHMpO2lbYV09Qn19cmV0dXJuIGl9ZnVuY3Rpb24gUyhBLGUpe2Zvcih2YXIgdD17fSxuPUEuZ2V0UHJvZ3JhbVBhcmFtZXRlcihlLEEuVFJBTlNGT1JNX0ZFRURCQUNLX1ZBUllJTkdTKSxpPTA7aTxuOysraSl7dmFyIHI9QS5nZXRUcmFuc2Zvcm1GZWVkYmFja1ZhcnlpbmcoZSxpKTt0W3IubmFtZV09e2luZGV4OmksdHlwZTpyLnR5cGUsc2l6ZTpyLnNpemV9fXJldHVybiB0fWZ1bmN0aW9uIGIoQSxlLHQpe2Zvcih2YXIgbiBpbiBlLnRyYW5zZm9ybUZlZWRiYWNrSW5mbyYmKGU9ZS50cmFuc2Zvcm1GZWVkYmFja0luZm8pLHQuYXR0cmlicyYmKHQ9dC5hdHRyaWJzKSx0KXt2YXIgaT1lW25dO2lmKGkpe3ZhciByPXRbbl07ci5vZmZzZXQ/QS5iaW5kQnVmZmVyUmFuZ2UoQS5UUkFOU0ZPUk1fRkVFREJBQ0tfQlVGRkVSLGkuaW5kZXgsci5idWZmZXIsci5vZmZzZXQsci5zaXplKTpBLmJpbmRCdWZmZXJCYXNlKEEuVFJBTlNGT1JNX0ZFRURCQUNLX0JVRkZFUixpLmluZGV4LHIuYnVmZmVyKX19fWZ1bmN0aW9uIEgoQSxlKXtmb3IodmFyIHQ9QS5nZXRQcm9ncmFtUGFyYW1ldGVyKGUsQS5BQ1RJVkVfVU5JRk9STVMpLG49W10saT1bXSxyPTA7cjx0Oysrcil7aS5wdXNoKHIpLG4ucHVzaCh7fSk7dmFyIG89QS5nZXRBY3RpdmVVbmlmb3JtKGUscik7aWYoUihvKSlicmVhaztuW3JdLm5hbWU9by5uYW1lfVtbIlVOSUZPUk1fVFlQRSIsInR5cGUiXSxbIlVOSUZPUk1fU0laRSIsInNpemUiXSxbIlVOSUZPUk1fQkxPQ0tfSU5ERVgiLCJibG9ja05keCJdLFsiVU5JRk9STV9PRkZTRVQiLCJvZmZzZXQiXV0uZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIHI9dFswXSxvPXRbMV07QS5nZXRBY3RpdmVVbmlmb3JtcyhlLGksQVtyXSkuZm9yRWFjaCgoZnVuY3Rpb24oQSxlKXtuW2VdW29dPUF9KSl9KSk7Zm9yKHZhciBzPXt9LGE9QS5nZXRQcm9ncmFtUGFyYW1ldGVyKGUsQS5BQ1RJVkVfVU5JRk9STV9CTE9DS1MpLEI9MDtCPGE7KytCKXt2YXIgYz1BLmdldEFjdGl2ZVVuaWZvcm1CbG9ja05hbWUoZSxCKSxnPXtpbmRleDpCLHVzZWRCeVZlcnRleFNoYWRlcjpBLmdldEFjdGl2ZVVuaWZvcm1CbG9ja1BhcmFtZXRlcihlLEIsQS5VTklGT1JNX0JMT0NLX1JFRkVSRU5DRURfQllfVkVSVEVYX1NIQURFUiksdXNlZEJ5RnJhZ21lbnRTaGFkZXI6QS5nZXRBY3RpdmVVbmlmb3JtQmxvY2tQYXJhbWV0ZXIoZSxCLEEuVU5JRk9STV9CTE9DS19SRUZFUkVOQ0VEX0JZX0ZSQUdNRU5UX1NIQURFUiksc2l6ZTpBLmdldEFjdGl2ZVVuaWZvcm1CbG9ja1BhcmFtZXRlcihlLEIsQS5VTklGT1JNX0JMT0NLX0RBVEFfU0laRSksdW5pZm9ybUluZGljZXM6QS5nZXRBY3RpdmVVbmlmb3JtQmxvY2tQYXJhbWV0ZXIoZSxCLEEuVU5JRk9STV9CTE9DS19BQ1RJVkVfVU5JRk9STV9JTkRJQ0VTKX07Zy51c2VkPWcudXNlZEJ5VmVydGV4U2FoZGVyfHxnLnVzZWRCeUZyYWdtZW50U2hhZGVyLHNbY109Z31yZXR1cm57YmxvY2tTcGVjczpzLHVuaWZvcm1EYXRhOm59fXZhciB2PS9cW1xkK1xdXC4kLztmdW5jdGlvbiBrKEEsZSx0LG4pe3ZhciBpPXQuYmxvY2tTcGVjcyxyPXQudW5pZm9ybURhdGEsbz1pW25dO2lmKCFvKXJldHVybiBCKCJubyB1bmlmb3JtIGJsb2NrIG9iamVjdCBuYW1lZDoiLG4pLHtuYW1lOm4sdW5pZm9ybXM6e319O3ZhciBzPW5ldyBBcnJheUJ1ZmZlcihvLnNpemUpLGE9QS5jcmVhdGVCdWZmZXIoKSxjPW8uaW5kZXg7QS5iaW5kQnVmZmVyKEEuVU5JRk9STV9CVUZGRVIsYSksQS51bmlmb3JtQmxvY2tCaW5kaW5nKGUsby5pbmRleCxjKTt2YXIgRT1uKyIuIjt2LnRlc3QoRSkmJihFPUUucmVwbGFjZSh2LCIuIikpO3ZhciBRPXt9O3JldHVybiBvLnVuaWZvcm1JbmRpY2VzLmZvckVhY2goKGZ1bmN0aW9uKEEpe3ZhciBlPXJbQV0sdD1nW2UudHlwZV0sbj10LlR5cGUsaT1lLnNpemUqdC5zaXplLG89ZS5uYW1lO28uc3Vic3RyKDAsRS5sZW5ndGgpPT09RSYmKG89by5zdWJzdHIoRS5sZW5ndGgpKSxRW29dPW5ldyBuKHMsZS5vZmZzZXQsaS9uLkJZVEVTX1BFUl9FTEVNRU5UKX0pKSx7bmFtZTpuLGFycmF5OnMsYXNGbG9hdDpuZXcgRmxvYXQzMkFycmF5KHMpLGJ1ZmZlcjphLHVuaWZvcm1zOlF9fWZ1bmN0aW9uIGooQSxlLHQpe3ZhciBuPShlLnVuaWZvcm1CbG9ja1NwZWN8fGUpLmJsb2NrU3BlY3NbdC5uYW1lXTtpZihuKXt2YXIgaT1uLmluZGV4O3JldHVybiBBLmJpbmRCdWZmZXJSYW5nZShBLlVOSUZPUk1fQlVGRkVSLGksdC5idWZmZXIsdC5vZmZzZXR8fDAsdC5hcnJheS5ieXRlTGVuZ3RoKSwhMH1yZXR1cm4hMX1mdW5jdGlvbiBKKEEsZSl7Zm9yKHZhciB0PXt9LG49QS5nZXRQcm9ncmFtUGFyYW1ldGVyKGUsQS5BQ1RJVkVfQVRUUklCVVRFUyksaT0wO2k8bjsrK2kpe3ZhciByPUEuZ2V0QWN0aXZlQXR0cmliKGUsaSk7aWYoIVIocikpe3ZhciBvPUEuZ2V0QXR0cmliTG9jYXRpb24oZSxyLm5hbWUpLHM9bVtyLnR5cGVdLGE9cy5zZXR0ZXIoQSxvLHMpO2EubG9jYXRpb249byx0W3IubmFtZV09YX19cmV0dXJuIHR9ZnVuY3Rpb24geihBLGUpe2Zvcih2YXIgdCBpbiBlKXt2YXIgbj1BW3RdO24mJm4oZVt0XSl9fWZ1bmN0aW9uIEwoQSxlKXt2YXIgdD17cHJvZ3JhbTplLHVuaWZvcm1TZXR0ZXJzOkcoQSxlKSxhdHRyaWJTZXR0ZXJzOkooQSxlKX07cmV0dXJuIGkuaXNXZWJHTDIoQSkmJih0LnVuaWZvcm1CbG9ja1NwZWM9SChBLGUpLHQudHJhbnNmb3JtRmVlZGJhY2tJbmZvPVMoQSxlKSksdH19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5fX2VzTW9kdWxlPSEwLGUuYXhpc1JvdGF0ZT1mdW5jdGlvbihBLGUsdCxuKXtuPW58fG5ldyBpKDE2KTt2YXIgcj1lWzBdLG89ZVsxXSxzPWVbMl0sYT1NYXRoLnNxcnQocipyK28qbytzKnMpLEI9KHIvPWEpKnIsYz0oby89YSkqbyxnPShzLz1hKSpzLEU9TWF0aC5jb3ModCksUT1NYXRoLnNpbih0KSx1PTEtRSxsPUIrKDEtQikqRSxoPXIqbyp1K3MqUSx3PXIqcyp1LW8qUSxDPXIqbyp1LXMqUSxJPWMrKDEtYykqRSxNPW8qcyp1K3IqUSxkPXIqcyp1K28qUSxwPW8qcyp1LXIqUSxtPWcrKDEtZykqRSxGPUFbMF0sRD1BWzFdLFk9QVsyXSxmPUFbM10sTj1BWzRdLFU9QVs1XSx5PUFbNl0sVD1BWzddLHg9QVs4XSxSPUFbOV0sRz1BWzEwXSxTPUFbMTFdO3JldHVybiBuWzBdPWwqRitoKk4rdyp4LG5bMV09bCpEK2gqVSt3KlIsblsyXT1sKlkraCp5K3cqRyxuWzNdPWwqZitoKlQrdypTLG5bNF09QypGK0kqTitNKngsbls1XT1DKkQrSSpVK00qUixuWzZdPUMqWStJKnkrTSpHLG5bN109QypmK0kqVCtNKlMsbls4XT1kKkYrcCpOK20qeCxuWzldPWQqRCtwKlUrbSpSLG5bMTBdPWQqWStwKnkrbSpHLG5bMTFdPWQqZitwKlQrbSpTLEEhPT1uJiYoblsxMl09QVsxMl0sblsxM109QVsxM10sblsxNF09QVsxNF0sblsxNV09QVsxNV0pLG59LGUuYXhpc1JvdGF0aW9uPWZ1bmN0aW9uKEEsZSx0KXt0PXR8fG5ldyBpKDE2KTt2YXIgbj1BWzBdLHI9QVsxXSxvPUFbMl0scz1NYXRoLnNxcnQobipuK3IqcitvKm8pLGE9KG4vPXMpKm4sQj0oci89cykqcixjPShvLz1zKSpvLGc9TWF0aC5jb3MoZSksRT1NYXRoLnNpbihlKSxRPTEtZztyZXR1cm4gdFswXT1hKygxLWEpKmcsdFsxXT1uKnIqUStvKkUsdFsyXT1uKm8qUS1yKkUsdFszXT0wLHRbNF09bipyKlEtbypFLHRbNV09QisoMS1CKSpnLHRbNl09cipvKlErbipFLHRbN109MCx0WzhdPW4qbypRK3IqRSx0WzldPXIqbypRLW4qRSx0WzEwXT1jKygxLWMpKmcsdFsxMV09MCx0WzEyXT0wLHRbMTNdPTAsdFsxNF09MCx0WzE1XT0xLHR9LGUuY29weT1hLGUuZnJ1c3R1bT1mdW5jdGlvbihBLGUsdCxuLHIsbyxzKXtzPXN8fG5ldyBpKDE2KTt2YXIgYT1lLUEsQj1uLXQsYz1yLW87cmV0dXJuIHNbMF09MipyL2Esc1sxXT0wLHNbMl09MCxzWzNdPTAsc1s0XT0wLHNbNV09MipyL0Isc1s2XT0wLHNbN109MCxzWzhdPShBK2UpL2Esc1s5XT0obit0KS9CLHNbMTBdPW8vYyxzWzExXT0tMSxzWzEyXT0wLHNbMTNdPTAsc1sxNF09cipvL2Msc1sxNV09MCxzfSxlLmdldEF4aXM9ZnVuY3Rpb24oQSxlLHQpe3Q9dHx8bi5jcmVhdGUoKTt2YXIgaT00KmU7cmV0dXJuIHRbMF09QVtpKzBdLHRbMV09QVtpKzFdLHRbMl09QVtpKzJdLHR9LGUuZ2V0VHJhbnNsYXRpb249ZnVuY3Rpb24oQSxlKXtyZXR1cm4oZT1lfHxuLmNyZWF0ZSgpKVswXT1BWzEyXSxlWzFdPUFbMTNdLGVbMl09QVsxNF0sZX0sZS5pZGVudGl0eT1CLGUuaW52ZXJzZT1jLGUubG9va0F0PWZ1bmN0aW9uKEEsZSx0LGEpe2E9YXx8bmV3IGkoMTYpO3ZhciBCPXIsYz1vLGc9cztyZXR1cm4gbi5ub3JtYWxpemUobi5zdWJ0cmFjdChBLGUsZyksZyksbi5ub3JtYWxpemUobi5jcm9zcyh0LGcsQiksQiksbi5ub3JtYWxpemUobi5jcm9zcyhnLEIsYyksYyksYVswXT1CWzBdLGFbMV09QlsxXSxhWzJdPUJbMl0sYVszXT0wLGFbNF09Y1swXSxhWzVdPWNbMV0sYVs2XT1jWzJdLGFbN109MCxhWzhdPWdbMF0sYVs5XT1nWzFdLGFbMTBdPWdbMl0sYVsxMV09MCxhWzEyXT1BWzBdLGFbMTNdPUFbMV0sYVsxNF09QVsyXSxhWzE1XT0xLGF9LGUubXVsdGlwbHk9ZnVuY3Rpb24oQSxlLHQpe3Q9dHx8bmV3IGkoMTYpO3ZhciBuPUFbMF0scj1BWzFdLG89QVsyXSxzPUFbM10sYT1BWzRdLEI9QVs1XSxjPUFbNl0sZz1BWzddLEU9QVs4XSxRPUFbOV0sdT1BWzEwXSxsPUFbMTFdLGg9QVsxMl0sdz1BWzEzXSxDPUFbMTRdLEk9QVsxNV0sTT1lWzBdLGQ9ZVsxXSxwPWVbMl0sbT1lWzNdLEY9ZVs0XSxEPWVbNV0sWT1lWzZdLGY9ZVs3XSxOPWVbOF0sVT1lWzldLHk9ZVsxMF0sVD1lWzExXSx4PWVbMTJdLFI9ZVsxM10sRz1lWzE0XSxTPWVbMTVdO3JldHVybiB0WzBdPW4qTSthKmQrRSpwK2gqbSx0WzFdPXIqTStCKmQrUSpwK3cqbSx0WzJdPW8qTStjKmQrdSpwK0MqbSx0WzNdPXMqTStnKmQrbCpwK0kqbSx0WzRdPW4qRithKkQrRSpZK2gqZix0WzVdPXIqRitCKkQrUSpZK3cqZix0WzZdPW8qRitjKkQrdSpZK0MqZix0WzddPXMqRitnKkQrbCpZK0kqZix0WzhdPW4qTithKlUrRSp5K2gqVCx0WzldPXIqTitCKlUrUSp5K3cqVCx0WzEwXT1vKk4rYypVK3UqeStDKlQsdFsxMV09cypOK2cqVStsKnkrSSpULHRbMTJdPW4qeCthKlIrRSpHK2gqUyx0WzEzXT1yKngrQipSK1EqRyt3KlMsdFsxNF09byp4K2MqUit1KkcrQypTLHRbMTVdPXMqeCtnKlIrbCpHK0kqUyx0fSxlLm5lZ2F0ZT1mdW5jdGlvbihBLGUpe3JldHVybihlPWV8fG5ldyBpKDE2KSlbMF09LUFbMF0sZVsxXT0tQVsxXSxlWzJdPS1BWzJdLGVbM109LUFbM10sZVs0XT0tQVs0XSxlWzVdPS1BWzVdLGVbNl09LUFbNl0sZVs3XT0tQVs3XSxlWzhdPS1BWzhdLGVbOV09LUFbOV0sZVsxMF09LUFbMTBdLGVbMTFdPS1BWzExXSxlWzEyXT0tQVsxMl0sZVsxM109LUFbMTNdLGVbMTRdPS1BWzE0XSxlWzE1XT0tQVsxNV0sZX0sZS5vcnRobz1mdW5jdGlvbihBLGUsdCxuLHIsbyxzKXtyZXR1cm4ocz1zfHxuZXcgaSgxNikpWzBdPTIvKGUtQSksc1sxXT0wLHNbMl09MCxzWzNdPTAsc1s0XT0wLHNbNV09Mi8obi10KSxzWzZdPTAsc1s3XT0wLHNbOF09MCxzWzldPTAsc1sxMF09Mi8oci1vKSxzWzExXT0wLHNbMTJdPShlK0EpLyhBLWUpLHNbMTNdPShuK3QpLyh0LW4pLHNbMTRdPShvK3IpLyhyLW8pLHNbMTVdPTEsc30sZS5wZXJzcGVjdGl2ZT1mdW5jdGlvbihBLGUsdCxuLHIpe3I9cnx8bmV3IGkoMTYpO3ZhciBvPU1hdGgudGFuKC41Kk1hdGguUEktLjUqQSkscz0xLyh0LW4pO3JldHVybiByWzBdPW8vZSxyWzFdPTAsclsyXT0wLHJbM109MCxyWzRdPTAscls1XT1vLHJbNl09MCxyWzddPTAscls4XT0wLHJbOV09MCxyWzEwXT0odCtuKSpzLHJbMTFdPS0xLHJbMTJdPTAsclsxM109MCxyWzE0XT10Km4qcyoyLHJbMTVdPTAscn0sZS5yb3RhdGVYPWZ1bmN0aW9uKEEsZSx0KXt0PXR8fG5ldyBpKDE2KTt2YXIgbj1BWzRdLHI9QVs1XSxvPUFbNl0scz1BWzddLGE9QVs4XSxCPUFbOV0sYz1BWzEwXSxnPUFbMTFdLEU9TWF0aC5jb3MoZSksUT1NYXRoLnNpbihlKTtyZXR1cm4gdFs0XT1FKm4rUSphLHRbNV09RSpyK1EqQix0WzZdPUUqbytRKmMsdFs3XT1FKnMrUSpnLHRbOF09RSphLVEqbix0WzldPUUqQi1RKnIsdFsxMF09RSpjLVEqbyx0WzExXT1FKmctUSpzLEEhPT10JiYodFswXT1BWzBdLHRbMV09QVsxXSx0WzJdPUFbMl0sdFszXT1BWzNdLHRbMTJdPUFbMTJdLHRbMTNdPUFbMTNdLHRbMTRdPUFbMTRdLHRbMTVdPUFbMTVdKSx0fSxlLnJvdGF0ZVk9ZnVuY3Rpb24oQSxlLHQpe3Q9dHx8bmV3IGkoMTYpO3ZhciBuPUFbMF0scj1BWzFdLG89QVsyXSxzPUFbM10sYT1BWzhdLEI9QVs5XSxjPUFbMTBdLGc9QVsxMV0sRT1NYXRoLmNvcyhlKSxRPU1hdGguc2luKGUpO3JldHVybiB0WzBdPUUqbi1RKmEsdFsxXT1FKnItUSpCLHRbMl09RSpvLVEqYyx0WzNdPUUqcy1RKmcsdFs4XT1FKmErUSpuLHRbOV09RSpCK1Eqcix0WzEwXT1FKmMrUSpvLHRbMTFdPUUqZytRKnMsQSE9PXQmJih0WzRdPUFbNF0sdFs1XT1BWzVdLHRbNl09QVs2XSx0WzddPUFbN10sdFsxMl09QVsxMl0sdFsxM109QVsxM10sdFsxNF09QVsxNF0sdFsxNV09QVsxNV0pLHR9LGUucm90YXRlWj1mdW5jdGlvbihBLGUsdCl7dD10fHxuZXcgaSgxNik7dmFyIG49QVswXSxyPUFbMV0sbz1BWzJdLHM9QVszXSxhPUFbNF0sQj1BWzVdLGM9QVs2XSxnPUFbN10sRT1NYXRoLmNvcyhlKSxRPU1hdGguc2luKGUpO3JldHVybiB0WzBdPUUqbitRKmEsdFsxXT1FKnIrUSpCLHRbMl09RSpvK1EqYyx0WzNdPUUqcytRKmcsdFs0XT1FKmEtUSpuLHRbNV09RSpCLVEqcix0WzZdPUUqYy1RKm8sdFs3XT1FKmctUSpzLEEhPT10JiYodFs4XT1BWzhdLHRbOV09QVs5XSx0WzEwXT1BWzEwXSx0WzExXT1BWzExXSx0WzEyXT1BWzEyXSx0WzEzXT1BWzEzXSx0WzE0XT1BWzE0XSx0WzE1XT1BWzE1XSksdH0sZS5yb3RhdGlvblg9ZnVuY3Rpb24oQSxlKXtlPWV8fG5ldyBpKDE2KTt2YXIgdD1NYXRoLmNvcyhBKSxuPU1hdGguc2luKEEpO3JldHVybiBlWzBdPTEsZVsxXT0wLGVbMl09MCxlWzNdPTAsZVs0XT0wLGVbNV09dCxlWzZdPW4sZVs3XT0wLGVbOF09MCxlWzldPS1uLGVbMTBdPXQsZVsxMV09MCxlWzEyXT0wLGVbMTNdPTAsZVsxNF09MCxlWzE1XT0xLGV9LGUucm90YXRpb25ZPWZ1bmN0aW9uKEEsZSl7ZT1lfHxuZXcgaSgxNik7dmFyIHQ9TWF0aC5jb3MoQSksbj1NYXRoLnNpbihBKTtyZXR1cm4gZVswXT10LGVbMV09MCxlWzJdPS1uLGVbM109MCxlWzRdPTAsZVs1XT0xLGVbNl09MCxlWzddPTAsZVs4XT1uLGVbOV09MCxlWzEwXT10LGVbMTFdPTAsZVsxMl09MCxlWzEzXT0wLGVbMTRdPTAsZVsxNV09MSxlfSxlLnJvdGF0aW9uWj1mdW5jdGlvbihBLGUpe2U9ZXx8bmV3IGkoMTYpO3ZhciB0PU1hdGguY29zKEEpLG49TWF0aC5zaW4oQSk7cmV0dXJuIGVbMF09dCxlWzFdPW4sZVsyXT0wLGVbM109MCxlWzRdPS1uLGVbNV09dCxlWzZdPTAsZVs3XT0wLGVbOF09MCxlWzldPTAsZVsxMF09MSxlWzExXT0wLGVbMTJdPTAsZVsxM109MCxlWzE0XT0wLGVbMTVdPTEsZX0sZS5zY2FsZT1mdW5jdGlvbihBLGUsdCl7dD10fHxuZXcgaSgxNik7dmFyIG49ZVswXSxyPWVbMV0sbz1lWzJdO3JldHVybiB0WzBdPW4qQVswXSx0WzFdPW4qQVsxXSx0WzJdPW4qQVsyXSx0WzNdPW4qQVszXSx0WzRdPXIqQVs0XSx0WzVdPXIqQVs1XSx0WzZdPXIqQVs2XSx0WzddPXIqQVs3XSx0WzhdPW8qQVs4XSx0WzldPW8qQVs5XSx0WzEwXT1vKkFbMTBdLHRbMTFdPW8qQVsxMV0sQSE9PXQmJih0WzEyXT1BWzEyXSx0WzEzXT1BWzEzXSx0WzE0XT1BWzE0XSx0WzE1XT1BWzE1XSksdH0sZS5zY2FsaW5nPWZ1bmN0aW9uKEEsZSl7cmV0dXJuKGU9ZXx8bmV3IGkoMTYpKVswXT1BWzBdLGVbMV09MCxlWzJdPTAsZVszXT0wLGVbNF09MCxlWzVdPUFbMV0sZVs2XT0wLGVbN109MCxlWzhdPTAsZVs5XT0wLGVbMTBdPUFbMl0sZVsxMV09MCxlWzEyXT0wLGVbMTNdPTAsZVsxNF09MCxlWzE1XT0xLGV9LGUuc2V0QXhpcz1mdW5jdGlvbihBLGUsdCxuKXtuIT09QSYmKG49YShBLG4pKTt2YXIgaT00KnQ7cmV0dXJuIG5baSswXT1lWzBdLG5baSsxXT1lWzFdLG5baSsyXT1lWzJdLG59LGUuc2V0RGVmYXVsdFR5cGU9ZnVuY3Rpb24oQSl7dmFyIGU9aTtyZXR1cm4gaT1BLGV9LGUuc2V0VHJhbnNsYXRpb249ZnVuY3Rpb24oQSxlLHQpe3JldHVybiB0PXR8fEIoKSxBIT09dCYmKHRbMF09QVswXSx0WzFdPUFbMV0sdFsyXT1BWzJdLHRbM109QVszXSx0WzRdPUFbNF0sdFs1XT1BWzVdLHRbNl09QVs2XSx0WzddPUFbN10sdFs4XT1BWzhdLHRbOV09QVs5XSx0WzEwXT1BWzEwXSx0WzExXT1BWzExXSksdFsxMl09ZVswXSx0WzEzXT1lWzFdLHRbMTRdPWVbMl0sdFsxNV09MSx0fSxlLnRyYW5zZm9ybURpcmVjdGlvbj1mdW5jdGlvbihBLGUsdCl7dD10fHxuLmNyZWF0ZSgpO3ZhciBpPWVbMF0scj1lWzFdLG89ZVsyXTtyZXR1cm4gdFswXT1pKkFbMF0rcipBWzRdK28qQVs4XSx0WzFdPWkqQVsxXStyKkFbNV0rbypBWzldLHRbMl09aSpBWzJdK3IqQVs2XStvKkFbMTBdLHR9LGUudHJhbnNmb3JtTm9ybWFsPWZ1bmN0aW9uKEEsZSx0KXt0PXR8fG4uY3JlYXRlKCk7dmFyIGk9YyhBKSxyPWVbMF0sbz1lWzFdLHM9ZVsyXTtyZXR1cm4gdFswXT1yKmlbMF0rbyppWzFdK3MqaVsyXSx0WzFdPXIqaVs0XStvKmlbNV0rcyppWzZdLHRbMl09cippWzhdK28qaVs5XStzKmlbMTBdLHR9LGUudHJhbnNmb3JtUG9pbnQ9ZnVuY3Rpb24oQSxlLHQpe3Q9dHx8bi5jcmVhdGUoKTt2YXIgaT1lWzBdLHI9ZVsxXSxvPWVbMl0scz1pKkFbM10rcipBWzddK28qQVsxMV0rQVsxNV07cmV0dXJuIHRbMF09KGkqQVswXStyKkFbNF0rbypBWzhdK0FbMTJdKS9zLHRbMV09KGkqQVsxXStyKkFbNV0rbypBWzldK0FbMTNdKS9zLHRbMl09KGkqQVsyXStyKkFbNl0rbypBWzEwXStBWzE0XSkvcyx0fSxlLnRyYW5zbGF0ZT1mdW5jdGlvbihBLGUsdCl7dD10fHxuZXcgaSgxNik7dmFyIG49ZVswXSxyPWVbMV0sbz1lWzJdLHM9QVswXSxhPUFbMV0sQj1BWzJdLGM9QVszXSxnPUFbNF0sRT1BWzVdLFE9QVs2XSx1PUFbN10sbD1BWzhdLGg9QVs5XSx3PUFbMTBdLEM9QVsxMV0sST1BWzEyXSxNPUFbMTNdLGQ9QVsxNF0scD1BWzE1XTtyZXR1cm4gQSE9PXQmJih0WzBdPXMsdFsxXT1hLHRbMl09Qix0WzNdPWMsdFs0XT1nLHRbNV09RSx0WzZdPVEsdFs3XT11LHRbOF09bCx0WzldPWgsdFsxMF09dyx0WzExXT1DKSx0WzEyXT1zKm4rZypyK2wqbytJLHRbMTNdPWEqbitFKnIraCpvK00sdFsxNF09QipuK1Eqcit3Km8rZCx0WzE1XT1jKm4rdSpyK0MqbytwLHR9LGUudHJhbnNsYXRpb249ZnVuY3Rpb24oQSxlKXtyZXR1cm4oZT1lfHxuZXcgaSgxNikpWzBdPTEsZVsxXT0wLGVbMl09MCxlWzNdPTAsZVs0XT0wLGVbNV09MSxlWzZdPTAsZVs3XT0wLGVbOF09MCxlWzldPTAsZVsxMF09MSxlWzExXT0wLGVbMTJdPUFbMF0sZVsxM109QVsxXSxlWzE0XT1BWzJdLGVbMTVdPTEsZX0sZS50cmFuc3Bvc2U9ZnVuY3Rpb24oQSxlKXt2YXIgdDtpZigoZT1lfHxuZXcgaSgxNikpPT09QSlyZXR1cm4gdD1BWzFdLEFbMV09QVs0XSxBWzRdPXQsdD1BWzJdLEFbMl09QVs4XSxBWzhdPXQsdD1BWzNdLEFbM109QVsxMl0sQVsxMl09dCx0PUFbNl0sQVs2XT1BWzldLEFbOV09dCx0PUFbN10sQVs3XT1BWzEzXSxBWzEzXT10LHQ9QVsxMV0sQVsxMV09QVsxNF0sQVsxNF09dCxlO3ZhciBuPUFbMF0scj1BWzFdLG89QVsyXSxzPUFbM10sYT1BWzRdLEI9QVs1XSxjPUFbNl0sZz1BWzddLEU9QVs4XSxRPUFbOV0sdT1BWzEwXSxsPUFbMTFdLGg9QVsxMl0sdz1BWzEzXSxDPUFbMTRdLEk9QVsxNV07cmV0dXJuIGVbMF09bixlWzFdPWEsZVsyXT1FLGVbM109aCxlWzRdPXIsZVs1XT1CLGVbNl09USxlWzddPXcsZVs4XT1vLGVbOV09YyxlWzEwXT11LGVbMTFdPUMsZVsxMl09cyxlWzEzXT1nLGVbMTRdPWwsZVsxNV09SSxlfTt2YXIgbj1mdW5jdGlvbihBKXtpZihBJiZBLl9fZXNNb2R1bGUpcmV0dXJuIEE7dmFyIGU9e307aWYobnVsbCE9QSlmb3IodmFyIHQgaW4gQSlpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoQSx0KSl7dmFyIG49T2JqZWN0LmRlZmluZVByb3BlcnR5JiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSx0KTp7fTtuLmdldHx8bi5zZXQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxuKTplW3RdPUFbdF19cmV0dXJuIGUuZGVmYXVsdD1BLGV9KHQoMykpLGk9RmxvYXQzMkFycmF5LHI9bi5jcmVhdGUoKSxvPW4uY3JlYXRlKCkscz1uLmNyZWF0ZSgpO2Z1bmN0aW9uIGEoQSxlKXtyZXR1cm4oZT1lfHxuZXcgaSgxNikpWzBdPUFbMF0sZVsxXT1BWzFdLGVbMl09QVsyXSxlWzNdPUFbM10sZVs0XT1BWzRdLGVbNV09QVs1XSxlWzZdPUFbNl0sZVs3XT1BWzddLGVbOF09QVs4XSxlWzldPUFbOV0sZVsxMF09QVsxMF0sZVsxMV09QVsxMV0sZVsxMl09QVsxMl0sZVsxM109QVsxM10sZVsxNF09QVsxNF0sZVsxNV09QVsxNV0sZX1mdW5jdGlvbiBCKEEpe3JldHVybihBPUF8fG5ldyBpKDE2KSlbMF09MSxBWzFdPTAsQVsyXT0wLEFbM109MCxBWzRdPTAsQVs1XT0xLEFbNl09MCxBWzddPTAsQVs4XT0wLEFbOV09MCxBWzEwXT0xLEFbMTFdPTAsQVsxMl09MCxBWzEzXT0wLEFbMTRdPTAsQVsxNV09MSxBfWZ1bmN0aW9uIGMoQSxlKXtlPWV8fG5ldyBpKDE2KTt2YXIgdD1BWzBdLG49QVsxXSxyPUFbMl0sbz1BWzNdLHM9QVs0XSxhPUFbNV0sQj1BWzZdLGM9QVs3XSxnPUFbOF0sRT1BWzldLFE9QVsxMF0sdT1BWzExXSxsPUFbMTJdLGg9QVsxM10sdz1BWzE0XSxDPUFbMTVdLEk9USpDLE09dyp1LGQ9QipDLHA9dypjLG09Qip1LEY9USpjLEQ9cipDLFk9dypvLGY9cip1LE49USpvLFU9cipjLHk9QipvLFQ9ZypoLHg9bCpFLFI9cypoLEc9bCphLFM9cypFLGI9ZyphLEg9dCpoLHY9bCpuLGs9dCpFLGo9ZypuLEo9dCphLHo9cypuLEw9SSphK3AqRSttKmgtKE0qYStkKkUrRipoKSxQPU0qbitEKkUrTipoLShJKm4rWSpFK2YqaCksTz1kKm4rWSphK1UqaC0ocCpuK0QqYSt5KmgpLFY9RipuK2YqYSt5KkUtKG0qbitOKmErVSpFKSxXPTEvKHQqTCtzKlArZypPK2wqVik7cmV0dXJuIGVbMF09VypMLGVbMV09VypQLGVbMl09VypPLGVbM109VypWLGVbNF09VyooTSpzK2QqZytGKmwtKEkqcytwKmcrbSpsKSksZVs1XT1XKihJKnQrWSpnK2YqbC0oTSp0K0QqZytOKmwpKSxlWzZdPVcqKHAqdCtEKnMreSpsLShkKnQrWSpzK1UqbCkpLGVbN109VyoobSp0K04qcytVKmctKEYqdCtmKnMreSpnKSksZVs4XT1XKihUKmMrRyp1K1MqQy0oeCpjK1IqdStiKkMpKSxlWzldPVcqKHgqbytIKnUraipDLShUKm8rdip1K2sqQykpLGVbMTBdPVcqKFIqbyt2KmMrSipDLShHKm8rSCpjK3oqQykpLGVbMTFdPVcqKGIqbytrKmMreip1LShTKm8raipjK0oqdSkpLGVbMTJdPVcqKFIqUStiKncreCpCLShTKncrVCpCK0cqUSkpLGVbMTNdPVcqKGsqdytUKnIrdipRLShIKlEraip3K3gqcikpLGVbMTRdPVcqKEgqQit6KncrRypyLShKKncrUipyK3YqQikpLGVbMTVdPVcqKEoqUStTKnIraipCLShrKkIreipRK2IqcikpLGV9fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2UuX19lc01vZHVsZT0hMCxlLmNyZWF0ZUF0dHJpYnNGcm9tQXJyYXlzPWgsZS5jcmVhdGVCdWZmZXJzRnJvbUFycmF5cz1mdW5jdGlvbihBLGUpe3ZhciB0PXt9O3JldHVybiBPYmplY3Qua2V5cyhlKS5mb3JFYWNoKChmdW5jdGlvbihuKXt0W25dPUMoQSxlW25dLG4pfSkpLGUuaW5kaWNlcz8odC5udW1FbGVtZW50cz1lLmluZGljZXMubGVuZ3RoLHQuZWxlbWVudFR5cGU9bi5nZXRHTFR5cGVGb3JUeXBlZEFycmF5KGwoZS5pbmRpY2VzKSwiaW5kaWNlcyIpKTp0Lm51bUVsZW1lbnRzPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZSx0PTA7dDx3Lmxlbmd0aCYmISgoZT13W3RdKWluIEEpOysrdCk7aWk9PT13Lmxlbmd0aCYmKGU9T2JqZWN0LmtleXMoQSlbMF0pO3ZhciBuPUFbZV0saT1jKG4pLmxlbmd0aCxyPXUobixlKSxvPWkvcjtpZihpJXI+MCl0aHJvdyJudW1Db21wb25lbnRzICIrcisiIG5vdCBjb3JyZWN0IGZvciBsZW5ndGggIitpO3JldHVybiBvfShlKSx0fSxlLmNyZWF0ZUJ1ZmZlckZyb21BcnJheT1DLGUuY3JlYXRlQnVmZmVyRnJvbVR5cGVkQXJyYXk9YSxlLmNyZWF0ZUJ1ZmZlckluZm9Gcm9tQXJyYXlzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9e2F0dHJpYnM6aChBLGUpfSxpPWUuaW5kaWNlcztpZihpKXt2YXIgcj1sKGksImluZGljZXMiKTt0LmluZGljZXM9YShBLHIsQS5FTEVNRU5UX0FSUkFZX0JVRkZFUiksdC5udW1FbGVtZW50cz1yLmxlbmd0aCx0LmVsZW1lbnRUeXBlPW4uZ2V0R0xUeXBlRm9yVHlwZWRBcnJheShyKX1lbHNlIHQubnVtRWxlbWVudHM9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuO2ZvcihuPTA7bjx3Lmxlbmd0aCYmISgodD13W25dKWluIGUpJiYhKCh0PW8uYXR0cmliUHJlZml4K3QpaW4gZSk7KytuKTtuPT09dy5sZW5ndGgmJih0PU9iamVjdC5rZXlzKGUpWzBdKTt2YXIgaT1lW3RdO0EuYmluZEJ1ZmZlcihBLkFSUkFZX0JVRkZFUixpLmJ1ZmZlcik7dmFyIHI9QS5nZXRCdWZmZXJQYXJhbWV0ZXIoQS5BUlJBWV9CVUZGRVIsQS5CVUZGRVJfU0laRSk7QS5iaW5kQnVmZmVyKEEuQVJSQVlfQlVGRkVSLG51bGwpO3ZhciBzPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGU9PT1BLkJZVEV8fGU9PT1BLlVOU0lHTkVEX0JZVEU/MTplPT09QS5TSE9SVHx8ZT09PUEuVU5TSUdORURfU0hPUlQ/MjplPT09QS5JTlR8fGU9PT1BLlVOU0lHTkVEX0lOVHx8ZT09PUEuRkxPQVQ/NDowfShBLGkudHlwZSksYT1yL3MsQj1pLm51bUNvbXBvbmVudHN8fGkuc2l6ZSxjPWEvQjtpZihjJTEhPTApdGhyb3cibnVtQ29tcG9uZW50cyAiK0IrIiBub3QgY29ycmVjdCBmb3IgbGVuZ3RoICIrbGVuZ3RoO3JldHVybiBjfShBLHQuYXR0cmlicyk7cmV0dXJuIHR9LGUuc2V0QXR0cmliSW5mb0J1ZmZlckZyb21BcnJheT1mdW5jdGlvbihBLGUsdCxuKXt0PWwodCksdm9pZCAwIT09bj8oQS5iaW5kQnVmZmVyKEEuQVJSQVlfQlVGRkVSLGUuYnVmZmVyKSxBLmJ1ZmZlclN1YkRhdGEoQS5BUlJBWV9CVUZGRVIsbix0KSk6cyhBLEEuQVJSQVlfQlVGRkVSLGUuYnVmZmVyLHQsZS5kcmF3VHlwZSl9LGUuc2V0QXR0cmlidXRlUHJlZml4PWZ1bmN0aW9uKEEpe28uYXR0cmliUHJlZml4PUF9LGUuc2V0QXR0cmlidXRlRGVmYXVsdHNfPWZ1bmN0aW9uKEEpe2kuY29weUV4aXN0aW5nUHJvcGVydGllcyhBLG8pfSxlLmdldE51bUNvbXBvbmVudHNfPXUsZS5nZXRBcnJheV89Yzt2YXIgbj1yKHQoMSkpLGk9cih0KDApKTtmdW5jdGlvbiByKEEpe2lmKEEmJkEuX19lc01vZHVsZSlyZXR1cm4gQTt2YXIgZT17fTtpZihudWxsIT1BKWZvcih2YXIgdCBpbiBBKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLHQpKXt2YXIgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLHQpOnt9O24uZ2V0fHxuLnNldD9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LG4pOmVbdF09QVt0XX1yZXR1cm4gZS5kZWZhdWx0PUEsZX12YXIgbz17YXR0cmliUHJlZml4OiIifTtmdW5jdGlvbiBzKEEsZSx0LG4saSl7QS5iaW5kQnVmZmVyKGUsdCksQS5idWZmZXJEYXRhKGUsbixpfHxBLlNUQVRJQ19EUkFXKX1mdW5jdGlvbiBhKEEsZSx0LG4pe2lmKGkuaXNCdWZmZXIoQSxlKSlyZXR1cm4gZTt0PXR8fEEuQVJSQVlfQlVGRkVSO3ZhciByPUEuY3JlYXRlQnVmZmVyKCk7cmV0dXJuIHMoQSx0LHIsZSxuKSxyfWZ1bmN0aW9uIEIoQSl7cmV0dXJuImluZGljZXMiPT09QX1mdW5jdGlvbiBjKEEpe3JldHVybiBBLmxlbmd0aD9BOkEuZGF0YX12YXIgZz0vY29vcmR8dGV4dHVyZS9pLEU9L2NvbG9yfGNvbG91ci9pO2Z1bmN0aW9uIFEoQSxlKXt2YXIgdDtpZihlJSh0PWcudGVzdChBKT8yOkUudGVzdChBKT80OjMpPjApdGhyb3ciQ2FuIG5vdCBndWVzcyBudW1Db21wb25lbnRzIGZvciBhdHRyaWJ1dGUgJyIrQSsiJy4gVHJpZWQgIit0KyIgYnV0ICIrZSsiIHZhbHVlcyBpcyBub3QgZXZlbmx5IGRpdmlzaWJsZSBieSAiK3QrIi4gWW91IHNob3VsZCBzcGVjaWZ5IGl0LiI7cmV0dXJuIHR9ZnVuY3Rpb24gdShBLGUpe3JldHVybiBBLm51bUNvbXBvbmVudHN8fEEuc2l6ZXx8UShlLGMoQSkubGVuZ3RoKX1mdW5jdGlvbiBsKEEsZSl7aWYobi5pc0FycmF5QnVmZmVyKEEpKXJldHVybiBBO2lmKG4uaXNBcnJheUJ1ZmZlcihBLmRhdGEpKXJldHVybiBBLmRhdGE7QXJyYXkuaXNBcnJheShBKSYmKEE9e2RhdGE6QX0pO3ZhciB0PUEudHlwZTtyZXR1cm4gdHx8KHQ9QihlKT9VaW50MTZBcnJheTpGbG9hdDMyQXJyYXkpLG5ldyB0KEEuZGF0YSl9ZnVuY3Rpb24gaChBLGUpe3ZhciB0PXt9O3JldHVybiBPYmplY3Qua2V5cyhlKS5mb3JFYWNoKChmdW5jdGlvbihpKXtpZighQihpKSl7dmFyIHIscyxjLGcsRSxoPWVbaV0sdz1oLmF0dHJpYnx8aC5uYW1lfHxoLmF0dHJpYk5hbWV8fG8uYXR0cmliUHJlZml4K2k7aWYoIm51bWJlciI9PXR5cGVvZiBofHwibnVtYmVyIj09dHlwZW9mIGguZGF0YSl7RT1oLmRhdGF8fGg7dmFyIEM9aC50eXBlfHxGbG9hdDMyQXJyYXksST1FKkMuQllURVNfUEVSX0VMRU1FTlQ7cz1uLmdldEdMVHlwZUZvclR5cGVkQXJyYXlUeXBlKEMpLGM9dm9pZCAwIT09aC5ub3JtYWxpemU/aC5ub3JtYWxpemU6KGQ9Qyk9PT1JbnQ4QXJyYXl8fGQ9PT1VaW50OEFycmF5LGc9aC5udW1Db21wb25lbnRzfHxoLnNpemV8fFEoaSxFKSxyPUEuY3JlYXRlQnVmZmVyKCksQS5iaW5kQnVmZmVyKEEuQVJSQVlfQlVGRkVSLHIpLEEuYnVmZmVyRGF0YShBLkFSUkFZX0JVRkZFUixJLGguZHJhd1R5cGV8fEEuU1RBVElDX0RSQVcpfWVsc2V7dmFyIE09bChoLGkpO3I9YShBLE0sdm9pZCAwLGguZHJhd1R5cGUpLHM9bi5nZXRHTFR5cGVGb3JUeXBlZEFycmF5KE0pLGM9dm9pZCAwIT09aC5ub3JtYWxpemU/aC5ub3JtYWxpemU6ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBJbnQ4QXJyYXl8fEEgaW5zdGFuY2VvZiBVaW50OEFycmF5fShNKSxnPXUoaCxpKSxFPU0ubGVuZ3RofXRbd109e2J1ZmZlcjpyLG51bUNvbXBvbmVudHM6Zyx0eXBlOnMsbm9ybWFsaXplOmMsc3RyaWRlOmguc3RyaWRlfHwwLG9mZnNldDpoLm9mZnNldHx8MCxkaXZpc29yOnZvaWQgMD09PWguZGl2aXNvcj92b2lkIDA6aC5kaXZpc29yLGRyYXdUeXBlOmguZHJhd1R5cGV9fXZhciBkfSkpLEEuYmluZEJ1ZmZlcihBLkFSUkFZX0JVRkZFUixudWxsKSx0fXZhciB3PVsicG9zaXRpb24iLCJwb3NpdGlvbnMiLCJhX3Bvc2l0aW9uIl07ZnVuY3Rpb24gQyhBLGUsdCl7dmFyIG49ImluZGljZXMiPT09dD9BLkVMRU1FTlRfQVJSQVlfQlVGRkVSOkEuQVJSQVlfQlVGRkVSO3JldHVybiBhKEEsbChlLHQpLG4pfX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5zZXRUZXh0dXJlRGVmYXVsdHNfPWZ1bmN0aW9uKEEpe28uY29weUV4aXN0aW5nUHJvcGVydGllcyhBLEIpLEEudGV4dHVyZUNvbG9yJiZtKEEudGV4dHVyZUNvbG9yKX0sZS5jcmVhdGVTYW1wbGVyPXgsZS5jcmVhdGVTYW1wbGVycz1mdW5jdGlvbihBLGUpe3ZhciB0PXt9O3JldHVybiBPYmplY3Qua2V5cyhlKS5mb3JFYWNoKChmdW5jdGlvbihuKXt0W25dPXgoQSxlW25dKX0pKSx0fSxlLnNldFNhbXBsZXJQYXJhbWV0ZXJzPVQsZS5jcmVhdGVUZXh0dXJlPVcsZS5zZXRFbXB0eVRleHR1cmU9VixlLnNldFRleHR1cmVGcm9tQXJyYXk9TyxlLmxvYWRUZXh0dXJlRnJvbVVybD16LGUuc2V0VGV4dHVyZUZyb21FbGVtZW50PUgsZS5zZXRUZXh0dXJlRmlsdGVyaW5nRm9yU2l6ZT1SLGUuc2V0VGV4dHVyZVBhcmFtZXRlcnM9eSxlLnNldERlZmF1bHRUZXh0dXJlQ29sb3I9bSxlLmNyZWF0ZVRleHR1cmVzPWZ1bmN0aW9uKEEsZSx0KXt0PXR8fHY7dmFyIG49MCxpPVtdLHI9e30sbz17fTtmdW5jdGlvbiBzKCl7MD09PW4mJnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dChpLmxlbmd0aD9pOnZvaWQgMCxyLG8pfSksMCl9cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2goKGZ1bmN0aW9uKHQpe3ZhciBhLEIsYz1lW3RdOygic3RyaW5nIj09dHlwZW9mKEI9Yy5zcmMpfHxBcnJheS5pc0FycmF5KEIpJiYic3RyaW5nIj09dHlwZW9mIEJbMF0pJiYoYT1mdW5jdGlvbihBLGUscil7b1t0XT1yLC0tbixBJiZpLnB1c2goQSkscygpfSwrK24pLHJbdF09VyhBLGMsYSl9KSkscygpLHJ9LGUucmVzaXplVGV4dHVyZT1mdW5jdGlvbihBLGUsdCxuLGkpe249bnx8dC53aWR0aCxpPWl8fHQuaGVpZ2h0O3ZhciByPXQudGFyZ2V0fHxBLlRFWFRVUkVfMkQ7QS5iaW5kVGV4dHVyZShyLGUpO3ZhciBvLHM9dC5sZXZlbHx8MCxhPXQuaW50ZXJuYWxGb3JtYXR8fHQuZm9ybWF0fHxBLlJHQkEsQj1JKGEpLGc9dC5mb3JtYXR8fEIuZm9ybWF0LEU9dC5zcmM7aWYobz1FJiYoYyhFKXx8QXJyYXkuaXNBcnJheShFKSYmIm51bWJlciI9PXR5cGVvZiBFWzBdKT90LnR5cGV8fGQoQSxFLEIudHlwZSk6dC50eXBlfHxCLnR5cGUscj09PUEuVEVYVFVSRV9DVUJFX01BUClmb3IodmFyIFE9MDtRPDY7KytRKUEudGV4SW1hZ2UyRChBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCtRLHMsYSxuLGksMCxnLG8sbnVsbCk7ZWxzZSBBLnRleEltYWdlMkQocixzLGEsbixpLDAsZyxvLG51bGwpfSxlLmdldE51bUNvbXBvbmVudHNGb3JGb3JtYXQ9ZnVuY3Rpb24oQSl7dmFyIGU9dVtBXTtpZighZSl0aHJvdyJ1bmtub3duIGZvcm1hdDogIitBO3JldHVybiBlLm51bUNvbG9yQ29tcG9uZW50c30sZS5nZXRCeXRlc1BlckVsZW1lbnRGb3JJbnRlcm5hbEZvcm1hdD1DO3ZhciBuLGk9YSh0KDQpKSxyPWEodCgxKSksbz1hKHQoMCkpLHM9KG49dCgyKSkmJm4uX19lc01vZHVsZT9uOntkZWZhdWx0Om59O2Z1bmN0aW9uIGEoQSl7aWYoQSYmQS5fX2VzTW9kdWxlKXJldHVybiBBO3ZhciBlPXt9O2lmKG51bGwhPUEpZm9yKHZhciB0IGluIEEpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEEsdCkpe3ZhciBuPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSYmT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcj9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsdCk6e307bi5nZXR8fG4uc2V0P09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsbik6ZVt0XT1BW3RdfXJldHVybiBlLmRlZmF1bHQ9QSxlfXZhciBCPXt0ZXh0dXJlQ29sb3I6bmV3IFVpbnQ4QXJyYXkoWzEyOCwxOTIsMjU1LDI1NV0pLHRleHR1cmVPcHRpb25zOnt9LGNyb3NzT3JpZ2luOnZvaWQgMH0sYz1yLmlzQXJyYXlCdWZmZXIsZz1zLmRlZmF1bHQuZG9jdW1lbnQmJnMuZGVmYXVsdC5kb2N1bWVudC5jcmVhdGVFbGVtZW50P3MuZGVmYXVsdC5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKS5nZXRDb250ZXh0KCIyZCIpOm51bGwsRT02NDA3LFE9MzMzMTksdT17fSxsPXU7bFs2NDA2XT17bnVtQ29sb3JDb21wb25lbnRzOjF9LGxbNjQwOV09e251bUNvbG9yQ29tcG9uZW50czoxfSxsWzY0MTBdPXtudW1Db2xvckNvbXBvbmVudHM6Mn0sbFtFXT17bnVtQ29sb3JDb21wb25lbnRzOjN9LGxbNjQwOF09e251bUNvbG9yQ29tcG9uZW50czo0fSxsWzY0MDNdPXtudW1Db2xvckNvbXBvbmVudHM6MX0sbFszNjI0NF09e251bUNvbG9yQ29tcG9uZW50czoxfSxsW1FdPXtudW1Db2xvckNvbXBvbmVudHM6Mn0sbFszMzMyMF09e251bUNvbG9yQ29tcG9uZW50czoyfSxsW0VdPXtudW1Db2xvckNvbXBvbmVudHM6M30sbFszNjI0OF09e251bUNvbG9yQ29tcG9uZW50czozfSxsWzY0MDhdPXtudW1Db2xvckNvbXBvbmVudHM6NH0sbFszNjI0OV09e251bUNvbG9yQ29tcG9uZW50czo0fSxsWzY0MDJdPXtudW1Db2xvckNvbXBvbmVudHM6MX0sbFszNDA0MV09e251bUNvbG9yQ29tcG9uZW50czoyfTt2YXIgaD17fSx3PWg7ZnVuY3Rpb24gQyhBLGUpe3ZhciB0PWhbQV07aWYoIXQpdGhyb3cidW5rbm93biBpbnRlcm5hbCBmb3JtYXQiO3ZhciBuPXQuYnl0ZXNQZXJFbGVtZW50TWFwW2VdO2lmKHZvaWQgMD09PW4pdGhyb3cidW5rbm93biBpbnRlcm5hbCBmb3JtYXQiO3JldHVybiBufWZ1bmN0aW9uIEkoQSl7dmFyIGU9aFtBXTtpZighZSl0aHJvdyJ1bmtub3duIGludGVybmFsIGZvcm1hdCI7cmV0dXJue2Zvcm1hdDplLnRleHR1cmVGb3JtYXQsdHlwZTpBcnJheS5pc0FycmF5KGUudHlwZSk/ZS50eXBlWzBdOmUudHlwZX19ZnVuY3Rpb24gTShBKXtyZXR1cm4gMD09KEEmQS0xKX1mdW5jdGlvbiBkKEEsZSx0KXtyZXR1cm4gYyhlKT9yLmdldEdMVHlwZUZvclR5cGVkQXJyYXkoZSk6dHx8QS5VTlNJR05FRF9CWVRFfWZ1bmN0aW9uIHAoQSxlLHQsbixpKXtpZihpJTEhPTApdGhyb3ciY2FuJ3QgZ3Vlc3MgZGltZW5zaW9ucyI7aWYodHx8bil7aWYobil7aWYoIXQmJih0PWkvbiklMSl0aHJvdyJjYW4ndCBndWVzcyBkaW1lbnNpb25zIn1lbHNlIGlmKChuPWkvdCklMSl0aHJvdyJjYW4ndCBndWVzcyBkaW1lbnNpb25zIn1lbHNle3ZhciByPU1hdGguc3FydChpLyhlPT09QS5URVhUVVJFX0NVQkVfTUFQPzY6MSkpO3IlMT09MD8odD1yLG49cik6KHQ9aSxuPTEpfXJldHVybnt3aWR0aDp0LGhlaWdodDpufX1mdW5jdGlvbiBtKEEpe0IudGV4dHVyZUNvbG9yPW5ldyBVaW50OEFycmF5KFsyNTUqQVswXSwyNTUqQVsxXSwyNTUqQVsyXSwyNTUqQVszXV0pfXdbNjQwNl09e3RleHR1cmVGb3JtYXQ6NjQwNixjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OlsxLDIsMiw0XSx0eXBlOls1MTIxLDUxMzEsMzYxOTMsNTEyNl19LHdbNjQwOV09e3RleHR1cmVGb3JtYXQ6NjQwOSxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OlsxLDIsMiw0XSx0eXBlOls1MTIxLDUxMzEsMzYxOTMsNTEyNl19LHdbNjQxMF09e3RleHR1cmVGb3JtYXQ6NjQxMCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OlsyLDQsNCw4XSx0eXBlOls1MTIxLDUxMzEsMzYxOTMsNTEyNl19LHdbRV09e3RleHR1cmVGb3JtYXQ6RSxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OlszLDYsNiwxMiwyXSx0eXBlOls1MTIxLDUxMzEsMzYxOTMsNTEyNiwzMzYzNV19LHdbNjQwOF09e3RleHR1cmVGb3JtYXQ6NjQwOCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50Ols0LDgsOCwxNiwyLDJdLHR5cGU6WzUxMjEsNTEzMSwzNjE5Myw1MTI2LDMyODE5LDMyODIwXX0sd1szMzMyMV09e3RleHR1cmVGb3JtYXQ6NjQwMyxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OjEsdHlwZTo1MTIxfSx3WzM2NzU2XT17dGV4dHVyZUZvcm1hdDo2NDAzLGNvbG9yUmVuZGVyYWJsZTohMSx0ZXh0dXJlRmlsdGVyYWJsZTohMCxieXRlc1BlckVsZW1lbnQ6MSx0eXBlOjUxMjB9LHdbMzMzMjVdPXt0ZXh0dXJlRm9ybWF0OjY0MDMsY29sb3JSZW5kZXJhYmxlOiExLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDpbNCwyXSx0eXBlOls1MTI2LDUxMzFdfSx3WzMzMzI2XT17dGV4dHVyZUZvcm1hdDo2NDAzLGNvbG9yUmVuZGVyYWJsZTohMSx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6NCx0eXBlOjUxMjZ9LHdbMzMzMzBdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ0LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6MSx0eXBlOjUxMjF9LHdbMzMzMjldPXt0ZXh0dXJlRm9ybWF0OjM2MjQ0LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6MSx0eXBlOjUxMjB9LHdbMzMzMzJdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ0LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6Mix0eXBlOjUxMjN9LHdbMzMzMzFdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ0LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6Mix0eXBlOjUxMjJ9LHdbMzMzMzRdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ0LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6NCx0eXBlOjUxMjV9LHdbMzMzMzNdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ0LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6NCx0eXBlOjUxMjR9LHdbMzMzMjNdPXt0ZXh0dXJlRm9ybWF0OlEsY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDoyLHR5cGU6NTEyMX0sd1szNjc1N109e3RleHR1cmVGb3JtYXQ6USxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OjIsdHlwZTo1MTIwfSx3WzMzMzI3XT17dGV4dHVyZUZvcm1hdDpRLGNvbG9yUmVuZGVyYWJsZTohMSx0ZXh0dXJlRmlsdGVyYWJsZTohMCxieXRlc1BlckVsZW1lbnQ6WzgsNF0sdHlwZTpbNTEyNiw1MTMxXX0sd1szMzMyOF09e3RleHR1cmVGb3JtYXQ6USxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjgsdHlwZTo1MTI2fSx3WzMzMzM2XT17dGV4dHVyZUZvcm1hdDozMzMyMCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjIsdHlwZTo1MTIxfSx3WzMzMzM1XT17dGV4dHVyZUZvcm1hdDozMzMyMCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjIsdHlwZTo1MTIwfSx3WzMzMzM4XT17dGV4dHVyZUZvcm1hdDozMzMyMCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjQsdHlwZTo1MTIzfSx3WzMzMzM3XT17dGV4dHVyZUZvcm1hdDozMzMyMCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjQsdHlwZTo1MTIyfSx3WzMzMzQwXT17dGV4dHVyZUZvcm1hdDozMzMyMCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjgsdHlwZTo1MTI1fSx3WzMzMzM5XT17dGV4dHVyZUZvcm1hdDozMzMyMCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjgsdHlwZTo1MTI0fSx3WzMyODQ5XT17dGV4dHVyZUZvcm1hdDpFLGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMCxieXRlc1BlckVsZW1lbnQ6Myx0eXBlOjUxMjF9LHdbMzU5MDVdPXt0ZXh0dXJlRm9ybWF0OkUsY29sb3JSZW5kZXJhYmxlOiExLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDozLHR5cGU6NTEyMX0sd1szNjE5NF09e3RleHR1cmVGb3JtYXQ6RSxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OlszLDJdLHR5cGU6WzUxMjEsMzM2MzVdfSx3WzM2NzU4XT17dGV4dHVyZUZvcm1hdDpFLGNvbG9yUmVuZGVyYWJsZTohMSx0ZXh0dXJlRmlsdGVyYWJsZTohMCxieXRlc1BlckVsZW1lbnQ6Myx0eXBlOjUxMjB9LHdbMzU4OThdPXt0ZXh0dXJlRm9ybWF0OkUsY29sb3JSZW5kZXJhYmxlOiExLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDpbMTIsNiw0XSx0eXBlOls1MTI2LDUxMzEsMzU4OTldfSx3WzM1OTAxXT17dGV4dHVyZUZvcm1hdDpFLGNvbG9yUmVuZGVyYWJsZTohMSx0ZXh0dXJlRmlsdGVyYWJsZTohMCxieXRlc1BlckVsZW1lbnQ6WzEyLDYsNF0sdHlwZTpbNTEyNiw1MTMxLDM1OTAyXX0sd1szNDg0M109e3RleHR1cmVGb3JtYXQ6RSxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OlsxMiw2XSx0eXBlOls1MTI2LDUxMzFdfSx3WzM0ODM3XT17dGV4dHVyZUZvcm1hdDpFLGNvbG9yUmVuZGVyYWJsZTohMSx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6MTIsdHlwZTo1MTI2fSx3WzM2MjIxXT17dGV4dHVyZUZvcm1hdDozNjI0OCxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjMsdHlwZTo1MTIxfSx3WzM2MjM5XT17dGV4dHVyZUZvcm1hdDozNjI0OCxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjMsdHlwZTo1MTIwfSx3WzM2MjE1XT17dGV4dHVyZUZvcm1hdDozNjI0OCxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjYsdHlwZTo1MTIzfSx3WzM2MjMzXT17dGV4dHVyZUZvcm1hdDozNjI0OCxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjYsdHlwZTo1MTIyfSx3WzM2MjA5XT17dGV4dHVyZUZvcm1hdDozNjI0OCxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjEyLHR5cGU6NTEyNX0sd1szNjIyN109e3RleHR1cmVGb3JtYXQ6MzYyNDgsY29sb3JSZW5kZXJhYmxlOiExLHRleHR1cmVGaWx0ZXJhYmxlOiExLGJ5dGVzUGVyRWxlbWVudDoxMix0eXBlOjUxMjR9LHdbMzI4NTZdPXt0ZXh0dXJlRm9ybWF0OjY0MDgsY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDo0LHR5cGU6NTEyMX0sd1szNTkwN109e3RleHR1cmVGb3JtYXQ6NjQwOCxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITAsYnl0ZXNQZXJFbGVtZW50OjQsdHlwZTo1MTIxfSx3WzM2NzU5XT17dGV4dHVyZUZvcm1hdDo2NDA4LGNvbG9yUmVuZGVyYWJsZTohMSx0ZXh0dXJlRmlsdGVyYWJsZTohMCxieXRlc1BlckVsZW1lbnQ6NCx0eXBlOjUxMjB9LHdbMzI4NTVdPXt0ZXh0dXJlRm9ybWF0OjY0MDgsY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDpbNCwyLDRdLHR5cGU6WzUxMjEsMzI4MjAsMzM2NDBdfSx3WzMyODU0XT17dGV4dHVyZUZvcm1hdDo2NDA4LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMCxieXRlc1BlckVsZW1lbnQ6WzQsMl0sdHlwZTpbNTEyMSwzMjgxOV19LHdbMzI4NTddPXt0ZXh0dXJlRm9ybWF0OjY0MDgsY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDo0LHR5cGU6MzM2NDB9LHdbMzQ4NDJdPXt0ZXh0dXJlRm9ybWF0OjY0MDgsY29sb3JSZW5kZXJhYmxlOiExLHRleHR1cmVGaWx0ZXJhYmxlOiEwLGJ5dGVzUGVyRWxlbWVudDpbMTYsOF0sdHlwZTpbNTEyNiw1MTMxXX0sd1szNDgzNl09e3RleHR1cmVGb3JtYXQ6NjQwOCxjb2xvclJlbmRlcmFibGU6ITEsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjE2LHR5cGU6NTEyNn0sd1szNjIyMF09e3RleHR1cmVGb3JtYXQ6MzYyNDksY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiExLGJ5dGVzUGVyRWxlbWVudDo0LHR5cGU6NTEyMX0sd1szNjIzOF09e3RleHR1cmVGb3JtYXQ6MzYyNDksY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiExLGJ5dGVzUGVyRWxlbWVudDo0LHR5cGU6NTEyMH0sd1szNjk3NV09e3RleHR1cmVGb3JtYXQ6MzYyNDksY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiExLGJ5dGVzUGVyRWxlbWVudDo0LHR5cGU6MzM2NDB9LHdbMzYyMTRdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ5LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6OCx0eXBlOjUxMjN9LHdbMzYyMzJdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ5LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6OCx0eXBlOjUxMjJ9LHdbMzYyMjZdPXt0ZXh0dXJlRm9ybWF0OjM2MjQ5LGNvbG9yUmVuZGVyYWJsZTohMCx0ZXh0dXJlRmlsdGVyYWJsZTohMSxieXRlc1BlckVsZW1lbnQ6MTYsdHlwZTo1MTI0fSx3WzM2MjA4XT17dGV4dHVyZUZvcm1hdDozNjI0OSxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjE2LHR5cGU6NTEyNX0sd1szMzE4OV09e3RleHR1cmVGb3JtYXQ6NjQwMixjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OlsyLDRdLHR5cGU6WzUxMjMsNTEyNV19LHdbMzMxOTBdPXt0ZXh0dXJlRm9ybWF0OjY0MDIsY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiExLGJ5dGVzUGVyRWxlbWVudDo0LHR5cGU6NTEyNX0sd1szNjAxMl09e3RleHR1cmVGb3JtYXQ6NjQwMixjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjQsdHlwZTo1MTI2fSx3WzM1MDU2XT17dGV4dHVyZUZvcm1hdDozNDA0MSxjb2xvclJlbmRlcmFibGU6ITAsdGV4dHVyZUZpbHRlcmFibGU6ITEsYnl0ZXNQZXJFbGVtZW50OjQsdHlwZTozNDA0Mn0sd1szNjAxM109e3RleHR1cmVGb3JtYXQ6MzQwNDEsY29sb3JSZW5kZXJhYmxlOiEwLHRleHR1cmVGaWx0ZXJhYmxlOiExLGJ5dGVzUGVyRWxlbWVudDo0LHR5cGU6MzYyNjl9LE9iamVjdC5rZXlzKHcpLmZvckVhY2goKGZ1bmN0aW9uKEEpe3ZhciBlPXdbQV07aWYoZS5ieXRlc1BlckVsZW1lbnRNYXA9e30sQXJyYXkuaXNBcnJheShlLmJ5dGVzUGVyRWxlbWVudCkpZS5ieXRlc1BlckVsZW1lbnQuZm9yRWFjaCgoZnVuY3Rpb24oQSx0KXt2YXIgbj1lLnR5cGVbdF07ZS5ieXRlc1BlckVsZW1lbnRNYXBbbl09QX0pKTtlbHNle3ZhciB0PWUudHlwZTtlLmJ5dGVzUGVyRWxlbWVudE1hcFt0XT1lLmJ5dGVzUGVyRWxlbWVudH19KSk7dmFyIEY9e307ZnVuY3Rpb24gRChBLGUpe3ZvaWQgMCE9PWUuY29sb3JzcGFjZUNvbnZlcnNpb24mJihGLmNvbG9yc3BhY2VDb252ZXJzaW9uPUEuZ2V0UGFyYW1ldGVyKEEuVU5QQUNLX0NPTE9SU1BBQ0VfQ09OVkVSU0lPTl9XRUJHTCksQS5waXhlbFN0b3JlaShBLlVOUEFDS19DT0xPUlNQQUNFX0NPTlZFUlNJT05fV0VCR0wsZS5jb2xvcnNwYWNlQ29udmVyc2lvbikpLHZvaWQgMCE9PWUucHJlbXVsdGlwbHlBbHBoYSYmKEYucHJlbXVsdGlwbHlBbHBoYT1BLmdldFBhcmFtZXRlcihBLlVOUEFDS19QUkVNVUxUSVBMWV9BTFBIQV9XRUJHTCksQS5waXhlbFN0b3JlaShBLlVOUEFDS19QUkVNVUxUSVBMWV9BTFBIQV9XRUJHTCxlLnByZW11bHRpcGx5QWxwaGEpKSx2b2lkIDAhPT1lLmZsaXBZJiYoRi5mbGlwWT1BLmdldFBhcmFtZXRlcihBLlVOUEFDS19GTElQX1lfV0VCR0wpLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfRkxJUF9ZX1dFQkdMLGUuZmxpcFkpKX1mdW5jdGlvbiBZKEEsZSl7dm9pZCAwIT09ZS5jb2xvcnNwYWNlQ29udmVyc2lvbiYmQS5waXhlbFN0b3JlaShBLlVOUEFDS19DT0xPUlNQQUNFX0NPTlZFUlNJT05fV0VCR0wsRi5jb2xvcnNwYWNlQ29udmVyc2lvbiksdm9pZCAwIT09ZS5wcmVtdWx0aXBseUFscGhhJiZBLnBpeGVsU3RvcmVpKEEuVU5QQUNLX1BSRU1VTFRJUExZX0FMUEhBX1dFQkdMLEYucHJlbXVsdGlwbHlBbHBoYSksdm9pZCAwIT09ZS5mbGlwWSYmQS5waXhlbFN0b3JlaShBLlVOUEFDS19GTElQX1lfV0VCR0wsRi5mbGlwWSl9ZnVuY3Rpb24gZihBKXtGLnVucGFja0FsaWdubWVudD1BLmdldFBhcmFtZXRlcihBLlVOUEFDS19BTElHTk1FTlQpLGkuaXNXZWJHTDIoQSkmJihGLnVucGFja1Jvd0xlbmd0aD1BLmdldFBhcmFtZXRlcihBLlVOUEFDS19ST1dfTEVOR1RIKSxGLnVucGFja0ltYWdlSGVpZ2h0PUEuZ2V0UGFyYW1ldGVyKEEuVU5QQUNLX0lNQUdFX0hFSUdIVCksRi51bnBhY2tTa2lwUGl4ZWxzPUEuZ2V0UGFyYW1ldGVyKEEuVU5QQUNLX1NLSVBfUElYRUxTKSxGLnVucGFja1NraXBSb3dzPUEuZ2V0UGFyYW1ldGVyKEEuVU5QQUNLX1NLSVBfUk9XUyksRi51bnBhY2tTa2lwSW1hZ2VzPUEuZ2V0UGFyYW1ldGVyKEEuVU5QQUNLX1NLSVBfSU1BR0VTKSl9ZnVuY3Rpb24gTihBKXtBLnBpeGVsU3RvcmVpKEEuVU5QQUNLX0FMSUdOTUVOVCxGLnVucGFja0FsaWdubWVudCksaS5pc1dlYkdMMihBKSYmKEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfUk9XX0xFTkdUSCxGLnVucGFja1Jvd0xlbmd0aCksQS5waXhlbFN0b3JlaShBLlVOUEFDS19JTUFHRV9IRUlHSFQsRi51bnBhY2tJbWFnZUhlaWdodCksQS5waXhlbFN0b3JlaShBLlVOUEFDS19TS0lQX1BJWEVMUyxGLnVucGFja1NraXBQaXhlbHMpLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfU0tJUF9ST1dTLEYudW5wYWNrU2tpcFJvd3MpLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfU0tJUF9JTUFHRVMsRi51bnBhY2tTa2lwSW1hZ2VzKSl9ZnVuY3Rpb24gVShBLGUsdCxuKXtuLm1pbk1hZyYmKHQuY2FsbChBLGUsQS5URVhUVVJFX01JTl9GSUxURVIsbi5taW5NYWcpLHQuY2FsbChBLGUsQS5URVhUVVJFX01BR19GSUxURVIsbi5taW5NYWcpKSxuLm1pbiYmdC5jYWxsKEEsZSxBLlRFWFRVUkVfTUlOX0ZJTFRFUixuLm1pbiksbi5tYWcmJnQuY2FsbChBLGUsQS5URVhUVVJFX01BR19GSUxURVIsbi5tYWcpLG4ud3JhcCYmKHQuY2FsbChBLGUsQS5URVhUVVJFX1dSQVBfUyxuLndyYXApLHQuY2FsbChBLGUsQS5URVhUVVJFX1dSQVBfVCxuLndyYXApLChlPT09QS5URVhUVVJFXzNEfHxvLmlzU2FtcGxlcihBLGUpKSYmdC5jYWxsKEEsZSxBLlRFWFRVUkVfV1JBUF9SLG4ud3JhcCkpLG4ud3JhcFImJnQuY2FsbChBLGUsQS5URVhUVVJFX1dSQVBfUixuLndyYXBSKSxuLndyYXBTJiZ0LmNhbGwoQSxlLEEuVEVYVFVSRV9XUkFQX1Msbi53cmFwUyksbi53cmFwVCYmdC5jYWxsKEEsZSxBLlRFWFRVUkVfV1JBUF9ULG4ud3JhcFQpLG4ubWluTG9kJiZ0LmNhbGwoQSxlLEEuVEVYVFVSRV9NSU5fTE9ELG4ubWluTG9kKSxuLm1heExvZCYmdC5jYWxsKEEsZSxBLlRFWFRVUkVfTUFYX0xPRCxuLm1heExvZCksbi5iYXNlTGV2ZWwmJnQuY2FsbChBLGUsQS5URVhUVVJFX0JBU0VfTEVWRUwsbi5iYXNlTGV2ZWwpLG4ubWF4TGV2ZWwmJnQuY2FsbChBLGUsQS5URVhUVVJFX01BWF9MRVZFTCxuLm1heExldmVsKX1mdW5jdGlvbiB5KEEsZSx0KXt2YXIgbj10LnRhcmdldHx8QS5URVhUVVJFXzJEO0EuYmluZFRleHR1cmUobixlKSxVKEEsbixBLnRleFBhcmFtZXRlcmksdCl9ZnVuY3Rpb24gVChBLGUsdCl7VShBLGUsQS5zYW1wbGVyUGFyYW1ldGVyaSx0KX1mdW5jdGlvbiB4KEEsZSl7dmFyIHQ9QS5jcmVhdGVTYW1wbGVyKCk7cmV0dXJuIFQoQSx0LGUpLHR9ZnVuY3Rpb24gUihBLGUsdCxuLHIsbyxzKXt0PXR8fEIudGV4dHVyZU9wdGlvbnMsbz1vfHxBLlJHQkEscz1zfHxBLlVOU0lHTkVEX0JZVEU7dmFyIGE9dC50YXJnZXR8fEEuVEVYVFVSRV8yRDtpZihuPW58fHQud2lkdGgscj1yfHx0LmhlaWdodCxBLmJpbmRUZXh0dXJlKGEsZSksZnVuY3Rpb24oQSxlLHQsbil7aWYoIWkuaXNXZWJHTDIoQSkpcmV0dXJuIE0oZSkmJk0odCk7dmFyIHI9aFtuXTtpZighcil0aHJvdyJ1bmtub3duIGludGVybmFsIGZvcm1hdCI7cmV0dXJuIHIuY29sb3JSZW5kZXJhYmxlJiZyLnRleHR1cmVGaWx0ZXJhYmxlfShBLG4scixvKSlBLmdlbmVyYXRlTWlwbWFwKGEpO2Vsc2V7dmFyIGM9ZnVuY3Rpb24oQSl7dmFyIGU9aFtBXTtpZighZSl0aHJvdyJ1bmtub3duIGludGVybmFsIGZvcm1hdCI7cmV0dXJuIGUudGV4dHVyZUZpbHRlcmFibGV9KG8pP0EuTElORUFSOkEuTkVBUkVTVDtBLnRleFBhcmFtZXRlcmkoYSxBLlRFWFRVUkVfTUlOX0ZJTFRFUixjKSxBLnRleFBhcmFtZXRlcmkoYSxBLlRFWFRVUkVfTUFHX0ZJTFRFUixjKSxBLnRleFBhcmFtZXRlcmkoYSxBLlRFWFRVUkVfV1JBUF9TLEEuQ0xBTVBfVE9fRURHRSksQS50ZXhQYXJhbWV0ZXJpKGEsQS5URVhUVVJFX1dSQVBfVCxBLkNMQU1QX1RPX0VER0UpfX1mdW5jdGlvbiBHKEEpe3JldHVybiEwPT09QS5hdXRvfHx2b2lkIDA9PT1BLmF1dG8mJnZvaWQgMD09PUEubGV2ZWx9ZnVuY3Rpb24gUyhBLGUpe3JldHVybihlPWV8fHt9KS5jdWJlRmFjZU9yZGVyfHxbQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1gsQS5URVhUVVJFX0NVQkVfTUFQX05FR0FUSVZFX1gsQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1ksQS5URVhUVVJFX0NVQkVfTUFQX05FR0FUSVZFX1ksQS5URVhUVVJFX0NVQkVfTUFQX1BPU0lUSVZFX1osQS5URVhUVVJFX0NVQkVfTUFQX05FR0FUSVZFX1pdfWZ1bmN0aW9uIGIoQSxlKXt2YXIgdD1TKEEsZSkubWFwKChmdW5jdGlvbihBLGUpe3JldHVybntmYWNlOkEsbmR4OmV9fSkpO3JldHVybiB0LnNvcnQoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuZmFjZS1lLmZhY2V9KSksdH1mdW5jdGlvbiBIKEEsZSx0LG4pe3ZhciBpPShuPW58fEIudGV4dHVyZU9wdGlvbnMpLnRhcmdldHx8QS5URVhUVVJFXzJELHI9bi5sZXZlbHx8MCxvPXQud2lkdGgsYT10LmhlaWdodCxjPW4uaW50ZXJuYWxGb3JtYXR8fG4uZm9ybWF0fHxBLlJHQkEsRT1JKGMpLFE9bi5mb3JtYXR8fEUuZm9ybWF0LHU9bi50eXBlfHxFLnR5cGU7aWYoRChBLG4pLEEuYmluZFRleHR1cmUoaSxlKSxpPT09QS5URVhUVVJFX0NVQkVfTUFQKXt2YXIgbCxoLHc9dC53aWR0aCxDPXQuaGVpZ2h0O2lmKHcvNj09PUMpbD1DLGg9WzAsMCwxLDAsMiwwLDMsMCw0LDAsNSwwXTtlbHNlIGlmKEMvNj09PXcpbD13LGg9WzAsMCwwLDEsMCwyLDAsMywwLDQsMCw1XTtlbHNlIGlmKHcvMz09Qy8yKWw9dy8zLGg9WzAsMCwxLDAsMiwwLDAsMSwxLDEsMiwxXTtlbHNle2lmKHcvMiE9Qy8zKXRocm93ImNhbid0IGZpZ3VyZSBvdXQgY3ViZSBtYXAgZnJvbSBlbGVtZW50OiAiKyh0LnNyYz90LnNyYzp0Lm5vZGVOYW1lKTtsPXcvMixoPVswLDAsMSwwLDAsMSwxLDEsMCwyLDEsMl19Zz8oZy5jYW52YXMud2lkdGg9bCxnLmNhbnZhcy5oZWlnaHQ9bCxvPWwsYT1sLGIoQSxuKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbj1oWzIqZS5uZHgrMF0qbCxpPWhbMiplLm5keCsxXSpsO2cuZHJhd0ltYWdlKHQsbixpLGwsbCwwLDAsbCxsKSxBLnRleEltYWdlMkQoZS5mYWNlLHIsYyxRLHUsZy5jYW52YXMpfSkpLGcuY2FudmFzLndpZHRoPTEsZy5jYW52YXMuaGVpZ2h0PTEpOnMuZGVmYXVsdC5jcmVhdGVJbWFnZUJpdG1hcCYmKG89bCxhPWwsYihBLG4pLmZvckVhY2goKGZ1bmN0aW9uKEIpe3ZhciBnPWhbMipCLm5keCswXSpsLEU9aFsyKkIubmR4KzFdKmw7QS50ZXhJbWFnZTJEKEIuZmFjZSxyLGMsbCxsLDAsUSx1LG51bGwpLHMuZGVmYXVsdC5jcmVhdGVJbWFnZUJpdG1hcCh0LGcsRSxsLGwse3ByZW11bHRpcGx5QWxwaGE6Im5vbmUiLGNvbG9yU3BhY2VDb252ZXJzaW9uOiJub25lIn0pLnRoZW4oKGZ1bmN0aW9uKHQpe0QoQSxuKSxBLmJpbmRUZXh0dXJlKGksZSksQS50ZXhJbWFnZTJEKEIuZmFjZSxyLGMsUSx1LHQpLFkoQSxuKSxHKG4pJiZSKEEsZSxuLG8sYSxjLHUpfSkpfSkpKX1lbHNlIGlmKGk9PT1BLlRFWFRVUkVfM0R8fGk9PT1BLlRFWFRVUkVfMkRfQVJSQVkpe3ZhciBNPU1hdGgubWluKHQud2lkdGgsdC5oZWlnaHQpLGQ9TWF0aC5tYXgodC53aWR0aCx0LmhlaWdodCkscD1kL007aWYocCUxIT0wKXRocm93ImNhbiBub3QgY29tcHV0ZSAzRCBkaW1lbnNpb25zIG9mIGVsZW1lbnQiO3ZhciBtPXQud2lkdGg9PT1kPzE6MCxGPXQuaGVpZ2h0PT09ZD8xOjA7ZihBKSxBLnBpeGVsU3RvcmVpKEEuVU5QQUNLX0FMSUdOTUVOVCwxKSxBLnBpeGVsU3RvcmVpKEEuVU5QQUNLX1JPV19MRU5HVEgsdC53aWR0aCksQS5waXhlbFN0b3JlaShBLlVOUEFDS19JTUFHRV9IRUlHSFQsMCksQS5waXhlbFN0b3JlaShBLlVOUEFDS19TS0lQX0lNQUdFUywwKSxBLnRleEltYWdlM0QoaSxyLGMsTSxNLE0sMCxRLHUsbnVsbCk7Zm9yKHZhciBVPTA7VTxwOysrVSl7dmFyIFQ9VSpNKm0seD1VKk0qRjtBLnBpeGVsU3RvcmVpKEEuVU5QQUNLX1NLSVBfUElYRUxTLFQpLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfU0tJUF9ST1dTLHgpLEEudGV4U3ViSW1hZ2UzRChpLHIsMCwwLFUsTSxNLDEsUSx1LHQpfU4oQSl9ZWxzZSBBLnRleEltYWdlMkQoaSxyLGMsUSx1LHQpO1koQSxuKSxHKG4pJiZSKEEsZSxuLG8sYSxjLHUpLHkoQSxlLG4pfWZ1bmN0aW9uIHYoKXt9ZnVuY3Rpb24gayhBKXtyZXR1cm4gcy5kZWZhdWx0LkltYWdlQml0bWFwJiZBIGluc3RhbmNlb2Ygcy5kZWZhdWx0LkltYWdlQml0bWFwfHxzLmRlZmF1bHQuSW1hZ2VEYXRhJiZBIGluc3RhbmNlb2Ygcy5kZWZhdWx0LkltYWdlRGF0YXx8cy5kZWZhdWx0LkhUTUxFbGVtZW50JiZBIGluc3RhbmNlb2Ygcy5kZWZhdWx0LkhUTUxFbGVtZW50fWZ1bmN0aW9uIGooQSxlLHQpe3JldHVybiBrKEEpPyhzZXRUaW1lb3V0KChmdW5jdGlvbigpe3QobnVsbCxBKX0pKSxBKTpmdW5jdGlvbihBLGUsdCl7dmFyIG47aWYodD10fHx2LHMuZGVmYXVsdC5JbWFnZSl7bj1uZXcgcy5kZWZhdWx0LkltYWdlLHZvaWQgMCE9PShlPXZvaWQgMCE9PWU/ZTpCLmNyb3NzT3JpZ2luKSYmKG4uY3Jvc3NPcmlnaW49ZSk7dmFyIGk9ZnVuY3Rpb24oKXtuLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVycm9yIixyKSxuLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLGEpLG49bnVsbH0scj1mdW5jdGlvbigpe3ZhciBlPSJjb3VsZG4ndCBsb2FkIGltYWdlOiAiK0E7by5lcnJvcihlKSx0KGUsbiksaSgpfSxhPWZ1bmN0aW9uKCl7dChudWxsLG4pLGkoKX07cmV0dXJuIG4uYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLHIpLG4uYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsYSksbi5zcmM9QSxufWlmKHMuZGVmYXVsdC5JbWFnZUJpdG1hcCl7dmFyIGMsZyxFPWZ1bmN0aW9uKCl7dChjLGcpfSxRPXt9O2UmJihRLm1vZGU9ImNvcnMiKSxmZXRjaChBLFEpLnRoZW4oKGZ1bmN0aW9uKEEpe2lmKCFBLm9rKXRocm93IEE7cmV0dXJuIEEuYmxvYigpfSkpLnRoZW4oKGZ1bmN0aW9uKEEpe3JldHVybiBzLmRlZmF1bHQuY3JlYXRlSW1hZ2VCaXRtYXAoQSx7cHJlbXVsdGlwbHlBbHBoYToibm9uZSIsY29sb3JTcGFjZUNvbnZlcnNpb246Im5vbmUifSl9KSkudGhlbigoZnVuY3Rpb24oQSl7Zz1BLHNldFRpbWVvdXQoRSl9KSkuY2F0Y2goKGZ1bmN0aW9uKEEpe2M9QSxzZXRUaW1lb3V0KEUpfSkpLG49bnVsbH1yZXR1cm4gbn0oQSxlLHQpfWZ1bmN0aW9uIEooQSxlLHQpe3ZhciBuPSh0PXR8fEIudGV4dHVyZU9wdGlvbnMpLnRhcmdldHx8QS5URVhUVVJFXzJEO2lmKEEuYmluZFRleHR1cmUobixlKSwhMSE9PXQuY29sb3Ipe3ZhciBpPWZ1bmN0aW9uKEEpe3JldHVybiBBPUF8fEIudGV4dHVyZUNvbG9yLGMoQSk/QTpuZXcgVWludDhBcnJheShbMjU1KkFbMF0sMjU1KkFbMV0sMjU1KkFbMl0sMjU1KkFbM11dKX0odC5jb2xvcik7aWYobj09PUEuVEVYVFVSRV9DVUJFX01BUClmb3IodmFyIHI9MDtyPDY7KytyKUEudGV4SW1hZ2UyRChBLlRFWFRVUkVfQ1VCRV9NQVBfUE9TSVRJVkVfWCtyLDAsQS5SR0JBLDEsMSwwLEEuUkdCQSxBLlVOU0lHTkVEX0JZVEUsaSk7ZWxzZSBuPT09QS5URVhUVVJFXzNEfHxuPT09QS5URVhUVVJFXzJEX0FSUkFZP0EudGV4SW1hZ2UzRChuLDAsQS5SR0JBLDEsMSwxLDAsQS5SR0JBLEEuVU5TSUdORURfQllURSxpKTpBLnRleEltYWdlMkQobiwwLEEuUkdCQSwxLDEsMCxBLlJHQkEsQS5VTlNJR05FRF9CWVRFLGkpfX1mdW5jdGlvbiB6KEEsZSx0LG4pe3JldHVybiBuPW58fHYsdD10fHxCLnRleHR1cmVPcHRpb25zLEooQSxlLHQpLGooKHQ9T2JqZWN0LmFzc2lnbih7fSx0KSkuc3JjLHQuY3Jvc3NPcmlnaW4sKGZ1bmN0aW9uKGkscil7aT9uKGksZSxyKTooSChBLGUscix0KSxuKG51bGwsZSxyKSl9KSl9ZnVuY3Rpb24gTChBLGUsdCxuKXtuPW58fHY7dmFyIGk9dC5zcmM7aWYoNiE9PWkubGVuZ3RoKXRocm93InRoZXJlIG11c3QgYmUgNiB1cmxzIGZvciBhIGN1YmVtYXAiO3ZhciByPXQubGV2ZWx8fDAsbz10LmludGVybmFsRm9ybWF0fHx0LmZvcm1hdHx8QS5SR0JBLHM9SShvKSxhPXQuZm9ybWF0fHxzLmZvcm1hdCxCPXQudHlwZXx8QS5VTlNJR05FRF9CWVRFLGM9dC50YXJnZXR8fEEuVEVYVFVSRV8yRDtpZihjIT09QS5URVhUVVJFX0NVQkVfTUFQKXRocm93InRhcmdldCBtdXN0IGJlIFRFWFRVUkVfQ1VCRV9NQVAiO0ooQSxlLHQpLHQ9T2JqZWN0LmFzc2lnbih7fSx0KTt2YXIgZyxFPTYsUT1bXSx1PVMoQSx0KTtnPWkubWFwKChmdW5jdGlvbihpLHMpe3JldHVybiBqKGksdC5jcm9zc09yaWdpbiwobD11W3NdLGZ1bmN0aW9uKGkscyl7LS1FLGk/US5wdXNoKGkpOnMud2lkdGghPT1zLmhlaWdodD9RLnB1c2goImN1YmVtYXAgZmFjZSBpbWcgaXMgbm90IGEgc3F1YXJlOiAiK3Muc3JjKTooRChBLHQpLEEuYmluZFRleHR1cmUoYyxlKSw1PT09RT9TKEEpLmZvckVhY2goKGZ1bmN0aW9uKGUpe0EudGV4SW1hZ2UyRChlLHIsbyxhLEIscyl9KSk6QS50ZXhJbWFnZTJEKGwscixvLGEsQixzKSxZKEEsdCksRyh0KSYmQS5nZW5lcmF0ZU1pcG1hcChjKSksMD09PUUmJm4oUS5sZW5ndGg/UTp2b2lkIDAsZSxnKX0pKTt2YXIgbH0pKX1mdW5jdGlvbiBQKEEsZSx0LG4pe249bnx8djt2YXIgaT10LnNyYyxyPXQuaW50ZXJuYWxGb3JtYXR8fHQuZm9ybWF0fHxBLlJHQkEsbz1JKHIpLHM9dC5mb3JtYXR8fG8uZm9ybWF0LGE9dC50eXBlfHxBLlVOU0lHTkVEX0JZVEUsQj10LnRhcmdldHx8QS5URVhUVVJFXzJEX0FSUkFZO2lmKEIhPT1BLlRFWFRVUkVfM0QmJkIhPT1BLlRFWFRVUkVfMkRfQVJSQVkpdGhyb3cidGFyZ2V0IG11c3QgYmUgVEVYVFVSRV8zRCBvciBURVhUVVJFXzJEX0FSUkFZIjtKKEEsZSx0KSx0PU9iamVjdC5hc3NpZ24oe30sdCk7dmFyIGMsRT1pLmxlbmd0aCxRPVtdLHU9dC5sZXZlbHx8MCxsPXQud2lkdGgsaD10LmhlaWdodCx3PWkubGVuZ3RoLEM9ITA7Yz1pLm1hcCgoZnVuY3Rpb24oaSxvKXtyZXR1cm4gaihpLHQuY3Jvc3NPcmlnaW4sKEk9byxmdW5jdGlvbihpLG8pe2lmKC0tRSxpKVEucHVzaChpKTtlbHNle2lmKEQoQSx0KSxBLmJpbmRUZXh0dXJlKEIsZSksQyl7Qz0hMSxsPXQud2lkdGh8fG8ud2lkdGgsaD10LmhlaWdodHx8by5oZWlnaHQsQS50ZXhJbWFnZTNEKEIsdSxyLGwsaCx3LDAscyxhLG51bGwpO2Zvcih2YXIgTT0wO008dzsrK00pQS50ZXhTdWJJbWFnZTNEKEIsdSwwLDAsTSxsLGgsMSxzLGEsbyl9ZWxzZXt2YXIgZD1vO28ud2lkdGg9PT1sJiZvLmhlaWdodD09PWh8fChkPWcuY2FudmFzLGcuY2FudmFzLndpZHRoPWwsZy5jYW52YXMuaGVpZ2h0PWgsZy5kcmF3SW1hZ2UobywwLDAsbCxoKSksQS50ZXhTdWJJbWFnZTNEKEIsdSwwLDAsSSxsLGgsMSxzLGEsZCksZD09PWcuY2FudmFzJiYoZy5jYW52YXMud2lkdGg9MCxnLmNhbnZhcy5oZWlnaHQ9MCl9WShBLHQpLEcodCkmJkEuZ2VuZXJhdGVNaXBtYXAoQil9MD09PUUmJm4oUS5sZW5ndGg/UTp2b2lkIDAsZSxjKX0pKTt2YXIgSX0pKX1mdW5jdGlvbiBPKEEsZSx0LG4pe3ZhciBvPShuPW58fEIudGV4dHVyZU9wdGlvbnMpLnRhcmdldHx8QS5URVhUVVJFXzJEO0EuYmluZFRleHR1cmUobyxlKTt2YXIgcz1uLndpZHRoLGE9bi5oZWlnaHQsZz1uLmRlcHRoLEU9bi5sZXZlbHx8MCxRPW4uaW50ZXJuYWxGb3JtYXR8fG4uZm9ybWF0fHxBLlJHQkEsdT1JKFEpLGw9bi5mb3JtYXR8fHUuZm9ybWF0LGg9bi50eXBlfHxkKEEsdCx1LnR5cGUpO2lmKGModCkpdCBpbnN0YW5jZW9mIFVpbnQ4Q2xhbXBlZEFycmF5JiYodD1uZXcgVWludDhBcnJheSh0LmJ1ZmZlcikpO2Vsc2V7dmFyIHc9ci5nZXRUeXBlZEFycmF5VHlwZUZvckdMVHlwZShoKTt0PW5ldyB3KHQpfXZhciBNLG09QyhRLGgpLEY9dC5ieXRlTGVuZ3RoL207aWYoRiUxKXRocm93Imxlbmd0aCB3cm9uZyBzaXplIGZvciBmb3JtYXQ6ICIraS5nbEVudW1Ub1N0cmluZyhBLGwpO2lmKG89PT1BLlRFWFRVUkVfM0QpaWYoc3x8YXx8Zykhc3x8YSYmZz8hYXx8cyYmZz8oTT1wKEEsbyxzLGEsRi9nKSxzPU0ud2lkdGgsYT1NLmhlaWdodCk6KE09cChBLG8scyxnLEYvYSkscz1NLndpZHRoLGc9TS5oZWlnaHQpOihNPXAoQSxvLGEsZyxGL3MpLGE9TS53aWR0aCxnPU0uaGVpZ2h0KTtlbHNle3ZhciBVPU1hdGguY2JydChGKTtpZihVJTEhPTApdGhyb3ciY2FuJ3QgZ3Vlc3MgY3ViZSBzaXplIG9mIGFycmF5IG9mIG51bUVsZW1lbnRzOiAiK0Y7cz1VLGE9VSxnPVV9ZWxzZSBNPXAoQSxvLHMsYSxGKSxzPU0ud2lkdGgsYT1NLmhlaWdodDtpZihmKEEpLEEucGl4ZWxTdG9yZWkoQS5VTlBBQ0tfQUxJR05NRU5ULG4udW5wYWNrQWxpZ25tZW50fHwxKSxEKEEsbiksbz09PUEuVEVYVFVSRV9DVUJFX01BUCl7dmFyIHk9Ri82KihtL3QuQllURVNfUEVSX0VMRU1FTlQpO2IoQSxuKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbj15KmUubmR4LGk9dC5zdWJhcnJheShuLG4reSk7QS50ZXhJbWFnZTJEKGUuZmFjZSxFLFEscyxhLDAsbCxoLGkpfSkpfWVsc2Ugbz09PUEuVEVYVFVSRV8zRD9BLnRleEltYWdlM0QobyxFLFEscyxhLGcsMCxsLGgsdCk6QS50ZXhJbWFnZTJEKG8sRSxRLHMsYSwwLGwsaCx0KTtyZXR1cm4gWShBLG4pLE4oQSkse3dpZHRoOnMsaGVpZ2h0OmEsZGVwdGg6Zyx0eXBlOmh9fWZ1bmN0aW9uIFYoQSxlLHQpe3ZhciBuPXQudGFyZ2V0fHxBLlRFWFRVUkVfMkQ7QS5iaW5kVGV4dHVyZShuLGUpO3ZhciBpPXQubGV2ZWx8fDAscj10LmludGVybmFsRm9ybWF0fHx0LmZvcm1hdHx8QS5SR0JBLG89SShyKSxzPXQuZm9ybWF0fHxvLmZvcm1hdCxhPXQudHlwZXx8by50eXBlO2lmKEQoQSx0KSxuPT09QS5URVhUVVJFX0NVQkVfTUFQKWZvcih2YXIgQj0wO0I8NjsrK0IpQS50ZXhJbWFnZTJEKEEuVEVYVFVSRV9DVUJFX01BUF9QT1NJVElWRV9YK0IsaSxyLHQud2lkdGgsdC5oZWlnaHQsMCxzLGEsbnVsbCk7ZWxzZSBuPT09QS5URVhUVVJFXzNEP0EudGV4SW1hZ2UzRChuLGkscix0LndpZHRoLHQuaGVpZ2h0LHQuZGVwdGgsMCxzLGEsbnVsbCk6QS50ZXhJbWFnZTJEKG4saSxyLHQud2lkdGgsdC5oZWlnaHQsMCxzLGEsbnVsbCk7WShBLHQpfWZ1bmN0aW9uIFcoQSxlLHQpe3Q9dHx8dixlPWV8fEIudGV4dHVyZU9wdGlvbnM7dmFyIG49QS5jcmVhdGVUZXh0dXJlKCksaT1lLnRhcmdldHx8QS5URVhUVVJFXzJELHI9ZS53aWR0aHx8MSxvPWUuaGVpZ2h0fHwxLHM9ZS5pbnRlcm5hbEZvcm1hdHx8QS5SR0JBLGE9SShzKSxnPWUudHlwZXx8YS50eXBlO0EuYmluZFRleHR1cmUoaSxuKSxpPT09QS5URVhUVVJFX0NVQkVfTUFQJiYoQS50ZXhQYXJhbWV0ZXJpKGksQS5URVhUVVJFX1dSQVBfUyxBLkNMQU1QX1RPX0VER0UpLEEudGV4UGFyYW1ldGVyaShpLEEuVEVYVFVSRV9XUkFQX1QsQS5DTEFNUF9UT19FREdFKSk7dmFyIEU9ZS5zcmM7aWYoRSlpZigiZnVuY3Rpb24iPT10eXBlb2YgRSYmKEU9RShBLGUpKSwic3RyaW5nIj09dHlwZW9mIEUpeihBLG4sZSx0KTtlbHNlIGlmKGMoRSl8fEFycmF5LmlzQXJyYXkoRSkmJigibnVtYmVyIj09dHlwZW9mIEVbMF18fEFycmF5LmlzQXJyYXkoRVswXSl8fGMoRVswXSkpKXt2YXIgUT1PKEEsbixFLGUpO3I9US53aWR0aCxvPVEuaGVpZ2h0LGc9US50eXBlfWVsc2UgaWYoQXJyYXkuaXNBcnJheShFKSYmKCJzdHJpbmciPT10eXBlb2YgRVswXXx8ayhFWzBdKSkpaT09PUEuVEVYVFVSRV9DVUJFX01BUD9MKEEsbixlLHQpOlAoQSxuLGUsdCk7ZWxzZXtpZighayhFKSl0aHJvdyJ1bnN1cHBvcnRlZCBzcmMgdHlwZSI7SChBLG4sRSxlKSxyPUUud2lkdGgsbz1FLmhlaWdodH1lbHNlIFYoQSxuLGUpO3JldHVybiBHKGUpJiZSKEEsbixlLHIsbyxzLGcpLHkoQSxuLGUpLG59fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2UuX19lc01vZHVsZT0hMDt2YXIgbj17bTQ6ITAsdjM6ITAscHJpbWl0aXZlczohMH07ZS5wcmltaXRpdmVzPWUudjM9ZS5tND12b2lkIDA7dmFyIGk9YSh0KDYpKTtlLm00PWk7dmFyIHI9YSh0KDMpKTtlLnYzPXI7dmFyIG89YSh0KDEwKSk7ZS5wcmltaXRpdmVzPW87dmFyIHM9dCgxMSk7ZnVuY3Rpb24gYShBKXtpZihBJiZBLl9fZXNNb2R1bGUpcmV0dXJuIEE7dmFyIGU9e307aWYobnVsbCE9QSlmb3IodmFyIHQgaW4gQSlpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoQSx0KSl7dmFyIG49T2JqZWN0LmRlZmluZVByb3BlcnR5JiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSx0KTp7fTtuLmdldHx8bi5zZXQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxuKTplW3RdPUFbdF19cmV0dXJuIGUuZGVmYXVsdD1BLGV9T2JqZWN0LmtleXMocykuZm9yRWFjaCgoZnVuY3Rpb24oQSl7ImRlZmF1bHQiIT09QSYmIl9fZXNNb2R1bGUiIT09QSYmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLEEpfHwoZVtBXT1zW0FdKSl9KSl9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5fX2VzTW9kdWxlPSEwLGUuY3JlYXRlM0RGVmVydGljZXM9ZixlLmNyZWF0ZUF1Z21lbnRlZFR5cGVkQXJyYXk9RSxlLmNyZWF0ZUN1YmVWZXJ0aWNlcz1GLGUuY3JlYXRlUGxhbmVWZXJ0aWNlcz1kLGUuY3JlYXRlU3BoZXJlVmVydGljZXM9cCxlLmNyZWF0ZVRydW5jYXRlZENvbmVWZXJ0aWNlcz1ELGUuY3JlYXRlWFlRdWFkVmVydGljZXM9TSxlLmNyZWF0ZUNyZXNlbnRWZXJ0aWNlcz1OLGUuY3JlYXRlQ3lsaW5kZXJWZXJ0aWNlcz1VLGUuY3JlYXRlVG9ydXNWZXJ0aWNlcz15LGUuY3JlYXRlRGlzY1ZlcnRpY2VzPVQsZS5kZWluZGV4VmVydGljZXM9ZnVuY3Rpb24oQSl7dmFyIGU9QS5pbmRpY2VzLHQ9e30sbj1lLmxlbmd0aDtyZXR1cm4gT2JqZWN0LmtleXMoQSkuZmlsdGVyKFEpLmZvckVhY2goKGZ1bmN0aW9uKGkpe2Zvcih2YXIgcj1BW2ldLG89ci5udW1Db21wb25lbnRzLHM9RShvLG4sci5jb25zdHJ1Y3RvciksYT0wO2E8bjsrK2EpZm9yKHZhciBCPWVbYV0qbyxjPTA7YzxvOysrYylzLnB1c2gocltCK2NdKTt0W2ldPXN9KSksdH0sZS5mbGF0dGVuTm9ybWFscz1mdW5jdGlvbihBKXtpZihBLmluZGljZXMpdGhyb3ciY2FuJ3QgZmxhdHRlbiBub3JtYWxzIG9mIGluZGV4ZWQgdmVydGljZXMuIGRlaW5kZXggdGhlbSBmaXJzdCI7Zm9yKHZhciBlPUEubm9ybWFsLHQ9ZS5sZW5ndGgsbj0wO248dDtuKz05KXt2YXIgaT1lW24rMF0scj1lW24rMV0sbz1lW24rMl0scz1lW24rM10sYT1lW24rNF0sQj1lW24rNV0sYz1lW24rNl0sZz1lW24rN10sRT1lW24rOF0sUT1pK3MrYyx1PXIrYStnLGw9bytCK0UsaD1NYXRoLnNxcnQoUSpRK3UqdStsKmwpO1EvPWgsdS89aCxsLz1oLGVbbiswXT1RLGVbbisxXT11LGVbbisyXT1sLGVbbiszXT1RLGVbbis0XT11LGVbbis1XT1sLGVbbis2XT1RLGVbbis3XT11LGVbbis4XT1sfXJldHVybiBBfSxlLm1ha2VSYW5kb21WZXJ0ZXhDb2xvcnM9ZnVuY3Rpb24oQSxlKXtlPWV8fHt9O3ZhciB0PUEucG9zaXRpb24ubnVtRWxlbWVudHMsbj1FKDQsdCxVaW50OEFycmF5KSxpPWUucmFuZHx8ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZTwzPyh0PTI1NixNYXRoLnJhbmRvbSgpKnR8MCk6MjU1O3ZhciB0fTtpZihBLmNvbG9yPW4sQS5pbmRpY2VzKWZvcih2YXIgcj0wO3I8dDsrK3Ipbi5wdXNoKGkociwwKSxpKHIsMSksaShyLDIpLGkociwzKSk7ZWxzZSBmb3IodmFyIG89ZS52ZXJ0c1BlckNvbG9yfHwzLHM9dC9vLGE9MDthPHM7KythKWZvcih2YXIgQj1baShhLDApLGkoYSwxKSxpKGEsMiksaShhLDMpXSxjPTA7YzxvOysrYyluLnB1c2goQik7cmV0dXJuIEF9LGUucmVvcmllbnREaXJlY3Rpb25zPWgsZS5yZW9yaWVudE5vcm1hbHM9dyxlLnJlb3JpZW50UG9zaXRpb25zPUMsZS5yZW9yaWVudFZlcnRpY2VzPUksZS5jb25jYXRWZXJ0aWNlcz1mdW5jdGlvbihBKXtmb3IodmFyIGUsdD17fSxuPWZ1bmN0aW9uKG4pe3ZhciBpPUFbbl07T2JqZWN0LmtleXMoaSkuZm9yRWFjaCgoZnVuY3Rpb24oQSl7dFtBXXx8KHRbQV09W10pLGV8fCJpbmRpY2VzIj09PUF8fChlPUEpO3ZhciBuPWlbQV0scj1jKG4sQSksbz1CKG4pLmxlbmd0aC9yO3RbQV0ucHVzaChvKX0pKX0saT0wO2k8QS5sZW5ndGg7KytpKW4oaSk7dmFyIHI9dFtlXSxvPXt9O3JldHVybiBPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgdD1mdW5jdGlvbihlKXtmb3IodmFyIHQsbj0wLGk9MDtpPEEubGVuZ3RoOysraSl7dmFyIHI9QVtpXVtlXSxvPUIocik7bis9by5sZW5ndGgsdCYmIXIuZGF0YXx8KHQ9cil9cmV0dXJue2xlbmd0aDpuLHNwZWM6dH19KGUpLG49Yih0LnNwZWMsdC5sZW5ndGgpOyFmdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpPTAscj0wLG89MDtvPEEubGVuZ3RoOysrbyl7dmFyIHM9QVtvXVtlXSxhPUIocyk7ImluZGljZXMiPT09ZT8oUyhhLG4scixpKSxpKz10W29dKTpTKGEsbixyKSxyKz1hLmxlbmd0aH19KGUscixCKG4pKSxvW2VdPW59KSksb30sZS5kdXBsaWNhdGVWZXJ0aWNlcz1mdW5jdGlvbihBKXt2YXIgZT17fTtyZXR1cm4gT2JqZWN0LmtleXMoQSkuZm9yRWFjaCgoZnVuY3Rpb24odCl7dmFyIG49QVt0XSxpPUIobikscj1iKG4saS5sZW5ndGgpO1MoaSxCKHIpLDApLGVbdF09cn0pKSxlfSxlLmNyZWF0ZURpc2NCdWZmZXJzPWUuY3JlYXRlRGlzY0J1ZmZlckluZm89ZS5jcmVhdGVUb3J1c0J1ZmZlcnM9ZS5jcmVhdGVUb3J1c0J1ZmZlckluZm89ZS5jcmVhdGVDeWxpbmRlckJ1ZmZlcnM9ZS5jcmVhdGVDeWxpbmRlckJ1ZmZlckluZm89ZS5jcmVhdGVDcmVzZW50QnVmZmVycz1lLmNyZWF0ZUNyZXNlbnRCdWZmZXJJbmZvPWUuY3JlYXRlWFlRdWFkQnVmZmVycz1lLmNyZWF0ZVhZUXVhZEJ1ZmZlckluZm89ZS5jcmVhdGVUcnVuY2F0ZWRDb25lQnVmZmVycz1lLmNyZWF0ZVRydW5jYXRlZENvbmVCdWZmZXJJbmZvPWUuY3JlYXRlU3BoZXJlQnVmZmVycz1lLmNyZWF0ZVNwaGVyZUJ1ZmZlckluZm89ZS5jcmVhdGVQbGFuZUJ1ZmZlcnM9ZS5jcmVhdGVQbGFuZUJ1ZmZlckluZm89ZS5jcmVhdGVDdWJlQnVmZmVycz1lLmNyZWF0ZUN1YmVCdWZmZXJJbmZvPWUuY3JlYXRlM0RGQnVmZmVycz1lLmNyZWF0ZTNERkJ1ZmZlckluZm89dm9pZCAwO3ZhciBuPWEodCg3KSksaT1hKHQoMCkpLHI9YSh0KDEpKSxvPWEodCg2KSkscz1hKHQoMykpO2Z1bmN0aW9uIGEoQSl7aWYoQSYmQS5fX2VzTW9kdWxlKXJldHVybiBBO3ZhciBlPXt9O2lmKG51bGwhPUEpZm9yKHZhciB0IGluIEEpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEEsdCkpe3ZhciBuPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSYmT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcj9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsdCk6e307bi5nZXR8fG4uc2V0P09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsbik6ZVt0XT1BW3RdfXJldHVybiBlLmRlZmF1bHQ9QSxlfXZhciBCPW4uZ2V0QXJyYXlfLGM9bi5nZXROdW1Db21wb25lbnRzXztmdW5jdGlvbiBnKEEsZSl7dmFyIHQ9MDtyZXR1cm4gQS5wdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxhcmd1bWVudHMubGVuZ3RoOysrZSl7dmFyIG49YXJndW1lbnRzW2VdO2lmKG4gaW5zdGFuY2VvZiBBcnJheXx8ci5pc0FycmF5QnVmZmVyKG4pKWZvcih2YXIgaT0wO2k8bi5sZW5ndGg7KytpKUFbdCsrXT1uW2ldO2Vsc2UgQVt0KytdPW59fSxBLnJlc2V0PWZ1bmN0aW9uKEEpe3Q9QXx8MH0sQS5udW1Db21wb25lbnRzPWUsT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsIm51bUVsZW1lbnRzIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGVuZ3RoL3RoaXMubnVtQ29tcG9uZW50c3wwfX0pLEF9ZnVuY3Rpb24gRShBLGUsdCl7cmV0dXJuIGcobmV3KHR8fEZsb2F0MzJBcnJheSkoQSplKSxBKX1mdW5jdGlvbiBRKEEpe3JldHVybiJpbmRpY2VzIiE9PUF9ZnVuY3Rpb24gdShBLGUsdCl7Zm9yKHZhciBuPUEubGVuZ3RoLGk9bmV3IEZsb2F0MzJBcnJheSgzKSxyPTA7cjxuO3IrPTMpdChlLFtBW3JdLEFbcisxXSxBW3IrMl1dLGkpLEFbcl09aVswXSxBW3IrMV09aVsxXSxBW3IrMl09aVsyXX1mdW5jdGlvbiBsKEEsZSx0KXt0PXR8fHMuY3JlYXRlKCk7dmFyIG49ZVswXSxpPWVbMV0scj1lWzJdO3JldHVybiB0WzBdPW4qQVswXStpKkFbMV0rcipBWzJdLHRbMV09bipBWzRdK2kqQVs1XStyKkFbNl0sdFsyXT1uKkFbOF0raSpBWzldK3IqQVsxMF0sdH1mdW5jdGlvbiBoKEEsZSl7cmV0dXJuIHUoQSxlLG8udHJhbnNmb3JtRGlyZWN0aW9uKSxBfWZ1bmN0aW9uIHcoQSxlKXtyZXR1cm4gdShBLG8uaW52ZXJzZShlKSxsKSxBfWZ1bmN0aW9uIEMoQSxlKXtyZXR1cm4gdShBLGUsby50cmFuc2Zvcm1Qb2ludCksQX1mdW5jdGlvbiBJKEEsZSl7cmV0dXJuIE9iamVjdC5rZXlzKEEpLmZvckVhY2goKGZ1bmN0aW9uKHQpe3ZhciBuPUFbdF07dC5pbmRleE9mKCJwb3MiKT49MD9DKG4sZSk6dC5pbmRleE9mKCJ0YW4iKT49MHx8dC5pbmRleE9mKCJiaW5vcm0iKT49MD9oKG4sZSk6dC5pbmRleE9mKCJub3JtIik+PTAmJncobixlKX0pKSxBfWZ1bmN0aW9uIE0oQSxlLHQpe3JldHVybiBBPUF8fDIse3Bvc2l0aW9uOntudW1Db21wb25lbnRzOjIsZGF0YTpbKGU9ZXx8MCkrLTEqKEEqPS41KSwodD10fHwwKSstMSpBLGUrMSpBLHQrLTEqQSxlKy0xKkEsdCsxKkEsZSsxKkEsdCsxKkFdfSxub3JtYWw6WzAsMCwxLDAsMCwxLDAsMCwxLDAsMCwxXSx0ZXhjb29yZDpbMCwwLDEsMCwwLDEsMSwxXSxpbmRpY2VzOlswLDEsMiwyLDEsM119fWZ1bmN0aW9uIGQoQSxlLHQsbixpKXtBPUF8fDEsZT1lfHwxLHQ9dHx8MSxuPW58fDEsaT1pfHxvLmlkZW50aXR5KCk7Zm9yKHZhciByPSh0KzEpKihuKzEpLHM9RSgzLHIpLGE9RSgzLHIpLEI9RSgyLHIpLGM9MDtjPD1uO2MrKylmb3IodmFyIGc9MDtnPD10O2crKyl7dmFyIFE9Zy90LHU9Yy9uO3MucHVzaChBKlEtLjUqQSwwLGUqdS0uNSplKSxhLnB1c2goMCwxLDApLEIucHVzaChRLHUpfWZvcih2YXIgbD10KzEsaD1FKDMsdCpuKjIsVWludDE2QXJyYXkpLHc9MDt3PG47dysrKWZvcih2YXIgQz0wO0M8dDtDKyspaC5wdXNoKCh3KzApKmwrQywodysxKSpsK0MsKHcrMCkqbCtDKzEpLGgucHVzaCgodysxKSpsK0MsKHcrMSkqbCtDKzEsKHcrMCkqbCtDKzEpO3JldHVybiBJKHtwb3NpdGlvbjpzLG5vcm1hbDphLHRleGNvb3JkOkIsaW5kaWNlczpofSxpKX1mdW5jdGlvbiBwKEEsZSx0LG4saSxyLG8pe2lmKGU8PTB8fHQ8PTApdGhyb3cgRXJyb3IoInN1YmRpdmlzaW9uQXhpcyBhbmQgc3ViZGl2aXNpb25IZWlnaHQgbXVzdCBiZSA+IDAiKTtuPW58fDAscj1yfHwwO2Zvcih2YXIgcz0oaT1pfHxNYXRoLlBJKS1uLGE9KG89b3x8MipNYXRoLlBJKS1yLEI9KGUrMSkqKHQrMSksYz1FKDMsQiksZz1FKDMsQiksUT1FKDIsQiksdT0wO3U8PXQ7dSsrKWZvcih2YXIgbD0wO2w8PWU7bCsrKXt2YXIgaD1sL2Usdz11L3QsQz1hKmgsST1zKncsTT1NYXRoLnNpbihDKSxkPU1hdGguY29zKEMpLHA9TWF0aC5zaW4oSSksbT1kKnAsRj1NYXRoLmNvcyhJKSxEPU0qcDtjLnB1c2goQSptLEEqRixBKkQpLGcucHVzaChtLEYsRCksUS5wdXNoKDEtaCx3KX1mb3IodmFyIFk9ZSsxLGY9RSgzLGUqdCoyLFVpbnQxNkFycmF5KSxOPTA7TjxlO04rKylmb3IodmFyIFU9MDtVPHQ7VSsrKWYucHVzaCgoVSswKSpZK04sKFUrMCkqWStOKzEsKFUrMSkqWStOKSxmLnB1c2goKFUrMSkqWStOLChVKzApKlkrTisxLChVKzEpKlkrTisxKTtyZXR1cm57cG9zaXRpb246Yyxub3JtYWw6Zyx0ZXhjb29yZDpRLGluZGljZXM6Zn19dmFyIG09W1szLDcsNSwxXSxbNiwyLDAsNF0sWzYsNywzLDJdLFswLDEsNSw0XSxbNyw2LDQsNV0sWzIsMywxLDBdXTtmdW5jdGlvbiBGKEEpe2Zvcih2YXIgZT0oQT1BfHwxKS8yLHQ9W1stZSwtZSwtZV0sWytlLC1lLC1lXSxbLWUsK2UsLWVdLFsrZSwrZSwtZV0sWy1lLC1lLCtlXSxbK2UsLWUsK2VdLFstZSwrZSwrZV0sWytlLCtlLCtlXV0sbj1bWzEsMCwwXSxbLTEsMCwwXSxbMCwxLDBdLFswLC0xLDBdLFswLDAsMV0sWzAsMCwtMV1dLGk9W1sxLDBdLFswLDBdLFswLDFdLFsxLDFdXSxyPUUoMywyNCksbz1FKDMsMjQpLHM9RSgyLDI0KSxhPUUoMywxMixVaW50MTZBcnJheSksQj0wO0I8NjsrK0Ipe2Zvcih2YXIgYz1tW0JdLGc9MDtnPDQ7KytnKXt2YXIgUT10W2NbZ11dLHU9bltCXSxsPWlbZ107ci5wdXNoKFEpLG8ucHVzaCh1KSxzLnB1c2gobCl9dmFyIGg9NCpCO2EucHVzaChoKzAsaCsxLGgrMiksYS5wdXNoKGgrMCxoKzIsaCszKX1yZXR1cm57cG9zaXRpb246cixub3JtYWw6byx0ZXhjb29yZDpzLGluZGljZXM6YX19ZnVuY3Rpb24gRChBLGUsdCxuLGkscixvKXtpZihuPDMpdGhyb3cgRXJyb3IoInJhZGlhbFN1YmRpdmlzaW9ucyBtdXN0IGJlIDMgb3IgZ3JlYXRlciIpO2lmKGk8MSl0aHJvdyBFcnJvcigidmVydGljYWxTdWJkaXZpc2lvbnMgbXVzdCBiZSAxIG9yIGdyZWF0ZXIiKTtmb3IodmFyIHM9dm9pZCAwPT09cnx8cixhPXZvaWQgMD09PW98fG8sQj0ocz8yOjApKyhhPzI6MCksYz0obisxKSooaSsxK0IpLGc9RSgzLGMpLFE9RSgzLGMpLHU9RSgyLGMpLGw9RSgzLG4qKGkrQikqMixVaW50MTZBcnJheSksaD1uKzEsdz1NYXRoLmF0YW4yKEEtZSx0KSxDPU1hdGguY29zKHcpLEk9TWF0aC5zaW4odyksTT1pKyhhPzI6MCksZD1zPy0yOjA7ZDw9TTsrK2Qpe3ZhciBwPWQvaSxtPXQqcCxGPXZvaWQgMDtkPDA/KG09MCxwPTEsRj1BKTpkPmk/KG09dCxwPTEsRj1lKTpGPUErZC9pKihlLUEpLC0yIT09ZCYmZCE9PWkrMnx8KEY9MCxwPTApLG0tPXQvMjtmb3IodmFyIEQ9MDtEPGg7KytEKXt2YXIgWT1NYXRoLnNpbihEKk1hdGguUEkqMi9uKSxmPU1hdGguY29zKEQqTWF0aC5QSSoyL24pO2cucHVzaChZKkYsbSxmKkYpLFEucHVzaChkPDB8fGQ+aT8wOlkqQyxkPDA/LTE6ZD5pPzE6SSxkPDB8fGQ+aT8wOmYqQyksdS5wdXNoKEQvbiwxLXApfX1mb3IodmFyIE49MDtOPGkrQjsrK04pZm9yKHZhciBVPTA7VTxuOysrVSlsLnB1c2goaCooTiswKSswK1UsaCooTiswKSsxK1UsaCooTisxKSsxK1UpLGwucHVzaChoKihOKzApKzArVSxoKihOKzEpKzErVSxoKihOKzEpKzArVSk7cmV0dXJue3Bvc2l0aW9uOmcsbm9ybWFsOlEsdGV4Y29vcmQ6dSxpbmRpY2VzOmx9fWZ1bmN0aW9uIFkoQSxlKXtlPWV8fFtdO2Zvcih2YXIgdD1bXSxuPTA7bjxBLmxlbmd0aDtuKz00KXt2YXIgaT1BW25dLHI9QS5zbGljZShuKzEsbis0KTtyLnB1c2guYXBwbHkocixlKTtmb3IodmFyIG89MDtvPGk7KytvKXQucHVzaC5hcHBseSh0LHIpfXJldHVybiB0fWZ1bmN0aW9uIGYoKXt2YXIgQT1bMCwwLDAsMCwxNTAsMCwzMCwwLDAsMCwxNTAsMCwzMCwxNTAsMCwzMCwwLDAsMzAsMCwwLDMwLDMwLDAsMTAwLDAsMCwzMCwzMCwwLDEwMCwzMCwwLDEwMCwwLDAsMzAsNjAsMCwzMCw5MCwwLDY3LDYwLDAsMzAsOTAsMCw2Nyw5MCwwLDY3LDYwLDAsMCwwLDMwLDMwLDAsMzAsMCwxNTAsMzAsMCwxNTAsMzAsMzAsMCwzMCwzMCwxNTAsMzAsMzAsMCwzMCwxMDAsMCwzMCwzMCwzMCwzMCwzMCwzMCwzMCwxMDAsMCwzMCwxMDAsMzAsMzAsMzAsNjAsMzAsNjcsNjAsMzAsMzAsOTAsMzAsMzAsOTAsMzAsNjcsNjAsMzAsNjcsOTAsMzAsMCwwLDAsMTAwLDAsMCwxMDAsMCwzMCwwLDAsMCwxMDAsMCwzMCwwLDAsMzAsMTAwLDAsMCwxMDAsMzAsMCwxMDAsMzAsMzAsMTAwLDAsMCwxMDAsMzAsMzAsMTAwLDAsMzAsMzAsMzAsMCwzMCwzMCwzMCwxMDAsMzAsMzAsMzAsMzAsMCwxMDAsMzAsMzAsMTAwLDMwLDAsMzAsMzAsMCwzMCw2MCwzMCwzMCwzMCwzMCwzMCwzMCwwLDMwLDYwLDAsMzAsNjAsMzAsMzAsNjAsMCw2Nyw2MCwzMCwzMCw2MCwzMCwzMCw2MCwwLDY3LDYwLDAsNjcsNjAsMzAsNjcsNjAsMCw2Nyw5MCwzMCw2Nyw2MCwzMCw2Nyw2MCwwLDY3LDkwLDAsNjcsOTAsMzAsMzAsOTAsMCwzMCw5MCwzMCw2Nyw5MCwzMCwzMCw5MCwwLDY3LDkwLDMwLDY3LDkwLDAsMzAsOTAsMCwzMCwxNTAsMzAsMzAsOTAsMzAsMzAsOTAsMCwzMCwxNTAsMCwzMCwxNTAsMzAsMCwxNTAsMCwwLDE1MCwzMCwzMCwxNTAsMzAsMCwxNTAsMCwzMCwxNTAsMzAsMzAsMTUwLDAsMCwwLDAsMCwwLDMwLDAsMTUwLDMwLDAsMCwwLDAsMTUwLDMwLDAsMTUwLDBdLGU9WShbMTgsMCwwLDEsMTgsMCwwLC0xLDYsMCwxLDAsNiwxLDAsMCw2LDAsLTEsMCw2LDEsMCwwLDYsMCwxLDAsNiwxLDAsMCw2LDAsLTEsMCw2LDEsMCwwLDYsMCwtMSwwLDYsLTEsMCwwXSksdD1ZKFsxOCwyMDAsNzAsMTIwLDE4LDgwLDcwLDIwMCw2LDcwLDIwMCwyMTAsNiwyMDAsMjAwLDcwLDYsMjEwLDEwMCw3MCw2LDIxMCwxNjAsNzAsNiw3MCwxODAsMjEwLDYsMTAwLDcwLDIxMCw2LDc2LDIxMCwxMDAsNiwxNDAsMjEwLDgwLDYsOTAsMTMwLDExMCw2LDE2MCwxNjAsMjIwXSxbMjU1XSksbj1BLmxlbmd0aC8zLGk9e3Bvc2l0aW9uOkUoMyxuKSx0ZXhjb29yZDpFKDIsbiksbm9ybWFsOkUoMyxuKSxjb2xvcjpFKDQsbixVaW50OEFycmF5KSxpbmRpY2VzOkUoMyxuLzMsVWludDE2QXJyYXkpfTtpLnBvc2l0aW9uLnB1c2goQSksaS50ZXhjb29yZC5wdXNoKFsuMjIsLjE5LC4yMiwuNzksLjM0LC4xOSwuMjIsLjc5LC4zNCwuNzksLjM0LC4xOSwuMzQsLjE5LC4zNCwuMzEsLjYyLC4xOSwuMzQsLjMxLC42MiwuMzEsLjYyLC4xOSwuMzQsLjQzLC4zNCwuNTUsLjQ5LC40MywuMzQsLjU1LC40OSwuNTUsLjQ5LC40MywwLDAsMSwwLDAsMSwwLDEsMSwwLDEsMSwwLDAsMSwwLDAsMSwwLDEsMSwwLDEsMSwwLDAsMSwwLDAsMSwwLDEsMSwwLDEsMSwwLDAsMSwwLDEsMSwwLDAsMSwxLDAsMSwwLDAsMSwwLDEsMSwwLDAsMSwxLDAsMSwwLDAsMCwxLDEsMSwwLDAsMSwxLDEsMCwwLDAsMSwxLDAsMSwwLDAsMSwwLDEsMSwwLDAsMSwxLDAsMSwwLDAsMSwwLDEsMSwwLDAsMSwxLDAsMSwwLDAsMSwwLDEsMSwwLDAsMCwxLDEsMSwwLDAsMSwxLDEsMCwwLDAsMSwxLDAsMSwwLDAsMSwwLDEsMSwwLDAsMCwxLDEsMSwwLDAsMSwxLDEsMCwwLDAsMCwxLDEsMSwwLDAsMSwxLDEsMF0pLGkubm9ybWFsLnB1c2goZSksaS5jb2xvci5wdXNoKHQpO2Zvcih2YXIgcj0wO3I8bjsrK3IpaS5pbmRpY2VzLnB1c2gocik7cmV0dXJuIGl9ZnVuY3Rpb24gTihBLGUsdCxuLGkscixvKXtpZihpPD0wKXRocm93IEVycm9yKCJzdWJkaXZpc2lvbkRvd24gbXVzdCBiZSA+IDAiKTt2YXIgYT0obz1vfHwxKS0ocj1yfHwwKSxCPTIqKGkrMSkqNCxjPUUoMyxCKSxnPUUoMyxCKSxRPUUoMixCKTtmdW5jdGlvbiB1KEEsZSx0KXtyZXR1cm4gQSsoZS1BKSp0fWZ1bmN0aW9uIGwoZSx0LG8sQixFLGwpe2Zvcih2YXIgaD0wO2g8PWk7aCsrKXt2YXIgdz10LzEsQz1oL2ksST0yKih3LS41KSxNPShyK0MqYSkqTWF0aC5QSSxkPU1hdGguc2luKE0pLHA9TWF0aC5jb3MoTSksbT11KEEsZSxkKSxGPUkqbixEPXAqQSxZPWQqbTtjLnB1c2goRixELFkpO3ZhciBmPXMuYWRkKHMubXVsdGlwbHkoWzAsZCxwXSxvKSxCKTtnLnB1c2goZiksUS5wdXNoKHcqRStsLEMpfX1mb3IodmFyIGg9MDtoPDI7aCsrKXt2YXIgdz0yKihoLzEtLjUpO2woZSxoLFsxLDEsMV0sWzAsMCwwXSwxLDApLGwoZSxoLFswLDAsMF0sW3csMCwwXSwwLDApLGwodCxoLFsxLDEsMV0sWzAsMCwwXSwxLDApLGwodCxoLFswLDAsMF0sW3csMCwwXSwwLDEpfXZhciBDPUUoMywyKmkqNCxVaW50MTZBcnJheSk7ZnVuY3Rpb24gSShBLGUpe2Zvcih2YXIgdD0wO3Q8aTsrK3QpQy5wdXNoKEErdCswLEErdCsxLGUrdCswKSxDLnB1c2goQSt0KzEsZSt0KzEsZSt0KzApfXZhciBNPWkrMTtyZXR1cm4gSSgwKk0sNCpNKSxJKDUqTSw3Kk0pLEkoNipNLDIqTSksSSgzKk0sMSpNKSx7cG9zaXRpb246Yyxub3JtYWw6Zyx0ZXhjb29yZDpRLGluZGljZXM6Q319ZnVuY3Rpb24gVShBLGUsdCxuLGkscil7cmV0dXJuIEQoQSxBLGUsdCxuLGkscil9ZnVuY3Rpb24geShBLGUsdCxuLGkscil7aWYodDwzKXRocm93IEVycm9yKCJyYWRpYWxTdWJkaXZpc2lvbnMgbXVzdCBiZSAzIG9yIGdyZWF0ZXIiKTtpZihuPDMpdGhyb3cgRXJyb3IoInZlcnRpY2FsU3ViZGl2aXNpb25zIG11c3QgYmUgMyBvciBncmVhdGVyIik7aT1pfHwwO2Zvcih2YXIgbz0ocj1yfHwyKk1hdGguUEkpLWkscz10KzEsYT1uKzEsQj1zKmEsYz1FKDMsQiksZz1FKDMsQiksUT1FKDIsQiksdT1FKDMsdCpuKjIsVWludDE2QXJyYXkpLGw9MDtsPGE7KytsKWZvcih2YXIgaD1sL24sdz1oKk1hdGguUEkqMixDPU1hdGguc2luKHcpLEk9QStDKmUsTT1NYXRoLmNvcyh3KSxkPU0qZSxwPTA7cDxzOysrcCl7dmFyIG09cC90LEY9aSttKm8sRD1NYXRoLnNpbihGKSxZPU1hdGguY29zKEYpLGY9RCpJLE49WSpJLFU9RCpDLHk9WSpDO2MucHVzaChmLGQsTiksZy5wdXNoKFUsTSx5KSxRLnB1c2gobSwxLWgpfWZvcih2YXIgVD0wO1Q8bjsrK1QpZm9yKHZhciB4PTA7eDx0OysreCl7dmFyIFI9MSt4LEc9MStUO3UucHVzaChzKlQreCxzKkcreCxzKlQrUiksdS5wdXNoKHMqRyt4LHMqRytSLHMqVCtSKX1yZXR1cm57cG9zaXRpb246Yyxub3JtYWw6Zyx0ZXhjb29yZDpRLGluZGljZXM6dX19ZnVuY3Rpb24gVChBLGUsdCxuLGkpe2lmKGU8Myl0aHJvdyBFcnJvcigiZGl2aXNpb25zIG11c3QgYmUgYXQgbGVhc3QgMyIpO2k9aXx8MSxuPW58fDA7Zm9yKHZhciByPShlKzEpKigodD10fHwxKSsxKSxvPUUoMyxyKSxzPUUoMyxyKSxhPUUoMixyKSxCPUUoMyx0KmUqMixVaW50MTZBcnJheSksYz0wLGc9QS1uLFE9ZSsxLHU9MDt1PD10OysrdSl7Zm9yKHZhciBsPW4rZypNYXRoLnBvdyh1L3QsaSksaD0wO2g8PWU7KytoKXt2YXIgdz0yKk1hdGguUEkqaC9lLEM9bCpNYXRoLmNvcyh3KSxJPWwqTWF0aC5zaW4odyk7aWYoby5wdXNoKEMsMCxJKSxzLnB1c2goMCwxLDApLGEucHVzaCgxLWgvZSx1L3QpLHU+MCYmaCE9PWUpe3ZhciBNPWMrKGgrMSksZD1jK2gscD1jK2gtUSxtPWMrKGgrMSktUTtCLnB1c2goTSxkLHApLEIucHVzaChNLHAsbSl9fWMrPWUrMX1yZXR1cm57cG9zaXRpb246byxub3JtYWw6cyx0ZXhjb29yZDphLGluZGljZXM6Qn19ZnVuY3Rpb24geChBKXtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIHQ9QS5hcHBseSh0aGlzLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIG4uY3JlYXRlQnVmZmVyc0Zyb21BcnJheXMoZSx0KX19ZnVuY3Rpb24gUihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIHQ9QS5hcHBseShudWxsLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIG4uY3JlYXRlQnVmZmVySW5mb0Zyb21BcnJheXMoZSx0KX19dmFyIEc9WyJudW1Db21wb25lbnRzIiwic2l6ZSIsInR5cGUiLCJub3JtYWxpemUiLCJzdHJpZGUiLCJvZmZzZXQiLCJhdHRyaWIiLCJuYW1lIiwiYXR0cmliTmFtZSJdO2Z1bmN0aW9uIFMoQSxlLHQsbil7bj1ufHwwO2Zvcih2YXIgaT1BLmxlbmd0aCxyPTA7cjxpOysrcillW3Qrcl09QVtyXStufWZ1bmN0aW9uIGIoQSxlKXt2YXIgdD1CKEEpLG49bmV3IHQuY29uc3RydWN0b3IoZSkscj1uO3JldHVybiB0Lm51bUNvbXBvbmVudHMmJnQubnVtRWxlbWVudHMmJmcobix0Lm51bUNvbXBvbmVudHMpLEEuZGF0YSYmKHI9e2RhdGE6bn0saS5jb3B5TmFtZWRQcm9wZXJ0aWVzKEcsQSxyKSkscn12YXIgSD1SKGYpO2UuY3JlYXRlM0RGQnVmZmVySW5mbz1IO3ZhciB2PXgoZik7ZS5jcmVhdGUzREZCdWZmZXJzPXY7dmFyIGs9UihGKTtlLmNyZWF0ZUN1YmVCdWZmZXJJbmZvPWs7dmFyIGo9eChGKTtlLmNyZWF0ZUN1YmVCdWZmZXJzPWo7dmFyIEo9UihkKTtlLmNyZWF0ZVBsYW5lQnVmZmVySW5mbz1KO3ZhciB6PXgoZCk7ZS5jcmVhdGVQbGFuZUJ1ZmZlcnM9ejt2YXIgTD1SKHApO2UuY3JlYXRlU3BoZXJlQnVmZmVySW5mbz1MO3ZhciBQPXgocCk7ZS5jcmVhdGVTcGhlcmVCdWZmZXJzPVA7dmFyIE89UihEKTtlLmNyZWF0ZVRydW5jYXRlZENvbmVCdWZmZXJJbmZvPU87dmFyIFY9eChEKTtlLmNyZWF0ZVRydW5jYXRlZENvbmVCdWZmZXJzPVY7dmFyIFc9UihNKTtlLmNyZWF0ZVhZUXVhZEJ1ZmZlckluZm89Vzt2YXIgSz14KE0pO2UuY3JlYXRlWFlRdWFkQnVmZmVycz1LO3ZhciBYPVIoTik7ZS5jcmVhdGVDcmVzZW50QnVmZmVySW5mbz1YO3ZhciBaPXgoTik7ZS5jcmVhdGVDcmVzZW50QnVmZmVycz1aO3ZhciBfPVIoVSk7ZS5jcmVhdGVDeWxpbmRlckJ1ZmZlckluZm89Xzt2YXIgcT14KFUpO2UuY3JlYXRlQ3lsaW5kZXJCdWZmZXJzPXE7dmFyICQ9Uih5KTtlLmNyZWF0ZVRvcnVzQnVmZmVySW5mbz0kO3ZhciBBQT14KHkpO2UuY3JlYXRlVG9ydXNCdWZmZXJzPUFBO3ZhciBlQT1SKFQpO2UuY3JlYXRlRGlzY0J1ZmZlckluZm89ZUE7dmFyIHRBPXgoVCk7ZS5jcmVhdGVEaXNjQnVmZmVycz10QX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITA7dmFyIG49e2FkZEV4dGVuc2lvbnNUb0NvbnRleHQ6ITAsZ2V0Q29udGV4dDohMCxnZXRXZWJHTENvbnRleHQ6ITAscmVzaXplQ2FudmFzVG9EaXNwbGF5U2l6ZTohMCxzZXREZWZhdWx0czohMH07ZS5hZGRFeHRlbnNpb25zVG9Db250ZXh0PUMsZS5nZXRDb250ZXh0PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PVsid2ViZ2wyIiwid2ViZ2wiLCJleHBlcmltZW50YWwtd2ViZ2wiXSxuPW51bGwsaT0wO2k8dC5sZW5ndGg7KytpKWlmKG49QS5nZXRDb250ZXh0KHRbaV0sZSkpe3UuYWRkRXh0ZW5zaW9uc1RvQ29udGV4dCYmQyhuKTticmVha31yZXR1cm4gbn0oQSxlKX0sZS5nZXRXZWJHTENvbnRleHQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9WyJ3ZWJnbCIsImV4cGVyaW1lbnRhbC13ZWJnbCJdLG49bnVsbCxpPTA7aTx0Lmxlbmd0aDsrK2kpaWYobj1BLmdldENvbnRleHQodFtpXSxlKSl7dS5hZGRFeHRlbnNpb25zVG9Db250ZXh0JiZDKG4pO2JyZWFrfXJldHVybiBufShBLGUpfSxlLnJlc2l6ZUNhbnZhc1RvRGlzcGxheVNpemU9ZnVuY3Rpb24oQSxlKXtlPWV8fDEsZT1NYXRoLm1heCgwLGUpO3ZhciB0PUEuY2xpZW50V2lkdGgqZXwwLG49QS5jbGllbnRIZWlnaHQqZXwwO3JldHVybihBLndpZHRoIT09dHx8QS5oZWlnaHQhPT1uKSYmKEEud2lkdGg9dCxBLmhlaWdodD1uLCEwKX0sZS5zZXREZWZhdWx0cz1mdW5jdGlvbihBKXtvLmNvcHlFeGlzdGluZ1Byb3BlcnRpZXMoQSx1KSxpLnNldEF0dHJpYnV0ZURlZmF1bHRzXyhBKSxyLnNldFRleHR1cmVEZWZhdWx0c18oQSl9O3ZhciBpPVEodCg3KSk7T2JqZWN0LmtleXMoaSkuZm9yRWFjaCgoZnVuY3Rpb24oQSl7ImRlZmF1bHQiIT09QSYmIl9fZXNNb2R1bGUiIT09QSYmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLEEpfHwoZVtBXT1pW0FdKSl9KSk7dmFyIHI9USh0KDgpKTtPYmplY3Qua2V5cyhyKS5mb3JFYWNoKChmdW5jdGlvbihBKXsiZGVmYXVsdCIhPT1BJiYiX19lc01vZHVsZSIhPT1BJiYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sQSl8fChlW0FdPXJbQV0pKX0pKTt2YXIgbz1RKHQoMCkpLHM9USh0KDQpKTtPYmplY3Qua2V5cyhzKS5mb3JFYWNoKChmdW5jdGlvbihBKXsiZGVmYXVsdCIhPT1BJiYiX19lc01vZHVsZSIhPT1BJiYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sQSl8fChlW0FdPXNbQV0pKX0pKTt2YXIgYT10KDEyKTtPYmplY3Qua2V5cyhhKS5mb3JFYWNoKChmdW5jdGlvbihBKXsiZGVmYXVsdCIhPT1BJiYiX19lc01vZHVsZSIhPT1BJiYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sQSl8fChlW0FdPWFbQV0pKX0pKTt2YXIgQj10KDEzKTtPYmplY3Qua2V5cyhCKS5mb3JFYWNoKChmdW5jdGlvbihBKXsiZGVmYXVsdCIhPT1BJiYiX19lc01vZHVsZSIhPT1BJiYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sQSl8fChlW0FdPUJbQV0pKX0pKTt2YXIgYz10KDUpO09iamVjdC5rZXlzKGMpLmZvckVhY2goKGZ1bmN0aW9uKEEpeyJkZWZhdWx0IiE9PUEmJiJfX2VzTW9kdWxlIiE9PUEmJihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixBKXx8KGVbQV09Y1tBXSkpfSkpO3ZhciBnPXQoMSk7T2JqZWN0LmtleXMoZykuZm9yRWFjaCgoZnVuY3Rpb24oQSl7ImRlZmF1bHQiIT09QSYmIl9fZXNNb2R1bGUiIT09QSYmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLEEpfHwoZVtBXT1nW0FdKSl9KSk7dmFyIEU9dCgxNCk7ZnVuY3Rpb24gUShBKXtpZihBJiZBLl9fZXNNb2R1bGUpcmV0dXJuIEE7dmFyIGU9e307aWYobnVsbCE9QSlmb3IodmFyIHQgaW4gQSlpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoQSx0KSl7dmFyIG49T2JqZWN0LmRlZmluZVByb3BlcnR5JiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSx0KTp7fTtuLmdldHx8bi5zZXQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxuKTplW3RdPUFbdF19cmV0dXJuIGUuZGVmYXVsdD1BLGV9T2JqZWN0LmtleXMoRSkuZm9yRWFjaCgoZnVuY3Rpb24oQSl7ImRlZmF1bHQiIT09QSYmIl9fZXNNb2R1bGUiIT09QSYmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLEEpfHwoZVtBXT1FW0FdKSl9KSk7dmFyIHU9e2FkZEV4dGVuc2lvbnNUb0NvbnRleHQ6ITB9LGw9L14oLio/KV8vO2Z1bmN0aW9uIGgoQSxlKXtzLmdsRW51bVRvU3RyaW5nKEEsMCk7dmFyIHQ9QS5nZXRFeHRlbnNpb24oZSk7aWYodCl7dmFyIG49e30saT1sLmV4ZWMoZSlbMV0scj0iXyIraTtmb3IodmFyIGEgaW4gdCl7dmFyIEI9dFthXSxjPSJmdW5jdGlvbiI9PXR5cGVvZiBCLGc9Yz9pOnIsRT1hO2EuZW5kc1dpdGgoZykmJihFPWEuc3Vic3RyaW5nKDAsYS5sZW5ndGgtZy5sZW5ndGgpKSx2b2lkIDAhPT1BW0VdP2N8fEFbRV09PT1CfHxvLndhcm4oRSxBW0VdLEIsYSk6Yz9BW0VdPWZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBLmFwcGx5KHQsYXJndW1lbnRzKX19KEIpOihBW0VdPUIsbltFXT1CKX1uLmNvbnN0cnVjdG9yPXtuYW1lOnQuY29uc3RydWN0b3IubmFtZX0scy5nbEVudW1Ub1N0cmluZyhuLDApfXJldHVybiB0fXZhciB3PVsiQU5HTEVfaW5zdGFuY2VkX2FycmF5cyIsIkVYVF9ibGVuZF9taW5tYXgiLCJFWFRfY29sb3JfYnVmZmVyX2Zsb2F0IiwiRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0IiwiRVhUX2Rpc2pvaW50X3RpbWVyX3F1ZXJ5IiwiRVhUX2Rpc2pvaW50X3RpbWVyX3F1ZXJ5X3dlYmdsMiIsIkVYVF9mcmFnX2RlcHRoIiwiRVhUX3NSR0IiLCJFWFRfc2hhZGVyX3RleHR1cmVfbG9kIiwiRVhUX3RleHR1cmVfZmlsdGVyX2FuaXNvdHJvcGljIiwiT0VTX2VsZW1lbnRfaW5kZXhfdWludCIsIk9FU19zdGFuZGFyZF9kZXJpdmF0aXZlcyIsIk9FU190ZXh0dXJlX2Zsb2F0IiwiT0VTX3RleHR1cmVfZmxvYXRfbGluZWFyIiwiT0VTX3RleHR1cmVfaGFsZl9mbG9hdCIsIk9FU190ZXh0dXJlX2hhbGZfZmxvYXRfbGluZWFyIiwiT0VTX3ZlcnRleF9hcnJheV9vYmplY3QiLCJXRUJHTF9jb2xvcl9idWZmZXJfZmxvYXQiLCJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfYXRjIiwiV0VCR0xfY29tcHJlc3NlZF90ZXh0dXJlX2V0YzEiLCJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfcHZydGMiLCJXRUJHTF9jb21wcmVzc2VkX3RleHR1cmVfczN0YyIsIldFQkdMX2NvbXByZXNzZWRfdGV4dHVyZV9zM3RjX3NyZ2IiLCJXRUJHTF9kZXB0aF90ZXh0dXJlIiwiV0VCR0xfZHJhd19idWZmZXJzIl07ZnVuY3Rpb24gQyhBKXtmb3IodmFyIGU9MDtlPHcubGVuZ3RoOysrZSloKEEsd1tlXSl9fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2UuX19lc01vZHVsZT0hMCxlLmRyYXdCdWZmZXJJbmZvPWksZS5kcmF3T2JqZWN0TGlzdD1mdW5jdGlvbihBLGUpe3ZhciB0PW51bGwscj1udWxsO2UuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aWYoITEhPT1lLmFjdGl2ZSl7dmFyIG89ZS5wcm9ncmFtSW5mbyxzPWUudmVydGV4QXJyYXlJbmZvfHxlLmJ1ZmZlckluZm8sYT0hMSxCPXZvaWQgMD09PWUudHlwZT9BLlRSSUFOR0xFUzplLnR5cGU7byE9PXQmJih0PW8sQS51c2VQcm9ncmFtKG8ucHJvZ3JhbSksYT0hMCksKGF8fHMhPT1yKSYmKHImJnIudmVydGV4QXJyYXlPYmplY3QmJiFzLnZlcnRleEFycmF5T2JqZWN0JiZBLmJpbmRWZXJ0ZXhBcnJheShudWxsKSxyPXMsbi5zZXRCdWZmZXJzQW5kQXR0cmlidXRlcyhBLG8scykpLG4uc2V0VW5pZm9ybXMobyxlLnVuaWZvcm1zKSxpKEEscyxCLGUuY291bnQsZS5vZmZzZXQsZS5pbnN0YW5jZUNvdW50KX19KSksci52ZXJ0ZXhBcnJheU9iamVjdCYmQS5iaW5kVmVydGV4QXJyYXkobnVsbCl9O3ZhciBuPWZ1bmN0aW9uKEEpe2lmKEEmJkEuX19lc01vZHVsZSlyZXR1cm4gQTt2YXIgZT17fTtpZihudWxsIT1BKWZvcih2YXIgdCBpbiBBKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLHQpKXt2YXIgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLHQpOnt9O24uZ2V0fHxuLnNldD9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LG4pOmVbdF09QVt0XX1yZXR1cm4gZS5kZWZhdWx0PUEsZX0odCg1KSk7ZnVuY3Rpb24gaShBLGUsdCxuLGkscil7dD12b2lkIDA9PT10P0EuVFJJQU5HTEVTOnQ7dmFyIG89ZS5pbmRpY2VzLHM9ZS5lbGVtZW50VHlwZSxhPXZvaWQgMD09PW4/ZS5udW1FbGVtZW50czpuO2k9dm9pZCAwPT09aT8wOmksc3x8bz92b2lkIDAhPT1yP0EuZHJhd0VsZW1lbnRzSW5zdGFuY2VkKHQsYSx2b2lkIDA9PT1zP0EuVU5TSUdORURfU0hPUlQ6ZS5lbGVtZW50VHlwZSxpLHIpOkEuZHJhd0VsZW1lbnRzKHQsYSx2b2lkIDA9PT1zP0EuVU5TSUdORURfU0hPUlQ6ZS5lbGVtZW50VHlwZSxpKTp2b2lkIDAhPT1yP0EuZHJhd0FycmF5c0luc3RhbmNlZCh0LGksYSxyKTpBLmRyYXdBcnJheXModCxpLGEpfX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5iaW5kRnJhbWVidWZmZXJJbmZvPWZ1bmN0aW9uKEEsZSx0KXt0PXR8fEEuRlJBTUVCVUZGRVIsZT8oQS5iaW5kRnJhbWVidWZmZXIodCxlLmZyYW1lYnVmZmVyKSxBLnZpZXdwb3J0KDAsMCxlLndpZHRoLGUuaGVpZ2h0KSk6KEEuYmluZEZyYW1lYnVmZmVyKHQsbnVsbCksQS52aWV3cG9ydCgwLDAsQS5kcmF3aW5nQnVmZmVyV2lkdGgsQS5kcmF3aW5nQnVmZmVySGVpZ2h0KSl9LGUuY3JlYXRlRnJhbWVidWZmZXJJbmZvPWZ1bmN0aW9uKEEsZSx0LHIpe3ZhciBCPUEuRlJBTUVCVUZGRVIsYz1BLmNyZWF0ZUZyYW1lYnVmZmVyKCk7QS5iaW5kRnJhbWVidWZmZXIoQixjKSx0PXR8fEEuZHJhd2luZ0J1ZmZlcldpZHRoLHI9cnx8QS5kcmF3aW5nQnVmZmVySGVpZ2h0O3ZhciBnPTAsRT17ZnJhbWVidWZmZXI6YyxhdHRhY2htZW50czpbXSx3aWR0aDp0LGhlaWdodDpyfTtyZXR1cm4oZT1lfHxvKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbz1lLmF0dGFjaG1lbnQsYz1lLmZvcm1hdCxRPWZ1bmN0aW9uKEEpe3JldHVybiBzW0FdfShjKTtpZihRfHwoUT0zNjA2NCtnKyspLCFvKWlmKGZ1bmN0aW9uKEEpe3JldHVybiBhW0FdfShjKSlvPUEuY3JlYXRlUmVuZGVyYnVmZmVyKCksQS5iaW5kUmVuZGVyYnVmZmVyKEEuUkVOREVSQlVGRkVSLG8pLEEucmVuZGVyYnVmZmVyU3RvcmFnZShBLlJFTkRFUkJVRkZFUixjLHQscik7ZWxzZXt2YXIgdT1PYmplY3QuYXNzaWduKHt9LGUpO3Uud2lkdGg9dCx1LmhlaWdodD1yLHZvaWQgMD09PXUuYXV0byYmKHUuYXV0bz0hMSx1Lm1pbj11Lm1pbnx8dS5taW5NYWd8fEEuTElORUFSLHUubWFnPXUubWFnfHx1Lm1pbk1hZ3x8QS5MSU5FQVIsdS53cmFwUz11LndyYXBTfHx1LndyYXB8fEEuQ0xBTVBfVE9fRURHRSx1LndyYXBUPXUud3JhcFR8fHUud3JhcHx8QS5DTEFNUF9UT19FREdFKSxvPW4uY3JlYXRlVGV4dHVyZShBLHUpfWlmKGkuaXNSZW5kZXJidWZmZXIoQSxvKSlBLmZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyKEIsUSxBLlJFTkRFUkJVRkZFUixvKTtlbHNle2lmKCFpLmlzVGV4dHVyZShBLG8pKXRocm93InVua25vd24gYXR0YWNobWVudCB0eXBlIjtBLmZyYW1lYnVmZmVyVGV4dHVyZTJEKEIsUSxlLnRleFRhcmdldHx8QS5URVhUVVJFXzJELG8sZS5sZXZlbHx8MCl9RS5hdHRhY2htZW50cy5wdXNoKG8pfSkpLEV9LGUucmVzaXplRnJhbWVidWZmZXJJbmZvPWZ1bmN0aW9uKEEsZSx0LHIscyl7cj1yfHxBLmRyYXdpbmdCdWZmZXJXaWR0aCxzPXN8fEEuZHJhd2luZ0J1ZmZlckhlaWdodCxlLndpZHRoPXIsZS5oZWlnaHQ9cywodD10fHxvKS5mb3JFYWNoKChmdW5jdGlvbih0LG8pe3ZhciBhPWUuYXR0YWNobWVudHNbb10sQj10LmZvcm1hdDtpZihpLmlzUmVuZGVyYnVmZmVyKEEsYSkpQS5iaW5kUmVuZGVyYnVmZmVyKEEuUkVOREVSQlVGRkVSLGEpLEEucmVuZGVyYnVmZmVyU3RvcmFnZShBLlJFTkRFUkJVRkZFUixCLHIscyk7ZWxzZXtpZighaS5pc1RleHR1cmUoQSxhKSl0aHJvdyJ1bmtub3duIGF0dGFjaG1lbnQgdHlwZSI7bi5yZXNpemVUZXh0dXJlKEEsYSx0LHIscyl9fSkpfTt2YXIgbj1yKHQoOCkpLGk9cih0KDApKTtmdW5jdGlvbiByKEEpe2lmKEEmJkEuX19lc01vZHVsZSlyZXR1cm4gQTt2YXIgZT17fTtpZihudWxsIT1BKWZvcih2YXIgdCBpbiBBKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLHQpKXt2YXIgbj1PYmplY3QuZGVmaW5lUHJvcGVydHkmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLHQpOnt9O24uZ2V0fHxuLnNldD9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LG4pOmVbdF09QVt0XX1yZXR1cm4gZS5kZWZhdWx0PUEsZX12YXIgbz1be2Zvcm1hdDo2NDA4LHR5cGU6NTEyMSxtaW46OTcyOSx3cmFwOjMzMDcxfSx7Zm9ybWF0OjM0MDQxfV0scz17MzQwNDE6MzMzMDYsNjQwMTozNjEyOCwzNjE2ODozNjEyOCw2NDAyOjM2MDk2LDMzMTg5OjM2MDk2fSxhPXszMjg1NDohMCwzMjg1NTohMCwzNjE5NDohMCwzNDA0MTohMCwzMzE4OTohMCw2NDAxOiEwLDM2MTY4OiEwfX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLl9fZXNNb2R1bGU9ITAsZS5jcmVhdGVWZXJ0ZXhBcnJheUluZm89ZnVuY3Rpb24oQSxlLHQpe3ZhciBpPUEuY3JlYXRlVmVydGV4QXJyYXkoKTtyZXR1cm4gQS5iaW5kVmVydGV4QXJyYXkoaSksZS5sZW5ndGh8fChlPVtlXSksZS5mb3JFYWNoKChmdW5jdGlvbihlKXtuLnNldEJ1ZmZlcnNBbmRBdHRyaWJ1dGVzKEEsZSx0KX0pKSxBLmJpbmRWZXJ0ZXhBcnJheShudWxsKSx7bnVtRWxlbWVudHM6dC5udW1FbGVtZW50cyxlbGVtZW50VHlwZTp0LmVsZW1lbnRUeXBlLHZlcnRleEFycmF5T2JqZWN0Oml9fSxlLmNyZWF0ZVZBT0FuZFNldEF0dHJpYnV0ZXM9aSxlLmNyZWF0ZVZBT0Zyb21CdWZmZXJJbmZvPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gaShBLGUuYXR0cmliU2V0dGVyc3x8ZSx0LmF0dHJpYnMsdC5pbmRpY2VzKX07dmFyIG49ZnVuY3Rpb24oQSl7aWYoQSYmQS5fX2VzTW9kdWxlKXJldHVybiBBO3ZhciBlPXt9O2lmKG51bGwhPUEpZm9yKHZhciB0IGluIEEpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEEsdCkpe3ZhciBuPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSYmT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcj9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsdCk6e307bi5nZXR8fG4uc2V0P09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQsbik6ZVt0XT1BW3RdfXJldHVybiBlLmRlZmF1bHQ9QSxlfSh0KDUpKTtmdW5jdGlvbiBpKEEsZSx0LGkpe3ZhciByPUEuY3JlYXRlVmVydGV4QXJyYXkoKTtyZXR1cm4gQS5iaW5kVmVydGV4QXJyYXkociksbi5zZXRBdHRyaWJ1dGVzKGUsdCksaSYmQS5iaW5kQnVmZmVyKEEuRUxFTUVOVF9BUlJBWV9CVUZGRVIsaSksQS5iaW5kVmVydGV4QXJyYXkobnVsbCkscn19XSl9LEEuZXhwb3J0cz1uKCl9LGZ1bmN0aW9uKEEsZSx0KXsoZnVuY3Rpb24oZSl7Y2xhc3MgdHtjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp0Lm5vd09iajt0aGlzLnN0YXJ0VGltZT0wLHRoaXMubm93T2JqPUEsdGhpcy5fcGF1c2VkVGltZT1udWxsfXN0YXRpYyBnZXQgVVNFX1BFUkZPUk1BTkNFKCl7cmV0dXJuITF9c3RhdGljIGdldCBsZWdhY3lEYXRlQ29kZSgpe3JldHVybntub3c6ZnVuY3Rpb24oKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX19fXN0YXRpYyBnZXQgbm93T2JqKCl7cmV0dXJuIHQuVVNFX1BFUkZPUk1BTkNFJiYidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGYucGVyZm9ybWFuY2UmJiJub3ciaW4gc2VsZi5wZXJmb3JtYW5jZT9zZWxmLnBlcmZvcm1hbmNlOkRhdGUubm93P0RhdGU6dC5sZWdhY3lEYXRlQ29kZX10aW1lKCl7cmV0dXJuIHRoaXMubm93T2JqLm5vdygpfXJlbGF0aXZlVGltZSgpe3JldHVybiB0aGlzLm5vd09iai5ub3coKX1zdGFydCgpe3RoaXMuc3RhcnRUaW1lPXRoaXMubm93T2JqLm5vdygpfXBhdXNlKCl7dGhpcy5fcGF1c2VkVGltZXx8KHRoaXMuX3BhdXNlZFRpbWU9dGhpcy50aW1lRWxhcHNlZCgpKX1wbGF5KCl7dGhpcy5fcGF1c2VkVGltZSYmKHRoaXMuc3RhcnRUaW1lPXRoaXMubm93T2JqLm5vdygpLXRoaXMuX3BhdXNlZFRpbWUsdGhpcy5fcGF1c2VkVGltZT1udWxsKX10aW1lRWxhcHNlZCgpe2lmKHRoaXMuX3BhdXNlZFRpbWUpcmV0dXJuIHRoaXMuX3BhdXNlZFRpbWU7cmV0dXJuIHRoaXMubm93T2JqLm5vdygpLXRoaXMuc3RhcnRUaW1lfXNldFRpbWVvdXQoQSx0KXtyZXR1cm4gZS5zZXRUaW1lb3V0KEEsdCl9Y2xlYXJUaW1lb3V0KEEpe2UuY2xlYXJUaW1lb3V0KEEpfX1BLmV4cG9ydHM9dH0pLmNhbGwodGhpcyx0KDE1KSl9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoOSksaT10KDI0KTtjbGFzcyBye2NvbnN0cnVjdG9yKEEsZSx0LGkpe3N3aXRjaCh0aGlzLmlkPUF8fG4oKSx0aGlzLm5hbWU9ZSx0aGlzLnR5cGU9dCx0aGlzLmlzQ2xvdWQ9aSx0aGlzLnR5cGUpe2Nhc2Ugci5TQ0FMQVJfVFlQRTp0aGlzLnZhbHVlPTA7YnJlYWs7Y2FzZSByLkxJU1RfVFlQRTp0aGlzLnZhbHVlPVtdO2JyZWFrO2Nhc2Ugci5CUk9BRENBU1RfTUVTU0FHRV9UWVBFOnRoaXMudmFsdWU9dGhpcy5uYW1lO2JyZWFrO2RlZmF1bHQ6Y29uc29sZS53YXJuKCJJbnZhbGlkIHZhcmlhYmxlIHR5cGU6ICIuY29uY2F0KHRoaXMudHlwZSkpfX10b1hNTChBKXtyZXR1cm4gQT0hMD09PUEsJzx2YXJpYWJsZSB0eXBlPSInLmNvbmNhdCh0aGlzLnR5cGUsJyIgaWQ9IicpLmNvbmNhdCh0aGlzLmlkLCciIGlzbG9jYWw9IicpLmNvbmNhdChBLCciIGlzY2xvdWQ9IicpLmNvbmNhdCh0aGlzLmlzQ2xvdWQsJyI+JykuY29uY2F0KGkodGhpcy5uYW1lKSwiPC92YXJpYWJsZT4iKX1zdGF0aWMgZ2V0IFNDQUxBUl9UWVBFKCl7cmV0dXJuIiJ9c3RhdGljIGdldCBMSVNUX1RZUEUoKXtyZXR1cm4ibGlzdCJ9c3RhdGljIGdldCBCUk9BRENBU1RfTUVTU0FHRV9UWVBFKCl7cmV0dXJuImJyb2FkY2FzdF9tc2cifX1BLmV4cG9ydHM9cn0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24oQSl7Ci8qIQogKiBUaGUgYnVmZmVyIG1vZHVsZSBmcm9tIG5vZGUuanMsIGZvciB0aGUgYnJvd3Nlci4KICoKICogQGF1dGhvciAgIEZlcm9zcyBBYm91a2hhZGlqZWggPGh0dHA6Ly9mZXJvc3Mub3JnPgogKiBAbGljZW5zZSAgTUlUCiAqLwp2YXIgbj10KDEyNyksaT10KDEyOCkscj10KDEyOSk7ZnVuY3Rpb24gbygpe3JldHVybiBhLlRZUEVEX0FSUkFZX1NVUFBPUlQ/MjE0NzQ4MzY0NzoxMDczNzQxODIzfWZ1bmN0aW9uIHMoQSxlKXtpZihvKCk8ZSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCB0eXBlZCBhcnJheSBsZW5ndGgiKTtyZXR1cm4gYS5UWVBFRF9BUlJBWV9TVVBQT1JUPyhBPW5ldyBVaW50OEFycmF5KGUpKS5fX3Byb3RvX189YS5wcm90b3R5cGU6KG51bGw9PT1BJiYoQT1uZXcgYShlKSksQS5sZW5ndGg9ZSksQX1mdW5jdGlvbiBhKEEsZSx0KXtpZighKGEuVFlQRURfQVJSQVlfU1VQUE9SVHx8dGhpcyBpbnN0YW5jZW9mIGEpKXJldHVybiBuZXcgYShBLGUsdCk7aWYoIm51bWJlciI9PXR5cGVvZiBBKXtpZigic3RyaW5nIj09dHlwZW9mIGUpdGhyb3cgbmV3IEVycm9yKCJJZiBlbmNvZGluZyBpcyBzcGVjaWZpZWQgdGhlbiB0aGUgZmlyc3QgYXJndW1lbnQgbXVzdCBiZSBhIHN0cmluZyIpO3JldHVybiBnKHRoaXMsQSl9cmV0dXJuIEIodGhpcyxBLGUsdCl9ZnVuY3Rpb24gQihBLGUsdCxuKXtpZigibnVtYmVyIj09dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcignInZhbHVlIiBhcmd1bWVudCBtdXN0IG5vdCBiZSBhIG51bWJlcicpO3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgQXJyYXlCdWZmZXImJmUgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcj9mdW5jdGlvbihBLGUsdCxuKXtpZihlLmJ5dGVMZW5ndGgsdDwwfHxlLmJ5dGVMZW5ndGg8dCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiJ29mZnNldCcgaXMgb3V0IG9mIGJvdW5kcyIpO2lmKGUuYnl0ZUxlbmd0aDx0KyhufHwwKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiJ2xlbmd0aCcgaXMgb3V0IG9mIGJvdW5kcyIpO2U9dm9pZCAwPT09dCYmdm9pZCAwPT09bj9uZXcgVWludDhBcnJheShlKTp2b2lkIDA9PT1uP25ldyBVaW50OEFycmF5KGUsdCk6bmV3IFVpbnQ4QXJyYXkoZSx0LG4pO2EuVFlQRURfQVJSQVlfU1VQUE9SVD8oQT1lKS5fX3Byb3RvX189YS5wcm90b3R5cGU6QT1FKEEsZSk7cmV0dXJuIEF9KEEsZSx0LG4pOiJzdHJpbmciPT10eXBlb2YgZT9mdW5jdGlvbihBLGUsdCl7InN0cmluZyI9PXR5cGVvZiB0JiYiIiE9PXR8fCh0PSJ1dGY4Iik7aWYoIWEuaXNFbmNvZGluZyh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCciZW5jb2RpbmciIG11c3QgYmUgYSB2YWxpZCBzdHJpbmcgZW5jb2RpbmcnKTt2YXIgbj0wfHUoZSx0KSxpPShBPXMoQSxuKSkud3JpdGUoZSx0KTtpIT09biYmKEE9QS5zbGljZSgwLGkpKTtyZXR1cm4gQX0oQSxlLHQpOmZ1bmN0aW9uKEEsZSl7aWYoYS5pc0J1ZmZlcihlKSl7dmFyIHQ9MHxRKGUubGVuZ3RoKTtyZXR1cm4gMD09PShBPXMoQSx0KSkubGVuZ3RofHxlLmNvcHkoQSwwLDAsdCksQX1pZihlKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIEFycmF5QnVmZmVyJiZlLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyfHwibGVuZ3RoImluIGUpcmV0dXJuIm51bWJlciIhPXR5cGVvZiBlLmxlbmd0aHx8KG49ZS5sZW5ndGgpIT1uP3MoQSwwKTpFKEEsZSk7aWYoIkJ1ZmZlciI9PT1lLnR5cGUmJnIoZS5kYXRhKSlyZXR1cm4gRShBLGUuZGF0YSl9dmFyIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiRmlyc3QgYXJndW1lbnQgbXVzdCBiZSBhIHN0cmluZywgQnVmZmVyLCBBcnJheUJ1ZmZlciwgQXJyYXksIG9yIGFycmF5LWxpa2Ugb2JqZWN0LiIpfShBLGUpfWZ1bmN0aW9uIGMoQSl7aWYoIm51bWJlciIhPXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoJyJzaXplIiBhcmd1bWVudCBtdXN0IGJlIGEgbnVtYmVyJyk7aWYoQTwwKXRocm93IG5ldyBSYW5nZUVycm9yKCcic2l6ZSIgYXJndW1lbnQgbXVzdCBub3QgYmUgbmVnYXRpdmUnKX1mdW5jdGlvbiBnKEEsZSl7aWYoYyhlKSxBPXMoQSxlPDA/MDowfFEoZSkpLCFhLlRZUEVEX0FSUkFZX1NVUFBPUlQpZm9yKHZhciB0PTA7dDxlOysrdClBW3RdPTA7cmV0dXJuIEF9ZnVuY3Rpb24gRShBLGUpe3ZhciB0PWUubGVuZ3RoPDA/MDowfFEoZS5sZW5ndGgpO0E9cyhBLHQpO2Zvcih2YXIgbj0wO248dDtuKz0xKUFbbl09MjU1JmVbbl07cmV0dXJuIEF9ZnVuY3Rpb24gUShBKXtpZihBPj1vKCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkF0dGVtcHQgdG8gYWxsb2NhdGUgQnVmZmVyIGxhcmdlciB0aGFuIG1heGltdW0gc2l6ZTogMHgiK28oKS50b1N0cmluZygxNikrIiBieXRlcyIpO3JldHVybiAwfEF9ZnVuY3Rpb24gdShBLGUpe2lmKGEuaXNCdWZmZXIoQSkpcmV0dXJuIEEubGVuZ3RoO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgQXJyYXlCdWZmZXImJiJmdW5jdGlvbiI9PXR5cGVvZiBBcnJheUJ1ZmZlci5pc1ZpZXcmJihBcnJheUJ1ZmZlci5pc1ZpZXcoQSl8fEEgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcikpcmV0dXJuIEEuYnl0ZUxlbmd0aDsic3RyaW5nIiE9dHlwZW9mIEEmJihBPSIiK0EpO3ZhciB0PUEubGVuZ3RoO2lmKDA9PT10KXJldHVybiAwO2Zvcih2YXIgbj0hMTs7KXN3aXRjaChlKXtjYXNlImFzY2lpIjpjYXNlImxhdGluMSI6Y2FzZSJiaW5hcnkiOnJldHVybiB0O2Nhc2UidXRmOCI6Y2FzZSJ1dGYtOCI6Y2FzZSB2b2lkIDA6cmV0dXJuIGooQSkubGVuZ3RoO2Nhc2UidWNzMiI6Y2FzZSJ1Y3MtMiI6Y2FzZSJ1dGYxNmxlIjpjYXNlInV0Zi0xNmxlIjpyZXR1cm4gMip0O2Nhc2UiaGV4IjpyZXR1cm4gdD4+PjE7Y2FzZSJiYXNlNjQiOnJldHVybiBKKEEpLmxlbmd0aDtkZWZhdWx0OmlmKG4pcmV0dXJuIGooQSkubGVuZ3RoO2U9KCIiK2UpLnRvTG93ZXJDYXNlKCksbj0hMH19ZnVuY3Rpb24gbChBLGUsdCl7dmFyIG49ITE7aWYoKHZvaWQgMD09PWV8fGU8MCkmJihlPTApLGU+dGhpcy5sZW5ndGgpcmV0dXJuIiI7aWYoKHZvaWQgMD09PXR8fHQ+dGhpcy5sZW5ndGgpJiYodD10aGlzLmxlbmd0aCksdDw9MClyZXR1cm4iIjtpZigodD4+Pj0wKTw9KGU+Pj49MCkpcmV0dXJuIiI7Zm9yKEF8fChBPSJ1dGY4Iik7Oylzd2l0Y2goQSl7Y2FzZSJoZXgiOnJldHVybiBVKHRoaXMsZSx0KTtjYXNlInV0ZjgiOmNhc2UidXRmLTgiOnJldHVybiBZKHRoaXMsZSx0KTtjYXNlImFzY2lpIjpyZXR1cm4gZih0aGlzLGUsdCk7Y2FzZSJsYXRpbjEiOmNhc2UiYmluYXJ5IjpyZXR1cm4gTih0aGlzLGUsdCk7Y2FzZSJiYXNlNjQiOnJldHVybiBEKHRoaXMsZSx0KTtjYXNlInVjczIiOmNhc2UidWNzLTIiOmNhc2UidXRmMTZsZSI6Y2FzZSJ1dGYtMTZsZSI6cmV0dXJuIHkodGhpcyxlLHQpO2RlZmF1bHQ6aWYobil0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmtub3duIGVuY29kaW5nOiAiK0EpO0E9KEErIiIpLnRvTG93ZXJDYXNlKCksbj0hMH19ZnVuY3Rpb24gaChBLGUsdCl7dmFyIG49QVtlXTtBW2VdPUFbdF0sQVt0XT1ufWZ1bmN0aW9uIHcoQSxlLHQsbixpKXtpZigwPT09QS5sZW5ndGgpcmV0dXJuLTE7aWYoInN0cmluZyI9PXR5cGVvZiB0PyhuPXQsdD0wKTp0PjIxNDc0ODM2NDc/dD0yMTQ3NDgzNjQ3OnQ8LTIxNDc0ODM2NDgmJih0PS0yMTQ3NDgzNjQ4KSx0PSt0LGlzTmFOKHQpJiYodD1pPzA6QS5sZW5ndGgtMSksdDwwJiYodD1BLmxlbmd0aCt0KSx0Pj1BLmxlbmd0aCl7aWYoaSlyZXR1cm4tMTt0PUEubGVuZ3RoLTF9ZWxzZSBpZih0PDApe2lmKCFpKXJldHVybi0xO3Q9MH1pZigic3RyaW5nIj09dHlwZW9mIGUmJihlPWEuZnJvbShlLG4pKSxhLmlzQnVmZmVyKGUpKXJldHVybiAwPT09ZS5sZW5ndGg/LTE6QyhBLGUsdCxuLGkpO2lmKCJudW1iZXIiPT10eXBlb2YgZSlyZXR1cm4gZSY9MjU1LGEuVFlQRURfQVJSQVlfU1VQUE9SVCYmImZ1bmN0aW9uIj09dHlwZW9mIFVpbnQ4QXJyYXkucHJvdG90eXBlLmluZGV4T2Y/aT9VaW50OEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoQSxlLHQpOlVpbnQ4QXJyYXkucHJvdG90eXBlLmxhc3RJbmRleE9mLmNhbGwoQSxlLHQpOkMoQSxbZV0sdCxuLGkpO3Rocm93IG5ldyBUeXBlRXJyb3IoInZhbCBtdXN0IGJlIHN0cmluZywgbnVtYmVyIG9yIEJ1ZmZlciIpfWZ1bmN0aW9uIEMoQSxlLHQsbixpKXt2YXIgcixvPTEscz1BLmxlbmd0aCxhPWUubGVuZ3RoO2lmKHZvaWQgMCE9PW4mJigidWNzMiI9PT0obj1TdHJpbmcobikudG9Mb3dlckNhc2UoKSl8fCJ1Y3MtMiI9PT1ufHwidXRmMTZsZSI9PT1ufHwidXRmLTE2bGUiPT09bikpe2lmKEEubGVuZ3RoPDJ8fGUubGVuZ3RoPDIpcmV0dXJuLTE7bz0yLHMvPTIsYS89Mix0Lz0yfWZ1bmN0aW9uIEIoQSxlKXtyZXR1cm4gMT09PW8/QVtlXTpBLnJlYWRVSW50MTZCRShlKm8pfWlmKGkpe3ZhciBjPS0xO2ZvcihyPXQ7cjxzO3IrKylpZihCKEEscik9PT1CKGUsLTE9PT1jPzA6ci1jKSl7aWYoLTE9PT1jJiYoYz1yKSxyLWMrMT09PWEpcmV0dXJuIGMqb31lbHNlLTEhPT1jJiYoci09ci1jKSxjPS0xfWVsc2UgZm9yKHQrYT5zJiYodD1zLWEpLHI9dDtyPj0wO3ItLSl7Zm9yKHZhciBnPSEwLEU9MDtFPGE7RSsrKWlmKEIoQSxyK0UpIT09QihlLEUpKXtnPSExO2JyZWFrfWlmKGcpcmV0dXJuIHJ9cmV0dXJuLTF9ZnVuY3Rpb24gSShBLGUsdCxuKXt0PU51bWJlcih0KXx8MDt2YXIgaT1BLmxlbmd0aC10O24/KG49TnVtYmVyKG4pKT5pJiYobj1pKTpuPWk7dmFyIHI9ZS5sZW5ndGg7aWYociUyIT0wKXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgaGV4IHN0cmluZyIpO24+ci8yJiYobj1yLzIpO2Zvcih2YXIgbz0wO288bjsrK28pe3ZhciBzPXBhcnNlSW50KGUuc3Vic3RyKDIqbywyKSwxNik7aWYoaXNOYU4ocykpcmV0dXJuIG87QVt0K29dPXN9cmV0dXJuIG99ZnVuY3Rpb24gTShBLGUsdCxuKXtyZXR1cm4geihqKGUsQS5sZW5ndGgtdCksQSx0LG4pfWZ1bmN0aW9uIGQoQSxlLHQsbil7cmV0dXJuIHooZnVuY3Rpb24oQSl7Zm9yKHZhciBlPVtdLHQ9MDt0PEEubGVuZ3RoOysrdCllLnB1c2goMjU1JkEuY2hhckNvZGVBdCh0KSk7cmV0dXJuIGV9KGUpLEEsdCxuKX1mdW5jdGlvbiBwKEEsZSx0LG4pe3JldHVybiBkKEEsZSx0LG4pfWZ1bmN0aW9uIG0oQSxlLHQsbil7cmV0dXJuIHooSihlKSxBLHQsbil9ZnVuY3Rpb24gRihBLGUsdCxuKXtyZXR1cm4geihmdW5jdGlvbihBLGUpe2Zvcih2YXIgdCxuLGkscj1bXSxvPTA7bzxBLmxlbmd0aCYmISgoZS09Mik8MCk7KytvKXQ9QS5jaGFyQ29kZUF0KG8pLG49dD4+OCxpPXQlMjU2LHIucHVzaChpKSxyLnB1c2gobik7cmV0dXJuIHJ9KGUsQS5sZW5ndGgtdCksQSx0LG4pfWZ1bmN0aW9uIEQoQSxlLHQpe3JldHVybiAwPT09ZSYmdD09PUEubGVuZ3RoP24uZnJvbUJ5dGVBcnJheShBKTpuLmZyb21CeXRlQXJyYXkoQS5zbGljZShlLHQpKX1mdW5jdGlvbiBZKEEsZSx0KXt0PU1hdGgubWluKEEubGVuZ3RoLHQpO2Zvcih2YXIgbj1bXSxpPWU7aTx0Oyl7dmFyIHIsbyxzLGEsQj1BW2ldLGM9bnVsbCxnPUI+MjM5PzQ6Qj4yMjM/MzpCPjE5MT8yOjE7aWYoaStnPD10KXN3aXRjaChnKXtjYXNlIDE6QjwxMjgmJihjPUIpO2JyZWFrO2Nhc2UgMjoxMjg9PSgxOTImKHI9QVtpKzFdKSkmJihhPSgzMSZCKTw8Nnw2MyZyKT4xMjcmJihjPWEpO2JyZWFrO2Nhc2UgMzpyPUFbaSsxXSxvPUFbaSsyXSwxMjg9PSgxOTImcikmJjEyOD09KDE5MiZvKSYmKGE9KDE1JkIpPDwxMnwoNjMmcik8PDZ8NjMmbyk+MjA0NyYmKGE8NTUyOTZ8fGE+NTczNDMpJiYoYz1hKTticmVhaztjYXNlIDQ6cj1BW2krMV0sbz1BW2krMl0scz1BW2krM10sMTI4PT0oMTkyJnIpJiYxMjg9PSgxOTImbykmJjEyOD09KDE5MiZzKSYmKGE9KDE1JkIpPDwxOHwoNjMmcik8PDEyfCg2MyZvKTw8Nnw2MyZzKT42NTUzNSYmYTwxMTE0MTEyJiYoYz1hKX1udWxsPT09Yz8oYz02NTUzMyxnPTEpOmM+NjU1MzUmJihjLT02NTUzNixuLnB1c2goYz4+PjEwJjEwMjN8NTUyOTYpLGM9NTYzMjB8MTAyMyZjKSxuLnB1c2goYyksaSs9Z31yZXR1cm4gZnVuY3Rpb24oQSl7dmFyIGU9QS5sZW5ndGg7aWYoZTw9NDA5NilyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsQSk7dmFyIHQ9IiIsbj0wO2Zvcig7bjxlOyl0Kz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyxBLnNsaWNlKG4sbis9NDA5NikpO3JldHVybiB0fShuKX1lLkJ1ZmZlcj1hLGUuU2xvd0J1ZmZlcj1mdW5jdGlvbihBKXsrQSE9QSYmKEE9MCk7cmV0dXJuIGEuYWxsb2MoK0EpfSxlLklOU1BFQ1RfTUFYX0JZVEVTPTUwLGEuVFlQRURfQVJSQVlfU1VQUE9SVD12b2lkIDAhPT1BLlRZUEVEX0FSUkFZX1NVUFBPUlQ/QS5UWVBFRF9BUlJBWV9TVVBQT1JUOmZ1bmN0aW9uKCl7dHJ5e3ZhciBBPW5ldyBVaW50OEFycmF5KDEpO3JldHVybiBBLl9fcHJvdG9fXz17X19wcm90b19fOlVpbnQ4QXJyYXkucHJvdG90eXBlLGZvbzpmdW5jdGlvbigpe3JldHVybiA0Mn19LDQyPT09QS5mb28oKSYmImZ1bmN0aW9uIj09dHlwZW9mIEEuc3ViYXJyYXkmJjA9PT1BLnN1YmFycmF5KDEsMSkuYnl0ZUxlbmd0aH1jYXRjaChBKXtyZXR1cm4hMX19KCksZS5rTWF4TGVuZ3RoPW8oKSxhLnBvb2xTaXplPTgxOTIsYS5fYXVnbWVudD1mdW5jdGlvbihBKXtyZXR1cm4gQS5fX3Byb3RvX189YS5wcm90b3R5cGUsQX0sYS5mcm9tPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQihudWxsLEEsZSx0KX0sYS5UWVBFRF9BUlJBWV9TVVBQT1JUJiYoYS5wcm90b3R5cGUuX19wcm90b19fPVVpbnQ4QXJyYXkucHJvdG90eXBlLGEuX19wcm90b19fPVVpbnQ4QXJyYXksInVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC5zcGVjaWVzJiZhW1N5bWJvbC5zcGVjaWVzXT09PWEmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5zcGVjaWVzLHt2YWx1ZTpudWxsLGNvbmZpZ3VyYWJsZTohMH0pKSxhLmFsbG9jPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIGMoZSksZTw9MD9zKEEsZSk6dm9pZCAwIT09dD8ic3RyaW5nIj09dHlwZW9mIG4/cyhBLGUpLmZpbGwodCxuKTpzKEEsZSkuZmlsbCh0KTpzKEEsZSl9KG51bGwsQSxlLHQpfSxhLmFsbG9jVW5zYWZlPWZ1bmN0aW9uKEEpe3JldHVybiBnKG51bGwsQSl9LGEuYWxsb2NVbnNhZmVTbG93PWZ1bmN0aW9uKEEpe3JldHVybiBnKG51bGwsQSl9LGEuaXNCdWZmZXI9ZnVuY3Rpb24oQSl7cmV0dXJuIShudWxsPT1BfHwhQS5faXNCdWZmZXIpfSxhLmNvbXBhcmU9ZnVuY3Rpb24oQSxlKXtpZighYS5pc0J1ZmZlcihBKXx8IWEuaXNCdWZmZXIoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJndW1lbnRzIG11c3QgYmUgQnVmZmVycyIpO2lmKEE9PT1lKXJldHVybiAwO2Zvcih2YXIgdD1BLmxlbmd0aCxuPWUubGVuZ3RoLGk9MCxyPU1hdGgubWluKHQsbik7aTxyOysraSlpZihBW2ldIT09ZVtpXSl7dD1BW2ldLG49ZVtpXTticmVha31yZXR1cm4gdDxuPy0xOm48dD8xOjB9LGEuaXNFbmNvZGluZz1mdW5jdGlvbihBKXtzd2l0Y2goU3RyaW5nKEEpLnRvTG93ZXJDYXNlKCkpe2Nhc2UiaGV4IjpjYXNlInV0ZjgiOmNhc2UidXRmLTgiOmNhc2UiYXNjaWkiOmNhc2UibGF0aW4xIjpjYXNlImJpbmFyeSI6Y2FzZSJiYXNlNjQiOmNhc2UidWNzMiI6Y2FzZSJ1Y3MtMiI6Y2FzZSJ1dGYxNmxlIjpjYXNlInV0Zi0xNmxlIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX0sYS5jb25jYXQ9ZnVuY3Rpb24oQSxlKXtpZighcihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCcibGlzdCIgYXJndW1lbnQgbXVzdCBiZSBhbiBBcnJheSBvZiBCdWZmZXJzJyk7aWYoMD09PUEubGVuZ3RoKXJldHVybiBhLmFsbG9jKDApO3ZhciB0O2lmKHZvaWQgMD09PWUpZm9yKGU9MCx0PTA7dDxBLmxlbmd0aDsrK3QpZSs9QVt0XS5sZW5ndGg7dmFyIG49YS5hbGxvY1Vuc2FmZShlKSxpPTA7Zm9yKHQ9MDt0PEEubGVuZ3RoOysrdCl7dmFyIG89QVt0XTtpZighYS5pc0J1ZmZlcihvKSl0aHJvdyBuZXcgVHlwZUVycm9yKCcibGlzdCIgYXJndW1lbnQgbXVzdCBiZSBhbiBBcnJheSBvZiBCdWZmZXJzJyk7by5jb3B5KG4saSksaSs9by5sZW5ndGh9cmV0dXJuIG59LGEuYnl0ZUxlbmd0aD11LGEucHJvdG90eXBlLl9pc0J1ZmZlcj0hMCxhLnByb3RvdHlwZS5zd2FwMTY9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmxlbmd0aDtpZihBJTIhPTApdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkJ1ZmZlciBzaXplIG11c3QgYmUgYSBtdWx0aXBsZSBvZiAxNi1iaXRzIik7Zm9yKHZhciBlPTA7ZTxBO2UrPTIpaCh0aGlzLGUsZSsxKTtyZXR1cm4gdGhpc30sYS5wcm90b3R5cGUuc3dhcDMyPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5sZW5ndGg7aWYoQSU0IT0wKXRocm93IG5ldyBSYW5nZUVycm9yKCJCdWZmZXIgc2l6ZSBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgMzItYml0cyIpO2Zvcih2YXIgZT0wO2U8QTtlKz00KWgodGhpcyxlLGUrMyksaCh0aGlzLGUrMSxlKzIpO3JldHVybiB0aGlzfSxhLnByb3RvdHlwZS5zd2FwNjQ9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmxlbmd0aDtpZihBJTghPTApdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkJ1ZmZlciBzaXplIG11c3QgYmUgYSBtdWx0aXBsZSBvZiA2NC1iaXRzIik7Zm9yKHZhciBlPTA7ZTxBO2UrPTgpaCh0aGlzLGUsZSs3KSxoKHRoaXMsZSsxLGUrNiksaCh0aGlzLGUrMixlKzUpLGgodGhpcyxlKzMsZSs0KTtyZXR1cm4gdGhpc30sYS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgQT0wfHRoaXMubGVuZ3RoO3JldHVybiAwPT09QT8iIjowPT09YXJndW1lbnRzLmxlbmd0aD9ZKHRoaXMsMCxBKTpsLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sYS5wcm90b3R5cGUuZXF1YWxzPWZ1bmN0aW9uKEEpe2lmKCFhLmlzQnVmZmVyKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIkFyZ3VtZW50IG11c3QgYmUgYSBCdWZmZXIiKTtyZXR1cm4gdGhpcz09PUF8fDA9PT1hLmNvbXBhcmUodGhpcyxBKX0sYS5wcm90b3R5cGUuaW5zcGVjdD1mdW5jdGlvbigpe3ZhciBBPSIiLHQ9ZS5JTlNQRUNUX01BWF9CWVRFUztyZXR1cm4gdGhpcy5sZW5ndGg+MCYmKEE9dGhpcy50b1N0cmluZygiaGV4IiwwLHQpLm1hdGNoKC8uezJ9L2cpLmpvaW4oIiAiKSx0aGlzLmxlbmd0aD50JiYoQSs9IiAuLi4gIikpLCI8QnVmZmVyICIrQSsiPiJ9LGEucHJvdG90eXBlLmNvbXBhcmU9ZnVuY3Rpb24oQSxlLHQsbixpKXtpZighYS5pc0J1ZmZlcihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcmd1bWVudCBtdXN0IGJlIGEgQnVmZmVyIik7aWYodm9pZCAwPT09ZSYmKGU9MCksdm9pZCAwPT09dCYmKHQ9QT9BLmxlbmd0aDowKSx2b2lkIDA9PT1uJiYobj0wKSx2b2lkIDA9PT1pJiYoaT10aGlzLmxlbmd0aCksZTwwfHx0PkEubGVuZ3RofHxuPDB8fGk+dGhpcy5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIm91dCBvZiByYW5nZSBpbmRleCIpO2lmKG4+PWkmJmU+PXQpcmV0dXJuIDA7aWYobj49aSlyZXR1cm4tMTtpZihlPj10KXJldHVybiAxO2lmKHRoaXM9PT1BKXJldHVybiAwO2Zvcih2YXIgcj0oaT4+Pj0wKS0obj4+Pj0wKSxvPSh0Pj4+PTApLShlPj4+PTApLHM9TWF0aC5taW4ocixvKSxCPXRoaXMuc2xpY2UobixpKSxjPUEuc2xpY2UoZSx0KSxnPTA7ZzxzOysrZylpZihCW2ddIT09Y1tnXSl7cj1CW2ddLG89Y1tnXTticmVha31yZXR1cm4gcjxvPy0xOm88cj8xOjB9LGEucHJvdG90eXBlLmluY2x1ZGVzPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4tMSE9PXRoaXMuaW5kZXhPZihBLGUsdCl9LGEucHJvdG90eXBlLmluZGV4T2Y9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiB3KHRoaXMsQSxlLHQsITApfSxhLnByb3RvdHlwZS5sYXN0SW5kZXhPZj1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIHcodGhpcyxBLGUsdCwhMSl9LGEucHJvdG90eXBlLndyaXRlPWZ1bmN0aW9uKEEsZSx0LG4pe2lmKHZvaWQgMD09PWUpbj0idXRmOCIsdD10aGlzLmxlbmd0aCxlPTA7ZWxzZSBpZih2b2lkIDA9PT10JiYic3RyaW5nIj09dHlwZW9mIGUpbj1lLHQ9dGhpcy5sZW5ndGgsZT0wO2Vsc2V7aWYoIWlzRmluaXRlKGUpKXRocm93IG5ldyBFcnJvcigiQnVmZmVyLndyaXRlKHN0cmluZywgZW5jb2RpbmcsIG9mZnNldFssIGxlbmd0aF0pIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiKTtlfD0wLGlzRmluaXRlKHQpPyh0fD0wLHZvaWQgMD09PW4mJihuPSJ1dGY4IikpOihuPXQsdD12b2lkIDApfXZhciBpPXRoaXMubGVuZ3RoLWU7aWYoKHZvaWQgMD09PXR8fHQ+aSkmJih0PWkpLEEubGVuZ3RoPjAmJih0PDB8fGU8MCl8fGU+dGhpcy5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkF0dGVtcHQgdG8gd3JpdGUgb3V0c2lkZSBidWZmZXIgYm91bmRzIik7bnx8KG49InV0ZjgiKTtmb3IodmFyIHI9ITE7Oylzd2l0Y2gobil7Y2FzZSJoZXgiOnJldHVybiBJKHRoaXMsQSxlLHQpO2Nhc2UidXRmOCI6Y2FzZSJ1dGYtOCI6cmV0dXJuIE0odGhpcyxBLGUsdCk7Y2FzZSJhc2NpaSI6cmV0dXJuIGQodGhpcyxBLGUsdCk7Y2FzZSJsYXRpbjEiOmNhc2UiYmluYXJ5IjpyZXR1cm4gcCh0aGlzLEEsZSx0KTtjYXNlImJhc2U2NCI6cmV0dXJuIG0odGhpcyxBLGUsdCk7Y2FzZSJ1Y3MyIjpjYXNlInVjcy0yIjpjYXNlInV0ZjE2bGUiOmNhc2UidXRmLTE2bGUiOnJldHVybiBGKHRoaXMsQSxlLHQpO2RlZmF1bHQ6aWYocil0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmtub3duIGVuY29kaW5nOiAiK24pO249KCIiK24pLnRvTG93ZXJDYXNlKCkscj0hMH19LGEucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybnt0eXBlOiJCdWZmZXIiLGRhdGE6QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodGhpcy5fYXJyfHx0aGlzLDApfX07ZnVuY3Rpb24gZihBLGUsdCl7dmFyIG49IiI7dD1NYXRoLm1pbihBLmxlbmd0aCx0KTtmb3IodmFyIGk9ZTtpPHQ7KytpKW4rPVN0cmluZy5mcm9tQ2hhckNvZGUoMTI3JkFbaV0pO3JldHVybiBufWZ1bmN0aW9uIE4oQSxlLHQpe3ZhciBuPSIiO3Q9TWF0aC5taW4oQS5sZW5ndGgsdCk7Zm9yKHZhciBpPWU7aTx0OysraSluKz1TdHJpbmcuZnJvbUNoYXJDb2RlKEFbaV0pO3JldHVybiBufWZ1bmN0aW9uIFUoQSxlLHQpe3ZhciBuPUEubGVuZ3RoOyghZXx8ZTwwKSYmKGU9MCksKCF0fHx0PDB8fHQ+bikmJih0PW4pO2Zvcih2YXIgaT0iIixyPWU7cjx0OysrcilpKz1rKEFbcl0pO3JldHVybiBpfWZ1bmN0aW9uIHkoQSxlLHQpe2Zvcih2YXIgbj1BLnNsaWNlKGUsdCksaT0iIixyPTA7cjxuLmxlbmd0aDtyKz0yKWkrPVN0cmluZy5mcm9tQ2hhckNvZGUobltyXSsyNTYqbltyKzFdKTtyZXR1cm4gaX1mdW5jdGlvbiBUKEEsZSx0KXtpZihBJTEhPTB8fEE8MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigib2Zmc2V0IGlzIG5vdCB1aW50Iik7aWYoQStlPnQpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYmV5b25kIGJ1ZmZlciBsZW5ndGgiKX1mdW5jdGlvbiB4KEEsZSx0LG4saSxyKXtpZighYS5pc0J1ZmZlcihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCciYnVmZmVyIiBhcmd1bWVudCBtdXN0IGJlIGEgQnVmZmVyIGluc3RhbmNlJyk7aWYoZT5pfHxlPHIpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJyJ2YWx1ZSIgYXJndW1lbnQgaXMgb3V0IG9mIGJvdW5kcycpO2lmKHQrbj5BLmxlbmd0aCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW5kZXggb3V0IG9mIHJhbmdlIil9ZnVuY3Rpb24gUihBLGUsdCxuKXtlPDAmJihlPTY1NTM1K2UrMSk7Zm9yKHZhciBpPTAscj1NYXRoLm1pbihBLmxlbmd0aC10LDIpO2k8cjsrK2kpQVt0K2ldPShlJjI1NTw8OCoobj9pOjEtaSkpPj4+OCoobj9pOjEtaSl9ZnVuY3Rpb24gRyhBLGUsdCxuKXtlPDAmJihlPTQyOTQ5NjcyOTUrZSsxKTtmb3IodmFyIGk9MCxyPU1hdGgubWluKEEubGVuZ3RoLXQsNCk7aTxyOysraSlBW3QraV09ZT4+PjgqKG4/aTozLWkpJjI1NX1mdW5jdGlvbiBTKEEsZSx0LG4saSxyKXtpZih0K24+QS5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkluZGV4IG91dCBvZiByYW5nZSIpO2lmKHQ8MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW5kZXggb3V0IG9mIHJhbmdlIil9ZnVuY3Rpb24gYihBLGUsdCxuLHIpe3JldHVybiByfHxTKEEsMCx0LDQpLGkud3JpdGUoQSxlLHQsbiwyMyw0KSx0KzR9ZnVuY3Rpb24gSChBLGUsdCxuLHIpe3JldHVybiByfHxTKEEsMCx0LDgpLGkud3JpdGUoQSxlLHQsbiw1Miw4KSx0Kzh9YS5wcm90b3R5cGUuc2xpY2U9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuPXRoaXMubGVuZ3RoO2lmKChBPX5+QSk8MD8oQSs9bik8MCYmKEE9MCk6QT5uJiYoQT1uKSwoZT12b2lkIDA9PT1lP246fn5lKTwwPyhlKz1uKTwwJiYoZT0wKTplPm4mJihlPW4pLGU8QSYmKGU9QSksYS5UWVBFRF9BUlJBWV9TVVBQT1JUKSh0PXRoaXMuc3ViYXJyYXkoQSxlKSkuX19wcm90b19fPWEucHJvdG90eXBlO2Vsc2V7dmFyIGk9ZS1BO3Q9bmV3IGEoaSx2b2lkIDApO2Zvcih2YXIgcj0wO3I8aTsrK3IpdFtyXT10aGlzW3IrQV19cmV0dXJuIHR9LGEucHJvdG90eXBlLnJlYWRVSW50TEU9ZnVuY3Rpb24oQSxlLHQpe0F8PTAsZXw9MCx0fHxUKEEsZSx0aGlzLmxlbmd0aCk7Zm9yKHZhciBuPXRoaXNbQV0saT0xLHI9MDsrK3I8ZSYmKGkqPTI1Nik7KW4rPXRoaXNbQStyXSppO3JldHVybiBufSxhLnByb3RvdHlwZS5yZWFkVUludEJFPWZ1bmN0aW9uKEEsZSx0KXtBfD0wLGV8PTAsdHx8VChBLGUsdGhpcy5sZW5ndGgpO2Zvcih2YXIgbj10aGlzW0ErLS1lXSxpPTE7ZT4wJiYoaSo9MjU2KTspbis9dGhpc1tBKy0tZV0qaTtyZXR1cm4gbn0sYS5wcm90b3R5cGUucmVhZFVJbnQ4PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV8fFQoQSwxLHRoaXMubGVuZ3RoKSx0aGlzW0FdfSxhLnByb3RvdHlwZS5yZWFkVUludDE2TEU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZXx8VChBLDIsdGhpcy5sZW5ndGgpLHRoaXNbQV18dGhpc1tBKzFdPDw4fSxhLnByb3RvdHlwZS5yZWFkVUludDE2QkU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZXx8VChBLDIsdGhpcy5sZW5ndGgpLHRoaXNbQV08PDh8dGhpc1tBKzFdfSxhLnByb3RvdHlwZS5yZWFkVUludDMyTEU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZXx8VChBLDQsdGhpcy5sZW5ndGgpLCh0aGlzW0FdfHRoaXNbQSsxXTw8OHx0aGlzW0ErMl08PDE2KSsxNjc3NzIxNip0aGlzW0ErM119LGEucHJvdG90eXBlLnJlYWRVSW50MzJCRT1mdW5jdGlvbihBLGUpe3JldHVybiBlfHxUKEEsNCx0aGlzLmxlbmd0aCksMTY3NzcyMTYqdGhpc1tBXSsodGhpc1tBKzFdPDwxNnx0aGlzW0ErMl08PDh8dGhpc1tBKzNdKX0sYS5wcm90b3R5cGUucmVhZEludExFPWZ1bmN0aW9uKEEsZSx0KXtBfD0wLGV8PTAsdHx8VChBLGUsdGhpcy5sZW5ndGgpO2Zvcih2YXIgbj10aGlzW0FdLGk9MSxyPTA7KytyPGUmJihpKj0yNTYpOyluKz10aGlzW0Ercl0qaTtyZXR1cm4gbj49KGkqPTEyOCkmJihuLT1NYXRoLnBvdygyLDgqZSkpLG59LGEucHJvdG90eXBlLnJlYWRJbnRCRT1mdW5jdGlvbihBLGUsdCl7QXw9MCxlfD0wLHR8fFQoQSxlLHRoaXMubGVuZ3RoKTtmb3IodmFyIG49ZSxpPTEscj10aGlzW0ErLS1uXTtuPjAmJihpKj0yNTYpOylyKz10aGlzW0ErLS1uXSppO3JldHVybiByPj0oaSo9MTI4KSYmKHItPU1hdGgucG93KDIsOCplKSkscn0sYS5wcm90b3R5cGUucmVhZEludDg9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZXx8VChBLDEsdGhpcy5sZW5ndGgpLDEyOCZ0aGlzW0FdPy0xKigyNTUtdGhpc1tBXSsxKTp0aGlzW0FdfSxhLnByb3RvdHlwZS5yZWFkSW50MTZMRT1mdW5jdGlvbihBLGUpe2V8fFQoQSwyLHRoaXMubGVuZ3RoKTt2YXIgdD10aGlzW0FdfHRoaXNbQSsxXTw8ODtyZXR1cm4gMzI3NjgmdD80Mjk0OTAxNzYwfHQ6dH0sYS5wcm90b3R5cGUucmVhZEludDE2QkU9ZnVuY3Rpb24oQSxlKXtlfHxUKEEsMix0aGlzLmxlbmd0aCk7dmFyIHQ9dGhpc1tBKzFdfHRoaXNbQV08PDg7cmV0dXJuIDMyNzY4JnQ/NDI5NDkwMTc2MHx0OnR9LGEucHJvdG90eXBlLnJlYWRJbnQzMkxFPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV8fFQoQSw0LHRoaXMubGVuZ3RoKSx0aGlzW0FdfHRoaXNbQSsxXTw8OHx0aGlzW0ErMl08PDE2fHRoaXNbQSszXTw8MjR9LGEucHJvdG90eXBlLnJlYWRJbnQzMkJFPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV8fFQoQSw0LHRoaXMubGVuZ3RoKSx0aGlzW0FdPDwyNHx0aGlzW0ErMV08PDE2fHRoaXNbQSsyXTw8OHx0aGlzW0ErM119LGEucHJvdG90eXBlLnJlYWRGbG9hdExFPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV8fFQoQSw0LHRoaXMubGVuZ3RoKSxpLnJlYWQodGhpcyxBLCEwLDIzLDQpfSxhLnByb3RvdHlwZS5yZWFkRmxvYXRCRT1mdW5jdGlvbihBLGUpe3JldHVybiBlfHxUKEEsNCx0aGlzLmxlbmd0aCksaS5yZWFkKHRoaXMsQSwhMSwyMyw0KX0sYS5wcm90b3R5cGUucmVhZERvdWJsZUxFPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV8fFQoQSw4LHRoaXMubGVuZ3RoKSxpLnJlYWQodGhpcyxBLCEwLDUyLDgpfSxhLnByb3RvdHlwZS5yZWFkRG91YmxlQkU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZXx8VChBLDgsdGhpcy5sZW5ndGgpLGkucmVhZCh0aGlzLEEsITEsNTIsOCl9LGEucHJvdG90eXBlLndyaXRlVUludExFPWZ1bmN0aW9uKEEsZSx0LG4peyhBPStBLGV8PTAsdHw9MCxuKXx8eCh0aGlzLEEsZSx0LE1hdGgucG93KDIsOCp0KS0xLDApO3ZhciBpPTEscj0wO2Zvcih0aGlzW2VdPTI1NSZBOysrcjx0JiYoaSo9MjU2KTspdGhpc1tlK3JdPUEvaSYyNTU7cmV0dXJuIGUrdH0sYS5wcm90b3R5cGUud3JpdGVVSW50QkU9ZnVuY3Rpb24oQSxlLHQsbil7KEE9K0EsZXw9MCx0fD0wLG4pfHx4KHRoaXMsQSxlLHQsTWF0aC5wb3coMiw4KnQpLTEsMCk7dmFyIGk9dC0xLHI9MTtmb3IodGhpc1tlK2ldPTI1NSZBOy0taT49MCYmKHIqPTI1Nik7KXRoaXNbZStpXT1BL3ImMjU1O3JldHVybiBlK3R9LGEucHJvdG90eXBlLndyaXRlVUludDg9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBPStBLGV8PTAsdHx8eCh0aGlzLEEsZSwxLDI1NSwwKSxhLlRZUEVEX0FSUkFZX1NVUFBPUlR8fChBPU1hdGguZmxvb3IoQSkpLHRoaXNbZV09MjU1JkEsZSsxfSxhLnByb3RvdHlwZS53cml0ZVVJbnQxNkxFPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQT0rQSxlfD0wLHR8fHgodGhpcyxBLGUsMiw2NTUzNSwwKSxhLlRZUEVEX0FSUkFZX1NVUFBPUlQ/KHRoaXNbZV09MjU1JkEsdGhpc1tlKzFdPUE+Pj44KTpSKHRoaXMsQSxlLCEwKSxlKzJ9LGEucHJvdG90eXBlLndyaXRlVUludDE2QkU9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBPStBLGV8PTAsdHx8eCh0aGlzLEEsZSwyLDY1NTM1LDApLGEuVFlQRURfQVJSQVlfU1VQUE9SVD8odGhpc1tlXT1BPj4+OCx0aGlzW2UrMV09MjU1JkEpOlIodGhpcyxBLGUsITEpLGUrMn0sYS5wcm90b3R5cGUud3JpdGVVSW50MzJMRT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIEE9K0EsZXw9MCx0fHx4KHRoaXMsQSxlLDQsNDI5NDk2NzI5NSwwKSxhLlRZUEVEX0FSUkFZX1NVUFBPUlQ/KHRoaXNbZSszXT1BPj4+MjQsdGhpc1tlKzJdPUE+Pj4xNix0aGlzW2UrMV09QT4+PjgsdGhpc1tlXT0yNTUmQSk6Ryh0aGlzLEEsZSwhMCksZSs0fSxhLnByb3RvdHlwZS53cml0ZVVJbnQzMkJFPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQT0rQSxlfD0wLHR8fHgodGhpcyxBLGUsNCw0Mjk0OTY3Mjk1LDApLGEuVFlQRURfQVJSQVlfU1VQUE9SVD8odGhpc1tlXT1BPj4+MjQsdGhpc1tlKzFdPUE+Pj4xNix0aGlzW2UrMl09QT4+PjgsdGhpc1tlKzNdPTI1NSZBKTpHKHRoaXMsQSxlLCExKSxlKzR9LGEucHJvdG90eXBlLndyaXRlSW50TEU9ZnVuY3Rpb24oQSxlLHQsbil7aWYoQT0rQSxlfD0wLCFuKXt2YXIgaT1NYXRoLnBvdygyLDgqdC0xKTt4KHRoaXMsQSxlLHQsaS0xLC1pKX12YXIgcj0wLG89MSxzPTA7Zm9yKHRoaXNbZV09MjU1JkE7KytyPHQmJihvKj0yNTYpOylBPDAmJjA9PT1zJiYwIT09dGhpc1tlK3ItMV0mJihzPTEpLHRoaXNbZStyXT0oQS9vPj4wKS1zJjI1NTtyZXR1cm4gZSt0fSxhLnByb3RvdHlwZS53cml0ZUludEJFPWZ1bmN0aW9uKEEsZSx0LG4pe2lmKEE9K0EsZXw9MCwhbil7dmFyIGk9TWF0aC5wb3coMiw4KnQtMSk7eCh0aGlzLEEsZSx0LGktMSwtaSl9dmFyIHI9dC0xLG89MSxzPTA7Zm9yKHRoaXNbZStyXT0yNTUmQTstLXI+PTAmJihvKj0yNTYpOylBPDAmJjA9PT1zJiYwIT09dGhpc1tlK3IrMV0mJihzPTEpLHRoaXNbZStyXT0oQS9vPj4wKS1zJjI1NTtyZXR1cm4gZSt0fSxhLnByb3RvdHlwZS53cml0ZUludDg9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBPStBLGV8PTAsdHx8eCh0aGlzLEEsZSwxLDEyNywtMTI4KSxhLlRZUEVEX0FSUkFZX1NVUFBPUlR8fChBPU1hdGguZmxvb3IoQSkpLEE8MCYmKEE9MjU1K0ErMSksdGhpc1tlXT0yNTUmQSxlKzF9LGEucHJvdG90eXBlLndyaXRlSW50MTZMRT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIEE9K0EsZXw9MCx0fHx4KHRoaXMsQSxlLDIsMzI3NjcsLTMyNzY4KSxhLlRZUEVEX0FSUkFZX1NVUFBPUlQ/KHRoaXNbZV09MjU1JkEsdGhpc1tlKzFdPUE+Pj44KTpSKHRoaXMsQSxlLCEwKSxlKzJ9LGEucHJvdG90eXBlLndyaXRlSW50MTZCRT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIEE9K0EsZXw9MCx0fHx4KHRoaXMsQSxlLDIsMzI3NjcsLTMyNzY4KSxhLlRZUEVEX0FSUkFZX1NVUFBPUlQ/KHRoaXNbZV09QT4+PjgsdGhpc1tlKzFdPTI1NSZBKTpSKHRoaXMsQSxlLCExKSxlKzJ9LGEucHJvdG90eXBlLndyaXRlSW50MzJMRT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIEE9K0EsZXw9MCx0fHx4KHRoaXMsQSxlLDQsMjE0NzQ4MzY0NywtMjE0NzQ4MzY0OCksYS5UWVBFRF9BUlJBWV9TVVBQT1JUPyh0aGlzW2VdPTI1NSZBLHRoaXNbZSsxXT1BPj4+OCx0aGlzW2UrMl09QT4+PjE2LHRoaXNbZSszXT1BPj4+MjQpOkcodGhpcyxBLGUsITApLGUrNH0sYS5wcm90b3R5cGUud3JpdGVJbnQzMkJFPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQT0rQSxlfD0wLHR8fHgodGhpcyxBLGUsNCwyMTQ3NDgzNjQ3LC0yMTQ3NDgzNjQ4KSxBPDAmJihBPTQyOTQ5NjcyOTUrQSsxKSxhLlRZUEVEX0FSUkFZX1NVUFBPUlQ/KHRoaXNbZV09QT4+PjI0LHRoaXNbZSsxXT1BPj4+MTYsdGhpc1tlKzJdPUE+Pj44LHRoaXNbZSszXT0yNTUmQSk6Ryh0aGlzLEEsZSwhMSksZSs0fSxhLnByb3RvdHlwZS53cml0ZUZsb2F0TEU9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBiKHRoaXMsQSxlLCEwLHQpfSxhLnByb3RvdHlwZS53cml0ZUZsb2F0QkU9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBiKHRoaXMsQSxlLCExLHQpfSxhLnByb3RvdHlwZS53cml0ZURvdWJsZUxFPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gSCh0aGlzLEEsZSwhMCx0KX0sYS5wcm90b3R5cGUud3JpdGVEb3VibGVCRT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIEgodGhpcyxBLGUsITEsdCl9LGEucHJvdG90eXBlLmNvcHk9ZnVuY3Rpb24oQSxlLHQsbil7aWYodHx8KHQ9MCksbnx8MD09PW58fChuPXRoaXMubGVuZ3RoKSxlPj1BLmxlbmd0aCYmKGU9QS5sZW5ndGgpLGV8fChlPTApLG4+MCYmbjx0JiYobj10KSxuPT09dClyZXR1cm4gMDtpZigwPT09QS5sZW5ndGh8fDA9PT10aGlzLmxlbmd0aClyZXR1cm4gMDtpZihlPDApdGhyb3cgbmV3IFJhbmdlRXJyb3IoInRhcmdldFN0YXJ0IG91dCBvZiBib3VuZHMiKTtpZih0PDB8fHQ+PXRoaXMubGVuZ3RoKXRocm93IG5ldyBSYW5nZUVycm9yKCJzb3VyY2VTdGFydCBvdXQgb2YgYm91bmRzIik7aWYobjwwKXRocm93IG5ldyBSYW5nZUVycm9yKCJzb3VyY2VFbmQgb3V0IG9mIGJvdW5kcyIpO24+dGhpcy5sZW5ndGgmJihuPXRoaXMubGVuZ3RoKSxBLmxlbmd0aC1lPG4tdCYmKG49QS5sZW5ndGgtZSt0KTt2YXIgaSxyPW4tdDtpZih0aGlzPT09QSYmdDxlJiZlPG4pZm9yKGk9ci0xO2k+PTA7LS1pKUFbaStlXT10aGlzW2krdF07ZWxzZSBpZihyPDFlM3x8IWEuVFlQRURfQVJSQVlfU1VQUE9SVClmb3IoaT0wO2k8cjsrK2kpQVtpK2VdPXRoaXNbaSt0XTtlbHNlIFVpbnQ4QXJyYXkucHJvdG90eXBlLnNldC5jYWxsKEEsdGhpcy5zdWJhcnJheSh0LHQrciksZSk7cmV0dXJuIHJ9LGEucHJvdG90eXBlLmZpbGw9ZnVuY3Rpb24oQSxlLHQsbil7aWYoInN0cmluZyI9PXR5cGVvZiBBKXtpZigic3RyaW5nIj09dHlwZW9mIGU/KG49ZSxlPTAsdD10aGlzLmxlbmd0aCk6InN0cmluZyI9PXR5cGVvZiB0JiYobj10LHQ9dGhpcy5sZW5ndGgpLDE9PT1BLmxlbmd0aCl7dmFyIGk9QS5jaGFyQ29kZUF0KDApO2k8MjU2JiYoQT1pKX1pZih2b2lkIDAhPT1uJiYic3RyaW5nIiE9dHlwZW9mIG4pdGhyb3cgbmV3IFR5cGVFcnJvcigiZW5jb2RpbmcgbXVzdCBiZSBhIHN0cmluZyIpO2lmKCJzdHJpbmciPT10eXBlb2YgbiYmIWEuaXNFbmNvZGluZyhuKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmtub3duIGVuY29kaW5nOiAiK24pfWVsc2UibnVtYmVyIj09dHlwZW9mIEEmJihBJj0yNTUpO2lmKGU8MHx8dGhpcy5sZW5ndGg8ZXx8dGhpcy5sZW5ndGg8dCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiT3V0IG9mIHJhbmdlIGluZGV4Iik7aWYodDw9ZSlyZXR1cm4gdGhpczt2YXIgcjtpZihlPj4+PTAsdD12b2lkIDA9PT10P3RoaXMubGVuZ3RoOnQ+Pj4wLEF8fChBPTApLCJudW1iZXIiPT10eXBlb2YgQSlmb3Iocj1lO3I8dDsrK3IpdGhpc1tyXT1BO2Vsc2V7dmFyIG89YS5pc0J1ZmZlcihBKT9BOmoobmV3IGEoQSxuKS50b1N0cmluZygpKSxzPW8ubGVuZ3RoO2ZvcihyPTA7cjx0LWU7KytyKXRoaXNbcitlXT1vW3Ilc119cmV0dXJuIHRoaXN9O3ZhciB2PS9bXitcLzAtOUEtWmEtei1fXS9nO2Z1bmN0aW9uIGsoQSl7cmV0dXJuIEE8MTY/IjAiK0EudG9TdHJpbmcoMTYpOkEudG9TdHJpbmcoMTYpfWZ1bmN0aW9uIGooQSxlKXt2YXIgdDtlPWV8fDEvMDtmb3IodmFyIG49QS5sZW5ndGgsaT1udWxsLHI9W10sbz0wO288bjsrK28pe2lmKCh0PUEuY2hhckNvZGVBdChvKSk+NTUyOTUmJnQ8NTczNDQpe2lmKCFpKXtpZih0PjU2MzE5KXsoZS09Myk+LTEmJnIucHVzaCgyMzksMTkxLDE4OSk7Y29udGludWV9aWYobysxPT09bil7KGUtPTMpPi0xJiZyLnB1c2goMjM5LDE5MSwxODkpO2NvbnRpbnVlfWk9dDtjb250aW51ZX1pZih0PDU2MzIwKXsoZS09Myk+LTEmJnIucHVzaCgyMzksMTkxLDE4OSksaT10O2NvbnRpbnVlfXQ9NjU1MzYrKGktNTUyOTY8PDEwfHQtNTYzMjApfWVsc2UgaSYmKGUtPTMpPi0xJiZyLnB1c2goMjM5LDE5MSwxODkpO2lmKGk9bnVsbCx0PDEyOCl7aWYoKGUtPTEpPDApYnJlYWs7ci5wdXNoKHQpfWVsc2UgaWYodDwyMDQ4KXtpZigoZS09Mik8MClicmVhaztyLnB1c2godD4+NnwxOTIsNjMmdHwxMjgpfWVsc2UgaWYodDw2NTUzNil7aWYoKGUtPTMpPDApYnJlYWs7ci5wdXNoKHQ+PjEyfDIyNCx0Pj42JjYzfDEyOCw2MyZ0fDEyOCl9ZWxzZXtpZighKHQ8MTExNDExMikpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIGNvZGUgcG9pbnQiKTtpZigoZS09NCk8MClicmVhaztyLnB1c2godD4+MTh8MjQwLHQ+PjEyJjYzfDEyOCx0Pj42JjYzfDEyOCw2MyZ0fDEyOCl9fXJldHVybiByfWZ1bmN0aW9uIEooQSl7cmV0dXJuIG4udG9CeXRlQXJyYXkoZnVuY3Rpb24oQSl7aWYoKEE9ZnVuY3Rpb24oQSl7cmV0dXJuIEEudHJpbT9BLnRyaW0oKTpBLnJlcGxhY2UoL15ccyt8XHMrJC9nLCIiKX0oQSkucmVwbGFjZSh2LCIiKSkubGVuZ3RoPDIpcmV0dXJuIiI7Zm9yKDtBLmxlbmd0aCU0IT0wOylBKz0iPSI7cmV0dXJuIEF9KEEpKX1mdW5jdGlvbiB6KEEsZSx0LG4pe2Zvcih2YXIgaT0wO2k8biYmIShpK3Q+PWUubGVuZ3RofHxpPj1BLmxlbmd0aCk7KytpKWVbaSt0XT1BW2ldO3JldHVybiBpfX0pLmNhbGwodGhpcyx0KDE1KSl9LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKCl7fXQoMTM0KS5taXhpbihuKSxuLnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihBLGUsdCl7dGhpcy5lbWl0KCJpdGVtIixBLGUsdCl9LG4ucHJvdG90eXBlLmVuZD1mdW5jdGlvbigpe3RoaXMuZW1pdCgiZW5kIiksdGhpcy5yZW1vdmVBbGxMaXN0ZW5lcnMoKX0sbi5wcm90b3R5cGUucGlwZT1mdW5jdGlvbihBKXt2YXIgZT10aGlzO2Z1bmN0aW9uIHQoKXtBLndyaXRlLmFwcGx5KEEsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKSl9ZnVuY3Rpb24gbigpeyFBLl9pc1N0ZGlvJiZBLmVuZCgpfXJldHVybiBlLmVtaXQoInVucGlwZSIsQSksQS5lbWl0KCJwaXBlIixlKSxlLm9uKCJpdGVtIix0KSxlLm9uKCJlbmQiLG4pLGUud2hlbigidW5waXBlIiwoZnVuY3Rpb24oaSl7dmFyIHI9aT09PUF8fHZvaWQgMD09PWk7cmV0dXJuIHImJihlLnJlbW92ZUxpc3RlbmVyKCJpdGVtIix0KSxlLnJlbW92ZUxpc3RlbmVyKCJlbmQiLG4pLEEuZW1pdCgidW5waXBlIikpLHJ9KSksQX0sbi5wcm90b3R5cGUudW5waXBlPWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmVtaXQoInVucGlwZSIsQSksdGhpc30sbi5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKEEpe3Rocm93IG5ldyBFcnJvcihbIldhcm5pbmc6IC5mb3JtYXQoKSBpcyBkZXByZWNhdGVkIGluIE1pbmlsb2cgdjIhIFVzZSAucGlwZSgpIGluc3RlYWQuIEZvciBleGFtcGxlOiIsInZhciBNaW5pbG9nID0gcmVxdWlyZSgnbWluaWxvZycpOyIsIk1pbmlsb2ciLCIgIC5waXBlKE1pbmlsb2cuYmFja2VuZHMuY29uc29sZS5mb3JtYXRDbGVhbikiLCIgIC5waXBlKE1pbmlsb2cuYmFja2VuZHMuY29uc29sZSk7Il0uam9pbigiXG4iKSl9LG4ubWl4aW49ZnVuY3Rpb24oQSl7dmFyIGUsdD1uLnByb3RvdHlwZTtmb3IoZSBpbiB0KXQuaGFzT3duUHJvcGVydHkoZSkmJihBLnByb3RvdHlwZVtlXT10W2VdKX0sQS5leHBvcnRzPW59LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3QgaT10KDIxOCkscj10KDkzKSxvPXQoMjQpLHM9dCg1NyksYT10KDcpLHtNYXA6Qn09dCgzNCksYz10KDk0KSxnPXQoOTUpLEU9dCg1KSxRPXQoMTkpLHU9dCgzNSksbD10KDExKTtjbGFzcyBoe2NvbnN0cnVjdG9yKEEsZSl7bih0aGlzLCJYTUxUb0Jsb2NrIixpKSxuKHRoaXMsIlhNTFRvTXV0YXRpb24iLHIpLHRoaXMucnVudGltZT1BLHRoaXMuX2Jsb2Nrcz17fSx0aGlzLl9zY3JpcHRzPVtdLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCJfY2FjaGUiLHt3cml0YWJsZTohMCxlbnVtZXJhYmxlOiExfSksdGhpcy5fY2FjaGU9e2lucHV0czp7fSxwcm9jZWR1cmVQYXJhbU5hbWVzOnt9LHByb2NlZHVyZURlZmluaXRpb25zOnt9LF9leGVjdXRlQ2FjaGVkOnt9LF9tb25pdG9yZWQ6bnVsbCxzY3JpcHRzOnt9LGNvbXBpbGVkU2NyaXB0czp7fSxjb21waWxlZFByb2NlZHVyZXM6e30scHJvY2VkdXJlc1BvcHVsYXRlZDohMX0sdGhpcy5mb3JjZU5vR2xvdz1lfHwhMX1nZXRDYWNoZWRDb21waWxlUmVzdWx0KEEpe3JldHVybiB0aGlzLl9jYWNoZS5jb21waWxlZFNjcmlwdHMuaGFzT3duUHJvcGVydHkoQSk/dGhpcy5fY2FjaGUuY29tcGlsZWRTY3JpcHRzW0FdOm51bGx9Y2FjaGVDb21waWxlUmVzdWx0KEEsZSl7dGhpcy5fY2FjaGUuY29tcGlsZWRTY3JpcHRzW0FdPXtzdWNjZXNzOiEwLHZhbHVlOmV9fWNhY2hlQ29tcGlsZUVycm9yKEEsZSl7dGhpcy5fY2FjaGUuY29tcGlsZWRTY3JpcHRzW0FdPXtzdWNjZXNzOiExLHZhbHVlOmV9fXN0YXRpYyBnZXQgQlJBTkNIX0lOUFVUX1BSRUZJWCgpe3JldHVybiJTVUJTVEFDSyJ9Z2V0QmxvY2soQSl7cmV0dXJuIHRoaXMuX2Jsb2Nrc1tBXX1nZXRTY3JpcHRzKCl7cmV0dXJuIHRoaXMuX3NjcmlwdHN9Z2V0TmV4dEJsb2NrKEEpe2NvbnN0IGU9dGhpcy5fYmxvY2tzW0FdO3JldHVybiB2b2lkIDA9PT1lP251bGw6ZS5uZXh0fWdldEJyYW5jaChBLGUpe2NvbnN0IHQ9dGhpcy5fYmxvY2tzW0FdO2lmKHZvaWQgMD09PXQpcmV0dXJuIG51bGw7ZXx8KGU9MSk7bGV0IG49aC5CUkFOQ0hfSU5QVVRfUFJFRklYO2U+MSYmKG4rPWUpO2NvbnN0IGk9dC5pbnB1dHNbbl07cmV0dXJuIHZvaWQgMD09PWk/bnVsbDppLmJsb2NrfWdldE9wY29kZShBKXtyZXR1cm4gdm9pZCAwPT09QT9udWxsOkEub3Bjb2RlfWdldEZpZWxkcyhBKXtyZXR1cm4gdm9pZCAwPT09QT9udWxsOkEuZmllbGRzfWdldElucHV0cyhBKXtpZih2b2lkIDA9PT1BKXJldHVybiBudWxsO2xldCBlPXRoaXMuX2NhY2hlLmlucHV0c1tBLmlkXTtpZih2b2lkIDAhPT1lKXJldHVybiBlO2U9e307Zm9yKGNvbnN0IHQgaW4gQS5pbnB1dHMpdC5zdWJzdHJpbmcoMCxoLkJSQU5DSF9JTlBVVF9QUkVGSVgubGVuZ3RoKSE9PWguQlJBTkNIX0lOUFVUX1BSRUZJWCYmKGVbdF09QS5pbnB1dHNbdF0pO3JldHVybiB0aGlzLl9jYWNoZS5pbnB1dHNbQS5pZF09ZSxlfWdldE11dGF0aW9uKEEpe3JldHVybiB2b2lkIDA9PT1BP251bGw6QS5tdXRhdGlvbn1nZXRUb3BMZXZlbFNjcmlwdChBKXtsZXQgZT10aGlzLl9ibG9ja3NbQV07aWYodm9pZCAwPT09ZSlyZXR1cm4gbnVsbDtmb3IoO251bGwhPT1lLnBhcmVudDspZT10aGlzLl9ibG9ja3NbZS5wYXJlbnRdO3JldHVybiBlLmlkfWdldFByb2NlZHVyZURlZmluaXRpb24oQSl7Y29uc3QgZT10aGlzLl9jYWNoZS5wcm9jZWR1cmVEZWZpbml0aW9uc1tBXTtpZih2b2lkIDAhPT1lKXJldHVybiBlO2Zvcihjb25zdCBlIGluIHRoaXMuX2Jsb2Nrcyl7aWYoIXRoaXMuX2Jsb2Nrcy5oYXNPd25Qcm9wZXJ0eShlKSljb250aW51ZTtjb25zdCB0PXRoaXMuX2Jsb2Nrc1tlXTtpZigicHJvY2VkdXJlc19kZWZpbml0aW9uIj09PXQub3Bjb2RlfHwicHJvY2VkdXJlc19kZWZpbml0aW9uX3JldHVybiI9PT10Lm9wY29kZSl7Y29uc3Qgbj10aGlzLl9nZXRDdXN0b21CbG9ja0ludGVybmFsKHQpO2lmKG4mJm4ubXV0YXRpb24ucHJvY2NvZGU9PT1BKXJldHVybiB0aGlzLl9jYWNoZS5wcm9jZWR1cmVEZWZpbml0aW9uc1tBXT1lLGV9fXJldHVybiB0aGlzLl9jYWNoZS5wcm9jZWR1cmVEZWZpbml0aW9uc1tBXT1udWxsLG51bGx9Z2V0UHJvY2VkdXJlUGFyYW1OYW1lc0FuZElkcyhBKXtyZXR1cm4gdGhpcy5nZXRQcm9jZWR1cmVQYXJhbU5hbWVzSWRzQW5kRGVmYXVsdHMoQSkuc2xpY2UoMCwyKX1nZXRQcm9jZWR1cmVQYXJhbU5hbWVzSWRzQW5kRGVmYXVsdHMoQSl7Y29uc3QgZT10aGlzLl9jYWNoZS5wcm9jZWR1cmVQYXJhbU5hbWVzW0FdO2lmKHZvaWQgMCE9PWUpcmV0dXJuIGU7Zm9yKGNvbnN0IGUgaW4gdGhpcy5fYmxvY2tzKXtpZighdGhpcy5fYmxvY2tzLmhhc093blByb3BlcnR5KGUpKWNvbnRpbnVlO2NvbnN0IHQ9dGhpcy5fYmxvY2tzW2VdO2lmKCJwcm9jZWR1cmVzX3Byb3RvdHlwZSI9PT10Lm9wY29kZSYmdC5tdXRhdGlvbi5wcm9jY29kZT09PUEpe2NvbnN0IGU9SlNPTi5wYXJzZSh0Lm11dGF0aW9uLmFyZ3VtZW50bmFtZXMpLG49SlNPTi5wYXJzZSh0Lm11dGF0aW9uLmFyZ3VtZW50aWRzKSxpPUpTT04ucGFyc2UodC5tdXRhdGlvbi5hcmd1bWVudGRlZmF1bHRzKTtyZXR1cm4gdGhpcy5fY2FjaGUucHJvY2VkdXJlUGFyYW1OYW1lc1tBXT1bZSxuLGldLHRoaXMuX2NhY2hlLnByb2NlZHVyZVBhcmFtTmFtZXNbQV19fWNvbnN0IHQ9dGhpcy5ydW50aW1lLmdldEFkZG9uQmxvY2soQSk7cmV0dXJuIHQ/KHRoaXMuX2NhY2hlLnByb2NlZHVyZVBhcmFtTmFtZXNbQV09dC5uYW1lc0lkc0RlZmF1bHRzLHQubmFtZXNJZHNEZWZhdWx0cyk6KHRoaXMuX2NhY2hlLnByb2NlZHVyZVBhcmFtTmFtZXNbQV09bnVsbCxudWxsKX1wb3B1bGF0ZVByb2NlZHVyZUNhY2hlKCl7aWYoIXRoaXMuX2NhY2hlLnByb2NlZHVyZXNQb3B1bGF0ZWQpe2Zvcihjb25zdCBBIGluIHRoaXMuX2Jsb2Nrcyl7aWYoIXRoaXMuX2Jsb2Nrcy5oYXNPd25Qcm9wZXJ0eShBKSljb250aW51ZTtjb25zdCBlPXRoaXMuX2Jsb2Nrc1tBXTtpZigicHJvY2VkdXJlc19wcm90b3R5cGUiIT09ZS5vcGNvZGUpe2lmKCJwcm9jZWR1cmVzX2RlZmluaXRpb24iPT09ZS5vcGNvZGV8fCJwcm9jZWR1cmVzX2RlZmluaXRpb25fcmV0dXJuIj09PWUub3Bjb2RlKXtjb25zdCB0PXRoaXMuX2dldEN1c3RvbUJsb2NrSW50ZXJuYWwoZSk7aWYodCl7Y29uc3QgZT10Lm11dGF0aW9uLnByb2Njb2RlO3RoaXMuX2NhY2hlLnByb2NlZHVyZURlZmluaXRpb25zW2VdfHwodGhpcy5fY2FjaGUucHJvY2VkdXJlRGVmaW5pdGlvbnNbZV09QSk7Y29udGludWV9fX1lbHNle2NvbnN0IEE9ZS5tdXRhdGlvbi5wcm9jY29kZTtpZighdGhpcy5fY2FjaGUucHJvY2VkdXJlUGFyYW1OYW1lc1tBXSl7Y29uc3QgdD1KU09OLnBhcnNlKGUubXV0YXRpb24uYXJndW1lbnRuYW1lcyksbj1KU09OLnBhcnNlKGUubXV0YXRpb24uYXJndW1lbnRpZHMpLGk9SlNPTi5wYXJzZShlLm11dGF0aW9uLmFyZ3VtZW50ZGVmYXVsdHMpO3RoaXMuX2NhY2hlLnByb2NlZHVyZVBhcmFtTmFtZXNbQV09W3QsbixpXX19fXRoaXMuX2NhY2hlLnByb2NlZHVyZXNQb3B1bGF0ZWQ9ITB9fWR1cGxpY2F0ZSgpe2NvbnN0IEE9bmV3IGgodGhpcy5ydW50aW1lLHRoaXMuZm9yY2VOb0dsb3cpO3JldHVybiBBLl9ibG9ja3M9YS5zaW1wbGUodGhpcy5fYmxvY2tzKSxBLl9zY3JpcHRzPWEuc2ltcGxlKHRoaXMuX3NjcmlwdHMpLEF9YmxvY2tseUxpc3RlbihBKXtpZigib2JqZWN0IiE9dHlwZW9mIEEpcmV0dXJuO2lmKCJzdHJpbmciIT10eXBlb2YgQS5ibG9ja0lkJiYic3RyaW5nIiE9dHlwZW9mIEEudmFySWQmJiJzdHJpbmciIT10eXBlb2YgQS5jb21tZW50SWQpcmV0dXJuO2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCksdD10aGlzLnJ1bnRpbWUuZ2V0RWRpdGluZ1RhcmdldCgpO2lmKCJzdGFja2NsaWNrIiE9PUEuZWxlbWVudClzd2l0Y2goQS50eXBlKXtjYXNlImNyZWF0ZSI6e2NvbnN0IGU9aShBKTtmb3IobGV0IEE9MDtBPGUubGVuZ3RoO0ErKyl0aGlzLmNyZWF0ZUJsb2NrKGVbQV0pO2JyZWFrfWNhc2UiY2hhbmdlIjp0aGlzLmNoYW5nZUJsb2NrKHtpZDpBLmJsb2NrSWQsZWxlbWVudDpBLmVsZW1lbnQsbmFtZTpBLm5hbWUsdmFsdWU6QS5uZXdWYWx1ZX0pO2JyZWFrO2Nhc2UibW92ZSI6dGhpcy5tb3ZlQmxvY2soe2lkOkEuYmxvY2tJZCxvbGRQYXJlbnQ6QS5vbGRQYXJlbnRJZCxvbGRJbnB1dDpBLm9sZElucHV0TmFtZSxuZXdQYXJlbnQ6QS5uZXdQYXJlbnRJZCxuZXdJbnB1dDpBLm5ld0lucHV0TmFtZSxuZXdDb29yZGluYXRlOkEubmV3Q29vcmRpbmF0ZSxmcm9tRXhwYW5kYWJsZTpBLmlzRnJvbUV4cGFuZGFibGV9KTticmVhaztjYXNlImRyYWdPdXRzaWRlIjp0aGlzLnJ1bnRpbWUuZW1pdEJsb2NrRHJhZ1VwZGF0ZShBLmlzT3V0c2lkZSk7YnJlYWs7Y2FzZSJlbmREcmFnIjppZih0aGlzLnJ1bnRpbWUuZW1pdEJsb2NrRHJhZ1VwZGF0ZSghMSksQS5pc091dHNpZGUpe2NvbnN0IGU9aShBKTt0aGlzLnJ1bnRpbWUuZW1pdEJsb2NrRW5kRHJhZyhlLEEuYmxvY2tJZCl9YnJlYWs7Y2FzZSJkZWxldGUiOmlmKCF0aGlzLl9ibG9ja3MuaGFzT3duUHJvcGVydHkoQS5ibG9ja0lkKSlyZXR1cm47Y29uc3Qgbj10aGlzLl9ibG9ja3NbQS5ibG9ja0lkXTtpZighQS5pc0Zyb21FeHBhbmRhYmxlJiZuLnNoYWRvdyYmIW4ub3Bjb2RlLnN0YXJ0c1dpdGgoImFyZ3VtZW50X3JlcG9ydGVyXyIpKXJldHVybjtuLnRvcExldmVsJiYodGhpcy5ydW50aW1lLnF1aWV0R2xvdyhBLmJsb2NrSWQpLHRoaXMucnVudGltZS5jb21waWxlck9wdGlvbnMuZW5hYmxlZCYmc2V0VGltZW91dCgoKT0+e2lmKCF0aGlzLl9ibG9ja3NbQS5ibG9ja0lkXSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUudGhyZWFkcy5maW5kKGU9PmUuZ2V0SWQoKT09PSIiLmNvbmNhdCh0LmlkLCImIikuY29uY2F0KEEuYmxvY2tJZCkpO2UmJnRoaXMucnVudGltZS5fc3RvcFRocmVhZChlKX19LDEwMCkpLHRoaXMuZGVsZXRlQmxvY2soQS5ibG9ja0lkLCExKTticmVhaztjYXNlInZhcl9jcmVhdGUiOmlmKHRoaXMucmVzZXRDYWNoZSgpLEEuaXNMb2NhbCYmdCYmIXQuaXNTdGFnZSYmIUEuaXNDbG91ZCl0Lmxvb2t1cFZhcmlhYmxlQnlJZChBLnZhcklkKXx8KHQuY3JlYXRlVmFyaWFibGUoQS52YXJJZCxBLnZhck5hbWUsQS52YXJUeXBlKSx0aGlzLnJ1bnRpbWUuZW1pdCgidmFyaWFibGVDcmVhdGUiLEEudmFyVHlwZSxBLnZhcklkLEEudmFyTmFtZSxBLmlzQ2xvdWQpLHRoaXMuZW1pdFByb2plY3RDaGFuZ2VkKCkpO2Vsc2V7aWYoZS5sb29rdXBWYXJpYWJsZUJ5SWQoQS52YXJJZCkpcmV0dXJuO2NvbnN0IHQ9dGhpcy5ydW50aW1lLnRhcmdldHMuZmlsdGVyKEE9PkEuaXNPcmlnaW5hbCk7Zm9yKGNvbnN0IGUgb2YgdClpZihlLmxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZShBLnZhck5hbWUsQS52YXJUeXBlLCEwKSlyZXR1cm47ZS5jcmVhdGVWYXJpYWJsZShBLnZhcklkLEEudmFyTmFtZSxBLnZhclR5cGUsQS5pc0Nsb3VkKSx0aGlzLnJ1bnRpbWUuZW1pdCgidmFyaWFibGVDcmVhdGUiLEEudmFyVHlwZSxBLnZhcklkLEEudmFyTmFtZSxBLmlzQ2xvdWQpLHRoaXMuZW1pdFByb2plY3RDaGFuZ2VkKCl9YnJlYWs7Y2FzZSJ2YXJfcmVuYW1lIjppZih0JiZ0LnZhcmlhYmxlcy5oYXNPd25Qcm9wZXJ0eShBLnZhcklkKSl0LnJlbmFtZVZhcmlhYmxlKEEudmFySWQsQS5uZXdOYW1lKSx0LmJsb2Nrcy51cGRhdGVCbG9ja3NBZnRlclZhclJlbmFtZShBLnZhcklkLEEubmV3TmFtZSk7ZWxzZXtlLnJlbmFtZVZhcmlhYmxlKEEudmFySWQsQS5uZXdOYW1lKTtjb25zdCB0PXRoaXMucnVudGltZS50YXJnZXRzO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXt0W2VdLmJsb2Nrcy51cGRhdGVCbG9ja3NBZnRlclZhclJlbmFtZShBLnZhcklkLEEubmV3TmFtZSl9fXRoaXMucnVudGltZS5lbWl0KCJ2YXJpYWJsZUNoYW5nZSIsQS52YXJUeXBlLEEudmFySWQsQS5uZXdOYW1lLEEub2xkTmFtZSksdGhpcy5lbWl0UHJvamVjdENoYW5nZWQoKTticmVhaztjYXNlInZhcl9kZWxldGUiOnt0aGlzLnJlc2V0Q2FjaGUoKTtjb25zdCBuPXQmJnQudmFyaWFibGVzLmhhc093blByb3BlcnR5KEEudmFySWQpP3Q6ZTt0aGlzLnJ1bnRpbWUuZW1pdCgidmFyaWFibGVEZWxldGUiLEEudmFyVHlwZSxBLnZhcklkKSxuLmRlbGV0ZVZhcmlhYmxlKEEudmFySWQpLHRoaXMuZW1pdFByb2plY3RDaGFuZ2VkKCk7YnJlYWt9Y2FzZSJjb21tZW50X2NyZWF0ZSI6aWYodGhpcy5yZXNldENhY2hlKCksdGhpcy5ydW50aW1lLmdldEVkaXRpbmdUYXJnZXQoKSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0RWRpdGluZ1RhcmdldCgpO2UuY3JlYXRlQ29tbWVudChBLmNvbW1lbnRJZCxBLmJsb2NrSWQsQS50ZXh0LEEueHkueCxBLnh5LnksQS53aWR0aCxBLmhlaWdodCxBLm1pbmltaXplZCksbnVsbD09PWUuY29tbWVudHNbQS5jb21tZW50SWRdLngmJm51bGw9PT1lLmNvbW1lbnRzW0EuY29tbWVudElkXS55JiYoZS5jb21tZW50c1tBLmNvbW1lbnRJZF0ueD1BLnh5LngsZS5jb21tZW50c1tBLmNvbW1lbnRJZF0ueT1BLnh5LnkpfXRoaXMuZW1pdFByb2plY3RDaGFuZ2VkKCk7YnJlYWs7Y2FzZSJjb21tZW50X2NoYW5nZSI6aWYodGhpcy5yZXNldENhY2hlKCksdGhpcy5ydW50aW1lLmdldEVkaXRpbmdUYXJnZXQoKSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0RWRpdGluZ1RhcmdldCgpO2lmKCFlLmNvbW1lbnRzLmhhc093blByb3BlcnR5KEEuY29tbWVudElkKSlyZXR1cm4gdm9pZCBFLndhcm4oIkNhbm5vdCBjaGFuZ2UgY29tbWVudCB3aXRoIGlkICIuY29uY2F0KEEuY29tbWVudElkLCIgYmVjYXVzZSBpdCBkb2VzIG5vdCBleGlzdC4iKSk7Y29uc3QgdD1lLmNvbW1lbnRzW0EuY29tbWVudElkXSxuPUEubmV3Q29udGVudHNfO24uaGFzT3duUHJvcGVydHkoIm1pbmltaXplZCIpJiYodC5taW5pbWl6ZWQ9bi5taW5pbWl6ZWQpLG4uaGFzT3duUHJvcGVydHkoIndpZHRoIikmJm4uaGFzT3duUHJvcGVydHkoImhlaWdodCIpJiYodC53aWR0aD1uLndpZHRoLHQuaGVpZ2h0PW4uaGVpZ2h0KSxuLmhhc093blByb3BlcnR5KCJ0ZXh0IikmJih0LnRleHQ9bi50ZXh0KSx0aGlzLmVtaXRQcm9qZWN0Q2hhbmdlZCgpfWJyZWFrO2Nhc2UiY29tbWVudF9tb3ZlIjppZih0aGlzLnJ1bnRpbWUuZ2V0RWRpdGluZ1RhcmdldCgpKXtjb25zdCBlPXRoaXMucnVudGltZS5nZXRFZGl0aW5nVGFyZ2V0KCk7aWYoZSYmIWUuY29tbWVudHMuaGFzT3duUHJvcGVydHkoQS5jb21tZW50SWQpKXJldHVybiB2b2lkIEUud2FybigiQ2Fubm90IGNoYW5nZSBjb21tZW50IHdpdGggaWQgIi5jb25jYXQoQS5jb21tZW50SWQsIiBiZWNhdXNlIGl0IGRvZXMgbm90IGV4aXN0LiIpKTtjb25zdCB0PWUuY29tbWVudHNbQS5jb21tZW50SWRdLG49QS5uZXdDb29yZGluYXRlXzt0Lng9bi54LHQueT1uLnksdGhpcy5lbWl0UHJvamVjdENoYW5nZWQoKX1icmVhaztjYXNlImNvbW1lbnRfZGVsZXRlIjppZih0aGlzLnJlc2V0Q2FjaGUoKSx0aGlzLnJ1bnRpbWUuZ2V0RWRpdGluZ1RhcmdldCgpKXtjb25zdCBlPXRoaXMucnVudGltZS5nZXRFZGl0aW5nVGFyZ2V0KCk7aWYoIWUuY29tbWVudHMuaGFzT3duUHJvcGVydHkoQS5jb21tZW50SWQpKXJldHVybjtpZihkZWxldGUgZS5jb21tZW50c1tBLmNvbW1lbnRJZF0sQS5ibG9ja0lkKXtjb25zdCB0PWUuYmxvY2tzLmdldEJsb2NrKEEuYmxvY2tJZCk7aWYoIXQpcmV0dXJuIHZvaWQgRS53YXJuKCJDb3VsZCBub3QgZmluZCBibG9jayByZWZlcmVuY2VkIGJ5IGNvbW1lbnQgd2l0aCBpZDogIi5jb25jYXQoQS5jb21tZW50SWQpKTtkZWxldGUgdC5jb21tZW50fXRoaXMuZW1pdFByb2plY3RDaGFuZ2VkKCl9fWVsc2UgdGhpcy5ydW50aW1lLnRvZ2dsZVNjcmlwdChBLmJsb2NrSWQse3N0YWNrQ2xpY2s6ITB9KX1yZXNldENhY2hlKCl7dGhpcy5fY2FjaGUuaW5wdXRzPXt9LHRoaXMuX2NhY2hlLnByb2NlZHVyZVBhcmFtTmFtZXM9e30sdGhpcy5fY2FjaGUucHJvY2VkdXJlRGVmaW5pdGlvbnM9e30sdGhpcy5fY2FjaGUuX2V4ZWN1dGVDYWNoZWQ9e30sdGhpcy5fY2FjaGUuX21vbml0b3JlZD1udWxsLHRoaXMuX2NhY2hlLnNjcmlwdHM9e30sdGhpcy5fY2FjaGUuY29tcGlsZWRTY3JpcHRzPXt9LHRoaXMuX2NhY2hlLmNvbXBpbGVkUHJvY2VkdXJlcz17fSx0aGlzLl9jYWNoZS5wcm9jZWR1cmVzUG9wdWxhdGVkPSExfWVtaXRQcm9qZWN0Q2hhbmdlZCgpe3RoaXMuZm9yY2VOb0dsb3d8fHRoaXMucnVudGltZS5lbWl0UHJvamVjdENoYW5nZWQoKX1jcmVhdGVCbG9jayhBKXt0aGlzLl9ibG9ja3MuaGFzT3duUHJvcGVydHkoQS5pZCl8fCh0aGlzLl9ibG9ja3NbQS5pZF09QSxBLnRvcExldmVsJiZ0aGlzLl9hZGRTY3JpcHQoQS5pZCksdGhpcy5yZXNldENhY2hlKCksdGhpcy5lbWl0UHJvamVjdENoYW5nZWQoKSl9Y2hhbmdlQmxvY2soQSl7aWYoLTE9PT1bImZpZWxkIiwibXV0YXRpb24iLCJjaGVja2JveCJdLmluZGV4T2YoQS5lbGVtZW50KSlyZXR1cm47bGV0IGU9dGhpcy5fYmxvY2tzW0EuaWRdO2lmKHZvaWQgMCE9PWUpe3N3aXRjaChBLmVsZW1lbnQpe2Nhc2UiZmllbGQiOmlmKCFlLmZpZWxkc1tBLm5hbWVdKXJldHVybjtpZigic3RyaW5nIj09dHlwZW9mIGUuZmllbGRzW0EubmFtZV0udmFyaWFibGVUeXBlKXtjb25zdCB0PXRoaXMucnVudGltZS5nZXRFZGl0aW5nVGFyZ2V0KCkubG9va3VwVmFyaWFibGVCeUlkKEEudmFsdWUpO3QmJihlLmZpZWxkc1tBLm5hbWVdLnZhbHVlPXQubmFtZSxlLmZpZWxkc1tBLm5hbWVdLmlkPUEudmFsdWUpfWVsc2V7ZS5maWVsZHNbQS5uYW1lXS52YWx1ZT1BLnZhbHVlLCJzZW5zaW5nX29mX29iamVjdF9tZW51Ij09PWUub3Bjb2RlJiYoIl9zdGFnZV8iPT09ZS5maWVsZHMuT0JKRUNULnZhbHVlP3RoaXMuX2Jsb2Nrc1tlLnBhcmVudF0uZmllbGRzLlBST1BFUlRZLnZhbHVlPSJiYWNrZHJvcCAjIjp0aGlzLl9ibG9ja3NbZS5wYXJlbnRdLmZpZWxkcy5QUk9QRVJUWS52YWx1ZT0ieCBwb3NpdGlvbiIsdGhpcy5ydW50aW1lLnJlcXVlc3RCbG9ja3NVcGRhdGUoKSk7Y29uc3QgdD1lLnNoYWRvdyYmZS5wYXJlbnQ/dGhpcy5fYmxvY2tzW2UucGFyZW50XTplO3QuaXNNb25pdG9yZWQmJnRoaXMucnVudGltZS5yZXF1ZXN0VXBkYXRlTW9uaXRvcihCKHtpZDp0LmlkLHBhcmFtczp0aGlzLl9nZXRCbG9ja1BhcmFtcyh0KX0pKX1icmVhaztjYXNlIm11dGF0aW9uIjplLm11dGF0aW9uPXIoQS52YWx1ZSk7YnJlYWs7Y2FzZSJjaGVja2JveCI6e3ZhciB0O2lmKGUuZmllbGRzJiZPYmplY3Qua2V5cyhlLmZpZWxkcykubGVuZ3RoPjAmJiJkYXRhX3ZhcmlhYmxlIiE9PWUub3Bjb2RlJiYiZGF0YV9saXN0Y29udGVudHMiIT09ZS5vcGNvZGUpe2NvbnN0IEE9dShlLmlkLGUuZmllbGRzKTtsZXQgdD10aGlzLnJ1bnRpbWUubW9uaXRvckJsb2Nrcy5nZXRCbG9jayhBKTt0fHwodD1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGUpKSx0LmlkPUEsdGhpcy5ydW50aW1lLm1vbml0b3JCbG9ja3MuY3JlYXRlQmxvY2sodCkpLGU9dH1jb25zdCByPWUuaXNNb25pdG9yZWQ7ZS5pc01vbml0b3JlZD1BLnZhbHVlO2xldCBhPSExO2NvbnN0IEI9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7QiYmKGE9ImRhdGFfdmFyaWFibGUiPT09ZS5vcGNvZGU/IUIudmFyaWFibGVzW2UuZmllbGRzLlZBUklBQkxFLmlkXToiZGF0YV9saXN0Y29udGVudHMiPT09ZS5vcGNvZGU/IUIudmFyaWFibGVzW2UuZmllbGRzLkxJU1QuaWRdOk9iamVjdC52YWx1ZXMoZS5maWVsZHMpLnNvbWUoQT0+dm9pZCAwIT09QS52YXJpYWJsZVR5cGUmJigiaWQiaW4gQSYmIUIudmFyaWFibGVzW0EuaWRdKSkpO3ZhciBuPSgoQSx0LG4pPT57aWYobnVsbD09QSlyZXR1cm4hMTtjb25zdCBpPUEuYmxvY2tzLmZpbmQoQT0+QS5pbmZvLm9wY29kZT09PWwuc3BsaXRGaXJzdChlLm9wY29kZSwiXyIpWzFdKTtyZXR1cm4gbnVsbCE9PSh0PW51bGw9PWl8fG51bGw9PT0obj1pLmluZm8pfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLmlzU3ByaXRlU3BlY2lmaWMpJiZ2b2lkIDAhPT10JiZ0fSkodm0ucnVudGltZS5fYmxvY2tJbmZvLmZpbmQoQT0+QS5pZD09PWwuc3BsaXRGaXJzdChlLm9wY29kZSwiXyIpWzBdKSk7Y29uc3QgYz1hfHx0aGlzLnJ1bnRpbWUubW9uaXRvckJsb2NrSW5mby5oYXNPd25Qcm9wZXJ0eShlLm9wY29kZSkmJihudWxsPT09KHQ9dGhpcy5ydW50aW1lLm1vbml0b3JCbG9ja0luZm9bZS5vcGNvZGVdKXx8dm9pZCAwPT09dD92b2lkIDA6dC5pc1Nwcml0ZVNwZWNpZmljKXx8bjtpZihlLnRhcmdldElkPWM/ZS50YXJnZXRJZHx8dGhpcy5ydW50aW1lLmdldEVkaXRpbmdUYXJnZXQoKS5pZDpudWxsLHImJiFlLmlzTW9uaXRvcmVkKXRoaXMucnVudGltZS5yZXF1ZXN0SGlkZU1vbml0b3IoZS5pZCk7ZWxzZSBpZighciYmZS5pc01vbml0b3JlZCl7dmFyIGksbztpZighdGhpcy5ydW50aW1lLnJlcXVlc3RTaG93TW9uaXRvcihlLmlkKSl0aGlzLnJ1bnRpbWUucmVxdWVzdEFkZE1vbml0b3Iocyh7aWQ6ZS5pZCx0YXJnZXRJZDplLnRhcmdldElkLHNwcml0ZU5hbWU6ZS50YXJnZXRJZD90aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChlLnRhcmdldElkKS5nZXROYW1lKCk6bnVsbCxvcGNvZGU6ZS5vcGNvZGUscGFyYW1zOnRoaXMuX2dldEJsb2NrUGFyYW1zKGUpLHZhbHVlOiIiLG1vZGU6ImRhdGFfbGlzdGNvbnRlbnRzIj09PWUub3Bjb2RlPyJsaXN0IjoiZGVmYXVsdCIsdmFyaWFibGVUeXBlOm51bGw9PT0oaT1PYmplY3QudmFsdWVzKGUuZmllbGRzKVswXSl8fHZvaWQgMD09PWk/dm9pZCAwOmkudmFyaWFibGVUeXBlLHZhcmlhYmxlSWQ6bnVsbD09PShvPU9iamVjdC52YWx1ZXMoZS5maWVsZHMpWzBdKXx8dm9pZCAwPT09bz92b2lkIDA6by5pZH0pKX1icmVha319dGhpcy5lbWl0UHJvamVjdENoYW5nZWQoKSx0aGlzLnJlc2V0Q2FjaGUoKX19bW92ZUJsb2NrKEEpe2lmKCF0aGlzLl9ibG9ja3MuaGFzT3duUHJvcGVydHkoQS5pZCkpcmV0dXJuO2NvbnN0IGU9dGhpcy5fYmxvY2tzW0EuaWRdO2xldCB0PSExO2NvbnN0IG49QS5mcm9tRXhwYW5kYWJsZXx8ZS5vcGNvZGUuc3RhcnRzV2l0aCgiYXJndW1lbnRfcmVwb3J0ZXJfIik7aWYoQS5uZXdDb29yZGluYXRlJiYodD1lLnghPT1BLm5ld0Nvb3JkaW5hdGUueHx8ZS55IT09QS5uZXdDb29yZGluYXRlLnksZS54PUEubmV3Q29vcmRpbmF0ZS54LGUueT1BLm5ld0Nvb3JkaW5hdGUueSksdm9pZCAwIT09QS5vbGRQYXJlbnQpe2NvbnN0IGU9dGhpcy5fYmxvY2tzW0Eub2xkUGFyZW50XTt2b2lkIDAhPT1BLm9sZElucHV0JiZlLmlucHV0c1tBLm9sZElucHV0XS5ibG9jaz09PUEuaWQ/bj9kZWxldGUgZS5pbnB1dHNbQS5vbGRJbnB1dF06ZS5pbnB1dHNbQS5vbGRJbnB1dF0uYmxvY2s9bnVsbDplLm5leHQ9PT1BLmlkJiYoZS5uZXh0PW51bGwpLHRoaXMuX2Jsb2Nrc1tBLmlkXS5wYXJlbnQ9bnVsbCx0PSEwfWlmKHZvaWQgMD09PUEubmV3UGFyZW50KXRoaXMuX2FkZFNjcmlwdChBLmlkKTtlbHNle2lmKHRoaXMuX2RlbGV0ZVNjcmlwdChBLmlkKSx2b2lkIDA9PT1BLm5ld0lucHV0KXRoaXMuX2Jsb2Nrc1tBLm5ld1BhcmVudF0ubmV4dD1BLmlkO2Vsc2V7bGV0IGU9bnVsbDt0aGlzLl9ibG9ja3NbQS5uZXdQYXJlbnRdLmlucHV0cy5oYXNPd25Qcm9wZXJ0eShBLm5ld0lucHV0KSYmKGU9dGhpcy5fYmxvY2tzW0EubmV3UGFyZW50XS5pbnB1dHNbQS5uZXdJbnB1dF0uc2hhZG93KSx0aGlzLl9ibG9ja3NbQS5pZF0uc2hhZG93JiYoZT1BLmlkKSx0aGlzLl9ibG9ja3NbQS5uZXdQYXJlbnRdLmlucHV0c1tBLm5ld0lucHV0XT17bmFtZTpBLm5ld0lucHV0LGJsb2NrOkEuaWQsc2hhZG93OmV9fXRoaXMuX2Jsb2Nrc1tBLmlkXS5wYXJlbnQ9QS5uZXdQYXJlbnQsdD0hMH10aGlzLnJlc2V0Q2FjaGUoKSx0JiZ0aGlzLmVtaXRQcm9qZWN0Q2hhbmdlZCgpfXJ1bkFsbE1vbml0b3JlZChBKXtudWxsPT09dGhpcy5fY2FjaGUuX21vbml0b3JlZCYmKHRoaXMuX2NhY2hlLl9tb25pdG9yZWQ9T2JqZWN0LmtleXModGhpcy5fYmxvY2tzKS5maWx0ZXIoQT0+dGhpcy5nZXRCbG9jayhBKS5pc01vbml0b3JlZCkubWFwKGU9Pntjb25zdCB0PXRoaXMuZ2V0QmxvY2soZSkudGFyZ2V0SWQ7cmV0dXJue2Jsb2NrSWQ6ZSx0YXJnZXQ6dD9BLmdldFRhcmdldEJ5SWQodCk6bnVsbH19KSk7Y29uc3QgZT10aGlzLl9jYWNoZS5fbW9uaXRvcmVkO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKXtjb25zdHtibG9ja0lkOm4sdGFyZ2V0Oml9PWVbdF07QS5hZGRNb25pdG9yU2NyaXB0KG4saSl9fWRlbGV0ZUJsb2NrKEEsZSl7Y29uc3QgdD10aGlzLl9ibG9ja3NbQV07aWYoIXQpcmV0dXJuO2lmKG51bGw9PT10Lm5leHR8fGV8fHRoaXMuZGVsZXRlQmxvY2sodC5uZXh0KSxlKXt2YXIgbjtjb25zdCBlPXRoaXMuX2Jsb2Nrc1t0LnBhcmVudF0saT10aGlzLl9ibG9ja3NbdC5uZXh0XSxyPW51bGwhPWUmJmUuaW5wdXRzP251bGw9PT0obj1bLi4uT2JqZWN0LmVudHJpZXMoZS5pbnB1dHMpXS5maW5kKGU9PmVbMV0uYmxvY2s9PT1BKSl8fHZvaWQgMD09PW4/dm9pZCAwOm5bMV06bnVsbDtlJiYhciYmKGUubmV4dD10Lm5leHQpLGkmJihpLnBhcmVudD10LnBhcmVudCksaSYmciYmKHIuYmxvY2s9dC5uZXh0KX1mb3IoY29uc3QgQSBpbiB0LmlucHV0cyludWxsIT09dC5pbnB1dHNbQV0uYmxvY2smJnRoaXMuZGVsZXRlQmxvY2sodC5pbnB1dHNbQV0uYmxvY2spLG51bGwhPT10LmlucHV0c1tBXS5zaGFkb3cmJnQuaW5wdXRzW0FdLnNoYWRvdyE9PXQuaW5wdXRzW0FdLmJsb2NrJiZ0aGlzLmRlbGV0ZUJsb2NrKHQuaW5wdXRzW0FdLnNoYWRvdyk7ZXx8dGhpcy5fZGVsZXRlU2NyaXB0KEEpO2NvbnN0IGk9dGhpcy5fc2NyaXB0cy5pbmRleE9mKEEpO2lmKGUmJmk+LTEpe2NvbnN0IEE9dGhpcy5fYmxvY2tzW3QubmV4dF07QSYmKHRoaXMuX3NjcmlwdHMucHVzaChBLmlkKSxBLnRvcExldmVsPSEwLEEueD10LngsQS55PXQueSksdGhpcy5fc2NyaXB0cy5zcGxpY2UoaSwxKX1kZWxldGUgdGhpcy5fYmxvY2tzW0FdLHRoaXMucmVzZXRDYWNoZSgpLHRoaXMuZW1pdFByb2plY3RDaGFuZ2VkKCl9Z2V0QWxsVmFyaWFibGVBbmRMaXN0UmVmZXJlbmNlcyhBLGUpe2NvbnN0IHQ9QXx8dGhpcy5fYmxvY2tzLG49T2JqZWN0LmNyZWF0ZShudWxsKTtmb3IoY29uc3QgQSBpbiB0KXtsZXQgaT1udWxsLHI9bnVsbDtpZih0W0FdLmZpZWxkcy5WQVJJQUJMRT8oaT10W0FdLmZpZWxkcy5WQVJJQUJMRSxyPVEuU0NBTEFSX1RZUEUpOnRbQV0uZmllbGRzLkxJU1Q/KGk9dFtBXS5maWVsZHMuTElTVCxyPVEuTElTVF9UWVBFKTplJiZ0W0FdLmZpZWxkcy5CUk9BRENBU1RfT1BUSU9OJiYoaT10W0FdLmZpZWxkcy5CUk9BRENBU1RfT1BUSU9OLHI9US5CUk9BRENBU1RfTUVTU0FHRV9UWVBFKSxpKXtjb25zdCBBPWkuaWQ7bltBXT9uW0FdLnB1c2goe3JlZmVyZW5jaW5nRmllbGQ6aSx0eXBlOnJ9KTpuW0FdPVt7cmVmZXJlbmNpbmdGaWVsZDppLHR5cGU6cn1dfX1yZXR1cm4gbn11cGRhdGVCbG9ja3NBZnRlclZhclJlbmFtZShBLGUpe2NvbnN0IHQ9dGhpcy5fYmxvY2tzO2Zvcihjb25zdCBuIGluIHQpe2xldCBpPW51bGw7aWYodFtuXS5maWVsZHMuVkFSSUFCTEU/aT10W25dLmZpZWxkcy5WQVJJQUJMRTp0W25dLmZpZWxkcy5MSVNUJiYoaT10W25dLmZpZWxkcy5MSVNUKSxpKXtBPT09aS5pZCYmKGkudmFsdWU9ZSl9fX11cGRhdGVUYXJnZXRTcGVjaWZpY0Jsb2NrcyhBKXtjb25zdCBlPXRoaXMuX2Jsb2Nrcztmb3IoY29uc3QgdCBpbiBlKUEmJiJldmVudF93aGVudGhpc3Nwcml0ZWNsaWNrZWQiPT09ZVt0XS5vcGNvZGU/ZVt0XS5vcGNvZGU9ImV2ZW50X3doZW5zdGFnZWNsaWNrZWQiOkF8fCJldmVudF93aGVuc3RhZ2VjbGlja2VkIiE9PWVbdF0ub3Bjb2RlfHwoZVt0XS5vcGNvZGU9ImV2ZW50X3doZW50aGlzc3ByaXRlY2xpY2tlZCIpfXVwZGF0ZUFzc2V0TmFtZShBLGUsdCl7bGV0IG4saSxyPXRoaXMucnVudGltZS5nZXRFZGl0aW5nVGFyZ2V0KCk7c3dpdGNoKHQpe2Nhc2UiY29zdHVtZSI6aT0iQ09TVFVNRV9SRU5BTUVEIixuPXRoaXMuX2dldENvc3R1bWVGaWVsZC5iaW5kKHRoaXMpO2JyZWFrO2Nhc2UiYmFja2Ryb3AiOnI9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCksaT0iQ09TVFVNRV9SRU5BTUVEIixuPXRoaXMuX2dldEJhY2tkcm9wRmllbGQuYmluZCh0aGlzKTticmVhaztjYXNlInNvdW5kIjppPSJTT1VORF9SRU5BTUVEIixuPXRoaXMuX2dldFNvdW5kRmllbGQuYmluZCh0aGlzKTticmVhaztjYXNlInNwcml0ZSI6aT0iU1BSSVRFX1JFTkFNRUQiLG49dGhpcy5fZ2V0U3ByaXRlRmllbGQuYmluZCh0aGlzKTticmVhaztkZWZhdWx0OnJldHVybn1jb25zdCBvPXRoaXMuX2Jsb2Nrcztmb3IoY29uc3QgdCBpbiBvKXtjb25zdCBpPW4odCk7aSYmaS52YWx1ZT09PUEmJihpLnZhbHVlPWUpfXRoaXMucmVzZXRDYWNoZSgpLHRoaXMucnVudGltZS5lbWl0KGkse29sZDpBLG5ldzplfSxyKX11cGRhdGVTZW5zaW5nT2ZSZWZlcmVuY2UoQSxlLHQpe2NvbnN0IG49dGhpcy5fYmxvY2tzO2xldCBpPSExO2Zvcihjb25zdCByIGluIG4pe2NvbnN0IG89bltyXTtpZigic2Vuc2luZ19vZiI9PT1vLm9wY29kZSYmby5maWVsZHMuUFJPUEVSVFkudmFsdWU9PT1BJiZvLmlucHV0cy5PQkpFQ1QuYmxvY2s9PT1vLmlucHV0cy5PQkpFQ1Quc2hhZG93KXt0aGlzLmdldEJsb2NrKG8uaW5wdXRzLk9CSkVDVC5ibG9jaykuZmllbGRzLk9CSkVDVC52YWx1ZT09PXQmJihvLmZpZWxkcy5QUk9QRVJUWS52YWx1ZT1lLGk9ITApfX1yZXR1cm4gaSYmdGhpcy5yZXNldENhY2hlKCksaX1fZ2V0Q29zdHVtZUZpZWxkKEEpe2NvbnN0IGU9dGhpcy5nZXRCbG9jayhBKTtyZXR1cm4gZSYmZS5maWVsZHMuaGFzT3duUHJvcGVydHkoIkNPU1RVTUUiKT9lLmZpZWxkcy5DT1NUVU1FOm51bGx9X2dldFNvdW5kRmllbGQoQSl7Y29uc3QgZT10aGlzLmdldEJsb2NrKEEpO3JldHVybiBlJiZlLmZpZWxkcy5oYXNPd25Qcm9wZXJ0eSgiU09VTkRfTUVOVSIpP2UuZmllbGRzLlNPVU5EX01FTlU6bnVsbH1fZ2V0QmFja2Ryb3BGaWVsZChBKXtjb25zdCBlPXRoaXMuZ2V0QmxvY2soQSk7cmV0dXJuIGUmJmUuZmllbGRzLmhhc093blByb3BlcnR5KCJCQUNLRFJPUCIpP2UuZmllbGRzLkJBQ0tEUk9QOm51bGx9X2dldFNwcml0ZUZpZWxkKEEpe2NvbnN0IGU9dGhpcy5nZXRCbG9jayhBKTtpZighZSlyZXR1cm4gbnVsbDtjb25zdCB0PVsiVE9XQVJEUyIsIlRPIiwiT0JKRUNUIiwiVklERU9PTk1FTlUyIiwiRElTVEFOQ0VUT01FTlUiLCJUT1VDSElOR09CSkVDVE1FTlUiLCJDTE9ORV9PUFRJT04iXTtmb3IobGV0IEE9MDtBPHQubGVuZ3RoO0ErKyl7Y29uc3Qgbj10W0FdO2lmKGUuZmllbGRzLmhhc093blByb3BlcnR5KG4pKXJldHVybiBlLmZpZWxkc1tuXX1yZXR1cm4gbnVsbH10b1hNTChBKXtyZXR1cm4gdGhpcy5fc2NyaXB0cy5tYXAoZT0+dGhpcy5ibG9ja1RvWE1MKGUsQSkpLmpvaW4oKX1ibG9ja1RvWE1MKEEsZSl7Y29uc3QgdD10aGlzLl9ibG9ja3NbQV07aWYoIXQpcmV0dXJuO2NvbnN0IG49dC5zaGFkb3c/InNoYWRvdyI6ImJsb2NrIjtsZXQgaT0iPCIuY29uY2F0KG4sJ1xuICAgICAgICAgICAgICAgIGlkPSInKS5jb25jYXQobyh0LmlkKSwnIlxuICAgICAgICAgICAgICAgIHR5cGU9IicpLmNvbmNhdChvKHQub3Bjb2RlKSwnIlxuICAgICAgICAgICAgICAgICcpLmNvbmNhdCh0LnRvcExldmVsPyd4PSInLmNvbmNhdCh0LngsJyIgeT0iJykuY29uY2F0KHQueSwnIicpOiIiLCJcbiAgICAgICAgICAgID4iKTtjb25zdCByPXQuY29tbWVudDtyJiYoZT9lLmhhc093blByb3BlcnR5KHIpP2krPWVbcl0udG9YTUwoKTpFLndhcm4oIkNvdWxkIG5vdCBmaW5kIGNvbW1lbnQgd2l0aCBpZDogIi5jb25jYXQociwiIGluIHByb3ZpZGVkIGNvbW1lbnQgZGVzY3JpcHRpb25zLiIpKTpFLndhcm4oIkNhbm5vdCBzZXJpYWxpemUgY29tbWVudCB3aXRoIGlkOiAiLmNvbmNhdChyLCI7IG5vIGNvbW1lbnQgZGVzY3JpcHRpb25zIHByb3ZpZGVkLiIpKSksdC5tdXRhdGlvbiYmKGkrPXRoaXMubXV0YXRpb25Ub1hNTCh0Lm11dGF0aW9uKSk7Zm9yKGNvbnN0IEEgaW4gdC5pbnB1dHMpe2lmKCF0LmlucHV0cy5oYXNPd25Qcm9wZXJ0eShBKSljb250aW51ZTtjb25zdCBuPXQuaW5wdXRzW0FdOyhuLmJsb2NrfHxuLnNoYWRvdykmJihpKz0nPHZhbHVlIG5hbWU9IicuY29uY2F0KG8obi5uYW1lKSwnIj4nKSxuLmJsb2NrJiYoaSs9dGhpcy5ibG9ja1RvWE1MKG4uYmxvY2ssZSkpLG4uc2hhZG93JiZuLnNoYWRvdyE9PW4uYmxvY2smJihpKz10aGlzLmJsb2NrVG9YTUwobi5zaGFkb3csZSkpLGkrPSI8L3ZhbHVlPiIpfWZvcihjb25zdCBBIGluIHQuZmllbGRzKXtpZighdC5maWVsZHMuaGFzT3duUHJvcGVydHkoQSkpY29udGludWU7Y29uc3QgZT10LmZpZWxkc1tBXTtpKz0nPGZpZWxkIG5hbWU9IicuY29uY2F0KG8oZS5uYW1lKSwnIicpO2NvbnN0IG49ZS5pZDtuJiYoaSs9JyBpZD0iJy5jb25jYXQobyhuKSwnIicpKTtjb25zdCByPWUudmFyaWFibGVUeXBlOyJzdHJpbmciPT10eXBlb2YgciYmKGkrPScgdmFyaWFibGV0eXBlPSInLmNvbmNhdChvKHIpLCciJykpO2xldCBzPWUudmFsdWU7InN0cmluZyI9PXR5cGVvZiBzJiYocz1vKGUudmFsdWUpKSxpKz0iPiIuY29uY2F0KHMsIjwvZmllbGQ+Iil9cmV0dXJuIHQubmV4dCYmKGkrPSI8bmV4dD4iLmNvbmNhdCh0aGlzLmJsb2NrVG9YTUwodC5uZXh0LGUpLCI8L25leHQ+IikpLGkrPSI8LyIuY29uY2F0KG4sIj4iKSxpfW11dGF0aW9uVG9YTUwoQSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXJldHVybiBvKEEpO2xldCBlPSI8Ii5jb25jYXQoQS50YWdOYW1lKTtmb3IoY29uc3QgdCBpbiBBKXtpZigiY2hpbGRyZW4iPT09dHx8InRhZ05hbWUiPT09dCljb250aW51ZTtsZXQgbj0ic3RyaW5nIj09dHlwZW9mIEFbdF0/byhBW3RdKTpBW3RdOyJibG9ja0luZm8iPT09dCYmKG49byhKU09OLnN0cmluZ2lmeShBW3RdKSkpLGUrPSIgIi5jb25jYXQodCwnPSInKS5jb25jYXQobiwnIicpfWUrPSI+Ijtmb3IobGV0IHQ9MDt0PEEuY2hpbGRyZW4ubGVuZ3RoO3QrKyllKz10aGlzLm11dGF0aW9uVG9YTUwoQS5jaGlsZHJlblt0XSk7cmV0dXJuIGUrPSI8LyIuY29uY2F0KEEudGFnTmFtZSwiPiIpLGV9X2dldEJsb2NrUGFyYW1zKEEpe2NvbnN0IGU9e307Zm9yKGNvbnN0IHQgaW4gQS5maWVsZHMpZVt0XT1BLmZpZWxkc1t0XS52YWx1ZTtmb3IoY29uc3QgdCBpbiBBLmlucHV0cyl7Y29uc3Qgbj10aGlzLl9ibG9ja3NbQS5pbnB1dHNbdF0uYmxvY2tdO2Zvcihjb25zdCBBIGluIG4uZmllbGRzKWVbQV09bi5maWVsZHNbQV0udmFsdWV9cmV0dXJuIGV9X2dldEN1c3RvbUJsb2NrSW50ZXJuYWwoQSl7aWYoQS5pbnB1dHMmJkEuaW5wdXRzLmN1c3RvbV9ibG9jaylyZXR1cm4gdGhpcy5fYmxvY2tzW0EuaW5wdXRzLmN1c3RvbV9ibG9jay5ibG9ja119X2FkZFNjcmlwdChBKXt0aGlzLl9zY3JpcHRzLmluZGV4T2YoQSk+LTF8fCh0aGlzLl9zY3JpcHRzLnB1c2goQSksdGhpcy5fYmxvY2tzW0FdLnRvcExldmVsPSEwKX1fZGVsZXRlU2NyaXB0KEEpe2NvbnN0IGU9dGhpcy5fc2NyaXB0cy5pbmRleE9mKEEpO2U+LTEmJnRoaXMuX3NjcmlwdHMuc3BsaWNlKGUsMSksdGhpcy5fYmxvY2tzW0FdJiYodGhpcy5fYmxvY2tzW0FdLnRvcExldmVsPSExKX19Yy5nZXRDYWNoZWQ9ZnVuY3Rpb24oQSxlLHQpe2xldCBuPUEuX2NhY2hlLl9leGVjdXRlQ2FjaGVkW2VdO2lmKHZvaWQgMCE9PW4pcmV0dXJuIG47Y29uc3QgaT1BLmdldEJsb2NrKGUpO3JldHVybiB2b2lkIDA9PT1pP251bGw6KG49dm9pZCAwPT09dD97aWQ6ZSxvcGNvZGU6QS5nZXRPcGNvZGUoaSksZmllbGRzOkEuZ2V0RmllbGRzKGkpLGlucHV0czpBLmdldElucHV0cyhpKSxtdXRhdGlvbjpBLmdldE11dGF0aW9uKGkpfTpuZXcgdChBLHtpZDplLG9wY29kZTpBLmdldE9wY29kZShpKSxmaWVsZHM6QS5nZXRGaWVsZHMoaSksaW5wdXRzOkEuZ2V0SW5wdXRzKGkpLG11dGF0aW9uOkEuZ2V0TXV0YXRpb24oaSl9KSxBLl9jYWNoZS5fZXhlY3V0ZUNhY2hlZFtlXT1uLG4pfTtjb25zdCB3PWcuX1J1bnRpbWVTY3JpcHRDYWNoZTtnLmdldFNjcmlwdHM9ZnVuY3Rpb24oQSxlKXtsZXQgdD1BLl9jYWNoZS5zY3JpcHRzW2VdO2lmKCF0KXt0PUEuX2NhY2hlLnNjcmlwdHNbZV09W107Y29uc3Qgbj1BLl9zY3JpcHRzO2ZvcihsZXQgaT0wO2k8bi5sZW5ndGg7aSsrKXtjb25zdCByPW5baV07QS5nZXRCbG9jayhyKS5vcGNvZGU9PT1lJiZ0LnB1c2gobmV3IHcoQSxyKSl9fXJldHVybiB0fSxBLmV4cG9ydHM9aH0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxNDkpLGk9dCgxNTApO2NsYXNzIHJ7c3RhdGljIGJhc2U2NFRvVWludDhBcnJheShBKXtjb25zdCBlPW4oQSksdD1lLmxlbmd0aCxpPW5ldyBVaW50OEFycmF5KHQpO2ZvcihsZXQgQT0wO0E8dDtBKyspaVtBXT1lLmNoYXJDb2RlQXQoQSk7cmV0dXJuIGl9c3RhdGljIHVpbnQ4QXJyYXlUb0Jhc2U2NChBKXtsZXQgZT0iIjtjb25zdCB0PUEuYnl0ZUxlbmd0aDtmb3IobGV0IG49MDtuPHQ7bisrKWUrPVN0cmluZy5mcm9tQ2hhckNvZGUoQVtuXSk7cmV0dXJuIGkoZSl9c3RhdGljIGFycmF5QnVmZmVyVG9CYXNlNjQoQSl7cmV0dXJuIHIudWludDhBcnJheVRvQmFzZTY0KG5ldyBVaW50OEFycmF5KEEpKX19QS5leHBvcnRzPXJ9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNSksaT1mdW5jdGlvbihBKXtpZigic3RyaW5nIiE9dHlwZW9mIEEpe2lmKCFBcnJheS5pc0FycmF5KEEpKXJldHVybiBuLndhcm4oIlVuZXhwdGVjdGVkIHR5cGUgIi5jb25jYXQodHlwZW9mIEEsIiBpbiB4bWxFc2NhcGUgYXQ6ICIpLmNvbmNhdCgobmV3IEVycm9yKS5zdGFjaykpLEE7QT1TdHJpbmcoQSl9cmV0dXJuIEEucmVwbGFjZSgvWzw+JiciXS9nLEE9Pntzd2l0Y2goQSl7Y2FzZSI8IjpyZXR1cm4iJmx0OyI7Y2FzZSI+IjpyZXR1cm4iJmd0OyI7Y2FzZSImIjpyZXR1cm4iJmFtcDsiO2Nhc2UiJyI6cmV0dXJuIiZhcG9zOyI7Y2FzZSciJzpyZXR1cm4iJnF1b3Q7In19KX07QS5leHBvcnRzPWksQS5leHBvcnRzLmVzY2FwZUF0dHJpYnV0ZT1BPT57Y29uc3QgZT1pKEEpO3JldHVybiBKU09OLnN0cmluZ2lmeShlKS5zbGljZSgxLC0xKX19LGZ1bmN0aW9uKEEsZSx0KXsoZnVuY3Rpb24oZSl7QS5leHBvcnRzPWNsYXNze2J1ZmZlclRvQXJyYXkoQSxlKXtBPW5ldyBEYXRhVmlldyhBKTtjb25zdCB0PVtdLG49ImZ1bmN0aW9uIj09dHlwZW9mIGU/ZTpBPT5BO2ZvcihsZXQgZT0wO2U8QS5ieXRlTGVuZ3RoO2UrKyl7Y29uc3QgaT1BLmdldFVpbnQ4KGUpO3QucHVzaChuKGkpKX1yZXR1cm4gdH1hcnJheVRvQnVmZmVyKEEsdCl7dD0iZnVuY3Rpb24iPT10eXBlb2YgZT90OkE9PkE7Y29uc3Qgbj1uZXcgQXJyYXlCdWZmZXIoQS5sZW5ndGgpLGk9bmV3IERhdGFWaWV3KG4pO3JldHVybiBBLmZvckVhY2goKEEsZSk9PntBPXQoQSksaS5zZXRVaW50OChlLEEpfSksaS5idWZmZXJ9dWludDhBcnJheVRvQnVmZmVyKEEpe3JldHVybiBBLmJ1ZmZlci5zbGljZShBLmJ5dGVPZmZzZXQsQS5ieXRlTGVuZ3RoK0EuYnl0ZU9mZnNldCl9YnVmZmVyVG9VaW50OEFycmF5KEEpe3JldHVybiBuZXcgVWludDhBcnJheShBKX1idWZmZXJUb1N0cmluZyhBLGUsdCl7ZXx8KGU9IiAiKTtyZXR1cm4gdGhpcy5idWZmZXJUb0FycmF5KEEpLm1hcCgiZnVuY3Rpb24iPT10eXBlb2YgdD90OkE9PkEudG9TdHJpbmcoMTYpKS5tYXAoQT0+QS5sZW5ndGg8Mj8iMCIuY29uY2F0KEEpOkEpLmpvaW4oZSl9fX0pLmNhbGwodGhpcyx0KDQwKSl9LGZ1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXtmb3IodmFyIGU9W1tBLngsQS55XV07QS5wYXJlbnQ7KUE9QS5wYXJlbnQsZS5wdXNoKFtBLngsQS55XSk7cmV0dXJuIGUucmV2ZXJzZSgpfWZ1bmN0aW9uIG4oQSxlLHQsbil7dmFyIGkscixvLHMsYSxCLGM9TWF0aC5hYnMsZz1bXTtmb3IoaT1BPHQ/MTotMSxyPWU8bj8xOi0xLGE9KG89Yyh0LUEpKS0ocz1jKG4tZSkpO2cucHVzaChbQSxlXSksQSE9PXR8fGUhPT1uOykoQj0yKmEpPi1zJiYoYS09cyxBKz1pKSxCPG8mJihhKz1vLGUrPXIpO3JldHVybiBnfWUuYmFja3RyYWNlPXQsZS5iaUJhY2t0cmFjZT1mdW5jdGlvbihBLGUpe3ZhciBuPXQoQSksaT10KGUpO3JldHVybiBuLmNvbmNhdChpLnJldmVyc2UoKSl9LGUucGF0aExlbmd0aD1mdW5jdGlvbihBKXt2YXIgZSx0LG4saSxyLG89MDtmb3IoZT0xO2U8QS5sZW5ndGg7KytlKXQ9QVtlLTFdLG49QVtlXSxpPXRbMF0tblswXSxyPXRbMV0tblsxXSxvKz1NYXRoLnNxcnQoaSppK3Iqcik7cmV0dXJuIG99LGUuaW50ZXJwb2xhdGU9bixlLmV4cGFuZFBhdGg9ZnVuY3Rpb24oQSl7dmFyIGUsdCxpLHIsbyxzLGE9W10sQj1BLmxlbmd0aDtpZihCPDIpcmV0dXJuIGE7Zm9yKG89MDtvPEItMTsrK28pZm9yKGU9QVtvXSx0PUFbbysxXSxyPShpPW4oZVswXSxlWzFdLHRbMF0sdFsxXSkpLmxlbmd0aCxzPTA7czxyLTE7KytzKWEucHVzaChpW3NdKTtyZXR1cm4gYS5wdXNoKEFbQi0xXSksYX0sZS5zbW9vdGhlblBhdGg9ZnVuY3Rpb24oQSxlKXt2YXIgdCxpLHIsbyxzLGEsQixjLGcsRT1lLmxlbmd0aCxRPWVbMF1bMF0sdT1lWzBdWzFdLGw9ZVtFLTFdWzBdLGg9ZVtFLTFdWzFdO2ZvcihyPVtbdD1RLGk9dV1dLG89MjtvPEU7KytvKXtmb3IoQj1uKHQsaSwoYT1lW29dKVswXSxhWzFdKSxnPSExLHM9MTtzPEIubGVuZ3RoOysrcylpZihjPUJbc10sIUEuaXNXYWxrYWJsZUF0KGNbMF0sY1sxXSkpe2c9ITA7YnJlYWt9ZyYmKGxhc3RWYWxpZENvb3JkPWVbby0xXSxyLnB1c2gobGFzdFZhbGlkQ29vcmQpLHQ9bGFzdFZhbGlkQ29vcmRbMF0saT1sYXN0VmFsaWRDb29yZFsxXSl9cmV0dXJuIHIucHVzaChbbCxoXSkscn0sZS5jb21wcmVzc1BhdGg9ZnVuY3Rpb24oQSl7aWYoQS5sZW5ndGg8MylyZXR1cm4gQTt2YXIgZSx0LG4saSxyLG8scz1bXSxhPUFbMF1bMF0sQj1BWzBdWzFdLGM9QVsxXVswXSxnPUFbMV1bMV0sRT1jLWEsUT1nLUI7Zm9yKEUvPXI9TWF0aC5zcXJ0KEUqRStRKlEpLFEvPXIscy5wdXNoKFthLEJdKSxvPTI7bzxBLmxlbmd0aDtvKyspZT1jLHQ9ZyxuPUUsaT1RLEU9KGM9QVtvXVswXSktZSxRPShnPUFbb11bMV0pLXQsUS89cj1NYXRoLnNxcnQoRSpFK1EqUSksKEUvPXIpPT09biYmUT09PWl8fHMucHVzaChbZSx0XSk7cmV0dXJuIHMucHVzaChbYyxnXSksc319LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG4saT0ib2JqZWN0Ij09dHlwZW9mIFJlZmxlY3Q/UmVmbGVjdDpudWxsLHI9aSYmImZ1bmN0aW9uIj09dHlwZW9mIGkuYXBwbHk/aS5hcHBseTpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIEZ1bmN0aW9uLnByb3RvdHlwZS5hcHBseS5jYWxsKEEsZSx0KX07bj1pJiYiZnVuY3Rpb24iPT10eXBlb2YgaS5vd25LZXlzP2kub3duS2V5czpPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzP2Z1bmN0aW9uKEEpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhBKS5jb25jYXQoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKSl9OmZ1bmN0aW9uKEEpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhBKX07dmFyIG89TnVtYmVyLmlzTmFOfHxmdW5jdGlvbihBKXtyZXR1cm4gQSE9QX07ZnVuY3Rpb24gcygpe3MuaW5pdC5jYWxsKHRoaXMpfUEuZXhwb3J0cz1zLEEuZXhwb3J0cy5vbmNlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbih0LG4pe2Z1bmN0aW9uIGkodCl7QS5yZW1vdmVMaXN0ZW5lcihlLHIpLG4odCl9ZnVuY3Rpb24gcigpeyJmdW5jdGlvbiI9PXR5cGVvZiBBLnJlbW92ZUxpc3RlbmVyJiZBLnJlbW92ZUxpc3RlbmVyKCJlcnJvciIsaSksdChbXS5zbGljZS5jYWxsKGFyZ3VtZW50cykpfXcoQSxlLHIse29uY2U6ITB9KSwiZXJyb3IiIT09ZSYmZnVuY3Rpb24oQSxlLHQpeyJmdW5jdGlvbiI9PXR5cGVvZiBBLm9uJiZ3KEEsImVycm9yIixlLHQpfShBLGkse29uY2U6ITB9KX0pKX0scy5FdmVudEVtaXR0ZXI9cyxzLnByb3RvdHlwZS5fZXZlbnRzPXZvaWQgMCxzLnByb3RvdHlwZS5fZXZlbnRzQ291bnQ9MCxzLnByb3RvdHlwZS5fbWF4TGlzdGVuZXJzPXZvaWQgMDt2YXIgYT0xMDtmdW5jdGlvbiBCKEEpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSAibGlzdGVuZXIiIGFyZ3VtZW50IG11c3QgYmUgb2YgdHlwZSBGdW5jdGlvbi4gUmVjZWl2ZWQgdHlwZSAnK3R5cGVvZiBBKX1mdW5jdGlvbiBjKEEpe3JldHVybiB2b2lkIDA9PT1BLl9tYXhMaXN0ZW5lcnM/cy5kZWZhdWx0TWF4TGlzdGVuZXJzOkEuX21heExpc3RlbmVyc31mdW5jdGlvbiBnKEEsZSx0LG4pe3ZhciBpLHIsbyxzO2lmKEIodCksdm9pZCAwPT09KHI9QS5fZXZlbnRzKT8ocj1BLl9ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKSxBLl9ldmVudHNDb3VudD0wKToodm9pZCAwIT09ci5uZXdMaXN0ZW5lciYmKEEuZW1pdCgibmV3TGlzdGVuZXIiLGUsdC5saXN0ZW5lcj90Lmxpc3RlbmVyOnQpLHI9QS5fZXZlbnRzKSxvPXJbZV0pLHZvaWQgMD09PW8pbz1yW2VdPXQsKytBLl9ldmVudHNDb3VudDtlbHNlIGlmKCJmdW5jdGlvbiI9PXR5cGVvZiBvP289cltlXT1uP1t0LG9dOltvLHRdOm4/by51bnNoaWZ0KHQpOm8ucHVzaCh0KSwoaT1jKEEpKT4wJiZvLmxlbmd0aD5pJiYhby53YXJuZWQpe28ud2FybmVkPSEwO3ZhciBhPW5ldyBFcnJvcigiUG9zc2libGUgRXZlbnRFbWl0dGVyIG1lbW9yeSBsZWFrIGRldGVjdGVkLiAiK28ubGVuZ3RoKyIgIitTdHJpbmcoZSkrIiBsaXN0ZW5lcnMgYWRkZWQuIFVzZSBlbWl0dGVyLnNldE1heExpc3RlbmVycygpIHRvIGluY3JlYXNlIGxpbWl0Iik7YS5uYW1lPSJNYXhMaXN0ZW5lcnNFeGNlZWRlZFdhcm5pbmciLGEuZW1pdHRlcj1BLGEudHlwZT1lLGEuY291bnQ9by5sZW5ndGgscz1hLGNvbnNvbGUmJmNvbnNvbGUud2FybiYmY29uc29sZS53YXJuKHMpfXJldHVybiBBfWZ1bmN0aW9uIEUoKXtpZighdGhpcy5maXJlZClyZXR1cm4gdGhpcy50YXJnZXQucmVtb3ZlTGlzdGVuZXIodGhpcy50eXBlLHRoaXMud3JhcEZuKSx0aGlzLmZpcmVkPSEwLDA9PT1hcmd1bWVudHMubGVuZ3RoP3RoaXMubGlzdGVuZXIuY2FsbCh0aGlzLnRhcmdldCk6dGhpcy5saXN0ZW5lci5hcHBseSh0aGlzLnRhcmdldCxhcmd1bWVudHMpfWZ1bmN0aW9uIFEoQSxlLHQpe3ZhciBuPXtmaXJlZDohMSx3cmFwRm46dm9pZCAwLHRhcmdldDpBLHR5cGU6ZSxsaXN0ZW5lcjp0fSxpPUUuYmluZChuKTtyZXR1cm4gaS5saXN0ZW5lcj10LG4ud3JhcEZuPWksaX1mdW5jdGlvbiB1KEEsZSx0KXt2YXIgbj1BLl9ldmVudHM7aWYodm9pZCAwPT09bilyZXR1cm5bXTt2YXIgaT1uW2VdO3JldHVybiB2b2lkIDA9PT1pP1tdOiJmdW5jdGlvbiI9PXR5cGVvZiBpP3Q/W2kubGlzdGVuZXJ8fGldOltpXTp0P2Z1bmN0aW9uKEEpe2Zvcih2YXIgZT1uZXcgQXJyYXkoQS5sZW5ndGgpLHQ9MDt0PGUubGVuZ3RoOysrdCllW3RdPUFbdF0ubGlzdGVuZXJ8fEFbdF07cmV0dXJuIGV9KGkpOmgoaSxpLmxlbmd0aCl9ZnVuY3Rpb24gbChBKXt2YXIgZT10aGlzLl9ldmVudHM7aWYodm9pZCAwIT09ZSl7dmFyIHQ9ZVtBXTtpZigiZnVuY3Rpb24iPT10eXBlb2YgdClyZXR1cm4gMTtpZih2b2lkIDAhPT10KXJldHVybiB0Lmxlbmd0aH1yZXR1cm4gMH1mdW5jdGlvbiBoKEEsZSl7Zm9yKHZhciB0PW5ldyBBcnJheShlKSxuPTA7bjxlOysrbil0W25dPUFbbl07cmV0dXJuIHR9ZnVuY3Rpb24gdyhBLGUsdCxuKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgQS5vbiluLm9uY2U/QS5vbmNlKGUsdCk6QS5vbihlLHQpO2Vsc2V7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIEEuYWRkRXZlbnRMaXN0ZW5lcil0aHJvdyBuZXcgVHlwZUVycm9yKCdUaGUgImVtaXR0ZXIiIGFyZ3VtZW50IG11c3QgYmUgb2YgdHlwZSBFdmVudEVtaXR0ZXIuIFJlY2VpdmVkIHR5cGUgJyt0eXBlb2YgQSk7QS5hZGRFdmVudExpc3RlbmVyKGUsKGZ1bmN0aW9uIGkocil7bi5vbmNlJiZBLnJlbW92ZUV2ZW50TGlzdGVuZXIoZSxpKSx0KHIpfSkpfX1PYmplY3QuZGVmaW5lUHJvcGVydHkocywiZGVmYXVsdE1heExpc3RlbmVycyIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGF9LHNldDpmdW5jdGlvbihBKXtpZigibnVtYmVyIiE9dHlwZW9mIEF8fEE8MHx8byhBKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcignVGhlIHZhbHVlIG9mICJkZWZhdWx0TWF4TGlzdGVuZXJzIiBpcyBvdXQgb2YgcmFuZ2UuIEl0IG11c3QgYmUgYSBub24tbmVnYXRpdmUgbnVtYmVyLiBSZWNlaXZlZCAnK0ErIi4iKTthPUF9fSkscy5pbml0PWZ1bmN0aW9uKCl7dm9pZCAwIT09dGhpcy5fZXZlbnRzJiZ0aGlzLl9ldmVudHMhPT1PYmplY3QuZ2V0UHJvdG90eXBlT2YodGhpcykuX2V2ZW50c3x8KHRoaXMuX2V2ZW50cz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMuX2V2ZW50c0NvdW50PTApLHRoaXMuX21heExpc3RlbmVycz10aGlzLl9tYXhMaXN0ZW5lcnN8fHZvaWQgMH0scy5wcm90b3R5cGUuc2V0TWF4TGlzdGVuZXJzPWZ1bmN0aW9uKEEpe2lmKCJudW1iZXIiIT10eXBlb2YgQXx8QTwwfHxvKEEpKXRocm93IG5ldyBSYW5nZUVycm9yKCdUaGUgdmFsdWUgb2YgIm4iIGlzIG91dCBvZiByYW5nZS4gSXQgbXVzdCBiZSBhIG5vbi1uZWdhdGl2ZSBudW1iZXIuIFJlY2VpdmVkICcrQSsiLiIpO3JldHVybiB0aGlzLl9tYXhMaXN0ZW5lcnM9QSx0aGlzfSxzLnByb3RvdHlwZS5nZXRNYXhMaXN0ZW5lcnM9ZnVuY3Rpb24oKXtyZXR1cm4gYyh0aGlzKX0scy5wcm90b3R5cGUuZW1pdD1mdW5jdGlvbihBKXtmb3IodmFyIGU9W10sdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0KyspZS5wdXNoKGFyZ3VtZW50c1t0XSk7dmFyIG49ImVycm9yIj09PUEsaT10aGlzLl9ldmVudHM7aWYodm9pZCAwIT09aSluPW4mJnZvaWQgMD09PWkuZXJyb3I7ZWxzZSBpZighbilyZXR1cm4hMTtpZihuKXt2YXIgbztpZihlLmxlbmd0aD4wJiYobz1lWzBdKSxvIGluc3RhbmNlb2YgRXJyb3IpdGhyb3cgbzt2YXIgcz1uZXcgRXJyb3IoIlVuaGFuZGxlZCBlcnJvci4iKyhvPyIgKCIrby5tZXNzYWdlKyIpIjoiIikpO3Rocm93IHMuY29udGV4dD1vLHN9dmFyIGE9aVtBXTtpZih2b2lkIDA9PT1hKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBhKXIoYSx0aGlzLGUpO2Vsc2V7dmFyIEI9YS5sZW5ndGgsYz1oKGEsQik7Zm9yKHQ9MDt0PEI7Kyt0KXIoY1t0XSx0aGlzLGUpfXJldHVybiEwfSxzLnByb3RvdHlwZS5hZGRMaXN0ZW5lcj1mdW5jdGlvbihBLGUpe3JldHVybiBnKHRoaXMsQSxlLCExKX0scy5wcm90b3R5cGUub249cy5wcm90b3R5cGUuYWRkTGlzdGVuZXIscy5wcm90b3R5cGUucHJlcGVuZExpc3RlbmVyPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGcodGhpcyxBLGUsITApfSxzLnByb3RvdHlwZS5vbmNlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEIoZSksdGhpcy5vbihBLFEodGhpcyxBLGUpKSx0aGlzfSxzLnByb3RvdHlwZS5wcmVwZW5kT25jZUxpc3RlbmVyPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEIoZSksdGhpcy5wcmVwZW5kTGlzdGVuZXIoQSxRKHRoaXMsQSxlKSksdGhpc30scy5wcm90b3R5cGUucmVtb3ZlTGlzdGVuZXI9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuLGkscixvO2lmKEIoZSksdm9pZCAwPT09KG49dGhpcy5fZXZlbnRzKSlyZXR1cm4gdGhpcztpZih2b2lkIDA9PT0odD1uW0FdKSlyZXR1cm4gdGhpcztpZih0PT09ZXx8dC5saXN0ZW5lcj09PWUpMD09LS10aGlzLl9ldmVudHNDb3VudD90aGlzLl9ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKTooZGVsZXRlIG5bQV0sbi5yZW1vdmVMaXN0ZW5lciYmdGhpcy5lbWl0KCJyZW1vdmVMaXN0ZW5lciIsQSx0Lmxpc3RlbmVyfHxlKSk7ZWxzZSBpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl7Zm9yKGk9LTEscj10Lmxlbmd0aC0xO3I+PTA7ci0tKWlmKHRbcl09PT1lfHx0W3JdLmxpc3RlbmVyPT09ZSl7bz10W3JdLmxpc3RlbmVyLGk9cjticmVha31pZihpPDApcmV0dXJuIHRoaXM7MD09PWk/dC5zaGlmdCgpOmZ1bmN0aW9uKEEsZSl7Zm9yKDtlKzE8QS5sZW5ndGg7ZSsrKUFbZV09QVtlKzFdO0EucG9wKCl9KHQsaSksMT09PXQubGVuZ3RoJiYobltBXT10WzBdKSx2b2lkIDAhPT1uLnJlbW92ZUxpc3RlbmVyJiZ0aGlzLmVtaXQoInJlbW92ZUxpc3RlbmVyIixBLG98fGUpfXJldHVybiB0aGlzfSxzLnByb3RvdHlwZS5vZmY9cy5wcm90b3R5cGUucmVtb3ZlTGlzdGVuZXIscy5wcm90b3R5cGUucmVtb3ZlQWxsTGlzdGVuZXJzPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbjtpZih2b2lkIDA9PT0odD10aGlzLl9ldmVudHMpKXJldHVybiB0aGlzO2lmKHZvaWQgMD09PXQucmVtb3ZlTGlzdGVuZXIpcmV0dXJuIDA9PT1hcmd1bWVudHMubGVuZ3RoPyh0aGlzLl9ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKSx0aGlzLl9ldmVudHNDb3VudD0wKTp2b2lkIDAhPT10W0FdJiYoMD09LS10aGlzLl9ldmVudHNDb3VudD90aGlzLl9ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKTpkZWxldGUgdFtBXSksdGhpcztpZigwPT09YXJndW1lbnRzLmxlbmd0aCl7dmFyIGkscj1PYmplY3Qua2V5cyh0KTtmb3Iobj0wO248ci5sZW5ndGg7KytuKSJyZW1vdmVMaXN0ZW5lciIhPT0oaT1yW25dKSYmdGhpcy5yZW1vdmVBbGxMaXN0ZW5lcnMoaSk7cmV0dXJuIHRoaXMucmVtb3ZlQWxsTGlzdGVuZXJzKCJyZW1vdmVMaXN0ZW5lciIpLHRoaXMuX2V2ZW50cz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMuX2V2ZW50c0NvdW50PTAsdGhpc31pZigiZnVuY3Rpb24iPT10eXBlb2YoZT10W0FdKSl0aGlzLnJlbW92ZUxpc3RlbmVyKEEsZSk7ZWxzZSBpZih2b2lkIDAhPT1lKWZvcihuPWUubGVuZ3RoLTE7bj49MDtuLS0pdGhpcy5yZW1vdmVMaXN0ZW5lcihBLGVbbl0pO3JldHVybiB0aGlzfSxzLnByb3RvdHlwZS5saXN0ZW5lcnM9ZnVuY3Rpb24oQSl7cmV0dXJuIHUodGhpcyxBLCEwKX0scy5wcm90b3R5cGUucmF3TGlzdGVuZXJzPWZ1bmN0aW9uKEEpe3JldHVybiB1KHRoaXMsQSwhMSl9LHMubGlzdGVuZXJDb3VudD1mdW5jdGlvbihBLGUpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBBLmxpc3RlbmVyQ291bnQ/QS5saXN0ZW5lckNvdW50KGUpOmwuY2FsbChBLGUpfSxzLnByb3RvdHlwZS5saXN0ZW5lckNvdW50PWwscy5wcm90b3R5cGUuZXZlbnROYW1lcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9ldmVudHNDb3VudD4wP24odGhpcy5fZXZlbnRzKTpbXX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoOSksaT0iJ25vbmUnIixyPXthY2NlbGVyb21ldGVyOmksImFtYmllbnQtbGlnaHQtc2Vuc29yIjppLGJhdHRlcnk6aSxjYW1lcmE6aSwiZGlzcGxheS1jYXB0dXJlIjppLCJkb2N1bWVudC1kb21haW4iOmksImVuY3J5cHRlZC1tZWRpYSI6aSxmdWxsc2NyZWVuOmksZ2VvbG9jYXRpb246aSxneXJvc2NvcGU6aSxtYWduZXRvbWV0ZXI6aSxtaWNyb3Bob25lOmksbWlkaTppLHBheW1lbnQ6aSwicGljdHVyZS1pbi1waWN0dXJlIjppLCJwdWJsaWNrZXktY3JlZGVudGlhbHMtZ2V0IjppLCJzcGVha2VyLXNlbGVjdGlvbiI6aSx1c2I6aSx2aWJyYXRlOmksdnI6aSwic2NyZWVuLXdha2UtbG9jayI6aSwid2ViLXNoYXJlIjppLCJpbnRlcmVzdC1jb2hvcnQiOml9LG89KCk9Pntjb25zdCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpLGU9bigpK24oKStuKCkrbigpO3JldHVybiBBLmRhdGFzZXQuaWQ9ZSxBLnN0eWxlLmRpc3BsYXk9Im5vbmUiLEEuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKSxBLnNhbmRib3g9ImFsbG93LXNjcmlwdHMgYWxsb3ctbW9kYWxzIixBLmFsbG93PU9iamVjdC5lbnRyaWVzKHIpLm1hcChBPT57bGV0W2UsdF09QTtyZXR1cm4iIi5jb25jYXQoZSwiICIpLmNvbmNhdCh0KX0pLmpvaW4oIjsgIiksZG9jdW1lbnQuYm9keS5hcHBlbmQoQSksQX0scz0od2luZG93Lm9yaWdpbiwoQSxlKT0+e2NvbnN0IHQ9WyI8IURPQ1RZUEUgaHRtbD4iLCc8aHRtbCBsYW5nPSJlbi1VUyI+JywiPGhlYWQ+IiwiPHRpdGxlPnRoZSBhbiBvbmUgb2YgYW4gaWZyYW1lPC90aXRsZT4iLCI8L2hlYWQ+IiwiPGJvZHk+IiwiPGgxPjxwPmVwaWMgY29tcHV0aW5nIGluIHByb2dyZXNzLi4uPC9wPjwvaDE+IiwiPHNjcmlwdD4iLCIoYXN5bmMgKCkgPT4ge1xuICAgIGxldCByZXN1bHQgPSBudWxsO1xuICAgIGxldCBzdWNjZXNzID0gdHJ1ZTtcbiAgICB0cnkge1xuICAgICAgICAvLyB0ZWNoaW5jYWxseSBldmFsIGNhbiBhbHNvIHBvc3RNZXNzYWdlXG4gICAgICAgIC8vIGFuZCBhbHNvIG1vZGlmeSBzdWNjZXNzICYgcmVzdWx0IHByb2JhYmx5XG4gICAgICAgIC8vIGJ1dCB0aGVyZXMgbm8gcmVhbCByZWFzb24gdG8gcHJldmVudCBpdFxuICAgICAgICAvLyBub3IgZG9lcyB0aGUgdXNlciBoYXZlIGFueSByZWFzb24gdG8gZG8gaXRcbiAgICAgICAgcmVzdWx0ID0gYXdhaXQgZXZhbCgiLmNvbmNhdCgoQT0+SlNPTi5zdHJpbmdpZnkoQSkucmVwbGFjZUFsbCgiPFwvc2NyaXB0PiIsIjxcXC9zY3JpcHQ+IikpKEEpLCIpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBzdWNjZXNzID0gZmFsc2U7XG4gICAgICAgIHJlc3VsdCA9IGVycjtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJlbnQgPSB3aW5kb3cucGFyZW50O1xuICAgIGNvbnN0IG9yaWdpbiA9ICcqJztcbiAgICAvLyBjb25zb2xlLmxvZyhyZXN1bHQsc3VjY2Vzcyk7XG4gICAgY29uc29sZS5sb2cob3JpZ2luKTtcblxuICAgIHRyeSB7XG4gICAgICAgIHBhcmVudC5wb3N0TWVzc2FnZSh7XG4gICAgICAgICAgICBwYXlsb2FkOiB7XG4gICAgICAgICAgICAgICAgc3VjY2Vzczogc3VjY2VzcyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogcmVzdWx0LFxuICAgICAgICAgICAgICAgIGlkOiAiKS5jb25jYXQoSlNPTi5zdHJpbmdpZnkoZS5kYXRhc2V0LmlkKSwiXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LCBvcmlnaW4pO1xuICAgIH0gY2F0Y2ggKHRvcExldmVsRXJyb3IpIHtcbiAgICAgICAgLy8gY291bGRudCBjbG9uZSBsaWtlbHlcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHBhcmVudC5wb3N0TWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgcGF5bG9hZDoge1xuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiBzdWNjZXNzLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogSlNPTi5zdHJpbmdpZnkocmVzdWx0KSxcbiAgICAgICAgICAgICAgICAgICAgaWQ6ICIpLmNvbmNhdChKU09OLnN0cmluZ2lmeShlLmRhdGFzZXQuaWQpLCdcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSwgb3JpZ2luKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAvLyBvayB3ZSBjYW50IHN0cmluZ2lmeSBpdCBqdXN0IGVycm9yXG4gICAgICAgICAgICBwYXJlbnQucG9zdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgIHBheWxvYWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBbU3RyaW5nKHRvcExldmVsRXJyb3IpLCBTdHJpbmcoZXJyKV0uam9pbigiOyAiKSxcbiAgICAgICAgICAgICAgICAgICAgaWQ6ICcpLmNvbmNhdChKU09OLnN0cmluZ2lmeShlLmRhdGFzZXQuaWQpLCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSwgb3JpZ2luKTtcbiAgICAgICAgfVxuICAgIH1cbn0pKCk7IiksIjxcL3NjcmlwdD4iLCI8L2JvZHk+IiwiPC9odG1sPiJdLmpvaW4oIlxuIiksbj1uZXcgQmxvYihbdF0se3R5cGU6InRleHQvaHRtbDtjaGFyc2V0PVVURi04In0pO3JldHVybiBVUkwuY3JlYXRlT2JqZWN0VVJMKG4pfSk7QS5leHBvcnRzPWNsYXNze3N0YXRpYyBleGVjdXRlKEEpe3JldHVybiBuZXcgUHJvbWlzZShlPT57Y29uc3QgdD1vKCksbj1BPT57dmFyIGkscixvOyhpPUEscj10LG89bixuZXcgUHJvbWlzZShBPT57aWYoIWkuZGF0YS5wYXlsb2FkKXJldHVybjtpZihpLmRhdGEucGF5bG9hZC5pZCE9PXIuZGF0YXNldC5pZClyZXR1cm47Y29uc3QgZT1pLmRhdGEucGF5bG9hZDt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsbyk7dHJ5e2NvbnN0IEE9ci5zcmM7VVJMLnJldm9rZU9iamVjdFVSTChBKX1jYXRjaChBKXtjb25zb2xlLndhcm4oImZhaWxlZCB0byByZXZva2UgdXJsIG9mIGlmcmFtZSBzYW5kYm94ZWQgZXZhbCIpfXIucmVtb3ZlKCksQShlKX0pKS50aGVuKEE9PntlKHtzdWNjZXNzOkEuc3VjY2Vzcyx2YWx1ZTpBLnZhbHVlfSl9KX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLG4pLHQuc3JjPXMoQSx0KX0pfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMTcpLGk9dCg1MCkscj10KDQ2MCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5fcmVuZGVyZXI9ZSx0aGlzLl9pZD1BLHRoaXMuX3JvdGF0aW9uQ2VudGVyPW4udjMuY3JlYXRlKDAsMCksdGhpcy5fdGV4dHVyZT1udWxsLHRoaXMuX3VuaWZvcm1zPXt1X3NraW5TaXplOlswLDBdLHVfc2tpbjpudWxsfSx0aGlzLl9zaWxob3VldHRlPW5ldyByLHRoaXMucHJpdmF0ZT0hMX1kaXNwb3NlKCl7dGhpcy5faWQ9aS5JRF9OT05FfWdldCBpZCgpe3JldHVybiB0aGlzLl9pZH1nZXQgcm90YXRpb25DZW50ZXIoKXtyZXR1cm4gdGhpcy5fcm90YXRpb25DZW50ZXJ9Z2V0IHNpemUoKXtyZXR1cm5bMCwwXX11c2VOZWFyZXN0KEEsZSl7cmV0dXJuITB9Y2FsY3VsYXRlUm90YXRpb25DZW50ZXIoKXtyZXR1cm5bdGhpcy5zaXplWzBdLzIsdGhpcy5zaXplWzFdLzJdfWdldFRleHR1cmUoQSxlKXtyZXR1cm4gdGhpcy5fZW1wdHlJbWFnZVRleHR1cmV9Z2V0RmVuY2VCb3VuZHMoQSxlKXtyZXR1cm4gQS5nZXRBQUJCKGUpfWdldFVuaWZvcm1zKEEpe3JldHVybiB0aGlzLl91bmlmb3Jtcy51X3NraW49dGhpcy5nZXRUZXh0dXJlKEEpLHRoaXMuX3VuaWZvcm1zLnVfc2tpblNpemU9dGhpcy5zaXplLHRoaXMuX3VuaWZvcm1zfWVtaXRXYXNBbHRlcmVkKCl7dGhpcy5fcmVuZGVyZXIuc2tpbldhc0FsdGVyZWQodGhpcyl9dXBkYXRlU2lsaG91ZXR0ZSgpe3RoaXMuX3NpbGhvdWV0dGUudW5sYXp5KCl9X3NldFRleHR1cmUoQSl7Y29uc3QgZT10aGlzLl9yZW5kZXJlci5nbDtlLmJpbmRUZXh0dXJlKGUuVEVYVFVSRV8yRCx0aGlzLl90ZXh0dXJlKSxlLnBpeGVsU3RvcmVpKGUuVU5QQUNLX1BSRU1VTFRJUExZX0FMUEhBX1dFQkdMLCEwKSxlLnRleEltYWdlMkQoZS5URVhUVVJFXzJELDAsZS5SR0JBLGUuUkdCQSxlLlVOU0lHTkVEX0JZVEUsQSksZS5waXhlbFN0b3JlaShlLlVOUEFDS19QUkVNVUxUSVBMWV9BTFBIQV9XRUJHTCwhMSksdGhpcy5fc2lsaG91ZXR0ZS51cGRhdGUoQSl9c2V0RW1wdHlJbWFnZURhdGEoKXtpZih0aGlzLl90ZXh0dXJlPW51bGwsIXRoaXMuX2VtcHR5SW1hZ2VEYXRhKXt0aGlzLl9lbXB0eUltYWdlRGF0YT1uZXcgSW1hZ2VEYXRhKDEsMSk7Y29uc3QgQT10aGlzLl9yZW5kZXJlci5nbCxlPXthdXRvOiEwLHdyYXA6QS5DTEFNUF9UT19FREdFLHNyYzp0aGlzLl9lbXB0eUltYWdlRGF0YX07dGhpcy5fZW1wdHlJbWFnZVRleHR1cmU9bi5jcmVhdGVUZXh0dXJlKEEsZSl9dGhpcy5fcm90YXRpb25DZW50ZXJbMF09MCx0aGlzLl9yb3RhdGlvbkNlbnRlclsxXT0wLHRoaXMuX3NpbGhvdWV0dGUudXBkYXRlKHRoaXMuX2VtcHR5SW1hZ2VEYXRhKSx0aGlzLmVtaXRXYXNBbHRlcmVkKCl9aXNUb3VjaGluZ05lYXJlc3QoQSl7cmV0dXJuIHRoaXMuX3NpbGhvdWV0dGUuaXNUb3VjaGluZ05lYXJlc3QoQSl9aXNUb3VjaGluZ0xpbmVhcihBKXtyZXR1cm4gdGhpcy5fc2lsaG91ZXR0ZS5pc1RvdWNoaW5nTGluZWFyKEEpfX19LGZ1bmN0aW9uKEEsZSx0KXt0KDgxKSxBLmV4cG9ydHM9e1RleHRFbmNvZGVyOlRleHRFbmNvZGVyLFRleHREZWNvZGVyOlRleHREZWNvZGVyfX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0MTUpLGk9dCg0MzYpLHI9dCgxMDcpLG89dCgxMDMpLHM9dCg0MzgpLGE9dCgxMDYpLEI9dCg3MCksYz10KDEwNCksZz10KDQzOSksRT10KDY5KTtBLmV4cG9ydHM9e0JpdG1hcEFkYXB0ZXI6aSxjb252ZXJ0Rm9udHM6YyxpbmxpbmVTdmdGb250czpyLGxvYWRTdmdTdHJpbmc6byxzYW5pdGl6ZVN2ZzpzLHNlcmlhbGl6ZVN2Z1RvU3RyaW5nOmEsU3ZnRWxlbWVudDpCLFNWR1JlbmRlcmVyOm4sZml4Rm9yVmFuaWxsYTpnLERPTVB1cmlmeTpFfX0sZnVuY3Rpb24obW9kdWxlLGV4cG9ydHMsX193ZWJwYWNrX3JlcXVpcmVfXyl7KGZ1bmN0aW9uKHByb2Nlc3MsZ2xvYmFsKXt2YXIgX19XRUJQQUNLX0FNRF9ERUZJTkVfUkVTVUxUX187Ci8qKgogKiBbanMtbWQ1XXtAbGluayBodHRwczovL2dpdGh1Yi5jb20vZW1uMTc4L2pzLW1kNX0KICoKICogQG5hbWVzcGFjZSBtZDUKICogQHZlcnNpb24gMC43LjMKICogQGF1dGhvciBDaGVuLCBZaS1DeXVhbiBbZW1uMTc4QGdtYWlsLmNvbV0KICogQGNvcHlyaWdodCBDaGVuLCBZaS1DeXVhbiAyMDE0LTIwMTcKICogQGxpY2Vuc2UgTUlUCiAqLyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgRVJST1I9ImlucHV0IGlzIGludmFsaWQgdHlwZSIsV0lORE9XPSJvYmplY3QiPT10eXBlb2Ygd2luZG93LHJvb3Q9V0lORE9XP3dpbmRvdzp7fTtyb290LkpTX01ENV9OT19XSU5ET1cmJihXSU5ET1c9ITEpO3ZhciBXRUJfV09SS0VSPSFXSU5ET1cmJiJvYmplY3QiPT10eXBlb2Ygc2VsZixOT0RFX0pTPSFyb290LkpTX01ENV9OT19OT0RFX0pTJiYib2JqZWN0Ij09dHlwZW9mIHByb2Nlc3MmJnByb2Nlc3MudmVyc2lvbnMmJnByb2Nlc3MudmVyc2lvbnMubm9kZTtOT0RFX0pTP3Jvb3Q9Z2xvYmFsOldFQl9XT1JLRVImJihyb290PXNlbGYpO3ZhciBDT01NT05fSlM9IXJvb3QuSlNfTUQ1X05PX0NPTU1PTl9KUyYmIm9iamVjdCI9PXR5cGVvZiBtb2R1bGUmJm1vZHVsZS5leHBvcnRzLEFNRD1fX3dlYnBhY2tfcmVxdWlyZV9fKDQ0MyksQVJSQVlfQlVGRkVSPSFyb290LkpTX01ENV9OT19BUlJBWV9CVUZGRVImJiJ1bmRlZmluZWQiIT10eXBlb2YgQXJyYXlCdWZmZXIsSEVYX0NIQVJTPSIwMTIzNDU2Nzg5YWJjZGVmIi5zcGxpdCgiIiksRVhUUkE9WzEyOCwzMjc2OCw4Mzg4NjA4LC0yMTQ3NDgzNjQ4XSxTSElGVD1bMCw4LDE2LDI0XSxPVVRQVVRfVFlQRVM9WyJoZXgiLCJhcnJheSIsImRpZ2VzdCIsImJ1ZmZlciIsImFycmF5QnVmZmVyIiwiYmFzZTY0Il0sQkFTRTY0X0VOQ09ERV9DSEFSPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIi5zcGxpdCgiIiksYmxvY2tzPVtdLGJ1ZmZlcjg7aWYoQVJSQVlfQlVGRkVSKXt2YXIgYnVmZmVyPW5ldyBBcnJheUJ1ZmZlcig2OCk7YnVmZmVyOD1uZXcgVWludDhBcnJheShidWZmZXIpLGJsb2Nrcz1uZXcgVWludDMyQXJyYXkoYnVmZmVyKX0hcm9vdC5KU19NRDVfTk9fTk9ERV9KUyYmQXJyYXkuaXNBcnJheXx8KEFycmF5LmlzQXJyYXk9ZnVuY3Rpb24oQSl7cmV0dXJuIltvYmplY3QgQXJyYXldIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChBKX0pLCFBUlJBWV9CVUZGRVJ8fCFyb290LkpTX01ENV9OT19BUlJBWV9CVUZGRVJfSVNfVklFVyYmQXJyYXlCdWZmZXIuaXNWaWV3fHwoQXJyYXlCdWZmZXIuaXNWaWV3PWZ1bmN0aW9uKEEpe3JldHVybiJvYmplY3QiPT10eXBlb2YgQSYmQS5idWZmZXImJkEuYnVmZmVyLmNvbnN0cnVjdG9yPT09QXJyYXlCdWZmZXJ9KTt2YXIgY3JlYXRlT3V0cHV0TWV0aG9kPWZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gbmV3IE1kNSghMCkudXBkYXRlKGUpW0FdKCl9fSxjcmVhdGVNZXRob2Q9ZnVuY3Rpb24oKXt2YXIgQT1jcmVhdGVPdXRwdXRNZXRob2QoImhleCIpO05PREVfSlMmJihBPW5vZGVXcmFwKEEpKSxBLmNyZWF0ZT1mdW5jdGlvbigpe3JldHVybiBuZXcgTWQ1fSxBLnVwZGF0ZT1mdW5jdGlvbihlKXtyZXR1cm4gQS5jcmVhdGUoKS51cGRhdGUoZSl9O2Zvcih2YXIgZT0wO2U8T1VUUFVUX1RZUEVTLmxlbmd0aDsrK2Upe3ZhciB0PU9VVFBVVF9UWVBFU1tlXTtBW3RdPWNyZWF0ZU91dHB1dE1ldGhvZCh0KX1yZXR1cm4gQX0sbm9kZVdyYXA9ZnVuY3Rpb24gbm9kZVdyYXAobWV0aG9kKXt2YXIgY3J5cHRvPWV2YWwoInJlcXVpcmUoJ2NyeXB0bycpIiksQnVmZmVyPWV2YWwoInJlcXVpcmUoJ2J1ZmZlcicpLkJ1ZmZlciIpLG5vZGVNZXRob2Q9ZnVuY3Rpb24oQSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXJldHVybiBjcnlwdG8uY3JlYXRlSGFzaCgibWQ1IikudXBkYXRlKEEsInV0ZjgiKS5kaWdlc3QoImhleCIpO2lmKG51bGw9PUEpdGhyb3cgRVJST1I7cmV0dXJuIEEuY29uc3RydWN0b3I9PT1BcnJheUJ1ZmZlciYmKEE9bmV3IFVpbnQ4QXJyYXkoQSkpLEFycmF5LmlzQXJyYXkoQSl8fEFycmF5QnVmZmVyLmlzVmlldyhBKXx8QS5jb25zdHJ1Y3Rvcj09PUJ1ZmZlcj9jcnlwdG8uY3JlYXRlSGFzaCgibWQ1IikudXBkYXRlKG5ldyBCdWZmZXIoQSkpLmRpZ2VzdCgiaGV4Iik6bWV0aG9kKEEpfTtyZXR1cm4gbm9kZU1ldGhvZH07ZnVuY3Rpb24gTWQ1KEEpe2lmKEEpYmxvY2tzWzBdPWJsb2Nrc1sxNl09YmxvY2tzWzFdPWJsb2Nrc1syXT1ibG9ja3NbM109YmxvY2tzWzRdPWJsb2Nrc1s1XT1ibG9ja3NbNl09YmxvY2tzWzddPWJsb2Nrc1s4XT1ibG9ja3NbOV09YmxvY2tzWzEwXT1ibG9ja3NbMTFdPWJsb2Nrc1sxMl09YmxvY2tzWzEzXT1ibG9ja3NbMTRdPWJsb2Nrc1sxNV09MCx0aGlzLmJsb2Nrcz1ibG9ja3MsdGhpcy5idWZmZXI4PWJ1ZmZlcjg7ZWxzZSBpZihBUlJBWV9CVUZGRVIpe3ZhciBlPW5ldyBBcnJheUJ1ZmZlcig2OCk7dGhpcy5idWZmZXI4PW5ldyBVaW50OEFycmF5KGUpLHRoaXMuYmxvY2tzPW5ldyBVaW50MzJBcnJheShlKX1lbHNlIHRoaXMuYmxvY2tzPVswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdO3RoaXMuaDA9dGhpcy5oMT10aGlzLmgyPXRoaXMuaDM9dGhpcy5zdGFydD10aGlzLmJ5dGVzPXRoaXMuaEJ5dGVzPTAsdGhpcy5maW5hbGl6ZWQ9dGhpcy5oYXNoZWQ9ITEsdGhpcy5maXJzdD0hMH1NZDUucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihBKXtpZighdGhpcy5maW5hbGl6ZWQpe3ZhciBlLHQ9dHlwZW9mIEE7aWYoInN0cmluZyIhPT10KXtpZigib2JqZWN0IiE9PXQpdGhyb3cgRVJST1I7aWYobnVsbD09PUEpdGhyb3cgRVJST1I7aWYoQVJSQVlfQlVGRkVSJiZBLmNvbnN0cnVjdG9yPT09QXJyYXlCdWZmZXIpQT1uZXcgVWludDhBcnJheShBKTtlbHNlIGlmKCEoQXJyYXkuaXNBcnJheShBKXx8QVJSQVlfQlVGRkVSJiZBcnJheUJ1ZmZlci5pc1ZpZXcoQSkpKXRocm93IEVSUk9SO2U9ITB9Zm9yKHZhciBuLGkscj0wLG89QS5sZW5ndGgscz10aGlzLmJsb2NrcyxhPXRoaXMuYnVmZmVyODtyPG87KXtpZih0aGlzLmhhc2hlZCYmKHRoaXMuaGFzaGVkPSExLHNbMF09c1sxNl0sc1sxNl09c1sxXT1zWzJdPXNbM109c1s0XT1zWzVdPXNbNl09c1s3XT1zWzhdPXNbOV09c1sxMF09c1sxMV09c1sxMl09c1sxM109c1sxNF09c1sxNV09MCksZSlpZihBUlJBWV9CVUZGRVIpZm9yKGk9dGhpcy5zdGFydDtyPG8mJmk8NjQ7KytyKWFbaSsrXT1BW3JdO2Vsc2UgZm9yKGk9dGhpcy5zdGFydDtyPG8mJmk8NjQ7KytyKXNbaT4+Ml18PUFbcl08PFNISUZUWzMmaSsrXTtlbHNlIGlmKEFSUkFZX0JVRkZFUilmb3IoaT10aGlzLnN0YXJ0O3I8byYmaTw2NDsrK3IpKG49QS5jaGFyQ29kZUF0KHIpKTwxMjg/YVtpKytdPW46bjwyMDQ4PyhhW2krK109MTkyfG4+PjYsYVtpKytdPTEyOHw2MyZuKTpuPDU1Mjk2fHxuPj01NzM0ND8oYVtpKytdPTIyNHxuPj4xMixhW2krK109MTI4fG4+PjYmNjMsYVtpKytdPTEyOHw2MyZuKToobj02NTUzNisoKDEwMjMmbik8PDEwfDEwMjMmQS5jaGFyQ29kZUF0KCsrcikpLGFbaSsrXT0yNDB8bj4+MTgsYVtpKytdPTEyOHxuPj4xMiY2MyxhW2krK109MTI4fG4+PjYmNjMsYVtpKytdPTEyOHw2MyZuKTtlbHNlIGZvcihpPXRoaXMuc3RhcnQ7cjxvJiZpPDY0Oysrcikobj1BLmNoYXJDb2RlQXQocikpPDEyOD9zW2k+PjJdfD1uPDxTSElGVFszJmkrK106bjwyMDQ4PyhzW2k+PjJdfD0oMTkyfG4+PjYpPDxTSElGVFszJmkrK10sc1tpPj4yXXw9KDEyOHw2MyZuKTw8U0hJRlRbMyZpKytdKTpuPDU1Mjk2fHxuPj01NzM0ND8oc1tpPj4yXXw9KDIyNHxuPj4xMik8PFNISUZUWzMmaSsrXSxzW2k+PjJdfD0oMTI4fG4+PjYmNjMpPDxTSElGVFszJmkrK10sc1tpPj4yXXw9KDEyOHw2MyZuKTw8U0hJRlRbMyZpKytdKToobj02NTUzNisoKDEwMjMmbik8PDEwfDEwMjMmQS5jaGFyQ29kZUF0KCsrcikpLHNbaT4+Ml18PSgyNDB8bj4+MTgpPDxTSElGVFszJmkrK10sc1tpPj4yXXw9KDEyOHxuPj4xMiY2Myk8PFNISUZUWzMmaSsrXSxzW2k+PjJdfD0oMTI4fG4+PjYmNjMpPDxTSElGVFszJmkrK10sc1tpPj4yXXw9KDEyOHw2MyZuKTw8U0hJRlRbMyZpKytdKTt0aGlzLmxhc3RCeXRlSW5kZXg9aSx0aGlzLmJ5dGVzKz1pLXRoaXMuc3RhcnQsaT49NjQ/KHRoaXMuc3RhcnQ9aS02NCx0aGlzLmhhc2goKSx0aGlzLmhhc2hlZD0hMCk6dGhpcy5zdGFydD1pfXJldHVybiB0aGlzLmJ5dGVzPjQyOTQ5NjcyOTUmJih0aGlzLmhCeXRlcys9dGhpcy5ieXRlcy80Mjk0OTY3Mjk2PDwwLHRoaXMuYnl0ZXM9dGhpcy5ieXRlcyU0Mjk0OTY3Mjk2KSx0aGlzfX0sTWQ1LnByb3RvdHlwZS5maW5hbGl6ZT1mdW5jdGlvbigpe2lmKCF0aGlzLmZpbmFsaXplZCl7dGhpcy5maW5hbGl6ZWQ9ITA7dmFyIEE9dGhpcy5ibG9ja3MsZT10aGlzLmxhc3RCeXRlSW5kZXg7QVtlPj4yXXw9RVhUUkFbMyZlXSxlPj01NiYmKHRoaXMuaGFzaGVkfHx0aGlzLmhhc2goKSxBWzBdPUFbMTZdLEFbMTZdPUFbMV09QVsyXT1BWzNdPUFbNF09QVs1XT1BWzZdPUFbN109QVs4XT1BWzldPUFbMTBdPUFbMTFdPUFbMTJdPUFbMTNdPUFbMTRdPUFbMTVdPTApLEFbMTRdPXRoaXMuYnl0ZXM8PDMsQVsxNV09dGhpcy5oQnl0ZXM8PDN8dGhpcy5ieXRlcz4+PjI5LHRoaXMuaGFzaCgpfX0sTWQ1LnByb3RvdHlwZS5oYXNoPWZ1bmN0aW9uKCl7dmFyIEEsZSx0LG4saSxyLG89dGhpcy5ibG9ja3M7dGhpcy5maXJzdD9lPSgoZT0oKEE9KChBPW9bMF0tNjgwODc2OTM3KTw8N3xBPj4+MjUpLTI3MTczMzg3OTw8MCleKHQ9KCh0PSgtMjcxNzMzODc5XihuPSgobj0oLTE3MzI1ODQxOTReMjAwNDMxODA3MSZBKStvWzFdLTExNzgzMDcwOCk8PDEyfG4+Pj4yMCkrQTw8MCkmKC0yNzE3MzM4NzleQSkpK29bMl0tMTEyNjQ3ODM3NSk8PDE3fHQ+Pj4xNSkrbjw8MCkmKG5eQSkpK29bM10tMTMxNjI1OTIwOSk8PDIyfGU+Pj4xMCkrdDw8MDooQT10aGlzLmgwLGU9dGhpcy5oMSx0PXRoaXMuaDIsZT0oKGUrPSgoQT0oKEErPSgobj10aGlzLmgzKV5lJih0Xm4pKStvWzBdLTY4MDg3NjkzNik8PDd8QT4+PjI1KStlPDwwKV4odD0oKHQrPShlXihuPSgobis9KHReQSYoZV50KSkrb1sxXS0zODk1NjQ1ODYpPDwxMnxuPj4+MjApK0E8PDApJihBXmUpKStvWzJdKzYwNjEwNTgxOSk8PDE3fHQ+Pj4xNSkrbjw8MCkmKG5eQSkpK29bM10tMTA0NDUyNTMzMCk8PDIyfGU+Pj4xMCkrdDw8MCksZT0oKGUrPSgoQT0oKEErPShuXmUmKHRebikpK29bNF0tMTc2NDE4ODk3KTw8N3xBPj4+MjUpK2U8PDApXih0PSgodCs9KGVeKG49KChuKz0odF5BJihlXnQpKStvWzVdKzEyMDAwODA0MjYpPDwxMnxuPj4+MjApK0E8PDApJihBXmUpKStvWzZdLTE0NzMyMzEzNDEpPDwxN3x0Pj4+MTUpK248PDApJihuXkEpKStvWzddLTQ1NzA1OTgzKTw8MjJ8ZT4+PjEwKSt0PDwwLGU9KChlKz0oKEE9KChBKz0obl5lJih0Xm4pKStvWzhdKzE3NzAwMzU0MTYpPDw3fEE+Pj4yNSkrZTw8MCleKHQ9KCh0Kz0oZV4obj0oKG4rPSh0XkEmKGVedCkpK29bOV0tMTk1ODQxNDQxNyk8PDEyfG4+Pj4yMCkrQTw8MCkmKEFeZSkpK29bMTBdLTQyMDYzKTw8MTd8dD4+PjE1KStuPDwwKSYobl5BKSkrb1sxMV0tMTk5MDQwNDE2Mik8PDIyfGU+Pj4xMCkrdDw8MCxlPSgoZSs9KChBPSgoQSs9KG5eZSYodF5uKSkrb1sxMl0rMTgwNDYwMzY4Mik8PDd8QT4+PjI1KStlPDwwKV4odD0oKHQrPShlXihuPSgobis9KHReQSYoZV50KSkrb1sxM10tNDAzNDExMDEpPDwxMnxuPj4+MjApK0E8PDApJihBXmUpKStvWzE0XS0xNTAyMDAyMjkwKTw8MTd8dD4+PjE1KStuPDwwKSYobl5BKSkrb1sxNV0rMTIzNjUzNTMyOSk8PDIyfGU+Pj4xMCkrdDw8MCxlPSgoZSs9KChuPSgobis9KGVedCYoKEE9KChBKz0odF5uJihlXnQpKStvWzFdLTE2NTc5NjUxMCk8PDV8QT4+PjI3KStlPDwwKV5lKSkrb1s2XS0xMDY5NTAxNjMyKTw8OXxuPj4+MjMpK0E8PDApXkEmKCh0PSgodCs9KEFeZSYobl5BKSkrb1sxMV0rNjQzNzE3NzEzKTw8MTR8dD4+PjE4KStuPDwwKV5uKSkrb1swXS0zNzM4OTczMDIpPDwyMHxlPj4+MTIpK3Q8PDAsZT0oKGUrPSgobj0oKG4rPShlXnQmKChBPSgoQSs9KHRebiYoZV50KSkrb1s1XS03MDE1NTg2OTEpPDw1fEE+Pj4yNykrZTw8MCleZSkpK29bMTBdKzM4MDE2MDgzKTw8OXxuPj4+MjMpK0E8PDApXkEmKCh0PSgodCs9KEFeZSYobl5BKSkrb1sxNV0tNjYwNDc4MzM1KTw8MTR8dD4+PjE4KStuPDwwKV5uKSkrb1s0XS00MDU1Mzc4NDgpPDwyMHxlPj4+MTIpK3Q8PDAsZT0oKGUrPSgobj0oKG4rPShlXnQmKChBPSgoQSs9KHRebiYoZV50KSkrb1s5XSs1Njg0NDY0MzgpPDw1fEE+Pj4yNykrZTw8MCleZSkpK29bMTRdLTEwMTk4MDM2OTApPDw5fG4+Pj4yMykrQTw8MCleQSYoKHQ9KCh0Kz0oQV5lJihuXkEpKStvWzNdLTE4NzM2Mzk2MSk8PDE0fHQ+Pj4xOCkrbjw8MClebikpK29bOF0rMTE2MzUzMTUwMSk8PDIwfGU+Pj4xMikrdDw8MCxlPSgoZSs9KChuPSgobis9KGVedCYoKEE9KChBKz0odF5uJihlXnQpKStvWzEzXS0xNDQ0NjgxNDY3KTw8NXxBPj4+MjcpK2U8PDApXmUpKStvWzJdLTUxNDAzNzg0KTw8OXxuPj4+MjMpK0E8PDApXkEmKCh0PSgodCs9KEFeZSYobl5BKSkrb1s3XSsxNzM1MzI4NDczKTw8MTR8dD4+PjE4KStuPDwwKV5uKSkrb1sxMl0tMTkyNjYwNzczNCk8PDIwfGU+Pj4xMikrdDw8MCxlPSgoZSs9KChyPShuPSgobis9KChpPWVedCleKEE9KChBKz0oaV5uKStvWzVdLTM3ODU1OCk8PDR8QT4+PjI4KStlPDwwKSkrb1s4XS0yMDIyNTc0NDYzKTw8MTF8bj4+PjIxKStBPDwwKV5BKV4odD0oKHQrPShyXmUpK29bMTFdKzE4MzkwMzA1NjIpPDwxNnx0Pj4+MTYpK248PDApKStvWzE0XS0zNTMwOTU1Nik8PDIzfGU+Pj45KSt0PDwwLGU9KChlKz0oKHI9KG49KChuKz0oKGk9ZV50KV4oQT0oKEErPShpXm4pK29bMV0tMTUzMDk5MjA2MCk8PDR8QT4+PjI4KStlPDwwKSkrb1s0XSsxMjcyODkzMzUzKTw8MTF8bj4+PjIxKStBPDwwKV5BKV4odD0oKHQrPShyXmUpK29bN10tMTU1NDk3NjMyKTw8MTZ8dD4+PjE2KStuPDwwKSkrb1sxMF0tMTA5NDczMDY0MCk8PDIzfGU+Pj45KSt0PDwwLGU9KChlKz0oKHI9KG49KChuKz0oKGk9ZV50KV4oQT0oKEErPShpXm4pK29bMTNdKzY4MTI3OTE3NCk8PDR8QT4+PjI4KStlPDwwKSkrb1swXS0zNTg1MzcyMjIpPDwxMXxuPj4+MjEpK0E8PDApXkEpXih0PSgodCs9KHJeZSkrb1szXS03MjI1MjE5NzkpPDwxNnx0Pj4+MTYpK248PDApKStvWzZdKzc2MDI5MTg5KTw8MjN8ZT4+PjkpK3Q8PDAsZT0oKGUrPSgocj0obj0oKG4rPSgoaT1lXnQpXihBPSgoQSs9KGlebikrb1s5XS02NDAzNjQ0ODcpPDw0fEE+Pj4yOCkrZTw8MCkpK29bMTJdLTQyMTgxNTgzNSk8PDExfG4+Pj4yMSkrQTw8MCleQSleKHQ9KCh0Kz0ocl5lKStvWzE1XSs1MzA3NDI1MjApPDwxNnx0Pj4+MTYpK248PDApKStvWzJdLTk5NTMzODY1MSk8PDIzfGU+Pj45KSt0PDwwLGU9KChlKz0oKG49KChuKz0oZV4oKEE9KChBKz0odF4oZXx+bikpK29bMF0tMTk4NjMwODQ0KTw8NnxBPj4+MjYpK2U8PDApfH50KSkrb1s3XSsxMTI2ODkxNDE1KTw8MTB8bj4+PjIyKStBPDwwKV4oKHQ9KCh0Kz0oQV4obnx+ZSkpK29bMTRdLTE0MTYzNTQ5MDUpPDwxNXx0Pj4+MTcpK248PDApfH5BKSkrb1s1XS01NzQzNDA1NSk8PDIxfGU+Pj4xMSkrdDw8MCxlPSgoZSs9KChuPSgobis9KGVeKChBPSgoQSs9KHReKGV8fm4pKStvWzEyXSsxNzAwNDg1NTcxKTw8NnxBPj4+MjYpK2U8PDApfH50KSkrb1szXS0xODk0OTg2NjA2KTw8MTB8bj4+PjIyKStBPDwwKV4oKHQ9KCh0Kz0oQV4obnx+ZSkpK29bMTBdLTEwNTE1MjMpPDwxNXx0Pj4+MTcpK248PDApfH5BKSkrb1sxXS0yMDU0OTIyNzk5KTw8MjF8ZT4+PjExKSt0PDwwLGU9KChlKz0oKG49KChuKz0oZV4oKEE9KChBKz0odF4oZXx+bikpK29bOF0rMTg3MzMxMzM1OSk8PDZ8QT4+PjI2KStlPDwwKXx+dCkpK29bMTVdLTMwNjExNzQ0KTw8MTB8bj4+PjIyKStBPDwwKV4oKHQ9KCh0Kz0oQV4obnx+ZSkpK29bNl0tMTU2MDE5ODM4MCk8PDE1fHQ+Pj4xNykrbjw8MCl8fkEpKStvWzEzXSsxMzA5MTUxNjQ5KTw8MjF8ZT4+PjExKSt0PDwwLGU9KChlKz0oKG49KChuKz0oZV4oKEE9KChBKz0odF4oZXx+bikpK29bNF0tMTQ1NTIzMDcwKTw8NnxBPj4+MjYpK2U8PDApfH50KSkrb1sxMV0tMTEyMDIxMDM3OSk8PDEwfG4+Pj4yMikrQTw8MCleKCh0PSgodCs9KEFeKG58fmUpKStvWzJdKzcxODc4NzI1OSk8PDE1fHQ+Pj4xNykrbjw8MCl8fkEpKStvWzldLTM0MzQ4NTU1MSk8PDIxfGU+Pj4xMSkrdDw8MCx0aGlzLmZpcnN0Pyh0aGlzLmgwPUErMTczMjU4NDE5Mzw8MCx0aGlzLmgxPWUtMjcxNzMzODc5PDwwLHRoaXMuaDI9dC0xNzMyNTg0MTk0PDwwLHRoaXMuaDM9bisyNzE3MzM4Nzg8PDAsdGhpcy5maXJzdD0hMSk6KHRoaXMuaDA9dGhpcy5oMCtBPDwwLHRoaXMuaDE9dGhpcy5oMStlPDwwLHRoaXMuaDI9dGhpcy5oMit0PDwwLHRoaXMuaDM9dGhpcy5oMytuPDwwKX0sTWQ1LnByb3RvdHlwZS5oZXg9ZnVuY3Rpb24oKXt0aGlzLmZpbmFsaXplKCk7dmFyIEE9dGhpcy5oMCxlPXRoaXMuaDEsdD10aGlzLmgyLG49dGhpcy5oMztyZXR1cm4gSEVYX0NIQVJTW0E+PjQmMTVdK0hFWF9DSEFSU1sxNSZBXStIRVhfQ0hBUlNbQT4+MTImMTVdK0hFWF9DSEFSU1tBPj44JjE1XStIRVhfQ0hBUlNbQT4+MjAmMTVdK0hFWF9DSEFSU1tBPj4xNiYxNV0rSEVYX0NIQVJTW0E+PjI4JjE1XStIRVhfQ0hBUlNbQT4+MjQmMTVdK0hFWF9DSEFSU1tlPj40JjE1XStIRVhfQ0hBUlNbMTUmZV0rSEVYX0NIQVJTW2U+PjEyJjE1XStIRVhfQ0hBUlNbZT4+OCYxNV0rSEVYX0NIQVJTW2U+PjIwJjE1XStIRVhfQ0hBUlNbZT4+MTYmMTVdK0hFWF9DSEFSU1tlPj4yOCYxNV0rSEVYX0NIQVJTW2U+PjI0JjE1XStIRVhfQ0hBUlNbdD4+NCYxNV0rSEVYX0NIQVJTWzE1JnRdK0hFWF9DSEFSU1t0Pj4xMiYxNV0rSEVYX0NIQVJTW3Q+PjgmMTVdK0hFWF9DSEFSU1t0Pj4yMCYxNV0rSEVYX0NIQVJTW3Q+PjE2JjE1XStIRVhfQ0hBUlNbdD4+MjgmMTVdK0hFWF9DSEFSU1t0Pj4yNCYxNV0rSEVYX0NIQVJTW24+PjQmMTVdK0hFWF9DSEFSU1sxNSZuXStIRVhfQ0hBUlNbbj4+MTImMTVdK0hFWF9DSEFSU1tuPj44JjE1XStIRVhfQ0hBUlNbbj4+MjAmMTVdK0hFWF9DSEFSU1tuPj4xNiYxNV0rSEVYX0NIQVJTW24+PjI4JjE1XStIRVhfQ0hBUlNbbj4+MjQmMTVdfSxNZDUucHJvdG90eXBlLnRvU3RyaW5nPU1kNS5wcm90b3R5cGUuaGV4LE1kNS5wcm90b3R5cGUuZGlnZXN0PWZ1bmN0aW9uKCl7dGhpcy5maW5hbGl6ZSgpO3ZhciBBPXRoaXMuaDAsZT10aGlzLmgxLHQ9dGhpcy5oMixuPXRoaXMuaDM7cmV0dXJuWzI1NSZBLEE+PjgmMjU1LEE+PjE2JjI1NSxBPj4yNCYyNTUsMjU1JmUsZT4+OCYyNTUsZT4+MTYmMjU1LGU+PjI0JjI1NSwyNTUmdCx0Pj44JjI1NSx0Pj4xNiYyNTUsdD4+MjQmMjU1LDI1NSZuLG4+PjgmMjU1LG4+PjE2JjI1NSxuPj4yNCYyNTVdfSxNZDUucHJvdG90eXBlLmFycmF5PU1kNS5wcm90b3R5cGUuZGlnZXN0LE1kNS5wcm90b3R5cGUuYXJyYXlCdWZmZXI9ZnVuY3Rpb24oKXt0aGlzLmZpbmFsaXplKCk7dmFyIEE9bmV3IEFycmF5QnVmZmVyKDE2KSxlPW5ldyBVaW50MzJBcnJheShBKTtyZXR1cm4gZVswXT10aGlzLmgwLGVbMV09dGhpcy5oMSxlWzJdPXRoaXMuaDIsZVszXT10aGlzLmgzLEF9LE1kNS5wcm90b3R5cGUuYnVmZmVyPU1kNS5wcm90b3R5cGUuYXJyYXlCdWZmZXIsTWQ1LnByb3RvdHlwZS5iYXNlNjQ9ZnVuY3Rpb24oKXtmb3IodmFyIEEsZSx0LG49IiIsaT10aGlzLmFycmF5KCkscj0wO3I8MTU7KUE9aVtyKytdLGU9aVtyKytdLHQ9aVtyKytdLG4rPUJBU0U2NF9FTkNPREVfQ0hBUltBPj4+Ml0rQkFTRTY0X0VOQ09ERV9DSEFSWzYzJihBPDw0fGU+Pj40KV0rQkFTRTY0X0VOQ09ERV9DSEFSWzYzJihlPDwyfHQ+Pj42KV0rQkFTRTY0X0VOQ09ERV9DSEFSWzYzJnRdO3JldHVybiBBPWlbcl0sbis9QkFTRTY0X0VOQ09ERV9DSEFSW0E+Pj4yXStCQVNFNjRfRU5DT0RFX0NIQVJbQTw8NCY2M10rIj09In07dmFyIGV4cG9ydHM9Y3JlYXRlTWV0aG9kKCk7Q09NTU9OX0pTP21vZHVsZS5leHBvcnRzPWV4cG9ydHM6KHJvb3QubWQ1PWV4cG9ydHMsQU1EJiYoX19XRUJQQUNLX0FNRF9ERUZJTkVfUkVTVUxUX189ZnVuY3Rpb24oKXtyZXR1cm4gZXhwb3J0c30uY2FsbChleHBvcnRzLF9fd2VicGFja19yZXF1aXJlX18sZXhwb3J0cyxtb2R1bGUpLHZvaWQgMD09PV9fV0VCUEFDS19BTURfREVGSU5FX1JFU1VMVF9ffHwobW9kdWxlLmV4cG9ydHM9X19XRUJQQUNLX0FNRF9ERUZJTkVfUkVTVUxUX18pKSl9KCl9KS5jYWxsKHRoaXMsX193ZWJwYWNrX3JlcXVpcmVfXyg0MCksX193ZWJwYWNrX3JlcXVpcmVfXygxNSkpfSxmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKGUsdCxuLGkpe0EuZXhwb3J0cz1mdW5jdGlvbiBBKGUsdCxuKXtmdW5jdGlvbiBpKG8scyl7aWYoIXRbb10pe2lmKCFlW29dKXtpZihyKXJldHVybiByKG8sITApO3ZhciBhPW5ldyBFcnJvcigiQ2Fubm90IGZpbmQgbW9kdWxlICciK28rIiciKTt0aHJvdyBhLmNvZGU9Ik1PRFVMRV9OT1RfRk9VTkQiLGF9dmFyIEI9dFtvXT17ZXhwb3J0czp7fX07ZVtvXVswXS5jYWxsKEIuZXhwb3J0cywoZnVuY3Rpb24oQSl7cmV0dXJuIGkoZVtvXVsxXVtBXXx8QSl9KSxCLEIuZXhwb3J0cyxBLGUsdCxuKX1yZXR1cm4gdFtvXS5leHBvcnRzfWZvcih2YXIgcj0hMSxvPTA7bzxuLmxlbmd0aDtvKyspaShuW29dKTtyZXR1cm4gaX0oezE6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49QSgiLi91dGlscyIpLGk9QSgiLi9zdXBwb3J0Iikscj0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0iO3QuZW5jb2RlPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZSx0LGksbyxzLGEsQixjPVtdLGc9MCxFPUEubGVuZ3RoLFE9RSx1PSJzdHJpbmciIT09bi5nZXRUeXBlT2YoQSk7ZzxBLmxlbmd0aDspUT1FLWcsaT11PyhlPUFbZysrXSx0PWc8RT9BW2crK106MCxnPEU/QVtnKytdOjApOihlPUEuY2hhckNvZGVBdChnKyspLHQ9ZzxFP0EuY2hhckNvZGVBdChnKyspOjAsZzxFP0EuY2hhckNvZGVBdChnKyspOjApLG89ZT4+MixzPSgzJmUpPDw0fHQ+PjQsYT0xPFE/KDE1JnQpPDwyfGk+PjY6NjQsQj0yPFE/NjMmaTo2NCxjLnB1c2goci5jaGFyQXQobykrci5jaGFyQXQocykrci5jaGFyQXQoYSkrci5jaGFyQXQoQikpO3JldHVybiBjLmpvaW4oIiIpfSx0LmRlY29kZT1mdW5jdGlvbihBKXt2YXIgZSx0LG4sbyxzLGEsQj0wLGM9MCxnPSJkYXRhOiI7aWYoQS5zdWJzdHIoMCxnLmxlbmd0aCk9PT1nKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBiYXNlNjQgaW5wdXQsIGl0IGxvb2tzIGxpa2UgYSBkYXRhIHVybC4iKTt2YXIgRSxRPTMqKEE9QS5yZXBsYWNlKC9bXkEtWmEtejAtOSsvPV0vZywiIikpLmxlbmd0aC80O2lmKEEuY2hhckF0KEEubGVuZ3RoLTEpPT09ci5jaGFyQXQoNjQpJiZRLS0sQS5jaGFyQXQoQS5sZW5ndGgtMik9PT1yLmNoYXJBdCg2NCkmJlEtLSxRJTEhPTApdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIGJhc2U2NCBpbnB1dCwgYmFkIGNvbnRlbnQgbGVuZ3RoLiIpO2ZvcihFPWkudWludDhhcnJheT9uZXcgVWludDhBcnJheSgwfFEpOm5ldyBBcnJheSgwfFEpO0I8QS5sZW5ndGg7KWU9ci5pbmRleE9mKEEuY2hhckF0KEIrKykpPDwyfChvPXIuaW5kZXhPZihBLmNoYXJBdChCKyspKSk+PjQsdD0oMTUmbyk8PDR8KHM9ci5pbmRleE9mKEEuY2hhckF0KEIrKykpKT4+MixuPSgzJnMpPDw2fChhPXIuaW5kZXhPZihBLmNoYXJBdChCKyspKSksRVtjKytdPWUsNjQhPT1zJiYoRVtjKytdPXQpLDY0IT09YSYmKEVbYysrXT1uKTtyZXR1cm4gRX19LHsiLi9zdXBwb3J0IjozMCwiLi91dGlscyI6MzJ9XSwyOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4vZXh0ZXJuYWwiKSxpPUEoIi4vc3RyZWFtL0RhdGFXb3JrZXIiKSxyPUEoIi4vc3RyZWFtL0NyYzMyUHJvYmUiKSxvPUEoIi4vc3RyZWFtL0RhdGFMZW5ndGhQcm9iZSIpO2Z1bmN0aW9uIHMoQSxlLHQsbixpKXt0aGlzLmNvbXByZXNzZWRTaXplPUEsdGhpcy51bmNvbXByZXNzZWRTaXplPWUsdGhpcy5jcmMzMj10LHRoaXMuY29tcHJlc3Npb249bix0aGlzLmNvbXByZXNzZWRDb250ZW50PWl9cy5wcm90b3R5cGU9e2dldENvbnRlbnRXb3JrZXI6ZnVuY3Rpb24oKXt2YXIgQT1uZXcgaShuLlByb21pc2UucmVzb2x2ZSh0aGlzLmNvbXByZXNzZWRDb250ZW50KSkucGlwZSh0aGlzLmNvbXByZXNzaW9uLnVuY29tcHJlc3NXb3JrZXIoKSkucGlwZShuZXcgbygiZGF0YV9sZW5ndGgiKSksZT10aGlzO3JldHVybiBBLm9uKCJlbmQiLChmdW5jdGlvbigpe2lmKHRoaXMuc3RyZWFtSW5mby5kYXRhX2xlbmd0aCE9PWUudW5jb21wcmVzc2VkU2l6ZSl0aHJvdyBuZXcgRXJyb3IoIkJ1ZyA6IHVuY29tcHJlc3NlZCBkYXRhIHNpemUgbWlzbWF0Y2giKX0pKSxBfSxnZXRDb21wcmVzc2VkV29ya2VyOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBpKG4uUHJvbWlzZS5yZXNvbHZlKHRoaXMuY29tcHJlc3NlZENvbnRlbnQpKS53aXRoU3RyZWFtSW5mbygiY29tcHJlc3NlZFNpemUiLHRoaXMuY29tcHJlc3NlZFNpemUpLndpdGhTdHJlYW1JbmZvKCJ1bmNvbXByZXNzZWRTaXplIix0aGlzLnVuY29tcHJlc3NlZFNpemUpLndpdGhTdHJlYW1JbmZvKCJjcmMzMiIsdGhpcy5jcmMzMikud2l0aFN0cmVhbUluZm8oImNvbXByZXNzaW9uIix0aGlzLmNvbXByZXNzaW9uKX19LHMuY3JlYXRlV29ya2VyRnJvbT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIEEucGlwZShuZXcgcikucGlwZShuZXcgbygidW5jb21wcmVzc2VkU2l6ZSIpKS5waXBlKGUuY29tcHJlc3NXb3JrZXIodCkpLnBpcGUobmV3IG8oImNvbXByZXNzZWRTaXplIikpLndpdGhTdHJlYW1JbmZvKCJjb21wcmVzc2lvbiIsZSl9LGUuZXhwb3J0cz1zfSx7Ii4vZXh0ZXJuYWwiOjYsIi4vc3RyZWFtL0NyYzMyUHJvYmUiOjI1LCIuL3N0cmVhbS9EYXRhTGVuZ3RoUHJvYmUiOjI2LCIuL3N0cmVhbS9EYXRhV29ya2VyIjoyN31dLDM6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49QSgiLi9zdHJlYW0vR2VuZXJpY1dvcmtlciIpO3QuU1RPUkU9e21hZ2ljOiJcMFwwIixjb21wcmVzc1dvcmtlcjpmdW5jdGlvbigpe3JldHVybiBuZXcgbigiU1RPUkUgY29tcHJlc3Npb24iKX0sdW5jb21wcmVzc1dvcmtlcjpmdW5jdGlvbigpe3JldHVybiBuZXcgbigiU1RPUkUgZGVjb21wcmVzc2lvbiIpfX0sdC5ERUZMQVRFPUEoIi4vZmxhdGUiKX0seyIuL2ZsYXRlIjo3LCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIjoyOH1dLDQ6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49QSgiLi91dGlscyIpLGk9ZnVuY3Rpb24oKXtmb3IodmFyIEEsZT1bXSx0PTA7dDwyNTY7dCsrKXtBPXQ7Zm9yKHZhciBuPTA7bjw4O24rKylBPTEmQT8zOTg4MjkyMzg0XkE+Pj4xOkE+Pj4xO2VbdF09QX1yZXR1cm4gZX0oKTtlLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdm9pZCAwIT09QSYmQS5sZW5ndGg/InN0cmluZyIhPT1uLmdldFR5cGVPZihBKT9mdW5jdGlvbihBLGUsdCxuKXt2YXIgcj1pLG89MCt0O0FePS0xO2Zvcih2YXIgcz0wO3M8bztzKyspQT1BPj4+OF5yWzI1NSYoQV5lW3NdKV07cmV0dXJuLTFeQX0oMHxlLEEsQS5sZW5ndGgpOmZ1bmN0aW9uKEEsZSx0LG4pe3ZhciByPWksbz0wK3Q7QV49LTE7Zm9yKHZhciBzPTA7czxvO3MrKylBPUE+Pj44XnJbMjU1JihBXmUuY2hhckNvZGVBdChzKSldO3JldHVybi0xXkF9KDB8ZSxBLEEubGVuZ3RoKTowfX0seyIuL3V0aWxzIjozMn1dLDU6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5iYXNlNjQ9ITEsdC5iaW5hcnk9ITEsdC5kaXI9ITEsdC5jcmVhdGVGb2xkZXJzPSEwLHQuZGF0ZT1udWxsLHQuY29tcHJlc3Npb249bnVsbCx0LmNvbXByZXNzaW9uT3B0aW9ucz1udWxsLHQuY29tbWVudD1udWxsLHQudW5peFBlcm1pc3Npb25zPW51bGwsdC5kb3NQZXJtaXNzaW9ucz1udWxsfSx7fV0sNjpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbjtuPSJ1bmRlZmluZWQiIT10eXBlb2YgUHJvbWlzZT9Qcm9taXNlOkEoImxpZSIpLGUuZXhwb3J0cz17UHJvbWlzZTpufX0se2xpZTozN31dLDc6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49InVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQxNkFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQzMkFycmF5LGk9QSgicGFrbyIpLHI9QSgiLi91dGlscyIpLG89QSgiLi9zdHJlYW0vR2VuZXJpY1dvcmtlciIpLHM9bj8idWludDhhcnJheSI6ImFycmF5IjtmdW5jdGlvbiBhKEEsZSl7by5jYWxsKHRoaXMsIkZsYXRlV29ya2VyLyIrQSksdGhpcy5fcGFrbz1udWxsLHRoaXMuX3Bha29BY3Rpb249QSx0aGlzLl9wYWtvT3B0aW9ucz1lLHRoaXMubWV0YT17fX10Lm1hZ2ljPSJcYlwwIixyLmluaGVyaXRzKGEsbyksYS5wcm90b3R5cGUucHJvY2Vzc0NodW5rPWZ1bmN0aW9uKEEpe3RoaXMubWV0YT1BLm1ldGEsbnVsbD09PXRoaXMuX3Bha28mJnRoaXMuX2NyZWF0ZVBha28oKSx0aGlzLl9wYWtvLnB1c2goci50cmFuc2Zvcm1UbyhzLEEuZGF0YSksITEpfSxhLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe28ucHJvdG90eXBlLmZsdXNoLmNhbGwodGhpcyksbnVsbD09PXRoaXMuX3Bha28mJnRoaXMuX2NyZWF0ZVBha28oKSx0aGlzLl9wYWtvLnB1c2goW10sITApfSxhLnByb3RvdHlwZS5jbGVhblVwPWZ1bmN0aW9uKCl7by5wcm90b3R5cGUuY2xlYW5VcC5jYWxsKHRoaXMpLHRoaXMuX3Bha289bnVsbH0sYS5wcm90b3R5cGUuX2NyZWF0ZVBha289ZnVuY3Rpb24oKXt0aGlzLl9wYWtvPW5ldyBpW3RoaXMuX3Bha29BY3Rpb25dKHtyYXc6ITAsbGV2ZWw6dGhpcy5fcGFrb09wdGlvbnMubGV2ZWx8fC0xfSk7dmFyIEE9dGhpczt0aGlzLl9wYWtvLm9uRGF0YT1mdW5jdGlvbihlKXtBLnB1c2goe2RhdGE6ZSxtZXRhOkEubWV0YX0pfX0sdC5jb21wcmVzc1dvcmtlcj1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IGEoIkRlZmxhdGUiLEEpfSx0LnVuY29tcHJlc3NXb3JrZXI9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGEoIkluZmxhdGUiLHt9KX19LHsiLi9zdHJlYW0vR2VuZXJpY1dvcmtlciI6MjgsIi4vdXRpbHMiOjMyLHBha286Mzh9XSw4OltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oQSxlKXt2YXIgdCxuPSIiO2Zvcih0PTA7dDxlO3QrKyluKz1TdHJpbmcuZnJvbUNoYXJDb2RlKDI1NSZBKSxBPj4+PTg7cmV0dXJuIG59ZnVuY3Rpb24gaShBLGUsdCxpLG8sYyl7dmFyIGcsRSxRPUEuZmlsZSx1PUEuY29tcHJlc3Npb24sbD1jIT09cy51dGY4ZW5jb2RlLGg9ci50cmFuc2Zvcm1Ubygic3RyaW5nIixjKFEubmFtZSkpLHc9ci50cmFuc2Zvcm1Ubygic3RyaW5nIixzLnV0ZjhlbmNvZGUoUS5uYW1lKSksQz1RLmNvbW1lbnQsST1yLnRyYW5zZm9ybVRvKCJzdHJpbmciLGMoQykpLE09ci50cmFuc2Zvcm1Ubygic3RyaW5nIixzLnV0ZjhlbmNvZGUoQykpLGQ9dy5sZW5ndGghPT1RLm5hbWUubGVuZ3RoLHA9TS5sZW5ndGghPT1DLmxlbmd0aCxtPSIiLEY9IiIsRD0iIixZPVEuZGlyLGY9US5kYXRlLE49e2NyYzMyOjAsY29tcHJlc3NlZFNpemU6MCx1bmNvbXByZXNzZWRTaXplOjB9O2UmJiF0fHwoTi5jcmMzMj1BLmNyYzMyLE4uY29tcHJlc3NlZFNpemU9QS5jb21wcmVzc2VkU2l6ZSxOLnVuY29tcHJlc3NlZFNpemU9QS51bmNvbXByZXNzZWRTaXplKTt2YXIgVT0wO2UmJihVfD04KSxsfHwhZCYmIXB8fChVfD0yMDQ4KTt2YXIgeT0wLFQ9MDtZJiYoeXw9MTYpLCJVTklYIj09PW8/KFQ9Nzk4LHl8PWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QTtyZXR1cm4gQXx8KHQ9ZT8xNjg5MzozMzIwNCksKDY1NTM1JnQpPDwxNn0oUS51bml4UGVybWlzc2lvbnMsWSkpOihUPTIwLHl8PWZ1bmN0aW9uKEEpe3JldHVybiA2MyYoQXx8MCl9KFEuZG9zUGVybWlzc2lvbnMpKSxnPWYuZ2V0VVRDSG91cnMoKSxnPDw9NixnfD1mLmdldFVUQ01pbnV0ZXMoKSxnPDw9NSxnfD1mLmdldFVUQ1NlY29uZHMoKS8yLEU9Zi5nZXRVVENGdWxsWWVhcigpLTE5ODAsRTw8PTQsRXw9Zi5nZXRVVENNb250aCgpKzEsRTw8PTUsRXw9Zi5nZXRVVENEYXRlKCksZCYmKEY9bigxLDEpK24oYShoKSw0KSt3LG0rPSJ1cCIrbihGLmxlbmd0aCwyKStGKSxwJiYoRD1uKDEsMSkrbihhKEkpLDQpK00sbSs9InVjIituKEQubGVuZ3RoLDIpK0QpO3ZhciB4PSIiO3JldHVybiB4Kz0iXG5cMCIseCs9bihVLDIpLHgrPXUubWFnaWMseCs9bihnLDIpLHgrPW4oRSwyKSx4Kz1uKE4uY3JjMzIsNCkseCs9bihOLmNvbXByZXNzZWRTaXplLDQpLHgrPW4oTi51bmNvbXByZXNzZWRTaXplLDQpLHgrPW4oaC5sZW5ndGgsMikseCs9bihtLmxlbmd0aCwyKSx7ZmlsZVJlY29yZDpCLkxPQ0FMX0ZJTEVfSEVBREVSK3graCttLGRpclJlY29yZDpCLkNFTlRSQUxfRklMRV9IRUFERVIrbihULDIpK3grbihJLmxlbmd0aCwyKSsiXDBcMFwwXDAiK24oeSw0KStuKGksNCkraCttK0l9fXZhciByPUEoIi4uL3V0aWxzIiksbz1BKCIuLi9zdHJlYW0vR2VuZXJpY1dvcmtlciIpLHM9QSgiLi4vdXRmOCIpLGE9QSgiLi4vY3JjMzIiKSxCPUEoIi4uL3NpZ25hdHVyZSIpO2Z1bmN0aW9uIGMoQSxlLHQsbil7by5jYWxsKHRoaXMsIlppcEZpbGVXb3JrZXIiKSx0aGlzLmJ5dGVzV3JpdHRlbj0wLHRoaXMuemlwQ29tbWVudD1lLHRoaXMuemlwUGxhdGZvcm09dCx0aGlzLmVuY29kZUZpbGVOYW1lPW4sdGhpcy5zdHJlYW1GaWxlcz1BLHRoaXMuYWNjdW11bGF0ZT0hMSx0aGlzLmNvbnRlbnRCdWZmZXI9W10sdGhpcy5kaXJSZWNvcmRzPVtdLHRoaXMuY3VycmVudFNvdXJjZU9mZnNldD0wLHRoaXMuZW50cmllc0NvdW50PTAsdGhpcy5jdXJyZW50RmlsZT1udWxsLHRoaXMuX3NvdXJjZXM9W119ci5pbmhlcml0cyhjLG8pLGMucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24oQSl7dmFyIGU9QS5tZXRhLnBlcmNlbnR8fDAsdD10aGlzLmVudHJpZXNDb3VudCxuPXRoaXMuX3NvdXJjZXMubGVuZ3RoO3RoaXMuYWNjdW11bGF0ZT90aGlzLmNvbnRlbnRCdWZmZXIucHVzaChBKToodGhpcy5ieXRlc1dyaXR0ZW4rPUEuZGF0YS5sZW5ndGgsby5wcm90b3R5cGUucHVzaC5jYWxsKHRoaXMse2RhdGE6QS5kYXRhLG1ldGE6e2N1cnJlbnRGaWxlOnRoaXMuY3VycmVudEZpbGUscGVyY2VudDp0PyhlKzEwMCoodC1uLTEpKS90OjEwMH19KSl9LGMucHJvdG90eXBlLm9wZW5lZFNvdXJjZT1mdW5jdGlvbihBKXt0aGlzLmN1cnJlbnRTb3VyY2VPZmZzZXQ9dGhpcy5ieXRlc1dyaXR0ZW4sdGhpcy5jdXJyZW50RmlsZT1BLmZpbGUubmFtZTt2YXIgZT10aGlzLnN0cmVhbUZpbGVzJiYhQS5maWxlLmRpcjtpZihlKXt2YXIgdD1pKEEsZSwhMSx0aGlzLmN1cnJlbnRTb3VyY2VPZmZzZXQsdGhpcy56aXBQbGF0Zm9ybSx0aGlzLmVuY29kZUZpbGVOYW1lKTt0aGlzLnB1c2goe2RhdGE6dC5maWxlUmVjb3JkLG1ldGE6e3BlcmNlbnQ6MH19KX1lbHNlIHRoaXMuYWNjdW11bGF0ZT0hMH0sYy5wcm90b3R5cGUuY2xvc2VkU291cmNlPWZ1bmN0aW9uKEEpe3RoaXMuYWNjdW11bGF0ZT0hMTt2YXIgZT10aGlzLnN0cmVhbUZpbGVzJiYhQS5maWxlLmRpcix0PWkoQSxlLCEwLHRoaXMuY3VycmVudFNvdXJjZU9mZnNldCx0aGlzLnppcFBsYXRmb3JtLHRoaXMuZW5jb2RlRmlsZU5hbWUpO2lmKHRoaXMuZGlyUmVjb3Jkcy5wdXNoKHQuZGlyUmVjb3JkKSxlKXRoaXMucHVzaCh7ZGF0YTpmdW5jdGlvbihBKXtyZXR1cm4gQi5EQVRBX0RFU0NSSVBUT1IrbihBLmNyYzMyLDQpK24oQS5jb21wcmVzc2VkU2l6ZSw0KStuKEEudW5jb21wcmVzc2VkU2l6ZSw0KX0oQSksbWV0YTp7cGVyY2VudDoxMDB9fSk7ZWxzZSBmb3IodGhpcy5wdXNoKHtkYXRhOnQuZmlsZVJlY29yZCxtZXRhOntwZXJjZW50OjB9fSk7dGhpcy5jb250ZW50QnVmZmVyLmxlbmd0aDspdGhpcy5wdXNoKHRoaXMuY29udGVudEJ1ZmZlci5zaGlmdCgpKTt0aGlzLmN1cnJlbnRGaWxlPW51bGx9LGMucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPXRoaXMuYnl0ZXNXcml0dGVuLGU9MDtlPHRoaXMuZGlyUmVjb3Jkcy5sZW5ndGg7ZSsrKXRoaXMucHVzaCh7ZGF0YTp0aGlzLmRpclJlY29yZHNbZV0sbWV0YTp7cGVyY2VudDoxMDB9fSk7dmFyIHQ9dGhpcy5ieXRlc1dyaXR0ZW4tQSxpPWZ1bmN0aW9uKEEsZSx0LGksbyl7dmFyIHM9ci50cmFuc2Zvcm1Ubygic3RyaW5nIixvKGkpKTtyZXR1cm4gQi5DRU5UUkFMX0RJUkVDVE9SWV9FTkQrIlwwXDBcMFwwIituKEEsMikrbihBLDIpK24oZSw0KStuKHQsNCkrbihzLmxlbmd0aCwyKStzfSh0aGlzLmRpclJlY29yZHMubGVuZ3RoLHQsQSx0aGlzLnppcENvbW1lbnQsdGhpcy5lbmNvZGVGaWxlTmFtZSk7dGhpcy5wdXNoKHtkYXRhOmksbWV0YTp7cGVyY2VudDoxMDB9fSl9LGMucHJvdG90eXBlLnByZXBhcmVOZXh0U291cmNlPWZ1bmN0aW9uKCl7dGhpcy5wcmV2aW91cz10aGlzLl9zb3VyY2VzLnNoaWZ0KCksdGhpcy5vcGVuZWRTb3VyY2UodGhpcy5wcmV2aW91cy5zdHJlYW1JbmZvKSx0aGlzLmlzUGF1c2VkP3RoaXMucHJldmlvdXMucGF1c2UoKTp0aGlzLnByZXZpb3VzLnJlc3VtZSgpfSxjLnByb3RvdHlwZS5yZWdpc3RlclByZXZpb3VzPWZ1bmN0aW9uKEEpe3RoaXMuX3NvdXJjZXMucHVzaChBKTt2YXIgZT10aGlzO3JldHVybiBBLm9uKCJkYXRhIiwoZnVuY3Rpb24oQSl7ZS5wcm9jZXNzQ2h1bmsoQSl9KSksQS5vbigiZW5kIiwoZnVuY3Rpb24oKXtlLmNsb3NlZFNvdXJjZShlLnByZXZpb3VzLnN0cmVhbUluZm8pLGUuX3NvdXJjZXMubGVuZ3RoP2UucHJlcGFyZU5leHRTb3VyY2UoKTplLmVuZCgpfSkpLEEub24oImVycm9yIiwoZnVuY3Rpb24oQSl7ZS5lcnJvcihBKX0pKSx0aGlzfSxjLnByb3RvdHlwZS5yZXN1bWU9ZnVuY3Rpb24oKXtyZXR1cm4hIW8ucHJvdG90eXBlLnJlc3VtZS5jYWxsKHRoaXMpJiYoIXRoaXMucHJldmlvdXMmJnRoaXMuX3NvdXJjZXMubGVuZ3RoPyh0aGlzLnByZXBhcmVOZXh0U291cmNlKCksITApOnRoaXMucHJldmlvdXN8fHRoaXMuX3NvdXJjZXMubGVuZ3RofHx0aGlzLmdlbmVyYXRlZEVycm9yP3ZvaWQgMDoodGhpcy5lbmQoKSwhMCkpfSxjLnByb3RvdHlwZS5lcnJvcj1mdW5jdGlvbihBKXt2YXIgZT10aGlzLl9zb3VyY2VzO2lmKCFvLnByb3RvdHlwZS5lcnJvci5jYWxsKHRoaXMsQSkpcmV0dXJuITE7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspdHJ5e2VbdF0uZXJyb3IoQSl9Y2F0Y2goQSl7fXJldHVybiEwfSxjLnByb3RvdHlwZS5sb2NrPWZ1bmN0aW9uKCl7by5wcm90b3R5cGUubG9jay5jYWxsKHRoaXMpO2Zvcih2YXIgQT10aGlzLl9zb3VyY2VzLGU9MDtlPEEubGVuZ3RoO2UrKylBW2VdLmxvY2soKX0sZS5leHBvcnRzPWN9LHsiLi4vY3JjMzIiOjQsIi4uL3NpZ25hdHVyZSI6MjMsIi4uL3N0cmVhbS9HZW5lcmljV29ya2VyIjoyOCwiLi4vdXRmOCI6MzEsIi4uL3V0aWxzIjozMn1dLDk6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49QSgiLi4vY29tcHJlc3Npb25zIiksaT1BKCIuL1ppcEZpbGVXb3JrZXIiKTt0LmdlbmVyYXRlV29ya2VyPWZ1bmN0aW9uKEEsZSx0KXt2YXIgcj1uZXcgaShlLnN0cmVhbUZpbGVzLHQsZS5wbGF0Zm9ybSxlLmVuY29kZUZpbGVOYW1lKSxvPTA7dHJ5e0EuZm9yRWFjaCgoZnVuY3Rpb24oQSx0KXtvKys7dmFyIGk9ZnVuY3Rpb24oQSxlKXt2YXIgdD1BfHxlLGk9blt0XTtpZighaSl0aHJvdyBuZXcgRXJyb3IodCsiIGlzIG5vdCBhIHZhbGlkIGNvbXByZXNzaW9uIG1ldGhvZCAhIik7cmV0dXJuIGl9KHQub3B0aW9ucy5jb21wcmVzc2lvbixlLmNvbXByZXNzaW9uKSxzPXQub3B0aW9ucy5jb21wcmVzc2lvbk9wdGlvbnN8fGUuY29tcHJlc3Npb25PcHRpb25zfHx7fSxhPXQuZGlyLEI9dC5kYXRlO3QuX2NvbXByZXNzV29ya2VyKGkscykud2l0aFN0cmVhbUluZm8oImZpbGUiLHtuYW1lOkEsZGlyOmEsZGF0ZTpCLGNvbW1lbnQ6dC5jb21tZW50fHwiIix1bml4UGVybWlzc2lvbnM6dC51bml4UGVybWlzc2lvbnMsZG9zUGVybWlzc2lvbnM6dC5kb3NQZXJtaXNzaW9uc30pLnBpcGUocil9KSksci5lbnRyaWVzQ291bnQ9b31jYXRjaChBKXtyLmVycm9yKEEpfXJldHVybiByfX0seyIuLi9jb21wcmVzc2lvbnMiOjMsIi4vWmlwRmlsZVdvcmtlciI6OH1dLDEwOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oKXtpZighKHRoaXMgaW5zdGFuY2VvZiBuKSlyZXR1cm4gbmV3IG47aWYoYXJndW1lbnRzLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIlRoZSBjb25zdHJ1Y3RvciB3aXRoIHBhcmFtZXRlcnMgaGFzIGJlZW4gcmVtb3ZlZCBpbiBKU1ppcCAzLjAsIHBsZWFzZSBjaGVjayB0aGUgdXBncmFkZSBndWlkZS4iKTt0aGlzLmZpbGVzPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5jb21tZW50PW51bGwsdGhpcy5yb290PSIiLHRoaXMuY2xvbmU9ZnVuY3Rpb24oKXt2YXIgQT1uZXcgbjtmb3IodmFyIGUgaW4gdGhpcykiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tlXSYmKEFbZV09dGhpc1tlXSk7cmV0dXJuIEF9fShuLnByb3RvdHlwZT1BKCIuL29iamVjdCIpKS5sb2FkQXN5bmM9QSgiLi9sb2FkIiksbi5zdXBwb3J0PUEoIi4vc3VwcG9ydCIpLG4uZGVmYXVsdHM9QSgiLi9kZWZhdWx0cyIpLG4udmVyc2lvbj0iMy4xMC4xIixuLmxvYWRBc3luYz1mdW5jdGlvbihBLGUpe3JldHVybihuZXcgbikubG9hZEFzeW5jKEEsZSl9LG4uZXh0ZXJuYWw9QSgiLi9leHRlcm5hbCIpLGUuZXhwb3J0cz1ufSx7Ii4vZGVmYXVsdHMiOjUsIi4vZXh0ZXJuYWwiOjYsIi4vbG9hZCI6MTEsIi4vb2JqZWN0IjoxNSwiLi9zdXBwb3J0IjozMH1dLDExOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4vdXRpbHMiKSxpPUEoIi4vZXh0ZXJuYWwiKSxyPUEoIi4vdXRmOCIpLG89QSgiLi96aXBFbnRyaWVzIikscz1BKCIuL3N0cmVhbS9DcmMzMlByb2JlIiksYT1BKCIuL25vZGVqc1V0aWxzIik7ZnVuY3Rpb24gQihBKXtyZXR1cm4gbmV3IGkuUHJvbWlzZSgoZnVuY3Rpb24oZSx0KXt2YXIgbj1BLmRlY29tcHJlc3NlZC5nZXRDb250ZW50V29ya2VyKCkucGlwZShuZXcgcyk7bi5vbigiZXJyb3IiLChmdW5jdGlvbihBKXt0KEEpfSkpLm9uKCJlbmQiLChmdW5jdGlvbigpe24uc3RyZWFtSW5mby5jcmMzMiE9PUEuZGVjb21wcmVzc2VkLmNyYzMyP3QobmV3IEVycm9yKCJDb3JydXB0ZWQgemlwIDogQ1JDMzIgbWlzbWF0Y2giKSk6ZSgpfSkpLnJlc3VtZSgpfSkpfWUuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXM7cmV0dXJuIGU9bi5leHRlbmQoZXx8e30se2Jhc2U2NDohMSxjaGVja0NSQzMyOiExLG9wdGltaXplZEJpbmFyeVN0cmluZzohMSxjcmVhdGVGb2xkZXJzOiExLGRlY29kZUZpbGVOYW1lOnIudXRmOGRlY29kZX0pLGEuaXNOb2RlJiZhLmlzU3RyZWFtKEEpP2kuUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCJKU1ppcCBjYW4ndCBhY2NlcHQgYSBzdHJlYW0gd2hlbiBsb2FkaW5nIGEgemlwIGZpbGUuIikpOm4ucHJlcGFyZUNvbnRlbnQoInRoZSBsb2FkZWQgemlwIGZpbGUiLEEsITAsZS5vcHRpbWl6ZWRCaW5hcnlTdHJpbmcsZS5iYXNlNjQpLnRoZW4oKGZ1bmN0aW9uKEEpe3ZhciB0PW5ldyBvKGUpO3JldHVybiB0LmxvYWQoQSksdH0pKS50aGVuKChmdW5jdGlvbihBKXt2YXIgdD1baS5Qcm9taXNlLnJlc29sdmUoQSldLG49QS5maWxlcztpZihlLmNoZWNrQ1JDMzIpZm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspdC5wdXNoKEIobltyXSkpO3JldHVybiBpLlByb21pc2UuYWxsKHQpfSkpLnRoZW4oKGZ1bmN0aW9uKEEpe2Zvcih2YXIgaT1BLnNoaWZ0KCkscj1pLmZpbGVzLG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIHM9cltvXSxhPXMuZmlsZU5hbWVTdHIsQj1uLnJlc29sdmUocy5maWxlTmFtZVN0cik7dC5maWxlKEIscy5kZWNvbXByZXNzZWQse2JpbmFyeTohMCxvcHRpbWl6ZWRCaW5hcnlTdHJpbmc6ITAsZGF0ZTpzLmRhdGUsZGlyOnMuZGlyLGNvbW1lbnQ6cy5maWxlQ29tbWVudFN0ci5sZW5ndGg/cy5maWxlQ29tbWVudFN0cjpudWxsLHVuaXhQZXJtaXNzaW9uczpzLnVuaXhQZXJtaXNzaW9ucyxkb3NQZXJtaXNzaW9uczpzLmRvc1Blcm1pc3Npb25zLGNyZWF0ZUZvbGRlcnM6ZS5jcmVhdGVGb2xkZXJzfSkscy5kaXJ8fCh0LmZpbGUoQikudW5zYWZlT3JpZ2luYWxOYW1lPWEpfXJldHVybiBpLnppcENvbW1lbnQubGVuZ3RoJiYodC5jb21tZW50PWkuemlwQ29tbWVudCksdH0pKX19LHsiLi9leHRlcm5hbCI6NiwiLi9ub2RlanNVdGlscyI6MTQsIi4vc3RyZWFtL0NyYzMyUHJvYmUiOjI1LCIuL3V0ZjgiOjMxLCIuL3V0aWxzIjozMiwiLi96aXBFbnRyaWVzIjozM31dLDEyOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4uL3V0aWxzIiksaT1BKCIuLi9zdHJlYW0vR2VuZXJpY1dvcmtlciIpO2Z1bmN0aW9uIHIoQSxlKXtpLmNhbGwodGhpcywiTm9kZWpzIHN0cmVhbSBpbnB1dCBhZGFwdGVyIGZvciAiK0EpLHRoaXMuX3Vwc3RyZWFtRW5kZWQ9ITEsdGhpcy5fYmluZFN0cmVhbShlKX1uLmluaGVyaXRzKHIsaSksci5wcm90b3R5cGUuX2JpbmRTdHJlYW09ZnVuY3Rpb24oQSl7dmFyIGU9dGhpczsodGhpcy5fc3RyZWFtPUEpLnBhdXNlKCksQS5vbigiZGF0YSIsKGZ1bmN0aW9uKEEpe2UucHVzaCh7ZGF0YTpBLG1ldGE6e3BlcmNlbnQ6MH19KX0pKS5vbigiZXJyb3IiLChmdW5jdGlvbihBKXtlLmlzUGF1c2VkP3RoaXMuZ2VuZXJhdGVkRXJyb3I9QTplLmVycm9yKEEpfSkpLm9uKCJlbmQiLChmdW5jdGlvbigpe2UuaXNQYXVzZWQ/ZS5fdXBzdHJlYW1FbmRlZD0hMDplLmVuZCgpfSkpfSxyLnByb3RvdHlwZS5wYXVzZT1mdW5jdGlvbigpe3JldHVybiEhaS5wcm90b3R5cGUucGF1c2UuY2FsbCh0aGlzKSYmKHRoaXMuX3N0cmVhbS5wYXVzZSgpLCEwKX0sci5wcm90b3R5cGUucmVzdW1lPWZ1bmN0aW9uKCl7cmV0dXJuISFpLnByb3RvdHlwZS5yZXN1bWUuY2FsbCh0aGlzKSYmKHRoaXMuX3Vwc3RyZWFtRW5kZWQ/dGhpcy5lbmQoKTp0aGlzLl9zdHJlYW0ucmVzdW1lKCksITApfSxlLmV4cG9ydHM9cn0seyIuLi9zdHJlYW0vR2VuZXJpY1dvcmtlciI6MjgsIi4uL3V0aWxzIjozMn1dLDEzOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoInJlYWRhYmxlLXN0cmVhbSIpLlJlYWRhYmxlO2Z1bmN0aW9uIGkoQSxlLHQpe24uY2FsbCh0aGlzLGUpLHRoaXMuX2hlbHBlcj1BO3ZhciBpPXRoaXM7QS5vbigiZGF0YSIsKGZ1bmN0aW9uKEEsZSl7aS5wdXNoKEEpfHxpLl9oZWxwZXIucGF1c2UoKSx0JiZ0KGUpfSkpLm9uKCJlcnJvciIsKGZ1bmN0aW9uKEEpe2kuZW1pdCgiZXJyb3IiLEEpfSkpLm9uKCJlbmQiLChmdW5jdGlvbigpe2kucHVzaChudWxsKX0pKX1BKCIuLi91dGlscyIpLmluaGVyaXRzKGksbiksaS5wcm90b3R5cGUuX3JlYWQ9ZnVuY3Rpb24oKXt0aGlzLl9oZWxwZXIucmVzdW1lKCl9LGUuZXhwb3J0cz1pfSx7Ii4uL3V0aWxzIjozMiwicmVhZGFibGUtc3RyZWFtIjoxNn1dLDE0OltmdW5jdGlvbihBLHQsbil7InVzZSBzdHJpY3QiO3QuZXhwb3J0cz17aXNOb2RlOnZvaWQgMCE9PWUsbmV3QnVmZmVyRnJvbTpmdW5jdGlvbihBLHQpe2lmKGUuZnJvbSYmZS5mcm9tIT09VWludDhBcnJheS5mcm9tKXJldHVybiBlLmZyb20oQSx0KTtpZigibnVtYmVyIj09dHlwZW9mIEEpdGhyb3cgbmV3IEVycm9yKCdUaGUgImRhdGEiIGFyZ3VtZW50IG11c3Qgbm90IGJlIGEgbnVtYmVyJyk7cmV0dXJuIG5ldyBlKEEsdCl9LGFsbG9jQnVmZmVyOmZ1bmN0aW9uKEEpe2lmKGUuYWxsb2MpcmV0dXJuIGUuYWxsb2MoQSk7dmFyIHQ9bmV3IGUoQSk7cmV0dXJuIHQuZmlsbCgwKSx0fSxpc0J1ZmZlcjpmdW5jdGlvbihBKXtyZXR1cm4gZS5pc0J1ZmZlcihBKX0saXNTdHJlYW06ZnVuY3Rpb24oQSl7cmV0dXJuIEEmJiJmdW5jdGlvbiI9PXR5cGVvZiBBLm9uJiYiZnVuY3Rpb24iPT10eXBlb2YgQS5wYXVzZSYmImZ1bmN0aW9uIj09dHlwZW9mIEEucmVzdW1lfX19LHt9XSwxNTpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKEEsZSx0KXt2YXIgbixpPXIuZ2V0VHlwZU9mKGUpLHM9ci5leHRlbmQodHx8e30sYSk7cy5kYXRlPXMuZGF0ZXx8bmV3IERhdGUsbnVsbCE9PXMuY29tcHJlc3Npb24mJihzLmNvbXByZXNzaW9uPXMuY29tcHJlc3Npb24udG9VcHBlckNhc2UoKSksInN0cmluZyI9PXR5cGVvZiBzLnVuaXhQZXJtaXNzaW9ucyYmKHMudW5peFBlcm1pc3Npb25zPXBhcnNlSW50KHMudW5peFBlcm1pc3Npb25zLDgpKSxzLnVuaXhQZXJtaXNzaW9ucyYmMTYzODQmcy51bml4UGVybWlzc2lvbnMmJihzLmRpcj0hMCkscy5kb3NQZXJtaXNzaW9ucyYmMTYmcy5kb3NQZXJtaXNzaW9ucyYmKHMuZGlyPSEwKSxzLmRpciYmKEE9bChBKSkscy5jcmVhdGVGb2xkZXJzJiYobj11KEEpKSYmaC5jYWxsKHRoaXMsbiwhMCk7dmFyIGcsdz0ic3RyaW5nIj09PWkmJiExPT09cy5iaW5hcnkmJiExPT09cy5iYXNlNjQ7dCYmdm9pZCAwIT09dC5iaW5hcnl8fChzLmJpbmFyeT0hdyksKGUgaW5zdGFuY2VvZiBCJiYwPT09ZS51bmNvbXByZXNzZWRTaXplfHxzLmRpcnx8IWV8fDA9PT1lLmxlbmd0aCkmJihzLmJhc2U2ND0hMSxzLmJpbmFyeT0hMCxlPSIiLHMuY29tcHJlc3Npb249IlNUT1JFIixpPSJzdHJpbmciKSxnPWUgaW5zdGFuY2VvZiBCfHxlIGluc3RhbmNlb2Ygbz9lOkUuaXNOb2RlJiZFLmlzU3RyZWFtKGUpP25ldyBRKEEsZSk6ci5wcmVwYXJlQ29udGVudChBLGUscy5iaW5hcnkscy5vcHRpbWl6ZWRCaW5hcnlTdHJpbmcscy5iYXNlNjQpO3ZhciBDPW5ldyBjKEEsZyxzKTt0aGlzLmZpbGVzW0FdPUN9dmFyIGk9QSgiLi91dGY4Iikscj1BKCIuL3V0aWxzIiksbz1BKCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIikscz1BKCIuL3N0cmVhbS9TdHJlYW1IZWxwZXIiKSxhPUEoIi4vZGVmYXVsdHMiKSxCPUEoIi4vY29tcHJlc3NlZE9iamVjdCIpLGM9QSgiLi96aXBPYmplY3QiKSxnPUEoIi4vZ2VuZXJhdGUiKSxFPUEoIi4vbm9kZWpzVXRpbHMiKSxRPUEoIi4vbm9kZWpzL05vZGVqc1N0cmVhbUlucHV0QWRhcHRlciIpLHU9ZnVuY3Rpb24oQSl7Ii8iPT09QS5zbGljZSgtMSkmJihBPUEuc3Vic3RyaW5nKDAsQS5sZW5ndGgtMSkpO3ZhciBlPUEubGFzdEluZGV4T2YoIi8iKTtyZXR1cm4gMDxlP0Euc3Vic3RyaW5nKDAsZSk6IiJ9LGw9ZnVuY3Rpb24oQSl7cmV0dXJuIi8iIT09QS5zbGljZSgtMSkmJihBKz0iLyIpLEF9LGg9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZT12b2lkIDAhPT1lP2U6YS5jcmVhdGVGb2xkZXJzLEE9bChBKSx0aGlzLmZpbGVzW0FdfHxuLmNhbGwodGhpcyxBLG51bGwse2RpcjohMCxjcmVhdGVGb2xkZXJzOmV9KSx0aGlzLmZpbGVzW0FdfTtmdW5jdGlvbiB3KEEpe3JldHVybiJbb2JqZWN0IFJlZ0V4cF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpfXZhciBDPXtsb2FkOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJUaGlzIG1ldGhvZCBoYXMgYmVlbiByZW1vdmVkIGluIEpTWmlwIDMuMCwgcGxlYXNlIGNoZWNrIHRoZSB1cGdyYWRlIGd1aWRlLiIpfSxmb3JFYWNoOmZ1bmN0aW9uKEEpe3ZhciBlLHQsbjtmb3IoZSBpbiB0aGlzLmZpbGVzKW49dGhpcy5maWxlc1tlXSwodD1lLnNsaWNlKHRoaXMucm9vdC5sZW5ndGgsZS5sZW5ndGgpKSYmZS5zbGljZSgwLHRoaXMucm9vdC5sZW5ndGgpPT09dGhpcy5yb290JiZBKHQsbil9LGZpbHRlcjpmdW5jdGlvbihBKXt2YXIgZT1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKChmdW5jdGlvbih0LG4pe0EodCxuKSYmZS5wdXNoKG4pfSkpLGV9LGZpbGU6ZnVuY3Rpb24oQSxlLHQpe2lmKDEhPT1hcmd1bWVudHMubGVuZ3RoKXJldHVybiBBPXRoaXMucm9vdCtBLG4uY2FsbCh0aGlzLEEsZSx0KSx0aGlzO2lmKHcoQSkpe3ZhciBpPUE7cmV0dXJuIHRoaXMuZmlsdGVyKChmdW5jdGlvbihBLGUpe3JldHVybiFlLmRpciYmaS50ZXN0KEEpfSkpfXZhciByPXRoaXMuZmlsZXNbdGhpcy5yb290K0FdO3JldHVybiByJiYhci5kaXI/cjpudWxsfSxmb2xkZXI6ZnVuY3Rpb24oQSl7aWYoIUEpcmV0dXJuIHRoaXM7aWYodyhBKSlyZXR1cm4gdGhpcy5maWx0ZXIoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQuZGlyJiZBLnRlc3QoZSl9KSk7dmFyIGU9dGhpcy5yb290K0EsdD1oLmNhbGwodGhpcyxlKSxuPXRoaXMuY2xvbmUoKTtyZXR1cm4gbi5yb290PXQubmFtZSxufSxyZW1vdmU6ZnVuY3Rpb24oQSl7QT10aGlzLnJvb3QrQTt2YXIgZT10aGlzLmZpbGVzW0FdO2lmKGV8fCgiLyIhPT1BLnNsaWNlKC0xKSYmKEErPSIvIiksZT10aGlzLmZpbGVzW0FdKSxlJiYhZS5kaXIpZGVsZXRlIHRoaXMuZmlsZXNbQV07ZWxzZSBmb3IodmFyIHQ9dGhpcy5maWx0ZXIoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQubmFtZS5zbGljZSgwLEEubGVuZ3RoKT09PUF9KSksbj0wO248dC5sZW5ndGg7bisrKWRlbGV0ZSB0aGlzLmZpbGVzW3Rbbl0ubmFtZV07cmV0dXJuIHRoaXN9LGdlbmVyYXRlOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJUaGlzIG1ldGhvZCBoYXMgYmVlbiByZW1vdmVkIGluIEpTWmlwIDMuMCwgcGxlYXNlIGNoZWNrIHRoZSB1cGdyYWRlIGd1aWRlLiIpfSxnZW5lcmF0ZUludGVybmFsU3RyZWFtOmZ1bmN0aW9uKEEpe3ZhciBlLHQ9e307dHJ5e2lmKCh0PXIuZXh0ZW5kKEF8fHt9LHtzdHJlYW1GaWxlczohMSxjb21wcmVzc2lvbjoiU1RPUkUiLGNvbXByZXNzaW9uT3B0aW9uczpudWxsLHR5cGU6IiIscGxhdGZvcm06IkRPUyIsY29tbWVudDpudWxsLG1pbWVUeXBlOiJhcHBsaWNhdGlvbi96aXAiLGVuY29kZUZpbGVOYW1lOmkudXRmOGVuY29kZX0pKS50eXBlPXQudHlwZS50b0xvd2VyQ2FzZSgpLHQuY29tcHJlc3Npb249dC5jb21wcmVzc2lvbi50b1VwcGVyQ2FzZSgpLCJiaW5hcnlzdHJpbmciPT09dC50eXBlJiYodC50eXBlPSJzdHJpbmciKSwhdC50eXBlKXRocm93IG5ldyBFcnJvcigiTm8gb3V0cHV0IHR5cGUgc3BlY2lmaWVkLiIpO3IuY2hlY2tTdXBwb3J0KHQudHlwZSksImRhcndpbiIhPT10LnBsYXRmb3JtJiYiZnJlZWJzZCIhPT10LnBsYXRmb3JtJiYibGludXgiIT09dC5wbGF0Zm9ybSYmInN1bm9zIiE9PXQucGxhdGZvcm18fCh0LnBsYXRmb3JtPSJVTklYIiksIndpbjMyIj09PXQucGxhdGZvcm0mJih0LnBsYXRmb3JtPSJET1MiKTt2YXIgbj10LmNvbW1lbnR8fHRoaXMuY29tbWVudHx8IiI7ZT1nLmdlbmVyYXRlV29ya2VyKHRoaXMsdCxuKX1jYXRjaChBKXsoZT1uZXcgbygiZXJyb3IiKSkuZXJyb3IoQSl9cmV0dXJuIG5ldyBzKGUsdC50eXBlfHwic3RyaW5nIix0Lm1pbWVUeXBlKX0sZ2VuZXJhdGVBc3luYzpmdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLmdlbmVyYXRlSW50ZXJuYWxTdHJlYW0oQSkuYWNjdW11bGF0ZShlKX0sZ2VuZXJhdGVOb2RlU3RyZWFtOmZ1bmN0aW9uKEEsZSl7cmV0dXJuKEE9QXx8e30pLnR5cGV8fChBLnR5cGU9Im5vZGVidWZmZXIiKSx0aGlzLmdlbmVyYXRlSW50ZXJuYWxTdHJlYW0oQSkudG9Ob2RlanNTdHJlYW0oZSl9fTtlLmV4cG9ydHM9Q30seyIuL2NvbXByZXNzZWRPYmplY3QiOjIsIi4vZGVmYXVsdHMiOjUsIi4vZ2VuZXJhdGUiOjksIi4vbm9kZWpzL05vZGVqc1N0cmVhbUlucHV0QWRhcHRlciI6MTIsIi4vbm9kZWpzVXRpbHMiOjE0LCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIjoyOCwiLi9zdHJlYW0vU3RyZWFtSGVscGVyIjoyOSwiLi91dGY4IjozMSwiLi91dGlscyI6MzIsIi4vemlwT2JqZWN0IjozNX1dLDE2OltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1BKCJzdHJlYW0iKX0se3N0cmVhbTp2b2lkIDB9XSwxNzpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuL0RhdGFSZWFkZXIiKTtmdW5jdGlvbiBpKEEpe24uY2FsbCh0aGlzLEEpO2Zvcih2YXIgZT0wO2U8dGhpcy5kYXRhLmxlbmd0aDtlKyspQVtlXT0yNTUmQVtlXX1BKCIuLi91dGlscyIpLmluaGVyaXRzKGksbiksaS5wcm90b3R5cGUuYnl0ZUF0PWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmRhdGFbdGhpcy56ZXJvK0FdfSxpLnByb3RvdHlwZS5sYXN0SW5kZXhPZlNpZ25hdHVyZT1mdW5jdGlvbihBKXtmb3IodmFyIGU9QS5jaGFyQ29kZUF0KDApLHQ9QS5jaGFyQ29kZUF0KDEpLG49QS5jaGFyQ29kZUF0KDIpLGk9QS5jaGFyQ29kZUF0KDMpLHI9dGhpcy5sZW5ndGgtNDswPD1yOy0tcilpZih0aGlzLmRhdGFbcl09PT1lJiZ0aGlzLmRhdGFbcisxXT09PXQmJnRoaXMuZGF0YVtyKzJdPT09biYmdGhpcy5kYXRhW3IrM109PT1pKXJldHVybiByLXRoaXMuemVybztyZXR1cm4tMX0saS5wcm90b3R5cGUucmVhZEFuZENoZWNrU2lnbmF0dXJlPWZ1bmN0aW9uKEEpe3ZhciBlPUEuY2hhckNvZGVBdCgwKSx0PUEuY2hhckNvZGVBdCgxKSxuPUEuY2hhckNvZGVBdCgyKSxpPUEuY2hhckNvZGVBdCgzKSxyPXRoaXMucmVhZERhdGEoNCk7cmV0dXJuIGU9PT1yWzBdJiZ0PT09clsxXSYmbj09PXJbMl0mJmk9PT1yWzNdfSxpLnByb3RvdHlwZS5yZWFkRGF0YT1mdW5jdGlvbihBKXtpZih0aGlzLmNoZWNrT2Zmc2V0KEEpLDA9PT1BKXJldHVybltdO3ZhciBlPXRoaXMuZGF0YS5zbGljZSh0aGlzLnplcm8rdGhpcy5pbmRleCx0aGlzLnplcm8rdGhpcy5pbmRleCtBKTtyZXR1cm4gdGhpcy5pbmRleCs9QSxlfSxlLmV4cG9ydHM9aX0seyIuLi91dGlscyI6MzIsIi4vRGF0YVJlYWRlciI6MTh9XSwxODpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuLi91dGlscyIpO2Z1bmN0aW9uIGkoQSl7dGhpcy5kYXRhPUEsdGhpcy5sZW5ndGg9QS5sZW5ndGgsdGhpcy5pbmRleD0wLHRoaXMuemVybz0wfWkucHJvdG90eXBlPXtjaGVja09mZnNldDpmdW5jdGlvbihBKXt0aGlzLmNoZWNrSW5kZXgodGhpcy5pbmRleCtBKX0sY2hlY2tJbmRleDpmdW5jdGlvbihBKXtpZih0aGlzLmxlbmd0aDx0aGlzLnplcm8rQXx8QTwwKXRocm93IG5ldyBFcnJvcigiRW5kIG9mIGRhdGEgcmVhY2hlZCAoZGF0YSBsZW5ndGggPSAiK3RoaXMubGVuZ3RoKyIsIGFza2VkIGluZGV4ID0gIitBKyIpLiBDb3JydXB0ZWQgemlwID8iKX0sc2V0SW5kZXg6ZnVuY3Rpb24oQSl7dGhpcy5jaGVja0luZGV4KEEpLHRoaXMuaW5kZXg9QX0sc2tpcDpmdW5jdGlvbihBKXt0aGlzLnNldEluZGV4KHRoaXMuaW5kZXgrQSl9LGJ5dGVBdDpmdW5jdGlvbigpe30scmVhZEludDpmdW5jdGlvbihBKXt2YXIgZSx0PTA7Zm9yKHRoaXMuY2hlY2tPZmZzZXQoQSksZT10aGlzLmluZGV4K0EtMTtlPj10aGlzLmluZGV4O2UtLSl0PSh0PDw4KSt0aGlzLmJ5dGVBdChlKTtyZXR1cm4gdGhpcy5pbmRleCs9QSx0fSxyZWFkU3RyaW5nOmZ1bmN0aW9uKEEpe3JldHVybiBuLnRyYW5zZm9ybVRvKCJzdHJpbmciLHRoaXMucmVhZERhdGEoQSkpfSxyZWFkRGF0YTpmdW5jdGlvbigpe30sbGFzdEluZGV4T2ZTaWduYXR1cmU6ZnVuY3Rpb24oKXt9LHJlYWRBbmRDaGVja1NpZ25hdHVyZTpmdW5jdGlvbigpe30scmVhZERhdGU6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlYWRJbnQoNCk7cmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKDE5ODArKEE+PjI1JjEyNyksKEE+PjIxJjE1KS0xLEE+PjE2JjMxLEE+PjExJjMxLEE+PjUmNjMsKDMxJkEpPDwxKSl9fSxlLmV4cG9ydHM9aX0seyIuLi91dGlscyI6MzJ9XSwxOTpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuL1VpbnQ4QXJyYXlSZWFkZXIiKTtmdW5jdGlvbiBpKEEpe24uY2FsbCh0aGlzLEEpfUEoIi4uL3V0aWxzIikuaW5oZXJpdHMoaSxuKSxpLnByb3RvdHlwZS5yZWFkRGF0YT1mdW5jdGlvbihBKXt0aGlzLmNoZWNrT2Zmc2V0KEEpO3ZhciBlPXRoaXMuZGF0YS5zbGljZSh0aGlzLnplcm8rdGhpcy5pbmRleCx0aGlzLnplcm8rdGhpcy5pbmRleCtBKTtyZXR1cm4gdGhpcy5pbmRleCs9QSxlfSxlLmV4cG9ydHM9aX0seyIuLi91dGlscyI6MzIsIi4vVWludDhBcnJheVJlYWRlciI6MjF9XSwyMDpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuL0RhdGFSZWFkZXIiKTtmdW5jdGlvbiBpKEEpe24uY2FsbCh0aGlzLEEpfUEoIi4uL3V0aWxzIikuaW5oZXJpdHMoaSxuKSxpLnByb3RvdHlwZS5ieXRlQXQ9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuZGF0YS5jaGFyQ29kZUF0KHRoaXMuemVybytBKX0saS5wcm90b3R5cGUubGFzdEluZGV4T2ZTaWduYXR1cmU9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuZGF0YS5sYXN0SW5kZXhPZihBKS10aGlzLnplcm99LGkucHJvdG90eXBlLnJlYWRBbmRDaGVja1NpZ25hdHVyZT1mdW5jdGlvbihBKXtyZXR1cm4gQT09PXRoaXMucmVhZERhdGEoNCl9LGkucHJvdG90eXBlLnJlYWREYXRhPWZ1bmN0aW9uKEEpe3RoaXMuY2hlY2tPZmZzZXQoQSk7dmFyIGU9dGhpcy5kYXRhLnNsaWNlKHRoaXMuemVybyt0aGlzLmluZGV4LHRoaXMuemVybyt0aGlzLmluZGV4K0EpO3JldHVybiB0aGlzLmluZGV4Kz1BLGV9LGUuZXhwb3J0cz1pfSx7Ii4uL3V0aWxzIjozMiwiLi9EYXRhUmVhZGVyIjoxOH1dLDIxOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4vQXJyYXlSZWFkZXIiKTtmdW5jdGlvbiBpKEEpe24uY2FsbCh0aGlzLEEpfUEoIi4uL3V0aWxzIikuaW5oZXJpdHMoaSxuKSxpLnByb3RvdHlwZS5yZWFkRGF0YT1mdW5jdGlvbihBKXtpZih0aGlzLmNoZWNrT2Zmc2V0KEEpLDA9PT1BKXJldHVybiBuZXcgVWludDhBcnJheSgwKTt2YXIgZT10aGlzLmRhdGEuc3ViYXJyYXkodGhpcy56ZXJvK3RoaXMuaW5kZXgsdGhpcy56ZXJvK3RoaXMuaW5kZXgrQSk7cmV0dXJuIHRoaXMuaW5kZXgrPUEsZX0sZS5leHBvcnRzPWl9LHsiLi4vdXRpbHMiOjMyLCIuL0FycmF5UmVhZGVyIjoxN31dLDIyOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4uL3V0aWxzIiksaT1BKCIuLi9zdXBwb3J0Iikscj1BKCIuL0FycmF5UmVhZGVyIiksbz1BKCIuL1N0cmluZ1JlYWRlciIpLHM9QSgiLi9Ob2RlQnVmZmVyUmVhZGVyIiksYT1BKCIuL1VpbnQ4QXJyYXlSZWFkZXIiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGU9bi5nZXRUeXBlT2YoQSk7cmV0dXJuIG4uY2hlY2tTdXBwb3J0KGUpLCJzdHJpbmciIT09ZXx8aS51aW50OGFycmF5PyJub2RlYnVmZmVyIj09PWU/bmV3IHMoQSk6aS51aW50OGFycmF5P25ldyBhKG4udHJhbnNmb3JtVG8oInVpbnQ4YXJyYXkiLEEpKTpuZXcgcihuLnRyYW5zZm9ybVRvKCJhcnJheSIsQSkpOm5ldyBvKEEpfX0seyIuLi9zdXBwb3J0IjozMCwiLi4vdXRpbHMiOjMyLCIuL0FycmF5UmVhZGVyIjoxNywiLi9Ob2RlQnVmZmVyUmVhZGVyIjoxOSwiLi9TdHJpbmdSZWFkZXIiOjIwLCIuL1VpbnQ4QXJyYXlSZWFkZXIiOjIxfV0sMjM6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5MT0NBTF9GSUxFX0hFQURFUj0iUEsDBCIsdC5DRU5UUkFMX0ZJTEVfSEVBREVSPSJQSwECIix0LkNFTlRSQUxfRElSRUNUT1JZX0VORD0iUEsFBiIsdC5aSVA2NF9DRU5UUkFMX0RJUkVDVE9SWV9MT0NBVE9SPSJQSwYHIix0LlpJUDY0X0NFTlRSQUxfRElSRUNUT1JZX0VORD0iUEsGBiIsdC5EQVRBX0RFU0NSSVBUT1I9IlBLB1xiIn0se31dLDI0OltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4vR2VuZXJpY1dvcmtlciIpLGk9QSgiLi4vdXRpbHMiKTtmdW5jdGlvbiByKEEpe24uY2FsbCh0aGlzLCJDb252ZXJ0V29ya2VyIHRvICIrQSksdGhpcy5kZXN0VHlwZT1BfWkuaW5oZXJpdHMocixuKSxyLnByb3RvdHlwZS5wcm9jZXNzQ2h1bms9ZnVuY3Rpb24oQSl7dGhpcy5wdXNoKHtkYXRhOmkudHJhbnNmb3JtVG8odGhpcy5kZXN0VHlwZSxBLmRhdGEpLG1ldGE6QS5tZXRhfSl9LGUuZXhwb3J0cz1yfSx7Ii4uL3V0aWxzIjozMiwiLi9HZW5lcmljV29ya2VyIjoyOH1dLDI1OltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4vR2VuZXJpY1dvcmtlciIpLGk9QSgiLi4vY3JjMzIiKTtmdW5jdGlvbiByKCl7bi5jYWxsKHRoaXMsIkNyYzMyUHJvYmUiKSx0aGlzLndpdGhTdHJlYW1JbmZvKCJjcmMzMiIsMCl9QSgiLi4vdXRpbHMiKS5pbmhlcml0cyhyLG4pLHIucHJvdG90eXBlLnByb2Nlc3NDaHVuaz1mdW5jdGlvbihBKXt0aGlzLnN0cmVhbUluZm8uY3JjMzI9aShBLmRhdGEsdGhpcy5zdHJlYW1JbmZvLmNyYzMyfHwwKSx0aGlzLnB1c2goQSl9LGUuZXhwb3J0cz1yfSx7Ii4uL2NyYzMyIjo0LCIuLi91dGlscyI6MzIsIi4vR2VuZXJpY1dvcmtlciI6Mjh9XSwyNjpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuLi91dGlscyIpLGk9QSgiLi9HZW5lcmljV29ya2VyIik7ZnVuY3Rpb24gcihBKXtpLmNhbGwodGhpcywiRGF0YUxlbmd0aFByb2JlIGZvciAiK0EpLHRoaXMucHJvcE5hbWU9QSx0aGlzLndpdGhTdHJlYW1JbmZvKEEsMCl9bi5pbmhlcml0cyhyLGkpLHIucHJvdG90eXBlLnByb2Nlc3NDaHVuaz1mdW5jdGlvbihBKXtpZihBKXt2YXIgZT10aGlzLnN0cmVhbUluZm9bdGhpcy5wcm9wTmFtZV18fDA7dGhpcy5zdHJlYW1JbmZvW3RoaXMucHJvcE5hbWVdPWUrQS5kYXRhLmxlbmd0aH1pLnByb3RvdHlwZS5wcm9jZXNzQ2h1bmsuY2FsbCh0aGlzLEEpfSxlLmV4cG9ydHM9cn0seyIuLi91dGlscyI6MzIsIi4vR2VuZXJpY1dvcmtlciI6Mjh9XSwyNzpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuLi91dGlscyIpLGk9QSgiLi9HZW5lcmljV29ya2VyIik7ZnVuY3Rpb24gcihBKXtpLmNhbGwodGhpcywiRGF0YVdvcmtlciIpO3ZhciBlPXRoaXM7dGhpcy5kYXRhSXNSZWFkeT0hMSx0aGlzLmluZGV4PTAsdGhpcy5tYXg9MCx0aGlzLmRhdGE9bnVsbCx0aGlzLnR5cGU9IiIsdGhpcy5fdGlja1NjaGVkdWxlZD0hMSxBLnRoZW4oKGZ1bmN0aW9uKEEpe2UuZGF0YUlzUmVhZHk9ITAsZS5kYXRhPUEsZS5tYXg9QSYmQS5sZW5ndGh8fDAsZS50eXBlPW4uZ2V0VHlwZU9mKEEpLGUuaXNQYXVzZWR8fGUuX3RpY2tBbmRSZXBlYXQoKX0pLChmdW5jdGlvbihBKXtlLmVycm9yKEEpfSkpfW4uaW5oZXJpdHMocixpKSxyLnByb3RvdHlwZS5jbGVhblVwPWZ1bmN0aW9uKCl7aS5wcm90b3R5cGUuY2xlYW5VcC5jYWxsKHRoaXMpLHRoaXMuZGF0YT1udWxsfSxyLnByb3RvdHlwZS5yZXN1bWU9ZnVuY3Rpb24oKXtyZXR1cm4hIWkucHJvdG90eXBlLnJlc3VtZS5jYWxsKHRoaXMpJiYoIXRoaXMuX3RpY2tTY2hlZHVsZWQmJnRoaXMuZGF0YUlzUmVhZHkmJih0aGlzLl90aWNrU2NoZWR1bGVkPSEwLG4uZGVsYXkodGhpcy5fdGlja0FuZFJlcGVhdCxbXSx0aGlzKSksITApfSxyLnByb3RvdHlwZS5fdGlja0FuZFJlcGVhdD1mdW5jdGlvbigpe3RoaXMuX3RpY2tTY2hlZHVsZWQ9ITEsdGhpcy5pc1BhdXNlZHx8dGhpcy5pc0ZpbmlzaGVkfHwodGhpcy5fdGljaygpLHRoaXMuaXNGaW5pc2hlZHx8KG4uZGVsYXkodGhpcy5fdGlja0FuZFJlcGVhdCxbXSx0aGlzKSx0aGlzLl90aWNrU2NoZWR1bGVkPSEwKSl9LHIucHJvdG90eXBlLl90aWNrPWZ1bmN0aW9uKCl7aWYodGhpcy5pc1BhdXNlZHx8dGhpcy5pc0ZpbmlzaGVkKXJldHVybiExO3ZhciBBPW51bGwsZT1NYXRoLm1pbih0aGlzLm1heCx0aGlzLmluZGV4KzE2Mzg0KTtpZih0aGlzLmluZGV4Pj10aGlzLm1heClyZXR1cm4gdGhpcy5lbmQoKTtzd2l0Y2godGhpcy50eXBlKXtjYXNlInN0cmluZyI6QT10aGlzLmRhdGEuc3Vic3RyaW5nKHRoaXMuaW5kZXgsZSk7YnJlYWs7Y2FzZSJ1aW50OGFycmF5IjpBPXRoaXMuZGF0YS5zdWJhcnJheSh0aGlzLmluZGV4LGUpO2JyZWFrO2Nhc2UiYXJyYXkiOmNhc2Uibm9kZWJ1ZmZlciI6QT10aGlzLmRhdGEuc2xpY2UodGhpcy5pbmRleCxlKX1yZXR1cm4gdGhpcy5pbmRleD1lLHRoaXMucHVzaCh7ZGF0YTpBLG1ldGE6e3BlcmNlbnQ6dGhpcy5tYXg/dGhpcy5pbmRleC90aGlzLm1heCoxMDA6MH19KX0sZS5leHBvcnRzPXJ9LHsiLi4vdXRpbHMiOjMyLCIuL0dlbmVyaWNXb3JrZXIiOjI4fV0sMjg6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbihBKXt0aGlzLm5hbWU9QXx8ImRlZmF1bHQiLHRoaXMuc3RyZWFtSW5mbz17fSx0aGlzLmdlbmVyYXRlZEVycm9yPW51bGwsdGhpcy5leHRyYVN0cmVhbUluZm89e30sdGhpcy5pc1BhdXNlZD0hMCx0aGlzLmlzRmluaXNoZWQ9ITEsdGhpcy5pc0xvY2tlZD0hMSx0aGlzLl9saXN0ZW5lcnM9e2RhdGE6W10sZW5kOltdLGVycm9yOltdfSx0aGlzLnByZXZpb3VzPW51bGx9bi5wcm90b3R5cGU9e3B1c2g6ZnVuY3Rpb24oQSl7dGhpcy5lbWl0KCJkYXRhIixBKX0sZW5kOmZ1bmN0aW9uKCl7aWYodGhpcy5pc0ZpbmlzaGVkKXJldHVybiExO3RoaXMuZmx1c2goKTt0cnl7dGhpcy5lbWl0KCJlbmQiKSx0aGlzLmNsZWFuVXAoKSx0aGlzLmlzRmluaXNoZWQ9ITB9Y2F0Y2goQSl7dGhpcy5lbWl0KCJlcnJvciIsQSl9cmV0dXJuITB9LGVycm9yOmZ1bmN0aW9uKEEpe3JldHVybiF0aGlzLmlzRmluaXNoZWQmJih0aGlzLmlzUGF1c2VkP3RoaXMuZ2VuZXJhdGVkRXJyb3I9QToodGhpcy5pc0ZpbmlzaGVkPSEwLHRoaXMuZW1pdCgiZXJyb3IiLEEpLHRoaXMucHJldmlvdXMmJnRoaXMucHJldmlvdXMuZXJyb3IoQSksdGhpcy5jbGVhblVwKCkpLCEwKX0sb246ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5fbGlzdGVuZXJzW0FdLnB1c2goZSksdGhpc30sY2xlYW5VcDpmdW5jdGlvbigpe3RoaXMuc3RyZWFtSW5mbz10aGlzLmdlbmVyYXRlZEVycm9yPXRoaXMuZXh0cmFTdHJlYW1JbmZvPW51bGwsdGhpcy5fbGlzdGVuZXJzPVtdfSxlbWl0OmZ1bmN0aW9uKEEsZSl7aWYodGhpcy5fbGlzdGVuZXJzW0FdKWZvcih2YXIgdD0wO3Q8dGhpcy5fbGlzdGVuZXJzW0FdLmxlbmd0aDt0KyspdGhpcy5fbGlzdGVuZXJzW0FdW3RdLmNhbGwodGhpcyxlKX0scGlwZTpmdW5jdGlvbihBKXtyZXR1cm4gQS5yZWdpc3RlclByZXZpb3VzKHRoaXMpfSxyZWdpc3RlclByZXZpb3VzOmZ1bmN0aW9uKEEpe2lmKHRoaXMuaXNMb2NrZWQpdGhyb3cgbmV3IEVycm9yKCJUaGUgc3RyZWFtICciK3RoaXMrIicgaGFzIGFscmVhZHkgYmVlbiB1c2VkLiIpO3RoaXMuc3RyZWFtSW5mbz1BLnN0cmVhbUluZm8sdGhpcy5tZXJnZVN0cmVhbUluZm8oKSx0aGlzLnByZXZpb3VzPUE7dmFyIGU9dGhpcztyZXR1cm4gQS5vbigiZGF0YSIsKGZ1bmN0aW9uKEEpe2UucHJvY2Vzc0NodW5rKEEpfSkpLEEub24oImVuZCIsKGZ1bmN0aW9uKCl7ZS5lbmQoKX0pKSxBLm9uKCJlcnJvciIsKGZ1bmN0aW9uKEEpe2UuZXJyb3IoQSl9KSksdGhpc30scGF1c2U6ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5pc1BhdXNlZCYmIXRoaXMuaXNGaW5pc2hlZCYmKHRoaXMuaXNQYXVzZWQ9ITAsdGhpcy5wcmV2aW91cyYmdGhpcy5wcmV2aW91cy5wYXVzZSgpLCEwKX0scmVzdW1lOmZ1bmN0aW9uKCl7aWYoIXRoaXMuaXNQYXVzZWR8fHRoaXMuaXNGaW5pc2hlZClyZXR1cm4hMTt2YXIgQT10aGlzLmlzUGF1c2VkPSExO3JldHVybiB0aGlzLmdlbmVyYXRlZEVycm9yJiYodGhpcy5lcnJvcih0aGlzLmdlbmVyYXRlZEVycm9yKSxBPSEwKSx0aGlzLnByZXZpb3VzJiZ0aGlzLnByZXZpb3VzLnJlc3VtZSgpLCFBfSxmbHVzaDpmdW5jdGlvbigpe30scHJvY2Vzc0NodW5rOmZ1bmN0aW9uKEEpe3RoaXMucHVzaChBKX0sd2l0aFN0cmVhbUluZm86ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5leHRyYVN0cmVhbUluZm9bQV09ZSx0aGlzLm1lcmdlU3RyZWFtSW5mbygpLHRoaXN9LG1lcmdlU3RyZWFtSW5mbzpmdW5jdGlvbigpe2Zvcih2YXIgQSBpbiB0aGlzLmV4dHJhU3RyZWFtSW5mbylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5leHRyYVN0cmVhbUluZm8sQSkmJih0aGlzLnN0cmVhbUluZm9bQV09dGhpcy5leHRyYVN0cmVhbUluZm9bQV0pfSxsb2NrOmZ1bmN0aW9uKCl7aWYodGhpcy5pc0xvY2tlZCl0aHJvdyBuZXcgRXJyb3IoIlRoZSBzdHJlYW0gJyIrdGhpcysiJyBoYXMgYWxyZWFkeSBiZWVuIHVzZWQuIik7dGhpcy5pc0xvY2tlZD0hMCx0aGlzLnByZXZpb3VzJiZ0aGlzLnByZXZpb3VzLmxvY2soKX0sdG9TdHJpbmc6ZnVuY3Rpb24oKXt2YXIgQT0iV29ya2VyICIrdGhpcy5uYW1lO3JldHVybiB0aGlzLnByZXZpb3VzP3RoaXMucHJldmlvdXMrIiAtPiAiK0E6QX19LGUuZXhwb3J0cz1ufSx7fV0sMjk6W2Z1bmN0aW9uKEEsdCxuKXsidXNlIHN0cmljdCI7dmFyIGk9QSgiLi4vdXRpbHMiKSxyPUEoIi4vQ29udmVydFdvcmtlciIpLG89QSgiLi9HZW5lcmljV29ya2VyIikscz1BKCIuLi9iYXNlNjQiKSxhPUEoIi4uL3N1cHBvcnQiKSxCPUEoIi4uL2V4dGVybmFsIiksYz1udWxsO2lmKGEubm9kZXN0cmVhbSl0cnl7Yz1BKCIuLi9ub2RlanMvTm9kZWpzU3RyZWFtT3V0cHV0QWRhcHRlciIpfWNhdGNoKEEpe31mdW5jdGlvbiBnKEEsZSx0KXt2YXIgbj1lO3N3aXRjaChlKXtjYXNlImJsb2IiOmNhc2UiYXJyYXlidWZmZXIiOm49InVpbnQ4YXJyYXkiO2JyZWFrO2Nhc2UiYmFzZTY0IjpuPSJzdHJpbmcifXRyeXt0aGlzLl9pbnRlcm5hbFR5cGU9bix0aGlzLl9vdXRwdXRUeXBlPWUsdGhpcy5fbWltZVR5cGU9dCxpLmNoZWNrU3VwcG9ydChuKSx0aGlzLl93b3JrZXI9QS5waXBlKG5ldyByKG4pKSxBLmxvY2soKX1jYXRjaChBKXt0aGlzLl93b3JrZXI9bmV3IG8oImVycm9yIiksdGhpcy5fd29ya2VyLmVycm9yKEEpfX1nLnByb3RvdHlwZT17YWNjdW11bGF0ZTpmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oQSx0KXtyZXR1cm4gbmV3IEIuUHJvbWlzZSgoZnVuY3Rpb24obixyKXt2YXIgbz1bXSxhPUEuX2ludGVybmFsVHlwZSxCPUEuX291dHB1dFR5cGUsYz1BLl9taW1lVHlwZTtBLm9uKCJkYXRhIiwoZnVuY3Rpb24oQSxlKXtvLnB1c2goQSksdCYmdChlKX0pKS5vbigiZXJyb3IiLChmdW5jdGlvbihBKXtvPVtdLHIoQSl9KSkub24oImVuZCIsKGZ1bmN0aW9uKCl7dHJ5e3ZhciBBPWZ1bmN0aW9uKEEsZSx0KXtzd2l0Y2goQSl7Y2FzZSJibG9iIjpyZXR1cm4gaS5uZXdCbG9iKGkudHJhbnNmb3JtVG8oImFycmF5YnVmZmVyIixlKSx0KTtjYXNlImJhc2U2NCI6cmV0dXJuIHMuZW5jb2RlKGUpO2RlZmF1bHQ6cmV0dXJuIGkudHJhbnNmb3JtVG8oQSxlKX19KEIsZnVuY3Rpb24oQSx0KXt2YXIgbixpPTAscj1udWxsLG89MDtmb3Iobj0wO248dC5sZW5ndGg7bisrKW8rPXRbbl0ubGVuZ3RoO3N3aXRjaChBKXtjYXNlInN0cmluZyI6cmV0dXJuIHQuam9pbigiIik7Y2FzZSJhcnJheSI6cmV0dXJuIEFycmF5LnByb3RvdHlwZS5jb25jYXQuYXBwbHkoW10sdCk7Y2FzZSJ1aW50OGFycmF5Ijpmb3Iocj1uZXcgVWludDhBcnJheShvKSxuPTA7bjx0Lmxlbmd0aDtuKyspci5zZXQodFtuXSxpKSxpKz10W25dLmxlbmd0aDtyZXR1cm4gcjtjYXNlIm5vZGVidWZmZXIiOnJldHVybiBlLmNvbmNhdCh0KTtkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiY29uY2F0IDogdW5zdXBwb3J0ZWQgdHlwZSAnIitBKyInIil9fShhLG8pLGMpO24oQSl9Y2F0Y2goQSl7cihBKX1vPVtdfSkpLnJlc3VtZSgpfSkpfSh0aGlzLEEpfSxvbjpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXM7cmV0dXJuImRhdGEiPT09QT90aGlzLl93b3JrZXIub24oQSwoZnVuY3Rpb24oQSl7ZS5jYWxsKHQsQS5kYXRhLEEubWV0YSl9KSk6dGhpcy5fd29ya2VyLm9uKEEsKGZ1bmN0aW9uKCl7aS5kZWxheShlLGFyZ3VtZW50cyx0KX0pKSx0aGlzfSxyZXN1bWU6ZnVuY3Rpb24oKXtyZXR1cm4gaS5kZWxheSh0aGlzLl93b3JrZXIucmVzdW1lLFtdLHRoaXMuX3dvcmtlciksdGhpc30scGF1c2U6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fd29ya2VyLnBhdXNlKCksdGhpc30sdG9Ob2RlanNTdHJlYW06ZnVuY3Rpb24oQSl7aWYoaS5jaGVja1N1cHBvcnQoIm5vZGVzdHJlYW0iKSwibm9kZWJ1ZmZlciIhPT10aGlzLl9vdXRwdXRUeXBlKXRocm93IG5ldyBFcnJvcih0aGlzLl9vdXRwdXRUeXBlKyIgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIG1ldGhvZCIpO3JldHVybiBuZXcgYyh0aGlzLHtvYmplY3RNb2RlOiJub2RlYnVmZmVyIiE9PXRoaXMuX291dHB1dFR5cGV9LEEpfX0sdC5leHBvcnRzPWd9LHsiLi4vYmFzZTY0IjoxLCIuLi9leHRlcm5hbCI6NiwiLi4vbm9kZWpzL05vZGVqc1N0cmVhbU91dHB1dEFkYXB0ZXIiOjEzLCIuLi9zdXBwb3J0IjozMCwiLi4vdXRpbHMiOjMyLCIuL0NvbnZlcnRXb3JrZXIiOjI0LCIuL0dlbmVyaWNXb3JrZXIiOjI4fV0sMzA6W2Z1bmN0aW9uKEEsdCxuKXsidXNlIHN0cmljdCI7aWYobi5iYXNlNjQ9ITAsbi5hcnJheT0hMCxuLnN0cmluZz0hMCxuLmFycmF5YnVmZmVyPSJ1bmRlZmluZWQiIT10eXBlb2YgQXJyYXlCdWZmZXImJiJ1bmRlZmluZWQiIT10eXBlb2YgVWludDhBcnJheSxuLm5vZGVidWZmZXI9dm9pZCAwIT09ZSxuLnVpbnQ4YXJyYXk9InVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5LCJ1bmRlZmluZWQiPT10eXBlb2YgQXJyYXlCdWZmZXIpbi5ibG9iPSExO2Vsc2V7dmFyIGk9bmV3IEFycmF5QnVmZmVyKDApO3RyeXtuLmJsb2I9MD09PW5ldyBCbG9iKFtpXSx7dHlwZToiYXBwbGljYXRpb24vemlwIn0pLnNpemV9Y2F0Y2goQSl7dHJ5e3ZhciByPW5ldyhzZWxmLkJsb2JCdWlsZGVyfHxzZWxmLldlYktpdEJsb2JCdWlsZGVyfHxzZWxmLk1vekJsb2JCdWlsZGVyfHxzZWxmLk1TQmxvYkJ1aWxkZXIpO3IuYXBwZW5kKGkpLG4uYmxvYj0wPT09ci5nZXRCbG9iKCJhcHBsaWNhdGlvbi96aXAiKS5zaXplfWNhdGNoKEEpe24uYmxvYj0hMX19fXRyeXtuLm5vZGVzdHJlYW09ISFBKCJyZWFkYWJsZS1zdHJlYW0iKS5SZWFkYWJsZX1jYXRjaChBKXtuLm5vZGVzdHJlYW09ITF9fSx7InJlYWRhYmxlLXN0cmVhbSI6MTZ9XSwzMTpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijtmb3IodmFyIG49QSgiLi91dGlscyIpLGk9QSgiLi9zdXBwb3J0Iikscj1BKCIuL25vZGVqc1V0aWxzIiksbz1BKCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIikscz1uZXcgQXJyYXkoMjU2KSxhPTA7YTwyNTY7YSsrKXNbYV09MjUyPD1hPzY6MjQ4PD1hPzU6MjQwPD1hPzQ6MjI0PD1hPzM6MTkyPD1hPzI6MTtmdW5jdGlvbiBCKCl7by5jYWxsKHRoaXMsInV0Zi04IGRlY29kZSIpLHRoaXMubGVmdE92ZXI9bnVsbH1mdW5jdGlvbiBjKCl7by5jYWxsKHRoaXMsInV0Zi04IGVuY29kZSIpfXNbMjU0XT1zWzI1NF09MSx0LnV0ZjhlbmNvZGU9ZnVuY3Rpb24oQSl7cmV0dXJuIGkubm9kZWJ1ZmZlcj9yLm5ld0J1ZmZlckZyb20oQSwidXRmLTgiKTpmdW5jdGlvbihBKXt2YXIgZSx0LG4scixvLHM9QS5sZW5ndGgsYT0wO2ZvcihyPTA7cjxzO3IrKyk1NTI5Nj09KDY0NTEyJih0PUEuY2hhckNvZGVBdChyKSkpJiZyKzE8cyYmNTYzMjA9PSg2NDUxMiYobj1BLmNoYXJDb2RlQXQocisxKSkpJiYodD02NTUzNisodC01NTI5Njw8MTApKyhuLTU2MzIwKSxyKyspLGErPXQ8MTI4PzE6dDwyMDQ4PzI6dDw2NTUzNj8zOjQ7Zm9yKGU9aS51aW50OGFycmF5P25ldyBVaW50OEFycmF5KGEpOm5ldyBBcnJheShhKSxyPW89MDtvPGE7cisrKTU1Mjk2PT0oNjQ1MTImKHQ9QS5jaGFyQ29kZUF0KHIpKSkmJnIrMTxzJiY1NjMyMD09KDY0NTEyJihuPUEuY2hhckNvZGVBdChyKzEpKSkmJih0PTY1NTM2Kyh0LTU1Mjk2PDwxMCkrKG4tNTYzMjApLHIrKyksdDwxMjg/ZVtvKytdPXQ6KHQ8MjA0OD9lW28rK109MTkyfHQ+Pj42Oih0PDY1NTM2P2VbbysrXT0yMjR8dD4+PjEyOihlW28rK109MjQwfHQ+Pj4xOCxlW28rK109MTI4fHQ+Pj4xMiY2MyksZVtvKytdPTEyOHx0Pj4+NiY2MyksZVtvKytdPTEyOHw2MyZ0KTtyZXR1cm4gZX0oQSl9LHQudXRmOGRlY29kZT1mdW5jdGlvbihBKXtyZXR1cm4gaS5ub2RlYnVmZmVyP24udHJhbnNmb3JtVG8oIm5vZGVidWZmZXIiLEEpLnRvU3RyaW5nKCJ1dGYtOCIpOmZ1bmN0aW9uKEEpe3ZhciBlLHQsaSxyLG89QS5sZW5ndGgsYT1uZXcgQXJyYXkoMipvKTtmb3IoZT10PTA7ZTxvOylpZigoaT1BW2UrK10pPDEyOClhW3QrK109aTtlbHNlIGlmKDQ8KHI9c1tpXSkpYVt0KytdPTY1NTMzLGUrPXItMTtlbHNle2ZvcihpJj0yPT09cj8zMTozPT09cj8xNTo3OzE8ciYmZTxvOylpPWk8PDZ8NjMmQVtlKytdLHItLTsxPHI/YVt0KytdPTY1NTMzOmk8NjU1MzY/YVt0KytdPWk6KGktPTY1NTM2LGFbdCsrXT01NTI5NnxpPj4xMCYxMDIzLGFbdCsrXT01NjMyMHwxMDIzJmkpfXJldHVybiBhLmxlbmd0aCE9PXQmJihhLnN1YmFycmF5P2E9YS5zdWJhcnJheSgwLHQpOmEubGVuZ3RoPXQpLG4uYXBwbHlGcm9tQ2hhckNvZGUoYSl9KEE9bi50cmFuc2Zvcm1UbyhpLnVpbnQ4YXJyYXk/InVpbnQ4YXJyYXkiOiJhcnJheSIsQSkpfSxuLmluaGVyaXRzKEIsbyksQi5wcm90b3R5cGUucHJvY2Vzc0NodW5rPWZ1bmN0aW9uKEEpe3ZhciBlPW4udHJhbnNmb3JtVG8oaS51aW50OGFycmF5PyJ1aW50OGFycmF5IjoiYXJyYXkiLEEuZGF0YSk7aWYodGhpcy5sZWZ0T3ZlciYmdGhpcy5sZWZ0T3Zlci5sZW5ndGgpe2lmKGkudWludDhhcnJheSl7dmFyIHI9ZTsoZT1uZXcgVWludDhBcnJheShyLmxlbmd0aCt0aGlzLmxlZnRPdmVyLmxlbmd0aCkpLnNldCh0aGlzLmxlZnRPdmVyLDApLGUuc2V0KHIsdGhpcy5sZWZ0T3Zlci5sZW5ndGgpfWVsc2UgZT10aGlzLmxlZnRPdmVyLmNvbmNhdChlKTt0aGlzLmxlZnRPdmVyPW51bGx9dmFyIG89ZnVuY3Rpb24oQSxlKXt2YXIgdDtmb3IoKGU9ZXx8QS5sZW5ndGgpPkEubGVuZ3RoJiYoZT1BLmxlbmd0aCksdD1lLTE7MDw9dCYmMTI4PT0oMTkyJkFbdF0pOyl0LS07cmV0dXJuIHQ8MHx8MD09PXQ/ZTp0K3NbQVt0XV0+ZT90OmV9KGUpLGE9ZTtvIT09ZS5sZW5ndGgmJihpLnVpbnQ4YXJyYXk/KGE9ZS5zdWJhcnJheSgwLG8pLHRoaXMubGVmdE92ZXI9ZS5zdWJhcnJheShvLGUubGVuZ3RoKSk6KGE9ZS5zbGljZSgwLG8pLHRoaXMubGVmdE92ZXI9ZS5zbGljZShvLGUubGVuZ3RoKSkpLHRoaXMucHVzaCh7ZGF0YTp0LnV0ZjhkZWNvZGUoYSksbWV0YTpBLm1ldGF9KX0sQi5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oKXt0aGlzLmxlZnRPdmVyJiZ0aGlzLmxlZnRPdmVyLmxlbmd0aCYmKHRoaXMucHVzaCh7ZGF0YTp0LnV0ZjhkZWNvZGUodGhpcy5sZWZ0T3ZlciksbWV0YTp7fX0pLHRoaXMubGVmdE92ZXI9bnVsbCl9LHQuVXRmOERlY29kZVdvcmtlcj1CLG4uaW5oZXJpdHMoYyxvKSxjLnByb3RvdHlwZS5wcm9jZXNzQ2h1bms9ZnVuY3Rpb24oQSl7dGhpcy5wdXNoKHtkYXRhOnQudXRmOGVuY29kZShBLmRhdGEpLG1ldGE6QS5tZXRhfSl9LHQuVXRmOEVuY29kZVdvcmtlcj1jfSx7Ii4vbm9kZWpzVXRpbHMiOjE0LCIuL3N0cmVhbS9HZW5lcmljV29ya2VyIjoyOCwiLi9zdXBwb3J0IjozMCwiLi91dGlscyI6MzJ9XSwzMjpbZnVuY3Rpb24oQSxlLG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1BKCIuL3N1cHBvcnQiKSxyPUEoIi4vYmFzZTY0Iiksbz1BKCIuL25vZGVqc1V0aWxzIikscz1BKCIuL2V4dGVybmFsIik7ZnVuY3Rpb24gYShBKXtyZXR1cm4gQX1mdW5jdGlvbiBCKEEsZSl7Zm9yKHZhciB0PTA7dDxBLmxlbmd0aDsrK3QpZVt0XT0yNTUmQS5jaGFyQ29kZUF0KHQpO3JldHVybiBlfUEoInNldGltbWVkaWF0ZSIpLG4ubmV3QmxvYj1mdW5jdGlvbihBLGUpe24uY2hlY2tTdXBwb3J0KCJibG9iIik7dHJ5e3JldHVybiBuZXcgQmxvYihbQV0se3R5cGU6ZX0pfWNhdGNoKG4pe3RyeXt2YXIgdD1uZXcoc2VsZi5CbG9iQnVpbGRlcnx8c2VsZi5XZWJLaXRCbG9iQnVpbGRlcnx8c2VsZi5Nb3pCbG9iQnVpbGRlcnx8c2VsZi5NU0Jsb2JCdWlsZGVyKTtyZXR1cm4gdC5hcHBlbmQoQSksdC5nZXRCbG9iKGUpfWNhdGNoKEEpe3Rocm93IG5ldyBFcnJvcigiQnVnIDogY2FuJ3QgY29uc3RydWN0IHRoZSBCbG9iLiIpfX19O3ZhciBjPXtzdHJpbmdpZnlCeUNodW5rOmZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1bXSxpPTAscj1BLmxlbmd0aDtpZihyPD10KXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsQSk7Zm9yKDtpPHI7KSJhcnJheSI9PT1lfHwibm9kZWJ1ZmZlciI9PT1lP24ucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsQS5zbGljZShpLE1hdGgubWluKGkrdCxyKSkpKTpuLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLEEuc3ViYXJyYXkoaSxNYXRoLm1pbihpK3QscikpKSksaSs9dDtyZXR1cm4gbi5qb2luKCIiKX0sc3RyaW5naWZ5QnlDaGFyOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0iIix0PTA7dDxBLmxlbmd0aDt0KyspZSs9U3RyaW5nLmZyb21DaGFyQ29kZShBW3RdKTtyZXR1cm4gZX0sYXBwbHlDYW5CZVVzZWQ6e3VpbnQ4YXJyYXk6ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIGkudWludDhhcnJheSYmMT09PVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxuZXcgVWludDhBcnJheSgxKSkubGVuZ3RofWNhdGNoKEEpe3JldHVybiExfX0oKSxub2RlYnVmZmVyOmZ1bmN0aW9uKCl7dHJ5e3JldHVybiBpLm5vZGVidWZmZXImJjE9PT1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsby5hbGxvY0J1ZmZlcigxKSkubGVuZ3RofWNhdGNoKEEpe3JldHVybiExfX0oKX19O2Z1bmN0aW9uIGcoQSl7dmFyIGU9NjU1MzYsdD1uLmdldFR5cGVPZihBKSxpPSEwO2lmKCJ1aW50OGFycmF5Ij09PXQ/aT1jLmFwcGx5Q2FuQmVVc2VkLnVpbnQ4YXJyYXk6Im5vZGVidWZmZXIiPT09dCYmKGk9Yy5hcHBseUNhbkJlVXNlZC5ub2RlYnVmZmVyKSxpKWZvcig7MTxlOyl0cnl7cmV0dXJuIGMuc3RyaW5naWZ5QnlDaHVuayhBLHQsZSl9Y2F0Y2goQSl7ZT1NYXRoLmZsb29yKGUvMil9cmV0dXJuIGMuc3RyaW5naWZ5QnlDaGFyKEEpfWZ1bmN0aW9uIEUoQSxlKXtmb3IodmFyIHQ9MDt0PEEubGVuZ3RoO3QrKyllW3RdPUFbdF07cmV0dXJuIGV9bi5hcHBseUZyb21DaGFyQ29kZT1nO3ZhciBRPXt9O1Euc3RyaW5nPXtzdHJpbmc6YSxhcnJheTpmdW5jdGlvbihBKXtyZXR1cm4gQihBLG5ldyBBcnJheShBLmxlbmd0aCkpfSxhcnJheWJ1ZmZlcjpmdW5jdGlvbihBKXtyZXR1cm4gUS5zdHJpbmcudWludDhhcnJheShBKS5idWZmZXJ9LHVpbnQ4YXJyYXk6ZnVuY3Rpb24oQSl7cmV0dXJuIEIoQSxuZXcgVWludDhBcnJheShBLmxlbmd0aCkpfSxub2RlYnVmZmVyOmZ1bmN0aW9uKEEpe3JldHVybiBCKEEsby5hbGxvY0J1ZmZlcihBLmxlbmd0aCkpfX0sUS5hcnJheT17c3RyaW5nOmcsYXJyYXk6YSxhcnJheWJ1ZmZlcjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoQSkuYnVmZmVyfSx1aW50OGFycmF5OmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgVWludDhBcnJheShBKX0sbm9kZWJ1ZmZlcjpmdW5jdGlvbihBKXtyZXR1cm4gby5uZXdCdWZmZXJGcm9tKEEpfX0sUS5hcnJheWJ1ZmZlcj17c3RyaW5nOmZ1bmN0aW9uKEEpe3JldHVybiBnKG5ldyBVaW50OEFycmF5KEEpKX0sYXJyYXk6ZnVuY3Rpb24oQSl7cmV0dXJuIEUobmV3IFVpbnQ4QXJyYXkoQSksbmV3IEFycmF5KEEuYnl0ZUxlbmd0aCkpfSxhcnJheWJ1ZmZlcjphLHVpbnQ4YXJyYXk6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBVaW50OEFycmF5KEEpfSxub2RlYnVmZmVyOmZ1bmN0aW9uKEEpe3JldHVybiBvLm5ld0J1ZmZlckZyb20obmV3IFVpbnQ4QXJyYXkoQSkpfX0sUS51aW50OGFycmF5PXtzdHJpbmc6ZyxhcnJheTpmdW5jdGlvbihBKXtyZXR1cm4gRShBLG5ldyBBcnJheShBLmxlbmd0aCkpfSxhcnJheWJ1ZmZlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS5idWZmZXJ9LHVpbnQ4YXJyYXk6YSxub2RlYnVmZmVyOmZ1bmN0aW9uKEEpe3JldHVybiBvLm5ld0J1ZmZlckZyb20oQSl9fSxRLm5vZGVidWZmZXI9e3N0cmluZzpnLGFycmF5OmZ1bmN0aW9uKEEpe3JldHVybiBFKEEsbmV3IEFycmF5KEEubGVuZ3RoKSl9LGFycmF5YnVmZmVyOmZ1bmN0aW9uKEEpe3JldHVybiBRLm5vZGVidWZmZXIudWludDhhcnJheShBKS5idWZmZXJ9LHVpbnQ4YXJyYXk6ZnVuY3Rpb24oQSl7cmV0dXJuIEUoQSxuZXcgVWludDhBcnJheShBLmxlbmd0aCkpfSxub2RlYnVmZmVyOmF9LG4udHJhbnNmb3JtVG89ZnVuY3Rpb24oQSxlKXtpZihlPWV8fCIiLCFBKXJldHVybiBlO24uY2hlY2tTdXBwb3J0KEEpO3ZhciB0PW4uZ2V0VHlwZU9mKGUpO3JldHVybiBRW3RdW0FdKGUpfSxuLnJlc29sdmU9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUEuc3BsaXQoIi8iKSx0PVtdLG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTsiLiI9PT1pfHwiIj09PWkmJjAhPT1uJiZuIT09ZS5sZW5ndGgtMXx8KCIuLiI9PT1pP3QucG9wKCk6dC5wdXNoKGkpKX1yZXR1cm4gdC5qb2luKCIvIil9LG4uZ2V0VHlwZU9mPWZ1bmN0aW9uKEEpe3JldHVybiJzdHJpbmciPT10eXBlb2YgQT8ic3RyaW5nIjoiW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpPyJhcnJheSI6aS5ub2RlYnVmZmVyJiZvLmlzQnVmZmVyKEEpPyJub2RlYnVmZmVyIjppLnVpbnQ4YXJyYXkmJkEgaW5zdGFuY2VvZiBVaW50OEFycmF5PyJ1aW50OGFycmF5IjppLmFycmF5YnVmZmVyJiZBIGluc3RhbmNlb2YgQXJyYXlCdWZmZXI/ImFycmF5YnVmZmVyIjp2b2lkIDB9LG4uY2hlY2tTdXBwb3J0PWZ1bmN0aW9uKEEpe2lmKCFpW0EudG9Mb3dlckNhc2UoKV0pdGhyb3cgbmV3IEVycm9yKEErIiBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgcGxhdGZvcm0iKX0sbi5NQVhfVkFMVUVfMTZCSVRTPTY1NTM1LG4uTUFYX1ZBTFVFXzMyQklUUz0tMSxuLnByZXR0eT1mdW5jdGlvbihBKXt2YXIgZSx0LG49IiI7Zm9yKHQ9MDt0PChBfHwiIikubGVuZ3RoO3QrKyluKz0iXFx4IisoKGU9QS5jaGFyQ29kZUF0KHQpKTwxNj8iMCI6IiIpK2UudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7cmV0dXJuIG59LG4uZGVsYXk9ZnVuY3Rpb24oQSxlLG4pe3QoKGZ1bmN0aW9uKCl7QS5hcHBseShufHxudWxsLGV8fFtdKX0pKX0sbi5pbmhlcml0cz1mdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXt9dC5wcm90b3R5cGU9ZS5wcm90b3R5cGUsQS5wcm90b3R5cGU9bmV3IHR9LG4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIEEsZSx0PXt9O2ZvcihBPTA7QTxhcmd1bWVudHMubGVuZ3RoO0ErKylmb3IoZSBpbiBhcmd1bWVudHNbQV0pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGFyZ3VtZW50c1tBXSxlKSYmdm9pZCAwPT09dFtlXSYmKHRbZV09YXJndW1lbnRzW0FdW2VdKTtyZXR1cm4gdH0sbi5wcmVwYXJlQ29udGVudD1mdW5jdGlvbihBLGUsdCxvLGEpe3JldHVybiBzLlByb21pc2UucmVzb2x2ZShlKS50aGVuKChmdW5jdGlvbihBKXtyZXR1cm4gaS5ibG9iJiYoQSBpbnN0YW5jZW9mIEJsb2J8fC0xIT09WyJbb2JqZWN0IEZpbGVdIiwiW29iamVjdCBCbG9iXSJdLmluZGV4T2YoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpKSkmJiJ1bmRlZmluZWQiIT10eXBlb2YgRmlsZVJlYWRlcj9uZXcgcy5Qcm9taXNlKChmdW5jdGlvbihlLHQpe3ZhciBuPW5ldyBGaWxlUmVhZGVyO24ub25sb2FkPWZ1bmN0aW9uKEEpe2UoQS50YXJnZXQucmVzdWx0KX0sbi5vbmVycm9yPWZ1bmN0aW9uKEEpe3QoQS50YXJnZXQuZXJyb3IpfSxuLnJlYWRBc0FycmF5QnVmZmVyKEEpfSkpOkF9KSkudGhlbigoZnVuY3Rpb24oZSl7dmFyIGM9bi5nZXRUeXBlT2YoZSk7cmV0dXJuIGM/KCJhcnJheWJ1ZmZlciI9PT1jP2U9bi50cmFuc2Zvcm1UbygidWludDhhcnJheSIsZSk6InN0cmluZyI9PT1jJiYoYT9lPXIuZGVjb2RlKGUpOnQmJiEwIT09byYmKGU9ZnVuY3Rpb24oQSl7cmV0dXJuIEIoQSxpLnVpbnQ4YXJyYXk/bmV3IFVpbnQ4QXJyYXkoQS5sZW5ndGgpOm5ldyBBcnJheShBLmxlbmd0aCkpfShlKSkpLGUpOnMuUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCJDYW4ndCByZWFkIHRoZSBkYXRhIG9mICciK0ErIicuIElzIGl0IGluIGEgc3VwcG9ydGVkIEphdmFTY3JpcHQgdHlwZSAoU3RyaW5nLCBCbG9iLCBBcnJheUJ1ZmZlciwgZXRjKSA/IikpfSkpfX0seyIuL2Jhc2U2NCI6MSwiLi9leHRlcm5hbCI6NiwiLi9ub2RlanNVdGlscyI6MTQsIi4vc3VwcG9ydCI6MzAsc2V0aW1tZWRpYXRlOjU0fV0sMzM6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49QSgiLi9yZWFkZXIvcmVhZGVyRm9yIiksaT1BKCIuL3V0aWxzIikscj1BKCIuL3NpZ25hdHVyZSIpLG89QSgiLi96aXBFbnRyeSIpLHM9QSgiLi9zdXBwb3J0Iik7ZnVuY3Rpb24gYShBKXt0aGlzLmZpbGVzPVtdLHRoaXMubG9hZE9wdGlvbnM9QX1hLnByb3RvdHlwZT17Y2hlY2tTaWduYXR1cmU6ZnVuY3Rpb24oQSl7aWYoIXRoaXMucmVhZGVyLnJlYWRBbmRDaGVja1NpZ25hdHVyZShBKSl7dGhpcy5yZWFkZXIuaW5kZXgtPTQ7dmFyIGU9dGhpcy5yZWFkZXIucmVhZFN0cmluZyg0KTt0aHJvdyBuZXcgRXJyb3IoIkNvcnJ1cHRlZCB6aXAgb3IgYnVnOiB1bmV4cGVjdGVkIHNpZ25hdHVyZSAoIitpLnByZXR0eShlKSsiLCBleHBlY3RlZCAiK2kucHJldHR5KEEpKyIpIil9fSxpc1NpZ25hdHVyZTpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMucmVhZGVyLmluZGV4O3RoaXMucmVhZGVyLnNldEluZGV4KEEpO3ZhciBuPXRoaXMucmVhZGVyLnJlYWRTdHJpbmcoNCk9PT1lO3JldHVybiB0aGlzLnJlYWRlci5zZXRJbmRleCh0KSxufSxyZWFkQmxvY2tFbmRPZkNlbnRyYWw6ZnVuY3Rpb24oKXt0aGlzLmRpc2tOdW1iZXI9dGhpcy5yZWFkZXIucmVhZEludCgyKSx0aGlzLmRpc2tXaXRoQ2VudHJhbERpclN0YXJ0PXRoaXMucmVhZGVyLnJlYWRJbnQoMiksdGhpcy5jZW50cmFsRGlyUmVjb3Jkc09uVGhpc0Rpc2s9dGhpcy5yZWFkZXIucmVhZEludCgyKSx0aGlzLmNlbnRyYWxEaXJSZWNvcmRzPXRoaXMucmVhZGVyLnJlYWRJbnQoMiksdGhpcy5jZW50cmFsRGlyU2l6ZT10aGlzLnJlYWRlci5yZWFkSW50KDQpLHRoaXMuY2VudHJhbERpck9mZnNldD10aGlzLnJlYWRlci5yZWFkSW50KDQpLHRoaXMuemlwQ29tbWVudExlbmd0aD10aGlzLnJlYWRlci5yZWFkSW50KDIpO3ZhciBBPXRoaXMucmVhZGVyLnJlYWREYXRhKHRoaXMuemlwQ29tbWVudExlbmd0aCksZT1zLnVpbnQ4YXJyYXk/InVpbnQ4YXJyYXkiOiJhcnJheSIsdD1pLnRyYW5zZm9ybVRvKGUsQSk7dGhpcy56aXBDb21tZW50PXRoaXMubG9hZE9wdGlvbnMuZGVjb2RlRmlsZU5hbWUodCl9LHJlYWRCbG9ja1ppcDY0RW5kT2ZDZW50cmFsOmZ1bmN0aW9uKCl7dGhpcy56aXA2NEVuZE9mQ2VudHJhbFNpemU9dGhpcy5yZWFkZXIucmVhZEludCg4KSx0aGlzLnJlYWRlci5za2lwKDQpLHRoaXMuZGlza051bWJlcj10aGlzLnJlYWRlci5yZWFkSW50KDQpLHRoaXMuZGlza1dpdGhDZW50cmFsRGlyU3RhcnQ9dGhpcy5yZWFkZXIucmVhZEludCg0KSx0aGlzLmNlbnRyYWxEaXJSZWNvcmRzT25UaGlzRGlzaz10aGlzLnJlYWRlci5yZWFkSW50KDgpLHRoaXMuY2VudHJhbERpclJlY29yZHM9dGhpcy5yZWFkZXIucmVhZEludCg4KSx0aGlzLmNlbnRyYWxEaXJTaXplPXRoaXMucmVhZGVyLnJlYWRJbnQoOCksdGhpcy5jZW50cmFsRGlyT2Zmc2V0PXRoaXMucmVhZGVyLnJlYWRJbnQoOCksdGhpcy56aXA2NEV4dGVuc2libGVEYXRhPXt9O2Zvcih2YXIgQSxlLHQsbj10aGlzLnppcDY0RW5kT2ZDZW50cmFsU2l6ZS00NDswPG47KUE9dGhpcy5yZWFkZXIucmVhZEludCgyKSxlPXRoaXMucmVhZGVyLnJlYWRJbnQoNCksdD10aGlzLnJlYWRlci5yZWFkRGF0YShlKSx0aGlzLnppcDY0RXh0ZW5zaWJsZURhdGFbQV09e2lkOkEsbGVuZ3RoOmUsdmFsdWU6dH19LHJlYWRCbG9ja1ppcDY0RW5kT2ZDZW50cmFsTG9jYXRvcjpmdW5jdGlvbigpe2lmKHRoaXMuZGlza1dpdGhaaXA2NENlbnRyYWxEaXJTdGFydD10aGlzLnJlYWRlci5yZWFkSW50KDQpLHRoaXMucmVsYXRpdmVPZmZzZXRFbmRPZlppcDY0Q2VudHJhbERpcj10aGlzLnJlYWRlci5yZWFkSW50KDgpLHRoaXMuZGlza3NDb3VudD10aGlzLnJlYWRlci5yZWFkSW50KDQpLDE8dGhpcy5kaXNrc0NvdW50KXRocm93IG5ldyBFcnJvcigiTXVsdGktdm9sdW1lcyB6aXAgYXJlIG5vdCBzdXBwb3J0ZWQiKX0scmVhZExvY2FsRmlsZXM6ZnVuY3Rpb24oKXt2YXIgQSxlO2ZvcihBPTA7QTx0aGlzLmZpbGVzLmxlbmd0aDtBKyspZT10aGlzLmZpbGVzW0FdLHRoaXMucmVhZGVyLnNldEluZGV4KGUubG9jYWxIZWFkZXJPZmZzZXQpLHRoaXMuY2hlY2tTaWduYXR1cmUoci5MT0NBTF9GSUxFX0hFQURFUiksZS5yZWFkTG9jYWxQYXJ0KHRoaXMucmVhZGVyKSxlLmhhbmRsZVVURjgoKSxlLnByb2Nlc3NBdHRyaWJ1dGVzKCl9LHJlYWRDZW50cmFsRGlyOmZ1bmN0aW9uKCl7dmFyIEE7Zm9yKHRoaXMucmVhZGVyLnNldEluZGV4KHRoaXMuY2VudHJhbERpck9mZnNldCk7dGhpcy5yZWFkZXIucmVhZEFuZENoZWNrU2lnbmF0dXJlKHIuQ0VOVFJBTF9GSUxFX0hFQURFUik7KShBPW5ldyBvKHt6aXA2NDp0aGlzLnppcDY0fSx0aGlzLmxvYWRPcHRpb25zKSkucmVhZENlbnRyYWxQYXJ0KHRoaXMucmVhZGVyKSx0aGlzLmZpbGVzLnB1c2goQSk7aWYodGhpcy5jZW50cmFsRGlyUmVjb3JkcyE9PXRoaXMuZmlsZXMubGVuZ3RoJiYwIT09dGhpcy5jZW50cmFsRGlyUmVjb3JkcyYmMD09PXRoaXMuZmlsZXMubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiQ29ycnVwdGVkIHppcCBvciBidWc6IGV4cGVjdGVkICIrdGhpcy5jZW50cmFsRGlyUmVjb3JkcysiIHJlY29yZHMgaW4gY2VudHJhbCBkaXIsIGdvdCAiK3RoaXMuZmlsZXMubGVuZ3RoKX0scmVhZEVuZE9mQ2VudHJhbDpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmVhZGVyLmxhc3RJbmRleE9mU2lnbmF0dXJlKHIuQ0VOVFJBTF9ESVJFQ1RPUllfRU5EKTtpZihBPDApdGhyb3cgdGhpcy5pc1NpZ25hdHVyZSgwLHIuTE9DQUxfRklMRV9IRUFERVIpP25ldyBFcnJvcigiQ29ycnVwdGVkIHppcDogY2FuJ3QgZmluZCBlbmQgb2YgY2VudHJhbCBkaXJlY3RvcnkiKTpuZXcgRXJyb3IoIkNhbid0IGZpbmQgZW5kIG9mIGNlbnRyYWwgZGlyZWN0b3J5IDogaXMgdGhpcyBhIHppcCBmaWxlID8gSWYgaXQgaXMsIHNlZSBodHRwczovL3N0dWsuZ2l0aHViLmlvL2pzemlwL2RvY3VtZW50YXRpb24vaG93dG8vcmVhZF96aXAuaHRtbCIpO3RoaXMucmVhZGVyLnNldEluZGV4KEEpO3ZhciBlPUE7aWYodGhpcy5jaGVja1NpZ25hdHVyZShyLkNFTlRSQUxfRElSRUNUT1JZX0VORCksdGhpcy5yZWFkQmxvY2tFbmRPZkNlbnRyYWwoKSx0aGlzLmRpc2tOdW1iZXI9PT1pLk1BWF9WQUxVRV8xNkJJVFN8fHRoaXMuZGlza1dpdGhDZW50cmFsRGlyU3RhcnQ9PT1pLk1BWF9WQUxVRV8xNkJJVFN8fHRoaXMuY2VudHJhbERpclJlY29yZHNPblRoaXNEaXNrPT09aS5NQVhfVkFMVUVfMTZCSVRTfHx0aGlzLmNlbnRyYWxEaXJSZWNvcmRzPT09aS5NQVhfVkFMVUVfMTZCSVRTfHx0aGlzLmNlbnRyYWxEaXJTaXplPT09aS5NQVhfVkFMVUVfMzJCSVRTfHx0aGlzLmNlbnRyYWxEaXJPZmZzZXQ9PT1pLk1BWF9WQUxVRV8zMkJJVFMpe2lmKHRoaXMuemlwNjQ9ITAsKEE9dGhpcy5yZWFkZXIubGFzdEluZGV4T2ZTaWduYXR1cmUoci5aSVA2NF9DRU5UUkFMX0RJUkVDVE9SWV9MT0NBVE9SKSk8MCl0aHJvdyBuZXcgRXJyb3IoIkNvcnJ1cHRlZCB6aXA6IGNhbid0IGZpbmQgdGhlIFpJUDY0IGVuZCBvZiBjZW50cmFsIGRpcmVjdG9yeSBsb2NhdG9yIik7aWYodGhpcy5yZWFkZXIuc2V0SW5kZXgoQSksdGhpcy5jaGVja1NpZ25hdHVyZShyLlpJUDY0X0NFTlRSQUxfRElSRUNUT1JZX0xPQ0FUT1IpLHRoaXMucmVhZEJsb2NrWmlwNjRFbmRPZkNlbnRyYWxMb2NhdG9yKCksIXRoaXMuaXNTaWduYXR1cmUodGhpcy5yZWxhdGl2ZU9mZnNldEVuZE9mWmlwNjRDZW50cmFsRGlyLHIuWklQNjRfQ0VOVFJBTF9ESVJFQ1RPUllfRU5EKSYmKHRoaXMucmVsYXRpdmVPZmZzZXRFbmRPZlppcDY0Q2VudHJhbERpcj10aGlzLnJlYWRlci5sYXN0SW5kZXhPZlNpZ25hdHVyZShyLlpJUDY0X0NFTlRSQUxfRElSRUNUT1JZX0VORCksdGhpcy5yZWxhdGl2ZU9mZnNldEVuZE9mWmlwNjRDZW50cmFsRGlyPDApKXRocm93IG5ldyBFcnJvcigiQ29ycnVwdGVkIHppcDogY2FuJ3QgZmluZCB0aGUgWklQNjQgZW5kIG9mIGNlbnRyYWwgZGlyZWN0b3J5Iik7dGhpcy5yZWFkZXIuc2V0SW5kZXgodGhpcy5yZWxhdGl2ZU9mZnNldEVuZE9mWmlwNjRDZW50cmFsRGlyKSx0aGlzLmNoZWNrU2lnbmF0dXJlKHIuWklQNjRfQ0VOVFJBTF9ESVJFQ1RPUllfRU5EKSx0aGlzLnJlYWRCbG9ja1ppcDY0RW5kT2ZDZW50cmFsKCl9dmFyIHQ9dGhpcy5jZW50cmFsRGlyT2Zmc2V0K3RoaXMuY2VudHJhbERpclNpemU7dGhpcy56aXA2NCYmKHQrPTIwLHQrPTEyK3RoaXMuemlwNjRFbmRPZkNlbnRyYWxTaXplKTt2YXIgbj1lLXQ7aWYoMDxuKXRoaXMuaXNTaWduYXR1cmUoZSxyLkNFTlRSQUxfRklMRV9IRUFERVIpfHwodGhpcy5yZWFkZXIuemVybz1uKTtlbHNlIGlmKG48MCl0aHJvdyBuZXcgRXJyb3IoIkNvcnJ1cHRlZCB6aXA6IG1pc3NpbmcgIitNYXRoLmFicyhuKSsiIGJ5dGVzLiIpfSxwcmVwYXJlUmVhZGVyOmZ1bmN0aW9uKEEpe3RoaXMucmVhZGVyPW4oQSl9LGxvYWQ6ZnVuY3Rpb24oQSl7dGhpcy5wcmVwYXJlUmVhZGVyKEEpLHRoaXMucmVhZEVuZE9mQ2VudHJhbCgpLHRoaXMucmVhZENlbnRyYWxEaXIoKSx0aGlzLnJlYWRMb2NhbEZpbGVzKCl9fSxlLmV4cG9ydHM9YX0seyIuL3JlYWRlci9yZWFkZXJGb3IiOjIyLCIuL3NpZ25hdHVyZSI6MjMsIi4vc3VwcG9ydCI6MzAsIi4vdXRpbHMiOjMyLCIuL3ppcEVudHJ5IjozNH1dLDM0OltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4vcmVhZGVyL3JlYWRlckZvciIpLGk9QSgiLi91dGlscyIpLHI9QSgiLi9jb21wcmVzc2VkT2JqZWN0Iiksbz1BKCIuL2NyYzMyIikscz1BKCIuL3V0ZjgiKSxhPUEoIi4vY29tcHJlc3Npb25zIiksQj1BKCIuL3N1cHBvcnQiKTtmdW5jdGlvbiBjKEEsZSl7dGhpcy5vcHRpb25zPUEsdGhpcy5sb2FkT3B0aW9ucz1lfWMucHJvdG90eXBlPXtpc0VuY3J5cHRlZDpmdW5jdGlvbigpe3JldHVybiAxPT0oMSZ0aGlzLmJpdEZsYWcpfSx1c2VVVEY4OmZ1bmN0aW9uKCl7cmV0dXJuIDIwNDg9PSgyMDQ4JnRoaXMuYml0RmxhZyl9LHJlYWRMb2NhbFBhcnQ6ZnVuY3Rpb24oQSl7dmFyIGUsdDtpZihBLnNraXAoMjIpLHRoaXMuZmlsZU5hbWVMZW5ndGg9QS5yZWFkSW50KDIpLHQ9QS5yZWFkSW50KDIpLHRoaXMuZmlsZU5hbWU9QS5yZWFkRGF0YSh0aGlzLmZpbGVOYW1lTGVuZ3RoKSxBLnNraXAodCksLTE9PT10aGlzLmNvbXByZXNzZWRTaXplfHwtMT09PXRoaXMudW5jb21wcmVzc2VkU2l6ZSl0aHJvdyBuZXcgRXJyb3IoIkJ1ZyBvciBjb3JydXB0ZWQgemlwIDogZGlkbid0IGdldCBlbm91Z2ggaW5mb3JtYXRpb24gZnJvbSB0aGUgY2VudHJhbCBkaXJlY3RvcnkgKGNvbXByZXNzZWRTaXplID09PSAtMSB8fCB1bmNvbXByZXNzZWRTaXplID09PSAtMSkiKTtpZihudWxsPT09KGU9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlIGluIGEpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsZSkmJmFbZV0ubWFnaWM9PT1BKXJldHVybiBhW2VdO3JldHVybiBudWxsfSh0aGlzLmNvbXByZXNzaW9uTWV0aG9kKSkpdGhyb3cgbmV3IEVycm9yKCJDb3JydXB0ZWQgemlwIDogY29tcHJlc3Npb24gIitpLnByZXR0eSh0aGlzLmNvbXByZXNzaW9uTWV0aG9kKSsiIHVua25vd24gKGlubmVyIGZpbGUgOiAiK2kudHJhbnNmb3JtVG8oInN0cmluZyIsdGhpcy5maWxlTmFtZSkrIikiKTt0aGlzLmRlY29tcHJlc3NlZD1uZXcgcih0aGlzLmNvbXByZXNzZWRTaXplLHRoaXMudW5jb21wcmVzc2VkU2l6ZSx0aGlzLmNyYzMyLGUsQS5yZWFkRGF0YSh0aGlzLmNvbXByZXNzZWRTaXplKSl9LHJlYWRDZW50cmFsUGFydDpmdW5jdGlvbihBKXt0aGlzLnZlcnNpb25NYWRlQnk9QS5yZWFkSW50KDIpLEEuc2tpcCgyKSx0aGlzLmJpdEZsYWc9QS5yZWFkSW50KDIpLHRoaXMuY29tcHJlc3Npb25NZXRob2Q9QS5yZWFkU3RyaW5nKDIpLHRoaXMuZGF0ZT1BLnJlYWREYXRlKCksdGhpcy5jcmMzMj1BLnJlYWRJbnQoNCksdGhpcy5jb21wcmVzc2VkU2l6ZT1BLnJlYWRJbnQoNCksdGhpcy51bmNvbXByZXNzZWRTaXplPUEucmVhZEludCg0KTt2YXIgZT1BLnJlYWRJbnQoMik7aWYodGhpcy5leHRyYUZpZWxkc0xlbmd0aD1BLnJlYWRJbnQoMiksdGhpcy5maWxlQ29tbWVudExlbmd0aD1BLnJlYWRJbnQoMiksdGhpcy5kaXNrTnVtYmVyU3RhcnQ9QS5yZWFkSW50KDIpLHRoaXMuaW50ZXJuYWxGaWxlQXR0cmlidXRlcz1BLnJlYWRJbnQoMiksdGhpcy5leHRlcm5hbEZpbGVBdHRyaWJ1dGVzPUEucmVhZEludCg0KSx0aGlzLmxvY2FsSGVhZGVyT2Zmc2V0PUEucmVhZEludCg0KSx0aGlzLmlzRW5jcnlwdGVkKCkpdGhyb3cgbmV3IEVycm9yKCJFbmNyeXB0ZWQgemlwIGFyZSBub3Qgc3VwcG9ydGVkIik7QS5za2lwKGUpLHRoaXMucmVhZEV4dHJhRmllbGRzKEEpLHRoaXMucGFyc2VaSVA2NEV4dHJhRmllbGQoQSksdGhpcy5maWxlQ29tbWVudD1BLnJlYWREYXRhKHRoaXMuZmlsZUNvbW1lbnRMZW5ndGgpfSxwcm9jZXNzQXR0cmlidXRlczpmdW5jdGlvbigpe3RoaXMudW5peFBlcm1pc3Npb25zPW51bGwsdGhpcy5kb3NQZXJtaXNzaW9ucz1udWxsO3ZhciBBPXRoaXMudmVyc2lvbk1hZGVCeT4+ODt0aGlzLmRpcj0hISgxNiZ0aGlzLmV4dGVybmFsRmlsZUF0dHJpYnV0ZXMpLDA9PUEmJih0aGlzLmRvc1Blcm1pc3Npb25zPTYzJnRoaXMuZXh0ZXJuYWxGaWxlQXR0cmlidXRlcyksMz09QSYmKHRoaXMudW5peFBlcm1pc3Npb25zPXRoaXMuZXh0ZXJuYWxGaWxlQXR0cmlidXRlcz4+MTYmNjU1MzUpLHRoaXMuZGlyfHwiLyIhPT10aGlzLmZpbGVOYW1lU3RyLnNsaWNlKC0xKXx8KHRoaXMuZGlyPSEwKX0scGFyc2VaSVA2NEV4dHJhRmllbGQ6ZnVuY3Rpb24oKXtpZih0aGlzLmV4dHJhRmllbGRzWzFdKXt2YXIgQT1uKHRoaXMuZXh0cmFGaWVsZHNbMV0udmFsdWUpO3RoaXMudW5jb21wcmVzc2VkU2l6ZT09PWkuTUFYX1ZBTFVFXzMyQklUUyYmKHRoaXMudW5jb21wcmVzc2VkU2l6ZT1BLnJlYWRJbnQoOCkpLHRoaXMuY29tcHJlc3NlZFNpemU9PT1pLk1BWF9WQUxVRV8zMkJJVFMmJih0aGlzLmNvbXByZXNzZWRTaXplPUEucmVhZEludCg4KSksdGhpcy5sb2NhbEhlYWRlck9mZnNldD09PWkuTUFYX1ZBTFVFXzMyQklUUyYmKHRoaXMubG9jYWxIZWFkZXJPZmZzZXQ9QS5yZWFkSW50KDgpKSx0aGlzLmRpc2tOdW1iZXJTdGFydD09PWkuTUFYX1ZBTFVFXzMyQklUUyYmKHRoaXMuZGlza051bWJlclN0YXJ0PUEucmVhZEludCg0KSl9fSxyZWFkRXh0cmFGaWVsZHM6ZnVuY3Rpb24oQSl7dmFyIGUsdCxuLGk9QS5pbmRleCt0aGlzLmV4dHJhRmllbGRzTGVuZ3RoO2Zvcih0aGlzLmV4dHJhRmllbGRzfHwodGhpcy5leHRyYUZpZWxkcz17fSk7QS5pbmRleCs0PGk7KWU9QS5yZWFkSW50KDIpLHQ9QS5yZWFkSW50KDIpLG49QS5yZWFkRGF0YSh0KSx0aGlzLmV4dHJhRmllbGRzW2VdPXtpZDplLGxlbmd0aDp0LHZhbHVlOm59O0Euc2V0SW5kZXgoaSl9LGhhbmRsZVVURjg6ZnVuY3Rpb24oKXt2YXIgQT1CLnVpbnQ4YXJyYXk/InVpbnQ4YXJyYXkiOiJhcnJheSI7aWYodGhpcy51c2VVVEY4KCkpdGhpcy5maWxlTmFtZVN0cj1zLnV0ZjhkZWNvZGUodGhpcy5maWxlTmFtZSksdGhpcy5maWxlQ29tbWVudFN0cj1zLnV0ZjhkZWNvZGUodGhpcy5maWxlQ29tbWVudCk7ZWxzZXt2YXIgZT10aGlzLmZpbmRFeHRyYUZpZWxkVW5pY29kZVBhdGgoKTtpZihudWxsIT09ZSl0aGlzLmZpbGVOYW1lU3RyPWU7ZWxzZXt2YXIgdD1pLnRyYW5zZm9ybVRvKEEsdGhpcy5maWxlTmFtZSk7dGhpcy5maWxlTmFtZVN0cj10aGlzLmxvYWRPcHRpb25zLmRlY29kZUZpbGVOYW1lKHQpfXZhciBuPXRoaXMuZmluZEV4dHJhRmllbGRVbmljb2RlQ29tbWVudCgpO2lmKG51bGwhPT1uKXRoaXMuZmlsZUNvbW1lbnRTdHI9bjtlbHNle3ZhciByPWkudHJhbnNmb3JtVG8oQSx0aGlzLmZpbGVDb21tZW50KTt0aGlzLmZpbGVDb21tZW50U3RyPXRoaXMubG9hZE9wdGlvbnMuZGVjb2RlRmlsZU5hbWUocil9fX0sZmluZEV4dHJhRmllbGRVbmljb2RlUGF0aDpmdW5jdGlvbigpe3ZhciBBPXRoaXMuZXh0cmFGaWVsZHNbMjg3ODldO2lmKEEpe3ZhciBlPW4oQS52YWx1ZSk7cmV0dXJuIDEhPT1lLnJlYWRJbnQoMSl8fG8odGhpcy5maWxlTmFtZSkhPT1lLnJlYWRJbnQoNCk/bnVsbDpzLnV0ZjhkZWNvZGUoZS5yZWFkRGF0YShBLmxlbmd0aC01KSl9cmV0dXJuIG51bGx9LGZpbmRFeHRyYUZpZWxkVW5pY29kZUNvbW1lbnQ6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmV4dHJhRmllbGRzWzI1NDYxXTtpZihBKXt2YXIgZT1uKEEudmFsdWUpO3JldHVybiAxIT09ZS5yZWFkSW50KDEpfHxvKHRoaXMuZmlsZUNvbW1lbnQpIT09ZS5yZWFkSW50KDQpP251bGw6cy51dGY4ZGVjb2RlKGUucmVhZERhdGEoQS5sZW5ndGgtNSkpfXJldHVybiBudWxsfX0sZS5leHBvcnRzPWN9LHsiLi9jb21wcmVzc2VkT2JqZWN0IjoyLCIuL2NvbXByZXNzaW9ucyI6MywiLi9jcmMzMiI6NCwiLi9yZWFkZXIvcmVhZGVyRm9yIjoyMiwiLi9zdXBwb3J0IjozMCwiLi91dGY4IjozMSwiLi91dGlscyI6MzJ9XSwzNTpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKEEsZSx0KXt0aGlzLm5hbWU9QSx0aGlzLmRpcj10LmRpcix0aGlzLmRhdGU9dC5kYXRlLHRoaXMuY29tbWVudD10LmNvbW1lbnQsdGhpcy51bml4UGVybWlzc2lvbnM9dC51bml4UGVybWlzc2lvbnMsdGhpcy5kb3NQZXJtaXNzaW9ucz10LmRvc1Blcm1pc3Npb25zLHRoaXMuX2RhdGE9ZSx0aGlzLl9kYXRhQmluYXJ5PXQuYmluYXJ5LHRoaXMub3B0aW9ucz17Y29tcHJlc3Npb246dC5jb21wcmVzc2lvbixjb21wcmVzc2lvbk9wdGlvbnM6dC5jb21wcmVzc2lvbk9wdGlvbnN9fXZhciBpPUEoIi4vc3RyZWFtL1N0cmVhbUhlbHBlciIpLHI9QSgiLi9zdHJlYW0vRGF0YVdvcmtlciIpLG89QSgiLi91dGY4Iikscz1BKCIuL2NvbXByZXNzZWRPYmplY3QiKSxhPUEoIi4vc3RyZWFtL0dlbmVyaWNXb3JrZXIiKTtuLnByb3RvdHlwZT17aW50ZXJuYWxTdHJlYW06ZnVuY3Rpb24oQSl7dmFyIGU9bnVsbCx0PSJzdHJpbmciO3RyeXtpZighQSl0aHJvdyBuZXcgRXJyb3IoIk5vIG91dHB1dCB0eXBlIHNwZWNpZmllZC4iKTt2YXIgbj0ic3RyaW5nIj09PSh0PUEudG9Mb3dlckNhc2UoKSl8fCJ0ZXh0Ij09PXQ7ImJpbmFyeXN0cmluZyIhPT10JiYidGV4dCIhPT10fHwodD0ic3RyaW5nIiksZT10aGlzLl9kZWNvbXByZXNzV29ya2VyKCk7dmFyIHI9IXRoaXMuX2RhdGFCaW5hcnk7ciYmIW4mJihlPWUucGlwZShuZXcgby5VdGY4RW5jb2RlV29ya2VyKSksIXImJm4mJihlPWUucGlwZShuZXcgby5VdGY4RGVjb2RlV29ya2VyKSl9Y2F0Y2goQSl7KGU9bmV3IGEoImVycm9yIikpLmVycm9yKEEpfXJldHVybiBuZXcgaShlLHQsIiIpfSxhc3luYzpmdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLmludGVybmFsU3RyZWFtKEEpLmFjY3VtdWxhdGUoZSl9LG5vZGVTdHJlYW06ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5pbnRlcm5hbFN0cmVhbShBfHwibm9kZWJ1ZmZlciIpLnRvTm9kZWpzU3RyZWFtKGUpfSxfY29tcHJlc3NXb3JrZXI6ZnVuY3Rpb24oQSxlKXtpZih0aGlzLl9kYXRhIGluc3RhbmNlb2YgcyYmdGhpcy5fZGF0YS5jb21wcmVzc2lvbi5tYWdpYz09PUEubWFnaWMpcmV0dXJuIHRoaXMuX2RhdGEuZ2V0Q29tcHJlc3NlZFdvcmtlcigpO3ZhciB0PXRoaXMuX2RlY29tcHJlc3NXb3JrZXIoKTtyZXR1cm4gdGhpcy5fZGF0YUJpbmFyeXx8KHQ9dC5waXBlKG5ldyBvLlV0ZjhFbmNvZGVXb3JrZXIpKSxzLmNyZWF0ZVdvcmtlckZyb20odCxBLGUpfSxfZGVjb21wcmVzc1dvcmtlcjpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9kYXRhIGluc3RhbmNlb2Ygcz90aGlzLl9kYXRhLmdldENvbnRlbnRXb3JrZXIoKTp0aGlzLl9kYXRhIGluc3RhbmNlb2YgYT90aGlzLl9kYXRhOm5ldyByKHRoaXMuX2RhdGEpfX07Zm9yKHZhciBCPVsiYXNUZXh0IiwiYXNCaW5hcnkiLCJhc05vZGVCdWZmZXIiLCJhc1VpbnQ4QXJyYXkiLCJhc0FycmF5QnVmZmVyIl0sYz1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiVGhpcyBtZXRob2QgaGFzIGJlZW4gcmVtb3ZlZCBpbiBKU1ppcCAzLjAsIHBsZWFzZSBjaGVjayB0aGUgdXBncmFkZSBndWlkZS4iKX0sZz0wO2c8Qi5sZW5ndGg7ZysrKW4ucHJvdG90eXBlW0JbZ11dPWM7ZS5leHBvcnRzPW59LHsiLi9jb21wcmVzc2VkT2JqZWN0IjoyLCIuL3N0cmVhbS9EYXRhV29ya2VyIjoyNywiLi9zdHJlYW0vR2VuZXJpY1dvcmtlciI6MjgsIi4vc3RyZWFtL1N0cmVhbUhlbHBlciI6MjksIi4vdXRmOCI6MzF9XSwzNjpbZnVuY3Rpb24oQSxlLHQpeyhmdW5jdGlvbihBKXsidXNlIHN0cmljdCI7dmFyIHQsbixpPUEuTXV0YXRpb25PYnNlcnZlcnx8QS5XZWJLaXRNdXRhdGlvbk9ic2VydmVyO2lmKGkpe3ZhciByPTAsbz1uZXcgaShjKSxzPUEuZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpO28ub2JzZXJ2ZShzLHtjaGFyYWN0ZXJEYXRhOiEwfSksdD1mdW5jdGlvbigpe3MuZGF0YT1yPSsrciUyfX1lbHNlIGlmKEEuc2V0SW1tZWRpYXRlfHx2b2lkIDA9PT1BLk1lc3NhZ2VDaGFubmVsKXQ9ImRvY3VtZW50ImluIEEmJiJvbnJlYWR5c3RhdGVjaGFuZ2UiaW4gQS5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKT9mdW5jdGlvbigpe3ZhciBlPUEuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7ZS5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXtjKCksZS5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbCxlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZSksZT1udWxsfSxBLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hcHBlbmRDaGlsZChlKX06ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGMsMCl9O2Vsc2V7dmFyIGE9bmV3IEEuTWVzc2FnZUNoYW5uZWw7YS5wb3J0MS5vbm1lc3NhZ2U9Yyx0PWZ1bmN0aW9uKCl7YS5wb3J0Mi5wb3N0TWVzc2FnZSgwKX19dmFyIEI9W107ZnVuY3Rpb24gYygpe3ZhciBBLGU7bj0hMDtmb3IodmFyIHQ9Qi5sZW5ndGg7dDspe2ZvcihlPUIsQj1bXSxBPS0xOysrQTx0OyllW0FdKCk7dD1CLmxlbmd0aH1uPSExfWUuZXhwb3J0cz1mdW5jdGlvbihBKXsxIT09Qi5wdXNoKEEpfHxufHx0KCl9fSkuY2FsbCh0aGlzLHZvaWQgMCE9PW4/bjoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6e30pfSx7fV0sMzc6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49QSgiaW1tZWRpYXRlIik7ZnVuY3Rpb24gaSgpe312YXIgcj17fSxvPVsiUkVKRUNURUQiXSxzPVsiRlVMRklMTEVEIl0sYT1bIlBFTkRJTkciXTtmdW5jdGlvbiBCKEEpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoInJlc29sdmVyIG11c3QgYmUgYSBmdW5jdGlvbiIpO3RoaXMuc3RhdGU9YSx0aGlzLnF1ZXVlPVtdLHRoaXMub3V0Y29tZT12b2lkIDAsQSE9PWkmJlEodGhpcyxBKX1mdW5jdGlvbiBjKEEsZSx0KXt0aGlzLnByb21pc2U9QSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmKHRoaXMub25GdWxmaWxsZWQ9ZSx0aGlzLmNhbGxGdWxmaWxsZWQ9dGhpcy5vdGhlckNhbGxGdWxmaWxsZWQpLCJmdW5jdGlvbiI9PXR5cGVvZiB0JiYodGhpcy5vblJlamVjdGVkPXQsdGhpcy5jYWxsUmVqZWN0ZWQ9dGhpcy5vdGhlckNhbGxSZWplY3RlZCl9ZnVuY3Rpb24gZyhBLGUsdCl7bigoZnVuY3Rpb24oKXt2YXIgbjt0cnl7bj1lKHQpfWNhdGNoKG4pe3JldHVybiByLnJlamVjdChBLG4pfW49PT1BP3IucmVqZWN0KEEsbmV3IFR5cGVFcnJvcigiQ2Fubm90IHJlc29sdmUgcHJvbWlzZSB3aXRoIGl0c2VsZiIpKTpyLnJlc29sdmUoQSxuKX0pKX1mdW5jdGlvbiBFKEEpe3ZhciBlPUEmJkEudGhlbjtpZihBJiYoIm9iamVjdCI9PXR5cGVvZiBBfHwiZnVuY3Rpb24iPT10eXBlb2YgQSkmJiJmdW5jdGlvbiI9PXR5cGVvZiBlKXJldHVybiBmdW5jdGlvbigpe2UuYXBwbHkoQSxhcmd1bWVudHMpfX1mdW5jdGlvbiBRKEEsZSl7dmFyIHQ9ITE7ZnVuY3Rpb24gbihlKXt0fHwodD0hMCxyLnJlamVjdChBLGUpKX1mdW5jdGlvbiBpKGUpe3R8fCh0PSEwLHIucmVzb2x2ZShBLGUpKX12YXIgbz11KChmdW5jdGlvbigpe2UoaSxuKX0pKTsiZXJyb3IiPT09by5zdGF0dXMmJm4oby52YWx1ZSl9ZnVuY3Rpb24gdShBLGUpe3ZhciB0PXt9O3RyeXt0LnZhbHVlPUEoZSksdC5zdGF0dXM9InN1Y2Nlc3MifWNhdGNoKEEpe3Quc3RhdHVzPSJlcnJvciIsdC52YWx1ZT1BfXJldHVybiB0fShlLmV4cG9ydHM9QikucHJvdG90eXBlLmZpbmFsbHk9ZnVuY3Rpb24oQSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIEEpcmV0dXJuIHRoaXM7dmFyIGU9dGhpcy5jb25zdHJ1Y3RvcjtyZXR1cm4gdGhpcy50aGVuKChmdW5jdGlvbih0KXtyZXR1cm4gZS5yZXNvbHZlKEEoKSkudGhlbigoZnVuY3Rpb24oKXtyZXR1cm4gdH0pKX0pLChmdW5jdGlvbih0KXtyZXR1cm4gZS5yZXNvbHZlKEEoKSkudGhlbigoZnVuY3Rpb24oKXt0aHJvdyB0fSkpfSkpfSxCLnByb3RvdHlwZS5jYXRjaD1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy50aGVuKG51bGwsQSl9LEIucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oQSxlKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgQSYmdGhpcy5zdGF0ZT09PXN8fCJmdW5jdGlvbiIhPXR5cGVvZiBlJiZ0aGlzLnN0YXRlPT09bylyZXR1cm4gdGhpczt2YXIgdD1uZXcgdGhpcy5jb25zdHJ1Y3RvcihpKTtyZXR1cm4gdGhpcy5zdGF0ZSE9PWE/Zyh0LHRoaXMuc3RhdGU9PT1zP0E6ZSx0aGlzLm91dGNvbWUpOnRoaXMucXVldWUucHVzaChuZXcgYyh0LEEsZSkpLHR9LGMucHJvdG90eXBlLmNhbGxGdWxmaWxsZWQ9ZnVuY3Rpb24oQSl7ci5yZXNvbHZlKHRoaXMucHJvbWlzZSxBKX0sYy5wcm90b3R5cGUub3RoZXJDYWxsRnVsZmlsbGVkPWZ1bmN0aW9uKEEpe2codGhpcy5wcm9taXNlLHRoaXMub25GdWxmaWxsZWQsQSl9LGMucHJvdG90eXBlLmNhbGxSZWplY3RlZD1mdW5jdGlvbihBKXtyLnJlamVjdCh0aGlzLnByb21pc2UsQSl9LGMucHJvdG90eXBlLm90aGVyQ2FsbFJlamVjdGVkPWZ1bmN0aW9uKEEpe2codGhpcy5wcm9taXNlLHRoaXMub25SZWplY3RlZCxBKX0sci5yZXNvbHZlPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dShFLGUpO2lmKCJlcnJvciI9PT10LnN0YXR1cylyZXR1cm4gci5yZWplY3QoQSx0LnZhbHVlKTt2YXIgbj10LnZhbHVlO2lmKG4pUShBLG4pO2Vsc2V7QS5zdGF0ZT1zLEEub3V0Y29tZT1lO2Zvcih2YXIgaT0tMSxvPUEucXVldWUubGVuZ3RoOysraTxvOylBLnF1ZXVlW2ldLmNhbGxGdWxmaWxsZWQoZSl9cmV0dXJuIEF9LHIucmVqZWN0PWZ1bmN0aW9uKEEsZSl7QS5zdGF0ZT1vLEEub3V0Y29tZT1lO2Zvcih2YXIgdD0tMSxuPUEucXVldWUubGVuZ3RoOysrdDxuOylBLnF1ZXVlW3RdLmNhbGxSZWplY3RlZChlKTtyZXR1cm4gQX0sQi5yZXNvbHZlPWZ1bmN0aW9uKEEpe3JldHVybiBBIGluc3RhbmNlb2YgdGhpcz9BOnIucmVzb2x2ZShuZXcgdGhpcyhpKSxBKX0sQi5yZWplY3Q9ZnVuY3Rpb24oQSl7dmFyIGU9bmV3IHRoaXMoaSk7cmV0dXJuIHIucmVqZWN0KGUsQSl9LEIuYWxsPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXM7aWYoIltvYmplY3QgQXJyYXldIiE9PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChBKSlyZXR1cm4gdGhpcy5yZWplY3QobmV3IFR5cGVFcnJvcigibXVzdCBiZSBhbiBhcnJheSIpKTt2YXIgdD1BLmxlbmd0aCxuPSExO2lmKCF0KXJldHVybiB0aGlzLnJlc29sdmUoW10pO2Zvcih2YXIgbz1uZXcgQXJyYXkodCkscz0wLGE9LTEsQj1uZXcgdGhpcyhpKTsrK2E8dDspYyhBW2FdLGEpO3JldHVybiBCO2Z1bmN0aW9uIGMoQSxpKXtlLnJlc29sdmUoQSkudGhlbigoZnVuY3Rpb24oQSl7b1tpXT1BLCsrcyE9PXR8fG58fChuPSEwLHIucmVzb2x2ZShCLG8pKX0pLChmdW5jdGlvbihBKXtufHwobj0hMCxyLnJlamVjdChCLEEpKX0pKX19LEIucmFjZT1mdW5jdGlvbihBKXtpZigiW29iamVjdCBBcnJheV0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpKXJldHVybiB0aGlzLnJlamVjdChuZXcgVHlwZUVycm9yKCJtdXN0IGJlIGFuIGFycmF5IikpO3ZhciBlPUEubGVuZ3RoLHQ9ITE7aWYoIWUpcmV0dXJuIHRoaXMucmVzb2x2ZShbXSk7Zm9yKHZhciBuLG89LTEscz1uZXcgdGhpcyhpKTsrK288ZTspbj1BW29dLHRoaXMucmVzb2x2ZShuKS50aGVuKChmdW5jdGlvbihBKXt0fHwodD0hMCxyLnJlc29sdmUocyxBKSl9KSwoZnVuY3Rpb24oQSl7dHx8KHQ9ITAsci5yZWplY3QocyxBKSl9KSk7cmV0dXJuIHN9fSx7aW1tZWRpYXRlOjM2fV0sMzg6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49e307KDAsQSgiLi9saWIvdXRpbHMvY29tbW9uIikuYXNzaWduKShuLEEoIi4vbGliL2RlZmxhdGUiKSxBKCIuL2xpYi9pbmZsYXRlIiksQSgiLi9saWIvemxpYi9jb25zdGFudHMiKSksZS5leHBvcnRzPW59LHsiLi9saWIvZGVmbGF0ZSI6MzksIi4vbGliL2luZmxhdGUiOjQwLCIuL2xpYi91dGlscy9jb21tb24iOjQxLCIuL2xpYi96bGliL2NvbnN0YW50cyI6NDR9XSwzOTpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuL3psaWIvZGVmbGF0ZSIpLGk9QSgiLi91dGlscy9jb21tb24iKSxyPUEoIi4vdXRpbHMvc3RyaW5ncyIpLG89QSgiLi96bGliL21lc3NhZ2VzIikscz1BKCIuL3psaWIvenN0cmVhbSIpLGE9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztmdW5jdGlvbiBCKEEpe2lmKCEodGhpcyBpbnN0YW5jZW9mIEIpKXJldHVybiBuZXcgQihBKTt0aGlzLm9wdGlvbnM9aS5hc3NpZ24oe2xldmVsOi0xLG1ldGhvZDo4LGNodW5rU2l6ZToxNjM4NCx3aW5kb3dCaXRzOjE1LG1lbUxldmVsOjgsc3RyYXRlZ3k6MCx0bzoiIn0sQXx8e30pO3ZhciBlPXRoaXMub3B0aW9ucztlLnJhdyYmMDxlLndpbmRvd0JpdHM/ZS53aW5kb3dCaXRzPS1lLndpbmRvd0JpdHM6ZS5nemlwJiYwPGUud2luZG93Qml0cyYmZS53aW5kb3dCaXRzPDE2JiYoZS53aW5kb3dCaXRzKz0xNiksdGhpcy5lcnI9MCx0aGlzLm1zZz0iIix0aGlzLmVuZGVkPSExLHRoaXMuY2h1bmtzPVtdLHRoaXMuc3RybT1uZXcgcyx0aGlzLnN0cm0uYXZhaWxfb3V0PTA7dmFyIHQ9bi5kZWZsYXRlSW5pdDIodGhpcy5zdHJtLGUubGV2ZWwsZS5tZXRob2QsZS53aW5kb3dCaXRzLGUubWVtTGV2ZWwsZS5zdHJhdGVneSk7aWYoMCE9PXQpdGhyb3cgbmV3IEVycm9yKG9bdF0pO2lmKGUuaGVhZGVyJiZuLmRlZmxhdGVTZXRIZWFkZXIodGhpcy5zdHJtLGUuaGVhZGVyKSxlLmRpY3Rpb25hcnkpe3ZhciBjO2lmKGM9InN0cmluZyI9PXR5cGVvZiBlLmRpY3Rpb25hcnk/ci5zdHJpbmcyYnVmKGUuZGljdGlvbmFyeSk6IltvYmplY3QgQXJyYXlCdWZmZXJdIj09PWEuY2FsbChlLmRpY3Rpb25hcnkpP25ldyBVaW50OEFycmF5KGUuZGljdGlvbmFyeSk6ZS5kaWN0aW9uYXJ5LDAhPT0odD1uLmRlZmxhdGVTZXREaWN0aW9uYXJ5KHRoaXMuc3RybSxjKSkpdGhyb3cgbmV3IEVycm9yKG9bdF0pO3RoaXMuX2RpY3Rfc2V0PSEwfX1mdW5jdGlvbiBjKEEsZSl7dmFyIHQ9bmV3IEIoZSk7aWYodC5wdXNoKEEsITApLHQuZXJyKXRocm93IHQubXNnfHxvW3QuZXJyXTtyZXR1cm4gdC5yZXN1bHR9Qi5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihBLGUpe3ZhciB0LG8scz10aGlzLnN0cm0sQj10aGlzLm9wdGlvbnMuY2h1bmtTaXplO2lmKHRoaXMuZW5kZWQpcmV0dXJuITE7bz1lPT09fn5lP2U6ITA9PT1lPzQ6MCwic3RyaW5nIj09dHlwZW9mIEE/cy5pbnB1dD1yLnN0cmluZzJidWYoQSk6IltvYmplY3QgQXJyYXlCdWZmZXJdIj09PWEuY2FsbChBKT9zLmlucHV0PW5ldyBVaW50OEFycmF5KEEpOnMuaW5wdXQ9QSxzLm5leHRfaW49MCxzLmF2YWlsX2luPXMuaW5wdXQubGVuZ3RoO2Rve2lmKDA9PT1zLmF2YWlsX291dCYmKHMub3V0cHV0PW5ldyBpLkJ1ZjgoQikscy5uZXh0X291dD0wLHMuYXZhaWxfb3V0PUIpLDEhPT0odD1uLmRlZmxhdGUocyxvKSkmJjAhPT10KXJldHVybiB0aGlzLm9uRW5kKHQpLCEodGhpcy5lbmRlZD0hMCk7MCE9PXMuYXZhaWxfb3V0JiYoMCE9PXMuYXZhaWxfaW58fDQhPT1vJiYyIT09byl8fCgic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz90aGlzLm9uRGF0YShyLmJ1ZjJiaW5zdHJpbmcoaS5zaHJpbmtCdWYocy5vdXRwdXQscy5uZXh0X291dCkpKTp0aGlzLm9uRGF0YShpLnNocmlua0J1ZihzLm91dHB1dCxzLm5leHRfb3V0KSkpfXdoaWxlKCgwPHMuYXZhaWxfaW58fDA9PT1zLmF2YWlsX291dCkmJjEhPT10KTtyZXR1cm4gND09PW8/KHQ9bi5kZWZsYXRlRW5kKHRoaXMuc3RybSksdGhpcy5vbkVuZCh0KSx0aGlzLmVuZGVkPSEwLDA9PT10KToyIT09b3x8KHRoaXMub25FbmQoMCksIShzLmF2YWlsX291dD0wKSl9LEIucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihBKXt0aGlzLmNodW5rcy5wdXNoKEEpfSxCLnByb3RvdHlwZS5vbkVuZD1mdW5jdGlvbihBKXswPT09QSYmKCJzdHJpbmciPT09dGhpcy5vcHRpb25zLnRvP3RoaXMucmVzdWx0PXRoaXMuY2h1bmtzLmpvaW4oIiIpOnRoaXMucmVzdWx0PWkuZmxhdHRlbkNodW5rcyh0aGlzLmNodW5rcykpLHRoaXMuY2h1bmtzPVtdLHRoaXMuZXJyPUEsdGhpcy5tc2c9dGhpcy5zdHJtLm1zZ30sdC5EZWZsYXRlPUIsdC5kZWZsYXRlPWMsdC5kZWZsYXRlUmF3PWZ1bmN0aW9uKEEsZSl7cmV0dXJuKGU9ZXx8e30pLnJhdz0hMCxjKEEsZSl9LHQuZ3ppcD1mdW5jdGlvbihBLGUpe3JldHVybihlPWV8fHt9KS5nemlwPSEwLGMoQSxlKX19LHsiLi91dGlscy9jb21tb24iOjQxLCIuL3V0aWxzL3N0cmluZ3MiOjQyLCIuL3psaWIvZGVmbGF0ZSI6NDYsIi4vemxpYi9tZXNzYWdlcyI6NTEsIi4vemxpYi96c3RyZWFtIjo1M31dLDQwOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4vemxpYi9pbmZsYXRlIiksaT1BKCIuL3V0aWxzL2NvbW1vbiIpLHI9QSgiLi91dGlscy9zdHJpbmdzIiksbz1BKCIuL3psaWIvY29uc3RhbnRzIikscz1BKCIuL3psaWIvbWVzc2FnZXMiKSxhPUEoIi4vemxpYi96c3RyZWFtIiksQj1BKCIuL3psaWIvZ3poZWFkZXIiKSxjPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZnVuY3Rpb24gZyhBKXtpZighKHRoaXMgaW5zdGFuY2VvZiBnKSlyZXR1cm4gbmV3IGcoQSk7dGhpcy5vcHRpb25zPWkuYXNzaWduKHtjaHVua1NpemU6MTYzODQsd2luZG93Qml0czowLHRvOiIifSxBfHx7fSk7dmFyIGU9dGhpcy5vcHRpb25zO2UucmF3JiYwPD1lLndpbmRvd0JpdHMmJmUud2luZG93Qml0czwxNiYmKGUud2luZG93Qml0cz0tZS53aW5kb3dCaXRzLDA9PT1lLndpbmRvd0JpdHMmJihlLndpbmRvd0JpdHM9LTE1KSksISgwPD1lLndpbmRvd0JpdHMmJmUud2luZG93Qml0czwxNil8fEEmJkEud2luZG93Qml0c3x8KGUud2luZG93Qml0cys9MzIpLDE1PGUud2luZG93Qml0cyYmZS53aW5kb3dCaXRzPDQ4JiYwPT0oMTUmZS53aW5kb3dCaXRzKSYmKGUud2luZG93Qml0c3w9MTUpLHRoaXMuZXJyPTAsdGhpcy5tc2c9IiIsdGhpcy5lbmRlZD0hMSx0aGlzLmNodW5rcz1bXSx0aGlzLnN0cm09bmV3IGEsdGhpcy5zdHJtLmF2YWlsX291dD0wO3ZhciB0PW4uaW5mbGF0ZUluaXQyKHRoaXMuc3RybSxlLndpbmRvd0JpdHMpO2lmKHQhPT1vLlpfT0spdGhyb3cgbmV3IEVycm9yKHNbdF0pO3RoaXMuaGVhZGVyPW5ldyBCLG4uaW5mbGF0ZUdldEhlYWRlcih0aGlzLnN0cm0sdGhpcy5oZWFkZXIpfWZ1bmN0aW9uIEUoQSxlKXt2YXIgdD1uZXcgZyhlKTtpZih0LnB1c2goQSwhMCksdC5lcnIpdGhyb3cgdC5tc2d8fHNbdC5lcnJdO3JldHVybiB0LnJlc3VsdH1nLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKEEsZSl7dmFyIHQscyxhLEIsZyxFLFE9dGhpcy5zdHJtLHU9dGhpcy5vcHRpb25zLmNodW5rU2l6ZSxsPXRoaXMub3B0aW9ucy5kaWN0aW9uYXJ5LGg9ITE7aWYodGhpcy5lbmRlZClyZXR1cm4hMTtzPWU9PT1+fmU/ZTohMD09PWU/by5aX0ZJTklTSDpvLlpfTk9fRkxVU0gsInN0cmluZyI9PXR5cGVvZiBBP1EuaW5wdXQ9ci5iaW5zdHJpbmcyYnVmKEEpOiJbb2JqZWN0IEFycmF5QnVmZmVyXSI9PT1jLmNhbGwoQSk/US5pbnB1dD1uZXcgVWludDhBcnJheShBKTpRLmlucHV0PUEsUS5uZXh0X2luPTAsUS5hdmFpbF9pbj1RLmlucHV0Lmxlbmd0aDtkb3tpZigwPT09US5hdmFpbF9vdXQmJihRLm91dHB1dD1uZXcgaS5CdWY4KHUpLFEubmV4dF9vdXQ9MCxRLmF2YWlsX291dD11KSwodD1uLmluZmxhdGUoUSxvLlpfTk9fRkxVU0gpKT09PW8uWl9ORUVEX0RJQ1QmJmwmJihFPSJzdHJpbmciPT10eXBlb2YgbD9yLnN0cmluZzJidWYobCk6IltvYmplY3QgQXJyYXlCdWZmZXJdIj09PWMuY2FsbChsKT9uZXcgVWludDhBcnJheShsKTpsLHQ9bi5pbmZsYXRlU2V0RGljdGlvbmFyeSh0aGlzLnN0cm0sRSkpLHQ9PT1vLlpfQlVGX0VSUk9SJiYhMD09PWgmJih0PW8uWl9PSyxoPSExKSx0IT09by5aX1NUUkVBTV9FTkQmJnQhPT1vLlpfT0spcmV0dXJuIHRoaXMub25FbmQodCksISh0aGlzLmVuZGVkPSEwKTtRLm5leHRfb3V0JiYoMCE9PVEuYXZhaWxfb3V0JiZ0IT09by5aX1NUUkVBTV9FTkQmJigwIT09US5hdmFpbF9pbnx8cyE9PW8uWl9GSU5JU0gmJnMhPT1vLlpfU1lOQ19GTFVTSCl8fCgic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz8oYT1yLnV0Zjhib3JkZXIoUS5vdXRwdXQsUS5uZXh0X291dCksQj1RLm5leHRfb3V0LWEsZz1yLmJ1ZjJzdHJpbmcoUS5vdXRwdXQsYSksUS5uZXh0X291dD1CLFEuYXZhaWxfb3V0PXUtQixCJiZpLmFycmF5U2V0KFEub3V0cHV0LFEub3V0cHV0LGEsQiwwKSx0aGlzLm9uRGF0YShnKSk6dGhpcy5vbkRhdGEoaS5zaHJpbmtCdWYoUS5vdXRwdXQsUS5uZXh0X291dCkpKSksMD09PVEuYXZhaWxfaW4mJjA9PT1RLmF2YWlsX291dCYmKGg9ITApfXdoaWxlKCgwPFEuYXZhaWxfaW58fDA9PT1RLmF2YWlsX291dCkmJnQhPT1vLlpfU1RSRUFNX0VORCk7cmV0dXJuIHQ9PT1vLlpfU1RSRUFNX0VORCYmKHM9by5aX0ZJTklTSCkscz09PW8uWl9GSU5JU0g/KHQ9bi5pbmZsYXRlRW5kKHRoaXMuc3RybSksdGhpcy5vbkVuZCh0KSx0aGlzLmVuZGVkPSEwLHQ9PT1vLlpfT0spOnMhPT1vLlpfU1lOQ19GTFVTSHx8KHRoaXMub25FbmQoby5aX09LKSwhKFEuYXZhaWxfb3V0PTApKX0sZy5wcm90b3R5cGUub25EYXRhPWZ1bmN0aW9uKEEpe3RoaXMuY2h1bmtzLnB1c2goQSl9LGcucHJvdG90eXBlLm9uRW5kPWZ1bmN0aW9uKEEpe0E9PT1vLlpfT0smJigic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz90aGlzLnJlc3VsdD10aGlzLmNodW5rcy5qb2luKCIiKTp0aGlzLnJlc3VsdD1pLmZsYXR0ZW5DaHVua3ModGhpcy5jaHVua3MpKSx0aGlzLmNodW5rcz1bXSx0aGlzLmVycj1BLHRoaXMubXNnPXRoaXMuc3RybS5tc2d9LHQuSW5mbGF0ZT1nLHQuaW5mbGF0ZT1FLHQuaW5mbGF0ZVJhdz1mdW5jdGlvbihBLGUpe3JldHVybihlPWV8fHt9KS5yYXc9ITAsRShBLGUpfSx0LnVuZ3ppcD1FfSx7Ii4vdXRpbHMvY29tbW9uIjo0MSwiLi91dGlscy9zdHJpbmdzIjo0MiwiLi96bGliL2NvbnN0YW50cyI6NDQsIi4vemxpYi9nemhlYWRlciI6NDcsIi4vemxpYi9pbmZsYXRlIjo0OSwiLi96bGliL21lc3NhZ2VzIjo1MSwiLi96bGliL3pzdHJlYW0iOjUzfV0sNDE6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49InVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQxNkFycmF5JiYidW5kZWZpbmVkIiE9dHlwZW9mIEludDMyQXJyYXk7dC5hc3NpZ249ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtlLmxlbmd0aDspe3ZhciB0PWUuc2hpZnQoKTtpZih0KXtpZigib2JqZWN0IiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcih0KyJtdXN0IGJlIG5vbi1vYmplY3QiKTtmb3IodmFyIG4gaW4gdCl0Lmhhc093blByb3BlcnR5KG4pJiYoQVtuXT10W25dKX19cmV0dXJuIEF9LHQuc2hyaW5rQnVmPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEubGVuZ3RoPT09ZT9BOkEuc3ViYXJyYXk/QS5zdWJhcnJheSgwLGUpOihBLmxlbmd0aD1lLEEpfTt2YXIgaT17YXJyYXlTZXQ6ZnVuY3Rpb24oQSxlLHQsbixpKXtpZihlLnN1YmFycmF5JiZBLnN1YmFycmF5KUEuc2V0KGUuc3ViYXJyYXkodCx0K24pLGkpO2Vsc2UgZm9yKHZhciByPTA7cjxuO3IrKylBW2krcl09ZVt0K3JdfSxmbGF0dGVuQ2h1bmtzOmZ1bmN0aW9uKEEpe3ZhciBlLHQsbixpLHIsbztmb3IoZT1uPTAsdD1BLmxlbmd0aDtlPHQ7ZSsrKW4rPUFbZV0ubGVuZ3RoO2ZvcihvPW5ldyBVaW50OEFycmF5KG4pLGU9aT0wLHQ9QS5sZW5ndGg7ZTx0O2UrKylyPUFbZV0sby5zZXQocixpKSxpKz1yLmxlbmd0aDtyZXR1cm4gb319LHI9e2FycmF5U2V0OmZ1bmN0aW9uKEEsZSx0LG4saSl7Zm9yKHZhciByPTA7cjxuO3IrKylBW2krcl09ZVt0K3JdfSxmbGF0dGVuQ2h1bmtzOmZ1bmN0aW9uKEEpe3JldHVybltdLmNvbmNhdC5hcHBseShbXSxBKX19O3Quc2V0VHlwZWQ9ZnVuY3Rpb24oQSl7QT8odC5CdWY4PVVpbnQ4QXJyYXksdC5CdWYxNj1VaW50MTZBcnJheSx0LkJ1ZjMyPUludDMyQXJyYXksdC5hc3NpZ24odCxpKSk6KHQuQnVmOD1BcnJheSx0LkJ1ZjE2PUFycmF5LHQuQnVmMzI9QXJyYXksdC5hc3NpZ24odCxyKSl9LHQuc2V0VHlwZWQobil9LHt9XSw0MjpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuL2NvbW1vbiIpLGk9ITAscj0hMDt0cnl7U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLFswXSl9Y2F0Y2goQSl7aT0hMX10cnl7U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLG5ldyBVaW50OEFycmF5KDEpKX1jYXRjaChBKXtyPSExfWZvcih2YXIgbz1uZXcgbi5CdWY4KDI1Nikscz0wO3M8MjU2O3MrKylvW3NdPTI1Mjw9cz82OjI0ODw9cz81OjI0MDw9cz80OjIyNDw9cz8zOjE5Mjw9cz8yOjE7ZnVuY3Rpb24gYShBLGUpe2lmKGU8NjU1MzcmJihBLnN1YmFycmF5JiZyfHwhQS5zdWJhcnJheSYmaSkpcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxuLnNocmlua0J1ZihBLGUpKTtmb3IodmFyIHQ9IiIsbz0wO288ZTtvKyspdCs9U3RyaW5nLmZyb21DaGFyQ29kZShBW29dKTtyZXR1cm4gdH1vWzI1NF09b1syNTRdPTEsdC5zdHJpbmcyYnVmPWZ1bmN0aW9uKEEpe3ZhciBlLHQsaSxyLG8scz1BLmxlbmd0aCxhPTA7Zm9yKHI9MDtyPHM7cisrKTU1Mjk2PT0oNjQ1MTImKHQ9QS5jaGFyQ29kZUF0KHIpKSkmJnIrMTxzJiY1NjMyMD09KDY0NTEyJihpPUEuY2hhckNvZGVBdChyKzEpKSkmJih0PTY1NTM2Kyh0LTU1Mjk2PDwxMCkrKGktNTYzMjApLHIrKyksYSs9dDwxMjg/MTp0PDIwNDg/Mjp0PDY1NTM2PzM6NDtmb3IoZT1uZXcgbi5CdWY4KGEpLHI9bz0wO288YTtyKyspNTUyOTY9PSg2NDUxMiYodD1BLmNoYXJDb2RlQXQocikpKSYmcisxPHMmJjU2MzIwPT0oNjQ1MTImKGk9QS5jaGFyQ29kZUF0KHIrMSkpKSYmKHQ9NjU1MzYrKHQtNTUyOTY8PDEwKSsoaS01NjMyMCkscisrKSx0PDEyOD9lW28rK109dDoodDwyMDQ4P2VbbysrXT0xOTJ8dD4+PjY6KHQ8NjU1MzY/ZVtvKytdPTIyNHx0Pj4+MTI6KGVbbysrXT0yNDB8dD4+PjE4LGVbbysrXT0xMjh8dD4+PjEyJjYzKSxlW28rK109MTI4fHQ+Pj42JjYzKSxlW28rK109MTI4fDYzJnQpO3JldHVybiBlfSx0LmJ1ZjJiaW5zdHJpbmc9ZnVuY3Rpb24oQSl7cmV0dXJuIGEoQSxBLmxlbmd0aCl9LHQuYmluc3RyaW5nMmJ1Zj1mdW5jdGlvbihBKXtmb3IodmFyIGU9bmV3IG4uQnVmOChBLmxlbmd0aCksdD0wLGk9ZS5sZW5ndGg7dDxpO3QrKyllW3RdPUEuY2hhckNvZGVBdCh0KTtyZXR1cm4gZX0sdC5idWYyc3RyaW5nPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIscz1lfHxBLmxlbmd0aCxCPW5ldyBBcnJheSgyKnMpO2Zvcih0PW49MDt0PHM7KWlmKChpPUFbdCsrXSk8MTI4KUJbbisrXT1pO2Vsc2UgaWYoNDwocj1vW2ldKSlCW24rK109NjU1MzMsdCs9ci0xO2Vsc2V7Zm9yKGkmPTI9PT1yPzMxOjM9PT1yPzE1Ojc7MTxyJiZ0PHM7KWk9aTw8Nnw2MyZBW3QrK10sci0tOzE8cj9CW24rK109NjU1MzM6aTw2NTUzNj9CW24rK109aTooaS09NjU1MzYsQltuKytdPTU1Mjk2fGk+PjEwJjEwMjMsQltuKytdPTU2MzIwfDEwMjMmaSl9cmV0dXJuIGEoQixuKX0sdC51dGY4Ym9yZGVyPWZ1bmN0aW9uKEEsZSl7dmFyIHQ7Zm9yKChlPWV8fEEubGVuZ3RoKT5BLmxlbmd0aCYmKGU9QS5sZW5ndGgpLHQ9ZS0xOzA8PXQmJjEyOD09KDE5MiZBW3RdKTspdC0tO3JldHVybiB0PDB8fDA9PT10P2U6dCtvW0FbdF1dPmU/dDplfX0seyIuL2NvbW1vbiI6NDF9XSw0MzpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQsbil7Zm9yKHZhciBpPTY1NTM1JkF8MCxyPUE+Pj4xNiY2NTUzNXwwLG89MDswIT09dDspe2Zvcih0LT1vPTJlMzx0PzJlMzp0O3I9cisoaT1pK2VbbisrXXwwKXwwLC0tbzspO2klPTY1NTIxLHIlPTY1NTIxfXJldHVybiBpfHI8PDE2fDB9fSx7fV0sNDQ6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPXtaX05PX0ZMVVNIOjAsWl9QQVJUSUFMX0ZMVVNIOjEsWl9TWU5DX0ZMVVNIOjIsWl9GVUxMX0ZMVVNIOjMsWl9GSU5JU0g6NCxaX0JMT0NLOjUsWl9UUkVFUzo2LFpfT0s6MCxaX1NUUkVBTV9FTkQ6MSxaX05FRURfRElDVDoyLFpfRVJSTk86LTEsWl9TVFJFQU1fRVJST1I6LTIsWl9EQVRBX0VSUk9SOi0zLFpfQlVGX0VSUk9SOi01LFpfTk9fQ09NUFJFU1NJT046MCxaX0JFU1RfU1BFRUQ6MSxaX0JFU1RfQ09NUFJFU1NJT046OSxaX0RFRkFVTFRfQ09NUFJFU1NJT046LTEsWl9GSUxURVJFRDoxLFpfSFVGRk1BTl9PTkxZOjIsWl9STEU6MyxaX0ZJWEVEOjQsWl9ERUZBVUxUX1NUUkFURUdZOjAsWl9CSU5BUlk6MCxaX1RFWFQ6MSxaX1VOS05PV046MixaX0RFRkxBVEVEOjh9fSx7fV0sNDU6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49ZnVuY3Rpb24oKXtmb3IodmFyIEEsZT1bXSx0PTA7dDwyNTY7dCsrKXtBPXQ7Zm9yKHZhciBuPTA7bjw4O24rKylBPTEmQT8zOTg4MjkyMzg0XkE+Pj4xOkE+Pj4xO2VbdF09QX1yZXR1cm4gZX0oKTtlLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQsaSl7dmFyIHI9bixvPWkrdDtBXj0tMTtmb3IodmFyIHM9aTtzPG87cysrKUE9QT4+PjheclsyNTUmKEFeZVtzXSldO3JldHVybi0xXkF9fSx7fV0sNDY6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG4saT1BKCIuLi91dGlscy9jb21tb24iKSxyPUEoIi4vdHJlZXMiKSxvPUEoIi4vYWRsZXIzMiIpLHM9QSgiLi9jcmMzMiIpLGE9QSgiLi9tZXNzYWdlcyIpLEI9LTIsYz0yNTgsZz0yNjIsRT0xMTM7ZnVuY3Rpb24gUShBLGUpe3JldHVybiBBLm1zZz1hW2VdLGV9ZnVuY3Rpb24gdShBKXtyZXR1cm4oQTw8MSktKDQ8QT85OjApfWZ1bmN0aW9uIGwoQSl7Zm9yKHZhciBlPUEubGVuZ3RoOzA8PS0tZTspQVtlXT0wfWZ1bmN0aW9uIGgoQSl7dmFyIGU9QS5zdGF0ZSx0PWUucGVuZGluZzt0PkEuYXZhaWxfb3V0JiYodD1BLmF2YWlsX291dCksMCE9PXQmJihpLmFycmF5U2V0KEEub3V0cHV0LGUucGVuZGluZ19idWYsZS5wZW5kaW5nX291dCx0LEEubmV4dF9vdXQpLEEubmV4dF9vdXQrPXQsZS5wZW5kaW5nX291dCs9dCxBLnRvdGFsX291dCs9dCxBLmF2YWlsX291dC09dCxlLnBlbmRpbmctPXQsMD09PWUucGVuZGluZyYmKGUucGVuZGluZ19vdXQ9MCkpfWZ1bmN0aW9uIHcoQSxlKXtyLl90cl9mbHVzaF9ibG9jayhBLDA8PUEuYmxvY2tfc3RhcnQ/QS5ibG9ja19zdGFydDotMSxBLnN0cnN0YXJ0LUEuYmxvY2tfc3RhcnQsZSksQS5ibG9ja19zdGFydD1BLnN0cnN0YXJ0LGgoQS5zdHJtKX1mdW5jdGlvbiBDKEEsZSl7QS5wZW5kaW5nX2J1ZltBLnBlbmRpbmcrK109ZX1mdW5jdGlvbiBJKEEsZSl7QS5wZW5kaW5nX2J1ZltBLnBlbmRpbmcrK109ZT4+PjgmMjU1LEEucGVuZGluZ19idWZbQS5wZW5kaW5nKytdPTI1NSZlfWZ1bmN0aW9uIE0oQSxlKXt2YXIgdCxuLGk9QS5tYXhfY2hhaW5fbGVuZ3RoLHI9QS5zdHJzdGFydCxvPUEucHJldl9sZW5ndGgscz1BLm5pY2VfbWF0Y2gsYT1BLnN0cnN0YXJ0PkEud19zaXplLWc/QS5zdHJzdGFydC0oQS53X3NpemUtZyk6MCxCPUEud2luZG93LEU9QS53X21hc2ssUT1BLnByZXYsdT1BLnN0cnN0YXJ0K2MsbD1CW3Irby0xXSxoPUJbcitvXTtBLnByZXZfbGVuZ3RoPj1BLmdvb2RfbWF0Y2gmJihpPj49Mikscz5BLmxvb2thaGVhZCYmKHM9QS5sb29rYWhlYWQpO2Rve2lmKEJbKHQ9ZSkrb109PT1oJiZCW3Qrby0xXT09PWwmJkJbdF09PT1CW3JdJiZCWysrdF09PT1CW3IrMV0pe3IrPTIsdCsrO2Rve313aGlsZShCWysrcl09PT1CWysrdF0mJkJbKytyXT09PUJbKyt0XSYmQlsrK3JdPT09QlsrK3RdJiZCWysrcl09PT1CWysrdF0mJkJbKytyXT09PUJbKyt0XSYmQlsrK3JdPT09QlsrK3RdJiZCWysrcl09PT1CWysrdF0mJkJbKytyXT09PUJbKyt0XSYmcjx1KTtpZihuPWMtKHUtcikscj11LWMsbzxuKXtpZihBLm1hdGNoX3N0YXJ0PWUsczw9KG89bikpYnJlYWs7bD1CW3Irby0xXSxoPUJbcitvXX19fXdoaWxlKChlPVFbZSZFXSk+YSYmMCE9LS1pKTtyZXR1cm4gbzw9QS5sb29rYWhlYWQ/bzpBLmxvb2thaGVhZH1mdW5jdGlvbiBkKEEpe3ZhciBlLHQsbixyLGEsQixjLEUsUSx1LGw9QS53X3NpemU7ZG97aWYocj1BLndpbmRvd19zaXplLUEubG9va2FoZWFkLUEuc3Ryc3RhcnQsQS5zdHJzdGFydD49bCsobC1nKSl7Zm9yKGkuYXJyYXlTZXQoQS53aW5kb3csQS53aW5kb3csbCxsLDApLEEubWF0Y2hfc3RhcnQtPWwsQS5zdHJzdGFydC09bCxBLmJsb2NrX3N0YXJ0LT1sLGU9dD1BLmhhc2hfc2l6ZTtuPUEuaGVhZFstLWVdLEEuaGVhZFtlXT1sPD1uP24tbDowLC0tdDspO2ZvcihlPXQ9bDtuPUEucHJldlstLWVdLEEucHJldltlXT1sPD1uP24tbDowLC0tdDspO3IrPWx9aWYoMD09PUEuc3RybS5hdmFpbF9pbilicmVhaztpZihCPUEuc3RybSxjPUEud2luZG93LEU9QS5zdHJzdGFydCtBLmxvb2thaGVhZCx1PXZvaWQgMCwoUT1yKTwodT1CLmF2YWlsX2luKSYmKHU9USksdD0wPT09dT8wOihCLmF2YWlsX2luLT11LGkuYXJyYXlTZXQoYyxCLmlucHV0LEIubmV4dF9pbix1LEUpLDE9PT1CLnN0YXRlLndyYXA/Qi5hZGxlcj1vKEIuYWRsZXIsYyx1LEUpOjI9PT1CLnN0YXRlLndyYXAmJihCLmFkbGVyPXMoQi5hZGxlcixjLHUsRSkpLEIubmV4dF9pbis9dSxCLnRvdGFsX2luKz11LHUpLEEubG9va2FoZWFkKz10LEEubG9va2FoZWFkK0EuaW5zZXJ0Pj0zKWZvcihhPUEuc3Ryc3RhcnQtQS5pbnNlcnQsQS5pbnNfaD1BLndpbmRvd1thXSxBLmluc19oPShBLmluc19oPDxBLmhhc2hfc2hpZnReQS53aW5kb3dbYSsxXSkmQS5oYXNoX21hc2s7QS5pbnNlcnQmJihBLmluc19oPShBLmluc19oPDxBLmhhc2hfc2hpZnReQS53aW5kb3dbYSszLTFdKSZBLmhhc2hfbWFzayxBLnByZXZbYSZBLndfbWFza109QS5oZWFkW0EuaW5zX2hdLEEuaGVhZFtBLmluc19oXT1hLGErKyxBLmluc2VydC0tLCEoQS5sb29rYWhlYWQrQS5pbnNlcnQ8MykpOyk7fXdoaWxlKEEubG9va2FoZWFkPGcmJjAhPT1BLnN0cm0uYXZhaWxfaW4pfWZ1bmN0aW9uIHAoQSxlKXtmb3IodmFyIHQsbjs7KXtpZihBLmxvb2thaGVhZDxnKXtpZihkKEEpLEEubG9va2FoZWFkPGcmJjA9PT1lKXJldHVybiAxO2lmKDA9PT1BLmxvb2thaGVhZClicmVha31pZih0PTAsQS5sb29rYWhlYWQ+PTMmJihBLmluc19oPShBLmluc19oPDxBLmhhc2hfc2hpZnReQS53aW5kb3dbQS5zdHJzdGFydCszLTFdKSZBLmhhc2hfbWFzayx0PUEucHJldltBLnN0cnN0YXJ0JkEud19tYXNrXT1BLmhlYWRbQS5pbnNfaF0sQS5oZWFkW0EuaW5zX2hdPUEuc3Ryc3RhcnQpLDAhPT10JiZBLnN0cnN0YXJ0LXQ8PUEud19zaXplLWcmJihBLm1hdGNoX2xlbmd0aD1NKEEsdCkpLEEubWF0Y2hfbGVuZ3RoPj0zKWlmKG49ci5fdHJfdGFsbHkoQSxBLnN0cnN0YXJ0LUEubWF0Y2hfc3RhcnQsQS5tYXRjaF9sZW5ndGgtMyksQS5sb29rYWhlYWQtPUEubWF0Y2hfbGVuZ3RoLEEubWF0Y2hfbGVuZ3RoPD1BLm1heF9sYXp5X21hdGNoJiZBLmxvb2thaGVhZD49Myl7Zm9yKEEubWF0Y2hfbGVuZ3RoLS07QS5zdHJzdGFydCsrLEEuaW5zX2g9KEEuaW5zX2g8PEEuaGFzaF9zaGlmdF5BLndpbmRvd1tBLnN0cnN0YXJ0KzMtMV0pJkEuaGFzaF9tYXNrLHQ9QS5wcmV2W0Euc3Ryc3RhcnQmQS53X21hc2tdPUEuaGVhZFtBLmluc19oXSxBLmhlYWRbQS5pbnNfaF09QS5zdHJzdGFydCwwIT0tLUEubWF0Y2hfbGVuZ3RoOyk7QS5zdHJzdGFydCsrfWVsc2UgQS5zdHJzdGFydCs9QS5tYXRjaF9sZW5ndGgsQS5tYXRjaF9sZW5ndGg9MCxBLmluc19oPUEud2luZG93W0Euc3Ryc3RhcnRdLEEuaW5zX2g9KEEuaW5zX2g8PEEuaGFzaF9zaGlmdF5BLndpbmRvd1tBLnN0cnN0YXJ0KzFdKSZBLmhhc2hfbWFzaztlbHNlIG49ci5fdHJfdGFsbHkoQSwwLEEud2luZG93W0Euc3Ryc3RhcnRdKSxBLmxvb2thaGVhZC0tLEEuc3Ryc3RhcnQrKztpZihuJiYodyhBLCExKSwwPT09QS5zdHJtLmF2YWlsX291dCkpcmV0dXJuIDF9cmV0dXJuIEEuaW5zZXJ0PUEuc3Ryc3RhcnQ8Mj9BLnN0cnN0YXJ0OjIsND09PWU/KHcoQSwhMCksMD09PUEuc3RybS5hdmFpbF9vdXQ/Mzo0KTpBLmxhc3RfbGl0JiYodyhBLCExKSwwPT09QS5zdHJtLmF2YWlsX291dCk/MToyfWZ1bmN0aW9uIG0oQSxlKXtmb3IodmFyIHQsbixpOzspe2lmKEEubG9va2FoZWFkPGcpe2lmKGQoQSksQS5sb29rYWhlYWQ8ZyYmMD09PWUpcmV0dXJuIDE7aWYoMD09PUEubG9va2FoZWFkKWJyZWFrfWlmKHQ9MCxBLmxvb2thaGVhZD49MyYmKEEuaW5zX2g9KEEuaW5zX2g8PEEuaGFzaF9zaGlmdF5BLndpbmRvd1tBLnN0cnN0YXJ0KzMtMV0pJkEuaGFzaF9tYXNrLHQ9QS5wcmV2W0Euc3Ryc3RhcnQmQS53X21hc2tdPUEuaGVhZFtBLmluc19oXSxBLmhlYWRbQS5pbnNfaF09QS5zdHJzdGFydCksQS5wcmV2X2xlbmd0aD1BLm1hdGNoX2xlbmd0aCxBLnByZXZfbWF0Y2g9QS5tYXRjaF9zdGFydCxBLm1hdGNoX2xlbmd0aD0yLDAhPT10JiZBLnByZXZfbGVuZ3RoPEEubWF4X2xhenlfbWF0Y2gmJkEuc3Ryc3RhcnQtdDw9QS53X3NpemUtZyYmKEEubWF0Y2hfbGVuZ3RoPU0oQSx0KSxBLm1hdGNoX2xlbmd0aDw9NSYmKDE9PT1BLnN0cmF0ZWd5fHwzPT09QS5tYXRjaF9sZW5ndGgmJjQwOTY8QS5zdHJzdGFydC1BLm1hdGNoX3N0YXJ0KSYmKEEubWF0Y2hfbGVuZ3RoPTIpKSxBLnByZXZfbGVuZ3RoPj0zJiZBLm1hdGNoX2xlbmd0aDw9QS5wcmV2X2xlbmd0aCl7Zm9yKGk9QS5zdHJzdGFydCtBLmxvb2thaGVhZC0zLG49ci5fdHJfdGFsbHkoQSxBLnN0cnN0YXJ0LTEtQS5wcmV2X21hdGNoLEEucHJldl9sZW5ndGgtMyksQS5sb29rYWhlYWQtPUEucHJldl9sZW5ndGgtMSxBLnByZXZfbGVuZ3RoLT0yOysrQS5zdHJzdGFydDw9aSYmKEEuaW5zX2g9KEEuaW5zX2g8PEEuaGFzaF9zaGlmdF5BLndpbmRvd1tBLnN0cnN0YXJ0KzMtMV0pJkEuaGFzaF9tYXNrLHQ9QS5wcmV2W0Euc3Ryc3RhcnQmQS53X21hc2tdPUEuaGVhZFtBLmluc19oXSxBLmhlYWRbQS5pbnNfaF09QS5zdHJzdGFydCksMCE9LS1BLnByZXZfbGVuZ3RoOyk7aWYoQS5tYXRjaF9hdmFpbGFibGU9MCxBLm1hdGNoX2xlbmd0aD0yLEEuc3Ryc3RhcnQrKyxuJiYodyhBLCExKSwwPT09QS5zdHJtLmF2YWlsX291dCkpcmV0dXJuIDF9ZWxzZSBpZihBLm1hdGNoX2F2YWlsYWJsZSl7aWYoKG49ci5fdHJfdGFsbHkoQSwwLEEud2luZG93W0Euc3Ryc3RhcnQtMV0pKSYmdyhBLCExKSxBLnN0cnN0YXJ0KyssQS5sb29rYWhlYWQtLSwwPT09QS5zdHJtLmF2YWlsX291dClyZXR1cm4gMX1lbHNlIEEubWF0Y2hfYXZhaWxhYmxlPTEsQS5zdHJzdGFydCsrLEEubG9va2FoZWFkLS19cmV0dXJuIEEubWF0Y2hfYXZhaWxhYmxlJiYobj1yLl90cl90YWxseShBLDAsQS53aW5kb3dbQS5zdHJzdGFydC0xXSksQS5tYXRjaF9hdmFpbGFibGU9MCksQS5pbnNlcnQ9QS5zdHJzdGFydDwyP0Euc3Ryc3RhcnQ6Miw0PT09ZT8odyhBLCEwKSwwPT09QS5zdHJtLmF2YWlsX291dD8zOjQpOkEubGFzdF9saXQmJih3KEEsITEpLDA9PT1BLnN0cm0uYXZhaWxfb3V0KT8xOjJ9ZnVuY3Rpb24gRihBLGUsdCxuLGkpe3RoaXMuZ29vZF9sZW5ndGg9QSx0aGlzLm1heF9sYXp5PWUsdGhpcy5uaWNlX2xlbmd0aD10LHRoaXMubWF4X2NoYWluPW4sdGhpcy5mdW5jPWl9ZnVuY3Rpb24gRCgpe3RoaXMuc3RybT1udWxsLHRoaXMuc3RhdHVzPTAsdGhpcy5wZW5kaW5nX2J1Zj1udWxsLHRoaXMucGVuZGluZ19idWZfc2l6ZT0wLHRoaXMucGVuZGluZ19vdXQ9MCx0aGlzLnBlbmRpbmc9MCx0aGlzLndyYXA9MCx0aGlzLmd6aGVhZD1udWxsLHRoaXMuZ3ppbmRleD0wLHRoaXMubWV0aG9kPTgsdGhpcy5sYXN0X2ZsdXNoPS0xLHRoaXMud19zaXplPTAsdGhpcy53X2JpdHM9MCx0aGlzLndfbWFzaz0wLHRoaXMud2luZG93PW51bGwsdGhpcy53aW5kb3dfc2l6ZT0wLHRoaXMucHJldj1udWxsLHRoaXMuaGVhZD1udWxsLHRoaXMuaW5zX2g9MCx0aGlzLmhhc2hfc2l6ZT0wLHRoaXMuaGFzaF9iaXRzPTAsdGhpcy5oYXNoX21hc2s9MCx0aGlzLmhhc2hfc2hpZnQ9MCx0aGlzLmJsb2NrX3N0YXJ0PTAsdGhpcy5tYXRjaF9sZW5ndGg9MCx0aGlzLnByZXZfbWF0Y2g9MCx0aGlzLm1hdGNoX2F2YWlsYWJsZT0wLHRoaXMuc3Ryc3RhcnQ9MCx0aGlzLm1hdGNoX3N0YXJ0PTAsdGhpcy5sb29rYWhlYWQ9MCx0aGlzLnByZXZfbGVuZ3RoPTAsdGhpcy5tYXhfY2hhaW5fbGVuZ3RoPTAsdGhpcy5tYXhfbGF6eV9tYXRjaD0wLHRoaXMubGV2ZWw9MCx0aGlzLnN0cmF0ZWd5PTAsdGhpcy5nb29kX21hdGNoPTAsdGhpcy5uaWNlX21hdGNoPTAsdGhpcy5keW5fbHRyZWU9bmV3IGkuQnVmMTYoMTE0NiksdGhpcy5keW5fZHRyZWU9bmV3IGkuQnVmMTYoMTIyKSx0aGlzLmJsX3RyZWU9bmV3IGkuQnVmMTYoNzgpLGwodGhpcy5keW5fbHRyZWUpLGwodGhpcy5keW5fZHRyZWUpLGwodGhpcy5ibF90cmVlKSx0aGlzLmxfZGVzYz1udWxsLHRoaXMuZF9kZXNjPW51bGwsdGhpcy5ibF9kZXNjPW51bGwsdGhpcy5ibF9jb3VudD1uZXcgaS5CdWYxNigxNiksdGhpcy5oZWFwPW5ldyBpLkJ1ZjE2KDU3MyksbCh0aGlzLmhlYXApLHRoaXMuaGVhcF9sZW49MCx0aGlzLmhlYXBfbWF4PTAsdGhpcy5kZXB0aD1uZXcgaS5CdWYxNig1NzMpLGwodGhpcy5kZXB0aCksdGhpcy5sX2J1Zj0wLHRoaXMubGl0X2J1ZnNpemU9MCx0aGlzLmxhc3RfbGl0PTAsdGhpcy5kX2J1Zj0wLHRoaXMub3B0X2xlbj0wLHRoaXMuc3RhdGljX2xlbj0wLHRoaXMubWF0Y2hlcz0wLHRoaXMuaW5zZXJ0PTAsdGhpcy5iaV9idWY9MCx0aGlzLmJpX3ZhbGlkPTB9ZnVuY3Rpb24gWShBKXt2YXIgZTtyZXR1cm4gQSYmQS5zdGF0ZT8oQS50b3RhbF9pbj1BLnRvdGFsX291dD0wLEEuZGF0YV90eXBlPTIsKGU9QS5zdGF0ZSkucGVuZGluZz0wLGUucGVuZGluZ19vdXQ9MCxlLndyYXA8MCYmKGUud3JhcD0tZS53cmFwKSxlLnN0YXR1cz1lLndyYXA/NDI6RSxBLmFkbGVyPTI9PT1lLndyYXA/MDoxLGUubGFzdF9mbHVzaD0wLHIuX3RyX2luaXQoZSksMCk6UShBLEIpfWZ1bmN0aW9uIGYoQSl7dmFyIGU9WShBKTtyZXR1cm4gMD09PWUmJmZ1bmN0aW9uKEEpe0Eud2luZG93X3NpemU9MipBLndfc2l6ZSxsKEEuaGVhZCksQS5tYXhfbGF6eV9tYXRjaD1uW0EubGV2ZWxdLm1heF9sYXp5LEEuZ29vZF9tYXRjaD1uW0EubGV2ZWxdLmdvb2RfbGVuZ3RoLEEubmljZV9tYXRjaD1uW0EubGV2ZWxdLm5pY2VfbGVuZ3RoLEEubWF4X2NoYWluX2xlbmd0aD1uW0EubGV2ZWxdLm1heF9jaGFpbixBLnN0cnN0YXJ0PTAsQS5ibG9ja19zdGFydD0wLEEubG9va2FoZWFkPTAsQS5pbnNlcnQ9MCxBLm1hdGNoX2xlbmd0aD1BLnByZXZfbGVuZ3RoPTIsQS5tYXRjaF9hdmFpbGFibGU9MCxBLmluc19oPTB9KEEuc3RhdGUpLGV9ZnVuY3Rpb24gTihBLGUsdCxuLHIsbyl7aWYoIUEpcmV0dXJuIEI7dmFyIHM9MTtpZigtMT09PWUmJihlPTYpLG48MD8ocz0wLG49LW4pOjE1PG4mJihzPTIsbi09MTYpLHI8MXx8OTxyfHw4IT09dHx8bjw4fHwxNTxufHxlPDB8fDk8ZXx8bzwwfHw0PG8pcmV0dXJuIFEoQSxCKTs4PT09biYmKG49OSk7dmFyIGE9bmV3IEQ7cmV0dXJuKEEuc3RhdGU9YSkuc3RybT1BLGEud3JhcD1zLGEuZ3poZWFkPW51bGwsYS53X2JpdHM9bixhLndfc2l6ZT0xPDxhLndfYml0cyxhLndfbWFzaz1hLndfc2l6ZS0xLGEuaGFzaF9iaXRzPXIrNyxhLmhhc2hfc2l6ZT0xPDxhLmhhc2hfYml0cyxhLmhhc2hfbWFzaz1hLmhhc2hfc2l6ZS0xLGEuaGFzaF9zaGlmdD1+figoYS5oYXNoX2JpdHMrMy0xKS8zKSxhLndpbmRvdz1uZXcgaS5CdWY4KDIqYS53X3NpemUpLGEuaGVhZD1uZXcgaS5CdWYxNihhLmhhc2hfc2l6ZSksYS5wcmV2PW5ldyBpLkJ1ZjE2KGEud19zaXplKSxhLmxpdF9idWZzaXplPTE8PHIrNixhLnBlbmRpbmdfYnVmX3NpemU9NCphLmxpdF9idWZzaXplLGEucGVuZGluZ19idWY9bmV3IGkuQnVmOChhLnBlbmRpbmdfYnVmX3NpemUpLGEuZF9idWY9MSphLmxpdF9idWZzaXplLGEubF9idWY9MyphLmxpdF9idWZzaXplLGEubGV2ZWw9ZSxhLnN0cmF0ZWd5PW8sYS5tZXRob2Q9dCxmKEEpfW49W25ldyBGKDAsMCwwLDAsKGZ1bmN0aW9uKEEsZSl7dmFyIHQ9NjU1MzU7Zm9yKHQ+QS5wZW5kaW5nX2J1Zl9zaXplLTUmJih0PUEucGVuZGluZ19idWZfc2l6ZS01KTs7KXtpZihBLmxvb2thaGVhZDw9MSl7aWYoZChBKSwwPT09QS5sb29rYWhlYWQmJjA9PT1lKXJldHVybiAxO2lmKDA9PT1BLmxvb2thaGVhZClicmVha31BLnN0cnN0YXJ0Kz1BLmxvb2thaGVhZCxBLmxvb2thaGVhZD0wO3ZhciBuPUEuYmxvY2tfc3RhcnQrdDtpZigoMD09PUEuc3Ryc3RhcnR8fEEuc3Ryc3RhcnQ+PW4pJiYoQS5sb29rYWhlYWQ9QS5zdHJzdGFydC1uLEEuc3Ryc3RhcnQ9bix3KEEsITEpLDA9PT1BLnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gMTtpZihBLnN0cnN0YXJ0LUEuYmxvY2tfc3RhcnQ+PUEud19zaXplLWcmJih3KEEsITEpLDA9PT1BLnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gMX1yZXR1cm4gQS5pbnNlcnQ9MCw0PT09ZT8odyhBLCEwKSwwPT09QS5zdHJtLmF2YWlsX291dD8zOjQpOihBLnN0cnN0YXJ0PkEuYmxvY2tfc3RhcnQmJih3KEEsITEpLEEuc3RybS5hdmFpbF9vdXQpLDEpfSkpLG5ldyBGKDQsNCw4LDQscCksbmV3IEYoNCw1LDE2LDgscCksbmV3IEYoNCw2LDMyLDMyLHApLG5ldyBGKDQsNCwxNiwxNixtKSxuZXcgRig4LDE2LDMyLDMyLG0pLG5ldyBGKDgsMTYsMTI4LDEyOCxtKSxuZXcgRig4LDMyLDEyOCwyNTYsbSksbmV3IEYoMzIsMTI4LDI1OCwxMDI0LG0pLG5ldyBGKDMyLDI1OCwyNTgsNDA5NixtKV0sdC5kZWZsYXRlSW5pdD1mdW5jdGlvbihBLGUpe3JldHVybiBOKEEsZSw4LDE1LDgsMCl9LHQuZGVmbGF0ZUluaXQyPU4sdC5kZWZsYXRlUmVzZXQ9Zix0LmRlZmxhdGVSZXNldEtlZXA9WSx0LmRlZmxhdGVTZXRIZWFkZXI9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQSYmQS5zdGF0ZT8yIT09QS5zdGF0ZS53cmFwP0I6KEEuc3RhdGUuZ3poZWFkPWUsMCk6Qn0sdC5kZWZsYXRlPWZ1bmN0aW9uKEEsZSl7dmFyIHQsaSxvLGE7aWYoIUF8fCFBLnN0YXRlfHw1PGV8fGU8MClyZXR1cm4gQT9RKEEsQik6QjtpZihpPUEuc3RhdGUsIUEub3V0cHV0fHwhQS5pbnB1dCYmMCE9PUEuYXZhaWxfaW58fDY2Nj09PWkuc3RhdHVzJiY0IT09ZSlyZXR1cm4gUShBLDA9PT1BLmF2YWlsX291dD8tNTpCKTtpZihpLnN0cm09QSx0PWkubGFzdF9mbHVzaCxpLmxhc3RfZmx1c2g9ZSw0Mj09PWkuc3RhdHVzKWlmKDI9PT1pLndyYXApQS5hZGxlcj0wLEMoaSwzMSksQyhpLDEzOSksQyhpLDgpLGkuZ3poZWFkPyhDKGksKGkuZ3poZWFkLnRleHQ/MTowKSsoaS5nemhlYWQuaGNyYz8yOjApKyhpLmd6aGVhZC5leHRyYT80OjApKyhpLmd6aGVhZC5uYW1lPzg6MCkrKGkuZ3poZWFkLmNvbW1lbnQ/MTY6MCkpLEMoaSwyNTUmaS5nemhlYWQudGltZSksQyhpLGkuZ3poZWFkLnRpbWU+PjgmMjU1KSxDKGksaS5nemhlYWQudGltZT4+MTYmMjU1KSxDKGksaS5nemhlYWQudGltZT4+MjQmMjU1KSxDKGksOT09PWkubGV2ZWw/MjoyPD1pLnN0cmF0ZWd5fHxpLmxldmVsPDI/NDowKSxDKGksMjU1JmkuZ3poZWFkLm9zKSxpLmd6aGVhZC5leHRyYSYmaS5nemhlYWQuZXh0cmEubGVuZ3RoJiYoQyhpLDI1NSZpLmd6aGVhZC5leHRyYS5sZW5ndGgpLEMoaSxpLmd6aGVhZC5leHRyYS5sZW5ndGg+PjgmMjU1KSksaS5nemhlYWQuaGNyYyYmKEEuYWRsZXI9cyhBLmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLDApKSxpLmd6aW5kZXg9MCxpLnN0YXR1cz02OSk6KEMoaSwwKSxDKGksMCksQyhpLDApLEMoaSwwKSxDKGksMCksQyhpLDk9PT1pLmxldmVsPzI6Mjw9aS5zdHJhdGVneXx8aS5sZXZlbDwyPzQ6MCksQyhpLDMpLGkuc3RhdHVzPUUpO2Vsc2V7dmFyIGc9OCsoaS53X2JpdHMtODw8NCk8PDg7Z3w9KDI8PWkuc3RyYXRlZ3l8fGkubGV2ZWw8Mj8wOmkubGV2ZWw8Nj8xOjY9PT1pLmxldmVsPzI6Myk8PDYsMCE9PWkuc3Ryc3RhcnQmJihnfD0zMiksZys9MzEtZyUzMSxpLnN0YXR1cz1FLEkoaSxnKSwwIT09aS5zdHJzdGFydCYmKEkoaSxBLmFkbGVyPj4+MTYpLEkoaSw2NTUzNSZBLmFkbGVyKSksQS5hZGxlcj0xfWlmKDY5PT09aS5zdGF0dXMpaWYoaS5nemhlYWQuZXh0cmEpe2ZvcihvPWkucGVuZGluZztpLmd6aW5kZXg8KDY1NTM1JmkuZ3poZWFkLmV4dHJhLmxlbmd0aCkmJihpLnBlbmRpbmchPT1pLnBlbmRpbmdfYnVmX3NpemV8fChpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+byYmKEEuYWRsZXI9cyhBLmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW8sbykpLGgoQSksbz1pLnBlbmRpbmcsaS5wZW5kaW5nIT09aS5wZW5kaW5nX2J1Zl9zaXplKSk7KUMoaSwyNTUmaS5nemhlYWQuZXh0cmFbaS5nemluZGV4XSksaS5nemluZGV4Kys7aS5nemhlYWQuaGNyYyYmaS5wZW5kaW5nPm8mJihBLmFkbGVyPXMoQS5hZGxlcixpLnBlbmRpbmdfYnVmLGkucGVuZGluZy1vLG8pKSxpLmd6aW5kZXg9PT1pLmd6aGVhZC5leHRyYS5sZW5ndGgmJihpLmd6aW5kZXg9MCxpLnN0YXR1cz03Myl9ZWxzZSBpLnN0YXR1cz03MztpZig3Mz09PWkuc3RhdHVzKWlmKGkuZ3poZWFkLm5hbWUpe289aS5wZW5kaW5nO2Rve2lmKGkucGVuZGluZz09PWkucGVuZGluZ19idWZfc2l6ZSYmKGkuZ3poZWFkLmhjcmMmJmkucGVuZGluZz5vJiYoQS5hZGxlcj1zKEEuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbyxvKSksaChBKSxvPWkucGVuZGluZyxpLnBlbmRpbmc9PT1pLnBlbmRpbmdfYnVmX3NpemUpKXthPTE7YnJlYWt9YT1pLmd6aW5kZXg8aS5nemhlYWQubmFtZS5sZW5ndGg/MjU1JmkuZ3poZWFkLm5hbWUuY2hhckNvZGVBdChpLmd6aW5kZXgrKyk6MCxDKGksYSl9d2hpbGUoMCE9PWEpO2kuZ3poZWFkLmhjcmMmJmkucGVuZGluZz5vJiYoQS5hZGxlcj1zKEEuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbyxvKSksMD09PWEmJihpLmd6aW5kZXg9MCxpLnN0YXR1cz05MSl9ZWxzZSBpLnN0YXR1cz05MTtpZig5MT09PWkuc3RhdHVzKWlmKGkuZ3poZWFkLmNvbW1lbnQpe289aS5wZW5kaW5nO2Rve2lmKGkucGVuZGluZz09PWkucGVuZGluZ19idWZfc2l6ZSYmKGkuZ3poZWFkLmhjcmMmJmkucGVuZGluZz5vJiYoQS5hZGxlcj1zKEEuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbyxvKSksaChBKSxvPWkucGVuZGluZyxpLnBlbmRpbmc9PT1pLnBlbmRpbmdfYnVmX3NpemUpKXthPTE7YnJlYWt9YT1pLmd6aW5kZXg8aS5nemhlYWQuY29tbWVudC5sZW5ndGg/MjU1JmkuZ3poZWFkLmNvbW1lbnQuY2hhckNvZGVBdChpLmd6aW5kZXgrKyk6MCxDKGksYSl9d2hpbGUoMCE9PWEpO2kuZ3poZWFkLmhjcmMmJmkucGVuZGluZz5vJiYoQS5hZGxlcj1zKEEuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbyxvKSksMD09PWEmJihpLnN0YXR1cz0xMDMpfWVsc2UgaS5zdGF0dXM9MTAzO2lmKDEwMz09PWkuc3RhdHVzJiYoaS5nemhlYWQuaGNyYz8oaS5wZW5kaW5nKzI+aS5wZW5kaW5nX2J1Zl9zaXplJiZoKEEpLGkucGVuZGluZysyPD1pLnBlbmRpbmdfYnVmX3NpemUmJihDKGksMjU1JkEuYWRsZXIpLEMoaSxBLmFkbGVyPj44JjI1NSksQS5hZGxlcj0wLGkuc3RhdHVzPUUpKTppLnN0YXR1cz1FKSwwIT09aS5wZW5kaW5nKXtpZihoKEEpLDA9PT1BLmF2YWlsX291dClyZXR1cm4gaS5sYXN0X2ZsdXNoPS0xLDB9ZWxzZSBpZigwPT09QS5hdmFpbF9pbiYmdShlKTw9dSh0KSYmNCE9PWUpcmV0dXJuIFEoQSwtNSk7aWYoNjY2PT09aS5zdGF0dXMmJjAhPT1BLmF2YWlsX2luKXJldHVybiBRKEEsLTUpO2lmKDAhPT1BLmF2YWlsX2lufHwwIT09aS5sb29rYWhlYWR8fDAhPT1lJiY2NjYhPT1pLnN0YXR1cyl7dmFyIE09Mj09PWkuc3RyYXRlZ3k/ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ7Oyl7aWYoMD09PUEubG9va2FoZWFkJiYoZChBKSwwPT09QS5sb29rYWhlYWQpKXtpZigwPT09ZSlyZXR1cm4gMTticmVha31pZihBLm1hdGNoX2xlbmd0aD0wLHQ9ci5fdHJfdGFsbHkoQSwwLEEud2luZG93W0Euc3Ryc3RhcnRdKSxBLmxvb2thaGVhZC0tLEEuc3Ryc3RhcnQrKyx0JiYodyhBLCExKSwwPT09QS5zdHJtLmF2YWlsX291dCkpcmV0dXJuIDF9cmV0dXJuIEEuaW5zZXJ0PTAsND09PWU/KHcoQSwhMCksMD09PUEuc3RybS5hdmFpbF9vdXQ/Mzo0KTpBLmxhc3RfbGl0JiYodyhBLCExKSwwPT09QS5zdHJtLmF2YWlsX291dCk/MToyfShpLGUpOjM9PT1pLnN0cmF0ZWd5P2Z1bmN0aW9uKEEsZSl7Zm9yKHZhciB0LG4saSxvLHM9QS53aW5kb3c7Oyl7aWYoQS5sb29rYWhlYWQ8PWMpe2lmKGQoQSksQS5sb29rYWhlYWQ8PWMmJjA9PT1lKXJldHVybiAxO2lmKDA9PT1BLmxvb2thaGVhZClicmVha31pZihBLm1hdGNoX2xlbmd0aD0wLEEubG9va2FoZWFkPj0zJiYwPEEuc3Ryc3RhcnQmJihuPXNbaT1BLnN0cnN0YXJ0LTFdKT09PXNbKytpXSYmbj09PXNbKytpXSYmbj09PXNbKytpXSl7bz1BLnN0cnN0YXJ0K2M7ZG97fXdoaWxlKG49PT1zWysraV0mJm49PT1zWysraV0mJm49PT1zWysraV0mJm49PT1zWysraV0mJm49PT1zWysraV0mJm49PT1zWysraV0mJm49PT1zWysraV0mJm49PT1zWysraV0mJmk8byk7QS5tYXRjaF9sZW5ndGg9Yy0oby1pKSxBLm1hdGNoX2xlbmd0aD5BLmxvb2thaGVhZCYmKEEubWF0Y2hfbGVuZ3RoPUEubG9va2FoZWFkKX1pZihBLm1hdGNoX2xlbmd0aD49Mz8odD1yLl90cl90YWxseShBLDEsQS5tYXRjaF9sZW5ndGgtMyksQS5sb29rYWhlYWQtPUEubWF0Y2hfbGVuZ3RoLEEuc3Ryc3RhcnQrPUEubWF0Y2hfbGVuZ3RoLEEubWF0Y2hfbGVuZ3RoPTApOih0PXIuX3RyX3RhbGx5KEEsMCxBLndpbmRvd1tBLnN0cnN0YXJ0XSksQS5sb29rYWhlYWQtLSxBLnN0cnN0YXJ0KyspLHQmJih3KEEsITEpLDA9PT1BLnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gMX1yZXR1cm4gQS5pbnNlcnQ9MCw0PT09ZT8odyhBLCEwKSwwPT09QS5zdHJtLmF2YWlsX291dD8zOjQpOkEubGFzdF9saXQmJih3KEEsITEpLDA9PT1BLnN0cm0uYXZhaWxfb3V0KT8xOjJ9KGksZSk6bltpLmxldmVsXS5mdW5jKGksZSk7aWYoMyE9PU0mJjQhPT1NfHwoaS5zdGF0dXM9NjY2KSwxPT09TXx8Mz09PU0pcmV0dXJuIDA9PT1BLmF2YWlsX291dCYmKGkubGFzdF9mbHVzaD0tMSksMDtpZigyPT09TSYmKDE9PT1lP3IuX3RyX2FsaWduKGkpOjUhPT1lJiYoci5fdHJfc3RvcmVkX2Jsb2NrKGksMCwwLCExKSwzPT09ZSYmKGwoaS5oZWFkKSwwPT09aS5sb29rYWhlYWQmJihpLnN0cnN0YXJ0PTAsaS5ibG9ja19zdGFydD0wLGkuaW5zZXJ0PTApKSksaChBKSwwPT09QS5hdmFpbF9vdXQpKXJldHVybiBpLmxhc3RfZmx1c2g9LTEsMH1yZXR1cm4gNCE9PWU/MDppLndyYXA8PTA/MTooMj09PWkud3JhcD8oQyhpLDI1NSZBLmFkbGVyKSxDKGksQS5hZGxlcj4+OCYyNTUpLEMoaSxBLmFkbGVyPj4xNiYyNTUpLEMoaSxBLmFkbGVyPj4yNCYyNTUpLEMoaSwyNTUmQS50b3RhbF9pbiksQyhpLEEudG90YWxfaW4+PjgmMjU1KSxDKGksQS50b3RhbF9pbj4+MTYmMjU1KSxDKGksQS50b3RhbF9pbj4+MjQmMjU1KSk6KEkoaSxBLmFkbGVyPj4+MTYpLEkoaSw2NTUzNSZBLmFkbGVyKSksaChBKSwwPGkud3JhcCYmKGkud3JhcD0taS53cmFwKSwwIT09aS5wZW5kaW5nPzA6MSl9LHQuZGVmbGF0ZUVuZD1mdW5jdGlvbihBKXt2YXIgZTtyZXR1cm4gQSYmQS5zdGF0ZT80MiE9PShlPUEuc3RhdGUuc3RhdHVzKSYmNjkhPT1lJiY3MyE9PWUmJjkxIT09ZSYmMTAzIT09ZSYmZSE9PUUmJjY2NiE9PWU/UShBLEIpOihBLnN0YXRlPW51bGwsZT09PUU/UShBLC0zKTowKTpCfSx0LmRlZmxhdGVTZXREaWN0aW9uYXJ5PWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixyLHMsYSxjLGcsRSxRPWUubGVuZ3RoO2lmKCFBfHwhQS5zdGF0ZSlyZXR1cm4gQjtpZigyPT09KHM9KHQ9QS5zdGF0ZSkud3JhcCl8fDE9PT1zJiY0MiE9PXQuc3RhdHVzfHx0Lmxvb2thaGVhZClyZXR1cm4gQjtmb3IoMT09PXMmJihBLmFkbGVyPW8oQS5hZGxlcixlLFEsMCkpLHQud3JhcD0wLFE+PXQud19zaXplJiYoMD09PXMmJihsKHQuaGVhZCksdC5zdHJzdGFydD0wLHQuYmxvY2tfc3RhcnQ9MCx0Lmluc2VydD0wKSxFPW5ldyBpLkJ1ZjgodC53X3NpemUpLGkuYXJyYXlTZXQoRSxlLFEtdC53X3NpemUsdC53X3NpemUsMCksZT1FLFE9dC53X3NpemUpLGE9QS5hdmFpbF9pbixjPUEubmV4dF9pbixnPUEuaW5wdXQsQS5hdmFpbF9pbj1RLEEubmV4dF9pbj0wLEEuaW5wdXQ9ZSxkKHQpO3QubG9va2FoZWFkPj0zOyl7Zm9yKG49dC5zdHJzdGFydCxyPXQubG9va2FoZWFkLTI7dC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZG93W24rMy0xXSkmdC5oYXNoX21hc2ssdC5wcmV2W24mdC53X21hc2tdPXQuaGVhZFt0Lmluc19oXSx0LmhlYWRbdC5pbnNfaF09bixuKyssLS1yOyk7dC5zdHJzdGFydD1uLHQubG9va2FoZWFkPTIsZCh0KX1yZXR1cm4gdC5zdHJzdGFydCs9dC5sb29rYWhlYWQsdC5ibG9ja19zdGFydD10LnN0cnN0YXJ0LHQuaW5zZXJ0PXQubG9va2FoZWFkLHQubG9va2FoZWFkPTAsdC5tYXRjaF9sZW5ndGg9dC5wcmV2X2xlbmd0aD0yLHQubWF0Y2hfYXZhaWxhYmxlPTAsQS5uZXh0X2luPWMsQS5pbnB1dD1nLEEuYXZhaWxfaW49YSx0LndyYXA9cywwfSx0LmRlZmxhdGVJbmZvPSJwYWtvIGRlZmxhdGUgKGZyb20gTm9kZWNhIHByb2plY3QpIn0seyIuLi91dGlscy9jb21tb24iOjQxLCIuL2FkbGVyMzIiOjQzLCIuL2NyYzMyIjo0NSwiLi9tZXNzYWdlcyI6NTEsIi4vdHJlZXMiOjUyfV0sNDc6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7dGhpcy50ZXh0PTAsdGhpcy50aW1lPTAsdGhpcy54ZmxhZ3M9MCx0aGlzLm9zPTAsdGhpcy5leHRyYT1udWxsLHRoaXMuZXh0cmFfbGVuPTAsdGhpcy5uYW1lPSIiLHRoaXMuY29tbWVudD0iIix0aGlzLmhjcmM9MCx0aGlzLmRvbmU9ITF9fSx7fV0sNDg6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIsbyxzLGEsQixjLGcsRSxRLHUsbCxoLHcsQyxJLE0sZCxwLG0sRixELFk7dD1BLnN0YXRlLG49QS5uZXh0X2luLEQ9QS5pbnB1dCxpPW4rKEEuYXZhaWxfaW4tNSkscj1BLm5leHRfb3V0LFk9QS5vdXRwdXQsbz1yLShlLUEuYXZhaWxfb3V0KSxzPXIrKEEuYXZhaWxfb3V0LTI1NyksYT10LmRtYXgsQj10LndzaXplLGM9dC53aGF2ZSxnPXQud25leHQsRT10LndpbmRvdyxRPXQuaG9sZCx1PXQuYml0cyxsPXQubGVuY29kZSxoPXQuZGlzdGNvZGUsdz0oMTw8dC5sZW5iaXRzKS0xLEM9KDE8PHQuZGlzdGJpdHMpLTE7QTpkb3t1PDE1JiYoUSs9RFtuKytdPDx1LHUrPTgsUSs9RFtuKytdPDx1LHUrPTgpLEk9bFtRJnddO2U6Zm9yKDs7KXtpZihRPj4+PU09ST4+PjI0LHUtPU0sMD09KE09ST4+PjE2JjI1NSkpWVtyKytdPTY1NTM1Jkk7ZWxzZXtpZighKDE2Jk0pKXtpZigwPT0oNjQmTSkpe0k9bFsoNjU1MzUmSSkrKFEmKDE8PE0pLTEpXTtjb250aW51ZSBlfWlmKDMyJk0pe3QubW9kZT0xMjticmVhayBBfUEubXNnPSJpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUiLHQubW9kZT0zMDticmVhayBBfWQ9NjU1MzUmSSwoTSY9MTUpJiYodTxNJiYoUSs9RFtuKytdPDx1LHUrPTgpLGQrPVEmKDE8PE0pLTEsUT4+Pj1NLHUtPU0pLHU8MTUmJihRKz1EW24rK108PHUsdSs9OCxRKz1EW24rK108PHUsdSs9OCksST1oW1EmQ107dDpmb3IoOzspe2lmKFE+Pj49TT1JPj4+MjQsdS09TSwhKDE2JihNPUk+Pj4xNiYyNTUpKSl7aWYoMD09KDY0Jk0pKXtJPWhbKDY1NTM1JkkpKyhRJigxPDxNKS0xKV07Y29udGludWUgdH1BLm1zZz0iaW52YWxpZCBkaXN0YW5jZSBjb2RlIix0Lm1vZGU9MzA7YnJlYWsgQX1pZihwPTY1NTM1JkksdTwoTSY9MTUpJiYoUSs9RFtuKytdPDx1LCh1Kz04KTxNJiYoUSs9RFtuKytdPDx1LHUrPTgpKSxhPChwKz1RJigxPDxNKS0xKSl7QS5tc2c9ImludmFsaWQgZGlzdGFuY2UgdG9vIGZhciBiYWNrIix0Lm1vZGU9MzA7YnJlYWsgQX1pZihRPj4+PU0sdS09TSwoTT1yLW8pPHApe2lmKGM8KE09cC1NKSYmdC5zYW5lKXtBLm1zZz0iaW52YWxpZCBkaXN0YW5jZSB0b28gZmFyIGJhY2siLHQubW9kZT0zMDticmVhayBBfWlmKEY9RSwobT0wKT09PWcpe2lmKG0rPUItTSxNPGQpe2ZvcihkLT1NO1lbcisrXT1FW20rK10sLS1NOyk7bT1yLXAsRj1ZfX1lbHNlIGlmKGc8TSl7aWYobSs9QitnLU0sKE0tPWcpPGQpe2ZvcihkLT1NO1lbcisrXT1FW20rK10sLS1NOyk7aWYobT0wLGc8ZCl7Zm9yKGQtPU09ZztZW3IrK109RVttKytdLC0tTTspO209ci1wLEY9WX19fWVsc2UgaWYobSs9Zy1NLE08ZCl7Zm9yKGQtPU07WVtyKytdPUVbbSsrXSwtLU07KTttPXItcCxGPVl9Zm9yKDsyPGQ7KVlbcisrXT1GW20rK10sWVtyKytdPUZbbSsrXSxZW3IrK109RlttKytdLGQtPTM7ZCYmKFlbcisrXT1GW20rK10sMTxkJiYoWVtyKytdPUZbbSsrXSkpfWVsc2V7Zm9yKG09ci1wO1lbcisrXT1ZW20rK10sWVtyKytdPVlbbSsrXSxZW3IrK109WVttKytdLDI8KGQtPTMpOyk7ZCYmKFlbcisrXT1ZW20rK10sMTxkJiYoWVtyKytdPVlbbSsrXSkpfWJyZWFrfX1icmVha319d2hpbGUobjxpJiZyPHMpO24tPWQ9dT4+MyxRJj0oMTw8KHUtPWQ8PDMpKS0xLEEubmV4dF9pbj1uLEEubmV4dF9vdXQ9cixBLmF2YWlsX2luPW48aT9pLW4rNTo1LShuLWkpLEEuYXZhaWxfb3V0PXI8cz9zLXIrMjU3OjI1Ny0oci1zKSx0LmhvbGQ9USx0LmJpdHM9dX19LHt9XSw0OTpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1BKCIuLi91dGlscy9jb21tb24iKSxpPUEoIi4vYWRsZXIzMiIpLHI9QSgiLi9jcmMzMiIpLG89QSgiLi9pbmZmYXN0Iikscz1BKCIuL2luZnRyZWVzIiksYT0tMjtmdW5jdGlvbiBCKEEpe3JldHVybihBPj4+MjQmMjU1KSsoQT4+PjgmNjUyODApKygoNjUyODAmQSk8PDgpKygoMjU1JkEpPDwyNCl9ZnVuY3Rpb24gYygpe3RoaXMubW9kZT0wLHRoaXMubGFzdD0hMSx0aGlzLndyYXA9MCx0aGlzLmhhdmVkaWN0PSExLHRoaXMuZmxhZ3M9MCx0aGlzLmRtYXg9MCx0aGlzLmNoZWNrPTAsdGhpcy50b3RhbD0wLHRoaXMuaGVhZD1udWxsLHRoaXMud2JpdHM9MCx0aGlzLndzaXplPTAsdGhpcy53aGF2ZT0wLHRoaXMud25leHQ9MCx0aGlzLndpbmRvdz1udWxsLHRoaXMuaG9sZD0wLHRoaXMuYml0cz0wLHRoaXMubGVuZ3RoPTAsdGhpcy5vZmZzZXQ9MCx0aGlzLmV4dHJhPTAsdGhpcy5sZW5jb2RlPW51bGwsdGhpcy5kaXN0Y29kZT1udWxsLHRoaXMubGVuYml0cz0wLHRoaXMuZGlzdGJpdHM9MCx0aGlzLm5jb2RlPTAsdGhpcy5ubGVuPTAsdGhpcy5uZGlzdD0wLHRoaXMuaGF2ZT0wLHRoaXMubmV4dD1udWxsLHRoaXMubGVucz1uZXcgbi5CdWYxNigzMjApLHRoaXMud29yaz1uZXcgbi5CdWYxNigyODgpLHRoaXMubGVuZHluPW51bGwsdGhpcy5kaXN0ZHluPW51bGwsdGhpcy5zYW5lPTAsdGhpcy5iYWNrPTAsdGhpcy53YXM9MH1mdW5jdGlvbiBnKEEpe3ZhciBlO3JldHVybiBBJiZBLnN0YXRlPyhlPUEuc3RhdGUsQS50b3RhbF9pbj1BLnRvdGFsX291dD1lLnRvdGFsPTAsQS5tc2c9IiIsZS53cmFwJiYoQS5hZGxlcj0xJmUud3JhcCksZS5tb2RlPTEsZS5sYXN0PTAsZS5oYXZlZGljdD0wLGUuZG1heD0zMjc2OCxlLmhlYWQ9bnVsbCxlLmhvbGQ9MCxlLmJpdHM9MCxlLmxlbmNvZGU9ZS5sZW5keW49bmV3IG4uQnVmMzIoODUyKSxlLmRpc3Rjb2RlPWUuZGlzdGR5bj1uZXcgbi5CdWYzMig1OTIpLGUuc2FuZT0xLGUuYmFjaz0tMSwwKTphfWZ1bmN0aW9uIEUoQSl7dmFyIGU7cmV0dXJuIEEmJkEuc3RhdGU/KChlPUEuc3RhdGUpLndzaXplPTAsZS53aGF2ZT0wLGUud25leHQ9MCxnKEEpKTphfWZ1bmN0aW9uIFEoQSxlKXt2YXIgdCxuO3JldHVybiBBJiZBLnN0YXRlPyhuPUEuc3RhdGUsZTwwPyh0PTAsZT0tZSk6KHQ9MSsoZT4+NCksZTw0OCYmKGUmPTE1KSksZSYmKGU8OHx8MTU8ZSk/YToobnVsbCE9PW4ud2luZG93JiZuLndiaXRzIT09ZSYmKG4ud2luZG93PW51bGwpLG4ud3JhcD10LG4ud2JpdHM9ZSxFKEEpKSk6YX1mdW5jdGlvbiB1KEEsZSl7dmFyIHQsbjtyZXR1cm4gQT8obj1uZXcgYywoQS5zdGF0ZT1uKS53aW5kb3c9bnVsbCwwIT09KHQ9UShBLGUpKSYmKEEuc3RhdGU9bnVsbCksdCk6YX12YXIgbCxoLHc9ITA7ZnVuY3Rpb24gQyhBKXtpZih3KXt2YXIgZTtmb3IobD1uZXcgbi5CdWYzMig1MTIpLGg9bmV3IG4uQnVmMzIoMzIpLGU9MDtlPDE0NDspQS5sZW5zW2UrK109ODtmb3IoO2U8MjU2OylBLmxlbnNbZSsrXT05O2Zvcig7ZTwyODA7KUEubGVuc1tlKytdPTc7Zm9yKDtlPDI4ODspQS5sZW5zW2UrK109ODtmb3IocygxLEEubGVucywwLDI4OCxsLDAsQS53b3JrLHtiaXRzOjl9KSxlPTA7ZTwzMjspQS5sZW5zW2UrK109NTtzKDIsQS5sZW5zLDAsMzIsaCwwLEEud29yayx7Yml0czo1fSksdz0hMX1BLmxlbmNvZGU9bCxBLmxlbmJpdHM9OSxBLmRpc3Rjb2RlPWgsQS5kaXN0Yml0cz01fWZ1bmN0aW9uIEkoQSxlLHQsaSl7dmFyIHIsbz1BLnN0YXRlO3JldHVybiBudWxsPT09by53aW5kb3cmJihvLndzaXplPTE8PG8ud2JpdHMsby53bmV4dD0wLG8ud2hhdmU9MCxvLndpbmRvdz1uZXcgbi5CdWY4KG8ud3NpemUpKSxpPj1vLndzaXplPyhuLmFycmF5U2V0KG8ud2luZG93LGUsdC1vLndzaXplLG8ud3NpemUsMCksby53bmV4dD0wLG8ud2hhdmU9by53c2l6ZSk6KGk8KHI9by53c2l6ZS1vLnduZXh0KSYmKHI9aSksbi5hcnJheVNldChvLndpbmRvdyxlLHQtaSxyLG8ud25leHQpLChpLT1yKT8obi5hcnJheVNldChvLndpbmRvdyxlLHQtaSxpLDApLG8ud25leHQ9aSxvLndoYXZlPW8ud3NpemUpOihvLnduZXh0Kz1yLG8ud25leHQ9PT1vLndzaXplJiYoby53bmV4dD0wKSxvLndoYXZlPG8ud3NpemUmJihvLndoYXZlKz1yKSkpLDB9dC5pbmZsYXRlUmVzZXQ9RSx0LmluZmxhdGVSZXNldDI9USx0LmluZmxhdGVSZXNldEtlZXA9Zyx0LmluZmxhdGVJbml0PWZ1bmN0aW9uKEEpe3JldHVybiB1KEEsMTUpfSx0LmluZmxhdGVJbml0Mj11LHQuaW5mbGF0ZT1mdW5jdGlvbihBLGUpe3ZhciB0LGMsZyxFLFEsdSxsLGgsdyxNLGQscCxtLEYsRCxZLGYsTixVLHksVCx4LFIsRyxTPTAsYj1uZXcgbi5CdWY4KDQpLEg9WzE2LDE3LDE4LDAsOCw3LDksNiwxMCw1LDExLDQsMTIsMywxMywyLDE0LDEsMTVdO2lmKCFBfHwhQS5zdGF0ZXx8IUEub3V0cHV0fHwhQS5pbnB1dCYmMCE9PUEuYXZhaWxfaW4pcmV0dXJuIGE7MTI9PT0odD1BLnN0YXRlKS5tb2RlJiYodC5tb2RlPTEzKSxRPUEubmV4dF9vdXQsZz1BLm91dHB1dCxsPUEuYXZhaWxfb3V0LEU9QS5uZXh0X2luLGM9QS5pbnB1dCx1PUEuYXZhaWxfaW4saD10LmhvbGQsdz10LmJpdHMsTT11LGQ9bCx4PTA7QTpmb3IoOzspc3dpdGNoKHQubW9kZSl7Y2FzZSAxOmlmKDA9PT10LndyYXApe3QubW9kZT0xMzticmVha31mb3IoO3c8MTY7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH1pZigyJnQud3JhcCYmMzU2MTU9PT1oKXtiW3QuY2hlY2s9MF09MjU1JmgsYlsxXT1oPj4+OCYyNTUsdC5jaGVjaz1yKHQuY2hlY2ssYiwyLDApLHc9aD0wLHQubW9kZT0yO2JyZWFrfWlmKHQuZmxhZ3M9MCx0LmhlYWQmJih0LmhlYWQuZG9uZT0hMSksISgxJnQud3JhcCl8fCgoKDI1NSZoKTw8OCkrKGg+PjgpKSUzMSl7QS5tc2c9ImluY29ycmVjdCBoZWFkZXIgY2hlY2siLHQubW9kZT0zMDticmVha31pZig4IT0oMTUmaCkpe0EubXNnPSJ1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZCIsdC5tb2RlPTMwO2JyZWFrfWlmKHctPTQsVD04KygxNSYoaD4+Pj00KSksMD09PXQud2JpdHMpdC53Yml0cz1UO2Vsc2UgaWYoVD50LndiaXRzKXtBLm1zZz0iaW52YWxpZCB3aW5kb3cgc2l6ZSIsdC5tb2RlPTMwO2JyZWFrfXQuZG1heD0xPDxULEEuYWRsZXI9dC5jaGVjaz0xLHQubW9kZT01MTImaD8xMDoxMix3PWg9MDticmVhaztjYXNlIDI6Zm9yKDt3PDE2Oyl7aWYoMD09PXUpYnJlYWsgQTt1LS0saCs9Y1tFKytdPDx3LHcrPTh9aWYodC5mbGFncz1oLDghPSgyNTUmdC5mbGFncykpe0EubXNnPSJ1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZCIsdC5tb2RlPTMwO2JyZWFrfWlmKDU3MzQ0JnQuZmxhZ3Mpe0EubXNnPSJ1bmtub3duIGhlYWRlciBmbGFncyBzZXQiLHQubW9kZT0zMDticmVha310LmhlYWQmJih0LmhlYWQudGV4dD1oPj44JjEpLDUxMiZ0LmZsYWdzJiYoYlswXT0yNTUmaCxiWzFdPWg+Pj44JjI1NSx0LmNoZWNrPXIodC5jaGVjayxiLDIsMCkpLHc9aD0wLHQubW9kZT0zO2Nhc2UgMzpmb3IoO3c8MzI7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH10LmhlYWQmJih0LmhlYWQudGltZT1oKSw1MTImdC5mbGFncyYmKGJbMF09MjU1JmgsYlsxXT1oPj4+OCYyNTUsYlsyXT1oPj4+MTYmMjU1LGJbM109aD4+PjI0JjI1NSx0LmNoZWNrPXIodC5jaGVjayxiLDQsMCkpLHc9aD0wLHQubW9kZT00O2Nhc2UgNDpmb3IoO3c8MTY7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH10LmhlYWQmJih0LmhlYWQueGZsYWdzPTI1NSZoLHQuaGVhZC5vcz1oPj44KSw1MTImdC5mbGFncyYmKGJbMF09MjU1JmgsYlsxXT1oPj4+OCYyNTUsdC5jaGVjaz1yKHQuY2hlY2ssYiwyLDApKSx3PWg9MCx0Lm1vZGU9NTtjYXNlIDU6aWYoMTAyNCZ0LmZsYWdzKXtmb3IoO3c8MTY7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH10Lmxlbmd0aD1oLHQuaGVhZCYmKHQuaGVhZC5leHRyYV9sZW49aCksNTEyJnQuZmxhZ3MmJihiWzBdPTI1NSZoLGJbMV09aD4+PjgmMjU1LHQuY2hlY2s9cih0LmNoZWNrLGIsMiwwKSksdz1oPTB9ZWxzZSB0LmhlYWQmJih0LmhlYWQuZXh0cmE9bnVsbCk7dC5tb2RlPTY7Y2FzZSA2OmlmKDEwMjQmdC5mbGFncyYmKHU8KHA9dC5sZW5ndGgpJiYocD11KSxwJiYodC5oZWFkJiYoVD10LmhlYWQuZXh0cmFfbGVuLXQubGVuZ3RoLHQuaGVhZC5leHRyYXx8KHQuaGVhZC5leHRyYT1uZXcgQXJyYXkodC5oZWFkLmV4dHJhX2xlbikpLG4uYXJyYXlTZXQodC5oZWFkLmV4dHJhLGMsRSxwLFQpKSw1MTImdC5mbGFncyYmKHQuY2hlY2s9cih0LmNoZWNrLGMscCxFKSksdS09cCxFKz1wLHQubGVuZ3RoLT1wKSx0Lmxlbmd0aCkpYnJlYWsgQTt0Lmxlbmd0aD0wLHQubW9kZT03O2Nhc2UgNzppZigyMDQ4JnQuZmxhZ3Mpe2lmKDA9PT11KWJyZWFrIEE7Zm9yKHA9MDtUPWNbRStwKytdLHQuaGVhZCYmVCYmdC5sZW5ndGg8NjU1MzYmJih0LmhlYWQubmFtZSs9U3RyaW5nLmZyb21DaGFyQ29kZShUKSksVCYmcDx1Oyk7aWYoNTEyJnQuZmxhZ3MmJih0LmNoZWNrPXIodC5jaGVjayxjLHAsRSkpLHUtPXAsRSs9cCxUKWJyZWFrIEF9ZWxzZSB0LmhlYWQmJih0LmhlYWQubmFtZT1udWxsKTt0Lmxlbmd0aD0wLHQubW9kZT04O2Nhc2UgODppZig0MDk2JnQuZmxhZ3Mpe2lmKDA9PT11KWJyZWFrIEE7Zm9yKHA9MDtUPWNbRStwKytdLHQuaGVhZCYmVCYmdC5sZW5ndGg8NjU1MzYmJih0LmhlYWQuY29tbWVudCs9U3RyaW5nLmZyb21DaGFyQ29kZShUKSksVCYmcDx1Oyk7aWYoNTEyJnQuZmxhZ3MmJih0LmNoZWNrPXIodC5jaGVjayxjLHAsRSkpLHUtPXAsRSs9cCxUKWJyZWFrIEF9ZWxzZSB0LmhlYWQmJih0LmhlYWQuY29tbWVudD1udWxsKTt0Lm1vZGU9OTtjYXNlIDk6aWYoNTEyJnQuZmxhZ3Mpe2Zvcig7dzwxNjspe2lmKDA9PT11KWJyZWFrIEE7dS0tLGgrPWNbRSsrXTw8dyx3Kz04fWlmKGghPT0oNjU1MzUmdC5jaGVjaykpe0EubXNnPSJoZWFkZXIgY3JjIG1pc21hdGNoIix0Lm1vZGU9MzA7YnJlYWt9dz1oPTB9dC5oZWFkJiYodC5oZWFkLmhjcmM9dC5mbGFncz4+OSYxLHQuaGVhZC5kb25lPSEwKSxBLmFkbGVyPXQuY2hlY2s9MCx0Lm1vZGU9MTI7YnJlYWs7Y2FzZSAxMDpmb3IoO3c8MzI7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH1BLmFkbGVyPXQuY2hlY2s9QihoKSx3PWg9MCx0Lm1vZGU9MTE7Y2FzZSAxMTppZigwPT09dC5oYXZlZGljdClyZXR1cm4gQS5uZXh0X291dD1RLEEuYXZhaWxfb3V0PWwsQS5uZXh0X2luPUUsQS5hdmFpbF9pbj11LHQuaG9sZD1oLHQuYml0cz13LDI7QS5hZGxlcj10LmNoZWNrPTEsdC5tb2RlPTEyO2Nhc2UgMTI6aWYoNT09PWV8fDY9PT1lKWJyZWFrIEE7Y2FzZSAxMzppZih0Lmxhc3Qpe2g+Pj49NyZ3LHctPTcmdyx0Lm1vZGU9Mjc7YnJlYWt9Zm9yKDt3PDM7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH1zd2l0Y2godC5sYXN0PTEmaCx3LT0xLDMmKGg+Pj49MSkpe2Nhc2UgMDp0Lm1vZGU9MTQ7YnJlYWs7Y2FzZSAxOmlmKEModCksdC5tb2RlPTIwLDYhPT1lKWJyZWFrO2g+Pj49Mix3LT0yO2JyZWFrIEE7Y2FzZSAyOnQubW9kZT0xNzticmVhaztjYXNlIDM6QS5tc2c9ImludmFsaWQgYmxvY2sgdHlwZSIsdC5tb2RlPTMwfWg+Pj49Mix3LT0yO2JyZWFrO2Nhc2UgMTQ6Zm9yKGg+Pj49NyZ3LHctPTcmdzt3PDMyOyl7aWYoMD09PXUpYnJlYWsgQTt1LS0saCs9Y1tFKytdPDx3LHcrPTh9aWYoKDY1NTM1JmgpIT0oaD4+PjE2XjY1NTM1KSl7QS5tc2c9ImludmFsaWQgc3RvcmVkIGJsb2NrIGxlbmd0aHMiLHQubW9kZT0zMDticmVha31pZih0Lmxlbmd0aD02NTUzNSZoLHc9aD0wLHQubW9kZT0xNSw2PT09ZSlicmVhayBBO2Nhc2UgMTU6dC5tb2RlPTE2O2Nhc2UgMTY6aWYocD10Lmxlbmd0aCl7aWYodTxwJiYocD11KSxsPHAmJihwPWwpLDA9PT1wKWJyZWFrIEE7bi5hcnJheVNldChnLGMsRSxwLFEpLHUtPXAsRSs9cCxsLT1wLFErPXAsdC5sZW5ndGgtPXA7YnJlYWt9dC5tb2RlPTEyO2JyZWFrO2Nhc2UgMTc6Zm9yKDt3PDE0Oyl7aWYoMD09PXUpYnJlYWsgQTt1LS0saCs9Y1tFKytdPDx3LHcrPTh9aWYodC5ubGVuPTI1NysoMzEmaCksaD4+Pj01LHctPTUsdC5uZGlzdD0xKygzMSZoKSxoPj4+PTUsdy09NSx0Lm5jb2RlPTQrKDE1JmgpLGg+Pj49NCx3LT00LDI4Njx0Lm5sZW58fDMwPHQubmRpc3Qpe0EubXNnPSJ0b28gbWFueSBsZW5ndGggb3IgZGlzdGFuY2Ugc3ltYm9scyIsdC5tb2RlPTMwO2JyZWFrfXQuaGF2ZT0wLHQubW9kZT0xODtjYXNlIDE4OmZvcig7dC5oYXZlPHQubmNvZGU7KXtmb3IoO3c8Mzspe2lmKDA9PT11KWJyZWFrIEE7dS0tLGgrPWNbRSsrXTw8dyx3Kz04fXQubGVuc1tIW3QuaGF2ZSsrXV09NyZoLGg+Pj49Myx3LT0zfWZvcig7dC5oYXZlPDE5Oyl0LmxlbnNbSFt0LmhhdmUrK11dPTA7aWYodC5sZW5jb2RlPXQubGVuZHluLHQubGVuYml0cz03LFI9e2JpdHM6dC5sZW5iaXRzfSx4PXMoMCx0LmxlbnMsMCwxOSx0LmxlbmNvZGUsMCx0LndvcmssUiksdC5sZW5iaXRzPVIuYml0cyx4KXtBLm1zZz0iaW52YWxpZCBjb2RlIGxlbmd0aHMgc2V0Iix0Lm1vZGU9MzA7YnJlYWt9dC5oYXZlPTAsdC5tb2RlPTE5O2Nhc2UgMTk6Zm9yKDt0LmhhdmU8dC5ubGVuK3QubmRpc3Q7KXtmb3IoO1k9KFM9dC5sZW5jb2RlW2gmKDE8PHQubGVuYml0cyktMV0pPj4+MTYmMjU1LGY9NjU1MzUmUywhKChEPVM+Pj4yNCk8PXcpOyl7aWYoMD09PXUpYnJlYWsgQTt1LS0saCs9Y1tFKytdPDx3LHcrPTh9aWYoZjwxNiloPj4+PUQsdy09RCx0LmxlbnNbdC5oYXZlKytdPWY7ZWxzZXtpZigxNj09PWYpe2ZvcihHPUQrMjt3PEc7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH1pZihoPj4+PUQsdy09RCwwPT09dC5oYXZlKXtBLm1zZz0iaW52YWxpZCBiaXQgbGVuZ3RoIHJlcGVhdCIsdC5tb2RlPTMwO2JyZWFrfVQ9dC5sZW5zW3QuaGF2ZS0xXSxwPTMrKDMmaCksaD4+Pj0yLHctPTJ9ZWxzZSBpZigxNz09PWYpe2ZvcihHPUQrMzt3PEc7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH13LT1ELFQ9MCxwPTMrKDcmKGg+Pj49RCkpLGg+Pj49Myx3LT0zfWVsc2V7Zm9yKEc9RCs3O3c8Rzspe2lmKDA9PT11KWJyZWFrIEE7dS0tLGgrPWNbRSsrXTw8dyx3Kz04fXctPUQsVD0wLHA9MTErKDEyNyYoaD4+Pj1EKSksaD4+Pj03LHctPTd9aWYodC5oYXZlK3A+dC5ubGVuK3QubmRpc3Qpe0EubXNnPSJpbnZhbGlkIGJpdCBsZW5ndGggcmVwZWF0Iix0Lm1vZGU9MzA7YnJlYWt9Zm9yKDtwLS07KXQubGVuc1t0LmhhdmUrK109VH19aWYoMzA9PT10Lm1vZGUpYnJlYWs7aWYoMD09PXQubGVuc1syNTZdKXtBLm1zZz0iaW52YWxpZCBjb2RlIC0tIG1pc3NpbmcgZW5kLW9mLWJsb2NrIix0Lm1vZGU9MzA7YnJlYWt9aWYodC5sZW5iaXRzPTksUj17Yml0czp0LmxlbmJpdHN9LHg9cygxLHQubGVucywwLHQubmxlbix0LmxlbmNvZGUsMCx0LndvcmssUiksdC5sZW5iaXRzPVIuYml0cyx4KXtBLm1zZz0iaW52YWxpZCBsaXRlcmFsL2xlbmd0aHMgc2V0Iix0Lm1vZGU9MzA7YnJlYWt9aWYodC5kaXN0Yml0cz02LHQuZGlzdGNvZGU9dC5kaXN0ZHluLFI9e2JpdHM6dC5kaXN0Yml0c30seD1zKDIsdC5sZW5zLHQubmxlbix0Lm5kaXN0LHQuZGlzdGNvZGUsMCx0LndvcmssUiksdC5kaXN0Yml0cz1SLmJpdHMseCl7QS5tc2c9ImludmFsaWQgZGlzdGFuY2VzIHNldCIsdC5tb2RlPTMwO2JyZWFrfWlmKHQubW9kZT0yMCw2PT09ZSlicmVhayBBO2Nhc2UgMjA6dC5tb2RlPTIxO2Nhc2UgMjE6aWYoNjw9dSYmMjU4PD1sKXtBLm5leHRfb3V0PVEsQS5hdmFpbF9vdXQ9bCxBLm5leHRfaW49RSxBLmF2YWlsX2luPXUsdC5ob2xkPWgsdC5iaXRzPXcsbyhBLGQpLFE9QS5uZXh0X291dCxnPUEub3V0cHV0LGw9QS5hdmFpbF9vdXQsRT1BLm5leHRfaW4sYz1BLmlucHV0LHU9QS5hdmFpbF9pbixoPXQuaG9sZCx3PXQuYml0cywxMj09PXQubW9kZSYmKHQuYmFjaz0tMSk7YnJlYWt9Zm9yKHQuYmFjaz0wO1k9KFM9dC5sZW5jb2RlW2gmKDE8PHQubGVuYml0cyktMV0pPj4+MTYmMjU1LGY9NjU1MzUmUywhKChEPVM+Pj4yNCk8PXcpOyl7aWYoMD09PXUpYnJlYWsgQTt1LS0saCs9Y1tFKytdPDx3LHcrPTh9aWYoWSYmMD09KDI0MCZZKSl7Zm9yKE49RCxVPVkseT1mO1k9KFM9dC5sZW5jb2RlW3krKChoJigxPDxOK1UpLTEpPj5OKV0pPj4+MTYmMjU1LGY9NjU1MzUmUywhKE4rKEQ9Uz4+PjI0KTw9dyk7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH1oPj4+PU4sdy09Tix0LmJhY2srPU59aWYoaD4+Pj1ELHctPUQsdC5iYWNrKz1ELHQubGVuZ3RoPWYsMD09PVkpe3QubW9kZT0yNjticmVha31pZigzMiZZKXt0LmJhY2s9LTEsdC5tb2RlPTEyO2JyZWFrfWlmKDY0Jlkpe0EubXNnPSJpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUiLHQubW9kZT0zMDticmVha310LmV4dHJhPTE1JlksdC5tb2RlPTIyO2Nhc2UgMjI6aWYodC5leHRyYSl7Zm9yKEc9dC5leHRyYTt3PEc7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH10Lmxlbmd0aCs9aCYoMTw8dC5leHRyYSktMSxoPj4+PXQuZXh0cmEsdy09dC5leHRyYSx0LmJhY2srPXQuZXh0cmF9dC53YXM9dC5sZW5ndGgsdC5tb2RlPTIzO2Nhc2UgMjM6Zm9yKDtZPShTPXQuZGlzdGNvZGVbaCYoMTw8dC5kaXN0Yml0cyktMV0pPj4+MTYmMjU1LGY9NjU1MzUmUywhKChEPVM+Pj4yNCk8PXcpOyl7aWYoMD09PXUpYnJlYWsgQTt1LS0saCs9Y1tFKytdPDx3LHcrPTh9aWYoMD09KDI0MCZZKSl7Zm9yKE49RCxVPVkseT1mO1k9KFM9dC5kaXN0Y29kZVt5KygoaCYoMTw8TitVKS0xKT4+TildKT4+PjE2JjI1NSxmPTY1NTM1JlMsIShOKyhEPVM+Pj4yNCk8PXcpOyl7aWYoMD09PXUpYnJlYWsgQTt1LS0saCs9Y1tFKytdPDx3LHcrPTh9aD4+Pj1OLHctPU4sdC5iYWNrKz1OfWlmKGg+Pj49RCx3LT1ELHQuYmFjays9RCw2NCZZKXtBLm1zZz0iaW52YWxpZCBkaXN0YW5jZSBjb2RlIix0Lm1vZGU9MzA7YnJlYWt9dC5vZmZzZXQ9Zix0LmV4dHJhPTE1JlksdC5tb2RlPTI0O2Nhc2UgMjQ6aWYodC5leHRyYSl7Zm9yKEc9dC5leHRyYTt3PEc7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH10Lm9mZnNldCs9aCYoMTw8dC5leHRyYSktMSxoPj4+PXQuZXh0cmEsdy09dC5leHRyYSx0LmJhY2srPXQuZXh0cmF9aWYodC5vZmZzZXQ+dC5kbWF4KXtBLm1zZz0iaW52YWxpZCBkaXN0YW5jZSB0b28gZmFyIGJhY2siLHQubW9kZT0zMDticmVha310Lm1vZGU9MjU7Y2FzZSAyNTppZigwPT09bClicmVhayBBO2lmKHA9ZC1sLHQub2Zmc2V0PnApe2lmKChwPXQub2Zmc2V0LXApPnQud2hhdmUmJnQuc2FuZSl7QS5tc2c9ImludmFsaWQgZGlzdGFuY2UgdG9vIGZhciBiYWNrIix0Lm1vZGU9MzA7YnJlYWt9bT1wPnQud25leHQ/KHAtPXQud25leHQsdC53c2l6ZS1wKTp0LnduZXh0LXAscD50Lmxlbmd0aCYmKHA9dC5sZW5ndGgpLEY9dC53aW5kb3d9ZWxzZSBGPWcsbT1RLXQub2Zmc2V0LHA9dC5sZW5ndGg7Zm9yKGw8cCYmKHA9bCksbC09cCx0Lmxlbmd0aC09cDtnW1ErK109RlttKytdLC0tcDspOzA9PT10Lmxlbmd0aCYmKHQubW9kZT0yMSk7YnJlYWs7Y2FzZSAyNjppZigwPT09bClicmVhayBBO2dbUSsrXT10Lmxlbmd0aCxsLS0sdC5tb2RlPTIxO2JyZWFrO2Nhc2UgMjc6aWYodC53cmFwKXtmb3IoO3c8MzI7KXtpZigwPT09dSlicmVhayBBO3UtLSxofD1jW0UrK108PHcsdys9OH1pZihkLT1sLEEudG90YWxfb3V0Kz1kLHQudG90YWwrPWQsZCYmKEEuYWRsZXI9dC5jaGVjaz10LmZsYWdzP3IodC5jaGVjayxnLGQsUS1kKTppKHQuY2hlY2ssZyxkLFEtZCkpLGQ9bCwodC5mbGFncz9oOkIoaCkpIT09dC5jaGVjayl7QS5tc2c9ImluY29ycmVjdCBkYXRhIGNoZWNrIix0Lm1vZGU9MzA7YnJlYWt9dz1oPTB9dC5tb2RlPTI4O2Nhc2UgMjg6aWYodC53cmFwJiZ0LmZsYWdzKXtmb3IoO3c8MzI7KXtpZigwPT09dSlicmVhayBBO3UtLSxoKz1jW0UrK108PHcsdys9OH1pZihoIT09KDQyOTQ5NjcyOTUmdC50b3RhbCkpe0EubXNnPSJpbmNvcnJlY3QgbGVuZ3RoIGNoZWNrIix0Lm1vZGU9MzA7YnJlYWt9dz1oPTB9dC5tb2RlPTI5O2Nhc2UgMjk6eD0xO2JyZWFrIEE7Y2FzZSAzMDp4PS0zO2JyZWFrIEE7Y2FzZSAzMTpyZXR1cm4tNDtjYXNlIDMyOmRlZmF1bHQ6cmV0dXJuIGF9cmV0dXJuIEEubmV4dF9vdXQ9USxBLmF2YWlsX291dD1sLEEubmV4dF9pbj1FLEEuYXZhaWxfaW49dSx0LmhvbGQ9aCx0LmJpdHM9dywodC53c2l6ZXx8ZCE9PUEuYXZhaWxfb3V0JiZ0Lm1vZGU8MzAmJih0Lm1vZGU8Mjd8fDQhPT1lKSkmJkkoQSxBLm91dHB1dCxBLm5leHRfb3V0LGQtQS5hdmFpbF9vdXQpPyh0Lm1vZGU9MzEsLTQpOihNLT1BLmF2YWlsX2luLGQtPUEuYXZhaWxfb3V0LEEudG90YWxfaW4rPU0sQS50b3RhbF9vdXQrPWQsdC50b3RhbCs9ZCx0LndyYXAmJmQmJihBLmFkbGVyPXQuY2hlY2s9dC5mbGFncz9yKHQuY2hlY2ssZyxkLEEubmV4dF9vdXQtZCk6aSh0LmNoZWNrLGcsZCxBLm5leHRfb3V0LWQpKSxBLmRhdGFfdHlwZT10LmJpdHMrKHQubGFzdD82NDowKSsoMTI9PT10Lm1vZGU/MTI4OjApKygyMD09PXQubW9kZXx8MTU9PT10Lm1vZGU/MjU2OjApLCgwPT1NJiYwPT09ZHx8ND09PWUpJiYwPT09eCYmKHg9LTUpLHgpfSx0LmluZmxhdGVFbmQ9ZnVuY3Rpb24oQSl7aWYoIUF8fCFBLnN0YXRlKXJldHVybiBhO3ZhciBlPUEuc3RhdGU7cmV0dXJuIGUud2luZG93JiYoZS53aW5kb3c9bnVsbCksQS5zdGF0ZT1udWxsLDB9LHQuaW5mbGF0ZUdldEhlYWRlcj1mdW5jdGlvbihBLGUpe3ZhciB0O3JldHVybiBBJiZBLnN0YXRlPzA9PSgyJih0PUEuc3RhdGUpLndyYXApP2E6KCh0LmhlYWQ9ZSkuZG9uZT0hMSwwKTphfSx0LmluZmxhdGVTZXREaWN0aW9uYXJ5PWZ1bmN0aW9uKEEsZSl7dmFyIHQsbj1lLmxlbmd0aDtyZXR1cm4gQSYmQS5zdGF0ZT8wIT09KHQ9QS5zdGF0ZSkud3JhcCYmMTEhPT10Lm1vZGU/YToxMT09PXQubW9kZSYmaSgxLGUsbiwwKSE9PXQuY2hlY2s/LTM6SShBLGUsbixuKT8odC5tb2RlPTMxLC00KToodC5oYXZlZGljdD0xLDApOmF9LHQuaW5mbGF0ZUluZm89InBha28gaW5mbGF0ZSAoZnJvbSBOb2RlY2EgcHJvamVjdCkifSx7Ii4uL3V0aWxzL2NvbW1vbiI6NDEsIi4vYWRsZXIzMiI6NDMsIi4vY3JjMzIiOjQ1LCIuL2luZmZhc3QiOjQ4LCIuL2luZnRyZWVzIjo1MH1dLDUwOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPUEoIi4uL3V0aWxzL2NvbW1vbiIpLGk9WzMsNCw1LDYsNyw4LDksMTAsMTEsMTMsMTUsMTcsMTksMjMsMjcsMzEsMzUsNDMsNTEsNTksNjcsODMsOTksMTE1LDEzMSwxNjMsMTk1LDIyNywyNTgsMCwwXSxyPVsxNiwxNiwxNiwxNiwxNiwxNiwxNiwxNiwxNywxNywxNywxNywxOCwxOCwxOCwxOCwxOSwxOSwxOSwxOSwyMCwyMCwyMCwyMCwyMSwyMSwyMSwyMSwxNiw3Miw3OF0sbz1bMSwyLDMsNCw1LDcsOSwxMywxNywyNSwzMyw0OSw2NSw5NywxMjksMTkzLDI1NywzODUsNTEzLDc2OSwxMDI1LDE1MzcsMjA0OSwzMDczLDQwOTcsNjE0NSw4MTkzLDEyMjg5LDE2Mzg1LDI0NTc3LDAsMF0scz1bMTYsMTYsMTYsMTYsMTcsMTcsMTgsMTgsMTksMTksMjAsMjAsMjEsMjEsMjIsMjIsMjMsMjMsMjQsMjQsMjUsMjUsMjYsMjYsMjcsMjcsMjgsMjgsMjksMjksNjQsNjRdO2UuZXhwb3J0cz1mdW5jdGlvbihBLGUsdCxhLEIsYyxnLEUpe3ZhciBRLHUsbCxoLHcsQyxJLE0sZCxwPUUuYml0cyxtPTAsRj0wLEQ9MCxZPTAsZj0wLE49MCxVPTAseT0wLFQ9MCx4PTAsUj1udWxsLEc9MCxTPW5ldyBuLkJ1ZjE2KDE2KSxiPW5ldyBuLkJ1ZjE2KDE2KSxIPW51bGwsdj0wO2ZvcihtPTA7bTw9MTU7bSsrKVNbbV09MDtmb3IoRj0wO0Y8YTtGKyspU1tlW3QrRl1dKys7Zm9yKGY9cCxZPTE1OzE8PVkmJjA9PT1TW1ldO1ktLSk7aWYoWTxmJiYoZj1ZKSwwPT09WSlyZXR1cm4gQltjKytdPTIwOTcxNTIwLEJbYysrXT0yMDk3MTUyMCxFLmJpdHM9MSwwO2ZvcihEPTE7RDxZJiYwPT09U1tEXTtEKyspO2ZvcihmPEQmJihmPUQpLG09eT0xO208PTE1O20rKylpZih5PDw9MSwoeS09U1ttXSk8MClyZXR1cm4tMTtpZigwPHkmJigwPT09QXx8MSE9PVkpKXJldHVybi0xO2ZvcihiWzFdPTAsbT0xO208MTU7bSsrKWJbbSsxXT1iW21dK1NbbV07Zm9yKEY9MDtGPGE7RisrKTAhPT1lW3QrRl0mJihnW2JbZVt0K0ZdXSsrXT1GKTtpZihDPTA9PT1BPyhSPUg9ZywxOSk6MT09PUE/KFI9aSxHLT0yNTcsSD1yLHYtPTI1NywyNTYpOihSPW8sSD1zLC0xKSxtPUQsdz1jLFU9Rj14PTAsbD0tMSxoPShUPTE8PChOPWYpKS0xLDE9PT1BJiY4NTI8VHx8Mj09PUEmJjU5MjxUKXJldHVybiAxO2Zvcig7Oyl7Zm9yKEk9bS1VLGQ9Z1tGXTxDPyhNPTAsZ1tGXSk6Z1tGXT5DPyhNPUhbditnW0ZdXSxSW0crZ1tGXV0pOihNPTk2LDApLFE9MTw8bS1VLEQ9dT0xPDxOO0JbdysoeD4+VSkrKHUtPVEpXT1JPDwyNHxNPDwxNnxkfDAsMCE9PXU7KTtmb3IoUT0xPDxtLTE7eCZROylRPj49MTtpZigwIT09UT8oeCY9US0xLHgrPVEpOng9MCxGKyssMD09LS1TW21dKXtpZihtPT09WSlicmVhazttPWVbdCtnW0ZdXX1pZihmPG0mJih4JmgpIT09bCl7Zm9yKDA9PT1VJiYoVT1mKSx3Kz1ELHk9MTw8KE49bS1VKTtOK1U8WSYmISgoeS09U1tOK1VdKTw9MCk7KU4rKyx5PDw9MTtpZihUKz0xPDxOLDE9PT1BJiY4NTI8VHx8Mj09PUEmJjU5MjxUKXJldHVybiAxO0JbbD14JmhdPWY8PDI0fE48PDE2fHctY3wwfX1yZXR1cm4gMCE9PXgmJihCW3creF09bS1VPDwyNHw2NDw8MTZ8MCksRS5iaXRzPWYsMH19LHsiLi4vdXRpbHMvY29tbW9uIjo0MX1dLDUxOltmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz17MjoibmVlZCBkaWN0aW9uYXJ5IiwxOiJzdHJlYW0gZW5kIiwwOiIiLCItMSI6ImZpbGUgZXJyb3IiLCItMiI6InN0cmVhbSBlcnJvciIsIi0zIjoiZGF0YSBlcnJvciIsIi00IjoiaW5zdWZmaWNpZW50IG1lbW9yeSIsIi01IjoiYnVmZmVyIGVycm9yIiwiLTYiOiJpbmNvbXBhdGlibGUgdmVyc2lvbiJ9fSx7fV0sNTI6W2Z1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49QSgiLi4vdXRpbHMvY29tbW9uIik7ZnVuY3Rpb24gaShBKXtmb3IodmFyIGU9QS5sZW5ndGg7MDw9LS1lOylBW2VdPTB9dmFyIHI9MjU2LG89Mjg2LHM9MzAsYT0xNSxCPVswLDAsMCwwLDAsMCwwLDAsMSwxLDEsMSwyLDIsMiwyLDMsMywzLDMsNCw0LDQsNCw1LDUsNSw1LDBdLGM9WzAsMCwwLDAsMSwxLDIsMiwzLDMsNCw0LDUsNSw2LDYsNyw3LDgsOCw5LDksMTAsMTAsMTEsMTEsMTIsMTIsMTMsMTNdLGc9WzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMiwzLDddLEU9WzE2LDE3LDE4LDAsOCw3LDksNiwxMCw1LDExLDQsMTIsMywxMywyLDE0LDEsMTVdLFE9bmV3IEFycmF5KDU3Nik7aShRKTt2YXIgdT1uZXcgQXJyYXkoNjApO2kodSk7dmFyIGw9bmV3IEFycmF5KDUxMik7aShsKTt2YXIgaD1uZXcgQXJyYXkoMjU2KTtpKGgpO3ZhciB3PW5ldyBBcnJheSgyOSk7aSh3KTt2YXIgQyxJLE0sZD1uZXcgQXJyYXkocyk7ZnVuY3Rpb24gcChBLGUsdCxuLGkpe3RoaXMuc3RhdGljX3RyZWU9QSx0aGlzLmV4dHJhX2JpdHM9ZSx0aGlzLmV4dHJhX2Jhc2U9dCx0aGlzLmVsZW1zPW4sdGhpcy5tYXhfbGVuZ3RoPWksdGhpcy5oYXNfc3RyZWU9QSYmQS5sZW5ndGh9ZnVuY3Rpb24gbShBLGUpe3RoaXMuZHluX3RyZWU9QSx0aGlzLm1heF9jb2RlPTAsdGhpcy5zdGF0X2Rlc2M9ZX1mdW5jdGlvbiBGKEEpe3JldHVybiBBPDI1Nj9sW0FdOmxbMjU2KyhBPj4+NyldfWZ1bmN0aW9uIEQoQSxlKXtBLnBlbmRpbmdfYnVmW0EucGVuZGluZysrXT0yNTUmZSxBLnBlbmRpbmdfYnVmW0EucGVuZGluZysrXT1lPj4+OCYyNTV9ZnVuY3Rpb24gWShBLGUsdCl7QS5iaV92YWxpZD4xNi10PyhBLmJpX2J1Znw9ZTw8QS5iaV92YWxpZCY2NTUzNSxEKEEsQS5iaV9idWYpLEEuYmlfYnVmPWU+PjE2LUEuYmlfdmFsaWQsQS5iaV92YWxpZCs9dC0xNik6KEEuYmlfYnVmfD1lPDxBLmJpX3ZhbGlkJjY1NTM1LEEuYmlfdmFsaWQrPXQpfWZ1bmN0aW9uIGYoQSxlLHQpe1koQSx0WzIqZV0sdFsyKmUrMV0pfWZ1bmN0aW9uIE4oQSxlKXtmb3IodmFyIHQ9MDt0fD0xJkEsQT4+Pj0xLHQ8PD0xLDA8LS1lOyk7cmV0dXJuIHQ+Pj4xfWZ1bmN0aW9uIFUoQSxlLHQpe3ZhciBuLGkscj1uZXcgQXJyYXkoMTYpLG89MDtmb3Iobj0xO248PWE7bisrKXJbbl09bz1vK3Rbbi0xXTw8MTtmb3IoaT0wO2k8PWU7aSsrKXt2YXIgcz1BWzIqaSsxXTswIT09cyYmKEFbMippXT1OKHJbc10rKyxzKSl9fWZ1bmN0aW9uIHkoQSl7dmFyIGU7Zm9yKGU9MDtlPG87ZSsrKUEuZHluX2x0cmVlWzIqZV09MDtmb3IoZT0wO2U8cztlKyspQS5keW5fZHRyZWVbMiplXT0wO2ZvcihlPTA7ZTwxOTtlKyspQS5ibF90cmVlWzIqZV09MDtBLmR5bl9sdHJlZVs1MTJdPTEsQS5vcHRfbGVuPUEuc3RhdGljX2xlbj0wLEEubGFzdF9saXQ9QS5tYXRjaGVzPTB9ZnVuY3Rpb24gVChBKXs4PEEuYmlfdmFsaWQ/RChBLEEuYmlfYnVmKTowPEEuYmlfdmFsaWQmJihBLnBlbmRpbmdfYnVmW0EucGVuZGluZysrXT1BLmJpX2J1ZiksQS5iaV9idWY9MCxBLmJpX3ZhbGlkPTB9ZnVuY3Rpb24geChBLGUsdCxuKXt2YXIgaT0yKmUscj0yKnQ7cmV0dXJuIEFbaV08QVtyXXx8QVtpXT09PUFbcl0mJm5bZV08PW5bdF19ZnVuY3Rpb24gUihBLGUsdCl7Zm9yKHZhciBuPUEuaGVhcFt0XSxpPXQ8PDE7aTw9QS5oZWFwX2xlbiYmKGk8QS5oZWFwX2xlbiYmeChlLEEuaGVhcFtpKzFdLEEuaGVhcFtpXSxBLmRlcHRoKSYmaSsrLCF4KGUsbixBLmhlYXBbaV0sQS5kZXB0aCkpOylBLmhlYXBbdF09QS5oZWFwW2ldLHQ9aSxpPDw9MTtBLmhlYXBbdF09bn1mdW5jdGlvbiBHKEEsZSx0KXt2YXIgbixpLG8scyxhPTA7aWYoMCE9PUEubGFzdF9saXQpZm9yKDtuPUEucGVuZGluZ19idWZbQS5kX2J1ZisyKmFdPDw4fEEucGVuZGluZ19idWZbQS5kX2J1ZisyKmErMV0saT1BLnBlbmRpbmdfYnVmW0EubF9idWYrYV0sYSsrLDA9PT1uP2YoQSxpLGUpOihmKEEsKG89aFtpXSkrcisxLGUpLDAhPT0ocz1CW29dKSYmWShBLGktPXdbb10scyksZihBLG89RigtLW4pLHQpLDAhPT0ocz1jW29dKSYmWShBLG4tPWRbb10scykpLGE8QS5sYXN0X2xpdDspO2YoQSwyNTYsZSl9ZnVuY3Rpb24gUyhBLGUpe3ZhciB0LG4saSxyPWUuZHluX3RyZWUsbz1lLnN0YXRfZGVzYy5zdGF0aWNfdHJlZSxzPWUuc3RhdF9kZXNjLmhhc19zdHJlZSxCPWUuc3RhdF9kZXNjLmVsZW1zLGM9LTE7Zm9yKEEuaGVhcF9sZW49MCxBLmhlYXBfbWF4PTU3Myx0PTA7dDxCO3QrKykwIT09clsyKnRdPyhBLmhlYXBbKytBLmhlYXBfbGVuXT1jPXQsQS5kZXB0aFt0XT0wKTpyWzIqdCsxXT0wO2Zvcig7QS5oZWFwX2xlbjwyOylyWzIqKGk9QS5oZWFwWysrQS5oZWFwX2xlbl09YzwyPysrYzowKV09MSxBLmRlcHRoW2ldPTAsQS5vcHRfbGVuLS0scyYmKEEuc3RhdGljX2xlbi09b1syKmkrMV0pO2ZvcihlLm1heF9jb2RlPWMsdD1BLmhlYXBfbGVuPj4xOzE8PXQ7dC0tKVIoQSxyLHQpO2ZvcihpPUI7dD1BLmhlYXBbMV0sQS5oZWFwWzFdPUEuaGVhcFtBLmhlYXBfbGVuLS1dLFIoQSxyLDEpLG49QS5oZWFwWzFdLEEuaGVhcFstLUEuaGVhcF9tYXhdPXQsQS5oZWFwWy0tQS5oZWFwX21heF09bixyWzIqaV09clsyKnRdK3JbMipuXSxBLmRlcHRoW2ldPShBLmRlcHRoW3RdPj1BLmRlcHRoW25dP0EuZGVwdGhbdF06QS5kZXB0aFtuXSkrMSxyWzIqdCsxXT1yWzIqbisxXT1pLEEuaGVhcFsxXT1pKyssUihBLHIsMSksMjw9QS5oZWFwX2xlbjspO0EuaGVhcFstLUEuaGVhcF9tYXhdPUEuaGVhcFsxXSxmdW5jdGlvbihBLGUpe3ZhciB0LG4saSxyLG8scyxCPWUuZHluX3RyZWUsYz1lLm1heF9jb2RlLGc9ZS5zdGF0X2Rlc2Muc3RhdGljX3RyZWUsRT1lLnN0YXRfZGVzYy5oYXNfc3RyZWUsUT1lLnN0YXRfZGVzYy5leHRyYV9iaXRzLHU9ZS5zdGF0X2Rlc2MuZXh0cmFfYmFzZSxsPWUuc3RhdF9kZXNjLm1heF9sZW5ndGgsaD0wO2ZvcihyPTA7cjw9YTtyKyspQS5ibF9jb3VudFtyXT0wO2ZvcihCWzIqQS5oZWFwW0EuaGVhcF9tYXhdKzFdPTAsdD1BLmhlYXBfbWF4KzE7dDw1NzM7dCsrKWw8KHI9QlsyKkJbMioobj1BLmhlYXBbdF0pKzFdKzFdKzEpJiYocj1sLGgrKyksQlsyKm4rMV09cixjPG58fChBLmJsX2NvdW50W3JdKyssbz0wLHU8PW4mJihvPVFbbi11XSkscz1CWzIqbl0sQS5vcHRfbGVuKz1zKihyK28pLEUmJihBLnN0YXRpY19sZW4rPXMqKGdbMipuKzFdK28pKSk7aWYoMCE9PWgpe2Rve2ZvcihyPWwtMTswPT09QS5ibF9jb3VudFtyXTspci0tO0EuYmxfY291bnRbcl0tLSxBLmJsX2NvdW50W3IrMV0rPTIsQS5ibF9jb3VudFtsXS0tLGgtPTJ9d2hpbGUoMDxoKTtmb3Iocj1sOzAhPT1yO3ItLSlmb3Iobj1BLmJsX2NvdW50W3JdOzAhPT1uOyljPChpPUEuaGVhcFstLXRdKXx8KEJbMippKzFdIT09ciYmKEEub3B0X2xlbis9KHItQlsyKmkrMV0pKkJbMippXSxCWzIqaSsxXT1yKSxuLS0pfX0oQSxlKSxVKHIsYyxBLmJsX2NvdW50KX1mdW5jdGlvbiBiKEEsZSx0KXt2YXIgbixpLHI9LTEsbz1lWzFdLHM9MCxhPTcsQj00O2ZvcigwPT09byYmKGE9MTM4LEI9MyksZVsyKih0KzEpKzFdPTY1NTM1LG49MDtuPD10O24rKylpPW8sbz1lWzIqKG4rMSkrMV0sKytzPGEmJmk9PT1vfHwoczxCP0EuYmxfdHJlZVsyKmldKz1zOjAhPT1pPyhpIT09ciYmQS5ibF90cmVlWzIqaV0rKyxBLmJsX3RyZWVbMzJdKyspOnM8PTEwP0EuYmxfdHJlZVszNF0rKzpBLmJsX3RyZWVbMzZdKysscj1pLEI9KHM9MCk9PT1vPyhhPTEzOCwzKTppPT09bz8oYT02LDMpOihhPTcsNCkpfWZ1bmN0aW9uIEgoQSxlLHQpe3ZhciBuLGkscj0tMSxvPWVbMV0scz0wLGE9NyxCPTQ7Zm9yKDA9PT1vJiYoYT0xMzgsQj0zKSxuPTA7bjw9dDtuKyspaWYoaT1vLG89ZVsyKihuKzEpKzFdLCEoKytzPGEmJmk9PT1vKSl7aWYoczxCKWZvcig7ZihBLGksQS5ibF90cmVlKSwwIT0tLXM7KTtlbHNlIDAhPT1pPyhpIT09ciYmKGYoQSxpLEEuYmxfdHJlZSkscy0tKSxmKEEsMTYsQS5ibF90cmVlKSxZKEEscy0zLDIpKTpzPD0xMD8oZihBLDE3LEEuYmxfdHJlZSksWShBLHMtMywzKSk6KGYoQSwxOCxBLmJsX3RyZWUpLFkoQSxzLTExLDcpKTtyPWksQj0ocz0wKT09PW8/KGE9MTM4LDMpOmk9PT1vPyhhPTYsMyk6KGE9Nyw0KX19aShkKTt2YXIgdj0hMTtmdW5jdGlvbiBrKEEsZSx0LGkpe1koQSwwKyhpPzE6MCksMyksZnVuY3Rpb24oQSxlLHQsaSl7VChBKSxEKEEsdCksRChBLH50KSxuLmFycmF5U2V0KEEucGVuZGluZ19idWYsQS53aW5kb3csZSx0LEEucGVuZGluZyksQS5wZW5kaW5nKz10fShBLGUsdCl9dC5fdHJfaW5pdD1mdW5jdGlvbihBKXt2fHwoZnVuY3Rpb24oKXt2YXIgQSxlLHQsbixpLHI9bmV3IEFycmF5KDE2KTtmb3Iobj10PTA7bjwyODtuKyspZm9yKHdbbl09dCxBPTA7QTwxPDxCW25dO0ErKyloW3QrK109bjtmb3IoaFt0LTFdPW4sbj1pPTA7bjwxNjtuKyspZm9yKGRbbl09aSxBPTA7QTwxPDxjW25dO0ErKylsW2krK109bjtmb3IoaT4+PTc7bjxzO24rKylmb3IoZFtuXT1pPDw3LEE9MDtBPDE8PGNbbl0tNztBKyspbFsyNTYraSsrXT1uO2ZvcihlPTA7ZTw9YTtlKyspcltlXT0wO2ZvcihBPTA7QTw9MTQzOylRWzIqQSsxXT04LEErKyxyWzhdKys7Zm9yKDtBPD0yNTU7KVFbMipBKzFdPTksQSsrLHJbOV0rKztmb3IoO0E8PTI3OTspUVsyKkErMV09NyxBKysscls3XSsrO2Zvcig7QTw9Mjg3OylRWzIqQSsxXT04LEErKyxyWzhdKys7Zm9yKFUoUSwyODcsciksQT0wO0E8cztBKyspdVsyKkErMV09NSx1WzIqQV09TihBLDUpO0M9bmV3IHAoUSxCLDI1NyxvLGEpLEk9bmV3IHAodSxjLDAscyxhKSxNPW5ldyBwKG5ldyBBcnJheSgwKSxnLDAsMTksNyl9KCksdj0hMCksQS5sX2Rlc2M9bmV3IG0oQS5keW5fbHRyZWUsQyksQS5kX2Rlc2M9bmV3IG0oQS5keW5fZHRyZWUsSSksQS5ibF9kZXNjPW5ldyBtKEEuYmxfdHJlZSxNKSxBLmJpX2J1Zj0wLEEuYmlfdmFsaWQ9MCx5KEEpfSx0Ll90cl9zdG9yZWRfYmxvY2s9ayx0Ll90cl9mbHVzaF9ibG9jaz1mdW5jdGlvbihBLGUsdCxuKXt2YXIgaSxvLHM9MDswPEEubGV2ZWw/KDI9PT1BLnN0cm0uZGF0YV90eXBlJiYoQS5zdHJtLmRhdGFfdHlwZT1mdW5jdGlvbihBKXt2YXIgZSx0PTQwOTM2MjQ0NDc7Zm9yKGU9MDtlPD0zMTtlKyssdD4+Pj0xKWlmKDEmdCYmMCE9PUEuZHluX2x0cmVlWzIqZV0pcmV0dXJuIDA7aWYoMCE9PUEuZHluX2x0cmVlWzE4XXx8MCE9PUEuZHluX2x0cmVlWzIwXXx8MCE9PUEuZHluX2x0cmVlWzI2XSlyZXR1cm4gMTtmb3IoZT0zMjtlPHI7ZSsrKWlmKDAhPT1BLmR5bl9sdHJlZVsyKmVdKXJldHVybiAxO3JldHVybiAwfShBKSksUyhBLEEubF9kZXNjKSxTKEEsQS5kX2Rlc2MpLHM9ZnVuY3Rpb24oQSl7dmFyIGU7Zm9yKGIoQSxBLmR5bl9sdHJlZSxBLmxfZGVzYy5tYXhfY29kZSksYihBLEEuZHluX2R0cmVlLEEuZF9kZXNjLm1heF9jb2RlKSxTKEEsQS5ibF9kZXNjKSxlPTE4OzM8PWUmJjA9PT1BLmJsX3RyZWVbMipFW2VdKzFdO2UtLSk7cmV0dXJuIEEub3B0X2xlbis9MyooZSsxKSs1KzUrNCxlfShBKSxpPUEub3B0X2xlbiszKzc+Pj4zLChvPUEuc3RhdGljX2xlbiszKzc+Pj4zKTw9aSYmKGk9bykpOmk9bz10KzUsdCs0PD1pJiYtMSE9PWU/ayhBLGUsdCxuKTo0PT09QS5zdHJhdGVneXx8bz09PWk/KFkoQSwyKyhuPzE6MCksMyksRyhBLFEsdSkpOihZKEEsNCsobj8xOjApLDMpLGZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpO2ZvcihZKEEsZS0yNTcsNSksWShBLHQtMSw1KSxZKEEsbi00LDQpLGk9MDtpPG47aSsrKVkoQSxBLmJsX3RyZWVbMipFW2ldKzFdLDMpO0goQSxBLmR5bl9sdHJlZSxlLTEpLEgoQSxBLmR5bl9kdHJlZSx0LTEpfShBLEEubF9kZXNjLm1heF9jb2RlKzEsQS5kX2Rlc2MubWF4X2NvZGUrMSxzKzEpLEcoQSxBLmR5bl9sdHJlZSxBLmR5bl9kdHJlZSkpLHkoQSksbiYmVChBKX0sdC5fdHJfdGFsbHk9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBLnBlbmRpbmdfYnVmW0EuZF9idWYrMipBLmxhc3RfbGl0XT1lPj4+OCYyNTUsQS5wZW5kaW5nX2J1ZltBLmRfYnVmKzIqQS5sYXN0X2xpdCsxXT0yNTUmZSxBLnBlbmRpbmdfYnVmW0EubF9idWYrQS5sYXN0X2xpdF09MjU1JnQsQS5sYXN0X2xpdCsrLDA9PT1lP0EuZHluX2x0cmVlWzIqdF0rKzooQS5tYXRjaGVzKyssZS0tLEEuZHluX2x0cmVlWzIqKGhbdF0rcisxKV0rKyxBLmR5bl9kdHJlZVsyKkYoZSldKyspLEEubGFzdF9saXQ9PT1BLmxpdF9idWZzaXplLTF9LHQuX3RyX2FsaWduPWZ1bmN0aW9uKEEpe1koQSwyLDMpLGYoQSwyNTYsUSksZnVuY3Rpb24oQSl7MTY9PT1BLmJpX3ZhbGlkPyhEKEEsQS5iaV9idWYpLEEuYmlfYnVmPTAsQS5iaV92YWxpZD0wKTo4PD1BLmJpX3ZhbGlkJiYoQS5wZW5kaW5nX2J1ZltBLnBlbmRpbmcrK109MjU1JkEuYmlfYnVmLEEuYmlfYnVmPj49OCxBLmJpX3ZhbGlkLT04KX0oQSl9fSx7Ii4uL3V0aWxzL2NvbW1vbiI6NDF9XSw1MzpbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9ZnVuY3Rpb24oKXt0aGlzLmlucHV0PW51bGwsdGhpcy5uZXh0X2luPTAsdGhpcy5hdmFpbF9pbj0wLHRoaXMudG90YWxfaW49MCx0aGlzLm91dHB1dD1udWxsLHRoaXMubmV4dF9vdXQ9MCx0aGlzLmF2YWlsX291dD0wLHRoaXMudG90YWxfb3V0PTAsdGhpcy5tc2c9IiIsdGhpcy5zdGF0ZT1udWxsLHRoaXMuZGF0YV90eXBlPTIsdGhpcy5hZGxlcj0wfX0se31dLDU0OltmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKEEpeyFmdW5jdGlvbihBLGUpeyJ1c2Ugc3RyaWN0IjtpZighQS5zZXRJbW1lZGlhdGUpe3ZhciB0LG4scixvLHM9MSxhPXt9LEI9ITEsYz1BLmRvY3VtZW50LGc9T2JqZWN0LmdldFByb3RvdHlwZU9mJiZPYmplY3QuZ2V0UHJvdG90eXBlT2YoQSk7Zz1nJiZnLnNldFRpbWVvdXQ/ZzpBLHQ9IltvYmplY3QgcHJvY2Vzc10iPT09e30udG9TdHJpbmcuY2FsbChBLnByb2Nlc3MpP2Z1bmN0aW9uKEEpe2kubmV4dFRpY2soKGZ1bmN0aW9uKCl7UShBKX0pKX06ZnVuY3Rpb24oKXtpZihBLnBvc3RNZXNzYWdlJiYhQS5pbXBvcnRTY3JpcHRzKXt2YXIgZT0hMCx0PUEub25tZXNzYWdlO3JldHVybiBBLm9ubWVzc2FnZT1mdW5jdGlvbigpe2U9ITF9LEEucG9zdE1lc3NhZ2UoIiIsIioiKSxBLm9ubWVzc2FnZT10LGV9fSgpPyhvPSJzZXRJbW1lZGlhdGUkIitNYXRoLnJhbmRvbSgpKyIkIixBLmFkZEV2ZW50TGlzdGVuZXI/QS5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIix1LCExKTpBLmF0dGFjaEV2ZW50KCJvbm1lc3NhZ2UiLHUpLGZ1bmN0aW9uKGUpe0EucG9zdE1lc3NhZ2UobytlLCIqIil9KTpBLk1lc3NhZ2VDaGFubmVsPygocj1uZXcgTWVzc2FnZUNoYW5uZWwpLnBvcnQxLm9ubWVzc2FnZT1mdW5jdGlvbihBKXtRKEEuZGF0YSl9LGZ1bmN0aW9uKEEpe3IucG9ydDIucG9zdE1lc3NhZ2UoQSl9KTpjJiYib25yZWFkeXN0YXRlY2hhbmdlImluIGMuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik/KG49Yy5kb2N1bWVudEVsZW1lbnQsZnVuY3Rpb24oQSl7dmFyIGU9Yy5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtlLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe1EoQSksZS5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbCxuLnJlbW92ZUNoaWxkKGUpLGU9bnVsbH0sbi5hcHBlbmRDaGlsZChlKX0pOmZ1bmN0aW9uKEEpe3NldFRpbWVvdXQoUSwwLEEpfSxnLnNldEltbWVkaWF0ZT1mdW5jdGlvbihBKXsiZnVuY3Rpb24iIT10eXBlb2YgQSYmKEE9bmV3IEZ1bmN0aW9uKCIiK0EpKTtmb3IodmFyIGU9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSksbj0wO248ZS5sZW5ndGg7bisrKWVbbl09YXJndW1lbnRzW24rMV07dmFyIGk9e2NhbGxiYWNrOkEsYXJnczplfTtyZXR1cm4gYVtzXT1pLHQocykscysrfSxnLmNsZWFySW1tZWRpYXRlPUV9ZnVuY3Rpb24gRShBKXtkZWxldGUgYVtBXX1mdW5jdGlvbiBRKEEpe2lmKEIpc2V0VGltZW91dChRLDAsQSk7ZWxzZXt2YXIgZT1hW0FdO2lmKGUpe0I9ITA7dHJ5eyFmdW5jdGlvbihBKXt2YXIgZT1BLmNhbGxiYWNrLHQ9QS5hcmdzO3N3aXRjaCh0Lmxlbmd0aCl7Y2FzZSAwOmUoKTticmVhaztjYXNlIDE6ZSh0WzBdKTticmVhaztjYXNlIDI6ZSh0WzBdLHRbMV0pO2JyZWFrO2Nhc2UgMzplKHRbMF0sdFsxXSx0WzJdKTticmVhaztkZWZhdWx0OmUuYXBwbHkodm9pZCAwLHQpfX0oZSl9ZmluYWxseXtFKEEpLEI9ITF9fX19ZnVuY3Rpb24gdShlKXtlLnNvdXJjZT09PUEmJiJzdHJpbmciPT10eXBlb2YgZS5kYXRhJiYwPT09ZS5kYXRhLmluZGV4T2YobykmJlEoK2UuZGF0YS5zbGljZShvLmxlbmd0aCkpfX0oInVuZGVmaW5lZCI9PXR5cGVvZiBzZWxmP3ZvaWQgMD09PUE/dGhpczpBOnNlbGYpfSkuY2FsbCh0aGlzLHZvaWQgMCE9PW4/bjoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/c2VsZjoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6e30pfSx7fV19LHt9LFsxMF0pKDEwKX0pLmNhbGwodGhpcyx0KDIwKS5CdWZmZXIsdCgxMzApLnNldEltbWVkaWF0ZSx0KDE1KSx0KDQwKSl9LGZ1bmN0aW9uKEEsZSx0KXtBLmV4cG9ydHM9ZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7dmFyIEE9QXJyYXkucHJvdG90eXBlLnNsaWNlO2Z1bmN0aW9uIGUoQSxlKXtlJiYoQS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSkpLEEucHJvdG90eXBlLmNvbnN0cnVjdG9yPUF9ZnVuY3Rpb24gdChBKXtyZXR1cm4gbyhBKT9BOnooQSl9ZnVuY3Rpb24gbihBKXtyZXR1cm4gcyhBKT9BOkwoQSl9ZnVuY3Rpb24gaShBKXtyZXR1cm4gYShBKT9BOlAoQSl9ZnVuY3Rpb24gcihBKXtyZXR1cm4gbyhBKSYmIUIoQSk/QTpPKEEpfWZ1bmN0aW9uIG8oQSl7cmV0dXJuISghQXx8IUFbZ10pfWZ1bmN0aW9uIHMoQSl7cmV0dXJuISghQXx8IUFbRV0pfWZ1bmN0aW9uIGEoQSl7cmV0dXJuISghQXx8IUFbUV0pfWZ1bmN0aW9uIEIoQSl7cmV0dXJuIHMoQSl8fGEoQSl9ZnVuY3Rpb24gYyhBKXtyZXR1cm4hKCFBfHwhQVt1XSl9ZShuLHQpLGUoaSx0KSxlKHIsdCksdC5pc0l0ZXJhYmxlPW8sdC5pc0tleWVkPXMsdC5pc0luZGV4ZWQ9YSx0LmlzQXNzb2NpYXRpdmU9Qix0LmlzT3JkZXJlZD1jLHQuS2V5ZWQ9bix0LkluZGV4ZWQ9aSx0LlNldD1yO3ZhciBnPSJAQF9fSU1NVVRBQkxFX0lURVJBQkxFX19AQCIsRT0iQEBfX0lNTVVUQUJMRV9LRVlFRF9fQEAiLFE9IkBAX19JTU1VVEFCTEVfSU5ERVhFRF9fQEAiLHU9IkBAX19JTU1VVEFCTEVfT1JERVJFRF9fQEAiLGw9e30saD17dmFsdWU6ITF9LHc9e3ZhbHVlOiExfTtmdW5jdGlvbiBDKEEpe3JldHVybiBBLnZhbHVlPSExLEF9ZnVuY3Rpb24gSShBKXtBJiYoQS52YWx1ZT0hMCl9ZnVuY3Rpb24gTSgpe31mdW5jdGlvbiBkKEEsZSl7ZT1lfHwwO2Zvcih2YXIgdD1NYXRoLm1heCgwLEEubGVuZ3RoLWUpLG49bmV3IEFycmF5KHQpLGk9MDtpPHQ7aSsrKW5baV09QVtpK2VdO3JldHVybiBufWZ1bmN0aW9uIHAoQSl7cmV0dXJuIHZvaWQgMD09PUEuc2l6ZSYmKEEuc2l6ZT1BLl9faXRlcmF0ZShGKSksQS5zaXplfWZ1bmN0aW9uIG0oQSxlKXtpZigibnVtYmVyIiE9dHlwZW9mIGUpe3ZhciB0PWU+Pj4wO2lmKCIiK3QhPT1lfHw0Mjk0OTY3Mjk1PT09dClyZXR1cm4gTmFOO2U9dH1yZXR1cm4gZTwwP3AoQSkrZTplfWZ1bmN0aW9uIEYoKXtyZXR1cm4hMH1mdW5jdGlvbiBEKEEsZSx0KXtyZXR1cm4oMD09PUF8fHZvaWQgMCE9PXQmJkE8PS10KSYmKHZvaWQgMD09PWV8fHZvaWQgMCE9PXQmJmU+PXQpfWZ1bmN0aW9uIFkoQSxlKXtyZXR1cm4gTihBLGUsMCl9ZnVuY3Rpb24gZihBLGUpe3JldHVybiBOKEEsZSxlKX1mdW5jdGlvbiBOKEEsZSx0KXtyZXR1cm4gdm9pZCAwPT09QT90OkE8MD9NYXRoLm1heCgwLGUrQSk6dm9pZCAwPT09ZT9BOk1hdGgubWluKGUsQSl9dmFyIFUseSxULHg9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmU3ltYm9sLml0ZXJhdG9yLFI9eHx8IkBAaXRlcmF0b3IiO2Z1bmN0aW9uIEcoQSl7dGhpcy5uZXh0PUF9ZnVuY3Rpb24gUyhBLGUsdCxuKXt2YXIgaT0wPT09QT9lOjE9PT1BP3Q6W2UsdF07cmV0dXJuIG4/bi52YWx1ZT1pOm49e3ZhbHVlOmksZG9uZTohMX0sbn1mdW5jdGlvbiBiKCl7cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX1mdW5jdGlvbiBIKEEpe3JldHVybiEhaihBKX1mdW5jdGlvbiB2KEEpe3JldHVybiBBJiYiZnVuY3Rpb24iPT10eXBlb2YgQS5uZXh0fWZ1bmN0aW9uIGsoQSl7dmFyIGU9aihBKTtyZXR1cm4gZSYmZS5jYWxsKEEpfWZ1bmN0aW9uIGooQSl7dmFyIGU9QSYmKHgmJkFbeF18fEFbIkBAaXRlcmF0b3IiXSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpcmV0dXJuIGV9ZnVuY3Rpb24gSihBKXtyZXR1cm4gQSYmIm51bWJlciI9PXR5cGVvZiBBLmxlbmd0aH1mdW5jdGlvbiB6KEEpe3JldHVybiBudWxsPT1BP18oKTpvKEEpP0EudG9TZXEoKTpmdW5jdGlvbihBKXt2YXIgZT1BQShBKXx8Im9iamVjdCI9PXR5cGVvZiBBJiZuZXcgVyhBKTtpZighZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBBcnJheSBvciBpdGVyYWJsZSBvYmplY3Qgb2YgdmFsdWVzLCBvciBrZXllZCBvYmplY3Q6ICIrQSk7cmV0dXJuIGV9KEEpfWZ1bmN0aW9uIEwoQSl7cmV0dXJuIG51bGw9PUE/XygpLnRvS2V5ZWRTZXEoKTpvKEEpP3MoQSk/QS50b1NlcSgpOkEuZnJvbUVudHJ5U2VxKCk6cShBKX1mdW5jdGlvbiBQKEEpe3JldHVybiBudWxsPT1BP18oKTpvKEEpP3MoQSk/QS5lbnRyeVNlcSgpOkEudG9JbmRleGVkU2VxKCk6JChBKX1mdW5jdGlvbiBPKEEpe3JldHVybihudWxsPT1BP18oKTpvKEEpP3MoQSk/QS5lbnRyeVNlcSgpOkE6JChBKSkudG9TZXRTZXEoKX1mdW5jdGlvbiBWKEEpe3RoaXMuX2FycmF5PUEsdGhpcy5zaXplPUEubGVuZ3RofWZ1bmN0aW9uIFcoQSl7dmFyIGU9T2JqZWN0LmtleXMoQSk7dGhpcy5fb2JqZWN0PUEsdGhpcy5fa2V5cz1lLHRoaXMuc2l6ZT1lLmxlbmd0aH1mdW5jdGlvbiBLKEEpe3RoaXMuX2l0ZXJhYmxlPUEsdGhpcy5zaXplPUEubGVuZ3RofHxBLnNpemV9ZnVuY3Rpb24gWChBKXt0aGlzLl9pdGVyYXRvcj1BLHRoaXMuX2l0ZXJhdG9yQ2FjaGU9W119ZnVuY3Rpb24gWihBKXtyZXR1cm4hKCFBfHwhQVsiQEBfX0lNTVVUQUJMRV9TRVFfX0BAIl0pfWZ1bmN0aW9uIF8oKXtyZXR1cm4gVXx8KFU9bmV3IFYoW10pKX1mdW5jdGlvbiBxKEEpe3ZhciBlPUFycmF5LmlzQXJyYXkoQSk/bmV3IFYoQSkuZnJvbUVudHJ5U2VxKCk6dihBKT9uZXcgWChBKS5mcm9tRW50cnlTZXEoKTpIKEEpP25ldyBLKEEpLmZyb21FbnRyeVNlcSgpOiJvYmplY3QiPT10eXBlb2YgQT9uZXcgVyhBKTp2b2lkIDA7aWYoIWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgQXJyYXkgb3IgaXRlcmFibGUgb2JqZWN0IG9mIFtrLCB2XSBlbnRyaWVzLCBvciBrZXllZCBvYmplY3Q6ICIrQSk7cmV0dXJuIGV9ZnVuY3Rpb24gJChBKXt2YXIgZT1BQShBKTtpZighZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBBcnJheSBvciBpdGVyYWJsZSBvYmplY3Qgb2YgdmFsdWVzOiAiK0EpO3JldHVybiBlfWZ1bmN0aW9uIEFBKEEpe3JldHVybiBKKEEpP25ldyBWKEEpOnYoQSk/bmV3IFgoQSk6SChBKT9uZXcgSyhBKTp2b2lkIDB9ZnVuY3Rpb24gZUEoQSxlLHQsbil7dmFyIGk9QS5fY2FjaGU7aWYoaSl7Zm9yKHZhciByPWkubGVuZ3RoLTEsbz0wO288PXI7bysrKXt2YXIgcz1pW3Q/ci1vOm9dO2lmKCExPT09ZShzWzFdLG4/c1swXTpvLEEpKXJldHVybiBvKzF9cmV0dXJuIG99cmV0dXJuIEEuX19pdGVyYXRlVW5jYWNoZWQoZSx0KX1mdW5jdGlvbiB0QShBLGUsdCxuKXt2YXIgaT1BLl9jYWNoZTtpZihpKXt2YXIgcj1pLmxlbmd0aC0xLG89MDtyZXR1cm4gbmV3IEcoKGZ1bmN0aW9uKCl7dmFyIEE9aVt0P3ItbzpvXTtyZXR1cm4gbysrPnI/e3ZhbHVlOnZvaWQgMCxkb25lOiEwfTpTKGUsbj9BWzBdOm8tMSxBWzFdKX0pKX1yZXR1cm4gQS5fX2l0ZXJhdG9yVW5jYWNoZWQoZSx0KX1mdW5jdGlvbiBuQShBLGUpe3JldHVybiBlP2Z1bmN0aW9uIEEoZSx0LG4saSl7cmV0dXJuIEFycmF5LmlzQXJyYXkodCk/ZS5jYWxsKGksbixQKHQpLm1hcCgoZnVuY3Rpb24obixpKXtyZXR1cm4gQShlLG4saSx0KX0pKSk6ckEodCk/ZS5jYWxsKGksbixMKHQpLm1hcCgoZnVuY3Rpb24obixpKXtyZXR1cm4gQShlLG4saSx0KX0pKSk6dH0oZSxBLCIiLHsiIjpBfSk6aUEoQSl9ZnVuY3Rpb24gaUEoQSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoQSk/UChBKS5tYXAoaUEpLnRvTGlzdCgpOnJBKEEpP0woQSkubWFwKGlBKS50b01hcCgpOkF9ZnVuY3Rpb24gckEoQSl7cmV0dXJuIEEmJihBLmNvbnN0cnVjdG9yPT09T2JqZWN0fHx2b2lkIDA9PT1BLmNvbnN0cnVjdG9yKX1mdW5jdGlvbiBvQShBLGUpe2lmKEE9PT1lfHxBIT1BJiZlIT1lKXJldHVybiEwO2lmKCFBfHwhZSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgQS52YWx1ZU9mJiYiZnVuY3Rpb24iPT10eXBlb2YgZS52YWx1ZU9mKXtpZigoQT1BLnZhbHVlT2YoKSk9PT0oZT1lLnZhbHVlT2YoKSl8fEEhPUEmJmUhPWUpcmV0dXJuITA7aWYoIUF8fCFlKXJldHVybiExfXJldHVybiEoImZ1bmN0aW9uIiE9dHlwZW9mIEEuZXF1YWxzfHwiZnVuY3Rpb24iIT10eXBlb2YgZS5lcXVhbHN8fCFBLmVxdWFscyhlKSl9ZnVuY3Rpb24gc0EoQSxlKXtpZihBPT09ZSlyZXR1cm4hMDtpZighbyhlKXx8dm9pZCAwIT09QS5zaXplJiZ2b2lkIDAhPT1lLnNpemUmJkEuc2l6ZSE9PWUuc2l6ZXx8dm9pZCAwIT09QS5fX2hhc2gmJnZvaWQgMCE9PWUuX19oYXNoJiZBLl9faGFzaCE9PWUuX19oYXNofHxzKEEpIT09cyhlKXx8YShBKSE9PWEoZSl8fGMoQSkhPT1jKGUpKXJldHVybiExO2lmKDA9PT1BLnNpemUmJjA9PT1lLnNpemUpcmV0dXJuITA7dmFyIHQ9IUIoQSk7aWYoYyhBKSl7dmFyIG49QS5lbnRyaWVzKCk7cmV0dXJuIGUuZXZlcnkoKGZ1bmN0aW9uKEEsZSl7dmFyIGk9bi5uZXh0KCkudmFsdWU7cmV0dXJuIGkmJm9BKGlbMV0sQSkmJih0fHxvQShpWzBdLGUpKX0pKSYmbi5uZXh0KCkuZG9uZX12YXIgaT0hMTtpZih2b2lkIDA9PT1BLnNpemUpaWYodm9pZCAwPT09ZS5zaXplKSJmdW5jdGlvbiI9PXR5cGVvZiBBLmNhY2hlUmVzdWx0JiZBLmNhY2hlUmVzdWx0KCk7ZWxzZXtpPSEwO3ZhciByPUE7QT1lLGU9cn12YXIgZz0hMCxFPWUuX19pdGVyYXRlKChmdW5jdGlvbihlLG4pe2lmKHQ/IUEuaGFzKGUpOmk/IW9BKGUsQS5nZXQobixsKSk6IW9BKEEuZ2V0KG4sbCksZSkpcmV0dXJuIGc9ITEsITF9KSk7cmV0dXJuIGcmJkEuc2l6ZT09PUV9ZnVuY3Rpb24gYUEoQSxlKXtpZighKHRoaXMgaW5zdGFuY2VvZiBhQSkpcmV0dXJuIG5ldyBhQShBLGUpO2lmKHRoaXMuX3ZhbHVlPUEsdGhpcy5zaXplPXZvaWQgMD09PWU/MS8wOk1hdGgubWF4KDAsZSksMD09PXRoaXMuc2l6ZSl7aWYoeSlyZXR1cm4geTt5PXRoaXN9fWZ1bmN0aW9uIEJBKEEsZSl7aWYoIUEpdGhyb3cgbmV3IEVycm9yKGUpfWZ1bmN0aW9uIGNBKEEsZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBjQSkpcmV0dXJuIG5ldyBjQShBLGUsdCk7aWYoQkEoMCE9PXQsIkNhbm5vdCBzdGVwIGEgUmFuZ2UgYnkgMCIpLEE9QXx8MCx2b2lkIDA9PT1lJiYoZT0xLzApLHQ9dm9pZCAwPT09dD8xOk1hdGguYWJzKHQpLGU8QSYmKHQ9LXQpLHRoaXMuX3N0YXJ0PUEsdGhpcy5fZW5kPWUsdGhpcy5fc3RlcD10LHRoaXMuc2l6ZT1NYXRoLm1heCgwLE1hdGguY2VpbCgoZS1BKS90LTEpKzEpLDA9PT10aGlzLnNpemUpe2lmKFQpcmV0dXJuIFQ7VD10aGlzfX1mdW5jdGlvbiBnQSgpe3Rocm93IFR5cGVFcnJvcigiQWJzdHJhY3QiKX1mdW5jdGlvbiBFQSgpe31mdW5jdGlvbiBRQSgpe31mdW5jdGlvbiB1QSgpe31HLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJbSXRlcmF0b3JdIn0sRy5LRVlTPTAsRy5WQUxVRVM9MSxHLkVOVFJJRVM9MixHLnByb3RvdHlwZS5pbnNwZWN0PUcucHJvdG90eXBlLnRvU291cmNlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9TdHJpbmcoKX0sRy5wcm90b3R5cGVbUl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30sZSh6LHQpLHoub2Y9ZnVuY3Rpb24oKXtyZXR1cm4geihhcmd1bWVudHMpfSx6LnByb3RvdHlwZS50b1NlcT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSx6LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9fdG9TdHJpbmcoIlNlcSB7IiwifSIpfSx6LnByb3RvdHlwZS5jYWNoZVJlc3VsdD1mdW5jdGlvbigpe3JldHVybiF0aGlzLl9jYWNoZSYmdGhpcy5fX2l0ZXJhdGVVbmNhY2hlZCYmKHRoaXMuX2NhY2hlPXRoaXMuZW50cnlTZXEoKS50b0FycmF5KCksdGhpcy5zaXplPXRoaXMuX2NhY2hlLmxlbmd0aCksdGhpc30sei5wcm90b3R5cGUuX19pdGVyYXRlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGVBKHRoaXMsQSxlLCEwKX0sei5wcm90b3R5cGUuX19pdGVyYXRvcj1mdW5jdGlvbihBLGUpe3JldHVybiB0QSh0aGlzLEEsZSwhMCl9LGUoTCx6KSxMLnByb3RvdHlwZS50b0tleWVkU2VxPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LGUoUCx6KSxQLm9mPWZ1bmN0aW9uKCl7cmV0dXJuIFAoYXJndW1lbnRzKX0sUC5wcm90b3R5cGUudG9JbmRleGVkU2VxPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LFAucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX190b1N0cmluZygiU2VxIFsiLCJdIil9LFAucHJvdG90eXBlLl9faXRlcmF0ZT1mdW5jdGlvbihBLGUpe3JldHVybiBlQSh0aGlzLEEsZSwhMSl9LFAucHJvdG90eXBlLl9faXRlcmF0b3I9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdEEodGhpcyxBLGUsITEpfSxlKE8seiksTy5vZj1mdW5jdGlvbigpe3JldHVybiBPKGFyZ3VtZW50cyl9LE8ucHJvdG90eXBlLnRvU2V0U2VxPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LHouaXNTZXE9Wix6LktleWVkPUwsei5TZXQ9Tyx6LkluZGV4ZWQ9UCx6LnByb3RvdHlwZVsiQEBfX0lNTVVUQUJMRV9TRVFfX0BAIl09ITAsZShWLFApLFYucHJvdG90eXBlLmdldD1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLmhhcyhBKT90aGlzLl9hcnJheVttKHRoaXMsQSldOmV9LFYucHJvdG90eXBlLl9faXRlcmF0ZT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD10aGlzLl9hcnJheSxuPXQubGVuZ3RoLTEsaT0wO2k8PW47aSsrKWlmKCExPT09QSh0W2U/bi1pOmldLGksdGhpcykpcmV0dXJuIGkrMTtyZXR1cm4gaX0sVi5wcm90b3R5cGUuX19pdGVyYXRvcj1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuX2FycmF5LG49dC5sZW5ndGgtMSxpPTA7cmV0dXJuIG5ldyBHKChmdW5jdGlvbigpe3JldHVybiBpPm4/e3ZhbHVlOnZvaWQgMCxkb25lOiEwfTpTKEEsaSx0W2U/bi1pKys6aSsrXSl9KSl9LGUoVyxMKSxXLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdm9pZCAwPT09ZXx8dGhpcy5oYXMoQSk/dGhpcy5fb2JqZWN0W0FdOmV9LFcucHJvdG90eXBlLmhhcz1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5fb2JqZWN0Lmhhc093blByb3BlcnR5KEEpfSxXLnByb3RvdHlwZS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9dGhpcy5fb2JqZWN0LG49dGhpcy5fa2V5cyxpPW4ubGVuZ3RoLTEscj0wO3I8PWk7cisrKXt2YXIgbz1uW2U/aS1yOnJdO2lmKCExPT09QSh0W29dLG8sdGhpcykpcmV0dXJuIHIrMX1yZXR1cm4gcn0sVy5wcm90b3R5cGUuX19pdGVyYXRvcj1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuX29iamVjdCxuPXRoaXMuX2tleXMsaT1uLmxlbmd0aC0xLHI9MDtyZXR1cm4gbmV3IEcoKGZ1bmN0aW9uKCl7dmFyIG89bltlP2ktcjpyXTtyZXR1cm4gcisrPmk/e3ZhbHVlOnZvaWQgMCxkb25lOiEwfTpTKEEsbyx0W29dKX0pKX0sVy5wcm90b3R5cGVbdV09ITAsZShLLFApLEsucHJvdG90eXBlLl9faXRlcmF0ZVVuY2FjaGVkPWZ1bmN0aW9uKEEsZSl7aWYoZSlyZXR1cm4gdGhpcy5jYWNoZVJlc3VsdCgpLl9faXRlcmF0ZShBLGUpO3ZhciB0PWsodGhpcy5faXRlcmFibGUpLG49MDtpZih2KHQpKWZvcih2YXIgaTshKGk9dC5uZXh0KCkpLmRvbmUmJiExIT09QShpLnZhbHVlLG4rKyx0aGlzKTspO3JldHVybiBufSxLLnByb3RvdHlwZS5fX2l0ZXJhdG9yVW5jYWNoZWQ9ZnVuY3Rpb24oQSxlKXtpZihlKXJldHVybiB0aGlzLmNhY2hlUmVzdWx0KCkuX19pdGVyYXRvcihBLGUpO3ZhciB0PWsodGhpcy5faXRlcmFibGUpO2lmKCF2KHQpKXJldHVybiBuZXcgRyhiKTt2YXIgbj0wO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXt2YXIgZT10Lm5leHQoKTtyZXR1cm4gZS5kb25lP2U6UyhBLG4rKyxlLnZhbHVlKX0pKX0sZShYLFApLFgucHJvdG90eXBlLl9faXRlcmF0ZVVuY2FjaGVkPWZ1bmN0aW9uKEEsZSl7aWYoZSlyZXR1cm4gdGhpcy5jYWNoZVJlc3VsdCgpLl9faXRlcmF0ZShBLGUpO2Zvcih2YXIgdCxuPXRoaXMuX2l0ZXJhdG9yLGk9dGhpcy5faXRlcmF0b3JDYWNoZSxyPTA7cjxpLmxlbmd0aDspaWYoITE9PT1BKGlbcl0scisrLHRoaXMpKXJldHVybiByO2Zvcig7ISh0PW4ubmV4dCgpKS5kb25lOyl7dmFyIG89dC52YWx1ZTtpZihpW3JdPW8sITE9PT1BKG8scisrLHRoaXMpKWJyZWFrfXJldHVybiByfSxYLnByb3RvdHlwZS5fX2l0ZXJhdG9yVW5jYWNoZWQ9ZnVuY3Rpb24oQSxlKXtpZihlKXJldHVybiB0aGlzLmNhY2hlUmVzdWx0KCkuX19pdGVyYXRvcihBLGUpO3ZhciB0PXRoaXMuX2l0ZXJhdG9yLG49dGhpcy5faXRlcmF0b3JDYWNoZSxpPTA7cmV0dXJuIG5ldyBHKChmdW5jdGlvbigpe2lmKGk+PW4ubGVuZ3RoKXt2YXIgZT10Lm5leHQoKTtpZihlLmRvbmUpcmV0dXJuIGU7bltpXT1lLnZhbHVlfXJldHVybiBTKEEsaSxuW2krK10pfSkpfSxlKGFBLFApLGFBLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy5zaXplPyJSZXBlYXQgW10iOiJSZXBlYXQgWyAiK3RoaXMuX3ZhbHVlKyIgIit0aGlzLnNpemUrIiB0aW1lcyBdIn0sYUEucHJvdG90eXBlLmdldD1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLmhhcyhBKT90aGlzLl92YWx1ZTplfSxhQS5wcm90b3R5cGUuaW5jbHVkZXM9ZnVuY3Rpb24oQSl7cmV0dXJuIG9BKHRoaXMuX3ZhbHVlLEEpfSxhQS5wcm90b3R5cGUuc2xpY2U9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLnNpemU7cmV0dXJuIEQoQSxlLHQpP3RoaXM6bmV3IGFBKHRoaXMuX3ZhbHVlLGYoZSx0KS1ZKEEsdCkpfSxhQS5wcm90b3R5cGUucmV2ZXJzZT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxhQS5wcm90b3R5cGUuaW5kZXhPZj1mdW5jdGlvbihBKXtyZXR1cm4gb0EodGhpcy5fdmFsdWUsQSk/MDotMX0sYUEucHJvdG90eXBlLmxhc3RJbmRleE9mPWZ1bmN0aW9uKEEpe3JldHVybiBvQSh0aGlzLl92YWx1ZSxBKT90aGlzLnNpemU6LTF9LGFBLnByb3RvdHlwZS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9MDt0PHRoaXMuc2l6ZTt0KyspaWYoITE9PT1BKHRoaXMuX3ZhbHVlLHQsdGhpcykpcmV0dXJuIHQrMTtyZXR1cm4gdH0sYUEucHJvdG90eXBlLl9faXRlcmF0b3I9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLG49MDtyZXR1cm4gbmV3IEcoKGZ1bmN0aW9uKCl7cmV0dXJuIG48dC5zaXplP1MoQSxuKyssdC5fdmFsdWUpOnt2YWx1ZTp2b2lkIDAsZG9uZTohMH19KSl9LGFBLnByb3RvdHlwZS5lcXVhbHM9ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBhQT9vQSh0aGlzLl92YWx1ZSxBLl92YWx1ZSk6c0EoQSl9LGUoY0EsUCksY0EucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLnNpemU/IlJhbmdlIFtdIjoiUmFuZ2UgWyAiK3RoaXMuX3N0YXJ0KyIuLi4iK3RoaXMuX2VuZCsoMSE9PXRoaXMuX3N0ZXA/IiBieSAiK3RoaXMuX3N0ZXA6IiIpKyIgXSJ9LGNBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5oYXMoQSk/dGhpcy5fc3RhcnQrbSh0aGlzLEEpKnRoaXMuX3N0ZXA6ZX0sY0EucHJvdG90eXBlLmluY2x1ZGVzPWZ1bmN0aW9uKEEpe3ZhciBlPShBLXRoaXMuX3N0YXJ0KS90aGlzLl9zdGVwO3JldHVybiBlPj0wJiZlPHRoaXMuc2l6ZSYmZT09PU1hdGguZmxvb3IoZSl9LGNBLnByb3RvdHlwZS5zbGljZT1mdW5jdGlvbihBLGUpe3JldHVybiBEKEEsZSx0aGlzLnNpemUpP3RoaXM6KEE9WShBLHRoaXMuc2l6ZSksKGU9ZihlLHRoaXMuc2l6ZSkpPD1BP25ldyBjQSgwLDApOm5ldyBjQSh0aGlzLmdldChBLHRoaXMuX2VuZCksdGhpcy5nZXQoZSx0aGlzLl9lbmQpLHRoaXMuX3N0ZXApKX0sY0EucHJvdG90eXBlLmluZGV4T2Y9ZnVuY3Rpb24oQSl7dmFyIGU9QS10aGlzLl9zdGFydDtpZihlJXRoaXMuX3N0ZXA9PTApe3ZhciB0PWUvdGhpcy5fc3RlcDtpZih0Pj0wJiZ0PHRoaXMuc2l6ZSlyZXR1cm4gdH1yZXR1cm4tMX0sY0EucHJvdG90eXBlLmxhc3RJbmRleE9mPWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmluZGV4T2YoQSl9LGNBLnByb3RvdHlwZS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9dGhpcy5zaXplLTEsbj10aGlzLl9zdGVwLGk9ZT90aGlzLl9zdGFydCt0Km46dGhpcy5fc3RhcnQscj0wO3I8PXQ7cisrKXtpZighMT09PUEoaSxyLHRoaXMpKXJldHVybiByKzE7aSs9ZT8tbjpufXJldHVybiByfSxjQS5wcm90b3R5cGUuX19pdGVyYXRvcj1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuc2l6ZS0xLG49dGhpcy5fc3RlcCxpPWU/dGhpcy5fc3RhcnQrdCpuOnRoaXMuX3N0YXJ0LHI9MDtyZXR1cm4gbmV3IEcoKGZ1bmN0aW9uKCl7dmFyIG89aTtyZXR1cm4gaSs9ZT8tbjpuLHI+dD97dmFsdWU6dm9pZCAwLGRvbmU6ITB9OlMoQSxyKyssbyl9KSl9LGNBLnByb3RvdHlwZS5lcXVhbHM9ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBjQT90aGlzLl9zdGFydD09PUEuX3N0YXJ0JiZ0aGlzLl9lbmQ9PT1BLl9lbmQmJnRoaXMuX3N0ZXA9PT1BLl9zdGVwOnNBKHRoaXMsQSl9LGUoZ0EsdCksZShFQSxnQSksZShRQSxnQSksZSh1QSxnQSksZ0EuS2V5ZWQ9RUEsZ0EuSW5kZXhlZD1RQSxnQS5TZXQ9dUE7dmFyIGxBPSJmdW5jdGlvbiI9PXR5cGVvZiBNYXRoLmltdWwmJi0yPT09TWF0aC5pbXVsKDQyOTQ5NjcyOTUsMik/TWF0aC5pbXVsOmZ1bmN0aW9uKEEsZSl7dmFyIHQ9NjU1MzUmKEF8PTApLG49NjU1MzUmKGV8PTApO3JldHVybiB0Km4rKChBPj4+MTYpKm4rdCooZT4+PjE2KTw8MTY+Pj4wKXwwfTtmdW5jdGlvbiBoQShBKXtyZXR1cm4gQT4+PjEmMTA3Mzc0MTgyNHwzMjIxMjI1NDcxJkF9ZnVuY3Rpb24gd0EoQSl7aWYoITE9PT1BfHxudWxsPT1BKXJldHVybiAwO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBBLnZhbHVlT2YmJighMT09PShBPUEudmFsdWVPZigpKXx8bnVsbD09QSkpcmV0dXJuIDA7aWYoITA9PT1BKXJldHVybiAxO3ZhciBlPXR5cGVvZiBBO2lmKCJudW1iZXIiPT09ZSl7aWYoQSE9QXx8QT09PTEvMClyZXR1cm4gMDt2YXIgdD0wfEE7Zm9yKHQhPT1BJiYodF49NDI5NDk2NzI5NSpBKTtBPjQyOTQ5NjcyOTU7KXRePUEvPTQyOTQ5NjcyOTU7cmV0dXJuIGhBKHQpfWlmKCJzdHJpbmciPT09ZSlyZXR1cm4gQS5sZW5ndGg+REE/ZnVuY3Rpb24oQSl7dmFyIGU9TkFbQV07cmV0dXJuIHZvaWQgMD09PWUmJihlPUNBKEEpLGZBPT09WUEmJihmQT0wLE5BPXt9KSxmQSsrLE5BW0FdPWUpLGV9KEEpOkNBKEEpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBBLmhhc2hDb2RlKXJldHVybiBBLmhhc2hDb2RlKCk7aWYoIm9iamVjdCI9PT1lKXJldHVybiBmdW5jdGlvbihBKXt2YXIgZTtpZihwQSYmdm9pZCAwIT09KGU9SUEuZ2V0KEEpKSlyZXR1cm4gZTtpZih2b2lkIDAhPT0oZT1BW0ZBXSkpcmV0dXJuIGU7aWYoIWRBKXtpZih2b2lkIDAhPT0oZT1BLnByb3BlcnR5SXNFbnVtZXJhYmxlJiZBLnByb3BlcnR5SXNFbnVtZXJhYmxlW0ZBXSkpcmV0dXJuIGU7aWYodm9pZCAwIT09KGU9ZnVuY3Rpb24oQSl7aWYoQSYmQS5ub2RlVHlwZT4wKXN3aXRjaChBLm5vZGVUeXBlKXtjYXNlIDE6cmV0dXJuIEEudW5pcXVlSUQ7Y2FzZSA5OnJldHVybiBBLmRvY3VtZW50RWxlbWVudCYmQS5kb2N1bWVudEVsZW1lbnQudW5pcXVlSUR9fShBKSkpcmV0dXJuIGV9aWYoZT0rK21BLDEwNzM3NDE4MjQmbUEmJihtQT0wKSxwQSlJQS5zZXQoQSxlKTtlbHNle2lmKHZvaWQgMCE9PU1BJiYhMT09PU1BKEEpKXRocm93IG5ldyBFcnJvcigiTm9uLWV4dGVuc2libGUgb2JqZWN0cyBhcmUgbm90IGFsbG93ZWQgYXMga2V5cy4iKTtpZihkQSlPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxGQSx7ZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITEsd3JpdGFibGU6ITEsdmFsdWU6ZX0pO2Vsc2UgaWYodm9pZCAwIT09QS5wcm9wZXJ0eUlzRW51bWVyYWJsZSYmQS5wcm9wZXJ0eUlzRW51bWVyYWJsZT09PUEuY29uc3RydWN0b3IucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlKUEucHJvcGVydHlJc0VudW1lcmFibGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb25zdHJ1Y3Rvci5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxBLnByb3BlcnR5SXNFbnVtZXJhYmxlW0ZBXT1lO2Vsc2V7aWYodm9pZCAwPT09QS5ub2RlVHlwZSl0aHJvdyBuZXcgRXJyb3IoIlVuYWJsZSB0byBzZXQgYSBub24tZW51bWVyYWJsZSBwcm9wZXJ0eSBvbiBvYmplY3QuIik7QVtGQV09ZX19cmV0dXJuIGV9KEEpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBBLnRvU3RyaW5nKXJldHVybiBDQShBLnRvU3RyaW5nKCkpO3Rocm93IG5ldyBFcnJvcigiVmFsdWUgdHlwZSAiK2UrIiBjYW5ub3QgYmUgaGFzaGVkLiIpfWZ1bmN0aW9uIENBKEEpe2Zvcih2YXIgZT0wLHQ9MDt0PEEubGVuZ3RoO3QrKyllPTMxKmUrQS5jaGFyQ29kZUF0KHQpfDA7cmV0dXJuIGhBKGUpfXZhciBJQSxNQT1PYmplY3QuaXNFeHRlbnNpYmxlLGRBPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoe30sIkAiLHt9KSwhMH1jYXRjaChBKXtyZXR1cm4hMX19KCkscEE9ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtNYXA7cEEmJihJQT1uZXcgV2Vha01hcCk7dmFyIG1BPTAsRkE9Il9faW1tdXRhYmxlaGFzaF9fIjsiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYoRkE9U3ltYm9sKEZBKSk7dmFyIERBPTE2LFlBPTI1NSxmQT0wLE5BPXt9O2Z1bmN0aW9uIFVBKEEpe0JBKEEhPT0xLzAsIkNhbm5vdCBwZXJmb3JtIHRoaXMgYWN0aW9uIHdpdGggYW4gaW5maW5pdGUgc2l6ZS4iKX1mdW5jdGlvbiB5QShBKXtyZXR1cm4gbnVsbD09QT9QQSgpOlRBKEEpJiYhYyhBKT9BOlBBKCkud2l0aE11dGF0aW9ucygoZnVuY3Rpb24oZSl7dmFyIHQ9bihBKTtVQSh0LnNpemUpLHQuZm9yRWFjaCgoZnVuY3Rpb24oQSx0KXtyZXR1cm4gZS5zZXQodCxBKX0pKX0pKX1mdW5jdGlvbiBUQShBKXtyZXR1cm4hKCFBfHwhQVtSQV0pfWUoeUEsRUEpLHlBLm9mPWZ1bmN0aW9uKCl7dmFyIGU9QS5jYWxsKGFyZ3VtZW50cywwKTtyZXR1cm4gUEEoKS53aXRoTXV0YXRpb25zKChmdW5jdGlvbihBKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrPTIpe2lmKHQrMT49ZS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIHZhbHVlIGZvciBrZXk6ICIrZVt0XSk7QS5zZXQoZVt0XSxlW3QrMV0pfX0pKX0seUEucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX190b1N0cmluZygiTWFwIHsiLCJ9Iil9LHlBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5fcm9vdD90aGlzLl9yb290LmdldCgwLHZvaWQgMCxBLGUpOmV9LHlBLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gT0EodGhpcyxBLGUpfSx5QS5wcm90b3R5cGUuc2V0SW49ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy51cGRhdGVJbihBLGwsKGZ1bmN0aW9uKCl7cmV0dXJuIGV9KSl9LHlBLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oQSl7cmV0dXJuIE9BKHRoaXMsQSxsKX0seUEucHJvdG90eXBlLmRlbGV0ZUluPWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLnVwZGF0ZUluKEEsKGZ1bmN0aW9uKCl7cmV0dXJuIGx9KSl9LHlBLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD9BKHRoaXMpOnRoaXMudXBkYXRlSW4oW0FdLGUsdCl9LHlBLnByb3RvdHlwZS51cGRhdGVJbj1mdW5jdGlvbihBLGUsdCl7dHx8KHQ9ZSxlPXZvaWQgMCk7dmFyIG49ZnVuY3Rpb24gQShlLHQsbixpKXt2YXIgcj1lPT09bCxvPXQubmV4dCgpO2lmKG8uZG9uZSl7dmFyIHM9cj9uOmUsYT1pKHMpO3JldHVybiBhPT09cz9lOmF9QkEocnx8ZSYmZS5zZXQsImludmFsaWQga2V5UGF0aCIpO3ZhciBCPW8udmFsdWUsYz1yP2w6ZS5nZXQoQixsKSxnPUEoYyx0LG4saSk7cmV0dXJuIGc9PT1jP2U6Zz09PWw/ZS5yZW1vdmUoQik6KHI/UEEoKTplKS5zZXQoQixnKX0odGhpcyxYZShBKSxlLHQpO3JldHVybiBuPT09bD92b2lkIDA6bn0seUEucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLnNpemU/dGhpczp0aGlzLl9fb3duZXJJRD8odGhpcy5zaXplPTAsdGhpcy5fcm9vdD1udWxsLHRoaXMuX19oYXNoPXZvaWQgMCx0aGlzLl9fYWx0ZXJlZD0hMCx0aGlzKTpQQSgpfSx5QS5wcm90b3R5cGUubWVyZ2U9ZnVuY3Rpb24oKXtyZXR1cm4gWEEodGhpcyx2b2lkIDAsYXJndW1lbnRzKX0seUEucHJvdG90eXBlLm1lcmdlV2l0aD1mdW5jdGlvbihlKXt2YXIgdD1BLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiBYQSh0aGlzLGUsdCl9LHlBLnByb3RvdHlwZS5tZXJnZUluPWZ1bmN0aW9uKGUpe3ZhciB0PUEuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIHRoaXMudXBkYXRlSW4oZSxQQSgpLChmdW5jdGlvbihBKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgQS5tZXJnZT9BLm1lcmdlLmFwcGx5KEEsdCk6dFt0Lmxlbmd0aC0xXX0pKX0seUEucHJvdG90eXBlLm1lcmdlRGVlcD1mdW5jdGlvbigpe3JldHVybiBYQSh0aGlzLFpBLGFyZ3VtZW50cyl9LHlBLnByb3RvdHlwZS5tZXJnZURlZXBXaXRoPWZ1bmN0aW9uKGUpe3ZhciB0PUEuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIFhBKHRoaXMsX0EoZSksdCl9LHlBLnByb3RvdHlwZS5tZXJnZURlZXBJbj1mdW5jdGlvbihlKXt2YXIgdD1BLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiB0aGlzLnVwZGF0ZUluKGUsUEEoKSwoZnVuY3Rpb24oQSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIEEubWVyZ2VEZWVwP0EubWVyZ2VEZWVwLmFwcGx5KEEsdCk6dFt0Lmxlbmd0aC0xXX0pKX0seUEucHJvdG90eXBlLnNvcnQ9ZnVuY3Rpb24oQSl7cmV0dXJuIGRlKHZlKHRoaXMsQSkpfSx5QS5wcm90b3R5cGUuc29ydEJ5PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGRlKHZlKHRoaXMsZSxBKSl9LHlBLnByb3RvdHlwZS53aXRoTXV0YXRpb25zPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuYXNNdXRhYmxlKCk7cmV0dXJuIEEoZSksZS53YXNBbHRlcmVkKCk/ZS5fX2Vuc3VyZU93bmVyKHRoaXMuX19vd25lcklEKTp0aGlzfSx5QS5wcm90b3R5cGUuYXNNdXRhYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX19vd25lcklEP3RoaXM6dGhpcy5fX2Vuc3VyZU93bmVyKG5ldyBNKX0seUEucHJvdG90eXBlLmFzSW1tdXRhYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX19lbnN1cmVPd25lcigpfSx5QS5wcm90b3R5cGUud2FzQWx0ZXJlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9fYWx0ZXJlZH0seUEucHJvdG90eXBlLl9faXRlcmF0b3I9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IGpBKHRoaXMsQSxlKX0seUEucHJvdG90eXBlLl9faXRlcmF0ZT1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMsbj0wO3JldHVybiB0aGlzLl9yb290JiZ0aGlzLl9yb290Lml0ZXJhdGUoKGZ1bmN0aW9uKGUpe3JldHVybiBuKyssQShlWzFdLGVbMF0sdCl9KSxlKSxufSx5QS5wcm90b3R5cGUuX19lbnN1cmVPd25lcj1mdW5jdGlvbihBKXtyZXR1cm4gQT09PXRoaXMuX19vd25lcklEP3RoaXM6QT9MQSh0aGlzLnNpemUsdGhpcy5fcm9vdCxBLHRoaXMuX19oYXNoKToodGhpcy5fX293bmVySUQ9QSx0aGlzLl9fYWx0ZXJlZD0hMSx0aGlzKX0seUEuaXNNYXA9VEE7dmFyIHhBLFJBPSJAQF9fSU1NVVRBQkxFX01BUF9fQEAiLEdBPXlBLnByb3RvdHlwZTtmdW5jdGlvbiBTQShBLGUpe3RoaXMub3duZXJJRD1BLHRoaXMuZW50cmllcz1lfWZ1bmN0aW9uIGJBKEEsZSx0KXt0aGlzLm93bmVySUQ9QSx0aGlzLmJpdG1hcD1lLHRoaXMubm9kZXM9dH1mdW5jdGlvbiBIQShBLGUsdCl7dGhpcy5vd25lcklEPUEsdGhpcy5jb3VudD1lLHRoaXMubm9kZXM9dH1mdW5jdGlvbiB2QShBLGUsdCl7dGhpcy5vd25lcklEPUEsdGhpcy5rZXlIYXNoPWUsdGhpcy5lbnRyaWVzPXR9ZnVuY3Rpb24ga0EoQSxlLHQpe3RoaXMub3duZXJJRD1BLHRoaXMua2V5SGFzaD1lLHRoaXMuZW50cnk9dH1mdW5jdGlvbiBqQShBLGUsdCl7dGhpcy5fdHlwZT1lLHRoaXMuX3JldmVyc2U9dCx0aGlzLl9zdGFjaz1BLl9yb290JiZ6QShBLl9yb290KX1mdW5jdGlvbiBKQShBLGUpe3JldHVybiBTKEEsZVswXSxlWzFdKX1mdW5jdGlvbiB6QShBLGUpe3JldHVybntub2RlOkEsaW5kZXg6MCxfX3ByZXY6ZX19ZnVuY3Rpb24gTEEoQSxlLHQsbil7dmFyIGk9T2JqZWN0LmNyZWF0ZShHQSk7cmV0dXJuIGkuc2l6ZT1BLGkuX3Jvb3Q9ZSxpLl9fb3duZXJJRD10LGkuX19oYXNoPW4saS5fX2FsdGVyZWQ9ITEsaX1mdW5jdGlvbiBQQSgpe3JldHVybiB4QXx8KHhBPUxBKDApKX1mdW5jdGlvbiBPQShBLGUsdCl7dmFyIG4saTtpZihBLl9yb290KXt2YXIgcj1DKGgpLG89Qyh3KTtpZihuPVZBKEEuX3Jvb3QsQS5fX293bmVySUQsMCx2b2lkIDAsZSx0LHIsbyksIW8udmFsdWUpcmV0dXJuIEE7aT1BLnNpemUrKHIudmFsdWU/dD09PWw/LTE6MTowKX1lbHNle2lmKHQ9PT1sKXJldHVybiBBO2k9MSxuPW5ldyBTQShBLl9fb3duZXJJRCxbW2UsdF1dKX1yZXR1cm4gQS5fX293bmVySUQ/KEEuc2l6ZT1pLEEuX3Jvb3Q9bixBLl9faGFzaD12b2lkIDAsQS5fX2FsdGVyZWQ9ITAsQSk6bj9MQShpLG4pOlBBKCl9ZnVuY3Rpb24gVkEoQSxlLHQsbixpLHIsbyxzKXtyZXR1cm4gQT9BLnVwZGF0ZShlLHQsbixpLHIsbyxzKTpyPT09bD9BOihJKHMpLEkobyksbmV3IGtBKGUsbixbaSxyXSkpfWZ1bmN0aW9uIFdBKEEpe3JldHVybiBBLmNvbnN0cnVjdG9yPT09a0F8fEEuY29uc3RydWN0b3I9PT12QX1mdW5jdGlvbiBLQShBLGUsdCxuLGkpe2lmKEEua2V5SGFzaD09PW4pcmV0dXJuIG5ldyB2QShlLG4sW0EuZW50cnksaV0pO3ZhciByLG89MzEmKDA9PT10P0Eua2V5SGFzaDpBLmtleUhhc2g+Pj50KSxzPTMxJigwPT09dD9uOm4+Pj50KTtyZXR1cm4gbmV3IGJBKGUsMTw8b3wxPDxzLG89PT1zP1tLQShBLGUsdCs1LG4saSldOihyPW5ldyBrQShlLG4saSksbzxzP1tBLHJdOltyLEFdKSl9ZnVuY3Rpb24gWEEoQSxlLHQpe2Zvcih2YXIgaT1bXSxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBzPXRbcl0sYT1uKHMpO28ocyl8fChhPWEubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gbkEoQSl9KSkpLGkucHVzaChhKX1yZXR1cm4gcUEoQSxlLGkpfWZ1bmN0aW9uIFpBKEEsZSx0KXtyZXR1cm4gQSYmQS5tZXJnZURlZXAmJm8oZSk/QS5tZXJnZURlZXAoZSk6b0EoQSxlKT9BOmV9ZnVuY3Rpb24gX0EoQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCxuKXtpZihlJiZlLm1lcmdlRGVlcFdpdGgmJm8odCkpcmV0dXJuIGUubWVyZ2VEZWVwV2l0aChBLHQpO3ZhciBpPUEoZSx0LG4pO3JldHVybiBvQShlLGkpP2U6aX19ZnVuY3Rpb24gcUEoQSxlLHQpe3JldHVybiAwPT09KHQ9dC5maWx0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiAwIT09QS5zaXplfSkpKS5sZW5ndGg/QTowIT09QS5zaXplfHxBLl9fb3duZXJJRHx8MSE9PXQubGVuZ3RoP0Eud2l0aE11dGF0aW9ucygoZnVuY3Rpb24oQSl7Zm9yKHZhciBuPWU/ZnVuY3Rpb24odCxuKXtBLnVwZGF0ZShuLGwsKGZ1bmN0aW9uKEEpe3JldHVybiBBPT09bD90OmUoQSx0LG4pfSkpfTpmdW5jdGlvbihlLHQpe0Euc2V0KHQsZSl9LGk9MDtpPHQubGVuZ3RoO2krKyl0W2ldLmZvckVhY2gobil9KSk6QS5jb25zdHJ1Y3Rvcih0WzBdKX1mdW5jdGlvbiAkQShBKXtyZXR1cm4gQT0oQT0oODU4OTkzNDU5JihBLT1BPj4xJjE0MzE2NTU3NjUpKSsoQT4+MiY4NTg5OTM0NTkpKSsoQT4+NCkmMjUyNjQ1MTM1LEErPUE+PjgsMTI3JihBKz1BPj4xNil9ZnVuY3Rpb24gQWUoQSxlLHQsbil7dmFyIGk9bj9BOmQoQSk7cmV0dXJuIGlbZV09dCxpfUdBW1JBXT0hMCxHQS5kZWxldGU9R0EucmVtb3ZlLEdBLnJlbW92ZUluPUdBLmRlbGV0ZUluLFNBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlLHQsbil7Zm9yKHZhciBpPXRoaXMuZW50cmllcyxyPTAsbz1pLmxlbmd0aDtyPG87cisrKWlmKG9BKHQsaVtyXVswXSkpcmV0dXJuIGlbcl1bMV07cmV0dXJuIG59LFNBLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyl7Zm9yKHZhciBzPWk9PT1sLGE9dGhpcy5lbnRyaWVzLEI9MCxjPWEubGVuZ3RoO0I8YyYmIW9BKG4sYVtCXVswXSk7QisrKTt2YXIgZz1CPGM7aWYoZz9hW0JdWzFdPT09aTpzKXJldHVybiB0aGlzO2lmKEkobyksKHN8fCFnKSYmSShyKSwhc3x8MSE9PWEubGVuZ3RoKXtpZighZyYmIXMmJmEubGVuZ3RoPj1lZSlyZXR1cm4gZnVuY3Rpb24oQSxlLHQsbil7QXx8KEE9bmV3IE0pO2Zvcih2YXIgaT1uZXcga0EoQSx3QSh0KSxbdCxuXSkscj0wO3I8ZS5sZW5ndGg7cisrKXt2YXIgbz1lW3JdO2k9aS51cGRhdGUoQSwwLHZvaWQgMCxvWzBdLG9bMV0pfXJldHVybiBpfShBLGEsbixpKTt2YXIgRT1BJiZBPT09dGhpcy5vd25lcklELFE9RT9hOmQoYSk7cmV0dXJuIGc/cz9CPT09Yy0xP1EucG9wKCk6UVtCXT1RLnBvcCgpOlFbQl09W24saV06US5wdXNoKFtuLGldKSxFPyh0aGlzLmVudHJpZXM9USx0aGlzKTpuZXcgU0EoQSxRKX19LGJBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlLHQsbil7dm9pZCAwPT09ZSYmKGU9d0EodCkpO3ZhciBpPTE8PCgzMSYoMD09PUE/ZTplPj4+QSkpLHI9dGhpcy5iaXRtYXA7cmV0dXJuIDA9PShyJmkpP246dGhpcy5ub2Rlc1skQShyJmktMSldLmdldChBKzUsZSx0LG4pfSxiQS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8pe3ZvaWQgMD09PXQmJih0PXdBKG4pKTt2YXIgcz0zMSYoMD09PWU/dDp0Pj4+ZSksYT0xPDxzLEI9dGhpcy5iaXRtYXAsYz0wIT0oQiZhKTtpZighYyYmaT09PWwpcmV0dXJuIHRoaXM7dmFyIGc9JEEoQiZhLTEpLEU9dGhpcy5ub2RlcyxRPWM/RVtnXTp2b2lkIDAsdT1WQShRLEEsZSs1LHQsbixpLHIsbyk7aWYodT09PVEpcmV0dXJuIHRoaXM7aWYoIWMmJnUmJkUubGVuZ3RoPj10ZSlyZXR1cm4gZnVuY3Rpb24oQSxlLHQsbixpKXtmb3IodmFyIHI9MCxvPW5ldyBBcnJheSgzMikscz0wOzAhPT10O3MrKyx0Pj4+PTEpb1tzXT0xJnQ/ZVtyKytdOnZvaWQgMDtyZXR1cm4gb1tuXT1pLG5ldyBIQShBLHIrMSxvKX0oQSxFLEIscyx1KTtpZihjJiYhdSYmMj09PUUubGVuZ3RoJiZXQShFWzFeZ10pKXJldHVybiBFWzFeZ107aWYoYyYmdSYmMT09PUUubGVuZ3RoJiZXQSh1KSlyZXR1cm4gdTt2YXIgaD1BJiZBPT09dGhpcy5vd25lcklELHc9Yz91P0I6Ql5hOkJ8YSxDPWM/dT9BZShFLGcsdSxoKTpmdW5jdGlvbihBLGUsdCl7dmFyIG49QS5sZW5ndGgtMTtpZih0JiZlPT09bilyZXR1cm4gQS5wb3AoKSxBO2Zvcih2YXIgaT1uZXcgQXJyYXkobikscj0wLG89MDtvPG47bysrKW89PT1lJiYocj0xKSxpW29dPUFbbytyXTtyZXR1cm4gaX0oRSxnLGgpOmZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpPUEubGVuZ3RoKzE7aWYobiYmZSsxPT09aSlyZXR1cm4gQVtlXT10LEE7Zm9yKHZhciByPW5ldyBBcnJheShpKSxvPTAscz0wO3M8aTtzKyspcz09PWU/KHJbc109dCxvPS0xKTpyW3NdPUFbcytvXTtyZXR1cm4gcn0oRSxnLHUsaCk7cmV0dXJuIGg/KHRoaXMuYml0bWFwPXcsdGhpcy5ub2Rlcz1DLHRoaXMpOm5ldyBiQShBLHcsQyl9LEhBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlLHQsbil7dm9pZCAwPT09ZSYmKGU9d0EodCkpO3ZhciBpPTMxJigwPT09QT9lOmU+Pj5BKSxyPXRoaXMubm9kZXNbaV07cmV0dXJuIHI/ci5nZXQoQSs1LGUsdCxuKTpufSxIQS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8pe3ZvaWQgMD09PXQmJih0PXdBKG4pKTt2YXIgcz0zMSYoMD09PWU/dDp0Pj4+ZSksYT1pPT09bCxCPXRoaXMubm9kZXMsYz1CW3NdO2lmKGEmJiFjKXJldHVybiB0aGlzO3ZhciBnPVZBKGMsQSxlKzUsdCxuLGkscixvKTtpZihnPT09YylyZXR1cm4gdGhpczt2YXIgRT10aGlzLmNvdW50O2lmKGMpe2lmKCFnJiYtLUU8bmUpcmV0dXJuIGZ1bmN0aW9uKEEsZSx0LG4pe2Zvcih2YXIgaT0wLHI9MCxvPW5ldyBBcnJheSh0KSxzPTAsYT0xLEI9ZS5sZW5ndGg7czxCO3MrKyxhPDw9MSl7dmFyIGM9ZVtzXTt2b2lkIDAhPT1jJiZzIT09biYmKGl8PWEsb1tyKytdPWMpfXJldHVybiBuZXcgYkEoQSxpLG8pfShBLEIsRSxzKX1lbHNlIEUrKzt2YXIgUT1BJiZBPT09dGhpcy5vd25lcklELHU9QWUoQixzLGcsUSk7cmV0dXJuIFE/KHRoaXMuY291bnQ9RSx0aGlzLm5vZGVzPXUsdGhpcyk6bmV3IEhBKEEsRSx1KX0sdkEucHJvdG90eXBlLmdldD1mdW5jdGlvbihBLGUsdCxuKXtmb3IodmFyIGk9dGhpcy5lbnRyaWVzLHI9MCxvPWkubGVuZ3RoO3I8bztyKyspaWYob0EodCxpW3JdWzBdKSlyZXR1cm4gaVtyXVsxXTtyZXR1cm4gbn0sdkEucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihBLGUsdCxuLGkscixvKXt2b2lkIDA9PT10JiYodD13QShuKSk7dmFyIHM9aT09PWw7aWYodCE9PXRoaXMua2V5SGFzaClyZXR1cm4gcz90aGlzOihJKG8pLEkociksS0EodGhpcyxBLGUsdCxbbixpXSkpO2Zvcih2YXIgYT10aGlzLmVudHJpZXMsQj0wLGM9YS5sZW5ndGg7QjxjJiYhb0EobixhW0JdWzBdKTtCKyspO3ZhciBnPUI8YztpZihnP2FbQl1bMV09PT1pOnMpcmV0dXJuIHRoaXM7aWYoSShvKSwoc3x8IWcpJiZJKHIpLHMmJjI9PT1jKXJldHVybiBuZXcga0EoQSx0aGlzLmtleUhhc2gsYVsxXkJdKTt2YXIgRT1BJiZBPT09dGhpcy5vd25lcklELFE9RT9hOmQoYSk7cmV0dXJuIGc/cz9CPT09Yy0xP1EucG9wKCk6UVtCXT1RLnBvcCgpOlFbQl09W24saV06US5wdXNoKFtuLGldKSxFPyh0aGlzLmVudHJpZXM9USx0aGlzKTpuZXcgdkEoQSx0aGlzLmtleUhhc2gsUSl9LGtBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIG9BKHQsdGhpcy5lbnRyeVswXSk/dGhpcy5lbnRyeVsxXTpufSxrQS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8pe3ZhciBzPWk9PT1sLGE9b0Eobix0aGlzLmVudHJ5WzBdKTtyZXR1cm4oYT9pPT09dGhpcy5lbnRyeVsxXTpzKT90aGlzOihJKG8pLHM/dm9pZCBJKHIpOmE/QSYmQT09PXRoaXMub3duZXJJRD8odGhpcy5lbnRyeVsxXT1pLHRoaXMpOm5ldyBrQShBLHRoaXMua2V5SGFzaCxbbixpXSk6KEkociksS0EodGhpcyxBLGUsd0EobiksW24saV0pKSl9LFNBLnByb3RvdHlwZS5pdGVyYXRlPXZBLnByb3RvdHlwZS5pdGVyYXRlPWZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PXRoaXMuZW50cmllcyxuPTAsaT10Lmxlbmd0aC0xO248PWk7bisrKWlmKCExPT09QSh0W2U/aS1uOm5dKSlyZXR1cm4hMX0sYkEucHJvdG90eXBlLml0ZXJhdGU9SEEucHJvdG90eXBlLml0ZXJhdGU9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9dGhpcy5ub2RlcyxuPTAsaT10Lmxlbmd0aC0xO248PWk7bisrKXt2YXIgcj10W2U/aS1uOm5dO2lmKHImJiExPT09ci5pdGVyYXRlKEEsZSkpcmV0dXJuITF9fSxrQS5wcm90b3R5cGUuaXRlcmF0ZT1mdW5jdGlvbihBLGUpe3JldHVybiBBKHRoaXMuZW50cnkpfSxlKGpBLEcpLGpBLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7Zm9yKHZhciBBPXRoaXMuX3R5cGUsZT10aGlzLl9zdGFjaztlOyl7dmFyIHQsbj1lLm5vZGUsaT1lLmluZGV4Kys7aWYobi5lbnRyeSl7aWYoMD09PWkpcmV0dXJuIEpBKEEsbi5lbnRyeSl9ZWxzZSBpZihuLmVudHJpZXMpe2lmKGk8PSh0PW4uZW50cmllcy5sZW5ndGgtMSkpcmV0dXJuIEpBKEEsbi5lbnRyaWVzW3RoaXMuX3JldmVyc2U/dC1pOmldKX1lbHNlIGlmKGk8PSh0PW4ubm9kZXMubGVuZ3RoLTEpKXt2YXIgcj1uLm5vZGVzW3RoaXMuX3JldmVyc2U/dC1pOmldO2lmKHIpe2lmKHIuZW50cnkpcmV0dXJuIEpBKEEsci5lbnRyeSk7ZT10aGlzLl9zdGFjaz16QShyLGUpfWNvbnRpbnVlfWU9dGhpcy5fc3RhY2s9dGhpcy5fc3RhY2suX19wcmV2fXJldHVybnt2YWx1ZTp2b2lkIDAsZG9uZTohMH19O3ZhciBlZT04LHRlPTE2LG5lPTg7ZnVuY3Rpb24gaWUoQSl7dmFyIGU9dWUoKTtpZihudWxsPT1BKXJldHVybiBlO2lmKHJlKEEpKXJldHVybiBBO3ZhciB0PWkoQSksbj10LnNpemU7cmV0dXJuIDA9PT1uP2U6KFVBKG4pLG4+MCYmbjwzMj9RZSgwLG4sNSxudWxsLG5ldyBhZSh0LnRvQXJyYXkoKSkpOmUud2l0aE11dGF0aW9ucygoZnVuY3Rpb24oQSl7QS5zZXRTaXplKG4pLHQuZm9yRWFjaCgoZnVuY3Rpb24oZSx0KXtyZXR1cm4gQS5zZXQodCxlKX0pKX0pKSl9ZnVuY3Rpb24gcmUoQSl7cmV0dXJuISghQXx8IUFbb2VdKX1lKGllLFFBKSxpZS5vZj1mdW5jdGlvbigpe3JldHVybiB0aGlzKGFyZ3VtZW50cyl9LGllLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9fdG9TdHJpbmcoIkxpc3QgWyIsIl0iKX0saWUucHJvdG90eXBlLmdldD1mdW5jdGlvbihBLGUpe2lmKChBPW0odGhpcyxBKSk+PTAmJkE8dGhpcy5zaXplKXt2YXIgdD13ZSh0aGlzLEErPXRoaXMuX29yaWdpbik7cmV0dXJuIHQmJnQuYXJyYXlbMzEmQV19cmV0dXJuIGV9LGllLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24oQSxlLHQpe2lmKChlPW0oQSxlKSkhPWUpcmV0dXJuIEE7aWYoZT49QS5zaXplfHxlPDApcmV0dXJuIEEud2l0aE11dGF0aW9ucygoZnVuY3Rpb24oQSl7ZTwwP0NlKEEsZSkuc2V0KDAsdCk6Q2UoQSwwLGUrMSkuc2V0KGUsdCl9KSk7ZSs9QS5fb3JpZ2luO3ZhciBuPUEuX3RhaWwsaT1BLl9yb290LHI9Qyh3KTtyZXR1cm4gZT49TWUoQS5fY2FwYWNpdHkpP249bGUobixBLl9fb3duZXJJRCwwLGUsdCxyKTppPWxlKGksQS5fX293bmVySUQsQS5fbGV2ZWwsZSx0LHIpLHIudmFsdWU/QS5fX293bmVySUQ/KEEuX3Jvb3Q9aSxBLl90YWlsPW4sQS5fX2hhc2g9dm9pZCAwLEEuX19hbHRlcmVkPSEwLEEpOlFlKEEuX29yaWdpbixBLl9jYXBhY2l0eSxBLl9sZXZlbCxpLG4pOkF9KHRoaXMsQSxlKX0saWUucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5oYXMoQSk/MD09PUE/dGhpcy5zaGlmdCgpOkE9PT10aGlzLnNpemUtMT90aGlzLnBvcCgpOnRoaXMuc3BsaWNlKEEsMSk6dGhpc30saWUucHJvdG90eXBlLmluc2VydD1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLnNwbGljZShBLDAsZSl9LGllLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy5zaXplP3RoaXM6dGhpcy5fX293bmVySUQ/KHRoaXMuc2l6ZT10aGlzLl9vcmlnaW49dGhpcy5fY2FwYWNpdHk9MCx0aGlzLl9sZXZlbD01LHRoaXMuX3Jvb3Q9dGhpcy5fdGFpbD1udWxsLHRoaXMuX19oYXNoPXZvaWQgMCx0aGlzLl9fYWx0ZXJlZD0hMCx0aGlzKTp1ZSgpfSxpZS5wcm90b3R5cGUucHVzaD1mdW5jdGlvbigpe3ZhciBBPWFyZ3VtZW50cyxlPXRoaXMuc2l6ZTtyZXR1cm4gdGhpcy53aXRoTXV0YXRpb25zKChmdW5jdGlvbih0KXtDZSh0LDAsZStBLmxlbmd0aCk7Zm9yKHZhciBuPTA7bjxBLmxlbmd0aDtuKyspdC5zZXQoZStuLEFbbl0pfSkpfSxpZS5wcm90b3R5cGUucG9wPWZ1bmN0aW9uKCl7cmV0dXJuIENlKHRoaXMsMCwtMSl9LGllLnByb3RvdHlwZS51bnNoaWZ0PWZ1bmN0aW9uKCl7dmFyIEE9YXJndW1lbnRzO3JldHVybiB0aGlzLndpdGhNdXRhdGlvbnMoKGZ1bmN0aW9uKGUpe0NlKGUsLUEubGVuZ3RoKTtmb3IodmFyIHQ9MDt0PEEubGVuZ3RoO3QrKyllLnNldCh0LEFbdF0pfSkpfSxpZS5wcm90b3R5cGUuc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gQ2UodGhpcywxKX0saWUucHJvdG90eXBlLm1lcmdlPWZ1bmN0aW9uKCl7cmV0dXJuIEllKHRoaXMsdm9pZCAwLGFyZ3VtZW50cyl9LGllLnByb3RvdHlwZS5tZXJnZVdpdGg9ZnVuY3Rpb24oZSl7dmFyIHQ9QS5jYWxsKGFyZ3VtZW50cywxKTtyZXR1cm4gSWUodGhpcyxlLHQpfSxpZS5wcm90b3R5cGUubWVyZ2VEZWVwPWZ1bmN0aW9uKCl7cmV0dXJuIEllKHRoaXMsWkEsYXJndW1lbnRzKX0saWUucHJvdG90eXBlLm1lcmdlRGVlcFdpdGg9ZnVuY3Rpb24oZSl7dmFyIHQ9QS5jYWxsKGFyZ3VtZW50cywxKTtyZXR1cm4gSWUodGhpcyxfQShlKSx0KX0saWUucHJvdG90eXBlLnNldFNpemU9ZnVuY3Rpb24oQSl7cmV0dXJuIENlKHRoaXMsMCxBKX0saWUucHJvdG90eXBlLnNsaWNlPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy5zaXplO3JldHVybiBEKEEsZSx0KT90aGlzOkNlKHRoaXMsWShBLHQpLGYoZSx0KSl9LGllLnByb3RvdHlwZS5fX2l0ZXJhdG9yPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9MCxuPUVlKHRoaXMsZSk7cmV0dXJuIG5ldyBHKChmdW5jdGlvbigpe3ZhciBlPW4oKTtyZXR1cm4gZT09PWdlP3t2YWx1ZTp2b2lkIDAsZG9uZTohMH06UyhBLHQrKyxlKX0pKX0saWUucHJvdG90eXBlLl9faXRlcmF0ZT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdCxuPTAsaT1FZSh0aGlzLGUpOyh0PWkoKSkhPT1nZSYmITEhPT1BKHQsbisrLHRoaXMpOyk7cmV0dXJuIG59LGllLnByb3RvdHlwZS5fX2Vuc3VyZU93bmVyPWZ1bmN0aW9uKEEpe3JldHVybiBBPT09dGhpcy5fX293bmVySUQ/dGhpczpBP1FlKHRoaXMuX29yaWdpbix0aGlzLl9jYXBhY2l0eSx0aGlzLl9sZXZlbCx0aGlzLl9yb290LHRoaXMuX3RhaWwsQSx0aGlzLl9faGFzaCk6KHRoaXMuX19vd25lcklEPUEsdGhpcyl9LGllLmlzTGlzdD1yZTt2YXIgb2U9IkBAX19JTU1VVEFCTEVfTElTVF9fQEAiLHNlPWllLnByb3RvdHlwZTtmdW5jdGlvbiBhZShBLGUpe3RoaXMuYXJyYXk9QSx0aGlzLm93bmVySUQ9ZX1zZVtvZV09ITAsc2UuZGVsZXRlPXNlLnJlbW92ZSxzZS5zZXRJbj1HQS5zZXRJbixzZS5kZWxldGVJbj1zZS5yZW1vdmVJbj1HQS5yZW1vdmVJbixzZS51cGRhdGU9R0EudXBkYXRlLHNlLnVwZGF0ZUluPUdBLnVwZGF0ZUluLHNlLm1lcmdlSW49R0EubWVyZ2VJbixzZS5tZXJnZURlZXBJbj1HQS5tZXJnZURlZXBJbixzZS53aXRoTXV0YXRpb25zPUdBLndpdGhNdXRhdGlvbnMsc2UuYXNNdXRhYmxlPUdBLmFzTXV0YWJsZSxzZS5hc0ltbXV0YWJsZT1HQS5hc0ltbXV0YWJsZSxzZS53YXNBbHRlcmVkPUdBLndhc0FsdGVyZWQsYWUucHJvdG90eXBlLnJlbW92ZUJlZm9yZT1mdW5jdGlvbihBLGUsdCl7aWYodD09PWU/MTw8ZTowPT09dGhpcy5hcnJheS5sZW5ndGgpcmV0dXJuIHRoaXM7dmFyIG49dD4+PmUmMzE7aWYobj49dGhpcy5hcnJheS5sZW5ndGgpcmV0dXJuIG5ldyBhZShbXSxBKTt2YXIgaSxyPTA9PT1uO2lmKGU+MCl7dmFyIG89dGhpcy5hcnJheVtuXTtpZigoaT1vJiZvLnJlbW92ZUJlZm9yZShBLGUtNSx0KSk9PT1vJiZyKXJldHVybiB0aGlzfWlmKHImJiFpKXJldHVybiB0aGlzO3ZhciBzPWhlKHRoaXMsQSk7aWYoIXIpZm9yKHZhciBhPTA7YTxuO2ErKylzLmFycmF5W2FdPXZvaWQgMDtyZXR1cm4gaSYmKHMuYXJyYXlbbl09aSksc30sYWUucHJvdG90eXBlLnJlbW92ZUFmdGVyPWZ1bmN0aW9uKEEsZSx0KXtpZih0PT09KGU/MTw8ZTowKXx8MD09PXRoaXMuYXJyYXkubGVuZ3RoKXJldHVybiB0aGlzO3ZhciBuLGk9dC0xPj4+ZSYzMTtpZihpPj10aGlzLmFycmF5Lmxlbmd0aClyZXR1cm4gdGhpcztpZihlPjApe3ZhciByPXRoaXMuYXJyYXlbaV07aWYoKG49ciYmci5yZW1vdmVBZnRlcihBLGUtNSx0KSk9PT1yJiZpPT09dGhpcy5hcnJheS5sZW5ndGgtMSlyZXR1cm4gdGhpc312YXIgbz1oZSh0aGlzLEEpO3JldHVybiBvLmFycmF5LnNwbGljZShpKzEpLG4mJihvLmFycmF5W2ldPW4pLG99O3ZhciBCZSxjZSxnZT17fTtmdW5jdGlvbiBFZShBLGUpe3ZhciB0PUEuX29yaWdpbixuPUEuX2NhcGFjaXR5LGk9TWUobikscj1BLl90YWlsO3JldHVybiBvKEEuX3Jvb3QsQS5fbGV2ZWwsMCk7ZnVuY3Rpb24gbyhBLHMsYSl7cmV0dXJuIDA9PT1zP2Z1bmN0aW9uKEEsbyl7dmFyIHM9bz09PWk/ciYmci5hcnJheTpBJiZBLmFycmF5LGE9bz50PzA6dC1vLEI9bi1vO3JldHVybiBCPjMyJiYoQj0zMiksZnVuY3Rpb24oKXtpZihhPT09QilyZXR1cm4gZ2U7dmFyIEE9ZT8tLUI6YSsrO3JldHVybiBzJiZzW0FdfX0oQSxhKTpmdW5jdGlvbihBLGkscil7dmFyIHMsYT1BJiZBLmFycmF5LEI9cj50PzA6dC1yPj5pLGM9MSsobi1yPj5pKTtyZXR1cm4gYz4zMiYmKGM9MzIpLGZ1bmN0aW9uKCl7Zm9yKDs7KXtpZihzKXt2YXIgQT1zKCk7aWYoQSE9PWdlKXJldHVybiBBO3M9bnVsbH1pZihCPT09YylyZXR1cm4gZ2U7dmFyIHQ9ZT8tLWM6QisrO3M9byhhJiZhW3RdLGktNSxyKyh0PDxpKSl9fX0oQSxzLGEpfX1mdW5jdGlvbiBRZShBLGUsdCxuLGkscixvKXt2YXIgcz1PYmplY3QuY3JlYXRlKHNlKTtyZXR1cm4gcy5zaXplPWUtQSxzLl9vcmlnaW49QSxzLl9jYXBhY2l0eT1lLHMuX2xldmVsPXQscy5fcm9vdD1uLHMuX3RhaWw9aSxzLl9fb3duZXJJRD1yLHMuX19oYXNoPW8scy5fX2FsdGVyZWQ9ITEsc31mdW5jdGlvbiB1ZSgpe3JldHVybiBCZXx8KEJlPVFlKDAsMCw1KSl9ZnVuY3Rpb24gbGUoQSxlLHQsbixpLHIpe3ZhciBvLHM9bj4+PnQmMzEsYT1BJiZzPEEuYXJyYXkubGVuZ3RoO2lmKCFhJiZ2b2lkIDA9PT1pKXJldHVybiBBO2lmKHQ+MCl7dmFyIEI9QSYmQS5hcnJheVtzXSxjPWxlKEIsZSx0LTUsbixpLHIpO3JldHVybiBjPT09Qj9BOigobz1oZShBLGUpKS5hcnJheVtzXT1jLG8pfXJldHVybiBhJiZBLmFycmF5W3NdPT09aT9BOihJKHIpLG89aGUoQSxlKSx2b2lkIDA9PT1pJiZzPT09by5hcnJheS5sZW5ndGgtMT9vLmFycmF5LnBvcCgpOm8uYXJyYXlbc109aSxvKX1mdW5jdGlvbiBoZShBLGUpe3JldHVybiBlJiZBJiZlPT09QS5vd25lcklEP0E6bmV3IGFlKEE/QS5hcnJheS5zbGljZSgpOltdLGUpfWZ1bmN0aW9uIHdlKEEsZSl7aWYoZT49TWUoQS5fY2FwYWNpdHkpKXJldHVybiBBLl90YWlsO2lmKGU8MTw8QS5fbGV2ZWwrNSl7Zm9yKHZhciB0PUEuX3Jvb3Qsbj1BLl9sZXZlbDt0JiZuPjA7KXQ9dC5hcnJheVtlPj4+biYzMV0sbi09NTtyZXR1cm4gdH19ZnVuY3Rpb24gQ2UoQSxlLHQpe3ZvaWQgMCE9PWUmJihlfD0wKSx2b2lkIDAhPT10JiYodHw9MCk7dmFyIG49QS5fX293bmVySUR8fG5ldyBNLGk9QS5fb3JpZ2luLHI9QS5fY2FwYWNpdHksbz1pK2Uscz12b2lkIDA9PT10P3I6dDwwP3IrdDppK3Q7aWYobz09PWkmJnM9PT1yKXJldHVybiBBO2lmKG8+PXMpcmV0dXJuIEEuY2xlYXIoKTtmb3IodmFyIGE9QS5fbGV2ZWwsQj1BLl9yb290LGM9MDtvK2M8MDspQj1uZXcgYWUoQiYmQi5hcnJheS5sZW5ndGg/W3ZvaWQgMCxCXTpbXSxuKSxjKz0xPDwoYSs9NSk7YyYmKG8rPWMsaSs9YyxzKz1jLHIrPWMpO2Zvcih2YXIgZz1NZShyKSxFPU1lKHMpO0U+PTE8PGErNTspQj1uZXcgYWUoQiYmQi5hcnJheS5sZW5ndGg/W0JdOltdLG4pLGErPTU7dmFyIFE9QS5fdGFpbCx1PUU8Zz93ZShBLHMtMSk6RT5nP25ldyBhZShbXSxuKTpRO2lmKFEmJkU+ZyYmbzxyJiZRLmFycmF5Lmxlbmd0aCl7Zm9yKHZhciBsPUI9aGUoQixuKSxoPWE7aD41O2gtPTUpe3ZhciB3PWc+Pj5oJjMxO2w9bC5hcnJheVt3XT1oZShsLmFycmF5W3ddLG4pfWwuYXJyYXlbZz4+PjUmMzFdPVF9aWYoczxyJiYodT11JiZ1LnJlbW92ZUFmdGVyKG4sMCxzKSksbz49RSlvLT1FLHMtPUUsYT01LEI9bnVsbCx1PXUmJnUucmVtb3ZlQmVmb3JlKG4sMCxvKTtlbHNlIGlmKG8+aXx8RTxnKXtmb3IoYz0wO0I7KXt2YXIgQz1vPj4+YSYzMTtpZihDIT09RT4+PmEmMzEpYnJlYWs7QyYmKGMrPSgxPDxhKSpDKSxhLT01LEI9Qi5hcnJheVtDXX1CJiZvPmkmJihCPUIucmVtb3ZlQmVmb3JlKG4sYSxvLWMpKSxCJiZFPGcmJihCPUIucmVtb3ZlQWZ0ZXIobixhLEUtYykpLGMmJihvLT1jLHMtPWMpfXJldHVybiBBLl9fb3duZXJJRD8oQS5zaXplPXMtbyxBLl9vcmlnaW49byxBLl9jYXBhY2l0eT1zLEEuX2xldmVsPWEsQS5fcm9vdD1CLEEuX3RhaWw9dSxBLl9faGFzaD12b2lkIDAsQS5fX2FsdGVyZWQ9ITAsQSk6UWUobyxzLGEsQix1KX1mdW5jdGlvbiBJZShBLGUsdCl7Zm9yKHZhciBuPVtdLHI9MCxzPTA7czx0Lmxlbmd0aDtzKyspe3ZhciBhPXRbc10sQj1pKGEpO0Iuc2l6ZT5yJiYocj1CLnNpemUpLG8oYSl8fChCPUIubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gbkEoQSl9KSkpLG4ucHVzaChCKX1yZXR1cm4gcj5BLnNpemUmJihBPUEuc2V0U2l6ZShyKSkscUEoQSxlLG4pfWZ1bmN0aW9uIE1lKEEpe3JldHVybiBBPDMyPzA6QS0xPj4+NTw8NX1mdW5jdGlvbiBkZShBKXtyZXR1cm4gbnVsbD09QT9GZSgpOnBlKEEpP0E6RmUoKS53aXRoTXV0YXRpb25zKChmdW5jdGlvbihlKXt2YXIgdD1uKEEpO1VBKHQuc2l6ZSksdC5mb3JFYWNoKChmdW5jdGlvbihBLHQpe3JldHVybiBlLnNldCh0LEEpfSkpfSkpfWZ1bmN0aW9uIHBlKEEpe3JldHVybiBUQShBKSYmYyhBKX1mdW5jdGlvbiBtZShBLGUsdCxuKXt2YXIgaT1PYmplY3QuY3JlYXRlKGRlLnByb3RvdHlwZSk7cmV0dXJuIGkuc2l6ZT1BP0Euc2l6ZTowLGkuX21hcD1BLGkuX2xpc3Q9ZSxpLl9fb3duZXJJRD10LGkuX19oYXNoPW4saX1mdW5jdGlvbiBGZSgpe3JldHVybiBjZXx8KGNlPW1lKFBBKCksdWUoKSkpfWZ1bmN0aW9uIERlKEEsZSx0KXt2YXIgbixpLHI9QS5fbWFwLG89QS5fbGlzdCxzPXIuZ2V0KGUpLGE9dm9pZCAwIT09cztpZih0PT09bCl7aWYoIWEpcmV0dXJuIEE7by5zaXplPj0zMiYmby5zaXplPj0yKnIuc2l6ZT8obj0oaT1vLmZpbHRlcigoZnVuY3Rpb24oQSxlKXtyZXR1cm4gdm9pZCAwIT09QSYmcyE9PWV9KSkpLnRvS2V5ZWRTZXEoKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBWzBdfSkpLmZsaXAoKS50b01hcCgpLEEuX19vd25lcklEJiYobi5fX293bmVySUQ9aS5fX293bmVySUQ9QS5fX293bmVySUQpKToobj1yLnJlbW92ZShlKSxpPXM9PT1vLnNpemUtMT9vLnBvcCgpOm8uc2V0KHMsdm9pZCAwKSl9ZWxzZSBpZihhKXtpZih0PT09by5nZXQocylbMV0pcmV0dXJuIEE7bj1yLGk9by5zZXQocyxbZSx0XSl9ZWxzZSBuPXIuc2V0KGUsby5zaXplKSxpPW8uc2V0KG8uc2l6ZSxbZSx0XSk7cmV0dXJuIEEuX19vd25lcklEPyhBLnNpemU9bi5zaXplLEEuX21hcD1uLEEuX2xpc3Q9aSxBLl9faGFzaD12b2lkIDAsQSk6bWUobixpKX1mdW5jdGlvbiBZZShBLGUpe3RoaXMuX2l0ZXI9QSx0aGlzLl91c2VLZXlzPWUsdGhpcy5zaXplPUEuc2l6ZX1mdW5jdGlvbiBmZShBKXt0aGlzLl9pdGVyPUEsdGhpcy5zaXplPUEuc2l6ZX1mdW5jdGlvbiBOZShBKXt0aGlzLl9pdGVyPUEsdGhpcy5zaXplPUEuc2l6ZX1mdW5jdGlvbiBVZShBKXt0aGlzLl9pdGVyPUEsdGhpcy5zaXplPUEuc2l6ZX1mdW5jdGlvbiB5ZShBKXt2YXIgZT1WZShBKTtyZXR1cm4gZS5faXRlcj1BLGUuc2l6ZT1BLnNpemUsZS5mbGlwPWZ1bmN0aW9uKCl7cmV0dXJuIEF9LGUucmV2ZXJzZT1mdW5jdGlvbigpe3ZhciBlPUEucmV2ZXJzZS5hcHBseSh0aGlzKTtyZXR1cm4gZS5mbGlwPWZ1bmN0aW9uKCl7cmV0dXJuIEEucmV2ZXJzZSgpfSxlfSxlLmhhcz1mdW5jdGlvbihlKXtyZXR1cm4gQS5pbmNsdWRlcyhlKX0sZS5pbmNsdWRlcz1mdW5jdGlvbihlKXtyZXR1cm4gQS5oYXMoZSl9LGUuY2FjaGVSZXN1bHQ9V2UsZS5fX2l0ZXJhdGVVbmNhY2hlZD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7cmV0dXJuIEEuX19pdGVyYXRlKChmdW5jdGlvbihBLHQpe3JldHVybiExIT09ZSh0LEEsbil9KSx0KX0sZS5fX2l0ZXJhdG9yVW5jYWNoZWQ9ZnVuY3Rpb24oZSx0KXtpZigyPT09ZSl7dmFyIG49QS5fX2l0ZXJhdG9yKGUsdCk7cmV0dXJuIG5ldyBHKChmdW5jdGlvbigpe3ZhciBBPW4ubmV4dCgpO2lmKCFBLmRvbmUpe3ZhciBlPUEudmFsdWVbMF07QS52YWx1ZVswXT1BLnZhbHVlWzFdLEEudmFsdWVbMV09ZX1yZXR1cm4gQX0pKX1yZXR1cm4gQS5fX2l0ZXJhdG9yKDE9PT1lPzA6MSx0KX0sZX1mdW5jdGlvbiBUZShBLGUsdCl7dmFyIG49VmUoQSk7cmV0dXJuIG4uc2l6ZT1BLnNpemUsbi5oYXM9ZnVuY3Rpb24oZSl7cmV0dXJuIEEuaGFzKGUpfSxuLmdldD1mdW5jdGlvbihuLGkpe3ZhciByPUEuZ2V0KG4sbCk7cmV0dXJuIHI9PT1sP2k6ZS5jYWxsKHQscixuLEEpfSxuLl9faXRlcmF0ZVVuY2FjaGVkPWZ1bmN0aW9uKG4saSl7dmFyIHI9dGhpcztyZXR1cm4gQS5fX2l0ZXJhdGUoKGZ1bmN0aW9uKEEsaSxvKXtyZXR1cm4hMSE9PW4oZS5jYWxsKHQsQSxpLG8pLGkscil9KSxpKX0sbi5fX2l0ZXJhdG9yVW5jYWNoZWQ9ZnVuY3Rpb24obixpKXt2YXIgcj1BLl9faXRlcmF0b3IoMixpKTtyZXR1cm4gbmV3IEcoKGZ1bmN0aW9uKCl7dmFyIGk9ci5uZXh0KCk7aWYoaS5kb25lKXJldHVybiBpO3ZhciBvPWkudmFsdWUscz1vWzBdO3JldHVybiBTKG4scyxlLmNhbGwodCxvWzFdLHMsQSksaSl9KSl9LG59ZnVuY3Rpb24geGUoQSxlKXt2YXIgdD1WZShBKTtyZXR1cm4gdC5faXRlcj1BLHQuc2l6ZT1BLnNpemUsdC5yZXZlcnNlPWZ1bmN0aW9uKCl7cmV0dXJuIEF9LEEuZmxpcCYmKHQuZmxpcD1mdW5jdGlvbigpe3ZhciBlPXllKEEpO3JldHVybiBlLnJldmVyc2U9ZnVuY3Rpb24oKXtyZXR1cm4gQS5mbGlwKCl9LGV9KSx0LmdldD1mdW5jdGlvbih0LG4pe3JldHVybiBBLmdldChlP3Q6LTEtdCxuKX0sdC5oYXM9ZnVuY3Rpb24odCl7cmV0dXJuIEEuaGFzKGU/dDotMS10KX0sdC5pbmNsdWRlcz1mdW5jdGlvbihlKXtyZXR1cm4gQS5pbmNsdWRlcyhlKX0sdC5jYWNoZVJlc3VsdD1XZSx0Ll9faXRlcmF0ZT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7cmV0dXJuIEEuX19pdGVyYXRlKChmdW5jdGlvbihBLHQpe3JldHVybiBlKEEsdCxuKX0pLCF0KX0sdC5fX2l0ZXJhdG9yPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIEEuX19pdGVyYXRvcihlLCF0KX0sdH1mdW5jdGlvbiBSZShBLGUsdCxuKXt2YXIgaT1WZShBKTtyZXR1cm4gbiYmKGkuaGFzPWZ1bmN0aW9uKG4pe3ZhciBpPUEuZ2V0KG4sbCk7cmV0dXJuIGkhPT1sJiYhIWUuY2FsbCh0LGksbixBKX0saS5nZXQ9ZnVuY3Rpb24obixpKXt2YXIgcj1BLmdldChuLGwpO3JldHVybiByIT09bCYmZS5jYWxsKHQscixuLEEpP3I6aX0pLGkuX19pdGVyYXRlVW5jYWNoZWQ9ZnVuY3Rpb24oaSxyKXt2YXIgbz10aGlzLHM9MDtyZXR1cm4gQS5fX2l0ZXJhdGUoKGZ1bmN0aW9uKEEscixhKXtpZihlLmNhbGwodCxBLHIsYSkpcmV0dXJuIHMrKyxpKEEsbj9yOnMtMSxvKX0pLHIpLHN9LGkuX19pdGVyYXRvclVuY2FjaGVkPWZ1bmN0aW9uKGkscil7dmFyIG89QS5fX2l0ZXJhdG9yKDIscikscz0wO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXtmb3IoOzspe3ZhciByPW8ubmV4dCgpO2lmKHIuZG9uZSlyZXR1cm4gcjt2YXIgYT1yLnZhbHVlLEI9YVswXSxjPWFbMV07aWYoZS5jYWxsKHQsYyxCLEEpKXJldHVybiBTKGksbj9COnMrKyxjLHIpfX0pKX0saX1mdW5jdGlvbiBHZShBLGUsdCxuKXt2YXIgaT1BLnNpemU7aWYodm9pZCAwIT09ZSYmKGV8PTApLHZvaWQgMCE9PXQmJih0PT09MS8wP3Q9aTp0fD0wKSxEKGUsdCxpKSlyZXR1cm4gQTt2YXIgcj1ZKGUsaSksbz1mKHQsaSk7aWYociE9cnx8byE9bylyZXR1cm4gR2UoQS50b1NlcSgpLmNhY2hlUmVzdWx0KCksZSx0LG4pO3ZhciBzLGE9by1yO2E9PWEmJihzPWE8MD8wOmEpO3ZhciBCPVZlKEEpO3JldHVybiBCLnNpemU9MD09PXM/czpBLnNpemUmJnN8fHZvaWQgMCwhbiYmWihBKSYmcz49MCYmKEIuZ2V0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGU9bSh0aGlzLGUpKT49MCYmZTxzP0EuZ2V0KGUrcix0KTp0fSksQi5fX2l0ZXJhdGVVbmNhY2hlZD1mdW5jdGlvbihlLHQpe3ZhciBpPXRoaXM7aWYoMD09PXMpcmV0dXJuIDA7aWYodClyZXR1cm4gdGhpcy5jYWNoZVJlc3VsdCgpLl9faXRlcmF0ZShlLHQpO3ZhciBvPTAsYT0hMCxCPTA7cmV0dXJuIEEuX19pdGVyYXRlKChmdW5jdGlvbihBLHQpe2lmKCFhfHwhKGE9bysrPHIpKXJldHVybiBCKyssITEhPT1lKEEsbj90OkItMSxpKSYmQiE9PXN9KSksQn0sQi5fX2l0ZXJhdG9yVW5jYWNoZWQ9ZnVuY3Rpb24oZSx0KXtpZigwIT09cyYmdClyZXR1cm4gdGhpcy5jYWNoZVJlc3VsdCgpLl9faXRlcmF0b3IoZSx0KTt2YXIgaT0wIT09cyYmQS5fX2l0ZXJhdG9yKGUsdCksbz0wLGE9MDtyZXR1cm4gbmV3IEcoKGZ1bmN0aW9uKCl7Zm9yKDtvKys8cjspaS5uZXh0KCk7aWYoKythPnMpcmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfTt2YXIgQT1pLm5leHQoKTtyZXR1cm4gbnx8MT09PWU/QTpTKGUsYS0xLDA9PT1lP3ZvaWQgMDpBLnZhbHVlWzFdLEEpfSkpfSxCfWZ1bmN0aW9uIFNlKEEsZSx0LG4pe3ZhciBpPVZlKEEpO3JldHVybiBpLl9faXRlcmF0ZVVuY2FjaGVkPWZ1bmN0aW9uKGkscil7dmFyIG89dGhpcztpZihyKXJldHVybiB0aGlzLmNhY2hlUmVzdWx0KCkuX19pdGVyYXRlKGkscik7dmFyIHM9ITAsYT0wO3JldHVybiBBLl9faXRlcmF0ZSgoZnVuY3Rpb24oQSxyLEIpe2lmKCFzfHwhKHM9ZS5jYWxsKHQsQSxyLEIpKSlyZXR1cm4gYSsrLGkoQSxuP3I6YS0xLG8pfSkpLGF9LGkuX19pdGVyYXRvclVuY2FjaGVkPWZ1bmN0aW9uKGkscil7dmFyIG89dGhpcztpZihyKXJldHVybiB0aGlzLmNhY2hlUmVzdWx0KCkuX19pdGVyYXRvcihpLHIpO3ZhciBzPUEuX19pdGVyYXRvcigyLHIpLGE9ITAsQj0wO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXt2YXIgQSxyLGM7ZG97aWYoKEE9cy5uZXh0KCkpLmRvbmUpcmV0dXJuIG58fDE9PT1pP0E6UyhpLEIrKywwPT09aT92b2lkIDA6QS52YWx1ZVsxXSxBKTt2YXIgZz1BLnZhbHVlO3I9Z1swXSxjPWdbMV0sYSYmKGE9ZS5jYWxsKHQsYyxyLG8pKX13aGlsZShhKTtyZXR1cm4gMj09PWk/QTpTKGkscixjLEEpfSkpfSxpfWZ1bmN0aW9uIGJlKEEsZSl7dmFyIHQ9cyhBKSxpPVtBXS5jb25jYXQoZSkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gbyhBKT90JiYoQT1uKEEpKTpBPXQ/cShBKTokKEFycmF5LmlzQXJyYXkoQSk/QTpbQV0pLEF9KSkuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gMCE9PUEuc2l6ZX0pKTtpZigwPT09aS5sZW5ndGgpcmV0dXJuIEE7aWYoMT09PWkubGVuZ3RoKXt2YXIgcj1pWzBdO2lmKHI9PT1BfHx0JiZzKHIpfHxhKEEpJiZhKHIpKXJldHVybiByfXZhciBCPW5ldyBWKGkpO3JldHVybiB0P0I9Qi50b0tleWVkU2VxKCk6YShBKXx8KEI9Qi50b1NldFNlcSgpKSwoQj1CLmZsYXR0ZW4oITApKS5zaXplPWkucmVkdWNlKChmdW5jdGlvbihBLGUpe2lmKHZvaWQgMCE9PUEpe3ZhciB0PWUuc2l6ZTtpZih2b2lkIDAhPT10KXJldHVybiBBK3R9fSksMCksQn1mdW5jdGlvbiBIZShBLGUsdCl7dmFyIG49VmUoQSk7cmV0dXJuIG4uX19pdGVyYXRlVW5jYWNoZWQ9ZnVuY3Rpb24obixpKXt2YXIgcj0wLHM9ITE7cmV0dXJuIGZ1bmN0aW9uIEEoYSxCKXt2YXIgYz10aGlzO2EuX19pdGVyYXRlKChmdW5jdGlvbihpLGEpe3JldHVybighZXx8QjxlKSYmbyhpKT9BKGksQisxKTohMT09PW4oaSx0P2E6cisrLGMpJiYocz0hMCksIXN9KSxpKX0oQSwwKSxyfSxuLl9faXRlcmF0b3JVbmNhY2hlZD1mdW5jdGlvbihuLGkpe3ZhciByPUEuX19pdGVyYXRvcihuLGkpLHM9W10sYT0wO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXtmb3IoO3I7KXt2YXIgQT1yLm5leHQoKTtpZighMT09PUEuZG9uZSl7dmFyIEI9QS52YWx1ZTtpZigyPT09biYmKEI9QlsxXSksZSYmIShzLmxlbmd0aDxlKXx8IW8oQikpcmV0dXJuIHQ/QTpTKG4sYSsrLEIsQSk7cy5wdXNoKHIpLHI9Qi5fX2l0ZXJhdG9yKG4saSl9ZWxzZSByPXMucG9wKCl9cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX0pKX0sbn1mdW5jdGlvbiB2ZShBLGUsdCl7ZXx8KGU9S2UpO3ZhciBuPXMoQSksaT0wLHI9QS50b1NlcSgpLm1hcCgoZnVuY3Rpb24oZSxuKXtyZXR1cm5bbixlLGkrKyx0P3QoZSxuLEEpOmVdfSkpLnRvQXJyYXkoKTtyZXR1cm4gci5zb3J0KChmdW5jdGlvbihBLHQpe3JldHVybiBlKEFbM10sdFszXSl8fEFbMl0tdFsyXX0pKS5mb3JFYWNoKG4/ZnVuY3Rpb24oQSxlKXtyW2VdLmxlbmd0aD0yfTpmdW5jdGlvbihBLGUpe3JbZV09QVsxXX0pLG4/TChyKTphKEEpP1Aocik6TyhyKX1mdW5jdGlvbiBrZShBLGUsdCl7aWYoZXx8KGU9S2UpLHQpe3ZhciBuPUEudG9TZXEoKS5tYXAoKGZ1bmN0aW9uKGUsbil7cmV0dXJuW2UsdChlLG4sQSldfSkpLnJlZHVjZSgoZnVuY3Rpb24oQSx0KXtyZXR1cm4gamUoZSxBWzFdLHRbMV0pP3Q6QX0pKTtyZXR1cm4gbiYmblswXX1yZXR1cm4gQS5yZWR1Y2UoKGZ1bmN0aW9uKEEsdCl7cmV0dXJuIGplKGUsQSx0KT90OkF9KSl9ZnVuY3Rpb24gamUoQSxlLHQpe3ZhciBuPUEodCxlKTtyZXR1cm4gMD09PW4mJnQhPT1lJiYobnVsbD09dHx8dCE9dCl8fG4+MH1mdW5jdGlvbiBKZShBLGUsbil7dmFyIGk9VmUoQSk7cmV0dXJuIGkuc2l6ZT1uZXcgVihuKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnNpemV9KSkubWluKCksaS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQsbj10aGlzLl9faXRlcmF0b3IoMSxlKSxpPTA7ISh0PW4ubmV4dCgpKS5kb25lJiYhMSE9PUEodC52YWx1ZSxpKyssdGhpcyk7KTtyZXR1cm4gaX0saS5fX2l0ZXJhdG9yVW5jYWNoZWQ9ZnVuY3Rpb24oQSxpKXt2YXIgcj1uLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEE9dChBKSxrKGk/QS5yZXZlcnNlKCk6QSl9KSksbz0wLHM9ITE7cmV0dXJuIG5ldyBHKChmdW5jdGlvbigpe3ZhciB0O3JldHVybiBzfHwodD1yLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEubmV4dCgpfSkpLHM9dC5zb21lKChmdW5jdGlvbihBKXtyZXR1cm4gQS5kb25lfSkpKSxzP3t2YWx1ZTp2b2lkIDAsZG9uZTohMH06UyhBLG8rKyxlLmFwcGx5KG51bGwsdC5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnZhbHVlfSkpKSl9KSl9LGl9ZnVuY3Rpb24gemUoQSxlKXtyZXR1cm4gWihBKT9lOkEuY29uc3RydWN0b3IoZSl9ZnVuY3Rpb24gTGUoQSl7aWYoQSE9PU9iamVjdChBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBbSywgVl0gdHVwbGU6ICIrQSl9ZnVuY3Rpb24gUGUoQSl7cmV0dXJuIFVBKEEuc2l6ZSkscChBKX1mdW5jdGlvbiBPZShBKXtyZXR1cm4gcyhBKT9uOmEoQSk/aTpyfWZ1bmN0aW9uIFZlKEEpe3JldHVybiBPYmplY3QuY3JlYXRlKChzKEEpP0w6YShBKT9QOk8pLnByb3RvdHlwZSl9ZnVuY3Rpb24gV2UoKXtyZXR1cm4gdGhpcy5faXRlci5jYWNoZVJlc3VsdD8odGhpcy5faXRlci5jYWNoZVJlc3VsdCgpLHRoaXMuc2l6ZT10aGlzLl9pdGVyLnNpemUsdGhpcyk6ei5wcm90b3R5cGUuY2FjaGVSZXN1bHQuY2FsbCh0aGlzKX1mdW5jdGlvbiBLZShBLGUpe3JldHVybiBBPmU/MTpBPGU/LTE6MH1mdW5jdGlvbiBYZShBKXt2YXIgZT1rKEEpO2lmKCFlKXtpZighSihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBpdGVyYWJsZSBvciBhcnJheS1saWtlOiAiK0EpO2U9ayh0KEEpKX1yZXR1cm4gZX1mdW5jdGlvbiBaZShBLGUpe3ZhciB0LG49ZnVuY3Rpb24ocil7aWYociBpbnN0YW5jZW9mIG4pcmV0dXJuIHI7aWYoISh0aGlzIGluc3RhbmNlb2YgbikpcmV0dXJuIG5ldyBuKHIpO2lmKCF0KXt0PSEwO3ZhciBvPU9iamVjdC5rZXlzKEEpOyFmdW5jdGlvbihBLGUpe3RyeXtlLmZvckVhY2goQXQuYmluZCh2b2lkIDAsQSkpfWNhdGNoKEEpe319KGksbyksaS5zaXplPW8ubGVuZ3RoLGkuX25hbWU9ZSxpLl9rZXlzPW8saS5fZGVmYXVsdFZhbHVlcz1BfXRoaXMuX21hcD15QShyKX0saT1uLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKF9lKTtyZXR1cm4gaS5jb25zdHJ1Y3Rvcj1uLG59ZShkZSx5QSksZGUub2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcyhhcmd1bWVudHMpfSxkZS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX3RvU3RyaW5nKCJPcmRlcmVkTWFwIHsiLCJ9Iil9LGRlLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLl9tYXAuZ2V0KEEpO3JldHVybiB2b2lkIDAhPT10P3RoaXMuX2xpc3QuZ2V0KHQpWzFdOmV9LGRlLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy5zaXplP3RoaXM6dGhpcy5fX293bmVySUQ/KHRoaXMuc2l6ZT0wLHRoaXMuX21hcC5jbGVhcigpLHRoaXMuX2xpc3QuY2xlYXIoKSx0aGlzKTpGZSgpfSxkZS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIERlKHRoaXMsQSxlKX0sZGUucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihBKXtyZXR1cm4gRGUodGhpcyxBLGwpfSxkZS5wcm90b3R5cGUud2FzQWx0ZXJlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9tYXAud2FzQWx0ZXJlZCgpfHx0aGlzLl9saXN0Lndhc0FsdGVyZWQoKX0sZGUucHJvdG90eXBlLl9faXRlcmF0ZT1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuX2xpc3QuX19pdGVyYXRlKChmdW5jdGlvbihlKXtyZXR1cm4gZSYmQShlWzFdLGVbMF0sdCl9KSxlKX0sZGUucHJvdG90eXBlLl9faXRlcmF0b3I9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5fbGlzdC5mcm9tRW50cnlTZXEoKS5fX2l0ZXJhdG9yKEEsZSl9LGRlLnByb3RvdHlwZS5fX2Vuc3VyZU93bmVyPWZ1bmN0aW9uKEEpe2lmKEE9PT10aGlzLl9fb3duZXJJRClyZXR1cm4gdGhpczt2YXIgZT10aGlzLl9tYXAuX19lbnN1cmVPd25lcihBKSx0PXRoaXMuX2xpc3QuX19lbnN1cmVPd25lcihBKTtyZXR1cm4gQT9tZShlLHQsQSx0aGlzLl9faGFzaCk6KHRoaXMuX19vd25lcklEPUEsdGhpcy5fbWFwPWUsdGhpcy5fbGlzdD10LHRoaXMpfSxkZS5pc09yZGVyZWRNYXA9cGUsZGUucHJvdG90eXBlW3VdPSEwLGRlLnByb3RvdHlwZS5kZWxldGU9ZGUucHJvdG90eXBlLnJlbW92ZSxlKFllLEwpLFllLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5faXRlci5nZXQoQSxlKX0sWWUucHJvdG90eXBlLmhhcz1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5faXRlci5oYXMoQSl9LFllLnByb3RvdHlwZS52YWx1ZVNlcT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9pdGVyLnZhbHVlU2VxKCl9LFllLnByb3RvdHlwZS5yZXZlcnNlPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcyxlPXhlKHRoaXMsITApO3JldHVybiB0aGlzLl91c2VLZXlzfHwoZS52YWx1ZVNlcT1mdW5jdGlvbigpe3JldHVybiBBLl9pdGVyLnRvU2VxKCkucmV2ZXJzZSgpfSksZX0sWWUucHJvdG90eXBlLm1hcD1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMsbj1UZSh0aGlzLEEsZSk7cmV0dXJuIHRoaXMuX3VzZUtleXN8fChuLnZhbHVlU2VxPWZ1bmN0aW9uKCl7cmV0dXJuIHQuX2l0ZXIudG9TZXEoKS5tYXAoQSxlKX0pLG59LFllLnByb3RvdHlwZS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuPXRoaXM7cmV0dXJuIHRoaXMuX2l0ZXIuX19pdGVyYXRlKHRoaXMuX3VzZUtleXM/ZnVuY3Rpb24oZSx0KXtyZXR1cm4gQShlLHQsbil9Oih0PWU/UGUodGhpcyk6MCxmdW5jdGlvbihpKXtyZXR1cm4gQShpLGU/LS10OnQrKyxuKX0pLGUpfSxZZS5wcm90b3R5cGUuX19pdGVyYXRvcj1mdW5jdGlvbihBLGUpe2lmKHRoaXMuX3VzZUtleXMpcmV0dXJuIHRoaXMuX2l0ZXIuX19pdGVyYXRvcihBLGUpO3ZhciB0PXRoaXMuX2l0ZXIuX19pdGVyYXRvcigxLGUpLG49ZT9QZSh0aGlzKTowO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXt2YXIgaT10Lm5leHQoKTtyZXR1cm4gaS5kb25lP2k6UyhBLGU/LS1uOm4rKyxpLnZhbHVlLGkpfSkpfSxZZS5wcm90b3R5cGVbdV09ITAsZShmZSxQKSxmZS5wcm90b3R5cGUuaW5jbHVkZXM9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuX2l0ZXIuaW5jbHVkZXMoQSl9LGZlLnByb3RvdHlwZS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLG49MDtyZXR1cm4gdGhpcy5faXRlci5fX2l0ZXJhdGUoKGZ1bmN0aW9uKGUpe3JldHVybiBBKGUsbisrLHQpfSksZSl9LGZlLnByb3RvdHlwZS5fX2l0ZXJhdG9yPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy5faXRlci5fX2l0ZXJhdG9yKDEsZSksbj0wO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXt2YXIgZT10Lm5leHQoKTtyZXR1cm4gZS5kb25lP2U6UyhBLG4rKyxlLnZhbHVlLGUpfSkpfSxlKE5lLE8pLE5lLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuX2l0ZXIuaW5jbHVkZXMoQSl9LE5lLnByb3RvdHlwZS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLl9pdGVyLl9faXRlcmF0ZSgoZnVuY3Rpb24oZSl7cmV0dXJuIEEoZSxlLHQpfSksZSl9LE5lLnByb3RvdHlwZS5fX2l0ZXJhdG9yPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy5faXRlci5fX2l0ZXJhdG9yKDEsZSk7cmV0dXJuIG5ldyBHKChmdW5jdGlvbigpe3ZhciBlPXQubmV4dCgpO3JldHVybiBlLmRvbmU/ZTpTKEEsZS52YWx1ZSxlLnZhbHVlLGUpfSkpfSxlKFVlLEwpLFVlLnByb3RvdHlwZS5lbnRyeVNlcT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9pdGVyLnRvU2VxKCl9LFVlLnByb3RvdHlwZS5fX2l0ZXJhdGU9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLl9pdGVyLl9faXRlcmF0ZSgoZnVuY3Rpb24oZSl7aWYoZSl7TGUoZSk7dmFyIG49byhlKTtyZXR1cm4gQShuP2UuZ2V0KDEpOmVbMV0sbj9lLmdldCgwKTplWzBdLHQpfX0pLGUpfSxVZS5wcm90b3R5cGUuX19pdGVyYXRvcj1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuX2l0ZXIuX19pdGVyYXRvcigxLGUpO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXtmb3IoOzspe3ZhciBlPXQubmV4dCgpO2lmKGUuZG9uZSlyZXR1cm4gZTt2YXIgbj1lLnZhbHVlO2lmKG4pe0xlKG4pO3ZhciBpPW8obik7cmV0dXJuIFMoQSxpP24uZ2V0KDApOm5bMF0saT9uLmdldCgxKTpuWzFdLGUpfX19KSl9LGZlLnByb3RvdHlwZS5jYWNoZVJlc3VsdD1ZZS5wcm90b3R5cGUuY2FjaGVSZXN1bHQ9TmUucHJvdG90eXBlLmNhY2hlUmVzdWx0PVVlLnByb3RvdHlwZS5jYWNoZVJlc3VsdD1XZSxlKFplLEVBKSxaZS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX3RvU3RyaW5nKCRlKHRoaXMpKyIgeyIsIn0iKX0sWmUucHJvdG90eXBlLmhhcz1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5fZGVmYXVsdFZhbHVlcy5oYXNPd25Qcm9wZXJ0eShBKX0sWmUucHJvdG90eXBlLmdldD1mdW5jdGlvbihBLGUpe2lmKCF0aGlzLmhhcyhBKSlyZXR1cm4gZTt2YXIgdD10aGlzLl9kZWZhdWx0VmFsdWVzW0FdO3JldHVybiB0aGlzLl9tYXA/dGhpcy5fbWFwLmdldChBLHQpOnR9LFplLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe2lmKHRoaXMuX19vd25lcklEKXJldHVybiB0aGlzLl9tYXAmJnRoaXMuX21hcC5jbGVhcigpLHRoaXM7dmFyIEE9dGhpcy5jb25zdHJ1Y3RvcjtyZXR1cm4gQS5fZW1wdHl8fChBLl9lbXB0eT1xZSh0aGlzLFBBKCkpKX0sWmUucHJvdG90eXBlLnNldD1mdW5jdGlvbihBLGUpe2lmKCF0aGlzLmhhcyhBKSl0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBzZXQgdW5rbm93biBrZXkgIicrQSsnIiBvbiAnKyRlKHRoaXMpKTtpZih0aGlzLl9tYXAmJiF0aGlzLl9tYXAuaGFzKEEpJiZlPT09dGhpcy5fZGVmYXVsdFZhbHVlc1tBXSlyZXR1cm4gdGhpczt2YXIgdD10aGlzLl9tYXAmJnRoaXMuX21hcC5zZXQoQSxlKTtyZXR1cm4gdGhpcy5fX293bmVySUR8fHQ9PT10aGlzLl9tYXA/dGhpczpxZSh0aGlzLHQpfSxaZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKEEpe2lmKCF0aGlzLmhhcyhBKSlyZXR1cm4gdGhpczt2YXIgZT10aGlzLl9tYXAmJnRoaXMuX21hcC5yZW1vdmUoQSk7cmV0dXJuIHRoaXMuX19vd25lcklEfHxlPT09dGhpcy5fbWFwP3RoaXM6cWUodGhpcyxlKX0sWmUucHJvdG90eXBlLndhc0FsdGVyZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fbWFwLndhc0FsdGVyZWQoKX0sWmUucHJvdG90eXBlLl9faXRlcmF0b3I9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzO3JldHVybiBuKHRoaXMuX2RlZmF1bHRWYWx1ZXMpLm1hcCgoZnVuY3Rpb24oQSxlKXtyZXR1cm4gdC5nZXQoZSl9KSkuX19pdGVyYXRvcihBLGUpfSxaZS5wcm90b3R5cGUuX19pdGVyYXRlPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcztyZXR1cm4gbih0aGlzLl9kZWZhdWx0VmFsdWVzKS5tYXAoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIHQuZ2V0KGUpfSkpLl9faXRlcmF0ZShBLGUpfSxaZS5wcm90b3R5cGUuX19lbnN1cmVPd25lcj1mdW5jdGlvbihBKXtpZihBPT09dGhpcy5fX293bmVySUQpcmV0dXJuIHRoaXM7dmFyIGU9dGhpcy5fbWFwJiZ0aGlzLl9tYXAuX19lbnN1cmVPd25lcihBKTtyZXR1cm4gQT9xZSh0aGlzLGUsQSk6KHRoaXMuX19vd25lcklEPUEsdGhpcy5fbWFwPWUsdGhpcyl9O3ZhciBfZT1aZS5wcm90b3R5cGU7ZnVuY3Rpb24gcWUoQSxlLHQpe3ZhciBuPU9iamVjdC5jcmVhdGUoT2JqZWN0LmdldFByb3RvdHlwZU9mKEEpKTtyZXR1cm4gbi5fbWFwPWUsbi5fX293bmVySUQ9dCxufWZ1bmN0aW9uICRlKEEpe3JldHVybiBBLl9uYW1lfHxBLmNvbnN0cnVjdG9yLm5hbWV8fCJSZWNvcmQifWZ1bmN0aW9uIEF0KEEsZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0KGUpfSxzZXQ6ZnVuY3Rpb24oQSl7QkEodGhpcy5fX293bmVySUQsIkNhbm5vdCBzZXQgb24gYW4gaW1tdXRhYmxlIHJlY29yZC4iKSx0aGlzLnNldChlLEEpfX0pfWZ1bmN0aW9uIGV0KEEpe3JldHVybiBudWxsPT1BP2F0KCk6dHQoQSkmJiFjKEEpP0E6YXQoKS53aXRoTXV0YXRpb25zKChmdW5jdGlvbihlKXt2YXIgdD1yKEEpO1VBKHQuc2l6ZSksdC5mb3JFYWNoKChmdW5jdGlvbihBKXtyZXR1cm4gZS5hZGQoQSl9KSl9KSl9ZnVuY3Rpb24gdHQoQSl7cmV0dXJuISghQXx8IUFbaXRdKX1fZS5kZWxldGU9X2UucmVtb3ZlLF9lLmRlbGV0ZUluPV9lLnJlbW92ZUluPUdBLnJlbW92ZUluLF9lLm1lcmdlPUdBLm1lcmdlLF9lLm1lcmdlV2l0aD1HQS5tZXJnZVdpdGgsX2UubWVyZ2VJbj1HQS5tZXJnZUluLF9lLm1lcmdlRGVlcD1HQS5tZXJnZURlZXAsX2UubWVyZ2VEZWVwV2l0aD1HQS5tZXJnZURlZXBXaXRoLF9lLm1lcmdlRGVlcEluPUdBLm1lcmdlRGVlcEluLF9lLnNldEluPUdBLnNldEluLF9lLnVwZGF0ZT1HQS51cGRhdGUsX2UudXBkYXRlSW49R0EudXBkYXRlSW4sX2Uud2l0aE11dGF0aW9ucz1HQS53aXRoTXV0YXRpb25zLF9lLmFzTXV0YWJsZT1HQS5hc011dGFibGUsX2UuYXNJbW11dGFibGU9R0EuYXNJbW11dGFibGUsZShldCx1QSksZXQub2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcyhhcmd1bWVudHMpfSxldC5mcm9tS2V5cz1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcyhuKEEpLmtleVNlcSgpKX0sZXQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX190b1N0cmluZygiU2V0IHsiLCJ9Iil9LGV0LnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuX21hcC5oYXMoQSl9LGV0LnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oQSl7cmV0dXJuIG90KHRoaXMsdGhpcy5fbWFwLnNldChBLCEwKSl9LGV0LnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oQSl7cmV0dXJuIG90KHRoaXMsdGhpcy5fbWFwLnJlbW92ZShBKSl9LGV0LnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3JldHVybiBvdCh0aGlzLHRoaXMuX21hcC5jbGVhcigpKX0sZXQucHJvdG90eXBlLnVuaW9uPWZ1bmN0aW9uKCl7dmFyIGU9QS5jYWxsKGFyZ3VtZW50cywwKTtyZXR1cm4gMD09PShlPWUuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gMCE9PUEuc2l6ZX0pKSkubGVuZ3RoP3RoaXM6MCE9PXRoaXMuc2l6ZXx8dGhpcy5fX293bmVySUR8fDEhPT1lLmxlbmd0aD90aGlzLndpdGhNdXRhdGlvbnMoKGZ1bmN0aW9uKEEpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXIoZVt0XSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIEEuYWRkKGUpfSkpfSkpOnRoaXMuY29uc3RydWN0b3IoZVswXSl9LGV0LnByb3RvdHlwZS5pbnRlcnNlY3Q9ZnVuY3Rpb24oKXt2YXIgZT1BLmNhbGwoYXJndW1lbnRzLDApO2lmKDA9PT1lLmxlbmd0aClyZXR1cm4gdGhpcztlPWUubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gcihBKX0pKTt2YXIgdD10aGlzO3JldHVybiB0aGlzLndpdGhNdXRhdGlvbnMoKGZ1bmN0aW9uKEEpe3QuZm9yRWFjaCgoZnVuY3Rpb24odCl7ZS5ldmVyeSgoZnVuY3Rpb24oQSl7cmV0dXJuIEEuaW5jbHVkZXModCl9KSl8fEEucmVtb3ZlKHQpfSkpfSkpfSxldC5wcm90b3R5cGUuc3VidHJhY3Q9ZnVuY3Rpb24oKXt2YXIgZT1BLmNhbGwoYXJndW1lbnRzLDApO2lmKDA9PT1lLmxlbmd0aClyZXR1cm4gdGhpcztlPWUubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gcihBKX0pKTt2YXIgdD10aGlzO3JldHVybiB0aGlzLndpdGhNdXRhdGlvbnMoKGZ1bmN0aW9uKEEpe3QuZm9yRWFjaCgoZnVuY3Rpb24odCl7ZS5zb21lKChmdW5jdGlvbihBKXtyZXR1cm4gQS5pbmNsdWRlcyh0KX0pKSYmQS5yZW1vdmUodCl9KSl9KSl9LGV0LnByb3RvdHlwZS5tZXJnZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnVuaW9uLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sZXQucHJvdG90eXBlLm1lcmdlV2l0aD1mdW5jdGlvbihlKXt2YXIgdD1BLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiB0aGlzLnVuaW9uLmFwcGx5KHRoaXMsdCl9LGV0LnByb3RvdHlwZS5zb3J0PWZ1bmN0aW9uKEEpe3JldHVybiBCdCh2ZSh0aGlzLEEpKX0sZXQucHJvdG90eXBlLnNvcnRCeT1mdW5jdGlvbihBLGUpe3JldHVybiBCdCh2ZSh0aGlzLGUsQSkpfSxldC5wcm90b3R5cGUud2FzQWx0ZXJlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9tYXAud2FzQWx0ZXJlZCgpfSxldC5wcm90b3R5cGUuX19pdGVyYXRlPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcztyZXR1cm4gdGhpcy5fbWFwLl9faXRlcmF0ZSgoZnVuY3Rpb24oZSxuKXtyZXR1cm4gQShuLG4sdCl9KSxlKX0sZXQucHJvdG90eXBlLl9faXRlcmF0b3I9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5fbWFwLm1hcCgoZnVuY3Rpb24oQSxlKXtyZXR1cm4gZX0pKS5fX2l0ZXJhdG9yKEEsZSl9LGV0LnByb3RvdHlwZS5fX2Vuc3VyZU93bmVyPWZ1bmN0aW9uKEEpe2lmKEE9PT10aGlzLl9fb3duZXJJRClyZXR1cm4gdGhpczt2YXIgZT10aGlzLl9tYXAuX19lbnN1cmVPd25lcihBKTtyZXR1cm4gQT90aGlzLl9fbWFrZShlLEEpOih0aGlzLl9fb3duZXJJRD1BLHRoaXMuX21hcD1lLHRoaXMpfSxldC5pc1NldD10dDt2YXIgbnQsaXQ9IkBAX19JTU1VVEFCTEVfU0VUX19AQCIscnQ9ZXQucHJvdG90eXBlO2Z1bmN0aW9uIG90KEEsZSl7cmV0dXJuIEEuX19vd25lcklEPyhBLnNpemU9ZS5zaXplLEEuX21hcD1lLEEpOmU9PT1BLl9tYXA/QTowPT09ZS5zaXplP0EuX19lbXB0eSgpOkEuX19tYWtlKGUpfWZ1bmN0aW9uIHN0KEEsZSl7dmFyIHQ9T2JqZWN0LmNyZWF0ZShydCk7cmV0dXJuIHQuc2l6ZT1BP0Euc2l6ZTowLHQuX21hcD1BLHQuX19vd25lcklEPWUsdH1mdW5jdGlvbiBhdCgpe3JldHVybiBudHx8KG50PXN0KFBBKCkpKX1mdW5jdGlvbiBCdChBKXtyZXR1cm4gbnVsbD09QT91dCgpOmN0KEEpP0E6dXQoKS53aXRoTXV0YXRpb25zKChmdW5jdGlvbihlKXt2YXIgdD1yKEEpO1VBKHQuc2l6ZSksdC5mb3JFYWNoKChmdW5jdGlvbihBKXtyZXR1cm4gZS5hZGQoQSl9KSl9KSl9ZnVuY3Rpb24gY3QoQSl7cmV0dXJuIHR0KEEpJiZjKEEpfXJ0W2l0XT0hMCxydC5kZWxldGU9cnQucmVtb3ZlLHJ0Lm1lcmdlRGVlcD1ydC5tZXJnZSxydC5tZXJnZURlZXBXaXRoPXJ0Lm1lcmdlV2l0aCxydC53aXRoTXV0YXRpb25zPUdBLndpdGhNdXRhdGlvbnMscnQuYXNNdXRhYmxlPUdBLmFzTXV0YWJsZSxydC5hc0ltbXV0YWJsZT1HQS5hc0ltbXV0YWJsZSxydC5fX2VtcHR5PWF0LHJ0Ll9fbWFrZT1zdCxlKEJ0LGV0KSxCdC5vZj1mdW5jdGlvbigpe3JldHVybiB0aGlzKGFyZ3VtZW50cyl9LEJ0LmZyb21LZXlzPWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzKG4oQSkua2V5U2VxKCkpfSxCdC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX3RvU3RyaW5nKCJPcmRlcmVkU2V0IHsiLCJ9Iil9LEJ0LmlzT3JkZXJlZFNldD1jdDt2YXIgZ3QsRXQ9QnQucHJvdG90eXBlO2Z1bmN0aW9uIFF0KEEsZSl7dmFyIHQ9T2JqZWN0LmNyZWF0ZShFdCk7cmV0dXJuIHQuc2l6ZT1BP0Euc2l6ZTowLHQuX21hcD1BLHQuX19vd25lcklEPWUsdH1mdW5jdGlvbiB1dCgpe3JldHVybiBndHx8KGd0PVF0KEZlKCkpKX1mdW5jdGlvbiBsdChBKXtyZXR1cm4gbnVsbD09QT9kdCgpOmh0KEEpP0E6ZHQoKS51bnNoaWZ0QWxsKEEpfWZ1bmN0aW9uIGh0KEEpe3JldHVybiEoIUF8fCFBW0N0XSl9RXRbdV09ITAsRXQuX19lbXB0eT11dCxFdC5fX21ha2U9UXQsZShsdCxRQSksbHQub2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcyhhcmd1bWVudHMpfSxsdC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX3RvU3RyaW5nKCJTdGFjayBbIiwiXSIpfSxsdC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy5faGVhZDtmb3IoQT1tKHRoaXMsQSk7dCYmQS0tOyl0PXQubmV4dDtyZXR1cm4gdD90LnZhbHVlOmV9LGx0LnByb3RvdHlwZS5wZWVrPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2hlYWQmJnRoaXMuX2hlYWQudmFsdWV9LGx0LnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKCl7aWYoMD09PWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXM7Zm9yKHZhciBBPXRoaXMuc2l6ZSthcmd1bWVudHMubGVuZ3RoLGU9dGhpcy5faGVhZCx0PWFyZ3VtZW50cy5sZW5ndGgtMTt0Pj0wO3QtLSllPXt2YWx1ZTphcmd1bWVudHNbdF0sbmV4dDplfTtyZXR1cm4gdGhpcy5fX293bmVySUQ/KHRoaXMuc2l6ZT1BLHRoaXMuX2hlYWQ9ZSx0aGlzLl9faGFzaD12b2lkIDAsdGhpcy5fX2FsdGVyZWQ9ITAsdGhpcyk6TXQoQSxlKX0sbHQucHJvdG90eXBlLnB1c2hBbGw9ZnVuY3Rpb24oQSl7aWYoMD09PShBPWkoQSkpLnNpemUpcmV0dXJuIHRoaXM7VUEoQS5zaXplKTt2YXIgZT10aGlzLnNpemUsdD10aGlzLl9oZWFkO3JldHVybiBBLnJldmVyc2UoKS5mb3JFYWNoKChmdW5jdGlvbihBKXtlKyssdD17dmFsdWU6QSxuZXh0OnR9fSkpLHRoaXMuX19vd25lcklEPyh0aGlzLnNpemU9ZSx0aGlzLl9oZWFkPXQsdGhpcy5fX2hhc2g9dm9pZCAwLHRoaXMuX19hbHRlcmVkPSEwLHRoaXMpOk10KGUsdCl9LGx0LnByb3RvdHlwZS5wb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zbGljZSgxKX0sbHQucHJvdG90eXBlLnVuc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sbHQucHJvdG90eXBlLnVuc2hpZnRBbGw9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMucHVzaEFsbChBKX0sbHQucHJvdG90eXBlLnNoaWZ0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucG9wLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sbHQucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLnNpemU/dGhpczp0aGlzLl9fb3duZXJJRD8odGhpcy5zaXplPTAsdGhpcy5faGVhZD12b2lkIDAsdGhpcy5fX2hhc2g9dm9pZCAwLHRoaXMuX19hbHRlcmVkPSEwLHRoaXMpOmR0KCl9LGx0LnByb3RvdHlwZS5zbGljZT1mdW5jdGlvbihBLGUpe2lmKEQoQSxlLHRoaXMuc2l6ZSkpcmV0dXJuIHRoaXM7dmFyIHQ9WShBLHRoaXMuc2l6ZSk7aWYoZihlLHRoaXMuc2l6ZSkhPT10aGlzLnNpemUpcmV0dXJuIFFBLnByb3RvdHlwZS5zbGljZS5jYWxsKHRoaXMsQSxlKTtmb3IodmFyIG49dGhpcy5zaXplLXQsaT10aGlzLl9oZWFkO3QtLTspaT1pLm5leHQ7cmV0dXJuIHRoaXMuX19vd25lcklEPyh0aGlzLnNpemU9bix0aGlzLl9oZWFkPWksdGhpcy5fX2hhc2g9dm9pZCAwLHRoaXMuX19hbHRlcmVkPSEwLHRoaXMpOk10KG4saSl9LGx0LnByb3RvdHlwZS5fX2Vuc3VyZU93bmVyPWZ1bmN0aW9uKEEpe3JldHVybiBBPT09dGhpcy5fX293bmVySUQ/dGhpczpBP010KHRoaXMuc2l6ZSx0aGlzLl9oZWFkLEEsdGhpcy5fX2hhc2gpOih0aGlzLl9fb3duZXJJRD1BLHRoaXMuX19hbHRlcmVkPSExLHRoaXMpfSxsdC5wcm90b3R5cGUuX19pdGVyYXRlPWZ1bmN0aW9uKEEsZSl7aWYoZSlyZXR1cm4gdGhpcy5yZXZlcnNlKCkuX19pdGVyYXRlKEEpO2Zvcih2YXIgdD0wLG49dGhpcy5faGVhZDtuJiYhMSE9PUEobi52YWx1ZSx0KyssdGhpcyk7KW49bi5uZXh0O3JldHVybiB0fSxsdC5wcm90b3R5cGUuX19pdGVyYXRvcj1mdW5jdGlvbihBLGUpe2lmKGUpcmV0dXJuIHRoaXMucmV2ZXJzZSgpLl9faXRlcmF0b3IoQSk7dmFyIHQ9MCxuPXRoaXMuX2hlYWQ7cmV0dXJuIG5ldyBHKChmdW5jdGlvbigpe2lmKG4pe3ZhciBlPW4udmFsdWU7cmV0dXJuIG49bi5uZXh0LFMoQSx0KyssZSl9cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX0pKX0sbHQuaXNTdGFjaz1odDt2YXIgd3QsQ3Q9IkBAX19JTU1VVEFCTEVfU1RBQ0tfX0BAIixJdD1sdC5wcm90b3R5cGU7ZnVuY3Rpb24gTXQoQSxlLHQsbil7dmFyIGk9T2JqZWN0LmNyZWF0ZShJdCk7cmV0dXJuIGkuc2l6ZT1BLGkuX2hlYWQ9ZSxpLl9fb3duZXJJRD10LGkuX19oYXNoPW4saS5fX2FsdGVyZWQ9ITEsaX1mdW5jdGlvbiBkdCgpe3JldHVybiB3dHx8KHd0PU10KDApKX1mdW5jdGlvbiBwdChBLGUpe3ZhciB0PWZ1bmN0aW9uKHQpe0EucHJvdG90eXBlW3RdPWVbdF19O3JldHVybiBPYmplY3Qua2V5cyhlKS5mb3JFYWNoKHQpLE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSkuZm9yRWFjaCh0KSxBfUl0W0N0XT0hMCxJdC53aXRoTXV0YXRpb25zPUdBLndpdGhNdXRhdGlvbnMsSXQuYXNNdXRhYmxlPUdBLmFzTXV0YWJsZSxJdC5hc0ltbXV0YWJsZT1HQS5hc0ltbXV0YWJsZSxJdC53YXNBbHRlcmVkPUdBLndhc0FsdGVyZWQsdC5JdGVyYXRvcj1HLHB0KHQse3RvQXJyYXk6ZnVuY3Rpb24oKXtVQSh0aGlzLnNpemUpO3ZhciBBPW5ldyBBcnJheSh0aGlzLnNpemV8fDApO3JldHVybiB0aGlzLnZhbHVlU2VxKCkuX19pdGVyYXRlKChmdW5jdGlvbihlLHQpe0FbdF09ZX0pKSxBfSx0b0luZGV4ZWRTZXE6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGZlKHRoaXMpfSx0b0pTOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9TZXEoKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBJiYiZnVuY3Rpb24iPT10eXBlb2YgQS50b0pTP0EudG9KUygpOkF9KSkuX190b0pTKCl9LHRvSlNPTjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnRvU2VxKCkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQSYmImZ1bmN0aW9uIj09dHlwZW9mIEEudG9KU09OP0EudG9KU09OKCk6QX0pKS5fX3RvSlMoKX0sdG9LZXllZFNlcTpmdW5jdGlvbigpe3JldHVybiBuZXcgWWUodGhpcywhMCl9LHRvTWFwOmZ1bmN0aW9uKCl7cmV0dXJuIHlBKHRoaXMudG9LZXllZFNlcSgpKX0sdG9PYmplY3Q6ZnVuY3Rpb24oKXtVQSh0aGlzLnNpemUpO3ZhciBBPXt9O3JldHVybiB0aGlzLl9faXRlcmF0ZSgoZnVuY3Rpb24oZSx0KXtBW3RdPWV9KSksQX0sdG9PcmRlcmVkTWFwOmZ1bmN0aW9uKCl7cmV0dXJuIGRlKHRoaXMudG9LZXllZFNlcSgpKX0sdG9PcmRlcmVkU2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEJ0KHModGhpcyk/dGhpcy52YWx1ZVNlcSgpOnRoaXMpfSx0b1NldDpmdW5jdGlvbigpe3JldHVybiBldChzKHRoaXMpP3RoaXMudmFsdWVTZXEoKTp0aGlzKX0sdG9TZXRTZXE6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IE5lKHRoaXMpfSx0b1NlcTpmdW5jdGlvbigpe3JldHVybiBhKHRoaXMpP3RoaXMudG9JbmRleGVkU2VxKCk6cyh0aGlzKT90aGlzLnRvS2V5ZWRTZXEoKTp0aGlzLnRvU2V0U2VxKCl9LHRvU3RhY2s6ZnVuY3Rpb24oKXtyZXR1cm4gbHQocyh0aGlzKT90aGlzLnZhbHVlU2VxKCk6dGhpcyl9LHRvTGlzdDpmdW5jdGlvbigpe3JldHVybiBpZShzKHRoaXMpP3RoaXMudmFsdWVTZXEoKTp0aGlzKX0sdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4iW0l0ZXJhYmxlXSJ9LF9fdG9TdHJpbmc6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gMD09PXRoaXMuc2l6ZT9BK2U6QSsiICIrdGhpcy50b1NlcSgpLm1hcCh0aGlzLl9fdG9TdHJpbmdNYXBwZXIpLmpvaW4oIiwgIikrIiAiK2V9LGNvbmNhdDpmdW5jdGlvbigpe3ZhciBlPUEuY2FsbChhcmd1bWVudHMsMCk7cmV0dXJuIHplKHRoaXMsYmUodGhpcyxlKSl9LGluY2x1ZGVzOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLnNvbWUoKGZ1bmN0aW9uKGUpe3JldHVybiBvQShlLEEpfSkpfSxlbnRyaWVzOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX19pdGVyYXRvcigyKX0sZXZlcnk6ZnVuY3Rpb24oQSxlKXtVQSh0aGlzLnNpemUpO3ZhciB0PSEwO3JldHVybiB0aGlzLl9faXRlcmF0ZSgoZnVuY3Rpb24obixpLHIpe2lmKCFBLmNhbGwoZSxuLGkscikpcmV0dXJuIHQ9ITEsITF9KSksdH0sZmlsdGVyOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHplKHRoaXMsUmUodGhpcyxBLGUsITApKX0sZmluZDpmdW5jdGlvbihBLGUsdCl7dmFyIG49dGhpcy5maW5kRW50cnkoQSxlKTtyZXR1cm4gbj9uWzFdOnR9LGZvckVhY2g6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gVUEodGhpcy5zaXplKSx0aGlzLl9faXRlcmF0ZShlP0EuYmluZChlKTpBKX0sam9pbjpmdW5jdGlvbihBKXtVQSh0aGlzLnNpemUpLEE9dm9pZCAwIT09QT8iIitBOiIsIjt2YXIgZT0iIix0PSEwO3JldHVybiB0aGlzLl9faXRlcmF0ZSgoZnVuY3Rpb24obil7dD90PSExOmUrPUEsZSs9bnVsbCE9bj9uLnRvU3RyaW5nKCk6IiJ9KSksZX0sa2V5czpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9faXRlcmF0b3IoMCl9LG1hcDpmdW5jdGlvbihBLGUpe3JldHVybiB6ZSh0aGlzLFRlKHRoaXMsQSxlKSl9LHJlZHVjZTpmdW5jdGlvbihBLGUsdCl7dmFyIG4saTtyZXR1cm4gVUEodGhpcy5zaXplKSxhcmd1bWVudHMubGVuZ3RoPDI/aT0hMDpuPWUsdGhpcy5fX2l0ZXJhdGUoKGZ1bmN0aW9uKGUscixvKXtpPyhpPSExLG49ZSk6bj1BLmNhbGwodCxuLGUscixvKX0pKSxufSxyZWR1Y2VSaWdodDpmdW5jdGlvbihBLGUsdCl7dmFyIG49dGhpcy50b0tleWVkU2VxKCkucmV2ZXJzZSgpO3JldHVybiBuLnJlZHVjZS5hcHBseShuLGFyZ3VtZW50cyl9LHJldmVyc2U6ZnVuY3Rpb24oKXtyZXR1cm4gemUodGhpcyx4ZSh0aGlzLCEwKSl9LHNsaWNlOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHplKHRoaXMsR2UodGhpcyxBLGUsITApKX0sc29tZTpmdW5jdGlvbihBLGUpe3JldHVybiF0aGlzLmV2ZXJ5KGZ0KEEpLGUpfSxzb3J0OmZ1bmN0aW9uKEEpe3JldHVybiB6ZSh0aGlzLHZlKHRoaXMsQSkpfSx2YWx1ZXM6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX2l0ZXJhdG9yKDEpfSxidXRMYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2xpY2UoMCwtMSl9LGlzRW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwIT09dGhpcy5zaXplPzA9PT10aGlzLnNpemU6IXRoaXMuc29tZSgoZnVuY3Rpb24oKXtyZXR1cm4hMH0pKX0sY291bnQ6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcChBP3RoaXMudG9TZXEoKS5maWx0ZXIoQSxlKTp0aGlzKX0sY291bnRCeTpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbihBLGUsdCl7dmFyIG49eUEoKS5hc011dGFibGUoKTtyZXR1cm4gQS5fX2l0ZXJhdGUoKGZ1bmN0aW9uKGkscil7bi51cGRhdGUoZS5jYWxsKHQsaSxyLEEpLDAsKGZ1bmN0aW9uKEEpe3JldHVybiBBKzF9KSl9KSksbi5hc0ltbXV0YWJsZSgpfSh0aGlzLEEsZSl9LGVxdWFsczpmdW5jdGlvbihBKXtyZXR1cm4gc0EodGhpcyxBKX0sZW50cnlTZXE6ZnVuY3Rpb24oKXt2YXIgQT10aGlzO2lmKEEuX2NhY2hlKXJldHVybiBuZXcgVihBLl9jYWNoZSk7dmFyIGU9QS50b1NlcSgpLm1hcChZdCkudG9JbmRleGVkU2VxKCk7cmV0dXJuIGUuZnJvbUVudHJ5U2VxPWZ1bmN0aW9uKCl7cmV0dXJuIEEudG9TZXEoKX0sZX0sZmlsdGVyTm90OmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHRoaXMuZmlsdGVyKGZ0KEEpLGUpfSxmaW5kRW50cnk6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQ7cmV0dXJuIHRoaXMuX19pdGVyYXRlKChmdW5jdGlvbih0LGkscil7aWYoQS5jYWxsKGUsdCxpLHIpKXJldHVybiBuPVtpLHRdLCExfSkpLG59LGZpbmRLZXk6ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLmZpbmRFbnRyeShBLGUpO3JldHVybiB0JiZ0WzBdfSxmaW5kTGFzdDpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIHRoaXMudG9LZXllZFNlcSgpLnJldmVyc2UoKS5maW5kKEEsZSx0KX0sZmluZExhc3RFbnRyeTpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIHRoaXMudG9LZXllZFNlcSgpLnJldmVyc2UoKS5maW5kRW50cnkoQSxlLHQpfSxmaW5kTGFzdEtleTpmdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLnRvS2V5ZWRTZXEoKS5yZXZlcnNlKCkuZmluZEtleShBLGUpfSxmaXJzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmZpbmQoRil9LGZsYXRNYXA6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gemUodGhpcyxmdW5jdGlvbihBLGUsdCl7dmFyIG49T2UoQSk7cmV0dXJuIEEudG9TZXEoKS5tYXAoKGZ1bmN0aW9uKGkscil7cmV0dXJuIG4oZS5jYWxsKHQsaSxyLEEpKX0pKS5mbGF0dGVuKCEwKX0odGhpcyxBLGUpKX0sZmxhdHRlbjpmdW5jdGlvbihBKXtyZXR1cm4gemUodGhpcyxIZSh0aGlzLEEsITApKX0sZnJvbUVudHJ5U2VxOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBVZSh0aGlzKX0sZ2V0OmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHRoaXMuZmluZCgoZnVuY3Rpb24oZSx0KXtyZXR1cm4gb0EodCxBKX0pLHZvaWQgMCxlKX0sZ2V0SW46ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQsbj10aGlzLGk9WGUoQSk7ISh0PWkubmV4dCgpKS5kb25lOyl7dmFyIHI9dC52YWx1ZTtpZigobj1uJiZuLmdldD9uLmdldChyLGwpOmwpPT09bClyZXR1cm4gZX1yZXR1cm4gbn0sZ3JvdXBCeTpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbihBLGUsdCl7dmFyIG49cyhBKSxpPShjKEEpP2RlKCk6eUEoKSkuYXNNdXRhYmxlKCk7QS5fX2l0ZXJhdGUoKGZ1bmN0aW9uKHIsbyl7aS51cGRhdGUoZS5jYWxsKHQscixvLEEpLChmdW5jdGlvbihBKXtyZXR1cm4oQT1BfHxbXSkucHVzaChuP1tvLHJdOnIpLEF9KSl9KSk7dmFyIHI9T2UoQSk7cmV0dXJuIGkubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gemUoQSxyKGUpKX0pKX0odGhpcyxBLGUpfSxoYXM6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuZ2V0KEEsbCkhPT1sfSxoYXNJbjpmdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5nZXRJbihBLGwpIT09bH0saXNTdWJzZXQ6ZnVuY3Rpb24oQSl7cmV0dXJuIEE9ImZ1bmN0aW9uIj09dHlwZW9mIEEuaW5jbHVkZXM/QTp0KEEpLHRoaXMuZXZlcnkoKGZ1bmN0aW9uKGUpe3JldHVybiBBLmluY2x1ZGVzKGUpfSkpfSxpc1N1cGVyc2V0OmZ1bmN0aW9uKEEpe3JldHVybihBPSJmdW5jdGlvbiI9PXR5cGVvZiBBLmlzU3Vic2V0P0E6dChBKSkuaXNTdWJzZXQodGhpcyl9LGtleU9mOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmZpbmRLZXkoKGZ1bmN0aW9uKGUpe3JldHVybiBvQShlLEEpfSkpfSxrZXlTZXE6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b1NlcSgpLm1hcChEdCkudG9JbmRleGVkU2VxKCl9LGxhc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b1NlcSgpLnJldmVyc2UoKS5maXJzdCgpfSxsYXN0S2V5T2Y6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMudG9LZXllZFNlcSgpLnJldmVyc2UoKS5rZXlPZihBKX0sbWF4OmZ1bmN0aW9uKEEpe3JldHVybiBrZSh0aGlzLEEpfSxtYXhCeTpmdW5jdGlvbihBLGUpe3JldHVybiBrZSh0aGlzLGUsQSl9LG1pbjpmdW5jdGlvbihBKXtyZXR1cm4ga2UodGhpcyxBP050KEEpOlR0KX0sbWluQnk6ZnVuY3Rpb24oQSxlKXtyZXR1cm4ga2UodGhpcyxlP050KGUpOlR0LEEpfSxyZXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2xpY2UoMSl9LHNraXA6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuc2xpY2UoTWF0aC5tYXgoMCxBKSl9LHNraXBMYXN0OmZ1bmN0aW9uKEEpe3JldHVybiB6ZSh0aGlzLHRoaXMudG9TZXEoKS5yZXZlcnNlKCkuc2tpcChBKS5yZXZlcnNlKCkpfSxza2lwV2hpbGU6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gemUodGhpcyxTZSh0aGlzLEEsZSwhMCkpfSxza2lwVW50aWw6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5za2lwV2hpbGUoZnQoQSksZSl9LHNvcnRCeTpmdW5jdGlvbihBLGUpe3JldHVybiB6ZSh0aGlzLHZlKHRoaXMsZSxBKSl9LHRha2U6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuc2xpY2UoMCxNYXRoLm1heCgwLEEpKX0sdGFrZUxhc3Q6ZnVuY3Rpb24oQSl7cmV0dXJuIHplKHRoaXMsdGhpcy50b1NlcSgpLnJldmVyc2UoKS50YWtlKEEpLnJldmVyc2UoKSl9LHRha2VXaGlsZTpmdW5jdGlvbihBLGUpe3JldHVybiB6ZSh0aGlzLGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1WZShBKTtyZXR1cm4gbi5fX2l0ZXJhdGVVbmNhY2hlZD1mdW5jdGlvbihuLGkpe3ZhciByPXRoaXM7aWYoaSlyZXR1cm4gdGhpcy5jYWNoZVJlc3VsdCgpLl9faXRlcmF0ZShuLGkpO3ZhciBvPTA7cmV0dXJuIEEuX19pdGVyYXRlKChmdW5jdGlvbihBLGkscyl7cmV0dXJuIGUuY2FsbCh0LEEsaSxzKSYmKytvJiZuKEEsaSxyKX0pKSxvfSxuLl9faXRlcmF0b3JVbmNhY2hlZD1mdW5jdGlvbihuLGkpe3ZhciByPXRoaXM7aWYoaSlyZXR1cm4gdGhpcy5jYWNoZVJlc3VsdCgpLl9faXRlcmF0b3IobixpKTt2YXIgbz1BLl9faXRlcmF0b3IoMixpKSxzPSEwO3JldHVybiBuZXcgRygoZnVuY3Rpb24oKXtpZighcylyZXR1cm57dmFsdWU6dm9pZCAwLGRvbmU6ITB9O3ZhciBBPW8ubmV4dCgpO2lmKEEuZG9uZSlyZXR1cm4gQTt2YXIgaT1BLnZhbHVlLGE9aVswXSxCPWlbMV07cmV0dXJuIGUuY2FsbCh0LEIsYSxyKT8yPT09bj9BOlMobixhLEIsQSk6KHM9ITEse3ZhbHVlOnZvaWQgMCxkb25lOiEwfSl9KSl9LG59KHRoaXMsQSxlKSl9LHRha2VVbnRpbDpmdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLnRha2VXaGlsZShmdChBKSxlKX0sdmFsdWVTZXE6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50b0luZGV4ZWRTZXEoKX0saGFzaENvZGU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fX2hhc2h8fCh0aGlzLl9faGFzaD1mdW5jdGlvbihBKXtpZihBLnNpemU9PT0xLzApcmV0dXJuIDA7dmFyIGU9YyhBKSx0PXMoQSksbj1lPzE6MDtyZXR1cm4gZnVuY3Rpb24oQSxlKXtyZXR1cm4gZT1sQShlLDM0MzI5MTgzNTMpLGU9bEEoZTw8MTV8ZT4+Pi0xNSw0NjE4NDU5MDcpLGU9bEEoZTw8MTN8ZT4+Pi0xMyw1KSxlPWxBKChlPShlKzM4NjQyOTIxOTZ8MCleQSleZT4+PjE2LDIyNDY4MjI1MDcpLGU9aEEoKGU9bEEoZV5lPj4+MTMsMzI2NjQ4OTkwOSkpXmU+Pj4xNil9KEEuX19pdGVyYXRlKHQ/ZT9mdW5jdGlvbihBLGUpe249MzEqbit4dCh3QShBKSx3QShlKSl8MH06ZnVuY3Rpb24oQSxlKXtuPW4reHQod0EoQSksd0EoZSkpfDB9OmU/ZnVuY3Rpb24oQSl7bj0zMSpuK3dBKEEpfDB9OmZ1bmN0aW9uKEEpe249bit3QShBKXwwfSksbil9KHRoaXMpKX19KTt2YXIgbXQ9dC5wcm90b3R5cGU7bXRbZ109ITAsbXRbUl09bXQudmFsdWVzLG10Ll9fdG9KUz1tdC50b0FycmF5LG10Ll9fdG9TdHJpbmdNYXBwZXI9VXQsbXQuaW5zcGVjdD1tdC50b1NvdXJjZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvU3RyaW5nKCl9LG10LmNoYWluPW10LmZsYXRNYXAsbXQuY29udGFpbnM9bXQuaW5jbHVkZXMscHQobix7ZmxpcDpmdW5jdGlvbigpe3JldHVybiB6ZSh0aGlzLHllKHRoaXMpKX0sbWFwRW50cmllczpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMsbj0wO3JldHVybiB6ZSh0aGlzLHRoaXMudG9TZXEoKS5tYXAoKGZ1bmN0aW9uKGkscil7cmV0dXJuIEEuY2FsbChlLFtyLGldLG4rKyx0KX0pKS5mcm9tRW50cnlTZXEoKSl9LG1hcEtleXM6ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzO3JldHVybiB6ZSh0aGlzLHRoaXMudG9TZXEoKS5mbGlwKCkubWFwKChmdW5jdGlvbihuLGkpe3JldHVybiBBLmNhbGwoZSxuLGksdCl9KSkuZmxpcCgpKX19KTt2YXIgRnQ9bi5wcm90b3R5cGU7ZnVuY3Rpb24gRHQoQSxlKXtyZXR1cm4gZX1mdW5jdGlvbiBZdChBLGUpe3JldHVybltlLEFdfWZ1bmN0aW9uIGZ0KEEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiFBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19ZnVuY3Rpb24gTnQoQSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuLUEuYXBwbHkodGhpcyxhcmd1bWVudHMpfX1mdW5jdGlvbiBVdChBKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIEE/SlNPTi5zdHJpbmdpZnkoQSk6U3RyaW5nKEEpfWZ1bmN0aW9uIHl0KCl7cmV0dXJuIGQoYXJndW1lbnRzKX1mdW5jdGlvbiBUdChBLGUpe3JldHVybiBBPGU/MTpBPmU/LTE6MH1mdW5jdGlvbiB4dChBLGUpe3JldHVybiBBXmUrMjY1NDQzNTc2OSsoQTw8NikrKEE+PjIpfDB9cmV0dXJuIEZ0W0VdPSEwLEZ0W1JdPW10LmVudHJpZXMsRnQuX190b0pTPW10LnRvT2JqZWN0LEZ0Ll9fdG9TdHJpbmdNYXBwZXI9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSkrIjogIitVdChBKX0scHQoaSx7dG9LZXllZFNlcTpmdW5jdGlvbigpe3JldHVybiBuZXcgWWUodGhpcywhMSl9LGZpbHRlcjpmdW5jdGlvbihBLGUpe3JldHVybiB6ZSh0aGlzLFJlKHRoaXMsQSxlLCExKSl9LGZpbmRJbmRleDpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuZmluZEVudHJ5KEEsZSk7cmV0dXJuIHQ/dFswXTotMX0saW5kZXhPZjpmdW5jdGlvbihBKXt2YXIgZT10aGlzLmtleU9mKEEpO3JldHVybiB2b2lkIDA9PT1lPy0xOmV9LGxhc3RJbmRleE9mOmZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMubGFzdEtleU9mKEEpO3JldHVybiB2b2lkIDA9PT1lPy0xOmV9LHJldmVyc2U6ZnVuY3Rpb24oKXtyZXR1cm4gemUodGhpcyx4ZSh0aGlzLCExKSl9LHNsaWNlOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHplKHRoaXMsR2UodGhpcyxBLGUsITEpKX0sc3BsaWNlOmZ1bmN0aW9uKEEsZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aDtpZihlPU1hdGgubWF4KDB8ZSwwKSwwPT09dHx8Mj09PXQmJiFlKXJldHVybiB0aGlzO0E9WShBLEE8MD90aGlzLmNvdW50KCk6dGhpcy5zaXplKTt2YXIgbj10aGlzLnNsaWNlKDAsQSk7cmV0dXJuIHplKHRoaXMsMT09PXQ/bjpuLmNvbmNhdChkKGFyZ3VtZW50cywyKSx0aGlzLnNsaWNlKEErZSkpKX0sZmluZExhc3RJbmRleDpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuZmluZExhc3RFbnRyeShBLGUpO3JldHVybiB0P3RbMF06LTF9LGZpcnN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0KDApfSxmbGF0dGVuOmZ1bmN0aW9uKEEpe3JldHVybiB6ZSh0aGlzLEhlKHRoaXMsQSwhMSkpfSxnZXQ6ZnVuY3Rpb24oQSxlKXtyZXR1cm4oQT1tKHRoaXMsQSkpPDB8fHRoaXMuc2l6ZT09PTEvMHx8dm9pZCAwIT09dGhpcy5zaXplJiZBPnRoaXMuc2l6ZT9lOnRoaXMuZmluZCgoZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD09PUF9KSx2b2lkIDAsZSl9LGhhczpmdW5jdGlvbihBKXtyZXR1cm4oQT1tKHRoaXMsQSkpPj0wJiYodm9pZCAwIT09dGhpcy5zaXplP3RoaXMuc2l6ZT09PTEvMHx8QTx0aGlzLnNpemU6LTEhPT10aGlzLmluZGV4T2YoQSkpfSxpbnRlcnBvc2U6ZnVuY3Rpb24oQSl7cmV0dXJuIHplKHRoaXMsZnVuY3Rpb24oQSxlKXt2YXIgdD1WZShBKTtyZXR1cm4gdC5zaXplPUEuc2l6ZSYmMipBLnNpemUtMSx0Ll9faXRlcmF0ZVVuY2FjaGVkPWZ1bmN0aW9uKHQsbil7dmFyIGk9dGhpcyxyPTA7cmV0dXJuIEEuX19pdGVyYXRlKChmdW5jdGlvbihBLG4pe3JldHVybighcnx8ITEhPT10KGUscisrLGkpKSYmITEhPT10KEEscisrLGkpfSksbikscn0sdC5fX2l0ZXJhdG9yVW5jYWNoZWQ9ZnVuY3Rpb24odCxuKXt2YXIgaSxyPUEuX19pdGVyYXRvcigxLG4pLG89MDtyZXR1cm4gbmV3IEcoKGZ1bmN0aW9uKCl7cmV0dXJuKCFpfHxvJTIpJiYoaT1yLm5leHQoKSkuZG9uZT9pOm8lMj9TKHQsbysrLGUpOlModCxvKyssaS52YWx1ZSxpKX0pKX0sdH0odGhpcyxBKSl9LGludGVybGVhdmU6ZnVuY3Rpb24oKXt2YXIgQT1bdGhpc10uY29uY2F0KGQoYXJndW1lbnRzKSksZT1KZSh0aGlzLnRvU2VxKCksUC5vZixBKSx0PWUuZmxhdHRlbighMCk7cmV0dXJuIGUuc2l6ZSYmKHQuc2l6ZT1lLnNpemUqQS5sZW5ndGgpLHplKHRoaXMsdCl9LGtleVNlcTpmdW5jdGlvbigpe3JldHVybiBjQSgwLHRoaXMuc2l6ZSl9LGxhc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXQoLTEpfSxza2lwV2hpbGU6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gemUodGhpcyxTZSh0aGlzLEEsZSwhMSkpfSx6aXA6ZnVuY3Rpb24oKXt2YXIgQT1bdGhpc10uY29uY2F0KGQoYXJndW1lbnRzKSk7cmV0dXJuIHplKHRoaXMsSmUodGhpcyx5dCxBKSl9LHppcFdpdGg6ZnVuY3Rpb24oQSl7dmFyIGU9ZChhcmd1bWVudHMpO3JldHVybiBlWzBdPXRoaXMsemUodGhpcyxKZSh0aGlzLEEsZSkpfX0pLGkucHJvdG90eXBlW1FdPSEwLGkucHJvdG90eXBlW3VdPSEwLHB0KHIse2dldDpmdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLmhhcyhBKT9BOmV9LGluY2x1ZGVzOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmhhcyhBKX0sa2V5U2VxOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVTZXEoKX19KSxyLnByb3RvdHlwZS5oYXM9bXQuaW5jbHVkZXMsci5wcm90b3R5cGUuY29udGFpbnM9ci5wcm90b3R5cGUuaW5jbHVkZXMscHQoTCxuLnByb3RvdHlwZSkscHQoUCxpLnByb3RvdHlwZSkscHQoTyxyLnByb3RvdHlwZSkscHQoRUEsbi5wcm90b3R5cGUpLHB0KFFBLGkucHJvdG90eXBlKSxwdCh1QSxyLnByb3RvdHlwZSkse0l0ZXJhYmxlOnQsU2VxOnosQ29sbGVjdGlvbjpnQSxNYXA6eUEsT3JkZXJlZE1hcDpkZSxMaXN0OmllLFN0YWNrOmx0LFNldDpldCxPcmRlcmVkU2V0OkJ0LFJlY29yZDpaZSxSYW5nZTpjQSxSZXBlYXQ6YUEsaXM6b0EsZnJvbUpTOm5BfX0oKX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtsZXQgdD0iIjtmb3IoY29uc3QgQSBpbiBlKXtsZXQgbj1lW0FdLnZhbHVlOyJDVVJSRU5UTUVOVSI9PT1BJiYobj1uLnRvTG93ZXJDYXNlKCkpLHQrPSJfIi5jb25jYXQobil9cmV0dXJuIiIuY29uY2F0KEEpLmNvbmNhdCh0KX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNSksaT1bXTtjbGFzcyBye2NvbnN0cnVjdG9yKEEpe3RoaXMuaXNMb29wPSExLHRoaXMud2FycE1vZGU9QSx0aGlzLmp1c3RSZXBvcnRlZD1udWxsLHRoaXMucmVwb3J0aW5nPSIiLHRoaXMucmVwb3J0ZWQ9bnVsbCx0aGlzLndhaXRpbmdSZXBvcnRlcj1udWxsLHRoaXMucGFyYW1zPW51bGwsdGhpcy5leGVjdXRpb25Db250ZXh0PW51bGwsdGhpcy5vcD1udWxsfXJlc2V0KCl7cmV0dXJuIHRoaXMuaXNMb29wPSExLHRoaXMud2FycE1vZGU9ITEsdGhpcy5qdXN0UmVwb3J0ZWQ9bnVsbCx0aGlzLnJlcG9ydGVkPW51bGwsdGhpcy53YWl0aW5nUmVwb3J0ZXI9bnVsbCx0aGlzLnBhcmFtcz1udWxsLHRoaXMuZXhlY3V0aW9uQ29udGV4dD1udWxsLHRoaXMub3A9bnVsbCx0aGlzfXJldXNlKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOnRoaXMud2FycE1vZGU7cmV0dXJuIHRoaXMucmVzZXQoKSx0aGlzLndhcnBNb2RlPUJvb2xlYW4oQSksdGhpc31zdGF0aWMgY3JlYXRlKEEpe2NvbnN0IGU9aS5wb3AoKTtyZXR1cm4gdm9pZCAwIT09ZT8oZS53YXJwTW9kZT1Cb29sZWFuKEEpLGUpOm5ldyByKEEpfXN0YXRpYyByZWxlYXNlKEEpe3ZvaWQgMCE9PUEmJmkucHVzaChBLnJlc2V0KCkpfX1jbGFzcyBve2NvbnN0cnVjdG9yKEEpe3RoaXMudG9wQmxvY2s9QSx0aGlzLnN0YWNrPVtdLHRoaXMuc3RhY2tGcmFtZXM9W10sdGhpcy5zdGF0dXM9MCx0aGlzLmlzS2lsbGVkPSExLHRoaXMudGFyZ2V0PW51bGwsdGhpcy5ibG9ja0NvbnRhaW5lcj1udWxsLHRoaXMucmVxdWVzdFNjcmlwdEdsb3dJbkZyYW1lPSExLHRoaXMuYmxvY2tHbG93SW5GcmFtZT1udWxsLHRoaXMud2FycFRpbWVyPW51bGwsdGhpcy5qdXN0UmVwb3J0ZWQ9bnVsbCx0aGlzLnRyaWVkVG9Db21waWxlPSExLHRoaXMuaXNDb21waWxlZD0hMSx0aGlzLnRpbWVyPW51bGwsdGhpcy5nZW5lcmF0b3I9bnVsbCx0aGlzLnByb2NlZHVyZXM9bnVsbCx0aGlzLmV4ZWN1dGFibGVIYXQ9ITEsdGhpcy5jb21wYXRpYmlsaXR5U3RhY2tGcmFtZT1udWxsLHRoaXMudmFyaWFibGVzPU9iamVjdC5jcmVhdGUobnVsbCl9c3RhdGljIGdldCBTVEFUVVNfUlVOTklORygpe3JldHVybiAwfXN0YXRpYyBnZXQgU1RBVFVTX1BST01JU0VfV0FJVCgpe3JldHVybiAxfXN0YXRpYyBnZXQgU1RBVFVTX1lJRUxEKCl7cmV0dXJuIDJ9c3RhdGljIGdldCBTVEFUVVNfWUlFTERfVElDSygpe3JldHVybiAzfXN0YXRpYyBnZXQgU1RBVFVTX1BBVVNFRCgpe3JldHVybiA1fXN0YXRpYyBnZXQgU1RBVFVTX0RPTkUoKXtyZXR1cm4gNH1zdGF0aWMgZ2V0SWRGcm9tVGFyZ2V0QW5kQmxvY2soQSxlKXtyZXR1cm4iIi5jb25jYXQoQS5pZCwiJiIpLmNvbmNhdChlKX1nZXRJZCgpe3JldHVybiBvLmdldElkRnJvbVRhcmdldEFuZEJsb2NrKHRoaXMudGFyZ2V0LHRoaXMudG9wQmxvY2spfXB1c2hTdGFjayhBKXtpZih0aGlzLnN0YWNrLnB1c2goQSksdGhpcy5zdGFjay5sZW5ndGg+dGhpcy5zdGFja0ZyYW1lcy5sZW5ndGgpe2NvbnN0IEE9dGhpcy5zdGFja0ZyYW1lc1t0aGlzLnN0YWNrRnJhbWVzLmxlbmd0aC0xXTt0aGlzLnN0YWNrRnJhbWVzLnB1c2goci5jcmVhdGUodm9pZCAwIT09QSYmQS53YXJwTW9kZSkpfX1yZXVzZVN0YWNrRm9yTmV4dEJsb2NrKEEpe3RoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV09QSx0aGlzLnN0YWNrRnJhbWVzW3RoaXMuc3RhY2tGcmFtZXMubGVuZ3RoLTFdLnJldXNlKCl9cG9wU3RhY2soKXtyZXR1cm4gci5yZWxlYXNlKHRoaXMuc3RhY2tGcmFtZXMucG9wKCkpLHRoaXMuc3RhY2sucG9wKCl9c3RvcFRoaXNTY3JpcHQoKXtsZXQgQT10aGlzLnBlZWtTdGFjaygpO2Zvcig7bnVsbCE9PUE7KXtjb25zdCBlPXRoaXMudGFyZ2V0LmJsb2Nrcy5nZXRCbG9jayhBKTtpZih0aGlzLnBlZWtTdGFja0ZyYW1lKCkud2FpdGluZ1JlcG9ydGVyKWJyZWFrO2lmKHZvaWQgMCE9PWUmJiJwcm9jZWR1cmVzX2NhbGwiPT09ZS5vcGNvZGUpe3RoaXMuZ29Ub05leHRCbG9jaygpO2JyZWFrfXRoaXMucG9wU3RhY2soKSxBPXRoaXMucGVla1N0YWNrKCl9MD09PXRoaXMuc3RhY2subGVuZ3RoJiYodGhpcy5yZXF1ZXN0U2NyaXB0R2xvd0luRnJhbWU9ITEsdGhpcy5zdGF0dXM9by5TVEFUVVNfRE9ORSx0aGlzLnRhcmdldC5ydW50aW1lLmVtaXQoIlRIUkVBRF9GSU5JU0hFRCIsdGhpcykpfXBlZWtTdGFjaygpe3JldHVybiB0aGlzLnN0YWNrLmxlbmd0aD4wP3RoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV06bnVsbH1wZWVrU3RhY2tGcmFtZSgpe3JldHVybiB0aGlzLnN0YWNrRnJhbWVzLmxlbmd0aD4wP3RoaXMuc3RhY2tGcmFtZXNbdGhpcy5zdGFja0ZyYW1lcy5sZW5ndGgtMV06bnVsbH1wZWVrUGFyZW50U3RhY2tGcmFtZSgpe3JldHVybiB0aGlzLnN0YWNrRnJhbWVzLmxlbmd0aD4xP3RoaXMuc3RhY2tGcmFtZXNbdGhpcy5zdGFja0ZyYW1lcy5sZW5ndGgtMl06bnVsbH1wdXNoUmVwb3J0ZWRWYWx1ZShBKXt0aGlzLmp1c3RSZXBvcnRlZD12b2lkIDA9PT1BP251bGw6QX1pbml0UGFyYW1zKCl7Y29uc3QgQT10aGlzLnBlZWtTdGFja0ZyYW1lKCk7bnVsbD09PUEucGFyYW1zJiYoQS5wYXJhbXM9e30pfXBhdXNlKCl7dGhpcy5vcmlnaW5hbFN0YXR1cz10aGlzLnN0YXR1cyx0aGlzLnN0YXR1cz1vLlNUQVRVU19QQVVTRUQsdGhpcy50aW1lciYmdGhpcy50aW1lci5wYXVzZSgpfXBsYXkoKXt0aGlzLnN0YXR1cz10aGlzLm9yaWdpbmFsU3RhdHVzLHRoaXMudGltZXImJnRoaXMudGltZXIucGxheSgpfXB1c2hQYXJhbShBLGUpe3RoaXMucGVla1N0YWNrRnJhbWUoKS5wYXJhbXNbQV09ZX1nZXRQYXJhbShBKXtmb3IobGV0IGU9dGhpcy5zdGFja0ZyYW1lcy5sZW5ndGgtMTtlPj0wO2UtLSl7Y29uc3QgdD10aGlzLnN0YWNrRnJhbWVzW2VdO2lmKG51bGwhPT10LnBhcmFtcylyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQucGFyYW1zLEEpP3QucGFyYW1zW0FdOm51bGx9cmV0dXJuIG51bGx9Z2V0QWxscGFyYW1zKCl7cmV0dXJuIHRoaXMucGVla1N0YWNrRnJhbWUoKS5wYXJhbXN9YXRTdGFja1RvcCgpe3JldHVybiB0aGlzLnBlZWtTdGFjaygpPT09dGhpcy50b3BCbG9ja31nb1RvTmV4dEJsb2NrKCl7Y29uc3QgQT10aGlzLnRhcmdldC5ibG9ja3MuZ2V0TmV4dEJsb2NrKHRoaXMucGVla1N0YWNrKCkpO3RoaXMucmV1c2VTdGFja0Zvck5leHRCbG9jayhBKX1pc1JlY3Vyc2l2ZUNhbGwoQSl7bGV0IGU9NTtmb3IobGV0IHQ9dGhpcy5zdGFja0ZyYW1lcy5sZW5ndGgtMS0xO3Q+PTA7dC0tKXtjb25zdCBuPXRoaXMudGFyZ2V0LmJsb2Nrcy5nZXRCbG9jayh0aGlzLnN0YWNrRnJhbWVzW3RdLm9wLmlkKXx8dGhpcy50YXJnZXQucnVudGltZS5mbHlvdXRCbG9ja3MuZ2V0QmxvY2sodGhpcy5zdGFja0ZyYW1lc1t0XS5vcC5pZCk7aWYoInByb2NlZHVyZXNfY2FsbCI9PT1uLm9wY29kZSYmbi5tdXRhdGlvbi5wcm9jY29kZT09PUEpcmV0dXJuITA7aWYoLS1lPDApcmV0dXJuITF9cmV0dXJuITF9dHJ5Q29tcGlsZSgpe2lmKCF0aGlzLmJsb2NrQ29udGFpbmVyKXJldHVybjtjb25zdCBBPXQoMjIwKTt0aGlzLnRyaWVkVG9Db21waWxlPSEwO2NvbnN0IGU9IXRoaXMuc3RhY2tDbGljayxpPXRoaXMudG9wQmxvY2sscj10aGlzLmJsb2NrQ29udGFpbmVyLmdldEJsb2NrKGkpP3RoaXMuYmxvY2tDb250YWluZXI6dGhpcy50YXJnZXQucnVudGltZS5mbHlvdXRCbG9ja3Msbz1lJiZyLmdldENhY2hlZENvbXBpbGVSZXN1bHQoaSk7aWYobyYmIW8uc3VjY2VzcylyZXR1cm47bGV0IHM7aWYobylzPW8udmFsdWU7ZWxzZSB0cnl7cz1BKHRoaXMpLGUmJnIuY2FjaGVDb21waWxlUmVzdWx0KGkscyl9Y2F0Y2goQSl7cmV0dXJuIG4uZXJyb3IoImNhbm5vdCBjb21waWxlIHNjcmlwdCIsdGhpcy50YXJnZXQuZ2V0TmFtZSgpLEEpLGUmJnIuY2FjaGVDb21waWxlRXJyb3IoaSxBKSx2b2lkIHRoaXMudGFyZ2V0LnJ1bnRpbWUuZW1pdENvbXBpbGVFcnJvcih0aGlzLnRhcmdldCxBKX10aGlzLnByb2NlZHVyZXM9e307Zm9yKGNvbnN0IEEgb2YgT2JqZWN0LmtleXMocy5wcm9jZWR1cmVzKSl0aGlzLnByb2NlZHVyZXNbQV09cy5wcm9jZWR1cmVzW0FdKHRoaXMpO3RoaXMuZ2VuZXJhdG9yPXMuc3RhcnRpbmdGdW5jdGlvbih0aGlzKSgpLHRoaXMuZXhlY3V0YWJsZUhhdD1zLmV4ZWN1dGFibGVIYXQsdGhpcy5ibG9ja0NvbnRhaW5lci5mb3JjZU5vR2xvd3x8KHRoaXMuYmxvY2tHbG93SW5GcmFtZT10aGlzLnRvcEJsb2NrLHRoaXMucmVxdWVzdFNjcmlwdEdsb3dJbkZyYW1lPSEwKSx0aGlzLmlzQ29tcGlsZWQ9ITB9fW8uX1N0YWNrRnJhbWU9cixBLmV4cG9ydHM9b30sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e21hbmhhdHRhbjpmdW5jdGlvbihBLGUpe3JldHVybiBBK2V9LGV1Y2xpZGVhbjpmdW5jdGlvbihBLGUpe3JldHVybiBNYXRoLnNxcnQoQSpBK2UqZSl9LG9jdGlsZTpmdW5jdGlvbihBLGUpe3ZhciB0PU1hdGguU1FSVDItMTtyZXR1cm4gQTxlP3QqQStlOnQqZStBfSxjaGVieXNoZXY6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gTWF0aC5tYXgoQSxlKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDIyKSxpPXQoNzEpLHI9dCgxOSksbz10KDQ3KSxzPXQoNTcpLGE9dCgxNiksQj10KDUpLGM9dCg5KSxnPXQoNiksRT10KDExKSxRPXQoMTAyKSx1PXQoNyksbD10KDQ0NCksaD10KDQ0NSkse2xvYWRDb3N0dW1lOnd9PXQoNDkpLHtsb2FkU291bmQ6Q309dCg0OCkse2Rlc2VyaWFsaXplQ29zdHVtZTpJLGRlc2VyaWFsaXplU291bmQ6TX09dCgxMTApLGQ9dCg0NDYpLHA9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxtPVsiYXJndW1lbnQiLCJjb2xvdXIiLCJjb250cm9sIiwiZGF0YSIsImV2ZW50IiwibG9va3MiLCJtYXRoIiwibW90aW9uIiwib3BlcmF0b3IiLCJwcm9jZWR1cmVzIiwic2Vuc2luZyIsInNvdW5kIl0sRj0xMixEPTEzLFk9e21hdGhfbnVtYmVyOls0LCJOVU0iXSxtYXRoX3Bvc2l0aXZlX251bWJlcjpbNSwiTlVNIl0sbWF0aF93aG9sZV9udW1iZXI6WzYsIk5VTSJdLG1hdGhfaW50ZWdlcjpbNywiTlVNIl0sbWF0aF9hbmdsZTpbOCwiTlVNIl0sY29sb3VyX3BpY2tlcjpbOSwiQ09MT1VSIl0sdGV4dDpbMTAsIlRFWFQiXSxldmVudF9icm9hZGNhc3RfbWVudTpbMTEsIkJST0FEQ0FTVF9PUFRJT04iXSxkYXRhX3ZhcmlhYmxlOltGLCJWQVJJQUJMRSJdLGRhdGFfbGlzdGNvbnRlbnRzOltELCJMSVNUIl19LGY9e2p3VW5pdGVfYWx3YXlzOiJldmVudF9hbHdheXMiLGp3VW5pdGVfd2hlbmFueXRoaW5nOiJldmVudF93aGVuYW55dGhpbmciLGp3VW5pdGVfZ2V0c3ByaXRld2l0aGF0dHJpYjoic2Vuc2luZ19nZXRzcHJpdGV3aXRoYXR0cmliIixqd1VuaXRlX2JhY2tUb0dyZWVuRmxhZzoiY29udHJvbF9iYWNrVG9HcmVlbkZsYWciLGp3VW5pdGVfdHJ1ZUJvb2xlYW46Im9wZXJhdG9yX3RydWVCb29sZWFuIixqd1VuaXRlX2ZhbHNlQm9vbGVhbjoib3BlcmF0b3JfZmFsc2VCb29sZWFuIixqd1VuaXRlX3JhbmRvbUJvb2xlYW46Im9wZXJhdG9yX3JhbmRvbUJvb2xlYW4iLGp3VW5pdGVfbW9iaWxlOiJzZW5zaW5nX21vYmlsZSIsandVbml0ZV90aGluZ19pc190ZXh0OiJzZW5zaW5nX3RoaW5nX2lzX3RleHQiLGp3VW5pdGVfdGhpbmdfaXNfbnVtYmVyOiJzZW5zaW5nX3RoaW5nX2lzX251bWJlciIsandVbml0ZV9pZl9yZXR1cm5fZWxzZV9yZXR1cm46ImNvbnRyb2xfaWZfcmV0dXJuX2Vsc2VfcmV0dXJuIixqd1VuaXRlX2luZGV4T2ZUZXh0SW5UZXh0OiJvcGVyYXRvcl9pbmRleE9mVGV4dEluVGV4dCIsandVbml0ZV9yZWdleHRlc3Q6InNlbnNpbmdfcmVnZXh0ZXN0Iixqd1VuaXRlX3JlZ2V4bWF0Y2g6Im9wZXJhdG9yX3JlZ2V4bWF0Y2giLGp3VW5pdGVfcmVwbGFjZUFsbDoib3BlcmF0b3JfcmVwbGFjZUFsbCIsandVbml0ZV9nZXRMZXR0ZXJzRnJvbUluZGV4VG9JbmRleEluVGV4dDoib3BlcmF0b3JfZ2V0TGV0dGVyc0Zyb21JbmRleFRvSW5kZXhJblRleHQiLGp3VW5pdGVfcmVhZExpbmVJbk11bHRpbGluZVRleHQ6Im9wZXJhdG9yX3JlYWRMaW5lSW5NdWx0aWxpbmVUZXh0Iixqd1VuaXRlX25ld0xpbmU6Im9wZXJhdG9yX25ld0xpbmUiLGp3VW5pdGVfc3RyaW5naWZ5OiJvcGVyYXRvcl9zdHJpbmdpZnkiLGp3VW5pdGVfbGVycEZ1bmM6Im9wZXJhdG9yX2xlcnBGdW5jIixqd1VuaXRlX2Fkdk1hdGg6Im9wZXJhdG9yX2Fkdk1hdGgiLGp3VW5pdGVfY29uc3RyYWlubnVtYmVyOiJvcGVyYXRvcl9jb25zdHJhaW5udW1iZXIifSxOPXtncmlmZnBhdGNoOntpZDoiZ3JpZmZwYXRjaCIsdXJsOiJodHRwczovL2V4dGVuc2lvbnMudHVyYm93YXJwLm9yZy9ib3gyZC5qcyJ9LG9wZXJhdG9yczooQSxlKT0+e2xldCB0PWUuYmxvY2tzO2NvbnN0IG49T2JqZWN0LmtleXModCk7Zm9yKGxldCBBLGU9MDtlPG4ubGVuZ3RoO2UrKylBPXRbbltlXV0sIm9iamVjdCIhPXR5cGVvZiBBfHxBcnJheS5pc0FycmF5KEEpfHwoIm9wZXJhdG9yc19leHBhbmRhYmxlam9pbmlucHV0cyI9PT1BLm9wY29kZSYmKEEub3Bjb2RlPSJvcGVyYXRvcl9leHBhbmRhYmxlam9pbmlucHV0cyIpLHRbbltlXV09QSk7ZS5ibG9ja3M9dH0sandVbml0ZTooQSxlLHQpPT57QS5leHRlbnNpb25JRHMuZGVsZXRlKCJqd1VuaXRlIik7bGV0IG49ZS5ibG9ja3M7Y29uc3QgaT1PYmplY3Qua2V5cyhuKSxyPUEucGF0Y2hlcjtmb3IobGV0IEEsbz0wO288aS5sZW5ndGg7bysrKWlmKEE9bltpW29dXSwib2JqZWN0Ij09dHlwZW9mIEEmJiFBcnJheS5pc0FycmF5KEEpKXtpZihmW0Eub3Bjb2RlXSYmKEEub3Bjb2RlPWZbQS5vcGNvZGVdLCJzZW5zaW5nX3JlZ2V4dGVzdCIhPT1BLm9wY29kZSYmIm9wZXJhdG9yX3JlZ2V4bWF0Y2giIT09QS5vcGNvZGV8fChBLmlucHV0cy5yZWdydWxlPVsxLFsxMCwiZyJdXSkpLCJqd1VuaXRlX3NldFJlcGxhY2VyIj09PUEub3Bjb2RlfHwiandVbml0ZV9yZXBsYWNlV2l0aFJlcGxhY2VycyI9PT1BLm9wY29kZSl7ci5sb2FkZWQuaW5jbHVkZXMoImpnSlNPTiIpfHwodC5leHRlbnNpb25NYW5hZ2VyLmxvYWRFeHRlbnNpb25VUkwoImpnSlNPTiIpLHIubG9hZGVkLnB1c2goImpnSlNPTiIpKSxuPU9iamVjdC5hc3NpZ24obix1LnNpbXBsZShkLmJsb2NrcykpLGUudmFyaWFibGVzPU9iamVjdC5hc3NpZ24oZS52YXJpYWJsZXMsdS5zaW1wbGUoZC52YXJpYWJsZXMpKTtjb25zdCBpPSJqd1VuaXRlX3NldFJlcGxhY2VyIj09PUEub3Bjb2RlPyJzZXRSZXBsYWNlclRvRGlzcGxheSI6InJlcGxhY2VXaXRoUmVwbGFjZXJzRGlzcGxheSIsbz11LnNpbXBsZShkLmJsb2Nrc1tpXSk7QS5vcGNvZGU9InByb2NlZHVyZXNfY2FsbCIsQS5tdXRhdGlvbj1vLm11dGF0aW9ufW5baVtvXV09QX1lLmJsb2Nrcz1ufX0sVT1mdW5jdGlvbihBKXtjb25zdCBlPWZ1bmN0aW9uKEEpe2lmKHAuY2FsbChZLEEub3Bjb2RlKSl7Y29uc3QgZT1ZW0Eub3Bjb2RlXSx0PWVbMF0sbj1lWzFdLGk9QS5maWVsZHNbbl0scj1bdCxpLnZhbHVlXTtyZXR1cm4iZXZlbnRfYnJvYWRjYXN0X21lbnUiPT09QS5vcGNvZGU/ci5wdXNoKGkuaWQpOiJkYXRhX3ZhcmlhYmxlIiE9PUEub3Bjb2RlJiYiZGF0YV9saXN0Y29udGVudHMiIT09QS5vcGNvZGV8fChyLnB1c2goaS5pZCksQS50b3BMZXZlbCYmKHIucHVzaChBLng/TWF0aC5yb3VuZChBLngpOjApLHIucHVzaChBLnk/TWF0aC5yb3VuZChBLnkpOjApKSkscn1yZXR1cm4gbnVsbH0oQSk7aWYoZSlyZXR1cm4gZTtjb25zdCB0PU9iamVjdC5jcmVhdGUobnVsbCk7cmV0dXJuIHQub3Bjb2RlPUEub3Bjb2RlLHQubmV4dD1BLm5leHQsdC5wYXJlbnQ9QS5wYXJlbnQsdC5pbnB1dHM9ZnVuY3Rpb24oQSl7Y29uc3QgZT1PYmplY3QuY3JlYXRlKG51bGwpO2Zvcihjb25zdCB0IGluIEEpcC5jYWxsKEEsdCkmJihBW3RdLmJsb2NrPT09QVt0XS5zaGFkb3c/ZVt0XT1bMSxBW3RdLmJsb2NrXTpudWxsPT09QVt0XS5zaGFkb3c/ZVt0XT1bMixBW3RdLmJsb2NrXTplW3RdPVszLEFbdF0uYmxvY2ssQVt0XS5zaGFkb3ddKTtyZXR1cm4gZX0oQS5pbnB1dHMpLHQuZmllbGRzPWZ1bmN0aW9uKEEpe2NvbnN0IGU9T2JqZWN0LmNyZWF0ZShudWxsKTtmb3IoY29uc3QgdCBpbiBBKXAuY2FsbChBLHQpJiYoZVt0XT1bQVt0XS52YWx1ZV0sQVt0XS5oYXNPd25Qcm9wZXJ0eSgiaWQiKSYmZVt0XS5wdXNoKEFbdF0uaWQpLEFbdF0uaGFzT3duUHJvcGVydHkoInZhcmlhYmxlVHlwZSIpJiZlW3RdLnB1c2goQVt0XS52YXJpYWJsZVR5cGUpKTtyZXR1cm4gZX0oQS5maWVsZHMpLHQuc2hhZG93PUEuc2hhZG93LEEudG9wTGV2ZWw/KHQudG9wTGV2ZWw9ITAsdC54PUEueD9NYXRoLnJvdW5kKEEueCk6MCx0Lnk9QS55P01hdGgucm91bmQoQS55KTowKTp0LnRvcExldmVsPSExLEEubXV0YXRpb24mJih0Lm11dGF0aW9uPUEubXV0YXRpb24pLEEuY29tbWVudCYmKHQuY29tbWVudD1BLmNvbW1lbnQpLHR9LHk9ZnVuY3Rpb24oQSxlKXtjb25zdCB0PUEuaW5wdXRzO2Zvcihjb25zdCBBIGluIHQpe2NvbnN0IG49dFtBXTtmb3IobGV0IEE9MTtBPG4ubGVuZ3RoO0ErKyl7aWYoIW5bQV0pY29udGludWU7Y29uc3QgdD1uW0FdLGk9ZVt0XTtBcnJheS5pc0FycmF5KGkpJiYobltBXT1pLGRlbGV0ZSBlW3RdKX19cmV0dXJuIEF9LFQ9ZnVuY3Rpb24oQSl7aWYoInN0cmluZyIhPXR5cGVvZiBBKXJldHVybiBjb25zb2xlLmVycm9yKCJpbnZhbGlkIG9wY29kZSAiK0EpLCIiO2NvbnN0IGU9QS5pbmRleE9mKCJfIiksdD1BLnN1YnN0cmluZygwLGUpLnJlcGxhY2UoL1teXHctXS9nLCItIik7cmV0dXJuLTE9PT1tLmluZGV4T2YodCkmJiIiIT09dD90OnZvaWQgMH0seD1BPT5BLl9ibG9ja0luZm8ubWFwKEE9PkEuaWQpLmZpbHRlcihlPT5BLmV4dGVuc2lvbk1hbmFnZXIuaXNFeHRlbnNpb25Mb2FkZWQoZSkpLFI9KEEsZSk9PntpZighZS5leHRlbnNpb25NYW5hZ2VyKXJldHVybiBudWxsO2NvbnN0IHQ9ZS5leHRlbnNpb25NYW5hZ2VyLmdldEV4dGVuc2lvblVSTHMoKSxuPXt9O2Zvcihjb25zdCBlIG9mIEEpe2NvbnN0IEE9dFtlXTsic3RyaW5nIj09dHlwZW9mIEEmJihuW2VdPUEpfXJldHVybiAwPT09T2JqZWN0LmtleXMobikubGVuZ3RoP251bGw6bn0sRz1mdW5jdGlvbihBKXtjb25zdCBlPU9iamVjdC5jcmVhdGUobnVsbCk7Zm9yKGNvbnN0IHQgaW4gQSlBLmhhc093blByb3BlcnR5KHQpJiYoZVt0XT1VKEFbdF0pKTtmb3IoY29uc3QgQSBpbiBlKXtjb25zdCB0PWVbQV07ZVtBXT15KHQsZSl9Zm9yKGNvbnN0IEEgaW4gZSl7Y29uc3QgdD1lW0FdO0FycmF5LmlzQXJyYXkodCkmJltGLERdLmluZGV4T2YodFswXSk8MCYmKEIud2FybigiRm91bmQgYW4gdW5leHBlY3RlZCB0b3AgbGV2ZWwgcHJpbWl0aXZlIHdpdGggYmxvY2sgSUQ6ICIuY29uY2F0KEEsIjsgZGVsZXRpbmcgaXQgZnJvbSBzZXJpYWxpemVkIGJsb2Nrcy4iKSksZGVsZXRlIGVbQV0pfXJldHVybiBlfSxTPWZ1bmN0aW9uKEEpe2NvbnN0IGU9T2JqZWN0LmNyZWF0ZShudWxsKTtlLm5hbWU9QS5uYW1lO2NvbnN0IHQ9QS5icm9rZW58fEE7cmV0dXJuIGUuYml0bWFwUmVzb2x1dGlvbj10LmJpdG1hcFJlc29sdXRpb24sZS5kYXRhRm9ybWF0PXQuZGF0YUZvcm1hdC50b0xvd2VyQ2FzZSgpLGUuYXNzZXRJZD10LmFzc2V0SWQsZS5tZDVleHQ9dC5tZDUsZS5yb3RhdGlvbkNlbnRlclg9dC5yb3RhdGlvbkNlbnRlclgsZS5yb3RhdGlvbkNlbnRlclk9dC5yb3RhdGlvbkNlbnRlclksZX0sYj1mdW5jdGlvbihBKXtjb25zdCBlPU9iamVjdC5jcmVhdGUobnVsbCk7ZS5uYW1lPUEubmFtZTtjb25zdCB0PUEuYnJva2VufHxBO3JldHVybiBlLmFzc2V0SWQ9dC5hc3NldElkLGUuZGF0YUZvcm1hdD10LmRhdGFGb3JtYXQudG9Mb3dlckNhc2UoKSxlLmZvcm1hdD10LmZvcm1hdCxlLnJhdGU9dC5yYXRlLGUuc2FtcGxlQ291bnQ9dC5zYW1wbGVDb3VudCxlLm1kNWV4dD10Lm1kNSxlfSxIPUE9PiJudW1iZXIiPT10eXBlb2YgQXx8InN0cmluZyI9PXR5cGVvZiBBfHwiYm9vbGVhbiI9PXR5cGVvZiBBLHY9KEEsZSk9PntpZihudWxsPT1lKXJldHVybiIiO2lmKEFycmF5LmlzQXJyYXkoZSkpe2xldCBuPW51bGw7Zm9yKGxldCBpPTA7aTxlLmxlbmd0aDtpKyspe3ZhciB0O2lmKG51bGwhPT0odD1lW2ldKSYmdm9pZCAwIT09dCYmdC5jdXN0b21JZCl7bnx8KG49ZS5zbGljZSgpKTtjb25zdHtzZXJpYWxpemU6dH09QS5zZXJpYWxpemVyc1tuW2ldLmN1c3RvbUlkXTtuW2ldPXQobltpXSl9SChlW2ldKXx8KG58fChuPWUuc2xpY2UoKSksbltpXT0iIi5jb25jYXQobltpXSkpfXJldHVybiBufHxlfWlmKGUuY3VzdG9tSWQpe2NvbnN0e3NlcmlhbGl6ZTp0fT1BLnNlcmlhbGl6ZXJzW2UuY3VzdG9tSWRdO3JldHVybntjdXN0b21UeXBlOiEwLHR5cGVJZDplLmN1c3RvbUlkLHNlcmlhbGl6ZWQ6dChlKX19cmV0dXJuIEgoZSk/ZToiIi5jb25jYXQoZSl9LGs9ZnVuY3Rpb24oQSxlKXtjb25zdCB0PU9iamVjdC5jcmVhdGUobnVsbCk7dC5pc1N0YWdlPWUuaXNTdGFnZSx0Lm5hbWU9dC5pc1N0YWdlPyJTdGFnZSI6ZS5uYW1lLGZ1bmN0aW9uKEEsZSx0KXtBLnZhcmlhYmxlcz1PYmplY3QuY3JlYXRlKG51bGwpLEEubGlzdHM9T2JqZWN0LmNyZWF0ZShudWxsKSxBLmJyb2FkY2FzdHM9T2JqZWN0LmNyZWF0ZShudWxsKSxBLmN1c3RvbVZhcnM9W107Zm9yKGNvbnN0IG4gaW4gdCl7Y29uc3QgaT10W25dO3N3aXRjaChpLnR5cGUpe2Nhc2Ugci5CUk9BRENBU1RfTUVTU0FHRV9UWVBFOkEuYnJvYWRjYXN0c1tuXT1pLnZhbHVlO2JyZWFrO2Nhc2Ugci5MSVNUX1RZUEU6QS5saXN0c1tuXT1baS5uYW1lLHYoZSxpLnZhbHVlKV07YnJlYWs7Y2FzZSByLlNDQUxBUl9UWVBFOkEudmFyaWFibGVzW25dPVtpLm5hbWUsdihlLGkudmFsdWUpXSxpLmlzQ2xvdWQmJkEudmFyaWFibGVzW25dLnB1c2goITApO2JyZWFrO2RlZmF1bHQ6Y29uc3QgdD1pLnNlcmlhbGl6ZSgpLG89e3R5cGU6aS50eXBlLGlkOm4saW5mbzp0fTtBLmN1c3RvbVZhcnMucHVzaChvKX19fSh0LEEsZS52YXJpYWJsZXMpLHQuYmxvY2tzPUcoZS5ibG9ja3MpLHQuY29tbWVudHM9ZnVuY3Rpb24oQSl7Y29uc3QgZT1PYmplY3QuY3JlYXRlKG51bGwpO2Zvcihjb25zdCB0IGluIEEpe2lmKCFBLmhhc093blByb3BlcnR5KHQpKWNvbnRpbnVlO2NvbnN0IG49QVt0XSxpPU9iamVjdC5jcmVhdGUobnVsbCk7aS5ibG9ja0lkPW4uYmxvY2tJZCxpLng9bi54LGkueT1uLnksaS53aWR0aD1uLndpZHRoLGkuaGVpZ2h0PW4uaGVpZ2h0LGkubWluaW1pemVkPW4ubWluaW1pemVkLGkudGV4dD1uLnRleHQsZVt0XT1pfXJldHVybiBlfShlLmNvbW1lbnRzKSwoZS5jdXJyZW50Q29zdHVtZTwwfHxlLmN1cnJlbnRDb3N0dW1lPj1lLmNvc3R1bWVzLmxlbmd0aCkmJihCLndhcm4oImN1cnJlbnRDb3N0dW1lIHByb3BlcnR5IGZvciB0YXJnZXQgIi5jb25jYXQoZS5uYW1lLCIgaXMgb3V0IG9mIHJhbmdlIikpLGUuY3VycmVudENvc3R1bWU9Zy5jbGFtcChlLmN1cnJlbnRDb3N0dW1lLDAsZS5jb3N0dW1lcy5sZW5ndGgtMSkpLHQuY3VycmVudENvc3R1bWU9ZS5jdXJyZW50Q29zdHVtZSx0LmNvc3R1bWVzPWUuY29zdHVtZXMubWFwKFMpLHQuc291bmRzPWUuc291bmRzLm1hcChiKSx0LmlkPWUuaWQsZS5oYXNPd25Qcm9wZXJ0eSgidm9sdW1lIikmJih0LnZvbHVtZT1lLnZvbHVtZSksZS5oYXNPd25Qcm9wZXJ0eSgibGF5ZXJPcmRlciIpJiYodC5sYXllck9yZGVyPWUubGF5ZXJPcmRlciksdC5pc1N0YWdlPyhlLmhhc093blByb3BlcnR5KCJ0ZW1wbyIpJiYodC50ZW1wbz1lLnRlbXBvKSxlLmhhc093blByb3BlcnR5KCJ2aWRlb1RyYW5zcGFyZW5jeSIpJiYodC52aWRlb1RyYW5zcGFyZW5jeT1lLnZpZGVvVHJhbnNwYXJlbmN5KSxlLmhhc093blByb3BlcnR5KCJ2aWRlb1N0YXRlIikmJih0LnZpZGVvU3RhdGU9ZS52aWRlb1N0YXRlKSxlLmhhc093blByb3BlcnR5KCJ0ZXh0VG9TcGVlY2hMYW5ndWFnZSIpJiYodC50ZXh0VG9TcGVlY2hMYW5ndWFnZT1lLnRleHRUb1NwZWVjaExhbmd1YWdlKSk6KHQudmlzaWJsZT1lLnZpc2libGUsdC54PWUueCx0Lnk9ZS55LHQuc2l6ZT1lLnNpemUsdC5kaXJlY3Rpb249ZS5kaXJlY3Rpb24sdC5kcmFnZ2FibGU9ZS5kcmFnZ2FibGUsdC5yb3RhdGlvblN0eWxlPWUucm90YXRpb25TdHlsZSk7Y29uc3Qgbj14KEEpLGk9e307Zm9yKGxldCB0IG9mIG4pe3ZhciBvOyJleHRfIi5jb25jYXQodClpbiBBJiYiZnVuY3Rpb24iPT10eXBlb2YgQVsiZXh0XyIuY29uY2F0KHQpXS5zZXJpYWxpemVGb3JUYXJnZXQ/aVt0XT1BWyJleHRfIi5jb25jYXQodCldLnNlcmlhbGl6ZUZvclRhcmdldChlKTp0IGluKG51bGwhPT0obz1lLmV4dGVuc2lvblN0b3JhZ2UpJiZ2b2lkIDAhPT1vP286e30pJiYoaVt0XT1lLmV4dGVuc2lvblN0b3JhZ2VbdF0pfXJldHVybiBpJiYodC5leHRlbnNpb25EYXRhPWkpLHR9LGo9ZnVuY3Rpb24oQSl7Y29uc3QgZT1BLm1hcChBPT5BLmdldExheWVyT3JkZXIoKSk7cmV0dXJuIGcucmVkdWNlZFNvcnRPcmRlcmluZyhlKX0sSj1mdW5jdGlvbihBLGUpe2NvbnN0IHQ9KGUuc3RhZ2VXaWR0aC00ODApLzIsbj0oZS5zdGFnZUhlaWdodC0zNjApLzI7cmV0dXJuIEEudmFsdWVTZXEoKS5maWx0ZXIoQT0+IVQoQS5vcGNvZGUpfHxBLnZpc2libGUpLm1hcChBPT57Y29uc3QgZT17aWQ6QS5pZCxtb2RlOkEubW9kZSxvcGNvZGU6QS5vcGNvZGUscGFyYW1zOkEucGFyYW1zLHNwcml0ZU5hbWU6QS5zcHJpdGVOYW1lLHZhbHVlOkFycmF5LmlzQXJyYXkoQS52YWx1ZSk/W106MCx3aWR0aDpBLndpZHRoLGhlaWdodDpBLmhlaWdodCx4OkEueC10LHk6QS55LW4sdmlzaWJsZTpBLnZpc2libGUsdmFyaWFibGVUeXBlOkEudmFyaWFibGVUeXBlLHZhcmlhYmxlSWQ6QS52YXJpYWJsZUlkfTtyZXR1cm4ibGlzdCIhPT1BLm1vZGUmJihlLnNsaWRlck1pbj1BLnNsaWRlck1pbixlLnNsaWRlck1heD1BLnNsaWRlck1heCxlLmlzRGlzY3JldGU9QS5pc0Rpc2NyZXRlKSxlfSl9LHo9ZnVuY3Rpb24oQSxlLHQsbil7aWYoIUFycmF5LmlzQXJyYXkoQSkpcmV0dXJuIEE7Y29uc3QgaT1PYmplY3QuY3JlYXRlKG51bGwpLG89YygpO3N3aXRjaChpLmlkPW8saS5uZXh0PW51bGwsaS5wYXJlbnQ9ZSxpLnNoYWRvdz10LGkuaW5wdXRzPU9iamVjdC5jcmVhdGUobnVsbCksQVswXSl7Y2FzZSA0Omkub3Bjb2RlPSJtYXRoX251bWJlciIsaS5maWVsZHM9e05VTTp7bmFtZToiTlVNIix2YWx1ZTpBWzFdfX0saS50b3BMZXZlbD0hMTticmVhaztjYXNlIDU6aS5vcGNvZGU9Im1hdGhfcG9zaXRpdmVfbnVtYmVyIixpLmZpZWxkcz17TlVNOntuYW1lOiJOVU0iLHZhbHVlOkFbMV19fSxpLnRvcExldmVsPSExO2JyZWFrO2Nhc2UgNjppLm9wY29kZT0ibWF0aF93aG9sZV9udW1iZXIiLGkuZmllbGRzPXtOVU06e25hbWU6Ik5VTSIsdmFsdWU6QVsxXX19LGkudG9wTGV2ZWw9ITE7YnJlYWs7Y2FzZSA3Omkub3Bjb2RlPSJtYXRoX2ludGVnZXIiLGkuZmllbGRzPXtOVU06e25hbWU6Ik5VTSIsdmFsdWU6QVsxXX19LGkudG9wTGV2ZWw9ITE7YnJlYWs7Y2FzZSA4Omkub3Bjb2RlPSJtYXRoX2FuZ2xlIixpLmZpZWxkcz17TlVNOntuYW1lOiJOVU0iLHZhbHVlOkFbMV19fSxpLnRvcExldmVsPSExO2JyZWFrO2Nhc2UgOTppLm9wY29kZT0iY29sb3VyX3BpY2tlciIsaS5maWVsZHM9e0NPTE9VUjp7bmFtZToiQ09MT1VSIix2YWx1ZTpBWzFdfX0saS50b3BMZXZlbD0hMTticmVhaztjYXNlIDEwOmkub3Bjb2RlPSJ0ZXh0IixpLmZpZWxkcz17VEVYVDp7bmFtZToiVEVYVCIsdmFsdWU6QVsxXX19LGkudG9wTGV2ZWw9ITE7YnJlYWs7Y2FzZSAxMTppLm9wY29kZT0iZXZlbnRfYnJvYWRjYXN0X21lbnUiLGkuZmllbGRzPXtCUk9BRENBU1RfT1BUSU9OOntuYW1lOiJCUk9BRENBU1RfT1BUSU9OIix2YWx1ZTpBWzFdLGlkOkFbMl0sdmFyaWFibGVUeXBlOnIuQlJPQURDQVNUX01FU1NBR0VfVFlQRX19LGkudG9wTGV2ZWw9ITE7YnJlYWs7Y2FzZSBGOmkub3Bjb2RlPSJkYXRhX3ZhcmlhYmxlIixpLmZpZWxkcz17VkFSSUFCTEU6e25hbWU6IlZBUklBQkxFIix2YWx1ZTpBWzFdLGlkOkFbMl0sdmFyaWFibGVUeXBlOnIuU0NBTEFSX1RZUEV9fSxBLmxlbmd0aD4zJiYoaS50b3BMZXZlbD0hMCxpLng9QVszXSxpLnk9QVs0XSk7YnJlYWs7Y2FzZSBEOmkub3Bjb2RlPSJkYXRhX2xpc3Rjb250ZW50cyIsaS5maWVsZHM9e0xJU1Q6e25hbWU6IkxJU1QiLHZhbHVlOkFbMV0saWQ6QVsyXSx2YXJpYWJsZVR5cGU6ci5MSVNUX1RZUEV9fSxBLmxlbmd0aD4zJiYoaS50b3BMZXZlbD0hMCxpLng9QVszXSxpLnk9QVs0XSk7YnJlYWs7Y2FzZSAxNDppLm9wY29kZT1BWzFdLGkuZmllbGRzPXtbQVsyXV06QVszXX0sQS5sZW5ndGg+NCYmKGkudG9wTGV2ZWw9ITAsaS54PUFbNF0saS55PUFbNV0pO2JyZWFrO2RlZmF1bHQ6cmV0dXJuIEIuZXJyb3IoIkZvdW5kIHVua25vd24gcHJpbWl0aXZlIHR5cGUgZHVyaW5nIGRlc2VyaWFsaXphdGlvbjogIi5jb25jYXQoSlNPTi5zdHJpbmdpZnkoQSkpKSxudWxsfXJldHVybiBuW29dPWksb30sTD1mdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj17fTtmb3IoY29uc3QgaSBpbiBBKXtpZighcC5jYWxsKEEsaSkpY29udGludWU7Y29uc3Qgcj1BW2ldO2lmKCFBcnJheS5pc0FycmF5KHIpKWNvbnRpbnVlO2xldCBvPW51bGwscz1udWxsO2NvbnN0IGE9clswXTsxPT09YT9vPXM9eihyWzFdLGUsITAsdCk6Mj09PWE/bz16KHJbMV0sZSwhMSx0KToobz16KHJbMV0sZSwhMSx0KSxzPXooclsyXSxlLCEwLHQpKSxuW2ldPXtuYW1lOmksYmxvY2s6byxzaGFkb3c6c319cmV0dXJuIG59LFA9ZnVuY3Rpb24oQSl7Y29uc3QgZT17fTtmb3IoY29uc3QgdCBpbiBBKXtpZighcC5jYWxsKEEsdCkpY29udGludWU7Y29uc3Qgbj1BW3RdO0FycmF5LmlzQXJyYXkobikmJihlW3RdPXtuYW1lOnQsdmFsdWU6blswXX0sbi5sZW5ndGg+MSYmKGVbdF0uaWQ9blsxXSksbi5sZW5ndGg+MiYmKGVbdF0udmFyaWFibGVUeXBlPW5bMl0pLCJCUk9BRENBU1RfT1BUSU9OIj09PXQ/ZVt0XS52YXJpYWJsZVR5cGU9ci5CUk9BRENBU1RfTUVTU0FHRV9UWVBFOiJWQVJJQUJMRSI9PT10P2VbdF0udmFyaWFibGVUeXBlPXIuU0NBTEFSX1RZUEU6IkxJU1QiPT09dCYmKGVbdF0udmFyaWFibGVUeXBlPXIuTElTVF9UWVBFKSl9cmV0dXJuIGV9LE89ZnVuY3Rpb24oQSl7Zm9yKGNvbnN0IGUgaW4gQSl7aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLGUpKWNvbnRpbnVlO2NvbnN0IHQ9QVtlXTtBcnJheS5pc0FycmF5KHQpPyhkZWxldGUgQVtlXSx6KHQsbnVsbCwhMSxBKSk6KHQuaWQ9ZSx0LmlucHV0cz1MKHQuaW5wdXRzLGUsQSksdC5maWVsZHM9UCh0LmZpZWxkcykpfXJldHVybiBBfSxWPWZ1bmN0aW9uKEEsZSl7aWYoInByb2NlZHVyZXNfcmV0dXJuIj09PUEub3Bjb2RlKXtBLmlucHV0cy5yZXR1cm49QS5pbnB1dHMuVkFMVUUsQS5pbnB1dHMucmV0dXJuLm5hbWU9InJldHVybiIsZGVsZXRlIEEuaW5wdXRzLlZBTFVFO2xldCBpPUEscj1pLnBhcmVudDtmb3IoO251bGwhPT1yOyl7dmFyIHQsbjtpZihyKWk9ZS5fYmxvY2tzW3JdLHI9bnVsbCE9PSh0PW51bGw9PT0obj1pKXx8dm9pZCAwPT09bj92b2lkIDA6bi5wYXJlbnQpJiZ2b2lkIDAhPT10P3Q6bnVsbH1pZihpJiYicHJvY2VkdXJlc19kZWZpbml0aW9uIj09PWkub3Bjb2RlKXtpLm9wY29kZT0icHJvY2VkdXJlc19kZWZpbml0aW9uX3JldHVybiI7ZS5fYmxvY2tzW2kuaW5wdXRzLmN1c3RvbV9ibG9jay5ibG9ja10ubXV0YXRpb24ucmV0dXJucz0idHJ1ZSJ9fWVsc2UgaWYoInByb2NlZHVyZXNfY2FsbCI9PT1BLm9wY29kZSl7Y29uc3QgdD1lLmdldFByb2NlZHVyZURlZmluaXRpb24oQS5tdXRhdGlvbi5wcm9jY29kZSk7aWYodCl7Y29uc3Qgbj1lLl9ibG9ja3NbdF0uaW5wdXRzLmN1c3RvbV9ibG9jay5ibG9jazsidHJ1ZSI9PT1lLl9ibG9ja3Nbbl0ubXV0YXRpb24ucmV0dXJucyYmKEEubXV0YXRpb24ucmV0dXJucz0idHJ1ZSIpfWNvbnN0IG49ZS5fYmxvY2tzW0EucGFyZW50XTtpZihuKWlmKG4ubmV4dD09PUEuaWQpQS5tdXRhdGlvbi5yZXR1cm5zPSJmYWxzZSI7ZWxzZSBmb3IoY29uc3QgZSBvZiBPYmplY3QudmFsdWVzKG4uaW5wdXRzKSlpZihlLmJsb2NrPT09QS5pZCYmZS5uYW1lLnN0YXJ0c1dpdGgoIlNVQlNUQUNLIikpe0EubXV0YXRpb24ucmV0dXJucz0iZmFsc2UiO2JyZWFrfX19O0EuZXhwb3J0cz17c2VyaWFsaXplOmZ1bmN0aW9uKEEsZSl7bGV0e2FsbG93T3B0aW1pemF0aW9uOnQ9ITB9PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fTtjb25zdCBuPU9iamVjdC5jcmVhdGUobnVsbCksaT14KEEpLHI9ZT9bQS5nZXRUYXJnZXRCeUlkKGUpXTpBLnRhcmdldHMuZmlsdGVyKEE9PkEuaXNPcmlnaW5hbCksbz1qKHIpLHM9ci5tYXAoQT0+QS50b0pTT04oKSk7QS5yZW5kZXJlciYmIWUmJnMuZm9yRWFjaCgoQSxlKT0+e0EubGF5ZXJPcmRlcj1vW2VdfSk7Y29uc3QgYT1zLm1hcChlPT5rKEEsZSkpLEI9QS5mb250TWFuYWdlci5zZXJpYWxpemVKU09OKCk7aWYoZSl7Y29uc3QgZT1hWzBdLHQ9UihpLEEpO2UuZXh0ZW5zaW9ucz1pLHQmJihlLmV4dGVuc2lvblVSTHM9dCksZS5leHRlbnNpb25EYXRhPXt9O2Zvcihjb25zdCB0IG9mIGkpImV4dF8iLmNvbmNhdCh0KWluIEEmJiJmdW5jdGlvbiI9PXR5cGVvZiBBWyJleHRfIi5jb25jYXQodCldLnNlcmlhbGl6ZT9lLmV4dGVuc2lvbkRhdGFbdF09QVsiZXh0XyIuY29uY2F0KHQpXS5zZXJpYWxpemUoKTp0IGluIEEuZXh0ZW5zaW9uU3RvcmFnZSYmKGUuZXh0ZW5zaW9uRGF0YVt0XT1BLmV4dGVuc2lvblN0b3JhZ2VbdF0pO3JldHVybiBCJiYoZS5jdXN0b21Gb250cz1CKSxlfW4udGFyZ2V0cz1hLG4ubW9uaXRvcnM9SihBLmdldE1vbml0b3JTdGF0ZSgpLEEpLG4uZXh0ZW5zaW9uRGF0YT17fTtmb3IoY29uc3QgZSBvZiBpKSJleHRfIi5jb25jYXQoZSlpbiBBJiYiZnVuY3Rpb24iPT10eXBlb2YgQVsiZXh0XyIuY29uY2F0KGUpXS5zZXJpYWxpemU/bi5leHRlbnNpb25EYXRhW2VdPUFbImV4dF8iLmNvbmNhdChlKV0uc2VyaWFsaXplKCk6ZSBpbiBBLmV4dGVuc2lvblN0b3JhZ2UmJihuLmV4dGVuc2lvbkRhdGFbZV09QS5leHRlbnNpb25TdG9yYWdlW2VdKTtuLmV4dGVuc2lvbnM9aTtjb25zdCBjPVIoaSxBKTtjJiYobi5leHRlbnNpb25VUkxzPWMpLEImJihuLmN1c3RvbUZvbnRzPUIpO2NvbnN0IGc9T2JqZWN0LmNyZWF0ZShudWxsKTtnLnNlbXZlcj0iMy4wLjAiLGcudm09IjAuMi4wIixBLm9yaWdpbiYmKGcub3JpZ2luPUEub3JpZ2luKSxnLmFnZW50PSIiO2NvbnN0IEU9T2JqZWN0LmNyZWF0ZShudWxsKTtyZXR1cm4gRS5uYW1lPSJQZW5ndWluTW9kIixFLnVybD0iaHR0cHM6Ly9wZW5ndWlubW9kLmNvbS8iLEUudmVyc2lvbj0ic3RhYmxlIixnLnBsYXRmb3JtPUUsbi5tZXRhPWcsdCYmbChuKSxufSxkZXNlcmlhbGl6ZTpmdW5jdGlvbihBLGUsdCxjKXtjb25zdCB1PW5ldyBoKGUpO3UucmVnaXN0ZXJFeHRlbnNpb25zKE4pO2NvbnN0IGw9e2V4dGVuc2lvbklEczpuZXcgU2V0KEEuZXh0ZW5zaW9ucyksZXh0ZW5zaW9uVVJMczpuZXcgTWFwLGV4dGVuc2lvbkRhdGE6e30scGF0Y2hlcjp1fTt2YXIgZDsoQS5tZXRhP0EubWV0YS5vcmlnaW4/ZS5vcmlnaW49QS5tZXRhLm9yaWdpbjpBLm1ldGEucGxhdGZvcm0/ZS5vcmlnaW49QS5tZXRhLnBsYXRmb3JtLm5hbWU6ZS5vcmlnaW49bnVsbDplLm9yaWdpbj1udWxsLEEuZXh0ZW5zaW9uVVJMcyYmKGwuZXh0ZW5zaW9uVVJMcz1uZXcgTWFwKE9iamVjdC5lbnRyaWVzKEEuZXh0ZW5zaW9uVVJMcykpKSxBLmV4dGVuc2lvbkRhdGF8fEEuZXh0ZW5zaW9uU3RvcmFnZSkmJihsLmV4dGVuc2lvbkRhdGE9T2JqZWN0LmFzc2lnbihudWxsIT09KGQ9QS5leHRlbnNpb25TdG9yYWdlKSYmdm9pZCAwIT09ZD9kOnt9LEEuZXh0ZW5zaW9uRGF0YSkpO2xldCBwO3A9QS5jdXN0b21Gb250cz9lLmZvbnRNYW5hZ2VyLmRlc2VyaWFsaXplKEEuY3VzdG9tRm9udHMsdCxjKTpQcm9taXNlLnJlc29sdmUoKTtjb25zdCBtPSgoYz9bQV06QS50YXJnZXRzKXx8W10pLm1hcCgoQSxlKT0+T2JqZWN0LmFzc2lnbihBLHt0YXJnZXRQYW5lT3JkZXI6ZX0pKS5zb3J0KChBLGUpPT5BLmxheWVyT3JkZXItZS5sYXllck9yZGVyKSxGPUEubW9uaXRvcnN8fFtdO3JldHVybiBwLnRoZW4oKCk9Pm0ubWFwKEE9PmZ1bmN0aW9uKEEsZSx0KXtpZighQS5oYXNPd25Qcm9wZXJ0eSgibmFtZSIpKXJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7Y29uc3Qgbj17Y29zdHVtZVByb21pc2VzOm51bGwsc291bmRQcm9taXNlczpudWxsLHNvdW5kQmFuazplLmF1ZGlvRW5naW5lJiZlLmF1ZGlvRW5naW5lLmNyZWF0ZUJhbmsoKX07cmV0dXJuIG4uY29zdHVtZVByb21pc2VzPShBLmNvc3R1bWVzfHxbXSkubWFwKEE9Pntjb25zdCBuPXthc3NldDpBLmFzc2V0LGFzc2V0SWQ6QS5hc3NldElkLHNraW5JZDpudWxsLG5hbWU6QS5uYW1lLGJpdG1hcFJlc29sdXRpb246QS5iaXRtYXBSZXNvbHV0aW9uLHJvdGF0aW9uQ2VudGVyWDpBLnJvdGF0aW9uQ2VudGVyWCxyb3RhdGlvbkNlbnRlclk6QS5yb3RhdGlvbkNlbnRlcll9LGk9QS5kYXRhRm9ybWF0fHxBLmFzc2V0VHlwZSYmQS5hc3NldFR5cGUucnVudGltZUZvcm1hdHx8InBuZyIscj1BLmhhc093blByb3BlcnR5KCJtZDVleHQiKT9BLm1kNWV4dDoiIi5jb25jYXQoQS5hc3NldElkLCIuIikuY29uY2F0KGkpO3JldHVybiBuLm1kNT1yLG4uZGF0YUZvcm1hdD1pLEkobixlLHQpLnRoZW4oKCk9PncocixuLGUpKX0pLG4uc291bmRQcm9taXNlcz0oQS5zb3VuZHN8fFtdKS5tYXAoQT0+e2NvbnN0IGk9e2Fzc2V0SWQ6QS5hc3NldElkLGZvcm1hdDpBLmZvcm1hdCxyYXRlOkEucmF0ZSxzYW1wbGVDb3VudDpBLnNhbXBsZUNvdW50LG5hbWU6QS5uYW1lLG1kNTpBLm1kNWV4dCxkYXRhRm9ybWF0OkEuZGF0YUZvcm1hdCxkYXRhOm51bGx9O3JldHVybiBNKGksZSx0KS50aGVuKCgpPT5DKGksZSxuLnNvdW5kQmFuaykpfSksbn0oQSxlLHQpKSkudGhlbihBPT5Qcm9taXNlLnJlc29sdmUoQSkpLnRoZW4oQT0+UHJvbWlzZS5hbGwobS5tYXAoKHQscyk9PmZ1bmN0aW9uKEEsZSx0LHMsQixjKXtpZighQS5oYXNPd25Qcm9wZXJ0eSgibmFtZSIpKXJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7Y29uc3QgRT1uZXcgbihlKSxRPW5ldyBpKEUsZSk7aWYoQS5oYXNPd25Qcm9wZXJ0eSgibmFtZSIpJiYoUS5uYW1lPUEubmFtZSksQS5oYXNPd25Qcm9wZXJ0eSgiYmxvY2tzIikpe2Zvcihjb25zdCBlIGluIEEuYmxvY2tzKXtpZighQS5ibG9ja3MuaGFzT3duUHJvcGVydHkoZSkpY29udGludWU7Y29uc3Qgbj1BLmJsb2Nrc1tlXTtpZigib2JqZWN0IiE9dHlwZW9mIG58fEFycmF5LmlzQXJyYXkobikpY29udGludWU7Y29uc3QgaT1UKG4ub3Bjb2RlKTt0LnBhdGNoZXIucGF0Y2hFeGlzdHMoaSkmJnQucGF0Y2hlci5ydW5FeHRlbnNpb25QYXRjaChpLHQsQSl9TyhBLmJsb2Nrcyk7Y29uc3Qgbj1bXTtmb3IoY29uc3QgdCBpbiBBLmJsb2Nrcyl7aWYoIUEuYmxvY2tzLmhhc093blByb3BlcnR5KHQpKWNvbnRpbnVlO2NvbnN0IGk9QS5ibG9ja3NbdF07aWYoYyYmZS5fc3RhZ2VUYXJnZXQpe2NvbnN0IEE9ZS5fc3RhZ2VUYXJnZXQ7aWYoImV2ZW50X2Jyb2FkY2FzdF9tZW51Ij09PWkub3Bjb2RlKXtjb25zdCBlPWkuZmllbGRzLkJST0FEQ0FTVF9PUFRJT047QS5sb29rdXBCcm9hZGNhc3RNc2coIiIsZS52YWx1ZSl8fEEuY3JlYXRlVmFyaWFibGUoZS5pZCxlLnZhbHVlLCJicm9hZGNhc3RfbXNnIiwhMSl9fSJUdXJib1dhcnAiPT09ZS5vcmlnaW4mJigicHJvY2VkdXJlc19jYWxsIiE9PWkub3Bjb2RlJiYicHJvY2VkdXJlc19yZXR1cm4iIT09aS5vcGNvZGV8fG4ucHVzaChpKSksRS5jcmVhdGVCbG9jayhpKX1pZigiVHVyYm9XYXJwIj09PWUub3JpZ2luKWZvcihjb25zdCBBIG9mIG4pVihBLEUpfWNvbnN0e2Nvc3R1bWVQcm9taXNlczp1fT1CLHtzb3VuZEJhbms6bCxzb3VuZFByb21pc2VzOmh9PUIsdz1RLmNyZWF0ZUNsb25lKEEuaXNTdGFnZT9hLkJBQ0tHUk9VTkRfTEFZRVI6YS5TUFJJVEVfTEFZRVIpO2lmKEEuaGFzT3duUHJvcGVydHkoInRlbXBvIikmJih3LnRlbXBvPUEudGVtcG8pLEEuaGFzT3duUHJvcGVydHkoInZvbHVtZSIpJiYody52b2x1bWU9QS52b2x1bWUpLEEuaGFzT3duUHJvcGVydHkoInZpZGVvVHJhbnNwYXJlbmN5IikmJih3LnZpZGVvVHJhbnNwYXJlbmN5PUEudmlkZW9UcmFuc3BhcmVuY3kpLEEuaGFzT3duUHJvcGVydHkoInZpZGVvU3RhdGUiKSYmKHcudmlkZW9TdGF0ZT1BLnZpZGVvU3RhdGUpLEEuaGFzT3duUHJvcGVydHkoInRleHRUb1NwZWVjaExhbmd1YWdlIikmJih3LnRleHRUb1NwZWVjaExhbmd1YWdlPUEudGV4dFRvU3BlZWNoTGFuZ3VhZ2UpLEEuaGFzT3duUHJvcGVydHkoInZhcmlhYmxlcyIpKWZvcihjb25zdCB0IGluIEEudmFyaWFibGVzKXtjb25zdCBuPUEudmFyaWFibGVzW3RdLGk9Mz09PW4ubGVuZ3RoJiZuWzJdJiZBLmlzU3RhZ2UmJmUuY2FuQWRkQ2xvdWRWYXJpYWJsZSgpLG89bmV3IHIodCxuWzBdLHIuU0NBTEFSX1RZUEUsaSk7aSYmZS5hZGRDbG91ZFZhcmlhYmxlKCksby52YWx1ZT1uWzFdLHcudmFyaWFibGVzW28uaWRdPW99aWYoQS5oYXNPd25Qcm9wZXJ0eSgibGlzdHMiKSlmb3IoY29uc3QgZSBpbiBBLmxpc3RzKXtjb25zdCB0PUEubGlzdHNbZV0sbj1uZXcgcihlLHRbMF0sci5MSVNUX1RZUEUsITEpO24udmFsdWU9dFsxXSx3LnZhcmlhYmxlc1tuLmlkXT1ufWlmKEEuaGFzT3duUHJvcGVydHkoImJyb2FkY2FzdHMiKSlmb3IoY29uc3QgZSBpbiBBLmJyb2FkY2FzdHMpe2NvbnN0IHQ9QS5icm9hZGNhc3RzW2VdLG49bmV3IHIoZSx0LHIuQlJPQURDQVNUX01FU1NBR0VfVFlQRSwhMSk7dy52YXJpYWJsZXNbbi5pZF09bn1pZihBLmhhc093blByb3BlcnR5KCJjdXN0b21WYXJzIikpZm9yKGNvbnN0IHQgb2YgQS5jdXN0b21WYXJzKXtpZihBcnJheS5pc0FycmF5KHQpKXtjb25zdCBBPWUubmV3VmFyaWFibGVJbnN0YW5jZSguLi50KTt3LnZhcmlhYmxlc1t0WzFdXT1BO2NvbnRpbnVlfWNvbnN0IEE9ZS5uZXdWYXJpYWJsZUluc3RhbmNlKHQudHlwZSwuLi50LmluZm8pO3cudmFyaWFibGVzW3QuaWRdPUF9aWYoQS5oYXNPd25Qcm9wZXJ0eSgiY29tbWVudHMiKSlmb3IoY29uc3QgZSBpbiBBLmNvbW1lbnRzKXtjb25zdCB0PUEuY29tbWVudHNbZV0sbj1uZXcgbyhlLHQudGV4dCx0LngsdC55LHQud2lkdGgsdC5oZWlnaHQsdC5taW5pbWl6ZWQpO3QuYmxvY2tJZCYmKG4uYmxvY2tJZD10LmJsb2NrSWQpLHcuY29tbWVudHNbbi5pZF09bn1BLmhhc093blByb3BlcnR5KCJ4IikmJih3Lng9QS54KSxBLmhhc093blByb3BlcnR5KCJ5IikmJih3Lnk9QS55KSxBLmhhc093blByb3BlcnR5KCJkaXJlY3Rpb24iKSYmKHcuZGlyZWN0aW9uPUEuZGlyZWN0aW9uKSxBLmhhc093blByb3BlcnR5KCJzaXplIikmJih3LnNpemU9QS5zaXplKSxBLmhhc093blByb3BlcnR5KCJ2aXNpYmxlIikmJih3LnZpc2libGU9QS52aXNpYmxlKSxBLmhhc093blByb3BlcnR5KCJjdXJyZW50Q29zdHVtZSIpJiYody5jdXJyZW50Q29zdHVtZT1nLmNsYW1wKEEuY3VycmVudENvc3R1bWUsMCxBLmNvc3R1bWVzLmxlbmd0aC0xKSksQS5oYXNPd25Qcm9wZXJ0eSgicm90YXRpb25TdHlsZSIpJiYody5yb3RhdGlvblN0eWxlPUEucm90YXRpb25TdHlsZSksQS5oYXNPd25Qcm9wZXJ0eSgiaXNTdGFnZSIpJiYody5pc1N0YWdlPUEuaXNTdGFnZSksQS5oYXNPd25Qcm9wZXJ0eSgidGFyZ2V0UGFuZU9yZGVyIikmJih3LnRhcmdldFBhbmVPcmRlcj1BLnRhcmdldFBhbmVPcmRlciksQS5oYXNPd25Qcm9wZXJ0eSgiZHJhZ2dhYmxlIikmJih3LmRyYWdnYWJsZT1BLmRyYWdnYWJsZSk7Y29uc3QgQz1lLnRhcmdldHMubWFwKEE9PkEuaWQpO3ZhciBJOyhBLmhhc093blByb3BlcnR5KCJpZCIpJiYhQy5pbmNsdWRlcyhBLmlkKSYmKHcuaWQ9QS5pZCksQS5oYXNPd25Qcm9wZXJ0eSgiZXh0ZW5zaW9uRGF0YSIpfHxBLmhhc093blByb3BlcnR5KCJleHRlbnNpb25TdG9yYWdlIikpJiYody5leHRlbnNpb25EYXRhPU9iamVjdC5hc3NpZ24obnVsbCE9PShJPUEuZXh0ZW5zaW9uU3RvcmFnZSkmJnZvaWQgMCE9PUk/STp7fSxBLmV4dGVuc2lvbkRhdGEpKTtyZXR1cm4gUHJvbWlzZS5hbGwodSkudGhlbihBPT57US5jb3N0dW1lcz1BfSksUHJvbWlzZS5hbGwoaCkudGhlbihBPT57US5zb3VuZHM9QSxRLnNvdW5kQmFuaz1sfHxudWxsfSksUHJvbWlzZS5hbGwodS5jb25jYXQoaCkpLnRoZW4oKCk9PncpfSh0LGUsbCwwLEFbc10sYykpKSkudGhlbihBPT5BLm1hcCgoQSxlKT0+KEEubGF5ZXJPcmRlcj1lLEEpKS5zb3J0KChBLGUpPT5BLnRhcmdldFBhbmVPcmRlci1lLnRhcmdldFBhbmVPcmRlcikubWFwKEE9PihkZWxldGUgQS50YXJnZXRQYW5lT3JkZXIsQSkpKS50aGVuKEE9PmZ1bmN0aW9uKEEpe2NvbnN0IGU9US5nZXRBbGxWYXJSZWZzRm9yVGFyZ2V0cyhBLCEwKTtBLmZvckVhY2goQT0+e09iamVjdC5rZXlzKEEudmFyaWFibGVzKS5mb3JFYWNoKGU9Pntjb25zdCB0PUUucmVwbGFjZVVuc2FmZUNoYXJzKGUpO3QhPT1lJiYoQS52YXJpYWJsZXNbZV0uaWQ9dCxBLnZhcmlhYmxlc1t0XT1BLnZhcmlhYmxlc1tlXSxkZWxldGUgQS52YXJpYWJsZXNbZV0pfSl9KTtmb3IoY29uc3QgQSBpbiBlKXtjb25zdCB0PUUucmVwbGFjZVVuc2FmZUNoYXJzKEEpO0EhPT10JiZRLnVwZGF0ZVZhcmlhYmxlSWRlbnRpZmllcnMoZVtBXSx0KX1yZXR1cm4gQX0oQSkpLnRoZW4oQT0+eyJUdXJib1dhcnAiPT09ZS5vcmlnaW4mJihlLm9yaWdpbj1udWxsKTtjb25zdCB0PUEuZmluZChBPT5BLmlzU3RhZ2UpO2lmKHQpe2xldCBBO2Zvcihjb25zdCBlIG9mIE9iamVjdC52YWx1ZXMobnVsbD09dD92b2lkIDA6dC5jb21tZW50cykpaWYoZS50ZXh0LmluY2x1ZGVzKCIgLy8gX3R3Y29uZmlnXyIpKXtBPWU7YnJlYWt9QSYmZS5wYXJzZVByb2plY3RPcHRpb25zKEEpfXJldHVybiBGLm1hcCh0PT5mdW5jdGlvbihBLGUsdCxuKXtjb25zdCBpPShlLnN0YWdlV2lkdGgtNDgwKS8yLG89KGUuc3RhZ2VIZWlnaHQtMzYwKS8yO2lmKEEueCs9aSxBLnkrPW8sQS54PWcuY2xhbXAoQS54LDAsZS5zdGFnZVdpZHRoKSxBLnk9Zy5jbGFtcChBLnksMCxlLnN0YWdlSGVpZ2h0KSxBLnNwcml0ZU5hbWUpe2NvbnN0IGU9dC5maWx0ZXIoZT0+ZS5zcHJpdGUubmFtZT09PUEuc3ByaXRlTmFtZSk7ZSYmZS5sZW5ndGg+MD9BLnRhcmdldElkPWVbMF0uaWQ6Qi53YXJuKCJUcmllZCB0byBkZXNlcmlhbGl6ZSBzcHJpdGUgc3BlY2lmaWMgbW9uaXRvciAiLmNvbmNhdChBLm9wY29kZSwiIGJ1dCBjb3VsZCBub3QgZmluZCBzcHJpdGUgIikuY29uY2F0KEEuc3ByaXRlTmFtZSwiLiIpKX1jb25zdCBhPWUubW9uaXRvckJsb2NrSW5mb1tBLm9wY29kZV07aWYoImRhdGFfbGlzdGNvbnRlbnRzIj09PUEub3Bjb2RlKXtjb25zdCBlPUEudGFyZ2V0SWQ/dC5maW5kKGU9PmUuaWQ9PT1BLnRhcmdldElkKTp0LmZpbmQoQT0+QS5pc1N0YWdlKTtlJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS52YXJpYWJsZXMsQS5pZCkmJihBLnBhcmFtcy5MSVNUPWUudmFyaWFibGVzW0EuaWRdLm5hbWUpfWNvbnN0IGM9e307Zm9yKGNvbnN0IGUgaW4gQS5wYXJhbXMpe2NvbnN0IHQ9e25hbWU6ZSx2YWx1ZTpBLnBhcmFtc1tlXX07Im9iamVjdCI9PXR5cGVvZiBBLnBhcmFtc1tlXSYmKHQuaWQ9QS5wYXJhbXNbZV0uaWQsdC52YWx1ZT1BLnBhcmFtc1tlXS5uYW1lKSxjW2VdPXR9ImRhdGFfdmFyaWFibGUiIT09QS5vcGNvZGUmJiJkYXRhX2xpc3Rjb250ZW50cyIhPT1BLm9wY29kZSYmYSYmYS5pc1Nwcml0ZVNwZWNpZmljP0EuaWQ9YS5nZXRJZChBLnRhcmdldElkLGMpOkEuaWQ9RS5yZXBsYWNlVW5zYWZlQ2hhcnMoQS5pZCk7Y29uc3QgUT1lLm1vbml0b3JCbG9ja3MuX2Jsb2Nrc1tBLmlkXTtpZihRKVEuaXNNb25pdG9yZWQ9QS52aXNpYmxlLFEudGFyZ2V0SWQ9QS50YXJnZXRJZDtlbHNle2NvbnN0IHQ9e2lkOkEuaWQsb3Bjb2RlOkEub3Bjb2RlLGlucHV0czp7fSxmaWVsZHM6Yyx0b3BMZXZlbDohMCxuZXh0Om51bGwscGFyZW50Om51bGwsc2hhZG93OiExLHg6MCx5OjAsaXNNb25pdG9yZWQ6QS52aXNpYmxlLHRhcmdldElkOkEudGFyZ2V0SWR9O2lmKCJkYXRhX3ZhcmlhYmxlIj09PUEub3Bjb2RlKXtjb25zdCBlPXQuZmllbGRzLlZBUklBQkxFO2UuaWQ9QS5pZCxlLnZhcmlhYmxlVHlwZT1yLlNDQUxBUl9UWVBFfWVsc2UgaWYoImRhdGFfbGlzdGNvbnRlbnRzIj09PUEub3Bjb2RlKXtjb25zdCBlPXQuZmllbGRzLkxJU1Q7ZS5pZD1BLmlkLGUudmFyaWFibGVUeXBlPXIuTElTVF9UWVBFfWVsc2UgaWYoQS52YXJpYWJsZUlkKXtjb25zdCBlPU9iamVjdC52YWx1ZXModC5maWVsZHMpWzBdO2UuaWQ9QS52YXJpYWJsZUlkLGUudmFyaWFibGVUeXBlPUEudmFyaWFibGVUeXBlfWUubW9uaXRvckJsb2Nrcy5jcmVhdGVCbG9jayh0KX1lLnJlcXVlc3RBZGRNb25pdG9yKHMoQSkpfSh0LGUsQSkpLEF9KS50aGVuKEE9Pih7dGFyZ2V0czpBLGV4dGVuc2lvbnM6bH0pKX0sZGVzZXJpYWxpemVCbG9ja3M6TyxzZXJpYWxpemVCbG9ja3M6RyxkZXNlcmlhbGl6ZVN0YW5kYWxvbmVCbG9ja3M6QT0+e2lmKChBPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoQSkpKS5leHRlbnNpb25VUkxzKXtjb25zdCBlPW5ldyBNYXA7Zm9yKGNvbnN0W3Qsbl1vZiBPYmplY3QuZW50cmllcyhBLmV4dGVuc2lvblVSTHMpKWUuc2V0KHQsbik7cmV0dXJue2Jsb2NrczpBLmJsb2NrcyxleHRlbnNpb25VUkxzOmV9fXJldHVybntibG9ja3M6QSxleHRlbnNpb25VUkxzOm5ldyBNYXB9fSxzZXJpYWxpemVTdGFuZGFsb25lQmxvY2tzOihBLGUpPT57Y29uc3QgdD1uZXcgU2V0KHgoZSkpLG49Uih0LGUpO3JldHVybiBuP3tibG9ja3M6QSxleHRlbnNpb25VUkxzOm59OkF9LGdldEV4dGVuc2lvbklkRm9yT3Bjb2RlOlR9fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDE3KSxpPShBLGUsdCk9Pk1hdGgubWF4KE1hdGgubWluKEEsdCksZSk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihBKXt0aGlzLl9nbD1BLHRoaXMuX3NoYWRlckNhY2hlPXt9O2Zvcihjb25zdCBBIGluIHIuRFJBV19NT0RFKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyLkRSQVdfTU9ERSxBKSYmKHRoaXMuX3NoYWRlckNhY2hlW0FdPVtdKX1nZXRTaGFkZXIoQSxlKXtjb25zdCB0PXRoaXMuX3NoYWRlckNhY2hlW0FdO0E9PT1yLkRSQVdfTU9ERS5zaWxob3VldHRlJiYoZSY9fihyLkVGRkVDVF9JTkZPLmNvbG9yLm1hc2t8ci5FRkZFQ1RfSU5GTy5icmlnaHRuZXNzLm1hc2spKTtsZXQgbj10W2VdO3JldHVybiBufHwobj10W2VdPXRoaXMuX2J1aWxkU2hhZGVyKEEsZSkpLG59X2J1aWxkU2hhZGVyKEEsZSl7Y29uc3QgaT1yLkVGRkVDVFMubGVuZ3RoLG89WyIjZGVmaW5lIERSQVdfTU9ERV8iLmNvbmNhdChBKV07Zm9yKGxldCBBPTA7QTxpOysrQSkwIT0oZSYxPDxBKSYmby5wdXNoKCIjZGVmaW5lIEVOQUJMRV8iLmNvbmNhdChyLkVGRkVDVFNbQV0pKTtjb25zdCBzPSIiLmNvbmNhdChvLmpvaW4oIlxuIiksIlxuIiksYT1zK3QoNDYzKSxCPXMrdCg0NjQpO3JldHVybiBuLmNyZWF0ZVByb2dyYW1JbmZvKHRoaXMuX2dsLFthLEJdKX19ci5FRkZFQ1RfSU5GTz17Y29sb3I6e3VuaWZvcm1OYW1lOiJ1X2NvbG9yIixtYXNrOjEsY29udmVydGVyOkE9PkEvMjAwJTEsc2hhcGVDaGFuZ2VzOiExfSxmaXNoZXllOnt1bmlmb3JtTmFtZToidV9maXNoZXllIixtYXNrOjIsY29udmVydGVyOkE9Pk1hdGgubWF4KDAsKEErMTAwKS8xMDApLHNoYXBlQ2hhbmdlczohMH0sd2hpcmw6e3VuaWZvcm1OYW1lOiJ1X3doaXJsIixtYXNrOjQsY29udmVydGVyOkE9Pi1BKk1hdGguUEkvMTgwLHNoYXBlQ2hhbmdlczohMH0scGl4ZWxhdGU6e3VuaWZvcm1OYW1lOiJ1X3BpeGVsYXRlIixtYXNrOjgsY29udmVydGVyOkE9Pk1hdGguYWJzKEEpLzEwLHNoYXBlQ2hhbmdlczohMH0sbW9zYWljOnt1bmlmb3JtTmFtZToidV9tb3NhaWMiLG1hc2s6MTYsY29udmVydGVyOkE9PihBPU1hdGgucm91bmQoKE1hdGguYWJzKEEpKzEwKS8xMCksTWF0aC5tYXgoMSxNYXRoLm1pbihBLDUxMikpKSxzaGFwZUNoYW5nZXM6ITB9LGJyaWdodG5lc3M6e3VuaWZvcm1OYW1lOiJ1X2JyaWdodG5lc3MiLG1hc2s6MzIsY29udmVydGVyOkE9Pk1hdGgubWF4KC0xMDAsTWF0aC5taW4oQSwxMDApKS8xMDAsc2hhcGVDaGFuZ2VzOiExfSxnaG9zdDp7dW5pZm9ybU5hbWU6InVfZ2hvc3QiLG1hc2s6NjQsY29udmVydGVyOkE9PjEtTWF0aC5tYXgoMCxNYXRoLm1pbihBLDEwMCkpLzEwMCxzaGFwZUNoYW5nZXM6ITF9LHJlZDp7dW5pZm9ybU5hbWU6InVfcmVkIixtYXNrOjEyOCxjb252ZXJ0ZXI6QT0+aShBLC0xMDAsMTAwKS8xMDAqNCsxLHNoYXBlQ2hhbmdlczohMX0sZ3JlZW46e3VuaWZvcm1OYW1lOiJ1X2dyZWVuIixtYXNrOjI1Nixjb252ZXJ0ZXI6QT0+aShBLC0xMDAsMTAwKS8xMDAqNCsxLHNoYXBlQ2hhbmdlczohMX0sYmx1ZTp7dW5pZm9ybU5hbWU6InVfYmx1ZSIsbWFzazo1MTIsY29udmVydGVyOkE9PmkoQSwtMTAwLDEwMCkvMTAwKjQrMSxzaGFwZUNoYW5nZXM6ITF9LG9wYXF1ZTp7dW5pZm9ybU5hbWU6InVfb3BhcXVlIixtYXNrOjEwMjQsY29udmVydGVyOkE9PmkoTWF0aC5jZWlsKEEpLDEsMTAwKSxzaGFwZUNoYW5nZXM6ITF9LHNhdHVyYXRpb246e3VuaWZvcm1OYW1lOiJ1X3NhdHVyYXRpb24iLG1hc2s6MjA0OCxjb252ZXJ0ZXI6QT0+QS8xMDArMSxzaGFwZUNoYW5nZXM6ITF9LHRpbnRDb2xvcjp7dW5pZm9ybU5hbWU6InVfdGludENvbG9yIixtYXNrOjQwOTYsY29udmVydGVyOkE9PkEtMSxzaGFwZUNoYW5nZXM6ITF9LGhvcml6b250YWxfc2hlYXI6e3VuaWZvcm1OYW1lOiJ1X2hvcml6b250YWxTaGVhciIsbWFzazo4MTkyLGNvbnZlcnRlcjpBPT5BLzEwLHNoYXBlQ2hhbmdlczohMH0sdmVydGljYWxfc2hlYXI6e3VuaWZvcm1OYW1lOiJ1X3ZlcnRpY2FsU2hlYXIiLG1hc2s6MTYzODQsY29udmVydGVyOkE9PkEvMTAsc2hhcGVDaGFuZ2VzOiEwfX0sci5FRkZFQ1RTPU9iamVjdC5rZXlzKHIuRUZGRUNUX0lORk8pLHIuRFJBV19NT0RFPXtkZWZhdWx0OiJkZWZhdWx0IixzdHJhaWdodEFscGhhOiJzdHJhaWdodEFscGhhIixzaWxob3VldHRlOiJzaWxob3VldHRlIixjb2xvck1hc2s6ImNvbG9yTWFzayIsbGluZToibGluZSIsYmFja2dyb3VuZDoiYmFja2dyb3VuZCJ9LEEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUpe3ZhciB0LG4saT1BLmV4cG9ydHM9e307ZnVuY3Rpb24gcigpe3Rocm93IG5ldyBFcnJvcigic2V0VGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCIpfWZ1bmN0aW9uIG8oKXt0aHJvdyBuZXcgRXJyb3IoImNsZWFyVGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCIpfWZ1bmN0aW9uIHMoQSl7aWYodD09PXNldFRpbWVvdXQpcmV0dXJuIHNldFRpbWVvdXQoQSwwKTtpZigodD09PXJ8fCF0KSYmc2V0VGltZW91dClyZXR1cm4gdD1zZXRUaW1lb3V0LHNldFRpbWVvdXQoQSwwKTt0cnl7cmV0dXJuIHQoQSwwKX1jYXRjaChlKXt0cnl7cmV0dXJuIHQuY2FsbChudWxsLEEsMCl9Y2F0Y2goZSl7cmV0dXJuIHQuY2FsbCh0aGlzLEEsMCl9fX0hZnVuY3Rpb24oKXt0cnl7dD0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OnJ9Y2F0Y2goQSl7dD1yfXRyeXtuPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0Om99Y2F0Y2goQSl7bj1vfX0oKTt2YXIgYSxCPVtdLGM9ITEsZz0tMTtmdW5jdGlvbiBFKCl7YyYmYSYmKGM9ITEsYS5sZW5ndGg/Qj1hLmNvbmNhdChCKTpnPS0xLEIubGVuZ3RoJiZRKCkpfWZ1bmN0aW9uIFEoKXtpZighYyl7dmFyIEE9cyhFKTtjPSEwO2Zvcih2YXIgZT1CLmxlbmd0aDtlOyl7Zm9yKGE9QixCPVtdOysrZzxlOylhJiZhW2ddLnJ1bigpO2c9LTEsZT1CLmxlbmd0aH1hPW51bGwsYz0hMSxmdW5jdGlvbihBKXtpZihuPT09Y2xlYXJUaW1lb3V0KXJldHVybiBjbGVhclRpbWVvdXQoQSk7aWYoKG49PT1vfHwhbikmJmNsZWFyVGltZW91dClyZXR1cm4gbj1jbGVhclRpbWVvdXQsY2xlYXJUaW1lb3V0KEEpO3RyeXtuKEEpfWNhdGNoKGUpe3RyeXtyZXR1cm4gbi5jYWxsKG51bGwsQSl9Y2F0Y2goZSl7cmV0dXJuIG4uY2FsbCh0aGlzLEEpfX19KEEpfX1mdW5jdGlvbiB1KEEsZSl7dGhpcy5mdW49QSx0aGlzLmFycmF5PWV9ZnVuY3Rpb24gbCgpe31pLm5leHRUaWNrPWZ1bmN0aW9uKEEpe3ZhciBlPW5ldyBBcnJheShhcmd1bWVudHMubGVuZ3RoLTEpO2lmKGFyZ3VtZW50cy5sZW5ndGg+MSlmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdC0xXT1hcmd1bWVudHNbdF07Qi5wdXNoKG5ldyB1KEEsZSkpLDEhPT1CLmxlbmd0aHx8Y3x8cyhRKX0sdS5wcm90b3R5cGUucnVuPWZ1bmN0aW9uKCl7dGhpcy5mdW4uYXBwbHkobnVsbCx0aGlzLmFycmF5KX0saS50aXRsZT0iYnJvd3NlciIsaS5icm93c2VyPSEwLGkuZW52PXt9LGkuYXJndj1bXSxpLnZlcnNpb249IiIsaS52ZXJzaW9ucz17fSxpLm9uPWwsaS5hZGRMaXN0ZW5lcj1sLGkub25jZT1sLGkub2ZmPWwsaS5yZW1vdmVMaXN0ZW5lcj1sLGkucmVtb3ZlQWxsTGlzdGVuZXJzPWwsaS5lbWl0PWwsaS5wcmVwZW5kTGlzdGVuZXI9bCxpLnByZXBlbmRPbmNlTGlzdGVuZXI9bCxpLmxpc3RlbmVycz1mdW5jdGlvbihBKXtyZXR1cm5bXX0saS5iaW5kaW5nPWZ1bmN0aW9uKEEpe3Rocm93IG5ldyBFcnJvcigicHJvY2Vzcy5iaW5kaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKX0saS5jd2Q9ZnVuY3Rpb24oKXtyZXR1cm4iLyJ9LGkuY2hkaXI9ZnVuY3Rpb24oQSl7dGhyb3cgbmV3IEVycm9yKCJwcm9jZXNzLmNoZGlyIGlzIG5vdCBzdXBwb3J0ZWQiKX0saS51bWFzaz1mdW5jdGlvbigpe3JldHVybiAwfX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e3RyYW5zbGF0ZUZvckNhbWVyYTooQSxlLHQsbik9Pntjb25zdHtwb3M6aSxzY2FsZTpyLGRpcjpvfT1BLmdldENhbWVyYShlKSxzPW8vMTgwKk1hdGguUEksYT1NYXRoLnNpbihzKSxCPU1hdGguY29zKHMpLGM9dC1pWzBdLGc9bi1pWzFdO3JldHVybltyKihjKkItZyphKSxyKihjKmErZypCKV19LHRyYW5zbGF0ZVNjcmVlblBvczooQSxlLHQsbik9Pntjb25zdHtwb3M6aSxzY2FsZTpyLGRpcjpvfT1BLmdldENhbWVyYShlKSxzPTEvcixhPS1vLzE4MCpNYXRoLlBJLEI9TWF0aC5zaW4oYSksYz1NYXRoLmNvcyhhKTtyZXR1cm5baVswXStzKih0KmMtbipCKSxpWzFdK3MqKHQqQituKmMpXX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDU0KTtBLmV4cG9ydHM9Y2xhc3MgZXh0ZW5kcyBue2NvbnN0cnVjdG9yKEEsZSx0LG4pe2xldCBpPWFyZ3VtZW50cy5sZW5ndGg+NCYmdm9pZCAwIT09YXJndW1lbnRzWzRdP2FyZ3VtZW50c1s0XTpudWxsO3N1cGVyKCksdGhpcy5fc29ja2V0PUEuZ2V0U2NyYXRjaExpbmtTb2NrZXQoIkJMRSIpLHRoaXMuX3NvY2tldC5zZXRPbk9wZW4odGhpcy5yZXF1ZXN0UGVyaXBoZXJhbC5iaW5kKHRoaXMpKSx0aGlzLl9zb2NrZXQuc2V0T25DbG9zZSh0aGlzLmhhbmRsZURpc2Nvbm5lY3RFcnJvci5iaW5kKHRoaXMpKSx0aGlzLl9zb2NrZXQuc2V0T25FcnJvcih0aGlzLl9oYW5kbGVSZXF1ZXN0RXJyb3IuYmluZCh0aGlzKSksdGhpcy5fc29ja2V0LnNldEhhbmRsZU1lc3NhZ2UodGhpcy5faGFuZGxlTWVzc2FnZS5iaW5kKHRoaXMpKSx0aGlzLl9zZW5kTWVzc2FnZT10aGlzLl9zb2NrZXQuc2VuZE1lc3NhZ2UuYmluZCh0aGlzLl9zb2NrZXQpLHRoaXMuX2F2YWlsYWJsZVBlcmlwaGVyYWxzPXt9LHRoaXMuX2Nvbm5lY3RDYWxsYmFjaz1uLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLl9jaGFyYWN0ZXJpc3RpY0RpZENoYW5nZUNhbGxiYWNrPW51bGwsdGhpcy5fcmVzZXRDYWxsYmFjaz1pLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEPW51bGwsdGhpcy5fZXh0ZW5zaW9uSWQ9ZSx0aGlzLl9wZXJpcGhlcmFsT3B0aW9ucz10LHRoaXMuX3J1bnRpbWU9QSx0aGlzLl9zb2NrZXQub3BlbigpfXJlcXVlc3RQZXJpcGhlcmFsKCl7dGhpcy5fYXZhaWxhYmxlUGVyaXBoZXJhbHM9e30sdGhpcy5fZGlzY292ZXJUaW1lb3V0SUQmJndpbmRvdy5jbGVhclRpbWVvdXQodGhpcy5fZGlzY292ZXJUaW1lb3V0SUQpLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEPXdpbmRvdy5zZXRUaW1lb3V0KHRoaXMuX2hhbmRsZURpc2NvdmVyVGltZW91dC5iaW5kKHRoaXMpLDE1ZTMpLHRoaXMuc2VuZFJlbW90ZVJlcXVlc3QoImRpc2NvdmVyIix0aGlzLl9wZXJpcGhlcmFsT3B0aW9ucykuY2F0Y2goQT0+e3RoaXMuX2hhbmRsZVJlcXVlc3RFcnJvcihBKX0pfWNvbm5lY3RQZXJpcGhlcmFsKEEpe3RoaXMuc2VuZFJlbW90ZVJlcXVlc3QoImNvbm5lY3QiLHtwZXJpcGhlcmFsSWQ6QX0pLnRoZW4oKCk9Pnt0aGlzLl9jb25uZWN0ZWQ9ITAsdGhpcy5fcnVudGltZS5lbWl0KHRoaXMuX3J1bnRpbWUuY29uc3RydWN0b3IuUEVSSVBIRVJBTF9DT05ORUNURUQpLHRoaXMuX2Nvbm5lY3RDYWxsYmFjaygpfSkuY2F0Y2goQT0+e3RoaXMuX2hhbmRsZVJlcXVlc3RFcnJvcihBKX0pfWRpc2Nvbm5lY3QoKXt0aGlzLl9jb25uZWN0ZWQmJih0aGlzLl9jb25uZWN0ZWQ9ITEpLHRoaXMuX3NvY2tldC5pc09wZW4oKSYmdGhpcy5fc29ja2V0LmNsb3NlKCksdGhpcy5fZGlzY292ZXJUaW1lb3V0SUQmJndpbmRvdy5jbGVhclRpbWVvdXQodGhpcy5fZGlzY292ZXJUaW1lb3V0SUQpLHRoaXMuX3J1bnRpbWUuZW1pdCh0aGlzLl9ydW50aW1lLmNvbnN0cnVjdG9yLlBFUklQSEVSQUxfRElTQ09OTkVDVEVEKX1pc0Nvbm5lY3RlZCgpe3JldHVybiB0aGlzLl9jb25uZWN0ZWR9c3RhcnROb3RpZmljYXRpb25zKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGw7Y29uc3Qgbj17c2VydmljZUlkOkEsY2hhcmFjdGVyaXN0aWNJZDplfTtyZXR1cm4gdGhpcy5fY2hhcmFjdGVyaXN0aWNEaWRDaGFuZ2VDYWxsYmFjaz10LHRoaXMuc2VuZFJlbW90ZVJlcXVlc3QoInN0YXJ0Tm90aWZpY2F0aW9ucyIsbikuY2F0Y2goQT0+e3RoaXMuaGFuZGxlRGlzY29ubmVjdEVycm9yKEEpfSl9cmVhZChBLGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTpudWxsO2NvbnN0IG49e3NlcnZpY2VJZDpBLGNoYXJhY3RlcmlzdGljSWQ6ZX07cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0mJihuLnN0YXJ0Tm90aWZpY2F0aW9ucz0hMCksdCYmKHRoaXMuX2NoYXJhY3RlcmlzdGljRGlkQ2hhbmdlQ2FsbGJhY2s9dCksdGhpcy5zZW5kUmVtb3RlUmVxdWVzdCgicmVhZCIsbikuY2F0Y2goQT0+e3RoaXMuaGFuZGxlRGlzY29ubmVjdEVycm9yKEEpfSl9d3JpdGUoQSxlLHQpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTpudWxsLGk9YXJndW1lbnRzLmxlbmd0aD40JiZ2b2lkIDAhPT1hcmd1bWVudHNbNF0/YXJndW1lbnRzWzRdOm51bGw7Y29uc3Qgcj17c2VydmljZUlkOkEsY2hhcmFjdGVyaXN0aWNJZDplLG1lc3NhZ2U6dH07cmV0dXJuIG4mJihyLmVuY29kaW5nPW4pLG51bGwhPT1pJiYoci53aXRoUmVzcG9uc2U9aSksdGhpcy5zZW5kUmVtb3RlUmVxdWVzdCgid3JpdGUiLHIpLmNhdGNoKEE9Pnt0aGlzLmhhbmRsZURpc2Nvbm5lY3RFcnJvcihBKX0pfWRpZFJlY2VpdmVDYWxsKEEsZSl7c3dpdGNoKEEpe2Nhc2UiZGlkRGlzY292ZXJQZXJpcGhlcmFsIjp0aGlzLl9hdmFpbGFibGVQZXJpcGhlcmFsc1tlLnBlcmlwaGVyYWxJZF09ZSx0aGlzLl9ydW50aW1lLmVtaXQodGhpcy5fcnVudGltZS5jb25zdHJ1Y3Rvci5QRVJJUEhFUkFMX0xJU1RfVVBEQVRFLHRoaXMuX2F2YWlsYWJsZVBlcmlwaGVyYWxzKSx0aGlzLl9kaXNjb3ZlclRpbWVvdXRJRCYmd2luZG93LmNsZWFyVGltZW91dCh0aGlzLl9kaXNjb3ZlclRpbWVvdXRJRCk7YnJlYWs7Y2FzZSJ1c2VyRGlkUGlja1BlcmlwaGVyYWwiOnRoaXMuX2F2YWlsYWJsZVBlcmlwaGVyYWxzW2UucGVyaXBoZXJhbElkXT1lLHRoaXMuX3J1bnRpbWUuZW1pdCh0aGlzLl9ydW50aW1lLmNvbnN0cnVjdG9yLlVTRVJfUElDS0VEX1BFUklQSEVSQUwsdGhpcy5fYXZhaWxhYmxlUGVyaXBoZXJhbHMpLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEJiZ3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX2Rpc2NvdmVyVGltZW91dElEKTticmVhaztjYXNlInVzZXJEaWROb3RQaWNrUGVyaXBoZXJhbCI6dGhpcy5fcnVudGltZS5lbWl0KHRoaXMuX3J1bnRpbWUuY29uc3RydWN0b3IuUEVSSVBIRVJBTF9TQ0FOX1RJTUVPVVQpLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEJiZ3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX2Rpc2NvdmVyVGltZW91dElEKTticmVhaztjYXNlImNoYXJhY3RlcmlzdGljRGlkQ2hhbmdlIjp0aGlzLl9jaGFyYWN0ZXJpc3RpY0RpZENoYW5nZUNhbGxiYWNrJiZ0aGlzLl9jaGFyYWN0ZXJpc3RpY0RpZENoYW5nZUNhbGxiYWNrKGUubWVzc2FnZSk7YnJlYWs7Y2FzZSJwaW5nIjpyZXR1cm4gNDJ9fWhhbmRsZURpc2Nvbm5lY3RFcnJvcigpe3RoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuZGlzY29ubmVjdCgpLHRoaXMuX3Jlc2V0Q2FsbGJhY2smJnRoaXMuX3Jlc2V0Q2FsbGJhY2soKSx0aGlzLl9ydW50aW1lLmVtaXQodGhpcy5fcnVudGltZS5jb25zdHJ1Y3Rvci5QRVJJUEhFUkFMX0NPTk5FQ1RJT05fTE9TVF9FUlJPUix7bWVzc2FnZToiU2NyYXRjaCBsb3N0IGNvbm5lY3Rpb24gdG8iLGV4dGVuc2lvbklkOnRoaXMuX2V4dGVuc2lvbklkfSkpfV9oYW5kbGVSZXF1ZXN0RXJyb3IoKXt0aGlzLl9ydW50aW1lLmVtaXQodGhpcy5fcnVudGltZS5jb25zdHJ1Y3Rvci5QRVJJUEhFUkFMX1JFUVVFU1RfRVJST1Ise21lc3NhZ2U6IlNjcmF0Y2ggbG9zdCBjb25uZWN0aW9uIHRvIixleHRlbnNpb25JZDp0aGlzLl9leHRlbnNpb25JZH0pfV9oYW5kbGVEaXNjb3ZlclRpbWVvdXQoKXt0aGlzLl9kaXNjb3ZlclRpbWVvdXRJRCYmd2luZG93LmNsZWFyVGltZW91dCh0aGlzLl9kaXNjb3ZlclRpbWVvdXRJRCksdGhpcy5fcnVudGltZS5lbWl0KHRoaXMuX3J1bnRpbWUuY29uc3RydWN0b3IuUEVSSVBIRVJBTF9TQ0FOX1RJTUVPVVQpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXtUaW1lcjp0KDE4KSxDYXN0OnQoMiksbG9nOnQoNSksYmxvY2tVdGlsaXR5OnQoMjIzKSx0aHJlYWQ6bnVsbH07bGV0IGk9IiI7Y29uc3Qgcj17fTtpKz0ibGV0IHN0dWNrQ291bnRlciA9IDA7XG5jb25zdCBpc1N0dWNrID0gKCkgPT4ge1xuICAgIC8vIFRoZSByZWFsIHRpbWUgaXMgbm90IGNoZWNrZWQgb24gZXZlcnkgY2FsbCBmb3IgcGVyZm9ybWFuY2UuXG4gICAgc3R1Y2tDb3VudGVyKys7XG4gICAgaWYgKHN0dWNrQ291bnRlciA9PT0gMTAwKSB7XG4gICAgICAgIHN0dWNrQ291bnRlciA9IDA7XG4gICAgICAgIHJldHVybiBnbG9iYWxTdGF0ZS50aHJlYWQudGFyZ2V0LnJ1bnRpbWUuc2VxdWVuY2VyLnRpbWVyLnRpbWVFbGFwc2VkKCkgPiA1MDA7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn07IixyLm51bGxpc2g9ImNvbnN0IG51bGxpc2ggPSAoY2hlY2ssIGFsdCkgPT4ge1xuICAgIGlmICghY2hlY2spIHtcbiAgICAgICAgaWYgKHZhbCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gYWx0XG4gICAgICAgIGlmICh2YWwgPT09IG51bGwpIHJldHVybiBhbHRcbiAgICAgICAgcmV0dXJuIGNoZWNrXG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGNoZWNrXG4gICAgfVxufSIsci5zdGFydEhhdHM9ImNvbnN0IHN0YXJ0SGF0cyA9IChyZXF1ZXN0ZWRIYXQsIG9wdE1hdGNoRmllbGRzKSA9PiB7XG4gICAgY29uc3QgdGhyZWFkID0gZ2xvYmFsU3RhdGUudGhyZWFkO1xuICAgIGNvbnN0IHRocmVhZHMgPSB0aHJlYWQudGFyZ2V0LnJ1bnRpbWUuc3RhcnRIYXRzKHJlcXVlc3RlZEhhdCwgb3B0TWF0Y2hGaWVsZHMpO1xuICAgIHJldHVybiB0aHJlYWRzO1xufSIsci53YWl0VGhyZWFkcz0iY29uc3Qgd2FpdFRocmVhZHMgPSBmdW5jdGlvbioodGhyZWFkcykge1xuICAgIGNvbnN0IHRocmVhZCA9IGdsb2JhbFN0YXRlLnRocmVhZDtcbiAgICBjb25zdCBydW50aW1lID0gdGhyZWFkLnRhcmdldC5ydW50aW1lO1xuXG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgLy8gZGV0ZXJtaW5lIHdoZXRoZXIgYW55IHRocmVhZHMgYXJlIHJ1bm5pbmdcbiAgICAgICAgbGV0IGFueVJ1bm5pbmcgPSBmYWxzZTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aHJlYWRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAocnVudGltZS50aHJlYWRzLmluZGV4T2YodGhyZWFkc1tpXSkgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgYW55UnVubmluZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFhbnlSdW5uaW5nKSB7XG4gICAgICAgICAgICAvLyBhbGwgdGhyZWFkcyBhcmUgZmluaXNoZWQsIGNhbiByZXN1bWVcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBhbGxXYWl0aW5nID0gdHJ1ZTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aHJlYWRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoIXJ1bnRpbWUuaXNXYWl0aW5nVGhyZWFkKHRocmVhZHNbaV0pKSB7XG4gICAgICAgICAgICAgICAgYWxsV2FpdGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChhbGxXYWl0aW5nKSB7XG4gICAgICAgICAgICB0aHJlYWQuc3RhdHVzID0gMzsgLy8gU1RBVFVTX1lJRUxEX1RJQ0tcbiAgICAgICAgfVxuXG4gICAgICAgIHlpZWxkO1xuICAgIH1cbn0iLHIud2FpdFByb21pc2U9IlxuY29uc3Qgd2FpdFByb21pc2UgPSBmdW5jdGlvbioocHJvbWlzZSkge1xuICAgIGNvbnN0IHRocmVhZCA9IGdsb2JhbFN0YXRlLnRocmVhZDtcbiAgICBsZXQgcmV0dXJuVmFsdWU7XG4gICAgbGV0IGVycm9yUmV0dXJuO1xuXG4gICAgcHJvbWlzZVxuICAgICAgICAudGhlbih2YWx1ZSA9PiB7XG4gICAgICAgICAgICByZXR1cm5WYWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgdGhyZWFkLnN0YXR1cyA9IDA7IC8vIFNUQVRVU19SVU5OSU5HXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgICBlcnJvclJldHVybiA9IGVycm9yO1xuICAgICAgICAgICAgLy8gaSByZWFsaXplZCwgaSBkb250IGFjdHVhbGx5IGtub3cgd2hhdCB3b3VsZCBoYXBwZW4gaWYgd2UgbmV2ZXIgZG8gdGhpcyBidXQgdGhyb3cgYW5kIGV4aXQgYW55d2F5c1xuICAgICAgICAgICAgdGhyZWFkLnN0YXR1cyA9IDA7IC8vIFNUQVRVU19SVU5OSU5HXG4gICAgICAgIH0pO1xuXG4gICAgLy8gZW50ZXIgU1RBVFVTX1BST01JU0VfV0FJVCBhbmQgeWllbGRcbiAgICAvLyB0aGlzIHdpbGwgc3RvcCBzY3JpcHQgZXhlY3V0aW9uIHVudGlsIHRoZSBwcm9taXNlIGhhbmRsZXJzIHJlc2V0IHRoZSB0aHJlYWQgc3RhdHVzXG4gICAgdGhyZWFkLnN0YXR1cyA9IDE7IC8vIFNUQVRVU19QUk9NSVNFX1dBSVRcbiAgICB5aWVsZDtcblxuICAgIC8vIHRocm93IHRoZSBwcm9taXNlIGVycm9yIGlmIGVlIGdvdCBvbmVcbiAgICBpZiAoZXJyb3JSZXR1cm4pIHRocm93IGVycm9yUmV0dXJuXG4gICAgcmV0dXJuIHJldHVyblZhbHVlO1xufSIsci5leGVjdXRlSW5Db21wYXRpYmlsaXR5TGF5ZXI9ImxldCBoYXNSZXN1bWVkRnJvbVByb21pc2UgPSBmYWxzZTtcblxuY29uc3QgaXNQcm9taXNlID0gdmFsdWUgPT4gKFxuICAgIC8vIHNlZSBlbmdpbmUvZXhlY3V0ZS5qc1xuICAgIHZhbHVlICE9PSBudWxsICYmXG4gICAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAgIHR5cGVvZiB2YWx1ZS50aGVuID09PSAnZnVuY3Rpb24nXG4pO1xuY29uc3QgZXhlY3V0ZUluQ29tcGF0aWJpbGl0eUxheWVyID0gZnVuY3Rpb24qKGlucHV0cywgYmxvY2tGdW5jdGlvbiwgaXNXYXJwLCB1c2VGbGFncywgYmxvY2tJZCwgYnJhbmNoSW5mbywgdmlzdWFsUmVwb3J0KSB7XG4gICAgY29uc3QgdGhyZWFkID0gZ2xvYmFsU3RhdGUudGhyZWFkO1xuICAgIGNvbnN0IGJsb2NrVXRpbGl0eSA9IGdsb2JhbFN0YXRlLmJsb2NrVXRpbGl0eTtcbiAgICBjb25zdCBzdGFja0ZyYW1lID0gYnJhbmNoSW5mbyA/IGJyYW5jaEluZm8uc3RhY2tGcmFtZSA6IHt9O1xuICAgIGNvbnN0IGZpbmlzaCA9IChyZXR1cm5WYWx1ZSkgPT4ge1xuICAgICAgICBpZiAoYnJhbmNoSW5mbykge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiByZXR1cm5WYWx1ZSA9PT0gJ3VuZGVmaW5lZCcgJiYgYmxvY2tVdGlsaXR5Ll9zdGFydGVkQnJhbmNoKSB7XG4gICAgICAgICAgICAgICAgYnJhbmNoSW5mby5pc0xvb3AgPSBibG9ja1V0aWxpdHkuX3N0YXJ0ZWRCcmFuY2hbMV07XG4gICAgICAgICAgICAgICAgcmV0dXJuIGJsb2NrVXRpbGl0eS5fc3RhcnRlZEJyYW5jaFswXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyYW5jaEluZm8uaXNMb29wID0gYnJhbmNoSW5mby5kZWZhdWx0SXNMb29wO1xuICAgICAgICAgICAgcmV0dXJuIHJldHVyblZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXR1cm5WYWx1ZTtcbiAgICB9O1xuXG4gICAgLy8gcmVzZXQgdGhlIHN0YWNrZnJhbWVcbiAgICAvLyB3ZSBvbmx5IGV2ZXIgdXNlIG9uZSBzdGFja2ZyYW1lIGF0IGEgdGltZSwgc28gdGhpcyBzaG91bGRuJ3QgY2F1c2UgaXNzdWVzXG4gICAgdGhyZWFkLnN0YWNrRnJhbWVzW3RocmVhZC5zdGFja0ZyYW1lcy5sZW5ndGggLSAxXS5yZXVzZShpc1dhcnApO1xuXG4gICAgY29uc3QgZXhlY3V0ZUJsb2NrID0gKCkgPT4ge1xuICAgICAgICBibG9ja1V0aWxpdHkuaW5pdCh0aHJlYWQsIGJsb2NrSWQsIHN0YWNrRnJhbWUsIGJyYW5jaEluZm8pO1xuICAgICAgICByZXR1cm4gYmxvY2tGdW5jdGlvbihpbnB1dHMsIGJsb2NrVXRpbGl0eSwgdmlzdWFsUmVwb3J0KTtcbiAgICB9O1xuXG4gICAgbGV0IHJldHVyblZhbHVlID0gZXhlY3V0ZUJsb2NrKCk7XG4gICAgaWYgKGlzUHJvbWlzZShyZXR1cm5WYWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuVmFsdWUgPSBmaW5pc2goeWllbGQqIHdhaXRQcm9taXNlKHJldHVyblZhbHVlKSk7XG4gICAgICAgIGlmICh1c2VGbGFncykgaGFzUmVzdW1lZEZyb21Qcm9taXNlID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIHJldHVyblZhbHVlO1xuICAgIH1cblxuICAgIGlmICh0aHJlYWQuc3RhdHVzID09PSAxIC8qIFNUQVRVU19QUk9NSVNFX1dBSVQgKi8gfHwgdGhyZWFkLnN0YXR1cyA9PT0gNCAvKiBTVEFUVVNfRE9ORSAqLykge1xuICAgICAgICAvLyBTb21ldGhpbmcgZXh0ZXJuYWwgaXMgZm9yY2luZyB1cyB0byBzdG9wXG4gICAgICAgIHlpZWxkO1xuICAgICAgICAvLyBNYWtlIHVwIGEgcmV0dXJuIHZhbHVlIGJlY2F1c2Ugd2hhdGV2ZXIgaXMgZm9yY2luZyB1cyB0byBzdG9wIGNhbid0IHNwZWNpZnkgb25lXG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICB3aGlsZSAodGhyZWFkLnN0YXR1cyA9PT0gMiAvKiBTVEFUVVNfWUlFTEQgKi8gfHwgdGhyZWFkLnN0YXR1cyA9PT0gMyAvKiBTVEFUVVNfWUlFTERfVElDSyAqLykge1xuICAgICAgICAvLyBZaWVsZGVkIHRocmVhZHMgd2lsbCBydW4gbmV4dCBpdGVyYXRpb24uXG4gICAgICAgIGlmICh0aHJlYWQuc3RhdHVzID09PSAyIC8qIFNUQVRVU19ZSUVMRCAqLykge1xuICAgICAgICAgICAgdGhyZWFkLnN0YXR1cyA9IDA7IC8vIFNUQVRVU19SVU5OSU5HXG4gICAgICAgICAgICAvLyBZaWVsZCBiYWNrIHRvIHRoZSBldmVudCBsb29wIHdoZW4gc3R1Y2sgb3Igbm90IGluIHdhcnAgbW9kZS5cbiAgICAgICAgICAgIGlmICghaXNXYXJwIHx8IGlzU3R1Y2soKSkge1xuICAgICAgICAgICAgICAgIHlpZWxkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gc3RhdHVzIGlzIFNUQVRVU19ZSUVMRF9USUNLLCBhbHdheXMgeWllbGQgdG8gdGhlIGV2ZW50IGxvb3BcbiAgICAgICAgICAgIHlpZWxkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuVmFsdWUgPSBleGVjdXRlQmxvY2soKTtcbiAgICAgICAgaWYgKGlzUHJvbWlzZShyZXR1cm5WYWx1ZSkpIHtcbiAgICAgICAgICAgIHJldHVyblZhbHVlID0gZmluaXNoKHlpZWxkKiB3YWl0UHJvbWlzZShyZXR1cm5WYWx1ZSkpO1xuICAgICAgICAgICAgaWYgKHVzZUZsYWdzKSBoYXNSZXN1bWVkRnJvbVByb21pc2UgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIHJldHVyblZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRocmVhZC5zdGF0dXMgPT09IDEgLyogU1RBVFVTX1BST01JU0VfV0FJVCAqLyB8fCB0aHJlYWQuc3RhdHVzID09PSA0IC8qIFNUQVRVU19ET05FICovKSB7XG4gICAgICAgICAgICB5aWVsZDtcbiAgICAgICAgICAgIHJldHVybiBmaW5pc2goJycpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmaW5pc2gocmV0dXJuVmFsdWUpO1xufSIsci5jcmVhdGVCcmFuY2hJbmZvPSJjb25zdCBjcmVhdGVCcmFuY2hJbmZvID0gKGlzTG9vcCkgPT4gKHtcbiAgICBkZWZhdWx0SXNMb29wOiBpc0xvb3AsXG4gICAgaXNMb29wOiBmYWxzZSxcbiAgICBicmFuY2g6IDAsXG4gICAgc3RhY2tGcmFtZToge30sXG4gICAgb25FbmQ6IFtdLFxufSk7IixyLnJldGlyZT0iY29uc3QgcmV0aXJlID0gKCkgPT4ge1xuICAgIGNvbnN0IHRocmVhZCA9IGdsb2JhbFN0YXRlLnRocmVhZDtcbiAgICB0aHJlYWQudGFyZ2V0LnJ1bnRpbWUuc2VxdWVuY2VyLnJldGlyZVRocmVhZCh0aHJlYWQpO1xufSIsci50b0Jvb2xlYW49ImNvbnN0IHRvQm9vbGVhbiA9IHZhbHVlID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAodmFsdWUgPT09ICcnIHx8IHZhbHVlID09PSAnMCcgfHwgdmFsdWUudG9Mb3dlckNhc2UoKSA9PT0gJ2ZhbHNlJykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gISF2YWx1ZTtcbn0iLHIubGltaXRQcmVjaXNpb249ImNvbnN0IGxpbWl0UHJlY2lzaW9uID0gdmFsdWUgPT4ge1xuICAgIGNvbnN0IHJvdW5kZWQgPSBNYXRoLnJvdW5kKHZhbHVlKTtcbiAgICBjb25zdCBkZWx0YSA9IHZhbHVlIC0gcm91bmRlZDtcbiAgICByZXR1cm4gKE1hdGguYWJzKGRlbHRhKSA8IDFlLTkpID8gcm91bmRlZCA6IHZhbHVlO1xufSIsaSs9ImNvbnN0IGlzTm90QWN0dWFsbHlaZXJvID0gdmFsID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbCAhPT0gJ3N0cmluZycpIHJldHVybiBmYWxzZTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbC5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBjb2RlID0gdmFsLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgIGlmIChjb2RlID09PSA0OCB8fCBjb2RlID09PSA5KSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG59OyIsaSs9ImNvbnN0IGNvbXBhcmVFcXVhbFNsb3cgPSAodjEsIHYyKSA9PiB7XG4gICAgY29uc3QgbjEgPSArdjE7XG4gICAgaWYgKGlzTmFOKG4xKSB8fCAobjEgPT09IDAgJiYgaXNOb3RBY3R1YWxseVplcm8odjEpKSkgcmV0dXJuICgnJyArIHYxKS50b0xvd2VyQ2FzZSgpID09PSAoJycgKyB2MikudG9Mb3dlckNhc2UoKTtcbiAgICBjb25zdCBuMiA9ICt2MjtcbiAgICBpZiAoaXNOYU4objIpIHx8IChuMiA9PT0gMCAmJiBpc05vdEFjdHVhbGx5WmVybyh2MikpKSByZXR1cm4gKCcnICsgdjEpLnRvTG93ZXJDYXNlKCkgPT09ICgnJyArIHYyKS50b0xvd2VyQ2FzZSgpO1xuICAgIHJldHVybiBuMSA9PT0gbjI7XG59O1xuY29uc3QgY29tcGFyZUVxdWFsID0gKHYxLCB2MikgPT4gKHR5cGVvZiB2MSA9PT0gJ251bWJlcicgJiYgdHlwZW9mIHYyID09PSAnbnVtYmVyJyAmJiAhaXNOYU4odjEpICYmICFpc05hTih2MikgfHwgdjEgPT09IHYyKSA/IHYxID09PSB2MiA6IGNvbXBhcmVFcXVhbFNsb3codjEsIHYyKTsiLHIuY29tcGFyZUdyZWF0ZXJUaGFuPSJjb25zdCBjb21wYXJlR3JlYXRlclRoYW5TbG93ID0gKHYxLCB2MikgPT4ge1xuICAgIGxldCBuMSA9ICt2MTtcbiAgICBsZXQgbjIgPSArdjI7XG4gICAgaWYgKG4xID09PSAwICYmIGlzTm90QWN0dWFsbHlaZXJvKHYxKSkge1xuICAgICAgICBuMSA9IE5hTjtcbiAgICB9IGVsc2UgaWYgKG4yID09PSAwICYmIGlzTm90QWN0dWFsbHlaZXJvKHYyKSkge1xuICAgICAgICBuMiA9IE5hTjtcbiAgICB9XG4gICAgaWYgKGlzTmFOKG4xKSB8fCBpc05hTihuMikpIHtcbiAgICAgICAgY29uc3QgczEgPSAoJycgKyB2MSkudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgY29uc3QgczIgPSAoJycgKyB2MikudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgcmV0dXJuIHMxID4gczI7XG4gICAgfVxuICAgIHJldHVybiBuMSA+IG4yO1xufTtcbmNvbnN0IGNvbXBhcmVHcmVhdGVyVGhhbiA9ICh2MSwgdjIpID0+IHR5cGVvZiB2MSA9PT0gJ251bWJlcicgJiYgdHlwZW9mIHYyID09PSAnbnVtYmVyJyAmJiAhaXNOYU4odjEpID8gdjEgPiB2MiA6IGNvbXBhcmVHcmVhdGVyVGhhblNsb3codjEsIHYyKSIsci5jb21wYXJlTGVzc1RoYW49ImNvbnN0IGNvbXBhcmVMZXNzVGhhblNsb3cgPSAodjEsIHYyKSA9PiB7XG4gICAgbGV0IG4xID0gK3YxO1xuICAgIGxldCBuMiA9ICt2MjtcbiAgICBpZiAobjEgPT09IDAgJiYgaXNOb3RBY3R1YWxseVplcm8odjEpKSB7XG4gICAgICAgIG4xID0gTmFOO1xuICAgIH0gZWxzZSBpZiAobjIgPT09IDAgJiYgaXNOb3RBY3R1YWxseVplcm8odjIpKSB7XG4gICAgICAgIG4yID0gTmFOO1xuICAgIH1cbiAgICBpZiAoaXNOYU4objEpIHx8IGlzTmFOKG4yKSkge1xuICAgICAgICBjb25zdCBzMSA9ICgnJyArIHYxKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBjb25zdCBzMiA9ICgnJyArIHYyKS50b0xvd2VyQ2FzZSgpO1xuICAgICAgICByZXR1cm4gczEgPCBzMjtcbiAgICB9XG4gICAgcmV0dXJuIG4xIDwgbjI7XG59O1xuY29uc3QgY29tcGFyZUxlc3NUaGFuID0gKHYxLCB2MikgPT4gdHlwZW9mIHYxID09PSAnbnVtYmVyJyAmJiB0eXBlb2YgdjIgPT09ICdudW1iZXInICYmICFpc05hTih2MikgPyB2MSA8IHYyIDogY29tcGFyZUxlc3NUaGFuU2xvdyh2MSwgdjIpIixyLnJhbmRvbUludD0iY29uc3QgcmFuZG9tSW50ID0gKGxvdywgaGlnaCkgPT4gbG93ICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKChoaWdoICsgMSkgLSBsb3cpKSIsci5yYW5kb21GbG9hdD0iY29uc3QgcmFuZG9tRmxvYXQgPSAobG93LCBoaWdoKSA9PiAoTWF0aC5yYW5kb20oKSAqIChoaWdoIC0gbG93KSkgKyBsb3ciLHIudGltZXI9ImNvbnN0IHRpbWVyID0gKCkgPT4ge1xuICAgIGNvbnN0IHQgPSBuZXcgZ2xvYmFsU3RhdGUuVGltZXIoe1xuICAgICAgICBub3c6ICgpID0+IGdsb2JhbFN0YXRlLnRocmVhZC50YXJnZXQucnVudGltZS5jdXJyZW50TVNlY3NcbiAgICB9KTtcbiAgICB0LnN0YXJ0KCk7XG4gICAgcmV0dXJuIHQ7XG59IixyLmRheXNTaW5jZTIwMDA9ImNvbnN0IGRheXNTaW5jZTIwMDAgPSAoKSA9PiAoRGF0ZS5ub3coKSAtIDk0NjY4NDgwMDAwMCkgLyAoMjQgKiA2MCAqIDYwICogMTAwMCkiLHIuZGlzdGFuY2U9ImNvbnN0IGRpc3RhbmNlID0gbWVudSA9PiB7XG4gICAgY29uc3QgdGhyZWFkID0gZ2xvYmFsU3RhdGUudGhyZWFkO1xuICAgIGlmICh0aHJlYWQudGFyZ2V0LmlzU3RhZ2UpIHJldHVybiAxMDAwMDtcblxuICAgIGxldCB0YXJnZXRYID0gMDtcbiAgICBsZXQgdGFyZ2V0WSA9IDA7XG4gICAgaWYgKG1lbnUgPT09ICdfbW91c2VfJykge1xuICAgICAgICB0YXJnZXRYID0gdGhyZWFkLnRhcmdldC5ydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRTY3JhdGNoWCgpO1xuICAgICAgICB0YXJnZXRZID0gdGhyZWFkLnRhcmdldC5ydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRTY3JhdGNoWSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGRpc3RUYXJnZXQgPSB0aHJlYWQudGFyZ2V0LnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKG1lbnUpO1xuICAgICAgICBpZiAoIWRpc3RUYXJnZXQpIHJldHVybiAxMDAwMDtcbiAgICAgICAgdGFyZ2V0WCA9IGRpc3RUYXJnZXQueDtcbiAgICAgICAgdGFyZ2V0WSA9IGRpc3RUYXJnZXQueTtcbiAgICB9XG5cbiAgICBjb25zdCBkeCA9IHRocmVhZC50YXJnZXQueCAtIHRhcmdldFg7XG4gICAgY29uc3QgZHkgPSB0aHJlYWQudGFyZ2V0LnkgLSB0YXJnZXRZO1xuICAgIHJldHVybiBNYXRoLnNxcnQoKGR4ICogZHgpICsgKGR5ICogZHkpKTtcbn0iLGkrPSJjb25zdCBsaXN0SW5kZXhTbG93ID0gKGluZGV4LCBsZW5ndGgpID0+IHtcbiAgICBpZiAoaW5kZXggPT09ICdsYXN0Jykge1xuICAgICAgICByZXR1cm4gbGVuZ3RoIC0gMTtcbiAgICB9IGVsc2UgaWYgKGluZGV4ID09PSAncmFuZG9tJyB8fCBpbmRleCA9PT0gJ2FueScpIHtcbiAgICAgICAgaWYgKGxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHJldHVybiAoTWF0aC5yYW5kb20oKSAqIGxlbmd0aCkgfCAwO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgaW5kZXggPSAoK2luZGV4IHx8IDApIHwgMDtcbiAgICBpZiAoaW5kZXggPCAxIHx8IGluZGV4ID4gbGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgcmV0dXJuIGluZGV4IC0gMTtcbn07XG5jb25zdCBsaXN0SW5kZXggPSAoaW5kZXgsIGxlbmd0aCkgPT4ge1xuICAgIGlmICh0eXBlb2YgaW5kZXggIT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gbGlzdEluZGV4U2xvdyhpbmRleCwgbGVuZ3RoKTtcbiAgICB9XG4gICAgaW5kZXggPSBpbmRleCB8IDA7XG4gICAgcmV0dXJuIGluZGV4IDwgMSB8fCBpbmRleCA+IGxlbmd0aCA/IC0xIDogaW5kZXggLSAxO1xufTsiLHIubGlzdEdldD0iY29uc3QgbGlzdEdldCA9IChsaXN0LCBpZHgpID0+IHtcbiAgICBjb25zdCBpbmRleCA9IGxpc3RJbmRleChpZHgsIGxpc3QubGVuZ3RoKTtcbiAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgcmV0dXJuIGxpc3RbaW5kZXhdO1xufSIsci5saXN0UmVwbGFjZT0iY29uc3QgbGlzdFJlcGxhY2UgPSAobGlzdCwgaWR4LCB2YWx1ZSkgPT4ge1xuICAgIGNvbnN0IGluZGV4ID0gbGlzdEluZGV4KGlkeCwgbGlzdC52YWx1ZS5sZW5ndGgpO1xuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsaXN0LnZhbHVlW2luZGV4XSA9IHZhbHVlO1xuICAgIGxpc3QuX21vbml0b3JVcFRvRGF0ZSA9IGZhbHNlO1xufSIsci5saXN0SW5zZXJ0PSJjb25zdCBsaXN0SW5zZXJ0ID0gKGxpc3QsIGlkeCwgdmFsdWUpID0+IHtcbiAgICBjb25zdCBpbmRleCA9IGxpc3RJbmRleChpZHgsIGxpc3QudmFsdWUubGVuZ3RoICsgMSk7XG4gICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGxpc3QudmFsdWUuc3BsaWNlKGluZGV4LCAwLCB2YWx1ZSk7XG4gICAgbGlzdC5fbW9uaXRvclVwVG9EYXRlID0gZmFsc2U7XG59IixyLmxpc3REZWxldGU9ImNvbnN0IGxpc3REZWxldGUgPSAobGlzdCwgaWR4KSA9PiB7XG4gICAgaWYgKGlkeCA9PT0gJ2FsbCcpIHtcbiAgICAgICAgbGlzdC52YWx1ZSA9IFtdO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGluZGV4ID0gbGlzdEluZGV4KGlkeCwgbGlzdC52YWx1ZS5sZW5ndGgpO1xuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsaXN0LnZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgbGlzdC5fbW9uaXRvclVwVG9EYXRlID0gZmFsc2U7XG59IixyLmxpc3RDb250YWlucz0iY29uc3QgbGlzdENvbnRhaW5zID0gKGxpc3QsIGl0ZW0pID0+IHtcbiAgICAvLyBUT0RPOiBldmFsdWF0ZSB3aGV0aGVyIGluZGV4T2YgaXMgd29ydGh3aGlsZSBoZXJlXG4gICAgaWYgKGxpc3QudmFsdWUuaW5kZXhPZihpdGVtKSAhPT0gLTEpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC52YWx1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoY29tcGFyZUVxdWFsKGxpc3QudmFsdWVbaV0sIGl0ZW0pKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59IixyLmxpc3RDb250YWluc0Zhc3Rlc3Q9ImNvbnN0IGxpc3RDb250YWluc0Zhc3Rlc3QgPSAobGlzdCwgaXRlbSkgPT4ge1xuICAgIHJldHVybiBsaXN0LnZhbHVlLnNvbWUobGl0ZW0gPT4gY29tcGFyZUVxdWFsKGxpdGVtLCBpdGVtKSk7XG59IixyLmxpc3RJbmRleE9mPSJjb25zdCBsaXN0SW5kZXhPZiA9IChsaXN0LCBpdGVtKSA9PiB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0LnZhbHVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChjb21wYXJlRXF1YWwobGlzdC52YWx1ZVtpXSwgaXRlbSkpIHtcbiAgICAgICAgICAgIHJldHVybiBpICsgMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gMDtcbn0iLHIubGlzdENvbnRlbnRzPSJjb25zdCBsaXN0Q29udGVudHMgPSBsaXN0ID0+IHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QudmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgbGlzdEl0ZW0gPSBsaXN0LnZhbHVlW2ldO1xuICAgICAgICAvLyB0aGlzIGlzIGFuIGludGVudGlvbmFsIGJyZWFrIGZyb20gd2hhdCBzY3JhdGNoIDMgZG9lcyB0byBhZGRyZXNzIG91ciBhdXRvbWF0aWMgc3RyaW5nIC0+IG51bWJlciBjb252ZXJzaW9uc1xuICAgICAgICAvLyBpdCBmaXhlcyBtb3JlIHRoYW4gaXQgYnJlYWtzXG4gICAgICAgIGlmICgobGlzdEl0ZW0gKyAnJykubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICByZXR1cm4gbGlzdC52YWx1ZS5qb2luKCcgJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGxpc3QudmFsdWUuam9pbignJyk7XG59IixyLmNvbG9yVG9MaXN0PSJjb25zdCBjb2xvclRvTGlzdCA9IGNvbG9yID0+IGdsb2JhbFN0YXRlLkNhc3QudG9SZ2JDb2xvckxpc3QoY29sb3IpIixyLm1vZD0iY29uc3QgbW9kID0gKG4sIG1vZHVsdXMpID0+IHtcbiAgICBsZXQgcmVzdWx0ID0gbiAlIG1vZHVsdXM7XG4gICAgaWYgKHJlc3VsdCAvIG1vZHVsdXMgPCAwKSByZXN1bHQgKz0gbW9kdWx1cztcbiAgICByZXR1cm4gcmVzdWx0O1xufSIsci50YW49ImNvbnN0IHRhbiA9IChhbmdsZSkgPT4ge1xuICAgIHN3aXRjaCAoYW5nbGUgJSAzNjApIHtcbiAgICBjYXNlIC0yNzA6IGNhc2UgOTA6IHJldHVybiBJbmZpbml0eTtcbiAgICBjYXNlIC05MDogY2FzZSAyNzA6IHJldHVybiAtSW5maW5pdHk7XG4gICAgfVxuICAgIHJldHVybiBNYXRoLnJvdW5kKE1hdGgudGFuKChNYXRoLlBJICogYW5nbGUpIC8gMTgwKSAqIDFlMTApIC8gMWUxMDtcbn0iLHIucmVzb2x2ZUltYWdlVVJMPSJjb25zdCByZXNvbHZlSW1hZ2VVUkwgPSBpbWdVUkwgPT4gXG4gICAgdHlwZW9mIGltZ1VSTCA9PT0gJ29iamVjdCcgJiYgaW1nVVJMLnR5cGUgPT09ICdjYW52YXMnXG4gICAgICAgID8gUHJvbWlzZS5yZXNvbHZlKGltZ1VSTC5jYW52YXMpXG4gICAgICAgIDogbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbWFnZSA9IG5ldyBJbWFnZSgpO1xuICAgICAgICAgICAgaW1hZ2UuY3Jvc3NPcmlnaW4gPSBcImFub255bW91c1wiO1xuICAgICAgICAgICAgaW1hZ2Uub25sb2FkID0gcmVzb2x2ZShpbWFnZSk7XG4gICAgICAgICAgICBpbWFnZS5vbmVycm9yID0gcmVzb2x2ZTsgLy8gaWdub3JlIGxvYWRpbmcgZXJyb3JzIGxvbCFcbiAgICAgICAgICAgIGltYWdlLnNyYyA9ICcnK2ltZ1VSTDtcbiAgICAgICAgfSkiLHIucGFyc2VKU09OU2FmZT0iY29uc3QgcGFyc2VKU09OU2FmZSA9IGpzb24gPT4ge1xuICAgIHRyeSByZXR1cm4gSlNPTi5wYXJzZShqc29uKVxuICAgIGNhdGNoIHJldHVybiB7fVxufSIsci5fcmVzb2x2ZUtleVBhdGg9ImNvbnN0IF9yZXNvbHZlS2V5UGF0aCA9IChvYmosIGtleVBhdGgpID0+IHtcbiAgICBjb25zdCBwYXRoID0ga2V5UGF0aC5tYXRjaEFsbCgvKFxcLnxeKSg/PGtleT5bXi5bXSspfFxcWyg/PGxpdGtleT4oXFxcXFxcXXxcXFxcfFteXV0pKylcXF0vZyk7XG4gICAgbGV0IHRvcCA9IG9iajtcbiAgICBsZXQgcHJlO1xuICAgIGxldCB0b2s7XG4gICAgbGV0IGtleTtcbiAgICB3aGlsZSAoISh0b2sgPSBwYXRoLm5leHQoKSkuZG9uZSkge1xuICAgICAgICBrZXkgPSB0b2sudmFsdWUuZ3JvdXBzLmtleSA/PyB0b2sudmFsdWUuZ3JvdXBzLmxpdEtleS5yZXBsYWNlQWxsKCdcXFxcXFxcXCcsICdcXFxcJykucmVwbGFjZUFsbCgnXFxcXF0nLCAnXScpO1xuICAgICAgICBwcmUgPSB0b3A7XG4gICAgICAgIHRvcCA9IHRvcD8uZ2V0Py4oa2V5KSA/PyB0b3A/LltrZXldO1xuICAgICAgICBpZiAodG9wID09PSB1bmRlZmluZWQpIHJldHVybiBbb2JqLCBrZXlQYXRoXTtcbiAgICB9XG4gICAgcmV0dXJuIFtwcmUsIGtleV07XG59IixyLmdldD0iY29uc3QgZ2V0ID0gKG9iaiwga2V5UGF0aCkgPT4ge1xuICAgIGNvbnN0IFtyb290LCBrZXldID0gX3Jlc29sdmVLZXlQYXRoKG9iaiwga2V5UGF0aCk7XG4gICAgcmV0dXJuIHR5cGVvZiByb290ID09PSAndW5kZWZpbmVkJyBcbiAgICAgICAgPyAnJyBcbiAgICAgICAgOiByb290LmdldD8uKGtleSkgPz8gcm9vdFtrZXldO1xufSIsci5zZXQ9ImNvbnN0IHNldCA9IChvYmosIGtleVBhdGgsIHZhbCkgPT4ge1xuICAgIGNvbnN0IFtyb290LCBrZXldID0gX3Jlc29sdmVLZXlQYXRoKG9iaiwga2V5UGF0aCk7XG4gICAgcmV0dXJuIHR5cGVvZiByb290ID09PSAndW5kZWZpbmVkJyBcbiAgICAgICAgPyAnJyBcbiAgICAgICAgOiByb290LnNldD8uKGtleSwgdmFsKSA/PyAocm9vdFtrZXldID0gdmFsKTtcbn0iLHIucmVtb3ZlPSJjb25zdCByZW1vdmUgPSAob2JqLCBrZXlQYXRoKSA9PiB7XG4gICAgY29uc3QgW3Jvb3QsIGtleV0gPSBfcmVzb2x2ZUtleVBhdGgob2JqLCBrZXlQYXRoKTtcbiAgICByZXR1cm4gdHlwZW9mIHJvb3QgPT09ICd1bmRlZmluZWQnIFxuICAgICAgICA/ICcnIFxuICAgICAgICA6IHJvb3QuZGVsZXRlPy4oa2V5KSA/PyByb290LnJlbW92ZT8uKGtleSkgPz8gKGRlbGV0ZSByb290W2tleV0pO1xufSIsci5pbmNsdWRlcz0iY29uc3QgaW5jbHVkZXMgPSAob2JqLCBrZXlQYXRoKSA9PiB7XG4gICAgY29uc3QgW3Jvb3QsIGtleV0gPSBfcmVzb2x2ZUtleVBhdGgob2JqLCBrZXlQYXRoKTtcbiAgICByZXR1cm4gdHlwZW9mIHJvb3QgPT09ICd1bmRlZmluZWQnIFxuICAgICAgICA/ICcnIFxuICAgICAgICA6IHJvb3QuaGFzPy4oa2V5KSA/PyAoa2V5IGluIHJvb3QpO1xufSI7Y29uc3Qgbz1BPT57bi50aHJlYWQ9QSxBLmdlbmVyYXRvci5uZXh0KCl9LHM9W107by5zY29wZWRFdmFsPUE9Pntjb25zdCBlPShBPT57bGV0IGU9ImxldCBzdHVja0NvdW50ZXIgPSAwO1xuY29uc3QgaXNTdHVjayA9ICgpID0+IHtcbiAgICAvLyBUaGUgcmVhbCB0aW1lIGlzIG5vdCBjaGVja2VkIG9uIGV2ZXJ5IGNhbGwgZm9yIHBlcmZvcm1hbmNlLlxuICAgIHN0dWNrQ291bnRlcisrO1xuICAgIGlmIChzdHVja0NvdW50ZXIgPT09IDEwMCkge1xuICAgICAgICBzdHVja0NvdW50ZXIgPSAwO1xuICAgICAgICByZXR1cm4gZ2xvYmFsU3RhdGUudGhyZWFkLnRhcmdldC5ydW50aW1lLnNlcXVlbmNlci50aW1lci50aW1lRWxhcHNlZCgpID4gNTAwO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59O2NvbnN0IGlzTm90QWN0dWFsbHlaZXJvID0gdmFsID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbCAhPT0gJ3N0cmluZycpIHJldHVybiBmYWxzZTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbC5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBjb2RlID0gdmFsLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgIGlmIChjb2RlID09PSA0OCB8fCBjb2RlID09PSA5KSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG59O2NvbnN0IGNvbXBhcmVFcXVhbFNsb3cgPSAodjEsIHYyKSA9PiB7XG4gICAgY29uc3QgbjEgPSArdjE7XG4gICAgaWYgKGlzTmFOKG4xKSB8fCAobjEgPT09IDAgJiYgaXNOb3RBY3R1YWxseVplcm8odjEpKSkgcmV0dXJuICgnJyArIHYxKS50b0xvd2VyQ2FzZSgpID09PSAoJycgKyB2MikudG9Mb3dlckNhc2UoKTtcbiAgICBjb25zdCBuMiA9ICt2MjtcbiAgICBpZiAoaXNOYU4objIpIHx8IChuMiA9PT0gMCAmJiBpc05vdEFjdHVhbGx5WmVybyh2MikpKSByZXR1cm4gKCcnICsgdjEpLnRvTG93ZXJDYXNlKCkgPT09ICgnJyArIHYyKS50b0xvd2VyQ2FzZSgpO1xuICAgIHJldHVybiBuMSA9PT0gbjI7XG59O1xuY29uc3QgY29tcGFyZUVxdWFsID0gKHYxLCB2MikgPT4gKHR5cGVvZiB2MSA9PT0gJ251bWJlcicgJiYgdHlwZW9mIHYyID09PSAnbnVtYmVyJyAmJiAhaXNOYU4odjEpICYmICFpc05hTih2MikgfHwgdjEgPT09IHYyKSA/IHYxID09PSB2MiA6IGNvbXBhcmVFcXVhbFNsb3codjEsIHYyKTtjb25zdCBsaXN0SW5kZXhTbG93ID0gKGluZGV4LCBsZW5ndGgpID0+IHtcbiAgICBpZiAoaW5kZXggPT09ICdsYXN0Jykge1xuICAgICAgICByZXR1cm4gbGVuZ3RoIC0gMTtcbiAgICB9IGVsc2UgaWYgKGluZGV4ID09PSAncmFuZG9tJyB8fCBpbmRleCA9PT0gJ2FueScpIHtcbiAgICAgICAgaWYgKGxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHJldHVybiAoTWF0aC5yYW5kb20oKSAqIGxlbmd0aCkgfCAwO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgaW5kZXggPSAoK2luZGV4IHx8IDApIHwgMDtcbiAgICBpZiAoaW5kZXggPCAxIHx8IGluZGV4ID4gbGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gICAgcmV0dXJuIGluZGV4IC0gMTtcbn07XG5jb25zdCBsaXN0SW5kZXggPSAoaW5kZXgsIGxlbmd0aCkgPT4ge1xuICAgIGlmICh0eXBlb2YgaW5kZXggIT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gbGlzdEluZGV4U2xvdyhpbmRleCwgbGVuZ3RoKTtcbiAgICB9XG4gICAgaW5kZXggPSBpbmRleCB8IDA7XG4gICAgcmV0dXJuIGluZGV4IDwgMSB8fCBpbmRleCA+IGxlbmd0aCA/IC0xIDogaW5kZXggLSAxO1xufTsiO2Zvcihjb25zdCB0IG9mIE9iamVjdC5rZXlzKHIpKUEuaW5jbHVkZXModCkmJihlKz0iIi5jb25jYXQoclt0XSwiOyIpKTtyZXR1cm4gZS5pbmNsdWRlcygiZXhlY3V0ZUluQ29tcGF0aWJpbGl0eUxheWVyIikmJiFlLmluY2x1ZGVzKCJjb25zdCB3YWl0UHJvbWlzZSIpJiYoZT1lLnJlcGxhY2UoImxldCBoYXNSZXN1bWVkRnJvbVByb21pc2UgPSBmYWxzZTsiLCJsZXQgaGFzUmVzdW1lZEZyb21Qcm9taXNlID0gZmFsc2U7XG4iLmNvbmNhdChyLndhaXRQcm9taXNlKSkpLGUuaW5jbHVkZXMoIl9yZXNvbHZlS2V5UGF0aCIpJiYhZS5pbmNsdWRlcygiY29uc3QgX3Jlc29sdmVLZXlQYXRoIikmJihlPXIuX3Jlc29sdmVLZXlQYXRoKyI7IitlKSxlKz0icmV0dXJuICIuY29uY2F0KEEpLGV9KShBKTt0cnl7cmV0dXJuIG5ldyBGdW5jdGlvbigiZ2xvYmFsU3RhdGUiLGUpKG4pfWNhdGNoKEEpe3Rocm93IG4ubG9nLmVycm9yKCJ3YXMgdW5hYmxlIHRvIGNvbXBpbGUgc2NyaXB0IixlKSxjb25zb2xlLmxvZyhBKSxBfX0sby5ydW50aW1lRnVuY3Rpb25zPXIsby5zYXZlR2xvYmFsU3RhdGU9KCk9PntzLnB1c2gobi50aHJlYWQpfSxvLnJlc3RvcmVHbG9iYWxTdGF0ZT0oKT0+e24udGhyZWFkPXMucG9wKCl9LG8uZ2xvYmFsU3RhdGU9bixBLmV4cG9ydHM9b30sZnVuY3Rpb24oQSxlLHQpe0EuZXhwb3J0cz10KDMyNyl9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDQ0KSxpPXQoMjYpLHI9dCgzNyk7dCgxMik7ZnVuY3Rpb24gbyhBKXtBPUF8fHt9LHRoaXMuaGV1cmlzdGljPUEuaGV1cmlzdGljfHxyLm1hbmhhdHRhbix0aGlzLnRyYWNrSnVtcFJlY3Vyc2lvbj1BLnRyYWNrSnVtcFJlY3Vyc2lvbnx8ITF9by5wcm90b3R5cGUuZmluZFBhdGg9ZnVuY3Rpb24oQSxlLHQscixvKXt2YXIgcyxhPXRoaXMub3Blbkxpc3Q9bmV3IG4oKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuZi1lLmZ9KSksQj10aGlzLnN0YXJ0Tm9kZT1vLmdldE5vZGVBdChBLGUpLGM9dGhpcy5lbmROb2RlPW8uZ2V0Tm9kZUF0KHQscik7Zm9yKHRoaXMuZ3JpZD1vLEIuZz0wLEIuZj0wLGEucHVzaChCKSxCLm9wZW5lZD0hMDshYS5lbXB0eSgpOyl7aWYoKHM9YS5wb3AoKSkuY2xvc2VkPSEwLHM9PT1jKXJldHVybiBpLmV4cGFuZFBhdGgoaS5iYWNrdHJhY2UoYykpO3RoaXMuX2lkZW50aWZ5U3VjY2Vzc29ycyhzKX1yZXR1cm5bXX0sby5wcm90b3R5cGUuX2lkZW50aWZ5U3VjY2Vzc29ycz1mdW5jdGlvbihBKXt2YXIgZSx0LG4saSxvLHMsYSxCLGMsZyxFPXRoaXMuZ3JpZCxRPXRoaXMuaGV1cmlzdGljLHU9dGhpcy5vcGVuTGlzdCxsPXRoaXMuZW5kTm9kZS54LGg9dGhpcy5lbmROb2RlLnksdz1BLngsQz1BLnksST1NYXRoLmFicztNYXRoLm1heDtmb3IoaT0wLG89KGU9dGhpcy5fZmluZE5laWdoYm9ycyhBKSkubGVuZ3RoO2k8bzsrK2kpaWYodD1lW2ldLG49dGhpcy5fanVtcCh0WzBdLHRbMV0sdyxDKSl7aWYocz1uWzBdLGE9blsxXSwoZz1FLmdldE5vZGVBdChzLGEpKS5jbG9zZWQpY29udGludWU7Qj1yLm9jdGlsZShJKHMtdyksSShhLUMpKSxjPUEuZytCLCghZy5vcGVuZWR8fGM8Zy5nKSYmKGcuZz1jLGcuaD1nLmh8fFEoSShzLWwpLEkoYS1oKSksZy5mPWcuZytnLmgsZy5wYXJlbnQ9QSxnLm9wZW5lZD91LnVwZGF0ZUl0ZW0oZyk6KHUucHVzaChnKSxnLm9wZW5lZD0hMCkpfX0sQS5leHBvcnRzPW99LGZ1bmN0aW9uKEEsZSx0KXsoZnVuY3Rpb24oZSl7ZnVuY3Rpb24gbihBLGUpe3ZhciB0PU9iamVjdC5rZXlzKEEpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSkuZW51bWVyYWJsZX0pKSksdC5wdXNoLmFwcGx5KHQsbil9cmV0dXJuIHR9ZnVuY3Rpb24gaShBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgdD1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9uKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cihBLGUsdFtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0KSk6bihPYmplY3QodCkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpKX0pKX1yZXR1cm4gQX1mdW5jdGlvbiByKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3Qgbz10KDMpLHM9dCgxKSxhPXQoMTMpLEI9dCgyKSxjPXQoNyksZz10KDgpLEU9QT0+e3RyeXtyZXR1cm4gbmV3IFVSTChBLGxvY2F0aW9uLmhyZWYpfWNhdGNoKEEpe3JldHVybiBudWxsfX07Y2xhc3MgUXtjb25zdHJ1Y3RvcihBKXt0aGlzLmxpbWl0ZWQ9ITA9PT1BfWdldCBBcmd1bWVudFR5cGUoKXtyZXR1cm4gb31nZXQgQmxvY2tUeXBlKCl7cmV0dXJuIHN9Z2V0IFRhcmdldFR5cGUoKXtyZXR1cm4gYX1nZXQgQ2FzdCgpe3JldHVybiBCfWdldCBDbG9uZSgpe3JldHVybiBjfWdldCBDb2xvcigpe3JldHVybiBnfWdldCB2bSgpe3JldHVybiB2bX1nZXQgcmVuZGVyZXIoKXtyZXR1cm4gUS52bS5ydW50aW1lLnJlbmRlcmVyfWFzeW5jIGNhbkZldGNoKEEpe2lmKHRoaXMubGltaXRlZCl7Y29uc3QgZT1FKEEpO3JldHVybiEhZSYmKCJibG9iOiI9PT1lLnByb3RvY29sfHxlLnByb3RvY29sLCEwKX1yZXR1cm4hMH1hc3luYyBjYW5PcGVuV2luZG93KEEpe2lmKHRoaXMubGltaXRlZCl7Y29uc3QgZT1FKEEpO3JldHVybiEhZSYmImphdmFzY3JpcHQ6IiE9PWUucHJvdG9jb2x9cmV0dXJuITB9YXN5bmMgY2FuUmVkaXJlY3QoQSl7aWYodGhpcy5saW1pdGVkKXtjb25zdCBlPUUoQSk7cmV0dXJuISFlJiYiamF2YXNjcmlwdDoiIT09ZS5wcm90b2NvbH1yZXR1cm4hMH1hc3luYyBmZXRjaChBLHQpe2lmKHRoaXMubGltaXRlZCl7Y29uc3Qgbj1BIGluc3RhbmNlb2YgUmVxdWVzdD9BLnVybDpBO2lmKCFhd2FpdCBlLlNjcmF0Y2guY2FuRmV0Y2gobikpdGhyb3cgbmV3IEVycm9yKCJQZXJtaXNzaW9uIHRvIGZldGNoICIuY29uY2F0KG4sIiByZWplY3RlZC4iKSk7cmV0dXJuIGZldGNoKEEsaShpKHt9LHQpLHt9LHtyZWRpcmVjdDoiZXJyb3IifSkpfXJldHVybiBmZXRjaChBLGkoaSh7fSx0KSx7fSx7cmVkaXJlY3Q6ImVycm9yIn0pKX1hc3luYyBvcGVuV2luZG93KEEsdCl7aWYodGhpcy5saW1pdGVkKXtpZighYXdhaXQgZS5TY3JhdGNoLmNhbk9wZW5XaW5kb3coQSkpdGhyb3cgbmV3IEVycm9yKCJQZXJtaXNzaW9uIHRvIG9wZW4gdGFiICIuY29uY2F0KEEsIiByZWplY3RlZC4iKSk7cmV0dXJuIHdpbmRvdy5vcGVuKEEsIl9ibGFuayIsdCl9cmV0dXJuIHdpbmRvdy5vcGVuKEEsIl9ibGFuayIsdCl9YXN5bmMgcmVkaXJlY3QoQSl7aWYodGhpcy5saW1pdGVkKXtpZighYXdhaXQgZS5TY3JhdGNoLmNhblJlZGlyZWN0KEEpKXRocm93IG5ldyBFcnJvcigiUGVybWlzc2lvbiB0byByZWRpcmVjdCB0byAiLmNvbmNhdChBLCIgcmVqZWN0ZWQuIikpO2xvY2F0aW9uLmhyZWY9QX1lbHNlIGxvY2F0aW9uLmhyZWY9QX1nZXQgZXh0ZW5zaW9ucygpe3JldHVybnt1bnNhbmRib3hlZDohMCxyZWdpc3RlcjooKT0+e3Rocm93IG5ldyBFcnJvcigiUmVnaXN0ZXIgY2Fubm90IGJlIHJlcGxpY2F0ZWQgaW4gY3VzdG9tLWV4dC1hcGktdG8tY29yZSIpfX19fUEuZXhwb3J0cz1RfSkuY2FsbCh0aGlzLHQoMTUpKX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg5KSxpPXQoMjQpO2NsYXNzIHJ7Y29uc3RydWN0b3IoQSxlLHQsaSxvLHMsYSl7dGhpcy5pZD1BfHxuKCksdGhpcy50ZXh0PWUsdGhpcy54PXQsdGhpcy55PWksdGhpcy53aWR0aD1NYXRoLm1heChOdW1iZXIobyksci5NSU5fV0lEVEgpLHRoaXMuaGVpZ2h0PU1hdGgubWF4KE51bWJlcihzKSxyLk1JTl9IRUlHSFQpLHRoaXMubWluaW1pemVkPWF8fCExLHRoaXMuYmxvY2tJZD1udWxsfXRvWE1MKCl7cmV0dXJuJzxjb21tZW50IGlkPSInLmNvbmNhdCh0aGlzLmlkLCciIHg9IicpLmNvbmNhdCh0aGlzLngsJyIgeT0iJykuY29uY2F0KHRoaXMueSwnIiB3PSInKS5jb25jYXQodGhpcy53aWR0aCwnIiBoPSInKS5jb25jYXQodGhpcy5oZWlnaHQsJyIgcGlubmVkPSInKS5jb25jYXQobnVsbCE9PXRoaXMuYmxvY2tJZCwnIiBtaW5pbWl6ZWQ9IicpLmNvbmNhdCh0aGlzLm1pbmltaXplZCwnIj4nKS5jb25jYXQoaSh0aGlzLnRleHQpLCI8L2NvbW1lbnQ+Iil9c3RhdGljIGdldCBNSU5fV0lEVEgoKXtyZXR1cm4gMjB9c3RhdGljIGdldCBNSU5fSEVJR0hUKCl7cmV0dXJuIDIwfXN0YXRpYyBnZXQgREVGQVVMVF9XSURUSCgpe3JldHVybiAxMDB9c3RhdGljIGdldCBERUZBVUxUX0hFSUdIVCgpe3JldHVybiAxMDB9fUEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDExKSxpPXQoNSkscj1mdW5jdGlvbihBLGUsdCxuKXtyZXR1cm4gQS5hc3NldElkPWUuYXNzZXRJZCx0LmF1ZGlvRW5naW5lP3QuYXVkaW9FbmdpbmUuZGVjb2RlU291bmRQbGF5ZXIoT2JqZWN0LmFzc2lnbih7fSxBLHtkYXRhOmUuZGF0YX0pKS50aGVuKGU9PntBLnNvdW5kSWQ9ZS5pZDtjb25zdCBpPWUuYnVmZmVyO3JldHVybiBBLnJhdGU9aS5zYW1wbGVSYXRlLEEuc2FtcGxlQ291bnQ9aS5sZW5ndGgsbnVsbCE9PW4mJm4uYWRkU291bmRQbGF5ZXIoZSksdC5pc1BhY2thZ2VkJiYoQS5hc3NldD1udWxsKSxBfSk6KGkud2FybigiTm8gYXVkaW8gZW5naW5lIHByZXNlbnQ7IGNhbm5vdCBsb2FkIHNvdW5kIGFzc2V0OiAiLEEubWQ1KSxQcm9taXNlLnJlc29sdmUoQSkpfSxvPWZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPUEuYXNzZXQsaT1BLmFzc2V0SWQsbz1BLnNhbXBsZUNvdW50LHM9QS5yYXRlLGE9QS5mb3JtYXQsQj1BLmRhdGFGb3JtYXQ7cmV0dXJuIEEuYXNzZXRJZD1lLnN0b3JhZ2UuZGVmYXVsdEFzc2V0SWQuU291bmQsQS5hc3NldD1lLnN0b3JhZ2UuZ2V0KEEuYXNzZXRJZCksQS5tZDU9IiIuY29uY2F0KEEuYXNzZXRJZCwiLiIpLmNvbmNhdChBLmFzc2V0LmRhdGFGb3JtYXQpLHIoQSxBLmFzc2V0LGUsdCkudGhlbihBPT4oQS5icm9rZW49e30sQS5icm9rZW4uYXNzZXRJZD1pLEEuYnJva2VuLm1kNT0iIi5jb25jYXQoaSwiLiIpLmNvbmNhdChCKSxBLmJyb2tlbi5hc3NldD1uLEEuYnJva2VuLnNhbXBsZUNvdW50PW8sQS5icm9rZW4ucmF0ZT1zLEEuYnJva2VuLmZvcm1hdD1hLEEuYnJva2VuLmRhdGFGb3JtYXQ9QixBKSl9O0EuZXhwb3J0cz17bG9hZFNvdW5kOmZ1bmN0aW9uKEEsZSx0KXtpZighZS5zdG9yYWdlKXJldHVybiBpLndhcm4oIk5vIHN0b3JhZ2UgbW9kdWxlIHByZXNlbnQ7IGNhbm5vdCBsb2FkIHNvdW5kIGFzc2V0OiAiLEEubWQ1KSxQcm9taXNlLnJlc29sdmUoQSk7Y29uc3Qgcz1uLnNwbGl0Rmlyc3QoQS5tZDUsIi4iKSxhPXNbMF0sQj1zWzFdLnRvTG93ZXJDYXNlKCk7cmV0dXJuIEEuZGF0YUZvcm1hdD1CLChBLmFzc2V0JiZQcm9taXNlLnJlc29sdmUoQS5hc3NldCl8fGUuc3RvcmFnZS5sb2FkKGUuc3RvcmFnZS5Bc3NldFR5cGUuU291bmQsYSxCKSkudGhlbihuPT4oQS5hc3NldD1uLG4/cihBLG4sZSx0KTooaS53YXJuKCJGYWlsZWQgdG8gZmluZCBzb3VuZCBkYXRhOiAiLEEubWQ1KSxvKEEsZSx0KSkpKS5jYXRjaChuPT4oaS53YXJuKCJGYWlsZWQgdG8gbG9hZCBzb3VuZDogIi5jb25jYXQoQS5tZDUsIiB3aXRoIGVycm9yOiAiKS5jb25jYXQobikpLG8oQSxlLHQpKSl9LGxvYWRTb3VuZEZyb21Bc3NldDpyfX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxMSksaT10KDUpLHI9dCg2Nykse2xvYWRTdmdTdHJpbmc6byxzZXJpYWxpemVTdmdUb1N0cmluZzpzfT10KDMxKSx7cGFyc2VWZWN0b3JNZXRhZGF0YTphfT10KDEwOCksQj1mdW5jdGlvbihBLGUsdCxuKXtyZXR1cm4gbmV3IFByb21pc2UoaT0+e2xldCByPUEuYXNzZXQuZGVjb2RlVGV4dCgpO2lmKHZvaWQgMD09PXQpe2NvbnN0IGU9YShyKTtlJiYodD1lLEEucm90YXRpb25DZW50ZXJYPXRbMF0sQS5yb3RhdGlvbkNlbnRlclk9dFsxXSl9aWYobiYmMj09PW4pe2NvbnN0IHQ9cyhvKHIsITApKTtpZihyIT09dCl7cj10O2NvbnN0IG49ZS5zdG9yYWdlO0EuYXNzZXQuZW5jb2RlVGV4dERhdGEodCxuLkRhdGFGb3JtYXQuU1ZHLCEwKSxBLmFzc2V0SWQ9QS5hc3NldC5hc3NldElkLEEubWQ1PSIiLmNvbmNhdChBLmFzc2V0SWQsIi4iKS5jb25jYXQoQS5kYXRhRm9ybWF0KX19QS5za2luSWQ9ZS5yZW5kZXJlci5jcmVhdGVTVkdTa2luKHIsdCksQS5zaXplPWUucmVuZGVyZXIuZ2V0U2tpblNpemUoQS5za2luSWQpLHR8fCh0PWUucmVuZGVyZXIuZ2V0U2tpblJvdGF0aW9uQ2VudGVyKEEuc2tpbklkKSxBLnJvdGF0aW9uQ2VudGVyWD10WzBdLEEucm90YXRpb25DZW50ZXJZPXRbMV0sQS5iaXRtYXBSZXNvbHV0aW9uPTEpLGUuaXNQYWNrYWdlZCYmKEEuYXNzZXQ9bnVsbCksaShBKX0pfSxjPW5ldyBjbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucG9vbD1bXSx0aGlzLmNsZWFyU29vbj1udWxsfWNsZWFyKCl7dGhpcy5jbGVhclNvb258fCh0aGlzLmNsZWFyU29vbj1uZXcgUHJvbWlzZShBPT5zZXRUaW1lb3V0KEEsMWUzKSkudGhlbigoKT0+e3RoaXMucG9vbC5sZW5ndGg9MCx0aGlzLmNsZWFyU29vbj1udWxsfSkpfWNyZWF0ZSgpe3JldHVybiB0aGlzLnBvb2wucG9wKCl8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpfXJlbGVhc2UoQSl7dGhpcy5jbGVhcigpLHRoaXMucG9vbC5wdXNoKEEpfX0sZz1BPT5uZXcgUHJvbWlzZSgoZSx0KT0+e2NvbnN0IG49bmV3IEltYWdlO24ub25sb2FkPWZ1bmN0aW9uKCl7ZShuKSxuLm9ubG9hZD1udWxsLG4ub25lcnJvcj1udWxsfSxuLm9uZXJyb3I9ZnVuY3Rpb24oKXt0KG5ldyBFcnJvcigiQ29zdHVtZSBsb2FkIGZhaWxlZC4gQXNzZXQgY291bGQgbm90IGJlIHJlYWQuIikpLG4ub25sb2FkPW51bGwsbi5vbmVycm9yPW51bGx9LG4uc3JjPUF9KSxFPW5ldyByKGFzeW5jIEE9PntsZXQgZTtmb3IobGV0IHQ9MDt0PDM7dCsrKXRyeXtpZigiZnVuY3Rpb24iPT10eXBlb2YgY3JlYXRlSW1hZ2VCaXRtYXApe2NvbnN0IGU9YXdhaXQgY3JlYXRlSW1hZ2VCaXRtYXAobmV3IEJsb2IoW0EuZGF0YS5idWZmZXJdLHt0eXBlOkEuYXNzZXRUeXBlLmNvbnRlbnRUeXBlfSkpO2lmKCFlKXRocm93IG5ldyBFcnJvcigiY3JlYXRlSW1hZ2VCaXRtYXAgcmVzb2x2ZWQgd2l0aCAiLmNvbmNhdChlKSk7cmV0dXJuIGV9cmV0dXJuIGF3YWl0IGcoQS5lbmNvZGVEYXRhVVJJKCkpfWNhdGNoKEEpe2V8fChlPUEpLGkud2FybihBKSxhd2FpdCBuZXcgUHJvbWlzZShBPT5zZXRUaW1lb3V0KEEsMmUzKk1hdGgucmFuZG9tKCkpKX10aHJvdyBlfSwyNSksUT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIGZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQSYmQS5hc3NldD9lLnYyQml0bWFwQWRhcHRlcj9Qcm9taXNlLmFsbChbQS5hc3NldCxBLnRleHRMYXllckFzc2V0XS5tYXAoQT0+QT9FLmRvKEEpOm51bGwpKS50aGVuKG49PntsZXRbaSxyXT1uO2lmKCFpKXRocm93IG5ldyBFcnJvcigiTG9hZGluZyBiaXRtYXAgY29zdHVtZSBiYXNlIGZhaWxlZC4iKTtjb25zdCBvPTE9PT1BLmJpdG1hcFJlc29sdXRpb24/MjoxO2xldCBzLGE7aWYocil7YT1jLmNyZWF0ZSgpLGEud2lkdGg9aS53aWR0aCxhLmhlaWdodD1pLmhlaWdodDtjb25zdCBBPWEuZ2V0Q29udGV4dCgiMmQiKTtBLmRyYXdJbWFnZShpLDAsMCksQS5kcmF3SW1hZ2UociwwLDApLHM9YX1lbHNlIHM9aTtyZXR1cm4gMSE9PW8mJihzPWUudjJCaXRtYXBBZGFwdGVyLnJlc2l6ZShzLHMud2lkdGgqbyxzLmhlaWdodCpvKSxhJiZjLnJlbGVhc2UoYSkpLHMucmV1c2FibGU9ITEsdCYmKHRbMF09dFswXSpvLHRbMV09dFsxXSpvLEEucm90YXRpb25DZW50ZXJYPXRbMF0sQS5yb3RhdGlvbkNlbnRlclk9dFsxXSksQS5iaXRtYXBSZXNvbHV0aW9uPTIsZGVsZXRlIEEudGV4dExheWVyTUQ1LGRlbGV0ZSBBLnRleHRMYXllckFzc2V0LHtpbWFnZTpzLHJvdGF0aW9uQ2VudGVyOnQsYXNzZXRNYXRjaGVzQmFzZToxPT09byYmIXJ9fSkuZmluYWxseSgoKT0+e2RlbGV0ZSBBLnRleHRMYXllck1ENSxkZWxldGUgQS50ZXh0TGF5ZXJBc3NldH0pOlByb21pc2UucmVqZWN0KCJObyBWMiBCaXRtYXAgYWRhcHRlciBwcmVzZW50LiIpOlByb21pc2UucmVqZWN0KCJDb3N0dW1lIGxvYWQgZmFpbGVkLiBBc3NldHMgd2VyZSBtaXNzaW5nLiIpfShBLGUsdCkudGhlbih0PT4odC5hc3NldE1hdGNoZXNCYXNlfHxmdW5jdGlvbih0KXtpZighZS52MkJpdG1hcEFkYXB0ZXIpcmV0dXJuIFByb21pc2UucmVqZWN0KCJObyBWMiBCaXRtYXAgYWRhcHRlciBwcmVzZW50LiIpO2NvbnN0IG49ZS5zdG9yYWdlO0EuYXNzZXQ9bi5jcmVhdGVBc3NldChuLkFzc2V0VHlwZS5JbWFnZUJpdG1hcCxuLkRhdGFGb3JtYXQuUE5HLGUudjJCaXRtYXBBZGFwdGVyLmNvbnZlcnREYXRhVVJJVG9CaW5hcnkodCksbnVsbCwhMCksQS5kYXRhRm9ybWF0PW4uRGF0YUZvcm1hdC5QTkcsQS5hc3NldElkPUEuYXNzZXQuYXNzZXRJZCxBLm1kNT0iIi5jb25jYXQoQS5hc3NldElkLCIuIikuY29uY2F0KEEuZGF0YUZvcm1hdCl9KChBPT57aWYoQSBpbnN0YW5jZW9mIEhUTUxDYW52YXNFbGVtZW50KXJldHVybiBBLnRvRGF0YVVSTCgpO2NvbnN0IGU9Yy5jcmVhdGUoKTtlLndpZHRoPUEud2lkdGgsZS5oZWlnaHQ9QS5oZWlnaHQ7ZS5nZXRDb250ZXh0KCIyZCIpLmRyYXdJbWFnZShBLDAsMCk7Y29uc3QgdD1lLnRvRGF0YVVSTCgpO3JldHVybiBjLnJlbGVhc2UoZSksdH0pKHQuaW1hZ2UpKSx0KSkudGhlbih0PT57bGV0IG4se2ltYWdlOmkscm90YXRpb25DZW50ZXI6cn09dDtyJiYobj1bclswXS8yLHJbMV0vMl0pLEEuc2tpbklkPWUucmVuZGVyZXIuY3JlYXRlQml0bWFwU2tpbihpLEEuYml0bWFwUmVzb2x1dGlvbixuKTtjb25zdCBvPWUucmVuZGVyZXIuZ2V0U2tpblNpemUoQS5za2luSWQpO3JldHVybiBBLnNpemU9WzIqb1swXSwyKm9bMV1dLHJ8fChyPWUucmVuZGVyZXIuZ2V0U2tpblJvdGF0aW9uQ2VudGVyKEEuc2tpbklkKSxBLnJvdGF0aW9uQ2VudGVyWD0yKnJbMF0sQS5yb3RhdGlvbkNlbnRlclk9MipyWzFdLEEuYml0bWFwUmVzb2x1dGlvbj0yKSxlLmlzUGFja2FnZWQmJihBLmFzc2V0PW51bGwpLEF9KX0sdT1mdW5jdGlvbihBLGUpe2NvbnN0IHQ9QS5hc3NldCxuPUEuYXNzZXRJZCxpPUEucm90YXRpb25DZW50ZXJYLHI9QS5yb3RhdGlvbkNlbnRlclksbz1BLmJpdG1hcFJlc29sdXRpb24scz1BLmRhdGFGb3JtYXQsYT1lLnN0b3JhZ2UuQXNzZXRUeXBlLGM9QS5kYXRhRm9ybWF0PT09YS5JbWFnZVZlY3Rvci5ydW50aW1lRm9ybWF0O0EuYXNzZXRJZD1jP2Uuc3RvcmFnZS5kZWZhdWx0QXNzZXRJZC5JbWFnZVZlY3RvcjplLnN0b3JhZ2UuZGVmYXVsdEFzc2V0SWQuSW1hZ2VCaXRtYXAsQS5hc3NldD1lLnN0b3JhZ2UuZ2V0KEEuYXNzZXRJZCksQS5tZDU9IiIuY29uY2F0KEEuYXNzZXRJZCwiLiIpLmNvbmNhdChBLmFzc2V0LmRhdGFGb3JtYXQpO3JldHVybihjP0IoQSxlKTpRKEEsZSkpLnRoZW4oQT0+KEEuYnJva2VuPXt9LEEuYnJva2VuLmFzc2V0SWQ9bixBLmJyb2tlbi5tZDU9IiIuY29uY2F0KG4sIi4iKS5jb25jYXQocyksQS5icm9rZW4uYXNzZXQ9dCxBLmJyb2tlbi5kYXRhRm9ybWF0PXMsQS5icm9rZW4ucm90YXRpb25DZW50ZXJYPWksQS5icm9rZW4ucm90YXRpb25DZW50ZXJZPXIsQS5icm9rZW4uYml0bWFwUmVzb2x1dGlvbj1vLEEpKX0sbD1mdW5jdGlvbihBLGUsdCl7QS5hc3NldElkPUEuYXNzZXQuYXNzZXRJZDtpZighZS5yZW5kZXJlcilyZXR1cm4gaS53YXJuKCJObyByZW5kZXJpbmcgbW9kdWxlIHByZXNlbnQ7IGNhbm5vdCBsb2FkIGNvc3R1bWU6ICIsQS5uYW1lKSxQcm9taXNlLnJlc29sdmUoQSk7Y29uc3Qgbj1lLnN0b3JhZ2UuQXNzZXRUeXBlO2xldCByO3JldHVybiJudW1iZXIiIT10eXBlb2YgQS5yb3RhdGlvbkNlbnRlclh8fGlzTmFOKEEucm90YXRpb25DZW50ZXJYKXx8Im51bWJlciIhPXR5cGVvZiBBLnJvdGF0aW9uQ2VudGVyWXx8aXNOYU4oQS5yb3RhdGlvbkNlbnRlclkpfHwocj1bQS5yb3RhdGlvbkNlbnRlclgsQS5yb3RhdGlvbkNlbnRlclldKSxBLmFzc2V0LmFzc2V0VHlwZS5ydW50aW1lRm9ybWF0PT09bi5JbWFnZVZlY3Rvci5ydW50aW1lRm9ybWF0P0IoQSxlLHIsdCkuY2F0Y2godD0+KGkud2FybigiRXJyb3IgbG9hZGluZyB2ZWN0b3IgaW1hZ2U6ICIuY29uY2F0KHQpKSx1KEEsZSkpKTpRKEEsZSxyKS5jYXRjaCh0PT4oaS53YXJuKCJFcnJvciBsb2FkaW5nIGJpdG1hcCBpbWFnZTogIi5jb25jYXQodCkpLHUoQSxlKSkpfTtBLmV4cG9ydHM9e2xvYWRDb3N0dW1lOmZ1bmN0aW9uKEEsZSx0LHIpe2NvbnN0IG89bi5zcGxpdEZpcnN0KEEsIi4iKSxzPW9bMF0sYT1vWzFdLnRvTG93ZXJDYXNlKCk7aWYoZS5kYXRhRm9ybWF0PWEsZS5hc3NldClyZXR1cm4gbChlLHQscik7aWYoIXQuc3RvcmFnZSlyZXR1cm4gaS53YXJuKCJObyBzdG9yYWdlIG1vZHVsZSBwcmVzZW50OyBjYW5ub3QgbG9hZCBjb3N0dW1lIGFzc2V0OiAiLEEpLFByb21pc2UucmVzb2x2ZShlKTtpZighdC5zdG9yYWdlLmRlZmF1bHRBc3NldElkKXJldHVybiBpLndhcm4oIk5vIGRlZmF1bHQgYXNzZXRzIGZvdW5kIiksUHJvbWlzZS5yZXNvbHZlKGUpO2NvbnN0IEI9dC5zdG9yYWdlLkFzc2V0VHlwZSxjPSJzdmciPT09YT9CLkltYWdlVmVjdG9yOkIuSW1hZ2VCaXRtYXAsZz10LnN0b3JhZ2UubG9hZChjLHMsYSk7bGV0IEU7cmV0dXJuIEU9ZS50ZXh0TGF5ZXJNRDU/dC5zdG9yYWdlLmxvYWQoQi5JbWFnZUJpdG1hcCxlLnRleHRMYXllck1ENSwicG5nIik6UHJvbWlzZS5yZXNvbHZlKG51bGwpLFByb21pc2UuYWxsKFtnLEVdKS50aGVuKEE9PkFbMF0/KGUuYXNzZXQ9QVswXSxBWzFdJiYoZS50ZXh0TGF5ZXJBc3NldD1BWzFdKSxsKGUsdCxyKSk6dShlLHQpKS5jYXRjaChBPT4oaS53YXJuKCJFcnJvciBsb2FkaW5nIGNvc3R1bWU6ICIsQSksdShlLHQpKSl9LGxvYWRDb3N0dW1lRnJvbUFzc2V0Omx9fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz17SURfTk9ORTotMSxFdmVudHM6e1VzZUhpZ2hRdWFsaXR5UmVuZGVyQ2hhbmdlZDoiVXNlSGlnaFF1YWxpdHlSZW5kZXJDaGFuZ2VkIixBbGxvd1ByaXZhdGVTa2luQWNjZXNzQ2hhbmdlZDoiQWxsb3dQcml2YXRlU2tpbkFjY2Vzc0NoYW5nZWQiLE5hdGl2ZVNpemVDaGFuZ2VkOiJOYXRpdmVTaXplQ2hhbmdlZCJ9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg1Myk7bi5lbmFibGUoKSxBLmV4cG9ydHM9bigic2NyYXRjaC1hdWRpb2VuZ2luZSIpfSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSx0LmQoZSwiZGVlcENsb25lQXR0cmlidXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSx0LmQoZSwiZGVpbnRlcmxlYXZlQXR0cmlidXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gQn0pKSx0LmQoZSwiZGVpbnRlcmxlYXZlR2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiBjfSkpLHQuZChlLCJjb21wdXRlTWlra1RTcGFjZVRhbmdlbnRzIiwoZnVuY3Rpb24oKXtyZXR1cm4gaX0pKSx0LmQoZSwibWVyZ2VHZW9tZXRyaWVzIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKSx0LmQoZSwibWVyZ2VCdWZmZXJHZW9tZXRyaWVzIiwoZnVuY3Rpb24oKXtyZXR1cm4gd30pKSx0LmQoZSwibWVyZ2VBdHRyaWJ1dGVzIiwoZnVuY3Rpb24oKXtyZXR1cm4gb30pKSx0LmQoZSwibWVyZ2VCdWZmZXJBdHRyaWJ1dGVzIiwoZnVuY3Rpb24oKXtyZXR1cm4gQ30pKSx0LmQoZSwiaW50ZXJsZWF2ZUF0dHJpYnV0ZXMiLChmdW5jdGlvbigpe3JldHVybiBhfSkpLHQuZChlLCJlc3RpbWF0ZUJ5dGVzVXNlZCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGd9KSksdC5kKGUsIm1lcmdlVmVydGljZXMiLChmdW5jdGlvbigpe3JldHVybiBFfSkpLHQuZChlLCJ0b1RyaWFuZ2xlc0RyYXdNb2RlIiwoZnVuY3Rpb24oKXtyZXR1cm4gUX0pKSx0LmQoZSwiY29tcHV0ZU1vcnBoZWRBdHRyaWJ1dGVzIiwoZnVuY3Rpb24oKXtyZXR1cm4gdX0pKSx0LmQoZSwibWVyZ2VHcm91cHMiLChmdW5jdGlvbigpe3JldHVybiBsfSkpLHQuZChlLCJ0b0NyZWFzZWROb3JtYWxzIiwoZnVuY3Rpb24oKXtyZXR1cm4gaH0pKTt2YXIgbj10KDApO2Z1bmN0aW9uIGkoQSxlKXtsZXQgdD0hKGFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdKXx8YXJndW1lbnRzWzJdO2lmKCFlfHwhZS5pc1JlYWR5KXRocm93IG5ldyBFcnJvcigiQnVmZmVyR2VvbWV0cnlVdGlsczogSW5pdGlhbGl6ZWQgTWlra1RTcGFjZSBsaWJyYXJ5IHJlcXVpcmVkLiIpO2lmKCFBLmhhc0F0dHJpYnV0ZSgicG9zaXRpb24iKXx8IUEuaGFzQXR0cmlidXRlKCJub3JtYWwiKXx8IUEuaGFzQXR0cmlidXRlKCJ1diIpKXRocm93IG5ldyBFcnJvcignQnVmZmVyR2VvbWV0cnlVdGlsczogVGFuZ2VudHMgcmVxdWlyZSAicG9zaXRpb24iLCAibm9ybWFsIiwgYW5kICJ1diIgYXR0cmlidXRlcy4nKTtmdW5jdGlvbiBpKEEpe2lmKEEubm9ybWFsaXplZHx8QS5pc0ludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlKXtjb25zdCBlPW5ldyBGbG9hdDMyQXJyYXkoQS5jb3VudCpBLml0ZW1TaXplKTtmb3IobGV0IHQ9MCxuPTA7dDxBLmNvdW50O3QrKyllW24rK109QS5nZXRYKHQpLGVbbisrXT1BLmdldFkodCksQS5pdGVtU2l6ZT4yJiYoZVtuKytdPUEuZ2V0Wih0KSk7cmV0dXJuIGV9cmV0dXJuIEEuYXJyYXkgaW5zdGFuY2VvZiBGbG9hdDMyQXJyYXk/QS5hcnJheTpuZXcgRmxvYXQzMkFycmF5KEEuYXJyYXkpfWNvbnN0IHI9QS5pbmRleD9BLnRvTm9uSW5kZXhlZCgpOkEsbz1lLmdlbmVyYXRlVGFuZ2VudHMoaShyLmF0dHJpYnV0ZXMucG9zaXRpb24pLGkoci5hdHRyaWJ1dGVzLm5vcm1hbCksaShyLmF0dHJpYnV0ZXMudXYpKTtpZih0KWZvcihsZXQgQT0zO0E8by5sZW5ndGg7QSs9NClvW0FdKj0tMTtyZXR1cm4gci5zZXRBdHRyaWJ1dGUoInRhbmdlbnQiLG5ldyBuLkJ1ZmZlckF0dHJpYnV0ZShvLDQpKSxBIT09ciYmQS5jb3B5KHIpLEF9ZnVuY3Rpb24gcihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSYmYXJndW1lbnRzWzFdO2NvbnN0IHQ9bnVsbCE9PUFbMF0uaW5kZXgsaT1uZXcgU2V0KE9iamVjdC5rZXlzKEFbMF0uYXR0cmlidXRlcykpLHI9bmV3IFNldChPYmplY3Qua2V5cyhBWzBdLm1vcnBoQXR0cmlidXRlcykpLHM9e30sYT17fSxCPUFbMF0ubW9ycGhUYXJnZXRzUmVsYXRpdmUsYz1uZXcgbi5CdWZmZXJHZW9tZXRyeTtsZXQgZz0wO2ZvcihsZXQgbj0wO248QS5sZW5ndGg7KytuKXtjb25zdCBvPUFbbl07bGV0IEU9MDtpZih0IT09KG51bGwhPT1vLmluZGV4KSlyZXR1cm4gY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlsczogLm1lcmdlR2VvbWV0cmllcygpIGZhaWxlZCB3aXRoIGdlb21ldHJ5IGF0IGluZGV4ICIrbisiLiBBbGwgZ2VvbWV0cmllcyBtdXN0IGhhdmUgY29tcGF0aWJsZSBhdHRyaWJ1dGVzOyBtYWtlIHN1cmUgaW5kZXggYXR0cmlidXRlIGV4aXN0cyBhbW9uZyBhbGwgZ2VvbWV0cmllcywgb3IgaW4gbm9uZSBvZiB0aGVtLiIpLG51bGw7Zm9yKGNvbnN0IEEgaW4gby5hdHRyaWJ1dGVzKXtpZighaS5oYXMoQSkpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIlRIUkVFLkJ1ZmZlckdlb21ldHJ5VXRpbHM6IC5tZXJnZUdlb21ldHJpZXMoKSBmYWlsZWQgd2l0aCBnZW9tZXRyeSBhdCBpbmRleCAiK24rJy4gQWxsIGdlb21ldHJpZXMgbXVzdCBoYXZlIGNvbXBhdGlibGUgYXR0cmlidXRlczsgbWFrZSBzdXJlICInK0ErJyIgYXR0cmlidXRlIGV4aXN0cyBhbW9uZyBhbGwgZ2VvbWV0cmllcywgb3IgaW4gbm9uZSBvZiB0aGVtLicpLG51bGw7dm9pZCAwPT09c1tBXSYmKHNbQV09W10pLHNbQV0ucHVzaChvLmF0dHJpYnV0ZXNbQV0pLEUrK31pZihFIT09aS5zaXplKXJldHVybiBjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzOiAubWVyZ2VHZW9tZXRyaWVzKCkgZmFpbGVkIHdpdGggZ2VvbWV0cnkgYXQgaW5kZXggIituKyIuIE1ha2Ugc3VyZSBhbGwgZ2VvbWV0cmllcyBoYXZlIHRoZSBzYW1lIG51bWJlciBvZiBhdHRyaWJ1dGVzLiIpLG51bGw7aWYoQiE9PW8ubW9ycGhUYXJnZXRzUmVsYXRpdmUpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIlRIUkVFLkJ1ZmZlckdlb21ldHJ5VXRpbHM6IC5tZXJnZUdlb21ldHJpZXMoKSBmYWlsZWQgd2l0aCBnZW9tZXRyeSBhdCBpbmRleCAiK24rIi4gLm1vcnBoVGFyZ2V0c1JlbGF0aXZlIG11c3QgYmUgY29uc2lzdGVudCB0aHJvdWdob3V0IGFsbCBnZW9tZXRyaWVzLiIpLG51bGw7Zm9yKGNvbnN0IEEgaW4gby5tb3JwaEF0dHJpYnV0ZXMpe2lmKCFyLmhhcyhBKSlyZXR1cm4gY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlsczogLm1lcmdlR2VvbWV0cmllcygpIGZhaWxlZCB3aXRoIGdlb21ldHJ5IGF0IGluZGV4ICIrbisiLiAgLm1vcnBoQXR0cmlidXRlcyBtdXN0IGJlIGNvbnNpc3RlbnQgdGhyb3VnaG91dCBhbGwgZ2VvbWV0cmllcy4iKSxudWxsO3ZvaWQgMD09PWFbQV0mJihhW0FdPVtdKSxhW0FdLnB1c2goby5tb3JwaEF0dHJpYnV0ZXNbQV0pfWlmKGUpe2xldCBBO2lmKHQpQT1vLmluZGV4LmNvdW50O2Vsc2V7aWYodm9pZCAwPT09by5hdHRyaWJ1dGVzLnBvc2l0aW9uKXJldHVybiBjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzOiAubWVyZ2VHZW9tZXRyaWVzKCkgZmFpbGVkIHdpdGggZ2VvbWV0cnkgYXQgaW5kZXggIituKyIuIFRoZSBnZW9tZXRyeSBtdXN0IGhhdmUgZWl0aGVyIGFuIGluZGV4IG9yIGEgcG9zaXRpb24gYXR0cmlidXRlIiksbnVsbDtBPW8uYXR0cmlidXRlcy5wb3NpdGlvbi5jb3VudH1jLmFkZEdyb3VwKGcsQSxuKSxnKz1BfX1pZih0KXtsZXQgZT0wO2NvbnN0IHQ9W107Zm9yKGxldCBuPTA7bjxBLmxlbmd0aDsrK24pe2NvbnN0IGk9QVtuXS5pbmRleDtmb3IobGV0IEE9MDtBPGkuY291bnQ7KytBKXQucHVzaChpLmdldFgoQSkrZSk7ZSs9QVtuXS5hdHRyaWJ1dGVzLnBvc2l0aW9uLmNvdW50fWMuc2V0SW5kZXgodCl9Zm9yKGNvbnN0IEEgaW4gcyl7Y29uc3QgZT1vKHNbQV0pO2lmKCFlKXJldHVybiBjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzOiAubWVyZ2VHZW9tZXRyaWVzKCkgZmFpbGVkIHdoaWxlIHRyeWluZyB0byBtZXJnZSB0aGUgIitBKyIgYXR0cmlidXRlLiIpLG51bGw7Yy5zZXRBdHRyaWJ1dGUoQSxlKX1mb3IoY29uc3QgQSBpbiBhKXtjb25zdCBlPWFbQV1bMF0ubGVuZ3RoO2lmKDA9PT1lKWJyZWFrO2MubW9ycGhBdHRyaWJ1dGVzPWMubW9ycGhBdHRyaWJ1dGVzfHx7fSxjLm1vcnBoQXR0cmlidXRlc1tBXT1bXTtmb3IobGV0IHQ9MDt0PGU7Kyt0KXtjb25zdCBlPVtdO2ZvcihsZXQgbj0wO248YVtBXS5sZW5ndGg7KytuKWUucHVzaChhW0FdW25dW3RdKTtjb25zdCBuPW8oZSk7aWYoIW4pcmV0dXJuIGNvbnNvbGUuZXJyb3IoIlRIUkVFLkJ1ZmZlckdlb21ldHJ5VXRpbHM6IC5tZXJnZUdlb21ldHJpZXMoKSBmYWlsZWQgd2hpbGUgdHJ5aW5nIHRvIG1lcmdlIHRoZSAiK0ErIiBtb3JwaEF0dHJpYnV0ZS4iKSxudWxsO2MubW9ycGhBdHRyaWJ1dGVzW0FdLnB1c2gobil9fXJldHVybiBjfWZ1bmN0aW9uIG8oQSl7bGV0IGUsdCxpLHI9LTEsbz0wO2ZvcihsZXQgbj0wO248QS5sZW5ndGg7KytuKXtjb25zdCBzPUFbbl07aWYocy5pc0ludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlKXJldHVybiBjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzOiAubWVyZ2VBdHRyaWJ1dGVzKCkgZmFpbGVkLiBJbnRlcmxlYXZlZEJ1ZmZlckF0dHJpYnV0ZXMgYXJlIG5vdCBzdXBwb3J0ZWQuIiksbnVsbDtpZih2b2lkIDA9PT1lJiYoZT1zLmFycmF5LmNvbnN0cnVjdG9yKSxlIT09cy5hcnJheS5jb25zdHJ1Y3RvcilyZXR1cm4gY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlsczogLm1lcmdlQXR0cmlidXRlcygpIGZhaWxlZC4gQnVmZmVyQXR0cmlidXRlLmFycmF5IG11c3QgYmUgb2YgY29uc2lzdGVudCBhcnJheSB0eXBlcyBhY3Jvc3MgbWF0Y2hpbmcgYXR0cmlidXRlcy4iKSxudWxsO2lmKHZvaWQgMD09PXQmJih0PXMuaXRlbVNpemUpLHQhPT1zLml0ZW1TaXplKXJldHVybiBjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzOiAubWVyZ2VBdHRyaWJ1dGVzKCkgZmFpbGVkLiBCdWZmZXJBdHRyaWJ1dGUuaXRlbVNpemUgbXVzdCBiZSBjb25zaXN0ZW50IGFjcm9zcyBtYXRjaGluZyBhdHRyaWJ1dGVzLiIpLG51bGw7aWYodm9pZCAwPT09aSYmKGk9cy5ub3JtYWxpemVkKSxpIT09cy5ub3JtYWxpemVkKXJldHVybiBjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzOiAubWVyZ2VBdHRyaWJ1dGVzKCkgZmFpbGVkLiBCdWZmZXJBdHRyaWJ1dGUubm9ybWFsaXplZCBtdXN0IGJlIGNvbnNpc3RlbnQgYWNyb3NzIG1hdGNoaW5nIGF0dHJpYnV0ZXMuIiksbnVsbDtpZigtMT09PXImJihyPXMuZ3B1VHlwZSksciE9PXMuZ3B1VHlwZSlyZXR1cm4gY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlsczogLm1lcmdlQXR0cmlidXRlcygpIGZhaWxlZC4gQnVmZmVyQXR0cmlidXRlLmdwdVR5cGUgbXVzdCBiZSBjb25zaXN0ZW50IGFjcm9zcyBtYXRjaGluZyBhdHRyaWJ1dGVzLiIpLG51bGw7bys9cy5hcnJheS5sZW5ndGh9Y29uc3Qgcz1uZXcgZShvKTtsZXQgYT0wO2ZvcihsZXQgZT0wO2U8QS5sZW5ndGg7KytlKXMuc2V0KEFbZV0uYXJyYXksYSksYSs9QVtlXS5hcnJheS5sZW5ndGg7Y29uc3QgQj1uZXcgbi5CdWZmZXJBdHRyaWJ1dGUocyx0LGkpO3JldHVybiB2b2lkIDAhPT1yJiYoQi5ncHVUeXBlPXIpLEJ9ZnVuY3Rpb24gcyhBKXtyZXR1cm4gQS5pc0luc3RhbmNlZEludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlfHxBLmlzSW50ZXJsZWF2ZWRCdWZmZXJBdHRyaWJ1dGU/QihBKTpBLmlzSW5zdGFuY2VkQnVmZmVyQXR0cmlidXRlPyhuZXcgbi5JbnN0YW5jZWRCdWZmZXJBdHRyaWJ1dGUpLmNvcHkoQSk6KG5ldyBuLkJ1ZmZlckF0dHJpYnV0ZSkuY29weShBKX1mdW5jdGlvbiBhKEEpe2xldCBlLHQ9MCxpPTA7Zm9yKGxldCBuPTAscj1BLmxlbmd0aDtuPHI7KytuKXtjb25zdCByPUFbbl07aWYodm9pZCAwPT09ZSYmKGU9ci5hcnJheS5jb25zdHJ1Y3RvciksZSE9PXIuYXJyYXkuY29uc3RydWN0b3IpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkF0dHJpYnV0ZUJ1ZmZlcnMgb2YgZGlmZmVyZW50IHR5cGVzIGNhbm5vdCBiZSBpbnRlcmxlYXZlZCIpLG51bGw7dCs9ci5hcnJheS5sZW5ndGgsaSs9ci5pdGVtU2l6ZX1jb25zdCByPW5ldyBuLkludGVybGVhdmVkQnVmZmVyKG5ldyBlKHQpLGkpO2xldCBvPTA7Y29uc3Qgcz1bXSxhPVsiZ2V0WCIsImdldFkiLCJnZXRaIiwiZ2V0VyJdLEI9WyJzZXRYIiwic2V0WSIsInNldFoiLCJzZXRXIl07Zm9yKGxldCBlPTAsdD1BLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PUFbZV0saT10Lml0ZW1TaXplLGM9dC5jb3VudCxnPW5ldyBuLkludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlKHIsaSxvLHQubm9ybWFsaXplZCk7cy5wdXNoKGcpLG8rPWk7Zm9yKGxldCBBPTA7QTxjO0ErKylmb3IobGV0IGU9MDtlPGk7ZSsrKWdbQltlXV0oQSx0W2FbZV1dKEEpKX1yZXR1cm4gc31mdW5jdGlvbiBCKEEpe2NvbnN0IGU9QS5kYXRhLmFycmF5LmNvbnN0cnVjdG9yLHQ9QS5jb3VudCxpPUEuaXRlbVNpemUscj1BLm5vcm1hbGl6ZWQsbz1uZXcgZSh0KmkpO2xldCBzO3M9QS5pc0luc3RhbmNlZEludGVybGVhdmVkQnVmZmVyQXR0cmlidXRlP25ldyBuLkluc3RhbmNlZEJ1ZmZlckF0dHJpYnV0ZShvLGkscixBLm1lc2hQZXJBdHRyaWJ1dGUpOm5ldyBuLkJ1ZmZlckF0dHJpYnV0ZShvLGkscik7Zm9yKGxldCBlPTA7ZTx0O2UrKylzLnNldFgoZSxBLmdldFgoZSkpLGk+PTImJnMuc2V0WShlLEEuZ2V0WShlKSksaT49MyYmcy5zZXRaKGUsQS5nZXRaKGUpKSxpPj00JiZzLnNldFcoZSxBLmdldFcoZSkpO3JldHVybiBzfWZ1bmN0aW9uIGMoQSl7Y29uc3QgZT1BLmF0dHJpYnV0ZXMsdD1BLm1vcnBoVGFyZ2V0cyxuPW5ldyBNYXA7Zm9yKGNvbnN0IEEgaW4gZSl7Y29uc3QgdD1lW0FdO3QuaXNJbnRlcmxlYXZlZEJ1ZmZlckF0dHJpYnV0ZSYmKG4uaGFzKHQpfHxuLnNldCh0LEIodCkpLGVbQV09bi5nZXQodCkpfWZvcihjb25zdCBBIGluIHQpe2NvbnN0IGU9dFtBXTtlLmlzSW50ZXJsZWF2ZWRCdWZmZXJBdHRyaWJ1dGUmJihuLmhhcyhlKXx8bi5zZXQoZSxCKGUpKSx0W0FdPW4uZ2V0KGUpKX19ZnVuY3Rpb24gZyhBKXtsZXQgZT0wO2Zvcihjb25zdCB0IGluIEEuYXR0cmlidXRlcyl7Y29uc3Qgbj1BLmdldEF0dHJpYnV0ZSh0KTtlKz1uLmNvdW50Km4uaXRlbVNpemUqbi5hcnJheS5CWVRFU19QRVJfRUxFTUVOVH1jb25zdCB0PUEuZ2V0SW5kZXgoKTtyZXR1cm4gZSs9dD90LmNvdW50KnQuaXRlbVNpemUqdC5hcnJheS5CWVRFU19QRVJfRUxFTUVOVDowLGV9ZnVuY3Rpb24gRShBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MWUtNDtlPU1hdGgubWF4KGUsTnVtYmVyLkVQU0lMT04pO2NvbnN0IHQ9e30saT1BLmdldEluZGV4KCkscj1BLmdldEF0dHJpYnV0ZSgicG9zaXRpb24iKSxvPWk/aS5jb3VudDpyLmNvdW50O2xldCBzPTA7Y29uc3QgYT1PYmplY3Qua2V5cyhBLmF0dHJpYnV0ZXMpLEI9e30sYz17fSxnPVtdLEU9WyJnZXRYIiwiZ2V0WSIsImdldFoiLCJnZXRXIl0sUT1bInNldFgiLCJzZXRZIiwic2V0WiIsInNldFciXTtmb3IobGV0IGU9MCx0PWEubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9YVtlXSxpPUEuYXR0cmlidXRlc1t0XTtCW3RdPW5ldyBuLkJ1ZmZlckF0dHJpYnV0ZShuZXcgaS5hcnJheS5jb25zdHJ1Y3RvcihpLmNvdW50KmkuaXRlbVNpemUpLGkuaXRlbVNpemUsaS5ub3JtYWxpemVkKTtjb25zdCByPUEubW9ycGhBdHRyaWJ1dGVzW3RdO3ImJihjW3RdPW5ldyBuLkJ1ZmZlckF0dHJpYnV0ZShuZXcgci5hcnJheS5jb25zdHJ1Y3RvcihyLmNvdW50KnIuaXRlbVNpemUpLHIuaXRlbVNpemUsci5ub3JtYWxpemVkKSl9Y29uc3QgdT1NYXRoLmxvZzEwKDEvZSksbD1NYXRoLnBvdygxMCx1KTtmb3IobGV0IGU9MDtlPG87ZSsrKXtjb25zdCBuPWk/aS5nZXRYKGUpOmU7bGV0IHI9IiI7Zm9yKGxldCBlPTAsdD1hLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PWFbZV0saT1BLmdldEF0dHJpYnV0ZSh0KSxvPWkuaXRlbVNpemU7Zm9yKGxldCBBPTA7QTxvO0ErKylyKz0iIi5jb25jYXQofn4oaVtFW0FdXShuKSpsKSwiLCIpfWlmKHIgaW4gdClnLnB1c2godFtyXSk7ZWxzZXtmb3IobGV0IGU9MCx0PWEubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9YVtlXSxpPUEuZ2V0QXR0cmlidXRlKHQpLHI9QS5tb3JwaEF0dHJpYnV0ZXNbdF0sbz1pLml0ZW1TaXplLGc9Qlt0XSx1PWNbdF07Zm9yKGxldCBBPTA7QTxvO0ErKyl7Y29uc3QgZT1FW0FdLHQ9UVtBXTtpZihnW3RdKHMsaVtlXShuKSkscilmb3IobGV0IEE9MCxpPXIubGVuZ3RoO0E8aTtBKyspdVtBXVt0XShzLHJbQV1bZV0obikpfX10W3JdPXMsZy5wdXNoKHMpLHMrK319Y29uc3QgaD1BLmNsb25lKCk7Zm9yKGNvbnN0IGUgaW4gQS5hdHRyaWJ1dGVzKXtjb25zdCBBPUJbZV07aWYoaC5zZXRBdHRyaWJ1dGUoZSxuZXcgbi5CdWZmZXJBdHRyaWJ1dGUoQS5hcnJheS5zbGljZSgwLHMqQS5pdGVtU2l6ZSksQS5pdGVtU2l6ZSxBLm5vcm1hbGl6ZWQpKSxlIGluIGMpZm9yKGxldCBBPTA7QTxjW2VdLmxlbmd0aDtBKyspe2NvbnN0IHQ9Y1tlXVtBXTtoLm1vcnBoQXR0cmlidXRlc1tlXVtBXT1uZXcgbi5CdWZmZXJBdHRyaWJ1dGUodC5hcnJheS5zbGljZSgwLHMqdC5pdGVtU2l6ZSksdC5pdGVtU2l6ZSx0Lm5vcm1hbGl6ZWQpfX1yZXR1cm4gaC5zZXRJbmRleChnKSxofWZ1bmN0aW9uIFEoQSxlKXtpZihlPT09bi5UcmlhbmdsZXNEcmF3TW9kZSlyZXR1cm4gY29uc29sZS53YXJuKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzLnRvVHJpYW5nbGVzRHJhd01vZGUoKTogR2VvbWV0cnkgYWxyZWFkeSBkZWZpbmVkIGFzIHRyaWFuZ2xlcy4iKSxBO2lmKGU9PT1uLlRyaWFuZ2xlRmFuRHJhd01vZGV8fGU9PT1uLlRyaWFuZ2xlU3RyaXBEcmF3TW9kZSl7bGV0IHQ9QS5nZXRJbmRleCgpO2lmKG51bGw9PT10KXtjb25zdCBlPVtdLG49QS5nZXRBdHRyaWJ1dGUoInBvc2l0aW9uIik7aWYodm9pZCAwPT09bilyZXR1cm4gY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlscy50b1RyaWFuZ2xlc0RyYXdNb2RlKCk6IFVuZGVmaW5lZCBwb3NpdGlvbiBhdHRyaWJ1dGUuIFByb2Nlc3Npbmcgbm90IHBvc3NpYmxlLiIpLEE7Zm9yKGxldCBBPTA7QTxuLmNvdW50O0ErKyllLnB1c2goQSk7QS5zZXRJbmRleChlKSx0PUEuZ2V0SW5kZXgoKX1jb25zdCBpPXQuY291bnQtMixyPVtdO2lmKGU9PT1uLlRyaWFuZ2xlRmFuRHJhd01vZGUpZm9yKGxldCBBPTE7QTw9aTtBKyspci5wdXNoKHQuZ2V0WCgwKSksci5wdXNoKHQuZ2V0WChBKSksci5wdXNoKHQuZ2V0WChBKzEpKTtlbHNlIGZvcihsZXQgQT0wO0E8aTtBKyspQSUyPT0wPyhyLnB1c2godC5nZXRYKEEpKSxyLnB1c2godC5nZXRYKEErMSkpLHIucHVzaCh0LmdldFgoQSsyKSkpOihyLnB1c2godC5nZXRYKEErMikpLHIucHVzaCh0LmdldFgoQSsxKSksci5wdXNoKHQuZ2V0WChBKSkpO3IubGVuZ3RoLzMhPT1pJiZjb25zb2xlLmVycm9yKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzLnRvVHJpYW5nbGVzRHJhd01vZGUoKTogVW5hYmxlIHRvIGdlbmVyYXRlIGNvcnJlY3QgYW1vdW50IG9mIHRyaWFuZ2xlcy4iKTtjb25zdCBvPUEuY2xvbmUoKTtyZXR1cm4gby5zZXRJbmRleChyKSxvLmNsZWFyR3JvdXBzKCksb31yZXR1cm4gY29uc29sZS5lcnJvcigiVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlscy50b1RyaWFuZ2xlc0RyYXdNb2RlKCk6IFVua25vd24gZHJhdyBtb2RlOiIsZSksQX1mdW5jdGlvbiB1KEEpe2NvbnN0IGU9bmV3IG4uVmVjdG9yMyx0PW5ldyBuLlZlY3RvcjMsaT1uZXcgbi5WZWN0b3IzLHI9bmV3IG4uVmVjdG9yMyxvPW5ldyBuLlZlY3RvcjMscz1uZXcgbi5WZWN0b3IzLGE9bmV3IG4uVmVjdG9yMyxCPW5ldyBuLlZlY3RvcjMsYz1uZXcgbi5WZWN0b3IzO2Z1bmN0aW9uIGcoQSxuLGcsRSxRLHUsbCxoKXtlLmZyb21CdWZmZXJBdHRyaWJ1dGUobixRKSx0LmZyb21CdWZmZXJBdHRyaWJ1dGUobix1KSxpLmZyb21CdWZmZXJBdHRyaWJ1dGUobixsKTtjb25zdCB3PUEubW9ycGhUYXJnZXRJbmZsdWVuY2VzO2lmKGcmJncpe2Euc2V0KDAsMCwwKSxCLnNldCgwLDAsMCksYy5zZXQoMCwwLDApO2ZvcihsZXQgQT0wLG49Zy5sZW5ndGg7QTxuO0ErKyl7Y29uc3Qgbj13W0FdLGg9Z1tBXTswIT09biYmKHIuZnJvbUJ1ZmZlckF0dHJpYnV0ZShoLFEpLG8uZnJvbUJ1ZmZlckF0dHJpYnV0ZShoLHUpLHMuZnJvbUJ1ZmZlckF0dHJpYnV0ZShoLGwpLEU/KGEuYWRkU2NhbGVkVmVjdG9yKHIsbiksQi5hZGRTY2FsZWRWZWN0b3IobyxuKSxjLmFkZFNjYWxlZFZlY3RvcihzLG4pKTooYS5hZGRTY2FsZWRWZWN0b3Ioci5zdWIoZSksbiksQi5hZGRTY2FsZWRWZWN0b3Ioby5zdWIodCksbiksYy5hZGRTY2FsZWRWZWN0b3Iocy5zdWIoaSksbikpKX1lLmFkZChhKSx0LmFkZChCKSxpLmFkZChjKX1BLmlzU2tpbm5lZE1lc2gmJihBLmFwcGx5Qm9uZVRyYW5zZm9ybShRLGUpLEEuYXBwbHlCb25lVHJhbnNmb3JtKHUsdCksQS5hcHBseUJvbmVUcmFuc2Zvcm0obCxpKSksaFszKlErMF09ZS54LGhbMypRKzFdPWUueSxoWzMqUSsyXT1lLnosaFszKnUrMF09dC54LGhbMyp1KzFdPXQueSxoWzMqdSsyXT10LnosaFszKmwrMF09aS54LGhbMypsKzFdPWkueSxoWzMqbCsyXT1pLnp9Y29uc3QgRT1BLmdlb21ldHJ5LFE9QS5tYXRlcmlhbDtsZXQgdSxsLGg7Y29uc3Qgdz1FLmluZGV4LEM9RS5hdHRyaWJ1dGVzLnBvc2l0aW9uLEk9RS5tb3JwaEF0dHJpYnV0ZXMucG9zaXRpb24sTT1FLm1vcnBoVGFyZ2V0c1JlbGF0aXZlLGQ9RS5hdHRyaWJ1dGVzLm5vcm1hbCxwPUUubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9uLG09RS5ncm91cHMsRj1FLmRyYXdSYW5nZTtsZXQgRCxZLGYsTixVLHksVDtjb25zdCB4PW5ldyBGbG9hdDMyQXJyYXkoQy5jb3VudCpDLml0ZW1TaXplKSxSPW5ldyBGbG9hdDMyQXJyYXkoZC5jb3VudCpkLml0ZW1TaXplKTtpZihudWxsIT09dylpZihBcnJheS5pc0FycmF5KFEpKWZvcihEPTAsZj1tLmxlbmd0aDtEPGY7RCsrKWZvcihVPW1bRF0seT1NYXRoLm1heChVLnN0YXJ0LEYuc3RhcnQpLFQ9TWF0aC5taW4oVS5zdGFydCtVLmNvdW50LEYuc3RhcnQrRi5jb3VudCksWT15LE49VDtZPE47WSs9Myl1PXcuZ2V0WChZKSxsPXcuZ2V0WChZKzEpLGg9dy5nZXRYKFkrMiksZyhBLEMsSSxNLHUsbCxoLHgpLGcoQSxkLHAsTSx1LGwsaCxSKTtlbHNlIGZvcih5PU1hdGgubWF4KDAsRi5zdGFydCksVD1NYXRoLm1pbih3LmNvdW50LEYuc3RhcnQrRi5jb3VudCksRD15LGY9VDtEPGY7RCs9Myl1PXcuZ2V0WChEKSxsPXcuZ2V0WChEKzEpLGg9dy5nZXRYKEQrMiksZyhBLEMsSSxNLHUsbCxoLHgpLGcoQSxkLHAsTSx1LGwsaCxSKTtlbHNlIGlmKEFycmF5LmlzQXJyYXkoUSkpZm9yKEQ9MCxmPW0ubGVuZ3RoO0Q8ZjtEKyspZm9yKFU9bVtEXSx5PU1hdGgubWF4KFUuc3RhcnQsRi5zdGFydCksVD1NYXRoLm1pbihVLnN0YXJ0K1UuY291bnQsRi5zdGFydCtGLmNvdW50KSxZPXksTj1UO1k8TjtZKz0zKXU9WSxsPVkrMSxoPVkrMixnKEEsQyxJLE0sdSxsLGgseCksZyhBLGQscCxNLHUsbCxoLFIpO2Vsc2UgZm9yKHk9TWF0aC5tYXgoMCxGLnN0YXJ0KSxUPU1hdGgubWluKEMuY291bnQsRi5zdGFydCtGLmNvdW50KSxEPXksZj1UO0Q8ZjtEKz0zKXU9RCxsPUQrMSxoPUQrMixnKEEsQyxJLE0sdSxsLGgseCksZyhBLGQscCxNLHUsbCxoLFIpO3JldHVybntwb3NpdGlvbkF0dHJpYnV0ZTpDLG5vcm1hbEF0dHJpYnV0ZTpkLG1vcnBoZWRQb3NpdGlvbkF0dHJpYnV0ZTpuZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKHgsMyksbW9ycGhlZE5vcm1hbEF0dHJpYnV0ZTpuZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKFIsMyl9fWZ1bmN0aW9uIGwoQSl7aWYoMD09PUEuZ3JvdXBzLmxlbmd0aClyZXR1cm4gY29uc29sZS53YXJuKCJUSFJFRS5CdWZmZXJHZW9tZXRyeVV0aWxzLm1lcmdlR3JvdXBzKCk6IE5vIGdyb3VwcyBhcmUgZGVmaW5lZC4gTm90aGluZyB0byBtZXJnZS4iKSxBO2xldCBlPUEuZ3JvdXBzO2lmKGU9ZS5zb3J0KChBLGUpPT5BLm1hdGVyaWFsSW5kZXghPT1lLm1hdGVyaWFsSW5kZXg/QS5tYXRlcmlhbEluZGV4LWUubWF0ZXJpYWxJbmRleDpBLnN0YXJ0LWUuc3RhcnQpLG51bGw9PT1BLmdldEluZGV4KCkpe2NvbnN0IGU9QS5nZXRBdHRyaWJ1dGUoInBvc2l0aW9uIiksdD1bXTtmb3IobGV0IEE9MDtBPGUuY291bnQ7QSs9Myl0LnB1c2goQSxBKzEsQSsyKTtBLnNldEluZGV4KHQpfWNvbnN0IHQ9QS5nZXRJbmRleCgpLG49W107Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspe2NvbnN0IGk9ZVtBXSxyPWkuc3RhcnQsbz1yK2kuY291bnQ7Zm9yKGxldCBBPXI7QTxvO0ErKyluLnB1c2godC5nZXRYKEEpKX1BLmRpc3Bvc2UoKSxBLnNldEluZGV4KG4pO2xldCBpPTA7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspe2NvbnN0IHQ9ZVtBXTt0LnN0YXJ0PWksaSs9dC5jb3VudH1sZXQgcj1lWzBdO0EuZ3JvdXBzPVtyXTtmb3IobGV0IHQ9MTt0PGUubGVuZ3RoO3QrKyl7Y29uc3Qgbj1lW3RdO3IubWF0ZXJpYWxJbmRleD09PW4ubWF0ZXJpYWxJbmRleD9yLmNvdW50Kz1uLmNvdW50OihyPW4sQS5ncm91cHMucHVzaChyKSl9cmV0dXJuIEF9ZnVuY3Rpb24gaChBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06TWF0aC5QSS8zO2NvbnN0IHQ9TWF0aC5jb3MoZSksaT0xMDAqKDErMWUtMTApLHI9W25ldyBuLlZlY3RvcjMsbmV3IG4uVmVjdG9yMyxuZXcgbi5WZWN0b3IzXSxvPW5ldyBuLlZlY3RvcjMscz1uZXcgbi5WZWN0b3IzLGE9bmV3IG4uVmVjdG9yMyxCPW5ldyBuLlZlY3RvcjM7ZnVuY3Rpb24gYyhBKXtjb25zdCBlPX5+KEEueCppKSx0PX5+KEEueSppKSxuPX5+KEEueippKTtyZXR1cm4iIi5jb25jYXQoZSwiLCIpLmNvbmNhdCh0LCIsIikuY29uY2F0KG4pfWNvbnN0IGc9QS50b05vbkluZGV4ZWQoKSxFPWcuYXR0cmlidXRlcy5wb3NpdGlvbixRPXt9O2ZvcihsZXQgQT0wLGU9RS5jb3VudC8zO0E8ZTtBKyspe2NvbnN0IGU9MypBLHQ9clswXS5mcm9tQnVmZmVyQXR0cmlidXRlKEUsZSswKSxpPXJbMV0uZnJvbUJ1ZmZlckF0dHJpYnV0ZShFLGUrMSksYT1yWzJdLmZyb21CdWZmZXJBdHRyaWJ1dGUoRSxlKzIpO28uc3ViVmVjdG9ycyhhLGkpLHMuc3ViVmVjdG9ycyh0LGkpO2NvbnN0IEI9KG5ldyBuLlZlY3RvcjMpLmNyb3NzVmVjdG9ycyhvLHMpLm5vcm1hbGl6ZSgpO2ZvcihsZXQgQT0wO0E8MztBKyspe2NvbnN0IGU9YyhyW0FdKTtlIGluIFF8fChRW2VdPVtdKSxRW2VdLnB1c2goQil9fWNvbnN0IHU9bmV3IEZsb2F0MzJBcnJheSgzKkUuY291bnQpLGw9bmV3IG4uQnVmZmVyQXR0cmlidXRlKHUsMywhMSk7Zm9yKGxldCBBPTAsZT1FLmNvdW50LzM7QTxlO0ErKyl7Y29uc3QgZT0zKkEsbj1yWzBdLmZyb21CdWZmZXJBdHRyaWJ1dGUoRSxlKzApLGk9clsxXS5mcm9tQnVmZmVyQXR0cmlidXRlKEUsZSsxKSxnPXJbMl0uZnJvbUJ1ZmZlckF0dHJpYnV0ZShFLGUrMik7by5zdWJWZWN0b3JzKGcsaSkscy5zdWJWZWN0b3JzKG4saSksYS5jcm9zc1ZlY3RvcnMobyxzKS5ub3JtYWxpemUoKTtmb3IobGV0IEE9MDtBPDM7QSsrKXtjb25zdCBuPVFbYyhyW0FdKV07Qi5zZXQoMCwwLDApO2ZvcihsZXQgQT0wLGU9bi5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1uW0FdO2EuZG90KGUpPnQmJkIuYWRkKGUpfUIubm9ybWFsaXplKCksbC5zZXRYWVooZStBLEIueCxCLnksQi56KX19cmV0dXJuIGcuc2V0QXR0cmlidXRlKCJub3JtYWwiLGwpLGd9ZnVuY3Rpb24gdyhBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSYmYXJndW1lbnRzWzFdO3JldHVybiBjb25zb2xlLndhcm4oIlRIUkVFLkJ1ZmZlckdlb21ldHJ5VXRpbHM6IG1lcmdlQnVmZmVyR2VvbWV0cmllcygpIGhhcyBiZWVuIHJlbmFtZWQgdG8gbWVyZ2VHZW9tZXRyaWVzKCkuIikscihBLGUpfWZ1bmN0aW9uIEMoQSl7cmV0dXJuIGNvbnNvbGUud2FybigiVEhSRUUuQnVmZmVyR2VvbWV0cnlVdGlsczogbWVyZ2VCdWZmZXJBdHRyaWJ1dGVzKCkgaGFzIGJlZW4gcmVuYW1lZCB0byBtZXJnZUF0dHJpYnV0ZXMoKS4iKSxvKEEpfX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoMTMzKSxpPW4uZW5hYmxlLHI9bi5kaXNhYmxlLG89InVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJi9jaHJvbWUvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLHM9dCgxMzYpO2lmKG4uZGVmYXVsdEJhY2tlbmQ9bz9zLm1pbmlsb2c6cywidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyl7dHJ5e24uZW5hYmxlKEpTT04ucGFyc2Uod2luZG93LmxvY2FsU3RvcmFnZS5taW5pbG9nU2V0dGluZ3MpKX1jYXRjaChBKXt9aWYod2luZG93LmxvY2F0aW9uJiZ3aW5kb3cubG9jYXRpb24uc2VhcmNoKXt2YXIgYT1SZWdFeHAoIls/Jl1taW5pbG9nPShbXiZdKikiKS5leGVjKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO2EmJm4uZW5hYmxlKGRlY29kZVVSSUNvbXBvbmVudChhWzFdKSl9fW4uZW5hYmxlPWZ1bmN0aW9uKCl7aS5jYWxsKG4sITApO3RyeXt3aW5kb3cubG9jYWxTdG9yYWdlLm1pbmlsb2dTZXR0aW5ncz1KU09OLnN0cmluZ2lmeSghMCl9Y2F0Y2goQSl7fXJldHVybiB0aGlzfSxuLmRpc2FibGU9ZnVuY3Rpb24oKXtyLmNhbGwobik7dHJ5e2RlbGV0ZSB3aW5kb3cubG9jYWxTdG9yYWdlLm1pbmlsb2dTZXR0aW5nc31jYXRjaChBKXt9cmV0dXJuIHRoaXN9LChBLmV4cG9ydHM9bikuYmFja2VuZHM9e2FycmF5OnQoMTM5KSxicm93c2VyOm4uZGVmYXVsdEJhY2tlbmQsbG9jYWxTdG9yYWdlOnQoMTQwKSxqUXVlcnk6dCgxNDEpfX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLl9yZXF1ZXN0SUQ9MCx0aGlzLl9vcGVuUmVxdWVzdHM9e319c2VuZFJlbW90ZVJlcXVlc3QoQSxlKXtjb25zdCB0PXRoaXMuX3JlcXVlc3RJRCsrLG49bmV3IFByb21pc2UoKEEsZSk9Pnt0aGlzLl9vcGVuUmVxdWVzdHNbdF09e3Jlc29sdmU6QSxyZWplY3Q6ZX19KTtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoQSxlLHQpLG59c2VuZFJlbW90ZU5vdGlmaWNhdGlvbihBLGUpe3RoaXMuX3NlbmRSZXF1ZXN0KEEsZSl9ZGlkUmVjZWl2ZUNhbGwoKXt0aHJvdyBuZXcgRXJyb3IoIk11c3Qgb3ZlcnJpZGUgZGlkUmVjZWl2ZUNhbGwiKX1fc2VuZE1lc3NhZ2UoKXt0aHJvdyBuZXcgRXJyb3IoIk11c3Qgb3ZlcnJpZGUgX3NlbmRNZXNzYWdlIil9X3NlbmRSZXF1ZXN0KEEsZSx0KXtjb25zdCBuPXtqc29ucnBjOiIyLjAiLG1ldGhvZDpBLHBhcmFtczplfTtudWxsIT09dCYmKG4uaWQ9dCksdGhpcy5fc2VuZE1lc3NhZ2Uobil9X2hhbmRsZU1lc3NhZ2UoQSl7aWYoIjIuMCIhPT1BLmpzb25ycGMpdGhyb3cgbmV3IEVycm9yKCJCYWQgb3IgbWlzc2luZyBKU09OLVJQQyB2ZXJzaW9uIGluIG1lc3NhZ2U6ICIuY29uY2F0KEEpKTtBLmhhc093blByb3BlcnR5KCJtZXRob2QiKT90aGlzLl9oYW5kbGVSZXF1ZXN0KEEpOnRoaXMuX2hhbmRsZVJlc3BvbnNlKEEpfV9zZW5kUmVzcG9uc2UoQSxlLHQpe2NvbnN0IG49e2pzb25ycGM6IjIuMCIsaWQ6QX07dD9uLmVycm9yPXQ6bi5yZXN1bHQ9ZXx8bnVsbCx0aGlzLl9zZW5kTWVzc2FnZShuKX1faGFuZGxlUmVzcG9uc2UoQSl7Y29uc3R7cmVzdWx0OmUsZXJyb3I6dCxpZDpufT1BLGk9dGhpcy5fb3BlblJlcXVlc3RzW25dO2RlbGV0ZSB0aGlzLl9vcGVuUmVxdWVzdHNbbl0saSYmKHQ/aS5yZWplY3QodCk6aS5yZXNvbHZlKGUpKX1faGFuZGxlUmVxdWVzdChBKXtjb25zdHttZXRob2Q6ZSxwYXJhbXM6dCxpZDpufT1BLGk9dGhpcy5kaWRSZWNlaXZlQ2FsbChlLHQpO24mJlByb21pc2UucmVzb2x2ZShpKS50aGVuKEE9Pnt0aGlzLl9zZW5kUmVzcG9uc2UobixBKX0sQT0+e3RoaXMuX3NlbmRSZXNwb25zZShuLG51bGwsQSl9KX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDE4KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5fbWF4VG9rZW5zPUEsdGhpcy5fcmVmaWxsSW50ZXJ2YWw9MWUzL0EsdGhpcy5fY291bnQ9dGhpcy5fbWF4VG9rZW5zLHRoaXMuX3RpbWVyPW5ldyBuLHRoaXMuX3RpbWVyLnN0YXJ0KCksdGhpcy5fbGFzdFVwZGF0ZVRpbWU9dGhpcy5fdGltZXIudGltZUVsYXBzZWQoKX1va2F5VG9TZW5kKCl7Y29uc3QgQT10aGlzLl90aW1lci50aW1lRWxhcHNlZCgpLGU9QS10aGlzLl9sYXN0VXBkYXRlVGltZSx0PU1hdGguZmxvb3IoZS90aGlzLl9yZWZpbGxJbnRlcnZhbCk7cmV0dXJuIHQ+MCYmKHRoaXMuX2xhc3RVcGRhdGVUaW1lPUEpLHRoaXMuX2NvdW50PU1hdGgubWluKHRoaXMuX21heFRva2Vucyx0aGlzLl9jb3VudCt0KSx0aGlzLl9jb3VudD4wJiYodGhpcy5fY291bnQtLSwhMCl9fX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9KEEsZSx0KT0+e2xldCBuPW51bGw7Y29uc3QgaT13aW5kb3cuQWJvcnRDb250cm9sbGVyP25ldyB3aW5kb3cuQWJvcnRDb250cm9sbGVyOm51bGwscj1pP2kuc2lnbmFsOm51bGw7cmV0dXJuIFByb21pc2UucmFjZShbZmV0Y2goQSxPYmplY3QuYXNzaWduKHtzaWduYWw6cn0sZSkpLnRoZW4oQT0+KGNsZWFyVGltZW91dChuKSxBKSksbmV3IFByb21pc2UoKEEsZSk9PntuPXNldFRpbWVvdXQoKCk9PntpJiZpLmFib3J0KCksZShuZXcgRXJyb3IoIkZldGNoIHRpbWVkIG91dCBhZnRlciAiLmNvbmNhdCh0LCIgbXMiKSkpfSx0KX0pXSl9fSxmdW5jdGlvbihBLGUsdCl7Y29uc3R7UmVjb3JkOm59PXQoMzQpLGk9bih7aWQ6bnVsbCxzcHJpdGVOYW1lOm51bGwsdGFyZ2V0SWQ6bnVsbCxvcGNvZGU6bnVsbCx2YWx1ZTpudWxsLHBhcmFtczpudWxsLG1vZGU6ImRlZmF1bHQiLHNsaWRlck1pbjowLHNsaWRlck1heDoxMDAsaXNEaXNjcmV0ZTohMCx4Om51bGwseTpudWxsLHdpZHRoOjAsaGVpZ2h0OjAsdmlzaWJsZTohMCx2YXJpYWJsZUlkOm51bGwsdmFyaWFibGVUeXBlOm51bGx9KTtBLmV4cG9ydHM9aX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCgyKSxzPXQoMTEpLGE9dCgxKSxCPSh0KDk2KSx0KDU5KSksYz0odCgxOSksdCg4KSx0KDUpKSxnPXQoNykse0ludGVybWVkaWF0ZVNjcmlwdDpFLEludGVybWVkaWF0ZVJlcHJlc2VudGF0aW9uOlF9PXQoOTcpLHU9dCgyMjEpLGw9KEEsZSk9Pih7c2NvcGU6QSxpZDplLmlkLG5hbWU6ZS5uYW1lLGlzQ2xvdWQ6ZS5pc0Nsb3VkfSksaD0oQSxlKT0+ZT8iVyIuY29uY2F0KEEpOiJaIi5jb25jYXQoQSksdz1BPT5BLnN1YnN0cmluZygxKTtjbGFzcyBDe2NvbnN0cnVjdG9yKEEpe3RoaXMudGhyZWFkPUEsdGhpcy50YXJnZXQ9QS50YXJnZXQsdGhpcy5ibG9ja3M9QS5ibG9ja0NvbnRhaW5lcix0aGlzLnJ1bnRpbWU9dGhpcy50YXJnZXQucnVudGltZSx0aGlzLnN0YWdlPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLHRoaXMudXRpbD1uZXcgQih0aGlzLnJ1bnRpbWUuc2VxdWVuY2VyLHRoaXMudGhyZWFkKSx0aGlzLnNjcmlwdD1uZXcgRSx0aGlzLnNjcmlwdC53YXJwVGltZXI9dGhpcy50YXJnZXQucnVudGltZS5jb21waWxlck9wdGlvbnMud2FycFRpbWVyLHRoaXMuc2NyaXB0LmlzT3B0aW1pemVkPXRoaXMudGFyZ2V0LnJ1bnRpbWUucnVudGltZU9wdGlvbnMuZGFuZ2Vyb3VzT3B0aW1pemF0aW9ucyx0aGlzLnNjcmlwdC5vcHRpbWl6YXRpb25VdGlsPXRoaXMudGFyZ2V0LnJ1bnRpbWUub3B0aW1pemF0aW9uVXRpbCx0aGlzLnZhcmlhYmxlQ2FjaGU9e30sdGhpcy51c2VzVGltZXI9ITEsdGhpcy5kZWJ1Zz10aGlzLnJ1bnRpbWUuZGVidWd9c3RhdGljIGFkZENvbXBpbGVySW5mbygpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTtyZXR1cm4gQT1pKHt9LEEpLEEuY29tcGlsZXJJbmZvP0EuY29tcGlsZXJJbmZvPWkoaSh7fSxBLmNvbXBpbGVySW5mbyksZSk6QS5jb21waWxlckluZm89ZSxBfXNldFByb2NlZHVyZVZhcmlhbnQoQSl7Y29uc3QgZT13KEEpO3RoaXMuc2NyaXB0LnByb2NlZHVyZVZhcmlhbnQ9QSx0aGlzLnNjcmlwdC5wcm9jZWR1cmVDb2RlPWUsdGhpcy5zY3JpcHQuaXNQcm9jZWR1cmU9ITAsdGhpcy5zY3JpcHQueWllbGRzPSExO2NvbnN0IHQ9dGhpcy5ibG9ja3MuZ2V0UHJvY2VkdXJlUGFyYW1OYW1lc0lkc0FuZERlZmF1bHRzKGUpO2lmKG51bGw9PT10KXRocm93IG5ldyBFcnJvcigiSVI6IGNhbm5vdCBmaW5kIHByb2NlZHVyZTogIi5jb25jYXQoQSkpO2NvbnN0W24saSxyXT10O3RoaXMuc2NyaXB0LmFyZ3VtZW50cz1ufWVuYWJsZVdhcnAoKXt0aGlzLnNjcmlwdC5pc1dhcnA9ITB9Z2V0QmxvY2tCeUlkKEEpe3JldHVybiB0aGlzLmJsb2Nrcy5nZXRCbG9jayhBKXx8dGhpcy5ibG9ja3MucnVudGltZS5mbHlvdXRCbG9ja3MuZ2V0QmxvY2soQSl9Z2V0QmxvY2tJbmZvKEEpe2NvbnN0W2UsdF09cy5zcGxpdEZpcnN0KEEsIl8iKTtpZighZXx8IXQpcmV0dXJuIG51bGw7Y29uc3Qgbj10aGlzLnJ1bnRpbWUuX2Jsb2NrSW5mby5maW5kKEE9PkEuaWQ9PT1lKTtpZighbilyZXR1cm4gbnVsbDtjb25zdCBpPW4uYmxvY2tzLmZpbmQoQT0+QS5pbmZvLm9wY29kZT09PXQpO3JldHVybiBpfHxudWxsfWRlc2NlbmRJbnB1dE9mQmxvY2soQSxlKXtjb25zdCB0PUEuaW5wdXRzW2VdO2lmKCF0KXJldHVybiBjLndhcm4oIklSOiAiLmNvbmNhdChBLm9wY29kZSwiOiBtaXNzaW5nIGlucHV0ICIpLmNvbmNhdChlKSxBKSx7a2luZDoiY29uc3RhbnQiLHZhbHVlOm51bGx9O2NvbnN0IG49dC5ibG9jayxpPXRoaXMuZ2V0QmxvY2tCeUlkKG4pO3JldHVybiBpP3RoaXMuZGVzY2VuZElucHV0KGkpOihjLndhcm4oIklSOiAiLmNvbmNhdChBLm9wY29kZSwiOiBjb3VsZCBub3QgZmluZCBpbnB1dCAiKS5jb25jYXQoZSwiIHdpdGggSUQgIikuY29uY2F0KG4pKSx7a2luZDoiY29uc3RhbnQiLHZhbHVlOm51bGx9KX1kZXNjZW5kSW5wdXQoQSl7Y29uc3QgZT1TdHJpbmcoQS5vcGNvZGUpLnNwbGl0KCJfIilbMF0sdD1TdHJpbmcoQS5vcGNvZGUpLnJlcGxhY2UoZSsiXyIsIiIpO2lmKEkuaGFzRXh0ZW5zaW9uSXIoZSkmJkkuZ2V0RXh0ZW5zaW9uSXIoZSlbdF0pe2NvbnN0IG49SS5nZXRFeHRlbnNpb25JcihlKVt0XTtsZXQgaT1udWxsO3RyeXtpPW4odGhpcyxBKX1jYXRjaChBKXtjLndhcm4oZSsiXyIrdCwiZmFpbGVkIHRvIGNyZWF0ZSBJUiBkYXRhOyIsQSl9aWYoaSYmImlucHV0Ij09PWkua2luZClyZXR1cm4gaS5raW5kPWUrIi4iK3QsaX1zd2l0Y2goQS5vcGNvZGUpe2Nhc2UiY29sb3VyX3BpY2tlciI6cmV0dXJue2tpbmQ6ImNvbnN0YW50Iix2YWx1ZTpBLmZpZWxkcy5DT0xPVVIudmFsdWV9O2Nhc2UibWF0aF9hbmdsZSI6Y2FzZSJtYXRoX2ludGVnZXIiOmNhc2UibWF0aF9udW1iZXIiOmNhc2UibWF0aF9wb3NpdGl2ZV9udW1iZXIiOmNhc2UibWF0aF93aG9sZV9udW1iZXIiOnJldHVybntraW5kOiJjb25zdGFudCIsdmFsdWU6QS5maWVsZHMuTlVNLnZhbHVlfTtjYXNlInRleHQiOnJldHVybntraW5kOiJjb25zdGFudCIsdmFsdWU6QS5maWVsZHMuVEVYVC52YWx1ZX07Y2FzZSJvcGVyYXRvcl9jaGVja2JveEJvb2xlYW4iOmNhc2UiY2hlY2tib3giOnJldHVybntraW5kOiJjb25zdGFudCIsdmFsdWU6IlRSVUUiPT1BLmZpZWxkcy5DSEVDS0JPWC52YWx1ZX07Y2FzZSJwb2x5Z29uIjpjb25zdCBlPVtdO2ZvcihsZXQgdD0xO3Q8PUEubXV0YXRpb24ucG9pbnRzO3QrKyl7Y29uc3Qgbj0ieCIuY29uY2F0KHQpLGk9InkiLmNvbmNhdCh0KTtlLnB1c2goe3g6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsbikseTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSxpKX0pfXJldHVybntraW5kOiJtYXRoLnBvbHlnb24iLHBvaW50czplfTtjYXNlImFyZ3VtZW50X3JlcG9ydGVyX3N0cmluZ19udW1iZXIiOntjb25zdCBlPUEuZmllbGRzLlZBTFVFLnZhbHVlLHQ9dGhpcy5zY3JpcHQuYXJndW1lbnRzLmxhc3RJbmRleE9mKGUpO3JldHVybi0xPT09dCYmImxhc3Qga2V5IHByZXNzZWQiPT09ZS50b0xvd2VyQ2FzZSgpP3traW5kOiJ0dy5sYXN0S2V5UHJlc3NlZCJ9Oi0xPT09dD97a2luZDoiY29uc3RhbnQiLHZhbHVlOjB9OntraW5kOiJhcmdzLnN0cmluZ051bWJlciIsaW5kZXg6dH19Y2FzZSJhcmd1bWVudF9yZXBvcnRlcl9ib29sZWFuIjp7Y29uc3QgZT1BLmZpZWxkcy5WQUxVRS52YWx1ZSx0PXRoaXMuc2NyaXB0LmFyZ3VtZW50cy5sYXN0SW5kZXhPZihlKTtpZigtMT09PXQpe2NvbnN0IEE9ZS50b0xvd2VyQ2FzZSgpO3JldHVybntraW5kOiJjb25zdGFudCIsdmFsdWU6ImlzIGNvbXBpbGVkPyI9PT1BfHwiaXMgcGVuZ3Vpbm1vZD8iPT09QXx8ImlzIHBlbmd1aW5tb2Qgb3IgdHVyYm93YXJwPyI9PT1BfX1yZXR1cm57a2luZDoiYXJncy5ib29sZWFuIixpbmRleDp0fX1jYXNlImNvbnRyb2xfZ2V0X2NvdW50ZXIiOnJldHVybntraW5kOiJjb3VudGVyLmdldCJ9O2Nhc2UiY29udHJvbF9lcnJvciI6cmV0dXJue2tpbmQ6ImNvbnRyb2wuZXJyb3IifTtjYXNlImNvbnRyb2xfaXNfY2xvbmUiOnJldHVybntraW5kOiJjb250cm9sLmlzY2xvbmUifTtjYXNlImRhdGFfdmFyaWFibGUiOnJldHVybntraW5kOiJ2YXIuZ2V0Iix2YXJpYWJsZTp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJWQVJJQUJMRSIsIiIpfTtjYXNlImRhdGFfaXRlbW9mbGlzdCI6cmV0dXJue2tpbmQ6Imxpc3QuZ2V0IixsaXN0OnRoaXMuZGVzY2VuZFZhcmlhYmxlKEEsIkxJU1QiLCJsaXN0IiksaW5kZXg6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIklOREVYIil9O2Nhc2UiZGF0YV9sZW5ndGhvZmxpc3QiOnJldHVybntraW5kOiJsaXN0Lmxlbmd0aCIsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpfTtjYXNlImRhdGFfbGlzdGNvbnRhaW5zaXRlbSI6cmV0dXJue2tpbmQ6Imxpc3QuY29udGFpbnMiLGxpc3Q6dGhpcy5kZXNjZW5kVmFyaWFibGUoQSwiTElTVCIsImxpc3QiKSxpdGVtOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJJVEVNIil9O2Nhc2UiZGF0YV9pdGVtbnVtb2ZsaXN0IjpyZXR1cm57a2luZDoibGlzdC5pbmRleE9mIixsaXN0OnRoaXMuZGVzY2VuZFZhcmlhYmxlKEEsIkxJU1QiLCJsaXN0IiksaXRlbTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiSVRFTSIpfTtjYXNlImRhdGFfYW1vdW50aW5saXN0IjpyZXR1cm57a2luZDoibGlzdC5hbW91bnRPZiIsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpLHZhbHVlOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQUxVRSIpfTtjYXNlImRhdGFfbGlzdGNvbnRlbnRzIjpyZXR1cm57a2luZDoibGlzdC5jb250ZW50cyIsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpfTtjYXNlImRhdGFfZmlsdGVybGlzdGl0ZW0iOnJldHVybntraW5kOiJsaXN0LmZpbHRlcml0ZW0ifTtjYXNlImRhdGFfZmlsdGVybGlzdGluZGV4IjpyZXR1cm57a2luZDoibGlzdC5maWx0ZXJpbmRleCJ9O2Nhc2UiZXZlbnRfYnJvYWRjYXN0X21lbnUiOntjb25zdCBlPUEuZmllbGRzLkJST0FEQ0FTVF9PUFRJT04sdD10aGlzLnRhcmdldC5sb29rdXBCcm9hZGNhc3RNc2coZS5pZCxlLnZhbHVlKTtyZXR1cm57a2luZDoiY29uc3RhbnQiLHZhbHVlOnQ/dC5uYW1lOiIifX1jYXNlInBtRXZlbnRzRXhwYW5zaW9uX2Jyb2FkY2FzdEZ1bmN0aW9uIjpyZXR1cm4gdGhpcy5zY3JpcHQueWllbGRzPSEwLHtraW5kOiJwbUV2ZW50c0V4cGFuc2lvbi5icm9hZGNhc3RGdW5jdGlvbiIsYnJvYWRjYXN0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJCUk9BRENBU1QiKX07Y2FzZSJwbUV2ZW50c0V4cGFuc2lvbl9icm9hZGNhc3RGdW5jdGlvbkFyZ3MiOnJldHVybiB0aGlzLnNjcmlwdC55aWVsZHM9ITAse2tpbmQ6InBtRXZlbnRzRXhwYW5zaW9uLmJyb2FkY2FzdEZ1bmN0aW9uQXJncyIsYnJvYWRjYXN0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJCUk9BRENBU1QiKSxhcmdzOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJBUkdTIil9O2Nhc2UiY29udHJvbF9pbmxpbmVfc3RhY2tfb3V0cHV0IjpyZXR1cm57a2luZDoiY29udHJvbC5pbmxpbmVTdGFja091dHB1dCIsY29kZTp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpfTtjYXNlImxvb2tzX2JhY2tkcm9wbnVtYmVybmFtZSI6cmV0dXJuIm51bWJlciI9PT1BLmZpZWxkcy5OVU1CRVJfTkFNRS52YWx1ZT97a2luZDoibG9va3MuYmFja2Ryb3BOdW1iZXIifTp7a2luZDoibG9va3MuYmFja2Ryb3BOYW1lIn07Y2FzZSJsb29rc19jb3N0dW1lbnVtYmVybmFtZSI6cmV0dXJuIm51bWJlciI9PT1BLmZpZWxkcy5OVU1CRVJfTkFNRS52YWx1ZT97a2luZDoibG9va3MuY29zdHVtZU51bWJlciJ9OntraW5kOiJsb29rcy5jb3N0dW1lTmFtZSJ9O2Nhc2UibG9va3Nfc2l6ZSI6cmV0dXJue2tpbmQ6Imxvb2tzLnNpemUifTtjYXNlImxvb2tzX3RpbnRDb2xvciI6cmV0dXJue2tpbmQ6Imxvb2tzLnRpbnRDb2xvciJ9O2Nhc2UibW90aW9uX2RpcmVjdGlvbiI6cmV0dXJue2tpbmQ6Im1vdGlvbi5kaXJlY3Rpb24ifTtjYXNlIm1vdGlvbl94cG9zaXRpb24iOnJldHVybntraW5kOiJtb3Rpb24ueCJ9O2Nhc2UibW90aW9uX3lwb3NpdGlvbiI6cmV0dXJue2tpbmQ6Im1vdGlvbi55In07Y2FzZSJvcGVyYXRvcl9hZGQiOnJldHVybntraW5kOiJvcC5hZGQiLGxlZnQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTTEiKSxyaWdodDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNMiIpfTtjYXNlIm9wZXJhdG9yX2FuZCI6cmV0dXJue2tpbmQ6Im9wLmFuZCIsbGVmdDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiT1BFUkFORDEiKSxyaWdodDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiT1BFUkFORDIiKX07Y2FzZSJvcGVyYXRvcl9jb250YWlucyI6cmV0dXJue2tpbmQ6Im9wLmNvbnRhaW5zIixzdHJpbmc6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlNUUklORzEiKSxjb250YWluczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiU1RSSU5HMiIpfTtjYXNlIm9wZXJhdG9yX2RpdmlkZSI6cmV0dXJue2tpbmQ6Im9wLmRpdmlkZSIsbGVmdDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNMSIpLHJpZ2h0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJOVU0yIil9O2Nhc2Uib3BlcmF0b3JfcG93ZXIiOnJldHVybntraW5kOiJvcC5wb3dlciIsbGVmdDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNMSIpLHJpZ2h0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJOVU0yIil9O2Nhc2Uib3BlcmF0b3JfZXhwYW5kYWJsZU1hdGgiOntjb25zdCBlPUEubXV0YXRpb24ubWVudXZhbHVlcyx0PU51bWJlcihBLm11dGF0aW9uLmlucHV0Y291bnQpLG49W107Zm9yKGxldCBpPTE7aTw9dDtpKyspe2NvbnN0IHQ9QS5pbnB1dHNbIk5VTSIraV07bnVsbD09dC5ibG9jaz9kZWxldGUgQS5pbnB1dHNbdC5uYW1lXTpuLnB1c2goW3RoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLHQubmFtZSksZVtpLTFdXSl9cmV0dXJue2tpbmQ6Im9wLmV4cGFuZG1hdGgiLG9wZXJhdGlvbnM6bn19Y2FzZSJvcGVyYXRvcl9lcXVhbHMiOnJldHVybntraW5kOiJvcC5lcXVhbHMiLGxlZnQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk9QRVJBTkQxIikscmlnaHQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk9QRVJBTkQyIil9O2Nhc2Uib3BlcmF0b3JfZ3QiOnJldHVybntraW5kOiJvcC5ncmVhdGVyIixsZWZ0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJPUEVSQU5EMSIpLHJpZ2h0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJPUEVSQU5EMiIpfTtjYXNlIm9wZXJhdG9yX2pvaW4iOnJldHVybntraW5kOiJvcC5qb2luIixsZWZ0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJTVFJJTkcxIikscmlnaHQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlNUUklORzIiKX07Y2FzZSJvcGVyYXRvcnNfZXhwYW5kYWJsZWpvaW5pbnB1dHMiOmNhc2Uib3BlcmF0b3JfZXhwYW5kYWJsZWpvaW5pbnB1dHMiOntjb25zdCBlPVtdLHQ9TnVtYmVyKEEubXV0YXRpb24uaW5wdXRjb3VudCk7Zm9yKGxldCBuPTE7bjw9dDtuKyspe2NvbnN0IHQ9QS5pbnB1dHNbIklOUFVUIituXTtudWxsPT10LmJsb2NrP2RlbGV0ZSBBLmlucHV0c1t0Lm5hbWVdOmUucHVzaCh0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSx0Lm5hbWUpKX1yZXR1cm57a2luZDoib3AuZXhwYW5kam9pbiIsc3RyaW5nczplfX1jYXNlIm9wZXJhdG9yX2xlbmd0aCI6cmV0dXJue2tpbmQ6Im9wLmxlbmd0aCIsc3RyaW5nOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJTVFJJTkciKX07Y2FzZSJvcGVyYXRvcl9sZXR0ZXJfb2YiOnJldHVybntraW5kOiJvcC5sZXR0ZXJPZiIsbGV0dGVyOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJMRVRURVIiKSxzdHJpbmc6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlNUUklORyIpfTtjYXNlIm9wZXJhdG9yX2x0IjpyZXR1cm57a2luZDoib3AubGVzcyIsbGVmdDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiT1BFUkFORDEiKSxyaWdodDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiT1BFUkFORDIiKX07Y2FzZSJvcGVyYXRvcl9tYXRob3AiOntjb25zdCBlPXRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJOVU0iKTtzd2l0Y2goQS5maWVsZHMuT1BFUkFUT1IudmFsdWUudG9Mb3dlckNhc2UoKSl7Y2FzZSJhYnMiOnJldHVybntraW5kOiJvcC5hYnMiLHZhbHVlOmV9O2Nhc2UiZmxvb3IiOnJldHVybntraW5kOiJvcC5mbG9vciIsdmFsdWU6ZX07Y2FzZSJjZWlsaW5nIjpyZXR1cm57a2luZDoib3AuY2VpbGluZyIsdmFsdWU6ZX07Y2FzZSJzaWduIjpyZXR1cm57a2luZDoib3Auc2lnbiIsdmFsdWU6ZX07Y2FzZSJzcXJ0IjpyZXR1cm57a2luZDoib3Auc3FydCIsdmFsdWU6ZX07Y2FzZSJzaW4iOnJldHVybntraW5kOiJvcC5zaW4iLHZhbHVlOmV9O2Nhc2UiY29zIjpyZXR1cm57a2luZDoib3AuY29zIix2YWx1ZTplfTtjYXNlInRhbiI6cmV0dXJue2tpbmQ6Im9wLnRhbiIsdmFsdWU6ZX07Y2FzZSJhc2luIjpyZXR1cm57a2luZDoib3AuYXNpbiIsdmFsdWU6ZX07Y2FzZSJhY29zIjpyZXR1cm57a2luZDoib3AuYWNvcyIsdmFsdWU6ZX07Y2FzZSJhdGFuIjpyZXR1cm57a2luZDoib3AuYXRhbiIsdmFsdWU6ZX07Y2FzZSJsbiI6cmV0dXJue2tpbmQ6Im9wLmxuIix2YWx1ZTplfTtjYXNlImxvZyI6cmV0dXJue2tpbmQ6Im9wLmxvZyIsdmFsdWU6ZX07Y2FzZSJsb2cyIjpyZXR1cm57a2luZDoib3AubG9nMiIsdmFsdWU6ZX07Y2FzZSJlIF4iOnJldHVybntraW5kOiJvcC5lXiIsdmFsdWU6ZX07Y2FzZSIxMCBeIjpyZXR1cm57a2luZDoib3AuMTBeIix2YWx1ZTplfTtkZWZhdWx0OnJldHVybntraW5kOiJjb25zdGFudCIsdmFsdWU6MH19fWNhc2Uib3BlcmF0b3JfYWR2bG9nIjpyZXR1cm57a2luZDoib3AuYWR2bG9nIixsZWZ0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJOVU0xIikscmlnaHQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTTIiKX07Y2FzZSJvcGVyYXRvcl9tb2QiOnJldHVybntraW5kOiJvcC5tb2QiLGxlZnQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTTEiKSxyaWdodDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNMiIpfTtjYXNlIm9wZXJhdG9yX211bHRpcGx5IjpyZXR1cm57a2luZDoib3AubXVsdGlwbHkiLGxlZnQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTTEiKSxyaWdodDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNMiIpfTtjYXNlIm9wZXJhdG9yX25vdCI6cmV0dXJue2tpbmQ6Im9wLm5vdCIsb3BlcmFuZDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiT1BFUkFORCIpfTtjYXNlIm9wZXJhdG9yX29yIjpyZXR1cm57a2luZDoib3Aub3IiLGxlZnQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk9QRVJBTkQxIikscmlnaHQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk9QRVJBTkQyIil9O2Nhc2Uib3BlcmF0b3JfcmFuZG9tIjp7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiRlJPTSIpLHQ9dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlRPIik7aWYoImNvbnN0YW50Ij09PWUua2luZCYmImNvbnN0YW50Ij09PXQua2luZCl7Y29uc3QgQT1lLnZhbHVlLG49dC52YWx1ZSxpPW8udG9OdW1iZXIoQSkscj1vLnRvTnVtYmVyKG4pO3JldHVybiBpPT09cj97a2luZDoiY29uc3RhbnQiLHZhbHVlOml9Om8uaXNJbnQoQSkmJm8uaXNJbnQobik/e2tpbmQ6Im9wLnJhbmRvbSIsbG93Omk8PXI/ZTp0LGhpZ2g6aTw9cj90OmUsdXNlSW50czohMCx1c2VGbG9hdHM6ITF9OntraW5kOiJvcC5yYW5kb20iLGxvdzppPD1yP2U6dCxoaWdoOmk8PXI/dDplLHVzZUludHM6ITEsdXNlRmxvYXRzOiEwfX1pZigiY29uc3RhbnQiPT09ZS5raW5kKXtpZighby5pc0ludChvLnRvTnVtYmVyKGUudmFsdWUpKSlyZXR1cm57a2luZDoib3AucmFuZG9tIixsb3c6ZSxoaWdoOnQsdXNlSW50czohMSx1c2VGbG9hdHM6ITB9fWVsc2UgaWYoImNvbnN0YW50Ij09PXQua2luZCYmIW8uaXNJbnQoby50b051bWJlcih0LnZhbHVlKSkpcmV0dXJue2tpbmQ6Im9wLnJhbmRvbSIsbG93OmUsaGlnaDp0LHVzZUludHM6ITEsdXNlRmxvYXRzOiEwfTtyZXR1cm57a2luZDoib3AucmFuZG9tIixsb3c6ZSxoaWdoOnQsdXNlSW50czohMSx1c2VGbG9hdHM6ITF9fWNhc2Uib3BlcmF0b3Jfcm91bmQiOnJldHVybntraW5kOiJvcC5yb3VuZCIsdmFsdWU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTSIpfTtjYXNlIm9wZXJhdG9yX3N1YnRyYWN0IjpyZXR1cm57a2luZDoib3Auc3VidHJhY3QiLGxlZnQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTTEiKSxyaWdodDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNMiIpfTtjYXNlIm9wZXJhdG9yX2V4cGFuZGFibGVCb29sIjpjYXNlIm9wZXJhdG9yX2V4cGFuZGFibGVDb21wYXJlIjp7Y29uc3QgZT1BLm11dGF0aW9uLHQ9ZS5tZW51dmFsdWVzLG49QS5vcGNvZGUuZW5kc1dpdGgoIkNvbXBhcmUiKSxpPUE9Pntzd2l0Y2goQSl7Y2FzZSJuIjpjYXNlImEiOnJldHVybiImJiI7Y2FzZSJOIjpjYXNlIm8iOnJldHVybiJ8fCI7Y2FzZSJYIjpjYXNlIngiOnJldHVybiIhPSI7ZGVmYXVsdDpyZXR1cm4iJiYifX0scj1BPT57c3dpdGNoKEEpe2Nhc2UibCI6cmV0dXJuIjwiO2Nhc2UiTCI6cmV0dXJuIjw9IjtjYXNlIm0iOnJldHVybiI+IjtjYXNlIk0iOnJldHVybiI+PSI7Y2FzZSJlIjpyZXR1cm4iPT0iO2Nhc2UiRSI6cmV0dXJuIj09PSI7Y2FzZSJuIjpyZXR1cm4iIT09IjtkZWZhdWx0OnJldHVybiI+In19LG89W10scz1bXTtmb3IobGV0IGE9MTthPD1wYXJzZUludChlLmlucHV0Y291bnQpO2ErKyl7by5wdXNoKHRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLChuPyJJTlBVVCI6IkJPT0wiKSthKSk7Y29uc3QgZT10W2EtMV07cy5wdXNoKFtuP3IoZSk6aShlKSxlXSl9cmV0dXJuIHNbcy5sZW5ndGgtMV09WyIiLCIiXSx7a2luZDpuPyJvcC5leHBhbmRDb21wYXJlIjoib3AuZXhwYW5kQm9vbCIsaXNPcHRpbWl6ZWQ6InRydWUiPT09ZS5vcHRpbWl6ZSxpc05vcm1hbDohdC5pbmNsdWRlcygibiIpJiYhdC5pbmNsdWRlcygiTiIpJiYhdC5pbmNsdWRlcygiWCIpLGJvb2xzOm8sb3BlcmF0b3JzOnN9fWNhc2Uic2Vuc2luZ19hbnN3ZXIiOnJldHVybntraW5kOiJzZW5zaW5nLmFuc3dlciJ9O2Nhc2Uic2Vuc2luZ19jb2xvcmlzdG91Y2hpbmdjb2xvciI6cmV0dXJue2tpbmQ6InNlbnNpbmcuY29sb3JUb3VjaGluZ0NvbG9yIix0YXJnZXQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNPTE9SMiIpLG1hc2s6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNPTE9SIil9O2Nhc2Uic2Vuc2luZ19jdXJyZW50Ijpzd2l0Y2goQS5maWVsZHMuQ1VSUkVOVE1FTlUudmFsdWUudG9Mb3dlckNhc2UoKSl7Y2FzZSJ5ZWFyIjpyZXR1cm57a2luZDoic2Vuc2luZy55ZWFyIn07Y2FzZSJtb250aCI6cmV0dXJue2tpbmQ6InNlbnNpbmcubW9udGgifTtjYXNlImRhdGUiOnJldHVybntraW5kOiJzZW5zaW5nLmRhdGUifTtjYXNlImRheW9md2VlayI6cmV0dXJue2tpbmQ6InNlbnNpbmcuZGF5b2Z3ZWVrIn07Y2FzZSJob3VyIjpyZXR1cm57a2luZDoic2Vuc2luZy5ob3VyIn07Y2FzZSJtaW51dGUiOnJldHVybntraW5kOiJzZW5zaW5nLm1pbnV0ZSJ9O2Nhc2Uic2Vjb25kIjpyZXR1cm57a2luZDoic2Vuc2luZy5zZWNvbmQifTtjYXNlInRpbWVzdGFtcCI6cmV0dXJue2tpbmQ6InNlbnNpbmcudGltZXN0YW1wIn19cmV0dXJue2tpbmQ6ImNvbnN0YW50Iix2YWx1ZTowfTtjYXNlInNlbnNpbmdfZGF5c3NpbmNlMjAwMCI6cmV0dXJue2tpbmQ6InNlbnNpbmcuZGF5c1NpbmNlMjAwMCJ9O2Nhc2Uic2Vuc2luZ19kaXN0YW5jZXRvIjpyZXR1cm57a2luZDoic2Vuc2luZy5kaXN0YW5jZSIsdGFyZ2V0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJESVNUQU5DRVRPTUVOVSIpfTtjYXNlInNlbnNpbmdfa2V5cHJlc3NlZCI6cmV0dXJue2tpbmQ6ImtleWJvYXJkLnByZXNzZWQiLGtleTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiS0VZX09QVElPTiIpfTtjYXNlInNlbnNpbmdfbW91c2Vkb3duIjpyZXR1cm57a2luZDoibW91c2UuZG93biJ9O2Nhc2Uic2Vuc2luZ19tb3VzZXgiOnJldHVybntraW5kOiJtb3VzZS54In07Y2FzZSJzZW5zaW5nX21vdXNleSI6cmV0dXJue2tpbmQ6Im1vdXNlLnkifTtjYXNlInNlbnNpbmdfb2YiOnJldHVybntraW5kOiJzZW5zaW5nLm9mIixwcm9wZXJ0eTpBLmZpZWxkcy5QUk9QRVJUWS52YWx1ZSxvYmplY3Q6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk9CSkVDVCIpfTtjYXNlInNlbnNpbmdfdGltZXIiOnJldHVybiB0aGlzLnVzZXNUaW1lcj0hMCx7a2luZDoidGltZXIuZ2V0In07Y2FzZSJzZW5zaW5nX3RvdWNoaW5nY29sb3IiOnJldHVybntraW5kOiJzZW5zaW5nLnRvdWNoaW5nQ29sb3IiLGNvbG9yOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJDT0xPUiIpfTtjYXNlInNlbnNpbmdfdG91Y2hpbmdvYmplY3QiOnJldHVybntraW5kOiJzZW5zaW5nLnRvdWNoaW5nIixvYmplY3Q6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlRPVUNISU5HT0JKRUNUTUVOVSIpfTtjYXNlInNlbnNpbmdfdXNlcm5hbWUiOnJldHVybntraW5kOiJzZW5zaW5nLnVzZXJuYW1lIn07Y2FzZSJzZW5zaW5nX2xvZ2dlZGluIjpyZXR1cm57a2luZDoic2Vuc2luZy5sb2dnZWRpbiJ9O2Nhc2Uib3BlcmF0b3JfdHJ1ZUJvb2xlYW4iOnJldHVybntraW5kOiJvcC50cnVlIn07Y2FzZSJvcGVyYXRvcl9mYWxzZUJvb2xlYW4iOnJldHVybntraW5kOiJvcC5mYWxzZSJ9O2Nhc2Uib3BlcmF0b3JfcmFuZG9tQm9vbGVhbiI6cmV0dXJue2tpbmQ6Im9wLnJhbmRib29sIn07Y2FzZSJzb3VuZF9zb3VuZHNfbWVudSI6cmV0dXJue2tpbmQ6ImNvbnN0YW50Iix2YWx1ZTpBLmZpZWxkcy5TT1VORF9NRU5VLnZhbHVlfTtjYXNlImxtc1RlbXBWYXJzMl9nZXRSdW50aW1lVmFyaWFibGUiOnJldHVybntraW5kOiJ0ZW1wVmFycy5nZXQiLHZhcjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVkFSIikscnVudGltZTohMH07Y2FzZSJsbXNUZW1wVmFyczJfZ2V0VGhyZWFkVmFyaWFibGUiOnJldHVybntraW5kOiJ0ZW1wVmFycy5nZXQiLHZhcjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVkFSIiksdGhyZWFkOiEwfTtjYXNlInRlbXBWYXJzX2dldFZhcmlhYmxlIjpyZXR1cm57a2luZDoidGVtcFZhcnMuZ2V0Iix2YXI6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIm5hbWUiKX07Y2FzZSJsbXNUZW1wVmFyczJfcnVudGltZVZhcmlhYmxlRXhpc3RzIjpyZXR1cm57a2luZDoidGVtcFZhcnMuZXhpc3RzIix2YXI6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlZBUiIpLHJ1bnRpbWU6ITB9O2Nhc2UibG1zVGVtcFZhcnMyX3RocmVhZFZhcmlhYmxlRXhpc3RzIjpyZXR1cm57a2luZDoidGVtcFZhcnMuZXhpc3RzIix2YXI6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlZBUiIpLHRocmVhZDohMH07Y2FzZSJ0ZW1wVmFyc192YXJpYWJsZUV4aXN0cyI6cmV0dXJue2tpbmQ6InRlbXBWYXJzLmV4aXN0cyIsdmFyOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJuYW1lIil9O2Nhc2UibG1zVGVtcFZhcnMyX2xpc3RSdW50aW1lVmFyaWFibGVzIjpyZXR1cm57a2luZDoidGVtcFZhcnMuYWxsIixydW50aW1lOiEwfTtjYXNlImxtc1RlbXBWYXJzMl9saXN0VGhyZWFkVmFyaWFibGVzIjpyZXR1cm57a2luZDoidGVtcFZhcnMuYWxsIix0aHJlYWQ6ITB9O2Nhc2UidGVtcFZhcnNfYWxsVmFyaWFibGVzIjpyZXR1cm57a2luZDoidGVtcFZhcnMuYWxsIn07Y2FzZSJwcm9jZWR1cmVzX2NhbGxfcmV0dXJuIjpjYXNlInByb2NlZHVyZXNfY2FsbCI6e2NvbnN0IGU9QS5tdXRhdGlvbi5wcm9jY29kZTtpZigidHc6ZGVidWdnZXI7Ij09PWUpcmV0dXJue2tpbmQ6InR3LmRlYnVnZ2VyIn07Y29uc3QgdD10aGlzLmJsb2Nrcy5nZXRQcm9jZWR1cmVQYXJhbU5hbWVzSWRzQW5kRGVmYXVsdHMoZSk7aWYobnVsbD09PXQpcmV0dXJue2tpbmQ6Im5vb3AifTtjb25zdFtuLGkscl09dDtpZih0aGlzLnJ1bnRpbWUuZ2V0QWRkb25CbG9jayhlKSl7dGhpcy5zY3JpcHQueWllbGRzPSEwO2NvbnN0IHQ9e307Zm9yKGxldCBlPTA7ZTxpLmxlbmd0aDtlKyspe2xldCBvO289QS5pbnB1dHNbaVtlXV0mJkEuaW5wdXRzW2lbZV1dLmJsb2NrP3RoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLGlbZV0pOntraW5kOiJjb25zdGFudCIsdmFsdWU6cltlXX0sdFtuW2VdXT1vfXJldHVybntraW5kOiJhZGRvbnMuY2FsbCIsY29kZTplLGFyZ3VtZW50czp0LGJsb2NrSWQ6QS5pZH19Y29uc3Qgbz10aGlzLmJsb2Nrcy5nZXRQcm9jZWR1cmVEZWZpbml0aW9uKGUpLHM9dGhpcy5ibG9ja3MuZ2V0QmxvY2sobyk7aWYoIXMpcmV0dXJue2tpbmQ6Im5vb3AifTtjb25zdCBhPXRoaXMuYmxvY2tzLmdldEJsb2NrKHMuaW5wdXRzLmN1c3RvbV9ibG9jay5ibG9jayk7bGV0IEI9dGhpcy5zY3JpcHQuaXNXYXJwO2lmKCFCJiZhJiZhLm11dGF0aW9uKXtjb25zdCBBPWEubXV0YXRpb24ud2FycDsiYm9vbGVhbiI9PXR5cGVvZiBBP0I9QToic3RyaW5nIj09dHlwZW9mIEEmJihCPUpTT04ucGFyc2UoQSkpfWNvbnN0IGM9aChlLEIpO3RoaXMuc2NyaXB0LmRlcGVuZGVkUHJvY2VkdXJlcy5pbmNsdWRlcyhjKXx8dGhpcy5zY3JpcHQuZGVwZW5kZWRQcm9jZWR1cmVzLnB1c2goYyksdGhpcy5zY3JpcHQuaXNXYXJwfHxlPT09dGhpcy5zY3JpcHQucHJvY2VkdXJlQ29kZSYmKHRoaXMuc2NyaXB0LnlpZWxkcz0hMCk7Y29uc3QgZz1bXTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoO2UrKyl7bGV0IHQ7dD1BLmlucHV0c1tpW2VdXSYmQS5pbnB1dHNbaVtlXV0uYmxvY2s/aVtlXS5zdGFydHNXaXRoKCJTVUJTVEFDSyIpP3RoaXMuZGVzY2VuZFN1YnN0YWNrKEEsaVtlXSk6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsaVtlXSk6e2tpbmQ6ImNvbnN0YW50Iix2YWx1ZTpyW2VdfSxnLnB1c2godCl9cmV0dXJue2tpbmQ6InByb2NlZHVyZXMuY2FsbCIsY29kZTplLHZhcmlhbnQ6YyxyZXR1cm5zOiEwLGFyZ3VtZW50czpnLHR5cGU6SlNPTi5wYXJzZShBLm11dGF0aW9uLm9wVHlwZXx8JyJzdHJpbmciJyl9fWNhc2UidHdfZ2V0TGFzdEtleVByZXNzZWQiOnJldHVybntraW5kOiJ0dy5sYXN0S2V5UHJlc3NlZCJ9O2Nhc2UiY29udHJvbF9kdWFsYmxvY2siOnJldHVybntraW5kOiJjb250cm9sLmR1YWxCbG9jayJ9O2RlZmF1bHQ6e2lmKHRoaXMucnVudGltZS5nZXRPcGNvZGVGdW5jdGlvbihBLm9wY29kZSkpe2lmKHUub3V0cHV0QmxvY2tzLmluY2x1ZGVzKEEub3Bjb2RlKSlyZXR1cm4gdGhpcy5kZXNjZW5kQ29tcGF0TGF5ZXIoQSk7Y29uc3QgZT10aGlzLmdldEJsb2NrSW5mbyhBLm9wY29kZSk7aWYoZSl7Y29uc3QgdD1lLmluZm8uYmxvY2tUeXBlLG49dGhpcy5kZXNjZW5kQ29tcGF0TGF5ZXIoQSk7aWYobi5ibG9jaz1BLEEubXV0YXRpb24mJihuLm11dGF0aW9uPUEubXV0YXRpb24pLHQ9PT1hLlJFUE9SVEVSfHx0PT09YS5CT09MRUFOKXJldHVybiBufX1jb25zdCBlPU9iamVjdC5rZXlzKEEuaW5wdXRzKSx0PU9iamVjdC5rZXlzKEEuZmllbGRzKTtpZigwPT09ZS5sZW5ndGgmJjE9PT10Lmxlbmd0aClyZXR1cm57a2luZDoiY29uc3RhbnQiLHZhbHVlOkEuZmllbGRzW3RbMF1dLnZhbHVlfTt0aHJvdyBjLndhcm4oIklSOiBVbmtub3duIGlucHV0OiAiLmNvbmNhdChBLm9wY29kZSksQSksbmV3IEVycm9yKCJJUjogVW5rbm93biBpbnB1dDogIi5jb25jYXQoQS5vcGNvZGUpKX19fWRlc2NlbmRTdGFja2VkQmxvY2soQSl7Y29uc3QgZT1TdHJpbmcoQS5vcGNvZGUpLnNwbGl0KCJfIilbMF0sdD1TdHJpbmcoQS5vcGNvZGUpLnJlcGxhY2UoZSsiXyIsIiIpO2lmKEkuaGFzRXh0ZW5zaW9uSXIoZSkmJkkuZ2V0RXh0ZW5zaW9uSXIoZSlbdF0pe2NvbnN0IG49SS5nZXRFeHRlbnNpb25JcihlKVt0XTtsZXQgaT1udWxsO3RyeXtpPW4odGhpcyxBKX1jYXRjaChBKXtjLndhcm4oZSsiXyIrdCwiZmFpbGVkIHRvIGNyZWF0ZSBJUiBkYXRhOyIsQSl9aWYoaSYmInN0YWNrIj09PWkua2luZClyZXR1cm4gaS5raW5kPWUrIi4iK3QsaX1zd2l0Y2goQS5vcGNvZGUpe2Nhc2UieW91cl9tb20iOnJldHVybntraW5kOiJ5b3VyIG1vbSJ9O2Nhc2UiYXJndW1lbnRfcmVwb3J0ZXJfY29tbWFuZCI6e2NvbnN0IGU9QS5maWVsZHMuVkFMVUUudmFsdWUsdD10aGlzLnNjcmlwdC5hcmd1bWVudHMubGFzdEluZGV4T2YoZSk7cmV0dXJuIHRoaXMuc2NyaXB0LnlpZWxkcz0hMCx7a2luZDoiYXJncy5jb21tYW5kIixpbmRleDp0fX1jYXNlImNvbnRyb2xfc3dpdGNoIjpyZXR1cm57a2luZDoiY29udHJvbC5zd2l0Y2giLHRlc3Q6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNPTkRJVElPTiIpLGNvbmRpdGlvbnM6dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKSxkZWZhdWx0OltdfTtjYXNlImNvbnRyb2xfc3dpdGNoX2RlZmF1bHQiOnJldHVybntraW5kOiJjb250cm9sLnN3aXRjaCIsdGVzdDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQ09ORElUSU9OIiksY29uZGl0aW9uczp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSzEiKSxkZWZhdWx0OnRoaXMuZGVzY2VuZFN1YnN0YWNrKEEsIlNVQlNUQUNLMiIpfTtjYXNlImNvbnRyb2xfY2FzZV9uZXh0IjpyZXR1cm57a2luZDoiY29udHJvbC5jYXNlIixjb25kaXRpb246dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNPTkRJVElPTiIpLGNvZGU6dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKSxydW5zTmV4dDohMH07Y2FzZSJjb250cm9sX2Nhc2UiOnJldHVybntraW5kOiJjb250cm9sLmNhc2UiLGNvbmRpdGlvbjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQ09ORElUSU9OIiksY29kZTp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpLHJ1bnNOZXh0OiExfTtjYXNlImNvbnRyb2xfZXhpdENhc2UiOnJldHVybntraW5kOiJjb250cm9sLmV4aXRDYXNlIn07Y2FzZSJjb250cm9sX2V4aXRMb29wIjpyZXR1cm57a2luZDoiY29udHJvbC5leGl0TG9vcCIsaWQ6QS5pZH07Y2FzZSJjb250cm9sX2NvbnRpbnVlTG9vcCI6cmV0dXJue2tpbmQ6ImNvbnRyb2wuY29udGludWVMb29wIixpZDpBLmlkfTtjYXNlImNvbnRyb2xfYWxsX2F0X29uY2UiOnJldHVybntraW5kOiJjb250cm9sLmFsbEF0T25jZSIsY29uZGl0aW9uOntraW5kOiJjb25zdGFudCIsdmFsdWU6ITB9LGNvZGU6dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKX07Y2FzZSJjb250cm9sX2NsZWFyX2NvdW50ZXIiOnJldHVybntraW5kOiJjb3VudGVyLmNsZWFyIn07Y2FzZSJjb250cm9sX2NyZWF0ZV9jbG9uZV9vZiI6cmV0dXJue2tpbmQ6ImNvbnRyb2wuY3JlYXRlQ2xvbmUiLHRhcmdldDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQ0xPTkVfT1BUSU9OIil9O2Nhc2UiY29udHJvbF9kZWxldGVfdGhpc19jbG9uZSI6cmV0dXJuIHRoaXMuc2NyaXB0LnlpZWxkcz0hMCx7a2luZDoiY29udHJvbC5kZWxldGVDbG9uZSJ9O2Nhc2UiY29udHJvbF9mb3JldmVyIjpyZXR1cm4gdGhpcy5hbmFseXplTG9vcCgpLHtraW5kOiJjb250cm9sLndoaWxlIixjb25kaXRpb246e2tpbmQ6ImNvbnN0YW50Iix2YWx1ZTohMH0sZG86dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKX07Y2FzZSJjb250cm9sX2Zvcl9lYWNoIjpyZXR1cm4gdGhpcy5hbmFseXplTG9vcCgpLHtraW5kOiJjb250cm9sLmZvciIsdmFyaWFibGU6dGhpcy5kZXNjZW5kVmFyaWFibGUoQSwiVkFSSUFCTEUiLCIiKSxjb3VudDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVkFMVUUiKSxkbzp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpfTtjYXNlImNvbnRyb2xfaWYiOnJldHVybntraW5kOiJjb250cm9sLmlmIixjb25kaXRpb246dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNPTkRJVElPTiIpLHdoZW5UcnVlOnRoaXMuZGVzY2VuZFN1YnN0YWNrKEEsIlNVQlNUQUNLIiksd2hlbkZhbHNlOltdfTtjYXNlImNvbnRyb2xfaWZfZWxzZSI6cmV0dXJue2tpbmQ6ImNvbnRyb2wuaWYiLGNvbmRpdGlvbjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQ09ORElUSU9OIiksd2hlblRydWU6dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKSx3aGVuRmFsc2U6dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0syIil9O2Nhc2UiY29udHJvbF9leHBhbmRhYmxlSWYiOntjb25zdCBlPU51bWJlcihBLm11dGF0aW9uLmJyYW5jaGVzKSx0PSJ0cnVlIj09PUEubXV0YXRpb25bImVuZHMtaW4tZWxzZSJdLGk9QXJyYXkoZSkuZmlsbChudWxsKTtpZihlPDMmJigxPT09ZXx8dCkpcmV0dXJue2tpbmQ6ImNvbnRyb2wuaWYiLGNvbmRpdGlvbjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQk9PTDEiKSx3aGVuVHJ1ZTp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSzEiKSx3aGVuRmFsc2U6dD90aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSzIiKTpbXX07Zm9yKHZhciBuPTE7bjxlKzE7bisrKXtjb25zdCByPSJTVUJTVEFDSyIrbixvPSJCT09MIituLHM9dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsbyk7bnVsbD09PXMudmFsdWUmJihzLnZhbHVlPSEobiE9PWV8fCF0KSYmbnVsbCksaVtuLTFdPVtzLHRoaXMuZGVzY2VuZFN1YnN0YWNrKEEscildfXJldHVybntraW5kOiJjb250cm9sLmV4cGFuZGFibGVJZiIsYnJhbmNoZXM6aX19Y2FzZSJjb250cm9sX3RyeV9jYXRjaCI6cmV0dXJue2tpbmQ6ImNvbnRyb2wudHJ5Y2F0Y2giLHRyeTp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpLGNhdGNoOnRoaXMuZGVzY2VuZFN1YnN0YWNrKEEsIlNVQlNUQUNLMiIpfTtjYXNlImNvbnRyb2xfdGhyb3dfZXJyb3IiOnJldHVybntraW5kOiJjb250cm9sLnRocm93RXJyb3IiLGVycm9yOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJFUlJPUiIpfTtjYXNlImNvbnRyb2xfaW5jcl9jb3VudGVyIjpyZXR1cm57a2luZDoiY291bnRlci5pbmNyZW1lbnQifTtjYXNlImNvbnRyb2xfZGVjcl9jb3VudGVyIjpyZXR1cm57a2luZDoiY291bnRlci5kZWNyZW1lbnQifTtjYXNlImNvbnRyb2xfc2V0X2NvdW50ZXIiOnJldHVybntraW5kOiJjb3VudGVyLnNldCIsdmFsdWU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlZBTFVFIil9O2Nhc2UiY29udHJvbF9yZXBlYXQiOnJldHVybiB0aGlzLmFuYWx5emVMb29wKCkse2tpbmQ6ImNvbnRyb2wucmVwZWF0Iix0aW1lczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVElNRVMiKSxkbzp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpfTtjYXNlImNvbnRyb2xfcmVwZWF0Rm9yU2Vjb25kcyI6cmV0dXJuIHRoaXMuYW5hbHl6ZUxvb3AoKSx7a2luZDoiY29udHJvbC5yZXBlYXRGb3JTZWNvbmRzIix0aW1lczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVElNRVMiKSxkbzp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpfTtjYXNlImNvbnRyb2xfcmVwZWF0X3VudGlsIjp7dGhpcy5hbmFseXplTG9vcCgpLHRoaXMudXNlc1RpbWVyPSExO2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNPTkRJVElPTiIpLHQ9dGhpcy51c2VzVGltZXI7cmV0dXJuIHQmJih0aGlzLnNjcmlwdC55aWVsZHM9ITApLHtraW5kOiJjb250cm9sLndoaWxlIixjb25kaXRpb246e2tpbmQ6Im9wLm5vdCIsb3BlcmFuZDplfSxkbzp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpLHdhcnBUaW1lcjp0fX1jYXNlImNvbnRyb2xfc3RvcCI6e2NvbnN0IGU9QS5maWVsZHMuU1RPUF9PUFRJT04udmFsdWU7cmV0dXJuImFsbCI9PT1lPyh0aGlzLnNjcmlwdC55aWVsZHM9ITAse2tpbmQ6ImNvbnRyb2wuc3RvcEFsbCJ9KToib3RoZXIgc2NyaXB0cyBpbiBzcHJpdGUiPT09ZXx8Im90aGVyIHNjcmlwdHMgaW4gc3RhZ2UiPT09ZT97a2luZDoiY29udHJvbC5zdG9wT3RoZXJzIn06InRoaXMgc2NyaXB0Ij09PWU/e2tpbmQ6ImNvbnRyb2wuc3RvcFNjcmlwdCJ9OntraW5kOiJub29wIn19Y2FzZSJjb250cm9sX3dhaXQiOnJldHVybiB0aGlzLnNjcmlwdC55aWVsZHM9ITAse2tpbmQ6ImNvbnRyb2wud2FpdCIsc2Vjb25kczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiRFVSQVRJT04iKX07Y2FzZSJjb250cm9sX3dhaXR0aWNrIjpyZXR1cm4gdGhpcy5zY3JpcHQueWllbGRzPSEwLHtraW5kOiJjb250cm9sLndhaXRUaWNrIn07Y2FzZSJjb250cm9sX3dhaXRfdW50aWwiOnJldHVybiB0aGlzLnNjcmlwdC55aWVsZHM9ITAse2tpbmQ6ImNvbnRyb2wud2FpdFVudGlsIixjb25kaXRpb246dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNPTkRJVElPTiIpfTtjYXNlImNvbnRyb2xfd2FpdHNlY29uZHNvcnVudGlsIjpyZXR1cm4gdGhpcy5zY3JpcHQueWllbGRzPSEwLHtraW5kOiJjb250cm9sLndhaXRPclVudGlsIixzZWNvbmRzOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJEVVJBVElPTiIpLGNvbmRpdGlvbjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQ09ORElUSU9OIil9O2Nhc2UiY29udHJvbF93aGlsZSI6cmV0dXJuIHRoaXMuYW5hbHl6ZUxvb3AoKSx7a2luZDoiY29udHJvbC53aGlsZSIsY29uZGl0aW9uOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJDT05ESVRJT04iKSxkbzp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpLHdhcnBUaW1lcjohMX07Y2FzZSJjb250cm9sX3J1bl9hc19zcHJpdGUiOnJldHVybntraW5kOiJjb250cm9sLnJ1bkFzU3ByaXRlIixzcHJpdGU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlJVTl9BU19PUFRJT04iKSxzdWJzdGFjazp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpfTtjYXNlImNvbnRyb2xfbmV3X3NjcmlwdCI6cmV0dXJue2tpbmQ6ImNvbnRyb2wubmV3U2NyaXB0IixzdWJzdGFjazp0aGlzLmRlc2NlbmRTdWJzdGFjayhBLCJTVUJTVEFDSyIpfTtjYXNlImRhdGFfYWRkdG9saXN0IjpyZXR1cm57a2luZDoibGlzdC5hZGQiLGxpc3Q6dGhpcy5kZXNjZW5kVmFyaWFibGUoQSwiTElTVCIsImxpc3QiKSxpdGVtOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJJVEVNIil9O2Nhc2UiZGF0YV9jaGFuZ2V2YXJpYWJsZWJ5Ijp7Y29uc3QgZT10aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJWQVJJQUJMRSIsIiIpO3JldHVybntraW5kOiJ2YXIuc2V0Iix2YXJpYWJsZTplLHZhbHVlOntraW5kOiJvcC5hZGQiLGxlZnQ6e2tpbmQ6InZhci5nZXQiLHZhcmlhYmxlOmV9LHJpZ2h0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQUxVRSIpfX19Y2FzZSJkYXRhX2RlbGV0ZWFsbG9mbGlzdCI6cmV0dXJue2tpbmQ6Imxpc3QuZGVsZXRlQWxsIixsaXN0OnRoaXMuZGVzY2VuZFZhcmlhYmxlKEEsIkxJU1QiLCJsaXN0Iil9O2Nhc2UiZGF0YV9saXN0Zm9yZWFjaG51bSI6cmV0dXJuIHRoaXMuYW5hbHl6ZUxvb3AoKSx7a2luZDoibGlzdC5mb3JFYWNoIixudW06ITAsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpLHZhcmlhYmxlOnRoaXMuZGVzY2VuZFZhcmlhYmxlKEEsIlZBUklBQkxFIiwiIiksZG86dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKX07Y2FzZSJkYXRhX2xpc3Rmb3JlYWNoaXRlbSI6cmV0dXJuIHRoaXMuYW5hbHl6ZUxvb3AoKSx7a2luZDoibGlzdC5mb3JFYWNoIixudW06ITEsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpLHZhcmlhYmxlOnRoaXMuZGVzY2VuZFZhcmlhYmxlKEEsIlZBUklBQkxFIiwiIiksZG86dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKX07Y2FzZSJkYXRhX2RlbGV0ZW9mbGlzdCI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIklOREVYIik7cmV0dXJuImNvbnN0YW50Ij09PWUua2luZCYmImFsbCI9PT1lLnZhbHVlP3traW5kOiJsaXN0LmRlbGV0ZUFsbCIsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpfTp7a2luZDoibGlzdC5kZWxldGUiLGxpc3Q6dGhpcy5kZXNjZW5kVmFyaWFibGUoQSwiTElTVCIsImxpc3QiKSxpbmRleDplfX1jYXNlImRhdGFfc2hpZnRsaXN0IjpyZXR1cm57a2luZDoibGlzdC5zaGlmdCIsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpLGluZGV4OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJJTkRFWCIpfTtjYXNlImRhdGFfaGlkZWxpc3QiOnJldHVybntraW5kOiJsaXN0LmhpZGUiLGxpc3Q6dGhpcy5kZXNjZW5kVmFyaWFibGUoQSwiTElTVCIsImxpc3QiKX07Y2FzZSJkYXRhX2hpZGV2YXJpYWJsZSI6cmV0dXJue2tpbmQ6InZhci5oaWRlIix2YXJpYWJsZTp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJWQVJJQUJMRSIsIiIpfTtjYXNlImRhdGFfaW5zZXJ0YXRsaXN0IjpyZXR1cm57a2luZDoibGlzdC5pbnNlcnQiLGxpc3Q6dGhpcy5kZXNjZW5kVmFyaWFibGUoQSwiTElTVCIsImxpc3QiKSxpbmRleDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiSU5ERVgiKSxpdGVtOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJJVEVNIil9O2Nhc2UiZGF0YV9yZXBsYWNlaXRlbW9mbGlzdCI6cmV0dXJue2tpbmQ6Imxpc3QucmVwbGFjZSIsbGlzdDp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJMSVNUIiwibGlzdCIpLGluZGV4OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJJTkRFWCIpLGl0ZW06dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIklURU0iKX07Y2FzZSJkYXRhX3NldHZhcmlhYmxldG8iOnJldHVybntraW5kOiJ2YXIuc2V0Iix2YXJpYWJsZTp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJWQVJJQUJMRSIsIiIpLHZhbHVlOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQUxVRSIpfTtjYXNlImRhdGFfc2hvd2xpc3QiOnJldHVybntraW5kOiJsaXN0LnNob3ciLGxpc3Q6dGhpcy5kZXNjZW5kVmFyaWFibGUoQSwiTElTVCIsImxpc3QiKX07Y2FzZSJkYXRhX3Nob3d2YXJpYWJsZSI6cmV0dXJue2tpbmQ6InZhci5zaG93Iix2YXJpYWJsZTp0aGlzLmRlc2NlbmRWYXJpYWJsZShBLCJWQVJJQUJMRSIsIiIpfTtjYXNlImRhdGFfZmlsdGVybGlzdCI6cmV0dXJue2tpbmQ6Imxpc3QuZmlsdGVyIixsaXN0OnRoaXMuZGVzY2VuZFZhcmlhYmxlKEEsIkxJU1QiLCJsaXN0IiksYm9vbDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQk9PTCIpfTtjYXNlImV2ZW50X2Jyb2FkY2FzdCI6cmV0dXJue2tpbmQ6ImV2ZW50LmJyb2FkY2FzdCIsYnJvYWRjYXN0OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJCUk9BRENBU1RfSU5QVVQiKX07Y2FzZSJldmVudF9icm9hZGNhc3RhbmR3YWl0IjpyZXR1cm4gdGhpcy5zY3JpcHQueWllbGRzPSEwLHtraW5kOiJldmVudC5icm9hZGNhc3RBbmRXYWl0Iixicm9hZGNhc3Q6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkJST0FEQ0FTVF9JTlBVVCIpfTtjYXNlImxvb2tzX2NoYW5nZWVmZmVjdGJ5IjpyZXR1cm57a2luZDoibG9va3MuY2hhbmdlRWZmZWN0IixlZmZlY3Q6QS5maWVsZHMuRUZGRUNULnZhbHVlLnRvTG93ZXJDYXNlKCksdmFsdWU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNIQU5HRSIpfTtjYXNlImxvb2tzX2NoYW5nZXNpemVieSI6cmV0dXJue2tpbmQ6Imxvb2tzLmNoYW5nZVNpemUiLHNpemU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkNIQU5HRSIpfTtjYXNlImxvb2tzX2NsZWFyZ3JhcGhpY2VmZmVjdHMiOnJldHVybntraW5kOiJsb29rcy5jbGVhckVmZmVjdHMifTtjYXNlImxvb2tzX2dvZm9yd2FyZGJhY2t3YXJkbGF5ZXJzIjpyZXR1cm4iZm9yd2FyZCI9PT1BLmZpZWxkcy5GT1JXQVJEX0JBQ0tXQVJELnZhbHVlP3traW5kOiJsb29rcy5mb3J3YXJkTGF5ZXJzIixsYXllcnM6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTSIpfTp7a2luZDoibG9va3MuYmFja3dhcmRMYXllcnMiLGxheWVyczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNIil9O2Nhc2UibG9va3NfZ29UYXJnZXRMYXllciI6cmV0dXJuImluZnJvbnQiPT09QS5maWVsZHMuRk9SV0FSRF9CQUNLV0FSRC52YWx1ZT97a2luZDoibG9va3MudGFyZ2V0RnJvbnQiLGxheWVyczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVklTSUJMRV9PUFRJT04iKX06e2tpbmQ6Imxvb2tzLnRhcmdldEJhY2siLGxheWVyczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVklTSUJMRV9PUFRJT04iKX07Y2FzZSJsb29rc19nb3RvZnJvbnRiYWNrIjpyZXR1cm4iZnJvbnQiPT09QS5maWVsZHMuRlJPTlRfQkFDSy52YWx1ZT97a2luZDoibG9va3MuZ29Ub0Zyb250In06e2tpbmQ6Imxvb2tzLmdvVG9CYWNrIn07Y2FzZSJsb29rc19oaWRlIjpyZXR1cm57a2luZDoibG9va3MuaGlkZSJ9O2Nhc2UibG9va3NfbmV4dGJhY2tkcm9wIjpyZXR1cm57a2luZDoibG9va3MubmV4dEJhY2tkcm9wIn07Y2FzZSJsb29rc19uZXh0Y29zdHVtZSI6cmV0dXJue2tpbmQ6Imxvb2tzLm5leHRDb3N0dW1lIn07Y2FzZSJsb29rc19zZXRlZmZlY3R0byI6cmV0dXJue2tpbmQ6Imxvb2tzLnNldEVmZmVjdCIsZWZmZWN0OkEuZmllbGRzLkVGRkVDVC52YWx1ZS50b0xvd2VyQ2FzZSgpLHZhbHVlOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQUxVRSIpfTtjYXNlImxvb2tzX3NldHNpemV0byI6cmV0dXJue2tpbmQ6Imxvb2tzLnNldFNpemUiLHNpemU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlNJWkUiKX07Y2FzZSJsb29rc19zZXRGb250IjpyZXR1cm57a2luZDoibG9va3Muc2V0Rm9udCIsZm9udDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiZm9udCIpLHNpemU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsInNpemUiKX07Y2FzZSJsb29rc19zZXRDb2xvciI6cmV0dXJue2tpbmQ6Imxvb2tzLnNldENvbG9yIixwcm9wOkEuZmllbGRzLnByb3AudmFsdWUsY29sb3I6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsImNvbG9yIil9O2Nhc2UibG9va3Nfc2V0VGludENvbG9yIjpyZXR1cm57a2luZDoibG9va3Muc2V0VGludENvbG9yIixjb2xvcjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiY29sb3IiKX07Y2FzZSJsb29rc19zZXRTaGFwZSI6cmV0dXJue2tpbmQ6Imxvb2tzLnNldFNoYXBlIixwcm9wOkEuZmllbGRzLnByb3AudmFsdWUsdmFsdWU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsImNvbG9yIil9O2Nhc2UibG9va3Nfc2hvdyI6cmV0dXJue2tpbmQ6Imxvb2tzLnNob3cifTtjYXNlImxvb2tzX3N3aXRjaGJhY2tkcm9wdG8iOnJldHVybntraW5kOiJsb29rcy5zd2l0Y2hCYWNrZHJvcCIsYmFja2Ryb3A6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkJBQ0tEUk9QIil9O2Nhc2UibG9va3Nfc3dpdGNoY29zdHVtZXRvIjpyZXR1cm57a2luZDoibG9va3Muc3dpdGNoQ29zdHVtZSIsY29zdHVtZTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQ09TVFVNRSIpfTtjYXNlIm1vdGlvbl9jaGFuZ2V4YnkiOnJldHVybntraW5kOiJtb3Rpb24uY2hhbmdlWCIsZHg6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkRYIil9O2Nhc2UibW90aW9uX2NoYW5nZXlieSI6cmV0dXJue2tpbmQ6Im1vdGlvbi5jaGFuZ2VZIixkeTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiRFkiKX07Y2FzZSJtb3Rpb25fZ290b3h5IjpyZXR1cm57a2luZDoibW90aW9uLnNldFhZIix4OnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJYIikseTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiWSIpfTtjYXNlIm1vdGlvbl9pZm9uZWRnZWJvdW5jZSI6cmV0dXJue2tpbmQ6Im1vdGlvbi5pZk9uRWRnZUJvdW5jZSJ9O2Nhc2UibW90aW9uX21vdmVzdGVwcyI6cmV0dXJue2tpbmQ6Im1vdGlvbi5zdGVwIixzdGVwczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiU1RFUFMiKX07Y2FzZSJtb3Rpb25fcG9pbnRpbmRpcmVjdGlvbiI6cmV0dXJue2tpbmQ6Im1vdGlvbi5zZXREaXJlY3Rpb24iLGRpcmVjdGlvbjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiRElSRUNUSU9OIil9O2Nhc2UibW90aW9uX3NldHJvdGF0aW9uc3R5bGUiOnJldHVybntraW5kOiJtb3Rpb24uc2V0Um90YXRpb25TdHlsZSIsc3R5bGU6QS5maWVsZHMuU1RZTEUudmFsdWV9O2Nhc2UibW90aW9uX3NldHgiOnJldHVybntraW5kOiJtb3Rpb24uc2V0WCIseDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiWCIpfTtjYXNlIm1vdGlvbl9zZXR5IjpyZXR1cm57a2luZDoibW90aW9uLnNldFkiLHk6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlkiKX07Y2FzZSJtb3Rpb25fdHVybmxlZnQiOnJldHVybntraW5kOiJtb3Rpb24uc2V0RGlyZWN0aW9uIixkaXJlY3Rpb246e2tpbmQ6Im9wLnN1YnRyYWN0IixsZWZ0OntraW5kOiJtb3Rpb24uZGlyZWN0aW9uIn0scmlnaHQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkRFR1JFRVMiKX19O2Nhc2UibW90aW9uX3R1cm5yaWdodCI6cmV0dXJue2tpbmQ6Im1vdGlvbi5zZXREaXJlY3Rpb24iLGRpcmVjdGlvbjp7a2luZDoib3AuYWRkIixsZWZ0OntraW5kOiJtb3Rpb24uZGlyZWN0aW9uIn0scmlnaHQ6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkRFR1JFRVMiKX19O2Nhc2UicGVuX2NsZWFyIjpyZXR1cm57a2luZDoicGVuLmNsZWFyIn07Y2FzZSJwZW5fY2hhbmdlUGVuQ29sb3JQYXJhbUJ5IjpyZXR1cm57a2luZDoicGVuLmNoYW5nZVBhcmFtIixwYXJhbTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiQ09MT1JfUEFSQU0iKSx2YWx1ZTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVkFMVUUiKX07Y2FzZSJwZW5fY2hhbmdlUGVuSHVlQnkiOnJldHVybntraW5kOiJwZW4ubGVnYWN5Q2hhbmdlSHVlIixodWU6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIkhVRSIpfTtjYXNlInBlbl9jaGFuZ2VQZW5TaGFkZUJ5IjpyZXR1cm57a2luZDoicGVuLmxlZ2FjeUNoYW5nZVNoYWRlIixzaGFkZTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiU0hBREUiKX07Y2FzZSJwZW5fcGVuRG93biI6cmV0dXJue2tpbmQ6InBlbi5kb3duIn07Y2FzZSJwZW5fcGVuVXAiOnJldHVybntraW5kOiJwZW4udXAifTtjYXNlInBlbl9zZXRQZW5Db2xvclBhcmFtVG8iOnJldHVybntraW5kOiJwZW4uc2V0UGFyYW0iLHBhcmFtOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJDT0xPUl9QQVJBTSIpLHZhbHVlOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQUxVRSIpfTtjYXNlInBlbl9zZXRQZW5Db2xvclRvQ29sb3IiOnJldHVybntraW5kOiJwZW4uc2V0Q29sb3IiLGNvbG9yOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJDT0xPUiIpfTtjYXNlInBlbl9zZXRQZW5IdWVUb051bWJlciI6cmV0dXJue2tpbmQ6InBlbi5sZWdhY3lTZXRIdWUiLGh1ZTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiSFVFIil9O2Nhc2UicGVuX3NldFBlblNoYWRlVG9OdW1iZXIiOnJldHVybntraW5kOiJwZW4ubGVnYWN5U2V0U2hhZGUiLHNoYWRlOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJTSEFERSIpfTtjYXNlInBlbl9zZXRQZW5TaXplVG8iOnJldHVybntraW5kOiJwZW4uc2V0U2l6ZSIsc2l6ZTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiU0laRSIpfTtjYXNlInBlbl9jaGFuZ2VQZW5TaXplQnkiOnJldHVybntraW5kOiJwZW4uY2hhbmdlU2l6ZSIsc2l6ZTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiU0laRSIpfTtjYXNlInBlbl9zdGFtcCI6cmV0dXJue2tpbmQ6InBlbi5zdGFtcCJ9O2Nhc2UicHJvY2VkdXJlc19yZXR1cm4iOntjb25zdCBlPXRoaXMuZ2V0QmxvY2tCeUlkKHRoaXMudGhyZWFkLnRvcEJsb2NrKTtyZXR1cm57a2luZDoicHJvY2VkdXJlcy5yZXR1cm4iLHJldHVybjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwicmV0dXJuIiksaXNEZWZpbmVDbGlja2VkOmUmJnRoaXMudGhyZWFkLnRvcEJsb2NrPT09dGhpcy5zY3JpcHQudG9wQmxvY2tJZCYmKCJwcm9jZWR1cmVzX3JldHVybiI9PT1lLm9wY29kZXx8ZS5vcGNvZGUuc3RhcnRzV2l0aCgicHJvY2VkdXJlc19kZWZpbml0aW9uIikpLGNvbXBpbGVySW5mbzp7andBcnJheVVubW9kaWZpZWQ6ITB9fX1jYXNlInByb2NlZHVyZXNfc2V0IjpyZXR1cm57a2luZDoicHJvY2VkdXJlcy5zZXQiLHBhcmFtOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJQQVJBTSIpLHZhbDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVkFMVUUiKX07Y2FzZSJwcm9jZWR1cmVzX2NhbGwiOntpZigidHJ1ZSI9PT1BLm11dGF0aW9uLnJldHVybnMpe2NvbnN0IGU9Zy5zaW1wbGUoQSk7cmV0dXJuIGUub3Bjb2RlPSJwcm9jZWR1cmVzX2NhbGxfcmV0dXJuIix0aGlzLmRlc2NlbmRTdGFja2VkQmxvY2soZSl9Y29uc3QgZT1BLm11dGF0aW9uLnByb2Njb2RlO2lmKCJ0dzpkZWJ1Z2dlcjsiPT09ZSlyZXR1cm57a2luZDoidHcuZGVidWdnZXIifTtjb25zdCB0PXRoaXMuYmxvY2tzLmdldFByb2NlZHVyZVBhcmFtTmFtZXNJZHNBbmREZWZhdWx0cyhlKTtpZihudWxsPT09dClyZXR1cm57a2luZDoibm9vcCJ9O2NvbnN0W24saSxyXT10O2lmKHRoaXMucnVudGltZS5nZXRBZGRvbkJsb2NrKGUpKXt0aGlzLnNjcmlwdC55aWVsZHM9ITA7Y29uc3QgdD17fTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoO2UrKyl7bGV0IG87bz1BLmlucHV0c1tpW2VdXSYmQS5pbnB1dHNbaVtlXV0uYmxvY2s/dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsaVtlXSk6e2tpbmQ6ImNvbnN0YW50Iix2YWx1ZTpyW2VdfSx0W25bZV1dPW99cmV0dXJue2tpbmQ6ImFkZG9ucy5jYWxsIixjb2RlOmUsYXJndW1lbnRzOnQsYmxvY2tJZDpBLmlkfX1jb25zdCBvPXRoaXMuYmxvY2tzLmdldFByb2NlZHVyZURlZmluaXRpb24oZSkscz10aGlzLmJsb2Nrcy5nZXRCbG9jayhvKTtpZighcylyZXR1cm57a2luZDoibm9vcCJ9O2NvbnN0IGE9dGhpcy5ibG9ja3MuZ2V0QmxvY2socy5pbnB1dHMuY3VzdG9tX2Jsb2NrLmJsb2NrKTtsZXQgQj10aGlzLnNjcmlwdC5pc1dhcnA7aWYoIUImJmEmJmEubXV0YXRpb24pe2NvbnN0IEE9YS5tdXRhdGlvbi53YXJwOyJib29sZWFuIj09dHlwZW9mIEE/Qj1BOiJzdHJpbmciPT10eXBlb2YgQSYmKEI9SlNPTi5wYXJzZShBKSl9Y29uc3QgYz1oKGUsQik7dGhpcy5zY3JpcHQuZGVwZW5kZWRQcm9jZWR1cmVzLmluY2x1ZGVzKGMpfHx0aGlzLnNjcmlwdC5kZXBlbmRlZFByb2NlZHVyZXMucHVzaChjKSx0aGlzLnNjcmlwdC5pc1dhcnB8fGU9PT10aGlzLnNjcmlwdC5wcm9jZWR1cmVDb2RlJiYodGhpcy5zY3JpcHQueWllbGRzPSEwKTtjb25zdCBFPVtdO2ZvcihsZXQgZT0wO2U8aS5sZW5ndGg7ZSsrKXtsZXQgdDt0PUEuaW5wdXRzW2lbZV1dJiZBLmlucHV0c1tpW2VdXS5ibG9jaz9pW2VdLnN0YXJ0c1dpdGgoIlNVQlNUQUNLIik/dGhpcy5kZXNjZW5kU3Vic3RhY2soQSxpW2VdKTp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSxpW2VdKTp7a2luZDoiY29uc3RhbnQiLHZhbHVlOnJbZV19LEUucHVzaCh0KX1yZXR1cm57a2luZDoicHJvY2VkdXJlcy5jYWxsIixjb2RlOmUsdmFyaWFudDpjLHJldHVybnM6ITEsYXJndW1lbnRzOkUsdHlwZTpKU09OLnBhcnNlKEEubXV0YXRpb24ub3B0eXBlfHwnInN0YXRlbWVudCInKX19Y2FzZSJzZW5zaW5nX3NldF9vZiI6cmV0dXJue2tpbmQ6InNlbnNpbmcuc2V0Lm9mIixwcm9wZXJ0eTpBLmZpZWxkcy5QUk9QRVJUWS52YWx1ZSxvYmplY3Q6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk9CSkVDVCIpLHZhbHVlOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQUxVRSIpfTtjYXNlInNlbnNpbmdfcmVzZXR0aW1lciI6cmV0dXJue2tpbmQ6InRpbWVyLnJlc2V0In07Y2FzZSJsbXNUZW1wVmFyczJfc2V0UnVudGltZVZhcmlhYmxlIjpyZXR1cm57a2luZDoidGVtcFZhcnMuc2V0Iix2YXI6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlZBUiIpLHZhbDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiU1RSSU5HIikscnVudGltZTohMH07Y2FzZSJsbXNUZW1wVmFyczJfc2V0VGhyZWFkVmFyaWFibGUiOnJldHVybntraW5kOiJ0ZW1wVmFycy5zZXQiLHZhcjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVkFSIiksdmFsOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJTVFJJTkciKSx0aHJlYWQ6ITB9O2Nhc2UibG1zVGVtcFZhcnMyX2NoYW5nZVJ1bnRpbWVWYXJpYWJsZSI6cmV0dXJue2tpbmQ6InRlbXBWYXJzLmNoYW5nZSIsdmFyOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQVIiKSx2YWw6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5VTSIpLHJ1bnRpbWU6ITB9O2Nhc2UibG1zVGVtcFZhcnMyX2NoYW5nZVRocmVhZFZhcmlhYmxlIjpyZXR1cm57a2luZDoidGVtcFZhcnMuY2hhbmdlIix2YXI6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIlZBUiIpLHZhbDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNIiksdGhyZWFkOiEwfTtjYXNlImxtc1RlbXBWYXJzMl9kZWxldGVSdW50aW1lVmFyaWFibGUiOnJldHVybntraW5kOiJ0ZW1wVmFycy5kZWxldGUiLHZhcjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiVkFSIikscnVudGltZTohMH07Y2FzZSJsbXNUZW1wVmFyczJfZGVsZXRlQWxsUnVudGltZVZhcmlhYmxlcyI6cmV0dXJue2tpbmQ6InRlbXBWYXJzLmRlbGV0ZUFsbCIscnVudGltZTohMH07Y2FzZSJsbXNUZW1wVmFyczJfZm9yRWFjaFRocmVhZFZhcmlhYmxlIjpyZXR1cm57a2luZDoidGVtcFZhcnMuZm9yRWFjaCIsdmFyOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJWQVIiKSxsb29wczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiTlVNIiksZG86dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKSx0aHJlYWQ6ITB9O2Nhc2UidGVtcFZhcnNfc2V0VmFyaWFibGUiOnJldHVybntraW5kOiJ0ZW1wVmFycy5zZXQiLHZhcjp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwibmFtZSIpLHZhbDp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwidmFsdWUiKX07Y2FzZSJ0ZW1wVmFyc19jaGFuZ2VWYXJpYWJsZSI6cmV0dXJue2tpbmQ6InRlbXBWYXJzLmNoYW5nZSIsdmFyOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJuYW1lIiksdmFsOnRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLCJ2YWx1ZSIpfTtjYXNlInRlbXBWYXJzX2RlbGV0ZVZhcmlhYmxlIjpyZXR1cm57a2luZDoidGVtcFZhcnMuZGVsZXRlIix2YXI6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIm5hbWUiKX07Y2FzZSJ0ZW1wVmFyc19kZWxldGVBbGxWYXJpYWJsZXMiOnJldHVybntraW5kOiJ0ZW1wVmFycy5kZWxldGVBbGwifTtjYXNlInRlbXBWYXJzX2ZvckVhY2hUZW1wVmFyIjpyZXR1cm4gdGhpcy5hbmFseXplTG9vcCgpLHtraW5kOiJ0ZW1wVmFycy5mb3JFYWNoIix2YXI6dGhpcy5kZXNjZW5kSW5wdXRPZkJsb2NrKEEsIk5BTUUiKSxsb29wczp0aGlzLmRlc2NlbmRJbnB1dE9mQmxvY2soQSwiUkVQRUFUIiksZG86dGhpcy5kZXNjZW5kU3Vic3RhY2soQSwiU1VCU1RBQ0siKX07Y2FzZSJjb250cm9sX2R1YWxibG9jayI6cmV0dXJue2tpbmQ6ImNvbnRyb2wuZHVhbEJsb2NrIn07ZGVmYXVsdDppZih0aGlzLnJ1bnRpbWUuZ2V0T3Bjb2RlRnVuY3Rpb24oQS5vcGNvZGUpKXtpZih1LnN0YXRlbWVudEJsb2Nrcy5pbmNsdWRlcyhBLm9wY29kZSkpcmV0dXJuIHRoaXMuZGVzY2VuZENvbXBhdExheWVyKEEpO2NvbnN0IGU9dGhpcy5nZXRCbG9ja0luZm8oQS5vcGNvZGUpO2lmKGUpe2NvbnN0IHQ9ZS5pbmZvLmJsb2NrVHlwZSxuPXRoaXMuZGVzY2VuZENvbXBhdExheWVyKEEsZS5pbmZvKTtpZihuLmJsb2NrPUEsQS5tdXRhdGlvbiYmKG4ubXV0YXRpb249QS5tdXRhdGlvbiksdD09PWEuQ09NTUFORHx8dD09PWEuQ09ORElUSU9OQUx8fHQ9PT1hLkxPT1ApcmV0dXJuIG59fWlmKHRoaXMudGhyZWFkLnN0YWNrQ2xpY2spdHJ5e3JldHVybntraW5kOiJ2aXN1YWxSZXBvcnQiLGlucHV0OnRoaXMuZGVzY2VuZElucHV0KEEpfX1jYXRjaChBKXt9dGhyb3cgYy53YXJuKCJJUjogVW5rbm93biBzdGFja2VkIGJsb2NrOiAiLmNvbmNhdChBLm9wY29kZSksQSksbmV3IEVycm9yKCJJUjogVW5rbm93biBzdGFja2VkIGJsb2NrOiAiLmNvbmNhdChBLm9wY29kZSkpfX1kZXNjZW5kU3Vic3RhY2soQSxlKXtjb25zdCB0PUEuaW5wdXRzW2VdO2lmKCF0KXJldHVybltdO2NvbnN0IG49dC5ibG9jaztyZXR1cm4gdGhpcy53YWxrU3RhY2sobil9d2Fsa1N0YWNrKEEpe2NvbnN0IGU9W107bGV0IHQ9QTtmb3IoO251bGwhPT10Oyl7Y29uc3QgQT10aGlzLmdldEJsb2NrQnlJZCh0KTtpZighQSlicmVhaztjb25zdCBuPXRoaXMuZGVzY2VuZFN0YWNrZWRCbG9jayhBKTtlLnB1c2gobiksdD1BLm5leHR9cmV0dXJuIGV9ZGVzY2VuZFZhcmlhYmxlKEEsZSx0KXtjb25zdCBuPUEuZmllbGRzW2VdLGk9bi5pZDtpZih0aGlzLnZhcmlhYmxlQ2FjaGUuaGFzT3duUHJvcGVydHkoaSkpcmV0dXJuIHRoaXMudmFyaWFibGVDYWNoZVtpXTtjb25zdCByPXRoaXMuX2Rlc2NlbmRWYXJpYWJsZShpLG4udmFsdWUsdCk7cmV0dXJuIHRoaXMudmFyaWFibGVDYWNoZVtpXT1yLHJ9X2Rlc2NlbmRWYXJpYWJsZShBLGUsdCl7Y29uc3Qgbj10aGlzLnRhcmdldCxpPXRoaXMuc3RhZ2U7aWYobi52YXJpYWJsZXMuaGFzT3duUHJvcGVydHkoQSkpcmV0dXJuIGwoInRhcmdldCIsbi52YXJpYWJsZXNbQV0pO2lmKCFuLmlzU3RhZ2UmJmkmJmkudmFyaWFibGVzLmhhc093blByb3BlcnR5KEEpKXJldHVybiBsKCJzdGFnZSIsaS52YXJpYWJsZXNbQV0pO2Zvcihjb25zdCBBIGluIG4udmFyaWFibGVzKWlmKG4udmFyaWFibGVzLmhhc093blByb3BlcnR5KEEpKXtjb25zdCBpPW4udmFyaWFibGVzW0FdO2lmKGkubmFtZT09PWUmJmkudHlwZT09PXQpcmV0dXJuIGwoInRhcmdldCIsaSl9aWYoIW4uaXNTdGFnZSYmaSlmb3IoY29uc3QgQSBpbiBpLnZhcmlhYmxlcylpZihpLnZhcmlhYmxlcy5oYXNPd25Qcm9wZXJ0eShBKSl7Y29uc3Qgbj1pLnZhcmlhYmxlc1tBXTtpZihuLm5hbWU9PT1lJiZuLnR5cGU9PT10KXJldHVybiBsKCJzdGFnZSIsbil9Y29uc3Qgcj10aGlzLnJ1bnRpbWUubmV3VmFyaWFibGVJbnN0YW5jZSh0LEEsZSwhMSk7aWYobi52YXJpYWJsZXNbQV09cixuLnNwcml0ZSlmb3IoY29uc3QgaSBvZiBuLnNwcml0ZS5jbG9uZXMpaS52YXJpYWJsZXMuaGFzT3duUHJvcGVydHkoQSl8fChpLnZhcmlhYmxlc1tBXT10aGlzLnJ1bnRpbWUubmV3VmFyaWFibGVJbnN0YW5jZSh0LEEsZSwhMSkpO3JldHVybiBsKCJ0YXJnZXQiLHIpfWRlc2NlbmRDb21wYXRMYXllcihBLGUpe3RoaXMuc2NyaXB0LnlpZWxkcz0hMCxlfHwoZT0oZT10aGlzLmdldEJsb2NrSW5mbyhBLm9wY29kZSkpP2UuaW5mbzpudWxsKTtjb25zdCB0PXt9O2Zvcihjb25zdCBuIG9mIE9iamVjdC5rZXlzKEEuaW5wdXRzKSluLnN0YXJ0c1dpdGgoIlNVQlNUQUNLIil8fCh0W25dPXRoaXMuZGVzY2VuZElucHV0T2ZCbG9jayhBLG4pLGUmJmUuYXJndW1lbnRzW25dJiYodFtuXS5jb21waWxlckluZm89Qy5hZGRDb21waWxlckluZm8odFtuXSxlLmFyZ3VtZW50c1tuXS5jb21waWxlckluZm8pKSk7Y29uc3Qgbj17fSxpPVtdLHI9ZSYmZS5ibG9ja1R5cGV8fGEuQ09NTUFORDtpZihyPT09YS5DT05ESVRJT05BTHx8cj09PWEuTE9PUClmb3IobGV0IHQgaW4gZS5icmFuY2hlc3x8W10pe2NvbnN0IGU9IjAiPT09dD8iU1VCU1RBQ0siOiJTVUJTVEFDSyIuY29uY2F0KE51bWJlcih0KSsxKTtpLnB1c2godGhpcy5kZXNjZW5kU3Vic3RhY2soQSxlKSl9Zm9yKGNvbnN0IGUgb2YgT2JqZWN0LmtleXMoQS5maWVsZHMpKXtjb25zdCB0PUEuZmllbGRzW2VdLnZhcmlhYmxlVHlwZTtpZih2b2lkIDA9PT10KW5bZV09QS5maWVsZHNbZV0udmFsdWU7ZWxzZXtjb25zdCBpPXRoaXMuZGVzY2VuZFZhcmlhYmxlKEEsZSx0KTtuW2VdPWl9fXJldHVybntraW5kOiJjb21wYXQiLGlkOkEuaWQsb3Bjb2RlOkEub3Bjb2RlLGJsb2NrVHlwZTpyLGlucHV0czp0LGZpZWxkczpuLHN1YnN0YWNrczppLGNvbXBpbGVySW5mbzplJiZlLmNvbXBpbGVySW5mb3x8e319fWFuYWx5emVMb29wKCl7dGhpcy5zY3JpcHQuaXNXYXJwJiYhdGhpcy5zY3JpcHQud2FycFRpbWVyfHwodGhpcy5zY3JpcHQueWllbGRzPSEwKX1yZWFkVG9wQmxvY2tDb21tZW50KEEpe2NvbnN0IGU9dGhpcy50YXJnZXQuY29tbWVudHNbQV07aWYoIWUpcmV0dXJuO2NvbnN0IHQ9ZS50ZXh0O2Zvcihjb25zdCBBIG9mIHQuc3BsaXQoIlxuIikpe2lmKCEvXnR3XGIvLnRlc3QoQSkpY29udGludWU7Y29uc3QgZT1BLnNwbGl0KCIgIik7Zm9yKGNvbnN0IEEgb2YgZSlzd2l0Y2goQSl7Y2FzZSJub2NvbXBpbGUiOnRocm93IG5ldyBFcnJvcigiU2NyaXB0IGV4cGxpY2l0bHkgZGlzYWJsZXMgY29tcGlsYXRpb24iKTtjYXNlInN0dWNrIjp0aGlzLnNjcmlwdC53YXJwVGltZXI9ITB9YnJlYWt9fXdhbGtIYXQoQSl7Y29uc3QgZT1BLm5leHQsdD1BLm9wY29kZSxuPXRoaXMucnVudGltZS5faGF0c1t0XTtpZih0aGlzLnRocmVhZC5zdGFja0NsaWNrKXtyZXR1cm4gdGhpcy5ydW50aW1lLmdldE9wY29kZUZ1bmN0aW9uKHQpP1t0aGlzLmRlc2NlbmRDb21wYXRMYXllcihBKSwuLi50aGlzLndhbGtTdGFjayhlKV06dGhpcy53YWxrU3RhY2soZSl9aWYobi5lZGdlQWN0aXZhdGVkKXJldHVybiB0aGlzLnNjcmlwdC55aWVsZHM9ITAsdGhpcy5zY3JpcHQuZXhlY3V0YWJsZUhhdD0hMCxbe2tpbmQ6ImhhdC5lZGdlIixpZDpBLmlkLGNvbmRpdGlvbjp0aGlzLmRlc2NlbmRDb21wYXRMYXllcihBKX0sLi4udGhpcy53YWxrU3RhY2soZSldO3JldHVybiB0aGlzLnJ1bnRpbWUuZ2V0T3Bjb2RlRnVuY3Rpb24odCk/KHRoaXMuc2NyaXB0LnlpZWxkcz0hMCx0aGlzLnNjcmlwdC5leGVjdXRhYmxlSGF0PSEwLFt7a2luZDoiaGF0LnByZWRpY2F0ZSIsY29uZGl0aW9uOnRoaXMuZGVzY2VuZENvbXBhdExheWVyKEEpfSwuLi50aGlzLndhbGtTdGFjayhlKV0pOnRoaXMud2Fsa1N0YWNrKGUpfWdlbmVyYXRlKEEpe3RoaXMuYmxvY2tzLnBvcHVsYXRlUHJvY2VkdXJlQ2FjaGUoKSx0aGlzLnNjcmlwdC50b3BCbG9ja0lkPUE7Y29uc3QgZT10aGlzLmdldEJsb2NrQnlJZChBKTtpZighZSl7aWYodGhpcy5zY3JpcHQuaXNQcm9jZWR1cmUpcmV0dXJuIHRoaXMuc2NyaXB0O3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGZpbmQgdG9wIGJsb2NrIil9ZS5jb21tZW50JiZ0aGlzLnJlYWRUb3BCbG9ja0NvbW1lbnQoZS5jb21tZW50KTtpZighIXRoaXMucnVudGltZS5faGF0c1tlLm9wY29kZV0pdGhpcy5zY3JpcHQuc3RhY2s9dGhpcy53YWxrSGF0KGUpO2Vsc2V7bGV0IHQ7dD0icHJvY2VkdXJlc19kZWZpbml0aW9uIj09PWUub3Bjb2RlfHwicHJvY2VkdXJlc19kZWZpbml0aW9uX3JldHVybiI9PT1lLm9wY29kZT9lLm5leHQ6QSx0JiYodGhpcy5zY3JpcHQuc3RhY2s9dGhpcy53YWxrU3RhY2sodCkpfXJldHVybiB0aGlzLmRlYnVnJiZjLmluZm8oIklSOiAiLmNvbmNhdCh0aGlzLnRhcmdldC5nZXROYW1lKCksIjogY29tcGlsZWQgIikuY29uY2F0KHRoaXMuc2NyaXB0LnByb2NlZHVyZUNvZGV8fCJzY3JpcHQiKSx0aGlzLnNjcmlwdC5zdGFjayksdGhpcy5zY3JpcHR9fWNsYXNzIEl7Y29uc3RydWN0b3IoQSl7dGhpcy50aHJlYWQ9QSx0aGlzLmJsb2Nrcz1BLmJsb2NrQ29udGFpbmVyLHRoaXMucHJvY2VkdXJlc1RvQ29tcGlsZT1uZXcgTWFwLHRoaXMuY29tcGlsaW5nUHJvY2VkdXJlcz1uZXcgTWFwLHRoaXMucHJvY2VkdXJlcz17fSx0aGlzLmFuYWx5emVkUHJvY2VkdXJlcz1bXX1zdGF0aWMgc2V0RXh0ZW5zaW9uSXIoQSxlKXtJLl9leHRlbnNpb25JUkluZm9bQV09ZX1zdGF0aWMgaGFzRXh0ZW5zaW9uSXIoQSl7cmV0dXJuIEJvb2xlYW4oSS5fZXh0ZW5zaW9uSVJJbmZvW0FdKX1zdGF0aWMgZ2V0RXh0ZW5zaW9uSXIoQSl7cmV0dXJuIEkuX2V4dGVuc2lvbklSSW5mb1tBXX1hZGRQcm9jZWR1cmVEZXBlbmRlbmNpZXMoQSl7Zm9yKGNvbnN0IGUgb2YgQSl7aWYodGhpcy5wcm9jZWR1cmVzLmhhc093blByb3BlcnR5KGUpKWNvbnRpbnVlO2lmKHRoaXMuY29tcGlsaW5nUHJvY2VkdXJlcy5oYXMoZSkpY29udGludWU7aWYodGhpcy5wcm9jZWR1cmVzVG9Db21waWxlLmhhcyhlKSljb250aW51ZTtjb25zdCBBPXcoZSksdD10aGlzLmJsb2Nrcy5nZXRQcm9jZWR1cmVEZWZpbml0aW9uKEEpO3RoaXMucHJvY2VkdXJlc1RvQ29tcGlsZS5zZXQoZSx0KX19Z2VuZXJhdGVTY3JpcHRUcmVlKEEsZSl7Y29uc3QgdD1BLmdlbmVyYXRlKGUpO3JldHVybiB0aGlzLmFkZFByb2NlZHVyZURlcGVuZGVuY2llcyh0LmRlcGVuZGVkUHJvY2VkdXJlcyksdH1hbmFseXplU2NyaXB0KEEpe2xldCBlPSExO2Zvcihjb25zdCB0IG9mIEEuZGVwZW5kZWRQcm9jZWR1cmVzKXtjb25zdCBuPXRoaXMucHJvY2VkdXJlc1t0XTt0aGlzLmFuYWx5emVkUHJvY2VkdXJlcy5pbmNsdWRlcyh0KXx8KHRoaXMuYW5hbHl6ZWRQcm9jZWR1cmVzLnB1c2godCksdGhpcy5hbmFseXplU2NyaXB0KG4pJiYoZT0hMCksdGhpcy5hbmFseXplZFByb2NlZHVyZXMucG9wKCkpLG4ueWllbGRzJiYhQS55aWVsZHMmJihBLnlpZWxkcz0hMCxlPSEwKX1yZXR1cm4gZX1nZW5lcmF0ZSgpe2NvbnN0IEE9dGhpcy5nZW5lcmF0ZVNjcmlwdFRyZWUobmV3IEModGhpcy50aHJlYWQpLHRoaXMudGhyZWFkLnRvcEJsb2NrKSxlPXRoaXMuYmxvY2tzLl9jYWNoZS5jb21waWxlZFByb2NlZHVyZXM7Zm9yKDt0aGlzLnByb2NlZHVyZXNUb0NvbXBpbGUuc2l6ZT4wOyl7dGhpcy5jb21waWxpbmdQcm9jZWR1cmVzPXRoaXMucHJvY2VkdXJlc1RvQ29tcGlsZSx0aGlzLnByb2NlZHVyZXNUb0NvbXBpbGU9bmV3IE1hcDtmb3IoY29uc3RbQSx0XW9mIHRoaXMuY29tcGlsaW5nUHJvY2VkdXJlcy5lbnRyaWVzKCkpaWYoZVtBXSl7Y29uc3QgdD1lW0FdO3RoaXMucHJvY2VkdXJlc1tBXT10LHRoaXMuYWRkUHJvY2VkdXJlRGVwZW5kZW5jaWVzKHQuZGVwZW5kZWRQcm9jZWR1cmVzKX1lbHNle2NvbnN0IG49IlciPT09QS5jaGFyQXQoMCksaT1uZXcgQyh0aGlzLnRocmVhZCk7aS5zZXRQcm9jZWR1cmVWYXJpYW50KEEpLG4mJmkuZW5hYmxlV2FycCgpO2NvbnN0IHI9dGhpcy5nZW5lcmF0ZVNjcmlwdFRyZWUoaSx0KTt0aGlzLnByb2NlZHVyZXNbQV09cixlW0FdPXJ9fWZvcig7dGhpcy5hbmFseXplU2NyaXB0KEEpOyk7Y29uc3QgdD1uZXcgUTtyZXR1cm4gdC5lbnRyeT1BLHQucHJvY2VkdXJlcz10aGlzLnByb2NlZHVyZXMsdH19cihJLCJfZXh0ZW5zaW9uSVJJbmZvIix7fSkscihJLCJleHBvcnRzIix7U2NyaXB0VHJlZUdlbmVyYXRvcjpDfSksQS5leHBvcnRzPUl9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMzYpLGk9dCgxOCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm51bGwsZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bnVsbDt0aGlzLnNlcXVlbmNlcj1BLHRoaXMudGhyZWFkPWUsdGhpcy5fbm93T2JqPXtub3c6KCk9PnRoaXMuc2VxdWVuY2VyLnJ1bnRpbWUuY3VycmVudE1TZWNzfX1nZXQgdGFyZ2V0KCl7cmV0dXJuIHRoaXMudGhyZWFkLnRhcmdldH1nZXQgcnVudGltZSgpe3JldHVybiB0aGlzLnNlcXVlbmNlci5ydW50aW1lfWdldCBub3dPYmooKXtyZXR1cm4gdGhpcy5ydW50aW1lP3RoaXMuX25vd09iajpudWxsfWdldCBzdGFja0ZyYW1lKCl7Y29uc3QgQT10aGlzLnRocmVhZC5wZWVrU3RhY2tGcmFtZSgpO3JldHVybiBudWxsPT09QS5leGVjdXRpb25Db250ZXh0JiYoQS5leGVjdXRpb25Db250ZXh0PXt9KSxBLmV4ZWN1dGlvbkNvbnRleHR9c3RhY2tUaW1lckZpbmlzaGVkKCl7cmV0dXJuISh0aGlzLnN0YWNrRnJhbWUudGltZXIudGltZUVsYXBzZWQoKTx0aGlzLnN0YWNrRnJhbWUuZHVyYXRpb24pfXN0YWNrVGltZXJOZWVkc0luaXQoKXtyZXR1cm4hdGhpcy5zdGFja0ZyYW1lLnRpbWVyfXN0YXJ0U3RhY2tUaW1lcihBKXt0aGlzLm5vd09iaj90aGlzLnN0YWNrRnJhbWUudGltZXI9bmV3IGkodGhpcy5ub3dPYmopOnRoaXMuc3RhY2tGcmFtZS50aW1lcj1uZXcgaSx0aGlzLnN0YWNrRnJhbWUudGltZXIuc3RhcnQoKSx0aGlzLnN0YWNrRnJhbWUuZHVyYXRpb249QX15aWVsZCgpe3RoaXMudGhyZWFkLnN0YXR1cz1uLlNUQVRVU19ZSUVMRH1kZWZhdWx0U3RhdHVzKCl7dGhpcy50aHJlYWQuc3RhdHVzPW4uU1RBVFVTX1JVTk5JTkd9eWllbGRUaWNrKCl7dGhpcy50aHJlYWQuc3RhdHVzPW4uU1RBVFVTX1lJRUxEX1RJQ0t9c3RhcnRCcmFuY2goQSxlKXt0aGlzLnNlcXVlbmNlci5zdGVwVG9CcmFuY2godGhpcy50aHJlYWQsQSxlKX1nZXRCcmFuY2hBbmRUYXJnZXQoQSxlKXtjb25zdCB0PXRoaXMudGhyZWFkLmJsb2NrQ29udGFpbmVyLmdldEJyYW5jaChBLGUpO3JldHVybiB0P1t0LHRoaXMudGhyZWFkLnRhcmdldF06dGhpcy5zZXF1ZW5jZXIucnVudGltZS5nZXRCcmFuY2hBbmRUYXJnZXQoQSxlKX1zdG9wQWxsKCl7dGhpcy5zZXF1ZW5jZXIucnVudGltZS5zdG9wQWxsKCl9c3RvcE90aGVyVGFyZ2V0VGhyZWFkcygpe3RoaXMuc2VxdWVuY2VyLnJ1bnRpbWUuc3RvcEZvclRhcmdldCh0aGlzLnRocmVhZC50YXJnZXQsdGhpcy50aHJlYWQpfXN0b3BUaGlzU2NyaXB0KCl7dGhpcy50aHJlYWQuc3RvcFRoaXNTY3JpcHQoKX1zdGFydFByb2NlZHVyZShBKXt0aGlzLnNlcXVlbmNlci5zdGVwVG9Qcm9jZWR1cmUodGhpcy50aHJlYWQsQSl9Z2V0UHJvY2VkdXJlUGFyYW1OYW1lc0FuZElkcyhBKXtyZXR1cm4gdGhpcy50aHJlYWQudGFyZ2V0LmJsb2Nrcy5nZXRQcm9jZWR1cmVQYXJhbU5hbWVzQW5kSWRzKEEpfWdldFByb2NlZHVyZVBhcmFtTmFtZXNJZHNBbmREZWZhdWx0cyhBKXtyZXR1cm4gdGhpcy50aHJlYWQudGFyZ2V0LmJsb2Nrcy5nZXRQcm9jZWR1cmVQYXJhbU5hbWVzSWRzQW5kRGVmYXVsdHMoQSl9aW5pdFBhcmFtcygpe3RoaXMudGhyZWFkLmluaXRQYXJhbXMoKX1wdXNoUGFyYW0oQSxlKXt0aGlzLnRocmVhZC5wdXNoUGFyYW0oQSxlKX1nZXRQYXJhbShBKXtyZXR1cm4gdGhpcy50aHJlYWQuZ2V0UGFyYW0oQSl9c3RhcnRIYXRzKEEsZSx0KXtjb25zdCBuPXRoaXMudGhyZWFkLGk9dGhpcy5zZXF1ZW5jZXIscj10aGlzLnNlcXVlbmNlci5ydW50aW1lLnN0YXJ0SGF0cyhBLGUsdCk7cmV0dXJuIHRoaXMudGhyZWFkPW4sdGhpcy5zZXF1ZW5jZXI9aSxyfWlvUXVlcnkoQSxlLHQpe2lmKHRoaXMuc2VxdWVuY2VyLnJ1bnRpbWUuaW9EZXZpY2VzW0FdJiZ0aGlzLnNlcXVlbmNlci5ydW50aW1lLmlvRGV2aWNlc1tBXVtlXSl7Y29uc3Qgbj10aGlzLnNlcXVlbmNlci5ydW50aW1lLmlvRGV2aWNlc1tBXTtyZXR1cm4gbltlXS5hcHBseShuLHQpfX19fSxmdW5jdGlvbihBLGUsdCl7dmFyIG47ZnVuY3Rpb24gaShBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IHI9dCg1KSxvPXQoMikscz10KDEpLGE9dCgyMjIpLEI9dCg0MyksYz10KDIyNCkse0ludGVybWVkaWF0ZVNjcmlwdDpnLEludGVybWVkaWF0ZVJlcHJlc2VudGF0aW9uOkV9PXQoOTcpLFE9QT0+KCJzdHJpbmciIT10eXBlb2YgQSYmKHIud2Fybigic2FuaXRpemUgZ290IHVuZXhwZWN0ZWQgdHlwZTogIi5jb25jYXQodHlwZW9mIEEpKSxBPSIiK0EpLEpTT04uc3RyaW5naWZ5KEEpLnNsaWNlKDEsLTEpKSx1PSJydW50aW1lLmV4dF9wZW4iLGw9IiIuY29uY2F0KHUsIi5fZ2V0UGVuU3RhdGUodGFyZ2V0KSIpLGg9TWF0aC5QSS8xODAsdz0xODAvTWF0aC5QSSxDPW5ldyBhKCJmYWN0b3J5IiksST1uZXcgYSgiZnVuIiksTT1uZXcgYSgiZ2VuIik7Y2xhc3MgZHtjb25zdHJ1Y3RvcihBLGUpe3RoaXMuc291cmNlPUEsdGhpcy50eXBlPWV9YXNOdW1iZXIoKXtyZXR1cm4gMT09PXRoaXMudHlwZT90aGlzLnNvdXJjZTo1PT09dGhpcy50eXBlPyIoIi5jb25jYXQodGhpcy5zb3VyY2UsIiB8fCAwKSIpOiIoKyIuY29uY2F0KHRoaXMuc291cmNlLCIgfHwgMCkiKX1hc051bWJlck9yTmFOKCl7cmV0dXJuIDE9PT10aGlzLnR5cGV8fDU9PT10aGlzLnR5cGU/dGhpcy5zb3VyY2U6IigrIi5jb25jYXQodGhpcy5zb3VyY2UsIikiKX1hc1N0cmluZygpe3JldHVybiAyPT09dGhpcy50eXBlP3RoaXMuc291cmNlOicoIiIgKyAnLmNvbmNhdCh0aGlzLnNvdXJjZSwiKSIpfWFzQm9vbGVhbigpe3JldHVybiA0PT09dGhpcy50eXBlPyJ0b0Jvb2xlYW4oIi5jb25jYXQodGhpcy5zb3VyY2UsIikiKToyPT09dGhpcy50eXBlPyIiLmNvbmNhdCh0aGlzLnNvdXJjZSwiID09PSAnZmFsc2UnIHx8ICIpLmNvbmNhdCh0aGlzLnNvdXJjZSwiID09PSAnMCcgPyBmYWxzZSA6IHRydWUiKToxPT09dGhpcy50eXBlPyIiLmNvbmNhdCh0aGlzLnNvdXJjZSwiICE9PSAwIik6NT09PXRoaXMudHlwZT8iKCIuY29uY2F0KHRoaXMuc291cmNlLCIgfHwgMCkgIT09IDAiKTp0aGlzLnNvdXJjZX1hc0NvbG9yKCl7cmV0dXJuIHRoaXMuYXNVbmtub3duKCl9YXNVbmtub3duKCl7cmV0dXJuIHRoaXMuc291cmNlfWFzU2FmZSgpe3JldHVybiB0aGlzLmFzVW5rbm93bigpfWlzQWx3YXlzTnVtYmVyKCl7cmV0dXJuIDE9PT10aGlzLnR5cGV9aXNBbHdheXNOdW1iZXJPck5hTigpe3JldHVybiAxPT09dGhpcy50eXBlfHw1PT09dGhpcy50eXBlfWlzTmV2ZXJOdW1iZXIoKXtyZXR1cm4hMX19Y2xhc3MgcHtjb25zdHJ1Y3RvcihBLGUpe3RoaXMuY29uc3RhbnRWYWx1ZT1BLHRoaXMuc2FmZT1lfWFzTnVtYmVyKCl7Y29uc3QgQT0rdGhpcy5jb25zdGFudFZhbHVlO3JldHVybiBBP0EudG9TdHJpbmcoKTpPYmplY3QuaXMoQSwtMCk/Ii0wIjoiMCJ9YXNOdW1iZXJPck5hTigpe3JldHVybiB0aGlzLmFzTnVtYmVyKCl9YXNTdHJpbmcoKXtyZXR1cm4nIicuY29uY2F0KFEoIiIrdGhpcy5jb25zdGFudFZhbHVlKSwnIicpfWFzQm9vbGVhbigpe3JldHVybiBvLnRvQm9vbGVhbih0aGlzLmNvbnN0YW50VmFsdWUpLnRvU3RyaW5nKCl9YXNDb2xvcigpe2lmKC9eI1swLTlhLWZdezYsOH0kL2kudGVzdCh0aGlzLmNvbnN0YW50VmFsdWUpKXtjb25zdCBBPXRoaXMuY29uc3RhbnRWYWx1ZS5zbGljZSgxKTtyZXR1cm4gTnVtYmVyLnBhcnNlSW50KEEsMTYpLnRvU3RyaW5nKCl9cmV0dXJuIHRoaXMuYXNVbmtub3duKCl9YXNVbmtub3duKCl7aWYoIm51bWJlciI9PXR5cGVvZiB0aGlzLmNvbnN0YW50VmFsdWUpcmV0dXJuIHRoaXMuY29uc3RhbnRWYWx1ZTtpZihudWxsPT10aGlzLmNvbnN0YW50VmFsdWUpcmV0dXJuIm51bGwiO3JldHVybigrdGhpcy5jb25zdGFudFZhbHVlKS50b1N0cmluZygpPT09dGhpcy5jb25zdGFudFZhbHVlP3RoaXMuY29uc3RhbnRWYWx1ZTp0aGlzLmFzU3RyaW5nKCl9YXNTYWZlKCl7cmV0dXJuIHRoaXMuc2FmZT90aGlzLmFzVW5rbm93bigpOnRoaXMuYXNTdHJpbmcoKX1pc0Fsd2F5c051bWJlcigpe2NvbnN0IEE9K3RoaXMuY29uc3RhbnRWYWx1ZTtyZXR1cm4hTnVtYmVyLmlzTmFOKEEpJiYoMCE9PUF8fCIiIT09dGhpcy5jb25zdGFudFZhbHVlLnRvU3RyaW5nKCkudHJpbSgpKX1pc0Fsd2F5c051bWJlck9yTmFOKCl7cmV0dXJuIHRoaXMuaXNBbHdheXNOdW1iZXIoKX1pc05ldmVyTnVtYmVyKCl7cmV0dXJuIE51bWJlci5pc05hTigrdGhpcy5jb25zdGFudFZhbHVlKX19Y2xhc3MgbXtjb25zdHJ1Y3RvcihBKXt0aGlzLnNvdXJjZT1BLHRoaXMudHlwZT00LHRoaXMuX3ZhbHVlPW51bGx9c2V0SW5wdXQoQSl7aWYoQSBpbnN0YW5jZW9mIG0pe2lmKCFBLl92YWx1ZSlyZXR1cm4gdGhpcy50eXBlPTQsdm9pZCh0aGlzLl92YWx1ZT1udWxsKTtBPUEuX3ZhbHVlfXRoaXMuX3ZhbHVlPUEsdGhpcy50eXBlPUEgaW5zdGFuY2VvZiBkP0EudHlwZTo0fWFzTnVtYmVyKCl7cmV0dXJuIDE9PT10aGlzLnR5cGU/dGhpcy5zb3VyY2U6NT09PXRoaXMudHlwZT8iKCIuY29uY2F0KHRoaXMuc291cmNlLCIgfHwgMCkiKToiKCsiLmNvbmNhdCh0aGlzLnNvdXJjZSwiIHx8IDApIil9YXNOdW1iZXJPck5hTigpe3JldHVybiAxPT09dGhpcy50eXBlfHw1PT09dGhpcy50eXBlP3RoaXMuc291cmNlOiIoKyIuY29uY2F0KHRoaXMuc291cmNlLCIpIil9YXNTdHJpbmcoKXtyZXR1cm4gMj09PXRoaXMudHlwZT90aGlzLnNvdXJjZTonKCIiICsgJy5jb25jYXQodGhpcy5zb3VyY2UsIikiKX1hc0Jvb2xlYW4oKXtyZXR1cm4gMz09PXRoaXMudHlwZT90aGlzLnNvdXJjZToidG9Cb29sZWFuKCIuY29uY2F0KHRoaXMuc291cmNlLCIpIil9YXNDb2xvcigpe3JldHVybiB0aGlzLmFzVW5rbm93bigpfWFzVW5rbm93bigpe3JldHVybiB0aGlzLnNvdXJjZX1hc1NhZmUoKXtyZXR1cm4gdGhpcy5hc1Vua25vd24oKX1pc0Fsd2F5c051bWJlcigpe3JldHVybiEhdGhpcy5fdmFsdWUmJnRoaXMuX3ZhbHVlLmlzQWx3YXlzTnVtYmVyKCl9aXNBbHdheXNOdW1iZXJPck5hTigpe3JldHVybiEhdGhpcy5fdmFsdWUmJnRoaXMuX3ZhbHVlLmlzQWx3YXlzTnVtYmVyT3JOYU4oKX1pc05ldmVyTnVtYmVyKCl7cmV0dXJuISF0aGlzLl92YWx1ZSYmdGhpcy5fdmFsdWUuaXNOZXZlck51bWJlcigpfX1jb25zdCBGPUE9Pntjb25zdCBlPStBLmNvbnN0YW50VmFsdWU7cmV0dXJuISFlJiZlLnRvU3RyaW5nKCk9PT1BLmNvbnN0YW50VmFsdWUudG9TdHJpbmcoKX07Y2xhc3MgRHtjb25zdHJ1Y3RvcihBLGUpe2xldCB0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl07dGhpcy5pc0xvb3A9QSx0aGlzLmlzTGFzdEJsb2NrPSExLHRoaXMub3ZlcnJpZGVMb29wPXQsdGhpcy5pbXBvcnRhbnREYXRhPXtwYXJlbnRzOltlXX0sQSYmKHRoaXMuaW1wb3J0YW50RGF0YS5jb250YWluZWRCeUxvb3A9QSksdGhpcy5wYXJlbnQ9ZX1hc3NpZ25EYXRhKEEpe0EgaW5zdGFuY2VvZiBEJiYoKEE9QS5pbXBvcnRhbnREYXRhKS5wYXJlbnRzPUEucGFyZW50cy5jb25jYXQodGhpcy5pbXBvcnRhbnREYXRhLnBhcmVudHMpKSxPYmplY3QuYXNzaWduKHRoaXMuaW1wb3J0YW50RGF0YSxBKX19Y2xhc3MgWXtjb25zdHJ1Y3RvcihBLGUsdCl7dGhpcy5zY3JpcHQ9QSx0aGlzLmlyPWUsdGhpcy50YXJnZXQ9dCx0aGlzLnNvdXJjZT0iIix0aGlzLnZhcmlhYmxlSW5wdXRzPXt9LHRoaXMuaXNXYXJwPUEuaXNXYXJwLHRoaXMuaXNPcHRpbWl6ZWQ9QS5pc09wdGltaXplZCx0aGlzLm9wdGltaXphdGlvblV0aWw9QS5vcHRpbWl6YXRpb25VdGlsLHRoaXMuaXNQcm9jZWR1cmU9QS5pc1Byb2NlZHVyZSx0aGlzLndhcnBUaW1lcj1BLndhcnBUaW1lcix0aGlzLmZyYW1lcz1bXSx0aGlzLmN1cnJlbnRGcmFtZT1udWxsLHRoaXMubmFtZXNPZkNvc3R1bWVzQW5kU291bmRzPShBPT57Y29uc3QgZT1uZXcgU2V0O2Zvcihjb25zdCB0IG9mIEEudGFyZ2V0cylpZih0LmlzT3JpZ2luYWwpe2NvbnN0IEE9dC5zcHJpdGU7Zm9yKGNvbnN0IHQgb2YgQS5jb3N0dW1lcyllLmFkZCh0Lm5hbWUpO2Zvcihjb25zdCB0IG9mIEEuc291bmRzKWUuYWRkKHQubmFtZSl9cmV0dXJuIGV9KSh0LnJ1bnRpbWUpLHRoaXMubG9jYWxWYXJpYWJsZXM9bmV3IGEoImEiKSx0aGlzLl9zZXR1cFZhcmlhYmxlc1Bvb2w9bmV3IGEoImIiKSx0aGlzLl9zZXR1cFZhcmlhYmxlcz17fSx0aGlzLmRlc2NlbmRlZEludG9Nb2R1bG89ITEsdGhpcy5pc0luSGF0PSExLHRoaXMuZGVidWc9dGhpcy50YXJnZXQucnVudGltZS5kZWJ1Z31zdGF0aWMgc2V0RXh0ZW5zaW9uSnMoQSxlKXtZLl9leHRlbnNpb25KU0luZm9bQV09ZX1zdGF0aWMgaGFzRXh0ZW5zaW9uSnMoQSl7cmV0dXJuIEJvb2xlYW4oWS5fZXh0ZW5zaW9uSlNJbmZvW0FdKX1zdGF0aWMgZ2V0RXh0ZW5zaW9uSnMoQSl7cmV0dXJuIFkuX2V4dGVuc2lvbkpTSW5mb1tBXX1zdGF0aWMgZ2V0RXh0ZW5zaW9uSW1wb3J0cygpe3JldHVybntGcmFtZTpELFR5cGVkSW5wdXQ6ZCxWYXJpYWJsZUlucHV0Om0sQ29uc3RhbnRJbnB1dDpwLFZhcmlhYmxlUG9vbDphLFRZUEVfTlVNQkVSOjEsVFlQRV9TVFJJTkc6MixUWVBFX0JPT0xFQU46MyxUWVBFX1VOS05PV046NCxUWVBFX05VTUJFUl9OQU46NX19cHVzaEZyYW1lKEEpe3RoaXMuZnJhbWVzLnB1c2goQSksdGhpcy5jdXJyZW50RnJhbWU9QX1wb3BGcmFtZSgpe3RoaXMuZnJhbWVzLnBvcCgpLHRoaXMuY3VycmVudEZyYW1lPXRoaXMuZnJhbWVzW3RoaXMuZnJhbWVzLmxlbmd0aC0xXX1pc0xhc3RCbG9ja0luTG9vcCgpe2ZvcihsZXQgQT10aGlzLmZyYW1lcy5sZW5ndGgtMTtBPj0wO0EtLSl7Y29uc3QgZT10aGlzLmZyYW1lc1tBXTtpZihlLm92ZXJyaWRlTG9vcClyZXR1cm4gZS5pc0xvb3A7aWYoIWUuaXNMYXN0QmxvY2spcmV0dXJuITE7aWYoZS5pc0xvb3ApcmV0dXJuITB9cmV0dXJuITF9ZGVzY2VuZElucHV0KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdJiZhcmd1bWVudHNbMV07Y29uc3QgdD1TdHJpbmcoQS5raW5kKS5zcGxpdCgiLiIpWzBdLG49U3RyaW5nKEEua2luZCkucmVwbGFjZSh0KyIuIiwiIik7aWYoWS5oYXNFeHRlbnNpb25Kcyh0KSYmWS5nZXRFeHRlbnNpb25Kcyh0KVtuXSl7Y29uc3QgZT1ZLmdldEV4dGVuc2lvbkltcG9ydHMoKSxpPVkuZ2V0RXh0ZW5zaW9uSnModClbbl07bGV0IG89bnVsbDt0cnl7bz1pKEEsdGhpcyxlKX1jYXRjaChBKXtyLndhcm4odCsiXyIrbiwiZmFpbGVkIHRvIGNvbXBpbGUgSmF2YVNjcmlwdDsiLEEpfXJldHVybiBvfXN3aXRjaChBLmtpbmQpe2Nhc2UiYXJncy5ib29sZWFuIjpyZXR1cm4gbmV3IGQoInRvQm9vbGVhbihwIi5jb25jYXQoQS5pbmRleCwiKSIpLDMpO2Nhc2UiYXJncy5zdHJpbmdOdW1iZXIiOnJldHVybiBuZXcgZCgicCIuY29uY2F0KEEuaW5kZXgpLDQpO2Nhc2UiY29tcGF0IjpyZXR1cm4gbmV3IGQoIigiLmNvbmNhdCh0aGlzLmdlbmVyYXRlQ29tcGF0aWJpbGl0eUxheWVyQ2FsbChBLCExLG51bGwsZSksIikiKSw0KTtjYXNlImNvbnN0YW50IjpyZXR1cm4gdGhpcy5zYWZlQ29uc3RhbnRJbnB1dChBLnZhbHVlKTtjYXNlImNvdW50ZXIuZ2V0IjpyZXR1cm4gbmV3IGQoInJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2NvbnRyb2wuX2NvdW50ZXIiLDEpO2Nhc2UiY29udHJvbC5lcnJvciI6cmV0dXJuIG5ldyBkKCJydW50aW1lLmV4dF9zY3JhdGNoM19jb250cm9sLl9lcnJvciIsMik7Y2FzZSJjb250cm9sLmlzY2xvbmUiOnJldHVybiBuZXcgZCgiKCF0YXJnZXQuaXNPcmlnaW5hbCkiLDMpO2Nhc2UibWF0aC5wb2x5Z29uIjpsZXQgdD1KU09OLnN0cmluZ2lmeShBLnBvaW50cy5tYXAoKEEsZSk9Pih7eDoieCIuY29uY2F0KGUpLHk6InkiLmNvbmNhdChlKX0pKSk7Zm9yKGxldCBlPTA7ZTxBLnBvaW50cy5sZW5ndGg7ZSsrKXtjb25zdCBuPUEucG9pbnRzW2VdLGk9JyJ4Jy5jb25jYXQoZSwnIicpLHI9JyJ5Jy5jb25jYXQoZSwnIicpO3Q9dC5yZXBsYWNlKGksdGhpcy5kZXNjZW5kSW5wdXQobi54KS5hc051bWJlcigpKS5yZXBsYWNlKHIsdGhpcy5kZXNjZW5kSW5wdXQobi55KS5hc051bWJlcigpKX1yZXR1cm4gbmV3IGQodCw0KTtjYXNlImNvbnRyb2wuaW5saW5lU3RhY2tPdXRwdXQiOntjb25zdCBlPXRoaXMuc291cmNlO3RoaXMuc291cmNlPSIoeWllbGQqIChmdW5jdGlvbiooKSB7Iix0aGlzLmRlc2NlbmRTdGFjayhBLmNvZGUsbmV3IEQoITEsImNvbnRyb2wuaW5saW5lU3RhY2tPdXRwdXQiLCEwKSksdGhpcy5zb3VyY2UrPSJ9KSgpKSI7Y29uc3QgdD10aGlzLnNvdXJjZTtyZXR1cm4gdGhpcy5zb3VyY2U9ZSxuZXcgZCh0LDQpfWNhc2Uia2V5Ym9hcmQucHJlc3NlZCI6cmV0dXJuIG5ldyBkKCJydW50aW1lLmlvRGV2aWNlcy5rZXlib2FyZC5nZXRLZXlJc0Rvd24oIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5rZXkpLmFzU2FmZSgpLCIpIiksMyk7Y2FzZSJsaXN0LmNvbnRhaW5zIjpyZXR1cm4gdGhpcy5pc09wdGltaXplZD9uZXcgZCgibGlzdENvbnRhaW5zRmFzdGVzdCgiLmNvbmNhdCh0aGlzLnJlZmVyZW5jZVZhcmlhYmxlKEEubGlzdCksIiwgIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuaXRlbSkuYXNVbmtub3duKCksIikiKSwzKTpuZXcgZCgibGlzdENvbnRhaW5zKCIuY29uY2F0KHRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSwiLCAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5pdGVtKS5hc1Vua25vd24oKSwiKSIpLDMpO2Nhc2UibGlzdC5jb250ZW50cyI6cmV0dXJuIHRoaXMuaXNPcHRpbWl6ZWQ/bmV3IGQoIigiLmNvbmNhdCh0aGlzLnJlZmVyZW5jZVZhcmlhYmxlKEEubGlzdCksIi52YWx1ZS5qb2luKCcgJykpIiksMik6bmV3IGQoImxpc3RDb250ZW50cygiLmNvbmNhdCh0aGlzLnJlZmVyZW5jZVZhcmlhYmxlKEEubGlzdCksIikiKSwyKTtjYXNlImxpc3QuZ2V0Ijp7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLmluZGV4KTtpZihjLnN1cHBvcnRzTnVsbGlzaENvYWxlc2Npbmcpe2lmKGUuaXNBbHdheXNOdW1iZXJPck5hTigpKXJldHVybiBuZXcgZCgiKCIuY29uY2F0KHRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSwiLnZhbHVlWygiKS5jb25jYXQoZS5hc051bWJlcigpLCcgfCAwKSAtIDFdID8/ICIiKScpLDQpO2lmKGUgaW5zdGFuY2VvZiBwJiYibGFzdCI9PT1lLmNvbnN0YW50VmFsdWUpcmV0dXJuIG5ldyBkKCIoIi5jb25jYXQodGhpcy5yZWZlcmVuY2VWYXJpYWJsZShBLmxpc3QpLCIudmFsdWVbIikuY29uY2F0KHRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSwnLnZhbHVlLmxlbmd0aCAtIDFdID8/ICIiKScpLDQpfXJldHVybiB0aGlzLmlzT3B0aW1pemVkP25ldyBkKCIoIi5jb25jYXQodGhpcy5yZWZlcmVuY2VWYXJpYWJsZShBLmxpc3QpLCIudmFsdWVbIikuY29uY2F0KGUuYXNVbmtub3duKCksJyAtIDFdID8/ICIiKScpLDQpOm5ldyBkKCJsaXN0R2V0KCIuY29uY2F0KHRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSwiLnZhbHVlLCAiKS5jb25jYXQoZS5hc1Vua25vd24oKSwiKSIpLDQpfWNhc2UibGlzdC5pbmRleE9mIjpyZXR1cm4gbmV3IGQoImxpc3RJbmRleE9mKCIuY29uY2F0KHRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSwiLCAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5pdGVtKS5hc1Vua25vd24oKSwiKSIpLDEpO2Nhc2UibGlzdC5hbW91bnRPZiI6cmV0dXJuIG5ldyBkKCIiLmNvbmNhdCh0aGlzLnJlZmVyZW5jZVZhcmlhYmxlKEEubGlzdCksIi52YWx1ZS5maWx0ZXIoKHgpID0+IHggPT0gIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzVW5rbm93bigpLCIpLmxlbmd0aCIpLDEpO2Nhc2UibGlzdC5sZW5ndGgiOnJldHVybiBuZXcgZCgiIi5jb25jYXQodGhpcy5yZWZlcmVuY2VWYXJpYWJsZShBLmxpc3QpLCIudmFsdWUubGVuZ3RoIiksMSk7Y2FzZSJsaXN0LmZpbHRlcml0ZW0iOnJldHVybiBuZXcgZCgnKHRocmVhZC5fbGlzdEZpbHRlckl0ZW0gPz8gWyIiXSlbKHRocmVhZC5fbGlzdEZpbHRlckl0ZW0gPz8gWyIiXSkubGVuZ3RoIC0gMV0nLDQpO2Nhc2UibGlzdC5maWx0ZXJpbmRleCI6cmV0dXJuIG5ldyBkKCIodGhyZWFkLl9saXN0RmlsdGVySW5kZXggPz8gWzBdKVsodGhyZWFkLl9saXN0RmlsdGVySW5kZXggPz8gWzBdKS5sZW5ndGggLSAxXSIsMSk7Y2FzZSJsb29rcy5zaXplIjpyZXR1cm4gbmV3IGQoInRhcmdldC5zaXplIiwxKTtjYXNlImxvb2tzLnRpbnRDb2xvciI6cmV0dXJuIG5ldyBkKCJydW50aW1lLmV4dF9zY3JhdGNoM19sb29rcy5nZXRUaW50Q29sb3IobnVsbCwgeyB0YXJnZXQ6IHRhcmdldCB9KSIsMSk7Y2FzZSJsb29rcy5iYWNrZHJvcE5hbWUiOnJldHVybiBuZXcgZCgic3RhZ2UuZ2V0Q29zdHVtZXMoKVtzdGFnZS5jdXJyZW50Q29zdHVtZV0ubmFtZSIsMik7Y2FzZSJsb29rcy5iYWNrZHJvcE51bWJlciI6cmV0dXJuIG5ldyBkKCIoc3RhZ2UuY3VycmVudENvc3R1bWUgKyAxKSIsMSk7Y2FzZSJsb29rcy5jb3N0dW1lTmFtZSI6cmV0dXJuIG5ldyBkKCJ0YXJnZXQuZ2V0Q29zdHVtZXMoKVt0YXJnZXQuY3VycmVudENvc3R1bWVdLm5hbWUiLDIpO2Nhc2UibG9va3MuY29zdHVtZU51bWJlciI6cmV0dXJuIG5ldyBkKCIodGFyZ2V0LmN1cnJlbnRDb3N0dW1lICsgMSkiLDEpO2Nhc2UibW90aW9uLmRpcmVjdGlvbiI6cmV0dXJuIG5ldyBkKCJ0YXJnZXQuZGlyZWN0aW9uIiwxKTtjYXNlIm1vdGlvbi54IjpyZXR1cm4gdGhpcy5pc09wdGltaXplZD9uZXcgZCgiKHRhcmdldC54KSIsMSk6bmV3IGQoImxpbWl0UHJlY2lzaW9uKHRhcmdldC54KSIsMSk7Y2FzZSJtb3Rpb24ueSI6cmV0dXJuIHRoaXMuaXNPcHRpbWl6ZWQ/bmV3IGQoIih0YXJnZXQueSkiLDEpOm5ldyBkKCJsaW1pdFByZWNpc2lvbih0YXJnZXQueSkiLDEpO2Nhc2UibW91c2UuZG93biI6cmV0dXJuIG5ldyBkKCJydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRJc0Rvd24oKSIsMyk7Y2FzZSJtb3VzZS54IjpyZXR1cm4gbmV3IGQoInJ1bnRpbWUuaW9EZXZpY2VzLm1vdXNlLmdldFNjcmF0Y2hYKCkiLDEpO2Nhc2UibW91c2UueSI6cmV0dXJuIG5ldyBkKCJydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRTY3JhdGNoWSgpIiwxKTtjYXNlIm9wLnRydWUiOnJldHVybiBuZXcgZCgiKHRydWUpIiwzKTtjYXNlIm9wLmZhbHNlIjpyZXR1cm4gbmV3IGQoIihmYWxzZSkiLDMpO2Nhc2Uib3AucmFuZGJvb2wiOnJldHVybiBuZXcgZCgiKEJvb2xlYW4oTWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKSkpIiwzKTtjYXNlInBtRXZlbnRzRXhwYW5zaW9uLmJyb2FkY2FzdEZ1bmN0aW9uIjpjb25zdCBuPXRoaXMuZGVzY2VuZElucHV0KEEuYnJvYWRjYXN0KS5hc1N0cmluZygpO2xldCBvPSIoeWllbGQqIChmdW5jdGlvbiooKSB7IjtvKz0ndmFyIGJyb2FkY2FzdFZhciA9IHJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKS5sb29rdXBCcm9hZGNhc3RNc2coIiIsICcuY29uY2F0KG4sIiApO1xuIiksbys9ImlmIChicm9hZGNhc3RWYXIpIGJyb2FkY2FzdFZhci5pc1NlbnQgPSB0cnVlO1xuIjtjb25zdCBzPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpO28rPSJ2YXIgIi5jb25jYXQocywnID0gc3RhcnRIYXRzKCJldmVudF93aGVuYnJvYWRjYXN0cmVjZWl2ZWQiLCB7IEJST0FEQ0FTVF9PUFRJT046ICcpLmNvbmNhdChuLCIgfSk7XG4iKTtjb25zdCBhPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpO28rPSJmb3IgKGNvbnN0ICIuY29uY2F0KGEsIiBvZiAiKS5jb25jYXQocywiKSB7ICIpLmNvbmNhdChhLCIuX19ldmV4X3JlY2lldmVkRGF0YWEgPSAnJyB9O1xuIiksbys9InlpZWxkKiB3YWl0VGhyZWFkcygiLmNvbmNhdChzLCIpO1xuIiksdGhpcy5pc1dhcnA/bys9ImlmIChpc1N0dWNrKCkpIHlpZWxkO1xuIjpvKz0ieWllbGQ7XG4iLHRoaXMucmVzZXRWYXJpYWJsZUlucHV0cygpO2NvbnN0IEI9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCksZz10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTtyZXR1cm4gbys9InZhciAiLmNvbmNhdChCLCIgPSB1bmRlZmluZWQ7XG4iKSxvKz0iZm9yICh2YXIgIi5jb25jYXQoZywiIG9mICIpLmNvbmNhdChzLCIpIHsiKSxvKz0iaWYgKHR5cGVvZiAiLmNvbmNhdChnLCIuX19ldmV4X3JldHVybkRhdGFhICE9PSAndW5kZWZpbmVkJykgeyIpLG8rPSJyZXR1cm4gIi5jb25jYXQoZywiLl9fZXZleF9yZXR1cm5EYXRhYTtcbiIpLG8rPSJ9IixvKz0ifSIsbys9InJldHVybiAnJztcbiIsbys9In0pKCkpIixuZXcgZChvLDIpO2Nhc2UicG1FdmVudHNFeHBhbnNpb24uYnJvYWRjYXN0RnVuY3Rpb25BcmdzIjp7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLmJyb2FkY2FzdCkuYXNTdHJpbmcoKTtsZXQgdD0iKHlpZWxkKiAoZnVuY3Rpb24qKCkgeyI7Y29uc3Qgbj10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0Kz0ndmFyIGJyb2FkY2FzdFZhciA9IHJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKS5sb29rdXBCcm9hZGNhc3RNc2coIiIsICcuY29uY2F0KGUsIiApO1xuIiksdCs9ImlmIChicm9hZGNhc3RWYXIpIGJyb2FkY2FzdFZhci5pc1NlbnQgPSB0cnVlO1xuIix0Kz0idmFyICIuY29uY2F0KG4sJyA9IHN0YXJ0SGF0cygiZXZlbnRfd2hlbmJyb2FkY2FzdHJlY2VpdmVkIiwgeyBCUk9BRENBU1RfT1BUSU9OOiAnKS5jb25jYXQoZSwiIH0pO1xuIik7Y29uc3QgaT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0Kz0iZm9yIChjb25zdCAiLmNvbmNhdChpLCIgb2YgIikuY29uY2F0KG4sIikgeyAiKS5jb25jYXQoaSwiLl9fZXZleF9yZWNpZXZlZERhdGFhID0gIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuYXJncykuYXNTdHJpbmcoKSwiIH07XG4iKSx0Kz0ieWllbGQqIHdhaXRUaHJlYWRzKCIuY29uY2F0KG4sIik7XG4iKSx0aGlzLmlzV2FycD90Kz0iaWYgKGlzU3R1Y2soKSkgeWllbGQ7XG4iOnQrPSJ5aWVsZDtcbiIsdGhpcy5yZXNldFZhcmlhYmxlSW5wdXRzKCk7Y29uc3Qgcj10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKSxvPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpO3JldHVybiB0Kz0idmFyICIuY29uY2F0KHIsIiA9IHVuZGVmaW5lZDtcbiIpLHQrPSJmb3IgKHZhciAiLmNvbmNhdChvLCIgb2YgIikuY29uY2F0KG4sIikgeyIpLHQrPSJpZiAodHlwZW9mICIuY29uY2F0KG8sIi5fX2V2ZXhfcmV0dXJuRGF0YWEgIT09ICd1bmRlZmluZWQnKSB7IiksdCs9InJldHVybiAiLmNvbmNhdChvLCIuX19ldmV4X3JldHVybkRhdGFhO1xuIiksdCs9In0iLHQrPSJ9Iix0Kz0icmV0dXJuICcnO1xuIix0Kz0ifSkoKSkiLG5ldyBkKHQsMil9Y2FzZSJvcC5hYnMiOnJldHVybiBuZXcgZCgiTWF0aC5hYnMoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKSIpLDEpO2Nhc2Uib3AuYWNvcyI6cmV0dXJuIG5ldyBkKCIoTWF0aC5hY29zKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzTnVtYmVyKCksIikgKiAiKS5jb25jYXQodywiKSIpLDUpO2Nhc2Uib3AuYWRkIjpyZXR1cm4gbmV3IGQoIigiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxlZnQpLmFzTnVtYmVyKCksIiArICIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnJpZ2h0KS5hc051bWJlcigpLCIpIiksNSk7Y2FzZSJvcC5hbmQiOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEubGVmdCkuYXNCb29sZWFuKCksIiAmJiAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5yaWdodCkuYXNCb29sZWFuKCksIikiKSwzKTtjYXNlIm9wLmFzaW4iOnJldHVybiBuZXcgZCgiKE1hdGguYXNpbigiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnZhbHVlKS5hc051bWJlcigpLCIpICogIikuY29uY2F0KHcsIikiKSw1KTtjYXNlIm9wLmF0YW4iOnJldHVybiBuZXcgZCgiKE1hdGguYXRhbigiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnZhbHVlKS5hc051bWJlcigpLCIpICogIikuY29uY2F0KHcsIikiKSwxKTtjYXNlIm9wLmNlaWxpbmciOnJldHVybiBuZXcgZCgiTWF0aC5jZWlsKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzTnVtYmVyKCksIikiKSwxKTtjYXNlIm9wLmNvbnRhaW5zIjpyZXR1cm4gbmV3IGQoIigiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnN0cmluZykuYXNTdHJpbmcoKSwiLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5jb250YWlucykuYXNTdHJpbmcoKSwiLnRvTG93ZXJDYXNlKCkpICE9PSAtMSkiKSwzKTtjYXNlIm9wLmNvcyI6aWYodGhpcy5pc09wdGltaXplZCl7Y29uc3QgZT0iIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSk7cmV0dXJuIG5ldyBkKCIoTnVtYmVyLmlzSW50ZWdlcigiLmNvbmNhdChlLCIpID8gcnVudGltZS5vcHRpbWl6YXRpb25VdGlsLmNvc1soKCIpLmNvbmNhdChlLCIgJSAzNjApICsgMzYwKSAlIDM2MF0gOiAoTWF0aC5yb3VuZChNYXRoLmNvcygiKS5jb25jYXQoZSwiICogIikuY29uY2F0KGgsIikgKiAxZTEwKSAvIDFlMTApKSIpLDUpfXJldHVybiBuZXcgZCgiKE1hdGgucm91bmQoTWF0aC5jb3MoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiICogIikuY29uY2F0KGgsIikgKiAxZTEwKSAvIDFlMTApIiksNSk7Y2FzZSJvcC5kaXZpZGUiOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEubGVmdCkuYXNOdW1iZXIoKSwiIC8gIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEucmlnaHQpLmFzTnVtYmVyKCksIikiKSw1KTtjYXNlIm9wLnBvd2VyIjpyZXR1cm4gbmV3IGQoIihNYXRoLnBvdygiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxlZnQpLmFzTnVtYmVyKCksIiwgIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEucmlnaHQpLmFzTnVtYmVyKCksIikpIiksNSk7Y2FzZSJvcC5lcXVhbHMiOntjb25zdCBlPXRoaXMuZGVzY2VuZElucHV0KEEubGVmdCksdD10aGlzLmRlc2NlbmRJbnB1dChBLnJpZ2h0KTtpZihlLmlzTmV2ZXJOdW1iZXIoKXx8dC5pc05ldmVyTnVtYmVyKCkpcmV0dXJuIG5ldyBkKCIoIi5jb25jYXQoZS5hc1N0cmluZygpLCIudG9Mb3dlckNhc2UoKSA9PT0gIikuY29uY2F0KHQuYXNTdHJpbmcoKSwiLnRvTG93ZXJDYXNlKCkpIiksMyk7Y29uc3Qgbj1lLmlzQWx3YXlzTnVtYmVyKCksaT10LmlzQWx3YXlzTnVtYmVyKCk7cmV0dXJuIG4mJml8fChuJiZlIGluc3RhbmNlb2YgcCYmRihlKXx8aSYmdCBpbnN0YW5jZW9mIHAmJkYodCkpP25ldyBkKCIoIi5jb25jYXQoZS5hc051bWJlcigpLCIgPT09ICIpLmNvbmNhdCh0LmFzTnVtYmVyKCksIikiKSwzKTpuZXcgZCgiY29tcGFyZUVxdWFsKCIuY29uY2F0KGUuYXNVbmtub3duKCksIiwgIikuY29uY2F0KHQuYXNVbmtub3duKCksIikiKSwzKX1jYXNlIm9wLmVeIjpyZXR1cm4gbmV3IGQoIk1hdGguZXhwKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzTnVtYmVyKCksIikiKSwxKTtjYXNlIm9wLmZsb29yIjpyZXR1cm4gbmV3IGQoIk1hdGguZmxvb3IoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKSIpLDEpO2Nhc2Uib3AuZ3JlYXRlciI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXQoQS5sZWZ0KSx0PXRoaXMuZGVzY2VuZElucHV0KEEucmlnaHQpO3JldHVybiBlLmlzQWx3YXlzTnVtYmVyKCkmJnQuaXNBbHdheXNOdW1iZXJPck5hTigpP25ldyBkKCIoIi5jb25jYXQoZS5hc051bWJlcigpLCIgPiAiKS5jb25jYXQodC5hc051bWJlck9yTmFOKCksIikiKSwzKTplLmlzQWx3YXlzTnVtYmVyT3JOYU4oKSYmdC5pc0Fsd2F5c051bWJlcigpP25ldyBkKCIhKCIuY29uY2F0KGUuYXNOdW1iZXJPck5hTigpLCIgPD0gIikuY29uY2F0KHQuYXNOdW1iZXIoKSwiKSIpLDMpOmUuaXNOZXZlck51bWJlcigpfHx0LmlzTmV2ZXJOdW1iZXIoKT9uZXcgZCgiKCIuY29uY2F0KGUuYXNTdHJpbmcoKSwiLnRvTG93ZXJDYXNlKCkgPiAiKS5jb25jYXQodC5hc1N0cmluZygpLCIudG9Mb3dlckNhc2UoKSkiKSwzKTpuZXcgZCgiY29tcGFyZUdyZWF0ZXJUaGFuKCIuY29uY2F0KGUuYXNVbmtub3duKCksIiwgIikuY29uY2F0KHQuYXNVbmtub3duKCksIikiKSwzKX1jYXNlIm9wLmpvaW4iOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEubGVmdCkuYXNTdHJpbmcoKSwiICsgIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEucmlnaHQpLmFzU3RyaW5nKCksIikiKSwyKTtjYXNlIm9wLmV4cGFuZGpvaW4iOmZvcih2YXIgaT0wO2k8QS5zdHJpbmdzLmxlbmd0aDtpKyspQS5zdHJpbmdzW2ldPXRoaXMuZGVzY2VuZElucHV0KEEuc3RyaW5nc1tpXSkuYXNTdHJpbmcoKTtyZXR1cm4gbmV3IGQoIigiK0Euc3RyaW5ncy5qb2luKCIrIikrIikiLDIpO2Nhc2Uib3AubGVuZ3RoIjpyZXR1cm4gbmV3IGQoIiIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuc3RyaW5nKS5hc1N0cmluZygpLCIubGVuZ3RoIiksMSk7Y2FzZSJvcC5sZXNzIjp7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLmxlZnQpLHQ9dGhpcy5kZXNjZW5kSW5wdXQoQS5yaWdodCk7cmV0dXJuIGUuaXNBbHdheXNOdW1iZXJPck5hTigpJiZ0LmlzQWx3YXlzTnVtYmVyKCk/bmV3IGQoIigiLmNvbmNhdChlLmFzTnVtYmVyT3JOYU4oKSwiIDwgIikuY29uY2F0KHQuYXNOdW1iZXIoKSwiKSIpLDMpOmUuaXNBbHdheXNOdW1iZXIoKSYmdC5pc0Fsd2F5c051bWJlck9yTmFOKCk/bmV3IGQoIiEoIi5jb25jYXQoZS5hc051bWJlcigpLCIgPj0gIikuY29uY2F0KHQuYXNOdW1iZXJPck5hTigpLCIpIiksMyk6ZS5pc05ldmVyTnVtYmVyKCl8fHQuaXNOZXZlck51bWJlcigpP25ldyBkKCIoIi5jb25jYXQoZS5hc1N0cmluZygpLCIudG9Mb3dlckNhc2UoKSA8ICIpLmNvbmNhdCh0LmFzU3RyaW5nKCksIi50b0xvd2VyQ2FzZSgpKSIpLDMpOm5ldyBkKCJjb21wYXJlTGVzc1RoYW4oIi5jb25jYXQoZS5hc1Vua25vd24oKSwiLCAiKS5jb25jYXQodC5hc1Vua25vd24oKSwiKSIpLDMpfWNhc2Uib3AubGV0dGVyT2YiOnJldHVybiBuZXcgZCgiKCgiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnN0cmluZykuYXNTdHJpbmcoKSwiKVsoIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEubGV0dGVyKS5hc051bWJlcigpLCcgfCAwKSAtIDFdIHx8ICIiKScpLDIpO2Nhc2Uib3AubG4iOnJldHVybiBuZXcgZCgiTWF0aC5sb2coIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKSIpLDUpO2Nhc2Uib3AubG9nIjpyZXR1cm4gbmV3IGQoIihNYXRoLmxvZygiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnZhbHVlKS5hc051bWJlcigpLCIpIC8gTWF0aC5MTjEwKSIpLDUpO2Nhc2Uib3AubG9nMiI6cmV0dXJuIG5ldyBkKCJNYXRoLmxvZzIoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKSIpLDUpO2Nhc2Uib3AuYWR2bG9nIjpyZXR1cm4gbmV3IGQoIihNYXRoLmxvZygiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnJpZ2h0KS5hc051bWJlcigpLCIpIC8gKE1hdGgubG9nKCIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxlZnQpLmFzTnVtYmVyKCksIikpIiksNSk7Y2FzZSJvcC5tb2QiOnJldHVybiB0aGlzLmRlc2NlbmRlZEludG9Nb2R1bG89ITAsbmV3IGQoIm1vZCgiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxlZnQpLmFzTnVtYmVyKCksIiwgIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEucmlnaHQpLmFzTnVtYmVyKCksIikiKSw1KTtjYXNlIm9wLm11bHRpcGx5IjpyZXR1cm4gbmV3IGQoIigiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxlZnQpLmFzTnVtYmVyKCksIiAqICIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnJpZ2h0KS5hc051bWJlcigpLCIpIiksNSk7Y2FzZSJvcC5ub3QiOnJldHVybiBuZXcgZCgiISIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEub3BlcmFuZCkuYXNCb29sZWFuKCkpLDMpO2Nhc2Uib3Aub3IiOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEubGVmdCkuYXNCb29sZWFuKCksIiB8fCAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5yaWdodCkuYXNCb29sZWFuKCksIikiKSwzKTtjYXNlIm9wLnJhbmRvbSI6cmV0dXJuIEEudXNlSW50cz9uZXcgZCgicmFuZG9tSW50KCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEubG93KS5hc051bWJlcigpLCIsICIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmhpZ2gpLmFzTnVtYmVyKCksIikiKSwxKTpBLnVzZUZsb2F0cz9uZXcgZCgicmFuZG9tRmxvYXQoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5sb3cpLmFzTnVtYmVyKCksIiwgIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuaGlnaCkuYXNOdW1iZXIoKSwiKSIpLDUpOm5ldyBkKCJydW50aW1lLmV4dF9zY3JhdGNoM19vcGVyYXRvcnMuX3JhbmRvbSgiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxvdykuYXNVbmtub3duKCksIiwgIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuaGlnaCkuYXNVbmtub3duKCksIikiKSw1KTtjYXNlIm9wLnJvdW5kIjpyZXR1cm4gbmV3IGQoIk1hdGgucm91bmQoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKSIpLDEpO2Nhc2Uib3Auc2lnbiI6cmV0dXJuIG5ldyBkKCJNYXRoLnNpZ24oIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKSIpLDEpO2Nhc2Uib3Auc2luIjppZih0aGlzLmlzT3B0aW1pemVkKXtjb25zdCBlPSIiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnZhbHVlKS5hc051bWJlcigpKTtyZXR1cm4gbmV3IGQoIihOdW1iZXIuaXNJbnRlZ2VyKCIuY29uY2F0KGUsIikgPyBydW50aW1lLm9wdGltaXphdGlvblV0aWwuc2luWygoIikuY29uY2F0KGUsIiAlIDM2MCkgKyAzNjApICUgMzYwXSA6IChNYXRoLnJvdW5kKE1hdGguc2luKCIpLmNvbmNhdChlLCIgKiAiKS5jb25jYXQoaCwiKSAqIDFlMTApIC8gMWUxMCkpIiksNSl9cmV0dXJuIG5ldyBkKCIoTWF0aC5yb3VuZChNYXRoLnNpbigiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnZhbHVlKS5hc051bWJlcigpLCIgKiAiKS5jb25jYXQoaCwiKSAqIDFlMTApIC8gMWUxMCkiKSw1KTtjYXNlIm9wLnNxcnQiOnJldHVybiBuZXcgZCgiTWF0aC5zcXJ0KCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzTnVtYmVyKCksIikiKSw1KTtjYXNlIm9wLnN1YnRyYWN0IjpyZXR1cm4gbmV3IGQoIigiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxlZnQpLmFzTnVtYmVyKCksIiAtICIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnJpZ2h0KS5hc051bWJlcigpLCIpIiksNSk7Y2FzZSJvcC50YW4iOnJldHVybiBuZXcgZCgidGFuKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzTnVtYmVyKCksIikiKSw1KTtjYXNlIm9wLjEwXiI6cmV0dXJuIG5ldyBkKCIoMTAgKiogIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKSIpLDEpO2Nhc2Uib3AuZXhwYW5kbWF0aCI6e2NvbnN0IGU9QS5vcGVyYXRpb25zO2xldCB0PSIiLG49MDtmb3IoaT0wO2k8ZS5sZW5ndGg7aSsrKXtjb25zdCBBPWVbaV0scj0oZVtpLTFdLEFbMV0pO2lmKCJeIj09PXIpdCs9Ik1hdGgucG93KCIsdCs9dGhpcy5kZXNjZW5kSW5wdXQoQVswXSkuYXNOdW1iZXIoKSx0Kz0iLCIsbisrO2Vsc2V7Zm9yKHQrPXRoaXMuZGVzY2VuZElucHV0KEFbMF0pLmFzTnVtYmVyKCk7bj4wOyl0Kz0iKSIsbi0tO3ImJih0Kz1yKX19cmV0dXJuIG5ldyBkKCIoIit0KyIpIiw1KX1jYXNlIm9wLmV4cGFuZEJvb2wiOntjb25zdCBlPUEuYm9vbHMubWFwKEE9PnRoaXMuZGVzY2VuZElucHV0KEEpLmFzQm9vbGVhbigpKTtsZXQgdD0iIjtpZihBLmlzT3B0aW1pemVkKXtmb3IobGV0IG49MDtuPGUubGVuZ3RoO24rKyl0Kz1lW25dK0Eub3BlcmF0b3JzW25dWzBdO0EuaXNOb3JtYWx8fCh0PSIhKCIuY29uY2F0KHQsIikiKSl9ZWxzZXtsZXQgbj0wO2ZvcihsZXQgaT0wO2k8ZS5sZW5ndGg7aSsrKXtjb25zdCByPUEub3BlcmF0b3JzW2ldLG89WyJuIiwiTiIsIlgiXS5pbmNsdWRlcyhyWzFdKTtvJiYobisrLHQrPSIhKCIpLHQrPWVbaV0sIW8mJm4+MCYmKG4tLSx0Kz0iKSIpLHQrPXJbMF19Zm9yKDtuPjA7KW4tLSx0Kz0iKSJ9cmV0dXJuIG5ldyBkKCIoIit0KyIpIiwzKX1jYXNlIm9wLmV4cGFuZENvbXBhcmUiOntjb25zdCBlPUEuYm9vbHMubWFwKEE9PnRoaXMuZGVzY2VuZElucHV0KEEpLmFzVW5rbm93bigpKSx0PVtdO2ZvcihsZXQgbj0wO248ZS5sZW5ndGgtMTtuKyspdC5wdXNoKCIoIitlW25dK0Eub3BlcmF0b3JzW25dWzBdK2VbbisxXSsiKSIpO3JldHVybiBuZXcgZCgiKCIrdC5qb2luKCImJiIpKyIpIiwzKX1jYXNlInNlbnNpbmcuYW5zd2VyIjpyZXR1cm4gbmV3IGQoInJ1bnRpbWUuZXh0X3NjcmF0Y2gzX3NlbnNpbmcuX2Fuc3dlciIsMik7Y2FzZSJzZW5zaW5nLmNvbG9yVG91Y2hpbmdDb2xvciI6cmV0dXJuIG5ldyBkKCJ0YXJnZXQuY29sb3JJc1RvdWNoaW5nQ29sb3IoY29sb3JUb0xpc3QoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS50YXJnZXQpLmFzQ29sb3IoKSwiKSwgY29sb3JUb0xpc3QoIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEubWFzaykuYXNDb2xvcigpLCIpKSIpLDMpO2Nhc2Uic2Vuc2luZy5kYXRlIjpyZXR1cm4gbmV3IGQoIihuZXcgRGF0ZSgpLmdldERhdGUoKSkiLDEpO2Nhc2Uic2Vuc2luZy5kYXlvZndlZWsiOnJldHVybiBuZXcgZCgiKG5ldyBEYXRlKCkuZ2V0RGF5KCkgKyAxKSIsMSk7Y2FzZSJzZW5zaW5nLmRheXNTaW5jZTIwMDAiOnJldHVybiBuZXcgZCgiZGF5c1NpbmNlMjAwMCgpIiwxKTtjYXNlInNlbnNpbmcuZGlzdGFuY2UiOnJldHVybiBuZXcgZCgiZGlzdGFuY2UoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS50YXJnZXQpLmFzU3RyaW5nKCksIikiKSwxKTtjYXNlInNlbnNpbmcuaG91ciI6cmV0dXJuIG5ldyBkKCIobmV3IERhdGUoKS5nZXRIb3VycygpKSIsMSk7Y2FzZSJzZW5zaW5nLm1pbnV0ZSI6cmV0dXJuIG5ldyBkKCIobmV3IERhdGUoKS5nZXRNaW51dGVzKCkpIiwxKTtjYXNlInNlbnNpbmcubW9udGgiOnJldHVybiBuZXcgZCgiKG5ldyBEYXRlKCkuZ2V0TW9udGgoKSArIDEpIiwxKTtjYXNlInNlbnNpbmcub2YiOntjb25zdCBlPXRoaXMuZGVzY2VuZElucHV0KEEub2JqZWN0KS5hc1N0cmluZygpLHQ9QS5wcm9wZXJ0eTtpZigiY29uc3RhbnQiPT09QS5vYmplY3Qua2luZCl7Y29uc3Qgbj0iX3N0YWdlXyI9PT1BLm9iamVjdC52YWx1ZSxpPW4/InN0YWdlIjp0aGlzLmV2YWx1YXRlT25jZSgicnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUoIi5jb25jYXQoZSwiKSIpKTtpZigidm9sdW1lIj09PXQpcmV0dXJuIG5ldyBkKCIoIi5jb25jYXQoaSwiID8gIikuY29uY2F0KGksIi52b2x1bWUgOiAwKSIpLDEpO2lmKG4pc3dpdGNoKHQpe2Nhc2UiYmFja2dyb3VuZCAjIjpjYXNlImJhY2tkcm9wICMiOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KGksIi5jdXJyZW50Q29zdHVtZSArIDEpIiksMSk7Y2FzZSJiYWNrZHJvcCBuYW1lIjpyZXR1cm4gbmV3IGQoIiIuY29uY2F0KGksIi5nZXRDb3N0dW1lcygpWyIpLmNvbmNhdChpLCIuY3VycmVudENvc3R1bWVdLm5hbWUiKSwyKX1lbHNlIHN3aXRjaCh0KXtjYXNlInggcG9zaXRpb24iOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KGksIiA/ICIpLmNvbmNhdChpLCIueCA6IDApIiksMSk7Y2FzZSJ5IHBvc2l0aW9uIjpyZXR1cm4gbmV3IGQoIigiLmNvbmNhdChpLCIgPyAiKS5jb25jYXQoaSwiLnkgOiAwKSIpLDEpO2Nhc2UiZGlyZWN0aW9uIjpyZXR1cm4gbmV3IGQoIigiLmNvbmNhdChpLCIgPyAiKS5jb25jYXQoaSwiLmRpcmVjdGlvbiA6IDApIiksMSk7Y2FzZSJjb3N0dW1lICMiOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KGksIiA/ICIpLmNvbmNhdChpLCIuY3VycmVudENvc3R1bWUgKyAxIDogMCkiKSwxKTtjYXNlImNvc3R1bWUgbmFtZSI6cmV0dXJuIG5ldyBkKCIoIi5jb25jYXQoaSwiID8gIikuY29uY2F0KGksIi5nZXRDb3N0dW1lcygpWyIpLmNvbmNhdChpLCIuY3VycmVudENvc3R1bWVdLm5hbWUgOiAwKSIpLDQpO2Nhc2UibGF5ZXIiOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KGksIiA/ICIpLmNvbmNhdChpLCIuZ2V0TGF5ZXJPcmRlcigpIDogMCkiKSwxKTtjYXNlInNpemUiOnJldHVybiBuZXcgZCgiKCIuY29uY2F0KGksIiA/ICIpLmNvbmNhdChpLCIuc2l6ZSA6IDApIiksMSl9Y29uc3Qgcj10aGlzLmV2YWx1YXRlT25jZSgiIi5jb25jYXQoaSwiICYmICIpLmNvbmNhdChpLCcubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKCInKS5jb25jYXQoUSh0KSwnIiwgIiIsIHRydWUpJykpO3JldHVybiBuZXcgZCgiKCIuY29uY2F0KHIsIiA/ICIpLmNvbmNhdChyLCIudmFsdWUgOiAwKSIpLDQpfXJldHVybiBuZXcgZCgicnVudGltZS5leHRfc2NyYXRjaDNfc2Vuc2luZy5nZXRBdHRyaWJ1dGVPZih7T0JKRUNUOiAiLmNvbmNhdChlLCcsIFBST1BFUlRZOiAiJykuY29uY2F0KFEodCksJyIgfSknKSw0KX1jYXNlInNlbnNpbmcuc2Vjb25kIjpyZXR1cm4gbmV3IGQoIihuZXcgRGF0ZSgpLmdldFNlY29uZHMoKSkiLDEpO2Nhc2Uic2Vuc2luZy50aW1lc3RhbXAiOnJldHVybiBuZXcgZCgiKERhdGUubm93KCkpIiwxKTtjYXNlInNlbnNpbmcudG91Y2hpbmciOnJldHVybiBuZXcgZCgidGFyZ2V0LmlzVG91Y2hpbmdPYmplY3QoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5vYmplY3QpLmFzVW5rbm93bigpLCIpIiksMyk7Y2FzZSJzZW5zaW5nLnRvdWNoaW5nQ29sb3IiOnJldHVybiBuZXcgZCgidGFyZ2V0LmlzVG91Y2hpbmdDb2xvcihjb2xvclRvTGlzdCgiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmNvbG9yKS5hc0NvbG9yKCksIikpIiksMyk7Y2FzZSJzZW5zaW5nLnVzZXJuYW1lIjpyZXR1cm4gbmV3IGQoInJ1bnRpbWUuaW9EZXZpY2VzLnVzZXJEYXRhLmdldFVzZXJuYW1lKCkiLDIpO2Nhc2Uic2Vuc2luZy5sb2dnZWRpbiI6cmV0dXJuIG5ldyBkKCJydW50aW1lLmlvRGV2aWNlcy51c2VyRGF0YS5nZXRMb2dnZWRJbigpIiwzKTtjYXNlInNlbnNpbmcueWVhciI6cmV0dXJuIG5ldyBkKCIobmV3IERhdGUoKS5nZXRGdWxsWWVhcigpKSIsMSk7Y2FzZSJ0aW1lci5nZXQiOnJldHVybiBuZXcgZCgicnVudGltZS5pb0RldmljZXMuY2xvY2sucHJvamVjdFRpbWVyKCkiLDEpO2Nhc2UidHcubGFzdEtleVByZXNzZWQiOnJldHVybiBuZXcgZCgicnVudGltZS5pb0RldmljZXMua2V5Ym9hcmQuZ2V0TGFzdEtleVByZXNzZWQoKSIsMik7Y2FzZSJ2YXIuZ2V0IjpyZXR1cm4gdGhpcy5kZXNjZW5kVmFyaWFibGUoQS52YXJpYWJsZSk7Y2FzZSJwcm9jZWR1cmVzLmNhbGwiOntjb25zdCBlPUEuY29kZSx0PUEudmFyaWFudDtsZXQgbj0iKCI7Y29uc3QgaT10aGlzLmlyLnByb2NlZHVyZXNbdF07aWYobnVsbD09PWkuc3RhY2spcmV0dXJuIG5ldyBkKCciIicsMik7Y29uc3Qgcj0hdGhpcy5pc1dhcnAmJmU9PT10aGlzLnNjcmlwdC5wcm9jZWR1cmVDb2RlLG89dGhpcy5pc0luSGF0O2lmKChyfHxvKSYmdGhpcy55aWVsZE5vdFdhcnAoKSxpLnlpZWxkcyYmKG4rPSJ5aWVsZCogIiwhdGhpcy5zY3JpcHQueWllbGRzKSl0aHJvdyBuZXcgRXJyb3IoIlNjcmlwdCB1c2VzIHlpZWxkaW5nIHByb2NlZHVyZSBidXQgaXMgbm90IG1hcmtlZCBhcyB5aWVsZGluZy4iKTtpZihuKz0ndGhyZWFkLnByb2NlZHVyZXNbIicuY29uY2F0KFEodCksJyJdKCcpLGkuYXJndW1lbnRzLmxlbmd0aCl7Y29uc3QgZT1bXTtmb3IoY29uc3QgdCBvZiBBLmFyZ3VtZW50cylpZih0IGluc3RhbmNlb2YgQXJyYXkpe2NvbnN0IEE9dGhpcy5zb3VyY2U7dGhpcy5zb3VyY2U9ImZ1bmN0aW9uKih0aHJlYWQsIHRhcmdldCwgcnVudGltZSwgc3RhZ2UpIHsiO2NvbnN0IG49dGhpcy5pc1dhcnA7dGhpcy5pc1dhcnA9aS5pc1dhcnAsdGhpcy5kZXNjZW5kU3RhY2sodCxuZXcgRCghMSx2b2lkIDAsITApKSx0aGlzLmlzV2FycD1uLHRoaXMuc291cmNlKz0ifSIsZS5wdXNoKHRoaXMuc291cmNlKSx0aGlzLnNvdXJjZT1BfWVsc2UgZS5wdXNoKHRoaXMuZGVzY2VuZElucHV0KHQpLmFzU2FmZSgpKTtuKz1lLmpvaW4oIiwiKX1yZXR1cm4gbis9IikpIix0aGlzLnJlc2V0VmFyaWFibGVJbnB1dHMoKSxuZXcgZChuLDQpfWNhc2Uibm9vcCI6cmV0dXJuIGNvbnNvbGUud2FybigidW5leHBlY3RlZCBub29wIiksbmV3IGQoJyIiJyw0KTtjYXNlInRlbXBWYXJzLmdldCI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXQoQS52YXIpLHQ9QS5ydW50aW1lPyJydW50aW1lLnZhcmlhYmxlcyI6QS50aHJlYWQ/InRocmVhZC52YXJpYWJsZXMiOiJ0ZW1wVmFycyIsbj10aGlzLmlzT3B0aW1pemVkPyIiLmNvbmNhdCh0LCJbIikuY29uY2F0KGUuYXNTdHJpbmcoKSwiXSIpOiJnZXQoIi5jb25jYXQodCwiLCAiKS5jb25jYXQoZS5hc1N0cmluZygpLCIpIik7cmV0dXJuIGMuc3VwcG9ydHNOdWxsaXNoQ29hbGVzY2luZz9uZXcgZCgiKCIuY29uY2F0KG4sJyA/PyAiIiknKSw0KTpuZXcgZCgibnVsbGlzaCgiLmNvbmNhdChuLCcsICIiKScpLDQpfWNhc2UidGVtcFZhcnMuZXhpc3RzIjp7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLnZhciksdD1BLnJ1bnRpbWU/InJ1bnRpbWUudmFyaWFibGVzIjpBLnRocmVhZD8idGhyZWFkLnZhcmlhYmxlcyI6InRlbXBWYXJzIixuPXRoaXMuaXNPcHRpbWl6ZWQ/IiIuY29uY2F0KGUuYXNTdHJpbmcoKSwiIGluICIpLmNvbmNhdCh0KToiaW5jbHVkZXMoIi5jb25jYXQodCwiLCAiKS5jb25jYXQoZS5hc1N0cmluZygpLCIpIik7cmV0dXJuIG5ldyBkKG4sMyl9Y2FzZSJ0ZW1wVmFycy5hbGwiOmNvbnN0IEU9QS5ydW50aW1lPyJydW50aW1lLnZhcmlhYmxlcyI6QS50aHJlYWQ/InRocmVhZC52YXJpYWJsZXMiOiJ0ZW1wVmFycyI7cmV0dXJuIEEucnVudGltZXx8QS50aHJlYWQ/bmV3IGQoIk9iamVjdC5rZXlzKCIuY29uY2F0KEUsIikuam9pbignLCcpIiksMik6bmV3IGQoIkpTT04uc3RyaW5naWZ5KE9iamVjdC5rZXlzKHRlbXBWYXJzKSkiLDIpO2Nhc2UiY29udHJvbC5kdWFsQmxvY2siOnJldHVybiBuZXcgZCgnImR1YWwgYmxvY2sgd29ya3MhIicsMik7ZGVmYXVsdDp0aHJvdyByLndhcm4oIkpTOiBVbmtub3duIGlucHV0OiAiLmNvbmNhdChBLmtpbmQpLEEpLG5ldyBFcnJvcigiSlM6IFVua25vd24gaW5wdXQ6ICIuY29uY2F0KEEua2luZCkpfX1kZXNjZW5kU3RhY2tlZEJsb2NrKEEpe2NvbnN0IGU9U3RyaW5nKEEua2luZCkuc3BsaXQoIi4iKVswXSx0PVN0cmluZyhBLmtpbmQpLnJlcGxhY2UoZSsiLiIsIiIpO2lmKFkuaGFzRXh0ZW5zaW9uSnMoZSkmJlkuZ2V0RXh0ZW5zaW9uSnMoZSlbdF0pe2NvbnN0IG49WS5nZXRFeHRlbnNpb25JbXBvcnRzKCksaT1ZLmdldEV4dGVuc2lvbkpzKGUpW3RdO3RyeXtpKEEsdGhpcyxuKX1jYXRjaChBKXtyLndhcm4oZSsiXyIrdCwiZmFpbGVkIHRvIGNvbXBpbGUgSmF2YVNjcmlwdDsiLEEpfX1lbHNlIHN3aXRjaChBLmtpbmQpe2Nhc2UieW91ciBtb20iOmNvbnN0IGU9Imh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vZHVtcC91cm1vbS15b3VyLW1vbS5tcDQiLHQ9Imh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vZHVtcC9jaGlwcy5tcDQiLG49Imh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vZHVtcC9NSVNURVJfQkVBU1Qud2VibSIsaT1BPT4nYDx2aWRlbyBzcmM9IicuY29uY2F0KEEsJyIgaGVpZ2h0PSIke2hlaWdodH0iIGF1dG9wbGF5IGxvb3Agc3R5bGU9ImFsaWdubWVudDpjZW50ZXI7Ij48L3ZpZGVvPmAnKTt0aGlzLnNvdXJjZSs9IlxuICAgICAgICAgICAgY29uc3Qgc3RhZ2UgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdzdGFnZV9zdGFnZV8xZkQ3ayBib3hfYm94XzJqakRwJylbMF0uY2hpbGRyZW5bMF1cbiAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IHN0YWdlLmNoaWxkcmVuWzBdLnN0eWxlLmhlaWdodFxuICAgICAgICAgICAgc3RhZ2UuaW5uZXJIVE1MID0gIi5jb25jYXQoaShlKSwiXG4gICAgICAgICAgICBydW50aW1lLm9uKCdQUk9KRUNUX1NUT1BfQUxMJywgKCkgPT4gZG9jdW1lbnQuYm9keS5pbm5lckhUTUwgPSAiKS5jb25jYXQoaSh0KSwiKVxuICAgICAgICAgICAgc3RhZ2UuY2hpbGRyZW5bMF0uYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgKCkgPT4gc3RhZ2UuaW5uZXJIVE1MID0gIikuY29uY2F0KGkobiksIik7XG4gICAgICAgICAgICAiKTticmVhaztjYXNlImFyZ3MuY29tbWFuZCI6aWYoLTEhPT1BLmluZGV4KXtsZXQgZT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9ImxldCAiLmNvbmNhdChlLCIgPSB5aWVsZCogKHAiKS5jb25jYXQoQS5pbmRleCwiIHx8IGZ1bmN0aW9uKigpe30pKHRocmVhZCwgdGFyZ2V0LCBydW50aW1lLCBzdGFnZSk7XG4iKSx0aGlzLnNvdXJjZSs9ImlmICgiLmNvbmNhdChlLCIgIT09IHVuZGVmaW5lZCkgeyByZXR1cm4gIikuY29uY2F0KGUsIjsgfTtcbiIpfWJyZWFrO2Nhc2UiYWRkb25zLmNhbGwiOntjb25zdCBlPXRoaXMuZGVzY2VuZElucHV0UmVjb3JkKEEuYXJndW1lbnRzKSx0PSdydW50aW1lLmdldEFkZG9uQmxvY2soIicuY29uY2F0KFEoQS5jb2RlKSwnIikuY2FsbGJhY2snKSxuPSciJy5jb25jYXQoUShBLmJsb2NrSWQpLCciJyk7dGhpcy5zb3VyY2UrPSJ5aWVsZCogZXhlY3V0ZUluQ29tcGF0aWJpbGl0eUxheWVyKCIuY29uY2F0KGUsIiwgIikuY29uY2F0KHQsIiwgIikuY29uY2F0KHRoaXMuaXNXYXJwLCIsIGZhbHNlLCAiKS5jb25jYXQobiwiKTtcbiIpO2JyZWFrfWNhc2UiY29tcGF0Ijp7Y29uc3QgZT10aGlzLmlzTGFzdEJsb2NrSW5Mb29wKCksdD1BLmJsb2NrVHlwZTtpZih0PT09cy5DT01NQU5EfHx0PT09cy5IQVQpdGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh0aGlzLmdlbmVyYXRlQ29tcGF0aWJpbGl0eUxheWVyQ2FsbChBLGUpLCI7XG4iKTtlbHNle2lmKHQhPT1zLkNPTkRJVElPTkFMJiZ0IT09cy5MT09QKXRocm93IG5ldyBFcnJvcigiVW5rbm93biBibG9jayB0eXBlOiAiLmNvbmNhdCh0KSk7e2NvbnN0IGU9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCksbj0iY29tcGF0TG9vcExhYmVsIitlO3RoaXMuc291cmNlKz0iY29uc3QgIi5jb25jYXQoZSwiID0gY3JlYXRlQnJhbmNoSW5mbygiKS5jb25jYXQodD09PXMuTE9PUCwiKTtcbiIpLHRoaXMuc291cmNlKz0iIi5jb25jYXQobiwiOiB3aGlsZSAoIikuY29uY2F0KGUsIi5icmFuY2ggPSArKCIpLmNvbmNhdCh0aGlzLmdlbmVyYXRlQ29tcGF0aWJpbGl0eUxheWVyQ2FsbChBLCExLGUpLCIpKSB7XG4iKSx0aGlzLnNvdXJjZSs9InN3aXRjaCAoIi5jb25jYXQoZSwiLmJyYW5jaCkge1xuIiksdGhpcy5jb21wYXRCcmFuY2hJbmZvPXtub2RlOkEsYnJhbmNoVmFyOmUsbGFiZWw6bn07Zm9yKGxldCBlPTA7ZTxBLnN1YnN0YWNrcy5sZW5ndGg7ZSsrKXRoaXMuc291cmNlKz0iY2FzZSAiLmNvbmNhdChlKzEsIjoge1xuIiksdGhpcy5kZXNjZW5kU3RhY2soQS5zdWJzdGFja3NbZV0sbmV3IEQoITEpKSx0aGlzLnNvdXJjZSs9ImJyZWFrO1xuIix0aGlzLnNvdXJjZSs9In1cbiI7dGhpcy5zb3VyY2UrPSJ9XG4iLHRoaXMuc291cmNlKz0iaWYgKCIuY29uY2F0KGUsIi5vbkVuZFswXSkgeWllbGQgIikuY29uY2F0KGUsIi5vbkVuZC5zaGlmdCgpKCIpLmNvbmNhdChlLCIpO1xuIiksdGhpcy5zb3VyY2UrPSJpZiAoISIuY29uY2F0KGUsIi5pc0xvb3ApIGJyZWFrO1xuIiksdGhpcy55aWVsZExvb3AoKSx0aGlzLnNvdXJjZSs9In1cbiIsdGhpcy5jb21wYXRCcmFuY2hJbmZvPXZvaWQgMH19ZSYmKHRoaXMuc291cmNlKz0iaWYgKGhhc1Jlc3VtZWRGcm9tUHJvbWlzZSkge2hhc1Jlc3VtZWRGcm9tUHJvbWlzZSA9IGZhbHNlO2NvbnRpbnVlO31cbiIpO2JyZWFrfWNhc2UicHJvY2VkdXJlcy5zZXQiOmNvbnN0IG89dGhpcy5kZXNjZW5kSW5wdXQoQS52YWwpLGE9QS5wYXJhbS5pbmRleDt2b2lkIDAhPT1hJiYodGhpcy5zb3VyY2UrPSJwIi5jb25jYXQoYSwiID0gIikuY29uY2F0KG8uYXNTYWZlKCksIjtcbiIpKTticmVhaztjYXNlImNvbnRyb2wuY3JlYXRlQ2xvbmUiOnRoaXMuc291cmNlKz0icnVudGltZS5leHRfc2NyYXRjaDNfY29udHJvbC5fY3JlYXRlQ2xvbmUoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS50YXJnZXQpLmFzU3RyaW5nKCksIiwgdGFyZ2V0KTtcbiIpO2JyZWFrO2Nhc2UiY29udHJvbC5kZWxldGVDbG9uZSI6dGhpcy5zb3VyY2UrPSJpZiAoIXRhcmdldC5pc09yaWdpbmFsKSB7XG4iLHRoaXMuc291cmNlKz0iICBydW50aW1lLmRpc3Bvc2VUYXJnZXQodGFyZ2V0KTtcbiIsdGhpcy5zb3VyY2UrPSIgIHJ1bnRpbWUuc3RvcEZvclRhcmdldCh0YXJnZXQpO1xuIix0aGlzLnJldGlyZSgpLHRoaXMuc291cmNlKz0ifVxuIjticmVhaztjYXNlImNvbnRyb2wuZm9yIjp7dGhpcy5yZXNldFZhcmlhYmxlSW5wdXRzKCk7Y29uc3QgZT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdChlLCIgPSAwOyAiKSx0aGlzLnNvdXJjZSs9IndoaWxlICgiLmNvbmNhdChlLCIgPCAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5jb3VudCkuYXNOdW1iZXIoKSwiKSB7ICIpLHRoaXMuc291cmNlKz0iIi5jb25jYXQoZSwiKys7ICIpLHRoaXMuc291cmNlKz0iIi5jb25jYXQodGhpcy5yZWZlcmVuY2VWYXJpYWJsZShBLnZhcmlhYmxlKSwiLnZhbHVlID0gIikuY29uY2F0KGUsIjtcbiIpLHRoaXMuZGVzY2VuZFN0YWNrKEEuZG8sbmV3IEQoITAsImNvbnRyb2wuZm9yIikpLHRoaXMueWllbGRMb29wKCksdGhpcy5zb3VyY2UrPSJ9XG4iO2JyZWFrfWNhc2UiY29udHJvbC5zd2l0Y2giOnRoaXMuc291cmNlKz0ic3dpdGNoICgiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnRlc3QpLmFzU3RyaW5nKCksIikge1xuIiksdGhpcy5kZXNjZW5kU3RhY2soQS5jb25kaXRpb25zLG5ldyBEKCExLCJjb250cm9sLnN3aXRjaCIpKSxBLmRlZmF1bHQubGVuZ3RoJiYodGhpcy5zb3VyY2UrPSJkZWZhdWx0OlxuIix0aGlzLmRlc2NlbmRTdGFjayhBLmRlZmF1bHQsbmV3IEQoITEsImNvbnRyb2wuc3dpdGNoIikpKSx0aGlzLnNvdXJjZSs9In1cbiI7YnJlYWs7Y2FzZSJjb250cm9sLmNhc2UiOmlmKCJjb250cm9sLnN3aXRjaCIhPT10aGlzLmN1cnJlbnRGcmFtZS5wYXJlbnQpe3RoaXMuc291cmNlKz0ndGhyb3cgXCdBbGwgImNhc2UiIGJsb2NrcyBtdXN0IGJlIGluc2lkZSBvZiBhICJzd2l0Y2giIGJsb2NrLlwnO1xuJzticmVha31pZih0aGlzLnNvdXJjZSs9ImNhc2UgIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5jb25kaXRpb24pLmFzU3RyaW5nKCksIjpcbiIpLCFBLnJ1bnNOZXh0KXtjb25zdCBlPW5ldyBEKCExLCJjb250cm9sLmNhc2UiKTtlLmFzc2lnbkRhdGEoe2NvbnRhaW5lZEJ5Q2FzZTohMH0pLHRoaXMuZGVzY2VuZFN0YWNrKEEuY29kZSxlKSx0aGlzLnNvdXJjZSs9ImJyZWFrO1xuIn1icmVhaztjYXNlImNvbnRyb2wuYWxsQXRPbmNlIjp7Y29uc3QgZT10aGlzLmlzV2FycDt0aGlzLmlzV2FycD0hMCx0aGlzLmRlc2NlbmRTdGFjayhBLmNvZGUsbmV3IEQoITEsImNvbnRyb2wuYWxsQXRPbmNlIikpLHRoaXMuaXNXYXJwPWU7YnJlYWt9Y2FzZSJjb250cm9sLm5ld1NjcmlwdCI6e2NvbnN0IEE9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCksZT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdChBLCIgPSB0aHJlYWQucGVla1N0YWNrKCk7XG4iKSx0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdChlLCIgPSB0aHJlYWQudGFyZ2V0LmJsb2Nrcy5nZXRCcmFuY2goIikuY29uY2F0KEEsIiwgMCk7XG4iKSx0aGlzLnNvdXJjZSs9ImlmICgiLmNvbmNhdChlLCIpIHsiKSx0aGlzLnNvdXJjZSs9InJ1bnRpbWUuX3B1c2hUaHJlYWQoIi5jb25jYXQoZSwiLCB0YXJnZXQsIHt9KTtcbiIpLHRoaXMuc291cmNlKz0ifSI7YnJlYWt9Y2FzZSJjb250cm9sLmV4aXRDYXNlIjppZighdGhpcy5jdXJyZW50RnJhbWUuaW1wb3J0YW50RGF0YS5jb250YWluZWRCeUNhc2Upe3RoaXMuc291cmNlKz0ndGhyb3cgXCdBbGwgImV4aXQgY2FzZSIgYmxvY2tzIG11c3QgYmUgaW5zaWRlIG9mIGEgImNhc2UiIGJsb2NrLlwnO1xuJzticmVha310aGlzLnNvdXJjZSs9ImJyZWFrO1xuIjticmVhaztjYXNlImNvbnRyb2wuZXhpdExvb3AiOnRoaXMuY3VycmVudEZyYW1lLmltcG9ydGFudERhdGEuY29udGFpbmVkQnlMb29wP3RoaXMuc291cmNlKz0iYnJlYWs7XG4iOnRoaXMuY29tcGF0QnJhbmNoSW5mbz90aGlzLnNvdXJjZSs9ImJyZWFrICIuY29uY2F0KHRoaXMuY29tcGF0QnJhbmNoSW5mby5sYWJlbCwiO1xuIik6dGhpcy5zb3VyY2UrPSd5aWVsZCogZXhlY3V0ZUluQ29tcGF0aWJpbGl0eUxheWVyKHt9LCBydW50aW1lLmdldE9wY29kZUZ1bmN0aW9uKCJjb250cm9sX2V4aXRMb29wIiksIGZhbHNlLCBmYWxzZSwgIicuY29uY2F0KEEuaWQsJyIsIG51bGwpO1xuJyk7YnJlYWs7Y2FzZSJjb250cm9sLmNvbnRpbnVlTG9vcCI6dGhpcy5jdXJyZW50RnJhbWUuaW1wb3J0YW50RGF0YS5jb250YWluZWRCeUxvb3A/dGhpcy5zb3VyY2UrPSJjb250aW51ZTtcbiI6dGhpcy5jb21wYXRCcmFuY2hJbmZvP3RoaXMuc291cmNlKz0iY29udGludWUgIi5jb25jYXQodGhpcy5jb21wYXRCcmFuY2hJbmZvLmxhYmVsLCI7XG4iKTp0aGlzLnNvdXJjZSs9J3lpZWxkKiBleGVjdXRlSW5Db21wYXRpYmlsaXR5TGF5ZXIoe30sIHJ1bnRpbWUuZ2V0T3Bjb2RlRnVuY3Rpb24oImNvbnRyb2xfZXhpdExvb3AiKSwgZmFsc2UsIGZhbHNlLCAiJy5jb25jYXQoQS5pZCwnIiwgbnVsbCk7XG4nKTticmVhaztjYXNlImNvbnRyb2wuaWYiOnRoaXMuc291cmNlKz0iaWYgKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuY29uZGl0aW9uKS5hc0Jvb2xlYW4oKSwiKSB7XG4iKSx0aGlzLmRlc2NlbmRTdGFjayhBLndoZW5UcnVlLG5ldyBEKCExLCJjb250cm9sLmlmIikpLEEud2hlbkZhbHNlLmxlbmd0aCYmKHRoaXMuc291cmNlKz0ifSBlbHNlIHtcbiIsdGhpcy5kZXNjZW5kU3RhY2soQS53aGVuRmFsc2UsbmV3IEQoITEsImNvbnRyb2wuaWYiKSkpLHRoaXMuc291cmNlKz0ifVxuIjticmVhaztjYXNlImNvbnRyb2wuZXhwYW5kYWJsZUlmIjp7Y29uc3QgZT1BLmJyYW5jaGVzO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7QSsrKXtjb25zdCB0PWVbQV0sbj0wPT09QSxpPUErMT09PWUubGVuZ3RoLHI9bnVsbD09PXRbMF0udmFsdWU7dGhpcy5zb3VyY2UrPW4/ImlmICI6aSYmcj8iZWxzZSAiOiJlbHNlIGlmICIsbnVsbD09PXQ/dGhpcy5zb3VyY2UrPWkmJnI/Int9XG4iOiIoZmFsc2UpIHt9XG4iOih0aGlzLnNvdXJjZSs9cj8ie1xuIjoiKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KHRbMF0pLmFzQm9vbGVhbigpLCIpIHtcbiIpLHRbMV1bMF0mJnRoaXMuZGVzY2VuZFN0YWNrKHRbMV0sbmV3IEQoITEsImNvbnRyb2wuaWYiKSksdGhpcy5zb3VyY2UrPSJ9ICIpfWJyZWFrfWNhc2UiY29udHJvbC50cnljYXRjaCI6dGhpcy5zb3VyY2UrPSJ0cnkge1xuIix0aGlzLmRlc2NlbmRTdGFjayhBLnRyeSxuZXcgRCghMSwiY29udHJvbC50cnljYXRjaCIpKTtjb25zdCBCPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpO3RoaXMuc291cmNlKz0ifSBjYXRjaCAoIi5jb25jYXQoQiwiKSB7XG4iKSx0aGlzLnNvdXJjZSs9InJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2NvbnRyb2wuX2Vycm9yID0gU3RyaW5nKCIuY29uY2F0KEIsIik7XG4iKSx0aGlzLmRlc2NlbmRTdGFjayhBLmNhdGNoLG5ldyBEKCExLCJjb250cm9sLnRyeWNhdGNoIikpLHRoaXMuc291cmNlKz0ifVxuIjticmVhaztjYXNlImNvbnRyb2wudGhyb3dFcnJvciI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXQoQS5lcnJvcikuYXNTdHJpbmcoKTt0aGlzLnNvdXJjZSs9InRocm93ICIuY29uY2F0KGUsIjtcbiIpO2JyZWFrfWNhc2UiY29udHJvbC5yZXBlYXQiOntjb25zdCBlPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpO3RoaXMuc291cmNlKz0iZm9yICh2YXIgIi5jb25jYXQoZSwiID0gIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudGltZXMpLmFzTnVtYmVyKCksIjsgIikuY29uY2F0KGUsIiA+PSAwLjU7ICIpLmNvbmNhdChlLCItLSkge1xuIiksdGhpcy5kZXNjZW5kU3RhY2soQS5kbyxuZXcgRCghMCwiY29udHJvbC5yZXBlYXQiKSksdGhpcy55aWVsZExvb3AoKSx0aGlzLnNvdXJjZSs9In1cbiI7YnJlYWt9Y2FzZSJjb250cm9sLnJlcGVhdEZvclNlY29uZHMiOntjb25zdCBlPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpO3RoaXMuc291cmNlKz0idGhyZWFkLnRpbWVyMiA9IHRpbWVyKCk7XG4iLHRoaXMuc291cmNlKz0idmFyICIuY29uY2F0KGUsIiA9IE1hdGgubWF4KDAsIDEwMDAgKiAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS50aW1lcykuYXNOdW1iZXIoKSwiKTtcbiIpLHRoaXMucmVxdWVzdFJlZHJhdygpLHRoaXMuc291cmNlKz0id2hpbGUgKHRocmVhZC50aW1lcjIudGltZUVsYXBzZWQoKSA8ICIuY29uY2F0KGUsIikge1xuIiksdGhpcy5kZXNjZW5kU3RhY2soQS5kbyxuZXcgRCghMCwiY29udHJvbC5yZXBlYXRGb3JTZWNvbmRzIikpLHRoaXMueWllbGRMb29wKCksdGhpcy5zb3VyY2UrPSJ9XG4iLHRoaXMuc291cmNlKz0idGhyZWFkLnRpbWVyMiA9IG51bGw7XG4iO2JyZWFrfWNhc2UiY29udHJvbC5zdG9wQWxsIjp0aGlzLnNvdXJjZSs9InJ1bnRpbWUuc3RvcEFsbCgpO1xuIix0aGlzLnJldGlyZSgpO2JyZWFrO2Nhc2UiY29udHJvbC5zdG9wT3RoZXJzIjp0aGlzLnNvdXJjZSs9InJ1bnRpbWUuc3RvcEZvclRhcmdldCh0YXJnZXQsIHRocmVhZCk7XG4iO2JyZWFrO2Nhc2UiY29udHJvbC5zdG9wU2NyaXB0Ijp0aGlzLmlzUHJvY2VkdXJlP3RoaXMuc291cmNlKz0icmV0dXJuO1xuIjp0aGlzLnJldGlyZSgpO2JyZWFrO2Nhc2UiY29udHJvbC53YWl0Ijp7Y29uc3QgZT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9InRocmVhZC50aW1lciA9IHRpbWVyKCk7XG4iLHRoaXMuc291cmNlKz0idmFyICIuY29uY2F0KGUsIiA9IE1hdGgubWF4KDAsIDEwMDAgKiAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5zZWNvbmRzKS5hc051bWJlcigpLCIpO1xuIiksdGhpcy5yZXF1ZXN0UmVkcmF3KCksdGhpcy55aWVsZE5vdFdhcnAoKSx0aGlzLnNvdXJjZSs9IndoaWxlICh0aHJlYWQudGltZXIudGltZUVsYXBzZWQoKSA8ICIuY29uY2F0KGUsIikge1xuIiksdGhpcy55aWVsZFN0dWNrT3JOb3RXYXJwKCksdGhpcy5zb3VyY2UrPSJ9XG4iLHRoaXMuc291cmNlKz0idGhyZWFkLnRpbWVyID0gbnVsbDtcbiI7YnJlYWt9Y2FzZSJjb250cm9sLndhaXRUaWNrIjp0aGlzLnlpZWxkTm90V2FycCgpO2JyZWFrO2Nhc2UiY29udHJvbC53YWl0VW50aWwiOnRoaXMucmVzZXRWYXJpYWJsZUlucHV0cygpLHRoaXMuc291cmNlKz0id2hpbGUgKCEiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmNvbmRpdGlvbikuYXNCb29sZWFuKCksIikge1xuIiksdGhpcy55aWVsZFN0dWNrT3JOb3RXYXJwKCksdGhpcy5zb3VyY2UrPSJ9XG4iO2JyZWFrO2Nhc2UiY29udHJvbC53YWl0T3JVbnRpbCI6e2NvbnN0IGU9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCksdD10aGlzLmRlc2NlbmRJbnB1dChBLmNvbmRpdGlvbikuYXNCb29sZWFuKCk7dGhpcy5zb3VyY2UrPSJ0aHJlYWQudGltZXIgPSB0aW1lcigpO1xuIix0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdChlLCIgPSBNYXRoLm1heCgwLCAxMDAwICogIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuc2Vjb25kcykuYXNOdW1iZXIoKSwiKTtcbiIpLHRoaXMucmVxdWVzdFJlZHJhdygpLHRoaXMueWllbGROb3RXYXJwKCksdGhpcy5zb3VyY2UrPSJ3aGlsZSAoKHRocmVhZC50aW1lci50aW1lRWxhcHNlZCgpIDwgIi5jb25jYXQoZSwiKSAmJiAoISgiKS5jb25jYXQodCwiKSkpIHtcbiIpLHRoaXMueWllbGRTdHVja09yTm90V2FycCgpLHRoaXMuc291cmNlKz0ifVxuIix0aGlzLnNvdXJjZSs9InRocmVhZC50aW1lciA9IG51bGw7XG4iO2JyZWFrfWNhc2UiY29udHJvbC53aGlsZSI6dGhpcy5yZXNldFZhcmlhYmxlSW5wdXRzKCksdGhpcy5zb3VyY2UrPSJ3aGlsZSAoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5jb25kaXRpb24pLmFzQm9vbGVhbigpLCIpIHtcbiIpLHRoaXMuZGVzY2VuZFN0YWNrKEEuZG8sbmV3IEQoITAsImNvbnRyb2wud2hpbGUiKSksQS53YXJwVGltZXI/dGhpcy55aWVsZFN0dWNrT3JOb3RXYXJwKCk6dGhpcy55aWVsZExvb3AoKSx0aGlzLnNvdXJjZSs9In1cbiI7YnJlYWs7Y2FzZSJjb250cm9sLnJ1bkFzU3ByaXRlIjpjb25zdCBjPSJydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkiLGc9dGhpcy5kZXNjZW5kSW5wdXQoQS5zcHJpdGUpLmFzU3RyaW5nKCksRT0nIl9zdGFnZV8iJz09PWcsaD10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9ImNvbnN0ICIuY29uY2F0KGgsIiA9IHRhcmdldDtcbiIpLHRoaXMuc291cmNlKz0idHJ5IHtcbiI7Y29uc3Qgdz10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdCh3LCIgPSAiKS5jb25jYXQoZywiO1xuIik7Y29uc3QgQz1FP2M6InJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKCIuY29uY2F0KHcsIikgfHwgcnVudGltZS5nZXRUYXJnZXRCeUlkKCIpLmNvbmNhdCh3LCIpIik7dGhpcy5zb3VyY2UrPSJjb25zdCB0YXJnZXQgPSAoIi5jb25jYXQoQywiKTtcbiIpLHRoaXMuc291cmNlKz0iaWYgKHRhcmdldCkge1xuIix0aGlzLnNvdXJjZSs9InRocmVhZC50YXJnZXQgPSB0YXJnZXQ7XG4iO2NvbnN0IEk9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCksTT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdChJLCIgPSB0aHJlYWQuc3Bvb2Zpbmc7XG4iKSx0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdChNLCIgPSB0aHJlYWQuc3Bvb2ZUYXJnZXQ7XG4iKSx0aGlzLnNvdXJjZSs9InRocmVhZC5zcG9vZmluZyA9IHRydWU7XG4iLHRoaXMuc291cmNlKz0idGhyZWFkLnNwb29mVGFyZ2V0ID0gdGFyZ2V0O1xuIix0aGlzLmRlc2NlbmRTdGFjayhBLnN1YnN0YWNrLG5ldyBEKCExLCJjb250cm9sLnJ1bkFzU3ByaXRlIikpLHRoaXMuc291cmNlKz0idGhyZWFkLnRhcmdldCA9ICIuY29uY2F0KGgsIjtcbiIpLHRoaXMuc291cmNlKz0idGhyZWFkLnNwb29maW5nID0gIi5jb25jYXQoSSwiO1xuIiksdGhpcy5zb3VyY2UrPSJ0aHJlYWQuc3Bvb2ZUYXJnZXQgPSAiLmNvbmNhdChNLCI7XG4iKSx0aGlzLnNvdXJjZSs9In1cbiIsdGhpcy5zb3VyY2UrPSJ9IGNhdGNoIChlKSB7XG5jb25zb2xlLmxvZygnYXMgc3ByaXRlIGZ1bmN0aW9uIGZhaWxlZDsnLCBlKTtcbiIsdGhpcy5zb3VyY2UrPSJ0aHJlYWQudGFyZ2V0ID0gIi5jb25jYXQoaCwiO1xuIiksdGhpcy5zb3VyY2UrPSJ0aHJlYWQuc3Bvb2ZpbmcgPSAiLmNvbmNhdChJLCI7XG4iKSx0aGlzLnNvdXJjZSs9InRocmVhZC5zcG9vZlRhcmdldCA9ICIuY29uY2F0KE0sIjtcbiIpLHRoaXMuc291cmNlKz0ifVxuIjticmVhaztjYXNlImNvdW50ZXIuY2xlYXIiOnRoaXMuc291cmNlKz0icnVudGltZS5leHRfc2NyYXRjaDNfY29udHJvbC5fY291bnRlciA9IDA7XG4iO2JyZWFrO2Nhc2UiY291bnRlci5pbmNyZW1lbnQiOnRoaXMuc291cmNlKz0icnVudGltZS5leHRfc2NyYXRjaDNfY29udHJvbC5fY291bnRlcisrO1xuIjticmVhaztjYXNlImNvdW50ZXIuZGVjcmVtZW50Ijp0aGlzLnNvdXJjZSs9InJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2NvbnRyb2wuX2NvdW50ZXItLTtcbiI7YnJlYWs7Y2FzZSJjb3VudGVyLnNldCI6dGhpcy5zb3VyY2UrPSJydW50aW1lLmV4dF9zY3JhdGNoM19jb250cm9sLl9jb3VudGVyID0gIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiO1xuIik7YnJlYWs7Y2FzZSJoYXQuZWRnZSI6dGhpcy5pc0luSGF0PSEwLHRoaXMuc291cmNlKz0ie1xuIix0aGlzLnNvdXJjZSs9ImNvbnN0IHJlc29sdmVkVmFsdWUgPSAiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmNvbmRpdGlvbikuYXNCb29sZWFuKCksIjtcbiIpLHRoaXMuc291cmNlKz0nY29uc3QgaWQgPSAiJy5jb25jYXQoUShBLmlkKSwnIjtcbicpLHRoaXMuc291cmNlKz0iY29uc3QgaGFzT2xkRWRnZVZhbHVlID0gdGFyZ2V0Lmhhc0VkZ2VBY3RpdmF0ZWRWYWx1ZShpZCk7XG4iLHRoaXMuc291cmNlKz0iY29uc3Qgb2xkRWRnZVZhbHVlID0gdGFyZ2V0LnVwZGF0ZUVkZ2VBY3RpdmF0ZWRWYWx1ZShpZCwgcmVzb2x2ZWRWYWx1ZSk7XG4iLHRoaXMuc291cmNlKz0iY29uc3QgZWRnZVdhc0FjdGl2YXRlZCA9IGhhc09sZEVkZ2VWYWx1ZSA/ICghb2xkRWRnZVZhbHVlICYmIHJlc29sdmVkVmFsdWUpIDogcmVzb2x2ZWRWYWx1ZTtcbiIsdGhpcy5zb3VyY2UrPSJpZiAoIWVkZ2VXYXNBY3RpdmF0ZWQpIHtcbiIsdGhpcy5yZXRpcmUoKSx0aGlzLnNvdXJjZSs9In1cbiIsdGhpcy5zb3VyY2UrPSJ5aWVsZDtcbiIsdGhpcy5zb3VyY2UrPSJ9XG4iLHRoaXMuaXNJbkhhdD0hMTticmVhaztjYXNlImhhdC5wcmVkaWNhdGUiOnRoaXMuaXNJbkhhdD0hMCx0aGlzLnNvdXJjZSs9ImlmICghIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5jb25kaXRpb24pLmFzQm9vbGVhbigpLCIpIHtcbiIpLHRoaXMucmV0aXJlKCksdGhpcy5zb3VyY2UrPSJ9XG4iLHRoaXMuc291cmNlKz0ieWllbGQ7XG4iLHRoaXMuaXNJbkhhdD0hMTticmVhaztjYXNlImV2ZW50LmJyb2FkY2FzdCI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXQoQS5icm9hZGNhc3QpLmFzU3RyaW5nKCk7dGhpcy5zb3VyY2UrPSd2YXIgYnJvYWRjYXN0VmFyID0gcnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmxvb2t1cEJyb2FkY2FzdE1zZygiIiwgJy5jb25jYXQoZSwiKTtcbiIpLHRoaXMuc291cmNlKz0iaWYgKGJyb2FkY2FzdFZhcikgYnJvYWRjYXN0VmFyLmlzU2VudCA9IHRydWU7XG4iLHRoaXMuc291cmNlKz0nc3RhcnRIYXRzKCJldmVudF93aGVuYnJvYWRjYXN0cmVjZWl2ZWQiLCB7IEJST0FEQ0FTVF9PUFRJT046ICcuY29uY2F0KGUsIiB9KTtcbiIpLHRoaXMucmVzZXRWYXJpYWJsZUlucHV0cygpO2JyZWFrfWNhc2UiZXZlbnQuYnJvYWRjYXN0QW5kV2FpdCI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXQoQS5icm9hZGNhc3QpLmFzU3RyaW5nKCk7dGhpcy5zb3VyY2UrPSd2YXIgYnJvYWRjYXN0VmFyID0gcnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmxvb2t1cEJyb2FkY2FzdE1zZygiIiwgJy5jb25jYXQoZSwiKTtcbiIpLHRoaXMuc291cmNlKz0iaWYgKGJyb2FkY2FzdFZhcikgYnJvYWRjYXN0VmFyLmlzU2VudCA9IHRydWU7XG4iLHRoaXMuc291cmNlKz0neWllbGQqIHdhaXRUaHJlYWRzKHN0YXJ0SGF0cygiZXZlbnRfd2hlbmJyb2FkY2FzdHJlY2VpdmVkIiwgeyBCUk9BRENBU1RfT1BUSU9OOiAnLmNvbmNhdChlLCIgfSkpO1xuIiksdGhpcy55aWVsZGVkKCk7YnJlYWt9Y2FzZSJsaXN0LmZvckVhY2giOntjb25zdCBlPXRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSx0PXRoaXMuZGVzY2VuZFZhcmlhYmxlKEEudmFyaWFibGUpLG49QS5udW0/ImluZGV4ICsgMSI6InZhbHVlIjt0aGlzLnNvdXJjZSs9ImZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCAiLmNvbmNhdChlLCIudmFsdWUubGVuZ3RoOyBpbmRleCsrKSB7IikrImNvbnN0IHZhbHVlID0gIi5jb25jYXQoZSwiLnZhbHVlW2luZGV4XTtcbiIpKyIiLmNvbmNhdCh0LnNvdXJjZSwiID0gIikuY29uY2F0KG4sIjtcbiIpLHRoaXMuZGVzY2VuZFN0YWNrKEEuZG8sbmV3IEQoITAsImxpc3QuZm9yRWFjaCIpKSx0aGlzLnNvdXJjZSs9In07XG4iO2JyZWFrfWNhc2UibGlzdC5hZGQiOntjb25zdCBlPXRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KTt0aGlzLnNvdXJjZSs9IiIuY29uY2F0KGUsIi52YWx1ZS5wdXNoKCIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLml0ZW0pLmFzU2FmZSgpLCIpO1xuIiksdGhpcy5zb3VyY2UrPSIiLmNvbmNhdChlLCIuX21vbml0b3JVcFRvRGF0ZSA9IGZhbHNlO1xuIik7YnJlYWt9Y2FzZSJsaXN0LmRlbGV0ZSI6e2NvbnN0IGU9dGhpcy5yZWZlcmVuY2VWYXJpYWJsZShBLmxpc3QpLHQ9dGhpcy5kZXNjZW5kSW5wdXQoQS5pbmRleCk7aWYodCBpbnN0YW5jZW9mIHApe2lmKCJsYXN0Ij09PXQuY29uc3RhbnRWYWx1ZSl7dGhpcy5zb3VyY2UrPSIiLmNvbmNhdChlLCIudmFsdWUucG9wKCk7XG4iKSx0aGlzLnNvdXJjZSs9IiIuY29uY2F0KGUsIi5fbW9uaXRvclVwVG9EYXRlID0gZmFsc2U7XG4iKTticmVha31pZigxPT0rdC5jb25zdGFudFZhbHVlKXt0aGlzLnNvdXJjZSs9IiIuY29uY2F0KGUsIi52YWx1ZS5zaGlmdCgpO1xuIiksdGhpcy5zb3VyY2UrPSIiLmNvbmNhdChlLCIuX21vbml0b3JVcFRvRGF0ZSA9IGZhbHNlO1xuIik7YnJlYWt9fXRoaXMuc291cmNlKz0ibGlzdERlbGV0ZSgiLmNvbmNhdChlLCIsICIpLmNvbmNhdCh0LmFzVW5rbm93bigpLCIpO1xuIik7YnJlYWt9Y2FzZSJsaXN0LmRlbGV0ZUFsbCI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh0aGlzLnJlZmVyZW5jZVZhcmlhYmxlKEEubGlzdCksIi52YWx1ZSA9IFtdO1xuIik7YnJlYWs7Y2FzZSJsaXN0LnNoaWZ0Ijpjb25zdCBkPXRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSxtPXRoaXMuZGVzY2VuZElucHV0KEEuaW5kZXgpLmFzTnVtYmVyKCk7aWYobTw9MClicmVhazt0aGlzLnNvdXJjZSs9IiIuY29uY2F0KGQsIi52YWx1ZSA9ICIpLmNvbmNhdChkLCIudmFsdWUuc2xpY2UoIikuY29uY2F0KG0sIik7XG4iKSx0aGlzLnNvdXJjZSs9IiIuY29uY2F0KGQsIi5fbW9uaXRvclVwVG9EYXRlID0gZmFsc2U7XG4iKTticmVhaztjYXNlImxpc3QuaGlkZSI6dGhpcy5zb3VyY2UrPSdydW50aW1lLm1vbml0b3JCbG9ja3MuY2hhbmdlQmxvY2soeyBpZDogIicuY29uY2F0KFEoQS5saXN0LmlkKSwnIiwgZWxlbWVudDogImNoZWNrYm94IiwgdmFsdWU6IGZhbHNlIH0sIHJ1bnRpbWUpO1xuJyk7YnJlYWs7Y2FzZSJsaXN0Lmluc2VydCI6e2NvbnN0IGU9dGhpcy5yZWZlcmVuY2VWYXJpYWJsZShBLmxpc3QpLHQ9dGhpcy5kZXNjZW5kSW5wdXQoQS5pbmRleCksbj10aGlzLmRlc2NlbmRJbnB1dChBLml0ZW0pO2lmKHQgaW5zdGFuY2VvZiBwJiYxPT0rdC5jb25zdGFudFZhbHVlKXt0aGlzLnNvdXJjZSs9IiIuY29uY2F0KGUsIi52YWx1ZS51bnNoaWZ0KCIpLmNvbmNhdChuLmFzU2FmZSgpLCIpO1xuIiksdGhpcy5zb3VyY2UrPSIiLmNvbmNhdChlLCIuX21vbml0b3JVcFRvRGF0ZSA9IGZhbHNlO1xuIik7YnJlYWt9dGhpcy5zb3VyY2UrPSJsaXN0SW5zZXJ0KCIuY29uY2F0KGUsIiwgIikuY29uY2F0KHQuYXNVbmtub3duKCksIiwgIikuY29uY2F0KG4uYXNTYWZlKCksIik7XG4iKTticmVha31jYXNlImxpc3QucmVwbGFjZSI6dGhpcy5zb3VyY2UrPSJsaXN0UmVwbGFjZSgiLmNvbmNhdCh0aGlzLnJlZmVyZW5jZVZhcmlhYmxlKEEubGlzdCksIiwgIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuaW5kZXgpLmFzVW5rbm93bigpLCIsICIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLml0ZW0pLmFzU2FmZSgpLCIpO1xuIik7YnJlYWs7Y2FzZSJsaXN0LnNob3ciOnRoaXMuc291cmNlKz0ncnVudGltZS5tb25pdG9yQmxvY2tzLmNoYW5nZUJsb2NrKHsgaWQ6ICInLmNvbmNhdChRKEEubGlzdC5pZCksJyIsIGVsZW1lbnQ6ICJjaGVja2JveCIsIHZhbHVlOiB0cnVlIH0sIHJ1bnRpbWUpO1xuJyk7YnJlYWs7Y2FzZSJsaXN0LmZpbHRlciI6Y29uc3QgRj10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9InZhciAiLmNvbmNhdChGLCIgPSBbXTtcbiIpO2NvbnN0IFk9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCk7dGhpcy5zb3VyY2UrPSJ2YXIgIi5jb25jYXQoWSwiID0gWy4uLiIpLmNvbmNhdCh0aGlzLnJlZmVyZW5jZVZhcmlhYmxlKEEubGlzdCksIi52YWx1ZV07XG4iKSx0aGlzLnNvdXJjZSs9InRocmVhZC5fbGlzdEZpbHRlckl0ZW0gPz89IFtdO1xuIix0aGlzLnNvdXJjZSs9InRocmVhZC5fbGlzdEZpbHRlckluZGV4ID8/PSBbXTtcbiIsdGhpcy5zb3VyY2UrPSd0aHJlYWQuX2xpc3RGaWx0ZXJJdGVtLnB1c2goIiIpO1xuJyx0aGlzLnNvdXJjZSs9InRocmVhZC5fbGlzdEZpbHRlckluZGV4LnB1c2goMCk7XG4iO2xldCBmPSJ0aHJlYWQuX2xpc3RGaWx0ZXJJbmRleFt0aHJlYWQuX2xpc3RGaWx0ZXJJbmRleC5sZW5ndGgtMV0iLE49InRocmVhZC5fbGlzdEZpbHRlckl0ZW1bdGhyZWFkLl9saXN0RmlsdGVySXRlbS5sZW5ndGgtMV0iO3RoaXMuc291cmNlKz0iZm9yICgiLmNvbmNhdChmLCIgPSAxOyAiKS5jb25jYXQoZiwiIDw9ICIpLmNvbmNhdChZLCIubGVuZ3RoOyAiKS5jb25jYXQoZiwiKyspIHtcbiIpLHRoaXMuc291cmNlKz0iICAgICIuY29uY2F0KE4sIiA9ICIpLmNvbmNhdChZLCJbIikuY29uY2F0KGYsIiAtIDFdO1xuIiksdGhpcy5zb3VyY2UrPSIgICAgaWYgKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuYm9vbCkuYXNCb29sZWFuKCksIikgIikuY29uY2F0KEYsIi5wdXNoKCIpLmNvbmNhdChOLCIpO1xuIiksdGhpcy5zb3VyY2UrPSJ9O1xuIix0aGlzLnNvdXJjZSs9IiIuY29uY2F0KHRoaXMucmVmZXJlbmNlVmFyaWFibGUoQS5saXN0KSwiLnZhbHVlID0gIikuY29uY2F0KEYsIjtcbiIpLHRoaXMuc291cmNlKz0idGhyZWFkLl9saXN0RmlsdGVySXRlbS5wb3AoKTtcbiIsdGhpcy5zb3VyY2UrPSJ0aHJlYWQuX2xpc3RGaWx0ZXJJbmRleC5wb3AoKTtcbiI7YnJlYWs7Y2FzZSJsb29rcy5iYWNrd2FyZExheWVycyI6dGhpcy50YXJnZXQuaXNTdGFnZXx8KHRoaXMuc291cmNlKz0idGFyZ2V0LmdvQmFja3dhcmRMYXllcnMoIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5sYXllcnMpLmFzTnVtYmVyKCksIik7XG4iKSk7YnJlYWs7Y2FzZSJsb29rcy5jbGVhckVmZmVjdHMiOnRoaXMuc291cmNlKz0idGFyZ2V0LmNsZWFyRWZmZWN0cygpO1xucnVudGltZS5leHRfc2NyYXRjaDNfbG9va3MuX3Jlc2V0QnViYmxlcyh0YXJnZXQpXG4iO2JyZWFrO2Nhc2UibG9va3MuY2hhbmdlRWZmZWN0Ijp0aGlzLnRhcmdldC5lZmZlY3RzLmhhc093blByb3BlcnR5KEEuZWZmZWN0KSYmKHRoaXMuc291cmNlKz0ndGFyZ2V0LnNldEVmZmVjdCgiJy5jb25jYXQoUShBLmVmZmVjdCksJyIsIHJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2xvb2tzLmNsYW1wRWZmZWN0KCInKS5jb25jYXQoUShBLmVmZmVjdCksJyIsICcpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnZhbHVlKS5hc051bWJlcigpLCcgKyB0YXJnZXQuZWZmZWN0c1siJykuY29uY2F0KFEoQS5lZmZlY3QpLCciXSkpO1xuJykpO2JyZWFrO2Nhc2UibG9va3MuY2hhbmdlU2l6ZSI6dGhpcy5zb3VyY2UrPSJ0YXJnZXQuc2V0U2l6ZSh0YXJnZXQuc2l6ZSArICIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuc2l6ZSkuYXNOdW1iZXIoKSwiKTtcbiIpO2JyZWFrO2Nhc2UibG9va3MuZm9yd2FyZExheWVycyI6dGhpcy50YXJnZXQuaXNTdGFnZXx8KHRoaXMuc291cmNlKz0idGFyZ2V0LmdvRm9yd2FyZExheWVycygiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmxheWVycykuYXNOdW1iZXIoKSwiKTtcbiIpKTticmVhaztjYXNlImxvb2tzLmdvVG9CYWNrIjp0aGlzLnRhcmdldC5pc1N0YWdlfHwodGhpcy5zb3VyY2UrPSJ0YXJnZXQuZ29Ub0JhY2soKTtcbiIpO2JyZWFrO2Nhc2UibG9va3MuZ29Ub0Zyb250Ijp0aGlzLnRhcmdldC5pc1N0YWdlfHwodGhpcy5zb3VyY2UrPSJ0YXJnZXQuZ29Ub0Zyb250KCk7XG4iKTticmVhaztjYXNlImxvb2tzLnRhcmdldEZyb250IjppZighdGhpcy50YXJnZXQuaXNTdGFnZSl7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLmxheWVycykuYXNTdHJpbmcoKSx0PXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpLG49dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCksaT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9ImNvbnN0ICIuY29uY2F0KHQsIiA9IHJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKCIpLmNvbmNhdChlLCIpO1xuIiksdGhpcy5zb3VyY2UrPSJpZiAoIi5jb25jYXQodCwiKSB7XG4iKSx0aGlzLnNvdXJjZSs9ImNvbnN0ICIuY29uY2F0KGksIiA9IHRhcmdldC5nZXRMYXllck9yZGVyKCk7XG4iKSx0aGlzLnNvdXJjZSs9ImNvbnN0ICIuY29uY2F0KG4sIiA9ICIpLmNvbmNhdCh0LCIuZ2V0TGF5ZXJPcmRlcigpO1xuIiksdGhpcy5zb3VyY2UrPSJpZiAoIi5jb25jYXQobiwiID4gIikuY29uY2F0KGksIikgdGFyZ2V0LmdvRm9yd2FyZExheWVycygiKS5jb25jYXQobiwiIC0gIikuY29uY2F0KGksIik7XG4iKSx0aGlzLnNvdXJjZSs9ImVsc2UgdGFyZ2V0LmdvRm9yd2FyZExheWVycygiLmNvbmNhdChuLCIgLSAiKS5jb25jYXQoaSwiICsgMSk7XG4iKSx0aGlzLnNvdXJjZSs9In1cbiJ9YnJlYWs7Y2FzZSJsb29rcy50YXJnZXRCYWNrIjppZighdGhpcy50YXJnZXQuaXNTdGFnZSl7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLmxheWVycykuYXNTdHJpbmcoKSx0PXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpLG49dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCksaT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTt0aGlzLnNvdXJjZSs9ImNvbnN0ICIuY29uY2F0KHQsIiA9IHJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKCIpLmNvbmNhdChlLCIpO1xuIiksdGhpcy5zb3VyY2UrPSJpZiAoIi5jb25jYXQodCwiKSB7XG4iKSx0aGlzLnNvdXJjZSs9ImNvbnN0ICIuY29uY2F0KGksIiA9IHRhcmdldC5nZXRMYXllck9yZGVyKCk7XG4iKSx0aGlzLnNvdXJjZSs9ImNvbnN0ICIuY29uY2F0KG4sIiA9ICIpLmNvbmNhdCh0LCIuZ2V0TGF5ZXJPcmRlcigpO1xuIiksdGhpcy5zb3VyY2UrPSJpZiAoIi5jb25jYXQobiwiID4gIikuY29uY2F0KGksIikgdGFyZ2V0LmdvRm9yd2FyZExheWVycygiKS5jb25jYXQobiwiIC0gIikuY29uY2F0KGksIiAtIDEpO1xuIiksdGhpcy5zb3VyY2UrPSJlbHNlIHRhcmdldC5nb0ZvcndhcmRMYXllcnMoIi5jb25jYXQobiwiIC0gIikuY29uY2F0KGksIik7XG4iKSx0aGlzLnNvdXJjZSs9In1cbiJ9YnJlYWs7Y2FzZSJsb29rcy5oaWRlIjp0aGlzLnNvdXJjZSs9InRhcmdldC5zZXRWaXNpYmxlKGZhbHNlKTtcbiIsdGhpcy5zb3VyY2UrPSJydW50aW1lLmV4dF9zY3JhdGNoM19sb29rcy5fcmVuZGVyQnViYmxlKHRhcmdldCk7XG4iO2JyZWFrO2Nhc2UibG9va3MubmV4dEJhY2tkcm9wIjp0aGlzLnNvdXJjZSs9InJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2xvb2tzLl9zZXRCYWNrZHJvcChzdGFnZSwgc3RhZ2UuY3VycmVudENvc3R1bWUgKyAxLCB0cnVlKTtcbiI7YnJlYWs7Y2FzZSJsb29rcy5uZXh0Q29zdHVtZSI6dGhpcy5zb3VyY2UrPSJ0YXJnZXQuc2V0Q29zdHVtZSh0YXJnZXQuY3VycmVudENvc3R1bWUgKyAxKTtcbiI7YnJlYWs7Y2FzZSJsb29rcy5zZXRFZmZlY3QiOnRoaXMudGFyZ2V0LmVmZmVjdHMuaGFzT3duUHJvcGVydHkoQS5lZmZlY3QpJiYodGhpcy5zb3VyY2UrPSd0YXJnZXQuc2V0RWZmZWN0KCInLmNvbmNhdChRKEEuZWZmZWN0KSwnIiwgcnVudGltZS5leHRfc2NyYXRjaDNfbG9va3MuY2xhbXBFZmZlY3QoIicpLmNvbmNhdChRKEEuZWZmZWN0KSwnIiwgJykuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzTnVtYmVyKCksIikpO1xuIikpO2JyZWFrO2Nhc2UibG9va3Muc2V0U2l6ZSI6dGhpcy5zb3VyY2UrPSJ0YXJnZXQuc2V0U2l6ZSgiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnNpemUpLmFzTnVtYmVyKCksIik7XG4iKTticmVhaztjYXNlImxvb2tzLnNldEZvbnQiOnRoaXMuc291cmNlKz0icnVudGltZS5leHRfc2NyYXRjaDNfbG9va3Muc2V0Rm9udCh7IGZvbnQ6ICIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuZm9udCkuYXNTdHJpbmcoKSwiLCBzaXplOiAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5zaXplKS5hc051bWJlcigpLCIgfSwgeyB0YXJnZXQ6IHRhcmdldCB9KTtcbiIpO2JyZWFrO2Nhc2UibG9va3Muc2V0Q29sb3IiOnRoaXMuc291cmNlKz0ncnVudGltZS5leHRfc2NyYXRjaDNfbG9va3Muc2V0Q29sb3IoeyBwcm9wOiAiJy5jb25jYXQoUShBLnByb3ApLCciLCBjb2xvcjogJykuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuY29sb3IpLmFzQ29sb3IoKSwiIH0sIHsgdGFyZ2V0OiB0YXJnZXQgfSk7XG4iKTticmVhaztjYXNlImxvb2tzLnNldFRpbnRDb2xvciI6dGhpcy5zb3VyY2UrPSJydW50aW1lLmV4dF9zY3JhdGNoM19sb29rcy5zZXRUaW50Q29sb3IoeyBjb2xvcjogIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5jb2xvcikuYXNDb2xvcigpLCIgfSwgeyB0YXJnZXQ6IHRhcmdldCB9KTtcbiIpO2JyZWFrO2Nhc2UibG9va3Muc2V0U2hhcGUiOnRoaXMuc291cmNlKz0ncnVudGltZS5leHRfc2NyYXRjaDNfbG9va3Muc2V0U2hhcGUoeyBwcm9wOiAiJy5jb25jYXQoUShBLnByb3ApLCciLCBjb2xvcjogJykuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLmFzQ29sb3IoKSwiIH0sIHsgdGFyZ2V0OiB0YXJnZXQgfSk7XG4iKTticmVhaztjYXNlImxvb2tzLnNob3ciOnRoaXMuc291cmNlKz0idGFyZ2V0LnNldFZpc2libGUodHJ1ZSk7XG4iLHRoaXMuc291cmNlKz0icnVudGltZS5leHRfc2NyYXRjaDNfbG9va3MuX3JlbmRlckJ1YmJsZSh0YXJnZXQpO1xuIjticmVhaztjYXNlImxvb2tzLnN3aXRjaEJhY2tkcm9wIjp0aGlzLnNvdXJjZSs9InJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2xvb2tzLl9zZXRCYWNrZHJvcChzdGFnZSwgIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5iYWNrZHJvcCkuYXNTYWZlKCksIik7XG4iKTticmVhaztjYXNlImxvb2tzLnN3aXRjaENvc3R1bWUiOnRoaXMuc291cmNlKz0icnVudGltZS5leHRfc2NyYXRjaDNfbG9va3MuX3NldENvc3R1bWUodGFyZ2V0LCAiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmNvc3R1bWUpLmFzU2FmZSgpLCIpO1xuIik7YnJlYWs7Y2FzZSJtb3Rpb24uY2hhbmdlWCI6dGhpcy5zb3VyY2UrPSJ0YXJnZXQuc2V0WFkodGFyZ2V0LnggKyAiLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmR4KS5hc051bWJlcigpLCIsIHRhcmdldC55KTtcbiIpO2JyZWFrO2Nhc2UibW90aW9uLmNoYW5nZVkiOnRoaXMuc291cmNlKz0idGFyZ2V0LnNldFhZKHRhcmdldC54LCB0YXJnZXQueSArICIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuZHkpLmFzTnVtYmVyKCksIik7XG4iKTticmVhaztjYXNlIm1vdGlvbi5pZk9uRWRnZUJvdW5jZSI6dGhpcy5zb3VyY2UrPSJydW50aW1lLmV4dF9zY3JhdGNoM19tb3Rpb24uX2lmT25FZGdlQm91bmNlKHRhcmdldCk7XG4iO2JyZWFrO2Nhc2UibW90aW9uLnNldERpcmVjdGlvbiI6dGhpcy5zb3VyY2UrPSJ0YXJnZXQuc2V0RGlyZWN0aW9uKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuZGlyZWN0aW9uKS5hc051bWJlcigpLCIpO1xuIik7YnJlYWs7Y2FzZSJtb3Rpb24uc2V0Um90YXRpb25TdHlsZSI6dGhpcy5zb3VyY2UrPSd0YXJnZXQuc2V0Um90YXRpb25TdHlsZSgiJy5jb25jYXQoUShBLnN0eWxlKSwnIik7XG4nKTticmVhaztjYXNlIm1vdGlvbi5zZXRYIjpjYXNlIm1vdGlvbi5zZXRZIjpjYXNlIm1vdGlvbi5zZXRYWSI6e3RoaXMuZGVzY2VuZGVkSW50b01vZHVsbz0hMTtjb25zdCBlPSJ4ImluIEE/dGhpcy5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpOiJ0YXJnZXQueCIsdD0ieSJpbiBBP3RoaXMuZGVzY2VuZElucHV0KEEueSkuYXNOdW1iZXIoKToidGFyZ2V0LnkiO3RoaXMuc291cmNlKz0idGFyZ2V0LnNldFhZKCIuY29uY2F0KGUsIiwgIikuY29uY2F0KHQsIik7XG4iKSx0aGlzLmRlc2NlbmRlZEludG9Nb2R1bG8mJih0aGlzLnNvdXJjZSs9ImlmICh0YXJnZXQuaW50ZXJwb2xhdGlvbkRhdGEpIHRhcmdldC5pbnRlcnBvbGF0aW9uRGF0YSA9IG51bGw7XG4iKTticmVha31jYXNlIm1vdGlvbi5zdGVwIjp0aGlzLnNvdXJjZSs9InJ1bnRpbWUuZXh0X3NjcmF0Y2gzX21vdGlvbi5fbW92ZVN0ZXBzKCIuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuc3RlcHMpLmFzTnVtYmVyKCksIiwgdGFyZ2V0KTtcbiIpO2JyZWFrO2Nhc2Uibm9vcCI6Y29uc29sZS53YXJuKCJ1bmV4cGVjdGVkIG5vb3AiKTticmVhaztjYXNlInBlbi5jbGVhciI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh1LCIuY2xlYXIoKTtcbiIpO2JyZWFrO2Nhc2UicGVuLmRvd24iOnRoaXMuc291cmNlKz0iIi5jb25jYXQodSwiLl9wZW5Eb3duKHRhcmdldCk7XG4iKTticmVhaztjYXNlInBlbi5jaGFuZ2VQYXJhbSI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh1LCIuX3NldE9yQ2hhbmdlQ29sb3JQYXJhbSgiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5wYXJhbSkuYXNTdHJpbmcoKSwiLCAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiLCAiKS5jb25jYXQobCwiLCB0cnVlKTtcbiIpO2JyZWFrO2Nhc2UicGVuLmNoYW5nZVNpemUiOnRoaXMuc291cmNlKz0iIi5jb25jYXQodSwiLl9jaGFuZ2VQZW5TaXplQnkoIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuc2l6ZSkuYXNOdW1iZXIoKSwiLCB0YXJnZXQpO1xuIik7YnJlYWs7Y2FzZSJwZW4ubGVnYWN5Q2hhbmdlSHVlIjp0aGlzLnNvdXJjZSs9IiIuY29uY2F0KHUsIi5fY2hhbmdlUGVuSHVlQnkoIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuaHVlKS5hc051bWJlcigpLCIsIHRhcmdldCk7XG4iKTticmVhaztjYXNlInBlbi5sZWdhY3lDaGFuZ2VTaGFkZSI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh1LCIuX2NoYW5nZVBlblNoYWRlQnkoIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuc2hhZGUpLmFzTnVtYmVyKCksIiwgdGFyZ2V0KTtcbiIpO2JyZWFrO2Nhc2UicGVuLmxlZ2FjeVNldEh1ZSI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh1LCIuX3NldFBlbkh1ZVRvTnVtYmVyKCIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLmh1ZSkuYXNOdW1iZXIoKSwiLCB0YXJnZXQpO1xuIik7YnJlYWs7Y2FzZSJwZW4ubGVnYWN5U2V0U2hhZGUiOnRoaXMuc291cmNlKz0iIi5jb25jYXQodSwiLl9zZXRQZW5TaGFkZVRvTnVtYmVyKCIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnNoYWRlKS5hc051bWJlcigpLCIsIHRhcmdldCk7XG4iKTticmVhaztjYXNlInBlbi5zZXRDb2xvciI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh1LCIuX3NldFBlbkNvbG9yVG9Db2xvcigiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5jb2xvcikuYXNDb2xvcigpLCIsIHRhcmdldCk7XG4iKTticmVhaztjYXNlInBlbi5zZXRQYXJhbSI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdCh1LCIuX3NldE9yQ2hhbmdlQ29sb3JQYXJhbSgiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5wYXJhbSkuYXNTdHJpbmcoKSwiLCAiKS5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiLCAiKS5jb25jYXQobCwiLCBmYWxzZSk7XG4iKTticmVhaztjYXNlInBlbi5zZXRTaXplIjp0aGlzLnNvdXJjZSs9IiIuY29uY2F0KHUsIi5fc2V0UGVuU2l6ZVRvKCIpLmNvbmNhdCh0aGlzLmRlc2NlbmRJbnB1dChBLnNpemUpLmFzTnVtYmVyKCksIiwgdGFyZ2V0KTtcbiIpO2JyZWFrO2Nhc2UicGVuLnN0YW1wIjp0aGlzLnNvdXJjZSs9IiIuY29uY2F0KHUsIi5fc3RhbXAodGFyZ2V0KTtcbiIpO2JyZWFrO2Nhc2UicGVuLnVwIjp0aGlzLnNvdXJjZSs9IiIuY29uY2F0KHUsIi5fcGVuVXAodGFyZ2V0KTtcbiIpO2JyZWFrO2Nhc2UicHJvY2VkdXJlcy5yZXR1cm4iOkEuaXNEZWZpbmVDbGlja2VkP3RoaXMucmV0aXJlKCk6dGhpcy5zb3VyY2UrPSJyZXR1cm4gIi5jb25jYXQodGhpcy5kZXNjZW5kSW5wdXQoQS5yZXR1cm4pLmFzVW5rbm93bigpLCI7XG4iKTticmVhaztjYXNlInByb2NlZHVyZXMuY2FsbCI6e2NvbnN0IGU9QS5jb2RlLHQ9QS52YXJpYW50LG49dGhpcy5pci5wcm9jZWR1cmVzW3RdO2lmKG51bGw9PT1uLnN0YWNrKWJyZWFrO3RoaXMuaXNXYXJwfHxlIT09dGhpcy5zY3JpcHQucHJvY2VkdXJlQ29kZXx8dGhpcy55aWVsZE5vdFdhcnAoKTtsZXQgaT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKTtpZih0aGlzLnNvdXJjZSs9ImxldCAiLmNvbmNhdChpLCIgPSAiKSxuLnlpZWxkcyYmKHRoaXMuc291cmNlKz0ieWllbGQqICIsIXRoaXMuc2NyaXB0LnlpZWxkcykpdGhyb3cgbmV3IEVycm9yKCJTY3JpcHQgdXNlcyB5aWVsZGluZyBwcm9jZWR1cmUgYnV0IGlzIG5vdCBtYXJrZWQgYXMgeWllbGRpbmcuIik7aWYodGhpcy5zb3VyY2UrPSd0aHJlYWQucHJvY2VkdXJlc1siJy5jb25jYXQoUSh0KSwnIl0oJyksbi5hcmd1bWVudHMubGVuZ3RoKXtjb25zdCBlPVtdO2Zvcihjb25zdCB0IG9mIEEuYXJndW1lbnRzKWlmKHQgaW5zdGFuY2VvZiBBcnJheSl7Y29uc3QgQT10aGlzLnNvdXJjZTt0aGlzLnNvdXJjZT0iZnVuY3Rpb24qKHRocmVhZCwgdGFyZ2V0LCBydW50aW1lLCBzdGFnZSkgeyI7Y29uc3QgaT10aGlzLmlzV2FycDt0aGlzLmlzV2FycD1uLmlzV2FycCx0aGlzLmRlc2NlbmRTdGFjayh0LG5ldyBEKCExLHZvaWQgMCwhMCkpLHRoaXMuaXNXYXJwPWksdGhpcy5zb3VyY2UrPSJ9IixlLnB1c2godGhpcy5zb3VyY2UpLHRoaXMuc291cmNlPUF9ZWxzZSBlLnB1c2godGhpcy5kZXNjZW5kSW5wdXQodCkuYXNTYWZlKCkpO3RoaXMuc291cmNlKz1lLmpvaW4oIiwiKX10aGlzLnNvdXJjZSs9Iik7XG4iO2NvbnN0IHI9dGhpcy5pci5wcm9jZWR1cmVzW3RoaXMuc2NyaXB0LnByb2NlZHVyZVZhcmlhbnRdO2lmKHImJiFyLnJldHVybnMmJih0aGlzLnNvdXJjZSs9ImlmICgiLmNvbmNhdChpLCIpIHsgcmV0dXJuICIpLmNvbmNhdChpLCI7IH07XG4iKSksImhhdCI9PT1BLnR5cGUpdGhyb3cgbmV3IEVycm9yKCJDdXN0b20gaGF0IGJsb2NrcyBhcmUgbm90IHN1cHBvcnRlZCIpO3RoaXMucmVzZXRWYXJpYWJsZUlucHV0cygpO2JyZWFrfWNhc2UidGltZXIucmVzZXQiOnRoaXMuc291cmNlKz0icnVudGltZS5pb0RldmljZXMuY2xvY2sucmVzZXRQcm9qZWN0VGltZXIoKTtcbiI7YnJlYWs7Y2FzZSJ0dy5kZWJ1Z2dlciI6dGhpcy5zb3VyY2UrPSJkZWJ1Z2dlcjtcbiI7YnJlYWs7Y2FzZSJ2YXIuaGlkZSI6dGhpcy5zb3VyY2UrPSdydW50aW1lLm1vbml0b3JCbG9ja3MuY2hhbmdlQmxvY2soeyBpZDogIicuY29uY2F0KFEoQS52YXJpYWJsZS5pZCksJyIsIGVsZW1lbnQ6ICJjaGVja2JveCIsIHZhbHVlOiBmYWxzZSB9LCBydW50aW1lKTtcbicpO2JyZWFrO2Nhc2UidmFyLnNldCI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kVmFyaWFibGUoQS52YXJpYWJsZSksdD10aGlzLmRlc2NlbmRJbnB1dChBLnZhbHVlKTtlLnNldElucHV0KHQpLHRoaXMuc291cmNlKz0iIi5jb25jYXQoZS5zb3VyY2UsIiA9ICIpLmNvbmNhdCh0LmFzU2FmZSgpLCI7XG4iKSxBLnZhcmlhYmxlLmlzQ2xvdWQmJih0aGlzLnNvdXJjZSs9J3J1bnRpbWUuaW9EZXZpY2VzLmNsb3VkLnJlcXVlc3RVcGRhdGVWYXJpYWJsZSgiJy5jb25jYXQoUShBLnZhcmlhYmxlLm5hbWUpLCciLCAnKS5jb25jYXQoZS5zb3VyY2UsIik7XG4iKSk7YnJlYWt9Y2FzZSJ2YXIuc2hvdyI6dGhpcy5zb3VyY2UrPSdydW50aW1lLm1vbml0b3JCbG9ja3MuY2hhbmdlQmxvY2soeyBpZDogIicuY29uY2F0KFEoQS52YXJpYWJsZS5pZCksJyIsIGVsZW1lbnQ6ICJjaGVja2JveCIsIHZhbHVlOiB0cnVlIH0sIHJ1bnRpbWUpO1xuJyk7YnJlYWs7Y2FzZSJ2aXN1YWxSZXBvcnQiOntjb25zdCBlPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpO3RoaXMuc291cmNlKz0iY29uc3QgIi5jb25jYXQoZSwiID0gIikuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KEEuaW5wdXQsITApLmFzVW5rbm93bigpLCI7XG4iKSx0aGlzLnNvdXJjZSs9ImlmICgiLmNvbmNhdChlLCcgIT09IHVuZGVmaW5lZCkgcnVudGltZS52aXN1YWxSZXBvcnQoIicpLmNvbmNhdChRKHRoaXMuc2NyaXB0LnRvcEJsb2NrSWQpLCciLCAnKS5jb25jYXQoZSwiKTtcbiIpO2JyZWFrfWNhc2Uic2Vuc2luZy5zZXQub2YiOntjb25zdCBlPXRoaXMuZGVzY2VuZElucHV0KEEub2JqZWN0KSx0PXRoaXMuZGVzY2VuZElucHV0KEEudmFsdWUpLG49QS5wcm9wZXJ0eSxpPSJfc3RhZ2VfIj09PUEub2JqZWN0LnZhbHVlLHI9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCk7c3dpdGNoKHRoaXMuc291cmNlKz0idmFyICIuY29uY2F0KHIsIiA9ICIpLmNvbmNhdChpPyJzdGFnZSI6InJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKCIuY29uY2F0KGUuYXNTdHJpbmcoKSwiKSIpLCI7XG4iKSx0aGlzLnNvdXJjZSs9ImlmICgiLmNvbmNhdChyLCIpIiksbil7Y2FzZSJ2b2x1bWUiOnRoaXMuc291cmNlKz0icnVudGltZS5leHRfc2NyYXRjaDNfc291bmQuX3VwZGF0ZVZvbHVtZSgiLmNvbmNhdCh0LmFzTnVtYmVyKCksIiwgIikuY29uY2F0KHIsIik7XG4iKTticmVhaztjYXNlInggcG9zaXRpb24iOnRoaXMuc291cmNlKz0iIi5jb25jYXQociwiLnNldFhZKCIpLmNvbmNhdCh0LmFzTnVtYmVyKCksIiwgIikuY29uY2F0KHIsIi55KTtcbiIpO2JyZWFrO2Nhc2UieSBwb3NpdGlvbiI6dGhpcy5zb3VyY2UrPSIiLmNvbmNhdChyLCIuc2V0WFkoIikuY29uY2F0KHIsIi54LCAiKS5jb25jYXQodC5hc051bWJlcigpLCIpO1xuIik7YnJlYWs7Y2FzZSJkaXJlY3Rpb24iOnRoaXMuc291cmNlKz0iIi5jb25jYXQociwiLnNldERpcmVjdGlvbigiKS5jb25jYXQodC5hc051bWJlcigpLCIpO1xuIik7YnJlYWs7Y2FzZSJjb3N0dW1lIjpjb25zdCBBPTE9PT10LnR5cGU/dC5hc051bWJlcigpOnQuYXNTdHJpbmcoKTt0aGlzLnNvdXJjZSs9InJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2xvb2tzLl9zZXRDb3N0dW1lKCIuY29uY2F0KHIsIiwgIikuY29uY2F0KEEsIik7XG4iKTticmVhaztjYXNlImJhY2tkcm9wIjpjb25zdCBlPTE9PT10LnR5cGU/dC5hc051bWJlcigpOnQuYXNTdHJpbmcoKTt0aGlzLnNvdXJjZSs9InJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2xvb2tzLl9zZXRCYWNrZHJvcCgiLmNvbmNhdChyLCIsICIpLmNvbmNhdChlLCIpO1xuIik7YnJlYWs7Y2FzZSJzaXplIjp0aGlzLnNvdXJjZSs9IiIuY29uY2F0KHIsIi5zZXRTaXplKCIpLmNvbmNhdCh0LmFzTnVtYmVyKCksIik7XG4iKTticmVhaztkZWZhdWx0OmNvbnN0IGk9dGhpcy5sb2NhbFZhcmlhYmxlcy5uZXh0KCk7dGhpcy5zb3VyY2UrPSJ7XG5jb25zdCAiLmNvbmNhdChpLCIgPSAiKS5jb25jYXQociwiID8gIikuY29uY2F0KHIsJy5sb29rdXBWYXJpYWJsZUJ5TmFtZUFuZFR5cGUoIicpLmNvbmNhdChRKG4pLCciLCAiIiwgdHJ1ZSkgOiAiIjtcbicpLHRoaXMuc291cmNlKz0iaWYgKCIuY29uY2F0KGksIikgIiksdGhpcy5zb3VyY2UrPSIiLmNvbmNhdChpLCIudmFsdWUgPSAiKS5jb25jYXQodC5hc1N0cmluZygpLCI7XG59XG4iKX1icmVha31jYXNlInRlbXBWYXJzLnNldCI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXQoQS52YXIpLmFzU3RyaW5nKCksdD10aGlzLmRlc2NlbmRJbnB1dChBLnZhbCkuYXNVbmtub3duKCksbj1BLnJ1bnRpbWU/InJ1bnRpbWUudmFyaWFibGVzIjpBLnRocmVhZD8idGhyZWFkLnZhcmlhYmxlcyI6InRlbXBWYXJzIjt0aGlzLnNvdXJjZSs9dGhpcy5pc09wdGltaXplZD8iIi5jb25jYXQobiwiWyIpLmNvbmNhdChlLCJdID0gIikuY29uY2F0KHQsIjtcbiIpOiJzZXQoIi5jb25jYXQobiwiLCAiKS5jb25jYXQoZSwiLCAiKS5jb25jYXQodCwiKTtcbiIpO2JyZWFrfWNhc2UidGVtcFZhcnMuY2hhbmdlIjp7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLnZhcikuYXNTdHJpbmcoKSx0PXRoaXMuZGVzY2VuZElucHV0KEEudmFsKS5hc051bWJlcigpLG49QS5ydW50aW1lPyJydW50aW1lLnZhcmlhYmxlcyI6QS50aHJlYWQ/InRocmVhZC52YXJpYWJsZXMiOiJ0ZW1wVmFycyI7dGhpcy5zb3VyY2UrPXRoaXMuaXNPcHRpbWl6ZWQ/IiIuY29uY2F0KG4sIlsiKS5jb25jYXQoZSwiXSA9IE51bWJlcigiKS5jb25jYXQobiwiWyIpLmNvbmNhdChlLCJdKSArICIpLmNvbmNhdCh0LCI7XG4iKToic2V0KCIuY29uY2F0KG4sIiwgIikuY29uY2F0KGUsIiwgTnVtYmVyKGdldCgiKS5jb25jYXQobiwiLCAiKS5jb25jYXQoZSwiKSkgKyAiKS5jb25jYXQodCwiKTtcbiIpO2JyZWFrfWNhc2UidGVtcFZhcnMuZGVsZXRlIjp7Y29uc3QgZT10aGlzLmRlc2NlbmRJbnB1dChBLnZhcikuYXNTdHJpbmcoKSx0PUEucnVudGltZT8icnVudGltZS52YXJpYWJsZXMiOkEudGhyZWFkPyJ0aHJlYWQudmFyaWFibGVzIjoidGVtcFZhcnMiO3RoaXMuc291cmNlKz10aGlzLmlzT3B0aW1pemVkPyJkZWxldGUgIi5jb25jYXQodCwiWyIpLmNvbmNhdChlLCJdO1xuIik6InJlbW92ZSgiLmNvbmNhdCh0LCIsICIpLmNvbmNhdChlLCIpO1xuIik7YnJlYWt9Y2FzZSJ0ZW1wVmFycy5kZWxldGVBbGwiOntjb25zdCBlPUEucnVudGltZT8icnVudGltZS52YXJpYWJsZXMiOkEudGhyZWFkPyJ0aHJlYWQudmFyaWFibGVzIjoidGVtcFZhcnMiO3RoaXMuc291cmNlKz0iIi5jb25jYXQoZSwiID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiIpO2JyZWFrfWNhc2UidGVtcFZhcnMuZm9yRWFjaCI6e2NvbnN0IGU9dGhpcy5kZXNjZW5kSW5wdXQoQS52YXIpLmFzU3RyaW5nKCksdD10aGlzLmRlc2NlbmRJbnB1dChBLmxvb3BzKS5hc051bWJlcigpLG49QS5ydW50aW1lPyJydW50aW1lLnZhcmlhYmxlcyI6QS50aHJlYWQ/InRocmVhZC52YXJpYWJsZXMiOiJ0ZW1wVmFycyIsaT10aGlzLmxvY2FsVmFyaWFibGVzLm5leHQoKSxyPXRoaXMubG9jYWxWYXJpYWJsZXMubmV4dCgpLG89dGhpcy5pc09wdGltaXplZD8iIi5jb25jYXQobiwiWyIpLmNvbmNhdChlLCJdIik6IiIuY29uY2F0KGksIlsiKS5jb25jYXQociwiXSIpO3RoaXMuaXNPcHRpbWl6ZWR8fCh0aGlzLnNvdXJjZSs9ImNvbnN0IFsiLmNvbmNhdChpLCIsIikuY29uY2F0KHIsIl0gPSBfcmVzb2x2ZUtleVBhdGgoIikuY29uY2F0KG4sIiwgIikuY29uY2F0KGUsIik7ICIpKSx0aGlzLnNvdXJjZSs9IiIuY29uY2F0KG8sIiA9IDA7ICIpLHRoaXMuc291cmNlKz0id2hpbGUgKCIuY29uY2F0KG8sIiA8ICIpLmNvbmNhdCh0LCIpIHsgIiksdGhpcy5zb3VyY2UrPSIiLmNvbmNhdChvLCIrKztcbiIpLHRoaXMuZGVzY2VuZFN0YWNrKEEuZG8sbmV3IEQoITAsInRlbXBWYXJzLmZvckVhY2giKSksdGhpcy5zY3JpcHQueWllbGRzJiZ0aGlzLnlpZWxkTG9vcCgpLHRoaXMuc291cmNlKz0ifVxuIjticmVha31jYXNlImNvbnRyb2wuZHVhbEJsb2NrIjp0aGlzLnNvdXJjZSs9J2NvbnNvbGUubG9nKCJkdWFsIGJsb2NrIHdvcmtzIik7XG4nO2JyZWFrO2RlZmF1bHQ6dGhyb3cgci53YXJuKCJKUzogVW5rbm93biBzdGFja2VkIGJsb2NrOiAiLmNvbmNhdChBLmtpbmQpLEEpLG5ldyBFcnJvcigiSlM6IFVua25vd24gc3RhY2tlZCBibG9jazogIi5jb25jYXQoQS5raW5kKSl9fWRlc2NlbmRJbnB1dFJlY29yZChBKXtsZXQgZT0ieyI7Zm9yKGNvbnN0IHQgb2YgT2JqZWN0LmtleXMoQSkpe2NvbnN0IG49QVt0XTtlKz0nIicuY29uY2F0KFEodCksJyI6JykuY29uY2F0KHRoaXMuZGVzY2VuZElucHV0KG4pLmFzU2FmZSgpLCIsIil9cmV0dXJuIGUrPSJ9IixlfXJlc2V0VmFyaWFibGVJbnB1dHMoKXt0aGlzLnZhcmlhYmxlSW5wdXRzPXt9fWRlc2NlbmRTdGFjayhBLGUpe3RoaXMucmVzZXRWYXJpYWJsZUlucHV0cygpLGUuYXNzaWduRGF0YSh0aGlzLmN1cnJlbnRGcmFtZSksdGhpcy5wdXNoRnJhbWUoZSk7Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0KyspZS5pc0xhc3RCbG9jaz10PT09QS5sZW5ndGgtMSx0aGlzLmRlc2NlbmRTdGFja2VkQmxvY2soQVt0XSk7dGhpcy5yZXNldFZhcmlhYmxlSW5wdXRzKCksdGhpcy5wb3BGcmFtZSgpfWRlc2NlbmRWYXJpYWJsZShBKXtpZih0aGlzLnZhcmlhYmxlSW5wdXRzLmhhc093blByb3BlcnR5KEEuaWQpKXJldHVybiB0aGlzLnZhcmlhYmxlSW5wdXRzW0EuaWRdO2NvbnN0IGU9bmV3IG0oIiIuY29uY2F0KHRoaXMucmVmZXJlbmNlVmFyaWFibGUoQSksIi52YWx1ZSIpKTtyZXR1cm4gdGhpcy52YXJpYWJsZUlucHV0c1tBLmlkXT1lLGV9cmVmZXJlbmNlVmFyaWFibGUoQSl7cmV0dXJuInRhcmdldCI9PT1BLnNjb3BlP3RoaXMuZXZhbHVhdGVPbmNlKCd0YXJnZXQudmFyaWFibGVzWyInLmNvbmNhdChRKEEuaWQpLCciXScpKTp0aGlzLmV2YWx1YXRlT25jZSgnc3RhZ2UudmFyaWFibGVzWyInLmNvbmNhdChRKEEuaWQpLCciXScpKX1ldmFsdWF0ZU9uY2UoQSl7aWYodGhpcy5fc2V0dXBWYXJpYWJsZXMuaGFzT3duUHJvcGVydHkoQSkpcmV0dXJuIHRoaXMuX3NldHVwVmFyaWFibGVzW0FdO2NvbnN0IGU9dGhpcy5fc2V0dXBWYXJpYWJsZXNQb29sLm5leHQoKTtyZXR1cm4gdGhpcy5fc2V0dXBWYXJpYWJsZXNbQV09ZSxlfXJldGlyZSgpe3RoaXMuaXNQcm9jZWR1cmUmJnRoaXMuc2NyaXB0LnlpZWxkcz90aGlzLnNvdXJjZSs9InJldGlyZSgpOyB5aWVsZDtcbiI6dGhpcy5zb3VyY2UrPSJyZXRpcmUoKTsgcmV0dXJuO1xuIn15aWVsZExvb3AoKXt0aGlzLndhcnBUaW1lcj90aGlzLnlpZWxkU3R1Y2tPck5vdFdhcnAoKTp0aGlzLnlpZWxkTm90V2FycCgpfXlpZWxkTm90V2FycCgpe3RoaXMuaXNXYXJwfHwodGhpcy5zb3VyY2UrPSJ5aWVsZDtcbiIsdGhpcy55aWVsZGVkKCkpfXlpZWxkU3R1Y2tPck5vdFdhcnAoKXt0aGlzLmlzV2FycD90aGlzLnNvdXJjZSs9ImlmIChpc1N0dWNrKCkpIHlpZWxkO1xuIjp0aGlzLnNvdXJjZSs9InlpZWxkO1xuIix0aGlzLnlpZWxkZWQoKX15aWVsZGVkKCl7aWYoIXRoaXMuc2NyaXB0LnlpZWxkcyl0aHJvdyBuZXcgRXJyb3IoIlNjcmlwdCB5aWVsZGVkIGJ1dCBpcyBub3QgbWFya2VkIGFzIHlpZWxkaW5nLiIpO3RoaXMucmVzZXRWYXJpYWJsZUlucHV0cygpfXJlcXVlc3RSZWRyYXcoKXt0aGlzLnNvdXJjZSs9InJ1bnRpbWUucmVxdWVzdFJlZHJhdygpO1xuIn1zYWZlQ29uc3RhbnRJbnB1dChBKXtjb25zdCBlPSJzdHJpbmciPT10eXBlb2YgQSYmdGhpcy5uYW1lc09mQ29zdHVtZXNBbmRTb3VuZHMuaGFzKEEpO3JldHVybiBuZXcgcChBLCFlKX1nZW5lcmF0ZUNvbXBhdGliaWxpdHlMYXllckNhbGwoQSxlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bnVsbCxuPWFyZ3VtZW50cy5sZW5ndGg+Mz9hcmd1bWVudHNbM106dm9pZCAwO2NvbnN0IGk9QS5vcGNvZGU7bGV0IHI9InlpZWxkKiBleGVjdXRlSW5Db21wYXRpYmlsaXR5TGF5ZXIoeyI7Zm9yKGNvbnN0IGUgb2YgT2JqZWN0LmtleXMoQS5pbnB1dHMpKXtjb25zdCB0PUEuaW5wdXRzW2VdO2lmKGUuc3RhcnRzV2l0aCgic3Vic3RhY2siKSl7cis9JyInLmNvbmNhdChRKGUudG9Mb3dlckNhc2UoKSksJyI6KGZ1bmN0aW9uKiAoKSB7XG4nKSx0aGlzLmRlc2NlbmRTdGFjayh0LG5ldyBEKCEwLGkpKSxyKz0ifSksIjtjb250aW51ZX1jb25zdCBuPXRoaXMuZGVzY2VuZElucHV0KHQpLmFzU2FmZSgpO3IrPSciJy5jb25jYXQoUShlKSwnIjonKS5jb25jYXQobiwiLCIpfWZvcihjb25zdCBlIG9mIE9iamVjdC5rZXlzKEEuZmllbGRzKSl7Y29uc3QgdD1BLmZpZWxkc1tlXTsic3RyaW5nIj09dHlwZW9mIHQ/cis9JyInLmNvbmNhdChRKGUpLCciOiInKS5jb25jYXQoUSh0KSwnIiwnKTpyKz0nIicuY29uY2F0KFEoZSksJyI6JykuY29uY2F0KEpTT04uc3RyaW5naWZ5KHQpLCIsIil9cis9JyJtdXRhdGlvbiI6Jy5jb25jYXQoSlNPTi5zdHJpbmdpZnkoQS5tdXRhdGlvbiksIiwiKTtjb25zdCBvPXRoaXMuZXZhbHVhdGVPbmNlKCdydW50aW1lLmdldE9wY29kZUZ1bmN0aW9uKCInLmNvbmNhdChRKGkpLCciKScpKTtyZXR1cm4gcis9In0sICIuY29uY2F0KG8sIiwgIikuY29uY2F0KHRoaXMuaXNXYXJwLCIsICIpLmNvbmNhdChlLCcsICInKS5jb25jYXQoUShBLmlkKSwnIiwgJykuY29uY2F0KHQsIiwgIikuY29uY2F0KG4sIikiKSxyfWdldFNjcmlwdEZhY3RvcnlOYW1lKCl7cmV0dXJuIEMubmV4dCgpfWdldFNjcmlwdE5hbWUoQSl7bGV0IGU9QT9NLm5leHQoKTpJLm5leHQoKTtpZih0aGlzLmlzUHJvY2VkdXJlKXtjb25zdCBBPXRoaXMuc2NyaXB0LnByb2NlZHVyZUNvZGUucmVwbGFjZSgvJVtcd10vZywiIikucmVwbGFjZSgvW15hLXpBLVowLTldL2csIl8iKS5zdWJzdHJpbmcoMCwyMCk7ZSs9Il8iLmNvbmNhdChBKX1yZXR1cm4gZX1jcmVhdGVTY3JpcHRGYWN0b3J5KCl7bGV0IEE9IiI7QSs9IihmdW5jdGlvbiAiLmNvbmNhdCh0aGlzLmdldFNjcmlwdEZhY3RvcnlOYW1lKCksIih0aHJlYWQpIHsgIiksQSs9ImxldCBfX3RhcmdldCA9IHRocmVhZC50YXJnZXQ7ICIsQSs9ImxldCB0YXJnZXQgPSBfX3RhcmdldDsgIixBKz0iY29uc3QgcnVudGltZSA9IF9fdGFyZ2V0LnJ1bnRpbWU7ICIsQSs9ImNvbnN0IHN0YWdlID0gcnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO1xuIjtmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyh0aGlzLl9zZXR1cFZhcmlhYmxlcykpe2NvbnN0IHQ9dGhpcy5fc2V0dXBWYXJpYWJsZXNbZV07QSs9ImNvbnN0ICIuY29uY2F0KHQsIiA9ICIpLmNvbmNhdChlLCI7XG4iKX1pZihBKz0icmV0dXJuICIsdGhpcy5zY3JpcHQueWllbGRzP0ErPSJmdW5jdGlvbiogIjpBKz0iZnVuY3Rpb24gIixBKz10aGlzLmdldFNjcmlwdE5hbWUodGhpcy5zY3JpcHQueWllbGRzKSxBKz0iICgiLHRoaXMuc2NyaXB0LmFyZ3VtZW50cy5sZW5ndGgpe2NvbnN0IGU9W107Zm9yKGxldCBBPTA7QTx0aGlzLnNjcmlwdC5hcmd1bWVudHMubGVuZ3RoO0ErKyllLnB1c2goInAiLmNvbmNhdChBKSk7QSs9ZS5qb2luKCIsIil9cmV0dXJuIEErPSIpIHtcbiIsQSs9ImxldCB0ZW1wVmFycyA9IE9iamVjdC5jcmVhdGUobnVsbCk7IixBKz0ibGV0IHRhcmdldCA9IF9fdGFyZ2V0O1xuIixBKz0iaWYgKHRocmVhZC5zcG9vZmluZykge1xuIixBKz0idGFyZ2V0ID0gdGhyZWFkLnNwb29mVGFyZ2V0O1xuIixBKz0ifTtcbiIsQSs9InRyeSB7XG4iLEErPXRoaXMuc291cmNlLEErPSJ9IGNhdGNoIChlcnIpIHsiLEErPSdjb25zb2xlLmxvZygiJy5jb25jYXQoUShBKSwnIik7XG4nKSxBKz0iY29uc29sZS5lcnJvcihlcnIpOyIsQSs9J3J1bnRpbWUuZW1pdCgiQkxPQ0tfU1RBQ0tfRVJST1IiLCB7JyxBKz0naWQ6IicuY29uY2F0KFEodGhpcy5zY3JpcHQudG9wQmxvY2tJZCksJyIsJyksQSs9InZhbHVlOlN0cmluZyhlcnIpIixBKz0ifSk7XG4iLEErPSJ9XG4iLHRoaXMuaXNQcm9jZWR1cmV8fChBKz0icmV0aXJlKCk7XG4iKSxBKz0ifTsgfSkiLEF9Y29tcGlsZSgpe3RoaXMuc2NyaXB0LnN0YWNrJiZ0aGlzLmRlc2NlbmRTdGFjayh0aGlzLnNjcmlwdC5zdGFjayxuZXcgRCghMSkpO2NvbnN0IEE9dGhpcy5jcmVhdGVTY3JpcHRGYWN0b3J5KCksZT1CLnNjb3BlZEV2YWwoQSk7cmV0dXJuIHRoaXMuZGVidWcmJnIuaW5mbygiSlM6ICIuY29uY2F0KHRoaXMudGFyZ2V0LmdldE5hbWUoKSwiOiBjb21waWxlZCAiKS5jb25jYXQodGhpcy5zY3JpcHQucHJvY2VkdXJlQ29kZXx8InNjcmlwdCIpLEEpLFkudGVzdGluZ0FwcGFyYXR1cyYmWS50ZXN0aW5nQXBwYXJhdHVzLnJlcG9ydCh0aGlzLEEpLGV9fW49WSxpKFksImV4cG9ydHMiLHtUeXBlZElucHV0OmQsQ29uc3RhbnRJbnB1dDpwLFZhcmlhYmxlSW5wdXQ6bSxGcmFtZTpELFZhcmlhYmxlUG9vbDphLFRZUEVfTlVNQkVSOjEsVFlQRV9TVFJJTkc6MixUWVBFX0JPT0xFQU46MyxUWVBFX1VOS05PV046NCxUWVBFX05VTUJFUl9OQU46NSxQRU5fRVhUOnUsUEVOX1NUQVRFOmwsZmFjdG9yeU5hbWVWYXJpYWJsZVBvb2w6QyxmdW5jdGlvbk5hbWVWYXJpYWJsZVBvb2w6SSxnZW5lcmF0b3JOYW1lVmFyaWFibGVQb29sOk0sc2FuaXRpemU6UX0pLGkoWSwidW5zdGFibGVfZXhwb3J0cyIsbi5leHBvcnRzKSxpKFksIl9leHRlbnNpb25KU0luZm8iLHt9KSxZLnRlc3RpbmdBcHBhcmF0dXM9bnVsbCxBLmV4cG9ydHM9WX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg1OSksaT10KDk0KSxyPXQoNSksbz10KDM2KSx7TWFwOnN9PXQoMzQpLGE9dCgyKSxCPW5ldyBuO2xldCBjPS0xO2NvbnN0IGc9ZnVuY3Rpb24oQSxlLHQsbixpKXtjb25zdCByPW4uaWQsYT1uLm9wY29kZSxCPW4uX2lzSGF0O2lmKHQucHVzaFJlcG9ydGVkVmFsdWUoQSksQilpZih0LnN0YWNrQ2xpY2spdC5zdGF0dXM9by5TVEFUVVNfUlVOTklORztlbHNlIGlmKGUucnVudGltZS5nZXRJc0VkZ2VBY3RpdmF0ZWRIYXQoYSkpe2NvbnN0IG49dC50YXJnZXQuaGFzRWRnZUFjdGl2YXRlZFZhbHVlKHIpLGk9dC50YXJnZXQudXBkYXRlRWRnZUFjdGl2YXRlZFZhbHVlKHIsQSk7KG4/IWkmJkE6QSk/dC5zdGF0dXM9by5TVEFUVVNfUlVOTklORzplLnJldGlyZVRocmVhZCh0KX1lbHNlIEE/dC5zdGF0dXM9by5TVEFUVVNfUlVOTklORzplLnJldGlyZVRocmVhZCh0KTtlbHNle2lmKGkmJnZvaWQgMCE9PUEmJnQuYXRTdGFja1RvcCgpJiYodC5zdGFja0NsaWNrJiZlLnJ1bnRpbWUudmlzdWFsUmVwb3J0KHIsQSksdC51cGRhdGVNb25pdG9yKSl7Y29uc3QgdD1lLnJ1bnRpbWUubW9uaXRvckJsb2Nrcy5nZXRCbG9jayhyKS50YXJnZXRJZDtpZih0JiYhZS5ydW50aW1lLmdldFRhcmdldEJ5SWQodCkpcmV0dXJuO2UucnVudGltZS5yZXF1ZXN0VXBkYXRlTW9uaXRvcihzKHtpZDpyLHNwcml0ZU5hbWU6dD9lLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZCh0KS5nZXROYW1lKCk6bnVsbCx2YWx1ZTpBfSkpfXQuc3RhdHVzPW8uU1RBVFVTX1JVTk5JTkd9fSxFPShBLGUsdCxuLGkpPT57dC5zdGF0dXM9PT1vLlNUQVRVU19SVU5OSU5HJiYodC5zdGF0dXM9by5TVEFUVVNfUFJPTUlTRV9XQUlUKSxBLnRoZW4oQT0+e2lmKGcoQSxlLHQsbixpKSxpJiYoIW4uX2lzSGF0fHx0LnN0YWNrQ2xpY2spKXtsZXQgQSxlO2Rve2NvbnN0IG49dC5wb3BTdGFjaygpO2lmKG51bGw9PT1uKXJldHVybjtpZihlPXQudGFyZ2V0LmJsb2Nrcy5nZXROZXh0QmxvY2sobiksbnVsbCE9PWUpYnJlYWs7QT10LnBlZWtTdGFja0ZyYW1lKCl9d2hpbGUobnVsbCE9PUEmJiFBLmlzTG9vcCk7dC5wdXNoU3RhY2soZSl9fSxBPT57ci53YXJuKCJQcmltaXRpdmUgcmVqZWN0ZWQgcHJvbWlzZTogIixBKSx0LnN0YXR1cz1vLlNUQVRVU19SVU5OSU5HLHQucG9wU3RhY2soKX0pfTtjbGFzcyBRe2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5pZD1lLmlkLHRoaXMub3Bjb2RlPWUub3Bjb2RlLHRoaXMuZmllbGRzPWUuZmllbGRzLHRoaXMuaW5wdXRzPWUuaW5wdXRzLHRoaXMubXV0YXRpb249ZS5tdXRhdGlvbix0aGlzLl9wcm9maWxlcj1udWxsLHRoaXMuX3Byb2ZpbGVyRnJhbWU9bnVsbCx0aGlzLl9pc0hhdD0hMSx0aGlzLl9ibG9ja0Z1bmN0aW9uPW51bGwsdGhpcy5fZGVmaW5lZEJsb2NrRnVuY3Rpb249ITEsdGhpcy5faXNTaGFkb3dCbG9jaz0hMSx0aGlzLl9zaGFkb3dWYWx1ZT1udWxsLHRoaXMuX2ZpZWxkcz1PYmplY3QuYXNzaWduKHt9LHRoaXMuZmllbGRzKSx0aGlzLl9pbnB1dHM9T2JqZWN0LmFzc2lnbih7fSx0aGlzLmlucHV0cyksdGhpcy5fYXJnVmFsdWVzPXttdXRhdGlvbjp0aGlzLm11dGF0aW9ufSx0aGlzLl9wYXJlbnRLZXk9bnVsbCx0aGlzLl9wYXJlbnRWYWx1ZXM9bnVsbCx0aGlzLl9vcHM9W107Y29uc3R7cnVudGltZTp0fT1CLnNlcXVlbmNlcix7b3Bjb2RlOm4sZmllbGRzOnIsaW5wdXRzOm99PXRoaXM7dGhpcy5faXNIYXQ9dC5nZXRJc0hhdChuKSx0aGlzLl9ibG9ja0Z1bmN0aW9uPXQuZ2V0T3Bjb2RlRnVuY3Rpb24obiksdGhpcy5fZGVmaW5lZEJsb2NrRnVuY3Rpb249dm9pZCAwIT09dGhpcy5fYmxvY2tGdW5jdGlvbjtjb25zdCBzPU9iamVjdC5rZXlzKHIpO3RoaXMuX2lzU2hhZG93QmxvY2s9IXRoaXMuX2RlZmluZWRCbG9ja0Z1bmN0aW9uJiYxPT09cy5sZW5ndGgmJjA9PT1PYmplY3Qua2V5cyhvKS5sZW5ndGgsdGhpcy5fc2hhZG93VmFsdWU9dGhpcy5faXNTaGFkb3dCbG9jayYmcltzWzBdXS52YWx1ZTtmb3IoY29uc3QgQSBpbiByKXtjb25zdCBlPXJbQV07InN0cmluZyI9PXR5cGVvZiBlLnZhcmlhYmxlVHlwZT90aGlzLl9hcmdWYWx1ZXNbQV09e2lkOmUuaWQsbmFtZTplLnZhbHVlfTp0aGlzLl9hcmdWYWx1ZXNbQV09ZS52YWx1ZX1pZihkZWxldGUgdGhpcy5faW5wdXRzLmN1c3RvbV9ibG9jaywiQlJPQURDQVNUX0lOUFVUImluIHRoaXMuX2lucHV0cyl7dGhpcy5fYXJnVmFsdWVzLkJST0FEQ0FTVF9PUFRJT049e2lkOm51bGwsbmFtZTpudWxsfTtjb25zdCBlPXRoaXMuX2lucHV0cy5CUk9BRENBU1RfSU5QVVQ7aWYoZS5ibG9jaz09PWUuc2hhZG93KXtjb25zdCB0PUEuZ2V0QmxvY2soZS5zaGFkb3cpLmZpZWxkcy5CUk9BRENBU1RfT1BUSU9OO3RoaXMuX2FyZ1ZhbHVlcy5CUk9BRENBU1RfT1BUSU9OLmlkPXQuaWQsdGhpcy5fYXJnVmFsdWVzLkJST0FEQ0FTVF9PUFRJT04ubmFtZT10LnZhbHVlLGRlbGV0ZSB0aGlzLl9pbnB1dHMuQlJPQURDQVNUX0lOUFVUfX1mb3IoY29uc3QgZSBpbiB0aGlzLl9pbnB1dHMpe2NvbnN0IHQ9dGhpcy5faW5wdXRzW2VdO2lmKHQuYmxvY2spe2NvbnN0IG49aS5nZXRDYWNoZWQoQSx0LmJsb2NrLFEpO2lmKG4uX2lzSGF0KWNvbnRpbnVlO3RoaXMuX29wcy5wdXNoKC4uLm4uX29wcyksbi5fcGFyZW50S2V5PWUsbi5fcGFyZW50VmFsdWVzPXRoaXMuX2FyZ1ZhbHVlcyxuLl9pc1NoYWRvd0Jsb2NrJiYodGhpcy5fYXJnVmFsdWVzW2VdPW4uX3NoYWRvd1ZhbHVlKX19dGhpcy5fZGVmaW5lZEJsb2NrRnVuY3Rpb24mJnRoaXMuX29wcy5wdXNoKHRoaXMpfX1BLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtjb25zdCB0PUEucnVudGltZTtCLnNlcXVlbmNlcj1BLEIudGhyZWFkPWU7Y29uc3Qgbj1lLnBlZWtTdGFjaygpLHI9ZS5wZWVrU3RhY2tGcmFtZSgpO2xldCBzPWUuYmxvY2tDb250YWluZXIsdT1pLmdldENhY2hlZChzLG4sUSk7aWYobnVsbD09PXUmJihzPXQuZmx5b3V0QmxvY2tzLHU9aS5nZXRDYWNoZWQocyxuLFEpLG51bGw9PT11KSlyZXR1cm4gdm9pZCBBLnJldGlyZVRocmVhZChlKTtjb25zdCBsPXUuX29wcyxoPWwubGVuZ3RoO2xldCB3PTA7aWYobnVsbCE9PXIucmVwb3J0ZWQpe2NvbnN0IEE9ci5yZXBvcnRlZDtmb3IoO3c8QS5sZW5ndGg7dysrKXtjb25zdHtvcENhY2hlZDplLGlucHV0VmFsdWU6dH09QVt3XSxuPWwuZmluZChBPT5BLmlkPT09ZSk7aWYobil7Y29uc3QgQT1uLl9wYXJlbnRLZXksZT1uLl9wYXJlbnRWYWx1ZXM7IkJST0FEQ0FTVF9JTlBVVCI9PT1BPyhlLkJST0FEQ0FTVF9PUFRJT04uaWQ9bnVsbCxlLkJST0FEQ0FTVF9PUFRJT04ubmFtZT1hLnRvU3RyaW5nKHQpKTplW0FdPXR9fWlmKEEubGVuZ3RoPjApe2NvbnN0IGU9QS5yZXZlcnNlKCkuZmluZChBPT5sLmZpbmQoZT0+ZS5pZD09PUEub3BDYWNoZWQpKTt3PWU/bC5maW5kSW5kZXgoQT0+QS5pZD09PWUub3BDYWNoZWQpKzE6MH1pZihudWxsIT09ZS5qdXN0UmVwb3J0ZWQmJmxbd10mJmxbd10uaWQ9PT1yLnJlcG9ydGluZyl7Y29uc3QgQT1sW3ddLHQ9ZS5qdXN0UmVwb3J0ZWQ7ZS5qdXN0UmVwb3J0ZWQ9bnVsbDtjb25zdCBuPUEuX3BhcmVudEtleSxpPUEuX3BhcmVudFZhbHVlczsiQlJPQURDQVNUX0lOUFVUIj09PW4/KGkuQlJPQURDQVNUX09QVElPTi5pZD1udWxsLGkuQlJPQURDQVNUX09QVElPTi5uYW1lPWEudG9TdHJpbmcodCkpOmlbbl09dCx3Kz0xfXIucmVwb3J0aW5nPW51bGwsci5yZXBvcnRlZD1udWxsfWNvbnN0IEM9dztmb3IoO3c8aDt3Kyspe2NvbnN0IHQ9dz09PWgtMSxuPWxbd10saT1uLl9ibG9ja0Z1bmN0aW9uLGM9bi5fYXJnVmFsdWVzO3MuZm9yY2VOb0dsb3d8fChlLnJlcXVlc3RTY3JpcHRHbG93SW5GcmFtZT0hMCk7Y29uc3QgUT1pKGMsQik7aWYobnVsbCE9PShJPVEpJiYib2JqZWN0Ij09dHlwZW9mIEkmJiJmdW5jdGlvbiI9PXR5cGVvZiBJLnRoZW4pe0UoUSxBLGUsbix0KSxlLmp1c3RSZXBvcnRlZD1udWxsLHIucmVwb3J0aW5nPWxbd10uaWQsci5yZXBvcnRlZD1sLnNsaWNlKDAsdykubWFwKEE9Pntjb25zdCBlPUEuX3BhcmVudEtleSx0PUEuX3BhcmVudFZhbHVlcztyZXR1cm4iQlJPQURDQVNUX0lOUFVUIj09PWU/e29wQ2FjaGVkOkEuaWQsaW5wdXRWYWx1ZTp0W2VdLkJST0FEQ0FTVF9PUFRJT04ubmFtZX06e29wQ2FjaGVkOkEuaWQsaW5wdXRWYWx1ZTp0W2VdfX0pO2JyZWFrfWlmKGUuc3RhdHVzPT09by5TVEFUVVNfUlVOTklORylpZih0KWcoUSxBLGUsbix0KTtlbHNle2NvbnN0IEE9bi5fcGFyZW50S2V5LGU9bi5fcGFyZW50VmFsdWVzOyJCUk9BRENBU1RfSU5QVVQiPT09QT8oZS5CUk9BRENBU1RfT1BUSU9OLmlkPW51bGwsZS5CUk9BRENBU1RfT1BUSU9OLm5hbWU9YS50b1N0cmluZyhRKSk6ZVtBXT1RfWVsc2UgaWYoZS5zdGF0dXM9PT1vLlNUQVRVU19ET05FKWJyZWFrfXZhciBJO2lmKG51bGwhPT10LnByb2ZpbGVyKXt1Ll9wcm9maWxlciE9PXQucHJvZmlsZXImJmZ1bmN0aW9uKEEsZSl7ZS5fcHJvZmlsZXI9QSwtMT09PWMmJihjPUEuaWRCeU5hbWUoImJsb2NrRnVuY3Rpb24iKSk7Y29uc3QgdD1lLl9vcHM7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspdFtlXS5fcHJvZmlsZXJGcmFtZT1BLmZyYW1lKGMsdFtlXS5vcGNvZGUpfSh0LnByb2ZpbGVyLHUpO2NvbnN0IEE9TWF0aC5taW4odysxLGgpO2ZvcihsZXQgZT1DO2U8QTtlKyspbFtlXS5fcHJvZmlsZXJGcmFtZS5jb3VudCs9MX19fSxmdW5jdGlvbihBLGUpe2NvbnN0IHQ9bmV3IFNldDtBLmV4cG9ydHM9ZnVuY3Rpb24oKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e307cmV0dXJuIG5ldyBQcm94eShBLHtzZXQ6ZnVuY3Rpb24oQSxlLG4pe3JldHVybiB0LmhhcyhlKXx8KGNvbnNvbGUud2FybigiZXh0ZW5zaW9uU3RvcmFnZSBBUElzIGFyZSBkZXByZWNhdGVkLiBQbGVhc2UgYXZvaWQgdXNpbmcgdGhlbSBpbiB5b3VyIGV4dGVuc2lvbnMuIiksdC5hZGQoZSkpLEFbZV09bixlIGluIEEmJkFbZV09PT1ufX0pfX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e0RFRkFVTFQ6bnVsbCxMRUZUOiJMRUZUIixDRU5URVI6IkNFTlRSRSIsUklHSFQ6IlJJR0hUIn19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXt0aGlzLng9QSx0aGlzLnk9ZSx0aGlzLndhbGthYmxlPXZvaWQgMD09PXR8fHR9fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49dCg0NCksaT10KDI2KSxyPXQoMzcpLG89dCgxMik7ZnVuY3Rpb24gcyhBKXtBPUF8fHt9LHRoaXMuYWxsb3dEaWFnb25hbD1BLmFsbG93RGlhZ29uYWwsdGhpcy5kb250Q3Jvc3NDb3JuZXJzPUEuZG9udENyb3NzQ29ybmVycyx0aGlzLmhldXJpc3RpYz1BLmhldXJpc3RpY3x8ci5tYW5oYXR0YW4sdGhpcy53ZWlnaHQ9QS53ZWlnaHR8fDEsdGhpcy5kaWFnb25hbE1vdmVtZW50PUEuZGlhZ29uYWxNb3ZlbWVudCx0aGlzLmRpYWdvbmFsTW92ZW1lbnR8fCh0aGlzLmFsbG93RGlhZ29uYWw/dGhpcy5kb250Q3Jvc3NDb3JuZXJzP3RoaXMuZGlhZ29uYWxNb3ZlbWVudD1vLk9ubHlXaGVuTm9PYnN0YWNsZXM6dGhpcy5kaWFnb25hbE1vdmVtZW50PW8uSWZBdE1vc3RPbmVPYnN0YWNsZTp0aGlzLmRpYWdvbmFsTW92ZW1lbnQ9by5OZXZlciksdGhpcy5kaWFnb25hbE1vdmVtZW50PT09by5OZXZlcj90aGlzLmhldXJpc3RpYz1BLmhldXJpc3RpY3x8ci5tYW5oYXR0YW46dGhpcy5oZXVyaXN0aWM9QS5oZXVyaXN0aWN8fHIub2N0aWxlfXMucHJvdG90eXBlLmZpbmRQYXRoPWZ1bmN0aW9uKEEsZSx0LHIsbyl7dmFyIHMsYSxCLGMsZyxFLFEsdSxsPW5ldyBuKChmdW5jdGlvbihBLGUpe3JldHVybiBBLmYtZS5mfSkpLGg9by5nZXROb2RlQXQoQSxlKSx3PW8uZ2V0Tm9kZUF0KHQsciksQz10aGlzLmhldXJpc3RpYyxJPXRoaXMuZGlhZ29uYWxNb3ZlbWVudCxNPXRoaXMud2VpZ2h0LGQ9TWF0aC5hYnMscD1NYXRoLlNRUlQyO2ZvcihoLmc9MCxoLmY9MCxsLnB1c2goaCksaC5vcGVuZWQ9ITA7IWwuZW1wdHkoKTspe2lmKChzPWwucG9wKCkpLmNsb3NlZD0hMCxzPT09dylyZXR1cm4gaS5iYWNrdHJhY2Uodyk7Zm9yKGM9MCxnPShhPW8uZ2V0TmVpZ2hib3JzKHMsSSkpLmxlbmd0aDtjPGc7KytjKShCPWFbY10pLmNsb3NlZHx8KEU9Qi54LFE9Qi55LHU9cy5nKyhFLXMueD09MHx8US1zLnk9PTA/MTpwKSwoIUIub3BlbmVkfHx1PEIuZykmJihCLmc9dSxCLmg9Qi5ofHxNKkMoZChFLXQpLGQoUS1yKSksQi5mPUIuZytCLmgsQi5wYXJlbnQ9cyxCLm9wZW5lZD9sLnVwZGF0ZUl0ZW0oQik6KGwucHVzaChCKSxCLm9wZW5lZD0hMCkpKX1yZXR1cm5bXX0sQS5leHBvcnRzPXN9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDQ0KSxpPXQoMjYpLHI9dCgzNyksbz10KDEyKTtmdW5jdGlvbiBzKEEpe0E9QXx8e30sdGhpcy5hbGxvd0RpYWdvbmFsPUEuYWxsb3dEaWFnb25hbCx0aGlzLmRvbnRDcm9zc0Nvcm5lcnM9QS5kb250Q3Jvc3NDb3JuZXJzLHRoaXMuZGlhZ29uYWxNb3ZlbWVudD1BLmRpYWdvbmFsTW92ZW1lbnQsdGhpcy5oZXVyaXN0aWM9QS5oZXVyaXN0aWN8fHIubWFuaGF0dGFuLHRoaXMud2VpZ2h0PUEud2VpZ2h0fHwxLHRoaXMuZGlhZ29uYWxNb3ZlbWVudHx8KHRoaXMuYWxsb3dEaWFnb25hbD90aGlzLmRvbnRDcm9zc0Nvcm5lcnM/dGhpcy5kaWFnb25hbE1vdmVtZW50PW8uT25seVdoZW5Ob09ic3RhY2xlczp0aGlzLmRpYWdvbmFsTW92ZW1lbnQ9by5JZkF0TW9zdE9uZU9ic3RhY2xlOnRoaXMuZGlhZ29uYWxNb3ZlbWVudD1vLk5ldmVyKSx0aGlzLmRpYWdvbmFsTW92ZW1lbnQ9PT1vLk5ldmVyP3RoaXMuaGV1cmlzdGljPUEuaGV1cmlzdGljfHxyLm1hbmhhdHRhbjp0aGlzLmhldXJpc3RpYz1BLmhldXJpc3RpY3x8ci5vY3RpbGV9cy5wcm90b3R5cGUuZmluZFBhdGg9ZnVuY3Rpb24oQSxlLHQscixvKXt2YXIgcyxhLEIsYyxnLEUsUSx1LGw9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5mLWUuZn0saD1uZXcgbihsKSx3PW5ldyBuKGwpLEM9by5nZXROb2RlQXQoQSxlKSxJPW8uZ2V0Tm9kZUF0KHQsciksTT10aGlzLmhldXJpc3RpYyxkPXRoaXMuZGlhZ29uYWxNb3ZlbWVudCxwPXRoaXMud2VpZ2h0LG09TWF0aC5hYnMsRj1NYXRoLlNRUlQyO2ZvcihDLmc9MCxDLmY9MCxoLnB1c2goQyksQy5vcGVuZWQ9MSxJLmc9MCxJLmY9MCx3LnB1c2goSSksSS5vcGVuZWQ9MjshaC5lbXB0eSgpJiYhdy5lbXB0eSgpOyl7Zm9yKChzPWgucG9wKCkpLmNsb3NlZD0hMCxjPTAsZz0oYT1vLmdldE5laWdoYm9ycyhzLGQpKS5sZW5ndGg7YzxnOysrYylpZighKEI9YVtjXSkuY2xvc2VkKXtpZigyPT09Qi5vcGVuZWQpcmV0dXJuIGkuYmlCYWNrdHJhY2UocyxCKTtFPUIueCxRPUIueSx1PXMuZysoRS1zLng9PTB8fFEtcy55PT0wPzE6RiksKCFCLm9wZW5lZHx8dTxCLmcpJiYoQi5nPXUsQi5oPUIuaHx8cCpNKG0oRS10KSxtKFEtcikpLEIuZj1CLmcrQi5oLEIucGFyZW50PXMsQi5vcGVuZWQ/aC51cGRhdGVJdGVtKEIpOihoLnB1c2goQiksQi5vcGVuZWQ9MSkpfWZvcigocz13LnBvcCgpKS5jbG9zZWQ9ITAsYz0wLGc9KGE9by5nZXROZWlnaGJvcnMocyxkKSkubGVuZ3RoO2M8ZzsrK2MpaWYoIShCPWFbY10pLmNsb3NlZCl7aWYoMT09PUIub3BlbmVkKXJldHVybiBpLmJpQmFja3RyYWNlKEIscyk7RT1CLngsUT1CLnksdT1zLmcrKEUtcy54PT0wfHxRLXMueT09MD8xOkYpLCghQi5vcGVuZWR8fHU8Qi5nKSYmKEIuZz11LEIuaD1CLmh8fHAqTShtKEUtQSksbShRLWUpKSxCLmY9Qi5nK0IuaCxCLnBhcmVudD1zLEIub3BlbmVkP3cudXBkYXRlSXRlbShCKToody5wdXNoKEIpLEIub3BlbmVkPTIpKX19cmV0dXJuW119LEEuZXhwb3J0cz1zfSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBLGUpe3RoaXMuY2FsbGJhY2s9QSx0aGlzLm1heENvbmN1cnJlbnQ9ZSx0aGlzLl9jdXJyZW50PTAsdGhpcy5fcXVldWU9W119ZG8oKXtmb3IodmFyIEE9YXJndW1lbnRzLmxlbmd0aCxlPW5ldyBBcnJheShBKSx0PTA7dDxBO3QrKyllW3RdPWFyZ3VtZW50c1t0XTtyZXR1cm4gbmV3IFByb21pc2UoKEEsdCk9Pnt0aGlzLl9xdWV1ZS5wdXNoKFtBLHQsZV0pLHRoaXMuX3N0YXJ0TmV4dCgpfSl9X3N0YXJ0TmV4dCgpe2lmKHRoaXMuX2N1cnJlbnQ+PXRoaXMubWF4Q29uY3VycmVudHx8MD09PXRoaXMuX3F1ZXVlLmxlbmd0aClyZXR1cm47dGhpcy5fY3VycmVudCsrO2NvbnN0W0EsZSx0XT10aGlzLl9xdWV1ZS5zaGlmdCgpO3RoaXMuY2FsbGJhY2suYXBwbHkobnVsbCx0KS50aGVuKGU9PntBKGUpLHRoaXMuX2N1cnJlbnQtLSx0aGlzLl9zdGFydE5leHQoKX0pLmNhdGNoKEE9PntlKEEpLHRoaXMuX2N1cnJlbnQtLSx0aGlzLl9zdGFydE5leHQoKX0pfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNiksaT10KDExKSxyPXQoMiksbz10KDcpLHt0cmFuc2xhdGVGb3JDYW1lcmE6c309dCg0MSksYT10KDQxMyksQj10KDE2KSxjPXQoNDE0KSxnPXQoMjQpO2NsYXNzIEUgZXh0ZW5kcyBhe2NvbnN0cnVjdG9yKEEsZSl7c3VwZXIoZSxBLmJsb2NrcyksdGhpcy5jdXN0b21JZD0icG0tcmVuZGVyZWQtdGFyZ2V0Iix0aGlzLnNwcml0ZT1BLHRoaXMucmVuZGVyZXI9bnVsbCx0aGlzLnJ1bnRpbWUmJih0aGlzLnJlbmRlcmVyPXRoaXMucnVudGltZS5yZW5kZXJlciksdGhpcy5kcmF3YWJsZUlEPW51bGwsdGhpcy5kcmFnZ2luZz0hMSx0aGlzLmVmZmVjdHM9e2NvbG9yOjAsZmlzaGV5ZTowLHdoaXJsOjAscGl4ZWxhdGU6MCxtb3NhaWM6MCxicmlnaHRuZXNzOjAsZ2hvc3Q6MCxyZWQ6MCxncmVlbjowLGJsdWU6MCxvcGFxdWU6MCxzYXR1cmF0aW9uOjAsdGludENvbG9yOjE2Nzc3MjE2LGhvcml6b250YWxfc2hlYXI6MCx2ZXJ0aWNhbF9zaGVhcjowfSx0aGlzLmlzT3JpZ2luYWw9ITAsdGhpcy5pc1N0YWdlPSExLHRoaXMuaXNEaXNwb3NlZD0hMSx0aGlzLng9MCx0aGlzLnk9MCx0aGlzLnRyYW5zZm9ybT1bMCwwXSx0aGlzLmRpcmVjdGlvbj05MCx0aGlzLmRyYWdnYWJsZT0hMSx0aGlzLnZpc2libGU9ITAsdGhpcy5zaXplPTEwMCx0aGlzLnN0cmV0Y2g9WzEwMCwxMDBdLHRoaXMuY3VycmVudENvc3R1bWU9MCx0aGlzLnJvdGF0aW9uU3R5bGU9RS5ST1RBVElPTl9TVFlMRV9BTExfQVJPVU5ELHRoaXMudm9sdW1lPTEwMCx0aGlzLnRlbXBvPTYwLHRoaXMudmlkZW9UcmFuc3BhcmVuY3k9NTAsdGhpcy52aWRlb1N0YXRlPUUuVklERU9fU1RBVEUuT04sdGhpcy50ZXh0VG9TcGVlY2hMYW5ndWFnZT1udWxsLHRoaXMub25UYXJnZXRNb3ZlZD1udWxsLHRoaXMub25UYXJnZXRWaXN1YWxDaGFuZ2U9bnVsbCx0aGlzLmludGVycG9sYXRpb25EYXRhPW51bGwsdGhpcy5jYW1lcmFCb3VuZD0iZGVmYXVsdCJ9Y2FtZXJhVXBkYXRlRXZlbnQoKXtjb25zdHtkaXJlY3Rpb246QSxzY2FsZTplfT10aGlzLl9nZXRSZW5kZXJlZERpcmVjdGlvbkFuZFNjYWxlKCksdD10aGlzLl90cmFuc2xhdGVQb3NzaXRpb25Ub0NhbWVyYSgpO3RoaXMucmVuZGVyZXIudXBkYXRlRHJhd2FibGVQb3NpdGlvbih0aGlzLmRyYXdhYmxlSUQsdCksdGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZURpcmVjdGlvblNjYWxlKHRoaXMuZHJhd2FibGVJRCxBLGUsdGhpcy50cmFuc2Zvcm0pLHRoaXMucmVuZGVyZXIudXBkYXRlRHJhd2FibGVWaXNpYmxlKHRoaXMuZHJhd2FibGVJRCx0aGlzLnZpc2libGUpfWluaXREcmF3YWJsZShBKXt0aGlzLnJlbmRlcmVyJiYodGhpcy5kcmF3YWJsZUlEPXRoaXMucmVuZGVyZXIuY3JlYXRlRHJhd2FibGUoQSkpLHRoaXMuaXNPcmlnaW5hbHx8dGhpcy5ydW50aW1lLnN0YXJ0SGF0cygiY29udHJvbF9zdGFydF9hc19jbG9uZSIsbnVsbCx0aGlzKX1nZXQgYXVkaW9QbGF5ZXIoKXtjb25zb2xlLndhcm4oImdldCBhdWRpb1BsYXllciBkZXByZWNhdGVkLCBwbGVhc2UgdXBkYXRlIHRvIHVzZSAuc3ByaXRlLnNvdW5kQmFuayBtZXRob2RzIiksY29uc29sZS53YXJuKG5ldyBFcnJvcigic3RhY2sgZm9yIGRlYnVnIikuc3RhY2spO2NvbnN0IEE9dGhpcy5zcHJpdGUuc291bmRCYW5rLGU9e3BsYXlTb3VuZDplPT5BLnBsYXkodGhpcyxlKX07cmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCJhdWRpb1BsYXllciIse2NvbmZpZ3VyYWJsZTohMSxlbnVtZXJhYmxlOiEwLHdyaXRhYmxlOiExLHZhbHVlOmV9KSxlfWluaXRBdWRpbygpe31zdGF0aWMgZ2V0IFJPVEFUSU9OX1NUWUxFX0FMTF9BUk9VTkQoKXtyZXR1cm4iYWxsIGFyb3VuZCJ9c3RhdGljIGdldCBST1RBVElPTl9TVFlMRV9MT09LX0FUKCl7cmV0dXJuImxvb2sgYXQifXN0YXRpYyBnZXQgUk9UQVRJT05fU1RZTEVfTEVGVF9SSUdIVCgpe3JldHVybiJsZWZ0LXJpZ2h0In1zdGF0aWMgZ2V0IFJPVEFUSU9OX1NUWUxFX1VQX0RPV04oKXtyZXR1cm4idXAtZG93biJ9c3RhdGljIGdldCBST1RBVElPTl9TVFlMRV9OT05FKCl7cmV0dXJuImRvbid0IHJvdGF0ZSJ9c3RhdGljIGdldCBWSURFT19TVEFURSgpe3JldHVybntPRkY6Im9mZiIsT046Im9uIixPTl9GTElQUEVEOiJvbi1mbGlwcGVkIn19ZW1pdFZpc3VhbENoYW5nZSgpe3RoaXMub25UYXJnZXRWaXN1YWxDaGFuZ2UmJnRoaXMub25UYXJnZXRWaXN1YWxDaGFuZ2UodGhpcyl9YmluZFRvQ2FtZXJhKEEpe3RoaXMuY2FtZXJhQm91bmQ9QSx0aGlzLnVwZGF0ZUFsbERyYXdhYmxlUHJvcGVydGllcygpfXJlbW92ZUNhbWVyYUJpbmRpbmcoKXt0aGlzLmNhbWVyYUJvdW5kPW51bGwsdGhpcy51cGRhdGVBbGxEcmF3YWJsZVByb3BlcnRpZXMoKX1fdHJhbnNsYXRlUG9zc2l0aW9uVG9DYW1lcmEoKXtyZXR1cm4gdGhpcy5jYW1lcmFCb3VuZD9zKHRoaXMucnVudGltZSx0aGlzLmNhbWVyYUJvdW5kLHRoaXMueCx0aGlzLnkpOlt0aGlzLngsdGhpcy55XX1zZXRYWShBLGUsdCxuKXtpZih0aGlzLmlzU3RhZ2UpcmV0dXJuO2lmKHRoaXMuZHJhZ2dpbmcmJiF0KXJldHVybjtjb25zdCBpPXRoaXMueCxyPXRoaXMueTtpZih0aGlzLnJlbmRlcmVyKXtjb25zdCB0PXRoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5mZW5jaW5nJiYhbj90aGlzLnJlbmRlcmVyLmdldEZlbmNlZFBvc2l0aW9uT2ZEcmF3YWJsZSh0aGlzLmRyYXdhYmxlSUQsW0EsZV0pOltBLGVdO3RoaXMueD10WzBdLHRoaXMueT10WzFdLHRoaXMucmVuZGVyZXIudXBkYXRlRHJhd2FibGVQb3NpdGlvbih0aGlzLmRyYXdhYmxlSUQsdGhpcy5fdHJhbnNsYXRlUG9zc2l0aW9uVG9DYW1lcmEoKSksdGhpcy52aXNpYmxlJiYodGhpcy5lbWl0VmlzdWFsQ2hhbmdlKCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSl9ZWxzZSB0aGlzLng9QSx0aGlzLnk9ZTt0aGlzLm9uVGFyZ2V0TW92ZWQmJnRoaXMub25UYXJnZXRNb3ZlZCh0aGlzLGkscix0KSx0aGlzLnJ1bnRpbWUucmVxdWVzdFRhcmdldHNVcGRhdGUodGhpcyl9X2dldFJlbmRlcmVkRGlyZWN0aW9uQW5kU2NhbGUoKXtjb25zdCBBPXRoaXMucnVudGltZS5nZXRDYW1lcmEodGhpcy5jYW1lcmFCb3VuZCk7bGV0IGU9dGhpcy5kaXJlY3Rpb24sdD1bdGhpcy5zaXplLHRoaXMuc2l6ZV07aWYodGhpcy5yb3RhdGlvblN0eWxlPT09RS5ST1RBVElPTl9TVFlMRV9OT05FKWU9OTA7ZWxzZSBpZih0aGlzLnJvdGF0aW9uU3R5bGU9PT1FLlJPVEFUSU9OX1NUWUxFX0xFRlRfUklHSFQpe2U9OTA7dD1bKHRoaXMuZGlyZWN0aW9uPDA/LTE6MSkqdGhpcy5zaXplLHRoaXMuc2l6ZV19ZWxzZSBpZih0aGlzLnJvdGF0aW9uU3R5bGU9PT1FLlJPVEFUSU9OX1NUWUxFX1VQX0RPV04pe2U9OTA7Y29uc3QgQT10aGlzLmRpcmVjdGlvbj45MHx8dGhpcy5kaXJlY3Rpb248LTkwPy0xOjE7dD1bdGhpcy5zaXplLEEqdGhpcy5zaXplXX1lbHNlIGlmKHRoaXMucm90YXRpb25TdHlsZT09PUUuUk9UQVRJT05fU1RZTEVfTE9PS19BVCl7Y29uc3QgQT10aGlzLmRpcmVjdGlvbjwwPy0xOjE7dD1bdGhpcy5zaXplLEEqdGhpcy5zaXplXX1yZXR1cm4gdFswXSo9dGhpcy5zdHJldGNoWzBdLzEwMCx0WzFdKj10aGlzLnN0cmV0Y2hbMV0vMTAwLHRoaXMuY2FtZXJhQm91bmQmJih0WzBdKj1BLnNjYWxlLHRbMV0qPUEuc2NhbGUsZS09QS5kaXIpLHtkaXJlY3Rpb246ZSxzY2FsZTp0LHN0cmV0Y2g6dGhpcy5zdHJldGNofX1zZXRTdHJldGNoKEEsZSl7aWYoIXRoaXMuaXNTdGFnZSl7aWYodGhpcy5zdHJldGNoPVtBLGVdLHRoaXMucmVuZGVyZXIpe2NvbnN0e2RpcmVjdGlvbjpBLHNjYWxlOmV9PXRoaXMuX2dldFJlbmRlcmVkRGlyZWN0aW9uQW5kU2NhbGUoKTt0aGlzLnJlbmRlcmVyLnVwZGF0ZURyYXdhYmxlRGlyZWN0aW9uU2NhbGUodGhpcy5kcmF3YWJsZUlELEEsZSx0aGlzLnRyYW5zZm9ybSksdGhpcy52aXNpYmxlJiYodGhpcy5lbWl0VmlzdWFsQ2hhbmdlKCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSl9dGhpcy5ydW50aW1lLnJlcXVlc3RUYXJnZXRzVXBkYXRlKHRoaXMpfX1zZXREaXJlY3Rpb24oQSl7aWYoIXRoaXMuaXNTdGFnZSYmaXNGaW5pdGUoQSkpe2lmKHRoaXMuZGlyZWN0aW9uPXRoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5kaXNhYmxlRGlyZWN0aW9uQ2xhbXBpbmc/QTpuLndyYXBDbGFtcChBLC0xNzksMTgwKSx0aGlzLnJlbmRlcmVyKXtjb25zdHtkaXJlY3Rpb246QSxzY2FsZTplfT10aGlzLl9nZXRSZW5kZXJlZERpcmVjdGlvbkFuZFNjYWxlKCk7dGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZURpcmVjdGlvblNjYWxlKHRoaXMuZHJhd2FibGVJRCxBLGUsdGhpcy50cmFuc2Zvcm0pLHRoaXMudmlzaWJsZSYmKHRoaXMuZW1pdFZpc3VhbENoYW5nZSgpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCkpfXRoaXMucnVudGltZS5yZXF1ZXN0VGFyZ2V0c1VwZGF0ZSh0aGlzKX19c2V0RHJhZ2dhYmxlKEEpe3RoaXMuaXNTdGFnZXx8KHRoaXMuZHJhZ2dhYmxlPSEhQSx0aGlzLnJ1bnRpbWUucmVxdWVzdFRhcmdldHNVcGRhdGUodGhpcykpfXNldFZpc2libGUoQSl7dGhpcy5pc1N0YWdlfHwodGhpcy52aXNpYmxlPSEhQSx0aGlzLnJlbmRlcmVyJiYodGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZVZpc2libGUodGhpcy5kcmF3YWJsZUlELHRoaXMudmlzaWJsZSksdGhpcy52aXNpYmxlJiYodGhpcy5lbWl0VmlzdWFsQ2hhbmdlKCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSkpLHRoaXMucnVudGltZS5yZXF1ZXN0VGFyZ2V0c1VwZGF0ZSh0aGlzKSl9c2V0U2l6ZShBKXtpZighdGhpcy5pc1N0YWdlKXtpZih0aGlzLnJlbmRlcmVyKXt0aGlzLnNpemU9TWF0aC5tYXgoMCxBKTtjb25zdHtkaXJlY3Rpb246ZSxzY2FsZTp0fT10aGlzLl9nZXRSZW5kZXJlZERpcmVjdGlvbkFuZFNjYWxlKCk7dGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZURpcmVjdGlvblNjYWxlKHRoaXMuZHJhd2FibGVJRCxlLHQsdGhpcy50cmFuc2Zvcm0pLHRoaXMudmlzaWJsZSYmKHRoaXMuZW1pdFZpc3VhbENoYW5nZSgpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCkpfWVsc2UgdGhpcy5zaXplPUE7dGhpcy5ydW50aW1lLnJlcXVlc3RUYXJnZXRzVXBkYXRlKHRoaXMpfX1zZXRFZmZlY3QoQSxlKXt0aGlzLmVmZmVjdHMuaGFzT3duUHJvcGVydHkoQSkmJih0aGlzLmVmZmVjdHNbQV09ZSx0aGlzLnJlbmRlcmVyJiYodGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZUVmZmVjdCh0aGlzLmRyYXdhYmxlSUQsQSxlKSx0aGlzLnZpc2libGUmJih0aGlzLmVtaXRWaXN1YWxDaGFuZ2UoKSx0aGlzLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpKSkpfWNsZWFyRWZmZWN0cygpe2Zvcihjb25zdCBBIGluIHRoaXMuZWZmZWN0cyl0aGlzLmVmZmVjdHMuaGFzT3duUHJvcGVydHkoQSkmJih0aGlzLmVmZmVjdHNbQV09MCk7aWYodGhpcy5yZW5kZXJlcil7Zm9yKGNvbnN0IEEgaW4gdGhpcy5lZmZlY3RzKXRoaXMuZWZmZWN0cy5oYXNPd25Qcm9wZXJ0eShBKSYmdGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZUVmZmVjdCh0aGlzLmRyYXdhYmxlSUQsQSwwKTt0aGlzLnZpc2libGUmJih0aGlzLmVtaXRWaXN1YWxDaGFuZ2UoKSx0aGlzLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpKX19c2V0Q29zdHVtZShBKXtpZigoQT1NYXRoLnJvdW5kKEEpKSE9PTEvMCYmQSE9PS0xLzAmJkF8fChBPTApLHRoaXMuY3VycmVudENvc3R1bWU9bi53cmFwQ2xhbXAoQSwwLHRoaXMuc3ByaXRlLmNvc3R1bWVzLmxlbmd0aC0xKSx0aGlzLnJlbmRlcmVyKXtjb25zdCBBPXRoaXMuc3ByaXRlLmNvc3R1bWVzW3RoaXMuY3VycmVudENvc3R1bWVdO3RoaXMucmVuZGVyZXIudXBkYXRlRHJhd2FibGVTa2luSWQodGhpcy5kcmF3YWJsZUlELEEuc2tpbklkKSx0aGlzLnZpc2libGUmJih0aGlzLmVtaXRWaXN1YWxDaGFuZ2UoKSx0aGlzLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpKX10aGlzLnJ1bnRpbWUucmVxdWVzdFRhcmdldHNVcGRhdGUodGhpcyl9YWRkQ29zdHVtZShBLGUpeyJudW1iZXIiIT10eXBlb2YgZXx8aXNOYU4oZSk/dGhpcy5zcHJpdGUuYWRkQ29zdHVtZUF0KEEsdGhpcy5zcHJpdGUuY29zdHVtZXMubGVuZ3RoKTp0aGlzLnNwcml0ZS5hZGRDb3N0dW1lQXQoQSxlKX1yZW5hbWVDb3N0dW1lKEEsZSl7Y29uc3QgdD10aGlzLnNwcml0ZS5jb3N0dW1lcy5maWx0ZXIoKGUsdCk9PkEhPT10KS5tYXAoQT0+QS5uYW1lKSxuPXRoaXMuZ2V0Q29zdHVtZXMoKVtBXS5uYW1lLHI9aS51bnVzZWROYW1lKGUsdCk7aWYodGhpcy5nZXRDb3N0dW1lcygpW0FdLm5hbWU9cix0aGlzLmlzU3RhZ2Upe2NvbnN0IEE9dGhpcy5ydW50aW1lLnRhcmdldHM7Zm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKyspe0FbZV0uYmxvY2tzLnVwZGF0ZUFzc2V0TmFtZShuLHIsImJhY2tkcm9wIil9fWVsc2UgdGhpcy5ibG9ja3MudXBkYXRlQXNzZXROYW1lKG4sciwiY29zdHVtZSIpfWRlbGV0ZUNvc3R1bWUoQSl7Y29uc3QgZT10aGlzLnNwcml0ZS5jb3N0dW1lcy5sZW5ndGg7aWYoMT09PWUpcmV0dXJuIG51bGw7aWYoQTwwfHxBPj1lKXJldHVybiBudWxsO2NvbnN0IHQ9dGhpcy5zcHJpdGUuZGVsZXRlQ29zdHVtZUF0KEEpO3JldHVybiBBPT09dGhpcy5jdXJyZW50Q29zdHVtZSYmQT09PWUtMT90aGlzLnNldENvc3R1bWUoQS0xKTpBPHRoaXMuY3VycmVudENvc3R1bWU/dGhpcy5zZXRDb3N0dW1lKHRoaXMuY3VycmVudENvc3R1bWUtMSk6dGhpcy5zZXRDb3N0dW1lKHRoaXMuY3VycmVudENvc3R1bWUpLHRoaXMucnVudGltZS5yZXF1ZXN0VGFyZ2V0c1VwZGF0ZSh0aGlzKSx0fWFkZFNvdW5kKEEsZSl7Y29uc3QgdD10aGlzLnNwcml0ZS5zb3VuZHMubWFwKEE9PkEubmFtZSk7QS5uYW1lPWkudW51c2VkTmFtZShBLm5hbWUsdCksIm51bWJlciIhPXR5cGVvZiBlfHxpc05hTihlKT90aGlzLnNwcml0ZS5zb3VuZHMucHVzaChBKTp0aGlzLnNwcml0ZS5zb3VuZHMuc3BsaWNlKGUsMCxBKX1yZW5hbWVTb3VuZChBLGUpe2NvbnN0IHQ9dGhpcy5zcHJpdGUuc291bmRzLmZpbHRlcigoZSx0KT0+QSE9PXQpLm1hcChBPT5BLm5hbWUpLG49dGhpcy5zcHJpdGUuc291bmRzW0FdLm5hbWUscj1pLnVudXNlZE5hbWUoZSx0KTt0aGlzLnNwcml0ZS5zb3VuZHNbQV0ubmFtZT1yLHRoaXMuYmxvY2tzLnVwZGF0ZUFzc2V0TmFtZShuLHIsInNvdW5kIil9ZGVsZXRlU291bmQoQSl7aWYoQTwwfHxBPj10aGlzLnNwcml0ZS5zb3VuZHMubGVuZ3RoKXJldHVybiBudWxsO2NvbnN0IGU9dGhpcy5zcHJpdGUuc291bmRzLnNwbGljZShBLDEpWzBdO3JldHVybiB0aGlzLnJ1bnRpbWUucmVxdWVzdFRhcmdldHNVcGRhdGUodGhpcyksZX1zZXRSb3RhdGlvblN0eWxlKEEpe2lmKEE9PT1FLlJPVEFUSU9OX1NUWUxFX05PTkU/dGhpcy5yb3RhdGlvblN0eWxlPUUuUk9UQVRJT05fU1RZTEVfTk9ORTpBPT09RS5ST1RBVElPTl9TVFlMRV9BTExfQVJPVU5EP3RoaXMucm90YXRpb25TdHlsZT1FLlJPVEFUSU9OX1NUWUxFX0FMTF9BUk9VTkQ6QT09PUUuUk9UQVRJT05fU1RZTEVfTEVGVF9SSUdIVD90aGlzLnJvdGF0aW9uU3R5bGU9RS5ST1RBVElPTl9TVFlMRV9MRUZUX1JJR0hUOkE9PT1FLlJPVEFUSU9OX1NUWUxFX1VQX0RPV04/dGhpcy5yb3RhdGlvblN0eWxlPUUuUk9UQVRJT05fU1RZTEVfVVBfRE9XTjpBPT09RS5ST1RBVElPTl9TVFlMRV9MT09LX0FUJiYodGhpcy5yb3RhdGlvblN0eWxlPUUuUk9UQVRJT05fU1RZTEVfTE9PS19BVCksdGhpcy5yZW5kZXJlcil7Y29uc3R7ZGlyZWN0aW9uOkEsc2NhbGU6ZX09dGhpcy5fZ2V0UmVuZGVyZWREaXJlY3Rpb25BbmRTY2FsZSgpO3RoaXMucmVuZGVyZXIudXBkYXRlRHJhd2FibGVEaXJlY3Rpb25TY2FsZSh0aGlzLmRyYXdhYmxlSUQsQSxlLHRoaXMudHJhbnNmb3JtKSx0aGlzLnZpc2libGUmJih0aGlzLmVtaXRWaXN1YWxDaGFuZ2UoKSx0aGlzLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpKX10aGlzLnJ1bnRpbWUucmVxdWVzdFRhcmdldHNVcGRhdGUodGhpcyl9Z2V0Q29zdHVtZUluZGV4QnlOYW1lKEEpe2NvbnN0IGU9dGhpcy5nZXRDb3N0dW1lcygpO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWlmKGVbdF0ubmFtZT09PUEpcmV0dXJuIHQ7cmV0dXJuLTF9Z2V0Q3VycmVudENvc3R1bWUoKXtyZXR1cm4gdGhpcy5nZXRDb3N0dW1lcygpW3RoaXMuY3VycmVudENvc3R1bWVdfWdldENvc3R1bWVzKCl7cmV0dXJuIHRoaXMuc3ByaXRlLmNvc3R1bWVzfXJlb3JkZXJDb3N0dW1lKEEsZSl7aWYoKGU9bi5jbGFtcChlLDAsdGhpcy5zcHJpdGUuY29zdHVtZXMubGVuZ3RoLTEpKT09PShBPW4uY2xhbXAoQSwwLHRoaXMuc3ByaXRlLmNvc3R1bWVzLmxlbmd0aC0xKSkpcmV0dXJuITE7Y29uc3QgdD10aGlzLmdldEN1cnJlbnRDb3N0dW1lKCksaT10aGlzLnNwcml0ZS5jb3N0dW1lc1tBXTtyZXR1cm4gdGhpcy5zcHJpdGUuZGVsZXRlQ29zdHVtZUF0KEEpLHRoaXMuYWRkQ29zdHVtZShpLGUpLHRoaXMuY3VycmVudENvc3R1bWU9dGhpcy5nZXRDb3N0dW1lSW5kZXhCeU5hbWUodC5uYW1lKSwhMH1yZW9yZGVyU291bmQoQSxlKXtpZigoZT1uLmNsYW1wKGUsMCx0aGlzLnNwcml0ZS5zb3VuZHMubGVuZ3RoLTEpKT09PShBPW4uY2xhbXAoQSwwLHRoaXMuc3ByaXRlLnNvdW5kcy5sZW5ndGgtMSkpKXJldHVybiExO2NvbnN0IHQ9dGhpcy5zcHJpdGUuc291bmRzW0FdO3JldHVybiB0aGlzLmRlbGV0ZVNvdW5kKEEpLHRoaXMuYWRkU291bmQodCxlKSwhMH1nZXRTb3VuZHMoKXtyZXR1cm4gdGhpcy5zcHJpdGUuc291bmRzfWdldFNvdW5kSW5kZXhCeU5hbWUoQSl7Y29uc3QgZT10aGlzLmdldFNvdW5kcygpO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWlmKGVbdF0ubmFtZT09PUEpcmV0dXJuIHQ7cmV0dXJuLTF9dXBkYXRlQWxsRHJhd2FibGVQcm9wZXJ0aWVzKCl7aWYodGhpcy5yZW5kZXJlcil7Y29uc3R7ZGlyZWN0aW9uOkEsc2NhbGU6ZX09dGhpcy5fZ2V0UmVuZGVyZWREaXJlY3Rpb25BbmRTY2FsZSgpLHQ9dGhpcy5fdHJhbnNsYXRlUG9zc2l0aW9uVG9DYW1lcmEoKTt0aGlzLnJlbmRlcmVyLnVwZGF0ZURyYXdhYmxlUG9zaXRpb24odGhpcy5kcmF3YWJsZUlELHQpLHRoaXMucmVuZGVyZXIudXBkYXRlRHJhd2FibGVEaXJlY3Rpb25TY2FsZSh0aGlzLmRyYXdhYmxlSUQsQSxlLHRoaXMudHJhbnNmb3JtKSx0aGlzLnJlbmRlcmVyLnVwZGF0ZURyYXdhYmxlVmlzaWJsZSh0aGlzLmRyYXdhYmxlSUQsdGhpcy52aXNpYmxlKTtjb25zdCBuPXRoaXMuZ2V0Q29zdHVtZXMoKVt0aGlzLmN1cnJlbnRDb3N0dW1lXTt0aGlzLnJlbmRlcmVyLnVwZGF0ZURyYXdhYmxlU2tpbklkKHRoaXMuZHJhd2FibGVJRCxuLnNraW5JZCk7Zm9yKGNvbnN0IEEgaW4gdGhpcy5lZmZlY3RzKXRoaXMuZWZmZWN0cy5oYXNPd25Qcm9wZXJ0eShBKSYmdGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZUVmZmVjdCh0aGlzLmRyYXdhYmxlSUQsQSx0aGlzLmVmZmVjdHNbQV0pO3RoaXMudmlzaWJsZSYmKHRoaXMuZW1pdFZpc3VhbENoYW5nZSgpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCkpfXRoaXMucnVudGltZS5yZXF1ZXN0VGFyZ2V0c1VwZGF0ZSh0aGlzKX1nZXROYW1lKCl7cmV0dXJuIHRoaXMuc3ByaXRlLm5hbWV9aXNTcHJpdGUoKXtyZXR1cm4hdGhpcy5pc1N0YWdlJiZ0aGlzLmlzT3JpZ2luYWx9Z2V0Qm91bmRzKCl7cmV0dXJuIHRoaXMucmVuZGVyZXI/dGhpcy5ydW50aW1lLnJlbmRlcmVyLmdldEJvdW5kcyh0aGlzLmRyYXdhYmxlSUQpOm51bGx9Z2V0Qm91bmRzRm9yQnViYmxlKCl7cmV0dXJuIHRoaXMucmVuZGVyZXI/dGhpcy5ydW50aW1lLnJlbmRlcmVyLmdldEJvdW5kc0ZvckJ1YmJsZSh0aGlzLmRyYXdhYmxlSUQpOm51bGx9aXNUb3VjaGluZ09iamVjdChBLGUpe2lmKCJfbW91c2VfIj09PUEpe2lmKCF0aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLm1vdXNlKXJldHVybiExO2NvbnN0IEE9dGhpcy5ydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRDbGllbnRYKCksZT10aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLm1vdXNlLmdldENsaWVudFkoKTtyZXR1cm4gdGhpcy5pc1RvdWNoaW5nUG9pbnQoQSxlKX1yZXR1cm4iX2VkZ2VfIj09PUE/dGhpcy5pc1RvdWNoaW5nRWRnZSgpOmU/dGhpcy5pc1RvdWNoaW5nU3ByaXRlVW5vcmlnaW5hbHMoQSk6dGhpcy5pc1RvdWNoaW5nU3ByaXRlKEEpfWlzVG91Y2hpbmdQb2ludChBLGUpe3JldHVybiEhdGhpcy5yZW5kZXJlciYmdGhpcy5yZW5kZXJlci5kcmF3YWJsZVRvdWNoaW5nKHRoaXMuZHJhd2FibGVJRCxBLGUpfWlzVG91Y2hpbmdFZGdlKCl7aWYodGhpcy5yZW5kZXJlcil7Y29uc3QgQT10aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aCxlPXRoaXMucnVudGltZS5zdGFnZUhlaWdodCx0PXRoaXMuZ2V0Qm91bmRzKCk7aWYodC5sZWZ0PC1BLzJ8fHQucmlnaHQ+QS8yfHx0LnRvcD5lLzJ8fHQuYm90dG9tPC1lLzIpcmV0dXJuITB9cmV0dXJuITF9aXNUb3VjaGluZ1Nwcml0ZShBKXtBPXIudG9TdHJpbmcoQSk7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKEEpO2lmKCFlfHwhdGhpcy5yZW5kZXJlcilyZXR1cm4hMTtjb25zdCB0PWUuc3ByaXRlLmNsb25lcy5maWx0ZXIoQT0+IUEuZHJhZ2dpbmcpLm1hcChBPT5BLmRyYXdhYmxlSUQpO3JldHVybiB0aGlzLnJlbmRlcmVyLmlzVG91Y2hpbmdEcmF3YWJsZXModGhpcy5kcmF3YWJsZUlELHQpfWlzVG91Y2hpbmdUYXJnZXQoQSl7QT1yLnRvU3RyaW5nKEEpO2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoQSk7cmV0dXJuISghZXx8IXRoaXMucmVuZGVyZXJ8fGUuZHJhZ2dpbmcpJiZ0aGlzLnJlbmRlcmVyLmlzVG91Y2hpbmdEcmF3YWJsZXModGhpcy5kcmF3YWJsZUlELFtlLmRyYXdhYmxlSURdKX1pc1RvdWNoaW5nU3ByaXRlVW5vcmlnaW5hbHMoQSl7QT1yLnRvU3RyaW5nKEEpO2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZShBKTtpZighZXx8IXRoaXMucmVuZGVyZXIpcmV0dXJuITE7Y29uc3QgdD1lLnNwcml0ZS5jbG9uZXMuZmlsdGVyKEE9PiFBLmRyYWdnaW5nJiYhQS5pc09yaWdpbmFsKS5tYXAoQT0+QS5kcmF3YWJsZUlEKTtyZXR1cm4gdGhpcy5yZW5kZXJlci5pc1RvdWNoaW5nRHJhd2FibGVzKHRoaXMuZHJhd2FibGVJRCx0KX1zcHJpdGVUb3VjaGluZ1BvaW50KEEpe0E9ci50b1N0cmluZyhBKTtjb25zdCBlPXRoaXMucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUoQSk7aWYoIWV8fCF0aGlzLnJlbmRlcmVyKXJldHVybiBudWxsO2NvbnN0IHQ9ZS5zcHJpdGUuY2xvbmVzLmZpbHRlcihBPT4hQS5kcmFnZ2luZykubWFwKEE9PkEuZHJhd2FibGVJRCk7cmV0dXJuIHRoaXMucmVuZGVyZXIuZ2V0VG91Y2hpbmdEcmF3YWJsZXNQb2ludCh0aGlzLmRyYXdhYmxlSUQsdCl9aXNUb3VjaGluZ0NvbG9yKEEpe3JldHVybiEhdGhpcy5yZW5kZXJlciYmdGhpcy5yZW5kZXJlci5pc1RvdWNoaW5nQ29sb3IodGhpcy5kcmF3YWJsZUlELEEpfWNvbG9ySXNUb3VjaGluZ0NvbG9yKEEsZSl7cmV0dXJuISF0aGlzLnJlbmRlcmVyJiZ0aGlzLnJlbmRlcmVyLmlzVG91Y2hpbmdDb2xvcih0aGlzLmRyYXdhYmxlSUQsQSxlKX1nZXRMYXllck9yZGVyKCl7cmV0dXJuIHRoaXMucmVuZGVyZXI/dGhpcy5yZW5kZXJlci5nZXREcmF3YWJsZU9yZGVyKHRoaXMuZHJhd2FibGVJRCk6bnVsbH1nb1RvRnJvbnQoKXt0aGlzLnJlbmRlcmVyJiZ0aGlzLnJlbmRlcmVyLnNldERyYXdhYmxlT3JkZXIodGhpcy5kcmF3YWJsZUlELDEvMCxCLlNQUklURV9MQVlFUiksdGhpcy5ydW50aW1lLnNldEV4ZWN1dGFibGVQb3NpdGlvbih0aGlzLDEvMCl9Z29Ub0JhY2soKXt0aGlzLnJlbmRlcmVyJiZ0aGlzLnJlbmRlcmVyLnNldERyYXdhYmxlT3JkZXIodGhpcy5kcmF3YWJsZUlELC0xLzAsQi5TUFJJVEVfTEFZRVIsITEpLHRoaXMucnVudGltZS5zZXRFeGVjdXRhYmxlUG9zaXRpb24odGhpcywtMS8wKX1nb0ZvcndhcmRMYXllcnMoQSl7dGhpcy5yZW5kZXJlciYmdGhpcy5yZW5kZXJlci5zZXREcmF3YWJsZU9yZGVyKHRoaXMuZHJhd2FibGVJRCxBLEIuU1BSSVRFX0xBWUVSLCEwKSx0aGlzLnJ1bnRpbWUubW92ZUV4ZWN1dGFibGUodGhpcyxBKX1nb0JhY2t3YXJkTGF5ZXJzKEEpe3RoaXMucmVuZGVyZXImJnRoaXMucmVuZGVyZXIuc2V0RHJhd2FibGVPcmRlcih0aGlzLmRyYXdhYmxlSUQsLUEsQi5TUFJJVEVfTEFZRVIsITApLHRoaXMucnVudGltZS5tb3ZlRXhlY3V0YWJsZSh0aGlzLC1BKX1nb0JlaGluZE90aGVyKEEpe2lmKHRoaXMucmVuZGVyZXIpe2NvbnN0IGU9dGhpcy5yZW5kZXJlci5zZXREcmF3YWJsZU9yZGVyKEEuZHJhd2FibGVJRCwwLEIuU1BSSVRFX0xBWUVSLCEwKTt0aGlzLnJlbmRlcmVyLnNldERyYXdhYmxlT3JkZXIodGhpcy5kcmF3YWJsZUlELGUsQi5TUFJJVEVfTEFZRVIpfWNvbnN0IGU9dGhpcy5ydW50aW1lLmV4ZWN1dGFibGVUYXJnZXRzLmluZGV4T2YoQSk7dGhpcy5ydW50aW1lLnNldEV4ZWN1dGFibGVQb3NpdGlvbih0aGlzLGUpfWtlZXBJbkZlbmNlKEEsZSx0KXtsZXQgbj10O258fChuPXtsZWZ0Oi10aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aC8yLHJpZ2h0OnRoaXMucnVudGltZS5zdGFnZVdpZHRoLzIsdG9wOnRoaXMucnVudGltZS5zdGFnZUhlaWdodC8yLGJvdHRvbTotdGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0LzJ9KTtjb25zdCBpPXRoaXMuZ2V0Qm91bmRzKCk7aWYoIWkpcmV0dXJuO2kubGVmdCs9QS10aGlzLngsaS5yaWdodCs9QS10aGlzLngsaS50b3ArPWUtdGhpcy55LGkuYm90dG9tKz1lLXRoaXMueTtsZXQgcj0wLG89MDtyZXR1cm4gaS5sZWZ0PG4ubGVmdCYmKHIrPW4ubGVmdC1pLmxlZnQpLGkucmlnaHQ+bi5yaWdodCYmKHIrPW4ucmlnaHQtaS5yaWdodCksaS50b3A+bi50b3AmJihvKz1uLnRvcC1pLnRvcCksaS5ib3R0b208bi5ib3R0b20mJihvKz1uLmJvdHRvbS1pLmJvdHRvbSksW0ErcixlK29dfW1ha2VDbG9uZSgpe2lmKCF0aGlzLnJ1bnRpbWUuY2xvbmVzQXZhaWxhYmxlKCl8fHRoaXMuaXNTdGFnZSlyZXR1cm4gbnVsbDt0aGlzLnJ1bnRpbWUuY2hhbmdlQ2xvbmVDb3VudGVyKDEpO2NvbnN0IEE9dGhpcy5zcHJpdGUuY3JlYXRlQ2xvbmUoKTtyZXR1cm4gQS54PXRoaXMueCxBLnk9dGhpcy55LEEuZGlyZWN0aW9uPXRoaXMuZGlyZWN0aW9uLEEuZHJhZ2dhYmxlPXRoaXMuZHJhZ2dhYmxlLEEudmlzaWJsZT10aGlzLnZpc2libGUsQS5zaXplPXRoaXMuc2l6ZSxBLnN0cmV0Y2g9dGhpcy5zdHJldGNoLEEuY3VycmVudENvc3R1bWU9dGhpcy5jdXJyZW50Q29zdHVtZSxBLnJvdGF0aW9uU3R5bGU9dGhpcy5yb3RhdGlvblN0eWxlLEEuZWZmZWN0cz1vLnNpbXBsZSh0aGlzLmVmZmVjdHMpLEEudmFyaWFibGVzPXRoaXMuZHVwbGljYXRlVmFyaWFibGVzKCksQS5jYW1lcmFCb3VuZD10aGlzLmNhbWVyYUJvdW5kLEEuX2VkZ2VBY3RpdmF0ZWRIYXRWYWx1ZXM9by5zaW1wbGUodGhpcy5fZWRnZUFjdGl2YXRlZEhhdFZhbHVlcyksQS5pbml0RHJhd2FibGUoQi5TUFJJVEVfTEFZRVIpLEEudXBkYXRlQWxsRHJhd2FibGVQcm9wZXJ0aWVzKCksQX1kdXBsaWNhdGUoKXtyZXR1cm4gdGhpcy5zcHJpdGUuZHVwbGljYXRlKCkudGhlbihBPT57Y29uc3QgZT1BLmNyZWF0ZUNsb25lKCk7cmV0dXJuIGUueD00MDAqKE1hdGgucmFuZG9tKCktLjUpLzIsZS55PTMwMCooTWF0aC5yYW5kb20oKS0uNSkvMixlLmRpcmVjdGlvbj10aGlzLmRpcmVjdGlvbixlLmRyYWdnYWJsZT10aGlzLmRyYWdnYWJsZSxlLnZpc2libGU9dGhpcy52aXNpYmxlLGUuc2l6ZT10aGlzLnNpemUsZS5zdHJldGNoPXRoaXMuc3RyZXRjaCxlLmN1cnJlbnRDb3N0dW1lPXRoaXMuY3VycmVudENvc3R1bWUsZS5yb3RhdGlvblN0eWxlPXRoaXMucm90YXRpb25TdHlsZSxlLmVmZmVjdHM9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmVmZmVjdHMpKSxlLnZhcmlhYmxlcz10aGlzLmR1cGxpY2F0ZVZhcmlhYmxlcyhlLmJsb2NrcyksZS5jYW1lcmFCb3VuZD10aGlzLmNhbWVyYUJvdW5kLGUudXBkYXRlQWxsRHJhd2FibGVQcm9wZXJ0aWVzKCksZX0pfW9uR3JlZW5GbGFnKCl7dGhpcy5jbGVhckVmZmVjdHMoKX1vblN0b3BBbGwoKXt0aGlzLmNsZWFyRWZmZWN0cygpfXBvc3RTcHJpdGVJbmZvKEEpe2NvbnN0IGU9QS5oYXNPd25Qcm9wZXJ0eSgiZm9yY2UiKT9BLmZvcmNlOm51bGwsdD1BLmhhc093blByb3BlcnR5KCJ4Iiksbj1BLmhhc093blByb3BlcnR5KCJ5Iik7KHR8fG4pJiZ0aGlzLnNldFhZKHQ/QS54OnRoaXMueCxuP0EueTp0aGlzLnksZSksQS5oYXNPd25Qcm9wZXJ0eSgiZGlyZWN0aW9uIikmJnRoaXMuc2V0RGlyZWN0aW9uKEEuZGlyZWN0aW9uKSxBLmhhc093blByb3BlcnR5KCJkcmFnZ2FibGUiKSYmdGhpcy5zZXREcmFnZ2FibGUoQS5kcmFnZ2FibGUpLEEuaGFzT3duUHJvcGVydHkoInJvdGF0aW9uU3R5bGUiKSYmdGhpcy5zZXRSb3RhdGlvblN0eWxlKEEucm90YXRpb25TdHlsZSksQS5oYXNPd25Qcm9wZXJ0eSgidmlzaWJsZSIpJiZ0aGlzLnNldFZpc2libGUoQS52aXNpYmxlKSxBLmhhc093blByb3BlcnR5KCJzaXplIikmJnRoaXMuc2V0U2l6ZShBLnNpemUpfXN0YXJ0RHJhZygpe3RoaXMuZHJhZ2dpbmc9ITB9c3RvcERyYWcoKXt0aGlzLmRyYWdnaW5nPSExfXRvSlNPTigpe2NvbnN0IEE9dGhpcy5nZXRDb3N0dW1lcygpO3JldHVybntpZDp0aGlzLmlkLG5hbWU6dGhpcy5nZXROYW1lKCksaXNTdGFnZTp0aGlzLmlzU3RhZ2UsaXNEaXNwb3NlZDp0aGlzLmlzRGlzcG9zZWQseDp0aGlzLngseTp0aGlzLnksc2l6ZTp0aGlzLnNpemUsZGlyZWN0aW9uOnRoaXMuZGlyZWN0aW9uLGRyYWdnYWJsZTp0aGlzLmRyYWdnYWJsZSxjdXJyZW50Q29zdHVtZTp0aGlzLmN1cnJlbnRDb3N0dW1lLGNvc3R1bWU6QVt0aGlzLmN1cnJlbnRDb3N0dW1lXSxjb3N0dW1lQ291bnQ6QS5sZW5ndGgsdmlzaWJsZTp0aGlzLnZpc2libGUscm90YXRpb25TdHlsZTp0aGlzLnJvdGF0aW9uU3R5bGUsY29tbWVudHM6dGhpcy5jb21tZW50cyxibG9ja3M6dGhpcy5ibG9ja3MuX2Jsb2Nrcyx2YXJpYWJsZXM6dGhpcy52YXJpYWJsZXMsY29zdHVtZXM6QSxzb3VuZHM6dGhpcy5nZXRTb3VuZHMoKSx0ZXh0VG9TcGVlY2hMYW5ndWFnZTp0aGlzLnRleHRUb1NwZWVjaExhbmd1YWdlLHRlbXBvOnRoaXMudGVtcG8sdm9sdW1lOnRoaXMudm9sdW1lLHZpZGVvVHJhbnNwYXJlbmN5OnRoaXMudmlkZW9UcmFuc3BhcmVuY3ksdmlkZW9TdGF0ZTp0aGlzLnZpZGVvU3RhdGV9fWRpc3Bvc2UoKXt0aGlzLnJ1bnRpbWUucmVtb3ZlTGlzdGVuZXIoIkNBTUVSQV9DSEFOR0VEIix0aGlzLmNhbWVyYVVwZGF0ZUV2ZW50KSx0aGlzLmlzT3JpZ2luYWx8fHRoaXMucnVudGltZS5jaGFuZ2VDbG9uZUNvdW50ZXIoLTEpLHRoaXMuaXNEaXNwb3NlZD0hMCx0aGlzLnJ1bnRpbWUuc3RvcEZvclRhcmdldCh0aGlzKSx0aGlzLnJ1bnRpbWUucmVtb3ZlRXhlY3V0YWJsZSh0aGlzKSx0aGlzLnNwcml0ZS5yZW1vdmVDbG9uZSh0aGlzKSx0aGlzLnJlbmRlcmVyJiZudWxsIT09dGhpcy5kcmF3YWJsZUlEJiYodGhpcy5yZW5kZXJlci5kZXN0cm95RHJhd2FibGUodGhpcy5kcmF3YWJsZUlELHRoaXMuaXNTdGFnZT9CLkJBQ0tHUk9VTkRfTEFZRVI6Qi5TUFJJVEVfTEFZRVIpLHRoaXMudmlzaWJsZSYmKHRoaXMuZW1pdFZpc3VhbENoYW5nZSgpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCkpKX1nZXRDb3N0dW1lVHlwZShBKXtjb25zdCBlPXRoaXMsdD10aGlzLmdldENvc3R1bWVzKClbQV07aWYodClyZXR1cm4gdC5jdXN0b21JZD0icG0tY29zdHVtZS1hc3NldCIsT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9tb25pdG9yVXBUb0RhdGUiLHtnZXQoKXtyZXR1cm4gdGhpcy5fb2xkTmFtZT09PXRoaXMubmFtZSYmKHRoaXMuX29sZFNpemVYPT09dGhpcy5zaXplWzBdJiYodGhpcy5fb2xkU2l6ZVk9PT10aGlzLnNpemVbMV0mJih0aGlzLl9vbGRBc3NldElkPT09dGhpcy5hc3NldElkJiZ0aGlzLl9vbGRJbmRleD09PWUuZ2V0Q29zdHVtZUluZGV4QnlOYW1lKHRoaXMubmFtZSkpKSl9fSksdC50b1JlcG9ydGVyQ29udGVudD1mdW5jdGlvbigpe3RoaXMuX29sZE5hbWU9dGhpcy5uYW1lLHRoaXMuX29sZFNpemVYPXRoaXMuc2l6ZVswXSx0aGlzLl9vbGRTaXplWT10aGlzLnNpemVbMV0sdGhpcy5fb2xkQXNzZXRJZD10aGlzLmFzc2V0SWQsdGhpcy5fb2xkSW5kZXg9ZS5nZXRDb3N0dW1lSW5kZXhCeU5hbWUodGhpcy5uYW1lKTtjb25zdCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiBBLmlubmVySFRNTD0nPGRpdiBzdHlsZT0iXG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgaHNsYSgwLCAwJSwgMCUsIDAuMTUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogaHNsYSgyMjUsIDE1JSwgNDAlLCAxKTtcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICI+XG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyBcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsgXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLjQ1cmVtOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMC41NXJlbTsgXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMWVtOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICcuY29uY2F0KGcoKGUuZ2V0Q29zdHVtZUluZGV4QnlOYW1lKHRoaXMubmFtZSkrMXx8IlgiKS50b1N0cmluZygpKSwnXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9Im1heC13aWR0aDogMzJweDsgbWF4LWhlaWdodDogMzJweDsiIFxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSInKS5jb25jYXQoZyhjKHRoaXMuYXNzZXQpKSwnIlxuICAgICAgICAgICAgICAgICAgICA+PC9pbWc+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0icGFkZGluZzogMC4yNXJlbTsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IHdoaXRlLXNwYWNlOiBub3dyYXA7Ij5cbiAgICAgICAgICAgICAgICAgICAgJykuY29uY2F0KGcodGhpcy5uYW1lKSwnXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMC41cmVtOyBtYXJnaW4tdG9wOiAwLjEyNXJlbSI+XG4gICAgICAgICAgICAgICAgICAgICAgICAnKS5jb25jYXQoZyhNYXRoLnJvdW5kKHRoaXMuc2l6ZVswXSkudG9TdHJpbmcoKSksIiB4ICIpLmNvbmNhdChnKE1hdGgucm91bmQodGhpcy5zaXplWzFdKS50b1N0cmluZygpKSwiXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+IiksQX0sdH1nZXRTb3VuZFR5cGUoQSl7Y29uc3QgZT10aGlzLHQ9dGhpcy5nZXRTb3VuZHMoKVtBXTtpZih0KXJldHVybiB0LmN1c3RvbUlkPSJwbS1zb3VuZC1hc3NldCIsT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsIl9tb25pdG9yVXBUb0RhdGUiLHtnZXQoKXtyZXR1cm4gdGhpcy5fb2xkTmFtZT09PXRoaXMubmFtZSYmKHRoaXMuX29sZEFzc2V0SWQ9PT10aGlzLmFzc2V0SWQmJih0aGlzLl9vbGRTYW1wbGVSYXRlPT09dGhpcy5yYXRlJiYodGhpcy5fb2xkU2FtcGxlQ291bnQ9PT10aGlzLnNhbXBsZUNvdW50JiZ0aGlzLl9vbGRJbmRleD09PWUuZ2V0U291bmRJbmRleEJ5TmFtZSh0aGlzLm5hbWUpKSkpfX0pLHQudG9SZXBvcnRlckNvbnRlbnQ9ZnVuY3Rpb24oKXt0aGlzLl9vbGROYW1lPXRoaXMubmFtZSx0aGlzLl9vbGRBc3NldElkPXRoaXMuYXNzZXRJZCx0aGlzLl9vbGRTYW1wbGVSYXRlPXRoaXMucmF0ZSx0aGlzLl9vbGRTYW1wbGVDb3VudD10aGlzLnNhbXBsZUNvdW50LHRoaXMuX29sZEluZGV4PWUuZ2V0U291bmRJbmRleEJ5TmFtZSh0aGlzLm5hbWUpO2NvbnN0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIEEuaW5uZXJIVE1MPSc8ZGl2IHN0eWxlPSJcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1cmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBoc2xhKDAsIDAlLCAwJSwgMC4xNSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBoc2xhKDIyNSwgMTUlLCA0MCUsIDEpO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IFxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9IlxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAuNDVyZW07IFxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwLjU1cmVtOyBcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxZW07IFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAiPlxuICAgICAgICAgICAgICAgICAgICAgICAgJy5jb25jYXQoZygoZS5nZXRTb3VuZEluZGV4QnlOYW1lKHRoaXMubmFtZSkrMXx8IlgiKS50b1N0cmluZygpKSwnXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9Im1heC13aWR0aDogMzJweDsgbWF4LWhlaWdodDogMzJweDsiIFxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSJzdGF0aWMvYXNzZXRzLzYzZTU4MjdjMTUwNjIxNmJkN2M5OTI3YTRlNWViNTU4LnN2ZyJcbiAgICAgICAgICAgICAgICAgICAgPjwvaW1nPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9InBhZGRpbmc6IDAuMjVyZW07IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aGl0ZS1zcGFjZTogbm93cmFwOyI+XG4gICAgICAgICAgICAgICAgICAgICcpLmNvbmNhdChnKHRoaXMubmFtZSksJ1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJmb250LXNpemU6IDAuNXJlbTsgbWFyZ2luLXRvcDogMC4xMjVyZW0iPlxuICAgICAgICAgICAgICAgICAgICAgICAgJykuY29uY2F0KGcoKHRoaXMuc2FtcGxlQ291bnQvdGhpcy5yYXRlKS50b0ZpeGVkKDIpKSwiXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+IiksQX0sdH1nZXQgX21vbml0b3JVcFRvRGF0ZSgpe3JldHVybiB0aGlzLl9vbGROYW1lPT09dGhpcy5nZXROYW1lKCkmJih0aGlzLl9vbGRDb3N0dW1lSWR4PT09dGhpcy5jdXJyZW50Q29zdHVtZSYmdGhpcy5fb2xkQ29zdHVtZUFzc2V0SWQ9PT10aGlzLmdldEN1cnJlbnRDb3N0dW1lKCkuYXNzZXRJZCl9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5nZXROYW1lKCl9dG9SZXBvcnRlckNvbnRlbnQoKXt0aGlzLl9vbGROYW1lPXRoaXMuZ2V0TmFtZSgpLHRoaXMuX29sZENvc3R1bWVJZHg9dGhpcy5jdXJyZW50Q29zdHVtZSx0aGlzLl9vbGRDb3N0dW1lQXNzZXRJZD10aGlzLmdldEN1cnJlbnRDb3N0dW1lKCkuYXNzZXRJZDtjb25zdCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiBBLmlubmVySFRNTD0nPGRpdiBzdHlsZT0iXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgaHNsYSgwLCAwJSwgMCUsIDAuMTUpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICAgICAgY29sb3I6IGhzbGEoMjI1LCAxNSUsIDQwJSwgMSk7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgIj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9IlxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IFxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgIj5cbiAgICAgICAgICAgICAgICA8aW1nIFxuICAgICAgICAgICAgICAgICAgICBzdHlsZT0ibWF4LXdpZHRoOiAzMnB4OyBtYXgtaGVpZ2h0OiAzMnB4OyIgXG4gICAgICAgICAgICAgICAgICAgIHNyYz0iJy5jb25jYXQoZyhjKHRoaXMuZ2V0Q3VycmVudENvc3R1bWUoKS5hc3NldCkpLCciXG4gICAgICAgICAgICAgICAgPjwvaW1nPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPSJwYWRkaW5nOiAwLjI1cmVtOyB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgd2hpdGUtc3BhY2U6IG5vd3JhcDsiPlxuICAgICAgICAgICAgICAgICcpLmNvbmNhdChnKHRoaXMuZ2V0TmFtZSgpKSwiXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+IiksQS5vbmNsaWNrPSgpPT50aGlzLnJ1bnRpbWUudm0uc2V0RWRpdGluZ1RhcmdldCh0aGlzLmlkKSxBfX1BLmV4cG9ydHM9RX0sZnVuY3Rpb24oQSxlLHQpewovKiEgQGxpY2Vuc2UgRE9NUHVyaWZ5IDIuNS44IHwgKGMpIEN1cmU1MyBhbmQgb3RoZXIgY29udHJpYnV0b3JzIHwgUmVsZWFzZWQgdW5kZXIgdGhlIEFwYWNoZSBsaWNlbnNlIDIuMCBhbmQgTW96aWxsYSBQdWJsaWMgTGljZW5zZSAyLjAgfCBnaXRodWIuY29tL2N1cmU1My9ET01QdXJpZnkvYmxvYi8yLjUuOC9MSUNFTlNFICovCkEuZXhwb3J0cz1mdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBBKGUpe3JldHVybihBPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKEEpe3JldHVybiB0eXBlb2YgQX06ZnVuY3Rpb24oQSl7cmV0dXJuIEEmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJkEuY29uc3RydWN0b3I9PT1TeW1ib2wmJkEhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBBfSkoZSl9ZnVuY3Rpb24gZShBLHQpe3JldHVybihlPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5fX3Byb3RvX189ZSxBfSkoQSx0KX1mdW5jdGlvbiB0KCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBSZWZsZWN0fHwhUmVmbGVjdC5jb25zdHJ1Y3QpcmV0dXJuITE7aWYoUmVmbGVjdC5jb25zdHJ1Y3Quc2hhbSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUHJveHkpcmV0dXJuITA7dHJ5e3JldHVybiBCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbixbXSwoZnVuY3Rpb24oKXt9KSkpLCEwfWNhdGNoKEEpe3JldHVybiExfX1mdW5jdGlvbiBuKEEsaSxyKXtyZXR1cm4obj10KCk/UmVmbGVjdC5jb25zdHJ1Y3Q6ZnVuY3Rpb24oQSx0LG4pe3ZhciBpPVtudWxsXTtpLnB1c2guYXBwbHkoaSx0KTt2YXIgcj1uZXcoRnVuY3Rpb24uYmluZC5hcHBseShBLGkpKTtyZXR1cm4gbiYmZShyLG4ucHJvdG90eXBlKSxyfSkuYXBwbHkobnVsbCxhcmd1bWVudHMpfWZ1bmN0aW9uIGkoQSl7cmV0dXJuIGZ1bmN0aW9uKEEpe2lmKEFycmF5LmlzQXJyYXkoQSkpcmV0dXJuIHIoQSl9KEEpfHxmdW5jdGlvbihBKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmbnVsbCE9QVtTeW1ib2wuaXRlcmF0b3JdfHxudWxsIT1BWyJAQGl0ZXJhdG9yIl0pcmV0dXJuIEFycmF5LmZyb20oQSl9KEEpfHxmdW5jdGlvbihBLGUpe2lmKEEpe2lmKCJzdHJpbmciPT10eXBlb2YgQSlyZXR1cm4gcihBLGUpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChBKS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PXQmJkEuY29uc3RydWN0b3ImJih0PUEuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT10fHwiU2V0Ij09PXQ/QXJyYXkuZnJvbShBKToiQXJndW1lbnRzIj09PXR8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KHQpP3IoQSxlKTp2b2lkIDB9fShBKXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gc3ByZWFkIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiByKEEsZSl7KG51bGw9PWV8fGU+QS5sZW5ndGgpJiYoZT1BLmxlbmd0aCk7Zm9yKHZhciB0PTAsbj1uZXcgQXJyYXkoZSk7dDxlO3QrKyluW3RdPUFbdF07cmV0dXJuIG59dmFyIG89T2JqZWN0Lmhhc093blByb3BlcnR5LHM9T2JqZWN0LnNldFByb3RvdHlwZU9mLGE9T2JqZWN0LmlzRnJvemVuLEI9T2JqZWN0LmdldFByb3RvdHlwZU9mLGM9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixnPU9iamVjdC5mcmVlemUsRT1PYmplY3Quc2VhbCxRPU9iamVjdC5jcmVhdGUsdT0idW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3QsbD11LmFwcGx5LGg9dS5jb25zdHJ1Y3Q7bHx8KGw9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBLmFwcGx5KGUsdCl9KSxnfHwoZz1mdW5jdGlvbihBKXtyZXR1cm4gQX0pLEV8fChFPWZ1bmN0aW9uKEEpe3JldHVybiBBfSksaHx8KGg9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbihBLGkoZSkpfSk7dmFyIHcsQz1VKEFycmF5LnByb3RvdHlwZS5mb3JFYWNoKSxJPVUoQXJyYXkucHJvdG90eXBlLnBvcCksTT1VKEFycmF5LnByb3RvdHlwZS5wdXNoKSxkPVUoU3RyaW5nLnByb3RvdHlwZS50b0xvd2VyQ2FzZSkscD1VKFN0cmluZy5wcm90b3R5cGUudG9TdHJpbmcpLG09VShTdHJpbmcucHJvdG90eXBlLm1hdGNoKSxGPVUoU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlKSxEPVUoU3RyaW5nLnByb3RvdHlwZS5pbmRleE9mKSxZPVUoU3RyaW5nLnByb3RvdHlwZS50cmltKSxmPVUoUmVnRXhwLnByb3RvdHlwZS50ZXN0KSxOPSh3PVR5cGVFcnJvcixmdW5jdGlvbigpe2Zvcih2YXIgQT1hcmd1bWVudHMubGVuZ3RoLGU9bmV3IEFycmF5KEEpLHQ9MDt0PEE7dCsrKWVbdF09YXJndW1lbnRzW3RdO3JldHVybiBoKHcsZSl9KTtmdW5jdGlvbiBVKEEpe3JldHVybiBmdW5jdGlvbihlKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxuPW5ldyBBcnJheSh0PjE/dC0xOjApLGk9MTtpPHQ7aSsrKW5baS0xXT1hcmd1bWVudHNbaV07cmV0dXJuIGwoQSxlLG4pfX1mdW5jdGlvbiB5KEEsZSx0KXt2YXIgbjt0PW51bGwhPT0obj10KSYmdm9pZCAwIT09bj9uOmQscyYmcyhBLG51bGwpO2Zvcih2YXIgaT1lLmxlbmd0aDtpLS07KXt2YXIgcj1lW2ldO2lmKCJzdHJpbmciPT10eXBlb2Ygcil7dmFyIG89dChyKTtvIT09ciYmKGEoZSl8fChlW2ldPW8pLHI9byl9QVtyXT0hMH1yZXR1cm4gQX1mdW5jdGlvbiBUKEEpe3ZhciBlLHQ9UShudWxsKTtmb3IoZSBpbiBBKSEwPT09bChvLEEsW2VdKSYmKHRbZV09QVtlXSk7cmV0dXJuIHR9ZnVuY3Rpb24geChBLGUpe2Zvcig7bnVsbCE9PUE7KXt2YXIgdD1jKEEsZSk7aWYodCl7aWYodC5nZXQpcmV0dXJuIFUodC5nZXQpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiB0LnZhbHVlKXJldHVybiBVKHQudmFsdWUpfUE9QihBKX1yZXR1cm4gZnVuY3Rpb24oQSl7cmV0dXJuIGNvbnNvbGUud2FybigiZmFsbGJhY2sgdmFsdWUgZm9yIixBKSxudWxsfX12YXIgUj1nKFsiYSIsImFiYnIiLCJhY3JvbnltIiwiYWRkcmVzcyIsImFyZWEiLCJhcnRpY2xlIiwiYXNpZGUiLCJhdWRpbyIsImIiLCJiZGkiLCJiZG8iLCJiaWciLCJibGluayIsImJsb2NrcXVvdGUiLCJib2R5IiwiYnIiLCJidXR0b24iLCJjYW52YXMiLCJjYXB0aW9uIiwiY2VudGVyIiwiY2l0ZSIsImNvZGUiLCJjb2wiLCJjb2xncm91cCIsImNvbnRlbnQiLCJkYXRhIiwiZGF0YWxpc3QiLCJkZCIsImRlY29yYXRvciIsImRlbCIsImRldGFpbHMiLCJkZm4iLCJkaWFsb2ciLCJkaXIiLCJkaXYiLCJkbCIsImR0IiwiZWxlbWVudCIsImVtIiwiZmllbGRzZXQiLCJmaWdjYXB0aW9uIiwiZmlndXJlIiwiZm9udCIsImZvb3RlciIsImZvcm0iLCJoMSIsImgyIiwiaDMiLCJoNCIsImg1IiwiaDYiLCJoZWFkIiwiaGVhZGVyIiwiaGdyb3VwIiwiaHIiLCJodG1sIiwiaSIsImltZyIsImlucHV0IiwiaW5zIiwia2JkIiwibGFiZWwiLCJsZWdlbmQiLCJsaSIsIm1haW4iLCJtYXAiLCJtYXJrIiwibWFycXVlZSIsIm1lbnUiLCJtZW51aXRlbSIsIm1ldGVyIiwibmF2Iiwibm9iciIsIm9sIiwib3B0Z3JvdXAiLCJvcHRpb24iLCJvdXRwdXQiLCJwIiwicGljdHVyZSIsInByZSIsInByb2dyZXNzIiwicSIsInJwIiwicnQiLCJydWJ5IiwicyIsInNhbXAiLCJzZWN0aW9uIiwic2VsZWN0Iiwic2hhZG93Iiwic21hbGwiLCJzb3VyY2UiLCJzcGFjZXIiLCJzcGFuIiwic3RyaWtlIiwic3Ryb25nIiwic3R5bGUiLCJzdWIiLCJzdW1tYXJ5Iiwic3VwIiwidGFibGUiLCJ0Ym9keSIsInRkIiwidGVtcGxhdGUiLCJ0ZXh0YXJlYSIsInRmb290IiwidGgiLCJ0aGVhZCIsInRpbWUiLCJ0ciIsInRyYWNrIiwidHQiLCJ1IiwidWwiLCJ2YXIiLCJ2aWRlbyIsIndiciJdKSxHPWcoWyJzdmciLCJhIiwiYWx0Z2x5cGgiLCJhbHRnbHlwaGRlZiIsImFsdGdseXBoaXRlbSIsImFuaW1hdGVjb2xvciIsImFuaW1hdGVtb3Rpb24iLCJhbmltYXRldHJhbnNmb3JtIiwiY2lyY2xlIiwiY2xpcHBhdGgiLCJkZWZzIiwiZGVzYyIsImVsbGlwc2UiLCJmaWx0ZXIiLCJmb250IiwiZyIsImdseXBoIiwiZ2x5cGhyZWYiLCJoa2VybiIsImltYWdlIiwibGluZSIsImxpbmVhcmdyYWRpZW50IiwibWFya2VyIiwibWFzayIsIm1ldGFkYXRhIiwibXBhdGgiLCJwYXRoIiwicGF0dGVybiIsInBvbHlnb24iLCJwb2x5bGluZSIsInJhZGlhbGdyYWRpZW50IiwicmVjdCIsInN0b3AiLCJzdHlsZSIsInN3aXRjaCIsInN5bWJvbCIsInRleHQiLCJ0ZXh0cGF0aCIsInRpdGxlIiwidHJlZiIsInRzcGFuIiwidmlldyIsInZrZXJuIl0pLFM9ZyhbImZlQmxlbmQiLCJmZUNvbG9yTWF0cml4IiwiZmVDb21wb25lbnRUcmFuc2ZlciIsImZlQ29tcG9zaXRlIiwiZmVDb252b2x2ZU1hdHJpeCIsImZlRGlmZnVzZUxpZ2h0aW5nIiwiZmVEaXNwbGFjZW1lbnRNYXAiLCJmZURpc3RhbnRMaWdodCIsImZlRmxvb2QiLCJmZUZ1bmNBIiwiZmVGdW5jQiIsImZlRnVuY0ciLCJmZUZ1bmNSIiwiZmVHYXVzc2lhbkJsdXIiLCJmZUltYWdlIiwiZmVNZXJnZSIsImZlTWVyZ2VOb2RlIiwiZmVNb3JwaG9sb2d5IiwiZmVPZmZzZXQiLCJmZVBvaW50TGlnaHQiLCJmZVNwZWN1bGFyTGlnaHRpbmciLCJmZVNwb3RMaWdodCIsImZlVGlsZSIsImZlVHVyYnVsZW5jZSJdKSxiPWcoWyJhbmltYXRlIiwiY29sb3ItcHJvZmlsZSIsImN1cnNvciIsImRpc2NhcmQiLCJmZWRyb3BzaGFkb3ciLCJmb250LWZhY2UiLCJmb250LWZhY2UtZm9ybWF0IiwiZm9udC1mYWNlLW5hbWUiLCJmb250LWZhY2Utc3JjIiwiZm9udC1mYWNlLXVyaSIsImZvcmVpZ25vYmplY3QiLCJoYXRjaCIsImhhdGNocGF0aCIsIm1lc2giLCJtZXNoZ3JhZGllbnQiLCJtZXNocGF0Y2giLCJtZXNocm93IiwibWlzc2luZy1nbHlwaCIsInNjcmlwdCIsInNldCIsInNvbGlkY29sb3IiLCJ1bmtub3duIiwidXNlIl0pLEg9ZyhbIm1hdGgiLCJtZW5jbG9zZSIsIm1lcnJvciIsIm1mZW5jZWQiLCJtZnJhYyIsIm1nbHlwaCIsIm1pIiwibWxhYmVsZWR0ciIsIm1tdWx0aXNjcmlwdHMiLCJtbiIsIm1vIiwibW92ZXIiLCJtcGFkZGVkIiwibXBoYW50b20iLCJtcm9vdCIsIm1yb3ciLCJtcyIsIm1zcGFjZSIsIm1zcXJ0IiwibXN0eWxlIiwibXN1YiIsIm1zdXAiLCJtc3Vic3VwIiwibXRhYmxlIiwibXRkIiwibXRleHQiLCJtdHIiLCJtdW5kZXIiLCJtdW5kZXJvdmVyIl0pLHY9ZyhbIm1hY3Rpb24iLCJtYWxpZ25ncm91cCIsIm1hbGlnbm1hcmsiLCJtbG9uZ2RpdiIsIm1zY2FycmllcyIsIm1zY2FycnkiLCJtc2dyb3VwIiwibXN0YWNrIiwibXNsaW5lIiwibXNyb3ciLCJzZW1hbnRpY3MiLCJhbm5vdGF0aW9uIiwiYW5ub3RhdGlvbi14bWwiLCJtcHJlc2NyaXB0cyIsIm5vbmUiXSksaz1nKFsiI3RleHQiXSksaj1nKFsiYWNjZXB0IiwiYWN0aW9uIiwiYWxpZ24iLCJhbHQiLCJhdXRvY2FwaXRhbGl6ZSIsImF1dG9jb21wbGV0ZSIsImF1dG9waWN0dXJlaW5waWN0dXJlIiwiYXV0b3BsYXkiLCJiYWNrZ3JvdW5kIiwiYmdjb2xvciIsImJvcmRlciIsImNhcHR1cmUiLCJjZWxscGFkZGluZyIsImNlbGxzcGFjaW5nIiwiY2hlY2tlZCIsImNpdGUiLCJjbGFzcyIsImNsZWFyIiwiY29sb3IiLCJjb2xzIiwiY29sc3BhbiIsImNvbnRyb2xzIiwiY29udHJvbHNsaXN0IiwiY29vcmRzIiwiY3Jvc3NvcmlnaW4iLCJkYXRldGltZSIsImRlY29kaW5nIiwiZGVmYXVsdCIsImRpciIsImRpc2FibGVkIiwiZGlzYWJsZXBpY3R1cmVpbnBpY3R1cmUiLCJkaXNhYmxlcmVtb3RlcGxheWJhY2siLCJkb3dubG9hZCIsImRyYWdnYWJsZSIsImVuY3R5cGUiLCJlbnRlcmtleWhpbnQiLCJmYWNlIiwiZm9yIiwiaGVhZGVycyIsImhlaWdodCIsImhpZGRlbiIsImhpZ2giLCJocmVmIiwiaHJlZmxhbmciLCJpZCIsImlucHV0bW9kZSIsImludGVncml0eSIsImlzbWFwIiwia2luZCIsImxhYmVsIiwibGFuZyIsImxpc3QiLCJsb2FkaW5nIiwibG9vcCIsImxvdyIsIm1heCIsIm1heGxlbmd0aCIsIm1lZGlhIiwibWV0aG9kIiwibWluIiwibWlubGVuZ3RoIiwibXVsdGlwbGUiLCJtdXRlZCIsIm5hbWUiLCJub25jZSIsIm5vc2hhZGUiLCJub3ZhbGlkYXRlIiwibm93cmFwIiwib3BlbiIsIm9wdGltdW0iLCJwYXR0ZXJuIiwicGxhY2Vob2xkZXIiLCJwbGF5c2lubGluZSIsInBvc3RlciIsInByZWxvYWQiLCJwdWJkYXRlIiwicmFkaW9ncm91cCIsInJlYWRvbmx5IiwicmVsIiwicmVxdWlyZWQiLCJyZXYiLCJyZXZlcnNlZCIsInJvbGUiLCJyb3dzIiwicm93c3BhbiIsInNwZWxsY2hlY2siLCJzY29wZSIsInNlbGVjdGVkIiwic2hhcGUiLCJzaXplIiwic2l6ZXMiLCJzcGFuIiwic3JjbGFuZyIsInN0YXJ0Iiwic3JjIiwic3Jjc2V0Iiwic3RlcCIsInN0eWxlIiwic3VtbWFyeSIsInRhYmluZGV4IiwidGl0bGUiLCJ0cmFuc2xhdGUiLCJ0eXBlIiwidXNlbWFwIiwidmFsaWduIiwidmFsdWUiLCJ3aWR0aCIsInhtbG5zIiwic2xvdCJdKSxKPWcoWyJhY2NlbnQtaGVpZ2h0IiwiYWNjdW11bGF0ZSIsImFkZGl0aXZlIiwiYWxpZ25tZW50LWJhc2VsaW5lIiwiYXNjZW50IiwiYXR0cmlidXRlbmFtZSIsImF0dHJpYnV0ZXR5cGUiLCJhemltdXRoIiwiYmFzZWZyZXF1ZW5jeSIsImJhc2VsaW5lLXNoaWZ0IiwiYmVnaW4iLCJiaWFzIiwiYnkiLCJjbGFzcyIsImNsaXAiLCJjbGlwcGF0aHVuaXRzIiwiY2xpcC1wYXRoIiwiY2xpcC1ydWxlIiwiY29sb3IiLCJjb2xvci1pbnRlcnBvbGF0aW9uIiwiY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzIiwiY29sb3ItcHJvZmlsZSIsImNvbG9yLXJlbmRlcmluZyIsImN4IiwiY3kiLCJkIiwiZHgiLCJkeSIsImRpZmZ1c2Vjb25zdGFudCIsImRpcmVjdGlvbiIsImRpc3BsYXkiLCJkaXZpc29yIiwiZHVyIiwiZWRnZW1vZGUiLCJlbGV2YXRpb24iLCJlbmQiLCJmaWxsIiwiZmlsbC1vcGFjaXR5IiwiZmlsbC1ydWxlIiwiZmlsdGVyIiwiZmlsdGVydW5pdHMiLCJmbG9vZC1jb2xvciIsImZsb29kLW9wYWNpdHkiLCJmb250LWZhbWlseSIsImZvbnQtc2l6ZSIsImZvbnQtc2l6ZS1hZGp1c3QiLCJmb250LXN0cmV0Y2giLCJmb250LXN0eWxlIiwiZm9udC12YXJpYW50IiwiZm9udC13ZWlnaHQiLCJmeCIsImZ5IiwiZzEiLCJnMiIsImdseXBoLW5hbWUiLCJnbHlwaHJlZiIsImdyYWRpZW50dW5pdHMiLCJncmFkaWVudHRyYW5zZm9ybSIsImhlaWdodCIsImhyZWYiLCJpZCIsImltYWdlLXJlbmRlcmluZyIsImluIiwiaW4yIiwiayIsImsxIiwiazIiLCJrMyIsIms0Iiwia2VybmluZyIsImtleXBvaW50cyIsImtleXNwbGluZXMiLCJrZXl0aW1lcyIsImxhbmciLCJsZW5ndGhhZGp1c3QiLCJsZXR0ZXItc3BhY2luZyIsImtlcm5lbG1hdHJpeCIsImtlcm5lbHVuaXRsZW5ndGgiLCJsaWdodGluZy1jb2xvciIsImxvY2FsIiwibWFya2VyLWVuZCIsIm1hcmtlci1taWQiLCJtYXJrZXItc3RhcnQiLCJtYXJrZXJoZWlnaHQiLCJtYXJrZXJ1bml0cyIsIm1hcmtlcndpZHRoIiwibWFza2NvbnRlbnR1bml0cyIsIm1hc2t1bml0cyIsIm1heCIsIm1hc2siLCJtZWRpYSIsIm1ldGhvZCIsIm1vZGUiLCJtaW4iLCJuYW1lIiwibnVtb2N0YXZlcyIsIm9mZnNldCIsIm9wZXJhdG9yIiwib3BhY2l0eSIsIm9yZGVyIiwib3JpZW50Iiwib3JpZW50YXRpb24iLCJvcmlnaW4iLCJvdmVyZmxvdyIsInBhaW50LW9yZGVyIiwicGF0aCIsInBhdGhsZW5ndGgiLCJwYXR0ZXJuY29udGVudHVuaXRzIiwicGF0dGVybnRyYW5zZm9ybSIsInBhdHRlcm51bml0cyIsInBvaW50cyIsInByZXNlcnZlYWxwaGEiLCJwcmVzZXJ2ZWFzcGVjdHJhdGlvIiwicHJpbWl0aXZldW5pdHMiLCJyIiwicngiLCJyeSIsInJhZGl1cyIsInJlZngiLCJyZWZ5IiwicmVwZWF0Y291bnQiLCJyZXBlYXRkdXIiLCJyZXN0YXJ0IiwicmVzdWx0Iiwicm90YXRlIiwic2NhbGUiLCJzZWVkIiwic2hhcGUtcmVuZGVyaW5nIiwic3BlY3VsYXJjb25zdGFudCIsInNwZWN1bGFyZXhwb25lbnQiLCJzcHJlYWRtZXRob2QiLCJzdGFydG9mZnNldCIsInN0ZGRldmlhdGlvbiIsInN0aXRjaHRpbGVzIiwic3RvcC1jb2xvciIsInN0b3Atb3BhY2l0eSIsInN0cm9rZS1kYXNoYXJyYXkiLCJzdHJva2UtZGFzaG9mZnNldCIsInN0cm9rZS1saW5lY2FwIiwic3Ryb2tlLWxpbmVqb2luIiwic3Ryb2tlLW1pdGVybGltaXQiLCJzdHJva2Utb3BhY2l0eSIsInN0cm9rZSIsInN0cm9rZS13aWR0aCIsInN0eWxlIiwic3VyZmFjZXNjYWxlIiwic3lzdGVtbGFuZ3VhZ2UiLCJ0YWJpbmRleCIsInRhcmdldHgiLCJ0YXJnZXR5IiwidHJhbnNmb3JtIiwidHJhbnNmb3JtLW9yaWdpbiIsInRleHQtYW5jaG9yIiwidGV4dC1kZWNvcmF0aW9uIiwidGV4dC1yZW5kZXJpbmciLCJ0ZXh0bGVuZ3RoIiwidHlwZSIsInUxIiwidTIiLCJ1bmljb2RlIiwidmFsdWVzIiwidmlld2JveCIsInZpc2liaWxpdHkiLCJ2ZXJzaW9uIiwidmVydC1hZHYteSIsInZlcnQtb3JpZ2luLXgiLCJ2ZXJ0LW9yaWdpbi15Iiwid2lkdGgiLCJ3b3JkLXNwYWNpbmciLCJ3cmFwIiwid3JpdGluZy1tb2RlIiwieGNoYW5uZWxzZWxlY3RvciIsInljaGFubmVsc2VsZWN0b3IiLCJ4IiwieDEiLCJ4MiIsInhtbG5zIiwieSIsInkxIiwieTIiLCJ6Iiwiem9vbWFuZHBhbiJdKSx6PWcoWyJhY2NlbnQiLCJhY2NlbnR1bmRlciIsImFsaWduIiwiYmV2ZWxsZWQiLCJjbG9zZSIsImNvbHVtbnNhbGlnbiIsImNvbHVtbmxpbmVzIiwiY29sdW1uc3BhbiIsImRlbm9tYWxpZ24iLCJkZXB0aCIsImRpciIsImRpc3BsYXkiLCJkaXNwbGF5c3R5bGUiLCJlbmNvZGluZyIsImZlbmNlIiwiZnJhbWUiLCJoZWlnaHQiLCJocmVmIiwiaWQiLCJsYXJnZW9wIiwibGVuZ3RoIiwibGluZXRoaWNrbmVzcyIsImxzcGFjZSIsImxxdW90ZSIsIm1hdGhiYWNrZ3JvdW5kIiwibWF0aGNvbG9yIiwibWF0aHNpemUiLCJtYXRodmFyaWFudCIsIm1heHNpemUiLCJtaW5zaXplIiwibW92YWJsZWxpbWl0cyIsIm5vdGF0aW9uIiwibnVtYWxpZ24iLCJvcGVuIiwicm93YWxpZ24iLCJyb3dsaW5lcyIsInJvd3NwYWNpbmciLCJyb3dzcGFuIiwicnNwYWNlIiwicnF1b3RlIiwic2NyaXB0bGV2ZWwiLCJzY3JpcHRtaW5zaXplIiwic2NyaXB0c2l6ZW11bHRpcGxpZXIiLCJzZWxlY3Rpb24iLCJzZXBhcmF0b3IiLCJzZXBhcmF0b3JzIiwic3RyZXRjaHkiLCJzdWJzY3JpcHRzaGlmdCIsInN1cHNjcmlwdHNoaWZ0Iiwic3ltbWV0cmljIiwidm9mZnNldCIsIndpZHRoIiwieG1sbnMiXSksTD1nKFsieGxpbms6aHJlZiIsInhtbDppZCIsInhsaW5rOnRpdGxlIiwieG1sOnNwYWNlIiwieG1sbnM6eGxpbmsiXSksUD1FKC9ce1x7W1x3XFddKnxbXHdcV10qXH1cfS9nbSksTz1FKC88JVtcd1xXXSp8W1x3XFddKiU+L2dtKSxWPUUoL1wke1tcd1xXXSp9L2dtKSxXPUUoL15kYXRhLVtcLVx3Llx1MDBCNy1cdUZGRkZdKyQvKSxLPUUoL15hcmlhLVtcLVx3XSskLyksWD1FKC9eKD86KD86KD86ZnxodCl0cHM/fG1haWx0b3x0ZWx8Y2FsbHRvfGNpZHx4bXBwKTp8W15hLXpdfFthLXorLlwtXSsoPzpbXmEteisuXC06XXwkKSkvaSksWj1FKC9eKD86XHcrc2NyaXB0fGRhdGEpOi9pKSxfPUUoL1tcdTAwMDAtXHUwMDIwXHUwMEEwXHUxNjgwXHUxODBFXHUyMDAwLVx1MjAyOVx1MjA1Rlx1MzAwMF0vZykscT1FKC9eaHRtbCQvaSksJD1FKC9eW2Etel1bLlx3XSooLVsuXHddKykrJC9pKSxBQT1mdW5jdGlvbigpe3JldHVybiJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93P251bGw6d2luZG93fSxlQT1mdW5jdGlvbihlLHQpe2lmKCJvYmplY3QiIT09QShlKXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGUuY3JlYXRlUG9saWN5KXJldHVybiBudWxsO3ZhciBuPW51bGw7dC5jdXJyZW50U2NyaXB0JiZ0LmN1cnJlbnRTY3JpcHQuaGFzQXR0cmlidXRlKCJkYXRhLXR0LXBvbGljeS1zdWZmaXgiKSYmKG49dC5jdXJyZW50U2NyaXB0LmdldEF0dHJpYnV0ZSgiZGF0YS10dC1wb2xpY3ktc3VmZml4IikpO3ZhciBpPSJkb21wdXJpZnkiKyhuPyIjIituOiIiKTt0cnl7cmV0dXJuIGUuY3JlYXRlUG9saWN5KGkse2NyZWF0ZUhUTUw6ZnVuY3Rpb24oQSl7cmV0dXJuIEF9LGNyZWF0ZVNjcmlwdFVSTDpmdW5jdGlvbihBKXtyZXR1cm4gQX19KX1jYXRjaChBKXtyZXR1cm4gY29uc29sZS53YXJuKCJUcnVzdGVkVHlwZXMgcG9saWN5ICIraSsiIGNvdWxkIG5vdCBiZSBjcmVhdGVkLiIpLG51bGx9fTtyZXR1cm4gZnVuY3Rpb24gZSgpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpBQSgpLG49ZnVuY3Rpb24oQSl7cmV0dXJuIGUoQSl9O2lmKG4udmVyc2lvbj0iMi41LjgiLG4ucmVtb3ZlZD1bXSwhdHx8IXQuZG9jdW1lbnR8fDkhPT10LmRvY3VtZW50Lm5vZGVUeXBlKXJldHVybiBuLmlzU3VwcG9ydGVkPSExLG47dmFyIHI9dC5kb2N1bWVudCxvPXQuZG9jdW1lbnQscz10LkRvY3VtZW50RnJhZ21lbnQsYT10LkhUTUxUZW1wbGF0ZUVsZW1lbnQsQj10Lk5vZGUsYz10LkVsZW1lbnQsRT10Lk5vZGVGaWx0ZXIsUT10Lk5hbWVkTm9kZU1hcCx1PXZvaWQgMD09PVE/dC5OYW1lZE5vZGVNYXB8fHQuTW96TmFtZWRBdHRyTWFwOlEsbD10LkhUTUxGb3JtRWxlbWVudCxoPXQuRE9NUGFyc2VyLHc9dC50cnVzdGVkVHlwZXMsVT1jLnByb3RvdHlwZSx0QT14KFUsImNsb25lTm9kZSIpLG5BPXgoVSwibmV4dFNpYmxpbmciKSxpQT14KFUsImNoaWxkTm9kZXMiKSxyQT14KFUsInBhcmVudE5vZGUiKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgYSl7dmFyIG9BPW8uY3JlYXRlRWxlbWVudCgidGVtcGxhdGUiKTtvQS5jb250ZW50JiZvQS5jb250ZW50Lm93bmVyRG9jdW1lbnQmJihvPW9BLmNvbnRlbnQub3duZXJEb2N1bWVudCl9dmFyIHNBPWVBKHcsciksYUE9c0E/c0EuY3JlYXRlSFRNTCgiIik6IiIsQkE9byxjQT1CQS5pbXBsZW1lbnRhdGlvbixnQT1CQS5jcmVhdGVOb2RlSXRlcmF0b3IsRUE9QkEuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCxRQT1CQS5nZXRFbGVtZW50c0J5VGFnTmFtZSx1QT1yLmltcG9ydE5vZGUsbEE9e307dHJ5e2xBPVQobykuZG9jdW1lbnRNb2RlP28uZG9jdW1lbnRNb2RlOnt9fWNhdGNoKEEpe312YXIgaEE9e307bi5pc1N1cHBvcnRlZD0iZnVuY3Rpb24iPT10eXBlb2YgckEmJmNBJiZ2b2lkIDAhPT1jQS5jcmVhdGVIVE1MRG9jdW1lbnQmJjkhPT1sQTt2YXIgd0EsQ0EsSUE9UCxNQT1PLGRBPVYscEE9VyxtQT1LLEZBPVosREE9XyxZQT0kLGZBPVgsTkE9bnVsbCxVQT15KHt9LFtdLmNvbmNhdChpKFIpLGkoRyksaShTKSxpKEgpLGkoaykpKSx5QT1udWxsLFRBPXkoe30sW10uY29uY2F0KGkoaiksaShKKSxpKHopLGkoTCkpKSx4QT1PYmplY3Quc2VhbChPYmplY3QuY3JlYXRlKG51bGwse3RhZ05hbWVDaGVjazp7d3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiExLGVudW1lcmFibGU6ITAsdmFsdWU6bnVsbH0sYXR0cmlidXRlTmFtZUNoZWNrOnt3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITEsZW51bWVyYWJsZTohMCx2YWx1ZTpudWxsfSxhbGxvd0N1c3RvbWl6ZWRCdWlsdEluRWxlbWVudHM6e3dyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMSxlbnVtZXJhYmxlOiEwLHZhbHVlOiExfX0pKSxSQT1udWxsLEdBPW51bGwsU0E9ITAsYkE9ITAsSEE9ITEsdkE9ITAsa0E9ITEsakE9ITAsSkE9ITEsekE9ITEsTEE9ITEsUEE9ITEsT0E9ITEsVkE9ITEsV0E9ITAsS0E9ITEsWEE9InVzZXItY29udGVudC0iLFpBPSEwLF9BPSExLHFBPXt9LCRBPW51bGwsQWU9eSh7fSxbImFubm90YXRpb24teG1sIiwiYXVkaW8iLCJjb2xncm91cCIsImRlc2MiLCJmb3JlaWdub2JqZWN0IiwiaGVhZCIsImlmcmFtZSIsIm1hdGgiLCJtaSIsIm1uIiwibW8iLCJtcyIsIm10ZXh0Iiwibm9lbWJlZCIsIm5vZnJhbWVzIiwibm9zY3JpcHQiLCJwbGFpbnRleHQiLCJzY3JpcHQiLCJzdHlsZSIsInN2ZyIsInRlbXBsYXRlIiwidGhlYWQiLCJ0aXRsZSIsInZpZGVvIiwieG1wIl0pLGVlPW51bGwsdGU9eSh7fSxbImF1ZGlvIiwidmlkZW8iLCJpbWciLCJzb3VyY2UiLCJpbWFnZSIsInRyYWNrIl0pLG5lPW51bGwsaWU9eSh7fSxbImFsdCIsImNsYXNzIiwiZm9yIiwiaWQiLCJsYWJlbCIsIm5hbWUiLCJwYXR0ZXJuIiwicGxhY2Vob2xkZXIiLCJyb2xlIiwic3VtbWFyeSIsInRpdGxlIiwidmFsdWUiLCJzdHlsZSIsInhtbG5zIl0pLHJlPSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIixvZT0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHNlPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIixhZT1zZSxCZT0hMSxjZT1udWxsLGdlPXkoe30sW3JlLG9lLHNlXSxwKSxFZT1bImFwcGxpY2F0aW9uL3hodG1sK3htbCIsInRleHQvaHRtbCJdLFFlPSJ0ZXh0L2h0bWwiLHVlPW51bGwsbGU9by5jcmVhdGVFbGVtZW50KCJmb3JtIiksaGU9ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBSZWdFeHB8fEEgaW5zdGFuY2VvZiBGdW5jdGlvbn0sd2U9ZnVuY3Rpb24oZSl7dWUmJnVlPT09ZXx8KGUmJiJvYmplY3QiPT09QShlKXx8KGU9e30pLGU9VChlKSx3QT13QT0tMT09PUVlLmluZGV4T2YoZS5QQVJTRVJfTUVESUFfVFlQRSk/UWU6ZS5QQVJTRVJfTUVESUFfVFlQRSxDQT0iYXBwbGljYXRpb24veGh0bWwreG1sIj09PXdBP3A6ZCxOQT0iQUxMT1dFRF9UQUdTImluIGU/eSh7fSxlLkFMTE9XRURfVEFHUyxDQSk6VUEseUE9IkFMTE9XRURfQVRUUiJpbiBlP3koe30sZS5BTExPV0VEX0FUVFIsQ0EpOlRBLGNlPSJBTExPV0VEX05BTUVTUEFDRVMiaW4gZT95KHt9LGUuQUxMT1dFRF9OQU1FU1BBQ0VTLHApOmdlLG5lPSJBRERfVVJJX1NBRkVfQVRUUiJpbiBlP3koVChpZSksZS5BRERfVVJJX1NBRkVfQVRUUixDQSk6aWUsZWU9IkFERF9EQVRBX1VSSV9UQUdTImluIGU/eShUKHRlKSxlLkFERF9EQVRBX1VSSV9UQUdTLENBKTp0ZSwkQT0iRk9SQklEX0NPTlRFTlRTImluIGU/eSh7fSxlLkZPUkJJRF9DT05URU5UUyxDQSk6QWUsUkE9IkZPUkJJRF9UQUdTImluIGU/eSh7fSxlLkZPUkJJRF9UQUdTLENBKTp7fSxHQT0iRk9SQklEX0FUVFIiaW4gZT95KHt9LGUuRk9SQklEX0FUVFIsQ0EpOnt9LHFBPSJVU0VfUFJPRklMRVMiaW4gZSYmZS5VU0VfUFJPRklMRVMsU0E9ITEhPT1lLkFMTE9XX0FSSUFfQVRUUixiQT0hMSE9PWUuQUxMT1dfREFUQV9BVFRSLEhBPWUuQUxMT1dfVU5LTk9XTl9QUk9UT0NPTFN8fCExLHZBPSExIT09ZS5BTExPV19TRUxGX0NMT1NFX0lOX0FUVFIsa0E9ZS5TQUZFX0ZPUl9URU1QTEFURVN8fCExLGpBPSExIT09ZS5TQUZFX0ZPUl9YTUwsSkE9ZS5XSE9MRV9ET0NVTUVOVHx8ITEsUEE9ZS5SRVRVUk5fRE9NfHwhMSxPQT1lLlJFVFVSTl9ET01fRlJBR01FTlR8fCExLFZBPWUuUkVUVVJOX1RSVVNURURfVFlQRXx8ITEsTEE9ZS5GT1JDRV9CT0RZfHwhMSxXQT0hMSE9PWUuU0FOSVRJWkVfRE9NLEtBPWUuU0FOSVRJWkVfTkFNRURfUFJPUFN8fCExLFpBPSExIT09ZS5LRUVQX0NPTlRFTlQsX0E9ZS5JTl9QTEFDRXx8ITEsZkE9ZS5BTExPV0VEX1VSSV9SRUdFWFB8fGZBLGFlPWUuTkFNRVNQQUNFfHxzZSx4QT1lLkNVU1RPTV9FTEVNRU5UX0hBTkRMSU5HfHx7fSxlLkNVU1RPTV9FTEVNRU5UX0hBTkRMSU5HJiZoZShlLkNVU1RPTV9FTEVNRU5UX0hBTkRMSU5HLnRhZ05hbWVDaGVjaykmJih4QS50YWdOYW1lQ2hlY2s9ZS5DVVNUT01fRUxFTUVOVF9IQU5ETElORy50YWdOYW1lQ2hlY2spLGUuQ1VTVE9NX0VMRU1FTlRfSEFORExJTkcmJmhlKGUuQ1VTVE9NX0VMRU1FTlRfSEFORExJTkcuYXR0cmlidXRlTmFtZUNoZWNrKSYmKHhBLmF0dHJpYnV0ZU5hbWVDaGVjaz1lLkNVU1RPTV9FTEVNRU5UX0hBTkRMSU5HLmF0dHJpYnV0ZU5hbWVDaGVjayksZS5DVVNUT01fRUxFTUVOVF9IQU5ETElORyYmImJvb2xlYW4iPT10eXBlb2YgZS5DVVNUT01fRUxFTUVOVF9IQU5ETElORy5hbGxvd0N1c3RvbWl6ZWRCdWlsdEluRWxlbWVudHMmJih4QS5hbGxvd0N1c3RvbWl6ZWRCdWlsdEluRWxlbWVudHM9ZS5DVVNUT01fRUxFTUVOVF9IQU5ETElORy5hbGxvd0N1c3RvbWl6ZWRCdWlsdEluRWxlbWVudHMpLGtBJiYoYkE9ITEpLE9BJiYoUEE9ITApLHFBJiYoTkE9eSh7fSxpKGspKSx5QT1bXSwhMD09PXFBLmh0bWwmJih5KE5BLFIpLHkoeUEsaikpLCEwPT09cUEuc3ZnJiYoeShOQSxHKSx5KHlBLEopLHkoeUEsTCkpLCEwPT09cUEuc3ZnRmlsdGVycyYmKHkoTkEsUykseSh5QSxKKSx5KHlBLEwpKSwhMD09PXFBLm1hdGhNbCYmKHkoTkEsSCkseSh5QSx6KSx5KHlBLEwpKSksZS5BRERfVEFHUyYmKE5BPT09VUEmJihOQT1UKE5BKSkseShOQSxlLkFERF9UQUdTLENBKSksZS5BRERfQVRUUiYmKHlBPT09VEEmJih5QT1UKHlBKSkseSh5QSxlLkFERF9BVFRSLENBKSksZS5BRERfVVJJX1NBRkVfQVRUUiYmeShuZSxlLkFERF9VUklfU0FGRV9BVFRSLENBKSxlLkZPUkJJRF9DT05URU5UUyYmKCRBPT09QWUmJigkQT1UKCRBKSkseSgkQSxlLkZPUkJJRF9DT05URU5UUyxDQSkpLFpBJiYoTkFbIiN0ZXh0Il09ITApLEpBJiZ5KE5BLFsiaHRtbCIsImhlYWQiLCJib2R5Il0pLE5BLnRhYmxlJiYoeShOQSxbInRib2R5Il0pLGRlbGV0ZSBSQS50Ym9keSksZyYmZyhlKSx1ZT1lKX0sQ2U9eSh7fSxbIm1pIiwibW8iLCJtbiIsIm1zIiwibXRleHQiXSksSWU9eSh7fSxbImFubm90YXRpb24teG1sIl0pLE1lPXkoe30sWyJ0aXRsZSIsInN0eWxlIiwiZm9udCIsImEiLCJzY3JpcHQiXSksZGU9eSh7fSxHKTt5KGRlLFMpLHkoZGUsYik7dmFyIHBlPXkoe30sSCk7eShwZSx2KTt2YXIgbWU9ZnVuY3Rpb24oQSl7dmFyIGU9ckEoQSk7ZSYmZS50YWdOYW1lfHwoZT17bmFtZXNwYWNlVVJJOmFlLHRhZ05hbWU6InRlbXBsYXRlIn0pO3ZhciB0PWQoQS50YWdOYW1lKSxuPWQoZS50YWdOYW1lKTtyZXR1cm4hIWNlW0EubmFtZXNwYWNlVVJJXSYmKEEubmFtZXNwYWNlVVJJPT09b2U/ZS5uYW1lc3BhY2VVUkk9PT1zZT8ic3ZnIj09PXQ6ZS5uYW1lc3BhY2VVUkk9PT1yZT8ic3ZnIj09PXQmJigiYW5ub3RhdGlvbi14bWwiPT09bnx8Q2Vbbl0pOkJvb2xlYW4oZGVbdF0pOkEubmFtZXNwYWNlVVJJPT09cmU/ZS5uYW1lc3BhY2VVUkk9PT1zZT8ibWF0aCI9PT10OmUubmFtZXNwYWNlVVJJPT09b2U/Im1hdGgiPT09dCYmSWVbbl06Qm9vbGVhbihwZVt0XSk6QS5uYW1lc3BhY2VVUkk9PT1zZT8hKGUubmFtZXNwYWNlVVJJPT09b2UmJiFJZVtuXSkmJiEoZS5uYW1lc3BhY2VVUkk9PT1yZSYmIUNlW25dKSYmIXBlW3RdJiYoTWVbdF18fCFkZVt0XSk6ISgiYXBwbGljYXRpb24veGh0bWwreG1sIiE9PXdBfHwhY2VbQS5uYW1lc3BhY2VVUkldKSl9LEZlPWZ1bmN0aW9uKEEpe00obi5yZW1vdmVkLHtlbGVtZW50OkF9KTt0cnl7QS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKEEpfWNhdGNoKGUpe3RyeXtBLm91dGVySFRNTD1hQX1jYXRjaChlKXtBLnJlbW92ZSgpfX19LERlPWZ1bmN0aW9uKEEsZSl7dHJ5e00obi5yZW1vdmVkLHthdHRyaWJ1dGU6ZS5nZXRBdHRyaWJ1dGVOb2RlKEEpLGZyb206ZX0pfWNhdGNoKEEpe00obi5yZW1vdmVkLHthdHRyaWJ1dGU6bnVsbCxmcm9tOmV9KX1pZihlLnJlbW92ZUF0dHJpYnV0ZShBKSwiaXMiPT09QSYmIXlBW0FdKWlmKFBBfHxPQSl0cnl7RmUoZSl9Y2F0Y2goQSl7fWVsc2UgdHJ5e2Uuc2V0QXR0cmlidXRlKEEsIiIpfWNhdGNoKEEpe319LFllPWZ1bmN0aW9uKEEpe3ZhciBlLHQ7aWYoTEEpQT0iPHJlbW92ZT48L3JlbW92ZT4iK0E7ZWxzZXt2YXIgbj1tKEEsL15bXHJcblx0IF0rLyk7dD1uJiZuWzBdfSJhcHBsaWNhdGlvbi94aHRtbCt4bWwiPT09d0EmJmFlPT09c2UmJihBPSc8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+PGhlYWQ+PC9oZWFkPjxib2R5PicrQSsiPC9ib2R5PjwvaHRtbD4iKTt2YXIgaT1zQT9zQS5jcmVhdGVIVE1MKEEpOkE7aWYoYWU9PT1zZSl0cnl7ZT0obmV3IGgpLnBhcnNlRnJvbVN0cmluZyhpLHdBKX1jYXRjaChBKXt9aWYoIWV8fCFlLmRvY3VtZW50RWxlbWVudCl7ZT1jQS5jcmVhdGVEb2N1bWVudChhZSwidGVtcGxhdGUiLG51bGwpO3RyeXtlLmRvY3VtZW50RWxlbWVudC5pbm5lckhUTUw9QmU/YUE6aX1jYXRjaChBKXt9fXZhciByPWUuYm9keXx8ZS5kb2N1bWVudEVsZW1lbnQ7cmV0dXJuIEEmJnQmJnIuaW5zZXJ0QmVmb3JlKG8uY3JlYXRlVGV4dE5vZGUodCksci5jaGlsZE5vZGVzWzBdfHxudWxsKSxhZT09PXNlP1FBLmNhbGwoZSxKQT8iaHRtbCI6ImJvZHkiKVswXTpKQT9lLmRvY3VtZW50RWxlbWVudDpyfSxmZT1mdW5jdGlvbihBKXtyZXR1cm4gZ0EuY2FsbChBLm93bmVyRG9jdW1lbnR8fEEsQSxFLlNIT1dfRUxFTUVOVHxFLlNIT1dfQ09NTUVOVHxFLlNIT1dfVEVYVHxFLlNIT1dfUFJPQ0VTU0lOR19JTlNUUlVDVElPTnxFLlNIT1dfQ0RBVEFfU0VDVElPTixudWxsLCExKX0sTmU9ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBsJiYoInN0cmluZyIhPXR5cGVvZiBBLm5vZGVOYW1lfHwic3RyaW5nIiE9dHlwZW9mIEEudGV4dENvbnRlbnR8fCJmdW5jdGlvbiIhPXR5cGVvZiBBLnJlbW92ZUNoaWxkfHwhKEEuYXR0cmlidXRlcyBpbnN0YW5jZW9mIHUpfHwiZnVuY3Rpb24iIT10eXBlb2YgQS5yZW1vdmVBdHRyaWJ1dGV8fCJmdW5jdGlvbiIhPXR5cGVvZiBBLnNldEF0dHJpYnV0ZXx8InN0cmluZyIhPXR5cGVvZiBBLm5hbWVzcGFjZVVSSXx8ImZ1bmN0aW9uIiE9dHlwZW9mIEEuaW5zZXJ0QmVmb3JlfHwiZnVuY3Rpb24iIT10eXBlb2YgQS5oYXNDaGlsZE5vZGVzKX0sVWU9ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PT1BKEIpP2UgaW5zdGFuY2VvZiBCOmUmJiJvYmplY3QiPT09QShlKSYmIm51bWJlciI9PXR5cGVvZiBlLm5vZGVUeXBlJiYic3RyaW5nIj09dHlwZW9mIGUubm9kZU5hbWV9LHllPWZ1bmN0aW9uKEEsZSx0KXtoQVtBXSYmQyhoQVtBXSwoZnVuY3Rpb24oQSl7QS5jYWxsKG4sZSx0LHVlKX0pKX0sVGU9ZnVuY3Rpb24oQSl7dmFyIGU7aWYoeWUoImJlZm9yZVNhbml0aXplRWxlbWVudHMiLEEsbnVsbCksTmUoQSkpcmV0dXJuIEZlKEEpLCEwO2lmKGYoL1tcdTAwODAtXHVGRkZGXS8sQS5ub2RlTmFtZSkpcmV0dXJuIEZlKEEpLCEwO3ZhciB0PUNBKEEubm9kZU5hbWUpO2lmKHllKCJ1cG9uU2FuaXRpemVFbGVtZW50IixBLHt0YWdOYW1lOnQsYWxsb3dlZFRhZ3M6TkF9KSxBLmhhc0NoaWxkTm9kZXMoKSYmIVVlKEEuZmlyc3RFbGVtZW50Q2hpbGQpJiYoIVVlKEEuY29udGVudCl8fCFVZShBLmNvbnRlbnQuZmlyc3RFbGVtZW50Q2hpbGQpKSYmZigvPFsvXHddL2csQS5pbm5lckhUTUwpJiZmKC88Wy9cd10vZyxBLnRleHRDb250ZW50KSlyZXR1cm4gRmUoQSksITA7aWYoInNlbGVjdCI9PT10JiZmKC88dGVtcGxhdGUvaSxBLmlubmVySFRNTCkpcmV0dXJuIEZlKEEpLCEwO2lmKDc9PT1BLm5vZGVUeXBlKXJldHVybiBGZShBKSwhMDtpZihqQSYmOD09PUEubm9kZVR5cGUmJmYoLzxbL1x3XS9nLEEuZGF0YSkpcmV0dXJuIEZlKEEpLCEwO2lmKCFOQVt0XXx8UkFbdF0pe2lmKCFSQVt0XSYmUmUodCkpe2lmKHhBLnRhZ05hbWVDaGVjayBpbnN0YW5jZW9mIFJlZ0V4cCYmZih4QS50YWdOYW1lQ2hlY2ssdCkpcmV0dXJuITE7aWYoeEEudGFnTmFtZUNoZWNrIGluc3RhbmNlb2YgRnVuY3Rpb24mJnhBLnRhZ05hbWVDaGVjayh0KSlyZXR1cm4hMX1pZihaQSYmISRBW3RdKXt2YXIgaT1yQShBKXx8QS5wYXJlbnROb2RlLHI9aUEoQSl8fEEuY2hpbGROb2RlcztpZihyJiZpKWZvcih2YXIgbz1yLmxlbmd0aC0xO28+PTA7LS1vKXt2YXIgcz10QShyW29dLCEwKTtzLl9fcmVtb3ZhbENvdW50PShBLl9fcmVtb3ZhbENvdW50fHwwKSsxLGkuaW5zZXJ0QmVmb3JlKHMsbkEoQSkpfX1yZXR1cm4gRmUoQSksITB9cmV0dXJuIEEgaW5zdGFuY2VvZiBjJiYhbWUoQSk/KEZlKEEpLCEwKToibm9zY3JpcHQiIT09dCYmIm5vZW1iZWQiIT09dCYmIm5vZnJhbWVzIiE9PXR8fCFmKC88XC9ubyhzY3JpcHR8ZW1iZWR8ZnJhbWVzKS9pLEEuaW5uZXJIVE1MKT8oa0EmJjM9PT1BLm5vZGVUeXBlJiYoZT1BLnRleHRDb250ZW50LGU9RihlLElBLCIgIiksZT1GKGUsTUEsIiAiKSxlPUYoZSxkQSwiICIpLEEudGV4dENvbnRlbnQhPT1lJiYoTShuLnJlbW92ZWQse2VsZW1lbnQ6QS5jbG9uZU5vZGUoKX0pLEEudGV4dENvbnRlbnQ9ZSkpLHllKCJhZnRlclNhbml0aXplRWxlbWVudHMiLEEsbnVsbCksITEpOihGZShBKSwhMCl9LHhlPWZ1bmN0aW9uKEEsZSx0KXtpZihXQSYmKCJpZCI9PT1lfHwibmFtZSI9PT1lKSYmKHQgaW4gb3x8dCBpbiBsZSkpcmV0dXJuITE7aWYoYkEmJiFHQVtlXSYmZihwQSxlKSk7ZWxzZSBpZihTQSYmZihtQSxlKSk7ZWxzZSBpZigheUFbZV18fEdBW2VdKXtpZighKFJlKEEpJiYoeEEudGFnTmFtZUNoZWNrIGluc3RhbmNlb2YgUmVnRXhwJiZmKHhBLnRhZ05hbWVDaGVjayxBKXx8eEEudGFnTmFtZUNoZWNrIGluc3RhbmNlb2YgRnVuY3Rpb24mJnhBLnRhZ05hbWVDaGVjayhBKSkmJih4QS5hdHRyaWJ1dGVOYW1lQ2hlY2sgaW5zdGFuY2VvZiBSZWdFeHAmJmYoeEEuYXR0cmlidXRlTmFtZUNoZWNrLGUpfHx4QS5hdHRyaWJ1dGVOYW1lQ2hlY2sgaW5zdGFuY2VvZiBGdW5jdGlvbiYmeEEuYXR0cmlidXRlTmFtZUNoZWNrKGUpKXx8ImlzIj09PWUmJnhBLmFsbG93Q3VzdG9taXplZEJ1aWx0SW5FbGVtZW50cyYmKHhBLnRhZ05hbWVDaGVjayBpbnN0YW5jZW9mIFJlZ0V4cCYmZih4QS50YWdOYW1lQ2hlY2ssdCl8fHhBLnRhZ05hbWVDaGVjayBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZ4QS50YWdOYW1lQ2hlY2sodCkpKSlyZXR1cm4hMX1lbHNlIGlmKG5lW2VdKTtlbHNlIGlmKGYoZkEsRih0LERBLCIiKSkpO2Vsc2UgaWYoInNyYyIhPT1lJiYieGxpbms6aHJlZiIhPT1lJiYiaHJlZiIhPT1lfHwic2NyaXB0Ij09PUF8fDAhPT1EKHQsImRhdGE6Iil8fCFlZVtBXSlpZihIQSYmIWYoRkEsRih0LERBLCIiKSkpO2Vsc2UgaWYodClyZXR1cm4hMTtyZXR1cm4hMH0sUmU9ZnVuY3Rpb24oQSl7cmV0dXJuImFubm90YXRpb24teG1sIiE9PUEmJm0oQSxZQSl9LEdlPWZ1bmN0aW9uKGUpe3ZhciB0LGkscixvO3llKCJiZWZvcmVTYW5pdGl6ZUF0dHJpYnV0ZXMiLGUsbnVsbCk7dmFyIHM9ZS5hdHRyaWJ1dGVzO2lmKHMmJiFOZShlKSl7dmFyIGE9e2F0dHJOYW1lOiIiLGF0dHJWYWx1ZToiIixrZWVwQXR0cjohMCxhbGxvd2VkQXR0cmlidXRlczp5QX07Zm9yKG89cy5sZW5ndGg7by0tOyl7dmFyIEI9dD1zW29dLGM9Qi5uYW1lLGc9Qi5uYW1lc3BhY2VVUkk7aWYoaT0idmFsdWUiPT09Yz90LnZhbHVlOlkodC52YWx1ZSkscj1DQShjKSxhLmF0dHJOYW1lPXIsYS5hdHRyVmFsdWU9aSxhLmtlZXBBdHRyPSEwLGEuZm9yY2VLZWVwQXR0cj12b2lkIDAseWUoInVwb25TYW5pdGl6ZUF0dHJpYnV0ZSIsZSxhKSxpPWEuYXR0clZhbHVlLCFhLmZvcmNlS2VlcEF0dHImJihEZShjLGUpLGEua2VlcEF0dHIpKWlmKHZBfHwhZigvXC8+L2ksaSkpe2tBJiYoaT1GKGksSUEsIiAiKSxpPUYoaSxNQSwiICIpLGk9RihpLGRBLCIgIikpO3ZhciBFPUNBKGUubm9kZU5hbWUpO2lmKHhlKEUscixpKSlpZighS0F8fCJpZCIhPT1yJiYibmFtZSIhPT1yfHwoRGUoYyxlKSxpPVhBK2kpLGpBJiZmKC8oKC0tIT98XSk+KXw8XC8oc3R5bGV8dGl0bGUpL2ksaSkpRGUoYyxlKTtlbHNle2lmKHNBJiYib2JqZWN0Ij09PUEodykmJiJmdW5jdGlvbiI9PXR5cGVvZiB3LmdldEF0dHJpYnV0ZVR5cGUpaWYoZyk7ZWxzZSBzd2l0Y2gody5nZXRBdHRyaWJ1dGVUeXBlKEUscikpe2Nhc2UiVHJ1c3RlZEhUTUwiOmk9c0EuY3JlYXRlSFRNTChpKTticmVhaztjYXNlIlRydXN0ZWRTY3JpcHRVUkwiOmk9c0EuY3JlYXRlU2NyaXB0VVJMKGkpfXRyeXtnP2Uuc2V0QXR0cmlidXRlTlMoZyxjLGkpOmUuc2V0QXR0cmlidXRlKGMsaSksTmUoZSk/RmUoZSk6SShuLnJlbW92ZWQpfWNhdGNoKEEpe319fWVsc2UgRGUoYyxlKX15ZSgiYWZ0ZXJTYW5pdGl6ZUF0dHJpYnV0ZXMiLGUsbnVsbCl9fSxTZT1mdW5jdGlvbiBBKGUpe3ZhciB0LG49ZmUoZSk7Zm9yKHllKCJiZWZvcmVTYW5pdGl6ZVNoYWRvd0RPTSIsZSxudWxsKTt0PW4ubmV4dE5vZGUoKTspeWUoInVwb25TYW5pdGl6ZVNoYWRvd05vZGUiLHQsbnVsbCksVGUodCksR2UodCksdC5jb250ZW50IGluc3RhbmNlb2YgcyYmQSh0LmNvbnRlbnQpO3llKCJhZnRlclNhbml0aXplU2hhZG93RE9NIixlLG51bGwpfTtyZXR1cm4gbi5zYW5pdGl6ZT1mdW5jdGlvbihlKXt2YXIgaSxvLGEsYyxnLEU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9O2lmKChCZT0hZSkmJihlPSJceDNjIS0tXHgzZSIpLCJzdHJpbmciIT10eXBlb2YgZSYmIVVlKGUpKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZS50b1N0cmluZyl0aHJvdyBOKCJ0b1N0cmluZyBpcyBub3QgYSBmdW5jdGlvbiIpO2lmKCJzdHJpbmciIT10eXBlb2YoZT1lLnRvU3RyaW5nKCkpKXRocm93IE4oImRpcnR5IGlzIG5vdCBhIHN0cmluZywgYWJvcnRpbmciKX1pZighbi5pc1N1cHBvcnRlZCl7aWYoIm9iamVjdCI9PT1BKHQudG9TdGF0aWNIVE1MKXx8ImZ1bmN0aW9uIj09dHlwZW9mIHQudG9TdGF0aWNIVE1MKXtpZigic3RyaW5nIj09dHlwZW9mIGUpcmV0dXJuIHQudG9TdGF0aWNIVE1MKGUpO2lmKFVlKGUpKXJldHVybiB0LnRvU3RhdGljSFRNTChlLm91dGVySFRNTCl9cmV0dXJuIGV9aWYoekF8fHdlKEUpLG4ucmVtb3ZlZD1bXSwic3RyaW5nIj09dHlwZW9mIGUmJihfQT0hMSksX0Epe2lmKGUubm9kZU5hbWUpe3ZhciBRPUNBKGUubm9kZU5hbWUpO2lmKCFOQVtRXXx8UkFbUV0pdGhyb3cgTigicm9vdCBub2RlIGlzIGZvcmJpZGRlbiBhbmQgY2Fubm90IGJlIHNhbml0aXplZCBpbi1wbGFjZSIpfX1lbHNlIGlmKGUgaW5zdGFuY2VvZiBCKTE9PT0obz0oaT1ZZSgiXHgzYyEtLS0tXHgzZSIpKS5vd25lckRvY3VtZW50LmltcG9ydE5vZGUoZSwhMCkpLm5vZGVUeXBlJiYiQk9EWSI9PT1vLm5vZGVOYW1lfHwiSFRNTCI9PT1vLm5vZGVOYW1lP2k9bzppLmFwcGVuZENoaWxkKG8pO2Vsc2V7aWYoIVBBJiYha0EmJiFKQSYmLTE9PT1lLmluZGV4T2YoIjwiKSlyZXR1cm4gc0EmJlZBP3NBLmNyZWF0ZUhUTUwoZSk6ZTtpZighKGk9WWUoZSkpKXJldHVybiBQQT9udWxsOlZBP2FBOiIifWkmJkxBJiZGZShpLmZpcnN0Q2hpbGQpO2Zvcih2YXIgdT1mZShfQT9lOmkpO2E9dS5uZXh0Tm9kZSgpOykzPT09YS5ub2RlVHlwZSYmYT09PWN8fChUZShhKSxHZShhKSxhLmNvbnRlbnQgaW5zdGFuY2VvZiBzJiZTZShhLmNvbnRlbnQpLGM9YSk7aWYoYz1udWxsLF9BKXJldHVybiBlO2lmKFBBKXtpZihPQSlmb3IoZz1FQS5jYWxsKGkub3duZXJEb2N1bWVudCk7aS5maXJzdENoaWxkOylnLmFwcGVuZENoaWxkKGkuZmlyc3RDaGlsZCk7ZWxzZSBnPWk7cmV0dXJuKHlBLnNoYWRvd3Jvb3R8fHlBLnNoYWRvd3Jvb3Rtb2QpJiYoZz11QS5jYWxsKHIsZywhMCkpLGd9dmFyIGw9SkE/aS5vdXRlckhUTUw6aS5pbm5lckhUTUw7cmV0dXJuIEpBJiZOQVsiIWRvY3R5cGUiXSYmaS5vd25lckRvY3VtZW50JiZpLm93bmVyRG9jdW1lbnQuZG9jdHlwZSYmaS5vd25lckRvY3VtZW50LmRvY3R5cGUubmFtZSYmZihxLGkub3duZXJEb2N1bWVudC5kb2N0eXBlLm5hbWUpJiYobD0iPCFET0NUWVBFICIraS5vd25lckRvY3VtZW50LmRvY3R5cGUubmFtZSsiPlxuIitsKSxrQSYmKGw9RihsLElBLCIgIiksbD1GKGwsTUEsIiAiKSxsPUYobCxkQSwiICIpKSxzQSYmVkE/c0EuY3JlYXRlSFRNTChsKTpsfSxuLnNldENvbmZpZz1mdW5jdGlvbihBKXt3ZShBKSx6QT0hMH0sbi5jbGVhckNvbmZpZz1mdW5jdGlvbigpe3VlPW51bGwsekE9ITF9LG4uaXNWYWxpZEF0dHJpYnV0ZT1mdW5jdGlvbihBLGUsdCl7dWV8fHdlKHt9KTt2YXIgbj1DQShBKSxpPUNBKGUpO3JldHVybiB4ZShuLGksdCl9LG4uYWRkSG9vaz1mdW5jdGlvbihBLGUpeyJmdW5jdGlvbiI9PXR5cGVvZiBlJiYoaEFbQV09aEFbQV18fFtdLE0oaEFbQV0sZSkpfSxuLnJlbW92ZUhvb2s9ZnVuY3Rpb24oQSl7aWYoaEFbQV0pcmV0dXJuIEkoaEFbQV0pfSxuLnJlbW92ZUhvb2tzPWZ1bmN0aW9uKEEpe2hBW0FdJiYoaEFbQV09W10pfSxuLnJlbW92ZUFsbEhvb2tzPWZ1bmN0aW9uKCl7aEE9e319LG59KCl9KCl9LGZ1bmN0aW9uKEEsZSl7Y2xhc3MgdHtzdGF0aWMgZ2V0IHN2Zygpe3JldHVybiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9c3RhdGljIGdldCB4bWxucygpe3JldHVybiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3htbG5zIn1zdGF0aWMgZ2V0IHhsaW5rKCl7cmV0dXJuImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifXN0YXRpYyBhdHRyaWJ1dGVOYW1lc3BhY2UoKXtyZXR1cm57aHJlZjp0LnhsaW5rLHhsaW5rOnQueG1sbnMseG1sbnM6IiIuY29uY2F0KHQueG1sbnMsIi8iKSwieG1sbnM6eGxpbmsiOiIiLmNvbmNhdCh0LnhtbG5zLCIvIil9fXN0YXRpYyBjcmVhdGUoQSxlLG4pe3JldHVybiB0LnNldChkb2N1bWVudC5jcmVhdGVFbGVtZW50TlModC5zdmcsQSksZSxuKX1zdGF0aWMgZ2V0KEEsZSl7Y29uc3Qgbj10LmF0dHJpYnV0ZU5hbWVzcGFjZVtlXSxpPW4/QS5nZXRBdHRyaWJ1dGVOUyhuLGUpOkEuZ2V0QXR0cmlidXRlKGUpO3JldHVybiJudWxsIj09PWk/bnVsbDppfXN0YXRpYyBzZXQoQSxlLG4pe2Zvcihjb25zdCBpIGluIGUpe2xldCByPWVbaV07Y29uc3Qgbz10LmF0dHJpYnV0ZU5hbWVzcGFjZVtpXTsibnVtYmVyIj09dHlwZW9mIHImJm4mJihyPW4ubnVtYmVyKHIpKSxvP0Euc2V0QXR0cmlidXRlTlMobyxpLHIpOkEuc2V0QXR0cmlidXRlKGkscil9cmV0dXJuIEF9fUEuZXhwb3J0cz10fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDY4KSxpPXQoMjIpLHtsb2FkU291bmRGcm9tQXNzZXQ6cn09dCg0OCkse2xvYWRDb3N0dW1lRnJvbUFzc2V0Om99PXQoNDkpLHM9dCgxMDkpLGE9dCgxMSksQj10KDE2KTtjbGFzcyBje2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5ydW50aW1lPWUsQXx8KEE9bmV3IGkoZSkpLHRoaXMuYmxvY2tzPUEsdGhpcy5uYW1lPSIiLHRoaXMuY29zdHVtZXNfPVtdLHRoaXMuc291bmRzPVtdLHRoaXMuY2xvbmVzPVtdLHRoaXMuc291bmRCYW5rPW51bGwsdGhpcy5ydW50aW1lJiZ0aGlzLnJ1bnRpbWUuYXVkaW9FbmdpbmUmJih0aGlzLnNvdW5kQmFuaz10aGlzLnJ1bnRpbWUuYXVkaW9FbmdpbmUuY3JlYXRlQmFuaygpKX1zZXQgY29zdHVtZXMoQSl7dGhpcy5jb3N0dW1lc189W107Zm9yKGNvbnN0IGUgb2YgQSl0aGlzLmFkZENvc3R1bWVBdChlLHRoaXMuY29zdHVtZXNfLmxlbmd0aCl9Z2V0IGNvc3R1bWVzKCl7cmV0dXJuIHRoaXMuY29zdHVtZXNffWFkZENvc3R1bWVBdChBLGUpe0EubmFtZXx8KEEubmFtZT0iIik7Y29uc3QgdD10aGlzLmNvc3R1bWVzXy5tYXAoQT0+QS5uYW1lKTtBLm5hbWU9YS51bnVzZWROYW1lKEEubmFtZSx0KSx0aGlzLmNvc3R1bWVzXy5zcGxpY2UoZSwwLEEpfWRlbGV0ZUNvc3R1bWVBdChBKXtyZXR1cm4gdGhpcy5jb3N0dW1lcy5zcGxpY2UoQSwxKVswXX1jcmVhdGVDbG9uZShBKXtjb25zdCBlPW5ldyBuKHRoaXMsdGhpcy5ydW50aW1lKTtpZihlLmlzT3JpZ2luYWw9MD09PXRoaXMuY2xvbmVzLmxlbmd0aCx0aGlzLmNsb25lcy5wdXNoKGUpLGUuaW5pdEF1ZGlvKCksZS5pc09yaWdpbmFsKXtjb25zdCB0PSJzdHJpbmciPT10eXBlb2YgQT9BOkIuU1BSSVRFX0xBWUVSO2UuaW5pdERyYXdhYmxlKHQpLHRoaXMucnVudGltZS5maXJlVGFyZ2V0V2FzQ3JlYXRlZChlKX1lbHNlIHRoaXMucnVudGltZS5maXJlVGFyZ2V0V2FzQ3JlYXRlZChlLHRoaXMuY2xvbmVzWzBdKTtyZXR1cm4gZX1yZW1vdmVDbG9uZShBKXt0aGlzLnJ1bnRpbWUuZmlyZVRhcmdldFdhc1JlbW92ZWQoQSk7Y29uc3QgZT10aGlzLmNsb25lcy5pbmRleE9mKEEpO2U+PTAmJnRoaXMuY2xvbmVzLnNwbGljZShlLDEpfWR1cGxpY2F0ZSgpe2NvbnN0IEE9bmV3IGMobnVsbCx0aGlzLnJ1bnRpbWUpLGU9dGhpcy5ibG9ja3MuX2Jsb2Nrcyx0PU9iamVjdC5rZXlzKGUpLm1hcChBPT5lW0FdKSxuPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodCkpO3Mobiksbi5mb3JFYWNoKGU9PntBLmJsb2Nrcy5jcmVhdGVCbG9jayhlKX0pO2NvbnN0IGk9dGhpcy5ydW50aW1lLnRhcmdldHMubWFwKEE9PkEuc3ByaXRlLm5hbWUpO0EubmFtZT1hLnVudXNlZE5hbWUodGhpcy5uYW1lLGkpO2NvbnN0IEI9W107cmV0dXJuIEEuY29zdHVtZXM9dGhpcy5jb3N0dW1lc18ubWFwKEE9Pntjb25zdCBlPU9iamVjdC5hc3NpZ24oe30sQSk7cmV0dXJuIEIucHVzaChvKGUsdGhpcy5ydW50aW1lKSksZX0pLEEuc291bmRzPXRoaXMuc291bmRzLm1hcChlPT57Y29uc3QgdD1PYmplY3QuYXNzaWduKHt9LGUpLG49ZS5hc3NldDtyZXR1cm4gQi5wdXNoKHIodCxuLHRoaXMucnVudGltZSxBLnNvdW5kQmFuaykpLHR9KSxQcm9taXNlLmFsbChCKS50aGVuKCgpPT5BKX1kaXNwb3NlKCl7dGhpcy5zb3VuZEJhbmsmJnRoaXMuc291bmRCYW5rLmRpc3Bvc2UoKX19QS5leHBvcnRzPWN9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMuX2N0eD1BLHRoaXMuX2NhY2hlPXt9fWJlZ2luTWVhc3VyZW1lbnRTZXNzaW9uKCl7fWVuZE1lYXN1cmVtZW50U2Vzc2lvbigpe31zZXRGb250QW5kU2l6ZShBLGUpe3RoaXMuX2N0eC5mb250PSIiLmNvbmNhdChlLCJweCAiKS5jb25jYXQoQSwiLCBzYW5zLXNlcmlmIiksdGhpcy5fY2FjaGU9e319bWVhc3VyZVRleHQoQSl7Y29uc3QgZT10aGlzLl9jdHguZm9udCtBO3JldHVybiB0aGlzLl9jYWNoZVtlXXx8KHRoaXMuX2NhY2hlW2VdPXRoaXMuX2N0eC5tZWFzdXJlVGV4dChBKS5hY3R1YWxCb3VuZGluZ0JveFJpZ2h0KSx0aGlzLl9jYWNoZVtlXX19fSxmdW5jdGlvbihBLGUsdCl7InVuZGVmaW5lZCIhPXR5cGVvZiBUZXh0RGVjb2RlciYmInVuZGVmaW5lZCIhPXR5cGVvZiBUZXh0RW5jb2Rlcnx8dCg4MSk7Y29uc3Qgbj10KDMyKTtsZXQgaT1udWxsO2NvbnN0IHI9e30sbz17fSxzPSJmdW5jdGlvbiI9PXR5cGVvZiBGaW5hbGl6YXRpb25SZWdpc3RyeT9uZXcgRmluYWxpemF0aW9uUmVnaXN0cnkoQT0+e2NvbnN0IGU9b1tBXTsxPT09ZT8oZGVsZXRlIG9bQV0sZGVsZXRlIHJbQV0pOm9bQV09ZS0xfSk6bnVsbCxhPXM/QT0+e2NvbnN0IGU9QS5hc3NldElkLHQ9b1tlXXx8MDtvW2VdPXQrMSxzLnJlZ2lzdGVyKEEsZSl9OigpPT57fTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSxlLHQsbixpKXt0aGlzLmFzc2V0VHlwZT1BLHRoaXMuYXNzZXRJZD1lLHRoaXMuc2V0RGF0YShuLHR8fEEucnVudGltZUZvcm1hdCxpKSx0aGlzLmRlcGVuZGVuY2llcz1bXSxhKHRoaXMpfXNldERhdGEoQSxlLHQpe2lmKEEmJiFlKXRocm93IG5ldyBFcnJvcigiRGF0YSBwcm92aWRlZCB3aXRob3V0IHNwZWNpZnlpbmcgaXRzIGZvcm1hdCIpO3RoaXMuZGF0YUZvcm1hdD1lLHRoaXMuZGF0YT1BLHQmJih0aGlzLmFzc2V0SWQ9bihBKSksdGhpcy5jbGVhbj0hdH1kZWNvZGVUZXh0KCl7cmV0dXJuKG5ldyBUZXh0RGVjb2RlcikuZGVjb2RlKHRoaXMuZGF0YSl9ZW5jb2RlVGV4dERhdGEoQSxlLHQpe2NvbnN0IG49bmV3IFRleHRFbmNvZGVyO3RoaXMuc2V0RGF0YShuLmVuY29kZShBKSxlLHQpfWVuY29kZURhdGFVUkkoQSl7cmV0dXJuIEE9QXx8dGhpcy5hc3NldFR5cGUuY29udGVudFR5cGUsImRhdGE6Ii5jb25jYXQoQSwiO2Jhc2U2NCwiKS5jb25jYXQoKChBLGUpPT57aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyLEEpKWlmKCJ1bmRlZmluZWQiPT10eXBlb2YgYnRvYSl7Y29uc3Qgbj10KDQ4MCk7cltBXT1uLmZyb21CeXRlQXJyYXkoZSl9ZWxzZXtpZihudWxsPT09aSl7aT1uZXcgQXJyYXkoMjU2KTtmb3IobGV0IEE9MDtBPDI1NjtBKyspaVtBXT1TdHJpbmcuZnJvbUNoYXJDb2RlKEEpfWNvbnN0e2xlbmd0aDp0fT1lO2xldCBuPSIiO2ZvcihsZXQgQT0wLHI9MDtBPHQ7QT1yKXtyPU1hdGgubWluKHIrMzI3NjYsdCk7bGV0IG89IiI7Zm9yKGxldCB0PUE7dDxyO3QrPTEpbys9aVtlW3RdXTtuKz1idG9hKG8pfXJbQV09bn1yZXR1cm4gcltBXX0pKHRoaXMuYXNzZXRJZCx0aGlzLmRhdGEpKX19fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz17SlBHOiJqcGciLEpTT046Impzb24iLE1QMzoibXAzIixPR0c6Im9nZyIsRkxBQzoiZmxhYyIsUE5HOiJwbmciLFNCMjoic2IyIixTQjM6InNiMyIsU1ZHOiJzdmciLFdBVjoid2F2IixUVEY6InR0ZiIsT1RGOiJvdGYiLFdPRkY6IndvZmYiLFdPRkYyOiJ3b2ZmMiIsVFhUOiJ0eHQifX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24oZSl7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2Zvcih2YXIgdD0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmImZ1bmN0aW9uIj09dHlwZW9mIHdpbmRvdy5hdG9iP3dpbmRvdy5hdG9iKEEpOmUuZnJvbShBLCJiYXNlNjQiKS50b1N0cmluZygiYmluYXJ5Iiksbj1uZXcgVWludDhBcnJheSh0Lmxlbmd0aCksaT0wO2k8dC5sZW5ndGg7KytpKW5baV09dC5jaGFyQ29kZUF0KGkpO3JldHVybiBuLmJ1ZmZlcn19KS5jYWxsKHRoaXMsdCgyMCkuQnVmZmVyKX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSxlLHQpe3RoaXMuYXVkaW9FbmdpbmU9QSx0aGlzLmF1ZGlvUGxheWVyPWUsdGhpcy5sYXN0RWZmZWN0PXQsdGhpcy52YWx1ZT10aGlzLkRFRkFVTFRfVkFMVUUsdGhpcy5pbml0aWFsaXplZD0hMSx0aGlzLmlucHV0Tm9kZT1udWxsLHRoaXMub3V0cHV0Tm9kZT1udWxsLHRoaXMudGFyZ2V0PW51bGx9Z2V0IG5hbWUoKXt0aHJvdyBuZXcgRXJyb3IoIiIuY29uY2F0KHRoaXMuY29uc3RydWN0b3IubmFtZSwiLm5hbWUgaXMgbm90IGltcGxlbWVudGVkIikpfWdldCBERUZBVUxUX1ZBTFVFKCl7cmV0dXJuIDB9Z2V0IF9pc1BhdGNoKCl7cmV0dXJuIHRoaXMuaW5pdGlhbGl6ZWQmJih0aGlzLnZhbHVlIT09dGhpcy5ERUZBVUxUX1ZBTFVFfHxudWxsPT09dGhpcy5hdWRpb1BsYXllcil9Z2V0SW5wdXROb2RlKCl7cmV0dXJuIHRoaXMuX2lzUGF0Y2g/dGhpcy5pbnB1dE5vZGU6dGhpcy50YXJnZXQuZ2V0SW5wdXROb2RlKCl9aW5pdGlhbGl6ZSgpe3Rocm93IG5ldyBFcnJvcigiIi5jb25jYXQodGhpcy5jb25zdHJ1Y3Rvci5uYW1lLCIuaW5pdGlhbGl6ZSBpcyBub3QgaW1wbGVtZW50ZWQuIikpfV9zZXQoKXt0aHJvdyBuZXcgRXJyb3IoIiIuY29uY2F0KHRoaXMuY29uc3RydWN0b3IubmFtZSwiLl9zZXQgaXMgbm90IGltcGxlbWVudGVkLiIpKX1zZXQoQSl7dGhpcy5pbml0aWFsaXplZHx8dGhpcy5pbml0aWFsaXplKCk7Y29uc3QgZT10aGlzLl9pc1BhdGNoO2lmKGUmJih0aGlzLl9sYXN0UGF0Y2g9dGhpcy5hdWRpb0VuZ2luZS5jdXJyZW50VGltZSksQSE9PXRoaXMudmFsdWUpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49bmV3IEFycmF5KHQ+MT90LTE6MCksaT0xO2k8dDtpKyspbltpLTFdPWFyZ3VtZW50c1tpXTt0aGlzLl9zZXQoQSwuLi5uKX10aGlzLl9pc1BhdGNoIT09ZSYmbnVsbCE9PXRoaXMudGFyZ2V0JiZ0aGlzLmNvbm5lY3QodGhpcy50YXJnZXQpfXVwZGF0ZSgpe31jbGVhcigpe3RoaXMuc2V0KHRoaXMuREVGQVVMVF9WQUxVRSl9Y29ubmVjdChBKXtpZihudWxsPT09QSl0aHJvdyBuZXcgRXJyb3IoInRhcmdldCBtYXkgbm90IGJlIG51bGwiKTtjb25zdCBlPUE9PntpZihBKXJldHVybiBBPT09dGhpc3x8ZShBLnRhcmdldCl9O2lmKGUoQSkpdGhyb3cgbmV3IEVycm9yKCJFZmZlY3QgY2Fubm90IGNvbm5lY3QgdG8gaXRzZWxmIik7dGhpcy50YXJnZXQ9QSxudWxsIT09dGhpcy5vdXRwdXROb2RlJiZ0aGlzLm91dHB1dE5vZGUuZGlzY29ubmVjdCgpLCh0aGlzLl9pc1BhdGNofHx0aGlzLl9sYXN0UGF0Y2grdGhpcy5hdWRpb0VuZ2luZS5ERUNBWV9EVVJBVElPTjx0aGlzLmF1ZGlvRW5naW5lLmN1cnJlbnRUaW1lKSYmdGhpcy5vdXRwdXROb2RlLmNvbm5lY3QoQS5nZXRJbnB1dE5vZGUoKSksbnVsbD09PXRoaXMubGFzdEVmZmVjdD9udWxsIT09dGhpcy5hdWRpb1BsYXllciYmdGhpcy5hdWRpb1BsYXllci5jb25uZWN0KHRoaXMpOnRoaXMubGFzdEVmZmVjdC5jb25uZWN0KHRoaXMpfWRpc3Bvc2UoKXt0aGlzLmlucHV0Tm9kZT1udWxsLHRoaXMub3V0cHV0Tm9kZT1udWxsLHRoaXMudGFyZ2V0PW51bGwsdGhpcy5pbml0aWFsaXplZD0hMX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEyNik7QS5leHBvcnRzPW59LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNDU0KTtBLmV4cG9ydHM9bn0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0OTApO0EuZXhwb3J0cz1ufSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPXQoMTIyKSxpPXQubihuKSxyPXQoMTIzKSxvPXQubihyKSxzPXQoMTI0KSxhPWkoKSgoZnVuY3Rpb24oQSl7cmV0dXJuIEFbMV19KSksQj1vKCkocy5hKTthLnB1c2goW0EuaSwnLnNjLXJvb3Qge1xuICBmb250LWZhbWlseTogIkhlbHZldGljYSBOZXVlIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLS1zYy1hY2NlbnQtY29sb3I6ICNmZjRjNGM7XG4gIC0tc2MtYWNjZW50LWNvbG9yLXRyYW5zcGFyZW50OiAjZmY0YzRjNTk7XG59XG4uc2MtbGF5ZXJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNjLWxheWVycyA+ICoge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uc2Mtc2NhbGVkLW92ZXJsYXlzLW91dGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc2Mtc2NhbGVkLW92ZXJsYXlzLWlubmVyIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG59XG4uc2Mtcm9vdCAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5zYy1jYW52YXMge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2MtcXVlc3Rpb24tcm9vdCB7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiBibGFjaztcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cbi5zYy1xdWVzdGlvbi1pbm5lciB7XG4gIG1hcmdpbjogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCBoc2xhKDAsIDAlLCAwJSwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuLnNjLXF1ZXN0aW9uLXRleHQge1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnNjLXF1ZXN0aW9uLWlucHV0LW91dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNjLXF1ZXN0aW9uLWlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnJlbTtcbiAgcGFkZGluZzogMCAxMnB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IGhzbGEoMCwgMCUsIDAlLCAwLjE1KTtcbiAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogMC4yNXMgZWFzZS1vdXQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5zYy1xdWVzdGlvbi1pbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc2MtYWNjZW50LWNvbG9yKTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggM3B4IHZhcigtLXNjLWFjY2VudC1jb2xvci10cmFuc3BhcmVudCk7XG59XG4uc2MtcXVlc3Rpb24taW5wdXQ6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLXNjLWFjY2VudC1jb2xvcik7XG59XG4uc2MtcXVlc3Rpb24tc3VibWl0LWJ1dHRvbiB7XG4gIHRvcDogNHB4O1xuICByaWdodDogNHB4O1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMnB4O1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYy1hY2NlbnQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJytCKycpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnNjLXF1ZXN0aW9uLXN1Ym1pdC1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAycHggc29saWQgYmxhY2s7XG59XG4uc2MtcXVlc3Rpb24tc3VibWl0LWJ1dHRvbi1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zYy1tb25pdG9yLW92ZXJsYXkge1xuXG59XG4uc2MtbW9uaXRvci1yb290IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IGhzbGEoMjE1LCAxMDAlLCA5NSUsIDEpO1xuICBjb2xvcjogIzU3NWU3NTtcbiAgYm9yZGVyOiAxcHggc29saWQgaHNsYSgwLCAwJSwgMCUsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG4uc2MtbW9uaXRvci1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDNweDtcbn1cbi5zYy1tb25pdG9yLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4uc2MtbW9uaXRvci1sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCA1cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uc2MtbW9uaXRvci1zbGlkZXIge1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNjLW1vbml0b3ItdmFsdWUge1xuICBtaW4td2lkdGg6IDQwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luOiAwIDVweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAwIDJweDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGZiZDhjO1xufVxuLnNjLW1vbml0b3Itcm9vdFtkYXRhLW9wY29kZV49Im1vdGlvbl8iXSAuc2MtbW9uaXRvci12YWx1ZS1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Yzk3ZmY7XG59XG4uc2MtbW9uaXRvci1yb290W2RhdGEtb3Bjb2RlXj0ic2Vuc2luZ18iXSAuc2MtbW9uaXRvci12YWx1ZS1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2IxZDY7XG59XG4uc2MtbW9uaXRvci1yb290W2RhdGEtb3Bjb2RlXj0iZGF0YV8iXSAuc2MtbW9uaXRvci12YWx1ZS1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjhjMWE7XG59XG4uc2MtbW9uaXRvci1yb290W2RhdGEtb3Bjb2RlXj0ibG9va3NfIl0gLnNjLW1vbml0b3ItdmFsdWUtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk2NmZmO1xufVxuLnNjLW1vbml0b3Itcm9vdFtkYXRhLW9wY29kZV49InNvdW5kXyJdIC5zYy1tb25pdG9yLXZhbHVlLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmNjNjZjtcbn1cbi5zYy1tb25pdG9yLXJvb3Rbb3Bjb2RlXj0iY29udHJvbF8iXSAuc2MtbW9uaXRvci12YWx1ZS1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkFCMTk7XG59XG4uc2MtbW9uaXRvci1sYXJnZS12YWx1ZSB7XG4gIG1pbi1oZWlnaHQ6IDEuNHJlbTtcbiAgbWluLXdpZHRoOiAzcmVtO1xuICBwYWRkaW5nOiAwLjFyZW0gMC4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuXG4uc2MtbW9uaXRvci1saXN0LWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBoc2xhKDAsIDAlLCAwJSwgMC4xNSk7XG4gIHBhZGRpbmc6IDNweDtcbn1cbi5zYy1tb25pdG9yLWxpc3QtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDNweDtcbn1cbi5zYy1tb25pdG9yLWxpc3QtZm9vdGVyLXRleHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsZXgtZ3JvdzogMTtcbn1cbi5zYy1tb25pdG9yLXJvdy1kZWxldGUsIC5zYy1tb25pdG9yLWxpc3QtYWRkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zYy1tb25pdG9yLXJvd3Mtb3V0ZXIge1xuICBmbGV4LWdyb3c6IDE7XG59XG4uc2MtbW9uaXRvci1yb3dzLWlubmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zYy1tb25pdG9yLXJvd3MtZW5kcG9pbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uc2MtbW9uaXRvci1yb3ctcm9vdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMnB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5zYy1tb25pdG9yLXJvdy1pbmRleCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogaHNsYSgyMjUsIDE1JSwgNDAlLCAxKTtcbiAgbWFyZ2luOiAwIDNweDtcbn1cbi5zYy1tb25pdG9yLXJvdy12YWx1ZS1vdXRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAyMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCBoc2xhKDAsIDAlLCAwJSwgMC4xNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYzY2MmM7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luOiAwIDNweDtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjVyZW0gLyAyKTtcbiAgZmxleC1ncm93OiAxO1xufVxuLnNjLW1vbml0b3Itcm93LXZhbHVlLWVkaXRpbmcgLnNjLW1vbml0b3Itcm93LXZhbHVlLW91dGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyNWMyODtcbn1cbi5zYy1tb25pdG9yLXJvdy12YWx1ZS1pbm5lciB7XG4gIHBhZGRpbmc6IDNweCA1cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250OiBpbmhlcml0O1xuICBvdXRsaW5lOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG59XG4uc2MtbW9uaXRvci1yb3ctdmFsdWUtZWRpdGluZyAuc2MtbW9uaXRvci1yb3ctdmFsdWUtaW5uZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLnNjLW1vbml0b3Itcm93LWRlbGV0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTUwJTtcbiAgcGFkZGluZzogMCAycHg7XG59XG4uc2MtbW9uaXRvci1yb3ctdmFsdWUtZWRpdGluZyAuc2MtbW9uaXRvci1yb3ctZGVsZXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc2MtbW9uaXRvci1lbXB0eSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNXB4O1xufVxuXG4uc2MtY29udHJvbHMtYmFyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4uc2MtY29udHJvbHMtYmFyID4gKiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG4uc2MtY29udGV4dC1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogYmxhY2s7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNXB4IDFweCBoc2xhKDAsIDAlLCAwJSwgMC4yNSk7XG4gIG1pbi13aWR0aDogMTMwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IC4ycyBvcGFjaXR5O1xufVxuLnNjLWNvbnRleHQtbWVudS1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODVlbTtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogLjFzIGJhY2tncm91bmQtY29sb3IsIC4xcyBjb2xvcjtcbn1cbi5zYy1jb250ZXh0LW1lbnUtaXRlbTpmb2N1cyB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCBibGFjaztcbn1cbi5zYy1jb250ZXh0LW1lbnUtaXRlbTpob3Zlcixcbi5zYy1jb250ZXh0LW1lbnUtaXRlbTphY3RpdmUge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNjLWFjY2VudC1jb2xvcik7XG59XG4uc2MtY29udGV4dC1tZW51LWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbn1cbi5zYy1jb250ZXh0LW1lbnUtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG59XG5cbi5zYy1kcm9wcGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNjLWFjY2VudC1jb2xvci10cmFuc3BhcmVudCk7XG59XG4nLCIiXSksYS5sb2NhbHM9e3Jvb3Q6InNjLXJvb3QiLGxheWVyczoic2MtbGF5ZXJzIiwic2NhbGVkLW92ZXJsYXlzLW91dGVyIjoic2Mtc2NhbGVkLW92ZXJsYXlzLW91dGVyIixzY2FsZWRPdmVybGF5c091dGVyOiJzYy1zY2FsZWQtb3ZlcmxheXMtb3V0ZXIiLCJzY2FsZWQtb3ZlcmxheXMtaW5uZXIiOiJzYy1zY2FsZWQtb3ZlcmxheXMtaW5uZXIiLHNjYWxlZE92ZXJsYXlzSW5uZXI6InNjLXNjYWxlZC1vdmVybGF5cy1pbm5lciIsY2FudmFzOiJzYy1jYW52YXMiLCJxdWVzdGlvbi1yb290Ijoic2MtcXVlc3Rpb24tcm9vdCIscXVlc3Rpb25Sb290OiJzYy1xdWVzdGlvbi1yb290IiwicXVlc3Rpb24taW5uZXIiOiJzYy1xdWVzdGlvbi1pbm5lciIscXVlc3Rpb25Jbm5lcjoic2MtcXVlc3Rpb24taW5uZXIiLCJxdWVzdGlvbi10ZXh0Ijoic2MtcXVlc3Rpb24tdGV4dCIscXVlc3Rpb25UZXh0OiJzYy1xdWVzdGlvbi10ZXh0IiwicXVlc3Rpb24taW5wdXQtb3V0ZXIiOiJzYy1xdWVzdGlvbi1pbnB1dC1vdXRlciIscXVlc3Rpb25JbnB1dE91dGVyOiJzYy1xdWVzdGlvbi1pbnB1dC1vdXRlciIsInF1ZXN0aW9uLWlucHV0Ijoic2MtcXVlc3Rpb24taW5wdXQiLHF1ZXN0aW9uSW5wdXQ6InNjLXF1ZXN0aW9uLWlucHV0IiwicXVlc3Rpb24tc3VibWl0LWJ1dHRvbiI6InNjLXF1ZXN0aW9uLXN1Ym1pdC1idXR0b24iLHF1ZXN0aW9uU3VibWl0QnV0dG9uOiJzYy1xdWVzdGlvbi1zdWJtaXQtYnV0dG9uIiwicXVlc3Rpb24tc3VibWl0LWJ1dHRvbi1pbWFnZSI6InNjLXF1ZXN0aW9uLXN1Ym1pdC1idXR0b24taW1hZ2UiLHF1ZXN0aW9uU3VibWl0QnV0dG9uSW1hZ2U6InNjLXF1ZXN0aW9uLXN1Ym1pdC1idXR0b24taW1hZ2UiLCJtb25pdG9yLW92ZXJsYXkiOiJzYy1tb25pdG9yLW92ZXJsYXkiLG1vbml0b3JPdmVybGF5OiJzYy1tb25pdG9yLW92ZXJsYXkiLCJtb25pdG9yLXJvb3QiOiJzYy1tb25pdG9yLXJvb3QiLG1vbml0b3JSb290OiJzYy1tb25pdG9yLXJvb3QiLCJtb25pdG9yLWlubmVyIjoic2MtbW9uaXRvci1pbm5lciIsbW9uaXRvcklubmVyOiJzYy1tb25pdG9yLWlubmVyIiwibW9uaXRvci1yb3ciOiJzYy1tb25pdG9yLXJvdyIsbW9uaXRvclJvdzoic2MtbW9uaXRvci1yb3ciLCJtb25pdG9yLWxhYmVsIjoic2MtbW9uaXRvci1sYWJlbCIsbW9uaXRvckxhYmVsOiJzYy1tb25pdG9yLWxhYmVsIiwibW9uaXRvci1zbGlkZXIiOiJzYy1tb25pdG9yLXNsaWRlciIsbW9uaXRvclNsaWRlcjoic2MtbW9uaXRvci1zbGlkZXIiLCJtb25pdG9yLXZhbHVlIjoic2MtbW9uaXRvci12YWx1ZSIsbW9uaXRvclZhbHVlOiJzYy1tb25pdG9yLXZhbHVlIiwibW9uaXRvci12YWx1ZS1jb2xvciI6InNjLW1vbml0b3ItdmFsdWUtY29sb3IiLG1vbml0b3JWYWx1ZUNvbG9yOiJzYy1tb25pdG9yLXZhbHVlLWNvbG9yIiwibW9uaXRvci1sYXJnZS12YWx1ZSI6InNjLW1vbml0b3ItbGFyZ2UtdmFsdWUiLG1vbml0b3JMYXJnZVZhbHVlOiJzYy1tb25pdG9yLWxhcmdlLXZhbHVlIiwibW9uaXRvci1saXN0LWxhYmVsIjoic2MtbW9uaXRvci1saXN0LWxhYmVsIixtb25pdG9yTGlzdExhYmVsOiJzYy1tb25pdG9yLWxpc3QtbGFiZWwiLCJtb25pdG9yLWxpc3QtZm9vdGVyIjoic2MtbW9uaXRvci1saXN0LWZvb3RlciIsbW9uaXRvckxpc3RGb290ZXI6InNjLW1vbml0b3ItbGlzdC1mb290ZXIiLCJtb25pdG9yLWxpc3QtZm9vdGVyLXRleHQiOiJzYy1tb25pdG9yLWxpc3QtZm9vdGVyLXRleHQiLG1vbml0b3JMaXN0Rm9vdGVyVGV4dDoic2MtbW9uaXRvci1saXN0LWZvb3Rlci10ZXh0IiwibW9uaXRvci1yb3ctZGVsZXRlIjoic2MtbW9uaXRvci1yb3ctZGVsZXRlIixtb25pdG9yUm93RGVsZXRlOiJzYy1tb25pdG9yLXJvdy1kZWxldGUiLCJtb25pdG9yLWxpc3QtYWRkIjoic2MtbW9uaXRvci1saXN0LWFkZCIsbW9uaXRvckxpc3RBZGQ6InNjLW1vbml0b3ItbGlzdC1hZGQiLCJtb25pdG9yLXJvd3Mtb3V0ZXIiOiJzYy1tb25pdG9yLXJvd3Mtb3V0ZXIiLG1vbml0b3JSb3dzT3V0ZXI6InNjLW1vbml0b3Itcm93cy1vdXRlciIsIm1vbml0b3Itcm93cy1pbm5lciI6InNjLW1vbml0b3Itcm93cy1pbm5lciIsbW9uaXRvclJvd3NJbm5lcjoic2MtbW9uaXRvci1yb3dzLWlubmVyIiwibW9uaXRvci1yb3dzLWVuZHBvaW50Ijoic2MtbW9uaXRvci1yb3dzLWVuZHBvaW50Iixtb25pdG9yUm93c0VuZHBvaW50OiJzYy1tb25pdG9yLXJvd3MtZW5kcG9pbnQiLCJtb25pdG9yLXJvdy1yb290Ijoic2MtbW9uaXRvci1yb3ctcm9vdCIsbW9uaXRvclJvd1Jvb3Q6InNjLW1vbml0b3Itcm93LXJvb3QiLCJtb25pdG9yLXJvdy1pbmRleCI6InNjLW1vbml0b3Itcm93LWluZGV4Iixtb25pdG9yUm93SW5kZXg6InNjLW1vbml0b3Itcm93LWluZGV4IiwibW9uaXRvci1yb3ctdmFsdWUtb3V0ZXIiOiJzYy1tb25pdG9yLXJvdy12YWx1ZS1vdXRlciIsbW9uaXRvclJvd1ZhbHVlT3V0ZXI6InNjLW1vbml0b3Itcm93LXZhbHVlLW91dGVyIiwibW9uaXRvci1yb3ctdmFsdWUtZWRpdGluZyI6InNjLW1vbml0b3Itcm93LXZhbHVlLWVkaXRpbmciLG1vbml0b3JSb3dWYWx1ZUVkaXRpbmc6InNjLW1vbml0b3Itcm93LXZhbHVlLWVkaXRpbmciLCJtb25pdG9yLXJvdy12YWx1ZS1pbm5lciI6InNjLW1vbml0b3Itcm93LXZhbHVlLWlubmVyIixtb25pdG9yUm93VmFsdWVJbm5lcjoic2MtbW9uaXRvci1yb3ctdmFsdWUtaW5uZXIiLCJtb25pdG9yLWVtcHR5Ijoic2MtbW9uaXRvci1lbXB0eSIsbW9uaXRvckVtcHR5OiJzYy1tb25pdG9yLWVtcHR5IiwiY29udHJvbHMtYmFyIjoic2MtY29udHJvbHMtYmFyIixjb250cm9sc0Jhcjoic2MtY29udHJvbHMtYmFyIiwiY29udGV4dC1tZW51Ijoic2MtY29udGV4dC1tZW51Iixjb250ZXh0TWVudToic2MtY29udGV4dC1tZW51IiwiY29udGV4dC1tZW51LWl0ZW0iOiJzYy1jb250ZXh0LW1lbnUtaXRlbSIsY29udGV4dE1lbnVJdGVtOiJzYy1jb250ZXh0LW1lbnUtaXRlbSIsZHJvcHBpbmc6InNjLWRyb3BwaW5nIn0sZS5hPWF9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7KGZ1bmN0aW9uKEEpeyFmdW5jdGlvbihBKXtmdW5jdGlvbiBlKCl7fWZ1bmN0aW9uIHQoKXt9dmFyIG49U3RyaW5nLmZyb21DaGFyQ29kZSxpPXt9LnRvU3RyaW5nLHI9aS5jYWxsKEEuU2hhcmVkQXJyYXlCdWZmZXIpLG89aSgpLHM9QS5VaW50OEFycmF5LGE9c3x8QXJyYXksQj1zP0FycmF5QnVmZmVyOmEsYz1CLmlzVmlld3x8ZnVuY3Rpb24oQSl7cmV0dXJuIEEmJiJsZW5ndGgiaW4gQX0sZz1pLmNhbGwoQi5wcm90b3R5cGUpO0I9dC5wcm90b3R5cGU7dmFyIEU9QS5UZXh0RW5jb2RlcixRPW5ldyhzP1VpbnQxNkFycmF5OmEpKDMyKTtlLnByb3RvdHlwZS5kZWNvZGU9ZnVuY3Rpb24oQSl7aWYoIWMoQSkpe3ZhciBlPWkuY2FsbChBKTtpZihlIT09ZyYmZSE9PXImJmUhPT1vKXRocm93IFR5cGVFcnJvcigiRmFpbGVkIHRvIGV4ZWN1dGUgJ2RlY29kZScgb24gJ1RleHREZWNvZGVyJzogVGhlIHByb3ZpZGVkIHZhbHVlIGlzIG5vdCBvZiB0eXBlICcoQXJyYXlCdWZmZXIgb3IgQXJyYXlCdWZmZXJWaWV3KSciKTtBPXM/bmV3IGEoQSk6QXx8W119Zm9yKHZhciB0LEIsRSx1PWU9IiIsbD0wLGg9MHxBLmxlbmd0aCx3PWgtMzJ8MCxDPTAsST0wLE09MCxkPS0xO2w8aDspe2Zvcih0PWw8PXc/MzI6aC1sfDA7TTx0O2w9bCsxfDAsTT1NKzF8MCl7c3dpdGNoKChCPTI1NSZBW2xdKT4+NCl7Y2FzZSAxNTppZigyIT0oRT0yNTUmQVtsPWwrMXwwXSk+PjZ8fDI0NzxCKXtsPWwtMXwwO2JyZWFrfUM9KDcmQik8PDZ8NjMmRSxJPTUsQj0yNTY7Y2FzZSAxNDpDPDw9NixDfD0oMTUmQik8PDZ8NjMmKEU9MjU1JkFbbD1sKzF8MF0pLEk9Mj09RT4+Nj9JKzR8MDoyNCxCPUIrMjU2Jjc2ODtjYXNlIDEzOmNhc2UgMTI6Qzw8PTYsQ3w9KDMxJkIpPDw2fDYzJihFPTI1NSZBW2w9bCsxfDBdKSxJPUkrN3wwLGw8aCYmMj09RT4+NiYmQz4+SSYmMTExNDExMj5DPyhCPUMsMDw9KEM9Qy02NTUzNnwwKSYmKGQ9NTUyOTYrKEM+PjEwKXwwLEI9NTYzMjArKDEwMjMmQyl8MCwzMT5NPyhRW01dPWQsTT1NKzF8MCxkPS0xKTooRT1kLGQ9QixCPUUpKSk6KGw9bC0oQj4+PTgpLTF8MCxCPTY1NTMzKSxDPUk9MCx0PWw8PXc/MzI6aC1sfDA7ZGVmYXVsdDpRW01dPUI7Y29udGludWU7Y2FzZSAxMTpjYXNlIDEwOmNhc2UgOTpjYXNlIDg6fVFbTV09NjU1MzN9aWYodSs9bihRWzBdLFFbMV0sUVsyXSxRWzNdLFFbNF0sUVs1XSxRWzZdLFFbN10sUVs4XSxRWzldLFFbMTBdLFFbMTFdLFFbMTJdLFFbMTNdLFFbMTRdLFFbMTVdLFFbMTZdLFFbMTddLFFbMThdLFFbMTldLFFbMjBdLFFbMjFdLFFbMjJdLFFbMjNdLFFbMjRdLFFbMjVdLFFbMjZdLFFbMjddLFFbMjhdLFFbMjldLFFbMzBdLFFbMzFdKSwzMj5NJiYodT11LnNsaWNlKDAsTS0zMnwwKSksbDxoKXtpZihRWzBdPWQsTT1+ZD4+PjMxLGQ9LTEsdS5sZW5ndGg8ZS5sZW5ndGgpY29udGludWV9ZWxzZS0xIT09ZCYmKHUrPW4oZCkpO2UrPXUsdT0iIn1yZXR1cm4gZX0sQi5lbmNvZGU9ZnVuY3Rpb24oQSl7dmFyIGUsdD0wfChBPXZvaWQgMD09PUE/IiI6IiIrQSkubGVuZ3RoLG49bmV3IGEoOCsodDw8MSl8MCksaT0wLHI9IXM7Zm9yKGU9MDtlPHQ7ZT1lKzF8MCxpPWkrMXwwKXt2YXIgbz0wfEEuY2hhckNvZGVBdChlKTtpZigxMjc+PW8pbltpXT1vO2Vsc2V7aWYoMjA0Nz49byluW2ldPTE5MnxvPj42O2Vsc2V7QTp7aWYoNTUyOTY8PW8paWYoNTYzMTk+PW8pe3ZhciBCPTB8QS5jaGFyQ29kZUF0KGU9ZSsxfDApO2lmKDU2MzIwPD1CJiY1NzM0Mz49Qil7aWYoNjU1MzU8KG89KG88PDEwKStCLTU2NjEzODg4fDApKXtuW2ldPTI0MHxvPj4xOCxuW2k9aSsxfDBdPTEyOHxvPj4xMiY2MyxuW2k9aSsxfDBdPTEyOHxvPj42JjYzLG5baT1pKzF8MF09MTI4fDYzJm87Y29udGludWV9YnJlYWsgQX1vPTY1NTMzfWVsc2UgNTczNDM+PW8mJihvPTY1NTMzKTshciYmZTw8MTxpJiZlPDwxPChpLTd8MCkmJihyPSEwLChCPW5ldyBhKDMqdCkpLnNldChuKSxuPUIpfW5baV09MjI0fG8+PjEyLG5baT1pKzF8MF09MTI4fG8+PjYmNjN9bltpPWkrMXwwXT0xMjh8NjMmb319cmV0dXJuIHM/bi5zdWJhcnJheSgwLGkpOm4uc2xpY2UoMCxpKX0sRXx8KEEuVGV4dERlY29kZXI9ZSxBLlRleHRFbmNvZGVyPXQpfSgiIit2b2lkIDA9PXR5cGVvZiBBPyIiK3ZvaWQgMD09dHlwZW9mIHNlbGY/dGhpczpzZWxmOkEpfSkuY2FsbCh0aGlzLHQoMTUpKX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxMzIpLGk9dCg1KTtBLmV4cG9ydHM9bmV3IGNsYXNzIGV4dGVuZHMgbntjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5zZXJ2aWNlcz17fSx0aGlzLndvcmtlckNsYXNzPSJ1bmRlZmluZWQiPT10eXBlb2YgV29ya2VyP251bGw6V29ya2VyLHRoaXMud29ya2Vycz1bXX1jYWxsU3luYyhBLGUpe2NvbnN0e3Byb3ZpZGVyOnQsaXNSZW1vdGU6bn09dGhpcy5fZ2V0U2VydmljZVByb3ZpZGVyKEEpO2lmKHQpe2lmKG4pdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgdXNlICdjYWxsU3luYycgb24gcmVtb3RlIHByb3ZpZGVyIGZvciBzZXJ2aWNlICIuY29uY2F0KEEsIi4iKSk7Zm9yKHZhciBpPWFyZ3VtZW50cy5sZW5ndGgscj1uZXcgQXJyYXkoaT4yP2ktMjowKSxvPTI7bzxpO28rKylyW28tMl09YXJndW1lbnRzW29dO3JldHVybiB0W2VdLmFwcGx5KHQscil9dGhyb3cgbmV3IEVycm9yKCJQcm92aWRlciBub3QgZm91bmQgZm9yIHNlcnZpY2U6ICIuY29uY2F0KEEpKX1zZXRTZXJ2aWNlU3luYyhBLGUpe3RoaXMuc2VydmljZXMuaGFzT3duUHJvcGVydHkoQSkmJmkud2FybigiQ2VudHJhbCBkaXNwYXRjaCByZXBsYWNpbmcgZXhpc3Rpbmcgc2VydmljZSBwcm92aWRlciBmb3IgIi5jb25jYXQoQSkpLHRoaXMuc2VydmljZXNbQV09ZX1zZXRTZXJ2aWNlKEEsZSl7dHJ5e3JldHVybiB0aGlzLnNldFNlcnZpY2VTeW5jKEEsZSksUHJvbWlzZS5yZXNvbHZlKCl9Y2F0Y2goQSl7cmV0dXJuIFByb21pc2UucmVqZWN0KEEpfX1hZGRXb3JrZXIoQSl7LTE9PT10aGlzLndvcmtlcnMuaW5kZXhPZihBKT8odGhpcy53b3JrZXJzLnB1c2goQSksQS5vbm1lc3NhZ2U9dGhpcy5fb25NZXNzYWdlLmJpbmQodGhpcyxBKSx0aGlzLl9yZW1vdGVDYWxsKEEsImRpc3BhdGNoIiwiaGFuZHNoYWtlIikuY2F0Y2goQT0+e2kuZXJyb3IoIkNvdWxkIG5vdCBoYW5kc2hha2Ugd2l0aCB3b3JrZXI6ICIuY29uY2F0KEEpKX0pKTppLndhcm4oIkNlbnRyYWwgZGlzcGF0Y2ggaWdub3JpbmcgYXR0ZW1wdCB0byBhZGQgZHVwbGljYXRlIHdvcmtlciIpfV9nZXRTZXJ2aWNlUHJvdmlkZXIoQSl7Y29uc3QgZT10aGlzLnNlcnZpY2VzW0FdO3JldHVybiBlJiZ7cHJvdmlkZXI6ZSxpc1JlbW90ZTpCb29sZWFuKHRoaXMud29ya2VyQ2xhc3MmJmUgaW5zdGFuY2VvZiB0aGlzLndvcmtlckNsYXNzfHxlLmlzUmVtb3RlKX19X29uRGlzcGF0Y2hNZXNzYWdlKEEsZSl7bGV0IHQ7c3dpdGNoKGUubWV0aG9kKXtjYXNlInNldFNlcnZpY2UiOnQ9dGhpcy5zZXRTZXJ2aWNlKGUuYXJnc1swXSxBKTticmVhaztkZWZhdWx0OmkuZXJyb3IoIkNlbnRyYWwgZGlzcGF0Y2ggcmVjZWl2ZWQgbWVzc2FnZSBmb3IgdW5rbm93biBtZXRob2Q6ICIuY29uY2F0KGUubWV0aG9kKSl9cmV0dXJuIHR9fX0sZnVuY3Rpb24oQSxlKXt2YXIgdD17YmxhY2s6IiMwMDAiLHJlZDoiI2MyMzYyMSIsZ3JlZW46IiMyNWJjMjYiLHllbGxvdzoiI2JiYmIwMCIsYmx1ZToiIzQ5MmVlMSIsbWFnZW50YToiI2QzMzhkMyIsY3lhbjoiIzMzYmJjOCIsZ3JheToiIzgwODA4MCIscHVycGxlOiIjNzA4In07QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGU/ImNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kOiAiK3RbQV0rIjsiOiJjb2xvcjogIit0W0FdKyI7In19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNCk7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQSYmQS5pZCYmQS5kZWZhdWx0P24oQSxlLHQpOkF9fSxmdW5jdGlvbihBLGUpe3ZhciB0PSJsb25nIixuPSJzaG9ydCIsaT0ibnVtZXJpYyI7QS5leHBvcnRzPXtudW1iZXI6e2RlY2ltYWw6e3N0eWxlOiJkZWNpbWFsIn0saW50ZWdlcjp7c3R5bGU6ImRlY2ltYWwiLG1heGltdW1GcmFjdGlvbkRpZ2l0czowfSxjdXJyZW5jeTp7c3R5bGU6ImN1cnJlbmN5IixjdXJyZW5jeToiVVNEIn0scGVyY2VudDp7c3R5bGU6InBlcmNlbnQifSxkZWZhdWx0OntzdHlsZToiZGVjaW1hbCJ9fSxkYXRlOntzaG9ydDp7bW9udGg6aSxkYXk6aSx5ZWFyOiIyLWRpZ2l0In0sbWVkaXVtOnttb250aDpuLGRheTppLHllYXI6aX0sbG9uZzp7bW9udGg6dCxkYXk6aSx5ZWFyOml9LGZ1bGw6e21vbnRoOnQsZGF5OmkseWVhcjppLHdlZWtkYXk6dH0sZGVmYXVsdDp7bW9udGg6bixkYXk6aSx5ZWFyOml9fSx0aW1lOntzaG9ydDp7aG91cjppLG1pbnV0ZTppfSxtZWRpdW06e2hvdXI6aSxtaW51dGU6aSxzZWNvbmQ6aX0sbG9uZzp7aG91cjppLG1pbnV0ZTppLHNlY29uZDppLHRpbWVab25lTmFtZTpufSxmdWxsOntob3VyOmksbWludXRlOmksc2Vjb25kOmksdGltZVpvbmVOYW1lOm59LGRlZmF1bHQ6e2hvdXI6aSxtaW51dGU6aSxzZWNvbmQ6aX19LGR1cmF0aW9uOntkZWZhdWx0Ontob3Vyczp7bWluaW11bUludGVnZXJEaWdpdHM6MSxtYXhpbXVtRnJhY3Rpb25EaWdpdHM6MH0sbWludXRlczp7bWluaW11bUludGVnZXJEaWdpdHM6MixtYXhpbXVtRnJhY3Rpb25EaWdpdHM6MH0sc2Vjb25kczp7bWluaW11bUludGVnZXJEaWdpdHM6MixtYXhpbXVtRnJhY3Rpb25EaWdpdHM6M319fSxwYXJzZU51bWJlclBhdHRlcm46ZnVuY3Rpb24oQSl7aWYoQSl7dmFyIGU9e30sdD1BLm1hdGNoKC9cYltBLVpdezN9XGIvaSksbj1BLnJlcGxhY2UoL1tewqRdL2csIiIpLmxlbmd0aDtpZighbiYmdCYmKG49MSksbj8oZS5zdHlsZT0iY3VycmVuY3kiLGUuY3VycmVuY3lEaXNwbGF5PTE9PT1uPyJzeW1ib2wiOjI9PT1uPyJjb2RlIjoibmFtZSIsZS5jdXJyZW5jeT10P3RbMF0udG9VcHBlckNhc2UoKToiVVNEIik6QS5pbmRleE9mKCIlIik+PTAmJihlLnN0eWxlPSJwZXJjZW50IiksIS9bQCMwXS8udGVzdChBKSlyZXR1cm4gZS5zdHlsZT9lOnZvaWQgMDtpZihlLnVzZUdyb3VwaW5nPUEuaW5kZXhPZigiLCIpPj0wLC9FXCs/W0AjMF0rL2kudGVzdChBKXx8QS5pbmRleE9mKCJAIik+PTApe3ZhciBpPUEucmVwbGFjZSgvRVwrP1tAIzBdK3xbXkAjMF0vZ2ksIiIpO2UubWluaW11bVNpZ25pZmljYW50RGlnaXRzPU1hdGgubWluKE1hdGgubWF4KGkucmVwbGFjZSgvW15AMF0vZywiIikubGVuZ3RoLDEpLDIxKSxlLm1heGltdW1TaWduaWZpY2FudERpZ2l0cz1NYXRoLm1pbihNYXRoLm1heChpLmxlbmd0aCwxKSwyMSl9ZWxzZXtmb3IodmFyIHI9QS5yZXBsYWNlKC9bXiMwLl0vZywiIikuc3BsaXQoIi4iKSxvPXJbMF0scz1vLmxlbmd0aC0xOyIwIj09PW9bc107KS0tcztlLm1pbmltdW1JbnRlZ2VyRGlnaXRzPU1hdGgubWluKE1hdGgubWF4KG8ubGVuZ3RoLTEtcywxKSwyMSk7dmFyIGE9clsxXXx8IiI7Zm9yKHM9MDsiMCI9PT1hW3NdOykrK3M7Zm9yKGUubWluaW11bUZyYWN0aW9uRGlnaXRzPU1hdGgubWluKE1hdGgubWF4KHMsMCksMjApOyIjIj09PWFbc107KSsrcztlLm1heGltdW1GcmFjdGlvbkRpZ2l0cz1NYXRoLm1pbihNYXRoLm1heChzLDApLDIwKX1yZXR1cm4gZX19LHBhcnNlRGF0ZVBhdHRlcm46ZnVuY3Rpb24oQSl7aWYoQSl7Zm9yKHZhciBlPXt9LHI9MDtyPEEubGVuZ3RoOyl7Zm9yKHZhciBvPUFbcl0scz0xO0FbKytyXT09PW87KSsrcztzd2l0Y2gobyl7Y2FzZSJHIjplLmVyYT01PT09cz8ibmFycm93Ijo0PT09cz90Om47YnJlYWs7Y2FzZSJ5IjpjYXNlIlkiOmUueWVhcj0yPT09cz8iMi1kaWdpdCI6aTticmVhaztjYXNlIk0iOmNhc2UiTCI6cz1NYXRoLm1pbihNYXRoLm1heChzLTEsMCksNCksZS5tb250aD1baSwiMi1kaWdpdCIsbix0LCJuYXJyb3ciXVtzXTticmVhaztjYXNlIkUiOmNhc2UiZSI6Y2FzZSJjIjplLndlZWtkYXk9NT09PXM/Im5hcnJvdyI6ND09PXM/dDpuO2JyZWFrO2Nhc2UiZCI6Y2FzZSJEIjplLmRheT0yPT09cz8iMi1kaWdpdCI6aTticmVhaztjYXNlImgiOmNhc2UiSyI6ZS5ob3VyMTI9ITAsZS5ob3VyPTI9PT1zPyIyLWRpZ2l0IjppO2JyZWFrO2Nhc2UiSCI6Y2FzZSJrIjplLmhvdXIxMj0hMSxlLmhvdXI9Mj09PXM/IjItZGlnaXQiOmk7YnJlYWs7Y2FzZSJtIjplLm1pbnV0ZT0yPT09cz8iMi1kaWdpdCI6aTticmVhaztjYXNlInMiOmNhc2UiUyI6ZS5zZWNvbmQ9Mj09PXM/IjItZGlnaXQiOmk7YnJlYWs7Y2FzZSJ6IjpjYXNlIloiOmNhc2UidiI6Y2FzZSJWIjplLnRpbWVab25lTmFtZT0xPT09cz9uOnR9fXJldHVybiBPYmplY3Qua2V5cyhlKS5sZW5ndGg/ZTp2b2lkIDB9fX19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7aWYoInN0cmluZyI9PXR5cGVvZiBBJiZlW0FdKXJldHVybiBBO2Zvcih2YXIgdD1bXS5jb25jYXQoQXx8W10pLG49MCxpPXQubGVuZ3RoO248aTsrK24pZm9yKHZhciByPXRbbl0uc3BsaXQoIi0iKTtyLmxlbmd0aDspe3ZhciBvPXIuam9pbigiLSIpO2lmKGVbb10pcmV0dXJuIG87ci5wb3AoKX19fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPSJvbmUiLGk9InR3byIscj0iZmV3IixvPSJtYW55IixzPSJvdGhlciIsYT1bZnVuY3Rpb24oQSl7cmV0dXJuIDE9PT0rQT9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAwPD1lJiZlPD0xP246c30sZnVuY3Rpb24oQSl7cmV0dXJuIDA9PT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSl8fDE9PT0rQT9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAwPT09ZT8iemVybyI6MT09PWU/bjoyPT09ZT9pOjM8PWUlMTAwJiZlJTEwMDw9MTA/cjoxMTw9ZSUxMDAmJmUlMTAwPD05OT9vOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKSx0PShBKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGg7cmV0dXJuIDE9PT1lJiYwPT09dD9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiBlJTEwPT0xJiZlJTEwMCE9MTE/bjoyPD1lJTEwJiZlJTEwPD00JiYoZSUxMDA8MTJ8fDE0PGUlMTAwKT9yOmUlMTA9PTB8fDU8PWUlMTAmJmUlMTA8PTl8fDExPD1lJTEwMCYmZSUxMDA8PTE0P286c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIGUlMTA9PTEmJmUlMTAwIT0xMSYmZSUxMDAhPTcxJiZlJTEwMCE9OTE/bjplJTEwPT0yJiZlJTEwMCE9MTImJmUlMTAwIT03MiYmZSUxMDAhPTkyP2k6KDM8PWUlMTAmJmUlMTA8PTR8fGUlMTA9PTkpJiYoZSUxMDA8MTB8fDE5PGUlMTAwKSYmKGUlMTAwPDcwfHw3OTxlJTEwMCkmJihlJTEwMDw5MHx8OTk8ZSUxMDApP3I6MCE9PWUmJmUlMWU2PT0wP286c30sZnVuY3Rpb24oQSl7dmFyIGU9TWF0aC5mbG9vcihNYXRoLmFicygrQSkpLHQ9KEErIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aCxpPSsoQSsiLiIpLnNwbGl0KCIuIilbMV07cmV0dXJuIDA9PT10JiZlJTEwPT0xJiZlJTEwMCE9MTF8fGklMTA9PTEmJmklMTAwIT0xMT9uOjA9PT10JiYyPD1lJTEwJiZlJTEwPD00JiYoZSUxMDA8MTJ8fDE0PGUlMTAwKXx8Mjw9aSUxMCYmaSUxMDw9NCYmKGklMTAwPDEyfHwxNDxpJTEwMCk/cjpzfSxmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSksdD0oQSsiLiIpLnNwbGl0KCIuIilbMV0ubGVuZ3RoO3JldHVybiAxPT09ZSYmMD09PXQ/bjoyPD1lJiZlPD00JiYwPT09dD9yOjAhPT10P286c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDA9PT1lPyJ6ZXJvIjoxPT09ZT9uOjI9PT1lP2k6Mz09PWU/cjo2PT09ZT9vOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKSx0PSsoIiIrQSkucmVwbGFjZSgvXlteLl0qLj98MCskL2csIiIpO3JldHVybiAxPT09K0F8fDAhPT10JiYoMD09PWV8fDE9PT1lKT9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKSx0PShBKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGgsbz0rKEErIi4iKS5zcGxpdCgiLiIpWzFdO3JldHVybiAwPT09dCYmZSUxMDA9PTF8fG8lMTAwPT0xP246MD09PXQmJmUlMTAwPT0yfHxvJTEwMD09Mj9pOjA9PT10JiYzPD1lJTEwMCYmZSUxMDA8PTR8fDM8PW8lMTAwJiZvJTEwMDw9ND9yOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKTtyZXR1cm4gMD09PWV8fDE9PT1lP246c30sZnVuY3Rpb24oQSl7dmFyIGU9TWF0aC5mbG9vcihNYXRoLmFicygrQSkpLHQ9KEErIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aCxpPSsoQSsiLiIpLnNwbGl0KCIuIilbMV07cmV0dXJuIDA9PT10JiYoMT09PWV8fDI9PT1lfHwzPT09ZSl8fDA9PT10JiZlJTEwIT00JiZlJTEwIT02JiZlJTEwIT05fHwwIT09dCYmaSUxMCE9NCYmaSUxMCE9NiYmaSUxMCE9OT9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAxPT09ZT9uOjI9PT1lP2k6Mzw9ZSYmZTw9Nj9yOjc8PWUmJmU8PTEwP286c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDE9PT1lfHwxMT09PWU/bjoyPT09ZXx8MTI9PT1lP2k6Mzw9ZSYmZTw9MTB8fDEzPD1lJiZlPD0xOT9yOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKSx0PShBKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGg7cmV0dXJuIDA9PT10JiZlJTEwPT0xP246MD09PXQmJmUlMTA9PTI/aTowIT09dHx8ZSUxMDAhPTAmJmUlMTAwIT0yMCYmZSUxMDAhPTQwJiZlJTEwMCE9NjAmJmUlMTAwIT04MD8wIT09dD9vOnM6cn0sZnVuY3Rpb24oQSl7dmFyIGU9TWF0aC5mbG9vcihNYXRoLmFicygrQSkpLHQ9KEErIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aCxyPStBO3JldHVybiAxPT09ZSYmMD09PXQ/bjoyPT09ZSYmMD09PXQ/aTowPT09dCYmKHI8MHx8MTA8cikmJnIlMTA9PTA/bzpzfSxmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSksdD0rKCIiK0EpLnJlcGxhY2UoL15bXi5dKi4/fDArJC9nLCIiKTtyZXR1cm4gMD09PXQmJmUlMTA9PTEmJmUlMTAwIT0xMXx8MCE9PXQ/bjpzfSxmdW5jdGlvbihBKXt2YXIgZT0rQTtyZXR1cm4gMT09PWU/bjoyPT09ZT9pOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAwPT09ZT8iemVybyI6MT09PWU/bjpzfSxmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSksdD0rQTtyZXR1cm4gMD09PXQ/Inplcm8iOjAhPT1lJiYxIT09ZXx8MD09PXQ/czpufSxmdW5jdGlvbihBKXt2YXIgZT0rKEErIi4iKS5zcGxpdCgiLiIpWzFdLHQ9K0E7cmV0dXJuIHQlMTA9PTEmJih0JTEwMDwxMXx8MTk8dCUxMDApP246Mjw9dCUxMCYmdCUxMDw9OSYmKHQlMTAwPDExfHwxOTx0JTEwMCk/cjowIT09ZT9vOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPShBKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGgsdD0rKEErIi4iKS5zcGxpdCgiLiIpWzFdLGk9K0E7cmV0dXJuIGklMTA9PTB8fDExPD1pJTEwMCYmaSUxMDA8PTE5fHwyPT09ZSYmMTE8PXQlMTAwJiZ0JTEwMDw9MTk/Inplcm8iOmklMTA9PTEmJmklMTAwIT0xMXx8Mj09PWUmJnQlMTA9PTEmJnQlMTAwIT0xMXx8MiE9PWUmJnQlMTA9PTE/bjpzfSxmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSksdD0oQSsiLiIpLnNwbGl0KCIuIilbMV0ubGVuZ3RoLGk9KyhBKyIuIikuc3BsaXQoIi4iKVsxXTtyZXR1cm4gMD09PXQmJmUlMTA9PTEmJmUlMTAwIT0xMXx8aSUxMD09MSYmaSUxMDAhPTExP246c30sZnVuY3Rpb24oQSl7dmFyIGU9TWF0aC5mbG9vcihNYXRoLmFicygrQSkpLHQ9KEErIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aCxpPStBO3JldHVybiAxPT09ZSYmMD09PXQ/bjowIT09dHx8MD09PWl8fDEhPT1pJiYxPD1pJTEwMCYmaSUxMDA8PTE5P3I6c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDE9PT1lP246MD09PWV8fDI8PWUlMTAwJiZlJTEwMDw9MTA/cjoxMTw9ZSUxMDAmJmUlMTAwPD0xOT9vOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKSx0PShBKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGg7cmV0dXJuIDE9PT1lJiYwPT09dD9uOjA9PT10JiYyPD1lJTEwJiZlJTEwPD00JiYoZSUxMDA8MTJ8fDE0PGUlMTAwKT9yOjA9PT10JiYxIT09ZSYmMDw9ZSUxMCYmZSUxMDw9MXx8MD09PXQmJjU8PWUlMTAmJmUlMTA8PTl8fDA9PT10JiYxMjw9ZSUxMDAmJmUlMTAwPD0xND9vOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKTtyZXR1cm4gMDw9ZSYmZTw9MT9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKSx0PShBKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGg7cmV0dXJuIDA9PT10JiZlJTEwPT0xJiZlJTEwMCE9MTE/bjowPT09dCYmMjw9ZSUxMCYmZSUxMDw9NCYmKGUlMTAwPDEyfHwxNDxlJTEwMCk/cjowPT09dCYmZSUxMD09MHx8MD09PXQmJjU8PWUlMTAmJmUlMTA8PTl8fDA9PT10JiYxMTw9ZSUxMDAmJmUlMTAwPD0xND9vOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAwPT09TWF0aC5mbG9vcihNYXRoLmFicygrQSkpfHwxPT09ZT9uOjI8PWUmJmU8PTEwP3I6c30sZnVuY3Rpb24oQSl7dmFyIGU9TWF0aC5mbG9vcihNYXRoLmFicygrQSkpLHQ9KyhBKyIuIikuc3BsaXQoIi4iKVsxXSxpPStBO3JldHVybiAwPT09aXx8MT09PWl8fDA9PT1lJiYxPT09dD9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZmxvb3IoTWF0aC5hYnMoK0EpKSx0PShBKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGg7cmV0dXJuIDA9PT10JiZlJTEwMD09MT9uOjA9PT10JiZlJTEwMD09Mj9pOjA9PT10JiYzPD1lJTEwMCYmZSUxMDA8PTR8fDAhPT10P3I6c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDA8PWUmJmU8PTF8fDExPD1lJiZlPD05OT9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAxPT09ZXx8NT09PWV8fDc9PT1lfHw4PT09ZXx8OT09PWV8fDEwPT09ZT9uOjI9PT1lfHwzPT09ZT9pOjQ9PT1lP3I6Nj09PWU/bzpzfSxmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSk7cmV0dXJuIGUlMTA9PTF8fGUlMTA9PTJ8fGUlMTA9PTV8fGUlMTA9PTd8fGUlMTA9PTh8fGUlMTAwPT0yMHx8ZSUxMDA9PTUwfHxlJTEwMD09NzB8fGUlMTAwPT04MD9uOmUlMTA9PTN8fGUlMTA9PTR8fGUlMWUzPT0xMDB8fGUlMWUzPT0yMDB8fGUlMWUzPT0zMDB8fGUlMWUzPT00MDB8fGUlMWUzPT01MDB8fGUlMWUzPT02MDB8fGUlMWUzPT03MDB8fGUlMWUzPT04MDB8fGUlMWUzPT05MDA/cjowPT09ZXx8ZSUxMD09Nnx8ZSUxMDA9PTQwfHxlJTEwMD09NjB8fGUlMTAwPT05MD9vOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiBlJTEwIT0yJiZlJTEwIT0zfHxlJTEwMD09MTJ8fGUlMTAwPT0xMz9zOnJ9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAxPT09ZXx8Mz09PWU/bjoyPT09ZT9pOjQ9PT1lP3I6c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDA9PT1lfHw3PT09ZXx8OD09PWV8fDk9PT1lPyJ6ZXJvIjoxPT09ZT9uOjI9PT1lP2k6Mz09PWV8fDQ9PT1lP3I6NT09PWV8fDY9PT1lP286c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIGUlMTA9PTEmJmUlMTAwIT0xMT9uOmUlMTA9PTImJmUlMTAwIT0xMj9pOmUlMTA9PTMmJmUlMTAwIT0xMz9yOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAxPT09ZXx8MTE9PT1lP246Mj09PWV8fDEyPT09ZT9pOjM9PT1lfHwxMz09PWU/cjpzfSxmdW5jdGlvbihBKXt2YXIgZT0rQTtyZXR1cm4gMT09PWU/bjoyPT09ZXx8Mz09PWU/aTo0PT09ZT9yOjY9PT1lP286c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDE9PT1lfHw1PT09ZT9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAxMT09PWV8fDg9PT1lfHw4MD09PWV8fDgwMD09PWU/bzpzfSxmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSk7cmV0dXJuIDE9PT1lP246MD09PWV8fDI8PWUlMTAwJiZlJTEwMDw9MjB8fGUlMTAwPT00MHx8ZSUxMDA9PTYwfHxlJTEwMD09ODA/bzpzfSxmdW5jdGlvbihBKXt2YXIgZT0rQTtyZXR1cm4gZSUxMD09Nnx8ZSUxMD09OXx8ZSUxMD09MCYmMCE9PWU/bzpzfSxmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmZsb29yKE1hdGguYWJzKCtBKSk7cmV0dXJuIGUlMTA9PTEmJmUlMTAwIT0xMT9uOmUlMTA9PTImJmUlMTAwIT0xMj9pOmUlMTAhPTcmJmUlMTAhPTh8fGUlMTAwPT0xN3x8ZSUxMDA9PTE4P3M6b30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDE9PT1lP246Mj09PWV8fDM9PT1lP2k6ND09PWU/cjpzfSxmdW5jdGlvbihBKXt2YXIgZT0rQTtyZXR1cm4gMTw9ZSYmZTw9ND9uOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAxPT09ZXx8NT09PWV8fDc8PWUmJmU8PTk/bjoyPT09ZXx8Mz09PWU/aTo0PT09ZT9yOjY9PT1lP286c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDE9PT1lP246ZSUxMD09NCYmZSUxMDAhPTE0P286c30sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIGUlMTAhPTEmJmUlMTAhPTJ8fGUlMTAwPT0xMXx8ZSUxMDA9PTEyP3M6bn0sZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIGUlMTA9PTZ8fGUlMTA9PTl8fDEwPT09ZT9yOnN9LGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiBlJTEwPT0zJiZlJTEwMCE9MTM/cjpzfV07QS5leHBvcnRzPXthZjp7Y2FyZGluYWw6YVswXX0sYWs6e2NhcmRpbmFsOmFbMV19LGFtOntjYXJkaW5hbDphWzJdfSxhcjp7Y2FyZGluYWw6YVszXX0sYXJzOntjYXJkaW5hbDphWzNdfSxhczp7Y2FyZGluYWw6YVsyXSxvcmRpbmFsOmFbMzRdfSxhc2E6e2NhcmRpbmFsOmFbMF19LGFzdDp7Y2FyZGluYWw6YVs0XX0sYXo6e2NhcmRpbmFsOmFbMF0sb3JkaW5hbDphWzM1XX0sYmU6e2NhcmRpbmFsOmFbNV0sb3JkaW5hbDphWzM2XX0sYmVtOntjYXJkaW5hbDphWzBdfSxiZXo6e2NhcmRpbmFsOmFbMF19LGJnOntjYXJkaW5hbDphWzBdfSxiaDp7Y2FyZGluYWw6YVsxXX0sYm46e2NhcmRpbmFsOmFbMl0sb3JkaW5hbDphWzM0XX0sYnI6e2NhcmRpbmFsOmFbNl19LGJyeDp7Y2FyZGluYWw6YVswXX0sYnM6e2NhcmRpbmFsOmFbN119LGNhOntjYXJkaW5hbDphWzRdLG9yZGluYWw6YVszN119LGNlOntjYXJkaW5hbDphWzBdfSxjZ2c6e2NhcmRpbmFsOmFbMF19LGNocjp7Y2FyZGluYWw6YVswXX0sY2tiOntjYXJkaW5hbDphWzBdfSxjczp7Y2FyZGluYWw6YVs4XX0sY3k6e2NhcmRpbmFsOmFbOV0sb3JkaW5hbDphWzM4XX0sZGE6e2NhcmRpbmFsOmFbMTBdfSxkZTp7Y2FyZGluYWw6YVs0XX0sZHNiOntjYXJkaW5hbDphWzExXX0sZHY6e2NhcmRpbmFsOmFbMF19LGVlOntjYXJkaW5hbDphWzBdfSxlbDp7Y2FyZGluYWw6YVswXX0sZW46e2NhcmRpbmFsOmFbNF0sb3JkaW5hbDphWzM5XX0sZW86e2NhcmRpbmFsOmFbMF19LGVzOntjYXJkaW5hbDphWzBdfSxldDp7Y2FyZGluYWw6YVs0XX0sZXU6e2NhcmRpbmFsOmFbMF19LGZhOntjYXJkaW5hbDphWzJdfSxmZjp7Y2FyZGluYWw6YVsxMl19LGZpOntjYXJkaW5hbDphWzRdfSxmaWw6e2NhcmRpbmFsOmFbMTNdLG9yZGluYWw6YVswXX0sZm86e2NhcmRpbmFsOmFbMF19LGZyOntjYXJkaW5hbDphWzEyXSxvcmRpbmFsOmFbMF19LGZ1cjp7Y2FyZGluYWw6YVswXX0sZnk6e2NhcmRpbmFsOmFbNF19LGdhOntjYXJkaW5hbDphWzE0XSxvcmRpbmFsOmFbMF19LGdkOntjYXJkaW5hbDphWzE1XSxvcmRpbmFsOmFbNDBdfSxnbDp7Y2FyZGluYWw6YVs0XX0sZ3N3OntjYXJkaW5hbDphWzBdfSxndTp7Y2FyZGluYWw6YVsyXSxvcmRpbmFsOmFbNDFdfSxndXc6e2NhcmRpbmFsOmFbMV19LGd2OntjYXJkaW5hbDphWzE2XX0saGE6e2NhcmRpbmFsOmFbMF19LGhhdzp7Y2FyZGluYWw6YVswXX0saGU6e2NhcmRpbmFsOmFbMTddfSxoaTp7Y2FyZGluYWw6YVsyXSxvcmRpbmFsOmFbNDFdfSxocjp7Y2FyZGluYWw6YVs3XX0saHNiOntjYXJkaW5hbDphWzExXX0saHU6e2NhcmRpbmFsOmFbMF0sb3JkaW5hbDphWzQyXX0saHk6e2NhcmRpbmFsOmFbMTJdLG9yZGluYWw6YVswXX0saWE6e2NhcmRpbmFsOmFbNF19LGlvOntjYXJkaW5hbDphWzRdfSxpczp7Y2FyZGluYWw6YVsxOF19LGl0OntjYXJkaW5hbDphWzRdLG9yZGluYWw6YVs0M119LGl1OntjYXJkaW5hbDphWzE5XX0saXc6e2NhcmRpbmFsOmFbMTddfSxqZ286e2NhcmRpbmFsOmFbMF19LGppOntjYXJkaW5hbDphWzRdfSxqbWM6e2NhcmRpbmFsOmFbMF19LGthOntjYXJkaW5hbDphWzBdLG9yZGluYWw6YVs0NF19LGthYjp7Y2FyZGluYWw6YVsxMl19LGthajp7Y2FyZGluYWw6YVswXX0sa2NnOntjYXJkaW5hbDphWzBdfSxrazp7Y2FyZGluYWw6YVswXSxvcmRpbmFsOmFbNDVdfSxra2o6e2NhcmRpbmFsOmFbMF19LGtsOntjYXJkaW5hbDphWzBdfSxrbjp7Y2FyZGluYWw6YVsyXX0sa3M6e2NhcmRpbmFsOmFbMF19LGtzYjp7Y2FyZGluYWw6YVswXX0sa3NoOntjYXJkaW5hbDphWzIwXX0sa3U6e2NhcmRpbmFsOmFbMF19LGt3OntjYXJkaW5hbDphWzE5XX0sa3k6e2NhcmRpbmFsOmFbMF19LGxhZzp7Y2FyZGluYWw6YVsyMV19LGxiOntjYXJkaW5hbDphWzBdfSxsZzp7Y2FyZGluYWw6YVswXX0sbG46e2NhcmRpbmFsOmFbMV19LGx0OntjYXJkaW5hbDphWzIyXX0sbHY6e2NhcmRpbmFsOmFbMjNdfSxtYXM6e2NhcmRpbmFsOmFbMF19LG1nOntjYXJkaW5hbDphWzFdfSxtZ286e2NhcmRpbmFsOmFbMF19LG1rOntjYXJkaW5hbDphWzI0XSxvcmRpbmFsOmFbNDZdfSxtbDp7Y2FyZGluYWw6YVswXX0sbW46e2NhcmRpbmFsOmFbMF19LG1vOntjYXJkaW5hbDphWzI1XSxvcmRpbmFsOmFbMF19LG1yOntjYXJkaW5hbDphWzJdLG9yZGluYWw6YVs0N119LG10OntjYXJkaW5hbDphWzI2XX0sbmFoOntjYXJkaW5hbDphWzBdfSxuYXE6e2NhcmRpbmFsOmFbMTldfSxuYjp7Y2FyZGluYWw6YVswXX0sbmQ6e2NhcmRpbmFsOmFbMF19LG5lOntjYXJkaW5hbDphWzBdLG9yZGluYWw6YVs0OF19LG5sOntjYXJkaW5hbDphWzRdfSxubjp7Y2FyZGluYWw6YVswXX0sbm5oOntjYXJkaW5hbDphWzBdfSxubzp7Y2FyZGluYWw6YVswXX0sbnI6e2NhcmRpbmFsOmFbMF19LG5zbzp7Y2FyZGluYWw6YVsxXX0sbnk6e2NhcmRpbmFsOmFbMF19LG55bjp7Y2FyZGluYWw6YVswXX0sb206e2NhcmRpbmFsOmFbMF19LG9yOntjYXJkaW5hbDphWzBdLG9yZGluYWw6YVs0OV19LG9zOntjYXJkaW5hbDphWzBdfSxwYTp7Y2FyZGluYWw6YVsxXX0scGFwOntjYXJkaW5hbDphWzBdfSxwbDp7Y2FyZGluYWw6YVsyN119LHByZzp7Y2FyZGluYWw6YVsyM119LHBzOntjYXJkaW5hbDphWzBdfSxwdDp7Y2FyZGluYWw6YVsyOF19LCJwdC1QVCI6e2NhcmRpbmFsOmFbNF19LHJtOntjYXJkaW5hbDphWzBdfSxybzp7Y2FyZGluYWw6YVsyNV0sb3JkaW5hbDphWzBdfSxyb2Y6e2NhcmRpbmFsOmFbMF19LHJ1OntjYXJkaW5hbDphWzI5XX0scndrOntjYXJkaW5hbDphWzBdfSxzYXE6e2NhcmRpbmFsOmFbMF19LHNjOntjYXJkaW5hbDphWzRdLG9yZGluYWw6YVs0M119LHNjbjp7Y2FyZGluYWw6YVs0XSxvcmRpbmFsOmFbNDNdfSxzZDp7Y2FyZGluYWw6YVswXX0sc2RoOntjYXJkaW5hbDphWzBdfSxzZTp7Y2FyZGluYWw6YVsxOV19LHNlaDp7Y2FyZGluYWw6YVswXX0sc2g6e2NhcmRpbmFsOmFbN119LHNoaTp7Y2FyZGluYWw6YVszMF19LHNpOntjYXJkaW5hbDphWzMxXX0sc2s6e2NhcmRpbmFsOmFbOF19LHNsOntjYXJkaW5hbDphWzMyXX0sc21hOntjYXJkaW5hbDphWzE5XX0sc21pOntjYXJkaW5hbDphWzE5XX0sc21qOntjYXJkaW5hbDphWzE5XX0sc21uOntjYXJkaW5hbDphWzE5XX0sc21zOntjYXJkaW5hbDphWzE5XX0sc246e2NhcmRpbmFsOmFbMF19LHNvOntjYXJkaW5hbDphWzBdfSxzcTp7Y2FyZGluYWw6YVswXSxvcmRpbmFsOmFbNTBdfSxzcjp7Y2FyZGluYWw6YVs3XX0sc3M6e2NhcmRpbmFsOmFbMF19LHNzeTp7Y2FyZGluYWw6YVswXX0sc3Q6e2NhcmRpbmFsOmFbMF19LHN2OntjYXJkaW5hbDphWzRdLG9yZGluYWw6YVs1MV19LHN3OntjYXJkaW5hbDphWzRdfSxzeXI6e2NhcmRpbmFsOmFbMF19LHRhOntjYXJkaW5hbDphWzBdfSx0ZTp7Y2FyZGluYWw6YVswXX0sdGVvOntjYXJkaW5hbDphWzBdfSx0aTp7Y2FyZGluYWw6YVsxXX0sdGlnOntjYXJkaW5hbDphWzBdfSx0azp7Y2FyZGluYWw6YVswXSxvcmRpbmFsOmFbNTJdfSx0bDp7Y2FyZGluYWw6YVsxM10sb3JkaW5hbDphWzBdfSx0bjp7Y2FyZGluYWw6YVswXX0sdHI6e2NhcmRpbmFsOmFbMF19LHRzOntjYXJkaW5hbDphWzBdfSx0em06e2NhcmRpbmFsOmFbMzNdfSx1Zzp7Y2FyZGluYWw6YVswXX0sdWs6e2NhcmRpbmFsOmFbMjldLG9yZGluYWw6YVs1M119LHVyOntjYXJkaW5hbDphWzRdfSx1ejp7Y2FyZGluYWw6YVswXX0sdmU6e2NhcmRpbmFsOmFbMF19LHZvOntjYXJkaW5hbDphWzBdfSx2dW46e2NhcmRpbmFsOmFbMF19LHdhOntjYXJkaW5hbDphWzFdfSx3YWU6e2NhcmRpbmFsOmFbMF19LHhoOntjYXJkaW5hbDphWzBdfSx4b2c6e2NhcmRpbmFsOmFbMF19LHlpOntjYXJkaW5hbDphWzRdfSx6dTp7Y2FyZGluYWw6YVsyXX0sbG86e29yZGluYWw6YVswXX0sbXM6e29yZGluYWw6YVswXX0sdmk6e29yZGluYWw6YVswXX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDUpLGk9e30scj1uZXcgRE9NUGFyc2VyLG89QT0+KG4ud2FybihBKSx7bXNnOkEsaXNOb29wOiEwLGlzRXJyb3I6ITB9KTtmdW5jdGlvbiBzKEEsZSl7bGV0IHQ9e307Zm9yKGxldCBpIG9mIGUpe3ZhciBuPWkuaW5mby5zd2l0Y2hlcztpZighbiljb250aW51ZTt0W2kuaW5mby5vcGNvZGVdPW4ubWFwKHQ9Pnt2YXIgbixzLGEsQixjLGcsRTtzd2l0Y2godHlwZW9mIHQpe2Nhc2Uib2JqZWN0IjpicmVhaztjYXNlInN0cmluZyI6dD17b3Bjb2RlOnR9O2JyZWFrO2RlZmF1bHQ6cmV0dXJuIG8odHlwZW9mIHQrIiBkaXNhbGxvd2VkIil9aWYodC5pc05vb3ApcmV0dXJue2lzTm9vcDohMCxtc2c6bnVsbCE9PShnPW51bGwhPT0oRT10Lm92ZXJ3cml0ZVRleHQpJiZ2b2lkIDAhPT1FP0U6aS5pbmZvLnN3aXRjaFRleHQpJiZ2b2lkIDAhPT1nP2c6aS5pbmZvLnRleHR9O2lmKCF0Lm9wY29kZSlyZXR1cm4gbygiTm8gZGVmaW5lZCBvcGNvZGUiKTtsZXQgUT1lLmZpbmQoQT0+QS5pbmZvLm9wY29kZT09PXQub3Bjb2RlKTtpZighUSlyZXR1cm4gbygiQmxvY2sgIi5jb25jYXQodC5vcGNvZGUsIiBkb2Vzbid0IGV4aXN0IikpO2xldCB1PXt9LGw9bnVsbCE9PShuPXQuY3JlYXRlQXJndW1lbnRzKSYmdm9pZCAwIT09bj9uOnt9O3IucGFyc2VGcm9tU3RyaW5nKFEueG1sLCJ0ZXh0L3htbCIpLnF1ZXJ5U2VsZWN0b3JBbGwoJ1t0eXBlPSInLmNvbmNhdChRLmpzb24udHlwZSwnIl0gPiB2YWx1ZScpKS5mb3JFYWNoKEE9Pnt2YXIgZSxuLHIsbztsZXQgcz1BLmdldEF0dHJpYnV0ZSgibmFtZSIpO2lmKGkuaW5mby5hcmd1bWVudHNbc10mJiEobnVsbCE9PShlPXQucmVtYXBBcmd1bWVudHMpJiZ2b2lkIDAhPT1lP2U6e30pW3NdKXJldHVybjtpZihPYmplY3QudmFsdWVzKG51bGwhPT0obj10LnJlbWFwQXJndW1lbnRzKSYmdm9pZCAwIT09bj9uOnt9KS5pbmNsdWRlcyhzKSlyZXR1cm47bGV0IGE9QS5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2hhZG93IilbMF0uZ2V0QXR0cmlidXRlKCJ0eXBlIiksQj0obnVsbCE9PShyPW51bGwhPT0obz1sW3NdKSYmdm9pZCAwIT09bz9vOlEuaW5mby5hcmd1bWVudHNbc10uZGVmYXVsdFZhbHVlKSYmdm9pZCAwIT09cj9yOiIiKS50b1N0cmluZygpO3Vbc109e3NoYWRvd1R5cGU6YSx2YWx1ZTpCfX0pO2NvbnN0IGg9T2JqZWN0LmtleXMoaS5pbmZvLmFyZ3VtZW50cykuZmlsdGVyKEE9Pnt2YXIgZSxuO3JldHVybiEhUS5pbmZvLmFyZ3VtZW50c1tBXSYmISEobnVsbCE9PShlPXQucmVtYXBBcmd1bWVudHMpJiZ2b2lkIDAhPT1lP2U6e30pW0FdJiYhT2JqZWN0LnZhbHVlcyhudWxsIT09KG49dC5yZW1hcEFyZ3VtZW50cykmJnZvaWQgMCE9PW4/bjp7fSkuaW5jbHVkZXMoQSl9KSx3PXt9O3JldHVybiByLnBhcnNlRnJvbVN0cmluZyhpLnhtbCwidGV4dC94bWwiKS5xdWVyeVNlbGVjdG9yQWxsKCdbdHlwZT0iJy5jb25jYXQoaS5qc29uLnR5cGUsJyJdID4gdmFsdWUnKSkuZm9yRWFjaChBPT57dmFyIGU7bGV0IG49QS5nZXRBdHRyaWJ1dGUoIm5hbWUiKTtpZigobnVsbCE9PShlPXQucmVtYXBBcmd1bWVudHMpJiZ2b2lkIDAhPT1lP2U6e30pW25dJiYobj10LnJlbWFwQXJndW1lbnRzW25dKSwhUS5pbmZvLmFyZ3VtZW50c1tuXSlyZXR1cm47bGV0IGk9QS5xdWVyeVNlbGVjdG9yKCJzaGFkb3ciKTtpJiYoaT1pLmdldEF0dHJpYnV0ZSgidHlwZSIpLHdbbl09aSl9KSxyLnBhcnNlRnJvbVN0cmluZyhRLnhtbCwidGV4dC94bWwiKS5xdWVyeVNlbGVjdG9yQWxsKCdbdHlwZT0iJy5jb25jYXQoUS5qc29uLnR5cGUsJyJdID4gdmFsdWUnKSkuZm9yRWFjaChBPT57bGV0IGU9QS5nZXRBdHRyaWJ1dGUoIm5hbWUiKTtpZighd1tlXSlyZXR1cm47bGV0IHQ9QS5xdWVyeVNlbGVjdG9yKCJzaGFkb3ciKTt0JiYodD10LmdldEF0dHJpYnV0ZSgidHlwZSIpLHdbZV0hPXQ/d1tlXT10OmRlbGV0ZSB3W2VdKX0pLHtvcGNvZGU6IiIuY29uY2F0KEEsIl8iKS5jb25jYXQodC5vcGNvZGUpLG1zZzpudWxsIT09KHM9bnVsbCE9PShhPXQub3ZlcndyaXRlVGV4dCkmJnZvaWQgMCE9PWE/YTpRLmluZm8uc3dpdGNoVGV4dCkmJnZvaWQgMCE9PXM/czpRLmluZm8udGV4dCxtYXBGaWVsZFZhbHVlczpudWxsIT09KEI9dC5yZW1hcE1lbnVzKSYmdm9pZCAwIT09Qj9COnt9LHJlbWFwSW5wdXROYW1lOm51bGwhPT0oYz10LnJlbWFwQXJndW1lbnRzKSYmdm9pZCAwIT09Yz9jOnt9LGNyZWF0ZUlucHV0czp1LHNwbGl0SW5wdXRzOmgscmVtYXBTaGFkb3dUeXBlOnd9fSl9cmV0dXJuIHR9QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2xldHtydW50aW1lOmV9PUE7Zm9yKGxldCBBIG9mIGUuX2Jsb2NrSW5mbylBLmlkIGluIGl8fChpW0EuaWRdPXMoQS5pZCxBLmJsb2NrcykpO3JldHVybiBpfSxBLmV4cG9ydHMuZ2V0X2V4dGVuc2lvbl9zd2l0Y2hlcz1zLEEuZXhwb3J0cy5ub29wU3dpdGNoPXtpc05vb3A6ITB9fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1mdW5jdGlvbihBKXtyZXR1cm4gQS53ZWJwYWNrUG9seWZpbGx8fChBLmRlcHJlY2F0ZT1mdW5jdGlvbigpe30sQS5wYXRocz1bXSxBLmNoaWxkcmVufHwoQS5jaGlsZHJlbj1bXSksT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsImxvYWRlZCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEEubH19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoQSwiaWQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBBLml9fSksQS53ZWJwYWNrUG9seWZpbGw9MSksQX19LGZ1bmN0aW9uKEEpe0EuZXhwb3J0cz1KU09OLnBhcnNlKCd7Im1lbnVNYXAiOnsiY3MiOlt7ImNvZGUiOiJjcyIsIm5hbWUiOiLEjWXFoXRpbmEifV0sImRhIjpbeyJjb2RlIjoiZGEiLCJuYW1lIjoiRGFuc2sifV0sImdsIjpbeyJjb2RlIjoiZ2wiLCJuYW1lIjoiZ2FsZWdvIn1dLCJzbCI6W3siY29kZSI6InNsIiwibmFtZSI6InNsb3ZlbsWhxI1pbmEifV0sImZyIjpbeyJjb2RlIjoiZnIiLCJuYW1lIjoiRnJhbsOnYWlzIn1dLCJodSI6W3siY29kZSI6Imh1IiwibmFtZSI6Im1hZ3lhciJ9XSwidWsiOlt7ImNvZGUiOiJ1ayIsIm5hbWUiOiLRg9C60YDQsNGX0L3RgdGM0LrQsCJ9XSwiemgtdHciOlt7ImNvZGUiOiJ6aC10dyIsIm5hbWUiOiLkuK3mloco57mB6auUKSJ9XSwicHQiOlt7ImNvZGUiOiJwdCIsIm5hbWUiOiJQb3J0dWd1ZXNlIn1dLCJwdC1iciI6W3siY29kZSI6InB0IiwibmFtZSI6IlBvcnR1Z3XDqnMifV0sInRyIjpbeyJjb2RlIjoidHIiLCJuYW1lIjoiVMO8cmvDp2UifV0sImdhIjpbeyJjb2RlIjoiZ2EiLCJuYW1lIjoiR2FlaWxnZSJ9XSwidGgiOlt7ImNvZGUiOiJ0aCIsIm5hbWUiOiLguKDguLLguKnguLLguYTguJfguKIifV0sImphIjpbeyJjb2RlIjoiamEiLCJuYW1lIjoi5pel5pys6KqeIn1dLCJqYS1oaXJhIjpbeyJjb2RlIjoiamEiLCJuYW1lIjoi5pel5pys6KqeIn1dLCJubCI6W3siY29kZSI6Im5sIiwibmFtZSI6Ik5lZGVybGFuZHMifV0sImdkIjpbeyJjb2RlIjoiZ2QiLCJuYW1lIjoiR8OgaWRobGlnIn1dLCJuYiI6W3siY29kZSI6Im5iIiwibmFtZSI6Im5vcnNrIn1dLCJkZSI6W3siY29kZSI6ImRlIiwibmFtZSI6IkRldXRzY2gifV0sImhlIjpbeyJjb2RlIjoiaGUiLCJuYW1lIjoi16LXkdeo15nXqiJ9XSwic2siOlt7ImNvZGUiOiJzayIsIm5hbWUiOiJzbG92ZW7EjWluYSJ9XSwienUiOlt7ImNvZGUiOiJ6dSIsIm5hbWUiOiJpc2ladWx1In1dLCJydSI6W3siY29kZSI6InJ1IiwibmFtZSI6ItGA0YPRgdGB0LrQuNC5In1dLCJwbCI6W3siY29kZSI6InBsIiwibmFtZSI6InBvbHNraSJ9XSwiYW0iOlt7ImNvZGUiOiJhbSIsIm5hbWUiOiLhiqDhiJvhiK3hipsifV0sImF6IjpbeyJjb2RlIjoiYXoiLCJuYW1lIjoiQXrJmXJiYXljYW4gZGlsaSJ9XSwiaHIiOlt7ImNvZGUiOiJociIsIm5hbWUiOiJocnZhdHNraSJ9XSwiZmEiOlt7ImNvZGUiOiJmYSIsIm5hbWUiOiLZgdin2LHYs9uMIn1dLCJtaSI6W3siY29kZSI6Im1pIiwibmFtZSI6Ik3EgW9yaSJ9XSwiZWwiOlt7ImNvZGUiOiJlbCIsIm5hbWUiOiLOlc67zrvOt869zrnOus6sIn1dLCJpcyI6W3siY29kZSI6ImlzIiwibmFtZSI6IsOtc2xlbnNrYSJ9XSwiZmkiOlt7ImNvZGUiOiJmaSIsIm5hbWUiOiJzdW9taSJ9XSwiZXUiOlt7ImNvZGUiOiJldSIsIm5hbWUiOiJldXNrYXJhIn1dLCJjYSI6W3siY29kZSI6ImNhIiwibmFtZSI6ImNhdGFsw6AifV0sImx2IjpbeyJjb2RlIjoibHYiLCJuYW1lIjoibGF0dmllxaF1In1dLCJpZCI6W3siY29kZSI6ImlkIiwibmFtZSI6IkluZG9uZXNpYSJ9XSwiZXMiOlt7ImNvZGUiOiJlcyIsIm5hbWUiOiJlc3Bhw7FvbCJ9XSwiZXMtNDE5IjpbeyJjb2RlIjoiZXMiLCJuYW1lIjoiZXNwYcOxb2wifV0sImV0IjpbeyJjb2RlIjoiZXQiLCJuYW1lIjoiZWVzdGkifV0sImN5IjpbeyJjb2RlIjoiY3kiLCJuYW1lIjoiQ3ltcmFlZyJ9XSwiemgtY24iOlt7ImNvZGUiOiJ6aC1jbiIsIm5hbWUiOiLkuK3mloco566A5L2TKSJ9XSwiYmciOlt7ImNvZGUiOiJiZyIsIm5hbWUiOiLQsdGK0LvQs9Cw0YDRgdC60LgifV0sImFyIjpbeyJjb2RlIjoiYXIiLCJuYW1lIjoi2KfZhNi52LHYqNmK2KkifV0sImVuIjpbeyJjb2RlIjoiZW4iLCJuYW1lIjoiRW5nbGlzaCJ9XSwic3IiOlt7ImNvZGUiOiJzciIsIm5hbWUiOiLRgdGA0L/RgdC60LgifV0sInN2IjpbeyJjb2RlIjoic3YiLCJuYW1lIjoic3ZlbnNrYSJ9XSwicm8iOlt7ImNvZGUiOiJybyIsIm5hbWUiOiJSb23Dom7EgyJ9XSwibHQiOlt7ImNvZGUiOiJsdCIsIm5hbWUiOiJsaWV0dXZpxbMifV0sImtvIjpbeyJjb2RlIjoia28iLCJuYW1lIjoi7ZWc6rWt7Ja0In1dLCJpdCI6W3siY29kZSI6Iml0IiwibmFtZSI6Ikl0YWxpYW5vIn1dLCJ2aSI6W3siY29kZSI6InZpIiwibmFtZSI6IlRp4bq/bmcgVmnhu4d0In1dfSwibmFtZU1hcCI6eyJhbGLDoW7FoXRpbmEiOiJzcSIsImFtaGFyxaF0aW5hIjoiYW0iLCJhbmdsacSNdGluYSI6ImVuIiwiYXJhYsWhdGluYSI6ImFyIiwiYXJtw6luxaF0aW5hIjoiaHkiLCLDoXplcmLDoWpkxb7DoW7FoXRpbmEiOiJheiIsImJhcm3FoXRpbmEiOiJteSIsImJhc2tpxI10aW5hIjoiZXUiLCJixJtsb3J1xaF0aW5hIjoiYmUiLCJidWxoYXLFoXRpbmEiOiJiZyIsIsSNZcWhdGluYSI6ImNzIiwixI3DrW7FoXRpbmEgKHRyYWRpxI1uw60pIjoiemgtdHciLCLEjcOtbsWhdGluYSAoemplZG5vZHXFoWVuw6EpIjoiemgtY24iLCJkw6FuxaF0aW5hIjoiZGEiLCJlc3BlcmFudG8iOiJlbyIsImVzdG9uxaF0aW5hIjoiZXQiLCJmaW7FoXRpbmEiOiJmaSIsImZyYW5jb3V6xaF0aW5hIjoiZnIiLCJnYWxpY2lqxaF0aW5hIjoiZ2wiLCJoYWl0c2vDoSBrcmVvbMWhdGluYSI6Imh0IiwiaGVicmVqxaF0aW5hIjoiaGUiLCJoaW5kxaF0aW5hIjoiaGkiLCJob2xhbmTFoXRpbmEiOiJubCIsImNob3J2YXTFoXRpbmEiOiJociIsImluZG9uw6nFoXRpbmEiOiJpZCIsImlyxaF0aW5hIjoiZ2EiLCJpc2xhbmTFoXRpbmEiOiJpcyIsIml0YWzFoXRpbmEiOiJpdCIsImphcG9uxaF0aW5hIjoiamEiLCJrYW5uYWTFoXRpbmEiOiJrbiIsImthdGFsw6FuxaF0aW5hIjoiY2EiLCJrb3JlasWhdGluYSI6ImtvIiwia3VyZMWhdGluYSI6Imt1IiwibGF0aW5hIjoibGEiLCJsaXRldsWhdGluYSI6Imx0IiwibG90ecWhdGluYSI6Imx2IiwibWHEj2FyxaF0aW5hIjoiaHUiLCJtYWtlZG9uxaF0aW5hIjoibWsiLCJtYWxhasOhbGFtxaF0aW5hIjoibWwiLCJtYWxhasWhdGluYSI6Im1zIiwibWFsdMWhdGluYSI6Im10IiwibWFvcsWhdGluYSI6Im1pIiwibWFyw6F0xaF0aW5hIjoibXIiLCJtb25nb2zFoXRpbmEiOiJtbiIsIm7Em23EjWluYSI6ImRlIiwibm9yxaF0aW5hIjoibmIiLCJwZXLFoXRpbmEiOiJmYSIsInBvbMWhdGluYSI6InBsIiwicG9ydHVnYWzFoXRpbmEiOiJwdCIsInJ1bXVuxaF0aW5hIjoicm8iLCJydcWhdGluYSI6InJ1IiwixZllxI10aW5hIjoiZWwiLCJza290c2vDoSBnYWVsxaF0aW5hIjoiZ2QiLCJzbG92ZW7FoXRpbmEiOiJzayIsInNsb3ZpbsWhdGluYSI6InNsIiwic3JixaF0aW5hIjoic3IiLCLFoXBhbsSbbMWhdGluYSI6ImVzIiwixaF2w6lkxaF0aW5hIjoic3YiLCJ0ZWx1xb7FoXRpbmEiOiJ0ZSIsInRoYWrFoXRpbmEiOiJ0aCIsInR1cmXEjXRpbmEiOiJ0ciIsInVrcmFqaW7FoXRpbmEiOiJ1ayIsInV6YmXEjXRpbmEiOiJ1eiIsInZlbMWhdGluYSI6ImN5IiwidmlldG5hbcWhdGluYSI6InZpIiwienVsdSI6Inp1IiwiYWxiYW5zayI6InNxIiwiYW1oYXJpc2siOiJhbSIsImFyYWJpc2siOiJhciIsImFybWVuc2siOiJoeSIsImFzZXJiYWpkc2phbnNrIjoiYXoiLCJiYXNraXNrIjoiZXUiLCJidWxnYXJzayI6ImJnIiwiYnVybWVzaXNrIjoibXkiLCJkYW5zayI6ImRhIiwiZW5nZWxzayI6ImVuIiwiZXN0aXNrIjoiZXQiLCJmaW5zayI6ImZpIiwiZnJhbnNrIjoiZnIiLCJnYWxpY2lzayI6ImdsIiwiZ3LDpnNrIjoiZWwiLCJoYWl0aXNrIGtyZW9sc2siOiJodCIsImhlYnJhaXNrIjoiaGUiLCJoaW5kaSI6ImhpIiwiaG9sbGFuZHNrIjoibmwiLCJodmlkZXJ1c3Npc2siOiJiZSIsImluZG9uZXNpc2siOiJpZCIsImlyc2siOiJnYSIsImlzbGFuZHNrIjoiaXMiLCJpdGFsaWVuc2siOiJpdCIsImphcGFuc2siOiJqYSIsImthbm5hZGEiOiJrbiIsImthdGFsYW5zayI6ImNhIiwia2luZXNpc2sgKGZvcmVua2xldCkiOiJ6aC1jbiIsImtpbmVzaXNrICh0cmFkaXRpb25lbHQpIjoiemgtdHciLCJrb3JlYW5zayI6ImtvIiwia3JvYXRpc2siOiJociIsImt1cmRpc2siOiJrdSIsImxhdGluIjoibGEiLCJsZXR0aXNrIjoibHYiLCJsaXRhdWlzayI6Imx0IiwibWFrZWRvbnNrIjoibWsiLCJtYWxhamlzayI6Im1zIiwibWFsYXlhbGFtIjoibWwiLCJtYWx0ZXNpc2siOiJtdCIsIm1hb3JpIjoibWkiLCJtYXJhdGhpIjoibXIiLCJtb25nb2xzayI6Im1uIiwibm9yc2siOiJuYiIsInBlcnNpc2siOiJmYSIsInBvbHNrIjoicGwiLCJwb3J0dWdpc2lzayI6InB0IiwicnVtw6Zuc2siOiJybyIsInJ1c3Npc2siOiJydSIsInNlcmJpc2siOiJzciIsInNrb3RzayBnw6ZsaXNrIjoiZ2QiLCJzbG92YWtpc2siOiJzayIsInNsb3ZlbnNrIjoic2wiLCJzcGFuc2siOiJlcyIsInN2ZW5zayI6InN2IiwidGVsdWd1IjoidGUiLCJ0aGFpbGFuZHNrIjoidGgiLCJ0amVra2lzayI6ImNzIiwidHlya2lzayI6InRyIiwidHlzayI6ImRlIiwidWtyYWluc2siOiJ1ayIsInVuZ2Fyc2siOiJodSIsInVzYmVraXNrIjoidXoiLCJ2aWV0bmFtZXNpc2siOiJ2aSIsIndhbGlzaXNrIjoiY3kiLCJhY2VyYmFpeGFubyI6ImF6IiwiYWxiYW7DqXMiOiJzcSIsImFsZW3DoW4iOiJkZSIsImFtw6FyaWNvIjoiYW0iLCLDoXJhYmUiOiJhciIsImFybWVuaW8iOiJoeSIsImJpZWxvcnJ1c28iOiJiZSIsImJpcm1hbm8iOiJteSIsImLDumxnYXJvIjoiYmciLCJjYW5hcsOpcyI6ImtuIiwiY2F0YWzDoW4iOiJjYSIsImNoZWNvIjoiY3MiLCJjaGluw6lzIChzaW1wbGlmaWNhZG8pIjoiemgtY24iLCJjaGluw6lzICh0cmFkaWNpb25hbCkiOiJ6aC10dyIsImNvcmVhbm8iOiJrbyIsImNyaW91bG8gaGFpdGlhbm8iOiJodCIsImNyb2F0YSI6ImhyIiwiY3VyZG8iOiJrdSIsImRpbmFtYXJxdcOpcyI6ImRhIiwiZXNsb3ZhY28iOiJzayIsImVzbG92ZW5vIjoic2wiLCJlc3Bhw7FvbCI6ImVzIiwiZXN0b25pYW5vIjoiZXQiLCLDqXVzY2FybyI6ImV1IiwiZmluw6lzIjoiZmkiLCJmcmFuY8OpcyI6ImZyIiwiZ2HDqWxpY28gZXNjb2PDqXMiOiJnZCIsImdhbGVnbyI6ImdsIiwiZ2Fsw6lzIjoiY3kiLCJncmVnbyI6ImVsIiwiaGVicmVvIjoiaGUiLCJow7puZ2FybyI6Imh1IiwiaW5kb25lc2lvIjoiaWQiLCJpbmdsw6lzIjoiZW4iLCJpcmxhbmTDqXMiOiJnYSIsImlzbGFuZMOpcyI6ImlzIiwiaXRhbGlhbm8iOiJpdCIsImxhdMOtbiI6ImxhIiwibGV0w7NuIjoibHYiLCJsaXR1YW5vIjoibHQiLCJtYWNlZG9uaW8iOiJtayIsIm1hbGFiYXIiOiJtbCIsIm1hbGFpbyI6Im1zIiwibWFsdMOpcyI6Im10IiwibWFvcsOtIjoibWkiLCJtb25nb2wiOiJtbiIsIm5lZXJsYW5kw6lzIjoibmwiLCJub3J1ZWd1w6lzIjoibmIiLCJwZXJzYSI6ImZhIiwicG9sYWNvIjoicGwiLCJwb3J0dWd1w6lzIjoicHQiLCJyb21hbsOpcyI6InJvIiwicnVzbyI6InJ1Iiwic2VyYmlvIjoic3IiLCJzdWVjbyI6InN2IiwidGFpbGFuZMOpcyI6InRoIiwidGVsdWfDuiI6InRlIiwidHVyY28iOiJ0ciIsInVjcmHDrW5vIjoidWsiLCJ1c2JlY28iOiJ1eiIsInZpZXRuYW1pdGEiOiJ2aSIsInhhcG9uw6lzIjoiamEiLCJ6dWzDuiI6Inp1IiwiYWxiYW7FocSNaW5hIjoic3EiLCJhbWhhcsWhxI1pbmEiOiJhbSIsImFuZ2xlxaHEjWluYSI6ImVuIiwiYXJhYsWhxI1pbmEiOiJhciIsImFybWVuxaHEjWluYSI6Imh5IiwiYXplcmJhamTFvmFuxaHEjWluYSI6ImF6IiwiYmFza292xaHEjWluYSI6ImV1IiwiYmVsb3J1xaHEjWluYSI6ImJlIiwiYm9sZ2FyxaHEjWluYSI6ImJnIiwiYnVybWFuxaHEjWluYSI6Im15IiwixI1lxaHEjWluYSI6ImNzIiwiZGFuxaHEjWluYSI6ImRhIiwiZXN0b27FocSNaW5hIjoiZXQiLCJmaW7FocSNaW5hIjoiZmkiLCJmcmFuY2/FocSNaW5hIjoiZnIiLCJnYWxpY2lqxaHEjWluYSI6ImdsIiwiZ3LFocSNaW5hIjoiZWwiLCJoYWl0aWpza2Ega3Jlb2zFocSNaW5hIjoiaHQiLCJoZWJyZWrFocSNaW5hIjoiaGUiLCJoaW5kaWrFocSNaW5hIjoiaGkiLCJocnZhxaHEjWluYSI6ImhyIiwiaW5kb25lemlqxaHEjWluYSI6ImlkIiwiaXLFocSNaW5hIjoiZ2EiLCJpc2xhbmTFocSNaW5hIjoiaXMiLCJpdGFsaWphbsWhxI1pbmEiOiJpdCIsImphcG9uxaHEjWluYSI6ImphIiwia2FuYXJlxaHEjWluYSI6ImtuIiwia2F0YWxvbsWhxI1pbmEiOiJjYSIsImtpdGFqxaHEjWluYSAocG9lbm9zdGF2bGplbmEpIjoiemgtY24iLCJraXRhasWhxI1pbmEgKHRyYWRpY2lvbmFsbmEpIjoiemgtdHciLCJrb3JlasWhxI1pbmEiOiJrbyIsImt1cmTFocSNaW5hIjoia3UiLCJsYXRpbsWhxI1pbmEiOiJsYSIsImxhdHZpasWhxI1pbmEiOiJsdiIsImxpdG92xaHEjWluYSI6Imx0IiwibWFkxb5hcsWhxI1pbmEiOiJodSIsIm1ha2Vkb27FocSNaW5hIjoibWsiLCJtYWxhamFsxaHEjWluYSI6Im1sIiwibWFsYWrFocSNaW5hIjoibXMiLCJtYWx0ZcWhxI1pbmEiOiJtdCIsIm1hb3LFocSNaW5hIjoibWkiLCJtYXJhdMWhxI1pbmEiOiJtciIsIm1vbmdvbMWhxI1pbmEiOiJtbiIsIm5lbcWhxI1pbmEiOiJkZSIsIm5pem96ZW3FocSNaW5hIjoibmwiLCJub3J2ZcWhxI1pbmEiOiJuYiIsInBlcnppasWhxI1pbmEiOiJmYSIsInBvbGrFocSNaW5hIjoicGwiLCJwb3J0dWdhbMWhxI1pbmEiOiJwdCIsInJvbXVuxaHEjWluYSI6InJvIiwicnXFocSNaW5hIjoicnUiLCJzbG92YcWhxI1pbmEiOiJzayIsInNsb3ZlbsWhxI1pbmEiOiJzbCIsInNyYsWhxI1pbmEiOiJzciIsIsWha290c2thIGdlbMWhxI1pbmEiOiJnZCIsIsWhcGFuxaHEjWluYSI6ImVzIiwixaF2ZWTFocSNaW5hIjoic3YiLCJ0YWrFocSNaW5hIjoidGgiLCJ0ZWx1xaHEjWluYSI6InRlIiwidHVyxaHEjWluYSI6InRyIiwidWtyYWppbsWhxI1pbmEiOiJ1ayIsInV6YmXFocSNaW5hIjoidXoiLCJ2YWxpxb5hbsWhxI1pbmEiOiJjeSIsInZpZXRuYW3FocSNaW5hIjoidmkiLCJ6dWx1asWhxI1pbmEiOiJ6dSIsImFsYmFuYWlzIjoic3EiLCJhbGxlbWFuZCI6ImRlIiwiYW1oYXJpcXVlIjoiYW0iLCJhbmdsYWlzIjoiZW4iLCJhcmFiZSI6ImFyIiwiYXJtw6luaWVuIjoiaHkiLCJhesOpcmkiOiJheiIsImJhc3F1ZSI6ImV1IiwiYmnDqWxvcnVzc2UiOiJiZSIsImJpcm1hbiI6Im15IiwiYnVsZ2FyZSI6ImJnIiwiY2F0YWxhbiI6ImNhIiwiY2hpbm9pcyAoc2ltcGxpZmnDqSkiOiJ6aC1jbiIsImNoaW5vaXMgKHRyYWRpdGlvbm5lbCkiOiJ6aC10dyIsImNvcsOpZW4iOiJrbyIsImNyw6lvbGUgaGHDr3RpZW4iOiJodCIsImNyb2F0ZSI6ImhyIiwiZGFub2lzIjoiZGEiLCJlc3BhZ25vbCI6ImVzIiwiZXNww6lyYW50byI6ImVvIiwiZXN0b25pZW4iOiJldCIsImZpbm5vaXMiOiJmaSIsImZyYW7Dp2FpcyI6ImZyIiwiZ2HDqWxpcXVlICjDqWNvc3NlKSI6ImdkIiwiZ2FsaWNpZW4iOiJnbCIsImdhbGxvaXMiOiJjeSIsImdyZWMiOiJlbCIsImjDqWJyZXUiOiJoZSIsImhvbmdyb2lzIjoiaHUiLCJpbmRvbsOpc2llbiI6ImlkIiwiaXJsYW5kYWlzIjoiZ2EiLCJpc2xhbmRhaXMiOiJpcyIsIml0YWxpZW4iOiJpdCIsImphcG9uYWlzIjoiamEiLCJrdXJkZSI6Imt1IiwibGV0dG9uIjoibHYiLCJsaXR1YW5pZW4iOiJsdCIsIm1hY8OpZG9uaWVuIjoibWsiLCJtYWxhaXNpZW4iOiJtcyIsIm1hbHRhaXMiOiJtdCIsIm7DqWVybGFuZGFpcyI6Im5sIiwibm9ydsOpZ2llbiI6Im5iIiwib3V6YmVrIjoidXoiLCJwZXJzYW4iOiJmYSIsInBvbG9uYWlzIjoicGwiLCJwb3J0dWdhaXMiOiJwdCIsInJvdW1haW4iOiJybyIsInJ1c3NlIjoicnUiLCJzZXJiZSI6InNyIiwic2xvdmFxdWUiOiJzayIsInNsb3bDqG5lIjoic2wiLCJzdcOpZG9pcyI6InN2IiwidGNow6hxdWUiOiJjcyIsInRoYcOvIjoidGgiLCJ0dXJjIjoidHIiLCJ1a3JhaW5pZW4iOiJ1ayIsInZpZXRuYW1pZW4iOiJ2aSIsInpvdWxvdSI6Inp1IiwiYWxiw6FuIjoic3EiLCJhbWhhcmEiOiJhbSIsImFuZ29sIjoiZW4iLCJhcmFiIjoiYXIiLCJhemVyaSI6ImF6IiwiYmFzemsiOiJldSIsImJlbG9ydXN6IjoiYmUiLCJib2xnw6FyIjoiYmciLCJidXJtYWkiOiJteSIsImNzZWgiOiJjcyIsImTDoW4iOiJkYSIsImVzenBlcmFudMOzIjoiZW8iLCLDqXN6dCI6ImV0IiwiZmlubiI6ImZpIiwiZnJhbmNpYSI6ImZyIiwiZ2Fsw61jaWFpIjoiZ2wiLCJnw7Zyw7ZnIjoiZWwiLCJoYWl0aSBrcmVvbCI6Imh0IiwiaMOpYmVyIjoiaGUiLCJob2xsYW5kIjoibmwiLCJob3J2w6F0IjoiaHIiLCJpbmRvbsOpeiI6ImlkIiwiw61yIjoiZ2EiLCJpemxhbmRpIjoiaXMiLCJqYXDDoW4iOiJqYSIsImthdGFsw6FuIjoiY2EiLCJrw61uYWkgKGVneXN6ZXLFsXPDrXRldHQpIjoiemgtY24iLCJrw61uYWkgKGhhZ3lvbcOhbnlvcykiOiJ6aC10dyIsImtvcmVhaSI6ImtvIiwia3VyZCI6Imt1IiwibGVuZ3llbCI6InBsIiwibGV0dCI6Imx2IiwibGl0dsOhbiI6Imx0IiwibWFjZWTDs24iOiJtayIsIm1hZ3lhciI6Imh1IiwibWFsw6FqIjoibXMiLCJtYWxhasOhbGFtIjoibWwiLCJtw6FsdGFpIjoibXQiLCJtYXLDoXRoaSI6Im1yIiwibsOpbWV0IjoiZGUiLCJub3J2w6lnIjoibmIiLCJvbGFzeiI6Iml0Iiwib3Jvc3oiOiJydSIsIsO2cm3DqW55IjoiaHkiLCJwZXJ6c2EiOiJmYSIsInBvcnR1Z8OhbCI6InB0Iiwicm9tw6FuIjoicm8iLCJza8OzdC1nYWVsIjoiZ2QiLCJzcGFueW9sIjoiZXMiLCJzdsOpZCI6InN2Iiwic3plcmIiOiJzciIsInN6bG92w6FrIjoic2siLCJzemxvdsOpbiI6InNsIiwidGhhaSI6InRoIiwidMO2csO2ayI6InRyIiwidWtyw6FuIjoidWsiLCLDvHpiw6lnIjoidXoiLCJ2aWV0bmFtaSI6InZpIiwid2FsZXNpIjoiY3kiLCLQsNC30LXRgNCx0LDQudC00LbQsNC90YHRjNC60LAiOiJheiIsItCw0LvQsdCw0L3RgdGM0LrQsCI6InNxIiwi0LDQvNGF0LDRgNGB0YzQutCwIjoiYW0iLCLQsNC90LPQu9GW0LnRgdGM0LrQsCI6ImVuIiwi0LDRgNCw0LHRgdGM0LrQsCI6ImFyIiwi0LHQsNGB0LrRgdGM0LrQsCI6ImV1Iiwi0LHRltC70L7RgNGD0YHRjNC60LAiOiJiZSIsItCx0ZbRgNC80LDQvdGB0YzQutCwIjoibXkiLCLQsdC+0LvQs9Cw0YDRgdGM0LrQsCI6ImJnIiwi0LLigJnRlNGC0L3QsNC80YHRjNC60LAiOiJ2aSIsItCy0LDQu9C70ZbQudGB0YzQutCwIjoiY3kiLCLQstGW0YDQvNC10L3RgdGM0LrQsCI6Imh5Iiwi0LPQsNGX0YLRj9C90YHRjNC60LAg0LrRgNC10L7Qu9GM0YHRjNC60LAiOiJodCIsItCz0ZbQvdC00ZYiOiJoaSIsItCz0YDQtdGG0YzQutCwIjoiZWwiLCLSkdCw0LvRltGB0ZbQudGB0YzQutCwIjoiZ2wiLCLQtNCw0L3RgdGM0LrQsCI6ImRhIiwi0LXRgdC/0LXRgNCw0L3RgtC+IjoiZW8iLCLQtdGB0YLQvtC90YHRjNC60LAiOiJldCIsItC30YPQu9GDIjoienUiLCLRltCy0YDQuNGCIjoiaGUiLCLRltC90LTQvtC90LXQt9GW0LnRgdGM0LrQsCI6ImlkIiwi0ZbRgNC70LDQvdC00YHRjNC60LAiOiJnYSIsItGW0YHQu9Cw0L3QtNGB0YzQutCwIjoiaXMiLCLRltGB0L/QsNC90YHRjNC60LAiOiJlcyIsItGW0YLQsNC70ZbQudGB0YzQutCwIjoiaXQiLCLQutCw0L3QvdCw0LTQsCI6ImtuIiwi0LrQsNGC0LDQu9Cw0L3RgdGM0LrQsCI6ImNhIiwi0LrQuNGC0LDQudGB0YzQutCwICjRgdC/0YDQvtGJ0LXQvdCwKSI6InpoLWNuIiwi0LrQuNGC0LDQudGB0YzQutCwICjRgtGA0LDQtNC40YbRltC50L3QsCkiOiJ6aC10dyIsItC60L7RgNC10LnRgdGM0LrQsCI6ImtvIiwi0LrRg9GA0LTRgdGM0LrQsCI6Imt1Iiwi0LvQsNGC0LjQvdGB0YzQutCwIjoibGEiLCLQu9Cw0YLQuNGB0YzQutCwIjoibHYiLCLQu9C40YLQvtCy0YHRjNC60LAiOiJsdCIsItC80LDQutC10LTQvtC90YHRjNC60LAiOiJtayIsItC80LDQu9Cw0LnRgdGM0LrQsCI6Im1zIiwi0LzQsNC70LDRj9C70LDQvCI6Im1sIiwi0LzQsNC70YzRgtGW0LnRgdGM0LrQsCI6Im10Iiwi0LzQsNC+0YDRliI6Im1pIiwi0LzQsNGA0LDRgtGF0ZYiOiJtciIsItC80L7QvdCz0L7Qu9GM0YHRjNC60LAiOiJtbiIsItC90ZbQtNC10YDQu9Cw0L3QtNGB0YzQutCwIjoibmwiLCLQvdGW0LzQtdGG0YzQutCwIjoiZGUiLCLQvdC+0YDQstC10LfRjNC60LAiOiJuYiIsItC/0LXRgNGB0YzQutCwIjoiZmEiLCLQv9C+0LvRjNGB0YzQutCwIjoicGwiLCLQv9C+0YDRgtGD0LPQsNC70YzRgdGM0LrQsCI6InB0Iiwi0YDQvtGB0ZbQudGB0YzQutCwIjoicnUiLCLRgNGD0LzRg9C90YHRjNC60LAiOiJybyIsItGB0LXRgNCx0YHRjNC60LAiOiJzciIsItGB0LvQvtCy0LDRhtGM0LrQsCI6InNrIiwi0YHQu9C+0LLQtdC90YHRjNC60LAiOiJzbCIsItGC0LDQudGB0YzQutCwIjoidGgiLCLRgtC10LvRg9KR0YMiOiJ0ZSIsItGC0YPRgNC10YbRjNC60LAiOiJ0ciIsItGD0LPQvtGA0YHRjNC60LAiOiJodSIsItGD0LfQsdC10YbRjNC60LAiOiJ1eiIsItGD0LrRgNCw0ZfQvdGB0YzQutCwIjoidWsiLCLRhNGW0L3RgdGM0LrQsCI6ImZpIiwi0YTRgNCw0L3RhtGD0LfRjNC60LAiOiJmciIsItGF0L7RgNCy0LDRgtGB0YzQutCwIjoiaHIiLCLRh9C10YHRjNC60LAiOiJjcyIsItGI0LLQtdC00YHRjNC60LAiOiJzdiIsItGI0L7RgtC70LDQvdC00YHRjNC60LAgKNKR0LXQu9GM0YHRjNC60LApIjoiZ2QiLCLRj9C/0L7QvdGB0YzQutCwIjoiamEiLCLlnJ/ogLPlhbbmlociOiJ0ciIsIuS4reaWhyjnuYHpq5QpIjoiemgtdHciLCLkuK3mloco57Ch6auUKSI6InpoLWNuIiwi5Li56bql5paHIjoiZGEiLCLlt7Tmlq/lhYvmlociOiJldSIsIuaXpeaWhyI6ImphIiwi5q+b5Yip5paHIjoibWkiLCLkuJbnlYzoqp4iOiJlbyIsIuWKoOmHjOilv+S6nuaWhyI6ImdsIiwi5Yqg5rOw576F5bC85Lqe5paHIjoiY2EiLCLljaHntI3pgZTmlociOiJrbiIsIueZveS/hOe+heaWr+aWhyI6ImJlIiwi56uL6Zm25a6b5paHIjoibHQiLCLlhrDls7bmlociOiJpcyIsIuWMiOeJmeWIqeaWhyI6Imh1Iiwi5Y2w5bC85paHIjoiaWQiLCLljbDluqbmlociOiJoaSIsIuilv+ePreeJmeaWhyI6ImVzIiwi5YWL576F5Z+D6KW/5Lqe5paHIjoiaHIiLCLluIzkvK/kvobmlociOiJoZSIsIuW4jOiHmOaWhyI6ImVsIiwi5Lqe576O5bC85Lqe5paHIjoiaHkiLCLkup7loZ7mi5znhLbmlociOiJheiIsIuaLieS4geaWhyI6ImxhIiwi5ouJ6ISr57at5Lqe5paHIjoibHYiLCLms5XmlociOiJmciIsIuazouaWr+aWhyI6ImZhIiwi5rOi6Jit5paHIjoicGwiLCLoiqzomK3mlociOiJmaSIsIumYv+WnhuWTiOaLieaWhyI6ImFtIiwi6Zi/5ouJ5Lyv5paHIjoiYXIiLCLpmL/niL7lt7TlsLzkup7mlociOiJzcSIsIuS/hOaWhyI6InJ1Iiwi5L+d5Yqg5Yip5Lqe5paHIjoiYmciLCLljZfpnZ7npZbpra/mlociOiJ6dSIsIuWogeeIvuaWr+aWhyI6ImN5Iiwi6Iux5paHIjoiZW4iLCLluqvlvrfmlociOiJrdSIsIuaMquWogeaWhyI6Im5iIiwi5rOw5paHIjoidGgiLCLms7Dnm6flm7rmlociOiJ0ZSIsIua1t+WcsOWFi+mHjOWlp+aWhyI6Imh0Iiwi54OP5YWL6Jit5paHIjoidWsiLCLng4/ojLLliKXlhYvmlociOiJ1eiIsIummrOiAs+S7luaWhyI6Im10Iiwi6aas5L6G5paHIjoibXMiLCLppqzlhbbpoJPmlociOiJtayIsIummrOaLieWcsOaWhyI6Im1yIiwi6aas5ouJ6ZuF5ouJ5aeG5paHIjoibWwiLCLmjbflhYvmlociOiJjcyIsIuiNt+iYreaWhyI6Im5sIiwi5pav5rSb5LyQ5YWL5paHIjoic2siLCLmlq/mtJvntq3lsLzkup7mlociOiJzbCIsIui2iuWNl+aWhyI6InZpIiwi5aGe54i+57at5Lqe5paHIjoic3IiLCLmhJvmspnlsLzkup7mlociOiJldCIsIuaEm+eIvuiYreaWhyI6ImdhIiwi55Ge5YW45paHIjoic3YiLCLnvqnlpKfliKnmlociOiJpdCIsIuiRoeiQhOeJmeaWhyI6InB0Iiwi6JKZ5Y+k5paHIjoibW4iLCLlvrfmlociOiJkZSIsIue3rOeUuOaWhyI6Im15Iiwi6Z+T5paHIjoia28iLCLnvoXppqzlsLzkup7mlociOiJybyIsIuiYh+agvOiYreeahOiTi+eIvuaWhyI6ImdkIiwi4KSF4KSd4KSw4KSs4KWI4KSc4KS+4KSo4KWAIjoiYXoiLCLgpIXgpK7gpY3gpLngpL7gpLDgpL/gpJUiOiJhbSIsIuCkheCksOCkrOClgCI6ImFyIiwi4KSF4KSw4KWN4KSu4KWH4KSo4KS/4KSv4KSoIjoiaHkiLCLgpIXgpLLgpY3gpKzgpL7gpKjgpL/gpK/gpKgiOiJzcSIsIuCkhuCkh+CkuOCksuCkgeCkoeCkv+CklSI6ImlzIiwi4KSG4KSv4KSw4KS/4KS2IjoiZ2EiLCLgpIfgpILgpJfgpY3gpLDgpJzgpYAiOiJlbiIsIuCkh+CkguCkoeCli+CkqOClh+CktuCkv+Ckr+CkqCI6ImlkIiwi4KSH4KSf4KS+4KSy4KS/4KSv4KSoIjoiaXQiLCLgpIngpJ3gpY3gpKzgpYfgpJUiOiJ1eiIsIuCkj+CkuOCljeCkn+Cli+CkqOCkv+Ckr+CkqCI6ImV0Iiwi4KSP4KS44KWN4KSq4KSw4KSB4KSf4KWLIjoiZW8iLCLgpJXgpKjgpY3gpKjgpKEiOiJrbiIsIuCkleClgeCksOCljeCkpuCkv+CktiAo4KSV4KWB4KSw4KWN4KSu4KS+4KSC4KSc4KWAKSI6Imt1Iiwi4KSV4KWF4KSf4KSy4KS+4KSoIjoiY2EiLCLgpJXgpYvgpLDgpL/gpK/gpKgiOiJrbyIsIuCkleCljeCksOCli+Ckj+CktuCkv+Ckr+CkqCI6ImhyIiwi4KSX4KWF4KSy4KS/4KS24KS/4KSv4KSoIjoiZ2wiLCLgpJfgpY3gpLDgpYDgpJUiOiJlbCIsIuCkmuClgOCkqOClgCAo4KSq4KS+4KSw4KSC4KSq4KS+4KSw4KS/4KSVKSI6InpoLXR3Iiwi4KSa4KWA4KSo4KWAICjgpLjgpLDgpLLgpYDgpJXgpYPgpKQpIjoiemgtY24iLCLgpJzgpKrgpL7gpKjgpYAiOiJqYSIsIuCknOCksOCljeCkruCkqCI6ImRlIiwi4KSd4KWB4KSy4KWBIjoienUiLCLgpJ3gpYfgpJUiOiJjcyIsIuCkoeCkmiI6Im5sIiwi4KSh4KWF4KSo4KS/4KS2IjoiZGEiLCLgpKTgpYHgpLDgpY3gpJXgpYAiOiJ0ciIsIuCkpOClh+CksuCkl+ClgiI6InRlIiwi4KSl4KS+4KSIIjoidGgiLCLgpKjgpYngpLDgpY3gpLXgpYfgpJzgpL/gpK/gpKgiOiJuYiIsIuCkquCli+CksOCljeCkpOClgeCkl+ClgOCknCI6InB0Iiwi4KSq4KWL4KSy4KS/4KS2IjoicGwiLCLgpKvgpL7gpLDgpLjgpYAiOiJmYSIsIuCkq+Ckv+CkqOCljeCkqOCkv+CktiI6ImZpIiwi4KSr4KWN4KSw4KWH4KSC4KSaIjoiZnIiLCLgpKzgpLLgpY3gpJfgpYfgpLDgpL/gpK/gpKgiOiJiZyIsIuCkrOCkvuCkuOCljeCklSI6ImV1Iiwi4KSs4KWH4KSy4KS+4KSw4KWB4KS24KS/4KSv4KSoIjoiYmUiLCLgpK7gpILgpJfgpYvgpLLgpL/gpK/gpKgiOiJtbiIsIuCkruCksOCkvuCkoOClgCI6Im1yIiwi4KSu4KSy4KSvIjoibXMiLCLgpK7gpLLgpY3gpK/gpL7gpLPgpK4iOiJtbCIsIuCkruCkvuCkk+CksOClgCI6Im1pIiwi4KSu4KS+4KSy4KWN4KSf4KWA4KScIjoibXQiLCLgpK7gpYXgpLjgpYfgpKHgpYvgpKjgpL/gpK/gpKgiOiJtayIsIuCkruCljeCkr+CkvuCkqOCkruCkvuCksCAo4KSs4KSw4KWN4KSu4KWA4KScKSI6Im15Iiwi4KSv4KWB4KSV4KWN4KSw4KWH4KSo4KS/4KSv4KSoIjoidWsiLCLgpLDgpLbgpL/gpK/gpKgiOiJydSIsIuCksOCli+CkruCkvuCkqOCkv+Ckr+CkqCI6InJvIiwi4KSy4KS+4KSf4KWN4KS14KS/4KSv4KSoIjoibHYiLCLgpLLgpL/gpKXgpYHgpIbgpKjgpL/gpK/gpKgiOiJsdCIsIuCksuClheCkn+Ckv+CkqCI6ImxhIiwi4KS14KWH4KSy4KWN4KS2IjoiY3kiLCLgpLXgpY3gpLngpL/gpI/gpKTgpKjgpL7gpK7gpYAiOiJ2aSIsIuCkuOCksOCljeCkrOCkv+Ckr+CkqCI6InNyIiwi4KS44KWN4KSV4KWJ4KSf4KWN4KS4IOCkl+Clh+CksuCkv+CklSI6ImdkIiwi4KS44KWN4KSq4KWF4KSo4KS/4KS2IjoiZXMiLCLgpLjgpY3gpLLgpYvgpLXgpY3gpLngpL7gpJUiOiJzayIsIuCkuOCljeCksuCli+CkteCljeCkueClh+CkqOCkv+Ckr+CkqCI6InNsIiwi4KS44KWN4KS14KWA4KSh4KS/4KS2Ijoic3YiLCLgpLngpILgpJfgpYfgpLDgpL/gpK/gpKgiOiJodSIsIuCkueCkv+CkqOCljeCkpuClgCI6ImhpIiwi4KS54KS/4KSs4KWN4KSw4KWCIjoiaGUiLCLgpLngpYjgpKTgpYDgpK/gpKgg4KSV4KWN4KSw4KWH4KST4KSyIjoiaHQiLCJhbGJhbmlhbiI6InNxIiwiYW1oYXJpYyI6ImFtIiwiYXJhYmljIjoiYXIiLCJhcm1lbmlhbiI6Imh5IiwiYXplcmJhaWphbmkiOiJheiIsImJlbGFydXNpYW4iOiJiZSIsImJ1bGdhcmlhbiI6ImJnIiwiY2hpbmVzZSAoc2ltcGxpZmllZCkiOiJ6aC1jbiIsImNoaW5lc2UgKHRyYWRpdGlvbmFsKSI6InpoLXR3IiwiY3JvYXRpYW4iOiJociIsImN6ZWNoIjoiY3MiLCJkYW5pc2giOiJkYSIsImR1dGNoIjoibmwiLCJlbmdsaXNoIjoiZW4iLCJlc3RvbmlhbiI6ImV0IiwiZmlubmlzaCI6ImZpIiwiZnJlbmNoIjoiZnIiLCJnYWxpY2lhbiI6ImdsIiwiZ2VybWFuIjoiZGUiLCJncmVlayI6ImVsIiwiaGFpdGlhbiBjcmVvbGUiOiJodCIsImhlYnJldyI6ImhlIiwiaHVuZ2FyaWFuIjoiaHUiLCJpY2VsYW5kaWMiOiJpcyIsImluZG9uZXNpYW4iOiJpZCIsImlyaXNoIjoiZ2EiLCJpdGFsaWFuIjoiaXQiLCJqYXBhbmVzZSI6ImphIiwia29yZWFuIjoia28iLCJrdXJkaXNoIChrdXJtYW5qaSkiOiJrdSIsImxhdHZpYW4iOiJsdiIsImxpdGh1YW5pYW4iOiJsdCIsIm1hY2Vkb25pYW4iOiJtayIsIm1hbGF5IjoibXMiLCJtYWx0ZXNlIjoibXQiLCJtb25nb2xpYW4iOiJtbiIsIm15YW5tYXIgKGJ1cm1lc2UpIjoibXkiLCJub3J3ZWdpYW4iOiJuYiIsInBlcnNpYW4iOiJmYSIsInBvbGlzaCI6InBsIiwicG9ydHVndWVzZSI6InB0Iiwicm9tYW5pYW4iOiJybyIsInJ1c3NpYW4iOiJydSIsInNjb3RzIGdhZWxpYyI6ImdkIiwic2VyYmlhbiI6InNyIiwic2xvdmFrIjoic2siLCJzbG92ZW5pYW4iOiJzbCIsInNwYW5pc2giOiJlcyIsInN3ZWRpc2giOiJzdiIsInR1cmtpc2giOiJ0ciIsInVrcmFpbmlhbiI6InVrIiwidXpiZWsiOiJ1eiIsInZpZXRuYW1lc2UiOiJ2aSIsIndlbHNoIjoiY3kiLCJhbGJhbsOqcyI6InNxIiwiYWxlbcOjbyI6ImRlIiwiYXJtw6puaW8iOiJoeSIsImF6ZXJiYWlqYW5vIjoiYXoiLCJiYXNjbyI6ImV1IiwiYmllbG8tcnVzc28iOiJiZSIsImJpcm1hbsOqcyI6Im15IiwiY2FuYXLDqnMiOiJrbiIsImNhdGFsw6NvIjoiY2EiLCJjaGluw6pzIChzaW1wbGlmaWNhZG8pIjoiemgtY24iLCJjaGluw6pzICh0cmFkaWNpb25hbCkiOiJ6aC10dyIsImRpbmFtYXJxdcOqcyI6ImRhIiwiZXNwYW5ob2wiOiJlcyIsImZpbmxhbmTDqnMiOiJmaSIsImZyYW5jw6pzIjoiZnIiLCJnYcOpbGljbyBlc2NvY8OqcyI6ImdkIiwiZ2Fsw6pzIjoiY3kiLCJoZWJyYWljbyI6ImhlIiwiaG9sYW5kw6pzIjoibmwiLCJpbmRvbsOpc2lvIjoiaWQiLCJpbmdsw6pzIjoiZW4iLCJpcmxhbmTDqnMiOiJnYSIsImlzbGFuZMOqcyI6ImlzIiwiamFwb27DqnMiOiJqYSIsImxhdGltIjoibGEiLCJsZXTDo28iOiJsdiIsIm1hY2Vkw7RuaW8iOiJtayIsIm1hbGFpYWxhIjoibWwiLCJtYWx0w6pzIjoibXQiLCJtYXJhdGEiOiJtciIsIm5vcnVlZ3XDqnMiOiJuYiIsInBvbG9uw6pzIjoicGwiLCJwb3J0dWd1w6pzIjoicHQiLCJyb21lbm8iOiJybyIsInJ1c3NvIjoicnUiLCJzw6lydmlvIjoic3IiLCJ0YWlsYW5kw6pzIjoidGgiLCJ0Y2hlY28iOiJjcyIsInRlbHVnbyI6InRlIiwidWNyYW5pYW5vIjoidWsiLCJ1emJlcXVlIjoidXoiLCJhbG1hbmNhIjoiZGUiLCJhcmFww6dhIjoiYXIiLCJhcm5hdnV0w6dhIjoic3EiLCJhemVyaWNlIjoiYXoiLCJiYXNrw6dhIjoiZXUiLCJiZWxhcnVzw6dhIjoiYmUiLCJidWxnYXJjYSI6ImJnIiwiYnVybWFjYSI6Im15Iiwiw6dla8OnZSI6ImNzIiwiw6dpbmNlIChiYXNpdGxlxZ90aXJpbG1pxZ8pIjoiemgtY24iLCLDp2luY2UgKGdlbGVuZWtzZWwpIjoiemgtdHciLCJkYW5jYSI6ImRhIiwiZW5kb25lenlhIGRpbGkiOiJpZCIsImVybWVuaWNlIjoiaHkiLCJlc3BlcmFudG9jYSI6ImVvIiwiZXN0b255YWNhIjoiZXQiLCJmYXJzw6dhIjoiZmEiLCJmZWxlbWVua8OnZSI6Im5sIiwiZmluY2UiOiJmaSIsImZyYW5zxLF6Y2EiOiJmciIsImdhbGNlIjoiY3kiLCJnYWxpw6d5YWNhIjoiZ2wiLCJoYWJlxZ/Dp2UiOiJhbSIsImhhaXRpIGNyZW9sZSBkaWxpIjoiaHQiLCJoxLFydmF0w6dhIjoiaHIiLCJoaW50w6dlIjoiaGkiLCJpzIdicmFuaWNlIjoiaGUiLCJpzIduZ2lsaXpjZSI6ImVuIiwiacyHcmxhbmRhY2EiOiJnYSIsImnMh3NwYW55b2xjYSI6ImVzIiwiacyHc3Zlw6fDp2UiOiJzdiIsImnMh3RhbHlhbmNhIjoiaXQiLCJpzId6bGFuZGFjYSI6ImlzIiwiamFwb25jYSI6ImphIiwia2F0YWxhbmNhIjoiY2EiLCJrb3JlY2UiOiJrbyIsImt1emV5IGnMh3Nrb8OnIGRpbGkiOiJnZCIsImvDvHJ0w6dlIjoia3UiLCJsYXRpbmNlIjoibGEiLCJsZWjDp2UiOiJwbCIsImxldG9uY2EiOiJsdiIsImxpdHZhbmNhIjoibHQiLCJtYWNhcmNhIjoiaHUiLCJtYWtlZG9uY2EiOiJtayIsIm1hbGV6eWEgZGlsaSI6Im1zIiwibWFsdGEgZGlsaSI6Im10IiwibWFvcmkgZGlsaSI6Im1pIiwibW/En29sY2EiOiJtbiIsIm5vcnZlw6fDp2UiOiJuYiIsIsO2emJla8OnZSI6InV6IiwicG9ydGVraXpjZSI6InB0Iiwicm9tZW5jZSI6InJvIiwicnVzw6dhIjoicnUiLCJzxLFycMOnYSI6InNyIiwic2xvdmFrw6dhIjoic2siLCJzbG92ZW5jZSI6InNsIiwidGF5IGRpbGkiOiJ0aCIsInRlbHVndSBkaWxpIjoidGUiLCJ0w7xya8OnZSI6InRyIiwidWtyYXluYWNhIjoidWsiLCJ2aWV0bmFtY2EiOiJ2aSIsInl1bmFuY2EiOiJlbCIsImFpcm3DqWluaXMiOiJoeSIsImFsYsOhaW5pcyI6InNxIiwiYW3DoXJhaXMiOiJhbSIsImFyYWliaXMiOiJhciIsImFzYXJiYWlzZcOhaW5pcyI6ImF6IiwiYmFzY2FpcyI6ImV1IiwiYmVhbGFyw7ppc2lzIjoiYmUiLCJiw6lhcmxhIjoiZW4iLCJicmVhdG5haXMiOiJjeSIsImJ1bGfDoWlyaXMiOiJiZyIsImNhbm5hZGFpcyI6ImtuIiwiY2F0YWzDs2luaXMiOiJjYSIsImNvaXJkaXMgKGN1cm1haW5zaXMpIjoia3UiLCJjw7NpcsOpaXMiOiJrbyIsImNyacOzbCBow6HDrXTDrSI6Imh0IiwiY3LDs2l0aXMiOiJociIsImRhbm1oYWlyZ2lzIjoiZGEiLCJlYWJocmFpcyI6ImhlIiwiZWFzdMOzaW5pcyI6ImV0IiwiZmlvbmxhaW5uaXMiOiJmaSIsImZyYWluY2lzIjoiZnIiLCJnYWVpbGdlIjoiZ2EiLCJnYWVpbGdlIG5hIGhhbGJhbiI6ImdkIiwiZ2FpbMOtc2lzIjoiZ2wiLCJnZWFybcOhaW5pcyI6ImRlIiwiZ3LDqWlnaXMiOiJlbCIsImhpb25kw7ppcyI6ImhpIiwiaW5kaW7DqWlzaXMiOiJpZCIsImlvZMOhaWxpcyI6Iml0IiwiaW9ydWFpcyI6Im5iIiwiw61vc2xhaW5uaXMiOiJpcyIsImxhaWRpbiI6ImxhIiwibGFpdHZpcyI6Imx2IiwibGlvdHXDoWluaXMiOiJsdCIsIm1hY2Fkw7NpbmlzIjoibWsiLCJtYWVubWFyIChidXJtYWlzKSI6Im15IiwibWFpbMOpYWxhaW1pcyI6Im1sIiwibWFsYWVpcyI6Im1zIiwibcOhbHRhaXMiOiJtdCIsIm1hb3JhaXMiOiJtaSIsIm1hcmFpdGlzIjoibXIiLCJtb25nw7NpbGlzIjoibW4iLCJvbGxhaW5uaXMiOiJubCIsInBlaXJzaXMiOiJmYSIsInBvbGFpbm5pcyI6InBsIiwicG9ydGFpbmfDqWlsaXMiOiJwdCIsInLDs23DoWluaXMiOiJybyIsInLDumlzaXMiOiJydSIsInNlYXDDoWluaXMiOiJqYSIsInNlaWNpcyI6ImNzIiwic2VpcmJpcyI6InNyIiwic8OtbmlzIChzaW1wbGl0aGUpIjoiemgtY24iLCJzw61uaXMgKHRyYWlkaXNpw7pudGEpIjoiemgtdHciLCJzbMOzaXbDqWluaXMiOiJzbCIsInNsw7N2YWljaXMiOiJzayIsInNww6Fpbm5pcyI6ImVzIiwic3VhbGFpbm5pcyI6InN2Iiwic8O6bMO6aXMiOiJ6dSIsInTDqWFsYWlubmlzIjoidGgiLCJ0ZWlsZWFnw7ppcyI6InRlIiwidHVpcmNpcyI6InRyIiwiw7pjcsOhaW5pcyI6InVrIiwiw7ppc2LDqWljZWFzdMOhaW5pcyI6InV6IiwidW5nw6FpcmlzIjoiaHUiLCJ2w610bmVhaW1pcyI6InZpIiwi4Lig4Liy4Lip4Liy4LiB4Lij4Li14LiBIjoiZWwiLCLguKDguLLguKnguLLguIHguLHguJnguJnguLLguJTguLIiOiJrbiIsIuC4oOC4suC4qeC4suC4geC4suC4peC4tOC5gOC4iuC4teC4ouC4mSI6ImdsIiwi4Lig4Liy4Lip4Liy4LmA4LiB4Lil4Li04LiB4LmD4LiZ4Liq4LiB4LmH4Lit4LiVIjoiZ2QiLCLguKDguLLguKnguLLguYDguIHguLLguKvguKXguLUiOiJrbyIsIuC4oOC4suC4qeC4suC4hOC4suC4leC4suC4peC4seC4mSI6ImNhIiwi4Lig4Liy4Lip4Liy4LmA4LiE4Li04Lij4LmM4LiUIjoia3UiLCLguKDguLLguKnguLLguYLguITguKPguYDguK3guYDguIrguLXguKIiOiJociIsIuC4oOC4suC4qeC4suC4iOC4teC4mSAo4LiU4Lix4LmJ4LiH4LmA4LiU4Li04LihKSI6InpoLXR3Iiwi4Lig4Liy4Lip4Liy4LiI4Li14LiZICjguYHguJrguJrguKLguYjguK0pIjoiemgtY24iLCLguKDguLLguKnguLLguYDguIrguYfguIEiOiJjcyIsIuC4oOC4suC4qeC4suC4i+C4ueC4peC4uSI6Inp1Iiwi4Lig4Liy4Lip4Liy4LmA4LiL4Lit4Lij4LmM4LmA4Lia4Li14Lii4LiZIjoic3IiLCLguKDguLLguKnguLLguI3guLXguYjguJvguLjguYjguJkiOiJqYSIsIuC4oOC4suC4qeC4suC4lOC4seC4leC4iuC5jCI6Im5sIiwi4Lig4Liy4Lip4Liy4LmA4LiU4LiZ4Lih4Liy4Lij4LmM4LiBIjoiZGEiLCLguKDguLLguKnguLLguJXguLjguKPguIHguLUiOiJ0ciIsIuC4oOC4suC4qeC4suC5gOC4leC4peC4ueC4geC4uSI6InRlIiwi4Lig4Liy4Lip4Liy4LmE4LiX4LiiIjoidGgiLCLguKDguLLguKnguLLguJnguK3guKPguYzguYDguKfguKLguYwiOiJuYiIsIuC4oOC4suC4qeC4suC4muC4seC4peC4geC4suC5gOC4o+C4teC4oiI6ImJnIiwi4Lig4Liy4Lip4Liy4Lia4Liy4Liq4LiB4LmMIjoiZXUiLCLguKDguLLguKnguLLguYDguJrguKXguLLguKPguLnguYDguIrguLXguKLguJkiOiJiZSIsIuC4oOC4suC4qeC4suC5gOC4m+C4reC4o+C5jOC5gOC4i+C4teC4oiI6ImZhIiwi4Lig4Liy4Lip4Liy4LmC4Lib4Lij4LiV4Li44LmA4LiB4LiqIjoicHQiLCLguKDguLLguKnguLLguYLguJvguYHguKXguJnguJTguYwiOiJwbCIsIuC4oOC4suC4qeC4suC4neC4o+C4seC5iOC4h+C5gOC4qOC4qiI6ImZyIiwi4Lig4Liy4Lip4Liy4Lif4Li04LiZ4LmB4Lil4LiZ4LiU4LmMIjoiZmkiLCLguKDguLLguKnguLLguKHguK3guIfguYLguIHguYDguKXguLXguKIiOiJtbiIsIuC4oOC4suC4qeC4suC4oeC4seC4peC4l+C4teC4qiI6Im10Iiwi4Lig4Liy4Lip4Liy4Lih4Liy4LiL4Li14LmC4LiU4LmA4LiZ4Li14LiiIjoibWsiLCLguKDguLLguKnguLLguKHguLLguKPguLLguJDguLUiOiJtciIsIuC4oOC4suC4qeC4suC4oeC4suC4peC4suC4ouC4suC4peC4seC4oSI6Im1sIiwi4Lig4Liy4Lip4Liy4Lih4Liy4LmA4Lil4Lii4LmMIjoibXMiLCLguKDguLLguKnguLLguYDguKHguLLguKPguLUiOiJtaSIsIuC4oOC4suC4qeC4suC5gOC4oeC4teC4ouC4meC4oeC4siAo4Lie4Lih4LmI4LiyKSI6Im15Iiwi4Lig4Liy4Lip4Liy4Lii4Li54LmA4LiE4Lij4LiZIjoidWsiLCLguKDguLLguKnguLLguYDguKLguK3guKPguKHguLHguJkiOiJkZSIsIuC4oOC4suC4qeC4suC4o+C4seC4quC5gOC4i+C4teC4oiI6InJ1Iiwi4Lig4Liy4Lip4Liy4LmC4Lij4Lih4Liy4LmA4LiZ4Li14LiiIjoicm8iLCLguKDguLLguKnguLLguKXguLDguJXguLTguJkiOiJsYSIsIuC4oOC4suC4qeC4suC4peC4seC4l+C5gOC4p+C4teC4oiI6Imx2Iiwi4Lig4Liy4Lip4Liy4Lil4Li04LiX4Lix4Lin4LmA4LiZ4Li14LiiIjoibHQiLCLguKDguLLguKnguLLguYDguKfguKXguKrguYwiOiJjeSIsIuC4oOC4suC4qeC4suC5gOC4p+C4teC4ouC4lOC4meC4suC4oSI6InZpIiwi4Lig4Liy4Lip4Liy4Liq4LmA4Lib4LiZIjoiZXMiLCLguKDguLLguKnguLLguKrguYLguKXguKfguLHguIEiOiJzayIsIuC4oOC4suC4qeC4suC4quC5guC4peC5gOC4p+C5gOC4meC4teC4oiI6InNsIiwi4Lig4Liy4Lip4Liy4Liq4Lin4Li14LmA4LiU4LiZIjoic3YiLCLguKDguLLguKnguLLguK3guLHguIfguIHguKTguKkiOiJlbiIsIuC4oOC4suC4qeC4suC4reC4seC4oeC4ruC4suC4o+C4tOC4gSI6ImFtIiwi4Lig4Liy4Lip4Liy4Lit4Lix4Lil4Lia4Liy4LmA4LiZ4Li14LiiIjoic3EiLCLguKDguLLguKnguLLguK3guLLguKPguYzguYDguIvguK3guKPguYzguYTguJrguIjguLHguJkiOiJheiIsIuC4oOC4suC4qeC4suC4reC4suC4o+C5jOC5gOC4oeC5gOC4meC4teC4oiI6Imh5Iiwi4Lig4Liy4Lip4Liy4Lit4Liy4Lir4Lij4Lix4LiaIjoiYXIiLCLguKDguLLguKnguLLguK3guLTguJXguLLguKXguLUiOiJpdCIsIuC4oOC4suC4qeC4suC4reC4tOC4meC5guC4lOC4meC4teC5gOC4i+C4teC4oiI6ImlkIiwi4Lig4Liy4Lip4Liy4Lit4Li44Liq4LmA4Lia4LiB4Li04Liq4LiW4Liy4LiZIjoidXoiLCLguKDguLLguKnguLLguYDguK3guKrguYLguJfguYDguJnguLXguKIiOiJldCIsIuC4oOC4suC4qeC4suC5gOC4reC4quC5gOC4m+C4reC5geC4o+C4meC5guC4lSI6ImVvIiwi4Lig4Liy4Lip4Liy4LmE4Lit4LiL4LmM4LmB4Lil4LiZ4LiU4Li04LiBIjoiaXMiLCLguKDguLLguKnguLLguYTguK3guKPguLTguIoiOiJnYSIsIuC4oOC4suC4qeC4suC4ruC4seC4h+C4geC4suC4o+C4tSI6Imh1Iiwi4Lig4Liy4Lip4Liy4Liu4Li04LiZ4LiU4Li1IjoiaGkiLCLguKDguLLguKnguLLguK7guLTguJrguKPguLkiOiJoZSIsIuC4oOC4suC4qeC4suC5gOC4ruC4leC4tOC4hOC4o+C4teC5guC4reC4pSI6Imh0Iiwi44Ki44Kk44K544Op44Oz44OJ6KqeIjoiaXMiLCLjgqLjgqTjg6vjg6njg7Pjg4noqp4iOiJnYSIsIuOCouOCvOODq+ODkOOCpOOCuOODo+ODs+iqniI6ImF6Iiwi44Ki44Og44OP44Op6KqeIjoiYW0iLCLjgqLjg6njg5PjgqLoqp4iOiJhciIsIuOCouODq+ODkOODi+OCouiqniI6InNxIiwi44Ki44Or44Oh44OL44Ki6KqeIjoiaHkiLCLjgqTjgr/jg6rjgqLoqp4iOiJpdCIsIuOCpOODs+ODieODjeOCt+OCouiqniI6ImlkIiwi44Km44Kn44O844Or44K66KqeIjoiY3kiLCLjgqbjgq/jg6njgqTjg4roqp4iOiJ1ayIsIuOCpuOCuuODmeOCr+iqniI6InV6Iiwi44Ko44K544OI44OL44Ki6KqeIjoiZXQiLCLjgqjjgrnjg5rjg6njg7Pjg4joqp4iOiJlbyIsIuOCquODqeODs+ODgOiqniI6Im5sIiwi44Kr44K/44Or44O844OL44Oj6KqeIjoiY2EiLCLjgqzjg6rjgrfjgqLoqp4iOiJnbCIsIuOCq+ODs+ODiuODgOiqniI6ImtuIiwi44Ku44Oq44K344Oj6KqeIjoiZWwiLCLjgq/jg6vjg4noqp4iOiJrdSIsIuOCr+ODreOCouODgeOCouiqniI6ImhyIiwi44K544Km44Kn44O844OH44Oz6KqeIjoic3YiLCLjgrrjg7zjg6vjg7zoqp4iOiJ6dSIsIuOCueOCs+ODg+ODiOODqeODs+ODiSDjgrLjg7zjg6voqp4iOiJnZCIsIuOCueODmuOCpOODs+iqniI6ImVzIiwi44K544Ot44OQ44Kt44Ki6KqeIjoic2siLCLjgrnjg63jg5njg4vjgqLoqp4iOiJzbCIsIuOCu+ODq+ODk+OCouiqniI6InNyIiwi44K/44Kk6KqeIjoidGgiLCLjg4HjgqfjgrPoqp4iOiJjcyIsIuODhuODq+OCsOiqniI6InRlIiwi44OH44Oz44Oe44O844Kv6KqeIjoiZGEiLCLjg4njgqTjg4Toqp4iOiJkZSIsIuODiOODq+OCs+iqniI6InRyIiwi44OO44Or44Km44Kn44O86KqeIjoibmIiLCLjg4/jgqTjg4Hoqp4iOiJodCIsIuODkOOCueOCr+iqniI6ImV1Iiwi44OP44Oz44Ks44Oq44O86KqeIjoiaHUiLCLjg5Ljg7Pjg4fjgqPjg7zoqp4iOiJoaSIsIuODleOCo+ODs+ODqeODs+ODieiqniI6ImZpIiwi44OV44Op44Oz44K56KqeIjoiZnIiLCLjg5bjg6vjgqzjg6rjgqLoqp4iOiJiZyIsIuODmeODiOODiuODoOiqniI6InZpIiwi44OY44OW44Op44Kk6KqeIjoiaGUiLCLjg5njg6njg6vjg7zjgrfoqp4iOiJiZSIsIuODmuODq+OCt+ODo+iqniI6ImZhIiwi44Od44O844Op44Oz44OJ6KqeIjoicGwiLCLjg53jg6vjg4jjgqzjg6voqp4iOiJwdCIsIuODnuOCquODquiqniI6Im1pIiwi44Oe44Kx44OJ44OL44Ki6KqeIjoibWsiLCLjg57jg6njg7zjg4bjgqPjg7zoqp4iOiJtciIsIuODnuODqeODpOODvOODqeODoOiqniI6Im1sIiwi44Oe44Or44K/6KqeIjoibXQiLCLjg57jg6zjg7zoqp4iOiJtcyIsIuODn+ODo+ODs+ODnuODvOiqniI6Im15Iiwi44Oi44Oz44K044Or6KqeIjoibW4iLCLjg6njg4bjg7Poqp4iOiJsYSIsIuODqeODiOODk+OCouiqniI6Imx2Iiwi44Oq44OI44Ki44OL44Ki6KqeIjoibHQiLCLjg6vjg7zjg57jg4vjgqLoqp4iOiJybyIsIuODreOCt+OCouiqniI6InJ1Iiwi6Iux6KqeIjoiZW4iLCLpn5Plm73oqp4iOiJrbyIsIuS4reWbveiqnijnsKHkvZMpIjoiemgtY24iLCLkuK3lm73oqp4o57mB5L2TKSI6InpoLXR3Iiwi5pel5pys6KqeIjoiamEiLCJhbGJhbmVlcyI6InNxIiwiYW1oYXJpc2NoIjoiYW0iLCJhcmFiaXNjaCI6ImFyIiwiYXJtZWVucyI6Imh5IiwiYXplcmJlaWR6amFhbnMiOiJheiIsImJhc2tpc2NoIjoiZXUiLCJiaXJtYWFucyI6Im15IiwiYnVsZ2FhcnMiOiJiZyIsImNhdGFsYWFucyI6ImNhIiwiY2hpbmVlcyAodHJhZGl0aW9uZWVsKSI6InpoLXR3IiwiY2hpbmVlcyAodmVyZWVudm91ZGlnZCkiOiJ6aC1jbiIsImRlZW5zIjoiZGEiLCJkdWl0cyI6ImRlIiwiZW5nZWxzIjoiZW4iLCJlc3RzIjoiZXQiLCJmaW5zIjoiZmkiLCJmcmFucyI6ImZyIiwiZ2FsaWNpc2NoIjoiZ2wiLCJncmlla3MiOiJlbCIsImhhw690aWFhbnMgY3Jlb29scyI6Imh0IiwiaGVicmVldXdzIjoiaGUiLCJob25nYWFycyI6Imh1IiwiaWVycyI6ImdhIiwiaWpzbGFuZHMiOiJpcyIsImluZG9uZXNpc2NoIjoiaWQiLCJpdGFsaWFhbnMiOiJpdCIsImphcGFucyI6ImphIiwia29lcmRpc2NoIjoia3UiLCJrb3JlYWFucyI6ImtvIiwia3JvYXRpc2NoIjoiaHIiLCJsYXRpam4iOiJsYSIsImxldHMiOiJsdiIsImxpdG91d3MiOiJsdCIsIm1hY2Vkb25pc2NoIjoibWsiLCJtYWxlaXMiOiJtcyIsIm1hbHRlZXMiOiJtdCIsIm1vbmdvb2xzIjoibW4iLCJuZWRlcmxhbmRzIjoibmwiLCJub29ycyI6Im5iIiwib2VrcmHDr2VucyI6InVrIiwib2V6YmVla3MiOiJ1eiIsInBlcnppc2NoIjoiZmEiLCJwb29scyI6InBsIiwicG9ydHVnZWVzIjoicHQiLCJyb2VtZWVucyI6InJvIiwicnVzc2lzY2giOiJydSIsInNjaG90cyBrZWx0aXNjaCI6ImdkIiwic2VydmlzY2giOiJzciIsInNsb3ZhYWtzIjoic2siLCJzbG92ZWVucyI6InNsIiwic3BhYW5zIjoiZXMiLCJ0c2plY2hpc2NoIjoiY3MiLCJ0dXJrcyI6InRyIiwidmlldG5hbWVlcyI6InZpIiwid2VscyI6ImN5Iiwid2l0LXJ1c3Npc2NoIjoiYmUiLCJ6b2Vsb2UiOiJ6dSIsInp3ZWVkcyI6InN2IiwiYWlybWVpbmlzIjoiaHkiLCJhbGLDoGluaXMiOiJzcSIsImFtdGhhcmFpcyI6ImFtIiwiYXJhYmFpcyI6ImFyIiwiYXNhcmJhaWRlw6BuYWlzIjoiYXoiLCJiYXNnYWlzIjoiZXUiLCJiZWFsYXJ1aXNpcyI6ImJlIiwiYmV1cmxhIjoiZW4iLCJiaGlldC1uYW1haXMiOiJ2aSIsImJ1bGdhcmFpcyI6ImJnIiwiY8OgbmFuIG5hbiB0w6BpZGgiOiJ0aCIsImNhdGFsYW5haXMiOiJjYSIsImNvaXLDqGFuYWlzIjoia28iLCJjcsOsdGhlb2wgaGFpZGh0aSI6Imh0IiwiY3LDsnRoYWlzaXMiOiJociIsImN1aW1yaXMiOiJjeSIsImPDuXJkYWlzIChrdXJtYW5qaSkiOiJrdSIsImR1aXRzaXMiOiJubCIsImVhYmhyYSI6ImhlIiwiZWFkYWlsdGlzIjoiaXQiLCJlYXN0b2luaXMiOiJldCIsImZpb25ubGFubmFpcyI6ImZpIiwiZnJhaW5naXMiOiJmciIsImfDoGlkaGxpZyI6ImdkIiwiZ2FpbMOsc2lzIjoiZ2wiLCJnZWFybWFpbHRpcyI6ImRlIiwiZ3LDqGlnaXMiOiJlbCIsImhpbmRpcyI6ImhpIiwiaW5uZC1pbm5zaXMiOiJpZCIsImlubmlzLXTDrGxpcyI6ImlzIiwibGFpZGVhbm4iOiJsYSIsImxhaXRiaGVpcyI6Imx2IiwibGlvdHVhaW5pcyI6Imx0IiwibWFsYWlkaGlzIjoibXMiLCJtxIFvcmkiOiJtaSIsIm1hc2Fkb25haXMiOiJtayIsIm1pw6BubWFyIChidXJtYWlzKSI6Im15IiwibW9uZ29sYWlzIjoibW4iLCJuaXJyaWJoaXMiOiJuYiIsInDDsmxhaW5uaXMiOiJwbCIsInBvcnRhZ2FpbGlzIjoicHQiLCJyb23DoGluaXMiOiJybyIsInJ1aXNpcyI6InJ1Iiwic2VhY2FpcyI6ImNzIiwic2VhcGFuYWlzIjoiamEiLCJzw6hpcmJpcyI6InNyIiwic8Osb25haXMgKHNlYW5uLW7DsnNhY2gpIjoiemgtdHciLCJzw6xvbmFpcyAoc8OsbXBsaWNodGUpIjoiemgtY24iLCJzbMOyYmhhY2FpcyI6InNrIiwic2zDsmJoYWluaXMiOiJzbCIsInNww6Bpbm50aXMiOiJlcyIsInN1YWluaXMiOiJzdiIsInR1cmNhaXMiOiJ0ciIsInVjcsOgaW5pcyI6InVrIiwidW5nYWlyaXMiOiJodSIsInVzYmFnYWlzIjoidXoiLCJmYXJzaSI6ImZhIiwiZ2FsaXNpc2siOiJnbCIsImdyZXNrIjoiZWwiLCJodml0ZXJ1c3Npc2siOiJiZSIsImtpbmVzaXNrICh0cmFkaXNqb25lbGwpIjoiemgtdHciLCJrcmVvbCAoaGFpdGkpIjoiaHQiLCJsYXR2aXNrIjoibHYiLCJtYWxheWlzayI6Im1zIiwibmVkZXJsYW5kc2siOiJubCIsInJ1bWVuc2siOiJybyIsInRzamVra2lzayI6ImNzIiwiYWxiYW5pc2NoIjoic3EiLCJhcm1lbmlzY2giOiJoeSIsImFzZXJiYWlkc2NoYW5pc2NoIjoiYXoiLCJiaXJtYW5pc2NoIjoibXkiLCJidWxnYXJpc2NoIjoiYmciLCJjaGluZXNpc2NoICh0cmFkaXRpb25lbGwpIjoiemgtdHciLCJjaGluZXNpc2NoICh2ZXJlaW5mYWNodCkiOiJ6aC1jbiIsImTDpG5pc2NoIjoiZGEiLCJkZXV0c2NoIjoiZGUiLCJlbmdsaXNjaCI6ImVuIiwiZXN0bmlzY2giOiJldCIsImZpbm5pc2NoIjoiZmkiLCJmcmFuesO2c2lzY2giOiJmciIsImdhbGl6aXNjaCI6ImdsIiwiZ3JpZWNoaXNjaCI6ImVsIiwiaGFpdGlhbmlzY2giOiJodCIsImhlYnLDpGlzY2giOiJoZSIsImlyaXNjaCI6ImdhIiwiaXNsw6RuZGlzY2giOiJpcyIsIml0YWxpZW5pc2NoIjoiaXQiLCJqYXBhbmlzY2giOiJqYSIsImthdGFsYW5pc2NoIjoiY2EiLCJrb3JlYW5pc2NoIjoia28iLCJrdXJkaXNjaCAoa3VybWFuZHNjaGkpIjoia3UiLCJsYXRlaW5pc2NoIjoibGEiLCJsZXR0aXNjaCI6Imx2IiwibGl0YXVpc2NoIjoibHQiLCJtYWxheXNpc2NoIjoibXMiLCJtYWx0ZXNpc2NoIjoibXQiLCJtYXplZG9uaXNjaCI6Im1rIiwibW9uZ29saXNjaCI6Im1uIiwibmllZGVybMOkbmRpc2NoIjoibmwiLCJub3J3ZWdpc2NoIjoibmIiLCJwZXJzaXNjaCI6ImZhIiwicG9sbmlzY2giOiJwbCIsInBvcnR1Z2llc2lzY2giOiJwdCIsInJ1bcOkbmlzY2giOiJybyIsInNjaG90dGlzY2gtZ8OkbGlzY2giOiJnZCIsInNjaHdlZGlzY2giOiJzdiIsInNlcmJpc2NoIjoic3IiLCJzbG93YWtpc2NoIjoic2siLCJzbG93ZW5pc2NoIjoic2wiLCJzcGFuaXNjaCI6ImVzIiwidGhhaWzDpG5kaXNjaCI6InRoIiwidHNjaGVjaGlzY2giOiJjcyIsInTDvHJraXNjaCI6InRyIiwidWtyYWluaXNjaCI6InVrIiwidW5nYXJpc2NoIjoiaHUiLCJ1c2Jla2lzY2giOiJ1eiIsInZpZXRuYW1lc2lzY2giOiJ2aSIsIndhbGlzaXNjaCI6ImN5Iiwid2Vpw59ydXNzaXNjaCI6ImJlIiwi4YCA4YCU4YCs4YCS4YCrIjoia24iLCLhgIDhgKzhgLfhgJLhgLogKOGAgOGArOGAmeGAlOGAuuGAguGAu+GArikiOiJrdSIsIuGAgOGAreGAr+GAm+GAruGAuOGAmuGArOGAuCI6ImtvIiwi4YCA4YCA4YC64YCQ4YCc4YCU4YC6IjoiY2EiLCLhgIHhgJvhgK3hgK/hgKHhgLHhgLjhgJvhgL7hgKzhgLgiOiJociIsIuGAgeGAu+GAgOGAuiI6ImNzIiwi4YCC4YCb4YCtIjoiZWwiLCLhgILhgJrhgLrhgJzhgK3hgJvhgL4iOiJnbCIsIuGAguGAu+GAleGAlOGAuiI6ImphIiwi4YCC4YC74YCs4YCZ4YCU4YC6IjoiZGUiLCLhgIXhgIDhgLHhgKzhgLcg4YCC4YCx4YC44YCc4YCF4YC6IjoiZ2QiLCLhgIXhgJXhgK3hgJThgLoiOiJlcyIsIuGAhuGAnOGAreGAr+GAl+GAseGAuOGAlOGAruGAuOGAmuGArOGAuCI6InNsIiwi4YCG4YCc4YCt4YCv4YCX4YCA4YC6Ijoic2siLCLhgIbhgKzhgLjhgJjhgK7hgLjhgJrhgKzhgLgiOiJzciIsIuGAhuGAveGAruGAkuGAhOGAuiI6InN2Iiwi4YCH4YCw4YC44YCc4YCw4YC4IjoienUiLCLhgJDhgJvhgK/hgJDhgLogKOGAm+GAreGAr+GAuOGAm+GArCkiOiJ6aC10dyIsIuGAkOGAm+GAr+GAkOGAuiAo4YCh4YCc4YC94YCa4YC6KSI6InpoLWNuIiwi4YCQ4YCw4oCL4YCb4oCL4YCA4YCuIjoidHIiLCLhgJDhgJrhgLrhgJzhgLDhgILhgLAiOiJ0ZSIsIuGAkeGAreGAr+GAhOGAuuGAuCI6InRoIiwi4YCS4YCQ4YC64YCB4YC74YC6IjoibmwiLCLhgJLhgK3hgJThgLrhgLjhgJnhgJDhgLoiOiJkYSIsIuGAlOGAseGArOGAuuGAneGAsSI6Im5iIiwi4YCV4YCr4YCb4YC+4YCU4YC6IjoiZmEiLCLhgJXhgLHhgKvhgLrhgJDhgLDhgILhgK4iOiJwdCIsIuGAleGAreGAr+GAnOGAlOGAuiI6InBsIiwi4YCV4YC84YCE4YC64YCe4YCF4YC6IjoiZnIiLCLhgJbhgIThgLrhgJzhgJThgLoiOiJmaSIsIuGAl+GAruGAmuGAgOGAuuGAlOGAmeGAuiI6InZpIiwi4YCY4YCs4YC34YCF4YC6IjoiZXUiLCLhgJjhgLDhgILhgLHhgLjhgJvhgK7hgLjhgJrhgKzhgLgiOiJiZyIsIuGAmOGAmuGAuuGAnOGArOGAm+GAr+GAheGAuiI6ImJlIiwi4YCZ4YCc4YCx4YCa4YCs4YCc4YCZ4YC6IjoibWwiLCLhgJnhgJzhgLHhgLgiOiJtcyIsIuGAmeGArOGAm+GArOGAnuGAriI6Im1yIiwi4YCZ4YCx4YCs4YC64YCb4YCuIjoibWkiLCLhgJnhgLHhgKzhgLrhgJzhgJDhgKwiOiJtdCIsIuGAmeGAgOGAuuGAhuGAruGAkuGAreGAr+GAuOGAlOGAruGAuOGAmuGArOGAuCI6Im1rIiwi4YCZ4YC84YCU4YC64YCZ4YCsICjhgJnhgLzhgJThgLrhgJnhgKwpIjoibXkiLCLhgJnhgL3hgJThgLrhgILhgK3hgK/hgJzhgK7hgLjhgJrhgKzhgLgiOiJtbiIsIuGAmuGAsOKAi+GAgOKAi+GAm+GAreGAlOGAuuGAuOKAiyI6InVrIiwi4YCb4YCv4YCb4YC+4YCs4YC4IjoicnUiLCLhgJvhgK3hgK/hgJnhgLHhgLjhgJThgK7hgLjhgJrhgKzhgLgiOiJybyIsIuGAnOGAgOGAuuGAkOGAhOGAuiI6ImxhIiwi4YCc4YCF4YC64YCe4YCw4YCa4YCx4YC44YCU4YCu4YC44YCa4YCs4YC4IjoibHQiLCLhgJzhgJDhgLrhgJfhgK7hgJrhgKwiOiJsdiIsIuGAneGAseGAnCI6ImN5Iiwi4YCf4YCu4YCY4YCb4YCw4YC4IjoiaGUiLCLhgJ/hgLHhgJDhgK4g4YCB4YCb4YCu4YCh4YCt4YCv4YC4IjoiaHQiLCLhgJ/hgIThgLrhgJLhgK4iOiJoaSIsIuGAn+GAlOGAuuGAguGAseGAm+GAriI6Imh1Iiwi4YCh4YCH4YCs4YCY4YCt4YCv4YCE4YC64YCC4YC74YCU4YC6IjoiYXoiLCLhgKHhgKzhgJnhgLHhgLjhgJThgK7hgLjhgJrhgKzhgLgiOiJoeSIsIuGAoeGArOGAm+GAseGAl+GAuyI6ImFyIiwi4YCh4YCu4YCQ4YCc4YCuIjoiaXQiLCLhgKXhgIfhgJjhgIDhgLoiOiJ1eiIsIuGAoeGAgOGAuuGAheGAkOGAreGAr+GAuOGAlOGAruGAuOGAmuGArOGAuCI6ImV0Iiwi4YCh4YCA4YC64YCF4YC64YCV4YCy4YCb4YCU4YC64YCQ4YCt4YCvIjoiZW8iLCLhgKHhgK3hgK/hgIDhgLrhgIXhgJzhgJThgLoiOiJpcyIsIuGAoeGAhOGAuuGAueGAguGAnOGAreGAleGAuiI6ImVuIiwi4YCh4YCE4YC64YCS4YCt4YCv4YCU4YCu4YC44YCb4YC+4YCs4YC4IjoiaWQiLCLhgKHhgK3hgK/hgIThgLrhgLjhgJvhgIXhgLrhgJvhgL7hgLoiOiJnYSIsIuGAoeGAmeGAuuGAn+GAsuGAm+GAheGAuuGAgeGAuiI6ImFtIiwi4YCh4YCa4YC64YCc4YC64YCY4YCx4YC44YCU4YCu4YC44YCa4YCs4YC4Ijoic3EiLCLXkNeV15bXkden15nXqiI6InV6Iiwi15DXlden16jXkNeZ16DXmdeqIjoidWsiLCLXkNeW16jXmdeqIjoiYXoiLCLXkNeZ15jXnNen15nXqiI6Iml0Iiwi15DXmdeg15PXldeg15bXmdeqIjoiaWQiLCLXkNeZ16HXnNeg15PXmdeqIjoiaXMiLCLXkNeZ16jXmdeqIjoiZ2EiLCLXkNec15HXoNeZ16oiOiJzcSIsIteQ157XlNeo15nXqiI6ImFtIiwi15DXoNeS15zXmdeqIjoiZW4iLCLXkNeh15jXldeg15nXqiI6ImV0Iiwi15DXodek16jXoNeY15UiOiJlbyIsIteQ16jXnteg15nXqiI6Imh5Iiwi15HXkNeh16fXmdeqIjoiZXUiLCLXkdeV15zXkteo15nXqiI6ImJnIiwi15HXldeo157XlteZ16oiOiJteSIsIteR15zXkNeo15XXodeZ16oiOiJiZSIsIteS15zXmdem15nXkNeg15nXqiI6ImdsIiwi15LXqNee16DXmdeqIjoiZGUiLCLXk9eg15nXqiI6ImRhIiwi15TXldec16DXk9eZ16oiOiJubCIsIteU15XXoNeS16jXmdeqIjoiaHUiLCLXlNeZ16DXk9eZIjoiaGkiLCLXldeV15zXqdeZ16oiOiJjeSIsIteV15nXmdeY16DXkNee15nXqiI6InZpIiwi15bXldec15UiOiJ6dSIsIteY15XXqNen15nXqiI6InRyIiwi15jXnNeV15LXlSI6InRlIiwi15nXldeV16DXmdeqIjoiZWwiLCLXmdek16DXmdeqIjoiamEiLCLXm9eV16jXk9eZ16oiOiJrdSIsItec15jXldeV15nXqiI6Imx2Iiwi15zXmNeZ16DXmdeqIjoibGEiLCLXnNeZ15jXkNeZ16oiOiJsdCIsItee15DXldeo15nXqiI6Im1pIiwi157XkNec15DXmdeQ15zXnSI6Im1sIiwi157XkNec15bXmdeqIjoibXMiLCLXnteQ16jXkNeq15kiOiJtciIsItee15XXoNeS15XXnNeZ16oiOiJtbiIsItee15zXmNeZ16oiOiJtdCIsItee16fXk9eV16DXmdeqIjoibWsiLCLXoNeV16jXldeV15LXmdeqIjoibmIiLCLXodeZ16DXmdeqICjXnteh15XXqNeq15nXqikiOiJ6aC10dyIsIteh15nXoNeZ16ogKNek16nXldeY15QpIjoiemgtY24iLCLXodec15XXkdeg15nXqiI6InNsIiwi16HXnNeV15HXp9eZ16oiOiJzayIsIteh16TXqNeT15nXqiI6ImVzIiwi16HXp9eV15jXmdeqINeS15DXnNeZ16oiOiJnZCIsIteh16jXkdeZ16oiOiJzciIsItei15HXqNeZ16oiOiJoZSIsItei16jXkdeZ16oiOiJhciIsItek15XXnNeg15nXqiI6InBsIiwi16TXldeo15jXldeS15bXmdeqIjoicHQiLCLXpNeZ16DXmdeqIjoiZmkiLCLXpNeo16HXmdeqIjoiZmEiLCLXplwn15vXmdeqIjoiY3MiLCLXpteo16TXqteZ16oiOiJmciIsIten15DXoNeQ15PXlCI6ImtuIiwi16fXldeo15nXkNeg15nXqiI6ImtvIiwi16fXmNec15DXoNeZ16oiOiJjYSIsIten16jXldeQ15jXmdeqIjoiaHIiLCLXp9eo15nXkNeV15zXmdeqINeU15DXmdeY15nXqiI6Imh0Iiwi16jXldee16DXmdeqIjoicm8iLCLXqNeV16HXmdeqIjoicnUiLCLXqdeV15XXk9eZ16oiOiJzdiIsIteq15DXmdec16DXk9eZ16oiOiJ0aCIsItCw0LfQtdGA0LHQtdGY0Z/QsNC90YHQutC4IjoiYXoiLCLQsNC70LHQsNC90YHQutC4Ijoic3EiLCLQsNC80YXQsNGA0YHQutC4IjoiYW0iLCLQsNC90LPQu9C40YHQutC4IjoiZW4iLCLQsNGA0LDQv9GB0LrQuCI6ImFyIiwi0LHQsNGB0LrQuNGB0LrQuCI6ImV1Iiwi0LHQtdC70L7RgNGD0YHQutC4IjoiYmUiLCLQsdGD0LPQsNGA0YHQutC4IjoiYmciLCLQsdGD0YDQvNCw0L3RgdC60LgiOiJteSIsItCy0LXQu9GI0LrQuCI6ImN5Iiwi0LLQuNC10YLQvdCw0LzRgdC60LgiOiJ2aSIsItCz0LDQu9C40YbQuNGB0LrQuCI6ImdsIiwi0LPQtdGA0LzQsNC90YHQutC4IjoiZGUiLCLQs9GA0YfQutC4IjoiZWwiLCLQtNCw0L3RgdC60LgiOiJkYSIsItC10YDQvNC10L3RgdC60LgiOiJoeSIsItC10YHRgtC+0L3RgdC60LgiOiJldCIsItC40L3QtNC+0L3QtdC30LjRgdC60LgiOiJpZCIsItC40YDRgdC60LgiOiJnYSIsItC40YHQu9Cw0L3QtNGB0LrQuCI6ImlzIiwi0LjRgtCw0LvQuNGY0LDQvdGB0LrQuCI6Iml0Iiwi0ZjQsNC/0L7QvdGB0LrQuCI6ImphIiwi0LrQsNC90LDQtNCwIjoia24iLCLQutCw0YLQsNC70L7QvdGB0LrQuCI6ImNhIiwi0LrQuNC90LXRgdC60LggKNC/0L7QtdC00L3QvtGB0YLQsNCy0LXQvSkiOiJ6aC1jbiIsItC60LjQvdC10YHQutC4ICjRgtGA0LDQtNC40YbQuNC+0L3QsNC70LXQvSkiOiJ6aC10dyIsItC60L7RgNC10ZjRgdC60LgiOiJrbyIsItC60YPRgNC00YHQutC4Ijoia3UiLCLQu9Cw0YLQstC40YHQutC4IjoibHYiLCLQu9Cw0YLQuNC90YHQutC4IjoibGEiLCLQu9C40YLQstCw0L3RgdC60LgiOiJsdCIsItC80LDQutC10LTQvtC90YHQutC4IjoibWsiLCLQvNCw0LvQsNGY0LDQu9Cw0LwiOiJtbCIsItC80LDQu9Cw0ZjRgdC60LgiOiJtcyIsItC80LDQu9GC0LXRiNC60LgiOiJtdCIsItC80LDQvtGA0YHQutC4IjoibWkiLCLQvNCw0YDQsNGC0YXQuCI6Im1yIiwi0LzQvtC90LPQvtC70YHQutC4IjoibW4iLCLQvdC+0YDQstC10YjQutC4IjoibmIiLCLQv9C10YDRgdC40YHQutC4IjoiZmEiLCLQv9C+0LvRgdC60LgiOiJwbCIsItC/0L7RgNGC0YPQs9Cw0LvRgdC60LgiOiJwdCIsItGA0L7QvNCw0L3RgdC60LgiOiJybyIsItGA0YPRgdC60LgiOiJydSIsItGB0LvQvtCy0LDRh9C60LgiOiJzayIsItGB0LvQvtCy0LXQvdC10YfQutC4Ijoic2wiLCLRgdGA0L/RgdC60LgiOiJzciIsItGC0LDRmNC70LDQvdC00YHQutC4IjoidGgiLCLRgtC10LvRg9Cz0YMiOiJ0ZSIsItGC0YPRgNGB0LrQuCI6InRyIiwi0YPQt9Cx0LXRh9C60LgiOiJ1eiIsItGD0LrRgNCw0LjQvdGB0LrQuCI6InVrIiwi0YPQvdCz0LDRgNGB0LrQuCI6Imh1Iiwi0YTQuNC90YHQutC4IjoiZmkiLCLRhNGA0LDQvdGG0YPRgdC60LgiOiJmciIsItGF0LDQuNGC0YHQutC4INC60YDQtdC+0LvRgdC60LgiOiJodCIsItGF0LXQsdGA0LXRmNGB0LrQuCI6ImhlIiwi0YXQuNC90LTQuNGB0LrQuCI6ImhpIiwi0YXQvtC70LDQvdC00YHQutC4IjoibmwiLCLRhdGA0LLQsNGC0YHQutC4IjoiaHIiLCLRh9C10YjQutC4IjoiY3MiLCLRiNCy0LXQtNGB0LrQuCI6InN2Iiwi0YjQutC+0YLRgdC60Lgg0LPQsNC70YHQutC4IjoiZ2QiLCLRiNC/0LDQvdGB0LrQuCI6ImVzIiwi4LKF4LKc4LKw4LON4LKs4LOI4LKc4LK+4LKo4LK/IjoiYXoiLCLgsoXgsq7gsrngsr7gsrDgsr/gspXgs40iOiJhbSIsIuCyheCysOCyrOCzjeCyrOCyvyI6ImFyIiwi4LKG4LKw4LON4LKu4LOH4LKo4LK/4LKv4LKo4LONIjoiaHkiLCLgsobgsrLgs43gsqzgs4fgsqjgsr/gsq/gsqjgs40iOiJzcSIsIuCyh+CyguCyl+CzjeCysuCyv+Cyt+CzjeKAjOKAjCI6ImVuIiwi4LKH4LKC4LKh4LOL4LKo4LOH4LK34LK/4LKv4LKo4LONIjoiaWQiLCLgsofgsp/gsr7gsrLgsr/gsq/gsqjgs40iOiJpdCIsIuCyieCynOCzjeCyrOCzhuCyleCzjSI6InV6Iiwi4LKO4LK44LON4LKf4LOL4LKo4LK/4LKv4LKo4LONIjoiZXQiLCLgso7gsrjgs43gsqrgs4bgsrDgsr7gsoLgsp/gs4siOiJlbyIsIuCykOCysOCyv+Cyt+CzjSI6ImdhIiwi4LKQ4LK44LON4oCM4LKy4LON4LKv4LK+4LKC4LKh4LK/4LKV4LON4oCMIjoiaXMiLCLgspXgsqjgs43gsqjgsqEiOiJrbiIsIuCyleCzgeCysOCzjeCypuCyv+CytuCzjSI6Imt1Iiwi4LKV4LOK4LKw4LK/4LKv4LKo4LONIjoia28iLCLgspXgs43gsq/gsr7gsp/gsrLgsqjgs40iOiJjYSIsIuCyleCzjeCysOCziuCyr+Czh+Cyt+Cyv+Cyr+CyqOCzjSI6ImhyIiwi4LKX4LON4LKv4LK+4LKy4LOA4LK34LK/4LKv4LKo4LONIjoiZ2wiLCLgspfgs43gsrDgs4DgspXgs40iOiJlbCIsIuCymuCzgOCyqOCyvyAo4LK44LKw4LKz4LOA4LKV4LOD4LKkKSI6InpoLWNuIiwi4LKa4LOA4LKo4LK/ICjgsrjgsr7gsoLgsqrgs43gsrDgsqbgsr7gsq/gsr/gspUpIjoiemgtdHciLCLgspzgsqrgsr7gsqjgsr8iOiJqYSIsIuCynOCysOCzjeCyruCyqOCzjSI6ImRlIiwi4LKc4LOB4LKy4LOBIjoienUiLCLgsp3gs4bgspXgs43igIwiOiJjcyIsIuCyn+CysOCzjeCyleCyv+Cyt+CzjSI6InRyIiwi4LKh4LKa4LONIjoibmwiLCLgsqHgs43gsq/gsr7gsqjgsr/gsrfgs40iOiJkYSIsIuCypOCzhuCysuCzgeCyl+CzgSI6InRlIiwi4LKl4LK+4LKv4LONIjoidGgiLCLgsqjgsr7gsrDgs43gsrXgs4fgspzgsr/gsq/gsqjgs43igIwiOiJuYiIsIuCyquCzi+CysOCzjeCymuCzgeCyl+CzgOCyuOCzjSI6InB0Iiwi4LKq4LOL4LKy4LK/4LK34LONIjoicGwiLCLgsqvgsr7gsrDgs43gsrjgsr8iOiJmYSIsIuCyq+Cyv+CyqOCzjeCyqOCyv+Cyt+CzjSI6ImZpIiwi4LKr4LON4LKw4LOG4LKC4LKa4LONIjoiZnIiLCLgsqzgsrDgs43gsq7gs4Dgsrjgs40iOiJteSIsIuCyrOCysuCzjeCyl+Czh+CysOCyv+Cyr+CyqOCzjSI6ImJnIiwi4LKs4LK+4LK44LON4LKV4LONIjoiZXUiLCLgsqzgs4bgsrLgsrDgs4Lgsrjgsr/gsq/gsqjgs40iOiJiZSIsIuCyruCyguCyl+Czi+CysuCyv+Cyr+CyqOCzjSI6Im1uIiwi4LKu4LKw4LK+4LKg4LK/IjoibXIiLCLgsq7gsrLgsq8iOiJtcyIsIuCyruCysuCyr+CyvuCys+CygiI6Im1sIiwi4LKu4LK+4LKy4LON4LKf4LOA4LK44LONIjoibXQiLCLgsq7gsr7gsrXgs4vgsrDgsr8iOiJtaSIsIuCyruCzjeCyr+CyvuCyuOCzhuCyoeCzi+CyqOCyv+Cyr+CyqOCzjSI6Im1rIiwi4LKv4LOB4LKV4LON4LKw4LOH4LKo4LK/4LKv4LKo4LONIjoidWsiLCLgsrDgsrfgsr/gsq/gsqjgs40iOiJydSIsIuCysOCziuCyruCzh+CyqOCyv+Cyr+CyqOCzjSI6InJvIiwi4LKy4LK/4LKl4LOB4LK14LOH4LKo4LK/4LKv4LKo4LONIjoibHQiLCLgsrLgs43gsq/gsr7gsp/gsr/gsqjgs40iOiJsYSIsIuCysuCzjeCyr+CyvuCyn+CzjeCyteCyv+Cyr+CyqOCzjeKAjCI6Imx2Iiwi4LK14LK/4LKv4LOG4LKf4LON4LKo4LK+4LKu4LK/IjoidmkiLCLgsrXgs4bgsrLgs43gsrbgs40iOiJjeSIsIuCyuOCysOCzjeCyrOCyv+Cyr+CyqOCzjSI6InNyIiwi4LK44LON4LKV4LK+4LKf4LON4LK44LONIOCyl+CzjeCyr+CyvuCysuCyv+CyleCzjSI6ImdkIiwi4LK44LON4LKq4LON4LKv4LK+4LKo4LK/4LK34LONIjoiZXMiLCLgsrjgs43gsrLgs4rgsrXgsr7gspXgs40iOiJzayIsIuCyuOCzjeCysuCziuCyteCzhuCyqOCyv+Cyr+CyqOCzjSI6InNsIiwi4LK44LON4LK14LOA4LKh4LK/4LK34LONIjoic3YiLCLgsrngsoLgspfgs4fgsrDgsr/gsq/gsqjgs40iOiJodSIsIuCyueCyr+CypeCyv+Cyr+CyqOCzjeKAjCDgspXgs43gsrDgsr/gsq/gs4vgsrLgs43igIwiOiJodCIsIuCyueCyv+CyguCypuCyvyI6ImhpIiwi4LK54LOA4LKs4LON4LKw4LOCIjoiaGUiLCLgtIXgtK7gtL7gtLHgtL/gtJXgtY0iOiJhbSIsIuC0heC1vOC0ruC1h+C0qOC0v+C0r+C1uyI6Imh5Iiwi4LSF4LW94LSs4LWH4LSo4LS/4LSv4LW7Ijoic3EiLCLgtIXgtLjgtbzgtKzgtYjgtJzgtL7gtKjgtL8iOiJheiIsIuC0heC0seC0rOC0v+C0leC1jSI6ImFyIiwi4LSH4LSo4LWN4LSk4LWL4LSo4LWH4LS34LWN4LSv4LW7IjoiaWQiLCLgtIfgtILgtJfgtY3gtLLgtYDgtLfgtY0iOiJlbiIsIuC0h+C0seC1jeC0seC0vuC0suC0v+C0r+C1uyI6Iml0Iiwi4LSJ4LSV4LWN4LSw4LWH4LSo4LS/4LSv4LW7IjoidWsiLCLgtIngtLjgtY3gtKzgtYbgtJXgtY3gtJXgtY0iOiJ1eiIsIuC0juC0uOC1jeKAjOC0quC1huC0sOC0qOC1jeC0pOC1iyI6ImVvIiwi4LSO4LS44LWN4LSx4LWN4LSx4LWL4LSj4LS/4LSv4LW7IjoiZXQiLCLgtJDgtLjgtY3igIzgtLLgtL7gtbvgtKHgtL/gtJXgtY0iOiJpcyIsIuC0kOC0seC0v+C0t+C1jSI6ImdhIiwi4LSV4LSo4LWN4LSo4LSfIjoia24iLCLgtJXgtL7gtLHgtY3gtLHgtLLgtbsiOiJjYSIsIuC0leC1geC1vOC0puC1jeC0puC0v+C0t+C1jSI6Imt1Iiwi4LSV4LWG4LS+4LSx4LS/4LSv4LW7Ijoia28iLCLgtJXgtY3gtLDgtYrgtK/gtYfgtLfgtY3gtK/gtbsiOiJociIsIuC0l+C0suC1gOC0t+C1jeC0r+C1uyI6ImdsIiwi4LSX4LWN4LSw4LWA4LSV4LWN4LSV4LWNIjoiZWwiLCLgtJrgtYbgtJXgtY3gtJXgtY0iOiJjcyIsIuC0muC1iOC0qOC1gOC0uOC1jSAo4LSq4LSw4LSu4LWN4LSq4LSw4LS+4LSX4LSk4LSCKSI6InpoLXR3Iiwi4LSa4LWI4LSo4LWA4LS44LWNICjgtLLgtJjgtYLgtJXgtLDgtL/gtJrgtY3gtJrgtKTgtY0pIjoiemgtY24iLCLgtJzgtbzgtK7gtY3gtK7gtbsiOiJkZSIsIuC0nOC0vuC0quC1jeC0quC0qOC1gOC0uOC1jeKAjCI6ImphIiwi4LSf4LW84LSV4LWN4LSV4LS/4LS34LWNIjoidHIiLCLgtKHgtJrgtY3gtJrgtY0iOiJubCIsIuC0oeC0vuC0qOC0v+C0t+C1jSI6ImRhIiwi4LSk4LS+4LSv4LWNIjoidGgiLCLgtKTgtYbgtLLgtYHgtJngtY3gtJXgtY0iOiJ0ZSIsIuC0qOC1i+C1vOC0teC1gOC0nOC0v+C0r+C1uyI6Im5iIiwi4LSq4LWH4LW84LS34LWN4LSv4LW7IjoiZmEiLCLgtKrgtYvgtbzgtJrgtY3gtJrgtYHgtJfgtYDgtLjgtY0iOiJwdCIsIuC0quC1i+C0s+C0v+C0t+C1jSI6InBsIiwi4LSr4LS/4LSo4LWN4LSo4LS/4LS34LWNIjoiZmkiLCLgtKvgtY3gtLDgtYbgtJ7gtY3gtJrgtY0iOiJmciIsIuC0rOC1vOC0ruC1gOC0uOC1jSI6Im15Iiwi4LSs4LW+4LSX4LWH4LSx4LS/4LSv4LW7IjoiYmciLCLgtKzgtL7gtLjgtY3gtJXgtY0iOiJldSIsIuC0rOC1huC0suC0vuC0seC1geC0t+C1jeC0r+C1uyI6ImJlIiwi4LSu4LSC4LSX4LWL4LSz4LS/4LSv4LW7IjoibW4iLCLgtK7gtLLgtK/gtL7gtLPgtIIiOiJtbCIsIuC0ruC0suC0r+C1jSI6Im1zIiwi4LSu4LSx4LS+4LSg4LS/IjoibXIiLCLgtK7gtL7gtLjgtKHgtYvgtKPgtL/gtK/gtbsiOiJtayIsIuC0ruC0vuC1vuC0n+C1jeC0n+C1gOC0uOC1jSI6Im10Iiwi4LSu4LWX4LSx4LS/IjoibWkiLCLgtLLgtL7gtLHgtY3gtLHgtL/gtbsiOiJsYSIsIuC0suC0vuC0seC1jeC0seC1jeKAjOC0teC0v+C0r+C1uyI6Imx2Iiwi4LSy4LS/4LSk4LWN4LS14LWH4LSo4LS/4LSv4LW7IjoibHQiLCLgtLXgtL/gtK/gtLHgtY3gtLHgtY3gtKjgtL7gtK7gtYDgtLjgtY0iOiJ2aSIsIuC0teC1huC1veC0t+C1jSI6ImN5Iiwi4LS44LWB4LSz4LWBIjoienUiLCLgtLjgtYbgtbzgtKzgtL/gtK/gtbsiOiJzciIsIuC0uOC1jeC0leC1i+C0n+C1jeC0n+C1jeC0uOC1jSDgtJfgtY3gtK/gtL7gtLLgtL/gtJXgtY0iOiJnZCIsIuC0uOC1jeC0quC0vuC0qOC0v+C0t+C1jSI6ImVzIiwi4LS44LWN4LSy4LWL4LS14LS+4LSV4LWNIjoic2siLCLgtLjgtY3gtLLgtYvgtLXgtYfgtKjgtL/gtK/gtbsiOiJzbCIsIuC0uOC1jeC0teC1gOC0oeC0v+C0t+C1jSI6InN2Iiwi4LS54LSC4LSX4LWH4LSx4LS/4LSv4LW7IjoiaHUiLCLgtLngtL/gtKjgtY3gtKbgtL8iOiJoaSIsIuC0ueC1gOC0rOC1jeC0sOC1gSI6ImhlIiwi4LS54LWG4LSv4LWN4LSk4LS/4LSv4LW7IOC0leC1jeC0sOC0r+C1i+C1viI6Imh0Iiwi4LSx4LS34LWN4LSv4LW7IjoicnUiLCLgtLHgtYrgtK7gtYfgtKjgtL/gtK/gtbsiOiJybyIsImFsYsOhbsSNaW5hIjoic3EiLCJhbWhhcsSNaW5hIjoiYW0iLCJhcmFixI1pbmEiOiJhciIsImFybcOpbsSNaW5hIjoiaHkiLCJhemVyYmFqZMW+YW7EjWluYSI6ImF6IiwiYmFybcSNaW5hIjoibXkiLCJiaWVsb3J1xaF0aW5hIjoiYmUiLCJidWxoYXLEjWluYSI6ImJnIiwixI3DrW7FoXRpbmEgKHRyYWRpxI1uw6EpIjoiemgtdHciLCJkw6FuxI1pbmEiOiJkYSIsImVzdMOzbsSNaW5hIjoiZXQiLCJmw61uxI1pbmEiOiJmaSIsImZyYW5jw7p6xaF0aW5hIjoiZnIiLCJnYWzDrWNpasSNaW5hIjoiZ2wiLCJncsOpxI10aW5hIjoiZWwiLCJoYWl0c2vDoSBrcmVvbMSNaW5hIjoiaHQiLCJoZWJyZWrEjWluYSI6ImhlIiwiaGluZMSNaW5hIjoiaGkiLCJob2xhbmTEjWluYSI6Im5sIiwiY2hvcnbDoXTEjWluYSI6ImhyIiwiaW5kb27DqXrFoXRpbmEiOiJpZCIsIsOtcsSNaW5hIjoiZ2EiLCJpc2xhbmTEjWluYSI6ImlzIiwiamFwb27EjWluYSI6ImphIiwia2FubmFkxI1pbmEiOiJrbiIsImthdGFsw6FuxI1pbmEiOiJjYSIsImvDs3JlasSNaW5hIjoia28iLCJrdXJkxI1pbmEiOiJrdSIsImxhdGluxI1pbmEiOiJsYSIsImxpdG92xI1pbmEiOiJsdCIsIm1hY2Vkw7NuxI1pbmEiOiJtayIsIm1hxI9hcsSNaW5hIjoiaHUiLCJtYWxhasOhbcSNaW5hIjoibWwiLCJtYWxhasSNaW5hIjoibXMiLCJtYWx0xI1pbmEiOiJtdCIsIm1hb3JpasSNaW5hIjoibWkiLCJtYXJhdMSNaW5hIjoibXIiLCJtb25nb2zEjWluYSI6Im1uIiwibmVtxI1pbmEiOiJkZSIsIm7Ds3LEjWluYSI6Im5iIiwicGVyesWhdGluYSI6ImZhIiwicG/EvsWhdGluYSI6InBsIiwicG9ydHVnYWzEjWluYSI6InB0IiwicnVtdW7EjWluYSI6InJvIiwic2xvdmVuxI1pbmEiOiJzayIsInNsb3ZpbsSNaW5hIjoic2wiLCJzcmLEjWluYSI6InNyIiwixaFrw7N0c2thIGdhZWzEjWluYSI6ImdkIiwixaFwYW5pZWzEjWluYSI6ImVzIiwixaF2w6lkxI1pbmEiOiJzdiIsInRhbGlhbsSNaW5hIjoiaXQiLCJ0ZWx1Z8SNaW5hIjoidGUiLCJ0aGFqxI1pbmEiOiJ0aCIsInVrcmFqaW7EjWluYSI6InVrIiwidmlldG5hbcSNaW5hIjoidmkiLCJ3YWxlxaF0aW5hIjoiY3kiLCJ6dWx1xaF0aW5hIjoienUiLCJpc2ktYWxiYW5pYSI6InNxIiwiaXNpLWFtaGFyaWMiOiJhbSIsImlzaS1hcmFiaWMiOiJhciIsImlzaS1hcm1lbmlhbiI6Imh5IiwiaXNpLWF6ZXJiYWlqYW5pIjoiYXoiLCJpc2ktYmFzcXVlIjoiZXUiLCJpc2ktYmVsYXJ1c2lhbiI6ImJlIiwiaXNpLWJ1bGdhcmlhbiI6ImJnIiwiaXNpLWJ1cm1lc2UiOiJteSIsImlzaS1jYXRhbGFuIjoiY2EiLCJpc2ktY2hpbmVzZSAoc2ltcGxpZmllZCkiOiJ6aC1jbiIsImlzaS1jaGluZXNlICh0cmFkaXRpb25hbCkiOiJ6aC10dyIsImlzaS1jcm9hdGlhbiI6ImhyIiwiaXNpLWN6ZWNoIjoiY3MiLCJpc2ktZGFuaXNoIjoiZGEiLCJpc2ktZHV0Y2giOiJubCIsImlzaS1lbmdsaXNoIjoiZW4iLCJpc2ktZXNwZXJhbnRvIjoiZW8iLCJpc2ktZXN0b25pYW4iOiJldCIsImlzaS1maW5uaXNoIjoiZmkiLCJpc2ktZnJlbmNoIjoiZnIiLCJpc2ktZ2FsaWNpYW4iOiJnbCIsImlzaS1nZXJtYW4iOiJkZSIsImlzaS1ncmVlayI6ImVsIiwiaXNpLWhhaXRpYW4gY3Jlb2xlIjoiaHQiLCJpc2ktaGFuZ2FyaWFuIjoiaHUiLCJpc2ktaGVicmV3IjoiaGUiLCJpc2ktaGluZGkiOiJoaSIsImlzaS1pY2VsYW5kaWMiOiJpcyIsImlzaS1pbmRvbmVzaWFuIjoiaWQiLCJpc2ktaXJpc2giOiJnYSIsImlzaS1pdGFsaWFuIjoiaXQiLCJpc2ktamFwYW5lc2UiOiJqYSIsImlzaS1rYW5uYWRhIjoia24iLCJpc2kta29yZWFuIjoia28iLCJpc2kta3VyZGlzaCI6Imt1IiwiaXNpLWxhdGluIjoibGEiLCJpc2ktbGF0dmlhbiI6Imx2IiwiaXNpLWxpdGh1YW5pYW4iOiJsdCIsImlzaS1tYWNlZG9uaWFuIjoibWsiLCJpc2ktbWFsYXkiOiJtcyIsImlzaS1tYWxheWFsYW0iOiJtbCIsImlzaS1tYWx0ZXNlIjoibXQiLCJpc2ktbWFvcmkiOiJtaSIsImlzaS1tYXJhdGhpIjoibXIiLCJpc2ktbW9uZ29saWFuIjoibW4iLCJpc2ktbm9yd2VnaWFuIjoibmIiLCJpc2ktcGVyc2lhbiI6ImZhIiwiaXNpLXBvbGlzaCI6InBsIiwiaXNpLXBvcnR1Z3Vlc2UiOiJwdCIsImlzaS1yb21hbmlhbiI6InJvIiwiaXNpLXJ1c3NpYW4iOiJydSIsImlzaS1zY290cyBnYWVsaWMiOiJnZCIsImlzaS1zZXJiaWFuIjoic3IiLCJpc2ktc2xvdmFrIjoic2siLCJpc2ktc2xvdmVuaWFuIjoic2wiLCJpc2ktc3BhbmlzaCI6ImVzIiwiaXNpLXN3ZWRpc2giOiJzdiIsImlzaS10ZWx1Z3UiOiJ0ZSIsImlzaS10aGFpIjoidGgiLCJpc2ktdHVya2lzaCI6InRyIiwiaXNpLXVrcmFpbmlhbiI6InVrIiwiaXNpLXV6YmVrIjoidXoiLCJpc2ktdmlldG5hbWVzZSI6InZpIiwiaXNpLXdlbHNoIjoiY3kiLCJpc2l6dWx1IjoienUiLCJhbGJhbmlhIjoic3EiLCJhcm1lbmlhIjoiaHkiLCJhemVyYmFpamFuIjoiYXoiLCJiZWxhbmRhIjoibmwiLCJiZWxhcnVzIjoiYmUiLCJidWxnYXJpYSI6ImJnIiwiY2luYSAobXVkYWgpIjoiemgtY24iLCJjaW5hICh0cmFkaXNpb25hbCkiOiJ6aC10dyIsImNyb2F0aWEiOiJociIsImRlbm1hcmsiOiJkYSIsImVzdG9uaWEiOiJldCIsImZpbmxhbmQiOiJmaSIsImdhZWxpYyBzY290bGFuZCI6ImdkIiwiZ2FsaWNpYSI6ImdsIiwiaHVuZ2FyeSI6Imh1IiwiaWJyYW5pIjoiaGUiLCJpY2VsYW5kIjoiaXMiLCJpbmRvbmVzaWEiOiJpZCIsImluZ2dlcmlzIjoiZW4iLCJpcmVsYW5kIjoiZ2EiLCJpdGFsaSI6Iml0IiwiamVwdW4iOiJqYSIsImplcm1hbiI6ImRlIiwia29yZWEiOiJrbyIsImtyZW9sIGhhaXRpIjoiaHQiLCJrdXJkaXN0YW4iOiJrdSIsImxhdHZpYSI6Imx2IiwibGl0aHVhbmlhIjoibHQiLCJtYWNlZG9uaWEiOiJtayIsIm1hbHRhIjoibXQiLCJtZWxheXUiOiJtcyIsIm1vbmdvbGlhIjoibW4iLCJteWFubWFyIjoibXkiLCJub3J3YXkiOiJuYiIsInBhcnNpIjoiZmEiLCJwZXJhbmNpcyI6ImZyIiwicG9sYW5kIjoicGwiLCJwb3J0dWdpcyI6InB0Iiwicm9tYW5pYSI6InJvIiwicnVzaWEiOiJydSIsInNlcGFueW9sIjoiZXMiLCJzZXJiaWEiOiJzciIsInNsb3ZlbmlhIjoic2wiLCJzd2VkZW4iOiJzdiIsInR1cmtpIjoidHIiLCJ1a3JhaW5lIjoidWsiLCJ2aWV0bmFtIjoidmkiLCJ3YWxlcyI6ImN5Iiwi0LDQt9C10YDQsdCw0LnQtNC20LDQvdGB0LrQuNC5IjoiYXoiLCLQsNC70LHQsNC90YHQutC40LkiOiJzcSIsItCw0LzRhdCw0YDRgdC60LjQuSI6ImFtIiwi0LDQvdCz0LvQuNC50YHQutC40LkiOiJlbiIsItCw0YDQsNCx0YHQutC40LkiOiJhciIsItCw0YDQvNGP0L3RgdC60LjQuSI6Imh5Iiwi0LHQsNGB0LrRgdC60LjQuSI6ImV1Iiwi0LHQtdC70L7RgNGD0YHRgdC60LjQuSI6ImJlIiwi0LHQuNGA0LzQsNC90YHQutC40LkiOiJteSIsItCx0L7Qu9Cz0LDRgNGB0LrQuNC5IjoiYmciLCLQstCw0LvQu9C40LnRgdC60LjQuSI6ImN5Iiwi0LLQtdC90LPQtdGA0YHQutC40LkiOiJodSIsItCy0YzQtdGC0L3QsNC80YHQutC40LkiOiJ2aSIsItCz0LDQu9C40YHQuNC50YHQutC40LkiOiJnbCIsItCz0YDQtdGH0LXRgdC60LjQuSI6ImVsIiwi0LTQsNGC0YHQutC40LkiOiJkYSIsItC40LLRgNC40YIiOiJoZSIsItC40L3QtNC+0L3QtdC30LjQudGB0LrQuNC5IjoiaWQiLCLQuNGA0LvQsNC90LTRgdC60LjQuSI6ImdhIiwi0LjRgdC70LDQvdC00YHQutC40LkiOiJpcyIsItC40YHQv9Cw0L3RgdC60LjQuSI6ImVzIiwi0LjRgtCw0LvRjNGP0L3RgdC60LjQuSI6Iml0Iiwi0LrQsNGC0LDQu9Cw0L3RgdC60LjQuSI6ImNhIiwi0LrQuNGC0LDQudGB0LrQuNC5ICjRgtGA0LDQtNC40YbQuNC+0L3QvdGL0LkpIjoiemgtdHciLCLQutC40YLQsNC50YHQutC40LkgKNGD0L/RgNC+0YnQtdC90L3Ri9C5KSI6InpoLWNuIiwi0LrQvtGA0LXQudGB0LrQuNC5Ijoia28iLCLQutGA0LXQvtC70YzRgdC60LjQuSAo0LPQsNC40YLQuCkiOiJodCIsItC60YPRgNC80LDQvdC00LbQuCI6Imt1Iiwi0LvQsNGC0LjQvdGB0LrQuNC5IjoibGEiLCLQu9Cw0YLRi9GI0YHQutC40LkiOiJsdiIsItC70LjRgtC+0LLRgdC60LjQuSI6Imx0Iiwi0LzQsNC60LXQtNC+0L3RgdC60LjQuSI6Im1rIiwi0LzQsNC70LDQudGB0LrQuNC5IjoibXMiLCLQvNCw0LvRjNGC0LjQudGB0LrQuNC5IjoibXQiLCLQvNCw0L7RgNC4IjoibWkiLCLQvNC+0L3Qs9C+0LvRjNGB0LrQuNC5IjoibW4iLCLQvdC10LzQtdGG0LrQuNC5IjoiZGUiLCLQvdC40LTQtdGA0LvQsNC90LTRgdC60LjQuSI6Im5sIiwi0L3QvtGA0LLQtdC20YHQutC40LkiOiJuYiIsItC/0LXRgNGB0LjQtNGB0LrQuNC5IjoiZmEiLCLQv9C+0LvRjNGB0LrQuNC5IjoicGwiLCLQv9C+0YDRgtGD0LPQsNC70YzRgdC60LjQuSI6InB0Iiwi0YDRg9C80YvQvdGB0LrQuNC5Ijoicm8iLCLRgNGD0YHRgdC60LjQuSI6InJ1Iiwi0YHQtdGA0LHRgdC60LjQuSI6InNyIiwi0YHQu9C+0LLQsNGG0LrQuNC5Ijoic2siLCLRgdC70L7QstC10L3RgdC60LjQuSI6InNsIiwi0YLQsNC50YHQutC40LkiOiJ0aCIsItGC0YPRgNC10YbQutC40LkiOiJ0ciIsItGD0LfQsdC10LrRgdC60LjQuSI6InV6Iiwi0YPQutGA0LDQuNC90YHQutC40LkiOiJ1ayIsItGE0LjQvdGB0LrQuNC5IjoiZmkiLCLRhNGA0LDQvdGG0YPQt9GB0LrQuNC5IjoiZnIiLCLRhdC40L3QtNC4IjoiaGkiLCLRhdC+0YDQstCw0YLRgdC60LjQuSI6ImhyIiwi0YfQtdGI0YHQutC40LkiOiJjcyIsItGI0LLQtdC00YHQutC40LkiOiJzdiIsItGI0L7RgtC70LDQvdC00YHQutC40LkgKNCz0Y3Qu9GM0YHQutC40LkpIjoiZ2QiLCLRjdGB0L/QtdGA0LDQvdGC0L4iOiJlbyIsItGN0YHRgtC+0L3RgdC60LjQuSI6ImV0Iiwi0Y/Qv9C+0L3RgdC60LjQuSI6ImphIiwiYWxiYcWEc2tpIjoic3EiLCJhbWhhcnNraSI6ImFtIiwiYW5naWVsc2tpIjoiZW4iLCJhcmFic2tpIjoiYXIiLCJhemVyc2tpIjoiYXoiLCJiYXNraWpza2kiOiJldSIsImJpYcWCb3J1c2tpIjoiYmUiLCJiaXJtYcWEc2tpIjoibXkiLCJidcWCZ2Fyc2tpIjoiYmciLCJjaGnFhHNraSAodHJhZHljeWpueSkiOiJ6aC10dyIsImNoacWEc2tpICh1cHJvc3pjem9ueSkiOiJ6aC1jbiIsImNob3J3YWNraSI6ImhyIiwiY3plc2tpIjoiY3MiLCJkdcWEc2tpIjoiZGEiLCJlc3RvxYRza2kiOiJldCIsImZpxYRza2kiOiJmaSIsImZyYW5jdXNraSI6ImZyIiwiZ2FsaWN5anNraSI6ImdsIiwiZ3JlY2tpIjoiZWwiLCJoZWJyYWpza2kiOiJoZSIsImhpc3pwYcWEc2tpIjoiZXMiLCJpbmRvbmV6eWpza2kiOiJpZCIsImlybGFuZHpraSI6ImdhIiwiaXNsYW5kemtpIjoiaXMiLCJqYXBvxYRza2kiOiJqYSIsImthdGFsb8WEc2tpIjoiY2EiLCJrb3JlYcWEc2tpIjoia28iLCJrcmVvbHNraSAoaGFpdGkpIjoiaHQiLCJrdXJkeWpza2kiOiJrdSIsImxpdGV3c2tpIjoibHQiLCLFgmFjacWEc2tpIjoibGEiLCLFgm90ZXdza2kiOiJsdiIsIm1hY2Vkb8WEc2tpIjoibWsiLCJtYWxhamFsYW0iOiJtbCIsIm1hbGFqc2tpIjoibXMiLCJtYWx0YcWEc2tpIjoibXQiLCJtb25nb2xza2kiOiJtbiIsIm5pZGVybGFuZHpraSI6Im5sIiwibmllbWllY2tpIjoiZGUiLCJub3J3ZXNraSI6Im5iIiwib3JtaWHFhHNraSI6Imh5IiwicGVyc2tpIjoiZmEiLCJwb2xza2kiOiJwbCIsInBvcnR1Z2Fsc2tpIjoicHQiLCJyb3N5anNraSI6InJ1IiwicnVtdcWEc2tpIjoicm8iLCJzZXJic2tpIjoic3IiLCJzxYJvd2Fja2kiOiJzayIsInPFgm93ZcWEc2tpIjoic2wiLCJzemtvY2tpIGdhZWxpY2tpIjoiZ2QiLCJzendlZHpraSI6InN2IiwidGFqc2tpIjoidGgiLCJ0dXJlY2tpIjoidHIiLCJ1a3JhacWEc2tpIjoidWsiLCJ1emJlY2tpIjoidXoiLCJ3YWxpanNraSI6ImN5Iiwid8SZZ2llcnNraSI6Imh1Iiwid2lldG5hbXNraSI6InZpIiwid8WCb3NraSI6Iml0Iiwi0LDQt9C10YDQsdCw0LnQtNC20LDQvdGB0LrQsNGPIjoiYXoiLCLQsNC70LHQsNC90YHQutCw0Y8iOiJzcSIsItCw0LzRhdCw0YDRgdC60LDRjyI6ImFtIiwi0LDQvdCz0LvRltC50YHQutCw0Y8iOiJlbiIsItCw0YDQsNCx0YHQutCw0Y8iOiJhciIsItCw0YDQvNGP0L3RgdC60LDRjyI6Imh5Iiwi0LHQsNC70LPQsNGA0YHQutCw0Y8iOiJiZyIsItCx0LDRgdC60YHQutCw0Y8iOiJldSIsItCx0LXQu9Cw0YDRg9GB0LrQsNGPIjoiYmUiLCLQslwn0LXRgtC90LDQvNGB0LrQsNGPIjoidmkiLCLQstCw0LvRltC50YHQutCw0Y8iOiJjeSIsItCy0LXQvdCz0LXRgNGB0LrQsNGPIjoiaHUiLCLQs9Cw0ZbRhtGP0L3RgdC60LDRjyDQutGA0Y3QvtC70YzRgdC60LDRjyI6Imh0Iiwi0LPQsNC70LDQvdC00YHQutCw0Y8iOiJubCIsItCz0LDQu9GW0YHRltC50YHQutCw0Y8iOiJnbCIsItCz0YDRjdGH0LDRgdC60LDRjyI6ImVsIiwi0LTQsNGG0LrQsNGPIjoiZGEiLCLRltC90LTQsNC90LXQt9GW0LnRgdC60LDRjyI6ImlkIiwi0ZbRgNC70LDQvdC00YHQutCw0Y8iOiJnYSIsItGW0YHQu9Cw0L3QtNGB0LrQsNGPIjoiaXMiLCLRltGB0L/QsNC90YHQutCw0Y8iOiJlcyIsItGW0YLQsNC70YzRj9C90YHQutCw0Y8iOiJpdCIsItGW0Z7RgNGL0YIiOiJoZSIsItC60LDRgNGN0LnRgdC60LDRjyI6ImtvIiwi0LrQsNGC0LDQu9C+0L3RgdC60LDRjyI6ImNhIiwi0LrRltGC0LDQudGB0LrQsNGPICjRgdC/0YDQvtGI0YfQsNC90LDRjykiOiJ6aC1jbiIsItC60ZbRgtCw0LnRgdC60LDRjyAo0YLRgNCw0LTRi9GG0YvQudC90LDRjykiOiJ6aC10dyIsItC60YPRgNC00YHQutCw0Y8gKNC60YPRgNC80LDQvdC00LbRiykiOiJrdSIsItC70LDRgtGL0YjRgdC60LDRjyI6Imx2Iiwi0LvQsNGG0ZbQvdGB0LrQsNGPIjoibGEiLCLQu9GW0YLQvtGe0YHQutCw0Y8iOiJsdCIsItC8XCfRj9C90LzQsNC90YHQutCw0Y8gKNCx0ZbRgNC80LDQvdGB0LrQsNGPKSI6Im15Iiwi0LzQsNCw0YDRiyI6Im1pIiwi0LzQsNC60LXQtNC+0L3RgdC60LDRjyI6Im1rIiwi0LzQsNC70LDQudGB0LrQsNGPIjoibXMiLCLQvNCw0LvRjNGC0YvQudGB0LrQsNGPIjoibXQiLCLQvNCw0L3Qs9C+0LvRjNGB0LrQsNGPIjoibW4iLCLQvdCw0YDQstC10LbRgdC60LDRjyI6Im5iIiwi0L3Rj9C80LXRhtC60LDRjyI6ImRlIiwi0L/QsNGA0YLRg9Cz0LDQu9GM0YHQutCw0Y8iOiJwdCIsItC/0LXRgNGB0ZbQtNGB0LrQsNGPIjoiZmEiLCLQv9C+0LvRjNGB0LrQsNGPIjoicGwiLCLRgNGD0LzRi9C90YHQutCw0Y8iOiJybyIsItGA0YPRgdC60LDRjyI6InJ1Iiwi0YHQtdGA0LHRgdC60LDRjyI6InNyIiwi0YHQu9Cw0LLQsNGG0LrQsNGPIjoic2siLCLRgdC70LDQstC10L3RgdC60LDRjyI6InNsIiwi0YLQsNC50YHQutCw0Y8iOiJ0aCIsItGC0YPRgNGN0YbQutCw0Y8iOiJ0ciIsItGC0Y3Qu9GD0LPRgyI6InRlIiwi0YPQt9Cx0LXQutGB0LrQsNGPIjoidXoiLCLRg9C60YDQsNGW0L3RgdC60LDRjyI6InVrIiwi0YTRltC90YHQutCw0Y8iOiJmaSIsItGE0YDQsNC90YbRg9C30YHQutCw0Y8iOiJmciIsItGF0LDRgNCy0LDRhtC60LDRjyI6ImhyIiwi0YXRltC90LTQt9GWIjoiaGkiLCLRh9GN0YjRgdC60LDRjyI6ImNzIiwi0YjQsNGC0LvQsNC90LTRgdC60LDRjyDQs9GN0LvRjNGB0LrQsNGPIjoiZ2QiLCLRiNCy0LXQtNGB0LrQsNGPIjoic3YiLCLRjdGB0L/QtdGA0LDQvdGC0LAiOiJlbyIsItGN0YHRgtC+0L3RgdC60LDRjyI6ImV0Iiwi0Y/Qv9C+0L3RgdC60LDRjyI6ImphIiwiYW1hcmlraXNodCI6ImFtIiwiYW5nbGlzaHQiOiJlbiIsImFyYWJpc2h0IjoiYXIiLCJhcm1lbmlzaHQiOiJoeSIsImF6ZXJpc2h0IjoiYXoiLCJiYXNraXNodCI6ImV1IiwiYmlybWFuaXNodCI6Im15IiwiYmplbGxvcnVzaXNodCI6ImJlIiwiYnVsbGdhcmlzaHQiOiJiZyIsIsOnZWtpc2h0IjoiY3MiLCJkYW5pc2h0IjoiZGEiLCJlc3RvbmlzaHQiOiJldCIsImZpbmxhbmRpc2h0IjoiZmkiLCJmcsOrbmdqaXNodCI6ImZyIiwiZ2FsaWNpYW5pc2h0IjoiZ2wiLCJnYWxpc2h0ZSBza29jZXplIjoiZ2QiLCJncmVxaXNodCI6ImVsIiwiZ2plcm1hbmlzaHQiOiJkZSIsImhlYnJhaXNodCI6ImhlIiwiaGluZGlzaHQiOiJoaSIsImhvbGFuZGlzaHQiOiJubCIsImh1bmdhcmlzaHQiOiJodSIsImluZG9uZXppc2h0IjoiaWQiLCJpcmxhbmRpc2h0IjoiZ2EiLCJpc2xhbmRpc2h0IjoiaXMiLCJpdGFsaXNodCI6Iml0IiwiamFwb25pc2h0IjoiamEiLCJrYW5hZGEiOiJrbiIsImthdGFsb25pc2h0IjoiY2EiLCJraW5lemlzaHQgKGUgdGhqZXNodHVhcikiOiJ6aC1jbiIsImtpbmV6aXNodCAodHJhZGljaW9uYWxlKSI6InpoLXR3Iiwia29yZWFuaXNodCI6ImtvIiwia3Jlb2xpc2h0ZSBoYWl0aWFuZSI6Imh0Iiwia3JvYXRpc2h0IjoiaHIiLCJsYXRpbmlzaHQiOiJsYSIsImxldG9uaXNodCI6Imx2IiwibGl0dWFuaXNodCI6Imx0IiwibWFsYWphbGFtaXNodCI6Im1sIiwibWFsYWp6aXNodCI6Im1zIiwibWFsdGV6ZSI6Im10IiwibWFvcmlzaHQiOiJtaSIsIm1hcWVkb25pc2h0IjoibWsiLCJtYXJhdGlzaHQiOiJtciIsIm1vbmdvbGlzaHQiOiJtbiIsIm5vcnZlZ2ppc2h0IjoibmIiLCJwZXJzaXNodCI6ImZhIiwicG9sb25pc2h0IjoicGwiLCJwb3J0dWdhbGlzaHQiOiJwdCIsInJ1bWFuaXNodCI6InJvIiwicnVzaXNodCI6InJ1Iiwic2VyYmlzaHQiOiJzciIsInNsbG92YWtpc2h0Ijoic2siLCJzbGxvdmVuaXNodCI6InNsIiwic3Bhbmppc2h0IjoiZXMiLCJzdWVkaXNodCI6InN2Iiwic2hxaXAiOiJzcSIsInRhamxhbmRpc2h0IjoidGgiLCJ0ZWx1Z2lzaHQiOiJ0ZSIsInR1cnFpc2h0IjoidHIiLCJ1ZWxsc2lzaHQiOiJjeSIsInVrcmFpbmlzaHQiOiJ1ayIsInV6YmVraXNodCI6InV6IiwidmlldG5hbWlzaHQiOiJ2aSIsIuGIgOGKleGMi+GIquGKmyI6Imh1Iiwi4YiF4YqV4Yu14YqbIjoiaGkiLCLhiIrhibXhi4zhipXhipsiOiJsdCIsIuGIi+GJsuGKleGKmyI6ImxhIiwi4YiL4Ym14Ymq4Yur4YqbIjoibHYiLCLhiJvhiIvhi6vhiIvhiJ3hipsiOiJtbCIsIuGIm+GIi+GLreGKmyI6Im1zIiwi4Yib4YiN4Ymy4Yi14YqbIjoibXQiLCLhiJvhiKvhibLhipsiOiJtciIsIuGIm+GLruGIquGKmyI6Im1pIiwi4Yic4YmE4Yu24YqS4Yur4YqbIjoibWsiLCLhiJ7hipXhjI7hiIrhi6vhipsiOiJtbiIsIuGIq+GIveGLq+GKmyI6InJ1Iiwi4Yiu4Yib4YqS4Yur4YqV4YqbIjoicm8iLCLhiLDhiK3hiaLhi6vhipsiOiJzciIsIuGIteGIjuGJq+GKreGKmyI6InNrIiwi4Yi14YiO4Yms4YqV4Yur4YqbIjoic2wiLCLhiLXhi4rhi7XhipXhipsiOiJzdiIsIuGIteGNk+GKkuGIveGKmyI6ImVzIiwi4Ymg4Yit4Yib4YqbIjoibXkiLCLhiaHhiI3hjIvhiKrhi6vhipsiOiJiZyIsIuGJo+GIteGKreGKmyI6ImV1Iiwi4Ymk4YiL4Yip4Yi14YqbIjoiYmUiLCLhiarhibXhipPhiJ3hipsiOiJ2aSIsIuGJseGIreGKreGKmyI6InRyIiwi4Ymz4Yut4YqbIjoidGgiLCLhibThiInhjInhipsiOiJ0ZSIsIuGJu+GLreGKleGKmyAgICjhiYDhiIvhiIkpIjoiemgtY24iLCLhibvhi63hipXhipsgICjhiaPhiJXhiIvhi4rhi40pIjoiemgtdHciLCLhibzhiq3hipsiOiJjcyIsIuGKluGIreGLjOGMheGLq+GKleGKmyI6Im5iIiwi4Yqg4YiN4Ymj4YqV4Yur4YqbIjoic3EiLCLhiqDhiJvhiK3hipsiOiJhbSIsIuGKoOGIreGImOGKkuGLq+GKmyI6Imh5Iiwi4Yqg4Yuc4Yit4Ymj4Yut4YyD4YqV4YqbIjoiYXoiLCLhiqDhi63hiKrhiL0iOiJnYSIsIuGKoOGLreGIteGIi+GKleGLteGKmyI6ImlzIiwi4Yqh4Yud4Ymk4Yqt4YqbIjoidXoiLCLhiqThiLXhibbhipLhi6vhipsiOiJldCIsIuGKpOGIteGNkOGIq+GKleGJtiI6ImVvIiwi4Yql4YqV4Yu24YqU4Yui4Yur4YqbIjoiaWQiLCLhiqXhipXhjI3hiIrhi53hipsiOiJlbiIsIuGKqeGIreGLteGIveGKmyI6Imt1Iiwi4Yqr4Ymz4YiL4YqV4YqbIjoiY2EiLCLhiqvhipPhi7PhipsiOiJrbiIsIuGKreGIruGKpOGIveGLq+GKmyI6ImhyIiwi4Yqu4Yiq4Yur4YqbIjoia28iLCLhi4zhiI3hiL0iOiJjeSIsIuGLkOGIqOGJpeGKmyI6ImFyIiwi4YuV4Yml4Yir4Yut4Yi14YylIjoiaGUiLCLhi5nhiInhipsiOiJ6dSIsIuGLqOGIg+GLreGJsiDhiq3hiKjhiqbhiIzhipsiOiJodCIsIuGLqOGIteGKruGJtSDhjIzhiI3hiq3hipsiOiJnZCIsIuGLqeGKreGIrOGKleGKmyI6InVrIiwi4Yuw4Ym94YqbIjoibmwiLCLhi7ThipXhiL3hipsiOiJkYSIsIuGMgOGIreGImOGKleGKmyI6ImRlIiwi4YyD4Y2T4YqV4YqbIjoiamEiLCLhjIvhiIrhiLrhi6vhipsiOiJnbCIsIuGMjeGIquGKreGKmyI6ImVsIiwi4Yyj4YiK4Yur4YqV4YqbIjoiaXQiLCLhjYjhiKjhipXhiLPhi63hipsiOiJmciIsIuGNiuGKkuGIveGKmyI6ImZpIiwi4Y2Q4Yit4Yi64Yur4YqbIjoiZmEiLCLhjZbhiIrhiL3hipsiOiJwbCIsIuGNluGIreGJseGMi+GIiuGKmyI6InB0IiwiYWxiYW4iOiJzcSIsImFsbWFuIjoiZGUiLCJhbWFyaWtjyZkiOiJhbSIsImF6yZlyYmF5Y2FuIGRpbGkiOiJheiIsImJhc2siOiJldSIsImJlbGFydXNjYSI6ImJlIiwiYm9scWFyIjoiYmciLCLDp2V4IjoiY3MiLCLDp2luICjJmW5cJ8mZbsmZdmkpIjoiemgtdHciLCLDp2luIChzYWTJmWzJmcWfZGlyaWxtacWfKSI6InpoLWNuIiwiZGFuaW1hcmthIjoiZGEiLCJlcm3JmW5pIjoiaHkiLCJlc3RvbiI6ImV0IiwiyZlyyZliIjoiYXIiLCJmYXJzIGRpbGkiOiJmYSIsImZpbiI6ImZpIiwiZnJhbnPEsXoiOiJmciIsImhhaXRpIGtyZW9sIGRpbGkiOiJodCIsImhpbmQiOiJoaSIsInhvcnZhdCI6ImhyIiwiaXNwYW4iOiJlcyIsImnMh25kb25leml5YSI6ImlkIiwiacyHbmdpbGlzIjoiZW4iLCJpzIdybGFuZCI6ImdhIiwiacyHc2xhbmQiOiJpcyIsImnMh3N2ZcOnIjoic3YiLCJpzId0YWx5YW4iOiJpdCIsImnMh3ZyaXQiOiJoZSIsImthdGFsYW4iOiJjYSIsImtvcmV5YSI6ImtvIiwia8O8cmQgZGlsaSAoa3VybWFuY2kpIjoia3UiLCJxYWxpc2lhbiI6ImdsIiwibGF0xLFuIjoibGEiLCJsYXTEscWfIjoibHYiLCJsaXR2YSI6Imx0IiwibWFjYXIiOiJodSIsIm1ha2Vkb25peWEiOiJtayIsIm1hb3JpY8mZIjoibWkiLCJtb25xb2xjYSI6Im1uIiwibXlhbm1hIChiaXJtYSkgZGlsaSI6Im15Iiwibm9ydmXDpyI6Im5iIiwiw7Z6YsmZayI6InV6IiwicG9seWFrIjoicGwiLCJwb3J0dXFhbCI6InB0IiwicnVtxLFuIjoicm8iLCJydXMiOiJydSIsInNlcmIiOiJzciIsInNsb3ZlbiI6InNsIiwixZ9vdGxhbmQgKGtlbHQpIjoiZ2QiLCJ0YXljYSI6InRoIiwidGVsdXF1IjoidGUiLCJ0w7xyayI6InRyIiwidWVscyI6ImN5IiwidWtyYXluYSI6InVrIiwidnlldG5hbSI6InZpIiwieWFwb24iOiJqYSIsInl1bmFuIjoiZWwiLCJ6dWx1IGRpbGkiOiJ6dSIsImFsYmFuacW8Ijoic3EiLCJhbcSnYXJpIjoiYW0iLCJhcm1lbiI6Imh5IiwiYcW8ZXJiYWrEoWFuaSI6ImF6IiwiYmVsYXJ1c3N1IjoiYmUiLCJidWxnYXJ1IjoiYmciLCLEi2VrIjoiY3MiLCLEi2luacW8IChzZW1wbGlmaWthdCkiOiJ6aC1jbiIsIsSLaW5pxbwgKHRyYWRpenpqb25hbGkpIjoiemgtdHciLCJjcmVvbGUgaGFpdGkiOiJodCIsImRhbmnFvCI6ImRhIiwiZWJyYWprIjoiaGUiLCJlc3RvbmphbiI6ImV0IiwiZmlubGFuZGnFvCI6ImZpIiwiZnJhbsSLacW8IjoiZnIiLCLEoWFwcHVuacW8IjoiamEiLCLEoWVybWFuacW8IjoiZGUiLCJnYWVsaWMgdGFsLWlza2/Ei8SLacW8aSI6ImdkIiwiZ2FsaXpqYW4iOiJnbCIsImdyaWVnIjoiZWwiLCJnxKdhcmJpIjoiYXIiLCLEp2luZGkiOiJoaSIsImluZG9uZcW8amFuIjoiaWQiLCJpbmdsacW8IjoiZW4iLCJpcmxhbmRpxbwiOiJnYSIsImlzbGFuZGnFvCI6ImlzIiwia3JvYXQiOiJociIsImt1cmQgKGt1cm1hbmppKSI6Imt1IiwibGF0dmphbiI6Imx2IiwibGl0d2VuIjoibHQiLCJtYcSLZWRvbmphbiI6Im1rIiwibWFsYXNqYW4iOiJtcyIsIm1hbHRpIjoibXQiLCJtYXJhdGkiOiJtciIsIm1qYW5tYXIgKGJ1cm1hKSI6Im15IiwibW9uZ29samFuIjoibW4iLCJub3J2ZcShacW8IjoibmIiLCJvbGFuZGnFvCI6Im5sIiwicGVyc2phbiI6ImZhIiwicG9sbGFrayI6InBsIiwicG9ydHVnacW8IjoicHQiLCJydW1lbiI6InJvIiwicnVzc3UiOiJydSIsInNsb3Zha2siOiJzayIsInNwYW5qb2wiOiJlcyIsInN2ZWRpxbwiOiJzdiIsInRhamxhbmRpxbwiOiJ0aCIsInRhbGphbiI6Iml0IiwidG9yayI6InRyIiwidWtyZW4iOiJ1ayIsInVuZ2VyacW8IjoiaHUiLCJ1xbxiZWsiOiJ1eiIsInZqZXRuYW1pxbwiOiJ2aSIsIsW8dWx1IjoienUiLCJhbGJhbnNraSI6InNxIiwiYW1oYXJpayI6ImFtIiwiYXJhcHNraSI6ImFyIiwiYXJtZW5panNraSI6Imh5IiwiYXplcmJhamTFvmFuc2tpIjoiYXoiLCJiamVsb3J1c2tpIjoiYmUiLCJidWdhcnNraSI6ImJnIiwiYnVybWFuc2tpIjoibXkiLCLEjWXFoWtpIjoiY3MiLCJkYW5za2kiOiJkYSIsImVuZ2xlc2tpIjoiZW4iLCJlc3RvbnNraSI6ImV0IiwiZmluc2tpIjoiZmkiLCJnYWxza2kiOiJnbCIsImdyxI1raSI6ImVsIiwiaGFpxIdhbnNrby1rcmVvbHNraSI6Imh0IiwiaGVicmVqc2tpIjoiaGUiLCJoaW5kdSI6ImhpIiwiaHJ2YXRza2kiOiJociIsImluZG9uZXppanNraSI6ImlkIiwiaXJza2kiOiJnYSIsImlzbGFuZHNraSI6ImlzIiwiamFwYW5za2kiOiJqYSIsImthdGFsb25za2kiOiJjYSIsImtpbmVza2kgKHBvamVkbm9zdC4pIjoiemgtY24iLCJraW5lc2tpICh0cmFkaWNpb25hbG5pKSI6InpoLXR3Iiwia29yZWpza2kiOiJrbyIsImt1cmRza2kiOiJrdSIsImxhdGluc2tpIjoibGEiLCJsYXR2aWpza2kvbGV0b25za2kiOiJsdiIsImxpdHZhbnNraSI6Imx0IiwibWHEkWFyc2tpIjoiaHUiLCJtYWtlZG9uc2tpIjoibWsiLCJtYWxlemlqc2tpIjoibXMiLCJtYWx0ZcWha2kiOiJtdCIsIm5pem96ZW1za2kiOiJubCIsIm5vcnZlxaFraSI6Im5iIiwibmplbWHEjWtpIjoiZGUiLCJwZXJ6aWpza2kiOiJmYSIsInBvbGpza2kiOiJwbCIsInJ1bXVuanNraSI6InJvIiwicnVza2kiOiJydSIsInNsb3ZhxI1raSI6InNrIiwic2xvdmVuc2tpIjoic2wiLCJzcnBza2kiOiJzciIsIsWha290c2tpIGtlbHRza2kiOiJnZCIsIsWhcGFuam9sc2tpIjoiZXMiLCLFoXZlZHNraSI6InN2IiwidGFqbGFuZHNraSI6InRoIiwidGFsaWphbnNraSI6Iml0IiwidHVyc2tpIjoidHIiLCJ1a3Jhamluc2tpIjoidWsiLCJ1emJla2lzdGFuc2tpIjoidXoiLCJ2ZWzFoWtpIjoiY3kiLCJ2aWpldG5hbXNraSI6InZpIiwi2KLYsNix2KjYp++7s++6oO+6ju+7p++7sCI6ImF6Iiwi2KLZhNio2KfZhtuM2KfbjNuMIjoic3EiLCLYotmE2YXYp9mG24wiOiJkZSIsItin2LHZhdmG24wiOiJoeSIsItin2LLYqNqp24wiOiJ1eiIsItin2LPZvtin2YbbjNin24zbjCI6ImVzIiwi2KfYs9m+2LHYp9mG2KrZiCI6ImVvIiwi2KfYs9iq2YjZhtmK2KfZituMIjoiZXQiLCLYp9iz2YTZiNin2qnbjCI6InNrIiwi2KfYs9mE2YjZhtuM2KfbjNuMIjoic2wiLCLYp9qp2LHYp9mK2YbbjCI6InVrIiwi2KfZhdmH2LHbjCI6ImFtIiwi2KfZhtiv2YjZhtiy2YrYp9mK24wiOiJpZCIsItin2Ybar9mE24zYs9uMIjoiZW4iLCLYp9uM2KrYp9mE24zYp9uM24wiOiJpdCIsItin24zYsdmE2YbYr9uMIjoiZ2EiLCLYp9mK2LPZhNmG2K/bjCI6ImlzIiwi2KjYp9iz2qnbjCI6ImV1Iiwi2KjYsdmF2YfigIzYp9uMIjoibXkiLCLYqNmE2KfYsdmI2LPbjCI6ImJlIiwi2KjZhNi62KfYsduMIjoiYmciLCLZvtix2KrYutin2YTbjCI6InB0Iiwi2KrYp9mK2YTZhtiv24wiOiJ0aCIsItiq2LHaqduMINin2LPYqtin2YbYqNmI2YTbjCI6InRyIiwi2KrZhNmI2q/ZiCI6InRlIiwi2obaqSI6ImNzIiwi2obbjNmG24wgKNiz2KfYr9mH4oCM2LTYr9mHKSI6InpoLWNuIiwi2obbjNmG24wgKNiz2YbYqtuMKSI6InpoLXR3Iiwi2K/Yp9mG2YXYp9ix2qnbjCI6ImRhIiwi2LHZiNiz24wiOiJydSIsItix2YjZhdin2YbZitin2YrbjCI6InJvIiwi2LLZiNmE2YgiOiJ6dSIsItqY2KfZvtmG24wiOiJqYSIsItiz2YjYptiv24wiOiJzdiIsIti12LHYqNuMIjoic3IiLCLYudio2LHbjCI6ImhlIiwi2LnYsdio24wiOiJhciIsItmB2KfYsdiz24wiOiJmYSIsItmB2LHYp9mG2LPZiNuMIjoiZnIiLCLZgdmG2YTYp9mG2K/bjCI6ImZpIiwi2qnYp9iq2KfZhNin2YYiOiJjYSIsItqp2KfZhtin2LHYpyI6ImtuIiwi2qnYsdim2YjZhCDZh9in2KbbjNiq24wiOiJodCIsItqp2LHYr9uMIjoia3UiLCLaqdix2YjYp9iq24wiOiJociIsItqp2LHZh+KAjNin24wiOiJrbyIsItqv2KfZhNuM2LPbjCI6ImdsIiwi2q/Yp9mE2YraqSDYp9iz2qnYp9iq2YTZhtiv24wiOiJnZCIsItmE2KfYqtmK2YYiOiJsYSIsItmE2KrZiNmG2YrYp9mK24wiOiJsdiIsItmE2YfYs9iq2KfZhtuMIjoicGwiLCLZhNmK2KrZiNin2YbZitin2YrbjCI6Imx0Iiwi2YXYp9im2YjYsduMIjoibWkiLCLZhdin2YTYp9uM2KfZhNmF24wiOiJtbCIsItmF2KfZhNin2YrbjCI6Im1zIiwi2YXYp9mE2KrbjCI6Im10Iiwi2YXYrNin2LHbjCI6Imh1Iiwi2YXYsdin2KrbjCI6Im1yIiwi2YXYutmI2YTbjCI6Im1uIiwi2YXZgtiv2YjZhtmK2YfigIzYp9uMIjoibWsiLCLZhtix2YjamNuMIjoibmIiLCLZiNmE2LLbjCI6ImN5Iiwi2YjZitiq2YbYp9mF24wiOiJ2aSIsItmH2YTZhtiv24wiOiJubCIsItmH2YbYr9uMIjoiaGkiLCLZitmI2YbYp9mG24wiOiJlbCIsImFoZXBhaXRhbmkiOiJheiIsImFpcmloaSI6ImdhIiwiYW1hcmlraSI6ImFtIiwiYW3Ek25pYW5hIjoiaHkiLCJhcmFwZWluaWEiOiJzcSIsImFyYXBpIjoiYXIiLCJlcGVyxIFuYXRvIjoiZW8iLCJldMWNbmlhIjoiZXQiLCJoYWluYSAob25hbWF0YSkiOiJ6aC10dyIsImhhaW5hbWFuYSAoa3VhIHdoYWthbcSBbcSBdGlhKSI6InpoLWNuIiwiaGFuZWtlcmlhIjoiaHUiLCJoYXBhbmloaSI6ImphIiwiaGVyZXBpYSI6InNyIiwiaGluZXJhbmdpIjoiZmkiLCJoxKtuaSI6ImhpIiwiaGlwZXJ1IjoiaGUiLCJob3Jvd8SBa2lhIjoic2siLCJob3Jvd2luaWEiOiJzbCIsImh1aXRlbmUiOiJzdiIsImh1cnUiOiJ6dSIsImluZ2FyaWhpIjoiZW4iLCJpbml0b27Eq2hpYSI6ImlkIiwiaXTEgXJpYW5hIjoiaXQiLCJrYW5hdGEiOiJrbiIsImthcmloaWEiOiJnbCIsImthdGFyxIFuYSI6ImNhIiwia2VyZW9yZSBoYWl0aSI6Imh0Iiwia2lyaWtpIjoiZWwiLCJrxY1yZWFuYSI6ImtvIiwia29yb8SBdGlhbmEiOiJociIsImtvcnVrb3J1IjoidHIiLCJrxatyaWhpIjoia3UiLCJtYWtlcsWNbmlhIjoibWsiLCJtxIFyYXRpaGkiOiJtdCIsIm1hcmVpIjoibXMiLCJtYXJlaWFyYW1hIjoibWwiLCJtb25nxY1yaWFuYSI6Im1uIiwibsWNd2VpIjoibmIiLCJwxIFraWhpIjoiZXUiLCJwxIFuaW9yYSI6ImVzIiwicMSTbWEgKHB1cnVtxKtoaSkiOiJteSIsInBlcmFydWhpYSI6ImJlIiwicGVyxJNoaWEiOiJmYSIsInDFjXJhbmEiOiJwbCIsInBvdHVrxKtoaSI6InB0IiwicHVydWvEgXJpYW5hIjoiYmciLCJyxIF0aW5pIjoibGEiLCJyxIF3aGlhbmEiOiJsdiIsInJpdHXEgW5pYSI6Imx0Iiwicm9txIFuaWEiOiJybyIsInLFq2hpYSI6InJ1IiwidGFpIjoidGgiLCJ0YXRpIjoibmwiLCJ0ZW5lbcSBa2EiOiJkYSIsInRlcnVrdSI6InRlIiwidGlhbWFuYSI6ImRlIiwidGlla2UiOiJjcyIsInRpb3JhbmdpIjoiaXMiLCJ0dWF1cmkga290YXJhbmdpIjoiZ2QiLCJ1aGlwZWtlIjoidXoiLCLFq2thcmVpYW5hIjoidWsiLCJ3xJNyYSI6ImN5Iiwid2hpdGluxIFtdSI6InZpIiwid8Srd8SrIjoiZnIiLCLOsc6zzrPOu865zrrOrCI6ImVuIiwizrHOts61z4HOvM+AzrHPis+EzrbOsc69zrnOus6sIjoiYXoiLCLOsc67zrLOsc69zrnOus6sIjoic3EiLCLOsc68z4fOsc+BzrnOus6sIjoiYW0iLCLOsc+BzrHOss65zrrOrCI6ImFyIiwizrHPgc68zrXOvc65zrrOrCI6Imh5IiwizrLOsc+DzrrOuc66zqwiOiJldSIsIs6yzrnOtc+Ezr3Osc68zrXOts65zrrOrCI6InZpIiwizrLOuc+BzrzOsc69zrnOus6sIjoibXkiLCLOss6/z4XOu86zzrHPgc65zrrOrCI6ImJnIiwizrPOsc61zrvOuc66zqwgz4POus6/z4TOr86xz4IiOiJnZCIsIs6zzrHOu865zrrOuc6xzrrOrCI6ImdsIiwizrPOsc67zrvOuc66zqwiOiJmciIsIs6zzrXPgc68zrHOvc65zrrOrCI6ImRlIiwizrTOsc69zrnOus6sIjoiZGEiLCLOtc6yz4HOsc+KzrrOrCI6ImhlIiwizrXOu867zrfOvc65zrrOrCI6ImVsIiwizrXPg864zr/Ovc65zrrOrCI6ImV0IiwizrXPg8+AzrXPgc6szr3PhM6/IjoiZW8iLCLOts6/z4XOu86/z40iOiJ6dSIsIs65zrHPgM+Jzr3Ouc66zqwiOiJqYSIsIs65zr3OtM6/zr3Ot8+DzrnOsc66zqwiOiJpZCIsIs65z4HOu86xzr3OtM65zrrOrCI6ImdhIiwizrnPg867zrHOvc60zrnOus6sIjoiaXMiLCLOuc+Dz4DOsc69zrnOus6sIjoiZXMiLCLOuc+EzrHOu865zrrOrCI6Iml0IiwizrrOsc69zqzOvc+EzrEiOiJrbiIsIs66zrHPhM6xzrvOsc69zrnOus6sIjoiY2EiLCLOus65zr3Orc62zrnOus6xICjOsc+AzrvOv8+Azr/Ouc63zrzOrc69zrEpIjoiemgtY24iLCLOus65zr3Orc62zrnOus6xICjPgM6xz4HOsc60zr/Pg865zrHOus6sKSI6InpoLXR3IiwizrrOv8+BzrXOsc+EzrnOus6sIjoia28iLCLOus6/z4XPgc60zrnOus6sIjoia3UiLCLOus+BzrXPjM67IM6xz4rPhM6uz4IiOiJodCIsIs66z4HOv86xz4TOuc66zqwiOiJociIsIs67zrHPhM65zr3Ouc66zqwiOiJsYSIsIs67zrXPhM6/zr3Ouc66zqwiOiJsdiIsIs67zrXPhc66zr/Pgc+Jz4POuc66zqwiOiJiZSIsIs67zrnOuM6/z4XOsc69zrnOus6sIjoibHQiLCLOvM6xzrvOsc6zzrnOrM67zrHOvCI6Im1sIiwizrzOsc67zq3OuSI6Im1zIiwizrzOsc67z4TOtc62zrnOus6sIjoibXQiLCLOvM6xzr/Pgc6vIjoibWkiLCLOvM6xz4HOsc64zrnOus6sIjoibXIiLCLOvM6/zrPOs86/zrvOuc66zqwiOiJtbiIsIs69zr/Pgc6yzrfOs865zrrOrCI6Im5iIiwizr/Ou867zrHOvc60zrnOus6sIjoibmwiLCLOv8+FzrHOu865zrrOrCI6ImN5Iiwizr/Phc6zzrPPgc65zrrOrCI6Imh1Iiwizr/Phc62zrzPgM61zrrOuc66zqwiOiJ1eiIsIs6/z4XOus+BzrHOvc65zrrOrCI6InVrIiwiz4DOtc+Bz4POuc66zqwiOiJmYSIsIs+Azr/Ou8+Jzr3Ouc66zqwiOiJwbCIsIs+Azr/Pgc+Ezr/Os86xzrvOuc66zqwiOiJwdCIsIs+Bzr/Phc68zrHOvc65zrrOrCI6InJvIiwiz4HPic+DzrnOus6sIjoicnUiLCLPg861z4HOss65zrrOrCI6InNyIiwiz4POu86xzrLOv868zrHOus61zrTOv869zrnOus6sIjoibWsiLCLPg867zr/Oss6xzrrOuc66zqwiOiJzayIsIs+DzrvOv86yzrXOvc65zrrOrCI6InNsIiwiz4POv8+FzrfOtM65zrrOrCI6InN2Iiwiz4TOsc+KzrvOsc69zrTOtc62zrnOus6sIjoidGgiLCLPhM61zrvOv8+NzrPOus6/z4UiOiJ0ZSIsIs+Ezr/Pjc+BzrrOuc66zrEiOiJ0ciIsIs+Ez4POtc+HzrnOus6sIjoiY3MiLCLPhs65zr3Ou86xzr3OtM65zrrOrCI6ImZpIiwiz4fOr869z4TOuSI6ImhpIiwiYW14YXIiOiJhbSIsImFybWFuIjoiaHkiLCJib2xnYXIiOiJiZyIsImRhdCI6ImRhIiwiZm9ycyI6ImZhIiwiZnJhbnN1eiI6ImZyIiwiZ2FpdGkta3Jlb2wiOiJodCIsImdhbGlzaXkiOiJnbCIsImdvbGxhbmQiOiJubCIsImdyZWsiOiJlbCIsImlicm9uaXkiOiJoZSIsImluZG9uZXoiOiJpZCIsImluZ2xpeiI6ImVuIiwiaXJsYW5kIjoiZ2EiLCJpc2xhbmQiOiJpcyIsIml0YWx5YW4iOiJpdCIsImtvcmV5cyI6ImtvIiwia3VyZCAoa3VybW9uamkpIjoia3UiLCJsYXRpc2giOiJsdiIsImxvdGluIjoibGEiLCJtYWtlZG9uIjoibWsiLCJtYWx0aXkiOiJtdCIsIm1hcmF0eGkiOiJtciIsIm1v4oCYZ+KAmHVsIjoibW4iLCJuZW1pcyI6ImRlIiwibm9ydmVnIjoibmIiLCJvemFyYmF5am9uIjoiYXoiLCJwb3J0dWdhbCI6InB0IiwicnVtaW4iOiJybyIsInRheSI6InRoIiwidHVyayI6InRyIiwidWtyYWluIjoidWsiLCJ2YWxsaXkiOiJjeSIsInZlbmdlciI6Imh1IiwieGl0b3kgKGFu4oCZYW5hdml5KSI6InpoLXR3IiwieGl0b3kgKHNvZGRhbGFzaGdhbikiOiJ6aC1jbiIsIm/igJh6YmVrIjoidXoiLCJzaG90bGFuZC1nZWwiOiJnZCIsInNodmVkIjoic3YiLCJjaGV4IjoiY3MiLCJhbGJhbnNrYSI6InNxIiwiYW1oYXLDrXNrdSI6ImFtIiwiYXJhYsOtc2thIjoiYXIiLCJhcm1lbnNrYSI6Imh5IiwiYXNlcnNrYSI6ImF6IiwiYmFza25lc2thIjoiZXUiLCJiw7psZ2Fyc2thIjoiYmciLCJiw7pybcOtc2thIjoibXkiLCJkYW5za2EiOiJkYSIsImVpc3RuZXNrYSI6ImV0IiwiZW5za2EiOiJlbiIsImVzcGVyYW50w7MiOiJlbyIsImZpbm5za2EiOiJmaSIsImZyYW5za2EiOiJmciIsImdhbGlzw61za2EiOiJnbCIsImdyw61za2EiOiJlbCIsImhhw610w61za3Qga3Jlw7NsYW3DoWwiOiJodCIsImhlYnJlc2thIjoiaGUiLCJoaW5kw60iOiJoaSIsImhvbGxlbnNrYSI6Im5sIiwiaHbDrXRyw7pzc25lc2thIjoiYmUiLCJpbmTDs25lc8Otc2thIjoiaWQiLCLDrXJza2EiOiJnYSIsIsOtc2xlbnNrYSI6ImlzIiwiw610YWxza2EiOiJpdCIsImphcGFuc2thIjoiamEiLCJrYXRhbMOzbnNrYSI6ImNhIiwia8OtbnZlcnNrYSAoZWluZsO2bGR1w7ApIjoiemgtY24iLCJrw61udmVyc2thIChoZWbDsGJ1bmRpbikiOiJ6aC10dyIsImvDs3Jlc2thIjoia28iLCJrcsOzYXTDrXNrYSI6ImhyIiwia8O6cmTDrXNrYSI6Imt1IiwibGF0w61uYSI6ImxhIiwibGV0dG5lc2thIjoibHYiLCJsaXRow6HDrXNrYSI6Imx0IiwibWFrZWTDs25za2EiOiJtayIsIm1hbGFqw61za2EiOiJtcyIsIm1hbHRuZXNrYSI6Im10IiwibWFvcsOtc2thIjoibWkiLCJtYXJhdMOtIjoibXIiLCJtb25nw7Nsc2thIjoibW4iLCJub3Jza2EiOiJuYiIsInBlcnNuZXNrYSI6ImZhIiwicG9ydMO6Z2Fsc2thIjoicHQiLCJww7Nsc2thIjoicGwiLCJyw7ptZW5za2EiOiJybyIsInLDunNzbmVza2EiOiJydSIsInNlcmJuZXNrYSI6InNyIiwic2tvc2stZ2Vsw61za2EiOiJnZCIsInNsw7N2YWvDrXNrYSI6InNrIiwic2zDs3ZlbnNrYSI6InNsIiwic3DDpm5za2EiOiJlcyIsInPDumzDuiI6Inp1Iiwic8OmbnNrYSI6InN2IiwidGHDrWxlbnNrYSI6InRoIiwidMOpa2tuZXNrYSI6ImNzIiwidHlya25lc2thIjoidHIiLCJ1bmd2ZXJza2EiOiJodSIsIsO6a3Jhw61uc2thIjoidWsiLCLDunNiZWvDrXNrYSI6InV6IiwidmVsc2thIjoiY3kiLCJ2w61ldG5hbXNrYSI6InZpIiwiw77DvXNrYSI6ImRlIiwi1aHVpNaA1aLVpdW71aHVttWl1oDVpdW2IjoiYXoiLCLVodWs1aLVodW21aXWgNWl1bYiOiJzcSIsItWh1bTVsNWh1oDVpdaA1aXVtiI6ImFtIiwi1aHVttWj1azVpdaA1aXVtiI6ImVuIiwi1aHWgNWh1aLVpdaA1aXVtiI6ImFyIiwi1aLVodW91a/VpdaA1aXVtiI6ImV1Iiwi1aLVpdWs1aHVvNW41oLVvdWl1oDVpdW2IjoiYmUiLCLVotWr1oDVtNWh1bbVpdaA1aXVtiI6Im15Iiwi1aLVuNaC1azVstWh1oDVpdaA1aXVtiI6ImJnIiwi1aPVodWs1avVvdWl1oDVpdW2IjoiZ2wiLCLVo9Wl1oDVtNWh1bbVpdaA1aXVtiI6ImRlIiwi1aTVodW21avVpdaA1aXVtiI6ImRhIiwi1aXVotaA1aHVtdWl1oDVpdW2IjoiaGUiLCLVptW41oLVrNW41oLVvdWl1oDVpdW2IjoienUiLCLVp9W91brVpdaA1aHVttW/1bgiOiJlbyIsItWn1b3Vv9W41bbVpdaA1aXVtiI6ImV0Iiwi1anVodW11aXWgNWl1bYiOiJ0aCIsItWp1bjWgtaA1oTVpdaA1aXVtiI6InRyIiwi1avVttWk1bjVttWl1abVpdaA1aXVtiI6ImlkIiwi1avVvNWs1aHVttWk1aXWgNWl1bYiOiJnYSIsItWr1b3VrNWh1bbVpNWl1oDVpdW2IjoiaXMiLCLVq9W91brVodW21aXWgNWl1bYiOiJlcyIsItWr1b/VodWs1aXWgNWl1bYiOiJpdCIsItWs1aHVv9Wr1bbVpdaA1aXVtiI6ImxhIiwi1azVodW/1b7Vq9Wl1oDVpdW2IjoibHYiLCLVrNWl1bDVpdaA1aXVtiI6InBsIiwi1azVq9W/1b7VpdaA1aXVtiI6Imx0Iiwi1a3VuNaA1b7VodWp1aXWgNWl1bYiOiJociIsItWv1aHVttW21aHVpNWhIjoia24iLCLVr9Wh1b/VodWs1aHVttWl1oDVpdW2IjoiY2EiLCLVr9Wl1azVv9Wh1a/VodW2INW31bjVv9Ws1aHVttWk1aXWgNWl1bYiOiJnZCIsItWv1bjWgNWl1aXWgNWl1bYiOiJrbyIsItWv1oDVpdW41azVpdaA1aXVtiAo1bDVodW11avVqdWrKSI6Imh0Iiwi1bDVodW11aXWgNWl1bYiOiJoeSIsItWw1avVttWk1asiOiJoaSIsItWw1bjVrNWh1bbVpNWl1oDVpdW2IjoibmwiLCLVsNW41oLVttWh1oDVpdW2IjoiZWwiLCLVsNW41oLVttWj1aHWgNWl1oDVpdW2IjoiaHUiLCLVs9Wh1brVuNW21aXWgNWl1bYiOiJqYSIsItW01aHVrNWh1bXVodWs1aHVtCI6Im1sIiwi1bTVodWs1aHVtdWl1oDVpdW2IjoibXMiLCLVtNWh1azVqdWl1oDVpdW2IjoibXQiLCLVtNWh1a/VpdWk1bjVttWl1oDVpdW2IjoibWsiLCLVtNWh1bjWgNWrIjoibWkiLCLVtNWh1oDVodWp1asiOiJtciIsItW01bjVttWy1bjVrNWl1oDVpdW2IjoibW4iLCLVttW41oDVvtWl1aPVpdaA1aXVtiI6Im5iIiwi1bfVvtWl1aTVpdaA1aXVtiI6InN2Iiwi1bjWgtWm1aLVpdWv1aXWgNWl1bYiOiJ1eiIsItW41oLVr9aA1aHVq9W21aXWgNWl1bYiOiJ1ayIsItW51aXVrdWl1oDVpdW2IjoiY3MiLCLVudWr1bbVodaA1aXVtiAo1aHVvtWh1bbVpNWh1a/VodW2KSI6InpoLXR3Iiwi1bnVq9W21aHWgNWl1bYgKNW61aHWgNWm1aXWgdW+1aHVrikiOiJ6aC1jbiIsItW61aHWgNW91a/VpdaA1aXVtiI6ImZhIiwi1brVuNaA1b/VuNaC1aPVodWs1aXWgNWl1bYiOiJwdCIsItW81bjWgtW01avVttWl1oDVpdW2Ijoicm8iLCLVvNW41oLVvdWl1oDVpdW2IjoicnUiLCLVvdWl1oDVotWl1oDVpdW2Ijoic3IiLCLVvdWs1bjVvtWh1a/VpdaA1aXVtiI6InNrIiwi1b3VrNW41b7VpdW21aXWgNWl1bYiOiJzbCIsItW+1aHVrNWl1oDVpdW2IjoiY3kiLCLVvtWr1aXVv9W21aHVtNWl1oDVpdW2IjoidmkiLCLVv9Wl1azVuNaC1aPVuNaCIjoidGUiLCLWhNaA1aTVpdaA1aXVtiAo1oTVuNaC1oDVtNWh1bbVu9WrKSI6Imt1Iiwi1obVq9W21bbVpdaA1aXVtiI6ImZpIiwi1obWgNWh1bbVvdWl1oDVpdW2IjoiZnIiLCJhcmFiaWEiOiJhciIsImJhc2tpIjoiZXUiLCJidXJtYSI6Im15IiwiZW5nbGFudGkiOiJlbiIsImVzcGFuamEiOiJlcyIsImhhaXRpbmtyZW9saSI6Imh0IiwiaGVwcmVhIjoiaGUiLCJob2xsYW50aSI6Im5sIiwiaWlyaSI6ImdhIiwiaXNsYW50aSI6ImlzIiwiaXRhbGlhIjoiaXQiLCJqYXBhbmkiOiJqYSIsImthdGFsYWFuaSI6ImNhIiwia2lpbmEgKHBlcmludGVpbmVuKSI6InpoLXR3Iiwia2lpbmEgKHlrc2lua2VydC4pIjoiemgtY24iLCJrcmVpa2thIjoiZWwiLCJrcm9hdGlhIjoiaHIiLCJrdXJkaSI6Imt1Iiwia3ltcmkiOiJjeSIsImxpZXR0dWEiOiJsdCIsIm1ha2Vkb25pYSI6Im1rIiwibWFsYWlqaSI6Im1zIiwibm9yamEiOiJuYiIsInBlcnNpYSI6ImZhIiwicG9ydHVnYWxpIjoicHQiLCJwdW9sYSI6InBsIiwicmFuc2thIjoiZnIiLCJydW90c2kiOiJzdiIsInNha3NhIjoiZGUiLCJza290dGlnYWVsaSI6ImdkIiwic2xvdmFraWEiOiJzayIsInN1b21pIjoiZmkiLCJ0YW5za2EiOiJkYSIsInRzZWtraSI6ImNzIiwidHVya2tpIjoidHIiLCJ1a3JhaW5hIjoidWsiLCJ1bmthcmkiOiJodSIsInV6YmVra2kiOiJ1eiIsInZhbGtvdmVuw6Rqw6QiOiJiZSIsInZlbsOkasOkIjoicnUiLCJ2aXJvIjoiZXQiLCJhbGJhbmllcmEiOiJzcSIsImFsZW1hbmEiOiJkZSIsImFtaGFyZXJhIjoiYW0iLCJhcmFiaWVyYSI6ImFyIiwiYXJtZW5pZXJhIjoiaHkiLCJhemVyYmFpamFuZXJhIjoiYXoiLCJiaWVsb3JydXNpZXJhIjoiYmUiLCJiaXJtYW5pZXJhIjoibXkiLCJidWxnYXJpZXJhIjoiYmciLCJkYW5pZXJhIjoiZGEiLCJlcnJ1bWFuaWVyYSI6InJvIiwiZXJydXNpZXJhIjoicnUiLCJlc2tvemlha28gZ2FlbGVyYSI6ImdkIiwiZXNsb3Zha2llcmEiOiJzayIsImVzbG92ZW5pZXJhIjoic2wiLCJlc3BlcmFudG9hIjoiZW8iLCJlc3RvbmllcmEiOiJldCIsImV1c2thcmEiOiJldSIsImZyYW50c2VzYSI6ImZyIiwiZ2FlbGVyYSI6ImN5IiwiZ2FsaXppZXJhIjoiZ2wiLCJnYXp0ZWxhbmlhIjoiZXMiLCJncmV6aWVyYSI6ImVsIiwiaGVicmVlcmEiOiJoZSIsImhpbmRpYSI6ImhpIiwiaHVuZ2FyaWVyYSI6Imh1IiwiaW5kb25lc2llcmEiOiJpZCIsImluZ2VsZXNhIjoiZW4iLCJpcmxhbmRlcmEiOiJnYSIsImlzbGFuZGllcmEiOiJpcyIsIml0YWxpZXJhIjoiaXQiLCJqYXBvbmllcmEiOiJqYSIsImthdGFsYW5hIjoiY2EiLCJrb3JlZXJhIjoia28iLCJrcmVvbGVyYSAoaGFpdGkpIjoiaHQiLCJrcm9hemllcmEiOiJociIsImt1cmR1ZXJhIjoia3UiLCJsZXRvbmllcmEiOiJsdiIsImxpdHVhbmllcmEiOiJsdCIsIm1hbGFiYXJlcmEiOiJtbCIsIm1hbGF5c2llcmEiOiJtcyIsIm1hbHRlcmEiOiJtdCIsIm1hb3JpZXJhIjoibWkiLCJtYXJhdGhlcmEiOiJtciIsIm1hemVkb25pZXJhIjoibWsiLCJtb25nb2xpZXJhIjoibW4iLCJuZWRlcmxhbmRlcmEiOiJubCIsIm5vcnZlZ2llcmEiOiJuYiIsInBlcnNpZXJhIjoiZmEiLCJwb2xvbmllcmEiOiJwbCIsInBvcnR1Z2VzYSI6InB0Iiwic2VyYmllcmEiOiJzciIsInN1ZWRpZXJhIjoic3YiLCJzdW9taWVyYSI6ImZpIiwidGVsdWd1YSI6InRlIiwidGhhaWVyYSI6InRoIiwidHVya2llcmEiOiJ0ciIsInR4ZWtpZXJhIjoiY3MiLCJ0eGluZXJhIChzb2lsZHVhKSI6InpoLWNuIiwidHhpbmVyYSAodHJhZGl6aW9uYWxhKSI6InpoLXR3IiwidWtyYWluZXJhIjoidWsiLCJ1emJla2VyYSI6InV6IiwidmlldG5hbWVyYSI6InZpIiwienVsdWVyYSI6Inp1IiwiYWxiYW7DqHMiOiJzcSIsImFsZW1hbnkiOiJkZSIsImFtaMOgcmljIjoiYW0iLCJhbmdsw6hzIjoiZW4iLCLDoHJhYiI6ImFyIiwiYXJtZW5pIjoiaHkiLCLDoHplcmkiOiJheiIsImJhc2MiOiJldSIsImJpZWxvcsO6cyI6ImJlIiwiYmlybcOgIjoibXkiLCJiw7psZ2FyIjoiYmciLCJjYXN0ZWxsw6AiOiJlcyIsImNhdGFsw6AiOiJjYSIsImNvcmXDoCI6ImtvIiwiY3Jpb2xsIGRcJ2hhaXTDrSI6Imh0IiwiY3JvYXQiOiJociIsImRhbsOocyI6ImRhIiwiZXNsb3ZhYyI6InNrIiwiZXNsb3bDqCI6InNsIiwiZXN0b25pw6AiOiJldCIsImZpbsOocyI6ImZpIiwiZnJhbmPDqHMiOiJmciIsImdhw6hsaWMgZXNjb2PDqHMiOiJnZCIsImdhbGxlYyI6ImdsIiwiZ2Fswrdsw6hzIjoiY3kiLCJoZWJyZXUiOiJoZSIsImhvbmdhcsOocyI6Imh1IiwiaW5kb25lc2kiOiJpZCIsImlybGFuZMOocyI6ImdhIiwiaXNsYW5kw6hzIjoiaXMiLCJpdGFsacOgIjoiaXQiLCJqYXBvbsOocyI6ImphIiwibGV0w7MiOiJsdiIsImxpdHXDoCI6Imx0IiwibGxhdMOtIjoibGEiLCJtYWNlZMOybmljIjoibWsiLCJtYWxhaSI6Im1zIiwibWFsYWnDoGxhbSI6Im1sIiwibWFsdMOocyI6Im10IiwibmVlcmxhbmTDqHMiOiJubCIsIm5vcnVlYyI6Im5iIiwicG9sb27DqHMiOiJwbCIsInBvcnR1Z3XDqHMiOiJwdCIsInJvbWFuw6hzIjoicm8iLCJzZXJiaSI6InNyIiwic3VlYyI6InN2IiwidHhlYyI6ImNzIiwidWNyYcOvbsOocyI6InVrIiwieGluw6hzIChzaW1wbGlmaWNhdCkiOiJ6aC1jbiIsInhpbsOocyAodHJhZGljaW9uYWwpIjoiemgtdHciLCJhbGLEgcWGdSI6InNxIiwiYW1oYXJ1IjoiYW0iLCJhbmfEvHUiOiJlbiIsImFyxIFidSI6ImFyIiwiYXJtxJPFhnUiOiJoeSIsImF6ZXJiYWlkxb7EgcWGdSI6ImF6IiwiYmFsdGtyaWV2dSI6ImJlIiwiYmFza3UiOiJldSIsImJpcm1pZcWhdSI6Im15IiwiYnVsZ8SBcnUiOiJiZyIsIsSNZWh1IjoiY3MiLCJkxIHFhnUiOiJkYSIsImVicmVqdSAoaXZyaXRzKSI6ImhlIiwiZnJhbsSNdSI6ImZyIiwiZ2FsaXNpZcWhdSI6ImdsIiwiZ3JpZcS3dSI6ImVsIiwiaG9sYW5kaWXFoXUiOiJubCIsImhvcnbEgXR1IjoiaHIiLCJpZ2F1xYZ1IjoiZXQiLCJpbmRvbsSTemllxaF1IjoiaWQiLCLEq3J1IjoiZ2EiLCLEq3NsYW5kaWXFoXUiOiJpcyIsIml0xIHEvHUiOiJpdCIsImphcMSBxYZ1IjoiamEiLCJrYXRhbMSBxYZ1IjoiY2EiLCJrb3JlamllxaF1Ijoia28iLCJrcmVvbHUgKGhhaXRpKSI6Imh0Iiwia3JpZXZ1IjoicnUiLCJrdXJkdSI6Imt1IiwixLfEq25pZcWhdSAodHJhZGljaW9uxIFsxIEpIjoiemgtdHciLCLEt8SrbmllxaF1ICh2aWVua8SBcsWhb3TEgSkiOiJ6aC1jbiIsImxhdMSrxYZ1IjoibGEiLCJsYXR2aWXFoXUiOiJsdiIsImxpZXR1dmllxaF1IjoibHQiLCJtYcS3ZWRvbmllxaF1IjoibWsiLCJtYWxhamFsYW1pZcWhdSI6Im1sIiwibWFsYWppZcWhdSI6Im1zIiwibWFsdGllxaF1IjoibXQiLCJtYXJhdHUiOiJtciIsIm1vbmdvxLx1IjoibW4iLCJub3J2xJPEo3UiOiJuYiIsInBlcnNpZcWhdSI6ImZhIiwicG/EvHUiOiJwbCIsInBvcnR1Z8SBxLx1IjoicHQiLCJydW3EgcWGdSI6InJvIiwic2VyYnUiOiJzciIsInNrb3R1IGfEk2x1IjoiZ2QiLCJzbG92xIFrdSI6InNrIiwic2xvdsSTxYZ1Ijoic2wiLCJzb211IjoiZmkiLCJzcMSBxYZ1IjoiZXMiLCJ0YWp1IjoidGgiLCJ0dXJrdSI6InRyIiwidWtyYWnFhnUiOiJ1ayIsInVuZ8SBcnUiOiJodSIsInV6YmVrdSI6InV6IiwidsSBY3UiOiJkZSIsInZlbHNpZcWhdSI6ImN5IiwidmpldG5hbWllxaF1IjoidmkiLCJ6dmllZHJ1Ijoic3YiLCJiZWxhcnVzc2lhIjoiYmUiLCJjZWsiOiJjcyIsImNoaW5hIChha3MuIHNlZGVyaGFuYSkiOiJ6aC1jbiIsImNoaW5hIChha3MuIHRyYWRpc2lvbmFsKSI6InpoLXR3IiwiZmlubGFuZGlhIjoiZmkiLCJnYWVsaWciOiJnYSIsImdhZWxpayBza290bGFuZGlhIjoiZ2QiLCJnYWxpc2lhIjoiZ2wiLCJpbmdncmlzIjoiZW4iLCJpc2xhbiI6ImlzIiwiamVwYW5nIjoiamEiLCJrYXRhbGEiOiJjYSIsImxpdHVhbmlhIjoibHQiLCJwb2xhbmRpYSI6InBsIiwicHJhbmNpcyI6ImZyIiwicnVtYW5pYSI6InJvIiwic3dlbnNrIjoic3YiLCJ5dW5hbmkiOiJlbCIsIuCwheCwnOCwsOCxjeKAjOCwrOCxiOCwnOCwvuCwqOCwvyI6ImF6Iiwi4LCF4LCw4LGN4LCu4LGH4LCo4LC/4LCv4LCo4LGNIjoiaHkiLCLgsIXgsLLgsY3gsKzgsYfgsKjgsL/gsK/gsKjgsY0iOiJzcSIsIuCwhuCwguCwl+CxjeCwsuCwruCxgSI6ImVuIiwi4LCG4LCu4LGN4LC54LC+4LCw4LC/4LCV4LGNIjoiYW0iLCLgsIbgsLDgsKzgsL/gsJXgsY0iOiJhciIsIuCwh+CwguCwoeCxiuCwqOCxh+CwuOCwv+Cwr+CwqOCxjSI6ImlkIiwi4LCH4LCf4LC+4LCy4LC/4LCv4LCo4LGNIjoiaXQiLCLgsIngsJzgsY3gsKzgsYbgsJXgsY0iOiJ1eiIsIuCwjuCwuOCxjeCwquCxhuCwsOCwvuCwguCwn+CxiyI6ImVvIiwi4LCP4LC44LGN4LCf4LGL4LCo4LC/4LCv4LCo4LGNIjoiZXQiLCLgsJDgsLDgsL/gsLfgsY0iOiJnYSIsIuCwkOCwuOCxjSDgsLLgsL7gsILgsKHgsL/gsJXgsY0iOiJpcyIsIuCwleCwqOCxjeCwqOCwoSI6ImtuIiwi4LCV4LCw4LGN4LCh4LC/4LC34LGNIjoia3UiLCLgsJXgsYrgsLDgsL/gsK/gsKjgsY0iOiJrbyIsIuCwleCxjeCwr+CwvuCwn+CwsuCwvuCwqOCxjSI6ImNhIiwi4LCV4LGN4LCw4LGK4LCv4LGH4LC34LC/4LCv4LCo4LGNIjoiaHIiLCLgsJfgsL7gsLLgsL/gsLjgsL/gsK/gsKjgsY0iOiJnbCIsIuCwl+CxjeCwsOCxgOCwleCxjSI6ImVsIiwi4LCa4LGG4LCV4LGNIjoiY3MiLCLgsJrgsYjgsKjgsYDgsLjgsY0gKOCwuOCwsOCws+CwruCxiOCwqCkiOiJ6aC1jbiIsIuCwmuCxiOCwqOCxgOCwuOCxjSAo4LC44LC+4LCu4LGN4LCq4LGN4LCw4LCm4LC+4LCv4LCu4LGI4LCoKSI6InpoLXR3Iiwi4LCc4LCq4LCo4LGA4LC44LGNIjoiamEiLCLgsJzgsLDgsY3gsK7gsKjgsY0iOiJkZSIsIuCwnOCxgeCwsuCxgSI6Inp1Iiwi4LCf4LCw4LGN4LCV4LC/4LC34LGNIjoidHIiLCLgsKHgsJrgsY0iOiJubCIsIuCwoeCwvuCwqOCwv+Cwt+CxjSI6ImRhIiwi4LCk4LGG4LCy4LGB4LCX4LGBIjoidGUiLCLgsKXgsL7gsK/gsY0iOiJ0aCIsIuCwqOCwvuCwsOCxjeCwteCwv+CwnOCwv+Cwr+CwqOCxjSI6Im5iIiwi4LCq4LCw4LGN4LC34LC/4LCv4LCo4LGNIjoiZmEiLCLgsKrgsYvgsLDgsY3gsJrgsYHgsJfgsYDgsLjgsY0iOiJwdCIsIuCwquCxi+CwsuCwv+Cwt+CxjSI6InBsIiwi4LCr4LC/4LCo4LGN4LCo4LC/4LC34LGNIjoiZmkiLCLgsKvgsY3gsLDgsYbgsILgsJrgsY0iOiJmciIsIuCwrOCwsOCxjeCwruCxgOCwuOCxjSI6Im15Iiwi4LCs4LCy4LGN4LCX4LGH4LCw4LC/4LCv4LCo4LGNIjoiYmciLCLgsKzgsL7gsLjgsY3gsJXgsY0iOiJldSIsIuCwrOCxhuCwsuCwvuCwsOCxgeCwt+Cwv+Cwr+CwqOCxjSI6ImJlIiwi4LCu4LCC4LCX4LGL4LCy4LC/4LCv4LCo4LGNIjoibW4iLCLgsK7gsK/gsYvgsLDgsL8iOiJtaSIsIuCwruCwsOCwvuCwoOCxgCI6Im1yIiwi4LCu4LCy4LCv4LC+4LCz4LCCIjoibWwiLCLgsK7gsL7gsLLgsYgiOiJtcyIsIuCwruCwvuCwsuCxjeCwn+CxgOCwuOCxjSI6Im10Iiwi4LCu4LC+4LC44LC/4LCh4LGL4LCo4LC/4LCv4LCo4LGNIjoibWsiLCLgsK/gsYHgsJXgsY3gsLDgsYfgsKjgsL/gsK/gsKjgsY0iOiJ1ayIsIuCwsOCwt+CxjeCwr+CwqOCxjSI6InJ1Iiwi4LCw4LGK4LCu4LGH4LCo4LC/4LCv4LCo4LGNIjoicm8iLCLgsLLgsL7gsJ/gsL/gsKjgsY0iOiJsYSIsIuCwsuCwvuCwn+CxjeCwteCwv+Cwr+CwqOCxjSI6Imx2Iiwi4LCy4LC/4LCl4LGB4LC14LGH4LCo4LC/4LCv4LCo4LGNIjoibHQiLCLgsLXgsL/gsK/gsKTgsY3gsKjgsL7gsK7gsYDgsLjgsY0iOiJ2aSIsIuCwteCxhuCwsuCxjeCwt+CxjSI6ImN5Iiwi4LC44LGG4LCw4LGN4LCs4LC/4LCv4LCo4LGNIjoic3IiLCLgsLjgsY3gsJXgsL7gsJ/gsY3gsLjgsY0g4LCX4LGH4LCy4LC/4LCV4LGNIjoiZ2QiLCLgsLjgsY3gsKrgsL7gsKjgsL/gsLfgsY0iOiJlcyIsIuCwuOCxjeCwsuCxi+CwteCwleCxjSI6InNrIiwi4LC44LGN4LCy4LGL4LC14LGH4LCo4LC/4LCv4LCo4LGNIjoic2wiLCLgsLjgsY3gsLXgsYDgsKHgsL/gsLfgsY0iOiJzdiIsIuCwueCwguCwl+Cxh+CwsOCwv+Cwr+CwqOCxjSI6Imh1Iiwi4LC54LC/4LCC4LCm4LGAIjoiaGkiLCLgsLngsYDgsKzgsY3gsLDgsYIiOiJoZSIsIuCwueCxiOCwr+Cxh+Cwn+Cwv+Cwr+CwqOCxjSDgsJXgsY3gsLDgsL/gsK/gsYvgsLLgsY0iOiJodCIsImFtaMOhcmljbyI6ImFtIiwiYXplcsOtIjoiYXoiLCJjaGlubyAoc2ltcGxpZmljYWRvKSI6InpoLWNuIiwiY2hpbm8gKHRyYWRpY2lvbmFsKSI6InpoLXR3IiwiY3Jpb2xsbyBoYWl0aWFubyI6Imh0IiwiZGFuw6lzIjoiZGEiLCJlc3RvbmlvIjoiZXQiLCJldXNrZXJhIjoiZXUiLCJmaW5sYW5kw6lzIjoiZmkiLCJnYWxsZWdvIjoiZ2wiLCJncmllZ28iOiJlbCIsImphcG9uw6lzIjoiamEiLCJrdXJkbyI6Imt1IiwibWFsYXlvIjoibXMiLCJub3J1ZWdvIjoibmIiLCJydW1hbm8iOiJybyIsInV6YmVjbyI6InV6IiwiYWxiYWFuaWEiOiJzcSIsImFtaGFhcmkiOiJhbSIsImFyYWFiaWEiOiJhciIsImFybWVlbmlhIjoiaHkiLCJhc2VyYmFpZMW+YWFuaSI6ImF6IiwiYmlybWEiOiJteSIsImJ1bGdhYXJpYSI6ImJnIiwiZWVzdGkiOiJldCIsImdhbGVlZ2kiOiJnbCIsImhhaXRpa3Jlb29saSI6Imh0IiwiaGVlYnJlYSI6ImhlIiwiaGlzcGFhbmlhIjoiZXMiLCJob2xsYW5kaSI6Im5sIiwiaG9ydmFhZGkiOiJociIsImluZG9uZWVzaWEiOiJpZCIsImluZ2xpc2UiOiJlbiIsImlzbGFuZGkiOiJpcyIsIml0YWFsaWEiOiJpdCIsImphYXBhbmkiOiJqYSIsImtyZWVrYSI6ImVsIiwibGFkaW5hIjoibGEiLCJsZWVkdSI6Imx0IiwibGlodHN1c3RhdHVkIGhpaW5hIjoiemgtY24iLCJsw6R0aSI6Imx2IiwibWFrZWRvb25pYSI6Im1rIiwibWFsYWphbGFhbWkiOiJtbCIsIm1hb29yaSI6Im1pIiwibW9uZ29saSI6Im1uIiwibm9ycmEiOiJuYiIsInBvb2xhIjoicGwiLCJwcmFudHN1c2UiOiJmciIsInDDpHJzaWEiOiJmYSIsInJvb3RzaSI6InN2IiwicnVtZWVuaWEiOiJybyIsInNsb3Zha2kiOiJzayIsInNsb3ZlZW5pIjoic2wiLCJzb29tZSI6ImZpIiwic3V1bHUiOiJ6dSIsIsWhb3RpIjoiZ2QiLCJ0YWFuaSI6ImRhIiwidHJhZGl0c2lvb25pbGluZSBoaWluYSI6InpoLXR3IiwidMWhZWhoaSI6ImNzIiwidMO8cmdpIjoidHIiLCJ1ZWxzaSI6ImN5IiwidW5nYXJpIjoiaHUiLCJ1c2Jla2kiOiJ1eiIsInZhbGdldmVuZSI6ImJlIiwidmVuZSI6InJ1IiwiYWxiYW55ZW4iOiJzcSIsImFtZW55ZW4iOiJoeSIsImFuZ2zDqCI6ImVuIiwiYXrDqGJhamFuaSI6ImF6IiwiYmVsYXJpc3llbiI6ImJlIiwiYmlsZ2FyeWVuIjoiYmciLCJjaGlud2EgKHNlbnApIjoiemgtY24iLCJjaGlud2EgKHRyYWRpc3lvbsOobCkiOiJ6aC10dyIsImRhbndhIjoiZGEiLCJlYnJlIjoiaGUiLCJlbmRvbmV6eWVuIjoiaWQiLCJlbmRvdSI6ImhpIiwiZXN0b255ZW4iOiJldCIsImZlbmxhbmTDqCI6ImZpIiwiZnJhbnNlIjoiZnIiLCJnYWVsaWsgZWtvc8OoIjoiZ2QiLCJnYWxpc3llbiI6ImdsIiwiZ3LDqGsiOiJlbCIsImlrcmVueWVuIjoidWsiLCJpbGFuZMOoIjoiZ2EiLCJpc2xhbmTDqCI6ImlzIiwiaXRhbHllbiI6Iml0IiwiaXpiw6hrIjoidXoiLCJqYXBvbsOoIjoiamEiLCJrb3JleWVuIjoia28iLCJrcmV5w7JsIGF5aXN5ZW4iOiJodCIsImt1cmRlIChrdXJtYW5kamkpIjoia3UiLCJrd29hc3llbiI6ImhyIiwibGF0ZW4iOiJsYSIsImxldG9ueWVuIjoibHYiLCJsaXR5YW55ZW4iOiJsdCIsIm1hbMOoIjoibXMiLCJtYWx0IjoibXQiLCJtYXNlZG9ueWVuIjoibWsiLCJtb25nb2x5ZW4iOiJtbiIsIm15YW5tYSAoYnVybWVzZSkiOiJteSIsIm7DsnZlanllbiI6Im5iIiwib2xhbmTDqCwgbmV5w6hsYW5kw6giOiJubCIsIm9ubmdhcnllbiI6Imh1IiwicGFuecOybCI6ImVzIiwicMOoc3llbiI6ImZhIiwicG9sb27DqCI6InBsIiwicMOydGlnw6giOiJwdCIsInJpcyI6InJ1Iiwicm9tYW55ZW4iOiJybyIsInPDqGIiOiJzciIsInNsb3ZlbnllbiI6InNsIiwic3llZHdhIjoic3YiLCJ0dWsiOiJ0ciIsInR5w6hrIjoiY3MiLCJ2eWV0bmFteWVuIjoidmkiLCJhbGJhbmVnIjoic3EiLCJhbG1hZW5lZyI6ImRlIiwiYXJhYmVnIjoiYXIiLCJhcm1lbmVnIjoiaHkiLCJhc2VyYmFpamFuZWciOiJheiIsImJhc2dlZyI6ImV1IiwiYmVsYXJ3c2VnIjoiYmUiLCJid2xnYXJhaWRkIjoiYmciLCJjYXRhbGFuZWciOiJjYSIsImNyZW9sIGhhaXRpIjoiaHQiLCJjcm9hdGVnIjoiaHIiLCJjeW1yYWVnIjoiY3kiLCJjeXJkZWcgKGt1cm1hbmRqaSkiOiJrdSIsImRhbmVnIjoiZGEiLCJlaWRhbGVnIjoiaXQiLCJlc3RvbmVnIjoiZXQiLCJmaWV0bmFtZWciOiJ2aSIsImZmaW5lZyI6ImZpIiwiZmZsZW1lZyI6Im5sIiwiZmZyYW5nZWciOiJmciIsImdhZWxlZyB5ciBhbGJhbiI6ImdkIiwiZ2FsaXNhaWRkIjoiZ2wiLCJncm9lZyI6ImVsIiwiZ3d5ZGRlbGVnIjoiZ2EiLCJoZWJyYWVnIjoiaGUiLCJod25nYXJlZyI6Imh1IiwiaWFpdGggY29yZWEiOiJrbyIsImluZG9uZXNpZWciOiJpZCIsImlzbGFuZGVnIjoiaXMiLCJpd2NyYWluZWciOiJ1ayIsImphcGFuZWciOiJqYSIsImxhdGZpZWciOiJsdiIsImxpdGh3YW5lZyI6Imx0IiwibGxhZGluIjoibGEiLCJtYWNlZG9uZWciOiJtayIsIm1hbHRlc2VnIjoibXQiLCJtb25nb2xlZyI6Im1uIiwibXlhbm1hciAoYnlybWEpIjoibXkiLCJub3J3eWVnIjoibmIiLCJwZXJzZWciOiJmYSIsInBvcnRpd2dhbGVnIjoicHQiLCJwd3lsZWciOiJwbCIsInJ3bWFuZWciOiJybyIsInJ3c2llZyI6InJ1Iiwic2Flc25lZyI6ImVuIiwic2JhZW5lZyI6ImVzIiwic2VyYmVnIjoic3IiLCJzbG9mYWMiOiJzayIsInNsb2ZlbmlhIjoic2wiLCJzd2VkZWciOiJzdiIsInN3bHciOiJ6dSIsInRzaWVjZWciOiJjcyIsInRzaWVpbmVlZyAodHJhZGRvZGlhZG9sKSI6InpoLXR3IiwidHNpZWluZWVnICh3ZWRpIHN5bWxlaWRkaW8pIjoiemgtY24iLCJ0d3JjZWciOiJ0ciIsInVzYmVjIjoidXoiLCLgpIXgpILgpJfgpY3gpLDgpYfgpZvgpYAiOiJlbiIsIuCkheClm+CksOCkrOCliOCknOCkvuCkqOClgCI6ImF6Iiwi4KSF4KSy4KWN4KSs4KWH4KSo4KS/4KSv4KSoIjoic3EiLCLgpIbgpIfgpLjgpLLgpYjgpILgpKHgpL/gpJUiOiJpcyIsIuCkhuCksOCljeCkruClh+CkqOCkv+Ckr+CkqCI6Imh5Iiwi4KSH4KSf4KWI4KSy4KS/4KSv4KSoIjoiaXQiLCLgpIngpJzgpLzgpY3gpKzgpYfgpJUiOiJ1eiIsIuCkj+CkuOCljeCkpOCli+CkqOCkv+Ckr+CkqCI6ImV0Iiwi4KSP4KS44KWN4KSq4KWH4KSw4KS+4KSC4KSf4KWLIjoiZW8iLCLgpJDgpK7gpY3gpLngpYfgpLDgpL/gpJUiOiJhbSIsIuCkleCkqOCljeCkqOClnCI6ImtuIiwi4KSV4KWB4KSw4KWN4KSm4KS/4KS2ICjgpJXgpLDgpK7gpILgpJzgpYApIjoia3UiLCLgpJXgpYjgpJ/gpYfgpLLgpKgiOiJjYSIsIuCkl+CliOCksuCkv+CktuCkv+Ckr+CkqCI6ImdsIiwi4KSa4KWA4KSo4KWAICjgpKrgpLDgpILgpKrgpLDgpL7gpJfgpKQpIjoiemgtdHciLCLgpJrgpYfgpJUiOiJjcyIsIuCknOCkvuCkquCkvuCkqOClgCI6ImphIiwi4KSc4KS84KWB4KSy4KWBIjoienUiLCLgpKHgpYjgpKjgpL/gpLYiOiJkYSIsIuCkpOClgeCksOCljeCklSI6InRyIiwi4KSk4KWH4KSy4KWB4KSX4KWBIjoidGUiLCLgpKrgpYHgpLDgpY3gpKTgpJfgpL7gpLLgpYAiOiJwdCIsIuCkq+CkvOCkv+CkqOCkv+CktiI6ImZpIiwi4KSr4KS84KWN4KSw4KWH4KSC4KSaIjoiZnIiLCLgpKzgpLDgpY3gpK7gpYAiOiJteSIsIuCkrOClgeCksuCljeCkl+CkvuCksOCkv+Ckr+CkqCI6ImJnIiwi4KSs4KWH4KSy4KS+4KSw4KWC4KS44KWA4KSv4KSoIjoiYmUiLCLgpKzgpYjgpLjgpY3gpJUiOiJldSIsIuCkruCksuCkr+CkvuCksuCkriI6Im1sIiwi4KSu4KS+4KSU4KSw4KWAIjoibWkiLCLgpK7gpL7gpLLgpY3gpJ/gpYAiOiJtdCIsIuCkruClh+CkuOClgOCkoeCli+CkqOCkv+Ckr+CkqCI6Im1rIiwi4KSv4KWC4KSV4KWN4KSw4KWH4KSo4KS/4KSv4KSoIjoidWsiLCLgpLDgpYLgpLjgpYAiOiJydSIsIuCksOCli+CkruClh+CkqOCkv+Ckr+CkqCI6InJvIiwi4KSy4KS+4KSk4KS14KS/4KSv4KSoIjoibHYiLCLgpLLgpYjgpJ/gpL/gpKgiOiJsYSIsIuCkteCkv+Ckr+CkpOCkqOCkvuCkruClgCI6InZpIiwi4KS44KSw4KWN4KSs4KS/4KSv4KS+4KSIIjoic3IiLCLgpLjgpY3gpKrgpYjgpKjgpL/gpLYiOiJlcyIsIuCkuOCljeCksuCli+CkteCkvuCklSI6InNrIiwi4KS44KWN4KSy4KWL4KS14KWH4KSo4KS/4KSv4KSoIjoic2wiLCLgpLngpILgpJfgpLDgpL/gpK/gpKgiOiJodSIsIuCkueClgOCkrOCljeCksOClgiI6ImhlIiwi4KS54KWI4KSk4KS/4KSv4KSoIOCkleCljeCksOCkv+Ckk+CksiI6Imh0Iiwi6Zi/5bCU5be05bC85Lqa6K+tIjoic3EiLCLpmL/mi4nkvK/or60iOiJhciIsIumYv+WnhuWTiOaLieivrSI6ImFtIiwi6Zi/5aGe5ouc55aG6K+tIjoiYXoiLCLniLHlsJTlhbDor60iOiJnYSIsIueIseaymeWwvOS6muivrSI6ImV0Iiwi5be05pav5YWL6K+tIjoiZXUiLCLnmb3kv4TnvZfmlq/or60iOiJiZSIsIuS/neWKoOWIqeS6muivrSI6ImJnIiwi5Yaw5bKb6K+tIjoiaXMiLCLms6LlhbDor60iOiJwbCIsIuazouaWr+ivrSI6ImZhIiwi5Li56bqm6K+tIjoiZGEiLCLlvrfor60iOiJkZSIsIuS/hOivrSI6InJ1Iiwi5rOV6K+tIjoiZnIiLCLoiqzlhbDor60iOiJmaSIsIua1t+WcsOWFi+mHjOWlpeWwlOivrSI6Imh0Iiwi6Z+p6K+tIjoia28iLCLojbflhbDor60iOiJubCIsIuWKoOWIqeilv+S6muivrSI6ImdsIiwi5Yqg5rOw572X5bC85Lqa6K+tIjoiY2EiLCLmjbflhYvor60iOiJjcyIsIuWNoee6s+i+vuivrSI6ImtuIiwi5YWL572X5Zyw5Lqa6K+tIjoiaHIiLCLlupPlsJTlvrfor60iOiJrdSIsIuaLieS4geivrSI6ImxhIiwi5ouJ6ISx57u05Lqa6K+tIjoibHYiLCLnq4vpmbblrpvor60iOiJsdCIsIue9l+mprOWwvOS6muivrSI6InJvIiwi6ams6ICz5LuW6K+tIjoibXQiLCLpqazmi4nlnLDor60iOiJtciIsIumprOaLiembheaLieWnhuivrSI6Im1sIiwi6ams5p2l6K+tIjoibXMiLCLpqazlhbbpob/or60iOiJtayIsIuavm+WIqeivrSI6Im1pIiwi6JKZ5Y+k6K+tIjoibW4iLCLnvIXnlLjor60iOiJteSIsIuWNl+mdnuellumygeivrSI6Inp1Iiwi5oyq5aiB6K+tIjoibmIiLCLokaHokITniZnor60iOiJwdCIsIuaXpeivrSI6ImphIiwi55Ge5YW46K+tIjoic3YiLCLloZ7lsJTnu7Tkupror60iOiJzciIsIuS4lueVjOivrSI6ImVvIiwi5pav5rSb5LyQ5YWL6K+tIjoic2siLCLmlq/mtJvmloflsLzkupror60iOiJzbCIsIuiLj+agvOWFsOebluWwlOivrSI6ImdkIiwi5rOw5Y2i5Zu66K+tIjoidGUiLCLms7Dor60iOiJ0aCIsIuWcn+iAs+WFtuivrSI6InRyIiwi5aiB5bCU5aOr6K+tIjoiY3kiLCLkuYzlhYvlhbDor60iOiJ1ayIsIuS5jOWFueWIq+WFi+ivrSI6InV6Iiwi6KW/54+t54mZ6K+tIjoiZXMiLCLluIzkvK/mnaXor60iOiJoZSIsIuW4jOiFiuivrSI6ImVsIiwi5YyI54mZ5Yip6K+tIjoiaHUiLCLkuprnvo7lsLzkupror60iOiJoeSIsIuaEj+Wkp+WIqeivrSI6Iml0Iiwi5Y2w5Zyw6K+tIjoiaGkiLCLljbDlsLzor60iOiJpZCIsIuiLseivrSI6ImVuIiwi6LaK5Y2X6K+tIjoidmkiLCLkuK3mloco57mB5L2TKSI6InpoLXR3Iiwi5Lit5paHKOeugOS9kykiOiJ6aC1jbiIsItCw0LfQtdGA0LHQsNC50LTQttCw0L3RgdC60LgiOiJheiIsItCw0L3Qs9C70LjQudGB0LrQuCI6ImVuIiwi0LDRgNCw0LHRgdC60LgiOiJhciIsItCw0YDQvNC10L3RgdC60LgiOiJoeSIsItCx0LDRgdC60LgiOiJldSIsItCx0LXQu9Cw0YDRg9GB0LrQuCI6ImJlIiwi0LHQuNGA0LzQsNC90YHQutC4IjoibXkiLCLQsdGK0LvQs9Cw0YDRgdC60LgiOiJiZyIsItCz0LDQu9C40YHQuNC50YHQutC4IjoiZ2wiLCLQs9GA0YrRhtC60LgiOiJlbCIsItC00LDRgtGB0LrQuCI6ImRhIiwi0LjQvdC00L7QvdC10LfQuNC50YHQutC4IjoiaWQiLCLQuNGA0LvQsNC90LTRgdC60LgiOiJnYSIsItC40YHQv9Cw0L3RgdC60LgiOiJlcyIsItC40YLQsNC70LjQsNC90YHQutC4IjoiaXQiLCLQutC40YLQsNC50YHQutC4ICjQvtC/0YDQvtGB0YLQtdC9KSI6InpoLWNuIiwi0LrQuNGC0LDQudGB0LrQuCAo0YLRgNCw0LTQuNGG0LjQvtC90LXQvSkiOiJ6aC10dyIsItC60L7RgNC10LnRgdC60LgiOiJrbyIsItC60Y7RgNC00YHQutC4Ijoia3UiLCLQu9Cw0YLQstC40LnRgdC60LgiOiJsdiIsItC70LjRgtC+0LLRgdC60LgiOiJsdCIsItC80LDQu9Cw0LnRgdC60LgiOiJtcyIsItC80LDQu9GC0LjQudGB0LrQuCI6Im10Iiwi0L3QtdC80YHQutC4IjoiZGUiLCLQvdC40LTQtdGA0LvQsNC90LTRgdC60LgiOiJubCIsItC90L7RgNCy0LXQttC60LgiOiJuYiIsItC/0LXRgNGB0LjQudGB0LrQuCI6ImZhIiwi0YDRg9C80YrQvdGB0LrQuCI6InJvIiwi0YHQu9C+0LLQsNGI0LrQuCI6InNrIiwi0YHQu9C+0LLQtdC90YHQutC4Ijoic2wiLCLRgdGA0YrQsdGB0LrQuCI6InNyIiwi0YLQsNC50LvQsNC90LTRgdC60LgiOiJ0aCIsItGD0LXQu9GB0LrQuCI6ImN5Iiwi0YPQt9Cx0LXQutGB0LrQuCI6InV6Iiwi0YTQuNC90LvQsNC90LTRgdC60LgiOiJmaSIsItGE0YDQtdC90YHQutC4IjoiZnIiLCLRhdCw0LjRgtGP0L3RgdC60Lgg0LrRgNC10L7Qu9GB0LrQuCI6Imh0Iiwi0YXRitGA0LLQsNGC0YHQutC4IjoiaHIiLCLRiNC+0YLQu9Cw0L3QtNGB0LrQuCDQutC10LvRgtGB0LrQuCI6ImdkIiwi0Y/Qv9C+0L3RgdC60LgiOiJqYSIsItin2YTYotmK2LPZhNmG2K/ZitipIjoiaXMiLCLYp9mE2KPYsNix2YrYqSI6ImF6Iiwi2KfZhNin2LHZhdmG2YrYqSI6Imh5Iiwi2KfZhNil2LPYqNin2YbZitipIjoiZXMiLCLYp9mE2KfYs9io2LHYp9mG2KrZiCI6ImVvIiwi2KfZhNil2LPYqtmI2YbZitipIjoiZXQiLCLYp9mE2KfYs9mD2KrZhNmG2K/ZitipINin2YTYutin2YTZitipIjoiZ2QiLCLYp9mE2KPZhNio2KfZhtmK2KkiOiJzcSIsItin2YTYo9mE2YXYp9mG2YrYqSI6ImRlIiwi2KfZhNij2YXZh9ix2YrYqSI6ImFtIiwi2KfZhNil2YbYrNmE2YrYstmK2KkiOiJlbiIsItin2YTYpdmG2K/ZiNmG2YrYs9mK2KkiOiJpZCIsItin2YTYo9mI2LLYqNmD2YrYqSI6InV6Iiwi2KfZhNij2YjZg9ix2KfZhtmK2KkiOiJ1ayIsItin2YTYo9mK2LHZhNmG2K/ZitipIjoiZ2EiLCLYp9mE2KXZiti32KfZhNmK2KkiOiJpdCIsItin2YTYqNin2LPZg9mK2KkiOiJldSIsItin2YTYqNix2KrYutin2YTZitipIjoicHQiLCLYp9mE2KjZhNi62KfYsdmK2KkiOiJiZyIsItin2YTYqNmI2LHZhdmK2KkiOiJteSIsItin2YTYqNmI2YTZhtiv2YrYqSI6InBsIiwi2KfZhNio2YrZhNin2LHZiNiz2YrYqSI6ImJlIiwi2KfZhNiq2KfZitmE2KfZhtiv2YrYqSI6InRoIiwi2KfZhNiq2LHZg9mK2KkiOiJ0ciIsItin2YTYqti02YrZg9mK2KkiOiJjcyIsItin2YTYqtmK2YTZiNis2YgiOiJ0ZSIsItin2YTYrNin2YTZitmD2YrYqSI6ImdsIiwi2KfZhNiv2KfZhtmF2KfYsdmD2YrYqSI6ImRhIiwi2KfZhNix2YjYs9mK2KkiOiJydSIsItin2YTYsdmI2YXYp9mG2YrYqSI6InJvIiwi2KfZhNiy2YjZhNmI2YrYqSI6Inp1Iiwi2KfZhNiz2YTZiNmB2KfZg9mK2KkiOiJzayIsItin2YTYs9mE2YjZgdmK2YbZitipIjoic2wiLCLYp9mE2LPZiNmK2K/ZitipIjoic3YiLCLYp9mE2LXYsdio2YrYqSI6InNyIiwi2KfZhNi12YrZhtmK2KkgKNin2YTYqtmC2YTZitiv2YrYqSkiOiJ6aC10dyIsItin2YTYtdmK2YbZitipICjYp9mE2YXYqNiz2LfYqSkiOiJ6aC1jbiIsItin2YTYudio2LHZitipIjoiaGUiLCLYp9mE2LnYsdio2YrYqSI6ImFyIiwi2KfZhNmB2KfYsdiz2YrYqSI6ImZhIiwi2KfZhNmB2LHZhtiz2YrYqSI6ImZyIiwi2KfZhNmB2YbZhNmG2K/ZitipIjoiZmkiLCLYp9mE2YHZitiq2YbYp9mF2YrYqSI6InZpIiwi2KfZhNmC2LfZhNmI2YbZitipIjoiY2EiLCLYp9mE2YPYp9mG2KfYr9inIjoia24iLCLYp9mE2YPYsdiv2YrYqSI6Imt1Iiwi2KfZhNmD2LHZiNin2KrZitipIjoiaHIiLCLYp9mE2YPZiNix2YrYqSI6ImtvIiwi2KfZhNmE2KfYqtmB2YrYqSI6Imx2Iiwi2KfZhNmE2KfYqtmK2YbZitipIjoibGEiLCLYp9mE2YTYutipINin2YTZg9ix2YrZiNmE2YrYqSDYp9mE2YfYp9mK2KrZitipIjoiaHQiLCLYp9mE2YTZitiq2YjYp9mG2YrYqSI6Imx0Iiwi2KfZhNmF2KfZhNin2YrYp9mE2KfZhdmK2KkiOiJtbCIsItin2YTZhdin2YTYt9mK2ZHYqSI6Im10Iiwi2KfZhNmF2KfZiNix2YrYqSI6Im1pIiwi2KfZhNmF2YLYr9mI2YbZitipIjoibWsiLCLYp9mE2YXZhNin2YrZiCI6Im1zIiwi2KfZhNmF2YbYutmI2YTZitipIjoibW4iLCLYp9mE2YXZh9ix2KfYqtmK2KkiOiJtciIsItin2YTZhtix2YjZitis2YrYqSI6Im5iIiwi2KfZhNmH2YbYr9mK2KkiOiJoaSIsItin2YTZh9mG2LrYp9ix2YrYqSI6Imh1Iiwi2KfZhNmH2YjZhNmG2K/ZitipIjoibmwiLCLYp9mE2YjZitmE2LLZitipIjoiY3kiLCLYp9mE2YrYp9io2KfZhtmK2KkiOiJqYSIsItin2YTZitmI2YbYp9mG2YrYqSI6ImVsIiwi0LHQsNGB0LrQuNGY0YHQutC4IjoiZXUiLCLQstC40ZjQtdGC0L3QsNC80YHQutC4IjoidmkiLCLQs9Cw0LvRgdC60LgiOiJnbCIsItC10L3Qs9C70LXRgdC60LgiOiJlbiIsItC40L3QtNC+0L3QtdC20LDQvdGB0LrQuCI6ImlkIiwi0ZjQsNC/0LDQvdGB0LrQuCI6ImphIiwi0ZjQtdGA0LzQtdC90YHQutC4IjoiaHkiLCLQutC40L3QtdGB0LrQuCAo0L/QvtGY0LXQtNC90L7RgdGC0LDQstGZ0LXQvdC4KSI6InpoLWNuIiwi0LrQuNC90LXRgdC60LggKNGC0YDQsNC00LjRhtC40L7QvdCw0LvQvdC4KSI6InpoLXR3Iiwi0LrRgNC10L7Qu9GB0LrQuCAo0YXQsNC40YLQuCkiOiJodCIsItC70LXRgtC+0L3RgdC60LgiOiJsdiIsItC80LDRktCw0YDRgdC60LgiOiJodSIsItC80LDRgNCw0YLQuCI6Im1yIiwi0L3QtdC80LDRh9C60LgiOiJkZSIsItC/0LXRgNGB0LjRmNGB0LrQuCI6ImZhIiwi0L/QvtGZ0YHQutC4IjoicGwiLCLRgNGD0LzRg9C90YHQutC4Ijoicm8iLCLRgdC70L7QstC10L3QsNGH0LrQuCI6InNsIiwi0YLQsNGY0YHQutC4IjoidGgiLCLRg9C60YDQsNGY0LjQvdGB0LrQuCI6InVrIiwi0LDQt9C10YDQsdCw0LnQttCw0L0iOiJheiIsItCw0LvQsdCw0L3QuCI6InNxIiwi0LDQvNGF0LDRgNC40LoiOiJhbSIsItCw0L3Qs9C70LgiOiJlbiIsItCw0YDQsNCxIjoiYXIiLCLQsNGA0LzQtdC90LgiOiJoeSIsItCx0LDRgdC6IjoiZXUiLCLQsdC10LvQsNGA0YPRgdGMIjoiYmUiLCLQsdC40YDQvCI6Im15Iiwi0LHQvtC70LPQsNGAIjoiYmciLCLQstGM0LXRgtC90LDQvCI6InZpIiwi0LPQsNC40YLQuCDQutGA0LXQvtC7IjoiaHQiLCLQs9Cw0LvQuNC6IjoiZ2wiLCLQs9Cw0Y3QuyI6ImdkIiwi0LPQtdGA0LzQsNC9IjoiZGUiLCLQs9C+0LvQu9Cw0L3QtCI6Im5sIiwi0LPRgNC10LoiOiJlbCIsItC00LDQvdC4IjoiZGEiLCLQuNC90LTQvtC90LXQt9C4IjoiaWQiLCLQuNGA0LvQsNC90LQiOiJnYSIsItC40YHQu9Cw0L3QtCI6ImlzIiwi0LjRgdC/0LDQvdC4IjoiZXMiLCLQuNGC0LDQu9C4IjoiaXQiLCLQutCw0YLQsNC70LDQvSI6ImNhIiwi0LrQuNC/0YAiOiJoZSIsItC60YPRgNC0Ijoia3UiLCLQu9Cw0YLQstC4IjoibHYiLCLQu9Cw0YLQuNC9IjoibGEiLCLQu9C40YLQstCwIjoibHQiLCLQvNCw0LrQtdC00L7QvSI6Im1rIiwi0LzQsNC70LDQuSI6Im1zIiwi0LzQsNC70LDQudC70LDQvCI6Im1sIiwi0LzQsNC70YLQuCI6Im10Iiwi0LzQvtC90LPQvtC7IjoibW4iLCLQvdC+0YDQstC10LPQuCI6Im5iIiwi0L7RgNC+0YEiOiJydSIsItC/0LXRgNGBIjoiZmEiLCLQv9C+0LvRjNGIIjoicGwiLCLQv9C+0YDRgtGD0LPQsNC70YwiOiJwdCIsItGA0YPQvNGL0L0iOiJybyIsItGB0LXRgNCx0LgiOiJzciIsItGB0LvQvtCy0LDQuiI6InNrIiwi0YHQu9C+0LLQtdC90LgiOiJzbCIsItGB0L7Qu9C+0L3Qs9C+0YEiOiJrbyIsItGC0LDQuSI6InRoIiwi0YLRg9GA0LoiOiJ0ciIsItGC0Y3Qu9Kv0LPSryI6InRlIiwi0YPQt9Cx0LXQuiI6InV6Iiwi0YPQutGA0LDQuNC9IjoidWsiLCLRg9C90LPQsNGAIjoiaHUiLCLRg9GN0LvRjNGBIjoiY3kiLCLRhNC40L3Qu9GP0L3QtCI6ImZpIiwi0YTRgNCw0L3RhiI6ImZyIiwi0YXQvtGA0LLQsNGCIjoiaHIiLCLRhdGP0YLQsNC0ICjQtdGA0LTQuNC50L0pIjoiemgtY24iLCLRhdGP0YLQsNC0ICjRg9C70LDQvNC20LvQsNC70YIpIjoiemgtdHciLCLRh9C10YUiOiJjcyIsItGI0LLQtdC0Ijoic3YiLCLRjdGB0YLQvtC90LgiOiJldCIsItGP0L/QvtC9IjoiamEiLCJhbWhhcmlza2EiOiJhbSIsImFyYWJpc2thIjoiYXIiLCJhcm1lbmlza2EiOiJoeSIsImF6ZXJiYWpkemphbnNrYSI6ImF6IiwiYmFza2lza2EiOiJldSIsImJ1bGdhcmlza2EiOiJiZyIsImJ1cm1lc2lza2EiOiJteSIsImVuZ2Vsc2thIjoiZW4iLCJlc3RuaXNrYSI6ImV0IiwiZmluc2thIjoiZmkiLCJnYWVsaXNrYSI6ImdkIiwiZ2FsaWNpc2thIjoiZ2wiLCJncmVraXNrYSI6ImVsIiwiaGFpdGlza2EiOiJodCIsImhlYnJlaXNrYSI6ImhlIiwiaW5kb25lc2lza2EiOiJpZCIsImlybMOkbmRza2EiOiJnYSIsImlzbMOkbmRza2EiOiJpcyIsIml0YWxpZW5za2EiOiJpdCIsImthbmFyZXNpc2thIjoia24iLCJrYXRhbGFuc2thIjoiY2EiLCJraW5lc2lza2EgKGbDtnJlbmtsYWQpIjoiemgtY24iLCJraW5lc2lza2EgKHRyYWRpdGlvbmVsbCkiOiJ6aC10dyIsImtvcmVhbnNrYSI6ImtvIiwia3JvYXRpc2thIjoiaHIiLCJrdXJkaXNrYSI6Imt1IiwibGV0dGlza2EiOiJsdiIsImxpdGF1aXNrYSI6Imx0IiwibWFrZWRvbnNrYSI6Im1rIiwibWFsYXlzaXNrYSI6Im1zIiwibWFsdGVzaXNrYSI6Im10IiwibW9uZ29saXNrYSI6Im1uIiwibmVkZXJsw6RuZHNrYSI6Im5sIiwicGVyc2lza2EiOiJmYSIsInBvbHNrYSI6InBsIiwicG9ydHVnaXNpc2thIjoicHQiLCJydW3DpG5za2EiOiJybyIsInJ5c2thIjoicnUiLCJzZXJiaXNrYSI6InNyIiwic2xvdmFraXNrYSI6InNrIiwic2xvdmVuc2thIjoic2wiLCJzcGFuc2thIjoiZXMiLCJzdmVuc2thIjoic3YiLCJ0aGFpbMOkbmRza2EiOiJ0aCIsInRqZWNraXNrYSI6ImNzIiwidHVya2lza2EiOiJ0ciIsInR5c2thIjoiZGUiLCJ1a3JhaW5za2EiOiJ1ayIsInVuZ2Vyc2thIjoiaHUiLCJ1emJla2lza2EiOiJ1eiIsInZpZXRuYW1lc2lza2EiOiJ2aSIsInZpdHJ5c2thIjoiYmUiLCJ3YWxlc2lza2EiOiJjeSIsImFsYmFuZXrEgyI6InNxIiwiYW1oYXJpY8SDIjoiYW0iLCJhcmFixIMiOiJhciIsImFybWVhbsSDIjoiaHkiLCJhemVyYmFpZGphbsSDIjoiYXoiLCJiYXNjxIMiOiJldSIsImJpZWxvcnVzxIMiOiJiZSIsImJpcm1hbsSDIjoibXkiLCJidWxnYXLEgyI6ImJnIiwiY2F0YWxhbsSDIjoiY2EiLCJjZWjEgyI6ImNzIiwiY2hpbmV6xIMgKHNpbXBsaWZpY2F0xIMpIjoiemgtY24iLCJjaGluZXrEgyAodHJhZGnIm2lvbmFsxIMpIjoiemgtdHciLCJjb3JlZWFuxIMiOiJrbyIsImNyZW9sxIMgaGFpdGlhbsSDIjoiaHQiLCJjcm9hdMSDIjoiaHIiLCJkYW5lesSDIjoiZGEiLCJlYnJhaWPEgyI6ImhlIiwiZW5nbGV6xIMiOiJlbiIsImVzdG9uxIMiOiJldCIsImZpbmxhbmRlesSDIjoiZmkiLCJmcmFuY2V6xIMiOiJmciIsImdhbGV6xIMiOiJjeSIsImdhbGljYSBzY2/Im2lhbsSDIjoiZ2QiLCJnYWxpY2lhbsSDIjoiZ2wiLCJnZXJtYW7EgyI6ImRlIiwiZ3JlYWPEgyI6ImVsIiwiaW5kb25lemlhbsSDIjoiaWQiLCJpcmxhbmRlesSDIjoiZ2EiLCJpc2xhbmRlesSDIjoiaXMiLCJpdGFsaWFuxIMiOiJpdCIsImphcG9uZXrEgyI6ImphIiwia3VyZMSDIjoia3UiLCJsYXRpbsSDIjoibGEiLCJsZXRvbsSDIjoibHYiLCJsaXR1YW5pYW7EgyI6Imx0IiwibWFjZWRvbmVhbsSDIjoibWsiLCJtYWdoaWFyxIMiOiJodSIsIm1hbGFlesSDIjoibXMiLCJtYWx0ZXrEgyI6Im10IiwibW9uZ29sxIMiOiJtbiIsIm5lZXJsYW5kZXrEgyI6Im5sIiwibm9ydmVnaWFuxIMiOiJuYiIsInBlcnNhbsSDIjoiZmEiLCJwb2xvbmV6xIMiOiJwbCIsInBvcnR1Z2hlesSDIjoicHQiLCJyb23Dom7EgyI6InJvIiwicnVzxIMiOiJydSIsInPDonJixIMiOiJzciIsInNsb3ZhY8SDIjoic2siLCJzbG92ZW7EgyI6InNsIiwic3BhbmlvbMSDIjoiZXMiLCJzdWVkZXrEgyI6InN2IiwidGhhaWxhbmRlesSDIjoidGgiLCJ0dXJjxIMiOiJ0ciIsInVjcmFpbmVhbsSDIjoidWsiLCJ1emJlY8SDIjoidXoiLCJ2aWV0bmFtZXrEgyI6InZpIiwiYWlyacWzIjoiZ2EiLCJhbGJhbsWzIjoic3EiLCJhbWhhcsWzIjoiYW0iLCJhbmdsxbMiOiJlbiIsImFyYWLFsyI6ImFyIiwiYXJtxJduxbMiOiJoeSIsImF6ZXJiYWlkxb5hbmllxI1pxbMiOiJheiIsImJhbHRhcnVzacWzIjoiYmUiLCJiYXNrxbMiOiJldSIsImJpcm1pZcSNacWzIjoibXkiLCJidWxnYXLFsyI6ImJnIiwixI1la8WzIjoiY3MiLCJkYW7FsyI6ImRhIiwiZXN0xbMiOiJldCIsImdhbGlzxbMiOiJnbCIsImdyYWlrxbMiOiJlbCIsImhhacSNaW8ga3Jlb2zFsyI6Imh0IiwiaGVicmFqxbMiOiJoZSIsImluZG9uZXppZcSNacWzIjoiaWQiLCJpc2xhbmTFsyI6ImlzIiwiaXNwYW7FsyI6ImVzIiwiaXRhbMWzIjoiaXQiLCJqYXBvbsWzIjoiamEiLCJrYW5hZMWzIjoia24iLCJrYXRhbG9uaWXEjWnFsyI6ImNhIiwia2luxbMgKHN1cGFwcmFzdGludGEpIjoiemgtY24iLCJraW7FsyAodHJhZGljaW7ElykiOiJ6aC10dyIsImtvcsSXamllxI1pxbMiOiJrbyIsImtyb2F0xbMiOiJociIsImt1cmTFsyI6Imt1IiwibGF0dmnFsyI6Imx2IiwibGVua8WzIjoicGwiLCJsaWV0dXZpxbMiOiJsdCIsImxvdHluxbMiOiJsYSIsIm1ha2Vkb25pZcSNacWzIjoibWsiLCJtYWxhamFsacWzIjoibWwiLCJtYWxhamllxI1pxbMiOiJtcyIsIm1hbHRpZcSNacWzIjoibXQiLCJtYW9yacWzIjoibWkiLCJtYXJhdMWzIjoibXIiLCJtb25nb2zFsyI6Im1uIiwibm9ydmVnxbMiOiJuYiIsIm9sYW5kxbMiOiJubCIsInBlcnPFsyI6ImZhIiwicG9ydHVnYWzFsyI6InB0IiwicHJhbmPFq3rFsyI6ImZyIiwicnVtdW7FsyI6InJvIiwicnVzxbMiOiJydSIsInNlcmLFsyI6InNyIiwic2xvdmFrxbMiOiJzayIsInNsb3bEl27FsyI6InNsIiwic3VvbWnFsyI6ImZpIiwixaFrb3TFsyAoZ8SXbMWzKSI6ImdkIiwixaF2ZWTFsyI6InN2IiwidGFqxbMiOiJ0aCIsInRlbHVnxbMiOiJ0ZSIsInR1cmvFsyI6InRyIiwidWtyYWluaWXEjWnFsyI6InVrIiwidXpiZWvFsyI6InV6IiwidmFsxbMiOiJjeSIsInZlbmdyxbMiOiJodSIsInZpZXRuYW1pZcSNacWzIjoidmkiLCJ2b2tpZcSNacWzIjoiZGUiLCJ6dWx1c8WzIjoienUiLCLqsIjrpqzsi5zslYTslrQiOiJnbCIsIuq3uOumrOyKpOyWtCI6ImVsIiwi64Sk642c656A65Oc7Ja0IjoibmwiLCLrhbjrpbTsm6jsnbTslrQiOiJuYiIsIuuNtOuniO2BrOyWtCI6ImRhIiwi64+F7J287Ja0IjoiZGUiLCLrnbztirjruYTslYTslrQiOiJsdiIsIuudvO2LtOyWtCI6ImxhIiwi65+s7Iuc7JWE7Ja0IjoicnUiLCLro6jrp4jri4jslYTslrQiOiJybyIsIuumrO2IrOyVhOuLiOyVhOyWtCI6Imx0Iiwi66eI65287Yuw7Ja0IjoibXIiLCLrp4jsmKTrpqzslrQiOiJtaSIsIuuniOy8gOuPhOuLiOyVhOyWtCI6Im1rIiwi66eQ65287JaE656M7Ja0IjoibWwiLCLrp5DroIjsnbTslrQiOiJtcyIsIuuqsO2DgOyWtCI6Im10Iiwi66q96rOo7Ja0IjoibW4iLCLrr7jsloDrp4jslrQgKOuyhOuniOyWtCkiOiJteSIsIuuwlOyKpO2BrOyWtCI6ImV1Iiwi67Kg7Yq464Ko7Ja0IjoidmkiLCLrsqjrnbzro6jsiqTslrQiOiJiZSIsIuu2iOqwgOumrOyVhOyWtCI6ImJnIiwi7IS466W067mE7JWE7Ja0Ijoic3IiLCLsiqTsm6jrjbTslrQiOiJzdiIsIuyKpOy9lO2LgOuenOuTnCDqsozsnbzslrQiOiJnZCIsIuyKpO2OmOyduOyWtCI6ImVzIiwi7Iqs66Gc67CU7YKk7JWE7Ja0Ijoic2siLCLsiqzroZzrsqDri4jslYTslrQiOiJzbCIsIuyVhOuejeyWtCI6ImFyIiwi7JWE66W066mU64uI7JWE7Ja0IjoiaHkiLCLslYTsnbTsiqzrnoDrk5zslrQiOiJpcyIsIuyVhOydtO2LsCDtgazrpqzsmKzslrQiOiJodCIsIuyVhOydvOuenOuTnOyWtCI6ImdhIiwi7JWE7KCc66W067CU7J207J6U7Ja0IjoiYXoiLCLslYzrsJTri4jslYTslrQiOiJzcSIsIuyVlO2VmOudvOyWtCI6ImFtIiwi7JeQ7Iqk7Yag64uI7JWE7Ja0IjoiZXQiLCLsl5DsiqTtjpjrnoDthqDslrQiOiJlbyIsIuyYgeyWtCI6ImVuIiwi7Jqw7KaI67Kg7YGs7Ja0IjoidXoiLCLsmrDtgazrnbzsnbTrgpjslrQiOiJ1ayIsIuybqOydvOymiOyWtCI6ImN5Iiwi7J207YOI66as7JWE7Ja0IjoiaXQiLCLsnbjrj4TrhKTsi5zslYTslrQiOiJpZCIsIuydvOuzuOyWtCI6ImphIiwi7KSE66Oo7Ja0IjoienUiLCLspJHqta3slrQo6rCE7LK0KSI6InpoLWNuIiwi7KSR6rWt7Ja0KOuyiOyytCkiOiJ6aC10dyIsIuyytOy9lOyWtCI6ImNzIiwi7Lm07YOI66Gc64uI7JWE7Ja0IjoiY2EiLCLsubjrgpjri6TslrQiOiJrbiIsIuy/oOultOuTnOyWtCI6Imt1Iiwi7YGs66Gc7JWE7Yuw7JWE7Ja0IjoiaHIiLCLtg5zqta3slrQiOiJ0aCIsIu2EsO2CpOyWtCI6InRyIiwi7YWU66Oo6rWs7Ja0IjoidGUiLCLtjpjrpbTsi5zslYTslrQiOiJmYSIsIu2PrOultO2IrOqwiOyWtCI6InB0Iiwi7Y+0656A65Oc7Ja0IjoicGwiLCLtlITrnpHsiqTslrQiOiJmciIsIu2VgOuegOuTnOyWtCI6ImZpIiwi7ZWc6rWt7Ja0Ijoia28iLCLtl53qsIDrpqzslrQiOiJodSIsIu2eiOu4jOumrOyWtCI6ImhlIiwi7Z6M65SU7Ja0IjoiaGkiLCJhbGJhbmVzZSI6InNxIiwiYW1hcmljbyI6ImFtIiwiYXJhYm8iOiJhciIsImFybWVubyI6Imh5IiwiYXplcm8iOiJheiIsImJpZWxvcnVzc28iOiJiZSIsImJ1bGdhcm8iOiJiZyIsImNhdGFsYW5vIjoiY2EiLCJjZWNvIjoiY3MiLCJjaW5lc2UgKHNlbXBsaWZpY2F0bykiOiJ6aC1jbiIsImNpbmVzZSAodHJhZGl6aW9uYWxlKSI6InpoLXR3IiwiY3Jlb2xvIGhhaXRpYW5vIjoiaHQiLCJjcm9hdG8iOiJociIsImN1cmRvIChrdXJtYW5qaSkiOiJrdSIsImRhbmVzZSI6ImRhIiwiZWJyYWljbyI6ImhlIiwiZXN0b25lIjoiZXQiLCJmaW5sYW5kZXNlIjoiZmkiLCJmcmFuY2VzZSI6ImZyIiwiZ2FlbGljbyBzY296emVzZSI6ImdkIiwiZ2FsaXppYW5vIjoiZ2wiLCJnYWxsZXNlIjoiY3kiLCJnaWFwcG9uZXNlIjoiamEiLCJncmVjbyI6ImVsIiwiaW5kb25lc2lhbm8iOiJpZCIsImluZ2xlc2UiOiJlbiIsImlybGFuZGVzZSI6ImdhIiwiaXNsYW5kZXNlIjoiaXMiLCJsYXRpbm8iOiJsYSIsImxldHRvbmUiOiJsdiIsIm1hY2Vkb25lIjoibWsiLCJtYWxlc2UiOiJtcyIsIm1vbmdvbG8iOiJtbiIsIm5vcnZlZ2VzZSI6Im5iIiwib2xhbmRlc2UiOiJubCIsInBlcnNpYW5vIjoiZmEiLCJwb2xhY2NvIjoicGwiLCJwb3J0b2doZXNlIjoicHQiLCJydW1lbm8iOiJybyIsInNlcmJvIjoic3IiLCJzbG92YWNjbyI6InNrIiwic2xvdmVubyI6InNsIiwic3BhZ25vbG8iOiJlcyIsInN2ZWRlc2UiOiJzdiIsInRhaWxhbmRlc2UiOiJ0aCIsInRlZGVzY28iOiJkZSIsInVjcmFpbm8iOiJ1ayIsInVuZ2hlcmVzZSI6Imh1IiwicXXhu5FjIHThur8gbmfhu68iOiJlbyIsInRp4bq/bmcg4bqjIHLhuq1wIjoiYXIiLCJ0aeG6v25nIGFsYmFuaWEiOiJzcSIsInRp4bq/bmcgYW1oYXJpYyI6ImFtIiwidGnhur9uZyBhbmgiOiJlbiIsInRp4bq/bmcgYXJtZW5pYSI6Imh5IiwidGnhur9uZyBhemVyYmFpamFuIjoiYXoiLCJ0aeG6v25nIGJhIGxhbiI6InBsIiwidGnhur9uZyBiYSB0xrAiOiJmYSIsInRp4bq/bmcgYmFzcXVlIjoiZXUiLCJ0aeG6v25nIGJlbGFydXMiOiJiZSIsInRp4bq/bmcgYuG7kyDEkcOgbyBuaGEiOiJwdCIsInRp4bq/bmcgYnVsZ2FyaWEiOiJiZyIsInRp4bq/bmcgY2F0YWxhbiI6ImNhIiwidGnhur9uZyBjcmVvbGUg4bufIGhhaXRpIjoiaHQiLCJ0aeG6v25nIGNyb2F0aWEiOiJociIsInRp4bq/bmcgZG8gdGjDoWkiOiJoZSIsInRp4bq/bmcgxJFhbiBt4bqhY2giOiJkYSIsInRp4bq/bmcgxJHhu6ljIjoiZGUiLCJ0aeG6v25nIGVzdG9uaWEiOiJldCIsInRp4bq/bmcgZ2FlbCBzY290bGFuZCI6ImdkIiwidGnhur9uZyBnYWxpY2lhIjoiZ2wiLCJ0aeG6v25nIGjDoCBsYW4iOiJubCIsInRp4bq/bmcgaMOgbiI6ImtvIiwidGnhur9uZyBoaW5kaSI6ImhpIiwidGnhur9uZyBodW5nYXJ5IjoiaHUiLCJ0aeG6v25nIGh5IGzhuqFwIjoiZWwiLCJ0aeG6v25nIGljZWxhbmQiOiJpcyIsInRp4bq/bmcgaW5kb25lc2lhIjoiaWQiLCJ0aeG6v25nIGlyZWxhbmQiOiJnYSIsInRp4bq/bmcga2FubmFkYSI6ImtuIiwidGnhur9uZyBrdXJkIjoia3UiLCJ0aeG6v25nIGxhdGluaCI6ImxhIiwidGnhur9uZyBsYXR2aWEiOiJsdiIsInRp4bq/bmcgbGl0dmEiOiJsdCIsInRp4bq/bmcgbcOjIGxhaSI6Im1zIiwidGnhur9uZyBtYWNlZG9uaWEiOiJtayIsInRp4bq/bmcgbWFsYXlhbGFtIjoibWwiLCJ0aeG6v25nIG1hbHRhIjoibXQiLCJ0aeG6v25nIG1hb3JpIjoibWkiLCJ0aeG6v25nIG1hcmF0aGkiOiJtciIsInRp4bq/bmcgbcO0bmcgY+G7lSI6Im1uIiwidGnhur9uZyBteWFubWFyIjoibXkiLCJ0aeG6v25nIG5hIHV5IjoibmIiLCJ0aeG6v25nIG5nYSI6InJ1IiwidGnhur9uZyBuaOG6rXQiOiJqYSIsInRp4bq/bmcgcGjDoXAiOiJmciIsInRp4bq/bmcgcGjhuqduIGxhbiI6ImZpIiwidGnhur9uZyBydW1hbmkiOiJybyIsInRp4bq/bmcgc8OpYyI6ImNzIiwidGnhur9uZyBzZXJiaWEiOiJzciIsInRp4bq/bmcgc2xvdmFrIjoic2siLCJ0aeG6v25nIHNsb3ZlbmlhIjoic2wiLCJ0aeG6v25nIHTDonkgYmFuIG5oYSI6ImVzIiwidGnhur9uZyB0ZWx1Z3UiOiJ0ZSIsInRp4bq/bmcgdGjDoWkiOiJ0aCIsInRp4bq/bmcgdGjhu5UgbmjEqSBr4buzIjoidHIiLCJ0aeG6v25nIHRo4buleSDEkWnhu4NuIjoic3YiLCJ0aeG6v25nIHRydW5nIChnaWHMiW4gdGjDqsyJKSI6InpoLWNuIiwidGnhur9uZyB0cnVuZyAocGjhu5NuIHRo4buDKSI6InpoLXR3IiwidGnhur9uZyB1a3JhaW5hIjoidWsiLCJ0aeG6v25nIHV6YmVrIjoidXoiLCJ0aeG6v25nIHZp4buHdCI6InZpIiwidGnhur9uZyB44bupIHdhbGVzIjoiY3kiLCJ0aeG6v25nIMO9IjoiaXQiLCJ0aeG6v25nIHp1bHUiOiJ6dSIsIuOBq+OBu+OCk+OBlCI6ImphIn0sInNjcmF0Y2hUb0dvb2dsZU1hcCI6eyJ6aC1jbiI6InpoIiwibmIiOiJubyIsImhlIjoiaXciLCJlcy00MTkiOiJlcyIsInB0LWJyIjoicHQiLCJqYS1oaXJhIjoiamEifSwicHJldmlvdXNseVN1cHBvcnRlZCI6WyJhYiIsIm1zIiwiYmUiLCJlbyIsImh5IiwiaGkiLCJrbiIsImh0Iiwia3UiLCJsYSIsIm1rIiwibWwiLCJtdCIsIm1yIiwibW4iLCJteSIsIm5uIiwic3EiLCJ0ZSIsInV6Il19Jyl9LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiBpKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3Qgcj10KDI3KSx7T3JkZXJlZE1hcDpvfT10KDM0KSxzPXQoOTIpLGE9dCgzKSxCPXQoMjIpLGM9dCg5NSksZz10KDEpLEU9KHQoMTApLHQoMjE5KSksUT10KDk2KSx1PXQoNjEpLGw9dCg0MyksaD10KDIyNSksdz10KDEzKSxDPXQoMzYpLEk9dCg1KSxNPXQoODQpLGQ9dCgxNikscD10KDE5KSxtPXQoMjQpLEY9dCgyMjYpLEQ9dCgyMjcpLHt2YWxpZGF0ZUpTT046WX09dCgxNCksZj10KDgpLE49dCgyMjkpLFU9dCgyMzApLHk9dCg2KSxUPXQoMikseD10KDYyKSxSPXQoMjMxKSxHPXQoMjMyKSxTPXQoMjMzKSxiPXQoMjM0KSxIPXQoMjM1KSx2PXQoMjM2KSxrPXQoOTgpLGo9dCgyMzcpLEo9dCgxMSksej10KDkpLEw9W3AuU0NBTEFSX1RZUEUscC5MSVNUX1RZUEUscC5CUk9BRENBU1RfTUVTU0FHRV9UWVBFXSxQPXtzY3JhdGNoM19jb250cm9sOnQoMjM4KSxzY3JhdGNoM19ldmVudDp0KDIzOSksc2NyYXRjaDNfbG9va3M6dCgyNDApLHNjcmF0Y2gzX21vdGlvbjp0KDI0MSksc2NyYXRjaDNfb3BlcmF0b3JzOnQoMjQyKSxzY3JhdGNoM19zb3VuZDp0KDI0Myksc2NyYXRjaDNfc2Vuc2luZzp0KDI0NCksc2NyYXRjaDNfZGF0YTp0KDI0NSksc2NyYXRjaDNfcHJvY2VkdXJlczp0KDI0NikscG1fbGl2ZVRlc3RzOnQoMjQ3KX0sTz10KDI0OCksVj10KDI0OSksVz1bIiMwRkJEOEMiLCIjMERBNTdBIiwiIzBCOEU2OSJdLEs9KCgpPT57Y29uc3QgQT17fTtyZXR1cm4gQVthLkFOR0xFXT17c2hhZG93Ont0eXBlOiJtYXRoX2FuZ2xlIixmaWVsZE5hbWU6Ik5VTSJ9fSxBW2EuQ09MT1JdPXtzaGFkb3c6e3R5cGU6ImNvbG91cl9waWNrZXIiLGZpZWxkTmFtZToiQ09MT1VSIn19LEFbYS5OVU1CRVJdPXtzaGFkb3c6e3R5cGU6Im1hdGhfbnVtYmVyIixmaWVsZE5hbWU6Ik5VTSJ9fSxBW2EuU1RSSU5HXT17c2hhZG93Ont0eXBlOiJ0ZXh0IixmaWVsZE5hbWU6IlRFWFQifX0sQVthLkJPT0xFQU5dPXtjaGVjazoiQm9vbGVhbiIsc2hhZG93Ont0eXBlOiJjaGVja2JveCIsZmllbGROYW1lOiJDSEVDS0JPWCJ9fSxBW2EuTUFUUklYXT17c2hhZG93Ont0eXBlOiJtYXRyaXgiLGZpZWxkTmFtZToiTUFUUklYIn19LEFbYS5OT1RFXT17c2hhZG93Ont0eXBlOiJub3RlIixmaWVsZE5hbWU6Ik5PVEUifX0sQVthLklNQUdFXT17ZmllbGRUeXBlOiJmaWVsZF9pbWFnZSJ9LEFbYS5QT0xZR09OXT17Y2hlY2s6Im1hdGhfcG9seWdvbiIsc2hhZG93Ont0eXBlOiJwb2x5Z29uIn19LEFbYS5DVVNUT01dPXtmaWVsZFR5cGU6ImZpZWxkX2N1c3RvbUlucHV0In0sQVthLkNPU1RVTUVdPXtzaGFkb3c6e3R5cGU6Imxvb2tzX2Nvc3R1bWUiLGZpZWxkTmFtZToiQ09TVFVNRSJ9fSxBW2EuU09VTkRdPXtzaGFkb3c6e3R5cGU6InNvdW5kX3NvdW5kc19tZW51IixmaWVsZE5hbWU6IlNPVU5EX01FTlUifX0sQVthLlZBUklBQkxFXT17ZmllbGRUeXBlOiJmaWVsZF92YXJpYWJsZSIsZmllbGROYW1lOiJWQVJJQUJMRSJ9LEFbYS5MSVNUXT17ZmllbGRUeXBlOiJmaWVsZF92YXJpYWJsZSIsZmllbGROYW1lOiJMSVNUIix2YXJpYWJsZVR5cGU6Imxpc3QifSxBW2EuQlJPQURDQVNUXT17ZmllbGRUeXBlOiJmaWVsZF92YXJpYWJsZSIsZmllbGROYW1lOiJCUk9BRENBU1QiLHZhcmlhYmxlVHlwZToiYnJvYWRjYXN0X21zZyJ9LEFbYS5TRVBFUkFUT1JdPXtmaWVsZFR5cGU6ImZpZWxkX3ZlcnRpY2FsX3NlcGFyYXRvciJ9LEF9KSgpLFg9QT0+e2xldCBlPTA7cmV0dXJue2NhbkFkZENsb3VkVmFyaWFibGU6KCk9PmU8QS5saW1pdCxhZGRDbG91ZFZhcmlhYmxlOigpPT57ZSsrfSxyZW1vdmVDbG91ZFZhcmlhYmxlOigpPT57ZS0tfSxoYXNDbG91ZFZhcmlhYmxlczooKT0+ZT4wLGdldE51bWJlck9mQ2xvdWRWYXJpYWJsZXM6KCk9PmV9fTtsZXQgWj0tMSxfPS0xLHE9LTE7Y2xhc3MgJCBleHRlbmRzIHJ7Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMudGFyZ2V0cz1bXSx0aGlzLmV4ZWN1dGFibGVUYXJnZXRzPVtdLHRoaXMudGhyZWFkcz1bXSx0aGlzLnRocmVhZE1hcD1uZXcgTWFwLHRoaXMuc2VxdWVuY2VyPW5ldyBRKHRoaXMpLHRoaXMuZmx5b3V0QmxvY2tzPW5ldyBCKHRoaXMsITApLHRoaXMubW9uaXRvckJsb2Nrcz1uZXcgQih0aGlzLCEwKSx0aGlzLl9lZGl0aW5nVGFyZ2V0PW51bGwsdGhpcy5fcHJpbWl0aXZlcz17fSx0aGlzLl9ibG9ja0luZm89W10sdGhpcy5faGF0cz17fSx0aGlzLl9zY3JpcHRHbG93c1ByZXZpb3VzRnJhbWU9W10sdGhpcy5fbm9uTW9uaXRvclRocmVhZENvdW50PTAsdGhpcy5fbGFzdFN0ZXBEb25lVGhyZWFkcz1udWxsLHRoaXMudGFiTWFuYWdlcj1uZXcgTih0aGlzKSx0aGlzLm1vZGFsTWFuYWdlcj1uZXcgVSh0aGlzKSx0aGlzLl9jbG9uZUNvdW50ZXI9MCx0aGlzLl9yZWZyZXNoVGFyZ2V0cz0hMSx0aGlzLm1vbml0b3JCbG9ja0luZm89e30sdGhpcy5fbW9uaXRvclN0YXRlPW8oe30pLHRoaXMuX3ByZXZNb25pdG9yU3RhdGU9byh7fSksdGhpcy50dXJib01vZGU9ITEsdGhpcy5mcmFtZUxvb3A9bmV3IFYodGhpcyksdGhpcy5jdXJyZW50U3RlcFRpbWU9MWUzLzMwLHRoaXMudXBkYXRlQ3VycmVudE1TZWNzKCksdGhpcy5yZWRyYXdSZXF1ZXN0ZWQ9ITEsdGhpcy5fcmVnaXN0ZXJCbG9ja1BhY2thZ2VzKCksdGhpcy5pb0RldmljZXM9e2Nsb2NrOm5ldyBSKHRoaXMpLGNsb3VkOm5ldyBHKHRoaXMpLGtleWJvYXJkOm5ldyBTKHRoaXMpLG1vdXNlOm5ldyBiKHRoaXMpLG1vdXNlV2hlZWw6bmV3IEgodGhpcyksdXNlckRhdGE6bmV3IHYsdmlkZW86bmV3IGsodGhpcyksdG91Y2g6bmV3IGoodGhpcyl9LHRoaXMucGVyaXBoZXJhbEV4dGVuc2lvbnM9e30sdGhpcy5wcm9maWxlcj1udWxsLHRoaXMuY2xvdWRPcHRpb25zPXtsaW1pdDoxMH0sdGhpcy5leHRlbnNpb25SdW50aW1lT3B0aW9ucz17amF2YXNjcmlwdFVuc2FuZGJveGVkOiExfTtjb25zdCBBPVgodGhpcy5jbG91ZE9wdGlvbnMpO3RoaXMuaGFzQ2xvdWREYXRhPUEuaGFzQ2xvdWRWYXJpYWJsZXMsdGhpcy5jYW5BZGRDbG91ZFZhcmlhYmxlPUEuY2FuQWRkQ2xvdWRWYXJpYWJsZSx0aGlzLmdldE51bWJlck9mQ2xvdWRWYXJpYWJsZXM9QS5nZXROdW1iZXJPZkNsb3VkVmFyaWFibGVzLHRoaXMuYWRkQ2xvdWRWYXJpYWJsZT10aGlzLl9pbml0aWFsaXplQWRkQ2xvdWRWYXJpYWJsZShBKSx0aGlzLnJlbW92ZUNsb3VkVmFyaWFibGU9dGhpcy5faW5pdGlhbGl6ZVJlbW92ZUNsb3VkVmFyaWFibGUoQSksdGhpcy5vcmlnaW49bnVsbCx0aGlzLl9zdGFnZVRhcmdldD1udWxsLHRoaXMuYWRkb25CbG9ja3M9e30sdGhpcy5zdGFnZVdpZHRoPSQuU1RBR0VfV0lEVEgsdGhpcy5zdGFnZUhlaWdodD0kLlNUQUdFX0hFSUdIVCx0aGlzLnJ1bnRpbWVPcHRpb25zPXttYXhDbG9uZXM6JC5NQVhfQ0xPTkVTLG1pc2NMaW1pdHM6ITAsZmVuY2luZzohMCxkYW5nZXJvdXNPcHRpbWl6YXRpb25zOiExLGRpc2FibGVPZmZzY3JlZW5SZW5kZXJpbmc6ITEsZGlzYWJsZURpcmVjdGlvbkNsYW1waW5nOiExfSx0aGlzLmNvbXBpbGVyT3B0aW9ucz17ZW5hYmxlZDohMCx3YXJwVGltZXI6ITF9LHRoaXMub3B0aW1pemF0aW9uVXRpbD17c2luOm5ldyBBcnJheSgzNjApLGNvczpuZXcgQXJyYXkoMzYwKX07Zm9yKGxldCBBPTA7QTwzNjA7QSsrKXRoaXMub3B0aW1pemF0aW9uVXRpbC5zaW5bQV09TWF0aC5yb3VuZCgxZTEwKk1hdGguc2luKE1hdGguUEkqQS8xODApKS8xZTEwLHRoaXMub3B0aW1pemF0aW9uVXRpbC5jb3NbQV09TWF0aC5yb3VuZCgxZTEwKk1hdGguY29zKE1hdGguUEkqQS8xODApKS8xZTEwO3RoaXMuZGVidWc9ITEsdGhpcy5fbGFzdFN0ZXBUaW1lPURhdGUubm93KCksdGhpcy5pbnRlcnBvbGF0aW9uRW5hYmxlZD0hMSx0aGlzLmludGVycG9sYXRlPU8sdGhpcy5fZGVmYXVsdFN0b3JlZFNldHRpbmdzPXRoaXMuX2dlbmVyYXRlQWxsUHJvamVjdE9wdGlvbnMoKSx0aGlzLmlzUGFja2FnZWQ9ITEsdGhpcy5pc1Byb2plY3RQZXJtaXNzaW9uTWFuYWdlckRpc2FibGVkPSEwLHRoaXMuaXNQYWNrYWdlZFByb2plY3Q9ITEsdGhpcy5leHRlcm5hbENvbW11bmljYXRpb25NZXRob2RzPXtjbG91ZFZhcmlhYmxlczohMSxjdXN0b21FeHRlbnNpb25zOiExfSx0aGlzLm9uKCQuSEFTX0NMT1VEX0RBVEFfVVBEQVRFLEE9Pnt0aGlzLnNldEV4dGVybmFsQ29tbXVuaWNhdGlvbk1ldGhvZCgiY2xvdWRWYXJpYWJsZXMiLEEpfSksdGhpcy5zZXRNYXhMaXN0ZW5lcnMoNTApLHRoaXMuZW5mb3JjZVByaXZhY3k9ITAsdGhpcy5leHRlbnNpb25CdXR0b25zPW5ldyBNYXAsdGhpcy5fZXh0ZW5zaW9uQXVkaW9PYmplY3RzPW5ldyBNYXAsdGhpcy5mb250TWFuYWdlcj1uZXcgRCh0aGlzKSx0aGlzLmNhbWVyYVN0YXRlcz17ZGVmYXVsdDp7cG9zOlswLDBdLGRpcjowLHNjYWxlOjF9fSx0aGlzLl9leHRlbnNpb25WYXJpYWJsZXM9e30sdGhpcy5zZXJpYWxpemVycz17InBtLXJlbmRlcmVkLXRhcmdldCI6e3NlcmlhbGl6ZTpBPT4oe2lkOkEuaWQsbmFtZTpBLmdldE5hbWUoKX0pLGRlc2VyaWFsaXplOkE9Pnt2YXIgZTtsZXR7aWQ6dCxuYW1lOm59PUE7cmV0dXJuIG51bGwhPT0oZT10aGlzLmdldFRhcmdldEJ5SWQodCkpJiZ2b2lkIDAhPT1lP2U6dGhpcy5nZXRTcHJpdGVUYXJnZXRCeU5hbWUobil9fSwicG0tY29zdHVtZS1hc3NldCI6e3NlcmlhbGl6ZTpBPT4oe2lkOkEuYXNzZXRJZCxuYW1lOkEubmFtZX0pLGRlc2VyaWFsaXplOkE9PntsZXR7YXNzZXRJZDplLG5hbWU6dH09QTtmb3IobGV0IEE9MDtBPHRoaXMudGFyZ2V0cy5sZW5ndGg7QSsrKXtjb25zdCBuPXRoaXMudGFyZ2V0c1tBXS5nZXRDb3N0dW1lcygpLmZpbmQoQT0+QS5hc3NldElkPT09ZXx8QS5uYW1lPT09dCk7aWYobilyZXR1cm4gbn19fSwicG0tc291bmQtYXNzZXQiOntzZXJpYWxpemU6QT0+KHtpZDpBLmFzc2V0SWQsbmFtZTpBLm5hbWV9KSxkZXNlcmlhbGl6ZTpBPT57bGV0e2Fzc2V0SWQ6ZSxuYW1lOnR9PUE7Zm9yKGxldCBBPTA7QTx0aGlzLnRhcmdldHMubGVuZ3RoO0ErKyl7Y29uc3Qgbj10aGlzLnRhcmdldHNbQV0uZ2V0U291bmRzKCkuZmluZChBPT5BLmFzc2V0SWQ9PT1lfHxBLm5hbWU9PT10KTtpZihuKXJldHVybiBufX19fSx0aGlzLnZhcmlhYmxlcz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMuZXh0ZW5zaW9uU3RvcmFnZT14KCl9c3RhdGljIGdldCBTVEFHRV9XSURUSCgpe3JldHVybiA0ODB9c3RhdGljIGdldCBTVEFHRV9IRUlHSFQoKXtyZXR1cm4gMzYwfXN0YXRpYyBnZXQgU0NSSVBUX0dMT1dfT04oKXtyZXR1cm4iU0NSSVBUX0dMT1dfT04ifXN0YXRpYyBnZXQgU0NSSVBUX0dMT1dfT0ZGKCl7cmV0dXJuIlNDUklQVF9HTE9XX09GRiJ9c3RhdGljIGdldCBCTE9DS19HTE9XX09OKCl7cmV0dXJuIkJMT0NLX0dMT1dfT04ifXN0YXRpYyBnZXQgQkxPQ0tfR0xPV19PRkYoKXtyZXR1cm4iQkxPQ0tfR0xPV19PRkYifXN0YXRpYyBnZXQgSEFTX0NMT1VEX0RBVEFfVVBEQVRFKCl7cmV0dXJuIkhBU19DTE9VRF9EQVRBX1VQREFURSJ9c3RhdGljIGdldCBUVVJCT19NT0RFX09OKCl7cmV0dXJuIlRVUkJPX01PREVfT04ifXN0YXRpYyBnZXQgVFVSQk9fTU9ERV9PRkYoKXtyZXR1cm4iVFVSQk9fTU9ERV9PRkYifXN0YXRpYyBnZXQgUlVOVElNRV9PUFRJT05TX0NIQU5HRUQoKXtyZXR1cm4iUlVOVElNRV9PUFRJT05TX0NIQU5HRUQifXN0YXRpYyBnZXQgQ09NUElMRVJfT1BUSU9OU19DSEFOR0VEKCl7cmV0dXJuIkNPTVBJTEVSX09QVElPTlNfQ0hBTkdFRCJ9c3RhdGljIGdldCBGUkFNRVJBVEVfQ0hBTkdFRCgpe3JldHVybiJGUkFNRVJBVEVfQ0hBTkdFRCJ9c3RhdGljIGdldCBJTlRFUlBPTEFUSU9OX0NIQU5HRUQoKXtyZXR1cm4iSU5URVJQT0xBVElPTl9DSEFOR0VEIn1zdGF0aWMgZ2V0IEJFRk9SRV9JTlRFUlBPTEFURSgpe3JldHVybiJCRUZPUkVfSU5URVJQT0xBVEUifXN0YXRpYyBnZXQgQUZURVJfSU5URVJQT0xBVEUoKXtyZXR1cm4iQUZURVJfSU5URVJQT0xBVEUifXN0YXRpYyBnZXQgQkVGT1JFX0VYRUNVVEUoKXtyZXR1cm4iQkVGT1JFX0VYRUNVVEUifXN0YXRpYyBnZXQgQUZURVJfRVhFQ1VURSgpe3JldHVybiJBRlRFUl9FWEVDVVRFIn1zdGF0aWMgZ2V0IFNUQUdFX1NJWkVfQ0hBTkdFRCgpe3JldHVybiJTVEFHRV9TSVpFX0NIQU5HRUQifXN0YXRpYyBnZXQgTU9VU0VfU0NST0xMRUQoKXtyZXR1cm4iTU9VU0VfU0NST0xMRUQifXN0YXRpYyBnZXQgQ09NUElMRV9FUlJPUigpe3JldHVybiJDT01QSUxFX0VSUk9SIn1zdGF0aWMgZ2V0IFBST0pFQ1RfU1RBUlQoKXtyZXR1cm4iUFJPSkVDVF9TVEFSVCJ9c3RhdGljIGdldCBQUk9KRUNUX1NUQVJUX0JFRk9SRV9SRVNFVCgpe3JldHVybiJQUk9KRUNUX1NUQVJUX0JFRk9SRV9SRVNFVCJ9c3RhdGljIGdldCBQUk9KRUNUX1JVTl9TVEFSVCgpe3JldHVybiJQUk9KRUNUX1JVTl9TVEFSVCJ9c3RhdGljIGdldCBQUk9KRUNUX1JVTl9TVE9QKCl7cmV0dXJuIlBST0pFQ1RfUlVOX1NUT1AifXN0YXRpYyBnZXQgUFJPSkVDVF9TVE9QX0FMTCgpe3JldHVybiJQUk9KRUNUX1NUT1BfQUxMIn1zdGF0aWMgZ2V0IFNUT1BfRk9SX1RBUkdFVCgpe3JldHVybiJTVE9QX0ZPUl9UQVJHRVQifXN0YXRpYyBnZXQgVklTVUFMX1JFUE9SVCgpe3JldHVybiJWSVNVQUxfUkVQT1JUIn1zdGF0aWMgZ2V0IEJMT0NLX1NUQUNLX0VSUk9SKCl7cmV0dXJuIkJMT0NLX1NUQUNLX0VSUk9SIn1zdGF0aWMgZ2V0IFBST0pFQ1RfTE9BREVEKCl7cmV0dXJuIlBST0pFQ1RfTE9BREVEIn1zdGF0aWMgZ2V0IFBST0pFQ1RfQ0hBTkdFRCgpe3JldHVybiJQUk9KRUNUX0NIQU5HRUQifXN0YXRpYyBnZXQgVE9PTEJPWF9FWFRFTlNJT05TX05FRURfVVBEQVRFKCl7cmV0dXJuIlRPT0xCT1hfRVhURU5TSU9OU19ORUVEX1VQREFURSJ9c3RhdGljIGdldCBUQVJHRVRTX1VQREFURSgpe3JldHVybiJUQVJHRVRTX1VQREFURSJ9c3RhdGljIGdldCBNT05JVE9SU19VUERBVEUoKXtyZXR1cm4iTU9OSVRPUlNfVVBEQVRFIn1zdGF0aWMgZ2V0IEJMT0NLX0RSQUdfVVBEQVRFKCl7cmV0dXJuIkJMT0NLX0RSQUdfVVBEQVRFIn1zdGF0aWMgZ2V0IEJMT0NLX0RSQUdfRU5EKCl7cmV0dXJuIkJMT0NLX0RSQUdfRU5EIn1zdGF0aWMgZ2V0IEVYVEVOU0lPTl9BRERFRCgpe3JldHVybiJFWFRFTlNJT05fQURERUQifXN0YXRpYyBnZXQgRVhURU5TSU9OX1JFTU9WRUQoKXtyZXR1cm4iRVhURU5TSU9OX1JFTU9WRUQifXN0YXRpYyBnZXQgRVhURU5TSU9OX0ZJRUxEX0FEREVEKCl7cmV0dXJuIkVYVEVOU0lPTl9GSUVMRF9BRERFRCJ9c3RhdGljIGdldCBQRVJJUEhFUkFMX0xJU1RfVVBEQVRFKCl7cmV0dXJuIlBFUklQSEVSQUxfTElTVF9VUERBVEUifXN0YXRpYyBnZXQgVVNFUl9QSUNLRURfUEVSSVBIRVJBTCgpe3JldHVybiJVU0VSX1BJQ0tFRF9QRVJJUEhFUkFMIn1zdGF0aWMgZ2V0IFBFUklQSEVSQUxfQ09OTkVDVEVEKCl7cmV0dXJuIlBFUklQSEVSQUxfQ09OTkVDVEVEIn1zdGF0aWMgZ2V0IFBFUklQSEVSQUxfRElTQ09OTkVDVEVEKCl7cmV0dXJuIlBFUklQSEVSQUxfRElTQ09OTkVDVEVEIn1zdGF0aWMgZ2V0IFBFUklQSEVSQUxfUkVRVUVTVF9FUlJPUigpe3JldHVybiJQRVJJUEhFUkFMX1JFUVVFU1RfRVJST1IifXN0YXRpYyBnZXQgUEVSSVBIRVJBTF9DT05ORUNUSU9OX0xPU1RfRVJST1IoKXtyZXR1cm4iUEVSSVBIRVJBTF9DT05ORUNUSU9OX0xPU1RfRVJST1IifXN0YXRpYyBnZXQgUEVSSVBIRVJBTF9TQ0FOX1RJTUVPVVQoKXtyZXR1cm4iUEVSSVBIRVJBTF9TQ0FOX1RJTUVPVVQifXN0YXRpYyBnZXQgTUlDX0xJU1RFTklORygpe3JldHVybiJNSUNfTElTVEVOSU5HIn1zdGF0aWMgZ2V0IEJMT0NLU0lORk9fVVBEQVRFKCl7cmV0dXJuIkJMT0NLU0lORk9fVVBEQVRFIn1zdGF0aWMgZ2V0IFJVTlRJTUVfU1RBUlRFRCgpe3JldHVybiJSVU5USU1FX1NUQVJURUQifXN0YXRpYyBnZXQgUlVOVElNRV9TVE9QUEVEKCl7cmV0dXJuIlJVTlRJTUVfU1RPUFBFRCJ9c3RhdGljIGdldCBSVU5USU1FX1BBVVNFRCgpe3JldHVybiJSVU5USU1FX1BBVVNFRCJ9c3RhdGljIGdldCBSVU5USU1FX1BSRV9QQVVTRUQoKXtyZXR1cm4iUlVOVElNRV9QUkVfUEFVU0VEIn1zdGF0aWMgZ2V0IFJVTlRJTUVfVU5QQVVTRUQoKXtyZXR1cm4iUlVOVElNRV9VTlBBVVNFRCJ9c3RhdGljIGdldCBSVU5USU1FX0RJU1BPU0VEKCl7cmV0dXJuIlJVTlRJTUVfRElTUE9TRUQifXN0YXRpYyBnZXQgUlVOVElNRV9TVEVQX1NUQVJUKCl7cmV0dXJuIlJVTlRJTUVfU1RFUF9TVEFSVCJ9c3RhdGljIGdldCBSVU5USU1FX1NURVBfRU5EKCl7cmV0dXJuIlJVTlRJTUVfU1RFUF9FTkQifXN0YXRpYyBnZXQgRURJVE9SX1RBQlNfTkVXKCl7cmV0dXJuIkVESVRPUl9UQUJTX05FVyJ9c3RhdGljIGdldCBFRElUT1JfVEFCU19VUERBVEUoKXtyZXR1cm4iRURJVE9SX1RBQlNfVVBEQVRFIn1zdGF0aWMgZ2V0IEJMT0NLU19ORUVEX1VQREFURSgpe3JldHVybiJCTE9DS1NfTkVFRF9VUERBVEUifXN0YXRpYyBnZXQgQ0FNRVJBX0NIQU5HRUQoKXtyZXR1cm4iQ0FNRVJBX0NIQU5HRUQifXN0YXRpYyBnZXQgSEFUU19TVEFSVEVEKCl7cmV0dXJuIkhBVFNfU1RBUlRFRCJ9c3RhdGljIGdldCBUSFJFQURfU1RBUlRFRCgpe3JldHVybiJUSFJFQURfU1RBUlRFRCJ9c3RhdGljIGdldCBUSFJFQURfRklOSVNIRUQoKXtyZXR1cm4iVEhSRUFEX0ZJTklTSEVEIn1zdGF0aWMgZ2V0IFNQUklURV9SRU5BTUVEKCl7cmV0dXJuIlNQUklURV9SRU5BTUVEIn1zdGF0aWMgZ2V0IENPU1RVTUVfUkVOQU1FRCgpe3JldHVybiJDT1NUVU1FX1JFTkFNRUQifXN0YXRpYyBnZXQgU09VTkRfUkVOQU1FRCgpe3JldHVybiJTT1VORF9SRU5BTUVEIn1zdGF0aWMgZ2V0IFRIUkVBRF9TVEVQX0lOVEVSVkFMKCl7cmV0dXJuIDFlMy82MH1zdGF0aWMgZ2V0IFRIUkVBRF9TVEVQX0lOVEVSVkFMX0NPTVBBVElCSUxJVFkoKXtyZXR1cm4gMWUzLzMwfXN0YXRpYyBnZXQgTUFYX0NMT05FUygpe3JldHVybiAzMDB9X2luaXRpYWxpemVBZGRDbG91ZFZhcmlhYmxlKEEpe3JldHVybigpPT57Y29uc3QgZT10aGlzLmhhc0Nsb3VkRGF0YSgpO0EuYWRkQ2xvdWRWYXJpYWJsZSgpLCFlJiZ0aGlzLmhhc0Nsb3VkRGF0YSgpJiZ0aGlzLmVtaXQoJC5IQVNfQ0xPVURfREFUQV9VUERBVEUsITApfX1faW5pdGlhbGl6ZVJlbW92ZUNsb3VkVmFyaWFibGUoQSl7cmV0dXJuKCk9Pntjb25zdCBlPXRoaXMuaGFzQ2xvdWREYXRhKCk7QS5yZW1vdmVDbG91ZFZhcmlhYmxlKCksZSYmIXRoaXMuaGFzQ2xvdWREYXRhKCkmJnRoaXMuZW1pdCgkLkhBU19DTE9VRF9EQVRBX1VQREFURSwhMSl9fV9yZWdpc3RlckJsb2NrUGFja2FnZXMoKXtmb3IoY29uc3QgQSBpbiBQKWlmKFAuaGFzT3duUHJvcGVydHkoQSkpe2NvbnN0IGU9bmV3IFBbQV0odGhpcyk7aWYoZS5nZXRQcmltaXRpdmVzKXtjb25zdCBBPWUuZ2V0UHJpbWl0aXZlcygpO2Zvcihjb25zdCB0IGluIEEpQS5oYXNPd25Qcm9wZXJ0eSh0KSYmKHRoaXMuX3ByaW1pdGl2ZXNbdF09QVt0XS5iaW5kKGUpKX1pZihlLmdldEhhdHMpe2NvbnN0IEE9ZS5nZXRIYXRzKCk7Zm9yKGNvbnN0IGUgaW4gQSlBLmhhc093blByb3BlcnR5KGUpJiYodGhpcy5faGF0c1tlXT1BW2VdKX1lLmdldE1vbml0b3JlZCYmKHRoaXMubW9uaXRvckJsb2NrSW5mbz1PYmplY3QuYXNzaWduKHt9LHRoaXMubW9uaXRvckJsb2NrSW5mbyxlLmdldE1vbml0b3JlZCgpKSksdGhpcy5jb21waWxlclJlZ2lzdGVyRXh0ZW5zaW9uKEEsZSl9fWNvbXBpbGVyUmVnaXN0ZXJFeHRlbnNpb24oQSxlKXt0aGlzWyJleHRfIi5jb25jYXQoQSldPWV9cmVnaXN0ZXJDb21waWxlZEV4dGVuc2lvbkJsb2NrcyhBLGUpe2lmKCFlKXJldHVybjtpZighZS5pcilyZXR1cm47aWYoIWUuanMpcmV0dXJuO2NvbnN0IG49dCg2MCk7dCg1OCkuc2V0RXh0ZW5zaW9uSXIoQSxlLmlyKSxuLnNldEV4dGVuc2lvbkpzKEEsZS5qcyl9cmVnaXN0ZXJFeHRlbnNpb25BdWRpb0NvbnRleHQoQSxlLHQpe2lmKCJzdHJpbmciIT10eXBlb2YgQSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHRlbnNpb24gSUQgbXVzdCBiZSBzdHJpbmciKTtpZighQSl0aHJvdyBuZXcgRXJyb3IoIk5vIGV4dGVuc2lvbiBJRCBzcGVjaWZpZWQiKTtjb25zdCBuPXt9O2UmJihuLmF1ZGlvQ29udGV4dD1lKSx0JiYobi5nYWluTm9kZT10KSx0aGlzLl9leHRlbnNpb25BdWRpb09iamVjdHMuc2V0KEEsbil9Z2V0TW9uaXRvclN0YXRlKCl7cmV0dXJuIHRoaXMuX21vbml0b3JTdGF0ZX1fbWFrZUV4dGVuc2lvbk1lbnVJZChBLGUpe3JldHVybiIiLmNvbmNhdChlLCJfbWVudV8iKS5jb25jYXQoQSl9bWFrZU1lc3NhZ2VDb250ZXh0Rm9yVGFyZ2V0KEEpe2NvbnN0IGU9e307KEE9QXx8dGhpcy5nZXRFZGl0aW5nVGFyZ2V0KCl8fHRoaXMuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKSkmJihlLnRhcmdldFR5cGU9QS5pc1N0YWdlP3cuU1RBR0U6dy5TUFJJVEUpfV9yZWdpc3RlckV4dGVuc2lvblByaW1pdGl2ZXMoQSl7Y29uc3QgZT17aWQ6QS5pZCxuYW1lOk0oQS5uYW1lKSxzaG93U3RhdHVzQnV0dG9uOkEuc2hvd1N0YXR1c0J1dHRvbixibG9ja0ljb25VUkk6QS5ibG9ja0ljb25VUkksbWVudUljb25VUkk6QS5tZW51SWNvblVSSX07aWYoQS5jb2xvcjEpe2NvbnN0IHQ9Zi5oZXhUb1JnYihBLmNvbG9yMSk7aWYoZS5jb2xvcjE9QS5jb2xvcjEsZS5jb2xvcjI9QS5jb2xvcjIsIUEuY29sb3IyKXtjb25zdCBBPWYubWl4UmdiKHQsZi5SR0JfQkxBQ0ssLjEpO2UuY29sb3IyPWYucmdiVG9IZXgoQSl9aWYoZS5jb2xvcjM9QS5jb2xvcjMsIUEuY29sb3IzKXtjb25zdCBBPWYubWl4UmdiKHQsZi5SR0JfQkxBQ0ssLjIpO2UuY29sb3IzPWYucmdiVG9IZXgoQSl9fWVsc2UgZS5jb2xvcjE9V1swXSxlLmNvbG9yMj1XWzFdLGUuY29sb3IzPVdbMl07ZS5ibG9ja1RleHQ9QS5ibG9ja1RleHQsQS5pc0R5bmFtaWMmJihlLmlzRHluYW1pYz1BLmlzRHluYW1pYyxlLm9yZGVyQmxvY2tzPUEub3JkZXJCbG9ja3MpLGUudGJTaG93PUEudGJTaG93fHwhMSx0aGlzLl9ibG9ja0luZm8ucHVzaChlKSx0aGlzLl9maWxsRXh0ZW5zaW9uQ2F0ZWdvcnkoZSxBKTtmb3IoY29uc3QgdCBpbiBlLmN1c3RvbUZpZWxkVHlwZXMpaWYoQS5jdXN0b21GaWVsZFR5cGVzLmhhc093blByb3BlcnR5KHQpKXtjb25zdCBBPWUuY3VzdG9tRmllbGRUeXBlc1t0XTt0aGlzLmVtaXQoJC5FWFRFTlNJT05fRklFTERfQURERUQse25hbWU6ImZpZWxkXyIuY29uY2F0KEEuZXh0ZW5kZWROYW1lKSxpbXBsZW1lbnRhdGlvbjpBLmZpZWxkSW1wbGVtZW50YXRpb259KX10aGlzLmVtaXQoJC5FWFRFTlNJT05fQURERUQsZSl9X3JlZnJlc2hFeHRlbnNpb25QcmltaXRpdmVzKEEpe2NvbnN0IGU9dGhpcy5fYmxvY2tJbmZvLmZpbmQoZT0+ZS5pZD09PUEuaWQpO2UmJihlLm5hbWU9TShBLm5hbWUpLHRoaXMuX2ZpbGxFeHRlbnNpb25DYXRlZ29yeShlLEEpLHRoaXMuZW1pdCgkLkJMT0NLU0lORk9fVVBEQVRFLGUpKX1fcmVtb3ZlRXh0ZW5zaW9uUHJpbWl0aXZlKEEpe2NvbnN0IGU9dGhpcy5fYmxvY2tJbmZvLmZpbmRJbmRleChlPT5lLmlkPT09QSksdD10aGlzLl9ibG9ja0luZm9bZV07dGhpcy5fYmxvY2tJbmZvLnNwbGljZShlLDEpLHRoaXMuZW1pdCgkLkVYVEVOU0lPTl9SRU1PVkVELEEpO2Zvcihjb25zdCBBIG9mIHRoaXMudGFyZ2V0cylmb3IoY29uc3QgZSBpbiBBLmJsb2Nrcy5fYmxvY2tzKXtjb25zdHtvcGNvZGU6bn09QS5ibG9ja3MuZ2V0QmxvY2soZSk7dC5ibG9ja3MuZmluZChBPT57dmFyIGU7cmV0dXJuKG51bGw9PT0oZT1BLmpzb24pfHx2b2lkIDA9PT1lP3ZvaWQgMDplLnR5cGUpPT09bn0pJiZBLmJsb2Nrcy5kZWxldGVCbG9jayhlLCEwKX10aGlzLmVtaXQoJC5CTE9DS1NfTkVFRF9VUERBVEUpfV9maWxsRXh0ZW5zaW9uQ2F0ZWdvcnkoQSxlKXtBLmJsb2Nrcz1bXSxBLmN1c3RvbUZpZWxkVHlwZXM9e30sQS5tZW51cz1bXSxBLm1lbnVJbmZvPXt9O2Zvcihjb25zdCB0IGluIGUubWVudXMpaWYoZS5tZW51cy5oYXNPd25Qcm9wZXJ0eSh0KSl7Y29uc3Qgbj1lLm1lbnVzW3RdLGk9dGhpcy5fYnVpbGRNZW51Rm9yU2NyYXRjaEJsb2Nrcyh0LG4sQSk7QS5tZW51cy5wdXNoKGkpLEEubWVudUluZm9bdF09bn1mb3IoY29uc3QgdCBpbiBlLmN1c3RvbUZpZWxkVHlwZXMpaWYoZS5jdXN0b21GaWVsZFR5cGVzLmhhc093blByb3BlcnR5KHQpKXtjb25zdCBuPWUuY3VzdG9tRmllbGRUeXBlc1t0XSxpPXRoaXMuX2J1aWxkQ3VzdG9tRmllbGRJbmZvKHQsbixlLmlkLEEpO0EuY3VzdG9tRmllbGRUeXBlc1t0XT1pfWlmKGUuZG9jc1VSSSl7Y29uc3QgdD17aW5mbzp7fSx4bWw6IjxidXR0b24gIisndGV4dD0iJy5jb25jYXQobShNKHtpZDoidHcuYmxvY2tzLm9wZW5Eb2NzIixkZWZhdWx0OiJPcGVuIERvY3VtZW50YXRpb24iLGRlc2NyaXB0aW9uOiJCdXR0b24gdGhhdCBvcGVucyBzaXRlIHdpdGggbW9yZSBkb2N1bWVudGF0aW9uIGFib3V0IGFuIGV4dGVuc2lvbiJ9KSksJyIgJykrJ2NhbGxiYWNrS2V5PSJPUEVOX0VYVEVOU0lPTl9ET0NTIiAnKydjYWxsYmFja0RhdGE9IicuY29uY2F0KG0oZS5kb2NzVVJJKSwnIj48L2J1dHRvbj4nKX07QS5ibG9ja3MucHVzaCh0KX1mb3IoY29uc3QgdCBvZiBlLmJsb2Nrcyl0cnl7Y29uc3QgZT10aGlzLl9jb252ZXJ0Rm9yU2NyYXRjaEJsb2Nrcyh0LEEpO2lmKEEuYmxvY2tzLnB1c2goZSksZS5qc29uKXtjb25zdCBBPWUuanNvbi50eXBlO3QuYmxvY2tUeXBlIT09Zy5FVkVOVCYmdC5ibG9ja1R5cGUhPT1nLkJVVFRPTiYmKHRoaXMuX3ByaW1pdGl2ZXNbQV09ZS5pbmZvLmZ1bmMpLHQuYmxvY2tUeXBlIT09Zy5FVkVOVCYmdC5ibG9ja1R5cGUhPT1nLkhBVHx8KHRoaXMuX2hhdHNbQV09e2VkZ2VBY3RpdmF0ZWQ6dC5pc0VkZ2VBY3RpdmF0ZWQscmVzdGFydEV4aXN0aW5nVGhyZWFkczp0LnNob3VsZFJlc3RhcnRFeGlzdGluZ1RocmVhZHN9KX19Y2F0Y2goQSl7SS5lcnJvcigiRXJyb3IgcGFyc2luZyBibG9jazogIix7YmxvY2s6dCxlcnJvcjpBfSl9fV9jb252ZXJ0TWVudUl0ZW1zKEEpe2lmKEFycmF5LmlzQXJyYXkoQSkpe2NvbnN0IGU9dGhpcy5tYWtlTWVzc2FnZUNvbnRleHRGb3JUYXJnZXQoKTtyZXR1cm4gQS5tYXAoQT0+e2NvbnN0IHQ9TShBLGUpO3N3aXRjaCh0eXBlb2YgdCl7Y2FzZSJzdHJpbmciOnJldHVyblt0LHRdO2Nhc2Uib2JqZWN0IjpyZXR1cm4gQXJyYXkuaXNBcnJheShBKT9BLnNsaWNlKDAsMik6W00oQS50ZXh0LGUpLEEudmFsdWVdO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJDYW4ndCBpbnRlcnByZXQgbWVudSBpdGVtOiAiLmNvbmNhdChKU09OLnN0cmluZ2lmeShBKSkpfX0pfXJldHVybiBBfV9idWlsZE1lbnVGb3JTY3JhdGNoQmxvY2tzKEEsZSx0KXtjb25zdCBuPXRoaXMuX21ha2VFeHRlbnNpb25NZW51SWQoQSx0LmlkKSxpPXRoaXMuX2NvbnZlcnRNZW51SXRlbXMoZS5pdGVtcyk7cmV0dXJue2pzb246e21lc3NhZ2UwOiIlMSIsdHlwZTpuLGlucHV0c0lubGluZTohMCxvdXRwdXQ6IlN0cmluZyIsY29sb3VyOmUuaXNUeXBlYWJsZT8iI0ZGRkZGRiI6dC5jb2xvcjEsY29sb3VyU2Vjb25kYXJ5OmUuaXNUeXBlYWJsZT8iI0ZGRkZGRiI6dC5jb2xvcjIsY29sb3VyVGVydGlhcnk6ZS5pc1R5cGVhYmxlPyIjRkZGRkZGIjp0LmNvbG9yMyxvdXRwdXRTaGFwZTplLmFjY2VwdFJlcG9ydGVyc3x8ZS5pc1R5cGVhYmxlP2guT1VUUFVUX1NIQVBFX1JPVU5EOmguT1VUUFVUX1NIQVBFX1NRVUFSRSxhcmdzMDpbdm9pZCAwIT09ZS52YXJpYWJsZVR5cGU/e3R5cGU6ImZpZWxkX3ZhcmlhYmxlIixuYW1lOkEsdmFyaWFibGVUeXBlczpbInNjYWxhciI9PT1lLnZhcmlhYmxlVHlwZT9wLlNDQUxBUl9UWVBFOmUudmFyaWFibGVUeXBlXX06ZS5pc1R5cGVhYmxlP3t0eXBlOmUuaXNOdW1lcmljPyJmaWVsZF9udW1iZXJkcm9wZG93biI6ImZpZWxkX3RleHRkcm9wZG93biIsbmFtZTpBLG9wdGlvbnM6aX06e3R5cGU6ImZpZWxkX2Ryb3Bkb3duIixuYW1lOkEsb3B0aW9uczppfV19fX1fYnVpbGRDdXN0b21GaWVsZEluZm8oQSxlLHQsbil7Y29uc3QgaT0iIi5jb25jYXQodCwiXyIpLmNvbmNhdChBKTtyZXR1cm57ZmllbGROYW1lOkEsZXh0ZW5kZWROYW1lOmksYXJndW1lbnRUeXBlSW5mbzp7c2hhZG93Ont0eXBlOmksZmllbGROYW1lOiJmaWVsZF8iLmNvbmNhdChpKX19LHNjcmF0Y2hCbG9ja3NEZWZpbml0aW9uOnRoaXMuX2J1aWxkQ3VzdG9tRmllbGRUeXBlRm9yU2NyYXRjaEJsb2NrcyhpLGUub3V0cHV0LGUub3V0cHV0U2hhcGUsbiksZmllbGRJbXBsZW1lbnRhdGlvbjplLmltcGxlbWVudGF0aW9ufX1fYnVpbGRDdXN0b21GaWVsZFR5cGVGb3JTY3JhdGNoQmxvY2tzKEEsZSx0LG4pe3JldHVybntqc29uOnt0eXBlOkEsbWVzc2FnZTA6IiUxIixpbnB1dHNJbmxpbmU6ITAsb3V0cHV0OmUsY29sb3VyOm4uY29sb3IxLGNvbG91clNlY29uZGFyeTpuLmNvbG9yMixjb2xvdXJUZXJ0aWFyeTpuLmNvbG9yMyxvdXRwdXRTaGFwZTp0LGFyZ3MwOlt7bmFtZToiZmllbGRfIi5jb25jYXQoQSksdHlwZToiZmllbGRfIi5jb25jYXQoQSl9XX19fV9jb252ZXJ0Rm9yU2NyYXRjaEJsb2NrcyhBLGUpe3JldHVybiItLS0iPT09QT90aGlzLl9jb252ZXJ0U2VwYXJhdG9yRm9yU2NyYXRjaEJsb2NrcyhBKTpBLmJsb2NrVHlwZT09PWcuTEFCRUw/dGhpcy5fY29udmVydExhYmVsRm9yU2NyYXRjaEJsb2NrcyhBKTpBLmJsb2NrVHlwZT09PWcuQlVUVE9OP3RoaXMuX2NvbnZlcnRCdXR0b25Gb3JTY3JhdGNoQmxvY2tzKEEpOkEuYmxvY2tUeXBlPT09Zy5YTUw/dGhpcy5fY29udmVydFhtbEZvclNjcmF0Y2hCbG9ja3MoQSk6dGhpcy5fY29udmVydEJsb2NrRm9yU2NyYXRjaEJsb2NrcyhBLGUpfV9jb252ZXJ0QmxvY2tGb3JTY3JhdGNoQmxvY2tzKEEsZSl7dmFyIHQsbixpLHIsbyxzLGE7Y29uc3QgQj0iIi5jb25jYXQoZS5pZCwiXyIpLmNvbmNhdChBLm9wY29kZSksYz17dHlwZTpCLGlucHV0c0lubGluZTohMCxjYXRlZ29yeTplLm5hbWUsZXh0ZW5zaW9uczpudWxsIT09KHQ9QS5leHRlbnNpb25zKSYmdm9pZCAwIT09dD90OltdLGNvbG91cjpudWxsIT09KG49QS5jb2xvcjEpJiZ2b2lkIDAhPT1uP246ZS5jb2xvcjEsY29sb3VyU2Vjb25kYXJ5Om51bGwhPT0oaT1BLmNvbG9yMikmJnZvaWQgMCE9PWk/aTplLmNvbG9yMixjb2xvdXJUZXJ0aWFyeTpudWxsIT09KHI9QS5jb2xvcjMpJiZ2b2lkIDAhPT1yP3I6ZS5jb2xvcjMsYmxvY2tUZXh0Om51bGwhPT0obz1BLmJsb2NrVGV4dCkmJnZvaWQgMCE9PW8/bzplLmJsb2NrVGV4dCxjYW5EcmFnRHVwbGljYXRlOiEwPT09QS5jYW5EcmFnRHVwbGljYXRlfSxFPXthcmdzTWFwOnt9LGJsb2NrSlNPTjpjLGNhdGVnb3J5SW5mbzplLGJsb2NrSW5mbzpBLGlucHV0TGlzdDpbXX0sUT1BLmJsb2NrSWNvblVSSXx8ZS5ibG9ja0ljb25VUkk7aWYoUSl7Yy5leHRlbnNpb25zLmluY2x1ZGVzKCJzY3JhdGNoX2V4dGVuc2lvbiIpfHxjLmV4dGVuc2lvbnMucHVzaCgic2NyYXRjaF9leHRlbnNpb24iKSxjLm1lc3NhZ2UwPSIlMSAlMiI7Y29uc3QgQT17dHlwZToiZmllbGRfaW1hZ2UiLHNyYzpRLHdpZHRoOjQwLGhlaWdodDo0MH0sZT17dHlwZToiZmllbGRfdmVydGljYWxfc2VwYXJhdG9yIn07Yy5hcmdzMD1bQSxlXX1sZXQgdT1udWxsIT09KHM9QS5ub3RjaEFjY2VwdHMpJiZ2b2lkIDAhPT1zP3M6Im5vcm1hbCI7c3dpdGNoKEEuYmxvY2tUeXBlKXtjYXNlIGcuQ09NTUFORDpjLm91dHB1dFNoYXBlPWguT1VUUFVUX1NIQVBFX1NRVUFSRSxjLnByZXZpb3VzU3RhdGVtZW50PXUsQS5pc1Rlcm1pbmFsfHwoYy5uZXh0U3RhdGVtZW50PXUpO2JyZWFrO2Nhc2UgZy5SRVBPUlRFUjpjLm91dHB1dD1BLmFsbG93RHJvcEFueXdoZXJlP251bGw6IlN0cmluZyIsYy5vdXRwdXRTaGFwZT1oLk9VVFBVVF9TSEFQRV9ST1VORDticmVhaztjYXNlIGcuQk9PTEVBTjpjLm91dHB1dD0iQm9vbGVhbiIsYy5vdXRwdXRTaGFwZT1oLk9VVFBVVF9TSEFQRV9IRVhBR09OQUw7YnJlYWs7Y2FzZSBnLkhBVDpjYXNlIGcuRVZFTlQ6QS5oYXNPd25Qcm9wZXJ0eSgiaXNFZGdlQWN0aXZhdGVkIil8fChBLmlzRWRnZUFjdGl2YXRlZD0hMCksYy5vdXRwdXRTaGFwZT1oLk9VVFBVVF9TSEFQRV9TUVVBUkUsYy5uZXh0U3RhdGVtZW50PXU7YnJlYWs7Y2FzZSBnLkNPTkRJVElPTkFMOmNhc2UgZy5MT09QOkEuYnJhbmNoQ291bnQ9bnVsbCE9PShhPUEuYnJhbmNoQ291bnQpJiZ2b2lkIDAhPT1hP2E6MSxjLm91dHB1dFNoYXBlPWguT1VUUFVUX1NIQVBFX1NRVUFSRSxjLnByZXZpb3VzU3RhdGVtZW50PXUsQS5pc1Rlcm1pbmFsfHwoYy5uZXh0U3RhdGVtZW50PXUpfUEuYnJhbmNoZXM9QS5icmFuY2hlc3x8QXJyYXkoTWF0aC5tYXgoQS5icmFuY2hDb3VudHx8MCwwKSkuZmlsbCh7fSk7Y29uc3QgbD1BcnJheS5pc0FycmF5KEEudGV4dCk/QS50ZXh0OltBLnRleHRdO2xldCB3PTAsQz0wLEk9MDtjb25zdCBkPXRoaXMuX2NvbnZlcnRQbGFjZWhvbGRlcnMuYmluZCh0aGlzLEUpLHA9dGhpcy5tYWtlTWVzc2FnZUNvbnRleHRGb3JUYXJnZXQoKTtmb3IoO3c8bC5sZW5ndGh8fEM8QS5icmFuY2hlcy5sZW5ndGg7KXtpZih3PGwubGVuZ3RoKXtFLm91dExpbmVOdW09STtjb25zdCBBPU0obFt3XSxwKS5yZXBsYWNlKC9cWyguKz8pXS9nLGQpO2NbIm1lc3NhZ2UiLmNvbmNhdChJKV0/Y1sibWVzc2FnZSIuY29uY2F0KEkpXSs9QTpjWyJtZXNzYWdlIi5jb25jYXQoSSldPUEsKyt3LCsrSX12YXIgRjtpZihDPEEuYnJhbmNoZXMubGVuZ3RoKWNbIm1lc3NhZ2UiLmNvbmNhdChJKV09IiUxIixjWyJhcmdzIi5jb25jYXQoSSldPVt7dHlwZToiaW5wdXRfc3RhdGVtZW50IixuYW1lOiJTVUJTVEFDSyIuY29uY2F0KEM+MD9DKzE6IiIpLGNoZWNrOm51bGwhPT0oRj1BLmJyYW5jaGVzW0NdLmFjY2VwdHMpJiZ2b2lkIDAhPT1GP0Y6Im5vcm1hbCJ9XSwrK0MsKytJfXZhciBELFksZixOOyhBLmJsb2NrVHlwZSE9PWcuUkVQT1JURVImJkEuYmxvY2tUeXBlIT09Zy5CT09MRUFOfHxBLmRpc2FibGVNb25pdG9yfHwwIT09RS5pbnB1dExpc3QubGVuZ3RofHwoYy5jaGVja2JveEluRmx5b3V0PSEwKSwoQS5ibG9ja1R5cGU9PT1nLkxPT1B8fCJicmFuY2hJbmRpY2F0b3IiaW4gQXx8ImJyYW5jaEljb25VUkkiaW4gQSkmJiIiIT09QS5icmFuY2hJbmRpY2F0b3IpJiYoY1sibGFzdER1bW15QWxpZ24iLmNvbmNhdChJKV09IlJJR0hUIixjWyJtZXNzYWdlIi5jb25jYXQoSSldPSIlMSIsY1siYXJncyIuY29uY2F0KEkpXT1be3R5cGU6ImZpZWxkX2ltYWdlIixzcmM6bnVsbCE9PShEPW51bGwhPT0oWT1BLmJyYW5jaEluZGljYXRvcikmJnZvaWQgMCE9PVk/WTpBLmJyYW5jaEljb25VUkkpJiZ2b2lkIDAhPT1EP0Q6Ii4vc3RhdGljL2Jsb2Nrcy1tZWRpYS9yZXBlYXQuc3ZnIix3aWR0aDpudWxsIT09KGY9QS5icmFuY2hJbmRpY2F0b3JXaWR0aCkmJnZvaWQgMCE9PWY/ZjoyNCxoZWlnaHQ6bnVsbCE9PShOPUEuYnJhbmNoSW5kaWNhdG9ySGVpZ2h0KSYmdm9pZCAwIT09Tj9OOjI0LGFsdDoiKiIsZmxpcF9ydGw6ITB9XSwrK0kpO2lmKEFycmF5LmlzQXJyYXkoQS5hbGlnbm1lbnRzKSl7bGV0IGU9MDtmb3IoY29uc3QgdCBvZiBBLmFsaWdubWVudHMpInN0cmluZyI9PXR5cGVvZiB0JiYoY1sibGFzdER1bW15QWxpZ24iLmNvbmNhdChlKV09dC50b1VwcGVyQ2FzZSgpKSxlKyt9Y29uc3QgVT1BLmJsb2NrU2hhcGU7Im51bWJlciI9PXR5cGVvZiBVP2Mub3V0cHV0U2hhcGU9VToic3RyaW5nIj09dHlwZW9mIFUmJihVLnN0YXJ0c1dpdGgoImN1c3RvbS0iKT9jLm91dHB1dFNoYXBlPVU6Yy5vdXRwdXRTaGFwZT0iY3VzdG9tLSIrVSksQS5mb3JjZU91dHB1dFR5cGUmJihjLm91dHB1dD1BLmZvcmNlT3V0cHV0VHlwZSk7Y29uc3QgeT1BLm11dGF0aW9uczsib2JqZWN0Ij09dHlwZW9mIHkmJiJmdW5jdGlvbiI9PXR5cGVvZiB5LnNlcmlhbGl6ZSYmImZ1bmN0aW9uIj09dHlwZW9mIHkuZGVzZXJpYWxpemUmJihjLm11dGF0aW9ucz17c2VyaWFsaXplOnkuc2VyaWFsaXplLGRlc2VyaWFsaXplOnkuZGVzZXJpYWxpemUsaW5pdDoiZnVuY3Rpb24iPT10eXBlb2YgeS5pbml0P3kuaW5pdDp2b2lkIDB9KTtjb25zdCBUPUEuaXNEeW5hbWljPyc8bXV0YXRpb24gYmxvY2tJbmZvPSInLmNvbmNhdChtLmVzY2FwZUF0dHJpYnV0ZShKU09OLnN0cmluZ2lmeShBKSksJyIvPicpOiIiLHg9RS5pbnB1dExpc3Quam9pbigiIiksUj1BLmlzU3ByaXRlU3BlY2lmaWM/J2lkPSInLmNvbmNhdChtLmVzY2FwZUF0dHJpYnV0ZSh0aGlzLnZtLmVkaXRpbmdUYXJnZXQuaWQrIl8iK0IpLCciJyk6IiIsRz0nPGJsb2NrIHR5cGU9IicuY29uY2F0KG0uZXNjYXBlQXR0cmlidXRlKEIpLCciICcpLmNvbmNhdChSLCI+IikuY29uY2F0KFQpLmNvbmNhdCh4LCI8L2Jsb2NrPiIpO3JldHVybntpbmZvOkUuYmxvY2tJbmZvLGpzb246RS5ibG9ja0pTT04seG1sOkd9fV9jb252ZXJ0U2VwYXJhdG9yRm9yU2NyYXRjaEJsb2NrcyhBKXtyZXR1cm57aW5mbzpBLHhtbDonPHNlcCBnYXA9IjM2Ii8+J319X2NvbnZlcnRMYWJlbEZvclNjcmF0Y2hCbG9ja3MoQSl7Y29uc3QgZT1tLmVzY2FwZUF0dHJpYnV0ZShBLnRleHQpO3JldHVybntpbmZvOkEseG1sOic8bGFiZWwgdGV4dD0iJy5jb25jYXQoZSwnIj48L2xhYmVsPicpfX1fY29udmVydEJ1dHRvbkZvclNjcmF0Y2hCbG9ja3MoQSl7Y29uc3QgZT10aGlzLm1ha2VNZXNzYWdlQ29udGV4dEZvclRhcmdldCgpLHQ9bS5lc2NhcGVBdHRyaWJ1dGUoTShBLnRleHQsZSkpLG49bS5lc2NhcGVBdHRyaWJ1dGUoQS5vcGNvZGU/QS5vcGNvZGU6QS5mdW5jKTtyZXR1cm57aW5mbzpBLHhtbDonPGJ1dHRvbiB0ZXh0PSInLmNvbmNhdCh0LCciIGNhbGxiYWNrS2V5PSInKS5jb25jYXQobiwnIj48L2J1dHRvbj4nKX19X2NvbnZlcnRYbWxGb3JTY3JhdGNoQmxvY2tzKEEpe3JldHVybntpbmZvOkEseG1sOkEueG1sfX1fY29uc3RydWN0SW5saW5lSW1hZ2VKc29uKEEpe3ZhciBlLHQ7cmV0dXJuIEEuZGF0YVVSSXx8SS53YXJuKCJNaXNzaW5nIGRhdGEgVVJJIGluIGV4dGVuc2lvbiBibG9jayB3aXRoIGFyZ3VtZW50IHR5cGUgSU1BR0UiKSx7dHlwZToiZmllbGRfaW1hZ2UiLHNyYzpBLmRhdGFVUkl8fCIiLHdpZHRoOm51bGwhPT0oZT1BLndpZHRoKSYmdm9pZCAwIT09ZT9lOjI0LGhlaWdodDpudWxsIT09KHQ9QS5oZWlnaHQpJiZ2b2lkIDAhPT10P3Q6MjQsZmxpcF9ydGw6QS5mbGlwUlRMfHwhMX19X2NvbnN0cnVjdFZhcmlhYmxlRHJvcGRvd24oQSxlKXtjb25zdCB0PSJsaXN0Ij09PUEudHlwZSxuPSJicm9hZGNhc3QiPT09QS50eXBlO3JldHVybnt0eXBlOiJmaWVsZF92YXJpYWJsZSIsbmFtZTplLHZhcmlhYmxlVHlwZXM6dD9bImxpc3QiXTpuP1siYnJvYWRjYXN0X21zZyJdOlsiIl0sdmFyaWFibGU6bj8ibWVzc2FnZTEiOm51bGx9fV9jb252ZXJ0UGxhY2Vob2xkZXJzKEEsZSx0KXtjb25zdCBuPUEuYmxvY2tJbmZvLmFyZ3VtZW50c1t0XXx8e307bGV0IGkscj1LW24udHlwZV18fHt9O2lmKCFLW24udHlwZV0mJkEuY2F0ZWdvcnlJbmZvLmN1c3RvbUZpZWxkVHlwZXNbbi50eXBlXSYmKHI9QS5jYXRlZ29yeUluZm8uY3VzdG9tRmllbGRUeXBlc1tuLnR5cGVdLmFyZ3VtZW50VHlwZUluZm8pLCJmaWVsZF9pbWFnZSI9PT1yLmZpZWxkVHlwZSlpPXRoaXMuX2NvbnN0cnVjdElubGluZUltYWdlSnNvbihuKTtlbHNlIGlmKCJmaWVsZF92YXJpYWJsZSI9PT1yLmZpZWxkVHlwZSlpPXRoaXMuX2NvbnN0cnVjdFZhcmlhYmxlRHJvcGRvd24obix0KTtlbHNlIGlmKCJmaWVsZF92ZXJ0aWNhbF9zZXBhcmF0b3IiPT09ci5maWVsZFR5cGUpaT17dHlwZToiZmllbGRfdmVydGljYWxfc2VwYXJhdG9yIn07ZWxzZSBpZigiZmllbGRfY3VzdG9tSW5wdXQiPT09ci5maWVsZFR5cGUpaT17dHlwZToiZmllbGRfY3VzdG9tSW5wdXQiLG5hbWU6dCxpZDpuLmlkLHZhbHVlOm4uZGVmYXVsdFZhbHVlfTtlbHNle2k9e3R5cGU6ImlucHV0X3ZhbHVlIixuYW1lOnR9O2NvbnN0IGU9dm9pZCAwPT09bi5kZWZhdWx0VmFsdWU/IiI6bS5lc2NhcGVBdHRyaWJ1dGUoTShuLmRlZmF1bHRWYWx1ZSx0aGlzLm1ha2VNZXNzYWdlQ29udGV4dEZvclRhcmdldCgpKS50b1N0cmluZygpKTsoci5jaGVja3x8bi5jaGVjaykmJihpLmNoZWNrPW4uY2hlY2t8fHIuY2hlY2spO2NvbnN0IEI9ci5zaGFwZXx8bi5zaGFwZTtsZXQgYyxnLEUsUSx1LGwsaDtpZihCJiYoIm51bWJlciI9PXR5cGVvZiBCfHxCLnN0YXJ0c1dpdGgoImN1c3RvbS0iKT9pLnNoYXBlPUI6aS5zaGFwZT0iY3VzdG9tLSIrQiksbi5tZW51KXtjb25zdCBlPUEuY2F0ZWdvcnlJbmZvLm1lbnVJbmZvW24ubWVudV07aWYoZS5hY2NlcHRSZXBvcnRlcnN8fGUuaXNUeXBlYWJsZSljPXQsZz10aGlzLl9tYWtlRXh0ZW5zaW9uTWVudUlkKG4ubWVudSxBLmNhdGVnb3J5SW5mby5pZCksUT1uLm1lbnU7ZWxzZSBpZih2b2lkIDAhPT1lLnZhcmlhYmxlVHlwZSl7dmFyIG87Y29uc3Qgcj1PYmplY3Qua2V5cyhBLmJsb2NrSW5mby5hcmd1bWVudHMpLEI9QS5ibG9ja0luZm8udGV4dC50b1N0cmluZygpLEU9MT09PXIubGVuZ3RoJiZCLmxlbmd0aD09PXJbMF0ubGVuZ3RoKzI7dmFyIHMsYTtpZihFKW51bGwhPT0oYT0ocz1BLmJsb2NrSlNPTikuZXh0ZW5zaW9ucykmJnZvaWQgMCE9PWF8fChzLmV4dGVuc2lvbnM9W10pLEEuYmxvY2tKU09OLmV4dGVuc2lvbnMucHVzaCgiY29udGV4dE1lbnVfZ2V0VmFyaWFibGVCbG9ja0FueVR5cGUiKTtpLnR5cGU9RT8iZmllbGRfdmFyaWFibGVfZ2V0dGVyIjoiZmllbGRfdmFyaWFibGUiLGkudmFyaWFibGVUeXBlcz1bInNjYWxhciI9PT1lLnZhcmlhYmxlVHlwZT9wLlNDQUxBUl9UWVBFOmUudmFyaWFibGVUeXBlXSxpLnZhcmlhYmxlVHlwZT1pLnZhcmlhYmxlVHlwZXNbMF0sYz1udWxsLGc9bnVsbCxRPXQsaD0ic2NhbGFyIj09PWUudmFyaWFibGVUeXBlP3AuU0NBTEFSX1RZUEU6ZS52YXJpYWJsZVR5cGU7Y29uc3Qgdz1udWxsIT09KG89bi5kZWZhdWx0VmFsdWUpJiZ2b2lkIDAhPT1vP286W107dT13WzBdLGw9d1sxXX1lbHNlIGkudHlwZT0iZmllbGRfZHJvcGRvd24iLGkub3B0aW9ucz10aGlzLl9jb252ZXJ0TWVudUl0ZW1zKGUuaXRlbXMpLGM9bnVsbCxnPW51bGwsUT10fWVsc2UgYz10LGc9ci5zaGFkb3cmJnIuc2hhZG93LnR5cGV8fG51bGwsUT1yLnNoYWRvdyYmci5zaGFkb3cuZmllbGROYW1lfHxudWxsOyhuLmZpbGxJbnx8bi5maWxsSW5HbG9iYWwpJiYoZz1uLmZpbGxJbkdsb2JhbHx8IiIuY29uY2F0KEEuY2F0ZWdvcnlJbmZvLmlkLCJfIikuY29uY2F0KG4uZmlsbEluKSksYyYmQS5pbnB1dExpc3QucHVzaCgnPHZhbHVlIG5hbWU9IicuY29uY2F0KG0uZXNjYXBlQXR0cmlidXRlKHQpLCciPicpKSxnJiZBLmlucHV0TGlzdC5wdXNoKCc8c2hhZG93IHR5cGU9IicuY29uY2F0KG0uZXNjYXBlQXR0cmlidXRlKGcpLCciPicpKSxFJiZBLmlucHV0TGlzdC5wdXNoKCc8YmxvY2sgdHlwZT0iJy5jb25jYXQobS5lc2NhcGVBdHRyaWJ1dGUoRSksJyI+JykpLCJwb2x5Z29uIj09PWcmJkEuaW5wdXRMaXN0LnB1c2goJzxtdXRhdGlvbiBleHBhbmRlZD0iZmFsc2UiIHBvaW50cz0iJy5jb25jYXQobi5ub2RlcywnIiBjb2xvcj0iJykuY29uY2F0KEEuYmxvY2tKU09OLmNvbG91ciwnIiBtaWRsZT0iWzAsMF0iIHNjYWxlPSInKS5jb25jYXQobi5kZWZhdWx0U2l6ZXx8MzAsJyIvPicpKSwibWF0cml4Ij09PWcmJkEuaW5wdXRMaXN0LnB1c2goJzxtdXRhdGlvbiB3aWR0aD0iJy5jb25jYXQobi5tYXRyaXhXaWR0aHx8NSwnIiBoZWlnaHQ9IicpLmNvbmNhdChuLm1hdHJpeEhlaWdodHx8NSwnIi8+JykpLFEmJiF1JiYoZXx8InN0cmluZyI9PT1uLnR5cGUmJiFuLm1lbnUpJiZBLmlucHV0TGlzdC5wdXNoKCc8ZmllbGQgbmFtZT0iJy5jb25jYXQoUSwnIj4nKS5jb25jYXQoZSwiPC9maWVsZD4iKSksdSYmQS5pbnB1dExpc3QucHVzaCgnPGZpZWxkIG5hbWU9IicuY29uY2F0KFEsJyIgaWQ9IicpLmNvbmNhdCh1LCciIHZhcmlhYmxlVHlwZT0iJykuY29uY2F0KGgsJyI+JykuY29uY2F0KGwsIjwvZmllbGQ+IikpLEUmJkEuaW5wdXRMaXN0LnB1c2goIjwvYmxvY2s+IiksZyYmQS5pbnB1dExpc3QucHVzaCgiPC9zaGFkb3c+IiksYyYmQS5pbnB1dExpc3QucHVzaCgiPC92YWx1ZT4iKX1jb25zdCBCPSJhcmdzIi5jb25jYXQoQS5vdXRMaW5lTnVtKSxjPUEuYmxvY2tKU09OW0JdPUEuYmxvY2tKU09OW0JdfHxbXTtpJiZjLnB1c2goaSk7Y29uc3QgZz1jLmxlbmd0aDtyZXR1cm4gQS5hcmdzTWFwW3RdPWcsIiUiLmNvbmNhdChnKX1nZXRCbG9ja3NYTUwoQSl7cmV0dXJuIHRoaXMuX2Jsb2NrSW5mby5tYXAoZT0+e2NvbnN0e25hbWU6dCxjb2xvcjE6bixjb2xvcjI6aX09ZTtsZXQgcj1lLm9yZGVyQmxvY2tzO2NvbnN0IG89ZS5ibG9ja3MuZmlsdGVyKGU9PntsZXQgdD0hMDtyZXR1cm4gQSYmZS5pbmZvLmZpbHRlciYmKHQ9ZS5pbmZvLmZpbHRlci5pbmNsdWRlcyhBLmlzU3RhZ2U/dy5TVEFHRTp3LlNQUklURSkpLHQmJiFlLmluZm8uaGlkZUZyb21QYWxldHRlfSk7cj1yfHwoQT0+QSk7Y29uc3Qgcz0nY29sb3VyPSInLmNvbmNhdChtKG4pLCciIHNlY29uZGFyeUNvbG91cj0iJykuY29uY2F0KG0oaSksJyInKTtsZXQgYT0iIjtlLm1lbnVJY29uVVJJP2E9ZS5tZW51SWNvblVSSTplLmJsb2NrSWNvblVSSSYmKGE9ZS5ibG9ja0ljb25VUkkpO2NvbnN0IEI9YT8naWNvblVSST0iJy5jb25jYXQobShhKSwnIicpOiIiO2xldCBjPSIiO2Uuc2hvd1N0YXR1c0J1dHRvbiYmKGM9J3Nob3dTdGF0dXNCdXR0b249InRydWUiJyk7bGV0IGc9JzxjYXRlZ29yeSBuYW1lPSInLmNvbmNhdChtLmVzY2FwZUF0dHJpYnV0ZSh0KSwnIicpO3JldHVybiBnKz0nIGlkPSInLmNvbmNhdChtLmVzY2FwZUF0dHJpYnV0ZShlLmlkKSwnIicpLGcrPScgb3B0aW9ucz0iZXh0ZW5zaW9uQ29udHJvbHMiJyxnKz0iICIuY29uY2F0KGMpLGcrPSIgIi5jb25jYXQocyksZys9IiAiLmNvbmNhdChCLCI+IiksZys9cihvLm1hcChBPT5BLnhtbCkpLmpvaW4oIiIpLGcrPSI8L2NhdGVnb3J5PiIse2lkOmUuaWQseG1sOmd9fSl9Z2V0QmxvY2tzSlNPTigpe3JldHVybiB0aGlzLl9ibG9ja0luZm8ucmVkdWNlKChBLGUpPT5BLmNvbmNhdChlLmJsb2Nrcy5tYXAoQT0+QS5qc29uKSksW10pfWdldFNjcmF0Y2hMaW5rU29ja2V0KEEpe3JldHVybih0aGlzLl9saW5rU29ja2V0RmFjdG9yeXx8dGhpcy5fZGVmYXVsdFNjcmF0Y2hMaW5rU29ja2V0RmFjdG9yeSkoQSl9Y29uZmlndXJlU2NyYXRjaExpbmtTb2NrZXRGYWN0b3J5KEEpe3RoaXMuX2xpbmtTb2NrZXRGYWN0b3J5PUF9X2RlZmF1bHRTY3JhdGNoTGlua1NvY2tldEZhY3RvcnkoQSl7cmV0dXJuIG5ldyBGKEEpfXJlZ2lzdGVyUGVyaXBoZXJhbEV4dGVuc2lvbihBLGUpe3RoaXMucGVyaXBoZXJhbEV4dGVuc2lvbnNbQV09ZX1zY2FuRm9yUGVyaXBoZXJhbChBKXt0aGlzLnBlcmlwaGVyYWxFeHRlbnNpb25zW0FdJiZ0aGlzLnBlcmlwaGVyYWxFeHRlbnNpb25zW0FdLnNjYW4oKX1jb25uZWN0UGVyaXBoZXJhbChBLGUpe3RoaXMucGVyaXBoZXJhbEV4dGVuc2lvbnNbQV0mJnRoaXMucGVyaXBoZXJhbEV4dGVuc2lvbnNbQV0uY29ubmVjdChlKX1kaXNjb25uZWN0UGVyaXBoZXJhbChBKXt0aGlzLnBlcmlwaGVyYWxFeHRlbnNpb25zW0FdJiZ0aGlzLnBlcmlwaGVyYWxFeHRlbnNpb25zW0FdLmRpc2Nvbm5lY3QoKX1nZXRQZXJpcGhlcmFsSXNDb25uZWN0ZWQoQSl7bGV0IGU9ITE7cmV0dXJuIHRoaXMucGVyaXBoZXJhbEV4dGVuc2lvbnNbQV0mJihlPXRoaXMucGVyaXBoZXJhbEV4dGVuc2lvbnNbQV0uaXNDb25uZWN0ZWQoKSksZX1lbWl0TWljTGlzdGVuaW5nKEEpe3RoaXMuZW1pdCgkLk1JQ19MSVNURU5JTkcsQSl9Z2V0T3Bjb2RlRnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuX3ByaW1pdGl2ZXNbQV19Z2V0SXNIYXQoQSl7cmV0dXJuIHRoaXMuX2hhdHMuaGFzT3duUHJvcGVydHkoQSl9Z2V0SXNFZGdlQWN0aXZhdGVkSGF0KEEpe3JldHVybiB0aGlzLl9oYXRzLmhhc093blByb3BlcnR5KEEpJiZ0aGlzLl9oYXRzW0FdLmVkZ2VBY3RpdmF0ZWR9YXR0YWNoQXVkaW9FbmdpbmUoQSl7dGhpcy5hdWRpb0VuZ2luZT1BfWF0dGFjaFJlbmRlcmVyKEEpe3RoaXMucmVuZGVyZXI9QSx0aGlzLnJlbmRlcmVyLnNldExheWVyR3JvdXBPcmRlcmluZyhkLkxBWUVSX0dST1VQUyksdGhpcy5yZW5kZXJlci5vZmZzY3JlZW5Ub3VjaGluZz0hdGhpcy5ydW50aW1lT3B0aW9ucy5mZW5jaW5nLHRoaXMucmVuZGVyZXIucmVuZGVyT2Zmc2NyZWVuPXRoaXMucnVudGltZU9wdGlvbnMuZGlzYWJsZU9mZnNjcmVlblJlbmRlcmluZyx0aGlzLnVwZGF0ZVByaXZhY3koKX1yZWdpc3RlclNlcmlhbGl6ZXIoQSxlLHQpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoInNlcmlhbGl6ZSBtdXN0IGJlIG9mIHR5cGUgZnVuY3Rpb24iKTtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJkZXNlcmlhbGl6ZSBtdXN0IGJlIG9mIHR5cGUgZnVuY3Rpb24iKTt0aGlzLnNlcmlhbGl6ZXJzW0FdPXtzZXJpYWxpemU6ZSxkZXNlcmlhbGl6ZTp0fX1yZWdpc3RlclZhcmlhYmxlKEEsZSl7dGhpcy5fZXh0ZW5zaW9uVmFyaWFibGVzW0FdPWV9dW5yZWdpc3RlclZhcmlhYmxlKEEpe2lmKCF0aGlzLl9leHRlbnNpb25WYXJpYWJsZXNbQV0pdGhyb3cgbmV3IEVycm9yKCJjYW4gbm90IHJlbW92ZSBhIHZhcmlhYmxlIHR5cGUgdGhhdCBkb2VzIG5vdCBleGlzdC4gcmVtb3ZpbmcgIi5jb25jYXQoQSkpO2RlbGV0ZSB0aGlzLl9leHRlbnNpb25WYXJpYWJsZXNbQV19bmV3VmFyaWFibGVJbnN0YW5jZShBKXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCx0PW5ldyBBcnJheShlPjE/ZS0xOjApLG49MTtuPGU7bisrKXRbbi0xXT1hcmd1bWVudHNbbl07aWYoTC5pbmNsdWRlcyhBKSlyZXR1cm4gdC5zcGxpY2UoMiwwLEEpLG5ldyBwKC4uLnQpO2NvbnN0IGk9dGhpcy5fZXh0ZW5zaW9uVmFyaWFibGVzW0FdO3JldHVybiBpP25ldyBpKHRoaXMsLi4udCk6e3R5cGU6QSx2YWx1ZTp0LG11c3RSZWNyZWF0ZTohMH19YXR0YWNoVjJCaXRtYXBBZGFwdGVyKEEpe3RoaXMudjJCaXRtYXBBZGFwdGVyPUF9YXR0YWNoU3RvcmFnZShBKXtpZih0aGlzLnN0b3JhZ2U9QSx0aGlzLmlzUGFja2FnZWQpe2NvbnN0IGU9QS5jcmVhdGVBc3NldDtsZXQgdD0wO0EuY3JlYXRlQXNzZXQ9ZnVuY3Rpb24oQSxuLGkscixvKXtyZXR1cm4gcnx8KHI9KCsrdCkudG9TdHJpbmcoKSksZS5jYWxsKHRoaXMsQSxuLGksciwhMSl9fX1fcHVzaFRocmVhZChBLGUsdCl7Y29uc3Qgbj1uZXcgQyhBKTtyZXR1cm4gbi50YXJnZXQ9ZSxuLnN0YWNrQ2xpY2s9Qm9vbGVhbih0JiZ0LnN0YWNrQ2xpY2spLG4udXBkYXRlTW9uaXRvcj1Cb29sZWFuKHQmJnQudXBkYXRlTW9uaXRvciksbi5ibG9ja0NvbnRhaW5lcj1uLnVwZGF0ZU1vbml0b3I/dGhpcy5tb25pdG9yQmxvY2tzOnQmJnQudGFyZ2V0QmxvY2tMb2NhdGlvbnx8ZS5ibG9ja3Msbi5wdXNoU3RhY2soQSksdGhpcy50aHJlYWRzLnB1c2gobiksbi5zdGFja0NsaWNrfHxuLnVwZGF0ZU1vbml0b3J8fHRoaXMudGhyZWFkTWFwLnNldChuLmdldElkKCksbiksdCYmdC51cGRhdGVNb25pdG9yfHwhdGhpcy5jb21waWxlck9wdGlvbnMuZW5hYmxlZHx8bi50cnlDb21waWxlKCksdGhpcy5lbWl0KCQuVEhSRUFEX1NUQVJURUQsbiksbn1fc3RvcFRocmVhZChBKXtBLmlzS2lsbGVkPSEwLHRoaXMuc2VxdWVuY2VyLnJldGlyZVRocmVhZChBKX1fcmVzdGFydFRocmVhZChBKXtjb25zdCBlPW5ldyBDKEEudG9wQmxvY2spO2UudGFyZ2V0PUEudGFyZ2V0LGUuc3RhY2tDbGljaz1BLnN0YWNrQ2xpY2ssZS51cGRhdGVNb25pdG9yPUEudXBkYXRlTW9uaXRvcixlLmJsb2NrQ29udGFpbmVyPUEuYmxvY2tDb250YWluZXIsZS5wdXNoU3RhY2soQS50b3BCbG9jayksQS50cmllZFRvQ29tcGlsZSYmdGhpcy5jb21waWxlck9wdGlvbnMuZW5hYmxlZCYmZS50cnlDb21waWxlKCksZS5zdGFja0NsaWNrfHxlLnVwZGF0ZU1vbml0b3J8fHRoaXMudGhyZWFkTWFwLnNldChlLmdldElkKCksZSk7Y29uc3QgdD10aGlzLnRocmVhZHMuaW5kZXhPZihBKTtyZXR1cm4gdD4tMT8odGhpcy50aHJlYWRzW3RdPWUsZSk6KHRoaXMudGhyZWFkcy5wdXNoKEEpLEEpfWVtaXRDb21waWxlRXJyb3IoQSxlKXt0aGlzLmVtaXQoJC5DT01QSUxFX0VSUk9SLEEsZSl9aXNBY3RpdmVUaHJlYWQoQSl7cmV0dXJuIEEuc3RhY2subGVuZ3RoPjAmJkEuc3RhdHVzIT09Qy5TVEFUVVNfRE9ORSYmdGhpcy50aHJlYWRzLmluZGV4T2YoQSk+LTF9aXNXYWl0aW5nVGhyZWFkKEEpe3JldHVybiBBLnN0YXR1cz09PUMuU1RBVFVTX1BST01JU0VfV0FJVHx8QS5zdGF0dXM9PT1DLlNUQVRVU19ZSUVMRF9USUNLfHwhdGhpcy5pc0FjdGl2ZVRocmVhZChBKX10b2dnbGVTY3JpcHQoQSxlKXtlPU9iamVjdC5hc3NpZ24oe3RhcmdldDp0aGlzLl9lZGl0aW5nVGFyZ2V0LHN0YWNrQ2xpY2s6ITF9LGUpO2ZvcihsZXQgdD0wO3Q8dGhpcy50aHJlYWRzLmxlbmd0aDt0KyspaWYodGhpcy50aHJlYWRzW3RdLnRvcEJsb2NrPT09QSYmdGhpcy50aHJlYWRzW3RdLnN0YXR1cyE9PUMuU1RBVFVTX0RPTkUpe2NvbnN0IG49ZS50YXJnZXQuYmxvY2tzLGk9bi5nZXRPcGNvZGUobi5nZXRCbG9jayhBKSk7aWYodGhpcy5nZXRJc0VkZ2VBY3RpdmF0ZWRIYXQoaSkmJnRoaXMudGhyZWFkc1t0XS5zdGFja0NsaWNrIT09ZS5zdGFja0NsaWNrKWNvbnRpbnVlO3JldHVybiB2b2lkIHRoaXMuX3N0b3BUaHJlYWQodGhpcy50aHJlYWRzW3RdKX10aGlzLl9wdXNoVGhyZWFkKEEsZS50YXJnZXQsZSl9YWRkTW9uaXRvclNjcmlwdChBLGUpe2V8fChlPXRoaXMuX2VkaXRpbmdUYXJnZXQpO2ZvcihsZXQgZT0wO2U8dGhpcy50aHJlYWRzLmxlbmd0aDtlKyspaWYodGhpcy50aHJlYWRzW2VdLnRvcEJsb2NrPT09QSYmdGhpcy50aHJlYWRzW2VdLnN0YXR1cyE9PUMuU1RBVFVTX0RPTkUmJnRoaXMudGhyZWFkc1tlXS51cGRhdGVNb25pdG9yKXJldHVybjt0aGlzLl9wdXNoVGhyZWFkKEEsZSx7dXBkYXRlTW9uaXRvcjohMH0pfWFsbFNjcmlwdHNEbyhBLGUpe2xldCB0PXRoaXMuZXhlY3V0YWJsZVRhcmdldHM7ZSYmKHQ9W2VdKTtmb3IobGV0IGU9dC5sZW5ndGgtMTtlPj0wO2UtLSl7Y29uc3Qgbj10W2VdLGk9bi5ibG9ja3MuZ2V0U2NyaXB0cygpO2ZvcihsZXQgZT0wO2U8aS5sZW5ndGg7ZSsrKXtBKGlbZV0sbil9fX1hbGxTY3JpcHRzQnlPcGNvZGVEbyhBLGUsdCl7bGV0IG49dGhpcy5leGVjdXRhYmxlVGFyZ2V0czt0JiYobj1bdF0pO2ZvcihsZXQgdD1uLmxlbmd0aC0xO3Q+PTA7dC0tKXtjb25zdCBpPW5bdF0scj1jLmdldFNjcmlwdHMoaS5ibG9ja3MsQSk7Zm9yKGxldCBBPTA7QTxyLmxlbmd0aDtBKyspZShyW0FdLGkpfX1zdGFydEhhdHMoQSxlLHQpe2lmKCF0aGlzLl9oYXRzLmhhc093blByb3BlcnR5KEEpKXJldHVybjtjb25zdCBuPVtdLGk9dGhpcy5faGF0c1tBXTtmb3IoY29uc3QgQSBpbiBlKWUuaGFzT3duUHJvcGVydHkoQSkmJihlW0FdPVQudG9TdHJpbmcoZVtBXSkudG9VcHBlckNhc2UoKSk7Y29uc3Qgcj10aGlzLnRocmVhZHMubGVuZ3RoO3JldHVybiB0aGlzLmFsbFNjcmlwdHNCeU9wY29kZURvKEEsKEEsdCk9Pntjb25zdHtibG9ja0lkOm8sZmllbGRzT2ZJbnB1dHM6c309QTtmb3IoY29uc3QgQSBpbiBlKWlmKHNbQV0udmFsdWUhPT1lW0FdKXJldHVybjtpZihpLnJlc3RhcnRFeGlzdGluZ1RocmVhZHMpe2NvbnN0IEE9dGhpcy50aHJlYWRNYXAuZ2V0KEMuZ2V0SWRGcm9tVGFyZ2V0QW5kQmxvY2sodCxvKSk7aWYoQSlyZXR1cm4gdm9pZCBuLnB1c2godGhpcy5fcmVzdGFydFRocmVhZChBKSl9ZWxzZSBmb3IobGV0IEE9MDtBPHI7QSsrKWlmKHRoaXMudGhyZWFkc1tBXS50YXJnZXQ9PT10JiZ0aGlzLnRocmVhZHNbQV0udG9wQmxvY2s9PT1vJiYhdGhpcy50aHJlYWRzW0FdLnN0YWNrQ2xpY2smJnRoaXMudGhyZWFkc1tBXS5zdGF0dXMhPT1DLlNUQVRVU19ET05FKXJldHVybjtuLnB1c2godGhpcy5fcHVzaFRocmVhZChvLHQpKX0sdCksbi5mb3JFYWNoKEE9Pnt0aGlzLnBhdXNlZCYmQS5wYXVzZSgpLEEuaXNDb21waWxlZD9BLmV4ZWN1dGFibGVIYXQmJihsLnNhdmVHbG9iYWxTdGF0ZSgpLGwoQSksbC5yZXN0b3JlR2xvYmFsU3RhdGUoKSk6KHUodGhpcy5zZXF1ZW5jZXIsQSksQS5nb1RvTmV4dEJsb2NrKCkpfSksdGhpcy5lbWl0KCQuSEFUU19TVEFSVEVELEEsZSx0LG4pLG59ZGlzcG9zZSgpe3RoaXMuc3RvcEFsbCgpLHRoaXMudGFyZ2V0cy5mb3JFYWNoKEE9PntBLmlzT3JpZ2luYWwmJkEuZGVsZXRlTW9uaXRvcnMoKX0pLHRoaXMudGFyZ2V0cy5tYXAodGhpcy5kaXNwb3NlVGFyZ2V0LHRoaXMpO2NvbnN0IEE9byh7fSk7QS5lcXVhbHModGhpcy5fbW9uaXRvclN0YXRlKXx8KHRoaXMuX21vbml0b3JTdGF0ZT1BLHRoaXMuZW1pdCgkLk1PTklUT1JTX1VQREFURSx0aGlzLl9tb25pdG9yU3RhdGUpKSx0aGlzLmVtaXQoJC5SVU5USU1FX0RJU1BPU0VEKSx0aGlzLmlvRGV2aWNlcy5jbG9jay5yZXNldFByb2plY3RUaW1lcigpLHRoaXMuZm9udE1hbmFnZXIuY2xlYXIoKSx0aGlzLmhhc0Nsb3VkRGF0YSgpJiZ0aGlzLmVtaXQoJC5IQVNfQ0xPVURfREFUQV9VUERBVEUsITEpLHRoaXMuaW9EZXZpY2VzLmNsb3VkLmNsZWFyKCk7Y29uc3QgZT1YKHRoaXMuY2xvdWRPcHRpb25zKTt0aGlzLmhhc0Nsb3VkRGF0YT1lLmhhc0Nsb3VkVmFyaWFibGVzLHRoaXMuY2FuQWRkQ2xvdWRWYXJpYWJsZT1lLmNhbkFkZENsb3VkVmFyaWFibGUsdGhpcy5nZXROdW1iZXJPZkNsb3VkVmFyaWFibGVzPWUuZ2V0TnVtYmVyT2ZDbG91ZFZhcmlhYmxlcyx0aGlzLmFkZENsb3VkVmFyaWFibGU9dGhpcy5faW5pdGlhbGl6ZUFkZENsb3VkVmFyaWFibGUoZSksdGhpcy5yZW1vdmVDbG91ZFZhcmlhYmxlPXRoaXMuX2luaXRpYWxpemVSZW1vdmVDbG91ZFZhcmlhYmxlKGUpfWFkZFRhcmdldChBKXtmb3IoY29uc3QgZSBpbiBBLnZhcmlhYmxlcyl7Y29uc3QgdD1BLnZhcmlhYmxlc1tlXTtpZih0Lm11c3RSZWNyZWF0ZSl7Y29uc3Qgbj10aGlzLm5ld1ZhcmlhYmxlSW5zdGFuY2UodC50eXBlLC4uLnQudmFsdWUpO2lmKG4ubXVzdFJlY3JlYXRlKXtkZWxldGUgQS52YXJpYWJsZXNbZV07Y29udGludWV9QS52YXJpYWJsZXNbZV09bn19dGhpcy50YXJnZXRzLnB1c2goQSksdGhpcy5leGVjdXRhYmxlVGFyZ2V0cy5wdXNoKEEpLEEuaXNTdGFnZSYmIXRoaXMuX3N0YWdlVGFyZ2V0JiYodGhpcy5fc3RhZ2VUYXJnZXQ9QSl9bW92ZUV4ZWN1dGFibGUoQSxlKXtjb25zdCB0PXRoaXMuZXhlY3V0YWJsZVRhcmdldHMuaW5kZXhPZihBKTt0aGlzLmV4ZWN1dGFibGVUYXJnZXRzLnNwbGljZSh0LDEpO2xldCBuPXQrZTtyZXR1cm4gbj50aGlzLmV4ZWN1dGFibGVUYXJnZXRzLmxlbmd0aCYmKG49dGhpcy5leGVjdXRhYmxlVGFyZ2V0cy5sZW5ndGgpLG48PTAmJihuPXRoaXMuZXhlY3V0YWJsZVRhcmdldHMubGVuZ3RoPjAmJnRoaXMuZXhlY3V0YWJsZVRhcmdldHNbMF0uaXNTdGFnZT8xOjApLHRoaXMuZXhlY3V0YWJsZVRhcmdldHMuc3BsaWNlKG4sMCxBKSxufXNldEV4ZWN1dGFibGVQb3NpdGlvbihBLGUpe2NvbnN0IHQ9dGhpcy5leGVjdXRhYmxlVGFyZ2V0cy5pbmRleE9mKEEpO3JldHVybiB0aGlzLm1vdmVFeGVjdXRhYmxlKEEsZS10KX1yZW1vdmVFeGVjdXRhYmxlKEEpe2NvbnN0IGU9dGhpcy5leGVjdXRhYmxlVGFyZ2V0cy5pbmRleE9mKEEpO2U+LTEmJnRoaXMuZXhlY3V0YWJsZVRhcmdldHMuc3BsaWNlKGUsMSl9ZGlzcG9zZVRhcmdldChBKXt0aGlzLnRhcmdldHM9dGhpcy50YXJnZXRzLmZpbHRlcihlPT5BIT09ZXx8KGUuZGlzcG9zZSgpLCExKSksdGhpcy5fc3RhZ2VUYXJnZXQ9PT1BJiYodGhpcy5fc3RhZ2VUYXJnZXQ9bnVsbCl9c3RvcEZvclRhcmdldChBLGUpe3RoaXMuZW1pdCgkLlNUT1BfRk9SX1RBUkdFVCxBLGUpO2ZvcihsZXQgdD0wO3Q8dGhpcy50aHJlYWRzLmxlbmd0aDt0KyspdGhpcy50aHJlYWRzW3RdIT09ZSYmdGhpcy50aHJlYWRzW3RdLnRhcmdldD09PUEmJnRoaXMuX3N0b3BUaHJlYWQodGhpcy50aHJlYWRzW3RdKX1ncmVlbkZsYWcoKXt0aGlzLmVtaXQoJC5QUk9KRUNUX1NUQVJUX0JFRk9SRV9SRVNFVCksdGhpcy5zdG9wQWxsKCksdGhpcy5lbWl0KCQuUFJPSkVDVF9TVEFSVCksdGhpcy51cGRhdGVDdXJyZW50TVNlY3MoKSx0aGlzLmlvRGV2aWNlcy5jbG9jay5yZXNldFByb2plY3RUaW1lcigpLHRoaXMudGFyZ2V0cy5mb3JFYWNoKEE9PkEuY2xlYXJFZGdlQWN0aXZhdGVkVmFsdWVzKCkpO2ZvcihsZXQgQT0wO0E8dGhpcy50YXJnZXRzLmxlbmd0aDtBKyspdGhpcy50YXJnZXRzW0FdLm9uR3JlZW5GbGFnKCk7dGhpcy5zdGFydEhhdHMoImV2ZW50X3doZW5mbGFnY2xpY2tlZCIpfXBhdXNlKCl7aWYoIXRoaXMucGF1c2VkKXt0aGlzLmVtaXQoJC5SVU5USU1FX1BSRV9QQVVTRUQpLHRoaXMucGF1c2VkPSEwLHRoaXMuYXVkaW9FbmdpbmUuYXVkaW9Db250ZXh0LnN1c3BlbmQoKTtmb3IoY29uc3QgQSBvZiB0aGlzLl9leHRlbnNpb25BdWRpb09iamVjdHMudmFsdWVzKCkpQS5hdWRpb0NvbnRleHQmJkEuYXVkaW9Db250ZXh0LnN1c3BlbmQoKTt0aGlzLmlvRGV2aWNlcy5jbG9jay5wYXVzZSgpO2Zvcihjb25zdCBBIG9mIHRoaXMudGhyZWFkcylBLnBhdXNlKCk7dGhpcy5lbWl0KCQuUlVOVElNRV9QQVVTRUQpfX1wbGF5KCl7aWYodGhpcy5wYXVzZWQpe3RoaXMucGF1c2VkPSExLHRoaXMuYXVkaW9FbmdpbmUuYXVkaW9Db250ZXh0LnJlc3VtZSgpO2Zvcihjb25zdCBBIG9mIHRoaXMuX2V4dGVuc2lvbkF1ZGlvT2JqZWN0cy52YWx1ZXMoKSlBLmF1ZGlvQ29udGV4dCYmQS5hdWRpb0NvbnRleHQucmVzdW1lKCk7dGhpcy5pb0RldmljZXMuY2xvY2sucmVzdW1lKCk7Zm9yKGNvbnN0IEEgb2YgdGhpcy50aHJlYWRzKUEucGxheSgpO3RoaXMuZW1pdCgkLlJVTlRJTUVfVU5QQVVTRUQpfX1zdG9wQWxsKCl7dGhpcy5wbGF5KCksdGhpcy5lbWl0KCQuUFJPSkVDVF9TVE9QX0FMTCksdGhpcy52YXJpYWJsZXM9T2JqZWN0LmNyZWF0ZShudWxsKTtjb25zdCBBPVtdO2ZvcihsZXQgZT0wO2U8dGhpcy50YXJnZXRzLmxlbmd0aDtlKyspdGhpcy50YXJnZXRzW2VdLm9uU3RvcEFsbCgpLHRoaXMudGFyZ2V0c1tlXS5oYXNPd25Qcm9wZXJ0eSgiaXNPcmlnaW5hbCIpJiYhdGhpcy50YXJnZXRzW2VdLmlzT3JpZ2luYWw/dGhpcy50YXJnZXRzW2VdLmRpc3Bvc2UoKTpBLnB1c2godGhpcy50YXJnZXRzW2VdKTt0aGlzLnRhcmdldHM9QSxudWxsIT09dGhpcy5zZXF1ZW5jZXIuYWN0aXZlVGhyZWFkJiZ0aGlzLl9zdG9wVGhyZWFkKHRoaXMuc2VxdWVuY2VyLmFjdGl2ZVRocmVhZCksdGhpcy50aHJlYWRzLmZvckVhY2goQT0+QS5zdGF0dXMhPT1DLlNUQVRVU19ET05FJiZ0aGlzLmVtaXQoJC5USFJFQURfRklOSVNIRUQsQSkpLHRoaXMudGhyZWFkcz1bXSx0aGlzLnRocmVhZE1hcC5jbGVhcigpfV9yZW5kZXJJbnRlcnBvbGF0ZWRQb3NpdGlvbnMoKXtjb25zdCBBPXRoaXMuX2xhc3RTdGVwVGltZSxlPURhdGUubm93KCktQSx0PU1hdGgubWluKDEsTWF0aC5tYXgoMCxlL3RoaXMuY3VycmVudFN0ZXBUaW1lKSk7Ty5pbnRlcnBvbGF0ZSh0aGlzLHQpLHRoaXMucmVuZGVyZXImJnRoaXMucmVuZGVyZXIuZHJhdygpfXVwZGF0ZVRocmVhZE1hcCgpe3RoaXMudGhyZWFkTWFwLmNsZWFyKCk7Zm9yKGNvbnN0IEEgb2YgdGhpcy50aHJlYWRzKUEuc3RhY2tDbGlja3x8QS51cGRhdGVNb25pdG9yfHx0aGlzLnRocmVhZE1hcC5zZXQoQS5nZXRJZCgpLEEpfV9zdGVwKCl7dGhpcy5mcmFtZUxvb3AuX3N0ZXBDb3VudGVyKyssdGhpcy5lbWl0KCQuUlVOVElNRV9TVEVQX1NUQVJUKSx0aGlzLmludGVycG9sYXRpb25FbmFibGVkJiZPLnNldHVwSW5pdGlhbFN0YXRlKHRoaXMpLG51bGwhPT10aGlzLnByb2ZpbGVyJiYoLTE9PT1aJiYoWj10aGlzLnByb2ZpbGVyLmlkQnlOYW1lKCJSdW50aW1lLl9zdGVwIikpLHRoaXMucHJvZmlsZXIuc3RhcnQoWikpLHRoaXMudGhyZWFkcz10aGlzLnRocmVhZHMuZmlsdGVyKEE9PiFBLmlzS2lsbGVkKSx0aGlzLnVwZGF0ZVRocmVhZE1hcCgpO2Zvcihjb25zdCBBIGluIHRoaXMuX2hhdHMpe2lmKCF0aGlzLl9oYXRzLmhhc093blByb3BlcnR5KEEpKWNvbnRpbnVlO3RoaXMuX2hhdHNbQV0uZWRnZUFjdGl2YXRlZCYmdGhpcy5zdGFydEhhdHMoQSl9dGhpcy5yZWRyYXdSZXF1ZXN0ZWQ9ITEsdGhpcy5fcHVzaE1vbml0b3JzKCksbnVsbCE9PXRoaXMucHJvZmlsZXImJigtMT09PV8mJihfPXRoaXMucHJvZmlsZXIuaWRCeU5hbWUoIlNlcXVlbmNlci5zdGVwVGhyZWFkcyIpKSx0aGlzLnByb2ZpbGVyLnN0YXJ0KF8pKSx0aGlzLmVtaXQoJC5CRUZPUkVfRVhFQ1VURSk7Y29uc3QgQT10aGlzLnNlcXVlbmNlci5zdGVwVGhyZWFkcygpO251bGwhPT10aGlzLnByb2ZpbGVyJiZ0aGlzLnByb2ZpbGVyLnN0b3AoKSx0aGlzLmVtaXQoJC5BRlRFUl9FWEVDVVRFKSx0aGlzLl91cGRhdGVHbG93cyhBKSx0aGlzLl9lbWl0UHJvamVjdFJ1blN0YXR1cyh0aGlzLnRocmVhZHMubGVuZ3RoK0EubGVuZ3RoLXRoaXMuX2dldE1vbml0b3JUaHJlYWRDb3VudChbLi4udGhpcy50aHJlYWRzLC4uLkFdKSksdGhpcy5fbGFzdFN0ZXBEb25lVGhyZWFkcz1BLHRoaXMucmVuZGVyZXImJihudWxsIT09dGhpcy5wcm9maWxlciYmKC0xPT09cSYmKHE9dGhpcy5wcm9maWxlci5pZEJ5TmFtZSgiUmVuZGVyV2ViR0wuZHJhdyIpKSx0aGlzLnByb2ZpbGVyLnN0YXJ0KHEpKSxkb2N1bWVudC5oaWRkZW58fHRoaXMuZnJhbWVMb29wLl9pbnRlcnBvbGF0aW9uQW5pbWF0aW9ufHx0aGlzLnJlbmRlcmVyLmRyYXcoKSxudWxsIT09dGhpcy5wcm9maWxlciYmdGhpcy5wcm9maWxlci5zdG9wKCkpLHRoaXMuX3JlZnJlc2hUYXJnZXRzJiYodGhpcy5lbWl0KCQuVEFSR0VUU19VUERBVEUsITEpLHRoaXMuX3JlZnJlc2hUYXJnZXRzPSExKTtsZXQgZT0hMTtpZih0aGlzLl9tb25pdG9yU3RhdGUuc29tZShBPT4ib2JqZWN0Ij09dHlwZW9mIEEuZ2V0KCJ2YWx1ZSIpJiYiX21vbml0b3JVcFRvRGF0ZSJpbiBBLmdldCgidmFsdWUiKSYmIUEuZ2V0KCJ2YWx1ZSIpLl9tb25pdG9yVXBUb0RhdGUpKXtjb25zdCBBPXRoaXMuX21vbml0b3JTdGF0ZTtpZih0aGlzLl9tb25pdG9yU3RhdGU9dGhpcy5fbW9uaXRvclN0YXRlLnRvT3JkZXJlZE1hcCgpLEE9PT10aGlzLl9tb25pdG9yU3RhdGUpdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBPcmRlcmVkTWFwLnRvT3JkZXJlZE1hcCgpIHRvIHByb2R1Y2UgYSB0cnVseSB1bmlxdWUgdmFsdWUiKTtlPSEwfXRoaXMuX3ByZXZNb25pdG9yU3RhdGUuZXF1YWxzKHRoaXMuX21vbml0b3JTdGF0ZSkmJiFlfHwodGhpcy5lbWl0KCQuTU9OSVRPUlNfVVBEQVRFLHRoaXMuX21vbml0b3JTdGF0ZSksdGhpcy5fcHJldk1vbml0b3JTdGF0ZT10aGlzLl9tb25pdG9yU3RhdGUpLG51bGwhPT10aGlzLnByb2ZpbGVyJiYodGhpcy5wcm9maWxlci5zdG9wKCksdGhpcy5wcm9maWxlci5yZXBvcnRGcmFtZXMoKSksdGhpcy5pbnRlcnBvbGF0aW9uRW5hYmxlZCYmKHRoaXMuX2xhc3RTdGVwVGltZT1EYXRlLm5vdygpKSx0aGlzLmVtaXQoJC5SVU5USU1FX1NURVBfRU5EKX1fZ2V0TW9uaXRvclRocmVhZENvdW50KEEpe2xldCBlPTA7cmV0dXJuIEEuZm9yRWFjaChBPT57QS51cGRhdGVNb25pdG9yJiZlKyt9KSxlfV9wdXNoTW9uaXRvcnMoKXt0aGlzLm1vbml0b3JCbG9ja3MucnVuQWxsTW9uaXRvcmVkKHRoaXMpfXNldEVkaXRpbmdUYXJnZXQoQSl7Y29uc3QgZT10aGlzLl9lZGl0aW5nVGFyZ2V0O3RoaXMuX2VkaXRpbmdUYXJnZXQ9QSx0aGlzLl9zY3JpcHRHbG93c1ByZXZpb3VzRnJhbWU9W10sdGhpcy5fdXBkYXRlR2xvd3MoKSxlIT09dGhpcy5fZWRpdGluZ1RhcmdldCYmdGhpcy5yZXF1ZXN0VG9vbGJveEV4dGVuc2lvbnNVcGRhdGUoKX1zZXRDb21wYXRpYmlsaXR5TW9kZShBKXtBP3RoaXMuc2V0RnJhbWVyYXRlKDMwKTp0aGlzLnNldEZyYW1lcmF0ZSg2MCl9c2V0RnJhbWVyYXRlKEEpe0E+MjUwJiYoQT0yNTApLEE8MCYmKEE9MSksdGhpcy5mcmFtZUxvb3Auc2V0RnJhbWVyYXRlKEEpLHRoaXMuZW1pdCgkLkZSQU1FUkFURV9DSEFOR0VELEEpfXNldEludGVycG9sYXRpb24oQSl7dGhpcy5pbnRlcnBvbGF0aW9uRW5hYmxlZD1BLHRoaXMuZnJhbWVMb29wLnNldEludGVycG9sYXRpb24odGhpcy5pbnRlcnBvbGF0aW9uRW5hYmxlZCksdGhpcy5lbWl0KCQuSU5URVJQT0xBVElPTl9DSEFOR0VELEEpfXNldFJ1bnRpbWVPcHRpb25zKEEpe3RoaXMucnVudGltZU9wdGlvbnM9T2JqZWN0LmFzc2lnbih7fSx0aGlzLnJ1bnRpbWVPcHRpb25zLEEpLHRoaXMuZW1pdCgkLlJVTlRJTUVfT1BUSU9OU19DSEFOR0VELHRoaXMucnVudGltZU9wdGlvbnMpLHRoaXMucmVuZGVyZXImJih0aGlzLnJlbmRlcmVyLm9mZnNjcmVlblRvdWNoaW5nPSF0aGlzLnJ1bnRpbWVPcHRpb25zLmZlbmNpbmcsdGhpcy5ydW50aW1lT3B0aW9ucy5kaXNhYmxlT2Zmc2NyZWVuUmVuZGVyaW5nPT09dGhpcy5yZW5kZXJlci5yZW5kZXJPZmZzY3JlZW4mJnRoaXMucmVuZGVyZXIuc2V0UmVuZGVyT2Zmc2NyZWVuKCF0aGlzLnJ1bnRpbWVPcHRpb25zLmRpc2FibGVPZmZzY3JlZW5SZW5kZXJpbmcpKX1zZXRDb21waWxlck9wdGlvbnMoQSl7dGhpcy5jb21waWxlck9wdGlvbnM9T2JqZWN0LmFzc2lnbih7fSx0aGlzLmNvbXBpbGVyT3B0aW9ucyxBKSx0aGlzLnJlc2V0QWxsQ2FjaGVzKCksdGhpcy5lbWl0KCQuQ09NUElMRVJfT1BUSU9OU19DSEFOR0VELHRoaXMuY29tcGlsZXJPcHRpb25zKX1zZXRTdGFnZVNpemUoQSxlKXtpZihBPU1hdGgucm91bmQoTWF0aC5tYXgoMSxBKSksZT1NYXRoLnJvdW5kKE1hdGgubWF4KDEsZSkpLHRoaXMuc3RhZ2VXaWR0aCE9PUF8fHRoaXMuc3RhZ2VIZWlnaHQhPT1lKXtjb25zdCB0PUEtdGhpcy5zdGFnZVdpZHRoLG49ZS10aGlzLnN0YWdlSGVpZ2h0O2lmKHRoaXMuX21vbml0b3JTdGF0ZS5zaXplPjApe2NvbnN0IEE9dC8yLGU9bi8yO2Zvcihjb25zdCB0IG9mIHRoaXMuX21vbml0b3JTdGF0ZS52YWx1ZVNlcSgpKXtjb25zdCBuPXQuc2V0KCJ4Iix0LmdldCgieCIpK0EpLnNldCgieSIsdC5nZXQoInkiKStlKTt0aGlzLnJlcXVlc3RVcGRhdGVNb25pdG9yKG4pfXRoaXMuZW1pdCgkLk1PTklUT1JTX1VQREFURSx0aGlzLl9tb25pdG9yU3RhdGUpfXRoaXMuc3RhZ2VXaWR0aD1BLHRoaXMuc3RhZ2VIZWlnaHQ9ZSx0aGlzLnJlbmRlcmVyJiZ0aGlzLnJlbmRlcmVyLnNldFN0YWdlU2l6ZSgtQS8yLEEvMiwtZS8yLGUvMiksdGhpcy5lbWl0KCQuU1RBR0VfU0laRV9DSEFOR0VELEEsZSl9fXNldEluRWRpdG9yKEEpe31jb252ZXJ0VG9QYWNrYWdlZFJ1bnRpbWUoKXtpZih0aGlzLnN0b3JhZ2UpdGhyb3cgbmV3IEVycm9yKCJjb252ZXJ0VG9QYWNrYWdlZFJ1bnRpbWUgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGF0dGFjaFN0b3JhZ2UiKTt0aGlzLmlzUGFja2FnZWQ9ITB9cmVzZXRBbGxDYWNoZXMoKXtmb3IoY29uc3QgQSBvZiB0aGlzLnRhcmdldHMpQS5pc09yaWdpbmFsJiZBLmJsb2Nrcy5yZXNldENhY2hlKCk7dGhpcy5mbHlvdXRCbG9ja3MucmVzZXRDYWNoZSgpLHRoaXMubW9uaXRvckJsb2Nrcy5yZXNldENhY2hlKCl9YWRkQWRkb25CbG9jayhBKXtjb25zdCBlPUEucHJvY2VkdXJlQ29kZSx0PUEuYXJndW1lbnRzLHI9QS5hcmd1bWVudHMubWFwKChBLGUpPT4iYXJnIi5jb25jYXQoZSkpLG89QS5hcmd1bWVudHMubWFwKCgpPT4iIik7aWYodGhpcy5hZGRvbkJsb2Nrc1tlXT1mdW5jdGlvbihBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgdD1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9uKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aShBLGUsdFtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0KSk6bihPYmplY3QodCkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpKX0pKX1yZXR1cm4gQX0oe25hbWVzSWRzRGVmYXVsdHM6W3QscixvXX0sQSksIUEuaGlkZGVuKXtjb25zdCBBPSJhLWIiO2xldCBuPXRoaXMuX2Jsb2NrSW5mby5maW5kKGU9PmUuaWQ9PT1BKTtpZighbil7bj17aWQ6QSxuYW1lOiJBZGRvbnMiLGNvbG9yMToiIzI5YmViOCIsY29sb3IyOiIjM2FhOGE0Iixjb2xvcjM6IiMzYWE4YTQiLG1lbnVJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7LCIuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudCgnPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCI+PHBhdGggZD0iTTE0LjkyIDEuMDUzQTEzLjgzNSAxMy44MzUgMCAwIDAgMS4wNTIgMTQuOTE5djE4LjE2MmExMy44MzUgMTMuODM1IDAgMCAwIDEzLjg2NiAxMy44NjZoMTguMTYyYTEzLjgzNSAxMy44MzUgMCAwIDAgMTMuODY2LTEzLjg2NlYxNC45MTlBMTMuODM1IDEzLjgzNSAwIDAgMCAzMy4wODEgMS4wNTN6bTE2LjYgMTIuNzQ2TDQxLjcyIDI0IDMxLjUyIDM0LjIwMWwtMy4yNzYtMy4yNzVMMzUuMTcgMjRsLTYuOTI2LTYuOTI2Wm0tMTUuMTE2LjA3MyAzLjI3OCAzLjI3OEwxMi44MyAyNGw2LjkyNiA2LjkyNkwxNi40OCAzNC4yIDYuMjggMjRaIiBzdHlsZT0iZmlsbDojMjliZWI4O2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO3N0cm9rZS13aWR0aDoxLjUxMzcxO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiLz48L3N2Zz4nKSksYmxvY2tzOltdLGN1c3RvbUZpZWxkVHlwZXM6e30sbWVudXM6W119LHRoaXMuX2Jsb2NrSW5mby51bnNoaWZ0KG4pfW4uYmxvY2tzLnB1c2goe2luZm86e30seG1sOic8YmxvY2sgdHlwZT0icHJvY2VkdXJlc19jYWxsIiBnYXA9IjE2Ij48bXV0YXRpb24gZ2VuZXJhdGVzaGFkb3dzPSJ0cnVlIiB3YXJwPSJmYWxzZSInKycgcHJvY2NvZGU9IicuY29uY2F0KG0oZSksJyInKSsnIGFyZ3VtZW50bmFtZXM9IicuY29uY2F0KG0oSlNPTi5zdHJpbmdpZnkodCkpLCciJykrJyBhcmd1bWVudGlkcz0iJy5jb25jYXQobShKU09OLnN0cmluZ2lmeShyKSksJyInKSsnIGFyZ3VtZW50ZGVmYXVsdHM9IicuY29uY2F0KG0oSlNPTi5zdHJpbmdpZnkobykpLCciJykrIj48L211dGF0aW9uPjwvYmxvY2s+In0pfXRoaXMucmVzZXRBbGxDYWNoZXMoKX1nZXRBZGRvbkJsb2NrKEEpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5hZGRvbkJsb2NrcyxBKT90aGlzLmFkZG9uQmxvY2tzW0FdOm51bGx9ZmluZFByb2plY3RPcHRpb25zQ29tbWVudCgpe2NvbnN0IEE9dGhpcy5nZXRUYXJnZXRGb3JTdGFnZSgpLmNvbW1lbnRzO2Zvcihjb25zdCBlIG9mIE9iamVjdC52YWx1ZXMoQSkpaWYoZS50ZXh0LmluY2x1ZGVzKCIgLy8gX3R3Y29uZmlnXyIpKXJldHVybiBlO3JldHVybiBudWxsfXBhcnNlUHJvamVjdE9wdGlvbnMoQSl7Y29uc3QgZT1udWxsIT1BP0E6dGhpcy5maW5kUHJvamVjdE9wdGlvbnNDb21tZW50KCk7aWYoIWUpcmV0dXJuO2NvbnN0IHQ9ZS50ZXh0LnNwbGl0KCJcbiIpLmZpbmQoQT0+QS5lbmRzV2l0aCgiIC8vIF90d2NvbmZpZ18iKSk7aWYoIXQpcmV0dXJuIHZvaWQgSS53YXJuKCJDb25maWcgY29tbWVudCBkb2VzIG5vdCBjb250YWluIHZhbGlkIGxpbmUiKTtjb25zdCBuPXQuc2xpY2UoMCx0Lmxlbmd0aC0iIC8vIF90d2NvbmZpZ18iLmxlbmd0aCk7bGV0IGk7dHJ5e2lmKGk9cy5wYXJzZShuKSwhaXx8Im9iamVjdCIhPXR5cGVvZiBpKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBvYmplY3QiKX1jYXRjaChBKXtyZXR1cm4gdm9pZCBJLndhcm4oIkNvbmZpZyBjb21tZW50IGhhcyBpbnZhbGlkIEpTT04iLEEpfSJudW1iZXIiPT10eXBlb2YgaS5mcmFtZXJhdGUmJnRoaXMuc2V0RnJhbWVyYXRlKGkuZnJhbWVyYXRlKSxpLnR1cmJvJiYodGhpcy50dXJib01vZGU9ITAsdGhpcy5lbWl0KCQuVFVSQk9fTU9ERV9PTikpLGkuaW50ZXJwb2xhdGlvbiYmdGhpcy5zZXRJbnRlcnBvbGF0aW9uKCEwKSxpLnJ1bnRpbWVPcHRpb25zJiZ0aGlzLnNldFJ1bnRpbWVPcHRpb25zKGkucnVudGltZU9wdGlvbnMpLCJib29sZWFuIj09dHlwZW9mIGkuaHEmJnRoaXMucmVuZGVyZXImJnRoaXMucmVuZGVyZXIuc2V0VXNlSGlnaFF1YWxpdHlSZW5kZXIoaS5ocSk7Y29uc3Qgcj0raS53aWR0aHx8dGhpcy5zdGFnZVdpZHRoLG89K2kuaGVpZ2h0fHx0aGlzLnN0YWdlSGVpZ2h0O3I9PT10aGlzLnN0YWdlV2lkdGgmJm89PT10aGlzLnN0YWdlSGVpZ2h0fHx0aGlzLnNldFN0YWdlU2l6ZShyLG8pfV9nZW5lcmF0ZUFsbFByb2plY3RPcHRpb25zKCl7cmV0dXJue2ZyYW1lcmF0ZTp0aGlzLmZyYW1lTG9vcC5mcmFtZXJhdGUscnVudGltZU9wdGlvbnM6dGhpcy5ydW50aW1lT3B0aW9ucyxpbnRlcnBvbGF0aW9uOnRoaXMuaW50ZXJwb2xhdGlvbkVuYWJsZWQsdHVyYm86dGhpcy50dXJib01vZGUsaHE6IXRoaXMucmVuZGVyZXJ8fHRoaXMucmVuZGVyZXIudXNlSGlnaFF1YWxpdHlSZW5kZXIsd2lkdGg6dGhpcy5zdGFnZVdpZHRoLGhlaWdodDp0aGlzLnN0YWdlSGVpZ2h0fX1nZW5lcmF0ZURpZmZlcmluZ1Byb2plY3RPcHRpb25zKCl7Y29uc3QgQT0oZSx0KT0+e2NvbnN0IG49e307Zm9yKGNvbnN0IGkgb2YgT2JqZWN0LmtleXModCkpe2NvbnN0IHI9dFtpXSxvPWVbaV07aWYoIm9iamVjdCI9PXR5cGVvZiByJiZyKXtjb25zdCBlPUEobyxyKTtPYmplY3Qua2V5cyhlKS5sZW5ndGg+MCYmKG5baV09ZSl9ZWxzZSByIT09byYmKG5baV09cil9cmV0dXJuIG59O3JldHVybiBBKHRoaXMuX2RlZmF1bHRTdG9yZWRTZXR0aW5ncyx0aGlzLl9nZW5lcmF0ZUFsbFByb2plY3RPcHRpb25zKCkpfXN0b3JlUHJvamVjdE9wdGlvbnMoKXtjb25zdCBBPXRoaXMuZ2VuZXJhdGVEaWZmZXJpbmdQcm9qZWN0T3B0aW9ucygpLGU9IkNvbmZpZ3VyYXRpb24gZm9yIGh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vXG5Zb3UgY2FuIG1vdmUsIHJlc2l6ZSwgYW5kIG1pbmltaXplIHRoaXMgY29tbWVudCwgYnV0IGRvbid0IGVkaXQgaXQgYnkgaGFuZC4gVGhpcyBjb21tZW50IGNhbiBiZSBkZWxldGVkIHRvIHJlbW92ZSB0aGUgc3RvcmVkIHNldHRpbmdzLlxuIi5jb25jYXQocy5zdHJpbmdpZnkoQSkpLmNvbmNhdCgiIC8vIF90d2NvbmZpZ18iKSx0PXRoaXMuZmluZFByb2plY3RPcHRpb25zQ29tbWVudCgpO2lmKHQpdC50ZXh0PWU7ZWxzZXt0aGlzLmdldFRhcmdldEZvclN0YWdlKCkuY3JlYXRlQ29tbWVudCh6KCksbnVsbCxlLDUwLDUwLDM1MCwxNzAsITEpfXRoaXMuZW1pdFByb2plY3RDaGFuZ2VkKCl9cHJlY29tcGlsZSgpe3RoaXMuYWxsU2NyaXB0c0RvKChBLGUpPT57Y29uc3QgdD1lLmJsb2Nrcy5nZXRCbG9jayhBKTtpZih0aGlzLmdldElzSGF0KHQub3Bjb2RlKSl7Y29uc3QgdD1uZXcgQyhBKTt0LnRhcmdldD1lLHQuYmxvY2tDb250YWluZXI9ZS5ibG9ja3MsdC50cnlDb21waWxlKCl9fSl9ZW5hYmxlRGVidWcoKXt0aGlzLnJlc2V0QWxsQ2FjaGVzKCksdGhpcy5kZWJ1Zz0hMH1fdXBkYXRlR2xvd3MoQSl7Y29uc3QgZT1bXTtlLnB1c2guYXBwbHkoZSx0aGlzLnRocmVhZHMpLEEmJmUucHVzaC5hcHBseShlLEEpO2NvbnN0IHQ9W10sbj1bXTtmb3IobGV0IEE9MDtBPGUubGVuZ3RoO0ErKyl7Y29uc3Qgbj1lW0FdLGk9bi50YXJnZXQ7aWYoaT09PXRoaXMuX2VkaXRpbmdUYXJnZXQpe2NvbnN0IEE9bi5ibG9ja0dsb3dJbkZyYW1lO2lmKG4ucmVxdWVzdFNjcmlwdEdsb3dJbkZyYW1lfHxuLnN0YWNrQ2xpY2spe2xldCBlPWkuYmxvY2tzLmdldFRvcExldmVsU2NyaXB0KEEpO2V8fChlPXRoaXMuZmx5b3V0QmxvY2tzLmdldFRvcExldmVsU2NyaXB0KEEpKSxlJiZ0LnB1c2goZSl9fX1mb3IobGV0IEE9MDtBPHRoaXMuX3NjcmlwdEdsb3dzUHJldmlvdXNGcmFtZS5sZW5ndGg7QSsrKXtjb25zdCBlPXRoaXMuX3NjcmlwdEdsb3dzUHJldmlvdXNGcmFtZVtBXTt0LmluZGV4T2YoZSk8MD90aGlzLmdsb3dTY3JpcHQoZSwhMSk6bi5wdXNoKGUpfWZvcihsZXQgQT0wO0E8dC5sZW5ndGg7QSsrKXtjb25zdCBlPXRbQV07dGhpcy5fc2NyaXB0R2xvd3NQcmV2aW91c0ZyYW1lLmluZGV4T2YoZSk8MCYmKHRoaXMuZ2xvd1NjcmlwdChlLCEwKSxuLnB1c2goZSkpfXRoaXMuX3NjcmlwdEdsb3dzUHJldmlvdXNGcmFtZT1ufV9lbWl0UHJvamVjdFJ1blN0YXR1cyhBKXswPT09dGhpcy5fbm9uTW9uaXRvclRocmVhZENvdW50JiZBPjAmJnRoaXMuZW1pdCgkLlBST0pFQ1RfUlVOX1NUQVJUKSx0aGlzLl9ub25Nb25pdG9yVGhyZWFkQ291bnQ+MCYmMD09PUEmJnRoaXMuZW1pdCgkLlBST0pFQ1RfUlVOX1NUT1ApLHRoaXMuX25vbk1vbml0b3JUaHJlYWRDb3VudD1BfXF1aWV0R2xvdyhBKXtjb25zdCBlPXRoaXMuX3NjcmlwdEdsb3dzUHJldmlvdXNGcmFtZS5pbmRleE9mKEEpO2U+LTEmJnRoaXMuX3NjcmlwdEdsb3dzUHJldmlvdXNGcmFtZS5zcGxpY2UoZSwxKX1nbG93QmxvY2soQSxlKXtlP3RoaXMuZW1pdCgkLkJMT0NLX0dMT1dfT04se2lkOkF9KTp0aGlzLmVtaXQoJC5CTE9DS19HTE9XX09GRix7aWQ6QX0pfWdsb3dTY3JpcHQoQSxlKXtlP3RoaXMuZW1pdCgkLlNDUklQVF9HTE9XX09OLHtpZDpBfSk6dGhpcy5lbWl0KCQuU0NSSVBUX0dMT1dfT0ZGLHtpZDpBfSl9ZW1pdEJsb2NrRHJhZ1VwZGF0ZShBKXt0aGlzLmVtaXQoJC5CTE9DS19EUkFHX1VQREFURSxBKX1lbWl0QmxvY2tFbmREcmFnKEEsZSl7dGhpcy5lbWl0KCQuQkxPQ0tfRFJBR19FTkQsQSxlKX12aXN1YWxSZXBvcnQoQSxlKXt0aGlzLmVtaXQoJC5WSVNVQUxfUkVQT1JULHtpZDpBLHZhbHVlOmV9KX1yZXF1ZXN0QWRkTW9uaXRvcihBKXtjb25zdCBlPUEuZ2V0KCJpZCIpO3RoaXMucmVxdWVzdFVwZGF0ZU1vbml0b3IoQSl8fCh0aGlzLl9tb25pdG9yU3RhdGU9dGhpcy5fbW9uaXRvclN0YXRlLnNldChlLEEpKX1yZXF1ZXN0VXBkYXRlTW9uaXRvcihBKXtjb25zdCBlPUEuZ2V0KCJpZCIpO3JldHVybiEhdGhpcy5fbW9uaXRvclN0YXRlLmhhcyhlKSYmKHRoaXMuX21vbml0b3JTdGF0ZT10aGlzLl9tb25pdG9yU3RhdGUuc2V0KGUsdGhpcy5fbW9uaXRvclN0YXRlLmdldChlKS5tZXJnZVdpdGgoKEEsZSk9Pm51bGw9PWU/QTplLEEpKSwhMCl9cmVxdWVzdFJlbW92ZU1vbml0b3IoQSl7dGhpcy5fbW9uaXRvclN0YXRlPXRoaXMuX21vbml0b3JTdGF0ZS5kZWxldGUoQSl9cmVxdWVzdEhpZGVNb25pdG9yKEEpe3JldHVybiB0aGlzLnJlcXVlc3RVcGRhdGVNb25pdG9yKG5ldyBNYXAoW1siaWQiLEFdLFsidmlzaWJsZSIsITFdXSkpfXJlcXVlc3RTaG93TW9uaXRvcihBKXtyZXR1cm4gdGhpcy5yZXF1ZXN0VXBkYXRlTW9uaXRvcihuZXcgTWFwKFtbImlkIixBXSxbInZpc2libGUiLCEwXV0pKX1yZXF1ZXN0UmVtb3ZlTW9uaXRvckJ5VGFyZ2V0SWQoQSl7dGhpcy5fbW9uaXRvclN0YXRlPXRoaXMuX21vbml0b3JTdGF0ZS5maWx0ZXJOb3QoZT0+ZS50YXJnZXRJZD09PUEpfWdldFRhcmdldEJ5SWQoQSl7Zm9yKGxldCBlPTA7ZTx0aGlzLnRhcmdldHMubGVuZ3RoO2UrKyl7Y29uc3QgdD10aGlzLnRhcmdldHNbZV07aWYodC5pZD09PUEpcmV0dXJuIHR9fWdldFNwcml0ZVRhcmdldEJ5TmFtZShBKXtjb25zdCBlPVkoQSk7aWYoZS5pZClyZXR1cm4gdGhpcy5nZXRUYXJnZXRCeUlkKGUuaWQpO2ZvcihsZXQgZT0wO2U8dGhpcy50YXJnZXRzLmxlbmd0aDtlKyspe2NvbnN0IHQ9dGhpcy50YXJnZXRzW2VdO2lmKCF0LmlzU3RhZ2UmJih0LnNwcml0ZSYmdC5zcHJpdGUubmFtZT09PUEpKXJldHVybiB0fX1nZXRUYXJnZXRCeURyYXdhYmxlSWQoQSl7Zm9yKGxldCBlPTA7ZTx0aGlzLnRhcmdldHMubGVuZ3RoO2UrKyl7Y29uc3QgdD10aGlzLnRhcmdldHNbZV07aWYodC5kcmF3YWJsZUlEPT09QSlyZXR1cm4gdH19Y2hhbmdlQ2xvbmVDb3VudGVyKEEpe3RoaXMuX2Nsb25lQ291bnRlcis9QX1jbG9uZXNBdmFpbGFibGUoKXtyZXR1cm4gdGhpcy5fY2xvbmVDb3VudGVyPHRoaXMucnVudGltZU9wdGlvbnMubWF4Q2xvbmVzfWVtaXRQcm9qZWN0TG9hZGVkKCl7Zm9yKGNvbnN0IGUgb2YgdGhpcy50YXJnZXRzKWZvcihjb25zdCB0IGluIGUudmFyaWFibGVzKXt2YXIgQTtjb25zdCBuPWUudmFyaWFibGVzW3RdO2lmKG4udHlwZT09PXAuTElTVF9UWVBFKWZvcihjb25zdCBBIGluIG4udmFsdWUpe2NvbnN0IHQ9bi52YWx1ZVtBXTtpZih0LmN1c3RvbVR5cGUpe2NvbnN0e2Rlc2VyaWFsaXplOml9PXRoaXMuc2VyaWFsaXplcnNbdC50eXBlSWRdO24udmFsdWVbQV09aSh0LnNlcmlhbGl6ZWQsZSxuKX19aWYobnVsbCE9PShBPW4udmFsdWUpJiZ2b2lkIDAhPT1BJiZBLmN1c3RvbVR5cGUpe2NvbnN0IEE9bi52YWx1ZSx7ZGVzZXJpYWxpemU6dH09dGhpcy5zZXJpYWxpemVyc1tBLnR5cGVJZF07bi52YWx1ZT10KEEuc2VyaWFsaXplZCxlLG4pfX10aGlzLmVtaXQoJC5QUk9KRUNUX0xPQURFRCl9ZW1pdFByb2plY3RDaGFuZ2VkKCl7dGhpcy5lbWl0KCQuUFJPSkVDVF9DSEFOR0VEKX1maXJlVGFyZ2V0V2FzQ3JlYXRlZChBLGUpe3RoaXMuZW1pdCgidGFyZ2V0V2FzQ3JlYXRlZCIsQSxlKX1maXJlVGFyZ2V0V2FzUmVtb3ZlZChBKXt0aGlzLmVtaXQoInRhcmdldFdhc1JlbW92ZWQiLEEpfWdldEJyYW5jaEFuZFRhcmdldChBLGUpe2Zvcihjb25zdCB0IG9mIHRoaXMudGFyZ2V0cyl7Y29uc3Qgbj10LmJsb2Nrcy5nZXRCcmFuY2goQSxlKTtpZihuKXJldHVybltuLHRdfXJldHVybiBudWxsfWdldENhbWVyYShBKXtyZXR1cm4ib2JqZWN0IiE9dHlwZW9mIHRoaXMuY2FtZXJhU3RhdGVzW0FdJiYodGhpcy5jYW1lcmFTdGF0ZXNbQV09e3BvczpbMCwwXSxkaXI6MCxzY2FsZToxfSksdGhpcy5jYW1lcmFTdGF0ZXNbQV19dXBkYXRlQ2FtZXJhKEEsZSx0KXt2YXIgbjtlLmRpciYmKGUuZGlyPXkud3JhcENsYW1wKGUuZGlyLC0xNzksMTgwKSksIm9iamVjdCIhPXR5cGVvZiB0aGlzLmNhbWVyYVN0YXRlc1tBXSYmKHRoaXMuY2FtZXJhU3RhdGVzW0FdPXtwb3M6WzAsMF0sZGlyOjAsc2NhbGU6MX0pLHRoaXMuY2FtZXJhU3RhdGVzW0FdPWU9T2JqZWN0LmFzc2lnbih0aGlzLmNhbWVyYVN0YXRlc1tBXSxlKSwobnVsbCE9PShuPSF0KSYmdm9pZCAwIT09bj9uOmUuc2lsZW50KSYmdGhpcy5lbWl0Q2FtZXJhQ2hhbmdlZChBKX1lbWl0Q2FtZXJhQ2hhbmdlZChBKXtmb3IobGV0IGU9MDtlPHRoaXMudGFyZ2V0cy5sZW5ndGg7ZSsrKXRoaXMudGFyZ2V0c1tlXS5jYW1lcmFCb3VuZD09PUEmJnRoaXMudGFyZ2V0c1tlXS5jYW1lcmFVcGRhdGVFdmVudCgpO3RoaXMuZW1pdCgkLkNBTUVSQV9DSEFOR0VELEEpLHRoaXMucmVxdWVzdFJlZHJhdygpfWdldFRhcmdldEZvclN0YWdlKCl7aWYodGhpcy5fc3RhZ2VUYXJnZXQpcmV0dXJuIHRoaXMuX3N0YWdlVGFyZ2V0O2ZvcihsZXQgQT0wO0E8dGhpcy50YXJnZXRzLmxlbmd0aDtBKyspe2NvbnN0IGU9dGhpcy50YXJnZXRzW0FdO2lmKGUuaXNTdGFnZSlyZXR1cm4gdGhpcy5fc3RhZ2VUYXJnZXQ9ZSxlfX1nZXRFZGl0aW5nVGFyZ2V0KCl7cmV0dXJuIHRoaXMuX2VkaXRpbmdUYXJnZXR9Z2V0QWxsVmFyTmFtZXNPZlR5cGUoQSl7bGV0IGU9W107Zm9yKGNvbnN0IHQgb2YgdGhpcy50YXJnZXRzKXtjb25zdCBuPXQuZ2V0QWxsVmFyaWFibGVOYW1lc0luU2NvcGVCeVR5cGUoQSwhMCk7ZT1lLmNvbmNhdChuKX1yZXR1cm4gZX1nZXRMYWJlbEZvck9wY29kZShBKXt2YXIgZSx0LG47Y29uc3RbaSxyXT1KLnNwbGl0Rmlyc3QoQSwiXyIpO2lmKCFpfHwhcilyZXR1cm47Y29uc3Qgbz10aGlzLl9ibG9ja0luZm8uZmluZChBPT5BLmlkPT09aSk7aWYoIW8pcmV0dXJuO2NvbnN0IHM9by5ibG9ja3MuZmluZChBPT5BLmluZm8ub3Bjb2RlPT09cik7aWYoIXMpcmV0dXJuO2NvbnN0IGE9dGhpc1siZXh0XyIuY29uY2F0KGkpXTtsZXQgQj1zLmluZm8ubGFiZWxGbj9hW3MuaW5mby5sYWJlbEZuXTp2b2lkIDA7cmV0dXJue2NhdGVnb3J5Om51bGwhPT0oZT1udWxsIT09KHQ9cy5pbmZvLmNvbG9yMSkmJnZvaWQgMCE9PXQ/dDpvLmNvbG9yMSkmJnZvaWQgMCE9PWU/ZToiZXh0ZW5zaW9uIixsYWJlbDpudWxsIT09KG49cy5pbmZvLmxhYmVsKSYmdm9pZCAwIT09bj9uOiIiLmNvbmNhdChvLm5hbWUsIjogIikuY29uY2F0KHMuaW5mby50ZXh0KSxsYWJlbEZuOkJ9fWNyZWF0ZU5ld0dsb2JhbFZhcmlhYmxlKEEsZSx0KXtjb25zdCBuPSJzdHJpbmciPT10eXBlb2YgdD90OnAuU0NBTEFSX1RZUEUsaT10aGlzLmdldEFsbFZhck5hbWVzT2ZUeXBlKG4pLHI9Si51bnVzZWROYW1lKEEsaSksbz10aGlzLm5ld1ZhcmlhYmxlSW5zdGFuY2UobixlfHx6KCkscik7cmV0dXJuIHRoaXMuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKS52YXJpYWJsZXNbby5pZF09byxvfXJlcXVlc3RSZWRyYXcoKXt0aGlzLnJlZHJhd1JlcXVlc3RlZD0hMH1yZXF1ZXN0VGFyZ2V0c1VwZGF0ZShBKXtBLmlzT3JpZ2luYWwmJih0aGlzLl9yZWZyZXNoVGFyZ2V0cz0hMCl9cmVxdWVzdEJsb2Nrc1VwZGF0ZSgpe3RoaXMuZW1pdCgkLkJMT0NLU19ORUVEX1VQREFURSl9cmVxdWVzdFRvb2xib3hFeHRlbnNpb25zVXBkYXRlKCl7dGhpcy5lbWl0KCQuVE9PTEJPWF9FWFRFTlNJT05TX05FRURfVVBEQVRFKX1zdGFydCgpe3RoaXMuZnJhbWVMb29wLnJ1bm5pbmd8fCh0aGlzLmZyYW1lTG9vcC5zdGFydCgpLHRoaXMuZW1pdCgkLlJVTlRJTUVfU1RBUlRFRCkpfXN0b3AoKXt0aGlzLmZyYW1lTG9vcC5ydW5uaW5nJiYodGhpcy5mcmFtZUxvb3Auc3RvcCgpLHRoaXMuZW1pdCgkLlJVTlRJTUVfU1RPUFBFRCkpfWVuYWJsZVByb2ZpbGluZyhBKXtFLmF2YWlsYWJsZSgpJiYodGhpcy5wcm9maWxlcj1uZXcgRShBKSl9ZGlzYWJsZVByb2ZpbGluZygpe3RoaXMucHJvZmlsZXI9bnVsbH11cGRhdGVDdXJyZW50TVNlY3MoKXt0aGlzLmN1cnJlbnRNU2Vjcz1EYXRlLm5vdygpfXVwZGF0ZVByaXZhY3koKXtjb25zdCBBPXRoaXMuZW5mb3JjZVByaXZhY3kmJk9iamVjdC52YWx1ZXModGhpcy5leHRlcm5hbENvbW11bmljYXRpb25NZXRob2RzKS5zb21lKEE9PkEpO3RoaXMucmVuZGVyZXImJnRoaXMucmVuZGVyZXIuc2V0UHJpdmF0ZVNraW5BY2Nlc3MmJnRoaXMucmVuZGVyZXIuc2V0UHJpdmF0ZVNraW5BY2Nlc3MoIUEpfXNldEVuZm9yY2VQcml2YWN5KEEpe3RoaXMuZW5mb3JjZVByaXZhY3k9QSx0aGlzLnVwZGF0ZVByaXZhY3koKX1zZXRFeHRlcm5hbENvbW11bmljYXRpb25NZXRob2QoQSxlKXtpZighT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuZXh0ZXJuYWxDb21tdW5pY2F0aW9uTWV0aG9kcyxBKSl0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gbWV0aG9kOiAiLmNvbmNhdChBKSk7dGhpcy5leHRlcm5hbENvbW11bmljYXRpb25NZXRob2RzW0FdPWUsdGhpcy51cGRhdGVQcml2YWN5KCl9fUEuZXhwb3J0cz0kfSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSx0LmQoZSwiX3BhcnNlIiwoZnVuY3Rpb24oKXtyZXR1cm4gbn0pKSx0LmQoZSwicGFyc2UiLChmdW5jdGlvbigpe3JldHVybiBpfSkpLHQuZChlLCJzdHJpbmdpZnkiLChmdW5jdGlvbigpe3JldHVybiByfSkpO2NvbnN0IG49QT0+e2xldCBlPTA7Y29uc3QgdD10PT57Y29uc3R7bGluZTpuLGNvbHVtbjppfT0oKCk9PntsZXQgdD0wLG49MDtmb3IobGV0IGk9MDtpPGU7aSsrKSJcbiI9PT1BW2ldPyh0Kyssbj0wKTpuKys7cmV0dXJue2xpbmU6dCsxLGNvbHVtbjpuKzF9fSkoKTt0aHJvdyBuZXcgU3ludGF4RXJyb3IoIiIuY29uY2F0KHQsIiAoTGluZSAiKS5jb25jYXQobiwiIENvbHVtbiAiKS5jb25jYXQoaSwiKSIpKX0sbj1lPT4oZT49QS5sZW5ndGgmJnQoIlVuZXhwZWN0ZWQgZW5kIG9mIGlucHV0IiksQVtlXSksaT0oKT0+bihlKSxyPSgpPT57ZSsrfSxvPUE9PntpKCkhPT1BJiZ0KCJFeHBlY3RlZCAnIi5jb25jYXQoQSwiJyBidXQgZm91bmQgJyIpLmNvbmNhdChpKCksIiciKSkscigpfSxzPWZ1bmN0aW9uKCl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOjEsaT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MTtpZihlK2krdD5BLmxlbmd0aClyZXR1cm4iIjtpZigxPT09dClyZXR1cm4gbihlK2kpO2xldCByPSIiO2ZvcihsZXQgQT0wO0E8dDtBKyspcis9bihlK2krQSk7cmV0dXJuIHJ9LGE9KCk9Pntmb3IoOzspaWYoL1xzLy50ZXN0KGkoKSkpcigpO2Vsc2V7Y29uc3QgQT1zKDIsMCk7aWYoIi8vIj09PUEpZm9yKHIoKSxyKCk7IlxuIiE9PWkoKTspcigpO2Vsc2V7aWYoIi8qIiE9PUEpYnJlYWs7Zm9yKHIoKSxyKCk7IiovIiE9PXMoMiwwKTspcigpO3IoKSxyKCl9fX0sQj0oKT0+e2EoKTtzd2l0Y2goaSgpKXtjYXNlJyInOnJldHVybiBFKCk7Y2FzZSJ7IjpyZXR1cm4gdSgpO2Nhc2UiWyI6cmV0dXJuIFEoKTtjYXNlIjAiOmNhc2UiMSI6Y2FzZSIyIjpjYXNlIjMiOmNhc2UiNCI6Y2FzZSI1IjpjYXNlIjYiOmNhc2UiNyI6Y2FzZSI4IjpjYXNlIjkiOmNhc2UiLSI6cmV0dXJuIGcoKTtkZWZhdWx0OnJldHVybiBjKCl9fSxjPSgpPT57aWYoIm51bGwiPT09cyg0LDApKXtmb3IobGV0IEE9MDtBPDQ7QSsrKXIoKTtyZXR1cm4gbnVsbH1pZigidHJ1ZSI9PT1zKDQsMCkpe2ZvcihsZXQgQT0wO0E8NDtBKyspcigpO3JldHVybiEwfWlmKCJmYWxzZSI9PT1zKDUsMCkpe2ZvcihsZXQgQT0wO0E8NTtBKyspcigpO3JldHVybiExfWlmKCJJbmZpbml0eSI9PT1zKDgsMCkpe2ZvcihsZXQgQT0wO0E8ODtBKyspcigpO3JldHVybiAxLzB9aWYoIk5hTiI9PT1zKDMsMCkpe2ZvcihsZXQgQT0wO0E8MztBKyspcigpO3JldHVybiBOYU59dCgiVW5leHBlY3RlZCBjaGFyYWN0ZXIgJyIuY29uY2F0KGkoKSwiJyIpKX0sZz0oKT0+e2lmKCItSW5maW5pdHkiPT09cyg5LDApKXtmb3IobGV0IEE9MDtBPDk7QSsrKXIoKTtyZXR1cm4tMS8wfWxldCBBPSIiO2Zvcig7QSs9aSgpLC9bXGQuZSstXS9pLnRlc3QocygpKTspcigpO3IoKTtjb25zdCBlPStBO3JldHVybiBOdW1iZXIuaXNOYU4oZSkmJnQoIk5vdCBhIG51bWJlcjogIi5jb25jYXQoQSkpLGV9LEU9KCk9PntvKCciJyk7bGV0IEE9IiI7Zm9yKDs7KXtjb25zdCBlPWkoKTtpZignIic9PT1lKWJyZWFrO2lmKCJcXCI9PT1lKXN3aXRjaChyKCksaSgpKXtjYXNlJyInOkErPSciJzticmVhaztjYXNlIi8iOkErPSIvIjticmVhaztjYXNlIlxcIjpBKz0iXFwiO2JyZWFrO2Nhc2UiYiI6QSs9IlxiIjticmVhaztjYXNlImYiOkErPSJcZiI7YnJlYWs7Y2FzZSJuIjpBKz0iXG4iO2JyZWFrO2Nhc2UiciI6QSs9IlxyIjticmVhaztjYXNlInQiOkErPSJcdCI7YnJlYWs7Y2FzZSJ1Ijp7bGV0IGU9IiI7Zm9yKGxldCBBPTA7QTw0O0ErKyl7cigpO2NvbnN0IEE9aSgpOy9bMC05YS1mXS9pLnRlc3QoQSl8fHQoIkludmFsaWQgaGV4IGNvZGU6ICIuY29uY2F0KEEpKSxlKz1BfWNvbnN0IG49TnVtYmVyLnBhcnNlSW50KGUsMTYpO0ErPVN0cmluZy5mcm9tQ2hhckNvZGUobik7YnJlYWt9ZGVmYXVsdDp0KCJJbnZhbGlkIGVzY2FwZSBjb2RlOiBcXCIuY29uY2F0KGkoKSkpfWVsc2UgQSs9ZTtyKCl9cmV0dXJuIG8oJyInKSxBfSxRPSgpPT57bygiWyIpLGEoKTtjb25zdCBBPVtdO2Zvcig7YSgpLCJdIiE9PWkoKTspe2NvbnN0IGU9QigpO2lmKEEucHVzaChlKSxhKCksIiwiIT09aSgpKWJyZWFrO3IoKX1yZXR1cm4gbygiXSIpLEF9LHU9KCk9PntvKCJ7IiksYSgpO2NvbnN0IEE9e307Zm9yKDthKCksIn0iIT09aSgpOyl7Y29uc3QgZT1FKCk7YSgpLG8oIjoiKTtjb25zdCB0PUIoKTtpZihBW2VdPXQsYSgpLCIsIiE9PWkoKSlicmVhaztyKCl9cmV0dXJuIG8oIn0iKSxBfTtyZXR1cm4gQigpfSxpPUE9Pnt0cnl7cmV0dXJuIEpTT04ucGFyc2UoQSl9Y2F0Y2goZSl7dHJ5e3JldHVybiBuKEEpfWNhdGNoKEEpe3Rocm93IGV9fX0scj1BPT57aWYoInN0cmluZyI9PXR5cGVvZiBBKXJldHVybiBKU09OLnN0cmluZ2lmeShBKTtpZigibnVtYmVyIj09dHlwZW9mIEF8fCJib29sZWFuIj09dHlwZW9mIEEpcmV0dXJuIEEudG9TdHJpbmcoKTtpZihudWxsPT1BfHwic3ltYm9sIj09dHlwZW9mIEEpcmV0dXJuIm51bGwiO2lmKEFycmF5LmlzQXJyYXkoQSkpcmV0dXJuIlsiLmNvbmNhdChBLm1hcChBPT5yKEEpKS5qb2luKCIsIiksIl0iKTtpZigib2JqZWN0Ij09dHlwZW9mIEEpe2xldCBlPSJ7Iix0PSEwO2NvbnN0IG49T2JqZWN0LmtleXMoQSk7Zm9yKGxldCBpPTA7aTxuLmxlbmd0aDtpKyspe2NvbnN0IG89bltpXSxzPUFbb107dm9pZCAwIT09cyYmKHR8fChlKz0iLCIpLGUrPSIiLmNvbmNhdChKU09OLnN0cmluZ2lmeShvKSwiOiIpLmNvbmNhdChyKHMpKSx0PSExKX1yZXR1cm4gZSs9In0iLGV9aWYoImJpZ2ludCI9PXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbiBub3Qgc3RyaW5naWZ5IGJpZ2ludCIpO3Rocm93IG5ldyBUeXBlRXJyb3IoIkNhbiBub3Qgc3RyaW5naWZ5OiAiLmNvbmNhdChBKSl9fSxmdW5jdGlvbihBLGUpe2NvbnN0IHQ9ZnVuY3Rpb24oQSl7aWYoIiN0ZXh0Ij09PUEudGFnTmFtZSlyZXR1cm4gQS50ZXh0Q29udGVudDtjb25zdCBlPShBLGUpPT57Zm9yKGxldCBuPTA7bjxlLmNoaWxkcmVuLmxlbmd0aDtuKyspQS5jaGlsZHJlbi5wdXNoKHQoZS5jaGlsZHJlbltuXSkpO3JldHVybiBBLmNoaWxkcmVuWzBdfTtsZXQgbj1PYmplY3QuY3JlYXRlKG51bGwpO2lmKG4udGFnTmFtZT1BLnRhZ05hbWUsbi5jaGlsZHJlbj1bXSwhQS50YWdOYW1lKXJldHVybiBjb25zb2xlLndhcm4oImludmFsaWQgZG9tOyBza2lwaW5nIHRvIHJlYWRpbmcgY2hpbGRyZW4iKSxuPWUobixBKSxuO2ZvcihsZXQgZT0wO2U8QS5hdHRyaWJ1dGVzLmxlbmd0aDtlKyspe2NvbnN0IHQ9QS5hdHRyaWJ1dGVzW2VdLGk9dC5uYW1lOyJ4bWxucyIhPT1pJiYobltpXT10LnZhbHVlLCJibG9ja2luZm8iPT09aSYmKG4uYmxvY2tJbmZvPUpTT04ucGFyc2Uobi5ibG9ja2luZm8pLGRlbGV0ZSBuLmJsb2NraW5mbykpfXJldHVybiBlKG4sQSksbn07QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2xldCBlO2lmKCJvYmplY3QiPT10eXBlb2YgQSllPUE7ZWxzZXtlPShuZXcgRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoQSwiYXBwbGljYXRpb24veG1sIiksIiNkb2N1bWVudCI9PT1lLm5vZGVOYW1lJiYoZT1lLmNoaWxkcmVuWzBdKX1yZXR1cm4gdChlKX19LGZ1bmN0aW9uKEEsZSx0KXtlLmdldENhY2hlZD1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiYmxvY2tzLmpzIGhhcyBub3QgaW5pdGlhbGl6ZWQgQmxvY2tzRXhlY3V0ZUNhY2hlIil9LHQoMjIpfSxmdW5jdGlvbihBLGUsdCl7ZS5nZXRTY3JpcHRzPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJibG9ja3MuanMgaGFzIG5vdCBpbml0aWFsaXplZCBCbG9ja3NSdW50aW1lQ2FjaGUiKX0sZS5fUnVudGltZVNjcmlwdENhY2hlPWNsYXNze2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5jb250YWluZXI9QSx0aGlzLmJsb2NrSWQ9ZTtjb25zdCB0PUEuZ2V0QmxvY2soZSksbj1BLmdldEZpZWxkcyh0KTtpZih0aGlzLmZpZWxkc09mSW5wdXRzPU9iamVjdC5hc3NpZ24oe30sbiksMD09PU9iamVjdC5rZXlzKG4pLmxlbmd0aCl7Y29uc3QgZT1BLmdldElucHV0cyh0KTtmb3IoY29uc3QgdCBpbiBlKXtpZighZS5oYXNPd25Qcm9wZXJ0eSh0KSljb250aW51ZTtjb25zdCBuPWVbdF0uYmxvY2ssaT1BLmdldEJsb2NrKG4pLHI9QS5nZXRGaWVsZHMoaSk7T2JqZWN0LmFzc2lnbih0aGlzLmZpZWxkc09mSW5wdXRzLHIpfX1mb3IoY29uc3QgQSBpbiB0aGlzLmZpZWxkc09mSW5wdXRzKXtjb25zdCBlPXRoaXMuZmllbGRzT2ZJbnB1dHNbQV09T2JqZWN0LmFzc2lnbih7fSx0aGlzLmZpZWxkc09mSW5wdXRzW0FdKTtlLnZhbHVlLnRvVXBwZXJDYXNlJiYoZS52YWx1ZT1lLnZhbHVlLnRvVXBwZXJDYXNlKCkpfX19LHQoMjIpfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDE4KSxpPXQoMzYpLHI9dCg2MSksbz10KDQzKTtsZXQgcz0tMSxhPS0xLEI9LTE7Y2xhc3MgY3tjb25zdHJ1Y3RvcihBKXt0aGlzLnRpbWVyPW5ldyBuLHRoaXMucnVudGltZT1BLHRoaXMuYWN0aXZlVGhyZWFkPW51bGx9c3RhdGljIGdldCBXQVJQX1RJTUUoKXtyZXR1cm4gNTAwfXN0ZXBUaHJlYWRzKCl7Y29uc3QgQT0uNzUqdGhpcy5ydW50aW1lLmN1cnJlbnRTdGVwVGltZTt0aGlzLnJ1bnRpbWUudXBkYXRlQ3VycmVudE1TZWNzKCksdGhpcy50aW1lci5zdGFydCgpO2xldCBlPTEvMCx0PSExO2NvbnN0IG49W107Zm9yKDt0aGlzLnJ1bnRpbWUudGhyZWFkcy5sZW5ndGg+MCYmZT4wJiZ0aGlzLnRpbWVyLnRpbWVFbGFwc2VkKCk8QSYmKHRoaXMucnVudGltZS50dXJib01vZGV8fCF0aGlzLnJ1bnRpbWUucmVkcmF3UmVxdWVzdGVkKTspe251bGwhPT10aGlzLnJ1bnRpbWUucHJvZmlsZXImJigtMT09PWEmJihhPXRoaXMucnVudGltZS5wcm9maWxlci5pZEJ5TmFtZSgiU2VxdWVuY2VyLnN0ZXBUaHJlYWRzI2lubmVyIikpLHRoaXMucnVudGltZS5wcm9maWxlci5zdGFydChhKSksZT0wO2xldCBBPSExO2NvbnN0IHI9dGhpcy5ydW50aW1lLnRocmVhZHM7Zm9yKGxldCBuPTA7bjxyLmxlbmd0aDtuKyspe2NvbnN0IG89dGhpcy5hY3RpdmVUaHJlYWQ9cltuXTswIT09by5zdGFjay5sZW5ndGgmJm8uc3RhdHVzIT09aS5TVEFUVVNfRE9ORT9vLnN0YXR1cyE9PWkuU1RBVFVTX1BBVVNFRD8oby5zdGF0dXMhPT1pLlNUQVRVU19ZSUVMRF9USUNLfHx0fHwoby5zdGF0dXM9aS5TVEFUVVNfUlVOTklORyksby5zdGF0dXMhPT1pLlNUQVRVU19SVU5OSU5HJiZvLnN0YXR1cyE9PWkuU1RBVFVTX1lJRUxEfHwobnVsbCE9PXRoaXMucnVudGltZS5wcm9maWxlciYmKC0xPT09cyYmKHM9dGhpcy5ydW50aW1lLnByb2ZpbGVyLmlkQnlOYW1lKCJTZXF1ZW5jZXIuc3RlcFRocmVhZCIpKSx0aGlzLnJ1bnRpbWUucHJvZmlsZXIuaW5jcmVtZW50KHMpKSx0aGlzLnN0ZXBUaHJlYWQobyksby53YXJwVGltZXI9bnVsbCksby5zdGF0dXM9PT1pLlNUQVRVU19SVU5OSU5HJiZlKyssMCE9PW8uc3RhY2subGVuZ3RoJiZvLnN0YXR1cyE9PWkuU1RBVFVTX0RPTkV8fChBPSEwKSk6by50aW1lciYmIW8udGltZXIuX3BhdXNlZFRpbWUmJm8udGltZXIucGF1c2UoKTpBPSEwfWlmKHQ9ITAsbnVsbCE9PXRoaXMucnVudGltZS5wcm9maWxlciYmdGhpcy5ydW50aW1lLnByb2ZpbGVyLnN0b3AoKSxBKXtsZXQgQT0wO2ZvcihsZXQgZT0wO2U8dGhpcy5ydW50aW1lLnRocmVhZHMubGVuZ3RoO2UrKyl7Y29uc3QgdD10aGlzLnJ1bnRpbWUudGhyZWFkc1tlXTswIT09dC5zdGFjay5sZW5ndGgmJnQuc3RhdHVzIT09aS5TVEFUVVNfRE9ORT8odGhpcy5ydW50aW1lLnRocmVhZHNbQV09dCxBKyspOih0aGlzLnJ1bnRpbWUudGhyZWFkTWFwLmRlbGV0ZSh0LmdldElkKCkpLG4ucHVzaCh0KSl9dGhpcy5ydW50aW1lLnRocmVhZHMubGVuZ3RoPUF9fXJldHVybiB0aGlzLmFjdGl2ZVRocmVhZD1udWxsLG59c3RlcFRocmVhZChBKXtpZihBLmlzQ29tcGlsZWQpcmV0dXJuIHZvaWQgbyhBKTtsZXQgZT1BLnBlZWtTdGFjaygpO2lmKCFlJiYoQS5wb3BTdGFjaygpLDA9PT1BLnN0YWNrLmxlbmd0aCkpcmV0dXJuIEEuc3RhdHVzPWkuU1RBVFVTX0RPTkUsdm9pZCB0aGlzLnJ1bnRpbWUuZW1pdCgiVEhSRUFEX0ZJTklTSEVEIixBKTtmb3IoO2U9QS5wZWVrU3RhY2soKTspe2xldCB0PUEucGVla1N0YWNrRnJhbWUoKS53YXJwTW9kZTtpZih0JiYhQS53YXJwVGltZXImJihBLndhcnBUaW1lcj1uZXcgbixBLndhcnBUaW1lci5zdGFydCgpKSxudWxsIT09dGhpcy5ydW50aW1lLnByb2ZpbGVyJiYoLTE9PT1CJiYoQj10aGlzLnJ1bnRpbWUucHJvZmlsZXIuaWRCeU5hbWUoImV4ZWN1dGUiKSksdGhpcy5ydW50aW1lLnByb2ZpbGVyLmluY3JlbWVudChCKSksbnVsbD09PUEudGFyZ2V0P3RoaXMucmV0aXJlVGhyZWFkKEEpOnIodGhpcyxBKSxBLmJsb2NrR2xvd0luRnJhbWU9ZSxBLnN0YXR1cz09PWkuU1RBVFVTX1lJRUxEKXtpZihBLnN0YXR1cz1pLlNUQVRVU19SVU5OSU5HLHQmJkEud2FycFRpbWVyLnRpbWVFbGFwc2VkKCk8PWMuV0FSUF9USU1FKWNvbnRpbnVlO3JldHVybn1pZihBLnN0YXR1cz09PWkuU1RBVFVTX1BST01JU0VfV0FJVClyZXR1cm47aWYoQS5zdGF0dXM9PT1pLlNUQVRVU19ZSUVMRF9USUNLKXJldHVybjtpZihBLnN0YXR1cz09PWkuU1RBVFVTX0RPTkUpcmV0dXJuO2ZvcihBLnBlZWtTdGFjaygpPT09ZSYmQS5nb1RvTmV4dEJsb2NrKCk7IUEucGVla1N0YWNrKCk7KXtpZihBLnBvcFN0YWNrKCksMD09PUEuc3RhY2subGVuZ3RoKXJldHVybiBBLnN0YXR1cz1pLlNUQVRVU19ET05FLHZvaWQgdGhpcy5ydW50aW1lLmVtaXQoIlRIUkVBRF9GSU5JU0hFRCIsQSk7Y29uc3QgZT1BLnBlZWtTdGFja0ZyYW1lKCk7aWYodD1lLndhcnBNb2RlLGUuaXNMb29wKXtpZighdHx8QS53YXJwVGltZXIudGltZUVsYXBzZWQoKT5jLldBUlBfVElNRSlyZXR1cm59ZWxzZXtpZihlLndhaXRpbmdSZXBvcnRlcilyZXR1cm47QS5nb1RvTmV4dEJsb2NrKCl9fX19c3RlcFRvQnJhbmNoKEEsZSx0KXtlfHwoZT0xKTtjb25zdCBuPUEucGVla1N0YWNrKCksaT1BLnRhcmdldC5ibG9ja3MuZ2V0QnJhbmNoKG4sZSk7QS5wZWVrU3RhY2tGcmFtZSgpLmlzTG9vcD10LGk/QS5wdXNoU3RhY2soaSk6QS5wdXNoU3RhY2sobnVsbCl9c3RlcFRvUHJvY2VkdXJlKEEsZSl7Y29uc3QgdD1BLnRhcmdldC5ibG9ja3MuZ2V0UHJvY2VkdXJlRGVmaW5pdGlvbihlKTtpZighdClyZXR1cm47Y29uc3Qgbj1BLmlzUmVjdXJzaXZlQ2FsbChlKTtpZihBLnB1c2hTdGFjayh0KSxBLnBlZWtTdGFja0ZyYW1lKCkud2FycE1vZGUmJkEud2FycFRpbWVyLnRpbWVFbGFwc2VkKCk+Yy5XQVJQX1RJTUUpQS5zdGF0dXM9aS5TVEFUVVNfWUlFTEQ7ZWxzZXtjb25zdCBlPUEudGFyZ2V0LmJsb2Nrcy5nZXRCbG9jayh0KSxyPUEudGFyZ2V0LmJsb2Nrcy5nZXRCbG9jayhlLmlucHV0cy5jdXN0b21fYmxvY2suYmxvY2spO2xldCBvPSExO2lmKHImJnIubXV0YXRpb24pe2NvbnN0IEE9ci5tdXRhdGlvbi53YXJwOyJib29sZWFuIj09dHlwZW9mIEE/bz1BOiJzdHJpbmciPT10eXBlb2YgQSYmKG89SlNPTi5wYXJzZShBKSl9bz9BLnBlZWtTdGFja0ZyYW1lKCkud2FycE1vZGU9ITA6biYmKEEuc3RhdHVzPWkuU1RBVFVTX1lJRUxEKX19cmV0aXJlVGhyZWFkKEEpe0Euc3RhY2s9W10sQS5zdGFja0ZyYW1lPVtdLEEucmVxdWVzdFNjcmlwdEdsb3dJbkZyYW1lPSExLEEuc3RhdHVzPWkuU1RBVFVTX0RPTkUsdGhpcy5ydW50aW1lLmVtaXQoIlRIUkVBRF9GSU5JU0hFRCIsQSksQS5pc0NvbXBpbGVkJiYoQS5wcm9jZWR1cmVzPW51bGwsQS5nZW5lcmF0b3I9bnVsbCl9fUEuZXhwb3J0cz1jfSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz17SW50ZXJtZWRpYXRlU2NyaXB0OmNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy50b3BCbG9ja0lkPW51bGwsdGhpcy5zdGFjaz1udWxsLHRoaXMuaXNQcm9jZWR1cmU9ITEsdGhpcy5wcm9jZWR1cmVDb2RlPSIiLHRoaXMuYXJndW1lbnRzPVtdLHRoaXMuaXNXYXJwPSExLHRoaXMuaXNPcHRpbWl6ZWQ9ITEsdGhpcy5vcHRpbWl6YXRpb25VdGlsPXt9LHRoaXMueWllbGRzPSEwLHRoaXMud2FycFRpbWVyPSExLHRoaXMuZGVwZW5kZWRQcm9jZWR1cmVzPVtdLHRoaXMuY2FjaGVkQ29tcGlsZVJlc3VsdD1udWxsLHRoaXMuZXhlY3V0YWJsZUhhdD0hMX19LEludGVybWVkaWF0ZVJlcHJlc2VudGF0aW9uOmNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5lbnRyeT1udWxsLHRoaXMucHJvY2VkdXJlcz17fX19fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxNik7Y2xhc3MgaXtjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLnByb3ZpZGVyPW51bGwsdGhpcy5fc2tpbklkPS0xLHRoaXMuX2RyYXdhYmxlPS0xLHRoaXMuX2dob3N0PTAsdGhpcy5fZm9yY2VUcmFuc3BhcmVudFByZXZpZXc9ITF9c3RhdGljIGdldCBGT1JNQVRfSU1BR0VfREFUQSgpe3JldHVybiJpbWFnZS1kYXRhIn1zdGF0aWMgZ2V0IEZPUk1BVF9DQU5WQVMoKXtyZXR1cm4iY2FudmFzIn1zdGF0aWMgZ2V0IERJTUVOU0lPTlMoKXtyZXR1cm5bNDgwLDM2MF19c3RhdGljIGdldCBPUkRFUigpe3JldHVybiAxfXNldFByb3ZpZGVyKEEpe3RoaXMucHJvdmlkZXI9QX1lbmFibGVWaWRlbygpe3JldHVybiB0aGlzLnByb3ZpZGVyP3RoaXMucHJvdmlkZXIuZW5hYmxlVmlkZW8oKS50aGVuKCgpPT50aGlzLl9zZXR1cFByZXZpZXcoKSk6bnVsbH1kaXNhYmxlVmlkZW8oKXtpZih0aGlzLl9kaXNhYmxlUHJldmlldygpLCF0aGlzLnByb3ZpZGVyKXJldHVybiBudWxsO3RoaXMucHJvdmlkZXIuZGlzYWJsZVZpZGVvKCl9Z2V0RnJhbWUoQSl7bGV0e2RpbWVuc2lvbnM6ZT1pLkRJTUVOU0lPTlMsbWlycm9yOnQ9dGhpcy5taXJyb3IsZm9ybWF0Om49aS5GT1JNQVRfSU1BR0VfREFUQSxjYWNoZVRpbWVvdXQ6cj10aGlzLl9mcmFtZUNhY2hlVGltZW91dH09QTtyZXR1cm4gdGhpcy5wcm92aWRlcj90aGlzLnByb3ZpZGVyLmdldEZyYW1lKHtkaW1lbnNpb25zOmUsbWlycm9yOnQsZm9ybWF0Om4sY2FjaGVUaW1lb3V0OnJ9KTpudWxsfXNldFByZXZpZXdHaG9zdChBKXt0aGlzLl9naG9zdD1BLC0xIT09dGhpcy5fZHJhd2FibGUmJnRoaXMucnVudGltZS5yZW5kZXJlci51cGRhdGVEcmF3YWJsZUVmZmVjdCh0aGlzLl9kcmF3YWJsZSwiZ2hvc3QiLHRoaXMuX2ZvcmNlVHJhbnNwYXJlbnRQcmV2aWV3PzEwMDpBKX1fZGlzYWJsZVByZXZpZXcoKXstMSE9PXRoaXMuX3NraW5JZCYmKHRoaXMucnVudGltZS5yZW5kZXJlci51cGRhdGVCaXRtYXBTa2luKHRoaXMuX3NraW5JZCxuZXcgSW1hZ2VEYXRhKC4uLmkuRElNRU5TSU9OUyksMSksdGhpcy5ydW50aW1lLnJlbmRlcmVyLnVwZGF0ZURyYXdhYmxlVmlzaWJsZSh0aGlzLl9kcmF3YWJsZSwhMSkpLHRoaXMuX3JlbmRlclByZXZpZXdGcmFtZT1udWxsfV9zZXR1cFByZXZpZXcoKXtjb25zdHtyZW5kZXJlcjpBfT10aGlzLnJ1bnRpbWU7QSYmKC0xPT09dGhpcy5fc2tpbklkJiYtMT09PXRoaXMuX2RyYXdhYmxlJiYodGhpcy5fc2tpbklkPUEuY3JlYXRlQml0bWFwU2tpbihuZXcgSW1hZ2VEYXRhKC4uLmkuRElNRU5TSU9OUyksMSksdGhpcy5fZHJhd2FibGU9QS5jcmVhdGVEcmF3YWJsZShuLlZJREVPX0xBWUVSKSxBLnVwZGF0ZURyYXdhYmxlU2tpbklkKHRoaXMuX2RyYXdhYmxlLHRoaXMuX3NraW5JZCksQS5tYXJrU2tpbkFzUHJpdmF0ZSYmQS5tYXJrU2tpbkFzUHJpdmF0ZSh0aGlzLl9za2luSWQpKSx0aGlzLl9yZW5kZXJQcmV2aWV3RnJhbWV8fChBLnVwZGF0ZURyYXdhYmxlRWZmZWN0KHRoaXMuX2RyYXdhYmxlLCJnaG9zdCIsdGhpcy5fZm9yY2VUcmFuc3BhcmVudFByZXZpZXc/MTAwOnRoaXMuX2dob3N0KSxBLnVwZGF0ZURyYXdhYmxlVmlzaWJsZSh0aGlzLl9kcmF3YWJsZSwhMCksdGhpcy5fcmVuZGVyUHJldmlld0ZyYW1lPSgpPT57aWYoY2xlYXJUaW1lb3V0KHRoaXMuX3JlbmRlclByZXZpZXdUaW1lb3V0KSwhdGhpcy5fcmVuZGVyUHJldmlld0ZyYW1lKXJldHVybjt0aGlzLl9yZW5kZXJQcmV2aWV3VGltZW91dD1zZXRUaW1lb3V0KHRoaXMuX3JlbmRlclByZXZpZXdGcmFtZSx0aGlzLnJ1bnRpbWUuY3VycmVudFN0ZXBUaW1lKTtjb25zdCBlPXRoaXMuZ2V0RnJhbWUoe2Zvcm1hdDppLkZPUk1BVF9JTUFHRV9EQVRBLGNhY2hlVGltZW91dDp0aGlzLnJ1bnRpbWUuY3VycmVudFN0ZXBUaW1lfSk7ZT8oQS51cGRhdGVCaXRtYXBTa2luKHRoaXMuX3NraW5JZCxlLDEpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCkpOkEudXBkYXRlQml0bWFwU2tpbih0aGlzLl9za2luSWQsbmV3IEltYWdlRGF0YSguLi5pLkRJTUVOU0lPTlMpLDEpfSx0aGlzLl9yZW5kZXJQcmV2aWV3RnJhbWUoKSkpfWdldCB2aWRlb1JlYWR5KCl7cmV0dXJuISF0aGlzLnByb3ZpZGVyJiZ0aGlzLnByb3ZpZGVyLnZpZGVvUmVhZHl9cG9zdERhdGEoQSl7bGV0e2ZvcmNlVHJhbnNwYXJlbnRQcmV2aWV3OmV9PUE7dGhpcy5fZm9yY2VUcmFuc3BhcmVudFByZXZpZXc9ZSx0aGlzLnNldFByZXZpZXdHaG9zdCh0aGlzLl9naG9zdCl9fUEuZXhwb3J0cz1pfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDQpO0EuZXhwb3J0cz1BPT57Y29uc3QgZT1uLm5hbWVzcGFjZSgpLHQ9KEEsdCk9PntpZihBJiYib2JqZWN0Ij09dHlwZW9mIEEpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiBBKXRocm93IG5ldyBFcnJvcigidW5zdXBwb3J0ZWQgZGF0YSB0eXBlIGluIHRyYW5zbGF0ZSgpIik7QT17ZGVmYXVsdDpBfX1yZXR1cm4gZShBLHQpfSxpPUE9PiJfIi5jb25jYXQoQSkscj0oKT0+QT9BLmdldExvY2FsZSgpOiJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yP25hdmlnYXRvci5sYW5ndWFnZToiZW4iO2xldCBvPXt9O3JldHVybiB0LnNldHVwPUE9PntBJiYobz1BKSxlLnNldHVwKHtsb2NhbGU6cigpLG1pc3NpbmdUcmFuc2xhdGlvbjoiaWdub3JlIixnZW5lcmF0ZUlkOmksdHJhbnNsYXRpb25zOm99KX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsImxhbmd1YWdlIix7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsZ2V0OigpPT5yKCl9KSx0LnNldHVwKHt9KSxBJiZBLm9uKCJMT0NBTEVfQ0hBTkdFRCIsKCk9Pnt0LnNldHVwKG51bGwpfSksdH19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPXtnZW5lcmF0ZUV4dGVuc2lvbklkOkE9Pntjb25zdCBlPUEucmVwbGFjZSgvW15hLXowLTldL2dpLCIiKS50b0xvd2VyQ2FzZSgpO3JldHVybiJzYngiLmNvbmNhdChlKX0sYXJndW1lbnRJbmRleFRvSWQ6QT0+QS50b1N0cmluZygpfX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj13aW5kb3cuVVJMfHx3aW5kb3cud2Via2l0VVJMO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3RyeXt0cnl7dmFyIHQ7dHJ5eyh0PW5ldyh3aW5kb3cuQmxvYkJ1aWxkZXJ8fHdpbmRvdy5XZWJLaXRCbG9iQnVpbGRlcnx8d2luZG93Lk1vekJsb2JCdWlsZGVyfHx3aW5kb3cuTVNCbG9iQnVpbGRlcikpLmFwcGVuZChBKSx0PXQuZ2V0QmxvYigpfWNhdGNoKGUpe3Q9bmV3IEJsb2IoW0FdKX1yZXR1cm4gbmV3IFdvcmtlcihuLmNyZWF0ZU9iamVjdFVSTCh0KSl9Y2F0Y2goZSl7cmV0dXJuIG5ldyBXb3JrZXIoImRhdGE6YXBwbGljYXRpb24vamF2YXNjcmlwdCwiK2VuY29kZVVSSUNvbXBvbmVudChBKSl9fWNhdGNoKEEpe2lmKCFlKXRocm93IEVycm9yKCJJbmxpbmUgd29ya2VyIGlzIG5vdCBzdXBwb3J0ZWQiKTtyZXR1cm4gbmV3IFdvcmtlcihlKX19fSxmdW5jdGlvbihBLGUpe2NsYXNzIHR7c3RhdGljIF9tZXJnZVZhclJlZk9iamVjdHMoQSxlKXtmb3IoY29uc3QgdCBpbiBlKUFbdF0/QVt0XT1BW3RdLmNvbmNhdChlW3RdKTpBW3RdPWVbdF07cmV0dXJuIEF9c3RhdGljIGdldEFsbFZhclJlZnNGb3JUYXJnZXRzKEEsZSl7cmV0dXJuIEEubWFwKEE9PkEuYmxvY2tzLmdldEFsbFZhcmlhYmxlQW5kTGlzdFJlZmVyZW5jZXMobnVsbCxlKSkucmVkdWNlKHQuX21lcmdlVmFyUmVmT2JqZWN0cyx7fSl9c3RhdGljIHVwZGF0ZVZhcmlhYmxlSWRlbnRpZmllcnMoQSxlLHQpe0EubWFwKEE9PihBLnJlZmVyZW5jaW5nRmllbGQuaWQ9ZSx0JiYoQS5yZWZlcmVuY2luZ0ZpZWxkLnZhbHVlPXQpLEEpKX19QS5leHBvcnRzPXR9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNjkpLGk9dCg3MCkscj10KDEwNCksbz10KDEwNSkscz10KDQxNiksYT10KDQyMCksQj0oQSxlKT0+e2NvbnN0IHQ9W10sbj1BPT57QS5sb2NhbE5hbWUhPT1lJiZ2b2lkIDAhPT1lfHwhQS5nZXRBdHRyaWJ1dGV8fHQucHVzaChBKTtmb3IobGV0IGU9MDtlPEEuY2hpbGROb2Rlcy5sZW5ndGg7ZSsrKW4oQS5jaGlsZE5vZGVzW2VdKX07cmV0dXJuIG4oQSksdH0sYz1BPT57Y29uc3QgZT1hKCksdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksaT1BLm91dGVySFRNTCxyPW4uc2FuaXRpemUoaSx7VVNFX1BST0ZJTEVTOntzdmc6ITB9LEZPUkJJRF9UQUdTOlsiYSIsImF1ZGlvIiwiY2FudmFzIiwidmlkZW8iXSxBRERfREFUQV9VUklfVEFHUzpbImltYWdlIl19KTtsZXQgbyxzO3RyeXt0LmlubmVySFRNTD1yLGUuYXBwZW5kQ2hpbGQodCksbz10LmNoaWxkcmVuWzBdLmdldEJCb3goKX1maW5hbGx5e2UucmVtb3ZlQ2hpbGQodCl9cz0wPT09by53aWR0aHx8MD09PW8uaGVpZ2h0PzA6KEE9PntsZXQgZT0wO2NvbnN0IHQ9QT0+e0EuZ2V0QXR0cmlidXRlJiYoQS5nZXRBdHRyaWJ1dGUoInN0cm9rZSIpJiYoZT1NYXRoLm1heChlLDEpKSxBLmdldEF0dHJpYnV0ZSgic3Ryb2tlLXdpZHRoIikmJihlPU1hdGgubWF4KGUsTnVtYmVyKEEuZ2V0QXR0cmlidXRlKCJzdHJva2Utd2lkdGgiKSl8fDApKSk7Zm9yKGxldCBlPTA7ZTxBLmNoaWxkTm9kZXMubGVuZ3RoO2UrKyl0KEEuY2hpbGROb2Rlc1tlXSl9O3JldHVybiB0KEEpLGV9KShBKS8yO2NvbnN0IEI9by53aWR0aCsyKnMsYz1vLmhlaWdodCsyKnMsZz1vLngtcyxFPW8ueS1zO0Euc2V0QXR0cmlidXRlKCJ3aWR0aCIsQiksQS5zZXRBdHRyaWJ1dGUoImhlaWdodCIsYyksQS5zZXRBdHRyaWJ1dGUoInZpZXdCb3giLCIiLmNvbmNhdChnLCIgIikuY29uY2F0KEUsIiAiKS5jb25jYXQoQiwiICIpLmNvbmNhdChjKSl9LGc9KEEsZSk9PntlJiYoQT0+e2NvbnN0IGU9QihBLCJsaW5lYXJHcmFkaWVudCIpO2Zvcihjb25zdCBBIG9mIGUpQS5nZXRBdHRyaWJ1dGUoIngyIil8fEEuc2V0QXR0cmlidXRlKCJ4MiIsIjAiKX0pKEEpLHMoQSx3aW5kb3cpLChBPT57Y29uc3QgZT1CKEEsImltYWdlIiksdD0iaW1hZ2UtcmVuZGVyaW5nOiBvcHRpbWl6ZXNwZWVkOyBpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDsiO2Zvcihjb25zdCBBIG9mIGUpQS5nZXRBdHRyaWJ1dGUoInN0eWxlIik/QS5zZXRBdHRyaWJ1dGUoInN0eWxlIiwiIi5jb25jYXQodCwiICIpLmNvbmNhdChBLmdldEF0dHJpYnV0ZSgic3R5bGUiKSkpOkEuc2V0QXR0cmlidXRlKCJzdHlsZSIsdCl9KShBKSxlPygoQT0+e2NvbnN0IGU9W10sdD1BPT57InRleHQiPT09QS5sb2NhbE5hbWUmJmUucHVzaChBKTtmb3IobGV0IGU9MDtlPEEuY2hpbGROb2Rlcy5sZW5ndGg7ZSsrKXQoQS5jaGlsZE5vZGVzW2VdKX07dChBKSxyKEEpO2Zvcihjb25zdCB0IG9mIGUpe3QucmVtb3ZlQXR0cmlidXRlKCJ4IiksdC5yZW1vdmVBdHRyaWJ1dGUoInkiKSx0LnNldEF0dHJpYnV0ZSgiYWxpZ25tZW50LWJhc2VsaW5lIiwidGV4dC1iZWZvcmUtZWRnZSIpLHQuc2V0QXR0cmlidXRlKCJ4bWw6c3BhY2UiLCJwcmVzZXJ2ZSIpLHQuZ2V0QXR0cmlidXRlKCJmb250LXNpemUiKXx8dC5zZXRBdHRyaWJ1dGUoImZvbnQtc2l6ZSIsIjE4Iik7bGV0IGU9dC50ZXh0Q29udGVudDtjb25zdCBuPXBhcnNlRmxvYXQodC5nZXRBdHRyaWJ1dGUoImZvbnQtc2l6ZSIpKSxyPTI7bGV0IG89MCxzPTEuMjtpZigiSGFuZHdyaXRpbmciPT09dC5nZXRBdHRyaWJ1dGUoImZvbnQtZmFtaWx5Iik/KHM9MixvPS0xMSpuLzIyKToiU2NyYXRjaCI9PT10LmdldEF0dHJpYnV0ZSgiZm9udC1mYW1pbHkiKT8ocz0uODksbz0tMypuLzIyKToiQ3VybHkiPT09dC5nZXRBdHRyaWJ1dGUoImZvbnQtZmFtaWx5Iik/KHM9MS4zOCxvPS02Km4vMjIpOiJNYXJrZXIiPT09dC5nZXRBdHRyaWJ1dGUoImZvbnQtZmFtaWx5Iik/KHM9MS40NSxvPS02Km4vMjIpOiJTYW5zIFNlcmlmIj09PXQuZ2V0QXR0cmlidXRlKCJmb250LWZhbWlseSIpPyhzPTEuMTMsbz0tMypuLzIyKToiU2VyaWYiPT09dC5nZXRBdHRyaWJ1dGUoImZvbnQtZmFtaWx5IikmJihzPTEuMjUsbz0tNCpuLzIyKSwwPT09dC50cmFuc2Zvcm0uYmFzZVZhbC5udW1iZXJPZkl0ZW1zKXtjb25zdCBlPUEuY3JlYXRlU1ZHVHJhbnNmb3JtKCk7dC50cmFuc2Zvcm0uYmFzZVZhbC5hcHBlbmRJdGVtKGUpfWNvbnN0IGE9dC50cmFuc2Zvcm0uYmFzZVZhbC5nZXRJdGVtKDApLm1hdHJpeDtpZihhLmUrPWEuYSpyK2EuYypvLGEuZis9YS5iKnIrYS5kKm8sZSYmMD09PXQuY2hpbGRFbGVtZW50Q291bnQpe3QudGV4dENvbnRlbnQ9IiI7Y29uc3QgQT1lLnNwbGl0KCJcbiIpO2U9IiI7Zm9yKGNvbnN0IGUgb2YgQSl7Y29uc3QgQT1pLmNyZWF0ZSgidHNwYW4iKTtBLnNldEF0dHJpYnV0ZSgieCIsIjAiKSxBLnNldEF0dHJpYnV0ZSgic3R5bGUiLCJ3aGl0ZS1zcGFjZTogcHJlIiksQS5zZXRBdHRyaWJ1dGUoImR5IiwiIi5jb25jYXQocywiZW0iKSksQS50ZXh0Q29udGVudD1lfHwiICIsdC5hcHBlbmRDaGlsZChBKX19fX0pKEEpLGMoQSksKEE9Pntjb25zdCBlPUIoQSk7Zm9yKGNvbnN0IEEgb2YgZSl7aWYoIUEuc3R5bGUpY29udGludWU7Y29uc3QgZT1BLnN0eWxlLnN0cm9rZXx8QS5nZXRBdHRyaWJ1dGUoInN0cm9rZSIpO2UmJmUubWF0Y2goL151cmxcKCMuKlwpJC8pJiYoQS5zdHlsZVsic3Ryb2tlLWxpbmVqb2luIl09InJvdW5kIixBLnN0eWxlWyJzdHJva2UtbGluZWNhcCJdPSJyb3VuZCIpfX0pKEEpKTpBLmdldEF0dHJpYnV0ZSgidmlld0JveCIpP0EuZ2V0QXR0cmlidXRlKCJ3aWR0aCIpJiZBLmdldEF0dHJpYnV0ZSgiaGVpZ2h0Iil8fChBLnNldEF0dHJpYnV0ZSgid2lkdGgiLEEudmlld0JveC5iYXNlVmFsLndpZHRoKSxBLnNldEF0dHJpYnV0ZSgiaGVpZ2h0IixBLnZpZXdCb3guYmFzZVZhbC5oZWlnaHQpKTpjKEEpfTtBLmV4cG9ydHM9KEEsZSk9Pntjb25zdCB0PW5ldyBET01QYXJzZXI7QT1vKEEpO2NvbnN0IG49dC5wYXJzZUZyb21TdHJpbmcoQSwidGV4dC94bWwiKTtpZihuLmNoaWxkTm9kZXMubGVuZ3RoPDF8fCJzdmciIT09bi5kb2N1bWVudEVsZW1lbnQubG9jYWxOYW1lKXRocm93IG5ldyBFcnJvcigiRG9jdW1lbnQgZG9lcyBub3QgYXBwZWFyIHRvIGJlIFNWRy4iKTtjb25zdCBpPW4uZG9jdW1lbnRFbGVtZW50O3JldHVybiBnKGksZSksaX19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2NvbnN0IGU9W10sdD1BPT57InRleHQiPT09QS5sb2NhbE5hbWUmJmUucHVzaChBKTtmb3IobGV0IGU9MDtlPEEuY2hpbGROb2Rlcy5sZW5ndGg7ZSsrKXQoQS5jaGlsZE5vZGVzW2VdKX07dChBKTtmb3IoY29uc3QgQSBvZiBlKUEuZ2V0QXR0cmlidXRlKCJmb250LWZhbWlseSIpJiYiSGVsdmV0aWNhIiE9PUEuZ2V0QXR0cmlidXRlKCJmb250LWZhbWlseSIpPyJNeXN0ZXJ5Ij09PUEuZ2V0QXR0cmlidXRlKCJmb250LWZhbWlseSIpP0Euc2V0QXR0cmlidXRlKCJmb250LWZhbWlseSIsIkN1cmx5Iik6Ikdsb3JpYSI9PT1BLmdldEF0dHJpYnV0ZSgiZm9udC1mYW1pbHkiKT9BLnNldEF0dHJpYnV0ZSgiZm9udC1mYW1pbHkiLCJIYW5kd3JpdGluZyIpOiJEb25lZ2FsIj09PUEuZ2V0QXR0cmlidXRlKCJmb250LWZhbWlseSIpJiZBLnNldEF0dHJpYnV0ZSgiZm9udC1mYW1pbHkiLCJTZXJpZiIpOkEuc2V0QXR0cmlidXRlKCJmb250LWZhbWlseSIsIlNhbnMgU2VyaWYiKX19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2NvbnN0IGU9QS5tYXRjaCgvPHN2ZyBbXj5dKj4vKTtlJiYtMT09PWVbMF0uaW5kZXhPZigieG1sbnM9IikmJihBPUEucmVwbGFjZSgiPHN2ZyAiLCc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgJykpLGUmJi0xIT09ZVswXS5pbmRleE9mKCImbnNfIikmJi0xPT09QS5pbmRleE9mKCI8IURPQ1RZUEUiKSYmKEE9QS5yZXBsYWNlKGVbMF0sZVswXS5yZXBsYWNlKC8mbnNfW147XSs7L2csImh0dHA6Ly9ucy5hZG9iZS5jb20vRXh0ZW5zaWJpbGl0eS8xLjAvIikpKSxBLmluY2x1ZGVzKCJkYXRhOmltZy9wbmciKSYmKEE9QS5yZXBsYWNlKC8oPGltYWdlW14+XSs/eGxpbms6aHJlZj1bIiddKWRhdGE6aW1nXC9wbmcvZywoQSxlKT0+IiIuY29uY2F0KGUsImRhdGE6aW1hZ2UvcG5nIikpKTtjb25zdCB0PS8oPFtePl0rP3htbG5zOig/IXhtbD0pW14gXSs9KSJodHRwOlwvXC93d3cudzMub3JnXC9YTUxcLzE5OThcL25hbWVzcGFjZSIvZztyZXR1cm4gbnVsbCE9PUEubWF0Y2godCkmJihBPUEucmVwbGFjZSh0LChBLGUpPT4iIi5jb25jYXQoZSwnImh0dHA6Ly9kdW1teS5uYW1lc3BhY2UiJykpKSxBPShBPShBPUEucmVwbGFjZSgvPChcLz8pXHMqc3ZnOi9nLCI8JDEiKSkucmVwbGFjZSgvPG1ldGFkYXRhPltcc1xTXSo8XC9tZXRhZGF0YT4vLCI8bWV0YWRhdGE+PC9tZXRhZGF0YT4iKSkucmVwbGFjZSgvPHNjcmlwdFtcc1xTXSo+W1xzXFNdKjxcL3NjcmlwdD4vLCI8c2NyaXB0PjxcL3NjcmlwdD4iKX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMTA3KTtBLmV4cG9ydHM9KEEsZSk9PntsZXQgdD0obmV3IFhNTFNlcmlhbGl6ZXIpLnNlcmlhbGl6ZVRvU3RyaW5nKEEpO3JldHVybiBlJiYodD1uKHQsZSkpLHR9fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDQyMSksaT1BPT5BLnJlcGxhY2UoL1s8PiYnIl0vZyxBPT57c3dpdGNoKEEpe2Nhc2UiPCI6cmV0dXJuIiZsdDsiO2Nhc2UiPiI6cmV0dXJuIiZndDsiO2Nhc2UiJiI6cmV0dXJuIiZhbXA7IjtjYXNlIiciOnJldHVybiImYXBvczsiO2Nhc2UnIic6cmV0dXJuIiZxdW90OyJ9fSk7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTtpZigic3RyaW5nIiE9dHlwZW9mIEEpdGhyb3cgbmV3IEVycm9yKCJTVkcgdG8gYmUgaW5saW5lZCBpcyBub3QgYSBzdHJpbmciKTtjb25zdCB0PXt9O2lmKGUmJiJvYmplY3QiPT10eXBlb2YgZSlmb3IoY29uc3RbQSxuXW9mIE9iamVjdC5lbnRyaWVzKGUpKXRbaShBKV09bjt0cnl7T2JqZWN0LmFzc2lnbih0LG4oKSl9Y2F0Y2goQSl7fWNvbnN0IHI9bmV3IFNldCxvPS9mb250LWZhbWlseT0iKFteIl0qKSIvZztsZXQgcz1vLmV4ZWMoQSk7Zm9yKDtzOylyLmFkZChzWzFdKSxzPW8uZXhlYyhBKTtpZihyLnNpemU+MCl7bGV0IGU9IjxkZWZzPjxzdHlsZT4iO2Zvcihjb25zdCBBIG9mIHIpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsQSkmJihlKz0iIi5jb25jYXQodFtBXSkpO3JldHVybiBlKz0iPC9zdHlsZT48L2RlZnM+IixBPUEucmVwbGFjZSgvPHN2Z1tePl0qPi8sIiQmIi5jb25jYXQoZSkpfXJldHVybiBBfX0sZnVuY3Rpb24oQSxlLHQpe2xldCBuLGk7InVuZGVmaW5lZCI9PXR5cGVvZiBUZXh0RW5jb2Rlcj8obj10KDMwKS5UZXh0RW5jb2RlcixpPXQoMzApLlRleHREZWNvZGVyKToobj1UZXh0RW5jb2RlcixpPVRleHREZWNvZGVyKTtjb25zdCByPSI8ISIuY29uY2F0KCItIi5yZXBlYXQoMikpLG89IiIuY29uY2F0KCItIi5yZXBlYXQoMiksIj4iKSxzPW5ldyBSZWdFeHAoIiIuY29uY2F0KHIsInJvdGF0aW9uQ2VudGVyOigtP1tcXGRcXC5dKyk6KC0/W1xcZFxcLl0rKSIpLmNvbmNhdChvLCIkIikpLGE9ZnVuY3Rpb24oQSl7bGV0IGU9IiI7Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0Kz0zMjc2OCl7Y29uc3Qgbj1BLnN1YmFycmF5KHQsdCszMjc2OCk7ZSs9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLG4pfXJldHVybiBidG9hKGUpfTtBLmV4cG9ydHM9e3BhcnNlVmVjdG9yTWV0YWRhdGE6QT0+e2NvbnN0IGU9QS5tYXRjaChzKTtpZighZSlyZXR1cm4gbnVsbDtjb25zdCB0PStlWzFdLG49K2VbMl07cmV0dXJuIE51bWJlci5pc05hTih0KXx8TnVtYmVyLmlzTmFOKG4pP251bGw6W3Qsbl19LGV4cG9ydENvc3R1bWU6KEEsZSk9Pnt2YXIgdDtjb25zdCBCPUEuYXNzZXQuZGF0YTtpZigic3ZnIiE9PUEuZGF0YUZvcm1hdClyZXR1cm4gQjtsZXQgYz0obmV3IGkpLmRlY29kZShCKTtjPWMucmVwbGFjZShzLCIiKTtjb25zdCBnPUEucm90YXRpb25DZW50ZXJYLEU9QS5yb3RhdGlvbkNlbnRlclksUT0iIi5jb25jYXQociwicm90YXRpb25DZW50ZXI6IikuY29uY2F0KGcsIjoiKS5jb25jYXQoRSkuY29uY2F0KG8pO2lmKGMrPVEsZSYmbnVsbCE9PSh0PXZtKSYmdm9pZCAwIT09dCYmbnVsbCE9PSh0PXQucnVudGltZSkmJnZvaWQgMCE9PXQmJm51bGwhPT0odD10LmZvbnRNYW5hZ2VyKSYmdm9pZCAwIT09dCYmdC5mb250cyl7Y29uc3QgQT0oQT0+e2xldCBlPSIiO2Zvcihjb25zdCB0IG9mIEEpe2NvbnN0IEE9YSh0LmFzc2V0LmRhdGEpO2xldCBuPXQuYXNzZXQuZGF0YUZvcm1hdC50b0xvd2VyQ2FzZSgpOyJvdGYiPT09biYmKG49Im9wZW50eXBlIiksInR0ZiI9PT1uJiYobj0idHJ1ZXR5cGUiKSxlKz0iQGZvbnQtZmFjZSB7IixlKz0nZm9udC1mYW1pbHk6ICInLmNvbmNhdCh0LmZhbWlseSwnIjsnKSxlKz0ic3JjOiB1cmwoJ2RhdGE6Zm9udC8iLmNvbmNhdChuLCI7YmFzZTY0LCIpLmNvbmNhdChBLCInKSBmb3JtYXQoJyIpLmNvbmNhdChuLCInKTsiKSxlKz0ifSJ9cmV0dXJuIGV9KSh2bS5ydW50aW1lLmZvbnRNYW5hZ2VyLmZvbnRzLmZpbHRlcihBPT4hQS5zeXN0ZW0pLmZpbHRlcihBPT5jLmluY2x1ZGVzKCdmb250LWZhbWlseT0iJnF1b3Q7Jy5jb25jYXQoQS5mYW1pbHksIiZxdW90OywgIikuY29uY2F0KEEuZmFsbGJhY2ssJyInKSkpKTtpZihBKXtjb25zdCBlPSc8c3R5bGUgdHlwZT0idGV4dC9jc3MiPicuY29uY2F0KEEsIjwvc3R5bGU+Iik7Yz1jLnJlcGxhY2UobmV3IFJlZ0V4cCgiPHN2Z1tePl0qPz4iKSxBPT4iIi5jb25jYXQoQSkuY29uY2F0KGUpKX19cmV0dXJuKG5ldyBuKS5lbmNvZGUoYyl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg5KTtBLmV4cG9ydHM9QT0+e2NvbnN0IGU9e307Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0Kyspe2NvbnN0IGk9bigpLHI9QVt0XS5pZDtBW3RdLmlkPWVbcl09aX1mb3IobGV0IHQ9MDt0PEEubGVuZ3RoO3QrKyl7Zm9yKGNvbnN0IG4gaW4gQVt0XS5pbnB1dHMpe2NvbnN0IGk9QVt0XS5pbnB1dHNbbl07aS5ibG9jaz1lW2kuYmxvY2tdLGkuc2hhZG93PWVbaS5zaGFkb3ddfUFbdF0ucGFyZW50JiYoQVt0XS5wYXJlbnQ9ZVtBW3RdLnBhcmVudF0pLEFbdF0ubmV4dCYmKEFbdF0ubmV4dD1lW0FbdF0ubmV4dF0pfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMzMpLGk9dCg1KTtBLmV4cG9ydHM9e2Rlc2VyaWFsaXplU291bmQ6ZnVuY3Rpb24oQSxlLHQscil7Y29uc3Qgbz1yfHxBLm1kNSxzPWUuc3RvcmFnZTtpZighcylyZXR1cm4gaS53YXJuKCJObyBzdG9yYWdlIG1vZHVsZSBwcmVzZW50OyBjYW5ub3QgbG9hZCBzb3VuZCBhc3NldDogIixvKSxQcm9taXNlLnJlc29sdmUobnVsbCk7aWYoIXQpcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtsZXQgYT10LmZpbGUobyk7aWYoIWEpe2NvbnN0IEE9bmV3IFJlZ0V4cCgiXihbXi9dKi8pPyIuY29uY2F0KG8sIiQiKSk7YT10LmZpbGUoQSlbMF19aWYoIWEpcmV0dXJuIGkuZXJyb3IoIkNvdWxkIG5vdCBmaW5kIHNvdW5kIGZpbGUgYXNzb2NpYXRlZCB3aXRoIHRoZSAiLmNvbmNhdChBLm5hbWUsIiBzb3VuZC4iKSksUHJvbWlzZS5yZXNvbHZlKG51bGwpO2lmKCFuLnN1cHBvcnQudWludDhhcnJheSlyZXR1cm4gaS5lcnJvcigiSlNaaXAgdWludDhhcnJheSBpcyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgYnJvd3Nlci4iKSxQcm9taXNlLnJlc29sdmUobnVsbCk7bGV0IEI9cy5EYXRhRm9ybWF0LldBVjtzd2l0Y2goQS5kYXRhRm9ybWF0LnRvTG93ZXJDYXNlKCkpe2Nhc2UibXAzIjpCPXMuRGF0YUZvcm1hdC5NUDM7YnJlYWs7Y2FzZSJvZ2ciOkI9cy5EYXRhRm9ybWF0Lk9HRzticmVhaztjYXNlImZsYWMiOkI9cy5EYXRhRm9ybWF0LkZMQUN9cmV0dXJuIGEuYXN5bmMoInVpbnQ4YXJyYXkiKS50aGVuKEE9PnMuY3JlYXRlQXNzZXQocy5Bc3NldFR5cGUuU291bmQsQixBLG51bGwsITApKS50aGVuKGU9PntBLmFzc2V0PWUsQS5hc3NldElkPWUuYXNzZXRJZCxBLm1kNT0iIi5jb25jYXQoZS5hc3NldElkLCIuIikuY29uY2F0KGUuZGF0YUZvcm1hdCl9KX0sZGVzZXJpYWxpemVDb3N0dW1lOmZ1bmN0aW9uKEEsZSx0LHIsbyl7Y29uc3Qgcz1lLnN0b3JhZ2UsYT1BLmFzc2V0SWQsQj1yfHwiIi5jb25jYXQoYSwiLiIpLmNvbmNhdChBLmRhdGFGb3JtYXQpO2lmKCFzKXJldHVybiBpLndhcm4oIk5vIHN0b3JhZ2UgbW9kdWxlIHByZXNlbnQ7IGNhbm5vdCBsb2FkIGNvc3R1bWUgYXNzZXQ6ICIsQiksUHJvbWlzZS5yZXNvbHZlKG51bGwpO2lmKEEuYXNzZXQpcmV0dXJuIFByb21pc2UucmVzb2x2ZShzLmNyZWF0ZUFzc2V0KEEuYXNzZXQuYXNzZXRUeXBlLEEuYXNzZXQuZGF0YUZvcm1hdCxuZXcgVWludDhBcnJheShPYmplY3Qua2V5cyhBLmFzc2V0LmRhdGEpLm1hcChlPT5BLmFzc2V0LmRhdGFbZV0pKSxudWxsLCEwKSkudGhlbihlPT57QS5hc3NldD1lLEEuYXNzZXRJZD1lLmFzc2V0SWQsQS5tZDU9IiIuY29uY2F0KGUuYXNzZXRJZCwiLiIpLmNvbmNhdChlLmRhdGFGb3JtYXQpfSk7aWYoIXQpcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtsZXQgYz10LmZpbGUoQik7aWYoIWMpe2NvbnN0IEE9bmV3IFJlZ0V4cCgiXihbXi9dKi8pPyIuY29uY2F0KEIsIiQiKSk7Yz10LmZpbGUoQSlbMF19aWYoIWMpcmV0dXJuIGkuZXJyb3IoIkNvdWxkIG5vdCBmaW5kIGNvc3R1bWUgZmlsZSBhc3NvY2lhdGVkIHdpdGggdGhlICIuY29uY2F0KEEubmFtZSwiIGNvc3R1bWUuIikpLFByb21pc2UucmVzb2x2ZShudWxsKTtsZXQgZz1udWxsO2NvbnN0IEU9QS5kYXRhRm9ybWF0LnRvTG93ZXJDYXNlKCk7aWYoInN2ZyI9PT1FP2c9cy5Bc3NldFR5cGUuSW1hZ2VWZWN0b3I6WyJwbmciLCJibXAiLCJqcGVnIiwianBnIiwiZ2lmIl0uaW5kZXhPZihFKT49MD9nPXMuQXNzZXRUeXBlLkltYWdlQml0bWFwOmkuZXJyb3IoIlVuZXhwZWN0ZWQgZmlsZSBmb3JtYXQgZm9yIGNvc3R1bWU6ICIuY29uY2F0KEUpKSwhbi5zdXBwb3J0LnVpbnQ4YXJyYXkpcmV0dXJuIGkuZXJyb3IoIkpTWmlwIHVpbnQ4YXJyYXkgaXMgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGJyb3dzZXIuIiksUHJvbWlzZS5yZXNvbHZlKG51bGwpO2xldCBRO2lmKEEudGV4dExheWVyTUQ1KXtjb25zdCBlPXQuZmlsZShvKTtpZighZSlyZXR1cm4gaS5lcnJvcigiQ291bGQgbm90IGZpbmQgdGV4dCBsYXllciBmaWxlIGFzc29jaWF0ZWQgd2l0aCB0aGUgIi5jb25jYXQoQS5uYW1lLCIgY29zdHVtZS4iKSksUHJvbWlzZS5yZXNvbHZlKG51bGwpO1E9ZS5hc3luYygidWludDhhcnJheSIpLnRoZW4oZT0+cy5jcmVhdGVBc3NldChzLkFzc2V0VHlwZS5JbWFnZUJpdG1hcCwicG5nIixlLEEudGV4dExheWVyTUQ1KSkudGhlbihlPT57QS50ZXh0TGF5ZXJBc3NldD1lfSl9ZWxzZSBRPVByb21pc2UucmVzb2x2ZShudWxsKTtyZXR1cm4gUHJvbWlzZS5hbGwoW1EsYy5hc3luYygidWludDhhcnJheSIpLnRoZW4oQT0+cy5jcmVhdGVBc3NldChnLEUsQSxudWxsLCEwKSkudGhlbihlPT57QS5hc3NldD1lLEEuYXNzZXRJZD1lLmFzc2V0SWQsQS5tZDU9IiIuY29uY2F0KGUuYXNzZXRJZCwiLiIpLmNvbmNhdChlLmRhdGFGb3JtYXQpfSldKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDIyKSxpPXQoNjgpLHI9dCg3MSksbz10KDgpLHM9dCg1KSxhPXQoOSksQj10KDExKSxjPXQoNiksZz10KDQ0NyksRT10KDQ3KSxRPXQoMTkpLHU9dCg1NyksbD10KDE2KSxoPXQoMTAwKSx7bG9hZENvc3R1bWU6d309dCg0OSkse2xvYWRTb3VuZDpDfT10KDQ4KSx7ZGVzZXJpYWxpemVDb3N0dW1lOkksZGVzZXJpYWxpemVTb3VuZDpNfT10KDExMCksZD1bImFyZ3VtZW50IiwiY29udHJvbCIsImRhdGEiLCJldmVudCIsImxvb2tzIiwibWF0aCIsIm1vdGlvbiIsIm9wZXJhdG9yIiwicHJvY2VkdXJlcyIsInNlbnNpbmciLCJzb3VuZCJdLHA9L1x1MDAxZnxcLi8sbT1BPT57Y29uc3RbZSx0XT1BLnNwbGl0KHApLG49aC5nZW5lcmF0ZUV4dGVuc2lvbklkKGUpO3JldHVybiIiLmNvbmNhdChuLCJfIikuY29uY2F0KHQpfSxGPWZ1bmN0aW9uKEEpe2NvbnN0IGU9W3t9XTtsZXQgdD0wO2NvbnN0IG49QS5zcGxpdCgvKD89W15cXF0lW25ic10pLyk7Zm9yKGxldCBBPTA7QTxuLmxlbmd0aDtBKyspe2NvbnN0IGk9bltBXS50cmltKCk7aWYoIiUiPT09aS5zdWJzdHJpbmcoMCwxKSl7Y29uc3QgQT1pLnN1YnN0cmluZygxLDIpLG49e3R5cGU6ImlucHV0IixpbnB1dE5hbWU6ImlucHV0Iit0Kyt9OyJuIj09PUE/bi5pbnB1dE9wPSJtYXRoX251bWJlciI6InMiPT09QT9uLmlucHV0T3A9InRleHQiOiJiIj09PUEmJihuLmlucHV0T3A9ImJvb2xlYW4iKSxlLnB1c2gobil9fXJldHVybiBlfSxEPWZ1bmN0aW9uKEEpe3JldHVybiBGKEEpLm1hcChBPT5BLmlucHV0TmFtZSkuZmlsdGVyKEE9PkEpfSxZPWZ1bmN0aW9uKEEpe2xldCBlPVtdO2ZvcihsZXQgdD0wO3Q8QS5sZW5ndGg7dCsrKXtjb25zdCBuPUFbdF07ZS5wdXNoKG4pLG4uY2hpbGRyZW4mJihlPWUuY29uY2F0KFkobi5jaGlsZHJlbikpKSxkZWxldGUgbi5jaGlsZHJlbn1yZXR1cm4gZX0sZj1mdW5jdGlvbihBLGUsdCxuLGkscixvKXtjb25zdCBzPVtdO2xldCBhPW51bGw7Zm9yKGxldCBCPTA7QjxBLmxlbmd0aDtCKyspe2NvbnN0IGM9QVtCXSxnPVMoYyxlLHQsbixpLHIsbyksRT1nWzBdO289Z1sxXSxFJiYoYSYmKEUucGFyZW50PWEuaWQsYS5uZXh0PUUuaWQpLGE9RSxzLnB1c2goRSkpfXJldHVybltzLG9dfSxOPWZ1bmN0aW9uKCl7bGV0IEE9e307Y29uc3QgZT0oQSxlLHQpPT4iIi5jb25jYXQoQSwiLSIpLmNvbmNhdChCLnJlcGxhY2VVbnNhZmVDaGFycyhlKSwiLSIpLmNvbmNhdCh0KTtyZXR1cm4gZnVuY3Rpb24odCxuKXtyZXR1cm4gbiYmKEE9e30pLGZ1bmN0aW9uKGkscil7cmV0dXJuIG4/KEFbIiIuY29uY2F0KGksIi0iKS5jb25jYXQocildPWUodCxpLHIpLEFbIiIuY29uY2F0KGksIi0iKS5jb25jYXQocildKTpBWyIiLmNvbmNhdChpLCItIikuY29uY2F0KHIpXT9BWyIiLmNvbmNhdChpLCItIikuY29uY2F0KHIpXTplKHQsaSxyKX19fSgpLFU9ZnVuY3Rpb24oKXtsZXQgQT17fTtjb25zdCBlPVtdLHQ9YSgpO3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gbiYmKEE9e30pLHticm9hZGNhc3RNc2dNYXBVcGRhdGVyOmZ1bmN0aW9uKG4saSl7cmV0dXJuIiI9PT0obj1uLnRvTG93ZXJDYXNlKCkpJiYobj10KSxBW25dPSJicm9hZGNhc3RNc2dJZC0iLmNvbmNhdChCLnJlcGxhY2VVbnNhZmVDaGFycyhuKSksZS5wdXNoKGkpLEFbbl19LGdsb2JhbEJyb2FkY2FzdE1zZ3M6QSxhbGxCcm9hZGNhc3RGaWVsZHM6ZSxlbXB0eU1zZ05hbWU6dH19fSgpLHk9KEEsZSx0LG4pPT57aWYoIWdbQS5jbWRdKXJldHVybiB2b2lkIHMud2FybigiQ291bGQgbm90IGZpbmQgbW9uaXRvciBibG9jayB3aXRoIG9wY29kZTogIi5jb25jYXQoQS5jbWQpKTtjb25zdCBpPWdbQS5jbWRdLm9wY29kZSxyPWkuaW5kZXhPZigiXyIpLG89aS5zdWJzdHJpbmcoMCxyKTtpZigidmlkZW9TZW5zaW5nIj09PW8pcmV0dXJuO2lmKC0xPT09ZC5pbmRleE9mKG8pJiYiIiE9PW8mJiFuLmV4dGVuc2lvbklEcy5oYXMobykmJiFBLnZpc2libGUpcmV0dXJuO2xldCBhPW51bGw7aWYoIUEuaGFzT3duUHJvcGVydHkoInRhcmdldCIpKWZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXtjb25zdCBuPXRbZV07T2JqZWN0LmtleXMobi52YXJpYWJsZXMpLmZpbHRlcihlPT57Y29uc3QgdD1uLnZhcmlhYmxlc1tlXTtyZXR1cm4gdC50eXBlPT09US5MSVNUX1RZUEUmJnQubmFtZT09PUEubGlzdE5hbWV9KS5sZW5ndGg+MCYmKGE9bixBLnRhcmdldD1uLmdldE5hbWUoKSl9aWYoYT1hfHx0LmZpbHRlcihlPT5lLmdldE5hbWUoKT09PUEudGFyZ2V0KVswXSwhYSl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBjcmVhdGUgbW9uaXRvciBmb3IgdGFyZ2V0IHRoYXQgY2Fubm90IGJlIGZvdW5kIGJ5IG5hbWUiKTtjb25zdCBCPU4oYS5pZCwhMSksW2MsRV09UyhbQS5jbWQsQS5wYXJhbV0sbnVsbCxCLG4se30sbnVsbCxudWxsKTsiZ2V0VmFyOiI9PT1BLmNtZD9jLmlkPUIoQS5wYXJhbSxRLlNDQUxBUl9UWVBFKToiY29udGVudHNPZkxpc3Q6Ij09PUEuY21kP2MuaWQ9QihBLnBhcmFtLFEuTElTVF9UWVBFKTplLm1vbml0b3JCbG9ja0luZm8uaGFzT3duUHJvcGVydHkoYy5vcGNvZGUpP2MuaWQ9ZS5tb25pdG9yQmxvY2tJbmZvW2Mub3Bjb2RlXS5nZXRJZChhLmlkLGMuZmllbGRzKTpjLmlkPWMub3Bjb2RlLGMudGFyZ2V0SWQ9YS5pc1N0YWdlP251bGw6YS5pZCxjLmlzTW9uaXRvcmVkPUEudmlzaWJsZTtjb25zdCBsPWUubW9uaXRvckJsb2Nrcy5fYmxvY2tzW2MuaWRdO2lmKGwpbC5pc01vbml0b3JlZD1BLnZpc2libGUsbC50YXJnZXRJZD1jLnRhcmdldElkO2Vsc2V7Y29uc3QgQT1ZKFtjXSk7Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0KyspZS5tb25pdG9yQmxvY2tzLmNyZWF0ZUJsb2NrKEFbdF0pfXN3aXRjaChBLm1vZGUpe2Nhc2UgMTpBLm1vZGU9ImRlZmF1bHQiO2JyZWFrO2Nhc2UgMjpBLm1vZGU9ImxhcmdlIjticmVhaztjYXNlIDM6QS5tb2RlPSJzbGlkZXIifWUucmVxdWVzdEFkZE1vbml0b3IodSh7aWQ6Yy5pZCx0YXJnZXRJZDpjLnRhcmdldElkLHNwcml0ZU5hbWU6Yy50YXJnZXRJZD9BLnRhcmdldDpudWxsLG9wY29kZTpjLm9wY29kZSxwYXJhbXM6ZS5tb25pdG9yQmxvY2tzLl9nZXRCbG9ja1BhcmFtcyhjKSx2YWx1ZToiIixtb2RlOkEubW9kZSxzbGlkZXJNaW46QS5zbGlkZXJNaW4sc2xpZGVyTWF4OkEuc2xpZGVyTWF4LGlzRGlzY3JldGU6QS5pc0Rpc2NyZXRlLHg6QS54LHk6QS55LHdpZHRoOkEud2lkdGgsaGVpZ2h0OkEuaGVpZ2h0LHZpc2libGU6QS52aXNpYmxlfSkpfSxUPWZ1bmN0aW9uKEEsZSx0LG4pe2lmKCFBLmhhc093blByb3BlcnR5KCJvYmpOYW1lIikpcmV0dXJuIG51bGw7Y29uc3QgaT17Y29zdHVtZVByb21pc2VzOltdLHNvdW5kUHJvbWlzZXM6W10sc291bmRCYW5rOmUuYXVkaW9FbmdpbmUmJmUuYXVkaW9FbmdpbmUuY3JlYXRlQmFuaygpLGNoaWxkcmVuOltdfSxyPWkuY29zdHVtZVByb21pc2VzO2lmKEEuaGFzT3duUHJvcGVydHkoImNvc3R1bWVzIikpZm9yKGxldCBpPTA7aTxBLmNvc3R1bWVzLmxlbmd0aDtpKyspe2NvbnN0IG89QS5jb3N0dW1lc1tpXSxzPW8uYml0bWFwUmVzb2x1dGlvbnx8MSxhPXtuYW1lOm8uY29zdHVtZU5hbWUsYml0bWFwUmVzb2x1dGlvbjpzLHJvdGF0aW9uQ2VudGVyWDp0PzI0MCpzOm8ucm90YXRpb25DZW50ZXJYLHJvdGF0aW9uQ2VudGVyWTp0PzE4MCpzOm8ucm90YXRpb25DZW50ZXJZLG1kNTpvLmJhc2VMYXllck1ENSxza2luSWQ6bnVsbH0sYz1vLmJhc2VMYXllck1ENSxnPUIuc3BsaXRGaXJzdChjLCIuIiksRT1nWzBdO2xldCBROzI9PT1nLmxlbmd0aCYmZ1sxXT9RPWdbMV06KFE9InBuZyIsYS5tZDU9IiIuY29uY2F0KGEubWQ1LCIuIikuY29uY2F0KFEpKSxhLmRhdGFGb3JtYXQ9USxhLmFzc2V0SWQ9RSxvLnRleHRMYXllck1ENSYmKGEudGV4dExheWVyTUQ1PUIuc3BsaXRGaXJzdChvLnRleHRMYXllck1ENSwiLiIpWzBdKTtjb25zdCB1PSIiLmNvbmNhdChvLmJhc2VMYXllcklELCIuIikuY29uY2F0KFEpLGw9by50ZXh0TGF5ZXJJRD8iIi5jb25jYXQoby50ZXh0TGF5ZXJJRCwiLnBuZyIpOm51bGw7ci5wdXNoKEkoYSxlLG4sdSxsKS50aGVuKCgpPT53KGEubWQ1LGEsZSwyKSkpfWNvbnN0e3NvdW5kQmFuazpvLHNvdW5kUHJvbWlzZXM6c309aTtpZihBLmhhc093blByb3BlcnR5KCJzb3VuZHMiKSlmb3IobGV0IHQ9MDt0PEEuc291bmRzLmxlbmd0aDt0Kyspe2NvbnN0IGk9QS5zb3VuZHNbdF0scj17bmFtZTppLnNvdW5kTmFtZSxmb3JtYXQ6aS5mb3JtYXQscmF0ZTppLnJhdGUsc2FtcGxlQ291bnQ6aS5zYW1wbGVDb3VudCxtZDU6aS5tZDUsZGF0YTpudWxsfSxhPWkubWQ1LGM9Qi5zcGxpdEZpcnN0KGEsIi4iKSxnPWNbMF0sRT1jWzFdLnRvTG93ZXJDYXNlKCk7ci5kYXRhRm9ybWF0PUUsci5hc3NldElkPWc7Y29uc3QgUT0iIi5jb25jYXQoaS5zb3VuZElELCIuIikuY29uY2F0KEUpO3MucHVzaChNKHIsZSxuLFEpLnRoZW4oKCk9PkMocixlLG8pKSl9Y29uc3QgYT1pLmNoaWxkcmVuO2lmKEEuY2hpbGRyZW4pZm9yKGxldCB0PTA7dDxBLmNoaWxkcmVuLmxlbmd0aDt0KyspYS5wdXNoKFQoQS5jaGlsZHJlblt0XSxlLCExLG4pKTtyZXR1cm4gaX0seD1mdW5jdGlvbihBLGUsdCxvLHMsYSl7aWYoIUEuaGFzT3duUHJvcGVydHkoIm9iak5hbWUiKSlyZXR1cm4gQS5oYXNPd25Qcm9wZXJ0eSgibGlzdE5hbWUiKSYmKEEuY21kPSJjb250ZW50c09mTGlzdDoiLEEucGFyYW09QS5saXN0TmFtZSxBLm1vZGU9Imxpc3QiKSxBLmRlZmVycmVkTW9uaXRvcj0hMCxQcm9taXNlLnJlc29sdmUoQSk7Y29uc3QgQj1uZXcgbihlKSxnPW5ldyByKEIsZSk7aWYoQS5oYXNPd25Qcm9wZXJ0eSgib2JqTmFtZSIpKXtpZihvJiYiU3RhZ2UiIT09QS5vYmpOYW1lKXtmb3IoY29uc3QgZSBvZiBBLmNoaWxkcmVuKWUuaGFzT3duUHJvcGVydHkoIm9iak5hbWUiKXx8ZS50YXJnZXQhPT1BLm9iak5hbWV8fChlLnRhcmdldD0iU3RhZ2UiKTtBLm9iak5hbWU9IlN0YWdlIn1nLm5hbWU9QS5vYmpOYW1lfWNvbnN0IHU9YS5jb3N0dW1lUHJvbWlzZXMse3NvdW5kQmFuazp3LHNvdW5kUHJvbWlzZXM6Q309YSxJPWcuY3JlYXRlQ2xvbmUobz9sLkJBQ0tHUk9VTkRfTEFZRVI6bC5TUFJJVEVfTEFZRVIpLE09TihJLmlkLG8pLGQ9VShvKSxwPWQuYnJvYWRjYXN0TXNnTWFwVXBkYXRlcjtpZihBLmhhc093blByb3BlcnR5KCJ2YXJpYWJsZXMiKSlmb3IobGV0IHQ9MDt0PEEudmFyaWFibGVzLmxlbmd0aDt0Kyspe2NvbnN0IG49QS52YXJpYWJsZXNbdF0saT1uLmlzUGVyc2lzdGVudCYmbyYmZS5jYW5BZGRDbG91ZFZhcmlhYmxlKCkscj1uZXcgUShNKG4ubmFtZSxRLlNDQUxBUl9UWVBFKSxuLm5hbWUsUS5TQ0FMQVJfVFlQRSxpKTtpJiZlLmFkZENsb3VkVmFyaWFibGUoKSxyLnZhbHVlPW4udmFsdWUsSS52YXJpYWJsZXNbci5pZF09cn1jb25zdCBtPXt9O2lmKEEuaGFzT3duUHJvcGVydHkoInNjcmlwdENvbW1lbnRzIikpe0Euc2NyaXB0Q29tbWVudHMubWFwKEE9Pntjb25zdFtlLHQsbixpLHIsbyxzXT1BLGE9QVs1XT49MCxCPW5ldyBFKG51bGwscyxhP251bGw6MS41KmUsYT9udWxsOjIuMip0LDEuNSpuLDIuMippLCFyKTtyZXR1cm4gYSYmKEIuYmxvY2tJZD1vLG0uaGFzT3duUHJvcGVydHkobyk/bVtvXS5wdXNoKEIpOm1bb109W0JdKSxCfSkuZm9yRWFjaChBPT57SS5jb21tZW50c1tBLmlkXT1BfSl9QS5oYXNPd25Qcm9wZXJ0eSgic2NyaXB0cyIpJiZmdW5jdGlvbihBLGUsdCxuLGkscil7bGV0IG89MDtmb3IobGV0IHM9MDtzPEEubGVuZ3RoO3MrKyl7Y29uc3QgYT1BW3NdLEI9YVswXSxjPWFbMV0sZz1hWzJdLEU9e30sW1EsdV09ZihnLHQsbixpLEUscixvKTtvPXUsUVswXSYmKFFbMF0ueD0xLjUqQixRWzBdLnk9Mi4yKmMsUVswXS50b3BMZXZlbD0hMCxRWzBdLnBhcmVudD1udWxsKTtjb25zdCBsPVkoUSk7Zm9yKGxldCBBPTA7QTxsLmxlbmd0aDtBKyspZS5jcmVhdGVCbG9jayhsW0FdKX19KEEuc2NyaXB0cyxCLHAsTSx0LG0pO2Zvcihjb25zdCBBIGluIG0pe21bQV0uZm9yRWFjaChBPT57Im51bWJlciI9PXR5cGVvZiBBLmJsb2NrSWQmJihBLmJsb2NrSWQ9bnVsbCl9KX1pZihCLnVwZGF0ZVRhcmdldFNwZWNpZmljQmxvY2tzKG8pLEEuaGFzT3duUHJvcGVydHkoImxpc3RzIikpZm9yKGxldCBlPTA7ZTxBLmxpc3RzLmxlbmd0aDtlKyspe2NvbnN0IHQ9QS5saXN0c1tlXSxuPW5ldyBRKE0odC5saXN0TmFtZSxRLkxJU1RfVFlQRSksdC5saXN0TmFtZSxRLkxJU1RfVFlQRSwhMSk7bi52YWx1ZT10LmNvbnRlbnRzLEkudmFyaWFibGVzW24uaWRdPW59QS5oYXNPd25Qcm9wZXJ0eSgic2NyYXRjaFgiKSYmKEkueD1BLnNjcmF0Y2hYKSxBLmhhc093blByb3BlcnR5KCJzY3JhdGNoWSIpJiYoSS55PUEuc2NyYXRjaFkpLEEuaGFzT3duUHJvcGVydHkoImRpcmVjdGlvbiIpJiYoSS5kaXJlY3Rpb249QS5kaXJlY3Rpb24pLEEuaGFzT3duUHJvcGVydHkoImlzRHJhZ2dhYmxlIikmJihJLmRyYWdnYWJsZT1BLmlzRHJhZ2dhYmxlKSxBLmhhc093blByb3BlcnR5KCJzY2FsZSIpJiYoSS5zaXplPTEwMCpBLnNjYWxlKSxBLmhhc093blByb3BlcnR5KCJ2aXNpYmxlIikmJihJLnZpc2libGU9QS52aXNpYmxlKSxBLmhhc093blByb3BlcnR5KCJjdXJyZW50Q29zdHVtZUluZGV4IikmJihJLmN1cnJlbnRDb3N0dW1lPWMuY2xhbXAoTWF0aC5mbG9vcihBLmN1cnJlbnRDb3N0dW1lSW5kZXgpLDAsQS5jb3N0dW1lcy5sZW5ndGgtMSkpLEEuaGFzT3duUHJvcGVydHkoInJvdGF0aW9uU3R5bGUiKSYmKCJub25lIj09PUEucm90YXRpb25TdHlsZT9JLnJvdGF0aW9uU3R5bGU9aS5ST1RBVElPTl9TVFlMRV9OT05FOiJsZWZ0UmlnaHQiPT09QS5yb3RhdGlvblN0eWxlP0kucm90YXRpb25TdHlsZT1pLlJPVEFUSU9OX1NUWUxFX0xFRlRfUklHSFQ6InVwRG93biI9PT1BLnJvdGF0aW9uU3R5bGU/SS5yb3RhdGlvblN0eWxlPWkuUk9UQVRJT05fU1RZTEVfVVBfRE9XTjoibG9va0F0Ij09PUEucm90YXRpb25TdHlsZT9JLnJvdGF0aW9uU3R5bGU9aS5ST1RBVElPTl9TVFlMRV9MT09LX0FUOiJub3JtYWwiPT09QS5yb3RhdGlvblN0eWxlJiYoSS5yb3RhdGlvblN0eWxlPWkuUk9UQVRJT05fU1RZTEVfQUxMX0FST1VORCkpLEEuaGFzT3duUHJvcGVydHkoInRlbXBvQlBNIikmJihJLnRlbXBvPUEudGVtcG9CUE0pLEEuaGFzT3duUHJvcGVydHkoInZpZGVvQWxwaGEiKSYmKEkudmlkZW9UcmFuc3BhcmVuY3k9MTAwLTEwMCpBLnZpZGVvQWxwaGEpLEEuaGFzT3duUHJvcGVydHkoImluZm8iKSYmQS5pbmZvLmhhc093blByb3BlcnR5KCJ2aWRlb09uIikmJihBLmluZm8udmlkZW9Pbj9JLnZpZGVvU3RhdGU9aS5WSURFT19TVEFURS5PTjpJLnZpZGVvU3RhdGU9aS5WSURFT19TVEFURS5PRkYpLEEuaGFzT3duUHJvcGVydHkoImluZGV4SW5MaWJyYXJ5IikmJihJLnRhcmdldFBhbmVPcmRlcj1BLmluZGV4SW5MaWJyYXJ5KSxJLmlzU3RhZ2U9byxQcm9taXNlLmFsbCh1KS50aGVuKEE9PntnLmNvc3R1bWVzPUF9KSxQcm9taXNlLmFsbChDKS50aGVuKEE9PntnLnNvdW5kcz1BLGcuc291bmRCYW5rPXd8fG51bGx9KTtjb25zdCBGPVtdO2lmKEEuY2hpbGRyZW4pZm9yKGxldCBuPTA7bjxBLmNoaWxkcmVuLmxlbmd0aDtuKyspRi5wdXNoKHgoQS5jaGlsZHJlbltuXSxlLHQsITEscyxhLmNoaWxkcmVuW25dKSk7aWYobyl7Y29uc3QgZT1BLmluZm8mJkEuaW5mby5zYXZlZEV4dGVuc2lvbnM7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IoY29uc3QgQSBvZiBlKXtjb25zdCBlPWguZ2VuZXJhdGVFeHRlbnNpb25JZChBLmV4dGVuc2lvbk5hbWUpLG49QS5qYXZhc2NyaXB0VVJMO3QuZXh0ZW5zaW9uVVJMcy5zZXQoZSxuKX19cmV0dXJuIFByb21pc2UuYWxsKHUuY29uY2F0KEMpKS50aGVuKCgpPT5Qcm9taXNlLmFsbChGKS50aGVuKEE9PntpZihJLmlzU3RhZ2Upe2NvbnN0IEE9ZC5nbG9iYWxCcm9hZGNhc3RNc2dzLGU9ZC5hbGxCcm9hZGNhc3RGaWVsZHMsdD1kLmVtcHR5TXNnTmFtZTtpZihBW3RdKXtsZXQgbj0xO2Zvcig7QVsibWVzc2FnZSIuY29uY2F0KG4pXTspbis9MTtjb25zdCBpPSJtZXNzYWdlIi5jb25jYXQobik7QVtpXT1BW3RdLGRlbGV0ZSBBW3RdO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7QSsrKSIiPT09ZVtBXS52YWx1ZSYmKGVbQV0udmFsdWU9aSl9Zm9yKGNvbnN0IGUgaW4gQSl7Y29uc3QgdD1BW2VdLG49bmV3IFEodCxlLFEuQlJPQURDQVNUX01FU1NBR0VfVFlQRSwhMSk7SS52YXJpYWJsZXNbbi5pZF09bn19bGV0IG49W0ldO2NvbnN0IGk9W107Zm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKyspQVtlXSYmKEFbZV0uZGVmZXJyZWRNb25pdG9yP2kucHVzaChBW2VdKTpuPW4uY29uY2F0KEFbZV0pKTtmb3IobGV0IEE9MDtBPGkubGVuZ3RoO0ErKyl5KGlbQV0sZSxuLHQpO3JldHVybiBufSkpfSxSPWZ1bmN0aW9uKEEpe2NvbnN0IGU9QS5tYXAoKEEsZSk9PihBLmxheWVyT3JkZXI9ZSxBKSkuc29ydCgoQSxlKT0+QS50YXJnZXRQYW5lT3JkZXItZS50YXJnZXRQYW5lT3JkZXIpO3JldHVybiBlLmZvckVhY2goQT0+e2RlbGV0ZSBBLnRhcmdldFBhbmVPcmRlcn0pLGV9LEc9ZnVuY3Rpb24oQSl7Y29uc3QgZT1BWzBdLHQ9ZSYmZ1tlXTtyZXR1cm4gdD8iZnVuY3Rpb24iPT10eXBlb2YgdD90KEEpOnQ6ZSYmKEE9PnAudGVzdChBKSkoZSk/KEE9Pntjb25zdCBlPUFbMF0sdD1BLmxlbmd0aC0xLG49W107Zm9yKGxldCBBPTA7QTx0O0ErKyluLnB1c2goe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ0ZXh0IixpbnB1dE5hbWU6aC5hcmd1bWVudEluZGV4VG9JZChBKX0pO3JldHVybntvcGNvZGU6bShlKSxhcmdNYXA6bn19KShBKToocy53YXJuKCJDb3VsZG4ndCBmaW5kIFNCMiBibG9jazogIi5jb25jYXQoZSkpLG51bGwpfSxTPWZ1bmN0aW9uKEEsZSx0LG4saSxyLEIpe2NvbnN0IGM9ciYmIm51bWJlciI9PXR5cGVvZiBCJiYhaXNOYU4oQik/cltCXTpudWxsLGc9RyhBKTtpZighZylyZXR1cm4gYyYmYy5mb3JFYWNoKEE9PntBLmJsb2NrSWQ9bnVsbCxBLng9QS55PTB9KSxbbnVsbCxCKzFdO2NvbnN0IEU9QVswXSx1PWcub3Bjb2RlLmluZGV4T2YoIl8iKSxsPWcub3Bjb2RlLnN1YnN0cmluZygwLHUpOy0xPT09ZC5pbmRleE9mKGwpJiYiIiE9PWwmJm4uZXh0ZW5zaW9uSURzLmFkZChsKTtjb25zdCBoPXtpZDphKCksb3Bjb2RlOmcub3Bjb2RlLGlucHV0czp7fSxmaWVsZHM6e30sbmV4dDpudWxsLHNoYWRvdzohMSxjaGlsZHJlbjpbXX07YyYmKGguY29tbWVudD1jW2MubGVuZ3RoLTFdLmlkLGMuZm9yRWFjaChBPT57QS5pZD09PWguY29tbWVudD9BLmJsb2NrSWQ9aC5pZDooQS5ibG9ja0lkPW51bGwsQS54PUEueT0wKX0pKSxCKys7Y29uc3Qgdz1pLmV4cGVjdGVkQXJnOyJjYWxsIj09PUUmJihnLmFyZ01hcD1GKEFbMV0pKTtmb3IobGV0IGM9MDtjPGcuYXJnTWFwLmxlbmd0aDtjKyspe2NvbnN0IEU9Zy5hcmdNYXBbY10sdT1BW2MrMV07bGV0IGw9ITE7aWYoImlucHV0Ij09PUUudHlwZSl7Y29uc3QgQT1hKCk7aWYoaC5pbnB1dHNbRS5pbnB1dE5hbWVdPXtuYW1lOkUuaW5wdXROYW1lLGJsb2NrOm51bGwsc2hhZG93Om51bGx9LCJvYmplY3QiPT10eXBlb2YgdSYmdSl7bGV0IEE7aWYoaS5leHBlY3RlZEFyZz1FLCJvYmplY3QiPT10eXBlb2YgdVswXSYmdVswXSlbQSxCXT1mKHUsZSx0LG4saSxyLEIpO2Vsc2V7Y29uc3Qgbz1TKHUsZSx0LG4saSxyLEIpO0E9b1swXT9bb1swXV06W10sQj1vWzFdfWlmKGkuZXhwZWN0ZWRBcmc9dyxBLmxlbmd0aD4wKXtsZXQgZT1udWxsO2ZvcihsZXQgdD0wO3Q8QS5sZW5ndGg7dCsrKUFbdF0ucGFyZW50PTA9PT10P2guaWQ6ZSxlPUFbdF0uaWQ7aC5pbnB1dHNbRS5pbnB1dE5hbWVdLmJsb2NrPUFbMF0uaWQsaC5jaGlsZHJlbj1oLmNoaWxkcmVuLmNvbmNhdChBKX1sPSEwfWlmKCFFLmlucHV0T3Ape3Mud2FybigiVW5rbm93biBpbnB1dCBvcGVyYXRpb24gZm9yIGlucHV0ICIuY29uY2F0KEUuaW5wdXROYW1lLCIgb2Ygb3Bjb2RlICIpLmNvbmNhdChoLm9wY29kZSwiLiIpKTtjb250aW51ZX1pZigiYm9vbGVhbiI9PT1FLmlucHV0T3B8fCJzdWJzdGFjayI9PT1FLmlucHV0T3ApY29udGludWU7bGV0IGM9dSxnPUUuaW5wdXROYW1lOyJtYXRoX251bWJlciI9PT1FLmlucHV0T3B8fCJtYXRoX3dob2xlX251bWJlciI9PT1FLmlucHV0T3B8fCJtYXRoX3Bvc2l0aXZlX251bWJlciI9PT1FLmlucHV0T3B8fCJtYXRoX2ludGVnZXIiPT09RS5pbnB1dE9wfHwibWF0aF9hbmdsZSI9PT1FLmlucHV0T3A/KGc9Ik5VTSIsbCYmKGM9MTApKToidGV4dCI9PT1FLmlucHV0T3A/KGc9IlRFWFQiLGwmJihjPSIiKSk6ImNvbG91cl9waWNrZXIiPT09RS5pbnB1dE9wPyhjPW8uZGVjaW1hbFRvSGV4KHUpLGc9IkNPTE9VUiIsbCYmKGM9IiM5OTAwMDAiKSk6ImV2ZW50X2Jyb2FkY2FzdF9tZW51Ij09PUUuaW5wdXRPcD8oZz0iQlJPQURDQVNUX09QVElPTiIsbCYmKGM9IiIpKToic2Vuc2luZ19vZl9vYmplY3RfbWVudSI9PT1FLmlucHV0T3A/KGx8fCJTdGFnZSI9PT1jKSYmKGM9Il9zdGFnZV8iKToibm90ZSI9PT1FLmlucHV0T3A/bCYmKGM9NjApOiJtdXNpYy5tZW51LkRSVU0iPT09RS5pbnB1dE9wfHwibXVzaWMubWVudS5JTlNUUlVNRU5UIj09PUUuaW5wdXRPcD9sJiYoYz0xKToidmlkZW9TZW5zaW5nLm1lbnUuQVRUUklCVVRFIj09PUUuaW5wdXRPcD9sJiYoYz0ibW90aW9uIik6InZpZGVvU2Vuc2luZy5tZW51LlNVQkpFQ1QiPT09RS5pbnB1dE9wP2wmJihjPSJ0aGlzIHNwcml0ZSIpOiJ2aWRlb1NlbnNpbmcubWVudS5WSURFT19TVEFURSI9PT1FLmlucHV0T3A/bCYmKGM9Im9uIik6bCYmKGM9IiIpO2NvbnN0IFE9e307aWYoUVtnXT17bmFtZTpnLHZhbHVlOmN9LCJldmVudF9icm9hZGNhc3RfbWVudSI9PT1FLmlucHV0T3Ape2NvbnN0IEE9ZShjLFFbZ10pO1FbZ10uaWQ9QSxRW2ddLnZhcmlhYmxlVHlwZT1FLnZhcmlhYmxlVHlwZX1oLmNoaWxkcmVuLnB1c2goe2lkOkEsb3Bjb2RlOkUuaW5wdXRPcCxpbnB1dHM6e30sZmllbGRzOlEsbmV4dDpudWxsLHRvcExldmVsOiExLHBhcmVudDpoLmlkLHNoYWRvdzohMH0pLGguaW5wdXRzW0UuaW5wdXROYW1lXS5zaGFkb3c9QSxoLmlucHV0c1tFLmlucHV0TmFtZV0uYmxvY2t8fChoLmlucHV0c1tFLmlucHV0TmFtZV0uYmxvY2s9QSl9ZWxzZSBpZigiZmllbGQiPT09RS50eXBlKXtpZihoLmZpZWxkc1tFLmZpZWxkTmFtZV09e25hbWU6RS5maWVsZE5hbWUsdmFsdWU6dX0sIkNVUlJFTlRNRU5VIj09PUUuZmllbGROYW1lJiYoaC5maWVsZHNbRS5maWVsZE5hbWVdLnZhbHVlPXUudG9VcHBlckNhc2UoKSwiZGF5IG9mIHdlZWsiPT09dSYmKGguZmllbGRzW0UuZmllbGROYW1lXS52YWx1ZT0iREFZT0ZXRUVLIikpLCJWQVJJQUJMRSI9PT1FLmZpZWxkTmFtZSloLmZpZWxkc1tFLmZpZWxkTmFtZV0uaWQ9dCh1LFEuU0NBTEFSX1RZUEUpO2Vsc2UgaWYoIkxJU1QiPT09RS5maWVsZE5hbWUpaC5maWVsZHNbRS5maWVsZE5hbWVdLmlkPXQodSxRLkxJU1RfVFlQRSk7ZWxzZSBpZigiQlJPQURDQVNUX09QVElPTiI9PT1FLmZpZWxkTmFtZSl7Y29uc3QgQT1lKHUsaC5maWVsZHNbRS5maWVsZE5hbWVdKTtoLmZpZWxkc1tFLmZpZWxkTmFtZV0uaWQ9QX1jb25zdCBBPUUudmFyaWFibGVUeXBlOyJzdHJpbmciPT10eXBlb2YgQSYmKGguZmllbGRzW0UuZmllbGROYW1lXS52YXJpYWJsZVR5cGU9QSl9fXN3aXRjaChFKXtjYXNlImNvbWVUb0Zyb250IjpoLmZpZWxkcy5GUk9OVF9CQUNLPXtuYW1lOiJGUk9OVF9CQUNLIix2YWx1ZToiZnJvbnQifTticmVhaztjYXNlImdvQmFja0J5TGF5ZXJzOiI6aC5maWVsZHMuRk9SV0FSRF9CQUNLV0FSRD17bmFtZToiRk9SV0FSRF9CQUNLV0FSRCIsdmFsdWU6ImJhY2t3YXJkIn07YnJlYWs7Y2FzZSJiYWNrZ3JvdW5kSW5kZXgiOmguZmllbGRzLk5VTUJFUl9OQU1FPXtuYW1lOiJOVU1CRVJfTkFNRSIsdmFsdWU6Im51bWJlciJ9O2JyZWFrO2Nhc2Uic2NlbmVOYW1lIjpoLmZpZWxkcy5OVU1CRVJfTkFNRT17bmFtZToiTlVNQkVSX05BTUUiLHZhbHVlOiJuYW1lIn07YnJlYWs7Y2FzZSJjb3N0dW1lSW5kZXgiOmguZmllbGRzLk5VTUJFUl9OQU1FPXtuYW1lOiJOVU1CRVJfTkFNRSIsdmFsdWU6Im51bWJlciJ9O2JyZWFrO2Nhc2UiY29zdHVtZU5hbWUiOmguZmllbGRzLk5VTUJFUl9OQU1FPXtuYW1lOiJOVU1CRVJfTkFNRSIsdmFsdWU6Im5hbWUifX1pZigic3RvcFNjcmlwdHMiPT09RSkib3RoZXIgc2NyaXB0cyBpbiBzcHJpdGUiIT09QVsxXSYmIm90aGVyIHNjcmlwdHMgaW4gc3RhZ2UiIT09QVsxXXx8KGgubXV0YXRpb249e3RhZ05hbWU6Im11dGF0aW9uIixoYXNuZXh0OiJ0cnVlIixjaGlsZHJlbjpbXX0pO2Vsc2UgaWYoInByb2NEZWYiPT09RSl7Y29uc3QgZT1BLnNsaWNlKDEpLHQ9YSgpLG49ImN1c3RvbV9ibG9jayI7aC5pbnB1dHNbbl09e25hbWU6bixibG9jazp0LHNoYWRvdzp0fSxoLmNoaWxkcmVuPVt7aWQ6dCxvcGNvZGU6InByb2NlZHVyZXNfcHJvdG90eXBlIixpbnB1dHM6e30sZmllbGRzOnt9LG5leHQ6bnVsbCxzaGFkb3c6ITAsY2hpbGRyZW46W10sbXV0YXRpb246e3RhZ05hbWU6Im11dGF0aW9uIixwcm9jY29kZTplWzBdLGFyZ3VtZW50bmFtZXM6SlNPTi5zdHJpbmdpZnkoZVsxXSksYXJndW1lbnRpZHM6SlNPTi5zdHJpbmdpZnkoRChlWzBdKSksYXJndW1lbnRkZWZhdWx0czpKU09OLnN0cmluZ2lmeShlWzJdKSx3YXJwOmVbM10sY2hpbGRyZW46W119fV19ZWxzZSBpZigiY2FsbCI9PT1FKWgubXV0YXRpb249e3RhZ05hbWU6Im11dGF0aW9uIixjaGlsZHJlbjpbXSxwcm9jY29kZTpBWzFdLGFyZ3VtZW50aWRzOkpTT04uc3RyaW5naWZ5KEQoQVsxXSkpfTtlbHNlIGlmKCJnZXRQYXJhbSI9PT1FKXtsZXQgZT1BWzJdO3N3aXRjaCh3JiYiYm9vbGVhbiI9PT13LmlucHV0T3AmJiJiIiE9PWUmJihlPSJiIiksZSl7Y2FzZSJyIjpoLm9wY29kZT0iYXJndW1lbnRfcmVwb3J0ZXJfc3RyaW5nX251bWJlciI7YnJlYWs7Y2FzZSJiIjpoLm9wY29kZT0iYXJndW1lbnRfcmVwb3J0ZXJfYm9vbGVhbiJ9fXJldHVybltoLEJdfTtBLmV4cG9ydHM9e2Rlc2VyaWFsaXplOmZ1bmN0aW9uKEEsZSx0LG4pe2NvbnN0IGk9e2V4dGVuc2lvbklEczpuZXcgU2V0LGV4dGVuc2lvblVSTHM6bmV3IE1hcH07cmV0dXJuIFByb21pc2UucmVzb2x2ZShUKEEsZSwhdCxuKSkudGhlbihBPT5Qcm9taXNlLnJlc29sdmUoQSkpLnRoZW4ocj0+eChBLGUsaSwhdCxuLHIpKS50aGVuKFIpLnRoZW4oQT0+KHt0YXJnZXRzOkEsZXh0ZW5zaW9uczppfSkpfX19LGZ1bmN0aW9uKEEsZSl7Y2xhc3MgdHtjb25zdHJ1Y3Rvcigpe3RoaXMubGVmdD0tMS8wLHRoaXMucmlnaHQ9MS8wLHRoaXMuYm90dG9tPS0xLzAsdGhpcy50b3A9MS8wfWluaXRGcm9tQm91bmRzKEEsZSx0LG4pe3RoaXMubGVmdD1BLHRoaXMucmlnaHQ9ZSx0aGlzLmJvdHRvbT10LHRoaXMudG9wPW59aW5pdEZyb21Qb2ludHNBQUJCKEEpe3RoaXMubGVmdD0xLzAsdGhpcy5yaWdodD0tMS8wLHRoaXMudG9wPS0xLzAsdGhpcy5ib3R0b209MS8wO2ZvcihsZXQgZT0wO2U8QS5sZW5ndGg7ZSsrKXtjb25zdCB0PUFbZV1bMF0sbj1BW2VdWzFdO3Q8dGhpcy5sZWZ0JiYodGhpcy5sZWZ0PXQpLHQ+dGhpcy5yaWdodCYmKHRoaXMucmlnaHQ9dCksbj50aGlzLnRvcCYmKHRoaXMudG9wPW4pLG48dGhpcy5ib3R0b20mJih0aGlzLmJvdHRvbT1uKX19aW5pdEZyb21Nb2RlbE1hdHJpeChBKXtjb25zdCBlPUFbMTJdLHQ9QVsxM10sbj1NYXRoLmFicyguNSpBWzBdKStNYXRoLmFicyguNSpBWzRdKSxpPU1hdGguYWJzKC41KkFbMV0pK01hdGguYWJzKC41KkFbNV0pO3RoaXMubGVmdD0tbitlLHRoaXMucmlnaHQ9bitlLHRoaXMudG9wPWkrdCx0aGlzLmJvdHRvbT0taSt0fWludGVyc2VjdHMoQSl7cmV0dXJuIHRoaXMubGVmdDw9QS5yaWdodCYmQS5sZWZ0PD10aGlzLnJpZ2h0JiZ0aGlzLnRvcD49QS5ib3R0b20mJkEudG9wPj10aGlzLmJvdHRvbX1jb250YWlucyhBKXtyZXR1cm4gQS5sZWZ0PnRoaXMubGVmdCYmQS5yaWdodDx0aGlzLnJpZ2h0JiZBLnRvcDx0aGlzLnRvcCYmQS5ib3R0b20+dGhpcy5ib3R0b219Y2xhbXAoQSxlLHQsbil7dGhpcy5sZWZ0PU1hdGgubWF4KHRoaXMubGVmdCxBKSx0aGlzLnJpZ2h0PU1hdGgubWluKHRoaXMucmlnaHQsZSksdGhpcy5ib3R0b209TWF0aC5tYXgodGhpcy5ib3R0b20sdCksdGhpcy50b3A9TWF0aC5taW4odGhpcy50b3AsbiksdGhpcy5sZWZ0PU1hdGgubWluKHRoaXMubGVmdCxlKSx0aGlzLnJpZ2h0PU1hdGgubWF4KHRoaXMucmlnaHQsQSksdGhpcy5ib3R0b209TWF0aC5taW4odGhpcy5ib3R0b20sbiksdGhpcy50b3A9TWF0aC5tYXgodGhpcy50b3AsdCl9c25hcFRvSW50KCl7dGhpcy5sZWZ0PU1hdGguZmxvb3IodGhpcy5sZWZ0KSx0aGlzLnJpZ2h0PU1hdGguY2VpbCh0aGlzLnJpZ2h0KSx0aGlzLmJvdHRvbT1NYXRoLmZsb29yKHRoaXMuYm90dG9tKSx0aGlzLnRvcD1NYXRoLmNlaWwodGhpcy50b3ApfXN0YXRpYyBpbnRlcnNlY3QoQSxlKXtsZXQgbj1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bmV3IHQ7cmV0dXJuIG4ubGVmdD1NYXRoLm1heChBLmxlZnQsZS5sZWZ0KSxuLnJpZ2h0PU1hdGgubWluKEEucmlnaHQsZS5yaWdodCksbi50b3A9TWF0aC5taW4oQS50b3AsZS50b3ApLG4uYm90dG9tPU1hdGgubWF4KEEuYm90dG9tLGUuYm90dG9tKSxufXN0YXRpYyB1bmlvbihBLGUpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpuZXcgdDtyZXR1cm4gbi5sZWZ0PU1hdGgubWluKEEubGVmdCxlLmxlZnQpLG4ucmlnaHQ9TWF0aC5tYXgoQS5yaWdodCxlLnJpZ2h0KSxuLnRvcD1NYXRoLm1heChBLnRvcCxlLnRvcCksbi5ib3R0b209TWF0aC5taW4oQS5ib3R0b20sZS5ib3R0b20pLG59Z2V0IHdpZHRoKCl7cmV0dXJuIE1hdGguYWJzKHRoaXMubGVmdC10aGlzLnJpZ2h0KX1nZXQgaGVpZ2h0KCl7cmV0dXJuIE1hdGguYWJzKHRoaXMudG9wLXRoaXMuYm90dG9tKX19QS5leHBvcnRzPXR9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMTcpLHtyZ2JUb0hzdjppLGhzdlRvUmdiOnJ9PXQoNDY1KSxvPXQoMzkpLHM9WzAsMCwwXTtBLmV4cG9ydHM9Y2xhc3N7c3RhdGljIHRyYW5zZm9ybUNvbG9yKEEsZSx0KXtpZigwPT09ZVszXSlyZXR1cm4gZTtsZXQgbj1BLmVuYWJsZWRFZmZlY3RzOyJudW1iZXIiPT10eXBlb2YgdCYmKG4mPXQpO2NvbnN0IGE9QS5nZXRVbmlmb3JtcygpLEI9MCE9KG4mby5FRkZFQ1RfSU5GTy5jb2xvci5tYXNrKSxjPTAhPShuJm8uRUZGRUNUX0lORk8uc2F0dXJhdGlvbi5tYXNrKSxnPTAhPShuJm8uRUZGRUNUX0lORk8uYnJpZ2h0bmVzcy5tYXNrKSxFPTAhPShuJm8uRUZGRUNUX0lORk8udGludENvbG9yLm1hc2spO2lmKEJ8fGN8fGd8fEUpe2NvbnN0IEE9ZVszXS8yNTU7aWYoZVswXS89QSxlWzFdLz1BLGVbMl0vPUEsQil7Y29uc3QgQT1pKGUscyk7QVswXT1hLnVfY29sb3IrQVswXSsxLHIoQSxlKX1pZihjKXtjb25zdCBBPWkoZSxzKTtBWzFdPWEudV9zYXR1cmF0aW9uKkFbMV0scihBLGUpfWlmKGcpe2NvbnN0IEE9MjU1KmEudV9icmlnaHRuZXNzO2VbMF0rPUEsZVsxXSs9QSxlWzJdKz1BfWlmKEUpe2NvbnN0IEE9KEE9Pntjb25zdCBlPUE+PjI0JjI1NTtyZXR1cm57cjpBPj4xNiYyNTUsZzpBPj44JjI1NSxiOjI1NSZBLGE6ZT4wP2U6MjU1fX0pKGEudV90aW50Q29sb3IpO2VbMF0sQS5yLGVbMV0sQS5nLGVbMl0sQS5ifWVbMF0qPUEsZVsxXSo9QSxlWzJdKj1BfXJldHVybiAwIT0obiZvLkVGRkVDVF9JTkZPLmdob3N0Lm1hc2spJiYoZVswXSo9YS51X2dob3N0LGVbMV0qPWEudV9naG9zdCxlWzJdKj1hLnVfZ2hvc3QsZVszXSo9YS51X2dob3N0KSxlfXN0YXRpYyB0cmFuc2Zvcm1Qb2ludChBLGUsdCl7bi52My5jb3B5KGUsdCk7Y29uc3QgaT1BLmVuYWJsZWRFZmZlY3RzLHI9QS5nZXRVbmlmb3JtcygpO2lmKDAhPShpJm8uRUZGRUNUX0lORk8ubW9zYWljLm1hc2spJiYodFswXT1yLnVfbW9zYWljKnRbMF0lMSx0WzFdPXIudV9tb3NhaWMqdFsxXSUxKSwwIT0oaSZvLkVGRkVDVF9JTkZPLnBpeGVsYXRlLm1hc2spKXtjb25zdCBlPUEuc2tpbi5nZXRVbmlmb3JtcygpLG49ZS51X3NraW5TaXplWzBdL3IudV9waXhlbGF0ZSxpPWUudV9za2luU2l6ZVsxXS9yLnVfcGl4ZWxhdGU7dFswXT0oTWF0aC5mbG9vcih0WzBdKm4pKy41KS9uLHRbMV09KE1hdGguZmxvb3IodFsxXSppKSsuNSkvaX1pZigwIT0oaSZvLkVGRkVDVF9JTkZPLndoaXJsLm1hc2spKXtjb25zdCBBPS41LGU9dFswXS0uNSxuPXRbMV0tLjUsaT1NYXRoLnNxcnQoTWF0aC5wb3coZSwyKStNYXRoLnBvdyhuLDIpKSxvPU1hdGgubWF4KDEtaS9BLDApLHM9ci51X3doaXJsKm8qbyxhPU1hdGguc2luKHMpLEI9TWF0aC5jb3MocyksYz1CLGc9LWEsRT1hLFE9Qjt0WzBdPWMqZStFKm4rLjUsdFsxXT1nKmUrUSpuKy41fWlmKDAhPShpJm8uRUZGRUNUX0lORk8uZmlzaGV5ZS5tYXNrKSl7Y29uc3QgQT0odFswXS0uNSkvLjUsZT0odFsxXS0uNSkvLjUsbj1NYXRoLnNxcnQoQSpBK2UqZSksaT1NYXRoLnBvdyhNYXRoLm1pbihuLDEpLHIudV9maXNoZXllKSpNYXRoLm1heCgxLG4pLG89QS9uLHM9ZS9uO3RbMF09LjUraSpvKi41LHRbMV09LjUraSpzKi41fXJldHVybiB0fX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNTMpO24uZW5hYmxlKCksQS5leHBvcnRzPW4oInNjcmF0Y2gtcmVuZGVyIil9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNDcwKSxpPXQoNDc1KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5fbWVhc3VyZW1lbnRQcm92aWRlcj1BLHRoaXMuX2NhY2hlPXt9fXdyYXBUZXh0KEEsZSl7ZT1lLm5vcm1hbGl6ZSgpO2NvbnN0IHQ9IiIuY29uY2F0KEEsIi0iKS5jb25jYXQoZSk7aWYodGhpcy5fY2FjaGVbdF0pcmV0dXJuIHRoaXMuX2NhY2hlW3RdO2NvbnN0IHI9dGhpcy5fbWVhc3VyZW1lbnRQcm92aWRlci5iZWdpbk1lYXN1cmVtZW50U2Vzc2lvbigpLG89bmV3IG4oZSk7bGV0IHMsYT0wLEI9bnVsbDtjb25zdCBjPVtdO2Zvcig7cz1vLm5leHRCcmVhaygpOyl7Y29uc3QgdD1lLnNsaWNlKGEscy5wb3NpdGlvbikucmVwbGFjZSgvXG4rJC8sIiIpO2xldCBuPShCfHwiIikuY29uY2F0KHQpLHI9dGhpcy5fbWVhc3VyZW1lbnRQcm92aWRlci5tZWFzdXJlVGV4dChuKTtpZihyPkEpe2lmKHRoaXMuX21lYXN1cmVtZW50UHJvdmlkZXIubWVhc3VyZVRleHQodCk+QSl7bGV0IGUsbz0wO2Zvcig7byE9PShlPWkubmV4dEJyZWFrKHQsbykpOyl7Y29uc3QgaT10LnN1YnN0cmluZyhvLGUpO249KEJ8fCIiKS5jb25jYXQoaSkscj10aGlzLl9tZWFzdXJlbWVudFByb3ZpZGVyLm1lYXN1cmVUZXh0KG4pLG51bGw9PT1CfHxyPD1BP0I9bjooYy5wdXNoKEIpLEI9aSksbz1lfX1lbHNlIG51bGwhPT1CJiZjLnB1c2goQiksQj10fWVsc2UgQj1uO3MucmVxdWlyZWQmJihudWxsIT09QiYmYy5wdXNoKEIpLEI9bnVsbCksYT1zLnBvc2l0aW9ufXJldHVybiBCPUJ8fCIiLChCLmxlbmd0aD4wfHwwPT09Yy5sZW5ndGgpJiZjLnB1c2goQiksdGhpcy5fY2FjaGVbdF09Yyx0aGlzLl9tZWFzdXJlbWVudFByb3ZpZGVyLmVuZE1lYXN1cmVtZW50U2Vzc2lvbihyKSxjfX19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbixpO2k9dCg0NzEpLG49ZnVuY3Rpb24oKXtmdW5jdGlvbiBBKEEpe3ZhciBlLHQsbjsoZT0iZnVuY3Rpb24iPT10eXBlb2YgQS5yZWFkVUludDMyQkUmJiJmdW5jdGlvbiI9PXR5cGVvZiBBLnNsaWNlKXx8QSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/KGU/KHRoaXMuaGlnaFN0YXJ0PUEucmVhZFVJbnQzMkJFKDApLHRoaXMuZXJyb3JWYWx1ZT1BLnJlYWRVSW50MzJCRSg0KSx0PUEucmVhZFVJbnQzMkJFKDgpLEE9QS5zbGljZSgxMikpOihuPW5ldyBEYXRhVmlldyhBLmJ1ZmZlciksdGhpcy5oaWdoU3RhcnQ9bi5nZXRVaW50MzIoMCksdGhpcy5lcnJvclZhbHVlPW4uZ2V0VWludDMyKDQpLHQ9bi5nZXRVaW50MzIoOCksQT1BLnN1YmFycmF5KDEyKSksQT1pKEEsbmV3IFVpbnQ4QXJyYXkodCkpLEE9aShBLG5ldyBVaW50OEFycmF5KHQpKSx0aGlzLmRhdGE9bmV3IFVpbnQzMkFycmF5KEEuYnVmZmVyKSk6KHRoaXMuZGF0YT1BLmRhdGEsdGhpcy5oaWdoU3RhcnQ9QS5oaWdoU3RhcnQsdGhpcy5lcnJvclZhbHVlPUEuZXJyb3JWYWx1ZSl9cmV0dXJuIDExLDUsNiwzMiw2NCw2MywyLDMyLDMxLDIwNDgsMzIsMjA4MCwyMDgwLDMyLDIxMTIsNCxBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSl7dmFyIGU7cmV0dXJuIEE8MHx8QT4xMTE0MTExP3RoaXMuZXJyb3JWYWx1ZTpBPDU1Mjk2fHxBPjU2MzE5JiZBPD02NTUzNT8oZT0odGhpcy5kYXRhW0E+PjVdPDwyKSsoMzEmQSksdGhpcy5kYXRhW2VdKTpBPD02NTUzNT8oZT0odGhpcy5kYXRhWzIwNDgrKEEtNTUyOTY+PjUpXTw8MikrKDMxJkEpLHRoaXMuZGF0YVtlXSk6QTx0aGlzLmhpZ2hTdGFydD8oZT10aGlzLmRhdGFbMjA4MCsoQT4+MTEpXSxlPSgoZT10aGlzLmRhdGFbZSsoQT4+NSY2MyldKTw8MikrKDMxJkEpLHRoaXMuZGF0YVtlXSk6dGhpcy5kYXRhW3RoaXMuZGF0YS5sZW5ndGgtNF19LEF9KCksQS5leHBvcnRzPW59LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNzQpLGk9e0ltYWdlQml0bWFwOntjb250ZW50VHlwZToiaW1hZ2UvcG5nIixuYW1lOiJJbWFnZUJpdG1hcCIscnVudGltZUZvcm1hdDpuLlBORyxpbW11dGFibGU6ITB9LEltYWdlVmVjdG9yOntjb250ZW50VHlwZToiaW1hZ2Uvc3ZnK3htbCIsbmFtZToiSW1hZ2VWZWN0b3IiLHJ1bnRpbWVGb3JtYXQ6bi5TVkcsaW1tdXRhYmxlOiEwfSxQcm9qZWN0Ontjb250ZW50VHlwZToiYXBwbGljYXRpb24vanNvbiIsbmFtZToiUHJvamVjdCIscnVudGltZUZvcm1hdDpuLkpTT04saW1tdXRhYmxlOiExfSxTb3VuZDp7Y29udGVudFR5cGU6ImF1ZGlvL3gtd2F2IixuYW1lOiJTb3VuZCIscnVudGltZUZvcm1hdDpuLldBVixpbW11dGFibGU6ITB9LFNwcml0ZTp7Y29udGVudFR5cGU6ImFwcGxpY2F0aW9uL2pzb24iLG5hbWU6IlNwcml0ZSIscnVudGltZUZvcm1hdDpuLkpTT04saW1tdXRhYmxlOiEwfSxGb250Ontjb250ZW50VHlwZToiZm9udC90dGYiLG5hbWU6IkZvbnQiLHJ1bnRpbWVGb3JtYXQ6bi5UVEYsaW1tdXRhYmxlOiEwfSxUZXh0QnViYmxlOntjb250ZW50VHlwZToiYXBwbGljYXRpb24vanNvbiIsbmFtZToiVGV4dEJ1YmJsZVByb3BlcnRpZXMiLHJ1bnRpbWVGb3JtYXQ6bi5KU09OLGltbXV0YWJsZTohMH0sRXh0ZXJuYWxGaWxlOntjb250ZW50VHlwZToidGV4dC9wbGFpbiIsbmFtZToiRXh0ZXJuYWxGaWxlIixydW50aW1lRm9ybWF0Om4uVFhULGltbXV0YWJsZTohMX19O0EuZXhwb3J0cz1pfSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnBhcmVudD1BfWxvYWQoQSxlLHQpe3JldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIk5vIGFzc2V0IG9mIHR5cGUgIi5jb25jYXQoQSwiIGZvciBJRCAiKS5jb25jYXQoZSwiIHdpdGggZm9ybWF0ICIpLmNvbmNhdCh0KSkpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNzYpO0EuZXhwb3J0cz1jbGFzcyBleHRlbmRzIG57Z2V0IERFRkFVTFRfVkFMVUUoKXtyZXR1cm4gMTAwfWdldCBuYW1lKCl7cmV0dXJuInZvbHVtZSJ9aW5pdGlhbGl6ZSgpe3RoaXMuaW5wdXROb2RlPXRoaXMuYXVkaW9FbmdpbmUuYXVkaW9Db250ZXh0LmNyZWF0ZUdhaW4oKSx0aGlzLm91dHB1dE5vZGU9dGhpcy5pbnB1dE5vZGUsdGhpcy5pbml0aWFsaXplZD0hMH1fc2V0KEEsZSl7dGhpcy52YWx1ZT1BO2NvbnN0e2dhaW46dH09dGhpcy5vdXRwdXROb2RlLHtjdXJyZW50VGltZTpuLERFQ0FZX0RVUkFUSU9OOml9PXRoaXMuYXVkaW9FbmdpbmU7Im51bWJlciIhPXR5cGVvZiBlP3QubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoQS8xMDAsbitpKTp0LmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKEEvMTAwLG4rKGkrZSkpfWRpc3Bvc2UoKXt0aGlzLmluaXRpYWxpemVkJiYodGhpcy5vdXRwdXROb2RlLmRpc2Nvbm5lY3QoKSx0aGlzLmlucHV0Tm9kZT1udWxsLHRoaXMub3V0cHV0Tm9kZT1udWxsLHRoaXMudGFyZ2V0PW51bGwsdGhpcy5pbml0aWFsaXplZD0hMSl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0NzgpO0EuZXhwb3J0cz1ufSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuLGk9ZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwPT09biYmKG49Qm9vbGVhbih3aW5kb3cmJmRvY3VtZW50JiZkb2N1bWVudC5hbGwmJiF3aW5kb3cuYXRvYikpLG59LHI9ZnVuY3Rpb24oKXt2YXIgQT17fTtyZXR1cm4gZnVuY3Rpb24oZSl7aWYodm9pZCAwPT09QVtlXSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKTtpZih3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQmJnQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQpdHJ5e3Q9dC5jb250ZW50RG9jdW1lbnQuaGVhZH1jYXRjaChBKXt0PW51bGx9QVtlXT10fXJldHVybiBBW2VdfX0oKSxvPVtdO2Z1bmN0aW9uIHMoQSl7Zm9yKHZhciBlPS0xLHQ9MDt0PG8ubGVuZ3RoO3QrKylpZihvW3RdLmlkZW50aWZpZXI9PT1BKXtlPXQ7YnJlYWt9cmV0dXJuIGV9ZnVuY3Rpb24gYShBLGUpe2Zvcih2YXIgdD17fSxuPVtdLGk9MDtpPEEubGVuZ3RoO2krKyl7dmFyIHI9QVtpXSxhPWUuYmFzZT9yWzBdK2UuYmFzZTpyWzBdLEI9dFthXXx8MCxjPSIiLmNvbmNhdChhLCIgIikuY29uY2F0KEIpO3RbYV09QisxO3ZhciBnPXMoYyksRT17Y3NzOnJbMV0sbWVkaWE6clsyXSxzb3VyY2VNYXA6clszXX07LTEhPT1nPyhvW2ddLnJlZmVyZW5jZXMrKyxvW2ddLnVwZGF0ZXIoRSkpOm8ucHVzaCh7aWRlbnRpZmllcjpjLHVwZGF0ZXI6aChFLGUpLHJlZmVyZW5jZXM6MX0pLG4ucHVzaChjKX1yZXR1cm4gbn1mdW5jdGlvbiBCKEEpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIiksbj1BLmF0dHJpYnV0ZXN8fHt9O2lmKHZvaWQgMD09PW4ubm9uY2Upe3ZhciBpPXQubmM7aSYmKG4ubm9uY2U9aSl9aWYoT2JqZWN0LmtleXMobikuZm9yRWFjaCgoZnVuY3Rpb24oQSl7ZS5zZXRBdHRyaWJ1dGUoQSxuW0FdKX0pKSwiZnVuY3Rpb24iPT10eXBlb2YgQS5pbnNlcnQpQS5pbnNlcnQoZSk7ZWxzZXt2YXIgbz1yKEEuaW5zZXJ0fHwiaGVhZCIpO2lmKCFvKXRocm93IG5ldyBFcnJvcigiQ291bGRuJ3QgZmluZCBhIHN0eWxlIHRhcmdldC4gVGhpcyBwcm9iYWJseSBtZWFucyB0aGF0IHRoZSB2YWx1ZSBmb3IgdGhlICdpbnNlcnQnIHBhcmFtZXRlciBpcyBpbnZhbGlkLiIpO28uYXBwZW5kQ2hpbGQoZSl9cmV0dXJuIGV9dmFyIGMsZz0oYz1bXSxmdW5jdGlvbihBLGUpe3JldHVybiBjW0FdPWUsYy5maWx0ZXIoQm9vbGVhbikuam9pbigiXG4iKX0pO2Z1bmN0aW9uIEUoQSxlLHQsbil7dmFyIGk9dD8iIjpuLm1lZGlhPyJAbWVkaWEgIi5jb25jYXQobi5tZWRpYSwiIHsiKS5jb25jYXQobi5jc3MsIn0iKTpuLmNzcztpZihBLnN0eWxlU2hlZXQpQS5zdHlsZVNoZWV0LmNzc1RleHQ9ZyhlLGkpO2Vsc2V7dmFyIHI9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoaSksbz1BLmNoaWxkTm9kZXM7b1tlXSYmQS5yZW1vdmVDaGlsZChvW2VdKSxvLmxlbmd0aD9BLmluc2VydEJlZm9yZShyLG9bZV0pOkEuYXBwZW5kQ2hpbGQocil9fWZ1bmN0aW9uIFEoQSxlLHQpe3ZhciBuPXQuY3NzLGk9dC5tZWRpYSxyPXQuc291cmNlTWFwO2lmKGk/QS5zZXRBdHRyaWJ1dGUoIm1lZGlhIixpKTpBLnJlbW92ZUF0dHJpYnV0ZSgibWVkaWEiKSxyJiYidW5kZWZpbmVkIiE9dHlwZW9mIGJ0b2EmJihuKz0iXG4vKiMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIuY29uY2F0KGJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KHIpKSkpLCIgKi8iKSksQS5zdHlsZVNoZWV0KUEuc3R5bGVTaGVldC5jc3NUZXh0PW47ZWxzZXtmb3IoO0EuZmlyc3RDaGlsZDspQS5yZW1vdmVDaGlsZChBLmZpcnN0Q2hpbGQpO0EuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobikpfX12YXIgdT1udWxsLGw9MDtmdW5jdGlvbiBoKEEsZSl7dmFyIHQsbixpO2lmKGUuc2luZ2xldG9uKXt2YXIgcj1sKys7dD11fHwodT1CKGUpKSxuPUUuYmluZChudWxsLHQsciwhMSksaT1FLmJpbmQobnVsbCx0LHIsITApfWVsc2UgdD1CKGUpLG49US5iaW5kKG51bGwsdCxlKSxpPWZ1bmN0aW9uKCl7IWZ1bmN0aW9uKEEpe2lmKG51bGw9PT1BLnBhcmVudE5vZGUpcmV0dXJuITE7QS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKEEpfSh0KX07cmV0dXJuIG4oQSksZnVuY3Rpb24oZSl7aWYoZSl7aWYoZS5jc3M9PT1BLmNzcyYmZS5tZWRpYT09PUEubWVkaWEmJmUuc291cmNlTWFwPT09QS5zb3VyY2VNYXApcmV0dXJuO24oQT1lKX1lbHNlIGkoKX19QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7KGU9ZXx8e30pLnNpbmdsZXRvbnx8ImJvb2xlYW4iPT10eXBlb2YgZS5zaW5nbGV0b258fChlLnNpbmdsZXRvbj1pKCkpO3ZhciB0PWEoQT1BfHxbXSxlKTtyZXR1cm4gZnVuY3Rpb24oQSl7aWYoQT1BfHxbXSwiW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpKXtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIGk9cyh0W25dKTtvW2ldLnJlZmVyZW5jZXMtLX1mb3IodmFyIHI9YShBLGUpLEI9MDtCPHQubGVuZ3RoO0IrKyl7dmFyIGM9cyh0W0JdKTswPT09b1tjXS5yZWZlcmVuY2VzJiYob1tjXS51cGRhdGVyKCksby5zcGxpY2UoYywxKSl9dD1yfX19fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO0EuZXhwb3J0cz1mdW5jdGlvbihBKXt2YXIgZT1bXTtyZXR1cm4gZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcCgoZnVuY3Rpb24oZSl7dmFyIHQ9QShlKTtyZXR1cm4gZVsyXT8iQG1lZGlhICIuY29uY2F0KGVbMl0sIiB7IikuY29uY2F0KHQsIn0iKTp0fSkpLmpvaW4oIiIpfSxlLmk9ZnVuY3Rpb24oQSx0LG4peyJzdHJpbmciPT10eXBlb2YgQSYmKEE9W1tudWxsLEEsIiJdXSk7dmFyIGk9e307aWYobilmb3IodmFyIHI9MDtyPHRoaXMubGVuZ3RoO3IrKyl7dmFyIG89dGhpc1tyXVswXTtudWxsIT1vJiYoaVtvXT0hMCl9Zm9yKHZhciBzPTA7czxBLmxlbmd0aDtzKyspe3ZhciBhPVtdLmNvbmNhdChBW3NdKTtuJiZpW2FbMF1dfHwodCYmKGFbMl0/YVsyXT0iIi5jb25jYXQodCwiIGFuZCAiKS5jb25jYXQoYVsyXSk6YVsyXT10KSxlLnB1c2goYSkpfX0sZX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV8fChlPXt9KSwic3RyaW5nIiE9dHlwZW9mKEE9QSYmQS5fX2VzTW9kdWxlP0EuZGVmYXVsdDpBKT9BOigvXlsnIl0uKlsnIl0kLy50ZXN0KEEpJiYoQT1BLnNsaWNlKDEsLTEpKSxlLmhhc2gmJihBKz1lLmhhc2gpLC9bIicoKSBcdFxuXS8udGVzdChBKXx8ZS5uZWVkUXVvdGVzPyciJy5jb25jYXQoQS5yZXBsYWNlKC8iL2csJ1xcIicpLnJlcGxhY2UoL1xuL2csIlxcbiIpLCciJyk6QSl9fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO2UuYT0iZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCMmFXVjNRbTk0UFNJd0lEQWdNalFnTWpRaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRUSXdMamMzTXpVNU5TQTFMamN5T0RBMU1UbGhNUzR6TURjM056YzBJREV1TXpBM056YzNOQ0F3SURBZ01DMHhMamcxTnpBME15QXdURGt1TVRjek5qRXdOU0F4TlM0ME9EUXdOekZzTFRRdU1Ea3pNelF6TWkwMExqRXdOalF5WVRFdU16TTJORFEyT0NBeExqTXpOalEwTmpnZ01DQXhJREF0TVM0NE5UY3dORE01SURFdU9USXlORE15YkRVdU1ESXhPRFkxTVNBMUxqQXlNVGcyTm1FeExqTXdOemMzTnpRZ01TNHpNRGMzTnpjMElEQWdNQ0F3SURFdU9EVTNNRFEwTlNBd1RESXdMamMzTXpVNU5TQTNMalkxTURRNE5EZGhNUzR6TURjM056YzBJREV1TXpBM056YzNOQ0F3SURBZ01DQXdMVEV1T1RJeU5ETXlPSG9pSUdacGJHdzlJaU5tWm1ZaUx6NDhMM04yWno0PSJ9LGZ1bmN0aW9uKEEpe0EuZXhwb3J0cz1KU09OLnBhcnNlKCd7InZhci14IjoieCBwb3NpdGlvbiIsInZhci15IjoieSBwb3NpdGlvbiIsInZhci1kaXJlY3Rpb24iOiJkaXJlY3Rpb24iLCJ2YXItdXNlcm5hbWUiOiJ1c2VybmFtZSIsInZhci1jb3N0dW1lLW51bWJlciI6ImNvc3R1bWUgbnVtYmVyIiwidmFyLWNvc3R1bWUtbmFtZSI6ImNvc3R1bWUgbmFtZSIsInZhci1iYWNrZHJvcC1udW1iZXIiOiJiYWNrZHJvcCBudW1iZXIiLCJ2YXItYmFja2Ryb3AtbmFtZSI6ImJhY2tkcm9wIG5hbWUiLCJ2YXItc2l6ZSI6InNpemUiLCJ2YXItYW5zd2VyIjoiYW5zd2VyIiwidmFyLW1vdXNlZG93biI6Im1vdXNlIGRvd24/IiwidmFyLW1vdXNlY2xpY2tlZCI6Im1vdXNlIGNsaWNrZWQ/IiwidmFyLW1vdXNleCI6Im1vdXNlIHgiLCJ2YXItbW91c2V5IjoibW91c2UgeSIsInZhci1nZXRjbGlwYm9hcmQiOiJjbGlwYm9hcmQgaXRlbSIsInZhci1nZXRkcmFnbW9kZSI6ImRyYWdnYWJsZT8iLCJ2YXItbG91ZG5lc3MiOiJsb3VkbmVzcyIsInZhci1sb3VkIjoibG91ZD8iLCJ2YXItdGltZXIiOiJ0aW1lciIsInZhci1kYXlzc2luY2UyMDAwIjoiZGF5cyBzaW5jZSAyMDAwIiwidmFyLWxvZ2dlZGluIjoibG9nZ2VkIGluPyIsInZhci12b2x1bWUiOiJ2b2x1bWUiLCJ2YXIteWVhciI6InllYXIiLCJ2YXItbW9udGgiOiJtb250aCIsInZhci1kYXRlIjoiZGF0ZSIsInZhci1kYXktb2Ytd2VlayI6ImRheSBvZiB3ZWVrIiwidmFyLWhvdXIiOiJob3VyIiwidmFyLW1pbnV0ZSI6Im1pbnV0ZSIsInZhci1zZWNvbmQiOiJzZWNvbmQiLCJ2YXItZ2V0X2NvdW50ZXIiOiJjb3VudGVyIiwidmFyLXN0cmV0Y2gteCI6InN0cmV0Y2ggeCIsInZhci1zdHJldGNoLXkiOiJzdHJldGNoIHkiLCJ2YXItc2F5LXdpZHRoIjoiYnViYmxlIHdpZHRoIiwidmFyLXNheS1oZWlnaHQiOiJidWJibGUgaGVpZ2h0IiwidmFyLWVmZmVjdCI6ImVmZmVjdCIsInZhci1jb2xvci1lZmZlY3QiOiJjb2xvciBlZmZlY3QiLCJ2YXItZmlzaGV5ZS1lZmZlY3QiOiJmaXNoZXllIGVmZmVjdCIsInZhci13aGlybC1lZmZlY3QiOiJ3aGlybCBlZmZlY3QiLCJ2YXItcGl4ZWxhdGUtZWZmZWN0IjoicGl4ZWxhdGUgZWZmZWN0IiwidmFyLW1vc2FpYy1lZmZlY3QiOiJtb3NhaWMgZWZmZWN0IiwidmFyLWJyaWdodG5lc3MtZWZmZWN0IjoiYnJpZ2h0bmVzcyBlZmZlY3QiLCJ2YXItZ2hvc3QtZWZmZWN0IjoiZ2hvc3QgZWZmZWN0IiwidmFyLXNhdHVyYXRpb24tZWZmZWN0Ijoic2F0dXJhdGlvbiBlZmZlY3QiLCJ2YXItcmVkLWVmZmVjdCI6InJlZCBlZmZlY3QiLCJ2YXItZ3JlZW4tZWZmZWN0IjoiZ3JlZW4gZWZmZWN0IiwidmFyLWJsdWUtZWZmZWN0IjoiYmx1ZSBlZmZlY3QiLCJ2YXItb3BhcXVlLWVmZmVjdCI6Im9wYXF1ZSBlZmZlY3QiLCJ2YXItdGludC1jb2xvciI6InRpbnQgY29sb3IiLCJ2YXItdmlzaWJsZSI6InZpc2libGU/IiwidmFyLWxheWVyIjoibGF5ZXIiLCJ2YXItc291bmQtZWZmZWN0IjoiZWZmZWN0IiwidmFyLXBpdGNoLXNvdW5kLWVmZmVjdCI6InBpdGNoIGVmZmVjdCIsInZhci1wYW4tc291bmQtZWZmZWN0IjoicGFuIGxlZnQvcmlnaHQgZWZmZWN0IiwibGlzdC1lbXB0eSI6IihlbXB0eSkiLCJsaXN0LWxlbmd0aCI6Imxlbmd0aCB7bn0iLCJsaXN0LWltcG9ydCI6ImltcG9ydCIsImxpc3QtZXhwb3J0IjoiZXhwb3J0In0nKX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWxldCBvO289InVuZGVmaW5lZCI9PXR5cGVvZiBUZXh0RW5jb2Rlcj90KDMwKS5UZXh0RW5jb2RlcjpUZXh0RW5jb2Rlcjtjb25zdCBzPXQoMjcpLGE9dCgzMyksQj10KDIwKS5CdWZmZXIsYz10KDgyKSxnPXQoMTQyKSxFPXQoNSksUT10KDYpLHU9dCg5MSksbD10KDExKSxoPXQoNjgpLHc9dCgxNiksQz10KDcxKSxJPXQoMjIpLE09dCg0NyksZD10KDQpLHA9dCg2MiksbT10KDE5KSxGPXQoMTA5KSx7bG9hZENvc3R1bWU6RH09dCg0OSkse2xvYWRTb3VuZDpZfT10KDQ4KSx7c2VyaWFsaXplU291bmRzOmYsc2VyaWFsaXplQ29zdHVtZXM6Tn09dCg0NDApO3QoNDQxKTtjb25zdHtleHBvcnRDb3N0dW1lOlV9PXQoMTA4KSx5PXQoMjMpLFQ9WyJfbW91c2VfIiwiX3N0YWdlXyIsIl9lZGdlXyIsIl9teXNlbGZfIiwiX3JhbmRvbV8iXSx4PSJodHRwczovL2xpYnJhcnkucGVuZ3Vpbm1vZC5jb20vIixSPXQoNTgpLEc9dCg2MCksUz10KDQzKSx7U3ludGhldGljTW9kdWxlOmJ9PXQoNDQyKSxIPVtdO2Quc2V0dXAoe21pc3NpbmdUcmFuc2xhdGlvbjoiaWdub3JlIn0pO0EuZXhwb3J0cz1jbGFzcyBleHRlbmRzIHN7Y29uc3RydWN0b3IoKXtzdXBlcigpLHIodGhpcywiX3Byb2plY3RaaXAiLG5ldyBhKSx0aGlzLnJ1bnRpbWU9bmV3IHUsYy5zZXRTZXJ2aWNlKCJydW50aW1lIiwoQT0+e2NvbnN0IGU9e307cmV0dXJuIGUuX3JlZnJlc2hFeHRlbnNpb25QcmltaXRpdmVzPUEuX3JlZnJlc2hFeHRlbnNpb25QcmltaXRpdmVzLmJpbmQoQSksZS5fcmVnaXN0ZXJFeHRlbnNpb25QcmltaXRpdmVzPUEuX3JlZ2lzdGVyRXh0ZW5zaW9uUHJpbWl0aXZlcy5iaW5kKEEpLGUuX3JlbW92ZUV4dGVuc2lvblByaW1pdGl2ZT1BLl9yZW1vdmVFeHRlbnNpb25QcmltaXRpdmUuYmluZChBKSxlfSkodGhpcy5ydW50aW1lKSkuY2F0Y2goQT0+e0UuZXJyb3IoIkZhaWxlZCB0byByZWdpc3RlciBydW50aW1lIHNlcnZpY2U6ICIuY29uY2F0KEpTT04uc3RyaW5naWZ5KEEpKSl9KSx0aGlzLmVkaXRpbmdUYXJnZXQ9bnVsbCx0aGlzLl9kcmFnVGFyZ2V0PW51bGwsdGhpcy5ydW50aW1lLm9uKHUuU0NSSVBUX0dMT1dfT04sQT0+e3RoaXMuZW1pdCh1LlNDUklQVF9HTE9XX09OLEEpfSksdGhpcy5ydW50aW1lLm9uKHUuU0NSSVBUX0dMT1dfT0ZGLEE9Pnt0aGlzLmVtaXQodS5TQ1JJUFRfR0xPV19PRkYsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5CTE9DS19HTE9XX09OLEE9Pnt0aGlzLmVtaXQodS5CTE9DS19HTE9XX09OLEEpfSksdGhpcy5ydW50aW1lLm9uKHUuQkxPQ0tfR0xPV19PRkYsQT0+e3RoaXMuZW1pdCh1LkJMT0NLX0dMT1dfT0ZGLEEpfSksdGhpcy5ydW50aW1lLm9uKHUuUFJPSkVDVF9TVEFSVCwoKT0+e3RoaXMuZW1pdCh1LlBST0pFQ1RfU1RBUlQpfSksdGhpcy5ydW50aW1lLm9uKHUuUFJPSkVDVF9SVU5fU1RBUlQsKCk9Pnt0aGlzLmVtaXQodS5QUk9KRUNUX1JVTl9TVEFSVCl9KSx0aGlzLnJ1bnRpbWUub24odS5QUk9KRUNUX1JVTl9TVE9QLCgpPT57dGhpcy5lbWl0KHUuUFJPSkVDVF9SVU5fU1RPUCl9KSx0aGlzLnJ1bnRpbWUub24odS5QUk9KRUNUX0NIQU5HRUQsKCk9Pnt0aGlzLmVtaXQodS5QUk9KRUNUX0NIQU5HRUQpfSksdGhpcy5ydW50aW1lLm9uKHUuVklTVUFMX1JFUE9SVCxBPT57dGhpcy5lbWl0KHUuVklTVUFMX1JFUE9SVCxBKX0pLHRoaXMucnVudGltZS5vbih1LkJMT0NLX1NUQUNLX0VSUk9SLEE9Pnt0aGlzLmVtaXQodS5CTE9DS19TVEFDS19FUlJPUixBKX0pLHRoaXMucnVudGltZS5vbih1LlRBUkdFVFNfVVBEQVRFLEE9Pnt0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKEEpfSksdGhpcy5ydW50aW1lLm9uKHUuTU9OSVRPUlNfVVBEQVRFLEE9Pnt0aGlzLmVtaXQodS5NT05JVE9SU19VUERBVEUsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5CTE9DS19EUkFHX1VQREFURSxBPT57dGhpcy5lbWl0KHUuQkxPQ0tfRFJBR19VUERBVEUsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5CTE9DS19EUkFHX0VORCwoQSxlKT0+e3RoaXMuZW1pdCh1LkJMT0NLX0RSQUdfRU5ELEEsZSl9KSx0aGlzLnJ1bnRpbWUub24odS5FWFRFTlNJT05fQURERUQsQT0+e3RoaXMuZW1pdCh1LkVYVEVOU0lPTl9BRERFRCxBKX0pLHRoaXMucnVudGltZS5vbih1LkVYVEVOU0lPTl9SRU1PVkVELCgpPT57dGhpcy5lbWl0KHUuRVhURU5TSU9OX1JFTU9WRUQpfSksdGhpcy5ydW50aW1lLm9uKHUuRVhURU5TSU9OX0ZJRUxEX0FEREVELChBLGUpPT57dGhpcy5lbWl0KHUuRVhURU5TSU9OX0ZJRUxEX0FEREVELEEsZSl9KSx0aGlzLnJ1bnRpbWUub24odS5CTE9DS1NJTkZPX1VQREFURSxBPT57dGhpcy5lbWl0KHUuQkxPQ0tTSU5GT19VUERBVEUsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5CTE9DS1NfTkVFRF9VUERBVEUsKCk9Pnt0aGlzLmVtaXRXb3Jrc3BhY2VVcGRhdGUoKX0pLHRoaXMucnVudGltZS5vbih1LlRPT0xCT1hfRVhURU5TSU9OU19ORUVEX1VQREFURSwoKT0+e3RoaXMuZXh0ZW5zaW9uTWFuYWdlci5yZWZyZXNoQmxvY2tzKCl9KSx0aGlzLnJ1bnRpbWUub24odS5QRVJJUEhFUkFMX0xJU1RfVVBEQVRFLEE9Pnt0aGlzLmVtaXQodS5QRVJJUEhFUkFMX0xJU1RfVVBEQVRFLEEpfSksdGhpcy5ydW50aW1lLm9uKHUuVVNFUl9QSUNLRURfUEVSSVBIRVJBTCxBPT57dGhpcy5lbWl0KHUuVVNFUl9QSUNLRURfUEVSSVBIRVJBTCxBKX0pLHRoaXMucnVudGltZS5vbih1LlBFUklQSEVSQUxfQ09OTkVDVEVELCgpPT50aGlzLmVtaXQodS5QRVJJUEhFUkFMX0NPTk5FQ1RFRCkpLHRoaXMucnVudGltZS5vbih1LlBFUklQSEVSQUxfUkVRVUVTVF9FUlJPUiwoKT0+dGhpcy5lbWl0KHUuUEVSSVBIRVJBTF9SRVFVRVNUX0VSUk9SKSksdGhpcy5ydW50aW1lLm9uKHUuUEVSSVBIRVJBTF9ESVNDT05ORUNURUQsKCk9PnRoaXMuZW1pdCh1LlBFUklQSEVSQUxfRElTQ09OTkVDVEVEKSksdGhpcy5ydW50aW1lLm9uKHUuUEVSSVBIRVJBTF9DT05ORUNUSU9OX0xPU1RfRVJST1IsQT0+dGhpcy5lbWl0KHUuUEVSSVBIRVJBTF9DT05ORUNUSU9OX0xPU1RfRVJST1IsQSkpLHRoaXMucnVudGltZS5vbih1LlBFUklQSEVSQUxfU0NBTl9USU1FT1VULCgpPT50aGlzLmVtaXQodS5QRVJJUEhFUkFMX1NDQU5fVElNRU9VVCkpLHRoaXMucnVudGltZS5vbih1Lk1JQ19MSVNURU5JTkcsQT0+e3RoaXMuZW1pdCh1Lk1JQ19MSVNURU5JTkcsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5SVU5USU1FX1NUQVJURUQsKCk9Pnt0aGlzLmVtaXQodS5SVU5USU1FX1NUQVJURUQpfSksdGhpcy5ydW50aW1lLm9uKHUuUlVOVElNRV9QQVVTRUQsKCk9Pnt0aGlzLmVtaXQodS5SVU5USU1FX1BBVVNFRCl9KSx0aGlzLnJ1bnRpbWUub24odS5SVU5USU1FX1VOUEFVU0VELCgpPT57dGhpcy5lbWl0KHUuUlVOVElNRV9VTlBBVVNFRCl9KSx0aGlzLnJ1bnRpbWUub24odS5SVU5USU1FX1NUT1BQRUQsKCk9Pnt0aGlzLmVtaXQodS5SVU5USU1FX1NUT1BQRUQpfSksdGhpcy5ydW50aW1lLm9uKHUuSEFTX0NMT1VEX0RBVEFfVVBEQVRFLEE9Pnt0aGlzLmVtaXQodS5IQVNfQ0xPVURfREFUQV9VUERBVEUsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5SVU5USU1FX09QVElPTlNfQ0hBTkdFRCxBPT57dGhpcy5lbWl0KHUuUlVOVElNRV9PUFRJT05TX0NIQU5HRUQsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5DT01QSUxFUl9PUFRJT05TX0NIQU5HRUQsQT0+e3RoaXMuZW1pdCh1LkNPTVBJTEVSX09QVElPTlNfQ0hBTkdFRCxBKX0pLHRoaXMucnVudGltZS5vbih1LkZSQU1FUkFURV9DSEFOR0VELEE9Pnt0aGlzLmVtaXQodS5GUkFNRVJBVEVfQ0hBTkdFRCxBKX0pLHRoaXMucnVudGltZS5vbih1LklOVEVSUE9MQVRJT05fQ0hBTkdFRCxBPT57dGhpcy5lbWl0KHUuSU5URVJQT0xBVElPTl9DSEFOR0VELEEpfSksdGhpcy5ydW50aW1lLm9uKHUuQkVGT1JFX0lOVEVSUE9MQVRFLEE9Pnt0aGlzLmVtaXQodS5CRUZPUkVfSU5URVJQT0xBVEUsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5BRlRFUl9JTlRFUlBPTEFURSxBPT57dGhpcy5lbWl0KHUuQUZURVJfSU5URVJQT0xBVEUsQSl9KSx0aGlzLnJ1bnRpbWUub24odS5TVEFHRV9TSVpFX0NIQU5HRUQsKEEsZSk9Pnt0aGlzLmVtaXQodS5TVEFHRV9TSVpFX0NIQU5HRUQsQSxlKX0pLHRoaXMucnVudGltZS5vbih1LkNPTVBJTEVfRVJST1IsKEEsZSk9Pnt0aGlzLmVtaXQodS5DT01QSUxFX0VSUk9SLEEsZSl9KSx0aGlzLnJ1bnRpbWUub24odS5UVVJCT19NT0RFX09GRiwoKT0+e3RoaXMuZW1pdCh1LlRVUkJPX01PREVfT0ZGKX0pLHRoaXMucnVudGltZS5vbih1LlRVUkJPX01PREVfT04sKCk9Pnt0aGlzLmVtaXQodS5UVVJCT19NT0RFX09OKX0pLHRoaXMuZXh0ZW5zaW9uTWFuYWdlcj1uZXcgZyh0aGlzKSx0aGlzLnNlY3VyaXR5TWFuYWdlcj10aGlzLmV4dGVuc2lvbk1hbmFnZXIuc2VjdXJpdHlNYW5hZ2VyLHRoaXMucnVudGltZS5leHRlbnNpb25NYW5hZ2VyPXRoaXMuZXh0ZW5zaW9uTWFuYWdlcix0aGlzLnJ1bnRpbWUudm09dGhpcztmb3IoY29uc3QgQSBvZiBIKXRoaXMuZXh0ZW5zaW9uTWFuYWdlci5sb2FkRXh0ZW5zaW9uSWRTeW5jKEEpO3RoaXMuYmxvY2tMaXN0ZW5lcj10aGlzLmJsb2NrTGlzdGVuZXIuYmluZCh0aGlzKSx0aGlzLmZseW91dEJsb2NrTGlzdGVuZXI9dGhpcy5mbHlvdXRCbG9ja0xpc3RlbmVyLmJpbmQodGhpcyksdGhpcy5tb25pdG9yQmxvY2tMaXN0ZW5lcj10aGlzLm1vbml0b3JCbG9ja0xpc3RlbmVyLmJpbmQodGhpcyksdGhpcy52YXJpYWJsZUxpc3RlbmVyPXRoaXMudmFyaWFibGVMaXN0ZW5lci5iaW5kKHRoaXMpLHRoaXMuYWRkTGlzdGVuZXIoIndvcmtzcGFjZVVwZGF0ZSIsKCk9Pnt0aGlzLmV4dGVuc2lvbk1hbmFnZXIucmVmcmVzaER5bmFtaWNDYXRlZ29yeXMoKX0pLHRoaXMuZXhwb3J0cz17U3ByaXRlOkMsUmVuZGVyZWRUYXJnZXQ6aCxKU1ppcDphLEpTR2VuZXJhdG9yOkcsSVJHZW5lcmF0b3I6Uixqc2V4ZWN1dGU6Uyxsb2FkQ29zdHVtZTpELGxvYWRTb3VuZDpZLEJsb2NrczpJLENvbW1lbnQ6TSxTdGFnZUxheWVyaW5nOncsVmFyaWFibGU6bSxUaHJlYWQ6dCgzNiksZXhlY3V0ZTp0KDYxKSxjZW50cmFsRGlzcGF0Y2g6Y30sdGhpcy5leHBvcnRzLmlfd2lsbF9ub3RfYXNrX2Zvcl9oZWxwX3doZW5fdGhlc2VfYnJlYWs9KCk9Pihjb25zb2xlLmluZm8oIk5vdGUgb24gaV93aWxsX25vdF9hc2tfZm9yX2hlbHBfd2hlbl90aGVzZV9icmVhazogdGhpcyBmdW5jdGlvbiBpcyBvbmx5IGluY2x1ZGVkIGZvciBjb21wYXRpYmlsaXR5IHdpdGggVHVyYm9XYXJwLCBhbmQgeW91IHNob3VsZCBhdm9pZCB1c2luZyBpdCB3aGVuIHBvc3NpYmxlLlxuQWxsIGluZGV4ZXMgYXJlIGFibGUgdG8gYmUgYWNjZXNzZWQgZnJvbSB0aGUgcmVndWxhciB2bS5leHBvcnRzIHByb3BlcnR5LiBCZWxvdyBpcyBhIG1hcCBvZiBhbGwgZWxlbWVudHMgaGVyZSB0byB0aGVpciB2bS5leHBvcnRzIGNvdW50ZXJwYXJ0OlxuSVJHZW5lcmF0b3IgLT4gSVJHZW5lcmF0b3JcbkpTR2VuZXJhdG9yIC0+IEpTR2VuZXJhdG9yXG5UaHJlYWQgLT4gVGhyZWFkXG5leGVjdXRlIC0+IGV4ZWN1dGVcblNjcmlwdFRyZWVHZW5lcmF0b3IgLT4gSVJHZW5lcmF0b3IuZXhwb3J0cy5TY3JpcHRUcmVlR2VuZXJhdG9yIikse0lSR2VuZXJhdG9yOlIsSlNHZW5lcmF0b3I6RyxTY3JpcHRUcmVlR2VuZXJhdG9yOlIuZXhwb3J0cy5TY3JpcHRUcmVlR2VuZXJhdG9yLFRocmVhZDp0aGlzLmV4cG9ydHMuVGhyZWFkLGV4ZWN1dGU6dGhpcy5leHBvcnRzLmV4ZWN1dGV9KX1zdGFydCgpe3RoaXMucnVudGltZS5zdGFydCgpfXN0b3AoKXt0aGlzLnJ1bnRpbWUuc3RvcCgpfWdyZWVuRmxhZygpe3RoaXMucnVudGltZS5ncmVlbkZsYWcoKX1zZXRUdXJib01vZGUoQSl7dGhpcy5ydW50aW1lLnR1cmJvTW9kZT0hIUEsdGhpcy5ydW50aW1lLnR1cmJvTW9kZT90aGlzLmVtaXQodS5UVVJCT19NT0RFX09OKTp0aGlzLmVtaXQodS5UVVJCT19NT0RFX09GRil9c2V0Q29tcGF0aWJpbGl0eU1vZGUoQSl7dGhpcy5ydW50aW1lLnNldENvbXBhdGliaWxpdHlNb2RlKCEhQSl9c2V0RnJhbWVyYXRlKEEpe3RoaXMucnVudGltZS5zZXRGcmFtZXJhdGUoQSl9c2V0SW50ZXJwb2xhdGlvbihBKXt0aGlzLnJ1bnRpbWUuc2V0SW50ZXJwb2xhdGlvbihBKX1zZXRSdW50aW1lT3B0aW9ucyhBKXt0aGlzLnJ1bnRpbWUuc2V0UnVudGltZU9wdGlvbnMoQSl9c2V0Q29tcGlsZXJPcHRpb25zKEEpe3RoaXMucnVudGltZS5zZXRDb21waWxlck9wdGlvbnMoQSl9c2V0U3RhZ2VTaXplKEEsZSl7dGhpcy5ydW50aW1lLnNldFN0YWdlU2l6ZShBLGUpfXNldEluRWRpdG9yKEEpe3RoaXMucnVudGltZS5zZXRJbkVkaXRvcihBKX1jb252ZXJ0VG9QYWNrYWdlZFJ1bnRpbWUoKXt0aGlzLnJ1bnRpbWUuY29udmVydFRvUGFja2FnZWRSdW50aW1lKCl9YWRkQWRkb25CbG9jayhBKXt0aGlzLnJ1bnRpbWUuYWRkQWRkb25CbG9jayhBKX1nZXRBZGRvbkJsb2NrKEEpe3JldHVybiB0aGlzLnJ1bnRpbWUuZ2V0QWRkb25CbG9jayhBKX1zdG9yZVByb2plY3RPcHRpb25zKCl7dGhpcy5ydW50aW1lLnN0b3JlUHJvamVjdE9wdGlvbnMoKSx0aGlzLmVkaXRpbmdUYXJnZXQuaXNTdGFnZSYmdGhpcy5lbWl0V29ya3NwYWNlVXBkYXRlKCl9ZW5hYmxlRGVidWcoKXtyZXR1cm4gdGhpcy5ydW50aW1lLmVuYWJsZURlYnVnKCksImVuYWJsZWQgZGVidWcgbW9kZSJ9c3RvcEFsbCgpe3RoaXMucnVudGltZS5zdG9wQWxsKCl9Y2xlYXIoKXt0aGlzLnJ1bnRpbWUuZGlzcG9zZSgpLHRoaXMuZWRpdGluZ1RhcmdldD1udWxsLHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoITEpfWdldFBsYXlncm91bmREYXRhKCl7Y29uc3QgQT10aGlzLGU9dGhpcy5ydW50aW1lLnRocmVhZHMuZmlsdGVyKGU9PmUudGFyZ2V0PT09QS5lZGl0aW5nVGFyZ2V0KSx0PUpTT04uc3RyaW5naWZ5KGUsKEEsZSk9PntpZigidGFyZ2V0IiE9PUEmJiJibG9ja0NvbnRhaW5lciIhPT1BKXJldHVybiBlfSwyKTt0aGlzLmVtaXQoInBsYXlncm91bmREYXRhIix7YmxvY2tzOnRoaXMuZWRpdGluZ1RhcmdldC5ibG9ja3MsdGhyZWFkczp0fSl9cG9zdElPRGF0YShBLGUpe3RoaXMucnVudGltZS5pb0RldmljZXNbQV0mJnRoaXMucnVudGltZS5pb0RldmljZXNbQV0ucG9zdERhdGEoZSl9c2V0VmlkZW9Qcm92aWRlcihBKXt0aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLnZpZGVvLnNldFByb3ZpZGVyKEEpfXNldENsb3VkUHJvdmlkZXIoQSl7dGhpcy5ydW50aW1lLmlvRGV2aWNlcy5jbG91ZC5zZXRQcm92aWRlcihBKX1zY2FuRm9yUGVyaXBoZXJhbChBKXt0aGlzLnJ1bnRpbWUuc2NhbkZvclBlcmlwaGVyYWwoQSl9Y29ubmVjdFBlcmlwaGVyYWwoQSxlKXt0aGlzLnJ1bnRpbWUuY29ubmVjdFBlcmlwaGVyYWwoQSxlKX1kaXNjb25uZWN0UGVyaXBoZXJhbChBKXt0aGlzLnJ1bnRpbWUuZGlzY29ubmVjdFBlcmlwaGVyYWwoQSl9Z2V0UGVyaXBoZXJhbElzQ29ubmVjdGVkKEEpe3JldHVybiB0aGlzLnJ1bnRpbWUuZ2V0UGVyaXBoZXJhbElzQ29ubmVjdGVkKEEpfWlzU0IyKEEpe3JldHVybiBBcnJheS5pc0FycmF5KEEuY2hpbGRyZW4pJiYhQXJyYXkuaXNBcnJheShBLnRhcmdldHMpfWxvYWRQcm9qZWN0KEEpe3JldHVybiBuZXcgUHJvbWlzZShhc3luYyhlLG4pPT57dHJ5e2NvbnN0IGk9Wy4uLm5ldyBVaW50OEFycmF5KEEpLnNsaWNlKDAsNyldLm1hcChBPT5TdHJpbmcuZnJvbUNoYXJDb2RlKEEpKS5qb2luKCIiKTtpZigiU2NyYXRjaCI9PT1pKXtjb25zdHtTQjFGaWxlOm59PXQoNTAyKSxpPW5ldyBuKEEpLHI9aS5qc29uO3JldHVybiByLnByb2plY3RWZXJzaW9uPTIsZShbcixpLnppcF0pfWlmKCJzdHJpbmciPT10eXBlb2YgQSYmKEE9SlNPTi5wYXJzZShBKSksIltvYmplY3QgT2JqZWN0XSI9PT1BLnRvU3RyaW5nKCkpcmV0dXJuIEEucHJvamVjdFZlcnNpb249dGhpcy5pc1NCMihBKT8yOjMsZShbQSxudWxsXSk7aWYoIlBLIiE9PWkuc2xpY2UoMCwyKSl7Y29uc3QgdD1uZXcgVGV4dERlY29kZXIoIlVURi04Iik7aWYoInN0cmluZyI9PXR5cGVvZihBPXQuZGVjb2RlKEEpKSYmKEE9SlNPTi5wYXJzZShBKSksIltvYmplY3QgT2JqZWN0XSI9PT1BLnRvU3RyaW5nKCkpcmV0dXJuIEEucHJvamVjdFZlcnNpb249dGhpcy5pc1NCMihBKT8yOjMsZShbQSxudWxsXSl9Y29uc3Qgcj1hd2FpdCBhLmxvYWRBc3luYyhBKSxvPXIuZmlsZSgicHJvamVjdC5qc29uIik7aWYoIW8pcmV0dXJuIG4oIk5vIHByb2plY3QuanNvbiBmaWxlIGluc2lkZSB0aGUgZ2l2ZW4gcHJvamVjdCIpO2NvbnN0IHM9SlNPTi5wYXJzZShhd2FpdCBvLmFzeW5jKCJzdHJpbmciKSk7cmV0dXJuIHMucHJvamVjdFZlcnNpb249dGhpcy5pc1NCMihzKT8yOjMsdGhpcy5fcHJvamVjdFppcD1yLGUoW3Mscl0pfWNhdGNoKEEpe24oQS50b1N0cmluZygpKX19KS50aGVuKEE9PnRoaXMuZGVzZXJpYWxpemVQcm9qZWN0KEFbMF0sQVsxXSkpLnRoZW4oKCk9PnRoaXMucnVudGltZS5lbWl0UHJvamVjdExvYWRlZCgpKS5jYXRjaChBPT4oY29uc29sZS5lcnJvcihBKSxBLmhhc093blByb3BlcnR5KCJ2YWxpZGF0aW9uRXJyb3IiKT9Qcm9taXNlLnJlamVjdChKU09OLnN0cmluZ2lmeShBLG51bGwsNCkpOlByb21pc2UucmVqZWN0KEEpKSl9ZG93bmxvYWRQcm9qZWN0SWQoQSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuc3RvcmFnZTtpZighZSlyZXR1cm4gdm9pZCBFLmVycm9yKCJObyBzdG9yYWdlIG1vZHVsZSBwcmVzZW50OyBjYW5ub3QgbG9hZCBwcm9qZWN0OiAiLEEpO2NvbnN0IHQ9dGhpcztlLmxvYWQoZS5Bc3NldFR5cGUuUHJvamVjdCxBKS50aGVuKGU9PmU/dC5sb2FkUHJvamVjdChlLmRhdGEpOihFLmVycm9yKCJGYWlsZWQgdG8gZmV0Y2ggcHJvamVjdCB3aXRoIGlkOiAiLmNvbmNhdChBKSksbnVsbCkpfV9zYXZlUHJvamVjdFppcChBKXtjb25zdCBlPXRoaXMudG9KU09OKG51bGwse30sQSksdD1uZXcgYTtpZih0LmZpbGUoInByb2plY3QuanNvbiIsZSksdGhpcy5fYWRkRmlsZURlc2NzVG9aaXAodGhpcy5zZXJpYWxpemVBc3NldHMoKSx0KSx0aGlzLl9wcm9qZWN0WmlwKXRyeXt0LmZpbGVzPWkoaSh7fSx0LmZpbGVzKSxPYmplY3QuZnJvbUVudHJpZXMoT2JqZWN0LmVudHJpZXModGhpcy5fcHJvamVjdFppcC5maWxlcykuZmlsdGVyKEE9PkFbMF0uc3RhcnRzV2l0aCgiZXh0cmFBc3NldHMvIikpKSl9Y2F0Y2goQSl7Y29uc29sZS53YXJuKCJ1bmFibGUgdG8gZ2V0IGV4dHJhIGFzc2V0cyIsQSl9Y29uc3Qgbj1uZXcgRGF0ZSgxNTkxNjU3MTYzZTMpO2Zvcihjb25zdCBBIG9mIE9iamVjdC52YWx1ZXModC5maWxlcykpQS5kYXRlPW47Y29uc3Qgcj1bIi5qc29uIiwiLnN2ZyIsIi53YXYiLCIudHRmIiwiLm90ZiJdO2Zvcihjb25zdCBBIG9mIE9iamVjdC52YWx1ZXModC5maWxlcykpci5zb21lKGU9PkEubmFtZS5lbmRzV2l0aChlKSk/QS5vcHRpb25zLmNvbXByZXNzaW9uPSJERUZMQVRFIjpBLm9wdGlvbnMuY29tcHJlc3Npb249IlNUT1JFIjtyZXR1cm4gdH1zYXZlUHJvamVjdFNiMyhBKXtyZXR1cm4gdGhpcy5fc2F2ZVByb2plY3RaaXAoKS5nZW5lcmF0ZUFzeW5jKHt0eXBlOkF8fCJibG9iIixtaW1lVHlwZToiYXBwbGljYXRpb24veC5zY3JhdGNoLnNiMyIsY29tcHJlc3Npb246IkRFRkxBVEUifSl9c2F2ZVByb2plY3RTYjNTdHJlYW0oQSl7cmV0dXJuIHRoaXMuX3NhdmVQcm9qZWN0WmlwKCkuZ2VuZXJhdGVJbnRlcm5hbFN0cmVhbSh7dHlwZTpBfHwiYXJyYXlidWZmZXIiLG1pbWVUeXBlOiJhcHBsaWNhdGlvbi94LnNjcmF0Y2guc2IzIixjb21wcmVzc2lvbjoiREVGTEFURSJ9KX1zYXZlUHJvamVjdFNiM0RvbnRaaXAoKXtjb25zdCBBPXRoaXMudG9KU09OKCksZT17InByb2plY3QuanNvbiI6KG5ldyBvKS5lbmNvZGUoQSl9O2Zvcihjb25zdCBBIG9mIHRoaXMuc2VyaWFsaXplQXNzZXRzKCkpZVtBLmZpbGVOYW1lXT1BLmZpbGVDb250ZW50O3JldHVybiBlfWdldCBhc3NldHMoKXtyZXR1cm5bLi4udGhpcy5ydW50aW1lLnRhcmdldHMucmVkdWNlKChBLGUpPT5BLmNvbmNhdChlLnNwcml0ZS5zb3VuZHMubWFwKEE9PkEuYXNzZXQpKS5jb25jYXQoZS5zcHJpdGUuY29zdHVtZXMubWFwKEE9PkEuYXNzZXQpKSxbXSksLi4udGhpcy5ydW50aW1lLmZvbnRNYW5hZ2VyLnNlcmlhbGl6ZUFzc2V0cygpXX1zZXJpYWxpemVBc3NldHMoQSl7cmV0dXJuWy4uLk4odGhpcy5ydW50aW1lLEEpLC4uLmYodGhpcy5ydW50aW1lLEEpLC4uLnRoaXMucnVudGltZS5mb250TWFuYWdlci5zZXJpYWxpemVBc3NldHMoKS5tYXAoQT0+KHtmaWxlTmFtZToiIi5jb25jYXQoQS5hc3NldElkLCIuIikuY29uY2F0KEEuZGF0YUZvcm1hdCksZmlsZUNvbnRlbnQ6QS5kYXRhfSkpXX1fYWRkRmlsZURlc2NzVG9aaXAoQSxlKXtmb3IobGV0IHQ9MDt0PEEubGVuZ3RoO3QrKyl7Y29uc3Qgbj1BW3RdO2UuZmlsZShuLmZpbGVOYW1lLG4uZmlsZUNvbnRlbnQpfX1leHBvcnRTcHJpdGUoQSxlKXtjb25zdCB0PXRoaXMudG9KU09OKEEpLG49bmV3IGE7cmV0dXJuIG4uZmlsZSgic3ByaXRlLmpzb24iLHQpLHRoaXMuX2FkZEZpbGVEZXNjc1RvWmlwKHRoaXMuc2VyaWFsaXplQXNzZXRzKEEpLG4pLG4uZ2VuZXJhdGVBc3luYyh7dHlwZToic3RyaW5nIj09dHlwZW9mIGU/ZToiYmxvYiIsbWltZVR5cGU6ImFwcGxpY2F0aW9uL3guc2NyYXRjaC5zcHJpdGUzIixjb21wcmVzc2lvbjoiREVGTEFURSIsY29tcHJlc3Npb25PcHRpb25zOntsZXZlbDo2fX0pfXRvSlNPTihBLGUsbil7Y29uc3QgaT10KDM4KTtyZXR1cm4gbC5zdHJpbmdpZnkoaS5zZXJpYWxpemUodGhpcy5ydW50aW1lLEEsZSksbil9ZnJvbUpTT04oQSl7cmV0dXJuIEUud2FybmluZygiZnJvbUpTT04gaXMgbm93IGp1c3QgYSB3cmFwcGVyIGFyb3VuZCBsb2FkUHJvamVjdCwgcGxlYXNlIHVzZSB0aGF0IGZ1bmN0aW9uIGluc3RlYWQuIiksdGhpcy5sb2FkUHJvamVjdChBKX1kZXNlcmlhbGl6ZVByb2plY3QoQSxlKXt0aGlzLmNsZWFyKCksInVuZGVmaW5lZCIhPXR5cGVvZiBwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UubWFyaygic2NyYXRjaC12bS1kZXNlcmlhbGl6ZS1zdGFydCIpO2NvbnN0IG49dGhpcy5ydW50aW1lO3JldHVybiBmdW5jdGlvbigpe2NvbnN0IGk9QS5wcm9qZWN0VmVyc2lvbjtpZigyPT09aSl7cmV0dXJuIHQoMTExKS5kZXNlcmlhbGl6ZShBLG4sITEsZSl9aWYoMz09PWkpe3JldHVybiB0KDM4KS5kZXNlcmlhbGl6ZShBLG4sZSwhMSx0aGlzKX1yZXR1cm4gUHJvbWlzZS5yZWplY3QoIlVuYWJsZSB0byB2ZXJpZnkgU2NyYXRjaCBQcm9qZWN0IHZlcnNpb24uIil9KCkudGhlbihBPT57bGV0e3RhcmdldHM6ZSxleHRlbnNpb25zOnR9PUE7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBwZXJmb3JtYW5jZSl7cGVyZm9ybWFuY2UubWFyaygic2NyYXRjaC12bS1kZXNlcmlhbGl6ZS1lbmQiKTt0cnl7cGVyZm9ybWFuY2UubWVhc3VyZSgic2NyYXRjaC12bS1kZXNlcmlhbGl6ZSIsInNjcmF0Y2gtdm0tZGVzZXJpYWxpemUtc3RhcnQiLCJzY3JhdGNoLXZtLWRlc2VyaWFsaXplLWVuZCIpfWNhdGNoKEEpe0UuZXJyb3IoQSl9fXJldHVybiB0aGlzLmluc3RhbGxUYXJnZXRzKGUsdCwhMCl9KX1hc3luYyBfbG9hZEV4dGVuc2lvbnMoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm5ldyBNYXA7Y29uc3Qgbj10KDQ0OCksaT1bXTtmb3IoY29uc3QgdCBvZiBBKXtsZXQgQT1lLmdldCh0KTtpZighQSYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJihBPW5bdF0pLHRoaXMuZXh0ZW5zaW9uTWFuYWdlci5pc0V4dGVuc2lvbkxvYWRlZCh0KSk7ZWxzZSBpZihBKXtpZighYXdhaXQgdGhpcy5zZWN1cml0eU1hbmFnZXIuY2FuTG9hZEV4dGVuc2lvbkZyb21Qcm9qZWN0KEEpKXRocm93IG5ldyBFcnJvcigiUGVybWlzc2lvbiB0byBsb2FkIGV4dGVuc2lvbiBkZW5pZWQ6ICIuY29uY2F0KHQpKTtpLnB1c2godGhpcy5leHRlbnNpb25NYW5hZ2VyLmxvYWRFeHRlbnNpb25VUkwoQSkpfWVsc2V7aWYoIXRoaXMuZXh0ZW5zaW9uTWFuYWdlci5pc0J1aWx0aW5FeHRlbnNpb24odCkpdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIGV4dGVuc2lvbjogIi5jb25jYXQodCkpO3RoaXMuZXh0ZW5zaW9uTWFuYWdlci5sb2FkRXh0ZW5zaW9uSWRTeW5jKHQpfX1yZXR1cm4gUHJvbWlzZS5hbGwoaSl9YXN5bmMgaW5zdGFsbFRhcmdldHMoQSxlLHQpe3JldHVybiBhd2FpdCB0aGlzLmV4dGVuc2lvbk1hbmFnZXIuYWxsQXN5bmNFeHRlbnNpb25zTG9hZGVkKCksQT1BLmZpbHRlcihBPT4hIUEpLHRoaXMuX2xvYWRFeHRlbnNpb25zKGUuZXh0ZW5zaW9uSURzLGUuZXh0ZW5zaW9uVVJMcykudGhlbigoKT0+e2NvbnN0IG49e307Zm9yKGNvbnN0IEEgb2YgZS5leHRlbnNpb25JRHMpZS5leHRlbnNpb25EYXRhW0FdJiYoImV4dF8iLmNvbmNhdChBKWluIHRoaXMucnVudGltZSYmImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucnVudGltZVsiZXh0XyIuY29uY2F0KEEpXS5kZXNlcmlhbGl6ZT90aGlzLnJ1bnRpbWVbImV4dF8iLmNvbmNhdChBKV0uZGVzZXJpYWxpemUoZS5leHRlbnNpb25EYXRhW0FdKTpuW0FdPWUuZXh0ZW5zaW9uRGF0YVtBXSk7biYmKHRoaXMucnVudGltZS5leHRlbnNpb25TdG9yYWdlPXAobikpLEEuZm9yRWFjaChBPT57aWYodGhpcy5ydW50aW1lLmFkZFRhcmdldChBKSxBLnVwZGF0ZUFsbERyYXdhYmxlUHJvcGVydGllcygpLEEuaXNTcHJpdGUoKSYmdGhpcy5yZW5hbWVTcHJpdGUoQS5pZCxBLmdldE5hbWUoKSksISgiZXh0ZW5zaW9uRGF0YSJpbiBBKSlyZXR1cm47Y29uc3QgdD17fTtmb3IoY29uc3QgbiBvZiBlLmV4dGVuc2lvbklEcyluIGluIEEuZXh0ZW5zaW9uRGF0YSYmKCJleHRfIi5jb25jYXQobilpbiB0aGlzLnJ1bnRpbWUmJiJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLnJ1bnRpbWVbImV4dF8iLmNvbmNhdChuKV0uZGVzZXJpYWxpemVGb3JUYXJnZXQ/dGhpcy5ydW50aW1lWyJleHRfIi5jb25jYXQobildLmRlc2VyaWFsaXplRm9yVGFyZ2V0KEEuZXh0ZW5zaW9uRGF0YVtuXSxBKTp0W25dPUEuZXh0ZW5zaW9uRGF0YVtuXSk7biYmKEEuZXh0ZW5zaW9uU3RvcmFnZT1wKHQpKSxkZWxldGUgQS5leHRlbnNpb25EYXRhfSksdGhpcy5ydW50aW1lLmV4ZWN1dGFibGVUYXJnZXRzLnNvcnQoKEEsZSk9PkEubGF5ZXJPcmRlci1lLmxheWVyT3JkZXIpLEEuZm9yRWFjaChBPT57ZGVsZXRlIEEubGF5ZXJPcmRlcn0pLHQmJkEubGVuZ3RoPjE/dGhpcy5lZGl0aW5nVGFyZ2V0PUFbMV06dGhpcy5lZGl0aW5nVGFyZ2V0PUFbMF0sdHx8dGhpcy5lZGl0aW5nVGFyZ2V0LmZpeFVwVmFyaWFibGVSZWZlcmVuY2VzKCksdCYmdGhpcy5ydW50aW1lLnBhcnNlUHJvamVjdE9wdGlvbnMoKSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCExKSx0aGlzLmVtaXRXb3Jrc3BhY2VVcGRhdGUoKSx0aGlzLnJ1bnRpbWUuc2V0RWRpdGluZ1RhcmdldCh0aGlzLmVkaXRpbmdUYXJnZXQpLHRoaXMucnVudGltZS5pb0RldmljZXMuY2xvdWQuc2V0U3RhZ2UodGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkpfSl9YWRkU3ByaXRlKEEpeyJvYmplY3QiIT10eXBlb2YgQXx8QSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyfHxBcnJheUJ1ZmZlci5pc1ZpZXcoQSl8fChBPUpTT04uc3RyaW5naWZ5KEEpKTtyZXR1cm4gbmV3IFByb21pc2UoKGUsbik9Pnt0KDQ0OSkoQSwhMCwoQSx0KT0+e2lmKEEpcmV0dXJuIG4oQSk7ZSh0KX0pfSkudGhlbihBPT57Y29uc3QgZT1BWzBdLnByb2plY3RWZXJzaW9uO3JldHVybiAyPT09ZT90aGlzLl9hZGRTcHJpdGUyKEFbMF0sQVsxXSk6Mz09PWU/dGhpcy5fYWRkU3ByaXRlMyhBWzBdLEFbMV0pOlByb21pc2UucmVqZWN0KCIiLmNvbmNhdCgiU3ByaXRlIFVwbG9hZCBFcnJvcjoiLCIgVW5hYmxlIHRvIHZlcmlmeSBzcHJpdGUgdmVyc2lvbi4iKSl9KS50aGVuKCgpPT50aGlzLnJ1bnRpbWUuZW1pdFByb2plY3RDaGFuZ2VkKCkpLmNhdGNoKEE9PkEuaGFzT3duUHJvcGVydHkoInZhbGlkYXRpb25FcnJvciIpP1Byb21pc2UucmVqZWN0KEpTT04uc3RyaW5naWZ5KEEpKTpQcm9taXNlLnJlamVjdCgiIi5jb25jYXQoIlNwcml0ZSBVcGxvYWQgRXJyb3I6IiwiICIpLmNvbmNhdChBKSkpfV9hZGRTcHJpdGUyKEEsZSl7cmV0dXJuIHQoMTExKS5kZXNlcmlhbGl6ZShBLHRoaXMucnVudGltZSwhMCxlKS50aGVuKEE9PntsZXR7dGFyZ2V0czplLGV4dGVuc2lvbnM6dH09QTtyZXR1cm4gdGhpcy5pbnN0YWxsVGFyZ2V0cyhlLHQsITEpfSl9X2FkZFNwcml0ZTMoQSxlKXtyZXR1cm4gdCgzOCkuZGVzZXJpYWxpemUoQSx0aGlzLnJ1bnRpbWUsZSwhMCkudGhlbihBPT57bGV0e3RhcmdldHM6ZSxleHRlbnNpb25zOnR9PUE7cmV0dXJuIHRoaXMuaW5zdGFsbFRhcmdldHMoZSx0LCExKX0pfWFkZENvc3R1bWUoQSxlLHQsbil7Y29uc3QgaT10P3RoaXMucnVudGltZS5nZXRUYXJnZXRCeUlkKHQpOnRoaXMuZWRpdGluZ1RhcmdldDtyZXR1cm4gaT8hMD09PWUuZnJvbVBlbmd1aW5Nb2RMaWJyYXJ5P25ldyBQcm9taXNlKChBLHQpPT57ZmV0Y2goIiIuY29uY2F0KHgsImZpbGVzLyIpLmNvbmNhdChlLmxpYnJhcnlJZCkpLnRoZW4oQT0+QS5hcnJheUJ1ZmZlcigpKS50aGVuKHQ9Pntjb25zdCByPWUuZGF0YUZvcm1hdCxvPXRoaXMucnVudGltZS5zdG9yYWdlLHM9bmV3IG8uQXNzZXQoby5Bc3NldFR5cGVbInN2ZyI9PT1yPyJJbWFnZVZlY3RvciI6IkltYWdlQml0bWFwIl0sbnVsbCxvLkRhdGFGb3JtYXRbci50b1VwcGVyQ2FzZSgpXSxuZXcgVWludDhBcnJheSh0KSwhMCksYT17bWQ1OnMuYXNzZXRJZCsiLiIrcy5kYXRhRm9ybWF0LGFzc2V0OnMsbmFtZTplLm5hbWV9O0QoYS5tZDUsYSx0aGlzLnJ1bnRpbWUsbikudGhlbihlPT57aS5hZGRDb3N0dW1lKGEpLGkuc2V0Q29zdHVtZShpLmdldENvc3R1bWVzKCkubGVuZ3RoLTEpLHRoaXMucnVudGltZS5lbWl0UHJvamVjdENoYW5nZWQoKSxBKGUsYSl9KX0pLmNhdGNoKHQpfSk6RChBLGUsdGhpcy5ydW50aW1lLG4pLnRoZW4oQT0+e2kuYWRkQ29zdHVtZShBKSxpLnNldENvc3R1bWUoaS5nZXRDb3N0dW1lcygpLmxlbmd0aC0xKSx0aGlzLnJ1bnRpbWUuZW1pdFByb2plY3RDaGFuZ2VkKCl9KTpQcm9taXNlLnJlamVjdCgpfWFkZENvc3R1bWVGcm9tTGlicmFyeShBLGUpe3JldHVybiB0aGlzLmVkaXRpbmdUYXJnZXQ/dGhpcy5hZGRDb3N0dW1lKEEsZSx0aGlzLmVkaXRpbmdUYXJnZXQuaWQsMik6UHJvbWlzZS5yZWplY3QoKX1kdXBsaWNhdGVDb3N0dW1lKEEpe2NvbnN0IGU9dGhpcy5lZGl0aW5nVGFyZ2V0LmdldENvc3R1bWVzKClbQV0sdD1PYmplY3QuYXNzaWduKHt9LGUpLG49IiIuY29uY2F0KHQuYXNzZXRJZCwiLiIpLmNvbmNhdCh0LmRhdGFGb3JtYXQpO3JldHVybiBEKG4sdCx0aGlzLnJ1bnRpbWUpLnRoZW4oKCk9Pnt0aGlzLmVkaXRpbmdUYXJnZXQuYWRkQ29zdHVtZSh0LEErMSksdGhpcy5lZGl0aW5nVGFyZ2V0LnNldENvc3R1bWUoQSsxKSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCl9KX1kdXBsaWNhdGVTb3VuZChBKXtjb25zdCBlPXRoaXMuZWRpdGluZ1RhcmdldC5nZXRTb3VuZHMoKVtBXSx0PU9iamVjdC5hc3NpZ24oe30sZSk7cmV0dXJuIFkodCx0aGlzLnJ1bnRpbWUsdGhpcy5lZGl0aW5nVGFyZ2V0LnNwcml0ZS5zb3VuZEJhbmspLnRoZW4oKCk9Pnt0aGlzLmVkaXRpbmdUYXJnZXQuYWRkU291bmQodCxBKzEpLHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKX0pfXJlbmFtZUNvc3R1bWUoQSxlKXt0aGlzLmVkaXRpbmdUYXJnZXQucmVuYW1lQ29zdHVtZShBLGUpLHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKX1kZWxldGVDb3N0dW1lKEEpe2NvbnN0IGU9dGhpcy5lZGl0aW5nVGFyZ2V0LmRlbGV0ZUNvc3R1bWUoQSk7aWYoZSl7Y29uc3QgQT10aGlzLmVkaXRpbmdUYXJnZXQ7cmV0dXJuIHRoaXMucnVudGltZS5lbWl0UHJvamVjdENoYW5nZWQoKSwoKT0+e0EuYWRkQ29zdHVtZShlKSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCl9fXJldHVybiBudWxsfXBhdXNlKCl7dGhpcy5ydW50aW1lLnBhdXNlKCl9cGxheSgpe3RoaXMucnVudGltZS5wbGF5KCl9YWRkU291bmQoQSxlKXtjb25zdCB0PWU/dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoZSk6dGhpcy5lZGl0aW5nVGFyZ2V0O3JldHVybiB0PyEwPT09QS5mcm9tUGVuZ3Vpbk1vZExpYnJhcnk/bmV3IFByb21pc2UoKGUsbik9PntmZXRjaCgiIi5jb25jYXQoeCwiZmlsZXMvIikuY29uY2F0KEEubGlicmFyeUlkKSkudGhlbihBPT5BLmFycmF5QnVmZmVyKCkpLnRoZW4obj0+e2NvbnN0IGk9dGhpcy5ydW50aW1lLnN0b3JhZ2Uscj1uZXcgaS5Bc3NldChpLkFzc2V0VHlwZS5Tb3VuZCxudWxsLGkuRGF0YUZvcm1hdC5NUDMsbmV3IFVpbnQ4QXJyYXkobiksITApLG89e21kNTpyLmFzc2V0SWQrIi4iK3IuZGF0YUZvcm1hdCxhc3NldDpyLG5hbWU6QS5uYW1lfTtZKG8sdGhpcy5ydW50aW1lLHQuc3ByaXRlLnNvdW5kQmFuaykudGhlbihBPT57dC5hZGRTb3VuZChvKSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCksZShBLG8pfSl9KS5jYXRjaChuKX0pOlkoQSx0aGlzLnJ1bnRpbWUsdC5zcHJpdGUuc291bmRCYW5rKS50aGVuKCgpPT57dC5hZGRTb3VuZChBKSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCl9KTpQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIk5vIHRhcmdldCB3aXRoIElEOiAiLmNvbmNhdChlKSkpfXJlbmFtZVNvdW5kKEEsZSl7dGhpcy5lZGl0aW5nVGFyZ2V0LnJlbmFtZVNvdW5kKEEsZSksdGhpcy5lbWl0VGFyZ2V0c1VwZGF0ZSgpfWdldFNvdW5kQnVmZmVyKEEpe3ZhciBlO2NvbnN0IHQ9bnVsbD09PShlPXRoaXMuZWRpdGluZ1RhcmdldC5zcHJpdGUuc291bmRzW0FdKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS5zb3VuZElkO3JldHVybiB0JiZ0aGlzLnJ1bnRpbWUmJnRoaXMucnVudGltZS5hdWRpb0VuZ2luZT90aGlzLmVkaXRpbmdUYXJnZXQuc3ByaXRlLnNvdW5kQmFuay5nZXRTb3VuZFBsYXllcih0KS5idWZmZXI6bnVsbH11cGRhdGVTb3VuZEJ1ZmZlcihBLGUsdCl7Y29uc3Qgbj10aGlzLmVkaXRpbmdUYXJnZXQuc3ByaXRlLnNvdW5kc1tBXTtuJiZuLmJyb2tlbiYmZGVsZXRlIG4uYnJva2VuO2NvbnN0IGk9bj9uLnNvdW5kSWQ6bnVsbDtpZihpJiZ0aGlzLnJ1bnRpbWUmJnRoaXMucnVudGltZS5hdWRpb0VuZ2luZSYmKHRoaXMuZWRpdGluZ1RhcmdldC5zcHJpdGUuc291bmRCYW5rLmdldFNvdW5kUGxheWVyKGkpLmJ1ZmZlcj1lKSx0KXtuLmZvcm1hdD0iIjtjb25zdCBBPXRoaXMucnVudGltZS5zdG9yYWdlO24uYXNzZXQ9QS5jcmVhdGVBc3NldChBLkFzc2V0VHlwZS5Tb3VuZCxBLkRhdGFGb3JtYXQuV0FWLHQsbnVsbCwhMCksbi5hc3NldElkPW4uYXNzZXQuYXNzZXRJZCxuLmRhdGFGb3JtYXQ9QS5EYXRhRm9ybWF0LldBVixuLm1kNT0iIi5jb25jYXQobi5hc3NldElkLCIuIikuY29uY2F0KG4uZGF0YUZvcm1hdCksbi5zYW1wbGVDb3VudD1lLmxlbmd0aCxuLnJhdGU9ZS5zYW1wbGVSYXRlfXRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKX1kZWxldGVTb3VuZChBKXtjb25zdCBlPXRoaXMuZWRpdGluZ1RhcmdldCx0PXRoaXMuZWRpdGluZ1RhcmdldC5kZWxldGVTb3VuZChBKTtpZih0KXt0aGlzLnJ1bnRpbWUuZW1pdFByb2plY3RDaGFuZ2VkKCk7cmV0dXJuKCk9PntlLmFkZFNvdW5kKHQpLHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKX19cmV0dXJuIG51bGx9Z2V0Q29zdHVtZShBKXtjb25zdCBlPXRoaXMuZWRpdGluZ1RhcmdldC5nZXRDb3N0dW1lcygpW0FdLmFzc2V0O2lmKCFlfHwhdGhpcy5ydW50aW1lfHwhdGhpcy5ydW50aW1lLnN0b3JhZ2UpcmV0dXJuIG51bGw7Y29uc3QgdD1lLmRhdGFGb3JtYXQ7cmV0dXJuIHQ9PT10aGlzLnJ1bnRpbWUuc3RvcmFnZS5EYXRhRm9ybWF0LlNWRz9lLmRlY29kZVRleHQoKTp0PT09dGhpcy5ydW50aW1lLnN0b3JhZ2UuRGF0YUZvcm1hdC5QTkd8fHQ9PT10aGlzLnJ1bnRpbWUuc3RvcmFnZS5EYXRhRm9ybWF0LkpQRz9lLmVuY29kZURhdGFVUkkoKTooRS5lcnJvcigiVW5oYW5kbGVkIGZvcm1hdDogIi5jb25jYXQoZS5kYXRhRm9ybWF0KSksbnVsbCl9Z2V0RXhwb3J0ZWRDb3N0dW1lKEEsZSl7cmV0dXJuIFUoQSxlKX1nZXRFeHBvcnRlZENvc3R1bWVCYXNlNjQoQSxlKXtjb25zdCB0PXRoaXMuZ2V0RXhwb3J0ZWRDb3N0dW1lKEEsZSk7cmV0dXJuIHkudWludDhBcnJheVRvQmFzZTY0KHQpfXVwZGF0ZUJpdG1hcChBLGUsdCxuLGkpe3JldHVybiB0aGlzLl91cGRhdGVCaXRtYXAodGhpcy5lZGl0aW5nVGFyZ2V0LmdldENvc3R1bWVzKClbQV0sZSx0LG4saSl9X3VwZGF0ZUJpdG1hcChBLGUsdCxuLGkpe2lmKCEoQSYmdGhpcy5ydW50aW1lJiZ0aGlzLnJ1bnRpbWUucmVuZGVyZXIpKXJldHVybjtBJiZBLmJyb2tlbiYmZGVsZXRlIEEuYnJva2VuLEEucm90YXRpb25DZW50ZXJYPXQsQS5yb3RhdGlvbkNlbnRlclk9bjtjb25zdCByPTA9PT1lLnNvdXJjZVdpZHRoPzA6ZS53aWR0aCxvPTA9PT1lLnNvdXJjZUhlaWdodD8wOmUuaGVpZ2h0LHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7cy53aWR0aD1yLHMuaGVpZ2h0PW87cy5nZXRDb250ZXh0KCIyZCIpLnB1dEltYWdlRGF0YShlLDAsMCksdGhpcy5ydW50aW1lLnJlbmRlcmVyLnVwZGF0ZUJpdG1hcFNraW4oQS5za2luSWQscyxpLFt0L2ksbi9pXSkscy50b0Jsb2IoZT0+e2NvbnN0IHQ9bmV3IEZpbGVSZWFkZXI7dC5hZGRFdmVudExpc3RlbmVyKCJsb2FkZW5kIiwoKT0+e2NvbnN0IGU9dGhpcy5ydW50aW1lLnN0b3JhZ2U7QS5kYXRhRm9ybWF0PWUuRGF0YUZvcm1hdC5QTkcsQS5iaXRtYXBSZXNvbHV0aW9uPWksQS5zaXplPVtyLG9dLEEuYXNzZXQ9ZS5jcmVhdGVBc3NldChlLkFzc2V0VHlwZS5JbWFnZUJpdG1hcCxBLmRhdGFGb3JtYXQsQi5mcm9tKHQucmVzdWx0KSxudWxsLCEwKSxBLmFzc2V0SWQ9QS5hc3NldC5hc3NldElkLEEubWQ1PSIiLmNvbmNhdChBLmFzc2V0SWQsIi4iKS5jb25jYXQoQS5kYXRhRm9ybWF0KSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCl9KSxlJiZ0LnJlYWRBc0FycmF5QnVmZmVyKGUpfSl9dXBkYXRlU3ZnKEEsZSx0LG4pe3JldHVybiB0aGlzLl91cGRhdGVTdmcodGhpcy5lZGl0aW5nVGFyZ2V0LmdldENvc3R1bWVzKClbQV0sZSx0LG4pfV91cGRhdGVTdmcoQSxlLHQsbil7QSYmQS5icm9rZW4mJmRlbGV0ZSBBLmJyb2tlbixBJiZ0aGlzLnJ1bnRpbWUmJnRoaXMucnVudGltZS5yZW5kZXJlciYmKEEucm90YXRpb25DZW50ZXJYPXQsQS5yb3RhdGlvbkNlbnRlclk9bix0aGlzLnJ1bnRpbWUucmVuZGVyZXIudXBkYXRlU1ZHU2tpbihBLnNraW5JZCxlLFt0LG5dKSxBLnNpemU9dGhpcy5ydW50aW1lLnJlbmRlcmVyLmdldFNraW5TaXplKEEuc2tpbklkKSk7Y29uc3QgaT10aGlzLnJ1bnRpbWUuc3RvcmFnZTtBLmRhdGFGb3JtYXQ9aS5EYXRhRm9ybWF0LlNWRyxBLmJpdG1hcFJlc29sdXRpb249MSxBLmFzc2V0PWkuY3JlYXRlQXNzZXQoaS5Bc3NldFR5cGUuSW1hZ2VWZWN0b3IsQS5kYXRhRm9ybWF0LChuZXcgbykuZW5jb2RlKGUpLG51bGwsITApLEEuYXNzZXRJZD1BLmFzc2V0LmFzc2V0SWQsQS5tZDU9IiIuY29uY2F0KEEuYXNzZXRJZCwiLiIpLmNvbmNhdChBLmRhdGFGb3JtYXQpLHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKX1hZGRCYWNrZHJvcChBLGUpe3JldHVybiEwPT09ZS5mcm9tUGVuZ3Vpbk1vZExpYnJhcnk/bmV3IFByb21pc2UoKEEsdCk9PntmZXRjaCgiIi5jb25jYXQoeCwiZmlsZXMvIikuY29uY2F0KGUubGlicmFyeUlkKSkudGhlbihBPT5BLmFycmF5QnVmZmVyKCkpLnRoZW4odD0+e2NvbnN0IG49ZS5kYXRhRm9ybWF0LGk9dGhpcy5ydW50aW1lLnN0b3JhZ2Uscj1uZXcgaS5Bc3NldChpLkFzc2V0VHlwZVsic3ZnIj09PW4/IkltYWdlVmVjdG9yIjoiSW1hZ2VCaXRtYXAiXSxudWxsLGkuRGF0YUZvcm1hdFtuLnRvVXBwZXJDYXNlKCldLG5ldyBVaW50OEFycmF5KHQpLCEwKSxvPXttZDU6ci5hc3NldElkKyIuIityLmRhdGFGb3JtYXQsYXNzZXQ6cixuYW1lOmUubmFtZX07RChvLm1kNSxvLHRoaXMucnVudGltZSkudGhlbihlPT57Y29uc3QgdD10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTt0LmFkZENvc3R1bWUobyksdC5zZXRDb3N0dW1lKHQuZ2V0Q29zdHVtZXMoKS5sZW5ndGgtMSksdGhpcy5ydW50aW1lLmVtaXRQcm9qZWN0Q2hhbmdlZCgpLEEoZSxvKX0pfSkuY2F0Y2godCl9KTpEKEEsZSx0aGlzLnJ1bnRpbWUpLnRoZW4oKCk9Pntjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO0EuYWRkQ29zdHVtZShlKSxBLnNldENvc3R1bWUoQS5nZXRDb3N0dW1lcygpLmxlbmd0aC0xKSx0aGlzLnJ1bnRpbWUuZW1pdFByb2plY3RDaGFuZ2VkKCl9KX1yZW5hbWVTcHJpdGUoQSxlKXtjb25zdCB0PXRoaXMucnVudGltZS5nZXRUYXJnZXRCeUlkKEEpO2lmKCF0KXRocm93IG5ldyBFcnJvcigiTm8gdGFyZ2V0IHdpdGggdGhlIHByb3ZpZGVkIGlkLiIpO3tpZighdC5pc1Nwcml0ZSgpKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHJlbmFtZSBub24tc3ByaXRlIHRhcmdldHMuIik7Y29uc3QgQT10LnNwcml0ZTtpZighQSl0aHJvdyBuZXcgRXJyb3IoIk5vIHNwcml0ZSBhc3NvY2lhdGVkIHdpdGggdGhpcyB0YXJnZXQuIik7aWYoZSYmLTE9PT1ULmluZGV4T2YoZSkpe2NvbnN0IG49dGhpcy5ydW50aW1lLnRhcmdldHMuZmlsdGVyKEE9PkEuaXNTcHJpdGUoKSYmQS5pZCE9PXQuaWQpLm1hcChBPT5BLnNwcml0ZS5uYW1lKSxpPUEubmFtZSxyPWwudW51c2VkTmFtZShlLG4pO2lmKEEubmFtZT1yLGk9PT1yKXJldHVybjtjb25zdCBvPXRoaXMucnVudGltZS50YXJnZXRzO2ZvcihsZXQgQT0wO0E8by5sZW5ndGg7QSsrKXtvW0FdLmJsb2Nrcy51cGRhdGVBc3NldE5hbWUoaSxlLCJzcHJpdGUiKX1yIT09aSYmdGhpcy5lbWl0VGFyZ2V0c1VwZGF0ZSgpfX19ZGVsZXRlU3ByaXRlKEEpe2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoQSk7aWYoZSl7Y29uc3QgdD10aGlzLnJ1bnRpbWUudGFyZ2V0cy5tYXAoQT0+QS5pZCkuaW5kZXhPZihlLmlkKTtpZighZS5pc1Nwcml0ZSgpKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGRlbGV0ZSBub24tc3ByaXRlIHRhcmdldHMuIik7Y29uc3Qgbj1lLnNwcml0ZTtpZighbil0aHJvdyBuZXcgRXJyb3IoIk5vIHNwcml0ZSBhc3NvY2lhdGVkIHdpdGggdGhpcyB0YXJnZXQuIik7Y29uc3QgaT10aGlzLmV4cG9ydFNwcml0ZShBLCJ1aW50OGFycmF5Iikscj0oKT0+aS50aGVuKEE9PnRoaXMuYWRkU3ByaXRlKEEpKTtlLmRlbGV0ZU1vbml0b3JzKCk7Y29uc3Qgbz10aGlzLmVkaXRpbmdUYXJnZXQ7Zm9yKGxldCBBPTA7QTxuLmNsb25lcy5sZW5ndGg7QSsrKXtjb25zdCBlPW4uY2xvbmVzW0FdO2lmKHRoaXMucnVudGltZS5zdG9wRm9yVGFyZ2V0KG4uY2xvbmVzW0FdKSx0aGlzLnJ1bnRpbWUuZGlzcG9zZVRhcmdldChuLmNsb25lc1tBXSksZT09PW8pe2NvbnN0IEE9TWF0aC5taW4odGhpcy5ydW50aW1lLnRhcmdldHMubGVuZ3RoLTEsdCk7dGhpcy5ydW50aW1lLnRhcmdldHMubGVuZ3RoPjA/dGhpcy5zZXRFZGl0aW5nVGFyZ2V0KHRoaXMucnVudGltZS50YXJnZXRzW0FdLmlkKTp0aGlzLmVkaXRpbmdUYXJnZXQ9bnVsbH19cmV0dXJuIHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKSxyfXRocm93IG5ldyBFcnJvcigiTm8gdGFyZ2V0IHdpdGggdGhlIHByb3ZpZGVkIGlkLiIpfWRlbGV0ZVNwcml0ZUludGVybmFsKEEpe2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoQSk7aWYoZSl7Y29uc3QgdD10aGlzLnJ1bnRpbWUudGFyZ2V0cy5tYXAoQT0+QS5pZCkuaW5kZXhPZihlLmlkKTtpZighZS5pc1Nwcml0ZSgpKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGRlbGV0ZSBub24tc3ByaXRlIHRhcmdldHMuIik7Y29uc3Qgbj1lLnNwcml0ZTtpZighbil0aHJvdyBuZXcgRXJyb3IoIk5vIHNwcml0ZSBhc3NvY2lhdGVkIHdpdGggdGhpcyB0YXJnZXQuIik7Y29uc3QgaT10aGlzLmV4cG9ydFNwcml0ZShBLCJ1aW50OGFycmF5Iikscj0oKT0+aS50aGVuKEE9PnRoaXMuYWRkU3ByaXRlKEEpKTtlLmRlbGV0ZU1vbml0b3JzKCk7Y29uc3Qgbz10aGlzLmVkaXRpbmdUYXJnZXQ7Zm9yKGxldCBBPTA7QTxuLmNsb25lcy5sZW5ndGg7QSsrKXtjb25zdCBlPW4uY2xvbmVzW0FdO2lmKHRoaXMucnVudGltZS5zdG9wRm9yVGFyZ2V0KG4uY2xvbmVzW0FdKSx0aGlzLnJ1bnRpbWUuZGlzcG9zZVRhcmdldChuLmNsb25lc1tBXSksZT09PW8pe2NvbnN0IEE9TWF0aC5taW4odGhpcy5ydW50aW1lLnRhcmdldHMubGVuZ3RoLTEsdCk7dGhpcy5ydW50aW1lLnRhcmdldHMubGVuZ3RoPjA/dGhpcy5zZXRFZGl0aW5nVGFyZ2V0KHRoaXMucnVudGltZS50YXJnZXRzW0FdLmlkKTp0aGlzLmVkaXRpbmdUYXJnZXQ9bnVsbH19cmV0dXJuIHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKSxyfXRocm93IG5ldyBFcnJvcigiTm8gdGFyZ2V0IHdpdGggdGhlIHByb3ZpZGVkIGlkLiIpfWR1cGxpY2F0ZVNwcml0ZShBKXtjb25zdCBlPXRoaXMucnVudGltZS5nZXRUYXJnZXRCeUlkKEEpO2lmKCFlKXRocm93IG5ldyBFcnJvcigiTm8gdGFyZ2V0IHdpdGggdGhlIHByb3ZpZGVkIGlkLiIpO2lmKCFlLmlzU3ByaXRlKCkpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZHVwbGljYXRlIG5vbi1zcHJpdGUgdGFyZ2V0cy4iKTtpZighZS5zcHJpdGUpdGhyb3cgbmV3IEVycm9yKCJObyBzcHJpdGUgYXNzb2NpYXRlZCB3aXRoIHRoaXMgdGFyZ2V0LiIpO3JldHVybiBlLmR1cGxpY2F0ZSgpLnRoZW4oQT0+e3RoaXMucnVudGltZS5hZGRUYXJnZXQoQSksQS5nb0JlaGluZE90aGVyKGUpLHRoaXMuc2V0RWRpdGluZ1RhcmdldChBLmlkKX0pfWF0dGFjaEF1ZGlvRW5naW5lKEEpe3RoaXMucnVudGltZS5hdHRhY2hBdWRpb0VuZ2luZShBKX1hdHRhY2hSZW5kZXJlcihBKXt0aGlzLnJ1bnRpbWUuYXR0YWNoUmVuZGVyZXIoQSl9Z2V0IHJlbmRlcmVyKCl7cmV0dXJuIHRoaXMucnVudGltZSYmdGhpcy5ydW50aW1lLnJlbmRlcmVyfWF0dGFjaFYyU1ZHQWRhcHRlcigpe31hdHRhY2hWMkJpdG1hcEFkYXB0ZXIoQSl7dGhpcy5ydW50aW1lLmF0dGFjaFYyQml0bWFwQWRhcHRlcihBKX1hdHRhY2hTdG9yYWdlKEEpe3RoaXMucnVudGltZS5hdHRhY2hTdG9yYWdlKEEpfXNldExvY2FsZShBLGUpe3JldHVybiBBIT09ZC5zZXR1cCgpLmxvY2FsZSYmZC5zZXR1cCh7bG9jYWxlOkEsdHJhbnNsYXRpb25zOntbQV06ZX19KSx0aGlzLmVtaXQoIkxPQ0FMRV9DSEFOR0VEIixBKSx0aGlzLmV4dGVuc2lvbk1hbmFnZXIucmVmcmVzaEJsb2NrcygpfWdldExvY2FsZSgpe3JldHVybiBkLnNldHVwKCkubG9jYWxlfWJsb2NrTGlzdGVuZXIoQSl7dGhpcy5lZGl0aW5nVGFyZ2V0JiZ0aGlzLmVkaXRpbmdUYXJnZXQuYmxvY2tzLmJsb2NrbHlMaXN0ZW4oQSl9Zmx5b3V0QmxvY2tMaXN0ZW5lcihBKXt0aGlzLnJ1bnRpbWUuZmx5b3V0QmxvY2tzLmJsb2NrbHlMaXN0ZW4oQSl9bW9uaXRvckJsb2NrTGlzdGVuZXIoQSl7LTEhPT1bImNyZWF0ZSIsImNoYW5nZSJdLmluZGV4T2YoQS50eXBlKSYmdGhpcy5ydW50aW1lLm1vbml0b3JCbG9ja3MuYmxvY2tseUxpc3RlbihBKX12YXJpYWJsZUxpc3RlbmVyKEEpey0xIT09WyJ2YXJfY3JlYXRlIiwidmFyX3JlbmFtZSIsInZhcl9kZWxldGUiXS5pbmRleE9mKEEudHlwZSkmJnRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmJsb2Nrcy5ibG9ja2x5TGlzdGVuKEEpfXNldEVkaXRpbmdUYXJnZXQoQSl7aWYodGhpcy5lZGl0aW5nVGFyZ2V0JiZBPT09dGhpcy5lZGl0aW5nVGFyZ2V0LmlkKXJldHVybjtjb25zdCBlPXRoaXMucnVudGltZS5nZXRUYXJnZXRCeUlkKEEpO2UmJih0aGlzLmVkaXRpbmdUYXJnZXQ9ZSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCExKSx0aGlzLmVtaXRXb3Jrc3BhY2VVcGRhdGUoKSx0aGlzLnJ1bnRpbWUuc2V0RWRpdGluZ1RhcmdldChlKSl9ZXhwb3J0U3RhbmRhbG9uZUJsb2NrcyhBKXtyZXR1cm4gdCgzOCkuc2VyaWFsaXplU3RhbmRhbG9uZUJsb2NrcyhBLHRoaXMucnVudGltZSl9c2hhcmVCbG9ja3NUb1RhcmdldChBLGUsbil7Y29uc3QgaT10KDM4KSx7YmxvY2tzOnIsZXh0ZW5zaW9uVVJMczpvfT1pLmRlc2VyaWFsaXplU3RhbmRhbG9uZUJsb2NrcyhBKTtGKHIpO2NvbnN0IHM9dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoZSk7aWYobil7dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQobikucmVzb2x2ZVZhcmlhYmxlU2hhcmluZ0NvbmZsaWN0c1dpdGhUYXJnZXQocixzKX1jb25zdCBhPW5ldyBTZXQoci5tYXAoQT0+aS5nZXRFeHRlbnNpb25JZEZvck9wY29kZShBLm9wY29kZSkpLmZpbHRlcihBPT4hIUEpLmZpbHRlcihBPT4hdGhpcy5leHRlbnNpb25NYW5hZ2VyLmlzRXh0ZW5zaW9uTG9hZGVkKEEpKSk7cmV0dXJuIHRoaXMuX2xvYWRFeHRlbnNpb25zKGEsbykudGhlbigoKT0+e3IuZm9yRWFjaChBPT57cy5ibG9ja3MuY3JlYXRlQmxvY2soQSl9KSxzLmJsb2Nrcy51cGRhdGVUYXJnZXRTcGVjaWZpY0Jsb2NrcyhzLmlzU3RhZ2UpfSl9c2hhcmVDb3N0dW1lVG9UYXJnZXQoQSxlKXtjb25zdCB0PXRoaXMuZWRpdGluZ1RhcmdldC5nZXRDb3N0dW1lcygpW0FdLG49T2JqZWN0LmFzc2lnbih7fSx0KSxpPSIiLmNvbmNhdChuLmFzc2V0SWQsIi4iKS5jb25jYXQobi5kYXRhRm9ybWF0KTtyZXR1cm4gRChpLG4sdGhpcy5ydW50aW1lKS50aGVuKCgpPT57Y29uc3QgQT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChlKTtBJiYoQS5hZGRDb3N0dW1lKG4pLEEuc2V0Q29zdHVtZShBLmdldENvc3R1bWVzKCkubGVuZ3RoLTEpKX0pfXNoYXJlU291bmRUb1RhcmdldChBLGUpe2NvbnN0IHQ9dGhpcy5lZGl0aW5nVGFyZ2V0LmdldFNvdW5kcygpW0FdLG49T2JqZWN0LmFzc2lnbih7fSx0KSxpPXRoaXMucnVudGltZS5nZXRUYXJnZXRCeUlkKGUpO3JldHVybiBZKG4sdGhpcy5ydW50aW1lLGkuc3ByaXRlLnNvdW5kQmFuaykudGhlbigoKT0+e2kmJihpLmFkZFNvdW5kKG4pLHRoaXMuZW1pdFRhcmdldHNVcGRhdGUoKSl9KX1yZWZyZXNoV29ya3NwYWNlKCl7dGhpcy5lZGl0aW5nVGFyZ2V0JiYodGhpcy5lbWl0V29ya3NwYWNlVXBkYXRlKCksdGhpcy5ydW50aW1lLnNldEVkaXRpbmdUYXJnZXQodGhpcy5lZGl0aW5nVGFyZ2V0KSx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCExKSl9ZW1pdFRhcmdldHNVcGRhdGUoQSl7bGV0IGU7dm9pZCAwPT09QSYmKEE9ITApO2NvbnN0IHQ9KCk9PihlfHwoZT10aGlzLnJ1bnRpbWUudGFyZ2V0cy5maWx0ZXIoQT0+IUEuaGFzT3duUHJvcGVydHkoImlzT3JpZ2luYWwiKXx8QS5pc09yaWdpbmFsKS5tYXAoQT0+QS50b0pTT04oKSkpLGUpO3RoaXMuZW1pdCgidGFyZ2V0c1VwZGF0ZSIse2dldCB0YXJnZXRMaXN0KCl7cmV0dXJuIHQoKX0sZWRpdGluZ1RhcmdldDp0aGlzLmVkaXRpbmdUYXJnZXQ/dGhpcy5lZGl0aW5nVGFyZ2V0LmlkOm51bGx9KSxBJiZ0aGlzLnJ1bnRpbWUuZW1pdFByb2plY3RDaGFuZ2VkKCl9ZW1pdFdvcmtzcGFjZVVwZGF0ZSgpe2NvbnN0IEE9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkudmFyaWFibGVzO2xldCBlPVtdO2Zvcihjb25zdCB0IGluIEEpQVt0XS50eXBlPT09bS5CUk9BRENBU1RfTUVTU0FHRV9UWVBFJiZlLnB1c2godCk7Zm9yKGxldCBBPTA7QTx0aGlzLnJ1bnRpbWUudGFyZ2V0cy5sZW5ndGg7QSsrKXtjb25zdCB0PXRoaXMucnVudGltZS50YXJnZXRzW0FdLmJsb2Nrcy5fYmxvY2tzO2Zvcihjb25zdCBBIGluIHQpaWYodFtBXS5maWVsZHMuQlJPQURDQVNUX09QVElPTil7Y29uc3Qgbj10W0FdLmZpZWxkcy5CUk9BRENBU1RfT1BUSU9OLmlkLGk9ZS5pbmRleE9mKG4pOy0xIT09aSYmKGU9ZS5zbGljZSgwLGkpLmNvbmNhdChlLnNsaWNlKGkrMSkpKX19Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKyspe2NvbnN0IHQ9ZVtBXTtkZWxldGUgdGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkudmFyaWFibGVzW3RdfWNvbnN0IHQ9T2JqZWN0LmFzc2lnbih7fSx0aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKS52YXJpYWJsZXMpLG49dGhpcy5lZGl0aW5nVGFyZ2V0LmlzU3RhZ2U/T2JqZWN0LmNyZWF0ZShudWxsKTpPYmplY3QuYXNzaWduKHt9LHRoaXMuZWRpdGluZ1RhcmdldC52YXJpYWJsZXMpLGk9T2JqZWN0LmtleXModCkubWFwKEE9PnRbQV0pLHI9T2JqZWN0LmtleXMobikubWFwKEE9Pm5bQV0pLG89T2JqZWN0LmtleXModGhpcy5lZGl0aW5nVGFyZ2V0LmNvbW1lbnRzKS5tYXAoQT0+dGhpcy5lZGl0aW5nVGFyZ2V0LmNvbW1lbnRzW0FdKS5maWx0ZXIoQT0+bnVsbD09PUEuYmxvY2tJZCkscz0nPHhtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHZhcmlhYmxlcz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy5jb25jYXQoaS5tYXAoQT0+QS50b1hNTCgpKS5qb2luKCksIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKS5jb25jYXQoci5tYXAoQT0+QS50b1hNTCghMCkpLmpvaW4oKSwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC92YXJpYWJsZXM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIikuY29uY2F0KG8ubWFwKEE9PkEudG9YTUwoKSkuam9pbigpLCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKS5jb25jYXQodGhpcy5lZGl0aW5nVGFyZ2V0LmJsb2Nrcy50b1hNTCh0aGlzLmVkaXRpbmdUYXJnZXQuY29tbWVudHMpLCJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwveG1sPiIpO3RoaXMuZW1pdCgid29ya3NwYWNlVXBkYXRlIix7eG1sOnN9KX1nZXRUYXJnZXRJZEZvckRyYXdhYmxlSWQoQSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlEcmF3YWJsZUlkKEEpO3JldHVybiBlJiZlLmhhc093blByb3BlcnR5KCJpZCIpJiZlLmhhc093blByb3BlcnR5KCJpc1N0YWdlIikmJiFlLmlzU3RhZ2U/ZS5pZDpudWxsfXJlb3JkZXJUYXJnZXQoQSxlKXtsZXQgdD10aGlzLnJ1bnRpbWUudGFyZ2V0cztpZigoQT1RLmNsYW1wKEEsMCx0Lmxlbmd0aC0xKSk9PT0oZT1RLmNsYW1wKGUsMCx0Lmxlbmd0aC0xKSkpcmV0dXJuITE7Y29uc3Qgbj10W0FdO3JldHVybiB0PXQuc2xpY2UoMCxBKS5jb25jYXQodC5zbGljZShBKzEpKSx0LnNwbGljZShlLDAsbiksdGhpcy5ydW50aW1lLnRhcmdldHM9dCx0aGlzLmVtaXRUYXJnZXRzVXBkYXRlKCksITB9cmVvcmRlckNvc3R1bWUoQSxlLHQpe2NvbnN0IG49dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoQSk7aWYobil7Y29uc3QgQT1uLnJlb3JkZXJDb3N0dW1lKGUsdCk7cmV0dXJuIEEmJnRoaXMucnVudGltZS5lbWl0UHJvamVjdENoYW5nZWQoKSxBfXJldHVybiExfXJlb3JkZXJTb3VuZChBLGUsdCl7Y29uc3Qgbj10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChBKTtpZihuKXtjb25zdCBBPW4ucmVvcmRlclNvdW5kKGUsdCk7cmV0dXJuIEEmJnRoaXMucnVudGltZS5lbWl0UHJvamVjdENoYW5nZWQoKSxBfXJldHVybiExfXN0YXJ0RHJhZyhBKXtjb25zdCBlPXRoaXMucnVudGltZS5nZXRUYXJnZXRCeUlkKEEpO2UmJih0aGlzLl9kcmFnVGFyZ2V0PWUsZS5zdGFydERyYWcoKSl9c3RvcERyYWcoQSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChBKTtlJiYodGhpcy5fZHJhZ1RhcmdldD1udWxsLGUuc3RvcERyYWcoKSx0aGlzLnNldEVkaXRpbmdUYXJnZXQoZS5zcHJpdGUmJmUuc3ByaXRlLmNsb25lc1swXT9lLnNwcml0ZS5jbG9uZXNbMF0uaWQ6ZS5pZCkpfXBvc3RTcHJpdGVJbmZvKEEpe3RoaXMuX2RyYWdUYXJnZXQ/dGhpcy5fZHJhZ1RhcmdldC5wb3N0U3ByaXRlSW5mbyhBKTp0aGlzLmVkaXRpbmdUYXJnZXQucG9zdFNwcml0ZUluZm8oQSksdGhpcy5ydW50aW1lLmVtaXRQcm9qZWN0Q2hhbmdlZCgpfXNldFZhcmlhYmxlVmFsdWUoQSxlLHQpe2NvbnN0IG49dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoQSk7aWYobil7Y29uc3QgQT1uLmxvb2t1cFZhcmlhYmxlQnlJZChlKTtpZihBKXJldHVybiBBLnZhbHVlPXQsQS5pc0Nsb3VkJiZ0aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLmNsb3VkLnJlcXVlc3RVcGRhdGVWYXJpYWJsZShBLm5hbWUsQS52YWx1ZSksITB9cmV0dXJuITF9Z2V0VmFyaWFibGVWYWx1ZShBLGUpe2NvbnN0IHQ9dGhpcy5ydW50aW1lLmdldFRhcmdldEJ5SWQoQSk7aWYodCl7Y29uc3QgQT10Lmxvb2t1cFZhcmlhYmxlQnlJZChlKTtpZihBKXJldHVybiBBLnZhbHVlfXJldHVybiBudWxsfWNvbmZpZ3VyZVNjcmF0Y2hMaW5rU29ja2V0RmFjdG9yeShBKXt0aGlzLnJ1bnRpbWUuY29uZmlndXJlU2NyYXRjaExpbmtTb2NrZXRGYWN0b3J5KEEpfX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5ieXRlTGVuZ3RoPWZ1bmN0aW9uKEEpe3ZhciBlPUIoQSksdD1lWzBdLG49ZVsxXTtyZXR1cm4gMyoodCtuKS80LW59LGUudG9CeXRlQXJyYXk9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuPUIoQSksbz1uWzBdLHM9blsxXSxhPW5ldyByKGZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gMyooZSt0KS80LXR9KDAsbyxzKSksYz0wLGc9cz4wP28tNDpvO2Zvcih0PTA7dDxnO3QrPTQpZT1pW0EuY2hhckNvZGVBdCh0KV08PDE4fGlbQS5jaGFyQ29kZUF0KHQrMSldPDwxMnxpW0EuY2hhckNvZGVBdCh0KzIpXTw8NnxpW0EuY2hhckNvZGVBdCh0KzMpXSxhW2MrK109ZT4+MTYmMjU1LGFbYysrXT1lPj44JjI1NSxhW2MrK109MjU1JmU7Mj09PXMmJihlPWlbQS5jaGFyQ29kZUF0KHQpXTw8MnxpW0EuY2hhckNvZGVBdCh0KzEpXT4+NCxhW2MrK109MjU1JmUpOzE9PT1zJiYoZT1pW0EuY2hhckNvZGVBdCh0KV08PDEwfGlbQS5jaGFyQ29kZUF0KHQrMSldPDw0fGlbQS5jaGFyQ29kZUF0KHQrMildPj4yLGFbYysrXT1lPj44JjI1NSxhW2MrK109MjU1JmUpO3JldHVybiBhfSxlLmZyb21CeXRlQXJyYXk9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlLHQ9QS5sZW5ndGgsaT10JTMscj1bXSxvPTAscz10LWk7bzxzO28rPTE2MzgzKXIucHVzaChjKEEsbyxvKzE2MzgzPnM/czpvKzE2MzgzKSk7MT09PWk/KGU9QVt0LTFdLHIucHVzaChuW2U+PjJdK25bZTw8NCY2M10rIj09IikpOjI9PT1pJiYoZT0oQVt0LTJdPDw4KStBW3QtMV0sci5wdXNoKG5bZT4+MTBdK25bZT4+NCY2M10rbltlPDwyJjYzXSsiPSIpKTtyZXR1cm4gci5qb2luKCIiKX07Zm9yKHZhciBuPVtdLGk9W10scj0idW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQ4QXJyYXk/VWludDhBcnJheTpBcnJheSxvPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIixzPTAsYT1vLmxlbmd0aDtzPGE7KytzKW5bc109b1tzXSxpW28uY2hhckNvZGVBdChzKV09cztmdW5jdGlvbiBCKEEpe3ZhciBlPUEubGVuZ3RoO2lmKGUlND4wKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBzdHJpbmcuIExlbmd0aCBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgNCIpO3ZhciB0PUEuaW5kZXhPZigiPSIpO3JldHVybi0xPT09dCYmKHQ9ZSksW3QsdD09PWU/MDo0LXQlNF19ZnVuY3Rpb24gYyhBLGUsdCl7Zm9yKHZhciBpLHIsbz1bXSxzPWU7czx0O3MrPTMpaT0oQVtzXTw8MTYmMTY3MTE2ODApKyhBW3MrMV08PDgmNjUyODApKygyNTUmQVtzKzJdKSxvLnB1c2goblsocj1pKT4+MTgmNjNdK25bcj4+MTImNjNdK25bcj4+NiY2M10rbls2MyZyXSk7cmV0dXJuIG8uam9pbigiIil9aVsiLSIuY2hhckNvZGVBdCgwKV09NjIsaVsiXyIuY2hhckNvZGVBdCgwKV09NjN9LGZ1bmN0aW9uKEEsZSl7Ci8qISBpZWVlNzU0LiBCU0QtMy1DbGF1c2UgTGljZW5zZS4gRmVyb3NzIEFib3VraGFkaWplaCA8aHR0cHM6Ly9mZXJvc3Mub3JnL29wZW5zb3VyY2U+ICovCmUucmVhZD1mdW5jdGlvbihBLGUsdCxuLGkpe3ZhciByLG8scz04Kmktbi0xLGE9KDE8PHMpLTEsQj1hPj4xLGM9LTcsZz10P2ktMTowLEU9dD8tMToxLFE9QVtlK2ddO2ZvcihnKz1FLHI9USYoMTw8LWMpLTEsUT4+PS1jLGMrPXM7Yz4wO3I9MjU2KnIrQVtlK2ddLGcrPUUsYy09OCk7Zm9yKG89ciYoMTw8LWMpLTEscj4+PS1jLGMrPW47Yz4wO289MjU2Km8rQVtlK2ddLGcrPUUsYy09OCk7aWYoMD09PXIpcj0xLUI7ZWxzZXtpZihyPT09YSlyZXR1cm4gbz9OYU46MS8wKihRPy0xOjEpO28rPU1hdGgucG93KDIsbiksci09Qn1yZXR1cm4oUT8tMToxKSpvKk1hdGgucG93KDIsci1uKX0sZS53cml0ZT1mdW5jdGlvbihBLGUsdCxuLGkscil7dmFyIG8scyxhLEI9OCpyLWktMSxjPSgxPDxCKS0xLGc9Yz4+MSxFPTIzPT09aT9NYXRoLnBvdygyLC0yNCktTWF0aC5wb3coMiwtNzcpOjAsUT1uPzA6ci0xLHU9bj8xOi0xLGw9ZTwwfHwwPT09ZSYmMS9lPDA/MTowO2ZvcihlPU1hdGguYWJzKGUpLGlzTmFOKGUpfHxlPT09MS8wPyhzPWlzTmFOKGUpPzE6MCxvPWMpOihvPU1hdGguZmxvb3IoTWF0aC5sb2coZSkvTWF0aC5MTjIpLGUqKGE9TWF0aC5wb3coMiwtbykpPDEmJihvLS0sYSo9MiksKGUrPW8rZz49MT9FL2E6RSpNYXRoLnBvdygyLDEtZykpKmE+PTImJihvKyssYS89MiksbytnPj1jPyhzPTAsbz1jKTpvK2c+PTE/KHM9KGUqYS0xKSpNYXRoLnBvdygyLGkpLG8rPWcpOihzPWUqTWF0aC5wb3coMixnLTEpKk1hdGgucG93KDIsaSksbz0wKSk7aT49ODtBW3QrUV09MjU1JnMsUSs9dSxzLz0yNTYsaS09OCk7Zm9yKG89bzw8aXxzLEIrPWk7Qj4wO0FbdCtRXT0yNTUmbyxRKz11LG8vPTI1NixCLT04KTtBW3QrUS11XXw9MTI4Kmx9fSxmdW5jdGlvbihBLGUpe3ZhciB0PXt9LnRvU3RyaW5nO0EuZXhwb3J0cz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihBKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT10LmNhbGwoQSl9fSxmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKEEpe3ZhciBuPXZvaWQgMCE9PUEmJkF8fCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZnx8d2luZG93LGk9RnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5O2Z1bmN0aW9uIHIoQSxlKXt0aGlzLl9pZD1BLHRoaXMuX2NsZWFyRm49ZX1lLnNldFRpbWVvdXQ9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHIoaS5jYWxsKHNldFRpbWVvdXQsbixhcmd1bWVudHMpLGNsZWFyVGltZW91dCl9LGUuc2V0SW50ZXJ2YWw9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHIoaS5jYWxsKHNldEludGVydmFsLG4sYXJndW1lbnRzKSxjbGVhckludGVydmFsKX0sZS5jbGVhclRpbWVvdXQ9ZS5jbGVhckludGVydmFsPWZ1bmN0aW9uKEEpe0EmJkEuY2xvc2UoKX0sci5wcm90b3R5cGUudW5yZWY9ci5wcm90b3R5cGUucmVmPWZ1bmN0aW9uKCl7fSxyLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe3RoaXMuX2NsZWFyRm4uY2FsbChuLHRoaXMuX2lkKX0sZS5lbnJvbGw9ZnVuY3Rpb24oQSxlKXtjbGVhclRpbWVvdXQoQS5faWRsZVRpbWVvdXRJZCksQS5faWRsZVRpbWVvdXQ9ZX0sZS51bmVucm9sbD1mdW5jdGlvbihBKXtjbGVhclRpbWVvdXQoQS5faWRsZVRpbWVvdXRJZCksQS5faWRsZVRpbWVvdXQ9LTF9LGUuX3VucmVmQWN0aXZlPWUuYWN0aXZlPWZ1bmN0aW9uKEEpe2NsZWFyVGltZW91dChBLl9pZGxlVGltZW91dElkKTt2YXIgZT1BLl9pZGxlVGltZW91dDtlPj0wJiYoQS5faWRsZVRpbWVvdXRJZD1zZXRUaW1lb3V0KChmdW5jdGlvbigpe0EuX29uVGltZW91dCYmQS5fb25UaW1lb3V0KCl9KSxlKSl9LHQoMTMxKSxlLnNldEltbWVkaWF0ZT0idW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGYuc2V0SW1tZWRpYXRlfHx2b2lkIDAhPT1BJiZBLnNldEltbWVkaWF0ZXx8dGhpcyYmdGhpcy5zZXRJbW1lZGlhdGUsZS5jbGVhckltbWVkaWF0ZT0idW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGYuY2xlYXJJbW1lZGlhdGV8fHZvaWQgMCE9PUEmJkEuY2xlYXJJbW1lZGlhdGV8fHRoaXMmJnRoaXMuY2xlYXJJbW1lZGlhdGV9KS5jYWxsKHRoaXMsdCgxNSkpfSxmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKEEsZSl7IWZ1bmN0aW9uKEEsdCl7InVzZSBzdHJpY3QiO2lmKCFBLnNldEltbWVkaWF0ZSl7dmFyIG4saSxyLG8scyxhPTEsQj17fSxjPSExLGc9QS5kb2N1bWVudCxFPU9iamVjdC5nZXRQcm90b3R5cGVPZiYmT2JqZWN0LmdldFByb3RvdHlwZU9mKEEpO0U9RSYmRS5zZXRUaW1lb3V0P0U6QSwiW29iamVjdCBwcm9jZXNzXSI9PT17fS50b1N0cmluZy5jYWxsKEEucHJvY2Vzcyk/bj1mdW5jdGlvbihBKXtlLm5leHRUaWNrKChmdW5jdGlvbigpe3UoQSl9KSl9OiFmdW5jdGlvbigpe2lmKEEucG9zdE1lc3NhZ2UmJiFBLmltcG9ydFNjcmlwdHMpe3ZhciBlPSEwLHQ9QS5vbm1lc3NhZ2U7cmV0dXJuIEEub25tZXNzYWdlPWZ1bmN0aW9uKCl7ZT0hMX0sQS5wb3N0TWVzc2FnZSgiIiwiKiIpLEEub25tZXNzYWdlPXQsZX19KCk/QS5NZXNzYWdlQ2hhbm5lbD8oKHI9bmV3IE1lc3NhZ2VDaGFubmVsKS5wb3J0MS5vbm1lc3NhZ2U9ZnVuY3Rpb24oQSl7dShBLmRhdGEpfSxuPWZ1bmN0aW9uKEEpe3IucG9ydDIucG9zdE1lc3NhZ2UoQSl9KTpnJiYib25yZWFkeXN0YXRlY2hhbmdlImluIGcuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik/KGk9Zy5kb2N1bWVudEVsZW1lbnQsbj1mdW5jdGlvbihBKXt2YXIgZT1nLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO2Uub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7dShBKSxlLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLGkucmVtb3ZlQ2hpbGQoZSksZT1udWxsfSxpLmFwcGVuZENoaWxkKGUpfSk6bj1mdW5jdGlvbihBKXtzZXRUaW1lb3V0KHUsMCxBKX06KG89InNldEltbWVkaWF0ZSQiK01hdGgucmFuZG9tKCkrIiQiLHM9ZnVuY3Rpb24oZSl7ZS5zb3VyY2U9PT1BJiYic3RyaW5nIj09dHlwZW9mIGUuZGF0YSYmMD09PWUuZGF0YS5pbmRleE9mKG8pJiZ1KCtlLmRhdGEuc2xpY2Uoby5sZW5ndGgpKX0sQS5hZGRFdmVudExpc3RlbmVyP0EuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSk6QS5hdHRhY2hFdmVudCgib25tZXNzYWdlIixzKSxuPWZ1bmN0aW9uKGUpe0EucG9zdE1lc3NhZ2UobytlLCIqIil9KSxFLnNldEltbWVkaWF0ZT1mdW5jdGlvbihBKXsiZnVuY3Rpb24iIT10eXBlb2YgQSYmKEE9bmV3IEZ1bmN0aW9uKCIiK0EpKTtmb3IodmFyIGU9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSksdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3QrMV07dmFyIGk9e2NhbGxiYWNrOkEsYXJnczplfTtyZXR1cm4gQlthXT1pLG4oYSksYSsrfSxFLmNsZWFySW1tZWRpYXRlPVF9ZnVuY3Rpb24gUShBKXtkZWxldGUgQltBXX1mdW5jdGlvbiB1KEEpe2lmKGMpc2V0VGltZW91dCh1LDAsQSk7ZWxzZXt2YXIgZT1CW0FdO2lmKGUpe2M9ITA7dHJ5eyFmdW5jdGlvbihBKXt2YXIgZT1BLmNhbGxiYWNrLHQ9QS5hcmdzO3N3aXRjaCh0Lmxlbmd0aCl7Y2FzZSAwOmUoKTticmVhaztjYXNlIDE6ZSh0WzBdKTticmVhaztjYXNlIDI6ZSh0WzBdLHRbMV0pO2JyZWFrO2Nhc2UgMzplKHRbMF0sdFsxXSx0WzJdKTticmVhaztkZWZhdWx0OmUuYXBwbHkodm9pZCAwLHQpfX0oZSl9ZmluYWxseXtRKEEpLGM9ITF9fX19fSgidW5kZWZpbmVkIj09dHlwZW9mIHNlbGY/dm9pZCAwPT09QT90aGlzOkE6c2VsZil9KS5jYWxsKHRoaXMsdCgxNSksdCg0MCkpfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDUpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuY2FsbGJhY2tzPVtdLHRoaXMubmV4dFJlc3BvbnNlSWQ9MH1jYWxsKEEsZSl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsbj1uZXcgQXJyYXkodD4yP3QtMjowKSxpPTI7aTx0O2krKyluW2ktMl09YXJndW1lbnRzW2ldO3JldHVybiB0aGlzLnRyYW5zZmVyQ2FsbChBLGUsbnVsbCwuLi5uKX10cmFuc2ZlckNhbGwoQSxlLHQpe3RyeXtjb25zdHtwcm92aWRlcjpvLGlzUmVtb3RlOnN9PXRoaXMuX2dldFNlcnZpY2VQcm92aWRlcihBKTtpZihvKXtmb3IodmFyIG49YXJndW1lbnRzLmxlbmd0aCxpPW5ldyBBcnJheShuPjM/bi0zOjApLHI9MztyPG47cisrKWlbci0zXT1hcmd1bWVudHNbcl07aWYocylyZXR1cm4gdGhpcy5fcmVtb3RlVHJhbnNmZXJDYWxsKG8sQSxlLHQsLi4uaSk7Y29uc3QgYT1vW2VdLmFwcGx5KG8saSk7cmV0dXJuIFByb21pc2UucmVzb2x2ZShhKX1yZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCJTZXJ2aWNlIG5vdCBmb3VuZDogIi5jb25jYXQoQSkpKX1jYXRjaChBKXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoQSl9fV9pc1JlbW90ZVNlcnZpY2UoQSl7dmFyIGUsdDtyZXR1cm4gbnVsbCE9PShlPW51bGw9PT0odD10aGlzLl9nZXRTZXJ2aWNlUHJvdmlkZXIoQSkpfHx2b2lkIDA9PT10P3ZvaWQgMDp0LmlzUmVtb3RlKSYmdm9pZCAwIT09ZSYmZX1fcmVtb3RlQ2FsbChBLGUsdCl7Zm9yKHZhciBuPWFyZ3VtZW50cy5sZW5ndGgsaT1uZXcgQXJyYXkobj4zP24tMzowKSxyPTM7cjxuO3IrKylpW3ItM109YXJndW1lbnRzW3JdO3JldHVybiB0aGlzLl9yZW1vdGVUcmFuc2ZlckNhbGwoQSxlLHQsbnVsbCwuLi5pKX1fcmVtb3RlVHJhbnNmZXJDYWxsKEEsZSx0LG4pe2Zvcih2YXIgaT1hcmd1bWVudHMubGVuZ3RoLHI9bmV3IEFycmF5KGk+ND9pLTQ6MCksbz00O288aTtvKyspcltvLTRdPWFyZ3VtZW50c1tvXTtyZXR1cm4gbmV3IFByb21pc2UoKGksbyk9Pntjb25zdCBzPXRoaXMuX3N0b3JlQ2FsbGJhY2tzKGksbyk7ci5sZW5ndGg+MCYmImZ1bmN0aW9uIj09dHlwZW9mIHJbci5sZW5ndGgtMV0uZnVuYyYmKHIucG9wKCksci5wb3AoKSksbj9BLnBvc3RNZXNzYWdlKHtzZXJ2aWNlOmUsbWV0aG9kOnQscmVzcG9uc2VJZDpzLGFyZ3M6cn0sbik6QS5wb3N0TWVzc2FnZSh7c2VydmljZTplLG1ldGhvZDp0LHJlc3BvbnNlSWQ6cyxhcmdzOnJ9KX0pfV9zdG9yZUNhbGxiYWNrcyhBLGUpe2NvbnN0IHQ9dGhpcy5uZXh0UmVzcG9uc2VJZCsrO3JldHVybiB0aGlzLmNhbGxiYWNrc1t0XT1bQSxlXSx0fV9kZWxpdmVyUmVzcG9uc2UoQSxlKXt0cnl7Y29uc3RbdCxuXT10aGlzLmNhbGxiYWNrc1tBXTtkZWxldGUgdGhpcy5jYWxsYmFja3NbQV0sZS5lcnJvcj9uKGUuZXJyb3IpOnQoZS5yZXN1bHQpfWNhdGNoKEEpe24uZXJyb3IoIkRpc3BhdGNoIGNhbGxiYWNrIGZhaWxlZDogIi5jb25jYXQoQSkpfX1fb25NZXNzYWdlKEEsZSl7Y29uc3QgdD1lLmRhdGE7bGV0IGk7dC5hcmdzPXQuYXJnc3x8W10sdC5zZXJ2aWNlP2k9ImRpc3BhdGNoIj09PXQuc2VydmljZT90aGlzLl9vbkRpc3BhdGNoTWVzc2FnZShBLHQpOnRoaXMuY2FsbCh0LnNlcnZpY2UsdC5tZXRob2QsLi4udC5hcmdzKTp2b2lkIDA9PT10LnJlc3BvbnNlSWQ/bi5lcnJvcigiRGlzcGF0Y2ggY2F1Z2h0IG1hbGZvcm1lZCBtZXNzYWdlIGZyb20gYSB3b3JrZXI6ICIuY29uY2F0KEpTT04uc3RyaW5naWZ5KGUpKSk6dGhpcy5fZGVsaXZlclJlc3BvbnNlKHQucmVzcG9uc2VJZCx0KSxpJiYodm9pZCAwPT09dC5yZXNwb25zZUlkP24uZXJyb3IoIkRpc3BhdGNoIG1lc3NhZ2UgbWlzc2luZyByZXF1aXJlZCByZXNwb25zZSBJRDogIi5jb25jYXQoSlNPTi5zdHJpbmdpZnkoZSkpKTppLnRoZW4oZT0+QS5wb3N0TWVzc2FnZSh7cmVzcG9uc2VJZDp0LnJlc3BvbnNlSWQscmVzdWx0OmV9KSxlPT5BLnBvc3RNZXNzYWdlKHtyZXNwb25zZUlkOnQucmVzcG9uc2VJZCxlcnJvcjoiIi5jb25jYXQoZSl9KSkpfV9nZXRTZXJ2aWNlUHJvdmlkZXIoQSl7dGhyb3cgbmV3IEVycm9yKCJDb3VsZCBub3QgZ2V0IHByb3ZpZGVyIGZvciAiLmNvbmNhdChBLCI6IF9nZXRTZXJ2aWNlUHJvdmlkZXIgbm90IGltcGxlbWVudGVkIikpfV9vbkRpc3BhdGNoTWVzc2FnZShBLGUpe3Rocm93IG5ldyBFcnJvcigiVW5pbXBsZW1lbnRlZCBkaXNwYXRjaCBtZXNzYWdlIGhhbmRsZXIgY2Fubm90IGhhbmRsZSAiLmNvbmNhdChlLm1ldGhvZCwiIG1ldGhvZCIpKX19fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49dCgyMSksaT10KDEzNSkscj1uZXcgbixvPUFycmF5LnByb3RvdHlwZS5zbGljZTsoZT1BLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIHQ9ZnVuY3Rpb24oKXtyZXR1cm4gci53cml0ZShBLHZvaWQgMCxvLmNhbGwoYXJndW1lbnRzKSksdH07cmV0dXJuIHQuZGVidWc9ZnVuY3Rpb24oKXtyZXR1cm4gci53cml0ZShBLCJkZWJ1ZyIsby5jYWxsKGFyZ3VtZW50cykpLHR9LHQuaW5mbz1mdW5jdGlvbigpe3JldHVybiByLndyaXRlKEEsImluZm8iLG8uY2FsbChhcmd1bWVudHMpKSx0fSx0Lndhcm49ZnVuY3Rpb24oKXtyZXR1cm4gci53cml0ZShBLCJ3YXJuIixvLmNhbGwoYXJndW1lbnRzKSksdH0sdC5lcnJvcj1mdW5jdGlvbigpe3JldHVybiByLndyaXRlKEEsImVycm9yIixvLmNhbGwoYXJndW1lbnRzKSksdH0sdC5sb2c9dC5kZWJ1Zyx0LnN1Z2dlc3Q9ZS5zdWdnZXN0LHQuZm9ybWF0PXIuZm9ybWF0LHR9KS5kZWZhdWx0QmFja2VuZD1lLmRlZmF1bHRGb3JtYXR0ZXI9bnVsbCxlLnBpcGU9ZnVuY3Rpb24oQSl7cmV0dXJuIHIucGlwZShBKX0sZS5lbmQ9ZS51bnBpcGU9ZS5kaXNhYmxlPWZ1bmN0aW9uKEEpe3JldHVybiByLnVucGlwZShBKX0sZS5UcmFuc2Zvcm09bixlLkZpbHRlcj1pLGUuc3VnZ2VzdD1uZXcgaSxlLmVuYWJsZT1mdW5jdGlvbigpe3JldHVybiBlLmRlZmF1bHRGb3JtYXR0ZXI/ci5waXBlKGUuc3VnZ2VzdCkucGlwZShlLmRlZmF1bHRGb3JtYXR0ZXIpLnBpcGUoZS5kZWZhdWx0QmFja2VuZCk6ci5waXBlKGUuc3VnZ2VzdCkucGlwZShlLmRlZmF1bHRCYWNrZW5kKX19LGZ1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdCgpe3RoaXMuX2V2ZW50cz17fX10LnByb3RvdHlwZT17b246ZnVuY3Rpb24oQSxlKXt0aGlzLl9ldmVudHN8fCh0aGlzLl9ldmVudHM9e30pO3ZhciB0PXRoaXMuX2V2ZW50cztyZXR1cm4odFtBXXx8KHRbQV09W10pKS5wdXNoKGUpLHRoaXN9LHJlbW92ZUxpc3RlbmVyOmZ1bmN0aW9uKEEsZSl7dmFyIHQsbj10aGlzLl9ldmVudHNbQV18fFtdO2Zvcih0PW4ubGVuZ3RoLTE7dD49MCYmblt0XTt0LS0pblt0XSE9PWUmJm5bdF0uY2IhPT1lfHxuLnNwbGljZSh0LDEpfSxyZW1vdmVBbGxMaXN0ZW5lcnM6ZnVuY3Rpb24oQSl7QT90aGlzLl9ldmVudHNbQV0mJih0aGlzLl9ldmVudHNbQV09W10pOnRoaXMuX2V2ZW50cz17fX0sbGlzdGVuZXJzOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLl9ldmVudHMmJnRoaXMuX2V2ZW50c1tBXXx8W119LGVtaXQ6ZnVuY3Rpb24oQSl7dGhpcy5fZXZlbnRzfHwodGhpcy5fZXZlbnRzPXt9KTt2YXIgZSx0PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxuPXRoaXMuX2V2ZW50c1tBXXx8W107Zm9yKGU9bi5sZW5ndGgtMTtlPj0wJiZuW2VdO2UtLSluW2VdLmFwcGx5KHRoaXMsdCk7cmV0dXJuIHRoaXN9LHdoZW46ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5vbmNlKEEsZSwhMCl9LG9uY2U6ZnVuY3Rpb24oQSxlLHQpe2lmKCFlKXJldHVybiB0aGlzO2Z1bmN0aW9uIG4oKXt0fHx0aGlzLnJlbW92ZUxpc3RlbmVyKEEsbiksZS5hcHBseSh0aGlzLGFyZ3VtZW50cykmJnQmJnRoaXMucmVtb3ZlTGlzdGVuZXIoQSxuKX1yZXR1cm4gbi5jYj1lLHRoaXMub24oQSxuKSx0aGlzfX0sdC5taXhpbj1mdW5jdGlvbihBKXt2YXIgZSxuPXQucHJvdG90eXBlO2ZvcihlIGluIG4pbi5oYXNPd25Qcm9wZXJ0eShlKSYmKEEucHJvdG90eXBlW2VdPW5bZV0pfSxBLmV4cG9ydHM9dH0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoMjEpLGk9e2RlYnVnOjEsaW5mbzoyLHdhcm46MyxlcnJvcjo0fTtmdW5jdGlvbiByKCl7dGhpcy5lbmFibGVkPSEwLHRoaXMuZGVmYXVsdFJlc3VsdD0hMCx0aGlzLmNsZWFyKCl9ZnVuY3Rpb24gbyhBLGUpe3JldHVybiBBLm4udGVzdD9BLm4udGVzdChlKTpBLm49PWV9bi5taXhpbihyKSxyLnByb3RvdHlwZS5hbGxvdz1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLl93aGl0ZS5wdXNoKHtuOkEsbDppW2VdfSksdGhpc30sci5wcm90b3R5cGUuZGVueT1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLl9ibGFjay5wdXNoKHtuOkEsbDppW2VdfSksdGhpc30sci5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fd2hpdGU9W10sdGhpcy5fYmxhY2s9W10sdGhpc30sci5wcm90b3R5cGUudGVzdD1mdW5jdGlvbihBLGUpe3ZhciB0LG49TWF0aC5tYXgodGhpcy5fd2hpdGUubGVuZ3RoLHRoaXMuX2JsYWNrLmxlbmd0aCk7Zm9yKHQ9MDt0PG47dCsrKXtpZih0aGlzLl93aGl0ZVt0XSYmbyh0aGlzLl93aGl0ZVt0XSxBKSYmaVtlXT49dGhpcy5fd2hpdGVbdF0ubClyZXR1cm4hMDtpZih0aGlzLl9ibGFja1t0XSYmbyh0aGlzLl9ibGFja1t0XSxBKSYmaVtlXTw9dGhpcy5fYmxhY2tbdF0ubClyZXR1cm4hMX1yZXR1cm4gdGhpcy5kZWZhdWx0UmVzdWx0fSxyLnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihBLGUsdCl7aWYoIXRoaXMuZW5hYmxlZHx8dGhpcy50ZXN0KEEsZSkpcmV0dXJuIHRoaXMuZW1pdCgiaXRlbSIsQSxlLHQpfSxBLmV4cG9ydHM9cn0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoMjEpLGk9L1xuKyQvLHI9bmV3IG47ci53cml0ZT1mdW5jdGlvbihBLGUsdCl7dmFyIG49dC5sZW5ndGgtMTtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUmJmNvbnNvbGUubG9nKXtpZihjb25zb2xlLmxvZy5hcHBseSlyZXR1cm4gY29uc29sZS5sb2cuYXBwbHkoY29uc29sZSxbQSxlXS5jb25jYXQodCkpO2lmKEpTT04mJkpTT04uc3RyaW5naWZ5KXt0W25dJiYic3RyaW5nIj09dHlwZW9mIHRbbl0mJih0W25dPXRbbl0ucmVwbGFjZShpLCIiKSk7dHJ5e2ZvcihuPTA7bjx0Lmxlbmd0aDtuKyspdFtuXT1KU09OLnN0cmluZ2lmeSh0W25dKX1jYXRjaChBKXt9Y29uc29sZS5sb2codC5qb2luKCIgIikpfX19LHIuZm9ybWF0dGVycz1bImNvbG9yIiwibWluaWxvZyJdLHIuY29sb3I9dCgxMzcpLHIubWluaWxvZz10KDEzOCksQS5leHBvcnRzPXJ9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDIxKSxpPXQoODMpLHI9e2RlYnVnOlsiY3lhbiJdLGluZm86WyJwdXJwbGUiXSx3YXJuOlsieWVsbG93IiwhMF0sZXJyb3I6WyJyZWQiLCEwXX0sbz1uZXcgbjtvLndyaXRlPWZ1bmN0aW9uKEEsZSx0KXtjb25zb2xlLmxvZztjb25zb2xlW2VdJiZjb25zb2xlW2VdLmFwcGx5JiZjb25zb2xlW2VdLmFwcGx5KGNvbnNvbGUsWyIlYyIrQSsiICVjIitlLGkoImdyYXkiKSxpLmFwcGx5KGkscltlXSldLmNvbmNhdCh0KSl9LG8ucGlwZT1mdW5jdGlvbigpe30sQS5leHBvcnRzPW99LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDIxKSxpPXQoODMpLHI9e2RlYnVnOlsiZ3JheSJdLGluZm86WyJwdXJwbGUiXSx3YXJuOlsieWVsbG93IiwhMF0sZXJyb3I6WyJyZWQiLCEwXX0sbz1uZXcgbjtvLndyaXRlPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1jb25zb2xlLmxvZzsiZGVidWciIT1lJiZjb25zb2xlW2VdJiYobj1jb25zb2xlW2VdKTt2YXIgbz0wO2lmKCJpbmZvIiE9ZSl7Zm9yKDtvPHQubGVuZ3RoJiYic3RyaW5nIj09dHlwZW9mIHRbb107bysrKTtuLmFwcGx5KGNvbnNvbGUsWyIlYyIrQSsiICIrdC5zbGljZSgwLG8pLmpvaW4oIiAiKSxpLmFwcGx5KGkscltlXSldLmNvbmNhdCh0LnNsaWNlKG8pKSl9ZWxzZSBuLmFwcGx5KGNvbnNvbGUsWyIlYyIrQSxpLmFwcGx5KGkscltlXSldLmNvbmNhdCh0KSl9LG8ucGlwZT1mdW5jdGlvbigpe30sQS5leHBvcnRzPW99LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDIxKSxpPVtdLHI9bmV3IG47ci53cml0ZT1mdW5jdGlvbihBLGUsdCl7aS5wdXNoKFtBLGUsdF0pfSxyLmdldD1mdW5jdGlvbigpe3JldHVybiBpfSxyLmVtcHR5PWZ1bmN0aW9uKCl7aT1bXX0sQS5leHBvcnRzPXJ9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDIxKSxpPSExLHI9bmV3IG47ci53cml0ZT1mdW5jdGlvbihBLGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJiJ1bmRlZmluZWQiIT10eXBlb2YgSlNPTiYmSlNPTi5zdHJpbmdpZnkmJkpTT04ucGFyc2UpdHJ5e2l8fChpPXdpbmRvdy5sb2NhbFN0b3JhZ2UubWluaWxvZz9KU09OLnBhcnNlKHdpbmRvdy5sb2NhbFN0b3JhZ2UubWluaWxvZyk6W10pLGkucHVzaChbKG5ldyBEYXRlKS50b1N0cmluZygpLEEsZSx0XSksd2luZG93LmxvY2FsU3RvcmFnZS5taW5pbG9nPUpTT04uc3RyaW5naWZ5KGkpfWNhdGNoKEEpe319LEEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUsdCl7dmFyIG49dCgyMSksaT0obmV3IERhdGUpLnZhbHVlT2YoKS50b1N0cmluZygzNik7ZnVuY3Rpb24gcihBKXt0aGlzLnVybD1BLnVybHx8IiIsdGhpcy5jYWNoZT1bXSx0aGlzLnRpbWVyPW51bGwsdGhpcy5pbnRlcnZhbD1BLmludGVydmFsfHwzZTQsdGhpcy5lbmFibGVkPSEwLHRoaXMualF1ZXJ5PXdpbmRvdy5qUXVlcnksdGhpcy5leHRyYXM9e319bi5taXhpbihyKSxyLnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihBLGUsdCl7dGhpcy50aW1lcnx8dGhpcy5pbml0KCksdGhpcy5jYWNoZS5wdXNoKFtBLGVdLmNvbmNhdCh0KSl9LHIucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oKXtpZih0aGlzLmVuYWJsZWQmJnRoaXMualF1ZXJ5KXt2YXIgQT10aGlzO3RoaXMudGltZXI9c2V0VGltZW91dCgoZnVuY3Rpb24oKXt2YXIgZSx0LG49W10scj1BLnVybDtpZigwPT1BLmNhY2hlLmxlbmd0aClyZXR1cm4gQS5pbml0KCk7Zm9yKGU9MDtlPEEuY2FjaGUubGVuZ3RoO2UrKyl0cnl7SlNPTi5zdHJpbmdpZnkoQS5jYWNoZVtlXSksbi5wdXNoKEEuY2FjaGVbZV0pfWNhdGNoKEEpe31BLmpRdWVyeS5pc0VtcHR5T2JqZWN0KEEuZXh0cmFzKT8odD1KU09OLnN0cmluZ2lmeSh7bG9nczpufSkscj1BLnVybCsiP2NsaWVudF9pZD0iK2kpOnQ9SlNPTi5zdHJpbmdpZnkoQS5qUXVlcnkuZXh0ZW5kKHtsb2dzOm59LEEuZXh0cmFzKSksQS5qUXVlcnkuYWpheChyLHt0eXBlOiJQT1NUIixjYWNoZTohMSxwcm9jZXNzRGF0YTohMSxkYXRhOnQsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL2pzb24iLHRpbWVvdXQ6MWU0fSkuc3VjY2VzcygoZnVuY3Rpb24oZSx0LG4pe2UuaW50ZXJ2YWwmJihBLmludGVydmFsPU1hdGgubWF4KDFlMyxlLmludGVydmFsKSl9KSkuZXJyb3IoKGZ1bmN0aW9uKCl7QS5pbnRlcnZhbD0zZTR9KSkuYWx3YXlzKChmdW5jdGlvbigpe0EuaW5pdCgpfSkpLEEuY2FjaGU9W119KSx0aGlzLmludGVydmFsKX19LHIucHJvdG90eXBlLmVuZD1mdW5jdGlvbigpe30sci5qUXVlcnlXYWl0PWZ1bmN0aW9uKEEpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYod2luZG93LmpRdWVyeXx8d2luZG93LiQpKXJldHVybiBBKHdpbmRvdy5qUXVlcnl8fHdpbmRvdy4kKTsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmc2V0VGltZW91dCgoZnVuY3Rpb24oKXtyLmpRdWVyeVdhaXQoQSl9KSwyMDApfSxBLmV4cG9ydHM9cn0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg4MiksaT10KDUpLHI9dCg4NCksbz10KDEpLHM9dCgxNDUpLGE9dCgyKSxCPXQoODgpLGM9bmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpLGc9U3RyaW5nKHdpbmRvdy5sb2NhdGlvbi5ocmVmKS5zdGFydHNXaXRoKCJodHRwOi8vbG9jYWxob3N0OiIpLEU9Yy5oYXMoImxpdmV0ZXN0cyIpO2NvbnN0IFE9e2NvcmVFeGFtcGxlOigpPT50KDE0NikscGVuOigpPT50KDE0Nyksd2VkbzI6KCk9PnQoMTQ4KSxtdXNpYzooKT0+dCgxNTEpLG1pY3JvYml0OigpPT50KDIxNCksdGV4dDJzcGVlY2g6KCk9PnQoMjE1KSx0cmFuc2xhdGU6KCk9PnQoMjE2KSx2aWRlb1NlbnNpbmc6KCk9PnQoMjE3KSxldjM6KCk9PnQoMjUyKSxtYWtleW1ha2V5OigpPT50KDI1NCksYm9vc3Q6KCk9PnQoMjU1KSxnZHhmb3I6KCk9PnQoMjU2KSx0ZXh0OigpPT50KDI1OSksdHc6KCk9PnQoMjYwKSx0d0ZpbGVzOigpPT50KDI2MSkscG1Nb3Rpb25FeHBhbnNpb246KCk9PnQoMjYyKSxwbU9wZXJhdG9yc0V4cGFuc2lvbjooKT0+dCgyNjMpLHBtU2Vuc2luZ0V4cGFuc2lvbjooKT0+dCgyNjUpLHBtQ29udHJvbHNFeHBhbnNpb246KCk9PnQoMjY2KSxwbUV2ZW50c0V4cGFuc2lvbjooKT0+dCgyNjgpLHBtSW5saW5lQmxvY2tzOigpPT50KDI2OSksamdGaWxlczooKT0+dCgyNzApLGpnV2Vic2l0ZVJlcXVlc3RzOigpPT50KDI3MSksamdKU09OOigpPT50KDI3MiksamdSdW50aW1lOigpPT50KDI3MyksamdQcmlzbTooKT0+dCgyNzQpLGpnSWZyYW1lOigpPT50KDI3NyksamdFeHRlbmRlZEF1ZGlvOigpPT50KDI3OCksamdTY3JhdGNoQXV0aGVudGljYXRlOigpPT50KDI4MSksSmdQZXJtaXNzaW9uQmxvY2tzOigpPT50KDI4NCksamdDbG9uZXM6KCk9PnQoMjg2KSxqZ1R3ZWVuOigpPT50KDI4NyksamdEZWJ1Z2dpbmc6KCk9PnQoMjg4KSxqZ0Vhc3lTYXZlOigpPT50KDI4OSksamdQYWNrYWdlckFwcGxpY2F0aW9uczooKT0+dCgyOTApLGpnVGFpbGdhdGluZzooKT0+dCgyOTIpLGpnU2NyaXB0czooKT0+dCgyOTMpLGpnM2Q6KCk9PnQoMjk0KSxqZzNkVnI6KCk9PnQoMzA3KSxqZ1ZyOigpPT50KDMxMCksamdJbnRlcmZhY2VzOigpPT50KDMxMSksamdKYXZhc2NyaXB0OigpPT50KDMyMyksamdQYXRoZmluZGluZzooKT0+dCgzMjQpLGpnQW5pbWF0aW9uOigpPT50KDM0NCksamdTdG9yYWdlOigpPT50KDM0NSksamdUaW1lcnM6KCk9PnQoMzQ2KSxqZ0RldjooKT0+dCgzNDgpLGpnRG9vRG9vOigpPT50KDM1MCksamdCZXN0RXh0ZW5zaW9uOigpPT50KDM1MyksamdDaHJpc3RtYXM6KCk9PnQoMzU0KSxqd1VuaXRlOigpPT50KDM1OSksandQcm90bzooKT0+dCgzNjApLGp3UG9zdExpdDooKT0+dCgzNjEpLGp3UmVmbGV4OigpPT50KDM2MiksYmxvY2tseTJtYXRoOigpPT50KDM2MyksandYbWw6KCk9PnQoMzY0KSxqd1ZlY3RvcjooKT0+dCgzNjUpLGp3QXJyYXk6KCk9PnQoMzY2KSxqd1RhcmdldHM6KCk9PnQoMzY3KSxqd1BzeWNoaWM6KCk9PnQoMzY4KSxqd0xhbWJkYTooKT0+dCgzNzApLGp3TnVtOigpPT50KDM3MSksandDb2xvcjooKT0+dCgzNzMpLGp3U3RvcmFnZTooKT0+dCgzNzQpLGp3RGF0ZTooKT0+dCgzNzUpLGp3U2NvcGU6KCk9PnQoMzc2KSxqd1hNTDooKT0+dCgzNzcpLGp3UG9pbnRlcjooKT0+dCgzNzkpLGp3U3RydWN0czooKT0+dCgzODApLEdhbWVwYWQ6KCk9PnQoMzgxKSx0aGVzaG92ZWxjYW52YXNlZmZlY3RzOigpPT50KDM4Miksc2hvdmVsbHpjb21wcmVzc3M6KCk9PnQoMzgzKSxzaG92ZWxDb2xvclBpY2tlcjooKT0+dCgzODUpLHNob3ZlbGNzczooKT0+dCgzODYpLHByb2Zhbml0eUFQSTooKT0+dCgzODcpLGNhbnZhczooKT0+dCgzODgpLG5ld0NhbnZhczooKT0+dCgzOTApLHRlbXBWYXJzOigpPT50KDM5MiksY29sb3JzOigpPT50KDM5MykscG1DYW1lcmE6KCk9PnQoMzk0KSxzaGFya3Bvb2xQcmludGluZzooKT0+dCgzOTUpLFNQamF2YXNjcmlwdFYyOigpPT50KDM5Niksb2RkTWVzc2FnZTooKT0+dCgzOTcpLGxtc3V0aWxzYmxvY2tzOigpPT50KDM5OCksbG1zVGVtcFZhcnMyOigpPT50KDM5OSkseGVsdGFsbGl2Y2xpcGJsZW5kOigpPT50KDQwMCksRFRjYW1lcmFjb250cm9sczooKT0+dCg0MDEpLGl5Z1BlcmxpbjooKT0+dCg0MDIpLGZyM2Q6KCk9PnQoNDA1KX0sdT1bImFyZ3VtZW50IiwiY29sb3VyIiwiY29udHJvbCIsImRhdGEiLCJldmVudCIsImxvb2tzIiwibWF0aCIsIm1vdGlvbiIsIm9wZXJhdG9yIiwicHJvY2VkdXJlcyIsInNlbnNpbmciLCJzb3VuZCJdLGw9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoUSksaD1bXTsoZ3x8RSkmJmgucHVzaCgiamdEZXYiKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5uZXh0RXh0ZW5zaW9uV29ya2VyPTAsdGhpcy5wZW5kaW5nRXh0ZW5zaW9ucz1bXSx0aGlzLnBlbmRpbmdXb3JrZXJzPVtdLHRoaXMud29ya2VyVVJMcz1bXSx0aGlzLl9sb2FkZWRFeHRlbnNpb25zPW5ldyBNYXAsdGhpcy5zZWN1cml0eU1hbmFnZXI9bmV3IHMsdGhpcy52bT1BLHRoaXMucnVudGltZT1BLnJ1bnRpbWUsdGhpcy5sb2FkaW5nQXN5bmNFeHRlbnNpb25zPTAsdGhpcy5hc3luY0V4dGVuc2lvbnNMb2FkZWRDYWxsYmFja3M9W10sdGhpcy5idWlsdGluRXh0ZW5zaW9ucz1PYmplY3QuYXNzaWduKHt9LFEpLG4uc2V0U2VydmljZSgiZXh0ZW5zaW9ucyIsKEE9Pntjb25zdCBlPXt9O3JldHVybiBlLnJlZ2lzdGVyRXh0ZW5zaW9uU2VydmljZVN5bmM9QS5yZWdpc3RlckV4dGVuc2lvblNlcnZpY2VTeW5jLmJpbmQoQSksZS5hbGxvY2F0ZVdvcmtlcj1BLmFsbG9jYXRlV29ya2VyLmJpbmQoQSksZS5vbldvcmtlckluaXQ9QS5vbldvcmtlckluaXQuYmluZChBKSxlLnJlZ2lzdGVyRXh0ZW5zaW9uU2VydmljZT1BLnJlZ2lzdGVyRXh0ZW5zaW9uU2VydmljZS5iaW5kKEEpLGV9KSh0aGlzKSkuY2F0Y2goQT0+e2kuZXJyb3IoIkV4dGVuc2lvbk1hbmFnZXIgd2FzIHVuYWJsZSB0byByZWdpc3RlciBleHRlbnNpb24gc2VydmljZTogIi5jb25jYXQoSlNPTi5zdHJpbmdpZnkoQSkpKX0pLGguZm9yRWFjaChBPT57dGhpcy5sb2FkRXh0ZW5zaW9uVVJMKEEpfSksdGhpcy5leHRVcmxDb2Rlcz17fSx0aGlzLmtlZXBPbGRlcj1bXSx0aGlzLmV4dGVuc2lvbkhhc2hlcz17fX1nZXRDb3JlRXh0ZW5zaW9uTGlzdCgpe3JldHVybiBsfWdldEJ1aWx0SW5FeHRlbnNpb25zTGlzdCgpe3JldHVybiB0aGlzLmJ1aWx0aW5FeHRlbnNpb25zfWdldEFkZG9uQmxvY2tTd2l0Y2hlcygpe3JldHVybiBCKHRoaXMudm0pfWlzRXh0ZW5zaW9uTG9hZGVkKEEpe3JldHVybiB0aGlzLl9sb2FkZWRFeHRlbnNpb25zLmhhcyhBKX1pc0J1aWx0aW5FeHRlbnNpb24oQSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLmJ1aWx0aW5FeHRlbnNpb25zLEEpfWxvYWRFeHRlbnNpb25JZFN5bmMoQSl7aWYoIXRoaXMuaXNCdWlsdGluRXh0ZW5zaW9uKEEpKXJldHVybiB2b2lkIGkud2FybigiQ291bGQgbm90IGZpbmQgZXh0ZW5zaW9uICIuY29uY2F0KEEsIiBpbiB0aGUgYnVpbHQgaW4gZXh0ZW5zaW9ucy4iKSk7aWYodGhpcy5pc0V4dGVuc2lvbkxvYWRlZChBKSl7Y29uc3QgZT0iUmVqZWN0aW5nIGF0dGVtcHQgdG8gbG9hZCBhIHNlY29uZCBleHRlbnNpb24gd2l0aCBJRCAiLmNvbmNhdChBKTtyZXR1cm4gdm9pZCBpLndhcm4oZSl9Y29uc3QgZT1uZXcodGhpcy5idWlsdGluRXh0ZW5zaW9uc1tBXSgpKSh0aGlzLnJ1bnRpbWUpLHQ9dGhpcy5fcmVnaXN0ZXJJbnRlcm5hbEV4dGVuc2lvbihlKSxuPWUuZ2V0SW5mbygpLmlkO3RoaXMuX2xvYWRlZEV4dGVuc2lvbnMuc2V0KEEsdCksdGhpcy5ydW50aW1lLmNvbXBpbGVyUmVnaXN0ZXJFeHRlbnNpb24obixlKX1hZGRCdWlsdGluRXh0ZW5zaW9uKEEsZSl7dGhpcy5idWlsdGluRXh0ZW5zaW9uc1tBXT0oKT0+ZX1faXNWYWxpZEV4dGVuc2lvblVSTChBKXt0cnl7Y29uc3QgZT1uZXcgVVJMKEEpO3JldHVybiJodHRwczoiPT09ZS5wcm90b2NvbHx8Imh0dHA6Ij09PWUucHJvdG9jb2x8fCJkYXRhOiI9PT1lLnByb3RvY29sfHwiZmlsZToiPT09ZS5wcm90b2NvbH1jYXRjaChBKXtyZXR1cm4hMX19YXN5bmMgbG9hZEV4dGVuc2lvblVSTChBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06IiI7aWYodGhpcy5pc0J1aWx0aW5FeHRlbnNpb24oQSkpcmV0dXJuIHRoaXMubG9hZEV4dGVuc2lvbklkU3luYyhBKSxbQV07aWYodGhpcy5pc0V4dGVuc2lvblVSTExvYWRlZChBKSlyZXR1cm5bXTtpZighdGhpcy5faXNWYWxpZEV4dGVuc2lvblVSTChBKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZXh0ZW5zaW9uIFVSTDogIi5jb25jYXQoQSkpO0EuaW5jbHVkZXMoInBlbmd1aW5tb2Quc2l0ZSIpJiZhbGVydCgiRXh0ZW5zaW9ucyB1c2luZyBwZW5ndWlubW9kLnNpdGUgYXJlIGRlcHJlY2F0ZWQsIHBsZWFzZSBzd2FwIHRoZW0gb3ZlciB0byB1c2UgcGVuZ3Vpbm1vZC5jb20gaW5zdGVhZC4iKTtjb25zdCBpPUEucmVwbGFjZSgicGVuZ3Vpbm1vZC5zaXRlIiwicGVuZ3Vpbm1vZC5jb20iKTt0aGlzLnJ1bnRpbWUuc2V0RXh0ZXJuYWxDb21tdW5pY2F0aW9uTWV0aG9kKCJjdXN0b21FeHRlbnNpb25zIiwhMCksdGhpcy5sb2FkaW5nQXN5bmNFeHRlbnNpb25zKys7Y29uc3Qgcj1hd2FpdCB0aGlzLnNlY3VyaXR5TWFuYWdlci5nZXRTYW5kYm94TW9kZShpKSxvPWF3YWl0IHRoaXMuc2VjdXJpdHlNYW5hZ2VyLnJld3JpdGVFeHRlbnNpb25VUkwoaSkscz1hd2FpdCBmZXRjaChvKS50aGVuKEE9PkEuYmxvYigpKSxhPVVSTC5jcmVhdGVPYmplY3RVUkwocyksQj1hd2FpdCBuZXcgUHJvbWlzZShlPT57Y29uc3QgdD1uZXcgRmlsZVJlYWRlcjt0Lm9ubG9hZD1hc3luYyB0PT57bGV0e3RhcmdldDp7cmVzdWx0Om59fT10O2NvbnNvbGUubG9nKG4pLHRoaXMuZXh0VXJsQ29kZXNbQV09bixlKGF3YWl0IGFzeW5jIGZ1bmN0aW9uKEEpe2NvbnN0IGU9KG5ldyBUZXh0RW5jb2RlcikuZW5jb2RlKEEpLHQ9YXdhaXQgY3J5cHRvLnN1YnRsZS5kaWdlc3QoIlNIQS0yNTYiLGUpO3JldHVyblsuLi5uZXcgVWludDhBcnJheSh0KV0ubWFwKEE9PkEudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsIjAiKSkuam9pbigiIil9KG4pKX0sdC5vbmVycm9yPUE9Pntjb25zb2xlLmVycm9yKCJjb3VsZG50IHJlYWQgdGhlIGNvbnRlbnRzIG9mIHVybCIsdXJsLEEpfSx0LnJlYWRBc1RleHQocyl9KTtpZih0aGlzLmV4dGVuc2lvbkhhc2hlc1tBXT1CLGUmJmUhPT1CJiZ0aGlzLnNlY3VyaXR5TWFuYWdlci5zaG91bGRVc2VMb2NhbChBKSlyZXR1cm4gUHJvbWlzZS5yZWplY3QoInVzZUxvY2FsIik7aWYoInVuc2FuZGJveGVkIj09PXIpe2NvbnN0e2xvYWQ6QX09dCg0MDgpLGU9YXdhaXQgQShhLHRoaXMudm0pLmNhdGNoKEE9PnRoaXMuX2ZhaWxlZExvYWRpbmdFeHRlbnNpb25TY3JpcHQoQSkpLHI9dGhpcy5uZXh0RXh0ZW5zaW9uV29ya2VyKyssbz1bXTt0aGlzLndvcmtlclVSTHNbcl09aTtmb3IoY29uc3QgQSBvZiBlKXtjb25zdCBlPUEuZ2V0SW5mbygpLHQ9InVuc2FuZGJveGVkLiIuY29uY2F0KHIsIi4iKS5jb25jYXQoZS5pZCk7bi5zZXRTZXJ2aWNlU3luYyh0LEEpLG4uY2FsbFN5bmMoImV4dGVuc2lvbnMiLCJyZWdpc3RlckV4dGVuc2lvblNlcnZpY2VTeW5jIix0KSx0aGlzLl9sb2FkZWRFeHRlbnNpb25zLnNldChlLmlkLHQpLG8ucHVzaChlLmlkKSx0aGlzLnJ1bnRpbWUuY29tcGlsZXJSZWdpc3RlckV4dGVuc2lvbihlLmlkLEEpfXJldHVybiB0aGlzLl9maW5pc2hlZExvYWRpbmdFeHRlbnNpb25TY3JpcHQoKSxvfWxldCBjO2lmKCJ3b3JrZXIiPT09ciljPXQoNDEyKTtlbHNle2lmKCJpZnJhbWUiIT09cil0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgc2FuZGJveCBtb2RlOiAiLmNvbmNhdChyKSk7Yz0oYXdhaXQgdC5lKDEpLnRoZW4odC50LmJpbmQobnVsbCw1MDYsNykpKS5kZWZhdWx0fXJldHVybiBuZXcgUHJvbWlzZSgoQSxlKT0+e3RoaXMucGVuZGluZ0V4dGVuc2lvbnMucHVzaCh7ZXh0ZW5zaW9uVVJMOm8scmVzb2x2ZTpBLHJlamVjdDplfSksbi5hZGRXb3JrZXIobmV3IGMpfSkuY2F0Y2goQT0+dGhpcy5fZmFpbGVkTG9hZGluZ0V4dGVuc2lvblNjcmlwdChBKSl9YWxsQXN5bmNFeHRlbnNpb25zTG9hZGVkKCl7aWYoMCE9PXRoaXMubG9hZGluZ0FzeW5jRXh0ZW5zaW9ucylyZXR1cm4gbmV3IFByb21pc2UoKEEsZSk9Pnt0aGlzLmFzeW5jRXh0ZW5zaW9uc0xvYWRlZENhbGxiYWNrcy5wdXNoKHtyZXNvbHZlOkEscmVqZWN0OmV9KX0pfXJlZnJlc2hEeW5hbWljQ2F0ZWdvcnlzKEEpe2NvbnN0IGU9QT0+bi5jYWxsKEEsImdldEluZm8iKS50aGVuKGU9PnsoZT10aGlzLl9wcmVwYXJlRXh0ZW5zaW9uSW5mbyhBLGUpKS5pc0R5bmFtaWMmJm4uY2FsbCgicnVudGltZSIsIl9yZWZyZXNoRXh0ZW5zaW9uUHJpbWl0aXZlcyIsZSl9KS5jYXRjaChBPT57aS5lcnJvcigiRmFpbGVkIHRvIHJlZnJlc2ggYnVpbHQtaW4gZXh0ZW5zaW9uIHByaW1pdGl2ZXM6ICIuY29uY2F0KEEpKX0pO2lmKCF0aGlzLl9sb2FkZWRFeHRlbnNpb25zKXJldHVybiBQcm9taXNlLnJlamVjdCgiX2xvYWRlZEV4dGVuc2lvbnMgaXMgbm90IHJlYWRhYmxlIHlldCIpO2lmKCFBKXtjb25zdCBBPUFycmF5LmZyb20odGhpcy5fbG9hZGVkRXh0ZW5zaW9ucy52YWx1ZXMoKSkubWFwKGUpO3JldHVybiBQcm9taXNlLmFsbChBKX1yZXR1cm4gdGhpcy5fbG9hZGVkRXh0ZW5zaW9ucy5oYXMoQSk/ZSh0aGlzLl9sb2FkZWRFeHRlbnNpb25zLmdldChBKSk6UHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCJVbmtub3duIGV4dGVuc2lvbjogIi5jb25jYXQoQSkpKX1yZWZyZXNoQmxvY2tzKEEpe2NvbnN0IGU9QT0+bi5jYWxsKEEsImdldEluZm8iKS50aGVuKGU9PntlPXRoaXMuX3ByZXBhcmVFeHRlbnNpb25JbmZvKEEsZSksbi5jYWxsKCJydW50aW1lIiwiX3JlZnJlc2hFeHRlbnNpb25QcmltaXRpdmVzIixlKX0pLmNhdGNoKEE9PntpLmVycm9yKCJGYWlsZWQgdG8gcmVmcmVzaCBidWlsdC1pbiBleHRlbnNpb24gcHJpbWl0aXZlczogIi5jb25jYXQoQSkpfSk7aWYoIUEpe2NvbnN0IEE9QXJyYXkuZnJvbSh0aGlzLl9sb2FkZWRFeHRlbnNpb25zLnZhbHVlcygpKS5tYXAoZSk7cmV0dXJuIFByb21pc2UuYWxsKEEpfXJldHVybiB0aGlzLl9sb2FkZWRFeHRlbnNpb25zLmhhcyhBKT9lKHRoaXMuX2xvYWRlZEV4dGVuc2lvbnMuZ2V0KEEpKTpQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIlVua25vd24gZXh0ZW5zaW9uOiAiLmNvbmNhdChBKSkpfXByZXBhcmVTd2FwKEEpe2NvbnN0IGU9dGhpcy5fbG9hZGVkRXh0ZW5zaW9ucy5nZXQoQSkse3Byb3ZpZGVyOnQsaXNSZW1vdGU6aX09bi5fZ2V0U2VydmljZVByb3ZpZGVyKGUpOyhpfHwiZnVuY3Rpb24iPT10eXBlb2YgdC5kaXNwb3NlKSYmbi5jYWxsKGUsImRpc3Bvc2UiKSxkZWxldGUgbi5zZXJ2aWNlc1tlXSxkZWxldGUgdGhpcy5ydW50aW1lWyJleHRfIi5jb25jYXQoQSldLHRoaXMuX2xvYWRlZEV4dGVuc2lvbnMuZGVsZXRlKEEpO2NvbnN0IHI9K2Uuc3BsaXQoIi4iKVsxXTtkZWxldGUgdGhpcy53b3JrZXJVUkxzW3JdfXJlbW92ZUV4dGVuc2lvbihBKXtjb25zdCBlPXRoaXMuX2xvYWRlZEV4dGVuc2lvbnMuZ2V0KEEpLHtwcm92aWRlcjp0LGlzUmVtb3RlOml9PW4uX2dldFNlcnZpY2VQcm92aWRlcihlKTsoaXx8ImZ1bmN0aW9uIj09dHlwZW9mIHQuZGlzcG9zZSkmJm4uY2FsbChlLCJkaXNwb3NlIiksZGVsZXRlIG4uc2VydmljZXNbZV0sZGVsZXRlIHRoaXMucnVudGltZVsiZXh0XyIuY29uY2F0KEEpXSx0aGlzLl9sb2FkZWRFeHRlbnNpb25zLmRlbGV0ZShBKTtjb25zdCByPStlLnNwbGl0KCIuIilbMV07ZGVsZXRlIHRoaXMud29ya2VyVVJMc1tyXSxuLmNhbGwoInJ1bnRpbWUiLCJfcmVtb3ZlRXh0ZW5zaW9uUHJpbWl0aXZlIixBKSx0aGlzLnJlZnJlc2hCbG9ja3MoKX1nZXRFeHRlbnNpb25JZEZyb21PcGNvZGUoQSl7aWYoInN0cmluZyIhPXR5cGVvZiBBKXJldHVybiBjb25zb2xlLmVycm9yKCJpbnZhbGlkIG9wY29kZSAiK0EpLCIiO2NvbnN0IGU9QS5pbmRleE9mKCJfIiksdD1BLnN1YnN0cmluZygwLGUpLnJlcGxhY2UoL1teXHctXS9nLCItIik7cmV0dXJuLTE9PT11LmluZGV4T2YodCkmJiIiIT09dD90OnZvaWQgMH1maW5kVXNlZEV4dGVuc2lvbnMoKXtjb25zdCBBPVtdO2Zvcihjb25zdCBlIG9mIHRoaXMucnVudGltZS50YXJnZXRzKWZvcihjb25zdCB0IGluIGUuYmxvY2tzLl9ibG9ja3Mpe2NvbnN0IG49ZS5ibG9ja3MuZ2V0QmxvY2sodCksaT10aGlzLmdldEV4dGVuc2lvbklkRnJvbU9wY29kZShuLm9wY29kZSk7QS5wdXNoKGkpfXJldHVybiBBfXJlbW92ZVVudXNlZEV4dGVuc2lvbnMoKXtjb25zdCBBPVsuLi50aGlzLl9sb2FkZWRFeHRlbnNpb25zLmtleXMoKV0sZT10aGlzLmZpbmRVc2VkRXh0ZW5zaW9ucygpLHQ9QS5maWx0ZXIoQT0+IWUuaW5jbHVkZXMoQSkpO2Zvcihjb25zdCBBIG9mIHQpdGhpcy5yZW1vdmVFeHRlbnNpb24oQSl9YWxsb2NhdGVXb3JrZXIoKXtjb25zdCBBPXRoaXMubmV4dEV4dGVuc2lvbldvcmtlcisrLGU9dGhpcy5wZW5kaW5nRXh0ZW5zaW9ucy5zaGlmdCgpO3JldHVybiB0aGlzLnBlbmRpbmdXb3JrZXJzW0FdPWUsdGhpcy53b3JrZXJVUkxzW0FdPWUuZXh0ZW5zaW9uVVJMLFtBLGUuZXh0ZW5zaW9uVVJMXX1yZWdpc3RlckV4dGVuc2lvblNlcnZpY2VTeW5jKEEpe2NvbnN0IGU9bi5jYWxsU3luYyhBLCJnZXRJbmZvIik7dGhpcy5fcmVnaXN0ZXJFeHRlbnNpb25JbmZvKEEsZSl9cmVnaXN0ZXJFeHRlbnNpb25TZXJ2aWNlKEEpe24uY2FsbChBLCJnZXRJbmZvIikudGhlbihlPT57dGhpcy5fbG9hZGVkRXh0ZW5zaW9ucy5zZXQoZS5pZCxBKSx0aGlzLl9yZWdpc3RlckV4dGVuc2lvbkluZm8oQSxlKSx0aGlzLl9maW5pc2hlZExvYWRpbmdFeHRlbnNpb25TY3JpcHQoKX0pfV9maW5pc2hlZExvYWRpbmdFeHRlbnNpb25TY3JpcHQoKXt0aGlzLmxvYWRpbmdBc3luY0V4dGVuc2lvbnMtLSwwPT09dGhpcy5sb2FkaW5nQXN5bmNFeHRlbnNpb25zJiYodGhpcy5hc3luY0V4dGVuc2lvbnNMb2FkZWRDYWxsYmFja3MuZm9yRWFjaChBPT5BLnJlc29sdmUoKSksdGhpcy5hc3luY0V4dGVuc2lvbnNMb2FkZWRDYWxsYmFja3M9W10pfV9mYWlsZWRMb2FkaW5nRXh0ZW5zaW9uU2NyaXB0KEEpe3Rocm93IHRoaXMubG9hZGluZ0FzeW5jRXh0ZW5zaW9ucy0tLHRoaXMuYXN5bmNFeHRlbnNpb25zTG9hZGVkQ2FsbGJhY2tzLmZvckVhY2goZT0+ZS5yZWplY3QoQSkpLHRoaXMuYXN5bmNFeHRlbnNpb25zTG9hZGVkQ2FsbGJhY2tzPVtdLEF9b25Xb3JrZXJJbml0KEEsZSl7Y29uc3QgdD10aGlzLnBlbmRpbmdXb3JrZXJzW0FdO2RlbGV0ZSB0aGlzLnBlbmRpbmdXb3JrZXJzW0FdLGU/dC5yZWplY3QoZSk6dC5yZXNvbHZlKCl9X3JlZ2lzdGVySW50ZXJuYWxFeHRlbnNpb24oQSl7Y29uc3QgZT1BLmdldEluZm8oKSx0PXRoaXMubmV4dEV4dGVuc2lvbldvcmtlcisrLGk9ImV4dGVuc2lvbl8iLmNvbmNhdCh0LCJfIikuY29uY2F0KGUuaWQpO3JldHVybiBuLnNldFNlcnZpY2VTeW5jKGksQSksbi5jYWxsU3luYygiZXh0ZW5zaW9ucyIsInJlZ2lzdGVyRXh0ZW5zaW9uU2VydmljZVN5bmMiLGkpLGl9X3JlZ2lzdGVyRXh0ZW5zaW9uSW5mbyhBLGUpe2U9dGhpcy5fcHJlcGFyZUV4dGVuc2lvbkluZm8oQSxlKSxuLmNhbGwoInJ1bnRpbWUiLCJfcmVnaXN0ZXJFeHRlbnNpb25QcmltaXRpdmVzIixlKS5jYXRjaChlPT57aS5lcnJvcigiRmFpbGVkIHRvIHJlZ2lzdGVyIHByaW1pdGl2ZXMgZm9yIGV4dGVuc2lvbiBvbiBzZXJ2aWNlICIuY29uY2F0KEEsIjoiKSxlKX0pfV9wcmVwYXJlRXh0ZW5zaW9uSW5mbyhBLGUpe2lmKGU9T2JqZWN0LmFzc2lnbih7fSxlKSwhL15bYS16MC05XSskL2kudGVzdChlLmlkKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZXh0ZW5zaW9uIGlkIik7cmV0dXJuIGUubmFtZT1lLm5hbWV8fGUuaWQsZS5ibG9ja3M9ZS5ibG9ja3N8fFtdLGUudGFyZ2V0VHlwZXM9ZS50YXJnZXRUeXBlc3x8W10sZS5tZW51cz1lLm1lbnVzfHx7fSxlLm1lbnVzPXRoaXMuX3ByZXBhcmVNZW51SW5mbyhBLGUubWVudXMpLGUuYmxvY2tzPWUuYmxvY2tzLnJlZHVjZSgodCxuKT0+e3RyeXtsZXQgaTtzd2l0Y2gobil7Y2FzZSItLS0iOmk9Ii0tLSI7YnJlYWs7ZGVmYXVsdDppPXRoaXMuX3ByZXBhcmVCbG9ja0luZm8oQSxuLGUubWVudXMpfXQucHVzaChpKX1jYXRjaChBKXtpLmVycm9yKCJFcnJvciBwcm9jZXNzaW5nIGJsb2NrOiAiLmNvbmNhdChBLm1lc3NhZ2UsIiwgQmxvY2s6XG4iKS5jb25jYXQoSlNPTi5zdHJpbmdpZnkobikpLEEpfXJldHVybiB0fSxbXSksZX1fcHJlcGFyZU1lbnVJbmZvKEEsZSl7Y29uc3QgdD1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhlKTtmb3IobGV0IGk9MDtpPHQubGVuZ3RoO2krKyl7Y29uc3Qgcj10W2ldO2xldCBvPWVbcl07aWYoby5pdGVtc3x8InN0cmluZyI9PXR5cGVvZiBvLnZhcmlhYmxlVHlwZXx8KG89e2l0ZW1zOm99LGVbcl09byksInN0cmluZyI9PXR5cGVvZiBvLml0ZW1zKXtjb25zdCBlPW8uaXRlbXMsdD1uLnNlcnZpY2VzW0FdO28uaXRlbXM9dGhpcy5fZ2V0RXh0ZW5zaW9uTWVudUl0ZW1zLmJpbmQodGhpcyx0LGUpfX1yZXR1cm4gZX1fZ2V0RXh0ZW5zaW9uTWVudUl0ZW1zKEEsZSl7Y29uc3QgdD10aGlzLnJ1bnRpbWUuZ2V0RWRpdGluZ1RhcmdldCgpfHx0aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKSxuPXQ/dC5pZDpudWxsLGk9dGhpcy5ydW50aW1lLm1ha2VNZXNzYWdlQ29udGV4dEZvclRhcmdldCh0KSxvPUFbZV0uY2FsbChBLG4pLm1hcChBPT57c3dpdGNoKHR5cGVvZihBPXIoQSxpKSkpe2Nhc2Uib2JqZWN0IjpyZXR1cm4gQXJyYXkuaXNBcnJheShBKT9BLnNsaWNlKDAsMik6W3IoQS50ZXh0LGkpLEEudmFsdWVdO2Nhc2Uic3RyaW5nIjpyZXR1cm5bQSxBXTtkZWZhdWx0OnJldHVybiBBfX0pO2lmKCFvfHxvLmxlbmd0aDwxKXRocm93IG5ldyBFcnJvcigiRXh0ZW5zaW9uIG1lbnUgcmV0dXJuZWQgbm8gaXRlbXM6ICIuY29uY2F0KGUpKTtyZXR1cm4gb31fbm9ybWFsaXplKEEsZSl7c3dpdGNoKGUpe2Nhc2Uic3RyaW5nIjpyZXR1cm4gYS50b1N0cmluZyhBKTtjYXNlImJpZ2ludCI6Y2FzZSJudW1iZXIiOnJldHVybiBhLnRvTnVtYmVyKEEpO2Nhc2UiYm9vbGVhbiI6cmV0dXJuIGEudG9Cb29sZWFuKEEpO2Nhc2UiZnVuY3Rpb24iOnJldHVybiBuZXcgRnVuY3Rpb24oQSk7ZGVmYXVsdDpyZXR1cm4gYS50b1N0cmluZyhBKX19X3ByZXBhcmVCbG9ja0luZm8oQSxlLHQpe2lmKGUuYmxvY2tUeXBlPT09by5YTUwpcmV0dXJuKGU9T2JqZWN0LmFzc2lnbih7fSxlKSkueG1sPVN0cmluZyhlLnhtbCl8fCIiLGU7c3dpdGNoKChlPU9iamVjdC5hc3NpZ24oe30se2Jsb2NrVHlwZTpvLkNPTU1BTkQsdGVybWluYWw6ITEsYmxvY2tBbGxUaHJlYWRzOiExLGFyZ3VtZW50czp7fX0sZSkpLnRleHQ9ZS50ZXh0fHxlLm9wY29kZSxlLmJsb2NrVHlwZSl7Y2FzZSBvLkVWRU5UOmUuZnVuYyYmaS53YXJuKCdJZ25vcmluZyBmdW5jdGlvbiAiJy5jb25jYXQoZS5mdW5jLCciIGZvciBldmVudCBibG9jayAnKS5jb25jYXQoZS5vcGNvZGUpKTticmVhaztjYXNlIG8uQlVUVE9OOmlmKCFlLm9wY29kZSYmIWUuZnVuYyl0aHJvdyBuZXcgRXJyb3IoIk1pc3Npbmcgb3Bjb2RlIG9yIGZ1bmMgZm9yIGJ1dHRvbjogIi5jb25jYXQoZS50ZXh0KSk7ZS5mdW5jJiYhZS5vcGNvZGUmJihlLm9wY29kZT1lLmZ1bmMpO2NvbnN0IHI9ZS5vcGNvZGUscz1mdW5jdGlvbigpe2Zvcih2YXIgZT1hcmd1bWVudHMubGVuZ3RoLHQ9bmV3IEFycmF5KGUpLGk9MDtpPGU7aSsrKXRbaV09YXJndW1lbnRzW2ldO3JldHVybiBuLmNhbGwoQSxyLC4uLnQpfTtlLmZ1bmM9czticmVhaztjYXNlIG8uTEFCRUw6YnJlYWs7ZGVmYXVsdDp7aWYoIWUub3Bjb2RlKXRocm93IG5ldyBFcnJvcigiTWlzc2luZyBvcGNvZGUgZm9yIGJsb2NrIik7Y29uc3Qgcj1lLmZ1bmN8fGUub3Bjb2RlLG89ZS5pc0R5bmFtaWM/QT0+QSYmQS5tdXRhdGlvbiYmQS5tdXRhdGlvbi5ibG9ja0luZm86KCk9PmUscz0oKCk9PntpZihuLl9pc1JlbW90ZVNlcnZpY2UoQSkpcmV0dXJuKGUsdCxpKT0+bi5jYWxsKEEscixlLHQsaSkudGhlbihBPT4ibnVtYmVyIj09dHlwZW9mIEF8fCJzdHJpbmciPT10eXBlb2YgQXx8ImJvb2xlYW4iPT10eXBlb2YgQT9BOiIiLmNvbmNhdChBKSkuY2F0Y2goQT0+KGNvbnNvbGUuZXJyb3IoIkN1c3RvbSBleHRlbnNpb24gYmxvY2sgZXJyb3IiLEEpLCIiLmNvbmNhdChBKSkpO2NvbnN0IGU9bi5zZXJ2aWNlc1tBXTtyZXR1cm4gZT8oZVtyXXx8aS53YXJuKCJDb3VsZCBub3QgZmluZCBleHRlbnNpb24gYmxvY2sgZnVuY3Rpb24gY2FsbGVkICIuY29uY2F0KHIpKSwoQSx0LG4pPT5lW3JdKEEsdCxuKSk6KCk9Pnt9fSkoKTtlLmZ1bmM9KEEsZSxuKT0+e3ZhciBpLHI7Y29uc3QgYT17YW5nbGU6Im51bWJlciIsQm9vbGVhbjoiYm9vbGVhbiIsY29sb3I6InN0cmluZyIsbnVtYmVyOiJudW1iZXIiLHN0cmluZzoic3RyaW5nIixtYXRyaXg6InN0cmluZyIsbm90ZToibnVtYmVyIixpbWFnZToic3RyaW5nIixwb2x5Z29uOiJvYmplY3QiLGxpc3Q6ImV4Y2VwdGlvbiIsYnJvYWRjYXN0OiJleGNlcHRpb24ifSxCPW8oQSk7Zm9yKGNvbnN0IGUgaW4gQi5hcmd1bWVudHMpe3ZhciBjO2NvbnN0IG49YVtCLmFyZ3VtZW50c1tlXS50eXBlXTshMCE9PUIuYXJndW1lbnRzW2VdLmV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uJiYoImV4Y2VwdGlvbiIhPT1uJiZuJiYic3RyaW5nIiE9dHlwZW9mKG51bGw9PT0oYz10W0IuYXJndW1lbnRzW2VdLm1lbnVdKXx8dm9pZCAwPT09Yz92b2lkIDA6Yy52YXJpYWJsZVR5cGUpJiZ0eXBlb2YgQVtlXSE9PW4mJihBW2VdPXRoaXMuX25vcm1hbGl6ZShBW2VdLG4pKSl9Y29uc3QgZz1zKEEsZSxCKTtudWxsIT09KGk9bnVsbD09Zz92b2lkIDA6Zy52YWx1ZSkmJnZvaWQgMCE9PWkmJmkmJihudWxsPT1nfHxudWxsPT09KHI9Zy5jb25zdHJ1Y3Rvcil8fHZvaWQgMD09PXJ8fHIubmFtZSk7cmV0dXJuIGd9O2JyZWFrfX1yZXR1cm4gZX1leHRlbnNpb25VcmxGcm9tSWQoQSl7Zm9yKGNvbnN0W2UsdF1vZiB0aGlzLl9sb2FkZWRFeHRlbnNpb25zLmVudHJpZXMoKSl7aWYoZSE9PUEpY29udGludWU7Y29uc3Qgbj0rdC5zcGxpdCgiLiIpWzFdO3JldHVybiB0aGlzLndvcmtlclVSTHNbbl19fWdldEV4dGVuc2lvblVSTHMoKXtjb25zdCBBPXt9O2Zvcihjb25zdFtlLHRdb2YgdGhpcy5fbG9hZGVkRXh0ZW5zaW9ucy5lbnRyaWVzKCkpe2NvbnN0IG49K3Quc3BsaXQoIi4iKVsxXSxpPXRoaXMud29ya2VyVVJMc1tuXTsic3RyaW5nIj09dHlwZW9mIGkmJihBW2VdPWkpfXJldHVybiBBfWlzRXh0ZW5zaW9uVVJMTG9hZGVkKEEpe3JldHVybiB0aGlzLndvcmtlclVSTHMuaW5jbHVkZXMoQSl9fX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj1bIm51bWJlciIsImRhdGUiLCJ0aW1lIiwib3JkaW5hbCIsImR1cmF0aW9uIiwic3BlbGxvdXQiXSxpPVsicGx1cmFsIiwic2VsZWN0Iiwic2VsZWN0b3JkaW5hbCJdO2Z1bmN0aW9uIHIoQSxlKXt2YXIgdD1BLnBhdHRlcm4sbj10Lmxlbmd0aCxpPVtdLHI9QS5pbmRleCxzPW8oQSxlKTtmb3IocyYmaS5wdXNoKHMpLHMmJkEudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsidGV4dCIsdC5zbGljZShyLEEuaW5kZXgpXSk7QS5pbmRleDxuOyl7aWYoIn0iPT09dFtBLmluZGV4XSl7aWYoIWUpdGhyb3cgdShBKTticmVha31pZihlJiZBLnRhZ3NUeXBlJiYiPC8iPT09dC5zbGljZShBLmluZGV4LEEuaW5kZXgrIjwvIi5sZW5ndGgpKWJyZWFrO2kucHVzaChCKEEpKSxyPUEuaW5kZXgsKHM9byhBLGUpKSYmaS5wdXNoKHMpLHMmJkEudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsidGV4dCIsdC5zbGljZShyLEEuaW5kZXgpXSl9cmV0dXJuIGl9ZnVuY3Rpb24gbyhBLGUpe2Zvcih2YXIgdD1BLnBhdHRlcm4sbj10Lmxlbmd0aCxpPSJwbHVyYWwiPT09ZXx8InNlbGVjdG9yZGluYWwiPT09ZSxyPSEhQS50YWdzVHlwZSxvPSJ7c3R5bGV9Ij09PWUsYT0iIjtBLmluZGV4PG47KXt2YXIgQj10W0EuaW5kZXhdO2lmKCJ7Ij09PUJ8fCJ9Ij09PUJ8fGkmJiIjIj09PUJ8fHImJiI8Ij09PUJ8fG8mJnMoQi5jaGFyQ29kZUF0KDApKSlicmVhaztpZigiJyI9PT1CKWlmKCInIj09PShCPXRbKytBLmluZGV4XSkpYSs9QiwrK0EuaW5kZXg7ZWxzZSBpZigieyI9PT1CfHwifSI9PT1CfHxpJiYiIyI9PT1CfHxyJiYiPCI9PT1CfHxvKWZvcihhKz1COysrQS5pbmRleDxuOylpZigiJyI9PT0oQj10W0EuaW5kZXhdKSYmIiciPT09dFtBLmluZGV4KzFdKWErPSInIiwrK0EuaW5kZXg7ZWxzZXtpZigiJyI9PT1CKXsrK0EuaW5kZXg7YnJlYWt9YSs9Qn1lbHNlIGErPSInIjtlbHNlIGErPUIsKytBLmluZGV4fXJldHVybiBhfWZ1bmN0aW9uIHMoQSl7cmV0dXJuIEE+PTkmJkE8PTEzfHwzMj09PUF8fDEzMz09PUF8fDE2MD09PUF8fDYxNTg9PT1BfHxBPj04MTkyJiZBPD04MjA1fHw4MjMyPT09QXx8ODIzMz09PUF8fDgyMzk9PT1BfHw4Mjg3PT09QXx8ODI4OD09PUF8fDEyMjg4PT09QXx8NjUyNzk9PT1BfWZ1bmN0aW9uIGEoQSl7Zm9yKHZhciBlPUEucGF0dGVybix0PWUubGVuZ3RoLG49QS5pbmRleDtBLmluZGV4PHQmJnMoZS5jaGFyQ29kZUF0KEEuaW5kZXgpKTspKytBLmluZGV4O248QS5pbmRleCYmQS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJzcGFjZSIsQS5wYXR0ZXJuLnNsaWNlKG4sQS5pbmRleCldKX1mdW5jdGlvbiBCKEEpe3ZhciBlPUEucGF0dGVybjtpZigiIyI9PT1lW0EuaW5kZXhdKXJldHVybiBBLnRva2VucyYmQS50b2tlbnMucHVzaChbInN5bnRheCIsIiMiXSksKytBLmluZGV4LFsiIyJdO3ZhciB0PWZ1bmN0aW9uKEEpe3ZhciBlPUEudGFnc1R5cGU7aWYoIWV8fCI8IiE9PUEucGF0dGVybltBLmluZGV4XSlyZXR1cm47aWYoIjwvIj09PUEucGF0dGVybi5zbGljZShBLmluZGV4LEEuaW5kZXgrIjwvIi5sZW5ndGgpKXRocm93IHUoQSxudWxsLCJjbG9zaW5nIHRhZyB3aXRob3V0IG1hdGNoaW5nIG9wZW5pbmcgdGFnIik7QS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJzeW50YXgiLCI8Il0pOysrQS5pbmRleDt2YXIgdD1jKEEsITApO2lmKCF0KXRocm93IHUoQSwicGxhY2Vob2xkZXIgaWQiKTtBLnRva2VucyYmQS50b2tlbnMucHVzaChbImlkIix0XSk7aWYoYShBKSwiLz4iPT09QS5wYXR0ZXJuLnNsaWNlKEEuaW5kZXgsQS5pbmRleCsiLz4iLmxlbmd0aCkpcmV0dXJuIEEudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsic3ludGF4IiwiLz4iXSksQS5pbmRleCs9Ii8+Ii5sZW5ndGgsW3QsZV07aWYoIj4iIT09QS5wYXR0ZXJuW0EuaW5kZXhdKXRocm93IHUoQSwiPiIpO0EudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsic3ludGF4IiwiPiJdKTsrK0EuaW5kZXg7dmFyIG49cihBLGUpLGk9QS5pbmRleDtpZigiPC8iIT09QS5wYXR0ZXJuLnNsaWNlKEEuaW5kZXgsQS5pbmRleCsiPC8iLmxlbmd0aCkpdGhyb3cgdShBLCI8LyIrdCsiPiIpO0EudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsic3ludGF4IiwiPC8iXSk7QS5pbmRleCs9IjwvIi5sZW5ndGg7dmFyIG89YyhBLCEwKTtvJiZBLnRva2VucyYmQS50b2tlbnMucHVzaChbImlkIixvXSk7aWYodCE9PW8pdGhyb3cgQS5pbmRleD1pLHUoQSwiPC8iK3QrIj4iLCI8LyIrbysiPiIpO2lmKGEoQSksIj4iIT09QS5wYXR0ZXJuW0EuaW5kZXhdKXRocm93IHUoQSwiPiIpO0EudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsic3ludGF4IiwiPiJdKTtyZXR1cm4rK0EuaW5kZXgsW3QsZSx7Y2hpbGRyZW46bn1dfShBKTtpZih0KXJldHVybiB0O2lmKCJ7IiE9PWVbQS5pbmRleF0pdGhyb3cgdShBLCJ7Iik7QS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJzeW50YXgiLCJ7Il0pLCsrQS5pbmRleCxhKEEpO3ZhciBpPWMoQSk7aWYoIWkpdGhyb3cgdShBLCJwbGFjZWhvbGRlciBpZCIpO0EudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsiaWQiLGldKSxhKEEpO3ZhciBvPWVbQS5pbmRleF07aWYoIn0iPT09bylyZXR1cm4gQS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJzeW50YXgiLCJ9Il0pLCsrQS5pbmRleCxbaV07aWYoIiwiIT09byl0aHJvdyB1KEEsIiwgb3IgfSIpO0EudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsic3ludGF4IiwiLCJdKSwrK0EuaW5kZXgsYShBKTt2YXIgcyxCPWMoQSk7aWYoIUIpdGhyb3cgdShBLCJwbGFjZWhvbGRlciB0eXBlIik7aWYoQS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJ0eXBlIixCXSksYShBKSwifSI9PT0obz1lW0EuaW5kZXhdKSl7aWYoQS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJzeW50YXgiLCJ9Il0pLCJwbHVyYWwiPT09Qnx8InNlbGVjdG9yZGluYWwiPT09Qnx8InNlbGVjdCI9PT1CKXRocm93IHUoQSxCKyIgc3ViLW1lc3NhZ2VzIik7cmV0dXJuKytBLmluZGV4LFtpLEJdfWlmKCIsIiE9PW8pdGhyb3cgdShBLCIsIG9yIH0iKTtpZihBLnRva2VucyYmQS50b2tlbnMucHVzaChbInN5bnRheCIsIiwiXSksKytBLmluZGV4LGEoQSksInBsdXJhbCI9PT1CfHwic2VsZWN0b3JkaW5hbCI9PT1CKXt2YXIgUT1mdW5jdGlvbihBKXt2YXIgZT1BLnBhdHRlcm4sdD1lLmxlbmd0aCxuPTA7aWYoIm9mZnNldDoiPT09ZS5zbGljZShBLmluZGV4LEEuaW5kZXgrIm9mZnNldDoiLmxlbmd0aCkpe0EudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsib2Zmc2V0Iiwib2Zmc2V0Il0sWyJzeW50YXgiLCI6Il0pLEEuaW5kZXgrPSJvZmZzZXQ6Ii5sZW5ndGgsYShBKTtmb3IodmFyIGk9QS5pbmRleDtBLmluZGV4PHQmJigocj1lLmNoYXJDb2RlQXQoQS5pbmRleCkpPj00OCYmcjw9NTcpOykrK0EuaW5kZXg7aWYoaT09PUEuaW5kZXgpdGhyb3cgdShBLCJvZmZzZXQgbnVtYmVyIik7QS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJudW1iZXIiLGUuc2xpY2UoaSxBLmluZGV4KV0pLG49K2Uuc2xpY2UoaSxBLmluZGV4KX12YXIgcjtyZXR1cm4gbn0oQSk7YShBKSxzPVtpLEIsUSxFKEEsQildfWVsc2UgaWYoInNlbGVjdCI9PT1CKXM9W2ksQixFKEEsQildO2Vsc2UgaWYobi5pbmRleE9mKEIpPj0wKXM9W2ksQixnKEEpXTtlbHNle3ZhciBsPUEuaW5kZXgsaD1nKEEpO2EoQSksInsiPT09ZVtBLmluZGV4XSYmKEEuaW5kZXg9bCxoPUUoQSxCKSkscz1baSxCLGhdfWlmKGEoQSksIn0iIT09ZVtBLmluZGV4XSl0aHJvdyB1KEEsIn0iKTtyZXR1cm4gQS50b2tlbnMmJkEudG9rZW5zLnB1c2goWyJzeW50YXgiLCJ9Il0pLCsrQS5pbmRleCxzfWZ1bmN0aW9uIGMoQSxlKXtmb3IodmFyIHQ9QS5wYXR0ZXJuLG49dC5sZW5ndGgsaT0iIjtBLmluZGV4PG47KXt2YXIgcj10W0EuaW5kZXhdO2lmKCJ7Ij09PXJ8fCJ9Ij09PXJ8fCIsIj09PXJ8fCIjIj09PXJ8fCInIj09PXJ8fHMoci5jaGFyQ29kZUF0KDApKXx8ZSYmKCI8Ij09PXJ8fCI+Ij09PXJ8fCIvIj09PXIpKWJyZWFrO2krPXIsKytBLmluZGV4fXJldHVybiBpfWZ1bmN0aW9uIGcoQSl7dmFyIGU9QS5pbmRleCx0PW8oQSwie3N0eWxlfSIpO2lmKCF0KXRocm93IHUoQSwicGxhY2Vob2xkZXIgc3R5bGUgbmFtZSIpO3JldHVybiBBLnRva2VucyYmQS50b2tlbnMucHVzaChbInN0eWxlIixBLnBhdHRlcm4uc2xpY2UoZSxBLmluZGV4KV0pLHR9ZnVuY3Rpb24gRShBLGUpe2Zvcih2YXIgdD1BLnBhdHRlcm4sbj10Lmxlbmd0aCxyPXt9O0EuaW5kZXg8biYmIn0iIT09dFtBLmluZGV4XTspe3ZhciBvPWMoQSk7aWYoIW8pdGhyb3cgdShBLCJzdWItbWVzc2FnZSBzZWxlY3RvciIpO0EudG9rZW5zJiZBLnRva2Vucy5wdXNoKFsic2VsZWN0b3IiLG9dKSxhKEEpLHJbb109UShBLGUpLGEoQSl9aWYoIXIub3RoZXImJmkuaW5kZXhPZihlKT49MCl0aHJvdyB1KEEsbnVsbCxudWxsLCcib3RoZXIiIHN1Yi1tZXNzYWdlIG11c3QgYmUgc3BlY2lmaWVkIGluICcrZSk7cmV0dXJuIHJ9ZnVuY3Rpb24gUShBLGUpe2lmKCJ7IiE9PUEucGF0dGVybltBLmluZGV4XSl0aHJvdyB1KEEsInsgdG8gc3RhcnQgc3ViLW1lc3NhZ2UiKTtBLnRva2VucyYmQS50b2tlbnMucHVzaChbInN5bnRheCIsInsiXSksKytBLmluZGV4O3ZhciB0PXIoQSxlKTtpZigifSIhPT1BLnBhdHRlcm5bQS5pbmRleF0pdGhyb3cgdShBLCJ9IHRvIGVuZCBzdWItbWVzc2FnZSIpO3JldHVybiBBLnRva2VucyYmQS50b2tlbnMucHVzaChbInN5bnRheCIsIn0iXSksKytBLmluZGV4LHR9ZnVuY3Rpb24gdShBLGUsdCxuKXt2YXIgaT1BLnBhdHRlcm4scj1pLnNsaWNlKDAsQS5pbmRleCkuc3BsaXQoL1xyP1xuLyksbz1BLmluZGV4LHM9ci5sZW5ndGgsYT1yLnNsaWNlKC0xKVswXS5sZW5ndGg7cmV0dXJuIHQ9dHx8KEEuaW5kZXg+PWkubGVuZ3RoPyJlbmQgb2YgbWVzc2FnZSBwYXR0ZXJuIjpjKEEpfHxpW0EuaW5kZXhdKSxufHwobj1mdW5jdGlvbihBLGUpe3JldHVybiBBPyJFeHBlY3RlZCAiK0ErIiBidXQgZm91bmQgIitlOiJVbmV4cGVjdGVkICIrZSsiIGZvdW5kIn0oZSx0KSksbmV3IGwobis9IiBpbiAiK2kucmVwbGFjZSgvXHI/XG4vZywiXG4iKSxlLHQsbyxzLGEpfWZ1bmN0aW9uIGwoQSxlLHQsbixpLHIpe0Vycm9yLmNhbGwodGhpcyxBKSx0aGlzLm5hbWU9IlN5bnRheEVycm9yIix0aGlzLm1lc3NhZ2U9QSx0aGlzLmV4cGVjdGVkPWUsdGhpcy5mb3VuZD10LHRoaXMub2Zmc2V0PW4sdGhpcy5saW5lPWksdGhpcy5jb2x1bW49cn1lPUEuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3JldHVybiByKHtwYXR0ZXJuOlN0cmluZyhBKSxpbmRleDowLHRhZ3NUeXBlOmUmJmUudGFnc1R5cGV8fG51bGwsdG9rZW5zOmUmJmUudG9rZW5zfHxudWxsfSwiIil9LGwucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKSxlLlN5bnRheEVycm9yPWx9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49dCg4NSksaT10KDg2KSxyPXQoODcpO2Z1bmN0aW9uIG8oQSxlLHQsbixpKXt2YXIgcj1BLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKEEsZSx0LG4saSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXt2YXIgcj1BO3JldHVybiBmdW5jdGlvbigpe3JldHVybiByfX12YXIgYSxCPUFbMF0sYz1BWzFdO2lmKGUmJiIjIj09PUFbMF0pe0I9ZVswXTt2YXIgZz1lWzJdLFE9KG4ubnVtYmVyfHxFLm51bWJlcikoW0IsIm51bWJlciJdLHQpO3JldHVybiBmdW5jdGlvbihBKXtyZXR1cm4gUShzKEIsQSktZyxBKX19InBsdXJhbCI9PT1jfHwic2VsZWN0b3JkaW5hbCI9PT1jPyhhPXt9LE9iamVjdC5rZXlzKEFbM10pLmZvckVhY2goKGZ1bmN0aW9uKGUpe2FbZV09byhBWzNdW2VdLEEsdCxuLGkpfSkpLEE9W0FbMF0sQVsxXSxBWzJdLGFdKTpBWzJdJiYib2JqZWN0Ij09dHlwZW9mIEFbMl0mJihhPXt9LE9iamVjdC5rZXlzKEFbMl0pLmZvckVhY2goKGZ1bmN0aW9uKGUpe2FbZV09byhBWzJdW2VdLEEsdCxuLGkpfSkpLEE9W0FbMF0sQVsxXSxhXSk7dmFyIHU9YyYmKG5bY118fEVbY10pO2lmKHUpe3ZhciBsPXUoQSx0KTtyZXR1cm4gZnVuY3Rpb24oQSl7cmV0dXJuIGwocyhCLEEpLEEpfX1yZXR1cm4gaT9mdW5jdGlvbihBKXtyZXR1cm4gU3RyaW5nKHMoQixBKSl9OmZ1bmN0aW9uKEEpe3JldHVybiBzKEIsQSl9fShBLGUsdCxuLGkpfSkpO3JldHVybiBpPzE9PT1yLmxlbmd0aD9yWzBdOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0iIix0PTA7dDxyLmxlbmd0aDsrK3QpZSs9clt0XShBKTtyZXR1cm4gZX06ZnVuY3Rpb24oQSl7cmV0dXJuIHIucmVkdWNlKChmdW5jdGlvbihlLHQpe3JldHVybiBlLmNvbmNhdCh0KEEpKX0pLFtdKX19ZnVuY3Rpb24gcyhBLGUpe2lmKGUmJkEgaW4gZSlyZXR1cm4gZVtBXTtmb3IodmFyIHQ9QS5zcGxpdCgiLiIpLG49ZSxpPTAscj10Lmxlbmd0aDtuJiZpPHI7KytpKW49blt0W2ldXTtyZXR1cm4gbn1mdW5jdGlvbiBhKEEsZSl7dmFyIHQ9QVsyXSxpPW4ubnVtYmVyW3RdfHxuLnBhcnNlTnVtYmVyUGF0dGVybih0KXx8bi5udW1iZXIuZGVmYXVsdDtyZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KGUsaSkuZm9ybWF0fWZ1bmN0aW9uIEIoQSxlKXt2YXIgdD1BWzFdLGk9QVsyXSxyPW5bdF1baV18fG4ucGFyc2VEYXRlUGF0dGVybihpKXx8blt0XS5kZWZhdWx0O3JldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChlLHIpLmZvcm1hdH1mdW5jdGlvbiBjKEEsZSl7dmFyIHQsbj0ic2VsZWN0b3JkaW5hbCI9PT1BWzFdPyJvcmRpbmFsIjoiY2FyZGluYWwiLG89QVsyXSxzPUFbM107aWYoSW50bC5QbHVyYWxSdWxlcyYmSW50bC5QbHVyYWxSdWxlcy5zdXBwb3J0ZWRMb2NhbGVzT2YoZSkubGVuZ3RoPjApdD1uZXcgSW50bC5QbHVyYWxSdWxlcyhlLHt0eXBlOm59KTtlbHNle3ZhciBhPWkoZSxyKSxCPWEmJnJbYV1bbl18fGc7dD17c2VsZWN0OkJ9fXJldHVybiBmdW5jdGlvbihBLGUpe3JldHVybihzWyI9IisgK0FdfHxzW3Quc2VsZWN0KEEtbyldfHxzLm90aGVyKShlKX19ZnVuY3Rpb24gZygpe3JldHVybiJvdGhlciJ9KGU9QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbyhBLG51bGwsZXx8ImVuIix0fHx7fSwhMCl9KS50b1BhcnRzPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbyhBLG51bGwsZXx8ImVuIix0fHx7fSwhMSl9O3ZhciBFPXtudW1iZXI6YSxvcmRpbmFsOmEsc3BlbGxvdXQ6YSxkdXJhdGlvbjpmdW5jdGlvbihBLGUpe3ZhciB0PUFbMl0saT1uLmR1cmF0aW9uW3RdfHxuLmR1cmF0aW9uLmRlZmF1bHQscj1uZXcgSW50bC5OdW1iZXJGb3JtYXQoZSxpLnNlY29uZHMpLmZvcm1hdCxvPW5ldyBJbnRsLk51bWJlckZvcm1hdChlLGkubWludXRlcykuZm9ybWF0LHM9bmV3IEludGwuTnVtYmVyRm9ybWF0KGUsaS5ob3VycykuZm9ybWF0LGE9L15maSR8XmZpLXxeZGEvLnRlc3QoU3RyaW5nKGUpKT8iLiI6IjoiO3JldHVybiBmdW5jdGlvbihBLGUpe2lmKEE9K0EsIWlzRmluaXRlKEEpKXJldHVybiByKEEpO3ZhciB0PX5+KEEvNjAvNjApLG49fn4oQS82MCU2MCksaT0odD9zKE1hdGguYWJzKHQpKSthOiIiKStvKE1hdGguYWJzKG4pKSthK3IoTWF0aC5hYnMoQSU2MCkpO3JldHVybiBBPDA/cygtMSkucmVwbGFjZShzKDEpLGkpOml9fSxkYXRlOkIsdGltZTpCLHBsdXJhbDpjLHNlbGVjdG9yZGluYWw6YyxzZWxlY3Q6ZnVuY3Rpb24oQSxlKXt2YXIgdD1BWzJdO3JldHVybiBmdW5jdGlvbihBLGUpe3JldHVybih0W0FdfHx0Lm90aGVyKShlKX19fTtlLnR5cGVzPUV9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWNsYXNze2dldFNhbmRib3hNb2RlKEEpe3JldHVybiBQcm9taXNlLnJlc29sdmUoIndvcmtlciIpfWNhbkxvYWRFeHRlbnNpb25Gcm9tUHJvamVjdChBKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCExKX1yZXdyaXRlRXh0ZW5zaW9uVVJMKEEpe3JldHVybiBQcm9taXNlLnJlc29sdmUoQSl9Y2FuRmV0Y2goQSl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSghMCl9Y2FuT3BlbldpbmRvdyhBKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCEwKX1jYW5SZWRpcmVjdChBKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCEwKX1jYW5SZWNvcmRBdWRpbygpe3JldHVybiBQcm9taXNlLnJlc29sdmUoITApfWNhblJlY29yZFZpZGVvKCl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSghMCl9Y2FuUmVhZENsaXBib2FyZCgpe3JldHVybiBQcm9taXNlLnJlc29sdmUoITApfWNhbk5vdGlmeSgpe3JldHVybiBQcm9taXNlLnJlc29sdmUoITApfWNhbkdlb2xvY2F0ZSgpe3JldHVybiBQcm9taXNlLnJlc29sdmUoITApfWNhbkVtYmVkKEEpe3JldHVybiBQcm9taXNlLnJlc29sdmUoITApfWNhblVuc2FuZGJveCgpe3JldHVybiBQcm9taXNlLnJlc29sdmUoITEpfWNhblNjcmVlbnNob3RDYW1lcmEoKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCEwKX1jYW5Eb3dubG9hZChBLGUpe3JldHVybiBQcm9taXNlLnJlc29sdmUoITApfXNob3VsZFVzZUxvY2FsKEEpe3JldHVybiBQcm9taXNlLnJlc29sdmUoIWNvbmZpcm0oIml0IHNlZW1zIHRoYXQgdGhlIGV4dGVuc2lvbiAiLmNvbmNhdChBLCIgaGFzIGJlZW4gdXBkYXRlZCwgdXNlIHRoZSB1cC10by1kYXRlIGNvZGU/IikpKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9dCgzKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0SW5mbygpe3JldHVybntpZDoiY29yZUV4YW1wbGUiLG5hbWU6IkNvcmVFeCIsYmxvY2tzOlt7b3Bjb2RlOiJleGFtcGxlT3Bjb2RlIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJleGFtcGxlIGJsb2NrIn0se29wY29kZToiZXhhbXBsZVdpdGhJbmxpbmVJbWFnZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJibG9jayB3aXRoIGltYWdlIFtDTE9DS1dJU0VdIGlubGluZSIsYXJndW1lbnRzOntDTE9DS1dJU0U6e3R5cGU6aS5JTUFHRSxkYXRhVVJJOidkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIGlkPSJyb3RhdGUtY291bnRlci1jbG9ja3dpc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDI0IDI0IiUzRSUzQ2RlZnMlM0UlM0NzdHlsZSUzRS5jbHMtMSU3QmZpbGw6JTIzM2Q3OWNjOyU3RC5jbHMtMiU3QmZpbGw6JTIzZmZmOyU3RCUzQy9zdHlsZSUzRSUzQy9kZWZzJTNFJTNDdGl0bGUlM0Vyb3RhdGUtY291bnRlci1jbG9ja3dpc2UlM0MvdGl0bGUlM0UlM0NwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTIyLjY4LDEyLjJhMS42LDEuNiwwLDAsMS0xLjI3LjYzSDEzLjcyYTEuNTksMS41OSwwLDAsMS0xLjE2LTIuNThsMS4xMi0xLjQxYTQuODIsNC44MiwwLDAsMC0zLjE0LS43Nyw0LjMxLDQuMzEsMCwwLDAtMiwuOCw0LjI1LDQuMjUsMCwwLDAtMS4zNCwxLjczLDUuMDYsNS4wNiwwLDAsMCwuNTQsNC42MkE1LjU4LDUuNTgsMCwwLDAsMTIsMTcuNzRoMGEyLjI2LDIuMjYsMCwwLDEtLjE2LDQuNTJBMTAuMjUsMTAuMjUsMCwwLDEsMy43NCwxOCwxMC4xNCwxMC4xNCwwLDAsMSwyLjI1LDguNzgsOS43LDkuNywwLDAsMSw1LjA4LDQuNjQsOS45Miw5LjkyLDAsMCwxLDkuNjYsMi41YTEwLjY2LDEwLjY2LDAsMCwxLDcuNzIsMS42OGwxLjA4LTEuMzVhMS41NywxLjU3LDAsMCwxLDEuMjQtLjYsMS42LDEuNiwwLDAsMSwxLjU0LDEuMjFsMS43LDcuMzdBMS41NywxLjU3LDAsMCwxLDIyLjY4LDEyLjJaIi8lM0UlM0NwYXRoIGNsYXNzPSJjbHMtMiIgZD0iTTIxLjM4LDExLjgzSDEzLjc3YS41OS41OSwwLDAsMS0uNDMtMWwxLjc1LTIuMTlhNS45LDUuOSwwLDAsMC00LjctMS41OCw1LjA3LDUuMDcsMCwwLDAtNC4xMSwzLjE3QTYsNiwwLDAsMCw3LDE1Ljc3YTYuNTEsNi41MSwwLDAsMCw1LDIuOTIsMS4zMSwxLjMxLDAsMCwxLS4wOCwyLjYyLDkuMyw5LjMsMCwwLDEtNy4zNS0zLjgyQTkuMTYsOS4xNiwwLDAsMSwzLjE3LDkuMTIsOC41MSw4LjUxLDAsMCwxLDUuNzEsNS40LDguNzYsOC43NiwwLDAsMSw5LjgyLDMuNDhhOS43MSw5LjcxLDAsMCwxLDcuNzUsMi4wN2wxLjY3LTIuMWEuNTkuNTksMCwwLDEsMSwuMjFMMjIsMTEuMDhBLjU5LjU5LDAsMCwxLDIxLjM4LDExLjgzWiIvJTNFJTNDL3N2ZyUzRSd9fX0se29wY29kZToiZXhhbXBsZU5vZGVJbnB1dHMiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiYmxvY2sgd2l0aCBzb21lIG5vZGUgaW5wdXRzIFtDTE9DS1dJU0VdIixhcmd1bWVudHM6e0NMT0NLV0lTRTp7dHlwZTppLlBPTFlHT04sbm9kZXM6M319fV19fWV4YW1wbGVPcGNvZGUoKXtjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO3JldHVybiBBP0EuZ2V0TmFtZSgpOiJubyBzdGFnZSB5ZXQifWV4YW1wbGVXaXRoSW5saW5lSW1hZ2UoKXt9ZXhhbXBsZU5vZGVJbnB1dHMoQSxlKXtjb25zdCB0PUEuQ0xPQ0tXSVNFO3RoaXMucnVudGltZS5leHRfcGVuLl9wZW5VcChlLnRhcmdldCksdGhpcy5ydW50aW1lLmV4dF9wZW4uY2xlYXIoKSxlLnRhcmdldC5zZXRYWSh0WzBdLngsdFswXS55KSx0aGlzLnJ1bnRpbWUuZXh0X3Blbi5fcGVuRG93bihlLnRhcmdldCksdC5mb3JFYWNoKEE9PntlLnRhcmdldC5zZXRYWShBLngsQS55KX0pLGUudGFyZ2V0LnNldFhZKHRbMF0ueCx0WzBdLnkpfX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiBpKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP24oT2JqZWN0KHQpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyKEEsZSx0W2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhBLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHQpKTpuKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfWZ1bmN0aW9uIHIoQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBvPXQoMykscz10KDEpLGE9dCgxMyksQj10KDIpLGM9dCg3KSxnPXQoOCkse3RyYW5zbGF0ZUZvckNhbWVyYTpFfT10KDQxKSxRPXQoNCksdT10KDYpLGw9dCg1KSxoPXQoMTYpLHc9ImNvbG9yIixDPSJzYXR1cmF0aW9uIixJPSJicmlnaHRuZXNzIixNPSJ0cmFuc3BhcmVuY3kiLGQ9ImZyb250IixwPSJiYWNrIixtPSJvbiIsRj0ib2ZmIixEPXtmcm9udDpoLlBFTl9MQVlFUixiYWNrOmguU1BSSVRFX0xBWUVSfTtjbGFzcyBZe2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX3BlbkRyYXdhYmxlSWQ9LTEsdGhpcy5fcGVuU2tpbklkPS0xLHRoaXMucHJpbnRUZXh0QXR0cmlidXRlPXt3ZWlnaHQ6IjQwMCIsaXRhbGljOiExLHNpemU6IjI4Iixmb250OiJBcmlhbCIsY29sb3I6IiMwMDAwMDAiLHN0cm9rZUNvbG9yOiIjMDAwMDAwIixzdHJva2VXaWR0aDowfSx0aGlzLl9vblRhcmdldENyZWF0ZWQ9dGhpcy5fb25UYXJnZXRDcmVhdGVkLmJpbmQodGhpcyksdGhpcy5fb25UYXJnZXRNb3ZlZD10aGlzLl9vblRhcmdldE1vdmVkLmJpbmQodGhpcyksdGhpcy5fb25DYW1lcmFNb3ZlZD10aGlzLl9vbkNhbWVyYU1vdmVkLmJpbmQodGhpcyksQS5vbigidGFyZ2V0V2FzQ3JlYXRlZCIsdGhpcy5fb25UYXJnZXRDcmVhdGVkKSxBLm9uKCJSVU5USU1FX0RJU1BPU0VEIix0aGlzLmNsZWFyLmJpbmQodGhpcykpLHRoaXMucHJlbG9hZGVkSW1hZ2VzPXt9LHRoaXMuY2FtZXJhQm91bmQ9LTF9c3RhdGljIGdldCBERUZBVUxUX1BFTl9TVEFURSgpe3JldHVybntwZW5Eb3duOiExLGNvbG9yOjY2LjY2LHNhdHVyYXRpb246MTAwLGJyaWdodG5lc3M6MTAwLHRyYW5zcGFyZW5jeTowLF9zaGFkZTo1MCxwZW5BdHRyaWJ1dGVzOntjb2xvcjRmOlswLDAsMSwxXSxkaWFtZXRlcjoxfX19c3RhdGljIGdldCBQRU5fU0laRV9SQU5HRSgpe3JldHVybnttaW46MSxtYXg6MWUzMDh9fXN0YXRpYyBnZXQgU1RBVEVfS0VZKCl7cmV0dXJuIlNjcmF0Y2gucGVuIn1fY2xhbXBQZW5TaXplKEEpe3JldHVybiB0aGlzLnJ1bnRpbWUucmVuZGVyZXImJnRoaXMucnVudGltZS5yZW5kZXJlci51c2VIaWdoUXVhbGl0eVJlbmRlcnx8IXRoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5taXNjTGltaXRzP01hdGgubWF4KDAsQSk6dS5jbGFtcChBLFkuUEVOX1NJWkVfUkFOR0UubWluLFkuUEVOX1NJWkVfUkFOR0UubWF4KX1fZ2V0UGVuTGF5ZXJJRCgpe3JldHVybiB0aGlzLl9wZW5Ta2luSWQ8MCYmdGhpcy5ydW50aW1lLnJlbmRlcmVyJiYodGhpcy5fcGVuU2tpbklkPXRoaXMucnVudGltZS5yZW5kZXJlci5jcmVhdGVQZW5Ta2luKCksdGhpcy5fcGVuRHJhd2FibGVJZD10aGlzLnJ1bnRpbWUucmVuZGVyZXIuY3JlYXRlRHJhd2FibGUoaC5QRU5fTEFZRVIpLHRoaXMucnVudGltZS5yZW5kZXJlci51cGRhdGVEcmF3YWJsZVNraW5JZCh0aGlzLl9wZW5EcmF3YWJsZUlkLHRoaXMuX3BlblNraW5JZCksdGhpcy5iaXRtYXBDYW52YXM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIiksdGhpcy5iaXRtYXBDYW52YXMud2lkdGg9dGhpcy5ydW50aW1lLnN0YWdlV2lkdGgsdGhpcy5iaXRtYXBDYW52YXMuaGVpZ2h0PXRoaXMucnVudGltZS5zdGFnZUhlaWdodCx0aGlzLmJpdG1hcFNraW5JRD10aGlzLnJ1bnRpbWUucmVuZGVyZXIuY3JlYXRlQml0bWFwU2tpbih0aGlzLmJpdG1hcENhbnZhcywxKSx0aGlzLmJpdG1hcERyYXdhYmxlSUQ9dGhpcy5ydW50aW1lLnJlbmRlcmVyLmNyZWF0ZURyYXdhYmxlKGguUEVOX0xBWUVSKSx0aGlzLnJ1bnRpbWUucmVuZGVyZXIudXBkYXRlRHJhd2FibGVTa2luSWQodGhpcy5iaXRtYXBEcmF3YWJsZUlELHRoaXMuYml0bWFwU2tpbklEKSx0aGlzLnJ1bnRpbWUucmVuZGVyZXIudXBkYXRlRHJhd2FibGVWaXNpYmxlKHRoaXMuYml0bWFwRHJhd2FibGVJRCwhMSkpLHRoaXMuX3BlblNraW5JZH1fZ2V0UGVuU3RhdGUoQSl7bGV0IGU9QS5fY3VzdG9tU3RhdGVbIlNjcmF0Y2gucGVuIl07cmV0dXJuIGV8fChlPWMuc2ltcGxlKFkuREVGQVVMVF9QRU5fU1RBVEUpLEEuc2V0Q3VzdG9tU3RhdGUoWS5TVEFURV9LRVksZSkpLGV9X29uVGFyZ2V0Q3JlYXRlZChBLGUpe2lmKGUpe2NvbnN0IHQ9ZS5nZXRDdXN0b21TdGF0ZShZLlNUQVRFX0tFWSk7dCYmKEEuc2V0Q3VzdG9tU3RhdGUoWS5TVEFURV9LRVksYy5zaW1wbGUodCkpLHQucGVuRG93biYmKEEub25UYXJnZXRNb3ZlZD10aGlzLl9vblRhcmdldE1vdmVkKSl9fV9vblRhcmdldE1vdmVkKEEsZSx0LG4pe2lmKCFuKXtjb25zdCBuPXRoaXMuX2dldFBlbkxheWVySUQoKTtpZihuPj0wKXtjb25zdCBpPXRoaXMuX2dldFBlblN0YXRlKEEpLFtyLG9dPUEuX3RyYW5zbGF0ZVBvc3NpdGlvblRvQ2FtZXJhKCk7QS5jYW1lcmFCb3VuZD49MCYmKFtlLHRdPUUodGhpcy5ydW50aW1lLEEuY2FtZXJhQm91bmQsZSx0KSksdGhpcy5ydW50aW1lLnJlbmRlcmVyLnBlbkxpbmUobixpLnBlbkF0dHJpYnV0ZXMsZSx0LHIsbyksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX19fV9vbkNhbWVyYU1vdmVkKEEpe2lmKEEhPT10aGlzLmNhbWVyYUJvdW5kKXJldHVybjtjb25zdCBlPXRoaXMucnVudGltZS5jYW1lcmFTdGF0ZXNbQV0sdD10aGlzLl9nZXRQZW5MYXllcklEKCk7dD49MCYmdGhpcy5ydW50aW1lLnJlbmRlcmVyLnBlblRyYW5zbGF0ZSh0LC4uLmUucG9zLGUuc2NhbGUsZS5kaXIpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9YmluZFRvQ2FtZXJhKEEpe3RoaXMuY2FtZXJhQm91bmQ9QSx0aGlzLl9vbkNhbWVyYU1vdmVkKCl9cmVtb3ZlQ2FtZXJhQmluZGluZygpe3RoaXMuY2FtZXJhQm91bmQ9LTE7Y29uc3QgQT10aGlzLl9nZXRQZW5MYXllcklEKCk7QT49MCYmdGhpcy5ydW50aW1lLnJlbmRlcmVyLnBlblRyYW5zbGF0ZShBLDAsMCwxLDApfV93cmFwQ29sb3IoQSl7cmV0dXJuIHUud3JhcENsYW1wKEEsMCwxMDApfV9pbml0Q29sb3JQYXJhbSgpe3JldHVyblt7dGV4dDpRKHtpZDoicGVuLmNvbG9yTWVudS5jb2xvciIsZGVmYXVsdDoiY29sb3IiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgY29sb3IgZWxlbWVudCBpbiBjb2xvciBwaWNrZXIgZm9yIHBlbiBleHRlbnNpb24ifSksdmFsdWU6d30se3RleHQ6USh7aWQ6InBlbi5jb2xvck1lbnUuc2F0dXJhdGlvbiIsZGVmYXVsdDoic2F0dXJhdGlvbiIsZGVzY3JpcHRpb246ImxhYmVsIGZvciBzYXR1cmF0aW9uIGVsZW1lbnQgaW4gY29sb3IgcGlja2VyIGZvciBwZW4gZXh0ZW5zaW9uIn0pLHZhbHVlOkN9LHt0ZXh0OlEoe2lkOiJwZW4uY29sb3JNZW51LmJyaWdodG5lc3MiLGRlZmF1bHQ6ImJyaWdodG5lc3MiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgYnJpZ2h0bmVzcyBlbGVtZW50IGluIGNvbG9yIHBpY2tlciBmb3IgcGVuIGV4dGVuc2lvbiJ9KSx2YWx1ZTpJfSx7dGV4dDpRKHtpZDoicGVuLmNvbG9yTWVudS50cmFuc3BhcmVuY3kiLGRlZmF1bHQ6InRyYW5zcGFyZW5jeSIsZGVzY3JpcHRpb246ImxhYmVsIGZvciB0cmFuc3BhcmVuY3kgZWxlbWVudCBpbiBjb2xvciBwaWNrZXIgZm9yIHBlbiBleHRlbnNpb24ifSksdmFsdWU6TX1dfWdldExheWVyUGFyYW0oKXtyZXR1cm5be3RleHQ6USh7aWQ6InBlbi5sYXllck1lbnUuZnJvbnQiLGRlZmF1bHQ6ImZyb250IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGZyb250In0pLHZhbHVlOmR9LHt0ZXh0OlEoe2lkOiJwZW4ubGF5ZXJNZW51LmJhY2siLGRlZmF1bHQ6ImJhY2siLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgYmFjayJ9KSx2YWx1ZTpwfV19Z2V0SXRhbGljc1RvZ2dsZVBhcmFtKCl7cmV0dXJuW3t0ZXh0OlEoe2lkOiJwZW4uaXRhbGljc1RvZ2dsZS5vbiIsZGVmYXVsdDoib24iLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3Igb24ifSksdmFsdWU6bX0se3RleHQ6USh7aWQ6InBlbi5pdGFsaWNzVG9nZ2xlLm9mZiIsZGVmYXVsdDoib2ZmIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIG9mZiJ9KSx2YWx1ZTpGfV19X2NsYW1wQ29sb3JQYXJhbShBKXtyZXR1cm4gdS5jbGFtcChBLDAsMTAwKX1fYWxwaGFUb1RyYW5zcGFyZW5jeShBKXtyZXR1cm4gMTAwKigxLUEpfV90cmFuc3BhcmVuY3lUb0FscGhhKEEpe3JldHVybiAxLUEvMTAwfV9nZXRGb250cygpe3JldHVyblt7dGV4dDoiU2FucyBTZXJpZiIsdmFsdWU6IlNhbnMgU2VyaWYifSx7dGV4dDoiU2VyaWYiLHZhbHVlOiJTZXJpZiJ9LHt0ZXh0OiJIYW5kd3JpdGluZyIsdmFsdWU6IkhhbmR3cml0aW5nIn0se3RleHQ6Ik1hcmtlciIsdmFsdWU6Ik1hcmtlciJ9LHt0ZXh0OiJDdXJseSIsdmFsdWU6IkN1cmx5In0se3RleHQ6IlBpeGVsIix2YWx1ZToiUGl4ZWwifSx7dGV4dDoiUGxheWZ1bCIsdmFsdWU6IlBsYXlmdWwifSx7dGV4dDoiQnViYmx5Iix2YWx1ZToiQnViYmx5In0se3RleHQ6IkFyY2FkZSIsdmFsdWU6IkFyY2FkZSJ9LHt0ZXh0OiJCaXRzIGFuZCBCeXRlcyIsdmFsdWU6IkJpdHMgYW5kIEJ5dGVzIn0se3RleHQ6IlRlY2hub2xvZ2ljYWwiLHZhbHVlOiJUZWNobm9sb2dpY2FsIn0se3RleHQ6IlNjcmF0Y2giLHZhbHVlOiJTY3JhdGNoIn0se3RleHQ6IkFyY2hpdm8iLHZhbHVlOiJBcmNoaXZvIn0se3RleHQ6IkFyY2hpdm8gQmxhY2siLHZhbHVlOiJBcmNoaXZvIEJsYWNrIn0sLi4udGhpcy5ydW50aW1lLmZvbnRNYW5hZ2VyLmdldEZvbnRzKCkubWFwKEE9Pih7dGV4dDpBLm5hbWUsdmFsdWU6QS5mYW1pbHl9KSkse3RleHQ6InJhbmRvbSBmb250Iix2YWx1ZToiUmFuZG9tIn1dfWdldEluZm8oKXtyZXR1cm57aWQ6InBlbiIsbmFtZTpRKHtpZDoicGVuLmNhdGVnb3J5TmFtZSIsZGVmYXVsdDoiUGVuIixkZXNjcmlwdGlvbjoiTGFiZWwgZm9yIHRoZSBwZW4gZXh0ZW5zaW9uIGNhdGVnb3J5In0pLGJsb2NrSWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTkRBaUlHaGxhV2RvZEQwaU5EQWlJSFpwWlhkQ2IzZzlJakFnTUNBME1DQTBNQ0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4ZEdsMGJHVStjR1Z1TFdsamIyNDhMM1JwZEd4bFBqeG5JSE4wY205clpUMGlJelUzTlVVM05TSWdabWxzYkQwaWJtOXVaU0lnWm1sc2JDMXlkV3hsUFNKbGRtVnViMlJrSWlCemRISnZhMlV0YkdsdVpXTmhjRDBpY205MWJtUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGljbTkxYm1RaVBqeHdZWFJvSUdROUlrMDRMamMxTXlBek5DNDJNREpzTFRRdU1qVWdNUzQzT0NBeExqYzRNeTAwTGpJek4yTXhMakl4T0MweUxqZzVNaUF5TGprd055MDFMalF5TXlBMUxqQXpMVGN1TlRNNFRETXhMakEyTmlBMExqa3pZeTQ0TkRZdExqZzBNaUF5TGpZMUxTNDBNU0EwTGpBek1pNDVOamNnTVM0ek9DQXhMak0zTlNBeExqZ3hOaUF6TGpFM015NDVOeUEwTGpBeE5Vd3hOaTR6TVRnZ01qa3VOVGxqTFRJdU1USXpJREl1TVRFMkxUUXVOalkwSURNdU9DMDNMalUyTlNBMUxqQXhNaUlnWm1sc2JEMGlJMFpHUmlJdlBqeHdZWFJvSUdROUlrMHlPUzQwTVNBMkxqRXhjeTAwTGpRMUxUSXVNemM0TFRndU1qQXlJRFV1TnpjeVl5MHhMamN6TkNBekxqYzJOaTAwTGpNMUlERXVOVFEyTFRRdU16VWdNUzQxTkRZaUx6NDhjR0YwYUNCa1BTSk5Nell1TkRJZ09DNDRNalZqTUNBdU5EWXpMUzR4TkM0NE56TXRMalF6TWlBeExqRTJOR3d0T1M0ek16VWdPUzR6WXk0eU9ESXRMakk1TGpReExTNDJOamd1TkRFdE1TNHhNaUF3TFM0NE56UXRMalV3TnkweExqazJNeTB4TGpRd05pMHlMamcyT0MweExqTTJNaTB4TGpNMU9DMHpMakUwTnkweExqZ3ROQzR3TURJdExqazVURE13TGprNUlEVXVNREZqTGpnME5DMHVPRFFnTWk0Mk5TMHVOREVnTkM0d016VXVPVFl1T0RrNExqa3dOQ0F4TGpNNU5pQXhMams0TWlBeExqTTVOaUF5TGpnMU5VMHhNQzQxTVRVZ016TXVOemMwWXkwdU5UY3pMak13TWkweExqRTFOeTQxTnkweExqYzJOQzQ0TTB3MExqVWdNell1TXpneWJERXVOemcyTFRRdU1qTTFZeTR5TlRndExqWXdOQzQxTXkweExqRTROaTQ0TXpNdE1TNDNOVGN1TmprdU1UZ3pJREV1TkRRNExqWXlOU0F5TGpFd09DQXhMakk0TWk0Mk5pNDJOVGdnTVM0eE1ESWdNUzQwTVRJZ01TNHlPRGNnTWk0eE1ESWlJR1pwYkd3OUlpTTBRemszUmtZaUx6NDhjR0YwYUNCa1BTSk5Nell1TkRrNElEZ3VOelE0WXpBZ0xqUTJOQzB1TVRRdU9EYzBMUzQwTXpNZ01TNHhOalZzTFRFNUxqYzBNaUF4T1M0Mk9HTXRNaTR4TXlBeUxqRXhMVFF1TmpjeklETXVOemt6TFRjdU5UY3lJRFV1TURGTU5DNDFJRE0yTGpNNGJDNDVOelF0TWk0ek1UWWdNUzQ1TWpVdExqZ3dPR015TGpnNU9DMHhMakl4T0NBMUxqUTBMVEl1T1NBM0xqVTNMVFV1TURGc01Ua3VOelF6TFRFNUxqWTRZeTR5T1RJdExqSTVNaTQwTXpJdExqY3dNaTQwTXpJdE1TNHhOalVnTUMwdU5qUTJMUzR5TnkweExqUXRMamM0TFRJdU1USXlMakkxTGpFM01pNDFMak0zTnk0M016Y3VOakUwTGpnNU9DNDVNRFVnTVM0ek9UWWdNUzQ1T0RNZ01TNHpPVFlnTWk0NE5UWWlJR1pwYkd3OUlpTTFOelZGTnpVaUlHOXdZV05wZEhrOUlpNHhOU0l2UGp4d1lYUm9JR1E5SWsweE9DNDBOU0F4TWk0NE0yTXdJQzQxTFM0ME1EUXVPVEExTFM0NU1EUXVPVEExY3kwdU9UQTFMUzQwTURVdExqa3dOUzB1T1RBMFl6QXRMalV1TkRBM0xTNDVNRE11T1RBMkxTNDVNRE11TlNBd0lDNDVNRFF1TkRBMExqa3dOQzQ1TURSNklpQm1hV3hzUFNJak5UYzFSVGMxSWk4K1BDOW5Qand2YzNablBnPT0iLGJsb2Nrczpbe2Jsb2NrVHlwZTpzLkxBQkVMLHRleHQ6USh7aWQ6InBtLnBlbi5zdGFnZVNlbGVjdGVkIixkZWZhdWx0OiJTdGFnZSBzZWxlY3RlZDogbGVzcyBwZW4gYmxvY2tzIixkZXNjcmlwdGlvbjoiTGFiZWwgdGhhdCBhcHBlYXJzIGluIHRoZSBQZW4gY2F0ZWdvcnkgd2hlbiB0aGUgc3RhZ2UgaXMgc2VsZWN0ZWQifSksZmlsdGVyOlthLlNUQUdFXX0se29wY29kZToiY2xlYXIiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDpRKHtpZDoicGVuLmNsZWFyIixkZWZhdWx0OiJlcmFzZSBhbGwiLGRlc2NyaXB0aW9uOiJlcmFzZSBhbGwgcGVuIHRyYWlscyBhbmQgc3RhbXBzIn0pfSx7b3Bjb2RlOiJzdGFtcCIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uc3RhbXAiLGRlZmF1bHQ6InN0YW1wIixkZXNjcmlwdGlvbjoicmVuZGVyIGN1cnJlbnQgY29zdHVtZSBvbiB0aGUgYmFja2dyb3VuZCJ9KSxmaWx0ZXI6W2EuU1BSSVRFXX0se29wY29kZToicGVuRG93biIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4ucGVuRG93biIsZGVmYXVsdDoicGVuIGRvd24iLGRlc2NyaXB0aW9uOiJzdGFydCBsZWF2aW5nIGEgdHJhaWwgd2hlbiB0aGUgc3ByaXRlIG1vdmVzIn0pLGZpbHRlcjpbYS5TUFJJVEVdfSx7b3Bjb2RlOiJwZW5VcCIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4ucGVuVXAiLGRlZmF1bHQ6InBlbiB1cCIsZGVzY3JpcHRpb246InN0b3AgbGVhdmluZyBhIHRyYWlsIGJlaGluZCB0aGUgc3ByaXRlIn0pLGZpbHRlcjpbYS5TUFJJVEVdfSx7b3Bjb2RlOiJzZXRQZW5Db2xvclRvQ29sb3IiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDpRKHtpZDoicGVuLnNldENvbG9yIixkZWZhdWx0OiJzZXQgcGVuIGNvbG9yIHRvIFtDT0xPUl0iLGRlc2NyaXB0aW9uOiJzZXQgdGhlIHBlbiBjb2xvciB0byBhIHBhcnRpY3VsYXIgKFJHQikgdmFsdWUifSksYXJndW1lbnRzOntDT0xPUjp7dHlwZTpvLkNPTE9SfX0sZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6ImNoYW5nZVBlbkNvbG9yUGFyYW1CeSIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uY2hhbmdlQ29sb3JQYXJhbSIsZGVmYXVsdDoiY2hhbmdlIHBlbiBbQ09MT1JfUEFSQU1dIGJ5IFtWQUxVRV0iLGRlc2NyaXB0aW9uOiJjaGFuZ2UgdGhlIHN0YXRlIG9mIGEgcGVuIGNvbG9yIHBhcmFtZXRlciJ9KSxhcmd1bWVudHM6e0NPTE9SX1BBUkFNOnt0eXBlOm8uU1RSSU5HLG1lbnU6ImNvbG9yUGFyYW0iLGRlZmF1bHRWYWx1ZTp3fSxWQUxVRTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MTB9fSxmaWx0ZXI6W2EuU1BSSVRFXX0se29wY29kZToic2V0UGVuQ29sb3JQYXJhbVRvIixibG9ja1R5cGU6cy5DT01NQU5ELHRleHQ6USh7aWQ6InBlbi5zZXRDb2xvclBhcmFtIixkZWZhdWx0OiJzZXQgcGVuIFtDT0xPUl9QQVJBTV0gdG8gW1ZBTFVFXSIsZGVzY3JpcHRpb246InNldCB0aGUgc3RhdGUgZm9yIGEgcGVuIGNvbG9yIHBhcmFtZXRlciBlLmcuIHNhdHVyYXRpb24ifSksYXJndW1lbnRzOntDT0xPUl9QQVJBTTp7dHlwZTpvLlNUUklORyxtZW51OiJjb2xvclBhcmFtIixkZWZhdWx0VmFsdWU6d30sVkFMVUU6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjUwfX0sZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6ImNoYW5nZVBlblNpemVCeSIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uY2hhbmdlU2l6ZSIsZGVmYXVsdDoiY2hhbmdlIHBlbiBzaXplIGJ5IFtTSVpFXSIsZGVzY3JpcHRpb246ImNoYW5nZSB0aGUgZGlhbWV0ZXIgb2YgdGhlIHRyYWlsIGxlZnQgYnkgYSBzcHJpdGUifSksYXJndW1lbnRzOntTSVpFOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToxfX0sZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6InNldFBlblNpemVUbyIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uc2V0U2l6ZSIsZGVmYXVsdDoic2V0IHBlbiBzaXplIHRvIFtTSVpFXSIsZGVzY3JpcHRpb246InNldCB0aGUgZGlhbWV0ZXIgb2YgYSB0cmFpbCBsZWZ0IGJ5IGEgc3ByaXRlIn0pLGFyZ3VtZW50czp7U0laRTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19LGZpbHRlcjpbYS5TUFJJVEVdfSwiLS0tIix7b3Bjb2RlOiJkcmF3UmVjdCIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uZHJhd1JlY3QiLGRlZmF1bHQ6InVzZSBbQ09MT1JdIHRvIGRyYXcgYSBzcXVhcmUgb24geDpbWF0geTpbWV0gd2lkdGg6W1dJRFRIXSBoZWlnaHQ6W0hFSUdIVF0iLGRlc2NyaXB0aW9uOiJkcmF3IGEgc3F1YXJlIn0pLGFyZ3VtZW50czp7Q09MT1I6e3R5cGU6by5DT0xPUn0sWDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sWTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sV0lEVEg6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfSxIRUlHSFQ6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfX19LHtvcGNvZGU6ImRyYXdBcnJheUNvbXBsZXhTaGFwZSIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OiJkcmF3IHBvbHlnb24gZnJvbSBwb2ludHMgW1NIQVBFXSB3aXRoIGZpbGwgW0NPTE9SXSIsYXJndW1lbnRzOntTSEFQRTp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6IlstMjAsIDIwLCAyMCwgMjAsIDAsIC0yMF0ifSxDT0xPUjp7dHlwZTpvLkNPTE9SfX0saGlkZUZyb21QYWxldHRlOiExfSwiLS0tIix7b3Bjb2RlOiJwcmVsb2FkVXJpSW1hZ2UiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDoicHJlbG9hZCBpbWFnZSBbVVJJXSBhcyBbTkFNRV0iLGFyZ3VtZW50czp7VVJJOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZToiZGF0YTppbWFnZS9wbmc7YmFzZTY0LCJ9LE5BTUU6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOiJwcmVsb2FkZWQgaW1hZ2UifX19LHtvcGNvZGU6InVubG9hZFVyaUltYWdlIixibG9ja1R5cGU6cy5DT01NQU5ELHRleHQ6InVubG9hZCBpbWFnZSBbTkFNRV0iLGFyZ3VtZW50czp7TkFNRTp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6InByZWxvYWRlZCBpbWFnZSJ9fX0se29wY29kZToiZHJhd1VyaUltYWdlIixibG9ja1R5cGU6cy5DT01NQU5ELHRleHQ6USh7aWQ6InBlbi5kcmF3VXJpSW1hZ2UiLGRlZmF1bHQ6ImRyYXcgaW1hZ2UgW1VSSV0gYXQgeDpbWF0geTpbWV0iLGRlc2NyaXB0aW9uOiJkcmF3IGltYWdlIn0pLGFyZ3VtZW50czp7VVJJOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZToiZGF0YTppbWFnZS9wbmc7YmFzZTY0LCJ9LFg6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fX0se29wY29kZToiZHJhd1VyaUltYWdlV0hSIixibG9ja1R5cGU6cy5DT01NQU5ELHRleHQ6USh7aWQ6InBlbi5kcmF3VXJpSW1hZ2VXSFIiLGRlZmF1bHQ6ImRyYXcgaW1hZ2UgW1VSSV0gYXQgeDpbWF0geTpbWV0gd2lkdGg6W1dJRFRIXSBoZWlnaHQ6W0hFSUdIVF0gcG9pbnRlZCBhdDogW1JPVEFURV0iLGRlc2NyaXB0aW9uOiJkcmF3IGltYWdlIHdpZHRoIGhlaWdodCByb3RhdGlvbiJ9KSxhcmd1bWVudHM6e1VSSTp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCwifSxYOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxZOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxXSURUSDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6NjR9LEhFSUdIVDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6NjR9LFJPVEFURTp7dHlwZTpvLkFOR0xFLGRlZmF1bHRWYWx1ZTo5MH19fSx7b3Bjb2RlOiJkcmF3VXJpSW1hZ2VXSENYMVkxWDJZMlIiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDoiZHJhdyBpbWFnZSBbVVJJXSBhdCB4OltYXSB5OltZXSB3aWR0aDpbV0lEVEhdIGhlaWdodDpbSEVJR0hUXSBjcm9wcGluZyBmcm9tIHg6W0NST1BYXSB5OltDUk9QWV0gd2lkdGg6W0NST1BXXSBoZWlnaHQ6W0NST1BIXSBwb2ludGVkIGF0OiBbUk9UQVRFXSIsYXJndW1lbnRzOntVUkk6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOiJkYXRhOmltYWdlL3BuZztiYXNlNjQsIn0sWDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sWTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sV0lEVEg6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjY0fSxIRUlHSFQ6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjY0fSxDUk9QWDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sQ1JPUFk6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LENST1BXOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToxMDB9LENST1BIOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToxMDB9LFJPVEFURTp7dHlwZTpvLkFOR0xFLGRlZmF1bHRWYWx1ZTo5MH19fSwiLS0tIix7b3Bjb2RlOiJwcmludFRleHQiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDpRKHtpZDoicGVuLnByaW50VGV4dCIsZGVmYXVsdDoicHJpbnQgW1RFWFRdIG9uIHg6W1hdIHk6W1ldIixkZXNjcmlwdGlvbjoicHJpbnQgdGV4dCJ9KSxhcmd1bWVudHM6e1RFWFQ6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOiJGb29iYXJzIGFyZSB5dW1teSJ9LFg6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fX0se29wY29kZToic2V0UHJpbnRGb250IixibG9ja1R5cGU6cy5DT01NQU5ELHRleHQ6USh7aWQ6InBlbi5zZXRQcmludEZvbnQiLGRlZmF1bHQ6InNldCBwcmludCBmb250IHRvIFtGT05UXSIsZGVzY3JpcHRpb246InNldCBwcmludCBmb250In0pLGFyZ3VtZW50czp7Rk9OVDp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6IkFyaWFsIixtZW51OiJGT05UIn19fSx7b3Bjb2RlOiJzZXRQcmludEZvbnRTaXplIixibG9ja1R5cGU6cy5DT01NQU5ELHRleHQ6USh7aWQ6InBlbi5zZXRQcmludEZvbnRTaXplIixkZWZhdWx0OiJzZXQgcHJpbnQgZm9udCBzaXplIHRvIFtTSVpFXSIsZGVzY3JpcHRpb246InNldCBwcmludCBmb250IHNpemUifSksYXJndW1lbnRzOntTSVpFOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToyNH19fSx7b3Bjb2RlOiJzZXRQcmludEZvbnRDb2xvciIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uc2V0UHJpbnRGb250Q29sb3IiLGRlZmF1bHQ6InNldCBwcmludCBmb250IGNvbG9yIHRvIFtDT0xPUl0iLGRlc2NyaXB0aW9uOiJzZXQgcHJpbnQgZm9udCBjb2xvciJ9KSxhcmd1bWVudHM6e0NPTE9SOnt0eXBlOm8uQ09MT1J9fX0se29wY29kZToic2V0UHJpbnRGb250U3Ryb2tlQ29sb3IiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDpRKHtpZDoicGVuLnNldFByaW50Rm9udFN0cm9rZUNvbG9yIixkZWZhdWx0OiJzZXQgcHJpbnQgc3Ryb2tlIGNvbG9yIHRvIFtDT0xPUl0iLGRlc2NyaXB0aW9uOiJzZXQgcHJpbnQgc3Ryb2tlIGNvbG9yIn0pLGFyZ3VtZW50czp7Q09MT1I6e3R5cGU6by5DT0xPUn19fSx7b3Bjb2RlOiJzZXRQcmludEZvbnRTdHJva2VXaWR0aCIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uc2V0UHJpbnRGb250U3Ryb2tlV2lkdGgiLGRlZmF1bHQ6InNldCBwcmludCBzdHJva2Ugd2lkdGggdG8gW1dJRFRIXSIsZGVzY3JpcHRpb246InNldCBwcmludCBzdHJva2Ugd2lkdGgifSksYXJndW1lbnRzOntXSURUSDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJzZXRQcmludEZvbnRXZWlnaHQiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDpRKHtpZDoicGVuLnNldFByaW50Rm9udFdlaWdodCIsZGVmYXVsdDoic2V0IHByaW50IGZvbnQgd2VpZ2h0IHRvIFtXRUlHSFRdIixkZXNjcmlwdGlvbjoic2V0IHByaW50IGZvbnQgd2VpZ2h0In0pLGFyZ3VtZW50czp7V0VJR0hUOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZTo3MDB9fX0se29wY29kZToic2V0UHJpbnRGb250SXRhbGljcyIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uc2V0UHJpbnRGb250SXRhbGljcyIsZGVmYXVsdDoidHVybiBwcmludCBmb250IGl0YWxpY3MgW09QVElPTl0iLGRlc2NyaXB0aW9uOiJ0b2dnbGUgcHJpbnQgZm9udCBpdGFsaWNzIn0pLGFyZ3VtZW50czp7T1BUSU9OOnt0eXBlOm8uU1RSSU5HLG1lbnU6Iml0YWxpY3NUb2dnbGVQYXJhbSIsZGVmYXVsdFZhbHVlOm19fX0se29wY29kZToiZHJhd0NvbXBsZXhTaGFwZSIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OiJkcmF3IHRyaWFuZ2xlIFtTSEFQRV0gd2l0aCBmaWxsIFtDT0xPUl0iLGFyZ3VtZW50czp7U0hBUEU6e3R5cGU6by5QT0xZR09OLG5vZGVzOjN9LENPTE9SOnt0eXBlOm8uQ09MT1J9fSxoaWRlRnJvbVBhbGV0dGU6ITB9LHtvcGNvZGU6ImRyYXc0U2lkZWRDb21wbGV4U2hhcGUiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDoiZHJhdyBxdWFkcmlsYXRlcmFsIFtTSEFQRV0gd2l0aCBmaWxsIFtDT0xPUl0iLGFyZ3VtZW50czp7U0hBUEU6e3R5cGU6by5QT0xZR09OLG5vZGVzOjR9LENPTE9SOnt0eXBlOm8uQ09MT1J9fSxoaWRlRnJvbVBhbGV0dGU6ITB9LHtvcGNvZGU6InNldFBlblNoYWRlVG9OdW1iZXIiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDpRKHtpZDoicGVuLnNldFNoYWRlIixkZWZhdWx0OiJMRUdBQ1kgLSBzZXQgcGVuIHNoYWRlIHRvIFtTSEFERV0iLGRlc2NyaXB0aW9uOiJsZWdhY3kgcGVuIGJsb2NrcyAtIHNldCBwZW4gc2hhZGUifSksYXJndW1lbnRzOntTSEFERTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19LGhpZGVGcm9tUGFsZXR0ZTohMH0se29wY29kZToiY2hhbmdlUGVuU2hhZGVCeSIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uY2hhbmdlU2hhZGUiLGRlZmF1bHQ6IkxFR0FDWSAtIGNoYW5nZSBwZW4gc2hhZGUgYnkgW1NIQURFXSIsZGVzY3JpcHRpb246ImxlZ2FjeSBwZW4gYmxvY2tzIC0gY2hhbmdlIHBlbiBzaGFkZSJ9KSxhcmd1bWVudHM6e1NIQURFOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToxfX0saGlkZUZyb21QYWxldHRlOiEwfSx7b3Bjb2RlOiJzZXRQZW5IdWVUb051bWJlciIsYmxvY2tUeXBlOnMuQ09NTUFORCx0ZXh0OlEoe2lkOiJwZW4uc2V0SHVlIixkZWZhdWx0OiJMRUdBQ1kgLSBzZXQgcGVuIGNvbG9yIHRvIFtIVUVdIixkZXNjcmlwdGlvbjoibGVnYWN5IHBlbiBibG9ja3MgLSBzZXQgcGVuIGNvbG9yIHRvIG51bWJlciJ9KSxhcmd1bWVudHM6e0hVRTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19LGhpZGVGcm9tUGFsZXR0ZTohMH0se29wY29kZToiY2hhbmdlUGVuSHVlQnkiLGJsb2NrVHlwZTpzLkNPTU1BTkQsdGV4dDpRKHtpZDoicGVuLmNoYW5nZUh1ZSIsZGVmYXVsdDoiTEVHQUNZIC0gY2hhbmdlIHBlbiBjb2xvciBieSBbSFVFXSIsZGVzY3JpcHRpb246ImxlZ2FjeSBwZW4gYmxvY2tzIC0gY2hhbmdlIHBlbiBjb2xvciJ9KSxhcmd1bWVudHM6e0hVRTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19LGhpZGVGcm9tUGFsZXR0ZTohMH0se29wY29kZToiZ29QZW5MYXllciIsYmxvY2tUeXBlOnMuQ09NTUFORCxoaWRlRnJvbVBhbGV0dGU6ITAsdGV4dDpRKHtpZDoicGVuLkdvUGVuTGF5ZXIiLGRlZmF1bHQ6ImdvIHRvIFtPUFRJT05dIGxheWVyIixkZXNjcmlwdGlvbjoiZ28gdG8gZnJvbnQgbGF5ZXIocGVuKSJ9KSxhcmd1bWVudHM6e09QVElPTjp7dHlwZTpvLlNUUklORyxtZW51OiJsYXllclBhcmFtIixkZWZhdWx0VmFsdWU6ZH19fV0sbWVudXM6e2NvbG9yUGFyYW06e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczp0aGlzLl9pbml0Q29sb3JQYXJhbSgpfSxsYXllclBhcmFtOnthY2NlcHRSZXBvcnRlcnM6ITEsaXRlbXM6dGhpcy5nZXRMYXllclBhcmFtKCl9LGl0YWxpY3NUb2dnbGVQYXJhbTp7YWNjZXB0UmVwb3J0ZXJzOiExLGl0ZW1zOnRoaXMuZ2V0SXRhbGljc1RvZ2dsZVBhcmFtKCl9LEZPTlQ6e2l0ZW1zOiJfZ2V0Rm9udHMiLGlzVHlwZWFibGU6ITB9fX19Y2xlYXIoKXtjb25zdCBBPXRoaXMuX2dldFBlbkxheWVySUQoKTtBPj0wJiYodGhpcy5ydW50aW1lLnJlbmRlcmVyLnBlbkNsZWFyKEEpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCkpfXNldFByaW50Rm9udChBKXt0aGlzLnByaW50VGV4dEF0dHJpYnV0ZS5mb250PUEuRk9OVH1zZXRQcmludEZvbnRTaXplKEEpe3RoaXMucHJpbnRUZXh0QXR0cmlidXRlLnNpemU9QS5TSVpFfXNldFByaW50Rm9udENvbG9yKEEpe2NvbnN0IGU9Qi50b1JnYkNvbG9yT2JqZWN0KEEuQ09MT1IpLHQ9Zy5yZ2JUb0hleChlKTt0aGlzLnByaW50VGV4dEF0dHJpYnV0ZS5jb2xvcj10fXNldFByaW50Rm9udFN0cm9rZUNvbG9yKEEpe2NvbnN0IGU9Qi50b1JnYkNvbG9yT2JqZWN0KEEuQ09MT1IpLHQ9Zy5yZ2JUb0hleChlKTt0aGlzLnByaW50VGV4dEF0dHJpYnV0ZS5zdHJva2VDb2xvcj10fXNldFByaW50Rm9udFN0cm9rZVdpZHRoKEEpe3RoaXMucHJpbnRUZXh0QXR0cmlidXRlLnN0cm9rZVdpZHRoPUEuV0lEVEh9c2V0UHJpbnRGb250V2VpZ2h0KEEpe3RoaXMucHJpbnRUZXh0QXR0cmlidXRlLndlaWdodD1BLldFSUdIVH1zZXRQcmludEZvbnRJdGFsaWNzKEEpe3RoaXMucHJpbnRUZXh0QXR0cmlidXRlLml0YWxpYz1BLk9QVElPTj09PW19cHJpbnRUZXh0KEEpe2NvbnN0IGU9dGhpcy5fZ2V0Qml0bWFwQ2FudmFzKCk7bGV0IHQ9IiI7dCs9IiIuY29uY2F0KHRoaXMucHJpbnRUZXh0QXR0cmlidXRlLml0YWxpYz8iaXRhbGljICI6IiIpLHQrPSIiLmNvbmNhdCh0aGlzLnByaW50VGV4dEF0dHJpYnV0ZS53ZWlnaHQsIiAiKSx0Kz0iIi5jb25jYXQodGhpcy5wcmludFRleHRBdHRyaWJ1dGUuc2l6ZSwicHggIiksdCs9dGhpcy5wcmludFRleHRBdHRyaWJ1dGUuZm9udCxlLmZvbnQ9dCxlLnN0cm9rZVN0eWxlPXRoaXMucHJpbnRUZXh0QXR0cmlidXRlLnN0cm9rZVdpZHRoPjA/dGhpcy5wcmludFRleHRBdHRyaWJ1dGUuc3Ryb2tlQ29sb3I6dGhpcy5wcmludFRleHRBdHRyaWJ1dGUuY29sb3IsZS5saW5lV2lkdGg9dGhpcy5wcmludFRleHRBdHRyaWJ1dGUuc3Ryb2tlV2lkdGgsZS5maWxsU3R5bGU9dGhpcy5wcmludFRleHRBdHRyaWJ1dGUuY29sb3IsdGhpcy5wcmludFRleHRBdHRyaWJ1dGUuc3Ryb2tlV2lkdGg+MCYmZS5zdHJva2VUZXh0KEEuVEVYVCxBLlgsLUEuWSksZS5maWxsVGV4dChBLlRFWFQsQS5YLC1BLlkpLHRoaXMuX2RyYXdDb250ZXh0VG9QZW4oZSl9YXN5bmMgX2RyYXdVcmlJbWFnZShBKXt2YXIgZTtsZXR7VVJJOnQsWDpuLFk6aSxXSURUSDpyLEhFSUdIVDpvLFJPVEFURTpzLENST1BYOmEsQ1JPUFk6QixDUk9QVzpjLENST1BIOmd9PUE7Y29uc3QgRT1udWxsIT09KGU9dGhpcy5wcmVsb2FkZWRJbWFnZXNbdF0pJiZ2b2lkIDAhPT1lP2U6YXdhaXQgbmV3IFByb21pc2UoKEEsZSk9Pntjb25zdCBuPW5ldyBJbWFnZTtuLm9ubG9hZD0oKT0+QShuKSxuLm9uZXJyb3I9QT0+e2NvbnNvbGUuZXJyb3IoImZhaWxlZCB0byBsb2FkIix0LEEpLGUoIkltYWdlIGZhaWxlZCB0byBsb2FkIil9LG4uc3JjPXR9KTtpZighRS5jb21wbGV0ZSl0aHJvdyBuZXcgRXJyb3IoInRoZSBwcm92aWRlZCBpbWFnZSBuZXZlciBsb2FkZWQiKTtpZihFLndpZHRoPD0wKXRocm93IG5ldyBFcnJvcigidGhlIGltYWdlIGhhcyBhbiBpbnZhbGlkIHdpZHRoIG9mICIuY29uY2F0KEUud2lkdGgpKTtpZihFLmhlaWdodDw9MCl0aHJvdyBuZXcgRXJyb3IoInRoZSBpbWFnZSBoYXMgYW4gaW52YWxpZCBoZWlnaHQgb2YgIi5jb25jYXQoRS5oZWlnaHQpKTtjb25zdCBRPXRoaXMuX2dldEJpdG1hcENhbnZhcygpO2lmKFEuY2FudmFzLndpZHRoPD0wJiZRLmNhbnZhcy5oZWlnaHQ8PTApcmV0dXJuO1Eucm90YXRlKHUuZGVnVG9SYWQocy05MCkpO2NvbnN0IGw9bnVsbCE9cj9yOkUud2lkdGgsaD1udWxsIT1vP286RS5oZWlnaHQsdz1bYSxCLGMsZyxuLWwvMiwtaS1oLzIsbCxoXTsibnVtYmVyIj09dHlwZW9mIGEmJiJudW1iZXIiPT10eXBlb2YgQiYmZyYmZ3x8dy5zcGxpY2UoMCw0KSxRLmRyYXdJbWFnZShFLC4uLncpLHRoaXMuX2RyYXdDb250ZXh0VG9QZW4oUSl9ZHJhd1VyaUltYWdlKEEpe2NvbnN0IGU9dGhpcy5wcmVsb2FkZWRJbWFnZXNbQS5VUkldLHQ9dGhpcy5fZHJhd1VyaUltYWdlKEEpO2lmKCFlKXJldHVybiB0fWRyYXdVcmlJbWFnZVdIUihBKXtjb25zdCBlPXRoaXMucHJlbG9hZGVkSW1hZ2VzW0EuVVJJXSx0PXRoaXMuX2RyYXdVcmlJbWFnZShBKTtpZighZSlyZXR1cm4gdH1kcmF3VXJpSW1hZ2VXSENYMVkxWDJZMlIoQSl7Y29uc3QgZT10aGlzLnByZWxvYWRlZEltYWdlc1tBLlVSSV0sdD10aGlzLl9kcmF3VXJpSW1hZ2UoQSk7aWYoIWUpcmV0dXJuIHR9cHJlbG9hZFVyaUltYWdlKEEpe2xldHtVUkk6ZSxOQU1FOnR9PUE7cmV0dXJuIG5ldyBQcm9taXNlKEE9Pntjb25zdCBuPW5ldyBJbWFnZTtuLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiLG4ub25sb2FkPSgpPT57dGhpcy5wcmVsb2FkZWRJbWFnZXNbQi50b1N0cmluZyh0KV09bixBKCl9LG4ub25lcnJvcj1BLG4uc3JjPUIudG9TdHJpbmcoZSl9KX11bmxvYWRVcmlJbWFnZShBKXtsZXR7TkFNRTplfT1BO2NvbnN0IHQ9Qi50b1N0cmluZyhlKTt0aGlzLnByZWxvYWRlZEltYWdlcy5oYXNPd25Qcm9wZXJ0eSh0KSYmKHRoaXMucHJlbG9hZGVkSW1hZ2VzW3RdLnJlbW92ZSgpLGRlbGV0ZSB0aGlzLnByZWxvYWRlZEltYWdlc1t0XSl9ZHJhd1JlY3QoQSl7Y29uc3QgZT10aGlzLl9nZXRCaXRtYXBDYW52YXMoKSx0PUIudG9SZ2JDb2xvck9iamVjdChBLkNPTE9SKSxuPWcucmdiVG9IZXgodCk7ZS5maWxsU3R5bGU9bixlLnN0cm9rZVN0eWxlPWUuZmlsbFN0eWxlLGUuZmlsbFJlY3QoQS5YLC1BLlksQS5XSURUSCxBLkhFSUdIVCksdGhpcy5fZHJhd0NvbnRleHRUb1BlbihlKX1fZHJhd0NvbnRleHRUb1BlbihBKXtjb25zdCBlPXRoaXMuX2dldFBlbkxheWVySUQoKSx0PXRoaXMuYml0bWFwQ2FudmFzLndpZHRoLG49dGhpcy5iaXRtYXBDYW52YXMuaGVpZ2h0O0EucmVzdG9yZSgpO2NvbnN0IGk9dGhpcy5ydW50aW1lLnJlbmRlcmVyLl9hbGxTa2luc1t0aGlzLmJpdG1hcFNraW5JRF0scj1BLmdldEltYWdlRGF0YSgwLDAsdCxuKTtpLl9zZXRUZXh0dXJlKHIpLHRoaXMucnVudGltZS5yZW5kZXJlci5wZW5TdGFtcChlLHRoaXMuYml0bWFwRHJhd2FibGVJRCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX1fZ2V0Qml0bWFwQ2FudmFzKCl7Y29uc3QgQT10aGlzLl9nZXRQZW5MYXllcklEKCksZT10aGlzLnJ1bnRpbWUucmVuZGVyZXIuX2FsbFNraW5zW0FdLHQ9ZS5fc2l6ZVswXSxuPWUuX3NpemVbMV07dGhpcy5iaXRtYXBDYW52YXMud2lkdGg9dCx0aGlzLmJpdG1hcENhbnZhcy5oZWlnaHQ9bjtjb25zdCBpPXRoaXMuYml0bWFwQ2FudmFzLmdldENvbnRleHQoIjJkIik7cmV0dXJuIGkuY2xlYXJSZWN0KDAsMCx0LG4pLGkudHJhbnNsYXRlKHQvMixuLzIpLGkuc2NhbGUoZS5yZW5kZXJRdWFsaXR5LGUucmVuZGVyUXVhbGl0eSksaX1zdGFtcChBLGUpe3RoaXMuX3N0YW1wKGUudGFyZ2V0KX1fc3RhbXAoQSl7Y29uc3QgZT10aGlzLl9nZXRQZW5MYXllcklEKCk7ZT49MCYmKHRoaXMucnVudGltZS5yZW5kZXJlci5wZW5TdGFtcChlLEEuZHJhd2FibGVJRCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSl9cGVuRG93bihBLGUpe3RoaXMuX3BlbkRvd24oZS50YXJnZXQpfV9wZW5Eb3duKEEpe2NvbnN0IGU9dGhpcy5fZ2V0UGVuU3RhdGUoQSk7ZS5wZW5Eb3dufHwoZS5wZW5Eb3duPSEwLEEub25UYXJnZXRNb3ZlZD10aGlzLl9vblRhcmdldE1vdmVkKTtjb25zdCB0PXRoaXMuX2dldFBlbkxheWVySUQoKTt0Pj0wJiYodGhpcy5ydW50aW1lLnJlbmRlcmVyLnBlblBvaW50KHQsZS5wZW5BdHRyaWJ1dGVzLEEueCxBLnkpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCkpfXBlblVwKEEsZSl7dGhpcy5fcGVuVXAoZS50YXJnZXQpfV9wZW5VcChBKXtjb25zdCBlPXRoaXMuX2dldFBlblN0YXRlKEEpO2UucGVuRG93biYmKGUucGVuRG93bj0hMSxBLm9uVGFyZ2V0TW92ZWQ9bnVsbCl9c2V0UGVuQ29sb3JUb0NvbG9yKEEsZSl7dGhpcy5fc2V0UGVuQ29sb3JUb0NvbG9yKEEuQ09MT1IsZS50YXJnZXQpfV9zZXRQZW5Db2xvclRvQ29sb3IoQSxlKXtjb25zdCB0PXRoaXMuX2dldFBlblN0YXRlKGUpLG49Qi50b1JnYkNvbG9yT2JqZWN0KEEpLGk9Zy5yZ2JUb0hzdihuKTt0LmNvbG9yPWkuaC8zNjAqMTAwLHQuc2F0dXJhdGlvbj0xMDAqaS5zLHQuYnJpZ2h0bmVzcz0xMDAqaS52LG4uaGFzT3duUHJvcGVydHkoImEiKT90LnRyYW5zcGFyZW5jeT0xMDAqKDEtbi5hLzI1NSk6dC50cmFuc3BhcmVuY3k9MCx0Ll9zaGFkZT10LmJyaWdodG5lc3MvMix0aGlzLl91cGRhdGVQZW5Db2xvcih0KX1fdXBkYXRlUGVuQ29sb3IoQSl7Y29uc3QgZT1nLmhzdlRvUmdiKHtoOjM2MCpBLmNvbG9yLzEwMCxzOkEuc2F0dXJhdGlvbi8xMDAsdjpBLmJyaWdodG5lc3MvMTAwfSk7QS5wZW5BdHRyaWJ1dGVzLmNvbG9yNGZbMF09ZS5yLzI1NSxBLnBlbkF0dHJpYnV0ZXMuY29sb3I0ZlsxXT1lLmcvMjU1LEEucGVuQXR0cmlidXRlcy5jb2xvcjRmWzJdPWUuYi8yNTUsQS5wZW5BdHRyaWJ1dGVzLmNvbG9yNGZbM109dGhpcy5fdHJhbnNwYXJlbmN5VG9BbHBoYShBLnRyYW5zcGFyZW5jeSl9X3NldE9yQ2hhbmdlQ29sb3JQYXJhbShBLGUsdCxuKXtzd2l0Y2goQSl7Y2FzZSB3OnQuY29sb3I9dGhpcy5fd3JhcENvbG9yKGUrKG4/dC5jb2xvcjowKSk7YnJlYWs7Y2FzZSBDOnQuc2F0dXJhdGlvbj10aGlzLl9jbGFtcENvbG9yUGFyYW0oZSsobj90LnNhdHVyYXRpb246MCkpO2JyZWFrO2Nhc2UgSTp0LmJyaWdodG5lc3M9dGhpcy5fY2xhbXBDb2xvclBhcmFtKGUrKG4/dC5icmlnaHRuZXNzOjApKTticmVhaztjYXNlIE06dC50cmFuc3BhcmVuY3k9dGhpcy5fY2xhbXBDb2xvclBhcmFtKGUrKG4/dC50cmFuc3BhcmVuY3k6MCkpO2JyZWFrO2RlZmF1bHQ6bC53YXJuKCJUcmllZCB0byBzZXQgb3IgY2hhbmdlIHVua25vd24gY29sb3IgcGFyYW1ldGVyOiAiLmNvbmNhdChBKSl9dGhpcy5fdXBkYXRlUGVuQ29sb3IodCl9Y2hhbmdlUGVuQ29sb3JQYXJhbUJ5KEEsZSl7Y29uc3QgdD10aGlzLl9nZXRQZW5TdGF0ZShlLnRhcmdldCk7dGhpcy5fc2V0T3JDaGFuZ2VDb2xvclBhcmFtKEEuQ09MT1JfUEFSQU0sQi50b051bWJlcihBLlZBTFVFKSx0LCEwKX1zZXRQZW5Db2xvclBhcmFtVG8oQSxlKXtjb25zdCB0PXRoaXMuX2dldFBlblN0YXRlKGUudGFyZ2V0KTt0aGlzLl9zZXRPckNoYW5nZUNvbG9yUGFyYW0oQS5DT0xPUl9QQVJBTSxCLnRvTnVtYmVyKEEuVkFMVUUpLHQsITEpfWNoYW5nZVBlblNpemVCeShBLGUpe3RoaXMuX2NoYW5nZVBlblNpemVCeShCLnRvTnVtYmVyKEEuU0laRSksZS50YXJnZXQpfV9jaGFuZ2VQZW5TaXplQnkoQSxlKXtjb25zdCB0PXRoaXMuX2dldFBlblN0YXRlKGUpLnBlbkF0dHJpYnV0ZXM7dC5kaWFtZXRlcj10aGlzLl9jbGFtcFBlblNpemUodC5kaWFtZXRlcitBKX1zZXRQZW5TaXplVG8oQSxlKXt0aGlzLl9zZXRQZW5TaXplVG8oQi50b051bWJlcihBLlNJWkUpLGUudGFyZ2V0KX1fc2V0UGVuU2l6ZVRvKEEsZSl7dGhpcy5fZ2V0UGVuU3RhdGUoZSkucGVuQXR0cmlidXRlcy5kaWFtZXRlcj10aGlzLl9jbGFtcFBlblNpemUoQSl9c2V0UGVuSHVlVG9OdW1iZXIoQSxlKXt0aGlzLl9zZXRQZW5IdWVUb051bWJlcihCLnRvTnVtYmVyKEEuSFVFKSxlLnRhcmdldCl9X3NldFBlbkh1ZVRvTnVtYmVyKEEsZSl7Y29uc3QgdD10aGlzLl9nZXRQZW5TdGF0ZShlKSxuPUEvMjt0aGlzLl9zZXRPckNoYW5nZUNvbG9yUGFyYW0odyxuLHQsITEpLHRoaXMuX3NldE9yQ2hhbmdlQ29sb3JQYXJhbShNLDAsdCwhMSksdGhpcy5fbGVnYWN5VXBkYXRlUGVuQ29sb3IodCl9Y2hhbmdlUGVuSHVlQnkoQSxlKXt0aGlzLl9jaGFuZ2VQZW5IdWVCeShCLnRvTnVtYmVyKEEuSFVFKSxlLnRhcmdldCl9X2NoYW5nZVBlbkh1ZUJ5KEEsZSl7Y29uc3QgdD10aGlzLl9nZXRQZW5TdGF0ZShlKSxuPUEvMjt0aGlzLl9zZXRPckNoYW5nZUNvbG9yUGFyYW0odyxuLHQsITApLHRoaXMuX2xlZ2FjeVVwZGF0ZVBlbkNvbG9yKHQpfXNldFBlblNoYWRlVG9OdW1iZXIoQSxlKXt0aGlzLl9zZXRQZW5TaGFkZVRvTnVtYmVyKEIudG9OdW1iZXIoQS5TSEFERSksZS50YXJnZXQpfV9zZXRQZW5TaGFkZVRvTnVtYmVyKEEsZSl7Y29uc3QgdD10aGlzLl9nZXRQZW5TdGF0ZShlKTtsZXQgbj1CLnRvTnVtYmVyKEEpO24lPTIwMCxuPDAmJihuKz0yMDApLHQuX3NoYWRlPW4sdGhpcy5fbGVnYWN5VXBkYXRlUGVuQ29sb3IodCl9Y2hhbmdlUGVuU2hhZGVCeShBLGUpe3RoaXMuX2NoYW5nZVBlblNoYWRlQnkoQS5TSEFERSxlLnRhcmdldCl9X2NoYW5nZVBlblNoYWRlQnkoQSxlKXtjb25zdCB0PXRoaXMuX2dldFBlblN0YXRlKGUpLG49Qi50b051bWJlcihBKTt0aGlzLl9zZXRQZW5TaGFkZVRvTnVtYmVyKHQuX3NoYWRlK24sZSl9X2xlZ2FjeVVwZGF0ZVBlbkNvbG9yKEEpe2xldCBlPWcuaHN2VG9SZ2Ioe2g6MzYwKkEuY29sb3IvMTAwLHM6MSx2OjF9KTtjb25zdCB0PUEuX3NoYWRlPjEwMD8yMDAtQS5fc2hhZGU6QS5fc2hhZGU7ZT10PDUwP2cubWl4UmdiKGcuUkdCX0JMQUNLLGUsKDEwK3QpLzYwKTpnLm1peFJnYihlLGcuUkdCX1dISVRFLCh0LTUwKS82MCk7Y29uc3Qgbj1nLnJnYlRvSHN2KGUpO0EuY29sb3I9MTAwKm4uaC8zNjAsQS5zYXR1cmF0aW9uPTEwMCpuLnMsQS5icmlnaHRuZXNzPTEwMCpuLnYsdGhpcy5fdXBkYXRlUGVuQ29sb3IoQSl9Z29QZW5MYXllcihBKXt0aGlzLl9nZXRQZW5MYXllcklEKCksdGhpcy5fcGVuRHJhd2FibGVJZCYmdGhpcy5ydW50aW1lLnJlbmRlcmVyLl9ncm91cE9yZGVyaW5nLmF0KC0xKSE9PURbQS5PUFRJT05dJiYoQS5PUFRJT049PT1kPyhjb25zb2xlLmxvZygic2V0dGluZyB0aGUgbGF5ZXIgb3JkZXIgdG8iLGguTEFZRVJfR1JPVVBTX1BFTiksdGhpcy5ydW50aW1lLnJlbmRlcmVyLnNldExheWVyR3JvdXBPcmRlcmluZyhoLkxBWUVSX0dST1VQU19QRU4pLHRoaXMuX3BlbkRyYXdhYmxlSWQ9dGhpcy5ydW50aW1lLnJlbmRlcmVyLnNldERyYXdhYmxlT3JkZXIodGhpcy5fcGVuRHJhd2FibGVJZCwxLzAsaC5QRU5fTEFZRVIpKTooY29uc29sZS5sb2coInNldHRpbmcgdGhlIGxheWVyIG9yZGVyIHRvIixoLkxBWUVSX0dST1VQUyksdGhpcy5ydW50aW1lLnJlbmRlcmVyLnNldExheWVyR3JvdXBPcmRlcmluZyhoLkxBWUVSX0dST1VQUyksdGhpcy5fcGVuRHJhd2FibGVJZD10aGlzLnJ1bnRpbWUucmVuZGVyZXIuc2V0RHJhd2FibGVPcmRlcih0aGlzLl9wZW5EcmF3YWJsZUlkLC0xLzAsaC5QRU5fTEFZRVIpKSl9X2dldFBlbkNvbG9yKEEpe2NvbnN0IGU9e30sdD10aGlzLl9nZXRQZW5TdGF0ZShBKTtyZXR1cm4gZS5yPTI1NSp0LnBlbkF0dHJpYnV0ZXMuY29sb3I0ZlswXSxlLmc9MjU1KnQucGVuQXR0cmlidXRlcy5jb2xvcjRmWzFdLGUuYj0yNTUqdC5wZW5BdHRyaWJ1dGVzLmNvbG9yNGZbMl0sZS5hPXRoaXMuX2FscGhhVG9UcmFuc3BhcmVuY3kodC5wZW5BdHRyaWJ1dGVzLmNvbG9yNGZbM10pLGcucmdiVG9IZXgoZSl9ZHJhd0NvbXBsZXhTaGFwZShBLGUpe2NvbnN0IHQ9ZS50YXJnZXQsbj10aGlzLl9nZXRQZW5TdGF0ZSh0KSxpPW4ucGVuQXR0cmlidXRlcyxyPXRoaXMuX2dldFBlbkNvbG9yKGUudGFyZ2V0KSxvPUEuU0hBUEUscz1vLmF0KC0xKSxhPXRoaXMuX2dldEJpdG1hcENhbnZhcygpLGM9Qi50b1JnYkNvbG9yT2JqZWN0KEEuQ09MT1IpLEU9Zy5yZ2JUb0hleChjKTthLmZpbGxTdHlsZT1FLGEuc3Ryb2tlU3R5bGU9cixhLmxpbmVXaWR0aD1pLmRpYW1ldGVyLGEuYmVnaW5QYXRoKCksYS5tb3ZlVG8ocy54LC1zLnkpO2Zvcihjb25zdCBBIG9mIG8pYS5saW5lVG8oQS54LC1BLnkpO2EuY2xvc2VQYXRoKCksbi5wZW5Eb3duJiZhLnN0cm9rZSgpLGEuZmlsbCgpLHRoaXMuX2RyYXdDb250ZXh0VG9QZW4oYSl9ZHJhdzRTaWRlZENvbXBsZXhTaGFwZShBLGUpe3RoaXMuZHJhd0NvbXBsZXhTaGFwZShBLGUpfWRyYXdBcnJheUNvbXBsZXhTaGFwZShBLGUpe2NvbnN0IHQ9KEE9PntsZXQgZTt0cnl7ZT1KU09OLnBhcnNlKEEpfWNhdGNoKEEpe2U9W119cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZTpbXX0pKEIudG9TdHJpbmcoQS5TSEFQRSkpO2lmKHQubGVuZ3RoPD0wKXJldHVybjt0Lmxlbmd0aCUyIT0wJiZ0LnB1c2goMCk7Y29uc3Qgbj1bXTtsZXQgcj17fSxvPSEwO2Zvcihjb25zdCBBIG9mIHQpbz8oci54PUIudG9OdW1iZXIoQSksbz0hMSk6KHIueT1CLnRvTnVtYmVyKEEpLG4ucHVzaChyKSxyPXt9LG89ITApO3RoaXMuZHJhd0NvbXBsZXhTaGFwZShpKGkoe30sQSkse30se1NIQVBFOm59KSxlKX19QS5leHBvcnRzPVl9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCgyKSxvPXQoNCkscz10KDgpLGE9dCg0MiksQj10KDIzKSxjPXQoNiksZz10KDU1KSxFPXQoNSksUT0iMDAwMDE1MjMtMTIxMi1lZmRlLTE1MjMtNzg1ZmVhYmNkMTIzIix1PSIwMDAwNGYwZS0xMjEyLWVmZGUtMTUyMy03ODVmZWFiY2QxMjMiLGw9IjAwMDAxNTI3LTEyMTItZWZkZS0xNTIzLTc4NWZlYWJjZDEyMyIsaD0iMDAwMDE1MjgtMTIxMi1lZmRlLTE1MjMtNzg1ZmVhYmNkMTIzIix3PSIwMDAwMTU2MC0xMjEyLWVmZGUtMTUyMy03ODVmZWFiY2QxMjMiLEM9IjAwMDAxNTYzLTEyMTItZWZkZS0xNTIzLTc4NWZlYWJjZDEyMyIsST0iMDAwMDE1NjUtMTIxMi1lZmRlLTE1MjMtNzg1ZmVhYmNkMTIzIixNPTEsZD0yMyxwPTM0LG09MzUsRj02LEQ9NSxZPTEsZj0yLE49MyxVPTQseT17VElMVDowLERJU1RBTkNFOjAsTEVEOjF9LFQ9e1RJTFQ6MCxESVNUQU5DRToxLExFRDowfTtjbGFzcyB4e2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5fcGFyZW50PUEsdGhpcy5faW5kZXg9ZSx0aGlzLl9kaXJlY3Rpb249MSx0aGlzLl9wb3dlcj0xMDAsdGhpcy5faXNPbj0hMSx0aGlzLl9wZW5kaW5nVGltZW91dElkPW51bGwsdGhpcy5fcGVuZGluZ1RpbWVvdXRTdGFydFRpbWU9bnVsbCx0aGlzLl9wZW5kaW5nVGltZW91dERlbGF5PW51bGwsdGhpcy5zdGFydEJyYWtpbmc9dGhpcy5zdGFydEJyYWtpbmcuYmluZCh0aGlzKSx0aGlzLnR1cm5PZmY9dGhpcy50dXJuT2ZmLmJpbmQodGhpcyl9c3RhdGljIGdldCBCUkFLRV9USU1FX01TKCl7cmV0dXJuIDFlM31nZXQgZGlyZWN0aW9uKCl7cmV0dXJuIHRoaXMuX2RpcmVjdGlvbn1zZXQgZGlyZWN0aW9uKEEpe3RoaXMuX2RpcmVjdGlvbj1BPDA/LTE6MX1nZXQgcG93ZXIoKXtyZXR1cm4gdGhpcy5fcG93ZXJ9c2V0IHBvd2VyKEEpe2NvbnN0IGU9TWF0aC5tYXgoMCxNYXRoLm1pbihBLDEwMCkpO2lmKDA9PT1lKXRoaXMuX3Bvd2VyPTA7ZWxzZXtjb25zdCBBPTEwMC9lO3RoaXMuX3Bvd2VyPTMwKzcwL0F9fWdldCBpc09uKCl7cmV0dXJuIHRoaXMuX2lzT259Z2V0IHBlbmRpbmdUaW1lb3V0U3RhcnRUaW1lKCl7cmV0dXJuIHRoaXMuX3BlbmRpbmdUaW1lb3V0U3RhcnRUaW1lfWdldCBwZW5kaW5nVGltZW91dERlbGF5KCl7cmV0dXJuIHRoaXMuX3BlbmRpbmdUaW1lb3V0RGVsYXl9dHVybk9uKCl7aWYoMD09PXRoaXMuX3Bvd2VyKXJldHVybjtjb25zdCBBPXRoaXMuX3BhcmVudC5nZW5lcmF0ZU91dHB1dENvbW1hbmQodGhpcy5faW5kZXgrMSxZLFt0aGlzLl9wb3dlcip0aGlzLl9kaXJlY3Rpb25dKTt0aGlzLl9wYXJlbnQuc2VuZChJLEEpLHRoaXMuX2lzT249ITAsdGhpcy5fY2xlYXJUaW1lb3V0KCl9dHVybk9uRm9yKEEpezAhPT10aGlzLl9wb3dlciYmKEE9TWF0aC5tYXgoMCxBKSx0aGlzLnR1cm5PbigpLHRoaXMuX3NldE5ld1RpbWVvdXQodGhpcy5zdGFydEJyYWtpbmcsQSkpfXN0YXJ0QnJha2luZygpe2lmKDA9PT10aGlzLl9wb3dlcilyZXR1cm47Y29uc3QgQT10aGlzLl9wYXJlbnQuZ2VuZXJhdGVPdXRwdXRDb21tYW5kKHRoaXMuX2luZGV4KzEsWSxbMTI3XSk7dGhpcy5fcGFyZW50LnNlbmQoSSxBKSx0aGlzLl9pc09uPSExLHRoaXMuX3NldE5ld1RpbWVvdXQodGhpcy50dXJuT2ZmLHguQlJBS0VfVElNRV9NUyl9dHVybk9mZigpe2xldCBBPSEoYXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0pfHxhcmd1bWVudHNbMF07aWYoMD09PXRoaXMuX3Bvd2VyKXJldHVybjtjb25zdCBlPXRoaXMuX3BhcmVudC5nZW5lcmF0ZU91dHB1dENvbW1hbmQodGhpcy5faW5kZXgrMSxZLFswXSk7dGhpcy5fcGFyZW50LnNlbmQoSSxlLEEpLHRoaXMuX2lzT249ITF9X2NsZWFyVGltZW91dCgpe251bGwhPT10aGlzLl9wZW5kaW5nVGltZW91dElkJiYoY2xlYXJUaW1lb3V0KHRoaXMuX3BlbmRpbmdUaW1lb3V0SWQpLHRoaXMuX3BlbmRpbmdUaW1lb3V0SWQ9bnVsbCx0aGlzLl9wZW5kaW5nVGltZW91dFN0YXJ0VGltZT1udWxsLHRoaXMuX3BlbmRpbmdUaW1lb3V0RGVsYXk9bnVsbCl9X3NldE5ld1RpbWVvdXQoQSxlKXt0aGlzLl9jbGVhclRpbWVvdXQoKTtjb25zdCB0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLl9wZW5kaW5nVGltZW91dElkPT09dCYmKHRoaXMuX3BlbmRpbmdUaW1lb3V0SWQ9bnVsbCx0aGlzLl9wZW5kaW5nVGltZW91dFN0YXJ0VGltZT1udWxsLHRoaXMuX3BlbmRpbmdUaW1lb3V0RGVsYXk9bnVsbCksQSgpfSxlKTt0aGlzLl9wZW5kaW5nVGltZW91dElkPXQsdGhpcy5fcGVuZGluZ1RpbWVvdXRTdGFydFRpbWU9RGF0ZS5ub3coKSx0aGlzLl9wZW5kaW5nVGltZW91dERlbGF5PWV9fWNsYXNzIFJ7Y29uc3RydWN0b3IoQSxlKXt0aGlzLl9ydW50aW1lPUEsdGhpcy5fcnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsdGhpcy5zdG9wQWxsLmJpbmQodGhpcykpLHRoaXMuX2V4dGVuc2lvbklkPWUsdGhpcy5fcG9ydHM9WyJub25lIiwibm9uZSJdLHRoaXMuX21vdG9ycz1bbnVsbCxudWxsXSx0aGlzLl9zZW5zb3JzPXt0aWx0WDowLHRpbHRZOjAsZGlzdGFuY2U6MH0sdGhpcy5fYmxlPW51bGwsdGhpcy5fcnVudGltZS5yZWdpc3RlclBlcmlwaGVyYWxFeHRlbnNpb24oZSx0aGlzKSx0aGlzLl9yYXRlTGltaXRlcj1uZXcgZygyMCksdGhpcy5fYmF0dGVyeUxldmVsSW50ZXJ2YWxJZD1udWxsLHRoaXMucmVzZXQ9dGhpcy5yZXNldC5iaW5kKHRoaXMpLHRoaXMuX29uQ29ubmVjdD10aGlzLl9vbkNvbm5lY3QuYmluZCh0aGlzKSx0aGlzLl9vbk1lc3NhZ2U9dGhpcy5fb25NZXNzYWdlLmJpbmQodGhpcyksdGhpcy5fY2hlY2tCYXR0ZXJ5TGV2ZWw9dGhpcy5fY2hlY2tCYXR0ZXJ5TGV2ZWwuYmluZCh0aGlzKX1nZXQgdGlsdFgoKXtyZXR1cm4gdGhpcy5fc2Vuc29ycy50aWx0WH1nZXQgdGlsdFkoKXtyZXR1cm4gdGhpcy5fc2Vuc29ycy50aWx0WX1nZXQgZGlzdGFuY2UoKXtyZXR1cm4gdGhpcy5fc2Vuc29ycy5kaXN0YW5jZX1tb3RvcihBKXtyZXR1cm4gdGhpcy5fbW90b3JzW0FdfXN0b3BBbGxNb3RvcnMoKXt0aGlzLl9tb3RvcnMuZm9yRWFjaChBPT57QSYmQS50dXJuT2ZmKCExKX0pfXNldExFRChBKXtjb25zdCBlPVtBPj4xNiYyNTUsQT4+OCYyNTUsMjU1JkFdLHQ9dGhpcy5nZW5lcmF0ZU91dHB1dENvbW1hbmQoRixVLGUpO3JldHVybiB0aGlzLnNlbmQoSSx0KX1zZXRMRURNb2RlKCl7Y29uc3QgQT10aGlzLmdlbmVyYXRlSW5wdXRDb21tYW5kKEYsZCx5LkxFRCwwLFQuTEVELCExKTtyZXR1cm4gdGhpcy5zZW5kKEMsQSl9c3RvcExFRCgpe2NvbnN0IEE9dGhpcy5nZW5lcmF0ZU91dHB1dENvbW1hbmQoRixVLFswLDAsMF0pO3JldHVybiB0aGlzLnNlbmQoSSxBKX1wbGF5VG9uZShBLGUpe2NvbnN0IHQ9dGhpcy5nZW5lcmF0ZU91dHB1dENvbW1hbmQoRCxmLFtBLEE+PjgsZSxlPj44XSk7cmV0dXJuIHRoaXMuc2VuZChJLHQpfXN0b3BUb25lKCl7Y29uc3QgQT10aGlzLmdlbmVyYXRlT3V0cHV0Q29tbWFuZChELE4pO3JldHVybiB0aGlzLnNlbmQoSSxBLCExKX1zdG9wQWxsKCl7dGhpcy5pc0Nvbm5lY3RlZCgpJiYodGhpcy5zdG9wVG9uZSgpLHRoaXMuc3RvcEFsbE1vdG9ycygpKX1zY2FuKCl7dGhpcy5fYmxlJiZ0aGlzLl9ibGUuZGlzY29ubmVjdCgpLHRoaXMuX2JsZT1uZXcgYSh0aGlzLl9ydW50aW1lLHRoaXMuX2V4dGVuc2lvbklkLHtmaWx0ZXJzOlt7c2VydmljZXM6W1FdfV0sb3B0aW9uYWxTZXJ2aWNlczpbdV19LHRoaXMuX29uQ29ubmVjdCx0aGlzLnJlc2V0KX1jb25uZWN0KEEpe3RoaXMuX2JsZSYmdGhpcy5fYmxlLmNvbm5lY3RQZXJpcGhlcmFsKEEpfWRpc2Nvbm5lY3QoKXt0aGlzLl9ibGUmJnRoaXMuX2JsZS5kaXNjb25uZWN0KCksdGhpcy5yZXNldCgpfXJlc2V0KCl7dGhpcy5fcG9ydHM9WyJub25lIiwibm9uZSJdLHRoaXMuX21vdG9ycz1bbnVsbCxudWxsXSx0aGlzLl9zZW5zb3JzPXt0aWx0WDowLHRpbHRZOjAsZGlzdGFuY2U6MH0sdGhpcy5fYmF0dGVyeUxldmVsSW50ZXJ2YWxJZCYmKHdpbmRvdy5jbGVhckludGVydmFsKHRoaXMuX2JhdHRlcnlMZXZlbEludGVydmFsSWQpLHRoaXMuX2JhdHRlcnlMZXZlbEludGVydmFsSWQ9bnVsbCl9aXNDb25uZWN0ZWQoKXtsZXQgQT0hMTtyZXR1cm4gdGhpcy5fYmxlJiYoQT10aGlzLl9ibGUuaXNDb25uZWN0ZWQoKSksQX1zZW5kKEEsZSl7bGV0IHQ9IShhcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXSl8fGFyZ3VtZW50c1syXTtyZXR1cm4gdGhpcy5pc0Nvbm5lY3RlZCgpP3QmJiF0aGlzLl9yYXRlTGltaXRlci5va2F5VG9TZW5kKCk/UHJvbWlzZS5yZXNvbHZlKCk6dGhpcy5fYmxlLndyaXRlKHUsQSxCLnVpbnQ4QXJyYXlUb0Jhc2U2NChlKSwiYmFzZTY0Iik6UHJvbWlzZS5yZXNvbHZlKCl9Z2VuZXJhdGVPdXRwdXRDb21tYW5kKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGwsbj1bQSxlXTtyZXR1cm4gdCYmKG49bi5jb25jYXQodC5sZW5ndGgpLmNvbmNhdCh0KSksbn1nZW5lcmF0ZUlucHV0Q29tbWFuZChBLGUsdCxuLGkscil7cmV0dXJuWzEsMixBLGUsdCxuLDAsMCwwLGkscj8xOjBdfV9vbkNvbm5lY3QoKXt0aGlzLnNldExFRE1vZGUoKSx0aGlzLnNldExFRCgyNTUpLHRoaXMuX2JsZS5zdGFydE5vdGlmaWNhdGlvbnMoUSxsLHRoaXMuX29uTWVzc2FnZSksdGhpcy5fYmF0dGVyeUxldmVsSW50ZXJ2YWxJZD13aW5kb3cuc2V0SW50ZXJ2YWwodGhpcy5fY2hlY2tCYXR0ZXJ5TGV2ZWwsNWUzKX1fb25NZXNzYWdlKEEpe2NvbnN0IGU9Qi5iYXNlNjRUb1VpbnQ4QXJyYXkoQSk7c3dpdGNoKGVbMF0pe2Nhc2UgMTpjYXNlIDI6e2NvbnN0IEE9ZVswXTswPT09ZVsxXT90aGlzLl9jbGVhclBvcnQoQSk6dGhpcy5fcmVnaXN0ZXJTZW5zb3JPck1vdG9yKEEsZVszXSk7YnJlYWt9ZGVmYXVsdDp7Y29uc3QgQT1lWzFdLHQ9dGhpcy5fcG9ydHNbQS0xXTt0PT09bSYmKHRoaXMuX3NlbnNvcnMuZGlzdGFuY2U9ZVsyXSksdD09PXAmJih0aGlzLl9zZW5zb3JzLnRpbHRYPWVbMl0sdGhpcy5fc2Vuc29ycy50aWx0WT1lWzNdKTticmVha319fV9jaGVja0JhdHRlcnlMZXZlbCgpe3RoaXMuX2JsZS5yZWFkKFEsaCwhMSl9X3JlZ2lzdGVyU2Vuc29yT3JNb3RvcihBLGUpe2lmKHRoaXMuX3BvcnRzW0EtMV09ZSxlPT09TSl0aGlzLl9tb3RvcnNbQS0xXT1uZXcgeCh0aGlzLEEtMSk7ZWxzZXtjb25zdCB0PWU9PT1tPyJESVNUQU5DRSI6IlRJTFQiLG49dGhpcy5nZW5lcmF0ZUlucHV0Q29tbWFuZChBLGUseVt0XSwxLFRbdF0sITApO3RoaXMuc2VuZChDLG4pLHRoaXMuX2JsZS5zdGFydE5vdGlmaWNhdGlvbnModSx3LHRoaXMuX29uTWVzc2FnZSl9fV9jbGVhclBvcnQoQSl7Y29uc3QgZT10aGlzLl9wb3J0c1tBLTFdO2U9PT1wJiYodGhpcy5fc2Vuc29ycy50aWx0WD10aGlzLl9zZW5zb3JzLnRpbHRZPTApLGU9PT1tJiYodGhpcy5fc2Vuc29ycy5kaXN0YW5jZT0wKSx0aGlzLl9wb3J0c1tBLTFdPSJub25lIix0aGlzLl9tb3RvcnNbQS0xXT1udWxsfX1jb25zdCBHPSJtb3RvciIsUz0ibW90b3IgQSIsYj0ibW90b3IgQiIsSD0iYWxsIG1vdG9ycyIsdj0idGhpcyB3YXkiLGs9InRoYXQgd2F5IixqPSJyZXZlcnNlIixKPSJ1cCIsej0iZG93biIsTD0ibGVmdCIsUD0icmlnaHQiLE89ImFueSI7Y2xhc3MgVntzdGF0aWMgZ2V0IEVYVEVOU0lPTl9JRCgpe3JldHVybiJ3ZWRvMiJ9c3RhdGljIGdldCBUSUxUX1RIUkVTSE9MRCgpe3JldHVybiAxNX1jb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLl9wZXJpcGhlcmFsPW5ldyBSKHRoaXMucnVudGltZSxWLkVYVEVOU0lPTl9JRCl9Z2V0SW5mbygpe3JldHVybntpZDpWLkVYVEVOU0lPTl9JRCxuYW1lOiJXZURvIDIuMCIsYmxvY2tJY29uVVJJOiJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUZBQUFBQlFDQVlBQUFDT0VmS3RBQUFBQ1hCSVdYTUFBQllsQUFBV0pRRkpVaVR3QUFBRjhrbEVRVlI0QWUyY2JXeFRWUmpILzdjdGJWYzJ0eUVNTnBXQmswVklrTGNFalNBUWdnbFRFNUhFYUtxSmkxRS9tYkNQL2RKQTBrUWJ2emdUUTBLaTJUN1Y2QWVZR29FUExKbUdLUGl5elpEd0VwWUpDSFNiUUljYmRMdnJlczF6T2ExM1hidmR1MmVURHA5ZnN0MzI5TG5uNVhmUFBmZWNlN3RwaG1GQW1Ea3VjY2REQkRJUmdVeEVJQk1SeUVRRU1oR0JURVFnRXhISVJBUXlFWUZNUkNBVEVjaEVCRElSZ1V4RUlCTVJ5RVFFTWhHQlRFUWdFeEhJeE1QTklCeU5WUUJvQlVEYjdrZ28yS1RTOXdCb1VtRk5rVkN3VzZVM0ExZ1A0SkpLSHd4SFkvUytXY1cyUmtMQlZoVjdBTUFPQUlNQUdsV3N0YnlPU0NoNFFNVTJVb3kxUEJWTCthN0lxWnUxdk9aSUtOZzIwL2F6QmFyR3ZLeGVidzlIWTIyUlVMQUR3QkZMVEJjQVRRblpsNGxWRWltTjRzc3RlWFFyUWZzdGViUXBtVzFxMzB4c2h5cXZ4Ukxib2ZZbllXOVpZZ2VWOEM1TExPV2x6YlR4TTNvdUhJN0dQZ1N3V3gzWjBzeUJTQmt1NklZbmxUYk0rdVFlbkpRYU1uS0hEYXFBRm5EcmNDRmJsM0cxZGVmRWphczBhNE4vVnoxME95Ynl2YXBmclNYMXNqcG8rV0l6ME1FN1FMM2RqZ3RIUFRBY2piMm1lcHcvYjJaYUdoNU5MNVJub2ZSOFI5OWRJQzVmSHVzSzVKc3JDVXBtN1RTeDIxWHZiY3dUTnduYkFzUFIyR2NBM3FhRytIMExzSGxEUFo3ZmNhL3VqWitjUlc5L0VtNXZDWHpsTlZoUVVqRnBmLzNPVFNSdlhrS0p6NDNYdDFiaDFTMUxVZXEvNStualE5L2lWbUxJZkwxaWVSVTJiMWlGdGF2enRYTnU2VHJUaThQZm5ZSTY3V2RQb09wNXByelY5WThpdUhkYjlyT1c5dXVtUEkrdkRJRWxkZEJja3p0UE9xVm41WDM2WGoxV1ZRZXlueDFzT1diSzgzamMyUHZpTS9kRlhJWU5heDlINTVsZVhMb3lZSHNmV3dJMTRKQ1JSeDd4NWNrQlUxb2hlWVErMUc5dTM5bFZNMEhlajcrY1I3dy9ZYjdlOSs1THFDaGZhTHZpeGNLMDg4QndOTlprQU9WMDJ1Yks2K29kd3QzUmNmT1VMU1NQR0V2ZUc0OGJOajA4SWYza3FYUG1kdE82dW5rcER6WW4wdS9UTHhyemN1bUpKODBVdDc5c3lnem9GRjYvc2l3NzVtVVl1cE9FcG1uWTAvQTBwdzMzRlRzQ2EraFg1b0poWlhna1piNXp1YjJPMjBDbkw3RXdrUGVDUG0rd0k3Q0VCdmk1d3VPWjM2dEpXN1gzdUdYSlhBZ3hrOFA0ZU5wUlBFdmdza3FmdVIwWi9CTkdlanh2RE0zLzVnczBwYm9Xdittb3RxeWJDYyt0cVVDeno0M2thQkovWCsyZU1qWjNDbE5zakl6bzVpb2tuWFoyYjRBbGtLWWx0TEpvYVk5ak9KbS9CMEtKYnRnNGM0Ri9YT21IMytkRjlkTEtiQm8xT0Q2UVFHVjU2WVE1NU9EdE8wamNIa1oxVlNYOC9uOW5COVM3UmtaMXJGeStORzhaUjlzNzBUZVFRS0RFaDd2SlVkdDFZOS9Pb3BYRkIyL1djYk1weU9leEU5bWxGUzIxYUxsSE1tS0hmekJsMFFUL2hWMmJ6TTlvTFh2MHhHOFlHUjB6cGRMRW42UlQyaysvWGpEem9MWDJHM3UzVFpCTFV5cmFsL1o1cUN5QUsxZi9zbDIvb3IrSVdOZWwxRWppM01XcnBqeUNaSFdxZE5yU2U2aWVTSEZFUmw0bVArcTVHZWhnSEd2dlJHYWw1WEk1dXpVNDdmM0EvUjk5WVRnZEYyd1hybWtvbHI5VG9aNU52VGpUNHlPaG9DMlQwNTdDSk0vcjlXRHhvcW1YYTA3UjlUSGN1RFZjTU84YnQ0YWc2eW5VTEt2a0ZqV0JUTGwwdWdaS3ZObHlxTGVTUUtmWUdnT3BnWHQyYjV6VmhsenJTK0RyNDUxWXZLZzBiOTV0eHp0eHZTOHhaK1Z1WEZ1TEo1K29OZ1YrOWMzUHVIRHhHczZjdSt3NHYvLzlSSm82eDViTjlVZ2JCbzRjUFkxVTZqK2NTRDhvckZ2ekdGWXVYNEt4c1JRR2J0aDZGQ0lDYzltNWRZMDVIdE40NkFRUnFQQjVQV2pZK1pUNVJuTXdreEdCRmg1WlZtbGU5WjNNckdiandmcWNjckMxdmFqclY3UUNhVkNmUzZxckpqOTZuUWxGSzVDdWpQUlQ3TWdZeUVRRU1oR0JUR3dKcEFXNGtKOXBCYm8wemJ4NzBYN3k3QU92OEh4UDNMeUI0WVRwYjJjWkJ0MmlxTDNRRXdmOXpEYlgrd2FMY2E0MzlRTWVDN2ErWUJtT3h1Z0xpTS9PVHQyeWFPb01vTytINkxPY053ZjZ4dXNydGhzaC83bUloMXlGbVloQUppS1FpUWhrSWdLWmlFQW1JcENKQ0dRaUFwbUlRQ1lpa0lrSVpDSUNtWWhBSmlLUWlRaGtJZ0taaUVBbUlwQ0pDR1FpQWprQStBZU93UUtNY1dacUhnQUFBQUJKUlU1RXJrSmdnZz09IixzaG93U3RhdHVzQnV0dG9uOiEwLGJsb2Nrczpbe29wY29kZToibW90b3JPbkZvciIsdGV4dDpvKHtpZDoid2VkbzIubW90b3JPbkZvciIsZGVmYXVsdDoidHVybiBbTU9UT1JfSURdIG9uIGZvciBbRFVSQVRJT05dIHNlY29uZHMiLGRlc2NyaXB0aW9uOiJ0dXJuIGEgbW90b3Igb24gZm9yIHNvbWUgdGltZSJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7TU9UT1JfSUQ6e3R5cGU6bi5TVFJJTkcsbWVudToiTU9UT1JfSUQiLGRlZmF1bHRWYWx1ZTpHfSxEVVJBVElPTjp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSx7b3Bjb2RlOiJtb3Rvck9uIix0ZXh0Om8oe2lkOiJ3ZWRvMi5tb3Rvck9uIixkZWZhdWx0OiJ0dXJuIFtNT1RPUl9JRF0gb24iLGRlc2NyaXB0aW9uOiJ0dXJuIGEgbW90b3Igb24gaW5kZWZpbml0ZWx5In0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntNT1RPUl9JRDp7dHlwZTpuLlNUUklORyxtZW51OiJNT1RPUl9JRCIsZGVmYXVsdFZhbHVlOkd9fX0se29wY29kZToibW90b3JPZmYiLHRleHQ6byh7aWQ6IndlZG8yLm1vdG9yT2ZmIixkZWZhdWx0OiJ0dXJuIFtNT1RPUl9JRF0gb2ZmIixkZXNjcmlwdGlvbjoidHVybiBhIG1vdG9yIG9mZiJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7TU9UT1JfSUQ6e3R5cGU6bi5TVFJJTkcsbWVudToiTU9UT1JfSUQiLGRlZmF1bHRWYWx1ZTpHfX19LHtvcGNvZGU6InN0YXJ0TW90b3JQb3dlciIsdGV4dDpvKHtpZDoid2VkbzIuc3RhcnRNb3RvclBvd2VyIixkZWZhdWx0OiJzZXQgW01PVE9SX0lEXSBwb3dlciB0byBbUE9XRVJdIixkZXNjcmlwdGlvbjoic2V0IHRoZSBtb3RvcidzIHBvd2VyIGFuZCB0dXJuIGl0IG9uIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntNT1RPUl9JRDp7dHlwZTpuLlNUUklORyxtZW51OiJNT1RPUl9JRCIsZGVmYXVsdFZhbHVlOkd9LFBPV0VSOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZToxMDB9fX0se29wY29kZToic2V0TW90b3JEaXJlY3Rpb24iLHRleHQ6byh7aWQ6IndlZG8yLnNldE1vdG9yRGlyZWN0aW9uIixkZWZhdWx0OiJzZXQgW01PVE9SX0lEXSBkaXJlY3Rpb24gdG8gW01PVE9SX0RJUkVDVElPTl0iLGRlc2NyaXB0aW9uOiJzZXQgdGhlIG1vdG9yJ3MgdHVybiBkaXJlY3Rpb24ifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e01PVE9SX0lEOnt0eXBlOm4uU1RSSU5HLG1lbnU6Ik1PVE9SX0lEIixkZWZhdWx0VmFsdWU6R30sTU9UT1JfRElSRUNUSU9OOnt0eXBlOm4uU1RSSU5HLG1lbnU6Ik1PVE9SX0RJUkVDVElPTiIsZGVmYXVsdFZhbHVlOnZ9fX0se29wY29kZToic2V0TGlnaHRIdWUiLHRleHQ6byh7aWQ6IndlZG8yLnNldExpZ2h0SHVlIixkZWZhdWx0OiJzZXQgbGlnaHQgY29sb3IgdG8gW0hVRV0iLGRlc2NyaXB0aW9uOiJzZXQgdGhlIExFRCBjb2xvciJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7SFVFOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZTo1MH19fSx7b3Bjb2RlOiJwbGF5Tm90ZUZvciIsdGV4dDpvKHtpZDoid2VkbzIucGxheU5vdGVGb3IiLGRlZmF1bHQ6InBsYXkgbm90ZSBbTk9URV0gZm9yIFtEVVJBVElPTl0gc2Vjb25kcyIsZGVzY3JpcHRpb246InBsYXkgYSBjZXJ0YWluIG5vdGUgZm9yIHNvbWUgdGltZSJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7Tk9URTp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6NjB9LERVUkFUSU9OOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZTouNX19LGhpZGVGcm9tUGFsZXR0ZTohMH0se29wY29kZToid2hlbkRpc3RhbmNlIix0ZXh0Om8oe2lkOiJ3ZWRvMi53aGVuRGlzdGFuY2UiLGRlZmF1bHQ6IndoZW4gZGlzdGFuY2UgW09QXSBbUkVGRVJFTkNFXSIsZGVzY3JpcHRpb246ImNoZWNrIGZvciB3aGVuIGRpc3RhbmNlIGlzIDwgb3IgPiB0aGFuIHJlZmVyZW5jZSJ9KSxibG9ja1R5cGU6aS5IQVQsYXJndW1lbnRzOntPUDp7dHlwZTpuLlNUUklORyxtZW51OiJPUCIsZGVmYXVsdFZhbHVlOiI8In0sUkVGRVJFTkNFOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZTo1MH19fSx7b3Bjb2RlOiJ3aGVuVGlsdGVkIix0ZXh0Om8oe2lkOiJ3ZWRvMi53aGVuVGlsdGVkIixkZWZhdWx0OiJ3aGVuIHRpbHRlZCBbVElMVF9ESVJFQ1RJT05fQU5ZXSIsZGVzY3JpcHRpb246ImNoZWNrIHdoZW4gdGlsdGVkIGluIGEgY2VydGFpbiBkaXJlY3Rpb24ifSksZnVuYzoiaXNUaWx0ZWQiLGJsb2NrVHlwZTppLkhBVCxhcmd1bWVudHM6e1RJTFRfRElSRUNUSU9OX0FOWTp7dHlwZTpuLlNUUklORyxtZW51OiJUSUxUX0RJUkVDVElPTl9BTlkiLGRlZmF1bHRWYWx1ZTpPfX19LHtvcGNvZGU6ImdldERpc3RhbmNlIix0ZXh0Om8oe2lkOiJ3ZWRvMi5nZXREaXN0YW5jZSIsZGVmYXVsdDoiZGlzdGFuY2UiLGRlc2NyaXB0aW9uOiJ0aGUgdmFsdWUgcmV0dXJuZWQgYnkgdGhlIGRpc3RhbmNlIHNlbnNvciJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiaXNUaWx0ZWQiLHRleHQ6byh7aWQ6IndlZG8yLmlzVGlsdGVkIixkZWZhdWx0OiJ0aWx0ZWQgW1RJTFRfRElSRUNUSU9OX0FOWV0/IixkZXNjcmlwdGlvbjoid2hldGhlciB0aGUgdGlsdCBzZW5zb3IgaXMgdGlsdGVkIn0pLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOntUSUxUX0RJUkVDVElPTl9BTlk6e3R5cGU6bi5TVFJJTkcsbWVudToiVElMVF9ESVJFQ1RJT05fQU5ZIixkZWZhdWx0VmFsdWU6T319fSx7b3Bjb2RlOiJnZXRUaWx0QW5nbGUiLHRleHQ6byh7aWQ6IndlZG8yLmdldFRpbHRBbmdsZSIsZGVmYXVsdDoidGlsdCBhbmdsZSBbVElMVF9ESVJFQ1RJT05dIixkZXNjcmlwdGlvbjoidGhlIGFuZ2xlIHJldHVybmVkIGJ5IHRoZSB0aWx0IHNlbnNvciJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e1RJTFRfRElSRUNUSU9OOnt0eXBlOm4uU1RSSU5HLG1lbnU6IlRJTFRfRElSRUNUSU9OIixkZWZhdWx0VmFsdWU6Sn19fV0sbWVudXM6e01PVE9SX0lEOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0Om8oe2lkOiJ3ZWRvMi5tb3RvcklkLmRlZmF1bHQiLGRlZmF1bHQ6Im1vdG9yIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIG1vdG9yIGVsZW1lbnQgaW4gbW90b3IgbWVudSBmb3IgTEVHTyBXZURvIDIgZXh0ZW5zaW9uIn0pLHZhbHVlOkd9LHt0ZXh0Om8oe2lkOiJ3ZWRvMi5tb3RvcklkLmEiLGRlZmF1bHQ6Im1vdG9yIEEiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgbW90b3IgQSBlbGVtZW50IGluIG1vdG9yIG1lbnUgZm9yIExFR08gV2VEbyAyIGV4dGVuc2lvbiJ9KSx2YWx1ZTpTfSx7dGV4dDpvKHtpZDoid2VkbzIubW90b3JJZC5iIixkZWZhdWx0OiJtb3RvciBCIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIG1vdG9yIEIgZWxlbWVudCBpbiBtb3RvciBtZW51IGZvciBMRUdPIFdlRG8gMiBleHRlbnNpb24ifSksdmFsdWU6Yn0se3RleHQ6byh7aWQ6IndlZG8yLm1vdG9ySWQuYWxsIixkZWZhdWx0OiJhbGwgbW90b3JzIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGFsbCBtb3RvcnMgZWxlbWVudCBpbiBtb3RvciBtZW51IGZvciBMRUdPIFdlRG8gMiBleHRlbnNpb24ifSksdmFsdWU6SH1dfSxNT1RPUl9ESVJFQ1RJT046e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6byh7aWQ6IndlZG8yLm1vdG9yRGlyZWN0aW9uLmZvcndhcmQiLGRlZmF1bHQ6InRoaXMgd2F5IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGZvcndhcmQgZWxlbWVudCBpbiBtb3RvciBkaXJlY3Rpb24gbWVudSBmb3IgTEVHTyBXZURvIDIgZXh0ZW5zaW9uIn0pLHZhbHVlOnZ9LHt0ZXh0Om8oe2lkOiJ3ZWRvMi5tb3RvckRpcmVjdGlvbi5iYWNrd2FyZCIsZGVmYXVsdDoidGhhdCB3YXkiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgYmFja3dhcmQgZWxlbWVudCBpbiBtb3RvciBkaXJlY3Rpb24gbWVudSBmb3IgTEVHTyBXZURvIDIgZXh0ZW5zaW9uIn0pLHZhbHVlOmt9LHt0ZXh0Om8oe2lkOiJ3ZWRvMi5tb3RvckRpcmVjdGlvbi5yZXZlcnNlIixkZWZhdWx0OiJyZXZlcnNlIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIHJldmVyc2UgZWxlbWVudCBpbiBtb3RvciBkaXJlY3Rpb24gbWVudSBmb3IgTEVHTyBXZURvIDIgZXh0ZW5zaW9uIn0pLHZhbHVlOmp9XX0sVElMVF9ESVJFQ1RJT046e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6byh7aWQ6IndlZG8yLnRpbHREaXJlY3Rpb24udXAiLGRlZmF1bHQ6InVwIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIHVwIGVsZW1lbnQgaW4gdGlsdCBkaXJlY3Rpb24gbWVudSBmb3IgTEVHTyBXZURvIDIgZXh0ZW5zaW9uIn0pLHZhbHVlOkp9LHt0ZXh0Om8oe2lkOiJ3ZWRvMi50aWx0RGlyZWN0aW9uLmRvd24iLGRlZmF1bHQ6ImRvd24iLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgZG93biBlbGVtZW50IGluIHRpbHQgZGlyZWN0aW9uIG1lbnUgZm9yIExFR08gV2VEbyAyIGV4dGVuc2lvbiJ9KSx2YWx1ZTp6fSx7dGV4dDpvKHtpZDoid2VkbzIudGlsdERpcmVjdGlvbi5sZWZ0IixkZWZhdWx0OiJsZWZ0IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGxlZnQgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBtZW51IGZvciBMRUdPIFdlRG8gMiBleHRlbnNpb24ifSksdmFsdWU6TH0se3RleHQ6byh7aWQ6IndlZG8yLnRpbHREaXJlY3Rpb24ucmlnaHQiLGRlZmF1bHQ6InJpZ2h0IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIHJpZ2h0IGVsZW1lbnQgaW4gdGlsdCBkaXJlY3Rpb24gbWVudSBmb3IgTEVHTyBXZURvIDIgZXh0ZW5zaW9uIn0pLHZhbHVlOlB9XX0sVElMVF9ESVJFQ1RJT05fQU5ZOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0Om8oe2lkOiJ3ZWRvMi50aWx0RGlyZWN0aW9uLnVwIixkZWZhdWx0OiJ1cCJ9KSx2YWx1ZTpKfSx7dGV4dDpvKHtpZDoid2VkbzIudGlsdERpcmVjdGlvbi5kb3duIixkZWZhdWx0OiJkb3duIn0pLHZhbHVlOnp9LHt0ZXh0Om8oe2lkOiJ3ZWRvMi50aWx0RGlyZWN0aW9uLmxlZnQiLGRlZmF1bHQ6ImxlZnQifSksdmFsdWU6TH0se3RleHQ6byh7aWQ6IndlZG8yLnRpbHREaXJlY3Rpb24ucmlnaHQiLGRlZmF1bHQ6InJpZ2h0In0pLHZhbHVlOlB9LHt0ZXh0Om8oe2lkOiJ3ZWRvMi50aWx0RGlyZWN0aW9uLmFueSIsZGVmYXVsdDoiYW55IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGFueSBlbGVtZW50IGluIHRpbHQgZGlyZWN0aW9uIG1lbnUgZm9yIExFR08gV2VEbyAyIGV4dGVuc2lvbiJ9KSx2YWx1ZTpPfV19LE9QOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyI8IiwiPiJdfX19fW1vdG9yT25Gb3IoQSl7bGV0IGU9MWUzKnIudG9OdW1iZXIoQS5EVVJBVElPTik7cmV0dXJuIGU9Yy5jbGFtcChlLDAsMTVlMyksbmV3IFByb21pc2UodD0+e3RoaXMuX2ZvckVhY2hNb3RvcihBLk1PVE9SX0lELEE9Pntjb25zdCB0PXRoaXMuX3BlcmlwaGVyYWwubW90b3IoQSk7dCYmdC50dXJuT25Gb3IoZSl9KSxzZXRUaW1lb3V0KHQsZSl9KX1tb3Rvck9uKEEpe3JldHVybiB0aGlzLl9mb3JFYWNoTW90b3IoQS5NT1RPUl9JRCxBPT57Y29uc3QgZT10aGlzLl9wZXJpcGhlcmFsLm1vdG9yKEEpO2UmJmUudHVybk9uKCl9KSxuZXcgUHJvbWlzZShBPT57d2luZG93LnNldFRpbWVvdXQoKCk9PntBKCl9LDEwMCl9KX1tb3Rvck9mZihBKXtyZXR1cm4gdGhpcy5fZm9yRWFjaE1vdG9yKEEuTU9UT1JfSUQsQT0+e2NvbnN0IGU9dGhpcy5fcGVyaXBoZXJhbC5tb3RvcihBKTtlJiZlLnR1cm5PZmYoKX0pLG5ldyBQcm9taXNlKEE9Pnt3aW5kb3cuc2V0VGltZW91dCgoKT0+e0EoKX0sMTAwKX0pfXN0YXJ0TW90b3JQb3dlcihBKXtyZXR1cm4gdGhpcy5fZm9yRWFjaE1vdG9yKEEuTU9UT1JfSUQsZT0+e2NvbnN0IHQ9dGhpcy5fcGVyaXBoZXJhbC5tb3RvcihlKTt0JiYodC5wb3dlcj1jLmNsYW1wKHIudG9OdW1iZXIoQS5QT1dFUiksMCwxMDApLHQudHVybk9uKCkpfSksbmV3IFByb21pc2UoQT0+e3dpbmRvdy5zZXRUaW1lb3V0KCgpPT57QSgpfSwxMDApfSl9c2V0TW90b3JEaXJlY3Rpb24oQSl7cmV0dXJuIHRoaXMuX2ZvckVhY2hNb3RvcihBLk1PVE9SX0lELGU9Pntjb25zdCB0PXRoaXMuX3BlcmlwaGVyYWwubW90b3IoZSk7aWYodCl7c3dpdGNoKEEuTU9UT1JfRElSRUNUSU9OKXtjYXNlIHY6dC5kaXJlY3Rpb249MTticmVhaztjYXNlIGs6dC5kaXJlY3Rpb249LTE7YnJlYWs7Y2FzZSBqOnQuZGlyZWN0aW9uPS10LmRpcmVjdGlvbjticmVhaztkZWZhdWx0OkUud2FybigiVW5rbm93biBtb3RvciBkaXJlY3Rpb24gaW4gc2V0TW90b3JEaXJlY3Rpb246ICIuY29uY2F0KEEuRElSRUNUSU9OKSl9dC5pc09uJiYodC5wZW5kaW5nVGltZW91dERlbGF5P3QudHVybk9uRm9yKHQucGVuZGluZ1RpbWVvdXRTdGFydFRpbWUrdC5wZW5kaW5nVGltZW91dERlbGF5LURhdGUubm93KCkpOnQudHVybk9uKCkpfX0pLG5ldyBQcm9taXNlKEE9Pnt3aW5kb3cuc2V0VGltZW91dCgoKT0+e0EoKX0sMTAwKX0pfXNldExpZ2h0SHVlKEEpe2xldCBlPXIudG9OdW1iZXIoQS5IVUUpO2U9Yy53cmFwQ2xhbXAoZSwwLDEwMCk7Y29uc3QgdD0zNjAqZS8xMDAsbj1zLmhzdlRvUmdiKHtoOnQsczoxLHY6MX0pLGk9cy5yZ2JUb0RlY2ltYWwobik7cmV0dXJuIHRoaXMuX3BlcmlwaGVyYWwuc2V0TEVEKGkpLG5ldyBQcm9taXNlKEE9Pnt3aW5kb3cuc2V0VGltZW91dCgoKT0+e0EoKX0sMTAwKX0pfXBsYXlOb3RlRm9yKEEpe2xldCBlPTFlMypyLnRvTnVtYmVyKEEuRFVSQVRJT04pO2U9Yy5jbGFtcChlLDAsM2UzKTtjb25zdCB0PWMuY2xhbXAoci50b051bWJlcihBLk5PVEUpLDI1LDEyNSk7aWYoMCE9PWUpcmV0dXJuIG5ldyBQcm9taXNlKEE9Pntjb25zdCBuPXRoaXMuX25vdGVUb1RvbmUodCk7dGhpcy5fcGVyaXBoZXJhbC5wbGF5VG9uZShuLGUpLHNldFRpbWVvdXQoQSxlKX0pfXdoZW5EaXN0YW5jZShBKXtzd2l0Y2goQS5PUCl7Y2FzZSI8IjpyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC5kaXN0YW5jZTxyLnRvTnVtYmVyKEEuUkVGRVJFTkNFKTtjYXNlIj4iOnJldHVybiB0aGlzLl9wZXJpcGhlcmFsLmRpc3RhbmNlPnIudG9OdW1iZXIoQS5SRUZFUkVOQ0UpO2RlZmF1bHQ6cmV0dXJuIEUud2FybigiVW5rbm93biBjb21wYXJpc29uIG9wZXJhdG9yIGluIHdoZW5EaXN0YW5jZTogIi5jb25jYXQoQS5PUCkpLCExfX13aGVuVGlsdGVkKEEpe3JldHVybiB0aGlzLl9pc1RpbHRlZChBLlRJTFRfRElSRUNUSU9OX0FOWSl9Z2V0RGlzdGFuY2UoKXtyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC5kaXN0YW5jZX1pc1RpbHRlZChBKXtyZXR1cm4gdGhpcy5faXNUaWx0ZWQoQS5USUxUX0RJUkVDVElPTl9BTlkpfWdldFRpbHRBbmdsZShBKXtyZXR1cm4gdGhpcy5fZ2V0VGlsdEFuZ2xlKEEuVElMVF9ESVJFQ1RJT04pfV9pc1RpbHRlZChBKXtzd2l0Y2goQSl7Y2FzZSBPOnJldHVybiB0aGlzLl9nZXRUaWx0QW5nbGUoSik+PVYuVElMVF9USFJFU0hPTER8fHRoaXMuX2dldFRpbHRBbmdsZSh6KT49Vi5USUxUX1RIUkVTSE9MRHx8dGhpcy5fZ2V0VGlsdEFuZ2xlKEwpPj1WLlRJTFRfVEhSRVNIT0xEfHx0aGlzLl9nZXRUaWx0QW5nbGUoUCk+PVYuVElMVF9USFJFU0hPTEQ7ZGVmYXVsdDpyZXR1cm4gdGhpcy5fZ2V0VGlsdEFuZ2xlKEEpPj1WLlRJTFRfVEhSRVNIT0xEfX1fZ2V0VGlsdEFuZ2xlKEEpe3N3aXRjaChBKXtjYXNlIEo6cmV0dXJuIHRoaXMuX3BlcmlwaGVyYWwudGlsdFk+NDU/MjU2LXRoaXMuX3BlcmlwaGVyYWwudGlsdFk6LXRoaXMuX3BlcmlwaGVyYWwudGlsdFk7Y2FzZSB6OnJldHVybiB0aGlzLl9wZXJpcGhlcmFsLnRpbHRZPjQ1P3RoaXMuX3BlcmlwaGVyYWwudGlsdFktMjU2OnRoaXMuX3BlcmlwaGVyYWwudGlsdFk7Y2FzZSBMOnJldHVybiB0aGlzLl9wZXJpcGhlcmFsLnRpbHRYPjQ1PzI1Ni10aGlzLl9wZXJpcGhlcmFsLnRpbHRYOi10aGlzLl9wZXJpcGhlcmFsLnRpbHRYO2Nhc2UgUDpyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC50aWx0WD40NT90aGlzLl9wZXJpcGhlcmFsLnRpbHRYLTI1Njp0aGlzLl9wZXJpcGhlcmFsLnRpbHRYO2RlZmF1bHQ6RS53YXJuKCJVbmtub3duIHRpbHQgZGlyZWN0aW9uIGluIF9nZXRUaWx0QW5nbGU6ICIuY29uY2F0KEEpKX19X2ZvckVhY2hNb3RvcihBLGUpe2xldCB0O3N3aXRjaChBKXtjYXNlIFM6dD1bMF07YnJlYWs7Y2FzZSBiOnQ9WzFdO2JyZWFrO2Nhc2UgSDpjYXNlIEc6dD1bMCwxXTticmVhaztkZWZhdWx0OkUud2FybigiSW52YWxpZCBtb3RvciBJRDogIi5jb25jYXQoQSkpLHQ9W119Zm9yKGNvbnN0IEEgb2YgdCllKEEpfV9ub3RlVG9Ub25lKEEpe3JldHVybiA0NDAqTWF0aC5wb3coMiwoQS02OSkvMTIpfX1BLmV4cG9ydHM9Vn0sZnVuY3Rpb24oQSxlLHQpeyhmdW5jdGlvbihBLGUpeyFmdW5jdGlvbih0KXsidXNlIHN0cmljdCI7dmFyIG4saT0iZnVuY3Rpb24iPT10eXBlb2Yobj10LmF0b2IpP246ImZ1bmN0aW9uIj09dHlwZW9mIEE/ZnVuY3Rpb24oZSl7Ci8vISEgRGVsaWJlcmF0ZWx5IHVzaW5nIGFuIEFQSSB0aGF0J3MgZGVwcmVjYXRlZCBpbiBub2RlLmpzIGJlY2F1c2UKLy8hISB0aGlzIGZpbGUgaXMgZm9yIGJyb3dzZXJzIGFuZCB3ZSBleHBlY3QgdGhlbSB0byBjb3BlIHdpdGggaXQuCi8vISEgRGlzY3Vzc2lvbjogZ2l0aHViLmNvbS9ub2RlLWJyb3dzZXItY29tcGF0L2F0b2IvcHVsbC85CnJldHVybiBuZXcgQShlLCJiYXNlNjQiKS50b1N0cmluZygiYmluYXJ5Iil9OiJvYmplY3QiPT10eXBlb2YgdC5iYXNlNjRqcz9mdW5jdGlvbihBKXt2YXIgZT10LmJhc2U2NGpzLmI2NFRvQnl0ZUFycmF5KEEpO3JldHVybiBBcnJheS5wcm90b3R5cGUubWFwLmNhbGwoZSwoZnVuY3Rpb24oQSl7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoQSl9KSkuam9pbigiIil9OmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJZb3UncmUgcHJvYmFibHkgaW4gYW4gb2xkIGJyb3dzZXIgb3IgYW4gaU9TIHdlYndvcmtlci4gSXQgbWlnaHQgaGVscCB0byBpbmNsdWRlIGJlYXRnYW1taXQncyBiYXNlNjQtanMuIil9O3QuYXRvYj1pLGUmJmUuZXhwb3J0cyYmKGUuZXhwb3J0cz1pKX0od2luZG93KX0pLmNhbGwodGhpcyx0KDIwKS5CdWZmZXIsdCg4OSkoQSkpfSxmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKGUpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7cmV0dXJuKEEgaW5zdGFuY2VvZiBlP0E6ZS5mcm9tKEEudG9TdHJpbmcoKSwiYmluYXJ5IikpLnRvU3RyaW5nKCJiYXNlNjQiKX19KCl9KS5jYWxsKHRoaXMsdCgyMCkuQnVmZmVyKX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgzKSxpPXQoMSkscj10KDcpLG89dCgyKSxzPXQoNCksYT10KDYpLEI9dCgxOCk7bGV0IGM9e307dHJ5e2M9dCgxNTIpfWNhdGNoKEEpe31jbGFzcyBne2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX2NvbmN1cnJlbmN5Q291bnRlcj0wLHRoaXMuX2RydW1QbGF5ZXJzPVtdLHRoaXMuX2luc3RydW1lbnRQbGF5ZXJBcnJheXM9W10sdGhpcy5faW5zdHJ1bWVudFBsYXllck5vdGVBcnJheXM9W10sdGhpcy5fYnVmZmVyU291cmNlcz1bXSx0aGlzLl9sb2FkQWxsU291bmRzKCksdGhpcy5fb25UYXJnZXRDcmVhdGVkPXRoaXMuX29uVGFyZ2V0Q3JlYXRlZC5iaW5kKHRoaXMpLHRoaXMucnVudGltZS5vbigidGFyZ2V0V2FzQ3JlYXRlZCIsdGhpcy5fb25UYXJnZXRDcmVhdGVkKSx0aGlzLl9wbGF5Tm90ZUZvclBpY2tlcj10aGlzLl9wbGF5Tm90ZUZvclBpY2tlci5iaW5kKHRoaXMpLHRoaXMucnVudGltZS5vbigiUExBWV9OT1RFIix0aGlzLl9wbGF5Tm90ZUZvclBpY2tlcil9X2xvYWRBbGxTb3VuZHMoKXtjb25zdCBBPVtdO3RoaXMuRFJVTV9JTkZPLmZvckVhY2goKGUsdCk9Pntjb25zdCBuPSJkcnVtcy8iLmNvbmNhdChlLmZpbGVOYW1lKSxpPXRoaXMuX3N0b3JlU291bmQobix0LHRoaXMuX2RydW1QbGF5ZXJzKTtBLnB1c2goaSl9KSx0aGlzLklOU1RSVU1FTlRfSU5GTy5mb3JFYWNoKChlLHQpPT57dGhpcy5faW5zdHJ1bWVudFBsYXllckFycmF5c1t0XT1bXSx0aGlzLl9pbnN0cnVtZW50UGxheWVyTm90ZUFycmF5c1t0XT1bXSxlLnNhbXBsZXMuZm9yRWFjaCgobixpKT0+e2NvbnN0IHI9Imluc3RydW1lbnRzLyIuY29uY2F0KGUuZGlyTmFtZSwiLyIpLmNvbmNhdChuKSxvPXRoaXMuX3N0b3JlU291bmQocixpLHRoaXMuX2luc3RydW1lbnRQbGF5ZXJBcnJheXNbdF0pO0EucHVzaChvKX0pfSksUHJvbWlzZS5hbGwoQSkudGhlbigoKT0+e30pfV9zdG9yZVNvdW5kKEEsZSx0KXtjb25zdCBuPSIiLmNvbmNhdChBLCIubXAzIik7aWYoIWNbbl0pcmV0dXJuO2NvbnN0IGk9Y1tuXTtyZXR1cm4gZmV0Y2goaSkudGhlbihBPT5BLmFycmF5QnVmZmVyKCkpLnRoZW4oQT0+dGhpcy5fZGVjb2RlU291bmQoQSkpLnRoZW4oQT0+e3RbZV09QX0pfV9kZWNvZGVTb3VuZChBKXtjb25zdCBlPXRoaXMucnVudGltZS5hdWRpb0VuZ2luZTtyZXR1cm4gZT9lLmRlY29kZVNvdW5kUGxheWVyKHtkYXRhOntidWZmZXI6QX19KTpQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIk5vIEF1ZGlvIENvbnRleHQgRGV0ZWN0ZWQiKSl9X2J1aWxkTWVudShBKXtyZXR1cm4gQS5tYXAoKEEsZSk9Pntjb25zdCB0PXt9O3JldHVybiB0LnRleHQ9QS5uYW1lLHQudmFsdWU9U3RyaW5nKGUrMSksdH0pfWdldCBEUlVNX0lORk8oKXtyZXR1cm5be25hbWU6cyh7aWQ6Im11c2ljLmRydW1TbmFyZSIsZGVmYXVsdDoiKDEpIFNuYXJlIERydW0iLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBzbmFyZSBkcnVtIGFzIHVzZWQgaW4gYSBzdGFuZGFyZCBkcnVtIGtpdCJ9KSxmaWxlTmFtZToiMS1zbmFyZSJ9LHtuYW1lOnMoe2lkOiJtdXNpYy5kcnVtQmFzcyIsZGVmYXVsdDoiKDIpIEJhc3MgRHJ1bSIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGJhc3MgZHJ1bSBhcyB1c2VkIGluIGEgc3RhbmRhcmQgZHJ1bSBraXQifSksZmlsZU5hbWU6IjItYmFzcy1kcnVtIn0se25hbWU6cyh7aWQ6Im11c2ljLmRydW1TaWRlU3RpY2siLGRlZmF1bHQ6IigzKSBTaWRlIFN0aWNrIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBkcnVtIHN0aWNrIGhpdHRpbmcgdGhlIHNpZGUgb2YgYSBkcnVtICh1c3VhbGx5IHRoZSBzbmFyZSkifSksZmlsZU5hbWU6IjMtc2lkZS1zdGljayJ9LHtuYW1lOnMoe2lkOiJtdXNpYy5kcnVtQ3Jhc2hDeW1iYWwiLGRlZmF1bHQ6Iig0KSBDcmFzaCBDeW1iYWwiLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIGRydW0gc3RpY2sgaGl0dGluZyBhIGNyYXNoIGN5bWJhbCJ9KSxmaWxlTmFtZToiNC1jcmFzaC1jeW1iYWwifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bU9wZW5IaUhhdCIsZGVmYXVsdDoiKDUpIE9wZW4gSGktSGF0IixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBkcnVtIHN0aWNrIGhpdHRpbmcgYSBoaS1oYXQgd2hpbGUgb3BlbiJ9KSxmaWxlTmFtZToiNS1vcGVuLWhpLWhhdCJ9LHtuYW1lOnMoe2lkOiJtdXNpYy5kcnVtQ2xvc2VkSGlIYXQiLGRlZmF1bHQ6Iig2KSBDbG9zZWQgSGktSGF0IixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBkcnVtIHN0aWNrIGhpdHRpbmcgYSBoaS1oYXQgd2hpbGUgY2xvc2VkIn0pLGZpbGVOYW1lOiI2LWNsb3NlZC1oaS1oYXQifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bVRhbWJvdXJpbmUiLGRlZmF1bHQ6Iig3KSBUYW1ib3VyaW5lIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSB0YW1ib3VyaW5lIGJlaW5nIHN0cnVjayJ9KSxmaWxlTmFtZToiNy10YW1ib3VyaW5lIn0se25hbWU6cyh7aWQ6Im11c2ljLmRydW1IYW5kQ2xhcCIsZGVmYXVsdDoiKDgpIEhhbmQgQ2xhcCIsZGVzY3JpcHRpb246IlNvdW5kIG9mIHR3byBoYW5kcyBjbGFwcGluZyB0b2dldGhlciJ9KSxmaWxlTmFtZToiOC1oYW5kLWNsYXAifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bUNsYXZlcyIsZGVmYXVsdDoiKDkpIENsYXZlcyIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGNsYXZlcyBiZWluZyBzdHJ1Y2sgdG9nZXRoZXIifSksZmlsZU5hbWU6IjktY2xhdmVzIn0se25hbWU6cyh7aWQ6Im11c2ljLmRydW1Xb29kQmxvY2siLGRlZmF1bHQ6IigxMCkgV29vZCBCbG9jayIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGEgd29vZCBibG9jayBiZWluZyBzdHJ1Y2sifSksZmlsZU5hbWU6IjEwLXdvb2QtYmxvY2sifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bUNvd2JlbGwiLGRlZmF1bHQ6IigxMSkgQ293YmVsbCIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGEgY293YmVsbCBiZWluZyBzdHJ1Y2sifSksZmlsZU5hbWU6IjExLWNvd2JlbGwifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bVRyaWFuZ2xlIixkZWZhdWx0OiIoMTIpIFRyaWFuZ2xlIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSB0cmlhbmdsZSAoaW5zdHJ1bWVudCkgYmVpbmcgc3RydWNrIn0pLGZpbGVOYW1lOiIxMi10cmlhbmdsZSJ9LHtuYW1lOnMoe2lkOiJtdXNpYy5kcnVtQm9uZ28iLGRlZmF1bHQ6IigxMykgQm9uZ28iLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIGJvbmdvIGJlaW5nIHN0cnVjayJ9KSxmaWxlTmFtZToiMTMtYm9uZ28ifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bUNvbmdhIixkZWZhdWx0OiIoMTQpIENvbmdhIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBjb25nYSBiZWluZyBzdHJ1Y2sifSksZmlsZU5hbWU6IjE0LWNvbmdhIn0se25hbWU6cyh7aWQ6Im11c2ljLmRydW1DYWJhc2EiLGRlZmF1bHQ6IigxNSkgQ2FiYXNhIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBjYWJhc2EgYmVpbmcgc2hha2VuIn0pLGZpbGVOYW1lOiIxNS1jYWJhc2EifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bUd1aXJvIixkZWZhdWx0OiIoMTYpIEd1aXJvIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBndWlybyBiZWluZyBwbGF5ZWQifSksZmlsZU5hbWU6IjE2LWd1aXJvIn0se25hbWU6cyh7aWQ6Im11c2ljLmRydW1WaWJyYXNsYXAiLGRlZmF1bHQ6IigxNykgVmlicmFzbGFwIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBWaWJyYXNsYXAgYmVpbmcgcGxheWVkIn0pLGZpbGVOYW1lOiIxNy12aWJyYXNsYXAifSx7bmFtZTpzKHtpZDoibXVzaWMuZHJ1bUN1aWNhIixkZWZhdWx0OiIoMTgpIEN1aWNhIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBjdWljYSBiZWluZyBwbGF5ZWQifSksZmlsZU5hbWU6IjE4LWN1aWNhIn1dfWdldCBJTlNUUlVNRU5UX0lORk8oKXtyZXR1cm5be25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRQaWFubyIsZGVmYXVsdDoiKDEpIFBpYW5vIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBwaWFubyJ9KSxkaXJOYW1lOiIxLXBpYW5vIixyZWxlYXNlVGltZTouNSxzYW1wbGVzOlsyNCwzNiw0OCw2MCw3Miw4NCw5NiwxMDhdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudEVsZWN0cmljUGlhbm8iLGRlZmF1bHQ6IigyKSBFbGVjdHJpYyBQaWFubyIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGFuIGVsZWN0cmljIHBpYW5vIn0pLGRpck5hbWU6IjItZWxlY3RyaWMtcGlhbm8iLHJlbGVhc2VUaW1lOi41LHNhbXBsZXM6WzYwXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRPcmdhbiIsZGVmYXVsdDoiKDMpIE9yZ2FuIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYW4gb3JnYW4ifSksZGlyTmFtZToiMy1vcmdhbiIscmVsZWFzZVRpbWU6LjUsc2FtcGxlczpbNjBdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudEd1aXRhciIsZGVmYXVsdDoiKDQpIEd1aXRhciIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGFuIGFjY291c3RpYyBndWl0YXIifSksZGlyTmFtZToiNC1ndWl0YXIiLHJlbGVhc2VUaW1lOi41LHNhbXBsZXM6WzYwXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRFbGVjdHJpY0d1aXRhciIsZGVmYXVsdDoiKDUpIEVsZWN0cmljIEd1aXRhciIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGFuIGVsZWN0cmljIGd1aXRhciJ9KSxkaXJOYW1lOiI1LWVsZWN0cmljLWd1aXRhciIscmVsZWFzZVRpbWU6LjUsc2FtcGxlczpbNjBdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudEJhc3MiLGRlZmF1bHQ6Iig2KSBCYXNzIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYW4gYWNjb3VzdGljIHVwcmlnaHQgYmFzcyJ9KSxkaXJOYW1lOiI2LWJhc3MiLHJlbGVhc2VUaW1lOi4yNSxzYW1wbGVzOlszNiw0OF19LHtuYW1lOnMoe2lkOiJtdXNpYy5pbnN0cnVtZW50UGl6emljYXRvIixkZWZhdWx0OiIoNykgUGl6emljYXRvIixkZXNjcmlwdGlvbjoiU291bmQgb2YgYSBzdHJpbmcgaW5zdHJ1bWVudCAoZS5nLiB2aW9saW4pIGJlaW5nIHBsdWNrZWQifSksZGlyTmFtZToiNy1waXp6aWNhdG8iLHJlbGVhc2VUaW1lOi4yNSxzYW1wbGVzOls2MF19LHtuYW1lOnMoe2lkOiJtdXNpYy5pbnN0cnVtZW50Q2VsbG8iLGRlZmF1bHQ6Iig4KSBDZWxsbyIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGEgY2VsbG8gYmVpbmcgcGxheWVkIHdpdGggYSBib3cifSksZGlyTmFtZToiOC1jZWxsbyIscmVsZWFzZVRpbWU6LjEsc2FtcGxlczpbMzYsNDgsNjBdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudFRyb21ib25lIixkZWZhdWx0OiIoOSkgVHJvbWJvbmUiLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIHRyb21ib25lIGJlaW5nIHBsYXllZCJ9KSxkaXJOYW1lOiI5LXRyb21ib25lIixzYW1wbGVzOlszNiw0OCw2MF19LHtuYW1lOnMoe2lkOiJtdXNpYy5pbnN0cnVtZW50Q2xhcmluZXQiLGRlZmF1bHQ6IigxMCkgQ2xhcmluZXQiLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIGNsYXJpbmV0IGJlaW5nIHBsYXllZCJ9KSxkaXJOYW1lOiIxMC1jbGFyaW5ldCIsc2FtcGxlczpbNDgsNjBdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudFNheG9waG9uZSIsZGVmYXVsdDoiKDExKSBTYXhvcGhvbmUiLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIHNheG9waG9uZSBiZWluZyBwbGF5ZWQifSksZGlyTmFtZToiMTEtc2F4b3Bob25lIixzYW1wbGVzOlszNiw2MCw4NF19LHtuYW1lOnMoe2lkOiJtdXNpYy5pbnN0cnVtZW50Rmx1dGUiLGRlZmF1bHQ6IigxMikgRmx1dGUiLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIGZsdXRlIGJlaW5nIHBsYXllZCJ9KSxkaXJOYW1lOiIxMi1mbHV0ZSIsc2FtcGxlczpbNjAsNzJdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudFdvb2RlbkZsdXRlIixkZWZhdWx0OiIoMTMpIFdvb2RlbiBGbHV0ZSIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGEgd29vZGVuIGZsdXRlIGJlaW5nIHBsYXllZCJ9KSxkaXJOYW1lOiIxMy13b29kZW4tZmx1dGUiLHNhbXBsZXM6WzYwLDcyXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRCYXNzb29uIixkZWZhdWx0OiIoMTQpIEJhc3Nvb24iLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIGJhc3Nvb24gYmVpbmcgcGxheWVkIn0pLGRpck5hbWU6IjE0LWJhc3Nvb24iLHNhbXBsZXM6WzM2LDQ4LDYwXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRDaG9pciIsZGVmYXVsdDoiKDE1KSBDaG9pciIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGEgY2hvaXIgc2luZ2luZyJ9KSxkaXJOYW1lOiIxNS1jaG9pciIscmVsZWFzZVRpbWU6LjI1LHNhbXBsZXM6WzQ4LDYwLDcyXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRWaWJyYXBob25lIixkZWZhdWx0OiIoMTYpIFZpYnJhcGhvbmUiLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIHZpYnJhcGhvbmUgYmVpbmcgc3RydWNrIn0pLGRpck5hbWU6IjE2LXZpYnJhcGhvbmUiLHJlbGVhc2VUaW1lOi41LHNhbXBsZXM6WzYwLDcyXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRNdXNpY0JveCIsZGVmYXVsdDoiKDE3KSBNdXNpYyBCb3giLGRlc2NyaXB0aW9uOiJTb3VuZCBvZiBhIG11c2ljIGJveCBwbGF5aW5nIn0pLGRpck5hbWU6IjE3LW11c2ljLWJveCIscmVsZWFzZVRpbWU6LjI1LHNhbXBsZXM6WzYwXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRTdGVlbERydW0iLGRlZmF1bHQ6IigxOCkgU3RlZWwgRHJ1bSIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGEgc3RlZWwgZHJ1bSBiZWluZyBzdHJ1Y2sifSksZGlyTmFtZToiMTgtc3RlZWwtZHJ1bSIscmVsZWFzZVRpbWU6LjUsc2FtcGxlczpbNjBdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudE1hcmltYmEiLGRlZmF1bHQ6IigxOSkgTWFyaW1iYSIsZGVzY3JpcHRpb246IlNvdW5kIG9mIGEgbWFyaW1iYSBiZWluZyBzdHJ1Y2sifSksZGlyTmFtZToiMTktbWFyaW1iYSIsc2FtcGxlczpbNjBdfSx7bmFtZTpzKHtpZDoibXVzaWMuaW5zdHJ1bWVudFN5bnRoTGVhZCIsZGVmYXVsdDoiKDIwKSBTeW50aCBMZWFkIixkZXNjcmlwdGlvbjonU291bmQgb2YgYSAibGVhZCIgc3ludGhlc2l6ZXIgYmVpbmcgcGxheWVkJ30pLGRpck5hbWU6IjIwLXN5bnRoLWxlYWQiLHJlbGVhc2VUaW1lOi4xLHNhbXBsZXM6WzYwXX0se25hbWU6cyh7aWQ6Im11c2ljLmluc3RydW1lbnRTeW50aFBhZCIsZGVmYXVsdDoiKDIxKSBTeW50aCBQYWQiLGRlc2NyaXB0aW9uOidTb3VuZCBvZiBhICJwYWQiIHN5bnRoZXNpemVyIGJlaW5nIHBsYXllZCd9KSxkaXJOYW1lOiIyMS1zeW50aC1wYWQiLHJlbGVhc2VUaW1lOi4yNSxzYW1wbGVzOls2MF19XX1nZXQgTUlESV9JTlNUUlVNRU5UUygpe3JldHVyblsxLDEsMSwxLDIsMiw0LDQsMTcsMTcsMTcsMTYsMTksMTYsMTcsMTcsMywzLDMsMywzLDMsMywzLDQsNCw1LDUsNSw1LDUsNSw2LDYsNiw2LDYsNiw2LDYsOCw4LDgsOCw4LDcsOCwxOSw4LDgsOCw4LDE1LDE1LDE1LDE5LDksOSw5LDksOSw5LDksOSwxMSwxMSwxMSwxMSwxNCwxNCwxNCwxMCwxMiwxMiwxMywxMywxMywxMywxMiwxMiwyMCwyMCwyMCwyMCwyMCwyMCwyMCwyMCwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSw0LDQsNCw0LDE3LDE0LDgsMTAsMTcsMTcsMTgsMTksMSwxLDEsMSwyMSwyMSwyMSwyMSwyMSwyMSwyMSwyMV19Z2V0IE1JRElfRFJVTVMoKXtyZXR1cm5bWzEsLTRdLFsxLDBdLFsyLDBdLFswLDBdLFs3LDBdLFswLDJdLFsxLC02LDRdLFs1LDBdLFsxLC0zLDMuMl0sWzUsMF0sWzEsMCwzXSxbNCwtOF0sWzEsNCwzXSxbMSw3LDIuN10sWzMsLThdLFsxLDEwLDIuN10sWzQsLTJdLFszLC0xMV0sWzQsMl0sWzYsMF0sWzMsMCwzLjVdLFsxMCwwXSxbMywtOCwzLjVdLFsxNiwtNl0sWzQsMl0sWzEyLDJdLFsxMiwwXSxbMTMsMCwuMl0sWzEzLDAsMl0sWzEzLC01LDJdLFsxMiwxMl0sWzEyLDVdLFsxMCwxOV0sWzEwLDEyXSxbMTQsMF0sWzE0LDBdLFsxNywxMl0sWzE3LDVdLFsxNSwwXSxbMTUsMF0sWzgsMF0sWzksMF0sWzksLTRdLFsxNywtNV0sWzE3LDBdLFsxMSwtNiwxXSxbMTEsLTYsM11dfXN0YXRpYyBnZXQgU1RBVEVfS0VZKCl7cmV0dXJuIlNjcmF0Y2gubXVzaWMifXN0YXRpYyBnZXQgREVGQVVMVF9NVVNJQ19TVEFURSgpe3JldHVybntjdXJyZW50SW5zdHJ1bWVudDowfX1zdGF0aWMgZ2V0IE1JRElfTk9URV9SQU5HRSgpe3JldHVybnttaW46MCxtYXg6MTMwfX1zdGF0aWMgZ2V0IEJFQVRfUkFOR0UoKXtyZXR1cm57bWluOjAsbWF4OjEwMH19c3RhdGljIGdldCBURU1QT19SQU5HRSgpe3JldHVybnttaW46MjAsbWF4OjUwMH19c3RhdGljIGdldCBDT05DVVJSRU5DWV9MSU1JVCgpe3JldHVybiAzMH1fZ2V0TXVzaWNTdGF0ZShBKXtsZXQgZT1BLmdldEN1c3RvbVN0YXRlKGcuU1RBVEVfS0VZKTtyZXR1cm4gZXx8KGU9ci5zaW1wbGUoZy5ERUZBVUxUX01VU0lDX1NUQVRFKSxBLnNldEN1c3RvbVN0YXRlKGcuU1RBVEVfS0VZLGUpKSxlfV9vblRhcmdldENyZWF0ZWQoQSxlKXtpZihlKXtjb25zdCB0PWUuZ2V0Q3VzdG9tU3RhdGUoZy5TVEFURV9LRVkpO3QmJkEuc2V0Q3VzdG9tU3RhdGUoZy5TVEFURV9LRVksci5zaW1wbGUodCkpfX1nZXRJbmZvKCl7cmV0dXJue2lkOiJtdXNpYyIsbmFtZTpzKHtpZDoibXVzaWMuY2F0ZWdvcnlOYW1lIixkZWZhdWx0OiJNdXNpYyIsZGVzY3JpcHRpb246IkxhYmVsIGZvciB0aGUgTXVzaWMgZXh0ZW5zaW9uIGNhdGVnb3J5In0pLG1lbnVJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNakFpSUdobGFXZG9kRDBpTWpBaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BIQmhkR2dnWkQwaVRURTJMakE1SURFeUxqa3pOMk11TWpJNElERXVNVFF4TFM0NE16TWdNaTR3TmpNdE1pNHpOek1nTWk0d05qTXRNUzQxTXpVZ01DMHlMamsyTWkwdU9USXlMVE11TVRnMkxUSXVNRFl6TFM0eU15MHhMakUwTWk0NE16TXRNaTR3TmpnZ01pNHpOekl0TWk0d05qZ3VNekl6SURBZ0xqWTBNUzR3TkRJdU9UUTFMakV4TjJFekxqVWdNeTQxSURBZ01DQXhJQzQwTmpndU1UVXhZeTQwTXpVdExqQXhMUzR3TlRJdE1TNHhORGN0TGpreE55MDJMakV4TkMweExqQTJOeTAyTGpFMU1pQXhMalV6TFM0NU16VWdOQzR6T0RRdE1TNHpOemNnTWk0NE5UUXRMalEwTWk0d016Z2dNaTQwTVMweExqZ3lOU0F4TGpreU1pMHhMamcyTWkwdU5Ea3pMVEl1TXpJMUxUTXVOVGMzTGpFek1pQTNMak0zZWswM0xqUTJJRGd1TlRZell5MHhMamcyTWkwdU5Ea3pMVEl1TXpJMUxUTXVOVGMyTGpFeklEY3VNemRETnk0NE1UWWdNVGN1TURjeklEWXVOelUwSURFNElEVXVNaklnTVRoakxURXVOVE0xSURBdE1pNDVOakV0TGpreU5pMHpMakU1TFRJdU1EWTRMUzR5TWpRdE1TNHhOREl1T0RNM0xUSXVNRFkzSURJdU16YzFMVEl1TURZM0xqVXdNU0F3SUM0NU9EY3VNRGs0SURFdU5ESTNMakkzTWk0ME1USXRMakF5T0MwdU1EYzBMVEV1TVRnNUxTNDVNeTAyTGpFeE5FTXpMamd6TkNBeExqZzNJRFl1TkRNZ055NHdPRGNnT1M0eU9ESWdOaTQyTkRaak1pNDROVFF0TGpRME55NHdNemdnTWk0ME1TMHhMamd5TXlBeExqa3hOM29pSUdacGJHdzlJaU0xTnpWRk56VWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0l2UGp3dmMzWm5QZz09IixibG9ja0ljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU5EQWlJR2hsYVdkb2REMGlOREFpSUhacFpYZENiM2c5SWpBZ01DQTBNQ0EwTUNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWlCNGJXeHVjenA0YkdsdWF6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNVGs1T1M5NGJHbHVheUkrUEhScGRHeGxQbTExYzJsakxXSnNiMk5yTFdsamIyNDhMM1JwZEd4bFBqeGtaV1p6UGp4d1lYUm9JR1E5SWswek1pNHhPQ0F5TlM0NE56UkRNekl1TmpNMklESTRMakUxTnlBek1DNDFNVElnTXpBZ01qY3VORE16SURNd1l5MHpMakEzSURBdE5TNDVNak10TVM0NE5ETXROaTR6TnpJdE5DNHhNall0TGpRMU9DMHlMakk0TlNBeExqWTJOUzAwTGpFek5pQTBMamMwTXkwMExqRXpOaTQyTkRjZ01DQXhMakk0TXk0d09EUWdNUzQ0T1M0eU16UXVNek00TGpBNE5pNDJNemN1TVRndU9UTTRMak13TWk0NE55MHVNREl0TGpFd05DMHlMakk1TkMweExqZ3pOUzB4TWk0eU15MHlMakV6TkMweE1pNHpNRElnTXk0d05pMHhMamczSURndU56WTRMVEl1TnpVeUlEVXVOekE0TFM0NE9EVXVNRGMySURRdU9ESXRNeTQyTlNBekxqZzBOQzB6TGpjeU5DMHVPVGczTFRRdU5qVXROeTR4TlRNdU1qWXpJREUwTGpjek9IcHRMVEUyTGprNU9DQTFMams1UXpFMUxqWXpJRE0wTGpFME9DQXhNeTQxTURjZ016WWdNVEF1TkRRZ016WmpMVE11TURjZ01DMDFMamt5TWkweExqZzFNaTAyTGpNNExUUXVNVE0yTFM0ME5EZ3RNaTR5T0RRZ01TNDJOelF0TkM0eE16VWdOQzQzTlMwMExqRXpOU0F4TGpBd015QXdJREV1T1RjMUxqRTVOaUF5TGpnMU5TNDFORE11T0RJeUxTNHdOVFV0TGpFMUxUSXVNemMzTFRFdU9EWXlMVEV5TGpJeU9DMHlMakV6TXkweE1pNHpNRE1nTXk0d05pMHhMamczSURndU56WTBMVEl1TnpVeklEVXVOekEyTFM0NE9UUXVNRGMySURRdU9ESXRNeTQyTkRnZ015NDRNelF0TXk0M01qUXRMams0TnkwMExqWTFMVGN1TVRVeUxqSTJNaUF4TkM0M016aDZJaUJwWkQwaVlTSXZQand2WkdWbWN6NDhaeUJtYVd4c1BTSnViMjVsSWlCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaVBqeDFjMlVnWm1sc2JEMGlJMFpHUmlJZ2VHeHBibXM2YUhKbFpqMGlJMkVpTHo0OGNHRjBhQ0J6ZEhKdmEyVXRiM0JoWTJsMGVUMGlMakVpSUhOMGNtOXJaVDBpSXpBd01DSWdaRDBpVFRJNExqUTFOaUF5TVM0Mk56VmpMUzR3TVMwdU16RXlMUzR3T0RjdExqZ3lOUzB1TWpVMkxURXVOekF5TFM0d09UWXRMalE1TlMwdU5qRXlMVE11TURJeUxTNDNOVE10TXk0M015MHVNemsxTFRFdU9UZ3RMamMyTFRNdU9USXRNUzR4TkRJdE5pNHhNVE10TGpjek1pMDBMakl5TXkwdU5qa3pMVFl1TURVdU16UTBMVFl1TlRJM0xqVXRMakl6SURFdU1EWXRMakE0SURFdU9EUXVNelV1TkRFMExqSXlOeUF5TGpFNE1pQXhMak0yTlNBeUxqQTNJREV1TWprMklERXVPVGswSURFdU1qUXlJRE11TkRZMElERXVOemMwSURRdU9UTWdNUzQxTkRnZ01TNDFNall0TGpJek55QXlMalV3TkMwdU1EWWdNaTQ0TnpZdU5qRTRMak0wT0M0Mk16VXVNREUxSURFdU5ERTJMUzQzTXlBeUxqRTRMVEV1TkRjeUlERXVOVEUyTFRNdU9UYzFJREl1TlRFMExUVXVPRFE0SURJdU1ESXpMUzQ0TWpJdExqSXlMVEV1TWpNNExTNDBOalV0TWk0ek9DMHhMakkyTjJ3dExqQTVOUzB1TURZMll5NHdORGN1TlRrekxqSTJOQ0F4TGpjMExqY3hOeUF6TGpnd015NHlPVFFnTVM0ek16WWdNaTR3T0NBNUxqRTROeUF5TGpZek55QXhNUzQyTnpSc0xqQXdNaTR3TVRKakxqVXlPQ0F5TGpZek55MHhMamczTXlBMExqY3lOQzAxTGpJek5pQTBMamN5TkMwekxqSTVJREF0Tmk0ek5qTXRNUzQ1T0RndE5pNDROakl0TkM0MU1qZ3RMalV6TFRJdU5qUWdNUzQ0TnpNdE5DNDNNelFnTlM0eU16TXROQzQzTXpRdU5qY3lJREFnTVM0ek5EY3VNRGcxSURJdU1ERTBMakkxTGpJeU55NHdOVGN1TkRNMkxqRXhPQzQyTXpZdU1UZzNlbTB0TVRZdU9UazJJRFV1T1RsakxTNHdNUzB1TXpFNExTNHdPUzB1T0RNNExTNHlOall0TVM0M016Y3RMakE1TFM0ME5pMHVOVGsxTFRJdU9UTTNMUzQzTlRNdE15NDNNamN0TGpNNUxURXVPVFl0TGpjMUxUTXVPRGt0TVM0eE15MDJMakEzTFM0M016SXROQzR5TWpNdExqWTVNaTAyTGpBMUxqTTBOQzAyTGpVeU5pNDFNREl0TGpJeklERXVNRFl0TGpBNE1pQXhMamcwTGpNMUxqUXhOUzR5TWpjZ01pNHhPRElnTVM0ek5qUWdNaTR3TnlBeExqSTVOU0F4TGprNU15QXhMakkwTWlBekxqUTJNaUF4TGpjM05DQTBMamt5TmlBeExqVTBPQ0F4TGpVeU5TMHVNalFnTWk0MU1EUXRMakEyTkNBeUxqZzNOaTQyTVRRdU16UTRMall6TlM0d01UVWdNUzQwTVRVdExqY3lPQ0F5TGpFNExURXVORGMwSURFdU5URTNMVE11T1RjM0lESXVOVEV6TFRVdU9EUTNJREl1TURFM0xTNDRNaTB1TWpJdE1TNHlNell0TGpRMk5DMHlMak0zT0MweExqSTJOMnd0TGpBNU5TMHVNRFkxWXk0d05EY3VOVGt6TGpJMk5DQXhMamMwTGpjeE55QXpMamd3TWk0eU9UUWdNUzR6TXpjZ01pNHdOemdnT1M0eE9TQXlMall6TmlBeE1TNDJOelZzTGpBd015NHdNVE5qTGpVeE55QXlMall6T0MweExqZzROQ0EwTGpjek1pMDFMakl6TkNBMExqY3pNaTB6TGpJNE55QXdMVFl1TXpZdE1TNDVPVE10Tmk0NE55MDBMalUwTFM0MU1pMHlMalkwSURFdU9EZzBMVFF1TnpNZ05TNHlOQzAwTGpjekxqa3dOU0F3SURFdU9EQXpMakUxSURJdU5qVXVORE0yZWlJdlBqd3ZaejQ4TDNOMlp6ND0iLGJsb2Nrczpbe29wY29kZToicGxheURydW1Gb3JCZWF0cyIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OnMoe2lkOiJtdXNpYy5wbGF5RHJ1bUZvckJlYXRzIixkZWZhdWx0OiJwbGF5IGRydW0gW0RSVU1dIGZvciBbQkVBVFNdIGJlYXRzIixkZXNjcmlwdGlvbjoicGxheSBkcnVtIHNhbXBsZSBmb3IgYSBudW1iZXIgb2YgYmVhdHMifSksYXJndW1lbnRzOntEUlVNOnt0eXBlOm4uTlVNQkVSLG1lbnU6IkRSVU0iLGRlZmF1bHRWYWx1ZToxfSxCRUFUUzp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6LjI1fX19LHtvcGNvZGU6Im1pZGlQbGF5RHJ1bUZvckJlYXRzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6cyh7aWQ6Im11c2ljLm1pZGlQbGF5RHJ1bUZvckJlYXRzIixkZWZhdWx0OiJwbGF5IGRydW0gW0RSVU1dIGZvciBbQkVBVFNdIGJlYXRzIixkZXNjcmlwdGlvbjoicGxheSBkcnVtIHNhbXBsZSBmb3IgYSBudW1iZXIgb2YgYmVhdHMgYWNjb3JkaW5nIHRvIGEgbWFwcGluZyBvZiBNSURJIGNvZGVzIn0pLGFyZ3VtZW50czp7RFJVTTp7dHlwZTpuLk5VTUJFUixtZW51OiJEUlVNIixkZWZhdWx0VmFsdWU6MX0sQkVBVFM6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOi4yNX19LGhpZGVGcm9tUGFsZXR0ZTohMH0se29wY29kZToicmVzdEZvckJlYXRzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6cyh7aWQ6Im11c2ljLnJlc3RGb3JCZWF0cyIsZGVmYXVsdDoicmVzdCBmb3IgW0JFQVRTXSBiZWF0cyIsZGVzY3JpcHRpb246InJlc3QgKHBsYXkgbm8gc291bmQpIGZvciBhIG51bWJlciBvZiBiZWF0cyJ9KSxhcmd1bWVudHM6e0JFQVRTOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZTouMjV9fX0se29wY29kZToicGxheU5vdGVGb3JCZWF0cyIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OnMoe2lkOiJtdXNpYy5wbGF5Tm90ZUZvckJlYXRzIixkZWZhdWx0OiJwbGF5IG5vdGUgW05PVEVdIGZvciBbQkVBVFNdIGJlYXRzIixkZXNjcmlwdGlvbjoicGxheSBhIG5vdGUgZm9yIGEgbnVtYmVyIG9mIGJlYXRzIn0pLGFyZ3VtZW50czp7Tk9URTp7dHlwZTpuLk5PVEUsZGVmYXVsdFZhbHVlOjYwfSxCRUFUUzp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6LjI1fX19LHtvcGNvZGU6InNldEluc3RydW1lbnQiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDpzKHtpZDoibXVzaWMuc2V0SW5zdHJ1bWVudCIsZGVmYXVsdDoic2V0IGluc3RydW1lbnQgdG8gW0lOU1RSVU1FTlRdIixkZXNjcmlwdGlvbjoic2V0IHRoZSBpbnN0cnVtZW50IChlLmcuIHBpYW5vLCBndWl0YXIsIHRyb21ib25lKSBmb3Igbm90ZXMgcGxheWVkIn0pLGFyZ3VtZW50czp7SU5TVFJVTUVOVDp7dHlwZTpuLk5VTUJFUixtZW51OiJJTlNUUlVNRU5UIixkZWZhdWx0VmFsdWU6MX19fSx7b3Bjb2RlOiJtaWRpU2V0SW5zdHJ1bWVudCIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OnMoe2lkOiJtdXNpYy5taWRpU2V0SW5zdHJ1bWVudCIsZGVmYXVsdDoic2V0IGluc3RydW1lbnQgdG8gW0lOU1RSVU1FTlRdIixkZXNjcmlwdGlvbjoic2V0IHRoZSBpbnN0cnVtZW50IGZvciBub3RlcyBwbGF5ZWQgYWNjb3JkaW5nIHRvIGEgbWFwcGluZyBvZiBNSURJIGNvZGVzIn0pLGFyZ3VtZW50czp7SU5TVFJVTUVOVDp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19LGhpZGVGcm9tUGFsZXR0ZTohMH0se29wY29kZToic2V0VGVtcG8iLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDpzKHtpZDoibXVzaWMuc2V0VGVtcG8iLGRlZmF1bHQ6InNldCB0ZW1wbyB0byBbVEVNUE9dIixkZXNjcmlwdGlvbjoic2V0IHRlbXBvIChzcGVlZCkgZm9yIG5vdGVzLCBkcnVtcywgYW5kIHJlc3RzIHBsYXllZCJ9KSxhcmd1bWVudHM6e1RFTVBPOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZTo2MH19fSx7b3Bjb2RlOiJjaGFuZ2VUZW1wbyIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OnMoe2lkOiJtdXNpYy5jaGFuZ2VUZW1wbyIsZGVmYXVsdDoiY2hhbmdlIHRlbXBvIGJ5IFtURU1QT10iLGRlc2NyaXB0aW9uOiJjaGFuZ2UgdGVtcG8gKHNwZWVkKSBmb3Igbm90ZXMsIGRydW1zLCBhbmQgcmVzdHMgcGxheWVkIn0pLGFyZ3VtZW50czp7VEVNUE86e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjIwfX19LHtvcGNvZGU6ImdldFRlbXBvIix0ZXh0OnMoe2lkOiJtdXNpYy5nZXRUZW1wbyIsZGVmYXVsdDoidGVtcG8iLGRlc2NyaXB0aW9uOiJnZXQgdGhlIGN1cnJlbnQgdGVtcG8gKHNwZWVkKSBmb3Igbm90ZXMsIGRydW1zLCBhbmQgcmVzdHMgcGxheWVkIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSfV0sbWVudXM6e0RSVU06e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczp0aGlzLl9idWlsZE1lbnUodGhpcy5EUlVNX0lORk8pfSxJTlNUUlVNRU5UOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6dGhpcy5fYnVpbGRNZW51KHRoaXMuSU5TVFJVTUVOVF9JTkZPKX19fX1wbGF5RHJ1bUZvckJlYXRzKEEsZSl7dGhpcy5fcGxheURydW1Gb3JCZWF0cyhBLkRSVU0sQS5CRUFUUyxlKX1taWRpUGxheURydW1Gb3JCZWF0cyhBLGUpe2xldCB0PW8udG9OdW1iZXIoQS5EUlVNKTt0PU1hdGgucm91bmQodCk7Y29uc3Qgbj10aGlzLk1JRElfRFJVTVNbdC0zNV07dD1uP25bMF06Mix0Kz0xLHRoaXMuX3BsYXlEcnVtRm9yQmVhdHModCxBLkJFQVRTLGUpfV9wbGF5RHJ1bUZvckJlYXRzKEEsZSx0KXt0aGlzLl9zdGFja1RpbWVyTmVlZHNJbml0KHQpPyhBPW8udG9OdW1iZXIoQSksQT1NYXRoLnJvdW5kKEEpLEEtPTEsQT1hLndyYXBDbGFtcChBLDAsdGhpcy5EUlVNX0lORk8ubGVuZ3RoLTEpLGU9by50b051bWJlcihlKSxlPXRoaXMuX2NsYW1wQmVhdHMoZSksdGhpcy5fcGxheURydW1OdW0odCxBKSx0aGlzLl9zdGFydFN0YWNrVGltZXIodCx0aGlzLl9iZWF0c1RvU2VjKGUpKSk6dGhpcy5fY2hlY2tTdGFja1RpbWVyKHQpfV9wbGF5RHJ1bU51bShBLGUpe2lmKG51bGw9PT1BLnJ1bnRpbWUuYXVkaW9FbmdpbmUpcmV0dXJuO2lmKG51bGw9PT1BLnRhcmdldC5zcHJpdGUuc291bmRCYW5rKXJldHVybjtpZih0aGlzLl9jb25jdXJyZW5jeUNvdW50ZXI+Zy5DT05DVVJSRU5DWV9MSU1JVClyZXR1cm47Y29uc3QgdD10aGlzLl9kcnVtUGxheWVyc1tlXTtpZih2b2lkIDA9PT10KXJldHVybjt0LmlzUGxheWluZyYmIXQuaXNTdGFydGluZyYmdC50YWtlKCk7Y29uc3Qgbj1BLnJ1bnRpbWUuYXVkaW9FbmdpbmUsaT1uLmF1ZGlvQ29udGV4dC5jcmVhdGVHYWluKCk7aS5nYWluLnNldFZhbHVlQXRUaW1lKEEudGFyZ2V0LnZvbHVtZS8xMDAsbi5jdXJyZW50VGltZSksaS5jb25uZWN0KG4uZ2V0SW5wdXROb2RlKCkpLHRoaXMuX2NvbmN1cnJlbmN5Q291bnRlcisrLHQub25jZSgic3RvcCIsKCk9Pnt0aGlzLl9jb25jdXJyZW5jeUNvdW50ZXItLX0pLHQucGxheSgpLHQuY29ubmVjdCh7Z2V0SW5wdXROb2RlOigpPT5pfSl9cmVzdEZvckJlYXRzKEEsZSl7aWYodGhpcy5fc3RhY2tUaW1lck5lZWRzSW5pdChlKSl7bGV0IHQ9by50b051bWJlcihBLkJFQVRTKTt0PXRoaXMuX2NsYW1wQmVhdHModCksdGhpcy5fc3RhcnRTdGFja1RpbWVyKGUsdGhpcy5fYmVhdHNUb1NlYyh0KSl9ZWxzZSB0aGlzLl9jaGVja1N0YWNrVGltZXIoZSl9cGxheU5vdGVGb3JCZWF0cyhBLGUpe2lmKHRoaXMuX3N0YWNrVGltZXJOZWVkc0luaXQoZSkpe2xldCB0PW8udG9OdW1iZXIoQS5OT1RFKTt0PWEuY2xhbXAodCxnLk1JRElfTk9URV9SQU5HRS5taW4sZy5NSURJX05PVEVfUkFOR0UubWF4KTtsZXQgbj1vLnRvTnVtYmVyKEEuQkVBVFMpO2lmKG49dGhpcy5fY2xhbXBCZWF0cyhuKSwwPT09bilyZXR1cm47Y29uc3QgaT10aGlzLl9iZWF0c1RvU2VjKG4pO3RoaXMuX3BsYXlOb3RlKGUsdCxpKSx0aGlzLl9zdGFydFN0YWNrVGltZXIoZSxpKX1lbHNlIHRoaXMuX2NoZWNrU3RhY2tUaW1lcihlKX1fcGxheU5vdGVGb3JQaWNrZXIoQSxlKXtpZihlIT09dGhpcy5nZXRJbmZvKCkubmFtZSlyZXR1cm47Y29uc3QgdD17cnVudGltZTp0aGlzLnJ1bnRpbWUsdGFyZ2V0OnRoaXMucnVudGltZS5nZXRFZGl0aW5nVGFyZ2V0KCl9O3RoaXMuX3BsYXlOb3RlKHQsQSwuMjUpfV9wbGF5Tm90ZShBLGUsdCl7aWYobnVsbD09PUEucnVudGltZS5hdWRpb0VuZ2luZSlyZXR1cm47aWYobnVsbD09PUEudGFyZ2V0LnNwcml0ZS5zb3VuZEJhbmspcmV0dXJuO2lmKHRoaXMuX2NvbmN1cnJlbmN5Q291bnRlcj5nLkNPTkNVUlJFTkNZX0xJTUlUKXJldHVybjtjb25zdCBuPXRoaXMuX2dldE11c2ljU3RhdGUoQS50YXJnZXQpLmN1cnJlbnRJbnN0cnVtZW50LGk9dGhpcy5JTlNUUlVNRU5UX0lORk9bbl0uc2FtcGxlcyxyPXRoaXMuX3NlbGVjdFNhbXBsZUluZGV4Rm9yTm90ZShlLGkpO2lmKHZvaWQgMD09PXRoaXMuX2luc3RydW1lbnRQbGF5ZXJBcnJheXNbbl0pcmV0dXJuO2lmKHZvaWQgMD09PXRoaXMuX2luc3RydW1lbnRQbGF5ZXJBcnJheXNbbl1bcl0pcmV0dXJuO2NvbnN0IG89QS5ydW50aW1lLmF1ZGlvRW5naW5lO3RoaXMuX2luc3RydW1lbnRQbGF5ZXJOb3RlQXJyYXlzW25dW2VdfHwodGhpcy5faW5zdHJ1bWVudFBsYXllck5vdGVBcnJheXNbbl1bZV09dGhpcy5faW5zdHJ1bWVudFBsYXllckFycmF5c1tuXVtyXS50YWtlKCkpO2NvbnN0IHM9dGhpcy5faW5zdHJ1bWVudFBsYXllck5vdGVBcnJheXNbbl1bZV07cy5pc1BsYXlpbmcmJiFzLmlzU3RhcnRpbmcmJnMudGFrZSgpO2NvbnN0IGE9aVtyXSxCPXRoaXMuX3JhdGlvRm9yUGl0Y2hJbnRlcnZhbChlLWEpLGM9by5hdWRpb0NvbnRleHQsRT1jLmNyZWF0ZUdhaW4oKTtFLmdhaW4uc2V0VmFsdWVBdFRpbWUoQS50YXJnZXQudm9sdW1lLzEwMCxvLmN1cnJlbnRUaW1lKTtjb25zdCBRPWMuY3JlYXRlR2FpbigpO0UuY29ubmVjdChRKSxRLmNvbm5lY3Qoby5nZXRJbnB1dE5vZGUoKSk7bGV0IHU9dGhpcy5JTlNUUlVNRU5UX0lORk9bbl0ucmVsZWFzZVRpbWU7dm9pZCAwPT09dSYmKHU9LjAxKTtjb25zdCBsPWMuY3VycmVudFRpbWUrdCxoPWwrdTtRLmdhaW4uc2V0VmFsdWVBdFRpbWUoMSxsKSxRLmdhaW4ubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoMWUtNCxoKSx0aGlzLl9jb25jdXJyZW5jeUNvdW50ZXIrKyxzLm9uY2UoInN0b3AiLCgpPT57dGhpcy5fY29uY3VycmVuY3lDb3VudGVyLS19KSxzLnBsYXkoKSxzLmNvbm5lY3Qoe2dldElucHV0Tm9kZTooKT0+RX0pLHMub3V0cHV0Tm9kZS5wbGF5YmFja1JhdGUudmFsdWU9QixzLm91dHB1dE5vZGUuc3RvcChoKX1fc2VsZWN0U2FtcGxlSW5kZXhGb3JOb3RlKEEsZSl7Zm9yKGxldCB0PWUubGVuZ3RoLTE7dD49MDt0LS0paWYoQT49ZVt0XSlyZXR1cm4gdDtyZXR1cm4gMH1fcmF0aW9Gb3JQaXRjaEludGVydmFsKEEpe3JldHVybiBNYXRoLnBvdygyLEEvMTIpfV9jbGFtcEJlYXRzKEEpe3JldHVybiBhLmNsYW1wKEEsZy5CRUFUX1JBTkdFLm1pbixnLkJFQVRfUkFOR0UubWF4KX1fYmVhdHNUb1NlYyhBKXtyZXR1cm4gNjAvdGhpcy5nZXRUZW1wbygpKkF9X3N0YWNrVGltZXJOZWVkc0luaXQoQSl7cmV0dXJuIUEuc3RhY2tGcmFtZS50aW1lcn1fc3RhcnRTdGFja1RpbWVyKEEsZSl7QS5zdGFja0ZyYW1lLnRpbWVyPW5ldyBCLEEuc3RhY2tGcmFtZS50aW1lci5zdGFydCgpLEEuc3RhY2tGcmFtZS5kdXJhdGlvbj1lLEEueWllbGQoKX1fY2hlY2tTdGFja1RpbWVyKEEpe0Euc3RhY2tGcmFtZS50aW1lci50aW1lRWxhcHNlZCgpPDFlMypBLnN0YWNrRnJhbWUuZHVyYXRpb24mJkEueWllbGQoKX1zZXRJbnN0cnVtZW50KEEsZSl7dGhpcy5fc2V0SW5zdHJ1bWVudChBLklOU1RSVU1FTlQsZSwhMSl9bWlkaVNldEluc3RydW1lbnQoQSxlKXt0aGlzLl9zZXRJbnN0cnVtZW50KEEuSU5TVFJVTUVOVCxlLCEwKX1fc2V0SW5zdHJ1bWVudChBLGUsdCl7Y29uc3Qgbj10aGlzLl9nZXRNdXNpY1N0YXRlKGUudGFyZ2V0KTtBPW8udG9OdW1iZXIoQSksQT1NYXRoLnJvdW5kKEEpLEEtPTEsdCYmKEE9KHRoaXMuTUlESV9JTlNUUlVNRU5UU1tBXXx8MCktMSksQT1hLndyYXBDbGFtcChBLDAsdGhpcy5JTlNUUlVNRU5UX0lORk8ubGVuZ3RoLTEpLG4uY3VycmVudEluc3RydW1lbnQ9QX1zZXRUZW1wbyhBKXtjb25zdCBlPW8udG9OdW1iZXIoQS5URU1QTyk7dGhpcy5fdXBkYXRlVGVtcG8oZSl9Y2hhbmdlVGVtcG8oQSl7Y29uc3QgZT1vLnRvTnVtYmVyKEEuVEVNUE8pK3RoaXMuZ2V0VGVtcG8oKTt0aGlzLl91cGRhdGVUZW1wbyhlKX1fdXBkYXRlVGVtcG8oQSl7QT1hLmNsYW1wKEEsZy5URU1QT19SQU5HRS5taW4sZy5URU1QT19SQU5HRS5tYXgpO2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7ZSYmKGUudGVtcG89QSl9Z2V0VGVtcG8oKXtjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO3JldHVybiBBP0EudGVtcG86NjB9fUEuZXhwb3J0cz1nfSxmdW5jdGlvbihBLGUsdCl7QS5leHBvcnRzPXsiZHJ1bXMvMS1zbmFyZS5tcDMiOnQoMTUzKSwiZHJ1bXMvMi1iYXNzLWRydW0ubXAzIjp0KDE1NCksImRydW1zLzMtc2lkZS1zdGljay5tcDMiOnQoMTU1KSwiZHJ1bXMvNC1jcmFzaC1jeW1iYWwubXAzIjp0KDE1NiksImRydW1zLzUtb3Blbi1oaS1oYXQubXAzIjp0KDE1NyksImRydW1zLzYtY2xvc2VkLWhpLWhhdC5tcDMiOnQoMTU4KSwiZHJ1bXMvNy10YW1ib3VyaW5lLm1wMyI6dCgxNTkpLCJkcnVtcy84LWhhbmQtY2xhcC5tcDMiOnQoMTYwKSwiZHJ1bXMvOS1jbGF2ZXMubXAzIjp0KDE2MSksImRydW1zLzEwLXdvb2QtYmxvY2subXAzIjp0KDE2MiksImRydW1zLzExLWNvd2JlbGwubXAzIjp0KDE2MyksImRydW1zLzEyLXRyaWFuZ2xlLm1wMyI6dCgxNjQpLCJkcnVtcy8xMy1ib25nby5tcDMiOnQoMTY1KSwiZHJ1bXMvMTQtY29uZ2EubXAzIjp0KDE2NiksImRydW1zLzE1LWNhYmFzYS5tcDMiOnQoMTY3KSwiZHJ1bXMvMTYtZ3Vpcm8ubXAzIjp0KDE2OCksImRydW1zLzE3LXZpYnJhc2xhcC5tcDMiOnQoMTY5KSwiZHJ1bXMvMTgtY3VpY2EubXAzIjp0KDE3MCksImluc3RydW1lbnRzLzEtcGlhbm8vMjQubXAzIjp0KDE3MSksImluc3RydW1lbnRzLzEtcGlhbm8vMzYubXAzIjp0KDE3MiksImluc3RydW1lbnRzLzEtcGlhbm8vNDgubXAzIjp0KDE3MyksImluc3RydW1lbnRzLzEtcGlhbm8vNjAubXAzIjp0KDE3NCksImluc3RydW1lbnRzLzEtcGlhbm8vNzIubXAzIjp0KDE3NSksImluc3RydW1lbnRzLzEtcGlhbm8vODQubXAzIjp0KDE3NiksImluc3RydW1lbnRzLzEtcGlhbm8vOTYubXAzIjp0KDE3NyksImluc3RydW1lbnRzLzEtcGlhbm8vMTA4Lm1wMyI6dCgxNzgpLCJpbnN0cnVtZW50cy8yLWVsZWN0cmljLXBpYW5vLzYwLm1wMyI6dCgxNzkpLCJpbnN0cnVtZW50cy8zLW9yZ2FuLzYwLm1wMyI6dCgxODApLCJpbnN0cnVtZW50cy80LWd1aXRhci82MC5tcDMiOnQoMTgxKSwiaW5zdHJ1bWVudHMvNS1lbGVjdHJpYy1ndWl0YXIvNjAubXAzIjp0KDE4MiksImluc3RydW1lbnRzLzYtYmFzcy8zNi5tcDMiOnQoMTgzKSwiaW5zdHJ1bWVudHMvNi1iYXNzLzQ4Lm1wMyI6dCgxODQpLCJpbnN0cnVtZW50cy83LXBpenppY2F0by82MC5tcDMiOnQoMTg1KSwiaW5zdHJ1bWVudHMvOC1jZWxsby8zNi5tcDMiOnQoMTg2KSwiaW5zdHJ1bWVudHMvOC1jZWxsby80OC5tcDMiOnQoMTg3KSwiaW5zdHJ1bWVudHMvOC1jZWxsby82MC5tcDMiOnQoMTg4KSwiaW5zdHJ1bWVudHMvOS10cm9tYm9uZS8zNi5tcDMiOnQoMTg5KSwiaW5zdHJ1bWVudHMvOS10cm9tYm9uZS80OC5tcDMiOnQoMTkwKSwiaW5zdHJ1bWVudHMvOS10cm9tYm9uZS82MC5tcDMiOnQoMTkxKSwiaW5zdHJ1bWVudHMvMTAtY2xhcmluZXQvNDgubXAzIjp0KDE5MiksImluc3RydW1lbnRzLzEwLWNsYXJpbmV0LzYwLm1wMyI6dCgxOTMpLCJpbnN0cnVtZW50cy8xMS1zYXhvcGhvbmUvMzYubXAzIjp0KDE5NCksImluc3RydW1lbnRzLzExLXNheG9waG9uZS82MC5tcDMiOnQoMTk1KSwiaW5zdHJ1bWVudHMvMTEtc2F4b3Bob25lLzg0Lm1wMyI6dCgxOTYpLCJpbnN0cnVtZW50cy8xMi1mbHV0ZS82MC5tcDMiOnQoMTk3KSwiaW5zdHJ1bWVudHMvMTItZmx1dGUvNzIubXAzIjp0KDE5OCksImluc3RydW1lbnRzLzEzLXdvb2Rlbi1mbHV0ZS82MC5tcDMiOnQoMTk5KSwiaW5zdHJ1bWVudHMvMTMtd29vZGVuLWZsdXRlLzcyLm1wMyI6dCgyMDApLCJpbnN0cnVtZW50cy8xNC1iYXNzb29uLzM2Lm1wMyI6dCgyMDEpLCJpbnN0cnVtZW50cy8xNC1iYXNzb29uLzQ4Lm1wMyI6dCgyMDIpLCJpbnN0cnVtZW50cy8xNC1iYXNzb29uLzYwLm1wMyI6dCgyMDMpLCJpbnN0cnVtZW50cy8xNS1jaG9pci80OC5tcDMiOnQoMjA0KSwiaW5zdHJ1bWVudHMvMTUtY2hvaXIvNjAubXAzIjp0KDIwNSksImluc3RydW1lbnRzLzE1LWNob2lyLzcyLm1wMyI6dCgyMDYpLCJpbnN0cnVtZW50cy8xNi12aWJyYXBob25lLzYwLm1wMyI6dCgyMDcpLCJpbnN0cnVtZW50cy8xNi12aWJyYXBob25lLzcyLm1wMyI6dCgyMDgpLCJpbnN0cnVtZW50cy8xNy1tdXNpYy1ib3gvNjAubXAzIjp0KDIwOSksImluc3RydW1lbnRzLzE4LXN0ZWVsLWRydW0vNjAubXAzIjp0KDIxMCksImluc3RydW1lbnRzLzE5LW1hcmltYmEvNjAubXAzIjp0KDIxMSksImluc3RydW1lbnRzLzIwLXN5bnRoLWxlYWQvNjAubXAzIjp0KDIxMiksImluc3RydW1lbnRzLzIxLXN5bnRoLXBhZC82MC5tcDMiOnQoMjEzKX19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPW51bGx9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCg1KSxvPXQoMikscz10KDQpLGE9dCg0MiksQj10KDIzKSxjPTEyOSxnPTEzMCxFPTYxNDQ1LFE9IjUyNjFkYTAxLWZhN2UtNDJhYi04NTBiLTdjODAyMjAwOTdjYyIsdT0iNTI2MWRhMDItZmE3ZS00MmFiLTg1MGItN2M4MDIyMDA5N2NjIjtjbGFzcyBse2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5fcnVudGltZT1BLHRoaXMuX2JsZT1udWxsLHRoaXMuX3J1bnRpbWUucmVnaXN0ZXJQZXJpcGhlcmFsRXh0ZW5zaW9uKGUsdGhpcyksdGhpcy5fZXh0ZW5zaW9uSWQ9ZSx0aGlzLl9zZW5zb3JzPXt0aWx0WDowLHRpbHRZOjAsYnV0dG9uQTowLGJ1dHRvbkI6MCx0b3VjaFBpbnM6WzAsMCwwXSxnZXN0dXJlU3RhdGU6MCxsZWRNYXRyaXhTdGF0ZTpuZXcgVWludDhBcnJheSg1KX0sdGhpcy5fZ2VzdHVyZXM9e21vdmluZzohMSxtb3ZlOnthY3RpdmU6ITEsdGltZW91dDohMX0sc2hha2U6e2FjdGl2ZTohMSx0aW1lb3V0OiExfSxqdW1wOnthY3RpdmU6ITEsdGltZW91dDohMX19LHRoaXMuX3RpbWVvdXRJRD1udWxsLHRoaXMuX2J1c3k9ITEsdGhpcy5fYnVzeVRpbWVvdXRJRD1udWxsLHRoaXMucmVzZXQ9dGhpcy5yZXNldC5iaW5kKHRoaXMpLHRoaXMuX29uQ29ubmVjdD10aGlzLl9vbkNvbm5lY3QuYmluZCh0aGlzKSx0aGlzLl9vbk1lc3NhZ2U9dGhpcy5fb25NZXNzYWdlLmJpbmQodGhpcyl9ZGlzcGxheVRleHQoQSl7Y29uc3QgZT1uZXcgVWludDhBcnJheShBLmxlbmd0aCk7Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0KyspZVt0XT1BLmNoYXJDb2RlQXQodCk7cmV0dXJuIHRoaXMuc2VuZChjLGUpfWRpc3BsYXlNYXRyaXgoQSl7cmV0dXJuIHRoaXMuc2VuZChnLEEpfWdldCB0aWx0WCgpe3JldHVybiB0aGlzLl9zZW5zb3JzLnRpbHRYfWdldCB0aWx0WSgpe3JldHVybiB0aGlzLl9zZW5zb3JzLnRpbHRZfWdldCBidXR0b25BKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuYnV0dG9uQX1nZXQgYnV0dG9uQigpe3JldHVybiB0aGlzLl9zZW5zb3JzLmJ1dHRvbkJ9Z2V0IGdlc3R1cmVTdGF0ZSgpe3JldHVybiB0aGlzLl9zZW5zb3JzLmdlc3R1cmVTdGF0ZX1nZXQgbGVkTWF0cml4U3RhdGUoKXtyZXR1cm4gdGhpcy5fc2Vuc29ycy5sZWRNYXRyaXhTdGF0ZX1zY2FuKCl7dGhpcy5fYmxlJiZ0aGlzLl9ibGUuZGlzY29ubmVjdCgpLHRoaXMuX2JsZT1uZXcgYSh0aGlzLl9ydW50aW1lLHRoaXMuX2V4dGVuc2lvbklkLHtmaWx0ZXJzOlt7c2VydmljZXM6W0VdfV19LHRoaXMuX29uQ29ubmVjdCx0aGlzLnJlc2V0KX1jb25uZWN0KEEpe3RoaXMuX2JsZSYmdGhpcy5fYmxlLmNvbm5lY3RQZXJpcGhlcmFsKEEpfWRpc2Nvbm5lY3QoKXt0aGlzLl9ibGUmJnRoaXMuX2JsZS5kaXNjb25uZWN0KCksdGhpcy5yZXNldCgpfXJlc2V0KCl7dGhpcy5fdGltZW91dElEJiYod2luZG93LmNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0SUQpLHRoaXMuX3RpbWVvdXRJRD1udWxsKX1pc0Nvbm5lY3RlZCgpe2xldCBBPSExO3JldHVybiB0aGlzLl9ibGUmJihBPXRoaXMuX2JsZS5pc0Nvbm5lY3RlZCgpKSxBfXNlbmQoQSxlKXtpZighdGhpcy5pc0Nvbm5lY3RlZCgpKXJldHVybjtpZih0aGlzLl9idXN5KXJldHVybjt0aGlzLl9idXN5PSEwLHRoaXMuX2J1c3lUaW1lb3V0SUQ9d2luZG93LnNldFRpbWVvdXQoKCk9Pnt0aGlzLl9idXN5PSExfSw1ZTMpO2NvbnN0IHQ9bmV3IFVpbnQ4QXJyYXkoZS5sZW5ndGgrMSk7dFswXT1BO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7QSsrKXRbQSsxXT1lW0FdO2NvbnN0IG49Qi51aW50OEFycmF5VG9CYXNlNjQodCk7dGhpcy5fYmxlLndyaXRlKEUsdSxuLCJiYXNlNjQiLCEwKS50aGVuKCgpPT57dGhpcy5fYnVzeT0hMSx3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX2J1c3lUaW1lb3V0SUQpfSl9X29uQ29ubmVjdCgpe3RoaXMuX2JsZS5yZWFkKEUsUSwhMCx0aGlzLl9vbk1lc3NhZ2UpLHRoaXMuX3RpbWVvdXRJRD13aW5kb3cuc2V0VGltZW91dCgoKT0+dGhpcy5fYmxlLmhhbmRsZURpc2Nvbm5lY3RFcnJvcigibWljcm86Yml0IGV4dGVuc2lvbiBzdG9wcGVkIHJlY2VpdmluZyBkYXRhIiksNDUwMCl9X29uTWVzc2FnZShBKXtjb25zdCBlPUIuYmFzZTY0VG9VaW50OEFycmF5KEEpO3RoaXMuX3NlbnNvcnMudGlsdFg9ZVsxXXxlWzBdPDw4LHRoaXMuX3NlbnNvcnMudGlsdFg+MzI3NjgmJih0aGlzLl9zZW5zb3JzLnRpbHRYLT02NTUzNiksdGhpcy5fc2Vuc29ycy50aWx0WT1lWzNdfGVbMl08PDgsdGhpcy5fc2Vuc29ycy50aWx0WT4zMjc2OCYmKHRoaXMuX3NlbnNvcnMudGlsdFktPTY1NTM2KSx0aGlzLl9zZW5zb3JzLmJ1dHRvbkE9ZVs0XSx0aGlzLl9zZW5zb3JzLmJ1dHRvbkI9ZVs1XSx0aGlzLl9zZW5zb3JzLnRvdWNoUGluc1swXT1lWzZdLHRoaXMuX3NlbnNvcnMudG91Y2hQaW5zWzFdPWVbN10sdGhpcy5fc2Vuc29ycy50b3VjaFBpbnNbMl09ZVs4XSx0aGlzLl9zZW5zb3JzLmdlc3R1cmVTdGF0ZT1lWzldLHdpbmRvdy5jbGVhclRpbWVvdXQodGhpcy5fdGltZW91dElEKSx0aGlzLl90aW1lb3V0SUQ9d2luZG93LnNldFRpbWVvdXQoKCk9PnRoaXMuX2JsZS5oYW5kbGVEaXNjb25uZWN0RXJyb3IoIm1pY3JvOmJpdCBleHRlbnNpb24gc3RvcHBlZCByZWNlaXZpbmcgZGF0YSIpLDQ1MDApfV9jaGVja1BpblN0YXRlKEEpe3JldHVybiB0aGlzLl9zZW5zb3JzLnRvdWNoUGluc1tBXX19Y29uc3QgaD0iZnJvbnQiLHc9ImJhY2siLEM9ImxlZnQiLEk9InJpZ2h0IixNPSJhbnkiLGQ9Im1vdmVkIixwPSJzaGFrZW4iLG09Imp1bXBlZCIsRj0iQSIsRD0iQiIsWT0iYW55IixmPSJvbiIsTj0ib2ZmIjtjbGFzcyBVe3N0YXRpYyBnZXQgRVhURU5TSU9OX05BTUUoKXtyZXR1cm4ibWljcm86Yml0In1zdGF0aWMgZ2V0IEVYVEVOU0lPTl9JRCgpe3JldHVybiJtaWNyb2JpdCJ9c3RhdGljIGdldCBUSUxUX1RIUkVTSE9MRCgpe3JldHVybiAxNX1nZXQgQlVUVE9OU19NRU5VKCl7cmV0dXJuW3t0ZXh0OiJBIix2YWx1ZTpGfSx7dGV4dDoiQiIsdmFsdWU6RH0se3RleHQ6cyh7aWQ6Im1pY3JvYml0LmJ1dHRvbnNNZW51LmFueSIsZGVmYXVsdDoiYW55IixkZXNjcmlwdGlvbjonbGFiZWwgZm9yICJhbnkiIGVsZW1lbnQgaW4gYnV0dG9uIHBpY2tlciBmb3IgbWljcm86Yml0IGV4dGVuc2lvbid9KSx2YWx1ZTpZfV19Z2V0IEdFU1RVUkVTX01FTlUoKXtyZXR1cm5be3RleHQ6cyh7aWQ6Im1pY3JvYml0Lmdlc3R1cmVzTWVudS5tb3ZlZCIsZGVmYXVsdDoibW92ZWQiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgbW92ZWQgZ2VzdHVyZSBpbiBnZXN0dXJlIHBpY2tlciBmb3IgbWljcm86Yml0IGV4dGVuc2lvbiJ9KSx2YWx1ZTpkfSx7dGV4dDpzKHtpZDoibWljcm9iaXQuZ2VzdHVyZXNNZW51LnNoYWtlbiIsZGVmYXVsdDoic2hha2VuIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIHNoYWtlbiBnZXN0dXJlIGluIGdlc3R1cmUgcGlja2VyIGZvciBtaWNybzpiaXQgZXh0ZW5zaW9uIn0pLHZhbHVlOnB9LHt0ZXh0OnMoe2lkOiJtaWNyb2JpdC5nZXN0dXJlc01lbnUuanVtcGVkIixkZWZhdWx0OiJqdW1wZWQiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IganVtcGVkIGdlc3R1cmUgaW4gZ2VzdHVyZSBwaWNrZXIgZm9yIG1pY3JvOmJpdCBleHRlbnNpb24ifSksdmFsdWU6bX1dfWdldCBQSU5fU1RBVEVfTUVOVSgpe3JldHVyblt7dGV4dDpzKHtpZDoibWljcm9iaXQucGluU3RhdGVNZW51Lm9uIixkZWZhdWx0OiJvbiIsZGVzY3JpcHRpb246ImxhYmVsIGZvciBvbiBlbGVtZW50IGluIHBpbiBzdGF0ZSBwaWNrZXIgZm9yIG1pY3JvOmJpdCBleHRlbnNpb24ifSksdmFsdWU6Zn0se3RleHQ6cyh7aWQ6Im1pY3JvYml0LnBpblN0YXRlTWVudS5vZmYiLGRlZmF1bHQ6Im9mZiIsZGVzY3JpcHRpb246ImxhYmVsIGZvciBvZmYgZWxlbWVudCBpbiBwaW4gc3RhdGUgcGlja2VyIGZvciBtaWNybzpiaXQgZXh0ZW5zaW9uIn0pLHZhbHVlOk59XX1nZXQgVElMVF9ESVJFQ1RJT05fTUVOVSgpe3JldHVyblt7dGV4dDpzKHtpZDoibWljcm9iaXQudGlsdERpcmVjdGlvbk1lbnUuZnJvbnQiLGRlZmF1bHQ6ImZyb250IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGZyb250IGVsZW1lbnQgaW4gdGlsdCBkaXJlY3Rpb24gcGlja2VyIGZvciBtaWNybzpiaXQgZXh0ZW5zaW9uIn0pLHZhbHVlOmh9LHt0ZXh0OnMoe2lkOiJtaWNyb2JpdC50aWx0RGlyZWN0aW9uTWVudS5iYWNrIixkZWZhdWx0OiJiYWNrIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGJhY2sgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBwaWNrZXIgZm9yIG1pY3JvOmJpdCBleHRlbnNpb24ifSksdmFsdWU6d30se3RleHQ6cyh7aWQ6Im1pY3JvYml0LnRpbHREaXJlY3Rpb25NZW51LmxlZnQiLGRlZmF1bHQ6ImxlZnQiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgbGVmdCBlbGVtZW50IGluIHRpbHQgZGlyZWN0aW9uIHBpY2tlciBmb3IgbWljcm86Yml0IGV4dGVuc2lvbiJ9KSx2YWx1ZTpDfSx7dGV4dDpzKHtpZDoibWljcm9iaXQudGlsdERpcmVjdGlvbk1lbnUucmlnaHQiLGRlZmF1bHQ6InJpZ2h0IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIHJpZ2h0IGVsZW1lbnQgaW4gdGlsdCBkaXJlY3Rpb24gcGlja2VyIGZvciBtaWNybzpiaXQgZXh0ZW5zaW9uIn0pLHZhbHVlOkl9XX1nZXQgVElMVF9ESVJFQ1RJT05fQU5ZX01FTlUoKXtyZXR1cm5bLi4udGhpcy5USUxUX0RJUkVDVElPTl9NRU5VLHt0ZXh0OnMoe2lkOiJtaWNyb2JpdC50aWx0RGlyZWN0aW9uTWVudS5hbnkiLGRlZmF1bHQ6ImFueSIsZGVzY3JpcHRpb246ImxhYmVsIGZvciBhbnkgZGlyZWN0aW9uIGVsZW1lbnQgaW4gdGlsdCBkaXJlY3Rpb24gcGlja2VyIGZvciBtaWNybzpiaXQgZXh0ZW5zaW9uIn0pLHZhbHVlOk19XX1jb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLl9wZXJpcGhlcmFsPW5ldyBsKHRoaXMucnVudGltZSxVLkVYVEVOU0lPTl9JRCl9Z2V0SW5mbygpe3JldHVybntpZDpVLkVYVEVOU0lPTl9JRCxuYW1lOlUuRVhURU5TSU9OX05BTUUsYmxvY2tJY29uVVJJOiJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUZBQUFBQlFDQVlBQUFDT0VmS3RBQUFBQ1hCSVdYTUFBQllsQUFBV0pRRkpVaVR3QUFBS2NFbEVRVlI0MnUyY2ZYQVU5Um5Idjd1M0wzZDdsOXlSNVBJR1hPN01rUUthWWlDVVdxSmhGR3ZSTWs0SlpYU2M4YVhWYVNtaVlsdGhWSFFFVzk5RnhpSWRyVlk2dGVpTWRvYStJQ3FoSXFnUUFzandNZ1lET1FLWGw3dVkxN3U5MjkzYjNmNXg1SktZZTgrRkpHU2Z2emJQL243N2UvYXp6Kzk1bnQ5djkwS29xZ3BOMGhkU1E2QUIxQUJxQURXQW1tZ0FOWUFhUUEyZ0pocEFEZUJFRTJxOEdQTGFXenUvQ3NseWlZNGs5ZE9uNXVpanRYR2Q3K2pXa2FSZVZwVDNIcmh2NmQwYXdFRkMwN3JnRCtaZVlZblhwcmh3aWdVQXZqajB6Ymp4UUNMZWJvelQ3aUR6SzFaVVdDcnUySzdMLy82TVZDOHVlNDVCbHo4bjZybFE4MTVRdHVvaE9sWGlFZHkvQVVxUGE2eTU5TWtoNlExMzQ1R05qYTZtN3BIRVFLTmwzdDA3MDRFWGF0NEw2ZlNPbU9lRUkxdkhLendBeU5KUjlNUEZwUlVQT3UwT05tMkEweGF0V2FUTG01V2ZEcnp2QXBwQThBYmlHMDNmQzhDUU5rREtaSzJZclBBdVJyaHBpZkpFUnN1WXl3dmVKYzdDcWNJRE1BeWVMbTgyZEVYenczOUkvcWpYa3ByM1F1VzlseGZBZE9BQkdBS1BzbFdEbmJzeTdKbDhCeFRlTTNTcW1PMGdhQTVVNmMzanltdXAwWVNuOUp5TGVlNjd3cFRmQlFBUWpteUYzSEZxaUpjUnRERUNqeTVkQW1ibWNnUVB2amp4bDNMeDRJVmpuRC81Y0UxemtXdHlQMzRWQkdjZEtMSm5MZ2M5Y3puazFrTVhGZHpFbjhLSjRLVXFxc1NIdmN4V0RmN2oxVU04VVByNi9ZZ0hoaFg4eEFhWWFYZ0FJQjdmQm5idVNyQnpWOGFOZ2FyRVEvejYvWWtMY0RUZzlWOVhsWGpRdHVxb1UxVHBjVUhsdlpET2ZEaXV5aDVxUE1DTHJKMWJEdzNFdVV0eDgxTi9CSDNwalFCSlEySE1GNVY2aUtmZVJjaFZtOWtrTXRyd3htU2RvYmVBOWRhQmRlOEd3VmxCY0ZZb2ZTMUp3MHZhQXk5SGVKSFF3QlVQeklCdkd4RGM5MlJtcC9Cb3dKczEwd2tBT05mc0JzOEhBQUFsdHFuZ09BTzhIWjNvNk9pTXFjdkx5NEUxTHdjOEg4QzVabmRNWGRMSmEvcU5hY05MQ0RCdy9POG5GVU5XeHAvNjQrdFdBd0JlZmUxdEhLZzdDZ0M0LzlkM29yaTRFSHYzSGNEcmIyNlBxVnQyNjAyb3Z2YUhhR2xwdys4ZmZTYW1McVhZbXlhOGpHOG1wRnk2aUdMa1dMaDRIQXdHNCtyNmo0VkJmYVBwTGdVOElNR085TUxxVzJwWVE5YVFva3VSNWRnWEl3Q0MxQ1VjTk1qM2hwZHZMQWRTRjU0RVlwQ0hvb1JBMFN3b21vMnBDMGtDUXBJQWtxVEE2TG1ZdXBneEwwWDdtNzgrYUcxME5YVmtwSXd4c0F3V1huY0RDRVNITGtvaGZQYnBiaVQ2WkZQUFpROWZDMGU1OFdpNndURGo2VWJUL3JRQXlpRVJTMnBXNEtjM0xRRExSTzhtaUNFQUtqN2Q4M0ZjVHh5TEpKSkorOU1DcUtvcTlIb21NcmdrU1RoeHNnRWNaOEFNcHdNa1NZSmxLREEwRFZVRmlIR1dSREpwLzRqWHdxSW80dUZIbmtaWGR3OEFZR2JaRlhoczNXcVFKRGtoa2tpbTdFOEtvTWxreEtibm44REJ1bnJ3VWxpM2U4Lyt5T0FBMEhqbUhEcTd1cEdYbTVQVW9EVXI3aG1XUkI1WnQzRll3b2ltZSt2dGQvSDZHOXVHSkl4b3VuaVN5UDZIN3Y4RnlzdG5ZODBqR3pJQTBNaWhzTUFLdTIwYVRwM0p6RmI2V0NXUnVEVXZId0J5dzhjT2h3MkZCVmFZak56SUFiYTFlM0hmYjlhaXE3TVROU3R1QndBc3ZyNEtPM2Q5R25tS3p0SVM1RXl4VEppVlNEVDdwMDR0aXB4LzlNbm5ZYzdPUmx1N056TXhzSzNkaTVBa0RIZ0d3MkRUQyt1SEJlR0pzaEpKWkwvZnh5TVFFREtiUkFpQ1FEQW9RaEJEWUJrS05FMmo0dXFyaHBVQm9pU0JJTVpmRWhrTisxTmVpV1NxRUIycmxVZzY5bWQwSlJJUVJIeTg2ejhqWHNxTlZSTEpsUDBqcWdOSlhYZ0FnamJDY09ObUNIVXZRKzQ0TldHMnMvcnRINU10L2NpVG9vMHdMSDRKQkdPNkxMYXpSaUprMnZCWXk0Z0hIdy9iV1NOK0xaQktFaGtNanpuL0NhU2lLZ1FPdkpEeUZCN0w3YXhVSldOSlpEQThJaFFBMWJvUGluN0taYk1TR2ZVWXlGeDliM2hYZy9jQ3NvQkEyWjBBb1lPYXhsY0M0K21keUNVREtCemFuTEZCSjNVU3lhUk11aVNTS1ptVVNTU1RNaW1UQ0FCVWxibFJVOWtBWjBFMzlwK2VpaTIxYytFTDBqSGJPd3U2c2ZhV2d5ak5ELy9VNG9QNk1telpuZmk3OVhUN21mUVNOaTdiaDBKek9MRzE5WEJZLzg5cjQ5cFlWZWJHcWh1T29zRHNoMStnc1dWM0JYWWRkMlErQmxhVnVYRnY5Ykhna1NiemsrdmZjVlJ5akhoaTQ3SjljZnRzWExZZjdUMzZJeDhjTEhsbzZ5ZGx2NnFwUEkycXNzUlpjdU95L1dqcDRrNXMrMnpHK29mZktxdGNVdDZrSnROdjdTMEgwUnRrdkV1ZlhUQi82Yk1MNWplMld5N1VWRGJFYkY5bzltUERzdjJvUDV2NzV2YlBTMjZyUDV1M2ZkWGlvekRwcGN3RHJLbHN3T2xXeTlFLy9EWDA5TXQvYXpoOHp6Tk0xUnliRjg2QzdwaGVWR0QyNDBDRGVYM05XdGZtbDk0UnQrMCtNZjNMbThxYkVucGZnZG1QcyszRzkrNTY0dlRULy9wTS9HckhZZHVXUlAwQVlPRU1OLzVTNjF4VDkyVnRmZDJYdGZXYi92dTkxZkhBTHl4enc5dG5rQi9jVEQ1dysyT3U5Mzc1SEh0ZmE3ZXhNNW14UnBLRmFhZmRRUUtnQWNERVJzOTgvZm9MSHJYZGFYZm9BQmk4dmN6aFdPMi8yOC9UUlI1ejJoMDBnS3ltTmwxdG9uNzlvaWdxNmJRN2RFNjdRK2V3OW1iMWg0RllZd1ZFU2dMQVhMU1JhKzNtV3BJZEsrVVl1UGlxODlmOCtYZlQvK2Z0WlE0dkxtOVptVXlmZGNzdjFNMmZXZlJhVUNLOGk4dmRLMXU2a3R1QVdQV1RzenRtMjRvL2NubllIVXNyV3pkMStmVko5WHRxeGJHM1h6RmROY1BUYXdqY3VlaWJweEsxdCtYMjZmLzlSOGE5NTNqdWI0dHlwT3ZtMmIxWG52VW12OEpLV01aY2FaZmZYM1hERVJSUDhjR2FGUmpXeHRQTG9adlhZNG94Z1BCTkVzZ3hCaENVS0V6TDZSdStKeWRTOEFrMGdpS0ZnRVNESkZRb0ttQ2dRekF3SWZRRVdFVHptb0JJd2QyVk5hU3R1OHVFSEdPNEJ1ejA2ekhIRnYwZFJrZWZBWjErUFF4MEtOSzJlSW9QTENVajJ6RGMyNzVxemdjQkZXditjZjNJeXhnVEsyS096UXVmRU01a2ZwR0YxMmVHUFNmOERYTitOby84N0hEV2l3WVlBTHcrTTZ5bThBc2NBeE8rK1g3eENUUk03RURRemh0MERhOHYvTldvMWRRREF4TkNvY1VYcyszMDNJR0hkYXB0T21ZWG5oL1NMbFpiVitmd253Sm02VVhFbS9vanFnTS9QRm1KUTgxT1BIZnJ0cVQ3Yk4yM0JFOHNlVGZsWUx2ejVEd1lHUUhMS3o1UHVvL1haOGFMdFQrRDFkU0R1eGJzR1FJeW1tejQ4RGJ3SWd1T0VTSk9jY2U4WGFPM29WcFo4azNFbTVLVlZBQU1GbnVPQjlhczFNYmltQ0J1bm4wNHZCbVI0MGxzMjlXZmd4ZjFLTW4xZ0JkWStNWFVDdks0QU52UG5kcEx6ckx6QUxqQk4yVlB3ckRCa3NnTFlrbjFqQk1wOTBuVlkyKys4dkF3M1JsUGVMTllWWlNQQUVnaktXUDZaQ240bEYrZ01kbkUwOHNwUWI3M1JRQjlhWHRnbzZ0SmNOb2RmOHJXejNMLy9CcjM0MFVXM3NFeEVrWHJGRktTU1VWSHFrUmZrSlo4UVNaazVnUzZodzlIK0d5RFFBY2xTczQxQlZtU1VJbit0b0FLSVVUSnNrS29RVWtuQ3hLbGtJU0tiL3NNME5NeXlWQWhYVytBbFlvc2ZnT2dRbFVKVmFkVFNVV0JLb1FvdWR2UGlvUGJlbnE1b0lVVGFSVXFlbmhXS2kzb3lWSVVxS3BLUkVvTGdnRGhGNmhRYjRDVjlMUk05cmN0TVBONmdsQ2hwMlNkVHFlU3Nrd29BRUNTS25HNjFmekZSL1hzR3UrRmhtT05yaVlsN1RJbXNqb1lLSnlaU2VCOENvQlFvNnNwcVU4VENPMWZnRTdnRFZVTm9DWWFRQTJnQmxBRHFBSFVSQU9vQWRRQWFnQTEwUUNPZ2Z3Zk5wL2hYYmZCTUNBQUFBQUFTVVZPUks1Q1lJST0iLHNob3dTdGF0dXNCdXR0b246ITAsYmxvY2tzOlt7b3Bjb2RlOiJ3aGVuQnV0dG9uUHJlc3NlZCIsdGV4dDpzKHtpZDoibWljcm9iaXQud2hlbkJ1dHRvblByZXNzZWQiLGRlZmF1bHQ6IndoZW4gW0JUTl0gYnV0dG9uIHByZXNzZWQiLGRlc2NyaXB0aW9uOiJ3aGVuIHRoZSBzZWxlY3RlZCBidXR0b24gb24gdGhlIG1pY3JvOmJpdCBpcyBwcmVzc2VkIn0pLGJsb2NrVHlwZTppLkhBVCxhcmd1bWVudHM6e0JUTjp7dHlwZTpuLlNUUklORyxtZW51OiJidXR0b25zIixkZWZhdWx0VmFsdWU6Rn19fSx7b3Bjb2RlOiJpc0J1dHRvblByZXNzZWQiLHRleHQ6cyh7aWQ6Im1pY3JvYml0LmlzQnV0dG9uUHJlc3NlZCIsZGVmYXVsdDoiW0JUTl0gYnV0dG9uIHByZXNzZWQ/IixkZXNjcmlwdGlvbjoiaXMgdGhlIHNlbGVjdGVkIGJ1dHRvbiBvbiB0aGUgbWljcm86Yml0IHByZXNzZWQ/In0pLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOntCVE46e3R5cGU6bi5TVFJJTkcsbWVudToiYnV0dG9ucyIsZGVmYXVsdFZhbHVlOkZ9fX0sIi0tLSIse29wY29kZToid2hlbkdlc3R1cmUiLHRleHQ6cyh7aWQ6Im1pY3JvYml0LndoZW5HZXN0dXJlIixkZWZhdWx0OiJ3aGVuIFtHRVNUVVJFXSIsZGVzY3JpcHRpb246IndoZW4gdGhlIHNlbGVjdGVkIGdlc3R1cmUgaXMgZGV0ZWN0ZWQgYnkgdGhlIG1pY3JvOmJpdCJ9KSxibG9ja1R5cGU6aS5IQVQsYXJndW1lbnRzOntHRVNUVVJFOnt0eXBlOm4uU1RSSU5HLG1lbnU6Imdlc3R1cmVzIixkZWZhdWx0VmFsdWU6ZH19fSwiLS0tIix7b3Bjb2RlOiJkaXNwbGF5U3ltYm9sIix0ZXh0OnMoe2lkOiJtaWNyb2JpdC5kaXNwbGF5U3ltYm9sIixkZWZhdWx0OiJkaXNwbGF5IFtNQVRSSVhdIixkZXNjcmlwdGlvbjoiZGlzcGxheSBhIHBhdHRlcm4gb24gdGhlIG1pY3JvOmJpdCBkaXNwbGF5In0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntNQVRSSVg6e3R5cGU6bi5NQVRSSVgsZGVmYXVsdFZhbHVlOiIwMTAxMDEwMTAxMTAwMDEwMTAxMDAwMTAwIn19fSx7b3Bjb2RlOiJkaXNwbGF5VGV4dCIsdGV4dDpzKHtpZDoibWljcm9iaXQuZGlzcGxheVRleHQiLGRlZmF1bHQ6ImRpc3BsYXkgdGV4dCBbVEVYVF0iLGRlc2NyaXB0aW9uOiJkaXNwbGF5IHRleHQgb24gdGhlIG1pY3JvOmJpdCBkaXNwbGF5In0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntURVhUOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZTpzKHtpZDoibWljcm9iaXQuZGVmYXVsdFRleHRUb0Rpc3BsYXkiLGRlZmF1bHQ6IkhlbGxvISIsZGVzY3JpcHRpb246J2RlZmF1bHQgdGV4dCB0byBkaXNwbGF5LlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTVBPUlRBTlQgLSB0aGUgbWljcm86Yml0IG9ubHkgc3VwcG9ydHMgbGV0dGVycyBhLXosIEEtWi5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGxlYXNlIHN1YnN0aXR1dGUgYSBkZWZhdWx0IHdvcmQgaW4geW91ciBsYW5ndWFnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGF0IGNhbiBiZSB3cml0dGVuIHdpdGggdGhvc2UgY2hhcmFjdGVycyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Vic3RpdHV0ZSBub24tYWNjZW50ZWQgY2hhcmFjdGVycyBvciBsZWF2ZSBpdCBhcyAiSGVsbG8hIi5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgdGhlIG1pY3JvOmJpdCBzaXRlIGRvY3VtZW50YXRpb24gZm9yIGRldGFpbHMnfSl9fX0se29wY29kZToiZGlzcGxheUNsZWFyIix0ZXh0OnMoe2lkOiJtaWNyb2JpdC5jbGVhckRpc3BsYXkiLGRlZmF1bHQ6ImNsZWFyIGRpc3BsYXkiLGRlc2NyaXB0aW9uOiJkaXNwbGF5IG5vdGhpbmcgb24gdGhlIG1pY3JvOmJpdCBkaXNwbGF5In0pLGJsb2NrVHlwZTppLkNPTU1BTkR9LCItLS0iLHtvcGNvZGU6IndoZW5UaWx0ZWQiLHRleHQ6cyh7aWQ6Im1pY3JvYml0LndoZW5UaWx0ZWQiLGRlZmF1bHQ6IndoZW4gdGlsdGVkIFtESVJFQ1RJT05dIixkZXNjcmlwdGlvbjoid2hlbiB0aGUgbWljcm86Yml0IGlzIHRpbHRlZCBpbiBhIGRpcmVjdGlvbiJ9KSxibG9ja1R5cGU6aS5IQVQsYXJndW1lbnRzOntESVJFQ1RJT046e3R5cGU6bi5TVFJJTkcsbWVudToidGlsdERpcmVjdGlvbkFueSIsZGVmYXVsdFZhbHVlOk19fX0se29wY29kZToiaXNUaWx0ZWQiLHRleHQ6cyh7aWQ6Im1pY3JvYml0LmlzVGlsdGVkIixkZWZhdWx0OiJ0aWx0ZWQgW0RJUkVDVElPTl0/IixkZXNjcmlwdGlvbjoiaXMgdGhlIG1pY3JvOmJpdCBpcyB0aWx0ZWQgaW4gYSBkaXJlY3Rpb24/In0pLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOntESVJFQ1RJT046e3R5cGU6bi5TVFJJTkcsbWVudToidGlsdERpcmVjdGlvbkFueSIsZGVmYXVsdFZhbHVlOk19fX0se29wY29kZToiZ2V0VGlsdEFuZ2xlIix0ZXh0OnMoe2lkOiJtaWNyb2JpdC50aWx0QW5nbGUiLGRlZmF1bHQ6InRpbHQgYW5nbGUgW0RJUkVDVElPTl0iLGRlc2NyaXB0aW9uOiJob3cgbXVjaCB0aGUgbWljcm86Yml0IGlzIHRpbHRlZCBpbiBhIGRpcmVjdGlvbiJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e0RJUkVDVElPTjp7dHlwZTpuLlNUUklORyxtZW51OiJ0aWx0RGlyZWN0aW9uIixkZWZhdWx0VmFsdWU6aH19fSwiLS0tIix7b3Bjb2RlOiJ3aGVuUGluQ29ubmVjdGVkIix0ZXh0OnMoe2lkOiJtaWNyb2JpdC53aGVuUGluQ29ubmVjdGVkIixkZWZhdWx0OiJ3aGVuIHBpbiBbUElOXSBjb25uZWN0ZWQiLGRlc2NyaXB0aW9uOiJ3aGVuIHRoZSBwaW4gZGV0ZWN0cyBhIGNvbm5lY3Rpb24gdG8gRWFydGgvR3JvdW5kIn0pLGJsb2NrVHlwZTppLkhBVCxhcmd1bWVudHM6e1BJTjp7dHlwZTpuLlNUUklORyxtZW51OiJ0b3VjaFBpbnMiLGRlZmF1bHRWYWx1ZToiMCJ9fX1dLG1lbnVzOntidXR0b25zOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6dGhpcy5CVVRUT05TX01FTlV9LGdlc3R1cmVzOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6dGhpcy5HRVNUVVJFU19NRU5VfSxwaW5TdGF0ZTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuUElOX1NUQVRFX01FTlV9LHRpbHREaXJlY3Rpb246e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczp0aGlzLlRJTFRfRElSRUNUSU9OX01FTlV9LHRpbHREaXJlY3Rpb25Bbnk6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczp0aGlzLlRJTFRfRElSRUNUSU9OX0FOWV9NRU5VfSx0b3VjaFBpbnM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIjAiLCIxIiwiMiJdfX19fXdoZW5CdXR0b25QcmVzc2VkKEEpe3JldHVybiJhbnkiPT09QS5CVE4/dGhpcy5fcGVyaXBoZXJhbC5idXR0b25BfHRoaXMuX3BlcmlwaGVyYWwuYnV0dG9uQjoiQSI9PT1BLkJUTj90aGlzLl9wZXJpcGhlcmFsLmJ1dHRvbkE6IkIiPT09QS5CVE4mJnRoaXMuX3BlcmlwaGVyYWwuYnV0dG9uQn1pc0J1dHRvblByZXNzZWQoQSl7cmV0dXJuImFueSI9PT1BLkJUTj8wIT0odGhpcy5fcGVyaXBoZXJhbC5idXR0b25BfHRoaXMuX3BlcmlwaGVyYWwuYnV0dG9uQik6IkEiPT09QS5CVE4/MCE9PXRoaXMuX3BlcmlwaGVyYWwuYnV0dG9uQToiQiI9PT1BLkJUTiYmMCE9PXRoaXMuX3BlcmlwaGVyYWwuYnV0dG9uQn13aGVuR2VzdHVyZShBKXtjb25zdCBlPW8udG9TdHJpbmcoQS5HRVNUVVJFKTtyZXR1cm4ibW92ZWQiPT09ZT90aGlzLl9wZXJpcGhlcmFsLmdlc3R1cmVTdGF0ZT4+MiYxOiJzaGFrZW4iPT09ZT8xJnRoaXMuX3BlcmlwaGVyYWwuZ2VzdHVyZVN0YXRlOiJqdW1wZWQiPT09ZSYmdGhpcy5fcGVyaXBoZXJhbC5nZXN0dXJlU3RhdGU+PjEmMX1kaXNwbGF5U3ltYm9sKEEpe2NvbnN0IGU9by50b1N0cmluZyhBLk1BVFJJWCkucmVwbGFjZSgvXHMvZywiIikuc3BsaXQoIiIpLnJlZHVjZSgoQSxlLHQpPT4iMCI9PT1lP0E6QStNYXRoLnBvdygyLHQpLDApO3JldHVybiBudWxsIT09ZSYmKHRoaXMuX3BlcmlwaGVyYWwubGVkTWF0cml4U3RhdGVbMF09MzEmZSx0aGlzLl9wZXJpcGhlcmFsLmxlZE1hdHJpeFN0YXRlWzFdPWU+PjUmMzEsdGhpcy5fcGVyaXBoZXJhbC5sZWRNYXRyaXhTdGF0ZVsyXT1lPj4xMCYzMSx0aGlzLl9wZXJpcGhlcmFsLmxlZE1hdHJpeFN0YXRlWzNdPWU+PjE1JjMxLHRoaXMuX3BlcmlwaGVyYWwubGVkTWF0cml4U3RhdGVbNF09ZT4+MjAmMzEsdGhpcy5fcGVyaXBoZXJhbC5kaXNwbGF5TWF0cml4KHRoaXMuX3BlcmlwaGVyYWwubGVkTWF0cml4U3RhdGUpKSxuZXcgUHJvbWlzZShBPT57c2V0VGltZW91dCgoKT0+e0EoKX0sMTAwKX0pfWRpc3BsYXlUZXh0KEEpe2NvbnN0IGU9U3RyaW5nKEEuVEVYVCkuc3Vic3RyaW5nKDAsMTkpO2UubGVuZ3RoPjAmJnRoaXMuX3BlcmlwaGVyYWwuZGlzcGxheVRleHQoZSk7Y29uc3QgdD0xMjAqKDYqZS5sZW5ndGgrNik7cmV0dXJuIG5ldyBQcm9taXNlKEE9PntzZXRUaW1lb3V0KCgpPT57QSgpfSx0KX0pfWRpc3BsYXlDbGVhcigpe2ZvcihsZXQgQT0wO0E8NTtBKyspdGhpcy5fcGVyaXBoZXJhbC5sZWRNYXRyaXhTdGF0ZVtBXT0wO3JldHVybiB0aGlzLl9wZXJpcGhlcmFsLmRpc3BsYXlNYXRyaXgodGhpcy5fcGVyaXBoZXJhbC5sZWRNYXRyaXhTdGF0ZSksbmV3IFByb21pc2UoQT0+e3NldFRpbWVvdXQoKCk9PntBKCl9LDEwMCl9KX13aGVuVGlsdGVkKEEpe3JldHVybiB0aGlzLl9pc1RpbHRlZChBLkRJUkVDVElPTil9aXNUaWx0ZWQoQSl7cmV0dXJuIHRoaXMuX2lzVGlsdGVkKEEuRElSRUNUSU9OKX1nZXRUaWx0QW5nbGUoQSl7cmV0dXJuIHRoaXMuX2dldFRpbHRBbmdsZShBLkRJUkVDVElPTil9X2lzVGlsdGVkKEEpe3N3aXRjaChBKXtjYXNlIE06cmV0dXJuIE1hdGguYWJzKHRoaXMuX3BlcmlwaGVyYWwudGlsdFgvMTApPj1VLlRJTFRfVEhSRVNIT0xEfHxNYXRoLmFicyh0aGlzLl9wZXJpcGhlcmFsLnRpbHRZLzEwKT49VS5USUxUX1RIUkVTSE9MRDtkZWZhdWx0OnJldHVybiB0aGlzLl9nZXRUaWx0QW5nbGUoQSk+PVUuVElMVF9USFJFU0hPTER9fV9nZXRUaWx0QW5nbGUoQSl7c3dpdGNoKEEpe2Nhc2UgaDpyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9wZXJpcGhlcmFsLnRpbHRZLy0xMCk7Y2FzZSB3OnJldHVybiBNYXRoLnJvdW5kKHRoaXMuX3BlcmlwaGVyYWwudGlsdFkvMTApO2Nhc2UgQzpyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9wZXJpcGhlcmFsLnRpbHRYLy0xMCk7Y2FzZSBJOnJldHVybiBNYXRoLnJvdW5kKHRoaXMuX3BlcmlwaGVyYWwudGlsdFgvMTApO2RlZmF1bHQ6ci53YXJuKCJVbmtub3duIHRpbHQgZGlyZWN0aW9uIGluIF9nZXRUaWx0QW5nbGU6ICIuY29uY2F0KEEpKX19d2hlblBpbkNvbm5lY3RlZChBKXtjb25zdCBlPXBhcnNlSW50KEEuUElOLDEwKTtpZighaXNOYU4oZSkpcmV0dXJuIShlPDB8fGU+MikmJnRoaXMuX3BlcmlwaGVyYWwuX2NoZWNrUGluU3RhdGUoZSl9fUEuZXhwb3J0cz1VfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDQpLGk9dCg5MCkscj10KDMpLG89dCgxKSxzPXQoMiksYT10KDYpLEI9dCg3KSxjPXQoNSksZz10KDU2KSxFPUE9Pk1hdGgubWluKE1hdGgubWF4KEEsLjA2MjUpLDE2KTtjbGFzcyBRe2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX3NvdW5kUGxheWVycz1uZXcgTWFwLHRoaXMuX3N0b3BBbGxTcGVlY2g9dGhpcy5fc3RvcEFsbFNwZWVjaC5iaW5kKHRoaXMpLHRoaXMucnVudGltZSYmdGhpcy5ydW50aW1lLm9uKCJQUk9KRUNUX1NUT1BfQUxMIix0aGlzLl9zdG9wQWxsU3BlZWNoKSx0aGlzLl9vblRhcmdldENyZWF0ZWQ9dGhpcy5fb25UYXJnZXRDcmVhdGVkLmJpbmQodGhpcyksdGhpcy5ydW50aW1lJiZBLm9uKCJ0YXJnZXRXYXNDcmVhdGVkIix0aGlzLl9vblRhcmdldENyZWF0ZWQpLHRoaXMuX3N1cHBvcnRlZExvY2FsZXM9dGhpcy5fZ2V0U3VwcG9ydGVkTG9jYWxlcygpfWdldCBWT0lDRV9JTkZPKCl7cmV0dXJue0FMVE86e25hbWU6bih7aWQ6InRleHQyc3BlZWNoLmFsdG8iLGRlZmF1bHQ6ImFsdG8iLGRlc2NyaXB0aW9uOiJOYW1lIGZvciBhIHZvaWNlIHdpdGggYW1iaWd1b3VzIGdlbmRlci4ifSksZ2VuZGVyOiJmZW1hbGUiLHBsYXliYWNrUmF0ZToxfSxURU5PUjp7bmFtZTpuKHtpZDoidGV4dDJzcGVlY2gudGVub3IiLGRlZmF1bHQ6InRlbm9yIixkZXNjcmlwdGlvbjoiTmFtZSBmb3IgYSB2b2ljZSB3aXRoIGFtYmlndW91cyBnZW5kZXIuIn0pLGdlbmRlcjoibWFsZSIscGxheWJhY2tSYXRlOjF9LFNRVUVBSzp7bmFtZTpuKHtpZDoidGV4dDJzcGVlY2guc3F1ZWFrIixkZWZhdWx0OiJzcXVlYWsiLGRlc2NyaXB0aW9uOiJOYW1lIGZvciBhIGZ1bm55IHZvaWNlIHdpdGggYSBoaWdoIHBpdGNoLiJ9KSxnZW5kZXI6ImZlbWFsZSIscGxheWJhY2tSYXRlOjEuMTl9LEdJQU5UOntuYW1lOm4oe2lkOiJ0ZXh0MnNwZWVjaC5naWFudCIsZGVmYXVsdDoiZ2lhbnQiLGRlc2NyaXB0aW9uOiJOYW1lIGZvciBhIGZ1bm55IHZvaWNlIHdpdGggYSBsb3cgcGl0Y2guIn0pLGdlbmRlcjoibWFsZSIscGxheWJhY2tSYXRlOi44NH0sS0lUVEVOOntuYW1lOm4oe2lkOiJ0ZXh0MnNwZWVjaC5raXR0ZW4iLGRlZmF1bHQ6ImtpdHRlbiIsZGVzY3JpcHRpb246IkEgYmFieSBjYXQuIn0pLGdlbmRlcjoiZmVtYWxlIixwbGF5YmFja1JhdGU6MS40MX0sR09PR0xFOntuYW1lOm4oe2lkOiJ0ZXh0MnNwZWVjaC5nb29nbGUiLGRlZmF1bHQ6Imdvb2dsZSIsZGVzY3JpcHRpb246Ik5hbWUgZm9yIGEgdm9pY2Ugd2l0aCBhbWJpZ3VvdXMgZ2VuZGVyLiJ9KSxzcGVjaWFsOiJnb29nbGUiLGdlbmRlcjoibWl4ZWQiLHBsYXliYWNrUmF0ZToxfX19Z2V0IExBTkdVQUdFX0lORk8oKXtyZXR1cm57YXI6e25hbWU6IkFyYWJpYyIsbG9jYWxlczpbImFyIl0sc3BlZWNoU3ludGhMb2NhbGU6ImFyYiIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJhciIsc2luZ2xlR2VuZGVyOiEwfSwiemgtY24iOntuYW1lOiJDaGluZXNlIChNYW5kYXJpbikiLGxvY2FsZXM6WyJ6aC1jbiIsInpoLXR3Il0sc3BlZWNoU3ludGhMb2NhbGU6ImNtbi1DTiIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJ6aC1jbiIsc2luZ2xlR2VuZGVyOiEwfSxkYTp7bmFtZToiRGFuaXNoIixsb2NhbGVzOlsiZGEiXSxzcGVlY2hTeW50aExvY2FsZToiZGEtREsiLHBlbmd1aW5tb2RTeW50aExvY2FsZToiZGEifSxubDp7bmFtZToiRHV0Y2giLGxvY2FsZXM6WyJubCJdLHNwZWVjaFN5bnRoTG9jYWxlOiJubC1OTCIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJubCJ9LGVuOntuYW1lOiJFbmdsaXNoIixsb2NhbGVzOlsiZW4iXSxzcGVlY2hTeW50aExvY2FsZToiZW4tVVMiLHBlbmd1aW5tb2RTeW50aExvY2FsZToiZW4ifSxmcjp7bmFtZToiRnJlbmNoIixsb2NhbGVzOlsiZnIiXSxzcGVlY2hTeW50aExvY2FsZToiZnItRlIiLHBlbmd1aW5tb2RTeW50aExvY2FsZToiZnIifSxkZTp7bmFtZToiR2VybWFuIixsb2NhbGVzOlsiZGUiXSxzcGVlY2hTeW50aExvY2FsZToiZGUtREUiLHBlbmd1aW5tb2RTeW50aExvY2FsZToiZGUifSxoaTp7bmFtZToiSGluZGkiLGxvY2FsZXM6WyJoaSJdLHNwZWVjaFN5bnRoTG9jYWxlOiJoaS1JTiIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJoaSIsc2luZ2xlR2VuZGVyOiEwfSxpczp7bmFtZToiSWNlbGFuZGljIixsb2NhbGVzOlsiaXMiXSxzcGVlY2hTeW50aExvY2FsZToiaXMtSVMiLHBlbmd1aW5tb2RTeW50aExvY2FsZToiaXMifSxpdDp7bmFtZToiSXRhbGlhbiIsbG9jYWxlczpbIml0Il0sc3BlZWNoU3ludGhMb2NhbGU6Iml0LUlUIixwZW5ndWlubW9kU3ludGhMb2NhbGU6Iml0In0samE6e25hbWU6IkphcGFuZXNlIixsb2NhbGVzOlsiamEiLCJqYS1oaXJhIl0sc3BlZWNoU3ludGhMb2NhbGU6ImphLUpQIixwZW5ndWlubW9kU3ludGhMb2NhbGU6ImphIn0sa286e25hbWU6IktvcmVhbiIsbG9jYWxlczpbImtvIl0sc3BlZWNoU3ludGhMb2NhbGU6ImtvLUtSIixwZW5ndWlubW9kU3ludGhMb2NhbGU6ImtvIixzaW5nbGVHZW5kZXI6ITB9LG5iOntuYW1lOiJOb3J3ZWdpYW4iLGxvY2FsZXM6WyJuYiIsIm5uIl0sc3BlZWNoU3ludGhMb2NhbGU6Im5iLU5PIixwZW5ndWlubW9kU3ludGhMb2NhbGU6Im5vIixzaW5nbGVHZW5kZXI6ITB9LHBsOntuYW1lOiJQb2xpc2giLGxvY2FsZXM6WyJwbCJdLHNwZWVjaFN5bnRoTG9jYWxlOiJwbC1QTCIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJwbCJ9LCJwdC1iciI6e25hbWU6IlBvcnR1Z3Vlc2UgKEJyYXppbGlhbikiLGxvY2FsZXM6WyJwdC1iciJdLHNwZWVjaFN5bnRoTG9jYWxlOiJwdC1CUiIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJwdC1iciJ9LHB0OntuYW1lOiJQb3J0dWd1ZXNlIChFdXJvcGVhbikiLGxvY2FsZXM6WyJwdCJdLHNwZWVjaFN5bnRoTG9jYWxlOiJwdC1QVCIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJwdCJ9LHJvOntuYW1lOiJSb21hbmlhbiIsbG9jYWxlczpbInJvIl0sc3BlZWNoU3ludGhMb2NhbGU6InJvLVJPIixwZW5ndWlubW9kU3ludGhMb2NhbGU6InJvIixzaW5nbGVHZW5kZXI6ITB9LHJ1OntuYW1lOiJSdXNzaWFuIixsb2NhbGVzOlsicnUiXSxzcGVlY2hTeW50aExvY2FsZToicnUtUlUiLHBlbmd1aW5tb2RTeW50aExvY2FsZToicnUifSxlczp7bmFtZToiU3BhbmlzaCAoRXVyb3BlYW4pIixsb2NhbGVzOlsiZXMiXSxzcGVlY2hTeW50aExvY2FsZToiZXMtRVMiLHBlbmd1aW5tb2RTeW50aExvY2FsZToiZXMtZXMifSwiZXMtNDE5Ijp7bmFtZToiU3BhbmlzaCAoTGF0aW4gQW1lcmljYW4pIixsb2NhbGVzOlsiZXMtNDE5Il0sc3BlZWNoU3ludGhMb2NhbGU6ImVzLVVTIixwZW5ndWlubW9kU3ludGhMb2NhbGU6ImVzLXVzIn0sc3Y6e25hbWU6IlN3ZWRpc2giLGxvY2FsZXM6WyJzdiJdLHNwZWVjaFN5bnRoTG9jYWxlOiJzdi1TRSIscGVuZ3Vpbm1vZFN5bnRoTG9jYWxlOiJzdiIsc2luZ2xlR2VuZGVyOiEwfSx0cjp7bmFtZToiVHVya2lzaCIsbG9jYWxlczpbInRyIl0sc3BlZWNoU3ludGhMb2NhbGU6InRyLVRSIixwZW5ndWlubW9kU3ludGhMb2NhbGU6InRyIixzaW5nbGVHZW5kZXI6ITB9LGN5OntuYW1lOiJXZWxzaCIsbG9jYWxlczpbImN5Il0sc3BlZWNoU3ludGhMb2NhbGU6ImN5LUdCIixwZW5ndWlubW9kU3ludGhMb2NhbGU6ImN5IixzaW5nbGVHZW5kZXI6ITB9fX1nZXQgUEVOR1VJTk1PRF9WT0lDRVMoKXtyZXR1cm5bIkdPT0dMRSJdfWdldCBQRU5HVUlOTU9EX1ZPSUNFX01BUCgpe3JldHVybntHT09HTEU6Imdvb2dsZSJ9fWdldCBQRU5HVUlOTU9EX1ZPSUNFX1ZPTFVNRVMoKXtyZXR1cm57R09PR0xFOjEwMH19c3RhdGljIGdldCBTVEFURV9LRVkoKXtyZXR1cm4iU2NyYXRjaC50ZXh0MnNwZWVjaCJ9c3RhdGljIGdldCBERUZBVUxUX1RFWFQyU1BFRUNIX1NUQVRFKCl7cmV0dXJue3ZvaWNlSWQ6IkFMVE8ifX1nZXQgREVGQVVMVF9MQU5HVUFHRSgpe3JldHVybiJlbiJ9X2dldFN0YXRlKEEpe2xldCBlPUEuZ2V0Q3VzdG9tU3RhdGUoUS5TVEFURV9LRVkpO3JldHVybiBlfHwoZT1CLnNpbXBsZShRLkRFRkFVTFRfVEVYVDJTUEVFQ0hfU1RBVEUpLEEuc2V0Q3VzdG9tU3RhdGUoUS5TVEFURV9LRVksZSkpLGV9X29uVGFyZ2V0Q3JlYXRlZChBLGUpe2lmKGUpe2NvbnN0IHQ9ZS5nZXRDdXN0b21TdGF0ZShRLlNUQVRFX0tFWSk7dCYmQS5zZXRDdXN0b21TdGF0ZShRLlNUQVRFX0tFWSxCLnNpbXBsZSh0KSl9fWdldEluZm8oKXtsZXQgQT0iaGVsbG8iO3JldHVybiB0aGlzLmlzU3VwcG9ydGVkTGFuZ3VhZ2UodGhpcy5nZXRFZGl0b3JMYW5ndWFnZSgpKSYmKEE9bih7aWQ6InRleHQyc3BlZWNoLmRlZmF1bHRUZXh0VG9TcGVhayIsZGVmYXVsdDoiaGVsbG8iLGRlc2NyaXB0aW9uOiJoZWxsbzogdGhlIGRlZmF1bHQgdGV4dCB0byBzcGVhayJ9KSkse2lkOiJ0ZXh0MnNwZWVjaCIsbmFtZTpuKHtpZDoidGV4dDJzcGVlY2guY2F0ZWdvcnlOYW1lIixkZWZhdWx0OiJUZXh0IHRvIFNwZWVjaCIsZGVzY3JpcHRpb246Ik5hbWUgb2YgdGhlIFRleHQgdG8gU3BlZWNoIGV4dGVuc2lvbi4ifSksYmxvY2tJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlWVlJHTFRnaVB6NEtQSE4yWnlCM2FXUjBhRDBpTkRCd2VDSWdhR1ZwWjJoMFBTSTBNSEI0SWlCMmFXVjNRbTk0UFNJd0lEQWdOREFnTkRBaUlIWmxjbk5wYjI0OUlqRXVNU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JaUI0Yld4dWN6cDRiR2x1YXowaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1UazVPUzk0YkdsdWF5SStDaUFnSUNBOElTMHRJRWRsYm1WeVlYUnZjam9nVTJ0bGRHTm9JRFV5TGpJZ0tEWTNNVFExS1NBdElHaDBkSEE2THk5M2QzY3VZbTlvWlcxcFlXNWpiMlJwYm1jdVkyOXRMM05yWlhSamFDQXRMVDRLSUNBZ0lEeDBhWFJzWlQ1RmVIUmxibk5wYjI1ekwxTnZablIzWVhKbEwxUmxlSFF0ZEc4dFUzQmxaV05vTFVKc2IyTnJQQzkwYVhSc1pUNEtJQ0FnSUR4a1pYTmpQa055WldGMFpXUWdkMmwwYUNCVGEyVjBZMmd1UEM5a1pYTmpQZ29nSUNBZ1BHY2dhV1E5SWtWNGRHVnVjMmx2Ym5NdlUyOW1kSGRoY21VdlZHVjRkQzEwYnkxVGNHVmxZMmd0UW14dlkyc2lJSE4wY205clpUMGlibTl1WlNJZ2MzUnliMnRsTFhkcFpIUm9QU0l4SWlCbWFXeHNQU0p1YjI1bElpQm1hV3hzTFhKMWJHVTlJbVYyWlc1dlpHUWlJSE4wY205clpTMXZjR0ZqYVhSNVBTSXdMakUxSWo0S0lDQWdJQ0FnSUNBOFp5QnBaRDBpZEdWNGRESnpjR1ZsWTJnaUlIUnlZVzV6Wm05eWJUMGlkSEpoYm5Oc1lYUmxLRFF1TURBd01EQXdMQ0EwTGpBd01EQXdNQ2tpSUdacGJHd3RjblZzWlQwaWJtOXVlbVZ5YnlJZ2MzUnliMnRsUFNJak1EQXdNREF3SWo0S0lDQWdJQ0FnSUNBZ0lDQWdQSEJoZEdnZ1pEMGlUVEV4TGpVc01UY3VOalk1TXpRek5TQkRNVEV1TlN3eE5pNDJOVE01TWpZNUlERXdMakF3TmpBeE5EVXNNVFl1TURnME5ESTNOQ0E1TGpFeE1qVTJNREkwTERFMkxqZzRPRE1nVERZdU5ERXlOVFl3TWpRc01Ua3VNRFV3TnpFMElFTTFMak01TXpRMk56VTFMREU1TGpnMk5qZzVPVFFnTkM0d056UTVOek0xTVN3eU1DNHpNekUzTlRjMUlESXVOeXd5TUM0ek16RTNOVGMxSUV3eUxqTXNNakF1TXpNeE56VTNOU0JETVM0eU5qVXhPVEl6TXl3eU1DNHpNekUzTlRjMUlEQXVOU3d5TVM0d01qRXlNREF6SURBdU5Td3lNUzQ1TURRd056RWdUREF1TlN3eU5pNHhNemczT1RnMklFTXdMalVzTWpjdU1ESXhOalk1TXlBeExqSTJOVEU1TWpNekxESTNMamN4TVRFeE1pQXlMak1zTWpjdU56RXhNVEV5SUV3eUxqY3NNamN1TnpFeE1URXlJRU0wTGpFMU56VTFOamd5TERJM0xqY3hNVEV4TWlBMUxqUTFNemN5TXpJeUxESTRMakV6TXpVeU56RWdOaTQxTVRrM01qQTVPQ3d5T0M0NU9UZ2dURGt1TVRFNE5EQXlPVE1zTXpFdU1UVTVNekl4TmlCRE1UQXVNREkyTVRnMU5Td3pNUzQ1TURrd056a3pJREV4TGpVc016RXVNelEzTWpZNE9TQXhNUzQxTERNd0xqSTRNelF5TlRVZ1RERXhMalVzTVRjdU5qWTVNelF6TlNCYUlpQnBaRDBpYzNCbFlXdGxjaUlnWm1sc2JEMGlJelJFTkVRMFJDSStQQzl3WVhSb1Bnb2dJQ0FnSUNBZ0lDQWdJQ0E4Y0dGMGFDQmtQU0pOTWpFdU5qUXpOakEyTml3eE5pNDFJRU14T1M0NU56Y3dNRGs1TERFNExqUXpOekF5TXpRZ01UY3VNVEExTURJM05Td3hPUzQ1TWpnMU56RTBJREUxTGpZMk5qWTJOamNzTVRrdU9USTROVGN4TkNCRE1UVXVOVEV5TmpNNU55d3hPUzQ1TWpnMU56RTBJREUxTGpNeE5qWXlPVElzTVRrdU9EazFPVEF6SURFMUxqRXdPVGN5TmpVc01Ua3VOemt5TkRVeE55QkRNVFF1TnpNM05qQXpPU3d4T1M0Mk1EWXpPVEEwSURFMExqVXNNVGt1TWpRNU9UZzBOaUF4TkM0MUxERTRMamMyTVRrd05EZ2dRekUwTGpVc01UZ3VOalUyT0RBME1TQXhOQzQxTVRjd05UVTFMREU0TGpVMU5EVXdOellnTVRRdU5UUTVORFEyTnl3eE9DNDBOVFF3T0RRMElFTXhOQzQyTWpVM05UUTFMREU0TGpJeE56VXdOak1nTVRVdU1UY3pOVGN5TVN3eE55NDBOamMxTXpFZ01UVXVNamMzTWpBM01Td3hOeTR5T0RBNU9EZ3hJRU14TlM0MU5EWXpOVEkyTERFMkxqYzVOalV5TmpFZ01UVXVOek01TURJMUxERTJMakl3TmpNMU5qRWdNVFV1T0RRek1qZzVNU3d4TlM0ME1UWXdNRE0wSUVNeE15NHhPRGszTURBMUxERXpMamt5Tmpnek5qa2dNVEV1TlN3eE1TNHhNVE01TmpZNElERXhMalVzT0NCRE1URXVOU3d6TGpNd05UVTNPVFl6SURFMUxqTXdOVFUzT1RZc0xUQXVOU0F5TUN3dE1DNDFJRXd5TkN3dE1DNDFJRU15T0M0Mk9UUTBNakEwTEMwd0xqVWdNekl1TlN3ekxqTXdOVFUzT1RZeklETXlMalVzT0NCRE16SXVOU3d4TWk0Mk9UUTBNakEwSURJNExqWTVORFF5TURRc01UWXVOU0F5TkN3eE5pNDFJRXd5TVM0Mk5ETTJNRFkyTERFMkxqVWdXaUlnYVdROUluTndaV1ZqYUNJZ1ptbHNiRDBpSTBaR1JrWkdSaUkrUEM5d1lYUm9QZ29nSUNBZ0lDQWdJRHd2Wno0S0lDQWdJRHd2Wno0S1BDOXpkbWMrIixtZW51SWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpVlZSR0xUZ2lQejRLUEhOMlp5QjNhV1IwYUQwaU1qQndlQ0lnYUdWcFoyaDBQU0l5TUhCNElpQjJhV1YzUW05NFBTSXdJREFnTWpBZ01qQWlJSFpsY25OcGIyNDlJakV1TVNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWlCNGJXeHVjenA0YkdsdWF6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNVGs1T1M5NGJHbHVheUkrQ2lBZ0lDQThJUzB0SUVkbGJtVnlZWFJ2Y2pvZ1UydGxkR05vSURVeUxqSWdLRFkzTVRRMUtTQXRJR2gwZEhBNkx5OTNkM2N1WW05b1pXMXBZVzVqYjJScGJtY3VZMjl0TDNOclpYUmphQ0F0TFQ0S0lDQWdJRHgwYVhSc1pUNUZlSFJsYm5OcGIyNXpMMU52Wm5SM1lYSmxMMVJsZUhRdGRHOHRVM0JsWldOb0xVMWxiblU4TDNScGRHeGxQZ29nSUNBZ1BHUmxjMk0rUTNKbFlYUmxaQ0IzYVhSb0lGTnJaWFJqYUM0OEwyUmxjMk0rQ2lBZ0lDQThaeUJwWkQwaVJYaDBaVzV6YVc5dWN5OVRiMlowZDJGeVpTOVVaWGgwTFhSdkxWTndaV1ZqYUMxTlpXNTFJaUJ6ZEhKdmEyVTlJbTV2Ym1VaUlITjBjbTlyWlMxM2FXUjBhRDBpTVNJZ1ptbHNiRDBpYm05dVpTSWdabWxzYkMxeWRXeGxQU0psZG1WdWIyUmtJajRLSUNBZ0lDQWdJQ0E4WnlCcFpEMGlkR1Y0ZERKemNHVmxZMmdpSUhSeVlXNXpabTl5YlQwaWRISmhibk5zWVhSbEtESXVNREF3TURBd0xDQXlMakF3TURBd01Da2lJR1pwYkd3dGNuVnNaVDBpYm05dWVtVnlieUkrQ2lBZ0lDQWdJQ0FnSUNBZ0lEeHdZWFJvSUdROUlrMDFMamMxTERndU9ETTBOamN4TnpNZ1F6VXVOelVzT0M0ek1qWTVOak0wTkNBMUxqQXdNekF3TnpJM0xEZ3VNRFF5TWpFek56RWdOQzQxTlRZeU9EQXhNaXc0TGpRME5ERTBPVGs1SUV3ekxqSXdOakk0TURFeUxEa3VOVEkxTXpVM01ESWdRekl1TmprMk56TXpOemdzT1M0NU16TTBORGsyT0NBeUxqQXpOelE0TmpjMUxERXdMakUyTlRnM09EZ2dNUzR6TlN3eE1DNHhOalU0TnpnNElFd3hMakUxTERFd0xqRTJOVGczT0RnZ1F6QXVOak15TlRrMk1UWTFMREV3TGpFMk5UZzNPRGdnTUM0eU5Td3hNQzQxTVRBMk1EQXlJREF1TWpVc01UQXVPVFV5TURNMU5TQk1NQzR5TlN3eE15NHdOamt6T1RreklFTXdMakkxTERFekxqVXhNRGd6TkRZZ01DNDJNekkxT1RZeE5qVXNNVE11T0RVMU5UVTJJREV1TVRVc01UTXVPRFUxTlRVMklFd3hMak0xTERFekxqZzFOVFUxTmlCRE1pNHdOemczTnpnME1Td3hNeTQ0TlRVMU5UWWdNaTQzTWpZNE5qRTJNU3d4TkM0d05qWTNOak0ySURNdU1qVTVPRFl3TkRrc01UUXVORGs1SUV3MExqVTFPVEl3TVRRM0xERTFMalUzT1RZMk1EZ2dRelV1TURFek1Ea3lOellzTVRVdU9UVTBOVE01TmlBMUxqYzFMREUxTGpZM016WXpORFFnTlM0M05Td3hOUzR4TkRFM01USTRJRXcxTGpjMUxEZ3VPRE0wTmpjeE56TWdXaUlnYVdROUluTndaV0ZyWlhJaUlITjBjbTlyWlMxdmNHRmphWFI1UFNJd0xqRTFJaUJ6ZEhKdmEyVTlJaU13TURBd01EQWlJSE4wY205clpTMTNhV1IwYUQwaU1DNDFJaUJtYVd4c1BTSWpORVEwUkRSRUlqNDhMM0JoZEdnK0NpQWdJQ0FnSUNBZ0lDQWdJRHh3WVhSb0lHUTlJazB4TUM0M01EUTRNekV6TERnZ1F6a3VOemt3TmpjME5qZ3NPUzR4TXpFeE5EZzBOeUE0TGpNd05qWXhPRFFzT1M0M01UUXlPRFUzTVNBM0xqZ3pNek16TXpNekxEa3VOekUwTWpnMU56RWdRemN1T0RNek16TXpNek1zT1M0M01UUXlPRFUzTVNBM0xqVXNPUzQzTVRReU9EVTNNU0EzTGpVc09TNHpPREE1TlRJek9DQkROeTQxTERrdU1EZzFNakkyT0RRZ09DNHdOakl5TURFMk9DdzRMamt3TVRrME1UWTBJRGd1TVRnNU1EWXdOamNzTnk0MU5qYzFOREExT0NCRE5pNDRPRGs1TmprNU1TdzJMamt3TmpjNU1EQTFJRFlzTlM0MU5UY3pNalk0TXlBMkxEUWdRellzTVM0M09UQTROakVnTnk0M09UQTROakVzTkM0d05UZ3hNakkxTVdVdE1UWWdNVEFzTUNCTU1USXNNQ0JETVRRdU1qQTVNVE01TEMwMExqQTFPREV5TWpVeFpTMHhOaUF4Tml3eExqYzVNRGcyTVNBeE5pdzBJRU14Tml3MkxqSXdPVEV6T1NBeE5DNHlNRGt4TXprc09DQXhNaXc0SUV3eE1DNDNNRFE0TXpFekxEZ2dXaUlnYVdROUluTndaV1ZqYUNJZ1ptbHNiRDBpSXpCRlFrUTRReUkrUEM5d1lYUm9QZ29nSUNBZ0lDQWdJRHd2Wno0S0lDQWdJRHd2Wno0S1BDOXpkbWMrIixibG9ja3M6W3tvcGNvZGU6InNwZWFrQW5kV2FpdCIsdGV4dDpuKHtpZDoidGV4dDJzcGVlY2guc3BlYWtBbmRXYWl0QmxvY2siLGRlZmF1bHQ6InNwZWFrIFtXT1JEU10iLGRlc2NyaXB0aW9uOiJTcGVhayBzb21lIHdvcmRzLiJ9KSxibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7V09SRFM6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOkF9fX0se29wY29kZToic2V0Vm9pY2UiLHRleHQ6bih7aWQ6InRleHQyc3BlZWNoLnNldFZvaWNlQmxvY2siLGRlZmF1bHQ6InNldCB2b2ljZSB0byBbVk9JQ0VdIixkZXNjcmlwdGlvbjoiU2V0IHRoZSB2b2ljZSBmb3Igc3BlZWNoIHN5bnRoZXNpcy4ifSksYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e1ZPSUNFOnt0eXBlOnIuU1RSSU5HLG1lbnU6InZvaWNlcyIsZGVmYXVsdFZhbHVlOiJBTFRPIn19fSx7b3Bjb2RlOiJzZXRMYW5ndWFnZSIsdGV4dDpuKHtpZDoidGV4dDJzcGVlY2guc2V0TGFuZ3VhZ2VCbG9jayIsZGVmYXVsdDoic2V0IGxhbmd1YWdlIHRvIFtMQU5HVUFHRV0iLGRlc2NyaXB0aW9uOiJTZXQgdGhlIGxhbmd1YWdlIGZvciBzcGVlY2ggc3ludGhlc2lzLiJ9KSxibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7TEFOR1VBR0U6e3R5cGU6ci5TVFJJTkcsbWVudToibGFuZ3VhZ2VzIixkZWZhdWx0VmFsdWU6dGhpcy5nZXRDdXJyZW50TGFuZ3VhZ2UoKX19fSx7b3Bjb2RlOiJzZXRTcGVlZCIsdGV4dDpuKHtpZDoidGV4dDJzcGVlY2guc2V0U3BlZWRCbG9jayIsZGVmYXVsdDoic2V0IHJlYWRpbmcgc3BlZWQgdG8gW1NQRUVEXSUiLGRlc2NyaXB0aW9uOiJTZXQgdGhlIHJlYWRpbmcgc3BlZWQgYW5kIHBpdGNoIGZvciBzcGVlY2ggc3ludGhlc2lzLiJ9KSxibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7U1BFRUQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH19fV0sbWVudXM6e3ZvaWNlczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuZ2V0Vm9pY2VNZW51KCl9LGxhbmd1YWdlczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuZ2V0TGFuZ3VhZ2VNZW51KCl9fX19Z2V0RWRpdG9yTGFuZ3VhZ2UoKXtyZXR1cm4obi5zZXR1cCgpLmxvY2FsZXx8bmF2aWdhdG9yLmxhbmd1YWdlfHxuYXZpZ2F0b3IudXNlckxhbmd1YWdlfHx0aGlzLkRFRkFVTFRfTEFOR1VBR0UpLnRvTG93ZXJDYXNlKCl9Z2V0Q3VycmVudExhbmd1YWdlKCl7Y29uc3QgQT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtyZXR1cm4gQT8oQS50ZXh0VG9TcGVlY2hMYW5ndWFnZXx8dGhpcy5zZXRDdXJyZW50TGFuZ3VhZ2UodGhpcy5nZXRFZGl0b3JMYW5ndWFnZSgpKSxBLnRleHRUb1NwZWVjaExhbmd1YWdlKTp0aGlzLkRFRkFVTFRfTEFOR1VBR0V9c2V0Q3VycmVudExhbmd1YWdlKEEpe2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7aWYoIWUpcmV0dXJuO3RoaXMuaXNTdXBwb3J0ZWRMYW5ndWFnZShBKSYmKGUudGV4dFRvU3BlZWNoTGFuZ3VhZ2U9dGhpcy5fZ2V0RXh0ZW5zaW9uTG9jYWxlRm9yU3VwcG9ydGVkTG9jYWxlKEEpKTtjb25zdCB0PWkubmFtZU1hcFtBLnRvTG93ZXJDYXNlKCldO3QmJnRoaXMuaXNTdXBwb3J0ZWRMYW5ndWFnZSh0KSYmKGUudGV4dFRvU3BlZWNoTGFuZ3VhZ2U9dGhpcy5fZ2V0RXh0ZW5zaW9uTG9jYWxlRm9yU3VwcG9ydGVkTG9jYWxlKHQpKSxlLnRleHRUb1NwZWVjaExhbmd1YWdlfHwoZS50ZXh0VG9TcGVlY2hMYW5ndWFnZT10aGlzLkRFRkFVTFRfTEFOR1VBR0UpfV9nZXRFeHRlbnNpb25Mb2NhbGVGb3JTdXBwb3J0ZWRMb2NhbGUoQSl7Zm9yKGNvbnN0IGUgaW4gdGhpcy5MQU5HVUFHRV9JTkZPKWlmKHRoaXMuTEFOR1VBR0VfSU5GT1tlXS5sb2NhbGVzLmluY2x1ZGVzKEEpKXJldHVybiBlO2MuZXJyb3IoImNhbm5vdCBmaW5kIGV4dGVuc2lvbiBsb2NhbGUgZm9yIGxvY2FsZSAiLmNvbmNhdChBKSl9X2dldFNwZWVjaFN5bnRoTG9jYWxlKCl7bGV0IEE9dGhpcy5MQU5HVUFHRV9JTkZPW3RoaXMuREVGQVVMVF9MQU5HVUFHRV0uc3BlZWNoU3ludGhMb2NhbGU7cmV0dXJuIHRoaXMuTEFOR1VBR0VfSU5GT1t0aGlzLmdldEN1cnJlbnRMYW5ndWFnZSgpXSYmKEE9dGhpcy5MQU5HVUFHRV9JTkZPW3RoaXMuZ2V0Q3VycmVudExhbmd1YWdlKCldLnNwZWVjaFN5bnRoTG9jYWxlKSxBfV9nZXRQZW5ndWluTW9kU3ludGhMb2NhbGUoKXtsZXQgQT10aGlzLkxBTkdVQUdFX0lORk9bdGhpcy5ERUZBVUxUX0xBTkdVQUdFXS5wZW5ndWlubW9kU3ludGhMb2NhbGU7cmV0dXJuIHRoaXMuTEFOR1VBR0VfSU5GT1t0aGlzLmdldEN1cnJlbnRMYW5ndWFnZSgpXSYmKEE9dGhpcy5MQU5HVUFHRV9JTkZPW3RoaXMuZ2V0Q3VycmVudExhbmd1YWdlKCldLnBlbmd1aW5tb2RTeW50aExvY2FsZSksQX1fZ2V0U3VwcG9ydGVkTG9jYWxlcygpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLkxBTkdVQUdFX0lORk8pLnJlZHVjZSgoQSxlKT0+QS5jb25jYXQodGhpcy5MQU5HVUFHRV9JTkZPW2VdLmxvY2FsZXMpLFtdKX1pc1N1cHBvcnRlZExhbmd1YWdlKEEpe3JldHVybiB0aGlzLl9zdXBwb3J0ZWRMb2NhbGVzLmluY2x1ZGVzKEEpfWdldFZvaWNlTWVudSgpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLlZPSUNFX0lORk8pLm1hcChBPT4oe3RleHQ6dGhpcy5WT0lDRV9JTkZPW0FdLm5hbWUsdmFsdWU6QX0pKX1nZXRMYW5ndWFnZU1lbnUoKXtjb25zdCBBPXRoaXMuZ2V0RWRpdG9yTGFuZ3VhZ2UoKSxlPXt9O2xldCB0PWkubWVudU1hcFtBXTtpZih0KXtsZXQgbj1bXTtpLnNwb2tlbkxhbmd1YWdlcyYmKG49aS5zcG9rZW5MYW5ndWFnZXNbQV0sdD10LmNvbmNhdChuKSksdC5mb3JFYWNoKEE9PntlW0EuY29kZV09QS5uYW1lfSl9cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuTEFOR1VBR0VfSU5GTykubWFwKEE9PntsZXQgdD10aGlzLkxBTkdVQUdFX0lORk9bQV0ubmFtZTtjb25zdCBuPWVbQV07cmV0dXJuIG4mJih0PW4pLHQ9dC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpLHt0ZXh0OnQsdmFsdWU6QX19KX1zZXRWb2ljZShBLGUpe2NvbnN0IHQ9dGhpcy5fZ2V0U3RhdGUoZS50YXJnZXQpO2xldCBuPUEuVk9JQ0UsaT1wYXJzZUludChuLDEwKTtpc05hTihpKXx8KGktPTEsaT1hLndyYXBDbGFtcChpLDAsT2JqZWN0LmtleXModGhpcy5WT0lDRV9JTkZPKS5sZW5ndGgtMSksbj1PYmplY3Qua2V5cyh0aGlzLlZPSUNFX0lORk8pW2ldKSxPYmplY3Qua2V5cyh0aGlzLlZPSUNFX0lORk8pLmluY2x1ZGVzKG4pJiYodC52b2ljZUlkPW4pfXNldExhbmd1YWdlKEEpe3RoaXMuc2V0Q3VycmVudExhbmd1YWdlKEEuTEFOR1VBR0UpfXNldFNwZWVkKEEsZSl7Y29uc3QgdD10aGlzLl9nZXRTdGF0ZShlLnRhcmdldCksbj1zLnRvTnVtYmVyKEEuU1BFRUQpLzEwMDt0LnNwZWVkPUUobil9X3N0b3BBbGxTcGVlY2goKXt0aGlzLl9zb3VuZFBsYXllcnMuZm9yRWFjaChBPT57QS5zdG9wKCl9KX1zcGVha0FuZFdhaXQoQSxlKXtsZXQgdD1zLnRvU3RyaW5nKEEuV09SRFMpLG49dGhpcy5fZ2V0U3BlZWNoU3ludGhMb2NhbGUoKTtjb25zdCBpPXRoaXMuX2dldFN0YXRlKGUudGFyZ2V0KTtsZXQgcj10aGlzLlZPSUNFX0lORk9baS52b2ljZUlkXS5nZW5kZXIsbz10aGlzLlZPSUNFX0lORk9baS52b2ljZUlkXS5wbGF5YmFja1JhdGU7dGhpcy5MQU5HVUFHRV9JTkZPW3RoaXMuZ2V0Q3VycmVudExhbmd1YWdlKCldLnNpbmdsZUdlbmRlciYmKHI9ImZlbWFsZSIsIlRFTk9SIj09PWkudm9pY2VJZCYmKG89Ljg5KSwiR0lBTlQiPT09aS52b2ljZUlkJiYobz0uNzkpKSwiS0lUVEVOIj09PWkudm9pY2VJZCYmKHQ9dC5yZXBsYWNlKC9cUysvZywibWVvdyIpLG49dGhpcy5MQU5HVUFHRV9JTkZPW3RoaXMuREVGQVVMVF9MQU5HVUFHRV0uc3BlZWNoU3ludGhMb2NhbGUpO2xldCBhPSExLEI9IiIsUT0yNTA7dGhpcy5QRU5HVUlOTU9EX1ZPSUNFUy5pbmNsdWRlcyhpLnZvaWNlSWQpJiYoYT0hMCxuPXRoaXMuX2dldFBlbmd1aW5Nb2RTeW50aExvY2FsZSgpLEI9dGhpcy5QRU5HVUlOTU9EX1ZPSUNFX01BUFtpLnZvaWNlSWRdLFE9dGhpcy5QRU5HVUlOTU9EX1ZPSUNFX1ZPTFVNRVNbaS52b2ljZUlkXSk7bGV0IHU9IiI7dT1hPyIiLmNvbmNhdCgiaHR0cHM6Ly9nZXh0YXBpLmRlcnB5Z2FtZXIyMTQyLmNvbSIsIi90dHMiKToiIi5jb25jYXQoImh0dHBzOi8vc3ludGhlc2lzLXNlcnZpY2Uuc2NyYXRjaC5taXQuZWR1IiwiL3N5bnRoIiksYT8odSs9Ij9sYW5nPSIuY29uY2F0KG4pLHUrPSImdm9pY2U9Ii5jb25jYXQoQikpOnUrPSI/bG9jYWxlPSIuY29uY2F0KG4pLHUrPSImZ2VuZGVyPSIuY29uY2F0KHIpO2xldCBsPTEyODtyZXR1cm4gYSYmKGw9NTEyKSx1Kz0iJnRleHQ9Ii5jb25jYXQoZW5jb2RlVVJJQ29tcG9uZW50KHQuc3Vic3RyaW5nKDAsbCkpKSwibnVtYmVyIj09dHlwZW9mIGkuc3BlZWQmJihvKj1pLnNwZWVkLG89RShvKSksZyh1LHt9LDFlNCkudGhlbihBPT57aWYoMjAwIT09QS5zdGF0dXMpdGhyb3cgbmV3IEVycm9yKCJIVFRQICIuY29uY2F0KEEuc3RhdHVzLCIgZXJyb3IgcmVhY2hpbmcgdHJhbnNsYXRpb24gc2VydmljZSIpKTtyZXR1cm4gQS5hcnJheUJ1ZmZlcigpfSkudGhlbihBPT57Y29uc3QgZT17ZGF0YTp7YnVmZmVyOkF9fTtyZXR1cm4gdGhpcy5ydW50aW1lLmF1ZGlvRW5naW5lLmRlY29kZVNvdW5kUGxheWVyKGUpfSkudGhlbihBPT57dGhpcy5fc291bmRQbGF5ZXJzLnNldChBLmlkLEEpLEEuc2V0UGxheWJhY2tSYXRlKG8pO2NvbnN0IGU9dGhpcy5ydW50aW1lLmF1ZGlvRW5naW5lLmNyZWF0ZUVmZmVjdENoYWluKCk7cmV0dXJuIGUuc2V0KCJ2b2x1bWUiLFEpLEEuY29ubmVjdChlKSxBLnBsYXkoKSxuZXcgUHJvbWlzZShlPT57QS5vbigic3RvcCIsKCk9Pnt0aGlzLl9zb3VuZFBsYXllcnMuZGVsZXRlKEEuaWQpLGUoKX0pfSl9KS5jYXRjaChBPT57Yy53YXJuKEEpfSl9fUEuZXhwb3J0cz1RfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDMpLGk9dCgxKSxyPXQoMiksbz10KDUpLHM9dCg1NiksYT10KDkwKSxCPXQoNCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5fdmlld2VyTGFuZ3VhZ2VDb2RlPXRoaXMuZ2V0Vmlld2VyTGFuZ3VhZ2VDb2RlKCksdGhpcy5fc3VwcG9ydGVkTGFuZ3VhZ2VzPVtdLHRoaXMuX3JhbmRvbUxhbmd1YWdlQ29kZT0iZW4iLHRoaXMuX3RyYW5zbGF0ZVJlc3VsdD0iIix0aGlzLl9sYXN0TGFuZ1RyYW5zbGF0ZWQ9IiIsdGhpcy5fbGFzdFRleHRUcmFuc2xhdGVkPSIifXN0YXRpYyBnZXQgU1RBVEVfS0VZKCl7cmV0dXJuIlNjcmF0Y2gudHJhbnNsYXRlIn1nZXRJbmZvKCl7cmV0dXJuIHRoaXMuX3N1cHBvcnRlZExhbmd1YWdlcz10aGlzLl9nZXRTdXBwb3J0ZWRMYW5ndWFnZXModGhpcy5nZXRWaWV3ZXJMYW5ndWFnZUNvZGUoKSksdGhpcy5fcmFuZG9tTGFuZ3VhZ2VDb2RlPXRoaXMuX3N1cHBvcnRlZExhbmd1YWdlc1tNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqdGhpcy5fc3VwcG9ydGVkTGFuZ3VhZ2VzLmxlbmd0aCldLnZhbHVlLHtpZDoidHJhbnNsYXRlIixuYW1lOkIoe2lkOiJ0cmFuc2xhdGUuY2F0ZWdvcnlOYW1lIixkZWZhdWx0OiJUcmFuc2xhdGUiLGRlc2NyaXB0aW9uOiJOYW1lIG9mIGV4dGVuc2lvbiB0aGF0IGFkZHMgdHJhbnNsYXRlIGJsb2NrcyJ9KSxibG9ja0ljb25VUkk6ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRkFBQUFCUUNBWUFBQUNPRWZLdEFBQUFDWEJJV1hNQUFCWWxBQUFXSlFGSlVpVHdBQUFOK1VsRVFWUjRBZTFjZTJ4VDF4bi9Ua2hxNGhxSEpLUkxEQWxRR0krR1VmRmMxNEhhTG14dUdkMGFiOTNHZ0s2Vm1tMDF5OUJVc2FVMFJmeVJGVGFrYVJIcTNTbzZqVmFwV0VVeGE5ZFJ1VTh4NklBR0NvTzZ3YTFLWGlTUU9FOWpraml2Ty8ydTd5V091ZmY2WHZ2ZWtGYjVTVWR4N09ON3Yvdno5enJuTytjd251ZHBBb2tqWllLNzVEQkJZSktZSURCSlRCQ1lKQ1lJVEJKZk9nSVpZemJHV0E1akxKOHhObS96NXMzMzRhLzRQMW9tWXl6TnNQdDlXZElZeGhpVUlkL2o4YXpQejg5Zlk3VmFGNmFtcGpxaSs0VEQ0UXZkM2QwZjd0Ky9meC9IY1RWRTFNN3ovRUJTOTlWRG9DaWtUV3pXTWRUZ1lTTHFJYUlRR3Mvend6S3lPYXFycTErYU9uVnFVVVpHQnFXbnA1UEZZcUcwdERRYUhoNm12cjQrR2h3Y3BGQW9KTFNlbnA0UDkrN2RXOFp4M0ZtZTV6c1RGU3hWYTBlb3Z0UHBuTDFseTVZZnpKZ3h3Mld4V0JZa2V0TkVBTzI1ZE9tU3A3S3k4aUJqckZibW9XMTJ1NzBvT3p1Yk1qTXpSMzJRa3BKQ1ZxdFZlRzIzMjJsZ1lJQUNnY0RLMHRMUzErNisrKzR5eHBpSDUva3JDUWtHRFl6WGlDaTNxcXJLWFZOVEU3eDQ4U0xmMGRIQjkvWDE4V01GM0F2M3hMMGhBMlNCVE5GeUU5RTh2OS9QWDc1OFdiTlV1Q2ErNC9GNHltS3ZwN1hGMVVER1dLN0g0M20wc0xCd1owNU96ZzIvN2xnQXBvaUdlM2QyZGs1WnNXTEZjeDZQeDg0WTJ4ZWxPY0hXMXRhWGlPaVJjRGdzYUoyZ2xqYWIwR0RLc2NEMUprMmFoSGQzZWp3ZVBPdGVudWZiOVR5U0tvRXcyNnFxS2hmSXk4M05GZFQvWmlQNm9hdXFxb0tNc2YyaU9iZXVYcjI2dktLaXdwT1ZsVFhGYnJmYjgvTHlGdWJrNUt5QnUxSDY4YVZuR2g0ZTN1WjJ1MDh5eG83cENpeEtxZ3JYNFhRNmw4SmtvT3JqRFpBSnNrRkd5Qm9sdDBVTWNHaGdKMTl5UDJybTNkRFF3Sjg1Yytha1hsTldJOUIrK1BEaDM4UHZqRmRBTnNnSVdWVWZrc2hlVVZIeGZaRFkzZDB0K3pUOS9mMkNQM1M3M2ZlSldZWkZDNEZxSm14RHRKMDZkYXBoUm51aWx1aHJEcUpiTGNaY0Q3SkJSaUo2RGo1UXJnOWpESGZMaGxtM3RiVWRzbGdzajhpNUl2aEkrTXBObXphVkxscTB5Q04rOXdNaUN2QThIMUtTUVkxQUszeUhGUDZUaGZjVG91ZVBFYVZOSXRyekk2TGJwaVIvVGNnbXBsT3lRbUxFNFhRNkMzZnYzdjB5K2lFUUliZ2dqWkVMS2lCMit2VHB4WGw1ZWNVSVJENmZyL25Rb1VOdXh0amJQTS8zeU4xRExSRVdQc05OalVCTkM5SGdNRkVLSTJxNWFzZ2xvMlZUZW83c2lvcUtQNmFucHd0QlpPYk1tWlNmbnk5TEhva1JHNStqbjhQaG9GdHV1Y1ZSWEZ6TVFkbVZaUGl5VHlha0libEdCcUUzL1FLWklCTERRYWZUbWF2VVQvTklSQTNYd2tTbEI0amFGRDNGQ1BxSGlKNStYYjNQTkJ2Um5vZU44NVVZeWlVQ21ESGc5WG9Wbjh3UURUeFJSOVJ4alFqeExsNERnZkg2NEZxNHBnRVk2T2pvT05UZTNxNmJSUFRIOXpCbUZzZmdzakJFQTR2bUUva3VFMzBlaVB6Zk4wQjBXWXlKR2VsRVdRcHg2RkpYaE5DMEZLSWNHOUZrMFRVVlpFV3VhUUJhZCt6WVViRjc5KzZGalkyTkMrRGZwQkdLR2tCZVkyTWpCWVBCQzJWbFpVOWcxc1pVQW9GZjN6dnlHaWE5L3U4UmJScm1pU29mdnJHLzFJZUVhRW4wL0UrTmttUUVtTFZoalBtSWFBTWlzUllTbzhuYnVuWHJCcS9YNitONVBxelUzNVFnQXQ4MTc3Ykk2NTUrb3ZQTk4vWjUweGVKeUl5SWxzd3dRNG9JOFBBZ0FXU0FGSkNqWk01NnlTTXpvL0RQN2lKS1RTRWFHaWJpL2pQNk0yamZ3Yk5FUXp6UnBCU2luNjh5UzRvSXRKQ1lDSGxrSm9FWWNXU0t2dTlLa09qd3h5T2Y3VDlGMURzUTBiNkNUR09TNm5pUUl4RUpOU1ZCSGhucEErWHdtMjhSUGZPdlNBTDl0K05FeTJjU2hjSkVyNStQK0VjUStQVDlaa293R2lCRjhvbElzTVBoY0JGbXJudDdlNFZvaTRDaGh6d3ltMEJvWVdGZXhBY09EQkdWdlViVTNSc2hieElqV3Jkb2JMUXZHaEtKWHErM3hPMTJ6MXEzYnQyYU45NTQ0eDJPNDVBNE5lc2hqOHdtRU5qbUpIcjhaYUpRLzBpaXpjUmsrZkZ2bW4xM2VZZ2sxVExHV2ppT3d4UVdLWTExNDhIMG9Sd2lNb2hpVVlreThPejN6TDV6ZklBMHFTVjZEZE0xOE5XUGlGNCtGWG5Ob2doODRoOUVXOWNRM1RWN3BDK2NlVlRWVE5Qb29hNU9HTExNWWtnbUUwZmNxcDhTVENQd1lodlJuOTRqYXVxS0JCSEpiT0VENFE4eEF0bjFGdEg4cnhBOVdVU1VOdGhKaVF5NVpzMmFSWDYvMzV1c3ZCcXFmckpRckF1am11LzMrLzN6NXMzVEpRZ0N4c0V6UlA5cml1U0FVc0JZWGhDSnlzQ1dWeVArRUhrZ2lBMEhyOUQ5WHczUy9RdUpKbHZTaElsU2NhNHZBU3IwQTVNRzBQaXVyaTY4dm5yNjlPbXlqUnMzYWlwMUdxYUJ5UE5lUFJ1WkNNRHdUU0l1UFkxb3kzMmpUZldGRFVRdm5pQjY3UnpSdGE0cnREd3ZTTjh0SkJyblZUOVpHRUlncHVwZitDL1JnR2g5MENwTUVLd3RKRnEvWEg1YUNpT1ZiMHp2cEgrZmlwRDNCYWo2eVVLTlFJRU9xTGNXVTRJUHg5QU5HdWU2aytpQlF2WDVQUGk2bEhEN2RjMGJEK1JKZ0N4RFEwTzBiTm15WFU2bjh3UmpyRnN4c0toVXNoem56cDJyMFZyU2JBbnkvT2NCN2VVN1ZNZFFCZnVpVi8zVThzQVFvaEljcXhaZ1JISDdOTzIvTWxJVkVpdHI0eFZSVlQrYmtvaXFCQ0trSXlwMWRpYThlRWtSaUhva1Z0YkdLK0pWL1ZRSmhNMTd2ZDVhaFBSQUlJQ1pDa01mVThyM3hpcFZTUVFhcW43cVVSalJCMHUvRU5JUmxlQlliMGFhRVErQnRrNHFmWExucUY3Ym4vb0YzYkZnanVuM2pqc1dSaDdrY3JuMlZWZFhiMjVwYWJsYVcxdUxYT2w2eFdvODRMRDM2QTFTSERsNmFrd2swNVFIZ2tUa1F3anBzUXNzdFNhL1Y2NWNHZVVHTUliRk1Nd0l5SkZWZmRwSGoyem9wVnV0NlliY1F3bWFaMk5nemw2djkremF0V3Yvc0hqeDR1OVVWbFlLQXpNVW9PTUI1SFYxZFYwOWNPREFRL05GT0oxT3B4RVBBS0o2ZXZ0dWVCL3ZuVHJ0TStJV3F0QTFuWVhBd3ZNODFHZ0FpM0NVRmk1S1FLQm9ibTRXeUR0NDhPQ204dkx5OTNtZS94UU5TbWpFQXh3NU5xSjkxdlRKUXBOUS9kRTRJNUFpa3d4V2p1UFdaR1ZsRldNOXNoTGdJK3ZyNnpIRGNvSGp1QWRGOGd3TjVkZDZldWxVRkVrcmxoVUtUUUkrUTRBeEU0bE1xT2FzV3JYcWFmZzl1UlJFcXVpRHZLYW1wcGUyYmR2Mmt6MTc5cHd3bWp5UzhYM0xseTRTV2pTcVQzOHMvMldEa01oa2dnVUJKSGJzQ3VJUW5kSDYrL3Vianh3NThqdTMyLzBlWEtDZUNVbzlpRGJmYWRNeXIyc2Z6Rmp5aTRmZk9rWnJuYXROb2k4eEFvWDFKamFiclJoRG5laFpaQkRuOS92M3VGeXVWK0l0VEV3V2RRM05WTjl3K2ZwVlZpd2RNVjBRZWVUWWFlRjFXMXVuMEhkV2djTm9FUVFrWXNKZDI3ZHZmeGErN2RLbFM5VFEwTkJjVjFkMzZPVEprNXNMQ3d0WHVWd3VqdWY1V2pQSkl4bnp2V2YxOHV1dlk4MzRUWms4MFNqbzFrQnhkUExwNHNXTGl6Qm5LcjROZXducUxRa21nMWdDeTU3NXMrTFZrT284VVdLT0hBbFY1Y1NBZ0dtYWRuRy9XV0NzeVpQTC9aU0F2bWFOVEhScm9MaG8yeEZkbEdhTVhSU0R4WmlRR0p2ZjNiSGdkdGwrbjF5NE9PbzcwV1p1RkhRUkNQS3dhSHZYcmwxL3NWcXRLN0VzWXM2Y09kc2VlK3l4ZDh2THkzK0xpci9aSkNLdmk4NzlaaGJrMGZhbmZpbmI5MWRQN2hTQ0NFWGxoRG5UakowTTBXekNFbmxZWjVlWm1ibHk3dHk1d29MczJiTm5ZenhjaFBmeHVhaWhwaUUycjd0bmxiSldSVWRtTWlrbjFFUmdOSGwydTMzVUlrVU01ZkEvM2g4TEVwSFhSV1BGc2tXS2ZXTk5OdmE3UmtETFprTkY4aVRnZjd5UEZhRG9oOVZQWnBuenZWRWFaN1ZPVmpWSjVINC9mT2piUm9zd0duRzJTSUc4cFNndTFkWFY4VU5EUTZwRkdIeU9mdWd2N21GVDNDNUZSSE5SVkJyTGJiTjZBZGtnSTJSTlpLK2NMdklreUpDWW9uQjlYVlcvbXdISUJoa2hheUpWdVd4RVd5V3pWWUpremphYmJjR09IVHZLVWJCVDZLcXI2bmN6QU5rZ285bzJCelZXYkVoVk1HV2xsYnpyRjAxSklYd1BVMTZJTXdyZFRLMzZKUXV4YkhFVk1pWkVvTlBwRkthYUU2MmF4U1BkN0twZk1vQXNrQW15UVVhMTJTVEZLT3oxZWdPRGc0UE45ZlgxRHF4YjBUSjFMd0cvSHVZRWc4SGd1NWk5VWVvM0hxdCtrQjNrK1h5K3A4UVZXcXJtb1piR3RHT3JKM1lyTmpjM082U3RvbmhBT1RLeDRoMjFEMHh2WVRZYTYrMHdPbEhiNVVNakJhdDlXTWlEdFNoZFhWMVR2a2pMMjFUUGpjRXBRSmlCNWpoT1dNMjhaTWtTVjBGQlFURzJnc29CSlUvTVFwOC9mLzV0dDl2OWdaNUYyMFllcTRMSlhsaE5QRWphUmpFTExFV3oxZWFZTlI1N0FsV3dZVHM4OGlKc2o1Y0RGZ3hoV3oyMjE4ZmJocTkwVG9ONHpnRitvYms0eWtSdms3YjJhem4rSkdhYmY3NTRiOW0wUzNjZXFQQ0F1VGlZQVFjMEtBR0NSNTN0SWdrbEhRS2g2UnlDWkZyMCtRaE5UVTF4ODFmME9YNzh1TWUwYzJOaTBJN2prbkRpVHpBWXhORWlOM1NBNlZnc0ZtR1Y1N2x6NTBvRGdjQTdmcjlmMkVyUTBkRnhsVEgyRVJFMW1WVW53VndsWSt6OWxwYVdCMHRLU3Y0YURvY1h3T1VvK1ZPa1c2RlFxSmpqT0k5NGdwRytGZnNKbUZrMlR2cUI2aXVkZ0NHWkJ6SjVhQ3NhUmlmNHp0R2pSMTlNOU5mV0thZGwzYnAxZCtKK3VHOWJXNXVpTnJhMnRrb2pqcG02NzVPZ2NMa1NpWHFHWWpCdmNXdzV6MndDK1JHZjZ1QTRicVBQNTJ2NjdMUFBaSW1NR3ZQcWxpdWhOZEt4cVVkdmIrOFVySkZSVzZWQU4yRXBtK2dtbWhsai95U2lEendlejQvbno1OWYydG5aNlpDT2hFSnFodlFGbFVhMW5GVUpDUzh5bHhZY3VkM3VtcEtTa2wyaFVHaWxKRlJxYWlwTm5qejUraEVqeUxPd29hKzd1MXRLcmsydDJNbklLbXlnWVl6aEJJNVhxcXFxSHBnelo4NGF1OTMrZFJ3cWdSUUdsVWF4enFNTFNSL0FLSjRHbWUxMnV4ZXVYNy8rMFl5TWpKV3hPUnhHTkQwOVBUV05qWTN2dUZ5dS9VVFVhRllRMFNpelJjd09wSVUwUTJKVlVmOFBhNkMvQVpHWll1cVNMK1ZrWWg2SC8zT1FTNDZGN3h2TE5uR1NlWktZT01VM1NVd1FtQ1FtQ0V3U0V3UW1pUWtDa3dFUi9SK2FFVDNsd0VJbFhnQUFBQUJKUlU1RXJrSmdnZz09IixtZW51SWNvblVSSToiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDZ0FBQUFvQ0FZQUFBQ00vcmh0QUFBQUNYQklXWE1BQUJZbEFBQVdKUUZKVWlUd0FBQUdBa2xFUVZSWWhlMVliVXhUVnhoK3JoMDJvMEt0a09FZ0tBNFU0eWVSV0NkZ3hEb3hDbkg2aDIyaXFTejc2YWFzWmxuaWp6a1RCbHZTNFRKL0xHYUpzbWl5RVNlNGhBVkp2TUpHeHdRaExLRUNjUldrcFdOWkVSczZDdGIyTG05N0MvZmUzbjZKeWZ6aGs1eTA5ejNuUFBlNTd6bm5QZTg1RE1keGVKNng2TGxXOTBMZ004QkxjaFIxZFhVWmVYbDViM0VjdCtwcFhzRXd6SEJmWDk4UFZWVlZZMEdibWpXMkFkZ3BhRllQNEp4VForaUx5Q1ZkSkZldVhObWRuNTlmbjU2ZW5yRmt5UklzV2hTZmszMCtIMXd1Rit4MisxaFBUNCsrb3FMaUppL3dFb0E4QUpzbFhTcWRPc09sbUFSV1YxZG5scGVYZDJabloyZkVLMHhPcU1WaUdXdG9hTmgrK3ZScGE5Q3VabzFaQUpva1FsYzVkWVlST1I2UkNxMVdXNTZXbGhaVjNIMEg4TzlzWklIRVFWekVLYlR6UW9vQlBCQ1l6NFRsRVQ0b0ZJb3NHdFpvT0hVTitQaDYxR1lnTHVJVTJ0U3NjU21BWXdBZUNjeDZOV3M4bzJhTnhWS09rRVVpOVI1NXF2NDI4Tmc3YjN2aUEvNmVBczdkbXJjdFZnRDZiWUJLR1o2TEI0bXJrN0Yvd2hjbW9rQXBmaDhCV3U2RzJtYzhBRHNrdHVXbUFidHpvekdpTFVKZHU5UVFWU0M5OEpVa1lOZ0JmUHNib0g0WitHaFBvSzYyRlppYUFVN3NDclRabUI1VkhNM0JQalZyckFSd1VWTDFCNENEMHZZeExWVjY4WUZOUUlJQ2NMcm43U1JPdFRqd0ViR0lFNGlrc0ZJcEVWZnMxQmtlU2R2R0ZVc09iQXo4R204Q05UY0MvNDlxNDJFSUVia0x3S2ZoeENHV0lSWkMvenJRL2lmZ2NBV01LNVlCK3pjOG5VQmVaRnVVT1JtZlFJcC9Qc0hHTS8wNFlNdGE1b1BUNmNUczdDdzhIbytvajl2dHptbG9hQ2dQWlF0QXBWSTk2ZWpvNksydHJSM2xPTTRuclJmdEpDekxmcTNUNlk3TENmdnVOdERMN3dlcGZLZ2tUejZaZGVIZHplUFlscTMweHoybFVpbnRIaEgwVWJRMTJteTIrb0tDZ3VNY3g3bUU3YU9IbVdIZ3N4dnp6elFQM3lzTXhNZnp0MmJ4S21OSHlaYmxTRTVPamt0WUVJbUppZEJvTkZDcjFmck96czVraG1IZTRUaHVicDhTQ1ZRb0ZCd05VVUpDd3B5TndzZnlaR0JET3ZCMmZ1Q1pRQUg1NktZSktKVXBUeTFPQ09KWXZYcjFvY2JHeGpJQVB3YXJSS3ZZWnJOZG41aVlFSFY4TFJXNGNCajRvSGhlWEJEVDA5UFBSRndReEtYUmFJUXBtVmpna1NOSGZyRmFyZGNtSnlkaklxU01SZWh0T2Z6am1NVFptbS84aGY1SEFuRjV2VjdSVmljU3lIR2NSNnZWSGg0WUdQaktZckZNa1RlbHE1SkFIMEIxTXpNelVUK2l1NmNmZHdmdit3djlqeGNoZ1pvbWFFRkJ3Y21jbkp4VlkyTmpYUXFGUWxRL1BqNk8vdjcrczJheitVMkh3OUVjN1gzdEhYZm0vdi9jMmhHM3dMQ3J1TG01K1ZCR1JvWTJtSkdRSjBuYzRPRGdxWktTa2pxS1dTekw3b2xFUGpKcXg0UFJ2NUNhcXZFL094eVRmbHZXaXRqM3hiQmJuVXFsMmtSeGpZVFJjQTRNREhSMWQzZnJndUppSVcvL05lQzkvU1ZGMkxwbHZjZ1dLOEo2c0tXbDVVdVZTclhPNC9IWUhqNTgrRk5aV1ZrTHgzSFQ4UnowdTN2Ti90OEhvM2FSYUgzRmdZVUxyS21wb2RUOGplQnp2RGNRM1QxbS81RDZSWFgwek5tbjNUUCt1cTM1NnhjbWtFL05Ud0xvYytvTVRYR3BBM0NuTjdCaTk5SHc1czhQTDRtbHVsZ0Z5czVCWGx3Ym40STNxbG5qc1hnRkJyMjJmKzhPckZ1YjdTLzc5dTRRMWNXQ0VBOEt4QW1QaFJmVnJCRnk1MWNLMW5KbmorL3J2d2l4MGVxVnN3dTVwSkR6b1BUTUtoU1pKelFvbFVvTFpTTFBDc1JGbkVJNk9ZRTdJN3hQZEdZb0tpcTZZTFZhQnlsbFdpaUlnN2lJTTVyQVlCb3VCQjJ5cTV3NmcraUFUV0ducWFtcFpHaG9xSXRpSlNVUDRZcmNSOUNRVWgzMUpRN2lJazVobTdBWG1QeGRpcDUvZE5JVUNuZHVZQmdtOGZMbHk5dHpjM05Md3psU3FWVHVXN05telZwaFFrdWJ3TDE3OSt4ZFhWM0hLaXNyVFZKeGlKS3dudUdIVk0yWE5qVnJQQ2gzaDhJVDMrU0xMS3FycSt0S1MwdXZybHk1VWtzSkt2anNKU2twS2QzcjlUcmt4Q0dTQnhId0lvV1hjN3pBSU9pSU9PTFVHVUxPc05IQU1JelNaREo5bnBtWmVTSWxKY1dmVGRQUW0weW04enFkN24yNTdoR1BuWHhZeWVQdjhweThtVmI0MGppMStVR1pVbUZoNFlldHJhMWJ6R2J6dGVIaDRTbEtRTnh1OTYxd2ZmN1hTM1NhdS93MGM0VkxRRjdjOGk4SUFQNERjSEt0aC80VXI3TUFBQUFBU1VWT1JLNUNZSUk9IixibG9ja3M6W3tvcGNvZGU6ImdldFRyYW5zbGF0ZSIsdGV4dDpCKHtpZDoidHJhbnNsYXRlLnRyYW5zbGF0ZUJsb2NrIixkZWZhdWx0OiJ0cmFuc2xhdGUgW1dPUkRTXSB0byBbTEFOR1VBR0VdIixkZXNjcmlwdGlvbjoidHJhbnNsYXRlIHNvbWUgdGV4dCB0byBhIGRpZmZlcmVudCBsYW5ndWFnZSJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e1dPUkRTOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZTpCKHtpZDoidHJhbnNsYXRlLmRlZmF1bHRUZXh0VG9UcmFuc2xhdGUiLGRlZmF1bHQ6ImhlbGxvIixkZXNjcmlwdGlvbjoiaGVsbG86IHRoZSBkZWZhdWx0IHRleHQgdG8gdHJhbnNsYXRlIn0pfSxMQU5HVUFHRTp7dHlwZTpuLlNUUklORyxtZW51OiJsYW5ndWFnZXMiLGRlZmF1bHRWYWx1ZTp0aGlzLl9yYW5kb21MYW5ndWFnZUNvZGV9fX0se29wY29kZToiZ2V0Vmlld2VyTGFuZ3VhZ2UiLHRleHQ6Qih7aWQ6InRyYW5zbGF0ZS52aWV3ZXJMYW5ndWFnZSIsZGVmYXVsdDoibGFuZ3VhZ2UiLGRlc2NyaXB0aW9uOiJ0aGUgbGFuZ3VnZSBvZiB0aGUgcHJvamVjdCB2aWV3ZXIifSksYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOnt9fV0sbWVudXM6e2xhbmd1YWdlczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuX3N1cHBvcnRlZExhbmd1YWdlc319fX1fZ2V0U3VwcG9ydGVkTGFuZ3VhZ2VzKEEpe3JldHVybiBhLm1lbnVNYXBbQV0ubWFwKEE9Pih7dGV4dDpBLm5hbWUsdmFsdWU6QS5jb2RlfSkpfWdldFZpZXdlckxhbmd1YWdlKCl7dGhpcy5fdmlld2VyTGFuZ3VhZ2VDb2RlPXRoaXMuZ2V0Vmlld2VyTGFuZ3VhZ2VDb2RlKCk7Y29uc3QgQT1hLm1lbnVNYXBbdGhpcy5fdmlld2VyTGFuZ3VhZ2VDb2RlXTtsZXQgZT1BLmZpbmQoQT0+QS5jb2RlPT09dGhpcy5fdmlld2VyTGFuZ3VhZ2VDb2RlKTtpZighZSYmYS5zY3JhdGNoVG9Hb29nbGVNYXBbdGhpcy5fdmlld2VyTGFuZ3VhZ2VDb2RlXSl7Y29uc3QgdD1hLnNjcmF0Y2hUb0dvb2dsZU1hcFt0aGlzLl92aWV3ZXJMYW5ndWFnZUNvZGVdO2U9QS5maW5kKEE9PkEuY29kZT09PXQpfWxldCB0PXRoaXMuX3ZpZXdlckxhbmd1YWdlQ29kZTtyZXR1cm4gZSYmKHQ9ZS5uYW1lKSx0fWdldFZpZXdlckxhbmd1YWdlQ29kZSgpe2NvbnN0IEE9W0Iuc2V0dXAoKS5sb2NhbGVdLmNvbmNhdChuYXZpZ2F0b3IubGFuZ3VhZ2VzKSxlPU9iamVjdC5rZXlzKGEubWVudU1hcCk7cmV0dXJuKEEucmVkdWNlKChBLHQpPT5BfHwoZS5pbmRleE9mKHQudG9Mb3dlckNhc2UoKSk+LTE/dDpBKSwiIil8fCJlbiIpLnRvTG93ZXJDYXNlKCl9Z2V0TGFuZ3VhZ2VDb2RlRnJvbUFyZyhBKXtjb25zdCBlPXIudG9TdHJpbmcoQSkudG9Mb3dlckNhc2UoKTtyZXR1cm4gYS5tZW51TWFwLmhhc093blByb3BlcnR5KGUpP2U6YS5uYW1lTWFwLmhhc093blByb3BlcnR5KGUpP2EubmFtZU1hcFtlXTotMSE9PWEucHJldmlvdXNseVN1cHBvcnRlZC5pbmRleE9mKGUpP2U6ImVuIn1nZXRUcmFuc2xhdGUoQSl7aWYoL15cZCskLy50ZXN0KEEuV09SRFMpKXJldHVybiBQcm9taXNlLnJlc29sdmUoQS5XT1JEUyk7aWYodGhpcy5fbGFzdFRleHRUcmFuc2xhdGVkPT09QS5XT1JEUyYmdGhpcy5fbGFzdExhbmdUcmFuc2xhdGVkPT09QS5MQU5HVUFHRSlyZXR1cm4gdGhpcy5fdHJhbnNsYXRlUmVzdWx0O2NvbnN0IGU9dGhpcy5nZXRMYW5ndWFnZUNvZGVGcm9tQXJnKEEuTEFOR1VBR0UpO2xldCB0PSIiLmNvbmNhdCgiaHR0cHM6Ly90cmFtcG9saW5lLnR1cmJvd2FycC5vcmcvdHJhbnNsYXRlLyIsInRyYW5zbGF0ZT9sYW5ndWFnZT0iKTt0Kz1lLHQrPSImdGV4dD0iLHQrPWVuY29kZVVSSUNvbXBvbmVudChBLldPUkRTKTtjb25zdCBuPXRoaXM7cmV0dXJuIHModCx7fSwxZTQpLnRoZW4oQT0+QS50ZXh0KCkpLnRoZW4oZT0+e2NvbnN0IHQ9SlNPTi5wYXJzZShlKS5yZXN1bHQ7cmV0dXJuIG4uX3RyYW5zbGF0ZVJlc3VsdD10LG4uX2xhc3RUZXh0VHJhbnNsYXRlZD1BLldPUkRTLG4uX2xhc3RMYW5nVHJhbnNsYXRlZD1BLkxBTkdVQUdFLHR9KS5jYXRjaChBPT4oby53YXJuKCJlcnJvciBmZXRjaGluZyB0cmFuc2xhdGUgcmVzdWx0ISAiLmNvbmNhdChBKSksIiIpKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDkxKSxpPXQoMykscj10KDEpLG89dCg3KSxzPXQoMiksYT10KDQpLEI9dCg5OCksYz10KDI1MCksZz17TU9USU9OOiJtb3Rpb24iLERJUkVDVElPTjoiZGlyZWN0aW9uIn0sRT17U1RBR0U6IlN0YWdlIixTUFJJVEU6InRoaXMgc3ByaXRlIn0sUT17T0ZGOiJvZmYiLE9OOiJvbiIsT05fRkxJUFBFRDoib24tZmxpcHBlZCJ9O2NsYXNzIHV7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5kZXRlY3Q9bmV3IGMsdGhpcy5fbGFzdFVwZGF0ZT1udWxsLHRoaXMuZmlyc3RJbnN0YWxsPSEwLHRoaXMucnVudGltZS5pb0RldmljZXMmJih0aGlzLnJ1bnRpbWUub24obi5QUk9KRUNUX0xPQURFRCx0aGlzLnVwZGF0ZVZpZGVvRGlzcGxheS5iaW5kKHRoaXMpKSx0aGlzLnJ1bnRpbWUub24obi5QUk9KRUNUX1JVTl9TVEFSVCx0aGlzLnJlc2V0LmJpbmQodGhpcykpLHRoaXMuX2xvb3AoKSl9c3RhdGljIGdldCBJTlRFUlZBTCgpe3JldHVybiAzM31zdGF0aWMgZ2V0IERJTUVOU0lPTlMoKXtyZXR1cm5bNDgwLDM2MF19c3RhdGljIGdldCBTVEFURV9LRVkoKXtyZXR1cm4iU2NyYXRjaC52aWRlb1NlbnNpbmcifXN0YXRpYyBnZXQgREVGQVVMVF9NT1RJT05fU1RBVEUoKXtyZXR1cm57bW90aW9uRnJhbWVOdW1iZXI6MCxtb3Rpb25BbW91bnQ6MCxtb3Rpb25EaXJlY3Rpb246MH19Z2V0IGdsb2JhbFZpZGVvVHJhbnNwYXJlbmN5KCl7Y29uc3QgQT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtyZXR1cm4gQT9BLnZpZGVvVHJhbnNwYXJlbmN5OjUwfXNldCBnbG9iYWxWaWRlb1RyYW5zcGFyZW5jeShBKXtjb25zdCBlPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO3JldHVybiBlJiYoZS52aWRlb1RyYW5zcGFyZW5jeT1BKSxBfWdldCBnbG9iYWxWaWRlb1N0YXRlKCl7Y29uc3QgQT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtyZXR1cm4gQT9BLnZpZGVvU3RhdGU6US5PRkZ9c2V0IGdsb2JhbFZpZGVvU3RhdGUoQSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtyZXR1cm4gZSYmKGUudmlkZW9TdGF0ZT1BKSxBfXVwZGF0ZVZpZGVvRGlzcGxheSgpe3RoaXMuc2V0VmlkZW9UcmFuc3BhcmVuY3koe1RSQU5TUEFSRU5DWTp0aGlzLmdsb2JhbFZpZGVvVHJhbnNwYXJlbmN5fSksdGhpcy52aWRlb1RvZ2dsZSh7VklERU9fU1RBVEU6dGhpcy5nbG9iYWxWaWRlb1N0YXRlfSl9cmVzZXQoKXt0aGlzLmRldGVjdC5yZXNldCgpO2NvbnN0IEE9dGhpcy5ydW50aW1lLnRhcmdldHM7Zm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKyspe2NvbnN0IHQ9QVtlXS5nZXRDdXN0b21TdGF0ZSh1LlNUQVRFX0tFWSk7dCYmKHQubW90aW9uQW1vdW50PTAsdC5tb3Rpb25EaXJlY3Rpb249MCl9fV9sb29wKCl7c2V0VGltZW91dCh0aGlzLl9sb29wLmJpbmQodGhpcyksTWF0aC5tYXgodGhpcy5ydW50aW1lLmN1cnJlbnRTdGVwVGltZSx1LklOVEVSVkFMKSk7Y29uc3QgQT1EYXRlLm5vdygpO251bGw9PT10aGlzLl9sYXN0VXBkYXRlJiYodGhpcy5fbGFzdFVwZGF0ZT1BKTtpZihBLXRoaXMuX2xhc3RVcGRhdGU+dS5JTlRFUlZBTCl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLnZpZGVvLmdldEZyYW1lKHtmb3JtYXQ6Qi5GT1JNQVRfSU1BR0VfREFUQSxkaW1lbnNpb25zOnUuRElNRU5TSU9OU30pO2UmJih0aGlzLl9sYXN0VXBkYXRlPUEsdGhpcy5kZXRlY3QuYWRkRnJhbWUoZS5kYXRhKSl9fV9idWlsZE1lbnUoQSl7cmV0dXJuIEEubWFwKChBLGUpPT57Y29uc3QgdD17fTtyZXR1cm4gdC50ZXh0PUEubmFtZSx0LnZhbHVlPUEudmFsdWV8fFN0cmluZyhlKzEpLHR9KX1fZ2V0TW90aW9uU3RhdGUoQSl7bGV0IGU9QS5nZXRDdXN0b21TdGF0ZSh1LlNUQVRFX0tFWSk7cmV0dXJuIGV8fChlPW8uc2ltcGxlKHUuREVGQVVMVF9NT1RJT05fU1RBVEUpLEEuc2V0Q3VzdG9tU3RhdGUodS5TVEFURV9LRVksZSkpLGV9c3RhdGljIGdldCBTZW5zaW5nQXR0cmlidXRlKCl7cmV0dXJuIGd9Z2V0IEFUVFJJQlVURV9JTkZPKCl7cmV0dXJuW3tuYW1lOmEoe2lkOiJ2aWRlb1NlbnNpbmcubW90aW9uIixkZWZhdWx0OiJtb3Rpb24iLGRlc2NyaXB0aW9uOidBdHRyaWJ1dGUgZm9yIHRoZSAidmlkZW8gW0FUVFJJQlVURV0gb24gW1NVQkpFQ1RdIiBibG9jayd9KSx2YWx1ZTpnLk1PVElPTn0se25hbWU6YSh7aWQ6InZpZGVvU2Vuc2luZy5kaXJlY3Rpb24iLGRlZmF1bHQ6ImRpcmVjdGlvbiIsZGVzY3JpcHRpb246J0F0dHJpYnV0ZSBmb3IgdGhlICJ2aWRlbyBbQVRUUklCVVRFXSBvbiBbU1VCSkVDVF0iIGJsb2NrJ30pLHZhbHVlOmcuRElSRUNUSU9OfV19c3RhdGljIGdldCBTZW5zaW5nU3ViamVjdCgpe3JldHVybiBFfWdldCBTVUJKRUNUX0lORk8oKXtyZXR1cm5be25hbWU6YSh7aWQ6InZpZGVvU2Vuc2luZy5zcHJpdGUiLGRlZmF1bHQ6InNwcml0ZSIsZGVzY3JpcHRpb246J1N1YmplY3QgZm9yIHRoZSAidmlkZW8gW0FUVFJJQlVURV0gb24gW1NVQkpFQ1RdIiBibG9jayd9KSx2YWx1ZTpFLlNQUklURX0se25hbWU6YSh7aWQ6InZpZGVvU2Vuc2luZy5zdGFnZSIsZGVmYXVsdDoic3RhZ2UiLGRlc2NyaXB0aW9uOidTdWJqZWN0IGZvciB0aGUgInZpZGVvIFtBVFRSSUJVVEVdIG9uIFtTVUJKRUNUXSIgYmxvY2snfSksdmFsdWU6RS5TVEFHRX1dfXN0YXRpYyBnZXQgVmlkZW9TdGF0ZSgpe3JldHVybiBRfWdldCBWSURFT19TVEFURV9JTkZPKCl7cmV0dXJuW3tuYW1lOmEoe2lkOiJ2aWRlb1NlbnNpbmcub2ZmIixkZWZhdWx0OiJvZmYiLGRlc2NyaXB0aW9uOidPcHRpb24gZm9yIHRoZSAidHVybiB2aWRlbyBbU1RBVEVdIiBibG9jayd9KSx2YWx1ZTpRLk9GRn0se25hbWU6YSh7aWQ6InZpZGVvU2Vuc2luZy5vbiIsZGVmYXVsdDoib24iLGRlc2NyaXB0aW9uOidPcHRpb24gZm9yIHRoZSAidHVybiB2aWRlbyBbU1RBVEVdIiBibG9jayd9KSx2YWx1ZTpRLk9OfSx7bmFtZTphKHtpZDoidmlkZW9TZW5zaW5nLm9uRmxpcHBlZCIsZGVmYXVsdDoib24gZmxpcHBlZCIsZGVzY3JpcHRpb246J09wdGlvbiBmb3IgdGhlICJ0dXJuIHZpZGVvIFtTVEFURV0iIGJsb2NrIHRoYXQgY2F1c2VzIHRoZSB2aWRlbyB0byBiZSBmbGlwcGVkIGhvcml6b250YWxseSAocmV2ZXJzZWQgYXMgaW4gYSBtaXJyb3IpJ30pLHZhbHVlOlEuT05fRkxJUFBFRH1dfWdldEluZm8oKXtyZXR1cm4gdGhpcy5maXJzdEluc3RhbGwmJih0aGlzLmdsb2JhbFZpZGVvU3RhdGU9US5PTix0aGlzLmdsb2JhbFZpZGVvVHJhbnNwYXJlbmN5PTUwLHRoaXMudXBkYXRlVmlkZW9EaXNwbGF5KCksdGhpcy5maXJzdEluc3RhbGw9ITEpLHtpZDoidmlkZW9TZW5zaW5nIixuYW1lOmEoe2lkOiJ2aWRlb1NlbnNpbmcuY2F0ZWdvcnlOYW1lIixkZWZhdWx0OiJWaWRlbyBTZW5zaW5nIixkZXNjcmlwdGlvbjoiTGFiZWwgZm9yIHRoZSB2aWRlbyBzZW5zaW5nIGV4dGVuc2lvbiBjYXRlZ29yeSJ9KSxibG9ja0ljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaVZWUkdMVGdpUHo0S1BITjJaeUIzYVdSMGFEMGlOREJ3ZUNJZ2FHVnBaMmgwUFNJME1IQjRJaUIyYVdWM1FtOTRQU0l3SURBZ05EQWdOREFpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJK0NpQWdJQ0E4SVMwdElFZGxibVZ5WVhSdmNqb2dVMnRsZEdOb0lEVXlMaklnS0RZM01UUTFLU0F0SUdoMGRIQTZMeTkzZDNjdVltOW9aVzFwWVc1amIyUnBibWN1WTI5dEwzTnJaWFJqYUNBdExUNEtJQ0FnSUR4MGFYUnNaVDVGZUhSbGJuTnBiMjV6TDFOdlpuUjNZWEpsTDFacFpHVnZMVk5sYm5OcGJtY3RRbXh2WTJzOEwzUnBkR3hsUGdvZ0lDQWdQR1JsYzJNK1EzSmxZWFJsWkNCM2FYUm9JRk5yWlhSamFDNDhMMlJsYzJNK0NpQWdJQ0E4WnlCcFpEMGlSWGgwWlc1emFXOXVjeTlUYjJaMGQyRnlaUzlXYVdSbGJ5MVRaVzV6YVc1bkxVSnNiMk5ySWlCemRISnZhMlU5SW01dmJtVWlJSE4wY205clpTMTNhV1IwYUQwaU1TSWdabWxzYkQwaWJtOXVaU0lnWm1sc2JDMXlkV3hsUFNKbGRtVnViMlJrSWlCemRISnZhMlV0YjNCaFkybDBlVDBpTUM0eE5TSStDaUFnSUNBZ0lDQWdQR2NnYVdROUluWnBaR1Z2TFcxdmRHbHZiaUlnZEhKaGJuTm1iM0p0UFNKMGNtRnVjMnhoZEdVb01DNHdNREF3TURBc0lERXdMakF3TURBd01Da2lJR1pwYkd3dGNuVnNaVDBpYm05dWVtVnlieUlnYzNSeWIydGxQU0lqTURBd01EQXdJajRLSUNBZ0lDQWdJQ0FnSUNBZ1BHTnBjbU5zWlNCcFpEMGlUM1poYkMxRGIzQjVJaUJtYVd4c1BTSWpSa1pHUmtaR0lpQnZjR0ZqYVhSNVBTSXdMakkxSWlCemRISnZhMlV0YkdsdVpXTmhjRDBpY205MWJtUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGljbTkxYm1RaUlHTjRQU0l6TWlJZ1kzazlJakUySWlCeVBTSTBMalVpUGp3dlkybHlZMnhsUGdvZ0lDQWdJQ0FnSUNBZ0lDQThZMmx5WTJ4bElHbGtQU0pQZG1Gc0xVTnZjSGtpSUdacGJHdzlJaU5HUmtaR1JrWWlJRzl3WVdOcGRIazlJakF1TlNJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW5KdmRXNWtJaUJ6ZEhKdmEyVXRiR2x1WldwdmFXNDlJbkp2ZFc1a0lpQmplRDBpTXpJaUlHTjVQU0l4TWlJZ2NqMGlOQzQxSWo0OEwyTnBjbU5zWlQ0S0lDQWdJQ0FnSUNBZ0lDQWdQR05wY21Oc1pTQnBaRDBpVDNaaGJDMURiM0I1SWlCbWFXeHNQU0lqUmtaR1JrWkdJaUJ2Y0dGamFYUjVQU0l3TGpjMUlpQnpkSEp2YTJVdGJHbHVaV05oY0QwaWNtOTFibVFpSUhOMGNtOXJaUzFzYVc1bGFtOXBiajBpY205MWJtUWlJR040UFNJek1pSWdZM2s5SWpnaUlISTlJalF1TlNJK1BDOWphWEpqYkdVK0NpQWdJQ0FnSUNBZ0lDQWdJRHhqYVhKamJHVWdhV1E5SWs5MllXd2lJR1pwYkd3OUlpTkdSa1pHUmtZaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p5YjNWdVpDSWdZM2c5SWpNeUlpQmplVDBpTkNJZ2NqMGlOQzQxSWo0OEwyTnBjbU5zWlQ0S0lDQWdJQ0FnSUNBZ0lDQWdQSEJoZEdnZ1pEMGlUVEl5TGpZM01UazBOemNzTkM0ME1UazFOelkwT1NCTU1UWXVOU3c0TGpReE9Ua3hNams0SUV3eE5pNDFMRFl1TVNCRE1UWXVOU3cwTGpBNE9UYzJORFUwSURFMExqa3pOekU0TURZc01pNDFJREV6TERJdU5TQk1OQzR4TERJdU5TQkRNaTR3TnpZeE5ESXpOeXd5TGpVZ01DNDFMRFF1TURjMk1UUXlNemNnTUM0MUxEWXVNU0JNTUM0MUxERTBJRU13TGpVc01UVXVPVEkzTXprNE55QXlMakE0TkRRNU9ETTVMREUzTGpVeE1UZzVOekVnTkM0eExERTNMallnVERFekxERTNMallnUXpFMExqa3dNVFkyTURJc01UY3VOaUF4Tmk0MUxERTFMamswTmpVME5TQXhOaTQxTERFMElFd3hOaTQxTERFeExqY3hOamt3TkRnZ1RESXlMamMxTnpJME56a3NNVFV1TkRjeE1qVXpOU0JNTWpJdU9EVXpOVFV6TkN3eE5TNDFORFkwTkRZMklFTXlNaTQ0TnpNM09EZzJMREUxTGpVMk5qWTRNVGdnTWpJdU9UVXhOVE14TERFMUxqWWdNak1zTVRVdU5pQkRNak11TWpZMk9UZzJOU3d4TlM0MklESXpMalVzTVRVdU16Z3lOVEl3TnlBeU15NDFMREUxTGpFZ1RESXpMalVzTkM0NElFTXlNeTQxTERRdU9ETTJOelkxTXpnZ01qTXVORFF6T0RBMU9DdzBMamN3TlRZME5UWXpJREl6TGpNM01USTFNelVzTkM0MU5UY3lORGM0T0NCRE1qTXVNakkxT1RBMU5pdzBMak14TlRBd01UTTVJREl5TGprME1UVTVNemNzTkM0eU5UZ3hNemc1T1NBeU1pNDJOekU1TkRjM0xEUXVOREU1TlRjMk5Ea2dXaUlnYVdROUluWnBaR1Z2WHpNM1h5SWdabWxzYkQwaUl6UkVORVEwUkNJK1BDOXdZWFJvUGdvZ0lDQWdJQ0FnSUR3dlp6NEtJQ0FnSUR3dlp6NEtQQzl6ZG1jKyIsbWVudUljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaVZWUkdMVGdpUHo0S1BITjJaeUIzYVdSMGFEMGlNakJ3ZUNJZ2FHVnBaMmgwUFNJeU1IQjRJaUIyYVdWM1FtOTRQU0l3SURBZ01qQWdNakFpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJK0NpQWdJQ0E4SVMwdElFZGxibVZ5WVhSdmNqb2dVMnRsZEdOb0lEVXlMaklnS0RZM01UUTFLU0F0SUdoMGRIQTZMeTkzZDNjdVltOW9aVzFwWVc1amIyUnBibWN1WTI5dEwzTnJaWFJqYUNBdExUNEtJQ0FnSUR4MGFYUnNaVDVGZUhSbGJuTnBiMjV6TDFOdlpuUjNZWEpsTDFacFpHVnZMVk5sYm5OcGJtY3RUV1Z1ZFR3dmRHbDBiR1UrQ2lBZ0lDQThaR1Z6WXo1RGNtVmhkR1ZrSUhkcGRHZ2dVMnRsZEdOb0xqd3ZaR1Z6WXo0S0lDQWdJRHhuSUdsa1BTSkZlSFJsYm5OcGIyNXpMMU52Wm5SM1lYSmxMMVpwWkdWdkxWTmxibk5wYm1jdFRXVnVkU0lnYzNSeWIydGxQU0p1YjI1bElpQnpkSEp2YTJVdGQybGtkR2c5SWpFaUlHWnBiR3c5SW01dmJtVWlJR1pwYkd3dGNuVnNaVDBpWlhabGJtOWtaQ0krQ2lBZ0lDQWdJQ0FnUEdjZ2FXUTlJblpwWkdWdkxXMXZkR2x2YmlJZ2RISmhibk5tYjNKdFBTSjBjbUZ1YzJ4aGRHVW9NQzR3TURBd01EQXNJRFV1TURBd01EQXdLU0lnWm1sc2JDMXlkV3hsUFNKdWIyNTZaWEp2SWo0S0lDQWdJQ0FnSUNBZ0lDQWdQR05wY21Oc1pTQnBaRDBpVDNaaGJDMURiM0I1SWlCbWFXeHNQU0lqTUVWQ1JEaERJaUJ2Y0dGamFYUjVQU0l3TGpJMUlpQmplRDBpTVRZaUlHTjVQU0k0SWlCeVBTSXlJajQ4TDJOcGNtTnNaVDRLSUNBZ0lDQWdJQ0FnSUNBZ1BHTnBjbU5zWlNCcFpEMGlUM1poYkMxRGIzQjVJaUJtYVd4c1BTSWpNRVZDUkRoRElpQnZjR0ZqYVhSNVBTSXdMalVpSUdONFBTSXhOaUlnWTNrOUlqWWlJSEk5SWpJaVBqd3ZZMmx5WTJ4bFBnb2dJQ0FnSUNBZ0lDQWdJQ0E4WTJseVkyeGxJR2xrUFNKUGRtRnNMVU52Y0hraUlHWnBiR3c5SWlNd1JVSkVPRU1pSUc5d1lXTnBkSGs5SWpBdU56VWlJR040UFNJeE5pSWdZM2s5SWpRaUlISTlJaklpUGp3dlkybHlZMnhsUGdvZ0lDQWdJQ0FnSUNBZ0lDQThZMmx5WTJ4bElHbGtQU0pQZG1Gc0lpQm1hV3hzUFNJak1FVkNSRGhESWlCamVEMGlNVFlpSUdONVBTSXlJaUJ5UFNJeUlqNDhMMk5wY21Oc1pUNEtJQ0FnSUNBZ0lDQWdJQ0FnUEhCaGRHZ2daRDBpVFRFeExqTXpOVGszTXprc01pNHlNRGszT0RneU5TQk1PQzR5TlN3MExqSXdPVGsxTmpRNUlFdzRMakkxTERNdU1EVWdRemd1TWpVc01pNHdORFE0T0RJeU55QTNMalEyT0RVNU1ETXhMREV1TWpVZ05pNDFMREV1TWpVZ1RESXVNRFVzTVM0eU5TQkRNUzR3TXpnd056RXhPU3d4TGpJMUlEQXVNalVzTWk0d016Z3dOekV4T1NBd0xqSTFMRE11TURVZ1REQXVNalVzTnlCRE1DNHlOU3czTGprMk16WTVPVE0zSURFdU1EUXlNalE1TVRrc09DNDNOVFU1TkRnMU5pQXlMakExTERndU9DQk1OaTQxTERndU9DQkROeTQwTlRBNE16QXdPU3c0TGpnZ09DNHlOU3czTGprM016STNNalVnT0M0eU5TdzNJRXc0TGpJMUxEVXVPRFU0TkRVeU5ERWdURGd1TmpJNE5qSXpPVFFzTmk0d09EVTJNalkzTnlCTU1URXVOREkyTnpjMk55dzNMamMzTXpJeU16TWdRekV4TGpRek5qZzVORE1zTnk0M09ETXpOREE1TVNBeE1TNDBOelUzTmpVMUxEY3VPQ0F4TVM0MUxEY3VPQ0JETVRFdU5qTXpORGt6TWl3M0xqZ2dNVEV1TnpVc055NDJPVEV5TmpBek5DQXhNUzQzTlN3M0xqVTFJRXd4TVM0M05Td3lMalFnUXpFeExqYzFMREl1TkRFNE16Z3lOamtnTVRFdU56SXhPVEF5T1N3eUxqTTFNamd5TWpneUlERXhMalk0TlRZeU5qZ3NNaTR5TnpnMk1qTTVOQ0JETVRFdU5qRXlPVFV5T0N3eUxqRTFOelV3TURZNUlERXhMalEzTURjNU5qZ3NNaTR4TWprd05qazFJREV4TGpNek5UazNNemtzTWk0eU1EazNPRGd5TlNCYUlpQnBaRDBpZG1sa1pXOWZNemRmSWlCemRISnZhMlV0YjNCaFkybDBlVDBpTUM0eE5TSWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQnpkSEp2YTJVdGQybGtkR2c5SWpBdU5TSWdabWxzYkQwaUl6UkVORVEwUkNJK1BDOXdZWFJvUGdvZ0lDQWdJQ0FnSUR3dlp6NEtJQ0FnSUR3dlp6NEtQQzl6ZG1jKyIsYmxvY2tzOlt7b3Bjb2RlOiJ3aGVuTW90aW9uR3JlYXRlclRoYW4iLHRleHQ6YSh7aWQ6InZpZGVvU2Vuc2luZy53aGVuTW90aW9uR3JlYXRlclRoYW4iLGRlZmF1bHQ6IndoZW4gdmlkZW8gbW90aW9uID4gW1JFRkVSRU5DRV0iLGRlc2NyaXB0aW9uOiJFdmVudCB0aGF0IHRyaWdnZXJzIHdoZW4gdGhlIGFtb3VudCBvZiBtb3Rpb24gaXMgZ3JlYXRlciB0aGFuIFtSRUZFUkVOQ0VdIn0pLGJsb2NrVHlwZTpyLkhBVCxhcmd1bWVudHM6e1JFRkVSRU5DRTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTB9fX0se29wY29kZToidmlkZW9PbiIsYmxvY2tUeXBlOnIuUkVQT1JURVIsdGV4dDphKHtpZDoidmlkZW9TZW5zaW5nLnZpZGVvT24iLGRlZmF1bHQ6InZpZGVvIFtBVFRSSUJVVEVdIG9uIFtTVUJKRUNUXSIsZGVzY3JpcHRpb246IlJlcG9ydGVyIHRoYXQgcmV0dXJucyB0aGUgYW1vdW50IG9mIFtBVFRSSUJVVEVdIGZvciB0aGUgc2VsZWN0ZWQgW1NVQkpFQ1RdIn0pLGFyZ3VtZW50czp7QVRUUklCVVRFOnt0eXBlOmkuU1RSSU5HLG1lbnU6IkFUVFJJQlVURSIsZGVmYXVsdFZhbHVlOmcuTU9USU9OfSxTVUJKRUNUOnt0eXBlOmkuU1RSSU5HLG1lbnU6IlNVQkpFQ1QiLGRlZmF1bHRWYWx1ZTpFLlNQUklURX19fSx7b3Bjb2RlOiJ2aWRlb1RvZ2dsZSIsdGV4dDphKHtpZDoidmlkZW9TZW5zaW5nLnZpZGVvVG9nZ2xlIixkZWZhdWx0OiJ0dXJuIHZpZGVvIFtWSURFT19TVEFURV0iLGRlc2NyaXB0aW9uOiJDb250cm9scyBkaXNwbGF5IG9mIHRoZSB2aWRlbyBwcmV2aWV3IGxheWVyIn0pLGFyZ3VtZW50czp7VklERU9fU1RBVEU6e3R5cGU6aS5TVFJJTkcsbWVudToiVklERU9fU1RBVEUiLGRlZmF1bHRWYWx1ZTpRLk9OfX19LHtvcGNvZGU6InNldFZpZGVvVHJhbnNwYXJlbmN5Iix0ZXh0OmEoe2lkOiJ2aWRlb1NlbnNpbmcuc2V0VmlkZW9UcmFuc3BhcmVuY3kiLGRlZmF1bHQ6InNldCB2aWRlbyB0cmFuc3BhcmVuY3kgdG8gW1RSQU5TUEFSRU5DWV0iLGRlc2NyaXB0aW9uOiJDb250cm9scyB0cmFuc3BhcmVuY3kgb2YgdGhlIHZpZGVvIHByZXZpZXcgbGF5ZXIifSksYXJndW1lbnRzOntUUkFOU1BBUkVOQ1k6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjUwfX19XSxtZW51czp7QVRUUklCVVRFOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6dGhpcy5fYnVpbGRNZW51KHRoaXMuQVRUUklCVVRFX0lORk8pfSxTVUJKRUNUOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6dGhpcy5fYnVpbGRNZW51KHRoaXMuU1VCSkVDVF9JTkZPKX0sVklERU9fU1RBVEU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczp0aGlzLl9idWlsZE1lbnUodGhpcy5WSURFT19TVEFURV9JTkZPKX19fX1fYW5hbHl6ZUxvY2FsTW90aW9uKEEpe2NvbnN0IGU9dGhpcy5ydW50aW1lLnJlbmRlcmVyLl9hbGxEcmF3YWJsZXNbQS5kcmF3YWJsZUlEXSx0PXRoaXMuX2dldE1vdGlvblN0YXRlKEEpO3JldHVybiB0aGlzLmRldGVjdC5nZXRMb2NhbE1vdGlvbihlLHQpLHR9dmlkZW9PbihBLGUpe3RoaXMuZGV0ZWN0LmFuYWx5emVGcmFtZSgpO2xldCB0PXRoaXMuZGV0ZWN0O3JldHVybiBBLlNVQkpFQ1Q9PT1FLlNQUklURSYmKHQ9dGhpcy5fYW5hbHl6ZUxvY2FsTW90aW9uKGUudGFyZ2V0KSksQS5BVFRSSUJVVEU9PT1nLk1PVElPTj90Lm1vdGlvbkFtb3VudDp0Lm1vdGlvbkRpcmVjdGlvbn13aGVuTW90aW9uR3JlYXRlclRoYW4oQSxlKXt0aGlzLmRldGVjdC5hbmFseXplRnJhbWUoKTtyZXR1cm4gdGhpcy5fYW5hbHl6ZUxvY2FsTW90aW9uKGUudGFyZ2V0KS5tb3Rpb25BbW91bnQ+TnVtYmVyKEEuUkVGRVJFTkNFKX12aWRlb1RvZ2dsZShBKXtjb25zdCBlPUEuVklERU9fU1RBVEU7dGhpcy5nbG9iYWxWaWRlb1N0YXRlPWUsZT09PVEuT0ZGP3RoaXMucnVudGltZS5pb0RldmljZXMudmlkZW8uZGlzYWJsZVZpZGVvKCk6KHRoaXMucnVudGltZS5pb0RldmljZXMudmlkZW8uZW5hYmxlVmlkZW8oKSx0aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLnZpZGVvLm1pcnJvcj1lPT09US5PTil9c2V0VmlkZW9UcmFuc3BhcmVuY3koQSl7Y29uc3QgZT1zLnRvTnVtYmVyKEEuVFJBTlNQQVJFTkNZKTt0aGlzLmdsb2JhbFZpZGVvVHJhbnNwYXJlbmN5PWUsdGhpcy5ydW50aW1lLmlvRGV2aWNlcy52aWRlby5zZXRQcmV2aWV3R2hvc3QoZSl9fUEuZXhwb3J0cz11fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDkzKSxpPXQoOSkscj1mdW5jdGlvbihBLGUsdCxvKXt2YXIgcyxhLEIsYztBLmF0dHJpYnV0ZXMuaWR8fChBLmF0dHJpYnV0ZXMuaWQ9e30sQS5hdHRyaWJ1dGVzLmlkLnZhbHVlPWkoKSksbnVsbCE9PShhPShzPUEuYXR0cmlidXRlcykueCkmJnZvaWQgMCE9PWF8fChzLng9e30pLG51bGwhPT0oYz0oQj1BLmF0dHJpYnV0ZXMpLnkpJiZ2b2lkIDAhPT1jfHwoQi55PXt9KTtjb25zdCBnPXtpZDpBLmF0dHJpYnV0ZXMuaWQudmFsdWUsb3Bjb2RlOkEuYXR0cmlidXRlcy50eXBlLnZhbHVlLGlucHV0czp7fSxmaWVsZHM6e30sbmV4dDpudWxsLHRvcExldmVsOnQscGFyZW50Om8sc2hhZG93OiJzaGFkb3ciPT09QS50YWdOYW1lLHg6QS5hdHRyaWJ1dGVzLngudmFsdWUseTpBLmF0dHJpYnV0ZXMueS52YWx1ZX07ZVtnLmlkXT1nO2ZvcihsZXQgdD0wO3Q8QS5jaGlsZHJlbi5sZW5ndGg7dCsrKXtjb25zdCBvPUEuY2hpbGRyZW5bdF07bGV0IHM9bnVsbCxhPW51bGw7Zm9yKGxldCBBPTA7QTxvLmNoaWxkcmVuLmxlbmd0aDtBKyspe2NvbnN0IGU9by5jaGlsZHJlbltBXTtpZighZS50YWdOYW1lKWNvbnRpbnVlO2NvbnN0IHQ9ZS50YWdOYW1lOyJibG9jayI9PT10P3M9ZToic2hhZG93Ij09PXQmJihhPWUpfXN3aXRjaCghcyYmYSYmKHM9YSksby50YWdOYW1lKXtjYXNlImZpZWxkIjp7dmFyIEUsUSx1LGw7Y29uc3QgQT1vLmF0dHJpYnV0ZXMubmFtZS52YWx1ZTtudWxsIT09KFE9KEU9by5hdHRyaWJ1dGVzKS5pZCkmJnZvaWQgMCE9PVF8fChFLmlkPXt2YWx1ZTppKCl9KTtjb25zdCBlPW8uYXR0cmlidXRlcy5pZC52YWx1ZTtsZXQgdD0iIjt0PW8uaW5uZXJIVE1MP28udGV4dENvbnRlbnQ6IiIsZy5maWVsZHNbQV09e25hbWU6QSxpZDplLHZhbHVlOnR9LG51bGwhPT0obD0odT1vLmF0dHJpYnV0ZXMpLnZhcmlhYmxldHlwZSkmJnZvaWQgMCE9PWx8fCh1LnZhcmlhYmxldHlwZT17fSk7Y29uc3Qgbj1vLmF0dHJpYnV0ZXMudmFyaWFibGV0eXBlLnZhbHVlOyJzdHJpbmciPT10eXBlb2YgbiYmKGcuZmllbGRzW0FdLnZhcmlhYmxlVHlwZT1uKTticmVha31jYXNlImNvbW1lbnQiOmcuY29tbWVudD1vLmF0dHJpYnV0ZXMuaWQudmFsdWU7YnJlYWs7Y2FzZSJ2YWx1ZSI6Y2FzZSJzdGF0ZW1lbnQiOntyKHMsZSwhMSxnLmlkKSxhJiZzIT09YSYmcihhLGUsITEsZy5pZCk7Y29uc3QgQT1vLmF0dHJpYnV0ZXMubmFtZS52YWx1ZTtnLmlucHV0c1tBXT17bmFtZTpBLGJsb2NrOnMuYXR0cmlidXRlcy5pZC52YWx1ZSxzaGFkb3c6YT9hLmF0dHJpYnV0ZXMuaWQudmFsdWU6bnVsbH07YnJlYWt9Y2FzZSJuZXh0IjppZighc3x8IXMuYXR0cmlidXRlcyljb250aW51ZTtyKHMsZSwhMSxnLmlkKSxnLm5leHQ9cy5hdHRyaWJ1dGVzLmlkLnZhbHVlO2JyZWFrO2Nhc2UibXV0YXRpb24iOmcubXV0YXRpb249bihvKX19fTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBKXJldHVybjtpZigib2JqZWN0IiE9dHlwZW9mIEEueG1sKXJldHVybjtyZXR1cm4gZnVuY3Rpb24oQSl7Y29uc3QgZT17fTtmb3IobGV0IHQ9MDt0PEEubGVuZ3RoO3QrKyl7Y29uc3Qgbj1BW3RdO2lmKCFuLnRhZ05hbWV8fCFuLmF0dHJpYnV0ZXMpY29udGludWU7Y29uc3QgaT1uLnRhZ05hbWU7ImJsb2NrIiE9PWkmJiJzaGFkb3ciIT09aXx8cihuLGUsITAsbnVsbCl9Y29uc3QgdD1bXTtmb3IoY29uc3QgQSBpbiBlKWUuaGFzT3duUHJvcGVydHkoQSkmJnQucHVzaChlW0FdKTtyZXR1cm4gdH0oKG5ldyBET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyhBLnhtbC5vdXRlckhUTUwsImFwcGxpY2F0aW9uL3htbCIpLmNoaWxkTm9kZXMpfX0sZnVuY3Rpb24oQSxlKXtsZXQgdD0wO2NvbnN0IG49e30saT0ib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93LnBlcmZvcm1hbmNlO2NsYXNzIHJ7Y29uc3RydWN0b3IoQSl7dGhpcy5pZD0tMSx0aGlzLnRvdGFsVGltZT0wLHRoaXMuc2VsZlRpbWU9MCx0aGlzLmFyZz1udWxsLHRoaXMuZGVwdGg9QSx0aGlzLmNvdW50PTB9fWNsYXNzIG97Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06ZnVuY3Rpb24oKXt9O3RoaXMucmVjb3Jkcz1bXSx0aGlzLmluY3JlbWVudHM9W10sdGhpcy5jb3VudGVycz1bXSx0aGlzLm51bGxGcmFtZT1uZXcgcigtMSksdGhpcy5fc3RhY2s9W25ldyByKDApXSx0aGlzLm9uRnJhbWU9QSx0aGlzLlNUQVJUPTAsdGhpcy5TVE9QPTF9c3RhcnQoQSxlKXt0aGlzLnJlY29yZHMucHVzaCgwLEEsZSxpLm5vdygpKX1zdG9wKCl7dGhpcy5yZWNvcmRzLnB1c2goMSxpLm5vdygpKX1pbmNyZW1lbnQoQSl7dGhpcy5pbmNyZW1lbnRzW0FdfHwodGhpcy5pbmNyZW1lbnRzW0FdPW5ldyByKC0xKSx0aGlzLmluY3JlbWVudHNbQV0uaWQ9QSksdGhpcy5pbmNyZW1lbnRzW0FdLmNvdW50Kz0xfWZyYW1lKEEsZSl7Zm9yKGxldCB0PTA7dDx0aGlzLmNvdW50ZXJzLmxlbmd0aDt0KyspaWYodGhpcy5jb3VudGVyc1t0XS5pZD09PUEmJnRoaXMuY291bnRlcnNbdF0uYXJnPT09ZSlyZXR1cm4gdGhpcy5jb3VudGVyc1t0XTtjb25zdCB0PW5ldyByKC0xKTtyZXR1cm4gdC5pZD1BLHQuYXJnPWUsdGhpcy5jb3VudGVycy5wdXNoKHQpLHR9cmVwb3J0RnJhbWVzKCl7Y29uc3QgQT10aGlzLl9zdGFjaztsZXQgZT0xO2ZvcihsZXQgdD0wO3Q8dGhpcy5yZWNvcmRzLmxlbmd0aDspaWYoMD09PXRoaXMucmVjb3Jkc1t0XSl7ZT49QS5sZW5ndGgmJkEucHVzaChuZXcgcihlKSk7Y29uc3Qgbj1BW2UrK107bi5pZD10aGlzLnJlY29yZHNbdCsxXSxuLmFyZz10aGlzLnJlY29yZHNbdCsyXSxuLnRvdGFsVGltZT10aGlzLnJlY29yZHNbdCszXSxuLnNlbGZUaW1lPTAsdCs9NH1lbHNle2lmKDEhPT10aGlzLnJlY29yZHNbdF0pdGhyb3cgdGhpcy5yZWNvcmRzLmxlbmd0aD0wLG5ldyBFcnJvcigiVW5hYmxlIHRvIGRlY29kZSBQcm9maWxlciByZWNvcmRzLiIpO3tjb25zdCBuPXRoaXMucmVjb3Jkc1t0KzFdLGk9QVstLWVdO2kudG90YWxUaW1lPW4taS50b3RhbFRpbWUsaS5zZWxmVGltZSs9aS50b3RhbFRpbWUsQVtlLTFdLnNlbGZUaW1lLT1pLnRvdGFsVGltZSxpLmNvdW50PTEsdGhpcy5vbkZyYW1lKGkpLHQrPTJ9fWZvcihsZXQgQT0wO0E8dGhpcy5pbmNyZW1lbnRzLmxlbmd0aDtBKyspdGhpcy5pbmNyZW1lbnRzW0FdJiZ0aGlzLmluY3JlbWVudHNbQV0uY291bnQ+MCYmKHRoaXMub25GcmFtZSh0aGlzLmluY3JlbWVudHNbQV0pLHRoaXMuaW5jcmVtZW50c1tBXS5jb3VudD0wKTtmb3IobGV0IEE9MDtBPHRoaXMuY291bnRlcnMubGVuZ3RoO0ErKyl0aGlzLmNvdW50ZXJzW0FdLmNvdW50PjAmJih0aGlzLm9uRnJhbWUodGhpcy5jb3VudGVyc1tBXSksdGhpcy5jb3VudGVyc1tBXS5jb3VudD0wKTt0aGlzLnJlY29yZHMubGVuZ3RoPTB9aWRCeU5hbWUoQSl7cmV0dXJuIG8uaWRCeU5hbWUoQSl9bmFtZUJ5SWQoQSl7cmV0dXJuIG8ubmFtZUJ5SWQoQSl9c3RhdGljIGlkQnlOYW1lKEEpe3JldHVybiJudW1iZXIiIT10eXBlb2YgbltBXSYmKG5bQV09dCsrKSxuW0FdfXN0YXRpYyBuYW1lQnlJZChBKXtmb3IoY29uc3QgZSBpbiBuKWlmKG5bZV09PT1BKXJldHVybiBlO3JldHVybiBudWxsfXN0YXRpYyBhdmFpbGFibGUoKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmdm9pZCAwIT09d2luZG93LnBlcmZvcm1hbmNlfX1vLlNUQVJUPTAsby5TVE9QPTEsQS5leHBvcnRzPW99LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNTgpLGk9dCg2MCk7QS5leHBvcnRzPUE9Pntjb25zdCBlPW5ldyBuKEEpLmdlbmVyYXRlKCksdD17fSxyPUEudGFyZ2V0LG89QT0+e2lmKEEuY2FjaGVkQ29tcGlsZVJlc3VsdClyZXR1cm4gQS5jYWNoZWRDb21waWxlUmVzdWx0O2NvbnN0IHQ9bmV3IGkoQSxlLHIpLmNvbXBpbGUoKTtyZXR1cm4gQS5jYWNoZWRDb21waWxlUmVzdWx0PXQsdH0scz1vKGUuZW50cnkpO2Zvcihjb25zdCBBIG9mIE9iamVjdC5rZXlzKGUucHJvY2VkdXJlcykpe2NvbnN0IG49byhlLnByb2NlZHVyZXNbQV0pO3RbQV09bn1yZXR1cm57c3RhcnRpbmdGdW5jdGlvbjpzLHByb2NlZHVyZXM6dCxleGVjdXRhYmxlSGF0OmUuZW50cnkuZXhlY3V0YWJsZUhhdH19fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz17c3RhdGVtZW50QmxvY2tzOlsibG9va3NfaGlkZWFsbHNwcml0ZXMiLCJsb29rc19zYXkiLCJsb29rc19zYXlmb3JzZWNzIiwibG9va3Nfc2V0c3RyZXRjaHRvIiwibG9va3Nfc3dpdGNoYmFja2Ryb3B0b2FuZHdhaXQiLCJsb29rc190aGluayIsImxvb2tzX3RoaW5rZm9yc2VjcyIsIm1vdGlvbl9hbGlnbl9zY2VuZSIsIm1vdGlvbl9nbGlkZXNlY3N0b3h5IiwibW90aW9uX2dsaWRldG8iLCJtb3Rpb25fZ290byIsIm1vdGlvbl9wb2ludHRvd2FyZHMiLCJtb3Rpb25fc2Nyb2xsX3JpZ2h0IiwibW90aW9uX3Njcm9sbF91cCIsInNlbnNpbmdfYXNrYW5kd2FpdCIsInNlbnNpbmdfc2V0ZHJhZ21vZGUiLCJzb3VuZF9jaGFuZ2VlZmZlY3RieSIsInNvdW5kX2NoYW5nZXZvbHVtZWJ5Iiwic291bmRfY2xlYXJlZmZlY3RzIiwic291bmRfcGxheSIsInNvdW5kX3BsYXl1bnRpbGRvbmUiLCJzb3VuZF9zdG9wIiwic291bmRfc2V0ZWZmZWN0dG8iLCJzb3VuZF9zZXR2b2x1bWV0byIsInNvdW5kX3N0b3BhbGxzb3VuZHMiLCJsb29rc19zZXRTdHJldGNoIiwibG9va3NfY2hhbmdlU3RyZXRjaCIsImRhdGFfcmV2ZXJzZWxpc3QiLCJkYXRhX2FycmF5bGlzdCIsImNvbnRyb2xfc3dpdGNoIiwiY29udHJvbF9zd2l0Y2hfZGVmYXVsdCIsImNvbnRyb2xfY2FzZSIsImNvbnRyb2xfZXhpdENhc2UiLCJjb250cm9sX2Nhc2VfbmV4dCIsImNvbnRyb2xfYmFja1RvR3JlZW5GbGFnIiwibG9va3Nfc2V0SG9yaXpUcmFuc2Zvcm0iLCJsb29rc19zZXRWZXJ0VHJhbnNmb3JtIiwibG9va3NfbGF5ZXJzU2V0TGF5ZXIiLCJjb250cm9sX3dhaXRzZWNvbmRzb3J1bnRpbCIsImNvbnRyb2xfZGVsZXRlX2Nsb25lc19vZiIsImNvbnRyb2xfc3RvcF9zcHJpdGUiLCJsb29rc19jaGFuZ2VWaXNpYmlsaXR5T2ZTcHJpdGUiLCJsb29rc19wcmV2aW91c2Nvc3R1bWUiLCJsb29rc19wcmV2aW91c2JhY2tkcm9wIiwibW90aW9uX3BvaW50aW5yYW5kb21kaXJlY3Rpb24iLCJtb3Rpb25fbW92ZV9zcHJpdGVfdG9fc2NlbmVfc2lkZSIsInNvdW5kX3BsYXlhbGxzb3VuZHMiLCJsb29rc19zdG9wdGFsa2luZyIsInNlbnNpbmdfc2V0Y2xpcGJvYXJkIiwibW90aW9uX21vdmViYWNrc3RlcHMiLCJtb3Rpb25fbW92ZXVwZG93bnN0ZXBzIiwibW90aW9uX3R1cm5yaWdodGFyb3VuZHh5IiwibW90aW9uX3R1cm5sZWZ0YXJvdW5keHkiLCJtb3Rpb25fdHVybmFyb3VuZCIsIm1vdGlvbl9wb2ludGlucmFuZG9tZGlyZWN0aW9uIiwibW90aW9uX3BvaW50dG93YXJkc3h5IiwibW90aW9uX2dsaWRlZGlyZWN0aW9uc3RlcHNpbnNlY29uZHMiLCJtb3Rpb25fY2hhbmdlYnl4eSIsIm1vdGlvbl9pZm9uc3ByaXRlYm91bmNlIiwibW90aW9uX2lmb254eWJvdW5jZSIsIm1vdGlvbl9tb3ZlX3Nwcml0ZV90b19zY2VuZV9zaWRlIiwiY29udHJvbF9qYXZhc2NyaXB0X2NvbW1hbmQiLCJsb29rc19jaGFuZ2VWaXNpYmlsaXR5T2ZTcHJpdGVTaG93IiwibG9va3NfY2hhbmdlVmlzaWJpbGl0eU9mU3ByaXRlSGlkZSIsInNvdW5kX3BhdXNlIiwic291bmRfc2V0X3N0b3BfZmFkZW91dF90byIsInNvdW5kX3BsYXlfYXRfc2Vjb25kcyIsInNvdW5kX3BsYXlfYXRfc2Vjb25kc191bnRpbF9kb25lIiwic291bmRfcGF1c2VhbGxzb3VuZHMiLCJhcmd1bWVudF9yZXBvcnRlcl9jb21tYW5kIl0sb3V0cHV0QmxvY2tzOlsibW90aW9uX3hzY3JvbGwiLCJtb3Rpb25feXNjcm9sbCIsInNlbnNpbmdfbG91ZCIsInNlbnNpbmdfbG91ZG5lc3MiLCJzZW5zaW5nX3VzZXJpZCIsInNvdW5kX3ZvbHVtZSIsImNvbnRyb2xfaWZfcmV0dXJuX2Vsc2VfcmV0dXJuIiwibG9va3Nfc3RyZXRjaEdldFgiLCJsb29rc19zdHJldGNoR2V0WSIsInNlbnNpbmdfZ2V0c3ByaXRld2l0aGF0dHJpYiIsInNlbnNpbmdfdGhpbmdfaXNfdGV4dCIsInNlbnNpbmdfbW9iaWxlIiwic2Vuc2luZ190aGluZ19pc19udW1iZXIiLCJzZW5zaW5nX3JlZ2V4dGVzdCIsIm9wZXJhdG9yX2luZGV4T2ZUZXh0SW5UZXh0Iiwib3BlcmF0b3JfY29uc3RyYWlubnVtYmVyIiwib3BlcmF0b3JfYWR2TWF0aCIsIm9wZXJhdG9yX2Fkdk1hdGhFeHBhbmRlZCIsIm9wZXJhdG9yX2xlcnBGdW5jIiwib3BlcmF0b3Jfc3RyaW5naWZ5Iiwib3BlcmF0b3JfbmV3TGluZSIsIm9wZXJhdG9yX3JlYWRMaW5lSW5NdWx0aWxpbmVUZXh0Iiwib3BlcmF0b3JfZ2V0TGV0dGVyc0Zyb21JbmRleFRvSW5kZXhJblRleHQiLCJvcGVyYXRvcl9nZXRMZXR0ZXJzRnJvbUluZGV4VG9JbmRleEluVGV4dEZpeGVkIiwib3BlcmF0b3JfcmVwbGFjZUFsbCIsIm9wZXJhdG9yX3JlZ2V4bWF0Y2giLCJkYXRhX2l0ZW1leGlzdHNsaXN0IiwiZGF0YV9saXN0aXNlbXB0eSIsImRhdGFfbGlzdGFycmF5IiwibG9va3Nfc2F5SGVpZ2h0IiwibG9va3Nfc2F5V2lkdGgiLCJzZW5zaW5nX2lzVXBwZXJDYXNlIiwib3BlcmF0b3JfdG9VcHBlckxvd2VyQ2FzZSIsImxvb2tzX2dldFNwcml0ZVZpc2libGUiLCJsb29rc19nZXRFZmZlY3RWYWx1ZSIsImxvb2tzX2xheWVyc0dldExheWVyIiwic291bmRfaXNTb3VuZFBsYXlpbmciLCJzb3VuZF9nZXRFZmZlY3RWYWx1ZSIsInNvdW5kX2dldExlbmd0aCIsInNlbnNpbmdfZGlyZWN0aW9uVG8iLCJzZW5zaW5nX2Rpc3RhbmNlVG8iLCJvcGVyYXRvcl9ib29saWZ5Iiwib3BlcmF0b3JfdGFiQ2hhcmFjdGVyIiwib3BlcmF0b3JfY2hhcmFjdGVyX3RvX2NvZGUiLCJvcGVyYXRvcl9jb2RlX3RvX2NoYXJhY3RlciIsInNlbnNpbmdfa2V5aGl0Iiwic2Vuc2luZ19tb3VzZXNjcm9sbGluZyIsInNlbnNpbmdfbW91c2VjbGlja2VkIiwic2Vuc2luZ190aGluZ19oYXNfdGV4dCIsInNlbnNpbmdfdGhpbmdfaGFzX251bWJlciIsInNlbnNpbmdfb2JqZWN0dG91Y2hpbmdvYmplY3QiLCJzZW5zaW5nX29iamVjdHRvdWNoaW5nY2xvbmVzcHJpdGUiLCJsb29rc19nZXRPdGhlclNwcml0ZVZpc2libGUiLCJvcGVyYXRvcl9ndG9yZXF1YWwiLCJvcGVyYXRvcl9sdG9yZXF1YWwiLCJvcGVyYXRvcl9ub3RlcXVhbCIsIm9wZXJhdG9yX2pvaW4zIiwib3BlcmF0b3JfcmVwbGFjZUZpcnN0Iiwib3BlcmF0b3JfbGFzdEluZGV4T2ZUZXh0SW5UZXh0Iiwib3BlcmF0b3JfY291bnRBcHBlYXJUaW1lcyIsIm9wZXJhdG9yX3RleHRJbmNsdWRlc0xldHRlckZyb20iLCJvcGVyYXRvcl90ZXh0U3RhcnRzT3JFbmRzV2l0aCIsInNlbnNpbmdfZmluZ2VyZG93biIsInNlbnNpbmdfZmluZ2VydGFwcGVkIiwic2Vuc2luZ19maW5nZXJ4Iiwic2Vuc2luZ19maW5nZXJ5Iiwic2Vuc2luZ19nZXRjbGlwYm9hcmQiLCJzZW5zaW5nX2dldGRyYWdtb2RlIiwic2Vuc2luZ19nZXRvcGVyYXRpbmdzeXN0ZW0iLCJzZW5zaW5nX2dldGJyb3dzZXIiLCJzZW5zaW5nX2dldHVybCIsIm9wZXJhdG9yX2phdmFzY3JpcHRfb3V0cHV0Iiwib3BlcmF0b3JfamF2YXNjcmlwdF9ib29sZWFuIiwic2Vuc2luZ19nZXR4eW9mdG91Y2hpbmdzcHJpdGUiLCJvcGVyYXRvcl9uYW5kIiwib3BlcmF0b3Jfbm9yIiwib3BlcmF0b3JfeG9yIiwib3BlcmF0b3JfeG5vciIsImxvb2tzX2dldGlucHV0b2Zjb3N0dW1lIiwic291bmRfZ2V0VGltZVBvc2l0aW9uIiwic291bmRfZ2V0U291bmRWb2x1bWUiXX19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe2lmKDA9PT1BLnRyaW0oKS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJwcmVmaXggY2Fubm90IGJlIGVtcHR5Iik7dGhpcy5wcmVmaXg9QSx0aGlzLmNvdW50PTB9bmV4dCgpe3JldHVybiIiLmNvbmNhdCh0aGlzLnByZWZpeCkuY29uY2F0KHRoaXMuY291bnQrKyl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg1OSk7QS5leHBvcnRzPW5ldyBjbGFzcyBleHRlbmRzIG57Y29uc3RydWN0b3IoKXtzdXBlcigpLHRoaXMuX3N0YXJ0ZWRCcmFuY2g9bnVsbH1nZXQgc3RhY2tGcmFtZSgpe3JldHVybiB0aGlzLnRocmVhZC5jb21wYXRpYmlsaXR5U3RhY2tGcmFtZX1zdGFydEJyYW5jaChBLGUsdCl7dGhpcy5fYnJhbmNoSW5mbyYmdCYmdGhpcy5fYnJhbmNoSW5mby5vbkVuZC5wdXNoKHQpLHRoaXMuX3N0YXJ0ZWRCcmFuY2g9W0EsZV19c3RhcnRQcm9jZWR1cmUoQSxlKXtpZighZSlyZXR1cm4gdGhpcy50aHJlYWQucHJvY2VkdXJlc1tBXSgpO2lmKCJvYmplY3QiIT10eXBlb2YgZSl0aHJvdyBuZXcgRXJyb3IoJ3Byb2NlZHVyZSBhcmd1bWVudHMgY2FuIG9ubHkgYmUgb2YgdHlwZSB1bmRlZmluZWR8b2JqZWN0LiBpbnN0ZWFkIGdvdCAiJy5jb25jYXQodHlwZW9mIGUsJyInKSk7bGV0IHQ9InRoaXMudGhyZWFkLnByb2NlZHVyZXNbcHJvY2NvZGVdKCI7Y29uc3Qgbj1bXTtmb3IoY29uc3QgQSBpbiBlKW4ucHVzaChTdHJpbmcoZVtBXSkpO3JldHVybiB0Kz0iIi5jb25jYXQobi5qb2luKCIsIiksIikiKSxuZXcgRnVuY3Rpb24oIlByb2NlZHVyZSAiLmNvbmNhdChBKSx0KSgpfWluaXQoQSxlLHQsbil7dGhpcy50aHJlYWQ9QSx0aGlzLnNlcXVlbmNlcj1BLnRhcmdldC5ydW50aW1lLnNlcXVlbmNlcix0aGlzLl9zdGFydGVkQnJhbmNoPW51bGwsdGhpcy5fYnJhbmNoSW5mbz1uLEEuc3RhY2tbMF09ZSxBLmNvbXBhdGliaWxpdHlTdGFja0ZyYW1lPXR9fX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e3N1cHBvcnRzTnVsbGlzaENvYWxlc2Npbmc6KCgpPT57dHJ5e25ldyBGdW5jdGlvbigidW5kZWZpbmVkID8/IDMiKTtyZXR1cm4hMH1jYXRjaChBKXtyZXR1cm4hMX19KSgpfX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e09VVFBVVF9TSEFQRV9IRVhBR09OQUw6MSxPVVRQVVRfU0hBUEVfUk9VTkQ6MixPVVRQVVRfU0hBUEVfU1FVQVJFOjMsT1VUUFVUX1NIQVBFX0xFQUY6NCxPVVRQVVRfU0hBUEVfUExVUzo1LE9VVFBVVF9TSEFQRV9PQ1RBR09OQUw6NixPVVRQVVRfU0hBUEVfQlVNUEVEOjcsT1VUUFVUX1NIQVBFX0lOREVOVEVEOjgsT1VUUFVUX1NIQVBFX1NDUkFQUEVEOjksT1VUUFVUX1NIQVBFX0FSUk9XOjEwLE9VVFBVVF9TSEFQRV9USUNLRVQ6MTF9fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLl90eXBlPUEsdGhpcy5fb25PcGVuPW51bGwsdGhpcy5fb25DbG9zZT1udWxsLHRoaXMuX29uRXJyb3I9bnVsbCx0aGlzLl9oYW5kbGVNZXNzYWdlPW51bGwsdGhpcy5fd3M9bnVsbH1vcGVuKCl7aWYoISh0aGlzLl9vbk9wZW4mJnRoaXMuX29uQ2xvc2UmJnRoaXMuX29uRXJyb3ImJnRoaXMuX2hhbmRsZU1lc3NhZ2UpKXRocm93IG5ldyBFcnJvcigiTXVzdCBzZXQgb3BlbiwgY2xvc2UsIG1lc3NhZ2UgYW5kIGVycm9yIGhhbmRsZXJzIGJlZm9yZSBjYWxsaW5nIG9wZW4gb24gdGhlIHNvY2tldCIpO2xldCBBO3N3aXRjaCh0aGlzLl90eXBlKXtjYXNlIkJMRSI6QT0ic2NyYXRjaC9ibGUiO2JyZWFrO2Nhc2UiQlQiOkE9InNjcmF0Y2gvYnQiO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJVbmtub3duIFNjcmF0Y2hMaW5rIHNvY2tldCBUeXBlOiAiLmNvbmNhdCh0aGlzLl90eXBlKSl9Y29uc3QgZT0oQSxlKT0+e2Uub25vcGVuPWUub25lcnJvcj1udWxsLGUuY2xvc2UoKSx0aGlzLl93cz1BLHRoaXMuX3dzLm9ub3Blbj10aGlzLl9vbk9wZW4sdGhpcy5fd3Mub25jbG9zZT10aGlzLl9vbkNsb3NlLHRoaXMuX3dzLm9uZXJyb3I9dGhpcy5fb25FcnJvcix0aGlzLl93cy5vbm1lc3NhZ2U9dGhpcy5fb25NZXNzYWdlLmJpbmQodGhpcyl9LHQ9bmV3IFdlYlNvY2tldCgid3M6Ly8xMjcuMC4wLjE6MjAxMTEvIi5jb25jYXQoQSkpLG49bmV3IFdlYlNvY2tldCgid3NzOi8vZGV2aWNlLW1hbmFnZXIuc2NyYXRjaC5taXQuZWR1OjIwMTEwLyIuY29uY2F0KEEpKSxpPXNldFRpbWVvdXQoKCk9PntlKHQsbiksdGhpcy5fd3Mub25lcnJvcihuZXcgRXZlbnQoInRpbWVvdXQiKSl9LDE1ZTMpO2xldCByLG87dC5vbm9wZW49QT0+e2NsZWFyVGltZW91dChpKSxlKHQsbiksdGhpcy5fd3Mub25vcGVuKEEpfSxuLm9ub3Blbj1BPT57Y2xlYXJUaW1lb3V0KGkpLGUobix0KSx0aGlzLl93cy5vbm9wZW4oQSl9O2NvbnN0IHM9KCk9PntyJiZvJiYoY2xlYXJUaW1lb3V0KGkpLGUodCxuKSx0aGlzLl93cy5vbmVycm9yKHIpKX07dC5vbmVycm9yPUE9PntyPUEscygpfSxuLm9uZXJyb3I9QT0+e289QSxzKCl9fWNsb3NlKCl7dGhpcy5pc09wZW4oKSYmKHRoaXMuX3dzLmNsb3NlKCksdGhpcy5fd3M9bnVsbCl9c2VuZE1lc3NhZ2UoQSl7Y29uc3QgZT1KU09OLnN0cmluZ2lmeShBKTt0aGlzLl93cy5zZW5kKGUpfXNldE9uT3BlbihBKXt0aGlzLl9vbk9wZW49QX1zZXRPbkNsb3NlKEEpe3RoaXMuX29uQ2xvc2U9QX1zZXRPbkVycm9yKEEpe3RoaXMuX29uRXJyb3I9QX1zZXRIYW5kbGVNZXNzYWdlKEEpe3RoaXMuX2hhbmRsZU1lc3NhZ2U9QX1pc09wZW4oKXtyZXR1cm4gdGhpcy5fd3MmJnRoaXMuX3dzLnJlYWR5U3RhdGU9PT10aGlzLl93cy5PUEVOfV9vbk1lc3NhZ2UoQSl7Y29uc3QgZT1KU09OLnBhcnNlKEEuZGF0YSk7dGhpcy5faGFuZGxlTWVzc2FnZShlKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDI3KSxpPXQoMjI4KSxyPXQoMTEpLG89dCg1KTtBLmV4cG9ydHM9Y2xhc3MgZXh0ZW5kcyBue2NvbnN0cnVjdG9yKEEpe3N1cGVyKCksdGhpcy5ydW50aW1lPUEsdGhpcy5mb250cz1bXX1pc1ZhbGlkRmFtaWx5KEEpe3JldHVybi9eWy1cdyBdKyQvLnRlc3QoQSl9aGFzRm9udChBKXtyZXR1cm4hIXRoaXMuZm9udHMuZmluZChlPT5lLmZhbWlseT09PUEpfWdldFNhZmVOYW1lKEEpe3JldHVybiBBPUEucmVwbGFjZSgvW14tXHcgXS9nLCIiKSxyLnVudXNlZE5hbWUoQSx0aGlzLmZvbnRzLm1hcChBPT5BLmZhbWlseSkpfWNoYW5nZWQoKXt0aGlzLmVtaXQoImNoYW5nZSIpfWFkZFN5c3RlbUZvbnQoQSxlKXtpZighdGhpcy5pc1ZhbGlkRmFtaWx5KEEpKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBmYW1pbHkiKTt0aGlzLmZvbnRzLnB1c2goe3N5c3RlbTohMCxmYW1pbHk6QSxmYWxsYmFjazplfSksdGhpcy5jaGFuZ2VkKCl9YWRkQ3VzdG9tRm9udChBLGUsdCl7aWYoIXRoaXMuaXNWYWxpZEZhbWlseShBKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZmFtaWx5Iik7dGhpcy5mb250cy5wdXNoKHtzeXN0ZW06ITEsZmFtaWx5OkEsZmFsbGJhY2s6ZSxhc3NldDp0fSksdGhpcy51cGRhdGVSZW5kZXJlcigpLHRoaXMuY2hhbmdlZCgpfWdldEZvbnRzKCl7cmV0dXJuIHRoaXMuZm9udHMubWFwKEE9Pih7c3lzdGVtOkEuc3lzdGVtLG5hbWU6QS5mYW1pbHksZmFtaWx5OiciJy5jb25jYXQoQS5mYW1pbHksJyIsICcpLmNvbmNhdChBLmZhbGxiYWNrKSxkYXRhOkEuYXNzZXQ/QS5hc3NldC5kYXRhOm51bGwsZm9ybWF0OkEuYXNzZXQ/QS5hc3NldC5kYXRhRm9ybWF0Om51bGx9KSl9ZGVsZXRlRm9udChBKXtjb25zdFtlXT10aGlzLmZvbnRzLnNwbGljZShBLDEpO2Uuc3lzdGVtfHx0aGlzLnVwZGF0ZVJlbmRlcmVyKCksdGhpcy5jaGFuZ2VkKCl9Y2xlYXIoKXtjb25zdCBBPXRoaXMuZm9udHMuc29tZShBPT4hQS5zeXN0ZW0pO3RoaXMuZm9udHM9W10sQSYmdGhpcy51cGRhdGVSZW5kZXJlcigpLHRoaXMuY2hhbmdlZCgpfXVwZGF0ZVJlbmRlcmVyKCl7aWYoIXRoaXMucnVudGltZS5yZW5kZXJlcnx8IXRoaXMucnVudGltZS5yZW5kZXJlci5zZXRDdXN0b21Gb250cylyZXR1cm47Y29uc3QgQT17fTtmb3IoY29uc3QgZSBvZiB0aGlzLmZvbnRzKWlmKCFlLnN5c3RlbSl7Y29uc3QgdD1lLmFzc2V0LmVuY29kZURhdGFVUkkoKSxuPSdAZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6ICInLmNvbmNhdChlLmZhbWlseSwnIjsgc3JjOiB1cmwoIicpLmNvbmNhdCh0LCciKTsgfScpO0FbJyInLmNvbmNhdChlLmZhbWlseSwnIiwgJykuY29uY2F0KGUuZmFsbGJhY2spXT1ufXRoaXMucnVudGltZS5yZW5kZXJlci5zZXRDdXN0b21Gb250cyhBKX1zZXJpYWxpemVKU09OKCl7cmV0dXJuIDA9PT10aGlzLmZvbnRzLmxlbmd0aD9udWxsOnRoaXMuZm9udHMubWFwKEE9Pntjb25zdCBlPXtzeXN0ZW06QS5zeXN0ZW0sZmFtaWx5OkEuZmFtaWx5LGZhbGxiYWNrOkEuZmFsbGJhY2t9O2lmKCFBLnN5c3RlbSl7Y29uc3QgdD1BLmFzc2V0O2UubWQ1ZXh0PSIiLmNvbmNhdCh0LmFzc2V0SWQsIi4iKS5jb25jYXQodC5kYXRhRm9ybWF0KX1yZXR1cm4gZX0pfXNlcmlhbGl6ZUFzc2V0cygpe3JldHVybiB0aGlzLmZvbnRzLmZpbHRlcihBPT4hQS5zeXN0ZW0pLm1hcChBPT5BLmFzc2V0KX1hc3luYyBkZXNlcmlhbGl6ZShBLGUsdCl7aWYodHx8dGhpcy5jbGVhcigpLEFycmF5LmlzQXJyYXkoQSkpZm9yKGNvbnN0IHQgb2YgQSlpZih0JiYib2JqZWN0Ij09dHlwZW9mIHQpdHJ5e2NvbnN0IEE9dC5zeXN0ZW0sbj10LmZhbWlseSxyPXQuZmFsbGJhY2s7aWYoImJvb2xlYW4iIT10eXBlb2YgQXx8InN0cmluZyIhPXR5cGVvZiBufHwic3RyaW5nIiE9dHlwZW9mIHJ8fHRoaXMuaGFzRm9udChuKSljb250aW51ZTtpZihBKXRoaXMuYWRkU3lzdGVtRm9udChuLHIpO2Vsc2V7Y29uc3QgQT10Lm1kNWV4dDtpZigic3RyaW5nIiE9dHlwZW9mIEEpY29udGludWU7Y29uc3Qgbz1hd2FpdCBpLmdldEJ5TWQ1ZXh0KHRoaXMucnVudGltZSxlLHRoaXMucnVudGltZS5zdG9yYWdlLkFzc2V0VHlwZS5Gb250LEEpO3RoaXMuYWRkQ3VzdG9tRm9udChuLHIsbyl9fWNhdGNoKEEpe28uZXJyb3IoImNvdWxkIG5vdCBhZGQgZm9udCIsQSl9fX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMTEpO0EuZXhwb3J0cz1jbGFzc3tzdGF0aWMgZ2V0QnlNZDVleHQoQSxlLHQsaSl7Y29uc3Qgcj1BLnN0b3JhZ2Usbz1uLnNwbGl0Rmlyc3QoaSwiLiIpLHM9b1swXSxhPW9bMV0udG9Mb3dlckNhc2UoKTtpZihlKXtsZXQgbj1lLmZpbGUoaSk7aWYoIW4pe2NvbnN0IEE9bmV3IFJlZ0V4cCgiXihbXi9dKi8pPyIuY29uY2F0KGksIiQiKSk7bj1lLmZpbGUoQSlbMF19aWYobilyZXR1cm4gbi5hc3luYygidWludDhhcnJheSIpLnRoZW4oZT0+QS5zdG9yYWdlLmNyZWF0ZUFzc2V0KHQsYSxlLHMsITEpKX1yZXR1cm4gci5sb2FkKHQscyxhKX19fSxmdW5jdGlvbihBLGUpe2NsYXNzIHR7Y29uc3RydWN0b3IoQSxlLHQsbixpKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLmV4dGVuc2lvbklkXz1lLHRoaXMudGFiSWRfPXQsdGhpcy5lbGVtZW50Xz1udWxsLHRoaXMubmFtZT1uLHRoaXMuaWNvbj1pfXNldE5hbWUoQSl7dGhpcy5uYW1lPUEsdGhpcy51cGRhdGUoKX1zZXRJY29uKEEpe3RoaXMuaWNvbj1BLHRoaXMudXBkYXRlKCl9c2V0RE9NKEEpe3RoaXMuZWxlbWVudF89QSx0aGlzLnVwZGF0ZSgpfXVwZGF0ZSgpe3RoaXMucnVudGltZS5lbWl0KCJFRElUT1JfVEFCU19VUERBVEUiKX19QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMudGFic189e319cmVnaXN0ZXIoQSxlLG4saSl7Y29uc3Qgcj0iIi5jb25jYXQoQSwiXyIpLmNvbmNhdChlKTtpZihyIGluIHRoaXMudGFic18pcmV0dXJuIGNvbnNvbGUud2FybigiVGFiIixlLCJmb3IiLEEsImFscmVhZHkgZXhpc3RzLiIpLHRoaXMudGFic19bcl07Y29uc3Qgbz1uZXcgdCh0aGlzLnJ1bnRpbWUsQSxlLG4saSk7cmV0dXJuIHRoaXMudGFic19bcl09byx0aGlzLnJ1bnRpbWUuZW1pdCgiRURJVE9SX1RBQlNfTkVXIixvKSxvfX19LGZ1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUpe3ZhciB0PU9iamVjdC5rZXlzKEEpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSkuZW51bWVyYWJsZX0pKSksdC5wdXNoLmFwcGx5KHQsbil9cmV0dXJuIHR9ZnVuY3Rpb24gbihBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj90KE9iamVjdChuKSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aShBLGUsbltlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6dChPYmplY3QobikpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLGUpKX0pKX1yZXR1cm4gQX1mdW5jdGlvbiBpKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMubW9kYWxzPXt9LHRoaXMuX3VwZGF0ZUlkPTB9dXBkYXRlTW9kYWxDb21wb25lbnRzKCl7dGhpcy5fdXBkYXRlSWQrKyx0aGlzLl91cGRhdGVJZD4xZTYmJih0aGlzLl91cGRhdGVJZD0wKX1jcmVhdGVNb2RhbChBLGUpe3RoaXMubW9kYWxzW0FdPW4obih7fSxlKSx7fSx7aWQ6QX0pLHRoaXMudXBkYXRlTW9kYWxDb21wb25lbnRzKCl9ZGVsZXRlTW9kYWwoQSl7QSBpbiB0aGlzLm1vZGFscyYmZGVsZXRlIHRoaXMubW9kYWxzW0FdLHRoaXMudXBkYXRlTW9kYWxDb21wb25lbnRzKCl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxOCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMuX3Byb2plY3RUaW1lcj1uZXcgbih7bm93OigpPT5BLmN1cnJlbnRNU2Vjc30pLHRoaXMuX3Byb2plY3RUaW1lci5zdGFydCgpLHRoaXMuX3BhdXNlZD0hMSx0aGlzLnJ1bnRpbWU9QX1wcm9qZWN0VGltZXIoKXtyZXR1cm4gdGhpcy5fcHJvamVjdFRpbWVyLnRpbWVFbGFwc2VkKCkvMWUzfXBhdXNlKCl7dGhpcy5fcGF1c2VkPSEwLHRoaXMuX3Byb2plY3RUaW1lci5wYXVzZSgpfXJlc3VtZSgpe3RoaXMuX3BhdXNlZD0hMSx0aGlzLl9wcm9qZWN0VGltZXIucGxheSgpfXJlc2V0UHJvamVjdFRpbWVyKCl7dGhpcy5fcHJvamVjdFRpbWVyLnN0YXJ0KCl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxOSksaT10KDUpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnByb3ZpZGVyPW51bGwsdGhpcy5ydW50aW1lPUEsdGhpcy5zdGFnZT1udWxsfXNldFByb3ZpZGVyKEEpe3RoaXMucHJvdmlkZXI9QX1zZXRTdGFnZShBKXt0aGlzLnN0YWdlPUF9cG9zdERhdGEoQSl7QS52YXJVcGRhdGUmJnRoaXMudXBkYXRlQ2xvdWRWYXJpYWJsZShBLnZhclVwZGF0ZSl9cmVxdWVzdENyZWF0ZVZhcmlhYmxlKEEpe3RoaXMucnVudGltZS5jYW5BZGRDbG91ZFZhcmlhYmxlKCkmJnRoaXMucHJvdmlkZXImJnRoaXMucHJvdmlkZXIuY3JlYXRlVmFyaWFibGUoQS5uYW1lLEEudmFsdWUpfXJlcXVlc3RVcGRhdGVWYXJpYWJsZShBLGUpe3RoaXMucHJvdmlkZXImJnRoaXMucHJvdmlkZXIudXBkYXRlVmFyaWFibGUoQSxlKX1yZXF1ZXN0UmVuYW1lVmFyaWFibGUoQSxlKXt0aGlzLnByb3ZpZGVyJiZ0aGlzLnByb3ZpZGVyLnJlbmFtZVZhcmlhYmxlKEEsZSl9cmVxdWVzdERlbGV0ZVZhcmlhYmxlKEEpe3RoaXMucHJvdmlkZXImJnRoaXMucHJvdmlkZXIuZGVsZXRlVmFyaWFibGUoQSl9dXBkYXRlQ2xvdWRWYXJpYWJsZShBKXtjb25zdCBlPUEubmFtZSx0PXRoaXMuc3RhZ2UubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKGUsbi5TQ0FMQVJfVFlQRSk7dCYmdC5pc0Nsb3VkP3QudmFsdWU9QS52YWx1ZTppLndhcm4oIlJlY2VpdmVkIGFuIHVwZGF0ZSBmb3IgYSBjbG91ZCB2YXJpYWJsZSB0aGF0IGRvZXMgbm90IGV4aXN0OiAiLmNvbmNhdChlKSl9Y2xlYXIoKXt0aGlzLnByb3ZpZGVyJiYodGhpcy5wcm92aWRlci5yZXF1ZXN0Q2xvc2VDb25uZWN0aW9uKCksdGhpcy5wcm92aWRlcj1udWxsLHRoaXMuc3RhZ2U9bnVsbCl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgyKSxpPXtTUEFDRToic3BhY2UiLExFRlQ6ImxlZnQgYXJyb3ciLFVQOiJ1cCBhcnJvdyIsUklHSFQ6InJpZ2h0IGFycm93IixET1dOOiJkb3duIGFycm93IixFTlRFUjoiZW50ZXIiLEJBQ0tTUEFDRToiYmFja3NwYWNlIixERUxFVEU6ImRlbGV0ZSIsU0hJRlQ6InNoaWZ0IixDQVBTX0xPQ0s6ImNhcHMgbG9jayIsU0NST0xMX0xPQ0s6InNjcm9sbCBsb2NrIixDT05UUk9MOiJjb250cm9sIixFU0NBUEU6ImVzY2FwZSIsSU5TRVJUOiJpbnNlcnQiLEhPTUU6ImhvbWUiLEVORDoiZW5kIixQQUdFX1VQOiJwYWdlIHVwIixQQUdFX0RPV046InBhZ2UgZG93biJ9LHI9bmV3IFNldChPYmplY3QudmFsdWVzKGkpKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5fa2V5c1ByZXNzZWQ9W10sdGhpcy5fa2V5c0hpdD1bXSx0aGlzLl9rZXlzSGl0T25TdGVwPXt9LHRoaXMuX2tleVRpbWVzdGFtcHM9e30sdGhpcy5ydW50aW1lPUEsdGhpcy5sYXN0S2V5UHJlc3NlZD0iIix0aGlzLl9udW1lcmFsS2V5Q29kZXNUb1N0cmluZ0tleT1uZXcgTWFwLHRoaXMucnVudGltZS5vbigiUlVOVElNRV9TVEVQX0VORCIsKCk9Pntjb25zdCBBPVtdO2Zvcihjb25zdCBlIG9mIHRoaXMuX2tleXNIaXQpe2NvbnN0IHQ9dGhpcy5fa2V5c0hpdE9uU3RlcFtlXXx8LTE7dGhpcy5ydW50aW1lLmZyYW1lTG9vcC5fc3RlcENvdW50ZXI8PXQmJkEucHVzaChlKX10aGlzLl9rZXlzSGl0PUF9KX1fa2V5U3RyaW5nVG9TY3JhdGNoS2V5KEEpe3N3aXRjaChBPW4udG9TdHJpbmcoQSkpe2Nhc2UiICI6cmV0dXJuIGkuU1BBQ0U7Y2FzZSJBcnJvd0xlZnQiOmNhc2UiTGVmdCI6cmV0dXJuIGkuTEVGVDtjYXNlIkFycm93VXAiOmNhc2UiVXAiOnJldHVybiBpLlVQO2Nhc2UiUmlnaHQiOmNhc2UiQXJyb3dSaWdodCI6cmV0dXJuIGkuUklHSFQ7Y2FzZSJEb3duIjpjYXNlIkFycm93RG93biI6cmV0dXJuIGkuRE9XTjtjYXNlIkVudGVyIjpyZXR1cm4gaS5FTlRFUjtjYXNlIkJhY2tzcGFjZSI6cmV0dXJuIGkuQkFDS1NQQUNFO2Nhc2UiRGVsZXRlIjpyZXR1cm4gaS5ERUxFVEU7Y2FzZSJTaGlmdCI6cmV0dXJuIGkuU0hJRlQ7Y2FzZSJDYXBzTG9jayI6cmV0dXJuIGkuQ0FQU19MT0NLO2Nhc2UiU2Nyb2xsTG9jayI6cmV0dXJuIGkuU0NST0xMX0xPQ0s7Y2FzZSJDb250cm9sIjpyZXR1cm4gaS5DT05UUk9MO2Nhc2UiRXNjYXBlIjpyZXR1cm4gaS5FU0NBUEU7Y2FzZSJJbnNlcnQiOnJldHVybiBpLklOU0VSVDtjYXNlIkhvbWUiOnJldHVybiBpLkhPTUU7Y2FzZSJFbmQiOnJldHVybiBpLkVORDtjYXNlIlBhZ2VVcCI6cmV0dXJuIGkuUEFHRV9VUDtjYXNlIlBhZ2VEb3duIjpyZXR1cm4gaS5QQUdFX0RPV059cmV0dXJuIEEubGVuZ3RoPjE/IiI6QX1fa2V5QXJnVG9TY3JhdGNoS2V5KEEpe2lmKCJudW1iZXIiPT10eXBlb2YgQSl7aWYoQT49NDgmJkE8PTkwKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKEEpO3N3aXRjaChBKXtjYXNlIDMyOnJldHVybiBpLlNQQUNFO2Nhc2UgMzc6cmV0dXJuIGkuTEVGVDtjYXNlIDM4OnJldHVybiBpLlVQO2Nhc2UgMzk6cmV0dXJuIGkuUklHSFQ7Y2FzZSA0MDpyZXR1cm4gaS5ET1dOfX1yZXR1cm4oQT1uLnRvU3RyaW5nKEEpKS5sZW5ndGg+MSYmci5oYXMoQSk/QTooQS5sZW5ndGg+MSYmKEE9QVswXSksIiAiPT09QT9pLlNQQUNFOiJcciI9PT1BP2kuRU5URVI6IhsiPT09QT9pLkVTQ0FQRTpBLnRvVXBwZXJDYXNlKCkpfXBvc3REYXRhKEEpe2lmKCFBLmtleSlyZXR1cm47Y29uc3QgZT10aGlzLl9rZXlTdHJpbmdUb1NjcmF0Y2hLZXkoQS5rZXkpLHQ9MT09PWUubGVuZ3RoP2UudG9VcHBlckNhc2UoKTplO2lmKCIiPT09dClyZXR1cm47Y29uc3Qgbj10aGlzLl9rZXlzUHJlc3NlZC5pbmRleE9mKHQpO2lmKEEuaXNEb3duPyh0aGlzLmxhc3RLZXlQcmVzc2VkPWUsdGhpcy5ydW50aW1lLmVtaXQoIktFWV9QUkVTU0VEIix0KSxuPDAmJih0aGlzLnJ1bnRpbWUuZW1pdCgiS0VZX0hJVCIsdCksdGhpcy5fa2V5c1ByZXNzZWQucHVzaCh0KSx0aGlzLl9rZXlUaW1lc3RhbXBzW3RdPURhdGUubm93KCksdGhpcy5fa2V5c0hpdC5wdXNoKHQpLHRoaXMuX2tleXNIaXRPblN0ZXBbdF09dGhpcy5ydW50aW1lLmZyYW1lTG9vcC5fc3RlcENvdW50ZXIpKTpuPi0xJiYodGhpcy5fa2V5c1ByZXNzZWQuc3BsaWNlKG4sMSksdCBpbiB0aGlzLl9rZXlUaW1lc3RhbXBzJiZkZWxldGUgdGhpcy5fa2V5VGltZXN0YW1wc1t0XSksQS5oYXNPd25Qcm9wZXJ0eSgia2V5Q29kZSIpKXtjb25zdCBlPUEua2V5Q29kZTtpZih0aGlzLl9udW1lcmFsS2V5Q29kZXNUb1N0cmluZ0tleS5oYXMoZSkpe2NvbnN0IEE9dGhpcy5fbnVtZXJhbEtleUNvZGVzVG9TdHJpbmdLZXkuZ2V0KGUpO2lmKEEhPT10KXtjb25zdCBlPXRoaXMuX2tleXNQcmVzc2VkLmluZGV4T2YoQSk7LTEhPT1lJiYodGhpcy5fa2V5c1ByZXNzZWQuc3BsaWNlKGUsMSksdCBpbiB0aGlzLl9rZXlUaW1lc3RhbXBzJiZkZWxldGUgdGhpcy5fa2V5VGltZXN0YW1wc1tBXSl9fXRoaXMuX251bWVyYWxLZXlDb2Rlc1RvU3RyaW5nS2V5LnNldChlLHQpfX1nZXRLZXlJc0Rvd24oQSl7aWYoImFueSI9PT1BKXJldHVybiB0aGlzLl9rZXlzUHJlc3NlZC5sZW5ndGg+MDtjb25zdCBlPXRoaXMuX2tleUFyZ1RvU2NyYXRjaEtleShBKTtyZXR1cm4gdGhpcy5fa2V5c1ByZXNzZWQuaW5kZXhPZihlKT4tMX1nZXRLZXlJc0hpdChBKXtpZigiYW55Ij09PUEpcmV0dXJuIHRoaXMuX2tleXNIaXQubGVuZ3RoPjA7Y29uc3QgZT10aGlzLl9rZXlBcmdUb1NjcmF0Y2hLZXkoQSk7cmV0dXJuIHRoaXMuX2tleXNIaXQuaW5kZXhPZihlKT4tMX1nZXRMYXN0S2V5UHJlc3NlZCgpe3JldHVybiB0aGlzLmxhc3RLZXlQcmVzc2VkfWdldEFsbEtleXNQcmVzc2VkKCl7cmV0dXJuIHRoaXMuX2tleXNQcmVzc2VkfWdldEtleVRpbWVzdGFtcChBKXtpZigiYW55Ij09PUEpe2xldCBBPTEvMCxlPSExO2Zvcihjb25zdCB0IGluIHRoaXMuX2tleVRpbWVzdGFtcHMpe2NvbnN0IG49dGhpcy5fa2V5VGltZXN0YW1wc1t0XTtuPEEmJihBPW4sZT0hMCl9cmV0dXJuIGU/QTowfWNvbnN0IGU9dGhpcy5fa2V5QXJnVG9TY3JhdGNoS2V5KEEpO3JldHVybiBlIGluIHRoaXMuX2tleVRpbWVzdGFtcHM/dGhpcy5fa2V5VGltZXN0YW1wc1tlXTowfWdldEtleVRpbWVzdGFtcHMoKXtyZXR1cm4gdGhpcy5fa2V5VGltZXN0YW1wc319fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDYpLHt0cmFuc2xhdGVTY3JlZW5Qb3M6aX09dCg0MSkscj1BPT5NYXRoLnJvdW5kKDFlMypBKS8xZTM7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMuX2NsaWVudFg9MCx0aGlzLl9jbGllbnRZPTAsdGhpcy5fc2NyYXRjaFg9MCx0aGlzLl9zY3JhdGNoWT0wLHRoaXMuX2J1dHRvbnM9bmV3IFNldCx0aGlzLl9pc0Rvd249ITEsdGhpcy51c2VzUmlnaHRDbGlja0Rvd249ITEsdGhpcy5faXNDbGlja2VkPSExLHRoaXMuX2NsaWNrT25TdGVwPS0xLHRoaXMucnVudGltZT1BLHRoaXMuY2FtZXJhQm91bmQ9bnVsbCx0aGlzLnJ1bnRpbWUub24oIlJVTlRJTUVfU1RFUF9FTkQiLCgpPT57dGhpcy5ydW50aW1lLmZyYW1lTG9vcC5fc3RlcENvdW50ZXI+dGhpcy5fY2xpY2tPblN0ZXAmJih0aGlzLl9pc0NsaWNrZWQ9ITEpfSl9YmluZFRvQ2FtZXJhKEEpe3RoaXMuY2FtZXJhQm91bmQ9QX1yZW1vdmVDYW1lcmFCaW5kaW5nKCl7dGhpcy5jYW1lcmFCb3VuZD1udWxsfV9hY3RpdmF0ZUNsaWNrSGF0cyhBKXt0aGlzLnJ1bnRpbWUuc3RhcnRIYXRzKCJldmVudF93aGVudGhpc3Nwcml0ZWNsaWNrZWQiLG51bGwsQSksdGhpcy5ydW50aW1lLnN0YXJ0SGF0cygiZXZlbnRfd2hlbnN0YWdlY2xpY2tlZCIsbnVsbCxBKSxBLmlzU3RhZ2U/dGhpcy5ydW50aW1lLnN0YXJ0SGF0cygicG1FdmVudHNFeHBhbnNpb25fd2hlblNwcml0ZUNsaWNrZWQiLHtTUFJJVEU6Il9zdGFnZV8ifSk6QS5zcHJpdGUmJnRoaXMucnVudGltZS5zdGFydEhhdHMoInBtRXZlbnRzRXhwYW5zaW9uX3doZW5TcHJpdGVDbGlja2VkIix7U1BSSVRFOkEuc3ByaXRlLm5hbWV9KX1fcGlja1RhcmdldChBLGUpe2lmKHRoaXMucnVudGltZS5yZW5kZXJlcil7Y29uc3QgdD10aGlzLnJ1bnRpbWUucmVuZGVyZXIucGljayhBLGUpO2ZvcihsZXQgQT0wO0E8dGhpcy5ydW50aW1lLnRhcmdldHMubGVuZ3RoO0ErKyl7Y29uc3QgZT10aGlzLnJ1bnRpbWUudGFyZ2V0c1tBXTtpZihlLmhhc093blByb3BlcnR5KCJkcmF3YWJsZUlEIikmJmUuZHJhd2FibGVJRD09PXQpcmV0dXJuIGV9fXJldHVybiB0aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKX1wb3N0RGF0YShBKXtpZigibnVtYmVyIj09dHlwZW9mIEEueCYmKHRoaXMuX2NsaWVudFg9QS54LHRoaXMuX3NjcmF0Y2hYPW4uY2xhbXAodGhpcy5ydW50aW1lLnN0YWdlV2lkdGgqKEEueC9BLmNhbnZhc1dpZHRoLS41KSwtdGhpcy5ydW50aW1lLnN0YWdlV2lkdGgvMix0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aC8yKSksIm51bWJlciI9PXR5cGVvZiBBLnkmJih0aGlzLl9jbGllbnRZPUEueSx0aGlzLl9zY3JhdGNoWT1uLmNsYW1wKC10aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHQqKEEueS9BLmNhbnZhc0hlaWdodC0uNSksLXRoaXMucnVudGltZS5zdGFnZUhlaWdodC8yLHRoaXMucnVudGltZS5zdGFnZUhlaWdodC8yKSksdm9pZCAwIT09QS5pc0Rvd24pe2NvbnN0IGU9dm9pZCAwPT09QS5idXR0b24/MDpBLmJ1dHRvbjtBLmlzRG93bj90aGlzLl9idXR0b25zLmFkZChlKTp0aGlzLl9idXR0b25zLmRlbGV0ZShlKTtjb25zdCB0PXRoaXMuX2lzRG93bjtpZih0aGlzLl9pc0Rvd249QS5pc0Rvd24sQS5pc0Rvd24mJih0aGlzLl9pc0NsaWNrZWQ9ITAsdGhpcy5fY2xpY2tPblN0ZXA9dGhpcy5ydW50aW1lLmZyYW1lTG9vcC5fc3RlcENvdW50ZXIpLHQ9PT10aGlzLl9pc0Rvd24pcmV0dXJuO2lmKEEud2FzRHJhZ2dlZClyZXR1cm47aWYoIShBLng+MCYmQS54PEEuY2FudmFzV2lkdGgmJkEueT4wJiZBLnk8QS5jYW52YXNIZWlnaHQpKXJldHVybjtjb25zdCBuPXRoaXMuX3BpY2tUYXJnZXQoQS54LEEueSksaT0hdCYmdGhpcy5faXNEb3duLHI9dCYmIXRoaXMuX2lzRG93bjsobi5kcmFnZ2FibGUmJnJ8fCFuLmRyYWdnYWJsZSYmaSkmJnRoaXMuX2FjdGl2YXRlQ2xpY2tIYXRzKG4pfX1nZXRDbGllbnRYKCl7cmV0dXJuIHRoaXMuX2NsaWVudFh9Z2V0Q2xpZW50WSgpe3JldHVybiB0aGlzLl9jbGllbnRZfWdldFNjcmF0Y2hYKCl7Y29uc3QgQT10aGlzLmNhbWVyYUJvdW5kP2kodGhpcy5ydW50aW1lLHRoaXMuY2FtZXJhQm91bmQsdGhpcy5fc2NyYXRjaFgsdGhpcy5fc2NyYXRjaFkpWzBdOnRoaXMuX3NjcmF0Y2hYO3JldHVybiB0aGlzLnJ1bnRpbWUucnVudGltZU9wdGlvbnMubWlzY0xpbWl0cz9NYXRoLnJvdW5kKEEpOnIoQSl9Z2V0U2NyYXRjaFkoKXtjb25zdCBBPXRoaXMuY2FtZXJhQm91bmQ/aSh0aGlzLnJ1bnRpbWUsdGhpcy5jYW1lcmFCb3VuZCx0aGlzLl9zY3JhdGNoWCx0aGlzLl9zY3JhdGNoWSlbMV06dGhpcy5fc2NyYXRjaFk7cmV0dXJuIHRoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5taXNjTGltaXRzP01hdGgucm91bmQoQSk6cihBKX1nZXRJc0Rvd24oKXtyZXR1cm4gdGhpcy5faXNEb3dufWdldElzQ2xpY2tlZCgpe3JldHVybiB0aGlzLl9pc0NsaWNrZWR9Z2V0QnV0dG9uSXNEb3duKEEpe3JldHVybiAyPT09QSYmKHRoaXMudXNlc1JpZ2h0Q2xpY2tEb3duPSEwKSx0aGlzLl9idXR0b25zLmhhcyhBKX19fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLnNjcm9sbERlbHRhPTAsdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1NURVBfRU5EIiwoKT0+e3RoaXMuc2Nyb2xsRGVsdGE9MH0pfV9hZGRUb1Njcm9sbGluZ0Rpc3RhbmNlQmxvY2soQSl7ImV4dF9wbVNlbnNpbmdFeHBhbnNpb24iaW4gdGhpcy5ydW50aW1lJiYodGhpcy5ydW50aW1lLmV4dF9wbVNlbnNpbmdFeHBhbnNpb24uc2Nyb2xsRGlzdGFuY2UrPUEpfXBvc3REYXRhKEEpe3RoaXMuc2Nyb2xsRGVsdGE9QS5kZWx0YVksdGhpcy5fYWRkVG9TY3JvbGxpbmdEaXN0YW5jZUJsb2NrKDAtQS5kZWx0YVkpO2NvbnN0IGU9e30sdD17fTtpZihBLmRlbHRhWTwwKWUuS0VZX09QVElPTj0idXAgYXJyb3ciLHQuS0VZX09QVElPTj0idXAiO2Vsc2V7aWYoIShBLmRlbHRhWT4wKSlyZXR1cm47ZS5LRVlfT1BUSU9OPSJkb3duIGFycm93Iix0LktFWV9PUFRJT049ImRvd24ifXRoaXMucnVudGltZS5zdGFydEhhdHMoImV2ZW50X3doZW5rZXlwcmVzc2VkIixlKSx0aGlzLnJ1bnRpbWUuc3RhcnRIYXRzKCJldmVudF93aGVubW91c2VzY3JvbGxlZCIsdCl9Z2V0U2Nyb2xsRGVsdGEoKXtyZXR1cm4gdGhpcy5zY3JvbGxEZWx0YX19fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuX3VzZXJuYW1lPSIiLHRoaXMuX2xvZ2dlZEluPSExfXBvc3REYXRhKEEpe3RoaXMuX3VzZXJuYW1lPUEudXNlcm5hbWUsdGhpcy5fbG9nZ2VkSW49ITEsITA9PT1BLmxvZ2dlZEluJiYodGhpcy5fbG9nZ2VkSW49ITApfWdldFVzZXJuYW1lKCl7cmV0dXJuIHRoaXMuX3VzZXJuYW1lfWdldExvZ2dlZEluKCl7cmV0dXJuIHRoaXMuX2xvZ2dlZElufX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNiksaT1BPT5NYXRoLnJvdW5kKDFlMypBKS8xZTM7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMuZmluZ2Vycz1BcnJheS5mcm9tKEFycmF5KDUpLmtleXMoKSkubWFwKCgpPT4oe19jbGllbnRYOjAsX2NsaWVudFk6MCxfc2NyYXRjaFg6MCxfc2NyYXRjaFk6MCxfaXNEb3duOiExLF9pc1RhcHBlZDohMSxfdGFwT25TdGVwOi0xfSkpLHRoaXMucnVudGltZT1BLHRoaXMucnVudGltZS5vbigiUlVOVElNRV9TVEVQX0VORCIsKCk9Pntmb3IoY29uc3QgQSBvZiB0aGlzLmZpbmdlcnMpdGhpcy5ydW50aW1lLmZyYW1lTG9vcC5fc3RlcENvdW50ZXI+QS5fdGFwT25TdGVwJiYoQS5faXNUYXBwZWQ9ITEpfSl9cG9zdERhdGEoQSl7QS5jaGFuZ2VkVG91Y2hlcy5mb3JFYWNoKGU9Pntjb25zdCB0PXRoaXMuZmluZ2Vyc1tlLmlkZW50aWZpZXJdO3QmJigibnVtYmVyIj09dHlwZW9mIGUueCYmKHQuX2NsaWVudFg9ZS54LHQuX3NjcmF0Y2hYPW4uY2xhbXAodGhpcy5ydW50aW1lLnN0YWdlV2lkdGgqKGUueC9BLmNhbnZhc1dpZHRoLS41KSwtdGhpcy5ydW50aW1lLnN0YWdlV2lkdGgvMix0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aC8yKSksIm51bWJlciI9PXR5cGVvZiBlLnkmJih0Ll9jbGllbnRZPWUueSx0Ll9zY3JhdGNoWT1uLmNsYW1wKC10aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHQqKGUueS9BLmNhbnZhc0hlaWdodC0uNSksLXRoaXMucnVudGltZS5zdGFnZUhlaWdodC8yLHRoaXMucnVudGltZS5zdGFnZUhlaWdodC8yKSksdm9pZCAwIT09QS5pc0Rvd24mJih0Ll9pc0Rvd249QS5pc0Rvd24pLCEwPT09QS5pc0Rvd24mJih0Ll9pc1RhcHBlZD0hMCx0Ll90YXBPblN0ZXA9dGhpcy5ydW50aW1lLmZyYW1lTG9vcC5fc3RlcENvdW50ZXIpKX0pfWdldENsaWVudFgoQSl7Y29uc3QgZT10aGlzLmZpbmdlcnNbQV07cmV0dXJuIGU/ZS5fY2xpZW50WDowfWdldENsaWVudFkoQSl7Y29uc3QgZT10aGlzLmZpbmdlcnNbQV07cmV0dXJuIGU/ZS5fY2xpZW50WTowfWdldFNjcmF0Y2hYKEEpe2NvbnN0IGU9dGhpcy5maW5nZXJzW0FdO3JldHVybiBlP3RoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5taXNjTGltaXRzP01hdGgucm91bmQoZS5fc2NyYXRjaFgpOmkoZS5fc2NyYXRjaFgpOjB9Z2V0U2NyYXRjaFkoQSl7Y29uc3QgZT10aGlzLmZpbmdlcnNbQV07cmV0dXJuIGU/dGhpcy5ydW50aW1lLnJ1bnRpbWVPcHRpb25zLm1pc2NMaW1pdHM/TWF0aC5yb3VuZChlLl9zY3JhdGNoWSk6aShlLl9zY3JhdGNoWSk6MH1nZXRJc0Rvd24oQSl7Y29uc3QgZT10aGlzLmZpbmdlcnNbQV07cmV0dXJuISFlJiZlLl9pc0Rvd259Z2V0SXNUYXBwZWQoQSl7Y29uc3QgZT10aGlzLmZpbmdlcnNbQV07cmV0dXJuISFlJiZlLl9pc1RhcHBlZH19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDIpLGk9dCgyOCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX2NvdW50ZXI9MCx0aGlzLl9lcnJvcj0iIix0aGlzLnJ1bnRpbWUub24oIlJVTlRJTUVfRElTUE9TRUQiLHRoaXMuY2xlYXJDb3VudGVyLmJpbmQodGhpcykpfWdldFByaW1pdGl2ZXMoKXtyZXR1cm57Y29udHJvbF9yZXBlYXQ6dGhpcy5yZXBlYXQsY29udHJvbF9yZXBlYXRfdW50aWw6dGhpcy5yZXBlYXRVbnRpbCxjb250cm9sX3doaWxlOnRoaXMucmVwZWF0V2hpbGUsY29udHJvbF9mb3JfZWFjaDp0aGlzLmZvckVhY2gsY29udHJvbF9mb3JldmVyOnRoaXMuZm9yZXZlcixjb250cm9sX3dhaXQ6dGhpcy53YWl0LGNvbnRyb2xfcmVwZWF0Rm9yU2Vjb25kczp0aGlzLnJlcGVhdEZvclNlY29uZHMsY29udHJvbF93YWl0dGljazp0aGlzLndhaXRUaWNrLGNvbnRyb2xfd2FpdHNlY29uZHNvcnVudGlsOnRoaXMud2FpdE9yVW50aWwsY29udHJvbF93YWl0X3VudGlsOnRoaXMud2FpdFVudGlsLGNvbnRyb2xfaWY6dGhpcy5pZixjb250cm9sX2lmX2Vsc2U6dGhpcy5pZkVsc2UsY29udHJvbF9zdG9wOnRoaXMuc3RvcCxjb250cm9sX3N0b3Bfc3ByaXRlOnRoaXMuc3RvcFNwcml0ZSxjb250cm9sX2NyZWF0ZV9jbG9uZV9vZjp0aGlzLmNyZWF0ZUNsb25lLGNvbnRyb2xfZGVsZXRlX3RoaXNfY2xvbmU6dGhpcy5kZWxldGVDbG9uZSxjb250cm9sX2RlbGV0ZV9jbG9uZXNfb2Y6dGhpcy5kZWxldGVDbG9uZXNPZixjb250cm9sX2dldF9jb3VudGVyOnRoaXMuZ2V0Q291bnRlcixjb250cm9sX2luY3JfY291bnRlcjp0aGlzLmluY3JDb3VudGVyLGNvbnRyb2xfZGVjcl9jb3VudGVyOnRoaXMuZGVjckNvdW50ZXIsY29udHJvbF9zZXRfY291bnRlcjp0aGlzLnNldENvdW50ZXIsY29udHJvbF9jbGVhcl9jb3VudGVyOnRoaXMuY2xlYXJDb3VudGVyLGNvbnRyb2xfYWxsX2F0X29uY2U6dGhpcy5hbGxBdE9uY2UsY29udHJvbF9iYWNrVG9HcmVlbkZsYWc6dGhpcy5iYWNrVG9HcmVlbkZsYWcsY29udHJvbF9leGl0TG9vcDp0aGlzLmV4aXRMb29wLGNvbnRyb2xfY29udGludWVMb29wOnRoaXMuY29udGludWVMb29wLGNvbnRyb2xfaWZfcmV0dXJuX2Vsc2VfcmV0dXJuOnRoaXMuaWZfcmV0dXJuX2Vsc2VfcmV0dXJuLGNvbnRyb2xfamF2YXNjcmlwdF9jb21tYW5kOnRoaXMucnVuSmF2YXNjcmlwdH19Z2V0TW9uaXRvcmVkKCl7cmV0dXJue2NvbnRyb2xfZ2V0X2NvdW50ZXI6e2dldElkOigpPT4iZ2V0X2NvdW50ZXIifX19YmFja1RvR3JlZW5GbGFnKEEsZSl7Y29uc3QgdD1lLnRocmVhZC50b3BCbG9jazt0aGlzLnJ1bnRpbWUuZW1pdCgiUFJPSkVDVF9TVEFSVF9CRUZPUkVfUkVTRVQiKSx0aGlzLnJ1bnRpbWUudGhyZWFkcy5maWx0ZXIoQT0+QS50b3BCbG9jayE9PXQpLmZvckVhY2goQT0+QS5zdG9wVGhpc1NjcmlwdCgpKSx0aGlzLnJ1bnRpbWUuZW1pdCgiUFJPSkVDVF9TVEFSVCIpLHRoaXMucnVudGltZS51cGRhdGVDdXJyZW50TVNlY3MoKSx0aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLmNsb2NrLnJlc2V0UHJvamVjdFRpbWVyKCksdGhpcy5ydW50aW1lLnRhcmdldHMuZm9yRWFjaChBPT5BLmNsZWFyRWRnZUFjdGl2YXRlZFZhbHVlcygpKTtmb3IobGV0IEE9dGhpcy5ydW50aW1lLnRhcmdldHMubGVuZ3RoLTE7QT49MDtBLS0pe2NvbnN0IGU9dGhpcy5ydW50aW1lLnRhcmdldHNbQV07ZS5vbkdyZWVuRmxhZygpLGUuaXNPcmlnaW5hbHx8KHRoaXMucnVudGltZS5kaXNwb3NlVGFyZ2V0KGUpLHRoaXMucnVudGltZS5zdG9wRm9yVGFyZ2V0KGUpKX10aGlzLnJ1bnRpbWUuc3RhcnRIYXRzKCJldmVudF93aGVuZmxhZ2NsaWNrZWQiKX1pZl9yZXR1cm5fZWxzZV9yZXR1cm4oQSl7cmV0dXJuIG4udG9Cb29sZWFuKEEuYm9vbGVhbik/QS5URVhUMTpBLlRFWFQyfWdldEhhdHMoKXtyZXR1cm57Y29udHJvbF9zdGFydF9hc19jbG9uZTp7cmVzdGFydEV4aXN0aW5nVGhyZWFkczohMX19fXJ1bkphdmFzY3JpcHQoQSl7cmV0dXJuIG5ldyBQcm9taXNlKGU9Pntjb25zdCB0PW4udG9TdHJpbmcoQS5KUyk7aS5leGVjdXRlKHQpLnRoZW4oQT0+e2UoQS52YWx1ZSl9KX0pfXJlcGVhdChBLGUpe2NvbnN0IHQ9TWF0aC5yb3VuZChuLnRvTnVtYmVyKEEuVElNRVMpKTt2b2lkIDA9PT1lLnN0YWNrRnJhbWUubG9vcENvdW50ZXImJihlLnN0YWNrRnJhbWUubG9vcENvdW50ZXI9dCksZS5zdGFja0ZyYW1lLmxvb3BDb3VudGVyLS0sZS5zdGFja0ZyYW1lLmxvb3BDb3VudGVyPj0wJiZlLnN0YXJ0QnJhbmNoKDEsITApfXJlcGVhdFVudGlsKEEsZSl7bi50b0Jvb2xlYW4oQS5DT05ESVRJT04pfHxlLnN0YXJ0QnJhbmNoKDEsITApfXJlcGVhdFdoaWxlKEEsZSl7bi50b0Jvb2xlYW4oQS5DT05ESVRJT04pJiZlLnN0YXJ0QnJhbmNoKDEsITApfWZvckVhY2goQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlVmFyaWFibGUoQS5WQVJJQUJMRS5pZCxBLlZBUklBQkxFLm5hbWUpO3ZvaWQgMD09PWUuc3RhY2tGcmFtZS5pbmRleCYmKGUuc3RhY2tGcmFtZS5pbmRleD0wKSxlLnN0YWNrRnJhbWUuaW5kZXg8TnVtYmVyKEEuVkFMVUUpJiYoZS5zdGFja0ZyYW1lLmluZGV4KyssdC52YWx1ZT1lLnN0YWNrRnJhbWUuaW5kZXgsZS5zdGFydEJyYW5jaCgxLCEwKSl9d2FpdFVudGlsKEEsZSl7bi50b0Jvb2xlYW4oQS5DT05ESVRJT04pfHxlLnlpZWxkKCl9Zm9yZXZlcihBLGUpe2Uuc3RhcnRCcmFuY2goMSwhMCl9d2FpdChBLGUpe2lmKGUuc3RhY2tUaW1lck5lZWRzSW5pdCgpKXtjb25zdCB0PU1hdGgubWF4KDAsMWUzKm4udG9OdW1iZXIoQS5EVVJBVElPTikpO2Uuc3RhcnRTdGFja1RpbWVyKHQpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCksZS55aWVsZCgpfWVsc2UgZS5zdGFja1RpbWVyRmluaXNoZWQoKXx8ZS55aWVsZCgpfXJlcGVhdEZvclNlY29uZHMoQSxlKXtpZihlLnN0YWNrVGltZXJOZWVkc0luaXQoKSl7Y29uc3QgdD1NYXRoLm1heCgwLDFlMypuLnRvTnVtYmVyKEEuVElNRVMpKTtlLnN0YXJ0U3RhY2tUaW1lcih0KSx0aGlzLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpLGUuc3RhcnRCcmFuY2goMSwhMCksZS55aWVsZCgpfWVsc2UgZS5zdGFja1RpbWVyRmluaXNoZWQoKXx8KGUuc3RhcnRCcmFuY2goMSwhMCksZS55aWVsZCgpKX13YWl0VGljayhBLGUpe2UueWllbGRUaWNrKCl9d2FpdE9yVW50aWwoQSxlKXtpZighbi50b0Jvb2xlYW4oQS5DT05ESVRJT04pKXtpZihlLnN0YWNrVGltZXJOZWVkc0luaXQoKSl7Y29uc3QgdD1NYXRoLm1heCgwLDFlMypuLnRvTnVtYmVyKEEuRFVSQVRJT04pKTtyZXR1cm4gZS5zdGFydFN0YWNrVGltZXIodCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSx2b2lkIGUueWllbGQoKX1lLnN0YWNrVGltZXJGaW5pc2hlZCgpfHxlLnlpZWxkKCl9fWlmKEEsZSl7bi50b0Jvb2xlYW4oQS5DT05ESVRJT04pJiZlLnN0YXJ0QnJhbmNoKDEsITEpfWlmRWxzZShBLGUpe24udG9Cb29sZWFuKEEuQ09ORElUSU9OKT9lLnN0YXJ0QnJhbmNoKDEsITEpOmUuc3RhcnRCcmFuY2goMiwhMSl9c3RvcChBLGUpe2NvbnN0IHQ9QS5TVE9QX09QVElPTjsiYWxsIj09PXQ/ZS5zdG9wQWxsKCk6Im90aGVyIHNjcmlwdHMgaW4gc3ByaXRlIj09PXR8fCJvdGhlciBzY3JpcHRzIGluIHN0YWdlIj09PXQ/ZS5zdG9wT3RoZXJUYXJnZXRUaHJlYWRzKCk6InRoaXMgc2NyaXB0Ij09PXQmJmUuc3RvcFRoaXNTY3JpcHQoKX1zdG9wU3ByaXRlKEEsZSl7Y29uc3QgdD1BLlNUT1BfT1BUSU9OO2xldCBuO249Il9teXNlbGZfIj09PXQ/ZS50YXJnZXQ6Il9zdGFnZV8iPT09dD90aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTp0aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKHQpLG4mJnRoaXMucnVudGltZS5zdG9wRm9yVGFyZ2V0KG4pfWNyZWF0ZUNsb25lKEEsZSl7dGhpcy5fY3JlYXRlQ2xvbmUobi50b1N0cmluZyhBLkNMT05FX09QVElPTiksZS50YXJnZXQpfV9jcmVhdGVDbG9uZShBLGUpe2xldCB0O2lmKHQ9Il9teXNlbGZfIj09PUE/ZTp0aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKEEpLCF0KXJldHVybjtjb25zdCBuPXQubWFrZUNsb25lKCk7biYmKHRoaXMucnVudGltZS5hZGRUYXJnZXQobiksbi5nb0JlaGluZE90aGVyKHQpKX1kZWxldGVDbG9uZShBLGUpe2UudGFyZ2V0LmlzT3JpZ2luYWx8fCh0aGlzLnJ1bnRpbWUuZGlzcG9zZVRhcmdldChlLnRhcmdldCksdGhpcy5ydW50aW1lLnN0b3BGb3JUYXJnZXQoZS50YXJnZXQpKX1kZWxldGVDbG9uZXNPZihBLGUpe2NvbnN0IHQ9bi50b1N0cmluZyhBLkNMT05FX09QVElPTik7bGV0IGk7aWYoaT0iX215c2VsZl8iPT09dD9lLnRhcmdldDp0aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKHQpLCFpKXJldHVybjtjb25zdCByPWkuc3ByaXRlO2lmKCFyKXJldHVybjtpZighci5jbG9uZXMpcmV0dXJuO1tdLmNvbmNhdChyLmNsb25lcykuZm9yRWFjaChBPT57QS5pc09yaWdpbmFsfHxBLmlzU3RhZ2V8fCh0aGlzLnJ1bnRpbWUuZGlzcG9zZVRhcmdldChBKSx0aGlzLnJ1bnRpbWUuc3RvcEZvclRhcmdldChBKSl9KX1nZXRDb3VudGVyKCl7cmV0dXJuIHRoaXMuX2NvdW50ZXJ9c2V0Q291bnRlcihBKXtjb25zdCBlPW4udG9OdW1iZXIoQS5WQUxVRSk7dGhpcy5fY291bnRlcj1lfWNsZWFyQ291bnRlcigpe3RoaXMuX2NvdW50ZXI9MH1pbmNyQ291bnRlcigpe3RoaXMuX2NvdW50ZXIrK31kZWNyQ291bnRlcigpe3RoaXMuX2NvdW50ZXItLX1hbGxBdE9uY2UoQSl7QS50aHJlYWQucGVla1N0YWNrRnJhbWUoKS53YXJwTW9kZT0hMSxBLnN0YXJ0QnJhbmNoKDEsITEpLEEudGhyZWFkLnBlZWtTdGFja0ZyYW1lKCkud2FycE1vZGU9ITB9ZXhpdExvb3AoQSxlKXt0aGlzLl9lZGl0T3V0ZXJMb29wKCJlc2NhcGUiLGUsQSl9Y29udGludWVMb29wKEEsZSl7dGhpcy5fZWRpdE91dGVyTG9vcCgiY29udGludWUiLGUsQSl9X2dldExvb3BCbG9jayhBKXtjb25zdCBlPUEuc3RhY2tGcmFtZXM7bGV0IHQ9bnVsbDtmb3IobGV0IEE9ZS5sZW5ndGgtMTtBPj0wJiYhKEE8MCk7QS0tKWlmKGVbQV0uaXNMb29wKXt0PWVbQV0ub3AuaWQ7YnJlYWt9cmV0dXJuIHR9X2VkaXRPdXRlckxvb3AoQSxlLHQpe3ZhciBuLGk7Y29uc3Qgcj1lLnRocmVhZCxvPXIuaXNDb21waWxlZDtyLmlzQ29tcGlsZWQ9ITE7Y29uc3Qgcz1udWxsIT09KG49bnVsbD09PShpPXQubG9vcEJsb2NrKXx8dm9pZCAwPT09aT92b2lkIDA6aS5pZCkmJnZvaWQgMCE9PW4/bjp0aGlzLl9nZXRMb29wQmxvY2socik7aWYoIXMpdGhyb3cnQWxsICInLmNvbmNhdChBLCcgbG9vcCIgYmxvY2tzIG11c3QgYmUgaW5zaWRlIG9mIGEgbG9vcGluZyBibG9jay4nKTtjb25zdCBhPXIuYmxvY2tDb250YWluZXIuZ2V0QmxvY2socykubmV4dDtpZigiZXNjYXBlIj09PUEpe2Zvcig7ci5zdGFjay5hdCgtMSkhPT1zOylyLnBvcFN0YWNrKCk7ci5wb3BTdGFjaygpLGEmJnIucHVzaFN0YWNrKGEpfWVsc2V7Zm9yKDtyLnN0YWNrWzBdJiZyLnN0YWNrLmF0KC0xKSE9PXM7KXIucG9wU3RhY2soKTtyLnN0YXR1cz1yLmNvbnN0cnVjdG9yLlNUQVRVU19ZSUVMRH1yLmlzQ29tcGlsZWQ9b319fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDIpLGk9dCgyOCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMucnVudGltZS5vbigiS0VZX1BSRVNTRUQiLEE9Pnt0aGlzLnJ1bnRpbWUuc3RhcnRIYXRzKCJldmVudF93aGVua2V5cHJlc3NlZCIse0tFWV9PUFRJT046QX0pLHRoaXMucnVudGltZS5zdGFydEhhdHMoImV2ZW50X3doZW5rZXlwcmVzc2VkIix7S0VZX09QVElPTjoiYW55In0pfSksdGhpcy5ydW50aW1lLm9uKCJLRVlfSElUIixBPT57dGhpcy5ydW50aW1lLnN0YXJ0SGF0cygiZXZlbnRfd2hlbmtleWhpdCIse0tFWV9PUFRJT046QX0pLHRoaXMucnVudGltZS5zdGFydEhhdHMoImV2ZW50X3doZW5rZXloaXQiLHtLRVlfT1BUSU9OOiJhbnkifSl9KSx0aGlzLmlzU3RhcnRpbmc9ITEsdGhpcy5zdG9wRXZlbnROZWVkc0luaXQ9ITAsdGhpcy5ydW50aW1lLm9uKCJQUk9KRUNUX1NUQVJUX0JFRk9SRV9SRVNFVCIsKCk9Pnt0aGlzLmlzU3RhcnRpbmc9ITAsdGhpcy5zdG9wRXZlbnROZWVkc0luaXQmJih0aGlzLnN0b3BFdmVudE5lZWRzSW5pdD0hMSl9KSx0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RPUF9BTEwiLCgpPT57dGhpcy5pc1N0YXJ0aW5nP3RoaXMuaXNTdGFydGluZz0hMTp0aGlzLnN0b3BFdmVudE5lZWRzSW5pdHx8KHRoaXMucnVudGltZS5vbmNlKCJSVU5USU1FX1NURVBfU1RBUlQiLCgpPT57dGhpcy5ydW50aW1lLnN0YXJ0SGF0cygiZXZlbnRfd2hlbnN0b3BjbGlja2VkIil9KSx0aGlzLmlzU3RhcnRpbmc9ITEpfSksdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1NURVBfU1RBUlQiLCgpPT57dGhpcy5ydW50aW1lLnN0YXJ0SGF0cygiZXZlbnRfYWx3YXlzIil9KSx0aGlzLnJ1bnRpbWUub24oIkFGVEVSX0VYRUNVVEUiLCgpPT57c2V0VGltZW91dCgoKT0+e2NvbnN0IEE9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7aWYoIUEpcmV0dXJuO2NvbnN0IGU9QS52YXJpYWJsZXM7Zm9yKGNvbnN0IEEgaW4gZSl2b2lkIDAhPT1lW0FdLmlzU2VudCYmKGVbQV0uaXNTZW50PSExKX0sMTApfSl9Z2V0UHJpbWl0aXZlcygpe3JldHVybntldmVudF93aGVuYW55dGhpbmc6dGhpcy53aGVuYW55dGhpbmcsZXZlbnRfd2hlbmphdmFzY3JpcHQ6dGhpcy53aGVuamF2YXNjcmlwdCxldmVudF93aGVudG91Y2hpbmdvYmplY3Q6dGhpcy50b3VjaGluZ09iamVjdCxldmVudF9icm9hZGNhc3Q6dGhpcy5icm9hZGNhc3QsZXZlbnRfYnJvYWRjYXN0YW5kd2FpdDp0aGlzLmJyb2FkY2FzdEFuZFdhaXQsZXZlbnRfd2hlbmdyZWF0ZXJ0aGFuOnRoaXMuaGF0R3JlYXRlclRoYW5QcmVkaWNhdGV9fXdoZW5hbnl0aGluZyhBKXtyZXR1cm4gbi50b0Jvb2xlYW4oQS5BTllUSElORyl9d2hlbmphdmFzY3JpcHQoQSl7cmV0dXJuIG5ldyBQcm9taXNlKGU9Pntjb25zdCB0PW4udG9TdHJpbmcoQS5KUyk7aS5leGVjdXRlKHQpLnRoZW4oQT0+e2UoITA9PT1BLnZhbHVlKX0pfSl9Z2V0SGF0cygpe3JldHVybntldmVudF93aGVuZmxhZ2NsaWNrZWQ6e3Jlc3RhcnRFeGlzdGluZ1RocmVhZHM6ITB9LGV2ZW50X3doZW5zdG9wY2xpY2tlZDp7cmVzdGFydEV4aXN0aW5nVGhyZWFkczohMH0sZXZlbnRfYWx3YXlzOntyZXN0YXJ0RXhpc3RpbmdUaHJlYWRzOiExfSxldmVudF93aGVua2V5cHJlc3NlZDp7cmVzdGFydEV4aXN0aW5nVGhyZWFkczohMX0sZXZlbnRfd2hlbmtleWhpdDp7cmVzdGFydEV4aXN0aW5nVGhyZWFkczohMX0sZXZlbnRfd2hlbm1vdXNlc2Nyb2xsZWQ6e3Jlc3RhcnRFeGlzdGluZ1RocmVhZHM6ITF9LGV2ZW50X3doZW5hbnl0aGluZzp7cmVzdGFydEV4aXN0aW5nVGhyZWFkczohMSxlZGdlQWN0aXZhdGVkOiEwfSxldmVudF93aGVuamF2YXNjcmlwdDp7cmVzdGFydEV4aXN0aW5nVGhyZWFkczohMSxlZGdlQWN0aXZhdGVkOiEwfSxldmVudF93aGVudGhpc3Nwcml0ZWNsaWNrZWQ6e3Jlc3RhcnRFeGlzdGluZ1RocmVhZHM6ITB9LGV2ZW50X3doZW50b3VjaGluZ29iamVjdDp7cmVzdGFydEV4aXN0aW5nVGhyZWFkczohMSxlZGdlQWN0aXZhdGVkOiEwfSxldmVudF93aGVuc3RhZ2VjbGlja2VkOntyZXN0YXJ0RXhpc3RpbmdUaHJlYWRzOiEwfSxldmVudF93aGVuYmFja2Ryb3Bzd2l0Y2hlc3RvOntyZXN0YXJ0RXhpc3RpbmdUaHJlYWRzOiEwfSxldmVudF93aGVuZ3JlYXRlcnRoYW46e3Jlc3RhcnRFeGlzdGluZ1RocmVhZHM6ITEsZWRnZUFjdGl2YXRlZDohMH0sZXZlbnRfd2hlbmJyb2FkY2FzdHJlY2VpdmVkOntyZXN0YXJ0RXhpc3RpbmdUaHJlYWRzOiEwfX19dG91Y2hpbmdPYmplY3QoQSxlKXtyZXR1cm4gZS50YXJnZXQuaXNUb3VjaGluZ09iamVjdChBLlRPVUNISU5HT0JKRUNUTUVOVSl9aGF0R3JlYXRlclRoYW5QcmVkaWNhdGUoQSxlKXtjb25zdCB0PW4udG9TdHJpbmcoQS5XSEVOR1JFQVRFUlRIQU5NRU5VKS50b0xvd2VyQ2FzZSgpLGk9bi50b051bWJlcihBLlZBTFVFKTtzd2l0Y2godCl7Y2FzZSJ0aW1lciI6cmV0dXJuIGUuaW9RdWVyeSgiY2xvY2siLCJwcm9qZWN0VGltZXIiKT5pO2Nhc2UibG91ZG5lc3MiOnJldHVybiB0aGlzLnJ1bnRpbWUuYXVkaW9FbmdpbmUmJnRoaXMucnVudGltZS5hdWRpb0VuZ2luZS5nZXRMb3VkbmVzcygpPml9cmV0dXJuITF9YnJvYWRjYXN0KEEsZSl7Y29uc3QgdD1lLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKS5sb29rdXBCcm9hZGNhc3RNc2coQS5CUk9BRENBU1RfT1BUSU9OLmlkLEEuQlJPQURDQVNUX09QVElPTi5uYW1lKTtpZih0KXtjb25zdCBBPXQubmFtZTt0LmlzU2VudD0hMCxlLnN0YXJ0SGF0cygiZXZlbnRfd2hlbmJyb2FkY2FzdHJlY2VpdmVkIix7QlJPQURDQVNUX09QVElPTjpBfSl9fWJyb2FkY2FzdEFuZFdhaXQoQSxlKXtpZihlLnN0YWNrRnJhbWUuYnJvYWRjYXN0VmFyfHwoZS5zdGFja0ZyYW1lLmJyb2FkY2FzdFZhcj1lLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKS5sb29rdXBCcm9hZGNhc3RNc2coQS5CUk9BRENBU1RfT1BUSU9OLmlkLEEuQlJPQURDQVNUX09QVElPTi5uYW1lKSksZS5zdGFja0ZyYW1lLmJyb2FkY2FzdFZhcil7Y29uc3QgQT1lLnN0YWNrRnJhbWUuYnJvYWRjYXN0VmFyLm5hbWU7aWYoIWUuc3RhY2tGcmFtZS5zdGFydGVkVGhyZWFkcyYmKGJyb2FkY2FzdFZhci5pc1NlbnQ9ITAsZS5zdGFja0ZyYW1lLnN0YXJ0ZWRUaHJlYWRzPWUuc3RhcnRIYXRzKCJldmVudF93aGVuYnJvYWRjYXN0cmVjZWl2ZWQiLHtCUk9BRENBU1RfT1BUSU9OOkF9KSwwPT09ZS5zdGFja0ZyYW1lLnN0YXJ0ZWRUaHJlYWRzLmxlbmd0aCkpcmV0dXJuO2NvbnN0IHQ9dGhpcztlLnN0YWNrRnJhbWUuc3RhcnRlZFRocmVhZHMuc29tZShBPT4tMSE9PXQucnVudGltZS50aHJlYWRzLmluZGV4T2YoQSkpJiYoZS5zdGFja0ZyYW1lLnN0YXJ0ZWRUaHJlYWRzLmV2ZXJ5KEE9PnQucnVudGltZS5pc1dhaXRpbmdUaHJlYWQoQSkpP2UueWllbGRUaWNrKCk6ZS55aWVsZCgpKX19fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgyKSxpPXQoOCkscj10KDcpLG89dCg5KSxzPXQoMTYpLGE9dCgzNSksQj10KDYpO2NsYXNzIGN7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5fb25UYXJnZXRDaGFuZ2VkPXRoaXMuX29uVGFyZ2V0Q2hhbmdlZC5iaW5kKHRoaXMpLHRoaXMuX29uUmVzZXRCdWJibGVzPXRoaXMuX29uUmVzZXRCdWJibGVzLmJpbmQodGhpcyksdGhpcy5fb25UYXJnZXRXaWxsRXhpdD10aGlzLl9vblRhcmdldFdpbGxFeGl0LmJpbmQodGhpcyksdGhpcy5fdXBkYXRlQnViYmxlPXRoaXMuX3VwZGF0ZUJ1YmJsZS5iaW5kKHRoaXMpLHRoaXMuU0FZX0JVQkJMRV9MSU1JVGRlZmF1bHQ9MzMwLHRoaXMuU0FZX0JVQkJMRV9MSU1JVD10aGlzLlNBWV9CVUJCTEVfTElNSVRkZWZhdWx0LHRoaXMuZGVmYXVsdEJ1YmJsZT17TUFYX0xJTkVfV0lEVEg6MTcwLE1JTl9XSURUSDo1MCxTVFJPS0VfV0lEVEg6NCxQQURESU5HOjEwLENPUk5FUl9SQURJVVM6MTYsVEFJTF9IRUlHSFQ6MTIsRk9OVDoiSGVsdmV0aWNhIixGT05UX1NJWkU6MTQsRk9OVF9IRUlHSFRfUkFUSU86LjksTElORV9IRUlHSFQ6MTYsQ09MT1JTOntCVUJCTEVfRklMTDoid2hpdGUiLEJVQkJMRV9TVFJPS0U6InJnYmEoMCwgMCwgMCwgMC4xNSkiLFRFWFRfRklMTDoiIzU3NUU3NSJ9fSx0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RPUF9BTEwiLHRoaXMuX29uUmVzZXRCdWJibGVzKSx0aGlzLnJ1bnRpbWUub24oInRhcmdldFdhc1JlbW92ZWQiLHRoaXMuX29uVGFyZ2V0V2lsbEV4aXQpLHRoaXMucnVudGltZS5vbihjLlNBWV9PUl9USElOSyx0aGlzLl91cGRhdGVCdWJibGUpfXN0YXRpYyBnZXQgREVGQVVMVF9CVUJCTEVfU1RBVEUoKXtyZXR1cm57ZHJhd2FibGVJZDpudWxsLG9uU3ByaXRlUmlnaHQ6ITAsc2tpbklkOm51bGwsdGV4dDoiIix0eXBlOiJzYXkiLHVzYWdlSWQ6bnVsbCxwcm9wczp0aGlzLmRlZmF1bHRCdWJibGV9fXN0YXRpYyBnZXQgU1RBVEVfS0VZKCl7cmV0dXJuIlNjcmF0Y2gubG9va3MifXN0YXRpYyBnZXQgU0FZX09SX1RISU5LKCl7cmV0dXJuIlNBWSJ9c3RhdGljIGdldCBFRkZFQ1RfR0hPU1RfTElNSVQoKXtyZXR1cm57bWluOjAsbWF4OjEwMH19c3RhdGljIGdldCBFRkZFQ1RfQlJJR0hUTkVTU19MSU1JVCgpe3JldHVybnttaW46LTEwMCxtYXg6MTAwfX1fZ2V0QnViYmxlU3RhdGUoQSl7bGV0IGU9QS5nZXRDdXN0b21TdGF0ZShjLlNUQVRFX0tFWSk7cmV0dXJuIGV8fChlPXIuc2ltcGxlKGMuREVGQVVMVF9CVUJCTEVfU1RBVEUpLEEuc2V0Q3VzdG9tU3RhdGUoYy5TVEFURV9LRVksZSkpLGV9X3Jlc2V0QnViYmxlcyhBKXtjb25zdCBlPXRoaXMuX2dldEJ1YmJsZVN0YXRlKEEpO3RoaXMuU0FZX0JVQkJMRV9MSU1JVD10aGlzLlNBWV9CVUJCTEVfTElNSVRkZWZhdWx0LGUucHJvcHM9c3RydWN0dXJlZENsb25lKHRoaXMuZGVmYXVsdEJ1YmJsZSl9X3NldEJ1YmJsZVByb3BlcnR5KEEsZSx0KXtjb25zdCBuPXRoaXMuX2dldEJ1YmJsZVN0YXRlKEEpO24ucHJvcHN8fChuLnByb3BzPXN0cnVjdHVyZWRDbG9uZSh0aGlzLmRlZmF1bHRCdWJibGUpKSxlLmZvckVhY2goKEEsZSk9PntBLnN0YXJ0c1dpdGgoIkNPTE9SUyIpP24ucHJvcHMuQ09MT1JTW0Euc3BsaXQoIi4iKVsxXV09dFtlXTpuLnByb3BzW0FdPXRbZV19KSxBLnNldEN1c3RvbVN0YXRlKGMuU1RBVEVfS0VZLG4pfV9vblRhcmdldENoYW5nZWQoQSl7dGhpcy5fZ2V0QnViYmxlU3RhdGUoQSkuZHJhd2FibGVJZCYmdGhpcy5fcG9zaXRpb25CdWJibGUoQSl9X29uVGFyZ2V0V2lsbEV4aXQoQSl7Y29uc3QgZT10aGlzLl9nZXRCdWJibGVTdGF0ZShBKTtlLmRyYXdhYmxlSWQmJmUuc2tpbklkJiYodGhpcy5ydW50aW1lLnJlbmRlcmVyLmRlc3Ryb3lEcmF3YWJsZShlLmRyYXdhYmxlSWQscy5TUFJJVEVfTEFZRVIpLHRoaXMucnVudGltZS5yZW5kZXJlci5kZXN0cm95U2tpbihlLnNraW5JZCksZS5kcmF3YWJsZUlkPW51bGwsZS5za2luSWQ9bnVsbCx0aGlzLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpKSxBLm9uVGFyZ2V0VmlzdWFsQ2hhbmdlPW51bGx9X29uUmVzZXRCdWJibGVzKCl7Zm9yKGxldCBBPTA7QTx0aGlzLnJ1bnRpbWUudGFyZ2V0cy5sZW5ndGg7QSsrKXt0aGlzLl9nZXRCdWJibGVTdGF0ZSh0aGlzLnJ1bnRpbWUudGFyZ2V0c1tBXSkudGV4dD0iIix0aGlzLl9vblRhcmdldFdpbGxFeGl0KHRoaXMucnVudGltZS50YXJnZXRzW0FdKX1jbGVhclRpbWVvdXQodGhpcy5fYnViYmxlVGltZW91dCl9X3Bvc2l0aW9uQnViYmxlKEEpe2lmKCFBLnZpc2libGUpcmV0dXJuO2NvbnN0IGU9dGhpcy5fZ2V0QnViYmxlU3RhdGUoQSksW3Qsbl09dGhpcy5ydW50aW1lLnJlbmRlcmVyLmdldEN1cnJlbnRTa2luU2l6ZShlLmRyYXdhYmxlSWQpO2xldCBpO3RyeXtpPUEuZ2V0Qm91bmRzRm9yQnViYmxlKCl9Y2F0Y2goZSl7aT17bGVmdDpBLngscmlnaHQ6QS54LHRvcDpBLnksYm90dG9tOkEueX19Y29uc3Qgcj10aGlzLnJ1bnRpbWUucmVuZGVyZXIuZ2V0TmF0aXZlU2l6ZSgpLG89e2xlZnQ6LXJbMF0vMixyaWdodDpyWzBdLzIsdG9wOnJbMV0vMixib3R0b206LXJbMV0vMn07ZS5vblNwcml0ZVJpZ2h0JiZ0K2kucmlnaHQ+by5yaWdodCYmaS5sZWZ0LXQ+by5sZWZ0PyhlLm9uU3ByaXRlUmlnaHQ9ITEsdGhpcy5fcmVuZGVyQnViYmxlKEEpKTohZS5vblNwcml0ZVJpZ2h0JiZpLmxlZnQtdDxvLmxlZnQmJnQraS5yaWdodDxvLnJpZ2h0PyhlLm9uU3ByaXRlUmlnaHQ9ITAsdGhpcy5fcmVuZGVyQnViYmxlKEEpKToodGhpcy5ydW50aW1lLnJlbmRlcmVyLnVwZGF0ZURyYXdhYmxlUG9zaXRpb24oZS5kcmF3YWJsZUlkLFtlLm9uU3ByaXRlUmlnaHQ/TWF0aC5tYXgoby5sZWZ0LE1hdGgubWluKG8ucmlnaHQtdCxpLnJpZ2h0KSk6TWF0aC5taW4oby5yaWdodC10LE1hdGgubWF4KG8ubGVmdCxpLmxlZnQtdCkpLE1hdGgubWluKG8udG9wLGkuYm90dG9tK24pXSksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSl9X3JlbmRlckJ1YmJsZShBKXtpZighdGhpcy5ydW50aW1lLnJlbmRlcmVyKXJldHVybjtjb25zdCBlPXRoaXMuX2dldEJ1YmJsZVN0YXRlKEEpLHt0eXBlOnQsdGV4dDpuLG9uU3ByaXRlUmlnaHQ6aX09ZTtBLnZpc2libGUmJiIiIT09bj8oZS5za2luSWQ/dGhpcy5ydW50aW1lLnJlbmRlcmVyLnVwZGF0ZVRleHRTa2luKGUuc2tpbklkLHQsbixpLGUucHJvcHMpOihBLm9uVGFyZ2V0VmlzdWFsQ2hhbmdlPXRoaXMuX29uVGFyZ2V0Q2hhbmdlZCxlLmRyYXdhYmxlSWQ9dGhpcy5ydW50aW1lLnJlbmRlcmVyLmNyZWF0ZURyYXdhYmxlKHMuU1BSSVRFX0xBWUVSKSxlLnNraW5JZD10aGlzLnJ1bnRpbWUucmVuZGVyZXIuY3JlYXRlVGV4dFNraW4odCxuLGUub25TcHJpdGVSaWdodCxlLnByb3BzKSx0aGlzLnJ1bnRpbWUucmVuZGVyZXIudXBkYXRlRHJhd2FibGVTa2luSWQoZS5kcmF3YWJsZUlkLGUuc2tpbklkKSksdGhpcy5fcG9zaXRpb25CdWJibGUoQSkpOnRoaXMuX29uVGFyZ2V0V2lsbEV4aXQoQSl9X2Zvcm1hdEJ1YmJsZVRleHQoQSl7cmV0dXJuIiI9PT1BP0E6KCJudW1iZXIiPT10eXBlb2YgQSYmTWF0aC5hYnMoQSk+PS4wMSYmQSUxIT0wJiYoQT1BLnRvRml4ZWQoMikpLEE9U3RyaW5nKEEpLnNsaWNlKDAsdGhpcy5TQVlfQlVCQkxFX0xJTUlUKSl9X3VwZGF0ZUJ1YmJsZShBLGUsdCl7Y29uc3Qgbj10aGlzLl9nZXRCdWJibGVTdGF0ZShBKTtuLnR5cGU9ZSxuLnRleHQ9dGhpcy5fZm9ybWF0QnViYmxlVGV4dCh0KSxuLnVzYWdlSWQ9bygpLHRoaXMuX3JlbmRlckJ1YmJsZShBKX1fcGVyY2VudFRvUmF0aW8oQSl7cmV0dXJuIEEvMTAwfV9kb2VzRm9udFN1cG9ydChBLGUpe2NvbnN0IHQ9QSsicHggIitlO3JldHVybiBkb2N1bWVudC5mb250cy5jaGVjayh0KX1nZXRQcmltaXRpdmVzKCl7cmV0dXJue2xvb2tzX3NheTp0aGlzLnNheSxsb29rc19zYXlmb3JzZWNzOnRoaXMuc2F5Zm9yc2Vjcyxsb29rc190aGluazp0aGlzLnRoaW5rLGxvb2tzX3RoaW5rZm9yc2Vjczp0aGlzLnRoaW5rZm9yc2Vjcyxsb29rc19zZXRGb250OnRoaXMuc2V0Rm9udCxsb29rc19zZXRDb2xvcjp0aGlzLnNldENvbG9yLGxvb2tzX3NldFNoYXBlOnRoaXMuc2V0U2hhcGUsbG9va3Nfc2hvdzp0aGlzLnNob3csbG9va3NfaGlkZTp0aGlzLmhpZGUsbG9va3NfZ2V0U3ByaXRlVmlzaWJsZTp0aGlzLmdldFNwcml0ZVZpc2libGUsbG9va3NfZ2V0T3RoZXJTcHJpdGVWaXNpYmxlOnRoaXMuZ2V0T3RoZXJTcHJpdGVWaXNpYmxlLGxvb2tzX2hpZGVhbGxzcHJpdGVzOigpPT57fSxsb29rc19zd2l0Y2hjb3N0dW1ldG86dGhpcy5zd2l0Y2hDb3N0dW1lLGxvb2tzX3N3aXRjaGJhY2tkcm9wdG86dGhpcy5zd2l0Y2hCYWNrZHJvcCxsb29rc19zd2l0Y2hiYWNrZHJvcHRvYW5kd2FpdDp0aGlzLnN3aXRjaEJhY2tkcm9wQW5kV2FpdCxsb29rc19uZXh0Y29zdHVtZTp0aGlzLm5leHRDb3N0dW1lLGxvb2tzX25leHRiYWNrZHJvcDp0aGlzLm5leHRCYWNrZHJvcCxsb29rc19wcmV2aW91c2Nvc3R1bWU6dGhpcy5wcmV2aW91c0Nvc3R1bWUsbG9va3NfcHJldmlvdXNiYWNrZHJvcDp0aGlzLnByZXZpb3VzQmFja2Ryb3AsbG9va3NfY2hhbmdlZWZmZWN0Ynk6dGhpcy5jaGFuZ2VFZmZlY3QsbG9va3Nfc2V0ZWZmZWN0dG86dGhpcy5zZXRFZmZlY3QsbG9va3NfY2xlYXJncmFwaGljZWZmZWN0czp0aGlzLmNsZWFyRWZmZWN0cyxsb29rc19nZXRFZmZlY3RWYWx1ZTp0aGlzLmdldEVmZmVjdFZhbHVlLGxvb2tzX2NoYW5nZXNpemVieTp0aGlzLmNoYW5nZVNpemUsbG9va3Nfc2V0c2l6ZXRvOnRoaXMuc2V0U2l6ZSxsb29rc19jaGFuZ2VzdHJldGNoYnk6KCk9Pnt9LGxvb2tzX3NldHN0cmV0Y2h0bzp0aGlzLnN0cmV0Y2hTZXQsbG9va3NfZ290b2Zyb250YmFjazp0aGlzLmdvVG9Gcm9udEJhY2ssbG9va3NfZ29mb3J3YXJkYmFja3dhcmRsYXllcnM6dGhpcy5nb0ZvcndhcmRCYWNrd2FyZExheWVycyxsb29rc19nb1RhcmdldExheWVyOnRoaXMuZ29UYXJnZXRMYXllcixsb29rc19sYXllcnNTZXRMYXllcjp0aGlzLnNldFNwcml0ZUxheWVyLGxvb2tzX2xheWVyc0dldExheWVyOnRoaXMuZ2V0U3ByaXRlTGF5ZXIsbG9va3Nfc2l6ZTp0aGlzLmdldFNpemUsbG9va3NfY29zdHVtZW51bWJlcm5hbWU6dGhpcy5nZXRDb3N0dW1lTnVtYmVyTmFtZSxsb29rc19iYWNrZHJvcG51bWJlcm5hbWU6dGhpcy5nZXRCYWNrZHJvcE51bWJlck5hbWUsbG9va3Nfc2V0U3RyZXRjaDp0aGlzLnN0cmV0Y2hTZXQsbG9va3NfY2hhbmdlU3RyZXRjaDp0aGlzLmNoYW5nZVN0cmV0Y2gsbG9va3Nfc3RyZXRjaEdldFg6dGhpcy5nZXRTdHJldGNoWCxsb29rc19zdHJldGNoR2V0WTp0aGlzLmdldFN0cmV0Y2hZLGxvb2tzX3NheVdpZHRoOnRoaXMuZ2V0QnViYmxlV2lkdGgsbG9va3Nfc2F5SGVpZ2h0OnRoaXMuZ2V0QnViYmxlSGVpZ2h0LGxvb2tzX2NoYW5nZVZpc2liaWxpdHlPZlNwcml0ZTp0aGlzLnNob3dPckhpZGVTcHJpdGUsbG9va3NfY2hhbmdlVmlzaWJpbGl0eU9mU3ByaXRlU2hvdzp0aGlzLnNob3dTcHJpdGUsbG9va3NfY2hhbmdlVmlzaWJpbGl0eU9mU3ByaXRlSGlkZTp0aGlzLmhpZGVTcHJpdGUsbG9va3Nfc3RvcHRhbGtpbmc6dGhpcy5zdG9wVGFsa2luZyxsb29rc19nZXRpbnB1dG9mY29zdHVtZTp0aGlzLmdldENvc3R1bWVWYWx1ZSxsb29rc190aW50Q29sb3I6dGhpcy5nZXRUaW50Q29sb3IsbG9va3Nfc2V0VGludENvbG9yOnRoaXMuc2V0VGludENvbG9yfX1nZXRTcHJpdGVMYXllcihBLGUpe3JldHVybiBlLnRhcmdldC5nZXRMYXllck9yZGVyKCl9c2V0U3ByaXRlTGF5ZXIoQSxlKXtjb25zdCB0PWUudGFyZ2V0LGk9bi50b051bWJlcihBLk5VTSkscj10LmdldExheWVyT3JkZXIoKTt0LmdvRm9yd2FyZExheWVycyhpLXIpfV9nZXRCdWJibGVTaXplKEEpe2NvbnN0IGU9dGhpcy5fZ2V0QnViYmxlU3RhdGUoQSk7cmV0dXJuIHRoaXMucnVudGltZS5yZW5kZXJlci5nZXRTa2luU2l6ZShlLnNraW5JZCl9Z2V0QnViYmxlV2lkdGgoQSxlKXtjb25zdCB0PWUudGFyZ2V0O2xldCBuPTA7dHJ5e249dGhpcy5fZ2V0QnViYmxlU2l6ZSh0KVswXX1jYXRjaChBKXtuPTB9cmV0dXJuIG59Z2V0QnViYmxlSGVpZ2h0KEEsZSl7Y29uc3QgdD1lLnRhcmdldDtsZXQgbj0wO3RyeXtuPXRoaXMuX2dldEJ1YmJsZVNpemUodClbMV19Y2F0Y2goQSl7bj0wfXJldHVybiBufWdldFN0cmV0Y2hZKEEsZSl7cmV0dXJuIGUudGFyZ2V0Ll9nZXRSZW5kZXJlZERpcmVjdGlvbkFuZFNjYWxlKCkuc3RyZXRjaFsxXX1nZXRTdHJldGNoWChBLGUpe3JldHVybiBlLnRhcmdldC5fZ2V0UmVuZGVyZWREaXJlY3Rpb25BbmRTY2FsZSgpLnN0cmV0Y2hbMF19c3RyZXRjaFNldChBLGUpe2UudGFyZ2V0LnNldFN0cmV0Y2gobi50b051bWJlcihBLlgpLG4udG9OdW1iZXIoQS5ZKSl9Y2hhbmdlU3RyZXRjaChBLGUpe2xldFt0LGldPWUudGFyZ2V0Ll9nZXRSZW5kZXJlZERpcmVjdGlvbkFuZFNjYWxlKCkuc3RyZXRjaCxyPXQrbi50b051bWJlcihBLlgpLG89aStuLnRvTnVtYmVyKEEuWSk7ZS50YXJnZXQuc2V0U3RyZXRjaChyLG8pfXNldEZvbnQoQSxlKXt0aGlzLl9zZXRCdWJibGVQcm9wZXJ0eShlLnRhcmdldCxbIkZPTlQiLCJGT05UX1NJWkUiXSxbQS5mb250LEEuc2l6ZV0pfXNldENvbG9yKEEsZSl7Y29uc3QgdD1OdW1iZXIoQS5jb2xvcik7aXNOYU4odCl8fChBLmNvbG9yPWkuZGVjaW1hbFRvSGV4KHQpKSx0aGlzLl9zZXRCdWJibGVQcm9wZXJ0eShlLnRhcmdldCxbIkNPTE9SUy4iK0EucHJvcF0sW0EuY29sb3JdKX1zZXRTaGFwZShBLGUpeyJ0ZXhsaW0iIT09QS5wcm9wP3RoaXMuX3NldEJ1YmJsZVByb3BlcnR5KGUudGFyZ2V0LFtBLnByb3BdLFtBLmNvbG9yXSk6dGhpcy5TQVlfQlVCQkxFX0xJTUlUPU1hdGgubWF4KEEuY29sb3IsMSl9Z2V0TW9uaXRvcmVkKCl7cmV0dXJue2xvb2tzX3NpemU6e2lzU3ByaXRlU3BlY2lmaWM6ITAsZ2V0SWQ6QT0+IiIuY29uY2F0KEEsIl9zaXplIil9LGxvb2tzX3N0cmV0Y2hHZXRYOntpc1Nwcml0ZVNwZWNpZmljOiEwLGdldElkOkE9PiIiLmNvbmNhdChBLCJfc3RyZXRjaEdldFgiKX0sbG9va3Nfc3RyZXRjaEdldFk6e2lzU3ByaXRlU3BlY2lmaWM6ITAsZ2V0SWQ6QT0+IiIuY29uY2F0KEEsIl9zdHJldGNoR2V0WSIpfSxsb29rc19zYXlXaWR0aDp7aXNTcHJpdGVTcGVjaWZpYzohMCxnZXRJZDpBPT4iIi5jb25jYXQoQSwiX3NheVdpZHRoIil9LGxvb2tzX3NheUhlaWdodDp7aXNTcHJpdGVTcGVjaWZpYzohMCxnZXRJZDpBPT4iIi5jb25jYXQoQSwiX3NheUhlaWdodCIpfSxsb29rc19nZXRFZmZlY3RWYWx1ZTp7aXNTcHJpdGVTcGVjaWZpYzohMCxnZXRJZDooQSxlKT0+YSgiIi5jb25jYXQoQSwiX2dldEVmZmVjdFZhbHVlIiksZSl9LGxvb2tzX3RpbnRDb2xvcjp7aXNTcHJpdGVTcGVjaWZpYzohMCxnZXRJZDpBPT4iIi5jb25jYXQoQSwiX3RpbnRDb2xvciIpfSxsb29rc19nZXRTcHJpdGVWaXNpYmxlOntpc1Nwcml0ZVNwZWNpZmljOiEwLGdldElkOkE9PiIiLmNvbmNhdChBLCJfZ2V0U3ByaXRlVmlzaWJsZSIpfSxsb29rc19sYXllcnNHZXRMYXllcjp7aXNTcHJpdGVTcGVjaWZpYzohMCxnZXRJZDpBPT4iIi5jb25jYXQoQSwiX2xheWVyc0dldExheWVyIil9LGxvb2tzX2Nvc3R1bWVudW1iZXJuYW1lOntpc1Nwcml0ZVNwZWNpZmljOiEwLGdldElkOihBLGUpPT5hKCIiLmNvbmNhdChBLCJfY29zdHVtZW51bWJlcm5hbWUiKSxlKX0sbG9va3NfYmFja2Ryb3BudW1iZXJuYW1lOntnZXRJZDooQSxlKT0+YSgiYmFja2Ryb3BudW1iZXJuYW1lIixlKX19fXNheShBLGUpe2NvbnN0IHQ9QS5NRVNTQUdFO3RoaXMuX3NheSh0LGUudGFyZ2V0KX1fc2F5KEEsZSl7dGhpcy5ydW50aW1lLmVtaXQoYy5TQVlfT1JfVEhJTkssZSwic2F5IixBKX1zdG9wVGFsa2luZyhBLGUpe3RoaXMuc2F5KHtNRVNTQUdFOiIifSxlKX1zYXlmb3JzZWNzKEEsZSl7dGhpcy5zYXkoQSxlKTtjb25zdCB0PWUudGFyZ2V0LG49dGhpcy5fZ2V0QnViYmxlU3RhdGUodCkudXNhZ2VJZDtyZXR1cm4gbmV3IFByb21pc2UoZT0+e3RoaXMuX2J1YmJsZVRpbWVvdXQ9c2V0VGltZW91dCgoKT0+e3RoaXMuX2J1YmJsZVRpbWVvdXQ9bnVsbCx0aGlzLl9nZXRCdWJibGVTdGF0ZSh0KS51c2FnZUlkPT09biYmdGhpcy5fdXBkYXRlQnViYmxlKHQsInNheSIsIiIpLGUoKX0sMWUzKkEuU0VDUyl9KX10aGluayhBLGUpe3RoaXMucnVudGltZS5lbWl0KGMuU0FZX09SX1RISU5LLGUudGFyZ2V0LCJ0aGluayIsQS5NRVNTQUdFKX10aGlua2ZvcnNlY3MoQSxlKXt0aGlzLnRoaW5rKEEsZSk7Y29uc3QgdD1lLnRhcmdldCxuPXRoaXMuX2dldEJ1YmJsZVN0YXRlKHQpLnVzYWdlSWQ7cmV0dXJuIG5ldyBQcm9taXNlKGU9Pnt0aGlzLl9idWJibGVUaW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLl9idWJibGVUaW1lb3V0PW51bGwsdGhpcy5fZ2V0QnViYmxlU3RhdGUodCkudXNhZ2VJZD09PW4mJnRoaXMuX3VwZGF0ZUJ1YmJsZSh0LCJ0aGluayIsIiIpLGUoKX0sMWUzKkEuU0VDUyl9KX1zaG93KEEsZSl7ZS50YXJnZXQuc2V0VmlzaWJsZSghMCksdGhpcy5fcmVuZGVyQnViYmxlKGUudGFyZ2V0KX1oaWRlKEEsZSl7ZS50YXJnZXQuc2V0VmlzaWJsZSghMSksdGhpcy5fcmVuZGVyQnViYmxlKGUudGFyZ2V0KX1zaG93T3JIaWRlU3ByaXRlKEEsZSl7Y29uc3QgdD1BLlZJU0lCTEVfT1BUSU9OLGk9bi50b1N0cmluZyhBLlZJU0lCTEVfVFlQRSkudG9Mb3dlckNhc2UoKTtsZXQgcjtyPSJfbXlzZWxmXyI9PT10P2UudGFyZ2V0OiJfc3RhZ2VfIj09PXQ/dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk6dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZSh0KSxyJiYoci5zZXRWaXNpYmxlKCJzaG93Ij09PWkpLHRoaXMuX3JlbmRlckJ1YmJsZShyKSl9c2hvd1Nwcml0ZShBLGUpe3RoaXMuc2hvd09ySGlkZVNwcml0ZSh7VklTSUJMRV9PUFRJT046QS5WSVNJQkxFX09QVElPTixWSVNJQkxFX1RZUEU6InNob3cifSxlKX1oaWRlU3ByaXRlKEEsZSl7dGhpcy5zaG93T3JIaWRlU3ByaXRlKHtWSVNJQkxFX09QVElPTjpBLlZJU0lCTEVfT1BUSU9OLFZJU0lCTEVfVFlQRToiaGlkZSJ9LGUpfWdldFNwcml0ZVZpc2libGUoQSxlKXtyZXR1cm4gZS50YXJnZXQudmlzaWJsZX1nZXRPdGhlclNwcml0ZVZpc2libGUoQSxlKXtjb25zdCB0PUEuVklTSUJMRV9PUFRJT047bGV0IG47aWYobj0iX215c2VsZl8iPT09dD9lLnRhcmdldDoiX3N0YWdlXyI9PT10P3RoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpOnRoaXMucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUodCksbilyZXR1cm4gbi52aXNpYmxlfWdldEVmZmVjdFZhbHVlKEEsZSl7Y29uc3QgdD1uLnRvU3RyaW5nKEEuRUZGRUNUKS50b0xvd2VyQ2FzZSgpLGk9ZS50YXJnZXQuZWZmZWN0cztpZighaS5oYXNPd25Qcm9wZXJ0eSh0KSlyZXR1cm4gMDtyZXR1cm4gbi50b051bWJlcihpW3RdKX1nZXRUaW50Q29sb3IoQSxlKXtjb25zdCB0PWUudGFyZ2V0LmVmZmVjdHM7cmV0dXJuIm51bWJlciIhPXR5cGVvZiB0LnRpbnRDb2xvcj8iI2ZmZmZmZiI6aS5kZWNpbWFsVG9IZXgodC50aW50Q29sb3ItMSl9c2V0VGludENvbG9yKEEsZSl7Y29uc3QgdD1uLnRvUmdiQ29sb3JPYmplY3QoQS5jb2xvcikscj1pLnJnYlRvRGVjaW1hbCh0KTtlLnRhcmdldC5zZXRFZmZlY3QoInRpbnRDb2xvciIscisxKX1fc2V0Q29zdHVtZShBLGUsdCl7aWYoIm51bWJlciI9PXR5cGVvZiBlKUEuc2V0Q29zdHVtZSh0P2U6ZS0xKTtlbHNle2NvbnN0IGk9QS5nZXRDb3N0dW1lSW5kZXhCeU5hbWUoZS50b1N0cmluZygpKTtpZigtMSE9PWkpQS5zZXRDb3N0dW1lKGkpO2Vsc2UgaWYoIm5leHQgY29zdHVtZSI9PT1lKUEuc2V0Q29zdHVtZShBLmN1cnJlbnRDb3N0dW1lKzEpO2Vsc2UgaWYoInByZXZpb3VzIGNvc3R1bWUiPT09ZSlBLnNldENvc3R1bWUoQS5jdXJyZW50Q29zdHVtZS0xKTtlbHNlIGlmKCJyYW5kb20gY29zdHVtZSI9PT1lKXtsZXQgZT1CLmluY2x1c2l2ZVJhbmRJbnRXaXRob3V0KDAsQS5zcHJpdGUuY29zdHVtZXNfLmxlbmd0aC0xLEEuY3VycmVudENvc3R1bWUpO2U+PUEuc3ByaXRlLmNvc3R1bWVzXy5sZW5ndGgmJihlPTApLEEuc2V0Q29zdHVtZShlKX1lbHNlIGlzTmFOKGUpfHxuLmlzV2hpdGVTcGFjZShlKXx8QS5zZXRDb3N0dW1lKHQ/TnVtYmVyKGUpOk51bWJlcihlKS0xKX1yZXR1cm5bXX1jb3N0dW1lVmFsdWVUb0RlZmF1bHROb25lKEEpe3N3aXRjaChBKXtjYXNlIndpZHRoIjpjYXNlImhlaWdodCI6Y2FzZSJyb3RhdGlvbiBjZW50ZXIgeCI6Y2FzZSJyb3RhdGlvbiBjZW50ZXIgeSI6cmV0dXJuIDA7ZGVmYXVsdDpyZXR1cm4iIn19Z2V0Q29zdHVtZVZhbHVlKEEsZSl7bGV0IHQ9MDtjb25zdCBpPWUudGFyZ2V0LHI9QS5DT1NUVU1FLG89bi50b1N0cmluZyhBLklOUFVUKTtpZigibnVtYmVyIj09dHlwZW9mIHIpdD0wPT09cj8wOnItMTtlbHNle2xldCBBPWkuaXNTdGFnZT8iYmFja2Ryb3AiOiJjb3N0dW1lIjtzd2l0Y2gobi50b1N0cmluZyhyKSl7Y2FzZSJuZXh0ICIrQTp0PWkuY3VycmVudENvc3R1bWUrMSx0Pj1pLnNwcml0ZS5jb3N0dW1lc18ubGVuZ3RoJiYodD0wKTticmVhaztjYXNlInByZXZpb3VzICIrQTp0PWkuY3VycmVudENvc3R1bWUtMSx0PDAmJih0PWkuc3ByaXRlLmNvc3R1bWVzXy5sZW5ndGgtMSk7YnJlYWs7Y2FzZSJyYW5kb20gIitBOnQ9Qi5pbmNsdXNpdmVSYW5kSW50V2l0aG91dCgwLGkuc3ByaXRlLmNvc3R1bWVzXy5sZW5ndGgtMSxpLmN1cnJlbnRDb3N0dW1lKSx0Pj1pLnNwcml0ZS5jb3N0dW1lc18ubGVuZ3RoJiYodD0wKTticmVhaztkZWZhdWx0OnQ9aS5nZXRDb3N0dW1lSW5kZXhCeU5hbWUobi50b1N0cmluZyhyKSl9fWlmKHQ8MClyZXR1cm4gdGhpcy5jb3N0dW1lVmFsdWVUb0RlZmF1bHROb25lKG8pO2lmKCFpLnNwcml0ZSlyZXR1cm4gdGhpcy5jb3N0dW1lVmFsdWVUb0RlZmF1bHROb25lKG8pO2lmKCFpLnNwcml0ZS5jb3N0dW1lc18pcmV0dXJuIHRoaXMuY29zdHVtZVZhbHVlVG9EZWZhdWx0Tm9uZShvKTtjb25zdCBzPWkuc3ByaXRlLmNvc3R1bWVzX1t0XTtpZighcylyZXR1cm4gdGhpcy5jb3N0dW1lVmFsdWVUb0RlZmF1bHROb25lKG8pO3N3aXRjaChvKXtjYXNlIndpZHRoIjpyZXR1cm4gcy5zaXplWzBdO2Nhc2UiaGVpZ2h0IjpyZXR1cm4gcy5zaXplWzFdO2Nhc2Uicm90YXRpb24gY2VudGVyIHgiOnJldHVybiBzLnJvdGF0aW9uQ2VudGVyWDtjYXNlInJvdGF0aW9uIGNlbnRlciB5IjpyZXR1cm4gcy5yb3RhdGlvbkNlbnRlclk7Y2FzZSJkcmF3aW5nIG1vZGUiOnJldHVybiJzdmciPT09cy5kYXRhRm9ybWF0PyJWZWN0b3IiOiJCaXRtYXAiO2RlZmF1bHQ6cmV0dXJuIiJ9fV9zZXRCYWNrZHJvcChBLGUsdCl7aWYoIm51bWJlciI9PXR5cGVvZiBlKUEuc2V0Q29zdHVtZSh0P2U6ZS0xKTtlbHNle2NvbnN0IGk9QS5nZXRDb3N0dW1lSW5kZXhCeU5hbWUoZS50b1N0cmluZygpKTtpZigtMSE9PWkpQS5zZXRDb3N0dW1lKGkpO2Vsc2UgaWYoIm5leHQgYmFja2Ryb3AiPT09ZSlBLnNldENvc3R1bWUoQS5jdXJyZW50Q29zdHVtZSsxKTtlbHNlIGlmKCJwcmV2aW91cyBiYWNrZHJvcCI9PT1lKUEuc2V0Q29zdHVtZShBLmN1cnJlbnRDb3N0dW1lLTEpO2Vsc2UgaWYoInJhbmRvbSBiYWNrZHJvcCI9PT1lKXtjb25zdCBlPUEuZ2V0Q29zdHVtZXMoKS5sZW5ndGg7aWYoZT4xKXtjb25zdCB0PTAsbj1lLTEsaT1BLmN1cnJlbnRDb3N0dW1lLHI9Qi5pbmNsdXNpdmVSYW5kSW50V2l0aG91dCh0LG4saSk7QS5zZXRDb3N0dW1lKHIpfX1lbHNlIGlzTmFOKGUpfHxuLmlzV2hpdGVTcGFjZShlKXx8QS5zZXRDb3N0dW1lKHQ/TnVtYmVyKGUpOk51bWJlcihlKS0xKX1jb25zdCBpPUEuZ2V0Q29zdHVtZXMoKVtBLmN1cnJlbnRDb3N0dW1lXS5uYW1lO3JldHVybiB0aGlzLnJ1bnRpbWUuc3RhcnRIYXRzKCJldmVudF93aGVuYmFja2Ryb3Bzd2l0Y2hlc3RvIix7QkFDS0RST1A6aX0pfXN3aXRjaENvc3R1bWUoQSxlKXt0aGlzLl9zZXRDb3N0dW1lKGUudGFyZ2V0LEEuQ09TVFVNRSl9bmV4dENvc3R1bWUoQSxlKXt0aGlzLl9zZXRDb3N0dW1lKGUudGFyZ2V0LGUudGFyZ2V0LmN1cnJlbnRDb3N0dW1lKzEsITApfXByZXZpb3VzQ29zdHVtZShBLGUpe3RoaXMuX3NldENvc3R1bWUoZS50YXJnZXQsZS50YXJnZXQuY3VycmVudENvc3R1bWUtMSwhMCl9c3dpdGNoQmFja2Ryb3AoQSl7dGhpcy5fc2V0QmFja2Ryb3AodGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCksQS5CQUNLRFJPUCl9c3dpdGNoQmFja2Ryb3BBbmRXYWl0KEEsZSl7aWYoIWUuc3RhY2tGcmFtZS5zdGFydGVkVGhyZWFkcyYmKGUuc3RhY2tGcmFtZS5zdGFydGVkVGhyZWFkcz10aGlzLl9zZXRCYWNrZHJvcCh0aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKSxBLkJBQ0tEUk9QKSwwPT09ZS5zdGFja0ZyYW1lLnN0YXJ0ZWRUaHJlYWRzLmxlbmd0aCkpcmV0dXJuO2NvbnN0IHQ9dGhpcztlLnN0YWNrRnJhbWUuc3RhcnRlZFRocmVhZHMuc29tZShBPT4tMSE9PXQucnVudGltZS50aHJlYWRzLmluZGV4T2YoQSkpJiYoZS5zdGFja0ZyYW1lLnN0YXJ0ZWRUaHJlYWRzLmV2ZXJ5KEE9PnQucnVudGltZS5pc1dhaXRpbmdUaHJlYWQoQSkpP2UueWllbGRUaWNrKCk6ZS55aWVsZCgpKX1uZXh0QmFja2Ryb3AoKXtjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO3RoaXMuX3NldEJhY2tkcm9wKEEsQS5jdXJyZW50Q29zdHVtZSsxLCEwKX1wcmV2aW91c0JhY2tkcm9wKCl7Y29uc3QgQT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTt0aGlzLl9zZXRCYWNrZHJvcChBLEEuY3VycmVudENvc3R1bWUtMSwhMCl9Y2xhbXBFZmZlY3QoQSxlKXtsZXQgdD1lO3N3aXRjaChBKXtjYXNlImdob3N0Ijp0PUIuY2xhbXAoZSxjLkVGRkVDVF9HSE9TVF9MSU1JVC5taW4sYy5FRkZFQ1RfR0hPU1RfTElNSVQubWF4KTticmVhaztjYXNlImJyaWdodG5lc3MiOnQ9Qi5jbGFtcChlLGMuRUZGRUNUX0JSSUdIVE5FU1NfTElNSVQubWluLGMuRUZGRUNUX0JSSUdIVE5FU1NfTElNSVQubWF4KX1yZXR1cm4gdH1jaGFuZ2VFZmZlY3QoQSxlKXtjb25zdCB0PW4udG9TdHJpbmcoQS5FRkZFQ1QpLnRvTG93ZXJDYXNlKCksaT1uLnRvTnVtYmVyKEEuQ0hBTkdFKTtpZighZS50YXJnZXQuZWZmZWN0cy5oYXNPd25Qcm9wZXJ0eSh0KSlyZXR1cm47bGV0IHI9aStlLnRhcmdldC5lZmZlY3RzW3RdO3I9dGhpcy5jbGFtcEVmZmVjdCh0LHIpLGUudGFyZ2V0LnNldEVmZmVjdCh0LHIpfXNldEVmZmVjdChBLGUpe2NvbnN0IHQ9bi50b1N0cmluZyhBLkVGRkVDVCkudG9Mb3dlckNhc2UoKTtsZXQgaT1uLnRvTnVtYmVyKEEuVkFMVUUpO2k9dGhpcy5jbGFtcEVmZmVjdCh0LGkpLGUudGFyZ2V0LnNldEVmZmVjdCh0LGkpfWNsZWFyRWZmZWN0cyhBLGUpe2UudGFyZ2V0LmNsZWFyRWZmZWN0cygpLHRoaXMuX3Jlc2V0QnViYmxlcyhlLnRhcmdldCl9Y2hhbmdlU2l6ZShBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLkNIQU5HRSk7ZS50YXJnZXQuc2V0U2l6ZShlLnRhcmdldC5zaXplK3QpfXNldFNpemUoQSxlKXtjb25zdCB0PW4udG9OdW1iZXIoQS5TSVpFKTtlLnRhcmdldC5zZXRTaXplKHQpfWdvVG9Gcm9udEJhY2soQSxlKXtlLnRhcmdldC5pc1N0YWdlfHwoImZyb250Ij09PUEuRlJPTlRfQkFDSz9lLnRhcmdldC5nb1RvRnJvbnQoKTplLnRhcmdldC5nb1RvQmFjaygpKX1nb0ZvcndhcmRCYWNrd2FyZExheWVycyhBLGUpe2UudGFyZ2V0LmlzU3RhZ2V8fCgiZm9yd2FyZCI9PT1BLkZPUldBUkRfQkFDS1dBUkQ/ZS50YXJnZXQuZ29Gb3J3YXJkTGF5ZXJzKG4udG9OdW1iZXIoQS5OVU0pKTplLnRhcmdldC5nb0JhY2t3YXJkTGF5ZXJzKG4udG9OdW1iZXIoQS5OVU0pKSl9Z29UYXJnZXRMYXllcihBLGUpe2xldCB0O2NvbnN0IG49QS5WSVNJQkxFX09QVElPTjt0PSJfc3RhZ2VfIj09PW4/dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk6dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZShuKSwhZS50YXJnZXQuaXNTdGFnZSYmdCYmKCJpbmZyb250Ij09PUEuRk9SV0FSRF9CQUNLV0FSRD8oZS50YXJnZXQuZ29CZWhpbmRPdGhlcih0KSxlLnRhcmdldC5nb0ZvcndhcmRMYXllcnMoMSkpOmUudGFyZ2V0LmdvQmVoaW5kT3RoZXIodCkpfWdldFNpemUoQSxlKXtyZXR1cm4gTWF0aC5yb3VuZChlLnRhcmdldC5zaXplKX1nZXRCYWNrZHJvcE51bWJlck5hbWUoQSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtyZXR1cm4ibnVtYmVyIj09PUEuTlVNQkVSX05BTUU/ZS5jdXJyZW50Q29zdHVtZSsxOmUuZ2V0Q29zdHVtZXMoKVtlLmN1cnJlbnRDb3N0dW1lXS5uYW1lfWdldENvc3R1bWVOdW1iZXJOYW1lKEEsZSl7cmV0dXJuIm51bWJlciI9PT1BLk5VTUJFUl9OQU1FP2UudGFyZ2V0LmN1cnJlbnRDb3N0dW1lKzE6ZS50YXJnZXQuZ2V0Q29zdHVtZXMoKVtlLnRhcmdldC5jdXJyZW50Q29zdHVtZV0ubmFtZX19QS5leHBvcnRzPWN9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMiksaT10KDYpLHI9dCgxOCksbz0idG9wLWxlZnQiLHM9InRvcC1yaWdodCIsYT0iYm90dG9tLWxlZnQiLEI9ImJvdHRvbS1yaWdodCIsYz0idG9wIixnPSJsZWZ0IixFPSJyaWdodCIsUT0ibWlkZGxlIix1PSJib3R0b20iO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QX1nZXRQcmltaXRpdmVzKCl7cmV0dXJue21vdGlvbl9tb3Zlc3RlcHM6dGhpcy5tb3ZlU3RlcHMsbW90aW9uX21vdmViYWNrc3RlcHM6dGhpcy5tb3ZlU3RlcHNCYWNrLG1vdGlvbl9tb3ZldXBkb3duc3RlcHM6dGhpcy5tb3ZlU3RlcHNVcERvd24sbW90aW9uX2dvdG94eTp0aGlzLmdvVG9YWSxtb3Rpb25fZ290bzp0aGlzLmdvVG8sbW90aW9uX3R1cm5yaWdodDp0aGlzLnR1cm5SaWdodCxtb3Rpb25fdHVybmxlZnQ6dGhpcy50dXJuTGVmdCxtb3Rpb25fdHVybnJpZ2h0YXJvdW5keHk6dGhpcy50dXJuUmlnaHRBcm91bmQsbW90aW9uX3R1cm5sZWZ0YXJvdW5keHk6dGhpcy50dXJuTGVmdEFyb3VuZCxtb3Rpb25fdHVybmFyb3VuZDp0aGlzLnR1cm5Bcm91bmQsbW90aW9uX3BvaW50aW5yYW5kb21kaXJlY3Rpb246dGhpcy5wb2ludEluRGlyZWN0aW9uUmFuZG9tLG1vdGlvbl9wb2ludHRvd2FyZHN4eTp0aGlzLnBvaW50VG93YXJkc1hZLG1vdGlvbl9wb2ludGluZGlyZWN0aW9uOnRoaXMucG9pbnRJbkRpcmVjdGlvbixtb3Rpb25fcG9pbnR0b3dhcmRzOnRoaXMucG9pbnRUb3dhcmRzLG1vdGlvbl9nbGlkZXNlY3N0b3h5OnRoaXMuZ2xpZGUsbW90aW9uX2dsaWRldG86dGhpcy5nbGlkZVRvLG1vdGlvbl9pZm9uZWRnZWJvdW5jZTp0aGlzLmlmT25FZGdlQm91bmNlLG1vdGlvbl9pZm9ueHlib3VuY2U6dGhpcy5pZk9uWFlCb3VuY2UsbW90aW9uX2lmb25zcHJpdGVib3VuY2U6dGhpcy5pZk9uU3ByaXRlQm91bmNlLG1vdGlvbl9zZXRyb3RhdGlvbnN0eWxlOnRoaXMuc2V0Um90YXRpb25TdHlsZSxtb3Rpb25fY2hhbmdleGJ5OnRoaXMuY2hhbmdlWCxtb3Rpb25fc2V0eDp0aGlzLnNldFgsbW90aW9uX2NoYW5nZXlieTp0aGlzLmNoYW5nZVksbW90aW9uX3NldHk6dGhpcy5zZXRZLG1vdGlvbl9jaGFuZ2VieXh5OnRoaXMuY2hhbmdlWFksbW90aW9uX3hwb3NpdGlvbjp0aGlzLmdldFgsbW90aW9uX3lwb3NpdGlvbjp0aGlzLmdldFksbW90aW9uX2RpcmVjdGlvbjp0aGlzLmdldERpcmVjdGlvbixtb3Rpb25fbW92ZV9zcHJpdGVfdG9fc2NlbmVfc2lkZTp0aGlzLm1vdmVUb1N0YWdlU2lkZSxtb3Rpb25fc2Nyb2xsX3JpZ2h0OigpPT57fSxtb3Rpb25fc2Nyb2xsX3VwOigpPT57fSxtb3Rpb25fYWxpZ25fc2NlbmU6KCk9Pnt9LG1vdGlvbl94c2Nyb2xsOigpPT57fSxtb3Rpb25feXNjcm9sbDooKT0+e319fW1vdmVUb1N0YWdlU2lkZShBLGUpe2lmKCF0aGlzLnJ1bnRpbWUucmVuZGVyZXIpcmV0dXJuO2NvbnN0IHQ9bi50b1N0cmluZyhBLkFMSUdOTUVOVCksaT10aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aC8yLHI9dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0LzIsbD1bXTtzd2l0Y2godCl7Y2FzZSBjOmUudGFyZ2V0LnNldFhZKDAsciksbC5wdXNoKCJ0b3AiKTticmVhaztjYXNlIGc6ZS50YXJnZXQuc2V0WFkoMC1pLDApLGwucHVzaCgibGVmdCIpO2JyZWFrO2Nhc2UgUTplLnRhcmdldC5zZXRYWSgwLDApO2JyZWFrO2Nhc2UgRTplLnRhcmdldC5zZXRYWShpLDApLGwucHVzaCgicmlnaHQiKTticmVhaztjYXNlIHU6ZS50YXJnZXQuc2V0WFkoMCwwLXIpLGwucHVzaCgiYm90dG9tIik7YnJlYWs7Y2FzZSBvOmUudGFyZ2V0LnNldFhZKDAtaSxyKSxsLnB1c2goInRvcCIpLGwucHVzaCgibGVmdCIpO2JyZWFrO2Nhc2UgczplLnRhcmdldC5zZXRYWShpLHIpLGwucHVzaCgidG9wIiksbC5wdXNoKCJyaWdodCIpO2JyZWFrO2Nhc2UgYTplLnRhcmdldC5zZXRYWSgwLWksMC1yKSxsLnB1c2goImJvdHRvbSIpLGwucHVzaCgibGVmdCIpO2JyZWFrO2Nhc2UgQjplLnRhcmdldC5zZXRYWShpLDAtciksbC5wdXNoKCJib3R0b20iKSxsLnB1c2goInJpZ2h0Iil9Y29uc3QgaD1lLnRhcmdldC5kcmF3YWJsZUlELHc9dGhpcy5ydW50aW1lLnJlbmRlcmVyLl9hbGxEcmF3YWJsZXNbaF0sQz13Ll9za2luLmdldEZlbmNlQm91bmRzKHcpO2wuZm9yRWFjaChBPT57c3dpdGNoKEEpe2Nhc2UidG9wIjplLnRhcmdldC5zZXRYWShlLnRhcmdldC54LEMuYm90dG9tKTticmVhaztjYXNlImJvdHRvbSI6ZS50YXJnZXQuc2V0WFkoZS50YXJnZXQueCxDLnRvcCk7YnJlYWs7Y2FzZSJsZWZ0IjplLnRhcmdldC5zZXRYWShDLnJpZ2h0LGUudGFyZ2V0LnkpO2JyZWFrO2Nhc2UicmlnaHQiOmUudGFyZ2V0LnNldFhZKEMubGVmdCxlLnRhcmdldC55KX19KX1nZXRNb25pdG9yZWQoKXtyZXR1cm57bW90aW9uX3hwb3NpdGlvbjp7aXNTcHJpdGVTcGVjaWZpYzohMCxnZXRJZDpBPT4iIi5jb25jYXQoQSwiX3hwb3NpdGlvbiIpfSxtb3Rpb25feXBvc2l0aW9uOntpc1Nwcml0ZVNwZWNpZmljOiEwLGdldElkOkE9PiIiLmNvbmNhdChBLCJfeXBvc2l0aW9uIil9LG1vdGlvbl9kaXJlY3Rpb246e2lzU3ByaXRlU3BlY2lmaWM6ITAsZ2V0SWQ6QT0+IiIuY29uY2F0KEEsIl9kaXJlY3Rpb24iKX19fW1vdmVTdGVwcyhBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLlNURVBTKTt0aGlzLl9tb3ZlU3RlcHModCxlLnRhcmdldCl9bW92ZVN0ZXBzQmFjayhBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLlNURVBTKTt0aGlzLl9tb3ZlU3RlcHMoMC10LGUudGFyZ2V0KX1tb3ZlU3RlcHNVcERvd24oQSxlKXtjb25zdCB0PW4udG9TdHJpbmcoQS5ESVJFQ1RJT04pLGk9bi50b051bWJlcihBLlNURVBTKTt0aGlzLnR1cm5MZWZ0KHtERUdSRUVTOjkwfSxlKSwidXAiPT09dD90aGlzLl9tb3ZlU3RlcHMoaSxlLnRhcmdldCk6ImRvd24iPT09dCYmdGhpcy5fbW92ZVN0ZXBzKDAtaSxlLnRhcmdldCksdGhpcy50dXJuUmlnaHQoe0RFR1JFRVM6OTB9LGUpfV9tb3ZlU3RlcHMoQSxlKXtjb25zdCB0PWkuZGVnVG9SYWQoOTAtZS5kaXJlY3Rpb24pLG49QSpNYXRoLmNvcyh0KSxyPUEqTWF0aC5zaW4odCk7ZS5zZXRYWShlLngrbixlLnkrcil9Z29Ub1hZKEEsZSl7Y29uc3QgdD1uLnRvTnVtYmVyKEEuWCksaT1uLnRvTnVtYmVyKEEuWSk7ZS50YXJnZXQuc2V0WFkodCxpKX1nZXRUYXJnZXRYWShBLGUpe2xldCB0PTAsaT0wO2lmKCJfbW91c2VfIj09PUEpdD1lLmlvUXVlcnkoIm1vdXNlIiwiZ2V0U2NyYXRjaFgiKSxpPWUuaW9RdWVyeSgibW91c2UiLCJnZXRTY3JhdGNoWSIpO2Vsc2UgaWYoIl9yYW5kb21fIj09PUEpe2NvbnN0IEE9dGhpcy5ydW50aW1lLnN0YWdlV2lkdGgsZT10aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHQ7dD1NYXRoLnJvdW5kKEEqKE1hdGgucmFuZG9tKCktLjUpKSxpPU1hdGgucm91bmQoZSooTWF0aC5yYW5kb20oKS0uNSkpfWVsc2V7QT1uLnRvU3RyaW5nKEEpO2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZShBKTtpZighZSlyZXR1cm47dD1lLngsaT1lLnl9cmV0dXJuW3QsaV19Z29UbyhBLGUpe2NvbnN0IHQ9dGhpcy5nZXRUYXJnZXRYWShBLlRPLGUpO3QmJmUudGFyZ2V0LnNldFhZKHRbMF0sdFsxXSl9dHVyblJpZ2h0KEEsZSl7Y29uc3QgdD1uLnRvTnVtYmVyKEEuREVHUkVFUyk7ZS50YXJnZXQuc2V0RGlyZWN0aW9uKGUudGFyZ2V0LmRpcmVjdGlvbit0KX10dXJuTGVmdChBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLkRFR1JFRVMpO2UudGFyZ2V0LnNldERpcmVjdGlvbihlLnRhcmdldC5kaXJlY3Rpb24tdCl9dHVyblJpZ2h0QXJvdW5kKEEsZSl7dGhpcy50dXJuTGVmdEFyb3VuZCh7REVHUkVFUzotbi50b051bWJlcihBLkRFR1JFRVMpLFg6bi50b051bWJlcihBLlgpLFk6bi50b051bWJlcihBLlkpfSxlKX10dXJuTGVmdEFyb3VuZChBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLkRFR1JFRVMpLGk9bi50b051bWJlcihBLlgpLHI9bi50b051bWJlcihBLlkpLG89TWF0aC5QSSp0LzE4MCxzPU1hdGguY29zKG8pLGE9TWF0aC5zaW4obyksQj1lLnRhcmdldC54LWksYz1lLnRhcmdldC55LXIsZz17eDpzKkItYSpjK2kseTpzKmMrYSpCK3J9O2UudGFyZ2V0LnNldFhZKGcueCxnLnkpfXBvaW50SW5EaXJlY3Rpb24oQSxlKXtjb25zdCB0PW4udG9OdW1iZXIoQS5ESVJFQ1RJT04pO2UudGFyZ2V0LnNldERpcmVjdGlvbih0KX10dXJuQXJvdW5kKEEsZSl7dGhpcy50dXJuUmlnaHQoe0RFR1JFRVM6MTgwfSxlKX1wb2ludEluRGlyZWN0aW9uUmFuZG9tKEEsZSl7dGhpcy5wb2ludFRvd2FyZHMoe1RPV0FSRFM6Il9yYW5kb21fIn0sZSl9cG9pbnRUb3dhcmRzWFkoQSxlKXtjb25zdCB0PW4udG9OdW1iZXIoQS5YKSxyPW4udG9OdW1iZXIoQS5ZKSxvPXQtZS50YXJnZXQueCxzPXItZS50YXJnZXQueSxhPTkwLWkucmFkVG9EZWcoTWF0aC5hdGFuMihzLG8pKTtlLnRhcmdldC5zZXREaXJlY3Rpb24oYSl9cG9pbnRUb3dhcmRzKEEsZSl7bGV0IHQ9MCxyPTA7aWYoIl9tb3VzZV8iPT09QS5UT1dBUkRTKXQ9ZS5pb1F1ZXJ5KCJtb3VzZSIsImdldFNjcmF0Y2hYIikscj1lLmlvUXVlcnkoIm1vdXNlIiwiZ2V0U2NyYXRjaFkiKTtlbHNle2lmKCJfcmFuZG9tXyI9PT1BLlRPV0FSRFMpcmV0dXJuIHZvaWQgZS50YXJnZXQuc2V0RGlyZWN0aW9uKE1hdGgucm91bmQoMzYwKk1hdGgucmFuZG9tKCkpLTE4MCk7e0EuVE9XQVJEUz1uLnRvU3RyaW5nKEEuVE9XQVJEUyk7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKEEuVE9XQVJEUyk7aWYoIWUpcmV0dXJuO3Q9ZS54LHI9ZS55fX1jb25zdCBvPXQtZS50YXJnZXQueCxzPXItZS50YXJnZXQueSxhPTkwLWkucmFkVG9EZWcoTWF0aC5hdGFuMihzLG8pKTtlLnRhcmdldC5zZXREaXJlY3Rpb24oYSl9Z2xpZGUoQSxlKXtpZihlLnN0YWNrRnJhbWUudGltZXIpe2NvbnN0IEE9ZS5zdGFja0ZyYW1lLnRpbWVyLnRpbWVFbGFwc2VkKCk7aWYoQTwxZTMqZS5zdGFja0ZyYW1lLmR1cmF0aW9uKXtjb25zdCB0PUEvKDFlMyplLnN0YWNrRnJhbWUuZHVyYXRpb24pLG49dCooZS5zdGFja0ZyYW1lLmVuZFgtZS5zdGFja0ZyYW1lLnN0YXJ0WCksaT10KihlLnN0YWNrRnJhbWUuZW5kWS1lLnN0YWNrRnJhbWUuc3RhcnRZKTtlLnRhcmdldC5zZXRYWShlLnN0YWNrRnJhbWUuc3RhcnRYK24sZS5zdGFja0ZyYW1lLnN0YXJ0WStpKSxlLnlpZWxkKCl9ZWxzZSBlLnRhcmdldC5zZXRYWShlLnN0YWNrRnJhbWUuZW5kWCxlLnN0YWNrRnJhbWUuZW5kWSl9ZWxzZXtpZihlLnN0YWNrRnJhbWUudGltZXI9bmV3IHIsZS5zdGFja0ZyYW1lLnRpbWVyLnN0YXJ0KCksZS5zdGFja0ZyYW1lLmR1cmF0aW9uPW4udG9OdW1iZXIoQS5TRUNTKSxlLnN0YWNrRnJhbWUuc3RhcnRYPWUudGFyZ2V0LngsZS5zdGFja0ZyYW1lLnN0YXJ0WT1lLnRhcmdldC55LGUuc3RhY2tGcmFtZS5lbmRYPW4udG9OdW1iZXIoQS5YKSxlLnN0YWNrRnJhbWUuZW5kWT1uLnRvTnVtYmVyKEEuWSksZS5zdGFja0ZyYW1lLmR1cmF0aW9uPD0wKXJldHVybiB2b2lkIGUudGFyZ2V0LnNldFhZKGUuc3RhY2tGcmFtZS5lbmRYLGUuc3RhY2tGcmFtZS5lbmRZKTtlLnlpZWxkKCl9fWdsaWRlVG8oQSxlKXtjb25zdCB0PXRoaXMuZ2V0VGFyZ2V0WFkoQS5UTyxlKTt0JiZ0aGlzLmdsaWRlKHtTRUNTOkEuU0VDUyxYOnRbMF0sWTp0WzFdfSxlKX1pZk9uRWRnZUJvdW5jZShBLGUpe3RoaXMuX2lmT25FZGdlQm91bmNlKGUudGFyZ2V0KX1faWZPbkVkZ2VCb3VuY2UoQSl7Y29uc3QgZT1BLmdldEJvdW5kcygpO2lmKCFlKXJldHVybjtjb25zdCB0PXRoaXMucnVudGltZS5zdGFnZVdpZHRoLG49dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0LHI9TWF0aC5tYXgoMCx0LzIrZS5sZWZ0KSxvPU1hdGgubWF4KDAsbi8yLWUudG9wKSxzPU1hdGgubWF4KDAsdC8yLWUucmlnaHQpLGE9TWF0aC5tYXgoMCxuLzIrZS5ib3R0b20pO2xldCBCPSIiLGM9MS8wO2lmKHI8YyYmKGM9cixCPSJsZWZ0IiksbzxjJiYoYz1vLEI9InRvcCIpLHM8YyYmKGM9cyxCPSJyaWdodCIpLGE8YyYmKGM9YSxCPSJib3R0b20iKSxjPjApcmV0dXJuO2NvbnN0IGc9aS5kZWdUb1JhZCg5MC1BLmRpcmVjdGlvbik7bGV0IEU9TWF0aC5jb3MoZyksUT0tTWF0aC5zaW4oZyk7ImxlZnQiPT09Qj9FPU1hdGgubWF4KC4yLE1hdGguYWJzKEUpKToidG9wIj09PUI/UT1NYXRoLm1heCguMixNYXRoLmFicyhRKSk6InJpZ2h0Ij09PUI/RT0wLU1hdGgubWF4KC4yLE1hdGguYWJzKEUpKToiYm90dG9tIj09PUImJihRPTAtTWF0aC5tYXgoLjIsTWF0aC5hYnMoUSkpKTtjb25zdCB1PWkucmFkVG9EZWcoTWF0aC5hdGFuMihRLEUpKSs5MDtBLnNldERpcmVjdGlvbih1KTtjb25zdCBsPUEua2VlcEluRmVuY2UoQS54LEEueSk7QS5zZXRYWShsWzBdLGxbMV0pfWlmT25YWUJvdW5jZShBLGUsdCxyLG8scyl7Y29uc3QgYT1uLnRvTnVtYmVyKEEuWCksQj1uLnRvTnVtYmVyKEEuWSksYz1lLnRhcmdldCxnPWMuZ2V0Qm91bmRzKCk7aWYoIWcpcmV0dXJuO2NvbnN0IEU9YT49Zy5sZWZ0JiZhPD1nLnJpZ2h0LFE9Qj49Zy5ib3R0b20mJkI8PWcudG9wO2lmKCEoITA9PT1zfHxFJiZRKSlyZXR1cm47bGV0IHU9IiIsbD0xLzA7Zm9yKGxldCBBPTA7QTw0O0ErKyl7Y29uc3QgZT1bImxlZnQiLCJ0b3AiLCJyaWdodCIsImJvdHRvbSJdO2xldCB0LG47c3dpdGNoKGVbQV0pe2Nhc2UibGVmdCI6Y2FzZSJyaWdodCI6dD1hLWdbZVtBXV0sbj1CLWMueTticmVhaztjYXNlInRvcCI6Y2FzZSJib3R0b20iOnQ9YS1jLngsbj1CLWdbZVtBXV19Y29uc3QgaT1NYXRoLnNxcnQodCp0K24qbik7aTxsJiYobD1pLHU9ZVtBXSl9Y29uc3QgaD1pLmRlZ1RvUmFkKDkwLWMuZGlyZWN0aW9uKTtsZXQgdz1NYXRoLmNvcyhoKSxDPS1NYXRoLnNpbihoKTsibGVmdCI9PT11P3c9TWF0aC5tYXgoLjIsTWF0aC5hYnModykpOiJ0b3AiPT09dT9DPU1hdGgubWF4KC4yLE1hdGguYWJzKEMpKToicmlnaHQiPT09dT93PTAtTWF0aC5tYXgoLjIsTWF0aC5hYnModykpOiJib3R0b20iPT09dSYmKEM9MC1NYXRoLm1heCguMixNYXRoLmFicyhDKSkpO2NvbnN0IEk9aS5yYWRUb0RlZyhNYXRoLmF0YW4yKEMsdykpKzkwO2Muc2V0RGlyZWN0aW9uKEkpO2NvbnN0IE09Yy5rZWVwSW5GZW5jZShjLngsYy55KTtjLnNldFhZKE1bMF0sTVsxXSl9aWZPblNwcml0ZUJvdW5jZShBLGUpe2lmKCJfbW91c2VfIj09PUEuU1BSSVRFKXtjb25zdCBBPWUuaW9RdWVyeSgibW91c2UiLCJnZXRTY3JhdGNoWCIpLHQ9ZS5pb1F1ZXJ5KCJtb3VzZSIsImdldFNjcmF0Y2hZIik7cmV0dXJuIHRoaXMuaWZPblhZQm91bmNlKHtYOkEsWTp0fSxlKX1pZigiX3JhbmRvbV8iPT09QS5TUFJJVEUpe2NvbnN0IEE9dGhpcy5ydW50aW1lLnN0YWdlV2lkdGgsdD10aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHQsbj1NYXRoLnJvdW5kKEEqKE1hdGgucmFuZG9tKCktLjUpKSxpPU1hdGgucm91bmQodCooTWF0aC5yYW5kb20oKS0uNSkpO3JldHVybiB0aGlzLmlmT25YWUJvdW5jZSh7WDpuLFk6aX0sZSl9Y29uc3QgdD1uLnRvU3RyaW5nKEEuU1BSSVRFKTtpZighdGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZSh0KSlyZXR1cm47Y29uc3QgaT1lLnRhcmdldC5zcHJpdGVUb3VjaGluZ1BvaW50KHQpO3JldHVybiBpP3RoaXMuaWZPblhZQm91bmNlKHtYOmlbMF0sWTppWzFdfSxlKTp2b2lkIDB9c2V0Um90YXRpb25TdHlsZShBLGUpe2UudGFyZ2V0LnNldFJvdGF0aW9uU3R5bGUoQS5TVFlMRSl9Y2hhbmdlWChBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLkRYKTtlLnRhcmdldC5zZXRYWShlLnRhcmdldC54K3QsZS50YXJnZXQueSl9c2V0WChBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLlgpO2UudGFyZ2V0LnNldFhZKHQsZS50YXJnZXQueSl9Y2hhbmdlWShBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLkRZKTtlLnRhcmdldC5zZXRYWShlLnRhcmdldC54LGUudGFyZ2V0LnkrdCl9c2V0WShBLGUpe2NvbnN0IHQ9bi50b051bWJlcihBLlkpO2UudGFyZ2V0LnNldFhZKGUudGFyZ2V0LngsdCl9Y2hhbmdlWFkoQSxlKXtjb25zdCB0PW4udG9OdW1iZXIoQS5EWCksaT1uLnRvTnVtYmVyKEEuRFkpO2UudGFyZ2V0LnNldFhZKGUudGFyZ2V0LngrdCxlLnRhcmdldC55K2kpfWdldFgoQSxlKXtyZXR1cm4gdGhpcy5saW1pdFByZWNpc2lvbihlLnRhcmdldC54KX1nZXRZKEEsZSl7cmV0dXJuIHRoaXMubGltaXRQcmVjaXNpb24oZS50YXJnZXQueSl9Z2V0RGlyZWN0aW9uKEEsZSl7cmV0dXJuIGUudGFyZ2V0LmRpcmVjdGlvbn1saW1pdFByZWNpc2lvbihBKXtjb25zdCBlPU1hdGgucm91bmQoQSksdD1BLWU7cmV0dXJuIE1hdGguYWJzKHQpPDFlLTk/ZTpBfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMiksaT10KDYpLHI9dCgyOCkse3ZhbGlkYXRlUmVnZXg6b309dCgxNCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BfWdldFByaW1pdGl2ZXMoKXtyZXR1cm57b3BlcmF0b3JfYWRkOnRoaXMuYWRkLG9wZXJhdG9yX3N1YnRyYWN0OnRoaXMuc3VidHJhY3Qsb3BlcmF0b3JfbXVsdGlwbHk6dGhpcy5tdWx0aXBseSxvcGVyYXRvcl9kaXZpZGU6dGhpcy5kaXZpZGUsb3BlcmF0b3JfcG93ZXI6dGhpcy5wb3dlcixvcGVyYXRvcl9sdDp0aGlzLmx0LG9wZXJhdG9yX2VxdWFsczp0aGlzLmVxdWFscyxvcGVyYXRvcl9ub3RlcXVhbDp0aGlzLm5vdGVxdWFscyxvcGVyYXRvcl9ndDp0aGlzLmd0LG9wZXJhdG9yX2x0b3JlcXVhbDp0aGlzLmx0b3JlcXVhbCxvcGVyYXRvcl9ndG9yZXF1YWw6dGhpcy5ndG9yZXF1YWwsb3BlcmF0b3JfYW5kOnRoaXMuYW5kLG9wZXJhdG9yX25hbmQ6dGhpcy5uYW5kLG9wZXJhdG9yX25vcjp0aGlzLm5vcixvcGVyYXRvcl94b3I6dGhpcy54b3Isb3BlcmF0b3JfeG5vcjp0aGlzLnhub3Isb3BlcmF0b3Jfb3I6dGhpcy5vcixvcGVyYXRvcl9ub3Q6dGhpcy5ub3Qsb3BlcmF0b3JfcmFuZG9tOnRoaXMucmFuZG9tLG9wZXJhdG9yX2pvaW46dGhpcy5qb2luLG9wZXJhdG9yX2pvaW4zOnRoaXMuam9pbjMsb3BlcmF0b3JfbGV0dGVyX29mOnRoaXMubGV0dGVyT2Ysb3BlcmF0b3JfbGVuZ3RoOnRoaXMubGVuZ3RoLG9wZXJhdG9yX2NvbnRhaW5zOnRoaXMuY29udGFpbnMsb3BlcmF0b3JfbW9kOnRoaXMubW9kLG9wZXJhdG9yX3JvdW5kOnRoaXMucm91bmQsb3BlcmF0b3JfbWF0aG9wOnRoaXMubWF0aG9wLG9wZXJhdG9yX2FkdmxvZzp0aGlzLmFkdmxvZyxvcGVyYXRvcl9yZWdleG1hdGNoOnRoaXMucmVnZXhtYXRjaCxvcGVyYXRvcl9yZXBsYWNlQWxsOnRoaXMucmVwbGFjZUFsbCxvcGVyYXRvcl9yZXBsYWNlRmlyc3Q6dGhpcy5yZXBsYWNlRmlyc3Qsb3BlcmF0b3JfZ2V0TGV0dGVyc0Zyb21JbmRleFRvSW5kZXhJblRleHQ6dGhpcy5nZXRMZXR0ZXJzRnJvbUluZGV4VG9JbmRleEluVGV4dCxvcGVyYXRvcl9nZXRMZXR0ZXJzRnJvbUluZGV4VG9JbmRleEluVGV4dEZpeGVkOnRoaXMuZ2V0TGV0dGVyc0Zyb21JbmRleFRvSW5kZXhJblRleHRGaXhlZCxvcGVyYXRvcl9yZWFkTGluZUluTXVsdGlsaW5lVGV4dDp0aGlzLnJlYWRMaW5lSW5NdWx0aWxpbmVUZXh0LG9wZXJhdG9yX25ld0xpbmU6dGhpcy5uZXdMaW5lLG9wZXJhdG9yX3RhYkNoYXJhY3Rlcjp0aGlzLnRhYkNoYXJhY3RlcixvcGVyYXRvcl9zdHJpbmdpZnk6dGhpcy5zdHJpbmdpZnksb3BlcmF0b3JfYm9vbGlmeTp0aGlzLmJvb2xpZnksb3BlcmF0b3JfbGVycEZ1bmM6dGhpcy5sZXJwRnVuYyxvcGVyYXRvcl9hZHZNYXRoOnRoaXMuYWR2TWF0aCxvcGVyYXRvcl9hZHZNYXRoRXhwYW5kZWQ6dGhpcy5hZHZNYXRoRXhwYW5kZWQsb3BlcmF0b3JfY29uc3RyYWlubnVtYmVyOnRoaXMuY29uc3RyYWlubnVtYmVyLG9wZXJhdG9yX3RydWVCb29sZWFuOnRoaXMudHJ1ZSxvcGVyYXRvcl9mYWxzZUJvb2xlYW46dGhpcy5mYWxzZSxvcGVyYXRvcl9yYW5kb21Cb29sZWFuOnRoaXMucmFuZG9tQm9vbGVhbixvcGVyYXRvcl9pbmRleE9mVGV4dEluVGV4dDp0aGlzLmluZGV4T2ZUZXh0SW5UZXh0LG9wZXJhdG9yX2xhc3RJbmRleE9mVGV4dEluVGV4dDp0aGlzLmxhc3RJbmRleE9mVGV4dEluVGV4dCxvcGVyYXRvcl90b1VwcGVyTG93ZXJDYXNlOnRoaXMudG9DYXNlLG9wZXJhdG9yX2NoYXJhY3Rlcl90b19jb2RlOnRoaXMuY2hhclRvQ29kZSxvcGVyYXRvcl9jb2RlX3RvX2NoYXJhY3Rlcjp0aGlzLmNvZGVUb0NoYXIsb3BlcmF0b3JfdGV4dFN0YXJ0c09yRW5kc1dpdGg6dGhpcy50ZXh0U3RhcnRzT3JFbmRzV2l0aCxvcGVyYXRvcl9jb3VudEFwcGVhclRpbWVzOnRoaXMuY291bnRBcHBlYXJUaW1lcyxvcGVyYXRvcl90ZXh0SW5jbHVkZXNMZXR0ZXJGcm9tOnRoaXMudGV4dEluY2x1ZGVzTGV0dGVyRnJvbSxvcGVyYXRvcl9qYXZhc2NyaXB0X291dHB1dDp0aGlzLmphdmFzY3JpcHRPdXRwdXQsb3BlcmF0b3JfamF2YXNjcmlwdF9ib29sZWFuOnRoaXMuamF2YXNjcmlwdEJvb2xlYW59fWphdmFzY3JpcHRPdXRwdXQoQSl7cmV0dXJuIG5ldyBQcm9taXNlKChlLHQpPT57Y29uc3QgaT1uLnRvU3RyaW5nKEEuSlMpO3IuZXhlY3V0ZShpKS50aGVuKEE9PntlKEEudmFsdWUpfSl9KX1qYXZhc2NyaXB0Qm9vbGVhbihBKXtyZXR1cm4gbmV3IFByb21pc2UoKGUsdCk9Pntjb25zdCBpPW4udG9TdHJpbmcoQS5KUyk7ci5leGVjdXRlKGkpLnRoZW4oQT0+e2UoITA9PT1BLnZhbHVlKX0pfSl9Y2hhclRvQ29kZShBKXtjb25zdCBlPW4udG9TdHJpbmcoQS5PTkUpO3JldHVybiBlP2UuY2hhckNvZGVBdCgwKTpOYU59Y29kZVRvQ2hhcihBKXtjb25zdCBlPW4udG9OdW1iZXIoQS5PTkUpO3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGUpfXRvQ2FzZShBKXtjb25zdCBlPW4udG9TdHJpbmcoQS5URVhUKTtzd2l0Y2goQS5PUFRJT04pe2Nhc2UidXBwZXIiOnJldHVybiBlLnRvVXBwZXJDYXNlKCk7Y2FzZSJsb3dlciI6cmV0dXJuIGUudG9Mb3dlckNhc2UoKX19aW5kZXhPZlRleHRJblRleHQoQSl7Y29uc3QgZT1uLnRvU3RyaW5nKEEuVEVYVDEpLHQ9bi50b1N0cmluZyhBLlRFWFQyKTtsZXQgaT0wO3JldHVybiB0LmluY2x1ZGVzKGUpJiYoaT10LmluZGV4T2YoZSkrMSksaX1sYXN0SW5kZXhPZlRleHRJblRleHQoQSl7Y29uc3QgZT1uLnRvU3RyaW5nKEEuVEVYVDEpLHQ9bi50b1N0cmluZyhBLlRFWFQyKTtsZXQgaT0wO3JldHVybiB0LmluY2x1ZGVzKGUpJiYoaT10Lmxhc3RJbmRleE9mKGUpKzEpLGl9dGV4dFN0YXJ0c09yRW5kc1dpdGgoQSl7Y29uc3QgZT1uLnRvU3RyaW5nKEEuVEVYVDEpLHQ9bi50b1N0cmluZyhBLk9QVElPTiksaT1uLnRvU3RyaW5nKEEuVEVYVDIpO3JldHVybiJzdGFydHMiPT09dD9lLnN0YXJ0c1dpdGgoaSk6ZS5lbmRzV2l0aChpKX1jb3VudEFwcGVhclRpbWVzKEEpe2NvbnN0IGU9bi50b1N0cmluZyhBLlRFWFQyKSx0PW4udG9TdHJpbmcoQS5URVhUMSksaT1lLnNwbGl0KHQpO3JldHVybiBpLmxlbmd0aDw9MT8wOmkubGVuZ3RoLTF9dGV4dEluY2x1ZGVzTGV0dGVyRnJvbShBKXtjb25zdCBlPW4udG9TdHJpbmcoQS5URVhUMSksdD1uLnRvU3RyaW5nKEEuVEVYVDIpO2xldCBpPSExO3JldHVybiB0LnNwbGl0KCIiKS5mb3JFYWNoKEE9PntlLmluY2x1ZGVzKEEpJiYoaT0hMCl9KSxpfXRydWUoKXtyZXR1cm4hMH1mYWxzZSgpe3JldHVybiExfXJhbmRvbUJvb2xlYW4oKXtyZXR1cm4gQm9vbGVhbihNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkpKX1jb25zdHJhaW5udW1iZXIoQSl7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KEEubWluLEEuaW5wKSxBLm1heCl9bGVycEZ1bmMoQSl7Y29uc3QgZT1uLnRvTnVtYmVyKEEuT05FKTtyZXR1cm4obi50b051bWJlcihBLlRXTyktZSkqbi50b051bWJlcihBLkFNT1VOVCkrZX1hZHZNYXRoKEEpe2NvbnN0IGU9aXNOYU4obi50b051bWJlcihBLk9ORSkpPzA6bi50b051bWJlcihBLk9ORSksdD1pc05hTihuLnRvTnVtYmVyKEEuVFdPKSk/MDpuLnRvTnVtYmVyKEEuVFdPKTtzd2l0Y2gobi50b1N0cmluZyhBLk9QVElPTikpe2Nhc2UiXiI6cmV0dXJuIGUqKnQ7Y2FzZSJyb290IjpyZXR1cm4gZSoqMS90O2Nhc2UibG9nIjpyZXR1cm4gTWF0aC5sb2codCkvTWF0aC5sb2coZSk7ZGVmYXVsdDpyZXR1cm4gMH19YWR2TWF0aEV4cGFuZGVkKEEpe2NvbnN0IGU9bi50b051bWJlcihBLk9ORSksdD1uLnRvTnVtYmVyKEEuVFdPKSxpPW4udG9OdW1iZXIoQS5USFJFRSk7c3dpdGNoKG4udG9TdHJpbmcoQS5PUFRJT04pKXtjYXNlInJvb3QiOnJldHVybiBlKk1hdGgucG93KGksMS90KTtjYXNlImxvZyI6cmV0dXJuIGUqTWF0aC5sb2coaSkvTWF0aC5sb2codCk7ZGVmYXVsdDpyZXR1cm4gMH19c3RyaW5naWZ5KEEpe3JldHVybiBuLnRvU3RyaW5nKEEuT05FKX1ib29saWZ5KEEpe3JldHVybiBuLnRvQm9vbGVhbihBLk9ORSl9bmV3TGluZSgpe3JldHVybiJcbiJ9dGFiQ2hhcmFjdGVyKCl7cmV0dXJuIlx0In1yZWFkTGluZUluTXVsdGlsaW5lVGV4dChBKXtjb25zdCBlPShuLnRvTnVtYmVyKEEuTElORSk/bi50b051bWJlcihBLkxJTkUpOjEpLTE7cmV0dXJuIG4udG9TdHJpbmcoQS5URVhUKS5zcGxpdCgiXG4iKVtlXXx8IiJ9Z2V0TGV0dGVyc0Zyb21JbmRleFRvSW5kZXhJblRleHRGaXhlZChBKXtjb25zdCBlPShuLnRvTnVtYmVyKEEuSU5ERVgxKT9uLnRvTnVtYmVyKEEuSU5ERVgxKToxKS0xLHQ9bi50b051bWJlcihBLklOREVYMik/bi50b051bWJlcihBLklOREVYMik6MTtyZXR1cm4gbi50b1N0cmluZyhBLlRFWFQpLnN1YnN0cmluZyhlLHQpfWdldExldHRlcnNGcm9tSW5kZXhUb0luZGV4SW5UZXh0KEEpe2NvbnN0IGU9KG4udG9OdW1iZXIoQS5JTkRFWDEpP24udG9OdW1iZXIoQS5JTkRFWDEpOjEpLTEsdD0obi50b051bWJlcihBLklOREVYMik/bi50b051bWJlcihBLklOREVYMik6MSktMTtyZXR1cm4gbi50b1N0cmluZyhBLlRFWFQpLnN1YnN0cmluZyhlLHQpfXJlcGxhY2VBbGwoQSl7cmV0dXJuIG4udG9TdHJpbmcoQS50ZXh0KS5yZXBsYWNlQWxsKEEudGVybSxBLnJlcyl9cmVwbGFjZUZpcnN0KEEpe3JldHVybiBuLnRvU3RyaW5nKEEudGV4dCkucmVwbGFjZShBLnRlcm0sQS5yZXMpfXJlZ2V4bWF0Y2goQSl7aWYoIW8oQS5yZWcsQS5yZWdydWxlKSlyZXR1cm4iW10iO2NvbnN0IGU9bmV3IFJlZ0V4cChBLnJlZyxBLnJlZ3J1bGUpLHQ9QS50ZXh0Lm1hdGNoKGUpO3JldHVybiBKU09OLnN0cmluZ2lmeSh0fHxbXSl9YWRkKEEpe3JldHVybiBuLnRvTnVtYmVyKEEuTlVNMSkrbi50b051bWJlcihBLk5VTTIpfXN1YnRyYWN0KEEpe3JldHVybiBuLnRvTnVtYmVyKEEuTlVNMSktbi50b051bWJlcihBLk5VTTIpfW11bHRpcGx5KEEpe3JldHVybiBuLnRvTnVtYmVyKEEuTlVNMSkqbi50b051bWJlcihBLk5VTTIpfWRpdmlkZShBKXtyZXR1cm4gbi50b051bWJlcihBLk5VTTEpL24udG9OdW1iZXIoQS5OVU0yKX1wb3dlcihBKXtyZXR1cm4gTWF0aC5wb3cobi50b051bWJlcihBLk5VTTEpLG4udG9OdW1iZXIoQS5OVU0yKSl9bHQoQSl7cmV0dXJuIG4uY29tcGFyZShBLk9QRVJBTkQxLEEuT1BFUkFORDIpPDB9ZXF1YWxzKEEpe3JldHVybiAwPT09bi5jb21wYXJlKEEuT1BFUkFORDEsQS5PUEVSQU5EMil9bm90ZXF1YWxzKEEpe3JldHVybiF0aGlzLmVxdWFscyhBKX1ndChBKXtyZXR1cm4gbi5jb21wYXJlKEEuT1BFUkFORDEsQS5PUEVSQU5EMik+MH1ndG9yZXF1YWwoQSl7cmV0dXJuIXRoaXMubHQoQSl9bHRvcmVxdWFsKEEpe3JldHVybiF0aGlzLmd0KEEpfWFuZChBKXtyZXR1cm4gbi50b0Jvb2xlYW4oQS5PUEVSQU5EMSkmJm4udG9Cb29sZWFuKEEuT1BFUkFORDIpfW5hbmQoQSl7cmV0dXJuIShuLnRvQm9vbGVhbihBLk9QRVJBTkQxKSYmbi50b0Jvb2xlYW4oQS5PUEVSQU5EMikpfW5vcihBKXtyZXR1cm4hKG4udG9Cb29sZWFuKEEuT1BFUkFORDEpfHxuLnRvQm9vbGVhbihBLk9QRVJBTkQyKSl9eG9yKEEpe2NvbnN0IGU9bi50b0Jvb2xlYW4oQS5PUEVSQU5EMSksdD1uLnRvQm9vbGVhbihBLk9QRVJBTkQyKTtyZXR1cm4gZT8hdDp0fXhub3IoQSl7cmV0dXJuIXRoaXMueG9yKEEpfW9yKEEpe3JldHVybiBuLnRvQm9vbGVhbihBLk9QRVJBTkQxKXx8bi50b0Jvb2xlYW4oQS5PUEVSQU5EMil9bm90KEEpe3JldHVybiFuLnRvQm9vbGVhbihBLk9QRVJBTkQpfXJhbmRvbShBKXtyZXR1cm4gdGhpcy5fcmFuZG9tKEEuRlJPTSxBLlRPKX1fcmFuZG9tKEEsZSl7Y29uc3QgdD1uLnRvTnVtYmVyKEEpLGk9bi50b051bWJlcihlKSxyPXQ8PWk/dDppLG89dDw9aT9pOnQ7cmV0dXJuIHI9PT1vP3I6bi5pc0ludChBKSYmbi5pc0ludChlKT9yK01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoobysxLXIpKTpNYXRoLnJhbmRvbSgpKihvLXIpK3J9am9pbihBKXtyZXR1cm4gbi50b1N0cmluZyhBLlNUUklORzEpK24udG9TdHJpbmcoQS5TVFJJTkcyKX1qb2luMyhBKXtyZXR1cm4gbi50b1N0cmluZyhBLlNUUklORzEpK24udG9TdHJpbmcoQS5TVFJJTkcyKStuLnRvU3RyaW5nKEEuU1RSSU5HMyl9bGV0dGVyT2YoQSl7Y29uc3QgZT1uLnRvTnVtYmVyKEEuTEVUVEVSKS0xLHQ9bi50b1N0cmluZyhBLlNUUklORyk7cmV0dXJuIGU8MHx8ZT49dC5sZW5ndGg/IiI6dC5jaGFyQXQoZSl9bGVuZ3RoKEEpe3JldHVybiBuLnRvU3RyaW5nKEEuU1RSSU5HKS5sZW5ndGh9Y29udGFpbnMoQSl7Y29uc3QgZT1mdW5jdGlvbihBKXtyZXR1cm4gbi50b1N0cmluZyhBKS50b0xvd2VyQ2FzZSgpfTtyZXR1cm4gZShBLlNUUklORzEpLmluY2x1ZGVzKGUoQS5TVFJJTkcyKSl9bW9kKEEpe2NvbnN0IGU9bi50b051bWJlcihBLk5VTTEpLHQ9bi50b051bWJlcihBLk5VTTIpO2xldCBpPWUldDtyZXR1cm4gaS90PDAmJihpKz10KSxpfXJvdW5kKEEpe3JldHVybiBNYXRoLnJvdW5kKG4udG9OdW1iZXIoQS5OVU0pKX1tYXRob3AoQSl7Y29uc3QgZT1uLnRvU3RyaW5nKEEuT1BFUkFUT1IpLnRvTG93ZXJDYXNlKCksdD1uLnRvTnVtYmVyKEEuTlVNKTtzd2l0Y2goZSl7Y2FzZSJhYnMiOnJldHVybiBNYXRoLmFicyh0KTtjYXNlImZsb29yIjpyZXR1cm4gTWF0aC5mbG9vcih0KTtjYXNlImNlaWxpbmciOnJldHVybiBNYXRoLmNlaWwodCk7Y2FzZSJzcXJ0IjpyZXR1cm4gTWF0aC5zcXJ0KHQpO2Nhc2Uic2luIjpyZXR1cm4gTWF0aC5yb3VuZCgxZTEwKk1hdGguc2luKE1hdGguUEkqdC8xODApKS8xZTEwO2Nhc2UiY29zIjpyZXR1cm4gTWF0aC5yb3VuZCgxZTEwKk1hdGguY29zKE1hdGguUEkqdC8xODApKS8xZTEwO2Nhc2UidGFuIjpyZXR1cm4gaS50YW4odCk7Y2FzZSJhc2luIjpyZXR1cm4gMTgwKk1hdGguYXNpbih0KS9NYXRoLlBJO2Nhc2UiYWNvcyI6cmV0dXJuIDE4MCpNYXRoLmFjb3ModCkvTWF0aC5QSTtjYXNlImF0YW4iOnJldHVybiAxODAqTWF0aC5hdGFuKHQpL01hdGguUEk7Y2FzZSJsbiI6cmV0dXJuIE1hdGgubG9nKHQpO2Nhc2UibG9nIjpyZXR1cm4gTWF0aC5sb2codCkvTWF0aC5MTjEwO2Nhc2UibG9nMiI6cmV0dXJuIE1hdGgubG9nMih0KTtjYXNlImUgXiI6cmV0dXJuIE1hdGguZXhwKHQpO2Nhc2UiMTAgXiI6cmV0dXJuIE1hdGgucG93KDEwLHQpfXJldHVybiAwfWFkdmxvZyhBKXtyZXR1cm4gTWF0aC5sb2cobi50b051bWJlcihBLk5VTTIpKS9NYXRoLmxvZyhuLnRvTnVtYmVyKEEuTlVNMSkpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNiksaT10KDIpLHI9dCg3KSxvPXQoMzUpO2NsYXNzIHN7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy53YWl0aW5nU291bmRzPXt9LHRoaXMuc3RvcEFsbFNvdW5kcz10aGlzLnN0b3BBbGxTb3VuZHMuYmluZCh0aGlzKSx0aGlzLl9zdG9wV2FpdGluZ1NvdW5kc0ZvclRhcmdldD10aGlzLl9zdG9wV2FpdGluZ1NvdW5kc0ZvclRhcmdldC5iaW5kKHRoaXMpLHRoaXMuX2NsZWFyRWZmZWN0c0ZvckFsbFRhcmdldHM9dGhpcy5fY2xlYXJFZmZlY3RzRm9yQWxsVGFyZ2V0cy5iaW5kKHRoaXMpLHRoaXMucnVudGltZSYmKHRoaXMucnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsdGhpcy5zdG9wQWxsU291bmRzKSx0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RPUF9BTEwiLHRoaXMuX2NsZWFyRWZmZWN0c0ZvckFsbFRhcmdldHMpLHRoaXMucnVudGltZS5vbigiU1RPUF9GT1JfVEFSR0VUIix0aGlzLl9zdG9wV2FpdGluZ1NvdW5kc0ZvclRhcmdldCksdGhpcy5ydW50aW1lLm9uKCJQUk9KRUNUX1NUQVJUIix0aGlzLl9jbGVhckVmZmVjdHNGb3JBbGxUYXJnZXRzKSksdGhpcy5fb25UYXJnZXRDcmVhdGVkPXRoaXMuX29uVGFyZ2V0Q3JlYXRlZC5iaW5kKHRoaXMpLHRoaXMucnVudGltZSYmQS5vbigidGFyZ2V0V2FzQ3JlYXRlZCIsdGhpcy5fb25UYXJnZXRDcmVhdGVkKX1zdGF0aWMgZ2V0IFNUQVRFX0tFWSgpe3JldHVybiJTY3JhdGNoLnNvdW5kIn1zdGF0aWMgZ2V0IERFRkFVTFRfU09VTkRfU1RBVEUoKXtyZXR1cm57ZWZmZWN0czp7cGl0Y2g6MCxwYW46MH19fXN0YXRpYyBnZXQgTUlESV9OT1RFX1JBTkdFKCl7cmV0dXJue21pbjozNixtYXg6OTZ9fXN0YXRpYyBnZXQgQkVBVF9SQU5HRSgpe3JldHVybnttaW46MCxtYXg6MTAwfX1zdGF0aWMgZ2V0IFRFTVBPX1JBTkdFKCl7cmV0dXJue21pbjoyMCxtYXg6NTAwfX1zdGF0aWMgZ2V0IEVGRkVDVF9SQU5HRSgpe3JldHVybntwaXRjaDp7bWluOi0zNjAsbWF4OjM2MH0scGFuOnttaW46LTEwMCxtYXg6MTAwfX19c3RhdGljIGdldCBMQVJHRVJfRUZGRUNUX1JBTkdFKCl7cmV0dXJue3BpdGNoOnttaW46LTFlMyxtYXg6MWUzfSxwYW46e21pbjotMTAwLG1heDoxMDB9fX1fZ2V0U291bmRTdGF0ZShBKXtsZXQgZT1BLmdldEN1c3RvbVN0YXRlKHMuU1RBVEVfS0VZKTtyZXR1cm4gZXx8KGU9ci5zaW1wbGUocy5ERUZBVUxUX1NPVU5EX1NUQVRFKSxBLnNldEN1c3RvbVN0YXRlKHMuU1RBVEVfS0VZLGUpLEEuc291bmRFZmZlY3RzPWUuZWZmZWN0cyksZX1fb25UYXJnZXRDcmVhdGVkKEEsZSl7aWYoZSl7Y29uc3QgdD1lLmdldEN1c3RvbVN0YXRlKHMuU1RBVEVfS0VZKTt0JiZBJiYoQS5zZXRDdXN0b21TdGF0ZShzLlNUQVRFX0tFWSxyLnNpbXBsZSh0KSksdGhpcy5fc3luY0VmZmVjdHNGb3JUYXJnZXQoQSkpfX1nZXRQcmltaXRpdmVzKCl7cmV0dXJue3NvdW5kX3BsYXk6dGhpcy5wbGF5U291bmQsc291bmRfcGxheWFsbHNvdW5kczp0aGlzLnBsYXlTb3VuZEFsbExvbE9wQU9JVUhGb2l1YmVhODdmZ2U4N2l1ZndoZWY4N3d5ZTg3Zm4sc291bmRfcGxheXVudGlsZG9uZTp0aGlzLnBsYXlTb3VuZEFuZFdhaXQsc291bmRfc3RvcDp0aGlzLnN0b3BTcGVjaWZpY1NvdW5kLHNvdW5kX3N0b3BhbGxzb3VuZHM6dGhpcy5zdG9wQWxsU291bmRzLHNvdW5kX3NldGVmZmVjdHRvOnRoaXMuc2V0RWZmZWN0LHNvdW5kX2NoYW5nZWVmZmVjdGJ5OnRoaXMuY2hhbmdlRWZmZWN0LHNvdW5kX2NsZWFyZWZmZWN0czp0aGlzLmNsZWFyRWZmZWN0cyxzb3VuZF9zb3VuZHNfbWVudTp0aGlzLnNvdW5kc01lbnUsc291bmRfYmVhdHNfbWVudTp0aGlzLmJlYXRzTWVudSxzb3VuZF9lZmZlY3RzX21lbnU6dGhpcy5lZmZlY3RzTWVudSxzb3VuZF9zZXR2b2x1bWV0bzp0aGlzLnNldFZvbHVtZSxzb3VuZF9jaGFuZ2V2b2x1bWVieTp0aGlzLmNoYW5nZVZvbHVtZSxzb3VuZF92b2x1bWU6dGhpcy5nZXRWb2x1bWUsc291bmRfaXNTb3VuZFBsYXlpbmc6dGhpcy5pc1NvdW5kUGxheWluZyxzb3VuZF9nZXRFZmZlY3RWYWx1ZTp0aGlzLmdldEVmZmVjdFZhbHVlLHNvdW5kX2dldExlbmd0aDp0aGlzLmdldExlbmd0aCxzb3VuZF9zZXRfc3RvcF9mYWRlb3V0X3RvOnRoaXMuc2V0U3RvcEZhZGVvdXQsc291bmRfcGxheV9hdF9zZWNvbmRzOnRoaXMucGxheUF0U2Vjb25kcyxzb3VuZF9wbGF5X2F0X3NlY29uZHNfdW50aWxfZG9uZTp0aGlzLnBsYXlBdFNlY29uZHNBbmRXYWl0LHNvdW5kX2dldFNvdW5kVm9sdW1lOnRoaXMuY3VycmVudFNvdW5kVm9sdW1lfX1nZXRNb25pdG9yZWQoKXtyZXR1cm57c291bmRfdm9sdW1lOntpc1Nwcml0ZVNwZWNpZmljOiEwLGdldElkOkE9PiIiLmNvbmNhdChBLCJfdm9sdW1lIil9LHNvdW5kX2dldEVmZmVjdFZhbHVlOntpc1Nwcml0ZVNwZWNpZmljOiEwLGdldElkOihBLGUpPT5vKCIiLmNvbmNhdChBLCJfc291bmRnZXRFZmZlY3RWYWx1ZSIpLGUpfX19Y3VycmVudFNvdW5kVm9sdW1lKEEsZSl7fXBsYXlBdFNlY29uZHMoQSxlKXtjb25zdCB0PWkudG9OdW1iZXIoQS5WQUxVRSk7dDwwfHx0aGlzLl9wbGF5U291bmRBdFRpbWVQb3NpdGlvbih7c291bmQ6aS50b1N0cmluZyhBLlNPVU5EX01FTlUpLHNlY29uZHM6dH0sZSwhMCl9cGxheUF0U2Vjb25kc0FuZFdhaXQoQSxlKXtjb25zdCB0PWkudG9OdW1iZXIoQS5WQUxVRSk7aWYoISh0PDApKXJldHVybiB0aGlzLl9wbGF5U291bmRBdFRpbWVQb3NpdGlvbih7c291bmQ6aS50b1N0cmluZyhBLlNPVU5EX01FTlUpLHNlY29uZHM6dH0sZSwhMCl9X3BsYXlTb3VuZEF0VGltZVBvc2l0aW9uKEEsZSx0KXtsZXR7c291bmQ6bixzZWNvbmRzOml9PUE7Y29uc3Qgcj10aGlzLl9nZXRTb3VuZEluZGV4KG4sZSk7aWYocj49MCl7Y29uc3R7dGFyZ2V0OkF9PWUse3Nwcml0ZTpufT1BLHtzb3VuZElkOm99PW4uc291bmRzW3JdO2lmKG4uc291bmRCYW5rKXJldHVybiEwPT09dD90aGlzLl9hZGRXYWl0aW5nU291bmQoQS5pZCxvKTp0aGlzLl9yZW1vdmVXYWl0aW5nU291bmQoQS5pZCxvKSxuLnNvdW5kQmFuay5wbGF5U291bmQoQSxvLGkpfX1zZXRTdG9wRmFkZW91dChBLGUpe2NvbnN0IHQ9aS50b1N0cmluZyhBLlNPVU5EX01FTlUpLG49dGhpcy5fZ2V0U291bmRJbmRleCh0LGUpO2lmKG48MClyZXR1cm47Y29uc3Qgcj1lLnRhcmdldC5zcHJpdGU7aWYoIXIpcmV0dXJuO2lmKCFyLnNvdW5kcylyZXR1cm47Y29uc3R7c291bmRJZDpvfT1yLnNvdW5kc1tuXSxzPXIuc291bmRCYW5rO2lmKCFzKXJldHVybjtjb25zdCBhPWkudG9OdW1iZXIoQS5WQUxVRSk7cy5zb3VuZFBsYXllcnNbb10uc3RvcEZhZGVEZWNheT1hPD0wPzA6YX1nZXRFZmZlY3RWYWx1ZShBLGUpe2NvbnN0IHQ9ZS50YXJnZXQuc291bmRFZmZlY3RzO2lmKCF0KXJldHVybiAwO2NvbnN0IG49aS50b1N0cmluZyhBLkVGRkVDVCkudG9Mb3dlckNhc2UoKTtpZighdC5oYXNPd25Qcm9wZXJ0eShuKSlyZXR1cm4gMDtyZXR1cm4gaS50b051bWJlcih0W25dKX1pc1NvdW5kUGxheWluZyhBLGUpe2NvbnN0IHQ9dGhpcy5fZ2V0U291bmRJbmRleChBLlNPVU5EX01FTlUsZSk7aWYodDwwKXJldHVybiExO2NvbnN0IG49ZS50YXJnZXQuc3ByaXRlO2lmKCFuKXJldHVybiExO2NvbnN0e3NvdW5kSWQ6aX09bi5zb3VuZHNbdF0scj1uLnNvdW5kQmFuaztpZighcilyZXR1cm4hMTtjb25zdCBvPXIuc291bmRQbGF5ZXJzO3JldHVybiEhbyYmKCEhby5oYXNPd25Qcm9wZXJ0eShpKSYmMT09b1tpXS5pc1BsYXlpbmcpfWdldExlbmd0aChBLGUpe2NvbnN0IHQ9dGhpcy5fZ2V0U291bmRJbmRleChBLlNPVU5EX01FTlUsZSk7aWYodDwwKXJldHVybiAwO2NvbnN0IG49ZS50YXJnZXQuc3ByaXRlO2lmKCFuKXJldHVybiAwO2NvbnN0e3NvdW5kSWQ6cn09bi5zb3VuZHNbdF0sbz1uLnNvdW5kQmFuaztpZighbylyZXR1cm4gMDtjb25zdCBzPW8uc291bmRQbGF5ZXJzO2lmKCFzKXJldHVybiAwO2lmKCFzLmhhc093blByb3BlcnR5KHIpKXJldHVybiAwO2NvbnN0IGE9c1tyXS5idWZmZXI7cmV0dXJuIGE/aS50b051bWJlcihhLmR1cmF0aW9uKTowfXN0b3BTcGVjaWZpY1NvdW5kKEEsZSl7Y29uc3QgdD10aGlzLl9nZXRTb3VuZEluZGV4KEEuU09VTkRfTUVOVSxlKTtpZih0PDApcmV0dXJuO2NvbnN0IG49ZS50YXJnZXQsaT1uLnNwcml0ZTtpZighaSlyZXR1cm47Y29uc3R7c291bmRJZDpyfT1pLnNvdW5kc1t0XSxvPWkuc291bmRCYW5rO28mJm8uc3RvcChuLHIpfXBsYXlTb3VuZChBLGUpe3RoaXMuX3BsYXlTb3VuZChBLGUpfXBsYXlTb3VuZEFuZFdhaXQoQSxlKXtyZXR1cm4gdGhpcy5fcGxheVNvdW5kKEEsZSwhMCl9X3BsYXlTb3VuZChBLGUsdCl7Y29uc3Qgbj10aGlzLl9nZXRTb3VuZEluZGV4KEEuU09VTkRfTUVOVSxlKTtpZihuPj0wKXtjb25zdHt0YXJnZXQ6QX09ZSx7c3ByaXRlOml9PUEse3NvdW5kSWQ6cn09aS5zb3VuZHNbbl07aWYoaS5zb3VuZEJhbmspcmV0dXJuITA9PT10P3RoaXMuX2FkZFdhaXRpbmdTb3VuZChBLmlkLHIpOnRoaXMuX3JlbW92ZVdhaXRpbmdTb3VuZChBLmlkLHIpLGkuc291bmRCYW5rLnBsYXlTb3VuZChBLHIpfX1fYWRkV2FpdGluZ1NvdW5kKEEsZSl7dGhpcy53YWl0aW5nU291bmRzW0FdfHwodGhpcy53YWl0aW5nU291bmRzW0FdPW5ldyBTZXQpLHRoaXMud2FpdGluZ1NvdW5kc1tBXS5hZGQoZSl9X3JlbW92ZVdhaXRpbmdTb3VuZChBLGUpe3RoaXMud2FpdGluZ1NvdW5kc1tBXSYmdGhpcy53YWl0aW5nU291bmRzW0FdLmRlbGV0ZShlKX1fZ2V0U291bmRJbmRleChBLGUpe2NvbnN0IHQ9ZS50YXJnZXQuc3ByaXRlLnNvdW5kcy5sZW5ndGg7aWYoMD09PXQpcmV0dXJuLTE7Y29uc3QgaT10aGlzLmdldFNvdW5kSW5kZXhCeU5hbWUoQSxlKTtpZigtMSE9PWkpcmV0dXJuIGk7Y29uc3Qgcj1wYXJzZUludChBLDEwKTtyZXR1cm4gaXNOYU4ocik/LTE6bi53cmFwQ2xhbXAoci0xLDAsdC0xKX1nZXRTb3VuZEluZGV4QnlOYW1lKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5zcHJpdGUuc291bmRzO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKWlmKHRbZV0ubmFtZT09PUEpcmV0dXJuIGU7cmV0dXJuLTF9c3RvcEFsbFNvdW5kcygpe2lmKG51bGw9PT10aGlzLnJ1bnRpbWUudGFyZ2V0cylyZXR1cm47Y29uc3QgQT10aGlzLnJ1bnRpbWUudGFyZ2V0cztmb3IobGV0IGU9MDtlPEEubGVuZ3RoO2UrKyl0aGlzLl9zdG9wQWxsU291bmRzRm9yVGFyZ2V0KEFbZV0pfXBsYXlTb3VuZEFsbExvbE9wQU9JVUhGb2l1YmVhODdmZ2U4N2l1ZndoZWY4N3d5ZTg3Zm4oQSxlKXtjb25zdCB0PWUudGFyZ2V0LG49dC5zcHJpdGU7aWYobilmb3IobGV0IEE9MDtBPG4uc291bmRzLmxlbmd0aDtBKyspe2NvbnN0e3NvdW5kSWQ6ZX09bi5zb3VuZHNbQV07bi5zb3VuZEJhbmsmJm4uc291bmRCYW5rLnBsYXlTb3VuZCh0LGUpfX1fc3RvcEFsbFNvdW5kc0ZvclRhcmdldChBKXtBLnNwcml0ZS5zb3VuZEJhbmsmJihBLnNwcml0ZS5zb3VuZEJhbmsuc3RvcEFsbFNvdW5kcyhBKSx0aGlzLndhaXRpbmdTb3VuZHNbQS5pZF0mJnRoaXMud2FpdGluZ1NvdW5kc1tBLmlkXS5jbGVhcigpKX1fc3RvcFdhaXRpbmdTb3VuZHNGb3JUYXJnZXQoQSl7aWYoQS5zcHJpdGUuc291bmRCYW5rJiZ0aGlzLndhaXRpbmdTb3VuZHNbQS5pZF0pe2Zvcihjb25zdCBlIG9mIHRoaXMud2FpdGluZ1NvdW5kc1tBLmlkXS52YWx1ZXMoKSlBLnNwcml0ZS5zb3VuZEJhbmsuc3RvcChBLGUpO3RoaXMud2FpdGluZ1NvdW5kc1tBLmlkXS5jbGVhcigpfX1zZXRFZmZlY3QoQSxlKXtyZXR1cm4gdGhpcy5fdXBkYXRlRWZmZWN0KEEsZSwhMSl9Y2hhbmdlRWZmZWN0KEEsZSl7cmV0dXJuIHRoaXMuX3VwZGF0ZUVmZmVjdChBLGUsITApfV91cGRhdGVFZmZlY3QoQSxlLHQpe2NvbnN0IHI9aS50b1N0cmluZyhBLkVGRkVDVCkudG9Mb3dlckNhc2UoKSxvPWkudG9OdW1iZXIoQS5WQUxVRSksYT10aGlzLl9nZXRTb3VuZFN0YXRlKGUudGFyZ2V0KTtpZighYS5lZmZlY3RzLmhhc093blByb3BlcnR5KHIpKXJldHVybjt0P2EuZWZmZWN0c1tyXSs9bzphLmVmZmVjdHNbcl09bztjb25zdCBCPXRoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5taXNjTGltaXRzLHttaW46YyxtYXg6Z309Qj9zLkVGRkVDVF9SQU5HRVtyXTpzLkxBUkdFUl9FRkZFQ1RfUkFOR0Vbcl07aWYoYS5lZmZlY3RzW3JdPW4uY2xhbXAoYS5lZmZlY3RzW3JdLGMsZyksdGhpcy5fc3luY0VmZmVjdHNGb3JUYXJnZXQoZS50YXJnZXQpLEIpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO3RoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9X3N5bmNFZmZlY3RzRm9yVGFyZ2V0KEEpe0EmJkEuc3ByaXRlLnNvdW5kQmFuayYmKEEuc291bmRFZmZlY3RzPXRoaXMuX2dldFNvdW5kU3RhdGUoQSkuZWZmZWN0cyxBLnNwcml0ZS5zb3VuZEJhbmsuc2V0RWZmZWN0cyhBKSl9Y2xlYXJFZmZlY3RzKEEsZSl7dGhpcy5fY2xlYXJFZmZlY3RzRm9yVGFyZ2V0KGUudGFyZ2V0KX1fY2xlYXJFZmZlY3RzRm9yVGFyZ2V0KEEpe2NvbnN0IGU9dGhpcy5fZ2V0U291bmRTdGF0ZShBKTtmb3IoY29uc3QgQSBpbiBlLmVmZmVjdHMpZS5lZmZlY3RzLmhhc093blByb3BlcnR5KEEpJiYoZS5lZmZlY3RzW0FdPTApO3RoaXMuX3N5bmNFZmZlY3RzRm9yVGFyZ2V0KEEpfV9jbGVhckVmZmVjdHNGb3JBbGxUYXJnZXRzKCl7aWYobnVsbD09PXRoaXMucnVudGltZS50YXJnZXRzKXJldHVybjtjb25zdCBBPXRoaXMucnVudGltZS50YXJnZXRzO2ZvcihsZXQgZT0wO2U8QS5sZW5ndGg7ZSsrKXRoaXMuX2NsZWFyRWZmZWN0c0ZvclRhcmdldChBW2VdKX1zZXRWb2x1bWUoQSxlKXtjb25zdCB0PWkudG9OdW1iZXIoQS5WT0xVTUUpO3JldHVybiB0aGlzLl91cGRhdGVWb2x1bWUodCxlLnRhcmdldCl9Y2hhbmdlVm9sdW1lKEEsZSl7Y29uc3QgdD1pLnRvTnVtYmVyKEEuVk9MVU1FKStlLnRhcmdldC52b2x1bWU7cmV0dXJuIHRoaXMuX3VwZGF0ZVZvbHVtZSh0LGUudGFyZ2V0KX1fdXBkYXRlVm9sdW1lKEEsZSl7aWYoQT1uLmNsYW1wKEEsMCwxMDApLGUudm9sdW1lPUEsdGhpcy5fc3luY0VmZmVjdHNGb3JUYXJnZXQoZSksdGhpcy5ydW50aW1lLnJ1bnRpbWVPcHRpb25zLm1pc2NMaW1pdHMpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO3RoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9Z2V0Vm9sdW1lKEEsZSl7cmV0dXJuIGUudGFyZ2V0LnZvbHVtZX1zb3VuZHNNZW51KEEpe3JldHVybiBBLlNPVU5EX01FTlV9YmVhdHNNZW51KEEpe3JldHVybiBBLkJFQVRTfWVmZmVjdHNNZW51KEEpe3JldHVybiBBLkVGRkVDVH19QS5leHBvcnRzPXN9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMiksaT10KDE4KSxyPXQoNiksbz10KDM1KSx7dmFsaWRhdGVSZWdleDpzfT10KDE0KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5fYW5zd2VyPSIiLHRoaXMuX3RpbWVyPW5ldyBpLHRoaXMuX2NhY2hlZExvdWRuZXNzPS0xLHRoaXMuX2NhY2hlZExvdWRuZXNzVGltZXN0YW1wPTAsdGhpcy5fbG91ZG5lc3NMaXN0PVtdLHRoaXMuX3F1ZXN0aW9uTGlzdD1bXSx0aGlzLnJ1bnRpbWUub24oIkFOU1dFUiIsdGhpcy5fb25BbnN3ZXIuYmluZCh0aGlzKSksdGhpcy5ydW50aW1lLm9uKCJQUk9KRUNUX1NUQVJUIix0aGlzLl9yZXNldEFuc3dlci5iaW5kKHRoaXMpKSx0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RPUF9BTEwiLHRoaXMuX2NsZWFyQWxsUXVlc3Rpb25zLmJpbmQodGhpcykpLHRoaXMucnVudGltZS5vbigiU1RPUF9GT1JfVEFSR0VUIix0aGlzLl9jbGVhclRhcmdldFF1ZXN0aW9ucy5iaW5kKHRoaXMpKSx0aGlzLnJ1bnRpbWUub24oIlJVTlRJTUVfRElTUE9TRUQiLHRoaXMuX3Jlc2V0QW5zd2VyLmJpbmQodGhpcykpfWdldFByaW1pdGl2ZXMoKXtyZXR1cm57c2Vuc2luZ19vYmplY3R0b3VjaGluZ29iamVjdDp0aGlzLm9iamVjdFRvdWNoaW5nT2JqZWN0LHNlbnNpbmdfb2JqZWN0dG91Y2hpbmdjbG9uZXNwcml0ZTp0aGlzLm9iamVjdFRvdWNoaW5nQ2xvbmVPZlNwcml0ZSxzZW5zaW5nX3RvdWNoaW5nb2JqZWN0OnRoaXMudG91Y2hpbmdPYmplY3Qsc2Vuc2luZ190b3VjaGluZ2NvbG9yOnRoaXMudG91Y2hpbmdDb2xvcixzZW5zaW5nX2NvbG9yaXN0b3VjaGluZ2NvbG9yOnRoaXMuY29sb3JUb3VjaGluZ0NvbG9yLHNlbnNpbmdfZGlzdGFuY2V0bzp0aGlzLmRpc3RhbmNlVG8sc2Vuc2luZ190aW1lcjp0aGlzLmdldFRpbWVyLHNlbnNpbmdfcmVzZXR0aW1lcjp0aGlzLnJlc2V0VGltZXIsc2Vuc2luZ19vZjp0aGlzLmdldEF0dHJpYnV0ZU9mLHNlbnNpbmdfbW91c2V4OnRoaXMuZ2V0TW91c2VYLHNlbnNpbmdfbW91c2V5OnRoaXMuZ2V0TW91c2VZLHNlbnNpbmdfc2V0ZHJhZ21vZGU6dGhpcy5zZXREcmFnTW9kZSxzZW5zaW5nX21vdXNlZG93bjp0aGlzLmdldE1vdXNlRG93bixzZW5zaW5nX2tleXByZXNzZWQ6dGhpcy5nZXRLZXlQcmVzc2VkLHNlbnNpbmdfY3VycmVudDp0aGlzLmN1cnJlbnQsc2Vuc2luZ19kYXlzc2luY2UyMDAwOnRoaXMuZGF5c1NpbmNlMjAwMCxzZW5zaW5nX2xvdWRuZXNzOnRoaXMuZ2V0TG91ZG5lc3Msc2Vuc2luZ19sb3VkOnRoaXMuaXNMb3VkLHNlbnNpbmdfYXNrYW5kd2FpdDp0aGlzLmFza0FuZFdhaXQsc2Vuc2luZ19hbnN3ZXI6dGhpcy5nZXRBbnN3ZXIsc2Vuc2luZ191c2VybmFtZTp0aGlzLmdldFVzZXJuYW1lLHNlbnNpbmdfbG9nZ2VkaW46dGhpcy5nZXRMb2dnZWRJbixzZW5zaW5nX3VzZXJpZDooKT0+e30sc2Vuc2luZ19yZWdleHRlc3Q6dGhpcy5yZWdleHRlc3Qsc2Vuc2luZ190aGluZ19pc19udW1iZXI6dGhpcy50aGluZ19pc19udW1iZXIsc2Vuc2luZ190aGluZ19oYXNfbnVtYmVyOnRoaXMudGhpbmdfaGFzX251bWJlcixzZW5zaW5nX21vYmlsZTp0aGlzLm1vYmlsZSxzZW5zaW5nX3RoaW5nX2lzX3RleHQ6dGhpcy50aGluZ19pc190ZXh0LHNlbnNpbmdfZ2V0c3ByaXRld2l0aGF0dHJpYjp0aGlzLmdldHNwcml0ZXdpdGhhdHRyaWIsc2Vuc2luZ19kaXJlY3Rpb25Ubzp0aGlzLmdldERpcmVjdGlvblRvRnJvbSxzZW5zaW5nX2Rpc3RhbmNlVG86dGhpcy5nZXREaXN0YW5jZVRvRnJvbSxzZW5zaW5nX2lzVXBwZXJDYXNlOnRoaXMuaXNDaGFyZWN0ZXJVcHBlcmNhc2Usc2Vuc2luZ19tb3VzZWNsaWNrZWQ6dGhpcy5tb3VzZUNsaWNrZWQsc2Vuc2luZ19rZXloaXQ6dGhpcy5rZXlIaXQsc2Vuc2luZ19tb3VzZXNjcm9sbGluZzp0aGlzLm1vdXNlU2Nyb2xsaW5nLHNlbnNpbmdfZmluZ2VyZG93bjp0aGlzLmZpbmdlckRvd24sc2Vuc2luZ19maW5nZXJ0YXBwZWQ6dGhpcy5maW5nZXJUYXBwZWQsc2Vuc2luZ19maW5nZXJ4OnRoaXMuZ2V0RmluZ2VyWCxzZW5zaW5nX2Zpbmdlcnk6dGhpcy5nZXRGaW5nZXJZLHNlbnNpbmdfc2V0Y2xpcGJvYXJkOnRoaXMuc2V0Q2xpcGJvYXJkLHNlbnNpbmdfZ2V0Y2xpcGJvYXJkOnRoaXMuZ2V0Q2xpcGJvYXJkLHNlbnNpbmdfZ2V0ZHJhZ21vZGU6dGhpcy5nZXREcmFnTW9kZSxzZW5zaW5nX2dldG9wZXJhdGluZ3N5c3RlbTp0aGlzLmdldE9TLHNlbnNpbmdfZ2V0YnJvd3Nlcjp0aGlzLmdldEJyb3dzZXIsc2Vuc2luZ19nZXR1cmw6dGhpcy5nZXRVcmwsc2Vuc2luZ19nZXR4eW9mdG91Y2hpbmdzcHJpdGU6dGhpcy5nZXRYWU9mVG91Y2hpbmdTcHJpdGV9fWdldE9TKCl7aWYoISgidXNlckFnZW50ImluIG5hdmlnYXRvcikpcmV0dXJuIlVua25vd24iO2NvbnN0IEE9bmF2aWdhdG9yLnVzZXJBZ2VudDtyZXR1cm4gQS5pbmNsdWRlcygiV2luZG93cyIpPyJXaW5kb3dzIjpBLmluY2x1ZGVzKCJBbmRyb2lkIik/IkFuZHJvaWQiOkEuaW5jbHVkZXMoImlQYWQiKXx8QS5pbmNsdWRlcygiaVBvZCIpfHxBLmluY2x1ZGVzKCJpUGhvbmUiKT8iaU9TIjpBLmluY2x1ZGVzKCJMaW51eCIpPyJMaW51eCI6QS5pbmNsdWRlcygiQ3JPUyIpPyJDaHJvbWVPUyI6QS5pbmNsdWRlcygiTWFjIE9TIik/Ik1hY09TIjoiVW5rbm93biJ9Z2V0QnJvd3Nlcigpe2lmKCEoInVzZXJBZ2VudCJpbiBuYXZpZ2F0b3IpKXJldHVybiJVbmtub3duIjtjb25zdCBBPW5hdmlnYXRvci51c2VyQWdlbnQ7aWYoInVzZXJBZ2VudERhdGEiaW4gbmF2aWdhdG9yKXtjb25zdCBBPUpTT04uc3RyaW5naWZ5KG5hdmlnYXRvci51c2VyQWdlbnREYXRhLmJyYW5kcyk7aWYoQS5pbmNsdWRlcygiR29vZ2xlIENocm9tZSIpKXJldHVybiJDaHJvbWUiO2lmKEEuaW5jbHVkZXMoIk9wZXJhIikpcmV0dXJuIk9wZXJhIjtpZihBLmluY2x1ZGVzKCJNaWNyb3NvZnQgRWRnZSIpKXJldHVybiJFZGdlIn1yZXR1cm4gQS5pbmNsdWRlcygiQ2hyb21lIik/IkNocm9tZSI6QS5pbmNsdWRlcygiRmlyZWZveCIpPyJGaXJlZm94IjpBLmluY2x1ZGVzKCJTYWZhcmkiKT8iU2FmYXJpIjoiVW5rbm93biJ9Z2V0VXJsKCl7cmV0dXJuImhyZWYiaW4gbG9jYXRpb24/bG9jYXRpb24uaHJlZjoiIn1zZXRDbGlwYm9hcmQoQSl7Y29uc3QgZT1uLnRvU3RyaW5nKEEuSVRFTSk7bmF2aWdhdG9yJiYiY2xpcGJvYXJkImluIG5hdmlnYXRvciYmIndyaXRlVGV4dCJpbiBuYXZpZ2F0b3IuY2xpcGJvYXJkJiZuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChlKX1nZXRDbGlwYm9hcmQoKXtyZXR1cm4gbmF2aWdhdG9yJiYiY2xpcGJvYXJkImluIG5hdmlnYXRvciYmInJlYWRUZXh0ImluIG5hdmlnYXRvci5jbGlwYm9hcmQ/bmF2aWdhdG9yLmNsaXBib2FyZC5yZWFkVGV4dCgpOiIifWdldERyYWdNb2RlKEEsZSl7cmV0dXJuIGUudGFyZ2V0LmRyYWdnYWJsZX1tb3VzZUNsaWNrZWQoQSxlKXtyZXR1cm4gZS5pb1F1ZXJ5KCJtb3VzZSIsImdldElzQ2xpY2tlZCIpfWtleUhpdChBLGUpe3JldHVybiBlLmlvUXVlcnkoImtleWJvYXJkIiwiZ2V0S2V5SXNIaXQiLFtBLktFWV9PUFRJT05dKX1tb3VzZVNjcm9sbGluZyhBLGUpe2NvbnN0IHQ9ZS5pb1F1ZXJ5KCJtb3VzZVdoZWVsIiwiZ2V0U2Nyb2xsRGVsdGEiKTtzd2l0Y2goQS5TQ1JPTExfT1BUSU9OKXtjYXNlInVwIjpyZXR1cm4gdDwwO2Nhc2UiZG93biI6cmV0dXJuIHQ+MDtkZWZhdWx0OnJldHVybiExfX1pc0NoYXJlY3RlclVwcGVyY2FzZShBKXtyZXR1cm4vW0EtWl0vZy50ZXN0KEEudGV4dCl9Z2V0RGlyZWN0aW9uVG9Gcm9tKEEsZSl7Y29uc3QgdD1BLngyLUEueDEsbj1BLnkyLUEueTE7cmV0dXJuIGUucnVudGltZS5ydW50aW1lT3B0aW9ucy5kaXNhYmxlRGlyZWN0aW9uQ2xhbXBpbmc/OTAtci5yYWRUb0RlZyhNYXRoLmF0YW4yKG4sdCkpOnIud3JhcENsYW1wKDkwLXIucmFkVG9EZWcoTWF0aC5hdGFuMihuLHQpKSwtMTc5LDE4MCl9Z2V0RGlzdGFuY2VUb0Zyb20oQSl7Y29uc3QgZT1BLngyLUEueDEsdD1BLnkyLUEueTE7cmV0dXJuIE1hdGguc3FydChlKmUrdCp0KX1nZXRzcHJpdGV3aXRoYXR0cmliKEEsZSl7Y29uc3QgdD1lLnJ1bnRpbWUudGFyZ2V0cy5tYXAoQT0+KHtpZDpBLmlkLG5hbWU6QS5zcHJpdGU/QS5zcHJpdGUubmFtZToiVW5rbm93biIsdmFyaWFibGVzOk9iamVjdC52YWx1ZXMoQS52YXJpYWJsZXMpLnJlZHVjZSgoQSxlKT0+ZS5uYW1lPyhBW2UubmFtZV09U3RyaW5nKGUudmFsdWUpLEEpOkEse30pfSkpO2xldCBuPSJObyBzcHJpdGVzIGZvdW5kIjtmb3IobGV0IGU9MSxpPXRbMF07ZTx0Lmxlbmd0aDtpPXRbZSsrXSlpZihpLnZhcmlhYmxlc1tBLnZhcl09PT1BLnZhbCl7bj0neyJpZCI6ICInLmNvbmNhdChpLmlkLCciLCAibmFtZSI6ICInKS5jb25jYXQoaS5uYW1lLCcifScpO2JyZWFrfXJldHVybiBufXRoaW5nX2lzX251bWJlcihBKXtyZXR1cm4hbi50b1N0cmluZyhBLlRFWFQxKS50cmltKCkuZW5kc1dpdGgoIi4iKSYmIXRoaXMudGhpbmdfaXNfdGV4dChBKX10aGluZ19pc190ZXh0KEEpe3JldHVybiBpc05hTihOdW1iZXIoQS5URVhUMSkpfXRoaW5nX2hhc19udW1iZXIoQSl7cmV0dXJuL1xkLy50ZXN0KG4udG9TdHJpbmcoQS5URVhUMSkpfW1vYmlsZSgpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYib250b3VjaHN0YXJ0ImluIHdpbmRvd31yZWdleHRlc3QoQSl7aWYoIXMoQS5yZWcsQS5yZWdydWxlKSlyZXR1cm4hMTtyZXR1cm4gbmV3IFJlZ0V4cChBLnJlZyxBLnJlZ3J1bGUpLnRlc3QoQS50ZXh0KX1nZXRNb25pdG9yZWQoKXtyZXR1cm57c2Vuc2luZ19hbnN3ZXI6e2dldElkOigpPT4iYW5zd2VyIn0sc2Vuc2luZ19tb3VzZWRvd246e2dldElkOigpPT4ibW91c2Vkb3duIn0sc2Vuc2luZ19tb3VzZWNsaWNrZWQ6e2dldElkOigpPT4ibW91c2VjbGlja2VkIn0sc2Vuc2luZ19tb3VzZXg6e2dldElkOigpPT4ibW91c2V4In0sc2Vuc2luZ19tb3VzZXk6e2dldElkOigpPT4ibW91c2V5In0sc2Vuc2luZ19nZXRjbGlwYm9hcmQ6e2dldElkOigpPT4iZ2V0Y2xpcGJvYXJkIn0sc2Vuc2luZ19nZXRkcmFnbW9kZTp7aXNTcHJpdGVTcGVjaWZpYzohMCxnZXRJZDpBPT4iIi5jb25jYXQoQSwiX2dldGRyYWdtb2RlIil9LHNlbnNpbmdfbG91ZG5lc3M6e2dldElkOigpPT4ibG91ZG5lc3MifSxzZW5zaW5nX2xvdWQ6e2dldElkOigpPT4ibG91ZCJ9LHNlbnNpbmdfdGltZXI6e2dldElkOigpPT4idGltZXIifSxzZW5zaW5nX2RheXNzaW5jZTIwMDA6e2dldElkOigpPT4iZGF5c3NpbmNlMjAwMCJ9LHNlbnNpbmdfY3VycmVudDp7Z2V0SWQ6KEEsZSk9Pm8oImN1cnJlbnQiLGUpfSxzZW5zaW5nX2xvZ2dlZGluOntnZXRJZDooKT0+ImxvZ2dlZGluIn19fV9vbkFuc3dlcihBKXt0aGlzLl9hbnN3ZXI9QTtjb25zdCBlPXRoaXMuX3F1ZXN0aW9uTGlzdC5zaGlmdCgpO2lmKGUpe2NvbnN0W0EsdCxuLGkscl09ZTtpJiYhciYmdGhpcy5ydW50aW1lLmVtaXQoIlNBWSIsbiwic2F5IiwiIiksdCgpLHRoaXMuX2Fza05leHRRdWVzdGlvbigpfX1fcmVzZXRBbnN3ZXIoKXt0aGlzLl9hbnN3ZXI9IiJ9X2VucXVldWVBc2soQSxlLHQsbixpKXt0aGlzLl9xdWVzdGlvbkxpc3QucHVzaChbQSxlLHQsbixpXSl9X2Fza05leHRRdWVzdGlvbigpe2lmKHRoaXMuX3F1ZXN0aW9uTGlzdC5sZW5ndGg+MCl7Y29uc3RbQSxlLHQsbixpXT10aGlzLl9xdWVzdGlvbkxpc3RbMF07biYmIWk/KHRoaXMucnVudGltZS5lbWl0KCJTQVkiLHQsInNheSIsQSksdGhpcy5ydW50aW1lLmVtaXQoIlFVRVNUSU9OIiwiIikpOnRoaXMucnVudGltZS5lbWl0KCJRVUVTVElPTiIsQSl9fV9jbGVhckFsbFF1ZXN0aW9ucygpe3RoaXMuX3F1ZXN0aW9uTGlzdD1bXSx0aGlzLnJ1bnRpbWUuZW1pdCgiUVVFU1RJT04iLG51bGwpfV9jbGVhclRhcmdldFF1ZXN0aW9ucyhBKXtjb25zdCBlPXRoaXMuX3F1ZXN0aW9uTGlzdC5sZW5ndGg+MCYmdGhpcy5fcXVlc3Rpb25MaXN0WzBdWzJdPT09QTt0aGlzLl9xdWVzdGlvbkxpc3Q9dGhpcy5fcXVlc3Rpb25MaXN0LmZpbHRlcihlPT5lWzJdIT09QSksZSYmKHRoaXMucnVudGltZS5lbWl0KCJTQVkiLEEsInNheSIsIiIpLHRoaXMuX3F1ZXN0aW9uTGlzdC5sZW5ndGg+MD90aGlzLl9hc2tOZXh0UXVlc3Rpb24oKTp0aGlzLnJ1bnRpbWUuZW1pdCgiUVVFU1RJT04iLG51bGwpKX1hc2tBbmRXYWl0KEEsZSl7Y29uc3QgdD1lLnRhcmdldDtyZXR1cm4gbmV3IFByb21pc2UoZT0+e2NvbnN0IG49dGhpcy5fcXVlc3Rpb25MaXN0Lmxlbmd0aD4wO3RoaXMuX2VucXVldWVBc2soU3RyaW5nKEEuUVVFU1RJT04pLGUsdCx0LnZpc2libGUsdC5pc1N0YWdlKSxufHx0aGlzLl9hc2tOZXh0UXVlc3Rpb24oKX0pfWdldEFuc3dlcigpe3JldHVybiB0aGlzLl9hbnN3ZXJ9b2JqZWN0VG91Y2hpbmdPYmplY3QoQSxlKXtjb25zdCB0PSJfbXlzZWxmXyI9PT1BLkZVTExUT1VDSElOR09CSkVDVE1FTlU/ZS50YXJnZXQuZ2V0TmFtZSgpOkEuRlVMTFRPVUNISU5HT0JKRUNUTUVOVSxuPUEuU1BSSVRFVE9VQ0hJTkdPQkpFQ1RNRU5VO2lmKCJfbXlzZWxmXyI9PT1uKXJldHVybiBlLnRhcmdldC5pc1RvdWNoaW5nT2JqZWN0KHQpO2NvbnN0IGk9dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZShuKTtyZXR1cm4hIWkmJmkuaXNUb3VjaGluZ09iamVjdCh0KX1vYmplY3RUb3VjaGluZ0Nsb25lT2ZTcHJpdGUoQSxlKXtjb25zdCB0PUEuRlVMTFRPVUNISU5HT0JKRUNUTUVOVTtsZXQgbj1BLlNQUklURVRPVUNISU5HT0JKRUNUTUVOVTtpZigiX215c2VsZl8iPT09biYmKG49ZS50YXJnZXQuZ2V0TmFtZSgpKSwiX215c2VsZl8iPT09dClyZXR1cm4gZS50YXJnZXQuaXNUb3VjaGluZ09iamVjdChuLCEwKTtjb25zdCBpPXRoaXMucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUobik7aWYoIWkpcmV0dXJuITE7aWYoIl9tb3VzZV8iPT09dCl7aWYoIXRoaXMucnVudGltZS5pb0RldmljZXMubW91c2UpcmV0dXJuITE7Y29uc3QgQT10aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLm1vdXNlLmdldENsaWVudFgoKSxlPXRoaXMucnVudGltZS5pb0RldmljZXMubW91c2UuZ2V0Q2xpZW50WSgpO3JldHVybiBpLnNwcml0ZS5jbG9uZXMuZmlsdGVyKHQ9PiF0LmlzT3JpZ2luYWwmJnQuaXNUb3VjaGluZ1BvaW50KEEsZSkpLmxlbmd0aD4wfWlmKCJfZWRnZV8iPT09dCl7cmV0dXJuIGkuc3ByaXRlLmNsb25lcy5maWx0ZXIoQT0+IUEuaXNPcmlnaW5hbCYmQS5pc1RvdWNoaW5nRWRnZSgpKS5sZW5ndGg+MH1jb25zdCByPXRoaXMucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUodCk7cmV0dXJuISFyJiZyLmlzVG91Y2hpbmdPYmplY3QobiwhMCl9dG91Y2hpbmdPYmplY3QoQSxlKXtyZXR1cm4gZS50YXJnZXQuaXNUb3VjaGluZ09iamVjdChBLlRPVUNISU5HT0JKRUNUTUVOVSl9Z2V0WFlPZlRvdWNoaW5nU3ByaXRlKEEsZSl7Y29uc3QgdD1BLlNQUklURTtpZigiX21vdXNlXyI9PT10KXtjb25zdCB0PWUuaW9RdWVyeSgibW91c2UiLCJnZXRTY3JhdGNoWCIpLG49ZS5pb1F1ZXJ5KCJtb3VzZSIsImdldFNjcmF0Y2hZIik7cmV0dXJuInkiPT09QS5YWT9uOnR9Y29uc3Qgbj1lLnRhcmdldC5zcHJpdGVUb3VjaGluZ1BvaW50KHQpO3JldHVybiBuPyJ5Ij09PUEuWFk/blsxXTpuWzBdOiIifXRvdWNoaW5nQ29sb3IoQSxlKXtjb25zdCB0PW4udG9SZ2JDb2xvckxpc3QoQS5DT0xPUik7cmV0dXJuIGUudGFyZ2V0LmlzVG91Y2hpbmdDb2xvcih0KX1jb2xvclRvdWNoaW5nQ29sb3IoQSxlKXtjb25zdCB0PW4udG9SZ2JDb2xvckxpc3QoQS5DT0xPUiksaT1uLnRvUmdiQ29sb3JMaXN0KEEuQ09MT1IyKTtyZXR1cm4gZS50YXJnZXQuY29sb3JJc1RvdWNoaW5nQ29sb3IoaSx0KX1kaXN0YW5jZVRvKEEsZSl7aWYoZS50YXJnZXQuaXNTdGFnZSlyZXR1cm4gMWU0O2xldCB0PTAsaT0wO2lmKCJfbW91c2VfIj09PUEuRElTVEFOQ0VUT01FTlUpdD1lLmlvUXVlcnkoIm1vdXNlIiwiZ2V0U2NyYXRjaFgiKSxpPWUuaW9RdWVyeSgibW91c2UiLCJnZXRTY3JhdGNoWSIpO2Vsc2V7QS5ESVNUQU5DRVRPTUVOVT1uLnRvU3RyaW5nKEEuRElTVEFOQ0VUT01FTlUpO2NvbnN0IGU9dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZShBLkRJU1RBTkNFVE9NRU5VKTtpZighZSlyZXR1cm4gMWU0O3Q9ZS54LGk9ZS55fWNvbnN0IHI9ZS50YXJnZXQueC10LG89ZS50YXJnZXQueS1pO3JldHVybiBNYXRoLnNxcnQocipyK28qbyl9c2V0RHJhZ01vZGUoQSxlKXtlLnRhcmdldC5zZXREcmFnZ2FibGUoImRyYWdnYWJsZSI9PT1BLkRSQUdfTU9ERSl9Z2V0VGltZXIoQSxlKXtyZXR1cm4gZS5pb1F1ZXJ5KCJjbG9jayIsInByb2plY3RUaW1lciIpfXJlc2V0VGltZXIoQSxlKXtlLmlvUXVlcnkoImNsb2NrIiwicmVzZXRQcm9qZWN0VGltZXIiKX1nZXRNb3VzZVgoQSxlKXtyZXR1cm4gZS5pb1F1ZXJ5KCJtb3VzZSIsImdldFNjcmF0Y2hYIil9Z2V0TW91c2VZKEEsZSl7cmV0dXJuIGUuaW9RdWVyeSgibW91c2UiLCJnZXRTY3JhdGNoWSIpfWdldE1vdXNlRG93bihBLGUpe3JldHVybiBlLmlvUXVlcnkoIm1vdXNlIiwiZ2V0SXNEb3duIil9Z2V0RmluZ2VyWChBLGUpe3JldHVybiBlLmlvUXVlcnkoInRvdWNoIiwiZ2V0U2NyYXRjaFgiLFtuLnRvTnVtYmVyKEEuRklOR0VSX09QVElPTiktMV0pfWdldEZpbmdlclkoQSxlKXtyZXR1cm4gZS5pb1F1ZXJ5KCJ0b3VjaCIsImdldFNjcmF0Y2hZIixbbi50b051bWJlcihBLkZJTkdFUl9PUFRJT04pLTFdKX1maW5nZXJEb3duKEEsZSl7cmV0dXJuIGUuaW9RdWVyeSgidG91Y2giLCJnZXRJc0Rvd24iLFtuLnRvTnVtYmVyKEEuRklOR0VSX09QVElPTiktMV0pfWZpbmdlclRhcHBlZChBLGUpe3JldHVybiBlLmlvUXVlcnkoInRvdWNoIiwiZ2V0SXNUYXBwZWQiLFtuLnRvTnVtYmVyKEEuRklOR0VSX09QVElPTiktMV0pfWN1cnJlbnQoQSl7Y29uc3QgZT1uLnRvU3RyaW5nKEEuQ1VSUkVOVE1FTlUpLnRvTG93ZXJDYXNlKCksdD1uZXcgRGF0ZTtzd2l0Y2goZSl7Y2FzZSJ5ZWFyIjpyZXR1cm4gdC5nZXRGdWxsWWVhcigpO2Nhc2UibW9udGgiOnJldHVybiB0LmdldE1vbnRoKCkrMTtjYXNlImRhdGUiOnJldHVybiB0LmdldERhdGUoKTtjYXNlImRheW9md2VlayI6cmV0dXJuIHQuZ2V0RGF5KCkrMTtjYXNlImhvdXIiOnJldHVybiB0LmdldEhvdXJzKCk7Y2FzZSJtaW51dGUiOnJldHVybiB0LmdldE1pbnV0ZXMoKTtjYXNlInNlY29uZCI6cmV0dXJuIHQuZ2V0U2Vjb25kcygpO2Nhc2UidGltZXN0YW1wIjpyZXR1cm4gRGF0ZS5ub3coKX1yZXR1cm4gMH1nZXRLZXlQcmVzc2VkKEEsZSl7cmV0dXJuIGUuaW9RdWVyeSgia2V5Ym9hcmQiLCJnZXRLZXlJc0Rvd24iLFtBLktFWV9PUFRJT05dKX1kYXlzU2luY2UyMDAwKCl7Y29uc3QgQT1uZXcgRGF0ZSgyZTMsMCwxKSxlPW5ldyBEYXRlLHQ9ZS5nZXRUaW1lem9uZU9mZnNldCgpLUEuZ2V0VGltZXpvbmVPZmZzZXQoKTtsZXQgbj1lLnZhbHVlT2YoKS1BLnZhbHVlT2YoKTtyZXR1cm4gbis9NjAqKGUuZ2V0VGltZXpvbmVPZmZzZXQoKS10KSoxZTMsbi84NjRlNX1nZXRMb3VkbmVzcygpe2lmKHZvaWQgMD09PXRoaXMucnVudGltZS5hdWRpb0VuZ2luZSlyZXR1cm4tMTtpZihudWxsPT09dGhpcy5ydW50aW1lLmN1cnJlbnRTdGVwVGltZSlyZXR1cm4tMTtyZXR1cm4gdGhpcy5fdGltZXIudGltZSgpLXRoaXMuX2NhY2hlZExvdWRuZXNzVGltZXN0YW1wPHRoaXMucnVudGltZS5jdXJyZW50U3RlcFRpbWV8fCh0aGlzLl9jYWNoZWRMb3VkbmVzc1RpbWVzdGFtcD10aGlzLl90aW1lci50aW1lKCksdGhpcy5fY2FjaGVkTG91ZG5lc3M9dGhpcy5ydW50aW1lLmF1ZGlvRW5naW5lLmdldExvdWRuZXNzKCksdGhpcy5wdXNoTG91ZG5lc3ModGhpcy5fY2FjaGVkTG91ZG5lc3MpKSx0aGlzLl9jYWNoZWRMb3VkbmVzc31pc0xvdWQoKXt0aGlzLnB1c2hMb3VkbmVzcygpO2xldCBBPXRoaXMuX2xvdWRuZXNzTGlzdC5yZWR1Y2UoKEEsZSk9PkErZSwwKTtyZXR1cm4gQS89dGhpcy5fbG91ZG5lc3NMaXN0Lmxlbmd0aCx0aGlzLmdldExvdWRuZXNzKCk+QSsxNX1wdXNoTG91ZG5lc3MoQSl7dGhpcy5fbG91ZG5lc3NMaXN0Lmxlbmd0aD49MzAmJnRoaXMuX2xvdWRuZXNzTGlzdC5zaGlmdCgpLHRoaXMuX2xvdWRuZXNzTGlzdC5wdXNoKG51bGwhPUE/QTp0aGlzLmdldExvdWRuZXNzKCkpfWdldEF0dHJpYnV0ZU9mKEEpe2xldCBlO2lmKCJfc3RhZ2VfIj09PUEuT0JKRUNUP2U9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk6KEEuT0JKRUNUPW4udG9TdHJpbmcoQS5PQkpFQ1QpLGU9dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZShBLk9CSkVDVCkpLCFlKXJldHVybiAwO2lmKGUuaXNTdGFnZSlzd2l0Y2goQS5QUk9QRVJUWSl7Y2FzZSJiYWNrZ3JvdW5kICMiOmNhc2UiYmFja2Ryb3AgIyI6cmV0dXJuIGUuY3VycmVudENvc3R1bWUrMTtjYXNlImJhY2tkcm9wIG5hbWUiOnJldHVybiBlLmdldENvc3R1bWVzKClbZS5jdXJyZW50Q29zdHVtZV0ubmFtZTtjYXNlInZvbHVtZSI6cmV0dXJuIGUudm9sdW1lfWVsc2Ugc3dpdGNoKEEuUFJPUEVSVFkpe2Nhc2UieCBwb3NpdGlvbiI6cmV0dXJuIGUueDtjYXNlInkgcG9zaXRpb24iOnJldHVybiBlLnk7Y2FzZSJkaXJlY3Rpb24iOnJldHVybiBlLmRpcmVjdGlvbjtjYXNlImNvc3R1bWUgIyI6cmV0dXJuIGUuY3VycmVudENvc3R1bWUrMTtjYXNlImNvc3R1bWUgbmFtZSI6cmV0dXJuIGUuZ2V0Q29zdHVtZXMoKVtlLmN1cnJlbnRDb3N0dW1lXS5uYW1lO2Nhc2UibGF5ZXIiOnJldHVybiBlLmdldExheWVyT3JkZXIoKTtjYXNlInNpemUiOnJldHVybiBlLnNpemU7Y2FzZSJ2b2x1bWUiOnJldHVybiBlLnZvbHVtZX1jb25zdCB0PUEuUFJPUEVSVFksaT1lLmxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZSh0LCIiLCEwKTtyZXR1cm4gaT9pLnZhbHVlOjB9Z2V0VXNlcm5hbWUoQSxlKXtyZXR1cm4gZS5pb1F1ZXJ5KCJ1c2VyRGF0YSIsImdldFVzZXJuYW1lIil9Z2V0TG9nZ2VkSW4oQSxlKXtyZXR1cm4gZS5pb1F1ZXJ5KCJ1c2VyRGF0YSIsImdldExvZ2dlZEluIil9fX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBpPXQoMikse3ZhbGlkYXRlQXJyYXk6cn09dCgxNCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe24odGhpcywiX2xpc3RGaWx0ZXJJdGVtIixbIiJdKSxuKHRoaXMsIl9saXN0RmlsdGVySW5kZXgiLFswXSksdGhpcy5ydW50aW1lPUF9Z2V0UHJpbWl0aXZlcygpe3JldHVybntkYXRhX3ZhcmlhYmxlOnRoaXMuZ2V0VmFyaWFibGUsZGF0YV9zZXR2YXJpYWJsZXRvOnRoaXMuc2V0VmFyaWFibGVUbyxkYXRhX2NoYW5nZXZhcmlhYmxlYnk6dGhpcy5jaGFuZ2VWYXJpYWJsZUJ5LGRhdGFfaGlkZXZhcmlhYmxlOnRoaXMuaGlkZVZhcmlhYmxlLGRhdGFfc2hvd3ZhcmlhYmxlOnRoaXMuc2hvd1ZhcmlhYmxlLGRhdGFfbGlzdGNvbnRlbnRzOnRoaXMuZ2V0TGlzdENvbnRlbnRzLGRhdGFfYWRkdG9saXN0OnRoaXMuYWRkVG9MaXN0LGRhdGFfZGVsZXRlb2ZsaXN0OnRoaXMuZGVsZXRlT2ZMaXN0LGRhdGFfZGVsZXRlYWxsb2ZsaXN0OnRoaXMuZGVsZXRlQWxsT2ZMaXN0LGRhdGFfaW5zZXJ0YXRsaXN0OnRoaXMuaW5zZXJ0QXRMaXN0LGRhdGFfcmVwbGFjZWl0ZW1vZmxpc3Q6dGhpcy5yZXBsYWNlSXRlbU9mTGlzdCxkYXRhX2l0ZW1vZmxpc3Q6dGhpcy5nZXRJdGVtT2ZMaXN0LGRhdGFfaXRlbW51bW9mbGlzdDp0aGlzLmdldEl0ZW1OdW1PZkxpc3QsZGF0YV9sZW5ndGhvZmxpc3Q6dGhpcy5sZW5ndGhPZkxpc3QsZGF0YV9saXN0Y29udGFpbnNpdGVtOnRoaXMubGlzdENvbnRhaW5zSXRlbSxkYXRhX2hpZGVsaXN0OnRoaXMuaGlkZUxpc3QsZGF0YV9zaG93bGlzdDp0aGlzLnNob3dMaXN0LGRhdGFfcmV2ZXJzZWxpc3Q6dGhpcy5kYXRhX3JldmVyc2VsaXN0LGRhdGFfaXRlbWV4aXN0c2xpc3Q6dGhpcy5kYXRhX2l0ZW1leGlzdHNsaXN0LGRhdGFfbGlzdGlzZW1wdHk6dGhpcy5kYXRhX2xpc3Rpc2VtcHR5LGRhdGFfbGlzdGFycmF5OnRoaXMuZGF0YV9saXN0YXJyYXksZGF0YV9hcnJheWxpc3Q6dGhpcy5kYXRhX2FycmF5bGlzdCxkYXRhX2xpc3Rmb3JlYWNobnVtOnRoaXMuZGF0YV9saXN0Zm9yZWFjaG51bSxkYXRhX2xpc3Rmb3JlYWNoaXRlbTp0aGlzLmRhdGFfbGlzdGZvcmVhY2hpdGVtfX1nZXRWYXJpYWJsZShBLGUpe3JldHVybiBlLnRhcmdldC5sb29rdXBPckNyZWF0ZVZhcmlhYmxlKEEuVkFSSUFCTEUuaWQsQS5WQVJJQUJMRS5uYW1lKS52YWx1ZX1zZXRWYXJpYWJsZVRvKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5sb29rdXBPckNyZWF0ZVZhcmlhYmxlKEEuVkFSSUFCTEUuaWQsQS5WQVJJQUJMRS5uYW1lKTt0LnZhbHVlPUEuVkFMVUUsdC5pc0Nsb3VkJiZlLmlvUXVlcnkoImNsb3VkIiwicmVxdWVzdFVwZGF0ZVZhcmlhYmxlIixbdC5uYW1lLEEuVkFMVUVdKX1jaGFuZ2VWYXJpYWJsZUJ5KEEsZSl7Y29uc3QgdD1lLnRhcmdldC5sb29rdXBPckNyZWF0ZVZhcmlhYmxlKEEuVkFSSUFCTEUuaWQsQS5WQVJJQUJMRS5uYW1lKSxuPWkudG9OdW1iZXIodC52YWx1ZSkraS50b051bWJlcihBLlZBTFVFKTt0LnZhbHVlPW4sdC5pc0Nsb3VkJiZlLmlvUXVlcnkoImNsb3VkIiwicmVxdWVzdFVwZGF0ZVZhcmlhYmxlIixbdC5uYW1lLG5dKX1jaGFuZ2VNb25pdG9yVmlzaWJpbGl0eShBLGUpe3RoaXMucnVudGltZS5tb25pdG9yQmxvY2tzLmNoYW5nZUJsb2NrKHtpZDpBLGVsZW1lbnQ6ImNoZWNrYm94Iix2YWx1ZTplfSx0aGlzLnJ1bnRpbWUpfXNob3dWYXJpYWJsZShBKXt0aGlzLmNoYW5nZU1vbml0b3JWaXNpYmlsaXR5KEEuVkFSSUFCTEUuaWQsITApfWhpZGVWYXJpYWJsZShBKXt0aGlzLmNoYW5nZU1vbml0b3JWaXNpYmlsaXR5KEEuVkFSSUFCTEUuaWQsITEpfXNob3dMaXN0KEEpe3RoaXMuY2hhbmdlTW9uaXRvclZpc2liaWxpdHkoQS5MSVNULmlkLCEwKX1oaWRlTGlzdChBKXt0aGlzLmNoYW5nZU1vbml0b3JWaXNpYmlsaXR5KEEuTElTVC5pZCwhMSl9Z2V0TGlzdENvbnRlbnRzKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QoQS5MSVNULmlkLEEuTElTVC5uYW1lKTtpZihlLnRocmVhZC51cGRhdGVNb25pdG9yKXJldHVybiB0Ll9tb25pdG9yVXBUb0RhdGU/dC52YWx1ZToodC5fbW9uaXRvclVwVG9EYXRlPSEwLHQudmFsdWUuc2xpY2UoKSk7bGV0IG49ITA7Zm9yKGxldCBBPTA7QTx0LnZhbHVlLmxlbmd0aDtBKyspe2NvbnN0IGU9dC52YWx1ZVtBXTtpZigic3RyaW5nIiE9dHlwZW9mIGV8fDEhPT1lLmxlbmd0aCl7bj0hMTticmVha319cmV0dXJuIG4/dC52YWx1ZS5qb2luKCIiKTp0LnZhbHVlLmpvaW4oIiAiKX1hZGRUb0xpc3QoQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlTGlzdChBLkxJU1QuaWQsQS5MSVNULm5hbWUpO3QudmFsdWUucHVzaChBLklURU0pLHQuX21vbml0b3JVcFRvRGF0ZT0hMX1kZWxldGVPZkxpc3QoQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlTGlzdChBLkxJU1QuaWQsQS5MSVNULm5hbWUpLG49aS50b0xpc3RJbmRleChBLklOREVYLHQudmFsdWUubGVuZ3RoLCEwKTtuIT09aS5MSVNUX0lOVkFMSUQmJihuIT09aS5MSVNUX0FMTD8odC52YWx1ZS5zcGxpY2Uobi0xLDEpLHQuX21vbml0b3JVcFRvRGF0ZT0hMSk6dC52YWx1ZT1bXSl9ZGVsZXRlQWxsT2ZMaXN0KEEsZSl7ZS50YXJnZXQubG9va3VwT3JDcmVhdGVMaXN0KEEuTElTVC5pZCxBLkxJU1QubmFtZSkudmFsdWU9W119aW5zZXJ0QXRMaXN0KEEsZSl7Y29uc3QgdD1BLklURU0sbj1lLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QoQS5MSVNULmlkLEEuTElTVC5uYW1lKSxyPWkudG9MaXN0SW5kZXgoQS5JTkRFWCxuLnZhbHVlLmxlbmd0aCsxLCExKTtyIT09aS5MSVNUX0lOVkFMSUQmJihuLnZhbHVlLnNwbGljZShyLTEsMCx0KSxuLl9tb25pdG9yVXBUb0RhdGU9ITEpfXJlcGxhY2VJdGVtT2ZMaXN0KEEsZSl7Y29uc3QgdD1BLklURU0sbj1lLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QoQS5MSVNULmlkLEEuTElTVC5uYW1lKSxyPWkudG9MaXN0SW5kZXgoQS5JTkRFWCxuLnZhbHVlLmxlbmd0aCwhMSk7ciE9PWkuTElTVF9JTlZBTElEJiYobi52YWx1ZVtyLTFdPXQsbi5fbW9uaXRvclVwVG9EYXRlPSExKX1nZXRJdGVtT2ZMaXN0KEEsZSl7Y29uc3QgdD1lLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QoQS5MSVNULmlkLEEuTElTVC5uYW1lKSxuPWkudG9MaXN0SW5kZXgoQS5JTkRFWCx0LnZhbHVlLmxlbmd0aCwhMSk7cmV0dXJuIG49PT1pLkxJU1RfSU5WQUxJRD8iIjp0LnZhbHVlW24tMV19Z2V0SXRlbU51bU9mTGlzdChBLGUpe2NvbnN0IHQ9QS5JVEVNLG49ZS50YXJnZXQubG9va3VwT3JDcmVhdGVMaXN0KEEuTElTVC5pZCxBLkxJU1QubmFtZSk7Zm9yKGxldCBBPTA7QTxuLnZhbHVlLmxlbmd0aDtBKyspaWYoMD09PWkuY29tcGFyZShuLnZhbHVlW0FdLHQpKXJldHVybiBBKzE7cmV0dXJuIDB9bGVuZ3RoT2ZMaXN0KEEsZSl7cmV0dXJuIGUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlTGlzdChBLkxJU1QuaWQsQS5MSVNULm5hbWUpLnZhbHVlLmxlbmd0aH1saXN0Q29udGFpbnNJdGVtKEEsZSl7Y29uc3QgdD1BLklURU0sbj1lLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QoQS5MSVNULmlkLEEuTElTVC5uYW1lKTtpZihuLnZhbHVlLmluZGV4T2YodCk+PTApcmV0dXJuITA7Zm9yKGxldCBBPTA7QTxuLnZhbHVlLmxlbmd0aDtBKyspaWYoMD09PWkuY29tcGFyZShuLnZhbHVlW0FdLHQpKXJldHVybiEwO3JldHVybiExfWRhdGFfcmV2ZXJzZWxpc3QoQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlTGlzdChBLkxJU1QuaWQsQS5MSVNULm5hbWUpO3QudmFsdWUucmV2ZXJzZSgpLHQuX21vbml0b3JVcFRvRGF0ZT0hMX1kYXRhX2l0ZW1leGlzdHNsaXN0KEEsZSl7Y29uc3QgdD1lLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QoQS5MSVNULmlkLEEuTElTVC5uYW1lKTtyZXR1cm4gaS50b0xpc3RJbmRleChBLklOREVYLHQudmFsdWUubGVuZ3RoLCExKSE9PWkuTElTVF9JTlZBTElEfWRhdGFfbGlzdGlzZW1wdHkoQSxlKXtyZXR1cm4gZS50YXJnZXQubG9va3VwT3JDcmVhdGVMaXN0KEEuTElTVC5pZCxBLkxJU1QubmFtZSkudmFsdWUubGVuZ3RoPDF9ZGF0YV9saXN0YXJyYXkoQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlTGlzdChBLkxJU1QuaWQsQS5MSVNULm5hbWUpO3JldHVybiBKU09OLnN0cmluZ2lmeSh0LnZhbHVlKX1kYXRhX2FycmF5bGlzdChBLGUpe2NvbnN0IHQ9ZS50YXJnZXQubG9va3VwT3JDcmVhdGVMaXN0KEEuTElTVC5pZCxBLkxJU1QubmFtZSksbj1BLlZBTFVFO2xldCBpO2lmKCJvYmplY3QiPT10eXBlb2Ygbil7aWYoQXJyYXkuaXNBcnJheShuKSlyZXR1cm4gdm9pZCh0LnZhbHVlPW4pO3ZhciBvO2lmKCJPYmplY3QiIT09KG51bGw9PT0obz1uLmNvbnN0cnVjdG9yKXx8dm9pZCAwPT09bz92b2lkIDA6by5uYW1lKSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIG4udG9KU09OJiYoaT1uLnRvSlNPTigpLEFycmF5LmlzQXJyYXkoaSkpKXJldHVybiB2b2lkKHQudmFsdWU9aSk7aT1uLnRvU3RyaW5nKCl9fWk9cihuKS5hcnJheS5tYXAoQT0+Im9iamVjdCI9PXR5cGVvZiBBP0pTT04uc3RyaW5naWZ5KEEpOlN0cmluZyhBKSksdC52YWx1ZT1pfWRhdGFfbGlzdGZvcmVhY2hudW0oQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlTGlzdChBLkxJU1QuaWQsQS5MSVNULm5hbWUpO3ZvaWQgMD09PWUuc3RhY2tGcmFtZS5sb29wQ291bnRlciYmKGUuc3RhY2tGcmFtZS5sb29wQ291bnRlcj10LnZhbHVlLmxlbmd0aCksZS5zdGFja0ZyYW1lLmxvb3BDb3VudGVyLS0sZS5zdGFja0ZyYW1lLmxvb3BDb3VudGVyPj0wJiYodGhpcy5zZXRWYXJpYWJsZVRvKHtWQVJJQUJMRTpBLklOREVYLFZBTFVFOmUuc3RhY2tGcmFtZS5sb29wQ291bnRlcn0sZSksZS5zdGFydEJyYW5jaCgxLCEwKSl9ZGF0YV9saXN0Zm9yZWFjaGl0ZW0oQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cE9yQ3JlYXRlTGlzdChBLkxJU1QuaWQsQS5MSVNULm5hbWUpO3ZvaWQgMD09PWUuc3RhY2tGcmFtZS5sb29wQ291bnRlciYmKGUuc3RhY2tGcmFtZS5sb29wQ291bnRlcj10LnZhbHVlLmxlbmd0aCksZS5zdGFja0ZyYW1lLmxvb3BDb3VudGVyLS0sZS5zdGFja0ZyYW1lLmxvb3BDb3VudGVyPj0wJiYodGhpcy5zZXRWYXJpYWJsZVRvKHtWQVJJQUJMRTpBLklOREVYLFZBTFVFOnQudmFsdWVbZS5zdGFja0ZyYW1lLmxvb3BDb3VudGVyXX0sZSksZS5zdGFydEJyYW5jaCgxLCEwKSl9fX0sZnVuY3Rpb24oQSxlLHQpe3QoMik7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BfWdldFByaW1pdGl2ZXMoKXtyZXR1cm57cHJvY2VkdXJlc19kZWZpbml0aW9uOnRoaXMuZGVmaW5pdGlvbixwcm9jZWR1cmVzX2NhbGw6dGhpcy5jYWxsLHByb2NlZHVyZXNfc2V0OnRoaXMuc2V0LGFyZ3VtZW50X3JlcG9ydGVyX3N0cmluZ19udW1iZXI6dGhpcy5hcmd1bWVudFJlcG9ydGVyU3RyaW5nTnVtYmVyLGFyZ3VtZW50X3JlcG9ydGVyX2Jvb2xlYW46dGhpcy5hcmd1bWVudFJlcG9ydGVyQm9vbGVhbixhcmd1bWVudF9yZXBvcnRlcl9jb21tYW5kOnRoaXMuYXJndW1lbnRSZXBvcnRlckNvbW1hbmR9fWRlZmluaXRpb24oKXt9Y2FsbChBLGUpe2lmKCFlLnN0YWNrRnJhbWUuZXhlY3V0ZWQpe2NvbnN0IHQ9QS5tdXRhdGlvbi5wcm9jY29kZSxuPWUuZ2V0UHJvY2VkdXJlUGFyYW1OYW1lc0lkc0FuZERlZmF1bHRzKHQpO2lmKG51bGw9PT1uKXJldHVybjtjb25zdFtpLHIsb109bjtlLmluaXRQYXJhbXMoKTtmb3IobGV0IHQ9MDt0PHIubGVuZ3RoO3QrKylBLmhhc093blByb3BlcnR5KHJbdF0pP2UucHVzaFBhcmFtKGlbdF0sQVtyW3RdXSk6ZS5wdXNoUGFyYW0oaVt0XSxvW3RdKTtjb25zdCBzPWUucnVudGltZS5nZXRBZGRvbkJsb2NrKHQpO2lmKHMpe2NvbnN0IEE9cy5jYWxsYmFjayhlLnRocmVhZC5nZXRBbGxwYXJhbXMoKSxlKTtyZXR1cm4gMT09PWUudGhyZWFkLnN0YXR1cyYmKGUuc3RhY2tGcmFtZS5leGVjdXRlZD0hMCksQX1lLnN0YWNrRnJhbWUuZXhlY3V0ZWQ9ITAsZS5zdGFydFByb2NlZHVyZSh0KX19c2V0KEEsZSl7dmFyIHQ7Y29uc3Qgbj1lLnRocmVhZC5ibG9ja0NvbnRhaW5lcixpPW4uZ2V0QmxvY2soZS50aHJlYWQuaXNDb21waWxlZD9lLnRocmVhZC5wZWVrU3RhY2soKTplLnRocmVhZC5wZWVrU3RhY2tGcmFtZSgpLm9wLmlkKTtpZighaSlyZXR1cm47Y29uc3Qgcj1lLnRocmVhZCxvPW4uZ2V0QmxvY2sobnVsbD09PSh0PWkuaW5wdXRzLlBBUkFNKXx8dm9pZCAwPT09dD92b2lkIDA6dC5ibG9jayk7aWYobyl0cnl7bnVsbCE9PXIuc3RhY2tGcmFtZXNbMF0ucGFyYW1zP3Iuc3RhY2tGcmFtZXNbMF0ucGFyYW1zW28uZmllbGRzLlZBTFVFLnZhbHVlXT1BLlZBTFVFOnIuc3RhY2tGcmFtZXNbMF0ucGFyYW1zPXtbby5maWVsZHMuVkFMVUUudmFsdWVdOkEuVkFMVUV9fWNhdGNoKEEpe319YXJndW1lbnRSZXBvcnRlclN0cmluZ051bWJlcihBLGUpe2NvbnN0IHQ9ZS5nZXRQYXJhbShBLlZBTFVFKTtyZXR1cm4gbnVsbD09PXQ/MDp0fWFyZ3VtZW50UmVwb3J0ZXJCb29sZWFuKEEsZSl7Y29uc3QgdD1lLmdldFBhcmFtKEEuVkFMVUUpO3JldHVybiBudWxsPT09dD8wOnR9YXJndW1lbnRSZXBvcnRlckNvbW1hbmQoQSxlKXtjb25zdCB0PWUuZ2V0UGFyYW0oQS5WQUxVRSl8fHt9O2lmKG51bGw9PT10LmVudHJ5KXJldHVybjtjb25zdFtuLGldPWUuZ2V0QnJhbmNoQW5kVGFyZ2V0KHQuY2FsbGVySWQsdC5lbnRyeSl8fFtdO24/ZS50aHJlYWQucHVzaFN0YWNrKG4saSk6ZS50aHJlYWQucHVzaFN0YWNrKG51bGwpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMik7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BfWdldFByaW1pdGl2ZXMoKXtyZXR1cm57bG9va3Nfc2V0VmVydFRyYW5zZm9ybTp0aGlzLnNldFZlcnRpY2FsVHJhbnNmb3JtLGxvb2tzX3NldEhvcml6VHJhbnNmb3JtOnRoaXMuc2V0SG9yaXpvbnRhbFRyYW5zZm9ybX19c2V0VmVydGljYWxUcmFuc2Zvcm0oQSxlKXtsZXR7dGFyZ2V0OnR9PWU7Y29uc3QgaT1uLnRvTnVtYmVyKEEuUEVSQ0VOVCk7dC5zZXRUcmFuc2Zvcm0oW2ksdC50cmFuc2Zvcm1bMV1dKX1zZXRIb3Jpem9udGFsVHJhbnNmb3JtKEEsZSl7bGV0e3RhcmdldDp0fT1lO2NvbnN0IGk9bi50b051bWJlcihBLlBFUkNFTlQpO3Quc2V0VHJhbnNmb3JtKFt0LnRyYW5zZm9ybVswXSxpXSl9fX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0e3RyYW5zbGF0ZUZvckNhbWVyYTpvfT10KDQxKTtBLmV4cG9ydHM9e3NldHVwSW5pdGlhbFN0YXRlOkE9Pntjb25zdCBlPUEucmVuZGVyZXI7Zm9yKGNvbnN0IHQgb2YgQS50YXJnZXRzKXtjb25zdCBuPXQuX2dldFJlbmRlcmVkRGlyZWN0aW9uQW5kU2NhbGUoKTtsZXQgcj1pKHt9LEEuZ2V0Q2FtZXJhKHQuY2FtZXJhQm91bmQpKTtpZihyLmRpcj1yLmRpci8xODAsci5zY2FsZT0xKyhyLnNjYWxlLTEpLzEwMCxlJiZ0LmludGVycG9sYXRpb25EYXRhKXtjb25zdCBBPXQuZHJhd2FibGVJRDtlLnVwZGF0ZURyYXdhYmxlUG9zaXRpb24oQSxbdC54LXIucG9zWzBdLHQueS1yLnBvc1sxXV0pLGUudXBkYXRlRHJhd2FibGVEaXJlY3Rpb25TY2FsZShBLG4uZGlyZWN0aW9uLXIuZGlyLFtuLnNjYWxlWzBdKnIuc2NhbGUsbi5zY2FsZVsxXSpyLnNjYWxlXSksZS51cGRhdGVEcmF3YWJsZUVmZmVjdChBLCJnaG9zdCIsdC5lZmZlY3RzLmdob3N0KX10LnZpc2libGUmJiF0LmlzU3RhZ2U/dC5pbnRlcnBvbGF0aW9uRGF0YT17eDp0Lngtci5wb3NbMF0seTp0Lnktci5wb3NbMV0sZGlyZWN0aW9uOm4uZGlyZWN0aW9uLXIuZGlyLHNjYWxlOltuLnNjYWxlWzBdKnIuc2NhbGUsbi5zY2FsZVsxXSpyLnNjYWxlXSxjb3N0dW1lOnQuY3VycmVudENvc3R1bWUsZ2hvc3Q6dC5lZmZlY3RzLmdob3N0fTp0LmludGVycG9sYXRpb25EYXRhPW51bGx9fSxpbnRlcnBvbGF0ZTooQSxlKT0+e2NvbnN0IHQ9QS5yZW5kZXJlcjtpZih0KWZvcihjb25zdCBuIG9mIEEudGFyZ2V0cyl7Y29uc3Qgcj1uLmludGVycG9sYXRpb25EYXRhO2lmKCFyKWNvbnRpbnVlO2lmKCFuLnZpc2libGV8fDEwMD09PW4uZWZmZWN0cy5naG9zdCYmMTAwPT09ci5naG9zdCljb250aW51ZTtBLmVtaXQoQS5jb25zdHJ1Y3Rvci5CRUZPUkVfSU5URVJQT0xBVEUsbik7bGV0IG89aSh7fSxBLmdldENhbWVyYShuLmNhbWVyYUJvdW5kKSk7by5zY2FsZT0xKyhvLnNjYWxlLTEpLzEwMDtjb25zdCBzPW4uZHJhd2FibGVJRCxhPW4ueC1yLngtby5wb3NbMF0sQj1uLnktci55LW8ucG9zWzFdLGM9TWF0aC5hYnMoYSksZz1NYXRoLmFicyhCKTtpZihjPi4xfHxnPi4xKXtjb25zdCBBPXQuX2FsbERyYXdhYmxlc1tzXS5nZXRBQUJCKCksbj1NYXRoLm1pbigyNDAsTWF0aC5tYXgoNTAsMS41KihBLndpZHRoK0EuaGVpZ2h0KSkpO2lmKE1hdGguc3FydChjKioyK2cqKjIpPG4pe2NvbnN0IEE9ci54K2EqZSxuPXIueStCKmU7dC51cGRhdGVEcmF3YWJsZVBvc2l0aW9uKHMsW0Esbl0pfX1jb25zdCBFPW4uZWZmZWN0cy5naG9zdC1yLmdob3N0LFE9TWF0aC5hYnMoRSk7aWYoUT4wJiZRPDI1KXtjb25zdCBBPW4uZWZmZWN0cy5naG9zdCtFKmU7dC51cGRhdGVEcmF3YWJsZUVmZmVjdChzLCJnaG9zdCIsQSl9aWYoci5jb3N0dW1lPT09bi5jdXJyZW50Q29zdHVtZSl7bGV0e2RpcmVjdGlvbjpBLHNjYWxlOml9PW4uX2dldFJlbmRlcmVkRGlyZWN0aW9uQW5kU2NhbGUoKTtBLT1vLmRpci8xODA7bGV0IGE9ITE7aWYoQSE9PXIuZGlyZWN0aW9uJiYoQSU5MCE9MHx8ci5kaXJlY3Rpb24lOTAhPTApKXtjb25zdCB0PUEqTWF0aC5QSS8xODAsbj1yLmRpcmVjdGlvbipNYXRoLlBJLzE4MDtBPTE4MCpNYXRoLmF0YW4yKE1hdGguc2luKHQpKmUrTWF0aC5zaW4obikqKDEtZSksTWF0aC5jb3ModCkqZStNYXRoLmNvcyhuKSooMS1lKSkvTWF0aC5QSSxhPSEwfWNvbnN0IEI9ci5zY2FsZTtpZihpWzBdPWlbMF0qby5zY2FsZSxpWzFdPWlbMV0qby5zY2FsZSwoaVswXSE9PUJbMF18fGlbMV0hPT1CWzFdKSYmTWF0aC5zaWduKGlbMF0pPT09TWF0aC5zaWduKEJbMF0pJiZNYXRoLnNpZ24oaVsxXSk9PT1NYXRoLnNpZ24oQlsxXSkpe2NvbnN0IEE9aVswXS1CWzBdLHQ9aVsxXS1CWzFdLG49TWF0aC5hYnMoQSkscj1NYXRoLmFicyh0KTtuPDEwMCYmcjwxMDAmJihpWzBdPUJbMF0rQSplLGlbMV09QlsxXSt0KmUsYT0hMCl9YSYmdC51cGRhdGVEcmF3YWJsZURpcmVjdGlvblNjYWxlKHMsQSxpKX1BLmVtaXQoQS5jb25zdHJ1Y3Rvci5BRlRFUl9JTlRFUlBPTEFURSxuKX19fX0sZnVuY3Rpb24oQSxlKXtjb25zdCB0PSJmdW5jdGlvbiI9PXR5cGVvZiByZXF1ZXN0QW5pbWF0aW9uRnJhbWU/cmVxdWVzdEFuaW1hdGlvbkZyYW1lOkE9PnNldFRpbWVvdXQoQSwxZTMvNjApLG49ImZ1bmN0aW9uIj09dHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZT9jYW5jZWxBbmltYXRpb25GcmFtZTpjbGVhclRpbWVvdXQsaT1BPT57bGV0IGU7Y29uc3QgaT0oKT0+e2U9dChpKSxBKCl9O3JldHVybiBlPXQoaSkse2NhbmNlbDooKT0+bihlKX19O0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLnJ1bm5pbmc9ITEsdGhpcy5zZXRGcmFtZXJhdGUoMzApLHRoaXMuc2V0SW50ZXJwb2xhdGlvbighMSksdGhpcy5zdGVwQ2FsbGJhY2s9dGhpcy5zdGVwQ2FsbGJhY2suYmluZCh0aGlzKSx0aGlzLmludGVycG9sYXRpb25DYWxsYmFjaz10aGlzLmludGVycG9sYXRpb25DYWxsYmFjay5iaW5kKHRoaXMpLHRoaXMuX3N0ZXBJbnRlcnZhbD1udWxsLHRoaXMuX2ludGVycG9sYXRpb25BbmltYXRpb249bnVsbCx0aGlzLl9zdGVwQW5pbWF0aW9uPW51bGwsdGhpcy5fc3RlcENvdW50ZXI9MH1zZXRGcmFtZXJhdGUoQSl7dGhpcy5mcmFtZXJhdGU9QSx0aGlzLl9yZXN0YXJ0KCl9c2V0SW50ZXJwb2xhdGlvbihBKXt0aGlzLmludGVycG9sYXRpb249QSx0aGlzLl9yZXN0YXJ0KCl9c3RlcENhbGxiYWNrKCl7dGhpcy5ydW50aW1lLl9zdGVwKCl9aW50ZXJwb2xhdGlvbkNhbGxiYWNrKCl7dGhpcy5ydW50aW1lLl9yZW5kZXJJbnRlcnBvbGF0ZWRQb3NpdGlvbnMoKX1fcmVzdGFydCgpe3RoaXMucnVubmluZyYmKHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKSl9c3RhcnQoKXt0aGlzLnJ1bm5pbmc9ITAsMD09PXRoaXMuZnJhbWVyYXRlPyh0aGlzLl9zdGVwQW5pbWF0aW9uPWkodGhpcy5zdGVwQ2FsbGJhY2spLHRoaXMucnVudGltZS5jdXJyZW50U3RlcFRpbWU9MWUzLzYwKToodGhpcy5pbnRlcnBvbGF0aW9uJiYodGhpcy5faW50ZXJwb2xhdGlvbkFuaW1hdGlvbj1pKHRoaXMuaW50ZXJwb2xhdGlvbkNhbGxiYWNrKSksdGhpcy5fc3RlcEludGVydmFsPXNldEludGVydmFsKHRoaXMuc3RlcENhbGxiYWNrLDFlMy90aGlzLmZyYW1lcmF0ZSksdGhpcy5ydW50aW1lLmN1cnJlbnRTdGVwVGltZT0xZTMvdGhpcy5mcmFtZXJhdGUpfXN0b3AoKXt0aGlzLnJ1bm5pbmc9ITEsY2xlYXJJbnRlcnZhbCh0aGlzLl9zdGVwSW50ZXJ2YWwpLHRoaXMuX2ludGVycG9sYXRpb25BbmltYXRpb24mJnRoaXMuX2ludGVycG9sYXRpb25BbmltYXRpb24uY2FuY2VsKCksdGhpcy5fc3RlcEFuaW1hdGlvbiYmdGhpcy5fc3RlcEFuaW1hdGlvbi5jYW5jZWwoKSx0aGlzLl9pbnRlcnBvbGF0aW9uQW5pbWF0aW9uPW51bGwsdGhpcy5fc3RlcEFuaW1hdGlvbj1udWxsfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdHttb3Rpb25WZWN0b3I6bixzY3JhdGNoQXRhbjI6aX09dCgyNTEpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZnJhbWVOdW1iZXI9MCx0aGlzLmxhc3RBbmFseXplZEZyYW1lPTAsdGhpcy5tb3Rpb25BbW91bnQ9MCx0aGlzLm1vdGlvbkRpcmVjdGlvbj0wLHRoaXMuY3Vycj1udWxsLHRoaXMucHJldj1udWxsLHRoaXMuX2FycmF5cz1uZXcgQXJyYXlCdWZmZXIoMzQ1NjAwKSx0aGlzLl9jdXJyPW5ldyBVaW50OENsYW1wZWRBcnJheSh0aGlzLl9hcnJheXMsMCwxNzI4MDApLHRoaXMuX3ByZXY9bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KHRoaXMuX2FycmF5cywxNzI4MDAsMTcyODAwKX1yZXNldCgpe3RoaXMuZnJhbWVOdW1iZXI9MCx0aGlzLmxhc3RBbmFseXplZEZyYW1lPTAsdGhpcy5tb3Rpb25BbW91bnQ9dGhpcy5tb3Rpb25EaXJlY3Rpb249MCx0aGlzLnByZXY9dGhpcy5jdXJyPW51bGx9YWRkRnJhbWUoQSl7dGhpcy5mcmFtZU51bWJlcisrLHRoaXMucHJldj10aGlzLmN1cnIsdGhpcy5jdXJyPW5ldyBVaW50MzJBcnJheShBLmJ1ZmZlci5zbGljZSgwKSk7Y29uc3QgZT10aGlzLl9wcmV2O3RoaXMuX3ByZXY9dGhpcy5fY3Vycix0aGlzLl9jdXJyPWU7Zm9yKGxldCBBPTA7QTx0aGlzLmN1cnIubGVuZ3RoO0ErKyl0aGlzLl9jdXJyW0FdPTI1NSZ0aGlzLmN1cnJbQV19YW5hbHl6ZUZyYW1lKCl7aWYoIXRoaXMuY3Vycnx8IXRoaXMucHJldilyZXR1cm4gdm9pZCh0aGlzLm1vdGlvbkFtb3VudD10aGlzLm1vdGlvbkRpcmVjdGlvbj0tMSk7aWYodGhpcy5sYXN0QW5hbHl6ZWRGcmFtZT09PXRoaXMuZnJhbWVOdW1iZXIpcmV0dXJuO3RoaXMubGFzdEFuYWx5emVkRnJhbWU9dGhpcy5mcmFtZU51bWJlcjtjb25zdHtfY3VycjpBLF9wcmV2OmV9PXRoaXM7bGV0IHQ9MCxyPTAsbz0wO2ZvcihsZXQgaT05O2k8MzUxO2krPTE3KWZvcihsZXQgcz05O3M8NDcxO3MrPTE3KXtsZXQgYT0wLEI9MCxjPTAsZz0wLEU9MCxRPTQ4MCooaS04KStzLTgsdT1RKzE3O2NvbnN0IGw9NDgwKihpKzgpK3MrODtmb3IoO1E8PWw7USs9NDYzLHUrPTQ4MClmb3IoO1E8PXU7USs9MSl7Y29uc3QgdD1lW1FdLUFbUV0sbj1BW1EtMV0tQVtRKzFdLGk9QVtRLTQ4MF0tQVtRKzQ4MF07YSs9bipuLEIrPW4qaSxjKz1pKmksRSs9bip0LGcrPWkqdH1jb25zdHt1Omgsdjp3fT1uKGEsQixjLEUsZyk7LTE3PGgmJmg8MTcmJi0xNzx3JiZ3PDE3JiYodCs9aCxyKz13LG8rKyl9dC89byxyLz1vLHRoaXMubW90aW9uQW1vdW50PU1hdGgucm91bmQoMTAwKk1hdGguaHlwb3QodCxyKSksdGhpcy5tb3Rpb25BbW91bnQ+MTAmJih0aGlzLm1vdGlvbkRpcmVjdGlvbj1pKHIsdCkpfWdldExvY2FsTW90aW9uKEEsZSl7aWYodGhpcy5jdXJyJiZ0aGlzLnByZXYpe2lmKGUubW90aW9uRnJhbWVOdW1iZXIhPT10aGlzLmZyYW1lTnVtYmVyKXtjb25zdHtfcHJldjp0LF9jdXJyOnJ9PXRoaXM7QS51cGRhdGVDUFVSZW5kZXJBdHRyaWJ1dGVzKCk7Y29uc3Qgbz1BLmdldEZhc3RCb3VuZHMoKSxzPU1hdGgubWF4KE1hdGguZmxvb3Ioby5sZWZ0KzI0MCksMSksYT1NYXRoLm1pbihNYXRoLmZsb29yKG8ucmlnaHQrMjQwKSw0NzkpLEI9TWF0aC5tYXgoTWF0aC5mbG9vcigxODAtby50b3ApLDEpLGM9TWF0aC5taW4oTWF0aC5mbG9vcigxODAtby5ib3R0b20pLDM1OSk7bGV0IGc9MCxFPTAsUT0wLHU9MCxsPTAsaD0wO2NvbnN0IHc9WzAsMCwwXTtmb3IobGV0IGU9QjtlPGM7ZSsrKWZvcihsZXQgbj1zO248YTtuKyspaWYod1swXT1uLTI0MCx3WzFdPTE4MC1lLEEuaXNUb3VjaGluZyh3KSl7Y29uc3QgQT00ODAqZStuLGk9dFtBXS1yW0FdLG89cltBLTFdLXJbQSsxXSxzPXJbQS00ODBdLXJbQSs0ODBdO2crPW8qbyxFKz1vKnMsUSs9cypzLGwrPW8qaSx1Kz1zKmksaCsrfWxldHt1OkMsdjpJfT1uKGcsRSxRLGwsdSksTT0wO2gmJihNPWgsaC89MjU2LEMvPWgsSS89aCksZS5tb3Rpb25BbW91bnQ9TWF0aC5yb3VuZCguMDIqTSpNYXRoLmh5cG90KEMsSSkpLGUubW90aW9uQW1vdW50PjEwMCYmKGUubW90aW9uQW1vdW50PTEwMCksZS5tb3Rpb25BbW91bnQ+MTAvMyYmKGUubW90aW9uRGlyZWN0aW9uPWkoSSxDKSksZS5tb3Rpb25GcmFtZU51bWJlcj10aGlzLmZyYW1lTnVtYmVyfX1lbHNlIGUubW90aW9uQW1vdW50PWUubW90aW9uRGlyZWN0aW9uPS0xfX19LGZ1bmN0aW9uKEEsZSl7Y29uc3QgdD0xODAvTWF0aC5QSSxuPXt1OjAsdjowfSxpPWZ1bmN0aW9uKEEpe3JldHVybihBKzI3MCklMzYwLTE4MH07QS5leHBvcnRzPXttb3Rpb25WZWN0b3I6ZnVuY3Rpb24oQSxlLHQsaSxyKXtsZXQgbz1hcmd1bWVudHMubGVuZ3RoPjUmJnZvaWQgMCE9PWFyZ3VtZW50c1s1XT9hcmd1bWVudHNbNV06bjtjb25zdCBzPWUqZS1BKnQ7aWYocyl7Y29uc3Qgbj0tKHIqZS1pKnQpLGE9LShlKmktQSpyKSxCPTgvcztvLnU9bipCLG8udj1hKkJ9ZWxzZXtjb25zdCBuPShlK0EpKihlK0EpKyh0K2UpKih0K2UpO2lmKG4pe2NvbnN0IHM9LShyK2kpKig4L24pO28udT0oZStBKSpzLG8udj0odCtlKSpzfWVsc2Ugby51PTAsby52PTB9cmV0dXJuIG99LHNjcmF0Y2hEZWdyZWVzOmksc2NyYXRjaEF0YW4yOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGkoTWF0aC5hdGFuMihBLGUpKnQpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCgyKSxvPXQoNCkscz10KDkpLGE9dCgyNTMpLEI9dCgyMyksYz10KDYpLGc9dCg1NSksRT10KDUpLFE9MTI5LHU9MTMwLGw9MTMxLGg9MjI1LHc9MzIsQz05NixJPTAsTT0xMjgsZD0yLHA9MTc1LG09MTYzLEY9MTc5LEQ9MTQ4LFk9MSxmPTAsTj0xNTIsVT0xNTcseT0wLFQ9MCx4PTEsUj01MCxHPTAsUz0zMixiPXsyOToiY29sb3IiLDMwOiJ1bHRyYXNvbmljIiwzMjoiZ3lybyIsMTY6InRvdWNoIiw4OiJtZWRpdW1Nb3RvciIsNzoibGFyZ2VNb3RvciIsMTI2OiJub25lIiwxMjU6Im5vbmUifSxIPXt0b3VjaDowLGNvbG9yOjEsdWx0cmFzb25pYzoxLG5vbmU6MH0sdj17dG91Y2g6ImJ1dHRvbiIsY29sb3I6ImJyaWdodG5lc3MiLHVsdHJhc29uaWM6ImRpc3RhbmNlIn07Y2xhc3Mga3tjb25zdHJ1Y3RvcihBLGUsdCl7dGhpcy5fcGFyZW50PUEsdGhpcy5faW5kZXg9ZSx0aGlzLl90eXBlPXQsdGhpcy5fZGlyZWN0aW9uPTEsdGhpcy5fcG93ZXI9NTAsdGhpcy5fcG9zaXRpb249MCx0aGlzLl9jb21tYW5kSUQ9bnVsbCx0aGlzLl9jb2FzdERlbGF5PTFlM31nZXQgdHlwZSgpe3JldHVybiB0aGlzLl90eXBlfXNldCB0eXBlKEEpe3RoaXMuX3R5cGU9QX1nZXQgZGlyZWN0aW9uKCl7cmV0dXJuIHRoaXMuX2RpcmVjdGlvbn1zZXQgZGlyZWN0aW9uKEEpe3RoaXMuX2RpcmVjdGlvbj1BPDA/LTE6MX1nZXQgcG93ZXIoKXtyZXR1cm4gdGhpcy5fcG93ZXJ9c2V0IHBvd2VyKEEpe3RoaXMuX3Bvd2VyPUF9Z2V0IHBvc2l0aW9uKCl7cmV0dXJuIHRoaXMuX3Bvc2l0aW9ufXNldCBwb3NpdGlvbihBKXtsZXQgZT1BWzBdKzI1NipBWzFdKzI1NipBWzJdKjI1NisyNTYqQVszXSoyNTYqMjU2O2U+MjE0NzQ4MzY0NyYmKGUtPTQyOTQ5NjcyOTYpLHRoaXMuX3Bvc2l0aW9uPWV9dHVybk9uRm9yKEEpe2lmKDA9PT10aGlzLl9wb3dlcilyZXR1cm47Y29uc3QgZT10aGlzLl9wb3J0TWFzayh0aGlzLl9pbmRleCk7bGV0IHQ9QSxuPXRoaXMuX3Bvd2VyKnRoaXMuX2RpcmVjdGlvbjtjb25zdCBpPVI7bGV0IHI9W107clswXT1wLG48MCYmKG4qPS0xLHQqPS0xKTtjb25zdCBvPXQ8MD8yNTYtbjpuO3Q9TWF0aC5hYnModCk7bGV0IHM9aSxhPWksQj10LTIqaTtCPDAmJihzPU1hdGguZmxvb3IodC8yKSxCPTAsYT10LXMpO2NvbnN0IGM9dGhpcy5fcnVuVmFsdWVzKEIpO3I9ci5jb25jYXQoW3ksZSxRLDI1NSZvLFEsc10pLmNvbmNhdChjLmNvbmNhdChbUSxhLHhdKSk7Y29uc3QgZz10aGlzLl9wYXJlbnQuZ2VuZXJhdGVDb21tYW5kKE0scik7dGhpcy5fcGFyZW50LnNlbmQoZyksdGhpcy5jb2FzdEFmdGVyKEEpfWNvYXN0QWZ0ZXIoQSl7aWYoMD09PXRoaXMuX3Bvd2VyKXJldHVybjtjb25zdCBlPXMoKTt0aGlzLl9jb21tYW5kSUQ9ZSxzZXRUaW1lb3V0KCgpPT57dGhpcy5fY29tbWFuZElEPT09ZSYmKHRoaXMuY29hc3QoKSx0aGlzLl9jb21tYW5kSUQ9bnVsbCl9LEErdGhpcy5fY29hc3REZWxheSl9Y29hc3QoKXtpZigwPT09dGhpcy5fcG93ZXIpcmV0dXJuO2NvbnN0IEE9dGhpcy5fcGFyZW50LmdlbmVyYXRlQ29tbWFuZChNLFttLHksdGhpcy5fcG9ydE1hc2sodGhpcy5faW5kZXgpLFRdKTt0aGlzLl9wYXJlbnQuc2VuZChBLCExKX1fcnVuVmFsdWVzKEEpe3JldHVybiBBPDMyNzY3P1t1LDI1NSZBLEE+PjgmMjU1XTpbbCwyNTUmQSxBPj44JjI1NSxBPj4xNiYyNTUsQT4+MjQmMjU1XX1fcG9ydE1hc2soQSl7cmV0dXJuIE1hdGgucG93KDIsQSl9fWNsYXNzIGp7Y29uc3RydWN0b3IoQSxlKXt0aGlzLl9ydW50aW1lPUEsdGhpcy5fcnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsdGhpcy5zdG9wQWxsLmJpbmQodGhpcykpLHRoaXMuX2V4dGVuc2lvbklkPWUsdGhpcy5fc2Vuc29yUG9ydHM9W10sdGhpcy5fbW90b3JQb3J0cz1bXSx0aGlzLl9zZW5zb3JzPXtkaXN0YW5jZTowLGJyaWdodG5lc3M6MCxidXR0b25zOlswLDAsMCwwXX0sdGhpcy5fbW90b3JzPVtudWxsLG51bGwsbnVsbCxudWxsXSx0aGlzLl9wb2xsaW5nSW50ZXJ2YWw9MTUwLHRoaXMuX3BvbGxpbmdJbnRlcnZhbElEPW51bGwsdGhpcy5fcG9sbGluZ0NvdW50ZXI9MCx0aGlzLl9idD1udWxsLHRoaXMuX3J1bnRpbWUucmVnaXN0ZXJQZXJpcGhlcmFsRXh0ZW5zaW9uKGUsdGhpcyksdGhpcy5fcmF0ZUxpbWl0ZXI9bmV3IGcoNDApLHRoaXMucmVzZXQ9dGhpcy5yZXNldC5iaW5kKHRoaXMpLHRoaXMuX29uQ29ubmVjdD10aGlzLl9vbkNvbm5lY3QuYmluZCh0aGlzKSx0aGlzLl9vbk1lc3NhZ2U9dGhpcy5fb25NZXNzYWdlLmJpbmQodGhpcyksdGhpcy5fcG9sbFZhbHVlcz10aGlzLl9wb2xsVmFsdWVzLmJpbmQodGhpcyl9Z2V0IGRpc3RhbmNlKCl7bGV0IEE9dGhpcy5fc2Vuc29ycy5kaXN0YW5jZT4xMDA/MTAwOnRoaXMuX3NlbnNvcnMuZGlzdGFuY2U7cmV0dXJuIEE9QTwwPzA6QSxBPU1hdGgucm91bmQoMTAwKkEpLzEwMCxBfWdldCBicmlnaHRuZXNzKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuYnJpZ2h0bmVzc31tb3RvcihBKXtyZXR1cm4gdGhpcy5fbW90b3JzW0FdfWlzQnV0dG9uUHJlc3NlZChBKXtyZXR1cm4gMT09PXRoaXMuX3NlbnNvcnMuYnV0dG9uc1tBXX1iZWVwKEEsZSl7Y29uc3QgdD10aGlzLmdlbmVyYXRlQ29tbWFuZChNLFtELFksUSwyLHUsQSxBPj44LHUsZSxlPj44XSk7dGhpcy5zZW5kKHQpfXN0b3BBbGwoKXt0aGlzLnN0b3BBbGxNb3RvcnMoKSx0aGlzLnN0b3BTb3VuZCgpfXN0b3BTb3VuZCgpe2NvbnN0IEE9dGhpcy5nZW5lcmF0ZUNvbW1hbmQoTSxbRCxmXSk7dGhpcy5zZW5kKEEsITEpfXN0b3BBbGxNb3RvcnMoKXt0aGlzLl9tb3RvcnMuZm9yRWFjaChBPT57QSYmQS5jb2FzdCgpfSl9c2Nhbigpe3RoaXMuX2J0JiZ0aGlzLl9idC5kaXNjb25uZWN0KCksdGhpcy5fYnQ9bmV3IGEodGhpcy5fcnVudGltZSx0aGlzLl9leHRlbnNpb25JZCx7bWFqb3JEZXZpY2VDbGFzczo4LG1pbm9yRGV2aWNlQ2xhc3M6MX0sdGhpcy5fb25Db25uZWN0LHRoaXMucmVzZXQsdGhpcy5fb25NZXNzYWdlKX1jb25uZWN0KEEpe3RoaXMuX2J0JiZ0aGlzLl9idC5jb25uZWN0UGVyaXBoZXJhbChBLCIxMjM0Iil9ZGlzY29ubmVjdCgpe3RoaXMuX2J0JiZ0aGlzLl9idC5kaXNjb25uZWN0KCksdGhpcy5yZXNldCgpfXJlc2V0KCl7dGhpcy5fc2Vuc29yUG9ydHM9W10sdGhpcy5fbW90b3JQb3J0cz1bXSx0aGlzLl9zZW5zb3JzPXtkaXN0YW5jZTowLGJyaWdodG5lc3M6MCxidXR0b25zOlswLDAsMCwwXX0sdGhpcy5fbW90b3JzPVtudWxsLG51bGwsbnVsbCxudWxsXSx0aGlzLl9wb2xsaW5nSW50ZXJ2YWxJRCYmKHdpbmRvdy5jbGVhckludGVydmFsKHRoaXMuX3BvbGxpbmdJbnRlcnZhbElEKSx0aGlzLl9wb2xsaW5nSW50ZXJ2YWxJRD1udWxsKX1pc0Nvbm5lY3RlZCgpe2xldCBBPSExO3JldHVybiB0aGlzLl9idCYmKEE9dGhpcy5fYnQuaXNDb25uZWN0ZWQoKSksQX1zZW5kKEEpe2xldCBlPSEoYXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0pfHxhcmd1bWVudHNbMV07cmV0dXJuIHRoaXMuaXNDb25uZWN0ZWQoKT9lJiYhdGhpcy5fcmF0ZUxpbWl0ZXIub2theVRvU2VuZCgpP1Byb21pc2UucmVzb2x2ZSgpOnRoaXMuX2J0LnNlbmRNZXNzYWdlKHttZXNzYWdlOkIudWludDhBcnJheVRvQmFzZTY0KEEpLGVuY29kaW5nOiJiYXNlNjQifSk6UHJvbWlzZS5yZXNvbHZlKCl9Z2VuZXJhdGVDb21tYW5kKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjAsbj1bXTtuWzJdPTAsblszXT0wLG5bNF09QSxuWzVdPTI1NSZ0LG5bNl09dD4+OCYmMjU1LG49bi5jb25jYXQoZSk7Y29uc3QgaT1uLmxlbmd0aC0yO3JldHVybiBuWzBdPTI1NSZpLG5bMV09aT4+OCYmMjU1LG59X29uQ29ubmVjdCgpe3RoaXMuX3BvbGxpbmdJbnRlcnZhbElEPXdpbmRvdy5zZXRJbnRlcnZhbCh0aGlzLl9wb2xsVmFsdWVzLHRoaXMuX3BvbGxpbmdJbnRlcnZhbCl9X3BvbGxWYWx1ZXMoKXtpZighdGhpcy5pc0Nvbm5lY3RlZCgpKXJldHVybiB2b2lkIHdpbmRvdy5jbGVhckludGVydmFsKHRoaXMuX3BvbGxpbmdJbnRlcnZhbElEKTtjb25zdCBBPVtdO2xldCBlPTAsdD0wO2lmKHRoaXMuX3BvbGxpbmdDb3VudGVyJTIwPT0wKUFbMF09TixBWzFdPVEsQVsyXT1TLEFbM109QyxBWzRdPWgsQVs1XT13LGU9MzMsdGhpcy5fdXBkYXRlRGV2aWNlcz0hMDtlbHNle2xldCBuPTA7Zm9yKGxldCBlPTA7ZTw0O2UrKykibm9uZSIhPT10aGlzLl9zZW5zb3JQb3J0c1tlXSYmKEFbbiswXT1VLEFbbisxXT15LEFbbisyXT1lLEFbbiszXT1HLEFbbis0XT1IW3RoaXMuX3NlbnNvclBvcnRzW2VdXSxBW24rNV09aCxBW24rNl09NCp0LG4rPTcpLHQrKztmb3IobGV0IGU9MDtlPDQ7ZSsrKUFbbiswXT1GLEFbbisxXT15LEFbbisyXT1lLEFbbiszXT1oLEFbbis0XT00KnQsbis9NSx0Kys7ZT00KnR9Y29uc3Qgbj10aGlzLmdlbmVyYXRlQ29tbWFuZChJLEEsZSk7dGhpcy5zZW5kKG4pLHRoaXMuX3BvbGxpbmdDb3VudGVyKyt9X29uTWVzc2FnZShBKXtjb25zdCBlPUEubWVzc2FnZSx0PUIuYmFzZTY0VG9VaW50OEFycmF5KGUpO2lmKHRbNF09PT1kKWlmKHRoaXMuX3VwZGF0ZURldmljZXMpe2ZvcihsZXQgQT0wO0E8NDtBKyspe2NvbnN0IGU9Ylt0W0ErNV1dO3RoaXMuX3NlbnNvclBvcnRzW0FdPWV8fCJub25lIn1mb3IobGV0IEE9MDtBPDQ7QSsrKXtjb25zdCBlPWJbdFtBKzIxXV07dGhpcy5fbW90b3JQb3J0c1tBXT1lfHwibm9uZSJ9Zm9yKGxldCBBPTA7QTw0O0ErKyl7Y29uc3QgZT10aGlzLl9tb3RvclBvcnRzW0FdOyJub25lIj09PWV8fHRoaXMuX21vdG9yc1tBXXx8KHRoaXMuX21vdG9yc1tBXT1uZXcgayh0aGlzLEEsZSkpLCJub25lIj09PWUmJnRoaXMuX21vdG9yc1tBXSYmKHRoaXMuX21vdG9yc1tBXT1udWxsKX10aGlzLl91cGRhdGVEZXZpY2VzPSExfWVsc2UgaWYoIXRoaXMuX3NlbnNvclBvcnRzLmluY2x1ZGVzKHZvaWQgMCkmJiF0aGlzLl9tb3RvclBvcnRzLmluY2x1ZGVzKHZvaWQgMCkpe2xldCBBPTU7Zm9yKGxldCBlPTA7ZTw0O2UrKyl7Y29uc3Qgbj1uZXcgVWludDhBcnJheShbdFtBXSx0W0ErMV0sdFtBKzJdLHRbQSszXV0pLmJ1ZmZlcixpPW5ldyBEYXRhVmlldyhuKS5nZXRGbG9hdDMyKDAsITApOyJidXR0b24iPT09dlt0aGlzLl9zZW5zb3JQb3J0c1tlXV0/dGhpcy5fc2Vuc29ycy5idXR0b25zW2VdPWl8fDA6dlt0aGlzLl9zZW5zb3JQb3J0c1tlXV0mJih0aGlzLl9zZW5zb3JzW3ZbdGhpcy5fc2Vuc29yUG9ydHNbZV1dXT1pfHwwKSxBKz00fWZvcihsZXQgZT0wO2U8NDtlKyspe2NvbnN0IG49W3RbQV0sdFtBKzFdLHRbQSsyXSx0W0ErM11dO3RoaXMuX21vdG9yc1tlXSYmKHRoaXMuX21vdG9yc1tlXS5wb3NpdGlvbj1uKSxBKz00fX19fWNvbnN0IEo9WyJBIiwiQiIsIkMiLCJEIl0sej1bIjEiLCIyIiwiMyIsIjQiXTtjbGFzcyBMe3N0YXRpYyBnZXQgRVhURU5TSU9OX0lEKCl7cmV0dXJuImV2MyJ9Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5fcGVyaXBoZXJhbD1uZXcgaih0aGlzLnJ1bnRpbWUsTC5FWFRFTlNJT05fSUQpLHRoaXMuX3BsYXlOb3RlRm9yUGlja2VyPXRoaXMuX3BsYXlOb3RlRm9yUGlja2VyLmJpbmQodGhpcyksdGhpcy5ydW50aW1lLm9uKCJQTEFZX05PVEUiLHRoaXMuX3BsYXlOb3RlRm9yUGlja2VyKX1nZXRJbmZvKCl7cmV0dXJue2lkOkwuRVhURU5TSU9OX0lELG5hbWU6IkxFR08gRVYzIixibG9ja0ljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaVZWUkdMVGdpUHo0S1BITjJaeUIzYVdSMGFEMGlOREJ3ZUNJZ2FHVnBaMmgwUFNJME1IQjRJaUIyYVdWM1FtOTRQU0l3SURBZ05EQWdOREFpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJK0NpQWdJQ0E4SVMwdElFZGxibVZ5WVhSdmNqb2dVMnRsZEdOb0lEVXdMaklnS0RVMU1EUTNLU0F0SUdoMGRIQTZMeTkzZDNjdVltOW9aVzFwWVc1amIyUnBibWN1WTI5dEwzTnJaWFJqYUNBdExUNEtJQ0FnSUR4MGFYUnNaVDVsZGpNdFlteHZZMnN0YVdOdmJqd3ZkR2wwYkdVK0NpQWdJQ0E4WkdWell6NURjbVZoZEdWa0lIZHBkR2dnVTJ0bGRHTm9Mand2WkdWell6NEtJQ0FnSUR4a1pXWnpQand2WkdWbWN6NEtJQ0FnSUR4bklHbGtQU0psZGpNdFlteHZZMnN0YVdOdmJpSWdjM1J5YjJ0bFBTSnViMjVsSWlCemRISnZhMlV0ZDJsa2RHZzlJakVpSUdacGJHdzlJbTV2Ym1VaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSStDaUFnSUNBZ0lDQWdQR2NnYVdROUltVjJNeUlnZEhKaGJuTm1iM0p0UFNKMGNtRnVjMnhoZEdVb05TNDFNREF3TURBc0lETXVOVEF3TURBd0tTSWdabWxzYkMxeWRXeGxQU0p1YjI1NlpYSnZJajRLSUNBZ0lDQWdJQ0FnSUNBZ1BISmxZM1FnYVdROUlsSmxZM1JoYm1kc1pTMXdZWFJvSWlCemRISnZhMlU5SWlNM1F6ZzNRVFVpSUdacGJHdzlJaU5HUmtaR1JrWWlJSE4wY205clpTMXNhVzVsWTJGd1BTSnliM1Z1WkNJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKeWIzVnVaQ0lnZUQwaU1DNDFJaUI1UFNJekxqVTVJaUIzYVdSMGFEMGlNamdpSUdobGFXZG9kRDBpTWpVdU9ERWlJSEo0UFNJeElqNDhMM0psWTNRK0NpQWdJQ0FnSUNBZ0lDQWdJRHh5WldOMElHbGtQU0pTWldOMFlXNW5iR1V0Y0dGMGFDSWdjM1J5YjJ0bFBTSWpOME00TjBFMUlpQm1hV3hzUFNJalJUWkZOMFU0SWlCemRISnZhMlV0YkdsdVpXTmhjRDBpY205MWJtUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGljbTkxYm1RaUlIZzlJakl1TlNJZ2VUMGlNQzQxSWlCM2FXUjBhRDBpTWpRaUlHaGxhV2RvZEQwaU16SWlJSEo0UFNJeElqNDhMM0psWTNRK0NpQWdJQ0FnSUNBZ0lDQWdJRHh5WldOMElHbGtQU0pTWldOMFlXNW5iR1V0Y0dGMGFDSWdjM1J5YjJ0bFBTSWpOME00TjBFMUlpQm1hV3hzUFNJalJrWkdSa1pHSWlCemRISnZhMlV0YkdsdVpXTmhjRDBpY205MWJtUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGljbTkxYm1RaUlIZzlJakl1TlNJZ2VUMGlNVFF1TlNJZ2QybGtkR2c5SWpJMElpQm9aV2xuYUhROUlqRXpJajQ4TDNKbFkzUStDaUFnSUNBZ0lDQWdJQ0FnSUR4d1lYUm9JR1E5SWsweE5DNDFMREV3TGpVZ1RERTBMalVzTVRRdU5TSWdhV1E5SWxOb1lYQmxJaUJ6ZEhKdmEyVTlJaU0zUXpnM1FUVWlJR1pwYkd3OUlpTkZOa1UzUlRnaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p5YjNWdVpDSStQQzl3WVhSb1Bnb2dJQ0FnSUNBZ0lDQWdJQ0E4Y21WamRDQnBaRDBpVW1WamRHRnVaMnhsTFhCaGRHZ2lJR1pwYkd3OUlpTTBNVFEzTlRjaUlIZzlJalF1TlNJZ2VUMGlNaTQxSWlCM2FXUjBhRDBpTWpBaUlHaGxhV2RvZEQwaU1UQWlJSEo0UFNJeElqNDhMM0psWTNRK0NpQWdJQ0FnSUNBZ0lDQWdJRHh5WldOMElHbGtQU0pTWldOMFlXNW5iR1V0Y0dGMGFDSWdabWxzYkQwaUl6ZERPRGRCTlNJZ2IzQmhZMmwwZVQwaU1DNDFJaUI0UFNJeE15NDFJaUI1UFNJeU1DNHhNeUlnZDJsa2RHZzlJaklpSUdobGFXZG9kRDBpTWlJZ2NuZzlJakF1TlNJK1BDOXlaV04wUGdvZ0lDQWdJQ0FnSUNBZ0lDQThjR0YwYUNCa1BTSk5PUzR3Tml3eU1DNHhNeUJNTVRBdU5UWXNNakF1TVRNZ1F6RXdMamd6TmpFME1qUXNNakF1TVRNZ01URXVNRFlzTWpBdU16VXpPRFUzTmlBeE1TNHdOaXd5TUM0Mk15Qk1NVEV1TURZc01qRXVOak1nUXpFeExqQTJMREl4TGprd05qRTBNalFnTVRBdU9ETTJNVFF5TkN3eU1pNHhNeUF4TUM0MU5pd3lNaTR4TXlCTU9TNHdOaXd5TWk0eE15QkRPQzQxTURjM01UVXlOU3d5TWk0eE15QTRMakEyTERJeExqWTRNakk0TkRjZ09DNHdOaXd5TVM0eE15QkRPQzR3Tml3eU1DNDFOemMzTVRVeklEZ3VOVEEzTnpFMU1qVXNNakF1TVRNZ09TNHdOaXd5TUM0eE15QmFJaUJwWkQwaVUyaGhjR1VpSUdacGJHdzlJaU0zUXpnM1FUVWlJRzl3WVdOcGRIazlJakF1TlNJK1BDOXdZWFJvUGdvZ0lDQWdJQ0FnSUNBZ0lDQThjR0YwYUNCa1BTSk5NVGd1T1RFc01qQXVNVE1nVERJd0xqUXlMREl3TGpFeklFTXlNQzQyT1RZeE5ESTBMREl3TGpFeklESXdMamt5TERJd0xqTTFNemcxTnpZZ01qQXVPVElzTWpBdU5qTWdUREl3TGpreUxESXhMall6SUVNeU1DNDVNaXd5TVM0NU1EWXhOREkwSURJd0xqWTVOakUwTWpRc01qSXVNVE1nTWpBdU5ESXNNakl1TVRNZ1RERTRMamt5TERJeUxqRXpJRU14T0M0ek5qYzNNVFV6TERJeUxqRXpJREUzTGpreUxESXhMalk0TWpJNE5EY2dNVGN1T1RJc01qRXVNVE1nUXpFM0xqa3hPVGszTWpZc01qQXVOVGd4TlRrM0lERTRMak0yTVRZeU5EVXNNakF1TVRNMU5EZzBJREU0TGpreExESXdMakV6SUZvaUlHbGtQU0pUYUdGd1pTSWdabWxzYkQwaUl6ZERPRGRCTlNJZ2IzQmhZMmwwZVQwaU1DNDFJaUIwY21GdWMyWnZjbTA5SW5SeVlXNXpiR0YwWlNneE9TNDBNakF3TURBc0lESXhMakV6TURBd01Da2djbTkwWVhSbEtDMHhPREF1TURBd01EQXdLU0IwY21GdWMyeGhkR1VvTFRFNUxqUXlNREF3TUN3Z0xUSXhMakV6TURBd01Da2dJajQ4TDNCaGRHZytDaUFnSUNBZ0lDQWdJQ0FnSUR4d1lYUm9JR1E5SWswNExqSXpMREUzTGpVZ1REVXNNVGN1TlNCRE5DNDNNak00TlRjMk15d3hOeTQxSURRdU5Td3hOeTR5TnpZeE5ESTBJRFF1TlN3eE55Qk1OQzQxTERFMExqVWdUREV3TGpVc01UUXVOU0JNT0M0Mk5Td3hOeTR5T0NCRE9DNDFOVFEyTmprMk1Td3hOeTQwTVRjNU1EZ3lJRGd1TXprM05qVXdNRFlzTVRjdU5UQXdNVFUyTmlBNExqSXpMREUzTGpVZ1dpSWdhV1E5SWxOb1lYQmxJaUJtYVd4c1BTSWpOME00TjBFMUlpQnZjR0ZqYVhSNVBTSXdMalVpUGp3dmNHRjBhRDRLSUNBZ0lDQWdJQ0FnSUNBZ1BIQmhkR2dnWkQwaVRURTRMakUxTERFNExqZzFJRXd4Tnk0Mk5Td3hPUzR6TlNCRE1UY3VOVFV5TXpReE5pd3hPUzQwTkRRd056VTJJREUzTGpRNU9EQXpNemtzTVRrdU5UYzBOREUwTWlBeE55NDFMREU1TGpjeElFd3hOeTQxTERJd0lFTXhOeTQxTERJd0xqSTNOakUwTWpRZ01UY3VNamMyTVRReU5Dd3lNQzQxSURFM0xESXdMalVnVERFMkxqVXNNakF1TlNCRE1UWXVNakl6T0RVM05pd3lNQzQxSURFMkxESXdMakkzTmpFME1qUWdNVFlzTWpBZ1F6RTJMREU1TGpjeU16ZzFOellnTVRVdU56YzJNVFF5TkN3eE9TNDFJREUxTGpVc01Ua3VOU0JNTVRNdU5Td3hPUzQxSUVNeE15NHlNak00TlRjMkxERTVMalVnTVRNc01Ua3VOekl6T0RVM05pQXhNeXd5TUNCRE1UTXNNakF1TWpjMk1UUXlOQ0F4TWk0M056WXhOREkwTERJd0xqVWdNVEl1TlN3eU1DNDFJRXd4TWl3eU1DNDFJRU14TVM0M01qTTROVGMyTERJd0xqVWdNVEV1TlN3eU1DNHlOell4TkRJMElERXhMalVzTWpBZ1RERXhMalVzTVRrdU56RWdRekV4TGpVd01UazJOakVzTVRrdU5UYzBOREUwTWlBeE1TNDBORGMyTlRnMExERTVMalEwTkRBM05UWWdNVEV1TXpVc01Ua3VNelVnVERFd0xqZzFMREU0TGpnMUlFTXhNQzQyTlRneU1UWTNMREU0TGpZMU1qRTROak1nTVRBdU5qVTRNakUyTnl3eE9DNHpNemM0TVRNM0lERXdMamcxTERFNExqRTBJRXd4TWk0ek5pd3hOaTQyTlNCRE1USXVORFV3TWpnd015d3hOaTQxTlRJNE5qRTNJREV5TGpVM056TTVOakVzTVRZdU5EazRNemd6TlNBeE1pNDNNU3d4Tmk0MUlFd3hOaTR5T1N3eE5pNDFJRU14Tmk0ME1qSTJNRE01TERFMkxqUTVPRE00TXpVZ01UWXVOVFE1TnpFNU55d3hOaTQxTlRJNE5qRTNJREUyTGpZMExERTJMalkxSUV3eE9DNHhOU3d4T0M0eE5DQkRNVGd1TXpReE56Z3pNeXd4T0M0ek16YzRNVE0zSURFNExqTTBNVGM0TXpNc01UZ3VOalV5TVRnMk15QXhPQzR4TlN3eE9DNDROU0JhSWlCcFpEMGlVMmhoY0dVaUlHWnBiR3c5SWlNM1F6ZzNRVFVpSUc5d1lXTnBkSGs5SWpBdU5TSStQQzl3WVhSb1Bnb2dJQ0FnSUNBZ0lDQWdJQ0E4Y0dGMGFDQmtQU0pOTVRBdU9EVXNNak11TkRVZ1RERXhMak0xTERJeUxqazFJRU14TVM0ME5EYzJOVGcwTERJeUxqZzFOVGt5TkRRZ01URXVOVEF4T1RZMk1Td3lNaTQzTWpVMU9EVTRJREV4TGpVc01qSXVOVGtnVERFeExqVXNNakl1TXlCRE1URXVOU3d5TWk0d01qTTROVGMySURFeExqY3lNemcxTnpZc01qRXVPQ0F4TWl3eU1TNDRJRXd4TWk0MUxESXhMamdnUXpFeUxqYzNOakUwTWpRc01qRXVPQ0F4TXl3eU1pNHdNak00TlRjMklERXpMREl5TGpNZ1F6RXpMREl5TGpVM05qRTBNalFnTVRNdU1qSXpPRFUzTml3eU1pNDRJREV6TGpVc01qSXVPQ0JNTVRVdU5Td3lNaTQ0SUVNeE5TNDNOell4TkRJMExESXlMamdnTVRZc01qSXVOVGMyTVRReU5DQXhOaXd5TWk0eklFTXhOaXd5TWk0d01qTTROVGMySURFMkxqSXlNemcxTnpZc01qRXVPQ0F4Tmk0MUxESXhMamdnVERFM0xESXhMamdnUXpFM0xqSTNOakUwTWpRc01qRXVPQ0F4Tnk0MUxESXlMakF5TXpnMU56WWdNVGN1TlN3eU1pNHpJRXd4Tnk0MUxESXlMalU1SUVNeE55NDBPVGd3TXpNNUxESXlMamN5TlRVNE5UZ2dNVGN1TlRVeU16UXhOaXd5TWk0NE5UVTVNalEwSURFM0xqWTFMREl5TGprMUlFd3hPQzR4TlN3eU15NDBOU0JETVRndU16UXdOVGN4TkN3eU15NDJORFEwTWpFNElERTRMak0wTURVM01UUXNNak11T1RVMU5UYzRNaUF4T0M0eE5Td3lOQzR4TlNCTU1UWXVOalFzTWpVdU5qVWdRekUyTGpVME9UY3hPVGNzTWpVdU56UTNNVE00TXlBeE5pNDBNakkyTURNNUxESTFMamd3TVRZeE5qVWdNVFl1TWprc01qVXVPQ0JNTVRJdU56RXNNalV1T0NCRE1USXVOVGMzTXprMk1Td3lOUzQ0TURFMk1UWTFJREV5TGpRMU1ESTRNRE1zTWpVdU56UTNNVE00TXlBeE1pNHpOaXd5TlM0Mk5TQk1NVEF1T0RVc01qUXVNVFVnUXpFd0xqWTFPVFF5T0RZc01qTXVPVFUxTlRjNE1pQXhNQzQyTlRrME1qZzJMREl6TGpZME5EUXlNVGdnTVRBdU9EVXNNak11TkRVZ1dpSWdhV1E5SWxOb1lYQmxJaUJtYVd4c1BTSWpOME00TjBFMUlpQnZjR0ZqYVhSNVBTSXdMalVpUGp3dmNHRjBhRDRLSUNBZ0lDQWdJQ0FnSUNBZ1BIQmhkR2dnWkQwaVRUSXhMalVzTWpjdU5TQk1Nall1TlN3eU55NDFJRXd5Tmk0MUxETXhMalVnUXpJMkxqVXNNekl1TURVeU1qZzBOeUF5Tmk0d05USXlPRFEzTERNeUxqVWdNalV1TlN3ek1pNDFJRXd5TVM0MUxETXlMalVnVERJeExqVXNNamN1TlNCYUlpQnBaRDBpVTJoaGNHVWlJSE4wY205clpUMGlJME5ETkVNeU15SWdabWxzYkQwaUkwWXhOVUV5T1NJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW5KdmRXNWtJaUJ6ZEhKdmEyVXRiR2x1WldwdmFXNDlJbkp2ZFc1a0lqNDhMM0JoZEdnK0NpQWdJQ0FnSUNBZ1BDOW5QZ29nSUNBZ1BDOW5QZ284TDNOMlp6ND0iLHNob3dTdGF0dXNCdXR0b246ITAsYmxvY2tzOlt7b3Bjb2RlOiJtb3RvclR1cm5DbG9ja3dpc2UiLHRleHQ6byh7aWQ6ImV2My5tb3RvclR1cm5DbG9ja3dpc2UiLGRlZmF1bHQ6Im1vdG9yIFtQT1JUXSB0dXJuIHRoaXMgd2F5IGZvciBbVElNRV0gc2Vjb25kcyIsZGVzY3JpcHRpb246InR1cm4gYSBtb3RvciBjbG9ja3dpc2UgZm9yIHNvbWUgdGltZSJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7UE9SVDp7dHlwZTpuLlNUUklORyxtZW51OiJtb3RvclBvcnRzIixkZWZhdWx0VmFsdWU6MH0sVElNRTp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSx7b3Bjb2RlOiJtb3RvclR1cm5Db3VudGVyQ2xvY2t3aXNlIix0ZXh0Om8oe2lkOiJldjMubW90b3JUdXJuQ291bnRlckNsb2Nrd2lzZSIsZGVmYXVsdDoibW90b3IgW1BPUlRdIHR1cm4gdGhhdCB3YXkgZm9yIFtUSU1FXSBzZWNvbmRzIixkZXNjcmlwdGlvbjoidHVybiBhIG1vdG9yIGNvdW50ZXItY2xvY2t3aXNlIGZvciBzb21lIHRpbWUifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1BPUlQ6e3R5cGU6bi5TVFJJTkcsbWVudToibW90b3JQb3J0cyIsZGVmYXVsdFZhbHVlOjB9LFRJTUU6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9fX0se29wY29kZToibW90b3JTZXRQb3dlciIsdGV4dDpvKHtpZDoiZXYzLm1vdG9yU2V0UG93ZXIiLGRlZmF1bHQ6Im1vdG9yIFtQT1JUXSBzZXQgcG93ZXIgW1BPV0VSXSAlIixkZXNjcmlwdGlvbjoic2V0IGEgbW90b3IncyBwb3dlciB0byBzb21lIHZhbHVlIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntQT1JUOnt0eXBlOm4uU1RSSU5HLG1lbnU6Im1vdG9yUG9ydHMiLGRlZmF1bHRWYWx1ZTowfSxQT1dFUjp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfX19LHtvcGNvZGU6ImdldE1vdG9yUG9zaXRpb24iLHRleHQ6byh7aWQ6ImV2My5nZXRNb3RvclBvc2l0aW9uIixkZWZhdWx0OiJtb3RvciBbUE9SVF0gcG9zaXRpb24iLGRlc2NyaXB0aW9uOiJnZXQgdGhlIG1lYXN1cmVkIGRlZ3JlZXMgYSBtb3RvciBoYXMgdHVybmVkIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7UE9SVDp7dHlwZTpuLlNUUklORyxtZW51OiJtb3RvclBvcnRzIixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJ3aGVuQnV0dG9uUHJlc3NlZCIsdGV4dDpvKHtpZDoiZXYzLndoZW5CdXR0b25QcmVzc2VkIixkZWZhdWx0OiJ3aGVuIGJ1dHRvbiBbUE9SVF0gcHJlc3NlZCIsZGVzY3JpcHRpb246IndoZW4gYSBidXR0b24gY29ubmVjdGVkIHRvIGEgcG9ydCBpcyBwcmVzc2VkIn0pLGJsb2NrVHlwZTppLkhBVCxhcmd1bWVudHM6e1BPUlQ6e3R5cGU6bi5TVFJJTkcsbWVudToic2Vuc29yUG9ydHMiLGRlZmF1bHRWYWx1ZTowfX19LHtvcGNvZGU6IndoZW5EaXN0YW5jZUxlc3NUaGFuIix0ZXh0Om8oe2lkOiJldjMud2hlbkRpc3RhbmNlTGVzc1RoYW4iLGRlZmF1bHQ6IndoZW4gZGlzdGFuY2UgPCBbRElTVEFOQ0VdIixkZXNjcmlwdGlvbjoid2hlbiB0aGUgdmFsdWUgbWVhc3VyZWQgYnkgdGhlIGRpc3RhbmNlIHNlbnNvciBpcyBsZXNzIHRoYW4gc29tZSB2YWx1ZSJ9KSxibG9ja1R5cGU6aS5IQVQsYXJndW1lbnRzOntESVNUQU5DRTp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6NX19fSx7b3Bjb2RlOiJ3aGVuQnJpZ2h0bmVzc0xlc3NUaGFuIix0ZXh0Om8oe2lkOiJldjMud2hlbkJyaWdodG5lc3NMZXNzVGhhbiIsZGVmYXVsdDoid2hlbiBicmlnaHRuZXNzIDwgW0RJU1RBTkNFXSIsZGVzY3JpcHRpb246IndoZW4gdmFsdWUgbWVhc3VyZWQgYnkgYnJpZ2h0bmVzcyBzZW5zb3IgaXMgbGVzcyB0aGFuIHNvbWUgdmFsdWUifSksYmxvY2tUeXBlOmkuSEFULGFyZ3VtZW50czp7RElTVEFOQ0U6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjUwfX19LHtvcGNvZGU6ImJ1dHRvblByZXNzZWQiLHRleHQ6byh7aWQ6ImV2My5idXR0b25QcmVzc2VkIixkZWZhdWx0OiJidXR0b24gW1BPUlRdIHByZXNzZWQ/IixkZXNjcmlwdGlvbjoiaXMgYSBidXR0b24gb24gc29tZSBwb3J0IHByZXNzZWQ/In0pLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOntQT1JUOnt0eXBlOm4uU1RSSU5HLG1lbnU6InNlbnNvclBvcnRzIixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJnZXREaXN0YW5jZSIsdGV4dDpvKHtpZDoiZXYzLmdldERpc3RhbmNlIixkZWZhdWx0OiJkaXN0YW5jZSIsZGVzY3JpcHRpb246ImdldHMgbWVhc3VyZWQgZGlzdGFuY2UifSksYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtvcGNvZGU6ImdldEJyaWdodG5lc3MiLHRleHQ6byh7aWQ6ImV2My5nZXRCcmlnaHRuZXNzIixkZWZhdWx0OiJicmlnaHRuZXNzIixkZXNjcmlwdGlvbjoiZ2V0cyBtZWFzdXJlZCBicmlnaHRuZXNzIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJiZWVwIix0ZXh0Om8oe2lkOiJldjMuYmVlcE5vdGUiLGRlZmF1bHQ6ImJlZXAgbm90ZSBbTk9URV0gZm9yIFtUSU1FXSBzZWNzIixkZXNjcmlwdGlvbjoicGxheSBzb21lIG5vdGUgb24gRVYzIGZvciBzb21lIHRpbWUifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e05PVEU6e3R5cGU6bi5OT1RFLGRlZmF1bHRWYWx1ZTo2MH0sVElNRTp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6LjV9fX1dLG1lbnVzOnttb3RvclBvcnRzOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6dGhpcy5fZm9ybWF0TWVudShKKX0sc2Vuc29yUG9ydHM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczp0aGlzLl9mb3JtYXRNZW51KHopfX19fW1vdG9yVHVybkNsb2Nrd2lzZShBKXtjb25zdCBlPXIudG9OdW1iZXIoQS5QT1JUKTtsZXQgdD0xZTMqci50b051bWJlcihBLlRJTUUpO3JldHVybiB0PWMuY2xhbXAodCwwLDE1ZTMpLG5ldyBQcm9taXNlKEE9Pnt0aGlzLl9mb3JFYWNoTW90b3IoZSxBPT57Y29uc3QgZT10aGlzLl9wZXJpcGhlcmFsLm1vdG9yKEEpO2UmJihlLmRpcmVjdGlvbj0xLGUudHVybk9uRm9yKHQpKX0pLHNldFRpbWVvdXQoQSx0KX0pfW1vdG9yVHVybkNvdW50ZXJDbG9ja3dpc2UoQSl7Y29uc3QgZT1yLnRvTnVtYmVyKEEuUE9SVCk7bGV0IHQ9MWUzKnIudG9OdW1iZXIoQS5USU1FKTtyZXR1cm4gdD1jLmNsYW1wKHQsMCwxNWUzKSxuZXcgUHJvbWlzZShBPT57dGhpcy5fZm9yRWFjaE1vdG9yKGUsQT0+e2NvbnN0IGU9dGhpcy5fcGVyaXBoZXJhbC5tb3RvcihBKTtlJiYoZS5kaXJlY3Rpb249LTEsZS50dXJuT25Gb3IodCkpfSksc2V0VGltZW91dChBLHQpfSl9bW90b3JTZXRQb3dlcihBKXtjb25zdCBlPXIudG9OdW1iZXIoQS5QT1JUKSx0PWMuY2xhbXAoci50b051bWJlcihBLlBPV0VSKSwwLDEwMCk7dGhpcy5fZm9yRWFjaE1vdG9yKGUsQT0+e2NvbnN0IGU9dGhpcy5fcGVyaXBoZXJhbC5tb3RvcihBKTtlJiYoZS5wb3dlcj10KX0pfWdldE1vdG9yUG9zaXRpb24oQSl7Y29uc3QgZT1yLnRvTnVtYmVyKEEuUE9SVCk7aWYoIVswLDEsMiwzXS5pbmNsdWRlcyhlKSlyZXR1cm47Y29uc3QgdD10aGlzLl9wZXJpcGhlcmFsLm1vdG9yKGUpO2xldCBuPTA7cmV0dXJuIHQmJihuPWMud3JhcENsYW1wKHQucG9zaXRpb24sMCwzNjApKSxufXdoZW5CdXR0b25QcmVzc2VkKEEpe2NvbnN0IGU9ci50b051bWJlcihBLlBPUlQpO2lmKFswLDEsMiwzXS5pbmNsdWRlcyhlKSlyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC5pc0J1dHRvblByZXNzZWQoZSl9d2hlbkRpc3RhbmNlTGVzc1RoYW4oQSl7Y29uc3QgZT1jLmNsYW1wKHIudG9OdW1iZXIoQS5ESVNUQU5DRSksMCwxMDApO3JldHVybiB0aGlzLl9wZXJpcGhlcmFsLmRpc3RhbmNlPGV9d2hlbkJyaWdodG5lc3NMZXNzVGhhbihBKXtjb25zdCBlPWMuY2xhbXAoci50b051bWJlcihBLkRJU1RBTkNFKSwwLDEwMCk7cmV0dXJuIHRoaXMuX3BlcmlwaGVyYWwuYnJpZ2h0bmVzczxlfWJ1dHRvblByZXNzZWQoQSl7Y29uc3QgZT1yLnRvTnVtYmVyKEEuUE9SVCk7aWYoWzAsMSwyLDNdLmluY2x1ZGVzKGUpKXJldHVybiB0aGlzLl9wZXJpcGhlcmFsLmlzQnV0dG9uUHJlc3NlZChlKX1nZXREaXN0YW5jZSgpe3JldHVybiB0aGlzLl9wZXJpcGhlcmFsLmRpc3RhbmNlfWdldEJyaWdodG5lc3MoKXtyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC5icmlnaHRuZXNzfV9wbGF5Tm90ZUZvclBpY2tlcihBLGUpe2U9PT10aGlzLmdldEluZm8oKS5uYW1lJiZ0aGlzLmJlZXAoe05PVEU6QSxUSU1FOi4yNX0pfWJlZXAoQSl7Y29uc3QgZT1jLmNsYW1wKHIudG9OdW1iZXIoQS5OT1RFKSw0Nyw5OSk7bGV0IHQ9MWUzKnIudG9OdW1iZXIoQS5USU1FKTtpZih0PWMuY2xhbXAodCwwLDNlMyksMCE9PXQpcmV0dXJuIG5ldyBQcm9taXNlKEE9Pntjb25zdCBuPTQ0MCpNYXRoLnBvdygyLChlLTY5KzEyKS8xMik7dGhpcy5fcGVyaXBoZXJhbC5iZWVwKG4sdCksc2V0VGltZW91dChBLHQpfSl9X2ZvckVhY2hNb3RvcihBLGUpe2xldCB0O3N3aXRjaChBKXtjYXNlIDA6dD1bMF07YnJlYWs7Y2FzZSAxOnQ9WzFdO2JyZWFrO2Nhc2UgMjp0PVsyXTticmVhaztjYXNlIDM6dD1bM107YnJlYWs7ZGVmYXVsdDpFLndhcm4oIkludmFsaWQgbW90b3IgSUQ6ICIuY29uY2F0KEEpKSx0PVtdfWZvcihjb25zdCBBIG9mIHQpZShBKX1fZm9ybWF0TWVudShBKXtjb25zdCBlPVtdO2ZvcihsZXQgdD0wO3Q8QS5sZW5ndGg7dCsrKXtjb25zdCBuPXt9O24udGV4dD1BW3RdLG4udmFsdWU9dC50b1N0cmluZygpLGUucHVzaChuKX1yZXR1cm4gZX19QS5leHBvcnRzPUx9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNTQpO0EuZXhwb3J0cz1jbGFzcyBleHRlbmRzIG57Y29uc3RydWN0b3IoQSxlLHQsbil7bGV0IGk9YXJndW1lbnRzLmxlbmd0aD40JiZ2b2lkIDAhPT1hcmd1bWVudHNbNF0/YXJndW1lbnRzWzRdOm51bGwscj1hcmd1bWVudHMubGVuZ3RoPjU/YXJndW1lbnRzWzVdOnZvaWQgMDtzdXBlcigpLHRoaXMuX3NvY2tldD1BLmdldFNjcmF0Y2hMaW5rU29ja2V0KCJCVCIpLHRoaXMuX3NvY2tldC5zZXRPbk9wZW4odGhpcy5yZXF1ZXN0UGVyaXBoZXJhbC5iaW5kKHRoaXMpKSx0aGlzLl9zb2NrZXQuc2V0T25FcnJvcih0aGlzLl9oYW5kbGVSZXF1ZXN0RXJyb3IuYmluZCh0aGlzKSksdGhpcy5fc29ja2V0LnNldE9uQ2xvc2UodGhpcy5oYW5kbGVEaXNjb25uZWN0RXJyb3IuYmluZCh0aGlzKSksdGhpcy5fc29ja2V0LnNldEhhbmRsZU1lc3NhZ2UodGhpcy5faGFuZGxlTWVzc2FnZS5iaW5kKHRoaXMpKSx0aGlzLl9zZW5kTWVzc2FnZT10aGlzLl9zb2NrZXQuc2VuZE1lc3NhZ2UuYmluZCh0aGlzLl9zb2NrZXQpLHRoaXMuX2F2YWlsYWJsZVBlcmlwaGVyYWxzPXt9LHRoaXMuX2Nvbm5lY3RDYWxsYmFjaz1uLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLl9jaGFyYWN0ZXJpc3RpY0RpZENoYW5nZUNhbGxiYWNrPW51bGwsdGhpcy5fcmVzZXRDYWxsYmFjaz1pLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEPW51bGwsdGhpcy5fZXh0ZW5zaW9uSWQ9ZSx0aGlzLl9wZXJpcGhlcmFsT3B0aW9ucz10LHRoaXMuX21lc3NhZ2VDYWxsYmFjaz1yLHRoaXMuX3J1bnRpbWU9QSx0aGlzLl9zb2NrZXQub3BlbigpfXJlcXVlc3RQZXJpcGhlcmFsKCl7dGhpcy5fYXZhaWxhYmxlUGVyaXBoZXJhbHM9e30sdGhpcy5fZGlzY292ZXJUaW1lb3V0SUQmJndpbmRvdy5jbGVhclRpbWVvdXQodGhpcy5fZGlzY292ZXJUaW1lb3V0SUQpLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEPXdpbmRvdy5zZXRUaW1lb3V0KHRoaXMuX2hhbmRsZURpc2NvdmVyVGltZW91dC5iaW5kKHRoaXMpLDE1ZTMpLHRoaXMuc2VuZFJlbW90ZVJlcXVlc3QoImRpc2NvdmVyIix0aGlzLl9wZXJpcGhlcmFsT3B0aW9ucykuY2F0Y2goQT0+dGhpcy5faGFuZGxlUmVxdWVzdEVycm9yKEEpKX1jb25uZWN0UGVyaXBoZXJhbChBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bnVsbDtjb25zdCB0PXtwZXJpcGhlcmFsSWQ6QX07ZSYmKHQucGluPWUpLHRoaXMuc2VuZFJlbW90ZVJlcXVlc3QoImNvbm5lY3QiLHQpLnRoZW4oKCk9Pnt0aGlzLl9jb25uZWN0ZWQ9ITAsdGhpcy5fcnVudGltZS5lbWl0KHRoaXMuX3J1bnRpbWUuY29uc3RydWN0b3IuUEVSSVBIRVJBTF9DT05ORUNURUQpLHRoaXMuX2Nvbm5lY3RDYWxsYmFjaygpfSkuY2F0Y2goQT0+e3RoaXMuX2hhbmRsZVJlcXVlc3RFcnJvcihBKX0pfWRpc2Nvbm5lY3QoKXt0aGlzLl9jb25uZWN0ZWQmJih0aGlzLl9jb25uZWN0ZWQ9ITEpLHRoaXMuX3NvY2tldC5pc09wZW4oKSYmdGhpcy5fc29ja2V0LmNsb3NlKCksdGhpcy5fZGlzY292ZXJUaW1lb3V0SUQmJndpbmRvdy5jbGVhclRpbWVvdXQodGhpcy5fZGlzY292ZXJUaW1lb3V0SUQpLHRoaXMuX3J1bnRpbWUuZW1pdCh0aGlzLl9ydW50aW1lLmNvbnN0cnVjdG9yLlBFUklQSEVSQUxfRElTQ09OTkVDVEVEKX1pc0Nvbm5lY3RlZCgpe3JldHVybiB0aGlzLl9jb25uZWN0ZWR9c2VuZE1lc3NhZ2UoQSl7cmV0dXJuIHRoaXMuc2VuZFJlbW90ZVJlcXVlc3QoInNlbmQiLEEpLmNhdGNoKEE9Pnt0aGlzLmhhbmRsZURpc2Nvbm5lY3RFcnJvcihBKX0pfWRpZFJlY2VpdmVDYWxsKEEsZSl7c3dpdGNoKEEpe2Nhc2UiZGlkRGlzY292ZXJQZXJpcGhlcmFsIjp0aGlzLl9hdmFpbGFibGVQZXJpcGhlcmFsc1tlLnBlcmlwaGVyYWxJZF09ZSx0aGlzLl9ydW50aW1lLmVtaXQodGhpcy5fcnVudGltZS5jb25zdHJ1Y3Rvci5QRVJJUEhFUkFMX0xJU1RfVVBEQVRFLHRoaXMuX2F2YWlsYWJsZVBlcmlwaGVyYWxzKSx0aGlzLl9kaXNjb3ZlclRpbWVvdXRJRCYmd2luZG93LmNsZWFyVGltZW91dCh0aGlzLl9kaXNjb3ZlclRpbWVvdXRJRCk7YnJlYWs7Y2FzZSJ1c2VyRGlkUGlja1BlcmlwaGVyYWwiOnRoaXMuX2F2YWlsYWJsZVBlcmlwaGVyYWxzW2UucGVyaXBoZXJhbElkXT1lLHRoaXMuX3J1bnRpbWUuZW1pdCh0aGlzLl9ydW50aW1lLmNvbnN0cnVjdG9yLlVTRVJfUElDS0VEX1BFUklQSEVSQUwsdGhpcy5fYXZhaWxhYmxlUGVyaXBoZXJhbHMpLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEJiZ3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX2Rpc2NvdmVyVGltZW91dElEKTticmVhaztjYXNlInVzZXJEaWROb3RQaWNrUGVyaXBoZXJhbCI6dGhpcy5fcnVudGltZS5lbWl0KHRoaXMuX3J1bnRpbWUuY29uc3RydWN0b3IuUEVSSVBIRVJBTF9TQ0FOX1RJTUVPVVQpLHRoaXMuX2Rpc2NvdmVyVGltZW91dElEJiZ3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX2Rpc2NvdmVyVGltZW91dElEKTticmVhaztjYXNlImRpZFJlY2VpdmVNZXNzYWdlIjp0aGlzLl9tZXNzYWdlQ2FsbGJhY2soZSk7YnJlYWs7ZGVmYXVsdDpyZXR1cm4ibmFoIn19aGFuZGxlRGlzY29ubmVjdEVycm9yKCl7dGhpcy5fY29ubmVjdGVkJiYodGhpcy5kaXNjb25uZWN0KCksdGhpcy5fcmVzZXRDYWxsYmFjayYmdGhpcy5fcmVzZXRDYWxsYmFjaygpLHRoaXMuX3J1bnRpbWUuZW1pdCh0aGlzLl9ydW50aW1lLmNvbnN0cnVjdG9yLlBFUklQSEVSQUxfQ09OTkVDVElPTl9MT1NUX0VSUk9SLHttZXNzYWdlOiJTY3JhdGNoIGxvc3QgY29ubmVjdGlvbiB0byIsZXh0ZW5zaW9uSWQ6dGhpcy5fZXh0ZW5zaW9uSWR9KSl9X2hhbmRsZVJlcXVlc3RFcnJvcigpe3RoaXMuX3J1bnRpbWUuZW1pdCh0aGlzLl9ydW50aW1lLmNvbnN0cnVjdG9yLlBFUklQSEVSQUxfUkVRVUVTVF9FUlJPUix7bWVzc2FnZToiU2NyYXRjaCBsb3N0IGNvbm5lY3Rpb24gdG8iLGV4dGVuc2lvbklkOnRoaXMuX2V4dGVuc2lvbklkfSl9X2hhbmRsZURpc2NvdmVyVGltZW91dCgpe3RoaXMuX2Rpc2NvdmVyVGltZW91dElEJiZ3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX2Rpc2NvdmVyVGltZW91dElEKSx0aGlzLl9ydW50aW1lLmVtaXQodGhpcy5fcnVudGltZS5jb25zdHJ1Y3Rvci5QRVJJUEhFUkFMX1NDQU5fVElNRU9VVCl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0KSxpPXQoMykscj10KDEpLG89dCgyKSxzPXtTUEFDRToic3BhY2UiLExFRlQ6ImxlZnQgYXJyb3ciLFVQOiJ1cCBhcnJvdyIsUklHSFQ6InJpZ2h0IGFycm93IixET1dOOiJkb3duIGFycm93In07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuZnJhbWVUb2dnbGU9ITEsc2V0SW50ZXJ2YWwoKCk9Pnt0aGlzLmZyYW1lVG9nZ2xlPSF0aGlzLmZyYW1lVG9nZ2xlfSx0aGlzLnJ1bnRpbWUuY3VycmVudFN0ZXBUaW1lKSx0aGlzLmtleVByZXNzZWQ9dGhpcy5rZXlQcmVzc2VkLmJpbmQodGhpcyksdGhpcy5ydW50aW1lLm9uKCJLRVlfUFJFU1NFRCIsdGhpcy5rZXlQcmVzc2VkKSx0aGlzLl9jbGVhcmtleVByZXNzQnVmZmVyPXRoaXMuX2NsZWFya2V5UHJlc3NCdWZmZXIuYmluZCh0aGlzKSx0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RPUF9BTEwiLHRoaXMuX2NsZWFya2V5UHJlc3NCdWZmZXIpLHRoaXMuc2VxdWVuY2VzPXt9LHRoaXMua2V5UHJlc3NCdWZmZXI9W119Z2V0IEtFWV9URVhUX1NIT1JUKCl7cmV0dXJue1NQQUNFOm4oe2lkOiJtYWtleW1ha2V5LnNwYWNlS2V5IixkZWZhdWx0OiJzcGFjZSIsZGVzY3JpcHRpb246IlRoZSBzcGFjZSBrZXkgb24gYSBjb21wdXRlciBrZXlib2FyZC4ifSksTEVGVDpuKHtpZDoibWFrZXltYWtleS5sZWZ0QXJyb3dTaG9ydCIsZGVmYXVsdDoibGVmdCIsZGVzY3JpcHRpb246IlNob3J0IG5hbWUgZm9yIHRoZSBsZWZ0IGFycm93IGtleSBvbiBhIGNvbXB1dGVyIGtleWJvYXJkLiJ9KSxVUDpuKHtpZDoibWFrZXltYWtleS51cEFycm93U2hvcnQiLGRlZmF1bHQ6InVwIixkZXNjcmlwdGlvbjoiU2hvcnQgbmFtZSBmb3IgdGhlIHVwIGFycm93IGtleSBvbiBhIGNvbXB1dGVyIGtleWJvYXJkLiJ9KSxSSUdIVDpuKHtpZDoibWFrZXltYWtleS5yaWdodEFycm93U2hvcnQiLGRlZmF1bHQ6InJpZ2h0IixkZXNjcmlwdGlvbjoiU2hvcnQgbmFtZSBmb3IgdGhlIHJpZ2h0IGFycm93IGtleSBvbiBhIGNvbXB1dGVyIGtleWJvYXJkLiJ9KSxET1dOOm4oe2lkOiJtYWtleW1ha2V5LmRvd25BcnJvd1Nob3J0IixkZWZhdWx0OiJkb3duIixkZXNjcmlwdGlvbjoiU2hvcnQgbmFtZSBmb3IgdGhlIGRvd24gYXJyb3cga2V5IG9uIGEgY29tcHV0ZXIga2V5Ym9hcmQuIn0pfX1nZXQgREVGQVVMVF9TRVFVRU5DRVMoKXtyZXR1cm5bIiIuY29uY2F0KCJMRUZUIiwiICIpLmNvbmNhdCgiVVAiLCIgIikuY29uY2F0KCJSSUdIVCIpLCIiLmNvbmNhdCgiUklHSFQiLCIgIikuY29uY2F0KCJVUCIsIiAiKS5jb25jYXQoIkxFRlQiKSwiIi5jb25jYXQoIkxFRlQiLCIgIikuY29uY2F0KCJSSUdIVCIpLCIiLmNvbmNhdCgiUklHSFQiLCIgIikuY29uY2F0KCJMRUZUIiksIiIuY29uY2F0KCJVUCIsIiAiKS5jb25jYXQoIkRPV04iKSwiIi5jb25jYXQoIkRPV04iLCIgIikuY29uY2F0KCJVUCIpLCIiLmNvbmNhdCgiVVAiLCIgIikuY29uY2F0KCJSSUdIVCIsIiAiKS5jb25jYXQoIkRPV04iLCIgIikuY29uY2F0KCJMRUZUIiksIiIuY29uY2F0KCJVUCIsIiAiKS5jb25jYXQoIkxFRlQiLCIgIikuY29uY2F0KCJET1dOIiwiICIpLmNvbmNhdCgiUklHSFQiKSwiIi5jb25jYXQoIlVQIiwiICIpLmNvbmNhdCgiVVAiLCIgIikuY29uY2F0KCJET1dOIiwiICIpLmNvbmNhdCgiRE9XTiIsIiAiKSsiIi5jb25jYXQoIkxFRlQiLCIgIikuY29uY2F0KCJSSUdIVCIsIiAiKS5jb25jYXQoIkxFRlQiLCIgIikuY29uY2F0KCJSSUdIVCIpXX1nZXRJbmZvKCl7cmV0dXJue2lkOiJtYWtleW1ha2V5IixuYW1lOiJNYWtleSBNYWtleSIsYmxvY2tJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBME1DQTBNQ0krUEhOMGVXeGxQaTV6ZERKN1ptbHNiRHB5WldSOUxuTjBNM3RtYVd4c09pTmxNR1V3WlRCOUxuTjBOSHRtYVd4c09tNXZibVU3YzNSeWIydGxPaU0yTmpZN2MzUnliMnRsTFhkcFpIUm9PaTQxTzNOMGNtOXJaUzF0YVhSbGNteHBiV2wwT2pFd2ZUd3ZjM1I1YkdVK1BIQmhkR2dnWkQwaVRUTTFJREk0U0RWaE1TQXhJREFnTUNBeExURXRNVll4TW1Nd0xTNDJMalF0TVNBeExURm9NekJqTGpVZ01DQXhJQzQwSURFZ01YWXhOV013SUM0MUxTNDFJREV0TVNBeGVpSWdabWxzYkQwaUkyWm1aaUlnYVdROUlreGhlV1Z5WHpZaUx6NDhaeUJwWkQwaVRHRjVaWEpmTkNJK1BIQmhkR2dnWTJ4aGMzTTlJbk4wTWlJZ1pEMGlUVFFnTWpWb016SjJNaTQzU0RSNlRURXpJREkwYUMweUxqSmhNU0F4SURBZ01DQXhMVEV0TVhZdE9TNDNZekF0TGpZdU5DMHhJREV0TVVneE0yTXVOaUF3SURFZ0xqUWdNU0F4VmpJell6QWdMall0TGpVZ01TMHhJREY2SWk4K1BIQmhkR2dnWTJ4aGMzTTlJbk4wTWlJZ1pEMGlUVFl1TVNBeE9TNHpkaTB5TGpKak1DMHVOUzQwTFRFZ01TMHhhRGt1TjJNdU5TQXdJREVnTGpVZ01TQXhkakl1TW1Nd0lDNDFMUzQxSURFdE1TQXhTRGN1TVdFeElERWdNQ0F3SURFdE1TMHhlaUl2UGp4amFYSmpiR1VnWTJ4aGMzTTlJbk4wTWlJZ1kzZzlJakl5TGpnaUlHTjVQU0l4T0M0eUlpQnlQU0l6TGpRaUx6NDhZMmx5WTJ4bElHTnNZWE56UFNKemRESWlJR040UFNJek1DNDJJaUJqZVQwaU1UZ3VNaUlnY2owaU15NDBJaTgrUEhCaGRHZ2dZMnhoYzNNOUluTjBNaUlnWkQwaVRUUXVNaUF5TjJnek1TNDVkaTQzU0RRdU1ub2lMejQ4TDJjK1BHY2dhV1E5SWt4aGVXVnlYelVpUGp4amFYSmpiR1VnWTJ4aGMzTTlJbk4wTXlJZ1kzZzlJakl5TGpnaUlHTjVQU0l4T0M0eUlpQnlQU0l5TGpNaUx6NDhZMmx5WTJ4bElHTnNZWE56UFNKemRETWlJR040UFNJek1DNDJJaUJqZVQwaU1UZ3VNaUlnY2owaU1pNHpJaTgrUEhCaGRHZ2dZMnhoYzNNOUluTjBNeUlnWkQwaVRURXlMalVnTWpJdU9XZ3RNUzR5WXkwdU15QXdMUzQxTFM0eUxTNDFMUzQxVmpFMFl6QXRMak11TWkwdU5TNDFMUzQxYURFdU1tTXVNeUF3SUM0MUxqSXVOUzQxZGpndU5HTXdJQzR6TFM0eUxqVXRMalV1TlhvaUx6NDhjR0YwYUNCamJHRnpjejBpYzNReklpQmtQU0pOTnk0eUlERTRMamQyTFRFdU1tTXdMUzR6TGpJdExqVXVOUzB1TldnNExqUmpMak1nTUNBdU5TNHlMalV1TlhZeExqSmpNQ0F1TXkwdU1pNDFMUzQxTGpWSU55NDNZeTB1TXlBd0xTNDFMUzR5TFM0MUxTNDFlazAwSURJMmFETXlkakpJTkhvaUx6NDhMMmMrUEdjZ2FXUTlJa3hoZVdWeVh6TWlQanh3WVhSb0lHTnNZWE56UFNKemREUWlJR1E5SWswek5TNHlJREkzTGpsSU5DNDRZVEVnTVNBd0lEQWdNUzB4TFRGV01USXVNV013TFM0MkxqVXRNU0F4TFRGb016QXVOV011TlNBd0lERWdMalFnTVNBeFZqSTNZVEVnTVNBd0lEQWdNUzB4TGpFdU9Yb2lMejQ4Y0dGMGFDQmpiR0Z6Y3owaWMzUTBJaUJrUFNKTk16VXVNaUF5Tnk0NVNEUXVPR0V4SURFZ01DQXdJREV0TVMweFZqRXlMakZqTUMwdU5pNDFMVEVnTVMweGFETXdMalZqTGpVZ01DQXhJQzQwSURFZ01WWXlOMkV4SURFZ01DQXdJREV0TVM0eExqbDZJaTgrUEM5blBqd3ZjM1puUGc9PSIsYmxvY2tzOlt7b3Bjb2RlOiJ3aGVuTWFrZXlLZXlQcmVzc2VkIix0ZXh0Om4oe2lkOiJtYWtleW1ha2V5LndoZW5LZXlQcmVzc2VkIixkZWZhdWx0OiJ3aGVuIFtLRVldIGtleSBwcmVzc2VkIixkZXNjcmlwdGlvbjoid2hlbiBhIGtleWJvYXJkIGtleSBpcyBwcmVzc2VkIn0pLGJsb2NrVHlwZTpyLkhBVCxhcmd1bWVudHM6e0tFWTp7dHlwZTppLlNUUklORyxtZW51OiJLRVkiLGRlZmF1bHRWYWx1ZToiU1BBQ0UifX19LHtvcGNvZGU6IndoZW5Db2RlUHJlc3NlZCIsdGV4dDpuKHtpZDoibWFrZXltYWtleS53aGVuS2V5c1ByZXNzZWRJbk9yZGVyIixkZWZhdWx0OiJ3aGVuIFtTRVFVRU5DRV0gcHJlc3NlZCBpbiBvcmRlciIsZGVzY3JpcHRpb246IndoZW4gYSBzZXF1ZW5jZSBvZiBrZXlib2FyZCBrZXlzIGlzIHByZXNzZWQgaW4gYSBzcGVjaWZpYyBvcmRlciJ9KSxibG9ja1R5cGU6ci5IQVQsYXJndW1lbnRzOntTRVFVRU5DRTp7dHlwZTppLlNUUklORyxtZW51OiJTRVFVRU5DRSIsZGVmYXVsdFZhbHVlOnRoaXMuREVGQVVMVF9TRVFVRU5DRVNbMF19fX0sIi0tLSIse29wY29kZToiaXNNYWtleUtleVByZXNzZWQiLHRleHQ6bih7aWQ6Im1ha2V5bWFrZXkuaXNLZXlQcmVzc2VkIixkZWZhdWx0OiJpcyBbS0VZXSBrZXkgcHJlc3NlZCIsZGVzY3JpcHRpb246ImlzIGEga2V5Ym9hcmQga2V5IGlzIHByZXNzZWQifSksYmxvY2tUeXBlOnIuQk9PTEVBTixhcmd1bWVudHM6e0tFWTp7dHlwZTppLlNUUklORyxtZW51OiJLRVkiLGRlZmF1bHRWYWx1ZToiU1BBQ0UifX19XSxtZW51czp7S0VZOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0Om4oe2lkOiJtYWtleW1ha2V5LnNwYWNlS2V5IixkZWZhdWx0OiJzcGFjZSIsZGVzY3JpcHRpb246IlRoZSBzcGFjZSBrZXkgb24gYSBjb21wdXRlciBrZXlib2FyZC4ifSksdmFsdWU6IlNQQUNFIn0se3RleHQ6bih7aWQ6Im1ha2V5bWFrZXkudXBBcnJvdyIsZGVmYXVsdDoidXAgYXJyb3ciLGRlc2NyaXB0aW9uOiJUaGUgdXAgYXJyb3cga2V5IG9uIGEgY29tcHV0ZXIga2V5Ym9hcmQuIn0pLHZhbHVlOiJVUCJ9LHt0ZXh0Om4oe2lkOiJtYWtleW1ha2V5LmRvd25BcnJvdyIsZGVmYXVsdDoiZG93biBhcnJvdyIsZGVzY3JpcHRpb246IlRoZSBkb3duIGFycm93IGtleSBvbiBhIGNvbXB1dGVyIGtleWJvYXJkLiJ9KSx2YWx1ZToiRE9XTiJ9LHt0ZXh0Om4oe2lkOiJtYWtleW1ha2V5LnJpZ2h0QXJyb3ciLGRlZmF1bHQ6InJpZ2h0IGFycm93IixkZXNjcmlwdGlvbjoiVGhlIHJpZ2h0IGFycm93IGtleSBvbiBhIGNvbXB1dGVyIGtleWJvYXJkLiJ9KSx2YWx1ZToiUklHSFQifSx7dGV4dDpuKHtpZDoibWFrZXltYWtleS5sZWZ0QXJyb3ciLGRlZmF1bHQ6ImxlZnQgYXJyb3ciLGRlc2NyaXB0aW9uOiJUaGUgbGVmdCBhcnJvdyBrZXkgb24gYSBjb21wdXRlciBrZXlib2FyZC4ifSksdmFsdWU6IkxFRlQifSx7dGV4dDoidyIsdmFsdWU6IncifSx7dGV4dDoiYSIsdmFsdWU6ImEifSx7dGV4dDoicyIsdmFsdWU6InMifSx7dGV4dDoiZCIsdmFsdWU6ImQifSx7dGV4dDoiZiIsdmFsdWU6ImYifSx7dGV4dDoiZyIsdmFsdWU6ImcifV19LFNFUVVFTkNFOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6dGhpcy5idWlsZFNlcXVlbmNlTWVudSh0aGlzLkRFRkFVTFRfU0VRVUVOQ0VTKX19fX1idWlsZFNlcXVlbmNlTWVudShBKXtyZXR1cm4gQS5tYXAoQT0+dGhpcy5nZXRNZW51SXRlbUZvclNlcXVlbmNlU3RyaW5nKEEpKX1nZXRNZW51SXRlbUZvclNlcXVlbmNlU3RyaW5nKEEpe2xldCBlPUEuc3BsaXQoIiAiKTtyZXR1cm4gZT1lLm1hcChBPT50aGlzLktFWV9URVhUX1NIT1JUW0FdKSx7dGV4dDplLmpvaW4oIiAiKSx2YWx1ZTpBfX13aGVuTWFrZXlLZXlQcmVzc2VkKEEsZSl7bGV0IHQ9QS5LRVk7c1tBLktFWV0mJih0PXNbQS5LRVldKTtyZXR1cm4gZS5pb1F1ZXJ5KCJrZXlib2FyZCIsImdldEtleUlzRG93biIsW3RdKSYmdGhpcy5mcmFtZVRvZ2dsZX1pc01ha2V5S2V5UHJlc3NlZChBLGUpe2xldCB0PUEuS0VZO3JldHVybiBzW0EuS0VZXSYmKHQ9c1tBLktFWV0pLGUuaW9RdWVyeSgia2V5Ym9hcmQiLCJnZXRLZXlJc0Rvd24iLFt0XSl9a2V5UHJlc3NlZChBKXtBPShBPUEuc3BsaXQoIiAiKVswXSkudG9VcHBlckNhc2UoKSx0aGlzLmtleVByZXNzQnVmZmVyLnB1c2goQSksdGhpcy5rZXlQcmVzc0J1ZmZlci5sZW5ndGg+MTAwJiZ0aGlzLmtleVByZXNzQnVmZmVyLnNoaWZ0KCk7Zm9yKGNvbnN0IEEgaW4gdGhpcy5zZXF1ZW5jZXMpe2NvbnN0IGU9dGhpcy5zZXF1ZW5jZXNbQV0uYXJyYXk7aWYodGhpcy5rZXlQcmVzc0J1ZmZlci5sZW5ndGg8ZS5sZW5ndGgpY29udGludWU7bGV0IHQ9ITE7Y29uc3Qgbj10aGlzLmtleVByZXNzQnVmZmVyLnNsaWNlKC0xKmUubGVuZ3RoKTtmb3IobGV0IEE9MDtBPGUubGVuZ3RoO0ErKyllW0FdIT09bltBXSYmKHQ9ITApO3R8fCh0aGlzLnNlcXVlbmNlc1tBXS5jb21wbGV0ZWQ9ITAsc2V0VGltZW91dCgoKT0+e3RoaXMuc2VxdWVuY2VzW0FdLmNvbXBsZXRlZD0hMX0sMTAwKSl9fV9jbGVhcmtleVByZXNzQnVmZmVyKCl7dGhpcy5rZXlQcmVzc0J1ZmZlcj1bXX1hZGRTZXF1ZW5jZShBLGUpe3RoaXMuc2VxdWVuY2VzLmhhc093blByb3BlcnR5KEEpfHwodGhpcy5zZXF1ZW5jZXNbQV09e2FycmF5OmUsY29tcGxldGVkOiExfSl9d2hlbkNvZGVQcmVzc2VkKEEpe2NvbnN0IGU9by50b1N0cmluZyhBLlNFUVVFTkNFKS50b1VwcGVyQ2FzZSgpLHQ9ZS5zcGxpdCgiICIpO2lmKCEodC5sZW5ndGg8MikpcmV0dXJuIHRoaXMuYWRkU2VxdWVuY2UoZSx0KSx0aGlzLnNlcXVlbmNlc1tlXS5jb21wbGV0ZWR9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgzKSxpPXQoMSkscj10KDIpLG89dCg0KSxzPXQoOCksYT10KDQyKSxCPXQoMjMpLGM9dCg2KSxnPXQoNTUpLEU9dCg1KSxRPSIwMDAwMTYyMy0xMjEyLWVmZGUtMTYyMy03ODVmZWFiY2QxMjMiLHU9IjAwMDAxNjI0LTEyMTItZWZkZS0xNjIzLTc4NWZlYWJjZDEyMyIsbD0xMDAsaD0yMCx3PTIwLEM9MjEsST0yMyxNPTM3LGQ9MzgscD0zOSxtPTQwLEY9MSxEPTIsWT00LGY9e0E6NTUsQjo1NixDOjEsRDoyfSxOPXtBOjAsQjoxLEM6MixEOjN9O2xldCBVPU47Y29uc3QgeT0iYW55IixUPSJub25lIix4PSJyZWQiLFI9ImJsdWUiLEc9ImdyZWVuIixTPSJ5ZWxsb3ciLGI9IndoaXRlIixIPSJibGFjayIsdj17W1RdOjI1NSxbeF06OSxbUl06MyxbR106NSxbU106NyxbYl06MTAsW0hdOjB9LGs9e0hVQl9QUk9QRVJUSUVTOjEsSFVCX0FDVElPTlM6MixIVUJfQUxFUlRTOjMsSFVCX0FUVEFDSEVEX0lPOjQsRVJST1I6NSxQT1JUX0lOUFVUX0ZPUk1BVF9TRVRVUF9TSU5HTEU6NjUsUE9SVF9JTlBVVF9GT1JNQVRfU0VUVVBfQ09NQklORUQ6NjYsUE9SVF9JTkZPUk1BVElPTjo2NyxQT1JUX01PREVJTkZPUk1BVElPTjo2OCxQT1JUX1ZBTFVFOjY5LFBPUlRfVkFMVUVfQ09NQklORUQ6NzAsUE9SVF9JTlBVVF9GT1JNQVQ6NzEsUE9SVF9JTlBVVF9GT1JNQVRfQ09NQklORUQ6NzIsT1VUUFVUOjEyOSxQT1JUX0ZFRURCQUNLOjEzMH0saj0zLEo9NSx6PTEsTD03LFA9MTEsTz04MSxWPTE2LFc9MSxLPTAsWD0xMjcsWj0wLF89MSxxPTAsJD0wLEFBPTEsZUE9MCx0QT0yLG5BPTAsaUE9MCxyQT0xLG9BPTIsc0E9MyxhQT1mdW5jdGlvbihBKXtjb25zdCBlPW5ldyBBcnJheUJ1ZmZlcig0KSx0PW5ldyBEYXRhVmlldyhlKTtyZXR1cm4gdC5zZXRJbnQzMigwLEEpLFt0LmdldEludDgoMyksdC5nZXRJbnQ4KDIpLHQuZ2V0SW50OCgxKSx0LmdldEludDgoMCldfSxCQT1mdW5jdGlvbihBKXtjb25zdCBlPVVpbnQ4QXJyYXkuZnJvbShBKTtyZXR1cm4gbmV3IERhdGFWaWV3KGUuYnVmZmVyKS5nZXRJbnQzMigwLCEwKX07Y2xhc3MgY0F7Y29uc3RydWN0b3IoQSxlKXt0aGlzLl9wYXJlbnQ9QSx0aGlzLl9pbmRleD1lLHRoaXMuX2RpcmVjdGlvbj0xLHRoaXMuX3Bvd2VyPTUwLHRoaXMuX3Bvc2l0aW9uPTAsdGhpcy5fc3RhdHVzPWlBLHRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXRJZD1udWxsLHRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXRTdGFydFRpbWU9bnVsbCx0aGlzLl9wZW5kaW5nRHVyYXRpb25UaW1lb3V0RGVsYXk9bnVsbCx0aGlzLl9wZW5kaW5nUm90YXRpb25EZXN0aW5hdGlvbj1udWxsLHRoaXMuX3BlbmRpbmdSb3RhdGlvblByb21pc2U9bnVsbCx0aGlzLnR1cm5PZmY9dGhpcy50dXJuT2ZmLmJpbmQodGhpcyl9Z2V0IGRpcmVjdGlvbigpe3JldHVybiB0aGlzLl9kaXJlY3Rpb259c2V0IGRpcmVjdGlvbihBKXt0aGlzLl9kaXJlY3Rpb249QTwwPy0xOjF9Z2V0IHBvd2VyKCl7cmV0dXJuIHRoaXMuX3Bvd2VyfXNldCBwb3dlcihBKXt0aGlzLl9wb3dlcj0wPT09QT8wOmMuc2NhbGUoQSwxLDEwMCwxMCwxMDApfWdldCBwb3NpdGlvbigpe3JldHVybiB0aGlzLl9wb3NpdGlvbn1zZXQgcG9zaXRpb24oQSl7dGhpcy5fcG9zaXRpb249QX1nZXQgc3RhdHVzKCl7cmV0dXJuIHRoaXMuX3N0YXR1c31zZXQgc3RhdHVzKEEpe3RoaXMuX2NsZWFyUm90YXRpb25TdGF0ZSgpLHRoaXMuX2NsZWFyRHVyYXRpb25UaW1lb3V0KCksdGhpcy5fc3RhdHVzPUF9Z2V0IHBlbmRpbmdEdXJhdGlvblRpbWVvdXRTdGFydFRpbWUoKXtyZXR1cm4gdGhpcy5fcGVuZGluZ0R1cmF0aW9uVGltZW91dFN0YXJ0VGltZX1nZXQgcGVuZGluZ0R1cmF0aW9uVGltZW91dERlbGF5KCl7cmV0dXJuIHRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXREZWxheX1nZXQgcGVuZGluZ1JvdGF0aW9uRGVzdGluYXRpb24oKXtyZXR1cm4gdGhpcy5fcGVuZGluZ1JvdGF0aW9uRGVzdGluYXRpb259Z2V0IHBlbmRpbmdSb3RhdGlvblByb21pc2UoKXtyZXR1cm4gdGhpcy5fcGVuZGluZ1JvdGF0aW9uUHJvbWlzZX1zZXQgcGVuZGluZ1JvdGF0aW9uUHJvbWlzZShBKXt0aGlzLl9wZW5kaW5nUm90YXRpb25Qcm9taXNlPUF9X3R1cm5Pbigpe2NvbnN0IEE9dGhpcy5fcGFyZW50LmdlbmVyYXRlT3V0cHV0Q29tbWFuZCh0aGlzLl9pbmRleCxWLEwsW3RoaXMucG93ZXIqdGhpcy5kaXJlY3Rpb24sYy5jbGFtcCh0aGlzLnBvd2VyKzEwLDAsMTAwKSxaXSk7dGhpcy5fcGFyZW50LnNlbmQodSxBKX10dXJuT25Gb3JldmVyKCl7dGhpcy5zdGF0dXM9ckEsdGhpcy5fdHVybk9uKCl9dHVybk9uRm9yKEEpe0E9TWF0aC5tYXgoMCxBKSx0aGlzLnN0YXR1cz1vQSx0aGlzLl90dXJuT24oKSx0aGlzLl9zZXROZXdEdXJhdGlvblRpbWVvdXQodGhpcy50dXJuT2ZmLEEpfXR1cm5PbkZvckRlZ3JlZXMoQSxlKXtBPU1hdGgubWF4KDAsQSk7Y29uc3QgdD10aGlzLl9wYXJlbnQuZ2VuZXJhdGVPdXRwdXRDb21tYW5kKHRoaXMuX2luZGV4LFZeVyxQLFsuLi5hQShBKSx0aGlzLnBvd2VyKnRoaXMuZGlyZWN0aW9uKmUsYy5jbGFtcCh0aGlzLnBvd2VyKzEwLDAsMTAwKSxYLFpdKTt0aGlzLnN0YXR1cz1zQSx0aGlzLl9wZW5kaW5nUm90YXRpb25EZXN0aW5hdGlvbj10aGlzLnBvc2l0aW9uK0EqdGhpcy5kaXJlY3Rpb24qZSx0aGlzLl9wYXJlbnQuc2VuZCh1LHQpfXR1cm5PZmYoKXtsZXQgQT0hKGFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdKXx8YXJndW1lbnRzWzBdO2NvbnN0IGU9dGhpcy5fcGFyZW50LmdlbmVyYXRlT3V0cHV0Q29tbWFuZCh0aGlzLl9pbmRleCxWLHosW0tdKTt0aGlzLnN0YXR1cz1pQSx0aGlzLl9wYXJlbnQuc2VuZCh1LGUsQSl9X2NsZWFyRHVyYXRpb25UaW1lb3V0KCl7bnVsbCE9PXRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXRJZCYmKGNsZWFyVGltZW91dCh0aGlzLl9wZW5kaW5nRHVyYXRpb25UaW1lb3V0SWQpLHRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXRJZD1udWxsLHRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXRTdGFydFRpbWU9bnVsbCx0aGlzLl9wZW5kaW5nRHVyYXRpb25UaW1lb3V0RGVsYXk9bnVsbCl9X3NldE5ld0R1cmF0aW9uVGltZW91dChBLGUpe3RoaXMuX2NsZWFyRHVyYXRpb25UaW1lb3V0KCk7Y29uc3QgdD1zZXRUaW1lb3V0KCgpPT57dGhpcy5fcGVuZGluZ0R1cmF0aW9uVGltZW91dElkPT09dCYmKHRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXRJZD1udWxsLHRoaXMuX3BlbmRpbmdEdXJhdGlvblRpbWVvdXRTdGFydFRpbWU9bnVsbCx0aGlzLl9wZW5kaW5nRHVyYXRpb25UaW1lb3V0RGVsYXk9bnVsbCksQSgpfSxlKTt0aGlzLl9wZW5kaW5nRHVyYXRpb25UaW1lb3V0SWQ9dCx0aGlzLl9wZW5kaW5nRHVyYXRpb25UaW1lb3V0U3RhcnRUaW1lPURhdGUubm93KCksdGhpcy5fcGVuZGluZ0R1cmF0aW9uVGltZW91dERlbGF5PWV9X2NsZWFyUm90YXRpb25TdGF0ZSgpe251bGwhPT10aGlzLl9wZW5kaW5nUm90YXRpb25Qcm9taXNlJiYodGhpcy5fcGVuZGluZ1JvdGF0aW9uUHJvbWlzZSgpLHRoaXMuX3BlbmRpbmdSb3RhdGlvblByb21pc2U9bnVsbCksdGhpcy5fcGVuZGluZ1JvdGF0aW9uRGVzdGluYXRpb249bnVsbH19Y2xhc3MgZ0F7Y29uc3RydWN0b3IoQSxlKXt0aGlzLl9ydW50aW1lPUEsdGhpcy5fcnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsdGhpcy5zdG9wQWxsLmJpbmQodGhpcykpLHRoaXMuX2V4dGVuc2lvbklkPWUsdGhpcy5fcG9ydHM9W10sdGhpcy5fbW90b3JzPVtdLHRoaXMuX3NlbnNvcnM9e3RpbHRYOjAsdGlsdFk6MCxjb2xvcjpULHByZXZpb3VzQ29sb3I6VH0sdGhpcy5fY29sb3JTYW1wbGVzPVtdLHRoaXMuX2JsZT1udWxsLHRoaXMuX3J1bnRpbWUucmVnaXN0ZXJQZXJpcGhlcmFsRXh0ZW5zaW9uKGUsdGhpcyksdGhpcy5fcmF0ZUxpbWl0ZXI9bmV3IGcoaCksdGhpcy5fcGluZ0RldmljZUlkPW51bGwsdGhpcy5yZXNldD10aGlzLnJlc2V0LmJpbmQodGhpcyksdGhpcy5fb25Db25uZWN0PXRoaXMuX29uQ29ubmVjdC5iaW5kKHRoaXMpLHRoaXMuX29uTWVzc2FnZT10aGlzLl9vbk1lc3NhZ2UuYmluZCh0aGlzKSx0aGlzLl9waW5nRGV2aWNlPXRoaXMuX3BpbmdEZXZpY2UuYmluZCh0aGlzKX1nZXQgdGlsdFgoKXtyZXR1cm4gdGhpcy5fc2Vuc29ycy50aWx0WH1nZXQgdGlsdFkoKXtyZXR1cm4gdGhpcy5fc2Vuc29ycy50aWx0WX1nZXQgY29sb3IoKXtyZXR1cm4gdGhpcy5fc2Vuc29ycy5jb2xvcn1nZXQgcHJldmlvdXNDb2xvcigpe3JldHVybiB0aGlzLl9zZW5zb3JzLnByZXZpb3VzQ29sb3J9Ym9vc3RDb2xvckZvckluZGV4KEEpe3JldHVybiBPYmplY3Qua2V5cyh2KS5maW5kKGU9PnZbZV09PT1BKXx8VH1tb3RvcihBKXtyZXR1cm4gdGhpcy5fbW90b3JzW0FdfXN0b3BBbGxNb3RvcnMoKXt0aGlzLl9tb3RvcnMuZm9yRWFjaChBPT57QSYmQS50dXJuT2ZmKCExKX0pfXNldExFRChBKXtjb25zdCBlPVtBPj4xNiYyNTUsQT4+OCYyNTUsMjU1JkFdLHQ9dGhpcy5nZW5lcmF0ZU91dHB1dENvbW1hbmQodGhpcy5fcG9ydHMuaW5kZXhPZihJKSxWXlcsTyxbQUEsLi4uZV0pO3JldHVybiB0aGlzLnNlbmQodSx0KX1zZXRMRURNb2RlKCl7Y29uc3QgQT10aGlzLmdlbmVyYXRlSW5wdXRDb21tYW5kKHRoaXMuX3BvcnRzLmluZGV4T2YoSSksQUEsMCwhMSk7cmV0dXJuIHRoaXMuc2VuZCh1LEEpfXN0b3BBbGwoKXt0aGlzLmlzQ29ubmVjdGVkKCkmJnRoaXMuc3RvcEFsbE1vdG9ycygpfXNjYW4oKXt0aGlzLl9ibGUmJnRoaXMuX2JsZS5kaXNjb25uZWN0KCksdGhpcy5fYmxlPW5ldyBhKHRoaXMuX3J1bnRpbWUsdGhpcy5fZXh0ZW5zaW9uSWQse2ZpbHRlcnM6W3tzZXJ2aWNlczpbUV0sbWFudWZhY3R1cmVyRGF0YTp7OTE5OntkYXRhUHJlZml4OlswLDY0XSxtYXNrOlswLDI1NV19fX1dLG9wdGlvbmFsU2VydmljZXM6W119LHRoaXMuX29uQ29ubmVjdCx0aGlzLnJlc2V0KX1jb25uZWN0KEEpe3RoaXMuX2JsZSYmdGhpcy5fYmxlLmNvbm5lY3RQZXJpcGhlcmFsKEEpfWRpc2Nvbm5lY3QoKXt0aGlzLl9ibGUmJnRoaXMuX2JsZS5kaXNjb25uZWN0KCksdGhpcy5yZXNldCgpfXJlc2V0KCl7dGhpcy5fcG9ydHM9W10sdGhpcy5fbW90b3JzPVtdLHRoaXMuX3NlbnNvcnM9e3RpbHRYOjAsdGlsdFk6MCxjb2xvcjpULHByZXZpb3VzQ29sb3I6VH0sdGhpcy5fcGluZ0RldmljZUlkJiYod2luZG93LmNsZWFySW50ZXJ2YWwodGhpcy5fcGluZ0RldmljZUlkKSx0aGlzLl9waW5nRGV2aWNlSWQ9bnVsbCl9aXNDb25uZWN0ZWQoKXtsZXQgQT0hMTtyZXR1cm4gdGhpcy5fYmxlJiYoQT10aGlzLl9ibGUuaXNDb25uZWN0ZWQoKSksQX1zZW5kKEEsZSl7bGV0IHQ9IShhcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXSl8fGFyZ3VtZW50c1syXTtyZXR1cm4gdGhpcy5pc0Nvbm5lY3RlZCgpP3QmJiF0aGlzLl9yYXRlTGltaXRlci5va2F5VG9TZW5kKCk/UHJvbWlzZS5yZXNvbHZlKCk6dGhpcy5fYmxlLndyaXRlKFEsQSxCLnVpbnQ4QXJyYXlUb0Jhc2U2NChlKSwiYmFzZTY0Iik6UHJvbWlzZS5yZXNvbHZlKCl9Z2VuZXJhdGVPdXRwdXRDb21tYW5kKEEsZSx0LG4pe2NvbnN0IGk9WzAsay5PVVRQVVQsQSxlLHQsLi4ubl07cmV0dXJuIGkudW5zaGlmdChpLmxlbmd0aCsxKSxpfWdlbmVyYXRlSW5wdXRDb21tYW5kKEEsZSx0LG4pe2NvbnN0IGk9WzAsay5QT1JUX0lOUFVUX0ZPUk1BVF9TRVRVUF9TSU5HTEUsQSxlXS5jb25jYXQoYUEodCkpLmNvbmNhdChbbl0pO3JldHVybiBpLnVuc2hpZnQoaS5sZW5ndGgrMSksaX1fb25Db25uZWN0KCl7dGhpcy5fYmxlLnN0YXJ0Tm90aWZpY2F0aW9ucyhRLHUsdGhpcy5fb25NZXNzYWdlKSx0aGlzLl9waW5nRGV2aWNlSWQ9d2luZG93LnNldEludGVydmFsKHRoaXMuX3BpbmdEZXZpY2UsNWUzKSxzZXRUaW1lb3V0KCgpPT57Y29uc3QgQT1bMCxrLkhVQl9QUk9QRVJUSUVTLGosSl07QS51bnNoaWZ0KEEubGVuZ3RoKzEpLHRoaXMuc2VuZCh1LEEsITEpfSw1MDApfV9vbk1lc3NhZ2UoQSl7Y29uc3QgZT1CLmJhc2U2NFRvVWludDhBcnJheShBKSx0PWVbMl0sbj1lWzNdO3N3aXRjaCh0KXtjYXNlIGsuSFVCX1BST1BFUlRJRVM6c3dpdGNoKGVbM10pe2Nhc2Ugajp7Y29uc3QgQT1CQShbMzYsMiwwLDE2XSk7QkEoZS5zbGljZSg1LGUubGVuZ3RoKSk8QT8oVT1mLEUuaW5mbygiTW92ZSBIdWIgZmlybXdhcmUgb2xkZXIgdGhhbiB2ZXJzaW9uIDEuMC4wMC4wMjI0IGRldGVjdGVkLiBVc2luZyBvbGQgcG9ydCBtYXBwaW5nLiIpKTpVPU47YnJlYWt9fWJyZWFrO2Nhc2Ugay5IVUJfQVRUQUNIRURfSU86e2NvbnN0IEE9ZVs0XSx0PWVbNV07c3dpdGNoKEEpe2Nhc2UgXzp0aGlzLl9yZWdpc3RlclNlbnNvck9yTW90b3Iobix0KTticmVhaztjYXNlIHE6dGhpcy5fY2xlYXJQb3J0KG4pfWJyZWFrfWNhc2Ugay5QT1JUX1ZBTFVFOntjb25zdCBBPXRoaXMuX3BvcnRzW25dO3N3aXRjaChBKXtjYXNlIG06dGhpcy5fc2Vuc29ycy50aWx0WD1lWzRdLHRoaXMuX3NlbnNvcnMudGlsdFk9ZVs1XTticmVhaztjYXNlIE06dGhpcy5fY29sb3JTYW1wbGVzLnVuc2hpZnQoZVs0XSksdGhpcy5fY29sb3JTYW1wbGVzLmxlbmd0aD41Pyh0aGlzLl9jb2xvclNhbXBsZXMucG9wKCksdGhpcy5fY29sb3JTYW1wbGVzLmV2ZXJ5KChBLGUsdCk9PkE9PT10WzBdKT8odGhpcy5fc2Vuc29ycy5wcmV2aW91c0NvbG9yPXRoaXMuX3NlbnNvcnMuY29sb3IsdGhpcy5fc2Vuc29ycy5jb2xvcj10aGlzLmJvb3N0Q29sb3JGb3JJbmRleCh0aGlzLl9jb2xvclNhbXBsZXNbMF0pKTp0aGlzLl9zZW5zb3JzLmNvbG9yPVQpOnRoaXMuX3NlbnNvcnMuY29sb3I9VDticmVhaztjYXNlIGQ6Y2FzZSBwOnRoaXMubW90b3IobikucG9zaXRpb249QkEoZS5zbGljZSg0LDgpKTticmVhaztjYXNlIEM6Y2FzZSB3OmNhc2UgSTpicmVhaztkZWZhdWx0OkUud2FybigiVW5rbm93biBzZW5zb3IgdmFsdWUhIFR5cGU6ICIuY29uY2F0KEEpKX1icmVha31jYXNlIGsuUE9SVF9GRUVEQkFDSzp7Y29uc3QgQT1lWzRdLHQ9dGhpcy5tb3RvcihuKTtpZih0KXtjb25zdCBlPUEmKEReWSk7IShBJkYpJiZlJiZ0LnN0YXR1cz09PXNBJiYodC5zdGF0dXM9aUEpfWJyZWFrfWNhc2Ugay5FUlJPUjpFLndhcm4oIkVycm9yIHJlcG9ydGVkIGJ5IGh1YjogIi5jb25jYXQoZSkpfX1fcGluZ0RldmljZSgpe3RoaXMuX2JsZS5yZWFkKFEsdSwhMSl9X3JlZ2lzdGVyU2Vuc29yT3JNb3RvcihBLGUpe3RoaXMuX3BvcnRzW0FdPWUsZSE9PXAmJmUhPT1kfHwodGhpcy5fbW90b3JzW0FdPW5ldyBjQSh0aGlzLEEpKTtsZXQgdD1udWxsLG49MTtzd2l0Y2goZSl7Y2FzZSBwOmNhc2UgZDp0PXRBO2JyZWFrO2Nhc2UgTTp0PWVBLG49MDticmVhaztjYXNlIEk6dD1BQSx0aGlzLnNldExFRE1vZGUoKSx0aGlzLnNldExFRCgyNTUpO2JyZWFrO2Nhc2UgbTp0PSQ7YnJlYWs7ZGVmYXVsdDp0PW5BfWNvbnN0IGk9dGhpcy5nZW5lcmF0ZUlucHV0Q29tbWFuZChBLHQsbiwhMCk7dGhpcy5zZW5kKHUsaSl9X2NsZWFyUG9ydChBKXtjb25zdCBlPXRoaXMuX3BvcnRzW0FdO2U9PT1tJiYodGhpcy5fc2Vuc29ycy50aWx0WD10aGlzLl9zZW5zb3JzLnRpbHRZPTApLGU9PT1NJiYodGhpcy5fc2Vuc29ycy5jb2xvcj1UKSx0aGlzLl9wb3J0c1tBXT0ibm9uZSIsdGhpcy5fbW90b3JzW0FdPW51bGx9fWNvbnN0IEVBPSJBIixRQT0iQiIsdUE9IkMiLGxBPSJEIixoQT0iQUIiLHdBPSJBQkNEIixDQT0idGhpcyB3YXkiLElBPSJ0aGF0IHdheSIsTUE9InJldmVyc2UiLGRBPSJ1cCIscEE9ImRvd24iLG1BPSJsZWZ0IixGQT0icmlnaHQiLERBPSJhbnkiO2NsYXNzIFlBe3N0YXRpYyBnZXQgRVhURU5TSU9OX0lEKCl7cmV0dXJuImJvb3N0In1zdGF0aWMgZ2V0IFRJTFRfVEhSRVNIT0xEKCl7cmV0dXJuIDE1fWNvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX3BlcmlwaGVyYWw9bmV3IGdBKHRoaXMucnVudGltZSxZQS5FWFRFTlNJT05fSUQpfWdldEluZm8oKXtyZXR1cm57aWQ6WUEuRVhURU5TSU9OX0lELG5hbWU6IkJPT1NUIixibG9ja0ljb25VUkk6ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRkFBQUFCUUNBTUFBQUM1endLZkFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBQ3BRVEZSRi8vLy9mSWVsNXVmb2xaNjIvMllhdnNQUytZWk9rSm15OS9qNTMrSGs2K3pzNk4vYjZkZk8vLy8vdERoTUhBQUFBQTUwVWs1VC8vLy8vLy8vLy8vLy8vLy8vd0JGd056SUFBQUE2RWxFUVZSNDJ1elgydzZESUJBRVVHRFZ0bHIvLzNkTGFMd2dpd1VkMno3TUpQSmc1RVFXaUdoR2NBeEJnZ1FKRWlUNDM2Q0lmcVhKUFRuM01LTllZTVNERnBvQW1wMjRPYVlndndLbkZnTDJ6dlZUQ3dIck1vTWkrblVRTEZ0aGFOQ0NhMGl3Y2xMa0RnWVZzUXAwbXp4dXFYZ0sxTVJ6b0NMV2drUFhOTjJ3SS9xNkt2dDd1L2NYMEh0ZWpOOHgyc1hwbnBiOEo4RDNiMEtldWhoM1g5NzVNK2kweE5WYmczczFUSWFzZ0syMWJReUdPK3MyUHlrYUdNWWJnZThLck5yc3N2a09XRFhrRXJCOFV1QkhFVGpvWUxrS0JBOFpmdURrYndWQmdnUUpFaVI0TUM4QkJnRFR0TVpMeDJuRkNRQUFBQUJKUlU1RXJrSmdnZz09IixzaG93U3RhdHVzQnV0dG9uOiEwLGJsb2Nrczpbe29wY29kZToibW90b3JPbkZvciIsdGV4dDpvKHtpZDoiYm9vc3QubW90b3JPbkZvciIsZGVmYXVsdDoidHVybiBtb3RvciBbTU9UT1JfSURdIGZvciBbRFVSQVRJT05dIHNlY29uZHMiLGRlc2NyaXB0aW9uOiJ0dXJuIGEgbW90b3Igb24gZm9yIHNvbWUgdGltZSJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7TU9UT1JfSUQ6e3R5cGU6bi5TVFJJTkcsbWVudToiTU9UT1JfSUQiLGRlZmF1bHRWYWx1ZTpFQX0sRFVSQVRJT046e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9fX0se29wY29kZToibW90b3JPbkZvclJvdGF0aW9uIix0ZXh0Om8oe2lkOiJib29zdC5tb3Rvck9uRm9yUm90YXRpb24iLGRlZmF1bHQ6InR1cm4gbW90b3IgW01PVE9SX0lEXSBmb3IgW1JPVEFUSU9OXSByb3RhdGlvbnMiLGRlc2NyaXB0aW9uOiJ0dXJuIGEgbW90b3Igb24gZm9yIHJvdGF0aW9uIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntNT1RPUl9JRDp7dHlwZTpuLlNUUklORyxtZW51OiJNT1RPUl9JRCIsZGVmYXVsdFZhbHVlOkVBfSxST1RBVElPTjp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSx7b3Bjb2RlOiJtb3Rvck9uIix0ZXh0Om8oe2lkOiJib29zdC5tb3Rvck9uIixkZWZhdWx0OiJ0dXJuIG1vdG9yIFtNT1RPUl9JRF0gb24iLGRlc2NyaXB0aW9uOiJ0dXJuIGEgbW90b3Igb24gaW5kZWZpbml0ZWx5In0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntNT1RPUl9JRDp7dHlwZTpuLlNUUklORyxtZW51OiJNT1RPUl9JRCIsZGVmYXVsdFZhbHVlOkVBfX19LHtvcGNvZGU6Im1vdG9yT2ZmIix0ZXh0Om8oe2lkOiJib29zdC5tb3Rvck9mZiIsZGVmYXVsdDoidHVybiBtb3RvciBbTU9UT1JfSURdIG9mZiIsZGVzY3JpcHRpb246InR1cm4gYSBtb3RvciBvZmYifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e01PVE9SX0lEOnt0eXBlOm4uU1RSSU5HLG1lbnU6Ik1PVE9SX0lEIixkZWZhdWx0VmFsdWU6RUF9fX0se29wY29kZToic2V0TW90b3JQb3dlciIsdGV4dDpvKHtpZDoiYm9vc3Quc2V0TW90b3JQb3dlciIsZGVmYXVsdDoic2V0IG1vdG9yIFtNT1RPUl9JRF0gc3BlZWQgdG8gW1BPV0VSXSAlIixkZXNjcmlwdGlvbjoic2V0IHRoZSBtb3RvcidzIHNwZWVkIHdpdGhvdXQgdHVybmluZyBpdCBvbiJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7TU9UT1JfSUQ6e3R5cGU6bi5TVFJJTkcsbWVudToiTU9UT1JfSUQiLGRlZmF1bHRWYWx1ZTp3QX0sUE9XRVI6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH19fSx7b3Bjb2RlOiJzZXRNb3RvckRpcmVjdGlvbiIsdGV4dDpvKHtpZDoiYm9vc3Quc2V0TW90b3JEaXJlY3Rpb24iLGRlZmF1bHQ6InNldCBtb3RvciBbTU9UT1JfSURdIGRpcmVjdGlvbiBbTU9UT1JfRElSRUNUSU9OXSIsZGVzY3JpcHRpb246InNldCB0aGUgbW90b3IncyB0dXJuIGRpcmVjdGlvbiB3aXRob3V0IHR1cm5pbmcgaXQgb24ifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e01PVE9SX0lEOnt0eXBlOm4uU1RSSU5HLG1lbnU6Ik1PVE9SX0lEIixkZWZhdWx0VmFsdWU6RUF9LE1PVE9SX0RJUkVDVElPTjp7dHlwZTpuLlNUUklORyxtZW51OiJNT1RPUl9ESVJFQ1RJT04iLGRlZmF1bHRWYWx1ZTpDQX19fSx7b3Bjb2RlOiJnZXRNb3RvclBvc2l0aW9uIix0ZXh0Om8oe2lkOiJib29zdC5nZXRNb3RvclBvc2l0aW9uIixkZWZhdWx0OiJtb3RvciBbTU9UT1JfUkVQT1JURVJfSURdIHBvc2l0aW9uIixkZXNjcmlwdGlvbjoidGhlIHBvc2l0aW9uIHJldHVybmVkIGJ5IHRoZSBtb3RvciJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e01PVE9SX1JFUE9SVEVSX0lEOnt0eXBlOm4uU1RSSU5HLG1lbnU6Ik1PVE9SX1JFUE9SVEVSX0lEIixkZWZhdWx0VmFsdWU6RUF9fX0se29wY29kZToid2hlbkNvbG9yIix0ZXh0Om8oe2lkOiJib29zdC53aGVuQ29sb3IiLGRlZmF1bHQ6IndoZW4gW0NPTE9SXSBicmljayBzZWVuIixkZXNjcmlwdGlvbjoiY2hlY2sgZm9yIHdoZW4gY29sb3IifSksYmxvY2tUeXBlOmkuSEFULGFyZ3VtZW50czp7Q09MT1I6e3R5cGU6bi5TVFJJTkcsbWVudToiQ09MT1IiLGRlZmF1bHRWYWx1ZTp5fX19LHtvcGNvZGU6InNlZWluZ0NvbG9yIix0ZXh0Om8oe2lkOiJib29zdC5zZWVpbmdDb2xvciIsZGVmYXVsdDoic2VlaW5nIFtDT0xPUl0gYnJpY2s/IixkZXNjcmlwdGlvbjoiaXMgdGhlIGNvbG9yIHNlbnNvciBzZWVpbmcgYSBjZXJ0YWluIGNvbG9yPyJ9KSxibG9ja1R5cGU6aS5CT09MRUFOLGFyZ3VtZW50czp7Q09MT1I6e3R5cGU6bi5TVFJJTkcsbWVudToiQ09MT1IiLGRlZmF1bHRWYWx1ZTp5fX19LHtvcGNvZGU6IndoZW5UaWx0ZWQiLHRleHQ6byh7aWQ6ImJvb3N0LndoZW5UaWx0ZWQiLGRlZmF1bHQ6IndoZW4gdGlsdGVkIFtUSUxUX0RJUkVDVElPTl9BTlldIixkZXNjcmlwdGlvbjoiY2hlY2sgd2hlbiB0aWx0ZWQgaW4gYSBjZXJ0YWluIGRpcmVjdGlvbiJ9KSxmdW5jOiJpc1RpbHRlZCIsYmxvY2tUeXBlOmkuSEFULGFyZ3VtZW50czp7VElMVF9ESVJFQ1RJT05fQU5ZOnt0eXBlOm4uU1RSSU5HLG1lbnU6IlRJTFRfRElSRUNUSU9OX0FOWSIsZGVmYXVsdFZhbHVlOkRBfX19LHtvcGNvZGU6ImdldFRpbHRBbmdsZSIsdGV4dDpvKHtpZDoiYm9vc3QuZ2V0VGlsdEFuZ2xlIixkZWZhdWx0OiJ0aWx0IGFuZ2xlIFtUSUxUX0RJUkVDVElPTl0iLGRlc2NyaXB0aW9uOiJ0aGUgYW5nbGUgcmV0dXJuZWQgYnkgdGhlIHRpbHQgc2Vuc29yIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7VElMVF9ESVJFQ1RJT046e3R5cGU6bi5TVFJJTkcsbWVudToiVElMVF9ESVJFQ1RJT04iLGRlZmF1bHRWYWx1ZTpkQX19fSx7b3Bjb2RlOiJzZXRMaWdodEh1ZSIsdGV4dDpvKHtpZDoiYm9vc3Quc2V0TGlnaHRIdWUiLGRlZmF1bHQ6InNldCBsaWdodCBjb2xvciB0byBbSFVFXSIsZGVzY3JpcHRpb246InNldCB0aGUgTEVEIGNvbG9yIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntIVUU6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjUwfX19XSxtZW51czp7TU9UT1JfSUQ6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6IkEiLHZhbHVlOkVBfSx7dGV4dDoiQiIsdmFsdWU6UUF9LHt0ZXh0OiJDIix2YWx1ZTp1QX0se3RleHQ6IkQiLHZhbHVlOmxBfSx7dGV4dDoiQUIiLHZhbHVlOmhBfSx7dGV4dDoiQUJDRCIsdmFsdWU6d0F9XX0sTU9UT1JfUkVQT1JURVJfSUQ6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6IkEiLHZhbHVlOkVBfSx7dGV4dDoiQiIsdmFsdWU6UUF9LHt0ZXh0OiJDIix2YWx1ZTp1QX0se3RleHQ6IkQiLHZhbHVlOmxBfV19LE1PVE9SX0RJUkVDVElPTjp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDpvKHtpZDoiYm9vc3QubW90b3JEaXJlY3Rpb24uZm9yd2FyZCIsZGVmYXVsdDoidGhpcyB3YXkiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgZm9yd2FyZCBlbGVtZW50IGluIG1vdG9yIGRpcmVjdGlvbiBtZW51IGZvciBMRUdPIEJvb3N0IGV4dGVuc2lvbiJ9KSx2YWx1ZTpDQX0se3RleHQ6byh7aWQ6ImJvb3N0Lm1vdG9yRGlyZWN0aW9uLmJhY2t3YXJkIixkZWZhdWx0OiJ0aGF0IHdheSIsZGVzY3JpcHRpb246ImxhYmVsIGZvciBiYWNrd2FyZCBlbGVtZW50IGluIG1vdG9yIGRpcmVjdGlvbiBtZW51IGZvciBMRUdPIEJvb3N0IGV4dGVuc2lvbiJ9KSx2YWx1ZTpJQX0se3RleHQ6byh7aWQ6ImJvb3N0Lm1vdG9yRGlyZWN0aW9uLnJldmVyc2UiLGRlZmF1bHQ6InJldmVyc2UiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgcmV2ZXJzZSBlbGVtZW50IGluIG1vdG9yIGRpcmVjdGlvbiBtZW51IGZvciBMRUdPIEJvb3N0IGV4dGVuc2lvbiJ9KSx2YWx1ZTpNQX1dfSxUSUxUX0RJUkVDVElPTjp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDpvKHtpZDoiYm9vc3QudGlsdERpcmVjdGlvbi51cCIsZGVmYXVsdDoidXAiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgdXAgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBtZW51IGZvciBMRUdPIEJvb3N0IGV4dGVuc2lvbiJ9KSx2YWx1ZTpkQX0se3RleHQ6byh7aWQ6ImJvb3N0LnRpbHREaXJlY3Rpb24uZG93biIsZGVmYXVsdDoiZG93biIsZGVzY3JpcHRpb246ImxhYmVsIGZvciBkb3duIGVsZW1lbnQgaW4gdGlsdCBkaXJlY3Rpb24gbWVudSBmb3IgTEVHTyBCb29zdCBleHRlbnNpb24ifSksdmFsdWU6cEF9LHt0ZXh0Om8oe2lkOiJib29zdC50aWx0RGlyZWN0aW9uLmxlZnQiLGRlZmF1bHQ6ImxlZnQiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgbGVmdCBlbGVtZW50IGluIHRpbHQgZGlyZWN0aW9uIG1lbnUgZm9yIExFR08gQm9vc3QgZXh0ZW5zaW9uIn0pLHZhbHVlOm1BfSx7dGV4dDpvKHtpZDoiYm9vc3QudGlsdERpcmVjdGlvbi5yaWdodCIsZGVmYXVsdDoicmlnaHQiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgcmlnaHQgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBtZW51IGZvciBMRUdPIEJvb3N0IGV4dGVuc2lvbiJ9KSx2YWx1ZTpGQX1dfSxUSUxUX0RJUkVDVElPTl9BTlk6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6byh7aWQ6ImJvb3N0LnRpbHREaXJlY3Rpb24udXAiLGRlZmF1bHQ6InVwIn0pLHZhbHVlOmRBfSx7dGV4dDpvKHtpZDoiYm9vc3QudGlsdERpcmVjdGlvbi5kb3duIixkZWZhdWx0OiJkb3duIn0pLHZhbHVlOnBBfSx7dGV4dDpvKHtpZDoiYm9vc3QudGlsdERpcmVjdGlvbi5sZWZ0IixkZWZhdWx0OiJsZWZ0In0pLHZhbHVlOm1BfSx7dGV4dDpvKHtpZDoiYm9vc3QudGlsdERpcmVjdGlvbi5yaWdodCIsZGVmYXVsdDoicmlnaHQifSksdmFsdWU6RkF9LHt0ZXh0Om8oe2lkOiJib29zdC50aWx0RGlyZWN0aW9uLmFueSIsZGVmYXVsdDoiYW55IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGFueSBlbGVtZW50IGluIHRpbHQgZGlyZWN0aW9uIG1lbnUgZm9yIExFR08gQm9vc3QgZXh0ZW5zaW9uIn0pLHZhbHVlOkRBfV19LENPTE9SOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0Om8oe2lkOiJib29zdC5jb2xvci5yZWQiLGRlZmF1bHQ6InJlZCIsZGVzY3JpcHRpb246InRoZSBjb2xvciByZWQifSksdmFsdWU6eH0se3RleHQ6byh7aWQ6ImJvb3N0LmNvbG9yLmJsdWUiLGRlZmF1bHQ6ImJsdWUiLGRlc2NyaXB0aW9uOiJ0aGUgY29sb3IgYmx1ZSJ9KSx2YWx1ZTpSfSx7dGV4dDpvKHtpZDoiYm9vc3QuY29sb3IuZ3JlZW4iLGRlZmF1bHQ6ImdyZWVuIixkZXNjcmlwdGlvbjoidGhlIGNvbG9yIGdyZWVuIn0pLHZhbHVlOkd9LHt0ZXh0Om8oe2lkOiJib29zdC5jb2xvci55ZWxsb3ciLGRlZmF1bHQ6InllbGxvdyIsZGVzY3JpcHRpb246InRoZSBjb2xvciB5ZWxsb3cifSksdmFsdWU6U30se3RleHQ6byh7aWQ6ImJvb3N0LmNvbG9yLndoaXRlIixkZWZhdWx0OiJ3aGl0ZSIsZGVzcmlwdGlvbjoidGhlIGNvbG9yIHdoaXRlIn0pLHZhbHVlOmJ9LHt0ZXh0Om8oe2lkOiJib29zdC5jb2xvci5ibGFjayIsZGVmYXVsdDoiYmxhY2siLGRlc2NyaXB0aW9uOiJ0aGUgY29sb3IgYmxhY2sifSksdmFsdWU6SH0se3RleHQ6byh7aWQ6ImJvb3N0LmNvbG9yLmFueSIsZGVmYXVsdDoiYW55IGNvbG9yIixkZXNjcmlwdGlvbjoiYW55IGNvbG9yIn0pLHZhbHVlOnl9XX19fX1tb3Rvck9uRm9yKEEpe2xldCBlPTFlMypyLnRvTnVtYmVyKEEuRFVSQVRJT04pO3JldHVybiBlPWMuY2xhbXAoZSwwLDE1ZTMpLG5ldyBQcm9taXNlKHQ9Pnt0aGlzLl9mb3JFYWNoTW90b3IoQS5NT1RPUl9JRCxBPT57Y29uc3QgdD10aGlzLl9wZXJpcGhlcmFsLm1vdG9yKEEpO3QmJnQudHVybk9uRm9yKGUpfSksc2V0VGltZW91dCh0LGUpfSl9bW90b3JPbkZvclJvdGF0aW9uKEEpe2xldCBlPTM2MCpyLnRvTnVtYmVyKEEuUk9UQVRJT04pO2NvbnN0IHQ9TWF0aC5zaWduKGUpO2U9TWF0aC5hYnMoYy5jbGFtcChlLC0zNmU0LDM2ZTQpKTtjb25zdCBuPVtdO3RoaXMuX2ZvckVhY2hNb3RvcihBLk1PVE9SX0lELEE9PntuLnB1c2goQSl9KTtjb25zdCBpPW4ubWFwKEE9Pntjb25zdCBuPXRoaXMuX3BlcmlwaGVyYWwubW90b3IoQSk7cmV0dXJuIG4/MD09PW4ucG93ZXI/UHJvbWlzZS5yZXNvbHZlKCk6bmV3IFByb21pc2UoQT0+e24udHVybk9uRm9yRGVncmVlcyhlLHQpLG4ucGVuZGluZ1JvdGF0aW9uUHJvbWlzZT1BfSk6bnVsbH0pO3JldHVybiBQcm9taXNlLmFsbChpKS50aGVuKCgpPT57fSl9bW90b3JPbihBKXtyZXR1cm4gdGhpcy5fZm9yRWFjaE1vdG9yKEEuTU9UT1JfSUQsQT0+e2NvbnN0IGU9dGhpcy5fcGVyaXBoZXJhbC5tb3RvcihBKTtlJiZlLnR1cm5PbkZvcmV2ZXIoKX0pLG5ldyBQcm9taXNlKEE9Pnt3aW5kb3cuc2V0VGltZW91dCgoKT0+e0EoKX0sbCl9KX1tb3Rvck9mZihBKXtyZXR1cm4gdGhpcy5fZm9yRWFjaE1vdG9yKEEuTU9UT1JfSUQsQT0+e2NvbnN0IGU9dGhpcy5fcGVyaXBoZXJhbC5tb3RvcihBKTtlJiZlLnR1cm5PZmYoKX0pLG5ldyBQcm9taXNlKEE9Pnt3aW5kb3cuc2V0VGltZW91dCgoKT0+e0EoKX0sbCl9KX1zZXRNb3RvclBvd2VyKEEpe3JldHVybiB0aGlzLl9mb3JFYWNoTW90b3IoQS5NT1RPUl9JRCxlPT57Y29uc3QgdD10aGlzLl9wZXJpcGhlcmFsLm1vdG9yKGUpO2lmKHQpc3dpdGNoKHQucG93ZXI9Yy5jbGFtcChyLnRvTnVtYmVyKEEuUE9XRVIpLDAsMTAwKSx0LnN0YXR1cyl7Y2FzZSByQTp0LnR1cm5PbkZvcmV2ZXIoKTticmVhaztjYXNlIG9BOnQudHVybk9uRm9yKHQucGVuZGluZ0R1cmF0aW9uVGltZW91dFN0YXJ0VGltZSt0LnBlbmRpbmdEdXJhdGlvblRpbWVvdXREZWxheS1EYXRlLm5vdygpKX19KSxuZXcgUHJvbWlzZShBPT57d2luZG93LnNldFRpbWVvdXQoKCk9PntBKCl9LGwpfSl9c2V0TW90b3JEaXJlY3Rpb24oQSl7cmV0dXJuIHRoaXMuX2ZvckVhY2hNb3RvcihBLk1PVE9SX0lELGU9Pntjb25zdCB0PXRoaXMuX3BlcmlwaGVyYWwubW90b3IoZSk7aWYodCl7c3dpdGNoKEEuTU9UT1JfRElSRUNUSU9OKXtjYXNlIENBOnQuZGlyZWN0aW9uPTE7YnJlYWs7Y2FzZSBJQTp0LmRpcmVjdGlvbj0tMTticmVhaztjYXNlIE1BOnQuZGlyZWN0aW9uPS10LmRpcmVjdGlvbjticmVhaztkZWZhdWx0OkUud2FybigiVW5rbm93biBtb3RvciBkaXJlY3Rpb24gaW4gc2V0TW90b3JEaXJlY3Rpb246ICIuY29uY2F0KEEuRElSRUNUSU9OKSl9aWYodClzd2l0Y2godC5zdGF0dXMpe2Nhc2UgckE6dC50dXJuT25Gb3JldmVyKCk7YnJlYWs7Y2FzZSBvQTp0LnR1cm5PbkZvcih0LnBlbmRpbmdEdXJhdGlvblRpbWVvdXRTdGFydFRpbWUrdC5wZW5kaW5nRHVyYXRpb25UaW1lb3V0RGVsYXktRGF0ZS5ub3coKSl9fX0pLG5ldyBQcm9taXNlKEE9Pnt3aW5kb3cuc2V0VGltZW91dCgoKT0+e0EoKX0sbCl9KX1nZXRNb3RvclBvc2l0aW9uKEEpe2xldCBlPW51bGw7c3dpdGNoKEEuTU9UT1JfUkVQT1JURVJfSUQpe2Nhc2UgRUE6ZT1VLkE7YnJlYWs7Y2FzZSBRQTplPVUuQjticmVhaztjYXNlIHVBOmU9VS5DO2JyZWFrO2Nhc2UgbEE6ZT1VLkQ7YnJlYWs7ZGVmYXVsdDpyZXR1cm4gRS53YXJuKCJBc2tlZCBmb3IgYSBtb3RvciBwb3NpdGlvbiB0aGF0IGRvZXNudCBleGlzdCEiKSwhMX1pZihudWxsIT09ZSYmdGhpcy5fcGVyaXBoZXJhbC5tb3RvcihlKSl7bGV0IEE9dGhpcy5fcGVyaXBoZXJhbC5tb3RvcihlKS5wb3NpdGlvbjtyZXR1cm4gZT09PVUuQSYmKEEqPS0xKSxjLndyYXBDbGFtcChBLDAsMzYwKX1yZXR1cm4gMH1fZm9yRWFjaE1vdG9yKEEsZSl7bGV0IHQ7c3dpdGNoKEEpe2Nhc2UgRUE6dD1bVS5BXTticmVhaztjYXNlIFFBOnQ9W1UuQl07YnJlYWs7Y2FzZSB1QTp0PVtVLkNdO2JyZWFrO2Nhc2UgbEE6dD1bVS5EXTticmVhaztjYXNlIGhBOnQ9W1UuQSxVLkJdO2JyZWFrO2Nhc2Ugd0E6dD1bVS5BLFUuQixVLkMsVS5EXTticmVhaztkZWZhdWx0OkUud2FybigiSW52YWxpZCBtb3RvciBJRDogIi5jb25jYXQoQSkpLHQ9W119Zm9yKGNvbnN0IEEgb2YgdCllKEEpfXdoZW5UaWx0ZWQoQSl7cmV0dXJuIHRoaXMuX2lzVGlsdGVkKEEuVElMVF9ESVJFQ1RJT05fQU5ZKX1pc1RpbHRlZChBKXtyZXR1cm4gdGhpcy5faXNUaWx0ZWQoQS5USUxUX0RJUkVDVElPTl9BTlkpfWdldFRpbHRBbmdsZShBKXtyZXR1cm4gdGhpcy5fZ2V0VGlsdEFuZ2xlKEEuVElMVF9ESVJFQ1RJT04pfV9pc1RpbHRlZChBKXtzd2l0Y2goQSl7Y2FzZSBEQTpyZXR1cm4gTWF0aC5hYnModGhpcy5fcGVyaXBoZXJhbC50aWx0WCk+PVlBLlRJTFRfVEhSRVNIT0xEfHxNYXRoLmFicyh0aGlzLl9wZXJpcGhlcmFsLnRpbHRZKT49WUEuVElMVF9USFJFU0hPTEQ7ZGVmYXVsdDpyZXR1cm4gdGhpcy5fZ2V0VGlsdEFuZ2xlKEEpPj1ZQS5USUxUX1RIUkVTSE9MRH19X2dldFRpbHRBbmdsZShBKXtzd2l0Y2goQSl7Y2FzZSBkQTpyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC50aWx0WT45MD8yNTYtdGhpcy5fcGVyaXBoZXJhbC50aWx0WTotdGhpcy5fcGVyaXBoZXJhbC50aWx0WTtjYXNlIHBBOnJldHVybiB0aGlzLl9wZXJpcGhlcmFsLnRpbHRZPjkwP3RoaXMuX3BlcmlwaGVyYWwudGlsdFktMjU2OnRoaXMuX3BlcmlwaGVyYWwudGlsdFk7Y2FzZSBtQTpyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC50aWx0WD45MD90aGlzLl9wZXJpcGhlcmFsLnRpbHRYLTI1Njp0aGlzLl9wZXJpcGhlcmFsLnRpbHRYO2Nhc2UgRkE6cmV0dXJuIHRoaXMuX3BlcmlwaGVyYWwudGlsdFg+OTA/MjU2LXRoaXMuX3BlcmlwaGVyYWwudGlsdFg6LXRoaXMuX3BlcmlwaGVyYWwudGlsdFg7ZGVmYXVsdDpFLndhcm4oIlVua25vd24gdGlsdCBkaXJlY3Rpb24gaW4gX2dldFRpbHRBbmdsZTogIi5jb25jYXQoQSkpfX13aGVuQ29sb3IoQSl7cmV0dXJuIEEuQ09MT1I9PT15P3RoaXMuX3BlcmlwaGVyYWwuY29sb3IhPT1UJiZ0aGlzLl9wZXJpcGhlcmFsLmNvbG9yIT09dGhpcy5fcGVyaXBoZXJhbC5wcmV2aW91c0NvbG9yOkEuQ09MT1I9PT10aGlzLl9wZXJpcGhlcmFsLmNvbG9yfXNlZWluZ0NvbG9yKEEpe3JldHVybiBBLkNPTE9SPT09eT90aGlzLl9wZXJpcGhlcmFsLmNvbG9yIT09VDpBLkNPTE9SPT09dGhpcy5fcGVyaXBoZXJhbC5jb2xvcn1zZXRMaWdodEh1ZShBKXtsZXQgZT1yLnRvTnVtYmVyKEEuSFVFKTtlPWMud3JhcENsYW1wKGUsMCwxMDApO2NvbnN0IHQ9MzYwKmUvMTAwLG49cy5oc3ZUb1JnYih7aDp0LHM6MSx2OjF9KSxpPXMucmdiVG9EZWNpbWFsKG4pO3JldHVybiB0aGlzLl9wZXJpcGhlcmFsLl9sZWQ9ZSx0aGlzLl9wZXJpcGhlcmFsLnNldExFRChpKSxuZXcgUHJvbWlzZShBPT57d2luZG93LnNldFRpbWVvdXQoKCk9PntBKCl9LGwpfSl9fUEuZXhwb3J0cz1ZQX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgzKSxpPXQoMSkscj10KDUpLG89dCg0KSxzPXQoNiksYT10KDQyKSxCPXQoMjU3KSxjPXQoMjU4KSxnPXtzZXJ2aWNlOiJkOTE3MTRlZi0yOGI5LTRmOTEtYmExNi1mMGQ5YTYwNGYxMTIiLGNvbW1hbmRDaGFyOiJmNGJmMTRhNi1jN2Q1LTRiNmQtOGFhOC1kZjFhN2M4M2FkY2IiLHJlc3BvbnNlQ2hhcjoiYjQxZTY2NzUtYTMyOS00MGUwLWFhMDEtNDRkMmY0NDRiYWJlIn0sRT0xLFE9Mix1PTMsbD00LGg9NSx3PTYsQz03O2NsYXNzIEl7Y29uc3RydWN0b3IoQSxlKXt0aGlzLl9ydW50aW1lPUEsdGhpcy5fYmxlPW51bGwsdGhpcy5fZGV2aWNlPW51bGwsdGhpcy5fcnVudGltZS5yZWdpc3RlclBlcmlwaGVyYWxFeHRlbnNpb24oZSx0aGlzKSx0aGlzLl9leHRlbnNpb25JZD1lLHRoaXMuX3NlbnNvcnM9e2ZvcmNlOjAsYWNjZWxlcmF0aW9uWDowLGFjY2VsZXJhdGlvblk6MCxhY2NlbGVyYXRpb25aOjAsc3BpblNwZWVkWDowLHNwaW5TcGVlZFk6MCxzcGluU3BlZWRaOjB9LHRoaXMuX3RpbWVvdXRJRD1udWxsLHRoaXMucmVzZXQ9dGhpcy5yZXNldC5iaW5kKHRoaXMpLHRoaXMuX29uQ29ubmVjdD10aGlzLl9vbkNvbm5lY3QuYmluZCh0aGlzKX1zY2FuKCl7dGhpcy5fYmxlJiZ0aGlzLl9ibGUuZGlzY29ubmVjdCgpLHRoaXMuX2JsZT1uZXcgYSh0aGlzLl9ydW50aW1lLHRoaXMuX2V4dGVuc2lvbklkLHtmaWx0ZXJzOlt7bmFtZVByZWZpeDoiR0RYLUZPUiJ9XSxvcHRpb25hbFNlcnZpY2VzOltnLnNlcnZpY2VdfSx0aGlzLl9vbkNvbm5lY3QsdGhpcy5yZXNldCl9Y29ubmVjdChBKXt0aGlzLl9ibGUmJnRoaXMuX2JsZS5jb25uZWN0UGVyaXBoZXJhbChBKX1kaXNjb25uZWN0KCl7dGhpcy5fYmxlJiZ0aGlzLl9ibGUuZGlzY29ubmVjdCgpLHRoaXMucmVzZXQoKX1yZXNldCgpe3RoaXMuX3NlbnNvcnM9e2ZvcmNlOjAsYWNjZWxlcmF0aW9uWDowLGFjY2VsZXJhdGlvblk6MCxhY2NlbGVyYXRpb25aOjAsc3BpblNwZWVkWDowLHNwaW5TcGVlZFk6MCxzcGluU3BlZWRaOjB9LHRoaXMuX3RpbWVvdXRJRCYmKHdpbmRvdy5jbGVhckludGVydmFsKHRoaXMuX3RpbWVvdXRJRCksdGhpcy5fdGltZW91dElEPW51bGwpfWlzQ29ubmVjdGVkKCl7bGV0IEE9ITE7cmV0dXJuIHRoaXMuX2JsZSYmKEE9dGhpcy5fYmxlLmlzQ29ubmVjdGVkKCkpLEF9X29uQ29ubmVjdCgpe2NvbnN0IEE9bmV3IGModGhpcy5fYmxlLGcpO0IuY3JlYXRlRGV2aWNlKEEse29wZW46ITAsc3RhcnRNZWFzdXJlbWVudHM6ITF9KS50aGVuKEE9Pnt0aGlzLl9kZXZpY2U9QSx0aGlzLl9kZXZpY2Uua2VlcFZhbHVlcz0hMSx0aGlzLl9kZXZpY2Uuc2Vuc29ycy5mb3JFYWNoKEE9PntBLnNldEVuYWJsZWQoITApfSksdGhpcy5fZGV2aWNlLm9uKCJtZWFzdXJlbWVudHMtc3RhcnRlZCIsKCk9Pnt0aGlzLl9kZXZpY2Uuc2Vuc29ycy5maWx0ZXIoQT0+QS5lbmFibGVkKS5mb3JFYWNoKEE9PntBLm9uKCJ2YWx1ZS1jaGFuZ2VkIixBPT57dGhpcy5fb25TZW5zb3JWYWx1ZUNoYW5nZWQoQSl9KX0pLHRoaXMuX3RpbWVvdXRJRD13aW5kb3cuc2V0SW50ZXJ2YWwoKCk9PnRoaXMuX2JsZS5oYW5kbGVEaXNjb25uZWN0RXJyb3IoIkZvcmNlIGFuZCBBY2NlbGVyYXRpb24gZXh0ZW5zaW9uIHN0b3BwZWQgcmVjZWl2aW5nIGRhdGEiKSw0NTAwKX0pLHRoaXMuX2RldmljZS5zdGFydCg4MCl9KX1fb25TZW5zb3JWYWx1ZUNoYW5nZWQoQSl7c3dpdGNoKEEubnVtYmVyKXtjYXNlIEU6dGhpcy5fc2Vuc29ycy5mb3JjZT1zLmNsYW1wKDIqQS52YWx1ZSwtMTAwLDEwMCk7YnJlYWs7Y2FzZSBROnRoaXMuX3NlbnNvcnMuYWNjZWxlcmF0aW9uWD1BLnZhbHVlO2JyZWFrO2Nhc2UgdTp0aGlzLl9zZW5zb3JzLmFjY2VsZXJhdGlvblk9QS52YWx1ZTticmVhaztjYXNlIGw6dGhpcy5fc2Vuc29ycy5hY2NlbGVyYXRpb25aPUEudmFsdWU7YnJlYWs7Y2FzZSBoOnRoaXMuX3NlbnNvcnMuc3BpblNwZWVkWD10aGlzLl9zcGluU3BlZWRGcm9tR3lybyhBLnZhbHVlKTticmVhaztjYXNlIHc6dGhpcy5fc2Vuc29ycy5zcGluU3BlZWRZPXRoaXMuX3NwaW5TcGVlZEZyb21HeXJvKEEudmFsdWUpO2JyZWFrO2Nhc2UgQzp0aGlzLl9zZW5zb3JzLnNwaW5TcGVlZFo9dGhpcy5fc3BpblNwZWVkRnJvbUd5cm8oQS52YWx1ZSl9d2luZG93LmNsZWFySW50ZXJ2YWwodGhpcy5fdGltZW91dElEKSx0aGlzLl90aW1lb3V0SUQ9d2luZG93LnNldEludGVydmFsKCgpPT50aGlzLl9ibGUuaGFuZGxlRGlzY29ubmVjdEVycm9yKCJGb3JjZSBhbmQgQWNjZWxlcmF0aW9uIGV4dGVuc2lvbiBzdG9wcGVkIHJlY2VpdmluZyBkYXRhIiksNDUwMCl9X3NwaW5TcGVlZEZyb21HeXJvKEEpe2NvbnN0IGU9MWUzL3RoaXMuX3J1bnRpbWUuY3VycmVudFN0ZXBUaW1lO3JldHVybiBBPXMucmFkVG9EZWcoQSksQS89ZSxBKj0tMX1nZXRGb3JjZSgpe3JldHVybiB0aGlzLl9zZW5zb3JzLmZvcmNlfWdldFRpbHRGcm9udEJhY2soKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXSYmYXJndW1lbnRzWzBdO2NvbnN0IGU9dGhpcy5nZXRBY2NlbGVyYXRpb25YKCksdD10aGlzLmdldEFjY2VsZXJhdGlvblkoKSxuPXRoaXMuZ2V0QWNjZWxlcmF0aW9uWigpO2xldCBpPXQqdCtuKm47cmV0dXJuIGk9TWF0aC5zcXJ0KGkpLGk8LjM1P2k9ZTwwPzkwOi05MDooaT1lL2ksaT1NYXRoLmF0YW4oaSksaT0tMSpzLnJhZFRvRGVnKGkpKSxBJiYoaSo9LTEpLGl9Z2V0VGlsdExlZnRSaWdodCgpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdJiZhcmd1bWVudHNbMF07Y29uc3QgZT10aGlzLmdldEFjY2VsZXJhdGlvblgoKSx0PXRoaXMuZ2V0QWNjZWxlcmF0aW9uWSgpLG49dGhpcy5nZXRBY2NlbGVyYXRpb25aKCk7bGV0IGk9ZSplK24qbjtyZXR1cm4gaT1NYXRoLnNxcnQoaSksaTwuMzU/aT10PDA/OTA6LTkwOihpPXQvaSxpPU1hdGguYXRhbihpKSxpPS0xKnMucmFkVG9EZWcoaSkpLEEmJihpKj0tMSksaX1nZXRBY2NlbGVyYXRpb25YKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuYWNjZWxlcmF0aW9uWH1nZXRBY2NlbGVyYXRpb25ZKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuYWNjZWxlcmF0aW9uWX1nZXRBY2NlbGVyYXRpb25aKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuYWNjZWxlcmF0aW9uWn1nZXRTcGluU3BlZWRYKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuc3BpblNwZWVkWH1nZXRTcGluU3BlZWRZKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuc3BpblNwZWVkWX1nZXRTcGluU3BlZWRaKCl7cmV0dXJuIHRoaXMuX3NlbnNvcnMuc3BpblNwZWVkWn19Y29uc3QgTT0icHVzaGVkIixkPSJwdWxsZWQiLHA9InNoYWtlbiIsbT0ic3RhcnRlZCBmYWxsaW5nIixGPSJ0dXJuZWQgZmFjZSB1cCIsRD0idHVybmVkIGZhY2UgZG93biIsWT0iZnJvbnQiLGY9ImJhY2siLE49ImxlZnQiLFU9InJpZ2h0Iix5PSJhbnkiLFQ9IngiLHg9InkiLFI9InoiO2NsYXNzIEd7c3RhdGljIGdldCBFWFRFTlNJT05fTkFNRSgpe3JldHVybiJGb3JjZSBhbmQgQWNjZWxlcmF0aW9uIn1zdGF0aWMgZ2V0IEVYVEVOU0lPTl9JRCgpe3JldHVybiJnZHhmb3IifWdldCBBWElTX01FTlUoKXtyZXR1cm5be3RleHQ6IngiLHZhbHVlOlR9LHt0ZXh0OiJ5Iix2YWx1ZTp4fSx7dGV4dDoieiIsdmFsdWU6Un1dfWdldCBUSUxUX01FTlUoKXtyZXR1cm5be3RleHQ6byh7aWQ6ImdkeGZvci50aWx0RGlyZWN0aW9uTWVudS5mcm9udCIsZGVmYXVsdDoiZnJvbnQiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgZnJvbnQgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBwaWNrZXIgZm9yIGdkeGZvciBleHRlbnNpb24ifSksdmFsdWU6WX0se3RleHQ6byh7aWQ6ImdkeGZvci50aWx0RGlyZWN0aW9uTWVudS5iYWNrIixkZWZhdWx0OiJiYWNrIixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGJhY2sgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBwaWNrZXIgZm9yIGdkeGZvciBleHRlbnNpb24ifSksdmFsdWU6Zn0se3RleHQ6byh7aWQ6ImdkeGZvci50aWx0RGlyZWN0aW9uTWVudS5sZWZ0IixkZWZhdWx0OiJsZWZ0IixkZXNjcmlwdGlvbjoibGFiZWwgZm9yIGxlZnQgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBwaWNrZXIgZm9yIGdkeGZvciBleHRlbnNpb24ifSksdmFsdWU6Tn0se3RleHQ6byh7aWQ6ImdkeGZvci50aWx0RGlyZWN0aW9uTWVudS5yaWdodCIsZGVmYXVsdDoicmlnaHQiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgcmlnaHQgZWxlbWVudCBpbiB0aWx0IGRpcmVjdGlvbiBwaWNrZXIgZm9yIGdkeGZvciBleHRlbnNpb24ifSksdmFsdWU6VX1dfWdldCBUSUxUX01FTlVfQU5ZKCl7cmV0dXJuWy4uLnRoaXMuVElMVF9NRU5VLHt0ZXh0Om8oe2lkOiJnZHhmb3IudGlsdERpcmVjdGlvbk1lbnUuYW55IixkZWZhdWx0OiJhbnkiLGRlc2NyaXB0aW9uOiJsYWJlbCBmb3IgYW55IGRpcmVjdGlvbiBlbGVtZW50IGluIHRpbHQgZGlyZWN0aW9uIHBpY2tlciBmb3IgZ2R4Zm9yIGV4dGVuc2lvbiJ9KSx2YWx1ZTp5fV19Z2V0IFBVU0hfUFVMTF9NRU5VKCl7cmV0dXJuW3t0ZXh0Om8oe2lkOiJnZHhmb3IucHVzaGVkIixkZWZhdWx0OiJwdXNoZWQiLGRlc2NyaXB0aW9uOiJ0aGUgZm9yY2Ugc2Vuc29yIHdhcyBwdXNoZWQgaW53YXJkIn0pLHZhbHVlOk19LHt0ZXh0Om8oe2lkOiJnZHhmb3IucHVsbGVkIixkZWZhdWx0OiJwdWxsZWQiLGRlc2NyaXB0aW9uOiJ0aGUgZm9yY2Ugc2Vuc29yIHdhcyBwdWxsZWQgb3V0d2FyZCJ9KSx2YWx1ZTpkfV19Z2V0IEdFU1RVUkVfTUVOVSgpe3JldHVyblt7dGV4dDpvKHtpZDoiZ2R4Zm9yLnNoYWtlbiIsZGVmYXVsdDoic2hha2VuIixkZXNjcmlwdGlvbjoidGhlIHNlbnNvciB3YXMgc2hha2VuIn0pLHZhbHVlOnB9LHt0ZXh0Om8oe2lkOiJnZHhmb3Iuc3RhcnRlZEZhbGxpbmciLGRlZmF1bHQ6InN0YXJ0ZWQgZmFsbGluZyIsZGVzY3JpcHRpb246InRoZSBzZW5zb3Igc3RhcnRlZCBmcmVlIGZhbGxpbmcifSksdmFsdWU6bX0se3RleHQ6byh7aWQ6ImdkeGZvci50dXJuZWRGYWNlVXAiLGRlZmF1bHQ6InR1cm5lZCBmYWNlIHVwIixkZXNjcmlwdGlvbjoidGhlIHNlbnNvciB3YXMgdHVybmVkIHRvIGZhY2UgdXAifSksdmFsdWU6Rn0se3RleHQ6byh7aWQ6ImdkeGZvci50dXJuZWRGYWNlRG93biIsZGVmYXVsdDoidHVybmVkIGZhY2UgZG93biIsZGVzY3JpcHRpb246InRoZSBzZW5zb3Igd2FzIHR1cm5lZCB0byBmYWNlIGRvd24ifSksdmFsdWU6RH1dfWNvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX3BlcmlwaGVyYWw9bmV3IEkodGhpcy5ydW50aW1lLEcuRVhURU5TSU9OX0lEKX1nZXRJbmZvKCl7cmV0dXJue2lkOkcuRVhURU5TSU9OX0lELG5hbWU6Ry5FWFRFTlNJT05fTkFNRSxibG9ja0ljb25VUkk6ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRkFBQUFCUUNBWUFBQUNPRWZLdEFBQUFCR2RCVFVFQUFMR1BDL3hoQlFBQUNDTkpSRUZVZUFIdG5HdHNGRlVVZ00rZGZYYmJiYmNXYUtIU0ZncmxrV2drSkNiNkE0a21KZmlISUJZQnBjRmZSZzFHRWttRVZBdmhGWXcvVEV4TXhHb0lDQUVDaVpFSUlVUUNpaVQ0Z2grS0lMUlFDaTJFTklWMnQvdWU2emwzdTJVcHU0WHV6TzRjc0NlNTg3aVBtWE8vT1dmdW5Uc3pWNEFCV2ZmbFFVKzBwKzliVGNMekVtUzVnVVBsdmFnQWNWTVhjTXBuSzF1K2V2VzhRTFlLYU5rV3BIS3hudDZkUXNxRmp4bzgwcDEwSnQxdng3dDMwbjYyWXMrMklKVVRVcERscVVOb21nWXV0d3NqaFpGRDVyNnNsQkFPaFVIWDlZVGU2RDFHVG1ySUFoRmVCWjJjNEpGQ3BCaWdnbXdsQlI3cFRHTFVld3haWUJJVVdWN3lxZ2I3Zzhsb3R1dWt0NWlocXlFTEhDU0VidXNrOTMxRXhNeGJqU2tXU054RXlyM3Z5c3haTEZIV25EdVQwQ3RGVjZPS21tT0JSclY0aE11YlpvR21NWkE2bEhUZmdzTGVIbkJFSWlDeFVZODZYUkR3K3NCZk9nWjBtODIwVTVseElGWUFuY0YrR052VkRvNVFhTEJ1MUNseVlUeUY0dHZkOGxabHRRZ1hGQTZtVzczQnhvVnQwU2hVWEcyVkNwNFFRZERFRnFlejRCbTdwN2dhTzBvZjQyMnIzeDRKaS9LcmJkSWV4dTRTRTJGamdXTzZPa0NMeDZndDZneE9pTlY5MnRpWStuaTFZZTFudTdkcFFmazM1aWtydTlFQk42dW5zRURJd2dMSlBRdjhkd0NmVDNXUHQraUZJZkFVcU0zdkw3dnBqbXV6MEtYMWdrQWZPTU4zM2R4S2tqd0E5dnNURElTOHV1YmRCWmN5QVdscVd0b2hRYlJTdXJ1L0wxTzJ2TWF6QUdpTHhSS1ZGcURnREVkQWFIQ04wa1U4UGx5MnZLV3hBQmh6Slo1aXBDNnFIbFJ6Zkp4Vno5OVM0OUdkWVFFdzdQWWt1QW1va1pKNmZ1bWxRVXFpTnBWU1E1Nmk5Sm55SE1zQ1lNUmRBREdIazBaeUhNMWI5NzZYaWNIMHJYdFdZUjU3RlBOU0dRN0NBaUNCQ0pROG9YaEkwRmRtQmlQZlZubDlaWm16NURtRkRjQStId0lVT0VZTWNqTDIrZTU3UGJCcDA0SHhPTkk0aWZJRUtDOFRZUU13aHMrN0lVK2h3QkZPWVF2QjVxRjhncmJ3Sm5SZlFYbkloYmtJRzRBRXhGK1NjRTAwdzBYM0FaTHdpc3JEeUgxSkgxWUFBOFVsSUcwMjlGUlpzdTZUUGZWSmlJbHRXWUlqTVRMZ0xVbEdzMWl6ZVJZbUd0UzM4M3Q5d251N0cySjZmSC9UbG4yTE5VZEV4R0x4dlpTT1ExcUNTLytQOUNGaEJaQVV1ajEyUEhnQ3ZSSkhaN3c0RW5oWWp5YTZoWEdIUTJKYXhqNGlsYlZDMkFGRVVOQlZYU2RLYjNXQzI5K3JtSVNLaXFGbjdBUkJhZHlFSFVBQ0ZITTY0VlpsRFRkV2FmVmgxWWlrMVpCNUpFc0xKR2FWdG9zdzM3bGQ0VHNjV1FIWDQrb1JXTzF6V3JBRVdDUjZvTW5UQ0VYaWptSTEyMzRNVnZzUGdWK1djbUtuZEdIcHdsTnRad2Joa1pZRWt1STRDa3VBWGZwazBIR0FQeW0wVFhFY2hhVUwzOUJyNEp2UWVsamsrbHd4T3hCZUNSUTNVckZISStBTUJzRVY2Z2NuaGx3SVM0QlUwUk9SVjFWNDJFcW53bkxnU3lvM0FzTTNlQTliUE90OGJBRU9WNk5VV0dSWjlGWXZIU3g2UjBwZllna01tazJEQ0gxK1o3S3dCNWdLYXpqTEdncExnVU9BdVJaV0FMbkRTbmN4TEFPWUNtc2ticWpoZTAyaDVkNnkwc0ZLRjVjWGdJOExyTHdCOVBUZUdldzZQT3dObnB0bHBZT1ZMaTRuRmpqdVd0czk1N3JuQms4dG9tb1orYmpoUGNxT2NDY25BRzM0RWFUcU9qeG1zTkt4elFuQWtYNXdyb25zT3J5NnpJbjY2VGhsakxOY2crVzFhMkdpNTUrTUNnNlhjS2wzTnV4cmJ4b3VTODdUTEFjWTFWMFFWNSs4akx5dUVla2VlU0dUUzFnT2NNL2xacE9ybE4vRHNSek95aThDWTJmTHV3VXVtL3dSMUJUK1pVenJES1V2OUQ0TEI5clhaRWpOVGZSalpZRlM1cjg2ZWJmQTNXMGJjbU1LRmgwMS81Zk1vb3JtNnJTakFBMlNOYzJGOGR2bVFWV0NnZHk4ZnhnOGdjRU4wcFdlejgwUVV5eVFGQXFuL045bWhtSzVQQVlON2FkZWNDUG5Nc1VDQ1o3VThhcmk0SUdiODd3SmVLRkRBL01sbUhYQkRWa2dUUjFDVjQvZ2FUaEt6Qm9lS1lwdVN6cVNycVN6RWlGdUpEYXlXeHF5UUpwM1JVaFlTS2ZXVVNFejVpRElyaHJabDhJNWIzN0p2clRCVDN3ZHBkNDNjT3FUL1dpSmhxNmlrUXBrVzVhOEJ4dVMvWDIxOXVYWkhvUEttZE1VR2RFZ3BXelRsbDNLcjk1WjhWSks3TjNOTDdiL3FIWTJybm1kamQ2RzdvRjNxL2IvM1JvRmFQRGFqd0ljQldpUWdNSGlveFpvRUtDaGZxREJjMmNzbm14dE0yWmdsTURLQXJGdmR1aEJiTER2OXNPRDhveW1BMHhCQ0hWdGw2K2M3ZXk2SWJkdCszb3g3V09veE1DbUQ0aTY4UHJaa0JRYUVEVWUxdG5WcVN5eWZsNzkrdnI2ZXZ6MUMyaktvZ2tZV0VFYzBKblZpaVpScUt1b3FKaVp0RUpjbjBHSXN5a2V3emhXMmpKVlpqekJhbXhzZks3OWFzZS81TW9YTDEwNlRuRUR3ZnEzNnFnSUY2SEdqS3lxRnNOa0RHTXdVTnhFREVtSUhRVHh5TkdqSDFBY2h2dW1CY0M0dkF1WFZwaUErVERZTUZEWGlpWkZvTitTcm1NSTd0aXhvL3YzMzM3ZGlOdFFVek5wUHExUkNoSXJhNWNjQUZLRFVFd1lMcmEyZm5YdTNQbXRBMGdvanFiYVZVTmwyM2Z0K3BQaVBXNzNVN1JHWWRHSDVRQ1FZQ2c5M0M3MzA3NVMzNEk1YytaUWEwcy9CMU5qb3U1MXRWVlZhdEpBWGNyRUQzUTRFSTVwbGdzSGdBUWlTaVJDb1JEOUVDZWFtOWZQbzMyVUp6RlFZd0pMbGl4OW1kWjlmYjFuYVkyaXlpUTJyVnR5QUVpMTk5UGk1TTgvdGRCNjJ2UnB6Y2VPSDMrdG9hSEJoNjF3MmNsVHA5NnNxcTVlaFVueHcwZU83S0E4S0twTVl0TzZKWmNPS1RVZU5SaHNwMCtmZm10aWxZSTFWTGY0K1F2bjE3ODRkKzVlekVmVzE0NGhNUjA1YmxnbHBEZ0hTYnF4dDZXbDVZOFpNNmFmS3E4b0w3TFpIZDU0UEg3SDd3K2NPUGo5ZHg4dVhiTGsrSUN5bmJobTRjSkRyN0xWTUttaG9QNWRwaGFXb0ZHckhNVEFRcmdCSkNqa0ZkUUhwUG50cUNVbWlXQ2dlMTRQQnN2ZEZuVVlsUDhBTUFLZktJS21ZdWtBQUFBQVNVVk9SSzVDWUlJPSIsbWVudUljb25VUkk6ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ2dBQUFBb0NBWUFBQUNNL3JodEFBQUFCR2RCVFVFQUFMR1BDL3hoQlFBQUE5ZEpSRUZVV0FuTm1FMklGRWNVZ0YvOWRFL3Y3TG9hTTlra0s0SkJSQTBFRkJJUFJtODVoQkF2RVhIWHd5bzVlRkU4N0dGY1JlTWtPYmdKaVFua2tKekVnOW44SElKaXhLTmUxSU1LaWhnaUNidml3VjExVjNkMGQzcG11cXNxcjVwcGNFbmIzVE5WZ2dWRlZWZTlldStyOTdxcXE0dEFTcXA4L2ZzYm9RZ21VMFRNdWdpNTcxSzI5YlB5OW92UFU4U2YxNkhicFFqM0VrWUZCY0pjcjVBbTJuWmZzOTRBSVdWZnFNUWVITndoSUNVQlo0eXBVSUEvWDJzYkltMkFXOEFKSzBsa0VQNlRKcGZxd1hnZzRReG1GL2ZCN0d0dnhrMUc1WktIVTFDcVRnUEpvU1VYWUpZZW9oU1VKdStxcnFkVlVHaDIvcFZYNFZGZmZ4NzdXYXFCWmtya0VGajI3MStxV0gwc1hjVTNGQnp5UWUvTWc3Qi8vTGJLTVRSVHhOaURic01ISGpUSmx5TTdIRUpJQkhYczJLWEZqK29UTlNkb1FPQ1lMUzVqRDlJd0JNbTVIOE5wbHd3UGIvUVY0eUVJY3ljYUF6YTlJdUE3NkIzOGZ1ejFPRjVSWFVrbUhDZHU2cmcwQnBTTWdWL3NBZTdEZHpHRnJ2dmRpMEQzbVNaalFBMHd0N1JFUXNZK2lXRjBYYmZGenlhbDhTTFJ4dXRlRCtEdTRoNFovZmxicWFCSGliQVF0Wm1RdGNaYUFaU013dFR5bGFSLzR2YXcxanU1WWhXRzEwcHd3QXFnaG1wMkZlSE8yK3QxMVdxeU04MFcwbTd2QU9oc00xa0Q3Q0d6OEw1N0pzcTZiaXRaQy9HY1dnTGYxSDZLdUhUOTJjVERBRnkvQmdYTVhtME9DcGdWNTBCbzlrSzNCcWlCYm9hYlFNTVUvV29MNWltNGpUb2VxL0FJZ1hzaVJ4NUtLQ2pjd1BFc2lBdi9CUU11OUV3eURIWGQvM2txQ09TekRrNnQ1L1lnbFFLS2VKd3ErUE5SbUpJOGt3U1RhajFIWnk1QWhTSHFuWGtJdlU5bU1Vd0V3NFE1d1RNNTdMVXRrZzhRUHcvY2RjQkorUGh2S0owR2o4MG5HcTZKWHJnNi9YRmlYOTdHWElCcHlxVGllS3BLVmlPbCtXRWhXWE1hVWF2dnZkSVo4R2l5NStMaDNid0ttL3QrQmUzSmF6TWZ4YzF0bGRZMjZyYXN0aUhjc1FldlRHOXB3MHpub3ZrQWNSV0h6U0RLblp0YU9KTFNmTUZMQjVScXRSQlM0TGJDdXJxTEN5MFlQa1UzQzBJSVBFaW1NcVIyZWk3WlgyK0tRZFJpL1dhaE5UL0dtZk9ENFZ5emh4LzY2cGNqcDg1ZFV2Y21wNko4K3R4bGRYaDA3UFBza2RrUytWNkViRDB2VE9LbEIweDlCL082QlM4VUxseTlQZ0U2eDRrRFBSL1hYNXB5WUtqOHhjQ3Vjc1Vta05VUUUwSnZLS20yVmlvVks1SFJFN1VLT0hiaTZCOTRSelArOTNqdHBDMHZXZ1hVRjBocjNpcHV3OHVhZHdkM2pYeG9BOUlLNFBhaDh0NkJuZVY5R2dqRDI4U3Z3MW1seEZvYmdGYmVGVHoxM2NLYnRoOTNmRHJ5cDJDRXEwYTRoVEErYUFQUS9FU0pGRGR2WEx6enpycU5qbFRxT1A2dURlRmYwdWh2SjBaUDJRRDhENlp6VTZ1OFlJYkJBQUFBQUVsRlRrU3VRbUNDIixzaG93U3RhdHVzQnV0dG9uOiEwLGJsb2Nrczpbe29wY29kZToid2hlbkdlc3R1cmUiLHRleHQ6byh7aWQ6ImdkeGZvci53aGVuR2VzdHVyZSIsZGVmYXVsdDoid2hlbiBbR0VTVFVSRV0iLGRlc2NyaXB0aW9uOiJ3aGVuIHRoZSBzZW5zb3IgZGV0ZWN0cyBhIGdlc3R1cmUifSksYmxvY2tUeXBlOmkuSEFULGFyZ3VtZW50czp7R0VTVFVSRTp7dHlwZTpuLlNUUklORyxtZW51OiJnZXN0dXJlT3B0aW9ucyIsZGVmYXVsdFZhbHVlOnB9fX0se29wY29kZToid2hlbkZvcmNlUHVzaGVkT3JQdWxsZWQiLHRleHQ6byh7aWQ6ImdkeGZvci53aGVuRm9yY2VQdXNoZWRPclB1bGxlZCIsZGVmYXVsdDoid2hlbiBmb3JjZSBzZW5zb3IgW1BVU0hfUFVMTF0iLGRlc2NyaXB0aW9uOiJ3aGVuIHRoZSBmb3JjZSBzZW5zb3IgaXMgcHVzaGVkIG9yIHB1bGxlZCJ9KSxibG9ja1R5cGU6aS5IQVQsYXJndW1lbnRzOntQVVNIX1BVTEw6e3R5cGU6bi5TVFJJTkcsbWVudToicHVzaFB1bGxPcHRpb25zIixkZWZhdWx0VmFsdWU6TX19fSx7b3Bjb2RlOiJnZXRGb3JjZSIsdGV4dDpvKHtpZDoiZ2R4Zm9yLmdldEZvcmNlIixkZWZhdWx0OiJmb3JjZSIsZGVzY3JpcHRpb246ImdldHMgZm9yY2UifSksYmxvY2tUeXBlOmkuUkVQT1JURVJ9LCItLS0iLHtvcGNvZGU6IndoZW5UaWx0ZWQiLHRleHQ6byh7aWQ6ImdkeGZvci53aGVuVGlsdGVkIixkZWZhdWx0OiJ3aGVuIHRpbHRlZCBbVElMVF0iLGRlc2NyaXB0aW9uOiJ3aGVuIHRoZSBzZW5zb3IgZGV0ZWN0cyB0aWx0In0pLGJsb2NrVHlwZTppLkhBVCxhcmd1bWVudHM6e1RJTFQ6e3R5cGU6bi5TVFJJTkcsbWVudToidGlsdEFueU9wdGlvbnMiLGRlZmF1bHRWYWx1ZTp5fX19LHtvcGNvZGU6ImlzVGlsdGVkIix0ZXh0Om8oe2lkOiJnZHhmb3IuaXNUaWx0ZWQiLGRlZmF1bHQ6InRpbHRlZCBbVElMVF0/IixkZXNjcmlwdGlvbjoiaXMgdGhlIGRldmljZSB0aWx0ZWQ/In0pLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOntUSUxUOnt0eXBlOm4uU1RSSU5HLG1lbnU6InRpbHRBbnlPcHRpb25zIixkZWZhdWx0VmFsdWU6eX19fSx7b3Bjb2RlOiJnZXRUaWx0Iix0ZXh0Om8oe2lkOiJnZHhmb3IuZ2V0VGlsdCIsZGVmYXVsdDoidGlsdCBhbmdsZSBbVElMVF0iLGRlc2NyaXB0aW9uOiJnZXRzIHRpbHQifSksYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntUSUxUOnt0eXBlOm4uU1RSSU5HLG1lbnU6InRpbHRPcHRpb25zIixkZWZhdWx0VmFsdWU6WX19fSwiLS0tIix7b3Bjb2RlOiJpc0ZyZWVGYWxsaW5nIix0ZXh0Om8oe2lkOiJnZHhmb3IuaXNGcmVlRmFsbGluZyIsZGVmYXVsdDoiZmFsbGluZz8iLGRlc2NyaXB0aW9uOiJpcyB0aGUgZGV2aWNlIGluIGZyZWUgZmFsbD8ifSksYmxvY2tUeXBlOmkuQk9PTEVBTn0se29wY29kZToiZ2V0U3BpblNwZWVkIix0ZXh0Om8oe2lkOiJnZHhmb3IuZ2V0U3BpbiIsZGVmYXVsdDoic3BpbiBzcGVlZCBbRElSRUNUSU9OXSIsZGVzY3JpcHRpb246ImdldHMgc3BpbiBzcGVlZCJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e0RJUkVDVElPTjp7dHlwZTpuLlNUUklORyxtZW51OiJheGlzT3B0aW9ucyIsZGVmYXVsdFZhbHVlOlJ9fX0se29wY29kZToiZ2V0QWNjZWxlcmF0aW9uIix0ZXh0Om8oe2lkOiJnZHhmb3IuZ2V0QWNjZWxlcmF0aW9uIixkZWZhdWx0OiJhY2NlbGVyYXRpb24gW0RJUkVDVElPTl0iLGRlc2NyaXB0aW9uOiJnZXRzIGFjY2VsZXJhdGlvbiJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e0RJUkVDVElPTjp7dHlwZTpuLlNUUklORyxtZW51OiJheGlzT3B0aW9ucyIsZGVmYXVsdFZhbHVlOlR9fX1dLG1lbnVzOntwdXNoUHVsbE9wdGlvbnM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczp0aGlzLlBVU0hfUFVMTF9NRU5VfSxnZXN0dXJlT3B0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuR0VTVFVSRV9NRU5VfSxheGlzT3B0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuQVhJU19NRU5VfSx0aWx0T3B0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuVElMVF9NRU5VfSx0aWx0QW55T3B0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOnRoaXMuVElMVF9NRU5VX0FOWX19fX13aGVuRm9yY2VQdXNoZWRPclB1bGxlZChBKXtzd2l0Y2goQS5QVVNIX1BVTEwpe2Nhc2UgTTpyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC5nZXRGb3JjZSgpPC01O2Nhc2UgZDpyZXR1cm4gdGhpcy5fcGVyaXBoZXJhbC5nZXRGb3JjZSgpPjU7ZGVmYXVsdDpyZXR1cm4gci53YXJuKCJ1bmtub3duIHB1c2gvcHVsbCB2YWx1ZSBpbiB3aGVuRm9yY2VQdXNoZWRPclB1bGxlZDogIi5jb25jYXQoQS5QVVNIX1BVTEwpKSwhMX19Z2V0Rm9yY2UoKXtyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9wZXJpcGhlcmFsLmdldEZvcmNlKCkpfXdoZW5HZXN0dXJlKEEpe3N3aXRjaChBLkdFU1RVUkUpe2Nhc2UgcDpyZXR1cm4gdGhpcy5nZXN0dXJlTWFnbml0dWRlKCk+MzA7Y2FzZSBtOnJldHVybiB0aGlzLmlzRnJlZUZhbGxpbmcoKTtjYXNlIEY6cmV0dXJuIHRoaXMuX2lzRmFjaW5nKEYpO2Nhc2UgRDpyZXR1cm4gdGhpcy5faXNGYWNpbmcoRCk7ZGVmYXVsdDpyZXR1cm4gci53YXJuKCJ1bmtub3duIGdlc3R1cmUgdmFsdWUgaW4gd2hlbkdlc3R1cmU6ICIuY29uY2F0KEEuR0VTVFVSRSkpLCExfX1faXNGYWNpbmcoQSl7dm9pZCAwPT09dGhpcy5fZmFjaW5nVXAmJih0aGlzLl9mYWNpbmdVcD0hMSksdm9pZCAwPT09dGhpcy5fZmFjaW5nRG93biYmKHRoaXMuX2ZhY2luZ0Rvd249ITEpO2xldCBlPTk7c3dpdGNoKCh0aGlzLl9mYWNpbmdVcHx8dGhpcy5fZmFjaW5nRG93bikmJihlLT01KSx0aGlzLl9mYWNpbmdVcD10aGlzLl9wZXJpcGhlcmFsLmdldEFjY2VsZXJhdGlvblooKT5lLHRoaXMuX2ZhY2luZ0Rvd249dGhpcy5fcGVyaXBoZXJhbC5nZXRBY2NlbGVyYXRpb25aKCk8LTEqZSxBKXtjYXNlIEY6cmV0dXJuIHRoaXMuX2ZhY2luZ1VwO2Nhc2UgRDpyZXR1cm4gdGhpcy5fZmFjaW5nRG93bjtkZWZhdWx0OnJldHVybiExfX13aGVuVGlsdGVkKEEpe3JldHVybiB0aGlzLl9pc1RpbHRlZChBLlRJTFQpfWlzVGlsdGVkKEEpe3JldHVybiB0aGlzLl9pc1RpbHRlZChBLlRJTFQpfWdldFRpbHQoQSl7cmV0dXJuIHRoaXMuX2dldFRpbHRBbmdsZShBLlRJTFQpfV9pc1RpbHRlZChBKXtzd2l0Y2goQSl7Y2FzZSB5OnJldHVybiB0aGlzLl9nZXRUaWx0QW5nbGUoWSk+MTV8fHRoaXMuX2dldFRpbHRBbmdsZShmKT4xNXx8dGhpcy5fZ2V0VGlsdEFuZ2xlKE4pPjE1fHx0aGlzLl9nZXRUaWx0QW5nbGUoVSk+MTU7ZGVmYXVsdDpyZXR1cm4gdGhpcy5fZ2V0VGlsdEFuZ2xlKEEpPjE1fX1fZ2V0VGlsdEFuZ2xlKEEpe2lmKCF0aGlzLl9wZXJpcGhlcmFsLmlzQ29ubmVjdGVkKCkpcmV0dXJuIDA7c3dpdGNoKEEpe2Nhc2UgWTpyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9wZXJpcGhlcmFsLmdldFRpbHRGcm9udEJhY2soITApKTtjYXNlIGY6cmV0dXJuIE1hdGgucm91bmQodGhpcy5fcGVyaXBoZXJhbC5nZXRUaWx0RnJvbnRCYWNrKCExKSk7Y2FzZSBOOnJldHVybiBNYXRoLnJvdW5kKHRoaXMuX3BlcmlwaGVyYWwuZ2V0VGlsdExlZnRSaWdodCghMCkpO2Nhc2UgVTpyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9wZXJpcGhlcmFsLmdldFRpbHRMZWZ0UmlnaHQoITEpKTtkZWZhdWx0OnIud2FybigiVW5rbm93biBkaXJlY3Rpb24gaW4gZ2V0VGlsdDogIi5jb25jYXQoQSkpfX1nZXRTcGluU3BlZWQoQSl7c3dpdGNoKEEuRElSRUNUSU9OKXtjYXNlIFQ6cmV0dXJuIE1hdGgucm91bmQodGhpcy5fcGVyaXBoZXJhbC5nZXRTcGluU3BlZWRYKCkpO2Nhc2UgeDpyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9wZXJpcGhlcmFsLmdldFNwaW5TcGVlZFkoKSk7Y2FzZSBSOnJldHVybiBNYXRoLnJvdW5kKHRoaXMuX3BlcmlwaGVyYWwuZ2V0U3BpblNwZWVkWigpKTtkZWZhdWx0OnIud2FybigiVW5rbm93biBkaXJlY3Rpb24gaW4gZ2V0U3BpblNwZWVkOiAiLmNvbmNhdChBLkRJUkVDVElPTikpfX1nZXRBY2NlbGVyYXRpb24oQSl7c3dpdGNoKEEuRElSRUNUSU9OKXtjYXNlIFQ6cmV0dXJuIE1hdGgucm91bmQodGhpcy5fcGVyaXBoZXJhbC5nZXRBY2NlbGVyYXRpb25YKCkpO2Nhc2UgeDpyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9wZXJpcGhlcmFsLmdldEFjY2VsZXJhdGlvblkoKSk7Y2FzZSBSOnJldHVybiBNYXRoLnJvdW5kKHRoaXMuX3BlcmlwaGVyYWwuZ2V0QWNjZWxlcmF0aW9uWigpKTtkZWZhdWx0OnIud2FybigiVW5rbm93biBkaXJlY3Rpb24gaW4gZ2V0QWNjZWxlcmF0aW9uOiAiLmNvbmNhdChBLkRJUkVDVElPTikpfX1tYWduaXR1ZGUoQSxlLHQpe3JldHVybiBNYXRoLnNxcnQoQSpBK2UqZSt0KnQpfWFjY2VsTWFnbml0dWRlKCl7cmV0dXJuIHRoaXMubWFnbml0dWRlKHRoaXMuX3BlcmlwaGVyYWwuZ2V0QWNjZWxlcmF0aW9uWCgpLHRoaXMuX3BlcmlwaGVyYWwuZ2V0QWNjZWxlcmF0aW9uWSgpLHRoaXMuX3BlcmlwaGVyYWwuZ2V0QWNjZWxlcmF0aW9uWigpKX1nZXN0dXJlTWFnbml0dWRlKCl7cmV0dXJuIHRoaXMuYWNjZWxNYWduaXR1ZGUoKS05Ljh9c3Bpbk1hZ25pdHVkZSgpe3JldHVybiB0aGlzLm1hZ25pdHVkZSh0aGlzLl9wZXJpcGhlcmFsLmdldFNwaW5TcGVlZFgoKSx0aGlzLl9wZXJpcGhlcmFsLmdldFNwaW5TcGVlZFkoKSx0aGlzLl9wZXJpcGhlcmFsLmdldFNwaW5TcGVlZFooKSl9aXNGcmVlRmFsbGluZygpe2lmKCF0aGlzLl9wZXJpcGhlcmFsLmlzQ29ubmVjdGVkKCkpcmV0dXJuITE7cmV0dXJuIHRoaXMuYWNjZWxNYWduaXR1ZGUoKTwuNSsuMyp0aGlzLnNwaW5NYWduaXR1ZGUoKX19QS5leHBvcnRzPUd9LGZ1bmN0aW9uKEEsZSx0KXtBLmV4cG9ydHM9ZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gZShBLGUsdCxuLGkscixvKXt0cnl7dmFyIHM9QVtyXShvKSxhPXMudmFsdWV9Y2F0Y2goQSl7cmV0dXJuIHZvaWQgdChBKX1zLmRvbmU/ZShhKTpQcm9taXNlLnJlc29sdmUoYSkudGhlbihuLGkpfWZ1bmN0aW9uIG4oQSl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxuPWFyZ3VtZW50cztyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKGkscil7dmFyIG89QS5hcHBseSh0LG4pO2Z1bmN0aW9uIHMoQSl7ZShvLGkscixzLGEsIm5leHQiLEEpfWZ1bmN0aW9uIGEoQSl7ZShvLGkscixzLGEsInRocm93IixBKX1zKHZvaWQgMCl9KSl9fWZ1bmN0aW9uIGkoQSxlKXtpZighKEEgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX1mdW5jdGlvbiByKEEsZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBuPWVbdF07bi5lbnVtZXJhYmxlPW4uZW51bWVyYWJsZXx8ITEsbi5jb25maWd1cmFibGU9ITAsInZhbHVlImluIG4mJihuLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxuLmtleSxuKX19ZnVuY3Rpb24gbyhBLGUsdCl7cmV0dXJuIGUmJnIoQS5wcm90b3R5cGUsZSksdCYmcihBLHQpLEF9ZnVuY3Rpb24gcyhBLGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlJiZudWxsIT09ZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvbiIpO0EucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoZSYmZS5wcm90b3R5cGUse2NvbnN0cnVjdG9yOnt2YWx1ZTpBLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH19KSxlJiZmdW5jdGlvbihBLGUpeyhPYmplY3Quc2V0UHJvdG90eXBlT2Z8fGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuX19wcm90b19fPWUsQX0pKEEsZSl9KEEsZSl9ZnVuY3Rpb24gYShBKXtyZXR1cm4oYT1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LmdldFByb3RvdHlwZU9mOmZ1bmN0aW9uKEEpe3JldHVybiBBLl9fcHJvdG9fX3x8T2JqZWN0LmdldFByb3RvdHlwZU9mKEEpfSkoQSl9ZnVuY3Rpb24gQihBLGUpe3JldHVybiFlfHwib2JqZWN0IiE9dHlwZW9mIGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlP2Z1bmN0aW9uKEEpe2lmKHZvaWQgMD09PUEpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWQiKTtyZXR1cm4gQX0oQSk6ZX0hZnVuY3Rpb24oZSl7dmFyIHQsbj1PYmplY3QucHJvdG90eXBlLGk9bi5oYXNPd25Qcm9wZXJ0eSxyPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2w/U3ltYm9sOnt9LG89ci5pdGVyYXRvcnx8IkBAaXRlcmF0b3IiLHM9ci5hc3luY0l0ZXJhdG9yfHwiQEBhc3luY0l0ZXJhdG9yIixhPXIudG9TdHJpbmdUYWd8fCJAQHRvU3RyaW5nVGFnIixCPSJvYmplY3QiPT10eXBlb2YgQSxjPWUucmVnZW5lcmF0b3JSdW50aW1lO2lmKGMpQiYmKEEuZXhwb3J0cz1jKTtlbHNleyhjPWUucmVnZW5lcmF0b3JSdW50aW1lPUI/QS5leHBvcnRzOnt9KS53cmFwPU07dmFyIGc9InN1c3BlbmRlZFN0YXJ0IixFPSJzdXNwZW5kZWRZaWVsZCIsUT0iZXhlY3V0aW5nIix1PSJjb21wbGV0ZWQiLGw9e30saD17fTtoW29dPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O3ZhciB3PU9iamVjdC5nZXRQcm90b3R5cGVPZixDPXcmJncodyhUKFtdKSkpO0MmJkMhPT1uJiZpLmNhbGwoQyxvKSYmKGg9Qyk7dmFyIEk9Ri5wcm90b3R5cGU9cC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShoKTttLnByb3RvdHlwZT1JLmNvbnN0cnVjdG9yPUYsRi5jb25zdHJ1Y3Rvcj1tLEZbYV09bS5kaXNwbGF5TmFtZT0iR2VuZXJhdG9yRnVuY3Rpb24iLGMuaXNHZW5lcmF0b3JGdW5jdGlvbj1mdW5jdGlvbihBKXt2YXIgZT0iZnVuY3Rpb24iPT10eXBlb2YgQSYmQS5jb25zdHJ1Y3RvcjtyZXR1cm4hIWUmJihlPT09bXx8IkdlbmVyYXRvckZ1bmN0aW9uIj09PShlLmRpc3BsYXlOYW1lfHxlLm5hbWUpKX0sYy5tYXJrPWZ1bmN0aW9uKEEpe3JldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mKEEsRik6KEEuX19wcm90b19fPUYsYSBpbiBBfHwoQVthXT0iR2VuZXJhdG9yRnVuY3Rpb24iKSksQS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShJKSxBfSxjLmF3cmFwPWZ1bmN0aW9uKEEpe3JldHVybntfX2F3YWl0OkF9fSxEKFkucHJvdG90eXBlKSxZLnByb3RvdHlwZVtzXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxjLkFzeW5jSXRlcmF0b3I9WSxjLmFzeW5jPWZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpPW5ldyBZKE0oQSxlLHQsbikpO3JldHVybiBjLmlzR2VuZXJhdG9yRnVuY3Rpb24oZSk/aTppLm5leHQoKS50aGVuKChmdW5jdGlvbihBKXtyZXR1cm4gQS5kb25lP0EudmFsdWU6aS5uZXh0KCl9KSl9LEQoSSksSVthXT0iR2VuZXJhdG9yIixJW29dPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LEkudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iW29iamVjdCBHZW5lcmF0b3JdIn0sYy5rZXlzPWZ1bmN0aW9uKEEpe3ZhciBlPVtdO2Zvcih2YXIgdCBpbiBBKWUucHVzaCh0KTtyZXR1cm4gZS5yZXZlcnNlKCksZnVuY3Rpb24gdCgpe2Zvcig7ZS5sZW5ndGg7KXt2YXIgbj1lLnBvcCgpO2lmKG4gaW4gQSlyZXR1cm4gdC52YWx1ZT1uLHQuZG9uZT0hMSx0fXJldHVybiB0LmRvbmU9ITAsdH19LGMudmFsdWVzPVQseS5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOnkscmVzZXQ6ZnVuY3Rpb24oQSl7aWYodGhpcy5wcmV2PTAsdGhpcy5uZXh0PTAsdGhpcy5zZW50PXRoaXMuX3NlbnQ9dCx0aGlzLmRvbmU9ITEsdGhpcy5kZWxlZ2F0ZT1udWxsLHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLmFyZz10LHRoaXMudHJ5RW50cmllcy5mb3JFYWNoKFUpLCFBKWZvcih2YXIgZSBpbiB0aGlzKSJ0Ij09PWUuY2hhckF0KDApJiZpLmNhbGwodGhpcyxlKSYmIWlzTmFOKCtlLnNsaWNlKDEpKSYmKHRoaXNbZV09dCl9LHN0b3A6ZnVuY3Rpb24oKXt0aGlzLmRvbmU9ITA7dmFyIEE9dGhpcy50cnlFbnRyaWVzWzBdLmNvbXBsZXRpb247aWYoInRocm93Ij09PUEudHlwZSl0aHJvdyBBLmFyZztyZXR1cm4gdGhpcy5ydmFsfSxkaXNwYXRjaEV4Y2VwdGlvbjpmdW5jdGlvbihBKXtpZih0aGlzLmRvbmUpdGhyb3cgQTt2YXIgZT10aGlzO2Z1bmN0aW9uIG4obixpKXtyZXR1cm4gcy50eXBlPSJ0aHJvdyIscy5hcmc9QSxlLm5leHQ9bixpJiYoZS5tZXRob2Q9Im5leHQiLGUuYXJnPXQpLCEhaX1mb3IodmFyIHI9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO3I+PTA7LS1yKXt2YXIgbz10aGlzLnRyeUVudHJpZXNbcl0scz1vLmNvbXBsZXRpb247aWYoInJvb3QiPT09by50cnlMb2MpcmV0dXJuIG4oImVuZCIpO2lmKG8udHJ5TG9jPD10aGlzLnByZXYpe3ZhciBhPWkuY2FsbChvLCJjYXRjaExvYyIpLEI9aS5jYWxsKG8sImZpbmFsbHlMb2MiKTtpZihhJiZCKXtpZih0aGlzLnByZXY8by5jYXRjaExvYylyZXR1cm4gbihvLmNhdGNoTG9jLCEwKTtpZih0aGlzLnByZXY8by5maW5hbGx5TG9jKXJldHVybiBuKG8uZmluYWxseUxvYyl9ZWxzZSBpZihhKXtpZih0aGlzLnByZXY8by5jYXRjaExvYylyZXR1cm4gbihvLmNhdGNoTG9jLCEwKX1lbHNle2lmKCFCKXRocm93IG5ldyBFcnJvcigidHJ5IHN0YXRlbWVudCB3aXRob3V0IGNhdGNoIG9yIGZpbmFsbHkiKTtpZih0aGlzLnByZXY8by5maW5hbGx5TG9jKXJldHVybiBuKG8uZmluYWxseUxvYyl9fX19LGFicnVwdDpmdW5jdGlvbihBLGUpe2Zvcih2YXIgdD10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7dD49MDstLXQpe3ZhciBuPXRoaXMudHJ5RW50cmllc1t0XTtpZihuLnRyeUxvYzw9dGhpcy5wcmV2JiZpLmNhbGwobiwiZmluYWxseUxvYyIpJiZ0aGlzLnByZXY8bi5maW5hbGx5TG9jKXt2YXIgcj1uO2JyZWFrfX1yJiYoImJyZWFrIj09PUF8fCJjb250aW51ZSI9PT1BKSYmci50cnlMb2M8PWUmJmU8PXIuZmluYWxseUxvYyYmKHI9bnVsbCk7dmFyIG89cj9yLmNvbXBsZXRpb246e307cmV0dXJuIG8udHlwZT1BLG8uYXJnPWUscj8odGhpcy5tZXRob2Q9Im5leHQiLHRoaXMubmV4dD1yLmZpbmFsbHlMb2MsbCk6dGhpcy5jb21wbGV0ZShvKX0sY29tcGxldGU6ZnVuY3Rpb24oQSxlKXtpZigidGhyb3ciPT09QS50eXBlKXRocm93IEEuYXJnO3JldHVybiJicmVhayI9PT1BLnR5cGV8fCJjb250aW51ZSI9PT1BLnR5cGU/dGhpcy5uZXh0PUEuYXJnOiJyZXR1cm4iPT09QS50eXBlPyh0aGlzLnJ2YWw9dGhpcy5hcmc9QS5hcmcsdGhpcy5tZXRob2Q9InJldHVybiIsdGhpcy5uZXh0PSJlbmQiKToibm9ybWFsIj09PUEudHlwZSYmZSYmKHRoaXMubmV4dD1lKSxsfSxmaW5pc2g6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtlPj0wOy0tZSl7dmFyIHQ9dGhpcy50cnlFbnRyaWVzW2VdO2lmKHQuZmluYWxseUxvYz09PUEpcmV0dXJuIHRoaXMuY29tcGxldGUodC5jb21wbGV0aW9uLHQuYWZ0ZXJMb2MpLFUodCksbH19LGNhdGNoOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7ZT49MDstLWUpe3ZhciB0PXRoaXMudHJ5RW50cmllc1tlXTtpZih0LnRyeUxvYz09PUEpe3ZhciBuPXQuY29tcGxldGlvbjtpZigidGhyb3ciPT09bi50eXBlKXt2YXIgaT1uLmFyZztVKHQpfXJldHVybiBpfX10aHJvdyBuZXcgRXJyb3IoImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdCIpfSxkZWxlZ2F0ZVlpZWxkOmZ1bmN0aW9uKEEsZSxuKXtyZXR1cm4gdGhpcy5kZWxlZ2F0ZT17aXRlcmF0b3I6VChBKSxyZXN1bHROYW1lOmUsbmV4dExvYzpufSwibmV4dCI9PT10aGlzLm1ldGhvZCYmKHRoaXMuYXJnPXQpLGx9fX1mdW5jdGlvbiBNKEEsZSx0LG4pe3ZhciBpPWUmJmUucHJvdG90eXBlIGluc3RhbmNlb2YgcD9lOnAscj1PYmplY3QuY3JlYXRlKGkucHJvdG90eXBlKSxvPW5ldyB5KG58fFtdKTtyZXR1cm4gci5faW52b2tlPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1nO3JldHVybiBmdW5jdGlvbihpLHIpe2lmKG49PT1RKXRocm93IG5ldyBFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgcnVubmluZyIpO2lmKG49PT11KXtpZigidGhyb3ciPT09aSl0aHJvdyByO3JldHVybiB4KCl9Zm9yKHQubWV0aG9kPWksdC5hcmc9cjs7KXt2YXIgbz10LmRlbGVnYXRlO2lmKG8pe3ZhciBzPWYobyx0KTtpZihzKXtpZihzPT09bCljb250aW51ZTtyZXR1cm4gc319aWYoIm5leHQiPT09dC5tZXRob2QpdC5zZW50PXQuX3NlbnQ9dC5hcmc7ZWxzZSBpZigidGhyb3ciPT09dC5tZXRob2Qpe2lmKG49PT1nKXRocm93IG49dSx0LmFyZzt0LmRpc3BhdGNoRXhjZXB0aW9uKHQuYXJnKX1lbHNlInJldHVybiI9PT10Lm1ldGhvZCYmdC5hYnJ1cHQoInJldHVybiIsdC5hcmcpO249UTt2YXIgYT1kKEEsZSx0KTtpZigibm9ybWFsIj09PWEudHlwZSl7aWYobj10LmRvbmU/dTpFLGEuYXJnPT09bCljb250aW51ZTtyZXR1cm57dmFsdWU6YS5hcmcsZG9uZTp0LmRvbmV9fSJ0aHJvdyI9PT1hLnR5cGUmJihuPXUsdC5tZXRob2Q9InRocm93Iix0LmFyZz1hLmFyZyl9fX0oQSx0LG8pLHJ9ZnVuY3Rpb24gZChBLGUsdCl7dHJ5e3JldHVybnt0eXBlOiJub3JtYWwiLGFyZzpBLmNhbGwoZSx0KX19Y2F0Y2goQSl7cmV0dXJue3R5cGU6InRocm93Iixhcmc6QX19fWZ1bmN0aW9uIHAoKXt9ZnVuY3Rpb24gbSgpe31mdW5jdGlvbiBGKCl7fWZ1bmN0aW9uIEQoQSl7WyJuZXh0IiwidGhyb3ciLCJyZXR1cm4iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtBW2VdPWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLl9pbnZva2UoZSxBKX19KSl9ZnVuY3Rpb24gWShBKXt2YXIgZTt0aGlzLl9pbnZva2U9ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiByKCl7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbihlLHIpeyFmdW5jdGlvbiBlKHQsbixyLG8pe3ZhciBzPWQoQVt0XSxBLG4pO2lmKCJ0aHJvdyIhPT1zLnR5cGUpe3ZhciBhPXMuYXJnLEI9YS52YWx1ZTtyZXR1cm4gQiYmIm9iamVjdCI9PXR5cGVvZiBCJiZpLmNhbGwoQiwiX19hd2FpdCIpP1Byb21pc2UucmVzb2x2ZShCLl9fYXdhaXQpLnRoZW4oKGZ1bmN0aW9uKEEpe2UoIm5leHQiLEEscixvKX0pLChmdW5jdGlvbihBKXtlKCJ0aHJvdyIsQSxyLG8pfSkpOlByb21pc2UucmVzb2x2ZShCKS50aGVuKChmdW5jdGlvbihBKXthLnZhbHVlPUEscihhKX0pLChmdW5jdGlvbihBKXtyZXR1cm4gZSgidGhyb3ciLEEscixvKX0pKX1vKHMuYXJnKX0odCxuLGUscil9KSl9cmV0dXJuIGU9ZT9lLnRoZW4ocixyKTpyKCl9fWZ1bmN0aW9uIGYoQSxlKXt2YXIgbj1BLml0ZXJhdG9yW2UubWV0aG9kXTtpZihuPT09dCl7aWYoZS5kZWxlZ2F0ZT1udWxsLCJ0aHJvdyI9PT1lLm1ldGhvZCl7aWYoQS5pdGVyYXRvci5yZXR1cm4mJihlLm1ldGhvZD0icmV0dXJuIixlLmFyZz10LGYoQSxlKSwidGhyb3ciPT09ZS5tZXRob2QpKXJldHVybiBsO2UubWV0aG9kPSJ0aHJvdyIsZS5hcmc9bmV3IFR5cGVFcnJvcigiVGhlIGl0ZXJhdG9yIGRvZXMgbm90IHByb3ZpZGUgYSAndGhyb3cnIG1ldGhvZCIpfXJldHVybiBsfXZhciBpPWQobixBLml0ZXJhdG9yLGUuYXJnKTtpZigidGhyb3ciPT09aS50eXBlKXJldHVybiBlLm1ldGhvZD0idGhyb3ciLGUuYXJnPWkuYXJnLGUuZGVsZWdhdGU9bnVsbCxsO3ZhciByPWkuYXJnO3JldHVybiByP3IuZG9uZT8oZVtBLnJlc3VsdE5hbWVdPXIudmFsdWUsZS5uZXh0PUEubmV4dExvYywicmV0dXJuIiE9PWUubWV0aG9kJiYoZS5tZXRob2Q9Im5leHQiLGUuYXJnPXQpLGUuZGVsZWdhdGU9bnVsbCxsKTpyOihlLm1ldGhvZD0idGhyb3ciLGUuYXJnPW5ldyBUeXBlRXJyb3IoIml0ZXJhdG9yIHJlc3VsdCBpcyBub3QgYW4gb2JqZWN0IiksZS5kZWxlZ2F0ZT1udWxsLGwpfWZ1bmN0aW9uIE4oQSl7dmFyIGU9e3RyeUxvYzpBWzBdfTsxIGluIEEmJihlLmNhdGNoTG9jPUFbMV0pLDIgaW4gQSYmKGUuZmluYWxseUxvYz1BWzJdLGUuYWZ0ZXJMb2M9QVszXSksdGhpcy50cnlFbnRyaWVzLnB1c2goZSl9ZnVuY3Rpb24gVShBKXt2YXIgZT1BLmNvbXBsZXRpb258fHt9O2UudHlwZT0ibm9ybWFsIixkZWxldGUgZS5hcmcsQS5jb21wbGV0aW9uPWV9ZnVuY3Rpb24geShBKXt0aGlzLnRyeUVudHJpZXM9W3t0cnlMb2M6InJvb3QifV0sQS5mb3JFYWNoKE4sdGhpcyksdGhpcy5yZXNldCghMCl9ZnVuY3Rpb24gVChBKXtpZihBKXt2YXIgZT1BW29dO2lmKGUpcmV0dXJuIGUuY2FsbChBKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgQS5uZXh0KXJldHVybiBBO2lmKCFpc05hTihBLmxlbmd0aCkpe3ZhciBuPS0xLHI9ZnVuY3Rpb24gZSgpe2Zvcig7KytuPEEubGVuZ3RoOylpZihpLmNhbGwoQSxuKSlyZXR1cm4gZS52YWx1ZT1BW25dLGUuZG9uZT0hMSxlO3JldHVybiBlLnZhbHVlPXQsZS5kb25lPSEwLGV9O3JldHVybiByLm5leHQ9cn19cmV0dXJue25leHQ6eH19ZnVuY3Rpb24geCgpe3JldHVybnt2YWx1ZTp0LGRvbmU6ITB9fX0oZnVuY3Rpb24oKXtyZXR1cm4gdGhpc3x8Im9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmfSgpfHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpKTt2YXIgYz1uZXcgVWludDhBcnJheShbODgsMCwwLDBdKSxnPW5ldyBVaW50OEFycmF5KFsyNiwxNjUsNzQsNiw3Myw3LDcyLDgsNzEsOSw3MCwxMCw2OSwxMSw2OCwxMiw2NywxMyw2NiwxNCw2NV0pLEU9bmV3IFVpbnQ4QXJyYXkoWzI0LDI1NSwxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSksUT1uZXcgVWludDhBcnJheShbMjUsMjU1LDAsMjU1LDI1NSwyNTUsMjU1XSksdT1uZXcgVWludDhBcnJheShbMjcsMjU1LDAsMCwwLDAsMCwwLDAsMCwwXSksbD17SEVBREVSOmMsSU5JVDpnLERJU0NPTk5FQ1Q6bmV3IFVpbnQ4QXJyYXkoWzg0XSksU1RBUlRfTUVBU1VSRU1FTlRTOkUsU1RPUF9NRUFTVVJFTUVOVFM6USxTRVRfTUVBU1VSRU1FTlRfUEVSSU9EOnUsR0VUX0lORk86bmV3IFVpbnQ4QXJyYXkoWzg1XSksR0VUX1NUQVRVUzpuZXcgVWludDhBcnJheShbMTZdKSxHRVRfU0VOU09SX0lEUzpuZXcgVWludDhBcnJheShbODFdKSxHRVRfU0VOU09SX0lORk86bmV3IFVpbnQ4QXJyYXkoWzgwLDBdKSxHRVRfREVGQVVMVF9TRU5TT1JTX01BU0s6bmV3IFVpbnQ4QXJyYXkoWzg2XSl9LGg9ZnVuY3Rpb24oQSl7cmV0dXJuIDAhPT1BfSx3PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gQSgpe2kodGhpcyxBKSx0aGlzLl9saXN0ZW5lck1hcD1uZXcgTWFwfXJldHVybiBvKEEsW3trZXk6Im9uIix2YWx1ZTpmdW5jdGlvbihBLGUpe3RoaXMuX2xpc3RlbmVyTWFwLmhhcyhBKXx8dGhpcy5fbGlzdGVuZXJNYXAuc2V0KEEsW10pLHRoaXMuX2xpc3RlbmVyTWFwLmdldChBKS5wdXNoKGUpfX0se2tleToib2ZmIix2YWx1ZTpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuX2xpc3RlbmVyTWFwLmdldChBKTtpZih0JiZ0Lmxlbmd0aCl7dmFyIG49dC5yZWR1Y2UoKGZ1bmN0aW9uKEEsdCxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdCYmdD09PWU/QT1uOkF9KSwtMSk7aWYobj4tMSlyZXR1cm4gdC5zcGxpY2UobiwxKSx0aGlzLl9saXN0ZW5lck1hcC5zZXQoQSx0KSwhMH1yZXR1cm4hMX19LHtrZXk6InVuYmluZCIsdmFsdWU6ZnVuY3Rpb24oKXt0aGlzLl9saXN0ZW5lck1hcC5jbGVhcigpfX0se2tleToiZW1pdCIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPWFyZ3VtZW50cy5sZW5ndGgsdD1uZXcgQXJyYXkoZT4xP2UtMTowKSxuPTE7bjxlO24rKyl0W24tMV09YXJndW1lbnRzW25dO3ZhciBpPXRoaXMuX2xpc3RlbmVyTWFwLmdldChBKTtyZXR1cm4hKCFpfHwhaS5sZW5ndGh8fChpLmZvckVhY2goKGZ1bmN0aW9uKEEpe0EuYXBwbHkodm9pZCAwLHQpfSkpLDApKX19XSksQX0oKTtmdW5jdGlvbiBDKEEpe3JldHVybiBBcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KEEpKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCIwIil9KSkuam9pbigiICIpfXZhciBJLE09ZnVuY3Rpb24gQSgpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fTtpKHRoaXMsQSksdGhpcy50eXBlPWUudHlwZSx0aGlzLm1vZGU9ZS5tb2RlLHRoaXMubWluVmFsdWU9ZS5taW5WYWx1ZSx0aGlzLm1heFZhbHVlPWUubWF4VmFsdWUsdGhpcy51bmNlcnRhaW50eT1lLnVuY2VydGFpbnR5LHRoaXMubWluUGVyaW9kPWUubWluUGVyaW9kLHRoaXMubWF4UGVyaW9kPWUubWF4UGVyaW9kLHRoaXMudHlwaWNhbFBlcmlvZD1lLnR5cGljYWxQZXJpb2QsdGhpcy5ncmFudWxhcml0eT1lLmdyYW51bGFyaXR5fSxkPWZ1bmN0aW9uIEEoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e307aSh0aGlzLEEpLHRoaXMubnVtYmVyPWUubnVtYmVyLHRoaXMubmFtZT1lLm5hbWUsdGhpcy51bml0PWUudW5pdCx0aGlzLmlkPWUuaWQsdGhpcy5tdXRhbEV4Y2x1c2lvbk1hc2s9ZS5tdXRhbEV4Y2x1c2lvbk1hc2ssdGhpcy5tZWFzdXJlbWVudEluZm89ZS5tZWFzdXJlbWVudEluZm99LHA9ZnVuY3Rpb24oQSl7ZnVuY3Rpb24gZShBKXt2YXIgdDtyZXR1cm4gaSh0aGlzLGUpLCh0PUIodGhpcyxhKGUpLmNhbGwodGhpcykpKS5udW1iZXI9QS5udW1iZXIsdC5uYW1lPUEubmFtZSx0LnVuaXQ9QS51bml0LHQuc3BlY3M9QSx0LmVuYWJsZWQ9ITEsdC52YWx1ZXM9W10sdC52YWx1ZT1udWxsLHR9cmV0dXJuIHMoZSx3KSxvKGUsW3trZXk6ImNsZWFyIix2YWx1ZTpmdW5jdGlvbigpe3RoaXMudmFsdWU9bnVsbCx0aGlzLnZhbHVlcz1bXX19LHtrZXk6InNldFZhbHVlIix2YWx1ZTpmdW5jdGlvbihBLGUpe3RoaXMudmFsdWU9QSxlJiZ0aGlzLnZhbHVlcy5wdXNoKHRoaXMudmFsdWUpLHRoaXMuZW1pdCgidmFsdWUtY2hhbmdlZCIsdGhpcyl9fSx7a2V5OiJzZXRFbmFibGVkIix2YWx1ZTpmdW5jdGlvbihBKXt0aGlzLmVuYWJsZWQhPT1BJiYodGhpcy5lbmFibGVkPUEsdGhpcy5lbWl0KCJzdGF0ZS1jaGFuZ2VkIix0aGlzKSl9fV0pLGV9KCksbT1mdW5jdGlvbihBKXtmdW5jdGlvbiBlKEEpe3ZhciBuO2lmKGkodGhpcyxlKSxuPUIodGhpcyxhKGUpLmNhbGwodGhpcykpLCJ1bmRlZmluZWQiPT10eXBlb2YgVGV4dERlY29kZXIpe3ZhciByPXQoMzApO0k9ci5UZXh0RGVjb2Rlcn1lbHNlIEk9VGV4dERlY29kZXI7cmV0dXJuIG4uZGV2aWNlPUEsbi5zZW5zb3JzPVtdLG4ub3BlbmVkPSExLG4ucm9sbGluZ0NvdW50ZXI9MCxuLmNvbGxlY3Rpbmc9ITEsbi5tZWFzdXJlbWVudFBlcmlvZD0xMCxuLnJlc3BvbnNlPW51bGwsbi5yZW1haW5pbmdSZXNwb25zZUxlbmd0aD0wLG4uZGVmYXVsdFNlbnNvcnNNYXNrPTAsbi5rZWVwVmFsdWVzPSEwLG4ubWluTWVhc3VyZW1lbnRQZXJpb2Q9MTAsbi5zZXJpYWxOdW1iZXI9IiIsbi5vcmRlckNvZGU9IiIsbi5uYW1lPSIiLG59cmV0dXJuIHMoZSx3KSxvKGUsW3trZXk6ImdldEJhdHRlcnlMZXZlbCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT1uKHJlZ2VuZXJhdG9yUnVudGltZS5tYXJrKChmdW5jdGlvbiBBKCl7dmFyIGU7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gQS5uZXh0PTIsdGhpcy5fZ2V0U3RhdHVzKCk7Y2FzZSAyOnJldHVybiBlPUEuc2VudCxBLmFicnVwdCgicmV0dXJuIixlLmJhdHRlcnkpO2Nhc2UgNDpjYXNlImVuZCI6cmV0dXJuIEEuc3RvcCgpfX0pLEEsdGhpcyl9KSkpO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6ImdldENoYXJnaW5nU3RhdGUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQSgpe3ZhciBlO3JldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcCgoZnVuY3Rpb24oQSl7Zm9yKDs7KXN3aXRjaChBLnByZXY9QS5uZXh0KXtjYXNlIDA6cmV0dXJuIEEubmV4dD0yLHRoaXMuX2dldFN0YXR1cygpO2Nhc2UgMjpyZXR1cm4gZT1BLnNlbnQsQS5hYnJ1cHQoInJldHVybiIsZS5jaGFyZ2luZ1N0YXR1cyk7Y2FzZSA0OmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEEuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKX0se2tleToib3BlbiIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT1uKHJlZ2VuZXJhdG9yUnVudGltZS5tYXJrKChmdW5jdGlvbiBBKCl7dmFyIGUsdD1hcmd1bWVudHM7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gZT10Lmxlbmd0aD4wJiZ2b2lkIDAhPT10WzBdJiZ0WzBdLEEucHJldj0xLEEubmV4dD00LHRoaXMuX2Nvbm5lY3QoKTtjYXNlIDQ6cmV0dXJuIEEubmV4dD02LHRoaXMuX2luaXQoKTtjYXNlIDY6cmV0dXJuIEEubmV4dD04LHRoaXMuX2dldFN0YXR1cygpO2Nhc2UgODpyZXR1cm4gQS5uZXh0PTEwLHRoaXMuX2dldERldmljZUluZm8oKTtjYXNlIDEwOnJldHVybiBBLm5leHQ9MTIsdGhpcy5fZ2V0RGVmYXVsdFNlbnNvcnNNYXNrKCk7Y2FzZSAxMjpyZXR1cm4gQS5uZXh0PTE0LHRoaXMuX2dldEF2YWlsYWJsZVNlbnNvcnMoKTtjYXNlIDE0OnRoaXMuX29uT3BlbmVkKCksZSYmdGhpcy5zdGFydCgpLEEubmV4dD0yMTticmVhaztjYXNlIDE4OkEucHJldj0xOCxBLnQwPUEuY2F0Y2goMSksY29uc29sZS5lcnJvcihBLnQwKTtjYXNlIDIxOmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzLFtbMSwxOF1dKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEEuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKX0se2tleToiY2xvc2UiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQSgpe3JldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcCgoZnVuY3Rpb24oQSl7Zm9yKDs7KXN3aXRjaChBLnByZXY9QS5uZXh0KXtjYXNlIDA6cmV0dXJuIEEubmV4dD0yLHRoaXMuX3N0b3BNZWFzdXJlbWVudHMoKTtjYXNlIDI6cmV0dXJuIEEubmV4dD00LHRoaXMuX3NlbmRDb21tYW5kKGwuRElTQ09OTkVDVCk7Y2FzZSA0OnJldHVybiBBLmFicnVwdCgicmV0dXJuIix0aGlzLl9kaXNjb25uZWN0KCkpO2Nhc2UgNTpjYXNlImVuZCI6cmV0dXJuIEEuc3RvcCgpfX0pLEEsdGhpcyl9KSkpO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6ImVuYWJsZURlZmF1bHRTZW5zb3JzIix2YWx1ZTpmdW5jdGlvbigpe2Zvcih2YXIgQT0xLGU9MDtlPDMyOysrZSl7aWYoKHRoaXMuZGVmYXVsdFNlbnNvcnNNYXNrJkEpPT09QSl7dmFyIHQ9dGhpcy5nZXRTZW5zb3IoZSk7dCYmdC5zZXRFbmFibGVkKCEwKX1BPDw9MX19fSx7a2V5OiJzdGFydCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bnVsbCxlPXRoaXMuc2Vuc29ycy5maWx0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiBBLmVuYWJsZWR9KSk7MD09PWUubGVuZ3RoJiYodGhpcy5lbmFibGVEZWZhdWx0U2Vuc29ycygpLGU9dGhpcy5zZW5zb3JzLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIEEuZW5hYmxlZH0pKSksZS5mb3JFYWNoKChmdW5jdGlvbihBKXtyZXR1cm4gQS5jbGVhcigpfSkpLEEmJih0aGlzLm1lYXN1cmVtZW50UGVyaW9kPUEpLHRoaXMuX3N0YXJ0TWVhc3VyZW1lbnRzKCl9fSx7a2V5OiJzdG9wIix2YWx1ZTpmdW5jdGlvbigpe3RoaXMuX3N0b3BNZWFzdXJlbWVudHMoKX19LHtrZXk6ImdldFNlbnNvciIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuc2Vuc29ycy5maW5kKChmdW5jdGlvbihlKXtyZXR1cm4gZS5udW1iZXI9PT1BfSkpfX0se2tleToiX2Nvbm5lY3QiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQSgpe3ZhciBlPXRoaXM7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gQS5hYnJ1cHQoInJldHVybiIsdGhpcy5kZXZpY2Uuc2V0dXAoe29uQ2xvc2VkOmZ1bmN0aW9uKCl7cmV0dXJuIGUuX29uQ2xvc2VkKCl9LG9uUmVzcG9uc2U6ZnVuY3Rpb24oQSl7cmV0dXJuIGUuX2hhbmRsZVJlc3BvbnNlKEEpfX0pKTtjYXNlIDE6Y2FzZSJlbmQiOnJldHVybiBBLnN0b3AoKX19KSxBLHRoaXMpfSkpKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gQS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpfSx7a2V5OiJfZGlzY29ubmVjdCIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT1uKHJlZ2VuZXJhdG9yUnVudGltZS5tYXJrKChmdW5jdGlvbiBBKCl7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gQS5hYnJ1cHQoInJldHVybiIsdGhpcy5kZXZpY2UuY2xvc2UoKSk7Y2FzZSAxOmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEEuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKX0se2tleToiX2luaXQiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29sbGVjdGluZz0hMSx0aGlzLnJvbGxpbmdDb3VudGVyPTI1NSx0aGlzLndyaXRlUXVldWU9W10sdGhpcy5fc2VuZENvbW1hbmQobC5JTklUKX19LHtrZXk6Il9oYW5kbGVSZXNwb25zZSIsdmFsdWU6ZnVuY3Rpb24oQSl7aWYoImNvbW1hbmQgbm90aWZpZWQ6ICIuY29uY2F0KEMoQS5idWZmZXIpKSx0aGlzLnJlbWFpbmluZ1Jlc3BvbnNlTGVnbnRoPjApe2lmKHRoaXMucmVtYWluaW5nUmVzcG9uc2VMZWdudGgtPUEuYnVmZmVyLmJ5dGVMZW5ndGgsdGhpcy5yZXNwb25zZT1uZXcgRGF0YVZpZXcoKGU9dGhpcy5yZXNwb25zZS5idWZmZXIsdD1BLmJ1ZmZlci5zbGljZSgwKSwobj1uZXcgVWludDhBcnJheShlLmJ5dGVMZW5ndGgrdC5ieXRlTGVuZ3RoKSkuc2V0KG5ldyBVaW50OEFycmF5KGUpLDApLG4uc2V0KG5ldyBVaW50OEFycmF5KHQpLGUuYnl0ZUxlbmd0aCksbi5idWZmZXIpKSx0aGlzLnJlbWFpbmluZ1Jlc3BvbnNlTGVnbnRoPjApcmV0dXJufWVsc2UgdGhpcy5yZXNwb25zZT1BO3ZhciBlLHQsbixpPXRoaXMucmVzcG9uc2UuZ2V0VWludDgoMSk7aWYoaT50aGlzLnJlc3BvbnNlLmJ1ZmZlci5ieXRlTGVuZ3RoKXRoaXMucmVtYWluaW5nUmVzcG9uc2VMZWdudGg9aS10aGlzLnJlc3BvbnNlLmJ1ZmZlci5ieXRlTGVuZ3RoO2Vsc2Ugc3dpdGNoKCJoYW5kbGUgY29tbWFuZDogIi5jb25jYXQoQyh0aGlzLnJlc3BvbnNlLmJ1ZmZlcikpLHRoaXMucmVzcG9uc2UuZ2V0VWludDgoMCkpe2Nhc2UgMzI6dGhpcy5fcHJvY2Vzc01lYXN1cmVtZW50cyh0aGlzLnJlc3BvbnNlKTticmVhaztkZWZhdWx0OnZhciByPXRoaXMucmVzcG9uc2UuZ2V0VWludDgoNCksbz10aGlzLnJlc3BvbnNlLmdldFVpbnQ4KDUpLHM9bmV3IERhdGFWaWV3KHRoaXMucmVzcG9uc2UuYnVmZmVyLDYpO3RoaXMuX3Jlc29sdmVXcml0ZUNvbW1hbmQocixvLHMpLHRoaXMucmVtYWluaW5nUmVzcG9uc2VMZWdudGg9MCx0aGlzLnJlc3BvbnNlPW51bGx9fX0se2tleToiX2dldFNlbnNvcnNXaXRoTWFzayIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPVtdLHQ9MSxuPTA7bjwzMjsrK24pe2lmKChBJnQpPT09dCl7dmFyIGk9dGhpcy5nZXRTZW5zb3Iobik7aSYmKGUucHVzaChpKSwiYXZhaWxhYmxlOiBbIi5jb25jYXQoQSwiXSAiKS5jb25jYXQoZVtlLmxlbmd0aC0xXS5udW1iZXIpKX10PDw9MX1yZXR1cm4gZX19LHtrZXk6Il9wcm9jZXNzTWVhc3VyZW1lbnRzIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT1bXSx0PSEwLG49MCxpPTAscj1BLmdldFVpbnQ4KDQpO3N3aXRjaChyKXtjYXNlIDY6ZT10aGlzLl9nZXRTZW5zb3JzV2l0aE1hc2soQS5nZXRVaW50MTYoNSwhMCkpLG49QS5nZXRVaW50OCg3LCEwKSxpPTk7YnJlYWs7Y2FzZSA3OmU9dGhpcy5fZ2V0U2Vuc29yc1dpdGhNYXNrKEEuZ2V0VWludDMyKDUsITApKSxuPUEuZ2V0VWludDgoOSwhMCksaT0xMTticmVhaztjYXNlIDEwOmNhc2UgODplWzBdPXRoaXMuZ2V0U2Vuc29yKEEuZ2V0VWludDgoNikpLG49QS5nZXRVaW50OCg3LCEwKSxpPTg7YnJlYWs7Y2FzZSAxMTpjYXNlIDk6ZVswXT10aGlzLmdldFNlbnNvcihBLmdldFVpbnQ4KDYpKSxuPUEuZ2V0VWludDgoNywhMCksaT04LHQ9ITE7YnJlYWs7Y2FzZSAxMjpjYXNlIDEzOmNhc2UgMTQ6IlB1cnBvc2VseSBJZ25vcmluZyBwYWNrZXQgdHlwZTogIi5jb25jYXQocik7YnJlYWs7ZGVmYXVsdDoiVW5rbm93biBwYWNrZXQgdHlwZTogIi5jb25jYXQocil9Zm9yKHZhciBvPTA7bzxuOysrbylmb3IodmFyIHM9MDtzPGUubGVuZ3RoOysrcyl0P2Vbc10uc2V0VmFsdWUoQS5nZXRGbG9hdDMyKGksITApLHRoaXMua2VlcFZhbHVlcyk6ZVtzXS5zZXRWYWx1ZShBLmdldEludDMyKGksITApLHRoaXMua2VlcFZhbHVlcyksaSs9NH19LHtrZXk6Il9yZXNvbHZlV3JpdGVDb21tYW5kIix2YWx1ZTpmdW5jdGlvbihBLGUsdCl7dmFyIG49dGhpcy53cml0ZVF1ZXVlLmZpbmQoKGZ1bmN0aW9uKHQpe3JldHVybiB0LmNvbW1hbmQ9PT1BJiZ0LnJvbGxpbmdDb3VudGVyPT09ZX0pKTtuJiYobi5yZXNvbHZlKHQpLHRoaXMud3JpdGVRdWV1ZT10aGlzLndyaXRlUXVldWUuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gQSE9PW59KSkpfX0se2tleToiX29uT3BlbmVkIix2YWx1ZTpmdW5jdGlvbigpe3RoaXMub3BlbmVkPSEwLHRoaXMuZW1pdCgiZGV2aWNlLW9wZW5lZCIpfX0se2tleToiX29uQ2xvc2VkIix2YWx1ZTpmdW5jdGlvbigpe3RoaXMub3BlbmVkPSExLHRoaXMuZW1pdCgiZGV2aWNlLWNsb3NlZCIpfX0se2tleToiX2RlY1JvbGxpbmdDb3VudGVyIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnJvbGxpbmdDb3VudGVyLT0xLHRoaXMucm9sbGluZ0NvdW50ZXJ9fSx7a2V5OiJfY2FsY3VsYXRlQ2hlY2tzdW0iLHZhbHVlOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1BWzFdLHQ9LTEqQVszXSxuPTA7bjxlOysrbil0Kz1BW25dLHQmPTI1NTtyZXR1cm4gdDwwfHx0PjI1NT8wOnR9fSx7a2V5OiJfc2VuZENvbW1hbmQiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPW5ldyBVaW50OEFycmF5KGwuSEVBREVSLmJ5dGVMZW5ndGgrQS5ieXRlTGVuZ3RoKTtyZXR1cm4gZS5zZXQobmV3IFVpbnQ4QXJyYXkobC5IRUFERVIpLDApLGUuc2V0KG5ldyBVaW50OEFycmF5KEEpLGwuSEVBREVSLmJ5dGVMZW5ndGgpLGVbMV09ZS5sZW5ndGgsZVsyXT10aGlzLl9kZWNSb2xsaW5nQ291bnRlcigpLGVbM109dGhpcy5fY2FsY3VsYXRlQ2hlY2tzdW0oZSksdGhpcy5fcXVldWVXcml0ZUNvbW1hbmQoZSwwLGUubGVuZ3RoKX19LHtrZXk6Il93cml0ZUNvbW1hbmQiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQShlLHQsbil7dmFyIGk7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDppZighKG4+MCkpe0EubmV4dD0xMjticmVha31yZXR1cm4gQS5wcmV2PTEsbj4yMD8oaT1lLnN1YmFycmF5KHQsdCsyMCksbi09MjAsdCs9MjApOihpPWUuc3ViYXJyYXkodCx0K24pLG49MCksQS5uZXh0PTUsdGhpcy5kZXZpY2Uud3JpdGVDb21tYW5kKGkpO2Nhc2UgNTpBLm5leHQ9MTA7YnJlYWs7Y2FzZSA3OkEucHJldj03LEEudDA9QS5jYXRjaCgxKSwiV3JpdGUgRmFpbHVyZTogIi5jb25jYXQoQS50MCk7Y2FzZSAxMDpBLm5leHQ9MDticmVhaztjYXNlIDEyOmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzLFtbMSw3XV0pfSkpKTtyZXR1cm4gZnVuY3Rpb24oZSx0LG4pe3JldHVybiBBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6Il9xdWV1ZVdyaXRlQ29tbWFuZCIsdmFsdWU6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXRoaXM7ImNvbW1hbmQgcXVldWVkOiAiLmNvbmNhdChDKEEpKTt2YXIgaT1uZXcgUHJvbWlzZSgoZnVuY3Rpb24oZSx0KXtuLndyaXRlUXVldWUucHVzaCh7Y29tbWFuZDpBWzRdLHJvbGxpbmdDb3VudGVyOkFbMl0scmVzb2x2ZTplLHJlamVjdDp0fSksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtuLndyaXRlUXVldWU9bi53cml0ZVF1ZXVlLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUuY29tbWFuZD09PUFbNF0mJmUucm9sbGluZ0NvdW50ZXIhPT1BWzJdfSkpLHQobmV3IEVycm9yKCJ3cml0ZSBjb21tYW5kIHRpbWVkIG91dCBhZnRlciA1cy4gQ29tbWFuZDogIi5jb25jYXQoQVs0XS50b1N0cmluZygxNiksIiBSb2xsaW5nIENvdW50ZXI6ICIpLmNvbmNhdChBWzJdLnRvU3RyaW5nKDE2KSkpKX0pLDFlNCl9KSk7cmV0dXJuIHRoaXMuX3dyaXRlQ29tbWFuZChBLGUsdCksaX19LHtrZXk6Il9nZXRTdGF0dXMiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQSgpe3ZhciBlLHQ7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gQS5uZXh0PTIsdGhpcy5fc2VuZENvbW1hbmQobC5HRVRfU1RBVFVTKTtjYXNlIDI6cmV0dXJuIGU9QS5zZW50LHQ9e21hc3RlckZpcm13YXJlVmVyc2lvbjoiIi5jb25jYXQoZS5nZXRVaW50OCgyKSwiLiIpLmNvbmNhdChlLmdldFVpbnQ4KDMpKSxibGVGaXJtd2FyZVZlcnNpb246IiIuY29uY2F0KGUuZ2V0VWludDgoNiksIi4iKS5jb25jYXQoZS5nZXRVaW50OCg5KSksYmF0dGVyeTplLmdldFVpbnQ4KDEwKSxjaGFyZ2luZ1N0YXR1czoiIi5jb25jYXQoZS5nZXRVaW50OCgxMSkpfSxBLmFicnVwdCgicmV0dXJuIix0KTtjYXNlIDU6Y2FzZSJlbmQiOnJldHVybiBBLnN0b3AoKX19KSxBLHRoaXMpfSkpKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gQS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpfSx7a2V5OiJfZ2V0QXZhaWxhYmxlU2Vuc29ycyIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT1uKHJlZ2VuZXJhdG9yUnVudGltZS5tYXJrKChmdW5jdGlvbiBBKCl7dmFyIGUsdCxuPXRoaXM7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gQS5uZXh0PTIsdGhpcy5fc2VuZENvbW1hbmQobC5HRVRfU0VOU09SX0lEUykudGhlbigoZnVuY3Rpb24oQSl7bi5hdmFpbGFibGVTZW5zb3JzPUEuZ2V0VWludDMyKDAsITApLCJHZXQgQXZhaWxhYmxlIFNlbnNvcnMgUmV0dXJuZWQgIi5jb25jYXQobi5hdmFpbGFibGVTZW5zb3JzKX0pKTtjYXNlIDI6ZT0xLHQ9MDtjYXNlIDQ6aWYoISh0PDMxKSl7QS5uZXh0PTEyO2JyZWFrfWlmKCh0aGlzLmF2YWlsYWJsZVNlbnNvcnMmZSkhPT1lKXtBLm5leHQ9ODticmVha31yZXR1cm4gQS5uZXh0PTgsdGhpcy5fZ2V0U2Vuc29ySW5mbyh0KTtjYXNlIDg6ZTw8PTE7Y2FzZSA5OisrdCxBLm5leHQ9NDticmVhaztjYXNlIDEyOmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEEuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKX0se2tleToiX2dldERlZmF1bHRTZW5zb3JzTWFzayIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT10aGlzO3JldHVybiB0aGlzLl9zZW5kQ29tbWFuZChsLkdFVF9ERUZBVUxUX1NFTlNPUlNfTUFTSykudGhlbigoZnVuY3Rpb24oZSl7QS5kZWZhdWx0U2Vuc29yc01hc2s9ZS5nZXRVaW50MzIoMCwhMCl9KSl9fSx7a2V5OiJfZ2V0RGV2aWNlSW5mbyIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT10aGlzO3JldHVybiB0aGlzLl9zZW5kQ29tbWFuZChsLkdFVF9JTkZPKS50aGVuKChmdW5jdGlvbihlKXt2YXIgdD1uZXcgSSgidXRmLTgiKTtBLm9yZGVyQ29kZT10LmRlY29kZShuZXcgVWludDhBcnJheShlLmJ1ZmZlciw2LDE2KS5maWx0ZXIoaCkpLEEuc2VyaWFsTnVtYmVyPXQuZGVjb2RlKG5ldyBVaW50OEFycmF5KGUuYnVmZmVyLDIyLDE2KS5maWx0ZXIoaCkpLEEubmFtZT10LmRlY29kZShuZXcgVWludDhBcnJheShlLmJ1ZmZlciwzOCwzMikuZmlsdGVyKGgpKX0pKX19LHtrZXk6Il9nZXRTZW5zb3JJbmZvIix2YWx1ZTpmdW5jdGlvbigpe3ZhciBBPW4ocmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoKGZ1bmN0aW9uIEEoZSl7dmFyIHQsbj10aGlzO3JldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcCgoZnVuY3Rpb24oQSl7Zm9yKDs7KXN3aXRjaChBLnByZXY9QS5uZXh0KXtjYXNlIDA6cmV0dXJuKHQ9bmV3IFVpbnQ4QXJyYXkobC5HRVRfU0VOU09SX0lORk8pKVsxXT1lLEEuYWJydXB0KCJyZXR1cm4iLHRoaXMuX3NlbmRDb21tYW5kKHQpLnRoZW4oKGZ1bmN0aW9uKEEpe3ZhciBlPUEuZ2V0VWludDMyKDIsITApO2lmKGU+MCl7dmFyIHQ9bmV3IEkoInV0Zi04IiksaT1uZXcgTSh7dHlwZTpBLmdldFVpbnQ4KDYpLG1vZGU6QS5nZXRVaW50OCg3KSxtaW5WYWx1ZTpBLmdldEZsb2F0NjQoMTA4LCEwKSxtYXhWYWx1ZTpBLmdldEZsb2F0NjQoMTE2LCEwKSx1bmNlcnRhaW50eTpBLmdldEZsb2F0NjQoMTAwLCEwKSxtaW5QZXJpb2Q6QS5nZXRVaW50MzIoMTI0LCEwKS8xZTMsbWF4UGVyaW9kOigoQS5nZXRVaW50MzIoMTMyLCEwKTw8MzIpK0EuZ2V0VWludDMyKDEyOCwhMCkpLzFlMyx0eXBpY2FsUGVyaW9kOkEuZ2V0VWludDMyKDEzNiwhMCkvMWUzLGdyYW51bGFyaXR5OkEuZ2V0VWludDMyKDE0MCwhMCkvMWUzfSkscj1uZXcgZCh7bnVtYmVyOkEuZ2V0VWludDgoMCksbmFtZTp0LmRlY29kZShuZXcgVWludDhBcnJheShBLmJ1ZmZlciwxNCw2MCkuZmlsdGVyKGgpKSx1bml0OnQuZGVjb2RlKG5ldyBVaW50OEFycmF5KEEuYnVmZmVyLDc0LDMyKS5maWx0ZXIoaCkpLG11dGFsRXhjbHVzaXZlTWFzazpBLmdldFVpbnQzMigxNDQsITApLG1lYXN1cmVtZW50SW5mbzppLHNlbnNvcklkOmV9KSxvPW5ldyBwKHIpO24uc2Vuc29ycy5wdXNoKG8pLG8ub24oInN0YXRlLWNoYW5nZWQiLChmdW5jdGlvbigpeyJTZW5zb3IgUmVzdGFydDogIi5jb25jYXQoby5udW1iZXIpLG8uZW5hYmxlZCYmKG4ubWVhc3VyZW1lbnRQZXJpb2Q9by5zcGVjcy5tZWFzdXJlbWVudEluZm8udHlwaWNhbFBlcmlvZCxuLnNlbnNvcnMuZm9yRWFjaCgoZnVuY3Rpb24oQSl7aWYoby5udW1iZXIhPT1BLm51bWJlciYmQS5lbmFibGVkKXt2YXIgZT0xPDxBLm51bWJlcjsoZSZvLnNwZWNzLm11dGFsRXhjbHVzaXZlTWFzayk9PT1lP0EuZW5hYmxlZD0hMTpBLnNwZWNzLm1lYXN1cmVtZW50SW5mby50eXBpY2FsUGVyaW9kPm4ubWVhc3VyZW1lbnRQZXJpb2QmJihuLm1lYXN1cmVtZW50UGVyaW9kPUEuc3BlY3MubWVhc3VyZW1lbnRJbmZvLnR5cGljYWxQZXJpb2QpfX0pKSksbi5fcmVzdGFydE1lYXN1cmVtZW50cygpfSkpfX0pKSk7Y2FzZSAzOmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6Il9yZXN0YXJ0TWVhc3VyZW1lbnRzIix2YWx1ZTpmdW5jdGlvbigpe3ZhciBBPW4ocmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoKGZ1bmN0aW9uIEEoKXt2YXIgZTtyZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoKGZ1bmN0aW9uKEEpe2Zvcig7Oylzd2l0Y2goQS5wcmV2PUEubmV4dCl7Y2FzZSAwOmlmKGU9dGhpcy5jb2xsZWN0aW5nLCF0aGlzLmNvbGxlY3Rpbmcpe0EubmV4dD0xMDticmVha31yZXR1cm4gQS5wcmV2PTIsQS5uZXh0PTUsdGhpcy5fc3RvcE1lYXN1cmVtZW50cygpO2Nhc2UgNTpBLm5leHQ9MTA7YnJlYWs7Y2FzZSA3OkEucHJldj03LEEudDA9QS5jYXRjaCgyKSxjb25zb2xlLmVycm9yKEEudDApO2Nhc2UgMTA6aWYodGhpcy5jb2xsZWN0aW5nfHwhZSl7QS5uZXh0PTE5O2JyZWFrfXJldHVybiBBLnByZXY9MTEsQS5uZXh0PTE0LHRoaXMuX3N0YXJ0TWVhc3VyZW1lbnRzKCk7Y2FzZSAxNDpBLm5leHQ9MTk7YnJlYWs7Y2FzZSAxNjpBLnByZXY9MTYsQS50MT1BLmNhdGNoKDExKSxjb25zb2xlLmVycm9yKEEudDEpO2Nhc2UgMTk6Y2FzZSJlbmQiOnJldHVybiBBLnN0b3AoKX19KSxBLHRoaXMsW1syLDddLFsxMSwxNl1dKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEEuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKX0se2tleToiX3NldE1lYXN1cmVtZW50UGVyaW9kIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT1uZXcgVWludDhBcnJheShsLlNFVF9NRUFTVVJFTUVOVF9QRVJJT0QpLHQ9MWUzKnRoaXMubWluTWVhc3VyZW1lbnRQZXJpb2Q7cmV0dXJuIEE8dCYmKEE9dCksIk1lYXN1cmVtZW50UGVyaW9kOiAiLmNvbmNhdChBKSxlWzNdPUE+PjAmMjU1LGVbNF09QT4+OCYyNTUsZVs1XT1BPj4xNiYyNTUsZVs2XT1BPj4yNCYyNTUsdGhpcy5fc2VuZENvbW1hbmQoZSl9fSx7a2V5OiJfZ2V0RW5hYmxlZENoYW5uZWxNYXNrIix2YWx1ZTpmdW5jdGlvbigpe3ZhciBBPTA7cmV0dXJuIHRoaXMuc2Vuc29ycy5maWx0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiBBLmVuYWJsZWR9KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7QSs9MTw8ZS5udW1iZXJ9KSksQX19LHtrZXk6Il9zdGFydE1lYXN1cmVtZW50cyIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT10aGlzO3JldHVybiB0aGlzLl9zZXRNZWFzdXJlbWVudFBlcmlvZCgxZTMqdGhpcy5tZWFzdXJlbWVudFBlcmlvZCkudGhlbigoZnVuY3Rpb24oKXt2YXIgZT1BLl9nZXRFbmFibGVkQ2hhbm5lbE1hc2soKTsiQ2hhbm5lbE1hc2s6ICIuY29uY2F0KGUpO3ZhciB0PW5ldyBVaW50OEFycmF5KGwuU1RBUlRfTUVBU1VSRU1FTlRTKTtyZXR1cm4gdFszXT1lPj4wJjI1NSx0WzRdPWU+PjgmMjU1LHRbNV09ZT4+MTYmMjU1LHRbNl09ZT4+MjQmMjU1LEEuX3NlbmRDb21tYW5kKHQpLnRoZW4oKGZ1bmN0aW9uKGUpezA9PT1lLmdldFVpbnQ4KDApJiYoQS5jb2xsZWN0aW5nPSEwLEEuZW1pdCgibWVhc3VyZW1lbnRzLXN0YXJ0ZWQiKSl9KSl9KSl9fSx7a2V5OiJfc3RvcE1lYXN1cmVtZW50cyIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT10aGlzO3JldHVybiB0aGlzLl9zZW5kQ29tbWFuZChsLlNUT1BfTUVBU1VSRU1FTlRTKS50aGVuKChmdW5jdGlvbihlKXswPT09ZS5nZXRVaW50OCgwKSYmKEEuY29sbGVjdGluZz0hMSxBLmVtaXQoIm1lYXN1cmVtZW50cy1zdG9wcGVkIikpfSkpfX1dKSxlfSgpLEY9ZnVuY3Rpb24oKXtmdW5jdGlvbiBBKGUpe2kodGhpcyxBKSx0aGlzLndlYkJsdWV0b290aE5hdGl2ZURldmljZT1lLHRoaXMuZGV2aWNlQ29tbWFuZD1udWxsLHRoaXMuZGV2aWNlUmVzcG9uc2U9bnVsbH1yZXR1cm4gbyhBLFt7a2V5OiJ3cml0ZUNvbW1hbmQiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQShlKXtyZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoKGZ1bmN0aW9uKEEpe2Zvcig7Oylzd2l0Y2goQS5wcmV2PUEubmV4dCl7Y2FzZSAwOnJldHVybiBBLmFicnVwdCgicmV0dXJuIix0aGlzLmRldmljZUNvbW1hbmQud3JpdGVWYWx1ZShlKSk7Y2FzZSAxOmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6InNldHVwIix2YWx1ZTpmdW5jdGlvbigpe3ZhciBBPW4ocmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoKGZ1bmN0aW9uIEEoZSl7dmFyIHQsbixpLHIsbz10aGlzO3JldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcCgoZnVuY3Rpb24oQSl7Zm9yKDs7KXN3aXRjaChBLnByZXY9QS5uZXh0KXtjYXNlIDA6cmV0dXJuIHQ9ZS5vbkNsb3NlZCxuPWUub25SZXNwb25zZSx0aGlzLndlYkJsdWV0b290aE5hdGl2ZURldmljZS5hZGRFdmVudExpc3RlbmVyKCJnYXR0c2VydmVyZGlzY29ubmVjdGVkIix0KSxBLnByZXY9MixBLm5leHQ9NSx0aGlzLndlYkJsdWV0b290aE5hdGl2ZURldmljZS5nYXR0LmNvbm5lY3QoKTtjYXNlIDU6cmV0dXJuIGk9QS5zZW50LEEubmV4dD04LGkuZ2V0UHJpbWFyeVNlcnZpY2UoImQ5MTcxNGVmLTI4YjktNGY5MS1iYTE2LWYwZDlhNjA0ZjExMiIpO2Nhc2UgODpyZXR1cm4gcj1BLnNlbnQsQS5uZXh0PTExLHIuZ2V0Q2hhcmFjdGVyaXN0aWNzKCk7Y2FzZSAxMTpBLnNlbnQuZm9yRWFjaCgoZnVuY3Rpb24oQSl7c3dpdGNoKEEudXVpZCl7Y2FzZSJmNGJmMTRhNi1jN2Q1LTRiNmQtOGFhOC1kZjFhN2M4M2FkY2IiOm8uZGV2aWNlQ29tbWFuZD1BO2JyZWFrO2Nhc2UiYjQxZTY2NzUtYTMyOS00MGUwLWFhMDEtNDRkMmY0NDRiYWJlIjpvLmRldmljZVJlc3BvbnNlPUEsby5kZXZpY2VSZXNwb25zZS5hZGRFdmVudExpc3RlbmVyKCJjaGFyYWN0ZXJpc3RpY3ZhbHVlY2hhbmdlZCIsKGZ1bmN0aW9uKEEpe3ZhciBlPUEudGFyZ2V0LnZhbHVlO24oZSl9KSksby5kZXZpY2VSZXNwb25zZS5zdGFydE5vdGlmaWNhdGlvbnMoKTticmVhaztkZWZhdWx0OiJObyBjYXNlIGZvdW5kIGZvciAiLmNvbmNhdChBLnV1aWQpfX0pKSxBLm5leHQ9MTg7YnJlYWs7Y2FzZSAxNTpBLnByZXY9MTUsQS50MD1BLmNhdGNoKDIpLGNvbnNvbGUuZXJyb3IoQS50MCk7Y2FzZSAxODppZih0aGlzLmRldmljZUNvbW1hbmQmJnRoaXMuZGV2aWNlUmVzcG9uc2Upe0EubmV4dD0yMDticmVha310aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkIGNvbW1hbmQgYW5kIHJlc3BvbnNlIGNoYXJhY3RlcmlzdGljcyBub3QgZm91bmQuIik7Y2FzZSAyMDpjYXNlImVuZCI6cmV0dXJuIEEuc3RvcCgpfX0pLEEsdGhpcyxbWzIsMTVdXSl9KSkpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gQS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSgpfSx7a2V5OiJjbG9zZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT1uKHJlZ2VuZXJhdG9yUnVudGltZS5tYXJrKChmdW5jdGlvbiBBKCl7cmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gQS5hYnJ1cHQoInJldHVybiIsdGhpcy53ZWJCbHVldG9vdGhOYXRpdmVEZXZpY2UuZ2F0dC5kaXNjb25uZWN0KCkpO2Nhc2UgMTpjYXNlImVuZCI6cmV0dXJuIEEuc3RvcCgpfX0pLEEsdGhpcyl9KSkpO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCl9LHtrZXk6ImdvZGlyZWN0QWRhcHRlciIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuITB9fV0pLEF9KCksRD17Y3JlYXRlRGV2aWNlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQShlKXt2YXIgdCxuLGkscixvLHMsYSxCPWFyZ3VtZW50cztyZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoKGZ1bmN0aW9uKEEpe2Zvcig7Oylzd2l0Y2goQS5wcmV2PUEubmV4dCl7Y2FzZSAwOmlmKHQ9Qi5sZW5ndGg+MSYmdm9pZCAwIT09QlsxXT9CWzFdOnt9LG49dC5vcGVuLGk9dm9pZCAwPT09bnx8bixyPXQuc3RhcnRNZWFzdXJlbWVudHMsbz12b2lkIDA9PT1yfHxyLChzPWUpLmdvZGlyZWN0QWRhcHRlcnx8KHM9bmV3IEYoZSkpLGE9bmV3IG0ocyksIWkpe0EubmV4dD0xNDticmVha31yZXR1cm4gQS5wcmV2PTUsQS5uZXh0PTgsYS5vcGVuKG8pO2Nhc2UgODpBLm5leHQ9MTQ7YnJlYWs7Y2FzZSAxMDp0aHJvdyBBLnByZXY9MTAsQS50MD1BLmNhdGNoKDUpLGNvbnNvbGUuZXJyb3IoQS50MCksQS50MDtjYXNlIDE0OnJldHVybiBBLmFicnVwdCgicmV0dXJuIixhKTtjYXNlIDE1OmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzLFtbNSwxMF1dKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KCksc2VsZWN0RGV2aWNlOmZ1bmN0aW9uKCl7dmFyIEE9bihyZWdlbmVyYXRvclJ1bnRpbWUubWFyaygoZnVuY3Rpb24gQSgpe3ZhciBlO3JldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcCgoZnVuY3Rpb24oQSl7Zm9yKDs7KXN3aXRjaChBLnByZXY9QS5uZXh0KXtjYXNlIDA6aWYobmF2aWdhdG9yLmJsdWV0b290aCl7QS5uZXh0PTI7YnJlYWt9cmV0dXJuIEEuYWJydXB0KCJyZXR1cm4iLFByb21pc2UucmVqZWN0KG5ldyBFcnJvcigiTm8gV2ViIEJsdWV0b290aCBzdXBwb3J0LiIpKSk7Y2FzZSAyOnJldHVybiBBLm5leHQ9NCxuYXZpZ2F0b3IuYmx1ZXRvb3RoLnJlcXVlc3REZXZpY2Uoe2ZpbHRlcnM6W3tuYW1lUHJlZml4OiJHRFgifV0sb3B0aW9uYWxTZXJ2aWNlczpbImQ5MTcxNGVmLTI4YjktNGY5MS1iYTE2LWYwZDlhNjA0ZjExMiJdfSk7Y2FzZSA0OnJldHVybiBlPUEuc2VudCxBLmFicnVwdCgicmV0dXJuIixELmNyZWF0ZURldmljZShlKSk7Y2FzZSA2OmNhc2UiZW5kIjpyZXR1cm4gQS5zdG9wKCl9fSksQSx0aGlzKX0pKSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEEuYXBwbHkodGhpcyxhcmd1bWVudHMpfX0oKX07cmV0dXJuIER9KCl9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMjMpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBLGUpe2xldHtzZXJ2aWNlOnQsY29tbWFuZENoYXI6bixyZXNwb25zZUNoYXI6aX09ZTt0aGlzLnNvY2tldD1BLHRoaXMuX3NlcnZpY2U9dCx0aGlzLl9jb21tYW5kQ2hhcj1uLHRoaXMuX3Jlc3BvbnNlQ2hhcj1pLHRoaXMuX29uUmVzcG9uc2U9dGhpcy5fb25SZXNwb25zZS5iaW5kKHRoaXMpLHRoaXMuX2RldmljZU9uUmVzcG9uc2U9bnVsbH1nZXQgZ29kaXJlY3RBZGFwdGVyKCl7cmV0dXJuITB9d3JpdGVDb21tYW5kKEEpe2NvbnN0IGU9bi51aW50OEFycmF5VG9CYXNlNjQoQSk7cmV0dXJuIHRoaXMuc29ja2V0LndyaXRlKHRoaXMuX3NlcnZpY2UsdGhpcy5fY29tbWFuZENoYXIsZSwiYmFzZTY0Iil9c2V0dXAoQSl7bGV0e29uUmVzcG9uc2U6ZX09QTtyZXR1cm4gdGhpcy5fZGV2aWNlT25SZXNwb25zZT1lLHRoaXMuc29ja2V0LnN0YXJ0Tm90aWZpY2F0aW9ucyh0aGlzLl9zZXJ2aWNlLHRoaXMuX3Jlc3BvbnNlQ2hhcix0aGlzLl9vblJlc3BvbnNlKX1fb25SZXNwb25zZShBKXtjb25zdCBlPW4uYmFzZTY0VG9VaW50OEFycmF5KEEpLHQ9bmV3IERhdGFWaWV3KGUuYnVmZmVyKTtyZXR1cm4gdGhpcy5fZGV2aWNlT25SZXNwb25zZSh0KX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDQpLGk9dCgzKSxyPXQoMSksbz10KDIpLHM9KHQoOCksdCg3KSksYT10KDE4KSxCPSJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlOREFpSUdobGFXZG9kRDBpTkRBaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJK1BHY2dabWxzYkQwaWJtOXVaU0lnWm1sc2JDMXlkV3hsUFNKbGRtVnViMlJrSWo0OGNHRjBhQ0JrUFNKTk1qY3VPRE0wSURsaE15QXpJREFnTURFeUxqVTBOaUF4TGpReE1td3VNRGszTGpFMk55NHdOVFF1TVRFdU1EVXlMakV4TWk0d05EZ3VNVEV5SURZdU1qSXlJREUyWVRNdU1EQXhJRE11TURBeElEQWdNREV0TWk0eU55QTBMakEwTVd3dExqRTRMakF5TlMwdU1URTFMakF4TVMwdU1URTJMakF3TnkwdU1URTFMakF3TTJndE1TNDROVFZoTXlBeklEQWdNREV0TWk0MU5EVXRNUzQwTVRKc0xTNHdPVFl0TGpFMk55MHVNVEEzTFM0eU1qSXRMakEwT0MwdU1URXhUREk0TGprNE15QXlPR2d0TkM0NU0yd3RMalF5TWlBeExqQTROMkV6TGpBd015QXpMakF3TXlBd0lEQXhMVEl1TkRFZ01TNDRPRGxzTFM0eE9UTXVNREU0TFM0eE9UUXVNREEyTFRFdU9UUXRMakF3TWkwdU1EazJMakF3TWtnM1lUTWdNeUF3SURBeExUSXVPRGN0TXk0NE56SnNMakEzTWkwdU1qQTVJRFl1TVRnekxURTJZVE11TURBeElETXVNREF4SURBZ01ERXlMall3TkMweExqa3hNMHd4TXk0eE9EUWdPV3d6TGprdU1EQXhMakE1T1MwdU1EQXhJRE11T1RJMExqQXdNaTR3T1RVdExqQXdNaUF6TGprd05TNHdNREl1TURrMUxTNHdNREpvTWk0Mk16SjZJaUJtYVd4c0xXOXdZV05wZEhrOUlpNHhOU0lnWm1sc2JEMGlJekF3TUNJdlBqeHdZWFJvSUdROUlrMHlOUzQyTmpNZ01qRnNMamd4TmkweUxqQTVPUzQ0TVRZZ01pNHdPVGxvTFRFdU5qTXllbTB4TUM0eU5UZ2dOaTR5TnpWc0xUWXVNakl6TFRFMkxTNHdOelV0TGpFMk9DMHVNRGcxTFM0eE5EVmpMUzR6T0RjdExqWXhNUzB4TGpBeE9TMHVPVFl5TFRFdU56QXpMUzQ1TmpKb0xUSXVOak16YkMwdU1EazJMakF3TWkwdU1EWXlMUzR3TURGTU1qRXVNakF5SURFd2JDMHVNRGsyTGpBd01pMHVNRFl5TFM0d01ERk1NVGN1TVRneklERXdiQzB1TURnMkxqQXdNa3d4TXk0eE9EUWdNVEJzTFM0eE5qVXVNREEzWVRJdU1EQXpJREl1TURBeklEQWdNREF0TVM0M01ESWdNUzR5TnpKc0xUWXVNVGd5SURFMkxTNHdOVGt1TVRjMVFUSWdNaUF3SURBd055QXpNR2d4TVM0M09UaHNMakE0T0MwdU1EQXlJREV1T1RRNUxqQXdNaTR4TmpNdExqQXdOeTR4TmpFdExqQXhPV0V5SURJZ01DQXdNREV1TlRNNUxURXVNalE1YkM0Mk55MHhMamN5TldnMkxqSTVPV3d1TmpjeUlERXVOekkyTGpBM05DNHhOamN1TURnMkxqRTBOV011TXpnM0xqWXhNU0F4TGpBeE9DNDVOaklnTVM0M01ETXVPVFl5YURFdU9EVTFiQzR4TnpRdExqQXdPUzR4TmpRdExqQXlOR011T1RjMkxTNHhPRGNnTVM0Mk5qSXRNUzR3TURNZ01TNDJOakl0TVM0NU5qY2dNQzB1TWpRNExTNHdORFl0TGpRNU5DMHVNVE0yTFM0M01qVjZJaUJtYVd4c0xXOXdZV05wZEhrOUlpNHlOU0lnWm1sc2JEMGlJekF3TUNJdlBqeHdZWFJvSUdROUlrMHhNeTR4T0RNZ01URm9NeTQ0TVRoaE1TQXhJREFnTURFdU9UUXhJREV1TXpNNGJDMDFMamMwTWlBeE5tRXhJREVnTUNBd01TMHVPVFF1TmpZeVNEZGhNU0F4SURBZ01ERXRMamt6TXkweExqTTJiRFl1TVRnekxURTJZVEVnTVNBd0lEQXhMamt6TXkwdU5qUjZJaUJtYVd4c1BTSWpORU01TjBaR0lpOCtQSEJoZEdnZ1pEMGlUVEUzTGpFNE15QXhNVWd5TVdFeElERWdNQ0F3TVM0NU5ESWdNUzR6TXpoc0xUVXVOelF5SURFMllURWdNU0F3SURBeExTNDVOREV1TmpZeWFDMDBMakkyWVRFZ01TQXdJREF4TFM0NU16SXRNUzR6Tm13MkxqRTRNeTB4Tm1FeElERWdNQ0F3TVM0NU16TXRMalkwZWlJZ1ptbHNiRDBpSTBOR05qTkRSaUl2UGp4d1lYUm9JR1E5SWsweU1TNHlNRElnTVRGSU1qVmhNU0F4SURBZ01ERXVPVE16SURFdU16WXhiQzAyTGpJd015QXhObUV4SURFZ01DQXdNUzB1T1RNeUxqWXpPVWd4TldFeElERWdNQ0F3TVMwdU9UTXpMVEV1TXpZeGJEWXVNakF6TFRFMllURWdNU0F3SURBeExqa3pNaTB1TmpNNWVpSWdabWxzYkQwaUkwWkdRa1l3TUNJdlBqeHdZWFJvSUdROUlrMHlOeTQ0TXpRZ01URmhNU0F4SURBZ01ERXVPVE15TGpZek9HdzJMakl5TWlBeE5rRXhJREVnTUNBd01UTTBMakExTmlBeU9XZ3RNUzQ0TlRSaE1TQXhJREFnTURFdExqa3pNaTB1TmpNNFRETXdMak0xTVNBeU5tZ3ROeTQyTmpac0xTNDVNVGtnTWk0ek5qSmhNU0F4SURBZ01ERXRMamt6TWk0Mk16aElNVGd1T1RoaE1TQXhJREFnTURFdExqa3pNaTB4TGpNMk1tdzJMakl5TWkweE5tRXhJREVnTUNBd01TNDVNekl0TGpZek9IcHRMVEV1TXpFMklEVXVNVFF6VERJMExqSTBJREl5YURRdU5UVTJiQzB5TGpJM09DMDFMamcxTjNvaUlHWnBiR3c5SWlOR1JrWWlMejQ4TDJjK1BDOXpkbWMrIjtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5fb25UYXJnZXRXaWxsRXhpdD10aGlzLl9vblRhcmdldFdpbGxFeGl0LmJpbmQodGhpcyksdGhpcy5ydW50aW1lLm9uKCJ0YXJnZXRXYXNSZW1vdmVkIix0aGlzLl9vblRhcmdldFdpbGxFeGl0KSx0aGlzLl9vblRhcmdldENyZWF0ZWQ9dGhpcy5fb25UYXJnZXRDcmVhdGVkLmJpbmQodGhpcyksdGhpcy5ydW50aW1lLm9uKCJ0YXJnZXRXYXNDcmVhdGVkIix0aGlzLl9vblRhcmdldENyZWF0ZWQpLHRoaXMucnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsdGhpcy5zdG9wQWxsLmJpbmQodGhpcykpfWdldCBGT05UX0lEUygpe3JldHVyblsiU2FucyBTZXJpZiIsIlNlcmlmIiwiSGFuZHdyaXRpbmciLCJNYXJrZXIiLCJDdXJseSIsIlBpeGVsIiwiUGxheWZ1bCIsIkJ1YmJseSIsIkFyY2FkZSIsIkJpdHMgYW5kIEJ5dGVzIiwiVGVjaG5vbG9naWNhbCIsIlNjcmF0Y2giLCJBcmNoaXZvIiwiQXJjaGl2byBCbGFjayJdfWdldCBERUZBVUxUX1RFWFRfU1RBVEUoKXtyZXR1cm57c2tpbklkOm51bGwsdGV4dDoiV2VsY29tZSB0byBteSBwcm9qZWN0ISIsZm9udDoiSGFuZHdyaXRpbmciLGNvbG9yOiJoc2xhKDIyNSwgMTUlLCA0MCUsIDEpIixzaXplOjI0LG1heFdpZHRoOjQ4MCxhbGlnbjoiY2VudGVyIixzdHJva2VXaWR0aDowLHN0cm9rZUNvbG9yOiJibGFjayIscmFpbmJvdzohMSx2aXNpYmxlOiExLHRhcmdldFNpemU6bnVsbCxmdWxsVGV4dDpudWxsfX1nZXQgU1RBVEVfS0VZKCl7cmV0dXJuIlNjcmF0Y2gudGV4dCJ9X2dldEZvbnRzKCl7cmV0dXJuW3t0ZXh0OiJTYW5zIFNlcmlmIix2YWx1ZToiU2FucyBTZXJpZiJ9LHt0ZXh0OiJTZXJpZiIsdmFsdWU6IlNlcmlmIn0se3RleHQ6IkhhbmR3cml0aW5nIix2YWx1ZToiSGFuZHdyaXRpbmcifSx7dGV4dDoiTWFya2VyIix2YWx1ZToiTWFya2VyIn0se3RleHQ6IkN1cmx5Iix2YWx1ZToiQ3VybHkifSx7dGV4dDoiUGl4ZWwiLHZhbHVlOiJQaXhlbCJ9LHt0ZXh0OiJQbGF5ZnVsIix2YWx1ZToiUGxheWZ1bCJ9LHt0ZXh0OiJCdWJibHkiLHZhbHVlOiJCdWJibHkifSx7dGV4dDoiQXJjYWRlIix2YWx1ZToiQXJjYWRlIn0se3RleHQ6IkJpdHMgYW5kIEJ5dGVzIix2YWx1ZToiQml0cyBhbmQgQnl0ZXMifSx7dGV4dDoiVGVjaG5vbG9naWNhbCIsdmFsdWU6IlRlY2hub2xvZ2ljYWwifSx7dGV4dDoiU2NyYXRjaCIsdmFsdWU6IlNjcmF0Y2gifSx7dGV4dDoiQXJjaGl2byIsdmFsdWU6IkFyY2hpdm8ifSx7dGV4dDoiQXJjaGl2byBCbGFjayIsdmFsdWU6IkFyY2hpdm8gQmxhY2sifSwuLi50aGlzLnJ1bnRpbWUuZm9udE1hbmFnZXIuZ2V0Rm9udHMoKS5tYXAoQT0+KHt0ZXh0OkEubmFtZSx2YWx1ZTpBLmZhbWlseX0pKSx7dGV4dDoicmFuZG9tIGZvbnQiLHZhbHVlOiJSYW5kb20ifV19Z2V0SW5mbygpe3JldHVybntpZDoidGV4dCIsbmFtZToiQW5pbWF0ZWQgVGV4dCIsYmxvY2tJY29uVVJJOkIsbWVudUljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU5EQWlJR2hsYVdkb2REMGlOREFpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUkrUEdjZ1ptbHNiRDBpYm05dVpTSWdabWxzYkMxeWRXeGxQU0psZG1WdWIyUmtJajQ4Y0dGMGFDQmtQU0pOTWpjdU9ETTBJRGxoTXlBeklEQWdNREV5TGpVME5pQXhMalF4TW13dU1EazNMakUyTnk0d05UUXVNVEV1TURVeUxqRXhNaTR3TkRndU1URXlJRFl1TWpJeUlERTJZVE11TURBeElETXVNREF4SURBZ01ERXRNaTR5TnlBMExqQTBNV3d0TGpFNExqQXlOUzB1TVRFMUxqQXhNUzB1TVRFMkxqQXdOeTB1TVRFMUxqQXdNMmd0TVM0NE5UVmhNeUF6SURBZ01ERXRNaTQxTkRVdE1TNDBNVEpzTFM0d09UWXRMakUyTnkwdU1UQTNMUzR5TWpJdExqQTBPQzB1TVRFeFRESTRMams0TXlBeU9HZ3ROQzQ1TTJ3dExqUXlNaUF4TGpBNE4yRXpMakF3TXlBekxqQXdNeUF3SURBeExUSXVOREVnTVM0NE9EbHNMUzR4T1RNdU1ERTRMUzR4T1RRdU1EQTJMVEV1T1RRdExqQXdNaTB1TURrMkxqQXdNa2czWVRNZ015QXdJREF4TFRJdU9EY3RNeTQ0TnpKc0xqQTNNaTB1TWpBNUlEWXVNVGd6TFRFMllUTXVNREF4SURNdU1EQXhJREFnTURFeUxqWXdOQzB4TGpreE0wd3hNeTR4T0RRZ09Xd3pMamt1TURBeExqQTVPUzB1TURBeElETXVPVEkwTGpBd01pNHdPVFV0TGpBd01pQXpMamt3TlM0d01ESXVNRGsxTFM0d01ESm9NaTQyTXpKNklpQm1hV3hzTFc5d1lXTnBkSGs5SWk0eE5TSWdabWxzYkQwaUl6QXdNQ0l2UGp4d1lYUm9JR1E5SWsweU5TNDJOak1nTWpGc0xqZ3hOaTB5TGpBNU9TNDRNVFlnTWk0d09UbG9MVEV1TmpNeWVtMHhNQzR5TlRnZ05pNHlOelZzTFRZdU1qSXpMVEUyTFM0d056VXRMakUyT0MwdU1EZzFMUzR4TkRWakxTNHpPRGN0TGpZeE1TMHhMakF4T1MwdU9UWXlMVEV1TnpBekxTNDVOakpvTFRJdU5qTXpiQzB1TURrMkxqQXdNaTB1TURZeUxTNHdNREZNTWpFdU1qQXlJREV3YkMwdU1EazJMakF3TWkwdU1EWXlMUzR3TURGTU1UY3VNVGd6SURFd2JDMHVNRGcyTGpBd01rd3hNeTR4T0RRZ01UQnNMUzR4TmpVdU1EQTNZVEl1TURBeklESXVNREF6SURBZ01EQXRNUzQzTURJZ01TNHlOekpzTFRZdU1UZ3lJREUyTFM0d05Ua3VNVGMxUVRJZ01pQXdJREF3TnlBek1HZ3hNUzQzT1Roc0xqQTRPQzB1TURBeUlERXVPVFE1TGpBd01pNHhOak10TGpBd055NHhOakV0TGpBeE9XRXlJRElnTUNBd01ERXVOVE01TFRFdU1qUTViQzQyTnkweExqY3lOV2cyTGpJNU9Xd3VOamN5SURFdU56STJMakEzTkM0eE5qY3VNRGcyTGpFME5XTXVNemczTGpZeE1TQXhMakF4T0M0NU5qSWdNUzQzTURNdU9UWXlhREV1T0RVMWJDNHhOelF0TGpBd09TNHhOalF0TGpBeU5HTXVPVGMyTFM0eE9EY2dNUzQyTmpJdE1TNHdNRE1nTVM0Mk5qSXRNUzQ1TmpjZ01DMHVNalE0TFM0d05EWXRMalE1TkMwdU1UTTJMUzQzTWpWNklpQm1hV3hzTFc5d1lXTnBkSGs5SWk0eU5TSWdabWxzYkQwaUl6QXdNQ0l2UGp4d1lYUm9JR1E5SWsweE15NHhPRE1nTVRGb015NDRNVGhoTVNBeElEQWdNREV1T1RReElERXVNek00YkMwMUxqYzBNaUF4Tm1FeElERWdNQ0F3TVMwdU9UUXVOall5U0RkaE1TQXhJREFnTURFdExqa3pNeTB4TGpNMmJEWXVNVGd6TFRFMllURWdNU0F3SURBeExqa3pNeTB1TmpSNklpQm1hV3hzUFNJak5FTTVOMFpHSWk4K1BIQmhkR2dnWkQwaVRURTNMakU0TXlBeE1VZ3lNV0V4SURFZ01DQXdNUzQ1TkRJZ01TNHpNemhzTFRVdU56UXlJREUyWVRFZ01TQXdJREF4TFM0NU5ERXVOall5YUMwMExqSTJZVEVnTVNBd0lEQXhMUzQ1TXpJdE1TNHpObXcyTGpFNE15MHhObUV4SURFZ01DQXdNUzQ1TXpNdExqWTBlaUlnWm1sc2JEMGlJME5HTmpORFJpSXZQanh3WVhSb0lHUTlJazB5TVM0eU1ESWdNVEZJTWpWaE1TQXhJREFnTURFdU9UTXpJREV1TXpZeGJDMDJMakl3TXlBeE5tRXhJREVnTUNBd01TMHVPVE15TGpZek9VZ3hOV0V4SURFZ01DQXdNUzB1T1RNekxURXVNell4YkRZdU1qQXpMVEUyWVRFZ01TQXdJREF4TGprek1pMHVOak01ZWlJZ1ptbHNiRDBpSTBaR1FrWXdNQ0l2UGp4d1lYUm9JR1E5SWsweU55NDRNelFnTVRGaE1TQXhJREFnTURFdU9UTXlMall6T0d3MkxqSXlNaUF4TmtFeElERWdNQ0F3TVRNMExqQTFOaUF5T1dndE1TNDROVFJoTVNBeElEQWdNREV0TGprek1pMHVOak00VERNd0xqTTFNU0F5Tm1ndE55NDJOalpzTFM0NU1Ua2dNaTR6TmpKaE1TQXhJREFnTURFdExqa3pNaTQyTXpoSU1UZ3VPVGhoTVNBeElEQWdNREV0TGprek1pMHhMak0yTW13MkxqSXlNaTB4Tm1FeElERWdNQ0F3TVM0NU16SXRMall6T0hwdExURXVNekUySURVdU1UUXpUREkwTGpJMElESXlhRFF1TlRVMmJDMHlMakkzT0MwMUxqZzFOM29pSUdacGJHdzlJaU5HUmtZaUx6NDhMMmMrUEM5emRtYysiLGNvbG9yMToiIzk5NjZmZiIsY29sb3IyOiIjOGE1Y2U2Iixjb2xvcjM6IiM3YTUyY2MiLGJsb2Nrczpbe29wY29kZToic2V0VGV4dCIsdGV4dDpuKHtpZDoidGV4dC5zZXRUZXh0IixkZWZhdWx0OiJzaG93IHRleHQgW1RFWFRdIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpyLkNPTU1BTkQsYXJndW1lbnRzOntURVhUOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiV2VsY29tZSB0byBteSBwcm9qZWN0ISJ9fX0se29wY29kZToiYW5pbWF0ZVRleHQiLHRleHQ6bih7aWQ6InRleHQuYW5pbWF0ZVRleHQiLGRlZmF1bHQ6IltBTklNQVRFXSB0ZXh0IFtURVhUXSIsZGVzY3JpcHRpb246IiJ9KSxibG9ja1R5cGU6ci5DT01NQU5ELGFyZ3VtZW50czp7QU5JTUFURTp7dHlwZTppLlNUUklORyxtZW51OiJBTklNQVRFIixkZWZhdWx0VmFsdWU6InJhaW5ib3cifSxURVhUOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVyZSB3ZSBnbyEifX19LHtvcGNvZGU6ImNsZWFyVGV4dCIsdGV4dDpuKHtpZDoidGV4dC5jbGVhclRleHQiLGRlZmF1bHQ6InNob3cgc3ByaXRlIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpyLkNPTU1BTkQsYXJndW1lbnRzOnt9fSwiLS0tIix7b3Bjb2RlOiJzZXRGb250Iix0ZXh0Om4oe2lkOiJ0ZXh0LnNldEZvbnQiLGRlZmF1bHQ6InNldCBmb250IHRvIFtGT05UXSIsZGVzY3JpcHRpb246IiJ9KSxibG9ja1R5cGU6ci5DT01NQU5ELGFyZ3VtZW50czp7Rk9OVDp7dHlwZTppLlNUUklORyxtZW51OiJGT05UIixkZWZhdWx0VmFsdWU6IlBpeGVsIn19fSx7b3Bjb2RlOiJzZXRDb2xvciIsdGV4dDpuKHtpZDoidGV4dC5zZXRDb2xvciIsZGVmYXVsdDoic2V0IHRleHQgY29sb3IgdG8gW0NPTE9SXSIsZGVzY3JpcHRpb246IiJ9KSxibG9ja1R5cGU6ci5DT01NQU5ELGFyZ3VtZW50czp7Q09MT1I6e3R5cGU6aS5DT0xPUn19fSx7b3Bjb2RlOiJzZXRXaWR0aCIsdGV4dDpuKHtpZDoidGV4dC5zZXRXaWR0aCIsZGVmYXVsdDoic2V0IHdpZHRoIHRvIFtXSURUSF0gYWxpZ25lZCBbQUxJR05dIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpyLkNPTU1BTkQsYXJndW1lbnRzOntXSURUSDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MjAwfSxBTElHTjp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImxlZnQiLG1lbnU6IkFMSUdOIn19fSx7b3Bjb2RlOiJyYWluYm93Iix0ZXh0Om4oe2lkOiJ0ZXh0LnJhaW5ib3ciLGRlZmF1bHQ6InJhaW5ib3cgZm9yIFtTRUNTXSBzZWNvbmRzIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpyLkNPTU1BTkQsYXJndW1lbnRzOntTRUNTOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfX19LCItLS0iLHtvcGNvZGU6ImFkZExpbmUiLHRleHQ6bih7aWQ6InRleHQuYWRkTGluZSIsZGVmYXVsdDoiYWRkIGxpbmUgW1RFWFRdIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpyLkNPTU1BTkQsYXJndW1lbnRzOntURVhUOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToibW9yZSBsaW5lcyEifX19LCItLS0iLHtvcGNvZGU6InNldE91dGxpbmVXaWR0aCIsdGV4dDpuKHtpZDoidGV4dC5zZXRPdXRsaW5lV2lkdGgiLGRlZmF1bHQ6InNldCBvdXRsaW5lIHdpZHRoIHRvIFtXSURUSF0iLGRlc2NyaXB0aW9uOiIifSksYmxvY2tUeXBlOnIuQ09NTUFORCxhcmd1bWVudHM6e1dJRFRIOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfX19LHtvcGNvZGU6InNldE91dGxpbmVDb2xvciIsdGV4dDpuKHtpZDoidGV4dC5zZXRPdXRsaW5lQ29sb3IiLGRlZmF1bHQ6InNldCBvdXRsaW5lIGNvbG9yIHRvIFtDT0xPUl0iLGRlc2NyaXB0aW9uOiIifSksYmxvY2tUeXBlOnIuQ09NTUFORCxhcmd1bWVudHM6e0NPTE9SOnt0eXBlOmkuQ09MT1J9fX0sIi0tLSIse29wY29kZToiZ2V0VmlzaWJsZSIsdGV4dDoiaXMgdGV4dCB2aXNpYmxlPyIsYmxvY2tUeXBlOnIuQk9PTEVBTn0se29wY29kZToiZ2V0V2lkdGgiLHRleHQ6ImdldCB3aWR0aCBvZiB0aGUgdGV4dCIsYmxvY2tUeXBlOnIuUkVQT1JURVJ9LHtvcGNvZGU6ImdldEhlaWdodCIsdGV4dDoiZ2V0IGhlaWdodCBvZiB0aGUgdGV4dCIsYmxvY2tUeXBlOnIuUkVQT1JURVJ9LHtvcGNvZGU6ImdldERpc3BsYXllZFRleHQiLGJsb2NrVHlwZTpyLlJFUE9SVEVSLHRleHQ6ImRpc3BsYXllZCB0ZXh0In0se29wY29kZToiZ2V0UmVuZGVyIixibG9ja1R5cGU6ci5SRVBPUlRFUix0ZXh0OiJnZXQgZGF0YSB1cmkgb2YgbGFzdCByZW5kZXJlZCB0ZXh0In0se29wY29kZToic2V0QWxpZ25tZW50IixibG9ja1R5cGU6ci5DT01NQU5ELHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgYWxpZ24gdGV4dCB0byBbQUxJR05dIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntBTElHTjp7dHlwZTppLlNUUklORyxtZW51OiJ0d0FsaWduIn19fSx7b3Bjb2RlOiJzZXRXaWR0aFZhbHVlIixibG9ja1R5cGU6ci5DT01NQU5ELHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgc2V0IHdpZHRoIHRvIFtXSURUSF0iLGhpZGVGcm9tUGFsZXR0ZTohMCxhcmd1bWVudHM6e1dJRFRIOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToyMDB9fX0se29wY29kZToicmVzZXRXaWR0aCIsYmxvY2tUeXBlOnIuQ09NTUFORCx0ZXh0OiIoTk9UIFVTQUJMRSBZRVQpIHJlc2V0IHRleHQgd2lkdGgiLGhpZGVGcm9tUGFsZXR0ZTohMH0sIi0tLSIse29wY29kZToiZ2V0TGluZXMiLGJsb2NrVHlwZTpyLlJFUE9SVEVSLHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgIyBvZiBsaW5lcyIsaGlkZUZyb21QYWxldHRlOiEwLGRpc2FibGVNb25pdG9yOiEwfSwiLS0tIix7b3Bjb2RlOiJzdGFydEFuaW1hdGUiLGJsb2NrVHlwZTpyLkNPTU1BTkQsdGV4dDoiKE5PVCBVU0FCTEUgWUVUKSBzdGFydCBbQU5JTUFURV0gYW5pbWF0aW9uIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntBTklNQVRFOnt0eXBlOmkuU1RSSU5HLG1lbnU6InR3QW5pbWF0ZSIsZGVmYXVsdFZhbHVlOiJyYWluYm93In19fSx7b3Bjb2RlOiJhbmltYXRlVW50aWxEb25lIixibG9ja1R5cGU6ci5DT01NQU5ELHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgYW5pbWF0ZSBbQU5JTUFURV0gdW50aWwgZG9uZSIsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7QU5JTUFURTp7dHlwZTppLlNUUklORyxtZW51OiJ0d0FuaW1hdGUiLGRlZmF1bHRWYWx1ZToicmFpbmJvdyJ9fX0se29wY29kZToiaXNBbmltYXRpbmciLGJsb2NrVHlwZTpyLkJPT0xFQU4sdGV4dDoiKE5PVCBVU0FCTEUgWUVUKSBpcyBhbmltYXRpbmc/IixoaWRlRnJvbVBhbGV0dGU6ITAsZGlzYWJsZU1vbml0b3I6ITB9LCItLS0iLHtvcGNvZGU6InNldEFuaW1hdGVEdXJhdGlvbiIsYmxvY2tUeXBlOnIuQ09NTUFORCx0ZXh0OiIoTk9UIFVTQUJMRSBZRVQpIHNldCBbQU5JTUFURV0gZHVyYXRpb24gdG8gW05VTV0gc2Vjb25kcyIsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7QU5JTUFURTp7dHlwZTppLlNUUklORyxtZW51OiJ0d0FuaW1hdGVEdXJhdGlvbiIsZGVmYXVsdFZhbHVlOiJyYWluYm93In0sTlVNOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTozfX19LHtvcGNvZGU6InJlc2V0QW5pbWF0ZUR1cmF0aW9uIixibG9ja1R5cGU6ci5DT01NQU5ELHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgcmVzZXQgW0FOSU1BVEVdIGR1cmF0aW9uIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntBTklNQVRFOnt0eXBlOmkuU1RSSU5HLG1lbnU6InR3QW5pbWF0ZUR1cmF0aW9uIixkZWZhdWx0VmFsdWU6InJhaW5ib3cifX19LHtvcGNvZGU6ImdldEFuaW1hdGVEdXJhdGlvbiIsYmxvY2tUeXBlOnIuUkVQT1JURVIsdGV4dDoiKE5PVCBVU0FCTEUgWUVUKSBbQU5JTUFURV0gZHVyYXRpb24iLGhpZGVGcm9tUGFsZXR0ZTohMCxhcmd1bWVudHM6e0FOSU1BVEU6e3R5cGU6aS5TVFJJTkcsbWVudToidHdBbmltYXRlRHVyYXRpb24iLGRlZmF1bHRWYWx1ZToicmFpbmJvdyJ9fX0sIi0tLSIse29wY29kZToic2V0VHlwZURlbGF5IixibG9ja1R5cGU6ci5DT01NQU5ELHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgc2V0IHR5cGluZyBkZWxheSB0byBbTlVNXSBzZWNvbmRzIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntOVU06e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOi4xfX19LHtvcGNvZGU6InJlc2V0VHlwZURlbGF5IixibG9ja1R5cGU6ci5DT01NQU5ELHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgcmVzZXQgdHlwaW5nIGRlbGF5IixoaWRlRnJvbVBhbGV0dGU6ITB9LHtvcGNvZGU6ImdldFR5cGVEZWxheSIsYmxvY2tUeXBlOnIuUkVQT1JURVIsdGV4dDoiKE5PVCBVU0FCTEUgWUVUKSB0eXBpbmcgZGVsYXkiLGhpZGVGcm9tUGFsZXR0ZTohMCxkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIse29wY29kZToidGV4dEFjdGl2ZSIsYmxvY2tUeXBlOnIuQk9PTEVBTix0ZXh0OiIoVFVSQk9XQVJQIEJMT0NLKSBpcyBzaG93aW5nIHRleHQ/IixoaWRlRnJvbVBhbGV0dGU6ITAsZGlzYWJsZU1vbml0b3I6ITB9LHtvcGNvZGU6ImdldFRleHRBdHRyaWJ1dGUiLGJsb2NrVHlwZTpyLlJFUE9SVEVSLHRleHQ6IihOT1QgVVNBQkxFIFlFVCkgdGV4dCBbQVRUUklCVVRFXSIsYXJndW1lbnRzOntBVFRSSUJVVEU6e3R5cGU6aS5TVFJJTkcsbWVudToidHdBbmltYXRlIn19LGRpc2FibGVNb25pdG9yOiEwLGhpZGVGcm9tUGFsZXR0ZTohMH1dLG1lbnVzOntGT05UOntpdGVtczoiX2dldEZvbnRzIixpc1R5cGVhYmxlOiEwfSxBTElHTjp7aXRlbXM6W3t0ZXh0OiJsZWZ0Iix2YWx1ZToibGVmdCJ9LHt0ZXh0OiJjZW50ZXIiLHZhbHVlOiJjZW50ZXIifSx7dGV4dDoicmlnaHQiLHZhbHVlOiJyaWdodCJ9XX0sQU5JTUFURTp7aXRlbXM6W3t0ZXh0OiJ0eXBlIix2YWx1ZToidHlwZSJ9LHt0ZXh0OiJyYWluYm93Iix2YWx1ZToicmFpbmJvdyJ9LHt0ZXh0OiJ6b29tIix2YWx1ZToiem9vbSJ9XX0sdHdBbmltYXRlOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJ0eXBlIix2YWx1ZToidHlwZSJ9LHt0ZXh0OiJyYWluYm93Iix2YWx1ZToicmFpbmJvdyJ9LHt0ZXh0OiJ6b29tIix2YWx1ZToiem9vbSJ9XX0sdHdBbmltYXRlRHVyYXRpb246e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6InJhaW5ib3ciLHZhbHVlOiJyYWluYm93In0se3RleHQ6Inpvb20iLHZhbHVlOiJ6b29tIn1dfSx0d0FsaWduOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJsZWZ0Iix2YWx1ZToibGVmdCJ9LHt0ZXh0OiJjZW50ZXIiLHZhbHVlOiJjZW50ZXIifSx7dGV4dDoicmlnaHQiLHZhbHVlOiJyaWdodCJ9XX19fX1zZXRUZXh0KEEsZSl7Y29uc3QgdD10aGlzLl9nZXRUZXh0U3RhdGUoZS50YXJnZXQpO3QudGV4dD10aGlzLl9mb3JtYXRUZXh0KEEuVEVYVCksdC52aXNpYmxlPSEwLHQuYW5pbWF0aW5nPSExLHRoaXMuX3JlbmRlclRleHQoZS50YXJnZXQpfWNsZWFyVGV4dChBLGUpe2NvbnN0IHQ9ZS50YXJnZXQsbj10aGlzLl9nZXRUZXh0U3RhdGUodCk7bi52aXNpYmxlPSExLG4uYW5pbWF0aW5nPSExO2NvbnN0IGk9dC5nZXRDb3N0dW1lcygpW3QuY3VycmVudENvc3R1bWVdO2kmJnRoaXMucnVudGltZS5yZW5kZXJlci51cGRhdGVEcmF3YWJsZVNraW5JZCh0LmRyYXdhYmxlSUQsaS5za2luSWQpfXN0b3BBbGwoKXt0aGlzLnJ1bnRpbWUudGFyZ2V0cy5mb3JFYWNoKEE9Pnt0aGlzLmNsZWFyVGV4dCh7fSx7dGFyZ2V0OkF9KX0pfWFkZExpbmUoQSxlKXtjb25zdCB0PXRoaXMuX2dldFRleHRTdGF0ZShlLnRhcmdldCk7dC50ZXh0Kz0iXG4iLmNvbmNhdCh0aGlzLl9mb3JtYXRUZXh0KEEuVEVYVCkpLHQudmlzaWJsZT0hMCx0LmFuaW1hdGluZz0hMSx0aGlzLl9yZW5kZXJUZXh0KGUudGFyZ2V0KX1zZXRGb250KEEsZSl7Y29uc3QgdD10aGlzLl9nZXRUZXh0U3RhdGUoZS50YXJnZXQpOyJSYW5kb20iPT09QS5GT05UP3QuZm9udD10aGlzLl9yYW5kb21Gb250T3RoZXJUaGFuKHQuZm9udCk6dC5mb250PUEuRk9OVCx0aGlzLl9yZW5kZXJUZXh0KGUudGFyZ2V0KX1fcmFuZG9tRm9udE90aGVyVGhhbihBKXtjb25zdCBlPXRoaXMuRk9OVF9JRFMuZmlsdGVyKGU9PmUhPT1BKTtyZXR1cm4gZVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqZS5sZW5ndGgpXX1zZXRDb2xvcihBLGUpe3RoaXMuX2dldFRleHRTdGF0ZShlLnRhcmdldCkuY29sb3I9by50b1N0cmluZyhBLkNPTE9SKSx0aGlzLl9yZW5kZXJUZXh0KGUudGFyZ2V0KX1zZXRXaWR0aChBLGUpe2NvbnN0IHQ9dGhpcy5fZ2V0VGV4dFN0YXRlKGUudGFyZ2V0KTt0Lm1heFdpZHRoPW8udG9OdW1iZXIoQS5XSURUSCksdC5hbGlnbj1BLkFMSUdOLHRoaXMuX3JlbmRlclRleHQoZS50YXJnZXQpfXNldFNpemUoQSxlKXt0aGlzLl9nZXRUZXh0U3RhdGUoZS50YXJnZXQpLnNpemU9by50b051bWJlcihBLlNJWkUpLHRoaXMuX3JlbmRlclRleHQoZS50YXJnZXQpfXNldEFsaWduKEEsZSl7Y29uc3QgdD10aGlzLl9nZXRUZXh0U3RhdGUoZS50YXJnZXQpO3QubWF4V2lkdGg9by50b051bWJlcihBLldJRFRIKSx0LmFsaWduPUEuQUxJR04sdGhpcy5fcmVuZGVyVGV4dChlLnRhcmdldCl9c2V0T3V0bGluZVdpZHRoKEEsZSl7dGhpcy5fZ2V0VGV4dFN0YXRlKGUudGFyZ2V0KS5zdHJva2VXaWR0aD1vLnRvTnVtYmVyKEEuV0lEVEgpLHRoaXMuX3JlbmRlclRleHQoZS50YXJnZXQpfXNldE91dGxpbmVDb2xvcihBLGUpe2NvbnN0IHQ9dGhpcy5fZ2V0VGV4dFN0YXRlKGUudGFyZ2V0KTt0LnN0cm9rZUNvbG9yPW8udG9TdHJpbmcoQS5DT0xPUiksdC52aXNpYmxlPSEwLHRoaXMuX3JlbmRlclRleHQoZS50YXJnZXQpfXRleHRBY3RpdmUoQSxlKXtyZXR1cm4gdGhpcy5nZXRWaXNpYmxlKEEsZSl9Z2V0VmlzaWJsZShBLGUpe3JldHVybiB0aGlzLl9nZXRUZXh0U3RhdGUoZS50YXJnZXQpLnZpc2libGV9Z2V0RGlzcGxheWVkVGV4dChBLGUpe3JldHVybiB0aGlzLl9nZXRUZXh0U3RhdGUoZS50YXJnZXQpLnRleHR9Z2V0UmVuZGVyKEEsZSl7Y29uc3QgdD10aGlzLl9nZXRUZXh0U2tpbihlLnRhcmdldCk7aWYodClyZXR1cm4gdC5fY2FudmFzLnRvRGF0YVVSTCgpfWdldFdpZHRoKEEsZSl7Y29uc3QgdD10aGlzLl9nZXRUZXh0U2tpbihlLnRhcmdldCk7cmV0dXJuIHQ/dC53aWR0aDowfWdldEhlaWdodChBLGUpe2NvbnN0IHQ9dGhpcy5fZ2V0VGV4dFNraW4oZS50YXJnZXQpO3JldHVybiB0P3QuaGVpZ2h0OjB9X2dldFRleHRTa2luKEEpe2NvbnN0IGU9dGhpcy5fZ2V0VGV4dFN0YXRlKEEpO2lmKCFlKXJldHVybjtpZighZS5za2luSWQpcmV0dXJuO3JldHVybiB0aGlzLnJ1bnRpbWUucmVuZGVyZXIuX2FsbFNraW5zW2Uuc2tpbklkXX1fYW5pbWF0ZVRleHQoQSxlKXt2YXIgdDtjb25zdCBuPWUudGFyZ2V0LGk9dGhpcy5fZ2V0VGV4dFN0YXRlKG4pO2lmKG51bGw9PT1pLmZ1bGxUZXh0KXJldHVybiBpLmZ1bGxUZXh0PXRoaXMuX2Zvcm1hdFRleHQoQS5URVhUKSxpLnRleHQ9bnVsbCE9PSh0PWkuZnVsbFRleHRbMF0pJiZ2b2lkIDAhPT10P3Q6IiIsaS52aXNpYmxlPSEwLGkuYW5pbWF0aW5nPSEwLHRoaXMuX3JlbmRlclRleHQobiksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSxuZXcgUHJvbWlzZShBPT57Y29uc3QgZT1zZXRJbnRlcnZhbCgoKT0+e2kuYW5pbWF0aW5nJiZpLnZpc2libGUmJmkudGV4dCE9PWkuZnVsbFRleHQ/aS50ZXh0PWkuZnVsbFRleHQuc3Vic3RyaW5nKDAsaS50ZXh0Lmxlbmd0aCsxKTooaS5mdWxsVGV4dD1udWxsLGNsZWFySW50ZXJ2YWwoZSksQSgpKSx0aGlzLl9yZW5kZXJUZXh0KG4pLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9LDYwKX0pfV96b29tVGV4dChBLGUpe2NvbnN0IHQ9ZS50YXJnZXQsbj10aGlzLl9nZXRUZXh0U3RhdGUodCk7aWYobnVsbCE9PW4udGFyZ2V0U2l6ZSlyZXR1cm47Y29uc3QgaT1uZXcgYSxyPTFlMypvLnRvTnVtYmVyKEEuU0VDU3x8LjUpO3JldHVybiBuLnRleHQ9dGhpcy5fZm9ybWF0VGV4dChBLlRFWFQpLG4udmlzaWJsZT0hMCxuLmFuaW1hdGluZz0hMCxuLnRhcmdldFNpemU9dC5zaXplLHQuc2V0U2l6ZSgwKSx0aGlzLl9yZW5kZXJUZXh0KHQpLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCksaS5zdGFydCgpLG5ldyBQcm9taXNlKEE9Pntjb25zdCBlPXNldEludGVydmFsKCgpPT57Y29uc3Qgbz1pLnRpbWVFbGFwc2VkKCk7bi5hbmltYXRpbmcmJm4udmlzaWJsZSYmbzxyP3Quc2V0U2l6ZShuLnRhcmdldFNpemUqby9yKToodC5zZXRTaXplKG4udGFyZ2V0U2l6ZSksbi50YXJnZXRTaXplPW51bGwsY2xlYXJJbnRlcnZhbChlKSxBKCkpLHRoaXMuX3JlbmRlclRleHQodCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX0sdGhpcy5ydW50aW1lLmN1cnJlbnRTdGVwVGltZSl9KX1hbmltYXRlVGV4dChBLGUpe3N3aXRjaChBLkFOSU1BVEUpe2Nhc2UicmFpbmJvdyI6cmV0dXJuIHRoaXMucmFpbmJvdyhBLGUpO2Nhc2UidHlwZSI6cmV0dXJuIHRoaXMuX2FuaW1hdGVUZXh0KEEsZSk7Y2FzZSJ6b29tIjpyZXR1cm4gdGhpcy5fem9vbVRleHQoQSxlKX19cmFpbmJvdyhBLGUpe2NvbnN0IHQ9ZS50YXJnZXQsbj10aGlzLl9nZXRUZXh0U3RhdGUodCk7aWYobi5yYWluYm93KXJldHVybjtjb25zdCBpPW5ldyBhLHI9MWUzKm8udG9OdW1iZXIoQS5TRUNTfHwyKTtyZXR1cm4gQS5URVhUfHwoQS5URVhUPW4udGV4dCxuLnZpc2libGUpPyhuLnRleHQ9dGhpcy5fZm9ybWF0VGV4dChBLlRFWFQpLG4udmlzaWJsZT0hMCxuLmFuaW1hdGluZz0hMCxuLnJhaW5ib3c9ITAsdGhpcy5fcmVuZGVyVGV4dCh0KSxpLnN0YXJ0KCksbmV3IFByb21pc2UoQT0+e2NvbnN0IGU9c2V0SW50ZXJ2YWwoKCk9Pntjb25zdCBvPWkudGltZUVsYXBzZWQoKTtuLmFuaW1hdGluZyYmbi52aXNpYmxlJiZvPHI/KG4ucmFpbmJvdz0hMCx0LnNldEVmZmVjdCgiY29sb3IiLG8vLTUpKToobi5yYWluYm93PSExLHQuc2V0RWZmZWN0KCJjb2xvciIsMCksY2xlYXJJbnRlcnZhbChlKSxBKCkpLHRoaXMuX3JlbmRlclRleHQodCl9LHRoaXMucnVudGltZS5jdXJyZW50U3RlcFRpbWUpfSkpOnZvaWQgMH1fZ2V0VGV4dFN0YXRlKEEpe2xldCBlPUEuZ2V0Q3VzdG9tU3RhdGUodGhpcy5TVEFURV9LRVkpO3JldHVybiBlfHwoZT1zLnNpbXBsZSh0aGlzLkRFRkFVTFRfVEVYVF9TVEFURSksQS5zZXRDdXN0b21TdGF0ZSh0aGlzLlNUQVRFX0tFWSxlKSksZX1fZm9ybWF0VGV4dChBKXtyZXR1cm4iIj09PUE/QTooIm51bWJlciI9PXR5cGVvZiBBJiZNYXRoLmFicyhBKT49LjAxJiZBJTEhPTAmJihBPUEudG9GaXhlZCgyKSksQT1vLnRvU3RyaW5nKEEpKX1fcmVuZGVyVGV4dChBKXtpZighdGhpcy5ydW50aW1lLnJlbmRlcmVyKXJldHVybjtjb25zdCBlPXRoaXMuX2dldFRleHRTdGF0ZShBKTtpZighZS52aXNpYmxlKXJldHVybjtjb25zdCB0PW51bGw9PT1lLnNraW5JZDtlLnNraW5JZD10aGlzLnJ1bnRpbWUucmVuZGVyZXIudXBkYXRlVGV4dENvc3R1bWVTa2luKGUpLHRoaXMucnVudGltZS5yZW5kZXJlci51cGRhdGVEcmF3YWJsZVNraW5JZChBLmRyYXdhYmxlSUQsZS5za2luSWQpLHQmJnF1ZXVlTWljcm90YXNrKCgpPT57dmFyIEE7bnVsbD09PShBPXRoaXMucnVudGltZS5yZW5kZXJlci5fYWxsU2tpbnNbZS5za2luSWRdKXx8dm9pZCAwPT09QXx8QS5zZXRUZXh0QW5kU3R5bGUoZSl9KX1fb25UYXJnZXRDcmVhdGVkKEEsZSl7aWYoZSl7Y29uc3QgdD1lLmdldEN1c3RvbVN0YXRlKHRoaXMuU1RBVEVfS0VZKTtpZih0KXtBLnNldEN1c3RvbVN0YXRlKHRoaXMuU1RBVEVfS0VZLHMuc2ltcGxlKHQpKTtjb25zdCBlPUEuZ2V0Q3VzdG9tU3RhdGUodGhpcy5TVEFURV9LRVkpO2Uuc2tpbklkPW51bGwsZS5yYWluYm93PSExLGUudGFyZ2V0U2l6ZT1udWxsLGUuZnVsbFRleHQ9bnVsbCxlLmFuaW1hdGluZz0hMTtjb25zdCBuPSgpPT57dGhpcy5fcmVuZGVyVGV4dChBKSxBLm9mZigiRVZFTlRfVEFSR0VUX1ZJU1VBTF9DSEFOR0UiLG4pfTtBLm9uKCJFVkVOVF9UQVJHRVRfVklTVUFMX0NIQU5HRSIsbil9fX1fb25UYXJnZXRXaWxsRXhpdChBKXtjb25zdCBlPXRoaXMuX2dldFRleHRTdGF0ZShBKTtlLnNraW5JZCYmKHRoaXMucnVudGltZS5yZW5kZXJlci5kZXN0cm95U2tpbihlLnNraW5JZCksZS5za2luSWQ9bnVsbCl9c2V0QWxpZ25tZW50KEEpe31zZXRXaWR0aFZhbHVlKEEpe31yZXNldFdpZHRoKEEpe31nZXRMaW5lcyhBKXt9c3RhcnRBbmltYXRlKEEpe31hbmltYXRlVW50aWxEb25lKEEpe31pc0FuaW1hdGluZyhBKXt9c2V0QW5pbWF0ZUR1cmF0aW9uKEEpe31yZXNldEFuaW1hdGVEdXJhdGlvbihBKXt9Z2V0QW5pbWF0ZUR1cmF0aW9uKEEpe31zZXRUeXBlRGVsYXkoQSl7fXJlc2V0VHlwZURlbGF5KEEpe31nZXRUeXBlRGVsYXkoQSl7fXRleHRBY3RpdmUoQSl7fWdldFRleHRBdHRyaWJ1dGUoQSl7fX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNCksaT10KDEpLHI9dCgzKSxvPXQoMikscz0iZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCwiLmNvbmNhdChidG9hKCc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIj48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMTEuNTE4MTUzNzEiIGQ9Ik0yNC40NTcgNy43MDdhMTguNDEgMTguNDEgMCAwIDAtLjM2NSAyLjMxYy0uMDIuMjI0IDAgLjUwNy4wNi44NTIuMDYxLjQwNS4wOTIuNjg5LjA5Mi44NTEgMCAuNTI3LS4zNDUuNzktMS4wMzQuNzktLjQ0NiAwLS43NC0uMTMxLS44ODEtLjM5NS0uMDItLjQ0Ni0uMDEtMS4wNTQuMDMtMS44MjQuMDQtLjkxMi4wNjEtMS41Mi4wNjEtMS44MjQtLjAyIDAtLjA1LS4wMi0uMDkxLS4wNmE5OC41MjIgOTguNTIyIDAgMCAwLTUuMzIuMzY0Yy0uMDQuMjY0LS4wNC41ODggMCAuOTczbC4xMjIgMS4wOTRjLS4wODEuNjI5LS4xMjIgMS41Ni0uMTIyIDIuNzk3LjA2MS41MjcuMDkxIDIuNzg2LjA5MSA2Ljc3OXYyLjIxOWMwIC4zNDQuMDUxLjU4Ny4xNTIuNzNoMS44ODVjLjc3LS4xMDIgMS4xNTUuMjIyIDEuMTU1Ljk3MiAwIC40NDYtLjIxMy43Ni0uNjM4Ljk0Mi0uMjY0LjEwMi0uNzMuMTIyLTEuMzk5LjA2MS0uNDA1LS4wNC0uODgxLS4wNS0xLjQyOC0uMDMtLjc1LjEwMS0xLjY2Mi4xODItMi43MzYuMjQzLTEuMDk0LjA2LTEuNzYzLS4wOTEtMi4wMDYtLjQ1Ni0uMTYyLS4yNDMtLjE2Mi0uNDk2IDAtLjc2LjI4My0uNDQ2IDEuMDIzLS42NjkgMi4yMTktLjY2OS42MjggMCAuOTQyLS4xNzIuOTQyLS41MTYgMC0uMTgzLS4wMS0uMzU1LS4wMy0uNTE3IDAtLjUwNy4wMS0uOTUzLjAzLTEuMzM4LjA2LTEuMDk0LjA2LTIuNjM0IDAtNC42Mi0uMDgxLTIuODc4LS4wNS01LjQ2Mi4wOTEtNy43NTJsLS4wOS0uMDljLS42My4wNC0xLjgwNS4wMy0zLjUyNy0uMDMxLS4wODEgMC0uNy4wNC0xLjg1NC4xMjEuMjgzIDEuOTQ2LjQ0NiAzLjMzNC40ODYgNC4xNjVsLS4wNi44MmMtLjAyMS4zMDUtLjI3NC40NTctLjc2LjQ1Ny0uMzg2IDAtLjcxLS43My0uOTczLTIuMTktLjEyMi0uODctLjI0NC0xLjc1Mi0uMzY1LTIuNjQ0IDAtLjE0Mi0uMDcxLS4zODUtLjIxMy0uNzMtLjEyMi0uMzY0LS4zOS0uOTctLjM5LTEuMTUyIDAtLjY0MS41OTMtLjQ4OSAxLjM2My0uNjEuMDYgMCAuMTYyLjAxLjMwNC4wMy4xNDIuMDIuMjQzLjAzLjMwNC4wM0gxNy4xYTU3LjA5OCA1Ny4wOTggMCAwIDAgNS40MTEtLjQ4NmMuMTIyLS4wNi4zMDQtLjEyMS41NDctLjE4Mi40MjYtLjA0Ljc5LjA2IDEuMDk1LjMwNC4zMDQuMjIzLjQwNS41NDcuMzA0Ljk3MnoiLz48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNmZjRjNGMiIHN0cm9rZS13aWR0aD0iNS43NTkwOTc4NSIgZD0iTTI0LjMzMyA3LjcxcS0uMjQ0IDEuMDY1LS4zNjUgMi4zMTEtLjAzLjMzNS4wNi44NTEuMDkyLjYwOC4wOTIuODUxIDAgLjc5LTEuMDM0Ljc5LS42NjkgMC0uODgxLS4zOTQtLjAzLS42Ny4wMy0xLjgyNC4wNi0xLjM2OC4wNi0xLjgyNC0uMDMgMC0uMDktLjA2MS0yLjgyNy4xMjItNS4zMi4zNjUtLjA2LjM5NSAwIC45NzNsLjEyMiAxLjA5NHEtLjEyMi45NDItLjEyMiAyLjc5Ni4wOTEuNzkuMDkxIDYuNzh2Mi4yMThxMCAuNTE3LjE1Mi43M2gxLjg4NXExLjE1NS0uMTUyIDEuMTU1Ljk3MyAwIC42NjgtLjYzOC45NDItLjM5Ni4xNTItMS4zOTkuMDYtLjYwOC0uMDYtMS40MjgtLjAzLTEuMTI1LjE1Mi0yLjczNi4yNDMtMS42NDIuMDkyLTIuMDA2LS40NTYtLjI0NC0uMzY0IDAtLjc2LjQyNS0uNjY4IDIuMjE5LS42NjguOTQyIDAgLjk0Mi0uNTE3IDAtLjI3NC0uMDMtLjUxNyAwLS43Ni4wMy0xLjMzNy4wOTEtMS42NDIgMC00LjYyLS4xMjItNC4zMTcuMDkxLTcuNzUybC0uMDkxLS4wOTFxLS45NDIuMDYtMy41MjYtLjAzLS4xMjIgMC0xLjg1NC4xMi40MjUgMi45MTkuNDg2IDQuMTY1bC0uMDYuODIxcS0uMDMxLjQ1Ni0uNzYuNDU2LS41NzggMC0uOTc0LTIuMTg5LS4xODItMS4zMDctLjM2NC0yLjY0NCAwLS4yMTMtLjIxMy0uNzMtLjE4Mi0uNTQ3LS4xODItLjgyIDAtLjc2IDEuMTU1LS45NDMuMDkgMCAuMzA0LjAzLjIxMi4wMy4zMDQuMDNoNy41MzhxMi43OTctLjEyIDUuNDExLS40ODUuMTgyLS4wOTIuNTQ3LS4xODMuNjM5LS4wNiAxLjA5NS4zMDQuNDU2LjMzNS4zMDQuOTczeiIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0yNC4zMSA3LjcxNHEtLjI0MyAxLjA2NC0uMzY1IDIuMzEtLjAzLjMzNS4wNjEuODUyLjA5MS42MDguMDkxLjg1IDAgLjc5MS0xLjAzMy43OTEtLjY3IDAtLjg4Mi0uMzk1LS4wMy0uNjY5LjAzLTEuODI0LjA2MS0xLjM2OC4wNjEtMS44MjQtLjAzIDAtLjA5LS4wNi0yLjgyOC4xMjEtNS4zMi4zNjQtLjA2MS4zOTYgMCAuOTczbC4xMjEgMS4wOTRxLS4xMjEuOTQzLS4xMjEgMi43OTcuMDkuNzkuMDkgNi43Nzl2Mi4yMTlxMCAuNTE3LjE1My43M2gxLjg4NHExLjE1Ni0uMTUzIDEuMTU2Ljk3MiAwIC42NjktLjYzOS45NDItLjM5NS4xNTItMS4zOTguMDYxLS42MDgtLjA2LTEuNDI5LS4wMy0xLjEyNS4xNTItMi43MzYuMjQzLTEuNjQxLjA5MS0yLjAwNi0uNDU2LS4yNDMtLjM2NSAwLS43Ni40MjYtLjY2OSAyLjIyLS42NjkuOTQxIDAgLjk0MS0uNTE2IDAtLjI3NC0uMDMtLjUxNyAwLS43Ni4wMy0xLjMzOC4wOTItMS42NDEgMC00LjYyLS4xMjEtNC4zMTcuMDkyLTcuNzUybC0uMDkyLS4wOXEtLjk0Mi4wNi0zLjUyNi0uMDMxLS4xMjEgMC0xLjg1NC4xMjEuNDI2IDIuOTE5LjQ4NiA0LjE2NWwtLjA2LjgycS0uMDMuNDU3LS43Ni40NTctLjU3OCAwLS45NzMtMi4xOS0uMTgyLTEuMzA2LS4zNjUtMi42NDQgMC0uMjEyLS4yMTMtLjczLS4xODItLjU0Ni0uMTgyLS44MiAwLS43NiAxLjE1NS0uOTQyLjA5MSAwIC4zMDQuMDN0LjMwNC4wM2g3LjUzOXEyLjc5Ni0uMTIxIDUuNDEtLjQ4Ni4xODMtLjA5MS41NDgtLjE4Mi42MzgtLjA2MSAxLjA5NC4zMDQuNDU2LjMzNC4zMDQuOTcyeiIvPjwvc3ZnPicpKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0SW5mbygpe3JldHVybntpZDoidHciLG5hbWU6IlR1cmJvV2FycCIsY29sb3IxOiIjZmY0YzRjIixjb2xvcjI6IiNlNjQ0NDQiLGNvbG9yMzoiI2M3M2EzYSIsZG9jc1VSSToiaHR0cHM6Ly9kb2NzLnR1cmJvd2FycC5vcmcvYmxvY2tzIixtZW51SWNvblVSSTpzLGJsb2NrSWNvblVSSTpzLGJsb2Nrczpbe29wY29kZToiZ2V0TGFzdEtleVByZXNzZWQiLHRleHQ6bih7aWQ6InR3LmJsb2Nrcy5sYXN0S2V5UHJlc3NlZCIsZGVmYXVsdDoibGFzdCBrZXkgcHJlc3NlZCIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcmV0dXJucyB0aGUgbGFzdCBrZXkgdGhhdCB3YXMgcHJlc3NlZCJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiZ2V0QnV0dG9uSXNEb3duIix0ZXh0Om4oe2lkOiJ0dy5ibG9ja3MuYnV0dG9uSXNEb3duIixkZWZhdWx0OiJbTU9VU0VfQlVUVE9OXSBtb3VzZSBidXR0b24gZG93bj8iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgd2hldGhlciBhIHNwZWNpZmljIG1vdXNlIGJ1dHRvbiBpcyBkb3duIn0pLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOntNT1VTRV9CVVRUT046e3R5cGU6ci5OVU1CRVIsbWVudToibW91c2VCdXR0b24iLGRlZmF1bHRWYWx1ZToiMCJ9fX1dLG1lbnVzOnttb3VzZUJ1dHRvbjp7aXRlbXM6W3t0ZXh0Om4oe2lkOiJ0dy5ibG9ja3MubW91c2VCdXR0b24ucHJpbWFyeSIsZGVmYXVsdDoiKDApIHByaW1hcnkiLGRlc2NyaXB0aW9uOiJEcm9wZG93biBpdGVtIHRvIHNlbGVjdCBwcmltYXJ5ICh1c3VhbGx5IGxlZnQpIG1vdXNlIGJ1dHRvbiJ9KSx2YWx1ZToiMCJ9LHt0ZXh0Om4oe2lkOiJ0dy5ibG9ja3MubW91c2VCdXR0b24ubWlkZGxlIixkZWZhdWx0OiIoMSkgbWlkZGxlIixkZXNjcmlwdGlvbjoiRHJvcGRvd24gaXRlbSB0byBzZWxlY3QgbWlkZGxlIG1vdXNlIGJ1dHRvbiJ9KSx2YWx1ZToiMSJ9LHt0ZXh0Om4oe2lkOiJ0dy5ibG9ja3MubW91c2VCdXR0b24uc2Vjb25kYXJ5IixkZWZhdWx0OiIoMikgc2Vjb25kYXJ5IixkZXNjcmlwdGlvbjoiRHJvcGRvd24gaXRlbSB0byBzZWxlY3Qgc2Vjb25kYXJ5ICh1c3VhbGx5IHJpZ2h0KSBtb3VzZSBidXR0b24ifSksdmFsdWU6IjIifV0sYWNjZXB0UmVwb3J0ZXJzOiEwfX19fWdldExhc3RLZXlQcmVzc2VkKEEsZSl7cmV0dXJuIGUuaW9RdWVyeSgia2V5Ym9hcmQiLCJnZXRMYXN0S2V5UHJlc3NlZCIpfWdldEJ1dHRvbklzRG93bihBLGUpe2NvbnN0IHQ9by50b051bWJlcihBLk1PVVNFX0JVVFRPTik7cmV0dXJuIGUuaW9RdWVyeSgibW91c2UiLCJnZXRCdXR0b25Jc0Rvd24iLFt0XSl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxKSxpPXQoMykse3ZhbGlkYXRlQXJyYXk6cn09dCgxNCksbz1uZXcodCgyNSkpLHM9WyJtb2RhbCIsInNlbGVjdG9yIiwib25seS1zZWxlY3RvciJdO2xldCBhPSJtb2RhbCIsQj0iIjtjb25zdCBjPShBLGUpPT5uZXcgUHJvbWlzZSh0PT57Y29uc3Qgbj1BPT57dChBKSxnLnJlbW92ZSgpLGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsYyl9O2xldCBpPSExLHI9ITE7Y29uc3Qgcz1BPT57aWYoaSlyZXR1cm47aT0hMDtjb25zdCB0PW5ldyBGaWxlUmVhZGVyO3Qub25sb2FkPSgpPT57bihyP0pTT04uc3RyaW5naWZ5KG8uYnVmZmVyVG9BcnJheSh0LnJlc3VsdCkpOnQucmVzdWx0KX0sdC5vbmVycm9yPSgpPT57Y29uc29sZS5lcnJvcigiRmFpbGVkIHRvIHJlYWQgZmlsZSBhcyB0ZXh0Iix0LmVycm9yKSxuKCIiKX0sInVybCI9PT1lP3QucmVhZEFzRGF0YVVSTChBKToiYnVmZmVyIj09PWU/KHI9ITAsdC5yZWFkQXNBcnJheUJ1ZmZlcihBKSk6dC5yZWFkQXNUZXh0KEEpfSxjPUE9PnsiRXNjYXBlIj09PUEua2V5JiYoQS5zdG9wUHJvcGFnYXRpb24oKSxBLnByZXZlbnREZWZhdWx0KCksbigiIikpfTtkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGMse2NhcHR1cmU6ITB9KTtjb25zdCBnPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2cuY2xhc3NOYW1lPSJleHRlbnNpb24tY29udGVudCIsZy5zdHlsZS5wb3NpdGlvbj0iZml4ZWQiLGcuc3R5bGUudG9wPSIwIixnLnN0eWxlLmxlZnQ9IjAiLGcuc3R5bGUud2lkdGg9IjEwMCUiLGcuc3R5bGUuaGVpZ2h0PSIxMDAlIixnLnN0eWxlLmRpc3BsYXk9ImZsZXgiLGcuc3R5bGUuYWxpZ25JdGVtcz0iY2VudGVyIixnLnN0eWxlLmp1c3RpZnlDb250ZW50PSJjZW50ZXIiLGcuc3R5bGUuYmFja2dyb3VuZD0icmdiYSgwLCAwLCAwLCAwLjUpIixnLnN0eWxlLnpJbmRleD0iMjAwMDAiLGcuc3R5bGUuY29sb3I9ImJsYWNrIixnLnN0eWxlLmNvbG9yU2NoZW1lPSJsaWdodCIsZy5hZGRFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsQT0+e0EuZGF0YVRyYW5zZmVyLnR5cGVzLmluY2x1ZGVzKCJGaWxlcyIpJiYoQS5wcmV2ZW50RGVmYXVsdCgpLEEuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3Q9ImNvcHkiLEUuc3R5bGUuYm9yZGVyQ29sb3I9IiMwM2E5ZmMiKX0pLGcuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ2xlYXZlIiwoKT0+e0Uuc3R5bGUuYm9yZGVyQ29sb3I9IiM4ODgifSksZy5hZGRFdmVudExpc3RlbmVyKCJkcm9wIixBPT57Y29uc3QgZT1BLmRhdGFUcmFuc2Zlci5maWxlc1swXTtlJiYoQj1lLm5hbWUsQS5wcmV2ZW50RGVmYXVsdCgpLHMoZSkpfSksZy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsQT0+e0EudGFyZ2V0PT09ZyYmbigiIil9KTtjb25zdCBFPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpO0Uuc3R5bGUuYm94U2hhZG93PSIwIDAgMTBweCAtNXB4IGN1cnJlbnRDb2xvciIsRS5zdHlsZS5jdXJzb3I9InBvaW50ZXIiLEUuc3R5bGUuZm9udD0iaW5oZXJpdCIsRS5zdHlsZS5iYWNrZ3JvdW5kPSJ3aGl0ZSIsRS5zdHlsZS5wYWRkaW5nPSIxNnB4IixFLnN0eWxlLmJvcmRlclJhZGl1cz0iMTZweCIsRS5zdHlsZS5ib3JkZXI9IjhweCBkYXNoZWQgIi5jb25jYXQoIiM4ODgiKSxFLnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIsRS5zdHlsZS50ZXh0QWxpZ249ImNlbnRlciIsRS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntRLmNsaWNrKCl9KSxFLmZvY3VzKCksZy5hcHBlbmRDaGlsZChFKTtjb25zdCBRPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7US50eXBlPSJmaWxlIixRLmFjY2VwdD1BLFEuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixBPT57Y29uc3QgZT1BLnRhcmdldC5maWxlc1swXTtlJiYoQj1lLm5hbWUscyhlKSl9KTtjb25zdCB1PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3UudGV4dENvbnRlbnQ9IlNlbGVjdCBvciBkcm9wIGZpbGUiLHUuc3R5bGUuZm9udFNpemU9IjEuNWVtIix1LnN0eWxlLm1hcmdpbkJvdHRvbT0iOHB4IixFLmFwcGVuZENoaWxkKHUpO2NvbnN0IGw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksaD1BfHwiYW55IjtsLnRleHRDb250ZW50PSJBY2NlcHRlZCBmb3JtYXRzOiAiLmNvbmNhdChoKSxFLmFwcGVuZENoaWxkKGwpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZyksInNlbGVjdG9yIiE9PWEmJiJvbmx5LXNlbGVjdG9yIiE9PWF8fFEuY2xpY2soKSwib25seS1zZWxlY3RvciI9PT1hJiYoUS5hZGRFdmVudExpc3RlbmVyKCJjYW5jZWwiLCgpPT57bigiIil9KSxnLnJlbW92ZSgpKX0pLGc9KEEsZSx0KT0+e2xldCBuO2lmKCJ1cmwiPT09dCluPShBPT57Zm9yKHZhciBlPUEuc3BsaXQoIiwiKSx0PWVbMF0ubWF0Y2goLzooLio/KTsvKVsxXSxuPWF0b2IoZVsxXSksaT1uLmxlbmd0aCxyPW5ldyBVaW50OEFycmF5KGkpO2ktLTspcltpXT1uLmNoYXJDb2RlQXQoaSk7cmV0dXJuIG5ldyBCbG9iKFtyXSx7dHlwZTp0fSl9KShBKTtlbHNlIGlmKCJidWZmZXIiPT09dCl7Y29uc3QgZT1yKEEpO2UuaXNWYWxpZCYmKEE9by5hcnJheVRvQnVmZmVyKGUuYXJyYXkpKSxuPW5ldyBCbG9iKFtBXSl9ZWxzZSBuPW5ldyBCbG9iKFtBXSk7Y29uc3QgaT1uLHM9VVJMLmNyZWF0ZU9iamVjdFVSTChpKSxhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTthLmhyZWY9cyxhLmRvd25sb2FkPWUsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKSxhLmNsaWNrKCksYS5yZW1vdmUoKSxVUkwucmV2b2tlT2JqZWN0VVJMKHMpfTtBLmV4cG9ydHM9Y2xhc3N7Z2V0SW5mbygpe3JldHVybntpZDoidHdGaWxlcyIsbmFtZToiRmlsZXMiLGNvbG9yMToiI2ZjYjEwMyIsY29sb3IyOiIjZGI5YTM3Iixjb2xvcjM6IiNkYjg5MzciLGJsb2Nrczpbe29wY29kZToic2hvd1BpY2tlciIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoib3BlbiBhIGZpbGUiLGRpc2FibGVNb25pdG9yOiEwLGhpZGVGcm9tUGFsZXR0ZTohMH0se29wY29kZToic2hvd1BpY2tlckV4dGVuc2lvbnMiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6Im9wZW4gYSBbZXh0ZW5zaW9uXSBmaWxlIixhcmd1bWVudHM6e2V4dGVuc2lvbjp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6Ii50eHQifX0saGlkZUZyb21QYWxldHRlOiEwfSx7b3Bjb2RlOiJzaG93UGlja2VyQXMiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6Im9wZW4gYSBmaWxlIGFzIFthc10iLGFyZ3VtZW50czp7YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiZW5jb2RpbmcifX19LHtvcGNvZGU6InNob3dQaWNrZXJFeHRlbnNpb25zQXMiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6Im9wZW4gYSBbZXh0ZW5zaW9uXSBmaWxlIGFzIFthc10iLGFyZ3VtZW50czp7ZXh0ZW5zaW9uOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiLnR4dCJ9LGFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImVuY29kaW5nIn19fSwiLS0tIix7b3Bjb2RlOiJkb3dubG9hZCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJkb3dubG9hZCBbZW5jb2RpbmddIFt0ZXh0XSBhcyBbZmlsZV0iLGFyZ3VtZW50czp7ZW5jb2Rpbmc6e3R5cGU6aS5TVFJJTkcsbWVudToiZW5jb2RpbmcifSx0ZXh0Ont0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8sIHdvcmxkISJ9LGZpbGU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJzYXZlLnR4dCJ9fX0se29wY29kZToic2V0T3Blbk1vZGUiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoic2V0IG9wZW4gZmlsZSBzZWxlY3RvciBtb2RlIHRvIFttb2RlXSIsYXJndW1lbnRzOnttb2RlOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToibW9kYWwiLG1lbnU6ImF1dG9tYXRpY2FsbHlPcGVuIn19fSwiLS0tIix7b3Bjb2RlOiJnZXRGaWxlTmFtZSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoibGFzdCBvcGVuZWQgZmlsZSBuYW1lIixkaXNhYmxlTW9uaXRvcjohMH1dLG1lbnVzOntlbmNvZGluZzp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDoidGV4dCIsdmFsdWU6InRleHQifSx7dGV4dDoiZGF0YTogVVJMIix2YWx1ZToidXJsIn0se3RleHQ6ImFycmF5IGJ1ZmZlciIsdmFsdWU6ImJ1ZmZlciJ9XX0sYXV0b21hdGljYWxseU9wZW46e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6InNob3cgbW9kYWwiLHZhbHVlOiJtb2RhbCJ9LHt0ZXh0OiJvcGVuIHNlbGVjdG9yIGltbWVkaWF0ZWx5Iix2YWx1ZToic2VsZWN0b3IifV19fX19c2hvd1BpY2tlcigpe3JldHVybiBjKCIiLCJ0ZXh0Iil9c2hvd1BpY2tlckV4dGVuc2lvbnMoQSl7cmV0dXJuIGMoQS5leHRlbnNpb24sInRleHQiKX1zaG93UGlja2VyQXMoQSl7cmV0dXJuIGMoIiIsQS5hcyl9c2hvd1BpY2tlckV4dGVuc2lvbnNBcyhBKXtyZXR1cm4gYyhBLmV4dGVuc2lvbixBLmFzKX1kb3dubG9hZChBKXtnKEEudGV4dCxBLmZpbGUsQS5lbmNvZGluZyl9c2V0T3Blbk1vZGUoQSl7cy5pbmNsdWRlcyhBLm1vZGUpP2E9QS5tb2RlOmNvbnNvbGUud2FybigidW5rbm93biBtb2RlIixBLm1vZGUpfWdldEZpbGVOYW1lKCl7cmV0dXJuIEJ8fCIifX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCg3KSxvPXQoMikscz0iXG4lYmxvY2s2PlxuJWJsb2NrNz5cbiVibG9jazI+XG4lYmxvY2szPlxuIi5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsJ1xuPGJsb2NrIHR5cGU9Im1vdGlvbl90dXJucmlnaHRhcm91bmR4eSI+XG4gICAgPHZhbHVlIG5hbWU9IkRFR1JFRVMiPlxuICAgICAgICA8c2hhZG93IHR5cGU9Im1hdGhfbnVtYmVyIj5cbiAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJOVU0iPjE1PC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbiAgICA8dmFsdWUgbmFtZT0iWCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0ibWF0aF9udW1iZXIiPlxuICAgICAgICAgICAgPGZpZWxkIG5hbWU9Ik5VTSI+MDwvZmllbGQ+XG4gICAgICAgIDwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG4gICAgPHZhbHVlIG5hbWU9IlkiPlxuICAgICAgICA8c2hhZG93IHR5cGU9Im1hdGhfbnVtYmVyIj5cbiAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJOVU0iPjA8L2ZpZWxkPlxuICAgICAgICA8L3NoYWRvdz5cbiAgICA8L3ZhbHVlPlxuPC9ibG9jaz5cbjxibG9jayB0eXBlPSJtb3Rpb25fdHVybmxlZnRhcm91bmR4eSI+XG4gICAgPHZhbHVlIG5hbWU9IkRFR1JFRVMiPlxuICAgICAgICA8c2hhZG93IHR5cGU9Im1hdGhfbnVtYmVyIj5cbiAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJOVU0iPjE1PC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbiAgICA8dmFsdWUgbmFtZT0iWCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0ibWF0aF9udW1iZXIiPlxuICAgICAgICAgICAgPGZpZWxkIG5hbWU9Ik5VTSI+MDwvZmllbGQ+XG4gICAgICAgIDwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG4gICAgPHZhbHVlIG5hbWU9IlkiPlxuICAgICAgICA8c2hhZG93IHR5cGU9Im1hdGhfbnVtYmVyIj5cbiAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJOVU0iPjA8L2ZpZWxkPlxuICAgICAgICA8L3NoYWRvdz5cbiAgICA8L3ZhbHVlPlxuPC9ibG9jaz5cbjxibG9jayB0eXBlPSJtb3Rpb25faWZvbnh5Ym91bmNlIj5cbiAgICA8dmFsdWUgbmFtZT0iWCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0ibWF0aF9udW1iZXIiPlxuICAgICAgICAgICAgPGZpZWxkIG5hbWU9Ik5VTSI+MTA8L2ZpZWxkPlxuICAgICAgICA8L3NoYWRvdz5cbiAgICA8L3ZhbHVlPlxuICAgIDx2YWx1ZSBuYW1lPSJZIj5cbiAgICAgICAgPHNoYWRvdyB0eXBlPSJtYXRoX251bWJlciI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iTlVNIj4xMDwvZmllbGQ+XG4gICAgICAgIDwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG48L2Jsb2NrPlxuJWJsb2NrMT5cbicpLmNvbmNhdCgnPHNlcCBnYXA9IjM2Ii8+JywiXG4lYmxvY2swPlxuJWJsb2NrND5cbiVibG9jazU+XG4iKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5zcHJpdGVIb21lcz17fSx0aGlzLmNsb25lSG9tZXM9e319ZGVzZXJpYWxpemUoQSl7dGhpcy5zcHJpdGVIb21lcz1BfXNlcmlhbGl6ZSgpe3JldHVybiB0aGlzLmZpbHRlckhvbWVzKCJzcHJpdGUiLHRoaXMuc3ByaXRlSG9tZXMpfWZpbHRlckhvbWVzKEEsZSl7Y29uc3QgdD17fTtmb3IoY29uc3QgbiBpbiBlKXtsZXQgaT0hMDsiY2xvbmUiPT09QT90aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChuKXx8KGk9ITEpOnRoaXMucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUobil8fChpPSExKSxpJiYodFtuXT1lW25dKX1yZXR1cm4gdH1vcmRlckNhdGVnb3J5QmxvY2tzKEEpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygdm0mJnZtLmVkaXRpbmdUYXJnZXQpe2lmKHZtLmVkaXRpbmdUYXJnZXQuaXNTdGFnZSlyZXR1cm5bJzxsYWJlbCB0ZXh0PSJTdGFnZSBzZWxlY3RlZDogbm8gbW90aW9uIGJsb2NrcyI+PC9sYWJlbD4nXX1sZXQgZT1zLHQ9MDtmb3IoY29uc3QgbiBvZiBBKWU9ZS5yZXBsYWNlKCIlYmxvY2siK3QrIj4iLG4pLHQrKztyZXR1cm5bZV19Z2V0SW5mbygpe3JldHVybntpZDoicG1Nb3Rpb25FeHBhbnNpb24iLG5hbWU6Ik1vdGlvbiBFeHBhbnNpb24iLGNvbG9yMToiIzRDOTdGRiIsY29sb3IyOiIjNDI4MEQ3Iixjb2xvcjM6IiMzMzczQ0MiLGlzRHluYW1pYzohMCxvcmRlckJsb2Nrczp0aGlzLm9yZGVyQ2F0ZWdvcnlCbG9ja3MsYmxvY2tzOlt7b3Bjb2RlOiJyb3RhdGlvblN0eWxlIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJyb3RhdGlvbiBzdHlsZSIsZGlzYWJsZU1vbml0b3I6ITB9LHtvcGNvZGU6ImZlbmNlIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6Im1hbnVhbGx5IGZlbmNlIn0se29wY29kZToic3RlcHRvd2FyZHMiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoibW92ZSBbU1RFUFNdIHN0ZXBzIHRvd2FyZHMgeDogW1hdIHk6IFtZXSIsYXJndW1lbnRzOntTVEVQUzp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEwIn0sWDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxZOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9fSxzd2l0Y2hlczpbe2lzTm9vcDohMH0sInR3ZWVudG93YXJkcyJdLHN3aXRjaFRleHQ6Im1vdmUgc3RlcHMgdG93YXJkcyB4eSJ9LHtvcGNvZGU6InR3ZWVudG93YXJkcyIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJtb3ZlIFtQRVJDRU5UXSUgb2YgdGhlIHdheSB0byB4OiBbWF0geTogW1ldIixhcmd1bWVudHM6e1BFUkNFTlQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9LFg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sWTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifX0sc3dpdGNoZXM6WyJzdGVwdG93YXJkcyIse2lzTm9vcDohMH1dLHN3aXRjaFRleHQ6Im1vdmUgXyUgb2YgdGhlIHdheSB0byB4eSJ9LHtvcGNvZGU6InRvdWNoaW5neHkiLGJsb2NrVHlwZTpuLkJPT0xFQU4sdGV4dDoidG91Y2hpbmcgeDogW1hdIHk6IFtZXT8iLGFyZ3VtZW50czp7WDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxZOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9fSxzd2l0Y2hlczpbe2lzTm9vcDohMH0sInRvdWNoaW5ncmVjdCJdLHN3aXRjaFRleHQ6InRvdWNoaW5nIHh5In0se29wY29kZToidG91Y2hpbmdyZWN0IixibG9ja1R5cGU6bi5CT09MRUFOLHRleHQ6InRvdWNoaW5nIHJlY3RhbmdsZSB4MTogW1gxXSB5MTogW1kxXSB4MjogW1gyXSB5MjogW1kyXT8iLGFyZ3VtZW50czp7WDE6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiItMTAwIn0sWTE6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiItMTAwIn0sWDI6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMDAifSxZMjp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEwMCJ9fSxzd2l0Y2hlczpbInRvdWNoaW5neHkiLHtpc05vb3A6ITB9XSxzd2l0Y2hUZXh0OiJ0b3VjaGluZyByZWN0YW5nbGUifSx7b3Bjb2RlOiJzZXRIb21lIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBteSBob21lIixzd2l0Y2hlczpbe2lzTm9vcDohMH0sImdvdG9Ib21lIl19LHtvcGNvZGU6ImdvdG9Ib21lIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImdvIHRvIGhvbWUiLHN3aXRjaGVzOlsic2V0SG9tZSIse2lzTm9vcDohMH1dfV19fXJvdGF0aW9uU3R5bGUoQSxlKXtyZXR1cm4gZS50YXJnZXQucm90YXRpb25TdHlsZX1mZW5jZShBLGUpe2NvbnN0IHQ9dGhpcy5ydW50aW1lLnJlbmRlcmVyLmdldEZlbmNlZFBvc2l0aW9uT2ZEcmF3YWJsZShlLnRhcmdldC5kcmF3YWJsZUlELFtlLnRhcmdldC54LGUudGFyZ2V0LnldKTtlLnRhcmdldC5zZXRYWSh0WzBdLHRbMV0pfXN0ZXB0b3dhcmRzKEEsZSl7Y29uc3QgdD1vLnRvTnVtYmVyKEEuWCksbj1vLnRvTnVtYmVyKEEuWSksaT1vLnRvTnVtYmVyKEEuU1RFUFMpL01hdGguc3FydCgodC1lLnRhcmdldC54KSoqMisobi1lLnRhcmdldC55KSoqMik7aT49MT9lLnRhcmdldC5zZXRYWSh0LG4pOmUudGFyZ2V0LnNldFhZKCh0LWUudGFyZ2V0LngpKmkrZS50YXJnZXQueCwobi1lLnRhcmdldC55KSppK2UudGFyZ2V0LnkpfXR3ZWVudG93YXJkcyhBLGUpe2NvbnN0IHQ9by50b051bWJlcihBLlgpLG49by50b051bWJlcihBLlkpLGk9by50b051bWJlcihBLlBFUkNFTlQpO2UudGFyZ2V0LnNldFhZKCh0LWUudGFyZ2V0LngpKihpLzEwMCkrZS50YXJnZXQueCwobi1lLnRhcmdldC55KSooaS8xMDApK2UudGFyZ2V0LnkpfXRvdWNoaW5ncmVjdChBLGUpe2xldCB0PW8udG9OdW1iZXIoQS5YMSksbj1vLnRvTnVtYmVyKEEuWDIpLGk9by50b051bWJlcihBLlkxKSxyPW8udG9OdW1iZXIoQS5ZMik7aWYodD5uKXtsZXQgQT10O3Q9bixuPUF9aWYoaT5yKXtsZXQgQT1pO2k9cixpPUF9Y29uc3Qgcz10aGlzLnJ1bnRpbWUucmVuZGVyZXIuX2FsbERyYXdhYmxlc1tlLnRhcmdldC5kcmF3YWJsZUlEXTtpZighcylyZXR1cm4hMTtjb25zdCBhPXMuZ2V0RmFzdEJvdW5kcygpO2Euc25hcFRvSW50KCk7Y29uc3QgQj10aGlzLnJ1bnRpbWUucmVuZGVyZXIuZXhwb3J0cy5SZWN0YW5nbGUsYz1uZXcgQjtpZihjLmluaXRGcm9tQm91bmRzKHQsbixpLHIpLGMuc25hcFRvSW50KCksIWMuaW50ZXJzZWN0cyhhKSlyZXR1cm4hMTtzLnVwZGF0ZUNQVVJlbmRlckF0dHJpYnV0ZXMoKTtjb25zdCBnPUIuaW50ZXJzZWN0KGEsYyk7Zm9yKGxldCBBPWcubGVmdDtBPGcucmlnaHQ7QSsrKWZvcihsZXQgZT1nLmJvdHRvbTtlPGcudG9wO2UrKylpZihzLmlzVG91Y2hpbmcoW0EsZV0pKXJldHVybiEwO3JldHVybiExfXRvdWNoaW5neHkoQSxlKXtjb25zdCB0PW8udG9OdW1iZXIoQS5YKSxuPW8udG9OdW1iZXIoQS5ZKSxpPXRoaXMucnVudGltZS5yZW5kZXJlci5fYWxsRHJhd2FibGVzW2UudGFyZ2V0LmRyYXdhYmxlSURdO3JldHVybiEhaSYmKGkudXBkYXRlQ1BVUmVuZGVyQXR0cmlidXRlcygpLGkuaXNUb3VjaGluZyhbdCxuXSkpfXNldEhvbWUoQSxlKXtjb25zdCB0PWUudGFyZ2V0O2lmKHQuaXNTdGFnZSlyZXR1cm47Y29uc3Qgbj17eDp0LngseTp0Lnksc2l6ZTp0LnNpemUsc3RyZXRjaDpyLnNpbXBsZSh0LnN0cmV0Y2gpLHRyYW5zZm9ybTpyLnNpbXBsZSh0LnRyYW5zZm9ybSksZGlyZWN0aW9uOnQuZGlyZWN0aW9uLHJvdGF0aW9uU3R5bGU6dC5yb3RhdGlvblN0eWxlLHZpc2libGU6dC52aXNpYmxlLGVmZmVjdHM6ci5zaW1wbGUodC5lZmZlY3RzKSxkcmFnZ2FibGU6dC5kcmFnZ2FibGUsY3VycmVudENvc3R1bWU6dC5jdXJyZW50Q29zdHVtZSx0aW50Q29sb3I6dC50aW50Q29sb3Isdm9sdW1lOnQudm9sdW1lfTtpZih0LmlzT3JpZ2luYWwpe2NvbnN0IEE9dC5nZXROYW1lKCk7cmV0dXJuIHRoaXMuc3ByaXRlSG9tZXNbQV09bix2b2lkKHRoaXMuc3ByaXRlSG9tZXM9dGhpcy5maWx0ZXJIb21lcygic3ByaXRlIix0aGlzLnNwcml0ZUhvbWVzKSl9dGhpcy5jbG9uZUhvbWVzW3QuaWRdPW4sdGhpcy5jbG9uZUhvbWVzPXRoaXMuZmlsdGVySG9tZXMoImNsb25lIix0aGlzLmNsb25lSG9tZXMpfWdvdG9Ib21lKEEsZSl7Y29uc3QgdD1lLnRhcmdldDtpZih0LmlzU3RhZ2UpcmV0dXJuO2NvbnN0IG49dC5pc09yaWdpbmFsP3QuZ2V0TmFtZSgpOnQuaWQsaT10LmlzT3JpZ2luYWw/dGhpcy5zcHJpdGVIb21lczp0aGlzLmNsb25lSG9tZXM7aWYoIShuIGluIGkpKXJldHVybjtjb25zdCByPWlbbl07aWYocil7aWYodC5zZXRYWShyLngsci55KSx0LnNldFNpemUoci5zaXplKSx0LnNldFN0cmV0Y2goLi4uci5zdHJldGNoKSx0LnRyYW5zZm9ybVswXT1yLnRyYW5zZm9ybVswXSx0LnRyYW5zZm9ybVsxXT1yLnRyYW5zZm9ybVsxXSx0LnNldERpcmVjdGlvbihyLmRpcmVjdGlvbiksdC5zZXRSb3RhdGlvblN0eWxlKHIucm90YXRpb25TdHlsZSksdC5zZXRWaXNpYmxlKHIudmlzaWJsZSksci5lZmZlY3RzKWZvcihjb25zdCBBIGluIHIuZWZmZWN0cyl7Y29uc3QgZT1yLmVmZmVjdHNbQV07dC5zZXRFZmZlY3QoQSxlKX10LnNldERyYWdnYWJsZShyLmRyYWdnYWJsZSksdC5zZXRDb3N0dW1lKHIuY3VycmVudENvc3R1bWUpLHQudGludENvbG9yPXIudGludENvbG9yLHQudm9sdW1lPXIudm9sdW1lLHRoaXMucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9fX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiBpKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP24oT2JqZWN0KHQpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyKEEsZSx0W2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhBLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHQpKTpuKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfWZ1bmN0aW9uIHIoQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBvPXQoMSkscz10KDMpLGE9dCg5OSksQj10KDIpLGM9dCgyNjQpLGc9YSh2bSksRT1bImFwcGxlIiwiYmFuYW5hIiwicGVhciIsIm9yYW5nZSIsIm1hbmdvIiwic3RyYXdiZXJyeSIsInBpbmVhcHBsZSIsImdyYXBlIiwia2l3aSJdO2Z1bmN0aW9uIFEoQSxlLHQpe3N3aXRjaCh0KXtjYXNlIDE6Y29uc3QgdD17fTtmb3IobGV0IG49MDtuPEE7bisrKXtsZXQgaT0iIi5jb25jYXQoZSwiICIpO2ZvcihsZXQgZT0wO2U8QTtlKyspaSs9IltTVFJJTkciLmNvbmNhdChlKzEsIl0iKTt0WyJqb2luIi5jb25jYXQobisxKV09aX1yZXR1cm4gdH19ZnVuY3Rpb24gdShBKXtjb25zdCBlPVtdLHQ9e307Zm9yKGxldCBuPTA7bjxBO24rKyllLnB1c2goIltTVFJJTkciLmNvbmNhdChuKzEsIl0iKSksdFsiU1RSSU5HIi5jb25jYXQobisxKV09e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOkVbbl0rKG49PT1BLTE/IiI6IiAiKX07Y29uc3Qgbj0iam9pbiIuY29uY2F0KEEpO3JldHVybntvcGNvZGU6bix0ZXh0Omcoe2lkOm4sZGVmYXVsdDoiam9pbiAiLmNvbmNhdChlLmpvaW4oIiAiKSl9KSxibG9ja1R5cGU6by5SRVBPUlRFUixoaWRlRnJvbVBhbGV0dGU6ITAsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOnR9fWZ1bmN0aW9uIGwoQSl7Y29uc3QgZT1bXTtmb3IobGV0IHQ9Mzt0PEE7dCsrKWUucHVzaCh1KHQrMSkpO3JldHVybiBlLm1hcCgoZSx0KT0+e2NvbnN0IG49W107Zm9yKGxldCBlPTM7ZTxBO2UrKyllIT10KzM/bi5wdXNoKCJqb2luIi5jb25jYXQoZSsxKSk6bi5wdXNoKHtpc05vb3A6ITB9KTtyZXR1cm4gZS5zd2l0Y2hUZXh0PSJqb2luIHgiLmNvbmNhdCh0KzQpLGUuc3dpdGNoZXM9bixlfSl9ZnVuY3Rpb24gaChBKXtpZighQSlyZXR1cm4iIjtsZXQgZT0iIjtmb3IobGV0IEE9MjtBPDk7QSsrKXtlKz0yPT09QT8nPGJsb2NrIHR5cGU9Im9wZXJhdG9yX2pvaW4iPic6Mz09PUE/JzxibG9jayB0eXBlPSJvcGVyYXRvcl9qb2luMyI+JzonPGJsb2NrIHR5cGU9InBtT3BlcmF0b3JzRXhwYW5zaW9uX2pvaW4nLmNvbmNhdChBLCciPicpO2ZvcihsZXQgbj0xO248PUE7bisrKXt2YXIgdDtlKz0nPHZhbHVlIG5hbWU9IlNUUklORycuY29uY2F0KG4sJyI+JyksZSs9JzxzaGFkb3cgdHlwZT0idGV4dCI+PGZpZWxkIG5hbWU9IlRFWFQiPicuY29uY2F0KChudWxsIT09KHQ9RVtuLTFdKSYmdm9pZCAwIT09dD90OiIuLi4iKSsiICIsIjwvZmllbGQ+PC9zaGFkb3c+IiksZSs9IjwvdmFsdWU+In1lKz0iPC9ibG9jaz4ifXJldHVybiBlfUEuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSxnLnNldHVwKHsiemgtY24iOmkoe30sUSg5LCLov57mjqXlrZfnrKbkuLIiLDEpKSwiemgtdHciOmkoe30sUSg5LCLlrZfkuLLntYTlkIgiLDEpKX0pLHRoaXMucnVudGltZS5yZWdpc3RlckNvbXBpbGVkRXh0ZW5zaW9uQmxvY2tzKCJwbU9wZXJhdG9yc0V4cGFuc2lvbiIsdGhpcy5nZXRDb21waWxlSW5mbygpKSx0aGlzLnNob3dKb2lucz0hMSx0aGlzLnJlcGxhY2Vycz1PYmplY3QuY3JlYXRlKG51bGwpfWdldEluZm8oKXtyZXR1cm57aWQ6InBtT3BlcmF0b3JzRXhwYW5zaW9uIixuYW1lOiJPcGVyYXRvcnMgRXhwYW5zaW9uIixjb2xvcjE6IiM1OUMwNTkiLGNvbG9yMjoiIzQ2Qjk0NiIsY29sb3IzOiIjMzg5NDM4IixibG9ja3M6W3tvcGNvZGU6InNoaWZ0TGVmdCIsdGV4dDoiW251bTFdIDw8IFtudW0yXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntudW0xOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxudW0yOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTo1fX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJzaGlmdFJpZ2h0IiwiYmlubmFyeUFuZCIsImJpbm5hcnlPciIsImJpbm5hcnlYb3IiLCJiaW5uYXJ5Tm90Il0sc3dpdGNoVGV4dDoibHNoaWZ0In0se29wY29kZToic2hpZnRSaWdodCIsdGV4dDoiW251bTFdID4+IFtudW0yXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntudW0xOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTozMn0sbnVtMjp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6NX19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwic2hpZnRMZWZ0IiwiYmlubmFyeUFuZCIsImJpbm5hcnlPciIsImJpbm5hcnlYb3IiLCJiaW5uYXJ5Tm90Il0sc3dpdGNoVGV4dDoicnNoaWZ0In0se29wY29kZToiYmlubmFyeUFuZCIsdGV4dDoiW251bTFdICYgW251bTJdIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e251bTE6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjMyfSxudW0yOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTo1fX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJzaGlmdExlZnQiLCJzaGlmdFJpZ2h0IiwiYmlubmFyeU9yIiwiYmlubmFyeVhvciIsImJpbm5hcnlOb3QiXSxzd2l0Y2hUZXh0OiJhbmQifSx7b3Bjb2RlOiJiaW5uYXJ5T3IiLHRleHQ6IltudW0xXSB8IFtudW0yXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntudW0xOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTo3fSxudW0yOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTo4fX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJzaGlmdExlZnQiLCJzaGlmdFJpZ2h0IiwiYmlubmFyeUFuZCIsImJpbm5hcnlYb3IiLCJiaW5uYXJ5Tm90Il0sc3dpdGNoVGV4dDoib3IifSx7b3Bjb2RlOiJiaW5uYXJ5WG9yIix0ZXh0OiJbbnVtMV0gXiBbbnVtMl0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGV4dGVuc2lvbnM6WyJjb2xvdXJzX29wZXJhdG9ycyJdLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7bnVtMTp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6N30sbnVtMjp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6Mn19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwic2hpZnRMZWZ0Iiwic2hpZnRSaWdodCIsImJpbm5hcnlBbmQiLCJiaW5uYXJ5T3IiLCJiaW5uYXJ5Tm90Il0sc3dpdGNoVGV4dDoieG9yIn0se29wY29kZToiYmlubmFyeU5vdCIsdGV4dDoifiBbbnVtMV0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGV4dGVuc2lvbnM6WyJjb2xvdXJzX29wZXJhdG9ycyJdLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7bnVtMTp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6Mn19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwic2hpZnRMZWZ0Iiwic2hpZnRSaWdodCIsImJpbm5hcnlBbmQiLCJiaW5uYXJ5T3IiLCJiaW5uYXJ5WG9yIl0sc3dpdGNoVGV4dDoibm90In0sIi0tLSIse29wY29kZToib3JJZkZhbHNleSIsdGV4dDoiW09ORV0gb3IgZWxzZSBbVFdPXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sYWxsb3dEcm9wQW55d2hlcmU6ITAsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntPTkU6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJhIn0sVFdPOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYiJ9fX0se29wY29kZToiaWZJc1RydXRoeSIsdGV4dDoiaWYgW09ORV0gaXMgdHJ1ZSB0aGVuIFtUV09dIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxhbGxvd0Ryb3BBbnl3aGVyZTohMCxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e09ORTp7dHlwZTpzLkJPT0xFQU59LFRXTzp7dHlwZTpzLlNUUklORyxkZWZhdWx0VmFsdWU6InBlcmZlY3QhIn19fSwiLS0tIix7YmxvY2tUeXBlOm8uWE1MLHhtbDonXG4gICAgICAgICAgICA8YmxvY2sgdHlwZT0ib3BlcmF0b3JfbmFuZCI+XG4gICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJPUEVSQU5EMSI+XG4gICAgICAgICAgICAgICAgPHNoYWRvdyB0eXBlPSJjaGVja2JveCIgLz5cbiAgICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9Ik9QRVJBTkQyIj5cbiAgICAgICAgICAgICAgICA8c2hhZG93IHR5cGU9ImNoZWNrYm94IiAvPlxuICAgICAgICAgICAgICA8L3ZhbHVlPlxuICAgICAgICAgICAgPC9ibG9jaz5cbiAgICAgICAgICAgIDxibG9jayB0eXBlPSJvcGVyYXRvcl9ub3IiPlxuICAgICAgICAgICAgICA8dmFsdWUgbmFtZT0iT1BFUkFORDEiPlxuICAgICAgICAgICAgICAgIDxzaGFkb3cgdHlwZT0iY2hlY2tib3giIC8+XG4gICAgICAgICAgICAgIDwvdmFsdWU+XG4gICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJPUEVSQU5EMiI+XG4gICAgICAgICAgICAgICAgPHNoYWRvdyB0eXBlPSJjaGVja2JveCIgLz5cbiAgICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgICAgIDwvYmxvY2s+XG4gICAgICAgICAgICA8YmxvY2sgdHlwZT0ib3BlcmF0b3JfeG9yIj5cbiAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9Ik9QRVJBTkQxIj5cbiAgICAgICAgICAgICAgICA8c2hhZG93IHR5cGU9ImNoZWNrYm94IiAvPlxuICAgICAgICAgICAgICA8L3ZhbHVlPlxuICAgICAgICAgICAgICA8dmFsdWUgbmFtZT0iT1BFUkFORDIiPlxuICAgICAgICAgICAgICAgIDxzaGFkb3cgdHlwZT0iY2hlY2tib3giIC8+XG4gICAgICAgICAgICAgIDwvdmFsdWU+XG4gICAgICAgICAgICA8L2Jsb2NrPlxuICAgICAgICAgICAgPGJsb2NrIHR5cGU9Im9wZXJhdG9yX3hub3IiPlxuICAgICAgICAgICAgICA8dmFsdWUgbmFtZT0iT1BFUkFORDEiPlxuICAgICAgICAgICAgICAgIDxzaGFkb3cgdHlwZT0iY2hlY2tib3giIC8+XG4gICAgICAgICAgICAgIDwvdmFsdWU+XG4gICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJPUEVSQU5EMiI+XG4gICAgICAgICAgICAgICAgPHNoYWRvdyB0eXBlPSJjaGVja2JveCIgLz5cbiAgICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgICAgIDwvYmxvY2s+XG4gICAgICAgICAgICA8YmxvY2sgdHlwZT0ib3BlcmF0b3JfcmFuZG9tQm9vbGVhbiIgLz5cbiAgICAgICAgICAnfSwiLS0tIix7b3Bjb2RlOiJpc051bWJlck11bHRpcGxlT2YiLHRleHQ6ImlzIFtOVU1dIG11bHRpcGxlIG9mIFtNVUxUSVBMRV0/IixibG9ja1R5cGU6by5CT09MRUFOLGV4dGVuc2lvbnM6WyJjb2xvdXJzX29wZXJhdG9ycyJdLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7TlVNOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToyMH0sTVVMVElQTEU6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJpc0ludGVnZXIiLCJpc1ByaW1lIiwiaXNFdmVuIl0sc3dpdGNoVGV4dDoiaXMgbXVsdGlwbGUgb2Y/In0se29wY29kZToiaXNJbnRlZ2VyIix0ZXh0OiJpcyBbTlVNXSBhbiBpbnRlZ2VyPyIsYmxvY2tUeXBlOm8uQk9PTEVBTixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e05VTTp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6LjV9fSxzd2l0Y2hlczpbe2lzTm9vcDohMH0sImlzTnVtYmVyTXVsdGlwbGVPZiIsImlzUHJpbWUiLCJpc0V2ZW4iXSxzd2l0Y2hUZXh0OiJpcyBpbnRlZ2VyPyJ9LHtvcGNvZGU6ImlzUHJpbWUiLHRleHQ6ImlzIFtOVU1dIGEgcHJpbWUgbnVtYmVyPyIsYmxvY2tUeXBlOm8uQk9PTEVBTixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e05VTTp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6MTN9fSxzd2l0Y2hlczpbe2lzTm9vcDohMH0sImlzTnVtYmVyTXVsdGlwbGVPZiIsImlzSW50ZWdlciIsImlzRXZlbiJdLHN3aXRjaFRleHQ6ImlzIHByaW1lPyJ9LHtvcGNvZGU6ImlzRXZlbiIsdGV4dDoiaXMgW05VTV0gZXZlbj8iLGJsb2NrVHlwZTpvLkJPT0xFQU4sZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntOVU06e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjR9fSxzd2l0Y2hlczpbe2lzTm9vcDohMH0sImlzTnVtYmVyTXVsdGlwbGVPZiIsImlzSW50ZWdlciIsImlzUHJpbWUiXSxzd2l0Y2hUZXh0OiJpcyBldmVuPyJ9LHtvcGNvZGU6ImJldHdlZW5OdW1iZXJzIix0ZXh0OiJpcyBbTlVNXSBiZXR3ZWVuIFtNSU5dIGFuZCBbTUFYXT8iLGJsb2NrVHlwZTpvLkJPT0xFQU4sZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntOVU06e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjV9LE1JTjp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sTUFYOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMH19fSwiLS0tIix7b3Bjb2RlOiJldmFsdWF0ZU1hdGgiLHRleHQ6ImFuc3dlciB0byBbRVFVQVRJT05dIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e0VRVUFUSU9OOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiNSAqIDIifX19LHtvcGNvZGU6InBhcnRPZlJhdGlvIix0ZXh0OiJbUEFSVF0gcGFydCBvZiByYXRpbyBbUkFUSU9dIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1BBUlQ6e3R5cGU6cy5TVFJJTkcsbWVudToicGFydCJ9LFJBVElPOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiMToyIn19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwic2ltcGxpZnlSYXRpbyJdLHN3aXRjaFRleHQ6InBhcnQgb2YgcmF0aW8ifSx7b3Bjb2RlOiJzaW1wbGlmeVJhdGlvIix0ZXh0OiJzaW1wbGlmeSByYXRpbyBbUkFUSU9dIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1JBVElPOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiMToyIn19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwicGFydE9mUmF0aW8iXSxzd2l0Y2hUZXh0OiJzaW1wbGlmeSByYXRpbyJ9LHtvcGNvZGU6InBpIix0ZXh0OiLPgCIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJldWxlciIsImluZmluaXR5Il19LHtvcGNvZGU6ImV1bGVyIix0ZXh0OiJlIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxzd2l0Y2hlczpbe2lzTm9vcDohMH0sInBpIiwiaW5maW5pdHkiXX0se29wY29kZToiaW5maW5pdHkiLHRleHQ6IuKIniIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJwaSIsImV1bGVyIl19LHtvcGNvZGU6InRydW5jYXRlTnVtYmVyIix0ZXh0OiJ0cnVuY2F0ZSBudW1iZXIgW05VTV0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGV4dGVuc2lvbnM6WyJjb2xvdXJzX29wZXJhdG9ycyJdLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7TlVNOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToyLjV9fX0se29wY29kZToiYXRhbjIiLHRleHQ6ImF0YW4yIG9mIHggW1hdIHkgW1ldIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxhcmd1bWVudHM6e1g6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjQ1fSxZOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTo5MH19fSwiLS0tIix7YmxvY2tUeXBlOm8uWE1MLHhtbDonXG4gICAgICAgICAgICA8YmxvY2sgdHlwZT0ib3BlcmF0b3JfY291bnRBcHBlYXJUaW1lcyI+XG4gICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJURVhUMSI+XG4gICAgICAgICAgICAgICAgPHNoYWRvdyB0eXBlPSJ0ZXh0Ij5cbiAgICAgICAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJURVhUIj5hPC9maWVsZD5cbiAgICAgICAgICAgICAgICA8L3NoYWRvdz5cbiAgICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9IlRFWFQyIj5cbiAgICAgICAgICAgICAgICA8c2hhZG93IHR5cGU9InRleHQiPlxuICAgICAgICAgICAgICAgICAgPGZpZWxkIG5hbWU9IlRFWFQiPmFiYyBhYmMgYWJjPC9maWVsZD5cbiAgICAgICAgICAgICAgICA8L3NoYWRvdz5cbiAgICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgICAgIDwvYmxvY2s+XG4gICAgICAgICAgICA8YmxvY2sgdHlwZT0ib3BlcmF0b3JfcmVhZExpbmVJbk11bHRpbGluZVRleHQiPlxuICAgICAgICAgICAgICA8dmFsdWUgbmFtZT0iTElORSI+XG4gICAgICAgICAgICAgICAgPHNoYWRvdyB0eXBlPSJtYXRoX251bWJlciI+XG4gICAgICAgICAgICAgICAgICA8ZmllbGQgbmFtZT0iTlVNIj4xPC9maWVsZD5cbiAgICAgICAgICAgICAgICA8L3NoYWRvdz5cbiAgICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9IlRFWFQiPlxuICAgICAgICAgICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+VGV4dCB3aXRoIG11bHRpcGxlIGxpbmVzIGhlcmU8L2ZpZWxkPlxuICAgICAgICAgICAgICAgIDwvc2hhZG93PlxuICAgICAgICAgICAgICA8L3ZhbHVlPlxuICAgICAgICAgICAgPC9ibG9jaz5cbiAgICAgICAgICAgIDxibG9jayB0eXBlPSJvcGVyYXRvcl90ZXh0SW5jbHVkZXNMZXR0ZXJGcm9tIj5cbiAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9IlRFWFQxIj5cbiAgICAgICAgICAgICAgICA8c2hhZG93IHR5cGU9InRleHQiPlxuICAgICAgICAgICAgICAgICAgPGZpZWxkIG5hbWU9IlRFWFQiPmFiY2RlZjwvZmllbGQ+XG4gICAgICAgICAgICAgICAgPC9zaGFkb3c+XG4gICAgICAgICAgICAgIDwvdmFsdWU+XG4gICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJURVhUMiI+XG4gICAgICAgICAgICAgICAgPHNoYWRvdyB0eXBlPSJ0ZXh0Ij5cbiAgICAgICAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJURVhUIj5mZ2g8L2ZpZWxkPlxuICAgICAgICAgICAgICAgIDwvc2hhZG93PlxuICAgICAgICAgICAgICA8L3ZhbHVlPlxuICAgICAgICAgICAgPC9ibG9jaz5cbiAgICAgICAgICAnfSx7b3Bjb2RlOiJyZXZlcnNlQ2hhcnMiLHRleHQ6InJldmVyc2UgW1RFWFRdIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1RFWFQ6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJIZWxsbyEifX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJzaHVmZmxlQ2hhcnMiXSxzd2l0Y2hUZXh0OiJyZXZlcnNlIHRleHQifSx7b3Bjb2RlOiJzaHVmZmxlQ2hhcnMiLHRleHQ6InNodWZmbGUgW1RFWFRdIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1RFWFQ6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJIZWxsbyEifX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJyZXZlcnNlQ2hhcnMiXSxzd2l0Y2hUZXh0OiJzaHVmZmxlIHRleHQifSx7b3Bjb2RlOiJ0ZXh0QWZ0ZXIiLHRleHQ6InRleHQgYWZ0ZXIgW1RFWFRdIGluIFtCQVNFXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntURVhUOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8ifSxCQVNFOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8gd29ybGQhIn19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwidGV4dEJlZm9yZSJdLHN3aXRjaFRleHQ6InRleHQgYWZ0ZXIifSx7b3Bjb2RlOiJ0ZXh0QmVmb3JlIix0ZXh0OiJ0ZXh0IGJlZm9yZSBbVEVYVF0gaW4gW0JBU0VdIixibG9ja1R5cGU6by5SRVBPUlRFUixleHRlbnNpb25zOlsiY29sb3Vyc19vcGVyYXRvcnMiXSxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1RFWFQ6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ3b3JsZCJ9LEJBU0U6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJIZWxsbyB3b3JsZCEifX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LCJ0ZXh0QWZ0ZXIiXSxzd2l0Y2hUZXh0OiJ0ZXh0IGJlZm9yZSJ9LCItLS0iLHtvcGNvZGU6ImV4YWN0bHlFcXVhbCIsdGV4dDoiW09ORV0gZXhhY3RseSBlcXVhbHMgW1RXT10/IixibG9ja1R5cGU6by5CT09MRUFOLGV4dGVuc2lvbnM6WyJjb2xvdXJzX29wZXJhdG9ycyJdLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7T05FOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYSJ9LFRXTzp7dHlwZTpzLlNUUklORyxkZWZhdWx0VmFsdWU6ImIifX19LHtibG9ja1R5cGU6by5YTUwseG1sOidcbiAgICAgICAgICAgIDxibG9jayB0eXBlPSJvcGVyYXRvcl9jaGFyYWN0ZXJfdG9fY29kZSI+XG4gICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJPTkUiPlxuICAgICAgICAgICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+YTwvZmllbGQ+XG4gICAgICAgICAgICAgICAgPC9zaGFkb3c+XG4gICAgICAgICAgICAgIDwvdmFsdWU+XG4gICAgICAgICAgICA8L2Jsb2NrPlxuICAgICAgICAgICAgPGJsb2NrIHR5cGU9Im9wZXJhdG9yX2NvZGVfdG9fY2hhcmFjdGVyIj5cbiAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9Ik9ORSI+XG4gICAgICAgICAgICAgICAgPHNoYWRvdyB0eXBlPSJ0ZXh0Ij5cbiAgICAgICAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJURVhUIj45NzwvZmllbGQ+XG4gICAgICAgICAgICAgICAgPC9zaGFkb3c+XG4gICAgICAgICAgICAgIDwvdmFsdWU+XG4gICAgICAgICAgICA8L2Jsb2NrPlxuICAgICAgICAgICd9LCItLS0iLHtvcGNvZGU6InNldFJlcGxhY2VyIix0ZXh0OiJzZXQgcmVwbGFjZXIgW1JFUExBQ0VSXSB0byBbVEVYVF0iLGJsb2NrVHlwZTpvLkNPTU1BTkQsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sYXJndW1lbnRzOntSRVBMQUNFUjp7dHlwZTpzLlNUUklORyxkZWZhdWx0VmFsdWU6IiR7cmVwbGFjZXJ9In0sVEVYVDp7dHlwZTpzLlNUUklORyxkZWZhdWx0VmFsdWU6IndvcmxkIn19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwicmVzZXRSZXBsYWNlcnMiXSxzd2l0Y2hUZXh0OiJzZXQgcmVwbGFjZXIifSx7b3Bjb2RlOiJyZXNldFJlcGxhY2VycyIsdGV4dDoicmVzZXQgcmVwbGFjZXJzIixibG9ja1R5cGU6by5DT01NQU5ELGV4dGVuc2lvbnM6WyJjb2xvdXJzX29wZXJhdG9ycyJdLHN3aXRjaGVzOlt7aXNOb29wOiEwfSwic2V0UmVwbGFjZXIiXSxzd2l0Y2hUZXh0OiJyZXNldCByZXBsYWNlcnMifSx7b3Bjb2RlOiJhcHBseVJlcGxhY2VycyIsdGV4dDoiYXBwbHkgcmVwbGFjZXJzIHRvIFtURVhUXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntURVhUOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8gJHtyZXBsYWNlcn0hIn19fSwiLS0tIix7b3Bjb2RlOiJzcGVlZFRvUGl0Y2giLHRleHQ6InNwZWVkIFtTUEVFRF0gdG8gcGl0Y2giLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGV4dGVuc2lvbnM6WyJjb2xvdXJzX29wZXJhdG9ycyJdLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7U1BFRUQ6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjJ9fSxzd2l0Y2hlczpbe2lzTm9vcDohMH0se29wY29kZToicGl0Y2hUb1NwZWVkIixyZW1hcEFyZ3VtZW50czp7U1BFRUQ6IlBJVENIIn19XSxzd2l0Y2hUZXh0OiJzcGVlZCB0byBwaXRjaCJ9LHtvcGNvZGU6InBpdGNoVG9TcGVlZCIsdGV4dDoicGl0Y2ggW1BJVENIXSB0byBzcGVlZCIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZXh0ZW5zaW9uczpbImNvbG91cnNfb3BlcmF0b3JzIl0sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntQSVRDSDp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6MTIwfX0sc3dpdGNoZXM6W3tpc05vb3A6ITB9LHtvcGNvZGU6InNwZWVkVG9QaXRjaCIscmVtYXBBcmd1bWVudHM6e1BJVENIOiJTUEVFRCJ9fV0sc3dpdGNoVGV4dDoicGl0Y2ggdG8gc3BlZWQifSwiLS0tIix7ZnVuYzoidG9nZ2xlSm9pblZpc2liaWxpdHkiLGJsb2NrVHlwZTpvLkJVVFRPTix0ZXh0OnRoaXMuc2hvd0pvaW5zPyJIaWRlIE9sZCBKb2luIEJsb2NrcyI6IlNob3cgT2xkIEpvaW4gQmxvY2tzIn0sLi4ubCg5KSx7YmxvY2tUeXBlOm8uWE1MLHhtbDpoKHRoaXMuc2hvd0pvaW5zKX1dLG1lbnVzOntwYXJ0OnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJmaXJzdCIsdmFsdWU6ImZpcnN0In0se3RleHQ6Imxhc3QiLHZhbHVlOiJsYXN0In1dfX19fXRvZ2dsZUpvaW5WaXNpYmlsaXR5KCl7dGhpcy5zaG93Sm9pbnM9IXRoaXMuc2hvd0pvaW5zLHRoaXMucnVudGltZS5leHRlbnNpb25NYW5hZ2VyLnJlZnJlc2hCbG9ja3MoInBtT3BlcmF0b3JzRXhwYW5zaW9uIil9Z2V0Q29tcGlsZUluZm8oKXtyZXR1cm57aXI6e3NoaWZ0TGVmdDooQSxlKT0+KHtraW5kOiJpbnB1dCIsbnVtMTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwibnVtMSIpLG51bTI6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIm51bTIiKX0pLHNoaWZ0UmlnaHQ6KEEsZSk9Pih7a2luZDoiaW5wdXQiLG51bTE6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIm51bTEiKSxudW0yOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJudW0yIil9KSxiaW5uYXJ5QW5kOihBLGUpPT4oe2tpbmQ6ImlucHV0IixudW0xOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJudW0xIiksbnVtMjpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwibnVtMiIpfSksYmlubmFyeU9yOihBLGUpPT4oe2tpbmQ6ImlucHV0IixudW0xOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJudW0xIiksbnVtMjpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwibnVtMiIpfSksYmlubmFyeVhvcjooQSxlKT0+KHtraW5kOiJpbnB1dCIsbnVtMTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwibnVtMSIpLG51bTI6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIm51bTIiKX0pLGJpbm5hcnlOb3Q6KEEsZSk9Pih7a2luZDoiaW5wdXQiLG51bTE6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIm51bTEiKX0pLG9ySWZGYWxzZXk6KEEsZSk9Pih7a2luZDoiaW5wdXQiLG9uZTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiT05FIiksdHdvOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJUV08iKX0pLGlmSXNUcnV0aHk6KEEsZSk9Pih7a2luZDoiaW5wdXQiLG9uZTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiT05FIiksdHdvOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJUV08iKX0pLHNwZWVkVG9QaXRjaDooQSxlKT0+KHtraW5kOiJpbnB1dCIsc3BlZWQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlNQRUVEIil9KSxwaXRjaFRvU3BlZWQ6KEEsZSk9Pih7a2luZDoiaW5wdXQiLHBpdGNoOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJQSVRDSCIpfSksYXRhbjI6KEEsZSk9Pih7a2luZDoiaW5wdXQiLHg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlgiKSx5OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJZIil9KX0sanM6e3NoaWZ0TGVmdDooQSxlLHQpPT57bGV0e1R5cGVkSW5wdXQ6bixUWVBFX05VTUJFUjppfT10O2NvbnN0IHI9ZS5kZXNjZW5kSW5wdXQoQS5udW0xKS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS5udW0yKS5hc051bWJlcigpO3JldHVybiBuZXcgbigiKCIuY29uY2F0KHIsIiA8PCAiKS5jb25jYXQobywiKSIpLGkpfSxzaGlmdFJpZ2h0OihBLGUsdCk9PntsZXR7VHlwZWRJbnB1dDpuLFRZUEVfTlVNQkVSOml9PXQ7Y29uc3Qgcj1lLmRlc2NlbmRJbnB1dChBLm51bTEpLmFzTnVtYmVyKCksbz1lLmRlc2NlbmRJbnB1dChBLm51bTIpLmFzTnVtYmVyKCk7cmV0dXJuIG5ldyBuKCIoIi5jb25jYXQociwiID4+ICIpLmNvbmNhdChvLCIpIiksaSl9LGJpbm5hcnlBbmQ6KEEsZSx0KT0+e2xldHtUeXBlZElucHV0Om4sVFlQRV9OVU1CRVI6aX09dDtjb25zdCByPWUuZGVzY2VuZElucHV0KEEubnVtMSkuYXNOdW1iZXIoKSxvPWUuZGVzY2VuZElucHV0KEEubnVtMikuYXNOdW1iZXIoKTtyZXR1cm4gbmV3IG4oIigiLmNvbmNhdChyLCIgJiAiKS5jb25jYXQobywiKSIpLGkpfSxiaW5uYXJ5T3I6KEEsZSx0KT0+e2xldHtUeXBlZElucHV0Om4sVFlQRV9OVU1CRVI6aX09dDtjb25zdCByPWUuZGVzY2VuZElucHV0KEEubnVtMSkuYXNOdW1iZXIoKSxvPWUuZGVzY2VuZElucHV0KEEubnVtMikuYXNOdW1iZXIoKTtyZXR1cm4gbmV3IG4oIigiLmNvbmNhdChyLCIgfCAiKS5jb25jYXQobywiKSIpLGkpfSxiaW5uYXJ5WG9yOihBLGUsdCk9PntsZXR7VHlwZWRJbnB1dDpuLFRZUEVfTlVNQkVSOml9PXQ7Y29uc3Qgcj1lLmRlc2NlbmRJbnB1dChBLm51bTEpLmFzTnVtYmVyKCksbz1lLmRlc2NlbmRJbnB1dChBLm51bTIpLmFzTnVtYmVyKCk7cmV0dXJuIG5ldyBuKCIoIi5jb25jYXQociwiIF4gIikuY29uY2F0KG8sIikiKSxpKX0sYmlubmFyeU5vdDooQSxlLHQpPT57bGV0e1R5cGVkSW5wdXQ6bixUWVBFX05VTUJFUjppfT10O2NvbnN0IHI9ZS5kZXNjZW5kSW5wdXQoQS5udW0xKS5hc051bWJlcigpO3JldHVybiBuZXcgbigiKH4iLmNvbmNhdChyLCIpIiksaSl9LG9ySWZGYWxzZXk6KEEsZSx0KT0+e2xldHtUeXBlZElucHV0Om4sVFlQRV9VTktOT1dOOml9PXQ7Y29uc3Qgcj1lLmRlc2NlbmRJbnB1dChBLm9uZSkuYXNVbmtub3duKCksbz1lLmRlc2NlbmRJbnB1dChBLnR3bykuYXNVbmtub3duKCk7cmV0dXJuIG5ldyBuKCIoIi5jb25jYXQociwiIHx8ICIpLmNvbmNhdChvLCIpIiksaSl9LGlmSXNUcnV0aHk6KEEsZSx0KT0+e2xldHtUeXBlZElucHV0Om4sVFlQRV9VTktOT1dOOml9PXQ7Y29uc3Qgcj1lLmRlc2NlbmRJbnB1dChBLm9uZSkuYXNCb29sZWFuKCksbz1lLmRlc2NlbmRJbnB1dChBLnR3bykuYXNVbmtub3duKCk7cmV0dXJuIG5ldyBuKCIoIi5jb25jYXQociwiICYmICIpLmNvbmNhdChvLCIpIiksaSl9LHNwZWVkVG9QaXRjaDooQSxlLHQpPT57bGV0e1R5cGVkSW5wdXQ6bixUWVBFX05VTUJFUl9OQU46aX09dDtjb25zdCByPWUuZGVzY2VuZElucHV0KEEuc3BlZWQpLmFzTnVtYmVyKCk7cmV0dXJuIG5ldyBuKCIoKDEyMDAgKiBNYXRoLmxvZzIoIi5jb25jYXQociwiKSkgLyAxMCkiKSxpKX0scGl0Y2hUb1NwZWVkOihBLGUsdCk9PntsZXR7VHlwZWRJbnB1dDpuLFRZUEVfTlVNQkVSX05BTjppfT10O2NvbnN0IHI9ZS5kZXNjZW5kSW5wdXQoQS5waXRjaCkuYXNOdW1iZXIoKTtyZXR1cm4gbmV3IG4oIihNYXRoLnBvdygyLCAoIi5jb25jYXQociwiICogMTApIC8gMTIwMCkpIiksaSl9LGF0YW4yOihBLGUsdCk9PntsZXR7VHlwZWRJbnB1dDpuLFRZUEVfTlVNQkVSX05BTjppfT10O2NvbnN0IHI9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpO3JldHVybiBuZXcgbigiKE1hdGguYXRhbjIoKCIuY29uY2F0KG8sIiAqIDE4MCkgLyBNYXRoLlBJLCAoIikuY29uY2F0KHIsIiAqIDE4MCkgLyBNYXRoLlBJKSkiKSxpKX19fX1yZWR1Y2UoQSxlKXtsZXQgdD1mdW5jdGlvbiBBKGUsdCl7cmV0dXJuIHQ/QSh0LGUldCk6ZX07cmV0dXJuIHQ9dChBLGUpLFtBL3QsZS90XX1jaGVja1ByaW1lKEEpe2lmKChBPU1hdGgudHJ1bmMoQSkpPD0xKXJldHVybiExO2ZvcihsZXQgZT0yO2U8QTtlKyspaWYoQSVlPT0wKXJldHVybiExO3JldHVybiEwfXBpKCl7cmV0dXJuIE1hdGguUEl9ZXVsZXIoKXtyZXR1cm4gTWF0aC5FfWluZmluaXR5KCl7cmV0dXJuIDEvMH1wYXJ0T2ZSYXRpbyhBKXtjb25zdCBlPUIudG9TdHJpbmcoQS5SQVRJTyksdD1CLnRvU3RyaW5nKEEuUEFSVCkudG9Mb3dlckNhc2UoKTtpZighZS5pbmNsdWRlcygiOiIpKXJldHVybiIiO2NvbnN0IG49ZS5zcGxpdCgiOiIpW051bWJlcigibGFzdCI9PT10KV07cmV0dXJuIEIudG9OdW1iZXIobil9c2ltcGxpZnlSYXRpbyhBKXtjb25zdCBlPUIudG9TdHJpbmcoQS5SQVRJTyk7aWYoIWUuaW5jbHVkZXMoIjoiKSlyZXR1cm4iIjtjb25zdCB0PWUuc3BsaXQoIjoiKSxuPUIudG9OdW1iZXIodFswXSksaT1CLnRvTnVtYmVyKHRbMV0pLHI9dGhpcy5yZWR1Y2UobixpKTtyZXR1cm4iIi5jb25jYXQoQi50b051bWJlcihyWzBdKSwiOiIpLmNvbmNhdChCLnRvTnVtYmVyKHJbMV0pKX10cnVuY2F0ZU51bWJlcihBKXtjb25zdCBlPUIudG9OdW1iZXIoQS5OVU0pO3JldHVybiBNYXRoLnRydW5jKGUpfWlzTnVtYmVyTXVsdGlwbGVPZihBKXtyZXR1cm4gQi50b051bWJlcihBLk5VTSklQi50b051bWJlcihBLk1VTFRJUExFKT09MH1pc0ludGVnZXIoQSl7Y29uc3QgZT1CLnRvTnVtYmVyKEEuTlVNKTtyZXR1cm4gTWF0aC50cnVuYyhlKT09PWV9aXNQcmltZShBKXtjb25zdCBlPUIudG9OdW1iZXIoQS5OVU0pO3JldHVybiB0aGlzLmNoZWNrUHJpbWUoZSl9aXNFdmVuKEEpe3JldHVybiBCLnRvTnVtYmVyKEEuTlVNKSUyPT0wfWV2YWx1YXRlTWF0aChBKXtjb25zdCBlPUIudG9TdHJpbmcoQS5FUVVBVElPTik7aWYoMD09PWUudHJpbSgpLmxlbmd0aClyZXR1cm4gMDtsZXQgdD0wO3RyeXt0PWMuZXZhbHVhdGUoZSl9Y2F0Y2goQSl7dD0wfWlmKCJvYmplY3QiPT10eXBlb2YgdCYmImVudHJpZXMiaW4gdCl7Y29uc3QgQT10LmVudHJpZXM7aWYoMD09PUEubGVuZ3RoKXJldHVybiAwO2NvbnN0IGU9QS5sZW5ndGgtMTtyZXR1cm4gTnVtYmVyKEFbZV0pfXJldHVybiBOdW1iZXIodCl9ZXhhY3RseUVxdWFsKEEpe3JldHVybiBBLk9ORT09PUEuVFdPfWJldHdlZW5OdW1iZXJzKEEpe2NvbnN0IGU9Qi50b051bWJlcihBLk5VTSk7bGV0IHQ9Qi50b051bWJlcihBLk1JTiksbj1CLnRvTnVtYmVyKEEuTUFYKTtpZihuPHQpe2NvbnN0IEE9bjtuPXQsdD1BfXJldHVybiBlPD1uJiZlPj10fXJldmVyc2VDaGFycyhBKXtyZXR1cm4gQi50b1N0cmluZyhBLlRFWFQpLnNwbGl0KCIiKS5yZXZlcnNlKCkuam9pbigiIil9c2h1ZmZsZUNoYXJzKEEpe3JldHVybiBCLnRvU3RyaW5nKEEuVEVYVCkuc3BsaXQoIiIpLnNvcnQoKCk9Pk1hdGgucmFuZG9tKCktLjUpLmpvaW4oIiIpfWpvaW40KEEpe3JldHVybiBCLnRvU3RyaW5nKEEuU1RSSU5HMSkrQi50b1N0cmluZyhBLlNUUklORzIpK0IudG9TdHJpbmcoQS5TVFJJTkczKStCLnRvU3RyaW5nKEEuU1RSSU5HNCl9am9pbjUoQSl7cmV0dXJuIEIudG9TdHJpbmcoQS5TVFJJTkcxKStCLnRvU3RyaW5nKEEuU1RSSU5HMikrQi50b1N0cmluZyhBLlNUUklORzMpK0IudG9TdHJpbmcoQS5TVFJJTkc0KStCLnRvU3RyaW5nKEEuU1RSSU5HNSl9am9pbjYoQSl7cmV0dXJuIEIudG9TdHJpbmcoQS5TVFJJTkcxKStCLnRvU3RyaW5nKEEuU1RSSU5HMikrQi50b1N0cmluZyhBLlNUUklORzMpK0IudG9TdHJpbmcoQS5TVFJJTkc0KStCLnRvU3RyaW5nKEEuU1RSSU5HNSkrQi50b1N0cmluZyhBLlNUUklORzYpfWpvaW43KEEpe3JldHVybiBCLnRvU3RyaW5nKEEuU1RSSU5HMSkrQi50b1N0cmluZyhBLlNUUklORzIpK0IudG9TdHJpbmcoQS5TVFJJTkczKStCLnRvU3RyaW5nKEEuU1RSSU5HNCkrQi50b1N0cmluZyhBLlNUUklORzUpK0IudG9TdHJpbmcoQS5TVFJJTkc2KStCLnRvU3RyaW5nKEEuU1RSSU5HNyl9am9pbjgoQSl7cmV0dXJuIEIudG9TdHJpbmcoQS5TVFJJTkcxKStCLnRvU3RyaW5nKEEuU1RSSU5HMikrQi50b1N0cmluZyhBLlNUUklORzMpK0IudG9TdHJpbmcoQS5TVFJJTkc0KStCLnRvU3RyaW5nKEEuU1RSSU5HNSkrQi50b1N0cmluZyhBLlNUUklORzYpK0IudG9TdHJpbmcoQS5TVFJJTkc3KStCLnRvU3RyaW5nKEEuU1RSSU5HOCl9am9pbjkoQSl7cmV0dXJuIEIudG9TdHJpbmcoQS5TVFJJTkcxKStCLnRvU3RyaW5nKEEuU1RSSU5HMikrQi50b1N0cmluZyhBLlNUUklORzMpK0IudG9TdHJpbmcoQS5TVFJJTkc0KStCLnRvU3RyaW5nKEEuU1RSSU5HNSkrQi50b1N0cmluZyhBLlNUUklORzYpK0IudG9TdHJpbmcoQS5TVFJJTkc3KStCLnRvU3RyaW5nKEEuU1RSSU5HOCkrQi50b1N0cmluZyhBLlNUUklORzkpfXNldFJlcGxhY2VyKEEpe2NvbnN0IGU9Qi50b1N0cmluZyhBLlJFUExBQ0VSKSx0PUIudG9TdHJpbmcoQS5URVhUKTt0aGlzLnJlcGxhY2Vyc1tlXT10fXJlc2V0UmVwbGFjZXJzKCl7dGhpcy5yZXBsYWNlcnM9T2JqZWN0LmNyZWF0ZShudWxsKX1hcHBseVJlcGxhY2VycyhBKXtsZXQgZT1CLnRvU3RyaW5nKEEuVEVYVCk7Zm9yKGNvbnN0IEEgaW4gdGhpcy5yZXBsYWNlcnMpe2NvbnN0IHQ9dGhpcy5yZXBsYWNlcnNbQV07ZT1lLnJlcGxhY2VBbGwoQSx0KX1yZXR1cm4gZX10ZXh0QWZ0ZXIoQSl7Y29uc3QgZT1CLnRvU3RyaW5nKEEuVEVYVCksdD1CLnRvU3RyaW5nKEEuQkFTRSksbj10LmluZGV4T2YoZSk7cmV0dXJuIG48MD8iIjp0LnN1YnN0cmluZyhuK2UubGVuZ3RoKX10ZXh0QmVmb3JlKEEpe2NvbnN0IGU9Qi50b1N0cmluZyhBLlRFWFQpLHQ9Qi50b1N0cmluZyhBLkJBU0UpLG49dC5pbmRleE9mKGUpO3JldHVybiBuPDA/IiI6dC5zdWJzdHJpbmcoMCxuKX1vcklmRmFsc2V5KEEpe3JldHVybiIifWlmSXNUcnV0aHkoQSl7cmV0dXJuIiJ9c2hpZnRMZWZ0KEEpe3JldHVybiIifXNoaWZ0UmlnaHQoQSl7cmV0dXJuIiJ9YmlubmFyeUFuZChBKXtyZXR1cm4hMX1iaW5uYXJ5T3IoQSl7cmV0dXJuITF9YmlubmFyeVhvcihBKXtyZXR1cm4hMX1iaW5uYXJ5Tm90KEEpe3JldHVybiExfXNwZWVkVG9QaXRjaChBKXtyZXR1cm4gMH1waXRjaFRvU3BlZWQoQSl7cmV0dXJuIDF9YXRhbjIoQSl7cmV0dXJuIDB9fX0sZnVuY3Rpb24oQSxlLHQpeyhmdW5jdGlvbihlKXt2YXIgdDt0PSgpPT4oKCk9Pnt2YXIgQT17MTk3NzpmdW5jdGlvbihBLGUpe3ZhciB0OyFmdW5jdGlvbihuKXsidXNlIHN0cmljdCI7dmFyIGk9TWF0aC5jb3NofHxmdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5hYnMoQSk8MWUtOT8xLUE6LjUqKE1hdGguZXhwKEEpK01hdGguZXhwKC1BKSl9LHI9TWF0aC5zaW5ofHxmdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5hYnMoQSk8MWUtOT9BOi41KihNYXRoLmV4cChBKS1NYXRoLmV4cCgtQSkpfSxvPWZ1bmN0aW9uKCl7dGhyb3cgU3ludGF4RXJyb3IoIkludmFsaWQgUGFyYW0iKX07ZnVuY3Rpb24gcyhBLGUpe3ZhciB0PU1hdGguYWJzKEEpLG49TWF0aC5hYnMoZSk7cmV0dXJuIDA9PT1BP01hdGgubG9nKG4pOjA9PT1lP01hdGgubG9nKHQpOnQ8M2UzJiZuPDNlMz8uNSpNYXRoLmxvZyhBKkErZSplKTooQS89MixlLz0yLC41Kk1hdGgubG9nKEEqQStlKmUpK01hdGguTE4yKX1mdW5jdGlvbiBhKEEsZSl7aWYoISh0aGlzIGluc3RhbmNlb2YgYSkpcmV0dXJuIG5ldyBhKEEsZSk7dmFyIHQ9ZnVuY3Rpb24oQSxlKXt2YXIgdD17cmU6MCxpbTowfTtpZihudWxsPT1BKXQucmU9dC5pbT0wO2Vsc2UgaWYodm9pZCAwIT09ZSl0LnJlPUEsdC5pbT1lO2Vsc2Ugc3dpdGNoKHR5cGVvZiBBKXtjYXNlIm9iamVjdCI6aWYoImltImluIEEmJiJyZSJpbiBBKXQucmU9QS5yZSx0LmltPUEuaW07ZWxzZSBpZigiYWJzImluIEEmJiJhcmciaW4gQSl7aWYoIU51bWJlci5pc0Zpbml0ZShBLmFicykmJk51bWJlci5pc0Zpbml0ZShBLmFyZykpcmV0dXJuIGEuSU5GSU5JVFk7dC5yZT1BLmFicypNYXRoLmNvcyhBLmFyZyksdC5pbT1BLmFicypNYXRoLnNpbihBLmFyZyl9ZWxzZSBpZigiciJpbiBBJiYicGhpImluIEEpe2lmKCFOdW1iZXIuaXNGaW5pdGUoQS5yKSYmTnVtYmVyLmlzRmluaXRlKEEucGhpKSlyZXR1cm4gYS5JTkZJTklUWTt0LnJlPUEucipNYXRoLmNvcyhBLnBoaSksdC5pbT1BLnIqTWF0aC5zaW4oQS5waGkpfWVsc2UgMj09PUEubGVuZ3RoPyh0LnJlPUFbMF0sdC5pbT1BWzFdKTpvKCk7YnJlYWs7Y2FzZSJzdHJpbmciOnQuaW09dC5yZT0wO3ZhciBuPUEubWF0Y2goL1xkK1wuP1xkKmVbKy1dP1xkK3xcZCtcLj9cZCp8XC5cZCt8Li9nKSxpPTEscj0wO251bGw9PT1uJiZvKCk7Zm9yKHZhciBzPTA7czxuLmxlbmd0aDtzKyspe3ZhciBCPW5bc107IiAiPT09Qnx8Ilx0Ij09PUJ8fCJcbiI9PT1CfHwoIisiPT09Qj9pKys6Ii0iPT09Qj9yKys6ImkiPT09Qnx8IkkiPT09Qj8oaStyPT09MCYmbygpLCIgIj09PW5bcysxXXx8aXNOYU4obltzKzFdKT90LmltKz1wYXJzZUZsb2F0KChyJTI/Ii0iOiIiKSsiMSIpOih0LmltKz1wYXJzZUZsb2F0KChyJTI/Ii0iOiIiKStuW3MrMV0pLHMrKyksaT1yPTApOigoaStyPT09MHx8aXNOYU4oQikpJiZvKCksImkiPT09bltzKzFdfHwiSSI9PT1uW3MrMV0/KHQuaW0rPXBhcnNlRmxvYXQoKHIlMj8iLSI6IiIpK0IpLHMrKyk6dC5yZSs9cGFyc2VGbG9hdCgociUyPyItIjoiIikrQiksaT1yPTApKX1pK3I+MCYmbygpO2JyZWFrO2Nhc2UibnVtYmVyIjp0LmltPTAsdC5yZT1BO2JyZWFrO2RlZmF1bHQ6bygpfXJldHVybiBpc05hTih0LnJlKXx8aXNOYU4odC5pbSksdH0oQSxlKTt0aGlzLnJlPXQucmUsdGhpcy5pbT10LmltfWEucHJvdG90eXBlPXtyZTowLGltOjAsc2lnbjpmdW5jdGlvbigpe3ZhciBBPXRoaXMuYWJzKCk7cmV0dXJuIG5ldyBhKHRoaXMucmUvQSx0aGlzLmltL0EpfSxhZGQ6ZnVuY3Rpb24oQSxlKXt2YXIgdD1uZXcgYShBLGUpO3JldHVybiB0aGlzLmlzSW5maW5pdGUoKSYmdC5pc0luZmluaXRlKCk/YS5OQU46dGhpcy5pc0luZmluaXRlKCl8fHQuaXNJbmZpbml0ZSgpP2EuSU5GSU5JVFk6bmV3IGEodGhpcy5yZSt0LnJlLHRoaXMuaW0rdC5pbSl9LHN1YjpmdW5jdGlvbihBLGUpe3ZhciB0PW5ldyBhKEEsZSk7cmV0dXJuIHRoaXMuaXNJbmZpbml0ZSgpJiZ0LmlzSW5maW5pdGUoKT9hLk5BTjp0aGlzLmlzSW5maW5pdGUoKXx8dC5pc0luZmluaXRlKCk/YS5JTkZJTklUWTpuZXcgYSh0aGlzLnJlLXQucmUsdGhpcy5pbS10LmltKX0sbXVsOmZ1bmN0aW9uKEEsZSl7dmFyIHQ9bmV3IGEoQSxlKTtyZXR1cm4gdGhpcy5pc0luZmluaXRlKCkmJnQuaXNaZXJvKCl8fHRoaXMuaXNaZXJvKCkmJnQuaXNJbmZpbml0ZSgpP2EuTkFOOnRoaXMuaXNJbmZpbml0ZSgpfHx0LmlzSW5maW5pdGUoKT9hLklORklOSVRZOjA9PT10LmltJiYwPT09dGhpcy5pbT9uZXcgYSh0aGlzLnJlKnQucmUsMCk6bmV3IGEodGhpcy5yZSp0LnJlLXRoaXMuaW0qdC5pbSx0aGlzLnJlKnQuaW0rdGhpcy5pbSp0LnJlKX0sZGl2OmZ1bmN0aW9uKEEsZSl7dmFyIHQ9bmV3IGEoQSxlKTtpZih0aGlzLmlzWmVybygpJiZ0LmlzWmVybygpfHx0aGlzLmlzSW5maW5pdGUoKSYmdC5pc0luZmluaXRlKCkpcmV0dXJuIGEuTkFOO2lmKHRoaXMuaXNJbmZpbml0ZSgpfHx0LmlzWmVybygpKXJldHVybiBhLklORklOSVRZO2lmKHRoaXMuaXNaZXJvKCl8fHQuaXNJbmZpbml0ZSgpKXJldHVybiBhLlpFUk87QT10aGlzLnJlLGU9dGhpcy5pbTt2YXIgbixpLHI9dC5yZSxvPXQuaW07cmV0dXJuIDA9PT1vP25ldyBhKEEvcixlL3IpOk1hdGguYWJzKHIpPE1hdGguYWJzKG8pP25ldyBhKChBKihpPXIvbykrZSkvKG49cippK28pLChlKmktQSkvbik6bmV3IGEoKEErZSooaT1vL3IpKS8obj1vKmkrciksKGUtQSppKS9uKX0scG93OmZ1bmN0aW9uKEEsZSl7dmFyIHQ9bmV3IGEoQSxlKTtpZihBPXRoaXMucmUsZT10aGlzLmltLHQuaXNaZXJvKCkpcmV0dXJuIGEuT05FO2lmKDA9PT10LmltKXtpZigwPT09ZSYmQT4wKXJldHVybiBuZXcgYShNYXRoLnBvdyhBLHQucmUpLDApO2lmKDA9PT1BKXN3aXRjaCgodC5yZSU0KzQpJTQpe2Nhc2UgMDpyZXR1cm4gbmV3IGEoTWF0aC5wb3coZSx0LnJlKSwwKTtjYXNlIDE6cmV0dXJuIG5ldyBhKDAsTWF0aC5wb3coZSx0LnJlKSk7Y2FzZSAyOnJldHVybiBuZXcgYSgtTWF0aC5wb3coZSx0LnJlKSwwKTtjYXNlIDM6cmV0dXJuIG5ldyBhKDAsLU1hdGgucG93KGUsdC5yZSkpfX1pZigwPT09QSYmMD09PWUmJnQucmU+MCYmdC5pbT49MClyZXR1cm4gYS5aRVJPO3ZhciBuPU1hdGguYXRhbjIoZSxBKSxpPXMoQSxlKTtyZXR1cm4gQT1NYXRoLmV4cCh0LnJlKmktdC5pbSpuKSxlPXQuaW0qaSt0LnJlKm4sbmV3IGEoQSpNYXRoLmNvcyhlKSxBKk1hdGguc2luKGUpKX0sc3FydDpmdW5jdGlvbigpe3ZhciBBLGUsdD10aGlzLnJlLG49dGhpcy5pbSxpPXRoaXMuYWJzKCk7aWYodD49MCl7aWYoMD09PW4pcmV0dXJuIG5ldyBhKE1hdGguc3FydCh0KSwwKTtBPS41Kk1hdGguc3FydCgyKihpK3QpKX1lbHNlIEE9TWF0aC5hYnMobikvTWF0aC5zcXJ0KDIqKGktdCkpO3JldHVybiBlPXQ8PTA/LjUqTWF0aC5zcXJ0KDIqKGktdCkpOk1hdGguYWJzKG4pL01hdGguc3FydCgyKihpK3QpKSxuZXcgYShBLG48MD8tZTplKX0sZXhwOmZ1bmN0aW9uKCl7dmFyIEE9TWF0aC5leHAodGhpcy5yZSk7cmV0dXJuIHRoaXMuaW0sbmV3IGEoQSpNYXRoLmNvcyh0aGlzLmltKSxBKk1hdGguc2luKHRoaXMuaW0pKX0sZXhwbTE6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlLGU9dGhpcy5pbTtyZXR1cm4gbmV3IGEoTWF0aC5leHBtMShBKSpNYXRoLmNvcyhlKStmdW5jdGlvbihBKXt2YXIgZT1NYXRoLlBJLzQ7aWYoLWU+QXx8QT5lKXJldHVybiBNYXRoLmNvcyhBKS0xO3ZhciB0PUEqQTtyZXR1cm4gdCoodCoodCoodCoodCoodCoodCoodC8yMDkyMjc4OTg4OGUzLTEvODcxNzgyOTEyMDApKzEvNDc5MDAxNjAwKS0xLzM2Mjg4MDApKzEvNDAzMjApLTEvNzIwKSsxLzI0KS0uNSl9KGUpLE1hdGguZXhwKEEpKk1hdGguc2luKGUpKX0sbG9nOmZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5yZSxlPXRoaXMuaW07cmV0dXJuIG5ldyBhKHMoQSxlKSxNYXRoLmF0YW4yKGUsQSkpfSxhYnM6ZnVuY3Rpb24oKXtyZXR1cm4gQT10aGlzLnJlLGU9dGhpcy5pbSx0PU1hdGguYWJzKEEpLG49TWF0aC5hYnMoZSksdDwzZTMmJm48M2UzP01hdGguc3FydCh0KnQrbipuKToodDxuPyh0PW4sbj1BL2UpOm49ZS9BLHQqTWF0aC5zcXJ0KDErbipuKSk7dmFyIEEsZSx0LG59LGFyZzpmdW5jdGlvbigpe3JldHVybiBNYXRoLmF0YW4yKHRoaXMuaW0sdGhpcy5yZSl9LHNpbjpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltO3JldHVybiBuZXcgYShNYXRoLnNpbihBKSppKGUpLE1hdGguY29zKEEpKnIoZSkpfSxjb3M6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlLGU9dGhpcy5pbTtyZXR1cm4gbmV3IGEoTWF0aC5jb3MoQSkqaShlKSwtTWF0aC5zaW4oQSkqcihlKSl9LHRhbjpmdW5jdGlvbigpe3ZhciBBPTIqdGhpcy5yZSxlPTIqdGhpcy5pbSx0PU1hdGguY29zKEEpK2koZSk7cmV0dXJuIG5ldyBhKE1hdGguc2luKEEpL3QscihlKS90KX0sY290OmZ1bmN0aW9uKCl7dmFyIEE9Mip0aGlzLnJlLGU9Mip0aGlzLmltLHQ9TWF0aC5jb3MoQSktaShlKTtyZXR1cm4gbmV3IGEoLU1hdGguc2luKEEpL3QscihlKS90KX0sc2VjOmZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5yZSxlPXRoaXMuaW0sdD0uNSppKDIqZSkrLjUqTWF0aC5jb3MoMipBKTtyZXR1cm4gbmV3IGEoTWF0aC5jb3MoQSkqaShlKS90LE1hdGguc2luKEEpKnIoZSkvdCl9LGNzYzpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltLHQ9LjUqaSgyKmUpLS41Kk1hdGguY29zKDIqQSk7cmV0dXJuIG5ldyBhKE1hdGguc2luKEEpKmkoZSkvdCwtTWF0aC5jb3MoQSkqcihlKS90KX0sYXNpbjpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltLHQ9bmV3IGEoZSplLUEqQSsxLC0yKkEqZSkuc3FydCgpLG49bmV3IGEodC5yZS1lLHQuaW0rQSkubG9nKCk7cmV0dXJuIG5ldyBhKG4uaW0sLW4ucmUpfSxhY29zOmZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5yZSxlPXRoaXMuaW0sdD1uZXcgYShlKmUtQSpBKzEsLTIqQSplKS5zcXJ0KCksbj1uZXcgYSh0LnJlLWUsdC5pbStBKS5sb2coKTtyZXR1cm4gbmV3IGEoTWF0aC5QSS8yLW4uaW0sbi5yZSl9LGF0YW46ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlLGU9dGhpcy5pbTtpZigwPT09QSl7aWYoMT09PWUpcmV0dXJuIG5ldyBhKDAsMS8wKTtpZigtMT09PWUpcmV0dXJuIG5ldyBhKDAsLTEvMCl9dmFyIHQ9QSpBKygxLWUpKigxLWUpLG49bmV3IGEoKDEtZSplLUEqQSkvdCwtMipBL3QpLmxvZygpO3JldHVybiBuZXcgYSgtLjUqbi5pbSwuNSpuLnJlKX0sYWNvdDpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltO2lmKDA9PT1lKXJldHVybiBuZXcgYShNYXRoLmF0YW4yKDEsQSksMCk7dmFyIHQ9QSpBK2UqZTtyZXR1cm4gMCE9PXQ/bmV3IGEoQS90LC1lL3QpLmF0YW4oKTpuZXcgYSgwIT09QT9BLzA6MCwwIT09ZT8tZS8wOjApLmF0YW4oKX0sYXNlYzpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltO2lmKDA9PT1BJiYwPT09ZSlyZXR1cm4gbmV3IGEoMCwxLzApO3ZhciB0PUEqQStlKmU7cmV0dXJuIDAhPT10P25ldyBhKEEvdCwtZS90KS5hY29zKCk6bmV3IGEoMCE9PUE/QS8wOjAsMCE9PWU/LWUvMDowKS5hY29zKCl9LGFjc2M6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlLGU9dGhpcy5pbTtpZigwPT09QSYmMD09PWUpcmV0dXJuIG5ldyBhKE1hdGguUEkvMiwxLzApO3ZhciB0PUEqQStlKmU7cmV0dXJuIDAhPT10P25ldyBhKEEvdCwtZS90KS5hc2luKCk6bmV3IGEoMCE9PUE/QS8wOjAsMCE9PWU/LWUvMDowKS5hc2luKCl9LHNpbmg6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlLGU9dGhpcy5pbTtyZXR1cm4gbmV3IGEocihBKSpNYXRoLmNvcyhlKSxpKEEpKk1hdGguc2luKGUpKX0sY29zaDpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltO3JldHVybiBuZXcgYShpKEEpKk1hdGguY29zKGUpLHIoQSkqTWF0aC5zaW4oZSkpfSx0YW5oOmZ1bmN0aW9uKCl7dmFyIEE9Mip0aGlzLnJlLGU9Mip0aGlzLmltLHQ9aShBKStNYXRoLmNvcyhlKTtyZXR1cm4gbmV3IGEocihBKS90LE1hdGguc2luKGUpL3QpfSxjb3RoOmZ1bmN0aW9uKCl7dmFyIEE9Mip0aGlzLnJlLGU9Mip0aGlzLmltLHQ9aShBKS1NYXRoLmNvcyhlKTtyZXR1cm4gbmV3IGEocihBKS90LC1NYXRoLnNpbihlKS90KX0sY3NjaDpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltLHQ9TWF0aC5jb3MoMiplKS1pKDIqQSk7cmV0dXJuIG5ldyBhKC0yKnIoQSkqTWF0aC5jb3MoZSkvdCwyKmkoQSkqTWF0aC5zaW4oZSkvdCl9LHNlY2g6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlLGU9dGhpcy5pbSx0PU1hdGguY29zKDIqZSkraSgyKkEpO3JldHVybiBuZXcgYSgyKmkoQSkqTWF0aC5jb3MoZSkvdCwtMipyKEEpKk1hdGguc2luKGUpL3QpfSxhc2luaDpmdW5jdGlvbigpe3ZhciBBPXRoaXMuaW07dGhpcy5pbT0tdGhpcy5yZSx0aGlzLnJlPUE7dmFyIGU9dGhpcy5hc2luKCk7cmV0dXJuIHRoaXMucmU9LXRoaXMuaW0sdGhpcy5pbT1BLEE9ZS5yZSxlLnJlPS1lLmltLGUuaW09QSxlfSxhY29zaDpmdW5jdGlvbigpe3ZhciBBPXRoaXMuYWNvcygpO2lmKEEuaW08PTApe3ZhciBlPUEucmU7QS5yZT0tQS5pbSxBLmltPWV9ZWxzZSBlPUEuaW0sQS5pbT0tQS5yZSxBLnJlPWU7cmV0dXJuIEF9LGF0YW5oOmZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5yZSxlPXRoaXMuaW0sdD1BPjEmJjA9PT1lLG49MS1BLGk9MStBLHI9bipuK2UqZSxvPTAhPT1yP25ldyBhKChpKm4tZSplKS9yLChlKm4raSplKS9yKTpuZXcgYSgtMSE9PUE/QS8wOjAsMCE9PWU/ZS8wOjApLEI9by5yZTtyZXR1cm4gby5yZT1zKG8ucmUsby5pbSkvMixvLmltPU1hdGguYXRhbjIoby5pbSxCKS8yLHQmJihvLmltPS1vLmltKSxvfSxhY290aDpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltO2lmKDA9PT1BJiYwPT09ZSlyZXR1cm4gbmV3IGEoMCxNYXRoLlBJLzIpO3ZhciB0PUEqQStlKmU7cmV0dXJuIDAhPT10P25ldyBhKEEvdCwtZS90KS5hdGFuaCgpOm5ldyBhKDAhPT1BP0EvMDowLDAhPT1lPy1lLzA6MCkuYXRhbmgoKX0sYWNzY2g6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnJlLGU9dGhpcy5pbTtpZigwPT09ZSlyZXR1cm4gbmV3IGEoMCE9PUE/TWF0aC5sb2coQStNYXRoLnNxcnQoQSpBKzEpKToxLzAsMCk7dmFyIHQ9QSpBK2UqZTtyZXR1cm4gMCE9PXQ/bmV3IGEoQS90LC1lL3QpLmFzaW5oKCk6bmV3IGEoMCE9PUE/QS8wOjAsMCE9PWU/LWUvMDowKS5hc2luaCgpfSxhc2VjaDpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltO2lmKHRoaXMuaXNaZXJvKCkpcmV0dXJuIGEuSU5GSU5JVFk7dmFyIHQ9QSpBK2UqZTtyZXR1cm4gMCE9PXQ/bmV3IGEoQS90LC1lL3QpLmFjb3NoKCk6bmV3IGEoMCE9PUE/QS8wOjAsMCE9PWU/LWUvMDowKS5hY29zaCgpfSxpbnZlcnNlOmZ1bmN0aW9uKCl7aWYodGhpcy5pc1plcm8oKSlyZXR1cm4gYS5JTkZJTklUWTtpZih0aGlzLmlzSW5maW5pdGUoKSlyZXR1cm4gYS5aRVJPO3ZhciBBPXRoaXMucmUsZT10aGlzLmltLHQ9QSpBK2UqZTtyZXR1cm4gbmV3IGEoQS90LC1lL3QpfSxjb25qdWdhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGEodGhpcy5yZSwtdGhpcy5pbSl9LG5lZzpmdW5jdGlvbigpe3JldHVybiBuZXcgYSgtdGhpcy5yZSwtdGhpcy5pbSl9LGNlaWw6ZnVuY3Rpb24oQSl7cmV0dXJuIEE9TWF0aC5wb3coMTAsQXx8MCksbmV3IGEoTWF0aC5jZWlsKHRoaXMucmUqQSkvQSxNYXRoLmNlaWwodGhpcy5pbSpBKS9BKX0sZmxvb3I6ZnVuY3Rpb24oQSl7cmV0dXJuIEE9TWF0aC5wb3coMTAsQXx8MCksbmV3IGEoTWF0aC5mbG9vcih0aGlzLnJlKkEpL0EsTWF0aC5mbG9vcih0aGlzLmltKkEpL0EpfSxyb3VuZDpmdW5jdGlvbihBKXtyZXR1cm4gQT1NYXRoLnBvdygxMCxBfHwwKSxuZXcgYShNYXRoLnJvdW5kKHRoaXMucmUqQSkvQSxNYXRoLnJvdW5kKHRoaXMuaW0qQSkvQSl9LGVxdWFsczpmdW5jdGlvbihBLGUpe3ZhciB0PW5ldyBhKEEsZSk7cmV0dXJuIE1hdGguYWJzKHQucmUtdGhpcy5yZSk8PWEuRVBTSUxPTiYmTWF0aC5hYnModC5pbS10aGlzLmltKTw9YS5FUFNJTE9OfSxjbG9uZTpmdW5jdGlvbigpe3JldHVybiBuZXcgYSh0aGlzLnJlLHRoaXMuaW0pfSx0b1N0cmluZzpmdW5jdGlvbigpe3ZhciBBPXRoaXMucmUsZT10aGlzLmltLHQ9IiI7cmV0dXJuIHRoaXMuaXNOYU4oKT8iTmFOIjp0aGlzLmlzSW5maW5pdGUoKT8iSW5maW5pdHkiOihNYXRoLmFicyhBKTxhLkVQU0lMT04mJihBPTApLE1hdGguYWJzKGUpPGEuRVBTSUxPTiYmKGU9MCksMD09PWU/dCtBOigwIT09QT8odCs9QSx0Kz0iICIsZTwwPyhlPS1lLHQrPSItIik6dCs9IisiLHQrPSIgIik6ZTwwJiYoZT0tZSx0Kz0iLSIpLDEhPT1lJiYodCs9ZSksdCsiaSIpKX0sdG9WZWN0b3I6ZnVuY3Rpb24oKXtyZXR1cm5bdGhpcy5yZSx0aGlzLmltXX0sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy5pbT90aGlzLnJlOm51bGx9LGlzTmFOOmZ1bmN0aW9uKEEpe2Z1bmN0aW9uIGUoKXtyZXR1cm4gQS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gQS50b1N0cmluZygpfSxlfSgoZnVuY3Rpb24oKXtyZXR1cm4gaXNOYU4odGhpcy5yZSl8fGlzTmFOKHRoaXMuaW0pfSkpLGlzWmVybzpmdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy5pbSYmMD09PXRoaXMucmV9LGlzRmluaXRlOmZ1bmN0aW9uKEEpe2Z1bmN0aW9uIGUoKXtyZXR1cm4gQS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gQS50b1N0cmluZygpfSxlfSgoZnVuY3Rpb24oKXtyZXR1cm4gaXNGaW5pdGUodGhpcy5yZSkmJmlzRmluaXRlKHRoaXMuaW0pfSkpLGlzSW5maW5pdGU6ZnVuY3Rpb24oKXtyZXR1cm4hKHRoaXMuaXNOYU4oKXx8dGhpcy5pc0Zpbml0ZSgpKX19LGEuWkVSTz1uZXcgYSgwLDApLGEuT05FPW5ldyBhKDEsMCksYS5JPW5ldyBhKDAsMSksYS5QST1uZXcgYShNYXRoLlBJLDApLGEuRT1uZXcgYShNYXRoLkUsMCksYS5JTkZJTklUWT1uZXcgYSgxLzAsMS8wKSxhLk5BTj1uZXcgYShOYU4sTmFOKSxhLkVQU0lMT049MWUtMTUsdm9pZCAwPT09KHQ9ZnVuY3Rpb24oKXtyZXR1cm4gYX0uYXBwbHkoZSxbXSkpfHwoQS5leHBvcnRzPXQpfSgpfSw3OTI4OkE9PnsidXNlIHN0cmljdCI7dmFyIGU9T2JqZWN0LmFzc2lnbnx8ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9YXJndW1lbnRzW2VdO2Zvcih2YXIgbiBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LG4pJiYoQVtuXT10W25dKX1yZXR1cm4gQX0sdD17InsiOiJcXHsiLCJ9IjoiXFx9IiwiXFwiOiJcXHRleHRiYWNrc2xhc2h7fSIsIiMiOiJcXCMiLCQ6IlxcJCIsIiUiOiJcXCUiLCImIjoiXFwmIiwiXiI6IlxcdGV4dGFzY2lpY2lyY3Vte30iLF86IlxcXyIsIn4iOiJcXHRleHRhc2NpaXRpbGRle30ifSxuPXsi4oCTIjoiXFwtLSIsIuKAlCI6IlxcLS0tIiwiICI6In4iLCJcdCI6IlxccXF1YWR7fSIsIlxyXG4iOiJcXG5ld2xpbmV7fSIsIlxuIjoiXFxuZXdsaW5le30ifSxpPWZ1bmN0aW9uKEEsdCl7cmV0dXJuIGUoe30sQSx0KX07QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2Zvcih2YXIgcj1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e30sbz1yLnByZXNlcnZlRm9ybWF0dGluZyxzPXZvaWQgMCE9PW8mJm8sYT1yLmVzY2FwZU1hcEZuLEI9dm9pZCAwPT09YT9pOmEsYz1TdHJpbmcoQSksZz0iIixFPUIoZSh7fSx0KSxzP2Uoe30sbik6e30pLFE9T2JqZWN0LmtleXMoRSksdT1mdW5jdGlvbigpe3ZhciBBPSExO1EuZm9yRWFjaCgoZnVuY3Rpb24oZSx0KXtBfHxjLmxlbmd0aD49ZS5sZW5ndGgmJmMuc2xpY2UoMCxlLmxlbmd0aCk9PT1lJiYoZys9RVtRW3RdXSxjPWMuc2xpY2UoZS5sZW5ndGgsYy5sZW5ndGgpLEE9ITApfSkpLEF8fChnKz1jLnNsaWNlKDAsMSksYz1jLnNsaWNlKDEsYy5sZW5ndGgpKX07YzspdSgpO3JldHVybiBnfX0sNTYyODpmdW5jdGlvbihBKXshZnVuY3Rpb24oZSl7InVzZSBzdHJpY3QiO3ZhciB0PXtzOjEsbjowLGQ6MX07ZnVuY3Rpb24gbihBLGUpe2lmKGlzTmFOKEE9cGFyc2VJbnQoQSwxMCkpKXRocm93IGMoKTtyZXR1cm4gQSplfWZ1bmN0aW9uIGkoQSxlKXtpZigwPT09ZSl0aHJvdyBCKCk7dmFyIHQ9T2JqZWN0LmNyZWF0ZShhLnByb3RvdHlwZSk7dC5zPUE8MD8tMToxO3ZhciBuPXMoQT1BPDA/LUE6QSxlKTtyZXR1cm4gdC5uPUEvbix0LmQ9ZS9uLHR9ZnVuY3Rpb24gcihBKXtmb3IodmFyIGU9e30sdD1BLG49MixpPTQ7aTw9dDspe2Zvcig7dCVuPT0wOyl0Lz1uLGVbbl09KGVbbl18fDApKzE7aSs9MSsyKm4rK31yZXR1cm4gdCE9PUE/dD4xJiYoZVt0XT0oZVt0XXx8MCkrMSk6ZVtBXT0oZVtBXXx8MCkrMSxlfXZhciBvPWZ1bmN0aW9uKEEsZSl7dmFyIGkscj0wLG89MSxzPTEsYT0wLEU9MCxRPTAsdT0xLGw9MSxoPTAsdz0xLEM9MSxJPTEsTT0xZTc7aWYobnVsbD09QSk7ZWxzZSBpZih2b2lkIDAhPT1lKXtpZihzPShyPUEpKihvPWUpLHIlMSE9MHx8byUxIT0wKXRocm93IGcoKX1lbHNlIHN3aXRjaCh0eXBlb2YgQSl7Y2FzZSJvYmplY3QiOmlmKCJkImluIEEmJiJuImluIEEpcj1BLm4sbz1BLmQsInMiaW4gQSYmKHIqPUEucyk7ZWxzZXtpZighKDAgaW4gQSkpdGhyb3cgYygpO3I9QVswXSwxIGluIEEmJihvPUFbMV0pfXM9cipvO2JyZWFrO2Nhc2UibnVtYmVyIjppZihBPDAmJihzPUEsQT0tQSksQSUxPT0wKXI9QTtlbHNlIGlmKEE+MCl7Zm9yKEE+PTEmJihBLz1sPU1hdGgucG93KDEwLE1hdGguZmxvb3IoMStNYXRoLmxvZyhBKS9NYXRoLkxOMTApKSk7dzw9TSYmSTw9TTspe2lmKEE9PT0oaT0oaCtDKS8odytJKSkpe3crSTw9TT8ocj1oK0Msbz13K0kpOkk+dz8ocj1DLG89SSk6KHI9aCxvPXcpO2JyZWFrfUE+aT8oaCs9Qyx3Kz1JKTooQys9aCxJKz13KSx3Pk0/KHI9QyxvPUkpOihyPWgsbz13KX1yKj1sfWVsc2UoaXNOYU4oQSl8fGlzTmFOKGUpKSYmKG89cj1OYU4pO2JyZWFrO2Nhc2Uic3RyaW5nIjppZihudWxsPT09KHc9QS5tYXRjaCgvXGQrfC4vZykpKXRocm93IGMoKTtpZigiLSI9PT13W2hdPyhzPS0xLGgrKyk6IisiPT09d1toXSYmaCsrLHcubGVuZ3RoPT09aCsxP0U9bih3W2grK10scyk6Ii4iPT09d1toKzFdfHwiLiI9PT13W2hdPygiLiIhPT13W2hdJiYoYT1uKHdbaCsrXSxzKSksKDErICsraD09PXcubGVuZ3RofHwiKCI9PT13W2grMV0mJiIpIj09PXdbaCszXXx8IiciPT09d1toKzFdJiYiJyI9PT13W2grM10pJiYoRT1uKHdbaF0scyksdT1NYXRoLnBvdygxMCx3W2hdLmxlbmd0aCksaCsrKSwoIigiPT09d1toXSYmIikiPT09d1toKzJdfHwiJyI9PT13W2hdJiYiJyI9PT13W2grMl0pJiYoUT1uKHdbaCsxXSxzKSxsPU1hdGgucG93KDEwLHdbaCsxXS5sZW5ndGgpLTEsaCs9MykpOiIvIj09PXdbaCsxXXx8IjoiPT09d1toKzFdPyhFPW4od1toXSxzKSx1PW4od1toKzJdLDEpLGgrPTMpOiIvIj09PXdbaCszXSYmIiAiPT09d1toKzFdJiYoYT1uKHdbaF0scyksRT1uKHdbaCsyXSxzKSx1PW4od1toKzRdLDEpLGgrPTUpLHcubGVuZ3RoPD1oKXtzPXI9USsobz11KmwpKmErbCpFO2JyZWFrfWRlZmF1bHQ6dGhyb3cgYygpfWlmKDA9PT1vKXRocm93IEIoKTt0LnM9czwwPy0xOjEsdC5uPU1hdGguYWJzKHIpLHQuZD1NYXRoLmFicyhvKX07ZnVuY3Rpb24gcyhBLGUpe2lmKCFBKXJldHVybiBlO2lmKCFlKXJldHVybiBBO2Zvcig7Oyl7aWYoIShBJT1lKSlyZXR1cm4gZTtpZighKGUlPUEpKXJldHVybiBBfX1mdW5jdGlvbiBhKEEsZSl7aWYobyhBLGUpLCEodGhpcyBpbnN0YW5jZW9mIGEpKXJldHVybiBpKHQucyp0Lm4sdC5kKTtBPXModC5kLHQubiksdGhpcy5zPXQucyx0aGlzLm49dC5uL0EsdGhpcy5kPXQuZC9BfXZhciBCPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBFcnJvcigiRGl2aXNpb24gYnkgWmVybyIpfSxjPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBFcnJvcigiSW52YWxpZCBhcmd1bWVudCIpfSxnPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBFcnJvcigiUGFyYW1ldGVycyBtdXN0IGJlIGludGVnZXIiKX07YS5wcm90b3R5cGU9e3M6MSxuOjAsZDoxLGFiczpmdW5jdGlvbigpe3JldHVybiBpKHRoaXMubix0aGlzLmQpfSxuZWc6ZnVuY3Rpb24oKXtyZXR1cm4gaSgtdGhpcy5zKnRoaXMubix0aGlzLmQpfSxhZGQ6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbyhBLGUpLGkodGhpcy5zKnRoaXMubip0LmQrdC5zKnRoaXMuZCp0Lm4sdGhpcy5kKnQuZCl9LHN1YjpmdW5jdGlvbihBLGUpe3JldHVybiBvKEEsZSksaSh0aGlzLnMqdGhpcy5uKnQuZC10LnMqdGhpcy5kKnQubix0aGlzLmQqdC5kKX0sbXVsOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSxlKSxpKHRoaXMucyp0LnMqdGhpcy5uKnQubix0aGlzLmQqdC5kKX0sZGl2OmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSxlKSxpKHRoaXMucyp0LnMqdGhpcy5uKnQuZCx0aGlzLmQqdC5uKX0sY2xvbmU6ZnVuY3Rpb24oKXtyZXR1cm4gaSh0aGlzLnMqdGhpcy5uLHRoaXMuZCl9LG1vZDpmdW5jdGlvbihBLGUpe2lmKGlzTmFOKHRoaXMubil8fGlzTmFOKHRoaXMuZCkpcmV0dXJuIG5ldyBhKE5hTik7aWYodm9pZCAwPT09QSlyZXR1cm4gaSh0aGlzLnMqdGhpcy5uJXRoaXMuZCwxKTtpZihvKEEsZSksMD09PXQubiYmMD09PXRoaXMuZCl0aHJvdyBCKCk7cmV0dXJuIGkodGhpcy5zKih0LmQqdGhpcy5uKSUodC5uKnRoaXMuZCksdC5kKnRoaXMuZCl9LGdjZDpmdW5jdGlvbihBLGUpe3JldHVybiBvKEEsZSksaShzKHQubix0aGlzLm4pKnModC5kLHRoaXMuZCksdC5kKnRoaXMuZCl9LGxjbTpmdW5jdGlvbihBLGUpe3JldHVybiBvKEEsZSksMD09PXQubiYmMD09PXRoaXMubj9pKDAsMSk6aSh0Lm4qdGhpcy5uLHModC5uLHRoaXMubikqcyh0LmQsdGhpcy5kKSl9LGNlaWw6ZnVuY3Rpb24oQSl7cmV0dXJuIEE9TWF0aC5wb3coMTAsQXx8MCksaXNOYU4odGhpcy5uKXx8aXNOYU4odGhpcy5kKT9uZXcgYShOYU4pOmkoTWF0aC5jZWlsKEEqdGhpcy5zKnRoaXMubi90aGlzLmQpLEEpfSxmbG9vcjpmdW5jdGlvbihBKXtyZXR1cm4gQT1NYXRoLnBvdygxMCxBfHwwKSxpc05hTih0aGlzLm4pfHxpc05hTih0aGlzLmQpP25ldyBhKE5hTik6aShNYXRoLmZsb29yKEEqdGhpcy5zKnRoaXMubi90aGlzLmQpLEEpfSxyb3VuZDpmdW5jdGlvbihBKXtyZXR1cm4gQT1NYXRoLnBvdygxMCxBfHwwKSxpc05hTih0aGlzLm4pfHxpc05hTih0aGlzLmQpP25ldyBhKE5hTik6aShNYXRoLnJvdW5kKEEqdGhpcy5zKnRoaXMubi90aGlzLmQpLEEpfSxpbnZlcnNlOmZ1bmN0aW9uKCl7cmV0dXJuIGkodGhpcy5zKnRoaXMuZCx0aGlzLm4pfSxwb3c6ZnVuY3Rpb24oQSxlKXtpZihvKEEsZSksMT09PXQuZClyZXR1cm4gdC5zPDA/aShNYXRoLnBvdyh0aGlzLnMqdGhpcy5kLHQubiksTWF0aC5wb3codGhpcy5uLHQubikpOmkoTWF0aC5wb3codGhpcy5zKnRoaXMubix0Lm4pLE1hdGgucG93KHRoaXMuZCx0Lm4pKTtpZih0aGlzLnM8MClyZXR1cm4gbnVsbDt2YXIgbj1yKHRoaXMubikscz1yKHRoaXMuZCksYT0xLEI9MTtmb3IodmFyIGMgaW4gbilpZigiMSIhPT1jKXtpZigiMCI9PT1jKXthPTA7YnJlYWt9aWYobltjXSo9dC5uLG5bY10ldC5kIT0wKXJldHVybiBudWxsO25bY10vPXQuZCxhKj1NYXRoLnBvdyhjLG5bY10pfWZvcih2YXIgYyBpbiBzKWlmKCIxIiE9PWMpe2lmKHNbY10qPXQubixzW2NdJXQuZCE9MClyZXR1cm4gbnVsbDtzW2NdLz10LmQsQio9TWF0aC5wb3coYyxzW2NdKX1yZXR1cm4gdC5zPDA/aShCLGEpOmkoYSxCKX0sZXF1YWxzOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSxlKSx0aGlzLnMqdGhpcy5uKnQuZD09dC5zKnQubip0aGlzLmR9LGNvbXBhcmU6ZnVuY3Rpb24oQSxlKXtvKEEsZSk7dmFyIG49dGhpcy5zKnRoaXMubip0LmQtdC5zKnQubip0aGlzLmQ7cmV0dXJuKDA8biktKG48MCl9LHNpbXBsaWZ5OmZ1bmN0aW9uKEEpe2lmKGlzTmFOKHRoaXMubil8fGlzTmFOKHRoaXMuZCkpcmV0dXJuIHRoaXM7QT1BfHwuMDAxO2Zvcih2YXIgZT10aGlzLmFicygpLHQ9ZS50b0NvbnRpbnVlZCgpLG49MTtuPHQubGVuZ3RoO24rKyl7Zm9yKHZhciByPWkodFtuLTFdLDEpLG89bi0yO28+PTA7by0tKXI9ci5pbnZlcnNlKCkuYWRkKHRbb10pO2lmKE1hdGguYWJzKHIuc3ViKGUpLnZhbHVlT2YoKSk8QSlyZXR1cm4gci5tdWwodGhpcy5zKX1yZXR1cm4gdGhpc30sZGl2aXNpYmxlOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSxlKSwhKCEodC5uKnRoaXMuZCl8fHRoaXMubip0LmQlKHQubip0aGlzLmQpKX0sdmFsdWVPZjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnMqdGhpcy5uL3RoaXMuZH0sdG9GcmFjdGlvbjpmdW5jdGlvbihBKXt2YXIgZSx0PSIiLG49dGhpcy5uLGk9dGhpcy5kO3JldHVybiB0aGlzLnM8MCYmKHQrPSItIiksMT09PWk/dCs9bjooQSYmKGU9TWF0aC5mbG9vcihuL2kpKT4wJiYodCs9ZSx0Kz0iICIsbiU9aSksdCs9bix0Kz0iLyIsdCs9aSksdH0sdG9MYXRleDpmdW5jdGlvbihBKXt2YXIgZSx0PSIiLG49dGhpcy5uLGk9dGhpcy5kO3JldHVybiB0aGlzLnM8MCYmKHQrPSItIiksMT09PWk/dCs9bjooQSYmKGU9TWF0aC5mbG9vcihuL2kpKT4wJiYodCs9ZSxuJT1pKSx0Kz0iXFxmcmFjeyIsdCs9bix0Kz0ifXsiLHQrPWksdCs9In0iKSx0fSx0b0NvbnRpbnVlZDpmdW5jdGlvbigpe3ZhciBBLGU9dGhpcy5uLHQ9dGhpcy5kLG49W107aWYoaXNOYU4oZSl8fGlzTmFOKHQpKXJldHVybiBuO2Rve24ucHVzaChNYXRoLmZsb29yKGUvdCkpLEE9ZSV0LGU9dCx0PUF9d2hpbGUoMSE9PWUpO3JldHVybiBufSx0b1N0cmluZzpmdW5jdGlvbihBKXt2YXIgZT10aGlzLm4sdD10aGlzLmQ7aWYoaXNOYU4oZSl8fGlzTmFOKHQpKXJldHVybiJOYU4iO0E9QXx8MTU7dmFyIG49ZnVuY3Rpb24oQSxlKXtmb3IoO2UlMj09MDtlLz0yKTtmb3IoO2UlNT09MDtlLz01KTtpZigxPT09ZSlyZXR1cm4gMDtmb3IodmFyIHQ9MTAlZSxuPTE7MSE9PXQ7bisrKWlmKHQ9MTAqdCVlLG4+MmUzKXJldHVybiAwO3JldHVybiBufSgwLHQpLGk9ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgbj0xLGk9ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgbj0xO2U+MDtBPUEqQSV0LGU+Pj0xKTEmZSYmKG49bipBJXQpO3JldHVybiBufSgxMCx0LGUpLHI9MDtyPDMwMDtyKyspe2lmKG49PT1pKXJldHVybiByO249MTAqbiVlLGk9MTAqaSVlfXJldHVybiAwfSgwLHQsbikscj10aGlzLnM8MD8iLSI6IiI7aWYocis9ZS90fDAsZSU9dCwoZSo9MTApJiYocis9Ii4iKSxuKXtmb3IodmFyIG89aTtvLS07KXIrPWUvdHwwLGUlPXQsZSo9MTA7Zm9yKHIrPSIoIixvPW47by0tOylyKz1lL3R8MCxlJT10LGUqPTEwO3IrPSIpIn1lbHNlIGZvcihvPUE7ZSYmby0tOylyKz1lL3R8MCxlJT10LGUqPTEwO3JldHVybiByfX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGEuZGVmYXVsdD1hLGEuRnJhY3Rpb249YSxBLmV4cG9ydHM9YX0oKX0sMzIyODpBPT57QS5leHBvcnRzPWZ1bmN0aW9uIEEoZSx0KXsidXNlIHN0cmljdCI7dmFyIG4saSxyPS8oXihbK1wtXT8oPzowfFsxLTldXGQqKSg/OlwuXGQqKT8oPzpbZUVdWytcLV0/XGQrKT8pPyR8XjB4WzAtOWEtZl0rJHxcZCspL2dpLG89LyheWyBdKnxbIF0qJCkvZyxzPS8oXihbXHcgXSssP1tcdyBdKyk/W1x3IF0rLD9bXHcgXStcZCs6XGQrKDpcZCspP1tcdyBdP3xeXGR7MSw0fVtcL1wtXVxkezEsNH1bXC9cLV1cZHsxLDR9fF5cdyssIFx3KyBcZCssIFxkezR9KS8sYT0vXjB4WzAtOWEtZl0rJC9pLEI9L14wLyxjPWZ1bmN0aW9uKGUpe3JldHVybiBBLmluc2Vuc2l0aXZlJiYoIiIrZSkudG9Mb3dlckNhc2UoKXx8IiIrZX0sZz1jKGUpLnJlcGxhY2UobywiIil8fCIiLEU9Yyh0KS5yZXBsYWNlKG8sIiIpfHwiIixRPWcucmVwbGFjZShyLCJcMCQxXDAiKS5yZXBsYWNlKC9cMCQvLCIiKS5yZXBsYWNlKC9eXDAvLCIiKS5zcGxpdCgiXDAiKSx1PUUucmVwbGFjZShyLCJcMCQxXDAiKS5yZXBsYWNlKC9cMCQvLCIiKS5yZXBsYWNlKC9eXDAvLCIiKS5zcGxpdCgiXDAiKSxsPXBhcnNlSW50KGcubWF0Y2goYSksMTYpfHwxIT09US5sZW5ndGgmJmcubWF0Y2gocykmJkRhdGUucGFyc2UoZyksaD1wYXJzZUludChFLm1hdGNoKGEpLDE2KXx8bCYmRS5tYXRjaChzKSYmRGF0ZS5wYXJzZShFKXx8bnVsbDtpZihoKXtpZihsPGgpcmV0dXJuLTE7aWYobD5oKXJldHVybiAxfWZvcih2YXIgdz0wLEM9TWF0aC5tYXgoUS5sZW5ndGgsdS5sZW5ndGgpO3c8Qzt3Kyspe2lmKG49IShRW3ddfHwiIikubWF0Y2goQikmJnBhcnNlRmxvYXQoUVt3XSl8fFFbd118fDAsaT0hKHVbd118fCIiKS5tYXRjaChCKSYmcGFyc2VGbG9hdCh1W3ddKXx8dVt3XXx8MCxpc05hTihuKSE9PWlzTmFOKGkpKXJldHVybiBpc05hTihuKT8xOi0xO2lmKHR5cGVvZiBuIT10eXBlb2YgaSYmKG4rPSIiLGkrPSIiKSxuPGkpcmV0dXJuLTE7aWYobj5pKXJldHVybiAxfXJldHVybiAwfX0sNjM3NzooQSxlLHQpPT57dmFyIG49dCg0ODMyKSxpPXQoODY1Mikscj10KDgwMSksbz10KDIwMzApLHM9dCgzNjE4KSxhPXQoOTA0OSksQj10KDE5NzEpO0IuYWxlYT1uLEIueG9yMTI4PWksQi54b3J3b3c9cixCLnhvcnNoaWZ0Nz1vLEIueG9yNDA5Nj1zLEIudHljaGVpPWEsQS5leHBvcnRzPUJ9LDQ4MzI6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuOyFmdW5jdGlvbihBLGkscil7ZnVuY3Rpb24gbyhBKXt2YXIgZSx0PXRoaXMsbj0oZT00MDIyODcxMTk3LGZ1bmN0aW9uKEEpe0E9U3RyaW5nKEEpO2Zvcih2YXIgdD0wO3Q8QS5sZW5ndGg7dCsrKXt2YXIgbj0uMDI1MTk2MDMyODI0MTY5MzgqKGUrPUEuY2hhckNvZGVBdCh0KSk7bi09ZT1uPj4+MCxlPShuKj1lKT4+PjAsZSs9NDI5NDk2NzI5Nioobi09ZSl9cmV0dXJuIDIuMzI4MzA2NDM2NTM4Njk2M2UtMTAqKGU+Pj4wKX0pO3QubmV4dD1mdW5jdGlvbigpe3ZhciBBPTIwOTE2MzkqdC5zMCsyLjMyODMwNjQzNjUzODY5NjNlLTEwKnQuYztyZXR1cm4gdC5zMD10LnMxLHQuczE9dC5zMix0LnMyPUEtKHQuYz0wfEEpfSx0LmM9MSx0LnMwPW4oIiAiKSx0LnMxPW4oIiAiKSx0LnMyPW4oIiAiKSx0LnMwLT1uKEEpLHQuczA8MCYmKHQuczArPTEpLHQuczEtPW4oQSksdC5zMTwwJiYodC5zMSs9MSksdC5zMi09bihBKSx0LnMyPDAmJih0LnMyKz0xKSxuPW51bGx9ZnVuY3Rpb24gcyhBLGUpe3JldHVybiBlLmM9QS5jLGUuczA9QS5zMCxlLnMxPUEuczEsZS5zMj1BLnMyLGV9ZnVuY3Rpb24gYShBLGUpe3ZhciB0PW5ldyBvKEEpLG49ZSYmZS5zdGF0ZSxpPXQubmV4dDtyZXR1cm4gaS5pbnQzMj1mdW5jdGlvbigpe3JldHVybiA0Mjk0OTY3Mjk2KnQubmV4dCgpfDB9LGkuZG91YmxlPWZ1bmN0aW9uKCl7cmV0dXJuIGkoKSsxMTEwMjIzMDI0NjI1MTU2NWUtMzIqKDIwOTcxNTIqaSgpfDApfSxpLnF1aWNrPWksbiYmKCJvYmplY3QiPT10eXBlb2YgbiYmcyhuLHQpLGkuc3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gcyh0LHt9KX0pLGl9aSYmaS5leHBvcnRzP2kuZXhwb3J0cz1hOnQuYW1kRCYmdC5hbWRPP3ZvaWQgMD09PShuPWZ1bmN0aW9uKCl7cmV0dXJuIGF9LmNhbGwoZSx0LGUsaSkpfHwoaS5leHBvcnRzPW4pOnRoaXMuYWxlYT1hfSgwLEE9dC5ubWQoQSksdC5hbWREKX0sOTA0OTpmdW5jdGlvbihBLGUsdCl7dmFyIG47IWZ1bmN0aW9uKEEsaSxyKXtmdW5jdGlvbiBvKEEpe3ZhciBlPXRoaXMsdD0iIjtlLm5leHQ9ZnVuY3Rpb24oKXt2YXIgQT1lLmIsdD1lLmMsbj1lLmQsaT1lLmE7cmV0dXJuIEE9QTw8MjVeQT4+PjdedCx0PXQtbnwwLG49bjw8MjRebj4+PjheaSxpPWktQXwwLGUuYj1BPUE8PDIwXkE+Pj4xMl50LGUuYz10PXQtbnwwLGUuZD1uPDwxNl50Pj4+MTZeaSxlLmE9aS1BfDB9LGUuYT0wLGUuYj0wLGUuYz0tMTY0MDUzMTUyNyxlLmQ9MTM2NzEzMDU1MSxBPT09TWF0aC5mbG9vcihBKT8oZS5hPUEvNDI5NDk2NzI5NnwwLGUuYj0wfEEpOnQrPUE7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aCsyMDtuKyspZS5iXj0wfHQuY2hhckNvZGVBdChuKSxlLm5leHQoKX1mdW5jdGlvbiBzKEEsZSl7cmV0dXJuIGUuYT1BLmEsZS5iPUEuYixlLmM9QS5jLGUuZD1BLmQsZX1mdW5jdGlvbiBhKEEsZSl7dmFyIHQ9bmV3IG8oQSksbj1lJiZlLnN0YXRlLGk9ZnVuY3Rpb24oKXtyZXR1cm4odC5uZXh0KCk+Pj4wKS80Mjk0OTY3Mjk2fTtyZXR1cm4gaS5kb3VibGU9ZnVuY3Rpb24oKXtkb3t2YXIgQT0oKHQubmV4dCgpPj4+MTEpKyh0Lm5leHQoKT4+PjApLzQyOTQ5NjcyOTYpLygxPDwyMSl9d2hpbGUoMD09PUEpO3JldHVybiBBfSxpLmludDMyPXQubmV4dCxpLnF1aWNrPWksbiYmKCJvYmplY3QiPT10eXBlb2YgbiYmcyhuLHQpLGkuc3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gcyh0LHt9KX0pLGl9aSYmaS5leHBvcnRzP2kuZXhwb3J0cz1hOnQuYW1kRCYmdC5hbWRPP3ZvaWQgMD09PShuPWZ1bmN0aW9uKCl7cmV0dXJuIGF9LmNhbGwoZSx0LGUsaSkpfHwoaS5leHBvcnRzPW4pOnRoaXMudHljaGVpPWF9KDAsQT10Lm5tZChBKSx0LmFtZEQpfSw4NjUyOmZ1bmN0aW9uKEEsZSx0KXt2YXIgbjshZnVuY3Rpb24oQSxpLHIpe2Z1bmN0aW9uIG8oQSl7dmFyIGU9dGhpcyx0PSIiO2UueD0wLGUueT0wLGUuej0wLGUudz0wLGUubmV4dD1mdW5jdGlvbigpe3ZhciBBPWUueF5lLng8PDExO3JldHVybiBlLng9ZS55LGUueT1lLnosZS56PWUudyxlLndePWUudz4+PjE5XkFeQT4+Pjh9LEE9PT0oMHxBKT9lLng9QTp0Kz1BO2Zvcih2YXIgbj0wO248dC5sZW5ndGgrNjQ7bisrKWUueF49MHx0LmNoYXJDb2RlQXQobiksZS5uZXh0KCl9ZnVuY3Rpb24gcyhBLGUpe3JldHVybiBlLng9QS54LGUueT1BLnksZS56PUEueixlLnc9QS53LGV9ZnVuY3Rpb24gYShBLGUpe3ZhciB0PW5ldyBvKEEpLG49ZSYmZS5zdGF0ZSxpPWZ1bmN0aW9uKCl7cmV0dXJuKHQubmV4dCgpPj4+MCkvNDI5NDk2NzI5Nn07cmV0dXJuIGkuZG91YmxlPWZ1bmN0aW9uKCl7ZG97dmFyIEE9KCh0Lm5leHQoKT4+PjExKSsodC5uZXh0KCk+Pj4wKS80Mjk0OTY3Mjk2KS8oMTw8MjEpfXdoaWxlKDA9PT1BKTtyZXR1cm4gQX0saS5pbnQzMj10Lm5leHQsaS5xdWljaz1pLG4mJigib2JqZWN0Ij09dHlwZW9mIG4mJnMobix0KSxpLnN0YXRlPWZ1bmN0aW9uKCl7cmV0dXJuIHModCx7fSl9KSxpfWkmJmkuZXhwb3J0cz9pLmV4cG9ydHM9YTp0LmFtZEQmJnQuYW1kTz92b2lkIDA9PT0obj1mdW5jdGlvbigpe3JldHVybiBhfS5jYWxsKGUsdCxlLGkpKXx8KGkuZXhwb3J0cz1uKTp0aGlzLnhvcjEyOD1hfSgwLEE9dC5ubWQoQSksdC5hbWREKX0sMzYxODpmdW5jdGlvbihBLGUsdCl7dmFyIG47IWZ1bmN0aW9uKEEsaSxyKXtmdW5jdGlvbiBvKEEpe3ZhciBlPXRoaXM7ZS5uZXh0PWZ1bmN0aW9uKCl7dmFyIEEsdCxuPWUudyxpPWUuWCxyPWUuaTtyZXR1cm4gZS53PW49bisxNjQwNTMxNTI3fDAsdD1pW3IrMzQmMTI3XSxBPWlbcj1yKzEmMTI3XSx0Xj10PDwxMyxBXj1BPDwxNyx0Xj10Pj4+MTUsQV49QT4+PjEyLHQ9aVtyXT10XkEsZS5pPXIsdCsobl5uPj4+MTYpfDB9LGZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIsbyxzPVtdLGE9MTI4O2ZvcihlPT09KDB8ZSk/KG49ZSxlPW51bGwpOihlKz0iXDAiLG49MCxhPU1hdGgubWF4KGEsZS5sZW5ndGgpKSxpPTAscj0tMzI7cjxhOysrcillJiYobl49ZS5jaGFyQ29kZUF0KChyKzMyKSVlLmxlbmd0aCkpLDA9PT1yJiYobz1uKSxuXj1uPDwxMCxuXj1uPj4+MTUsbl49bjw8NCxuXj1uPj4+MTMscj49MCYmKG89bysxNjQwNTMxNTI3fDAsaT0wPT0odD1zWzEyNyZyXV49bitvKT9pKzE6MCk7Zm9yKGk+PTEyOCYmKHNbMTI3JihlJiZlLmxlbmd0aHx8MCldPS0xKSxpPTEyNyxyPTUxMjtyPjA7LS1yKW49c1tpKzM0JjEyN10sdD1zW2k9aSsxJjEyN10sbl49bjw8MTMsdF49dDw8MTcsbl49bj4+PjE1LHRePXQ+Pj4xMixzW2ldPW5edDtBLnc9byxBLlg9cyxBLmk9aX0oZSxBKX1mdW5jdGlvbiBzKEEsZSl7cmV0dXJuIGUuaT1BLmksZS53PUEudyxlLlg9QS5YLnNsaWNlKCksZX1mdW5jdGlvbiBhKEEsZSl7bnVsbD09QSYmKEE9K25ldyBEYXRlKTt2YXIgdD1uZXcgbyhBKSxuPWUmJmUuc3RhdGUsaT1mdW5jdGlvbigpe3JldHVybih0Lm5leHQoKT4+PjApLzQyOTQ5NjcyOTZ9O3JldHVybiBpLmRvdWJsZT1mdW5jdGlvbigpe2Rve3ZhciBBPSgodC5uZXh0KCk+Pj4xMSkrKHQubmV4dCgpPj4+MCkvNDI5NDk2NzI5NikvKDE8PDIxKX13aGlsZSgwPT09QSk7cmV0dXJuIEF9LGkuaW50MzI9dC5uZXh0LGkucXVpY2s9aSxuJiYobi5YJiZzKG4sdCksaS5zdGF0ZT1mdW5jdGlvbigpe3JldHVybiBzKHQse30pfSksaX1pJiZpLmV4cG9ydHM/aS5leHBvcnRzPWE6dC5hbWREJiZ0LmFtZE8/dm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gYX0uY2FsbChlLHQsZSxpKSl8fChpLmV4cG9ydHM9bik6dGhpcy54b3I0MDk2PWF9KDAsQT10Lm5tZChBKSx0LmFtZEQpfSwyMDMwOmZ1bmN0aW9uKEEsZSx0KXt2YXIgbjshZnVuY3Rpb24oQSxpLHIpe2Z1bmN0aW9uIG8oQSl7dmFyIGU9dGhpcztlLm5leHQ9ZnVuY3Rpb24oKXt2YXIgQSx0LG49ZS54LGk9ZS5pO3JldHVybiBBPW5baV0sdD0oQV49QT4+PjcpXkE8PDI0LHRePShBPW5baSsxJjddKV5BPj4+MTAsdF49KEE9bltpKzMmN10pXkE+Pj4zLHRePShBPW5baSs0JjddKV5BPDw3LEE9bltpKzcmN10sdF49KEFePUE8PDEzKV5BPDw5LG5baV09dCxlLmk9aSsxJjcsdH0sZnVuY3Rpb24oQSxlKXt2YXIgdCxuPVtdO2lmKGU9PT0oMHxlKSluWzBdPWU7ZWxzZSBmb3IoZT0iIitlLHQ9MDt0PGUubGVuZ3RoOysrdCluWzcmdF09bls3JnRdPDwxNV5lLmNoYXJDb2RlQXQodCkrblt0KzEmN108PDEzO2Zvcig7bi5sZW5ndGg8ODspbi5wdXNoKDApO2Zvcih0PTA7dDw4JiYwPT09blt0XTsrK3QpO2Zvcig4PT10P25bN109LTE6blt0XSxBLng9bixBLmk9MCx0PTI1Njt0PjA7LS10KUEubmV4dCgpfShlLEEpfWZ1bmN0aW9uIHMoQSxlKXtyZXR1cm4gZS54PUEueC5zbGljZSgpLGUuaT1BLmksZX1mdW5jdGlvbiBhKEEsZSl7bnVsbD09QSYmKEE9K25ldyBEYXRlKTt2YXIgdD1uZXcgbyhBKSxuPWUmJmUuc3RhdGUsaT1mdW5jdGlvbigpe3JldHVybih0Lm5leHQoKT4+PjApLzQyOTQ5NjcyOTZ9O3JldHVybiBpLmRvdWJsZT1mdW5jdGlvbigpe2Rve3ZhciBBPSgodC5uZXh0KCk+Pj4xMSkrKHQubmV4dCgpPj4+MCkvNDI5NDk2NzI5NikvKDE8PDIxKX13aGlsZSgwPT09QSk7cmV0dXJuIEF9LGkuaW50MzI9dC5uZXh0LGkucXVpY2s9aSxuJiYobi54JiZzKG4sdCksaS5zdGF0ZT1mdW5jdGlvbigpe3JldHVybiBzKHQse30pfSksaX1pJiZpLmV4cG9ydHM/aS5leHBvcnRzPWE6dC5hbWREJiZ0LmFtZE8/dm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gYX0uY2FsbChlLHQsZSxpKSl8fChpLmV4cG9ydHM9bik6dGhpcy54b3JzaGlmdDc9YX0oMCxBPXQubm1kKEEpLHQuYW1kRCl9LDgwMTpmdW5jdGlvbihBLGUsdCl7dmFyIG47IWZ1bmN0aW9uKEEsaSxyKXtmdW5jdGlvbiBvKEEpe3ZhciBlPXRoaXMsdD0iIjtlLm5leHQ9ZnVuY3Rpb24oKXt2YXIgQT1lLnheZS54Pj4+MjtyZXR1cm4gZS54PWUueSxlLnk9ZS56LGUuej1lLncsZS53PWUudiwoZS5kPWUuZCszNjI0Mzd8MCkrKGUudj1lLnZeZS52PDw0XkFeQTw8MSl8MH0sZS54PTAsZS55PTAsZS56PTAsZS53PTAsZS52PTAsQT09PSgwfEEpP2UueD1BOnQrPUE7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aCs2NDtuKyspZS54Xj0wfHQuY2hhckNvZGVBdChuKSxuPT10Lmxlbmd0aCYmKGUuZD1lLng8PDEwXmUueD4+PjQpLGUubmV4dCgpfWZ1bmN0aW9uIHMoQSxlKXtyZXR1cm4gZS54PUEueCxlLnk9QS55LGUuej1BLnosZS53PUEudyxlLnY9QS52LGUuZD1BLmQsZX1mdW5jdGlvbiBhKEEsZSl7dmFyIHQ9bmV3IG8oQSksbj1lJiZlLnN0YXRlLGk9ZnVuY3Rpb24oKXtyZXR1cm4odC5uZXh0KCk+Pj4wKS80Mjk0OTY3Mjk2fTtyZXR1cm4gaS5kb3VibGU9ZnVuY3Rpb24oKXtkb3t2YXIgQT0oKHQubmV4dCgpPj4+MTEpKyh0Lm5leHQoKT4+PjApLzQyOTQ5NjcyOTYpLygxPDwyMSl9d2hpbGUoMD09PUEpO3JldHVybiBBfSxpLmludDMyPXQubmV4dCxpLnF1aWNrPWksbiYmKCJvYmplY3QiPT10eXBlb2YgbiYmcyhuLHQpLGkuc3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gcyh0LHt9KX0pLGl9aSYmaS5leHBvcnRzP2kuZXhwb3J0cz1hOnQuYW1kRCYmdC5hbWRPP3ZvaWQgMD09PShuPWZ1bmN0aW9uKCl7cmV0dXJuIGF9LmNhbGwoZSx0LGUsaSkpfHwoaS5leHBvcnRzPW4pOnRoaXMueG9yd293PWF9KDAsQT10Lm5tZChBKSx0LmFtZEQpfSwxOTcxOmZ1bmN0aW9uKEEsZSx0KXt2YXIgbjshZnVuY3Rpb24oaSxyLG8pe3ZhciBzLGE9MjU2LEI9by5wb3coYSw2KSxjPW8ucG93KDIsNTIpLGc9MipjLEU9MjU1O2Z1bmN0aW9uIFEoQSxlLHQpe3ZhciBuPVtdLEU9aChmdW5jdGlvbiBBKGUsdCl7dmFyIG4saT1bXSxyPXR5cGVvZiBlO2lmKHQmJiJvYmplY3QiPT1yKWZvcihuIGluIGUpdHJ5e2kucHVzaChBKGVbbl0sdC0xKSl9Y2F0Y2goZSl7fXJldHVybiBpLmxlbmd0aD9pOiJzdHJpbmciPT1yP2U6ZSsiXDAifSgoZT0xPT1lP3tlbnRyb3B5OiEwfTplfHx7fSkuZW50cm9weT9bQSx3KHIpXTpudWxsPT1BP2Z1bmN0aW9uKCl7dHJ5e3ZhciBBO3JldHVybiBzJiYoQT1zLnJhbmRvbUJ5dGVzKT9BPUEoYSk6KEE9bmV3IFVpbnQ4QXJyYXkoYSksKGkuY3J5cHRvfHxpLm1zQ3J5cHRvKS5nZXRSYW5kb21WYWx1ZXMoQSkpLHcoQSl9Y2F0Y2goQSl7dmFyIGU9aS5uYXZpZ2F0b3IsdD1lJiZlLnBsdWdpbnM7cmV0dXJuWytuZXcgRGF0ZSxpLHQsaS5zY3JlZW4sdyhyKV19fSgpOkEsMyksbiksUT1uZXcgdShuKSxDPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPVEuZyg2KSxlPUIsdD0wO0E8YzspQT0oQSt0KSphLGUqPWEsdD1RLmcoMSk7Zm9yKDtBPj1nOylBLz0yLGUvPTIsdD4+Pj0xO3JldHVybihBK3QpL2V9O3JldHVybiBDLmludDMyPWZ1bmN0aW9uKCl7cmV0dXJuIDB8US5nKDQpfSxDLnF1aWNrPWZ1bmN0aW9uKCl7cmV0dXJuIFEuZyg0KS80Mjk0OTY3Mjk2fSxDLmRvdWJsZT1DLGgodyhRLlMpLHIpLChlLnBhc3N8fHR8fGZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiBuJiYobi5TJiZsKG4sUSksQS5zdGF0ZT1mdW5jdGlvbigpe3JldHVybiBsKFEse30pfSksdD8oby5yYW5kb209QSxlKTpBfSkoQyxFLCJnbG9iYWwiaW4gZT9lLmdsb2JhbDp0aGlzPT1vLGUuc3RhdGUpfWZ1bmN0aW9uIHUoQSl7dmFyIGUsdD1BLmxlbmd0aCxuPXRoaXMsaT0wLHI9bi5pPW4uaj0wLG89bi5TPVtdO2Zvcih0fHwoQT1bdCsrXSk7aTxhOylvW2ldPWkrKztmb3IoaT0wO2k8YTtpKyspb1tpXT1vW3I9RSZyK0FbaSV0XSsoZT1vW2ldKV0sb1tyXT1lOyhuLmc9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlLHQ9MCxpPW4uaSxyPW4uaixvPW4uUztBLS07KWU9b1tpPUUmaSsxXSx0PXQqYStvW0UmKG9baV09b1tyPUUmcitlXSkrKG9bcl09ZSldO3JldHVybiBuLmk9aSxuLmo9cix0fSkoYSl9ZnVuY3Rpb24gbChBLGUpe3JldHVybiBlLmk9QS5pLGUuaj1BLmosZS5TPUEuUy5zbGljZSgpLGV9ZnVuY3Rpb24gaChBLGUpe2Zvcih2YXIgdCxuPUErIiIsaT0wO2k8bi5sZW5ndGg7KWVbRSZpXT1FJih0Xj0xOSplW0UmaV0pK24uY2hhckNvZGVBdChpKyspO3JldHVybiB3KGUpfWZ1bmN0aW9uIHcoQSl7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoMCxBKX1pZihoKG8ucmFuZG9tKCksciksQS5leHBvcnRzKXtBLmV4cG9ydHM9UTt0cnl7cz10KDUwNDIpfWNhdGNoKEEpe319ZWxzZSB2b2lkIDA9PT0obj1mdW5jdGlvbigpe3JldHVybiBRfS5jYWxsKGUsdCxlLEEpKXx8KEEuZXhwb3J0cz1uKX0oInVuZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6dGhpcyxbXSxNYXRoKX0sNDI3OTpBPT57ZnVuY3Rpb24gZSgpe31lLnByb3RvdHlwZT17b246ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXRoaXMuZXx8KHRoaXMuZT17fSk7cmV0dXJuKG5bQV18fChuW0FdPVtdKSkucHVzaCh7Zm46ZSxjdHg6dH0pLHRoaXN9LG9uY2U6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXRoaXM7ZnVuY3Rpb24gaSgpe24ub2ZmKEEsaSksZS5hcHBseSh0LGFyZ3VtZW50cyl9cmV0dXJuIGkuXz1lLHRoaXMub24oQSxpLHQpfSxlbWl0OmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1bXS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSx0PSgodGhpcy5lfHwodGhpcy5lPXt9KSlbQV18fFtdKS5zbGljZSgpLG49MCxpPXQubGVuZ3RoO248aTtuKyspdFtuXS5mbi5hcHBseSh0W25dLmN0eCxlKTtyZXR1cm4gdGhpc30sb2ZmOmZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy5lfHwodGhpcy5lPXt9KSxuPXRbQV0saT1bXTtpZihuJiZlKWZvcih2YXIgcj0wLG89bi5sZW5ndGg7cjxvO3IrKyluW3JdLmZuIT09ZSYmbltyXS5mbi5fIT09ZSYmaS5wdXNoKG5bcl0pO3JldHVybiBpLmxlbmd0aD90W0FdPWk6ZGVsZXRlIHRbQV0sdGhpc319LEEuZXhwb3J0cz1lLEEuZXhwb3J0cy5UaW55RW1pdHRlcj1lfSw1MDQyOigpPT57fSw3MDYxOihBLGUsdCk9Pnt2YXIgbj10KDg2OTgpLmRlZmF1bHQ7ZnVuY3Rpb24gaSgpeyJ1c2Ugc3RyaWN0IjtBLmV4cG9ydHM9aT1mdW5jdGlvbigpe3JldHVybiB0fSxBLmV4cG9ydHMuX19lc01vZHVsZT0hMCxBLmV4cG9ydHMuZGVmYXVsdD1BLmV4cG9ydHM7dmFyIGUsdD17fSxyPU9iamVjdC5wcm90b3R5cGUsbz1yLmhhc093blByb3BlcnR5LHM9T2JqZWN0LmRlZmluZVByb3BlcnR5fHxmdW5jdGlvbihBLGUsdCl7QVtlXT10LnZhbHVlfSxhPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2w/U3ltYm9sOnt9LEI9YS5pdGVyYXRvcnx8IkBAaXRlcmF0b3IiLGM9YS5hc3luY0l0ZXJhdG9yfHwiQEBhc3luY0l0ZXJhdG9yIixnPWEudG9TdHJpbmdUYWd8fCJAQHRvU3RyaW5nVGFnIjtmdW5jdGlvbiBFKEEsZSx0KXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pLEFbZV19dHJ5e0Uoe30sIiIpfWNhdGNoKGUpe0U9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBW2VdPXR9fWZ1bmN0aW9uIFEoQSxlLHQsbil7dmFyIGk9ZSYmZS5wcm90b3R5cGUgaW5zdGFuY2VvZiBJP2U6SSxyPU9iamVjdC5jcmVhdGUoaS5wcm90b3R5cGUpLG89bmV3IHgobnx8W10pO3JldHVybiBzKHIsIl9pbnZva2UiLHt2YWx1ZTpOKEEsdCxvKX0pLHJ9ZnVuY3Rpb24gdShBLGUsdCl7dHJ5e3JldHVybnt0eXBlOiJub3JtYWwiLGFyZzpBLmNhbGwoZSx0KX19Y2F0Y2goQSl7cmV0dXJue3R5cGU6InRocm93Iixhcmc6QX19fXQud3JhcD1RO3ZhciBsPSJzdXNwZW5kZWRTdGFydCIsaD0iZXhlY3V0aW5nIix3PSJjb21wbGV0ZWQiLEM9e307ZnVuY3Rpb24gSSgpe31mdW5jdGlvbiBNKCl7fWZ1bmN0aW9uIGQoKXt9dmFyIHA9e307RShwLEIsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSk7dmFyIG09T2JqZWN0LmdldFByb3RvdHlwZU9mLEY9bSYmbShtKFIoW10pKSk7RiYmRiE9PXImJm8uY2FsbChGLEIpJiYocD1GKTt2YXIgRD1kLnByb3RvdHlwZT1JLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKHApO2Z1bmN0aW9uIFkoQSl7WyJuZXh0IiwidGhyb3ciLCJyZXR1cm4iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtFKEEsZSwoZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuX2ludm9rZShlLEEpfSkpfSkpfWZ1bmN0aW9uIGYoQSxlKXtmdW5jdGlvbiB0KGkscixzLGEpe3ZhciBCPXUoQVtpXSxBLHIpO2lmKCJ0aHJvdyIhPT1CLnR5cGUpe3ZhciBjPUIuYXJnLGc9Yy52YWx1ZTtyZXR1cm4gZyYmIm9iamVjdCI9PW4oZykmJm8uY2FsbChnLCJfX2F3YWl0Iik/ZS5yZXNvbHZlKGcuX19hd2FpdCkudGhlbigoZnVuY3Rpb24oQSl7dCgibmV4dCIsQSxzLGEpfSksKGZ1bmN0aW9uKEEpe3QoInRocm93IixBLHMsYSl9KSk6ZS5yZXNvbHZlKGcpLnRoZW4oKGZ1bmN0aW9uKEEpe2MudmFsdWU9QSxzKGMpfSksKGZ1bmN0aW9uKEEpe3JldHVybiB0KCJ0aHJvdyIsQSxzLGEpfSkpfWEoQi5hcmcpfXZhciBpO3ModGhpcywiX2ludm9rZSIse3ZhbHVlOmZ1bmN0aW9uKEEsbil7ZnVuY3Rpb24gcigpe3JldHVybiBuZXcgZSgoZnVuY3Rpb24oZSxpKXt0KEEsbixlLGkpfSkpfXJldHVybiBpPWk/aS50aGVuKHIscik6cigpfX0pfWZ1bmN0aW9uIE4oQSx0LG4pe3ZhciBpPWw7cmV0dXJuIGZ1bmN0aW9uKHIsbyl7aWYoaT09PWgpdGhyb3cgbmV3IEVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nIik7aWYoaT09PXcpe2lmKCJ0aHJvdyI9PT1yKXRocm93IG87cmV0dXJue3ZhbHVlOmUsZG9uZTohMH19Zm9yKG4ubWV0aG9kPXIsbi5hcmc9bzs7KXt2YXIgcz1uLmRlbGVnYXRlO2lmKHMpe3ZhciBhPVUocyxuKTtpZihhKXtpZihhPT09Qyljb250aW51ZTtyZXR1cm4gYX19aWYoIm5leHQiPT09bi5tZXRob2Qpbi5zZW50PW4uX3NlbnQ9bi5hcmc7ZWxzZSBpZigidGhyb3ciPT09bi5tZXRob2Qpe2lmKGk9PT1sKXRocm93IGk9dyxuLmFyZztuLmRpc3BhdGNoRXhjZXB0aW9uKG4uYXJnKX1lbHNlInJldHVybiI9PT1uLm1ldGhvZCYmbi5hYnJ1cHQoInJldHVybiIsbi5hcmcpO2k9aDt2YXIgQj11KEEsdCxuKTtpZigibm9ybWFsIj09PUIudHlwZSl7aWYoaT1uLmRvbmU/dzoic3VzcGVuZGVkWWllbGQiLEIuYXJnPT09Qyljb250aW51ZTtyZXR1cm57dmFsdWU6Qi5hcmcsZG9uZTpuLmRvbmV9fSJ0aHJvdyI9PT1CLnR5cGUmJihpPXcsbi5tZXRob2Q9InRocm93IixuLmFyZz1CLmFyZyl9fX1mdW5jdGlvbiBVKEEsdCl7dmFyIG49dC5tZXRob2QsaT1BLml0ZXJhdG9yW25dO2lmKGk9PT1lKXJldHVybiB0LmRlbGVnYXRlPW51bGwsInRocm93Ij09PW4mJkEuaXRlcmF0b3IucmV0dXJuJiYodC5tZXRob2Q9InJldHVybiIsdC5hcmc9ZSxVKEEsdCksInRocm93Ij09PXQubWV0aG9kKXx8InJldHVybiIhPT1uJiYodC5tZXRob2Q9InRocm93Iix0LmFyZz1uZXcgVHlwZUVycm9yKCJUaGUgaXRlcmF0b3IgZG9lcyBub3QgcHJvdmlkZSBhICciK24rIicgbWV0aG9kIikpLEM7dmFyIHI9dShpLEEuaXRlcmF0b3IsdC5hcmcpO2lmKCJ0aHJvdyI9PT1yLnR5cGUpcmV0dXJuIHQubWV0aG9kPSJ0aHJvdyIsdC5hcmc9ci5hcmcsdC5kZWxlZ2F0ZT1udWxsLEM7dmFyIG89ci5hcmc7cmV0dXJuIG8/by5kb25lPyh0W0EucmVzdWx0TmFtZV09by52YWx1ZSx0Lm5leHQ9QS5uZXh0TG9jLCJyZXR1cm4iIT09dC5tZXRob2QmJih0Lm1ldGhvZD0ibmV4dCIsdC5hcmc9ZSksdC5kZWxlZ2F0ZT1udWxsLEMpOm86KHQubWV0aG9kPSJ0aHJvdyIsdC5hcmc9bmV3IFR5cGVFcnJvcigiaXRlcmF0b3IgcmVzdWx0IGlzIG5vdCBhbiBvYmplY3QiKSx0LmRlbGVnYXRlPW51bGwsQyl9ZnVuY3Rpb24geShBKXt2YXIgZT17dHJ5TG9jOkFbMF19OzEgaW4gQSYmKGUuY2F0Y2hMb2M9QVsxXSksMiBpbiBBJiYoZS5maW5hbGx5TG9jPUFbMl0sZS5hZnRlckxvYz1BWzNdKSx0aGlzLnRyeUVudHJpZXMucHVzaChlKX1mdW5jdGlvbiBUKEEpe3ZhciBlPUEuY29tcGxldGlvbnx8e307ZS50eXBlPSJub3JtYWwiLGRlbGV0ZSBlLmFyZyxBLmNvbXBsZXRpb249ZX1mdW5jdGlvbiB4KEEpe3RoaXMudHJ5RW50cmllcz1be3RyeUxvYzoicm9vdCJ9XSxBLmZvckVhY2goeSx0aGlzKSx0aGlzLnJlc2V0KCEwKX1mdW5jdGlvbiBSKEEpe2lmKEF8fCIiPT09QSl7dmFyIHQ9QVtCXTtpZih0KXJldHVybiB0LmNhbGwoQSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIEEubmV4dClyZXR1cm4gQTtpZighaXNOYU4oQS5sZW5ndGgpKXt2YXIgaT0tMSxyPWZ1bmN0aW9uIHQoKXtmb3IoOysraTxBLmxlbmd0aDspaWYoby5jYWxsKEEsaSkpcmV0dXJuIHQudmFsdWU9QVtpXSx0LmRvbmU9ITEsdDtyZXR1cm4gdC52YWx1ZT1lLHQuZG9uZT0hMCx0fTtyZXR1cm4gci5uZXh0PXJ9fXRocm93IG5ldyBUeXBlRXJyb3IobihBKSsiIGlzIG5vdCBpdGVyYWJsZSIpfXJldHVybiBNLnByb3RvdHlwZT1kLHMoRCwiY29uc3RydWN0b3IiLHt2YWx1ZTpkLGNvbmZpZ3VyYWJsZTohMH0pLHMoZCwiY29uc3RydWN0b3IiLHt2YWx1ZTpNLGNvbmZpZ3VyYWJsZTohMH0pLE0uZGlzcGxheU5hbWU9RShkLGcsIkdlbmVyYXRvckZ1bmN0aW9uIiksdC5pc0dlbmVyYXRvckZ1bmN0aW9uPWZ1bmN0aW9uKEEpe3ZhciBlPSJmdW5jdGlvbiI9PXR5cGVvZiBBJiZBLmNvbnN0cnVjdG9yO3JldHVybiEhZSYmKGU9PT1NfHwiR2VuZXJhdG9yRnVuY3Rpb24iPT09KGUuZGlzcGxheU5hbWV8fGUubmFtZSkpfSx0Lm1hcms9ZnVuY3Rpb24oQSl7cmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZj9PYmplY3Quc2V0UHJvdG90eXBlT2YoQSxkKTooQS5fX3Byb3RvX189ZCxFKEEsZywiR2VuZXJhdG9yRnVuY3Rpb24iKSksQS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShEKSxBfSx0LmF3cmFwPWZ1bmN0aW9uKEEpe3JldHVybntfX2F3YWl0OkF9fSxZKGYucHJvdG90eXBlKSxFKGYucHJvdG90eXBlLGMsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksdC5Bc3luY0l0ZXJhdG9yPWYsdC5hc3luYz1mdW5jdGlvbihBLGUsbixpLHIpe3ZvaWQgMD09PXImJihyPVByb21pc2UpO3ZhciBvPW5ldyBmKFEoQSxlLG4saSkscik7cmV0dXJuIHQuaXNHZW5lcmF0b3JGdW5jdGlvbihlKT9vOm8ubmV4dCgpLnRoZW4oKGZ1bmN0aW9uKEEpe3JldHVybiBBLmRvbmU/QS52YWx1ZTpvLm5leHQoKX0pKX0sWShEKSxFKEQsZywiR2VuZXJhdG9yIiksRShELEIsKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSksRShELCJ0b1N0cmluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIltvYmplY3QgR2VuZXJhdG9yXSJ9KSksdC5rZXlzPWZ1bmN0aW9uKEEpe3ZhciBlPU9iamVjdChBKSx0PVtdO2Zvcih2YXIgbiBpbiBlKXQucHVzaChuKTtyZXR1cm4gdC5yZXZlcnNlKCksZnVuY3Rpb24gQSgpe2Zvcig7dC5sZW5ndGg7KXt2YXIgbj10LnBvcCgpO2lmKG4gaW4gZSlyZXR1cm4gQS52YWx1ZT1uLEEuZG9uZT0hMSxBfXJldHVybiBBLmRvbmU9ITAsQX19LHQudmFsdWVzPVIseC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOngscmVzZXQ6ZnVuY3Rpb24oQSl7aWYodGhpcy5wcmV2PTAsdGhpcy5uZXh0PTAsdGhpcy5zZW50PXRoaXMuX3NlbnQ9ZSx0aGlzLmRvbmU9ITEsdGhpcy5kZWxlZ2F0ZT1udWxsLHRoaXMubWV0aG9kPSJuZXh0Iix0aGlzLmFyZz1lLHRoaXMudHJ5RW50cmllcy5mb3JFYWNoKFQpLCFBKWZvcih2YXIgdCBpbiB0aGlzKSJ0Ij09PXQuY2hhckF0KDApJiZvLmNhbGwodGhpcyx0KSYmIWlzTmFOKCt0LnNsaWNlKDEpKSYmKHRoaXNbdF09ZSl9LHN0b3A6ZnVuY3Rpb24oKXt0aGlzLmRvbmU9ITA7dmFyIEE9dGhpcy50cnlFbnRyaWVzWzBdLmNvbXBsZXRpb247aWYoInRocm93Ij09PUEudHlwZSl0aHJvdyBBLmFyZztyZXR1cm4gdGhpcy5ydmFsfSxkaXNwYXRjaEV4Y2VwdGlvbjpmdW5jdGlvbihBKXtpZih0aGlzLmRvbmUpdGhyb3cgQTt2YXIgdD10aGlzO2Z1bmN0aW9uIG4obixpKXtyZXR1cm4gcy50eXBlPSJ0aHJvdyIscy5hcmc9QSx0Lm5leHQ9bixpJiYodC5tZXRob2Q9Im5leHQiLHQuYXJnPWUpLCEhaX1mb3IodmFyIGk9dGhpcy50cnlFbnRyaWVzLmxlbmd0aC0xO2k+PTA7LS1pKXt2YXIgcj10aGlzLnRyeUVudHJpZXNbaV0scz1yLmNvbXBsZXRpb247aWYoInJvb3QiPT09ci50cnlMb2MpcmV0dXJuIG4oImVuZCIpO2lmKHIudHJ5TG9jPD10aGlzLnByZXYpe3ZhciBhPW8uY2FsbChyLCJjYXRjaExvYyIpLEI9by5jYWxsKHIsImZpbmFsbHlMb2MiKTtpZihhJiZCKXtpZih0aGlzLnByZXY8ci5jYXRjaExvYylyZXR1cm4gbihyLmNhdGNoTG9jLCEwKTtpZih0aGlzLnByZXY8ci5maW5hbGx5TG9jKXJldHVybiBuKHIuZmluYWxseUxvYyl9ZWxzZSBpZihhKXtpZih0aGlzLnByZXY8ci5jYXRjaExvYylyZXR1cm4gbihyLmNhdGNoTG9jLCEwKX1lbHNle2lmKCFCKXRocm93IG5ldyBFcnJvcigidHJ5IHN0YXRlbWVudCB3aXRob3V0IGNhdGNoIG9yIGZpbmFsbHkiKTtpZih0aGlzLnByZXY8ci5maW5hbGx5TG9jKXJldHVybiBuKHIuZmluYWxseUxvYyl9fX19LGFicnVwdDpmdW5jdGlvbihBLGUpe2Zvcih2YXIgdD10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7dD49MDstLXQpe3ZhciBuPXRoaXMudHJ5RW50cmllc1t0XTtpZihuLnRyeUxvYzw9dGhpcy5wcmV2JiZvLmNhbGwobiwiZmluYWxseUxvYyIpJiZ0aGlzLnByZXY8bi5maW5hbGx5TG9jKXt2YXIgaT1uO2JyZWFrfX1pJiYoImJyZWFrIj09PUF8fCJjb250aW51ZSI9PT1BKSYmaS50cnlMb2M8PWUmJmU8PWkuZmluYWxseUxvYyYmKGk9bnVsbCk7dmFyIHI9aT9pLmNvbXBsZXRpb246e307cmV0dXJuIHIudHlwZT1BLHIuYXJnPWUsaT8odGhpcy5tZXRob2Q9Im5leHQiLHRoaXMubmV4dD1pLmZpbmFsbHlMb2MsQyk6dGhpcy5jb21wbGV0ZShyKX0sY29tcGxldGU6ZnVuY3Rpb24oQSxlKXtpZigidGhyb3ciPT09QS50eXBlKXRocm93IEEuYXJnO3JldHVybiJicmVhayI9PT1BLnR5cGV8fCJjb250aW51ZSI9PT1BLnR5cGU/dGhpcy5uZXh0PUEuYXJnOiJyZXR1cm4iPT09QS50eXBlPyh0aGlzLnJ2YWw9dGhpcy5hcmc9QS5hcmcsdGhpcy5tZXRob2Q9InJldHVybiIsdGhpcy5uZXh0PSJlbmQiKToibm9ybWFsIj09PUEudHlwZSYmZSYmKHRoaXMubmV4dD1lKSxDfSxmaW5pc2g6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMudHJ5RW50cmllcy5sZW5ndGgtMTtlPj0wOy0tZSl7dmFyIHQ9dGhpcy50cnlFbnRyaWVzW2VdO2lmKHQuZmluYWxseUxvYz09PUEpcmV0dXJuIHRoaXMuY29tcGxldGUodC5jb21wbGV0aW9uLHQuYWZ0ZXJMb2MpLFQodCksQ319LGNhdGNoOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT10aGlzLnRyeUVudHJpZXMubGVuZ3RoLTE7ZT49MDstLWUpe3ZhciB0PXRoaXMudHJ5RW50cmllc1tlXTtpZih0LnRyeUxvYz09PUEpe3ZhciBuPXQuY29tcGxldGlvbjtpZigidGhyb3ciPT09bi50eXBlKXt2YXIgaT1uLmFyZztUKHQpfXJldHVybiBpfX10aHJvdyBuZXcgRXJyb3IoImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdCIpfSxkZWxlZ2F0ZVlpZWxkOmZ1bmN0aW9uKEEsdCxuKXtyZXR1cm4gdGhpcy5kZWxlZ2F0ZT17aXRlcmF0b3I6UihBKSxyZXN1bHROYW1lOnQsbmV4dExvYzpufSwibmV4dCI9PT10aGlzLm1ldGhvZCYmKHRoaXMuYXJnPWUpLEN9fSx0fUEuZXhwb3J0cz1pLEEuZXhwb3J0cy5fX2VzTW9kdWxlPSEwLEEuZXhwb3J0cy5kZWZhdWx0PUEuZXhwb3J0c30sODY5ODpBPT57ZnVuY3Rpb24gZSh0KXtyZXR1cm4gQS5leHBvcnRzPWU9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24oQSl7cmV0dXJuIHR5cGVvZiBBfTpmdW5jdGlvbihBKXtyZXR1cm4gQSYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmQS5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmQSE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIEF9LEEuZXhwb3J0cy5fX2VzTW9kdWxlPSEwLEEuZXhwb3J0cy5kZWZhdWx0PUEuZXhwb3J0cyxlKHQpfUEuZXhwb3J0cz1lLEEuZXhwb3J0cy5fX2VzTW9kdWxlPSEwLEEuZXhwb3J0cy5kZWZhdWx0PUEuZXhwb3J0c30sNDY4NzooQSxlLHQpPT57dmFyIG49dCg3MDYxKSgpO0EuZXhwb3J0cz1uO3RyeXtyZWdlbmVyYXRvclJ1bnRpbWU9bn1jYXRjaChBKXsib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXM/Z2xvYmFsVGhpcy5yZWdlbmVyYXRvclJ1bnRpbWU9bjpGdW5jdGlvbigiciIsInJlZ2VuZXJhdG9yUnVudGltZSA9IHIiKShuKX19LDUwOTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4NSksaT10KDM2OTEpLHI9VHlwZUVycm9yO0EuZXhwb3J0cz1mdW5jdGlvbihBKXtpZihuKEEpKXJldHVybiBBO3Rocm93IG5ldyByKGkoQSkrIiBpcyBub3QgYSBmdW5jdGlvbiIpfX0sMjY1NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTQyOSksaT10KDM2OTEpLHI9VHlwZUVycm9yO0EuZXhwb3J0cz1mdW5jdGlvbihBKXtpZihuKEEpKXJldHVybiBBO3Rocm93IG5ldyByKGkoQSkrIiBpcyBub3QgYSBjb25zdHJ1Y3RvciIpfX0sMzU1MDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4NSksaT1TdHJpbmcscj1UeXBlRXJyb3I7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2lmKCJvYmplY3QiPT10eXBlb2YgQXx8bihBKSlyZXR1cm4gQTt0aHJvdyBuZXcgcigiQ2FuJ3Qgc2V0ICIraShBKSsiIGFzIGEgcHJvdG90eXBlIil9fSw3MzcwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg0MjAxKSxpPXQoNTM5MSkscj10KDI1NjApLmYsbz1uKCJ1bnNjb3BhYmxlcyIpLHM9QXJyYXkucHJvdG90eXBlO3ZvaWQgMD09PXNbb10mJnIocyxvLHtjb25maWd1cmFibGU6ITAsdmFsdWU6aShudWxsKX0pLEEuZXhwb3J0cz1mdW5jdGlvbihBKXtzW29dW0FdPSEwfX0sMTUxNDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzMwKS5jaGFyQXQ7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gZSsodD9uKEEsZSkubGVuZ3RoOjEpfX0sNzY3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzNjIyKSxpPVR5cGVFcnJvcjtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtpZihuKGUsQSkpcmV0dXJuIEE7dGhyb3cgbmV3IGkoIkluY29ycmVjdCBpbnZvY2F0aW9uIil9fSw1MDI3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4OTk5KSxpPVN0cmluZyxyPVR5cGVFcnJvcjtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7aWYobihBKSlyZXR1cm4gQTt0aHJvdyBuZXcgcihpKEEpKyIgaXMgbm90IGFuIG9iamVjdCIpfX0sMTY1NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzY4OSk7QS5leHBvcnRzPW4oKGZ1bmN0aW9uKCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIEFycmF5QnVmZmVyKXt2YXIgQT1uZXcgQXJyYXlCdWZmZXIoOCk7T2JqZWN0LmlzRXh0ZW5zaWJsZShBKSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsImEiLHt2YWx1ZTo4fSl9fSkpfSwyODcyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg2OTApLGk9dCg3NTc4KSxyPXQoNjMxMCk7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1uKHRoaXMpLHQ9cihlKSxvPWFyZ3VtZW50cy5sZW5ndGgscz1pKG8+MT9hcmd1bWVudHNbMV06dm9pZCAwLHQpLGE9bz4yP2FyZ3VtZW50c1syXTp2b2lkIDAsQj12b2lkIDA9PT1hP3Q6aShhLHQpO0I+czspZVtzKytdPUE7cmV0dXJuIGV9fSw3NjEyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgyOTYwKS5mb3JFYWNoLGk9dCg2ODM0KSgiZm9yRWFjaCIpO0EuZXhwb3J0cz1pP1tdLmZvckVhY2g6ZnVuY3Rpb24oQSl7cmV0dXJuIG4odGhpcyxBLGFyZ3VtZW50cy5sZW5ndGg+MT9hcmd1bWVudHNbMV06dm9pZCAwKX19LDEwNTU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDQwNzEpLGk9dCgyNjE1KSxyPXQoNjkwKSxvPXQoMTIyOCkscz10KDMyOTIpLGE9dCg5NDI5KSxCPXQoNjMxMCksYz10KDY1MjIpLGc9dCg1MTg1KSxFPXQoMTY2NCksUT1BcnJheTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGU9cihBKSx0PWEodGhpcyksdT1hcmd1bWVudHMubGVuZ3RoLGw9dT4xP2FyZ3VtZW50c1sxXTp2b2lkIDAsaD12b2lkIDAhPT1sO2gmJihsPW4obCx1PjI/YXJndW1lbnRzWzJdOnZvaWQgMCkpO3ZhciB3LEMsSSxNLGQscCxtPUUoZSksRj0wO2lmKCFtfHx0aGlzPT09USYmcyhtKSlmb3Iodz1CKGUpLEM9dD9uZXcgdGhpcyh3KTpRKHcpO3c+RjtGKyspcD1oP2woZVtGXSxGKTplW0ZdLGMoQyxGLHApO2Vsc2UgZm9yKGQ9KE09ZyhlLG0pKS5uZXh0LEM9dD9uZXcgdGhpczpbXTshKEk9aShkLE0pKS5kb25lO0YrKylwPWg/byhNLGwsW0kudmFsdWUsRl0sITApOkkudmFsdWUsYyhDLEYscCk7cmV0dXJuIEMubGVuZ3RoPUYsQ319LDQzMjg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDUyOTApLGk9dCg3NTc4KSxyPXQoNjMxMCksbz1mdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0LG8pe3ZhciBzLGE9bihlKSxCPXIoYSksYz1pKG8sQik7aWYoQSYmdCE9dCl7Zm9yKDtCPmM7KWlmKChzPWFbYysrXSkhPXMpcmV0dXJuITB9ZWxzZSBmb3IoO0I+YztjKyspaWYoKEF8fGMgaW4gYSkmJmFbY109PT10KXJldHVybiBBfHxjfHwwO3JldHVybiFBJiYtMX19O0EuZXhwb3J0cz17aW5jbHVkZXM6byghMCksaW5kZXhPZjpvKCExKX19LDI5NjA6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDQwNzEpLGk9dCg4ODQ0KSxyPXQoNDQxMyksbz10KDY5MCkscz10KDYzMTApLGE9dCg3MTIwKSxCPWkoW10ucHVzaCksYz1mdW5jdGlvbihBKXt2YXIgZT0xPT09QSx0PTI9PT1BLGk9Mz09PUEsYz00PT09QSxnPTY9PT1BLEU9Nz09PUEsUT01PT09QXx8ZztyZXR1cm4gZnVuY3Rpb24odSxsLGgsdyl7Zm9yKHZhciBDLEksTT1vKHUpLGQ9cihNKSxwPW4obCxoKSxtPXMoZCksRj0wLEQ9d3x8YSxZPWU/RCh1LG0pOnR8fEU/RCh1LDApOnZvaWQgMDttPkY7RisrKWlmKChRfHxGIGluIGQpJiYoST1wKEM9ZFtGXSxGLE0pLEEpKWlmKGUpWVtGXT1JO2Vsc2UgaWYoSSlzd2l0Y2goQSl7Y2FzZSAzOnJldHVybiEwO2Nhc2UgNTpyZXR1cm4gQztjYXNlIDY6cmV0dXJuIEY7Y2FzZSAyOkIoWSxDKX1lbHNlIHN3aXRjaChBKXtjYXNlIDQ6cmV0dXJuITE7Y2FzZSA3OkIoWSxDKX1yZXR1cm4gZz8tMTppfHxjP2M6WX19O0EuZXhwb3J0cz17Zm9yRWFjaDpjKDApLG1hcDpjKDEpLGZpbHRlcjpjKDIpLHNvbWU6YygzKSxldmVyeTpjKDQpLGZpbmQ6Yyg1KSxmaW5kSW5kZXg6Yyg2KSxmaWx0ZXJSZWplY3Q6Yyg3KX19LDkwNDI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDM2ODkpLGk9dCg0MjAxKSxyPXQoMzYxNSksbz1pKCJzcGVjaWVzIik7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3JldHVybiByPj01MXx8IW4oKGZ1bmN0aW9uKCl7dmFyIGU9W107cmV0dXJuKGUuY29uc3RydWN0b3I9e30pW29dPWZ1bmN0aW9uKCl7cmV0dXJue2ZvbzoxfX0sMSE9PWVbQV0oQm9vbGVhbikuZm9vfSkpfX0sNjgzNDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzY4OSk7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9W11bQV07cmV0dXJuISF0JiZuKChmdW5jdGlvbigpe3QuY2FsbChudWxsLGV8fGZ1bmN0aW9uKCl7cmV0dXJuIDF9LDEpfSkpfX0sODgyMDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNTA5KSxpPXQoNjkwKSxyPXQoNDQxMyksbz10KDYzMTApLHM9VHlwZUVycm9yLGE9ZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCxhLEIpe24odCk7dmFyIGM9aShlKSxnPXIoYyksRT1vKGMpLFE9QT9FLTE6MCx1PUE/LTE6MTtpZihhPDIpZm9yKDs7KXtpZihRIGluIGcpe0I9Z1tRXSxRKz11O2JyZWFrfWlmKFErPXUsQT9RPDA6RTw9USl0aHJvdyBuZXcgcygiUmVkdWNlIG9mIGVtcHR5IGFycmF5IHdpdGggbm8gaW5pdGlhbCB2YWx1ZSIpfWZvcig7QT9RPj0wOkU+UTtRKz11KVEgaW4gZyYmKEI9dChCLGdbUV0sUSxjKSk7cmV0dXJuIEJ9fTtBLmV4cG9ydHM9e2xlZnQ6YSghMSkscmlnaHQ6YSghMCl9fSw1NjQ5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3Njk3KSxpPXQoMjI5Nykscj1UeXBlRXJyb3Isbz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yLHM9biYmIWZ1bmN0aW9uKCl7aWYodm9pZCAwIT09dGhpcylyZXR1cm4hMDt0cnl7T2JqZWN0LmRlZmluZVByb3BlcnR5KFtdLCJsZW5ndGgiLHt3cml0YWJsZTohMX0pLmxlbmd0aD0xfWNhdGNoKEEpe3JldHVybiBBIGluc3RhbmNlb2YgVHlwZUVycm9yfX0oKTtBLmV4cG9ydHM9cz9mdW5jdGlvbihBLGUpe2lmKGkoQSkmJiFvKEEsImxlbmd0aCIpLndyaXRhYmxlKXRocm93IG5ldyByKCJDYW5ub3Qgc2V0IHJlYWQgb25seSAubGVuZ3RoIik7cmV0dXJuIEEubGVuZ3RoPWV9OmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEubGVuZ3RoPWV9fSw5MDE1OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3NTc4KSxpPXQoNjMxMCkscj10KDY1MjIpLG89QXJyYXkscz1NYXRoLm1heDtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgYT1pKEEpLEI9bihlLGEpLGM9bih2b2lkIDA9PT10P2E6dCxhKSxnPW8ocyhjLUIsMCkpLEU9MDtCPGM7QisrLEUrKylyKGcsRSxBW0JdKTtyZXR1cm4gZy5sZW5ndGg9RSxnfX0sNjAwNDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCk7QS5leHBvcnRzPW4oW10uc2xpY2UpfSwzODI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDkwMTUpLGk9TWF0aC5mbG9vcixyPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS5sZW5ndGgsYT1pKHQvMik7cmV0dXJuIHQ8OD9vKEEsZSk6cyhBLHIobihBLDAsYSksZSkscihuKEEsYSksZSksZSl9LG89ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQsbixpPUEubGVuZ3RoLHI9MTtyPGk7KXtmb3Iobj1yLHQ9QVtyXTtuJiZlKEFbbi0xXSx0KT4wOylBW25dPUFbLS1uXTtuIT09cisrJiYoQVtuXT10KX1yZXR1cm4gQX0scz1mdW5jdGlvbihBLGUsdCxuKXtmb3IodmFyIGk9ZS5sZW5ndGgscj10Lmxlbmd0aCxvPTAscz0wO288aXx8czxyOylBW28rc109bzxpJiZzPHI/bihlW29dLHRbc10pPD0wP2VbbysrXTp0W3MrK106bzxpP2VbbysrXTp0W3MrK107cmV0dXJuIEF9O0EuZXhwb3J0cz1yfSw1MjcxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgyMjk3KSxpPXQoOTQyOSkscj10KDg5OTkpLG89dCg0MjAxKSgic3BlY2llcyIpLHM9QXJyYXk7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3ZhciBlO3JldHVybiBuKEEpJiYoZT1BLmNvbnN0cnVjdG9yLChpKGUpJiYoZT09PXN8fG4oZS5wcm90b3R5cGUpKXx8cihlKSYmbnVsbD09PShlPWVbb10pKSYmKGU9dm9pZCAwKSksdm9pZCAwPT09ZT9zOmV9fSw3MTIwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg1MjcxKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3KG4oQSkpKDA9PT1lPzA6ZSl9fSwxMjI4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg1MDI3KSxpPXQoMjEyNSk7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0LHIpe3RyeXtyZXR1cm4gcj9lKG4odClbMF0sdFsxXSk6ZSh0KX1jYXRjaChlKXtpKEEsInRocm93IixlKX19fSw2NDMxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg0MjAxKSgiaXRlcmF0b3IiKSxpPSExO3RyeXt2YXIgcj0wLG89e25leHQ6ZnVuY3Rpb24oKXtyZXR1cm57ZG9uZTohIXIrK319LHJldHVybjpmdW5jdGlvbigpe2k9ITB9fTtvW25dPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LEFycmF5LmZyb20obywoZnVuY3Rpb24oKXt0aHJvdyAyfSkpfWNhdGNoKEEpe31BLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXt0cnl7aWYoIWUmJiFpKXJldHVybiExfWNhdGNoKEEpe3JldHVybiExfXZhciB0PSExO3RyeXt2YXIgcj17fTtyW25dPWZ1bmN0aW9uKCl7cmV0dXJue25leHQ6ZnVuY3Rpb24oKXtyZXR1cm57ZG9uZTp0PSEwfX19fSxBKHIpfWNhdGNoKEEpe31yZXR1cm4gdH19LDY2NDg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg4NDQpLGk9bih7fS50b1N0cmluZykscj1uKCIiLnNsaWNlKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7cmV0dXJuIHIoaShBKSw4LC0xKX19LDkyNjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzA0MyksaT10KDk5ODUpLHI9dCg2NjQ4KSxvPXQoNDIwMSkoInRvU3RyaW5nVGFnIikscz1PYmplY3QsYT0iQXJndW1lbnRzIj09PXIoZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzfSgpKTtBLmV4cG9ydHM9bj9yOmZ1bmN0aW9uKEEpe3ZhciBlLHQsbjtyZXR1cm4gdm9pZCAwPT09QT8iVW5kZWZpbmVkIjpudWxsPT09QT8iTnVsbCI6InN0cmluZyI9PXR5cGVvZih0PWZ1bmN0aW9uKEEsZSl7dHJ5e3JldHVybiBBW2VdfWNhdGNoKEEpe319KGU9cyhBKSxvKSk/dDphP3IoZSk6Ik9iamVjdCI9PT0obj1yKGUpKSYmaShlLmNhbGxlZSk/IkFyZ3VtZW50cyI6bn19LDgwMDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNTM5MSksaT10KDIxNDgpLHI9dCg2MDQ1KSxvPXQoNDA3MSkscz10KDc2NyksYT10KDk4MSksQj10KDg3MzQpLGM9dCgxOTM0KSxnPXQoNzgwNyksRT10KDQyNDEpLFE9dCg3Njk3KSx1PXQoNTM3NSkuZmFzdEtleSxsPXQoNjE4KSxoPWwuc2V0LHc9bC5nZXR0ZXJGb3I7QS5leHBvcnRzPXtnZXRDb25zdHJ1Y3RvcjpmdW5jdGlvbihBLGUsdCxjKXt2YXIgZz1BKChmdW5jdGlvbihBLGkpe3MoQSxFKSxoKEEse3R5cGU6ZSxpbmRleDpuKG51bGwpLGZpcnN0OnZvaWQgMCxsYXN0OnZvaWQgMCxzaXplOjB9KSxRfHwoQS5zaXplPTApLGEoaSl8fEIoaSxBW2NdLHt0aGF0OkEsQVNfRU5UUklFUzp0fSl9KSksRT1nLnByb3RvdHlwZSxsPXcoZSksQz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saSxyPWwoQSksbz1JKEEsZSk7cmV0dXJuIG8/by52YWx1ZT10OihyLmxhc3Q9bz17aW5kZXg6aT11KGUsITApLGtleTplLHZhbHVlOnQscHJldmlvdXM6bj1yLmxhc3QsbmV4dDp2b2lkIDAscmVtb3ZlZDohMX0sci5maXJzdHx8KHIuZmlyc3Q9byksbiYmKG4ubmV4dD1vKSxRP3Iuc2l6ZSsrOkEuc2l6ZSsrLCJGIiE9PWkmJihyLmluZGV4W2ldPW8pKSxBfSxJPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbj1sKEEpLGk9dShlKTtpZigiRiIhPT1pKXJldHVybiBuLmluZGV4W2ldO2Zvcih0PW4uZmlyc3Q7dDt0PXQubmV4dClpZih0LmtleT09PWUpcmV0dXJuIHR9O3JldHVybiByKEUse2NsZWFyOmZ1bmN0aW9uKCl7Zm9yKHZhciBBPWwodGhpcyksZT1BLmluZGV4LHQ9QS5maXJzdDt0Oyl0LnJlbW92ZWQ9ITAsdC5wcmV2aW91cyYmKHQucHJldmlvdXM9dC5wcmV2aW91cy5uZXh0PXZvaWQgMCksZGVsZXRlIGVbdC5pbmRleF0sdD10Lm5leHQ7QS5maXJzdD1BLmxhc3Q9dm9pZCAwLFE/QS5zaXplPTA6dGhpcy5zaXplPTB9LGRlbGV0ZTpmdW5jdGlvbihBKXt2YXIgZT10aGlzLHQ9bChlKSxuPUkoZSxBKTtpZihuKXt2YXIgaT1uLm5leHQscj1uLnByZXZpb3VzO2RlbGV0ZSB0LmluZGV4W24uaW5kZXhdLG4ucmVtb3ZlZD0hMCxyJiYoci5uZXh0PWkpLGkmJihpLnByZXZpb3VzPXIpLHQuZmlyc3Q9PT1uJiYodC5maXJzdD1pKSx0Lmxhc3Q9PT1uJiYodC5sYXN0PXIpLFE/dC5zaXplLS06ZS5zaXplLS19cmV0dXJuISFufSxmb3JFYWNoOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZSx0PWwodGhpcyksbj1vKEEsYXJndW1lbnRzLmxlbmd0aD4xP2FyZ3VtZW50c1sxXTp2b2lkIDApO2U9ZT9lLm5leHQ6dC5maXJzdDspZm9yKG4oZS52YWx1ZSxlLmtleSx0aGlzKTtlJiZlLnJlbW92ZWQ7KWU9ZS5wcmV2aW91c30saGFzOmZ1bmN0aW9uKEEpe3JldHVybiEhSSh0aGlzLEEpfX0pLHIoRSx0P3tnZXQ6ZnVuY3Rpb24oQSl7dmFyIGU9SSh0aGlzLEEpO3JldHVybiBlJiZlLnZhbHVlfSxzZXQ6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQyh0aGlzLDA9PT1BPzA6QSxlKX19OnthZGQ6ZnVuY3Rpb24oQSl7cmV0dXJuIEModGhpcyxBPTA9PT1BPzA6QSxBKX19KSxRJiZpKEUsInNpemUiLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGwodGhpcykuc2l6ZX19KSxnfSxzZXRTdHJvbmc6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWUrIiBJdGVyYXRvciIsaT13KGUpLHI9dyhuKTtjKEEsZSwoZnVuY3Rpb24oQSxlKXtoKHRoaXMse3R5cGU6bix0YXJnZXQ6QSxzdGF0ZTppKEEpLGtpbmQ6ZSxsYXN0OnZvaWQgMH0pfSksKGZ1bmN0aW9uKCl7Zm9yKHZhciBBPXIodGhpcyksZT1BLmtpbmQsdD1BLmxhc3Q7dCYmdC5yZW1vdmVkOyl0PXQucHJldmlvdXM7cmV0dXJuIEEudGFyZ2V0JiYoQS5sYXN0PXQ9dD90Lm5leHQ6QS5zdGF0ZS5maXJzdCk/Zygia2V5cyI9PT1lP3Qua2V5OiJ2YWx1ZXMiPT09ZT90LnZhbHVlOlt0LmtleSx0LnZhbHVlXSwhMSk6KEEudGFyZ2V0PXZvaWQgMCxnKHZvaWQgMCwhMCkpfSksdD8iZW50cmllcyI6InZhbHVlcyIsIXQsITApLEUoZSl9fX0sMzE5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoOTAzNykscj10KDg4NDQpLG89dCg1MjY2KSxzPXQoMTg4MCksYT10KDUzNzUpLEI9dCg4NzM0KSxjPXQoNzY3KSxnPXQoOTk4NSksRT10KDk4MSksUT10KDg5OTkpLHU9dCgzNjg5KSxsPXQoNjQzMSksaD10KDU5OTcpLHc9dCgzNDU3KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBDPS0xIT09QS5pbmRleE9mKCJNYXAiKSxJPS0xIT09QS5pbmRleE9mKCJXZWFrIiksTT1DPyJzZXQiOiJhZGQiLGQ9aVtBXSxwPWQmJmQucHJvdG90eXBlLG09ZCxGPXt9LEQ9ZnVuY3Rpb24oQSl7dmFyIGU9cihwW0FdKTtzKHAsQSwiYWRkIj09PUE/ZnVuY3Rpb24oQSl7cmV0dXJuIGUodGhpcywwPT09QT8wOkEpLHRoaXN9OiJkZWxldGUiPT09QT9mdW5jdGlvbihBKXtyZXR1cm4hKEkmJiFRKEEpKSYmZSh0aGlzLDA9PT1BPzA6QSl9OiJnZXQiPT09QT9mdW5jdGlvbihBKXtyZXR1cm4gSSYmIVEoQSk/dm9pZCAwOmUodGhpcywwPT09QT8wOkEpfToiaGFzIj09PUE/ZnVuY3Rpb24oQSl7cmV0dXJuIShJJiYhUShBKSkmJmUodGhpcywwPT09QT8wOkEpfTpmdW5jdGlvbihBLHQpe3JldHVybiBlKHRoaXMsMD09PUE/MDpBLHQpLHRoaXN9KX07aWYobyhBLCFnKGQpfHwhKEl8fHAuZm9yRWFjaCYmIXUoKGZ1bmN0aW9uKCl7KG5ldyBkKS5lbnRyaWVzKCkubmV4dCgpfSkpKSkpbT10LmdldENvbnN0cnVjdG9yKGUsQSxDLE0pLGEuZW5hYmxlKCk7ZWxzZSBpZihvKEEsITApKXt2YXIgWT1uZXcgbSxmPVlbTV0oST97fTotMCwxKSE9PVksTj11KChmdW5jdGlvbigpe1kuaGFzKDEpfSkpLFU9bCgoZnVuY3Rpb24oQSl7bmV3IGQoQSl9KSkseT0hSSYmdSgoZnVuY3Rpb24oKXtmb3IodmFyIEE9bmV3IGQsZT01O2UtLTspQVtNXShlLGUpO3JldHVybiFBLmhhcygtMCl9KSk7VXx8KChtPWUoKGZ1bmN0aW9uKEEsZSl7YyhBLHApO3ZhciB0PXcobmV3IGQsQSxtKTtyZXR1cm4gRShlKXx8QihlLHRbTV0se3RoYXQ6dCxBU19FTlRSSUVTOkN9KSx0fSkpKS5wcm90b3R5cGU9cCxwLmNvbnN0cnVjdG9yPW0pLChOfHx5KSYmKEQoImRlbGV0ZSIpLEQoImhhcyIpLEMmJkQoImdldCIpKSwoeXx8ZikmJkQoTSksSSYmcC5jbGVhciYmZGVsZXRlIHAuY2xlYXJ9cmV0dXJuIEZbQV09bSxuKHtnbG9iYWw6ITAsY29uc3RydWN0b3I6ITAsZm9yY2VkOm0hPT1kfSxGKSxoKG0sQSksSXx8dC5zZXRTdHJvbmcobSxBLEMpLG19fSw4NzU4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg2ODEyKSxpPXQoOTE1Mikscj10KDI0NzQpLG89dCgyNTYwKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgcz1pKGUpLGE9by5mLEI9ci5mLGM9MDtjPHMubGVuZ3RoO2MrKyl7dmFyIGc9c1tjXTtuKEEsZyl8fHQmJm4odCxnKXx8YShBLGcsQihlLGcpKX19fSw3NDEzOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg0MjAxKSgibWF0Y2giKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGU9Ly4vO3RyeXsiLy4vIltBXShlKX1jYXRjaCh0KXt0cnl7cmV0dXJuIGVbbl09ITEsIi8uLyJbQV0oZSl9Y2F0Y2goQSl7fX1yZXR1cm4hMX19LDE3NDg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDM2ODkpO0EuZXhwb3J0cz0hbigoZnVuY3Rpb24oKXtmdW5jdGlvbiBBKCl7fXJldHVybiBBLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1udWxsLE9iamVjdC5nZXRQcm90b3R5cGVPZihuZXcgQSkhPT1BLnByb3RvdHlwZX0pKX0sMTU2ODooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCksaT10KDQ2ODQpLHI9dCg0MzI3KSxvPS8iL2cscz1uKCIiLnJlcGxhY2UpO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUsdCxuKXt2YXIgYT1yKGkoQSkpLEI9IjwiK2U7cmV0dXJuIiIhPT10JiYoQis9IiAiK3QrJz0iJytzKHIobiksbywiJnF1b3Q7IikrJyInKSxCKyI+IithKyI8LyIrZSsiPiJ9fSw3ODA3OkE9PnsidXNlIHN0cmljdCI7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7cmV0dXJue3ZhbHVlOkEsZG9uZTplfX19LDU3NzM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDc2OTcpLGk9dCgyNTYwKSxyPXQoNTY4NCk7QS5leHBvcnRzPW4/ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBpLmYoQSxlLHIoMSx0KSl9OmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQVtlXT10LEF9fSw1Njg0OkE9PnsidXNlIHN0cmljdCI7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7cmV0dXJue2VudW1lcmFibGU6ISgxJkEpLGNvbmZpZ3VyYWJsZTohKDImQSksd3JpdGFibGU6ISg0JkEpLHZhbHVlOmV9fX0sNjUyMjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODM2MCksaT10KDI1NjApLHI9dCg1Njg0KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBvPW4oZSk7byBpbiBBP2kuZihBLG8scigwLHQpKTpBW29dPXR9fSwyMTQ4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4NzAyKSxpPXQoMjU2MCk7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gdC5nZXQmJm4odC5nZXQsZSx7Z2V0dGVyOiEwfSksdC5zZXQmJm4odC5zZXQsZSx7c2V0dGVyOiEwfSksaS5mKEEsZSx0KX19LDE4ODA6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODUpLGk9dCgyNTYwKSxyPXQoODcwMiksbz10KDUwMTQpO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUsdCxzKXtzfHwocz17fSk7dmFyIGE9cy5lbnVtZXJhYmxlLEI9dm9pZCAwIT09cy5uYW1lP3MubmFtZTplO2lmKG4odCkmJnIodCxCLHMpLHMuZ2xvYmFsKWE/QVtlXT10Om8oZSx0KTtlbHNle3RyeXtzLnVuc2FmZT9BW2VdJiYoYT0hMCk6ZGVsZXRlIEFbZV19Y2F0Y2goQSl7fWE/QVtlXT10OmkuZihBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6IXMubm9uQ29uZmlndXJhYmxlLHdyaXRhYmxlOiFzLm5vbldyaXRhYmxlfSl9cmV0dXJuIEF9fSw2MDQ1OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgxODgwKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgaSBpbiBlKW4oQSxpLGVbaV0sdCk7cmV0dXJuIEF9fSw1MDE0OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MDM3KSxpPU9iamVjdC5kZWZpbmVQcm9wZXJ0eTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXt0cnl7aShuLEEse3ZhbHVlOmUsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSl9Y2F0Y2godCl7bltBXT1lfXJldHVybiBlfX0sODQ5NDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzY5MSksaT1UeXBlRXJyb3I7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7aWYoIWRlbGV0ZSBBW2VdKXRocm93IG5ldyBpKCJDYW5ub3QgZGVsZXRlIHByb3BlcnR5ICIrbihlKSsiIG9mICIrbihBKSl9fSw3Njk3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzNjg5KTtBLmV4cG9ydHM9IW4oKGZ1bmN0aW9uKCl7cmV0dXJuIDchPT1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sMSx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSlbMV19KSl9LDI2NTk6QT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZT0ib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50JiZkb2N1bWVudC5hbGwsdD12b2lkIDA9PT1lJiZ2b2lkIDAhPT1lO0EuZXhwb3J0cz17YWxsOmUsSVNfSFRNTEREQTp0fX0sNjQyMDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTAzNyksaT10KDg5OTkpLHI9bi5kb2N1bWVudCxvPWkocikmJmkoci5jcmVhdGVFbGVtZW50KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7cmV0dXJuIG8/ci5jcmVhdGVFbGVtZW50KEEpOnt9fX0sNTU2NTpBPT57InVzZSBzdHJpY3QiO3ZhciBlPVR5cGVFcnJvcjtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7aWYoQT45MDA3MTk5MjU0NzQwOTkxKXRocm93IGUoIk1heGltdW0gYWxsb3dlZCBpbmRleCBleGNlZWRlZCIpO3JldHVybiBBfX0sNjMzODpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz17Q1NTUnVsZUxpc3Q6MCxDU1NTdHlsZURlY2xhcmF0aW9uOjAsQ1NTVmFsdWVMaXN0OjAsQ2xpZW50UmVjdExpc3Q6MCxET01SZWN0TGlzdDowLERPTVN0cmluZ0xpc3Q6MCxET01Ub2tlbkxpc3Q6MSxEYXRhVHJhbnNmZXJJdGVtTGlzdDowLEZpbGVMaXN0OjAsSFRNTEFsbENvbGxlY3Rpb246MCxIVE1MQ29sbGVjdGlvbjowLEhUTUxGb3JtRWxlbWVudDowLEhUTUxTZWxlY3RFbGVtZW50OjAsTWVkaWFMaXN0OjAsTWltZVR5cGVBcnJheTowLE5hbWVkTm9kZU1hcDowLE5vZGVMaXN0OjEsUGFpbnRSZXF1ZXN0TGlzdDowLFBsdWdpbjowLFBsdWdpbkFycmF5OjAsU1ZHTGVuZ3RoTGlzdDowLFNWR051bWJlckxpc3Q6MCxTVkdQYXRoU2VnTGlzdDowLFNWR1BvaW50TGlzdDowLFNWR1N0cmluZ0xpc3Q6MCxTVkdUcmFuc2Zvcm1MaXN0OjAsU291cmNlQnVmZmVyTGlzdDowLFN0eWxlU2hlZXRMaXN0OjAsVGV4dFRyYWNrQ3VlTGlzdDowLFRleHRUcmFja0xpc3Q6MCxUb3VjaExpc3Q6MH19LDMyNjU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDY0MjApKCJzcGFuIikuY2xhc3NMaXN0LGk9biYmbi5jb25zdHJ1Y3RvciYmbi5jb25zdHJ1Y3Rvci5wcm90b3R5cGU7QS5leHBvcnRzPWk9PT1PYmplY3QucHJvdG90eXBlP3ZvaWQgMDppfSw3MzY1OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3MSkubWF0Y2goL2ZpcmVmb3hcLyhcZCspL2kpO0EuZXhwb3J0cz0hIW4mJituWzFdfSwyNTMyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4NTYzKSxpPXQoODA2KTtBLmV4cG9ydHM9IW4mJiFpJiYib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmIm9iamVjdCI9PXR5cGVvZiBkb2N1bWVudH0sODU2MzpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz0ib2JqZWN0Ij09dHlwZW9mIERlbm8mJkRlbm8mJiJvYmplY3QiPT10eXBlb2YgRGVuby52ZXJzaW9ufSw3Mjk4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3MSk7QS5leHBvcnRzPS9NU0lFfFRyaWRlbnQvLnRlc3Qobil9LDMyMjE6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDcxKTtBLmV4cG9ydHM9L2lwYWR8aXBob25lfGlwb2QvaS50ZXN0KG4pJiYidW5kZWZpbmVkIiE9dHlwZW9mIFBlYmJsZX0sNDc2NDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzEpO0EuZXhwb3J0cz0vKD86aXBhZHxpcGhvbmV8aXBvZCkuKmFwcGxld2Via2l0L2kudGVzdChuKX0sODA2OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MDM3KSxpPXQoNjY0OCk7QS5leHBvcnRzPSJwcm9jZXNzIj09PWkobi5wcm9jZXNzKX0sNzQ4NjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzEpO0EuZXhwb3J0cz0vd2ViMHMoPyEuKmNocm9tZSkvaS50ZXN0KG4pfSw3MTpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz0idW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmU3RyaW5nKG5hdmlnYXRvci51c2VyQWdlbnQpfHwiIn0sMzYxNTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuLGkscj10KDkwMzcpLG89dCg3MSkscz1yLnByb2Nlc3MsYT1yLkRlbm8sQj1zJiZzLnZlcnNpb25zfHxhJiZhLnZlcnNpb24sYz1CJiZCLnY4O2MmJihpPShuPWMuc3BsaXQoIi4iKSlbMF0+MCYmblswXTw0PzE6KyhuWzBdK25bMV0pKSwhaSYmbyYmKCEobj1vLm1hdGNoKC9FZGdlXC8oXGQrKS8pKXx8blsxXT49NzQpJiYobj1vLm1hdGNoKC9DaHJvbWVcLyhcZCspLykpJiYoaT0rblsxXSksQS5leHBvcnRzPWl9LDc5MjI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDcxKS5tYXRjaCgvQXBwbGVXZWJLaXRcLyhcZCspXC4vKTtBLmV4cG9ydHM9ISFuJiYrblsxXX0sMjczOTpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz1bImNvbnN0cnVjdG9yIiwiaGFzT3duUHJvcGVydHkiLCJpc1Byb3RvdHlwZU9mIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJ0b0xvY2FsZVN0cmluZyIsInRvU3RyaW5nIiwidmFsdWVPZiJdfSw5OTg5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MDM3KSxpPXQoMjQ3NCkuZixyPXQoNTc3Myksbz10KDE4ODApLHM9dCg1MDE0KSxhPXQoODc1OCksQj10KDUyNjYpO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3ZhciB0LGMsZyxFLFEsdT1BLnRhcmdldCxsPUEuZ2xvYmFsLGg9QS5zdGF0O2lmKHQ9bD9uOmg/blt1XXx8cyh1LHt9KTooblt1XXx8e30pLnByb3RvdHlwZSlmb3IoYyBpbiBlKXtpZihFPWVbY10sZz1BLmRvbnRDYWxsR2V0U2V0PyhRPWkodCxjKSkmJlEudmFsdWU6dFtjXSwhQihsP2M6dSsoaD8iLiI6IiMiKStjLEEuZm9yY2VkKSYmdm9pZCAwIT09Zyl7aWYodHlwZW9mIEU9PXR5cGVvZiBnKWNvbnRpbnVlO2EoRSxnKX0oQS5zaGFtfHxnJiZnLnNoYW0pJiZyKEUsInNoYW0iLCEwKSxvKHQsYyxFLEEpfX19LDM2ODk6QT0+eyJ1c2Ugc3RyaWN0IjtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dHJ5e3JldHVybiEhQSgpfWNhdGNoKEEpe3JldHVybiEwfX19LDg2Nzg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt0KDQwNDMpO3ZhciBuPXQoNjU3NiksaT10KDE4ODApLHI9dCg2MzA4KSxvPXQoMzY4OSkscz10KDQyMDEpLGE9dCg1NzczKSxCPXMoInNwZWNpZXMiKSxjPVJlZ0V4cC5wcm90b3R5cGU7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0LGcpe3ZhciBFPXMoQSksUT0hbygoZnVuY3Rpb24oKXt2YXIgZT17fTtyZXR1cm4gZVtFXT1mdW5jdGlvbigpe3JldHVybiA3fSw3IT09IiJbQV0oZSl9KSksdT1RJiYhbygoZnVuY3Rpb24oKXt2YXIgZT0hMSx0PS9hLztyZXR1cm4ic3BsaXQiPT09QSYmKCh0PXt9KS5jb25zdHJ1Y3Rvcj17fSx0LmNvbnN0cnVjdG9yW0JdPWZ1bmN0aW9uKCl7cmV0dXJuIHR9LHQuZmxhZ3M9IiIsdFtFXT0vLi9bRV0pLHQuZXhlYz1mdW5jdGlvbigpe3JldHVybiBlPSEwLG51bGx9LHRbRV0oIiIpLCFlfSkpO2lmKCFRfHwhdXx8dCl7dmFyIGw9bigvLi9bRV0pLGg9ZShFLCIiW0FdLChmdW5jdGlvbihBLGUsdCxpLG8pe3ZhciBzPW4oQSksYT1lLmV4ZWM7cmV0dXJuIGE9PT1yfHxhPT09Yy5leGVjP1EmJiFvP3tkb25lOiEwLHZhbHVlOmwoZSx0LGkpfTp7ZG9uZTohMCx2YWx1ZTpzKHQsZSxpKX06e2RvbmU6ITF9fSkpO2koU3RyaW5nLnByb3RvdHlwZSxBLGhbMF0pLGkoYyxFLGhbMV0pfWcmJmEoY1tFXSwic2hhbSIsITApfX0sMTU5NDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzY4OSk7QS5leHBvcnRzPSFuKChmdW5jdGlvbigpe3JldHVybiBPYmplY3QuaXNFeHRlbnNpYmxlKE9iamVjdC5wcmV2ZW50RXh0ZW5zaW9ucyh7fSkpfSkpfSwxNzM1OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3MjE1KSxpPUZ1bmN0aW9uLnByb3RvdHlwZSxyPWkuYXBwbHksbz1pLmNhbGw7QS5leHBvcnRzPSJvYmplY3QiPT10eXBlb2YgUmVmbGVjdCYmUmVmbGVjdC5hcHBseXx8KG4/by5iaW5kKHIpOmZ1bmN0aW9uKCl7cmV0dXJuIG8uYXBwbHkocixhcmd1bWVudHMpfSl9LDQwNzE6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDY1NzYpLGk9dCg1MDkpLHI9dCg3MjE1KSxvPW4obi5iaW5kKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gaShBKSx2b2lkIDA9PT1lP0E6cj9vKEEsZSk6ZnVuY3Rpb24oKXtyZXR1cm4gQS5hcHBseShlLGFyZ3VtZW50cyl9fX0sNzIxNTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzY4OSk7QS5leHBvcnRzPSFuKChmdW5jdGlvbigpe3ZhciBBPWZ1bmN0aW9uKCl7fS5iaW5kKCk7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIEF8fEEuaGFzT3duUHJvcGVydHkoInByb3RvdHlwZSIpfSkpfSw2NzYxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4ODQ0KSxpPXQoNTA5KSxyPXQoODk5OSksbz10KDY4MTIpLHM9dCg2MDA0KSxhPXQoNzIxNSksQj1GdW5jdGlvbixjPW4oW10uY29uY2F0KSxnPW4oW10uam9pbiksRT17fTtBLmV4cG9ydHM9YT9CLmJpbmQ6ZnVuY3Rpb24oQSl7dmFyIGU9aSh0aGlzKSx0PWUucHJvdG90eXBlLG49cyhhcmd1bWVudHMsMSksYT1mdW5jdGlvbigpe3ZhciB0PWMobixzKGFyZ3VtZW50cykpO3JldHVybiB0aGlzIGluc3RhbmNlb2YgYT9mdW5jdGlvbihBLGUsdCl7aWYoIW8oRSxlKSl7Zm9yKHZhciBuPVtdLGk9MDtpPGU7aSsrKW5baV09ImFbIitpKyJdIjtFW2VdPUIoIkMsYSIsInJldHVybiBuZXcgQygiK2cobiwiLCIpKyIpIil9cmV0dXJuIEVbZV0oQSx0KX0oZSx0Lmxlbmd0aCx0KTplLmFwcGx5KEEsdCl9O3JldHVybiByKHQpJiYoYS5wcm90b3R5cGU9dCksYX19LDI2MTU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDcyMTUpLGk9RnVuY3Rpb24ucHJvdG90eXBlLmNhbGw7QS5leHBvcnRzPW4/aS5iaW5kKGkpOmZ1bmN0aW9uKCl7cmV0dXJuIGkuYXBwbHkoaSxhcmd1bWVudHMpfX0sMTIzNjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzY5NyksaT10KDY4MTIpLHI9RnVuY3Rpb24ucHJvdG90eXBlLG89biYmT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixzPWkociwibmFtZSIpLGE9cyYmInNvbWV0aGluZyI9PT1mdW5jdGlvbigpe30ubmFtZSxCPXMmJighbnx8biYmbyhyLCJuYW1lIikuY29uZmlndXJhYmxlKTtBLmV4cG9ydHM9e0VYSVNUUzpzLFBST1BFUjphLENPTkZJR1VSQUJMRTpCfX0sMjc0MzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCksaT10KDUwOSk7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXt0cnl7cmV0dXJuIG4oaShPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSlbdF0pKX1jYXRjaChBKXt9fX0sNjU3NjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNjY0OCksaT10KDg4NDQpO0EuZXhwb3J0cz1mdW5jdGlvbihBKXtpZigiRnVuY3Rpb24iPT09bihBKSlyZXR1cm4gaShBKX19LDg4NDQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDcyMTUpLGk9RnVuY3Rpb24ucHJvdG90eXBlLHI9aS5jYWxsLG89biYmaS5iaW5kLmJpbmQocixyKTtBLmV4cG9ydHM9bj9vOmZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiByLmFwcGx5KEEsYXJndW1lbnRzKX19fSw2MDU4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MDM3KSxpPXQoOTk4NSk7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg8Mj8odD1uW0FdLGkodCk/dDp2b2lkIDApOm5bQV0mJm5bQV1bZV07dmFyIHR9fSwxNjY0OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MjYpLGk9dCg0ODQ5KSxyPXQoOTgxKSxvPXQoOTQ3OCkscz10KDQyMDEpKCJpdGVyYXRvciIpO0EuZXhwb3J0cz1mdW5jdGlvbihBKXtpZighcihBKSlyZXR1cm4gaShBLHMpfHxpKEEsIkBAaXRlcmF0b3IiKXx8b1tuKEEpXX19LDUxODU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDI2MTUpLGk9dCg1MDkpLHI9dCg1MDI3KSxvPXQoMzY5MSkscz10KDE2NjQpLGE9VHlwZUVycm9yO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg8Mj9zKEEpOmU7aWYoaSh0KSlyZXR1cm4gcihuKHQsQSkpO3Rocm93IG5ldyBhKG8oQSkrIiBpcyBub3QgaXRlcmFibGUiKX19LDI2NDM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg4NDQpLGk9dCgyMjk3KSxyPXQoOTk4NSksbz10KDY2NDgpLHM9dCg0MzI3KSxhPW4oW10ucHVzaCk7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2lmKHIoQSkpcmV0dXJuIEE7aWYoaShBKSl7Zm9yKHZhciBlPUEubGVuZ3RoLHQ9W10sbj0wO248ZTtuKyspe3ZhciBCPUFbbl07InN0cmluZyI9PXR5cGVvZiBCP2EodCxCKToibnVtYmVyIiE9dHlwZW9mIEImJiJOdW1iZXIiIT09byhCKSYmIlN0cmluZyIhPT1vKEIpfHxhKHQscyhCKSl9dmFyIGM9dC5sZW5ndGgsZz0hMDtyZXR1cm4gZnVuY3Rpb24oQSxlKXtpZihnKXJldHVybiBnPSExLGU7aWYoaSh0aGlzKSlyZXR1cm4gZTtmb3IodmFyIG49MDtuPGM7bisrKWlmKHRbbl09PT1BKXJldHVybiBlfX19fSw0ODQ5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg1MDkpLGk9dCg5ODEpO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3ZhciB0PUFbZV07cmV0dXJuIGkodCk/dm9pZCAwOm4odCl9fSw3MDE3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4ODQ0KSxpPXQoNjkwKSxyPU1hdGguZmxvb3Isbz1uKCIiLmNoYXJBdCkscz1uKCIiLnJlcGxhY2UpLGE9bigiIi5zbGljZSksQj0vXCQoWyQmJ2BdfFxkezEsMn18PFtePl0qPikvZyxjPS9cJChbJCYnYF18XGR7MSwyfSkvZztBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQsbixnLEUpe3ZhciBRPXQrQS5sZW5ndGgsdT1uLmxlbmd0aCxsPWM7cmV0dXJuIHZvaWQgMCE9PWcmJihnPWkoZyksbD1CKSxzKEUsbCwoZnVuY3Rpb24oaSxzKXt2YXIgQjtzd2l0Y2gobyhzLDApKXtjYXNlIiQiOnJldHVybiIkIjtjYXNlIiYiOnJldHVybiBBO2Nhc2UiYCI6cmV0dXJuIGEoZSwwLHQpO2Nhc2UiJyI6cmV0dXJuIGEoZSxRKTtjYXNlIjwiOkI9Z1thKHMsMSwtMSldO2JyZWFrO2RlZmF1bHQ6dmFyIGM9K3M7aWYoMD09PWMpcmV0dXJuIGk7aWYoYz51KXt2YXIgRT1yKGMvMTApO3JldHVybiAwPT09RT9pOkU8PXU/dm9pZCAwPT09bltFLTFdP28ocywxKTpuW0UtMV0rbyhzLDEpOml9Qj1uW2MtMV19cmV0dXJuIHZvaWQgMD09PUI/IiI6Qn0pKX19LDkwMzc6ZnVuY3Rpb24oQSl7InVzZSBzdHJpY3QiO3ZhciB0PWZ1bmN0aW9uKEEpe3JldHVybiBBJiZBLk1hdGg9PT1NYXRoJiZBfTtBLmV4cG9ydHM9dCgib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMpfHx0KCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3cpfHx0KCJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZil8fHQoIm9iamVjdCI9PXR5cGVvZiBlJiZlKXx8ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKXx8dGhpc3x8RnVuY3Rpb24oInJldHVybiB0aGlzIikoKX0sNjgxMjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCksaT10KDY5MCkscj1uKHt9Lmhhc093blByb3BlcnR5KTtBLmV4cG9ydHM9T2JqZWN0Lmhhc093bnx8ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcihpKEEpLGUpfX0sNzI0ODpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz17fX0sOTIwOkE9PnsidXNlIHN0cmljdCI7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7dHJ5ezE9PT1hcmd1bWVudHMubGVuZ3RoP2NvbnNvbGUuZXJyb3IoQSk6Y29uc29sZS5lcnJvcihBLGUpfWNhdGNoKEEpe319fSwyNjg4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg2MDU4KTtBLmV4cG9ydHM9bigiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiKX0sODUwNjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzY5NyksaT10KDM2ODkpLHI9dCg2NDIwKTtBLmV4cG9ydHM9IW4mJiFpKChmdW5jdGlvbigpe3JldHVybiA3IT09T2JqZWN0LmRlZmluZVByb3BlcnR5KHIoImRpdiIpLCJhIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIDd9fSkuYX0pKX0sNDQxMzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCksaT10KDM2ODkpLHI9dCg2NjQ4KSxvPU9iamVjdCxzPW4oIiIuc3BsaXQpO0EuZXhwb3J0cz1pKChmdW5jdGlvbigpe3JldHVybiFvKCJ6IikucHJvcGVydHlJc0VudW1lcmFibGUoMCl9KSk/ZnVuY3Rpb24oQSl7cmV0dXJuIlN0cmluZyI9PT1yKEEpP3MoQSwiIik6byhBKX06b30sMzQ1NzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4NSksaT10KDg5OTkpLHI9dCg5Mzg1KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBvLHM7cmV0dXJuIHImJm4obz1lLmNvbnN0cnVjdG9yKSYmbyE9PXQmJmkocz1vLnByb3RvdHlwZSkmJnMhPT10LnByb3RvdHlwZSYmcihBLHMpLEF9fSw2NzM4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4ODQ0KSxpPXQoOTk4NSkscj10KDQwOTEpLG89bihGdW5jdGlvbi50b1N0cmluZyk7aShyLmluc3BlY3RTb3VyY2UpfHwoci5pbnNwZWN0U291cmNlPWZ1bmN0aW9uKEEpe3JldHVybiBvKEEpfSksQS5leHBvcnRzPXIuaW5zcGVjdFNvdXJjZX0sNTM3NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDg4NDQpLHI9dCg3MjQ4KSxvPXQoODk5OSkscz10KDY4MTIpLGE9dCgyNTYwKS5mLEI9dCgyNzQxKSxjPXQoNjA2MiksZz10KDcwNDkpLEU9dCg0NjMwKSxRPXQoMTU5NCksdT0hMSxsPUUoIm1ldGEiKSxoPTAsdz1mdW5jdGlvbihBKXthKEEsbCx7dmFsdWU6e29iamVjdElEOiJPIitoKyssd2Vha0RhdGE6e319fSl9LEM9QS5leHBvcnRzPXtlbmFibGU6ZnVuY3Rpb24oKXtDLmVuYWJsZT1mdW5jdGlvbigpe30sdT0hMDt2YXIgQT1CLmYsZT1pKFtdLnNwbGljZSksdD17fTt0W2xdPTEsQSh0KS5sZW5ndGgmJihCLmY9ZnVuY3Rpb24odCl7Zm9yKHZhciBuPUEodCksaT0wLHI9bi5sZW5ndGg7aTxyO2krKylpZihuW2ldPT09bCl7ZShuLGksMSk7YnJlYWt9cmV0dXJuIG59LG4oe3RhcmdldDoiT2JqZWN0IixzdGF0OiEwLGZvcmNlZDohMH0se2dldE93blByb3BlcnR5TmFtZXM6Yy5mfSkpfSxmYXN0S2V5OmZ1bmN0aW9uKEEsZSl7aWYoIW8oQSkpcmV0dXJuInN5bWJvbCI9PXR5cGVvZiBBP0E6KCJzdHJpbmciPT10eXBlb2YgQT8iUyI6IlAiKStBO2lmKCFzKEEsbCkpe2lmKCFnKEEpKXJldHVybiJGIjtpZighZSlyZXR1cm4iRSI7dyhBKX1yZXR1cm4gQVtsXS5vYmplY3RJRH0sZ2V0V2Vha0RhdGE6ZnVuY3Rpb24oQSxlKXtpZighcyhBLGwpKXtpZighZyhBKSlyZXR1cm4hMDtpZighZSlyZXR1cm4hMTt3KEEpfXJldHVybiBBW2xdLndlYWtEYXRhfSxvbkZyZWV6ZTpmdW5jdGlvbihBKXtyZXR1cm4gUSYmdSYmZyhBKSYmIXMoQSxsKSYmdyhBKSxBfX07cltsXT0hMH0sNjE4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG4saSxyLG89dCg5ODM0KSxzPXQoOTAzNyksYT10KDg5OTkpLEI9dCg1NzczKSxjPXQoNjgxMiksZz10KDQwOTEpLEU9dCgyNzEzKSxRPXQoNzI0OCksdT0iT2JqZWN0IGFscmVhZHkgaW5pdGlhbGl6ZWQiLGw9cy5UeXBlRXJyb3IsaD1zLldlYWtNYXA7aWYob3x8Zy5zdGF0ZSl7dmFyIHc9Zy5zdGF0ZXx8KGcuc3RhdGU9bmV3IGgpO3cuZ2V0PXcuZ2V0LHcuaGFzPXcuaGFzLHcuc2V0PXcuc2V0LG49ZnVuY3Rpb24oQSxlKXtpZih3LmhhcyhBKSl0aHJvdyBuZXcgbCh1KTtyZXR1cm4gZS5mYWNhZGU9QSx3LnNldChBLGUpLGV9LGk9ZnVuY3Rpb24oQSl7cmV0dXJuIHcuZ2V0KEEpfHx7fX0scj1mdW5jdGlvbihBKXtyZXR1cm4gdy5oYXMoQSl9fWVsc2V7dmFyIEM9RSgic3RhdGUiKTtRW0NdPSEwLG49ZnVuY3Rpb24oQSxlKXtpZihjKEEsQykpdGhyb3cgbmV3IGwodSk7cmV0dXJuIGUuZmFjYWRlPUEsQihBLEMsZSksZX0saT1mdW5jdGlvbihBKXtyZXR1cm4gYyhBLEMpP0FbQ106e319LHI9ZnVuY3Rpb24oQSl7cmV0dXJuIGMoQSxDKX19QS5leHBvcnRzPXtzZXQ6bixnZXQ6aSxoYXM6cixlbmZvcmNlOmZ1bmN0aW9uKEEpe3JldHVybiByKEEpP2koQSk6bihBLHt9KX0sZ2V0dGVyRm9yOmZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdDtpZighYShlKXx8KHQ9aShlKSkudHlwZSE9PUEpdGhyb3cgbmV3IGwoIkluY29tcGF0aWJsZSByZWNlaXZlciwgIitBKyIgcmVxdWlyZWQiKTtyZXR1cm4gdH19fX0sMzI5MjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNDIwMSksaT10KDk0NzgpLHI9bigiaXRlcmF0b3IiKSxvPUFycmF5LnByb3RvdHlwZTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7cmV0dXJuIHZvaWQgMCE9PUEmJihpLkFycmF5PT09QXx8b1tyXT09PUEpfX0sMjI5NzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNjY0OCk7QS5leHBvcnRzPUFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKEEpe3JldHVybiJBcnJheSI9PT1uKEEpfX0sOTk4NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMjY1OSksaT1uLmFsbDtBLmV4cG9ydHM9bi5JU19IVE1MRERBP2Z1bmN0aW9uKEEpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBBfHxBPT09aX06ZnVuY3Rpb24oQSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIEF9fSw5NDI5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4ODQ0KSxpPXQoMzY4OSkscj10KDk5ODUpLG89dCg5MjYpLHM9dCg2MDU4KSxhPXQoNjczOCksQj1mdW5jdGlvbigpe30sYz1bXSxnPXMoIlJlZmxlY3QiLCJjb25zdHJ1Y3QiKSxFPS9eXHMqKD86Y2xhc3N8ZnVuY3Rpb24pXGIvLFE9bihFLmV4ZWMpLHU9IUUudGVzdChCKSxsPWZ1bmN0aW9uKEEpe2lmKCFyKEEpKXJldHVybiExO3RyeXtyZXR1cm4gZyhCLGMsQSksITB9Y2F0Y2goQSl7cmV0dXJuITF9fSxoPWZ1bmN0aW9uKEEpe2lmKCFyKEEpKXJldHVybiExO3N3aXRjaChvKEEpKXtjYXNlIkFzeW5jRnVuY3Rpb24iOmNhc2UiR2VuZXJhdG9yRnVuY3Rpb24iOmNhc2UiQXN5bmNHZW5lcmF0b3JGdW5jdGlvbiI6cmV0dXJuITF9dHJ5e3JldHVybiB1fHwhIVEoRSxhKEEpKX1jYXRjaChBKXtyZXR1cm4hMH19O2guc2hhbT0hMCxBLmV4cG9ydHM9IWd8fGkoKGZ1bmN0aW9uKCl7dmFyIEE7cmV0dXJuIGwobC5jYWxsKXx8IWwoT2JqZWN0KXx8IWwoKGZ1bmN0aW9uKCl7QT0hMH0pKXx8QX0pKT9oOmx9LDUyNjY6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDM2ODkpLGk9dCg5OTg1KSxyPS8jfFwucHJvdG90eXBlXC4vLG89ZnVuY3Rpb24oQSxlKXt2YXIgdD1hW3MoQSldO3JldHVybiB0PT09Y3x8dCE9PUImJihpKGUpP24oZSk6ISFlKX0scz1vLm5vcm1hbGl6ZT1mdW5jdGlvbihBKXtyZXR1cm4gU3RyaW5nKEEpLnJlcGxhY2UociwiLiIpLnRvTG93ZXJDYXNlKCl9LGE9by5kYXRhPXt9LEI9by5OQVRJVkU9Ik4iLGM9by5QT0xZRklMTD0iUCI7QS5leHBvcnRzPW99LDk4MTpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz1mdW5jdGlvbihBKXtyZXR1cm4gbnVsbD09QX19LDg5OTk6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODUpLGk9dCgyNjU5KSxyPWkuYWxsO0EuZXhwb3J0cz1pLklTX0hUTUxEREE/ZnVuY3Rpb24oQSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBBP251bGwhPT1BOm4oQSl8fEE9PT1yfTpmdW5jdGlvbihBKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIEE/bnVsbCE9PUE6bihBKX19LDM5MzE6QT0+eyJ1c2Ugc3RyaWN0IjtBLmV4cG9ydHM9ITF9LDEyNDU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg5OTkpLGk9dCg2NjQ4KSxyPXQoNDIwMSkoIm1hdGNoIik7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3ZhciBlO3JldHVybiBuKEEpJiYodm9pZCAwIT09KGU9QVtyXSk/ISFlOiJSZWdFeHAiPT09aShBKSl9fSw3MzQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDYwNTgpLGk9dCg5OTg1KSxyPXQoMzYyMiksbz10KDk1MjUpLHM9T2JqZWN0O0EuZXhwb3J0cz1vP2Z1bmN0aW9uKEEpe3JldHVybiJzeW1ib2wiPT10eXBlb2YgQX06ZnVuY3Rpb24oQSl7dmFyIGU9bigiU3ltYm9sIik7cmV0dXJuIGkoZSkmJnIoZS5wcm90b3R5cGUscyhBKSl9fSw4NzM0OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg0MDcxKSxpPXQoMjYxNSkscj10KDUwMjcpLG89dCgzNjkxKSxzPXQoMzI5MiksYT10KDYzMTApLEI9dCgzNjIyKSxjPXQoNTE4NSksZz10KDE2NjQpLEU9dCgyMTI1KSxRPVR5cGVFcnJvcix1PWZ1bmN0aW9uKEEsZSl7dGhpcy5zdG9wcGVkPUEsdGhpcy5yZXN1bHQ9ZX0sbD11LnByb3RvdHlwZTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBoLHcsQyxJLE0sZCxwLG09dCYmdC50aGF0LEY9ISghdHx8IXQuQVNfRU5UUklFUyksRD0hKCF0fHwhdC5JU19SRUNPUkQpLFk9ISghdHx8IXQuSVNfSVRFUkFUT1IpLGY9ISghdHx8IXQuSU5URVJSVVBURUQpLE49bihlLG0pLFU9ZnVuY3Rpb24oQSl7cmV0dXJuIGgmJkUoaCwibm9ybWFsIixBKSxuZXcgdSghMCxBKX0seT1mdW5jdGlvbihBKXtyZXR1cm4gRj8ocihBKSxmP04oQVswXSxBWzFdLFUpOk4oQVswXSxBWzFdKSk6Zj9OKEEsVSk6TihBKX07aWYoRCloPUEuaXRlcmF0b3I7ZWxzZSBpZihZKWg9QTtlbHNle2lmKCEodz1nKEEpKSl0aHJvdyBuZXcgUShvKEEpKyIgaXMgbm90IGl0ZXJhYmxlIik7aWYocyh3KSl7Zm9yKEM9MCxJPWEoQSk7ST5DO0MrKylpZigoTT15KEFbQ10pKSYmQihsLE0pKXJldHVybiBNO3JldHVybiBuZXcgdSghMSl9aD1jKEEsdyl9Zm9yKGQ9RD9BLm5leHQ6aC5uZXh0OyEocD1pKGQsaCkpLmRvbmU7KXt0cnl7TT15KHAudmFsdWUpfWNhdGNoKEEpe0UoaCwidGhyb3ciLEEpfWlmKCJvYmplY3QiPT10eXBlb2YgTSYmTSYmQihsLE0pKXJldHVybiBNfXJldHVybiBuZXcgdSghMSl9fSwyMTI1OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgyNjE1KSxpPXQoNTAyNykscj10KDQ4NDkpO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUsdCl7dmFyIG8scztpKEEpO3RyeXtpZighKG89cihBLCJyZXR1cm4iKSkpe2lmKCJ0aHJvdyI9PT1lKXRocm93IHQ7cmV0dXJuIHR9bz1uKG8sQSl9Y2F0Y2goQSl7cz0hMCxvPUF9aWYoInRocm93Ij09PWUpdGhyb3cgdDtpZihzKXRocm93IG87cmV0dXJuIGkobyksdH19LDk3NDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMjAxMykuSXRlcmF0b3JQcm90b3R5cGUsaT10KDUzOTEpLHI9dCg1Njg0KSxvPXQoNTk5Nykscz10KDk0NzgpLGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0LEIpe3ZhciBjPWUrIiBJdGVyYXRvciI7cmV0dXJuIEEucHJvdG90eXBlPWkobix7bmV4dDpyKCshQix0KX0pLG8oQSxjLCExLCEwKSxzW2NdPWEsQX19LDE5MzQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgyNjE1KSxyPXQoMzkzMSksbz10KDEyMzYpLHM9dCg5OTg1KSxhPXQoOTc0KSxCPXQoMTg2OCksYz10KDkzODUpLGc9dCg1OTk3KSxFPXQoNTc3MyksUT10KDE4ODApLHU9dCg0MjAxKSxsPXQoOTQ3OCksaD10KDIwMTMpLHc9by5QUk9QRVIsQz1vLkNPTkZJR1VSQUJMRSxJPWguSXRlcmF0b3JQcm90b3R5cGUsTT1oLkJVR0dZX1NBRkFSSV9JVEVSQVRPUlMsZD11KCJpdGVyYXRvciIpLHA9ImtleXMiLG09InZhbHVlcyIsRj0iZW50cmllcyIsRD1mdW5jdGlvbigpe3JldHVybiB0aGlzfTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQsbyx1LGgsWSl7YSh0LGUsbyk7dmFyIGYsTixVLHk9ZnVuY3Rpb24oQSl7aWYoQT09PXUmJlMpcmV0dXJuIFM7aWYoIU0mJkEmJkEgaW4gUilyZXR1cm4gUltBXTtzd2l0Y2goQSl7Y2FzZSBwOmNhc2UgbTpjYXNlIEY6cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0KHRoaXMsQSl9fXJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgdCh0aGlzKX19LFQ9ZSsiIEl0ZXJhdG9yIix4PSExLFI9QS5wcm90b3R5cGUsRz1SW2RdfHxSWyJAQGl0ZXJhdG9yIl18fHUmJlJbdV0sUz0hTSYmR3x8eSh1KSxiPSJBcnJheSI9PT1lJiZSLmVudHJpZXN8fEc7aWYoYiYmKGY9QihiLmNhbGwobmV3IEEpKSkhPT1PYmplY3QucHJvdG90eXBlJiZmLm5leHQmJihyfHxCKGYpPT09SXx8KGM/YyhmLEkpOnMoZltkXSl8fFEoZixkLEQpKSxnKGYsVCwhMCwhMCksciYmKGxbVF09RCkpLHcmJnU9PT1tJiZHJiZHLm5hbWUhPT1tJiYoIXImJkM/RShSLCJuYW1lIixtKTooeD0hMCxTPWZ1bmN0aW9uKCl7cmV0dXJuIGkoRyx0aGlzKX0pKSx1KWlmKE49e3ZhbHVlczp5KG0pLGtleXM6aD9TOnkocCksZW50cmllczp5KEYpfSxZKWZvcihVIGluIE4pKE18fHh8fCEoVSBpbiBSKSkmJlEoUixVLE5bVV0pO2Vsc2Ugbih7dGFyZ2V0OmUscHJvdG86ITAsZm9yY2VkOk18fHh9LE4pO3JldHVybiByJiYhWXx8UltkXT09PVN8fFEoUixkLFMse25hbWU6dX0pLGxbZV09UyxOfX0sMjAxMzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuLGkscixvPXQoMzY4OSkscz10KDk5ODUpLGE9dCg4OTk5KSxCPXQoNTM5MSksYz10KDE4NjgpLGc9dCgxODgwKSxFPXQoNDIwMSksUT10KDM5MzEpLHU9RSgiaXRlcmF0b3IiKSxsPSExO1tdLmtleXMmJigibmV4dCJpbihyPVtdLmtleXMoKSk/KGk9YyhjKHIpKSkhPT1PYmplY3QucHJvdG90eXBlJiYobj1pKTpsPSEwKSwhYShuKXx8bygoZnVuY3Rpb24oKXt2YXIgQT17fTtyZXR1cm4gblt1XS5jYWxsKEEpIT09QX0pKT9uPXt9OlEmJihuPUIobikpLHMoblt1XSl8fGcobix1LChmdW5jdGlvbigpe3JldHVybiB0aGlzfSkpLEEuZXhwb3J0cz17SXRlcmF0b3JQcm90b3R5cGU6bixCVUdHWV9TQUZBUklfSVRFUkFUT1JTOmx9fSw5NDc4OkE9PnsidXNlIHN0cmljdCI7QS5leHBvcnRzPXt9fSw2MzEwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzMTI2KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7cmV0dXJuIG4oQS5sZW5ndGgpfX0sODcwMjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCksaT10KDM2ODkpLHI9dCg5OTg1KSxvPXQoNjgxMikscz10KDc2OTcpLGE9dCgxMjM2KS5DT05GSUdVUkFCTEUsQj10KDY3MzgpLGM9dCg2MTgpLGc9Yy5lbmZvcmNlLEU9Yy5nZXQsUT1TdHJpbmcsdT1PYmplY3QuZGVmaW5lUHJvcGVydHksbD1uKCIiLnNsaWNlKSxoPW4oIiIucmVwbGFjZSksdz1uKFtdLmpvaW4pLEM9cyYmIWkoKGZ1bmN0aW9uKCl7cmV0dXJuIDghPT11KChmdW5jdGlvbigpe30pLCJsZW5ndGgiLHt2YWx1ZTo4fSkubGVuZ3RofSkpLEk9U3RyaW5nKFN0cmluZykuc3BsaXQoIlN0cmluZyIpLE09QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXsiU3ltYm9sKCI9PT1sKFEoZSksMCw3KSYmKGU9IlsiK2goUShlKSwvXlN5bWJvbFwoKFteKV0qKVwpLywiJDEiKSsiXSIpLHQmJnQuZ2V0dGVyJiYoZT0iZ2V0ICIrZSksdCYmdC5zZXR0ZXImJihlPSJzZXQgIitlKSwoIW8oQSwibmFtZSIpfHxhJiZBLm5hbWUhPT1lKSYmKHM/dShBLCJuYW1lIix7dmFsdWU6ZSxjb25maWd1cmFibGU6ITB9KTpBLm5hbWU9ZSksQyYmdCYmbyh0LCJhcml0eSIpJiZBLmxlbmd0aCE9PXQuYXJpdHkmJnUoQSwibGVuZ3RoIix7dmFsdWU6dC5hcml0eX0pO3RyeXt0JiZvKHQsImNvbnN0cnVjdG9yIikmJnQuY29uc3RydWN0b3I/cyYmdShBLCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pOkEucHJvdG90eXBlJiYoQS5wcm90b3R5cGU9dm9pZCAwKX1jYXRjaChBKXt9dmFyIG49ZyhBKTtyZXR1cm4gbyhuLCJzb3VyY2UiKXx8KG4uc291cmNlPXcoSSwic3RyaW5nIj09dHlwZW9mIGU/ZToiIikpLEF9O0Z1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZz1NKChmdW5jdGlvbigpe3JldHVybiByKHRoaXMpJiZFKHRoaXMpLnNvdXJjZXx8Qih0aGlzKX0pLCJ0b1N0cmluZyIpfSwxNzQ1OkE9PnsidXNlIHN0cmljdCI7dmFyIGU9TWF0aC5leHBtMSx0PU1hdGguZXhwO0EuZXhwb3J0cz0hZXx8ZSgxMCk+MjIwMjUuNDY1Nzk0ODA2NzE4fHxlKDEwKTwyMjAyNS40NjU3OTQ4MDY3MTh8fC0yZS0xNyE9PWUoLTJlLTE3KT9mdW5jdGlvbihBKXt2YXIgZT0rQTtyZXR1cm4gMD09PWU/ZTplPi0xZS02JiZlPDFlLTY/ZStlKmUvMjp0KGUpLTF9OmV9LDQ3MzY6QT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZT1NYXRoLmxvZyx0PU1hdGguTE9HMTBFO0EuZXhwb3J0cz1NYXRoLmxvZzEwfHxmdW5jdGlvbihBKXtyZXR1cm4gZShBKSp0fX0sMzk1NjpBPT57InVzZSBzdHJpY3QiO3ZhciBlPU1hdGgubG9nO0EuZXhwb3J0cz1NYXRoLmxvZzFwfHxmdW5jdGlvbihBKXt2YXIgdD0rQTtyZXR1cm4gdD4tMWUtOCYmdDwxZS04P3QtdCp0LzI6ZSgxK3QpfX0sNTY4MDpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz1NYXRoLnNpZ258fGZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiAwPT09ZXx8ZSE9ZT9lOmU8MD8tMToxfX0sODgyODpBPT57InVzZSBzdHJpY3QiO3ZhciBlPU1hdGguY2VpbCx0PU1hdGguZmxvb3I7QS5leHBvcnRzPU1hdGgudHJ1bmN8fGZ1bmN0aW9uKEEpe3ZhciBuPStBO3JldHVybihuPjA/dDplKShuKX19LDIzMTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuLGkscixvLHMsYT10KDkwMzcpLEI9dCg0MDcxKSxjPXQoMjQ3NCkuZixnPXQoOTg4Nikuc2V0LEU9dCg0NDEwKSxRPXQoNDc2NCksdT10KDMyMjEpLGw9dCg3NDg2KSxoPXQoODA2KSx3PWEuTXV0YXRpb25PYnNlcnZlcnx8YS5XZWJLaXRNdXRhdGlvbk9ic2VydmVyLEM9YS5kb2N1bWVudCxJPWEucHJvY2VzcyxNPWEuUHJvbWlzZSxkPWMoYSwicXVldWVNaWNyb3Rhc2siKSxwPWQmJmQudmFsdWU7aWYoIXApe3ZhciBtPW5ldyBFLEY9ZnVuY3Rpb24oKXt2YXIgQSxlO2ZvcihoJiYoQT1JLmRvbWFpbikmJkEuZXhpdCgpO2U9bS5nZXQoKTspdHJ5e2UoKX1jYXRjaChBKXt0aHJvdyBtLmhlYWQmJm4oKSxBfUEmJkEuZW50ZXIoKX07UXx8aHx8bHx8IXd8fCFDPyF1JiZNJiZNLnJlc29sdmU/KChvPU0ucmVzb2x2ZSh2b2lkIDApKS5jb25zdHJ1Y3Rvcj1NLHM9QihvLnRoZW4sbyksbj1mdW5jdGlvbigpe3MoRil9KTpoP249ZnVuY3Rpb24oKXtJLm5leHRUaWNrKEYpfTooZz1CKGcsYSksbj1mdW5jdGlvbigpe2coRil9KTooaT0hMCxyPUMuY3JlYXRlVGV4dE5vZGUoIiIpLG5ldyB3KEYpLm9ic2VydmUocix7Y2hhcmFjdGVyRGF0YTohMH0pLG49ZnVuY3Rpb24oKXtyLmRhdGE9aT0haX0pLHA9ZnVuY3Rpb24oQSl7bS5oZWFkfHxuKCksbS5hZGQoQSl9fUEuZXhwb3J0cz1wfSwyNTgyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg1MDkpLGk9VHlwZUVycm9yLHI9ZnVuY3Rpb24oQSl7dmFyIGUsdDt0aGlzLnByb21pc2U9bmV3IEEoKGZ1bmN0aW9uKEEsbil7aWYodm9pZCAwIT09ZXx8dm9pZCAwIT09dCl0aHJvdyBuZXcgaSgiQmFkIFByb21pc2UgY29uc3RydWN0b3IiKTtlPUEsdD1ufSkpLHRoaXMucmVzb2x2ZT1uKGUpLHRoaXMucmVqZWN0PW4odCl9O0EuZXhwb3J0cy5mPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKX19LDIxMjQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDEyNDUpLGk9VHlwZUVycm9yO0EuZXhwb3J0cz1mdW5jdGlvbihBKXtpZihuKEEpKXRocm93IG5ldyBpKCJUaGUgbWV0aG9kIGRvZXNuJ3QgYWNjZXB0IHJlZ3VsYXIgZXhwcmVzc2lvbnMiKTtyZXR1cm4gQX19LDQ4MTg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDkwMzcpLGk9dCgzNjg5KSxyPXQoODg0NCksbz10KDQzMjcpLHM9dCgxNDM1KS50cmltLGE9dCg2MzUwKSxCPXIoIiIuY2hhckF0KSxjPW4ucGFyc2VGbG9hdCxnPW4uU3ltYm9sLEU9ZyYmZy5pdGVyYXRvcixRPTEvYyhhKyItMCIpIT0tMS8wfHxFJiYhaSgoZnVuY3Rpb24oKXtjKE9iamVjdChFKSl9KSk7QS5leHBvcnRzPVE/ZnVuY3Rpb24oQSl7dmFyIGU9cyhvKEEpKSx0PWMoZSk7cmV0dXJuIDA9PT10JiYiLSI9PT1CKGUsMCk/LTA6dH06Y30sNzg5NzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTAzNyksaT10KDM2ODkpLHI9dCg4ODQ0KSxvPXQoNDMyNykscz10KDE0MzUpLnRyaW0sYT10KDYzNTApLEI9bi5wYXJzZUludCxjPW4uU3ltYm9sLGc9YyYmYy5pdGVyYXRvcixFPS9eWystXT8weC9pLFE9cihFLmV4ZWMpLHU9OCE9PUIoYSsiMDgiKXx8MjIhPT1CKGErIjB4MTYiKXx8ZyYmIWkoKGZ1bmN0aW9uKCl7QihPYmplY3QoZykpfSkpO0EuZXhwb3J0cz11P2Z1bmN0aW9uKEEsZSl7dmFyIHQ9cyhvKEEpKTtyZXR1cm4gQih0LGU+Pj4wfHwoUShFLHQpPzE2OjEwKSl9OkJ9LDUzOTE6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbixpPXQoNTAyNykscj10KDg5MjApLG89dCgyNzM5KSxzPXQoNzI0OCksYT10KDI2ODgpLEI9dCg2NDIwKSxjPXQoMjcxMyksZz0icHJvdG90eXBlIixFPSJzY3JpcHQiLFE9YygiSUVfUFJPVE8iKSx1PWZ1bmN0aW9uKCl7fSxsPWZ1bmN0aW9uKEEpe3JldHVybiI8c2NyaXB0PiIrQSsiPC8iK0UrIj4ifSxoPWZ1bmN0aW9uKEEpe0Eud3JpdGUobCgiIikpLEEuY2xvc2UoKTt2YXIgZT1BLnBhcmVudFdpbmRvdy5PYmplY3Q7cmV0dXJuIEE9bnVsbCxlfSx3PWZ1bmN0aW9uKCl7dHJ5e249bmV3IEFjdGl2ZVhPYmplY3QoImh0bWxmaWxlIil9Y2F0Y2goQSl7fXZhciBBLGU7dz0idW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmRvbWFpbiYmbj9oKG4pOigoZT1CKCJpZnJhbWUiKSkuc3R5bGUuZGlzcGxheT0ibm9uZSIsYS5hcHBlbmRDaGlsZChlKSxlLnNyYz1TdHJpbmcoImphdmFzY3JpcHQ6IiksKEE9ZS5jb250ZW50V2luZG93LmRvY3VtZW50KS5vcGVuKCksQS53cml0ZShsKCJkb2N1bWVudC5GPU9iamVjdCIpKSxBLmNsb3NlKCksQS5GKTpoKG4pO2Zvcih2YXIgdD1vLmxlbmd0aDt0LS07KWRlbGV0ZSB3W2ddW29bdF1dO3JldHVybiB3KCl9O3NbUV09ITAsQS5leHBvcnRzPU9iamVjdC5jcmVhdGV8fGZ1bmN0aW9uKEEsZSl7dmFyIHQ7cmV0dXJuIG51bGwhPT1BPyh1W2ddPWkoQSksdD1uZXcgdSx1W2ddPW51bGwsdFtRXT1BKTp0PXcoKSx2b2lkIDA9PT1lP3Q6ci5mKHQsZSl9fSw4OTIwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3Njk3KSxpPXQoNTY0OCkscj10KDI1NjApLG89dCg1MDI3KSxzPXQoNTI5MCksYT10KDMwMCk7ZS5mPW4mJiFpP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzOmZ1bmN0aW9uKEEsZSl7byhBKTtmb3IodmFyIHQsbj1zKGUpLGk9YShlKSxCPWkubGVuZ3RoLGM9MDtCPmM7KXIuZihBLHQ9aVtjKytdLG5bdF0pO3JldHVybiBBfX0sMjU2MDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzY5NyksaT10KDg1MDYpLHI9dCg1NjQ4KSxvPXQoNTAyNykscz10KDgzNjApLGE9VHlwZUVycm9yLEI9T2JqZWN0LmRlZmluZVByb3BlcnR5LGM9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixnPSJlbnVtZXJhYmxlIixFPSJjb25maWd1cmFibGUiLFE9IndyaXRhYmxlIjtlLmY9bj9yP2Z1bmN0aW9uKEEsZSx0KXtpZihvKEEpLGU9cyhlKSxvKHQpLCJmdW5jdGlvbiI9PXR5cGVvZiBBJiYicHJvdG90eXBlIj09PWUmJiJ2YWx1ZSJpbiB0JiZRIGluIHQmJiF0W1FdKXt2YXIgbj1jKEEsZSk7biYmbltRXSYmKEFbZV09dC52YWx1ZSx0PXtjb25maWd1cmFibGU6RSBpbiB0P3RbRV06bltFXSxlbnVtZXJhYmxlOmcgaW4gdD90W2ddOm5bZ10sd3JpdGFibGU6ITF9KX1yZXR1cm4gQihBLGUsdCl9OkI6ZnVuY3Rpb24oQSxlLHQpe2lmKG8oQSksZT1zKGUpLG8odCksaSl0cnl7cmV0dXJuIEIoQSxlLHQpfWNhdGNoKEEpe31pZigiZ2V0ImluIHR8fCJzZXQiaW4gdCl0aHJvdyBuZXcgYSgiQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQiKTtyZXR1cm4idmFsdWUiaW4gdCYmKEFbZV09dC52YWx1ZSksQX19LDI0NzQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDc2OTcpLGk9dCgyNjE1KSxyPXQoOTU1Niksbz10KDU2ODQpLHM9dCg1MjkwKSxhPXQoODM2MCksQj10KDY4MTIpLGM9dCg4NTA2KSxnPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7ZS5mPW4/ZzpmdW5jdGlvbihBLGUpe2lmKEE9cyhBKSxlPWEoZSksYyl0cnl7cmV0dXJuIGcoQSxlKX1jYXRjaChBKXt9aWYoQihBLGUpKXJldHVybiBvKCFpKHIuZixBLGUpLEFbZV0pfX0sNjA2MjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNjY0OCksaT10KDUyOTApLHI9dCgyNzQxKS5mLG89dCg5MDE1KSxzPSJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3cmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzP09iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHdpbmRvdyk6W107QS5leHBvcnRzLmY9ZnVuY3Rpb24oQSl7cmV0dXJuIHMmJiJXaW5kb3ciPT09bihBKT9mdW5jdGlvbihBKXt0cnl7cmV0dXJuIHIoQSl9Y2F0Y2goQSl7cmV0dXJuIG8ocyl9fShBKTpyKGkoQSkpfX0sMjc0MTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNDk0OCksaT10KDI3MzkpLmNvbmNhdCgibGVuZ3RoIiwicHJvdG90eXBlIik7ZS5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzfHxmdW5jdGlvbihBKXtyZXR1cm4gbihBLGkpfX0sNzUxODooQSxlKT0+eyJ1c2Ugc3RyaWN0IjtlLmY9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9sc30sMTg2ODooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNjgxMiksaT10KDk5ODUpLHI9dCg2OTApLG89dCgyNzEzKSxzPXQoMTc0OCksYT1vKCJJRV9QUk9UTyIpLEI9T2JqZWN0LGM9Qi5wcm90b3R5cGU7QS5leHBvcnRzPXM/Qi5nZXRQcm90b3R5cGVPZjpmdW5jdGlvbihBKXt2YXIgZT1yKEEpO2lmKG4oZSxhKSlyZXR1cm4gZVthXTt2YXIgdD1lLmNvbnN0cnVjdG9yO3JldHVybiBpKHQpJiZlIGluc3RhbmNlb2YgdD90LnByb3RvdHlwZTplIGluc3RhbmNlb2YgQj9jOm51bGx9fSw3MDQ5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzNjg5KSxpPXQoODk5OSkscj10KDY2NDgpLG89dCgxNjU1KSxzPU9iamVjdC5pc0V4dGVuc2libGUsYT1uKChmdW5jdGlvbigpe3MoMSl9KSk7QS5leHBvcnRzPWF8fG8/ZnVuY3Rpb24oQSl7cmV0dXJuISFpKEEpJiYoIW98fCJBcnJheUJ1ZmZlciIhPT1yKEEpKSYmKCFzfHxzKEEpKX06c30sMzYyMjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCk7QS5leHBvcnRzPW4oe30uaXNQcm90b3R5cGVPZil9LDQ5NDg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg4NDQpLGk9dCg2ODEyKSxyPXQoNTI5MCksbz10KDQzMjgpLmluZGV4T2Yscz10KDcyNDgpLGE9bihbXS5wdXNoKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuPXIoQSksQj0wLGM9W107Zm9yKHQgaW4gbikhaShzLHQpJiZpKG4sdCkmJmEoYyx0KTtmb3IoO2UubGVuZ3RoPkI7KWkobix0PWVbQisrXSkmJih+byhjLHQpfHxhKGMsdCkpO3JldHVybiBjfX0sMzAwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg0OTQ4KSxpPXQoMjczOSk7QS5leHBvcnRzPU9iamVjdC5rZXlzfHxmdW5jdGlvbihBKXtyZXR1cm4gbihBLGkpfX0sOTU1NjooQSxlKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgdD17fS5wcm9wZXJ0eUlzRW51bWVyYWJsZSxuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IsaT1uJiYhdC5jYWxsKHsxOjJ9LDEpO2UuZj1pP2Z1bmN0aW9uKEEpe3ZhciBlPW4odGhpcyxBKTtyZXR1cm4hIWUmJmUuZW51bWVyYWJsZX06dH0sOTM4NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMjc0MyksaT10KDUwMjcpLHI9dCgzNTUwKTtBLmV4cG9ydHM9T2JqZWN0LnNldFByb3RvdHlwZU9mfHwoIl9fcHJvdG9fXyJpbnt9P2Z1bmN0aW9uKCl7dmFyIEEsZT0hMSx0PXt9O3RyeXsoQT1uKE9iamVjdC5wcm90b3R5cGUsIl9fcHJvdG9fXyIsInNldCIpKSh0LFtdKSxlPXQgaW5zdGFuY2VvZiBBcnJheX1jYXRjaChBKXt9cmV0dXJuIGZ1bmN0aW9uKHQsbil7cmV0dXJuIGkodCkscihuKSxlP0EodCxuKTp0Ll9fcHJvdG9fXz1uLHR9fSgpOnZvaWQgMCl9LDUwNzM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDMwNDMpLGk9dCg5MjYpO0EuZXhwb3J0cz1uP3t9LnRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIltvYmplY3QgIitpKHRoaXMpKyJdIn19LDU4OTk6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDI2MTUpLGk9dCg5OTg1KSxyPXQoODk5OSksbz1UeXBlRXJyb3I7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQscztpZigic3RyaW5nIj09PWUmJmkodD1BLnRvU3RyaW5nKSYmIXIocz1uKHQsQSkpKXJldHVybiBzO2lmKGkodD1BLnZhbHVlT2YpJiYhcihzPW4odCxBKSkpcmV0dXJuIHM7aWYoInN0cmluZyIhPT1lJiZpKHQ9QS50b1N0cmluZykmJiFyKHM9bih0LEEpKSlyZXR1cm4gczt0aHJvdyBuZXcgbygiQ2FuJ3QgY29udmVydCBvYmplY3QgdG8gcHJpbWl0aXZlIHZhbHVlIil9fSw5MTUyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg2MDU4KSxpPXQoODg0NCkscj10KDI3NDEpLG89dCg3NTE4KSxzPXQoNTAyNyksYT1pKFtdLmNvbmNhdCk7QS5leHBvcnRzPW4oIlJlZmxlY3QiLCJvd25LZXlzIil8fGZ1bmN0aW9uKEEpe3ZhciBlPXIuZihzKEEpKSx0PW8uZjtyZXR1cm4gdD9hKGUsdChBKSk6ZX19LDQ5NjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTAzNyk7QS5leHBvcnRzPW59LDkzMDI6QT0+eyJ1c2Ugc3RyaWN0IjtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dHJ5e3JldHVybntlcnJvcjohMSx2YWx1ZTpBKCl9fWNhdGNoKEEpe3JldHVybntlcnJvcjohMCx2YWx1ZTpBfX19fSw3MDczOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MDM3KSxpPXQoNzkxOSkscj10KDk5ODUpLG89dCg1MjY2KSxzPXQoNjczOCksYT10KDQyMDEpLEI9dCgyNTMyKSxjPXQoODU2MyksZz10KDM5MzEpLEU9dCgzNjE1KSxRPWkmJmkucHJvdG90eXBlLHU9YSgic3BlY2llcyIpLGw9ITEsaD1yKG4uUHJvbWlzZVJlamVjdGlvbkV2ZW50KSx3PW8oIlByb21pc2UiLChmdW5jdGlvbigpe3ZhciBBPXMoaSksZT1BIT09U3RyaW5nKGkpO2lmKCFlJiY2Nj09PUUpcmV0dXJuITA7aWYoZyYmKCFRLmNhdGNofHwhUS5maW5hbGx5KSlyZXR1cm4hMDtpZighRXx8RTw1MXx8IS9uYXRpdmUgY29kZS8udGVzdChBKSl7dmFyIHQ9bmV3IGkoKGZ1bmN0aW9uKEEpe0EoMSl9KSksbj1mdW5jdGlvbihBKXtBKChmdW5jdGlvbigpe30pLChmdW5jdGlvbigpe30pKX07aWYoKHQuY29uc3RydWN0b3I9e30pW3VdPW4sIShsPXQudGhlbigoZnVuY3Rpb24oKXt9KSlpbnN0YW5jZW9mIG4pKXJldHVybiEwfXJldHVybiFlJiYoQnx8YykmJiFofSkpO0EuZXhwb3J0cz17Q09OU1RSVUNUT1I6dyxSRUpFQ1RJT05fRVZFTlQ6aCxTVUJDTEFTU0lORzpsfX0sNzkxOTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTAzNyk7QS5leHBvcnRzPW4uUHJvbWlzZX0sMjk0NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNTAyNyksaT10KDg5OTkpLHI9dCgyNTgyKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtpZihuKEEpLGkoZSkmJmUuY29uc3RydWN0b3I9PT1BKXJldHVybiBlO3ZhciB0PXIuZihBKTtyZXR1cm4oMCx0LnJlc29sdmUpKGUpLHQucHJvbWlzZX19LDU2MjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzkxOSksaT10KDY0MzEpLHI9dCg3MDczKS5DT05TVFJVQ1RPUjtBLmV4cG9ydHM9cnx8IWkoKGZ1bmN0aW9uKEEpe24uYWxsKEEpLnRoZW4odm9pZCAwLChmdW5jdGlvbigpe30pKX0pKX0sODA1NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMjU2MCkuZjtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe3QgaW4gQXx8bihBLHQse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gZVt0XX0sc2V0OmZ1bmN0aW9uKEEpe2VbdF09QX19KX19LDQ0MTA6QT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZT1mdW5jdGlvbigpe3RoaXMuaGVhZD1udWxsLHRoaXMudGFpbD1udWxsfTtlLnByb3RvdHlwZT17YWRkOmZ1bmN0aW9uKEEpe3ZhciBlPXtpdGVtOkEsbmV4dDpudWxsfSx0PXRoaXMudGFpbDt0P3QubmV4dD1lOnRoaXMuaGVhZD1lLHRoaXMudGFpbD1lfSxnZXQ6ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmhlYWQ7aWYoQSlyZXR1cm4gbnVsbD09PSh0aGlzLmhlYWQ9QS5uZXh0KSYmKHRoaXMudGFpbD1udWxsKSxBLml0ZW19fSxBLmV4cG9ydHM9ZX0sNjEwMDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMjYxNSksaT10KDUwMjcpLHI9dCg5OTg1KSxvPXQoNjY0OCkscz10KDYzMDgpLGE9VHlwZUVycm9yO0EuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3ZhciB0PUEuZXhlYztpZihyKHQpKXt2YXIgQj1uKHQsQSxlKTtyZXR1cm4gbnVsbCE9PUImJmkoQiksQn1pZigiUmVnRXhwIj09PW8oQSkpcmV0dXJuIG4ocyxBLGUpO3Rocm93IG5ldyBhKCJSZWdFeHAjZXhlYyBjYWxsZWQgb24gaW5jb21wYXRpYmxlIHJlY2VpdmVyIil9fSw2MzA4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG4saSxyPXQoMjYxNSksbz10KDg4NDQpLHM9dCg0MzI3KSxhPXQoOTYzMyksQj10KDc5MDEpLGM9dCgzNDMwKSxnPXQoNTM5MSksRT10KDYxOCkuZ2V0LFE9dCgyMTAwKSx1PXQoNjQyMiksbD1jKCJuYXRpdmUtc3RyaW5nLXJlcGxhY2UiLFN0cmluZy5wcm90b3R5cGUucmVwbGFjZSksaD1SZWdFeHAucHJvdG90eXBlLmV4ZWMsdz1oLEM9bygiIi5jaGFyQXQpLEk9bygiIi5pbmRleE9mKSxNPW8oIiIucmVwbGFjZSksZD1vKCIiLnNsaWNlKSxwPShpPS9iKi9nLHIoaCxuPS9hLywiYSIpLHIoaCxpLCJhIiksMCE9PW4ubGFzdEluZGV4fHwwIT09aS5sYXN0SW5kZXgpLG09Qi5CUk9LRU5fQ0FSRVQsRj12b2lkIDAhPT0vKCk/Py8uZXhlYygiIilbMV07KHB8fEZ8fG18fFF8fHUpJiYodz1mdW5jdGlvbihBKXt2YXIgZSx0LG4saSxvLEIsYyxRPXRoaXMsdT1FKFEpLEQ9cyhBKSxZPXUucmF3O2lmKFkpcmV0dXJuIFkubGFzdEluZGV4PVEubGFzdEluZGV4LGU9cih3LFksRCksUS5sYXN0SW5kZXg9WS5sYXN0SW5kZXgsZTt2YXIgZj11Lmdyb3VwcyxOPW0mJlEuc3RpY2t5LFU9cihhLFEpLHk9US5zb3VyY2UsVD0wLHg9RDtpZihOJiYoVT1NKFUsInkiLCIiKSwtMT09PUkoVSwiZyIpJiYoVSs9ImciKSx4PWQoRCxRLmxhc3RJbmRleCksUS5sYXN0SW5kZXg+MCYmKCFRLm11bHRpbGluZXx8US5tdWx0aWxpbmUmJiJcbiIhPT1DKEQsUS5sYXN0SW5kZXgtMSkpJiYoeT0iKD86ICIreSsiKSIseD0iICIreCxUKyspLHQ9bmV3IFJlZ0V4cCgiXig/OiIreSsiKSIsVSkpLEYmJih0PW5ldyBSZWdFeHAoIl4iK3krIiQoPyFcXHMpIixVKSkscCYmKG49US5sYXN0SW5kZXgpLGk9cihoLE4/dDpRLHgpLE4/aT8oaS5pbnB1dD1kKGkuaW5wdXQsVCksaVswXT1kKGlbMF0sVCksaS5pbmRleD1RLmxhc3RJbmRleCxRLmxhc3RJbmRleCs9aVswXS5sZW5ndGgpOlEubGFzdEluZGV4PTA6cCYmaSYmKFEubGFzdEluZGV4PVEuZ2xvYmFsP2kuaW5kZXgraVswXS5sZW5ndGg6biksRiYmaSYmaS5sZW5ndGg+MSYmcihsLGlbMF0sdCwoZnVuY3Rpb24oKXtmb3Iobz0xO288YXJndW1lbnRzLmxlbmd0aC0yO28rKyl2b2lkIDA9PT1hcmd1bWVudHNbb10mJihpW29dPXZvaWQgMCl9KSksaSYmZilmb3IoaS5ncm91cHM9Qj1nKG51bGwpLG89MDtvPGYubGVuZ3RoO28rKylCWyhjPWZbb10pWzBdXT1pW2NbMV1dO3JldHVybiBpfSksQS5leHBvcnRzPXd9LDk2MzM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDUwMjcpO0EuZXhwb3J0cz1mdW5jdGlvbigpe3ZhciBBPW4odGhpcyksZT0iIjtyZXR1cm4gQS5oYXNJbmRpY2VzJiYoZSs9ImQiKSxBLmdsb2JhbCYmKGUrPSJnIiksQS5pZ25vcmVDYXNlJiYoZSs9ImkiKSxBLm11bHRpbGluZSYmKGUrPSJtIiksQS5kb3RBbGwmJihlKz0icyIpLEEudW5pY29kZSYmKGUrPSJ1IiksQS51bmljb2RlU2V0cyYmKGUrPSJ2IiksQS5zdGlja3kmJihlKz0ieSIpLGV9fSwzNDc3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgyNjE1KSxpPXQoNjgxMikscj10KDM2MjIpLG89dCg5NjMzKSxzPVJlZ0V4cC5wcm90b3R5cGU7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3ZhciBlPUEuZmxhZ3M7cmV0dXJuIHZvaWQgMCE9PWV8fCJmbGFncyJpbiBzfHxpKEEsImZsYWdzIil8fCFyKHMsQSk/ZTpuKG8sQSl9fSw3OTAxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzNjg5KSxpPXQoOTAzNykuUmVnRXhwLHI9bigoZnVuY3Rpb24oKXt2YXIgQT1pKCJhIiwieSIpO3JldHVybiBBLmxhc3RJbmRleD0yLG51bGwhPT1BLmV4ZWMoImFiY2QiKX0pKSxvPXJ8fG4oKGZ1bmN0aW9uKCl7cmV0dXJuIWkoImEiLCJ5Iikuc3RpY2t5fSkpLHM9cnx8bigoZnVuY3Rpb24oKXt2YXIgQT1pKCJeciIsImd5Iik7cmV0dXJuIEEubGFzdEluZGV4PTIsbnVsbCE9PUEuZXhlYygic3RyIil9KSk7QS5leHBvcnRzPXtCUk9LRU5fQ0FSRVQ6cyxNSVNTRURfU1RJQ0tZOm8sVU5TVVBQT1JURURfWTpyfX0sMjEwMDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzY4OSksaT10KDkwMzcpLlJlZ0V4cDtBLmV4cG9ydHM9bigoZnVuY3Rpb24oKXt2YXIgQT1pKCIuIiwicyIpO3JldHVybiEoQS5kb3RBbGwmJkEudGVzdCgiXG4iKSYmInMiPT09QS5mbGFncyl9KSl9LDY0MjI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDM2ODkpLGk9dCg5MDM3KS5SZWdFeHA7QS5leHBvcnRzPW4oKGZ1bmN0aW9uKCl7dmFyIEE9aSgiKD88YT5iKSIsImciKTtyZXR1cm4iYiIhPT1BLmV4ZWMoImIiKS5ncm91cHMuYXx8ImJjIiE9PSJiIi5yZXBsYWNlKEEsIiQ8YT5jIil9KSl9LDQ2ODQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk4MSksaT1UeXBlRXJyb3I7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe2lmKG4oQSkpdGhyb3cgbmV3IGkoIkNhbid0IGNhbGwgbWV0aG9kIG9uICIrQSk7cmV0dXJuIEF9fSw0MjQxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg2MDU4KSxpPXQoMjE0OCkscj10KDQyMDEpLG89dCg3Njk3KSxzPXIoInNwZWNpZXMiKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGU9bihBKTtvJiZlJiYhZVtzXSYmaShlLHMse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319KX19LDU5OTc6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDI1NjApLmYsaT10KDY4MTIpLHI9dCg0MjAxKSgidG9TdHJpbmdUYWciKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe0EmJiF0JiYoQT1BLnByb3RvdHlwZSksQSYmIWkoQSxyKSYmbihBLHIse2NvbmZpZ3VyYWJsZTohMCx2YWx1ZTplfSl9fSwyNzEzOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzNDMwKSxpPXQoNDYzMCkscj1uKCJrZXlzIik7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3JldHVybiByW0FdfHwocltBXT1pKEEpKX19LDQwOTE6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDkwMzcpLGk9dCg1MDE0KSxyPSJfX2NvcmUtanNfc2hhcmVkX18iLG89bltyXXx8aShyLHt9KTtBLmV4cG9ydHM9b30sMzQzMDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMzkzMSksaT10KDQwOTEpOyhBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gaVtBXXx8KGlbQV09dm9pZCAwIT09ZT9lOnt9KX0pKCJ2ZXJzaW9ucyIsW10pLnB1c2goe3ZlcnNpb246IjMuMzMuMSIsbW9kZTpuPyJwdXJlIjoiZ2xvYmFsIixjb3B5cmlnaHQ6IsKpIDIwMTQtMjAyMyBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSIsbGljZW5zZToiaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvYmxvYi92My4zMy4xL0xJQ0VOU0UiLHNvdXJjZToiaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMifSl9LDYzNzM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDUwMjcpLGk9dCgyNjU1KSxyPXQoOTgxKSxvPXQoNDIwMSkoInNwZWNpZXMiKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlKXt2YXIgdCxzPW4oQSkuY29uc3RydWN0b3I7cmV0dXJuIHZvaWQgMD09PXN8fHIodD1uKHMpW29dKT9lOmkodCl9fSw0NTgwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzNjg5KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7cmV0dXJuIG4oKGZ1bmN0aW9uKCl7dmFyIGU9IiJbQV0oJyInKTtyZXR1cm4gZSE9PWUudG9Mb3dlckNhc2UoKXx8ZS5zcGxpdCgnIicpLmxlbmd0aD4zfSkpfX0sNzMwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4ODQ0KSxpPXQoODcwMCkscj10KDQzMjcpLG89dCg0Njg0KSxzPW4oIiIuY2hhckF0KSxhPW4oIiIuY2hhckNvZGVBdCksQj1uKCIiLnNsaWNlKSxjPWZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3ZhciBuLGMsZz1yKG8oZSkpLEU9aSh0KSxRPWcubGVuZ3RoO3JldHVybiBFPDB8fEU+PVE/QT8iIjp2b2lkIDA6KG49YShnLEUpKTw1NTI5Nnx8bj41NjMxOXx8RSsxPT09UXx8KGM9YShnLEUrMSkpPDU2MzIwfHxjPjU3MzQzP0E/cyhnLEUpOm46QT9CKGcsRSxFKzIpOmMtNTYzMjArKG4tNTUyOTY8PDEwKSs2NTUzNn19O0EuZXhwb3J0cz17Y29kZUF0OmMoITEpLGNoYXJBdDpjKCEwKX19LDUzNDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODcwMCksaT10KDQzMjcpLHI9dCg0Njg0KSxvPVJhbmdlRXJyb3I7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3ZhciBlPWkocih0aGlzKSksdD0iIixzPW4oQSk7aWYoczwwfHxzPT09MS8wKXRocm93IG5ldyBvKCJXcm9uZyBudW1iZXIgb2YgcmVwZXRpdGlvbnMiKTtmb3IoO3M+MDsocz4+Pj0xKSYmKGUrPWUpKTEmcyYmKHQrPWUpO3JldHVybiB0fX0sNTk4NDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMTIzNikuUFJPUEVSLGk9dCgzNjg5KSxyPXQoNjM1MCk7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3JldHVybiBpKChmdW5jdGlvbigpe3JldHVybiEhcltBXSgpfHwi4oCLwoXhoI4iIT09IuKAi8KF4aCOIltBXSgpfHxuJiZyW0FdLm5hbWUhPT1BfSkpfX0sMTQzNTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoODg0NCksaT10KDQ2ODQpLHI9dCg0MzI3KSxvPXQoNjM1MCkscz1uKCIiLnJlcGxhY2UpLGE9UmVnRXhwKCJeWyIrbysiXSsiKSxCPVJlZ0V4cCgiKF58W14iK28rIl0pWyIrbysiXSskIiksYz1mdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIHQ9cihpKGUpKTtyZXR1cm4gMSZBJiYodD1zKHQsYSwiIikpLDImQSYmKHQ9cyh0LEIsIiQxIikpLHR9fTtBLmV4cG9ydHM9e3N0YXJ0OmMoMSksZW5kOmMoMiksdHJpbTpjKDMpfX0sMTQ2OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgzNjE1KSxpPXQoMzY4OSkscj10KDkwMzcpLlN0cmluZztBLmV4cG9ydHM9ISFPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYhaSgoZnVuY3Rpb24oKXt2YXIgQT1TeW1ib2woInN5bWJvbCBkZXRlY3Rpb24iKTtyZXR1cm4hcihBKXx8IShPYmplY3QoQSlpbnN0YW5jZW9mIFN5bWJvbCl8fCFTeW1ib2wuc2hhbSYmbiYmbjw0MX0pKX0sMzAzMjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMjYxNSksaT10KDYwNTgpLHI9dCg0MjAxKSxvPXQoMTg4MCk7QS5leHBvcnRzPWZ1bmN0aW9uKCl7dmFyIEE9aSgiU3ltYm9sIiksZT1BJiZBLnByb3RvdHlwZSx0PWUmJmUudmFsdWVPZixzPXIoInRvUHJpbWl0aXZlIik7ZSYmIWVbc10mJm8oZSxzLChmdW5jdGlvbihBKXtyZXR1cm4gbih0LHRoaXMpfSkse2FyaXR5OjF9KX19LDY1NDk6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDE0Nik7QS5leHBvcnRzPW4mJiEhU3ltYm9sLmZvciYmISFTeW1ib2wua2V5Rm9yfSw5ODg2OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG4saSxyLG8scz10KDkwMzcpLGE9dCgxNzM1KSxCPXQoNDA3MSksYz10KDk5ODUpLGc9dCg2ODEyKSxFPXQoMzY4OSksUT10KDI2ODgpLHU9dCg2MDA0KSxsPXQoNjQyMCksaD10KDE1MDApLHc9dCg0NzY0KSxDPXQoODA2KSxJPXMuc2V0SW1tZWRpYXRlLE09cy5jbGVhckltbWVkaWF0ZSxkPXMucHJvY2VzcyxwPXMuRGlzcGF0Y2gsbT1zLkZ1bmN0aW9uLEY9cy5NZXNzYWdlQ2hhbm5lbCxEPXMuU3RyaW5nLFk9MCxmPXt9LE49Im9ucmVhZHlzdGF0ZWNoYW5nZSI7RSgoZnVuY3Rpb24oKXtuPXMubG9jYXRpb259KSk7dmFyIFU9ZnVuY3Rpb24oQSl7aWYoZyhmLEEpKXt2YXIgZT1mW0FdO2RlbGV0ZSBmW0FdLGUoKX19LHk9ZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKCl7VShBKX19LFQ9ZnVuY3Rpb24oQSl7VShBLmRhdGEpfSx4PWZ1bmN0aW9uKEEpe3MucG9zdE1lc3NhZ2UoRChBKSxuLnByb3RvY29sKyIvLyIrbi5ob3N0KX07SSYmTXx8KEk9ZnVuY3Rpb24oQSl7aChhcmd1bWVudHMubGVuZ3RoLDEpO3ZhciBlPWMoQSk/QTptKEEpLHQ9dShhcmd1bWVudHMsMSk7cmV0dXJuIGZbKytZXT1mdW5jdGlvbigpe2EoZSx2b2lkIDAsdCl9LGkoWSksWX0sTT1mdW5jdGlvbihBKXtkZWxldGUgZltBXX0sQz9pPWZ1bmN0aW9uKEEpe2QubmV4dFRpY2soeShBKSl9OnAmJnAubm93P2k9ZnVuY3Rpb24oQSl7cC5ub3coeShBKSl9OkYmJiF3PyhvPShyPW5ldyBGKS5wb3J0MixyLnBvcnQxLm9ubWVzc2FnZT1ULGk9QihvLnBvc3RNZXNzYWdlLG8pKTpzLmFkZEV2ZW50TGlzdGVuZXImJmMocy5wb3N0TWVzc2FnZSkmJiFzLmltcG9ydFNjcmlwdHMmJm4mJiJmaWxlOiIhPT1uLnByb3RvY29sJiYhRSh4KT8oaT14LHMuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsVCwhMSkpOmk9TiBpbiBsKCJzY3JpcHQiKT9mdW5jdGlvbihBKXtRLmFwcGVuZENoaWxkKGwoInNjcmlwdCIpKVtOXT1mdW5jdGlvbigpe1EucmVtb3ZlQ2hpbGQodGhpcyksVShBKX19OmZ1bmN0aW9uKEEpe3NldFRpbWVvdXQoeShBKSwwKX0pLEEuZXhwb3J0cz17c2V0OkksY2xlYXI6TX19LDM2NDg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg4NDQpO0EuZXhwb3J0cz1uKDEuLnZhbHVlT2YpfSw3NTc4OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4NzAwKSxpPU1hdGgubWF4LHI9TWF0aC5taW47QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9bihBKTtyZXR1cm4gdDwwP2kodCtlLDApOnIodCxlKX19LDUyOTA6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDQ0MTMpLGk9dCg0Njg0KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7cmV0dXJuIG4oaShBKSl9fSw4NzAwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4ODI4KTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIGUhPWV8fDA9PT1lPzA6bihlKX19LDMxMjY6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg3MDApLGk9TWF0aC5taW47QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3JldHVybiBBPjA/aShuKEEpLDkwMDcxOTkyNTQ3NDA5OTEpOjB9fSw2OTA6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDQ2ODQpLGk9T2JqZWN0O0EuZXhwb3J0cz1mdW5jdGlvbihBKXtyZXR1cm4gaShuKEEpKX19LDg3MzI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDI2MTUpLGk9dCg4OTk5KSxyPXQoNzM0KSxvPXQoNDg0OSkscz10KDU4OTkpLGE9dCg0MjAxKSxCPVR5cGVFcnJvcixjPWEoInRvUHJpbWl0aXZlIik7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7aWYoIWkoQSl8fHIoQSkpcmV0dXJuIEE7dmFyIHQsYT1vKEEsYyk7aWYoYSl7aWYodm9pZCAwPT09ZSYmKGU9ImRlZmF1bHQiKSx0PW4oYSxBLGUpLCFpKHQpfHxyKHQpKXJldHVybiB0O3Rocm93IG5ldyBCKCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUiKX1yZXR1cm4gdm9pZCAwPT09ZSYmKGU9Im51bWJlciIpLHMoQSxlKX19LDgzNjA6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg3MzIpLGk9dCg3MzQpO0EuZXhwb3J0cz1mdW5jdGlvbihBKXt2YXIgZT1uKEEsInN0cmluZyIpO3JldHVybiBpKGUpP2U6ZSsiIn19LDMwNDM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj17fTtuW3QoNDIwMSkoInRvU3RyaW5nVGFnIildPSJ6IixBLmV4cG9ydHM9IltvYmplY3Qgel0iPT09U3RyaW5nKG4pfSw0MzI3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MjYpLGk9U3RyaW5nO0EuZXhwb3J0cz1mdW5jdGlvbihBKXtpZigiU3ltYm9sIj09PW4oQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNvbnZlcnQgYSBTeW1ib2wgdmFsdWUgdG8gYSBzdHJpbmciKTtyZXR1cm4gaShBKX19LDM2OTE6QT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZT1TdHJpbmc7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3RyeXtyZXR1cm4gZShBKX1jYXRjaChBKXtyZXR1cm4iT2JqZWN0In19fSw0NjMwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg4ODQ0KSxpPTAscj1NYXRoLnJhbmRvbSgpLG89bigxLi50b1N0cmluZyk7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3JldHVybiJTeW1ib2woIisodm9pZCAwPT09QT8iIjpBKSsiKV8iK28oKytpK3IsMzYpfX0sOTUyNTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMTQ2KTtBLmV4cG9ydHM9biYmIVN5bWJvbC5zaGFtJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcn0sNTY0ODooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzY5NyksaT10KDM2ODkpO0EuZXhwb3J0cz1uJiZpKChmdW5jdGlvbigpe3JldHVybiA0MiE9PU9iamVjdC5kZWZpbmVQcm9wZXJ0eSgoZnVuY3Rpb24oKXt9KSwicHJvdG90eXBlIix7dmFsdWU6NDIsd3JpdGFibGU6ITF9KS5wcm90b3R5cGV9KSl9LDE1MDA6QT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZT1UeXBlRXJyb3I7QS5leHBvcnRzPWZ1bmN0aW9uKEEsdCl7aWYoQTx0KXRocm93IG5ldyBlKCJOb3QgZW5vdWdoIGFyZ3VtZW50cyIpO3JldHVybiBBfX0sOTgzNDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTAzNyksaT10KDk5ODUpLHI9bi5XZWFrTWFwO0EuZXhwb3J0cz1pKHIpJiYvbmF0aXZlIGNvZGUvLnRlc3QoU3RyaW5nKHIpKX0sNTQwNTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNDk2KSxpPXQoNjgxMikscj10KDYxNDUpLG89dCgyNTYwKS5mO0EuZXhwb3J0cz1mdW5jdGlvbihBKXt2YXIgZT1uLlN5bWJvbHx8KG4uU3ltYm9sPXt9KTtpKGUsQSl8fG8oZSxBLHt2YWx1ZTpyLmYoQSl9KX19LDYxNDU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDQyMDEpO2UuZj1ufSw0MjAxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5MDM3KSxpPXQoMzQzMCkscj10KDY4MTIpLG89dCg0NjMwKSxzPXQoMTQ2KSxhPXQoOTUyNSksQj1uLlN5bWJvbCxjPWkoIndrcyIpLGc9YT9CLmZvcnx8QjpCJiZCLndpdGhvdXRTZXR0ZXJ8fG87QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3JldHVybiByKGMsQSl8fChjW0FdPXMmJnIoQixBKT9CW0FdOmcoIlN5bWJvbC4iK0EpKSxjW0FdfX0sNjM1MDpBPT57InVzZSBzdHJpY3QiO0EuZXhwb3J0cz0iXHRcblx2XGZcciDCoOGagOKAgOKAgeKAguKAg+KAhOKAheKAhuKAh+KAiOKAieKAiuKAr+KBn+OAgFx1MjAyOFx1MjAyOVx1ZmVmZiJ9LDQzMzg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgzNjg5KSxyPXQoMjI5Nyksbz10KDg5OTkpLHM9dCg2OTApLGE9dCg2MzEwKSxCPXQoNTU2NSksYz10KDY1MjIpLGc9dCg3MTIwKSxFPXQoOTA0MiksUT10KDQyMDEpLHU9dCgzNjE1KSxsPVEoImlzQ29uY2F0U3ByZWFkYWJsZSIpLGg9dT49NTF8fCFpKChmdW5jdGlvbigpe3ZhciBBPVtdO3JldHVybiBBW2xdPSExLEEuY29uY2F0KClbMF0hPT1BfSkpLHc9ZnVuY3Rpb24oQSl7aWYoIW8oQSkpcmV0dXJuITE7dmFyIGU9QVtsXTtyZXR1cm4gdm9pZCAwIT09ZT8hIWU6cihBKX07bih7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsYXJpdHk6MSxmb3JjZWQ6IWh8fCFFKCJjb25jYXQiKX0se2NvbmNhdDpmdW5jdGlvbihBKXt2YXIgZSx0LG4saSxyLG89cyh0aGlzKSxFPWcobywwKSxRPTA7Zm9yKGU9LTEsbj1hcmd1bWVudHMubGVuZ3RoO2U8bjtlKyspaWYodyhyPS0xPT09ZT9vOmFyZ3VtZW50c1tlXSkpZm9yKGk9YShyKSxCKFEraSksdD0wO3Q8aTt0KyssUSsrKXQgaW4gciYmYyhFLFEsclt0XSk7ZWxzZSBCKFErMSksYyhFLFErKyxyKTtyZXR1cm4gRS5sZW5ndGg9USxFfX0pfSw1NzkxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMjk2MCkuZXZlcnk7bih7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOiF0KDY4MzQpKCJldmVyeSIpfSx7ZXZlcnk6ZnVuY3Rpb24oQSl7cmV0dXJuIGkodGhpcyxBLGFyZ3VtZW50cy5sZW5ndGg+MT9hcmd1bWVudHNbMV06dm9pZCAwKX19KX0sNzg5NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDI4NzIpLHI9dCg3MzcwKTtuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMH0se2ZpbGw6aX0pLHIoImZpbGwiKX0sODA3NzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDI5NjApLmZpbHRlcjtuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6IXQoOTA0MikoImZpbHRlciIpfSx7ZmlsdGVyOmZ1bmN0aW9uKEEpe3JldHVybiBpKHRoaXMsQSxhcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMCl9fSl9LDU3Mjg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgyOTYwKS5maW5kLHI9dCg3MzcwKSxvPSJmaW5kIixzPSEwO28gaW5bXSYmQXJyYXkoMSlbb10oKGZ1bmN0aW9uKCl7cz0hMX0pKSxuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6c30se2ZpbmQ6ZnVuY3Rpb24oQSl7cmV0dXJuIGkodGhpcyxBLGFyZ3VtZW50cy5sZW5ndGg+MT9hcmd1bWVudHNbMV06dm9pZCAwKX19KSxyKG8pfSw5NjkzOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoNzYxMik7bih7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOltdLmZvckVhY2ghPT1pfSx7Zm9yRWFjaDppfSl9LDc3MjI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgxMDU1KTtuKHt0YXJnZXQ6IkFycmF5IixzdGF0OiEwLGZvcmNlZDohdCg2NDMxKSgoZnVuY3Rpb24oQSl7QXJyYXkuZnJvbShBKX0pKX0se2Zyb206aX0pfSw2ODAxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoNDMyOCkuaW5jbHVkZXMscj10KDM2ODkpLG89dCg3MzcwKTtuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6cigoZnVuY3Rpb24oKXtyZXR1cm4hQXJyYXkoMSkuaW5jbHVkZXMoKX0pKX0se2luY2x1ZGVzOmZ1bmN0aW9uKEEpe3JldHVybiBpKHRoaXMsQSxhcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMCl9fSksbygiaW5jbHVkZXMiKX0sNzE5NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDY1NzYpLHI9dCg0MzI4KS5pbmRleE9mLG89dCg2ODM0KSxzPWkoW10uaW5kZXhPZiksYT0hIXMmJjEvcyhbMV0sMSwtMCk8MDtuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6YXx8IW8oImluZGV4T2YiKX0se2luZGV4T2Y6ZnVuY3Rpb24oQSl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4xP2FyZ3VtZW50c1sxXTp2b2lkIDA7cmV0dXJuIGE/cyh0aGlzLEEsZSl8fDA6cih0aGlzLEEsZSl9fSl9LDM5NzU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt0KDk5ODkpKHt0YXJnZXQ6IkFycmF5IixzdGF0OiEwfSx7aXNBcnJheTp0KDIyOTcpfSl9LDc1MjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNTI5MCksaT10KDczNzApLHI9dCg5NDc4KSxvPXQoNjE4KSxzPXQoMjU2MCkuZixhPXQoMTkzNCksQj10KDc4MDcpLGM9dCgzOTMxKSxnPXQoNzY5NyksRT0iQXJyYXkgSXRlcmF0b3IiLFE9by5zZXQsdT1vLmdldHRlckZvcihFKTtBLmV4cG9ydHM9YShBcnJheSwiQXJyYXkiLChmdW5jdGlvbihBLGUpe1EodGhpcyx7dHlwZTpFLHRhcmdldDpuKEEpLGluZGV4OjAsa2luZDplfSl9KSwoZnVuY3Rpb24oKXt2YXIgQT11KHRoaXMpLGU9QS50YXJnZXQsdD1BLmluZGV4Kys7aWYoIWV8fHQ+PWUubGVuZ3RoKXJldHVybiBBLnRhcmdldD12b2lkIDAsQih2b2lkIDAsITApO3N3aXRjaChBLmtpbmQpe2Nhc2Uia2V5cyI6cmV0dXJuIEIodCwhMSk7Y2FzZSJ2YWx1ZXMiOnJldHVybiBCKGVbdF0sITEpfXJldHVybiBCKFt0LGVbdF1dLCExKX0pLCJ2YWx1ZXMiKTt2YXIgbD1yLkFyZ3VtZW50cz1yLkFycmF5O2lmKGkoImtleXMiKSxpKCJ2YWx1ZXMiKSxpKCJlbnRyaWVzIiksIWMmJmcmJiJ2YWx1ZXMiIT09bC5uYW1lKXRyeXtzKGwsIm5hbWUiLHt2YWx1ZToidmFsdWVzIn0pfWNhdGNoKEEpe319LDYyMDM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg4ODQ0KSxyPXQoNDQxMyksbz10KDUyOTApLHM9dCg2ODM0KSxhPWkoW10uam9pbik7bih7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOnIhPT1PYmplY3R8fCFzKCJqb2luIiwiLCIpfSx7am9pbjpmdW5jdGlvbihBKXtyZXR1cm4gYShvKHRoaXMpLHZvaWQgMD09PUE/IiwiOkEpfX0pfSw4ODY6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgyOTYwKS5tYXA7bih7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOiF0KDkwNDIpKCJtYXAiKX0se21hcDpmdW5jdGlvbihBKXtyZXR1cm4gaSh0aGlzLEEsYXJndW1lbnRzLmxlbmd0aD4xP2FyZ3VtZW50c1sxXTp2b2lkIDApfX0pfSwyNzg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg4ODIwKS5sZWZ0LHI9dCg2ODM0KSxvPXQoMzYxNSk7bih7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOiF0KDgwNikmJm8+NzkmJm88ODN8fCFyKCJyZWR1Y2UiKX0se3JlZHVjZTpmdW5jdGlvbihBKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoO3JldHVybiBpKHRoaXMsQSxlLGU+MT9hcmd1bWVudHNbMV06dm9pZCAwKX19KX0sMzM3NDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDg4NDQpLHI9dCgyMjk3KSxvPWkoW10ucmV2ZXJzZSkscz1bMSwyXTtuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6U3RyaW5nKHMpPT09U3RyaW5nKHMucmV2ZXJzZSgpKX0se3JldmVyc2U6ZnVuY3Rpb24oKXtyZXR1cm4gcih0aGlzKSYmKHRoaXMubGVuZ3RoPXRoaXMubGVuZ3RoKSxvKHRoaXMpfX0pfSw5NzMwOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMjI5Nykscj10KDk0MjkpLG89dCg4OTk5KSxzPXQoNzU3OCksYT10KDYzMTApLEI9dCg1MjkwKSxjPXQoNjUyMiksZz10KDQyMDEpLEU9dCg5MDQyKSxRPXQoNjAwNCksdT1FKCJzbGljZSIpLGw9Zygic3BlY2llcyIpLGg9QXJyYXksdz1NYXRoLm1heDtuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6IXV9LHtzbGljZTpmdW5jdGlvbihBLGUpe3ZhciB0LG4sZyxFPUIodGhpcyksdT1hKEUpLEM9cyhBLHUpLEk9cyh2b2lkIDA9PT1lP3U6ZSx1KTtpZihpKEUpJiYodD1FLmNvbnN0cnVjdG9yLChyKHQpJiYodD09PWh8fGkodC5wcm90b3R5cGUpKXx8byh0KSYmbnVsbD09PSh0PXRbbF0pKSYmKHQ9dm9pZCAwKSx0PT09aHx8dm9pZCAwPT09dCkpcmV0dXJuIFEoRSxDLEkpO2ZvcihuPW5ldyh2b2lkIDA9PT10P2g6dCkodyhJLUMsMCkpLGc9MDtDPEk7QysrLGcrKylDIGluIEUmJmMobixnLEVbQ10pO3JldHVybiBuLmxlbmd0aD1nLG59fSl9LDg3NDI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgyOTYwKS5zb21lO24oe3RhcmdldDoiQXJyYXkiLHByb3RvOiEwLGZvcmNlZDohdCg2ODM0KSgic29tZSIpfSx7c29tZTpmdW5jdGlvbihBKXtyZXR1cm4gaSh0aGlzLEEsYXJndW1lbnRzLmxlbmd0aD4xP2FyZ3VtZW50c1sxXTp2b2lkIDApfX0pfSw1MTM3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoODg0NCkscj10KDUwOSksbz10KDY5MCkscz10KDYzMTApLGE9dCg4NDk0KSxCPXQoNDMyNyksYz10KDM2ODkpLGc9dCgzODIpLEU9dCg2ODM0KSxRPXQoNzM2NSksdT10KDcyOTgpLGw9dCgzNjE1KSxoPXQoNzkyMiksdz1bXSxDPWkody5zb3J0KSxJPWkody5wdXNoKSxNPWMoKGZ1bmN0aW9uKCl7dy5zb3J0KHZvaWQgMCl9KSksZD1jKChmdW5jdGlvbigpe3cuc29ydChudWxsKX0pKSxwPUUoInNvcnQiKSxtPSFjKChmdW5jdGlvbigpe2lmKGwpcmV0dXJuIGw8NzA7aWYoIShRJiZRPjMpKXtpZih1KXJldHVybiEwO2lmKGgpcmV0dXJuIGg8NjAzO3ZhciBBLGUsdCxuLGk9IiI7Zm9yKEE9NjU7QTw3NjtBKyspe3N3aXRjaChlPVN0cmluZy5mcm9tQ2hhckNvZGUoQSksQSl7Y2FzZSA2NjpjYXNlIDY5OmNhc2UgNzA6Y2FzZSA3Mjp0PTM7YnJlYWs7Y2FzZSA2ODpjYXNlIDcxOnQ9NDticmVhaztkZWZhdWx0OnQ9Mn1mb3Iobj0wO248NDc7bisrKXcucHVzaCh7azplK24sdjp0fSl9Zm9yKHcuc29ydCgoZnVuY3Rpb24oQSxlKXtyZXR1cm4gZS52LUEudn0pKSxuPTA7bjx3Lmxlbmd0aDtuKyspZT13W25dLmsuY2hhckF0KDApLGkuY2hhckF0KGkubGVuZ3RoLTEpIT09ZSYmKGkrPWUpO3JldHVybiJER0JFRkhBQ0lKSyIhPT1pfX0pKTtuKHt0YXJnZXQ6IkFycmF5Iixwcm90bzohMCxmb3JjZWQ6TXx8IWR8fCFwfHwhbX0se3NvcnQ6ZnVuY3Rpb24oQSl7dm9pZCAwIT09QSYmcihBKTt2YXIgZT1vKHRoaXMpO2lmKG0pcmV0dXJuIHZvaWQgMD09PUE/QyhlKTpDKGUsQSk7dmFyIHQsbixpPVtdLGM9cyhlKTtmb3Iobj0wO248YztuKyspbiBpbiBlJiZJKGksZVtuXSk7Zm9yKGcoaSxmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gdm9pZCAwPT09dD8tMTp2b2lkIDA9PT1lPzE6dm9pZCAwIT09QT8rQShlLHQpfHwwOkIoZSk+Qih0KT8xOi0xfX0oQSkpLHQ9cyhpKSxuPTA7bjx0OyllW25dPWlbbisrXTtmb3IoO248YzspYShlLG4rKyk7cmV0dXJuIGV9fSl9LDI1MDY6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg2OTApLHI9dCg3NTc4KSxvPXQoODcwMCkscz10KDYzMTApLGE9dCg1NjQ5KSxCPXQoNTU2NSksYz10KDcxMjApLGc9dCg2NTIyKSxFPXQoODQ5NCksUT10KDkwNDIpKCJzcGxpY2UiKSx1PU1hdGgubWF4LGw9TWF0aC5taW47bih7dGFyZ2V0OiJBcnJheSIscHJvdG86ITAsZm9yY2VkOiFRfSx7c3BsaWNlOmZ1bmN0aW9uKEEsZSl7dmFyIHQsbixRLGgsdyxDLEk9aSh0aGlzKSxNPXMoSSksZD1yKEEsTSkscD1hcmd1bWVudHMubGVuZ3RoO2ZvcigwPT09cD90PW49MDoxPT09cD8odD0wLG49TS1kKToodD1wLTIsbj1sKHUobyhlKSwwKSxNLWQpKSxCKE0rdC1uKSxRPWMoSSxuKSxoPTA7aDxuO2grKykodz1kK2gpaW4gSSYmZyhRLGgsSVt3XSk7aWYoUS5sZW5ndGg9bix0PG4pe2ZvcihoPWQ7aDxNLW47aCsrKUM9aCt0LCh3PWgrbilpbiBJP0lbQ109SVt3XTpFKEksQyk7Zm9yKGg9TTtoPk0tbit0O2gtLSlFKEksaC0xKX1lbHNlIGlmKHQ+bilmb3IoaD1NLW47aD5kO2gtLSlDPWgrdC0xLCh3PWgrbi0xKWluIEk/SVtDXT1JW3ddOkUoSSxDKTtmb3IoaD0wO2g8dDtoKyspSVtoK2RdPWFyZ3VtZW50c1toKzJdO3JldHVybiBhKEksTS1uK3QpLFF9fSl9LDIyMjc6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg4ODQ0KSxyPURhdGUsbz1pKHIucHJvdG90eXBlLmdldFRpbWUpO24oe3RhcmdldDoiRGF0ZSIsc3RhdDohMH0se25vdzpmdW5jdGlvbigpe3JldHVybiBvKG5ldyByKX19KX0sODE1MDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDM2ODkpLHI9dCg2OTApLG89dCg4NzMyKTtuKHt0YXJnZXQ6IkRhdGUiLHByb3RvOiEwLGFyaXR5OjEsZm9yY2VkOmkoKGZ1bmN0aW9uKCl7cmV0dXJuIG51bGwhPT1uZXcgRGF0ZShOYU4pLnRvSlNPTigpfHwxIT09RGF0ZS5wcm90b3R5cGUudG9KU09OLmNhbGwoe3RvSVNPU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIDF9fSl9KSl9LHt0b0pTT046ZnVuY3Rpb24oQSl7dmFyIGU9cih0aGlzKSx0PW8oZSwibnVtYmVyIik7cmV0dXJuIm51bWJlciIhPXR5cGVvZiB0fHxpc0Zpbml0ZSh0KT9lLnRvSVNPU3RyaW5nKCk6bnVsbH19KX0sMjQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDg4NDQpLGk9dCgxODgwKSxyPURhdGUucHJvdG90eXBlLG89IkludmFsaWQgRGF0ZSIscz0idG9TdHJpbmciLGE9bihyW3NdKSxCPW4oci5nZXRUaW1lKTtTdHJpbmcobmV3IERhdGUoTmFOKSkhPT1vJiZpKHIscywoZnVuY3Rpb24oKXt2YXIgQT1CKHRoaXMpO3JldHVybiBBPT1BP2EodGhpcyk6b30pKX0sMTUxNzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDY3NjEpO24oe3RhcmdldDoiRnVuY3Rpb24iLHByb3RvOiEwLGZvcmNlZDpGdW5jdGlvbi5iaW5kIT09aX0se2JpbmQ6aX0pfSw0Mjg0OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3Njk3KSxpPXQoMTIzNikuRVhJU1RTLHI9dCg4ODQ0KSxvPXQoMjE0OCkscz1GdW5jdGlvbi5wcm90b3R5cGUsYT1yKHMudG9TdHJpbmcpLEI9L2Z1bmN0aW9uXGIoPzpcc3xcL1wqW1xTXHNdKj9cKlwvfFwvXC9bXlxuXHJdKltcblxyXSspKihbXlxzKC9dKikvLGM9cihCLmV4ZWMpO24mJiFpJiZvKHMsIm5hbWUiLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dHJ5e3JldHVybiBjKEIsYSh0aGlzKSlbMV19Y2F0Y2goQSl7cmV0dXJuIiJ9fX0pfSw4MzI0OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoNjA1OCkscj10KDE3MzUpLG89dCgyNjE1KSxzPXQoODg0NCksYT10KDM2ODkpLEI9dCg5OTg1KSxjPXQoNzM0KSxnPXQoNjAwNCksRT10KDI2NDMpLFE9dCgxNDYpLHU9U3RyaW5nLGw9aSgiSlNPTiIsInN0cmluZ2lmeSIpLGg9cygvLi8uZXhlYyksdz1zKCIiLmNoYXJBdCksQz1zKCIiLmNoYXJDb2RlQXQpLEk9cygiIi5yZXBsYWNlKSxNPXMoMS4udG9TdHJpbmcpLGQ9L1tcdUQ4MDAtXHVERkZGXS9nLHA9L15bXHVEODAwLVx1REJGRl0kLyxtPS9eW1x1REMwMC1cdURGRkZdJC8sRj0hUXx8YSgoZnVuY3Rpb24oKXt2YXIgQT1pKCJTeW1ib2wiKSgic3RyaW5naWZ5IGRldGVjdGlvbiIpO3JldHVybiJbbnVsbF0iIT09bChbQV0pfHwie30iIT09bCh7YTpBfSl8fCJ7fSIhPT1sKE9iamVjdChBKSl9KSksRD1hKChmdW5jdGlvbigpe3JldHVybiciXFx1ZGYwNlxcdWQ4MzQiJyE9PWwoIlx1ZGYwNlx1ZDgzNCIpfHwnIlxcdWRlYWQiJyE9PWwoIlx1ZGVhZCIpfSkpLFk9ZnVuY3Rpb24oQSxlKXt2YXIgdD1nKGFyZ3VtZW50cyksbj1FKGUpO2lmKEIobil8fHZvaWQgMCE9PUEmJiFjKEEpKXJldHVybiB0WzFdPWZ1bmN0aW9uKEEsZSl7aWYoQihuKSYmKGU9byhuLHRoaXMsdShBKSxlKSksIWMoZSkpcmV0dXJuIGV9LHIobCxudWxsLHQpfSxmPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj13KHQsZS0xKSxpPXcodCxlKzEpO3JldHVybiBoKHAsQSkmJiFoKG0saSl8fGgobSxBKSYmIWgocCxuKT8iXFx1IitNKEMoQSwwKSwxNik6QX07bCYmbih7dGFyZ2V0OiJKU09OIixzdGF0OiEwLGFyaXR5OjMsZm9yY2VkOkZ8fER9LHtzdHJpbmdpZnk6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWcoYXJndW1lbnRzKSxpPXIoRj9ZOmwsbnVsbCxuKTtyZXR1cm4gRCYmInN0cmluZyI9PXR5cGVvZiBpP0koaSxkLGYpOml9fSl9LDkzMjI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt0KDMxOSkoIk1hcCIsKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBKHRoaXMsYXJndW1lbnRzLmxlbmd0aD9hcmd1bWVudHNbMF06dm9pZCAwKX19KSx0KDgwMCkpfSw2NjQ2OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg5MzIyKX0sNjU1NzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDM5NTYpLHI9TWF0aC5hY29zaCxvPU1hdGgubG9nLHM9TWF0aC5zcXJ0LGE9TWF0aC5MTjI7bih7dGFyZ2V0OiJNYXRoIixzdGF0OiEwLGZvcmNlZDohcnx8NzEwIT09TWF0aC5mbG9vcihyKE51bWJlci5NQVhfVkFMVUUpKXx8cigxLzApIT09MS8wfSx7YWNvc2g6ZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIGU8MT9OYU46ZT45NDkwNjI2NS42MjQyNTE1Nj9vKGUpK2E6aShlLTErcyhlLTEpKnMoZSsxKSl9fSl9LDI0Mjg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9TWF0aC5hc2luaCxyPU1hdGgubG9nLG89TWF0aC5zcXJ0O24oe3RhcmdldDoiTWF0aCIsc3RhdDohMCxmb3JjZWQ6IShpJiYxL2koMCk+MCl9LHthc2luaDpmdW5jdGlvbiBBKGUpe3ZhciB0PStlO3JldHVybiBpc0Zpbml0ZSh0KSYmMCE9PXQ/dDwwPy1BKC10KTpyKHQrbyh0KnQrMSkpOnR9fSl9LDUyNjM6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9TWF0aC5hdGFuaCxyPU1hdGgubG9nO24oe3RhcmdldDoiTWF0aCIsc3RhdDohMCxmb3JjZWQ6IShpJiYxL2koLTApPDApfSx7YXRhbmg6ZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIDA9PT1lP2U6cigoMStlKS8oMS1lKSkvMn19KX0sNDcxMjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDU2ODApLHI9TWF0aC5hYnMsbz1NYXRoLnBvdztuKHt0YXJnZXQ6Ik1hdGgiLHN0YXQ6ITB9LHtjYnJ0OmZ1bmN0aW9uKEEpe3ZhciBlPStBO3JldHVybiBpKGUpKm8ocihlKSwxLzMpfX0pfSw3MjIxOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMTc0NSkscj1NYXRoLmNvc2gsbz1NYXRoLmFicyxzPU1hdGguRTtuKHt0YXJnZXQ6Ik1hdGgiLHN0YXQ6ITAsZm9yY2VkOiFyfHxyKDcxMCk9PT0xLzB9LHtjb3NoOmZ1bmN0aW9uKEEpe3ZhciBlPWkobyhBKS0xKSsxO3JldHVybihlKzEvKGUqcypzKSkqKHMvMil9fSl9LDQ5OTI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgxNzQ1KTtuKHt0YXJnZXQ6Ik1hdGgiLHN0YXQ6ITAsZm9yY2VkOmkhPT1NYXRoLmV4cG0xfSx7ZXhwbTE6aX0pfSw1MjM5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg5OTg5KSh7dGFyZ2V0OiJNYXRoIixzdGF0OiEwfSx7bG9nMTA6dCg0NzM2KX0pfSwyMDc2OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg5OTg5KSh7dGFyZ2V0OiJNYXRoIixzdGF0OiEwfSx7bG9nMXA6dCgzOTU2KX0pfSw4ODEzOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPU1hdGgubG9nLHI9TWF0aC5MTjI7bih7dGFyZ2V0OiJNYXRoIixzdGF0OiEwfSx7bG9nMjpmdW5jdGlvbihBKXtyZXR1cm4gaShBKS9yfX0pfSw2OTc2OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg5OTg5KSh7dGFyZ2V0OiJNYXRoIixzdGF0OiEwfSx7c2lnbjp0KDU2ODApfSl9LDI3MDA6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgzNjg5KSxyPXQoMTc0NSksbz1NYXRoLmFicyxzPU1hdGguZXhwLGE9TWF0aC5FO24oe3RhcmdldDoiTWF0aCIsc3RhdDohMCxmb3JjZWQ6aSgoZnVuY3Rpb24oKXtyZXR1cm4tMmUtMTchPT1NYXRoLnNpbmgoLTJlLTE3KX0pKX0se3Npbmg6ZnVuY3Rpb24oQSl7dmFyIGU9K0E7cmV0dXJuIG8oZSk8MT8ocihlKS1yKC1lKSkvMjoocyhlLTEpLXMoLWUtMSkpKihhLzIpfX0pfSwxNTU0OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMTc0NSkscj1NYXRoLmV4cDtuKHt0YXJnZXQ6Ik1hdGgiLHN0YXQ6ITB9LHt0YW5oOmZ1bmN0aW9uKEEpe3ZhciBlPStBLHQ9aShlKSxuPWkoLWUpO3JldHVybiB0PT09MS8wPzE6bj09PTEvMD8tMToodC1uKS8ocihlKStyKC1lKSl9fSl9LDkyODg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgzOTMxKSxyPXQoNzY5Nyksbz10KDkwMzcpLHM9dCg0OTYpLGE9dCg4ODQ0KSxCPXQoNTI2NiksYz10KDY4MTIpLGc9dCgzNDU3KSxFPXQoMzYyMiksUT10KDczNCksdT10KDg3MzIpLGw9dCgzNjg5KSxoPXQoMjc0MSkuZix3PXQoMjQ3NCkuZixDPXQoMjU2MCkuZixJPXQoMzY0OCksTT10KDE0MzUpLnRyaW0sZD0iTnVtYmVyIixwPW9bZF0sbT1zW2RdLEY9cC5wcm90b3R5cGUsRD1vLlR5cGVFcnJvcixZPWEoIiIuc2xpY2UpLGY9YSgiIi5jaGFyQ29kZUF0KSxOPUIoZCwhcCgiIDBvMSIpfHwhcCgiMGIxIil8fHAoIisweDEiKSksVT1mdW5jdGlvbihBKXt2YXIgZSx0PWFyZ3VtZW50cy5sZW5ndGg8MT8wOnAoZnVuY3Rpb24oQSl7dmFyIGU9dShBLCJudW1iZXIiKTtyZXR1cm4iYmlnaW50Ij09dHlwZW9mIGU/ZTpmdW5jdGlvbihBKXt2YXIgZSx0LG4saSxyLG8scyxhLEI9dShBLCJudW1iZXIiKTtpZihRKEIpKXRocm93IG5ldyBEKCJDYW5ub3QgY29udmVydCBhIFN5bWJvbCB2YWx1ZSB0byBhIG51bWJlciIpO2lmKCJzdHJpbmciPT10eXBlb2YgQiYmQi5sZW5ndGg+MilpZihCPU0oQiksNDM9PT0oZT1mKEIsMCkpfHw0NT09PWUpe2lmKDg4PT09KHQ9ZihCLDIpKXx8MTIwPT09dClyZXR1cm4gTmFOfWVsc2UgaWYoNDg9PT1lKXtzd2l0Y2goZihCLDEpKXtjYXNlIDY2OmNhc2UgOTg6bj0yLGk9NDk7YnJlYWs7Y2FzZSA3OTpjYXNlIDExMTpuPTgsaT01NTticmVhaztkZWZhdWx0OnJldHVybitCfWZvcihvPShyPVkoQiwyKSkubGVuZ3RoLHM9MDtzPG87cysrKWlmKChhPWYocixzKSk8NDh8fGE+aSlyZXR1cm4gTmFOO3JldHVybiBwYXJzZUludChyLG4pfXJldHVybitCfShlKX0oQSkpO3JldHVybiBFKEYsZT10aGlzKSYmbCgoZnVuY3Rpb24oKXtJKGUpfSkpP2coT2JqZWN0KHQpLHRoaXMsVSk6dH07VS5wcm90b3R5cGU9RixOJiYhaSYmKEYuY29uc3RydWN0b3I9VSksbih7Z2xvYmFsOiEwLGNvbnN0cnVjdG9yOiEwLHdyYXA6ITAsZm9yY2VkOk59LHtOdW1iZXI6VX0pO3ZhciB5PWZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0LG49cj9oKGUpOiJNQVhfVkFMVUUsTUlOX1ZBTFVFLE5hTixORUdBVElWRV9JTkZJTklUWSxQT1NJVElWRV9JTkZJTklUWSxFUFNJTE9OLE1BWF9TQUZFX0lOVEVHRVIsTUlOX1NBRkVfSU5URUdFUixpc0Zpbml0ZSxpc0ludGVnZXIsaXNOYU4saXNTYWZlSW50ZWdlcixwYXJzZUZsb2F0LHBhcnNlSW50LGZyb21TdHJpbmcscmFuZ2UiLnNwbGl0KCIsIiksaT0wO24ubGVuZ3RoPmk7aSsrKWMoZSx0PW5baV0pJiYhYyhBLHQpJiZDKEEsdCx3KGUsdCkpfTtpJiZtJiZ5KHNbZF0sbSksKE58fGkpJiZ5KHNbZF0scCl9LDM1ODQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt0KDk5ODkpKHt0YXJnZXQ6Ik51bWJlciIsc3RhdDohMCxub25Db25maWd1cmFibGU6ITAsbm9uV3JpdGFibGU6ITB9LHtFUFNJTE9OOk1hdGgucG93KDIsLTUyKX0pfSw1OTkzOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg5OTg5KSh7dGFyZ2V0OiJOdW1iZXIiLHN0YXQ6ITB9LHtpc05hTjpmdW5jdGlvbihBKXtyZXR1cm4gQSE9QX19KX0sNzM4OTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDg4NDQpLHI9dCg4NzAwKSxvPXQoMzY0OCkscz10KDUzNCksYT10KDM2ODkpLEI9UmFuZ2VFcnJvcixjPVN0cmluZyxnPU1hdGguZmxvb3IsRT1pKHMpLFE9aSgiIi5zbGljZSksdT1pKDEuLnRvRml4ZWQpLGw9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiAwPT09ZT90OmUlMj09MT9sKEEsZS0xLHQqQSk6bChBKkEsZS8yLHQpfSxoPWZ1bmN0aW9uKEEsZSx0KXtmb3IodmFyIG49LTEsaT10Oysrbjw2OylpKz1lKkFbbl0sQVtuXT1pJTFlNyxpPWcoaS8xZTcpfSx3PWZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PTYsbj0wOy0tdD49MDspbis9QVt0XSxBW3RdPWcobi9lKSxuPW4lZSoxZTd9LEM9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTYsdD0iIjstLWU+PTA7KWlmKCIiIT09dHx8MD09PWV8fDAhPT1BW2VdKXt2YXIgbj1jKEFbZV0pO3Q9IiI9PT10P246dCtFKCIwIiw3LW4ubGVuZ3RoKStufXJldHVybiB0fTtuKHt0YXJnZXQ6Ik51bWJlciIscHJvdG86ITAsZm9yY2VkOmEoKGZ1bmN0aW9uKCl7cmV0dXJuIjAuMDAwIiE9PXUoOGUtNSwzKXx8IjEiIT09dSguOSwwKXx8IjEuMjUiIT09dSgxLjI1NSwyKXx8IjEwMDAwMDAwMDAwMDAwMDAxMjgiIT09dSgweGRlMGI2YjNhNzY0MDA4MCwwKX0pKXx8IWEoKGZ1bmN0aW9uKCl7dSh7fSl9KSl9LHt0b0ZpeGVkOmZ1bmN0aW9uKEEpe3ZhciBlLHQsbixpLHM9byh0aGlzKSxhPXIoQSksZz1bMCwwLDAsMCwwLDBdLHU9IiIsST0iMCI7aWYoYTwwfHxhPjIwKXRocm93IG5ldyBCKCJJbmNvcnJlY3QgZnJhY3Rpb24gZGlnaXRzIik7aWYocyE9cylyZXR1cm4iTmFOIjtpZihzPD0tMWUyMXx8cz49MWUyMSlyZXR1cm4gYyhzKTtpZihzPDAmJih1PSItIixzPS1zKSxzPjFlLTIxKWlmKHQ9KGU9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTAsdD1BO3Q+PTQwOTY7KWUrPTEyLHQvPTQwOTY7Zm9yKDt0Pj0yOyllKz0xLHQvPTI7cmV0dXJuIGV9KHMqbCgyLDY5LDEpKS02OSk8MD9zKmwoMiwtZSwxKTpzL2woMixlLDEpLHQqPTQ1MDM1OTk2MjczNzA0OTYsKGU9NTItZSk+MCl7Zm9yKGgoZywwLHQpLG49YTtuPj03OyloKGcsMWU3LDApLG4tPTc7Zm9yKGgoZyxsKDEwLG4sMSksMCksbj1lLTE7bj49MjM7KXcoZywxPDwyMyksbi09MjM7dyhnLDE8PG4pLGgoZywxLDEpLHcoZywyKSxJPUMoZyl9ZWxzZSBoKGcsMCx0KSxoKGcsMTw8LWUsMCksST1DKGcpK0UoIjAiLGEpO3JldHVybiBhPjA/dSsoKGk9SS5sZW5ndGgpPD1hPyIwLiIrRSgiMCIsYS1pKStJOlEoSSwwLGktYSkrIi4iK1EoSSxpLWEpKTp1K0l9fSl9LDUyODQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg4ODQ0KSxyPXQoMzY4OSksbz10KDM2NDgpLHM9aSgxLi50b1ByZWNpc2lvbik7bih7dGFyZ2V0OiJOdW1iZXIiLHByb3RvOiEwLGZvcmNlZDpyKChmdW5jdGlvbigpe3JldHVybiIxIiE9PXMoMSx2b2lkIDApfSkpfHwhcigoZnVuY3Rpb24oKXtzKHt9KX0pKX0se3RvUHJlY2lzaW9uOmZ1bmN0aW9uKEEpe3JldHVybiB2b2lkIDA9PT1BP3Mobyh0aGlzKSk6cyhvKHRoaXMpLEEpfX0pfSwxMDEzOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg5OTg5KSh7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsc2hhbTohdCg3Njk3KX0se2NyZWF0ZTp0KDUzOTEpfSl9LDUwODI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg3Njk3KSxyPXQoODkyMCkuZjtuKHt0YXJnZXQ6Ik9iamVjdCIsc3RhdDohMCxmb3JjZWQ6T2JqZWN0LmRlZmluZVByb3BlcnRpZXMhPT1yLHNoYW06IWl9LHtkZWZpbmVQcm9wZXJ0aWVzOnJ9KX0sNzM5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoNzY5Nykscj10KDI1NjApLmY7bih7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsZm9yY2VkOk9iamVjdC5kZWZpbmVQcm9wZXJ0eSE9PXIsc2hhbTohaX0se2RlZmluZVByb3BlcnR5OnJ9KX0sMTkxOTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDM2ODkpLHI9dCg1MjkwKSxvPXQoMjQ3NCkuZixzPXQoNzY5Nyk7bih7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsZm9yY2VkOiFzfHxpKChmdW5jdGlvbigpe28oMSl9KSksc2hhbTohc30se2dldE93blByb3BlcnR5RGVzY3JpcHRvcjpmdW5jdGlvbihBLGUpe3JldHVybiBvKHIoQSksZSl9fSl9LDk0NzQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg3Njk3KSxyPXQoOTE1Miksbz10KDUyOTApLHM9dCgyNDc0KSxhPXQoNjUyMik7bih7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsc2hhbTohaX0se2dldE93blByb3BlcnR5RGVzY3JpcHRvcnM6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlLHQsbj1vKEEpLGk9cy5mLEI9cihuKSxjPXt9LGc9MDtCLmxlbmd0aD5nOyl2b2lkIDAhPT0odD1pKG4sZT1CW2crK10pKSYmYShjLGUsdCk7cmV0dXJuIGN9fSl9LDk0MzQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCgxNDYpLHI9dCgzNjg5KSxvPXQoNzUxOCkscz10KDY5MCk7bih7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsZm9yY2VkOiFpfHxyKChmdW5jdGlvbigpe28uZigxKX0pKX0se2dldE93blByb3BlcnR5U3ltYm9sczpmdW5jdGlvbihBKXt2YXIgZT1vLmY7cmV0dXJuIGU/ZShzKEEpKTpbXX19KX0sODA1MjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDM2ODkpLHI9dCg2OTApLG89dCgxODY4KSxzPXQoMTc0OCk7bih7dGFyZ2V0OiJPYmplY3QiLHN0YXQ6ITAsZm9yY2VkOmkoKGZ1bmN0aW9uKCl7bygxKX0pKSxzaGFtOiFzfSx7Z2V0UHJvdG90eXBlT2Y6ZnVuY3Rpb24oQSl7cmV0dXJuIG8ocihBKSl9fSl9LDkzNTg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg2OTApLHI9dCgzMDApO24oe3RhcmdldDoiT2JqZWN0IixzdGF0OiEwLGZvcmNlZDp0KDM2ODkpKChmdW5jdGlvbigpe3IoMSl9KSl9LHtrZXlzOmZ1bmN0aW9uKEEpe3JldHVybiByKGkoQSkpfX0pfSwyMjg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDMwNDMpLGk9dCgxODgwKSxyPXQoNTA3Myk7bnx8aShPYmplY3QucHJvdG90eXBlLCJ0b1N0cmluZyIscix7dW5zYWZlOiEwfSl9LDkzOTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDQ4MTgpO24oe2dsb2JhbDohMCxmb3JjZWQ6cGFyc2VGbG9hdCE9PWl9LHtwYXJzZUZsb2F0Oml9KX0sMjMyMDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDc4OTcpO24oe2dsb2JhbDohMCxmb3JjZWQ6cGFyc2VJbnQhPT1pfSx7cGFyc2VJbnQ6aX0pfSwxNjkyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMjYxNSkscj10KDUwOSksbz10KDI1ODIpLHM9dCg5MzAyKSxhPXQoODczNCk7bih7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwLGZvcmNlZDp0KDU2Mil9LHthbGw6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcyx0PW8uZihlKSxuPXQucmVzb2x2ZSxCPXQucmVqZWN0LGM9cygoZnVuY3Rpb24oKXt2YXIgdD1yKGUucmVzb2x2ZSksbz1bXSxzPTAsYz0xO2EoQSwoZnVuY3Rpb24oQSl7dmFyIHI9cysrLGE9ITE7YysrLGkodCxlLEEpLnRoZW4oKGZ1bmN0aW9uKEEpe2F8fChhPSEwLG9bcl09QSwtLWN8fG4obykpfSksQil9KSksLS1jfHxuKG8pfSkpO3JldHVybiBjLmVycm9yJiZCKGMudmFsdWUpLHQucHJvbWlzZX19KX0sNTA4OTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDM5MzEpLHI9dCg3MDczKS5DT05TVFJVQ1RPUixvPXQoNzkxOSkscz10KDYwNTgpLGE9dCg5OTg1KSxCPXQoMTg4MCksYz1vJiZvLnByb3RvdHlwZTtpZihuKHt0YXJnZXQ6IlByb21pc2UiLHByb3RvOiEwLGZvcmNlZDpyLHJlYWw6ITB9LHtjYXRjaDpmdW5jdGlvbihBKXtyZXR1cm4gdGhpcy50aGVuKHZvaWQgMCxBKX19KSwhaSYmYShvKSl7dmFyIGc9cygiUHJvbWlzZSIpLnByb3RvdHlwZS5jYXRjaDtjLmNhdGNoIT09ZyYmQihjLCJjYXRjaCIsZyx7dW5zYWZlOiEwfSl9fSw2Njk3OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG4saSxyLG89dCg5OTg5KSxzPXQoMzkzMSksYT10KDgwNiksQj10KDkwMzcpLGM9dCgyNjE1KSxnPXQoMTg4MCksRT10KDkzODUpLFE9dCg1OTk3KSx1PXQoNDI0MSksbD10KDUwOSksaD10KDk5ODUpLHc9dCg4OTk5KSxDPXQoNzY3KSxJPXQoNjM3MyksTT10KDk4ODYpLnNldCxkPXQoMjMxKSxwPXQoOTIwKSxtPXQoOTMwMiksRj10KDQ0MTApLEQ9dCg2MTgpLFk9dCg3OTE5KSxmPXQoNzA3MyksTj10KDI1ODIpLFU9IlByb21pc2UiLHk9Zi5DT05TVFJVQ1RPUixUPWYuUkVKRUNUSU9OX0VWRU5ULHg9Zi5TVUJDTEFTU0lORyxSPUQuZ2V0dGVyRm9yKFUpLEc9RC5zZXQsUz1ZJiZZLnByb3RvdHlwZSxiPVksSD1TLHY9Qi5UeXBlRXJyb3Isaz1CLmRvY3VtZW50LGo9Qi5wcm9jZXNzLEo9Ti5mLHo9SixMPSEhKGsmJmsuY3JlYXRlRXZlbnQmJkIuZGlzcGF0Y2hFdmVudCksUD0idW5oYW5kbGVkcmVqZWN0aW9uIixPPWZ1bmN0aW9uKEEpe3ZhciBlO3JldHVybiEoIXcoQSl8fCFoKGU9QS50aGVuKSkmJmV9LFY9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuLGkscj1lLnZhbHVlLG89MT09PWUuc3RhdGUscz1vP0Eub2s6QS5mYWlsLGE9QS5yZXNvbHZlLEI9QS5yZWplY3QsZz1BLmRvbWFpbjt0cnl7cz8ob3x8KDI9PT1lLnJlamVjdGlvbiYmXyhlKSxlLnJlamVjdGlvbj0xKSwhMD09PXM/dD1yOihnJiZnLmVudGVyKCksdD1zKHIpLGcmJihnLmV4aXQoKSxpPSEwKSksdD09PUEucHJvbWlzZT9CKG5ldyB2KCJQcm9taXNlLWNoYWluIGN5Y2xlIikpOihuPU8odCkpP2Mobix0LGEsQik6YSh0KSk6QihyKX1jYXRjaChBKXtnJiYhaSYmZy5leGl0KCksQihBKX19LFc9ZnVuY3Rpb24oQSxlKXtBLm5vdGlmaWVkfHwoQS5ub3RpZmllZD0hMCxkKChmdW5jdGlvbigpe2Zvcih2YXIgdCxuPUEucmVhY3Rpb25zO3Q9bi5nZXQoKTspVih0LEEpO0Eubm90aWZpZWQ9ITEsZSYmIUEucmVqZWN0aW9uJiZYKEEpfSkpKX0sSz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saTtMPygobj1rLmNyZWF0ZUV2ZW50KCJFdmVudCIpKS5wcm9taXNlPWUsbi5yZWFzb249dCxuLmluaXRFdmVudChBLCExLCEwKSxCLmRpc3BhdGNoRXZlbnQobikpOm49e3Byb21pc2U6ZSxyZWFzb246dH0sIVQmJihpPUJbIm9uIitBXSk/aShuKTpBPT09UCYmcCgiVW5oYW5kbGVkIHByb21pc2UgcmVqZWN0aW9uIix0KX0sWD1mdW5jdGlvbihBKXtjKE0sQiwoZnVuY3Rpb24oKXt2YXIgZSx0PUEuZmFjYWRlLG49QS52YWx1ZTtpZihaKEEpJiYoZT1tKChmdW5jdGlvbigpe2E/ai5lbWl0KCJ1bmhhbmRsZWRSZWplY3Rpb24iLG4sdCk6SyhQLHQsbil9KSksQS5yZWplY3Rpb249YXx8WihBKT8yOjEsZS5lcnJvcikpdGhyb3cgZS52YWx1ZX0pKX0sWj1mdW5jdGlvbihBKXtyZXR1cm4gMSE9PUEucmVqZWN0aW9uJiYhQS5wYXJlbnR9LF89ZnVuY3Rpb24oQSl7YyhNLEIsKGZ1bmN0aW9uKCl7dmFyIGU9QS5mYWNhZGU7YT9qLmVtaXQoInJlamVjdGlvbkhhbmRsZWQiLGUpOksoInJlamVjdGlvbmhhbmRsZWQiLGUsQS52YWx1ZSl9KSl9LHE9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBmdW5jdGlvbihuKXtBKGUsbix0KX19LCQ9ZnVuY3Rpb24oQSxlLHQpe0EuZG9uZXx8KEEuZG9uZT0hMCx0JiYoQT10KSxBLnZhbHVlPWUsQS5zdGF0ZT0yLFcoQSwhMCkpfSxBQT1mdW5jdGlvbihBLGUsdCl7aWYoIUEuZG9uZSl7QS5kb25lPSEwLHQmJihBPXQpO3RyeXtpZihBLmZhY2FkZT09PWUpdGhyb3cgbmV3IHYoIlByb21pc2UgY2FuJ3QgYmUgcmVzb2x2ZWQgaXRzZWxmIik7dmFyIG49TyhlKTtuP2QoKGZ1bmN0aW9uKCl7dmFyIHQ9e2RvbmU6ITF9O3RyeXtjKG4sZSxxKEFBLHQsQSkscSgkLHQsQSkpfWNhdGNoKGUpeyQodCxlLEEpfX0pKTooQS52YWx1ZT1lLEEuc3RhdGU9MSxXKEEsITEpKX1jYXRjaChlKXskKHtkb25lOiExfSxlLEEpfX19O2lmKHkmJihIPShiPWZ1bmN0aW9uKEEpe0ModGhpcyxIKSxsKEEpLGMobix0aGlzKTt2YXIgZT1SKHRoaXMpO3RyeXtBKHEoQUEsZSkscSgkLGUpKX1jYXRjaChBKXskKGUsQSl9fSkucHJvdG90eXBlLChuPWZ1bmN0aW9uKEEpe0codGhpcyx7dHlwZTpVLGRvbmU6ITEsbm90aWZpZWQ6ITEscGFyZW50OiExLHJlYWN0aW9uczpuZXcgRixyZWplY3Rpb246ITEsc3RhdGU6MCx2YWx1ZTp2b2lkIDB9KX0pLnByb3RvdHlwZT1nKEgsInRoZW4iLChmdW5jdGlvbihBLGUpe3ZhciB0PVIodGhpcyksbj1KKEkodGhpcyxiKSk7cmV0dXJuIHQucGFyZW50PSEwLG4ub2s9IWgoQSl8fEEsbi5mYWlsPWgoZSkmJmUsbi5kb21haW49YT9qLmRvbWFpbjp2b2lkIDAsMD09PXQuc3RhdGU/dC5yZWFjdGlvbnMuYWRkKG4pOmQoKGZ1bmN0aW9uKCl7VihuLHQpfSkpLG4ucHJvbWlzZX0pKSxpPWZ1bmN0aW9uKCl7dmFyIEE9bmV3IG4sZT1SKEEpO3RoaXMucHJvbWlzZT1BLHRoaXMucmVzb2x2ZT1xKEFBLGUpLHRoaXMucmVqZWN0PXEoJCxlKX0sTi5mPUo9ZnVuY3Rpb24oQSl7cmV0dXJuIEE9PT1ifHx2b2lkIDA9PT1BP25ldyBpKEEpOnooQSl9LCFzJiZoKFkpJiZTIT09T2JqZWN0LnByb3RvdHlwZSkpe3I9Uy50aGVuLHh8fGcoUywidGhlbiIsKGZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcztyZXR1cm4gbmV3IGIoKGZ1bmN0aW9uKEEsZSl7YyhyLHQsQSxlKX0pKS50aGVuKEEsZSl9KSx7dW5zYWZlOiEwfSk7dHJ5e2RlbGV0ZSBTLmNvbnN0cnVjdG9yfWNhdGNoKEEpe31FJiZFKFMsSCl9byh7Z2xvYmFsOiEwLGNvbnN0cnVjdG9yOiEwLHdyYXA6ITAsZm9yY2VkOnl9LHtQcm9taXNlOmJ9KSxRKGIsVSwhMSwhMCksdShVKX0sMzk2NDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3QoNjY5NyksdCgxNjkyKSx0KDUwODkpLHQoODgyOSksdCgyMDkyKSx0KDc5MDUpfSw4ODI5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMjYxNSkscj10KDUwOSksbz10KDI1ODIpLHM9dCg5MzAyKSxhPXQoODczNCk7bih7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwLGZvcmNlZDp0KDU2Mil9LHtyYWNlOmZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMsdD1vLmYoZSksbj10LnJlamVjdCxCPXMoKGZ1bmN0aW9uKCl7dmFyIG89cihlLnJlc29sdmUpO2EoQSwoZnVuY3Rpb24oQSl7aShvLGUsQSkudGhlbih0LnJlc29sdmUsbil9KSl9KSk7cmV0dXJuIEIuZXJyb3ImJm4oQi52YWx1ZSksdC5wcm9taXNlfX0pfSwyMDkyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMjYxNSkscj10KDI1ODIpO24oe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6dCg3MDczKS5DT05TVFJVQ1RPUn0se3JlamVjdDpmdW5jdGlvbihBKXt2YXIgZT1yLmYodGhpcyk7cmV0dXJuIGkoZS5yZWplY3Qsdm9pZCAwLEEpLGUucHJvbWlzZX19KX0sNzkwNTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDYwNTgpLHI9dCgzOTMxKSxvPXQoNzkxOSkscz10KDcwNzMpLkNPTlNUUlVDVE9SLGE9dCgyOTQ1KSxCPWkoIlByb21pc2UiKSxjPXImJiFzO24oe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6cnx8c30se3Jlc29sdmU6ZnVuY3Rpb24oQSl7cmV0dXJuIGEoYyYmdGhpcz09PUI/bzp0aGlzLEEpfX0pfSw1MDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDYwNTgpLHI9dCgxNzM1KSxvPXQoNjc2MSkscz10KDI2NTUpLGE9dCg1MDI3KSxCPXQoODk5OSksYz10KDUzOTEpLGc9dCgzNjg5KSxFPWkoIlJlZmxlY3QiLCJjb25zdHJ1Y3QiKSxRPU9iamVjdC5wcm90b3R5cGUsdT1bXS5wdXNoLGw9ZygoZnVuY3Rpb24oKXtmdW5jdGlvbiBBKCl7fXJldHVybiEoRSgoZnVuY3Rpb24oKXt9KSxbXSxBKWluc3RhbmNlb2YgQSl9KSksaD0hZygoZnVuY3Rpb24oKXtFKChmdW5jdGlvbigpe30pKX0pKSx3PWx8fGg7bih7dGFyZ2V0OiJSZWZsZWN0IixzdGF0OiEwLGZvcmNlZDp3LHNoYW06d30se2NvbnN0cnVjdDpmdW5jdGlvbihBLGUpe3MoQSksYShlKTt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPDM/QTpzKGFyZ3VtZW50c1syXSk7aWYoaCYmIWwpcmV0dXJuIEUoQSxlLHQpO2lmKEE9PT10KXtzd2l0Y2goZS5sZW5ndGgpe2Nhc2UgMDpyZXR1cm4gbmV3IEE7Y2FzZSAxOnJldHVybiBuZXcgQShlWzBdKTtjYXNlIDI6cmV0dXJuIG5ldyBBKGVbMF0sZVsxXSk7Y2FzZSAzOnJldHVybiBuZXcgQShlWzBdLGVbMV0sZVsyXSk7Y2FzZSA0OnJldHVybiBuZXcgQShlWzBdLGVbMV0sZVsyXSxlWzNdKX12YXIgbj1bbnVsbF07cmV0dXJuIHIodSxuLGUpLG5ldyhyKG8sQSxuKSl9dmFyIGk9dC5wcm90b3R5cGUsZz1jKEIoaSk/aTpRKSx3PXIoQSxnLGUpO3JldHVybiBCKHcpP3c6Z319KX0sNjAzNDooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDkwMzcpLHI9dCg1OTk3KTtuKHtnbG9iYWw6ITB9LHtSZWZsZWN0Ont9fSkscihpLlJlZmxlY3QsIlJlZmxlY3QiLCEwKX0sMjAwMzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoNzY5NyksaT10KDkwMzcpLHI9dCg4ODQ0KSxvPXQoNTI2Nikscz10KDM0NTcpLGE9dCg1NzczKSxCPXQoMjc0MSkuZixjPXQoMzYyMiksZz10KDEyNDUpLEU9dCg0MzI3KSxRPXQoMzQ3NyksdT10KDc5MDEpLGw9dCg4MDU1KSxoPXQoMTg4MCksdz10KDM2ODkpLEM9dCg2ODEyKSxJPXQoNjE4KS5lbmZvcmNlLE09dCg0MjQxKSxkPXQoNDIwMSkscD10KDIxMDApLG09dCg2NDIyKSxGPWQoIm1hdGNoIiksRD1pLlJlZ0V4cCxZPUQucHJvdG90eXBlLGY9aS5TeW50YXhFcnJvcixOPXIoWS5leGVjKSxVPXIoIiIuY2hhckF0KSx5PXIoIiIucmVwbGFjZSksVD1yKCIiLmluZGV4T2YpLHg9cigiIi5zbGljZSksUj0vXlw/PFteXHNcZCEjJSYqKzw9PkBeXVteXHMhIyUmKis8PT5AXl0qPi8sRz0vYS9nLFM9L2EvZyxiPW5ldyBEKEcpIT09RyxIPXUuTUlTU0VEX1NUSUNLWSx2PXUuVU5TVVBQT1JURURfWTtpZihvKCJSZWdFeHAiLG4mJighYnx8SHx8cHx8bXx8dygoZnVuY3Rpb24oKXtyZXR1cm4gU1tGXT0hMSxEKEcpIT09R3x8RChTKT09PVN8fCIvYS9pIiE9PVN0cmluZyhEKEcsImkiKSl9KSkpKSl7Zm9yKHZhciBrPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIsbyxCLHU9YyhZLHRoaXMpLGw9ZyhBKSxoPXZvaWQgMD09PWUsdz1bXSxNPUE7aWYoIXUmJmwmJmgmJkEuY29uc3RydWN0b3I9PT1rKXJldHVybiBBO2lmKChsfHxjKFksQSkpJiYoQT1BLnNvdXJjZSxoJiYoZT1RKE0pKSksQT12b2lkIDA9PT1BPyIiOkUoQSksZT12b2lkIDA9PT1lPyIiOkUoZSksTT1BLHAmJiJkb3RBbGwiaW4gRyYmKG49ISFlJiZUKGUsInMiKT4tMSkmJihlPXkoZSwvcy9nLCIiKSksdD1lLEgmJiJzdGlja3kiaW4gRyYmKGk9ISFlJiZUKGUsInkiKT4tMSkmJnYmJihlPXkoZSwveS9nLCIiKSksbSYmKEE9KHI9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlLHQ9QS5sZW5ndGgsbj0wLGk9IiIscj1bXSxvPXt9LHM9ITEsYT0hMSxCPTAsYz0iIjtuPD10O24rKyl7aWYoIlxcIj09PShlPVUoQSxuKSkpZSs9VShBLCsrbik7ZWxzZSBpZigiXSI9PT1lKXM9ITE7ZWxzZSBpZighcylzd2l0Y2goITApe2Nhc2UiWyI9PT1lOnM9ITA7YnJlYWs7Y2FzZSIoIj09PWU6TihSLHgoQSxuKzEpKSYmKG4rPTIsYT0hMCksaSs9ZSxCKys7Y29udGludWU7Y2FzZSI+Ij09PWUmJmE6aWYoIiI9PT1jfHxDKG8sYykpdGhyb3cgbmV3IGYoIkludmFsaWQgY2FwdHVyZSBncm91cCBuYW1lIik7b1tjXT0hMCxyW3IubGVuZ3RoXT1bYyxCXSxhPSExLGM9IiI7Y29udGludWV9YT9jKz1lOmkrPWV9cmV0dXJuW2kscl19KEEpKVswXSx3PXJbMV0pLG89cyhEKEEsZSksdT90aGlzOlksayksKG58fGl8fHcubGVuZ3RoKSYmKEI9SShvKSxuJiYoQi5kb3RBbGw9ITAsQi5yYXc9ayhmdW5jdGlvbihBKXtmb3IodmFyIGUsdD1BLmxlbmd0aCxuPTAsaT0iIixyPSExO248PXQ7bisrKSJcXCIhPT0oZT1VKEEsbikpP3J8fCIuIiE9PWU/KCJbIj09PWU/cj0hMDoiXSI9PT1lJiYocj0hMSksaSs9ZSk6aSs9IltcXHNcXFNdIjppKz1lK1UoQSwrK24pO3JldHVybiBpfShBKSx0KSksaSYmKEIuc3RpY2t5PSEwKSx3Lmxlbmd0aCYmKEIuZ3JvdXBzPXcpKSxBIT09TSl0cnl7YShvLCJzb3VyY2UiLCIiPT09TT8iKD86KSI6TSl9Y2F0Y2goQSl7fXJldHVybiBvfSxqPUIoRCksSj0wO2oubGVuZ3RoPko7KWwoayxELGpbSisrXSk7WS5jb25zdHJ1Y3Rvcj1rLGsucHJvdG90eXBlPVksaChpLCJSZWdFeHAiLGsse2NvbnN0cnVjdG9yOiEwfSl9TSgiUmVnRXhwIil9LDg1MTg6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDc2OTcpLGk9dCgyMTAwKSxyPXQoNjY0OCksbz10KDIxNDgpLHM9dCg2MTgpLmdldCxhPVJlZ0V4cC5wcm90b3R5cGUsQj1UeXBlRXJyb3I7biYmaSYmbyhhLCJkb3RBbGwiLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7aWYodGhpcyE9PWEpe2lmKCJSZWdFeHAiPT09cih0aGlzKSlyZXR1cm4hIXModGhpcykuZG90QWxsO3Rocm93IG5ldyBCKCJJbmNvbXBhdGlibGUgcmVjZWl2ZXIsIFJlZ0V4cCByZXF1aXJlZCIpfX19KX0sNDA0MzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDYzMDgpO24oe3RhcmdldDoiUmVnRXhwIixwcm90bzohMCxmb3JjZWQ6Ly4vLmV4ZWMhPT1pfSx7ZXhlYzppfSl9LDM0NDA6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDc2OTcpLGk9dCg3OTAxKS5NSVNTRURfU1RJQ0tZLHI9dCg2NjQ4KSxvPXQoMjE0OCkscz10KDYxOCkuZ2V0LGE9UmVnRXhwLnByb3RvdHlwZSxCPVR5cGVFcnJvcjtuJiZpJiZvKGEsInN0aWNreSIse2NvbmZpZ3VyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtpZih0aGlzIT09YSl7aWYoIlJlZ0V4cCI9PT1yKHRoaXMpKXJldHVybiEhcyh0aGlzKS5zdGlja3k7dGhyb3cgbmV3IEIoIkluY29tcGF0aWJsZSByZWNlaXZlciwgUmVnRXhwIHJlcXVpcmVkIil9fX0pfSw3NDA5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg0MDQzKTt2YXIgbixpLHI9dCg5OTg5KSxvPXQoMjYxNSkscz10KDk5ODUpLGE9dCg1MDI3KSxCPXQoNDMyNyksYz0obj0hMSwoaT0vW2FjXS8pLmV4ZWM9ZnVuY3Rpb24oKXtyZXR1cm4gbj0hMCwvLi8uZXhlYy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LCEwPT09aS50ZXN0KCJhYmMiKSYmbiksZz0vLi8udGVzdDtyKHt0YXJnZXQ6IlJlZ0V4cCIscHJvdG86ITAsZm9yY2VkOiFjfSx7dGVzdDpmdW5jdGlvbihBKXt2YXIgZT1hKHRoaXMpLHQ9QihBKSxuPWUuZXhlYztpZighcyhuKSlyZXR1cm4gbyhnLGUsdCk7dmFyIGk9byhuLGUsdCk7cmV0dXJuIG51bGwhPT1pJiYoYShpKSwhMCl9fSl9LDI4MjY6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDEyMzYpLlBST1BFUixpPXQoMTg4MCkscj10KDUwMjcpLG89dCg0MzI3KSxzPXQoMzY4OSksYT10KDM0NzcpLEI9InRvU3RyaW5nIixjPVJlZ0V4cC5wcm90b3R5cGVbQl0sZz1zKChmdW5jdGlvbigpe3JldHVybiIvYS9iIiE9PWMuY2FsbCh7c291cmNlOiJhIixmbGFnczoiYiJ9KX0pKSxFPW4mJmMubmFtZSE9PUI7KGd8fEUpJiZpKFJlZ0V4cC5wcm90b3R5cGUsQiwoZnVuY3Rpb24oKXt2YXIgQT1yKHRoaXMpO3JldHVybiIvIitvKEEuc291cmNlKSsiLyIrbyhhKEEpKX0pLHt1bnNhZmU6ITB9KX0sNzk4NTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3QoMzE5KSgiU2V0IiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEEodGhpcyxhcmd1bWVudHMubGVuZ3RoP2FyZ3VtZW50c1swXTp2b2lkIDApfX0pLHQoODAwKSl9LDk2NDk6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt0KDc5ODUpfSwzODQzOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoODg0NCkscj10KDIxMjQpLG89dCg0Njg0KSxzPXQoNDMyNyksYT10KDc0MTMpLEI9aSgiIi5pbmRleE9mKTtuKHt0YXJnZXQ6IlN0cmluZyIscHJvdG86ITAsZm9yY2VkOiFhKCJpbmNsdWRlcyIpfSx7aW5jbHVkZXM6ZnVuY3Rpb24oQSl7cmV0dXJuISF+QihzKG8odGhpcykpLHMocihBKSksYXJndW1lbnRzLmxlbmd0aD4xP2FyZ3VtZW50c1sxXTp2b2lkIDApfX0pfSwxNjk0OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg3MzApLmNoYXJBdCxpPXQoNDMyNykscj10KDYxOCksbz10KDE5MzQpLHM9dCg3ODA3KSxhPSJTdHJpbmcgSXRlcmF0b3IiLEI9ci5zZXQsYz1yLmdldHRlckZvcihhKTtvKFN0cmluZywiU3RyaW5nIiwoZnVuY3Rpb24oQSl7Qih0aGlzLHt0eXBlOmEsc3RyaW5nOmkoQSksaW5kZXg6MH0pfSksKGZ1bmN0aW9uKCl7dmFyIEEsZT1jKHRoaXMpLHQ9ZS5zdHJpbmcsaT1lLmluZGV4O3JldHVybiBpPj10Lmxlbmd0aD9zKHZvaWQgMCwhMCk6KEE9bih0LGkpLGUuaW5kZXgrPUEubGVuZ3RoLHMoQSwhMSkpfSkpfSwyNDYyOihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCgyNjE1KSxpPXQoODY3OCkscj10KDUwMjcpLG89dCg5ODEpLHM9dCgzMTI2KSxhPXQoNDMyNyksQj10KDQ2ODQpLGM9dCg0ODQ5KSxnPXQoMTUxNCksRT10KDYxMDApO2koIm1hdGNoIiwoZnVuY3Rpb24oQSxlLHQpe3JldHVybltmdW5jdGlvbihlKXt2YXIgdD1CKHRoaXMpLGk9byhlKT92b2lkIDA6YyhlLEEpO3JldHVybiBpP24oaSxlLHQpOm5ldyBSZWdFeHAoZSlbQV0oYSh0KSl9LGZ1bmN0aW9uKEEpe3ZhciBuPXIodGhpcyksaT1hKEEpLG89dChlLG4saSk7aWYoby5kb25lKXJldHVybiBvLnZhbHVlO2lmKCFuLmdsb2JhbClyZXR1cm4gRShuLGkpO3ZhciBCPW4udW5pY29kZTtuLmxhc3RJbmRleD0wO2Zvcih2YXIgYyxRPVtdLHU9MDtudWxsIT09KGM9RShuLGkpKTspe3ZhciBsPWEoY1swXSk7UVt1XT1sLCIiPT09bCYmKG4ubGFzdEluZGV4PWcoaSxzKG4ubGFzdEluZGV4KSxCKSksdSsrfXJldHVybiAwPT09dT9udWxsOlF9XX0pKX0sOTU4ODooQSxlLHQpPT57InVzZSBzdHJpY3QiO3QoOTk4OSkoe3RhcmdldDoiU3RyaW5nIixwcm90bzohMH0se3JlcGVhdDp0KDUzNCl9KX0sNzI2NzooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoMTczNSksaT10KDI2MTUpLHI9dCg4ODQ0KSxvPXQoODY3OCkscz10KDM2ODkpLGE9dCg1MDI3KSxCPXQoOTk4NSksYz10KDk4MSksZz10KDg3MDApLEU9dCgzMTI2KSxRPXQoNDMyNyksdT10KDQ2ODQpLGw9dCgxNTE0KSxoPXQoNDg0OSksdz10KDcwMTcpLEM9dCg2MTAwKSxJPXQoNDIwMSkoInJlcGxhY2UiKSxNPU1hdGgubWF4LGQ9TWF0aC5taW4scD1yKFtdLmNvbmNhdCksbT1yKFtdLnB1c2gpLEY9cigiIi5pbmRleE9mKSxEPXIoIiIuc2xpY2UpLFk9IiQwIj09PSJhIi5yZXBsYWNlKC8uLywiJDAiKSxmPSEhLy4vW0ldJiYiIj09PS8uL1tJXSgiYSIsIiQwIik7bygicmVwbGFjZSIsKGZ1bmN0aW9uKEEsZSx0KXt2YXIgcj1mPyIkIjoiJDAiO3JldHVybltmdW5jdGlvbihBLHQpe3ZhciBuPXUodGhpcykscj1jKEEpP3ZvaWQgMDpoKEEsSSk7cmV0dXJuIHI/aShyLEEsbix0KTppKGUsUShuKSxBLHQpfSxmdW5jdGlvbihBLGkpe3ZhciBvPWEodGhpcykscz1RKEEpO2lmKCJzdHJpbmciPT10eXBlb2YgaSYmLTE9PT1GKGkscikmJi0xPT09RihpLCIkPCIpKXt2YXIgYz10KGUsbyxzLGkpO2lmKGMuZG9uZSlyZXR1cm4gYy52YWx1ZX12YXIgdT1CKGkpO3V8fChpPVEoaSkpO3ZhciBoLEk9by5nbG9iYWw7SSYmKGg9by51bmljb2RlLG8ubGFzdEluZGV4PTApO2Zvcih2YXIgWSxmPVtdO251bGwhPT0oWT1DKG8scykpJiYobShmLFkpLEkpOykiIj09PVEoWVswXSkmJihvLmxhc3RJbmRleD1sKHMsRShvLmxhc3RJbmRleCksaCkpO2Zvcih2YXIgTixVPSIiLHk9MCxUPTA7VDxmLmxlbmd0aDtUKyspe2Zvcih2YXIgeCxSPVEoKFk9ZltUXSlbMF0pLEc9TShkKGcoWS5pbmRleCkscy5sZW5ndGgpLDApLFM9W10sYj0xO2I8WS5sZW5ndGg7YisrKW0oUyx2b2lkIDA9PT0oTj1ZW2JdKT9OOlN0cmluZyhOKSk7dmFyIEg9WS5ncm91cHM7aWYodSl7dmFyIHY9cChbUl0sUyxHLHMpO3ZvaWQgMCE9PUgmJm0odixIKSx4PVEobihpLHZvaWQgMCx2KSl9ZWxzZSB4PXcoUixzLEcsUyxILGkpO0c+PXkmJihVKz1EKHMseSxHKSt4LHk9RytSLmxlbmd0aCl9cmV0dXJuIFUrRChzLHkpfV19KSwhIXMoKGZ1bmN0aW9uKCl7dmFyIEE9Ly4vO3JldHVybiBBLmV4ZWM9ZnVuY3Rpb24oKXt2YXIgQT1bXTtyZXR1cm4gQS5ncm91cHM9e2E6IjcifSxBfSwiNyIhPT0iIi5yZXBsYWNlKEEsIiQ8YT4iKX0pKXx8IVl8fGYpfSw3NzI5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoMTU2OCk7bih7dGFyZ2V0OiJTdHJpbmciLHByb3RvOiEwLGZvcmNlZDp0KDQ1ODApKCJzdWIiKX0se3N1YjpmdW5jdGlvbigpe3JldHVybiBpKHRoaXMsInN1YiIsIiIsIiIpfX0pfSwzNzI6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg4ODQ0KSxyPXQoNDY4NCksbz10KDg3MDApLHM9dCg0MzI3KSxhPWkoIiIuc2xpY2UpLEI9TWF0aC5tYXgsYz1NYXRoLm1pbjtuKHt0YXJnZXQ6IlN0cmluZyIscHJvdG86ITAsZm9yY2VkOiEiIi5zdWJzdHJ8fCJiIiE9PSJhYiIuc3Vic3RyKC0xKX0se3N1YnN0cjpmdW5jdGlvbihBLGUpe3ZhciB0LG4saT1zKHIodGhpcykpLGc9aS5sZW5ndGgsRT1vKEEpO3JldHVybiBFPT09MS8wJiYoRT0wKSxFPDAmJihFPUIoZytFLDApKSwodD12b2lkIDA9PT1lP2c6byhlKSk8PTB8fHQ9PT0xLzB8fEU+PShuPWMoRSt0LGcpKT8iIjphKGksRSxuKX19KX0sODQzNjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDE0MzUpLnRyaW07bih7dGFyZ2V0OiJTdHJpbmciLHByb3RvOiEwLGZvcmNlZDp0KDU5ODQpKCJ0cmltIil9LHt0cmltOmZ1bmN0aW9uKCl7cmV0dXJuIGkodGhpcyl9fSl9LDc4NTU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg5MDM3KSxyPXQoMjYxNSksbz10KDg4NDQpLHM9dCgzOTMxKSxhPXQoNzY5NyksQj10KDE0NiksYz10KDM2ODkpLGc9dCg2ODEyKSxFPXQoMzYyMiksUT10KDUwMjcpLHU9dCg1MjkwKSxsPXQoODM2MCksaD10KDQzMjcpLHc9dCg1Njg0KSxDPXQoNTM5MSksST10KDMwMCksTT10KDI3NDEpLGQ9dCg2MDYyKSxwPXQoNzUxOCksbT10KDI0NzQpLEY9dCgyNTYwKSxEPXQoODkyMCksWT10KDk1NTYpLGY9dCgxODgwKSxOPXQoMjE0OCksVT10KDM0MzApLHk9dCgyNzEzKSxUPXQoNzI0OCkseD10KDQ2MzApLFI9dCg0MjAxKSxHPXQoNjE0NSksUz10KDU0MDUpLGI9dCgzMDMyKSxIPXQoNTk5Nyksdj10KDYxOCksaz10KDI5NjApLmZvckVhY2gsaj15KCJoaWRkZW4iKSxKPSJTeW1ib2wiLHo9InByb3RvdHlwZSIsTD12LnNldCxQPXYuZ2V0dGVyRm9yKEopLE89T2JqZWN0W3pdLFY9aS5TeW1ib2wsVz1WJiZWW3pdLEs9aS5SYW5nZUVycm9yLFg9aS5UeXBlRXJyb3IsWj1pLlFPYmplY3QsXz1tLmYscT1GLmYsJD1kLmYsQUE9WS5mLGVBPW8oW10ucHVzaCksdEE9VSgic3ltYm9scyIpLG5BPVUoIm9wLXN5bWJvbHMiKSxpQT1VKCJ3a3MiKSxyQT0hWnx8IVpbel18fCFaW3pdLmZpbmRDaGlsZCxvQT1mdW5jdGlvbihBLGUsdCl7dmFyIG49XyhPLGUpO24mJmRlbGV0ZSBPW2VdLHEoQSxlLHQpLG4mJkEhPT1PJiZxKE8sZSxuKX0sc0E9YSYmYygoZnVuY3Rpb24oKXtyZXR1cm4gNyE9PUMocSh7fSwiYSIse2dldDpmdW5jdGlvbigpe3JldHVybiBxKHRoaXMsImEiLHt2YWx1ZTo3fSkuYX19KSkuYX0pKT9vQTpxLGFBPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dEFbQV09QyhXKTtyZXR1cm4gTCh0LHt0eXBlOkosdGFnOkEsZGVzY3JpcHRpb246ZX0pLGF8fCh0LmRlc2NyaXB0aW9uPWUpLHR9LEJBPWZ1bmN0aW9uKEEsZSx0KXtBPT09TyYmQkEobkEsZSx0KSxRKEEpO3ZhciBuPWwoZSk7cmV0dXJuIFEodCksZyh0QSxuKT8odC5lbnVtZXJhYmxlPyhnKEEsaikmJkFbal1bbl0mJihBW2pdW25dPSExKSx0PUModCx7ZW51bWVyYWJsZTp3KDAsITEpfSkpOihnKEEsail8fHEoQSxqLHcoMSx7fSkpLEFbal1bbl09ITApLHNBKEEsbix0KSk6cShBLG4sdCl9LGNBPWZ1bmN0aW9uKEEsZSl7UShBKTt2YXIgdD11KGUpLG49SSh0KS5jb25jYXQodUEodCkpO3JldHVybiBrKG4sKGZ1bmN0aW9uKGUpe2EmJiFyKGdBLHQsZSl8fEJBKEEsZSx0W2VdKX0pKSxBfSxnQT1mdW5jdGlvbihBKXt2YXIgZT1sKEEpLHQ9cihBQSx0aGlzLGUpO3JldHVybiEodGhpcz09PU8mJmcodEEsZSkmJiFnKG5BLGUpKSYmKCEodHx8IWcodGhpcyxlKXx8IWcodEEsZSl8fGcodGhpcyxqKSYmdGhpc1tqXVtlXSl8fHQpfSxFQT1mdW5jdGlvbihBLGUpe3ZhciB0PXUoQSksbj1sKGUpO2lmKHQhPT1PfHwhZyh0QSxuKXx8ZyhuQSxuKSl7dmFyIGk9Xyh0LG4pO3JldHVybiFpfHwhZyh0QSxuKXx8Zyh0LGopJiZ0W2pdW25dfHwoaS5lbnVtZXJhYmxlPSEwKSxpfX0sUUE9ZnVuY3Rpb24oQSl7dmFyIGU9JCh1KEEpKSx0PVtdO3JldHVybiBrKGUsKGZ1bmN0aW9uKEEpe2codEEsQSl8fGcoVCxBKXx8ZUEodCxBKX0pKSx0fSx1QT1mdW5jdGlvbihBKXt2YXIgZT1BPT09Tyx0PSQoZT9uQTp1KEEpKSxuPVtdO3JldHVybiBrKHQsKGZ1bmN0aW9uKEEpeyFnKHRBLEEpfHxlJiYhZyhPLEEpfHxlQShuLHRBW0FdKX0pKSxufTtCfHwoZihXPShWPWZ1bmN0aW9uKCl7aWYoRShXLHRoaXMpKXRocm93IG5ldyBYKCJTeW1ib2wgaXMgbm90IGEgY29uc3RydWN0b3IiKTt2YXIgQT1hcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/aChhcmd1bWVudHNbMF0pOnZvaWQgMCxlPXgoQSksdD1mdW5jdGlvbihBKXt2YXIgbj12b2lkIDA9PT10aGlzP2k6dGhpcztuPT09TyYmcih0LG5BLEEpLGcobixqKSYmZyhuW2pdLGUpJiYobltqXVtlXT0hMSk7dmFyIG89dygxLEEpO3RyeXtzQShuLGUsbyl9Y2F0Y2goQSl7aWYoIShBIGluc3RhbmNlb2YgSykpdGhyb3cgQTtvQShuLGUsbyl9fTtyZXR1cm4gYSYmckEmJnNBKE8sZSx7Y29uZmlndXJhYmxlOiEwLHNldDp0fSksYUEoZSxBKX0pW3pdLCJ0b1N0cmluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIFAodGhpcykudGFnfSkpLGYoViwid2l0aG91dFNldHRlciIsKGZ1bmN0aW9uKEEpe3JldHVybiBhQSh4KEEpLEEpfSkpLFkuZj1nQSxGLmY9QkEsRC5mPWNBLG0uZj1FQSxNLmY9ZC5mPVFBLHAuZj11QSxHLmY9ZnVuY3Rpb24oQSl7cmV0dXJuIGFBKFIoQSksQSl9LGEmJihOKFcsImRlc2NyaXB0aW9uIix7Y29uZmlndXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBQKHRoaXMpLmRlc2NyaXB0aW9ufX0pLHN8fGYoTywicHJvcGVydHlJc0VudW1lcmFibGUiLGdBLHt1bnNhZmU6ITB9KSkpLG4oe2dsb2JhbDohMCxjb25zdHJ1Y3RvcjohMCx3cmFwOiEwLGZvcmNlZDohQixzaGFtOiFCfSx7U3ltYm9sOlZ9KSxrKEkoaUEpLChmdW5jdGlvbihBKXtTKEEpfSkpLG4oe3RhcmdldDpKLHN0YXQ6ITAsZm9yY2VkOiFCfSx7dXNlU2V0dGVyOmZ1bmN0aW9uKCl7ckE9ITB9LHVzZVNpbXBsZTpmdW5jdGlvbigpe3JBPSExfX0pLG4oe3RhcmdldDoiT2JqZWN0IixzdGF0OiEwLGZvcmNlZDohQixzaGFtOiFhfSx7Y3JlYXRlOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHZvaWQgMD09PWU/QyhBKTpjQShDKEEpLGUpfSxkZWZpbmVQcm9wZXJ0eTpCQSxkZWZpbmVQcm9wZXJ0aWVzOmNBLGdldE93blByb3BlcnR5RGVzY3JpcHRvcjpFQX0pLG4oe3RhcmdldDoiT2JqZWN0IixzdGF0OiEwLGZvcmNlZDohQn0se2dldE93blByb3BlcnR5TmFtZXM6UUF9KSxiKCksSChWLEopLFRbal09ITB9LDY1NDQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg3Njk3KSxyPXQoOTAzNyksbz10KDg4NDQpLHM9dCg2ODEyKSxhPXQoOTk4NSksQj10KDM2MjIpLGM9dCg0MzI3KSxnPXQoMjE0OCksRT10KDg3NTgpLFE9ci5TeW1ib2wsdT1RJiZRLnByb3RvdHlwZTtpZihpJiZhKFEpJiYoISgiZGVzY3JpcHRpb24iaW4gdSl8fHZvaWQgMCE9PVEoKS5kZXNjcmlwdGlvbikpe3ZhciBsPXt9LGg9ZnVuY3Rpb24oKXt2YXIgQT1hcmd1bWVudHMubGVuZ3RoPDF8fHZvaWQgMD09PWFyZ3VtZW50c1swXT92b2lkIDA6Yyhhcmd1bWVudHNbMF0pLGU9Qih1LHRoaXMpP25ldyBRKEEpOnZvaWQgMD09PUE/USgpOlEoQSk7cmV0dXJuIiI9PT1BJiYobFtlXT0hMCksZX07RShoLFEpLGgucHJvdG90eXBlPXUsdS5jb25zdHJ1Y3Rvcj1oO3ZhciB3PSJTeW1ib2woZGVzY3JpcHRpb24gZGV0ZWN0aW9uKSI9PT1TdHJpbmcoUSgiZGVzY3JpcHRpb24gZGV0ZWN0aW9uIikpLEM9byh1LnZhbHVlT2YpLEk9byh1LnRvU3RyaW5nKSxNPS9eU3ltYm9sXCgoLiopXClbXildKyQvLGQ9bygiIi5yZXBsYWNlKSxwPW8oIiIuc2xpY2UpO2codSwiZGVzY3JpcHRpb24iLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7dmFyIEE9Qyh0aGlzKTtpZihzKGwsQSkpcmV0dXJuIiI7dmFyIGU9SShBKSx0PXc/cChlLDcsLTEpOmQoZSxNLCIkMSIpO3JldHVybiIiPT09dD92b2lkIDA6dH19KSxuKHtnbG9iYWw6ITAsY29uc3RydWN0b3I6ITAsZm9yY2VkOiEwfSx7U3ltYm9sOmh9KX19LDgwNzQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDk5ODkpLGk9dCg2MDU4KSxyPXQoNjgxMiksbz10KDQzMjcpLHM9dCgzNDMwKSxhPXQoNjU0OSksQj1zKCJzdHJpbmctdG8tc3ltYm9sLXJlZ2lzdHJ5IiksYz1zKCJzeW1ib2wtdG8tc3RyaW5nLXJlZ2lzdHJ5Iik7bih7dGFyZ2V0OiJTeW1ib2wiLHN0YXQ6ITAsZm9yY2VkOiFhfSx7Zm9yOmZ1bmN0aW9uKEEpe3ZhciBlPW8oQSk7aWYocihCLGUpKXJldHVybiBCW2VdO3ZhciB0PWkoIlN5bWJvbCIpKGUpO3JldHVybiBCW2VdPXQsY1t0XT1lLHR9fSl9LDQyNTQ6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt0KDU0MDUpKCJpdGVyYXRvciIpfSw5NzQ5OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dCg3ODU1KSx0KDgwNzQpLHQoMTQ0NSksdCg4MzI0KSx0KDk0MzQpfSwxNDQ1OihBLGUsdCk9PnsidXNlIHN0cmljdCI7dmFyIG49dCg5OTg5KSxpPXQoNjgxMikscj10KDczNCksbz10KDM2OTEpLHM9dCgzNDMwKSxhPXQoNjU0OSksQj1zKCJzeW1ib2wtdG8tc3RyaW5nLXJlZ2lzdHJ5Iik7bih7dGFyZ2V0OiJTeW1ib2wiLHN0YXQ6ITAsZm9yY2VkOiFhfSx7a2V5Rm9yOmZ1bmN0aW9uKEEpe2lmKCFyKEEpKXRocm93IG5ldyBUeXBlRXJyb3IobyhBKSsiIGlzIG5vdCBhIHN5bWJvbCIpO2lmKGkoQixBKSlyZXR1cm4gQltBXX19KX0sNzUyMjooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTAzNyksaT10KDYzMzgpLHI9dCgzMjY1KSxvPXQoNzYxMikscz10KDU3NzMpLGE9ZnVuY3Rpb24oQSl7aWYoQSYmQS5mb3JFYWNoIT09byl0cnl7cyhBLCJmb3JFYWNoIixvKX1jYXRjaChlKXtBLmZvckVhY2g9b319O2Zvcih2YXIgQiBpbiBpKWlbQl0mJmEobltCXSYmbltCXS5wcm90b3R5cGUpO2Eocil9LDYyNjU6KEEsZSx0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KDkwMzcpLGk9dCg2MzM4KSxyPXQoMzI2NSksbz10KDc1Mikscz10KDU3NzMpLGE9dCg0MjAxKSxCPWEoIml0ZXJhdG9yIiksYz1hKCJ0b1N0cmluZ1RhZyIpLGc9by52YWx1ZXMsRT1mdW5jdGlvbihBLGUpe2lmKEEpe2lmKEFbQl0hPT1nKXRyeXtzKEEsQixnKX1jYXRjaChlKXtBW0JdPWd9aWYoQVtjXXx8cyhBLGMsZSksaVtlXSlmb3IodmFyIHQgaW4gbylpZihBW3RdIT09b1t0XSl0cnl7cyhBLHQsb1t0XSl9Y2F0Y2goZSl7QVt0XT1vW3RdfX19O2Zvcih2YXIgUSBpbiBpKUUobltRXSYmbltRXS5wcm90b3R5cGUsUSk7RShyLCJET01Ub2tlbkxpc3QiKX0sOTk3OTooQSxlLHQpPT57InVzZSBzdHJpY3QiO3ZhciBuPXQoOTk4OSksaT10KDI2MTUpO24oe3RhcmdldDoiVVJMIixwcm90bzohMCxlbnVtZXJhYmxlOiEwfSx7dG9KU09OOmZ1bmN0aW9uKCl7cmV0dXJuIGkoVVJMLnByb3RvdHlwZS50b1N0cmluZyx0aGlzKX19KX0sNDgxNDpmdW5jdGlvbihBKXtBLmV4cG9ydHM9ZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gQSgpe3JldHVybiEwfWZ1bmN0aW9uIGUoKXtyZXR1cm4hMX1mdW5jdGlvbiB0KCl7fWNvbnN0IG49IkFyZ3VtZW50IGlzIG5vdCBhIHR5cGVkLWZ1bmN0aW9uLiI7cmV0dXJuIGZ1bmN0aW9uIGkoKXtmdW5jdGlvbiByKEEpe3JldHVybiJvYmplY3QiPT10eXBlb2YgQSYmbnVsbCE9PUEmJkEuY29uc3RydWN0b3I9PT1PYmplY3R9Y29uc3Qgbz1be25hbWU6Im51bWJlciIsdGVzdDpmdW5jdGlvbihBKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIEF9fSx7bmFtZToic3RyaW5nIix0ZXN0OmZ1bmN0aW9uKEEpe3JldHVybiJzdHJpbmciPT10eXBlb2YgQX19LHtuYW1lOiJib29sZWFuIix0ZXN0OmZ1bmN0aW9uKEEpe3JldHVybiJib29sZWFuIj09dHlwZW9mIEF9fSx7bmFtZToiRnVuY3Rpb24iLHRlc3Q6ZnVuY3Rpb24oQSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIEF9fSx7bmFtZToiQXJyYXkiLHRlc3Q6QXJyYXkuaXNBcnJheX0se25hbWU6IkRhdGUiLHRlc3Q6ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBEYXRlfX0se25hbWU6IlJlZ0V4cCIsdGVzdDpmdW5jdGlvbihBKXtyZXR1cm4gQSBpbnN0YW5jZW9mIFJlZ0V4cH19LHtuYW1lOiJPYmplY3QiLHRlc3Q6cn0se25hbWU6Im51bGwiLHRlc3Q6ZnVuY3Rpb24oQSl7cmV0dXJuIG51bGw9PT1BfX0se25hbWU6InVuZGVmaW5lZCIsdGVzdDpmdW5jdGlvbihBKXtyZXR1cm4gdm9pZCAwPT09QX19XSxzPXtuYW1lOiJhbnkiLHRlc3Q6QSxpc0FueTohMH07bGV0IGEsQixjPTAsZz17Y3JlYXRlQ291bnQ6MH07ZnVuY3Rpb24gRShBKXtjb25zdCBlPWEuZ2V0KEEpO2lmKGUpcmV0dXJuIGU7bGV0IHQ9J1Vua25vd24gdHlwZSAiJytBKyciJztjb25zdCBuPUEudG9Mb3dlckNhc2UoKTtsZXQgaTtmb3IoaSBvZiBCKWlmKGkudG9Mb3dlckNhc2UoKT09PW4pe3QrPScuIERpZCB5b3UgbWVhbiAiJytpKyciID8nO2JyZWFrfXRocm93IG5ldyBUeXBlRXJyb3IodCl9ZnVuY3Rpb24gUShBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06ImFueSI7Y29uc3QgdD1lP0UoZSkuaW5kZXg6Qi5sZW5ndGgsbj1bXTtmb3IobGV0IGU9MDtlPEEubGVuZ3RoOysrZSl7aWYoIUFbZV18fCJzdHJpbmciIT10eXBlb2YgQVtlXS5uYW1lfHwiZnVuY3Rpb24iIT10eXBlb2YgQVtlXS50ZXN0KXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCB3aXRoIHByb3BlcnRpZXMge25hbWU6IHN0cmluZywgdGVzdDogZnVuY3Rpb259IGV4cGVjdGVkIik7Y29uc3QgaT1BW2VdLm5hbWU7aWYoYS5oYXMoaSkpdGhyb3cgbmV3IFR5cGVFcnJvcignRHVwbGljYXRlIHR5cGUgbmFtZSAiJytpKyciJyk7bi5wdXNoKGkpLGEuc2V0KGkse25hbWU6aSx0ZXN0OkFbZV0udGVzdCxpc0FueTpBW2VdLmlzQW55LGluZGV4OnQrZSxjb252ZXJzaW9uc1RvOltdfSl9Y29uc3QgaT1CLnNsaWNlKHQpO0I9Qi5zbGljZSgwLHQpLmNvbmNhdChuKS5jb25jYXQoaSk7Zm9yKGxldCBBPXQrbi5sZW5ndGg7QTxCLmxlbmd0aDsrK0EpYS5nZXQoQltBXSkuaW5kZXg9QX1mdW5jdGlvbiB1KCl7YT1uZXcgTWFwLEI9W10sYz0wLFEoW3NdLCExKX1mdW5jdGlvbiBsKEEpe2NvbnN0IGU9Qi5maWx0ZXIoZT0+e2NvbnN0IHQ9YS5nZXQoZSk7cmV0dXJuIXQuaXNBbnkmJnQudGVzdChBKX0pO3JldHVybiBlLmxlbmd0aD9lOlsiYW55Il19ZnVuY3Rpb24gaChBKXtyZXR1cm4gQSYmImZ1bmN0aW9uIj09dHlwZW9mIEEmJiJfdHlwZWRGdW5jdGlvbkRhdGEiaW4gQX1mdW5jdGlvbiB3KEEsZSx0KXtpZighaChBKSl0aHJvdyBuZXcgVHlwZUVycm9yKG4pO2NvbnN0IGk9dCYmdC5leGFjdCxyPXAoQXJyYXkuaXNBcnJheShlKT9lLmpvaW4oIiwiKTplKSxvPUMocik7aWYoIWl8fG8gaW4gQS5zaWduYXR1cmVzKXtjb25zdCBlPUEuX3R5cGVkRnVuY3Rpb25EYXRhLnNpZ25hdHVyZU1hcC5nZXQobyk7aWYoZSlyZXR1cm4gZX1jb25zdCBzPXIubGVuZ3RoO2xldCBhLEI7aWYoaSl7bGV0IGU7Zm9yKGUgaW4gYT1bXSxBLnNpZ25hdHVyZXMpYS5wdXNoKEEuX3R5cGVkRnVuY3Rpb25EYXRhLnNpZ25hdHVyZU1hcC5nZXQoZSkpfWVsc2UgYT1BLl90eXBlZEZ1bmN0aW9uRGF0YS5zaWduYXR1cmVzO2ZvcihsZXQgQT0wO0E8czsrK0Epe2NvbnN0IGU9cltBXSx0PVtdO2xldCBuO2ZvcihuIG9mIGEpe2NvbnN0IGk9WShuLnBhcmFtcyxBKTtpZihpJiYoIWUucmVzdFBhcmFtfHxpLnJlc3RQYXJhbSkpe2lmKCFpLmhhc0FueSl7Y29uc3QgQT1kKGkpO2lmKGUudHlwZXMuc29tZShlPT4hQS5oYXMoZS5uYW1lKSkpY29udGludWV9dC5wdXNoKG4pfX1pZihhPXQsMD09PWEubGVuZ3RoKWJyZWFrfWZvcihCIG9mIGEpaWYoQi5wYXJhbXMubGVuZ3RoPD1zKXJldHVybiBCO3Rocm93IG5ldyBUeXBlRXJyb3IoIlNpZ25hdHVyZSBub3QgZm91bmQgKHNpZ25hdHVyZTogIisoQS5uYW1lfHwidW5uYW1lZCIpKyIoIitDKHIsIiwgIikrIikpIil9ZnVuY3Rpb24gQyhBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06IiwiO3JldHVybiBBLm1hcChBPT5BLm5hbWUpLmpvaW4oZSl9ZnVuY3Rpb24gSShBKXtjb25zdCBlPTA9PT1BLmluZGV4T2YoIi4uLiIpLHQ9KGU/QS5sZW5ndGg+Mz9BLnNsaWNlKDMpOiJhbnkiOkEpLnNwbGl0KCJ8IikubWFwKEE9PkUoQS50cmltKCkpKTtsZXQgbj0hMSxpPWU/Ii4uLiI6IiI7cmV0dXJue3R5cGVzOnQubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gbj1BLmlzQW55fHxuLGkrPUEubmFtZSsifCIse25hbWU6QS5uYW1lLHR5cGVJbmRleDpBLmluZGV4LHRlc3Q6QS50ZXN0LGlzQW55OkEuaXNBbnksY29udmVyc2lvbjpudWxsLGNvbnZlcnNpb25JbmRleDotMX19KSksbmFtZTppLnNsaWNlKDAsLTEpLGhhc0FueTpuLGhhc0NvbnZlcnNpb246ITEscmVzdFBhcmFtOmV9fWZ1bmN0aW9uIE0oQSl7Y29uc3QgZT1mdW5jdGlvbihBKXtpZigwPT09QS5sZW5ndGgpcmV0dXJuW107Y29uc3QgZT1BLm1hcChFKTtBLmxlbmd0aD4xJiZlLnNvcnQoKEEsZSk9PkEuaW5kZXgtZS5pbmRleCk7bGV0IHQ9ZVswXS5jb252ZXJzaW9uc1RvO2lmKDE9PT1BLmxlbmd0aClyZXR1cm4gdDt0PXQuY29uY2F0KFtdKTtjb25zdCBuPW5ldyBTZXQoQSk7Zm9yKGxldCBBPTE7QTxlLmxlbmd0aDsrK0Epe2xldCBpO2ZvcihpIG9mIGVbQV0uY29udmVyc2lvbnNUbyluLmhhcyhpLmZyb20pfHwodC5wdXNoKGkpLG4uYWRkKGkuZnJvbSkpfXJldHVybiB0fShBLnR5cGVzLm1hcChBPT5BLm5hbWUpKTtsZXQgdD1BLmhhc0FueSxuPUEubmFtZTtjb25zdCBpPWUubWFwKChmdW5jdGlvbihBKXtjb25zdCBlPUUoQS5mcm9tKTtyZXR1cm4gdD1lLmlzQW55fHx0LG4rPSJ8IitBLmZyb20se25hbWU6QS5mcm9tLHR5cGVJbmRleDplLmluZGV4LHRlc3Q6ZS50ZXN0LGlzQW55OmUuaXNBbnksY29udmVyc2lvbjpBLGNvbnZlcnNpb25JbmRleDpBLmluZGV4fX0pKTtyZXR1cm57dHlwZXM6QS50eXBlcy5jb25jYXQoaSksbmFtZTpuLGhhc0FueTp0LGhhc0NvbnZlcnNpb246aS5sZW5ndGg+MCxyZXN0UGFyYW06QS5yZXN0UGFyYW19fWZ1bmN0aW9uIGQoQSl7cmV0dXJuIEEudHlwZVNldHx8KEEudHlwZVNldD1uZXcgU2V0LEEudHlwZXMuZm9yRWFjaChlPT5BLnR5cGVTZXQuYWRkKGUubmFtZSkpKSxBLnR5cGVTZXR9ZnVuY3Rpb24gcChBKXtjb25zdCBlPVtdO2lmKCJzdHJpbmciIT10eXBlb2YgQSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTaWduYXR1cmVzIG11c3QgYmUgc3RyaW5ncyIpO2NvbnN0IHQ9QS50cmltKCk7aWYoIiI9PT10KXJldHVybiBlO2NvbnN0IG49dC5zcGxpdCgiLCIpO2ZvcihsZXQgQT0wO0E8bi5sZW5ndGg7KytBKXtjb25zdCB0PUkobltBXS50cmltKCkpO2lmKHQucmVzdFBhcmFtJiZBIT09bi5sZW5ndGgtMSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoJ1VuZXhwZWN0ZWQgcmVzdCBwYXJhbWV0ZXIgIicrbltBXSsnIjogb25seSBhbGxvd2VkIGZvciB0aGUgbGFzdCBwYXJhbWV0ZXInKTtpZigwPT09dC50eXBlcy5sZW5ndGgpcmV0dXJuIG51bGw7ZS5wdXNoKHQpfXJldHVybiBlfWZ1bmN0aW9uIG0oQSl7Y29uc3QgZT1QKEEpO3JldHVybiEhZSYmZS5yZXN0UGFyYW19ZnVuY3Rpb24gRihlKXtpZihlJiYwIT09ZS50eXBlcy5sZW5ndGgpe2lmKDE9PT1lLnR5cGVzLmxlbmd0aClyZXR1cm4gRShlLnR5cGVzWzBdLm5hbWUpLnRlc3Q7aWYoMj09PWUudHlwZXMubGVuZ3RoKXtjb25zdCBBPUUoZS50eXBlc1swXS5uYW1lKS50ZXN0LHQ9RShlLnR5cGVzWzFdLm5hbWUpLnRlc3Q7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBBKGUpfHx0KGUpfX17Y29uc3QgQT1lLnR5cGVzLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEUoQS5uYW1lKS50ZXN0fSkpO3JldHVybiBmdW5jdGlvbihlKXtmb3IobGV0IHQ9MDt0PEEubGVuZ3RoO3QrKylpZihBW3RdKGUpKXJldHVybiEwO3JldHVybiExfX19cmV0dXJuIEF9ZnVuY3Rpb24gRChBKXtsZXQgZSx0LG47aWYobShBKSl7ZT1MKEEpLm1hcChGKTtjb25zdCB0PWUubGVuZ3RoLG49RihQKEEpKSxpPWZ1bmN0aW9uKEEpe2ZvcihsZXQgZT10O2U8QS5sZW5ndGg7ZSsrKWlmKCFuKEFbZV0pKXJldHVybiExO3JldHVybiEwfTtyZXR1cm4gZnVuY3Rpb24oQSl7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspaWYoIWVbdF0oQVt0XSkpcmV0dXJuITE7cmV0dXJuIGkoQSkmJkEubGVuZ3RoPj10KzF9fXJldHVybiAwPT09QS5sZW5ndGg/ZnVuY3Rpb24oQSl7cmV0dXJuIDA9PT1BLmxlbmd0aH06MT09PUEubGVuZ3RoPyh0PUYoQVswXSksZnVuY3Rpb24oQSl7cmV0dXJuIHQoQVswXSkmJjE9PT1BLmxlbmd0aH0pOjI9PT1BLmxlbmd0aD8odD1GKEFbMF0pLG49RihBWzFdKSxmdW5jdGlvbihBKXtyZXR1cm4gdChBWzBdKSYmbihBWzFdKSYmMj09PUEubGVuZ3RofSk6KGU9QS5tYXAoRiksZnVuY3Rpb24oQSl7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspaWYoIWVbdF0oQVt0XSkpcmV0dXJuITE7cmV0dXJuIEEubGVuZ3RoPT09ZS5sZW5ndGh9KX1mdW5jdGlvbiBZKEEsZSl7cmV0dXJuIGU8QS5sZW5ndGg/QVtlXTptKEEpP1AoQSk6bnVsbH1mdW5jdGlvbiBmKEEsZSl7Y29uc3QgdD1ZKEEsZSk7cmV0dXJuIHQ/ZCh0KTpuZXcgU2V0fWZ1bmN0aW9uIE4oQSl7cmV0dXJuIG51bGw9PT1BLmNvbnZlcnNpb258fHZvaWQgMD09PUEuY29udmVyc2lvbn1mdW5jdGlvbiBVKEEsZSl7Y29uc3QgdD1uZXcgU2V0O3JldHVybiBBLmZvckVhY2goQT0+e2NvbnN0IG49ZihBLnBhcmFtcyxlKTtsZXQgaTtmb3IoaSBvZiBuKXQuYWRkKGkpfSksdC5oYXMoImFueSIpP1siYW55Il06QXJyYXkuZnJvbSh0KX1mdW5jdGlvbiB5KEEsZSx0KXtsZXQgbixpO2NvbnN0IHI9QXx8InVubmFtZWQiO2xldCBvLHM9dDtmb3Iobz0wO288ZS5sZW5ndGg7bysrKXtjb25zdCBBPVtdO2lmKHMuZm9yRWFjaCh0PT57Y29uc3Qgbj1GKFkodC5wYXJhbXMsbykpOyhvPHQucGFyYW1zLmxlbmd0aHx8bSh0LnBhcmFtcykpJiZuKGVbb10pJiZBLnB1c2godCl9KSwwPT09QS5sZW5ndGgpe2lmKGk9VShzLG8pLGkubGVuZ3RoPjApe2NvbnN0IEE9bChlW29dKTtyZXR1cm4gbj1uZXcgVHlwZUVycm9yKCJVbmV4cGVjdGVkIHR5cGUgb2YgYXJndW1lbnQgaW4gZnVuY3Rpb24gIityKyIgKGV4cGVjdGVkOiAiK2kuam9pbigiIG9yICIpKyIsIGFjdHVhbDogIitBLmpvaW4oIiB8ICIpKyIsIGluZGV4OiAiK28rIikiKSxuLmRhdGE9e2NhdGVnb3J5OiJ3cm9uZ1R5cGUiLGZuOnIsaW5kZXg6byxhY3R1YWw6QSxleHBlY3RlZDppfSxufX1lbHNlIHM9QX1jb25zdCBhPXMubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gbShBLnBhcmFtcyk/MS8wOkEucGFyYW1zLmxlbmd0aH0pKTtpZihlLmxlbmd0aDxNYXRoLm1pbi5hcHBseShudWxsLGEpKXJldHVybiBpPVUocyxvKSxuPW5ldyBUeXBlRXJyb3IoIlRvbyBmZXcgYXJndW1lbnRzIGluIGZ1bmN0aW9uICIrcisiIChleHBlY3RlZDogIitpLmpvaW4oIiBvciAiKSsiLCBpbmRleDogIitlLmxlbmd0aCsiKSIpLG4uZGF0YT17Y2F0ZWdvcnk6InRvb0Zld0FyZ3MiLGZuOnIsaW5kZXg6ZS5sZW5ndGgsZXhwZWN0ZWQ6aX0sbjtjb25zdCBCPU1hdGgubWF4LmFwcGx5KG51bGwsYSk7aWYoZS5sZW5ndGg+QilyZXR1cm4gbj1uZXcgVHlwZUVycm9yKCJUb28gbWFueSBhcmd1bWVudHMgaW4gZnVuY3Rpb24gIityKyIgKGV4cGVjdGVkOiAiK0IrIiwgYWN0dWFsOiAiK2UubGVuZ3RoKyIpIiksbi5kYXRhPXtjYXRlZ29yeToidG9vTWFueUFyZ3MiLGZuOnIsaW5kZXg6ZS5sZW5ndGgsZXhwZWN0ZWRMZW5ndGg6Qn0sbjtjb25zdCBjPVtdO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7KytBKWMucHVzaChsKGVbQV0pLmpvaW4oInwiKSk7cmV0dXJuIG49bmV3IFR5cGVFcnJvcignQXJndW1lbnRzIG9mIHR5cGUgIicrYy5qb2luKCIsICIpKyciIGRvIG5vdCBtYXRjaCBhbnkgb2YgdGhlIGRlZmluZWQgc2lnbmF0dXJlcyBvZiBmdW5jdGlvbiAnK3IrIi4iKSxuLmRhdGE9e2NhdGVnb3J5OiJtaXNtYXRjaCIsYWN0dWFsOmN9LG59ZnVuY3Rpb24gVChBKXtsZXQgZT1CLmxlbmd0aCsxO2ZvcihsZXQgdD0wO3Q8QS50eXBlcy5sZW5ndGg7dCsrKU4oQS50eXBlc1t0XSkmJihlPU1hdGgubWluKGUsQS50eXBlc1t0XS50eXBlSW5kZXgpKTtyZXR1cm4gZX1mdW5jdGlvbiB4KEEpe2xldCBlPWMrMTtmb3IobGV0IHQ9MDt0PEEudHlwZXMubGVuZ3RoO3QrKylOKEEudHlwZXNbdF0pfHwoZT1NYXRoLm1pbihlLEEudHlwZXNbdF0uY29udmVyc2lvbkluZGV4KSk7cmV0dXJuIGV9ZnVuY3Rpb24gUihBLGUpe2lmKEEuaGFzQW55KXtpZighZS5oYXNBbnkpcmV0dXJuIDF9ZWxzZSBpZihlLmhhc0FueSlyZXR1cm4tMTtpZihBLnJlc3RQYXJhbSl7aWYoIWUucmVzdFBhcmFtKXJldHVybiAxfWVsc2UgaWYoZS5yZXN0UGFyYW0pcmV0dXJuLTE7aWYoQS5oYXNDb252ZXJzaW9uKXtpZighZS5oYXNDb252ZXJzaW9uKXJldHVybiAxfWVsc2UgaWYoZS5oYXNDb252ZXJzaW9uKXJldHVybi0xO2NvbnN0IHQ9VChBKS1UKGUpO2lmKHQ8MClyZXR1cm4tMTtpZih0PjApcmV0dXJuIDE7Y29uc3Qgbj14KEEpLXgoZSk7cmV0dXJuIG48MD8tMTpuPjA/MTowfWZ1bmN0aW9uIEcoQSxlKXtjb25zdCB0PUEucGFyYW1zLG49ZS5wYXJhbXMsaT1QKHQpLHI9UChuKSxvPW0odCkscz1tKG4pO2lmKG8mJmkuaGFzQW55KXtpZighc3x8IXIuaGFzQW55KXJldHVybiAxfWVsc2UgaWYocyYmci5oYXNBbnkpcmV0dXJuLTE7bGV0IGEsQj0wLGM9MDtmb3IoYSBvZiB0KWEuaGFzQW55JiYrK0IsYS5oYXNDb252ZXJzaW9uJiYrK2M7bGV0IGc9MCxFPTA7Zm9yKGEgb2YgbilhLmhhc0FueSYmKytnLGEuaGFzQ29udmVyc2lvbiYmKytFO2lmKEIhPT1nKXJldHVybiBCLWc7aWYobyYmaS5oYXNDb252ZXJzaW9uKXtpZighc3x8IXIuaGFzQ29udmVyc2lvbilyZXR1cm4gMX1lbHNlIGlmKHMmJnIuaGFzQ29udmVyc2lvbilyZXR1cm4tMTtpZihjIT09RSlyZXR1cm4gYy1FO2lmKG8pe2lmKCFzKXJldHVybiAxfWVsc2UgaWYocylyZXR1cm4tMTtjb25zdCBRPSh0Lmxlbmd0aC1uLmxlbmd0aCkqKG8/LTE6MSk7aWYoMCE9PVEpcmV0dXJuIFE7Y29uc3QgdT1bXTtsZXQgbCxoPTA7Zm9yKGxldCBBPTA7QTx0Lmxlbmd0aDsrK0Epe2NvbnN0IGU9Uih0W0FdLG5bQV0pO3UucHVzaChlKSxoKz1lfWlmKDAhPT1oKXJldHVybiBoO2ZvcihsIG9mIHUpaWYoMCE9PWwpcmV0dXJuIGw7cmV0dXJuIDB9ZnVuY3Rpb24gUyhBLGUpe2xldCB0PWU7aWYoQS5zb21lKEE9PkEuaGFzQ29udmVyc2lvbikpe2NvbnN0IG49bShBKSxpPUEubWFwKGIpO3Q9ZnVuY3Rpb24oKXtjb25zdCBBPVtdLHQ9bj9hcmd1bWVudHMubGVuZ3RoLTE6YXJndW1lbnRzLmxlbmd0aDtmb3IobGV0IGU9MDtlPHQ7ZSsrKUFbZV09aVtlXShhcmd1bWVudHNbZV0pO3JldHVybiBuJiYoQVt0XT1hcmd1bWVudHNbdF0ubWFwKGlbdF0pKSxlLmFwcGx5KHRoaXMsQSl9fWxldCBuPXQ7aWYobShBKSl7Y29uc3QgZT1BLmxlbmd0aC0xO249ZnVuY3Rpb24oKXtyZXR1cm4gdC5hcHBseSh0aGlzLE8oYXJndW1lbnRzLDAsZSkuY29uY2F0KFtPKGFyZ3VtZW50cyxlKV0pKX19cmV0dXJuIG59ZnVuY3Rpb24gYihBKXtsZXQgZSx0LG4saTtjb25zdCByPVtdLG89W107c3dpdGNoKEEudHlwZXMuZm9yRWFjaCgoZnVuY3Rpb24oQSl7QS5jb252ZXJzaW9uJiYoci5wdXNoKEUoQS5jb252ZXJzaW9uLmZyb20pLnRlc3QpLG8ucHVzaChBLmNvbnZlcnNpb24uY29udmVydCkpfSkpLG8ubGVuZ3RoKXtjYXNlIDA6cmV0dXJuIGZ1bmN0aW9uKEEpe3JldHVybiBBfTtjYXNlIDE6cmV0dXJuIGU9clswXSxuPW9bMF0sZnVuY3Rpb24oQSl7cmV0dXJuIGUoQSk/bihBKTpBfTtjYXNlIDI6cmV0dXJuIGU9clswXSx0PXJbMV0sbj1vWzBdLGk9b1sxXSxmdW5jdGlvbihBKXtyZXR1cm4gZShBKT9uKEEpOnQoQSk/aShBKTpBfTtkZWZhdWx0OnJldHVybiBmdW5jdGlvbihBKXtmb3IobGV0IGU9MDtlPG8ubGVuZ3RoO2UrKylpZihyW2VdKEEpKXJldHVybiBvW2VdKEEpO3JldHVybiBBfX19ZnVuY3Rpb24gSChBKXtyZXR1cm4gZnVuY3Rpb24gQShlLHQsbil7aWYodDxlLmxlbmd0aCl7Y29uc3Qgbz1lW3RdO2xldCBzPVtdO2lmKG8ucmVzdFBhcmFtKXtjb25zdCBBPW8udHlwZXMuZmlsdGVyKE4pO0EubGVuZ3RoPG8udHlwZXMubGVuZ3RoJiZzLnB1c2goe3R5cGVzOkEsbmFtZToiLi4uIitBLm1hcChBPT5BLm5hbWUpLmpvaW4oInwiKSxoYXNBbnk6QS5zb21lKEE9PkEuaXNBbnkpLGhhc0NvbnZlcnNpb246ITEscmVzdFBhcmFtOiEwfSkscy5wdXNoKG8pfWVsc2Ugcz1vLnR5cGVzLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJue3R5cGVzOltBXSxuYW1lOkEubmFtZSxoYXNBbnk6QS5pc0FueSxoYXNDb252ZXJzaW9uOkEuY29udmVyc2lvbixyZXN0UGFyYW06ITF9fSkpO3JldHVybiBpPXMscj1mdW5jdGlvbihpKXtyZXR1cm4gQShlLHQrMSxuLmNvbmNhdChbaV0pKX0sQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxpLm1hcChyKSl9dmFyIGkscjtyZXR1cm5bbl19KEEsMCxbXSl9ZnVuY3Rpb24gdihBLGUpe2NvbnN0IHQ9TWF0aC5tYXgoQS5sZW5ndGgsZS5sZW5ndGgpO2ZvcihsZXQgbj0wO248dDtuKyspe2NvbnN0IHQ9ZihBLG4pLGk9ZihlLG4pO2xldCByLG89ITE7Zm9yKHIgb2YgaSlpZih0LmhhcyhyKSl7bz0hMDticmVha31pZighbylyZXR1cm4hMX1jb25zdCBuPUEubGVuZ3RoLGk9ZS5sZW5ndGgscj1tKEEpLG89bShlKTtyZXR1cm4gcj9vP249PT1pOmk+PW46bz9uPj1pOm49PT1pfWZ1bmN0aW9uIGsoQSxlLHQpe2NvbnN0IG49W107bGV0IGk7Zm9yKGkgb2YgQSl7bGV0IEE9dFtpXTtpZigibnVtYmVyIiE9dHlwZW9mIEEpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gZGVmaW5pdGlvbiBmb3IgcmVmZXJlbmNlZCBzaWduYXR1cmUgIicraSsnIicpO2lmKEE9ZVtBXSwiZnVuY3Rpb24iIT10eXBlb2YgQSlyZXR1cm4hMTtuLnB1c2goQSl9cmV0dXJuIG59ZnVuY3Rpb24gaihBLGUsdCl7Y29uc3Qgbj1mdW5jdGlvbihBKXtyZXR1cm4gQS5tYXAoQT0+WChBKT9XKEEucmVmZXJUb1NlbGYuY2FsbGJhY2spOksoQSk/VihBLnJlZmVyVG8ucmVmZXJlbmNlcyxBLnJlZmVyVG8uY2FsbGJhY2spOkEpfShBKSxpPW5ldyBBcnJheShuLmxlbmd0aCkuZmlsbCghMSk7bGV0IHI9ITA7Zm9yKDtyOyl7cj0hMTtsZXQgQT0hMDtmb3IobGV0IG89MDtvPG4ubGVuZ3RoOysrbyl7aWYoaVtvXSljb250aW51ZTtjb25zdCBzPW5bb107aWYoWChzKSluW29dPXMucmVmZXJUb1NlbGYuY2FsbGJhY2sodCksbltvXS5yZWZlclRvU2VsZj1zLnJlZmVyVG9TZWxmLGlbb109ITAsQT0hMTtlbHNlIGlmKEsocykpe2NvbnN0IHQ9ayhzLnJlZmVyVG8ucmVmZXJlbmNlcyxuLGUpO3Q/KG5bb109cy5yZWZlclRvLmNhbGxiYWNrLmFwcGx5KHRoaXMsdCksbltvXS5yZWZlclRvPXMucmVmZXJUbyxpW29dPSEwLEE9ITEpOnI9ITB9fWlmKEEmJnIpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDaXJjdWxhciByZWZlcmVuY2UgZGV0ZWN0ZWQgaW4gcmVzb2x2aW5nIHR5cGVkLnJlZmVyVG8iKX1yZXR1cm4gbn1mdW5jdGlvbiBKKEEsbil7aWYoZy5jcmVhdGVDb3VudCsrLDA9PT1PYmplY3Qua2V5cyhuKS5sZW5ndGgpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJObyBzaWduYXR1cmVzIHByb3ZpZGVkIik7Zy53YXJuQWdhaW5zdERlcHJlY2F0ZWRUaGlzJiZmdW5jdGlvbihBKXtjb25zdCBlPS9cYnRoaXMoXCh8XC5zaWduYXR1cmVzXGIpLztPYmplY3Qua2V5cyhBKS5mb3JFYWNoKHQ9Pntjb25zdCBuPUFbdF07aWYoZS50ZXN0KG4udG9TdHJpbmcoKSkpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJVc2luZyBgdGhpc2AgdG8gc2VsZi1yZWZlcmVuY2UgYSBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIHNpbmNlIHR5cGVkLWZ1bmN0aW9uQDMuIFVzZSB0eXBlZC5yZWZlclRvIGFuZCB0eXBlZC5yZWZlclRvU2VsZiBpbnN0ZWFkLiIpfSl9KG4pO2NvbnN0IGk9W10scj1bXSxvPXt9LHM9W107bGV0IGE7Zm9yKGEgaW4gbil7aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLGEpKWNvbnRpbnVlO2NvbnN0IEE9cChhKTtpZighQSljb250aW51ZTtpLmZvckVhY2goKGZ1bmN0aW9uKGUpe2lmKHYoZSxBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdDb25mbGljdGluZyBzaWduYXR1cmVzICInK0MoZSkrJyIgYW5kICInK0MoQSkrJyIuJyl9KSksaS5wdXNoKEEpO2NvbnN0IGU9ci5sZW5ndGg7ci5wdXNoKG5bYV0pO2NvbnN0IHQ9QS5tYXAoTSk7bGV0IEI7Zm9yKEIgb2YgSCh0KSl7Y29uc3QgQT1DKEIpO3MucHVzaCh7cGFyYW1zOkIsbmFtZTpBLGZuOmV9KSxCLmV2ZXJ5KEE9PiFBLmhhc0NvbnZlcnNpb24pJiYob1tBXT1lKX19cy5zb3J0KEcpO2NvbnN0IEI9aihyLG8sc0EpO2xldCBjO2ZvcihjIGluIG8pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8sYykmJihvW2NdPUJbb1tjXV0pO2NvbnN0IEU9W10sUT1uZXcgTWFwO2ZvcihjIG9mIHMpUS5oYXMoYy5uYW1lKXx8KGMuZm49QltjLmZuXSxFLnB1c2goYyksUS5zZXQoYy5uYW1lLGMpKTtjb25zdCB1PUVbMF0mJkVbMF0ucGFyYW1zLmxlbmd0aDw9MiYmIW0oRVswXS5wYXJhbXMpLGw9RVsxXSYmRVsxXS5wYXJhbXMubGVuZ3RoPD0yJiYhbShFWzFdLnBhcmFtcyksaD1FWzJdJiZFWzJdLnBhcmFtcy5sZW5ndGg8PTImJiFtKEVbMl0ucGFyYW1zKSx3PUVbM10mJkVbM10ucGFyYW1zLmxlbmd0aDw9MiYmIW0oRVszXS5wYXJhbXMpLEk9RVs0XSYmRVs0XS5wYXJhbXMubGVuZ3RoPD0yJiYhbShFWzRdLnBhcmFtcyksZD1FWzVdJiZFWzVdLnBhcmFtcy5sZW5ndGg8PTImJiFtKEVbNV0ucGFyYW1zKSxZPXUmJmwmJmgmJncmJkkmJmQ7Zm9yKGxldCBBPTA7QTxFLmxlbmd0aDsrK0EpRVtBXS50ZXN0PUQoRVtBXS5wYXJhbXMpO2NvbnN0IGY9dT9GKEVbMF0ucGFyYW1zWzBdKTplLE49bD9GKEVbMV0ucGFyYW1zWzBdKTplLFU9aD9GKEVbMl0ucGFyYW1zWzBdKTplLHk9dz9GKEVbM10ucGFyYW1zWzBdKTplLFQ9ST9GKEVbNF0ucGFyYW1zWzBdKTplLHg9ZD9GKEVbNV0ucGFyYW1zWzBdKTplLFI9dT9GKEVbMF0ucGFyYW1zWzFdKTplLGI9bD9GKEVbMV0ucGFyYW1zWzFdKTplLGs9aD9GKEVbMl0ucGFyYW1zWzFdKTplLEo9dz9GKEVbM10ucGFyYW1zWzFdKTplLHo9ST9GKEVbNF0ucGFyYW1zWzFdKTplLEw9ZD9GKEVbNV0ucGFyYW1zWzFdKTplO2ZvcihsZXQgQT0wO0E8RS5sZW5ndGg7KytBKUVbQV0uaW1wbGVtZW50YXRpb249UyhFW0FdLnBhcmFtcyxFW0FdLmZuKTtjb25zdCBQPXU/RVswXS5pbXBsZW1lbnRhdGlvbjp0LE89bD9FWzFdLmltcGxlbWVudGF0aW9uOnQsVj1oP0VbMl0uaW1wbGVtZW50YXRpb246dCxXPXc/RVszXS5pbXBsZW1lbnRhdGlvbjp0LEs9ST9FWzRdLmltcGxlbWVudGF0aW9uOnQsWD1kP0VbNV0uaW1wbGVtZW50YXRpb246dCxaPXU/RVswXS5wYXJhbXMubGVuZ3RoOi0xLF89bD9FWzFdLnBhcmFtcy5sZW5ndGg6LTEscT1oP0VbMl0ucGFyYW1zLmxlbmd0aDotMSwkPXc/RVszXS5wYXJhbXMubGVuZ3RoOi0xLEFBPUk/RVs0XS5wYXJhbXMubGVuZ3RoOi0xLGVBPWQ/RVs1XS5wYXJhbXMubGVuZ3RoOi0xLHRBPVk/NjowLG5BPUUubGVuZ3RoLGlBPUUubWFwKEE9PkEudGVzdCksckE9RS5tYXAoQT0+QS5pbXBsZW1lbnRhdGlvbiksb0E9ZnVuY3Rpb24oKXtmb3IobGV0IEE9dEE7QTxuQTtBKyspaWYoaUFbQV0oYXJndW1lbnRzKSlyZXR1cm4gckFbQV0uYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiBnLm9uTWlzbWF0Y2goQSxhcmd1bWVudHMsRSl9O2Z1bmN0aW9uIHNBKEEsZSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg9PT1aJiZmKEEpJiZSKGUpP1AuYXBwbHkodGhpcyxhcmd1bWVudHMpOmFyZ3VtZW50cy5sZW5ndGg9PT1fJiZOKEEpJiZiKGUpP08uYXBwbHkodGhpcyxhcmd1bWVudHMpOmFyZ3VtZW50cy5sZW5ndGg9PT1xJiZVKEEpJiZrKGUpP1YuYXBwbHkodGhpcyxhcmd1bWVudHMpOmFyZ3VtZW50cy5sZW5ndGg9PT0kJiZ5KEEpJiZKKGUpP1cuYXBwbHkodGhpcyxhcmd1bWVudHMpOmFyZ3VtZW50cy5sZW5ndGg9PT1BQSYmVChBKSYmeihlKT9LLmFwcGx5KHRoaXMsYXJndW1lbnRzKTphcmd1bWVudHMubGVuZ3RoPT09ZUEmJngoQSkmJkwoZSk/WC5hcHBseSh0aGlzLGFyZ3VtZW50cyk6b0EuYXBwbHkodGhpcyxhcmd1bWVudHMpfXRyeXtPYmplY3QuZGVmaW5lUHJvcGVydHkoc0EsIm5hbWUiLHt2YWx1ZTpBfSl9Y2F0Y2goQSl7fXJldHVybiBzQS5zaWduYXR1cmVzPW8sc0EuX3R5cGVkRnVuY3Rpb25EYXRhPXtzaWduYXR1cmVzOkUsc2lnbmF0dXJlTWFwOlF9LHNBfWZ1bmN0aW9uIHooQSxlLHQpe3Rocm93IHkoQSxlLHQpfWZ1bmN0aW9uIEwoQSl7cmV0dXJuIE8oQSwwLEEubGVuZ3RoLTEpfWZ1bmN0aW9uIFAoQSl7cmV0dXJuIEFbQS5sZW5ndGgtMV19ZnVuY3Rpb24gTyhBLGUsdCl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKEEsZSx0KX1mdW5jdGlvbiBWKEEsZSl7cmV0dXJue3JlZmVyVG86e3JlZmVyZW5jZXM6QSxjYWxsYmFjazplfX19ZnVuY3Rpb24gVyhBKXtpZigiZnVuY3Rpb24iIT10eXBlb2YgQSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYWxsYmFjayBmdW5jdGlvbiBleHBlY3RlZCBhcyBmaXJzdCBhcmd1bWVudCIpO3JldHVybntyZWZlclRvU2VsZjp7Y2FsbGJhY2s6QX19fWZ1bmN0aW9uIEsoQSl7cmV0dXJuIEEmJiJvYmplY3QiPT10eXBlb2YgQS5yZWZlclRvJiZBcnJheS5pc0FycmF5KEEucmVmZXJUby5yZWZlcmVuY2VzKSYmImZ1bmN0aW9uIj09dHlwZW9mIEEucmVmZXJUby5jYWxsYmFja31mdW5jdGlvbiBYKEEpe3JldHVybiBBJiYib2JqZWN0Ij09dHlwZW9mIEEucmVmZXJUb1NlbGYmJiJmdW5jdGlvbiI9PXR5cGVvZiBBLnJlZmVyVG9TZWxmLmNhbGxiYWNrfWZ1bmN0aW9uIFooQSxlKXtpZighQSlyZXR1cm4gZTtpZihlJiZlIT09QSl7Y29uc3QgdD1uZXcgRXJyb3IoIkZ1bmN0aW9uIG5hbWVzIGRvIG5vdCBtYXRjaCAoZXhwZWN0ZWQ6ICIrQSsiLCBhY3R1YWw6ICIrZSsiKSIpO3Rocm93IHQuZGF0YT17YWN0dWFsOmUsZXhwZWN0ZWQ6QX0sdH1yZXR1cm4gQX1mdW5jdGlvbiBfKEEpe2xldCBlO2Zvcihjb25zdCB0IGluIEEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEEsdCkmJihoKEFbdF0pfHwic3RyaW5nIj09dHlwZW9mIEFbdF0uc2lnbmF0dXJlKSYmKGU9WihlLEFbdF0ubmFtZSkpO3JldHVybiBlfWZ1bmN0aW9uIHEoQSxlKXtsZXQgdDtmb3IodCBpbiBlKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpKXtpZih0IGluIEEmJmVbdF0hPT1BW3RdKXtjb25zdCBuPW5ldyBFcnJvcignU2lnbmF0dXJlICInK3QrJyIgaXMgZGVmaW5lZCB0d2ljZScpO3Rocm93IG4uZGF0YT17c2lnbmF0dXJlOnQsc291cmNlRnVuY3Rpb246ZVt0XSxkZXN0RnVuY3Rpb246QVt0XX0sbn1BW3RdPWVbdF19fXUoKSxRKG8pO2NvbnN0ICQ9ZztmdW5jdGlvbiBBQShBKXtpZighQXx8InN0cmluZyIhPXR5cGVvZiBBLmZyb218fCJzdHJpbmciIT10eXBlb2YgQS50b3x8ImZ1bmN0aW9uIiE9dHlwZW9mIEEuY29udmVydCl0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3Qgd2l0aCBwcm9wZXJ0aWVzIHtmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcsIGNvbnZlcnQ6IGZ1bmN0aW9ufSBleHBlY3RlZCIpO2lmKEEudG89PT1BLmZyb20pdGhyb3cgbmV3IFN5bnRheEVycm9yKCdJbGxlZ2FsIHRvIGRlZmluZSBjb252ZXJzaW9uIGZyb20gIicrQS5mcm9tKyciIHRvIGl0c2VsZi4nKX1yZXR1cm4gZz1mdW5jdGlvbihBKXtjb25zdCBlPSJzdHJpbmciPT10eXBlb2YgQTtsZXQgdD1lP0E6IiI7Y29uc3Qgbj17fTtmb3IobGV0IEE9ZT8xOjA7QTxhcmd1bWVudHMubGVuZ3RoOysrQSl7Y29uc3QgaT1hcmd1bWVudHNbQV07bGV0IG8scz17fTtpZigiZnVuY3Rpb24iPT10eXBlb2YgaT8obz1pLm5hbWUsInN0cmluZyI9PXR5cGVvZiBpLnNpZ25hdHVyZT9zW2kuc2lnbmF0dXJlXT1pOmgoaSkmJihzPWkuc2lnbmF0dXJlcykpOnIoaSkmJihzPWksZXx8KG89XyhpKSkpLDA9PT1PYmplY3Qua2V5cyhzKS5sZW5ndGgpe2NvbnN0IGU9bmV3IFR5cGVFcnJvcigiQXJndW1lbnQgdG8gJ3R5cGVkJyBhdCBpbmRleCAiK0ErIiBpcyBub3QgYSAodHlwZWQpIGZ1bmN0aW9uLCBub3IgYW4gb2JqZWN0IHdpdGggc2lnbmF0dXJlcyBhcyBrZXlzIGFuZCBmdW5jdGlvbnMgYXMgdmFsdWVzLiIpO3Rocm93IGUuZGF0YT17aW5kZXg6QSxhcmd1bWVudDppfSxlfWV8fCh0PVoodCxvKSkscShuLHMpfXJldHVybiBKKHR8fCIiLG4pfSxnLmNyZWF0ZT1pLGcuY3JlYXRlQ291bnQ9JC5jcmVhdGVDb3VudCxnLm9uTWlzbWF0Y2g9eixnLnRocm93TWlzbWF0Y2hFcnJvcj16LGcuY3JlYXRlRXJyb3I9eSxnLmNsZWFyPXUsZy5jbGVhckNvbnZlcnNpb25zPWZ1bmN0aW9uKCl7bGV0IEE7Zm9yKEEgb2YgQilhLmdldChBKS5jb252ZXJzaW9uc1RvPVtdO2M9MH0sZy5hZGRUeXBlcz1RLGcuX2ZpbmRUeXBlPUUsZy5yZWZlclRvPWZ1bmN0aW9uKCl7Y29uc3QgQT1MKGFyZ3VtZW50cykubWFwKEE9PkMocChBKSkpLGU9UChhcmd1bWVudHMpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbGxiYWNrIGZ1bmN0aW9uIGV4cGVjdGVkIGFzIGxhc3QgYXJndW1lbnQiKTtyZXR1cm4gVihBLGUpfSxnLnJlZmVyVG9TZWxmPVcsZy5jb252ZXJ0PWZ1bmN0aW9uKEEsZSl7Y29uc3QgdD1FKGUpO2lmKHQudGVzdChBKSlyZXR1cm4gQTtjb25zdCBuPXQuY29udmVyc2lvbnNUbztpZigwPT09bi5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJUaGVyZSBhcmUgbm8gY29udmVyc2lvbnMgdG8gIitlKyIgZGVmaW5lZC4iKTtmb3IobGV0IGU9MDtlPG4ubGVuZ3RoO2UrKylpZihFKG5bZV0uZnJvbSkudGVzdChBKSlyZXR1cm4gbltlXS5jb252ZXJ0KEEpO3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGNvbnZlcnQgIitBKyIgdG8gIitlKX0sZy5maW5kU2lnbmF0dXJlPXcsZy5maW5kPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gdyhBLGUsdCkuaW1wbGVtZW50YXRpb259LGcuaXNUeXBlZEZ1bmN0aW9uPWgsZy53YXJuQWdhaW5zdERlcHJlY2F0ZWRUaGlzPSEwLGcuYWRkVHlwZT1mdW5jdGlvbihBLGUpe2xldCB0PSJhbnkiOyExIT09ZSYmYS5oYXMoIk9iamVjdCIpJiYodD0iT2JqZWN0IiksZy5hZGRUeXBlcyhbQV0sdCl9LGcuYWRkQ29udmVyc2lvbj1mdW5jdGlvbihBKXtBQShBKTtjb25zdCBlPUUoQS50byk7aWYoIWUuY29udmVyc2lvbnNUby5ldmVyeSgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuZnJvbSE9PUEuZnJvbX0pKSl0aHJvdyBuZXcgRXJyb3IoJ1RoZXJlIGlzIGFscmVhZHkgYSBjb252ZXJzaW9uIGZyb20gIicrQS5mcm9tKyciIHRvICInK2UubmFtZSsnIicpO2UuY29udmVyc2lvbnNUby5wdXNoKHtmcm9tOkEuZnJvbSxjb252ZXJ0OkEuY29udmVydCxpbmRleDpjKyt9KX0sZy5hZGRDb252ZXJzaW9ucz1mdW5jdGlvbihBKXtBLmZvckVhY2goZy5hZGRDb252ZXJzaW9uKX0sZy5yZW1vdmVDb252ZXJzaW9uPWZ1bmN0aW9uKEEpe0FBKEEpO2NvbnN0IGU9RShBLnRvKSx0PWZ1bmN0aW9uKEEsZSl7Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0KyspaWYoZShBW3RdKSlyZXR1cm4gQVt0XX0oZS5jb252ZXJzaW9uc1RvLGU9PmUuZnJvbT09PUEuZnJvbSk7aWYoIXQpdGhyb3cgbmV3IEVycm9yKCJBdHRlbXB0IHRvIHJlbW92ZSBub25leGlzdGVudCBjb252ZXJzaW9uIGZyb20gIitBLmZyb20rIiB0byAiK0EudG8pO2lmKHQuY29udmVydCE9PUEuY29udmVydCl0aHJvdyBuZXcgRXJyb3IoIkNvbnZlcnNpb24gdG8gcmVtb3ZlIGRvZXMgbm90IG1hdGNoIGV4aXN0aW5nIGNvbnZlcnNpb24iKTtjb25zdCBuPWUuY29udmVyc2lvbnNUby5pbmRleE9mKHQpO2UuY29udmVyc2lvbnNUby5zcGxpY2UobiwxKX0sZy5yZXNvbHZlPWZ1bmN0aW9uKEEsZSl7aWYoIWgoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcihuKTtjb25zdCB0PUEuX3R5cGVkRnVuY3Rpb25EYXRhLnNpZ25hdHVyZXM7Zm9yKGxldCBBPTA7QTx0Lmxlbmd0aDsrK0EpaWYodFtBXS50ZXN0KGUpKXJldHVybiB0W0FdO3JldHVybiBudWxsfSxnfSgpfSgpfX0sdD17fTtmdW5jdGlvbiBuKGUpe3ZhciBpPXRbZV07aWYodm9pZCAwIT09aSlyZXR1cm4gaS5leHBvcnRzO3ZhciByPXRbZV09e2lkOmUsbG9hZGVkOiExLGV4cG9ydHM6e319O3JldHVybiBBW2VdLmNhbGwoci5leHBvcnRzLHIsci5leHBvcnRzLG4pLHIubG9hZGVkPSEwLHIuZXhwb3J0c31uLmFtZEQ9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoImRlZmluZSBjYW5ub3QgYmUgdXNlZCBpbmRpcmVjdCIpfSxuLmFtZE89e30sbi5kPShBLGUpPT57Zm9yKHZhciB0IGluIGUpbi5vKGUsdCkmJiFuLm8oQSx0KSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsdCx7ZW51bWVyYWJsZTohMCxnZXQ6ZVt0XX0pfSxuLm89KEEsZSk9Pk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLGUpLG4ucj1BPT57InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0sbi5ubWQ9QT0+KEEucGF0aHM9W10sQS5jaGlsZHJlbnx8KEEuY2hpbGRyZW49W10pLEEpO3ZhciBpPXt9O3JldHVybigoKT0+eyJ1c2Ugc3RyaWN0IjtuLmQoaSx7ZGVmYXVsdDooKT0+dGh9KTt2YXIgQT17fTtmdW5jdGlvbiBlKEEpe3JldHVybihlPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKEEpe3JldHVybiB0eXBlb2YgQX06ZnVuY3Rpb24oQSl7cmV0dXJuIEEmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJkEuY29uc3RydWN0b3I9PT1TeW1ib2wmJkEhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBBfSkoQSl9ZnVuY3Rpb24gdChBKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIEF9ZnVuY3Rpb24gcihBKXtyZXR1cm4hKCFBfHwib2JqZWN0IiE9PWUoQSl8fCJmdW5jdGlvbiIhPXR5cGVvZiBBLmNvbnN0cnVjdG9yKSYmKCEwPT09QS5pc0JpZ051bWJlciYmIm9iamVjdCI9PT1lKEEuY29uc3RydWN0b3IucHJvdG90eXBlKSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc0JpZ051bWJlcnx8ImZ1bmN0aW9uIj09dHlwZW9mIEEuY29uc3RydWN0b3IuaXNEZWNpbWFsJiYhMD09PUEuY29uc3RydWN0b3IuaXNEZWNpbWFsKEEpKX1mdW5jdGlvbiBvKEEpe3JldHVybiBBJiYib2JqZWN0Ij09PWUoQSkmJiEwPT09T2JqZWN0LmdldFByb3RvdHlwZU9mKEEpLmlzQ29tcGxleHx8ITF9ZnVuY3Rpb24gcyhBKXtyZXR1cm4gQSYmIm9iamVjdCI9PT1lKEEpJiYhMD09PU9iamVjdC5nZXRQcm90b3R5cGVPZihBKS5pc0ZyYWN0aW9ufHwhMX1mdW5jdGlvbiBhKEEpe3JldHVybiBBJiYhMD09PUEuY29uc3RydWN0b3IucHJvdG90eXBlLmlzVW5pdHx8ITF9ZnVuY3Rpb24gQihBKXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIEF9bi5yKEEpLG4uZChBLHtjcmVhdGVBYnM6KCk9PlppLGNyZWF0ZUFjY2Vzc29yTm9kZTooKT0+V2MsY3JlYXRlQWNvczooKT0+bUIsY3JlYXRlQWNvc2g6KCk9PkpCLGNyZWF0ZUFjb3Q6KCk9PnpCLGNyZWF0ZUFjb3RoOigpPT5MQixjcmVhdGVBY3NjOigpPT5QQixjcmVhdGVBY3NjaDooKT0+T0IsY3JlYXRlQWRkOigpPT54YyxjcmVhdGVBZGRTY2FsYXI6KCk9PkFyLGNyZWF0ZUFuZDooKT0+RmEsY3JlYXRlQXBwbHk6KCk9Pl9pLGNyZWF0ZUFwcGx5VHJhbnNmb3JtOigpPT5EbCxjcmVhdGVBcmc6KCk9PnBvLGNyZWF0ZUFycmF5Tm9kZTooKT0+WGMsY3JlYXRlQXNlYzooKT0+VkIsY3JlYXRlQXNlY2g6KCk9PldCLGNyZWF0ZUFzaW46KCk9PktCLGNyZWF0ZUFzaW5oOigpPT5YQixjcmVhdGVBc3NpZ25tZW50Tm9kZTooKT0+bmcsY3JlYXRlQXRhbjooKT0+WkIsY3JlYXRlQXRhbjI6KCk9Pl9CLGNyZWF0ZUF0YW5oOigpPT5xQixjcmVhdGVBdG9taWNNYXNzOigpPT50bCxjcmVhdGVBdm9nYWRybzooKT0+bmwsY3JlYXRlQmVsbE51bWJlcnM6KCk9PlVRLGNyZWF0ZUJpZ051bWJlckNsYXNzOigpPT5UdCxjcmVhdGVCaWdudW1iZXI6KCk9PmdpLGNyZWF0ZUJpbjooKT0+SnMsY3JlYXRlQml0QW5kOigpPT5obyxjcmVhdGVCaXROb3Q6KCk9PndvLGNyZWF0ZUJpdE9yOigpPT5DbyxjcmVhdGVCaXRYb3I6KCk9Pk1vLGNyZWF0ZUJsb2NrTm9kZTooKT0+cmcsY3JlYXRlQm9ock1hZ25ldG9uOigpPT5idSxjcmVhdGVCb2hyUmFkaXVzOigpPT56dSxjcmVhdGVCb2x0em1hbm46KCk9PmlsLGNyZWF0ZUJvb2xlYW46KCk9PmNpLGNyZWF0ZUNhdGFsYW46KCk9PlRRLGNyZWF0ZUNicnQ6KCk9Pm5yLGNyZWF0ZUNlaWw6KCk9PmNyLGNyZWF0ZUNoYWluOigpPT5oRSxjcmVhdGVDaGFpbkNsYXNzOigpPT5nRSxjcmVhdGVDbGFzc2ljYWxFbGVjdHJvblJhZGl1czooKT0+THUsY3JlYXRlQ2xvbmU6KCk9PnluLGNyZWF0ZUNvbHVtbjooKT0+U28sY3JlYXRlQ29sdW1uVHJhbnNmb3JtOigpPT5ZbCxjcmVhdGVDb21iaW5hdGlvbnM6KCk9PlhFLGNyZWF0ZUNvbWJpbmF0aW9uc1dpdGhSZXA6KCk9PnFFLGNyZWF0ZUNvbXBhcmU6KCk9PllhLGNyZWF0ZUNvbXBhcmVOYXR1cmFsOigpPT55YSxjcmVhdGVDb21wYXJlVGV4dDooKT0+eGEsY3JlYXRlQ29tcGlsZTooKT0+a2csY3JlYXRlQ29tcGxleDooKT0+RWksY3JlYXRlQ29tcGxleENsYXNzOigpPT5SdCxjcmVhdGVDb21wb3NpdGlvbjooKT0+UlEsY3JlYXRlQ29uY2F0OigpPT5HbyxjcmVhdGVDb25jYXRUcmFuc2Zvcm06KCk9PkpsLGNyZWF0ZUNvbmRpdGlvbmFsTm9kZTooKT0+c2csY3JlYXRlQ29uZHVjdGFuY2VRdWFudHVtOigpPT5IdSxjcmVhdGVDb25qOigpPT5tbyxjcmVhdGVDb25zdGFudE5vZGU6KCk9PmhnLGNyZWF0ZUNvcnI6KCk9Pk9FLGNyZWF0ZUNvczooKT0+QWMsY3JlYXRlQ29zaDooKT0+ZWMsY3JlYXRlQ290OigpPT50YyxjcmVhdGVDb3RoOigpPT5uYyxjcmVhdGVDb3Vsb21iOigpPT5HdSxjcmVhdGVDb3VudDooKT0+Ym8sY3JlYXRlQ3JlYXRlVW5pdDooKT0+cEIsY3JlYXRlQ3Jvc3M6KCk9PkhvLGNyZWF0ZUNzYzooKT0+aWMsY3JlYXRlQ3NjaDooKT0+cmMsY3JlYXRlQ3RyYW5zcG9zZTooKT0+RnMsY3JlYXRlQ3ViZTooKT0+Z3IsY3JlYXRlQ3VtU3VtOigpPT5TRSxjcmVhdGVDdW1TdW1UcmFuc2Zvcm06KCk9PlZsLGNyZWF0ZURlZXBFcXVhbDooKT0+X2EsY3JlYXRlRGVuc2VNYXRyaXhDbGFzczooKT0+VW4sY3JlYXRlRGVyaXZhdGl2ZTooKT0+X1EsY3JlYXRlRGV0OigpPT53RSxjcmVhdGVEZXV0ZXJvbk1hc3M6KCk9Plh1LGNyZWF0ZURpYWc6KCk9PnZvLGNyZWF0ZURpZmY6KCk9PkFzLGNyZWF0ZURpZmZUcmFuc2Zvcm06KCk9PnpsLGNyZWF0ZURpc3RhbmNlOigpPT5URSxjcmVhdGVEaXZpZGU6KCk9PlVFLGNyZWF0ZURpdmlkZVNjYWxhcjooKT0+cXMsY3JlYXRlRG90OigpPT5TYyxjcmVhdGVEb3REaXZpZGU6KCk9PmFhLGNyZWF0ZURvdE11bHRpcGx5OigpPT4kcixjcmVhdGVEb3RQb3c6KCk9Pm9hLGNyZWF0ZUU6KCk9PnV1LGNyZWF0ZUVmaW1vdkZhY3RvcjooKT0+ZWwsY3JlYXRlRWlnczooKT0+cEUsY3JlYXRlRWxlY3RyaWNDb25zdGFudDooKT0+eHUsY3JlYXRlRWxlY3Ryb25NYXNzOigpPT5QdSxjcmVhdGVFbGVtZW50YXJ5Q2hhcmdlOigpPT5TdSxjcmVhdGVFcXVhbDooKT0+R2EsY3JlYXRlRXF1YWxTY2FsYXI6KCk9PnJpLGNyZWF0ZUVxdWFsVGV4dDooKT0+SGEsY3JlYXRlRXJmOigpPT55cyxjcmVhdGVFdmFsdWF0ZTooKT0+SmcsY3JlYXRlRXhwOigpPT5FcixjcmVhdGVFeHBtOigpPT5tRSxjcmVhdGVFeHBtMTooKT0+UXIsY3JlYXRlRmFjdG9yaWFsOigpPT5CUSxjcmVhdGVGYWxzZTooKT0+YXUsY3JlYXRlRmFyYWRheTooKT0+cmwsY3JlYXRlRmVybWlDb3VwbGluZzooKT0+T3UsY3JlYXRlRmZ0OigpPT5ZcyxjcmVhdGVGaWJvbmFjY2lIZWFwQ2xhc3M6KCk9PkJCLGNyZWF0ZUZpbHRlcjooKT0+am8sY3JlYXRlRmlsdGVyVHJhbnNmb3JtOigpPT5ObCxjcmVhdGVGaW5lU3RydWN0dXJlOigpPT5WdSxjcmVhdGVGaXJzdFJhZGlhdGlvbjooKT0+b2wsY3JlYXRlRml4OigpPT5scixjcmVhdGVGbGF0dGVuOigpPT5MbyxjcmVhdGVGbG9vcjooKT0+Q3IsY3JlYXRlRm9yRWFjaDooKT0+T28sY3JlYXRlRm9yRWFjaFRyYW5zZm9ybTooKT0+eWwsY3JlYXRlRm9ybWF0OigpPT5qcyxjcmVhdGVGcmFjdGlvbjooKT0+UWksY3JlYXRlRnJhY3Rpb25DbGFzczooKT0+U3QsY3JlYXRlRnJlcXo6KCk9PmV1LGNyZWF0ZUZ1bmN0aW9uQXNzaWdubWVudE5vZGU6KCk9PklnLGNyZWF0ZUZ1bmN0aW9uTm9kZTooKT0+YmcsY3JlYXRlR2FtbWE6KCk9Pm9RLGNyZWF0ZUdhc0NvbnN0YW50OigpPT5hbCxjcmVhdGVHY2Q6KCk9PkdyLGNyZWF0ZUdldE1hdHJpeERhdGFUeXBlOigpPT5LbyxjcmVhdGVHcmF2aXRhdGlvbkNvbnN0YW50OigpPT5OdSxjcmVhdGVHcmF2aXR5OigpPT53bCxjcmVhdGVIYXJ0cmVlRW5lcmd5OigpPT5XdSxjcmVhdGVIYXNOdW1lcmljVmFsdWU6KCk9PlpuLGNyZWF0ZUhlbHA6KCk9PmxFLGNyZWF0ZUhlbHBDbGFzczooKT0+Y0UsY3JlYXRlSGV4OigpPT5McyxjcmVhdGVIeXBvdDooKT0+UmMsY3JlYXRlSTooKT0+cHUsY3JlYXRlSWRlbnRpdHk6KCk9PlpvLGNyZWF0ZUlmZnQ6KCk9PmZzLGNyZWF0ZUltOigpPT5GbyxjcmVhdGVJbW11dGFibGVEZW5zZU1hdHJpeENsYXNzOigpPT5vQixjcmVhdGVJbmRleDooKT0+SGMsY3JlYXRlSW5kZXhDbGFzczooKT0+c0IsY3JlYXRlSW5kZXhOb2RlOigpPT5kZyxjcmVhdGVJbmRleFRyYW5zZm9ybTooKT0+VGwsY3JlYXRlSW5maW5pdHk6KCk9PmN1LGNyZWF0ZUludGVyc2VjdDooKT0+eEUsY3JlYXRlSW52OigpPT5DRSxjcmVhdGVJbnZlcnNlQ29uZHVjdGFuY2VRdWFudHVtOigpPT52dSxjcmVhdGVJbnZtb2Q6KCk9PlpyLGNyZWF0ZUlzSW50ZWdlcjooKT0+a24sY3JlYXRlSXNOYU46KCk9PkFpLGNyZWF0ZUlzTmVnYXRpdmU6KCk9PlZuLGNyZWF0ZUlzTnVtZXJpYzooKT0+S24sY3JlYXRlSXNQb3NpdGl2ZTooKT0+cW4sY3JlYXRlSXNQcmltZTooKT0+WHMsY3JlYXRlSXNaZXJvOigpPT4kbixjcmVhdGVLbGRpdmVyZ2VuY2U6KCk9PmdRLGNyZWF0ZUtsaXR6aW5nOigpPT5KdSxjcmVhdGVLcm9uOigpPT5fbyxjcmVhdGVMTjEwOigpPT53dSxjcmVhdGVMTjI6KCk9Pmh1LGNyZWF0ZUxPRzEwRTooKT0+SXUsY3JlYXRlTE9HMkU6KCk9PkN1LGNyZWF0ZUxhcmdlcjooKT0+T2EsY3JlYXRlTGFyZ2VyRXE6KCk9PkthLGNyZWF0ZUxjbTooKT0+YnIsY3JlYXRlTGVhZkNvdW50OigpPT5TUSxjcmVhdGVMZWZ0U2hpZnQ6KCk9PklhLGNyZWF0ZUxnYW1tYTooKT0+c1EsY3JlYXRlTG9nOigpPT50YSxjcmVhdGVMb2cxMDooKT0+SHIsY3JlYXRlTG9nMXA6KCk9Pm5hLGNyZWF0ZUxvZzI6KCk9PnZyLGNyZWF0ZUxvc2NobWlkdDooKT0+c2wsY3JlYXRlTHNvbHZlOigpPT5jYSxjcmVhdGVMc29sdmVBbGw6KCk9PlFhLGNyZWF0ZUx1cDooKT0+UGcsY3JlYXRlTHVzb2x2ZTooKT0+c0UsY3JlYXRlTHlhcDooKT0+TkUsY3JlYXRlTWFkOigpPT52RSxjcmVhdGVNYWduZXRpY0NvbnN0YW50OigpPT5UdSxjcmVhdGVNYWduZXRpY0ZsdXhRdWFudHVtOigpPT5rdSxjcmVhdGVNYXA6KCk9PnFvLGNyZWF0ZU1hcFRyYW5zZm9ybTooKT0+eGwsY3JlYXRlTWF0cml4OigpPT51aSxjcmVhdGVNYXRyaXhDbGFzczooKT0+SHQsY3JlYXRlTWF0cml4RnJvbUNvbHVtbnM6KCk9PnBpLGNyZWF0ZU1hdHJpeEZyb21GdW5jdGlvbjooKT0+aGksY3JlYXRlTWF0cml4RnJvbVJvd3M6KCk9PklpLGNyZWF0ZU1heDooKT0+aUIsY3JlYXRlTWF4VHJhbnNmb3JtOigpPT5TbCxjcmVhdGVNZWFuOigpPT5iRSxjcmVhdGVNZWFuVHJhbnNmb3JtOigpPT5ibCxjcmVhdGVNZWRpYW46KCk9PkhFLGNyZWF0ZU1pbjooKT0+ckIsY3JlYXRlTWluVHJhbnNmb3JtOigpPT5IbCxjcmVhdGVNb2Q6KCk9PllyLGNyZWF0ZU1vZGU6KCk9PkhzLGNyZWF0ZU1vbGFyTWFzczooKT0+bGwsY3JlYXRlTW9sYXJNYXNzQzEyOigpPT5obCxjcmVhdGVNb2xhclBsYW5ja0NvbnN0YW50OigpPT5CbCxjcmVhdGVNb2xhclZvbHVtZTooKT0+Y2wsY3JlYXRlTXVsdGlub21pYWw6KCk9PlFRLGNyZWF0ZU11bHRpcGx5OigpPT5KcixjcmVhdGVNdWx0aXBseVNjYWxhcjooKT0+a3IsY3JlYXRlTmFOOigpPT5ndSxjcmVhdGVOZXV0cm9uTWFzczooKT0+WnUsY3JlYXRlTm9kZTooKT0+a2MsY3JlYXRlTm9ybTooKT0+R2MsY3JlYXRlTm90OigpPT5UbyxjcmVhdGVOdGhSb290OigpPT5McixjcmVhdGVOdGhSb290czooKT0+cmEsY3JlYXRlTnVjbGVhck1hZ25ldG9uOigpPT5qdSxjcmVhdGVOdWxsOigpPT5CdSxjcmVhdGVOdW1iZXI6KCk9PnNpLGNyZWF0ZU51bWVyaWM6KCk9PlpzLGNyZWF0ZU9iamVjdE5vZGU6KCk9Pm1nLGNyZWF0ZU9jdDooKT0+enMsY3JlYXRlT25lczooKT0+ZXMsY3JlYXRlT3BlcmF0b3JOb2RlOigpPT5EZyxjcmVhdGVPcjooKT0+eG8sY3JlYXRlUGFyZW50aGVzaXNOb2RlOigpPT5mZyxjcmVhdGVQYXJzZTooKT0+SGcsY3JlYXRlUGFyc2VyOigpPT5MZyxjcmVhdGVQYXJzZXJDbGFzczooKT0+emcsY3JlYXRlUGFydGl0aW9uU2VsZWN0OigpPT50QixjcmVhdGVQZXJtdXRhdGlvbnM6KCk9PmxRLGNyZWF0ZVBoaTooKT0+bHUsY3JlYXRlUGk6KCk9PkV1LGNyZWF0ZVBpY2tSYW5kb206KCk9PmRRLGNyZWF0ZVBpbnY6KCk9PklFLGNyZWF0ZVBsYW5ja0NoYXJnZTooKT0+ZGwsY3JlYXRlUGxhbmNrQ29uc3RhbnQ6KCk9PlV1LGNyZWF0ZVBsYW5ja0xlbmd0aDooKT0+Q2wsY3JlYXRlUGxhbmNrTWFzczooKT0+SWwsY3JlYXRlUGxhbmNrVGVtcGVyYXR1cmU6KCk9PnBsLGNyZWF0ZVBsYW5ja1RpbWU6KCk9Pk1sLGNyZWF0ZVBvbHlub21pYWxSb290OigpPT5CRSxjcmVhdGVQb3c6KCk9PiRzLGNyZWF0ZVByaW50OigpPT5PcyxjcmVhdGVQcmludFRyYW5zZm9ybTooKT0+WGwsY3JlYXRlUHJvZDooKT0+a3MsY3JlYXRlUHJvdG9uTWFzczooKT0+S3UsY3JlYXRlUXI6KCk9Pk9nLGNyZWF0ZVF1YW50aWxlU2VxOigpPT5MRSxjcmVhdGVRdWFudGlsZVNlcVRyYW5zZm9ybTooKT0+T2wsY3JlYXRlUXVhbnR1bU9mQ2lyY3VsYXRpb246KCk9Pl91LGNyZWF0ZVJhbmRvbTooKT0+bVEsY3JlYXRlUmFuZG9tSW50OigpPT5EUSxjcmVhdGVSYW5nZTooKT0+cnMsY3JlYXRlUmFuZ2VDbGFzczooKT0+YnQsY3JlYXRlUmFuZ2VOb2RlOigpPT5VZyxjcmVhdGVSYW5nZVRyYW5zZm9ybTooKT0+dmwsY3JlYXRlUmF0aW9uYWxpemU6KCk9PiRRLGNyZWF0ZVJlOigpPT5EbyxjcmVhdGVSZWR1Y2VkUGxhbmNrQ29uc3RhbnQ6KCk9Pnl1LGNyZWF0ZVJlbGF0aW9uYWxOb2RlOigpPT5UZyxjcmVhdGVSZXBsYWNlcjooKT0+bnUsY3JlYXRlUmVzaGFwZTooKT0+c3MsY3JlYXRlUmVzaXplOigpPT5hcyxjcmVhdGVSZXNvbHZlOigpPT5XUSxjcmVhdGVSZXN1bHRTZXQ6KCk9PlpBLGNyZWF0ZVJldml2ZXI6KCk9PnR1LGNyZWF0ZVJpZ2h0QXJpdGhTaGlmdDooKT0+ZGEsY3JlYXRlUmlnaHRMb2dTaGlmdDooKT0+bWEsY3JlYXRlUm90YXRlOigpPT5CcyxjcmVhdGVSb3RhdGlvbk1hdHJpeDooKT0+Z3MsY3JlYXRlUm91bmQ6KCk9PmVhLGNyZWF0ZVJvdzooKT0+RXMsY3JlYXRlUm93VHJhbnNmb3JtOigpPT5rbCxjcmVhdGVSeWRiZXJnOigpPT5xdSxjcmVhdGVTUVJUMV8yOigpPT5NdSxjcmVhdGVTUVJUMjooKT0+ZHUsY3JlYXRlU2Fja3VyVGV0cm9kZTooKT0+Z2wsY3JlYXRlU2NodXI6KCk9PmZFLGNyZWF0ZVNlYzooKT0+b2MsY3JlYXRlU2VjaDooKT0+c2MsY3JlYXRlU2Vjb25kUmFkaWF0aW9uOigpPT5FbCxjcmVhdGVTZXRDYXJ0ZXNpYW46KCk9PlFjLGNyZWF0ZVNldERpZmZlcmVuY2U6KCk9PmxjLGNyZWF0ZVNldERpc3RpbmN0OigpPT53YyxjcmVhdGVTZXRJbnRlcnNlY3Q6KCk9PkljLGNyZWF0ZVNldElzU3Vic2V0OigpPT5kYyxjcmVhdGVTZXRNdWx0aXBsaWNpdHk6KCk9Pm1jLGNyZWF0ZVNldFBvd2Vyc2V0OigpPT5EYyxjcmVhdGVTZXRTaXplOigpPT5mYyxjcmVhdGVTZXRTeW1EaWZmZXJlbmNlOigpPT5VYyxjcmVhdGVTZXRVbmlvbjooKT0+VGMsY3JlYXRlU2lnbjooKT0+UHIsY3JlYXRlU2ltcGxpZnk6KCk9PkpRLGNyZWF0ZVNpbXBsaWZ5Q29uc3RhbnQ6KCk9PlBRLGNyZWF0ZVNpbXBsaWZ5Q29yZTooKT0+VlEsY3JlYXRlU2luOigpPT5hYyxjcmVhdGVTaW5oOigpPT5CYyxjcmVhdGVTaXplOigpPT5RcyxjcmVhdGVTbHU6KCk9PmlFLGNyZWF0ZVNtYWxsZXI6KCk9PmthLGNyZWF0ZVNtYWxsZXJFcTooKT0+emEsY3JlYXRlU29sdmVPREU6KCk9PlVzLGNyZWF0ZVNvcnQ6KCk9Pm5CLGNyZWF0ZVNwYUNsYXNzOigpPT5jQixjcmVhdGVTcGFyc2U6KCk9Pk1CLGNyZWF0ZVNwYXJzZU1hdHJpeENsYXNzOigpPT5vaSxjcmVhdGVTcGVlZE9mTGlnaHQ6KCk9PmZ1LGNyZWF0ZVNwbGl0VW5pdDooKT0+RmksY3JlYXRlU3FydDooKT0+T3IsY3JlYXRlU3FydG06KCk9PkZFLGNyZWF0ZVNxdWFyZTooKT0+VnIsY3JlYXRlU3F1ZWV6ZTooKT0+bHMsY3JlYXRlU3RkOigpPT5QRSxjcmVhdGVTdGRUcmFuc2Zvcm06KCk9PkxsLGNyZWF0ZVN0ZWZhbkJvbHR6bWFubjooKT0+UWwsY3JlYXRlU3RpcmxpbmdTMjooKT0+ZlEsY3JlYXRlU3RyaW5nOigpPT5haSxjcmVhdGVTdWJzZXQ6KCk9PmhzLGNyZWF0ZVN1YnNldFRyYW5zZm9ybTooKT0+amwsY3JlYXRlU3VidHJhY3Q6KCk9PktyLGNyZWF0ZVN1YnRyYWN0U2NhbGFyOigpPT50cixjcmVhdGVTdW06KCk9PlJFLGNyZWF0ZVN1bVRyYW5zZm9ybTooKT0+UGwsY3JlYXRlU3lsdmVzdGVyOigpPT5ZRSxjcmVhdGVTeW1ib2xOb2RlOigpPT54ZyxjcmVhdGVTeW1ib2xpY0VxdWFsOigpPT5YUSxjcmVhdGVUYW46KCk9PmNjLGNyZWF0ZVRhbmg6KCk9PmdjLGNyZWF0ZVRhdTooKT0+UXUsY3JlYXRlVGhvbXNvbkNyb3NzU2VjdGlvbjooKT0+JHUsY3JlYXRlVG86KCk9PldzLGNyZWF0ZVRyYWNlOigpPT5iYyxjcmVhdGVUcmFuc3Bvc2U6KCk9PnBzLGNyZWF0ZVRydWU6KCk9PnN1LGNyZWF0ZVR5cGVPZjooKT0+ZWksY3JlYXRlVHlwZWQ6KCk9PlBBLGNyZWF0ZVVuYXJ5TWludXM6KCk9PldpLGNyZWF0ZVVuYXJ5UGx1czooKT0+WGksY3JlYXRlVW5lcXVhbDooKT0+JGEsY3JlYXRlVW5pdENsYXNzOigpPT5DQixjcmVhdGVVbml0RnVuY3Rpb246KCk9PklCLGNyZWF0ZVVwcGVyY2FzZUU6KCk9PkZ1LGNyZWF0ZVVwcGVyY2FzZVBpOigpPT5tdSxjcmVhdGVVc29sdmU6KCk9PmdhLGNyZWF0ZVVzb2x2ZUFsbDooKT0+bGEsY3JlYXRlVmFjdXVtSW1wZWRhbmNlOigpPT5SdSxjcmVhdGVWYXJpYW5jZTooKT0+SkUsY3JlYXRlVmFyaWFuY2VUcmFuc2Zvcm06KCk9PktsLGNyZWF0ZVZlcnNpb246KCk9PkR1LGNyZWF0ZVdlYWtNaXhpbmdBbmdsZTooKT0+QWwsY3JlYXRlV2llbkRpc3BsYWNlbWVudDooKT0+dWwsY3JlYXRlWGdjZDooKT0+WHIsY3JlYXRlWG9yOigpPT5SbyxjcmVhdGVaZXJvczooKT0+RHMsY3JlYXRlWmV0YTooKT0+YnMsY3JlYXRlWnBrMnRmOigpPT5BdX0pLG4oNDA0Myksbig3NDA5KSxuKDkyODgpLG4oNjgwMSksbig4NzQyKSxuKDIyOCksbigzODQzKSxuKDgwNTIpLG4oMzk3NSksbigyNCksbigyMDAzKSxuKDg1MTgpLG4oMzQ0MCksbigyODI2KSxuKDQyODQpO3ZhciBjPUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gZyhBKXtyZXR1cm4gQSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc01hdHJpeHx8ITF9ZnVuY3Rpb24gRShBKXtyZXR1cm4gQXJyYXkuaXNBcnJheShBKXx8ZyhBKX1mdW5jdGlvbiBRKEEpe3JldHVybiBBJiZBLmlzRGVuc2VNYXRyaXgmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNNYXRyaXh8fCExfWZ1bmN0aW9uIHUoQSl7cmV0dXJuIEEmJkEuaXNTcGFyc2VNYXRyaXgmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNNYXRyaXh8fCExfWZ1bmN0aW9uIGwoQSl7cmV0dXJuIEEmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNSYW5nZXx8ITF9ZnVuY3Rpb24gaChBKXtyZXR1cm4gQSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc0luZGV4fHwhMX1mdW5jdGlvbiB3KEEpe3JldHVybiJib29sZWFuIj09dHlwZW9mIEF9ZnVuY3Rpb24gQyhBKXtyZXR1cm4gQSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc1Jlc3VsdFNldHx8ITF9ZnVuY3Rpb24gSShBKXtyZXR1cm4gQSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc0hlbHB8fCExfWZ1bmN0aW9uIE0oQSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIEF9ZnVuY3Rpb24gZChBKXtyZXR1cm4gQSBpbnN0YW5jZW9mIERhdGV9ZnVuY3Rpb24gcChBKXtyZXR1cm4gQSBpbnN0YW5jZW9mIFJlZ0V4cH1mdW5jdGlvbiBtKEEpe3JldHVybiEoIUF8fCJvYmplY3QiIT09ZShBKXx8QS5jb25zdHJ1Y3RvciE9PU9iamVjdHx8byhBKXx8cyhBKSl9ZnVuY3Rpb24gRihBKXtyZXR1cm4gbnVsbD09PUF9ZnVuY3Rpb24gRChBKXtyZXR1cm4gdm9pZCAwPT09QX1mdW5jdGlvbiBZKEEpe3JldHVybiBBJiYhMD09PUEuaXNBY2Nlc3Nvck5vZGUmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNOb2RlfHwhMX1mdW5jdGlvbiBmKEEpe3JldHVybiBBJiYhMD09PUEuaXNBcnJheU5vZGUmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNOb2RlfHwhMX1mdW5jdGlvbiBOKEEpe3JldHVybiBBJiYhMD09PUEuaXNBc3NpZ25tZW50Tm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIFUoQSl7cmV0dXJuIEEmJiEwPT09QS5pc0Jsb2NrTm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIHkoQSl7cmV0dXJuIEEmJiEwPT09QS5pc0NvbmRpdGlvbmFsTm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIFQoQSl7cmV0dXJuIEEmJiEwPT09QS5pc0NvbnN0YW50Tm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIHgoQSl7cmV0dXJuIFQoQSl8fHYoQSkmJjE9PT1BLmFyZ3MubGVuZ3RoJiZUKEEuYXJnc1swXSkmJiItK34iLmluY2x1ZGVzKEEub3ApfWZ1bmN0aW9uIFIoQSl7cmV0dXJuIEEmJiEwPT09QS5pc0Z1bmN0aW9uQXNzaWdubWVudE5vZGUmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNOb2RlfHwhMX1mdW5jdGlvbiBHKEEpe3JldHVybiBBJiYhMD09PUEuaXNGdW5jdGlvbk5vZGUmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNOb2RlfHwhMX1mdW5jdGlvbiBTKEEpe3JldHVybiBBJiYhMD09PUEuaXNJbmRleE5vZGUmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNOb2RlfHwhMX1mdW5jdGlvbiBiKEEpe3JldHVybiBBJiYhMD09PUEuaXNOb2RlJiYhMD09PUEuY29uc3RydWN0b3IucHJvdG90eXBlLmlzTm9kZXx8ITF9ZnVuY3Rpb24gSChBKXtyZXR1cm4gQSYmITA9PT1BLmlzT2JqZWN0Tm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIHYoQSl7cmV0dXJuIEEmJiEwPT09QS5pc09wZXJhdG9yTm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIGsoQSl7cmV0dXJuIEEmJiEwPT09QS5pc1BhcmVudGhlc2lzTm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIGooQSl7cmV0dXJuIEEmJiEwPT09QS5pc1JhbmdlTm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIEooQSl7cmV0dXJuIEEmJiEwPT09QS5pc1JlbGF0aW9uYWxOb2RlJiYhMD09PUEuY29uc3RydWN0b3IucHJvdG90eXBlLmlzTm9kZXx8ITF9ZnVuY3Rpb24geihBKXtyZXR1cm4gQSYmITA9PT1BLmlzU3ltYm9sTm9kZSYmITA9PT1BLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5pc05vZGV8fCExfWZ1bmN0aW9uIEwoQSl7cmV0dXJuIEEmJiEwPT09QS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuaXNDaGFpbnx8ITF9ZnVuY3Rpb24gUChBKXt2YXIgdD1lKEEpO3JldHVybiJvYmplY3QiPT09dD9udWxsPT09QT8ibnVsbCI6cihBKT8iQmlnTnVtYmVyIjpBLmNvbnN0cnVjdG9yJiZBLmNvbnN0cnVjdG9yLm5hbWU/QS5jb25zdHJ1Y3Rvci5uYW1lOiJPYmplY3QiOnR9dmFyIE89big0ODE0KTtmdW5jdGlvbiBWKEEpe3JldHVybiJib29sZWFuIj09dHlwZW9mIEF8fCEhaXNGaW5pdGUoQSkmJkE9PT1NYXRoLnJvdW5kKEEpfW4oNjk3Niksbig4ODEzKSxuKDUyMzkpLG4oMjA3Niksbig0NzEyKSxuKDQ5OTIpLG4oNDMzOCksbig3MjY3KSxuKDI0NjIpLG4oOTM5KSxuKDcxOTUpLG4oODg2KSxuKDIzMjApLG4oNjIwMyksbig5NzMwKSxuKDI1MDYpLG4oMzU4NCksbig2NTU3KSxuKDI0MjgpLG4oNTI2Myksbig3MjIxKSxuKDI3MDApLG4oMTU1NCk7dmFyIFc9TWF0aC5zaWdufHxmdW5jdGlvbihBKXtyZXR1cm4gQT4wPzE6QTwwPy0xOjB9LEs9TWF0aC5sb2cyfHxmdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5sb2coQSkvTWF0aC5MTjJ9LFg9TWF0aC5sb2cxMHx8ZnVuY3Rpb24oQSl7cmV0dXJuIE1hdGgubG9nKEEpL01hdGguTE4xMH0sWj1NYXRoLmxvZzFwfHxmdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5sb2coQSsxKX0sXz1NYXRoLmNicnR8fGZ1bmN0aW9uKEEpe2lmKDA9PT1BKXJldHVybiBBO3ZhciBlLHQ9QTwwO3JldHVybiB0JiYoQT0tQSksZT1pc0Zpbml0ZShBKT8oQS8oKGU9TWF0aC5leHAoTWF0aC5sb2coQSkvMykpKmUpKzIqZSkvMzpBLHQ/LWU6ZX0scT1NYXRoLmV4cG0xfHxmdW5jdGlvbihBKXtyZXR1cm4gQT49MmUtNHx8QTw9LTJlLTQ/TWF0aC5leHAoQSktMTpBK0EqQS8yK0EqQSpBLzZ9O2Z1bmN0aW9uICQoQSxlLHQpe3ZhciBuPXsyOiIwYiIsODoiMG8iLDE2OiIweCJ9W2VdLGk9IiI7aWYodCl7aWYodDwxKXRocm93IG5ldyBFcnJvcigic2l6ZSBtdXN0IGJlIGluIGdyZWF0ZXIgdGhhbiAwIik7aWYoIVYodCkpdGhyb3cgbmV3IEVycm9yKCJzaXplIG11c3QgYmUgYW4gaW50ZWdlciIpO2lmKEE+TWF0aC5wb3coMix0LTEpLTF8fEE8LU1hdGgucG93KDIsdC0xKSl0aHJvdyBuZXcgRXJyb3IoIlZhbHVlIG11c3QgYmUgaW4gcmFuZ2UgWy0yXiIuY29uY2F0KHQtMSwiLCAyXiIpLmNvbmNhdCh0LTEsIi0xXSIpKTtpZighVihBKSl0aHJvdyBuZXcgRXJyb3IoIlZhbHVlIG11c3QgYmUgYW4gaW50ZWdlciIpO0E8MCYmKEErPU1hdGgucG93KDIsdCkpLGk9ImkiLmNvbmNhdCh0KX12YXIgcj0iIjtyZXR1cm4gQTwwJiYoQT0tQSxyPSItIiksIiIuY29uY2F0KHIpLmNvbmNhdChuKS5jb25jYXQoQS50b1N0cmluZyhlKSkuY29uY2F0KGkpfWZ1bmN0aW9uIEFBKEEsZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpcmV0dXJuIGUoQSk7aWYoQT09PTEvMClyZXR1cm4iSW5maW5pdHkiO2lmKEE9PT0tMS8wKXJldHVybiItSW5maW5pdHkiO2lmKGlzTmFOKEEpKXJldHVybiJOYU4iO3ZhciBuLGkscj0iYXV0byI7aWYoZSYmKGUubm90YXRpb24mJihyPWUubm90YXRpb24pLHQoZSk/bj1lOnQoZS5wcmVjaXNpb24pJiYobj1lLnByZWNpc2lvbiksZS53b3JkU2l6ZSYmIm51bWJlciIhPXR5cGVvZihpPWUud29yZFNpemUpKSl0aHJvdyBuZXcgRXJyb3IoJ09wdGlvbiAid29yZFNpemUiIG11c3QgYmUgYSBudW1iZXInKTtzd2l0Y2gocil7Y2FzZSJmaXhlZCI6cmV0dXJuIHRBKEEsbik7Y2FzZSJleHBvbmVudGlhbCI6cmV0dXJuIG5BKEEsbik7Y2FzZSJlbmdpbmVlcmluZyI6cmV0dXJuIGZ1bmN0aW9uKEEsZSl7aWYoaXNOYU4oQSl8fCFpc0Zpbml0ZShBKSlyZXR1cm4gU3RyaW5nKEEpO3ZhciBuPWlBKGVBKEEpLGUpLGk9bi5leHBvbmVudCxyPW4uY29lZmZpY2llbnRzLG89aSUzPT0wP2k6aTwwP2ktMy1pJTM6aS1pJTM7aWYodChlKSlmb3IoO2U+ci5sZW5ndGh8fGktbysxPnIubGVuZ3RoOylyLnB1c2goMCk7ZWxzZSBmb3IodmFyIHM9TWF0aC5hYnMoaS1vKS0oci5sZW5ndGgtMSksYT0wO2E8czthKyspci5wdXNoKDApO2Zvcih2YXIgQj1NYXRoLmFicyhpLW8pLGM9MTtCPjA7KWMrKyxCLS07dmFyIGc9ci5zbGljZShjKS5qb2luKCIiKSxFPXQoZSkmJmcubGVuZ3RofHxnLm1hdGNoKC9bMS05XS8pPyIuIitnOiIiLFE9ci5zbGljZSgwLGMpLmpvaW4oIiIpK0UrImUiKyhpPj0wPyIrIjoiIikrby50b1N0cmluZygpO3JldHVybiBuLnNpZ24rUX0oQSxuKTtjYXNlImJpbiI6cmV0dXJuICQoQSwyLGkpO2Nhc2Uib2N0IjpyZXR1cm4gJChBLDgsaSk7Y2FzZSJoZXgiOnJldHVybiAkKEEsMTYsaSk7Y2FzZSJhdXRvIjpyZXR1cm4gZnVuY3Rpb24oQSxlLHQpe2lmKGlzTmFOKEEpfHwhaXNGaW5pdGUoQSkpcmV0dXJuIFN0cmluZyhBKTt2YXIgbj10JiZ2b2lkIDAhPT10Lmxvd2VyRXhwP3QubG93ZXJFeHA6LTMsaT10JiZ2b2lkIDAhPT10LnVwcGVyRXhwP3QudXBwZXJFeHA6NSxyPWVBKEEpLG89ZT9pQShyLGUpOnI7aWYoby5leHBvbmVudDxufHxvLmV4cG9uZW50Pj1pKXJldHVybiBuQShBLGUpO3ZhciBzPW8uY29lZmZpY2llbnRzLGE9by5leHBvbmVudDtzLmxlbmd0aDxlJiYocz1zLmNvbmNhdChyQShlLXMubGVuZ3RoKSkpLHM9cy5jb25jYXQockEoYS1zLmxlbmd0aCsxKyhzLmxlbmd0aDxlP2Utcy5sZW5ndGg6MCkpKTt2YXIgQj1hPjA/YTowO3JldHVybiBCPChzPXJBKC1hKS5jb25jYXQocykpLmxlbmd0aC0xJiZzLnNwbGljZShCKzEsMCwiLiIpLG8uc2lnbitzLmpvaW4oIiIpfShBLG4sZSYmZSkucmVwbGFjZSgvKChcLlxkKj8pKDArKSkoJHxlKS8sKGZ1bmN0aW9uKCl7dmFyIEE9YXJndW1lbnRzWzJdLGU9YXJndW1lbnRzWzRdO3JldHVybiIuIiE9PUE/QStlOmV9KSk7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gbm90YXRpb24gIicrcisnIi4gQ2hvb3NlICJhdXRvIiwgImV4cG9uZW50aWFsIiwgImZpeGVkIiwgImJpbiIsICJvY3QiLCBvciAiaGV4LicpfX1mdW5jdGlvbiBlQShBKXt2YXIgZT1TdHJpbmcoQSkudG9Mb3dlckNhc2UoKS5tYXRjaCgvXigtPykoXGQrXC4/XGQqKShlKFsrLV0/XGQrKSk/JC8pO2lmKCFlKXRocm93IG5ldyBTeW50YXhFcnJvcigiSW52YWxpZCBudW1iZXIgIitBKTt2YXIgdD1lWzFdLG49ZVsyXSxpPXBhcnNlRmxvYXQoZVs0XXx8IjAiKSxyPW4uaW5kZXhPZigiLiIpO2krPS0xIT09cj9yLTE6bi5sZW5ndGgtMTt2YXIgbz1uLnJlcGxhY2UoIi4iLCIiKS5yZXBsYWNlKC9eMCovLChmdW5jdGlvbihBKXtyZXR1cm4gaS09QS5sZW5ndGgsIiJ9KSkucmVwbGFjZSgvMCokLywiIikuc3BsaXQoIiIpLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIHBhcnNlSW50KEEpfSkpO3JldHVybiAwPT09by5sZW5ndGgmJihvLnB1c2goMCksaSsrKSx7c2lnbjp0LGNvZWZmaWNpZW50czpvLGV4cG9uZW50Oml9fWZ1bmN0aW9uIHRBKEEsZSl7aWYoaXNOYU4oQSl8fCFpc0Zpbml0ZShBKSlyZXR1cm4gU3RyaW5nKEEpO3ZhciB0PWVBKEEpLG49Im51bWJlciI9PXR5cGVvZiBlP2lBKHQsdC5leHBvbmVudCsxK2UpOnQsaT1uLmNvZWZmaWNpZW50cyxyPW4uZXhwb25lbnQrMSxvPXIrKGV8fDApO3JldHVybiBpLmxlbmd0aDxvJiYoaT1pLmNvbmNhdChyQShvLWkubGVuZ3RoKSkpLHI8MCYmKGk9ckEoMS1yKS5jb25jYXQoaSkscj0xKSxyPGkubGVuZ3RoJiZpLnNwbGljZShyLDAsMD09PXI/IjAuIjoiLiIpLG4uc2lnbitpLmpvaW4oIiIpfWZ1bmN0aW9uIG5BKEEsZSl7aWYoaXNOYU4oQSl8fCFpc0Zpbml0ZShBKSlyZXR1cm4gU3RyaW5nKEEpO3ZhciB0PWVBKEEpLG49ZT9pQSh0LGUpOnQsaT1uLmNvZWZmaWNpZW50cyxyPW4uZXhwb25lbnQ7aS5sZW5ndGg8ZSYmKGk9aS5jb25jYXQockEoZS1pLmxlbmd0aCkpKTt2YXIgbz1pLnNoaWZ0KCk7cmV0dXJuIG4uc2lnbitvKyhpLmxlbmd0aD4wPyIuIitpLmpvaW4oIiIpOiIiKSsiZSIrKHI+PTA/IisiOiIiKStyfWZ1bmN0aW9uIGlBKEEsZSl7Zm9yKHZhciB0PXtzaWduOkEuc2lnbixjb2VmZmljaWVudHM6QS5jb2VmZmljaWVudHMsZXhwb25lbnQ6QS5leHBvbmVudH0sbj10LmNvZWZmaWNpZW50cztlPD0wOyluLnVuc2hpZnQoMCksdC5leHBvbmVudCsrLGUrKztpZihuLmxlbmd0aD5lJiZuLnNwbGljZShlLG4ubGVuZ3RoLWUpWzBdPj01KXt2YXIgaT1lLTE7Zm9yKG5baV0rKzsxMD09PW5baV07KW4ucG9wKCksMD09PWkmJihuLnVuc2hpZnQoMCksdC5leHBvbmVudCsrLGkrKyksblstLWldKyt9cmV0dXJuIHR9ZnVuY3Rpb24gckEoQSl7Zm9yKHZhciBlPVtdLHQ9MDt0PEE7dCsrKWUucHVzaCgwKTtyZXR1cm4gZX12YXIgb0E9TnVtYmVyLkVQU0lMT058fDIyMjA0NDYwNDkyNTAzMTNlLTMxO2Z1bmN0aW9uIHNBKEEsZSx0KXtpZihudWxsPT10KXJldHVybiBBPT09ZTtpZihBPT09ZSlyZXR1cm4hMDtpZihpc05hTihBKXx8aXNOYU4oZSkpcmV0dXJuITE7aWYoaXNGaW5pdGUoQSkmJmlzRmluaXRlKGUpKXt2YXIgbj1NYXRoLmFicyhBLWUpO3JldHVybiBuPG9BfHxuPD1NYXRoLm1heChNYXRoLmFicyhBKSxNYXRoLmFicyhlKSkqdH1yZXR1cm4hMX12YXIgYUE9TWF0aC5hY29zaHx8ZnVuY3Rpb24oQSl7cmV0dXJuIE1hdGgubG9nKE1hdGguc3FydChBKkEtMSkrQSl9LEJBPU1hdGguYXNpbmh8fGZ1bmN0aW9uKEEpe3JldHVybiBNYXRoLmxvZyhNYXRoLnNxcnQoQSpBKzEpK0EpfSxjQT1NYXRoLmF0YW5ofHxmdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5sb2coKDErQSkvKDEtQSkpLzJ9LGdBPU1hdGguY29zaHx8ZnVuY3Rpb24oQSl7cmV0dXJuKE1hdGguZXhwKEEpK01hdGguZXhwKC1BKSkvMn0sRUE9TWF0aC5zaW5ofHxmdW5jdGlvbihBKXtyZXR1cm4oTWF0aC5leHAoQSktTWF0aC5leHAoLUEpKS8yfSxRQT1NYXRoLnRhbmh8fGZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguZXhwKDIqQSk7cmV0dXJuKGUtMSkvKGUrMSl9O2Z1bmN0aW9uIHVBKEEpe3ZhciB0PWUoQSk7aWYoIm51bWJlciI9PT10fHwic3RyaW5nIj09PXR8fCJib29sZWFuIj09PXR8fG51bGw9PUEpcmV0dXJuIEE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIEEuY2xvbmUpcmV0dXJuIEEuY2xvbmUoKTtpZihBcnJheS5pc0FycmF5KEEpKXJldHVybiBBLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIHVBKEEpfSkpO2lmKEEgaW5zdGFuY2VvZiBEYXRlKXJldHVybiBuZXcgRGF0ZShBLnZhbHVlT2YoKSk7aWYocihBKSlyZXR1cm4gQTtpZihtKEEpKXJldHVybiBsQShBLHVBKTt0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2xvbmU6IHVua25vd24gdHlwZSBvZiB2YWx1ZSAodmFsdWU6ICIuY29uY2F0KEEsIikiKSl9ZnVuY3Rpb24gbEEoQSxlKXt2YXIgdD17fTtmb3IodmFyIG4gaW4gQSlNQShBLG4pJiYodFtuXT1lKEFbbl0pKTtyZXR1cm4gdH1mdW5jdGlvbiBoQShBLGUpe2Zvcih2YXIgdCBpbiBlKU1BKGUsdCkmJihBW3RdPWVbdF0pO3JldHVybiBBfWZ1bmN0aW9uIHdBKEEsZSl7dmFyIHQsbixpO2lmKEFycmF5LmlzQXJyYXkoQSkpe2lmKCFBcnJheS5pc0FycmF5KGUpKXJldHVybiExO2lmKEEubGVuZ3RoIT09ZS5sZW5ndGgpcmV0dXJuITE7Zm9yKG49MCxpPUEubGVuZ3RoO248aTtuKyspaWYoIXdBKEFbbl0sZVtuXSkpcmV0dXJuITE7cmV0dXJuITB9aWYoImZ1bmN0aW9uIj09dHlwZW9mIEEpcmV0dXJuIEE9PT1lO2lmKEEgaW5zdGFuY2VvZiBPYmplY3Qpe2lmKEFycmF5LmlzQXJyYXkoZSl8fCEoZSBpbnN0YW5jZW9mIE9iamVjdCkpcmV0dXJuITE7Zm9yKHQgaW4gQSlpZighKHQgaW4gZSl8fCF3QShBW3RdLGVbdF0pKXJldHVybiExO2Zvcih0IGluIGUpaWYoISh0IGluIEEpKXJldHVybiExO3JldHVybiEwfXJldHVybiBBPT09ZX1mdW5jdGlvbiBDQShBLHQpe2Zvcih2YXIgbiBpbiBBKWlmKE1BKEEsbikpe3ZhciBpPUFbbl07Im9iamVjdCI9PT1lKGkpJiZudWxsIT09aT9DQShpLHQpOnRbbl09aX19ZnVuY3Rpb24gSUEoQSxlLHQpe3ZhciBuLGk9ITA7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGkmJihuPXQoKSxpPSExKSxufSxzZXQ6ZnVuY3Rpb24oQSl7bj1BLGk9ITF9LGNvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwfSl9ZnVuY3Rpb24gTUEoQSxlKXtyZXR1cm4gQSYmT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwoQSxlKX1mdW5jdGlvbiBkQShBKXtyZXR1cm4gT2JqZWN0LmtleXMoQSkubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gQVtlXX0pKX1mdW5jdGlvbiBwQShBLGUsdCxuKXtmdW5jdGlvbiBpKG4pe3ZhciBpPWZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PXt9LG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXSxyPUFbaV07dm9pZCAwIT09ciYmKHRbaV09cil9cmV0dXJuIHR9KG4sZS5tYXAoRkEpKTtyZXR1cm4gZnVuY3Rpb24oQSxlLHQpe2lmKCFlLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIWZ1bmN0aW9uKEEpe3JldHVybiBBJiYiPyI9PT1BWzBdfShBKX0pKS5ldmVyeSgoZnVuY3Rpb24oQSl7cmV0dXJuIHZvaWQgMCE9PXRbQV19KSkpe3ZhciBuPWUuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gdm9pZCAwPT09dFtBXX0pKTt0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBjcmVhdGUgZnVuY3Rpb24gIicuY29uY2F0KEEsJyIsICcpKyJzb21lIGRlcGVuZGVuY2llcyBhcmUgbWlzc2luZzogIi5jb25jYXQobi5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiciJy5jb25jYXQoQSwnIicpfSkpLmpvaW4oIiwgIiksIi4iKSl9fShBLGUsbiksdChpKX1yZXR1cm4gaS5pc0ZhY3Rvcnk9ITAsaS5mbj1BLGkuZGVwZW5kZW5jaWVzPWUuc2xpY2UoKS5zb3J0KCksbiYmKGkubWV0YT1uKSxpfWZ1bmN0aW9uIG1BKEEpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBBJiYic3RyaW5nIj09dHlwZW9mIEEuZm4mJkFycmF5LmlzQXJyYXkoQS5kZXBlbmRlbmNpZXMpfWZ1bmN0aW9uIEZBKEEpe3JldHVybiBBJiYiPyI9PT1BWzBdP0Euc2xpY2UoMSk6QX1mdW5jdGlvbiBEQShBLGUpe2lmKCEoQSBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfWZ1bmN0aW9uIFlBKEEpe3ZhciB0PWZ1bmN0aW9uKEEsdCl7aWYoIm9iamVjdCIhPT1lKEEpfHxudWxsPT09QSlyZXR1cm4gQTt2YXIgbj1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09bil7dmFyIGk9bi5jYWxsKEEsInN0cmluZyIpO2lmKCJvYmplY3QiIT09ZShpKSlyZXR1cm4gaTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybiBTdHJpbmcoQSl9KEEpO3JldHVybiJzeW1ib2wiPT09ZSh0KT90OlN0cmluZyh0KX1mdW5jdGlvbiBmQShBLGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgbj1lW3RdO24uZW51bWVyYWJsZT1uLmVudW1lcmFibGV8fCExLG4uY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBuJiYobi53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsWUEobi5rZXkpLG4pfX1mdW5jdGlvbiBOQShBLGUsdCl7cmV0dXJuIGUmJmZBKEEucHJvdG90eXBlLGUpLHQmJmZBKEEsdCksT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksQX1mdW5jdGlvbiBVQShBLGUpe2lmKFJBKEEpJiZUQShBLGUpKXJldHVybiBBW2VdO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBBW2VdJiZ4QShBLGUpKXRocm93IG5ldyBFcnJvcignQ2Fubm90IGFjY2VzcyBtZXRob2QgIicrZSsnIiBhcyBhIHByb3BlcnR5Jyk7dGhyb3cgbmV3IEVycm9yKCdObyBhY2Nlc3MgdG8gcHJvcGVydHkgIicrZSsnIicpfWZ1bmN0aW9uIHlBKEEsZSx0KXtpZihSQShBKSYmVEEoQSxlKSlyZXR1cm4gQVtlXT10LHQ7dGhyb3cgbmV3IEVycm9yKCdObyBhY2Nlc3MgdG8gcHJvcGVydHkgIicrZSsnIicpfWZ1bmN0aW9uIFRBKEEsdCl7cmV0dXJuISghQXx8Im9iamVjdCIhPT1lKEEpfHwhTUEoR0EsdCkmJih0IGluIE9iamVjdC5wcm90b3R5cGV8fHQgaW4gRnVuY3Rpb24ucHJvdG90eXBlKSl9ZnVuY3Rpb24geEEoQSxlKXtyZXR1cm4hKG51bGw9PUF8fCJmdW5jdGlvbiIhPXR5cGVvZiBBW2VdfHxNQShBLGUpJiZPYmplY3QuZ2V0UHJvdG90eXBlT2YmJmUgaW4gT2JqZWN0LmdldFByb3RvdHlwZU9mKEEpfHwhTUEoU0EsZSkmJihlIGluIE9iamVjdC5wcm90b3R5cGV8fGUgaW4gRnVuY3Rpb24ucHJvdG90eXBlKSl9ZnVuY3Rpb24gUkEoQSl7cmV0dXJuIm9iamVjdCI9PT1lKEEpJiZBJiZBLmNvbnN0cnVjdG9yPT09T2JqZWN0fW4oNTEzNyksbig5NjkzKSxuKDc1MjIpLG4oODA3Nyksbig1NzkxKSxuKDczOSksbig5MzU4KSxuKDc1Miksbig2NjQ2KSxuKDE2OTQpLG4oNjI2NSksbig3NzIyKSxuKDk3NDkpLG4oNjU0NCksbig0MjU0KTt2YXIgR0E9e2xlbmd0aDohMCxuYW1lOiEwfSxTQT17dG9TdHJpbmc6ITAsdmFsdWVPZjohMCx0b0xvY2FsZVN0cmluZzohMH07ZnVuY3Rpb24gYkEoQSxlKXt2YXIgdD0idW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmQVtTeW1ib2wuaXRlcmF0b3JdfHxBWyJAQGl0ZXJhdG9yIl07aWYoIXQpe2lmKEFycmF5LmlzQXJyYXkoQSl8fCh0PWZ1bmN0aW9uKEEsZSl7aWYoQSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXJldHVybiBIQShBLGUpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChBKS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PXQmJkEuY29uc3RydWN0b3ImJih0PUEuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT10fHwiU2V0Ij09PXQ/QXJyYXkuZnJvbShBKToiQXJndW1lbnRzIj09PXR8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KHQpP0hBKEEsZSk6dm9pZCAwfX0oQSkpfHxlJiZBJiYibnVtYmVyIj09dHlwZW9mIEEubGVuZ3RoKXt0JiYoQT10KTt2YXIgbj0wLGk9ZnVuY3Rpb24oKXt9O3JldHVybntzOmksbjpmdW5jdGlvbigpe3JldHVybiBuPj1BLmxlbmd0aD97ZG9uZTohMH06e2RvbmU6ITEsdmFsdWU6QVtuKytdfX0sZTpmdW5jdGlvbihBKXt0aHJvdyBBfSxmOml9fXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBpdGVyYXRlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX12YXIgcixvPSEwLHM9ITE7cmV0dXJue3M6ZnVuY3Rpb24oKXt0PXQuY2FsbChBKX0sbjpmdW5jdGlvbigpe3ZhciBBPXQubmV4dCgpO3JldHVybiBvPUEuZG9uZSxBfSxlOmZ1bmN0aW9uKEEpe3M9ITAscj1BfSxmOmZ1bmN0aW9uKCl7dHJ5e298fG51bGw9PXQucmV0dXJufHx0LnJldHVybigpfWZpbmFsbHl7aWYocyl0aHJvdyByfX19fWZ1bmN0aW9uIEhBKEEsZSl7KG51bGw9PWV8fGU+QS5sZW5ndGgpJiYoZT1BLmxlbmd0aCk7Zm9yKHZhciB0PTAsbj1uZXcgQXJyYXkoZSk7dDxlO3QrKyluW3RdPUFbdF07cmV0dXJuIG59dmFyIHZBPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gQShlKXtEQSh0aGlzLEEpLHRoaXMud3JhcHBlZE9iamVjdD1lfXJldHVybiBOQShBLFt7a2V5OiJrZXlzIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLndyYXBwZWRPYmplY3QpfX0se2tleToiZ2V0Iix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gVUEodGhpcy53cmFwcGVkT2JqZWN0LEEpfX0se2tleToic2V0Iix2YWx1ZTpmdW5jdGlvbihBLGUpe3JldHVybiB5QSh0aGlzLndyYXBwZWRPYmplY3QsQSxlKSx0aGlzfX0se2tleToiaGFzIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gQSBpbiB0aGlzLndyYXBwZWRPYmplY3R9fV0pLEF9KCk7ZnVuY3Rpb24ga0EoKXtyZXR1cm4gbmV3IE1hcH1mdW5jdGlvbiBqQShBKXtpZighQSlyZXR1cm4ga0EoKTtpZihKQShBKSlyZXR1cm4gQTtpZihtKEEpKXJldHVybiBuZXcgdkEoQSk7dGhyb3cgbmV3IEVycm9yKCJjcmVhdGVNYXAgY2FuIGNyZWF0ZSBtYXBzIGZyb20gb2JqZWN0cyBvciBNYXBzIil9ZnVuY3Rpb24gSkEoQSl7cmV0dXJuISFBJiYoQSBpbnN0YW5jZW9mIE1hcHx8QSBpbnN0YW5jZW9mIHZBfHwiZnVuY3Rpb24iPT10eXBlb2YgQS5zZXQmJiJmdW5jdGlvbiI9PXR5cGVvZiBBLmdldCYmImZ1bmN0aW9uIj09dHlwZW9mIEEua2V5cyYmImZ1bmN0aW9uIj09dHlwZW9mIEEuaGFzKX1mdW5jdGlvbiB6QShBKXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCx0PW5ldyBBcnJheShlPjE/ZS0xOjApLG49MTtuPGU7bisrKXRbbi0xXT1hcmd1bWVudHNbbl07Zm9yKHZhciBpPTAscj10O2k8ci5sZW5ndGg7aSsrKXt2YXIgbz1yW2ldO2lmKG8paWYoSkEobykpe3ZhciBzLGE9YkEoby5rZXlzKCkpO3RyeXtmb3IoYS5zKCk7IShzPWEubigpKS5kb25lOyl7dmFyIEI9cy52YWx1ZTtBLnNldChCLG8uZ2V0KEIpKX19Y2F0Y2goQSl7YS5lKEEpfWZpbmFsbHl7YS5mKCl9fWVsc2UgaWYobShvKSlmb3IodmFyIGM9MCxnPU9iamVjdC5rZXlzKG8pO2M8Zy5sZW5ndGg7YysrKXt2YXIgRT1nW2NdO0Euc2V0KEUsb1tFXSl9fXJldHVybiBBfXZhciBMQT1mdW5jdGlvbigpe3JldHVybiBMQT1PLmNyZWF0ZSxPfSxQQT1wQSgidHlwZWQiLFsiP0JpZ051bWJlciIsIj9Db21wbGV4IiwiP0RlbnNlTWF0cml4IiwiP0ZyYWN0aW9uIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuQmlnTnVtYmVyLG49QS5Db21wbGV4LGk9QS5EZW5zZU1hdHJpeCx4PUEuRnJhY3Rpb24sUD1MQSgpO3JldHVybiBQLmNsZWFyKCksUC5hZGRUeXBlcyhbe25hbWU6Im51bWJlciIsdGVzdDp0fSx7bmFtZToiQ29tcGxleCIsdGVzdDpvfSx7bmFtZToiQmlnTnVtYmVyIix0ZXN0OnJ9LHtuYW1lOiJGcmFjdGlvbiIsdGVzdDpzfSx7bmFtZToiVW5pdCIsdGVzdDphfSx7bmFtZToiaWRlbnRpZmllciIsdGVzdDpmdW5jdGlvbihBKXtyZXR1cm4gQiYmL14oPzpbQS1aYS16XHhBQVx4QjVceEJBXHhDMC1ceEQ2XHhEOC1ceEY2XHhGOC1cdTAyQzFcdTAyQzYtXHUwMkQxXHUwMkUwLVx1MDJFNFx1MDJFQ1x1MDJFRVx1MDM3MC1cdTAzNzRcdTAzNzZcdTAzNzdcdTAzN0EtXHUwMzdEXHUwMzdGXHUwMzg2XHUwMzg4LVx1MDM4QVx1MDM4Q1x1MDM4RS1cdTAzQTFcdTAzQTMtXHUwM0Y1XHUwM0Y3LVx1MDQ4MVx1MDQ4QS1cdTA1MkZcdTA1MzEtXHUwNTU2XHUwNTU5XHUwNTYwLVx1MDU4OFx1MDVEMC1cdTA1RUFcdTA1RUYtXHUwNUYyXHUwNjIwLVx1MDY0QVx1MDY2RVx1MDY2Rlx1MDY3MS1cdTA2RDNcdTA2RDVcdTA2RTVcdTA2RTZcdTA2RUVcdTA2RUZcdTA2RkEtXHUwNkZDXHUwNkZGXHUwNzEwXHUwNzEyLVx1MDcyRlx1MDc0RC1cdTA3QTVcdTA3QjFcdTA3Q0EtXHUwN0VBXHUwN0Y0XHUwN0Y1XHUwN0ZBXHUwODAwLVx1MDgxNVx1MDgxQVx1MDgyNFx1MDgyOFx1MDg0MC1cdTA4NThcdTA4NjAtXHUwODZBXHUwODcwLVx1MDg4N1x1MDg4OS1cdTA4OEVcdTA4QTAtXHUwOEM5XHUwOTA0LVx1MDkzOVx1MDkzRFx1MDk1MFx1MDk1OC1cdTA5NjFcdTA5NzEtXHUwOTgwXHUwOTg1LVx1MDk4Q1x1MDk4Rlx1MDk5MFx1MDk5My1cdTA5QThcdTA5QUEtXHUwOUIwXHUwOUIyXHUwOUI2LVx1MDlCOVx1MDlCRFx1MDlDRVx1MDlEQ1x1MDlERFx1MDlERi1cdTA5RTFcdTA5RjBcdTA5RjFcdTA5RkNcdTBBMDUtXHUwQTBBXHUwQTBGXHUwQTEwXHUwQTEzLVx1MEEyOFx1MEEyQS1cdTBBMzBcdTBBMzJcdTBBMzNcdTBBMzVcdTBBMzZcdTBBMzhcdTBBMzlcdTBBNTktXHUwQTVDXHUwQTVFXHUwQTcyLVx1MEE3NFx1MEE4NS1cdTBBOERcdTBBOEYtXHUwQTkxXHUwQTkzLVx1MEFBOFx1MEFBQS1cdTBBQjBcdTBBQjJcdTBBQjNcdTBBQjUtXHUwQUI5XHUwQUJEXHUwQUQwXHUwQUUwXHUwQUUxXHUwQUY5XHUwQjA1LVx1MEIwQ1x1MEIwRlx1MEIxMFx1MEIxMy1cdTBCMjhcdTBCMkEtXHUwQjMwXHUwQjMyXHUwQjMzXHUwQjM1LVx1MEIzOVx1MEIzRFx1MEI1Q1x1MEI1RFx1MEI1Ri1cdTBCNjFcdTBCNzFcdTBCODNcdTBCODUtXHUwQjhBXHUwQjhFLVx1MEI5MFx1MEI5Mi1cdTBCOTVcdTBCOTlcdTBCOUFcdTBCOUNcdTBCOUVcdTBCOUZcdTBCQTNcdTBCQTRcdTBCQTgtXHUwQkFBXHUwQkFFLVx1MEJCOVx1MEJEMFx1MEMwNS1cdTBDMENcdTBDMEUtXHUwQzEwXHUwQzEyLVx1MEMyOFx1MEMyQS1cdTBDMzlcdTBDM0RcdTBDNTgtXHUwQzVBXHUwQzVEXHUwQzYwXHUwQzYxXHUwQzgwXHUwQzg1LVx1MEM4Q1x1MEM4RS1cdTBDOTBcdTBDOTItXHUwQ0E4XHUwQ0FBLVx1MENCM1x1MENCNS1cdTBDQjlcdTBDQkRcdTBDRERcdTBDREVcdTBDRTBcdTBDRTFcdTBDRjFcdTBDRjJcdTBEMDQtXHUwRDBDXHUwRDBFLVx1MEQxMFx1MEQxMi1cdTBEM0FcdTBEM0RcdTBENEVcdTBENTQtXHUwRDU2XHUwRDVGLVx1MEQ2MVx1MEQ3QS1cdTBEN0ZcdTBEODUtXHUwRDk2XHUwRDlBLVx1MERCMVx1MERCMy1cdTBEQkJcdTBEQkRcdTBEQzAtXHUwREM2XHUwRTAxLVx1MEUzMFx1MEUzMlx1MEUzM1x1MEU0MC1cdTBFNDZcdTBFODFcdTBFODJcdTBFODRcdTBFODYtXHUwRThBXHUwRThDLVx1MEVBM1x1MEVBNVx1MEVBNy1cdTBFQjBcdTBFQjJcdTBFQjNcdTBFQkRcdTBFQzAtXHUwRUM0XHUwRUM2XHUwRURDLVx1MEVERlx1MEYwMFx1MEY0MC1cdTBGNDdcdTBGNDktXHUwRjZDXHUwRjg4LVx1MEY4Q1x1MTAwMC1cdTEwMkFcdTEwM0ZcdTEwNTAtXHUxMDU1XHUxMDVBLVx1MTA1RFx1MTA2MVx1MTA2NVx1MTA2Nlx1MTA2RS1cdTEwNzBcdTEwNzUtXHUxMDgxXHUxMDhFXHUxMEEwLVx1MTBDNVx1MTBDN1x1MTBDRFx1MTBEMC1cdTEwRkFcdTEwRkMtXHUxMjQ4XHUxMjRBLVx1MTI0RFx1MTI1MC1cdTEyNTZcdTEyNThcdTEyNUEtXHUxMjVEXHUxMjYwLVx1MTI4OFx1MTI4QS1cdTEyOERcdTEyOTAtXHUxMkIwXHUxMkIyLVx1MTJCNVx1MTJCOC1cdTEyQkVcdTEyQzBcdTEyQzItXHUxMkM1XHUxMkM4LVx1MTJENlx1MTJEOC1cdTEzMTBcdTEzMTItXHUxMzE1XHUxMzE4LVx1MTM1QVx1MTM4MC1cdTEzOEZcdTEzQTAtXHUxM0Y1XHUxM0Y4LVx1MTNGRFx1MTQwMS1cdTE2NkNcdTE2NkYtXHUxNjdGXHUxNjgxLVx1MTY5QVx1MTZBMC1cdTE2RUFcdTE2RjEtXHUxNkY4XHUxNzAwLVx1MTcxMVx1MTcxRi1cdTE3MzFcdTE3NDAtXHUxNzUxXHUxNzYwLVx1MTc2Q1x1MTc2RS1cdTE3NzBcdTE3ODAtXHUxN0IzXHUxN0Q3XHUxN0RDXHUxODIwLVx1MTg3OFx1MTg4MC1cdTE4ODRcdTE4ODctXHUxOEE4XHUxOEFBXHUxOEIwLVx1MThGNVx1MTkwMC1cdTE5MUVcdTE5NTAtXHUxOTZEXHUxOTcwLVx1MTk3NFx1MTk4MC1cdTE5QUJcdTE5QjAtXHUxOUM5XHUxQTAwLVx1MUExNlx1MUEyMC1cdTFBNTRcdTFBQTdcdTFCMDUtXHUxQjMzXHUxQjQ1LVx1MUI0Q1x1MUI4My1cdTFCQTBcdTFCQUVcdTFCQUZcdTFCQkEtXHUxQkU1XHUxQzAwLVx1MUMyM1x1MUM0RC1cdTFDNEZcdTFDNUEtXHUxQzdEXHUxQzgwLVx1MUM4OFx1MUM5MC1cdTFDQkFcdTFDQkQtXHUxQ0JGXHUxQ0U5LVx1MUNFQ1x1MUNFRS1cdTFDRjNcdTFDRjVcdTFDRjZcdTFDRkFcdTFEMDAtXHUxREJGXHUxRTAwLVx1MUYxNVx1MUYxOC1cdTFGMURcdTFGMjAtXHUxRjQ1XHUxRjQ4LVx1MUY0RFx1MUY1MC1cdTFGNTdcdTFGNTlcdTFGNUJcdTFGNURcdTFGNUYtXHUxRjdEXHUxRjgwLVx1MUZCNFx1MUZCNi1cdTFGQkNcdTFGQkVcdTFGQzItXHUxRkM0XHUxRkM2LVx1MUZDQ1x1MUZEMC1cdTFGRDNcdTFGRDYtXHUxRkRCXHUxRkUwLVx1MUZFQ1x1MUZGMi1cdTFGRjRcdTFGRjYtXHUxRkZDXHUyMDcxXHUyMDdGXHUyMDkwLVx1MjA5Q1x1MjEwMlx1MjEwN1x1MjEwQS1cdTIxMTNcdTIxMTVcdTIxMTktXHUyMTFEXHUyMTI0XHUyMTI2XHUyMTI4XHUyMTJBLVx1MjEyRFx1MjEyRi1cdTIxMzlcdTIxM0MtXHUyMTNGXHUyMTQ1LVx1MjE0OVx1MjE0RVx1MjE4M1x1MjE4NFx1MkMwMC1cdTJDRTRcdTJDRUItXHUyQ0VFXHUyQ0YyXHUyQ0YzXHUyRDAwLVx1MkQyNVx1MkQyN1x1MkQyRFx1MkQzMC1cdTJENjdcdTJENkZcdTJEODAtXHUyRDk2XHUyREEwLVx1MkRBNlx1MkRBOC1cdTJEQUVcdTJEQjAtXHUyREI2XHUyREI4LVx1MkRCRVx1MkRDMC1cdTJEQzZcdTJEQzgtXHUyRENFXHUyREQwLVx1MkRENlx1MkREOC1cdTJEREVcdTJFMkZcdTMwMDVcdTMwMDZcdTMwMzEtXHUzMDM1XHUzMDNCXHUzMDNDXHUzMDQxLVx1MzA5Nlx1MzA5RC1cdTMwOUZcdTMwQTEtXHUzMEZBXHUzMEZDLVx1MzBGRlx1MzEwNS1cdTMxMkZcdTMxMzEtXHUzMThFXHUzMUEwLVx1MzFCRlx1MzFGMC1cdTMxRkZcdTM0MDAtXHU0REJGXHU0RTAwLVx1QTQ4Q1x1QTREMC1cdUE0RkRcdUE1MDAtXHVBNjBDXHVBNjEwLVx1QTYxRlx1QTYyQVx1QTYyQlx1QTY0MC1cdUE2NkVcdUE2N0YtXHVBNjlEXHVBNkEwLVx1QTZFNVx1QTcxNy1cdUE3MUZcdUE3MjItXHVBNzg4XHVBNzhCLVx1QTdDQVx1QTdEMFx1QTdEMVx1QTdEM1x1QTdENS1cdUE3RDlcdUE3RjItXHVBODAxXHVBODAzLVx1QTgwNVx1QTgwNy1cdUE4MEFcdUE4MEMtXHVBODIyXHVBODQwLVx1QTg3M1x1QTg4Mi1cdUE4QjNcdUE4RjItXHVBOEY3XHVBOEZCXHVBOEZEXHVBOEZFXHVBOTBBLVx1QTkyNVx1QTkzMC1cdUE5NDZcdUE5NjAtXHVBOTdDXHVBOTg0LVx1QTlCMlx1QTlDRlx1QTlFMC1cdUE5RTRcdUE5RTYtXHVBOUVGXHVBOUZBLVx1QTlGRVx1QUEwMC1cdUFBMjhcdUFBNDAtXHVBQTQyXHVBQTQ0LVx1QUE0Qlx1QUE2MC1cdUFBNzZcdUFBN0FcdUFBN0UtXHVBQUFGXHVBQUIxXHVBQUI1XHVBQUI2XHVBQUI5LVx1QUFCRFx1QUFDMFx1QUFDMlx1QUFEQi1cdUFBRERcdUFBRTAtXHVBQUVBXHVBQUYyLVx1QUFGNFx1QUIwMS1cdUFCMDZcdUFCMDktXHVBQjBFXHVBQjExLVx1QUIxNlx1QUIyMC1cdUFCMjZcdUFCMjgtXHVBQjJFXHVBQjMwLVx1QUI1QVx1QUI1Qy1cdUFCNjlcdUFCNzAtXHVBQkUyXHVBQzAwLVx1RDdBM1x1RDdCMC1cdUQ3QzZcdUQ3Q0ItXHVEN0ZCXHVGOTAwLVx1RkE2RFx1RkE3MC1cdUZBRDlcdUZCMDAtXHVGQjA2XHVGQjEzLVx1RkIxN1x1RkIxRFx1RkIxRi1cdUZCMjhcdUZCMkEtXHVGQjM2XHVGQjM4LVx1RkIzQ1x1RkIzRVx1RkI0MFx1RkI0MVx1RkI0M1x1RkI0NFx1RkI0Ni1cdUZCQjFcdUZCRDMtXHVGRDNEXHVGRDUwLVx1RkQ4Rlx1RkQ5Mi1cdUZEQzdcdUZERjAtXHVGREZCXHVGRTcwLVx1RkU3NFx1RkU3Ni1cdUZFRkNcdUZGMjEtXHVGRjNBXHVGRjQxLVx1RkY1QVx1RkY2Ni1cdUZGQkVcdUZGQzItXHVGRkM3XHVGRkNBLVx1RkZDRlx1RkZEMi1cdUZGRDdcdUZGREEtXHVGRkRDXXxcdUQ4MDBbXHVEQzAwLVx1REMwQlx1REMwRC1cdURDMjZcdURDMjgtXHVEQzNBXHVEQzNDXHVEQzNEXHVEQzNGLVx1REM0RFx1REM1MC1cdURDNURcdURDODAtXHVEQ0ZBXHVERTgwLVx1REU5Q1x1REVBMC1cdURFRDBcdURGMDAtXHVERjFGXHVERjJELVx1REY0MFx1REY0Mi1cdURGNDlcdURGNTAtXHVERjc1XHVERjgwLVx1REY5RFx1REZBMC1cdURGQzNcdURGQzgtXHVERkNGXXxcdUQ4MDFbXHVEQzAwLVx1REM5RFx1RENCMC1cdURDRDNcdURDRDgtXHVEQ0ZCXHVERDAwLVx1REQyN1x1REQzMC1cdURENjNcdURENzAtXHVERDdBXHVERDdDLVx1REQ4QVx1REQ4Qy1cdUREOTJcdUREOTRcdUREOTVcdUREOTctXHVEREExXHVEREEzLVx1RERCMVx1RERCMy1cdUREQjlcdUREQkJcdUREQkNcdURFMDAtXHVERjM2XHVERjQwLVx1REY1NVx1REY2MC1cdURGNjdcdURGODAtXHVERjg1XHVERjg3LVx1REZCMFx1REZCMi1cdURGQkFdfFx1RDgwMltcdURDMDAtXHVEQzA1XHVEQzA4XHVEQzBBLVx1REMzNVx1REMzN1x1REMzOFx1REMzQ1x1REMzRi1cdURDNTVcdURDNjAtXHVEQzc2XHVEQzgwLVx1REM5RVx1RENFMC1cdURDRjJcdURDRjRcdURDRjVcdUREMDAtXHVERDE1XHVERDIwLVx1REQzOVx1REQ4MC1cdUREQjdcdUREQkVcdUREQkZcdURFMDBcdURFMTAtXHVERTEzXHVERTE1LVx1REUxN1x1REUxOS1cdURFMzVcdURFNjAtXHVERTdDXHVERTgwLVx1REU5Q1x1REVDMC1cdURFQzdcdURFQzktXHVERUU0XHVERjAwLVx1REYzNVx1REY0MC1cdURGNTVcdURGNjAtXHVERjcyXHVERjgwLVx1REY5MV18XHVEODAzW1x1REMwMC1cdURDNDhcdURDODAtXHVEQ0IyXHVEQ0MwLVx1RENGMlx1REQwMC1cdUREMjNcdURFODAtXHVERUE5XHVERUIwXHVERUIxXHVERjAwLVx1REYxQ1x1REYyN1x1REYzMC1cdURGNDVcdURGNzAtXHVERjgxXHVERkIwLVx1REZDNFx1REZFMC1cdURGRjZdfFx1RDgwNFtcdURDMDMtXHVEQzM3XHVEQzcxXHVEQzcyXHVEQzc1XHVEQzgzLVx1RENBRlx1RENEMC1cdURDRThcdUREMDMtXHVERDI2XHVERDQ0XHVERDQ3XHVERDUwLVx1REQ3Mlx1REQ3Nlx1REQ4My1cdUREQjJcdUREQzEtXHVEREM0XHVERERBXHVERERDXHVERTAwLVx1REUxMVx1REUxMy1cdURFMkJcdURFM0ZcdURFNDBcdURFODAtXHVERTg2XHVERTg4XHVERThBLVx1REU4RFx1REU4Ri1cdURFOURcdURFOUYtXHVERUE4XHVERUIwLVx1REVERVx1REYwNS1cdURGMENcdURGMEZcdURGMTBcdURGMTMtXHVERjI4XHVERjJBLVx1REYzMFx1REYzMlx1REYzM1x1REYzNS1cdURGMzlcdURGM0RcdURGNTBcdURGNUQtXHVERjYxXXxcdUQ4MDVbXHVEQzAwLVx1REMzNFx1REM0Ny1cdURDNEFcdURDNUYtXHVEQzYxXHVEQzgwLVx1RENBRlx1RENDNFx1RENDNVx1RENDN1x1REQ4MC1cdUREQUVcdURERDgtXHVERERCXHVERTAwLVx1REUyRlx1REU0NFx1REU4MC1cdURFQUFcdURFQjhcdURGMDAtXHVERjFBXHVERjQwLVx1REY0Nl18XHVEODA2W1x1REMwMC1cdURDMkJcdURDQTAtXHVEQ0RGXHVEQ0ZGLVx1REQwNlx1REQwOVx1REQwQy1cdUREMTNcdUREMTVcdUREMTZcdUREMTgtXHVERDJGXHVERDNGXHVERDQxXHVEREEwLVx1RERBN1x1RERBQS1cdURERDBcdURERTFcdURERTNcdURFMDBcdURFMEItXHVERTMyXHVERTNBXHVERTUwXHVERTVDLVx1REU4OVx1REU5RFx1REVCMC1cdURFRjhdfFx1RDgwN1tcdURDMDAtXHVEQzA4XHVEQzBBLVx1REMyRVx1REM0MFx1REM3Mi1cdURDOEZcdUREMDAtXHVERDA2XHVERDA4XHVERDA5XHVERDBCLVx1REQzMFx1REQ0Nlx1REQ2MC1cdURENjVcdURENjdcdURENjhcdURENkEtXHVERDg5XHVERDk4XHVERUUwLVx1REVGMlx1REYwMlx1REYwNC1cdURGMTBcdURGMTItXHVERjMzXHVERkIwXXxcdUQ4MDhbXHVEQzAwLVx1REY5OV18XHVEODA5W1x1REM4MC1cdURENDNdfFx1RDgwQltcdURGOTAtXHVERkYwXXxbXHVEODBDXHVEODFDLVx1RDgyMFx1RDgyMlx1RDg0MC1cdUQ4NjhcdUQ4NkEtXHVEODZDXHVEODZGLVx1RDg3Mlx1RDg3NC1cdUQ4NzlcdUQ4ODAtXHVEODgzXHVEODg1LVx1RDg4N11bXHVEQzAwLVx1REZGRl18XHVEODBEW1x1REMwMC1cdURDMkZcdURDNDEtXHVEQzQ2XXxcdUQ4MTFbXHVEQzAwLVx1REU0Nl18XHVEODFBW1x1REMwMC1cdURFMzhcdURFNDAtXHVERTVFXHVERTcwLVx1REVCRVx1REVEMC1cdURFRURcdURGMDAtXHVERjJGXHVERjQwLVx1REY0M1x1REY2My1cdURGNzdcdURGN0QtXHVERjhGXXxcdUQ4MUJbXHVERTQwLVx1REU3Rlx1REYwMC1cdURGNEFcdURGNTBcdURGOTMtXHVERjlGXHVERkUwXHVERkUxXHVERkUzXXxcdUQ4MjFbXHVEQzAwLVx1REZGN118XHVEODIzW1x1REMwMC1cdURDRDVcdUREMDAtXHVERDA4XXxcdUQ4MkJbXHVERkYwLVx1REZGM1x1REZGNS1cdURGRkJcdURGRkRcdURGRkVdfFx1RDgyQ1tcdURDMDAtXHVERDIyXHVERDMyXHVERDUwLVx1REQ1Mlx1REQ1NVx1REQ2NC1cdURENjdcdURENzAtXHVERUZCXXxcdUQ4MkZbXHVEQzAwLVx1REM2QVx1REM3MC1cdURDN0NcdURDODAtXHVEQzg4XHVEQzkwLVx1REM5OV18XHVEODM1W1x1REMwMC1cdURDNTRcdURDNTYtXHVEQzlDXHVEQzlFXHVEQzlGXHVEQ0EyXHVEQ0E1XHVEQ0E2XHVEQ0E5LVx1RENBQ1x1RENBRS1cdURDQjlcdURDQkJcdURDQkQtXHVEQ0MzXHVEQ0M1LVx1REQwNVx1REQwNy1cdUREMEFcdUREMEQtXHVERDE0XHVERDE2LVx1REQxQ1x1REQxRS1cdUREMzlcdUREM0ItXHVERDNFXHVERDQwLVx1REQ0NFx1REQ0Nlx1REQ0QS1cdURENTBcdURENTItXHVERUE1XHVERUE4LVx1REVDMFx1REVDMi1cdURFREFcdURFREMtXHVERUZBXHVERUZDLVx1REYxNFx1REYxNi1cdURGMzRcdURGMzYtXHVERjRFXHVERjUwLVx1REY2RVx1REY3MC1cdURGODhcdURGOEEtXHVERkE4XHVERkFBLVx1REZDMlx1REZDNC1cdURGQ0JdfFx1RDgzN1tcdURGMDAtXHVERjFFXHVERjI1LVx1REYyQV18XHVEODM4W1x1REMzMC1cdURDNkRcdUREMDAtXHVERDJDXHVERDM3LVx1REQzRFx1REQ0RVx1REU5MC1cdURFQURcdURFQzAtXHVERUVCXXxcdUQ4MzlbXHVEQ0QwLVx1RENFQlx1REZFMC1cdURGRTZcdURGRTgtXHVERkVCXHVERkVEXHVERkVFXHVERkYwLVx1REZGRV18XHVEODNBW1x1REMwMC1cdURDQzRcdUREMDAtXHVERDQzXHVERDRCXXxcdUQ4M0JbXHVERTAwLVx1REUwM1x1REUwNS1cdURFMUZcdURFMjFcdURFMjJcdURFMjRcdURFMjdcdURFMjktXHVERTMyXHVERTM0LVx1REUzN1x1REUzOVx1REUzQlx1REU0Mlx1REU0N1x1REU0OVx1REU0Qlx1REU0RC1cdURFNEZcdURFNTFcdURFNTJcdURFNTRcdURFNTdcdURFNTlcdURFNUJcdURFNURcdURFNUZcdURFNjFcdURFNjJcdURFNjRcdURFNjctXHVERTZBXHVERTZDLVx1REU3Mlx1REU3NC1cdURFNzdcdURFNzktXHVERTdDXHVERTdFXHVERTgwLVx1REU4OVx1REU4Qi1cdURFOUJcdURFQTEtXHVERUEzXHVERUE1LVx1REVBOVx1REVBQi1cdURFQkJdfFx1RDg2OVtcdURDMDAtXHVERURGXHVERjAwLVx1REZGRl18XHVEODZEW1x1REMwMC1cdURGMzlcdURGNDAtXHVERkZGXXxcdUQ4NkVbXHVEQzAwLVx1REMxRFx1REMyMC1cdURGRkZdfFx1RDg3M1tcdURDMDAtXHVERUExXHVERUIwLVx1REZGRl18XHVEODdBW1x1REMwMC1cdURGRTBdfFx1RDg3RVtcdURDMDAtXHVERTFEXXxcdUQ4ODRbXHVEQzAwLVx1REY0QVx1REY1MC1cdURGRkZdfFx1RDg4OFtcdURDMDAtXHVERkFGXSkoPzpbMC05QS1aYS16XHhBQVx4QjVceEJBXHhDMC1ceEQ2XHhEOC1ceEY2XHhGOC1cdTAyQzFcdTAyQzYtXHUwMkQxXHUwMkUwLVx1MDJFNFx1MDJFQ1x1MDJFRVx1MDM3MC1cdTAzNzRcdTAzNzZcdTAzNzdcdTAzN0EtXHUwMzdEXHUwMzdGXHUwMzg2XHUwMzg4LVx1MDM4QVx1MDM4Q1x1MDM4RS1cdTAzQTFcdTAzQTMtXHUwM0Y1XHUwM0Y3LVx1MDQ4MVx1MDQ4QS1cdTA1MkZcdTA1MzEtXHUwNTU2XHUwNTU5XHUwNTYwLVx1MDU4OFx1MDVEMC1cdTA1RUFcdTA1RUYtXHUwNUYyXHUwNjIwLVx1MDY0QVx1MDY2RVx1MDY2Rlx1MDY3MS1cdTA2RDNcdTA2RDVcdTA2RTVcdTA2RTZcdTA2RUVcdTA2RUZcdTA2RkEtXHUwNkZDXHUwNkZGXHUwNzEwXHUwNzEyLVx1MDcyRlx1MDc0RC1cdTA3QTVcdTA3QjFcdTA3Q0EtXHUwN0VBXHUwN0Y0XHUwN0Y1XHUwN0ZBXHUwODAwLVx1MDgxNVx1MDgxQVx1MDgyNFx1MDgyOFx1MDg0MC1cdTA4NThcdTA4NjAtXHUwODZBXHUwODcwLVx1MDg4N1x1MDg4OS1cdTA4OEVcdTA4QTAtXHUwOEM5XHUwOTA0LVx1MDkzOVx1MDkzRFx1MDk1MFx1MDk1OC1cdTA5NjFcdTA5NzEtXHUwOTgwXHUwOTg1LVx1MDk4Q1x1MDk4Rlx1MDk5MFx1MDk5My1cdTA5QThcdTA5QUEtXHUwOUIwXHUwOUIyXHUwOUI2LVx1MDlCOVx1MDlCRFx1MDlDRVx1MDlEQ1x1MDlERFx1MDlERi1cdTA5RTFcdTA5RjBcdTA5RjFcdTA5RkNcdTBBMDUtXHUwQTBBXHUwQTBGXHUwQTEwXHUwQTEzLVx1MEEyOFx1MEEyQS1cdTBBMzBcdTBBMzJcdTBBMzNcdTBBMzVcdTBBMzZcdTBBMzhcdTBBMzlcdTBBNTktXHUwQTVDXHUwQTVFXHUwQTcyLVx1MEE3NFx1MEE4NS1cdTBBOERcdTBBOEYtXHUwQTkxXHUwQTkzLVx1MEFBOFx1MEFBQS1cdTBBQjBcdTBBQjJcdTBBQjNcdTBBQjUtXHUwQUI5XHUwQUJEXHUwQUQwXHUwQUUwXHUwQUUxXHUwQUY5XHUwQjA1LVx1MEIwQ1x1MEIwRlx1MEIxMFx1MEIxMy1cdTBCMjhcdTBCMkEtXHUwQjMwXHUwQjMyXHUwQjMzXHUwQjM1LVx1MEIzOVx1MEIzRFx1MEI1Q1x1MEI1RFx1MEI1Ri1cdTBCNjFcdTBCNzFcdTBCODNcdTBCODUtXHUwQjhBXHUwQjhFLVx1MEI5MFx1MEI5Mi1cdTBCOTVcdTBCOTlcdTBCOUFcdTBCOUNcdTBCOUVcdTBCOUZcdTBCQTNcdTBCQTRcdTBCQTgtXHUwQkFBXHUwQkFFLVx1MEJCOVx1MEJEMFx1MEMwNS1cdTBDMENcdTBDMEUtXHUwQzEwXHUwQzEyLVx1MEMyOFx1MEMyQS1cdTBDMzlcdTBDM0RcdTBDNTgtXHUwQzVBXHUwQzVEXHUwQzYwXHUwQzYxXHUwQzgwXHUwQzg1LVx1MEM4Q1x1MEM4RS1cdTBDOTBcdTBDOTItXHUwQ0E4XHUwQ0FBLVx1MENCM1x1MENCNS1cdTBDQjlcdTBDQkRcdTBDRERcdTBDREVcdTBDRTBcdTBDRTFcdTBDRjFcdTBDRjJcdTBEMDQtXHUwRDBDXHUwRDBFLVx1MEQxMFx1MEQxMi1cdTBEM0FcdTBEM0RcdTBENEVcdTBENTQtXHUwRDU2XHUwRDVGLVx1MEQ2MVx1MEQ3QS1cdTBEN0ZcdTBEODUtXHUwRDk2XHUwRDlBLVx1MERCMVx1MERCMy1cdTBEQkJcdTBEQkRcdTBEQzAtXHUwREM2XHUwRTAxLVx1MEUzMFx1MEUzMlx1MEUzM1x1MEU0MC1cdTBFNDZcdTBFODFcdTBFODJcdTBFODRcdTBFODYtXHUwRThBXHUwRThDLVx1MEVBM1x1MEVBNVx1MEVBNy1cdTBFQjBcdTBFQjJcdTBFQjNcdTBFQkRcdTBFQzAtXHUwRUM0XHUwRUM2XHUwRURDLVx1MEVERlx1MEYwMFx1MEY0MC1cdTBGNDdcdTBGNDktXHUwRjZDXHUwRjg4LVx1MEY4Q1x1MTAwMC1cdTEwMkFcdTEwM0ZcdTEwNTAtXHUxMDU1XHUxMDVBLVx1MTA1RFx1MTA2MVx1MTA2NVx1MTA2Nlx1MTA2RS1cdTEwNzBcdTEwNzUtXHUxMDgxXHUxMDhFXHUxMEEwLVx1MTBDNVx1MTBDN1x1MTBDRFx1MTBEMC1cdTEwRkFcdTEwRkMtXHUxMjQ4XHUxMjRBLVx1MTI0RFx1MTI1MC1cdTEyNTZcdTEyNThcdTEyNUEtXHUxMjVEXHUxMjYwLVx1MTI4OFx1MTI4QS1cdTEyOERcdTEyOTAtXHUxMkIwXHUxMkIyLVx1MTJCNVx1MTJCOC1cdTEyQkVcdTEyQzBcdTEyQzItXHUxMkM1XHUxMkM4LVx1MTJENlx1MTJEOC1cdTEzMTBcdTEzMTItXHUxMzE1XHUxMzE4LVx1MTM1QVx1MTM4MC1cdTEzOEZcdTEzQTAtXHUxM0Y1XHUxM0Y4LVx1MTNGRFx1MTQwMS1cdTE2NkNcdTE2NkYtXHUxNjdGXHUxNjgxLVx1MTY5QVx1MTZBMC1cdTE2RUFcdTE2RjEtXHUxNkY4XHUxNzAwLVx1MTcxMVx1MTcxRi1cdTE3MzFcdTE3NDAtXHUxNzUxXHUxNzYwLVx1MTc2Q1x1MTc2RS1cdTE3NzBcdTE3ODAtXHUxN0IzXHUxN0Q3XHUxN0RDXHUxODIwLVx1MTg3OFx1MTg4MC1cdTE4ODRcdTE4ODctXHUxOEE4XHUxOEFBXHUxOEIwLVx1MThGNVx1MTkwMC1cdTE5MUVcdTE5NTAtXHUxOTZEXHUxOTcwLVx1MTk3NFx1MTk4MC1cdTE5QUJcdTE5QjAtXHUxOUM5XHUxQTAwLVx1MUExNlx1MUEyMC1cdTFBNTRcdTFBQTdcdTFCMDUtXHUxQjMzXHUxQjQ1LVx1MUI0Q1x1MUI4My1cdTFCQTBcdTFCQUVcdTFCQUZcdTFCQkEtXHUxQkU1XHUxQzAwLVx1MUMyM1x1MUM0RC1cdTFDNEZcdTFDNUEtXHUxQzdEXHUxQzgwLVx1MUM4OFx1MUM5MC1cdTFDQkFcdTFDQkQtXHUxQ0JGXHUxQ0U5LVx1MUNFQ1x1MUNFRS1cdTFDRjNcdTFDRjVcdTFDRjZcdTFDRkFcdTFEMDAtXHUxREJGXHUxRTAwLVx1MUYxNVx1MUYxOC1cdTFGMURcdTFGMjAtXHUxRjQ1XHUxRjQ4LVx1MUY0RFx1MUY1MC1cdTFGNTdcdTFGNTlcdTFGNUJcdTFGNURcdTFGNUYtXHUxRjdEXHUxRjgwLVx1MUZCNFx1MUZCNi1cdTFGQkNcdTFGQkVcdTFGQzItXHUxRkM0XHUxRkM2LVx1MUZDQ1x1MUZEMC1cdTFGRDNcdTFGRDYtXHUxRkRCXHUxRkUwLVx1MUZFQ1x1MUZGMi1cdTFGRjRcdTFGRjYtXHUxRkZDXHUyMDcxXHUyMDdGXHUyMDkwLVx1MjA5Q1x1MjEwMlx1MjEwN1x1MjEwQS1cdTIxMTNcdTIxMTVcdTIxMTktXHUyMTFEXHUyMTI0XHUyMTI2XHUyMTI4XHUyMTJBLVx1MjEyRFx1MjEyRi1cdTIxMzlcdTIxM0MtXHUyMTNGXHUyMTQ1LVx1MjE0OVx1MjE0RVx1MjE4M1x1MjE4NFx1MkMwMC1cdTJDRTRcdTJDRUItXHUyQ0VFXHUyQ0YyXHUyQ0YzXHUyRDAwLVx1MkQyNVx1MkQyN1x1MkQyRFx1MkQzMC1cdTJENjdcdTJENkZcdTJEODAtXHUyRDk2XHUyREEwLVx1MkRBNlx1MkRBOC1cdTJEQUVcdTJEQjAtXHUyREI2XHUyREI4LVx1MkRCRVx1MkRDMC1cdTJEQzZcdTJEQzgtXHUyRENFXHUyREQwLVx1MkRENlx1MkREOC1cdTJEREVcdTJFMkZcdTMwMDVcdTMwMDZcdTMwMzEtXHUzMDM1XHUzMDNCXHUzMDNDXHUzMDQxLVx1MzA5Nlx1MzA5RC1cdTMwOUZcdTMwQTEtXHUzMEZBXHUzMEZDLVx1MzBGRlx1MzEwNS1cdTMxMkZcdTMxMzEtXHUzMThFXHUzMUEwLVx1MzFCRlx1MzFGMC1cdTMxRkZcdTM0MDAtXHU0REJGXHU0RTAwLVx1QTQ4Q1x1QTREMC1cdUE0RkRcdUE1MDAtXHVBNjBDXHVBNjEwLVx1QTYxRlx1QTYyQVx1QTYyQlx1QTY0MC1cdUE2NkVcdUE2N0YtXHVBNjlEXHVBNkEwLVx1QTZFNVx1QTcxNy1cdUE3MUZcdUE3MjItXHVBNzg4XHVBNzhCLVx1QTdDQVx1QTdEMFx1QTdEMVx1QTdEM1x1QTdENS1cdUE3RDlcdUE3RjItXHVBODAxXHVBODAzLVx1QTgwNVx1QTgwNy1cdUE4MEFcdUE4MEMtXHVBODIyXHVBODQwLVx1QTg3M1x1QTg4Mi1cdUE4QjNcdUE4RjItXHVBOEY3XHVBOEZCXHVBOEZEXHVBOEZFXHVBOTBBLVx1QTkyNVx1QTkzMC1cdUE5NDZcdUE5NjAtXHVBOTdDXHVBOTg0LVx1QTlCMlx1QTlDRlx1QTlFMC1cdUE5RTRcdUE5RTYtXHVBOUVGXHVBOUZBLVx1QTlGRVx1QUEwMC1cdUFBMjhcdUFBNDAtXHVBQTQyXHVBQTQ0LVx1QUE0Qlx1QUE2MC1cdUFBNzZcdUFBN0FcdUFBN0UtXHVBQUFGXHVBQUIxXHVBQUI1XHVBQUI2XHVBQUI5LVx1QUFCRFx1QUFDMFx1QUFDMlx1QUFEQi1cdUFBRERcdUFBRTAtXHVBQUVBXHVBQUYyLVx1QUFGNFx1QUIwMS1cdUFCMDZcdUFCMDktXHVBQjBFXHVBQjExLVx1QUIxNlx1QUIyMC1cdUFCMjZcdUFCMjgtXHVBQjJFXHVBQjMwLVx1QUI1QVx1QUI1Qy1cdUFCNjlcdUFCNzAtXHVBQkUyXHVBQzAwLVx1RDdBM1x1RDdCMC1cdUQ3QzZcdUQ3Q0ItXHVEN0ZCXHVGOTAwLVx1RkE2RFx1RkE3MC1cdUZBRDlcdUZCMDAtXHVGQjA2XHVGQjEzLVx1RkIxN1x1RkIxRFx1RkIxRi1cdUZCMjhcdUZCMkEtXHVGQjM2XHVGQjM4LVx1RkIzQ1x1RkIzRVx1RkI0MFx1RkI0MVx1RkI0M1x1RkI0NFx1RkI0Ni1cdUZCQjFcdUZCRDMtXHVGRDNEXHVGRDUwLVx1RkQ4Rlx1RkQ5Mi1cdUZEQzdcdUZERjAtXHVGREZCXHVGRTcwLVx1RkU3NFx1RkU3Ni1cdUZFRkNcdUZGMjEtXHVGRjNBXHVGRjQxLVx1RkY1QVx1RkY2Ni1cdUZGQkVcdUZGQzItXHVGRkM3XHVGRkNBLVx1RkZDRlx1RkZEMi1cdUZGRDdcdUZGREEtXHVGRkRDXXxcdUQ4MDBbXHVEQzAwLVx1REMwQlx1REMwRC1cdURDMjZcdURDMjgtXHVEQzNBXHVEQzNDXHVEQzNEXHVEQzNGLVx1REM0RFx1REM1MC1cdURDNURcdURDODAtXHVEQ0ZBXHVERTgwLVx1REU5Q1x1REVBMC1cdURFRDBcdURGMDAtXHVERjFGXHVERjJELVx1REY0MFx1REY0Mi1cdURGNDlcdURGNTAtXHVERjc1XHVERjgwLVx1REY5RFx1REZBMC1cdURGQzNcdURGQzgtXHVERkNGXXxcdUQ4MDFbXHVEQzAwLVx1REM5RFx1RENCMC1cdURDRDNcdURDRDgtXHVEQ0ZCXHVERDAwLVx1REQyN1x1REQzMC1cdURENjNcdURENzAtXHVERDdBXHVERDdDLVx1REQ4QVx1REQ4Qy1cdUREOTJcdUREOTRcdUREOTVcdUREOTctXHVEREExXHVEREEzLVx1RERCMVx1RERCMy1cdUREQjlcdUREQkJcdUREQkNcdURFMDAtXHVERjM2XHVERjQwLVx1REY1NVx1REY2MC1cdURGNjdcdURGODAtXHVERjg1XHVERjg3LVx1REZCMFx1REZCMi1cdURGQkFdfFx1RDgwMltcdURDMDAtXHVEQzA1XHVEQzA4XHVEQzBBLVx1REMzNVx1REMzN1x1REMzOFx1REMzQ1x1REMzRi1cdURDNTVcdURDNjAtXHVEQzc2XHVEQzgwLVx1REM5RVx1RENFMC1cdURDRjJcdURDRjRcdURDRjVcdUREMDAtXHVERDE1XHVERDIwLVx1REQzOVx1REQ4MC1cdUREQjdcdUREQkVcdUREQkZcdURFMDBcdURFMTAtXHVERTEzXHVERTE1LVx1REUxN1x1REUxOS1cdURFMzVcdURFNjAtXHVERTdDXHVERTgwLVx1REU5Q1x1REVDMC1cdURFQzdcdURFQzktXHVERUU0XHVERjAwLVx1REYzNVx1REY0MC1cdURGNTVcdURGNjAtXHVERjcyXHVERjgwLVx1REY5MV18XHVEODAzW1x1REMwMC1cdURDNDhcdURDODAtXHVEQ0IyXHVEQ0MwLVx1RENGMlx1REQwMC1cdUREMjNcdURFODAtXHVERUE5XHVERUIwXHVERUIxXHVERjAwLVx1REYxQ1x1REYyN1x1REYzMC1cdURGNDVcdURGNzAtXHVERjgxXHVERkIwLVx1REZDNFx1REZFMC1cdURGRjZdfFx1RDgwNFtcdURDMDMtXHVEQzM3XHVEQzcxXHVEQzcyXHVEQzc1XHVEQzgzLVx1RENBRlx1RENEMC1cdURDRThcdUREMDMtXHVERDI2XHVERDQ0XHVERDQ3XHVERDUwLVx1REQ3Mlx1REQ3Nlx1REQ4My1cdUREQjJcdUREQzEtXHVEREM0XHVERERBXHVERERDXHVERTAwLVx1REUxMVx1REUxMy1cdURFMkJcdURFM0ZcdURFNDBcdURFODAtXHVERTg2XHVERTg4XHVERThBLVx1REU4RFx1REU4Ri1cdURFOURcdURFOUYtXHVERUE4XHVERUIwLVx1REVERVx1REYwNS1cdURGMENcdURGMEZcdURGMTBcdURGMTMtXHVERjI4XHVERjJBLVx1REYzMFx1REYzMlx1REYzM1x1REYzNS1cdURGMzlcdURGM0RcdURGNTBcdURGNUQtXHVERjYxXXxcdUQ4MDVbXHVEQzAwLVx1REMzNFx1REM0Ny1cdURDNEFcdURDNUYtXHVEQzYxXHVEQzgwLVx1RENBRlx1RENDNFx1RENDNVx1RENDN1x1REQ4MC1cdUREQUVcdURERDgtXHVERERCXHVERTAwLVx1REUyRlx1REU0NFx1REU4MC1cdURFQUFcdURFQjhcdURGMDAtXHVERjFBXHVERjQwLVx1REY0Nl18XHVEODA2W1x1REMwMC1cdURDMkJcdURDQTAtXHVEQ0RGXHVEQ0ZGLVx1REQwNlx1REQwOVx1REQwQy1cdUREMTNcdUREMTVcdUREMTZcdUREMTgtXHVERDJGXHVERDNGXHVERDQxXHVEREEwLVx1RERBN1x1RERBQS1cdURERDBcdURERTFcdURERTNcdURFMDBcdURFMEItXHVERTMyXHVERTNBXHVERTUwXHVERTVDLVx1REU4OVx1REU5RFx1REVCMC1cdURFRjhdfFx1RDgwN1tcdURDMDAtXHVEQzA4XHVEQzBBLVx1REMyRVx1REM0MFx1REM3Mi1cdURDOEZcdUREMDAtXHVERDA2XHVERDA4XHVERDA5XHVERDBCLVx1REQzMFx1REQ0Nlx1REQ2MC1cdURENjVcdURENjdcdURENjhcdURENkEtXHVERDg5XHVERDk4XHVERUUwLVx1REVGMlx1REYwMlx1REYwNC1cdURGMTBcdURGMTItXHVERjMzXHVERkIwXXxcdUQ4MDhbXHVEQzAwLVx1REY5OV18XHVEODA5W1x1REM4MC1cdURENDNdfFx1RDgwQltcdURGOTAtXHVERkYwXXxbXHVEODBDXHVEODFDLVx1RDgyMFx1RDgyMlx1RDg0MC1cdUQ4NjhcdUQ4NkEtXHVEODZDXHVEODZGLVx1RDg3Mlx1RDg3NC1cdUQ4NzlcdUQ4ODAtXHVEODgzXHVEODg1LVx1RDg4N11bXHVEQzAwLVx1REZGRl18XHVEODBEW1x1REMwMC1cdURDMkZcdURDNDEtXHVEQzQ2XXxcdUQ4MTFbXHVEQzAwLVx1REU0Nl18XHVEODFBW1x1REMwMC1cdURFMzhcdURFNDAtXHVERTVFXHVERTcwLVx1REVCRVx1REVEMC1cdURFRURcdURGMDAtXHVERjJGXHVERjQwLVx1REY0M1x1REY2My1cdURGNzdcdURGN0QtXHVERjhGXXxcdUQ4MUJbXHVERTQwLVx1REU3Rlx1REYwMC1cdURGNEFcdURGNTBcdURGOTMtXHVERjlGXHVERkUwXHVERkUxXHVERkUzXXxcdUQ4MjFbXHVEQzAwLVx1REZGN118XHVEODIzW1x1REMwMC1cdURDRDVcdUREMDAtXHVERDA4XXxcdUQ4MkJbXHVERkYwLVx1REZGM1x1REZGNS1cdURGRkJcdURGRkRcdURGRkVdfFx1RDgyQ1tcdURDMDAtXHVERDIyXHVERDMyXHVERDUwLVx1REQ1Mlx1REQ1NVx1REQ2NC1cdURENjdcdURENzAtXHVERUZCXXxcdUQ4MkZbXHVEQzAwLVx1REM2QVx1REM3MC1cdURDN0NcdURDODAtXHVEQzg4XHVEQzkwLVx1REM5OV18XHVEODM1W1x1REMwMC1cdURDNTRcdURDNTYtXHVEQzlDXHVEQzlFXHVEQzlGXHVEQ0EyXHVEQ0E1XHVEQ0E2XHVEQ0E5LVx1RENBQ1x1RENBRS1cdURDQjlcdURDQkJcdURDQkQtXHVEQ0MzXHVEQ0M1LVx1REQwNVx1REQwNy1cdUREMEFcdUREMEQtXHVERDE0XHVERDE2LVx1REQxQ1x1REQxRS1cdUREMzlcdUREM0ItXHVERDNFXHVERDQwLVx1REQ0NFx1REQ0Nlx1REQ0QS1cdURENTBcdURENTItXHVERUE1XHVERUE4LVx1REVDMFx1REVDMi1cdURFREFcdURFREMtXHVERUZBXHVERUZDLVx1REYxNFx1REYxNi1cdURGMzRcdURGMzYtXHVERjRFXHVERjUwLVx1REY2RVx1REY3MC1cdURGODhcdURGOEEtXHVERkE4XHVERkFBLVx1REZDMlx1REZDNC1cdURGQ0JdfFx1RDgzN1tcdURGMDAtXHVERjFFXHVERjI1LVx1REYyQV18XHVEODM4W1x1REMzMC1cdURDNkRcdUREMDAtXHVERDJDXHVERDM3LVx1REQzRFx1REQ0RVx1REU5MC1cdURFQURcdURFQzAtXHVERUVCXXxcdUQ4MzlbXHVEQ0QwLVx1RENFQlx1REZFMC1cdURGRTZcdURGRTgtXHVERkVCXHVERkVEXHVERkVFXHVERkYwLVx1REZGRV18XHVEODNBW1x1REMwMC1cdURDQzRcdUREMDAtXHVERDQzXHVERDRCXXxcdUQ4M0JbXHVERTAwLVx1REUwM1x1REUwNS1cdURFMUZcdURFMjFcdURFMjJcdURFMjRcdURFMjdcdURFMjktXHVERTMyXHVERTM0LVx1REUzN1x1REUzOVx1REUzQlx1REU0Mlx1REU0N1x1REU0OVx1REU0Qlx1REU0RC1cdURFNEZcdURFNTFcdURFNTJcdURFNTRcdURFNTdcdURFNTlcdURFNUJcdURFNURcdURFNUZcdURFNjFcdURFNjJcdURFNjRcdURFNjctXHVERTZBXHVERTZDLVx1REU3Mlx1REU3NC1cdURFNzdcdURFNzktXHVERTdDXHVERTdFXHVERTgwLVx1REU4OVx1REU4Qi1cdURFOUJcdURFQTEtXHVERUEzXHVERUE1LVx1REVBOVx1REVBQi1cdURFQkJdfFx1RDg2OVtcdURDMDAtXHVERURGXHVERjAwLVx1REZGRl18XHVEODZEW1x1REMwMC1cdURGMzlcdURGNDAtXHVERkZGXXxcdUQ4NkVbXHVEQzAwLVx1REMxRFx1REMyMC1cdURGRkZdfFx1RDg3M1tcdURDMDAtXHVERUExXHVERUIwLVx1REZGRl18XHVEODdBW1x1REMwMC1cdURGRTBdfFx1RDg3RVtcdURDMDAtXHVERTFEXXxcdUQ4ODRbXHVEQzAwLVx1REY0QVx1REY1MC1cdURGRkZdfFx1RDg4OFtcdURDMDAtXHVERkFGXSkqJC8udGVzdChBKX19LHtuYW1lOiJzdHJpbmciLHRlc3Q6Qn0se25hbWU6IkNoYWluIix0ZXN0Okx9LHtuYW1lOiJBcnJheSIsdGVzdDpjfSx7bmFtZToiTWF0cml4Iix0ZXN0Omd9LHtuYW1lOiJEZW5zZU1hdHJpeCIsdGVzdDpRfSx7bmFtZToiU3BhcnNlTWF0cml4Iix0ZXN0OnV9LHtuYW1lOiJSYW5nZSIsdGVzdDpsfSx7bmFtZToiSW5kZXgiLHRlc3Q6aH0se25hbWU6ImJvb2xlYW4iLHRlc3Q6d30se25hbWU6IlJlc3VsdFNldCIsdGVzdDpDfSx7bmFtZToiSGVscCIsdGVzdDpJfSx7bmFtZToiZnVuY3Rpb24iLHRlc3Q6TX0se25hbWU6IkRhdGUiLHRlc3Q6ZH0se25hbWU6IlJlZ0V4cCIsdGVzdDpwfSx7bmFtZToibnVsbCIsdGVzdDpGfSx7bmFtZToidW5kZWZpbmVkIix0ZXN0OkR9LHtuYW1lOiJBY2Nlc3Nvck5vZGUiLHRlc3Q6WX0se25hbWU6IkFycmF5Tm9kZSIsdGVzdDpmfSx7bmFtZToiQXNzaWdubWVudE5vZGUiLHRlc3Q6Tn0se25hbWU6IkJsb2NrTm9kZSIsdGVzdDpVfSx7bmFtZToiQ29uZGl0aW9uYWxOb2RlIix0ZXN0Onl9LHtuYW1lOiJDb25zdGFudE5vZGUiLHRlc3Q6VH0se25hbWU6IkZ1bmN0aW9uTm9kZSIsdGVzdDpHfSx7bmFtZToiRnVuY3Rpb25Bc3NpZ25tZW50Tm9kZSIsdGVzdDpSfSx7bmFtZToiSW5kZXhOb2RlIix0ZXN0OlN9LHtuYW1lOiJOb2RlIix0ZXN0OmJ9LHtuYW1lOiJPYmplY3ROb2RlIix0ZXN0Okh9LHtuYW1lOiJPcGVyYXRvck5vZGUiLHRlc3Q6dn0se25hbWU6IlBhcmVudGhlc2lzTm9kZSIsdGVzdDprfSx7bmFtZToiUmFuZ2VOb2RlIix0ZXN0Omp9LHtuYW1lOiJSZWxhdGlvbmFsTm9kZSIsdGVzdDpKfSx7bmFtZToiU3ltYm9sTm9kZSIsdGVzdDp6fSx7bmFtZToiTWFwIix0ZXN0OkpBfSx7bmFtZToiT2JqZWN0Iix0ZXN0Om19XSksUC5hZGRDb252ZXJzaW9ucyhbe2Zyb206Im51bWJlciIsdG86IkJpZ051bWJlciIsY29udmVydDpmdW5jdGlvbihBKXtpZihlfHxPQShBKSxBLnRvRXhwb25lbnRpYWwoKS5yZXBsYWNlKC9lLiokLywiIikucmVwbGFjZSgvXjBcLj8wKnxcLi8sIiIpLmxlbmd0aD4xNSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgaW1wbGljaXRseSBjb252ZXJ0IGEgbnVtYmVyIHdpdGggPjE1IHNpZ25pZmljYW50IGRpZ2l0cyB0byBCaWdOdW1iZXIgKHZhbHVlOiAiK0ErIikuIFVzZSBmdW5jdGlvbiBiaWdudW1iZXIoeCkgdG8gY29udmVydCB0byBCaWdOdW1iZXIuIik7cmV0dXJuIG5ldyBlKEEpfX0se2Zyb206Im51bWJlciIsdG86IkNvbXBsZXgiLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7cmV0dXJuIG58fFZBKEEpLG5ldyBuKEEsMCl9fSx7ZnJvbToiQmlnTnVtYmVyIix0bzoiQ29tcGxleCIsY29udmVydDpmdW5jdGlvbihBKXtyZXR1cm4gbnx8VkEoQSksbmV3IG4oQS50b051bWJlcigpLDApfX0se2Zyb206IkZyYWN0aW9uIix0bzoiQmlnTnVtYmVyIixjb252ZXJ0OmZ1bmN0aW9uKEEpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBpbXBsaWNpdGx5IGNvbnZlcnQgYSBGcmFjdGlvbiB0byBCaWdOdW1iZXIgb3IgdmljZSB2ZXJzYS4gVXNlIGZ1bmN0aW9uIGJpZ251bWJlcih4KSB0byBjb252ZXJ0IHRvIEJpZ051bWJlciBvciBmcmFjdGlvbih4KSB0byBjb252ZXJ0IHRvIEZyYWN0aW9uLiIpfX0se2Zyb206IkZyYWN0aW9uIix0bzoiQ29tcGxleCIsY29udmVydDpmdW5jdGlvbihBKXtyZXR1cm4gbnx8VkEoQSksbmV3IG4oQS52YWx1ZU9mKCksMCl9fSx7ZnJvbToibnVtYmVyIix0bzoiRnJhY3Rpb24iLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7eHx8V0EoQSk7dmFyIGU9bmV3IHgoQSk7aWYoZS52YWx1ZU9mKCkhPT1BKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBpbXBsaWNpdGx5IGNvbnZlcnQgYSBudW1iZXIgdG8gYSBGcmFjdGlvbiB3aGVuIHRoZXJlIHdpbGwgYmUgYSBsb3NzIG9mIHByZWNpc2lvbiAodmFsdWU6ICIrQSsiKS4gVXNlIGZ1bmN0aW9uIGZyYWN0aW9uKHgpIHRvIGNvbnZlcnQgdG8gRnJhY3Rpb24uIik7cmV0dXJuIGV9fSx7ZnJvbToic3RyaW5nIix0bzoibnVtYmVyIixjb252ZXJ0OmZ1bmN0aW9uKEEpe3ZhciBlPU51bWJlcihBKTtpZihpc05hTihlKSl0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBjb252ZXJ0ICInK0ErJyIgdG8gYSBudW1iZXInKTtyZXR1cm4gZX19LHtmcm9tOiJzdHJpbmciLHRvOiJCaWdOdW1iZXIiLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7ZXx8T0EoQSk7dHJ5e3JldHVybiBuZXcgZShBKX1jYXRjaChlKXt0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBjb252ZXJ0ICInK0ErJyIgdG8gQmlnTnVtYmVyJyl9fX0se2Zyb206InN0cmluZyIsdG86IkZyYWN0aW9uIixjb252ZXJ0OmZ1bmN0aW9uKEEpe3h8fFdBKEEpO3RyeXtyZXR1cm4gbmV3IHgoQSl9Y2F0Y2goZSl7dGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgY29udmVydCAiJytBKyciIHRvIEZyYWN0aW9uJyl9fX0se2Zyb206InN0cmluZyIsdG86IkNvbXBsZXgiLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7bnx8VkEoQSk7dHJ5e3JldHVybiBuZXcgbihBKX1jYXRjaChlKXt0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBjb252ZXJ0ICInK0ErJyIgdG8gQ29tcGxleCcpfX19LHtmcm9tOiJib29sZWFuIix0bzoibnVtYmVyIixjb252ZXJ0OmZ1bmN0aW9uKEEpe3JldHVybitBfX0se2Zyb206ImJvb2xlYW4iLHRvOiJCaWdOdW1iZXIiLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7cmV0dXJuIGV8fE9BKEEpLG5ldyBlKCtBKX19LHtmcm9tOiJib29sZWFuIix0bzoiRnJhY3Rpb24iLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7cmV0dXJuIHh8fFdBKEEpLG5ldyB4KCtBKX19LHtmcm9tOiJib29sZWFuIix0bzoic3RyaW5nIixjb252ZXJ0OmZ1bmN0aW9uKEEpe3JldHVybiBTdHJpbmcoQSl9fSx7ZnJvbToiQXJyYXkiLHRvOiJNYXRyaXgiLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7cmV0dXJuIGl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY29udmVydCBhcnJheSBpbnRvIGEgTWF0cml4OiBubyBjbGFzcyAnRGVuc2VNYXRyaXgnIHByb3ZpZGVkIil9KCksbmV3IGkoQSl9fSx7ZnJvbToiTWF0cml4Iix0bzoiQXJyYXkiLGNvbnZlcnQ6ZnVuY3Rpb24oQSl7cmV0dXJuIEEudmFsdWVPZigpfX1dKSxQLm9uTWlzbWF0Y2g9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPVAuY3JlYXRlRXJyb3IoQSxlLHQpO2lmKFsid3JvbmdUeXBlIiwibWlzbWF0Y2giXS5pbmNsdWRlcyhuLmRhdGEuY2F0ZWdvcnkpJiYxPT09ZS5sZW5ndGgmJkUoZVswXSkmJnQuc29tZSgoZnVuY3Rpb24oQSl7cmV0dXJuIUEucGFyYW1zLmluY2x1ZGVzKCIsIil9KSkpe3ZhciBpPW5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uICciLmNvbmNhdChBLCInIGRvZXNuJ3QgYXBwbHkgdG8gbWF0cmljZXMuIFRvIGNhbGwgaXQgIikrImVsZW1lbnR3aXNlIG9uIGEgbWF0cml4ICdNJywgdHJ5ICdtYXAoTSwgIi5jb25jYXQoQSwiKScuIikpO3Rocm93IGkuZGF0YT1uLmRhdGEsaX10aHJvdyBufSxQLm9uTWlzbWF0Y2g9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPVAuY3JlYXRlRXJyb3IoQSxlLHQpO2lmKFsid3JvbmdUeXBlIiwibWlzbWF0Y2giXS5pbmNsdWRlcyhuLmRhdGEuY2F0ZWdvcnkpJiYxPT09ZS5sZW5ndGgmJkUoZVswXSkmJnQuc29tZSgoZnVuY3Rpb24oQSl7cmV0dXJuIUEucGFyYW1zLmluY2x1ZGVzKCIsIil9KSkpe3ZhciBpPW5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uICciLmNvbmNhdChBLCInIGRvZXNuJ3QgYXBwbHkgdG8gbWF0cmljZXMuIFRvIGNhbGwgaXQgIikrImVsZW1lbnR3aXNlIG9uIGEgbWF0cml4ICdNJywgdHJ5ICdtYXAoTSwgIi5jb25jYXQoQSwiKScuIikpO3Rocm93IGkuZGF0YT1uLmRhdGEsaX10aHJvdyBufSxQfSkpO2Z1bmN0aW9uIE9BKEEpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGNvbnZlcnQgdmFsdWUgIi5jb25jYXQoQSwiIGludG8gYSBCaWdOdW1iZXI6IG5vIGNsYXNzICdCaWdOdW1iZXInIHByb3ZpZGVkIikpfWZ1bmN0aW9uIFZBKEEpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGNvbnZlcnQgdmFsdWUgIi5jb25jYXQoQSwiIGludG8gYSBDb21wbGV4IG51bWJlcjogbm8gY2xhc3MgJ0NvbXBsZXgnIHByb3ZpZGVkIikpfWZ1bmN0aW9uIFdBKEEpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGNvbnZlcnQgdmFsdWUgIi5jb25jYXQoQSwiIGludG8gYSBGcmFjdGlvbiwgbm8gY2xhc3MgJ0ZyYWN0aW9uJyBwcm92aWRlZC4iKSl9big4MTUwKSxuKDk5NzkpO3ZhciBLQSxYQSxaQT1wQSgiUmVzdWx0U2V0IixbXSwoZnVuY3Rpb24oKXtmdW5jdGlvbiBBKGUpe2lmKCEodGhpcyBpbnN0YW5jZW9mIEEpKXRocm93IG5ldyBTeW50YXhFcnJvcigiQ29uc3RydWN0b3IgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgbmV3IG9wZXJhdG9yIik7dGhpcy5lbnRyaWVzPWV8fFtdfXJldHVybiBBLnByb3RvdHlwZS50eXBlPSJSZXN1bHRTZXQiLEEucHJvdG90eXBlLmlzUmVzdWx0U2V0PSEwLEEucHJvdG90eXBlLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbnRyaWVzfSxBLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJbIit0aGlzLmVudHJpZXMuam9pbigiLCAiKSsiXSJ9LEEucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybnttYXRoanM6IlJlc3VsdFNldCIsZW50cmllczp0aGlzLmVudHJpZXN9fSxBLmZyb21KU09OPWZ1bmN0aW9uKGUpe3JldHVybiBuZXcgQShlLmVudHJpZXMpfSxBfSkse2lzQ2xhc3M6ITB9KSxfQT0obigxMDEzKSw5ZTE1KSxxQT0xZTksJEE9IjAxMjM0NTY3ODlhYmNkZWYiLEFlPSIyLjMwMjU4NTA5Mjk5NDA0NTY4NDAxNzk5MTQ1NDY4NDM2NDIwNzYwMTEwMTQ4ODYyODc3Mjk3NjAzMzMyNzkwMDk2NzU3MjYwOTY3NzM1MjQ4MDIzNTk5NzIwNTA4OTU5ODI5ODM0MTk2Nzc4NDA0MjI4NjI0ODYzMzQwOTUyNTQ2NTA4MjgwNjc1NjY2NjI4NzM2OTA5ODc4MTY4OTQ4MjkwNzIwODMyNTU1NDY4MDg0Mzc5OTg5NDgyNjIzMzE5ODUyODM5MzUwNTMwODk2NTM3NzczMjYyODg0NjE2MzM2NjIyMjI4NzY5ODIxOTg4Njc0NjU0MzY2NzQ3NDQwNDI0MzI3NDM2NTE1NTA0ODkzNDMxNDkzOTM5MTQ3OTYxOTQwNDQwMDIyMjEwNTEwMTcxNDE3NDgwMDM2ODgwODQwMTI2NDcwODA2ODU1Njc3NDMyMTYyMjgzNTUyMjAxMTQ4MDQ2NjM3MTU2NTkxMjEzNzM0NTA3NDc4NTY5NDc2ODM0NjM2MTY3OTIxMDE4MDY0NDUwNzA2NDgwMDAyNzc1MDI2ODQ5MTY3NDY1NTA1ODY4NTY5MzU2NzM0MjA2NzA1ODExMzY0MjkyMjQ1NTQ0MDU3NTg5MjU3MjQyMDgyNDEzMTQ2OTU2ODkwMTY3NTg5NDAyNTY3NzYzMTEzNTY5MTkyOTIwMzMzNzY1ODcxNDE2NjAyMzAxMDU3MDMwODk2MzQ1NzIwNzU0NDAzNzA4NDc0Njk5NDAxNjgyNjkyODI4MDg0ODExODQyODkzMTQ4NDg1MjQ5NDg2NDQ4NzE5Mjc4MDk2NzYyNzEyNzU3NzUzOTcwMjc2Njg2MDU5NTI0OTY3MTY2NzQxODM0ODU3MDQ0MjI1MDcxOTc5NjUwMDQ3MTQ5NTEwNTA0OTIyMTQ3NzY1Njc2MzY5Mzg2NjI5NzY5Nzk1MjIxMTA3MTgyNjQ1NDk3MzQ3NzI2NjI0MjU3MDk0MjkzMjI1ODI3OTg1MDI1ODU1MDk3ODUyNjUzODMyMDc2MDY3MjYzMTcxNjQzMDk1MDU5OTUwODc4MDc1MjM3MTAzMzMxMDExOTc4NTc1NDczMzE1NDE0MjE4MDg0Mjc1NDM4NjM1OTE3NzgxMTcwNTQzMDk4Mjc0ODIzODUwNDU2NDgwMTkwOTU2MTAyOTkyOTE4MjQzMTgyMzc1MjUzNTc3MDk3NTA1Mzk1NjUxODc2OTc1MTAzNzQ5NzA4ODg2OTIxODAyMDUxODkzMzk1MDcyMzg1MzkyMDUxNDQ2MzQxOTcyNjUyODcyODY5NjUxMTA4NjI1NzE0OTIxOTg4NDk5Nzg3NDg4NzM3NzEzNDU2ODYyMDkxNjcwNTgiLGVlPSIzLjE0MTU5MjY1MzU4OTc5MzIzODQ2MjY0MzM4MzI3OTUwMjg4NDE5NzE2OTM5OTM3NTEwNTgyMDk3NDk0NDU5MjMwNzgxNjQwNjI4NjIwODk5ODYyODAzNDgyNTM0MjExNzA2Nzk4MjE0ODA4NjUxMzI4MjMwNjY0NzA5Mzg0NDYwOTU1MDU4MjIzMTcyNTM1OTQwODEyODQ4MTExNzQ1MDI4NDEwMjcwMTkzODUyMTEwNTU1OTY0NDYyMjk0ODk1NDkzMDM4MTk2NDQyODgxMDk3NTY2NTkzMzQ0NjEyODQ3NTY0ODIzMzc4Njc4MzE2NTI3MTIwMTkwOTE0NTY0ODU2NjkyMzQ2MDM0ODYxMDQ1NDMyNjY0ODIxMzM5MzYwNzI2MDI0OTE0MTI3MzcyNDU4NzAwNjYwNjMxNTU4ODE3NDg4MTUyMDkyMDk2MjgyOTI1NDA5MTcxNTM2NDM2Nzg5MjU5MDM2MDAxMTMzMDUzMDU0ODgyMDQ2NjUyMTM4NDE0Njk1MTk0MTUxMTYwOTQzMzA1NzI3MDM2NTc1OTU5MTk1MzA5MjE4NjExNzM4MTkzMjYxMTc5MzEwNTExODU0ODA3NDQ2MjM3OTk2Mjc0OTU2NzM1MTg4NTc1MjcyNDg5MTIyNzkzODE4MzAxMTk0OTEyOTgzMzY3MzM2MjQ0MDY1NjY0MzA4NjAyMTM5NDk0NjM5NTIyNDczNzE5MDcwMjE3OTg2MDk0MzcwMjc3MDUzOTIxNzE3NjI5MzE3Njc1MjM4NDY3NDgxODQ2NzY2OTQwNTEzMjAwMDU2ODEyNzE0NTI2MzU2MDgyNzc4NTc3MTM0Mjc1Nzc4OTYwOTE3MzYzNzE3ODcyMTQ2ODQ0MDkwMTIyNDk1MzQzMDE0NjU0OTU4NTM3MTA1MDc5MjI3OTY4OTI1ODkyMzU0MjAxOTk1NjExMjEyOTAyMTk2MDg2NDAzNDQxODE1OTgxMzYyOTc3NDc3MTMwOTk2MDUxODcwNzIxMTM0OTk5OTk5ODM3Mjk3ODA0OTk1MTA1OTczMTczMjgxNjA5NjMxODU5NTAyNDQ1OTQ1NTM0NjkwODMwMjY0MjUyMjMwODI1MzM0NDY4NTAzNTI2MTkzMTE4ODE3MTAxMDAwMzEzNzgzODc1Mjg4NjU4NzUzMzIwODM4MTQyMDYxNzE3NzY2OTE0NzMwMzU5ODI1MzQ5MDQyODc1NTQ2ODczMTE1OTU2Mjg2Mzg4MjM1Mzc4NzU5Mzc1MTk1Nzc4MTg1Nzc4MDUzMjE3MTIyNjgwNjYxMzAwMTkyNzg3NjYxMTE5NTkwOTIxNjQyMDE5ODkzODA5NTI1NzIwMTA2NTQ4NTg2MzI3ODkiLHRlPXtwcmVjaXNpb246MjAscm91bmRpbmc6NCxtb2R1bG86MSx0b0V4cE5lZzotNyx0b0V4cFBvczoyMSxtaW5FOi1fQSxtYXhFOl9BLGNyeXB0bzohMX0sbmU9ITAsaWU9IltEZWNpbWFsRXJyb3JdICIscmU9aWUrIkludmFsaWQgYXJndW1lbnQ6ICIsb2U9aWUrIlByZWNpc2lvbiBsaW1pdCBleGNlZWRlZCIsc2U9aWUrImNyeXB0byB1bmF2YWlsYWJsZSIsYWU9IltvYmplY3QgRGVjaW1hbF0iLEJlPU1hdGguZmxvb3IsY2U9TWF0aC5wb3csZ2U9L14wYihbMDFdKyhcLlswMV0qKT98XC5bMDFdKykocFsrLV0/XGQrKT8kL2ksRWU9L14weChbMC05YS1mXSsoXC5bMC05YS1mXSopP3xcLlswLTlhLWZdKykocFsrLV0/XGQrKT8kL2ksUWU9L14wbyhbMC03XSsoXC5bMC03XSopP3xcLlswLTddKykocFsrLV0/XGQrKT8kL2ksdWU9L14oXGQrKFwuXGQqKT98XC5cZCspKGVbKy1dP1xkKyk/JC9pLGxlPTFlNyxoZT1BZS5sZW5ndGgtMSx3ZT1lZS5sZW5ndGgtMSxDZT17dG9TdHJpbmdUYWc6YWV9O2Z1bmN0aW9uIEllKEEpe3ZhciBlLHQsbixpPUEubGVuZ3RoLTEscj0iIixvPUFbMF07aWYoaT4wKXtmb3Iocis9byxlPTE7ZTxpO2UrKykodD03LShuPUFbZV0rIiIpLmxlbmd0aCkmJihyKz15ZSh0KSkscis9bjsodD03LShuPShvPUFbZV0pKyIiKS5sZW5ndGgpJiYocis9eWUodCkpfWVsc2UgaWYoMD09PW8pcmV0dXJuIjAiO2Zvcig7byUxMD09MDspby89MTA7cmV0dXJuIHIrb31mdW5jdGlvbiBNZShBLGUsdCl7aWYoQSE9PX5+QXx8QTxlfHxBPnQpdGhyb3cgRXJyb3IocmUrQSl9ZnVuY3Rpb24gZGUoQSxlLHQsbil7dmFyIGkscixvLHM7Zm9yKHI9QVswXTtyPj0xMDtyLz0xMCktLWU7cmV0dXJuLS1lPDA/KGUrPTcsaT0wKTooaT1NYXRoLmNlaWwoKGUrMSkvNyksZSU9Nykscj1jZSgxMCw3LWUpLHM9QVtpXSVyfDAsbnVsbD09bj9lPDM/KDA9PWU/cz1zLzEwMHwwOjE9PWUmJihzPXMvMTB8MCksbz10PDQmJjk5OTk5PT1zfHx0PjMmJjQ5OTk5PT1zfHw1ZTQ9PXN8fDA9PXMpOm89KHQ8NCYmcysxPT1yfHx0PjMmJnMrMT09ci8yKSYmKEFbaSsxXS9yLzEwMHwwKT09Y2UoMTAsZS0yKS0xfHwocz09ci8yfHwwPT1zKSYmMD09KEFbaSsxXS9yLzEwMHwwKTplPDQ/KDA9PWU/cz1zLzFlM3wwOjE9PWU/cz1zLzEwMHwwOjI9PWUmJihzPXMvMTB8MCksbz0obnx8dDw0KSYmOTk5OT09c3x8IW4mJnQ+MyYmNDk5OT09cyk6bz0oKG58fHQ8NCkmJnMrMT09cnx8IW4mJnQ+MyYmcysxPT1yLzIpJiYoQVtpKzFdL3IvMWUzfDApPT1jZSgxMCxlLTMpLTEsb31mdW5jdGlvbiBwZShBLGUsdCl7Zm9yKHZhciBuLGkscj1bMF0sbz0wLHM9QS5sZW5ndGg7bzxzOyl7Zm9yKGk9ci5sZW5ndGg7aS0tOylyW2ldKj1lO2ZvcihyWzBdKz0kQS5pbmRleE9mKEEuY2hhckF0KG8rKykpLG49MDtuPHIubGVuZ3RoO24rKylyW25dPnQtMSYmKHZvaWQgMD09PXJbbisxXSYmKHJbbisxXT0wKSxyW24rMV0rPXJbbl0vdHwwLHJbbl0lPXQpfXJldHVybiByLnJldmVyc2UoKX1DZS5hYnNvbHV0ZVZhbHVlPUNlLmFicz1mdW5jdGlvbigpe3ZhciBBPW5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMpO3JldHVybiBBLnM8MCYmKEEucz0xKSxGZShBKX0sQ2UuY2VpbD1mdW5jdGlvbigpe3JldHVybiBGZShuZXcgdGhpcy5jb25zdHJ1Y3Rvcih0aGlzKSx0aGlzLmUrMSwyKX0sQ2UuY2xhbXBlZFRvPUNlLmNsYW1wPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcyxuPXQuY29uc3RydWN0b3I7aWYoQT1uZXcgbihBKSxlPW5ldyBuKGUpLCFBLnN8fCFlLnMpcmV0dXJuIG5ldyBuKE5hTik7aWYoQS5ndChlKSl0aHJvdyBFcnJvcihyZStlKTtyZXR1cm4gdC5jbXAoQSk8MD9BOnQuY21wKGUpPjA/ZTpuZXcgbih0KX0sQ2UuY29tcGFyZWRUbz1DZS5jbXA9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuLGkscj10aGlzLG89ci5kLHM9KEE9bmV3IHIuY29uc3RydWN0b3IoQSkpLmQsYT1yLnMsQj1BLnM7aWYoIW98fCFzKXJldHVybiBhJiZCP2EhPT1CP2E6bz09PXM/MDohb15hPDA/MTotMTpOYU47aWYoIW9bMF18fCFzWzBdKXJldHVybiBvWzBdP2E6c1swXT8tQjowO2lmKGEhPT1CKXJldHVybiBhO2lmKHIuZSE9PUEuZSlyZXR1cm4gci5lPkEuZV5hPDA/MTotMTtmb3IoZT0wLHQ9KG49by5sZW5ndGgpPChpPXMubGVuZ3RoKT9uOmk7ZTx0OysrZSlpZihvW2VdIT09c1tlXSlyZXR1cm4gb1tlXT5zW2VdXmE8MD8xOi0xO3JldHVybiBuPT09aT8wOm4+aV5hPDA/MTotMX0sQ2UuY29zaW5lPUNlLmNvcz1mdW5jdGlvbigpe3ZhciBBLGUsdD10aGlzLG49dC5jb25zdHJ1Y3RvcjtyZXR1cm4gdC5kP3QuZFswXT8oQT1uLnByZWNpc2lvbixlPW4ucm91bmRpbmcsbi5wcmVjaXNpb249QStNYXRoLm1heCh0LmUsdC5zZCgpKSs3LG4ucm91bmRpbmc9MSx0PWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpO2lmKGUuaXNaZXJvKCkpcmV0dXJuIGU7KG49ZS5kLmxlbmd0aCk8MzI/aT0oMS9rZSg0LHQ9TWF0aC5jZWlsKG4vMykpKS50b1N0cmluZygpOih0PTE2LGk9IjIuMzI4MzA2NDM2NTM4Njk2Mjg5MDYyNWUtMTAiKSxBLnByZWNpc2lvbis9dCxlPXZlKEEsMSxlLnRpbWVzKGkpLG5ldyBBKDEpKTtmb3IodmFyIHI9dDtyLS07KXt2YXIgbz1lLnRpbWVzKGUpO2U9by50aW1lcyhvKS5taW51cyhvKS50aW1lcyg4KS5wbHVzKDEpfXJldHVybiBBLnByZWNpc2lvbi09dCxlfShuLGplKG4sdCkpLG4ucHJlY2lzaW9uPUEsbi5yb3VuZGluZz1lLEZlKDI9PVhBfHwzPT1YQT90Lm5lZygpOnQsQSxlLCEwKSk6bmV3IG4oMSk6bmV3IG4oTmFOKX0sQ2UuY3ViZVJvb3Q9Q2UuY2JydD1mdW5jdGlvbigpe3ZhciBBLGUsdCxuLGkscixvLHMsYSxCLGM9dGhpcyxnPWMuY29uc3RydWN0b3I7aWYoIWMuaXNGaW5pdGUoKXx8Yy5pc1plcm8oKSlyZXR1cm4gbmV3IGcoYyk7Zm9yKG5lPSExLChyPWMucypjZShjLnMqYywxLzMpKSYmTWF0aC5hYnMocikhPTEvMD9uPW5ldyBnKHIudG9TdHJpbmcoKSk6KHQ9SWUoYy5kKSwocj0oKEE9Yy5lKS10Lmxlbmd0aCsxKSUzKSYmKHQrPTE9PXJ8fC0yPT1yPyIwIjoiMDAiKSxyPWNlKHQsMS8zKSxBPUJlKChBKzEpLzMpLShBJTM9PShBPDA/LTE6MikpLChuPW5ldyBnKHQ9cj09MS8wPyI1ZSIrQToodD1yLnRvRXhwb25lbnRpYWwoKSkuc2xpY2UoMCx0LmluZGV4T2YoImUiKSsxKStBKSkucz1jLnMpLG89KEE9Zy5wcmVjaXNpb24pKzM7OylpZihCPShhPShzPW4pLnRpbWVzKHMpLnRpbWVzKHMpKS5wbHVzKGMpLG49bWUoQi5wbHVzKGMpLnRpbWVzKHMpLEIucGx1cyhhKSxvKzIsMSksSWUocy5kKS5zbGljZSgwLG8pPT09KHQ9SWUobi5kKSkuc2xpY2UoMCxvKSl7aWYoIjk5OTkiIT0odD10LnNsaWNlKG8tMyxvKzEpKSYmKGl8fCI0OTk5IiE9dCkpeyt0JiYoK3Quc2xpY2UoMSl8fCI1IiE9dC5jaGFyQXQoMCkpfHwoRmUobixBKzEsMSksZT0hbi50aW1lcyhuKS50aW1lcyhuKS5lcShjKSk7YnJlYWt9aWYoIWkmJihGZShzLEErMSwwKSxzLnRpbWVzKHMpLnRpbWVzKHMpLmVxKGMpKSl7bj1zO2JyZWFrfW8rPTQsaT0xfXJldHVybiBuZT0hMCxGZShuLEEsZy5yb3VuZGluZyxlKX0sQ2UuZGVjaW1hbFBsYWNlcz1DZS5kcD1mdW5jdGlvbigpe3ZhciBBLGU9dGhpcy5kLHQ9TmFOO2lmKGUpe2lmKHQ9NyooKEE9ZS5sZW5ndGgtMSktQmUodGhpcy5lLzcpKSxBPWVbQV0pZm9yKDtBJTEwPT0wO0EvPTEwKXQtLTt0PDAmJih0PTApfXJldHVybiB0fSxDZS5kaXZpZGVkQnk9Q2UuZGl2PWZ1bmN0aW9uKEEpe3JldHVybiBtZSh0aGlzLG5ldyB0aGlzLmNvbnN0cnVjdG9yKEEpKX0sQ2UuZGl2aWRlZFRvSW50ZWdlckJ5PUNlLmRpdlRvSW50PWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuY29uc3RydWN0b3I7cmV0dXJuIEZlKG1lKHRoaXMsbmV3IGUoQSksMCwxLDEpLGUucHJlY2lzaW9uLGUucm91bmRpbmcpfSxDZS5lcXVhbHM9Q2UuZXE9ZnVuY3Rpb24oQSl7cmV0dXJuIDA9PT10aGlzLmNtcChBKX0sQ2UuZmxvb3I9ZnVuY3Rpb24oKXtyZXR1cm4gRmUobmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyksdGhpcy5lKzEsMyl9LENlLmdyZWF0ZXJUaGFuPUNlLmd0PWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmNtcChBKT4wfSxDZS5ncmVhdGVyVGhhbk9yRXF1YWxUbz1DZS5ndGU9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5jbXAoQSk7cmV0dXJuIDE9PWV8fDA9PT1lfSxDZS5oeXBlcmJvbGljQ29zaW5lPUNlLmNvc2g9ZnVuY3Rpb24oKXt2YXIgQSxlLHQsbixpLHI9dGhpcyxvPXIuY29uc3RydWN0b3Iscz1uZXcgbygxKTtpZighci5pc0Zpbml0ZSgpKXJldHVybiBuZXcgbyhyLnM/MS8wOk5hTik7aWYoci5pc1plcm8oKSlyZXR1cm4gczt0PW8ucHJlY2lzaW9uLG49by5yb3VuZGluZyxvLnByZWNpc2lvbj10K01hdGgubWF4KHIuZSxyLnNkKCkpKzQsby5yb3VuZGluZz0xLChpPXIuZC5sZW5ndGgpPDMyP2U9KDEva2UoNCxBPU1hdGguY2VpbChpLzMpKSkudG9TdHJpbmcoKTooQT0xNixlPSIyLjMyODMwNjQzNjUzODY5NjI4OTA2MjVlLTEwIikscj12ZShvLDEsci50aW1lcyhlKSxuZXcgbygxKSwhMCk7Zm9yKHZhciBhLEI9QSxjPW5ldyBvKDgpO0ItLTspYT1yLnRpbWVzKHIpLHI9cy5taW51cyhhLnRpbWVzKGMubWludXMoYS50aW1lcyhjKSkpKTtyZXR1cm4gRmUocixvLnByZWNpc2lvbj10LG8ucm91bmRpbmc9biwhMCl9LENlLmh5cGVyYm9saWNTaW5lPUNlLnNpbmg9ZnVuY3Rpb24oKXt2YXIgQSxlLHQsbixpPXRoaXMscj1pLmNvbnN0cnVjdG9yO2lmKCFpLmlzRmluaXRlKCl8fGkuaXNaZXJvKCkpcmV0dXJuIG5ldyByKGkpO2lmKGU9ci5wcmVjaXNpb24sdD1yLnJvdW5kaW5nLHIucHJlY2lzaW9uPWUrTWF0aC5tYXgoaS5lLGkuc2QoKSkrNCxyLnJvdW5kaW5nPTEsKG49aS5kLmxlbmd0aCk8MylpPXZlKHIsMixpLGksITApO2Vsc2V7QT0oQT0xLjQqTWF0aC5zcXJ0KG4pKT4xNj8xNjowfEEsaT12ZShyLDIsaT1pLnRpbWVzKDEva2UoNSxBKSksaSwhMCk7Zm9yKHZhciBvLHM9bmV3IHIoNSksYT1uZXcgcigxNiksQj1uZXcgcigyMCk7QS0tOylvPWkudGltZXMoaSksaT1pLnRpbWVzKHMucGx1cyhvLnRpbWVzKGEudGltZXMobykucGx1cyhCKSkpKX1yZXR1cm4gci5wcmVjaXNpb249ZSxyLnJvdW5kaW5nPXQsRmUoaSxlLHQsITApfSxDZS5oeXBlcmJvbGljVGFuZ2VudD1DZS50YW5oPWZ1bmN0aW9uKCl7dmFyIEEsZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yO3JldHVybiB0LmlzRmluaXRlKCk/dC5pc1plcm8oKT9uZXcgbih0KTooQT1uLnByZWNpc2lvbixlPW4ucm91bmRpbmcsbi5wcmVjaXNpb249QSs3LG4ucm91bmRpbmc9MSxtZSh0LnNpbmgoKSx0LmNvc2goKSxuLnByZWNpc2lvbj1BLG4ucm91bmRpbmc9ZSkpOm5ldyBuKHQucyl9LENlLmludmVyc2VDb3NpbmU9Q2UuYWNvcz1mdW5jdGlvbigpe3ZhciBBLGU9dGhpcyx0PWUuY29uc3RydWN0b3Isbj1lLmFicygpLmNtcCgxKSxpPXQucHJlY2lzaW9uLHI9dC5yb3VuZGluZztyZXR1cm4tMSE9PW4/MD09PW4/ZS5pc05lZygpP05lKHQsaSxyKTpuZXcgdCgwKTpuZXcgdChOYU4pOmUuaXNaZXJvKCk/TmUodCxpKzQscikudGltZXMoLjUpOih0LnByZWNpc2lvbj1pKzYsdC5yb3VuZGluZz0xLGU9ZS5hc2luKCksQT1OZSh0LGkrNCxyKS50aW1lcyguNSksdC5wcmVjaXNpb249aSx0LnJvdW5kaW5nPXIsQS5taW51cyhlKSl9LENlLmludmVyc2VIeXBlcmJvbGljQ29zaW5lPUNlLmFjb3NoPWZ1bmN0aW9uKCl7dmFyIEEsZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yO3JldHVybiB0Lmx0ZSgxKT9uZXcgbih0LmVxKDEpPzA6TmFOKTp0LmlzRmluaXRlKCk/KEE9bi5wcmVjaXNpb24sZT1uLnJvdW5kaW5nLG4ucHJlY2lzaW9uPUErTWF0aC5tYXgoTWF0aC5hYnModC5lKSx0LnNkKCkpKzQsbi5yb3VuZGluZz0xLG5lPSExLHQ9dC50aW1lcyh0KS5taW51cygxKS5zcXJ0KCkucGx1cyh0KSxuZT0hMCxuLnByZWNpc2lvbj1BLG4ucm91bmRpbmc9ZSx0LmxuKCkpOm5ldyBuKHQpfSxDZS5pbnZlcnNlSHlwZXJib2xpY1NpbmU9Q2UuYXNpbmg9ZnVuY3Rpb24oKXt2YXIgQSxlLHQ9dGhpcyxuPXQuY29uc3RydWN0b3I7cmV0dXJuIXQuaXNGaW5pdGUoKXx8dC5pc1plcm8oKT9uZXcgbih0KTooQT1uLnByZWNpc2lvbixlPW4ucm91bmRpbmcsbi5wcmVjaXNpb249QSsyKk1hdGgubWF4KE1hdGguYWJzKHQuZSksdC5zZCgpKSs2LG4ucm91bmRpbmc9MSxuZT0hMSx0PXQudGltZXModCkucGx1cygxKS5zcXJ0KCkucGx1cyh0KSxuZT0hMCxuLnByZWNpc2lvbj1BLG4ucm91bmRpbmc9ZSx0LmxuKCkpfSxDZS5pbnZlcnNlSHlwZXJib2xpY1RhbmdlbnQ9Q2UuYXRhbmg9ZnVuY3Rpb24oKXt2YXIgQSxlLHQsbixpPXRoaXMscj1pLmNvbnN0cnVjdG9yO3JldHVybiBpLmlzRmluaXRlKCk/aS5lPj0wP25ldyByKGkuYWJzKCkuZXEoMSk/aS5zLzA6aS5pc1plcm8oKT9pOk5hTik6KEE9ci5wcmVjaXNpb24sZT1yLnJvdW5kaW5nLG49aS5zZCgpLE1hdGgubWF4KG4sQSk8MiotaS5lLTE/RmUobmV3IHIoaSksQSxlLCEwKTooci5wcmVjaXNpb249dD1uLWkuZSxpPW1lKGkucGx1cygxKSxuZXcgcigxKS5taW51cyhpKSx0K0EsMSksci5wcmVjaXNpb249QSs0LHIucm91bmRpbmc9MSxpPWkubG4oKSxyLnByZWNpc2lvbj1BLHIucm91bmRpbmc9ZSxpLnRpbWVzKC41KSkpOm5ldyByKE5hTil9LENlLmludmVyc2VTaW5lPUNlLmFzaW49ZnVuY3Rpb24oKXt2YXIgQSxlLHQsbixpPXRoaXMscj1pLmNvbnN0cnVjdG9yO3JldHVybiBpLmlzWmVybygpP25ldyByKGkpOihlPWkuYWJzKCkuY21wKDEpLHQ9ci5wcmVjaXNpb24sbj1yLnJvdW5kaW5nLC0xIT09ZT8wPT09ZT8oKEE9TmUocix0KzQsbikudGltZXMoLjUpKS5zPWkucyxBKTpuZXcgcihOYU4pOihyLnByZWNpc2lvbj10KzYsci5yb3VuZGluZz0xLGk9aS5kaXYobmV3IHIoMSkubWludXMoaS50aW1lcyhpKSkuc3FydCgpLnBsdXMoMSkpLmF0YW4oKSxyLnByZWNpc2lvbj10LHIucm91bmRpbmc9bixpLnRpbWVzKDIpKSl9LENlLmludmVyc2VUYW5nZW50PUNlLmF0YW49ZnVuY3Rpb24oKXt2YXIgQSxlLHQsbixpLHIsbyxzLGEsQj10aGlzLGM9Qi5jb25zdHJ1Y3RvcixnPWMucHJlY2lzaW9uLEU9Yy5yb3VuZGluZztpZihCLmlzRmluaXRlKCkpe2lmKEIuaXNaZXJvKCkpcmV0dXJuIG5ldyBjKEIpO2lmKEIuYWJzKCkuZXEoMSkmJmcrNDw9d2UpcmV0dXJuKG89TmUoYyxnKzQsRSkudGltZXMoLjI1KSkucz1CLnMsb31lbHNle2lmKCFCLnMpcmV0dXJuIG5ldyBjKE5hTik7aWYoZys0PD13ZSlyZXR1cm4obz1OZShjLGcrNCxFKS50aW1lcyguNSkpLnM9Qi5zLG99Zm9yKGMucHJlY2lzaW9uPXM9ZysxMCxjLnJvdW5kaW5nPTEsQT10PU1hdGgubWluKDI4LHMvNysyfDApO0E7LS1BKUI9Qi5kaXYoQi50aW1lcyhCKS5wbHVzKDEpLnNxcnQoKS5wbHVzKDEpKTtmb3IobmU9ITEsZT1NYXRoLmNlaWwocy83KSxuPTEsYT1CLnRpbWVzKEIpLG89bmV3IGMoQiksaT1COy0xIT09QTspaWYoaT1pLnRpbWVzKGEpLHI9by5taW51cyhpLmRpdihuKz0yKSksaT1pLnRpbWVzKGEpLHZvaWQgMCE9PShvPXIucGx1cyhpLmRpdihuKz0yKSkpLmRbZV0pZm9yKEE9ZTtvLmRbQV09PT1yLmRbQV0mJkEtLTspO3JldHVybiB0JiYobz1vLnRpbWVzKDI8PHQtMSkpLG5lPSEwLEZlKG8sYy5wcmVjaXNpb249ZyxjLnJvdW5kaW5nPUUsITApfSxDZS5pc0Zpbml0ZT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5kfSxDZS5pc0ludGVnZXI9Q2UuaXNJbnQ9ZnVuY3Rpb24oKXtyZXR1cm4hIXRoaXMuZCYmQmUodGhpcy5lLzcpPnRoaXMuZC5sZW5ndGgtMn0sQ2UuaXNOYU49ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5zfSxDZS5pc05lZ2F0aXZlPUNlLmlzTmVnPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuczwwfSxDZS5pc1Bvc2l0aXZlPUNlLmlzUG9zPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucz4wfSxDZS5pc1plcm89ZnVuY3Rpb24oKXtyZXR1cm4hIXRoaXMuZCYmMD09PXRoaXMuZFswXX0sQ2UubGVzc1RoYW49Q2UubHQ9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuY21wKEEpPDB9LENlLmxlc3NUaGFuT3JFcXVhbFRvPUNlLmx0ZT1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5jbXAoQSk8MX0sQ2UubG9nYXJpdGhtPUNlLmxvZz1mdW5jdGlvbihBKXt2YXIgZSx0LG4saSxyLG8scyxhLEI9dGhpcyxjPUIuY29uc3RydWN0b3IsZz1jLnByZWNpc2lvbixFPWMucm91bmRpbmc7aWYobnVsbD09QSlBPW5ldyBjKDEwKSxlPSEwO2Vsc2V7aWYodD0oQT1uZXcgYyhBKSkuZCxBLnM8MHx8IXR8fCF0WzBdfHxBLmVxKDEpKXJldHVybiBuZXcgYyhOYU4pO2U9QS5lcSgxMCl9aWYodD1CLmQsQi5zPDB8fCF0fHwhdFswXXx8Qi5lcSgxKSlyZXR1cm4gbmV3IGModCYmIXRbMF0/LTEvMDoxIT1CLnM/TmFOOnQ/MDoxLzApO2lmKGUpaWYodC5sZW5ndGg+MSlyPSEwO2Vsc2V7Zm9yKGk9dFswXTtpJTEwPT0wOylpLz0xMDtyPTEhPT1pfWlmKG5lPSExLG89U2UoQixzPWcrNSksbj1lP2ZlKGMscysxMCk6U2UoQSxzKSxkZSgoYT1tZShvLG4scywxKSkuZCxpPWcsRSkpZG97aWYobz1TZShCLHMrPTEwKSxuPWU/ZmUoYyxzKzEwKTpTZShBLHMpLGE9bWUobyxuLHMsMSksIXIpeytJZShhLmQpLnNsaWNlKGkrMSxpKzE1KSsxPT0xZTE0JiYoYT1GZShhLGcrMSwwKSk7YnJlYWt9fXdoaWxlKGRlKGEuZCxpKz0xMCxFKSk7cmV0dXJuIG5lPSEwLEZlKGEsZyxFKX0sQ2UubWludXM9Q2Uuc3ViPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbixpLHIsbyxzLGEsQixjLGcsRSxRPXRoaXMsdT1RLmNvbnN0cnVjdG9yO2lmKEE9bmV3IHUoQSksIVEuZHx8IUEuZClyZXR1cm4gUS5zJiZBLnM/US5kP0Eucz0tQS5zOkE9bmV3IHUoQS5kfHxRLnMhPT1BLnM/UTpOYU4pOkE9bmV3IHUoTmFOKSxBO2lmKFEucyE9QS5zKXJldHVybiBBLnM9LUEucyxRLnBsdXMoQSk7aWYoQj1RLmQsRT1BLmQscz11LnByZWNpc2lvbixhPXUucm91bmRpbmcsIUJbMF18fCFFWzBdKXtpZihFWzBdKUEucz0tQS5zO2Vsc2V7aWYoIUJbMF0pcmV0dXJuIG5ldyB1KDM9PT1hPy0wOjApO0E9bmV3IHUoUSl9cmV0dXJuIG5lP0ZlKEEscyxhKTpBfWlmKHQ9QmUoQS5lLzcpLGM9QmUoUS5lLzcpLEI9Qi5zbGljZSgpLHI9Yy10KXtmb3IoKGc9cjwwKT8oZT1CLHI9LXIsbz1FLmxlbmd0aCk6KGU9RSx0PWMsbz1CLmxlbmd0aCkscj4obj1NYXRoLm1heChNYXRoLmNlaWwocy83KSxvKSsyKSYmKHI9bixlLmxlbmd0aD0xKSxlLnJldmVyc2UoKSxuPXI7bi0tOyllLnB1c2goMCk7ZS5yZXZlcnNlKCl9ZWxzZXtmb3IoKGc9KG49Qi5sZW5ndGgpPChvPUUubGVuZ3RoKSkmJihvPW4pLG49MDtuPG87bisrKWlmKEJbbl0hPUVbbl0pe2c9QltuXTxFW25dO2JyZWFrfXI9MH1mb3IoZyYmKGU9QixCPUUsRT1lLEEucz0tQS5zKSxvPUIubGVuZ3RoLG49RS5sZW5ndGgtbztuPjA7LS1uKUJbbysrXT0wO2ZvcihuPUUubGVuZ3RoO24+cjspe2lmKEJbLS1uXTxFW25dKXtmb3IoaT1uO2kmJjA9PT1CWy0taV07KUJbaV09bGUtMTstLUJbaV0sQltuXSs9bGV9QltuXS09RVtuXX1mb3IoOzA9PT1CWy0tb107KUIucG9wKCk7Zm9yKDswPT09QlswXTtCLnNoaWZ0KCkpLS10O3JldHVybiBCWzBdPyhBLmQ9QixBLmU9WWUoQix0KSxuZT9GZShBLHMsYSk6QSk6bmV3IHUoMz09PWE/LTA6MCl9LENlLm1vZHVsbz1DZS5tb2Q9ZnVuY3Rpb24oQSl7dmFyIGUsdD10aGlzLG49dC5jb25zdHJ1Y3RvcjtyZXR1cm4gQT1uZXcgbihBKSwhdC5kfHwhQS5zfHxBLmQmJiFBLmRbMF0/bmV3IG4oTmFOKTohQS5kfHx0LmQmJiF0LmRbMF0/RmUobmV3IG4odCksbi5wcmVjaXNpb24sbi5yb3VuZGluZyk6KG5lPSExLDk9PW4ubW9kdWxvPyhlPW1lKHQsQS5hYnMoKSwwLDMsMSkpLnMqPUEuczplPW1lKHQsQSwwLG4ubW9kdWxvLDEpLGU9ZS50aW1lcyhBKSxuZT0hMCx0Lm1pbnVzKGUpKX0sQ2UubmF0dXJhbEV4cG9uZW50aWFsPUNlLmV4cD1mdW5jdGlvbigpe3JldHVybiBHZSh0aGlzKX0sQ2UubmF0dXJhbExvZ2FyaXRobT1DZS5sbj1mdW5jdGlvbigpe3JldHVybiBTZSh0aGlzKX0sQ2UubmVnYXRlZD1DZS5uZWc9ZnVuY3Rpb24oKXt2YXIgQT1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0aGlzKTtyZXR1cm4gQS5zPS1BLnMsRmUoQSl9LENlLnBsdXM9Q2UuYWRkPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbixpLHIsbyxzLGEsQixjLGc9dGhpcyxFPWcuY29uc3RydWN0b3I7aWYoQT1uZXcgRShBKSwhZy5kfHwhQS5kKXJldHVybiBnLnMmJkEucz9nLmR8fChBPW5ldyBFKEEuZHx8Zy5zPT09QS5zP2c6TmFOKSk6QT1uZXcgRShOYU4pLEE7aWYoZy5zIT1BLnMpcmV0dXJuIEEucz0tQS5zLGcubWludXMoQSk7aWYoQj1nLmQsYz1BLmQscz1FLnByZWNpc2lvbixhPUUucm91bmRpbmcsIUJbMF18fCFjWzBdKXJldHVybiBjWzBdfHwoQT1uZXcgRShnKSksbmU/RmUoQSxzLGEpOkE7aWYocj1CZShnLmUvNyksbj1CZShBLmUvNyksQj1CLnNsaWNlKCksaT1yLW4pe2ZvcihpPDA/KHQ9QixpPS1pLG89Yy5sZW5ndGgpOih0PWMsbj1yLG89Qi5sZW5ndGgpLGk+KG89KHI9TWF0aC5jZWlsKHMvNykpPm8/cisxOm8rMSkmJihpPW8sdC5sZW5ndGg9MSksdC5yZXZlcnNlKCk7aS0tOyl0LnB1c2goMCk7dC5yZXZlcnNlKCl9Zm9yKChvPUIubGVuZ3RoKS0oaT1jLmxlbmd0aCk8MCYmKGk9byx0PWMsYz1CLEI9dCksZT0wO2k7KWU9KEJbLS1pXT1CW2ldK2NbaV0rZSkvbGV8MCxCW2ldJT1sZTtmb3IoZSYmKEIudW5zaGlmdChlKSwrK24pLG89Qi5sZW5ndGg7MD09QlstLW9dOylCLnBvcCgpO3JldHVybiBBLmQ9QixBLmU9WWUoQixuKSxuZT9GZShBLHMsYSk6QX0sQ2UucHJlY2lzaW9uPUNlLnNkPWZ1bmN0aW9uKEEpe3ZhciBlLHQ9dGhpcztpZih2b2lkIDAhPT1BJiZBIT09ISFBJiYxIT09QSYmMCE9PUEpdGhyb3cgRXJyb3IocmUrQSk7cmV0dXJuIHQuZD8oZT1VZSh0LmQpLEEmJnQuZSsxPmUmJihlPXQuZSsxKSk6ZT1OYU4sZX0sQ2Uucm91bmQ9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLGU9QS5jb25zdHJ1Y3RvcjtyZXR1cm4gRmUobmV3IGUoQSksQS5lKzEsZS5yb3VuZGluZyl9LENlLnNpbmU9Q2Uuc2luPWZ1bmN0aW9uKCl7dmFyIEEsZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yO3JldHVybiB0LmlzRmluaXRlKCk/dC5pc1plcm8oKT9uZXcgbih0KTooQT1uLnByZWNpc2lvbixlPW4ucm91bmRpbmcsbi5wcmVjaXNpb249QStNYXRoLm1heCh0LmUsdC5zZCgpKSs3LG4ucm91bmRpbmc9MSx0PWZ1bmN0aW9uKEEsZSl7dmFyIHQsbj1lLmQubGVuZ3RoO2lmKG48MylyZXR1cm4gZS5pc1plcm8oKT9lOnZlKEEsMixlLGUpO3Q9KHQ9MS40Kk1hdGguc3FydChuKSk+MTY/MTY6MHx0LGU9dmUoQSwyLGU9ZS50aW1lcygxL2tlKDUsdCkpLGUpO2Zvcih2YXIgaSxyPW5ldyBBKDUpLG89bmV3IEEoMTYpLHM9bmV3IEEoMjApO3QtLTspaT1lLnRpbWVzKGUpLGU9ZS50aW1lcyhyLnBsdXMoaS50aW1lcyhvLnRpbWVzKGkpLm1pbnVzKHMpKSkpO3JldHVybiBlfShuLGplKG4sdCkpLG4ucHJlY2lzaW9uPUEsbi5yb3VuZGluZz1lLEZlKFhBPjI/dC5uZWcoKTp0LEEsZSwhMCkpOm5ldyBuKE5hTil9LENlLnNxdWFyZVJvb3Q9Q2Uuc3FydD1mdW5jdGlvbigpe3ZhciBBLGUsdCxuLGkscixvPXRoaXMscz1vLmQsYT1vLmUsQj1vLnMsYz1vLmNvbnN0cnVjdG9yO2lmKDEhPT1CfHwhc3x8IXNbMF0pcmV0dXJuIG5ldyBjKCFCfHxCPDAmJighc3x8c1swXSk/TmFOOnM/bzoxLzApO2ZvcihuZT0hMSwwPT0oQj1NYXRoLnNxcnQoK28pKXx8Qj09MS8wPygoKGU9SWUocykpLmxlbmd0aCthKSUyPT0wJiYoZSs9IjAiKSxCPU1hdGguc3FydChlKSxhPUJlKChhKzEpLzIpLShhPDB8fGElMiksbj1uZXcgYyhlPUI9PTEvMD8iNWUiK2E6KGU9Qi50b0V4cG9uZW50aWFsKCkpLnNsaWNlKDAsZS5pbmRleE9mKCJlIikrMSkrYSkpOm49bmV3IGMoQi50b1N0cmluZygpKSx0PShhPWMucHJlY2lzaW9uKSszOzspaWYobj0ocj1uKS5wbHVzKG1lKG8scix0KzIsMSkpLnRpbWVzKC41KSxJZShyLmQpLnNsaWNlKDAsdCk9PT0oZT1JZShuLmQpKS5zbGljZSgwLHQpKXtpZigiOTk5OSIhPShlPWUuc2xpY2UodC0zLHQrMSkpJiYoaXx8IjQ5OTkiIT1lKSl7K2UmJigrZS5zbGljZSgxKXx8IjUiIT1lLmNoYXJBdCgwKSl8fChGZShuLGErMSwxKSxBPSFuLnRpbWVzKG4pLmVxKG8pKTticmVha31pZighaSYmKEZlKHIsYSsxLDApLHIudGltZXMocikuZXEobykpKXtuPXI7YnJlYWt9dCs9NCxpPTF9cmV0dXJuIG5lPSEwLEZlKG4sYSxjLnJvdW5kaW5nLEEpfSxDZS50YW5nZW50PUNlLnRhbj1mdW5jdGlvbigpe3ZhciBBLGUsdD10aGlzLG49dC5jb25zdHJ1Y3RvcjtyZXR1cm4gdC5pc0Zpbml0ZSgpP3QuaXNaZXJvKCk/bmV3IG4odCk6KEE9bi5wcmVjaXNpb24sZT1uLnJvdW5kaW5nLG4ucHJlY2lzaW9uPUErMTAsbi5yb3VuZGluZz0xLCh0PXQuc2luKCkpLnM9MSx0PW1lKHQsbmV3IG4oMSkubWludXModC50aW1lcyh0KSkuc3FydCgpLEErMTAsMCksbi5wcmVjaXNpb249QSxuLnJvdW5kaW5nPWUsRmUoMj09WEF8fDQ9PVhBP3QubmVnKCk6dCxBLGUsITApKTpuZXcgbihOYU4pfSxDZS50aW1lcz1DZS5tdWw9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuLGkscixvLHMsYSxCLGM9dGhpcyxnPWMuY29uc3RydWN0b3IsRT1jLmQsUT0oQT1uZXcgZyhBKSkuZDtpZihBLnMqPWMucywhKEUmJkVbMF0mJlEmJlFbMF0pKXJldHVybiBuZXcgZyghQS5zfHxFJiYhRVswXSYmIVF8fFEmJiFRWzBdJiYhRT9OYU46RSYmUT8wKkEuczpBLnMvMCk7Zm9yKHQ9QmUoYy5lLzcpK0JlKEEuZS83KSwoYT1FLmxlbmd0aCk8KEI9US5sZW5ndGgpJiYocj1FLEU9USxRPXIsbz1hLGE9QixCPW8pLHI9W10sbj1vPWErQjtuLS07KXIucHVzaCgwKTtmb3Iobj1COy0tbj49MDspe2ZvcihlPTAsaT1hK247aT5uOylzPXJbaV0rUVtuXSpFW2ktbi0xXStlLHJbaS0tXT1zJWxlfDAsZT1zL2xlfDA7cltpXT0ocltpXStlKSVsZXwwfWZvcig7IXJbLS1vXTspci5wb3AoKTtyZXR1cm4gZT8rK3Q6ci5zaGlmdCgpLEEuZD1yLEEuZT1ZZShyLHQpLG5lP0ZlKEEsZy5wcmVjaXNpb24sZy5yb3VuZGluZyk6QX0sQ2UudG9CaW5hcnk9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gSmUodGhpcywyLEEsZSl9LENlLnRvRGVjaW1hbFBsYWNlcz1DZS50b0RQPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcyxuPXQuY29uc3RydWN0b3I7cmV0dXJuIHQ9bmV3IG4odCksdm9pZCAwPT09QT90OihNZShBLDAscUEpLHZvaWQgMD09PWU/ZT1uLnJvdW5kaW5nOk1lKGUsMCw4KSxGZSh0LEErdC5lKzEsZSkpfSxDZS50b0V4cG9uZW50aWFsPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbj10aGlzLGk9bi5jb25zdHJ1Y3RvcjtyZXR1cm4gdm9pZCAwPT09QT90PURlKG4sITApOihNZShBLDAscUEpLHZvaWQgMD09PWU/ZT1pLnJvdW5kaW5nOk1lKGUsMCw4KSx0PURlKG49RmUobmV3IGkobiksQSsxLGUpLCEwLEErMSkpLG4uaXNOZWcoKSYmIW4uaXNaZXJvKCk/Ii0iK3Q6dH0sQ2UudG9GaXhlZD1mdW5jdGlvbihBLGUpe3ZhciB0LG4saT10aGlzLHI9aS5jb25zdHJ1Y3RvcjtyZXR1cm4gdm9pZCAwPT09QT90PURlKGkpOihNZShBLDAscUEpLHZvaWQgMD09PWU/ZT1yLnJvdW5kaW5nOk1lKGUsMCw4KSx0PURlKG49RmUobmV3IHIoaSksQStpLmUrMSxlKSwhMSxBK24uZSsxKSksaS5pc05lZygpJiYhaS5pc1plcm8oKT8iLSIrdDp0fSxDZS50b0ZyYWN0aW9uPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbixpLHIsbyxzLGEsQixjLGcsRSxRPXRoaXMsdT1RLmQsbD1RLmNvbnN0cnVjdG9yO2lmKCF1KXJldHVybiBuZXcgbChRKTtpZihCPXQ9bmV3IGwoMSksbj1hPW5ldyBsKDApLG89KHI9KGU9bmV3IGwobikpLmU9VWUodSktUS5lLTEpJTcsZS5kWzBdPWNlKDEwLG88MD83K286byksbnVsbD09QSlBPXI+MD9lOkI7ZWxzZXtpZighKHM9bmV3IGwoQSkpLmlzSW50KCl8fHMubHQoQikpdGhyb3cgRXJyb3IocmUrcyk7QT1zLmd0KGUpP3I+MD9lOkI6c31mb3IobmU9ITEscz1uZXcgbChJZSh1KSksYz1sLnByZWNpc2lvbixsLnByZWNpc2lvbj1yPTcqdS5sZW5ndGgqMjtnPW1lKHMsZSwwLDEsMSksMSE9KGk9dC5wbHVzKGcudGltZXMobikpKS5jbXAoQSk7KXQ9bixuPWksaT1CLEI9YS5wbHVzKGcudGltZXMoaSkpLGE9aSxpPWUsZT1zLm1pbnVzKGcudGltZXMoaSkpLHM9aTtyZXR1cm4gaT1tZShBLm1pbnVzKHQpLG4sMCwxLDEpLGE9YS5wbHVzKGkudGltZXMoQikpLHQ9dC5wbHVzKGkudGltZXMobikpLGEucz1CLnM9US5zLEU9bWUoQixuLHIsMSkubWludXMoUSkuYWJzKCkuY21wKG1lKGEsdCxyLDEpLm1pbnVzKFEpLmFicygpKTwxP1tCLG5dOlthLHRdLGwucHJlY2lzaW9uPWMsbmU9ITAsRX0sQ2UudG9IZXhhZGVjaW1hbD1DZS50b0hleD1mdW5jdGlvbihBLGUpe3JldHVybiBKZSh0aGlzLDE2LEEsZSl9LENlLnRvTmVhcmVzdD1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMsbj10LmNvbnN0cnVjdG9yO2lmKHQ9bmV3IG4odCksbnVsbD09QSl7aWYoIXQuZClyZXR1cm4gdDtBPW5ldyBuKDEpLGU9bi5yb3VuZGluZ31lbHNle2lmKEE9bmV3IG4oQSksdm9pZCAwPT09ZT9lPW4ucm91bmRpbmc6TWUoZSwwLDgpLCF0LmQpcmV0dXJuIEEucz90OkE7aWYoIUEuZClyZXR1cm4gQS5zJiYoQS5zPXQucyksQX1yZXR1cm4gQS5kWzBdPyhuZT0hMSx0PW1lKHQsQSwwLGUsMSkudGltZXMoQSksbmU9ITAsRmUodCkpOihBLnM9dC5zLHQ9QSksdH0sQ2UudG9OdW1iZXI9ZnVuY3Rpb24oKXtyZXR1cm4rdGhpc30sQ2UudG9PY3RhbD1mdW5jdGlvbihBLGUpe3JldHVybiBKZSh0aGlzLDgsQSxlKX0sQ2UudG9Qb3dlcj1DZS5wb3c9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuLGkscixvLHM9dGhpcyxhPXMuY29uc3RydWN0b3IsQj0rKEE9bmV3IGEoQSkpO2lmKCEocy5kJiZBLmQmJnMuZFswXSYmQS5kWzBdKSlyZXR1cm4gbmV3IGEoY2UoK3MsQikpO2lmKChzPW5ldyBhKHMpKS5lcSgxKSlyZXR1cm4gcztpZihuPWEucHJlY2lzaW9uLHI9YS5yb3VuZGluZyxBLmVxKDEpKXJldHVybiBGZShzLG4scik7aWYoKGU9QmUoQS5lLzcpKT49QS5kLmxlbmd0aC0xJiYodD1CPDA/LUI6Qik8PTkwMDcxOTkyNTQ3NDA5OTEpcmV0dXJuIGk9VGUoYSxzLHQsbiksQS5zPDA/bmV3IGEoMSkuZGl2KGkpOkZlKGksbixyKTtpZigobz1zLnMpPDApe2lmKGU8QS5kLmxlbmd0aC0xKXJldHVybiBuZXcgYShOYU4pO2lmKDA9PSgxJkEuZFtlXSkmJihvPTEpLDA9PXMuZSYmMT09cy5kWzBdJiYxPT1zLmQubGVuZ3RoKXJldHVybiBzLnM9byxzfXJldHVybihlPTAhPSh0PWNlKCtzLEIpKSYmaXNGaW5pdGUodCk/bmV3IGEodCsiIikuZTpCZShCKihNYXRoLmxvZygiMC4iK0llKHMuZCkpL01hdGguTE4xMCtzLmUrMSkpKT5hLm1heEUrMXx8ZTxhLm1pbkUtMT9uZXcgYShlPjA/by8wOjApOihuZT0hMSxhLnJvdW5kaW5nPXMucz0xLHQ9TWF0aC5taW4oMTIsKGUrIiIpLmxlbmd0aCksKGk9R2UoQS50aW1lcyhTZShzLG4rdCkpLG4pKS5kJiZkZSgoaT1GZShpLG4rNSwxKSkuZCxuLHIpJiYoZT1uKzEwLCtJZSgoaT1GZShHZShBLnRpbWVzKFNlKHMsZSt0KSksZSksZSs1LDEpKS5kKS5zbGljZShuKzEsbisxNSkrMT09MWUxNCYmKGk9RmUoaSxuKzEsMCkpKSxpLnM9byxuZT0hMCxhLnJvdW5kaW5nPXIsRmUoaSxuLHIpKX0sQ2UudG9QcmVjaXNpb249ZnVuY3Rpb24oQSxlKXt2YXIgdCxuPXRoaXMsaT1uLmNvbnN0cnVjdG9yO3JldHVybiB2b2lkIDA9PT1BP3Q9RGUobixuLmU8PWkudG9FeHBOZWd8fG4uZT49aS50b0V4cFBvcyk6KE1lKEEsMSxxQSksdm9pZCAwPT09ZT9lPWkucm91bmRpbmc6TWUoZSwwLDgpLHQ9RGUobj1GZShuZXcgaShuKSxBLGUpLEE8PW4uZXx8bi5lPD1pLnRvRXhwTmVnLEEpKSxuLmlzTmVnKCkmJiFuLmlzWmVybygpPyItIit0OnR9LENlLnRvU2lnbmlmaWNhbnREaWdpdHM9Q2UudG9TRD1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuY29uc3RydWN0b3I7cmV0dXJuIHZvaWQgMD09PUE/KEE9dC5wcmVjaXNpb24sZT10LnJvdW5kaW5nKTooTWUoQSwxLHFBKSx2b2lkIDA9PT1lP2U9dC5yb3VuZGluZzpNZShlLDAsOCkpLEZlKG5ldyB0KHRoaXMpLEEsZSl9LENlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcyxlPUEuY29uc3RydWN0b3IsdD1EZShBLEEuZTw9ZS50b0V4cE5lZ3x8QS5lPj1lLnRvRXhwUG9zKTtyZXR1cm4gQS5pc05lZygpJiYhQS5pc1plcm8oKT8iLSIrdDp0fSxDZS50cnVuY2F0ZWQ9Q2UudHJ1bmM9ZnVuY3Rpb24oKXtyZXR1cm4gRmUobmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyksdGhpcy5lKzEsMSl9LENlLnZhbHVlT2Y9Q2UudG9KU09OPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcyxlPUEuY29uc3RydWN0b3IsdD1EZShBLEEuZTw9ZS50b0V4cE5lZ3x8QS5lPj1lLnRvRXhwUG9zKTtyZXR1cm4gQS5pc05lZygpPyItIit0OnR9O3ZhciBtZT1mdW5jdGlvbigpe2Z1bmN0aW9uIEEoQSxlLHQpe3ZhciBuLGk9MCxyPUEubGVuZ3RoO2ZvcihBPUEuc2xpY2UoKTtyLS07KW49QVtyXSplK2ksQVtyXT1uJXR8MCxpPW4vdHwwO3JldHVybiBpJiZBLnVuc2hpZnQoaSksQX1mdW5jdGlvbiBlKEEsZSx0LG4pe3ZhciBpLHI7aWYodCE9bilyPXQ+bj8xOi0xO2Vsc2UgZm9yKGk9cj0wO2k8dDtpKyspaWYoQVtpXSE9ZVtpXSl7cj1BW2ldPmVbaV0/MTotMTticmVha31yZXR1cm4gcn1mdW5jdGlvbiB0KEEsZSx0LG4pe2Zvcih2YXIgaT0wO3QtLTspQVt0XS09aSxpPUFbdF08ZVt0XT8xOjAsQVt0XT1pKm4rQVt0XS1lW3RdO2Zvcig7IUFbMF0mJkEubGVuZ3RoPjE7KUEuc2hpZnQoKX1yZXR1cm4gZnVuY3Rpb24obixpLHIsbyxzLGEpe3ZhciBCLGMsZyxFLFEsdSxsLGgsdyxDLEksTSxkLHAsbSxGLEQsWSxmLE4sVT1uLmNvbnN0cnVjdG9yLHk9bi5zPT1pLnM/MTotMSxUPW4uZCx4PWkuZDtpZighKFQmJlRbMF0mJngmJnhbMF0pKXJldHVybiBuZXcgVShuLnMmJmkucyYmKFQ/IXh8fFRbMF0hPXhbMF06eCk/VCYmMD09VFswXXx8IXg/MCp5OnkvMDpOYU4pO2ZvcihhPyhRPTEsYz1uLmUtaS5lKTooYT1sZSxRPTcsYz1CZShuLmUvUSktQmUoaS5lL1EpKSxmPXgubGVuZ3RoLEQ9VC5sZW5ndGgsQz0odz1uZXcgVSh5KSkuZD1bXSxnPTA7eFtnXT09KFRbZ118fDApO2crKyk7aWYoeFtnXT4oVFtnXXx8MCkmJmMtLSxudWxsPT1yPyhwPXI9VS5wcmVjaXNpb24sbz1VLnJvdW5kaW5nKTpwPXM/cisobi5lLWkuZSkrMTpyLHA8MClDLnB1c2goMSksdT0hMDtlbHNle2lmKHA9cC9RKzJ8MCxnPTAsMT09Zil7Zm9yKEU9MCx4PXhbMF0scCsrOyhnPER8fEUpJiZwLS07ZysrKW09RSphKyhUW2ddfHwwKSxDW2ddPW0veHwwLEU9bSV4fDA7dT1FfHxnPER9ZWxzZXtmb3IoKEU9YS8oeFswXSsxKXwwKT4xJiYoeD1BKHgsRSxhKSxUPUEoVCxFLGEpLGY9eC5sZW5ndGgsRD1ULmxlbmd0aCksRj1mLE09KEk9VC5zbGljZSgwLGYpKS5sZW5ndGg7TTxmOylJW00rK109MDsoTj14LnNsaWNlKCkpLnVuc2hpZnQoMCksWT14WzBdLHhbMV0+PWEvMiYmKytZO2Rve0U9MCwoQj1lKHgsSSxmLE0pKTwwPyhkPUlbMF0sZiE9TSYmKGQ9ZCphKyhJWzFdfHwwKSksKEU9ZC9ZfDApPjE/KEU+PWEmJihFPWEtMSksMT09KEI9ZShsPUEoeCxFLGEpLEksaD1sLmxlbmd0aCxNPUkubGVuZ3RoKSkmJihFLS0sdChsLGY8aD9OOngsaCxhKSkpOigwPT1FJiYoQj1FPTEpLGw9eC5zbGljZSgpKSwoaD1sLmxlbmd0aCk8TSYmbC51bnNoaWZ0KDApLHQoSSxsLE0sYSksLTE9PUImJihCPWUoeCxJLGYsTT1JLmxlbmd0aCkpPDEmJihFKyssdChJLGY8TT9OOngsTSxhKSksTT1JLmxlbmd0aCk6MD09PUImJihFKyssST1bMF0pLENbZysrXT1FLEImJklbMF0/SVtNKytdPVRbRl18fDA6KEk9W1RbRl1dLE09MSl9d2hpbGUoKEYrKzxEfHx2b2lkIDAhPT1JWzBdKSYmcC0tKTt1PXZvaWQgMCE9PUlbMF19Q1swXXx8Qy5zaGlmdCgpfWlmKDE9PVEpdy5lPWMsS0E9dTtlbHNle2ZvcihnPTEsRT1DWzBdO0U+PTEwO0UvPTEwKWcrKzt3LmU9ZytjKlEtMSxGZSh3LHM/cit3LmUrMTpyLG8sdSl9cmV0dXJuIHd9fSgpO2Z1bmN0aW9uIEZlKEEsZSx0LG4pe3ZhciBpLHIsbyxzLGEsQixjLGcsRSxRPUEuY29uc3RydWN0b3I7QTppZihudWxsIT1lKXtpZighKGc9QS5kKSlyZXR1cm4gQTtmb3IoaT0xLHM9Z1swXTtzPj0xMDtzLz0xMClpKys7aWYoKHI9ZS1pKTwwKXIrPTcsbz1lLGE9KGM9Z1tFPTBdKS9jZSgxMCxpLW8tMSklMTB8MDtlbHNlIGlmKChFPU1hdGguY2VpbCgocisxKS83KSk+PShzPWcubGVuZ3RoKSl7aWYoIW4pYnJlYWsgQTtmb3IoO3MrKzw9RTspZy5wdXNoKDApO2M9YT0wLGk9MSxvPShyJT03KS03KzF9ZWxzZXtmb3IoYz1zPWdbRV0saT0xO3M+PTEwO3MvPTEwKWkrKzthPShvPShyJT03KS03K2kpPDA/MDpjL2NlKDEwLGktby0xKSUxMHwwfWlmKG49bnx8ZTwwfHx2b2lkIDAhPT1nW0UrMV18fChvPDA/YzpjJWNlKDEwLGktby0xKSksQj10PDQ/KGF8fG4pJiYoMD09dHx8dD09KEEuczwwPzM6MikpOmE+NXx8NT09YSYmKDQ9PXR8fG58fDY9PXQmJihyPjA/bz4wP2MvY2UoMTAsaS1vKTowOmdbRS0xXSklMTAmMXx8dD09KEEuczwwPzg6NykpLGU8MXx8IWdbMF0pcmV0dXJuIGcubGVuZ3RoPTAsQj8oZS09QS5lKzEsZ1swXT1jZSgxMCwoNy1lJTcpJTcpLEEuZT0tZXx8MCk6Z1swXT1BLmU9MCxBO2lmKDA9PXI/KGcubGVuZ3RoPUUscz0xLEUtLSk6KGcubGVuZ3RoPUUrMSxzPWNlKDEwLDctciksZ1tFXT1vPjA/KGMvY2UoMTAsaS1vKSVjZSgxMCxvKXwwKSpzOjApLEIpZm9yKDs7KXtpZigwPT1FKXtmb3Iocj0xLG89Z1swXTtvPj0xMDtvLz0xMClyKys7Zm9yKG89Z1swXSs9cyxzPTE7bz49MTA7by89MTApcysrO3IhPXMmJihBLmUrKyxnWzBdPT1sZSYmKGdbMF09MSkpO2JyZWFrfWlmKGdbRV0rPXMsZ1tFXSE9bGUpYnJlYWs7Z1tFLS1dPTAscz0xfWZvcihyPWcubGVuZ3RoOzA9PT1nWy0tcl07KWcucG9wKCl9cmV0dXJuIG5lJiYoQS5lPlEubWF4RT8oQS5kPW51bGwsQS5lPU5hTik6QS5lPFEubWluRSYmKEEuZT0wLEEuZD1bMF0pKSxBfWZ1bmN0aW9uIERlKEEsZSx0KXtpZighQS5pc0Zpbml0ZSgpKXJldHVybiBiZShBKTt2YXIgbixpPUEuZSxyPUllKEEuZCksbz1yLmxlbmd0aDtyZXR1cm4gZT8odCYmKG49dC1vKT4wP3I9ci5jaGFyQXQoMCkrIi4iK3Iuc2xpY2UoMSkreWUobik6bz4xJiYocj1yLmNoYXJBdCgwKSsiLiIrci5zbGljZSgxKSkscj1yKyhBLmU8MD8iZSI6ImUrIikrQS5lKTppPDA/KHI9IjAuIit5ZSgtaS0xKStyLHQmJihuPXQtbyk+MCYmKHIrPXllKG4pKSk6aT49bz8ocis9eWUoaSsxLW8pLHQmJihuPXQtaS0xKT4wJiYocj1yKyIuIit5ZShuKSkpOigobj1pKzEpPG8mJihyPXIuc2xpY2UoMCxuKSsiLiIrci5zbGljZShuKSksdCYmKG49dC1vKT4wJiYoaSsxPT09byYmKHIrPSIuIikscis9eWUobikpKSxyfWZ1bmN0aW9uIFllKEEsZSl7dmFyIHQ9QVswXTtmb3IoZSo9Nzt0Pj0xMDt0Lz0xMCllKys7cmV0dXJuIGV9ZnVuY3Rpb24gZmUoQSxlLHQpe2lmKGU+aGUpdGhyb3cgbmU9ITAsdCYmKEEucHJlY2lzaW9uPXQpLEVycm9yKG9lKTtyZXR1cm4gRmUobmV3IEEoQWUpLGUsMSwhMCl9ZnVuY3Rpb24gTmUoQSxlLHQpe2lmKGU+d2UpdGhyb3cgRXJyb3Iob2UpO3JldHVybiBGZShuZXcgQShlZSksZSx0LCEwKX1mdW5jdGlvbiBVZShBKXt2YXIgZT1BLmxlbmd0aC0xLHQ9NyplKzE7aWYoZT1BW2VdKXtmb3IoO2UlMTA9PTA7ZS89MTApdC0tO2ZvcihlPUFbMF07ZT49MTA7ZS89MTApdCsrfXJldHVybiB0fWZ1bmN0aW9uIHllKEEpe2Zvcih2YXIgZT0iIjtBLS07KWUrPSIwIjtyZXR1cm4gZX1mdW5jdGlvbiBUZShBLGUsdCxuKXt2YXIgaSxyPW5ldyBBKDEpLG89TWF0aC5jZWlsKG4vNys0KTtmb3IobmU9ITE7Oyl7aWYodCUyJiZ6ZSgocj1yLnRpbWVzKGUpKS5kLG8pJiYoaT0hMCksMD09PSh0PUJlKHQvMikpKXt0PXIuZC5sZW5ndGgtMSxpJiYwPT09ci5kW3RdJiYrK3IuZFt0XTticmVha316ZSgoZT1lLnRpbWVzKGUpKS5kLG8pfXJldHVybiBuZT0hMCxyfWZ1bmN0aW9uIHhlKEEpe3JldHVybiAxJkEuZFtBLmQubGVuZ3RoLTFdfWZ1bmN0aW9uIFJlKEEsZSx0KXtmb3IodmFyIG4saT1uZXcgQShlWzBdKSxyPTA7KytyPGUubGVuZ3RoOyl7aWYoIShuPW5ldyBBKGVbcl0pKS5zKXtpPW47YnJlYWt9aVt0XShuKSYmKGk9bil9cmV0dXJuIGl9ZnVuY3Rpb24gR2UoQSxlKXt2YXIgdCxuLGkscixvLHMsYSxCPTAsYz0wLGc9MCxFPUEuY29uc3RydWN0b3IsUT1FLnJvdW5kaW5nLHU9RS5wcmVjaXNpb247aWYoIUEuZHx8IUEuZFswXXx8QS5lPjE3KXJldHVybiBuZXcgRShBLmQ/QS5kWzBdP0EuczwwPzA6MS8wOjE6QS5zP0EuczwwPzA6QTpOYU4pO2ZvcihudWxsPT1lPyhuZT0hMSxhPXUpOmE9ZSxzPW5ldyBFKC4wMzEyNSk7QS5lPi0yOylBPUEudGltZXMocyksZys9NTtmb3IoYSs9bj1NYXRoLmxvZyhjZSgyLGcpKS9NYXRoLkxOMTAqMis1fDAsdD1yPW89bmV3IEUoMSksRS5wcmVjaXNpb249YTs7KXtpZihyPUZlKHIudGltZXMoQSksYSwxKSx0PXQudGltZXMoKytjKSxJZSgocz1vLnBsdXMobWUocix0LGEsMSkpKS5kKS5zbGljZSgwLGEpPT09SWUoby5kKS5zbGljZSgwLGEpKXtmb3IoaT1nO2ktLTspbz1GZShvLnRpbWVzKG8pLGEsMSk7aWYobnVsbCE9ZSlyZXR1cm4gRS5wcmVjaXNpb249dSxvO2lmKCEoQjwzJiZkZShvLmQsYS1uLFEsQikpKXJldHVybiBGZShvLEUucHJlY2lzaW9uPXUsUSxuZT0hMCk7RS5wcmVjaXNpb249YSs9MTAsdD1yPXM9bmV3IEUoMSksYz0wLEIrK31vPXN9fWZ1bmN0aW9uIFNlKEEsZSl7dmFyIHQsbixpLHIsbyxzLGEsQixjLGcsRSxRPTEsdT1BLGw9dS5kLGg9dS5jb25zdHJ1Y3Rvcix3PWgucm91bmRpbmcsQz1oLnByZWNpc2lvbjtpZih1LnM8MHx8IWx8fCFsWzBdfHwhdS5lJiYxPT1sWzBdJiYxPT1sLmxlbmd0aClyZXR1cm4gbmV3IGgobCYmIWxbMF0/LTEvMDoxIT11LnM/TmFOOmw/MDp1KTtpZihudWxsPT1lPyhuZT0hMSxjPUMpOmM9ZSxoLnByZWNpc2lvbj1jKz0xMCxuPSh0PUllKGwpKS5jaGFyQXQoMCksIShNYXRoLmFicyhyPXUuZSk8MTVlMTQpKXJldHVybiBCPWZlKGgsYysyLEMpLnRpbWVzKHIrIiIpLHU9U2UobmV3IGgobisiLiIrdC5zbGljZSgxKSksYy0xMCkucGx1cyhCKSxoLnByZWNpc2lvbj1DLG51bGw9PWU/RmUodSxDLHcsbmU9ITApOnU7Zm9yKDtuPDcmJjEhPW58fDE9PW4mJnQuY2hhckF0KDEpPjM7KW49KHQ9SWUoKHU9dS50aW1lcyhBKSkuZCkpLmNoYXJBdCgwKSxRKys7Zm9yKHI9dS5lLG4+MT8odT1uZXcgaCgiMC4iK3QpLHIrKyk6dT1uZXcgaChuKyIuIit0LnNsaWNlKDEpKSxnPXUsYT1vPXU9bWUodS5taW51cygxKSx1LnBsdXMoMSksYywxKSxFPUZlKHUudGltZXModSksYywxKSxpPTM7Oyl7aWYobz1GZShvLnRpbWVzKEUpLGMsMSksSWUoKEI9YS5wbHVzKG1lKG8sbmV3IGgoaSksYywxKSkpLmQpLnNsaWNlKDAsYyk9PT1JZShhLmQpLnNsaWNlKDAsYykpe2lmKGE9YS50aW1lcygyKSwwIT09ciYmKGE9YS5wbHVzKGZlKGgsYysyLEMpLnRpbWVzKHIrIiIpKSksYT1tZShhLG5ldyBoKFEpLGMsMSksbnVsbCE9ZSlyZXR1cm4gaC5wcmVjaXNpb249QyxhO2lmKCFkZShhLmQsYy0xMCx3LHMpKXJldHVybiBGZShhLGgucHJlY2lzaW9uPUMsdyxuZT0hMCk7aC5wcmVjaXNpb249Yys9MTAsQj1vPXU9bWUoZy5taW51cygxKSxnLnBsdXMoMSksYywxKSxFPUZlKHUudGltZXModSksYywxKSxpPXM9MX1hPUIsaSs9Mn19ZnVuY3Rpb24gYmUoQSl7cmV0dXJuIFN0cmluZyhBLnMqQS5zLzApfWZ1bmN0aW9uIEhlKEEsZSl7dmFyIHQsbixpO2ZvcigodD1lLmluZGV4T2YoIi4iKSk+LTEmJihlPWUucmVwbGFjZSgiLiIsIiIpKSwobj1lLnNlYXJjaCgvZS9pKSk+MD8odDwwJiYodD1uKSx0Kz0rZS5zbGljZShuKzEpLGU9ZS5zdWJzdHJpbmcoMCxuKSk6dDwwJiYodD1lLmxlbmd0aCksbj0wOzQ4PT09ZS5jaGFyQ29kZUF0KG4pO24rKyk7Zm9yKGk9ZS5sZW5ndGg7NDg9PT1lLmNoYXJDb2RlQXQoaS0xKTstLWkpO2lmKGU9ZS5zbGljZShuLGkpKXtpZihpLT1uLEEuZT10PXQtbi0xLEEuZD1bXSxuPSh0KzEpJTcsdDwwJiYobis9NyksbjxpKXtmb3IobiYmQS5kLnB1c2goK2Uuc2xpY2UoMCxuKSksaS09NztuPGk7KUEuZC5wdXNoKCtlLnNsaWNlKG4sbis9NykpO249Ny0oZT1lLnNsaWNlKG4pKS5sZW5ndGh9ZWxzZSBuLT1pO2Zvcig7bi0tOyllKz0iMCI7QS5kLnB1c2goK2UpLG5lJiYoQS5lPkEuY29uc3RydWN0b3IubWF4RT8oQS5kPW51bGwsQS5lPU5hTik6QS5lPEEuY29uc3RydWN0b3IubWluRSYmKEEuZT0wLEEuZD1bMF0pKX1lbHNlIEEuZT0wLEEuZD1bMF07cmV0dXJuIEF9ZnVuY3Rpb24gdmUoQSxlLHQsbixpKXt2YXIgcixvLHMsYSxCPUEucHJlY2lzaW9uLGM9TWF0aC5jZWlsKEIvNyk7Zm9yKG5lPSExLGE9dC50aW1lcyh0KSxzPW5ldyBBKG4pOzspe2lmKG89bWUocy50aW1lcyhhKSxuZXcgQShlKysqZSsrKSxCLDEpLHM9aT9uLnBsdXMobyk6bi5taW51cyhvKSxuPW1lKG8udGltZXMoYSksbmV3IEEoZSsrKmUrKyksQiwxKSx2b2lkIDAhPT0obz1zLnBsdXMobikpLmRbY10pe2ZvcihyPWM7by5kW3JdPT09cy5kW3JdJiZyLS07KTtpZigtMT09cilicmVha31yPXMscz1uLG49byxvPXJ9cmV0dXJuIG5lPSEwLG8uZC5sZW5ndGg9YysxLG99ZnVuY3Rpb24ga2UoQSxlKXtmb3IodmFyIHQ9QTstLWU7KXQqPUE7cmV0dXJuIHR9ZnVuY3Rpb24gamUoQSxlKXt2YXIgdCxuPWUuczwwLGk9TmUoQSxBLnByZWNpc2lvbiwxKSxyPWkudGltZXMoLjUpO2lmKChlPWUuYWJzKCkpLmx0ZShyKSlyZXR1cm4gWEE9bj80OjEsZTtpZigodD1lLmRpdlRvSW50KGkpKS5pc1plcm8oKSlYQT1uPzM6MjtlbHNle2lmKChlPWUubWludXModC50aW1lcyhpKSkpLmx0ZShyKSlyZXR1cm4gWEE9eGUodCk/bj8yOjM6bj80OjEsZTtYQT14ZSh0KT9uPzE6NDpuPzM6Mn1yZXR1cm4gZS5taW51cyhpKS5hYnMoKX1mdW5jdGlvbiBKZShBLGUsdCxuKXt2YXIgaSxyLG8scyxhLEIsYyxnLEUsUT1BLmNvbnN0cnVjdG9yLHU9dm9pZCAwIT09dDtpZih1PyhNZSh0LDEscUEpLHZvaWQgMD09PW4/bj1RLnJvdW5kaW5nOk1lKG4sMCw4KSk6KHQ9US5wcmVjaXNpb24sbj1RLnJvdW5kaW5nKSxBLmlzRmluaXRlKCkpe2Zvcih1PyhpPTIsMTY9PWU/dD00KnQtMzo4PT1lJiYodD0zKnQtMikpOmk9ZSwobz0oYz1EZShBKSkuaW5kZXhPZigiLiIpKT49MCYmKGM9Yy5yZXBsYWNlKCIuIiwiIiksKEU9bmV3IFEoMSkpLmU9Yy5sZW5ndGgtbyxFLmQ9cGUoRGUoRSksMTAsaSksRS5lPUUuZC5sZW5ndGgpLHI9YT0oZz1wZShjLDEwLGkpKS5sZW5ndGg7MD09Z1stLWFdOylnLnBvcCgpO2lmKGdbMF0pe2lmKG88MD9yLS06KChBPW5ldyBRKEEpKS5kPWcsQS5lPXIsZz0oQT1tZShBLEUsdCxuLDAsaSkpLmQscj1BLmUsQj1LQSksbz1nW3RdLHM9aS8yLEI9Qnx8dm9pZCAwIT09Z1t0KzFdLEI9bjw0Pyh2b2lkIDAhPT1vfHxCKSYmKDA9PT1ufHxuPT09KEEuczwwPzM6MikpOm8+c3x8bz09PXMmJig0PT09bnx8Qnx8Nj09PW4mJjEmZ1t0LTFdfHxuPT09KEEuczwwPzg6NykpLGcubGVuZ3RoPXQsQilmb3IoOysrZ1stLXRdPmktMTspZ1t0XT0wLHR8fCgrK3IsZy51bnNoaWZ0KDEpKTtmb3IoYT1nLmxlbmd0aDshZ1thLTFdOy0tYSk7Zm9yKG89MCxjPSIiO288YTtvKyspYys9JEEuY2hhckF0KGdbb10pO2lmKHUpe2lmKGE+MSlpZigxNj09ZXx8OD09ZSl7Zm9yKG89MTY9PWU/NDozLC0tYTthJW87YSsrKWMrPSIwIjtmb3IoYT0oZz1wZShjLGksZSkpLmxlbmd0aDshZ1thLTFdOy0tYSk7Zm9yKG89MSxjPSIxLiI7bzxhO28rKyljKz0kQS5jaGFyQXQoZ1tvXSl9ZWxzZSBjPWMuY2hhckF0KDApKyIuIitjLnNsaWNlKDEpO2M9YysocjwwPyJwIjoicCsiKStyfWVsc2UgaWYocjwwKXtmb3IoOysrcjspYz0iMCIrYztjPSIwLiIrY31lbHNlIGlmKCsrcj5hKWZvcihyLT1hO3ItLTspYys9IjAiO2Vsc2UgcjxhJiYoYz1jLnNsaWNlKDAscikrIi4iK2Muc2xpY2UocikpfWVsc2UgYz11PyIwcCswIjoiMCI7Yz0oMTY9PWU/IjB4IjoyPT1lPyIwYiI6OD09ZT8iMG8iOiIiKStjfWVsc2UgYz1iZShBKTtyZXR1cm4gQS5zPDA/Ii0iK2M6Y31mdW5jdGlvbiB6ZShBLGUpe2lmKEEubGVuZ3RoPmUpcmV0dXJuIEEubGVuZ3RoPWUsITB9ZnVuY3Rpb24gTGUoQSl7cmV0dXJuIG5ldyB0aGlzKEEpLmFicygpfWZ1bmN0aW9uIFBlKEEpe3JldHVybiBuZXcgdGhpcyhBKS5hY29zKCl9ZnVuY3Rpb24gT2UoQSl7cmV0dXJuIG5ldyB0aGlzKEEpLmFjb3NoKCl9ZnVuY3Rpb24gVmUoQSxlKXtyZXR1cm4gbmV3IHRoaXMoQSkucGx1cyhlKX1mdW5jdGlvbiBXZShBKXtyZXR1cm4gbmV3IHRoaXMoQSkuYXNpbigpfWZ1bmN0aW9uIEtlKEEpe3JldHVybiBuZXcgdGhpcyhBKS5hc2luaCgpfWZ1bmN0aW9uIFhlKEEpe3JldHVybiBuZXcgdGhpcyhBKS5hdGFuKCl9ZnVuY3Rpb24gWmUoQSl7cmV0dXJuIG5ldyB0aGlzKEEpLmF0YW5oKCl9ZnVuY3Rpb24gX2UoQSxlKXtBPW5ldyB0aGlzKEEpLGU9bmV3IHRoaXMoZSk7dmFyIHQsbj10aGlzLnByZWNpc2lvbixpPXRoaXMucm91bmRpbmcscj1uKzQ7cmV0dXJuIEEucyYmZS5zP0EuZHx8ZS5kPyFlLmR8fEEuaXNaZXJvKCk/KHQ9ZS5zPDA/TmUodGhpcyxuLGkpOm5ldyB0aGlzKDApKS5zPUEuczohQS5kfHxlLmlzWmVybygpPyh0PU5lKHRoaXMsciwxKS50aW1lcyguNSkpLnM9QS5zOmUuczwwPyh0aGlzLnByZWNpc2lvbj1yLHRoaXMucm91bmRpbmc9MSx0PXRoaXMuYXRhbihtZShBLGUsciwxKSksZT1OZSh0aGlzLHIsMSksdGhpcy5wcmVjaXNpb249bix0aGlzLnJvdW5kaW5nPWksdD1BLnM8MD90Lm1pbnVzKGUpOnQucGx1cyhlKSk6dD10aGlzLmF0YW4obWUoQSxlLHIsMSkpOih0PU5lKHRoaXMsciwxKS50aW1lcyhlLnM+MD8uMjU6Ljc1KSkucz1BLnM6dD1uZXcgdGhpcyhOYU4pLHR9ZnVuY3Rpb24gcWUoQSl7cmV0dXJuIG5ldyB0aGlzKEEpLmNicnQoKX1mdW5jdGlvbiAkZShBKXtyZXR1cm4gRmUoQT1uZXcgdGhpcyhBKSxBLmUrMSwyKX1mdW5jdGlvbiBBdChBLGUsdCl7cmV0dXJuIG5ldyB0aGlzKEEpLmNsYW1wKGUsdCl9ZnVuY3Rpb24gZXQoQSl7aWYoIUF8fCJvYmplY3QiIT10eXBlb2YgQSl0aHJvdyBFcnJvcihpZSsiT2JqZWN0IGV4cGVjdGVkIik7dmFyIGUsdCxuLGk9ITA9PT1BLmRlZmF1bHRzLHI9WyJwcmVjaXNpb24iLDEscUEsInJvdW5kaW5nIiwwLDgsInRvRXhwTmVnIiwtX0EsMCwidG9FeHBQb3MiLDAsX0EsIm1heEUiLDAsX0EsIm1pbkUiLC1fQSwwLCJtb2R1bG8iLDAsOV07Zm9yKGU9MDtlPHIubGVuZ3RoO2UrPTMpaWYodD1yW2VdLGkmJih0aGlzW3RdPXRlW3RdKSx2b2lkIDAhPT0obj1BW3RdKSl7aWYoIShCZShuKT09PW4mJm4+PXJbZSsxXSYmbjw9cltlKzJdKSl0aHJvdyBFcnJvcihyZSt0KyI6ICIrbik7dGhpc1t0XT1ufWlmKHQ9ImNyeXB0byIsaSYmKHRoaXNbdF09dGVbdF0pLHZvaWQgMCE9PShuPUFbdF0pKXtpZighMCE9PW4mJiExIT09biYmMCE9PW4mJjEhPT1uKXRocm93IEVycm9yKHJlK3QrIjogIituKTtpZihuKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIGNyeXB0b3x8IWNyeXB0b3x8IWNyeXB0by5nZXRSYW5kb21WYWx1ZXMmJiFjcnlwdG8ucmFuZG9tQnl0ZXMpdGhyb3cgRXJyb3Ioc2UpO3RoaXNbdF09ITB9ZWxzZSB0aGlzW3RdPSExfXJldHVybiB0aGlzfWZ1bmN0aW9uIHR0KEEpe3JldHVybiBuZXcgdGhpcyhBKS5jb3MoKX1mdW5jdGlvbiBudChBKXtyZXR1cm4gbmV3IHRoaXMoQSkuY29zaCgpfWZ1bmN0aW9uIGl0KEEsZSl7cmV0dXJuIG5ldyB0aGlzKEEpLmRpdihlKX1mdW5jdGlvbiBydChBKXtyZXR1cm4gbmV3IHRoaXMoQSkuZXhwKCl9ZnVuY3Rpb24gb3QoQSl7cmV0dXJuIEZlKEE9bmV3IHRoaXMoQSksQS5lKzEsMyl9ZnVuY3Rpb24gc3QoKXt2YXIgQSxlLHQ9bmV3IHRoaXMoMCk7Zm9yKG5lPSExLEE9MDtBPGFyZ3VtZW50cy5sZW5ndGg7KWlmKChlPW5ldyB0aGlzKGFyZ3VtZW50c1tBKytdKSkuZCl0LmQmJih0PXQucGx1cyhlLnRpbWVzKGUpKSk7ZWxzZXtpZihlLnMpcmV0dXJuIG5lPSEwLG5ldyB0aGlzKDEvMCk7dD1lfXJldHVybiBuZT0hMCx0LnNxcnQoKX1mdW5jdGlvbiBhdChBKXtyZXR1cm4gQSBpbnN0YW5jZW9mIFV0fHxBJiZBLnRvU3RyaW5nVGFnPT09YWV8fCExfWZ1bmN0aW9uIEJ0KEEpe3JldHVybiBuZXcgdGhpcyhBKS5sbigpfWZ1bmN0aW9uIGN0KEEsZSl7cmV0dXJuIG5ldyB0aGlzKEEpLmxvZyhlKX1mdW5jdGlvbiBndChBKXtyZXR1cm4gbmV3IHRoaXMoQSkubG9nKDIpfWZ1bmN0aW9uIEV0KEEpe3JldHVybiBuZXcgdGhpcyhBKS5sb2coMTApfWZ1bmN0aW9uIFF0KCl7cmV0dXJuIFJlKHRoaXMsYXJndW1lbnRzLCJsdCIpfWZ1bmN0aW9uIHV0KCl7cmV0dXJuIFJlKHRoaXMsYXJndW1lbnRzLCJndCIpfWZ1bmN0aW9uIGx0KEEsZSl7cmV0dXJuIG5ldyB0aGlzKEEpLm1vZChlKX1mdW5jdGlvbiBodChBLGUpe3JldHVybiBuZXcgdGhpcyhBKS5tdWwoZSl9ZnVuY3Rpb24gd3QoQSxlKXtyZXR1cm4gbmV3IHRoaXMoQSkucG93KGUpfWZ1bmN0aW9uIEN0KEEpe3ZhciBlLHQsbixpLHI9MCxvPW5ldyB0aGlzKDEpLHM9W107aWYodm9pZCAwPT09QT9BPXRoaXMucHJlY2lzaW9uOk1lKEEsMSxxQSksbj1NYXRoLmNlaWwoQS83KSx0aGlzLmNyeXB0bylpZihjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKWZvcihlPWNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQzMkFycmF5KG4pKTtyPG47KShpPWVbcl0pPj00MjllNz9lW3JdPWNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQzMkFycmF5KDEpKVswXTpzW3IrK109aSUxZTc7ZWxzZXtpZighY3J5cHRvLnJhbmRvbUJ5dGVzKXRocm93IEVycm9yKHNlKTtmb3IoZT1jcnlwdG8ucmFuZG9tQnl0ZXMobio9NCk7cjxuOykoaT1lW3JdKyhlW3IrMV08PDgpKyhlW3IrMl08PDE2KSsoKDEyNyZlW3IrM10pPDwyNCkpPj0yMTRlNz9jcnlwdG8ucmFuZG9tQnl0ZXMoNCkuY29weShlLHIpOihzLnB1c2goaSUxZTcpLHIrPTQpO3I9bi80fWVsc2UgZm9yKDtyPG47KXNbcisrXT0xZTcqTWF0aC5yYW5kb20oKXwwO2ZvcihBJT03LChuPXNbLS1yXSkmJkEmJihpPWNlKDEwLDctQSksc1tyXT0obi9pfDApKmkpOzA9PT1zW3JdO3ItLSlzLnBvcCgpO2lmKHI8MCl0PTAscz1bMF07ZWxzZXtmb3IodD0tMTswPT09c1swXTt0LT03KXMuc2hpZnQoKTtmb3Iobj0xLGk9c1swXTtpPj0xMDtpLz0xMCluKys7bjw3JiYodC09Ny1uKX1yZXR1cm4gby5lPXQsby5kPXMsb31mdW5jdGlvbiBJdChBKXtyZXR1cm4gRmUoQT1uZXcgdGhpcyhBKSxBLmUrMSx0aGlzLnJvdW5kaW5nKX1mdW5jdGlvbiBNdChBKXtyZXR1cm4oQT1uZXcgdGhpcyhBKSkuZD9BLmRbMF0/QS5zOjAqQS5zOkEuc3x8TmFOfWZ1bmN0aW9uIGR0KEEpe3JldHVybiBuZXcgdGhpcyhBKS5zaW4oKX1mdW5jdGlvbiBwdChBKXtyZXR1cm4gbmV3IHRoaXMoQSkuc2luaCgpfWZ1bmN0aW9uIG10KEEpe3JldHVybiBuZXcgdGhpcyhBKS5zcXJ0KCl9ZnVuY3Rpb24gRnQoQSxlKXtyZXR1cm4gbmV3IHRoaXMoQSkuc3ViKGUpfWZ1bmN0aW9uIER0KCl7dmFyIEE9MCxlPWFyZ3VtZW50cyx0PW5ldyB0aGlzKGVbQV0pO2ZvcihuZT0hMTt0LnMmJisrQTxlLmxlbmd0aDspdD10LnBsdXMoZVtBXSk7cmV0dXJuIG5lPSEwLEZlKHQsdGhpcy5wcmVjaXNpb24sdGhpcy5yb3VuZGluZyl9ZnVuY3Rpb24gWXQoQSl7cmV0dXJuIG5ldyB0aGlzKEEpLnRhbigpfWZ1bmN0aW9uIGZ0KEEpe3JldHVybiBuZXcgdGhpcyhBKS50YW5oKCl9ZnVuY3Rpb24gTnQoQSl7cmV0dXJuIEZlKEE9bmV3IHRoaXMoQSksQS5lKzEsMSl9Q2VbU3ltYm9sLmZvcigibm9kZWpzLnV0aWwuaW5zcGVjdC5jdXN0b20iKV09Q2UudG9TdHJpbmcsQ2VbU3ltYm9sLnRvU3RyaW5nVGFnXT0iRGVjaW1hbCI7dmFyIFV0PUNlLmNvbnN0cnVjdG9yPWZ1bmN0aW9uIEEoZSl7dmFyIHQsbixpO2Z1bmN0aW9uIHIoQSl7dmFyIGUsdCxuLGk9dGhpcztpZighKGkgaW5zdGFuY2VvZiByKSlyZXR1cm4gbmV3IHIoQSk7aWYoaS5jb25zdHJ1Y3Rvcj1yLGF0KEEpKXJldHVybiBpLnM9QS5zLHZvaWQobmU/IUEuZHx8QS5lPnIubWF4RT8oaS5lPU5hTixpLmQ9bnVsbCk6QS5lPHIubWluRT8oaS5lPTAsaS5kPVswXSk6KGkuZT1BLmUsaS5kPUEuZC5zbGljZSgpKTooaS5lPUEuZSxpLmQ9QS5kP0EuZC5zbGljZSgpOkEuZCkpO2lmKCJudW1iZXIiPT0obj10eXBlb2YgQSkpe2lmKDA9PT1BKXJldHVybiBpLnM9MS9BPDA/LTE6MSxpLmU9MCx2b2lkKGkuZD1bMF0pO2lmKEE8MD8oQT0tQSxpLnM9LTEpOmkucz0xLEE9PT1+fkEmJkE8MWU3KXtmb3IoZT0wLHQ9QTt0Pj0xMDt0Lz0xMCllKys7cmV0dXJuIHZvaWQobmU/ZT5yLm1heEU/KGkuZT1OYU4saS5kPW51bGwpOmU8ci5taW5FPyhpLmU9MCxpLmQ9WzBdKTooaS5lPWUsaS5kPVtBXSk6KGkuZT1lLGkuZD1bQV0pKX1yZXR1cm4gMCpBIT0wPyhBfHwoaS5zPU5hTiksaS5lPU5hTix2b2lkKGkuZD1udWxsKSk6SGUoaSxBLnRvU3RyaW5nKCkpfWlmKCJzdHJpbmciIT09bil0aHJvdyBFcnJvcihyZStBKTtyZXR1cm4gNDU9PT0odD1BLmNoYXJDb2RlQXQoMCkpPyhBPUEuc2xpY2UoMSksaS5zPS0xKTooNDM9PT10JiYoQT1BLnNsaWNlKDEpKSxpLnM9MSksdWUudGVzdChBKT9IZShpLEEpOmZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIsbyxzLGEsQixjO2lmKGUuaW5kZXhPZigiXyIpPi0xKXtpZihlPWUucmVwbGFjZSgvKFxkKV8oPz1cZCkvZywiJDEiKSx1ZS50ZXN0KGUpKXJldHVybiBIZShBLGUpfWVsc2UgaWYoIkluZmluaXR5Ij09PWV8fCJOYU4iPT09ZSlyZXR1cm4rZXx8KEEucz1OYU4pLEEuZT1OYU4sQS5kPW51bGwsQTtpZihFZS50ZXN0KGUpKXQ9MTYsZT1lLnRvTG93ZXJDYXNlKCk7ZWxzZSBpZihnZS50ZXN0KGUpKXQ9MjtlbHNle2lmKCFRZS50ZXN0KGUpKXRocm93IEVycm9yKHJlK2UpO3Q9OH1mb3IoKHI9ZS5zZWFyY2goL3AvaSkpPjA/KGE9K2Uuc2xpY2UocisxKSxlPWUuc3Vic3RyaW5nKDIscikpOmU9ZS5zbGljZSgyKSxvPShyPWUuaW5kZXhPZigiLiIpKT49MCxuPUEuY29uc3RydWN0b3IsbyYmKHI9KHM9KGU9ZS5yZXBsYWNlKCIuIiwiIikpLmxlbmd0aCktcixpPVRlKG4sbmV3IG4odCksciwyKnIpKSxyPWM9KEI9cGUoZSx0LGxlKSkubGVuZ3RoLTE7MD09PUJbcl07LS1yKUIucG9wKCk7cmV0dXJuIHI8MD9uZXcgbigwKkEucyk6KEEuZT1ZZShCLGMpLEEuZD1CLG5lPSExLG8mJihBPW1lKEEsaSw0KnMpKSxhJiYoQT1BLnRpbWVzKE1hdGguYWJzKGEpPDU0P2NlKDIsYSk6VXQucG93KDIsYSkpKSxuZT0hMCxBKX0oaSxBKX1pZihyLnByb3RvdHlwZT1DZSxyLlJPVU5EX1VQPTAsci5ST1VORF9ET1dOPTEsci5ST1VORF9DRUlMPTIsci5ST1VORF9GTE9PUj0zLHIuUk9VTkRfSEFMRl9VUD00LHIuUk9VTkRfSEFMRl9ET1dOPTUsci5ST1VORF9IQUxGX0VWRU49NixyLlJPVU5EX0hBTEZfQ0VJTD03LHIuUk9VTkRfSEFMRl9GTE9PUj04LHIuRVVDTElEPTksci5jb25maWc9ci5zZXQ9ZXQsci5jbG9uZT1BLHIuaXNEZWNpbWFsPWF0LHIuYWJzPUxlLHIuYWNvcz1QZSxyLmFjb3NoPU9lLHIuYWRkPVZlLHIuYXNpbj1XZSxyLmFzaW5oPUtlLHIuYXRhbj1YZSxyLmF0YW5oPVplLHIuYXRhbjI9X2Usci5jYnJ0PXFlLHIuY2VpbD0kZSxyLmNsYW1wPUF0LHIuY29zPXR0LHIuY29zaD1udCxyLmRpdj1pdCxyLmV4cD1ydCxyLmZsb29yPW90LHIuaHlwb3Q9c3Qsci5sbj1CdCxyLmxvZz1jdCxyLmxvZzEwPUV0LHIubG9nMj1ndCxyLm1heD1RdCxyLm1pbj11dCxyLm1vZD1sdCxyLm11bD1odCxyLnBvdz13dCxyLnJhbmRvbT1DdCxyLnJvdW5kPUl0LHIuc2lnbj1NdCxyLnNpbj1kdCxyLnNpbmg9cHQsci5zcXJ0PW10LHIuc3ViPUZ0LHIuc3VtPUR0LHIudGFuPVl0LHIudGFuaD1mdCxyLnRydW5jPU50LHZvaWQgMD09PWUmJihlPXt9KSxlJiYhMCE9PWUuZGVmYXVsdHMpZm9yKGk9WyJwcmVjaXNpb24iLCJyb3VuZGluZyIsInRvRXhwTmVnIiwidG9FeHBQb3MiLCJtYXhFIiwibWluRSIsIm1vZHVsbyIsImNyeXB0byJdLHQ9MDt0PGkubGVuZ3RoOyllLmhhc093blByb3BlcnR5KG49aVt0KytdKXx8KGVbbl09dGhpc1tuXSk7cmV0dXJuIHIuY29uZmlnKGUpLHJ9KHRlKTtBZT1uZXcgVXQoQWUpLGVlPW5ldyBVdChlZSk7Y29uc3QgeXQ9VXQ7dmFyIFR0PXBBKCJCaWdOdW1iZXIiLFsiP29uIiwiY29uZmlnIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEub24sdD1BLmNvbmZpZyxuPXl0LmNsb25lKHtwcmVjaXNpb246dC5wcmVjaXNpb24sbW9kdWxvOnl0LkVVQ0xJRH0pO3JldHVybiBuLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKG4ucHJvdG90eXBlKSxuLnByb3RvdHlwZS50eXBlPSJCaWdOdW1iZXIiLG4ucHJvdG90eXBlLmlzQmlnTnVtYmVyPSEwLG4ucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybnttYXRoanM6IkJpZ051bWJlciIsdmFsdWU6dGhpcy50b1N0cmluZygpfX0sbi5mcm9tSlNPTj1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IG4oQS52YWx1ZSl9LGUmJmUoImNvbmZpZyIsKGZ1bmN0aW9uKEEsZSl7QS5wcmVjaXNpb24hPT1lLnByZWNpc2lvbiYmbi5jb25maWcoe3ByZWNpc2lvbjpBLnByZWNpc2lvbn0pfSkpLG59KSx7aXNDbGFzczohMH0pLHh0PW4oMTk3NyksUnQ9cEEoIkNvbXBsZXgiLFtdLChmdW5jdGlvbigpe3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoeHQsIm5hbWUiLHt2YWx1ZToiQ29tcGxleCJ9KSx4dC5wcm90b3R5cGUuY29uc3RydWN0b3I9eHQseHQucHJvdG90eXBlLnR5cGU9IkNvbXBsZXgiLHh0LnByb3RvdHlwZS5pc0NvbXBsZXg9ITAseHQucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybnttYXRoanM6IkNvbXBsZXgiLHJlOnRoaXMucmUsaW06dGhpcy5pbX19LHh0LnByb3RvdHlwZS50b1BvbGFyPWZ1bmN0aW9uKCl7cmV0dXJue3I6dGhpcy5hYnMoKSxwaGk6dGhpcy5hcmcoKX19LHh0LnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5pbSxuPXRoaXMucmUsaT1BQSh0aGlzLnJlLEEpLHI9QUEodGhpcy5pbSxBKSxvPXQoQSk/QTpBP0EucHJlY2lzaW9uOm51bGw7aWYobnVsbCE9PW8pe3ZhciBzPU1hdGgucG93KDEwLC1vKTtNYXRoLmFicyhuL2UpPHMmJihuPTApLE1hdGguYWJzKGUvbik8cyYmKGU9MCl9cmV0dXJuIDA9PT1lP2k6MD09PW4/MT09PWU/ImkiOi0xPT09ZT8iLWkiOnIrImkiOmU8MD8tMT09PWU/aSsiIC0gaSI6aSsiIC0gIityLnN1YnN0cmluZygxKSsiaSI6MT09PWU/aSsiICsgaSI6aSsiICsgIityKyJpIn0seHQuZnJvbVBvbGFyPWZ1bmN0aW9uKEEpe3N3aXRjaChhcmd1bWVudHMubGVuZ3RoKXtjYXNlIDE6dmFyIG49YXJndW1lbnRzWzBdO2lmKCJvYmplY3QiPT09ZShuKSlyZXR1cm4geHQobik7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW5wdXQgaGFzIHRvIGJlIGFuIG9iamVjdCB3aXRoIHIgYW5kIHBoaSBrZXlzLiIpO2Nhc2UgMjp2YXIgaT1hcmd1bWVudHNbMF0scj1hcmd1bWVudHNbMV07aWYodChpKSl7aWYoYShyKSYmci5oYXNCYXNlKCJBTkdMRSIpJiYocj1yLnRvTnVtYmVyKCJyYWQiKSksdChyKSlyZXR1cm4gbmV3IHh0KHtyOmkscGhpOnJ9KTt0aHJvdyBuZXcgVHlwZUVycm9yKCJQaGkgaXMgbm90IGEgbnVtYmVyIG5vciBhbiBhbmdsZSB1bml0LiIpfXRocm93IG5ldyBUeXBlRXJyb3IoIlJhZGl1cyByIGlzIG5vdCBhIG51bWJlci4iKTtkZWZhdWx0OnRocm93IG5ldyBTeW50YXhFcnJvcigiV3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyBpbiBmdW5jdGlvbiBmcm9tUG9sYXIiKX19LHh0LnByb3RvdHlwZS52YWx1ZU9mPXh0LnByb3RvdHlwZS50b1N0cmluZyx4dC5mcm9tSlNPTj1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHh0KEEpfSx4dC5jb21wYXJlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEucmU+ZS5yZT8xOkEucmU8ZS5yZT8tMTpBLmltPmUuaW0/MTpBLmltPGUuaW0/LTE6MH0seHR9KSx7aXNDbGFzczohMH0pLEd0PW4oNTYyOCksU3Q9cEEoIkZyYWN0aW9uIixbXSwoZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KEd0LCJuYW1lIix7dmFsdWU6IkZyYWN0aW9uIn0pLEd0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1HdCxHdC5wcm90b3R5cGUudHlwZT0iRnJhY3Rpb24iLEd0LnByb3RvdHlwZS5pc0ZyYWN0aW9uPSEwLEd0LnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOiJGcmFjdGlvbiIsbjp0aGlzLnMqdGhpcy5uLGQ6dGhpcy5kfX0sR3QuZnJvbUpTT049ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBHdChBKX0sR3R9KSx7aXNDbGFzczohMH0pLGJ0PShuKDM5NjQpLHBBKCJSYW5nZSIsW10sKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gQShlLHQsbil7aWYoISh0aGlzIGluc3RhbmNlb2YgQSkpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDb25zdHJ1Y3RvciBtdXN0IGJlIGNhbGxlZCB3aXRoIHRoZSBuZXcgb3BlcmF0b3IiKTt2YXIgaT1udWxsIT1lLG89bnVsbCE9dCxzPW51bGwhPW47aWYoaSlpZihyKGUpKWU9ZS50b051bWJlcigpO2Vsc2UgaWYoIm51bWJlciIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIlBhcmFtZXRlciBzdGFydCBtdXN0IGJlIGEgbnVtYmVyIik7aWYobylpZihyKHQpKXQ9dC50b051bWJlcigpO2Vsc2UgaWYoIm51bWJlciIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoIlBhcmFtZXRlciBlbmQgbXVzdCBiZSBhIG51bWJlciIpO2lmKHMpaWYocihuKSluPW4udG9OdW1iZXIoKTtlbHNlIGlmKCJudW1iZXIiIT10eXBlb2Ygbil0aHJvdyBuZXcgVHlwZUVycm9yKCJQYXJhbWV0ZXIgc3RlcCBtdXN0IGJlIGEgbnVtYmVyIik7dGhpcy5zdGFydD1pP3BhcnNlRmxvYXQoZSk6MCx0aGlzLmVuZD1vP3BhcnNlRmxvYXQodCk6MCx0aGlzLnN0ZXA9cz9wYXJzZUZsb2F0KG4pOjF9cmV0dXJuIEEucHJvdG90eXBlLnR5cGU9IlJhbmdlIixBLnByb3RvdHlwZS5pc1JhbmdlPSEwLEEucGFyc2U9ZnVuY3Rpb24oZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBudWxsO3ZhciB0PWUuc3BsaXQoIjoiKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBwYXJzZUZsb2F0KEEpfSkpO2lmKHQuc29tZSgoZnVuY3Rpb24oQSl7cmV0dXJuIGlzTmFOKEEpfSkpKXJldHVybiBudWxsO3N3aXRjaCh0Lmxlbmd0aCl7Y2FzZSAyOnJldHVybiBuZXcgQSh0WzBdLHRbMV0pO2Nhc2UgMzpyZXR1cm4gbmV3IEEodFswXSx0WzJdLHRbMV0pO2RlZmF1bHQ6cmV0dXJuIG51bGx9fSxBLnByb3RvdHlwZS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgQSh0aGlzLnN0YXJ0LHRoaXMuZW5kLHRoaXMuc3RlcCl9LEEucHJvdG90eXBlLnNpemU9ZnVuY3Rpb24oKXt2YXIgQT0wLGU9dGhpcy5zdGFydCx0PXRoaXMuc3RlcCxuPXRoaXMuZW5kLWU7cmV0dXJuIFcodCk9PT1XKG4pP0E9TWF0aC5jZWlsKG4vdCk6MD09PW4mJihBPTApLGlzTmFOKEEpJiYoQT0wKSxbQV19LEEucHJvdG90eXBlLm1pbj1mdW5jdGlvbigpe3ZhciBBPXRoaXMuc2l6ZSgpWzBdO3JldHVybiBBPjA/dGhpcy5zdGVwPjA/dGhpcy5zdGFydDp0aGlzLnN0YXJ0KyhBLTEpKnRoaXMuc3RlcDp2b2lkIDB9LEEucHJvdG90eXBlLm1heD1mdW5jdGlvbigpe3ZhciBBPXRoaXMuc2l6ZSgpWzBdO3JldHVybiBBPjA/dGhpcy5zdGVwPjA/dGhpcy5zdGFydCsoQS0xKSp0aGlzLnN0ZXA6dGhpcy5zdGFydDp2b2lkIDB9LEEucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5zdGFydCx0PXRoaXMuc3RlcCxuPXRoaXMuZW5kLGk9MDtpZih0PjApZm9yKDtlPG47KUEoZSxbaV0sdGhpcyksZSs9dCxpKys7ZWxzZSBpZih0PDApZm9yKDtlPm47KUEoZSxbaV0sdGhpcyksZSs9dCxpKyt9LEEucHJvdG90eXBlLm1hcD1mdW5jdGlvbihBKXt2YXIgZT1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKChmdW5jdGlvbih0LG4saSl7ZVtuWzBdXT1BKHQsbixpKX0pKSxlfSxBLnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKCl7dmFyIEE9W107cmV0dXJuIHRoaXMuZm9yRWFjaCgoZnVuY3Rpb24oZSx0KXtBW3RbMF1dPWV9KSksQX0sQS5wcm90b3R5cGUudmFsdWVPZj1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvQXJyYXkoKX0sQS5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKEEpe3ZhciBlPUFBKHRoaXMuc3RhcnQsQSk7cmV0dXJuIDEhPT10aGlzLnN0ZXAmJihlKz0iOiIrQUEodGhpcy5zdGVwLEEpKSxlKyI6IitBQSh0aGlzLmVuZCxBKX0sQS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5mb3JtYXQoKX0sQS5wcm90b3R5cGUudG9KU09OPWZ1bmN0aW9uKCl7cmV0dXJue21hdGhqczoiUmFuZ2UiLHN0YXJ0OnRoaXMuc3RhcnQsZW5kOnRoaXMuZW5kLHN0ZXA6dGhpcy5zdGVwfX0sQS5mcm9tSlNPTj1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IEEoZS5zdGFydCxlLmVuZCxlLnN0ZXApfSxBfSkse2lzQ2xhc3M6ITB9KSksSHQ9cEEoIk1hdHJpeCIsW10sKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gQSgpe2lmKCEodGhpcyBpbnN0YW5jZW9mIEEpKXRocm93IG5ldyBTeW50YXhFcnJvcigiQ29uc3RydWN0b3IgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgbmV3IG9wZXJhdG9yIil9cmV0dXJuIEEucHJvdG90eXBlLnR5cGU9Ik1hdHJpeCIsQS5wcm90b3R5cGUuaXNNYXRyaXg9ITAsQS5wcm90b3R5cGUuc3RvcmFnZT1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBzdG9yYWdlIG9uIGEgTWF0cml4IGludGVyZmFjZSIpfSxBLnByb3RvdHlwZS5kYXRhdHlwZT1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBkYXRhdHlwZSBvbiBhIE1hdHJpeCBpbnRlcmZhY2UiKX0sQS5wcm90b3R5cGUuY3JlYXRlPWZ1bmN0aW9uKEEsZSl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIGNyZWF0ZSBvbiBhIE1hdHJpeCBpbnRlcmZhY2UiKX0sQS5wcm90b3R5cGUuc3Vic2V0PWZ1bmN0aW9uKEEsZSx0KXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpbnZva2Ugc3Vic2V0IG9uIGEgTWF0cml4IGludGVyZmFjZSIpfSxBLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIGdldCBvbiBhIE1hdHJpeCBpbnRlcmZhY2UiKX0sQS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKEEsZSx0KXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpbnZva2Ugc2V0IG9uIGEgTWF0cml4IGludGVyZmFjZSIpfSxBLnByb3RvdHlwZS5yZXNpemU9ZnVuY3Rpb24oQSxlKXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpbnZva2UgcmVzaXplIG9uIGEgTWF0cml4IGludGVyZmFjZSIpfSxBLnByb3RvdHlwZS5yZXNoYXBlPWZ1bmN0aW9uKEEsZSl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIHJlc2hhcGUgb24gYSBNYXRyaXggaW50ZXJmYWNlIil9LEEucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIGNsb25lIG9uIGEgTWF0cml4IGludGVyZmFjZSIpfSxBLnByb3RvdHlwZS5zaXplPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIHNpemUgb24gYSBNYXRyaXggaW50ZXJmYWNlIil9LEEucHJvdG90eXBlLm1hcD1mdW5jdGlvbihBLGUpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBtYXAgb24gYSBNYXRyaXggaW50ZXJmYWNlIil9LEEucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oQSl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIGZvckVhY2ggb24gYSBNYXRyaXggaW50ZXJmYWNlIil9LEEucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpdGVyYXRlIGEgTWF0cml4IGludGVyZmFjZSIpfSxBLnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIHRvQXJyYXkgb24gYSBNYXRyaXggaW50ZXJmYWNlIil9LEEucHJvdG90eXBlLnZhbHVlT2Y9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpbnZva2UgdmFsdWVPZiBvbiBhIE1hdHJpeCBpbnRlcmZhY2UiKX0sQS5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKEEpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBmb3JtYXQgb24gYSBNYXRyaXggaW50ZXJmYWNlIil9LEEucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaW52b2tlIHRvU3RyaW5nIG9uIGEgTWF0cml4IGludGVyZmFjZSIpfSxBfSkse2lzQ2xhc3M6ITB9KSx2dD1uKDQ2ODcpO2Z1bmN0aW9uIGt0KCl7cmV0dXJuKGt0PU9iamVjdC5hc3NpZ24/T2JqZWN0LmFzc2lnbi5iaW5kKCk6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9YXJndW1lbnRzW2VdO2Zvcih2YXIgbiBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LG4pJiYoQVtuXT10W25dKX1yZXR1cm4gQX0pLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiBqdChBLGUpeyhudWxsPT1lfHxlPkEubGVuZ3RoKSYmKGU9QS5sZW5ndGgpO2Zvcih2YXIgdD0wLG49bmV3IEFycmF5KGUpO3Q8ZTt0Kyspblt0XT1BW3RdO3JldHVybiBufWZ1bmN0aW9uIEp0KEEsZSl7aWYoQSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXJldHVybiBqdChBLGUpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChBKS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PXQmJkEuY29uc3RydWN0b3ImJih0PUEuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT10fHwiU2V0Ij09PXQ/QXJyYXkuZnJvbShBKToiQXJndW1lbnRzIj09PXR8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KHQpP2p0KEEsZSk6dm9pZCAwfX1mdW5jdGlvbiB6dChBKXtyZXR1cm4gZnVuY3Rpb24oQSl7aWYoQXJyYXkuaXNBcnJheShBKSlyZXR1cm4ganQoQSl9KEEpfHxmdW5jdGlvbihBKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmbnVsbCE9QVtTeW1ib2wuaXRlcmF0b3JdfHxudWxsIT1BWyJAQGl0ZXJhdG9yIl0pcmV0dXJuIEFycmF5LmZyb20oQSl9KEEpfHxKdChBKXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gc3ByZWFkIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBMdChBLGUsdCl7dmFyIG49bmV3KDAsQS5jb25zdHJ1Y3RvcikoMiksaT0iIjtpZih0KXtpZih0PDEpdGhyb3cgbmV3IEVycm9yKCJzaXplIG11c3QgYmUgaW4gZ3JlYXRlciB0aGFuIDAiKTtpZighVih0KSl0aHJvdyBuZXcgRXJyb3IoInNpemUgbXVzdCBiZSBhbiBpbnRlZ2VyIik7aWYoQS5ncmVhdGVyVGhhbihuLnBvdyh0LTEpLnN1YigxKSl8fEEubGVzc1RoYW4obi5wb3codC0xKS5tdWwoLTEpKSl0aHJvdyBuZXcgRXJyb3IoIlZhbHVlIG11c3QgYmUgaW4gcmFuZ2UgWy0yXiIuY29uY2F0KHQtMSwiLCAyXiIpLmNvbmNhdCh0LTEsIi0xXSIpKTtpZighQS5pc0ludGVnZXIoKSl0aHJvdyBuZXcgRXJyb3IoIlZhbHVlIG11c3QgYmUgYW4gaW50ZWdlciIpO0EubGVzc1RoYW4oMCkmJihBPUEuYWRkKG4ucG93KHQpKSksaT0iaSIuY29uY2F0KHQpfXN3aXRjaChlKXtjYXNlIDI6cmV0dXJuIiIuY29uY2F0KEEudG9CaW5hcnkoKSkuY29uY2F0KGkpO2Nhc2UgODpyZXR1cm4iIi5jb25jYXQoQS50b09jdGFsKCkpLmNvbmNhdChpKTtjYXNlIDE2OnJldHVybiIiLmNvbmNhdChBLnRvSGV4YWRlY2ltYWwoKSkuY29uY2F0KGkpO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJCYXNlICIuY29uY2F0KGUsIiBub3Qgc3VwcG9ydGVkICIpKX19ZnVuY3Rpb24gUHQoQSxlKXtyZXR1cm4gdm9pZCAwIT09ZT9BLnRvRXhwb25lbnRpYWwoZS0xKTpBLnRvRXhwb25lbnRpYWwoKX1mdW5jdGlvbiBPdChBLGUpe3ZhciB0PUEubGVuZ3RoLWUubGVuZ3RoLG49QS5sZW5ndGg7cmV0dXJuIEEuc3Vic3RyaW5nKHQsbik9PT1lfWZ1bmN0aW9uIFZ0KEEsdCl7dmFyIG49ZnVuY3Rpb24oQSx0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIEE/QUEoQSx0KTpyKEEpP2Z1bmN0aW9uKEEsZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpcmV0dXJuIGUoQSk7aWYoIUEuaXNGaW5pdGUoKSlyZXR1cm4gQS5pc05hTigpPyJOYU4iOkEuZ3QoMCk/IkluZmluaXR5IjoiLUluZmluaXR5Ijt2YXIgdCxuLGk9ImF1dG8iO2lmKHZvaWQgMCE9PWUmJihlLm5vdGF0aW9uJiYoaT1lLm5vdGF0aW9uKSwibnVtYmVyIj09dHlwZW9mIGU/dD1lOnZvaWQgMCE9PWUucHJlY2lzaW9uJiYodD1lLnByZWNpc2lvbiksZS53b3JkU2l6ZSYmIm51bWJlciIhPXR5cGVvZihuPWUud29yZFNpemUpKSl0aHJvdyBuZXcgRXJyb3IoJ09wdGlvbiAid29yZFNpemUiIG11c3QgYmUgYSBudW1iZXInKTtzd2l0Y2goaSl7Y2FzZSJmaXhlZCI6cmV0dXJuIGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEudG9GaXhlZChlKX0oQSx0KTtjYXNlImV4cG9uZW50aWFsIjpyZXR1cm4gUHQoQSx0KTtjYXNlImVuZ2luZWVyaW5nIjpyZXR1cm4gZnVuY3Rpb24oQSxlKXt2YXIgdD1BLmUsbj10JTM9PTA/dDp0PDA/dC0zLXQlMzp0LXQlMyxpPUEubXVsKE1hdGgucG93KDEwLC1uKSkudG9QcmVjaXNpb24oZSk7cmV0dXJuLTEhPT1pLmluZGV4T2YoImUiKSYmKGk9bmV3KDAsQS5jb25zdHJ1Y3RvcikoaSkudG9GaXhlZCgpKSxpKyJlIisodD49MD8iKyI6IiIpK24udG9TdHJpbmcoKX0oQSx0KTtjYXNlImJpbiI6cmV0dXJuIEx0KEEsMixuKTtjYXNlIm9jdCI6cmV0dXJuIEx0KEEsOCxuKTtjYXNlImhleCI6cmV0dXJuIEx0KEEsMTYsbik7Y2FzZSJhdXRvIjp2YXIgcj1lJiZ2b2lkIDAhPT1lLmxvd2VyRXhwP2UubG93ZXJFeHA6LTMsbz1lJiZ2b2lkIDAhPT1lLnVwcGVyRXhwP2UudXBwZXJFeHA6NTtpZihBLmlzWmVybygpKXJldHVybiIwIjt2YXIgcz1BLnRvU2lnbmlmaWNhbnREaWdpdHModCksYT1zLmU7cmV0dXJuKGE+PXImJmE8bz9zLnRvRml4ZWQoKTpQdChBLHQpKS5yZXBsYWNlKC8oKFwuXGQqPykoMCspKSgkfGUpLywoZnVuY3Rpb24oKXt2YXIgQT1hcmd1bWVudHNbMl0sZT1hcmd1bWVudHNbNF07cmV0dXJuIi4iIT09QT9BK2U6ZX0pKTtkZWZhdWx0OnRocm93IG5ldyBFcnJvcignVW5rbm93biBub3RhdGlvbiAiJytpKyciLiBDaG9vc2UgImF1dG8iLCAiZXhwb25lbnRpYWwiLCAiZml4ZWQiLCAiYmluIiwgIm9jdCIsIG9yICJoZXguJyl9fShBLHQpOmZ1bmN0aW9uKEEpe3JldHVybiBBJiYib2JqZWN0Ij09PWUoQSkmJiJudW1iZXIiPT10eXBlb2YgQS5zJiYibnVtYmVyIj09dHlwZW9mIEEubiYmIm51bWJlciI9PXR5cGVvZiBBLmR8fCExfShBKT90JiYiZGVjaW1hbCI9PT10LmZyYWN0aW9uP0EudG9TdHJpbmcoKTpBLnMqQS5uKyIvIitBLmQ6QXJyYXkuaXNBcnJheShBKT9mdW5jdGlvbiBBKGUsdCl7aWYoQXJyYXkuaXNBcnJheShlKSl7Zm9yKHZhciBuPSJbIixpPWUubGVuZ3RoLHI9MDtyPGk7cisrKTAhPT1yJiYobis9IiwgIiksbis9QShlW3JdLHQpO3JldHVybiBuKyJdIn1yZXR1cm4gVnQoZSx0KX0oQSx0KTpCKEEpP1d0KEEpOiJmdW5jdGlvbiI9PXR5cGVvZiBBP0Euc3ludGF4P1N0cmluZyhBLnN5bnRheCk6ImZ1bmN0aW9uIjpBJiYib2JqZWN0Ij09PWUoQSk/ImZ1bmN0aW9uIj09dHlwZW9mIEEuZm9ybWF0P0EuZm9ybWF0KHQpOkEmJkEudG9TdHJpbmcodCkhPT17fS50b1N0cmluZygpP0EudG9TdHJpbmcodCk6InsiK09iamVjdC5rZXlzKEEpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIFd0KGUpKyI6ICIrVnQoQVtlXSx0KX0pKS5qb2luKCIsICIpKyJ9IjpTdHJpbmcoQSl9KEEsdCk7cmV0dXJuIHQmJiJvYmplY3QiPT09ZSh0KSYmInRydW5jYXRlImluIHQmJm4ubGVuZ3RoPnQudHJ1bmNhdGU/bi5zdWJzdHJpbmcoMCx0LnRydW5jYXRlLTMpKyIuLi4iOm59ZnVuY3Rpb24gV3QoQSl7Zm9yKHZhciBlPVN0cmluZyhBKSx0PSIiLG49MDtuPGUubGVuZ3RoOyl7dmFyIGk9ZS5jaGFyQXQobik7dCs9aSBpbiBLdD9LdFtpXTppLG4rK31yZXR1cm4nIicrdCsnIid9bigyNzgpLG4oNzg5NSksbig3NzI5KSxuKDczODkpLG4oNTI4NCk7dmFyIEt0PXsnIic6J1xcIicsIlxcIjoiXFxcXCIsIlxiIjoiXFxiIiwiXGYiOiJcXGYiLCJcbiI6IlxcbiIsIlxyIjoiXFxyIiwiXHQiOiJcXHQifTtmdW5jdGlvbiBYdChBKXtyZXR1cm4gU3RyaW5nKEEpLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC8iL2csIiZxdW90OyIpLnJlcGxhY2UoLycvZywiJiMzOTsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKX1mdW5jdGlvbiBadChBLGUpe2lmKCFCKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIlVuZXhwZWN0ZWQgdHlwZSBvZiBhcmd1bWVudCBpbiBmdW5jdGlvbiBjb21wYXJlVGV4dCAoZXhwZWN0ZWQ6IHN0cmluZyBvciBBcnJheSBvciBNYXRyaXgsIGFjdHVhbDogIitQKEEpKyIsIGluZGV4OiAwKSIpO2lmKCFCKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlVuZXhwZWN0ZWQgdHlwZSBvZiBhcmd1bWVudCBpbiBmdW5jdGlvbiBjb21wYXJlVGV4dCAoZXhwZWN0ZWQ6IHN0cmluZyBvciBBcnJheSBvciBNYXRyaXgsIGFjdHVhbDogIitQKGUpKyIsIGluZGV4OiAxKSIpO3JldHVybiBBPT09ZT8wOkE+ZT8xOi0xfWZ1bmN0aW9uIF90KEEsZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBfdCkpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDb25zdHJ1Y3RvciBtdXN0IGJlIGNhbGxlZCB3aXRoIHRoZSBuZXcgb3BlcmF0b3IiKTt0aGlzLmFjdHVhbD1BLHRoaXMuZXhwZWN0ZWQ9ZSx0aGlzLnJlbGF0aW9uPXQsdGhpcy5tZXNzYWdlPSJEaW1lbnNpb24gbWlzbWF0Y2ggKCIrKEFycmF5LmlzQXJyYXkoQSk/IlsiK0Euam9pbigiLCAiKSsiXSI6QSkrIiAiKyh0aGlzLnJlbGF0aW9ufHwiIT0iKSsiICIrKEFycmF5LmlzQXJyYXkoZSk/IlsiK2Uuam9pbigiLCAiKSsiXSI6ZSkrIikiLHRoaXMuc3RhY2s9KG5ldyBFcnJvcikuc3RhY2t9ZnVuY3Rpb24gcXQoQSxlLHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIHF0KSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoIkNvbnN0cnVjdG9yIG11c3QgYmUgY2FsbGVkIHdpdGggdGhlIG5ldyBvcGVyYXRvciIpO3RoaXMuaW5kZXg9QSxhcmd1bWVudHMubGVuZ3RoPDM/KHRoaXMubWluPTAsdGhpcy5tYXg9ZSk6KHRoaXMubWluPWUsdGhpcy5tYXg9dCksdm9pZCAwIT09dGhpcy5taW4mJnRoaXMuaW5kZXg8dGhpcy5taW4/dGhpcy5tZXNzYWdlPSJJbmRleCBvdXQgb2YgcmFuZ2UgKCIrdGhpcy5pbmRleCsiIDwgIit0aGlzLm1pbisiKSI6dm9pZCAwIT09dGhpcy5tYXgmJnRoaXMuaW5kZXg+PXRoaXMubWF4P3RoaXMubWVzc2FnZT0iSW5kZXggb3V0IG9mIHJhbmdlICgiK3RoaXMuaW5kZXgrIiA+ICIrKHRoaXMubWF4LTEpKyIpIjp0aGlzLm1lc3NhZ2U9IkluZGV4IG91dCBvZiByYW5nZSAoIit0aGlzLmluZGV4KyIpIix0aGlzLnN0YWNrPShuZXcgRXJyb3IpLnN0YWNrfWZ1bmN0aW9uICR0KEEpe2Zvcih2YXIgZT1bXTtBcnJheS5pc0FycmF5KEEpOyllLnB1c2goQS5sZW5ndGgpLEE9QVswXTtyZXR1cm4gZX1mdW5jdGlvbiBBbihBLGUpe2lmKDA9PT1lLmxlbmd0aCl7aWYoQXJyYXkuaXNBcnJheShBKSl0aHJvdyBuZXcgX3QoQS5sZW5ndGgsMCl9ZWxzZSFmdW5jdGlvbiBBKGUsdCxuKXt2YXIgaSxyPWUubGVuZ3RoO2lmKHIhPT10W25dKXRocm93IG5ldyBfdChyLHRbbl0pO2lmKG48dC5sZW5ndGgtMSl7dmFyIG89bisxO2ZvcihpPTA7aTxyO2krKyl7dmFyIHM9ZVtpXTtpZighQXJyYXkuaXNBcnJheShzKSl0aHJvdyBuZXcgX3QodC5sZW5ndGgtMSx0Lmxlbmd0aCwiPCIpO0EoZVtpXSx0LG8pfX1lbHNlIGZvcihpPTA7aTxyO2krKylpZihBcnJheS5pc0FycmF5KGVbaV0pKXRocm93IG5ldyBfdCh0Lmxlbmd0aCsxLHQubGVuZ3RoLCI+Iil9KEEsZSwwKX1mdW5jdGlvbiBlbihBLGUpe3ZhciB0PUEuaXNNYXRyaXg/QS5fc2l6ZTokdChBKTtlLl9zb3VyY2VTaXplLmZvckVhY2goKGZ1bmN0aW9uKEEsZSl7aWYobnVsbCE9PUEmJkEhPT10W2VdKXRocm93IG5ldyBfdChBLHRbZV0pfSkpfWZ1bmN0aW9uIHRuKEEsZSl7aWYodm9pZCAwIT09QSl7aWYoIXQoQSl8fCFWKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIkluZGV4IG11c3QgYmUgYW4gaW50ZWdlciAodmFsdWU6ICIrQSsiKSIpO2lmKEE8MHx8Im51bWJlciI9PXR5cGVvZiBlJiZBPj1lKXRocm93IG5ldyBxdChBLGUpfX1mdW5jdGlvbiBubihBKXtmb3IodmFyIGU9MDtlPEEuX2RpbWVuc2lvbnMubGVuZ3RoOysrZSl7dmFyIHQ9QS5fZGltZW5zaW9uc1tlXTtpZih0Ll9kYXRhJiZjKHQuX2RhdGEpKXtpZigwPT09dC5fc2l6ZVswXSlyZXR1cm4hMH1lbHNlIGlmKHQuaXNSYW5nZSl7aWYodC5zdGFydD09PXQuZW5kKXJldHVybiEwfWVsc2UgaWYoQih0KSYmMD09PXQubGVuZ3RoKXJldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIHJuKEEsZSxuKXtpZighQXJyYXkuaXNBcnJheShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSBleHBlY3RlZCIpO2lmKDA9PT1lLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIlJlc2l6aW5nIHRvIHNjYWxhciBpcyBub3Qgc3VwcG9ydGVkIik7cmV0dXJuIGUuZm9yRWFjaCgoZnVuY3Rpb24oQSl7aWYoIXQoQSl8fCFWKEEpfHxBPDApdGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBzaXplLCBtdXN0IGNvbnRhaW4gcG9zaXRpdmUgaW50ZWdlcnMgKHNpemU6ICIrVnQoZSkrIikiKX0pKSwodChBKXx8cihBKSkmJihBPVtBXSksZnVuY3Rpb24gQShlLHQsbixpKXt2YXIgcixvLHM9ZS5sZW5ndGgsYT10W25dLEI9TWF0aC5taW4ocyxhKTtpZihlLmxlbmd0aD1hLG48dC5sZW5ndGgtMSl7dmFyIGM9bisxO2ZvcihyPTA7cjxCO3IrKylvPWVbcl0sQXJyYXkuaXNBcnJheShvKXx8KG89W29dLGVbcl09byksQShvLHQsYyxpKTtmb3Iocj1CO3I8YTtyKyspbz1bXSxlW3JdPW8sQShvLHQsYyxpKX1lbHNle2ZvcihyPTA7cjxCO3IrKylmb3IoO0FycmF5LmlzQXJyYXkoZVtyXSk7KWVbcl09ZVtyXVswXTtmb3Iocj1CO3I8YTtyKyspZVtyXT1pfX0oQSxlLDAsdm9pZCAwIT09bj9uOjApLEF9ZnVuY3Rpb24gb24oQSxlKXt2YXIgdD1nbihBKSxuPXQubGVuZ3RoO2lmKCFBcnJheS5pc0FycmF5KEEpfHwhQXJyYXkuaXNBcnJheShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSBleHBlY3RlZCIpO2lmKDA9PT1lLmxlbmd0aCl0aHJvdyBuZXcgX3QoMCxuLCIhPSIpO3ZhciBpPWFuKGU9c24oZSxuKSk7aWYobiE9PWkpdGhyb3cgbmV3IF90KGksbiwiIT0iKTt0cnl7cmV0dXJuIGZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0LG49QSxpPWUubGVuZ3RoLTE7aT4wO2ktLSl7dmFyIHI9ZVtpXTt0PVtdO2Zvcih2YXIgbz1uLmxlbmd0aC9yLHM9MDtzPG87cysrKXQucHVzaChuLnNsaWNlKHMqciwocysxKSpyKSk7bj10fXJldHVybiBufSh0LGUpfWNhdGNoKEEpe2lmKEEgaW5zdGFuY2VvZiBfdCl0aHJvdyBuZXcgX3QoaSxuLCIhPSIpO3Rocm93IEF9fWZ1bmN0aW9uIHNuKEEsZSl7dmFyIHQ9YW4oQSksbj1BLnNsaWNlKCksaT1BLmluZGV4T2YoLTEpO2lmKEEuaW5kZXhPZigtMSxpKzEpPj0wKXRocm93IG5ldyBFcnJvcigiTW9yZSB0aGFuIG9uZSB3aWxkY2FyZCBpbiBzaXplcyIpO2lmKGk+PTApe2lmKGUldCE9MCl0aHJvdyBuZXcgRXJyb3IoIkNvdWxkIG5vdCByZXBsYWNlIHdpbGRjYXJkLCBzaW5jZSAiK2UrIiBpcyBubyBtdWx0aXBsZSBvZiAiKy10KTtuW2ldPS1lL3R9cmV0dXJuIG59ZnVuY3Rpb24gYW4oQSl7cmV0dXJuIEEucmVkdWNlKChmdW5jdGlvbihBLGUpe3JldHVybiBBKmV9KSwxKX1mdW5jdGlvbiBCbihBLGUpe2Zvcih2YXIgdD1lfHwkdChBKTtBcnJheS5pc0FycmF5KEEpJiYxPT09QS5sZW5ndGg7KUE9QVswXSx0LnNoaWZ0KCk7Zm9yKHZhciBuPXQubGVuZ3RoOzE9PT10W24tMV07KW4tLTtyZXR1cm4gbjx0Lmxlbmd0aCYmKEE9ZnVuY3Rpb24gQShlLHQsbil7dmFyIGkscjtpZihuPHQpe3ZhciBvPW4rMTtmb3IoaT0wLHI9ZS5sZW5ndGg7aTxyO2krKyllW2ldPUEoZVtpXSx0LG8pfWVsc2UgZm9yKDtBcnJheS5pc0FycmF5KGUpOyllPWVbMF07cmV0dXJuIGV9KEEsbiwwKSx0Lmxlbmd0aD1uKSxBfWZ1bmN0aW9uIGNuKEEsZSx0LG4pe3ZhciBpPW58fCR0KEEpO2lmKHQpZm9yKHZhciByPTA7cjx0O3IrKylBPVtBXSxpLnVuc2hpZnQoMSk7Zm9yKEE9ZnVuY3Rpb24gQShlLHQsbil7dmFyIGkscjtpZihBcnJheS5pc0FycmF5KGUpKXt2YXIgbz1uKzE7Zm9yKGk9MCxyPWUubGVuZ3RoO2k8cjtpKyspZVtpXT1BKGVbaV0sdCxvKX1lbHNlIGZvcih2YXIgcz1uO3M8dDtzKyspZT1bZV07cmV0dXJuIGV9KEEsZSwwKTtpLmxlbmd0aDxlOylpLnB1c2goMSk7cmV0dXJuIEF9ZnVuY3Rpb24gZ24oQSl7aWYoIUFycmF5LmlzQXJyYXkoQSkpcmV0dXJuIEE7dmFyIGU9W107cmV0dXJuIEEuZm9yRWFjaCgoZnVuY3Rpb24gQSh0KXtBcnJheS5pc0FycmF5KHQpP3QuZm9yRWFjaChBKTplLnB1c2godCl9KSksZX1mdW5jdGlvbiBFbihBLGUpe3JldHVybiBBcnJheS5wcm90b3R5cGUubWFwLmNhbGwoQSxlKX1mdW5jdGlvbiBRbihBLGUpe0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoQSxlKX1mdW5jdGlvbiB1bihBLGUpe2lmKDEhPT0kdChBKS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJPbmx5IG9uZSBkaW1lbnNpb25hbCBtYXRyaWNlcyBzdXBwb3J0ZWQiKTtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKEEsZSl9ZnVuY3Rpb24gbG4oQSxlKXtpZigxIT09JHQoQSkubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiT25seSBvbmUgZGltZW5zaW9uYWwgbWF0cmljZXMgc3VwcG9ydGVkIik7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChBLChmdW5jdGlvbihBKXtyZXR1cm4gZS50ZXN0KEEpfSkpfWZ1bmN0aW9uIGhuKEEsZSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5qb2luLmNhbGwoQSxlKX1mdW5jdGlvbiB3bihBKXtpZighQXJyYXkuaXNBcnJheShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSBpbnB1dCBleHBlY3RlZCIpO2lmKDA9PT1BLmxlbmd0aClyZXR1cm4gQTt2YXIgZT1bXSx0PTA7ZVswXT17dmFsdWU6QVswXSxpZGVudGlmaWVyOjB9O2Zvcih2YXIgbj0xO248QS5sZW5ndGg7bisrKUFbbl09PT1BW24tMV0/dCsrOnQ9MCxlLnB1c2goe3ZhbHVlOkFbbl0saWRlbnRpZmllcjp0fSk7cmV0dXJuIGV9ZnVuY3Rpb24gQ24oQSl7aWYoIUFycmF5LmlzQXJyYXkoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgaW5wdXQgZXhwZWN0ZWQiKTtpZigwPT09QS5sZW5ndGgpcmV0dXJuIEE7Zm9yKHZhciBlPVtdLHQ9MDt0PEEubGVuZ3RoO3QrKyllLnB1c2goQVt0XS52YWx1ZSk7cmV0dXJuIGV9ZnVuY3Rpb24gSW4oQSxlKXtmb3IodmFyIHQsbj0wLGk9MDtpPEEubGVuZ3RoO2krKyl7dmFyIHI9QVtpXSxvPUFycmF5LmlzQXJyYXkocik7aWYoMD09PWkmJm8mJihuPXIubGVuZ3RoKSxvJiZyLmxlbmd0aCE9PW4pcmV0dXJuO3ZhciBzPW8/SW4ocixlKTplKHIpO2lmKHZvaWQgMD09PXQpdD1zO2Vsc2UgaWYodCE9PXMpcmV0dXJuIm1peGVkIn1yZXR1cm4gdH1mdW5jdGlvbiBNbihBLGUpe3JldHVybi0xIT09QS5pbmRleE9mKGUpfWZ1bmN0aW9uIGRuKEEsZSx0LG4pe2lmKG48dCl7aWYoQS5sZW5ndGghPT1lLmxlbmd0aCl0aHJvdyBuZXcgX3QoQS5sZW5ndGgsZS5sZW5ndGgpO2Zvcih2YXIgaT1bXSxyPTA7cjxBLmxlbmd0aDtyKyspaVtyXT1kbihBW3JdLGVbcl0sdCxuKzEpO3JldHVybiBpfXJldHVybiBBLmNvbmNhdChlKX1mdW5jdGlvbiBwbigpe3ZhciBBPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwLC0xKSxlPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywtMSk7aWYoMT09PUEubGVuZ3RoKXJldHVybiBBWzBdO2lmKEEubGVuZ3RoPjEpcmV0dXJuIEEuc2xpY2UoMSkucmVkdWNlKChmdW5jdGlvbihBLHQpe3JldHVybiBkbihBLHQsZSwwKX0pLEFbMF0pO3Rocm93IG5ldyBFcnJvcigiV3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyBpbiBmdW5jdGlvbiBjb25jYXQiKX1mdW5jdGlvbiBtbihBLGUpe2Zvcih2YXIgdD1lLmxlbmd0aCxuPUEubGVuZ3RoLGk9MDtpPG47aSsrKXt2YXIgcj10LW4raTtpZihBW2ldPGVbcl0mJkFbaV0+MXx8QVtpXT5lW3JdKXRocm93IG5ldyBFcnJvcigic2hhcGUgbWlzc21hdGNoOiBtaXNzbWF0Y2ggaXMgZm91bmQgaW4gYXJnIHdpdGggc2hhcGUgKCIuY29uY2F0KEEsIikgbm90IHBvc3NpYmxlIHRvIGJyb2FkY2FzdCBkaW1lbnNpb24gIikuY29uY2F0KG4sIiB3aXRoIHNpemUgIikuY29uY2F0KEFbaV0sIiB0byBzaXplICIpLmNvbmNhdChlW3JdKSl9fWZ1bmN0aW9uIEZuKEEsZSl7dmFyIHQ9JHQoQSk7aWYod0EodCxlKSlyZXR1cm4gQTttbih0LGUpO3ZhciBuLGkscixvPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkoQSksdD0wO3Q8QTt0KyspZVt0XT1hcmd1bWVudHNbdF07Zm9yKHZhciBuPWUubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQS5sZW5ndGh9KSksaT1NYXRoLm1heC5hcHBseShNYXRoLHp0KG4pKSxyPW5ldyBBcnJheShpKS5maWxsKG51bGwpLG89MDtvPGUubGVuZ3RoO28rKylmb3IodmFyIHM9ZVtvXSxhPW5bb10sQj0wO0I8YTtCKyspe3ZhciBjPWktYStCO3NbQl0+cltjXSYmKHJbY109c1tCXSl9Zm9yKHZhciBnPTA7ZzxlLmxlbmd0aDtnKyspbW4oZVtnXSxyKTtyZXR1cm4gcn0odCxlKSxzPW8ubGVuZ3RoLGE9W10uY29uY2F0KHp0KEFycmF5KHMtdC5sZW5ndGgpLmZpbGwoMSkpLHp0KHQpKSxCPWZ1bmN0aW9uKEEpe3JldHVybiBrdChbXSxBKX0oQSk7dC5sZW5ndGg8cyYmKHQ9JHQoQj1vbihCLGEpKSk7Zm9yKHZhciBjPTA7YzxzO2MrKyl0W2NdPG9bY10mJihuPUIsaT1vW2NdLHI9Yyx0PSR0KEI9cG4uYXBwbHkodm9pZCAwLHp0KEFycmF5KGkpLmZpbGwobikpLmNvbmNhdChbcl0pKSkpO3JldHVybiBCfWZ1bmN0aW9uIERuKEEpe3ZhciBlPTAsdD0xLG49T2JqZWN0LmNyZWF0ZShudWxsKSxpPU9iamVjdC5jcmVhdGUobnVsbCkscj0wLG89ZnVuY3Rpb24oQSl7dmFyIG89aVtBXTtpZihvJiYoZGVsZXRlIG5bb10sZGVsZXRlIGlbQV0sLS1lLHQ9PT1vKSl7aWYoIWUpcmV0dXJuIHI9MCx2b2lkKHQ9MSk7Zm9yKDshT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sKyt0KTspO319O3JldHVybiBBPU1hdGguYWJzKEEpLHtoaXQ6ZnVuY3Rpb24ocyl7dmFyIGE9aVtzXSxCPSsrcjtpZihuW0JdPXMsaVtzXT1CLCFhKXtpZigrK2U8PUEpcmV0dXJuO3JldHVybiBzPW5bdF0sbyhzKSxzfWlmKGRlbGV0ZSBuW2FdLHQ9PT1hKWZvcig7IU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLCsrdCk7KTt9LGRlbGV0ZTpvLGNsZWFyOmZ1bmN0aW9uKCl7ZT1yPTAsdD0xLG49T2JqZWN0LmNyZWF0ZShudWxsKSxpPU9iamVjdC5jcmVhdGUobnVsbCl9fX1mdW5jdGlvbiBZbihBKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e30sbj10Lmhhc2hlcixpPXQubGltaXQ7cmV0dXJuIGk9bnVsbD09aT9OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk6aSxuPW51bGw9PW4/SlNPTi5zdHJpbmdpZnk6bixmdW5jdGlvbiB0KCl7Im9iamVjdCIhPT1lKHQuY2FjaGUpJiYodC5jYWNoZT17dmFsdWVzOm5ldyBNYXAsbHJ1OkRuKGl8fE51bWJlci5QT1NJVElWRV9JTkZJTklUWSl9KTtmb3IodmFyIHI9W10sbz0wO288YXJndW1lbnRzLmxlbmd0aDtvKyspcltvXT1hcmd1bWVudHNbb107dmFyIHM9bihyKTtpZih0LmNhY2hlLnZhbHVlcy5oYXMocykpcmV0dXJuIHQuY2FjaGUubHJ1LmhpdChzKSx0LmNhY2hlLnZhbHVlcy5nZXQocyk7dmFyIGE9QS5hcHBseShBLHIpO3JldHVybiB0LmNhY2hlLnZhbHVlcy5zZXQocyxhKSx0LmNhY2hlLnZhbHVlcy5kZWxldGUodC5jYWNoZS5scnUuaGl0KHMpKSxhfX1mdW5jdGlvbiBmbihBKXtyZXR1cm4gT2JqZWN0LmtleXMoQS5zaWduYXR1cmVzfHx7fSkucmVkdWNlKChmdW5jdGlvbihBLGUpe3ZhciB0PShlLm1hdGNoKC8sL2cpfHxbXSkubGVuZ3RoKzE7cmV0dXJuIE1hdGgubWF4KEEsdCl9KSwtMSl9ZnVuY3Rpb24gTm4oQSxlKXsobnVsbD09ZXx8ZT5BLmxlbmd0aCkmJihlPUEubGVuZ3RoKTtmb3IodmFyIHQ9MCxuPW5ldyBBcnJheShlKTt0PGU7dCsrKW5bdF09QVt0XTtyZXR1cm4gbn1fdC5wcm90b3R5cGU9bmV3IFJhbmdlRXJyb3IsX3QucHJvdG90eXBlLmNvbnN0cnVjdG9yPVJhbmdlRXJyb3IsX3QucHJvdG90eXBlLm5hbWU9IkRpbWVuc2lvbkVycm9yIixfdC5wcm90b3R5cGUuaXNEaW1lbnNpb25FcnJvcj0hMCxxdC5wcm90b3R5cGU9bmV3IFJhbmdlRXJyb3IscXQucHJvdG90eXBlLmNvbnN0cnVjdG9yPVJhbmdlRXJyb3IscXQucHJvdG90eXBlLm5hbWU9IkluZGV4RXJyb3IiLHF0LnByb3RvdHlwZS5pc0luZGV4RXJyb3I9ITAsbig4MzI0KTt2YXIgVW49cEEoIkRlbnNlTWF0cml4IixbIk1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLk1hdHJpeDtmdW5jdGlvbiBuKEEsZSl7aWYoISh0aGlzIGluc3RhbmNlb2YgbikpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDb25zdHJ1Y3RvciBtdXN0IGJlIGNhbGxlZCB3aXRoIHRoZSBuZXcgb3BlcmF0b3IiKTtpZihlJiYhQihlKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZGF0YXR5cGU6ICIrZSk7aWYoZyhBKSkiRGVuc2VNYXRyaXgiPT09QS50eXBlPyh0aGlzLl9kYXRhPXVBKEEuX2RhdGEpLHRoaXMuX3NpemU9dUEoQS5fc2l6ZSksdGhpcy5fZGF0YXR5cGU9ZXx8QS5fZGF0YXR5cGUpOih0aGlzLl9kYXRhPUEudG9BcnJheSgpLHRoaXMuX3NpemU9QS5zaXplKCksdGhpcy5fZGF0YXR5cGU9ZXx8QS5fZGF0YXR5cGUpO2Vsc2UgaWYoQSYmYyhBLmRhdGEpJiZjKEEuc2l6ZSkpdGhpcy5fZGF0YT1BLmRhdGEsdGhpcy5fc2l6ZT1BLnNpemUsQW4odGhpcy5fZGF0YSx0aGlzLl9zaXplKSx0aGlzLl9kYXRhdHlwZT1lfHxBLmRhdGF0eXBlO2Vsc2UgaWYoYyhBKSl0aGlzLl9kYXRhPVEoQSksdGhpcy5fc2l6ZT0kdCh0aGlzLl9kYXRhKSxBbih0aGlzLl9kYXRhLHRoaXMuX3NpemUpLHRoaXMuX2RhdGF0eXBlPWU7ZWxzZXtpZihBKXRocm93IG5ldyBUeXBlRXJyb3IoIlVuc3VwcG9ydGVkIHR5cGUgb2YgZGF0YSAoIitQKEEpKyIpIik7dGhpcy5fZGF0YT1bXSx0aGlzLl9zaXplPVswXSx0aGlzLl9kYXRhdHlwZT1lfX1mdW5jdGlvbiBpKEEsZSx0LG4pe3ZhciByPW49PT10LTEsbz1lLmRpbWVuc2lvbihuKTtyZXR1cm4gcj9vLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIHRuKGUsQS5sZW5ndGgpLEFbZV19KSkudmFsdWVPZigpOm8ubWFwKChmdW5jdGlvbihyKXtyZXR1cm4gdG4ocixBLmxlbmd0aCksaShBW3JdLGUsdCxuKzEpfSkpLnZhbHVlT2YoKX1mdW5jdGlvbiBvKEEsZSx0LG4saSl7dmFyIHI9aT09PW4tMSxzPWUuZGltZW5zaW9uKGkpO3I/cy5mb3JFYWNoKChmdW5jdGlvbihlLG4pe3RuKGUpLEFbZV09dFtuWzBdXX0pKTpzLmZvckVhY2goKGZ1bmN0aW9uKHIscyl7dG4ociksbyhBW3JdLGUsdFtzWzBdXSxuLGkrMSl9KSl9ZnVuY3Rpb24gcyhBLGUsdCl7aWYoMD09PWUubGVuZ3RoKXtmb3IodmFyIG49QS5fZGF0YTtjKG4pOyluPW5bMF07cmV0dXJuIG59cmV0dXJuIEEuX3NpemU9ZS5zbGljZSgwKSxBLl9kYXRhPXJuKEEuX2RhdGEsQS5fc2l6ZSx0KSxBfWZ1bmN0aW9uIGEoQSxlLHQpe2Zvcih2YXIgbj1BLl9zaXplLnNsaWNlKDApLGk9ITE7bi5sZW5ndGg8ZS5sZW5ndGg7KW4ucHVzaCgwKSxpPSEwO2Zvcih2YXIgcj0wLG89ZS5sZW5ndGg7cjxvO3IrKyllW3JdPm5bcl0mJihuW3JdPWVbcl0saT0hMCk7aSYmcyhBLG4sdCl9ZnVuY3Rpb24gUShBKXtyZXR1cm4gZyhBKT9RKEEudmFsdWVPZigpKTpjKEEpP0EubWFwKFEpOkF9cmV0dXJuIG4ucHJvdG90eXBlPW5ldyBlLG4ucHJvdG90eXBlLmNyZWF0ZURlbnNlTWF0cml4PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyBuKEEsZSl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJuYW1lIix7dmFsdWU6IkRlbnNlTWF0cml4In0pLG4ucHJvdG90eXBlLmNvbnN0cnVjdG9yPW4sbi5wcm90b3R5cGUudHlwZT0iRGVuc2VNYXRyaXgiLG4ucHJvdG90eXBlLmlzRGVuc2VNYXRyaXg9ITAsbi5wcm90b3R5cGUuZ2V0RGF0YVR5cGU9ZnVuY3Rpb24oKXtyZXR1cm4gSW4odGhpcy5fZGF0YSxQKX0sbi5wcm90b3R5cGUuc3RvcmFnZT1mdW5jdGlvbigpe3JldHVybiJkZW5zZSJ9LG4ucHJvdG90eXBlLmRhdGF0eXBlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2RhdGF0eXBlfSxuLnByb3RvdHlwZS5jcmVhdGU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IG4oQSxlKX0sbi5wcm90b3R5cGUuc3Vic2V0PWZ1bmN0aW9uKEEsZSx0KXtzd2l0Y2goYXJndW1lbnRzLmxlbmd0aCl7Y2FzZSAxOnJldHVybiBmdW5jdGlvbihBLGUpe2lmKCFoKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgaW5kZXgiKTtpZihlLmlzU2NhbGFyKCkpcmV0dXJuIEEuZ2V0KGUubWluKCkpO3ZhciB0PWUuc2l6ZSgpO2lmKHQubGVuZ3RoIT09QS5fc2l6ZS5sZW5ndGgpdGhyb3cgbmV3IF90KHQubGVuZ3RoLEEuX3NpemUubGVuZ3RoKTtmb3IodmFyIHI9ZS5taW4oKSxvPWUubWF4KCkscz0wLGE9QS5fc2l6ZS5sZW5ndGg7czxhO3MrKyl0bihyW3NdLEEuX3NpemVbc10pLHRuKG9bc10sQS5fc2l6ZVtzXSk7cmV0dXJuIG5ldyBuKGkoQS5fZGF0YSxlLHQubGVuZ3RoLDApLEEuX2RhdGF0eXBlKX0odGhpcyxBKTtjYXNlIDI6Y2FzZSAzOnJldHVybiBmdW5jdGlvbihBLGUsdCxuKXtpZighZXx8ITAhPT1lLmlzSW5kZXgpdGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBpbmRleCIpO3ZhciBpLHI9ZS5zaXplKCkscz1lLmlzU2NhbGFyKCk7aWYoZyh0KT8oaT10LnNpemUoKSx0PXQudmFsdWVPZigpKTppPSR0KHQpLHMpe2lmKDAhPT1pLmxlbmd0aCl0aHJvdyBuZXcgVHlwZUVycm9yKCJTY2FsYXIgZXhwZWN0ZWQiKTtBLnNldChlLm1pbigpLHQsbil9ZWxzZXtpZighd0EoaSxyKSl0cnl7aT0kdCh0PTA9PT1pLmxlbmd0aD9GbihbdF0scik6Rm4odCxyKSl9Y2F0Y2goQSl7fWlmKHIubGVuZ3RoPEEuX3NpemUubGVuZ3RoKXRocm93IG5ldyBfdChyLmxlbmd0aCxBLl9zaXplLmxlbmd0aCwiPCIpO2lmKGkubGVuZ3RoPHIubGVuZ3RoKXtmb3IodmFyIEI9MCxjPTA7MT09PXJbQl0mJjE9PT1pW0JdOylCKys7Zm9yKDsxPT09cltCXTspYysrLEIrKzt0PWNuKHQsci5sZW5ndGgsYyxpKX1pZighd0EocixpKSl0aHJvdyBuZXcgX3QocixpLCI+Iik7YShBLGUubWF4KCkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQSsxfSkpLG4pO3ZhciBFPXIubGVuZ3RoO28oQS5fZGF0YSxlLHQsRSwwKX1yZXR1cm4gQX0odGhpcyxBLGUsdCk7ZGVmYXVsdDp0aHJvdyBuZXcgU3ludGF4RXJyb3IoIldyb25nIG51bWJlciBvZiBhcmd1bWVudHMiKX19LG4ucHJvdG90eXBlLmdldD1mdW5jdGlvbihBKXtpZighYyhBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSBleHBlY3RlZCIpO2lmKEEubGVuZ3RoIT09dGhpcy5fc2l6ZS5sZW5ndGgpdGhyb3cgbmV3IF90KEEubGVuZ3RoLHRoaXMuX3NpemUubGVuZ3RoKTtmb3IodmFyIGU9MDtlPEEubGVuZ3RoO2UrKyl0bihBW2VdLHRoaXMuX3NpemVbZV0pO2Zvcih2YXIgdD10aGlzLl9kYXRhLG49MCxpPUEubGVuZ3RoO248aTtuKyspe3ZhciByPUFbbl07dG4ocix0Lmxlbmd0aCksdD10W3JdfXJldHVybiB0fSxuLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oQSxlLHQpe2lmKCFjKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5IGV4cGVjdGVkIik7aWYoQS5sZW5ndGg8dGhpcy5fc2l6ZS5sZW5ndGgpdGhyb3cgbmV3IF90KEEubGVuZ3RoLHRoaXMuX3NpemUubGVuZ3RoLCI8Iik7dmFyIG4saSxyO2EodGhpcyxBLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEErMX0pKSx0KTt2YXIgbz10aGlzLl9kYXRhO2ZvcihuPTAsaT1BLmxlbmd0aC0xO248aTtuKyspdG4ocj1BW25dLG8ubGVuZ3RoKSxvPW9bcl07cmV0dXJuIHRuKHI9QVtBLmxlbmd0aC0xXSxvLmxlbmd0aCksb1tyXT1lLHRoaXN9LG4ucHJvdG90eXBlLnJlc2l6ZT1mdW5jdGlvbihBLGUsdCl7aWYoIUUoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgb3IgTWF0cml4IGV4cGVjdGVkIik7dmFyIG49QS52YWx1ZU9mKCkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQXJyYXkuaXNBcnJheShBKSYmMT09PUEubGVuZ3RoP0FbMF06QX0pKTtyZXR1cm4gcyh0P3RoaXMuY2xvbmUoKTp0aGlzLG4sZSl9LG4ucHJvdG90eXBlLnJlc2hhcGU9ZnVuY3Rpb24oQSxlKXt2YXIgdD1lP3RoaXMuY2xvbmUoKTp0aGlzO3QuX2RhdGE9b24odC5fZGF0YSxBKTt2YXIgbj10Ll9zaXplLnJlZHVjZSgoZnVuY3Rpb24oQSxlKXtyZXR1cm4gQSplfSkpO3JldHVybiB0Ll9zaXplPXNuKEEsbiksdH0sbi5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4oe2RhdGE6dUEodGhpcy5fZGF0YSksc2l6ZTp1QSh0aGlzLl9zaXplKSxkYXRhdHlwZTp0aGlzLl9kYXRhdHlwZX0pfSxuLnByb3RvdHlwZS5zaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3NpemUuc2xpY2UoMCl9LG4ucHJvdG90eXBlLm1hcD1mdW5jdGlvbihBKXt2YXIgZT10aGlzLHQ9Zm4oQSksaT1mdW5jdGlvbiBuKGkscil7cmV0dXJuIGMoaSk/aS5tYXAoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIG4oQSxyLmNvbmNhdChlKSl9KSk6MT09PXQ/QShpKToyPT09dD9BKGkscik6QShpLHIsZSl9KHRoaXMuX2RhdGEsW10pO3JldHVybiBuZXcgbihpLHZvaWQgMCE9PXRoaXMuX2RhdGF0eXBlP0luKGksUCk6dm9pZCAwKX0sbi5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihBKXt2YXIgZT10aGlzOyFmdW5jdGlvbiB0KG4saSl7YyhuKT9uLmZvckVhY2goKGZ1bmN0aW9uKEEsZSl7dChBLGkuY29uY2F0KGUpKX0pKTpBKG4saSxlKX0odGhpcy5fZGF0YSxbXSl9LG4ucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09dnQubWFyaygoZnVuY3Rpb24gQSgpe3ZhciBlO3JldHVybiB2dC53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDpyZXR1cm4gZT12dC5tYXJrKChmdW5jdGlvbiBBKGUsdCl7dmFyIG47cmV0dXJuIHZ0LndyYXAoKGZ1bmN0aW9uKGkpe2Zvcig7Oylzd2l0Y2goaS5wcmV2PWkubmV4dCl7Y2FzZSAwOmlmKCFjKGUpKXtpLm5leHQ9OTticmVha31uPTA7Y2FzZSAyOmlmKCEobjxlLmxlbmd0aCkpe2kubmV4dD03O2JyZWFrfXJldHVybiBpLmRlbGVnYXRlWWllbGQoQShlW25dLHQuY29uY2F0KG4pKSwidDAiLDQpO2Nhc2UgNDpuKyssaS5uZXh0PTI7YnJlYWs7Y2FzZSA3OmkubmV4dD0xMTticmVhaztjYXNlIDk6cmV0dXJuIGkubmV4dD0xMSx7dmFsdWU6ZSxpbmRleDp0fTtjYXNlIDExOmNhc2UiZW5kIjpyZXR1cm4gaS5zdG9wKCl9fSksQSl9KSksQS5kZWxlZ2F0ZVlpZWxkKGUodGhpcy5fZGF0YSxbXSksInQwIiwyKTtjYXNlIDI6Y2FzZSJlbmQiOnJldHVybiBBLnN0b3AoKX19KSxBLHRoaXMpfSkpLG4ucHJvdG90eXBlLnJvd3M9ZnVuY3Rpb24oKXt2YXIgQT1bXTtpZigyIT09dGhpcy5zaXplKCkubGVuZ3RoKXRocm93IG5ldyBUeXBlRXJyb3IoIlJvd3MgY2FuIG9ubHkgYmUgcmV0dXJuZWQgZm9yIGEgMkQgbWF0cml4LiIpO3ZhciBlLHQ9ZnVuY3Rpb24oQSxlKXt2YXIgdD0idW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmQVtTeW1ib2wuaXRlcmF0b3JdfHxBWyJAQGl0ZXJhdG9yIl07aWYoIXQpe2lmKEFycmF5LmlzQXJyYXkoQSl8fCh0PWZ1bmN0aW9uKEEsZSl7aWYoQSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXJldHVybiBObihBLGUpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChBKS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PXQmJkEuY29uc3RydWN0b3ImJih0PUEuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT10fHwiU2V0Ij09PXQ/QXJyYXkuZnJvbShBKToiQXJndW1lbnRzIj09PXR8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KHQpP05uKEEsZSk6dm9pZCAwfX0oQSkpKXt0JiYoQT10KTt2YXIgbj0wLGk9ZnVuY3Rpb24oKXt9O3JldHVybntzOmksbjpmdW5jdGlvbigpe3JldHVybiBuPj1BLmxlbmd0aD97ZG9uZTohMH06e2RvbmU6ITEsdmFsdWU6QVtuKytdfX0sZTpmdW5jdGlvbihBKXt0aHJvdyBBfSxmOml9fXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBpdGVyYXRlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX12YXIgcixvPSEwLHM9ITE7cmV0dXJue3M6ZnVuY3Rpb24oKXt0PXQuY2FsbChBKX0sbjpmdW5jdGlvbigpe3ZhciBBPXQubmV4dCgpO3JldHVybiBvPUEuZG9uZSxBfSxlOmZ1bmN0aW9uKEEpe3M9ITAscj1BfSxmOmZ1bmN0aW9uKCl7dHJ5e298fG51bGw9PXQucmV0dXJufHx0LnJldHVybigpfWZpbmFsbHl7aWYocyl0aHJvdyByfX19fSh0aGlzLl9kYXRhKTt0cnl7Zm9yKHQucygpOyEoZT10Lm4oKSkuZG9uZTspe3ZhciBpPWUudmFsdWU7QS5wdXNoKG5ldyBuKFtpXSx0aGlzLl9kYXRhdHlwZSkpfX1jYXRjaChBKXt0LmUoQSl9ZmluYWxseXt0LmYoKX1yZXR1cm4gQX0sbi5wcm90b3R5cGUuY29sdW1ucz1mdW5jdGlvbigpe3ZhciBBPXRoaXMsZT1bXSx0PXRoaXMuc2l6ZSgpO2lmKDIhPT10Lmxlbmd0aCl0aHJvdyBuZXcgVHlwZUVycm9yKCJSb3dzIGNhbiBvbmx5IGJlIHJldHVybmVkIGZvciBhIDJEIG1hdHJpeC4iKTtmb3IodmFyIGk9dGhpcy5fZGF0YSxyPWZ1bmN0aW9uKHQpe3ZhciByPWkubWFwKChmdW5jdGlvbihBKXtyZXR1cm5bQVt0XV19KSk7ZS5wdXNoKG5ldyBuKHIsQS5fZGF0YXR5cGUpKX0sbz0wO288dFsxXTtvKyspcihvKTtyZXR1cm4gZX0sbi5wcm90b3R5cGUudG9BcnJheT1mdW5jdGlvbigpe3JldHVybiB1QSh0aGlzLl9kYXRhKX0sbi5wcm90b3R5cGUudmFsdWVPZj1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9kYXRhfSxuLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oQSl7cmV0dXJuIFZ0KHRoaXMuX2RhdGEsQSl9LG4ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIFZ0KHRoaXMuX2RhdGEpfSxuLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOiJEZW5zZU1hdHJpeCIsZGF0YTp0aGlzLl9kYXRhLHNpemU6dGhpcy5fc2l6ZSxkYXRhdHlwZTp0aGlzLl9kYXRhdHlwZX19LG4ucHJvdG90eXBlLmRpYWdvbmFsPWZ1bmN0aW9uKEEpe2lmKEEpe2lmKHIoQSkmJihBPUEudG9OdW1iZXIoKSksIXQoQSl8fCFWKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIlRoZSBwYXJhbWV0ZXIgayBtdXN0IGJlIGFuIGludGVnZXIgbnVtYmVyIil9ZWxzZSBBPTA7Zm9yKHZhciBlPUE+MD9BOjAsaT1BPDA/LUE6MCxvPXRoaXMuX3NpemVbMF0scz10aGlzLl9zaXplWzFdLGE9TWF0aC5taW4oby1pLHMtZSksQj1bXSxjPTA7YzxhO2MrKylCW2NdPXRoaXMuX2RhdGFbYytpXVtjK2VdO3JldHVybiBuZXcgbih7ZGF0YTpCLHNpemU6W2FdLGRhdGF0eXBlOnRoaXMuX2RhdGF0eXBlfSl9LG4uZGlhZ29uYWw9ZnVuY3Rpb24oQSxlLGksbyl7aWYoIWMoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgZXhwZWN0ZWQsIHNpemUgcGFyYW1ldGVyIik7aWYoMiE9PUEubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiT25seSB0d28gZGltZW5zaW9ucyBtYXRyaXggYXJlIHN1cHBvcnRlZCIpO2lmKEE9QS5tYXAoKGZ1bmN0aW9uKEEpe2lmKHIoQSkmJihBPUEudG9OdW1iZXIoKSksIXQoQSl8fCFWKEEpfHxBPDEpdGhyb3cgbmV3IEVycm9yKCJTaXplIHZhbHVlcyBtdXN0IGJlIHBvc2l0aXZlIGludGVnZXJzIik7cmV0dXJuIEF9KSksaSl7aWYocihpKSYmKGk9aS50b051bWJlcigpKSwhdChpKXx8IVYoaSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVGhlIHBhcmFtZXRlciBrIG11c3QgYmUgYW4gaW50ZWdlciBudW1iZXIiKX1lbHNlIGk9MDt2YXIgcyxhPWk+MD9pOjAsQj1pPDA/LWk6MCxFPUFbMF0sUT1BWzFdLHU9TWF0aC5taW4oRS1CLFEtYSk7aWYoYyhlKSl7aWYoZS5sZW5ndGghPT11KXRocm93IG5ldyBFcnJvcigiSW52YWxpZCB2YWx1ZSBhcnJheSBsZW5ndGgiKTtzPWZ1bmN0aW9uKEEpe3JldHVybiBlW0FdfX1lbHNlIGlmKGcoZSkpe3ZhciBsPWUuc2l6ZSgpO2lmKDEhPT1sLmxlbmd0aHx8bFswXSE9PXUpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIG1hdHJpeCBsZW5ndGgiKTtzPWZ1bmN0aW9uKEEpe3JldHVybiBlLmdldChbQV0pfX1lbHNlIHM9ZnVuY3Rpb24oKXtyZXR1cm4gZX07b3x8KG89cihzKDApKT9zKDApLm11bCgwKTowKTt2YXIgaD1bXTtpZihBLmxlbmd0aD4wKXtoPXJuKGgsQSxvKTtmb3IodmFyIHc9MDt3PHU7dysrKWhbdytCXVt3K2FdPXModyl9cmV0dXJuIG5ldyBuKHtkYXRhOmgsc2l6ZTpbRSxRXX0pfSxuLmZyb21KU09OPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgbihBKX0sbi5wcm90b3R5cGUuc3dhcFJvd3M9ZnVuY3Rpb24oQSxlKXtpZighKHQoQSkmJlYoQSkmJnQoZSkmJlYoZSkpKXRocm93IG5ldyBFcnJvcigiUm93IGluZGV4IG11c3QgYmUgcG9zaXRpdmUgaW50ZWdlcnMiKTtpZigyIT09dGhpcy5fc2l6ZS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJPbmx5IHR3byBkaW1lbnNpb25hbCBtYXRyaXggaXMgc3VwcG9ydGVkIik7cmV0dXJuIHRuKEEsdGhpcy5fc2l6ZVswXSksdG4oZSx0aGlzLl9zaXplWzBdKSxuLl9zd2FwUm93cyhBLGUsdGhpcy5fZGF0YSksdGhpc30sbi5fc3dhcFJvd3M9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXRbQV07dFtBXT10W2VdLHRbZV09bn0sbn0pLHtpc0NsYXNzOiEwfSkseW49cEEoImNsb25lIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKCJjbG9uZSIse2FueTp1QX0pfSkpO2Z1bmN0aW9uIFRuKEEpe3ZhciBlLHQsbj1BLmxlbmd0aCxpPUFbMF0ubGVuZ3RoLHI9W107Zm9yKHQ9MDt0PGk7dCsrKXt2YXIgbz1bXTtmb3IoZT0wO2U8bjtlKyspby5wdXNoKEFbZV1bdF0pO3IucHVzaChvKX1yZXR1cm4gcn1mdW5jdGlvbiB4bihBKXtmb3IodmFyIGU9MDtlPEEubGVuZ3RoO2UrKylpZihFKEFbZV0pKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIFJuKEEsZSl7ZyhBKSYmKEE9QS52YWx1ZU9mKCkpO2Zvcih2YXIgdD0wLG49QS5sZW5ndGg7dDxuO3QrKyl7dmFyIGk9QVt0XTtBcnJheS5pc0FycmF5KGkpP1JuKGksZSk6ZShpKX19ZnVuY3Rpb24gR24oQSxlLHQpe3JldHVybiBBJiYiZnVuY3Rpb24iPT10eXBlb2YgQS5tYXA/QS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBHbihBLGUsdCl9KSk6ZShBKX1mdW5jdGlvbiBTbihBLGUsdCl7dmFyIG49QXJyYXkuaXNBcnJheShBKT8kdChBKTpBLnNpemUoKTtpZihlPDB8fGU+PW4ubGVuZ3RoKXRocm93IG5ldyBxdChlLG4ubGVuZ3RoKTtyZXR1cm4gZyhBKT9BLmNyZWF0ZShibihBLnZhbHVlT2YoKSxlLHQpKTpibihBLGUsdCl9ZnVuY3Rpb24gYm4oQSxlLHQpe3ZhciBuLGkscixvO2lmKGU8PTApe2lmKEFycmF5LmlzQXJyYXkoQVswXSkpe2ZvcihvPVRuKEEpLGk9W10sbj0wO248by5sZW5ndGg7bisrKWlbbl09Ym4ob1tuXSxlLTEsdCk7cmV0dXJuIGl9Zm9yKHI9QVswXSxuPTE7bjxBLmxlbmd0aDtuKyspcj10KHIsQVtuXSk7cmV0dXJuIHJ9Zm9yKGk9W10sbj0wO248QS5sZW5ndGg7bisrKWlbbl09Ym4oQVtuXSxlLTEsdCk7cmV0dXJuIGl9ZnVuY3Rpb24gSG4oQSxlLHQsbixpLHIsbyxzLGEsQixjKXt2YXIgZyxFLFEsdSxsPUEuX3ZhbHVlcyxoPUEuX2luZGV4LHc9QS5fcHRyO2lmKG4pZm9yKEU9d1tlXSxRPXdbZSsxXSxnPUU7ZzxRO2crKyl0W3U9aFtnXV0hPT1yPyh0W3VdPXIsby5wdXNoKHUpLEI/KG5bdV09YT9zKGxbZ10sYyk6cyhjLGxbZ10pLGlbdV09cik6blt1XT1sW2ddKTooblt1XT1hP3MobFtnXSxuW3VdKTpzKG5bdV0sbFtnXSksaVt1XT1yKTtlbHNlIGZvcihFPXdbZV0sUT13W2UrMV0sZz1FO2c8UTtnKyspdFt1PWhbZ11dIT09cj8odFt1XT1yLG8ucHVzaCh1KSk6aVt1XT1yfXZhciB2bj0iaXNJbnRlZ2VyIixrbj1wQSh2bixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJuIGUodm4se251bWJlcjpWLEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS5pc0ludCgpfSxGcmFjdGlvbjpmdW5jdGlvbihBKXtyZXR1cm4gMT09PUEuZCYmaXNGaW5pdGUoQS5uKX0sIkFycmF5IHwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEduKGUsQSl9fSkpfSl9KSksam49KG4oNTcyOCksbig1OTkzKSwibnVtYmVyIik7ZnVuY3Rpb24gSm4oQSl7cmV0dXJuIEE8MH1mdW5jdGlvbiB6bihBKXtyZXR1cm4gQT4wfWZ1bmN0aW9uIExuKEEpe3JldHVybiAwPT09QX1mdW5jdGlvbiBQbihBKXtyZXR1cm4gTnVtYmVyLmlzTmFOKEEpfUpuLnNpZ25hdHVyZT1qbix6bi5zaWduYXR1cmU9am4sTG4uc2lnbmF0dXJlPWpuLFBuLnNpZ25hdHVyZT1qbjt2YXIgT249ImlzTmVnYXRpdmUiLFZuPXBBKE9uLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZDtyZXR1cm4gZShPbix7bnVtYmVyOkpuLEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS5pc05lZygpJiYhQS5pc1plcm8oKSYmIUEuaXNOYU4oKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIEEuczwwfSxVbml0OmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gZS5maW5kKEEsdC52YWx1ZVR5cGUoKSkodC52YWx1ZSl9fSkpLCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLFduPSJpc051bWVyaWMiLEtuPXBBKFduLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZDtyZXR1cm4gZShXbix7Im51bWJlciB8IEJpZ051bWJlciB8IEZyYWN0aW9uIHwgYm9vbGVhbiI6ZnVuY3Rpb24oKXtyZXR1cm4hMH0sIkNvbXBsZXggfCBVbml0IHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCB8IE5vZGUiOmZ1bmN0aW9uKCl7cmV0dXJuITF9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLFhuPShuKDg0MzYpLCJoYXNOdW1lcmljVmFsdWUiKSxabj1wQShYbixbInR5cGVkIiwiaXNOdW1lcmljIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmlzTnVtZXJpYztyZXR1cm4gZShYbix7Ym9vbGVhbjpmdW5jdGlvbigpe3JldHVybiEwfSxzdHJpbmc6ZnVuY3Rpb24oQSl7cmV0dXJuIEEudHJpbSgpLmxlbmd0aD4wJiYhaXNOYU4oTnVtYmVyKEEpKX0sYW55OmZ1bmN0aW9uKEEpe3JldHVybiB0KEEpfX0pfSkpLF9uPSJpc1Bvc2l0aXZlIixxbj1wQShfbixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJuIGUoX24se251bWJlcjp6bixCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIUEuaXNOZWcoKSYmIUEuaXNaZXJvKCkmJiFBLmlzTmFOKCl9LEZyYWN0aW9uOmZ1bmN0aW9uKEEpe3JldHVybiBBLnM+MCYmQS5uPjB9LFVuaXQ6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBlLmZpbmQoQSx0LnZhbHVlVHlwZSgpKSh0LnZhbHVlKX19KSksIkFycmF5IHwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEduKGUsQSl9fSkpfSl9KSksJG49cEEoImlzWmVybyIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKCJpc1plcm8iLHtudW1iZXI6TG4sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmlzWmVybygpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiAwPT09QS5yZSYmMD09PUEuaW19LEZyYWN0aW9uOmZ1bmN0aW9uKEEpe3JldHVybiAxPT09QS5kJiYwPT09QS5ufSxVbml0OmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gZS5maW5kKEEsdC52YWx1ZVR5cGUoKSkodC52YWx1ZSl9fSkpLCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLEFpPXBBKCJpc05hTiIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgiaXNOYU4iLHtudW1iZXI6UG4sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmlzTmFOKCl9LEZyYWN0aW9uOmZ1bmN0aW9uKEEpe3JldHVybiExfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmlzTmFOKCl9LFVuaXQ6ZnVuY3Rpb24oQSl7cmV0dXJuIE51bWJlci5pc05hTihBLnZhbHVlKX0sIkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gR24oQSxOdW1iZXIuaXNOYU4pfX0pfSkpLGVpPXBBKCJ0eXBlT2YiLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7cmV0dXJuKDAsQS50eXBlZCkoInR5cGVPZiIse2FueTpQfSl9KSk7ZnVuY3Rpb24gdGkoQSxlLHQpe2lmKG51bGw9PXQpcmV0dXJuIEEuZXEoZSk7aWYoQS5lcShlKSlyZXR1cm4hMDtpZihBLmlzTmFOKCl8fGUuaXNOYU4oKSlyZXR1cm4hMTtpZihBLmlzRmluaXRlKCkmJmUuaXNGaW5pdGUoKSl7dmFyIG49QS5taW51cyhlKS5hYnMoKTtpZihuLmlzWmVybygpKXJldHVybiEwO3ZhciBpPUEuY29uc3RydWN0b3IubWF4KEEuYWJzKCksZS5hYnMoKSk7cmV0dXJuIG4ubHRlKGkudGltZXModCkpfXJldHVybiExfXZhciBuaT1wQSgiY29tcGFyZVVuaXRzIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJueyJVbml0LCBVbml0IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtpZighdC5lcXVhbEJhc2UobikpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY29tcGFyZSB1bml0cyB3aXRoIGRpZmZlcmVudCBiYXNlIik7cmV0dXJuIGUuZmluZChBLFt0LnZhbHVlVHlwZSgpLG4udmFsdWVUeXBlKCldKSh0LnZhbHVlLG4udmFsdWUpfX0pKX19KSksaWk9ImVxdWFsU2NhbGFyIixyaT1wQShpaSxbInR5cGVkIiwiY29uZmlnIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPW5pKHt0eXBlZDplfSk7cmV0dXJuIGUoaWkseyJib29sZWFuLCBib29sZWFuIjpmdW5jdGlvbihBLGUpe3JldHVybiBBPT09ZX0sIm51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBzQShBLGUsdC5lcHNpbG9uKX0sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmVxKGUpfHx0aShBLGUsdC5lcHNpbG9uKX0sIkZyYWN0aW9uLCBGcmFjdGlvbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5lcXVhbHMoZSl9LCJDb21wbGV4LCBDb21wbGV4IjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbihBLGUsdCl7cmV0dXJuIHNBKEEucmUsZS5yZSx0KSYmc0EoQS5pbSxlLmltLHQpfShBLGUsdC5lcHNpbG9uKX19LG4pfSkpLG9pPShwQShpaSxbInR5cGVkIiwiY29uZmlnIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZztyZXR1cm4gZShpaSx7Im51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBzQShBLGUsdC5lcHNpbG9uKX19KX0pKSxwQSgiU3BhcnNlTWF0cml4IixbInR5cGVkIiwiZXF1YWxTY2FsYXIiLCJNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCxuPUEuZXF1YWxTY2FsYXIsaT1BLk1hdHJpeDtmdW5jdGlvbiBvKEEsZSl7aWYoISh0aGlzIGluc3RhbmNlb2YgbykpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDb25zdHJ1Y3RvciBtdXN0IGJlIGNhbGxlZCB3aXRoIHRoZSBuZXcgb3BlcmF0b3IiKTtpZihlJiYhQihlKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZGF0YXR5cGU6ICIrZSk7aWYoZyhBKSkhZnVuY3Rpb24oQSxlLHQpeyJTcGFyc2VNYXRyaXgiPT09ZS50eXBlPyhBLl92YWx1ZXM9ZS5fdmFsdWVzP3VBKGUuX3ZhbHVlcyk6dm9pZCAwLEEuX2luZGV4PXVBKGUuX2luZGV4KSxBLl9wdHI9dUEoZS5fcHRyKSxBLl9zaXplPXVBKGUuX3NpemUpLEEuX2RhdGF0eXBlPXR8fGUuX2RhdGF0eXBlKTpzKEEsZS52YWx1ZU9mKCksdHx8ZS5fZGF0YXR5cGUpfSh0aGlzLEEsZSk7ZWxzZSBpZihBJiZjKEEuaW5kZXgpJiZjKEEucHRyKSYmYyhBLnNpemUpKXRoaXMuX3ZhbHVlcz1BLnZhbHVlcyx0aGlzLl9pbmRleD1BLmluZGV4LHRoaXMuX3B0cj1BLnB0cix0aGlzLl9zaXplPUEuc2l6ZSx0aGlzLl9kYXRhdHlwZT1lfHxBLmRhdGF0eXBlO2Vsc2UgaWYoYyhBKSlzKHRoaXMsQSxlKTtlbHNle2lmKEEpdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5zdXBwb3J0ZWQgdHlwZSBvZiBkYXRhICgiK1AoQSkrIikiKTt0aGlzLl92YWx1ZXM9W10sdGhpcy5faW5kZXg9W10sdGhpcy5fcHRyPVswXSx0aGlzLl9zaXplPVswLDBdLHRoaXMuX2RhdGF0eXBlPWV9fWZ1bmN0aW9uIHMoQSx0LGkpe0EuX3ZhbHVlcz1bXSxBLl9pbmRleD1bXSxBLl9wdHI9W10sQS5fZGF0YXR5cGU9aTt2YXIgcj10Lmxlbmd0aCxvPTAscz1uLGE9MDtpZihCKGkpJiYocz1lLmZpbmQobixbaSxpXSl8fG4sYT1lLmNvbnZlcnQoMCxpKSkscj4wKXt2YXIgZz0wO2Rve0EuX3B0ci5wdXNoKEEuX2luZGV4Lmxlbmd0aCk7Zm9yKHZhciBFPTA7RTxyO0UrKyl7dmFyIFE9dFtFXTtpZihjKFEpKXtpZigwPT09ZyYmbzxRLmxlbmd0aCYmKG89US5sZW5ndGgpLGc8US5sZW5ndGgpe3ZhciB1PVFbZ107cyh1LGEpfHwoQS5fdmFsdWVzLnB1c2godSksQS5faW5kZXgucHVzaChFKSl9fWVsc2UgMD09PWcmJm88MSYmKG89MSkscyhRLGEpfHwoQS5fdmFsdWVzLnB1c2goUSksQS5faW5kZXgucHVzaChFKSl9ZysrfXdoaWxlKGc8byl9QS5fcHRyLnB1c2goQS5faW5kZXgubGVuZ3RoKSxBLl9zaXplPVtyLG9dfWZ1bmN0aW9uIGEoQSxlLHQsbil7aWYodC1lPT0wKXJldHVybiB0O2Zvcih2YXIgaT1lO2k8dDtpKyspaWYobltpXT09PUEpcmV0dXJuIGk7cmV0dXJuIGV9ZnVuY3Rpb24gUShBLGUsdCxuLGkscixvKXtpLnNwbGljZShBLDAsbiksci5zcGxpY2UoQSwwLGUpO2Zvcih2YXIgcz10KzE7czxvLmxlbmd0aDtzKyspb1tzXSsrfWZ1bmN0aW9uIHUoQSx0LGkscil7dmFyIG89cnx8MCxzPW4sYT0wO0IoQS5fZGF0YXR5cGUpJiYocz1lLmZpbmQobixbQS5fZGF0YXR5cGUsQS5fZGF0YXR5cGVdKXx8bixhPWUuY29udmVydCgwLEEuX2RhdGF0eXBlKSxvPWUuY29udmVydChvLEEuX2RhdGF0eXBlKSk7dmFyIGMsZyxFLFE9IXMobyxhKSx1PUEuX3NpemVbMF0sbD1BLl9zaXplWzFdO2lmKGk+bCl7Zm9yKGc9bDtnPGk7ZysrKWlmKEEuX3B0cltnXT1BLl92YWx1ZXMubGVuZ3RoLFEpZm9yKGM9MDtjPHU7YysrKUEuX3ZhbHVlcy5wdXNoKG8pLEEuX2luZGV4LnB1c2goYyk7QS5fcHRyW2ldPUEuX3ZhbHVlcy5sZW5ndGh9ZWxzZSBpPGwmJihBLl9wdHIuc3BsaWNlKGkrMSxsLWkpLEEuX3ZhbHVlcy5zcGxpY2UoQS5fcHRyW2ldLEEuX3ZhbHVlcy5sZW5ndGgpLEEuX2luZGV4LnNwbGljZShBLl9wdHJbaV0sQS5faW5kZXgubGVuZ3RoKSk7aWYobD1pLHQ+dSl7aWYoUSl7dmFyIGg9MDtmb3IoZz0wO2c8bDtnKyspe0EuX3B0cltnXT1BLl9wdHJbZ10raCxFPUEuX3B0cltnKzFdK2g7dmFyIHc9MDtmb3IoYz11O2M8dDtjKyssdysrKUEuX3ZhbHVlcy5zcGxpY2UoRSt3LDAsbyksQS5faW5kZXguc3BsaWNlKEUrdywwLGMpLGgrK31BLl9wdHJbbF09QS5fdmFsdWVzLmxlbmd0aH19ZWxzZSBpZih0PHUpe3ZhciBDPTA7Zm9yKGc9MDtnPGw7ZysrKXtBLl9wdHJbZ109QS5fcHRyW2ddLUM7dmFyIEk9QS5fcHRyW2ddLE09QS5fcHRyW2crMV0tQztmb3IoRT1JO0U8TTtFKyspKGM9QS5faW5kZXhbRV0pPnQtMSYmKEEuX3ZhbHVlcy5zcGxpY2UoRSwxKSxBLl9pbmRleC5zcGxpY2UoRSwxKSxDKyspfUEuX3B0cltnXT1BLl92YWx1ZXMubGVuZ3RofXJldHVybiBBLl9zaXplWzBdPXQsQS5fc2l6ZVsxXT1pLEF9ZnVuY3Rpb24gbChBLGUsdCxuLGkpe3ZhciByLG8scz1uWzBdLGE9blsxXSxCPVtdO2ZvcihyPTA7cjxzO3IrKylmb3IoQltyXT1bXSxvPTA7bzxhO28rKylCW3JdW29dPTA7Zm9yKG89MDtvPGE7bysrKWZvcih2YXIgYz10W29dLGc9dFtvKzFdLEU9YztFPGc7RSsrKUJbcj1lW0VdXVtvXT1BP2k/dUEoQVtFXSk6QVtFXToxO3JldHVybiBCfXJldHVybiBvLnByb3RvdHlwZT1uZXcgaSxvLnByb3RvdHlwZS5jcmVhdGVTcGFyc2VNYXRyaXg9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IG8oQSxlKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIm5hbWUiLHt2YWx1ZToiU3BhcnNlTWF0cml4In0pLG8ucHJvdG90eXBlLmNvbnN0cnVjdG9yPW8sby5wcm90b3R5cGUudHlwZT0iU3BhcnNlTWF0cml4IixvLnByb3RvdHlwZS5pc1NwYXJzZU1hdHJpeD0hMCxvLnByb3RvdHlwZS5nZXREYXRhVHlwZT1mdW5jdGlvbigpe3JldHVybiBJbih0aGlzLl92YWx1ZXMsUCl9LG8ucHJvdG90eXBlLnN0b3JhZ2U9ZnVuY3Rpb24oKXtyZXR1cm4ic3BhcnNlIn0sby5wcm90b3R5cGUuZGF0YXR5cGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZGF0YXR5cGV9LG8ucHJvdG90eXBlLmNyZWF0ZT1mdW5jdGlvbihBLGUpe3JldHVybiBuZXcgbyhBLGUpfSxvLnByb3RvdHlwZS5kZW5zaXR5PWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5fc2l6ZVswXSxlPXRoaXMuX3NpemVbMV07cmV0dXJuIDAhPT1BJiYwIT09ZT90aGlzLl9pbmRleC5sZW5ndGgvKEEqZSk6MH0sby5wcm90b3R5cGUuc3Vic2V0PWZ1bmN0aW9uKEEsZSx0KXtpZighdGhpcy5fdmFsdWVzKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBzdWJzZXQgb24gYSBQYXR0ZXJuIG9ubHkgbWF0cml4Iik7c3dpdGNoKGFyZ3VtZW50cy5sZW5ndGgpe2Nhc2UgMTpyZXR1cm4gZnVuY3Rpb24oQSxlKXtpZighaChlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGluZGV4Iik7aWYoZS5pc1NjYWxhcigpKXJldHVybiBBLmdldChlLm1pbigpKTt2YXIgdCxuLGkscixzPWUuc2l6ZSgpO2lmKHMubGVuZ3RoIT09QS5fc2l6ZS5sZW5ndGgpdGhyb3cgbmV3IF90KHMubGVuZ3RoLEEuX3NpemUubGVuZ3RoKTt2YXIgYT1lLm1pbigpLEI9ZS5tYXgoKTtmb3IodD0wLG49QS5fc2l6ZS5sZW5ndGg7dDxuO3QrKyl0bihhW3RdLEEuX3NpemVbdF0pLHRuKEJbdF0sQS5fc2l6ZVt0XSk7dmFyIGM9QS5fdmFsdWVzLGc9QS5faW5kZXgsRT1BLl9wdHIsUT1lLmRpbWVuc2lvbigwKSx1PWUuZGltZW5zaW9uKDEpLGw9W10sdz1bXTtRLmZvckVhY2goKGZ1bmN0aW9uKEEsZSl7d1tBXT1lWzBdLGxbQV09ITB9KSk7dmFyIEM9Yz9bXTp2b2lkIDAsST1bXSxNPVtdO3JldHVybiB1LmZvckVhY2goKGZ1bmN0aW9uKEEpe2ZvcihNLnB1c2goSS5sZW5ndGgpLGk9RVtBXSxyPUVbQSsxXTtpPHI7aSsrKXQ9Z1tpXSwhMD09PWxbdF0mJihJLnB1c2god1t0XSksQyYmQy5wdXNoKGNbaV0pKX0pKSxNLnB1c2goSS5sZW5ndGgpLG5ldyBvKHt2YWx1ZXM6QyxpbmRleDpJLHB0cjpNLHNpemU6cyxkYXRhdHlwZTpBLl9kYXRhdHlwZX0pfSh0aGlzLEEpO2Nhc2UgMjpjYXNlIDM6cmV0dXJuIGZ1bmN0aW9uKEEsZSx0LG4pe2lmKCFlfHwhMCE9PWUuaXNJbmRleCl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGluZGV4Iik7dmFyIGkscj1lLnNpemUoKSxvPWUuaXNTY2FsYXIoKTtpZihnKHQpPyhpPXQuc2l6ZSgpLHQ9dC50b0FycmF5KCkpOmk9JHQodCksbyl7aWYoMCE9PWkubGVuZ3RoKXRocm93IG5ldyBUeXBlRXJyb3IoIlNjYWxhciBleHBlY3RlZCIpO0Euc2V0KGUubWluKCksdCxuKX1lbHNle2lmKDEhPT1yLmxlbmd0aCYmMiE9PXIubGVuZ3RoKXRocm93IG5ldyBfdChyLmxlbmd0aCxBLl9zaXplLmxlbmd0aCwiPCIpO2lmKGkubGVuZ3RoPHIubGVuZ3RoKXtmb3IodmFyIHM9MCxhPTA7MT09PXJbc10mJjE9PT1pW3NdOylzKys7Zm9yKDsxPT09cltzXTspYSsrLHMrKzt0PWNuKHQsci5sZW5ndGgsYSxpKX1pZighd0EocixpKSl0aHJvdyBuZXcgX3QocixpLCI+Iik7aWYoMT09PXIubGVuZ3RoKWUuZGltZW5zaW9uKDApLmZvckVhY2goKGZ1bmN0aW9uKGUsaSl7dG4oZSksQS5zZXQoW2UsMF0sdFtpWzBdXSxuKX0pKTtlbHNle3ZhciBCPWUuZGltZW5zaW9uKDApLGM9ZS5kaW1lbnNpb24oMSk7Qi5mb3JFYWNoKChmdW5jdGlvbihlLGkpe3RuKGUpLGMuZm9yRWFjaCgoZnVuY3Rpb24ocixvKXt0bihyKSxBLnNldChbZSxyXSx0W2lbMF1dW29bMF1dLG4pfSkpfSkpfX1yZXR1cm4gQX0odGhpcyxBLGUsdCk7ZGVmYXVsdDp0aHJvdyBuZXcgU3ludGF4RXJyb3IoIldyb25nIG51bWJlciBvZiBhcmd1bWVudHMiKX19LG8ucHJvdG90eXBlLmdldD1mdW5jdGlvbihBKXtpZighYyhBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSBleHBlY3RlZCIpO2lmKEEubGVuZ3RoIT09dGhpcy5fc2l6ZS5sZW5ndGgpdGhyb3cgbmV3IF90KEEubGVuZ3RoLHRoaXMuX3NpemUubGVuZ3RoKTtpZighdGhpcy5fdmFsdWVzKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBnZXQgb24gYSBQYXR0ZXJuIG9ubHkgbWF0cml4Iik7dmFyIGU9QVswXSx0PUFbMV07dG4oZSx0aGlzLl9zaXplWzBdKSx0bih0LHRoaXMuX3NpemVbMV0pO3ZhciBuPWEoZSx0aGlzLl9wdHJbdF0sdGhpcy5fcHRyW3QrMV0sdGhpcy5faW5kZXgpO3JldHVybiBuPHRoaXMuX3B0clt0KzFdJiZ0aGlzLl9pbmRleFtuXT09PWU/dGhpcy5fdmFsdWVzW25dOjB9LG8ucHJvdG90eXBlLnNldD1mdW5jdGlvbihBLHQsaSl7aWYoIWMoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgZXhwZWN0ZWQiKTtpZihBLmxlbmd0aCE9PXRoaXMuX3NpemUubGVuZ3RoKXRocm93IG5ldyBfdChBLmxlbmd0aCx0aGlzLl9zaXplLmxlbmd0aCk7aWYoIXRoaXMuX3ZhbHVlcyl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpbnZva2Ugc2V0IG9uIGEgUGF0dGVybiBvbmx5IG1hdHJpeCIpO3ZhciByPUFbMF0sbz1BWzFdLHM9dGhpcy5fc2l6ZVswXSxnPXRoaXMuX3NpemVbMV0sRT1uLGw9MDtCKHRoaXMuX2RhdGF0eXBlKSYmKEU9ZS5maW5kKG4sW3RoaXMuX2RhdGF0eXBlLHRoaXMuX2RhdGF0eXBlXSl8fG4sbD1lLmNvbnZlcnQoMCx0aGlzLl9kYXRhdHlwZSkpLChyPnMtMXx8bz5nLTEpJiYodSh0aGlzLE1hdGgubWF4KHIrMSxzKSxNYXRoLm1heChvKzEsZyksaSkscz10aGlzLl9zaXplWzBdLGc9dGhpcy5fc2l6ZVsxXSksdG4ocixzKSx0bihvLGcpO3ZhciBoPWEocix0aGlzLl9wdHJbb10sdGhpcy5fcHRyW28rMV0sdGhpcy5faW5kZXgpO3JldHVybiBoPHRoaXMuX3B0cltvKzFdJiZ0aGlzLl9pbmRleFtoXT09PXI/RSh0LGwpP2Z1bmN0aW9uKEEsZSx0LG4saSl7dC5zcGxpY2UoQSwxKSxuLnNwbGljZShBLDEpO2Zvcih2YXIgcj1lKzE7cjxpLmxlbmd0aDtyKyspaVtyXS0tfShoLG8sdGhpcy5fdmFsdWVzLHRoaXMuX2luZGV4LHRoaXMuX3B0cik6dGhpcy5fdmFsdWVzW2hdPXQ6RSh0LGwpfHxRKGgscixvLHQsdGhpcy5fdmFsdWVzLHRoaXMuX2luZGV4LHRoaXMuX3B0ciksdGhpc30sby5wcm90b3R5cGUucmVzaXplPWZ1bmN0aW9uKEEsZSxuKXtpZighRShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSBvciBNYXRyaXggZXhwZWN0ZWQiKTt2YXIgaT1BLnZhbHVlT2YoKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBcnJheS5pc0FycmF5KEEpJiYxPT09QS5sZW5ndGg/QVswXTpBfSkpO2lmKDIhPT1pLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIk9ubHkgdHdvIGRpbWVuc2lvbnMgbWF0cml4IGFyZSBzdXBwb3J0ZWQiKTtyZXR1cm4gaS5mb3JFYWNoKChmdW5jdGlvbihBKXtpZighdChBKXx8IVYoQSl8fEE8MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIHNpemUsIG11c3QgY29udGFpbiBwb3NpdGl2ZSBpbnRlZ2VycyAoc2l6ZTogIitWdChpKSsiKSIpfSkpLHUobj90aGlzLmNsb25lKCk6dGhpcyxpWzBdLGlbMV0sZSl9LG8ucHJvdG90eXBlLnJlc2hhcGU9ZnVuY3Rpb24oQSxlKXtpZighYyhBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSBleHBlY3RlZCIpO2lmKDIhPT1BLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIlNwYXJzZSBtYXRyaWNlcyBjYW4gb25seSBiZSByZXNoYXBlZCBpbiB0d28gZGltZW5zaW9ucyIpO0EuZm9yRWFjaCgoZnVuY3Rpb24oZSl7aWYoIXQoZSl8fCFWKGUpfHxlPD0tMnx8MD09PWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBzaXplLCBtdXN0IGNvbnRhaW4gcG9zaXRpdmUgaW50ZWdlcnMgb3IgLTEgKHNpemU6ICIrVnQoQSkrIikiKX0pKTt2YXIgbj10aGlzLl9zaXplWzBdKnRoaXMuX3NpemVbMV07aWYobiE9PShBPXNuKEEsbikpWzBdKkFbMV0pdGhyb3cgbmV3IEVycm9yKCJSZXNoYXBpbmcgc3BhcnNlIG1hdHJpeCB3aWxsIHJlc3VsdCBpbiB0aGUgd3JvbmcgbnVtYmVyIG9mIGVsZW1lbnRzIik7dmFyIGk9ZT90aGlzLmNsb25lKCk6dGhpcztpZih0aGlzLl9zaXplWzBdPT09QVswXSYmdGhpcy5fc2l6ZVsxXT09PUFbMV0pcmV0dXJuIGk7Zm9yKHZhciByPVtdLG89MDtvPGkuX3B0ci5sZW5ndGg7bysrKWZvcih2YXIgcz0wO3M8aS5fcHRyW28rMV0taS5fcHRyW29dO3MrKylyLnB1c2gobyk7Zm9yKHZhciBCPWkuX3ZhbHVlcy5zbGljZSgpLGc9aS5faW5kZXguc2xpY2UoKSxFPTA7RTxpLl9pbmRleC5sZW5ndGg7RSsrKXt2YXIgdT1nW0VdLGw9cltFXSxoPXUqaS5fc2l6ZVsxXStsO3JbRV09aCVBWzFdLGdbRV09TWF0aC5mbG9vcihoL0FbMV0pfWkuX3ZhbHVlcy5sZW5ndGg9MCxpLl9pbmRleC5sZW5ndGg9MCxpLl9wdHIubGVuZ3RoPUFbMV0rMSxpLl9zaXplPUEuc2xpY2UoKTtmb3IodmFyIHc9MDt3PGkuX3B0ci5sZW5ndGg7dysrKWkuX3B0clt3XT0wO2Zvcih2YXIgQz0wO0M8Qi5sZW5ndGg7QysrKXt2YXIgST1nW0NdLE09cltDXSxkPUJbQ107UShhKEksaS5fcHRyW01dLGkuX3B0cltNKzFdLGkuX2luZGV4KSxJLE0sZCxpLl92YWx1ZXMsaS5faW5kZXgsaS5fcHRyKX1yZXR1cm4gaX0sby5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG8oe3ZhbHVlczp0aGlzLl92YWx1ZXM/dUEodGhpcy5fdmFsdWVzKTp2b2lkIDAsaW5kZXg6dUEodGhpcy5faW5kZXgpLHB0cjp1QSh0aGlzLl9wdHIpLHNpemU6dUEodGhpcy5fc2l6ZSksZGF0YXR5cGU6dGhpcy5fZGF0YXR5cGV9KX0sby5wcm90b3R5cGUuc2l6ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9zaXplLnNsaWNlKDApfSxvLnByb3RvdHlwZS5tYXA9ZnVuY3Rpb24oQSx0KXtpZighdGhpcy5fdmFsdWVzKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBtYXAgb24gYSBQYXR0ZXJuIG9ubHkgbWF0cml4Iik7dmFyIGk9dGhpcyxyPXRoaXMuX3NpemVbMF0scz10aGlzLl9zaXplWzFdLGE9Zm4oQSk7cmV0dXJuIGZ1bmN0aW9uKEEsdCxpLHIscyxhLGMpe3ZhciBnPVtdLEU9W10sUT1bXSx1PW4sbD0wO0IoQS5fZGF0YXR5cGUpJiYodT1lLmZpbmQobixbQS5fZGF0YXR5cGUsQS5fZGF0YXR5cGVdKXx8bixsPWUuY29udmVydCgwLEEuX2RhdGF0eXBlKSk7Zm9yKHZhciBoPWZ1bmN0aW9uKEEsZSx0KXtBPWEoQSxlLHQpLHUoQSxsKXx8KGcucHVzaChBKSxFLnB1c2goZSkpfSx3PTA7dzw9czt3Kyspe1EucHVzaChnLmxlbmd0aCk7dmFyIEM9QS5fcHRyW3ddLEk9QS5fcHRyW3crMV07aWYoYylmb3IodmFyIE09QztNPEk7TSsrKXt2YXIgZD1BLl9pbmRleFtNXTtkPj0wJiZkPD1pJiZoKEEuX3ZhbHVlc1tNXSxkLTAsdy0wKX1lbHNle2Zvcih2YXIgcD17fSxtPUM7bTxJO20rKylwW0EuX2luZGV4W21dXT1BLl92YWx1ZXNbbV07Zm9yKHZhciBGPTA7Rjw9aTtGKyspaChGIGluIHA/cFtGXTowLEYtMCx3LTApfX1yZXR1cm4gUS5wdXNoKGcubGVuZ3RoKSxuZXcgbyh7dmFsdWVzOmcsaW5kZXg6RSxwdHI6USxzaXplOltpLTArMSxzLTArMV19KX0odGhpcywwLHItMSwwLHMtMSwoZnVuY3Rpb24oZSx0LG4pe3JldHVybiAxPT09YT9BKGUpOjI9PT1hP0EoZSxbdCxuXSk6QShlLFt0LG5dLGkpfSksdCl9LG8ucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oQSxlKXtpZighdGhpcy5fdmFsdWVzKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBmb3JFYWNoIG9uIGEgUGF0dGVybiBvbmx5IG1hdHJpeCIpO2Zvcih2YXIgdD10aGlzLl9zaXplWzBdLG49dGhpcy5fc2l6ZVsxXSxpPTA7aTxuO2krKyl7dmFyIHI9dGhpcy5fcHRyW2ldLG89dGhpcy5fcHRyW2krMV07aWYoZSlmb3IodmFyIHM9cjtzPG87cysrKXt2YXIgYT10aGlzLl9pbmRleFtzXTtBKHRoaXMuX3ZhbHVlc1tzXSxbYSxpXSx0aGlzKX1lbHNle2Zvcih2YXIgQj17fSxjPXI7YzxvO2MrKylCW3RoaXMuX2luZGV4W2NdXT10aGlzLl92YWx1ZXNbY107Zm9yKHZhciBnPTA7Zzx0O2crKylBKGcgaW4gQj9CW2ddOjAsW2csaV0sdGhpcyl9fX0sby5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT12dC5tYXJrKChmdW5jdGlvbiBBKCl7dmFyIGUsdCxuLGkscixvO3JldHVybiB2dC53cmFwKChmdW5jdGlvbihBKXtmb3IoOzspc3dpdGNoKEEucHJldj1BLm5leHQpe2Nhc2UgMDppZih0aGlzLl92YWx1ZXMpe0EubmV4dD0yO2JyZWFrfXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGl0ZXJhdGUgYSBQYXR0ZXJuIG9ubHkgbWF0cml4Iik7Y2FzZSAyOmU9dGhpcy5fc2l6ZVsxXSx0PTA7Y2FzZSA0OmlmKCEodDxlKSl7QS5uZXh0PTE4O2JyZWFrfW49dGhpcy5fcHRyW3RdLGk9dGhpcy5fcHRyW3QrMV0scj1uO2Nhc2UgODppZighKHI8aSkpe0EubmV4dD0xNTticmVha31yZXR1cm4gbz10aGlzLl9pbmRleFtyXSxBLm5leHQ9MTIse3ZhbHVlOnRoaXMuX3ZhbHVlc1tyXSxpbmRleDpbbyx0XX07Y2FzZSAxMjpyKyssQS5uZXh0PTg7YnJlYWs7Y2FzZSAxNTp0KyssQS5uZXh0PTQ7YnJlYWs7Y2FzZSAxODpjYXNlImVuZCI6cmV0dXJuIEEuc3RvcCgpfX0pLEEsdGhpcyl9KSksby5wcm90b3R5cGUudG9BcnJheT1mdW5jdGlvbigpe3JldHVybiBsKHRoaXMuX3ZhbHVlcyx0aGlzLl9pbmRleCx0aGlzLl9wdHIsdGhpcy5fc2l6ZSwhMCl9LG8ucHJvdG90eXBlLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gbCh0aGlzLl92YWx1ZXMsdGhpcy5faW5kZXgsdGhpcy5fcHRyLHRoaXMuX3NpemUsITEpfSxvLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMuX3NpemVbMF0sdD10aGlzLl9zaXplWzFdLG49dGhpcy5kZW5zaXR5KCksaT0iU3BhcnNlIE1hdHJpeCBbIitWdChlLEEpKyIgeCAiK1Z0KHQsQSkrIl0gZGVuc2l0eTogIitWdChuLEEpKyJcbiIscj0wO3I8dDtyKyspZm9yKHZhciBvPXRoaXMuX3B0cltyXSxzPXRoaXMuX3B0cltyKzFdLGE9bzthPHM7YSsrKWkrPSJcbiAgICAoIitWdCh0aGlzLl9pbmRleFthXSxBKSsiLCAiK1Z0KHIsQSkrIikgPT0+ICIrKHRoaXMuX3ZhbHVlcz9WdCh0aGlzLl92YWx1ZXNbYV0sQSk6IlgiKTtyZXR1cm4gaX0sby5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gVnQodGhpcy50b0FycmF5KCkpfSxvLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOiJTcGFyc2VNYXRyaXgiLHZhbHVlczp0aGlzLl92YWx1ZXMsaW5kZXg6dGhpcy5faW5kZXgscHRyOnRoaXMuX3B0cixzaXplOnRoaXMuX3NpemUsZGF0YXR5cGU6dGhpcy5fZGF0YXR5cGV9fSxvLnByb3RvdHlwZS5kaWFnb25hbD1mdW5jdGlvbihBKXtpZihBKXtpZihyKEEpJiYoQT1BLnRvTnVtYmVyKCkpLCF0KEEpfHwhVihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJUaGUgcGFyYW1ldGVyIGsgbXVzdCBiZSBhbiBpbnRlZ2VyIG51bWJlciIpfWVsc2UgQT0wO3ZhciBlPUE+MD9BOjAsbj1BPDA/LUE6MCxpPXRoaXMuX3NpemVbMF0scz10aGlzLl9zaXplWzFdLGE9TWF0aC5taW4oaS1uLHMtZSksQj1bXSxjPVtdLGc9W107Z1swXT0wO2Zvcih2YXIgRT1lO0U8cyYmQi5sZW5ndGg8YTtFKyspZm9yKHZhciBRPXRoaXMuX3B0cltFXSx1PXRoaXMuX3B0cltFKzFdLGw9UTtsPHU7bCsrKXt2YXIgaD10aGlzLl9pbmRleFtsXTtpZihoPT09RS1lK24pe0IucHVzaCh0aGlzLl92YWx1ZXNbbF0pLGNbQi5sZW5ndGgtMV09aC1uO2JyZWFrfX1yZXR1cm4gZy5wdXNoKEIubGVuZ3RoKSxuZXcgbyh7dmFsdWVzOkIsaW5kZXg6YyxwdHI6ZyxzaXplOlthLDFdfSl9LG8uZnJvbUpTT049ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBvKEEpfSxvLmRpYWdvbmFsPWZ1bmN0aW9uKEEsaSxzLGEsRSl7aWYoIWMoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgZXhwZWN0ZWQsIHNpemUgcGFyYW1ldGVyIik7aWYoMiE9PUEubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiT25seSB0d28gZGltZW5zaW9ucyBtYXRyaXggYXJlIHN1cHBvcnRlZCIpO2lmKEE9QS5tYXAoKGZ1bmN0aW9uKEEpe2lmKHIoQSkmJihBPUEudG9OdW1iZXIoKSksIXQoQSl8fCFWKEEpfHxBPDEpdGhyb3cgbmV3IEVycm9yKCJTaXplIHZhbHVlcyBtdXN0IGJlIHBvc2l0aXZlIGludGVnZXJzIik7cmV0dXJuIEF9KSkscyl7aWYocihzKSYmKHM9cy50b051bWJlcigpKSwhdChzKXx8IVYocykpdGhyb3cgbmV3IFR5cGVFcnJvcigiVGhlIHBhcmFtZXRlciBrIG11c3QgYmUgYW4gaW50ZWdlciBudW1iZXIiKX1lbHNlIHM9MDt2YXIgUT1uLHU9MDtCKEUpJiYoUT1lLmZpbmQobixbRSxFXSl8fG4sdT1lLmNvbnZlcnQoMCxFKSk7dmFyIGwsaD1zPjA/czowLHc9czwwPy1zOjAsQz1BWzBdLEk9QVsxXSxNPU1hdGgubWluKEMtdyxJLWgpO2lmKGMoaSkpe2lmKGkubGVuZ3RoIT09TSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgdmFsdWUgYXJyYXkgbGVuZ3RoIik7bD1mdW5jdGlvbihBKXtyZXR1cm4gaVtBXX19ZWxzZSBpZihnKGkpKXt2YXIgZD1pLnNpemUoKTtpZigxIT09ZC5sZW5ndGh8fGRbMF0hPT1NKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBtYXRyaXggbGVuZ3RoIik7bD1mdW5jdGlvbihBKXtyZXR1cm4gaS5nZXQoW0FdKX19ZWxzZSBsPWZ1bmN0aW9uKCl7cmV0dXJuIGl9O2Zvcih2YXIgcD1bXSxtPVtdLEY9W10sRD0wO0Q8STtEKyspe0YucHVzaChwLmxlbmd0aCk7dmFyIFk9RC1oO2lmKFk+PTAmJlk8TSl7dmFyIGY9bChZKTtRKGYsdSl8fChtLnB1c2goWSt3KSxwLnB1c2goZikpfX1yZXR1cm4gRi5wdXNoKHAubGVuZ3RoKSxuZXcgbyh7dmFsdWVzOnAsaW5kZXg6bSxwdHI6RixzaXplOltDLEldfSl9LG8ucHJvdG90eXBlLnN3YXBSb3dzPWZ1bmN0aW9uKEEsZSl7aWYoISh0KEEpJiZWKEEpJiZ0KGUpJiZWKGUpKSl0aHJvdyBuZXcgRXJyb3IoIlJvdyBpbmRleCBtdXN0IGJlIHBvc2l0aXZlIGludGVnZXJzIik7aWYoMiE9PXRoaXMuX3NpemUubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiT25seSB0d28gZGltZW5zaW9uYWwgbWF0cml4IGlzIHN1cHBvcnRlZCIpO3JldHVybiB0bihBLHRoaXMuX3NpemVbMF0pLHRuKGUsdGhpcy5fc2l6ZVswXSksby5fc3dhcFJvd3MoQSxlLHRoaXMuX3NpemVbMV0sdGhpcy5fdmFsdWVzLHRoaXMuX2luZGV4LHRoaXMuX3B0ciksdGhpc30sby5fZm9yRWFjaFJvdz1mdW5jdGlvbihBLGUsdCxuLGkpe2Zvcih2YXIgcj1uW0FdLG89bltBKzFdLHM9cjtzPG87cysrKWkodFtzXSxlW3NdKX0sby5fc3dhcFJvd3M9ZnVuY3Rpb24oQSxlLHQsbixpLHIpe2Zvcih2YXIgbz0wO288dDtvKyspe3ZhciBzPXJbb10sQj1yW28rMV0sYz1hKEEscyxCLGkpLGc9YShlLHMsQixpKTtpZihjPEImJmc8QiYmaVtjXT09PUEmJmlbZ109PT1lKXtpZihuKXt2YXIgRT1uW2NdO25bY109bltnXSxuW2ddPUV9fWVsc2UgaWYoYzxCJiZpW2NdPT09QSYmKGc+PUJ8fGlbZ10hPT1lKSl7dmFyIFE9bj9uW2NdOnZvaWQgMDtpLnNwbGljZShnLDAsZSksbiYmbi5zcGxpY2UoZywwLFEpLGkuc3BsaWNlKGc8PWM/YysxOmMsMSksbiYmbi5zcGxpY2UoZzw9Yz9jKzE6YywxKX1lbHNlIGlmKGc8QiYmaVtnXT09PWUmJihjPj1CfHxpW2NdIT09QSkpe3ZhciB1PW4/bltnXTp2b2lkIDA7aS5zcGxpY2UoYywwLEEpLG4mJm4uc3BsaWNlKGMsMCx1KSxpLnNwbGljZShjPD1nP2crMTpnLDEpLG4mJm4uc3BsaWNlKGM8PWc/ZysxOmcsMSl9fX0sb30pLHtpc0NsYXNzOiEwfSkpLHNpPXBBKCJudW1iZXIiLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PWUoIm51bWJlciIseyIiOmZ1bmN0aW9uKCl7cmV0dXJuIDB9LG51bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQX0sc3RyaW5nOmZ1bmN0aW9uKEEpe2lmKCJOYU4iPT09QSlyZXR1cm4gTmFOO3ZhciBlLHQsbj0odD0oZT1BKS5tYXRjaCgvKDBbYm94XSkoWzAtOWEtZkEtRl0qKVwuKFswLTlhLWZBLUZdKikvKSk/e2lucHV0OmUscmFkaXg6eyIwYiI6MiwiMG8iOjgsIjB4IjoxNn1bdFsxXV0saW50ZWdlclBhcnQ6dFsyXSxmcmFjdGlvbmFsUGFydDp0WzNdfTpudWxsO2lmKG4pcmV0dXJuIGZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1wYXJzZUludChBLmludGVnZXJQYXJ0LEEucmFkaXgpLHQ9MCxuPTA7bjxBLmZyYWN0aW9uYWxQYXJ0Lmxlbmd0aDtuKyspdCs9cGFyc2VJbnQoQS5mcmFjdGlvbmFsUGFydFtuXSxBLnJhZGl4KS9NYXRoLnBvdyhBLnJhZGl4LG4rMSk7dmFyIGk9ZSt0O2lmKGlzTmFOKGkpKXRocm93IG5ldyBTeW50YXhFcnJvcignU3RyaW5nICInK0EuaW5wdXQrJyIgaXMgbm8gdmFsaWQgbnVtYmVyJyk7cmV0dXJuIGl9KG4pO3ZhciBpPTAscj1BLm1hdGNoKC8oMFtib3hdWzAtOWEtZkEtRl0qKWkoWzAtOV0qKS8pO3ImJihpPU51bWJlcihyWzJdKSxBPXJbMV0pO3ZhciBvPU51bWJlcihBKTtpZihpc05hTihvKSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoJ1N0cmluZyAiJytBKyciIGlzIG5vIHZhbGlkIG51bWJlcicpO2lmKHIpe2lmKG8+TWF0aC5wb3coMixpKS0xKXRocm93IG5ldyBTeW50YXhFcnJvcignU3RyaW5nICInLmNvbmNhdChBLCciIGlzIG91dCBvZiByYW5nZScpKTtvPj1NYXRoLnBvdygyLGktMSkmJihvLT1NYXRoLnBvdygyLGkpKX1yZXR1cm4gb30sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLnRvTnVtYmVyKCl9LEZyYWN0aW9uOmZ1bmN0aW9uKEEpe3JldHVybiBBLnZhbHVlT2YoKX0sVW5pdDplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jbG9uZSgpO3JldHVybiB0LnZhbHVlPUEoZS52YWx1ZSksdH19KSksbnVsbDpmdW5jdGlvbihBKXtyZXR1cm4gMH0sIlVuaXQsIHN0cmluZyB8IFVuaXQiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEudG9OdW1iZXIoZSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pO3JldHVybiB0LmZyb21KU09OPWZ1bmN0aW9uKEEpe3JldHVybiBwYXJzZUZsb2F0KEEudmFsdWUpfSx0fSkpLGFpPXBBKCJzdHJpbmciLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZDtyZXR1cm4gZSgic3RyaW5nIix7IiI6ZnVuY3Rpb24oKXtyZXR1cm4iIn0sbnVtYmVyOkFBLG51bGw6ZnVuY3Rpb24oQSl7cmV0dXJuIm51bGwifSxib29sZWFuOmZ1bmN0aW9uKEEpe3JldHVybiBBKyIifSxzdHJpbmc6ZnVuY3Rpb24oQSl7cmV0dXJuIEF9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKSxhbnk6ZnVuY3Rpb24oQSl7cmV0dXJuIFN0cmluZyhBKX19KX0pKSxCaT0iYm9vbGVhbiIsY2k9cEEoQmksWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKEJpLHsiIjpmdW5jdGlvbigpe3JldHVybiExfSxib29sZWFuOmZ1bmN0aW9uKEEpe3JldHVybiBBfSxudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuISFBfSxudWxsOmZ1bmN0aW9uKEEpe3JldHVybiExfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIUEuaXNaZXJvKCl9LHN0cmluZzpmdW5jdGlvbihBKXt2YXIgZT1BLnRvTG93ZXJDYXNlKCk7aWYoInRydWUiPT09ZSlyZXR1cm4hMDtpZigiZmFsc2UiPT09ZSlyZXR1cm4hMTt2YXIgdD1OdW1iZXIoQSk7aWYoIiIhPT1BJiYhaXNOYU4odCkpcmV0dXJuISF0O3Rocm93IG5ldyBFcnJvcignQ2Fubm90IGNvbnZlcnQgIicrQSsnIiB0byBhIGJvb2xlYW4nKX0sIkFycmF5IHwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEduKGUsQSl9fSkpfSl9KSksZ2k9cEEoImJpZ251bWJlciIsWyJ0eXBlZCIsIkJpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIGUoImJpZ251bWJlciIseyIiOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0KDApfSxudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyB0KEErIiIpfSxzdHJpbmc6ZnVuY3Rpb24oQSl7dmFyIGU9QS5tYXRjaCgvKDBbYm94XVswLTlhLWZBLUZdKilpKFswLTldKikvKTtpZihlKXt2YXIgbj1lWzJdLGk9dChlWzFdKSxyPW5ldyB0KDIpLnBvdyhOdW1iZXIobikpO2lmKGkuZ3Qoci5zdWIoMSkpKXRocm93IG5ldyBTeW50YXhFcnJvcignU3RyaW5nICInLmNvbmNhdChBLCciIGlzIG91dCBvZiByYW5nZScpKTt2YXIgbz1uZXcgdCgyKS5wb3coTnVtYmVyKG4pLTEpO3JldHVybiBpLmd0ZShvKT9pLnN1YihyKTppfXJldHVybiBuZXcgdChBKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBfSxVbml0OmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdD1lLmNsb25lKCk7cmV0dXJuIHQudmFsdWU9QShlLnZhbHVlKSx0fX0pKSxGcmFjdGlvbjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoQS5uKS5kaXYoQS5kKS50aW1lcyhBLnMpfSxudWxsOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdCgwKX0sIkFycmF5IHwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEduKGUsQSl9fSkpfSl9KSksRWk9cEEoImNvbXBsZXgiLFsidHlwZWQiLCJDb21wbGV4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkNvbXBsZXg7cmV0dXJuIGUoImNvbXBsZXgiLHsiIjpmdW5jdGlvbigpe3JldHVybiB0LlpFUk99LG51bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoQSwwKX0sIm51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBuZXcgdChBLGUpfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyB0KEEudG9OdW1iZXIoKSxlLnRvTnVtYmVyKCkpfSxGcmFjdGlvbjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoQS52YWx1ZU9mKCksMCl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY2xvbmUoKX0sc3RyaW5nOmZ1bmN0aW9uKEEpe3JldHVybiB0KEEpfSxudWxsOmZ1bmN0aW9uKEEpe3JldHVybiB0KDApfSxPYmplY3Q6ZnVuY3Rpb24oQSl7aWYoInJlImluIEEmJiJpbSJpbiBBKXJldHVybiBuZXcgdChBLnJlLEEuaW0pO2lmKCJyImluIEEmJiJwaGkiaW4gQXx8ImFicyJpbiBBJiYiYXJnImluIEEpcmV0dXJuIG5ldyB0KEEpO3Rocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgb2JqZWN0IHdpdGggcHJvcGVydGllcyAocmUgYW5kIGltKSBvciAociBhbmQgcGhpKSBvciAoYWJzIGFuZCBhcmcpIil9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLFFpPXBBKCJmcmFjdGlvbiIsWyJ0eXBlZCIsIkZyYWN0aW9uIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkZyYWN0aW9uO3JldHVybiBlKCJmcmFjdGlvbiIse251bWJlcjpmdW5jdGlvbihBKXtpZighaXNGaW5pdGUoQSl8fGlzTmFOKEEpKXRocm93IG5ldyBFcnJvcihBKyIgY2Fubm90IGJlIHJlcHJlc2VudGVkIGFzIGEgZnJhY3Rpb24iKTtyZXR1cm4gbmV3IHQoQSl9LHN0cmluZzpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoQSl9LCJudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHQoQSxlKX0sbnVsbDpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoMCl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoQS50b1N0cmluZygpKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIEF9LFVuaXQ6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3ZhciB0PWUuY2xvbmUoKTtyZXR1cm4gdC52YWx1ZT1BKGUudmFsdWUpLHR9fSkpLE9iamVjdDpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoQSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLHVpPXBBKCJtYXRyaXgiLFsidHlwZWQiLCJNYXRyaXgiLCJEZW5zZU1hdHJpeCIsIlNwYXJzZU1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9KEEuTWF0cml4LEEuRGVuc2VNYXRyaXgpLG49QS5TcGFyc2VNYXRyaXg7cmV0dXJuIGUoIm1hdHJpeCIseyIiOmZ1bmN0aW9uKCl7cmV0dXJuIGkoW10pfSxzdHJpbmc6ZnVuY3Rpb24oQSl7cmV0dXJuIGkoW10sQSl9LCJzdHJpbmcsIHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gaShbXSxBLGUpfSxBcnJheTpmdW5jdGlvbihBKXtyZXR1cm4gaShBKX0sTWF0cml4OmZ1bmN0aW9uKEEpe3JldHVybiBpKEEsQS5zdG9yYWdlKCkpfSwiQXJyYXkgfCBNYXRyaXgsIHN0cmluZyI6aSwiQXJyYXkgfCBNYXRyaXgsIHN0cmluZywgc3RyaW5nIjppfSk7ZnVuY3Rpb24gaShBLGUsaSl7aWYoImRlbnNlIj09PWV8fCJkZWZhdWx0Ij09PWV8fHZvaWQgMD09PWUpcmV0dXJuIG5ldyB0KEEsaSk7aWYoInNwYXJzZSI9PT1lKXJldHVybiBuZXcgbihBLGkpO3Rocm93IG5ldyBUeXBlRXJyb3IoIlVua25vd24gbWF0cml4IHR5cGUgIitKU09OLnN0cmluZ2lmeShlKSsiLiIpfX0pKSxsaT0ibWF0cml4RnJvbUZ1bmN0aW9uIixoaT1wQShsaSxbInR5cGVkIiwibWF0cml4IiwiaXNaZXJvIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuaXNaZXJvO3JldHVybiBlKGxpLHsiQXJyYXkgfCBNYXRyaXgsIGZ1bmN0aW9uLCBzdHJpbmcsIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIGkoQSxlLHQsbil9LCJBcnJheSB8IE1hdHJpeCwgZnVuY3Rpb24sIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBpKEEsZSx0KX0sIk1hdHJpeCwgZnVuY3Rpb24iOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGkoQSxlLCJkZW5zZSIpfSwiQXJyYXksIGZ1bmN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBpKEEsZSwiZGVuc2UiKS50b0FycmF5KCl9LCJBcnJheSB8IE1hdHJpeCwgc3RyaW5nLCBmdW5jdGlvbiI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBpKEEsdCxlKX0sIkFycmF5IHwgTWF0cml4LCBzdHJpbmcsIHN0cmluZywgZnVuY3Rpb24iOmZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiBpKEEsbixlLHQpfX0pO2Z1bmN0aW9uIGkoQSxlLGkscil7dmFyIG87cmV0dXJuKG89dm9pZCAwIT09cj90KGkscik6dChpKSkucmVzaXplKEEpLG8uZm9yRWFjaCgoZnVuY3Rpb24oQSx0KXt2YXIgaT1lKHQpO24oaSl8fG8uc2V0KHQsaSl9KSksb319KSk7ZnVuY3Rpb24gd2koQSxlKXsobnVsbD09ZXx8ZT5BLmxlbmd0aCkmJihlPUEubGVuZ3RoKTtmb3IodmFyIHQ9MCxuPW5ldyBBcnJheShlKTt0PGU7dCsrKW5bdF09QVt0XTtyZXR1cm4gbn12YXIgQ2k9Im1hdHJpeEZyb21Sb3dzIixJaT1wQShDaSxbInR5cGVkIiwibWF0cml4IiwiZmxhdHRlbiIsInNpemUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5mbGF0dGVuLGk9QS5zaXplO3JldHVybiBlKENpLHsiLi4uQXJyYXkiOmZ1bmN0aW9uKEEpe3JldHVybiByKEEpfSwiLi4uTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gdChyKEEubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQS50b0FycmF5KCl9KSkpKX19KTtmdW5jdGlvbiByKEEpe2lmKDA9PT1BLmxlbmd0aCl0aHJvdyBuZXcgVHlwZUVycm9yKCJBdCBsZWFzdCBvbmUgcm93IGlzIG5lZWRlZCB0byBjb25zdHJ1Y3QgYSBtYXRyaXguIik7dmFyIGUsdD1vKEFbMF0pLGk9W10scj1mdW5jdGlvbihBLGUpe3ZhciB0PSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZBW1N5bWJvbC5pdGVyYXRvcl18fEFbIkBAaXRlcmF0b3IiXTtpZighdCl7aWYoQXJyYXkuaXNBcnJheShBKXx8KHQ9ZnVuY3Rpb24oQSxlKXtpZihBKXtpZigic3RyaW5nIj09dHlwZW9mIEEpcmV0dXJuIHdpKEEsZSk7dmFyIHQ9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpLnNsaWNlKDgsLTEpO3JldHVybiJPYmplY3QiPT09dCYmQS5jb25zdHJ1Y3RvciYmKHQ9QS5jb25zdHJ1Y3Rvci5uYW1lKSwiTWFwIj09PXR8fCJTZXQiPT09dD9BcnJheS5mcm9tKEEpOiJBcmd1bWVudHMiPT09dHx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3QodCk/d2koQSxlKTp2b2lkIDB9fShBKSkpe3QmJihBPXQpO3ZhciBuPTAsaT1mdW5jdGlvbigpe307cmV0dXJue3M6aSxuOmZ1bmN0aW9uKCl7cmV0dXJuIG4+PUEubGVuZ3RoP3tkb25lOiEwfTp7ZG9uZTohMSx2YWx1ZTpBW24rK119fSxlOmZ1bmN0aW9uKEEpe3Rocm93IEF9LGY6aX19dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGl0ZXJhdGUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfXZhciByLG89ITAscz0hMTtyZXR1cm57czpmdW5jdGlvbigpe3Q9dC5jYWxsKEEpfSxuOmZ1bmN0aW9uKCl7dmFyIEE9dC5uZXh0KCk7cmV0dXJuIG89QS5kb25lLEF9LGU6ZnVuY3Rpb24oQSl7cz0hMCxyPUF9LGY6ZnVuY3Rpb24oKXt0cnl7b3x8bnVsbD09dC5yZXR1cm58fHQucmV0dXJuKCl9ZmluYWxseXtpZihzKXRocm93IHJ9fX19KEEpO3RyeXtmb3Ioci5zKCk7IShlPXIubigpKS5kb25lOyl7dmFyIHM9ZS52YWx1ZSxhPW8ocyk7aWYoYSE9PXQpdGhyb3cgbmV3IFR5cGVFcnJvcigiVGhlIHZlY3RvcnMgaGFkIGRpZmZlcmVudCBsZW5ndGg6ICIrKDB8dCkrIiDiiaAgIisoMHxhKSk7aS5wdXNoKG4ocykpfX1jYXRjaChBKXtyLmUoQSl9ZmluYWxseXtyLmYoKX1yZXR1cm4gaX1mdW5jdGlvbiBvKEEpe3ZhciBlPWkoQSk7aWYoMT09PWUubGVuZ3RoKXJldHVybiBlWzBdO2lmKDI9PT1lLmxlbmd0aCl7aWYoMT09PWVbMF0pcmV0dXJuIGVbMV07aWYoMT09PWVbMV0pcmV0dXJuIGVbMF07dGhyb3cgbmV3IFR5cGVFcnJvcigiQXQgbGVhc3Qgb25lIG9mIHRoZSBhcmd1bWVudHMgaXMgbm90IGEgdmVjdG9yLiIpfXRocm93IG5ldyBUeXBlRXJyb3IoIk9ubHkgb25lLSBvciB0d28tZGltZW5zaW9uYWwgdmVjdG9ycyBhcmUgc3VwcG9ydGVkLiIpfX0pKTtmdW5jdGlvbiBNaShBLGUpeyhudWxsPT1lfHxlPkEubGVuZ3RoKSYmKGU9QS5sZW5ndGgpO2Zvcih2YXIgdD0wLG49bmV3IEFycmF5KGUpO3Q8ZTt0Kyspblt0XT1BW3RdO3JldHVybiBufXZhciBkaT0ibWF0cml4RnJvbUNvbHVtbnMiLHBpPXBBKGRpLFsidHlwZWQiLCJtYXRyaXgiLCJmbGF0dGVuIiwic2l6ZSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmZsYXR0ZW4saT1BLnNpemU7cmV0dXJuIGUoZGkseyIuLi5BcnJheSI6ZnVuY3Rpb24oQSl7cmV0dXJuIHIoQSl9LCIuLi5NYXRyaXgiOmZ1bmN0aW9uKEEpe3JldHVybiB0KHIoQS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnRvQXJyYXkoKX0pKSkpfX0pO2Z1bmN0aW9uIHIoQSl7aWYoMD09PUEubGVuZ3RoKXRocm93IG5ldyBUeXBlRXJyb3IoIkF0IGxlYXN0IG9uZSBjb2x1bW4gaXMgbmVlZGVkIHRvIGNvbnN0cnVjdCBhIG1hdHJpeC4iKTtmb3IodmFyIGU9byhBWzBdKSx0PVtdLGk9MDtpPGU7aSsrKXRbaV09W107dmFyIHIscz1mdW5jdGlvbihBLGUpe3ZhciB0PSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZBW1N5bWJvbC5pdGVyYXRvcl18fEFbIkBAaXRlcmF0b3IiXTtpZighdCl7aWYoQXJyYXkuaXNBcnJheShBKXx8KHQ9ZnVuY3Rpb24oQSxlKXtpZihBKXtpZigic3RyaW5nIj09dHlwZW9mIEEpcmV0dXJuIE1pKEEsZSk7dmFyIHQ9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpLnNsaWNlKDgsLTEpO3JldHVybiJPYmplY3QiPT09dCYmQS5jb25zdHJ1Y3RvciYmKHQ9QS5jb25zdHJ1Y3Rvci5uYW1lKSwiTWFwIj09PXR8fCJTZXQiPT09dD9BcnJheS5mcm9tKEEpOiJBcmd1bWVudHMiPT09dHx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3QodCk/TWkoQSxlKTp2b2lkIDB9fShBKSkpe3QmJihBPXQpO3ZhciBuPTAsaT1mdW5jdGlvbigpe307cmV0dXJue3M6aSxuOmZ1bmN0aW9uKCl7cmV0dXJuIG4+PUEubGVuZ3RoP3tkb25lOiEwfTp7ZG9uZTohMSx2YWx1ZTpBW24rK119fSxlOmZ1bmN0aW9uKEEpe3Rocm93IEF9LGY6aX19dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGl0ZXJhdGUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfXZhciByLG89ITAscz0hMTtyZXR1cm57czpmdW5jdGlvbigpe3Q9dC5jYWxsKEEpfSxuOmZ1bmN0aW9uKCl7dmFyIEE9dC5uZXh0KCk7cmV0dXJuIG89QS5kb25lLEF9LGU6ZnVuY3Rpb24oQSl7cz0hMCxyPUF9LGY6ZnVuY3Rpb24oKXt0cnl7b3x8bnVsbD09dC5yZXR1cm58fHQucmV0dXJuKCl9ZmluYWxseXtpZihzKXRocm93IHJ9fX19KEEpO3RyeXtmb3Iocy5zKCk7IShyPXMubigpKS5kb25lOyl7dmFyIGE9ci52YWx1ZSxCPW8oYSk7aWYoQiE9PWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiVGhlIHZlY3RvcnMgaGFkIGRpZmZlcmVudCBsZW5ndGg6ICIrKDB8ZSkrIiDiiaAgIisoMHxCKSk7Zm9yKHZhciBjPW4oYSksZz0wO2c8ZTtnKyspdFtnXS5wdXNoKGNbZ10pfX1jYXRjaChBKXtzLmUoQSl9ZmluYWxseXtzLmYoKX1yZXR1cm4gdH1mdW5jdGlvbiBvKEEpe3ZhciBlPWkoQSk7aWYoMT09PWUubGVuZ3RoKXJldHVybiBlWzBdO2lmKDI9PT1lLmxlbmd0aCl7aWYoMT09PWVbMF0pcmV0dXJuIGVbMV07aWYoMT09PWVbMV0pcmV0dXJuIGVbMF07dGhyb3cgbmV3IFR5cGVFcnJvcigiQXQgbGVhc3Qgb25lIG9mIHRoZSBhcmd1bWVudHMgaXMgbm90IGEgdmVjdG9yLiIpfXRocm93IG5ldyBUeXBlRXJyb3IoIk9ubHkgb25lLSBvciB0d28tZGltZW5zaW9uYWwgdmVjdG9ycyBhcmUgc3VwcG9ydGVkLiIpfX0pKSxtaT0ic3BsaXRVbml0IixGaT1wQShtaSxbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKG1pLHsiVW5pdCwgQXJyYXkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuc3BsaXRVbml0KGUpfX0pfSkpLERpPSJudW1iZXIiLFlpPSJudW1iZXIsIG51bWJlciI7ZnVuY3Rpb24gZmkoQSl7cmV0dXJuIE1hdGguYWJzKEEpfWZ1bmN0aW9uIE5pKEEsZSl7cmV0dXJuIEErZX1mdW5jdGlvbiBVaShBLGUpe3JldHVybiBBLWV9ZnVuY3Rpb24geWkoQSxlKXtyZXR1cm4gQSplfWZ1bmN0aW9uIFRpKEEpe3JldHVybi1BfWZ1bmN0aW9uIHhpKEEpe3JldHVybiBBfWZ1bmN0aW9uIFJpKEEpe3JldHVybiBfKEEpfWZ1bmN0aW9uIEdpKEEpe3JldHVybiBBKkEqQX1mdW5jdGlvbiBTaShBKXtyZXR1cm4gTWF0aC5leHAoQSl9ZnVuY3Rpb24gYmkoQSl7cmV0dXJuIHEoQSl9ZnVuY3Rpb24gSGkoQSxlKXtpZighVihBKXx8IVYoZSkpdGhyb3cgbmV3IEVycm9yKCJQYXJhbWV0ZXJzIGluIGZ1bmN0aW9uIGxjbSBtdXN0IGJlIGludGVnZXIgbnVtYmVycyIpO2lmKDA9PT1BfHwwPT09ZSlyZXR1cm4gMDtmb3IodmFyIHQsbj1BKmU7MCE9PWU7KWU9QSUodD1lKSxBPXQ7cmV0dXJuIE1hdGguYWJzKG4vQSl9ZnVuY3Rpb24gdmkoQSl7cmV0dXJuIFgoQSl9ZnVuY3Rpb24ga2koQSl7cmV0dXJuIEsoQSl9ZnVuY3Rpb24gamkoQSl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjIsdD1lPDA7aWYodCYmKGU9LWUpLDA9PT1lKXRocm93IG5ldyBFcnJvcigiUm9vdCBtdXN0IGJlIG5vbi16ZXJvIik7aWYoQTwwJiZNYXRoLmFicyhlKSUyIT0xKXRocm93IG5ldyBFcnJvcigiUm9vdCBtdXN0IGJlIG9kZCB3aGVuIGEgaXMgbmVnYXRpdmUuIik7aWYoMD09PUEpcmV0dXJuIHQ/MS8wOjA7aWYoIWlzRmluaXRlKEEpKXJldHVybiB0PzA6QTt2YXIgbj1NYXRoLnBvdyhNYXRoLmFicyhBKSwxL2UpO3JldHVybiBuPUE8MD8tbjpuLHQ/MS9uOm59ZnVuY3Rpb24gSmkoQSl7cmV0dXJuIFcoQSl9ZnVuY3Rpb24gemkoQSl7cmV0dXJuIEEqQX1mdW5jdGlvbiBMaShBLGUpe3ZhciB0LG4saSxyPTAsbz0xLHM9MSxhPTA7aWYoIVYoQSl8fCFWKGUpKXRocm93IG5ldyBFcnJvcigiUGFyYW1ldGVycyBpbiBmdW5jdGlvbiB4Z2NkIG11c3QgYmUgaW50ZWdlciBudW1iZXJzIik7Zm9yKDtlOylpPUEtKG49TWF0aC5mbG9vcihBL2UpKSplLHQ9cixyPW8tbipyLG89dCx0PXMscz1hLW4qcyxhPXQsQT1lLGU9aTtyZXR1cm4gQTwwP1stQSwtbywtYV06W0EsQT9vOjAsYV19ZnVuY3Rpb24gUGkoQSxlKXtyZXR1cm4gQSpBPDEmJmU9PT0xLzB8fEEqQT4xJiZlPT09LTEvMD8wOk1hdGgucG93KEEsZSl9ZnVuY3Rpb24gT2koQSl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7aWYoIVYoZSl8fGU8MHx8ZT4xNSl0aHJvdyBuZXcgRXJyb3IoIk51bWJlciBvZiBkZWNpbWFscyBpbiBmdW5jdGlvbiByb3VuZCBtdXN0IGJlIGFuIGludGVnZXIgZnJvbSAwIHRvIDE1IGluY2x1c2l2ZSIpO3JldHVybiBwYXJzZUZsb2F0KHRBKEEsZSkpfWZpLnNpZ25hdHVyZT1EaSxOaS5zaWduYXR1cmU9WWksVWkuc2lnbmF0dXJlPVlpLHlpLnNpZ25hdHVyZT1ZaSxUaS5zaWduYXR1cmU9RGkseGkuc2lnbmF0dXJlPURpLFJpLnNpZ25hdHVyZT1EaSxHaS5zaWduYXR1cmU9RGksU2kuc2lnbmF0dXJlPURpLGJpLnNpZ25hdHVyZT1EaSxIaS5zaWduYXR1cmU9WWksdmkuc2lnbmF0dXJlPURpLGtpLnNpZ25hdHVyZT1EaSxKaS5zaWduYXR1cmU9RGksemkuc2lnbmF0dXJlPURpLExpLnNpZ25hdHVyZT1ZaSxQaS5zaWduYXR1cmU9WWk7dmFyIFZpPSJ1bmFyeU1pbnVzIixXaT1wQShWaSxbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJuIGUoVmkse251bWJlcjpUaSwiQ29tcGxleCB8IEJpZ051bWJlciB8IEZyYWN0aW9uIjpmdW5jdGlvbihBKXtyZXR1cm4gQS5uZWcoKX0sVW5pdDplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24odCl7dmFyIG49dC5jbG9uZSgpO3JldHVybiBuLnZhbHVlPWUuZmluZChBLG4udmFsdWVUeXBlKCkpKHQudmFsdWUpLG59fSkpLCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEsITApfX0pKX0pfSkpLEtpPSJ1bmFyeVBsdXMiLFhpPXBBKEtpLFsidHlwZWQiLCJjb25maWciLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5CaWdOdW1iZXI7cmV0dXJuIGUoS2kse251bWJlcjp4aSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEF9LEZyYWN0aW9uOmZ1bmN0aW9uKEEpe3JldHVybiBBfSxVbml0OmZ1bmN0aW9uKEEpe3JldHVybiBBLmNsb25lKCl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEsITApfX0pKSwiYm9vbGVhbiB8IHN0cmluZyI6ZnVuY3Rpb24oQSl7cmV0dXJuIkJpZ051bWJlciI9PT10Lm51bWJlcj9uZXcgbigrQSk6K0F9fSl9KSksWmk9cEEoImFicyIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKCJhYnMiLHtudW1iZXI6ZmksIkNvbXBsZXggfCBCaWdOdW1iZXIgfCBGcmFjdGlvbiB8IFVuaXQiOmZ1bmN0aW9uKEEpe3JldHVybiBBLmFicygpfSwiQXJyYXkgfCBNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gR24oZSxBLCEwKX19KSl9KX0pKSxfaT1wQSgiYXBwbHkiLFsidHlwZWQiLCJpc0ludGVnZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuaXNJbnRlZ2VyO3JldHVybiBlKCJhcHBseSIseyJBcnJheSB8IE1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyLCBmdW5jdGlvbiI6ZnVuY3Rpb24oQSxlLG4pe2lmKCF0KGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkludGVnZXIgbnVtYmVyIGV4cGVjdGVkIGZvciBkaW1lbnNpb24iKTt2YXIgaT1BcnJheS5pc0FycmF5KEEpPyR0KEEpOkEuc2l6ZSgpO2lmKGU8MHx8ZT49aS5sZW5ndGgpdGhyb3cgbmV3IHF0KGUsaS5sZW5ndGgpO3JldHVybiBnKEEpP0EuY3JlYXRlKHFpKEEudmFsdWVPZigpLGUsbikpOnFpKEEsZSxuKX19KX0pKTtmdW5jdGlvbiBxaShBLGUsdCl7dmFyIG4saSxyO2lmKGU8PTApe2lmKEFycmF5LmlzQXJyYXkoQVswXSkpe2ZvcihyPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbj1BLmxlbmd0aCxpPUFbMF0ubGVuZ3RoLHI9W107Zm9yKHQ9MDt0PGk7dCsrKXt2YXIgbz1bXTtmb3IoZT0wO2U8bjtlKyspby5wdXNoKEFbZV1bdF0pO3IucHVzaChvKX1yZXR1cm4gcn0oQSksaT1bXSxuPTA7bjxyLmxlbmd0aDtuKyspaVtuXT1xaShyW25dLGUtMSx0KTtyZXR1cm4gaX1yZXR1cm4gdChBKX1mb3IoaT1bXSxuPTA7bjxBLmxlbmd0aDtuKyspaVtuXT1xaShBW25dLGUtMSx0KTtyZXR1cm4gaX12YXIgJGk9ImFkZFNjYWxhciIsQXI9cEEoJGksWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKCRpLHsibnVtYmVyLCBudW1iZXIiOk5pLCJDb21wbGV4LCBDb21wbGV4IjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmFkZChlKX0sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLnBsdXMoZSl9LCJGcmFjdGlvbiwgRnJhY3Rpb24iOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuYWRkKGUpfSwiVW5pdCwgVW5pdCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKHQsbil7aWYobnVsbD09PXQudmFsdWV8fHZvaWQgMD09PXQudmFsdWUpdGhyb3cgbmV3IEVycm9yKCJQYXJhbWV0ZXIgeCBjb250YWlucyBhIHVuaXQgd2l0aCB1bmRlZmluZWQgdmFsdWUiKTtpZihudWxsPT09bi52YWx1ZXx8dm9pZCAwPT09bi52YWx1ZSl0aHJvdyBuZXcgRXJyb3IoIlBhcmFtZXRlciB5IGNvbnRhaW5zIGEgdW5pdCB3aXRoIHVuZGVmaW5lZCB2YWx1ZSIpO2lmKCF0LmVxdWFsQmFzZShuKSl0aHJvdyBuZXcgRXJyb3IoIlVuaXRzIGRvIG5vdCBtYXRjaCIpO3ZhciBpPXQuY2xvbmUoKTtyZXR1cm4gaS52YWx1ZT1lLmZpbmQoQSxbaS52YWx1ZVR5cGUoKSxuLnZhbHVlVHlwZSgpXSkoaS52YWx1ZSxuLnZhbHVlKSxpLmZpeFByZWZpeD0hMSxpfX0pKX0pfSkpLGVyPSJzdWJ0cmFjdFNjYWxhciIsdHI9cEEoZXIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKGVyLHsibnVtYmVyLCBudW1iZXIiOlVpLCJDb21wbGV4LCBDb21wbGV4IjpmdW5jdGlvbihBLGUpe3JldHVybiBBLnN1YihlKX0sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLm1pbnVzKGUpfSwiRnJhY3Rpb24sIEZyYWN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLnN1YihlKX0sIlVuaXQsIFVuaXQiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbih0LG4pe2lmKG51bGw9PT10LnZhbHVlfHx2b2lkIDA9PT10LnZhbHVlKXRocm93IG5ldyBFcnJvcigiUGFyYW1ldGVyIHggY29udGFpbnMgYSB1bml0IHdpdGggdW5kZWZpbmVkIHZhbHVlIik7aWYobnVsbD09PW4udmFsdWV8fHZvaWQgMD09PW4udmFsdWUpdGhyb3cgbmV3IEVycm9yKCJQYXJhbWV0ZXIgeSBjb250YWlucyBhIHVuaXQgd2l0aCB1bmRlZmluZWQgdmFsdWUiKTtpZighdC5lcXVhbEJhc2UobikpdGhyb3cgbmV3IEVycm9yKCJVbml0cyBkbyBub3QgbWF0Y2giKTt2YXIgaT10LmNsb25lKCk7cmV0dXJuIGkudmFsdWU9ZS5maW5kKEEsW2kudmFsdWVUeXBlKCksbi52YWx1ZVR5cGUoKV0pKGkudmFsdWUsbi52YWx1ZSksaS5maXhQcmVmaXg9ITEsaX19KSl9KX0pKSxucj1wQSgiY2JydCIsWyJjb25maWciLCJ0eXBlZCIsImlzTmVnYXRpdmUiLCJ1bmFyeU1pbnVzIiwibWF0cml4IiwiQ29tcGxleCIsIkJpZ051bWJlciIsIkZyYWN0aW9uIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLHQ9QS50eXBlZCxuPUEuaXNOZWdhdGl2ZSxpPUEudW5hcnlNaW51cyxhPUEubWF0cml4LEI9QS5Db21wbGV4LGM9QS5CaWdOdW1iZXIsZz1BLkZyYWN0aW9uO3JldHVybiB0KCJjYnJ0Iix7bnVtYmVyOlJpLENvbXBsZXg6RSwiQ29tcGxleCwgYm9vbGVhbiI6RSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY2JydCgpfSxVbml0OmZ1bmN0aW9uKEEpe2lmKEEudmFsdWUmJm8oQS52YWx1ZSkpe3ZhciBlPUEuY2xvbmUoKTtyZXR1cm4gZS52YWx1ZT0xLChlPWUucG93KDEvMykpLnZhbHVlPUUoQS52YWx1ZSksZX12YXIgdCxhPW4oQS52YWx1ZSk7YSYmKEEudmFsdWU9aShBLnZhbHVlKSksdD1yKEEudmFsdWUpP25ldyBjKDEpLmRpdigzKTpzKEEudmFsdWUpP25ldyBnKDEsMyk6MS8zO3ZhciBCPUEucG93KHQpO3JldHVybiBhJiYoQi52YWx1ZT1pKEIudmFsdWUpKSxCfX0pO2Z1bmN0aW9uIEUoQSx0KXt2YXIgbj1BLmFyZygpLzMsaT1BLmFicygpLHI9bmV3IEIoUmkoaSksMCkubXVsKG5ldyBCKDAsbikuZXhwKCkpO2lmKHQpe3ZhciBvPVtyLG5ldyBCKFJpKGkpLDApLm11bChuZXcgQigwLG4rMipNYXRoLlBJLzMpLmV4cCgpKSxuZXcgQihSaShpKSwwKS5tdWwobmV3IEIoMCxuLTIqTWF0aC5QSS8zKS5leHAoKSldO3JldHVybiJBcnJheSI9PT1lLm1hdHJpeD9vOmEobyl9cmV0dXJuIHJ9fSkpO2Z1bmN0aW9uIGlyKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKEEpe2lmKEFycmF5LmlzQXJyYXkoQSkpcmV0dXJuIEF9KEEpfHxmdW5jdGlvbihBLGUpe3ZhciB0PW51bGw9PUE/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmQVtTeW1ib2wuaXRlcmF0b3JdfHxBWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9dCl7dmFyIG4saSxyLG8scz1bXSxhPSEwLEI9ITE7dHJ5e2lmKHI9KHQ9dC5jYWxsKEEpKS5uZXh0LDA9PT1lKXtpZihPYmplY3QodCkhPT10KXJldHVybjthPSExfWVsc2UgZm9yKDshKGE9KG49ci5jYWxsKHQpKS5kb25lKSYmKHMucHVzaChuLnZhbHVlKSxzLmxlbmd0aCE9PWUpO2E9ITApO31jYXRjaChBKXtCPSEwLGk9QX1maW5hbGx5e3RyeXtpZighYSYmbnVsbCE9dC5yZXR1cm4mJihvPXQucmV0dXJuKCksT2JqZWN0KG8pIT09bykpcmV0dXJufWZpbmFsbHl7aWYoQil0aHJvdyBpfX1yZXR1cm4gc319KEEsZSl8fEp0KEEsZSl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX12YXIgcnI9cEEoIm1hdEFsZ28xMXhTMHMiLFsidHlwZWQiLCJlcXVhbFNjYWxhciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5lcXVhbFNjYWxhcjtyZXR1cm4gZnVuY3Rpb24oQSxuLGkscil7dmFyIG89QS5fdmFsdWVzLHM9QS5faW5kZXgsYT1BLl9wdHIsQj1BLl9zaXplLGM9QS5fZGF0YXR5cGU7aWYoIW8pdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgcGVyZm9ybSBvcGVyYXRpb24gb24gUGF0dGVybiBTcGFyc2UgTWF0cml4IGFuZCBTY2FsYXIgdmFsdWUiKTt2YXIgZyxFPUJbMF0sUT1CWzFdLHU9dCxsPTAsaD1pOyJzdHJpbmciPT10eXBlb2YgYyYmKGc9Yyx1PWUuZmluZCh0LFtnLGddKSxsPWUuY29udmVydCgwLGcpLG49ZS5jb252ZXJ0KG4sZyksaD1lLmZpbmQoaSxbZyxnXSkpO2Zvcih2YXIgdz1bXSxDPVtdLEk9W10sTT0wO008UTtNKyspe0lbTV09Qy5sZW5ndGg7Zm9yKHZhciBkPWFbTV0scD1hW00rMV0sbT1kO208cDttKyspe3ZhciBGPXNbbV0sRD1yP2gobixvW21dKTpoKG9bbV0sbik7dShELGwpfHwoQy5wdXNoKEYpLHcucHVzaChEKSl9fXJldHVybiBJW1FdPUMubGVuZ3RoLEEuY3JlYXRlU3BhcnNlTWF0cml4KHt2YWx1ZXM6dyxpbmRleDpDLHB0cjpJLHNpemU6W0UsUV0sZGF0YXR5cGU6Z30pfX0pKSxvcj1wQSgibWF0QWxnbzEyeFNmcyIsWyJ0eXBlZCIsIkRlbnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkRlbnNlTWF0cml4O3JldHVybiBmdW5jdGlvbihBLG4saSxyKXt2YXIgbz1BLl92YWx1ZXMscz1BLl9pbmRleCxhPUEuX3B0cixCPUEuX3NpemUsYz1BLl9kYXRhdHlwZTtpZighbyl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBwZXJmb3JtIG9wZXJhdGlvbiBvbiBQYXR0ZXJuIFNwYXJzZSBNYXRyaXggYW5kIFNjYWxhciB2YWx1ZSIpO3ZhciBnLEU9QlswXSxRPUJbMV0sdT1pOyJzdHJpbmciPT10eXBlb2YgYyYmKGc9YyxuPWUuY29udmVydChuLGcpLHU9ZS5maW5kKGksW2csZ10pKTtmb3IodmFyIGw9W10saD1bXSx3PVtdLEM9MDtDPFE7QysrKXtmb3IodmFyIEk9QysxLE09YVtDXSxkPWFbQysxXSxwPU07cDxkO3ArKyl7dmFyIG09c1twXTtoW21dPW9bcF0sd1ttXT1JfWZvcih2YXIgRj0wO0Y8RTtGKyspMD09PUMmJihsW0ZdPVtdKSx3W0ZdPT09ST9sW0ZdW0NdPXI/dShuLGhbRl0pOnUoaFtGXSxuKTpsW0ZdW0NdPXI/dShuLDApOnUoMCxuKX1yZXR1cm4gbmV3IHQoe2RhdGE6bCxzaXplOltFLFFdLGRhdGF0eXBlOmd9KX19KSksc3I9cEEoIm1hdEFsZ28xNHhEcyIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBmdW5jdGlvbihBLHQsbixpKXt2YXIgcixvPUEuX2RhdGEscz1BLl9zaXplLGE9QS5fZGF0YXR5cGUsQj1uOyJzdHJpbmciPT10eXBlb2YgYSYmKHI9YSx0PWUuY29udmVydCh0LHIpLEI9ZS5maW5kKG4sW3Iscl0pKTt2YXIgYz1zLmxlbmd0aD4wP2Z1bmN0aW9uIEEoZSx0LG4saSxyLG8scyl7dmFyIGE9W107aWYodD09PW4ubGVuZ3RoLTEpZm9yKHZhciBCPTA7QjxpO0IrKylhW0JdPXM/ZShvLHJbQl0pOmUocltCXSxvKTtlbHNlIGZvcih2YXIgYz0wO2M8aTtjKyspYVtjXT1BKGUsdCsxLG4sblt0KzFdLHJbY10sbyxzKTtyZXR1cm4gYX0oQiwwLHMsc1swXSxvLHQsaSk6W107cmV0dXJuIEEuY3JlYXRlRGVuc2VNYXRyaXgoe2RhdGE6YyxzaXplOnVBKHMpLGRhdGF0eXBlOnJ9KX19KSksYXI9ImNlaWwiLEJyPXBBKGFyLFsidHlwZWQiLCJjb25maWciLCJyb3VuZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLnJvdW5kO3JldHVybiBlKGFyLHtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIHNBKEEsbihBKSx0LmVwc2lsb24pP24oQSk6TWF0aC5jZWlsKEEpfSwibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7aWYoc0EoQSxuKEEsZSksdC5lcHNpbG9uKSlyZXR1cm4gbihBLGUpO3ZhciBpPWlyKCIiLmNvbmNhdChBLCJlIikuc3BsaXQoImUiKSwyKSxyPWlbMF0sbz1pWzFdLHM9TWF0aC5jZWlsKE51bWJlcigiIi5jb25jYXQociwiZSIpLmNvbmNhdChOdW1iZXIobykrZSkpKSxhPWlyKCIiLmNvbmNhdChzLCJlIikuc3BsaXQoImUiKSwyKTtyZXR1cm4gcj1hWzBdLG89YVsxXSxOdW1iZXIoIiIuY29uY2F0KHIsImUiKS5jb25jYXQoTnVtYmVyKG8pLWUpKX19KX0pKSxjcj1wQShhcixbInR5cGVkIiwiY29uZmlnIiwicm91bmQiLCJtYXRyaXgiLCJlcXVhbFNjYWxhciIsInplcm9zIiwiRGVuc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5yb3VuZCxpPUEubWF0cml4LHI9QS5lcXVhbFNjYWxhcixvPUEuemVyb3Mscz1BLkRlbnNlTWF0cml4LGE9cnIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6cn0pLEI9b3Ioe3R5cGVkOmUsRGVuc2VNYXRyaXg6c30pLGM9c3Ioe3R5cGVkOmV9KSxnPUJyKHt0eXBlZDplLGNvbmZpZzp0LHJvdW5kOm59KTtyZXR1cm4gZSgiY2VpbCIse251bWJlcjpnLnNpZ25hdHVyZXMubnVtYmVyLCJudW1iZXIsbnVtYmVyIjpnLnNpZ25hdHVyZXNbIm51bWJlcixudW1iZXIiXSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmNlaWwoKX0sIkNvbXBsZXgsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5jZWlsKGUpfSwiQ29tcGxleCwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmNlaWwoZS50b051bWJlcigpKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiB0aShBLG4oQSksdC5lcHNpbG9uKT9uKEEpOkEuY2VpbCgpfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHRpKEEsbihBLGUpLHQuZXBzaWxvbik/bihBLGUpOkEudG9EZWNpbWFsUGxhY2VzKGUudG9OdW1iZXIoKSx5dC5ST1VORF9DRUlMKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY2VpbCgpfSwiRnJhY3Rpb24sIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5jZWlsKGUpfSwiRnJhY3Rpb24sIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5jZWlsKGUudG9OdW1iZXIoKSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEsITApfX0pKSwiQXJyYXksIG51bWJlciB8IEJpZ051bWJlciI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIEduKGUsKGZ1bmN0aW9uKGUpe3JldHVybiBBKGUsdCl9KSwhMCl9fSkpLCJTcGFyc2VNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGEoZSx0LEEsITEpfX0pKSwiRGVuc2VNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGMoZSx0LEEsITEpfX0pKSwibnVtYmVyIHwgQ29tcGxleCB8IEZyYWN0aW9uIHwgQmlnTnVtYmVyLCBBcnJheSI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGMoaSh0KSxlLEEsITApLnZhbHVlT2YoKX19KSksIm51bWJlciB8IENvbXBsZXggfCBGcmFjdGlvbiB8IEJpZ051bWJlciwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gcihlLDApP28odC5zaXplKCksdC5zdG9yYWdlKCkpOiJkZW5zZSI9PT10LnN0b3JhZ2UoKT9jKHQsZSxBLCEwKTpCKHQsZSxBLCEwKX19KSl9KX0pKSxncj1wQSgiY3ViZSIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgiY3ViZSIse251bWJlcjpHaSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLm11bChBKS5tdWwoQSl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS50aW1lcyhBKS50aW1lcyhBKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIEEucG93KDMpfSxVbml0OmZ1bmN0aW9uKEEpe3JldHVybiBBLnBvdygzKX19KX0pKSxFcj1wQSgiZXhwIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKCJleHAiLHtudW1iZXI6U2ksQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5leHAoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmV4cCgpfX0pfSkpLFFyPXBBKCJleHBtMSIsWyJ0eXBlZCIsIkNvbXBsZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuQ29tcGxleDtyZXR1cm4gZSgiZXhwbTEiLHtudW1iZXI6YmksQ29tcGxleDpmdW5jdGlvbihBKXt2YXIgZT1NYXRoLmV4cChBLnJlKTtyZXR1cm4gbmV3IHQoZSpNYXRoLmNvcyhBLmltKS0xLGUqTWF0aC5zaW4oQS5pbSkpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuZXhwKCkubWludXMoMSl9fSl9KSksdXI9cEEoImZpeCIsWyJ0eXBlZCIsImNlaWwiLCJmbG9vciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jZWlsLG49QS5mbG9vcjtyZXR1cm4gZSgiZml4Iix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPjA/bihBKTp0KEEpfSwibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEE+MD9uKEEsZSk6dChBLGUpfX0pfSkpLGxyPXBBKCJmaXgiLFsidHlwZWQiLCJDb21wbGV4IiwibWF0cml4IiwiY2VpbCIsImZsb29yIiwiZXF1YWxTY2FsYXIiLCJ6ZXJvcyIsIkRlbnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkNvbXBsZXgsbj1BLm1hdHJpeCxpPUEuY2VpbCxyPUEuZmxvb3Isbz1BLmVxdWFsU2NhbGFyLHM9QS56ZXJvcyxhPUEuRGVuc2VNYXRyaXgsQj1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDphfSksYz1zcih7dHlwZWQ6ZX0pLGc9dXIoe3R5cGVkOmUsY2VpbDppLGZsb29yOnJ9KTtyZXR1cm4gZSgiZml4Iix7bnVtYmVyOmcuc2lnbmF0dXJlcy5udW1iZXIsIm51bWJlciwgbnVtYmVyIHwgQmlnTnVtYmVyIjpnLnNpZ25hdHVyZXNbIm51bWJlcixudW1iZXIiXSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdChBLnJlPjA/TWF0aC5mbG9vcihBLnJlKTpNYXRoLmNlaWwoQS5yZSksQS5pbT4wP01hdGguZmxvb3IoQS5pbSk6TWF0aC5jZWlsKEEuaW0pKX0sIkNvbXBsZXgsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHQoQS5yZT4wP3IoQS5yZSxlKTppKEEucmUsZSksQS5pbT4wP3IoQS5pbSxlKTppKEEuaW0sZSkpfSwiQ29tcGxleCwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3ZhciBuPWUudG9OdW1iZXIoKTtyZXR1cm4gbmV3IHQoQS5yZT4wP3IoQS5yZSxuKTppKEEucmUsbiksQS5pbT4wP3IoQS5pbSxuKTppKEEuaW0sbikpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuaXNOZWdhdGl2ZSgpP2koQSk6cihBKX0sIkJpZ051bWJlciwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmlzTmVnYXRpdmUoKT9pKEEsZSk6cihBLGUpfSxGcmFjdGlvbjpmdW5jdGlvbihBKXtyZXR1cm4gQS5zPDA/QS5jZWlsKCk6QS5mbG9vcigpfSwiRnJhY3Rpb24sIG51bWJlciB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5zPDA/aShBLGUpOnIoQSxlKX0sIkFycmF5IHwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEduKGUsQSwhMCl9fSkpLCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gR24oZSwoZnVuY3Rpb24oZSl7cmV0dXJuIEEoZSx0KX0pLCEwKX19KSksIm51bWJlciB8IENvbXBsZXggfCBGcmFjdGlvbiB8IEJpZ051bWJlciwgQXJyYXkiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBjKG4odCksZSxBLCEwKS52YWx1ZU9mKCl9fSkpLCJudW1iZXIgfCBDb21wbGV4IHwgRnJhY3Rpb24gfCBCaWdOdW1iZXIsIE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG8oZSwwKT9zKHQuc2l6ZSgpLHQuc3RvcmFnZSgpKToiZGVuc2UiPT09dC5zdG9yYWdlKCk/Yyh0LGUsQSwhMCk6Qih0LGUsQSwhMCl9fSkpfSl9KSksaHI9ImZsb29yIix3cj1wQShocixbInR5cGVkIiwiY29uZmlnIiwicm91bmQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5yb3VuZDtyZXR1cm4gZShocix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBzQShBLG4oQSksdC5lcHNpbG9uKT9uKEEpOk1hdGguZmxvb3IoQSl9LCJudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtpZihzQShBLG4oQSxlKSx0LmVwc2lsb24pKXJldHVybiBuKEEsZSk7dmFyIGk9aXIoIiIuY29uY2F0KEEsImUiKS5zcGxpdCgiZSIpLDIpLHI9aVswXSxvPWlbMV0scz1NYXRoLmZsb29yKE51bWJlcigiIi5jb25jYXQociwiZSIpLmNvbmNhdChOdW1iZXIobykrZSkpKSxhPWlyKCIiLmNvbmNhdChzLCJlIikuc3BsaXQoImUiKSwyKTtyZXR1cm4gcj1hWzBdLG89YVsxXSxOdW1iZXIoIiIuY29uY2F0KHIsImUiKS5jb25jYXQoTnVtYmVyKG8pLWUpKX19KX0pKSxDcj1wQShocixbInR5cGVkIiwiY29uZmlnIiwicm91bmQiLCJtYXRyaXgiLCJlcXVhbFNjYWxhciIsInplcm9zIiwiRGVuc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5yb3VuZCxpPUEubWF0cml4LHI9QS5lcXVhbFNjYWxhcixvPUEuemVyb3Mscz1BLkRlbnNlTWF0cml4LGE9cnIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6cn0pLEI9b3Ioe3R5cGVkOmUsRGVuc2VNYXRyaXg6c30pLGM9c3Ioe3R5cGVkOmV9KSxnPXdyKHt0eXBlZDplLGNvbmZpZzp0LHJvdW5kOm59KTtyZXR1cm4gZSgiZmxvb3IiLHtudW1iZXI6Zy5zaWduYXR1cmVzLm51bWJlciwibnVtYmVyLG51bWJlciI6Zy5zaWduYXR1cmVzWyJudW1iZXIsbnVtYmVyIl0sQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5mbG9vcigpfSwiQ29tcGxleCwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmZsb29yKGUpfSwiQ29tcGxleCwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmZsb29yKGUudG9OdW1iZXIoKSl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gdGkoQSxuKEEpLHQuZXBzaWxvbik/bihBKTpBLmZsb29yKCl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGkoQSxuKEEsZSksdC5lcHNpbG9uKT9uKEEsZSk6QS50b0RlY2ltYWxQbGFjZXMoZS50b051bWJlcigpLHl0LlJPVU5EX0ZMT09SKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIEEuZmxvb3IoKX0sIkZyYWN0aW9uLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuZmxvb3IoZSl9LCJGcmFjdGlvbiwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmZsb29yKGUudG9OdW1iZXIoKSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEsITApfX0pKSwiQXJyYXksIG51bWJlciB8IEJpZ051bWJlciI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIEduKGUsKGZ1bmN0aW9uKGUpe3JldHVybiBBKGUsdCl9KSwhMCl9fSkpLCJTcGFyc2VNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGEoZSx0LEEsITEpfX0pKSwiRGVuc2VNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGMoZSx0LEEsITEpfX0pKSwibnVtYmVyIHwgQ29tcGxleCB8IEZyYWN0aW9uIHwgQmlnTnVtYmVyLCBBcnJheSI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGMoaSh0KSxlLEEsITApLnZhbHVlT2YoKX19KSksIm51bWJlciB8IENvbXBsZXggfCBGcmFjdGlvbiB8IEJpZ051bWJlciwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gcihlLDApP28odC5zaXplKCksdC5zdG9yYWdlKCkpOiJkZW5zZSI9PT10LnN0b3JhZ2UoKT9jKHQsZSxBLCEwKTpCKHQsZSxBLCEwKX19KSl9KX0pKTtmdW5jdGlvbiBJcihBLGUsdCl7cmV0dXJuKGU9WUEoZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9dmFyIE1yPXBBKCJtYXRBbGdvMDJ4RFMwIixbInR5cGVkIiwiZXF1YWxTY2FsYXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuZXF1YWxTY2FsYXI7cmV0dXJuIGZ1bmN0aW9uKEEsbixpLHIpe3ZhciBvPUEuX2RhdGEscz1BLl9zaXplLGE9QS5fZGF0YXR5cGUsQj1uLl92YWx1ZXMsYz1uLl9pbmRleCxnPW4uX3B0cixFPW4uX3NpemUsUT1uLl9kYXRhdHlwZTtpZihzLmxlbmd0aCE9PUUubGVuZ3RoKXRocm93IG5ldyBfdChzLmxlbmd0aCxFLmxlbmd0aCk7aWYoc1swXSE9PUVbMF18fHNbMV0hPT1FWzFdKXRocm93IG5ldyBSYW5nZUVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2guIE1hdHJpeCBBICgiK3MrIikgbXVzdCBtYXRjaCBNYXRyaXggQiAoIitFKyIpIik7aWYoIUIpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgcGVyZm9ybSBvcGVyYXRpb24gb24gRGVuc2UgTWF0cml4IGFuZCBQYXR0ZXJuIFNwYXJzZSBNYXRyaXgiKTt2YXIgdSxsPXNbMF0saD1zWzFdLHc9dCxDPTAsST1pOyJzdHJpbmciPT10eXBlb2YgYSYmYT09PVEmJih1PWEsdz1lLmZpbmQodCxbdSx1XSksQz1lLmNvbnZlcnQoMCx1KSxJPWUuZmluZChpLFt1LHVdKSk7Zm9yKHZhciBNPVtdLGQ9W10scD1bXSxtPTA7bTxoO20rKyl7cFttXT1kLmxlbmd0aDtmb3IodmFyIEY9Z1ttXSxEPWdbbSsxXSxZPUY7WTxEO1krKyl7dmFyIGY9Y1tZXSxOPXI/SShCW1ldLG9bZl1bbV0pOkkob1tmXVttXSxCW1ldKTt3KE4sQyl8fChkLnB1c2goZiksTS5wdXNoKE4pKX19cmV0dXJuIHBbaF09ZC5sZW5ndGgsbi5jcmVhdGVTcGFyc2VNYXRyaXgoe3ZhbHVlczpNLGluZGV4OmQscHRyOnAsc2l6ZTpbbCxoXSxkYXRhdHlwZTp1fSl9fSkpLGRyPXBBKCJtYXRBbGdvMDN4RFNmIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJuIGZ1bmN0aW9uKEEsdCxuLGkpe3ZhciByPUEuX2RhdGEsbz1BLl9zaXplLHM9QS5fZGF0YXR5cGUsYT10Ll92YWx1ZXMsQj10Ll9pbmRleCxjPXQuX3B0cixnPXQuX3NpemUsRT10Ll9kYXRhdHlwZTtpZihvLmxlbmd0aCE9PWcubGVuZ3RoKXRocm93IG5ldyBfdChvLmxlbmd0aCxnLmxlbmd0aCk7aWYob1swXSE9PWdbMF18fG9bMV0hPT1nWzFdKXRocm93IG5ldyBSYW5nZUVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2guIE1hdHJpeCBBICgiK28rIikgbXVzdCBtYXRjaCBNYXRyaXggQiAoIitnKyIpIik7aWYoIWEpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgcGVyZm9ybSBvcGVyYXRpb24gb24gRGVuc2UgTWF0cml4IGFuZCBQYXR0ZXJuIFNwYXJzZSBNYXRyaXgiKTt2YXIgUSx1PW9bMF0sbD1vWzFdLGg9MCx3PW47InN0cmluZyI9PXR5cGVvZiBzJiZzPT09RSYmKFE9cyxoPWUuY29udmVydCgwLFEpLHc9ZS5maW5kKG4sW1EsUV0pKTtmb3IodmFyIEM9W10sST0wO0k8dTtJKyspQ1tJXT1bXTtmb3IodmFyIE09W10sZD1bXSxwPTA7cDxsO3ArKyl7Zm9yKHZhciBtPXArMSxGPWNbcF0sRD1jW3ArMV0sWT1GO1k8RDtZKyspe3ZhciBmPUJbWV07TVtmXT1pP3coYVtZXSxyW2ZdW3BdKTp3KHJbZl1bcF0sYVtZXSksZFtmXT1tfWZvcih2YXIgTj0wO048dTtOKyspZFtOXT09PW0/Q1tOXVtwXT1NW05dOkNbTl1bcF09aT93KGgscltOXVtwXSk6dyhyW05dW3BdLGgpfXJldHVybiBBLmNyZWF0ZURlbnNlTWF0cml4KHtkYXRhOkMsc2l6ZTpbdSxsXSxkYXRhdHlwZTpRfSl9fSkpLHByPXBBKCJtYXRBbGdvMDV4U2ZTZiIsWyJ0eXBlZCIsImVxdWFsU2NhbGFyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmVxdWFsU2NhbGFyO3JldHVybiBmdW5jdGlvbihBLG4saSl7dmFyIHI9QS5fdmFsdWVzLG89QS5faW5kZXgscz1BLl9wdHIsYT1BLl9zaXplLEI9QS5fZGF0YXR5cGUsYz1uLl92YWx1ZXMsZz1uLl9pbmRleCxFPW4uX3B0cixRPW4uX3NpemUsdT1uLl9kYXRhdHlwZTtpZihhLmxlbmd0aCE9PVEubGVuZ3RoKXRocm93IG5ldyBfdChhLmxlbmd0aCxRLmxlbmd0aCk7aWYoYVswXSE9PVFbMF18fGFbMV0hPT1RWzFdKXRocm93IG5ldyBSYW5nZUVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2guIE1hdHJpeCBBICgiK2ErIikgbXVzdCBtYXRjaCBNYXRyaXggQiAoIitRKyIpIik7dmFyIGwsaD1hWzBdLHc9YVsxXSxDPXQsST0wLE09aTsic3RyaW5nIj09dHlwZW9mIEImJkI9PT11JiYobD1CLEM9ZS5maW5kKHQsW2wsbF0pLEk9ZS5jb252ZXJ0KDAsbCksTT1lLmZpbmQoaSxbbCxsXSkpO3ZhciBkLHAsbSxGLEQ9ciYmYz9bXTp2b2lkIDAsWT1bXSxmPVtdLE49RD9bXTp2b2lkIDAsVT1EP1tdOnZvaWQgMCx5PVtdLFQ9W107Zm9yKHA9MDtwPHc7cCsrKXtmW3BdPVkubGVuZ3RoO3ZhciB4PXArMTtmb3IobT1zW3BdLEY9c1twKzFdO208RjttKyspZD1vW21dLFkucHVzaChkKSx5W2RdPXgsTiYmKE5bZF09clttXSk7Zm9yKG09RVtwXSxGPUVbcCsxXTttPEY7bSsrKXlbZD1nW21dXSE9PXgmJlkucHVzaChkKSxUW2RdPXgsVSYmKFVbZF09Y1ttXSk7aWYoRClmb3IobT1mW3BdO208WS5sZW5ndGg7KXt2YXIgUj15W2Q9WVttXV0sRz1UW2RdO2lmKFI9PT14fHxHPT09eCl7dmFyIFM9TShSPT09eD9OW2RdOkksRz09PXg/VVtkXTpJKTtDKFMsSSk/WS5zcGxpY2UobSwxKTooRC5wdXNoKFMpLG0rKyl9fX1yZXR1cm4gZlt3XT1ZLmxlbmd0aCxBLmNyZWF0ZVNwYXJzZU1hdHJpeCh7dmFsdWVzOkQsaW5kZXg6WSxwdHI6ZixzaXplOltoLHddLGRhdGF0eXBlOmx9KX19KSksbXI9cEEoIm1hdEFsZ28xM3hERCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBmdW5jdGlvbihBLHQsbil7dmFyIGkscj1BLl9kYXRhLG89QS5fc2l6ZSxzPUEuX2RhdGF0eXBlLGE9dC5fZGF0YSxCPXQuX3NpemUsYz10Ll9kYXRhdHlwZSxnPVtdO2lmKG8ubGVuZ3RoIT09Qi5sZW5ndGgpdGhyb3cgbmV3IF90KG8ubGVuZ3RoLEIubGVuZ3RoKTtmb3IodmFyIEU9MDtFPG8ubGVuZ3RoO0UrKyl7aWYob1tFXSE9PUJbRV0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaC4gTWF0cml4IEEgKCIrbysiKSBtdXN0IG1hdGNoIE1hdHJpeCBCICgiK0IrIikiKTtnW0VdPW9bRV19dmFyIFE9bjsic3RyaW5nIj09dHlwZW9mIHMmJnM9PT1jJiYoaT1zLFE9ZS5maW5kKG4sW2ksaV0pKTt2YXIgdT1nLmxlbmd0aD4wP2Z1bmN0aW9uIEEoZSx0LG4saSxyLG8pe3ZhciBzPVtdO2lmKHQ9PT1uLmxlbmd0aC0xKWZvcih2YXIgYT0wO2E8aTthKyspc1thXT1lKHJbYV0sb1thXSk7ZWxzZSBmb3IodmFyIEI9MDtCPGk7QisrKXNbQl09QShlLHQrMSxuLG5bdCsxXSxyW0JdLG9bQl0pO3JldHVybiBzfShRLDAsZyxnWzBdLHIsYSk6W107cmV0dXJuIEEuY3JlYXRlRGVuc2VNYXRyaXgoe2RhdGE6dSxzaXplOmcsZGF0YXR5cGU6aX0pfX0pKSxGcj1wQSgiYnJvYWRjYXN0IixbImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmNvbmNhdDtyZXR1cm4gZnVuY3Rpb24oQSxlKXt2YXIgaT1NYXRoLm1heChBLl9zaXplLmxlbmd0aCxlLl9zaXplLmxlbmd0aCk7aWYoQS5fc2l6ZS5sZW5ndGg9PT1lLl9zaXplLmxlbmd0aCYmQS5fc2l6ZS5ldmVyeSgoZnVuY3Rpb24oQSx0KXtyZXR1cm4gQT09PWUuX3NpemVbdF19KSkpcmV0dXJuW0EsZV07Zm9yKHZhciByPXQoQS5fc2l6ZSxpLDApLG89dChlLl9zaXplLGksMCkscz1bXSxhPTA7YTxpO2ErKylzW2FdPU1hdGgubWF4KHJbYV0sb1thXSk7bW4ocixzKSxtbihvLHMpO3ZhciBCPUEuY2xvbmUoKSxjPWUuY2xvbmUoKTtCLl9zaXplLmxlbmd0aDxpP0IucmVzaGFwZSh0KEIuX3NpemUsaSwxKSk6Yy5fc2l6ZS5sZW5ndGg8aSYmYy5yZXNoYXBlKHQoYy5fc2l6ZSxpLDEpKTtmb3IodmFyIGc9MDtnPGk7ZysrKUIuX3NpemVbZ108c1tnXSYmKEI9bihCLHNbZ10sZykpLGMuX3NpemVbZ108c1tnXSYmKGM9bihjLHNbZ10sZykpO3JldHVybltCLGNdfTtmdW5jdGlvbiB0KEEsZSx0KXtyZXR1cm5bXS5jb25jYXQoenQoQXJyYXkoZS1BLmxlbmd0aCkuZmlsbCh0KSksenQoQSkpfWZ1bmN0aW9uIG4oQSx0LG4pe3JldHVybiBlLmFwcGx5KHZvaWQgMCx6dChBcnJheSh0KS5maWxsKEEpKS5jb25jYXQoW25dKSl9fSkpLERyPXBBKCJtYXRyaXhBbGdvcml0aG1TdWl0ZSIsWyJ0eXBlZCIsIm1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmNvbmNhdCxpPW1yKHt0eXBlZDplfSkscj1zcih7dHlwZWQ6ZX0pLG89RnIoe2NvbmNhdDpufSk7cmV0dXJuIGZ1bmN0aW9uKEEpe3ZhciBuLHM9QS5lbG9wLGE9QS5TRHx8QS5EUztzPyhuPXsiRGVuc2VNYXRyaXgsIERlbnNlTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBpLmFwcGx5KHZvaWQgMCx6dChvKEEsZSkpLmNvbmNhdChbc10pKX0sIkFycmF5LCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gaS5hcHBseSh2b2lkIDAsenQobyh0KEEpLHQoZSkpKS5jb25jYXQoW3NdKSkudmFsdWVPZigpfSwiQXJyYXksIERlbnNlTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBpLmFwcGx5KHZvaWQgMCx6dChvKHQoQSksZSkpLmNvbmNhdChbc10pKX0sIkRlbnNlTWF0cml4LCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gaS5hcHBseSh2b2lkIDAsenQobyhBLHQoZSkpKS5jb25jYXQoW3NdKSl9fSxBLlNTJiYoblsiU3BhcnNlTWF0cml4LCBTcGFyc2VNYXRyaXgiXT1mdW5jdGlvbihlLHQpe3JldHVybiBBLlNTLmFwcGx5KEEsenQobyhlLHQpKS5jb25jYXQoW3MsITFdKSl9KSxBLkRTJiYoblsiRGVuc2VNYXRyaXgsIFNwYXJzZU1hdHJpeCJdPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIEEuRFMuYXBwbHkoQSx6dChvKGUsdCkpLmNvbmNhdChbcywhMV0pKX0sblsiQXJyYXksIFNwYXJzZU1hdHJpeCJdPWZ1bmN0aW9uKGUsbil7cmV0dXJuIEEuRFMuYXBwbHkoQSx6dChvKHQoZSksbikpLmNvbmNhdChbcywhMV0pKX0pLGEmJihuWyJTcGFyc2VNYXRyaXgsIERlbnNlTWF0cml4Il09ZnVuY3Rpb24oQSxlKXtyZXR1cm4gYS5hcHBseSh2b2lkIDAsenQobyhlLEEpKS5jb25jYXQoW3MsITBdKSl9LG5bIlNwYXJzZU1hdHJpeCwgQXJyYXkiXT1mdW5jdGlvbihBLGUpe3JldHVybiBhLmFwcGx5KHZvaWQgMCx6dChvKHQoZSksQSkpLmNvbmNhdChbcywhMF0pKX0pKToobj17IkRlbnNlTWF0cml4LCBEZW5zZU1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkuYXBwbHkodm9pZCAwLHp0KG8oZSx0KSkuY29uY2F0KFtBXSkpfX0pKSwiQXJyYXksIEFycmF5IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gaS5hcHBseSh2b2lkIDAsenQobyh0KGUpLHQobikpKS5jb25jYXQoW0FdKSkudmFsdWVPZigpfX0pKSwiQXJyYXksIERlbnNlTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gaS5hcHBseSh2b2lkIDAsenQobyh0KGUpLG4pKS5jb25jYXQoW0FdKSl9fSkpLCJEZW5zZU1hdHJpeCwgQXJyYXkiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBpLmFwcGx5KHZvaWQgMCx6dChvKGUsdChuKSkpLmNvbmNhdChbQV0pKX19KSl9LEEuU1MmJihuWyJTcGFyc2VNYXRyaXgsIFNwYXJzZU1hdHJpeCJdPWUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4pe3JldHVybiBBLlNTLmFwcGx5KEEsenQobyh0LG4pKS5jb25jYXQoW2UsITFdKSl9fSkpKSxBLkRTJiYoblsiRGVuc2VNYXRyaXgsIFNwYXJzZU1hdHJpeCJdPWUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4pe3JldHVybiBBLkRTLmFwcGx5KEEsenQobyh0LG4pKS5jb25jYXQoW2UsITFdKSl9fSkpLG5bIkFycmF5LCBTcGFyc2VNYXRyaXgiXT1lLnJlZmVyVG9TZWxmKChmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24obixpKXtyZXR1cm4gQS5EUy5hcHBseShBLHp0KG8odChuKSxpKSkuY29uY2F0KFtlLCExXSkpfX0pKSksYSYmKG5bIlNwYXJzZU1hdHJpeCwgRGVuc2VNYXRyaXgiXT1lLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gYS5hcHBseSh2b2lkIDAsenQobyh0LGUpKS5jb25jYXQoW0EsITBdKSl9fSkpLG5bIlNwYXJzZU1hdHJpeCwgQXJyYXkiXT1lLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gYS5hcHBseSh2b2lkIDAsenQobyh0KG4pLGUpKS5jb25jYXQoW0EsITBdKSl9fSkpKSk7dmFyIEI9QS5zY2FsYXJ8fCJhbnkiOyhBLkRzfHxBLlNzKSYmKHM/KG5bIkRlbnNlTWF0cml4LCIrQl09ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcihBLGUscywhMSl9LG5bQisiLCBEZW5zZU1hdHJpeCJdPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHIoZSxBLHMsITApfSxuWyJBcnJheSwiK0JdPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHIodChBKSxlLHMsITEpLnZhbHVlT2YoKX0sbltCKyIsIEFycmF5Il09ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcih0KGUpLEEscywhMCkudmFsdWVPZigpfSk6KG5bIkRlbnNlTWF0cml4LCIrQl09ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHIoZSx0LEEsITEpfX0pKSxuW0IrIiwgRGVuc2VNYXRyaXgiXT1lLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gcih0LGUsQSwhMCl9fSkpLG5bIkFycmF5LCIrQl09ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIHIodChlKSxuLEEsITEpLnZhbHVlT2YoKX19KSksbltCKyIsIEFycmF5Il09ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIHIodChuKSxlLEEsITApLnZhbHVlT2YoKX19KSkpKTt2YXIgYz12b2lkIDAhPT1BLnNTP0Euc1M6QS5TcztyZXR1cm4gcz8oQS5TcyYmKG5bIlNwYXJzZU1hdHJpeCwiK0JdPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIEEuU3MoZSx0LHMsITEpfSksYyYmKG5bQisiLCBTcGFyc2VNYXRyaXgiXT1mdW5jdGlvbihBLGUpe3JldHVybiBjKGUsQSxzLCEwKX0pKTooQS5TcyYmKG5bIlNwYXJzZU1hdHJpeCwiK0JdPWUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0LG4pe3JldHVybiBBLlNzKHQsbixlLCExKX19KSkpLGMmJihuW0IrIiwgU3BhcnNlTWF0cml4Il09ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGModCxlLEEsITApfX0pKSkpLHMmJnMuc2lnbmF0dXJlcyYmaEEobixzLnNpZ25hdHVyZXMpLG59fSkpLFlyPXBBKCJtb2QiLFsidHlwZWQiLCJjb25maWciLCJyb3VuZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiemVyb3MiLCJEZW5zZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLnJvdW5kLGk9QS5tYXRyaXgscj1BLmVxdWFsU2NhbGFyLG89QS56ZXJvcyxzPUEuRGVuc2VNYXRyaXgsYT1BLmNvbmNhdCxCPUNyKHt0eXBlZDplLGNvbmZpZzp0LHJvdW5kOm4sbWF0cml4OmksZXF1YWxTY2FsYXI6cix6ZXJvczpvLERlbnNlTWF0cml4OnN9KSxjPU1yKHt0eXBlZDplLGVxdWFsU2NhbGFyOnJ9KSxnPWRyKHt0eXBlZDplfSksRT1wcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpyfSksUT1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpyfSksdT1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpzfSk7cmV0dXJuIGUoIm1vZCIseyJudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gMD09PWU/QTpBLWUqQihBL2UpfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7aWYoZS5pc05lZygpKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGNhbGN1bGF0ZSBtb2QgZm9yIGEgbmVnYXRpdmUgZGl2aXNvciIpO3JldHVybiBlLmlzWmVybygpP0E6QS5tb2QoZSl9LCJGcmFjdGlvbiwgRnJhY3Rpb24iOmZ1bmN0aW9uKEEsZSl7aWYoZS5jb21wYXJlKDApPDApdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY2FsY3VsYXRlIG1vZCBmb3IgYSBuZWdhdGl2ZSBkaXZpc29yIik7cmV0dXJuIEEuY29tcGFyZSgwKT49MD9BLm1vZChlKTpBLm1vZChlKS5hZGQoZSkubW9kKGUpfX0sRHIoe3R5cGVkOmUsbWF0cml4OmksY29uY2F0OmF9KSh7U1M6RSxEUzpnLFNEOmMsU3M6USxzUzp1fSkpfSkpLGZyPXBBKCJtYXRBbGdvMDF4RFNpZCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBmdW5jdGlvbihBLHQsbixpKXt2YXIgcj1BLl9kYXRhLG89QS5fc2l6ZSxzPUEuX2RhdGF0eXBlLGE9dC5fdmFsdWVzLEI9dC5faW5kZXgsYz10Ll9wdHIsZz10Ll9zaXplLEU9dC5fZGF0YXR5cGU7aWYoby5sZW5ndGghPT1nLmxlbmd0aCl0aHJvdyBuZXcgX3Qoby5sZW5ndGgsZy5sZW5ndGgpO2lmKG9bMF0hPT1nWzBdfHxvWzFdIT09Z1sxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRGltZW5zaW9uIG1pc21hdGNoLiBNYXRyaXggQSAoIitvKyIpIG11c3QgbWF0Y2ggTWF0cml4IEIgKCIrZysiKSIpO2lmKCFhKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHBlcmZvcm0gb3BlcmF0aW9uIG9uIERlbnNlIE1hdHJpeCBhbmQgUGF0dGVybiBTcGFyc2UgTWF0cml4Iik7dmFyIFEsdSxsPW9bMF0saD1vWzFdLHc9InN0cmluZyI9PXR5cGVvZiBzJiZzPT09RT9zOnZvaWQgMCxDPXc/ZS5maW5kKG4sW3csd10pOm4sST1bXTtmb3IoUT0wO1E8bDtRKyspSVtRXT1bXTt2YXIgTT1bXSxkPVtdO2Zvcih1PTA7dTxoO3UrKyl7Zm9yKHZhciBwPXUrMSxtPWNbdV0sRj1jW3UrMV0sRD1tO0Q8RjtEKyspTVtRPUJbRF1dPWk/QyhhW0RdLHJbUV1bdV0pOkMocltRXVt1XSxhW0RdKSxkW1FdPXA7Zm9yKFE9MDtRPGw7USsrKWRbUV09PT1wP0lbUV1bdV09TVtRXTpJW1FdW3VdPXJbUV1bdV19cmV0dXJuIEEuY3JlYXRlRGVuc2VNYXRyaXgoe2RhdGE6SSxzaXplOltsLGhdLGRhdGF0eXBlOnd9KX19KSksTnI9cEEoIm1hdEFsZ28wNHhTaWRTaWQiLFsidHlwZWQiLCJlcXVhbFNjYWxhciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5lcXVhbFNjYWxhcjtyZXR1cm4gZnVuY3Rpb24oQSxuLGkpe3ZhciByPUEuX3ZhbHVlcyxvPUEuX2luZGV4LHM9QS5fcHRyLGE9QS5fc2l6ZSxCPUEuX2RhdGF0eXBlLGM9bi5fdmFsdWVzLGc9bi5faW5kZXgsRT1uLl9wdHIsUT1uLl9zaXplLHU9bi5fZGF0YXR5cGU7aWYoYS5sZW5ndGghPT1RLmxlbmd0aCl0aHJvdyBuZXcgX3QoYS5sZW5ndGgsUS5sZW5ndGgpO2lmKGFbMF0hPT1RWzBdfHxhWzFdIT09UVsxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRGltZW5zaW9uIG1pc21hdGNoLiBNYXRyaXggQSAoIithKyIpIG11c3QgbWF0Y2ggTWF0cml4IEIgKCIrUSsiKSIpO3ZhciBsLGg9YVswXSx3PWFbMV0sQz10LEk9MCxNPWk7InN0cmluZyI9PXR5cGVvZiBCJiZCPT09dSYmKGw9QixDPWUuZmluZCh0LFtsLGxdKSxJPWUuY29udmVydCgwLGwpLE09ZS5maW5kKGksW2wsbF0pKTt2YXIgZCxwLG0sRixELFk9ciYmYz9bXTp2b2lkIDAsZj1bXSxOPVtdLFU9ciYmYz9bXTp2b2lkIDAseT1yJiZjP1tdOnZvaWQgMCxUPVtdLHg9W107Zm9yKHA9MDtwPHc7cCsrKXtOW3BdPWYubGVuZ3RoO3ZhciBSPXArMTtmb3IoRj1zW3BdLEQ9c1twKzFdLG09RjttPEQ7bSsrKWQ9b1ttXSxmLnB1c2goZCksVFtkXT1SLFUmJihVW2RdPXJbbV0pO2ZvcihGPUVbcF0sRD1FW3ArMV0sbT1GO208RDttKyspaWYoVFtkPWdbbV1dPT09Uil7aWYoVSl7dmFyIEc9TShVW2RdLGNbbV0pO0MoRyxJKT9UW2RdPW51bGw6VVtkXT1HfX1lbHNlIGYucHVzaChkKSx4W2RdPVIseSYmKHlbZF09Y1ttXSk7aWYoVSYmeSlmb3IobT1OW3BdO208Zi5sZW5ndGg7KVRbZD1mW21dXT09PVI/KFlbbV09VVtkXSxtKyspOnhbZF09PT1SPyhZW21dPXlbZF0sbSsrKTpmLnNwbGljZShtLDEpfXJldHVybiBOW3ddPWYubGVuZ3RoLEEuY3JlYXRlU3BhcnNlTWF0cml4KHt2YWx1ZXM6WSxpbmRleDpmLHB0cjpOLHNpemU6W2gsd10sZGF0YXR5cGU6bH0pfX0pKSxVcj1wQSgibWF0QWxnbzEweFNpZHMiLFsidHlwZWQiLCJEZW5zZU1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5EZW5zZU1hdHJpeDtyZXR1cm4gZnVuY3Rpb24oQSxuLGkscil7dmFyIG89QS5fdmFsdWVzLHM9QS5faW5kZXgsYT1BLl9wdHIsQj1BLl9zaXplLGM9QS5fZGF0YXR5cGU7aWYoIW8pdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgcGVyZm9ybSBvcGVyYXRpb24gb24gUGF0dGVybiBTcGFyc2UgTWF0cml4IGFuZCBTY2FsYXIgdmFsdWUiKTt2YXIgZyxFPUJbMF0sUT1CWzFdLHU9aTsic3RyaW5nIj09dHlwZW9mIGMmJihnPWMsbj1lLmNvbnZlcnQobixnKSx1PWUuZmluZChpLFtnLGddKSk7Zm9yKHZhciBsPVtdLGg9W10sdz1bXSxDPTA7QzxRO0MrKyl7Zm9yKHZhciBJPUMrMSxNPWFbQ10sZD1hW0MrMV0scD1NO3A8ZDtwKyspe3ZhciBtPXNbcF07aFttXT1vW3BdLHdbbV09SX1mb3IodmFyIEY9MDtGPEU7RisrKTA9PT1DJiYobFtGXT1bXSksd1tGXT09PUk/bFtGXVtDXT1yP3UobixoW0ZdKTp1KGhbRl0sbik6bFtGXVtDXT1ufXJldHVybiBuZXcgdCh7ZGF0YTpsLHNpemU6W0UsUV0sZGF0YXR5cGU6Z30pfX0pKTtmdW5jdGlvbiB5cihBLGUsdCxuKXtpZighKHRoaXMgaW5zdGFuY2VvZiB5cikpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDb25zdHJ1Y3RvciBtdXN0IGJlIGNhbGxlZCB3aXRoIHRoZSBuZXcgb3BlcmF0b3IiKTt0aGlzLmZuPUEsdGhpcy5jb3VudD1lLHRoaXMubWluPXQsdGhpcy5tYXg9bix0aGlzLm1lc3NhZ2U9Ildyb25nIG51bWJlciBvZiBhcmd1bWVudHMgaW4gZnVuY3Rpb24gIitBKyIgKCIrZSsiIHByb3ZpZGVkLCAiK3QrKG51bGwhPW4/Ii0iK246IiIpKyIgZXhwZWN0ZWQpIix0aGlzLnN0YWNrPShuZXcgRXJyb3IpLnN0YWNrfXlyLnByb3RvdHlwZT1uZXcgRXJyb3IseXIucHJvdG90eXBlLmNvbnN0cnVjdG9yPUVycm9yLHlyLnByb3RvdHlwZS5uYW1lPSJBcmd1bWVudHNFcnJvciIseXIucHJvdG90eXBlLmlzQXJndW1lbnRzRXJyb3I9ITA7dmFyIFRyPSJudW1iZXIgfCBCaWdOdW1iZXIgfCBGcmFjdGlvbiB8IE1hdHJpeCB8IEFycmF5Iix4cj0iIi5jb25jYXQoVHIsIiwgIikuY29uY2F0KFRyLCIsIC4uLiIpLmNvbmNhdChUcik7ZnVuY3Rpb24gUnIoQSl7cmV0dXJuIUEuc29tZSgoZnVuY3Rpb24oQSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoQSl9KSl9dmFyIEdyPXBBKCJnY2QiLFsidHlwZWQiLCJjb25maWciLCJyb3VuZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiemVyb3MiLCJCaWdOdW1iZXIiLCJEZW5zZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZSx0PUEudHlwZWQsbj1BLm1hdHJpeCxpPUEuY29uZmlnLHI9QS5yb3VuZCxvPUEuZXF1YWxTY2FsYXIscz1BLnplcm9zLGE9QS5CaWdOdW1iZXIsQj1BLkRlbnNlTWF0cml4LGM9QS5jb25jYXQsZz1Zcih7dHlwZWQ6dCxjb25maWc6aSxyb3VuZDpyLG1hdHJpeDpuLGVxdWFsU2NhbGFyOm8semVyb3M6cyxEZW5zZU1hdHJpeDpCLGNvbmNhdDpjfSksRT1mcih7dHlwZWQ6dH0pLFE9TnIoe3R5cGVkOnQsZXF1YWxTY2FsYXI6b30pLHU9VXIoe3R5cGVkOnQsRGVuc2VNYXRyaXg6Qn0pO3JldHVybiB0KCJnY2QiLHsibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7aWYoIVYoQSl8fCFWKGUpKXRocm93IG5ldyBFcnJvcigiUGFyYW1ldGVycyBpbiBmdW5jdGlvbiBnY2QgbXVzdCBiZSBpbnRlZ2VyIG51bWJlcnMiKTtmb3IodmFyIHQ7MCE9PWU7KXQ9ZyhBLGUpLEE9ZSxlPXQ7cmV0dXJuIEE8MD8tQTpBfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7aWYoIUEuaXNJbnQoKXx8IWUuaXNJbnQoKSl0aHJvdyBuZXcgRXJyb3IoIlBhcmFtZXRlcnMgaW4gZnVuY3Rpb24gZ2NkIG11c3QgYmUgaW50ZWdlciBudW1iZXJzIik7Zm9yKHZhciB0PW5ldyBhKDApOyFlLmlzWmVybygpOyl7dmFyIG49ZyhBLGUpO0E9ZSxlPW59cmV0dXJuIEEubHQodCk/QS5uZWcoKTpBfSwiRnJhY3Rpb24sIEZyYWN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmdjZChlKX19LERyKHt0eXBlZDp0LG1hdHJpeDpuLGNvbmNhdDpjfSkoe1NTOlEsRFM6RSxTczp1fSksKElyKGU9e30seHIsdC5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIGk9QShlLHQpLHI9MDtyPG4ubGVuZ3RoO3IrKylpPUEoaSxuW3JdKTtyZXR1cm4gaX19KSkpLElyKGUsIkFycmF5Iix0LnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoMT09PWUubGVuZ3RoJiZBcnJheS5pc0FycmF5KGVbMF0pJiZScihlWzBdKSlyZXR1cm4gQS5hcHBseSh2b2lkIDAsenQoZVswXSkpO2lmKFJyKGUpKXJldHVybiBBLmFwcGx5KHZvaWQgMCx6dChlKSk7dGhyb3cgbmV3IHlyKCJnY2QoKSBzdXBwb3J0cyBvbmx5IDFkIG1hdHJpY2VzISIpfX0pKSksSXIoZSwiTWF0cml4Iix0LnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEEoZS50b0FycmF5KCkpfX0pKSksZSkpfSkpLFNyPXBBKCJtYXRBbGdvMDZ4UzBTMCIsWyJ0eXBlZCIsImVxdWFsU2NhbGFyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmVxdWFsU2NhbGFyO3JldHVybiBmdW5jdGlvbihBLG4saSl7dmFyIHI9QS5fdmFsdWVzLG89QS5fc2l6ZSxzPUEuX2RhdGF0eXBlLGE9bi5fdmFsdWVzLEI9bi5fc2l6ZSxjPW4uX2RhdGF0eXBlO2lmKG8ubGVuZ3RoIT09Qi5sZW5ndGgpdGhyb3cgbmV3IF90KG8ubGVuZ3RoLEIubGVuZ3RoKTtpZihvWzBdIT09QlswXXx8b1sxXSE9PUJbMV0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaC4gTWF0cml4IEEgKCIrbysiKSBtdXN0IG1hdGNoIE1hdHJpeCBCICgiK0IrIikiKTt2YXIgZyxFPW9bMF0sUT1vWzFdLHU9dCxsPTAsaD1pOyJzdHJpbmciPT10eXBlb2YgcyYmcz09PWMmJihnPXMsdT1lLmZpbmQodCxbZyxnXSksbD1lLmNvbnZlcnQoMCxnKSxoPWUuZmluZChpLFtnLGddKSk7Zm9yKHZhciB3PXImJmE/W106dm9pZCAwLEM9W10sST1bXSxNPXc/W106dm9pZCAwLGQ9W10scD1bXSxtPTA7bTxRO20rKyl7SVttXT1DLmxlbmd0aDt2YXIgRj1tKzE7aWYoSG4oQSxtLGQsTSxwLEYsQyxoKSxIbihuLG0sZCxNLHAsRixDLGgpLE0pZm9yKHZhciBEPUlbbV07RDxDLmxlbmd0aDspe3ZhciBZPUNbRF07aWYocFtZXT09PUYpe3ZhciBmPU1bWV07dShmLGwpP0Muc3BsaWNlKEQsMSk6KHcucHVzaChmKSxEKyspfWVsc2UgQy5zcGxpY2UoRCwxKX1lbHNlIGZvcih2YXIgTj1JW21dO048Qy5sZW5ndGg7KXBbQ1tOXV0hPT1GP0Muc3BsaWNlKE4sMSk6TisrfXJldHVybiBJW1FdPUMubGVuZ3RoLEEuY3JlYXRlU3BhcnNlTWF0cml4KHt2YWx1ZXM6dyxpbmRleDpDLHB0cjpJLHNpemU6W0UsUV0sZGF0YXR5cGU6Z30pfX0pKSxicj1wQSgibGNtIixbInR5cGVkIiwibWF0cml4IiwiZXF1YWxTY2FsYXIiLCJjb25jYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5lcXVhbFNjYWxhcixpPUEuY29uY2F0LHI9TXIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6bn0pLG89U3Ioe3R5cGVkOmUsZXF1YWxTY2FsYXI6bn0pLHM9cnIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6bn0pLGE9RHIoe3R5cGVkOmUsbWF0cml4OnQsY29uY2F0Oml9KSxCPSJudW1iZXIgfCBCaWdOdW1iZXIgfCBGcmFjdGlvbiB8IE1hdHJpeCB8IEFycmF5IixjPXt9O3JldHVybiBjWyIiLmNvbmNhdChCLCIsICIpLmNvbmNhdChCLCIsIC4uLiIpLmNvbmNhdChCKV09ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIGk9QShlLHQpLHI9MDtyPG4ubGVuZ3RoO3IrKylpPUEoaSxuW3JdKTtyZXR1cm4gaX19KSksZSgibGNtIix7Im51bWJlciwgbnVtYmVyIjpIaSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7aWYoIUEuaXNJbnQoKXx8IWUuaXNJbnQoKSl0aHJvdyBuZXcgRXJyb3IoIlBhcmFtZXRlcnMgaW4gZnVuY3Rpb24gbGNtIG11c3QgYmUgaW50ZWdlciBudW1iZXJzIik7aWYoQS5pc1plcm8oKSlyZXR1cm4gQTtpZihlLmlzWmVybygpKXJldHVybiBlO2Zvcih2YXIgdD1BLnRpbWVzKGUpOyFlLmlzWmVybygpOyl7dmFyIG49ZTtlPUEubW9kKG4pLEE9bn1yZXR1cm4gdC5kaXYoQSkuYWJzKCl9LCJGcmFjdGlvbiwgRnJhY3Rpb24iOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEubGNtKGUpfX0sYSh7U1M6byxEUzpyLFNzOnN9KSxjKX0pKSxIcj1wQSgibG9nMTAiLFsidHlwZWQiLCJjb25maWciLCJDb21wbGV4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEuQ29tcGxleDtyZXR1cm4gZSgibG9nMTAiLHtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEE+PTB8fHQucHJlZGljdGFibGU/dmkoQSk6bmV3IG4oQSwwKS5sb2coKS5kaXYoTWF0aC5MTjEwKX0sQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IG4oQSkubG9nKCkuZGl2KE1hdGguTE4xMCl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4hQS5pc05lZ2F0aXZlKCl8fHQucHJlZGljdGFibGU/QS5sb2coKTpuZXcgbihBLnRvTnVtYmVyKCksMCkubG9nKCkuZGl2KE1hdGguTE4xMCl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLHZyPXBBKCJsb2cyIixbInR5cGVkIiwiY29uZmlnIiwiQ29tcGxleCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLkNvbXBsZXg7cmV0dXJuIGUoImxvZzIiLHtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEE+PTB8fHQucHJlZGljdGFibGU/a2koQSk6aShuZXcgbihBLDApKX0sQ29tcGxleDppLEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4hQS5pc05lZ2F0aXZlKCl8fHQucHJlZGljdGFibGU/QS5sb2coMik6aShuZXcgbihBLnRvTnVtYmVyKCksMCkpfSwiQXJyYXkgfCBNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gR24oZSxBKX19KSl9KTtmdW5jdGlvbiBpKEEpe3ZhciBlPU1hdGguc3FydChBLnJlKkEucmUrQS5pbSpBLmltKTtyZXR1cm4gbmV3IG4oTWF0aC5sb2cyP01hdGgubG9nMihlKTpNYXRoLmxvZyhlKS9NYXRoLkxOMixNYXRoLmF0YW4yKEEuaW0sQS5yZSkvTWF0aC5MTjIpfX0pKSxrcj1wQSgibXVsdGlwbHlTY2FsYXIiLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7cmV0dXJuKDAsQS50eXBlZCkoIm11bHRpcGx5U2NhbGFyIix7Im51bWJlciwgbnVtYmVyIjp5aSwiQ29tcGxleCwgQ29tcGxleCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5tdWwoZSl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS50aW1lcyhlKX0sIkZyYWN0aW9uLCBGcmFjdGlvbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5tdWwoZSl9LCJudW1iZXIgfCBGcmFjdGlvbiB8IEJpZ051bWJlciB8IENvbXBsZXgsIFVuaXQiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGUubXVsdGlwbHkoQSl9LCJVbml0LCBudW1iZXIgfCBGcmFjdGlvbiB8IEJpZ051bWJlciB8IENvbXBsZXggfCBVbml0IjpmdW5jdGlvbihBLGUpe3JldHVybiBBLm11bHRpcGx5KGUpfX0pfSkpLGpyPSJtdWx0aXBseSIsSnI9cEEoanIsWyJ0eXBlZCIsIm1hdHJpeCIsImFkZFNjYWxhciIsIm11bHRpcGx5U2NhbGFyIiwiZXF1YWxTY2FsYXIiLCJkb3QiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5hZGRTY2FsYXIsaT1BLm11bHRpcGx5U2NhbGFyLHI9QS5lcXVhbFNjYWxhcixvPUEuZG90LHM9cnIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6cn0pLGE9c3Ioe3R5cGVkOmV9KTtmdW5jdGlvbiBCKEEsZSl7c3dpdGNoKEEubGVuZ3RoKXtjYXNlIDE6c3dpdGNoKGUubGVuZ3RoKXtjYXNlIDE6aWYoQVswXSE9PWVbMF0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaCBpbiBtdWx0aXBsaWNhdGlvbi4gVmVjdG9ycyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoIik7YnJlYWs7Y2FzZSAyOmlmKEFbMF0hPT1lWzBdKXRocm93IG5ldyBSYW5nZUVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2ggaW4gbXVsdGlwbGljYXRpb24uIFZlY3RvciBsZW5ndGggKCIrQVswXSsiKSBtdXN0IG1hdGNoIE1hdHJpeCByb3dzICgiK2VbMF0rIikiKTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiQ2FuIG9ubHkgbXVsdGlwbHkgYSAxIG9yIDIgZGltZW5zaW9uYWwgbWF0cml4IChNYXRyaXggQiBoYXMgIitlLmxlbmd0aCsiIGRpbWVuc2lvbnMpIil9YnJlYWs7Y2FzZSAyOnN3aXRjaChlLmxlbmd0aCl7Y2FzZSAxOmlmKEFbMV0hPT1lWzBdKXRocm93IG5ldyBSYW5nZUVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2ggaW4gbXVsdGlwbGljYXRpb24uIE1hdHJpeCBjb2x1bW5zICgiK0FbMV0rIikgbXVzdCBtYXRjaCBWZWN0b3IgbGVuZ3RoICgiK2VbMF0rIikiKTticmVhaztjYXNlIDI6aWYoQVsxXSE9PWVbMF0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaCBpbiBtdWx0aXBsaWNhdGlvbi4gTWF0cml4IEEgY29sdW1ucyAoIitBWzFdKyIpIG11c3QgbWF0Y2ggTWF0cml4IEIgcm93cyAoIitlWzBdKyIpIik7YnJlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoIkNhbiBvbmx5IG11bHRpcGx5IGEgMSBvciAyIGRpbWVuc2lvbmFsIG1hdHJpeCAoTWF0cml4IEIgaGFzICIrZS5sZW5ndGgrIiBkaW1lbnNpb25zKSIpfWJyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJDYW4gb25seSBtdWx0aXBseSBhIDEgb3IgMiBkaW1lbnNpb25hbCBtYXRyaXggKE1hdHJpeCBBIGhhcyAiK0EubGVuZ3RoKyIgZGltZW5zaW9ucykiKX19dmFyIGM9ZSgiX211bHRpcGx5TWF0cml4VmVjdG9yIix7IkRlbnNlTWF0cml4LCBhbnkiOmZ1bmN0aW9uKEEsdCl7dmFyIHIsbz1BLl9kYXRhLHM9QS5fc2l6ZSxhPUEuX2RhdGF0eXBlLEI9dC5fZGF0YSxjPXQuX2RhdGF0eXBlLGc9c1swXSxFPXNbMV0sUT1uLHU9aTthJiZjJiZhPT09YyYmInN0cmluZyI9PXR5cGVvZiBhJiYocj1hLFE9ZS5maW5kKG4sW3Iscl0pLHU9ZS5maW5kKGksW3Iscl0pKTtmb3IodmFyIGw9W10saD0wO2g8ZztoKyspe2Zvcih2YXIgdz1vW2hdLEM9dSh3WzBdLEJbMF0pLEk9MTtJPEU7SSsrKUM9UShDLHUod1tJXSxCW0ldKSk7bFtoXT1DfXJldHVybiBBLmNyZWF0ZURlbnNlTWF0cml4KHtkYXRhOmwsc2l6ZTpbZ10sZGF0YXR5cGU6cn0pfSwiU3BhcnNlTWF0cml4LCBhbnkiOmZ1bmN0aW9uKEEsdCl7dmFyIG89QS5fdmFsdWVzLHM9QS5faW5kZXgsYT1BLl9wdHIsQj1BLl9kYXRhdHlwZTtpZighbyl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBtdWx0aXBseSBQYXR0ZXJuIG9ubHkgTWF0cml4IHRpbWVzIERlbnNlIE1hdHJpeCIpO3ZhciBjLGc9dC5fZGF0YSxFPXQuX2RhdGF0eXBlLFE9QS5fc2l6ZVswXSx1PXQuX3NpemVbMF0sbD1bXSxoPVtdLHc9W10sQz1uLEk9aSxNPXIsZD0wO0ImJkUmJkI9PT1FJiYic3RyaW5nIj09dHlwZW9mIEImJihjPUIsQz1lLmZpbmQobixbYyxjXSksST1lLmZpbmQoaSxbYyxjXSksTT1lLmZpbmQocixbYyxjXSksZD1lLmNvbnZlcnQoMCxjKSk7dmFyIHA9W10sbT1bXTt3WzBdPTA7Zm9yKHZhciBGPTA7Rjx1O0YrKyl7dmFyIEQ9Z1tGXTtpZighTShELGQpKWZvcih2YXIgWT1hW0ZdLGY9YVtGKzFdLE49WTtOPGY7TisrKXt2YXIgVT1zW05dO21bVV0/cFtVXT1DKHBbVV0sSShELG9bTl0pKToobVtVXT0hMCxoLnB1c2goVSkscFtVXT1JKEQsb1tOXSkpfX1mb3IodmFyIHk9aC5sZW5ndGgsVD0wO1Q8eTtUKyspe3ZhciB4PWhbVF07bFtUXT1wW3hdfXJldHVybiB3WzFdPWgubGVuZ3RoLEEuY3JlYXRlU3BhcnNlTWF0cml4KHt2YWx1ZXM6bCxpbmRleDpoLHB0cjp3LHNpemU6W1EsMV0sZGF0YXR5cGU6Y30pfX0pLEU9ZSgiX211bHRpcGx5TWF0cml4TWF0cml4Iix7IkRlbnNlTWF0cml4LCBEZW5zZU1hdHJpeCI6ZnVuY3Rpb24oQSx0KXt2YXIgcixvPUEuX2RhdGEscz1BLl9zaXplLGE9QS5fZGF0YXR5cGUsQj10Ll9kYXRhLGM9dC5fc2l6ZSxnPXQuX2RhdGF0eXBlLEU9c1swXSxRPXNbMV0sdT1jWzFdLGw9bixoPWk7YSYmZyYmYT09PWcmJiJzdHJpbmciPT10eXBlb2YgYSYmKHI9YSxsPWUuZmluZChuLFtyLHJdKSxoPWUuZmluZChpLFtyLHJdKSk7Zm9yKHZhciB3PVtdLEM9MDtDPEU7QysrKXt2YXIgST1vW0NdO3dbQ109W107Zm9yKHZhciBNPTA7TTx1O00rKyl7Zm9yKHZhciBkPWgoSVswXSxCWzBdW01dKSxwPTE7cDxRO3ArKylkPWwoZCxoKElbcF0sQltwXVtNXSkpO3dbQ11bTV09ZH19cmV0dXJuIEEuY3JlYXRlRGVuc2VNYXRyaXgoe2RhdGE6dyxzaXplOltFLHVdLGRhdGF0eXBlOnJ9KX0sIkRlbnNlTWF0cml4LCBTcGFyc2VNYXRyaXgiOmZ1bmN0aW9uKEEsdCl7dmFyIG89QS5fZGF0YSxzPUEuX3NpemUsYT1BLl9kYXRhdHlwZSxCPXQuX3ZhbHVlcyxjPXQuX2luZGV4LGc9dC5fcHRyLEU9dC5fc2l6ZSxRPXQuX2RhdGF0eXBlO2lmKCFCKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IG11bHRpcGx5IERlbnNlIE1hdHJpeCB0aW1lcyBQYXR0ZXJuIG9ubHkgTWF0cml4Iik7dmFyIHUsbD1zWzBdLGg9RVsxXSx3PW4sQz1pLEk9cixNPTA7YSYmUSYmYT09PVEmJiJzdHJpbmciPT10eXBlb2YgYSYmKHU9YSx3PWUuZmluZChuLFt1LHVdKSxDPWUuZmluZChpLFt1LHVdKSxJPWUuZmluZChyLFt1LHVdKSxNPWUuY29udmVydCgwLHUpKTtmb3IodmFyIGQ9W10scD1bXSxtPVtdLEY9dC5jcmVhdGVTcGFyc2VNYXRyaXgoe3ZhbHVlczpkLGluZGV4OnAscHRyOm0sc2l6ZTpbbCxoXSxkYXRhdHlwZTp1fSksRD0wO0Q8aDtEKyspe21bRF09cC5sZW5ndGg7dmFyIFk9Z1tEXSxmPWdbRCsxXTtpZihmPlkpZm9yKHZhciBOPTAsVT0wO1U8bDtVKyspe2Zvcih2YXIgeT1VKzEsVD12b2lkIDAseD1ZO3g8Zjt4Kyspe3ZhciBSPWNbeF07TiE9PXk/KFQ9QyhvW1VdW1JdLEJbeF0pLE49eSk6VD13KFQsQyhvW1VdW1JdLEJbeF0pKX1OIT09eXx8SShULE0pfHwocC5wdXNoKFUpLGQucHVzaChUKSl9fXJldHVybiBtW2hdPXAubGVuZ3RoLEZ9LCJTcGFyc2VNYXRyaXgsIERlbnNlTWF0cml4IjpmdW5jdGlvbihBLHQpe3ZhciBvPUEuX3ZhbHVlcyxzPUEuX2luZGV4LGE9QS5fcHRyLEI9QS5fZGF0YXR5cGU7aWYoIW8pdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbXVsdGlwbHkgUGF0dGVybiBvbmx5IE1hdHJpeCB0aW1lcyBEZW5zZSBNYXRyaXgiKTt2YXIgYyxnPXQuX2RhdGEsRT10Ll9kYXRhdHlwZSxRPUEuX3NpemVbMF0sdT10Ll9zaXplWzBdLGw9dC5fc2l6ZVsxXSxoPW4sdz1pLEM9cixJPTA7QiYmRSYmQj09PUUmJiJzdHJpbmciPT10eXBlb2YgQiYmKGM9QixoPWUuZmluZChuLFtjLGNdKSx3PWUuZmluZChpLFtjLGNdKSxDPWUuZmluZChyLFtjLGNdKSxJPWUuY29udmVydCgwLGMpKTtmb3IodmFyIE09W10sZD1bXSxwPVtdLG09QS5jcmVhdGVTcGFyc2VNYXRyaXgoe3ZhbHVlczpNLGluZGV4OmQscHRyOnAsc2l6ZTpbUSxsXSxkYXRhdHlwZTpjfSksRj1bXSxEPVtdLFk9MDtZPGw7WSsrKXtwW1ldPWQubGVuZ3RoO2Zvcih2YXIgZj1ZKzEsTj0wO048dTtOKyspe3ZhciBVPWdbTl1bWV07aWYoIUMoVSxJKSlmb3IodmFyIHk9YVtOXSxUPWFbTisxXSx4PXk7eDxUO3grKyl7dmFyIFI9c1t4XTtEW1JdIT09Zj8oRFtSXT1mLGQucHVzaChSKSxGW1JdPXcoVSxvW3hdKSk6RltSXT1oKEZbUl0sdyhVLG9beF0pKX19Zm9yKHZhciBHPXBbWV0sUz1kLmxlbmd0aCxiPUc7YjxTO2IrKyl7dmFyIEg9ZFtiXTtNW2JdPUZbSF19fXJldHVybiBwW2xdPWQubGVuZ3RoLG19LCJTcGFyc2VNYXRyaXgsIFNwYXJzZU1hdHJpeCI6ZnVuY3Rpb24oQSx0KXt2YXIgcixvPUEuX3ZhbHVlcyxzPUEuX2luZGV4LGE9QS5fcHRyLEI9QS5fZGF0YXR5cGUsYz10Ll92YWx1ZXMsZz10Ll9pbmRleCxFPXQuX3B0cixRPXQuX2RhdGF0eXBlLHU9QS5fc2l6ZVswXSxsPXQuX3NpemVbMV0saD1vJiZjLHc9bixDPWk7QiYmUSYmQj09PVEmJiJzdHJpbmciPT10eXBlb2YgQiYmKHI9Qix3PWUuZmluZChuLFtyLHJdKSxDPWUuZmluZChpLFtyLHJdKSk7Zm9yKHZhciBJLE0sZCxwLG0sRixELFksZj1oP1tdOnZvaWQgMCxOPVtdLFU9W10seT1BLmNyZWF0ZVNwYXJzZU1hdHJpeCh7dmFsdWVzOmYsaW5kZXg6TixwdHI6VSxzaXplOlt1LGxdLGRhdGF0eXBlOnJ9KSxUPWg/W106dm9pZCAwLHg9W10sUj0wO1I8bDtSKyspe1VbUl09Ti5sZW5ndGg7dmFyIEc9UisxO2ZvcihtPUVbUl0sRj1FW1IrMV0scD1tO3A8RjtwKyspaWYoWT1nW3BdLGgpZm9yKE09YVtZXSxkPWFbWSsxXSxJPU07STxkO0krKyl4W0Q9c1tJXV0hPT1HPyh4W0RdPUcsTi5wdXNoKEQpLFRbRF09QyhjW3BdLG9bSV0pKTpUW0RdPXcoVFtEXSxDKGNbcF0sb1tJXSkpO2Vsc2UgZm9yKE09YVtZXSxkPWFbWSsxXSxJPU07STxkO0krKyl4W0Q9c1tJXV0hPT1HJiYoeFtEXT1HLE4ucHVzaChEKSk7aWYoaClmb3IodmFyIFM9VVtSXSxiPU4ubGVuZ3RoLEg9UztIPGI7SCsrKXt2YXIgdj1OW0hdO2ZbSF09VFt2XX19cmV0dXJuIFVbbF09Ti5sZW5ndGgseX19KTtyZXR1cm4gZShqcixpLHsiQXJyYXksIEFycmF5IjplLnJlZmVyVG8oIk1hdHJpeCwgTWF0cml4IiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsbil7QigkdChlKSwkdChuKSk7dmFyIGk9QSh0KGUpLHQobikpO3JldHVybiBnKGkpP2kudmFsdWVPZigpOml9fSkpLCJNYXRyaXgsIE1hdHJpeCI6ZnVuY3Rpb24oQSx0KXt2YXIgcj1BLnNpemUoKSxzPXQuc2l6ZSgpO3JldHVybiBCKHIscyksMT09PXIubGVuZ3RoPzE9PT1zLmxlbmd0aD9mdW5jdGlvbihBLGUsdCl7aWYoMD09PXQpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbXVsdGlwbHkgdHdvIGVtcHR5IHZlY3RvcnMiKTtyZXR1cm4gbyhBLGUpfShBLHQsclswXSk6ZnVuY3Rpb24oQSx0KXtpZigiZGVuc2UiIT09dC5zdG9yYWdlKCkpdGhyb3cgbmV3IEVycm9yKCJTdXBwb3J0IGZvciBTcGFyc2VNYXRyaXggbm90IGltcGxlbWVudGVkIik7cmV0dXJuIGZ1bmN0aW9uKEEsdCl7dmFyIHIsbz1BLl9kYXRhLHM9QS5fc2l6ZSxhPUEuX2RhdGF0eXBlLEI9dC5fZGF0YSxjPXQuX3NpemUsZz10Ll9kYXRhdHlwZSxFPXNbMF0sUT1jWzFdLHU9bixsPWk7YSYmZyYmYT09PWcmJiJzdHJpbmciPT10eXBlb2YgYSYmKHI9YSx1PWUuZmluZChuLFtyLHJdKSxsPWUuZmluZChpLFtyLHJdKSk7Zm9yKHZhciBoPVtdLHc9MDt3PFE7dysrKXtmb3IodmFyIEM9bChvWzBdLEJbMF1bd10pLEk9MTtJPEU7SSsrKUM9dShDLGwob1tJXSxCW0ldW3ddKSk7aFt3XT1DfXJldHVybiBBLmNyZWF0ZURlbnNlTWF0cml4KHtkYXRhOmgsc2l6ZTpbUV0sZGF0YXR5cGU6cn0pfShBLHQpfShBLHQpOjE9PT1zLmxlbmd0aD9jKEEsdCk6RShBLHQpfSwiTWF0cml4LCBBcnJheSI6ZS5yZWZlclRvKCJNYXRyaXgsTWF0cml4IiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIEEoZSx0KG4pKX19KSksIkFycmF5LCBNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBBKHQoZSxuLnN0b3JhZ2UoKSksbil9fSkpLCJTcGFyc2VNYXRyaXgsIGFueSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcyhBLGUsaSwhMSl9LCJEZW5zZU1hdHJpeCwgYW55IjpmdW5jdGlvbihBLGUpe3JldHVybiBhKEEsZSxpLCExKX0sImFueSwgU3BhcnNlTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBzKGUsQSxpLCEwKX0sImFueSwgRGVuc2VNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGEoZSxBLGksITApfSwiQXJyYXksIGFueSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gYSh0KEEpLGUsaSwhMSkudmFsdWVPZigpfSwiYW55LCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gYSh0KGUpLEEsaSwhMCkudmFsdWVPZigpfSwiYW55LCBhbnkiOmksImFueSwgYW55LCAuLi5hbnkiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpPUEoZSx0KSxyPTA7cjxuLmxlbmd0aDtyKyspaT1BKGksbltyXSk7cmV0dXJuIGl9fSkpfSl9KSksenI9Im50aFJvb3QiLExyPXBBKHpyLFsidHlwZWQiLCJtYXRyaXgiLCJlcXVhbFNjYWxhciIsIkJpZ051bWJlciIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmVxdWFsU2NhbGFyLGk9QS5CaWdOdW1iZXIscj1BLmNvbmNhdCxvPWZyKHt0eXBlZDplfSkscz1Ncih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYT1Tcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksQj1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYz1Ecih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6cn0pO2Z1bmN0aW9uIGcoKXt0aHJvdyBuZXcgRXJyb3IoIkNvbXBsZXggbnVtYmVyIG5vdCBzdXBwb3J0ZWQgaW4gZnVuY3Rpb24gbnRoUm9vdC4gVXNlIG50aFJvb3RzIGluc3RlYWQuIil9cmV0dXJuIGUoenIse251bWJlcjpqaSwibnVtYmVyLCBudW1iZXIiOmppLEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gRShBLG5ldyBpKDIpKX0sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpFLENvbXBsZXg6ZywiQ29tcGxleCwgbnVtYmVyIjpnLEFycmF5OmUucmVmZXJUbygiRGVuc2VNYXRyaXgsbnVtYmVyIiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBBKHQoZSksMikudmFsdWVPZigpfX0pKSxEZW5zZU1hdHJpeDplLnJlZmVyVG8oIkRlbnNlTWF0cml4LG51bWJlciIsKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gQShlLDIpfX0pKSxTcGFyc2VNYXRyaXg6ZS5yZWZlclRvKCJTcGFyc2VNYXRyaXgsbnVtYmVyIiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBBKGUsMil9fSkpLCJTcGFyc2VNYXRyaXgsIFNwYXJzZU1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7aWYoMT09PXQuZGVuc2l0eSgpKXJldHVybiBhKGUsdCxBKTt0aHJvdyBuZXcgRXJyb3IoIlJvb3QgbXVzdCBiZSBub24temVybyIpfX0pKSwiRGVuc2VNYXRyaXgsIFNwYXJzZU1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7aWYoMT09PXQuZGVuc2l0eSgpKXJldHVybiBvKGUsdCxBLCExKTt0aHJvdyBuZXcgRXJyb3IoIlJvb3QgbXVzdCBiZSBub24temVybyIpfX0pKSwiQXJyYXksIFNwYXJzZU1hdHJpeCI6ZS5yZWZlclRvKCJEZW5zZU1hdHJpeCxTcGFyc2VNYXRyaXgiLChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gQSh0KGUpLG4pfX0pKSwibnVtYmVyIHwgQmlnTnVtYmVyLCBTcGFyc2VNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe2lmKDE9PT10LmRlbnNpdHkoKSlyZXR1cm4gQih0LGUsQSwhMCk7dGhyb3cgbmV3IEVycm9yKCJSb290IG11c3QgYmUgbm9uLXplcm8iKX19KSl9LGMoe3NjYWxhcjoibnVtYmVyIHwgQmlnTnVtYmVyIixTRDpzLFNzOkIsc1M6ITF9KSk7ZnVuY3Rpb24gRShBLGUpe3ZhciB0PWkucHJlY2lzaW9uLG49aS5jbG9uZSh7cHJlY2lzaW9uOnQrMn0pLHI9bmV3IGkoMCksbz1uZXcgbigxKSxzPWUuaXNOZWdhdGl2ZSgpO2lmKHMmJihlPWUubmVnKCkpLGUuaXNaZXJvKCkpdGhyb3cgbmV3IEVycm9yKCJSb290IG11c3QgYmUgbm9uLXplcm8iKTtpZihBLmlzTmVnYXRpdmUoKSYmIWUuYWJzKCkubW9kKDIpLmVxdWFscygxKSl0aHJvdyBuZXcgRXJyb3IoIlJvb3QgbXVzdCBiZSBvZGQgd2hlbiBhIGlzIG5lZ2F0aXZlLiIpO2lmKEEuaXNaZXJvKCkpcmV0dXJuIHM/bmV3IG4oMS8wKTowO2lmKCFBLmlzRmluaXRlKCkpcmV0dXJuIHM/cjpBO3ZhciBhPUEuYWJzKCkucG93KG8uZGl2KGUpKTtyZXR1cm4gYT1BLmlzTmVnKCk/YS5uZWcoKTphLG5ldyBpKChzP28uZGl2KGEpOmEpLnRvUHJlY2lzaW9uKHQpKX19KSksUHI9cEEoInNpZ24iLFsidHlwZWQiLCJCaWdOdW1iZXIiLCJGcmFjdGlvbiIsImNvbXBsZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuQmlnTnVtYmVyLG49QS5jb21wbGV4LGk9QS5GcmFjdGlvbjtyZXR1cm4gZSgic2lnbiIse251bWJlcjpKaSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiAwPT09QS5pbT9uKEppKEEucmUpKTpBLnNpZ24oKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdChBLmNtcCgwKSl9LEZyYWN0aW9uOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgaShBLnMsMSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEsITApfX0pKSxVbml0OmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbih0KXtpZighdC5faXNEZXJpdmVkKCkmJjAhPT10LnVuaXRzWzBdLnVuaXQub2Zmc2V0KXRocm93IG5ldyBUeXBlRXJyb3IoInNpZ24gaXMgYW1iaWd1b3VzIGZvciB1bml0cyB3aXRoIG9mZnNldCIpO3JldHVybiBlLmZpbmQoQSx0LnZhbHVlVHlwZSgpKSh0LnZhbHVlKX19KSl9KX0pKSxPcj1wQSgic3FydCIsWyJjb25maWciLCJ0eXBlZCIsIkNvbXBsZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5jb25maWcsdD1BLnR5cGVkLG49QS5Db21wbGV4O3JldHVybiB0KCJzcXJ0Iix7bnVtYmVyOmksQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5zcXJ0KCl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4hQS5pc05lZ2F0aXZlKCl8fGUucHJlZGljdGFibGU/QS5zcXJ0KCk6aShBLnRvTnVtYmVyKCkpfSxVbml0OmZ1bmN0aW9uKEEpe3JldHVybiBBLnBvdyguNSl9fSk7ZnVuY3Rpb24gaShBKXtyZXR1cm4gaXNOYU4oQSk/TmFOOkE+PTB8fGUucHJlZGljdGFibGU/TWF0aC5zcXJ0KEEpOm5ldyBuKEEsMCkuc3FydCgpfX0pKSxWcj1wQSgic3F1YXJlIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKCJzcXVhcmUiLHtudW1iZXI6emksQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5tdWwoQSl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS50aW1lcyhBKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIEEubXVsKEEpfSxVbml0OmZ1bmN0aW9uKEEpe3JldHVybiBBLnBvdygyKX19KX0pKSxXcj0ic3VidHJhY3QiLEtyPXBBKFdyLFsidHlwZWQiLCJtYXRyaXgiLCJlcXVhbFNjYWxhciIsInN1YnRyYWN0U2NhbGFyIiwidW5hcnlNaW51cyIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuZXF1YWxTY2FsYXIsaT1BLnN1YnRyYWN0U2NhbGFyLHI9KEEudW5hcnlNaW51cyxBLkRlbnNlTWF0cml4KSxvPUEuY29uY2F0LHM9ZnIoe3R5cGVkOmV9KSxhPWRyKHt0eXBlZDplfSksQj1wcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYz1Vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksZz1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksRT1Ecih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6b30pO3JldHVybiBlKFdyLHsiYW55LCBhbnkiOml9LEUoe2Vsb3A6aSxTUzpCLERTOnMsU0Q6YSxTczpnLHNTOmN9KSl9KSksWHI9cEEoInhnY2QiLFsidHlwZWQiLCJjb25maWciLCJtYXRyaXgiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5tYXRyaXgsaT1BLkJpZ051bWJlcjtyZXR1cm4gZSgieGdjZCIseyJudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXt2YXIgaT1MaShBLGUpO3JldHVybiJBcnJheSI9PT10Lm1hdHJpeD9pOm4oaSl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXt2YXIgcixvLHMsYSxCPW5ldyBpKDApLGM9bmV3IGkoMSksZz1CLEU9YyxRPWMsdT1CO2lmKCFBLmlzSW50KCl8fCFlLmlzSW50KCkpdGhyb3cgbmV3IEVycm9yKCJQYXJhbWV0ZXJzIGluIGZ1bmN0aW9uIHhnY2QgbXVzdCBiZSBpbnRlZ2VyIG51bWJlcnMiKTtmb3IoOyFlLmlzWmVybygpOylvPUEuZGl2KGUpLmZsb29yKCkscz1BLm1vZChlKSxyPWcsZz1FLm1pbnVzKG8udGltZXMoZykpLEU9cixyPVEsUT11Lm1pbnVzKG8udGltZXMoUSkpLHU9cixBPWUsZT1zO3JldHVybiBhPUEubHQoQik/W0EubmVnKCksRS5uZWcoKSx1Lm5lZygpXTpbQSxBLmlzWmVybygpPzA6RSx1XSwiQXJyYXkiPT09dC5tYXRyaXg/YTpuKGEpfX0pfSkpLFpyPXBBKCJpbnZtb2QiLFsidHlwZWQiLCJjb25maWciLCJCaWdOdW1iZXIiLCJ4Z2NkIiwiZXF1YWwiLCJzbWFsbGVyIiwibW9kIiwiYWRkIiwiaXNJbnRlZ2VyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD0oQS5jb25maWcsQS5CaWdOdW1iZXIpLG49QS54Z2NkLGk9QS5lcXVhbCxyPUEuc21hbGxlcixvPUEubW9kLHM9QS5hZGQsYT1BLmlzSW50ZWdlcjtyZXR1cm4gZSgiaW52bW9kIix7Im51bWJlciwgbnVtYmVyIjpCLCJCaWdOdW1iZXIsIEJpZ051bWJlciI6Qn0pO2Z1bmN0aW9uIEIoQSxlKXtpZighYShBKXx8IWEoZSkpdGhyb3cgbmV3IEVycm9yKCJQYXJhbWV0ZXJzIGluIGZ1bmN0aW9uIGludm1vZCBtdXN0IGJlIGludGVnZXIgbnVtYmVycyIpO2lmKEE9byhBLGUpLGkoZSwwKSl0aHJvdyBuZXcgRXJyb3IoIkRpdmlzb3IgbXVzdCBiZSBub24gemVybyIpO3ZhciBCPW4oQSxlKSxjPWlyKEI9Qi52YWx1ZU9mKCksMiksZz1jWzBdLEU9Y1sxXTtyZXR1cm4gaShnLHQoMSkpPyhFPW8oRSxlKSxyKEUsdCgwKSkmJihFPXMoRSxlKSksRSk6TmFOfX0pKSxfcj1wQSgibWF0QWxnbzA5eFMwU2YiLFsidHlwZWQiLCJlcXVhbFNjYWxhciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5lcXVhbFNjYWxhcjtyZXR1cm4gZnVuY3Rpb24oQSxuLGkpe3ZhciByPUEuX3ZhbHVlcyxvPUEuX2luZGV4LHM9QS5fcHRyLGE9QS5fc2l6ZSxCPUEuX2RhdGF0eXBlLGM9bi5fdmFsdWVzLGc9bi5faW5kZXgsRT1uLl9wdHIsUT1uLl9zaXplLHU9bi5fZGF0YXR5cGU7aWYoYS5sZW5ndGghPT1RLmxlbmd0aCl0aHJvdyBuZXcgX3QoYS5sZW5ndGgsUS5sZW5ndGgpO2lmKGFbMF0hPT1RWzBdfHxhWzFdIT09UVsxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRGltZW5zaW9uIG1pc21hdGNoLiBNYXRyaXggQSAoIithKyIpIG11c3QgbWF0Y2ggTWF0cml4IEIgKCIrUSsiKSIpO3ZhciBsLGg9YVswXSx3PWFbMV0sQz10LEk9MCxNPWk7InN0cmluZyI9PXR5cGVvZiBCJiZCPT09dSYmKGw9QixDPWUuZmluZCh0LFtsLGxdKSxJPWUuY29udmVydCgwLGwpLE09ZS5maW5kKGksW2wsbF0pKTt2YXIgZCxwLG0sRixELFk9ciYmYz9bXTp2b2lkIDAsZj1bXSxOPVtdLFU9WT9bXTp2b2lkIDAseT1bXTtmb3IocD0wO3A8dztwKyspe05bcF09Zi5sZW5ndGg7dmFyIFQ9cCsxO2lmKFUpZm9yKEY9RVtwXSxEPUVbcCsxXSxtPUY7bTxEO20rKyl5W2Q9Z1ttXV09VCxVW2RdPWNbbV07Zm9yKEY9c1twXSxEPXNbcCsxXSxtPUY7bTxEO20rKylpZihkPW9bbV0sVSl7dmFyIHg9eVtkXT09PVQ/VVtkXTpJLFI9TShyW21dLHgpO0MoUixJKXx8KGYucHVzaChkKSxZLnB1c2goUikpfWVsc2UgZi5wdXNoKGQpfXJldHVybiBOW3ddPWYubGVuZ3RoLEEuY3JlYXRlU3BhcnNlTWF0cml4KHt2YWx1ZXM6WSxpbmRleDpmLHB0cjpOLHNpemU6W2gsd10sZGF0YXR5cGU6bH0pfX0pKSxxcj0iZG90TXVsdGlwbHkiLCRyPXBBKHFyLFsidHlwZWQiLCJtYXRyaXgiLCJlcXVhbFNjYWxhciIsIm11bHRpcGx5U2NhbGFyIiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuZXF1YWxTY2FsYXIsaT1BLm11bHRpcGx5U2NhbGFyLHI9QS5jb25jYXQsbz1Ncih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSkscz1fcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYT1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksQj1Ecih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6cn0pO3JldHVybiBlKHFyLEIoe2Vsb3A6aSxTUzpzLERTOm8sU3M6YX0pKX0pKTtmdW5jdGlvbiBBbyhBLGUpe2lmKEEuaXNGaW5pdGUoKSYmIUEuaXNJbnRlZ2VyKCl8fGUuaXNGaW5pdGUoKSYmIWUuaXNJbnRlZ2VyKCkpdGhyb3cgbmV3IEVycm9yKCJJbnRlZ2VycyBleHBlY3RlZCBpbiBmdW5jdGlvbiBiaXRBbmQiKTt2YXIgdD1BLmNvbnN0cnVjdG9yO2lmKEEuaXNOYU4oKXx8ZS5pc05hTigpKXJldHVybiBuZXcgdChOYU4pO2lmKEEuaXNaZXJvKCl8fGUuZXEoLTEpfHxBLmVxKGUpKXJldHVybiBBO2lmKGUuaXNaZXJvKCl8fEEuZXEoLTEpKXJldHVybiBlO2lmKCFBLmlzRmluaXRlKCl8fCFlLmlzRmluaXRlKCkpe2lmKCFBLmlzRmluaXRlKCkmJiFlLmlzRmluaXRlKCkpcmV0dXJuIEEuaXNOZWdhdGl2ZSgpPT09ZS5pc05lZ2F0aXZlKCk/QTpuZXcgdCgwKTtpZighQS5pc0Zpbml0ZSgpKXJldHVybiBlLmlzTmVnYXRpdmUoKT9BOkEuaXNOZWdhdGl2ZSgpP25ldyB0KDApOmU7aWYoIWUuaXNGaW5pdGUoKSlyZXR1cm4gQS5pc05lZ2F0aXZlKCk/ZTplLmlzTmVnYXRpdmUoKT9uZXcgdCgwKTpBfXJldHVybiBubyhBLGUsKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEmZX0pKX1mdW5jdGlvbiBlbyhBKXtpZihBLmlzRmluaXRlKCkmJiFBLmlzSW50ZWdlcigpKXRocm93IG5ldyBFcnJvcigiSW50ZWdlciBleHBlY3RlZCBpbiBmdW5jdGlvbiBiaXROb3QiKTt2YXIgZT1BLmNvbnN0cnVjdG9yLHQ9ZS5wcmVjaXNpb247ZS5jb25maWcoe3ByZWNpc2lvbjoxZTl9KTt2YXIgbj1BLnBsdXMobmV3IGUoMSkpO3JldHVybiBuLnM9LW4uc3x8bnVsbCxlLmNvbmZpZyh7cHJlY2lzaW9uOnR9KSxufWZ1bmN0aW9uIHRvKEEsZSl7aWYoQS5pc0Zpbml0ZSgpJiYhQS5pc0ludGVnZXIoKXx8ZS5pc0Zpbml0ZSgpJiYhZS5pc0ludGVnZXIoKSl0aHJvdyBuZXcgRXJyb3IoIkludGVnZXJzIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGJpdE9yIik7dmFyIHQ9QS5jb25zdHJ1Y3RvcjtpZihBLmlzTmFOKCl8fGUuaXNOYU4oKSlyZXR1cm4gbmV3IHQoTmFOKTt2YXIgbj1uZXcgdCgtMSk7cmV0dXJuIEEuaXNaZXJvKCl8fGUuZXEobil8fEEuZXEoZSk/ZTplLmlzWmVybygpfHxBLmVxKG4pP0E6QS5pc0Zpbml0ZSgpJiZlLmlzRmluaXRlKCk/bm8oQSxlLChmdW5jdGlvbihBLGUpe3JldHVybiBBfGV9KSk6IUEuaXNGaW5pdGUoKSYmIUEuaXNOZWdhdGl2ZSgpJiZlLmlzTmVnYXRpdmUoKXx8QS5pc05lZ2F0aXZlKCkmJiFlLmlzTmVnYXRpdmUoKSYmIWUuaXNGaW5pdGUoKT9uOkEuaXNOZWdhdGl2ZSgpJiZlLmlzTmVnYXRpdmUoKT9BLmlzRmluaXRlKCk/QTplOkEuaXNGaW5pdGUoKT9lOkF9ZnVuY3Rpb24gbm8oQSxlLHQpe3ZhciBuLGkscixvLHMsYT1BLmNvbnN0cnVjdG9yLEI9KyhBLnM8MCksYz0rKGUuczwwKTtpZihCKXtuPWlvKGVvKEEpKTtmb3IodmFyIGc9MDtnPG4ubGVuZ3RoOysrZyluW2ddXj0xfWVsc2Ugbj1pbyhBKTtpZihjKXtpPWlvKGVvKGUpKTtmb3IodmFyIEU9MDtFPGkubGVuZ3RoOysrRSlpW0VdXj0xfWVsc2UgaT1pbyhlKTtuLmxlbmd0aDw9aS5sZW5ndGg/KHI9bixvPWkscz1CKToocj1pLG89bixzPWMpO3ZhciBRPXIubGVuZ3RoLHU9by5sZW5ndGgsbD0xXnQoQixjKSxoPW5ldyBhKDFebCksdz1uZXcgYSgxKSxDPW5ldyBhKDIpLEk9YS5wcmVjaXNpb247Zm9yKGEuY29uZmlnKHtwcmVjaXNpb246MWU5fSk7UT4wOyl0KHJbLS1RXSxvWy0tdV0pPT09bCYmKGg9aC5wbHVzKHcpKSx3PXcudGltZXMoQyk7Zm9yKDt1PjA7KXQocyxvWy0tdV0pPT09bCYmKGg9aC5wbHVzKHcpKSx3PXcudGltZXMoQyk7cmV0dXJuIGEuY29uZmlnKHtwcmVjaXNpb246SX0pLDA9PT1sJiYoaC5zPS1oLnMpLGh9ZnVuY3Rpb24gaW8oQSl7Zm9yKHZhciBlPUEuZCx0PWVbMF0rIiIsbj0xO248ZS5sZW5ndGg7KytuKXtmb3IodmFyIGk9ZVtuXSsiIixyPTctaS5sZW5ndGg7ci0tOylpPSIwIitpO3QrPWl9Zm9yKHZhciBvPXQubGVuZ3RoOyIwIj09PXQuY2hhckF0KG8pOylvLS07dmFyIHM9QS5lLGE9dC5zbGljZSgwLG8rMXx8MSksQj1hLmxlbmd0aDtpZihzPjApaWYoKytzPkIpZm9yKHMtPUI7cy0tOylhKz0iMCI7ZWxzZSBzPEImJihhPWEuc2xpY2UoMCxzKSsiLiIrYS5zbGljZShzKSk7Zm9yKHZhciBjPVswXSxnPTA7ZzxhLmxlbmd0aDspe2Zvcih2YXIgRT1jLmxlbmd0aDtFLS07KWNbRV0qPTEwO2NbMF0rPXBhcnNlSW50KGEuY2hhckF0KGcrKykpO2Zvcih2YXIgUT0wO1E8Yy5sZW5ndGg7KytRKWNbUV0+MSYmKG51bGwhPT1jW1ErMV0mJnZvaWQgMCE9PWNbUSsxXXx8KGNbUSsxXT0wKSxjW1ErMV0rPWNbUV0+PjEsY1tRXSY9MSl9cmV0dXJuIGMucmV2ZXJzZSgpfWZ1bmN0aW9uIHJvKEEsZSl7aWYoQS5pc0Zpbml0ZSgpJiYhQS5pc0ludGVnZXIoKXx8ZS5pc0Zpbml0ZSgpJiYhZS5pc0ludGVnZXIoKSl0aHJvdyBuZXcgRXJyb3IoIkludGVnZXJzIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGJpdFhvciIpO3ZhciB0PUEuY29uc3RydWN0b3I7aWYoQS5pc05hTigpfHxlLmlzTmFOKCkpcmV0dXJuIG5ldyB0KE5hTik7aWYoQS5pc1plcm8oKSlyZXR1cm4gZTtpZihlLmlzWmVybygpKXJldHVybiBBO2lmKEEuZXEoZSkpcmV0dXJuIG5ldyB0KDApO3ZhciBuPW5ldyB0KC0xKTtyZXR1cm4gQS5lcShuKT9lbyhlKTplLmVxKG4pP2VvKEEpOkEuaXNGaW5pdGUoKSYmZS5pc0Zpbml0ZSgpP25vKEEsZSwoZnVuY3Rpb24oQSxlKXtyZXR1cm4gQV5lfSkpOkEuaXNGaW5pdGUoKXx8ZS5pc0Zpbml0ZSgpP25ldyB0KEEuaXNOZWdhdGl2ZSgpPT09ZS5pc05lZ2F0aXZlKCk/MS8wOi0xLzApOm59ZnVuY3Rpb24gb28oQSxlKXtpZihBLmlzRmluaXRlKCkmJiFBLmlzSW50ZWdlcigpfHxlLmlzRmluaXRlKCkmJiFlLmlzSW50ZWdlcigpKXRocm93IG5ldyBFcnJvcigiSW50ZWdlcnMgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gbGVmdFNoaWZ0Iik7dmFyIHQ9QS5jb25zdHJ1Y3RvcjtyZXR1cm4gQS5pc05hTigpfHxlLmlzTmFOKCl8fGUuaXNOZWdhdGl2ZSgpJiYhZS5pc1plcm8oKT9uZXcgdChOYU4pOkEuaXNaZXJvKCl8fGUuaXNaZXJvKCk/QTpBLmlzRmluaXRlKCl8fGUuaXNGaW5pdGUoKT9lLmx0KDU1KT9BLnRpbWVzKE1hdGgucG93KDIsZS50b051bWJlcigpKSsiIik6QS50aW1lcyhuZXcgdCgyKS5wb3coZSkpOm5ldyB0KE5hTil9ZnVuY3Rpb24gc28oQSxlKXtpZihBLmlzRmluaXRlKCkmJiFBLmlzSW50ZWdlcigpfHxlLmlzRmluaXRlKCkmJiFlLmlzSW50ZWdlcigpKXRocm93IG5ldyBFcnJvcigiSW50ZWdlcnMgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gcmlnaHRBcml0aFNoaWZ0Iik7dmFyIHQ9QS5jb25zdHJ1Y3RvcjtyZXR1cm4gQS5pc05hTigpfHxlLmlzTmFOKCl8fGUuaXNOZWdhdGl2ZSgpJiYhZS5pc1plcm8oKT9uZXcgdChOYU4pOkEuaXNaZXJvKCl8fGUuaXNaZXJvKCk/QTplLmlzRmluaXRlKCk/ZS5sdCg1NSk/QS5kaXYoTWF0aC5wb3coMixlLnRvTnVtYmVyKCkpKyIiKS5mbG9vcigpOkEuZGl2KG5ldyB0KDIpLnBvdyhlKSkuZmxvb3IoKTpBLmlzTmVnYXRpdmUoKT9uZXcgdCgtMSk6QS5pc0Zpbml0ZSgpP25ldyB0KDApOm5ldyB0KE5hTil9bigzMzc0KTt2YXIgYW89Im51bWJlciwgbnVtYmVyIjtmdW5jdGlvbiBCbyhBLGUpe2lmKCFWKEEpfHwhVihlKSl0aHJvdyBuZXcgRXJyb3IoIkludGVnZXJzIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGJpdEFuZCIpO3JldHVybiBBJmV9ZnVuY3Rpb24gY28oQSl7aWYoIVYoQSkpdGhyb3cgbmV3IEVycm9yKCJJbnRlZ2VyIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGJpdE5vdCIpO3JldHVybn5BfWZ1bmN0aW9uIGdvKEEsZSl7aWYoIVYoQSl8fCFWKGUpKXRocm93IG5ldyBFcnJvcigiSW50ZWdlcnMgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gYml0T3IiKTtyZXR1cm4gQXxlfWZ1bmN0aW9uIEVvKEEsZSl7aWYoIVYoQSl8fCFWKGUpKXRocm93IG5ldyBFcnJvcigiSW50ZWdlcnMgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gYml0WG9yIik7cmV0dXJuIEFeZX1mdW5jdGlvbiBRbyhBLGUpe2lmKCFWKEEpfHwhVihlKSl0aHJvdyBuZXcgRXJyb3IoIkludGVnZXJzIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGxlZnRTaGlmdCIpO3JldHVybiBBPDxlfWZ1bmN0aW9uIHVvKEEsZSl7aWYoIVYoQSl8fCFWKGUpKXRocm93IG5ldyBFcnJvcigiSW50ZWdlcnMgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gcmlnaHRBcml0aFNoaWZ0Iik7cmV0dXJuIEE+PmV9ZnVuY3Rpb24gbG8oQSxlKXtpZighVihBKXx8IVYoZSkpdGhyb3cgbmV3IEVycm9yKCJJbnRlZ2VycyBleHBlY3RlZCBpbiBmdW5jdGlvbiByaWdodExvZ1NoaWZ0Iik7cmV0dXJuIEE+Pj5lfUJvLnNpZ25hdHVyZT1hbyxjby5zaWduYXR1cmU9Im51bWJlciIsZ28uc2lnbmF0dXJlPWFvLEVvLnNpZ25hdHVyZT1hbyxRby5zaWduYXR1cmU9YW8sdW8uc2lnbmF0dXJlPWFvLGxvLnNpZ25hdHVyZT1hbzt2YXIgaG89cEEoImJpdEFuZCIsWyJ0eXBlZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuZXF1YWxTY2FsYXIsaT1BLmNvbmNhdCxyPU1yKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KSxvPVNyKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KSxzPXJyKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KTtyZXR1cm4gZSgiYml0QW5kIix7Im51bWJlciwgbnVtYmVyIjpCbywiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOkFvfSxEcih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6aX0pKHtTUzpvLERTOnIsU3M6c30pKX0pKSx3bz1wQSgiYml0Tm90IixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJuIGUoImJpdE5vdCIse251bWJlcjpjbyxCaWdOdW1iZXI6ZW8sIkFycmF5IHwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEduKGUsQSl9fSkpfSl9KSksQ289cEEoImJpdE9yIixbInR5cGVkIiwibWF0cml4IiwiZXF1YWxTY2FsYXIiLCJEZW5zZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmVxdWFsU2NhbGFyLGk9QS5EZW5zZU1hdHJpeCxyPUEuY29uY2F0LG89ZnIoe3R5cGVkOmV9KSxzPU5yKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KSxhPVVyKHt0eXBlZDplLERlbnNlTWF0cml4Oml9KTtyZXR1cm4gZSgiYml0T3IiLHsibnVtYmVyLCBudW1iZXIiOmdvLCJCaWdOdW1iZXIsIEJpZ051bWJlciI6dG99LERyKHt0eXBlZDplLG1hdHJpeDp0LGNvbmNhdDpyfSkoe1NTOnMsRFM6byxTczphfSkpfSkpLElvPXBBKCJtYXRBbGdvMDd4U1NmIixbInR5cGVkIiwiRGVuc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuRGVuc2VNYXRyaXg7cmV0dXJuIGZ1bmN0aW9uKEEsaSxyKXt2YXIgbz1BLl9zaXplLHM9QS5fZGF0YXR5cGUsYT1pLl9zaXplLEI9aS5fZGF0YXR5cGU7aWYoby5sZW5ndGghPT1hLmxlbmd0aCl0aHJvdyBuZXcgX3Qoby5sZW5ndGgsYS5sZW5ndGgpO2lmKG9bMF0hPT1hWzBdfHxvWzFdIT09YVsxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRGltZW5zaW9uIG1pc21hdGNoLiBNYXRyaXggQSAoIitvKyIpIG11c3QgbWF0Y2ggTWF0cml4IEIgKCIrYSsiKSIpO3ZhciBjLGcsRSxRPW9bMF0sdT1vWzFdLGw9MCxoPXI7InN0cmluZyI9PXR5cGVvZiBzJiZzPT09QiYmKGM9cyxsPWUuY29udmVydCgwLGMpLGg9ZS5maW5kKHIsW2MsY10pKTt2YXIgdz1bXTtmb3IoZz0wO2c8UTtnKyspd1tnXT1bXTt2YXIgQz1bXSxJPVtdLE09W10sZD1bXTtmb3IoRT0wO0U8dTtFKyspe3ZhciBwPUUrMTtmb3IobihBLEUsTSxDLHApLG4oaSxFLGQsSSxwKSxnPTA7ZzxRO2crKyl7dmFyIG09TVtnXT09PXA/Q1tnXTpsLEY9ZFtnXT09PXA/SVtnXTpsO3dbZ11bRV09aChtLEYpfX1yZXR1cm4gbmV3IHQoe2RhdGE6dyxzaXplOltRLHVdLGRhdGF0eXBlOmN9KX07ZnVuY3Rpb24gbihBLGUsdCxuLGkpe2Zvcih2YXIgcj1BLl92YWx1ZXMsbz1BLl9pbmRleCxzPUEuX3B0cixhPXNbZV0sQj1zW2UrMV07YTxCO2ErKyl7dmFyIGM9b1thXTt0W2NdPWksbltjXT1yW2FdfX19KSksTW89cEEoImJpdFhvciIsWyJ0eXBlZCIsIm1hdHJpeCIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuRGVuc2VNYXRyaXgsaT1BLmNvbmNhdCxyPWRyKHt0eXBlZDplfSksbz1Jbyh7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpufSkscz1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpufSk7cmV0dXJuIGUoImJpdFhvciIseyJudW1iZXIsIG51bWJlciI6RW8sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpyb30sRHIoe3R5cGVkOmUsbWF0cml4OnQsY29uY2F0Oml9KSh7U1M6byxEUzpyLFNzOnN9KSl9KSkscG89cEEoImFyZyIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKCJhcmciLHtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIE1hdGguYXRhbjIoMCxBKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmNvbnN0cnVjdG9yLmF0YW4yKDAsQSl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYXJnKCl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLG1vPXBBKCJjb25qIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJuIGUoImNvbmoiLHsibnVtYmVyIHwgQmlnTnVtYmVyIHwgRnJhY3Rpb24iOmZ1bmN0aW9uKEEpe3JldHVybiBBfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmNvbmp1Z2F0ZSgpfSwiQXJyYXkgfCBNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gR24oZSxBKX19KSl9KX0pKSxGbz1wQSgiaW0iLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZDtyZXR1cm4gZSgiaW0iLHtudW1iZXI6ZnVuY3Rpb24oKXtyZXR1cm4gMH0sIkJpZ051bWJlciB8IEZyYWN0aW9uIjpmdW5jdGlvbihBKXtyZXR1cm4gQS5tdWwoMCl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuaW19LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLERvPXBBKCJyZSIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKCJyZSIseyJudW1iZXIgfCBCaWdOdW1iZXIgfCBGcmFjdGlvbiI6ZnVuY3Rpb24oQSl7cmV0dXJuIEF9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEucmV9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLFlvPSJudW1iZXIsIG51bWJlciI7ZnVuY3Rpb24gZm8oQSl7cmV0dXJuIUF9ZnVuY3Rpb24gTm8oQSxlKXtyZXR1cm4hKCFBJiYhZSl9ZnVuY3Rpb24gVW8oQSxlKXtyZXR1cm4hIUEhPSEhZX1mdW5jdGlvbiB5byhBLGUpe3JldHVybiEoIUF8fCFlKX1mby5zaWduYXR1cmU9Im51bWJlciIsTm8uc2lnbmF0dXJlPVlvLFVvLnNpZ25hdHVyZT1Zbyx5by5zaWduYXR1cmU9WW87dmFyIFRvPXBBKCJub3QiLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZDtyZXR1cm4gZSgibm90Iix7Im51bGwgfCB1bmRlZmluZWQiOmZ1bmN0aW9uKCl7cmV0dXJuITB9LG51bWJlcjpmbyxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiAwPT09QS5yZSYmMD09PUEuaW19LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS5pc1plcm8oKXx8QS5pc05hTigpfSxVbml0OmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gZS5maW5kKEEsdC52YWx1ZVR5cGUoKSkodC52YWx1ZSl9fSkpLCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLHhvPXBBKCJvciIsWyJ0eXBlZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiRGVuc2VNYXRyaXgiLCJjb25jYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5lcXVhbFNjYWxhcixpPUEuRGVuc2VNYXRyaXgscj1BLmNvbmNhdCxvPWRyKHt0eXBlZDplfSkscz1wcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYT1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDppfSksQj1Ecih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6cn0pO3JldHVybiBlKCJvciIseyJudW1iZXIsIG51bWJlciI6Tm8sIkNvbXBsZXgsIENvbXBsZXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIDAhPT1BLnJlfHwwIT09QS5pbXx8MCE9PWUucmV8fDAhPT1lLmltfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIUEuaXNaZXJvKCkmJiFBLmlzTmFOKCl8fCFlLmlzWmVybygpJiYhZS5pc05hTigpfSwiVW5pdCwgVW5pdCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIEEoZS52YWx1ZXx8MCx0LnZhbHVlfHwwKX19KSl9LEIoe1NTOnMsRFM6byxTczphfSkpfSkpLFJvPXBBKCJ4b3IiLFsidHlwZWQiLCJtYXRyaXgiLCJEZW5zZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLkRlbnNlTWF0cml4LGk9QS5jb25jYXQscj1kcih7dHlwZWQ6ZX0pLG89SW8oe3R5cGVkOmUsRGVuc2VNYXRyaXg6bn0pLHM9b3Ioe3R5cGVkOmUsRGVuc2VNYXRyaXg6bn0pLGE9RHIoe3R5cGVkOmUsbWF0cml4OnQsY29uY2F0Oml9KTtyZXR1cm4gZSgieG9yIix7Im51bWJlciwgbnVtYmVyIjpVbywiQ29tcGxleCwgQ29tcGxleCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4oMCE9PUEucmV8fDAhPT1BLmltKSE9KDAhPT1lLnJlfHwwIT09ZS5pbSl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4oIUEuaXNaZXJvKCkmJiFBLmlzTmFOKCkpIT0oIWUuaXNaZXJvKCkmJiFlLmlzTmFOKCkpfSwiVW5pdCwgVW5pdCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIEEoZS52YWx1ZXx8MCx0LnZhbHVlfHwwKX19KSl9LGEoe1NTOm8sRFM6cixTczpzfSkpfSkpLEdvPXBBKCJjb25jYXQiLFsidHlwZWQiLCJtYXRyaXgiLCJpc0ludGVnZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCxuPUEubWF0cml4LGk9QS5pc0ludGVnZXI7cmV0dXJuIGUoImNvbmNhdCIseyIuLi5BcnJheSB8IE1hdHJpeCB8IG51bWJlciB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSl7dmFyIGUsbyxzPUEubGVuZ3RoLGE9LTEsQj0hMSxjPVtdO2ZvcihlPTA7ZTxzO2UrKyl7dmFyIEU9QVtlXTtpZihnKEUpJiYoQj0hMCksdChFKXx8cihFKSl7aWYoZSE9PXMtMSl0aHJvdyBuZXcgRXJyb3IoIkRpbWVuc2lvbiBtdXN0IGJlIHNwZWNpZmllZCBhcyBsYXN0IGFyZ3VtZW50Iik7aWYobz1hLGE9RS52YWx1ZU9mKCksIWkoYSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiSW50ZWdlciBudW1iZXIgZXhwZWN0ZWQgZm9yIGRpbWVuc2lvbiIpO2lmKGE8MHx8ZT4wJiZhPm8pdGhyb3cgbmV3IHF0KGEsbysxKX1lbHNle3ZhciBRPXVBKEUpLnZhbHVlT2YoKSx1PSR0KFEpO2lmKGNbZV09USxvPWEsYT11Lmxlbmd0aC0xLGU+MCYmYSE9PW8pdGhyb3cgbmV3IF90KG8rMSxhKzEpfX1pZigwPT09Yy5sZW5ndGgpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJBdCBsZWFzdCBvbmUgbWF0cml4IGV4cGVjdGVkIik7Zm9yKHZhciBsPWMuc2hpZnQoKTtjLmxlbmd0aDspbD1wbihsLGMuc2hpZnQoKSxhKTtyZXR1cm4gQj9uKGwpOmx9LCIuLi5zdHJpbmciOmZ1bmN0aW9uKEEpe3JldHVybiBBLmpvaW4oIiIpfX0pfSkpLFNvPXBBKCJjb2x1bW4iLFsidHlwZWQiLCJJbmRleCIsIm1hdHJpeCIsInJhbmdlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkluZGV4LG49QS5tYXRyaXgsaT1BLnJhbmdlO3JldHVybiBlKCJjb2x1bW4iLHsiTWF0cml4LCBudW1iZXIiOnIsIkFycmF5LCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHIobih1QShBKSksZSkudmFsdWVPZigpfX0pO2Z1bmN0aW9uIHIoQSxlKXtpZigyIT09QS5zaXplKCkubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiT25seSB0d28gZGltZW5zaW9uYWwgbWF0cml4IGlzIHN1cHBvcnRlZCIpO3RuKGUsQS5zaXplKClbMV0pO3ZhciByPWkoMCxBLnNpemUoKVswXSksbz1uZXcgdChyLGUpLHM9QS5zdWJzZXQobyk7cmV0dXJuIGcocyk/czpuKFtbc11dKX19KSksYm89cEEoImNvdW50IixbInR5cGVkIiwic2l6ZSIsInByb2QiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuc2l6ZSxuPUEucHJvZDtyZXR1cm4gZSgiY291bnQiLHtzdHJpbmc6ZnVuY3Rpb24oQSl7cmV0dXJuIEEubGVuZ3RofSwiTWF0cml4IHwgQXJyYXkiOmZ1bmN0aW9uKEEpe3JldHVybiBuKHQoQSkpfX0pfSkpLEhvPXBBKCJjcm9zcyIsWyJ0eXBlZCIsIm1hdHJpeCIsInN1YnRyYWN0IiwibXVsdGlwbHkiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5zdWJ0cmFjdCxpPUEubXVsdGlwbHk7cmV0dXJuIGUoImNyb3NzIix7Ik1hdHJpeCwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiB0KHIoQS50b0FycmF5KCksZS50b0FycmF5KCkpKX0sIk1hdHJpeCwgQXJyYXkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHQocihBLnRvQXJyYXkoKSxlKSl9LCJBcnJheSwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiB0KHIoQSxlLnRvQXJyYXkoKSkpfSwiQXJyYXksIEFycmF5IjpyfSk7ZnVuY3Rpb24gcihBLGUpe3ZhciB0PU1hdGgubWF4KCR0KEEpLmxlbmd0aCwkdChlKS5sZW5ndGgpO0E9Qm4oQSksZT1CbihlKTt2YXIgcj0kdChBKSxvPSR0KGUpO2lmKDEhPT1yLmxlbmd0aHx8MSE9PW8ubGVuZ3RofHwzIT09clswXXx8MyE9PW9bMF0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIlZlY3RvcnMgd2l0aCBsZW5ndGggMyBleHBlY3RlZCAoU2l6ZSBBID0gWyIrci5qb2luKCIsICIpKyJdLCBCID0gWyIrby5qb2luKCIsICIpKyJdKSIpO3ZhciBzPVtuKGkoQVsxXSxlWzJdKSxpKEFbMl0sZVsxXSkpLG4oaShBWzJdLGVbMF0pLGkoQVswXSxlWzJdKSksbihpKEFbMF0sZVsxXSksaShBWzFdLGVbMF0pKV07cmV0dXJuIHQ+MT9bc106c319KSksdm89cEEoImRpYWciLFsidHlwZWQiLCJtYXRyaXgiLCJEZW5zZU1hdHJpeCIsIlNwYXJzZU1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLkRlbnNlTWF0cml4LGk9QS5TcGFyc2VNYXRyaXg7cmV0dXJuIGUoImRpYWciLHtBcnJheTpmdW5jdGlvbihBKXtyZXR1cm4gcihBLDAsJHQoQSksbnVsbCl9LCJBcnJheSwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiByKEEsZSwkdChBKSxudWxsKX0sIkFycmF5LCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHIoQSxlLnRvTnVtYmVyKCksJHQoQSksbnVsbCl9LCJBcnJheSwgc3RyaW5nIjpmdW5jdGlvbihBLGUpe3JldHVybiByKEEsMCwkdChBKSxlKX0sIkFycmF5LCBudW1iZXIsIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiByKEEsZSwkdChBKSx0KX0sIkFycmF5LCBCaWdOdW1iZXIsIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiByKEEsZS50b051bWJlcigpLCR0KEEpLHQpfSxNYXRyaXg6ZnVuY3Rpb24oQSl7cmV0dXJuIHIoQSwwLEEuc2l6ZSgpLEEuc3RvcmFnZSgpKX0sIk1hdHJpeCwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiByKEEsZSxBLnNpemUoKSxBLnN0b3JhZ2UoKSl9LCJNYXRyaXgsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcihBLGUudG9OdW1iZXIoKSxBLnNpemUoKSxBLnN0b3JhZ2UoKSl9LCJNYXRyaXgsIHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcihBLDAsQS5zaXplKCksZSl9LCJNYXRyaXgsIG51bWJlciwgc3RyaW5nIjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIHIoQSxlLEEuc2l6ZSgpLHQpfSwiTWF0cml4LCBCaWdOdW1iZXIsIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiByKEEsZS50b051bWJlcigpLEEuc2l6ZSgpLHQpfX0pO2Z1bmN0aW9uIHIoQSxlLHIsbyl7aWYoIVYoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiU2Vjb25kIHBhcmFtZXRlciBpbiBmdW5jdGlvbiBkaWFnIG11c3QgYmUgYW4gaW50ZWdlciIpO3ZhciBzPWU+MD9lOjAsYT1lPDA/LWU6MDtzd2l0Y2goci5sZW5ndGgpe2Nhc2UgMTpyZXR1cm4gZnVuY3Rpb24oQSxlLHQscixvLHMpe3ZhciBhPVtyK28scitzXTtpZih0JiYic3BhcnNlIiE9PXQmJiJkZW5zZSIhPT10KXRocm93IG5ldyBUeXBlRXJyb3IoIlVua25vd24gbWF0cml4IHR5cGUgIi5jb25jYXQodCwnIicpKTt2YXIgQj0ic3BhcnNlIj09PXQ/aS5kaWFnb25hbChhLEEsZSk6bi5kaWFnb25hbChhLEEsZSk7cmV0dXJuIG51bGwhPT10P0I6Qi52YWx1ZU9mKCl9KEEsZSxvLHJbMF0sYSxzKTtjYXNlIDI6cmV0dXJuIGZ1bmN0aW9uKEEsZSxuLGkscixvKXtpZihnKEEpKXt2YXIgcz1BLmRpYWdvbmFsKGUpO3JldHVybiBudWxsIT09bj9uIT09cy5zdG9yYWdlKCk/dChzLG4pOnM6cy52YWx1ZU9mKCl9Zm9yKHZhciBhPU1hdGgubWluKGlbMF0tcixpWzFdLW8pLEI9W10sYz0wO2M8YTtjKyspQltjXT1BW2Mrcl1bYytvXTtyZXR1cm4gbnVsbCE9PW4/dChCKTpCfShBLGUsbyxyLGEscyl9dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBmb3IgZnVuY3Rpb24gZGlhZyBtdXN0IGJlIDIgZGltZW5zaW9uYWwiKX19KSk7ZnVuY3Rpb24ga28oQSxlLHQsbixpKXtpZihPLmlzVHlwZWRGdW5jdGlvbihBKSl7dmFyIHI9W2UsdCxuXSxvPU8ucmVzb2x2ZShBLHIpO2lmKG8pcmV0dXJuIGcoby5pbXBsZW1lbnRhdGlvbixyKTt2YXIgcz1bZSx0XSxhPU8ucmVzb2x2ZShBLHMpO2lmKGEpcmV0dXJuIGcoYS5pbXBsZW1lbnRhdGlvbixzKTt2YXIgQj1bZV0sYz1PLnJlc29sdmUoQSxCKTtyZXR1cm4gYz9nKGMuaW1wbGVtZW50YXRpb24sQik6ZyhBLHIpfXJldHVybiBBKGUsdCxuKTtmdW5jdGlvbiBnKHIsbyl7dHJ5e3JldHVybiByLmFwcGx5KHIsbyl9Y2F0Y2gocil7dmFyIHM7aWYociBpbnN0YW5jZW9mIFR5cGVFcnJvciYmIndyb25nVHlwZSI9PT0obnVsbD09PShzPXIuZGF0YSl8fHZvaWQgMD09PXM/dm9pZCAwOnMuY2F0ZWdvcnkpKXt2YXIgYT1bXTt0aHJvdyBhLnB1c2goInZhbHVlOiAiLmNvbmNhdChQKGUpKSksby5sZW5ndGg+PTImJmEucHVzaCgiaW5kZXg6ICIuY29uY2F0KFAodCkpKSxvLmxlbmd0aD49MyYmYS5wdXNoKCJhcnJheTogIi5jb25jYXQoUChuKSkpLG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uICIuY29uY2F0KGksIiBjYW5ub3QgYXBwbHkgY2FsbGJhY2sgYXJndW1lbnRzICIpKyIiLmNvbmNhdChBLm5hbWUsIigiKS5jb25jYXQoYS5qb2luKCIsICIpLCIpIGF0IGluZGV4ICIpLmNvbmNhdChKU09OLnN0cmluZ2lmeSh0KSkpfXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uICIuY29uY2F0KGksIiBjYW5ub3QgYXBwbHkgY2FsbGJhY2sgYXJndW1lbnRzICIpKyJ0byBmdW5jdGlvbiAiLmNvbmNhdChBLm5hbWUsIjogIikuY29uY2F0KHIubWVzc2FnZSkpfX19dmFyIGpvPXBBKCJmaWx0ZXIiLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7cmV0dXJuKDAsQS50eXBlZCkoImZpbHRlciIseyJBcnJheSwgZnVuY3Rpb24iOkpvLCJNYXRyaXgsIGZ1bmN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmNyZWF0ZShKbyhBLnRvQXJyYXkoKSxlKSl9LCJBcnJheSwgUmVnRXhwIjpsbiwiTWF0cml4LCBSZWdFeHAiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuY3JlYXRlKGxuKEEudG9BcnJheSgpLGUpKX19KX0pKTtmdW5jdGlvbiBKbyhBLGUpe3JldHVybiB1bihBLChmdW5jdGlvbihBLHQsbil7cmV0dXJuIGtvKGUsQSxbdF0sbiwiZmlsdGVyIil9KSl9dmFyIHpvPSJmbGF0dGVuIixMbz1wQSh6byxbInR5cGVkIiwibWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeDtyZXR1cm4gZSh6byx7QXJyYXk6ZnVuY3Rpb24oQSl7cmV0dXJuIGduKEEpfSxNYXRyaXg6ZnVuY3Rpb24oQSl7dmFyIGU9Z24oQS50b0FycmF5KCkpO3JldHVybiB0KGUpfX0pfSkpLFBvPSJmb3JFYWNoIixPbz1wQShQbyxbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKFBvLHsiQXJyYXksIGZ1bmN0aW9uIjpWbywiTWF0cml4LCBmdW5jdGlvbiI6ZnVuY3Rpb24oQSxlKXtBLmZvckVhY2goZSl9fSl9KSk7ZnVuY3Rpb24gVm8oQSxlKXshZnVuY3Rpb24gdChuLGkpe2lmKCFBcnJheS5pc0FycmF5KG4pKXJldHVybiBrbyhlLG4saSxBLCJmb3JFYWNoIik7UW4obiwoZnVuY3Rpb24oQSxlKXt0KEEsaS5jb25jYXQoZSkpfSkpfShBLFtdKX12YXIgV289ImdldE1hdHJpeERhdGFUeXBlIixLbz1wQShXbyxbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKFdvLHtBcnJheTpmdW5jdGlvbihBKXtyZXR1cm4gSW4oQSxQKX0sTWF0cml4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmdldERhdGFUeXBlKCl9fSl9KSksWG89ImlkZW50aXR5Iixabz1wQShYbyxbInR5cGVkIiwiY29uZmlnIiwibWF0cml4IiwiQmlnTnVtYmVyIiwiRGVuc2VNYXRyaXgiLCJTcGFyc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5tYXRyaXgsaT1BLkJpZ051bWJlcixvPUEuRGVuc2VNYXRyaXgscz1BLlNwYXJzZU1hdHJpeDtyZXR1cm4gZShYbyx7IiI6ZnVuY3Rpb24oKXtyZXR1cm4iTWF0cml4Ij09PXQubWF0cml4P24oW10pOltdfSxzdHJpbmc6ZnVuY3Rpb24oQSl7cmV0dXJuIG4oQSl9LCJudW1iZXIgfCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEpe3JldHVybiBCKEEsQSwiTWF0cml4Ij09PXQubWF0cml4PyJkZW5zZSI6dm9pZCAwKX0sIm51bWJlciB8IEJpZ051bWJlciwgc3RyaW5nIjpmdW5jdGlvbihBLGUpe3JldHVybiBCKEEsQSxlKX0sIm51bWJlciB8IEJpZ051bWJlciwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBCKEEsZSwiTWF0cml4Ij09PXQubWF0cml4PyJkZW5zZSI6dm9pZCAwKX0sIm51bWJlciB8IEJpZ051bWJlciwgbnVtYmVyIHwgQmlnTnVtYmVyLCBzdHJpbmciOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gQihBLGUsdCl9LEFycmF5OmZ1bmN0aW9uKEEpe3JldHVybiBhKEEpfSwiQXJyYXksIHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gYShBLGUpfSxNYXRyaXg6ZnVuY3Rpb24oQSl7cmV0dXJuIGEoQS52YWx1ZU9mKCksQS5zdG9yYWdlKCkpfSwiTWF0cml4LCBzdHJpbmciOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGEoQS52YWx1ZU9mKCksZSl9fSk7ZnVuY3Rpb24gYShBLGUpe3N3aXRjaChBLmxlbmd0aCl7Y2FzZSAwOnJldHVybiBlP24oZSk6W107Y2FzZSAxOnJldHVybiBCKEFbMF0sQVswXSxlKTtjYXNlIDI6cmV0dXJuIEIoQVswXSxBWzFdLGUpO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJWZWN0b3IgY29udGFpbmluZyB0d28gdmFsdWVzIGV4cGVjdGVkIil9fWZ1bmN0aW9uIEIoQSxlLHQpe3ZhciBuPXIoQSl8fHIoZSk/aTpudWxsO2lmKHIoQSkmJihBPUEudG9OdW1iZXIoKSkscihlKSYmKGU9ZS50b051bWJlcigpKSwhVihBKXx8QTwxKXRocm93IG5ldyBFcnJvcigiUGFyYW1ldGVycyBpbiBmdW5jdGlvbiBpZGVudGl0eSBtdXN0IGJlIHBvc2l0aXZlIGludGVnZXJzIik7aWYoIVYoZSl8fGU8MSl0aHJvdyBuZXcgRXJyb3IoIlBhcmFtZXRlcnMgaW4gZnVuY3Rpb24gaWRlbnRpdHkgbXVzdCBiZSBwb3NpdGl2ZSBpbnRlZ2VycyIpO3ZhciBhPW4/bmV3IGkoMSk6MSxCPW4/bmV3IG4oMCk6MCxjPVtBLGVdO2lmKHQpe2lmKCJzcGFyc2UiPT09dClyZXR1cm4gcy5kaWFnb25hbChjLGEsMCxCKTtpZigiZGVuc2UiPT09dClyZXR1cm4gby5kaWFnb25hbChjLGEsMCxCKTt0aHJvdyBuZXcgVHlwZUVycm9yKCdVbmtub3duIG1hdHJpeCB0eXBlICInLmNvbmNhdCh0LCciJykpfWZvcih2YXIgZz1ybihbXSxjLEIpLEU9QTxlP0E6ZSxRPTA7UTxFO1ErKylnW1FdW1FdPWE7cmV0dXJuIGd9fSkpLF9vPXBBKCJrcm9uIixbInR5cGVkIiwibWF0cml4IiwibXVsdGlwbHlTY2FsYXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5tdWx0aXBseVNjYWxhcjtyZXR1cm4gZSgia3JvbiIseyJNYXRyaXgsIE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdChpKEEudG9BcnJheSgpLGUudG9BcnJheSgpKSl9LCJNYXRyaXgsIEFycmF5IjpmdW5jdGlvbihBLGUpe3JldHVybiB0KGkoQS50b0FycmF5KCksZSkpfSwiQXJyYXksIE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdChpKEEsZS50b0FycmF5KCkpKX0sIkFycmF5LCBBcnJheSI6aX0pO2Z1bmN0aW9uIGkoQSxlKXtpZigxPT09JHQoQSkubGVuZ3RoJiYoQT1bQV0pLDE9PT0kdChlKS5sZW5ndGgmJihlPVtlXSksJHQoQSkubGVuZ3RoPjJ8fCR0KGUpLmxlbmd0aD4yKXRocm93IG5ldyBSYW5nZUVycm9yKCJWZWN0b3JzIHdpdGggZGltZW5zaW9ucyBncmVhdGVyIHRoZW4gMiBhcmUgbm90IHN1cHBvcnRlZCBleHBlY3RlZCAoU2l6ZSB4ID0gIitKU09OLnN0cmluZ2lmeShBLmxlbmd0aCkrIiwgeSA9ICIrSlNPTi5zdHJpbmdpZnkoZS5sZW5ndGgpKyIpIik7dmFyIHQ9W10saT1bXTtyZXR1cm4gQS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBlLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGk9W10sdC5wdXNoKGkpLEEubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gZS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBpLnB1c2gobihBLGUpKX0pKX0pKX0pKX0pKSYmdH19KSkscW89cEEoIm1hcCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgibWFwIix7IkFycmF5LCBmdW5jdGlvbiI6JG8sIk1hdHJpeCwgZnVuY3Rpb24iOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEubWFwKGUpfX0pfSkpO2Z1bmN0aW9uICRvKEEsZSl7cmV0dXJuIGZ1bmN0aW9uIHQobixpKXtyZXR1cm4gQXJyYXkuaXNBcnJheShuKT9uLm1hcCgoZnVuY3Rpb24oQSxlKXtyZXR1cm4gdChBLGkuY29uY2F0KGUpKX0pKTprbyhlLG4saSxBLCJtYXAiKX0oQSxbXSl9dmFyIEFzPXBBKCJkaWZmIixbInR5cGVkIiwibWF0cml4Iiwic3VidHJhY3QiLCJudW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5zdWJ0cmFjdCxpPUEubnVtYmVyO3JldHVybiBlKCJkaWZmIix7IkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gZyhBKT90KG8oQS50b0FycmF5KCkpKTpvKEEpfSwiQXJyYXkgfCBNYXRyaXgsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtpZighVihlKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRGltZW5zaW9uIG11c3QgYmUgYSB3aG9sZSBudW1iZXIiKTtyZXR1cm4gZyhBKT90KHIoQS50b0FycmF5KCksZSkpOnIoQSxlKX0sIkFycmF5LCBCaWdOdW1iZXIiOmUucmVmZXJUbygiQXJyYXksbnVtYmVyIiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIEEoZSxpKHQpKX19KSksIk1hdHJpeCwgQmlnTnVtYmVyIjplLnJlZmVyVG8oIk1hdHJpeCxudW1iZXIiLChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gQShlLGkodCkpfX0pKX0pO2Z1bmN0aW9uIHIoQSxlKXtpZihnKEEpJiYoQT1BLnRvQXJyYXkoKSksIUFycmF5LmlzQXJyYXkoQSkpdGhyb3cgUmFuZ2VFcnJvcigiQXJyYXkvTWF0cml4IGRvZXMgbm90IGhhdmUgdGhhdCBtYW55IGRpbWVuc2lvbnMiKTtpZihlPjApe3ZhciB0PVtdO3JldHVybiBBLmZvckVhY2goKGZ1bmN0aW9uKEEpe3QucHVzaChyKEEsZS0xKSl9KSksdH1pZigwPT09ZSlyZXR1cm4gbyhBKTt0aHJvdyBSYW5nZUVycm9yKCJDYW5ub3QgaGF2ZSBuZWdhdGl2ZSBkaW1lbnNpb24iKX1mdW5jdGlvbiBvKEEpe2Zvcih2YXIgZT1bXSx0PUEubGVuZ3RoLG49MTtuPHQ7bisrKWUucHVzaChzKEFbbi0xXSxBW25dKSk7cmV0dXJuIGV9ZnVuY3Rpb24gcyhBLGUpe2coQSkmJihBPUEudG9BcnJheSgpKSxnKGUpJiYoZT1lLnRvQXJyYXkoKSk7dmFyIHQ9QXJyYXkuaXNBcnJheShBKSxpPUFycmF5LmlzQXJyYXkoZSk7aWYodCYmaSlyZXR1cm4gZnVuY3Rpb24oQSxlKXtpZihBLmxlbmd0aCE9PWUubGVuZ3RoKXRocm93IFJhbmdlRXJyb3IoIk5vdCBhbGwgc3ViLWFycmF5cyBoYXZlIHRoZSBzYW1lIGxlbmd0aCIpO2Zvcih2YXIgdD1bXSxuPUEubGVuZ3RoLGk9MDtpPG47aSsrKXQucHVzaChzKEFbaV0sZVtpXSkpO3JldHVybiB0fShBLGUpO2lmKCF0JiYhaSlyZXR1cm4gbihlLEEpO3Rocm93IFR5cGVFcnJvcigiQ2Fubm90IGNhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gMSBhcnJheSBhbmQgMSBub24tYXJyYXkiKX19KSksZXM9cEEoIm9uZXMiLFsidHlwZWQiLCJjb25maWciLCJtYXRyaXgiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5tYXRyaXgsaT1BLkJpZ051bWJlcjtyZXR1cm4gZSgib25lcyIseyIiOmZ1bmN0aW9uKCl7cmV0dXJuIkFycmF5Ij09PXQubWF0cml4P28oW10pOm8oW10sImRlZmF1bHQiKX0sIi4uLm51bWJlciB8IEJpZ051bWJlciB8IHN0cmluZyI6ZnVuY3Rpb24oQSl7aWYoInN0cmluZyI9PXR5cGVvZiBBW0EubGVuZ3RoLTFdKXt2YXIgZT1BLnBvcCgpO3JldHVybiBvKEEsZSl9cmV0dXJuIkFycmF5Ij09PXQubWF0cml4P28oQSk6byhBLCJkZWZhdWx0Iil9LEFycmF5Om8sTWF0cml4OmZ1bmN0aW9uKEEpe3ZhciBlPUEuc3RvcmFnZSgpO3JldHVybiBvKEEudmFsdWVPZigpLGUpfSwiQXJyYXkgfCBNYXRyaXgsIHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbyhBLnZhbHVlT2YoKSxlKX19KTtmdW5jdGlvbiBvKEEsZSl7dmFyIHQ9ZnVuY3Rpb24oQSl7dmFyIGU9ITE7cmV0dXJuIEEuZm9yRWFjaCgoZnVuY3Rpb24oQSx0LG4pe3IoQSkmJihlPSEwLG5bdF09QS50b051bWJlcigpKX0pKSxlfShBKT9uZXcgaSgxKToxO2lmKGZ1bmN0aW9uKEEpe0EuZm9yRWFjaCgoZnVuY3Rpb24oQSl7aWYoIm51bWJlciIhPXR5cGVvZiBBfHwhVihBKXx8QTwwKXRocm93IG5ldyBFcnJvcigiUGFyYW1ldGVycyBpbiBmdW5jdGlvbiBvbmVzIG11c3QgYmUgcG9zaXRpdmUgaW50ZWdlcnMiKX0pKX0oQSksZSl7dmFyIG89bihlKTtyZXR1cm4gQS5sZW5ndGg+MD9vLnJlc2l6ZShBLHQpOm99dmFyIHM9W107cmV0dXJuIEEubGVuZ3RoPjA/cm4ocyxBLHQpOnN9fSkpO2Z1bmN0aW9uIHRzKCl7dGhyb3cgbmV3IEVycm9yKCdObyAiYmlnbnVtYmVyIiBpbXBsZW1lbnRhdGlvbiBhdmFpbGFibGUnKX1mdW5jdGlvbiBucygpe3Rocm93IG5ldyBFcnJvcignTm8gImZyYWN0aW9uIiBpbXBsZW1lbnRhdGlvbiBhdmFpbGFibGUnKX1mdW5jdGlvbiBpcygpe3Rocm93IG5ldyBFcnJvcignTm8gIm1hdHJpeCIgaW1wbGVtZW50YXRpb24gYXZhaWxhYmxlJyl9dmFyIHJzPXBBKCJyYW5nZSIsWyJ0eXBlZCIsImNvbmZpZyIsIj9tYXRyaXgiLCI/YmlnbnVtYmVyIiwic21hbGxlciIsInNtYWxsZXJFcSIsImxhcmdlciIsImxhcmdlckVxIiwiYWRkIiwiaXNQb3NpdGl2ZSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLm1hdHJpeCxpPUEuYmlnbnVtYmVyLHI9QS5zbWFsbGVyLG89QS5zbWFsbGVyRXEscz1BLmxhcmdlcixhPUEubGFyZ2VyRXEsQj1BLmFkZCxjPUEuaXNQb3NpdGl2ZTtyZXR1cm4gZSgicmFuZ2UiLHtzdHJpbmc6RSwic3RyaW5nLCBib29sZWFuIjpFLCJudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZyhRKEEsZSwxLCExKSl9LCJudW1iZXIsIG51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIGcoUShBLGUsdCwhMSkpfSwibnVtYmVyLCBudW1iZXIsIGJvb2xlYW4iOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gZyhRKEEsZSwxLHQpKX0sIm51bWJlciwgbnVtYmVyLCBudW1iZXIsIGJvb2xlYW4iOmZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiBnKFEoQSxlLHQsbikpfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGcoUShBLGUsbmV3KDAsQS5jb25zdHJ1Y3RvcikoMSksITEpKX0sIkJpZ051bWJlciwgQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gZyhRKEEsZSx0LCExKSl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciwgYm9vbGVhbiI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBnKFEoQSxlLG5ldygwLEEuY29uc3RydWN0b3IpKDEpLHQpKX0sIkJpZ051bWJlciwgQmlnTnVtYmVyLCBCaWdOdW1iZXIsIGJvb2xlYW4iOmZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiBnKFEoQSxlLHQsbikpfSwiVW5pdCwgVW5pdCwgVW5pdCI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBnKFEoQSxlLHQsITEpKX0sIlVuaXQsIFVuaXQsIFVuaXQsIGJvb2xlYW4iOmZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiBnKFEoQSxlLHQsbikpfX0pO2Z1bmN0aW9uIGcoQSl7cmV0dXJuIk1hdHJpeCI9PT10Lm1hdHJpeD9uP24oQSk6aXMoKTpBfWZ1bmN0aW9uIEUoQSxlKXt2YXIgbj1mdW5jdGlvbihBKXt2YXIgZT1BLnNwbGl0KCI6IikubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gTnVtYmVyKEEpfSkpO2lmKGUuc29tZSgoZnVuY3Rpb24oQSl7cmV0dXJuIGlzTmFOKEEpfSkpKXJldHVybiBudWxsO3N3aXRjaChlLmxlbmd0aCl7Y2FzZSAyOnJldHVybntzdGFydDplWzBdLGVuZDplWzFdLHN0ZXA6MX07Y2FzZSAzOnJldHVybntzdGFydDplWzBdLGVuZDplWzJdLHN0ZXA6ZVsxXX07ZGVmYXVsdDpyZXR1cm4gbnVsbH19KEEpO2lmKCFuKXRocm93IG5ldyBTeW50YXhFcnJvcignU3RyaW5nICInK0ErJyIgaXMgbm8gdmFsaWQgcmFuZ2UnKTtyZXR1cm4iQmlnTnVtYmVyIj09PXQubnVtYmVyPyh2b2lkIDA9PT1pJiZ0cygpLGcoUShpKG4uc3RhcnQpLGkobi5lbmQpLGkobi5zdGVwKSkpKTpnKFEobi5zdGFydCxuLmVuZCxuLnN0ZXAsZSkpfWZ1bmN0aW9uIFEoQSxlLHQsbil7Zm9yKHZhciBpPVtdLGc9Yyh0KT9uP286cjpuP2E6cyxFPUE7ZyhFLGUpOylpLnB1c2goRSksRT1CKEUsdCk7cmV0dXJuIGl9fSkpLG9zPSJyZXNoYXBlIixzcz1wQShvcyxbInR5cGVkIiwiaXNJbnRlZ2VyIiwibWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmlzSW50ZWdlcjtyZXR1cm4gZShvcyx7Ik1hdHJpeCwgQXJyYXkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEucmVzaGFwZShlLCEwKX0sIkFycmF5LCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZS5mb3JFYWNoKChmdW5jdGlvbihBKXtpZighdChBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIHNpemUgZm9yIGRpbWVuc2lvbjogIitBKX0pKSxvbihBLGUpfX0pfSkpLGFzPXBBKCJyZXNpemUiLFsiY29uZmlnIiwibWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLHQ9QS5tYXRyaXg7cmV0dXJuIGZ1bmN0aW9uKEEsbixpKXtpZigyIT09YXJndW1lbnRzLmxlbmd0aCYmMyE9PWFyZ3VtZW50cy5sZW5ndGgpdGhyb3cgbmV3IHlyKCJyZXNpemUiLGFyZ3VtZW50cy5sZW5ndGgsMiwzKTtpZihnKG4pJiYobj1uLnZhbHVlT2YoKSkscihuWzBdKSYmKG49bi5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiByKEEpP0EudG9OdW1iZXIoKTpBfSkpKSxnKEEpKXJldHVybiBBLnJlc2l6ZShuLGksITApO2lmKCJzdHJpbmciPT10eXBlb2YgQSlyZXR1cm4gZnVuY3Rpb24oQSxlLHQpe2lmKHZvaWQgMCE9PXQpe2lmKCJzdHJpbmciIT10eXBlb2YgdHx8MSE9PXQubGVuZ3RoKXRocm93IG5ldyBUeXBlRXJyb3IoIlNpbmdsZSBjaGFyYWN0ZXIgZXhwZWN0ZWQgYXMgZGVmYXVsdFZhbHVlIil9ZWxzZSB0PSIgIjtpZigxIT09ZS5sZW5ndGgpdGhyb3cgbmV3IF90KGUubGVuZ3RoLDEpO3ZhciBuPWVbMF07aWYoIm51bWJlciIhPXR5cGVvZiBufHwhVihuKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIHNpemUsIG11c3QgY29udGFpbiBwb3NpdGl2ZSBpbnRlZ2VycyAoc2l6ZTogIitWdChlKSsiKSIpO2lmKEEubGVuZ3RoPm4pcmV0dXJuIEEuc3Vic3RyaW5nKDAsbik7aWYoQS5sZW5ndGg8bil7Zm9yKHZhciBpPUEscj0wLG89bi1BLmxlbmd0aDtyPG87cisrKWkrPXQ7cmV0dXJuIGl9cmV0dXJuIEF9KEEsbixpKTt2YXIgbz0hQXJyYXkuaXNBcnJheShBKSYmIkFycmF5IiE9PWUubWF0cml4O2lmKDA9PT1uLmxlbmd0aCl7Zm9yKDtBcnJheS5pc0FycmF5KEEpOylBPUFbMF07cmV0dXJuIHVBKEEpfUFycmF5LmlzQXJyYXkoQSl8fChBPVtBXSk7dmFyIHM9cm4oQT11QShBKSxuLGkpO3JldHVybiBvP3Qocyk6c319KSksQnM9cEEoInJvdGF0ZSIsWyJ0eXBlZCIsIm11bHRpcGx5Iiwicm90YXRpb25NYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubXVsdGlwbHksbj1BLnJvdGF0aW9uTWF0cml4O3JldHVybiBlKCJyb3RhdGUiLHsiQXJyYXkgLCBudW1iZXIgfCBCaWdOdW1iZXIgfCBDb21wbGV4IHwgVW5pdCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gaShBLDIpLHQobihlKSxBKS50b0FycmF5KCl9LCJNYXRyaXggLCBudW1iZXIgfCBCaWdOdW1iZXIgfCBDb21wbGV4IHwgVW5pdCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gaShBLDIpLHQobihlKSxBKX0sIkFycmF5LCBudW1iZXIgfCBCaWdOdW1iZXIgfCBDb21wbGV4IHwgVW5pdCwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSxyKXtyZXR1cm4gaShBLDMpLHQobihlLHIpLEEpfSwiTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIgfCBDb21wbGV4IHwgVW5pdCwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSxyKXtyZXR1cm4gaShBLDMpLHQobihlLHIpLEEpfX0pO2Z1bmN0aW9uIGkoQSxlKXt2YXIgdD1BcnJheS5pc0FycmF5KEEpPyR0KEEpOkEuc2l6ZSgpO2lmKHQubGVuZ3RoPjIpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIlZlY3RvciBtdXN0IGJlIG9mIGRpbWVuc2lvbnMgMXgiLmNvbmNhdChlKSk7aWYoMj09PXQubGVuZ3RoJiYxIT09dFsxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiVmVjdG9yIG11c3QgYmUgb2YgZGltZW5zaW9ucyAxeCIuY29uY2F0KGUpKTtpZih0WzBdIT09ZSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiVmVjdG9yIG11c3QgYmUgb2YgZGltZW5zaW9ucyAxeCIuY29uY2F0KGUpKX19KSksY3M9InJvdGF0aW9uTWF0cml4Iixncz1wQShjcyxbInR5cGVkIiwiY29uZmlnIiwibXVsdGlwbHlTY2FsYXIiLCJhZGRTY2FsYXIiLCJ1bmFyeU1pbnVzIiwibm9ybSIsIm1hdHJpeCIsIkJpZ051bWJlciIsIkRlbnNlTWF0cml4IiwiU3BhcnNlTWF0cml4IiwiY29zIiwic2luIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubXVsdGlwbHlTY2FsYXIsaT1BLmFkZFNjYWxhcixvPUEudW5hcnlNaW51cyxzPUEubm9ybSxhPUEuQmlnTnVtYmVyLEI9QS5tYXRyaXgsYz1BLkRlbnNlTWF0cml4LGc9QS5TcGFyc2VNYXRyaXgsRT1BLmNvcyxRPUEuc2luO3JldHVybiBlKGNzLHsiIjpmdW5jdGlvbigpe3JldHVybiJNYXRyaXgiPT09dC5tYXRyaXg/QihbXSk6W119LHN0cmluZzpmdW5jdGlvbihBKXtyZXR1cm4gQihBKX0sIm51bWJlciB8IEJpZ051bWJlciB8IENvbXBsZXggfCBVbml0IjpmdW5jdGlvbihBKXtyZXR1cm4gdShBLCJNYXRyaXgiPT09dC5tYXRyaXg/ImRlbnNlIjp2b2lkIDApfSwibnVtYmVyIHwgQmlnTnVtYmVyIHwgQ29tcGxleCB8IFVuaXQsIHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdShBLGUpfSwibnVtYmVyIHwgQmlnTnVtYmVyIHwgQ29tcGxleCB8IFVuaXQsIEFycmF5IjpmdW5jdGlvbihBLGUpe3ZhciB0PUIoZSk7cmV0dXJuIGwodCksQyhBLHQsdm9pZCAwKX0sIm51bWJlciB8IEJpZ051bWJlciB8IENvbXBsZXggfCBVbml0LCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7bChlKTt2YXIgbj1lLnN0b3JhZ2UoKXx8KCJNYXRyaXgiPT09dC5tYXRyaXg/ImRlbnNlIjp2b2lkIDApO3JldHVybiBDKEEsZSxuKX0sIm51bWJlciB8IEJpZ051bWJlciB8IENvbXBsZXggfCBVbml0LCBBcnJheSwgc3RyaW5nIjpmdW5jdGlvbihBLGUsdCl7dmFyIG49QihlKTtyZXR1cm4gbChuKSxDKEEsbix0KX0sIm51bWJlciB8IEJpZ051bWJlciB8IENvbXBsZXggfCBVbml0LCBNYXRyaXgsIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBsKGUpLEMoQSxlLHQpfX0pO2Z1bmN0aW9uIHUoQSxlKXt2YXIgdD1yKEEpP25ldyBhKC0xKTotMSxpPUUoQSksbz1RKEEpO3JldHVybiB3KFtbaSxuKHQsbyldLFtvLGldXSxlKX1mdW5jdGlvbiBsKEEpe3ZhciBlPUEuc2l6ZSgpO2lmKGUubGVuZ3RoPDF8fDMhPT1lWzBdKXRocm93IG5ldyBSYW5nZUVycm9yKCJWZWN0b3IgbXVzdCBiZSBvZiBkaW1lbnNpb25zIDF4MyIpfWZ1bmN0aW9uIGgoQSl7cmV0dXJuIEEucmVkdWNlKChmdW5jdGlvbihBLGUpe3JldHVybiBuKEEsZSl9KSl9ZnVuY3Rpb24gdyhBLGUpe2lmKGUpe2lmKCJzcGFyc2UiPT09ZSlyZXR1cm4gbmV3IGcoQSk7aWYoImRlbnNlIj09PWUpcmV0dXJuIG5ldyBjKEEpO3Rocm93IG5ldyBUeXBlRXJyb3IoJ1Vua25vd24gbWF0cml4IHR5cGUgIicuY29uY2F0KGUsJyInKSl9cmV0dXJuIEF9ZnVuY3Rpb24gQyhBLGUsdCl7dmFyIG49cyhlKTtpZigwPT09bil0aHJvdyBuZXcgUmFuZ2VFcnJvcigiUm90YXRpb24gYXJvdW5kIHplcm8gdmVjdG9yIik7dmFyIEI9cihBKT9hOm51bGwsYz1CP25ldyBCKDEpOjEsZz1CP25ldyBCKC0xKTotMSx1PUI/bmV3IEIoZS5nZXQoWzBdKS9uKTplLmdldChbMF0pL24sbD1CP25ldyBCKGUuZ2V0KFsxXSkvbik6ZS5nZXQoWzFdKS9uLEM9Qj9uZXcgQihlLmdldChbMl0pL24pOmUuZ2V0KFsyXSkvbixJPUUoQSksTT1pKGMsbyhJKSksZD1RKEEpO3JldHVybiB3KFtbaShJLGgoW3UsdSxNXSkpLGkoaChbdSxsLE1dKSxoKFtnLEMsZF0pKSxpKGgoW3UsQyxNXSksaChbbCxkXSkpXSxbaShoKFt1LGwsTV0pLGgoW0MsZF0pKSxpKEksaChbbCxsLE1dKSksaShoKFtsLEMsTV0pLGgoW2csdSxkXSkpXSxbaShoKFt1LEMsTV0pLGgoW2csbCxkXSkpLGkoaChbbCxDLE1dKSxoKFt1LGRdKSksaShJLGgoW0MsQyxNXSkpXV0sdCl9fSkpLEVzPXBBKCJyb3ciLFsidHlwZWQiLCJJbmRleCIsIm1hdHJpeCIsInJhbmdlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkluZGV4LG49QS5tYXRyaXgsaT1BLnJhbmdlO3JldHVybiBlKCJyb3ciLHsiTWF0cml4LCBudW1iZXIiOnIsIkFycmF5LCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHIobih1QShBKSksZSkudmFsdWVPZigpfX0pO2Z1bmN0aW9uIHIoQSxlKXtpZigyIT09QS5zaXplKCkubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiT25seSB0d28gZGltZW5zaW9uYWwgbWF0cml4IGlzIHN1cHBvcnRlZCIpO3RuKGUsQS5zaXplKClbMF0pO3ZhciByPWkoMCxBLnNpemUoKVsxXSksbz1uZXcgdChlLHIpLHM9QS5zdWJzZXQobyk7cmV0dXJuIGcocyk/czpuKFtbc11dKX19KSksUXM9cEEoInNpemUiLFsidHlwZWQiLCJjb25maWciLCI/bWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubWF0cml4O3JldHVybiBlKCJzaXplIix7TWF0cml4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmNyZWF0ZShBLnNpemUoKSl9LEFycmF5OiR0LHN0cmluZzpmdW5jdGlvbihBKXtyZXR1cm4iQXJyYXkiPT09dC5tYXRyaXg/W0EubGVuZ3RoXTpuKFtBLmxlbmd0aF0pfSwibnVtYmVyIHwgQ29tcGxleCB8IEJpZ051bWJlciB8IFVuaXQgfCBib29sZWFuIHwgbnVsbCI6ZnVuY3Rpb24oQSl7cmV0dXJuIkFycmF5Ij09PXQubWF0cml4P1tdOm4/bihbXSk6aXMoKX19KX0pKSx1cz0ic3F1ZWV6ZSIsbHM9cEEodXMsWyJ0eXBlZCIsIm1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXg7cmV0dXJuIGUodXMse0FycmF5OmZ1bmN0aW9uKEEpe3JldHVybiBCbih1QShBKSl9LE1hdHJpeDpmdW5jdGlvbihBKXt2YXIgZT1CbihBLnRvQXJyYXkoKSk7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/dChlKTplfSxhbnk6ZnVuY3Rpb24oQSl7cmV0dXJuIHVBKEEpfX0pfSkpLGhzPXBBKCJzdWJzZXQiLFsidHlwZWQiLCJtYXRyaXgiLCJ6ZXJvcyIsImFkZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLnplcm9zLGk9QS5hZGQ7cmV0dXJuIGUoInN1YnNldCIseyJNYXRyaXgsIEluZGV4IjpmdW5jdGlvbihBLGUpe3JldHVybiBubihlKT90KCk6KGVuKEEsZSksQS5zdWJzZXQoZSkpfSwiQXJyYXksIEluZGV4IjplLnJlZmVyVG8oIk1hdHJpeCwgSW5kZXgiLChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXt2YXIgaT1BKHQoZSksbik7cmV0dXJuIG4uaXNTY2FsYXIoKT9pOmkudmFsdWVPZigpfX0pKSwiT2JqZWN0LCBJbmRleCI6SXMsInN0cmluZywgSW5kZXgiOndzLCJNYXRyaXgsIEluZGV4LCBhbnksIGFueSI6ZnVuY3Rpb24oQSxlLHQscil7cmV0dXJuIG5uKGUpP0E6KGVuKEEsZSksQS5jbG9uZSgpLnN1YnNldChlLGZ1bmN0aW9uKEEsZSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXRocm93IG5ldyBFcnJvcigiY2FuJ3QgYm9yYWRjYXN0IGEgc3RyaW5nIik7aWYoZS5faXNTY2FsYXIpcmV0dXJuIEE7dmFyIHQ9ZS5zaXplKCk7aWYoIXQuZXZlcnkoKGZ1bmN0aW9uKEEpe3JldHVybiBBPjB9KSkpcmV0dXJuIEE7dHJ5e3JldHVybiBpKEEsbih0KSl9Y2F0Y2goZSl7cmV0dXJuIEF9fSh0LGUpLHIpKX0sIkFycmF5LCBJbmRleCwgYW55LCBhbnkiOmUucmVmZXJUbygiTWF0cml4LCBJbmRleCwgYW55LCBhbnkiLChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuLGkscil7dmFyIG89QSh0KGUpLG4saSxyKTtyZXR1cm4gby5pc01hdHJpeD9vLnZhbHVlT2YoKTpvfX0pKSwiQXJyYXksIEluZGV4LCBhbnkiOmUucmVmZXJUbygiTWF0cml4LCBJbmRleCwgYW55LCBhbnkiLChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuLGkpe3JldHVybiBBKHQoZSksbixpLHZvaWQgMCkudmFsdWVPZigpfX0pKSwiTWF0cml4LCBJbmRleCwgYW55IjplLnJlZmVyVG8oIk1hdHJpeCwgSW5kZXgsIGFueSwgYW55IiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gQShlLHQsbix2b2lkIDApfX0pKSwic3RyaW5nLCBJbmRleCwgc3RyaW5nIjpDcywic3RyaW5nLCBJbmRleCwgc3RyaW5nLCBzdHJpbmciOkNzLCJPYmplY3QsIEluZGV4LCBhbnkiOk1zfSl9KSk7ZnVuY3Rpb24gd3MoQSxlKXtpZighaChlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbmRleCBleHBlY3RlZCIpO2lmKG5uKGUpKXJldHVybiIiO2lmKGVuKEFycmF5LmZyb20oQSksZSksMSE9PWUuc2l6ZSgpLmxlbmd0aCl0aHJvdyBuZXcgX3QoZS5zaXplKCkubGVuZ3RoLDEpO3ZhciB0PUEubGVuZ3RoO3RuKGUubWluKClbMF0sdCksdG4oZS5tYXgoKVswXSx0KTt2YXIgbj1lLmRpbWVuc2lvbigwKSxpPSIiO3JldHVybiBuLmZvckVhY2goKGZ1bmN0aW9uKGUpe2krPUEuY2hhckF0KGUpfSkpLGl9ZnVuY3Rpb24gQ3MoQSxlLHQsbil7aWYoIWV8fCEwIT09ZS5pc0luZGV4KXRocm93IG5ldyBUeXBlRXJyb3IoIkluZGV4IGV4cGVjdGVkIik7aWYobm4oZSkpcmV0dXJuIEE7aWYoZW4oQXJyYXkuZnJvbShBKSxlKSwxIT09ZS5zaXplKCkubGVuZ3RoKXRocm93IG5ldyBfdChlLnNpemUoKS5sZW5ndGgsMSk7aWYodm9pZCAwIT09bil7aWYoInN0cmluZyIhPXR5cGVvZiBufHwxIT09bi5sZW5ndGgpdGhyb3cgbmV3IFR5cGVFcnJvcigiU2luZ2xlIGNoYXJhY3RlciBleHBlY3RlZCBhcyBkZWZhdWx0VmFsdWUiKX1lbHNlIG49IiAiO3ZhciBpPWUuZGltZW5zaW9uKDApO2lmKGkuc2l6ZSgpWzBdIT09dC5sZW5ndGgpdGhyb3cgbmV3IF90KGkuc2l6ZSgpWzBdLHQubGVuZ3RoKTt2YXIgcj1BLmxlbmd0aDt0bihlLm1pbigpWzBdKSx0bihlLm1heCgpWzBdKTtmb3IodmFyIG89W10scz0wO3M8cjtzKyspb1tzXT1BLmNoYXJBdChzKTtpZihpLmZvckVhY2goKGZ1bmN0aW9uKEEsZSl7b1tBXT10LmNoYXJBdChlWzBdKX0pKSxvLmxlbmd0aD5yKWZvcih2YXIgYT1yLTEsQj1vLmxlbmd0aDthPEI7YSsrKW9bYV18fChvW2FdPW4pO3JldHVybiBvLmpvaW4oIiIpfWZ1bmN0aW9uIElzKEEsZSl7aWYoIW5uKGUpKXtpZigxIT09ZS5zaXplKCkubGVuZ3RoKXRocm93IG5ldyBfdChlLnNpemUoKSwxKTt2YXIgdD1lLmRpbWVuc2lvbigwKTtpZigic3RyaW5nIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3RyaW5nIGV4cGVjdGVkIGFzIGluZGV4IHRvIHJldHJpZXZlIGFuIG9iamVjdCBwcm9wZXJ0eSIpO3JldHVybiBVQShBLHQpfX1mdW5jdGlvbiBNcyhBLGUsdCl7aWYobm4oZSkpcmV0dXJuIEE7aWYoMSE9PWUuc2l6ZSgpLmxlbmd0aCl0aHJvdyBuZXcgX3QoZS5zaXplKCksMSk7dmFyIG49ZS5kaW1lbnNpb24oMCk7aWYoInN0cmluZyIhPXR5cGVvZiBuKXRocm93IG5ldyBUeXBlRXJyb3IoIlN0cmluZyBleHBlY3RlZCBhcyBpbmRleCB0byByZXRyaWV2ZSBhbiBvYmplY3QgcHJvcGVydHkiKTt2YXIgaT11QShBKTtyZXR1cm4geUEoaSxuLHQpLGl9dmFyIGRzPSJ0cmFuc3Bvc2UiLHBzPXBBKGRzLFsidHlwZWQiLCJtYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4O3JldHVybiBlKGRzLHtBcnJheTpmdW5jdGlvbihBKXtyZXR1cm4gbih0KEEpKS52YWx1ZU9mKCl9LE1hdHJpeDpuLGFueTp1QX0pO2Z1bmN0aW9uIG4oQSl7dmFyIGUsdD1BLnNpemUoKTtzd2l0Y2godC5sZW5ndGgpe2Nhc2UgMTplPUEuY2xvbmUoKTticmVhaztjYXNlIDI6dmFyIG49dFswXSxpPXRbMV07aWYoMD09PWkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkNhbm5vdCB0cmFuc3Bvc2UgYSAyRCBtYXRyaXggd2l0aCBubyBjb2x1bW5zIChzaXplOiAiK1Z0KHQpKyIpIik7c3dpdGNoKEEuc3RvcmFnZSgpKXtjYXNlImRlbnNlIjplPWZ1bmN0aW9uKEEsZSx0KXtmb3IodmFyIG4saT1BLl9kYXRhLHI9W10sbz0wO288dDtvKyspe249cltvXT1bXTtmb3IodmFyIHM9MDtzPGU7cysrKW5bc109dUEoaVtzXVtvXSl9cmV0dXJuIEEuY3JlYXRlRGVuc2VNYXRyaXgoe2RhdGE6cixzaXplOlt0LGVdLGRhdGF0eXBlOkEuX2RhdGF0eXBlfSl9KEEsbixpKTticmVhaztjYXNlInNwYXJzZSI6ZT1mdW5jdGlvbihBLGUsdCl7Zm9yKHZhciBuLGkscixvPUEuX3ZhbHVlcyxzPUEuX2luZGV4LGE9QS5fcHRyLEI9bz9bXTp2b2lkIDAsYz1bXSxnPVtdLEU9W10sUT0wO1E8ZTtRKyspRVtRXT0wO2ZvcihuPTAsaT1zLmxlbmd0aDtuPGk7bisrKUVbc1tuXV0rKztmb3IodmFyIHU9MCxsPTA7bDxlO2wrKylnLnB1c2godSksdSs9RVtsXSxFW2xdPWdbbF07Zm9yKGcucHVzaCh1KSxyPTA7cjx0O3IrKylmb3IodmFyIGg9YVtyXSx3PWFbcisxXSxDPWg7Qzx3O0MrKyl7dmFyIEk9RVtzW0NdXSsrO2NbSV09cixvJiYoQltJXT11QShvW0NdKSl9cmV0dXJuIEEuY3JlYXRlU3BhcnNlTWF0cml4KHt2YWx1ZXM6QixpbmRleDpjLHB0cjpnLHNpemU6W3QsZV0sZGF0YXR5cGU6QS5fZGF0YXR5cGV9KX0oQSxuLGkpfWJyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIGEgdmVjdG9yIG9yIHR3byBkaW1lbnNpb25hbCAoc2l6ZTogIitWdCh0KSsiKSIpfXJldHVybiBlfX0pKSxtcz0iY3RyYW5zcG9zZSIsRnM9cEEobXMsWyJ0eXBlZCIsInRyYW5zcG9zZSIsImNvbmoiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEudHJhbnNwb3NlLG49QS5jb25qO3JldHVybiBlKG1zLHthbnk6ZnVuY3Rpb24oQSl7cmV0dXJuIG4odChBKSl9fSl9KSksRHM9cEEoInplcm9zIixbInR5cGVkIiwiY29uZmlnIiwibWF0cml4IiwiQmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubWF0cml4LGk9QS5CaWdOdW1iZXI7cmV0dXJuIGUoInplcm9zIix7IiI6ZnVuY3Rpb24oKXtyZXR1cm4iQXJyYXkiPT09dC5tYXRyaXg/byhbXSk6byhbXSwiZGVmYXVsdCIpfSwiLi4ubnVtYmVyIHwgQmlnTnVtYmVyIHwgc3RyaW5nIjpmdW5jdGlvbihBKXtpZigic3RyaW5nIj09dHlwZW9mIEFbQS5sZW5ndGgtMV0pe3ZhciBlPUEucG9wKCk7cmV0dXJuIG8oQSxlKX1yZXR1cm4iQXJyYXkiPT09dC5tYXRyaXg/byhBKTpvKEEsImRlZmF1bHQiKX0sQXJyYXk6byxNYXRyaXg6ZnVuY3Rpb24oQSl7dmFyIGU9QS5zdG9yYWdlKCk7cmV0dXJuIG8oQS52YWx1ZU9mKCksZSl9LCJBcnJheSB8IE1hdHJpeCwgc3RyaW5nIjpmdW5jdGlvbihBLGUpe3JldHVybiBvKEEudmFsdWVPZigpLGUpfX0pO2Z1bmN0aW9uIG8oQSxlKXt2YXIgdD1mdW5jdGlvbihBKXt2YXIgZT0hMTtyZXR1cm4gQS5mb3JFYWNoKChmdW5jdGlvbihBLHQsbil7cihBKSYmKGU9ITAsblt0XT1BLnRvTnVtYmVyKCkpfSkpLGV9KEEpP25ldyBpKDApOjA7aWYoZnVuY3Rpb24oQSl7QS5mb3JFYWNoKChmdW5jdGlvbihBKXtpZigibnVtYmVyIiE9dHlwZW9mIEF8fCFWKEEpfHxBPDApdGhyb3cgbmV3IEVycm9yKCJQYXJhbWV0ZXJzIGluIGZ1bmN0aW9uIHplcm9zIG11c3QgYmUgcG9zaXRpdmUgaW50ZWdlcnMiKX0pKX0oQSksZSl7dmFyIG89bihlKTtyZXR1cm4gQS5sZW5ndGg+MD9vLnJlc2l6ZShBLHQpOm99dmFyIHM9W107cmV0dXJuIEEubGVuZ3RoPjA/cm4ocyxBLHQpOnN9fSkpLFlzPXBBKCJmZnQiLFsidHlwZWQiLCJtYXRyaXgiLCJhZGRTY2FsYXIiLCJtdWx0aXBseVNjYWxhciIsImRpdmlkZVNjYWxhciIsImV4cCIsInRhdSIsImkiLCJkb3REaXZpZGUiLCJjb25qIiwicG93IiwiY2VpbCIsImxvZzIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PShBLm1hdHJpeCxBLmFkZFNjYWxhciksbj1BLm11bHRpcGx5U2NhbGFyLGk9QS5kaXZpZGVTY2FsYXIscj1BLmV4cCxvPUEudGF1LHM9QS5pLGE9QS5kb3REaXZpZGUsQj1BLmNvbmosYz1BLnBvdyxnPUEuY2VpbCxFPUEubG9nMjtyZXR1cm4gZSgiZmZ0Iix7QXJyYXk6USxNYXRyaXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY3JlYXRlKFEoQS50b0FycmF5KCkpKX19KTtmdW5jdGlvbiBRKEEpe3ZhciBlPSR0KEEpO3JldHVybiAxPT09ZS5sZW5ndGg/dShBLGVbMF0pOmZ1bmN0aW9uIEEoZSx0KXt2YXIgbj0kdChlKTtpZigwIT09dClyZXR1cm4gbmV3IEFycmF5KG5bMF0pLmZpbGwoMCkubWFwKChmdW5jdGlvbihuLGkpe3JldHVybiBBKGVbaV0sdC0xKX0pKTtpZigxPT09bi5sZW5ndGgpcmV0dXJuIHUoZSk7ZnVuY3Rpb24gaShBKXt2YXIgZT0kdChBKTtyZXR1cm4gbmV3IEFycmF5KGVbMV0pLmZpbGwoMCkubWFwKChmdW5jdGlvbih0LG4pe3JldHVybiBuZXcgQXJyYXkoZVswXSkuZmlsbCgwKS5tYXAoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIEFbdF1bbl19KSl9KSl9cmV0dXJuIGkoQShpKGUpLDEpKX0oQS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBRKEEsZS5zbGljZSgxKSl9KSksMCl9ZnVuY3Rpb24gdShBKXt2YXIgZT1BLmxlbmd0aDtpZigxPT09ZSlyZXR1cm5bQVswXV07aWYoZSUyPT0wKXtmb3IodmFyIGw9W10uY29uY2F0KHp0KHUoQS5maWx0ZXIoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIGUlMj09MH0pKSkpLHp0KHUoQS5maWx0ZXIoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIGUlMj09MX0pKSkpKSxoPTA7aDxlLzI7aCsrKXt2YXIgdz1sW2hdLEM9bihsW2grZS8yXSxyKG4obihvLHMpLGkoLWgsZSkpKSk7bFtoXT10KHcsQyksbFtoK2UvMl09dCh3LG4oLTEsQykpfXJldHVybiBsfXJldHVybiBmdW5jdGlvbihBKXtmb3IodmFyIGU9QS5sZW5ndGgsdD1yKGkobigtMSxuKHMsbykpLGUpKSxsPVtdLGg9MS1lO2g8ZTtoKyspbC5wdXNoKGModCxpKGMoaCwyKSwyKSkpO2Zvcih2YXIgdz1jKDIsZyhFKGUrZS0xKSkpLEM9W10uY29uY2F0KHp0KG5ldyBBcnJheShlKS5maWxsKDApLm1hcCgoZnVuY3Rpb24odCxpKXtyZXR1cm4gbihBW2ldLGxbZS0xK2ldKX0pKSksenQobmV3IEFycmF5KHctZSkuZmlsbCgwKSkpLEk9W10uY29uY2F0KHp0KG5ldyBBcnJheShlK2UtMSkuZmlsbCgwKS5tYXAoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIGkoMSxsW2VdKX0pKSksenQobmV3IEFycmF5KHctKGUrZS0xKSkuZmlsbCgwKSkpLE09dShDKSxkPXUoSSkscD1uZXcgQXJyYXkodykuZmlsbCgwKS5tYXAoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIG4oTVtlXSxkW2VdKX0pKSxtPWEoQihRKEIocCkpKSx3KSxGPVtdLEQ9ZS0xO0Q8ZStlLTE7RCsrKUYucHVzaChuKG1bRF0sbFtEXSkpO3JldHVybiBGfShBKX19KSksZnM9cEEoImlmZnQiLFsidHlwZWQiLCJmZnQiLCJkb3REaXZpZGUiLCJjb25qIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmZmdCxuPUEuZG90RGl2aWRlLGk9QS5jb25qO3JldHVybiBlKCJpZmZ0Iix7IkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXt2YXIgZT1nKEEpP0Euc2l6ZSgpOiR0KEEpO3JldHVybiBuKGkodChpKEEpKSksZS5yZWR1Y2UoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEqZX0pLDEpKX19KX0pKTtmdW5jdGlvbiBOcyhBLGUpe3ZhciB0PU9iamVjdC5rZXlzKEEpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSkuZW51bWVyYWJsZX0pKSksdC5wdXNoLmFwcGx5KHQsbil9cmV0dXJuIHR9bigxOTE5KSxuKDk0NzQpLG4oNTA4Mik7dmFyIFVzPXBBKCJzb2x2ZU9ERSIsWyJ0eXBlZCIsImFkZCIsInN1YnRyYWN0IiwibXVsdGlwbHkiLCJkaXZpZGUiLCJtYXgiLCJtYXAiLCJhYnMiLCJpc1Bvc2l0aXZlIiwiaXNOZWdhdGl2ZSIsImxhcmdlciIsInNtYWxsZXIiLCJtYXRyaXgiLCJiaWdudW1iZXIiLCJ1bmFyeU1pbnVzIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsbj1BLmFkZCxpPUEuc3VidHJhY3Qsbz1BLm11bHRpcGx5LHM9QS5kaXZpZGUsQj1BLm1heCxjPUEubWFwLGc9QS5hYnMsRT1BLmlzUG9zaXRpdmUsUT1BLmlzTmVnYXRpdmUsdT1BLmxhcmdlcixsPUEuc21hbGxlcixoPUEubWF0cml4LHc9QS5iaWdudW1iZXIsQz1BLnVuYXJ5TWludXM7ZnVuY3Rpb24gSShBKXtyZXR1cm4gZnVuY3Rpb24oZSx0LGgsSSl7aWYoMiE9PXQubGVuZ3RofHwhdC5ldmVyeShtKSYmIXQuZXZlcnkoYSkpdGhyb3cgbmV3IEVycm9yKCcidHNwYW4iIG11c3QgYmUgYW4gQXJyYXkgb2YgdHdvIG51bWVyaWMgdmFsdWVzIG9yIHR3byB1bml0cyBbdFN0YXJ0LCB0RW5kXScpO3ZhciBNPXRbMF0sZD10WzFdLHA9dShkLE0pLEY9SS5maXJzdFN0ZXA7aWYodm9pZCAwIT09RiYmIUUoRikpdGhyb3cgbmV3IEVycm9yKCciZmlyc3RTdGVwIiBtdXN0IGJlIHBvc2l0aXZlJyk7dmFyIEQ9SS5tYXhTdGVwO2lmKHZvaWQgMCE9PUQmJiFFKEQpKXRocm93IG5ldyBFcnJvcignIm1heFN0ZXAiIG11c3QgYmUgcG9zaXRpdmUnKTt2YXIgWT1JLm1pblN0ZXA7aWYoWSYmUShZKSl0aHJvdyBuZXcgRXJyb3IoJyJtaW5TdGVwIiBtdXN0IGJlIHBvc2l0aXZlIG9yIHplcm8nKTt2YXIgZj1bTSxkLEYsWSxEXS5maWx0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiB2b2lkIDAhPT1BfSkpO2lmKCFmLmV2ZXJ5KG0pJiYhZi5ldmVyeShhKSl0aHJvdyBuZXcgRXJyb3IoJ0luY29uc2lzdGVudCB0eXBlIG9mICJ0IiBkZXBlbmRhbnQgdmFyaWFibGVzJyk7Zm9yKHZhciBOPUkudG9sP0kudG9sOjFlLTQsVT1JLm1pbkRlbHRhP0kubWluRGVsdGE6LjIseT1JLm1heERlbHRhP0kubWF4RGVsdGE6NSxUPUkubWF4SXRlcj9JLm1heEl0ZXI6MWU0LHg9W00sZF0uY29uY2F0KHp0KGgpLFtELFldKS5zb21lKHIpLFI9aXIoeD9bdyhBLmEpLHcoQS5jKSx3KEEuYiksdyhBLmJwKV06W0EuYSxBLmMsQS5iLEEuYnBdLDQpLEc9UlswXSxTPVJbMV0sYj1SWzJdLEg9UlszXSx2PUY/cD9GOkMoRik6cyhpKGQsTSksMSksaz1bTV0saj1baF0sSj1pKGIsSCksej0wLEw9MCxQPWZ1bmN0aW9uKEEpe3JldHVybiBBP2w6dX0ocCksTz1mdW5jdGlvbihBKXt2YXIgZT1BP3U6bDtyZXR1cm4gZnVuY3Rpb24oQSx0LHIpe3ZhciBvPW4oQSxyKTtyZXR1cm4gZShvLHQpP2kodCxBKTpyfX0ocCk7UChrW3pdLGQpOyl7dmFyIFY9W107dj1PKGtbel0sZCx2KSxWLnB1c2goZShrW3pdLGpbel0pKTtmb3IodmFyIFc9MTtXPFMubGVuZ3RoOysrVylWLnB1c2goZShuKGtbel0sbyhTW1ddLHYpKSxuKGpbel0sbyh2LEdbV10sVikpKSk7dmFyIEs9QihnKGMobyhKLFYpLChmdW5jdGlvbihBKXtyZXR1cm4gYShBKT9BLnZhbHVlOkF9KSkpKTtLPE4mJk4vSz4xLzQmJihrLnB1c2gobihrW3pdLHYpKSxqLnB1c2gobihqW3pdLG8odixiLFYpKSkseisrKTt2YXIgWD0uODQqTWF0aC5wb3coTi9LLC4yKTtpZihsKFgsVSk/WD1VOnUoWCx5KSYmKFg9eSksWD14P3coWCk6WCx2PW8odixYKSxEJiZ1KGcodiksRCk/dj1wP0Q6QyhEKTpZJiZsKGcodiksWSkmJih2PXA/WTpDKFkpKSwrK0w+VCl0aHJvdyBuZXcgRXJyb3IoIk1heGltdW0gbnVtYmVyIG9mIGl0ZXJhdGlvbnMgcmVhY2hlZCwgdHJ5IGNoYW5naW5nIG9wdGlvbnMiKX1yZXR1cm57dDprLHk6an19fWZ1bmN0aW9uIE0oQSxlLHQsbil7cmV0dXJuIEkoe2E6W1tdLFsuNV0sWzAsMy80XSxbMi85LDEvMyw0LzldXSxjOltudWxsLC41LDMvNCwxXSxiOlsyLzksMS8zLDQvOSwwXSxicDpbNy8yNCwxLzQsMS8zLDEvOF19KShBLGUsdCxuKX1mdW5jdGlvbiBkKEEsZSx0LG4pe3JldHVybiBJKHthOltbXSxbLjJdLFszLzQwLDkvNDBdLFs0NC80NSwtNTYvMTUsMzIvOV0sWzE5MzcyLzY1NjEsLTI1MzYwLzIxODcsNjQ0NDgvNjU2MSwtMjEyLzcyOV0sWzkwMTcvMzE2OCwtMzU1LzMzLDQ2NzMyLzUyNDcsNDkvMTc2LC01MTAzLzE4NjU2XSxbMzUvMzg0LDAsNTAwLzExMTMsMTI1LzE5MiwtMjE4Ny82Nzg0LDExLzg0XV0sYzpbbnVsbCwuMiwuMywuOCw4LzksMSwxXSxiOlszNS8zODQsMCw1MDAvMTExMywxMjUvMTkyLC0yMTg3LzY3ODQsMTEvODQsMF0sYnA6WzUxNzkvNTc2MDAsMCw3NTcxLzE2Njk1LDM5My82NDAsLTkyMDk3LzMzOTIwMCwxODcvMjEwMCwxLzQwXX0pKEEsZSx0LG4pfWZ1bmN0aW9uIHAoQSxlLHQsbil7dmFyIGk9bi5tZXRob2Q/bi5tZXRob2Q6IlJLNDUiLHI9e1JLMjM6TSxSSzQ1OmR9O2lmKGkudG9VcHBlckNhc2UoKWluIHIpe3ZhciBvPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP05zKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7SXIoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOk5zKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfSh7fSxuKTtyZXR1cm4gZGVsZXRlIG8ubWV0aG9kLHJbaS50b1VwcGVyQ2FzZSgpXShBLGUsdCxvKX12YXIgcz1PYmplY3Qua2V5cyhyKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiciJy5jb25jYXQoQSwnIicpfSkpLGE9IiIuY29uY2F0KHMuc2xpY2UoMCwtMSkuam9pbigiLCAiKSwiIGFuZCAiKS5jb25jYXQocy5zbGljZSgtMSkpO3Rocm93IG5ldyBFcnJvcignVW5hdmFpbGFibGUgbWV0aG9kICInLmNvbmNhdChpLCciLiBBdmFpbGFibGUgbWV0aG9kcyBhcmUgJykuY29uY2F0KGEpKX1mdW5jdGlvbiBtKEEpe3JldHVybiByKEEpfHx0KEEpfWZ1bmN0aW9uIEYoQSxlLHQsbil7dmFyIGk9cChBLGUudG9BcnJheSgpLHQudG9BcnJheSgpLG4pO3JldHVybnt0OmgoaS50KSx5OmgoaS55KX19cmV0dXJuIGUoInNvbHZlT0RFIix7ImZ1bmN0aW9uLCBBcnJheSwgQXJyYXksIE9iamVjdCI6cCwiZnVuY3Rpb24sIE1hdHJpeCwgTWF0cml4LCBPYmplY3QiOkYsImZ1bmN0aW9uLCBBcnJheSwgQXJyYXkiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gcChBLGUsdCx7fSl9LCJmdW5jdGlvbiwgTWF0cml4LCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gRihBLGUsdCx7fSl9LCJmdW5jdGlvbiwgQXJyYXksIG51bWJlciB8IEJpZ051bWJlciB8IFVuaXQiOmZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1wKEEsZSxbdF0se30pO3JldHVybnt0Om4udCx5Om4ueS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBWzBdfSkpfX0sImZ1bmN0aW9uLCBNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciB8IFVuaXQiOmZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1wKEEsZS50b0FycmF5KCksW3RdLHt9KTtyZXR1cm57dDpoKG4udCkseTpoKG4ueS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBWzBdfSkpKX19LCJmdW5jdGlvbiwgQXJyYXksIG51bWJlciB8IEJpZ051bWJlciB8IFVuaXQsIE9iamVjdCI6ZnVuY3Rpb24oQSxlLHQsbil7dmFyIGk9cChBLGUsW3RdLG4pO3JldHVybnt0OmkudCx5OmkueS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBWzBdfSkpfX0sImZ1bmN0aW9uLCBNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciB8IFVuaXQsIE9iamVjdCI6ZnVuY3Rpb24oQSxlLHQsbil7dmFyIGk9cChBLGUudG9BcnJheSgpLFt0XSxuKTtyZXR1cm57dDpoKGkudCkseTpoKGkueS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBWzBdfSkpKX19fSl9KSkseXM9cEEoImVyZiIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO3JldHVybiBlKCJuYW1lIix7bnVtYmVyOmZ1bmN0aW9uKEEpe3ZhciBlPU1hdGguYWJzKEEpO3JldHVybiBlPj1Tcz9XKEEpOmU8PVRzP1coQSkqZnVuY3Rpb24oQSl7dmFyIGUsdD1BKkEsbj1Sc1swXVs0XSp0LGk9dDtmb3IoZT0wO2U8MztlKz0xKW49KG4rUnNbMF1bZV0pKnQsaT0oaStHc1swXVtlXSkqdDtyZXR1cm4gQSoobitSc1swXVszXSkvKGkrR3NbMF1bM10pfShlKTplPD00P1coQSkqKDEtZnVuY3Rpb24oQSl7dmFyIGUsdD1Sc1sxXVs4XSpBLG49QTtmb3IoZT0wO2U8NztlKz0xKXQ9KHQrUnNbMV1bZV0pKkEsbj0obitHc1sxXVtlXSkqQTt2YXIgaT0odCtSc1sxXVs3XSkvKG4rR3NbMV1bN10pLHI9cGFyc2VJbnQoMTYqQSkvMTYsbz0oQS1yKSooQStyKTtyZXR1cm4gTWF0aC5leHAoLXIqcikqTWF0aC5leHAoLW8pKml9KGUpKTpXKEEpKigxLWZ1bmN0aW9uKEEpe3ZhciBlLHQ9MS8oQSpBKSxuPVJzWzJdWzVdKnQsaT10O2ZvcihlPTA7ZTw0O2UrPTEpbj0obitSc1syXVtlXSkqdCxpPShpK0dzWzJdW2VdKSp0O3ZhciByPXQqKG4rUnNbMl1bNF0pLyhpK0dzWzJdWzRdKTtyPSh4cy1yKS9BO3ZhciBvPShBLSh0PXBhcnNlSW50KDE2KkEpLzE2KSkqKEErdCk7cmV0dXJuIE1hdGguZXhwKC10KnQpKk1hdGguZXhwKC1vKSpyfShlKSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLFRzPS40Njg3NSx4cz0uNTY0MTg5NTgzNTQ3NzU2MyxScz1bWzMuMTYxMTIzNzQzODcwNTY1NSwxMTMuODY0MTU0MTUxMDUwMTYsMzc3LjQ4NTIzNzY4NTMwMiwzMjA5LjM3NzU4OTEzODQ2OTQsLjE4NTc3NzcwNjE4NDYwMzE1XSxbLjU2NDE4ODQ5Njk4ODY3MDEsOC44ODMxNDk3OTQzODgzNzcsNjYuMTE5MTkwNjM3MTQxNjMsMjk4LjYzNTEzODE5NzQwMDEsODgxLjk1MjIyMTI0MTc2OSwxNzEyLjA0NzYxMjYzNDA3MDcsMjA1MS4wNzgzNzc4MjYwNzE2LDEyMzAuMzM5MzU0Nzk3OTk3MiwyLjE1MzExNTM1NDc0NDAzODNlLThdLFsuMzA1MzI2NjM0OTYxMjMyMzYsLjM2MDM0NDg5OTk0OTgwNDQ1LC4xMjU3ODE3MjYxMTEyMjkyNiwuMDE2MDgzNzg1MTQ4NzQyMjc1LC4wMDA2NTg3NDkxNjE1Mjk4Mzc4LC4wMTYzMTUzODcxMzczMDIwOTddXSxHcz1bWzIzLjYwMTI5MDk1MjM0NDEyMiwyNDQuMDI0NjM3OTM0NDQ0MTcsMTI4Mi42MTY1MjYwNzczNzIzLDI4NDQuMjM2ODMzNDM5MTcxXSxbMTUuNzQ0OTI2MTEwNzA5ODM1LDExNy42OTM5NTA4OTEzMTI1LDUzNy4xODExMDE4NjIwMDk5LDE2MjEuMzg5NTc0NTY2NjkwMywzMjkwLjc5OTIzNTczMzQ1OTcsNDM2Mi42MTkwOTAxNDMyNDcsMzQzOS4zNjc2NzQxNDM3MjE2LDEyMzAuMzM5MzU0ODAzNzQ5NV0sWzIuNTY4NTIwMTkyMjg5ODIyLDEuODcyOTUyODQ5OTIzNDYwNCwuNTI3OTA1MTAyOTUxNDI4NSwuMDYwNTE4MzQxMzEyNDQxMzIsLjAwMjMzNTIwNDk3NjI2ODY5MThdXSxTcz1NYXRoLnBvdygyLDUzKSxicz1wQSgiemV0YSIsWyJ0eXBlZCIsImNvbmZpZyIsIm11bHRpcGx5IiwicG93IiwiZGl2aWRlIiwiZmFjdG9yaWFsIiwiZXF1YWwiLCJzbWFsbGVyRXEiLCJpc05lZ2F0aXZlIiwiZ2FtbWEiLCJzaW4iLCJzdWJ0cmFjdCIsImFkZCIsIj9Db21wbGV4IiwiP0JpZ051bWJlciIsInBpIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubXVsdGlwbHksaT1BLnBvdyxyPUEuZGl2aWRlLG89QS5mYWN0b3JpYWwscz1BLmVxdWFsLGE9QS5zbWFsbGVyRXEsQj1BLmlzTmVnYXRpdmUsYz1BLmdhbW1hLGc9QS5zaW4sRT1BLnN1YnRyYWN0LFE9QS5hZGQsdT1BLkNvbXBsZXgsbD1BLkJpZ051bWJlcixoPUEucGk7cmV0dXJuIGUoInpldGEiLHtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIHcoQSwoZnVuY3Rpb24oQSl7cmV0dXJuIEF9KSwoZnVuY3Rpb24oKXtyZXR1cm4gMjB9KSl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gdyhBLChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGwoQSl9KSwoZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5hYnMoTWF0aC5sb2cxMCh0LmVwc2lsb24pKX0pKX0sQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gMD09PUEucmUmJjA9PT1BLmltP25ldyB1KC0uNSk6MT09PUEucmU/bmV3IHUoTmFOLE5hTik6QS5yZT09PTEvMCYmMD09PUEuaW0/bmV3IHUoMSk6QS5pbT09PTEvMHx8QS5yZT09PS0xLzA/bmV3IHUoTmFOLE5hTik6QyhBLChmdW5jdGlvbihBKXtyZXR1cm4gQX0pLChmdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5yb3VuZCgxOS41Ky45Kk1hdGguYWJzKEEuaW0pKX0pLChmdW5jdGlvbihBKXtyZXR1cm4gQS5yZX0pKX19KTtmdW5jdGlvbiB3KEEsZSx0KXtyZXR1cm4gcyhBLDApP2UoLS41KTpzKEEsMSk/ZShOYU4pOmlzRmluaXRlKEEpP0MoQSxlLHQsKGZ1bmN0aW9uKEEpe3JldHVybiBBfSkpOkIoQSk/ZShOYU4pOmUoMSl9ZnVuY3Rpb24gQyhBLGUsdCxvKXt2YXIgcz10KEEpO2lmKG8oQSk+LShzLTEpLzIpcmV0dXJuIGZ1bmN0aW9uKEEsZSx0KXtmb3IodmFyIG89cigxLG4oSSh0KDApLGUpLEUoMSxpKDIsRSgxLEEpKSkpKSxzPXQoMCksQj10KDEpO2EoQixlKTtCPVEoQiwxKSlzPVEocyxyKG4oTWF0aC5wb3coLTEsQi0xKSxJKEIsZSkpLGkoQixBKSkpO3JldHVybiBuKG8scyl9KEEsZShzKSxlKTt2YXIgQj1uKGkoMixBKSxpKGUoaCksRShBLDEpKSk7cmV0dXJuIEI9bihCLGcobihyKGUoaCksMiksQSkpKSxCPW4oQixjKEUoMSxBKSkpLG4oQixDKEUoMSxBKSxlLHQsbykpfWZ1bmN0aW9uIEkoQSxlKXtmb3IodmFyIHQ9QSxzPUE7YShzLGUpO3M9UShzLDEpKXt2YXIgQj1yKG4obyhRKGUsRShzLDEpKSksaSg0LHMpKSxuKG8oRShlLHMpKSxvKG4oMixzKSkpKTt0PVEodCxCKX1yZXR1cm4gbihlLHQpfX0pKSxIcz1wQSgibW9kZSIsWyJ0eXBlZCIsImlzTmFOIiwiaXNOdW1lcmljIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmlzTmFOLG49QS5pc051bWVyaWM7cmV0dXJuIGUoIm1vZGUiLHsiQXJyYXkgfCBNYXRyaXgiOmksIi4uLiI6ZnVuY3Rpb24oQSl7cmV0dXJuIGkoQSl9fSk7ZnVuY3Rpb24gaShBKXtpZigwPT09KEE9Z24oQS52YWx1ZU9mKCkpKS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY2FsY3VsYXRlIG1vZGUgb2YgYW4gZW1wdHkgYXJyYXkiKTtmb3IodmFyIGU9e30saT1bXSxyPTAsbz0wO288QS5sZW5ndGg7bysrKXt2YXIgcz1BW29dO2lmKG4ocykmJnQocykpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY2FsY3VsYXRlIG1vZGUgb2YgYW4gYXJyYXkgY29udGFpbmluZyBOYU4gdmFsdWVzIik7cyBpbiBlfHwoZVtzXT0wKSxlW3NdKyssZVtzXT09PXI/aS5wdXNoKHMpOmVbc10+ciYmKHI9ZVtzXSxpPVtzXSl9cmV0dXJuIGl9fSkpO2Z1bmN0aW9uIHZzKEEsZSx0KXt2YXIgbjtyZXR1cm4tMSE9PVN0cmluZyhBKS5pbmRleE9mKCJVbmV4cGVjdGVkIHR5cGUiKT8obj1hcmd1bWVudHMubGVuZ3RoPjI/IiAodHlwZTogIitQKHQpKyIsIHZhbHVlOiAiK0pTT04uc3RyaW5naWZ5KHQpKyIpIjoiICh0eXBlOiAiK0EuZGF0YS5hY3R1YWwrIikiLG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgIitlKyIsIHVuZXhwZWN0ZWQgdHlwZSBvZiBhcmd1bWVudCIrbikpOi0xIT09U3RyaW5nKEEpLmluZGV4T2YoImNvbXBsZXggbnVtYmVycyIpPyhuPWFyZ3VtZW50cy5sZW5ndGg+Mj8iICh0eXBlOiAiK1AodCkrIiwgdmFsdWU6ICIrSlNPTi5zdHJpbmdpZnkodCkrIikiOiIiLG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgIitlKyIsIG5vIG9yZGVyaW5nIHJlbGF0aW9uIGlzIGRlZmluZWQgZm9yIGNvbXBsZXggbnVtYmVycyIrbikpOkF9dmFyIGtzPXBBKCJwcm9kIixbInR5cGVkIiwiY29uZmlnIiwibXVsdGlwbHlTY2FsYXIiLCJudW1lcmljIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubXVsdGlwbHlTY2FsYXIsaT1BLm51bWVyaWM7cmV0dXJuIGUoInByb2QiLHsiQXJyYXkgfCBNYXRyaXgiOnIsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7dGhyb3cgbmV3IEVycm9yKCJwcm9kKEEsIGRpbSkgaXMgbm90IHlldCBzdXBwb3J0ZWQiKX0sIi4uLiI6ZnVuY3Rpb24oQSl7cmV0dXJuIHIoQSl9fSk7ZnVuY3Rpb24gcihBKXt2YXIgZTtpZihSbihBLChmdW5jdGlvbihBKXt0cnl7ZT12b2lkIDA9PT1lP0E6bihlLEEpfWNhdGNoKGUpe3Rocm93IHZzKGUsInByb2QiLEEpfX0pKSwic3RyaW5nIj09dHlwZW9mIGUmJihlPWkoZSx0Lm51bWJlcikpLHZvaWQgMD09PWUpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY2FsY3VsYXRlIHByb2Qgb2YgYW4gZW1wdHkgYXJyYXkiKTtyZXR1cm4gZX19KSksanM9cEEoImZvcm1hdCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgiZm9ybWF0Iix7YW55OlZ0LCJhbnksIE9iamVjdCB8IGZ1bmN0aW9uIHwgbnVtYmVyIjpWdH0pfSkpLEpzPXBBKCJiaW4iLFsidHlwZWQiLCJmb3JtYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuZm9ybWF0O3JldHVybiBlKCJiaW4iLHsibnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBKXtyZXR1cm4gdChBLHtub3RhdGlvbjoiYmluIn0pfSwibnVtYmVyIHwgQmlnTnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHQoQSx7bm90YXRpb246ImJpbiIsd29yZFNpemU6ZX0pfX0pfSkpLHpzPXBBKCJvY3QiLFsidHlwZWQiLCJmb3JtYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuZm9ybWF0O3JldHVybiBlKCJvY3QiLHsibnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBKXtyZXR1cm4gdChBLHtub3RhdGlvbjoib2N0In0pfSwibnVtYmVyIHwgQmlnTnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHQoQSx7bm90YXRpb246Im9jdCIsd29yZFNpemU6ZX0pfX0pfSkpLExzPXBBKCJoZXgiLFsidHlwZWQiLCJmb3JtYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuZm9ybWF0O3JldHVybiBlKCJoZXgiLHsibnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBKXtyZXR1cm4gdChBLHtub3RhdGlvbjoiaGV4In0pfSwibnVtYmVyIHwgQmlnTnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHQoQSx7bm90YXRpb246ImhleCIsd29yZFNpemU6ZX0pfX0pfSkpLFBzPS9cJChbXHcuXSspL2csT3M9cEEoInByaW50IixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKCJwcmludCIseyJzdHJpbmcsIE9iamVjdCB8IEFycmF5IjpWcywic3RyaW5nLCBPYmplY3QgfCBBcnJheSwgbnVtYmVyIHwgT2JqZWN0IjpWc30pfSkpO2Z1bmN0aW9uIFZzKEEsZSx0KXtyZXR1cm4gQS5yZXBsYWNlKFBzLChmdW5jdGlvbihBLG4pe3ZhciBpPW4uc3BsaXQoIi4iKSxyPWVbaS5zaGlmdCgpXTtmb3Iodm9pZCAwIT09ciYmci5pc01hdHJpeCYmKHI9ci50b0FycmF5KCkpO2kubGVuZ3RoJiZ2b2lkIDAhPT1yOyl7dmFyIG89aS5zaGlmdCgpO3I9bz9yW29dOnIrIi4ifXJldHVybiB2b2lkIDAhPT1yP0Iocik/cjpWdChyLHQpOkF9KSl9dmFyIFdzPXBBKCJ0byIsWyJ0eXBlZCIsIm1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmNvbmNhdDtyZXR1cm4gZSgidG8iLHsiVW5pdCwgVW5pdCB8IHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS50byhlKX19LERyKHt0eXBlZDplLG1hdHJpeDp0LGNvbmNhdDpufSkoe0RzOiEwfSkpfSkpLEtzPSJpc1ByaW1lIixYcz1wQShLcyxbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJuIGUoS3Mse251bWJlcjpmdW5jdGlvbihBKXtpZigwKkEhPTApcmV0dXJuITE7aWYoQTw9MylyZXR1cm4gQT4xO2lmKEElMj09MHx8QSUzPT0wKXJldHVybiExO2Zvcih2YXIgZT01O2UqZTw9QTtlKz02KWlmKEElZT09MHx8QSUoZSsyKT09MClyZXR1cm4hMTtyZXR1cm4hMH0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe2lmKDAqQS50b051bWJlcigpIT0wKXJldHVybiExO2lmKEEubHRlKDMpKXJldHVybiBBLmd0KDEpO2lmKEEubW9kKDIpLmVxKDApfHxBLm1vZCgzKS5lcSgwKSlyZXR1cm4hMTtpZihBLmx0KE1hdGgucG93KDIsMzIpKSl7Zm9yKHZhciBlPUEudG9OdW1iZXIoKSx0PTU7dCp0PD1lO3QrPTYpaWYoZSV0PT0wfHxlJSh0KzIpPT0wKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIG4oQSxlLHQpe2Zvcih2YXIgbj0xOyFlLmVxKDApOyllLm1vZCgyKS5lcSgwKT8oZT1lLmRpdigyKSxBPUEubXVsKEEpLm1vZCh0KSk6KGU9ZS5zdWIoMSksbj1BLm11bChuKS5tb2QodCkpO3JldHVybiBufWZvcih2YXIgaT1BLmNvbnN0cnVjdG9yLmNsb25lKHtwcmVjaXNpb246MipBLnRvRml4ZWQoMCkubGVuZ3RofSkscj0wLG89KEE9bmV3IGkoQSkpLnN1YigxKTtvLm1vZCgyKS5lcSgwKTspbz1vLmRpdigyKSxyKz0xO3ZhciBzPW51bGw7aWYoQS5sdCgiMzMxNzA0NDA2NDY3OTg4NzM4NTk2MTk4MSIpKXM9WzIsMyw1LDcsMTEsMTMsMTcsMTksMjMsMjksMzEsMzcsNDFdLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGU8QX0pKTtlbHNle3ZhciBhPU1hdGgubWluKEEudG9OdW1iZXIoKS0yLE1hdGguZmxvb3IoMipNYXRoLnBvdyhBLnRvRml4ZWQoMCkubGVuZ3RoKk1hdGgubG9nKDEwKSwyKSkpO3M9W107Zm9yKHZhciBCPTI7Qjw9YTtCKz0xKXMucHVzaChhKX1mb3IodmFyIGM9MDtjPHMubGVuZ3RoO2MrPTEpe3ZhciBnPXNbY10sRT1uKEEuc3ViKEEpLmFkZChnKSxvLEEpO2lmKCFFLmVxKDEpKWZvcih2YXIgUT0wLHU9RTshdS5lcShBLnN1YigxKSk7USs9MSx1PXUubXVsKHUpLm1vZChBKSlpZihRPT09ci0xKXJldHVybiExfXJldHVybiEwfSwiQXJyYXkgfCBNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gR24oZSxBKX19KSl9KX0pKSxacz1wQSgibnVtZXJpYyIsWyJudW1iZXIiLCI/YmlnbnVtYmVyIiwiP2ZyYWN0aW9uIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEubnVtYmVyLHQ9QS5iaWdudW1iZXIsbj1BLmZyYWN0aW9uLGk9e3N0cmluZzohMCxudW1iZXI6ITAsQmlnTnVtYmVyOiEwLEZyYWN0aW9uOiEwfSxyPXtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIGUoQSl9LEJpZ051bWJlcjp0P2Z1bmN0aW9uKEEpe3JldHVybiB0KEEpfTp0cyxGcmFjdGlvbjpuP2Z1bmN0aW9uKEEpe3JldHVybiBuKEEpfTpuc307cmV0dXJuIGZ1bmN0aW9uKEEpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToibnVtYmVyIjtpZih2b2lkIDAhPT0oYXJndW1lbnRzLmxlbmd0aD4yP2FyZ3VtZW50c1syXTp2b2lkIDApKXRocm93IG5ldyBTeW50YXhFcnJvcigibnVtZXJpYygpIHRha2VzIG9uZSBvciB0d28gYXJndW1lbnRzIik7dmFyIHQ9UChBKTtpZighKHQgaW4gaSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNvbnZlcnQgIitBKycgb2YgdHlwZSAiJyt0KyciOyB2YWxpZCBpbnB1dCB0eXBlcyBhcmUgJytPYmplY3Qua2V5cyhpKS5qb2luKCIsICIpKTtpZighKGUgaW4gcikpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNvbnZlcnQgIitBKycgdG8gdHlwZSAiJytlKyciOyB2YWxpZCBvdXRwdXQgdHlwZXMgYXJlICcrT2JqZWN0LmtleXMocikuam9pbigiLCAiKSk7cmV0dXJuIGU9PT10P0E6cltlXShBKX19KSksX3M9ImRpdmlkZVNjYWxhciIscXM9cEEoX3MsWyJ0eXBlZCIsIm51bWVyaWMiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZDtyZXR1cm4gQS5udW1lcmljLGUoX3MseyJudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS9lfSwiQ29tcGxleCwgQ29tcGxleCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5kaXYoZSl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5kaXYoZSl9LCJGcmFjdGlvbiwgRnJhY3Rpb24iOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuZGl2KGUpfSwiVW5pdCwgbnVtYmVyIHwgQ29tcGxleCB8IEZyYWN0aW9uIHwgQmlnTnVtYmVyIHwgVW5pdCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5kaXZpZGUoZSl9LCJudW1iZXIgfCBGcmFjdGlvbiB8IENvbXBsZXggfCBCaWdOdW1iZXIsIFVuaXQiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGUuZGl2aWRlSW50byhBKX19KX0pKSwkcz1wQSgicG93IixbInR5cGVkIiwiY29uZmlnIiwiaWRlbnRpdHkiLCJtdWx0aXBseSIsIm1hdHJpeCIsImludiIsImZyYWN0aW9uIiwibnVtYmVyIiwiQ29tcGxleCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLmlkZW50aXR5LGk9QS5tdWx0aXBseSxyPUEubWF0cml4LG89QS5pbnYscz1BLm51bWJlcixhPUEuZnJhY3Rpb24sQj1BLkNvbXBsZXg7cmV0dXJuIGUoInBvdyIseyJudW1iZXIsIG51bWJlciI6YywiQ29tcGxleCwgQ29tcGxleCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5wb3coZSl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZS5pc0ludGVnZXIoKXx8QT49MHx8dC5wcmVkaWN0YWJsZT9BLnBvdyhlKTpuZXcgQihBLnRvTnVtYmVyKCksMCkucG93KGUudG9OdW1iZXIoKSwwKX0sIkZyYWN0aW9uLCBGcmFjdGlvbiI6ZnVuY3Rpb24oQSxlKXt2YXIgbj1BLnBvdyhlKTtpZihudWxsIT1uKXJldHVybiBuO2lmKHQucHJlZGljdGFibGUpdGhyb3cgbmV3IEVycm9yKCJSZXN1bHQgb2YgcG93IGlzIG5vbi1yYXRpb25hbCBhbmQgY2Fubm90IGJlIGV4cHJlc3NlZCBhcyBhIGZyYWN0aW9uIik7cmV0dXJuIGMoQS52YWx1ZU9mKCksZS52YWx1ZU9mKCkpfSwiQXJyYXksIG51bWJlciI6ZywiQXJyYXksIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZyhBLGUudG9OdW1iZXIoKSl9LCJNYXRyaXgsIG51bWJlciI6RSwiTWF0cml4LCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEUoQSxlLnRvTnVtYmVyKCkpfSwiVW5pdCwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLnBvdyhlKX19KTtmdW5jdGlvbiBjKEEsZSl7aWYodC5wcmVkaWN0YWJsZSYmIVYoZSkmJkE8MCl0cnl7dmFyIG49YShlKSxpPXMobik7aWYoKGU9PT1pfHxNYXRoLmFicygoZS1pKS9lKTwxZS0xNCkmJm4uZCUyPT0xKXJldHVybihuLm4lMj09MD8xOi0xKSpNYXRoLnBvdygtQSxlKX1jYXRjaChBKXt9cmV0dXJuIHQucHJlZGljdGFibGUmJihBPC0xJiZlPT09MS8wfHxBPi0xJiZBPDAmJmU9PT0tMS8wKT9OYU46VihlKXx8QT49MHx8dC5wcmVkaWN0YWJsZT9QaShBLGUpOkEqQTwxJiZlPT09MS8wfHxBKkE+MSYmZT09PS0xLzA/MDpuZXcgQihBLDApLnBvdyhlLDApfWZ1bmN0aW9uIGcoQSxlKXtpZighVihlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJGb3IgQV5iLCBiIG11c3QgYmUgYW4gaW50ZWdlciAodmFsdWUgaXMgIitlKyIpIik7dmFyIHQ9JHQoQSk7aWYoMiE9PXQubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiRm9yIEFeYiwgQSBtdXN0IGJlIDIgZGltZW5zaW9uYWwgKEEgaGFzICIrdC5sZW5ndGgrIiBkaW1lbnNpb25zKSIpO2lmKHRbMF0hPT10WzFdKXRocm93IG5ldyBFcnJvcigiRm9yIEFeYiwgQSBtdXN0IGJlIHNxdWFyZSAoc2l6ZSBpcyAiK3RbMF0rIngiK3RbMV0rIikiKTtpZihlPDApdHJ5e3JldHVybiBnKG8oQSksLWUpfWNhdGNoKEEpe2lmKCJDYW5ub3QgY2FsY3VsYXRlIGludmVyc2UsIGRldGVybWluYW50IGlzIHplcm8iPT09QS5tZXNzYWdlKXRocm93IG5ldyBUeXBlRXJyb3IoIkZvciBBXmIsIHdoZW4gQSBpcyBub3QgaW52ZXJ0aWJsZSwgYiBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciAodmFsdWUgaXMgIitlKyIpIik7dGhyb3cgQX1mb3IodmFyIHI9bih0WzBdKS52YWx1ZU9mKCkscz1BO2U+PTE7KTE9PSgxJmUpJiYocj1pKHMscikpLGU+Pj0xLHM9aShzLHMpO3JldHVybiByfWZ1bmN0aW9uIEUoQSxlKXtyZXR1cm4gcihnKEEudmFsdWVPZigpLGUpKX19KSksQWE9Ik51bWJlciBvZiBkZWNpbWFscyBpbiBmdW5jdGlvbiByb3VuZCBtdXN0IGJlIGFuIGludGVnZXIiLGVhPXBBKCJyb3VuZCIsWyJ0eXBlZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiemVyb3MiLCJCaWdOdW1iZXIiLCJEZW5zZU1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmVxdWFsU2NhbGFyLGk9QS56ZXJvcyxyPUEuQmlnTnVtYmVyLG89QS5EZW5zZU1hdHJpeCxzPXJyKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KSxhPW9yKHt0eXBlZDplLERlbnNlTWF0cml4Om99KSxCPXNyKHt0eXBlZDplfSk7cmV0dXJuIGUoInJvdW5kIix7bnVtYmVyOk9pLCJudW1iZXIsIG51bWJlciI6T2ksIm51bWJlciwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe2lmKCFlLmlzSW50ZWdlcigpKXRocm93IG5ldyBUeXBlRXJyb3IoQWEpO3JldHVybiBuZXcgcihBKS50b0RlY2ltYWxQbGFjZXMoZS50b051bWJlcigpKX0sQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5yb3VuZCgpfSwiQ29tcGxleCwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe2lmKGUlMSl0aHJvdyBuZXcgVHlwZUVycm9yKEFhKTtyZXR1cm4gQS5yb3VuZChlKX0sIkNvbXBsZXgsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtpZighZS5pc0ludGVnZXIoKSl0aHJvdyBuZXcgVHlwZUVycm9yKEFhKTt2YXIgdD1lLnRvTnVtYmVyKCk7cmV0dXJuIEEucm91bmQodCl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS50b0RlY2ltYWxQbGFjZXMoMCl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtpZighZS5pc0ludGVnZXIoKSl0aHJvdyBuZXcgVHlwZUVycm9yKEFhKTtyZXR1cm4gQS50b0RlY2ltYWxQbGFjZXMoZS50b051bWJlcigpKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIEEucm91bmQoKX0sIkZyYWN0aW9uLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7aWYoZSUxKXRocm93IG5ldyBUeXBlRXJyb3IoQWEpO3JldHVybiBBLnJvdW5kKGUpfSwiRnJhY3Rpb24sIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtpZighZS5pc0ludGVnZXIoKSl0aHJvdyBuZXcgVHlwZUVycm9yKEFhKTtyZXR1cm4gQS5yb3VuZChlLnRvTnVtYmVyKCkpfSwiQXJyYXkgfCBNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gR24oZSxBLCEwKX19KSksIlNwYXJzZU1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gcyhlLHQsQSwhMSl9fSkpLCJEZW5zZU1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gQihlLHQsQSwhMSl9fSkpLCJBcnJheSwgbnVtYmVyIHwgQmlnTnVtYmVyIjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gQih0KGUpLG4sQSwhMSkudmFsdWVPZigpfX0pKSwibnVtYmVyIHwgQ29tcGxleCB8IEJpZ051bWJlciB8IEZyYWN0aW9uLCBTcGFyc2VNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBuKGUsMCk/aSh0LnNpemUoKSx0LnN0b3JhZ2UoKSk6YSh0LGUsQSwhMCl9fSkpLCJudW1iZXIgfCBDb21wbGV4IHwgQmlnTnVtYmVyIHwgRnJhY3Rpb24sIERlbnNlTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gbihlLDApP2kodC5zaXplKCksdC5zdG9yYWdlKCkpOkIodCxlLEEsITApfX0pKSwibnVtYmVyIHwgQ29tcGxleCB8IEJpZ051bWJlciB8IEZyYWN0aW9uLCBBcnJheSI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIEIodChuKSxlLEEsITApLnZhbHVlT2YoKX19KSl9KX0pKSx0YT1wQSgibG9nIixbImNvbmZpZyIsInR5cGVkIiwiZGl2aWRlU2NhbGFyIiwiQ29tcGxleCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLmRpdmlkZVNjYWxhcixpPUEuQ29tcGxleDtyZXR1cm4gZSgibG9nIix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPj0wfHx0LnByZWRpY3RhYmxlP2Z1bmN0aW9uKEEsZSl7cmV0dXJuIE1hdGgubG9nKEEpfShBKTpuZXcgaShBLDApLmxvZygpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmxvZygpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIUEuaXNOZWdhdGl2ZSgpfHx0LnByZWRpY3RhYmxlP0EubG4oKTpuZXcgaShBLnRvTnVtYmVyKCksMCkubG9nKCl9LCJhbnksIGFueSI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4oQShlKSxBKHQpKX19KSl9KX0pKSxuYT1wQSgibG9nMXAiLFsidHlwZWQiLCJjb25maWciLCJkaXZpZGVTY2FsYXIiLCJsb2ciLCJDb21wbGV4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEuZGl2aWRlU2NhbGFyLGk9QS5sb2cscj1BLkNvbXBsZXg7cmV0dXJuIGUoImxvZzFwIix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPj0tMXx8dC5wcmVkaWN0YWJsZT9aKEEpOm8obmV3IHIoQSwwKSl9LENvbXBsZXg6byxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7dmFyIGU9QS5wbHVzKDEpO3JldHVybiFlLmlzTmVnYXRpdmUoKXx8dC5wcmVkaWN0YWJsZT9lLmxuKCk6byhuZXcgcihBLnRvTnVtYmVyKCksMCkpfSwiQXJyYXkgfCBNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gR24oZSxBKX19KSksImFueSwgYW55IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gbihBKGUpLGkodCkpfX0pKX0pO2Z1bmN0aW9uIG8oQSl7dmFyIGU9QS5yZSsxO3JldHVybiBuZXcgcihNYXRoLmxvZyhNYXRoLnNxcnQoZSplK0EuaW0qQS5pbSkpLE1hdGguYXRhbjIoQS5pbSxlKSl9fSkpLGlhPSJudGhSb290cyIscmE9cEEoaWEsWyJjb25maWciLCJ0eXBlZCIsImRpdmlkZVNjYWxhciIsIkNvbXBsZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PShBLmNvbmZpZyxBLmRpdmlkZVNjYWxhcixBLkNvbXBsZXgpLG49W2Z1bmN0aW9uKEEpe3JldHVybiBuZXcgdChBLDApfSxmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoMCxBKX0sZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyB0KC1BLDApfSxmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoMCwtQSl9XTtmdW5jdGlvbiBpKEEsZSl7aWYoZTwwKXRocm93IG5ldyBFcnJvcigiUm9vdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvIik7aWYoMD09PWUpdGhyb3cgbmV3IEVycm9yKCJSb290IG11c3QgYmUgbm9uLXplcm8iKTtpZihlJTEhPTApdGhyb3cgbmV3IEVycm9yKCJSb290IG11c3QgYmUgYW4gaW50ZWdlciIpO2lmKDA9PT1BfHwwPT09QS5hYnMoKSlyZXR1cm5bbmV3IHQoMCwwKV07dmFyIGkscj0ibnVtYmVyIj09dHlwZW9mIEE7KHJ8fDA9PT1BLnJlfHwwPT09QS5pbSkmJihpPXI/MiorKEE8MCk6MD09PUEuaW0/MiorKEEucmU8MCk6MiorKEEuaW08MCkrMSk7Zm9yKHZhciBvPUEuYXJnKCkscz1BLmFicygpLGE9W10sQj1NYXRoLnBvdyhzLDEvZSksYz0wO2M8ZTtjKyspe3ZhciBnPShpKzQqYykvZTtnIT09TWF0aC5yb3VuZChnKT9hLnB1c2gobmV3IHQoe3I6QixwaGk6KG8rMipNYXRoLlBJKmMpL2V9KSk6YS5wdXNoKG5bZyU0XShCKSl9cmV0dXJuIGF9cmV0dXJuIGUoaWEse0NvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIGkoQSwyKX0sIkNvbXBsZXgsIG51bWJlciI6aX0pfSkpLG9hPXBBKCJkb3RQb3ciLFsidHlwZWQiLCJlcXVhbFNjYWxhciIsIm1hdHJpeCIsInBvdyIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmVxdWFsU2NhbGFyLG49QS5tYXRyaXgsaT1BLnBvdyxyPUEuRGVuc2VNYXRyaXgsbz1BLmNvbmNhdCxzPWRyKHt0eXBlZDplfSksYT1Jbyh7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksQj1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjp0fSksYz1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksZz1Ecih7dHlwZWQ6ZSxtYXRyaXg6bixjb25jYXQ6b30pLEU9e307Zm9yKHZhciBRIGluIGkuc2lnbmF0dXJlcylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaS5zaWduYXR1cmVzLFEpJiYoUS5pbmNsdWRlcygiTWF0cml4Iil8fFEuaW5jbHVkZXMoIkFycmF5Iil8fChFW1FdPWkuc2lnbmF0dXJlc1tRXSkpO3ZhciB1PWUoRSk7cmV0dXJuIGUoImRvdFBvdyIsZyh7ZWxvcDp1LFNTOmEsRFM6cyxTczpCLHNTOmN9KSl9KSksc2E9ImRvdERpdmlkZSIsYWE9cEEoc2EsWyJ0eXBlZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiZGl2aWRlU2NhbGFyIiwiRGVuc2VNYXRyaXgiLCJjb25jYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5lcXVhbFNjYWxhcixpPUEuZGl2aWRlU2NhbGFyLHI9QS5EZW5zZU1hdHJpeCxvPUEuY29uY2F0LHM9TXIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6bn0pLGE9ZHIoe3R5cGVkOmV9KSxCPUlvKHt0eXBlZDplLERlbnNlTWF0cml4OnJ9KSxjPXJyKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KSxnPW9yKHt0eXBlZDplLERlbnNlTWF0cml4OnJ9KSxFPURyKHt0eXBlZDplLG1hdHJpeDp0LGNvbmNhdDpvfSk7cmV0dXJuIGUoc2EsRSh7ZWxvcDppLFNTOkIsRFM6YSxTRDpzLFNzOmMsc1M6Z30pKX0pKTtmdW5jdGlvbiBCYShBKXt2YXIgZT1BLkRlbnNlTWF0cml4O3JldHVybiBmdW5jdGlvbihBLHQsbil7dmFyIGk9QS5zaXplKCk7aWYoMiE9PWkubGVuZ3RoKXRocm93IG5ldyBSYW5nZUVycm9yKCJNYXRyaXggbXVzdCBiZSB0d28gZGltZW5zaW9uYWwgKHNpemU6ICIrVnQoaSkrIikiKTt2YXIgcj1pWzBdO2lmKHIhPT1pWzFdKXRocm93IG5ldyBSYW5nZUVycm9yKCJNYXRyaXggbXVzdCBiZSBzcXVhcmUgKHNpemU6ICIrVnQoaSkrIikiKTt2YXIgbz1bXTtpZihnKHQpKXt2YXIgcz10LnNpemUoKSxhPXQuX2RhdGE7aWYoMT09PXMubGVuZ3RoKXtpZihzWzBdIT09cil0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRGltZW5zaW9uIG1pc21hdGNoLiBNYXRyaXggY29sdW1ucyBtdXN0IG1hdGNoIHZlY3RvciBsZW5ndGguIik7Zm9yKHZhciBCPTA7QjxyO0IrKylvW0JdPVthW0JdXTtyZXR1cm4gbmV3IGUoe2RhdGE6byxzaXplOltyLDFdLGRhdGF0eXBlOnQuX2RhdGF0eXBlfSl9aWYoMj09PXMubGVuZ3RoKXtpZihzWzBdIT09cnx8MSE9PXNbMV0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaC4gTWF0cml4IGNvbHVtbnMgbXVzdCBtYXRjaCB2ZWN0b3IgbGVuZ3RoLiIpO2lmKFEodCkpe2lmKG4pe289W107Zm9yKHZhciBFPTA7RTxyO0UrKylvW0VdPVthW0VdWzBdXTtyZXR1cm4gbmV3IGUoe2RhdGE6byxzaXplOltyLDFdLGRhdGF0eXBlOnQuX2RhdGF0eXBlfSl9cmV0dXJuIHR9aWYodSh0KSl7Zm9yKHZhciBsPTA7bDxyO2wrKylvW2xdPVswXTtmb3IodmFyIGg9dC5fdmFsdWVzLHc9dC5faW5kZXgsQz10Ll9wdHIsST1DWzFdLE09Q1swXTtNPEk7TSsrKW9bd1tNXV1bMF09aFtNXTtyZXR1cm4gbmV3IGUoe2RhdGE6byxzaXplOltyLDFdLGRhdGF0eXBlOnQuX2RhdGF0eXBlfSl9fXRocm93IG5ldyBSYW5nZUVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2guIFRoZSByaWdodCBzaWRlIGhhcyB0byBiZSBlaXRoZXIgMS0gb3IgMi1kaW1lbnNpb25hbCB2ZWN0b3IuIil9aWYoYyh0KSl7dmFyIGQ9JHQodCk7aWYoMT09PWQubGVuZ3RoKXtpZihkWzBdIT09cil0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRGltZW5zaW9uIG1pc21hdGNoLiBNYXRyaXggY29sdW1ucyBtdXN0IG1hdGNoIHZlY3RvciBsZW5ndGguIik7Zm9yKHZhciBwPTA7cDxyO3ArKylvW3BdPVt0W3BdXTtyZXR1cm4gbmV3IGUoe2RhdGE6byxzaXplOltyLDFdfSl9aWYoMj09PWQubGVuZ3RoKXtpZihkWzBdIT09cnx8MSE9PWRbMV0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaC4gTWF0cml4IGNvbHVtbnMgbXVzdCBtYXRjaCB2ZWN0b3IgbGVuZ3RoLiIpO2Zvcih2YXIgbT0wO208cjttKyspb1ttXT1bdFttXVswXV07cmV0dXJuIG5ldyBlKHtkYXRhOm8sc2l6ZTpbciwxXX0pfXRocm93IG5ldyBSYW5nZUVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2guIFRoZSByaWdodCBzaWRlIGhhcyB0byBiZSBlaXRoZXIgMS0gb3IgMi1kaW1lbnNpb25hbCB2ZWN0b3IuIil9fX12YXIgY2E9cEEoImxzb2x2ZSIsWyJ0eXBlZCIsIm1hdHJpeCIsImRpdmlkZVNjYWxhciIsIm11bHRpcGx5U2NhbGFyIiwic3VidHJhY3RTY2FsYXIiLCJlcXVhbFNjYWxhciIsIkRlbnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuZGl2aWRlU2NhbGFyLGk9QS5tdWx0aXBseVNjYWxhcixyPUEuc3VidHJhY3RTY2FsYXIsbz1BLmVxdWFsU2NhbGFyLHM9QS5EZW5zZU1hdHJpeCxhPUJhKHtEZW5zZU1hdHJpeDpzfSk7cmV0dXJuIGUoImxzb2x2ZSIseyJTcGFyc2VNYXRyaXgsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbihBLGUpe2Zvcih2YXIgdD0oZT1hKEEsZSwhMCkpLl9kYXRhLEI9QS5fc2l6ZVswXSxjPUEuX3NpemVbMV0sZz1BLl92YWx1ZXMsRT1BLl9pbmRleCxRPUEuX3B0cix1PVtdLGw9MDtsPGM7bCsrKXt2YXIgaD10W2xdWzBdfHwwO2lmKG8oaCwwKSl1W2xdPVswXTtlbHNle2Zvcih2YXIgdz0wLEM9W10sST1bXSxNPVFbbF0sZD1RW2wrMV0scD1NO3A8ZDtwKyspe3ZhciBtPUVbcF07bT09PWw/dz1nW3BdOm0+bCYmKEMucHVzaChnW3BdKSxJLnB1c2gobSkpfWlmKG8odywwKSl0aHJvdyBuZXcgRXJyb3IoIkxpbmVhciBzeXN0ZW0gY2Fubm90IGJlIHNvbHZlZCBzaW5jZSBtYXRyaXggaXMgc2luZ3VsYXIiKTtmb3IodmFyIEY9bihoLHcpLEQ9MCxZPUkubGVuZ3RoO0Q8WTtEKyspe3ZhciBmPUlbRF07dFtmXT1bcih0W2ZdWzBdfHwwLGkoRixDW0RdKSldfXVbbF09W0ZdfX1yZXR1cm4gbmV3IHMoe2RhdGE6dSxzaXplOltCLDFdfSl9KEEsZSl9LCJEZW5zZU1hdHJpeCwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEIoQSxlKX0sIkFycmF5LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQih0KEEpLGUpLnZhbHVlT2YoKX19KTtmdW5jdGlvbiBCKEEsZSl7Zm9yKHZhciB0PShlPWEoQSxlLCEwKSkuX2RhdGEsQj1BLl9zaXplWzBdLGM9QS5fc2l6ZVsxXSxnPVtdLEU9QS5fZGF0YSxRPTA7UTxjO1ErKyl7dmFyIHU9dFtRXVswXXx8MCxsPXZvaWQgMDtpZihvKHUsMCkpbD0wO2Vsc2V7dmFyIGg9RVtRXVtRXTtpZihvKGgsMCkpdGhyb3cgbmV3IEVycm9yKCJMaW5lYXIgc3lzdGVtIGNhbm5vdCBiZSBzb2x2ZWQgc2luY2UgbWF0cml4IGlzIHNpbmd1bGFyIik7bD1uKHUsaCk7Zm9yKHZhciB3PVErMTt3PEI7dysrKXRbd109W3IodFt3XVswXXx8MCxpKGwsRVt3XVtRXSkpXX1nW1FdPVtsXX1yZXR1cm4gbmV3IHMoe2RhdGE6ZyxzaXplOltCLDFdfSl9fSkpLGdhPXBBKCJ1c29sdmUiLFsidHlwZWQiLCJtYXRyaXgiLCJkaXZpZGVTY2FsYXIiLCJtdWx0aXBseVNjYWxhciIsInN1YnRyYWN0U2NhbGFyIiwiZXF1YWxTY2FsYXIiLCJEZW5zZU1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmRpdmlkZVNjYWxhcixpPUEubXVsdGlwbHlTY2FsYXIscj1BLnN1YnRyYWN0U2NhbGFyLG89QS5lcXVhbFNjYWxhcixzPUEuRGVuc2VNYXRyaXgsYT1CYSh7RGVuc2VNYXRyaXg6c30pO3JldHVybiBlKCJ1c29sdmUiLHsiU3BhcnNlTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9KGU9YShBLGUsITApKS5fZGF0YSxCPUEuX3NpemVbMF0sYz1BLl9zaXplWzFdLGc9QS5fdmFsdWVzLEU9QS5faW5kZXgsUT1BLl9wdHIsdT1bXSxsPWMtMTtsPj0wO2wtLSl7dmFyIGg9dFtsXVswXXx8MDtpZihvKGgsMCkpdVtsXT1bMF07ZWxzZXtmb3IodmFyIHc9MCxDPVtdLEk9W10sTT1RW2xdLGQ9UVtsKzFdLTE7ZD49TTtkLS0pe3ZhciBwPUVbZF07cD09PWw/dz1nW2RdOnA8bCYmKEMucHVzaChnW2RdKSxJLnB1c2gocCkpfWlmKG8odywwKSl0aHJvdyBuZXcgRXJyb3IoIkxpbmVhciBzeXN0ZW0gY2Fubm90IGJlIHNvbHZlZCBzaW5jZSBtYXRyaXggaXMgc2luZ3VsYXIiKTtmb3IodmFyIG09bihoLHcpLEY9MCxEPUkubGVuZ3RoO0Y8RDtGKyspe3ZhciBZPUlbRl07dFtZXT1bcih0W1ldWzBdLGkobSxDW0ZdKSldfXVbbF09W21dfX1yZXR1cm4gbmV3IHMoe2RhdGE6dSxzaXplOltCLDFdfSl9KEEsZSl9LCJEZW5zZU1hdHJpeCwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEIoQSxlKX0sIkFycmF5LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQih0KEEpLGUpLnZhbHVlT2YoKX19KTtmdW5jdGlvbiBCKEEsZSl7Zm9yKHZhciB0PShlPWEoQSxlLCEwKSkuX2RhdGEsQj1BLl9zaXplWzBdLGM9QS5fc2l6ZVsxXSxnPVtdLEU9QS5fZGF0YSxRPWMtMTtRPj0wO1EtLSl7dmFyIHU9dFtRXVswXXx8MCxsPXZvaWQgMDtpZihvKHUsMCkpbD0wO2Vsc2V7dmFyIGg9RVtRXVtRXTtpZihvKGgsMCkpdGhyb3cgbmV3IEVycm9yKCJMaW5lYXIgc3lzdGVtIGNhbm5vdCBiZSBzb2x2ZWQgc2luY2UgbWF0cml4IGlzIHNpbmd1bGFyIik7bD1uKHUsaCk7Zm9yKHZhciB3PVEtMTt3Pj0wO3ctLSl0W3ddPVtyKHRbd11bMF18fDAsaShsLEVbd11bUV0pKV19Z1tRXT1bbF19cmV0dXJuIG5ldyBzKHtkYXRhOmcsc2l6ZTpbQiwxXX0pfX0pKSxFYT0ibHNvbHZlQWxsIixRYT1wQShFYSxbInR5cGVkIiwibWF0cml4IiwiZGl2aWRlU2NhbGFyIiwibXVsdGlwbHlTY2FsYXIiLCJzdWJ0cmFjdFNjYWxhciIsImVxdWFsU2NhbGFyIiwiRGVuc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5kaXZpZGVTY2FsYXIsaT1BLm11bHRpcGx5U2NhbGFyLHI9QS5zdWJ0cmFjdFNjYWxhcixvPUEuZXF1YWxTY2FsYXIscz1BLkRlbnNlTWF0cml4LGE9QmEoe0RlbnNlTWF0cml4OnN9KTtyZXR1cm4gZShFYSx7IlNwYXJzZU1hdHJpeCwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PVthKEEsZSwhMCkuX2RhdGEubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQVswXX0pKV0sQj1BLl9zaXplWzBdLGM9QS5fc2l6ZVsxXSxnPUEuX3ZhbHVlcyxFPUEuX2luZGV4LFE9QS5fcHRyLHU9MDt1PGM7dSsrKWZvcih2YXIgbD10Lmxlbmd0aCxoPTA7aDxsO2grKyl7Zm9yKHZhciB3PXRbaF0sQz1bXSxJPVtdLE09UVt1XSxkPVFbdSsxXSxwPTAsbT1NO208ZDttKyspe3ZhciBGPUVbbV07Rj09PXU/cD1nW21dOkY+dSYmKEMucHVzaChnW21dKSxJLnB1c2goRikpfWlmKG8ocCwwKSlpZihvKHdbdV0sMCkpe2lmKDA9PT1oKXt2YXIgRD16dCh3KTtEW3VdPTE7Zm9yKHZhciBZPTAsZj1JLmxlbmd0aDtZPGY7WSsrKXt2YXIgTj1JW1ldO0RbTl09cihEW05dLENbWV0pfXQucHVzaChEKX19ZWxzZXtpZigwPT09aClyZXR1cm5bXTt0LnNwbGljZShoLDEpLGgtPTEsbC09MX1lbHNle3dbdV09bih3W3VdLHApO2Zvcih2YXIgVT0wLHk9SS5sZW5ndGg7VTx5O1UrKyl7dmFyIFQ9SVtVXTt3W1RdPXIod1tUXSxpKHdbdV0sQ1tVXSkpfX19cmV0dXJuIHQubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHMoe2RhdGE6QS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybltBXX0pKSxzaXplOltCLDFdfSl9KSl9KEEsZSl9LCJEZW5zZU1hdHJpeCwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEIoQSxlKX0sIkFycmF5LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQih0KEEpLGUpLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEudmFsdWVPZigpfSkpfX0pO2Z1bmN0aW9uIEIoQSxlKXtmb3IodmFyIHQ9W2EoQSxlLCEwKS5fZGF0YS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBWzBdfSkpXSxCPUEuX2RhdGEsYz1BLl9zaXplWzBdLGc9QS5fc2l6ZVsxXSxFPTA7RTxnO0UrKylmb3IodmFyIFE9dC5sZW5ndGgsdT0wO3U8UTt1Kyspe3ZhciBsPXRbdV07aWYobyhCW0VdW0VdLDApKWlmKG8obFtFXSwwKSl7aWYoMD09PXUpe3ZhciBoPXp0KGwpO2hbRV09MTtmb3IodmFyIHc9RSsxO3c8Zzt3KyspaFt3XT1yKGhbd10sQlt3XVtFXSk7dC5wdXNoKGgpfX1lbHNle2lmKDA9PT11KXJldHVybltdO3Quc3BsaWNlKHUsMSksdS09MSxRLT0xfWVsc2V7bFtFXT1uKGxbRV0sQltFXVtFXSk7Zm9yKHZhciBDPUUrMTtDPGc7QysrKWxbQ109cihsW0NdLGkobFtFXSxCW0NdW0VdKSl9fXJldHVybiB0Lm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBzKHtkYXRhOkEubWFwKChmdW5jdGlvbihBKXtyZXR1cm5bQV19KSksc2l6ZTpbYywxXX0pfSkpfX0pKSx1YT0idXNvbHZlQWxsIixsYT1wQSh1YSxbInR5cGVkIiwibWF0cml4IiwiZGl2aWRlU2NhbGFyIiwibXVsdGlwbHlTY2FsYXIiLCJzdWJ0cmFjdFNjYWxhciIsImVxdWFsU2NhbGFyIiwiRGVuc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5kaXZpZGVTY2FsYXIsaT1BLm11bHRpcGx5U2NhbGFyLHI9QS5zdWJ0cmFjdFNjYWxhcixvPUEuZXF1YWxTY2FsYXIscz1BLkRlbnNlTWF0cml4LGE9QmEoe0RlbnNlTWF0cml4OnN9KTtyZXR1cm4gZSh1YSx7IlNwYXJzZU1hdHJpeCwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PVthKEEsZSwhMCkuX2RhdGEubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQVswXX0pKV0sQj1BLl9zaXplWzBdLGM9QS5fc2l6ZVsxXSxnPUEuX3ZhbHVlcyxFPUEuX2luZGV4LFE9QS5fcHRyLHU9Yy0xO3U+PTA7dS0tKWZvcih2YXIgbD10Lmxlbmd0aCxoPTA7aDxsO2grKyl7Zm9yKHZhciB3PXRbaF0sQz1bXSxJPVtdLE09UVt1XSxkPTAscD1RW3UrMV0tMTtwPj1NO3AtLSl7dmFyIG09RVtwXTttPT09dT9kPWdbcF06bTx1JiYoQy5wdXNoKGdbcF0pLEkucHVzaChtKSl9aWYobyhkLDApKWlmKG8od1t1XSwwKSl7aWYoMD09PWgpe3ZhciBGPXp0KHcpO0ZbdV09MTtmb3IodmFyIEQ9MCxZPUkubGVuZ3RoO0Q8WTtEKyspe3ZhciBmPUlbRF07RltmXT1yKEZbZl0sQ1tEXSl9dC5wdXNoKEYpfX1lbHNle2lmKDA9PT1oKXJldHVybltdO3Quc3BsaWNlKGgsMSksaC09MSxsLT0xfWVsc2V7d1t1XT1uKHdbdV0sZCk7Zm9yKHZhciBOPTAsVT1JLmxlbmd0aDtOPFU7TisrKXt2YXIgeT1JW05dO3dbeV09cih3W3ldLGkod1t1XSxDW05dKSl9fX1yZXR1cm4gdC5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcyh7ZGF0YTpBLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuW0FdfSkpLHNpemU6W0IsMV19KX0pKX0oQSxlKX0sIkRlbnNlTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQihBLGUpfSwiQXJyYXksIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBCKHQoQSksZSkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQS52YWx1ZU9mKCl9KSl9fSk7ZnVuY3Rpb24gQihBLGUpe2Zvcih2YXIgdD1bYShBLGUsITApLl9kYXRhLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEFbMF19KSldLEI9QS5fZGF0YSxjPUEuX3NpemVbMF0sZz1BLl9zaXplWzFdLTE7Zz49MDtnLS0pZm9yKHZhciBFPXQubGVuZ3RoLFE9MDtRPEU7USsrKXt2YXIgdT10W1FdO2lmKG8oQltnXVtnXSwwKSlpZihvKHVbZ10sMCkpe2lmKDA9PT1RKXt2YXIgbD16dCh1KTtsW2ddPTE7Zm9yKHZhciBoPWctMTtoPj0wO2gtLSlsW2hdPXIobFtoXSxCW2hdW2ddKTt0LnB1c2gobCl9fWVsc2V7aWYoMD09PVEpcmV0dXJuW107dC5zcGxpY2UoUSwxKSxRLT0xLEUtPTF9ZWxzZXt1W2ddPW4odVtnXSxCW2ddW2ddKTtmb3IodmFyIHc9Zy0xO3c+PTA7dy0tKXVbd109cih1W3ddLGkodVtnXSxCW3ddW2ddKSl9fXJldHVybiB0Lm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBzKHtkYXRhOkEubWFwKChmdW5jdGlvbihBKXtyZXR1cm5bQV19KSksc2l6ZTpbYywxXX0pfSkpfX0pKSxoYT1wQSgibWF0QWxnbzA4eFMwU2lkIixbInR5cGVkIiwiZXF1YWxTY2FsYXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuZXF1YWxTY2FsYXI7cmV0dXJuIGZ1bmN0aW9uKEEsbixpKXt2YXIgcj1BLl92YWx1ZXMsbz1BLl9pbmRleCxzPUEuX3B0cixhPUEuX3NpemUsQj1BLl9kYXRhdHlwZSxjPW4uX3ZhbHVlcyxnPW4uX2luZGV4LEU9bi5fcHRyLFE9bi5fc2l6ZSx1PW4uX2RhdGF0eXBlO2lmKGEubGVuZ3RoIT09US5sZW5ndGgpdGhyb3cgbmV3IF90KGEubGVuZ3RoLFEubGVuZ3RoKTtpZihhWzBdIT09UVswXXx8YVsxXSE9PVFbMV0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaC4gTWF0cml4IEEgKCIrYSsiKSBtdXN0IG1hdGNoIE1hdHJpeCBCICgiK1ErIikiKTtpZighcnx8IWMpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgcGVyZm9ybSBvcGVyYXRpb24gb24gUGF0dGVybiBTcGFyc2UgTWF0cmljZXMiKTt2YXIgbCxoPWFbMF0sdz1hWzFdLEM9dCxJPTAsTT1pOyJzdHJpbmciPT10eXBlb2YgQiYmQj09PXUmJihsPUIsQz1lLmZpbmQodCxbbCxsXSksST1lLmNvbnZlcnQoMCxsKSxNPWUuZmluZChpLFtsLGxdKSk7Zm9yKHZhciBkLHAsbSxGLEQ9W10sWT1bXSxmPVtdLE49W10sVT1bXSx5PTA7eTx3O3krKyl7Zlt5XT1ZLmxlbmd0aDt2YXIgVD15KzE7Zm9yKHA9c1t5XSxtPXNbeSsxXSxkPXA7ZDxtO2QrKylVW0Y9b1tkXV09VCxOW0ZdPXJbZF0sWS5wdXNoKEYpO2ZvcihwPUVbeV0sbT1FW3krMV0sZD1wO2Q8bTtkKyspVVtGPWdbZF1dPT09VCYmKE5bRl09TShOW0ZdLGNbZF0pKTtmb3IoZD1mW3ldO2Q8WS5sZW5ndGg7KXt2YXIgeD1OW0Y9WVtkXV07Qyh4LEkpP1kuc3BsaWNlKGQsMSk6KEQucHVzaCh4KSxkKyspfX1yZXR1cm4gZlt3XT1ZLmxlbmd0aCxBLmNyZWF0ZVNwYXJzZU1hdHJpeCh7dmFsdWVzOkQsaW5kZXg6WSxwdHI6ZixzaXplOltoLHddLGRhdGF0eXBlOmx9KX19KSksd2E9cEEoInVzZU1hdHJpeEZvckFycmF5U2NhbGFyIixbInR5cGVkIiwibWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeDtyZXR1cm57IkFycmF5LCBudW1iZXIiOmUucmVmZXJUbygiRGVuc2VNYXRyaXgsIG51bWJlciIsKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBBKHQoZSksbikudmFsdWVPZigpfX0pKSwiQXJyYXksIEJpZ051bWJlciI6ZS5yZWZlclRvKCJEZW5zZU1hdHJpeCwgQmlnTnVtYmVyIiwoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIEEodChlKSxuKS52YWx1ZU9mKCl9fSkpLCJudW1iZXIsIEFycmF5IjplLnJlZmVyVG8oIm51bWJlciwgRGVuc2VNYXRyaXgiLChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gQShlLHQobikpLnZhbHVlT2YoKX19KSksIkJpZ051bWJlciwgQXJyYXkiOmUucmVmZXJUbygiQmlnTnVtYmVyLCBEZW5zZU1hdHJpeCIsKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBBKGUsdChuKSkudmFsdWVPZigpfX0pKX19KSksQ2E9ImxlZnRTaGlmdCIsSWE9cEEoQ2EsWyJ0eXBlZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiemVyb3MiLCJEZW5zZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmVxdWFsU2NhbGFyLGk9QS56ZXJvcyxyPUEuRGVuc2VNYXRyaXgsbz1BLmNvbmNhdCxzPWZyKHt0eXBlZDplfSksYT1Ncih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksQj1oYSh7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYz1Vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksZz1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksRT1zcih7dHlwZWQ6ZX0pLFE9RHIoe3R5cGVkOmUsbWF0cml4OnQsY29uY2F0Om99KSx1PXdhKHt0eXBlZDplLG1hdHJpeDp0fSk7cmV0dXJuIGUoQ2EseyJudW1iZXIsIG51bWJlciI6UW8sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpvbywiU3BhcnNlTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBuKHQsMCk/ZS5jbG9uZSgpOmcoZSx0LEEsITEpfX0pKSwiRGVuc2VNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4odCwwKT9lLmNsb25lKCk6RShlLHQsQSwhMSl9fSkpLCJudW1iZXIgfCBCaWdOdW1iZXIsIFNwYXJzZU1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4oZSwwKT9pKHQuc2l6ZSgpLHQuc3RvcmFnZSgpKTpjKHQsZSxBLCEwKX19KSksIm51bWJlciB8IEJpZ051bWJlciwgRGVuc2VNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBuKGUsMCk/aSh0LnNpemUoKSx0LnN0b3JhZ2UoKSk6RSh0LGUsQSwhMCl9fSkpfSx1LFEoe1NTOkIsRFM6cyxTRDphfSkpfSkpLE1hPSJyaWdodEFyaXRoU2hpZnQiLGRhPXBBKE1hLFsidHlwZWQiLCJtYXRyaXgiLCJlcXVhbFNjYWxhciIsInplcm9zIiwiRGVuc2VNYXRyaXgiLCJjb25jYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5lcXVhbFNjYWxhcixpPUEuemVyb3Mscj1BLkRlbnNlTWF0cml4LG89QS5jb25jYXQscz1mcih7dHlwZWQ6ZX0pLGE9TXIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6bn0pLEI9aGEoe3R5cGVkOmUsZXF1YWxTY2FsYXI6bn0pLGM9VXIoe3R5cGVkOmUsRGVuc2VNYXRyaXg6cn0pLGc9cnIoe3R5cGVkOmUsZXF1YWxTY2FsYXI6bn0pLEU9c3Ioe3R5cGVkOmV9KSxRPURyKHt0eXBlZDplLG1hdHJpeDp0LGNvbmNhdDpvfSksdT13YSh7dHlwZWQ6ZSxtYXRyaXg6dH0pO3JldHVybiBlKE1hLHsibnVtYmVyLCBudW1iZXIiOnVvLCJCaWdOdW1iZXIsIEJpZ051bWJlciI6c28sIlNwYXJzZU1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gbih0LDApP2UuY2xvbmUoKTpnKGUsdCxBLCExKX19KSksIkRlbnNlTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBuKHQsMCk/ZS5jbG9uZSgpOkUoZSx0LEEsITEpfX0pKSwibnVtYmVyIHwgQmlnTnVtYmVyLCBTcGFyc2VNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBuKGUsMCk/aSh0LnNpemUoKSx0LnN0b3JhZ2UoKSk6Yyh0LGUsQSwhMCl9fSkpLCJudW1iZXIgfCBCaWdOdW1iZXIsIERlbnNlTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gbihlLDApP2kodC5zaXplKCksdC5zdG9yYWdlKCkpOkUodCxlLEEsITApfX0pKX0sdSxRKHtTUzpCLERTOnMsU0Q6YX0pKX0pKSxwYT0icmlnaHRMb2dTaGlmdCIsbWE9cEEocGEsWyJ0eXBlZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiemVyb3MiLCJEZW5zZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmVxdWFsU2NhbGFyLGk9QS56ZXJvcyxyPUEuRGVuc2VNYXRyaXgsbz1BLmNvbmNhdCxzPWZyKHt0eXBlZDplfSksYT1Ncih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksQj1oYSh7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYz1Vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksZz1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksRT1zcih7dHlwZWQ6ZX0pLFE9RHIoe3R5cGVkOmUsbWF0cml4OnQsY29uY2F0Om99KSx1PXdhKHt0eXBlZDplLG1hdHJpeDp0fSk7cmV0dXJuIGUocGEseyJudW1iZXIsIG51bWJlciI6bG8sIlNwYXJzZU1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gbih0LDApP2UuY2xvbmUoKTpnKGUsdCxBLCExKX19KSksIkRlbnNlTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBuKHQsMCk/ZS5jbG9uZSgpOkUoZSx0LEEsITEpfX0pKSwibnVtYmVyIHwgQmlnTnVtYmVyLCBTcGFyc2VNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBuKGUsMCk/aSh0LnNpemUoKSx0LnN0b3JhZ2UoKSk6Yyh0LGUsQSwhMCl9fSkpLCJudW1iZXIgfCBCaWdOdW1iZXIsIERlbnNlTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gbihlLDApP2kodC5zaXplKCksdC5zdG9yYWdlKCkpOkUodCxlLEEsITApfX0pKX0sdSxRKHtTUzpCLERTOnMsU0Q6YX0pKX0pKSxGYT1wQSgiYW5kIixbInR5cGVkIiwibWF0cml4IiwiZXF1YWxTY2FsYXIiLCJ6ZXJvcyIsIm5vdCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmVxdWFsU2NhbGFyLGk9QS56ZXJvcyxyPUEubm90LG89QS5jb25jYXQscz1Ncih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYT1Tcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksQj1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYz1zcih7dHlwZWQ6ZX0pLGc9RHIoe3R5cGVkOmUsbWF0cml4OnQsY29uY2F0Om99KTtyZXR1cm4gZSgiYW5kIix7Im51bWJlciwgbnVtYmVyIjp5bywiQ29tcGxleCwgQ29tcGxleCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4hKDA9PT1BLnJlJiYwPT09QS5pbXx8MD09PWUucmUmJjA9PT1lLmltKX0sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiEoQS5pc1plcm8oKXx8ZS5pc1plcm8oKXx8QS5pc05hTigpfHxlLmlzTmFOKCkpfSwiVW5pdCwgVW5pdCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIEEoZS52YWx1ZXx8MCx0LnZhbHVlfHwwKX19KSksIlNwYXJzZU1hdHJpeCwgYW55IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gcih0KT9pKGUuc2l6ZSgpLGUuc3RvcmFnZSgpKTpCKGUsdCxBLCExKX19KSksIkRlbnNlTWF0cml4LCBhbnkiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiByKHQpP2koZS5zaXplKCksZS5zdG9yYWdlKCkpOmMoZSx0LEEsITEpfX0pKSwiYW55LCBTcGFyc2VNYXRyaXgiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiByKGUpP2koZS5zaXplKCksZS5zdG9yYWdlKCkpOkIodCxlLEEsITApfX0pKSwiYW55LCBEZW5zZU1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHIoZSk/aShlLnNpemUoKSxlLnN0b3JhZ2UoKSk6Yyh0LGUsQSwhMCl9fSkpLCJBcnJheSwgYW55IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSxuKXtyZXR1cm4gQSh0KGUpLG4pLnZhbHVlT2YoKX19KSksImFueSwgQXJyYXkiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybiBBKGUsdChuKSkudmFsdWVPZigpfX0pKX0sZyh7U1M6YSxEUzpzfSkpfSkpLERhPSJjb21wYXJlIixZYT1wQShEYSxbInR5cGVkIiwiY29uZmlnIiwibWF0cml4IiwiZXF1YWxTY2FsYXIiLCJCaWdOdW1iZXIiLCJGcmFjdGlvbiIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEuZXF1YWxTY2FsYXIsaT1BLm1hdHJpeCxyPUEuQmlnTnVtYmVyLG89QS5GcmFjdGlvbixzPUEuRGVuc2VNYXRyaXgsYT1BLmNvbmNhdCxCPWRyKHt0eXBlZDplfSksYz1wcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksZz1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpzfSksRT1Ecih7dHlwZWQ6ZSxtYXRyaXg6aSxjb25jYXQ6YX0pLFE9bmkoe3R5cGVkOmV9KTtyZXR1cm4gZShEYSxmYSh7dHlwZWQ6ZSxjb25maWc6dH0pLHsiYm9vbGVhbiwgYm9vbGVhbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQT09PWU/MDpBPmU/MTotMX0sIkJpZ051bWJlciwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiB0aShBLGUsdC5lcHNpbG9uKT9uZXcgcigwKTpuZXcgcihBLmNtcChlKSl9LCJGcmFjdGlvbiwgRnJhY3Rpb24iOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyBvKEEuY29tcGFyZShlKSl9LCJDb21wbGV4LCBDb21wbGV4IjpmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIk5vIG9yZGVyaW5nIHJlbGF0aW9uIGlzIGRlZmluZWQgZm9yIGNvbXBsZXggbnVtYmVycyIpfX0sUSxFKHtTUzpjLERTOkIsU3M6Z30pKX0pKSxmYT1wQShEYSxbInR5cGVkIiwiY29uZmlnIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZztyZXR1cm4gZShEYSx7Im51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBzQShBLGUsdC5lcHNpbG9uKT8wOkE+ZT8xOi0xfX0pfSkpLE5hPW4oMzIyOCksVWE9ImNvbXBhcmVOYXR1cmFsIix5YT1wQShVYSxbInR5cGVkIiwiY29tcGFyZSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb21wYXJlLG49dC5zaWduYXR1cmVzWyJib29sZWFuLGJvb2xlYW4iXTtyZXR1cm4gZShVYSx7ImFueSwgYW55IjpmdW5jdGlvbiBBKGUscil7dmFyIG8scz1QKGUpLGE9UChyKTtpZighKCJudW1iZXIiIT09cyYmIkJpZ051bWJlciIhPT1zJiYiRnJhY3Rpb24iIT09c3x8Im51bWJlciIhPT1hJiYiQmlnTnVtYmVyIiE9PWEmJiJGcmFjdGlvbiIhPT1hKSlyZXR1cm4iMCIhPT0obz10KGUscikpLnRvU3RyaW5nKCk/bz4wPzE6LTE6TmEocyxhKTt2YXIgQj1bIkFycmF5IiwiRGVuc2VNYXRyaXgiLCJTcGFyc2VNYXRyaXgiXTtpZihCLmluY2x1ZGVzKHMpfHxCLmluY2x1ZGVzKGEpKXJldHVybiAwIT09KG89ZnVuY3Rpb24gQShlLHQsbil7cmV0dXJuIHUodCkmJnUobik/aShlLHQudG9KU09OKCkudmFsdWVzLG4udG9KU09OKCkudmFsdWVzKTp1KHQpP0EoZSx0LnRvQXJyYXkoKSxuKTp1KG4pP0EoZSx0LG4udG9BcnJheSgpKTpRKHQpP0EoZSx0LnRvSlNPTigpLmRhdGEsbik6UShuKT9BKGUsdCxuLnRvSlNPTigpLmRhdGEpOkFycmF5LmlzQXJyYXkodCk/QXJyYXkuaXNBcnJheShuKT9pKGUsdCxuKTpBKGUsdCxbbl0pOkEoZSxbdF0sbil9KEEsZSxyKSk/bzpOYShzLGEpO2lmKHMhPT1hKXJldHVybiBOYShzLGEpO2lmKCJDb21wbGV4Ij09PXMpcmV0dXJuIGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEucmU+ZS5yZT8xOkEucmU8ZS5yZT8tMTpBLmltPmUuaW0/MTpBLmltPGUuaW0/LTE6MH0oZSxyKTtpZigiVW5pdCI9PT1zKXJldHVybiBlLmVxdWFsQmFzZShyKT9BKGUudmFsdWUsci52YWx1ZSk6aShBLGUuZm9ybWF0VW5pdHMoKSxyLmZvcm1hdFVuaXRzKCkpO2lmKCJib29sZWFuIj09PXMpcmV0dXJuIG4oZSxyKTtpZigic3RyaW5nIj09PXMpcmV0dXJuIE5hKGUscik7aWYoIk9iamVjdCI9PT1zKXJldHVybiBmdW5jdGlvbihBLGUsdCl7dmFyIG49T2JqZWN0LmtleXMoZSkscj1PYmplY3Qua2V5cyh0KTtuLnNvcnQoTmEpLHIuc29ydChOYSk7dmFyIG89aShBLG4scik7aWYoMCE9PW8pcmV0dXJuIG87Zm9yKHZhciBzPTA7czxuLmxlbmd0aDtzKyspe3ZhciBhPUEoZVtuW3NdXSx0W3Jbc11dKTtpZigwIT09YSlyZXR1cm4gYX1yZXR1cm4gMH0oQSxlLHIpO2lmKCJudWxsIj09PXMpcmV0dXJuIDA7aWYoInVuZGVmaW5lZCI9PT1zKXJldHVybiAwO3Rocm93IG5ldyBUeXBlRXJyb3IoJ1Vuc3VwcG9ydGVkIHR5cGUgb2YgdmFsdWUgIicrcysnIicpfX0pO2Z1bmN0aW9uIGkoQSxlLHQpe2Zvcih2YXIgbj0wLGk9TWF0aC5taW4oZS5sZW5ndGgsdC5sZW5ndGgpO248aTtuKyspe3ZhciByPUEoZVtuXSx0W25dKTtpZigwIT09cilyZXR1cm4gcn1yZXR1cm4gZS5sZW5ndGg+dC5sZW5ndGg/MTplLmxlbmd0aDx0Lmxlbmd0aD8tMTowfX0pKSxUYT0iY29tcGFyZVRleHQiO1p0LnNpZ25hdHVyZT0iYW55LCBhbnkiO3ZhciB4YT1wQShUYSxbInR5cGVkIiwibWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuY29uY2F0LGk9RHIoe3R5cGVkOmUsbWF0cml4OnQsY29uY2F0Om59KTtyZXR1cm4gZShUYSxadCxpKHtlbG9wOlp0LERzOiEwfSkpfSkpLFJhPSJlcXVhbCIsR2E9cEEoUmEsWyJ0eXBlZCIsIm1hdHJpeCIsImVxdWFsU2NhbGFyIiwiRGVuc2VNYXRyaXgiLCJjb25jYXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5lcXVhbFNjYWxhcixpPUEuRGVuc2VNYXRyaXgscj1BLmNvbmNhdCxvPWRyKHt0eXBlZDplfSkscz1Jbyh7dHlwZWQ6ZSxEZW5zZU1hdHJpeDppfSksYT1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDppfSksQj1Ecih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6cn0pO3JldHVybiBlKFJhLFNhKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KSxCKHtlbG9wOm4sU1M6cyxEUzpvLFNzOmF9KSl9KSksU2E9cEEoUmEsWyJ0eXBlZCIsImVxdWFsU2NhbGFyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmVxdWFsU2NhbGFyO3JldHVybiBlKFJhLHsiYW55LCBhbnkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG51bGw9PT1BP251bGw9PT1lOm51bGw9PT1lP251bGw9PT1BOnZvaWQgMD09PUE/dm9pZCAwPT09ZTp2b2lkIDA9PT1lP3ZvaWQgMD09PUE6dChBLGUpfX0pfSkpLGJhPSJlcXVhbFRleHQiLEhhPXBBKGJhLFsidHlwZWQiLCJjb21wYXJlVGV4dCIsImlzWmVybyJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb21wYXJlVGV4dCxuPUEuaXNaZXJvO3JldHVybiBlKGJhLHsiYW55LCBhbnkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG4odChBLGUpKX19KX0pKSx2YT0ic21hbGxlciIsa2E9cEEodmEsWyJ0eXBlZCIsImNvbmZpZyIsIm1hdHJpeCIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubWF0cml4LGk9QS5EZW5zZU1hdHJpeCxyPUEuY29uY2F0LG89ZHIoe3R5cGVkOmV9KSxzPUlvKHt0eXBlZDplLERlbnNlTWF0cml4Oml9KSxhPW9yKHt0eXBlZDplLERlbnNlTWF0cml4Oml9KSxCPURyKHt0eXBlZDplLG1hdHJpeDpuLGNvbmNhdDpyfSksYz1uaSh7dHlwZWQ6ZX0pO3JldHVybiBlKHZhLGphKHt0eXBlZDplLGNvbmZpZzp0fSkseyJib29sZWFuLCBib29sZWFuIjpmdW5jdGlvbihBLGUpe3JldHVybiBBPGV9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5sdChlKSYmIXRpKEEsZSx0LmVwc2lsb24pfSwiRnJhY3Rpb24sIEZyYWN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybi0xPT09QS5jb21wYXJlKGUpfSwiQ29tcGxleCwgQ29tcGxleCI6ZnVuY3Rpb24oQSxlKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBvcmRlcmluZyByZWxhdGlvbiBpcyBkZWZpbmVkIGZvciBjb21wbGV4IG51bWJlcnMiKX19LGMsQih7U1M6cyxEUzpvLFNzOmF9KSl9KSksamE9cEEodmEsWyJ0eXBlZCIsImNvbmZpZyJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWc7cmV0dXJuIGUodmEseyJudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQTxlJiYhc0EoQSxlLHQuZXBzaWxvbil9fSl9KSksSmE9InNtYWxsZXJFcSIsemE9cEEoSmEsWyJ0eXBlZCIsImNvbmZpZyIsIm1hdHJpeCIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubWF0cml4LGk9QS5EZW5zZU1hdHJpeCxyPUEuY29uY2F0LG89ZHIoe3R5cGVkOmV9KSxzPUlvKHt0eXBlZDplLERlbnNlTWF0cml4Oml9KSxhPW9yKHt0eXBlZDplLERlbnNlTWF0cml4Oml9KSxCPURyKHt0eXBlZDplLG1hdHJpeDpuLGNvbmNhdDpyfSksYz1uaSh7dHlwZWQ6ZX0pO3JldHVybiBlKEphLExhKHt0eXBlZDplLGNvbmZpZzp0fSkseyJib29sZWFuLCBib29sZWFuIjpmdW5jdGlvbihBLGUpe3JldHVybiBBPD1lfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEubHRlKGUpfHx0aShBLGUsdC5lcHNpbG9uKX0sIkZyYWN0aW9uLCBGcmFjdGlvbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gMSE9PUEuY29tcGFyZShlKX0sIkNvbXBsZXgsIENvbXBsZXgiOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gb3JkZXJpbmcgcmVsYXRpb24gaXMgZGVmaW5lZCBmb3IgY29tcGxleCBudW1iZXJzIil9fSxjLEIoe1NTOnMsRFM6byxTczphfSkpfSkpLExhPXBBKEphLFsidHlwZWQiLCJjb25maWciXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnO3JldHVybiBlKEphLHsibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEE8PWV8fHNBKEEsZSx0LmVwc2lsb24pfX0pfSkpLFBhPSJsYXJnZXIiLE9hPXBBKFBhLFsidHlwZWQiLCJjb25maWciLCJtYXRyaXgiLCJEZW5zZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLm1hdHJpeCxpPUEuRGVuc2VNYXRyaXgscj1BLmNvbmNhdCxvPWRyKHt0eXBlZDplfSkscz1Jbyh7dHlwZWQ6ZSxEZW5zZU1hdHJpeDppfSksYT1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDppfSksQj1Ecih7dHlwZWQ6ZSxtYXRyaXg6bixjb25jYXQ6cn0pLGM9bmkoe3R5cGVkOmV9KTtyZXR1cm4gZShQYSxWYSh7dHlwZWQ6ZSxjb25maWc6dH0pLHsiYm9vbGVhbiwgYm9vbGVhbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQT5lfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuZ3QoZSkmJiF0aShBLGUsdC5lcHNpbG9uKX0sIkZyYWN0aW9uLCBGcmFjdGlvbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gMT09PUEuY29tcGFyZShlKX0sIkNvbXBsZXgsIENvbXBsZXgiOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gb3JkZXJpbmcgcmVsYXRpb24gaXMgZGVmaW5lZCBmb3IgY29tcGxleCBudW1iZXJzIil9fSxjLEIoe1NTOnMsRFM6byxTczphfSkpfSkpLFZhPXBBKFBhLFsidHlwZWQiLCJjb25maWciXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnO3JldHVybiBlKFBhLHsibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEE+ZSYmIXNBKEEsZSx0LmVwc2lsb24pfX0pfSkpLFdhPSJsYXJnZXJFcSIsS2E9cEEoV2EsWyJ0eXBlZCIsImNvbmZpZyIsIm1hdHJpeCIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubWF0cml4LGk9QS5EZW5zZU1hdHJpeCxyPUEuY29uY2F0LG89ZHIoe3R5cGVkOmV9KSxzPUlvKHt0eXBlZDplLERlbnNlTWF0cml4Oml9KSxhPW9yKHt0eXBlZDplLERlbnNlTWF0cml4Oml9KSxCPURyKHt0eXBlZDplLG1hdHJpeDpuLGNvbmNhdDpyfSksYz1uaSh7dHlwZWQ6ZX0pO3JldHVybiBlKFdhLFhhKHt0eXBlZDplLGNvbmZpZzp0fSkseyJib29sZWFuLCBib29sZWFuIjpmdW5jdGlvbihBLGUpe3JldHVybiBBPj1lfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuZ3RlKGUpfHx0aShBLGUsdC5lcHNpbG9uKX0sIkZyYWN0aW9uLCBGcmFjdGlvbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4tMSE9PUEuY29tcGFyZShlKX0sIkNvbXBsZXgsIENvbXBsZXgiOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiTm8gb3JkZXJpbmcgcmVsYXRpb24gaXMgZGVmaW5lZCBmb3IgY29tcGxleCBudW1iZXJzIil9fSxjLEIoe1NTOnMsRFM6byxTczphfSkpfSkpLFhhPXBBKFdhLFsidHlwZWQiLCJjb25maWciXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnO3JldHVybiBlKFdhLHsibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEE+PWV8fHNBKEEsZSx0LmVwc2lsb24pfX0pfSkpLFphPSJkZWVwRXF1YWwiLF9hPXBBKFphLFsidHlwZWQiLCJlcXVhbCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5lcXVhbDtyZXR1cm4gZShaYSx7ImFueSwgYW55IjpmdW5jdGlvbihBLGUpe3JldHVybiBmdW5jdGlvbiBBKGUsbil7aWYoQXJyYXkuaXNBcnJheShlKSl7aWYoQXJyYXkuaXNBcnJheShuKSl7dmFyIGk9ZS5sZW5ndGg7aWYoaSE9PW4ubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgcj0wO3I8aTtyKyspaWYoIUEoZVtyXSxuW3JdKSlyZXR1cm4hMTtyZXR1cm4hMH1yZXR1cm4hMX1yZXR1cm4hQXJyYXkuaXNBcnJheShuKSYmdChlLG4pfShBLnZhbHVlT2YoKSxlLnZhbHVlT2YoKSl9fSl9KSkscWE9InVuZXF1YWwiLCRhPXBBKHFhLFsidHlwZWQiLCJjb25maWciLCJlcXVhbFNjYWxhciIsIm1hdHJpeCIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD0oQS5jb25maWcsQS5lcXVhbFNjYWxhciksbj1BLm1hdHJpeCxpPUEuRGVuc2VNYXRyaXgscj1BLmNvbmNhdCxvPWRyKHt0eXBlZDplfSkscz1Jbyh7dHlwZWQ6ZSxEZW5zZU1hdHJpeDppfSksYT1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDppfSksQj1Ecih7dHlwZWQ6ZSxtYXRyaXg6bixjb25jYXQ6cn0pO3JldHVybiBlKHFhLEFCKHt0eXBlZDplLGVxdWFsU2NhbGFyOnR9KSxCKHtlbG9wOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIXQoQSxlKX0sU1M6cyxEUzpvLFNzOmF9KSl9KSksQUI9cEEocWEsWyJ0eXBlZCIsImVxdWFsU2NhbGFyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmVxdWFsU2NhbGFyO3JldHVybiBlKHFhLHsiYW55LCBhbnkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG51bGw9PT1BP251bGwhPT1lOm51bGw9PT1lP251bGwhPT1BOnZvaWQgMD09PUE/dm9pZCAwIT09ZTp2b2lkIDA9PT1lP3ZvaWQgMCE9PUE6IXQoQSxlKX19KX0pKSxlQj0icGFydGl0aW9uU2VsZWN0Iix0Qj1wQShlQixbInR5cGVkIiwiaXNOdW1lcmljIiwiaXNOYU4iLCJjb21wYXJlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmlzTnVtZXJpYyxuPUEuaXNOYU4saT1BLmNvbXBhcmUscj1pLG89ZnVuY3Rpb24oQSxlKXtyZXR1cm4taShBLGUpfTtyZXR1cm4gZShlQix7IkFycmF5IHwgTWF0cml4LCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHMoQSxlLHIpfSwiQXJyYXkgfCBNYXRyaXgsIG51bWJlciwgc3RyaW5nIjpmdW5jdGlvbihBLGUsdCl7aWYoImFzYyI9PT10KXJldHVybiBzKEEsZSxyKTtpZigiZGVzYyI9PT10KXJldHVybiBzKEEsZSxvKTt0aHJvdyBuZXcgRXJyb3IoJ0NvbXBhcmUgc3RyaW5nIG11c3QgYmUgImFzYyIgb3IgImRlc2MiJyl9LCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyLCBmdW5jdGlvbiI6c30pO2Z1bmN0aW9uIHMoQSxlLHQpe2lmKCFWKGUpfHxlPDApdGhyb3cgbmV3IEVycm9yKCJrIG11c3QgYmUgYSBub24tbmVnYXRpdmUgaW50ZWdlciIpO2lmKGcoQSkpe2lmKEEuc2l6ZSgpLmxlbmd0aD4xKXRocm93IG5ldyBFcnJvcigiT25seSBvbmUgZGltZW5zaW9uYWwgbWF0cmljZXMgc3VwcG9ydGVkIik7cmV0dXJuIGEoQS52YWx1ZU9mKCksZSx0KX1pZihBcnJheS5pc0FycmF5KEEpKXJldHVybiBhKEEsZSx0KX1mdW5jdGlvbiBhKEEsZSxpKXtpZihlPj1BLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoImsgb3V0IG9mIGJvdW5kcyIpO2Zvcih2YXIgcj0wO3I8QS5sZW5ndGg7cisrKWlmKHQoQVtyXSkmJm4oQVtyXSkpcmV0dXJuIEFbcl07Zm9yKHZhciBvPTAscz1BLmxlbmd0aC0xO288czspe2Zvcih2YXIgYT1vLEI9cyxjPUFbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKihzLW8rMSkpK29dO2E8QjspaWYoaShBW2FdLGMpPj0wKXt2YXIgZz1BW0JdO0FbQl09QVthXSxBW2FdPWcsLS1CfWVsc2UrK2E7aShBW2FdLGMpPjAmJi0tYSxlPD1hP3M9YTpvPWErMX1yZXR1cm4gQVtlXX19KSksbkI9cEEoInNvcnQiLFsidHlwZWQiLCJtYXRyaXgiLCJjb21wYXJlIiwiY29tcGFyZU5hdHVyYWwiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5jb21wYXJlLGk9QS5jb21wYXJlTmF0dXJhbCxyPW4sbz1mdW5jdGlvbihBLGUpe3JldHVybi1uKEEsZSl9O3JldHVybiBlKCJzb3J0Iix7QXJyYXk6ZnVuY3Rpb24oQSl7cmV0dXJuIGEoQSksQS5zb3J0KHIpfSxNYXRyaXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEIoQSksdChBLnRvQXJyYXkoKS5zb3J0KHIpLEEuc3RvcmFnZSgpKX0sIkFycmF5LCBmdW5jdGlvbiI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gYShBKSxBLnNvcnQoZSl9LCJNYXRyaXgsIGZ1bmN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBCKEEpLHQoQS50b0FycmF5KCkuc29ydChlKSxBLnN0b3JhZ2UoKSl9LCJBcnJheSwgc3RyaW5nIjpmdW5jdGlvbihBLGUpe3JldHVybiBhKEEpLEEuc29ydChzKGUpKX0sIk1hdHJpeCwgc3RyaW5nIjpmdW5jdGlvbihBLGUpe3JldHVybiBCKEEpLHQoQS50b0FycmF5KCkuc29ydChzKGUpKSxBLnN0b3JhZ2UoKSl9fSk7ZnVuY3Rpb24gcyhBKXtpZigiYXNjIj09PUEpcmV0dXJuIHI7aWYoImRlc2MiPT09QSlyZXR1cm4gbztpZigibmF0dXJhbCI9PT1BKXJldHVybiBpO3Rocm93IG5ldyBFcnJvcignU3RyaW5nICJhc2MiLCAiZGVzYyIsIG9yICJuYXR1cmFsIiBleHBlY3RlZCcpfWZ1bmN0aW9uIGEoQSl7aWYoMSE9PSR0KEEpLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIk9uZSBkaW1lbnNpb25hbCBhcnJheSBleHBlY3RlZCIpfWZ1bmN0aW9uIEIoQSl7aWYoMSE9PUEuc2l6ZSgpLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIk9uZSBkaW1lbnNpb25hbCBtYXRyaXggZXhwZWN0ZWQiKX19KSksaUI9cEEoIm1heCIsWyJ0eXBlZCIsImNvbmZpZyIsIm51bWVyaWMiLCJsYXJnZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5udW1lcmljLGk9QS5sYXJnZXI7cmV0dXJuIGUoIm1heCIseyJBcnJheSB8IE1hdHJpeCI6bywiQXJyYXkgfCBNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gU24oQSxlLnZhbHVlT2YoKSxyKX0sIi4uLiI6ZnVuY3Rpb24oQSl7aWYoeG4oQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiU2NhbGFyIHZhbHVlcyBleHBlY3RlZCBpbiBmdW5jdGlvbiBtYXgiKTtyZXR1cm4gbyhBKX19KTtmdW5jdGlvbiByKEEsZSl7dHJ5e3JldHVybiBpKEEsZSk/QTplfWNhdGNoKEEpe3Rocm93IHZzKEEsIm1heCIsZSl9fWZ1bmN0aW9uIG8oQSl7dmFyIGU7aWYoUm4oQSwoZnVuY3Rpb24oQSl7dHJ5e2lzTmFOKEEpJiYibnVtYmVyIj09dHlwZW9mIEE/ZT1OYU46KHZvaWQgMD09PWV8fGkoQSxlKSkmJihlPUEpfWNhdGNoKGUpe3Rocm93IHZzKGUsIm1heCIsQSl9fSkpLHZvaWQgMD09PWUpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY2FsY3VsYXRlIG1heCBvZiBhbiBlbXB0eSBhcnJheSIpO3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmKGU9bihlLHQubnVtYmVyKSksZX19KSksckI9cEEoIm1pbiIsWyJ0eXBlZCIsImNvbmZpZyIsIm51bWVyaWMiLCJzbWFsbGVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubnVtZXJpYyxpPUEuc21hbGxlcjtyZXR1cm4gZSgibWluIix7IkFycmF5IHwgTWF0cml4IjpvLCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBTbihBLGUudmFsdWVPZigpLHIpfSwiLi4uIjpmdW5jdGlvbihBKXtpZih4bihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTY2FsYXIgdmFsdWVzIGV4cGVjdGVkIGluIGZ1bmN0aW9uIG1pbiIpO3JldHVybiBvKEEpfX0pO2Z1bmN0aW9uIHIoQSxlKXt0cnl7cmV0dXJuIGkoQSxlKT9BOmV9Y2F0Y2goQSl7dGhyb3cgdnMoQSwibWluIixlKX19ZnVuY3Rpb24gbyhBKXt2YXIgZTtpZihSbihBLChmdW5jdGlvbihBKXt0cnl7aXNOYU4oQSkmJiJudW1iZXIiPT10eXBlb2YgQT9lPU5hTjoodm9pZCAwPT09ZXx8aShBLGUpKSYmKGU9QSl9Y2F0Y2goZSl7dGhyb3cgdnMoZSwibWluIixBKX19KSksdm9pZCAwPT09ZSl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgbWluIG9mIGFuIGVtcHR5IGFycmF5Iik7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlJiYoZT1uKGUsdC5udW1iZXIpKSxlfX0pKSxvQj1wQSgiSW1tdXRhYmxlRGVuc2VNYXRyaXgiLFsic21hbGxlciIsIkRlbnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuc21hbGxlcix0PUEuRGVuc2VNYXRyaXg7ZnVuY3Rpb24gbihBLGUpe2lmKCEodGhpcyBpbnN0YW5jZW9mIG4pKXRocm93IG5ldyBTeW50YXhFcnJvcigiQ29uc3RydWN0b3IgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgbmV3IG9wZXJhdG9yIik7aWYoZSYmIUIoZSkpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIGRhdGF0eXBlOiAiK2UpO2lmKGcoQSl8fGMoQSkpe3ZhciBpPW5ldyB0KEEsZSk7dGhpcy5fZGF0YT1pLl9kYXRhLHRoaXMuX3NpemU9aS5fc2l6ZSx0aGlzLl9kYXRhdHlwZT1pLl9kYXRhdHlwZSx0aGlzLl9taW49bnVsbCx0aGlzLl9tYXg9bnVsbH1lbHNlIGlmKEEmJmMoQS5kYXRhKSYmYyhBLnNpemUpKXRoaXMuX2RhdGE9QS5kYXRhLHRoaXMuX3NpemU9QS5zaXplLHRoaXMuX2RhdGF0eXBlPUEuZGF0YXR5cGUsdGhpcy5fbWluPXZvaWQgMCE9PUEubWluP0EubWluOm51bGwsdGhpcy5fbWF4PXZvaWQgMCE9PUEubWF4P0EubWF4Om51bGw7ZWxzZXtpZihBKXRocm93IG5ldyBUeXBlRXJyb3IoIlVuc3VwcG9ydGVkIHR5cGUgb2YgZGF0YSAoIitQKEEpKyIpIik7dGhpcy5fZGF0YT1bXSx0aGlzLl9zaXplPVswXSx0aGlzLl9kYXRhdHlwZT1lLHRoaXMuX21pbj1udWxsLHRoaXMuX21heD1udWxsfX1yZXR1cm4gbi5wcm90b3R5cGU9bmV3IHQsbi5wcm90b3R5cGUudHlwZT0iSW1tdXRhYmxlRGVuc2VNYXRyaXgiLG4ucHJvdG90eXBlLmlzSW1tdXRhYmxlRGVuc2VNYXRyaXg9ITAsbi5wcm90b3R5cGUuc3Vic2V0PWZ1bmN0aW9uKEEpe3N3aXRjaChhcmd1bWVudHMubGVuZ3RoKXtjYXNlIDE6dmFyIGU9dC5wcm90b3R5cGUuc3Vic2V0LmNhbGwodGhpcyxBKTtyZXR1cm4gZyhlKT9uZXcgbih7ZGF0YTplLl9kYXRhLHNpemU6ZS5fc2l6ZSxkYXRhdHlwZTplLl9kYXRhdHlwZX0pOmU7Y2FzZSAyOmNhc2UgMzp0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpbnZva2Ugc2V0IHN1YnNldCBvbiBhbiBJbW11dGFibGUgTWF0cml4IGluc3RhbmNlIik7ZGVmYXVsdDp0aHJvdyBuZXcgU3ludGF4RXJyb3IoIldyb25nIG51bWJlciBvZiBhcmd1bWVudHMiKX19LG4ucHJvdG90eXBlLnNldD1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBzZXQgb24gYW4gSW1tdXRhYmxlIE1hdHJpeCBpbnN0YW5jZSIpfSxuLnByb3RvdHlwZS5yZXNpemU9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBpbnZva2UgcmVzaXplIG9uIGFuIEltbXV0YWJsZSBNYXRyaXggaW5zdGFuY2UiKX0sbi5wcm90b3R5cGUucmVzaGFwZT1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSByZXNoYXBlIG9uIGFuIEltbXV0YWJsZSBNYXRyaXggaW5zdGFuY2UiKX0sbi5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4oe2RhdGE6dUEodGhpcy5fZGF0YSksc2l6ZTp1QSh0aGlzLl9zaXplKSxkYXRhdHlwZTp0aGlzLl9kYXRhdHlwZX0pfSxuLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOiJJbW11dGFibGVEZW5zZU1hdHJpeCIsZGF0YTp0aGlzLl9kYXRhLHNpemU6dGhpcy5fc2l6ZSxkYXRhdHlwZTp0aGlzLl9kYXRhdHlwZX19LG4uZnJvbUpTT049ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBuKEEpfSxuLnByb3RvdHlwZS5zd2FwUm93cz1mdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGludm9rZSBzd2FwUm93cyBvbiBhbiBJbW11dGFibGUgTWF0cml4IGluc3RhbmNlIil9LG4ucHJvdG90eXBlLm1pbj1mdW5jdGlvbigpe2lmKG51bGw9PT10aGlzLl9taW4pe3ZhciBBPW51bGw7dGhpcy5mb3JFYWNoKChmdW5jdGlvbih0KXsobnVsbD09PUF8fGUodCxBKSkmJihBPXQpfSkpLHRoaXMuX21pbj1udWxsIT09QT9BOnZvaWQgMH1yZXR1cm4gdGhpcy5fbWlufSxuLnByb3RvdHlwZS5tYXg9ZnVuY3Rpb24oKXtpZihudWxsPT09dGhpcy5fbWF4KXt2YXIgQT1udWxsO3RoaXMuZm9yRWFjaCgoZnVuY3Rpb24odCl7KG51bGw9PT1BfHxlKEEsdCkpJiYoQT10KX0pKSx0aGlzLl9tYXg9bnVsbCE9PUE/QTp2b2lkIDB9cmV0dXJuIHRoaXMuX21heH0sbn0pLHtpc0NsYXNzOiEwfSksc0I9cEEoIkluZGV4IixbIkltbXV0YWJsZURlbnNlTWF0cml4IiwiZ2V0TWF0cml4RGF0YVR5cGUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5JbW11dGFibGVEZW5zZU1hdHJpeCx0PUEuZ2V0TWF0cml4RGF0YVR5cGU7ZnVuY3Rpb24gbihBKXtpZighKHRoaXMgaW5zdGFuY2VvZiBuKSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoIkNvbnN0cnVjdG9yIG11c3QgYmUgY2FsbGVkIHdpdGggdGhlIG5ldyBvcGVyYXRvciIpO3RoaXMuX2RpbWVuc2lvbnM9W10sdGhpcy5fc291cmNlU2l6ZT1bXSx0aGlzLl9pc1NjYWxhcj0hMDtmb3IodmFyIGU9MCxyPWFyZ3VtZW50cy5sZW5ndGg7ZTxyO2UrKyl7dmFyIG89YXJndW1lbnRzW2VdLHM9YyhvKSxhPWcobyksQj1udWxsO2lmKGwobykpdGhpcy5fZGltZW5zaW9ucy5wdXNoKG8pLHRoaXMuX2lzU2NhbGFyPSExO2Vsc2UgaWYoc3x8YSl7dmFyIEU9dm9pZCAwOyJib29sZWFuIj09PXQobyk/KHMmJihFPWkoYUIobykudmFsdWVPZigpKSksYSYmKEU9aShhQihvLl9kYXRhKS52YWx1ZU9mKCkpKSxCPW8udmFsdWVPZigpLmxlbmd0aCk6RT1pKG8udmFsdWVPZigpKSx0aGlzLl9kaW1lbnNpb25zLnB1c2goRSk7dmFyIFE9RS5zaXplKCk7MT09PVEubGVuZ3RoJiYxPT09UVswXSYmbnVsbD09PUJ8fCh0aGlzLl9pc1NjYWxhcj0hMSl9ZWxzZSBpZigibnVtYmVyIj09dHlwZW9mIG8pdGhpcy5fZGltZW5zaW9ucy5wdXNoKGkoW29dKSk7ZWxzZXtpZigic3RyaW5nIiE9dHlwZW9mIG8pdGhyb3cgbmV3IFR5cGVFcnJvcigiRGltZW5zaW9uIG11c3QgYmUgYW4gQXJyYXksIE1hdHJpeCwgbnVtYmVyLCBzdHJpbmcsIG9yIFJhbmdlIik7dGhpcy5fZGltZW5zaW9ucy5wdXNoKG8pfXRoaXMuX3NvdXJjZVNpemUucHVzaChCKX19ZnVuY3Rpb24gaShBKXtmb3IodmFyIHQ9MCxuPUEubGVuZ3RoO3Q8bjt0KyspaWYoIm51bWJlciIhPXR5cGVvZiBBW3RdfHwhVihBW3RdKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbmRleCBwYXJhbWV0ZXJzIG11c3QgYmUgcG9zaXRpdmUgaW50ZWdlciBudW1iZXJzIik7cmV0dXJuIG5ldyBlKEEpfXJldHVybiBuLnByb3RvdHlwZS50eXBlPSJJbmRleCIsbi5wcm90b3R5cGUuaXNJbmRleD0hMCxuLnByb3RvdHlwZS5jbG9uZT1mdW5jdGlvbigpe3ZhciBBPW5ldyBuO3JldHVybiBBLl9kaW1lbnNpb25zPXVBKHRoaXMuX2RpbWVuc2lvbnMpLEEuX2lzU2NhbGFyPXRoaXMuX2lzU2NhbGFyLEEuX3NvdXJjZVNpemU9dGhpcy5fc291cmNlU2l6ZSxBfSxuLmNyZWF0ZT1mdW5jdGlvbihBKXt2YXIgZT1uZXcgbjtyZXR1cm4gbi5hcHBseShlLEEpLGV9LG4ucHJvdG90eXBlLnNpemU9ZnVuY3Rpb24oKXtmb3IodmFyIEE9W10sZT0wLHQ9dGhpcy5fZGltZW5zaW9ucy5sZW5ndGg7ZTx0O2UrKyl7dmFyIG49dGhpcy5fZGltZW5zaW9uc1tlXTtBW2VdPSJzdHJpbmciPT10eXBlb2Ygbj8xOm4uc2l6ZSgpWzBdfXJldHVybiBBfSxuLnByb3RvdHlwZS5tYXg9ZnVuY3Rpb24oKXtmb3IodmFyIEE9W10sZT0wLHQ9dGhpcy5fZGltZW5zaW9ucy5sZW5ndGg7ZTx0O2UrKyl7dmFyIG49dGhpcy5fZGltZW5zaW9uc1tlXTtBW2VdPSJzdHJpbmciPT10eXBlb2Ygbj9uOm4ubWF4KCl9cmV0dXJuIEF9LG4ucHJvdG90eXBlLm1pbj1mdW5jdGlvbigpe2Zvcih2YXIgQT1bXSxlPTAsdD10aGlzLl9kaW1lbnNpb25zLmxlbmd0aDtlPHQ7ZSsrKXt2YXIgbj10aGlzLl9kaW1lbnNpb25zW2VdO0FbZV09InN0cmluZyI9PXR5cGVvZiBuP246bi5taW4oKX1yZXR1cm4gQX0sbi5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihBKXtmb3IodmFyIGU9MCx0PXRoaXMuX2RpbWVuc2lvbnMubGVuZ3RoO2U8dDtlKyspQSh0aGlzLl9kaW1lbnNpb25zW2VdLGUsdGhpcyl9LG4ucHJvdG90eXBlLmRpbWVuc2lvbj1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5fZGltZW5zaW9uc1tBXXx8bnVsbH0sbi5wcm90b3R5cGUuaXNPYmplY3RQcm9wZXJ0eT1mdW5jdGlvbigpe3JldHVybiAxPT09dGhpcy5fZGltZW5zaW9ucy5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdGhpcy5fZGltZW5zaW9uc1swXX0sbi5wcm90b3R5cGUuZ2V0T2JqZWN0UHJvcGVydHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pc09iamVjdFByb3BlcnR5KCk/dGhpcy5fZGltZW5zaW9uc1swXTpudWxsfSxuLnByb3RvdHlwZS5pc1NjYWxhcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9pc1NjYWxhcn0sbi5wcm90b3R5cGUudG9BcnJheT1mdW5jdGlvbigpe2Zvcih2YXIgQT1bXSxlPTAsdD10aGlzLl9kaW1lbnNpb25zLmxlbmd0aDtlPHQ7ZSsrKXt2YXIgbj10aGlzLl9kaW1lbnNpb25zW2VdO0EucHVzaCgic3RyaW5nIj09dHlwZW9mIG4/bjpuLnRvQXJyYXkoKSl9cmV0dXJuIEF9LG4ucHJvdG90eXBlLnZhbHVlT2Y9bi5wcm90b3R5cGUudG9BcnJheSxuLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe2Zvcih2YXIgQT1bXSxlPTAsdD10aGlzLl9kaW1lbnNpb25zLmxlbmd0aDtlPHQ7ZSsrKXt2YXIgbj10aGlzLl9kaW1lbnNpb25zW2VdOyJzdHJpbmciPT10eXBlb2Ygbj9BLnB1c2goSlNPTi5zdHJpbmdpZnkobikpOkEucHVzaChuLnRvU3RyaW5nKCkpfXJldHVybiJbIitBLmpvaW4oIiwgIikrIl0ifSxuLnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOiJJbmRleCIsZGltZW5zaW9uczp0aGlzLl9kaW1lbnNpb25zfX0sbi5mcm9tSlNPTj1mdW5jdGlvbihBKXtyZXR1cm4gbi5jcmVhdGUoQS5kaW1lbnNpb25zKX0sbn0pLHtpc0NsYXNzOiEwfSk7ZnVuY3Rpb24gYUIoQSl7dmFyIGU9W107cmV0dXJuIEEuZm9yRWFjaCgoZnVuY3Rpb24oQSx0KXtBJiZlLnB1c2godCl9KSksZX12YXIgQkI9cEEoIkZpYm9uYWNjaUhlYXAiLFsic21hbGxlciIsImxhcmdlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnNtYWxsZXIsdD1BLmxhcmdlcixuPTEvTWF0aC5sb2coKDErTWF0aC5zcXJ0KDUpKS8yKTtmdW5jdGlvbiBpKCl7aWYoISh0aGlzIGluc3RhbmNlb2YgaSkpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDb25zdHJ1Y3RvciBtdXN0IGJlIGNhbGxlZCB3aXRoIHRoZSBuZXcgb3BlcmF0b3IiKTt0aGlzLl9taW5pbXVtPW51bGwsdGhpcy5fc2l6ZT0wfWZ1bmN0aW9uIHIoQSxlLHQpe2UubGVmdC5yaWdodD1lLnJpZ2h0LGUucmlnaHQubGVmdD1lLmxlZnQsdC5kZWdyZWUtLSx0LmNoaWxkPT09ZSYmKHQuY2hpbGQ9ZS5yaWdodCksMD09PXQuZGVncmVlJiYodC5jaGlsZD1udWxsKSxlLmxlZnQ9QSxlLnJpZ2h0PUEucmlnaHQsQS5yaWdodD1lLGUucmlnaHQubGVmdD1lLGUucGFyZW50PW51bGwsZS5tYXJrPSExfWkucHJvdG90eXBlLnR5cGU9IkZpYm9uYWNjaUhlYXAiLGkucHJvdG90eXBlLmlzRmlib25hY2NpSGVhcD0hMCxpLnByb3RvdHlwZS5pbnNlcnQ9ZnVuY3Rpb24oQSx0KXt2YXIgbj17a2V5OkEsdmFsdWU6dCxkZWdyZWU6MH07aWYodGhpcy5fbWluaW11bSl7dmFyIGk9dGhpcy5fbWluaW11bTtuLmxlZnQ9aSxuLnJpZ2h0PWkucmlnaHQsaS5yaWdodD1uLG4ucmlnaHQubGVmdD1uLGUoQSxpLmtleSkmJih0aGlzLl9taW5pbXVtPW4pfWVsc2Ugbi5sZWZ0PW4sbi5yaWdodD1uLHRoaXMuX21pbmltdW09bjtyZXR1cm4gdGhpcy5fc2l6ZSsrLG59LGkucHJvdG90eXBlLnNpemU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc2l6ZX0saS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLl9taW5pbXVtPW51bGwsdGhpcy5fc2l6ZT0wfSxpLnByb3RvdHlwZS5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLl9zaXplfSxpLnByb3RvdHlwZS5leHRyYWN0TWluaW11bT1mdW5jdGlvbigpe3ZhciBBPXRoaXMuX21pbmltdW07aWYobnVsbD09PUEpcmV0dXJuIEE7Zm9yKHZhciBpPXRoaXMuX21pbmltdW0scj1BLmRlZ3JlZSxzPUEuY2hpbGQ7cj4wOyl7dmFyIGE9cy5yaWdodDtzLmxlZnQucmlnaHQ9cy5yaWdodCxzLnJpZ2h0LmxlZnQ9cy5sZWZ0LHMubGVmdD1pLHMucmlnaHQ9aS5yaWdodCxpLnJpZ2h0PXMscy5yaWdodC5sZWZ0PXMscy5wYXJlbnQ9bnVsbCxzPWEsci0tfXJldHVybiBBLmxlZnQucmlnaHQ9QS5yaWdodCxBLnJpZ2h0LmxlZnQ9QS5sZWZ0LGk9QT09PUEucmlnaHQ/bnVsbDpmdW5jdGlvbihBLGkpe3ZhciByLHM9TWF0aC5mbG9vcihNYXRoLmxvZyhpKSpuKSsxLGE9bmV3IEFycmF5KHMpLEI9MCxjPUE7aWYoYylmb3IoQisrLGM9Yy5yaWdodDtjIT09QTspQisrLGM9Yy5yaWdodDtmb3IoO0I+MDspe2Zvcih2YXIgZz1jLmRlZ3JlZSxFPWMucmlnaHQ7cj1hW2ddOyl7aWYodChjLmtleSxyLmtleSkpe3ZhciBRPXI7cj1jLGM9UX1vKHIsYyksYVtnXT1udWxsLGcrK31hW2ddPWMsYz1FLEItLX1BPW51bGw7Zm9yKHZhciB1PTA7dTxzO3UrKykocj1hW3VdKSYmKEE/KHIubGVmdC5yaWdodD1yLnJpZ2h0LHIucmlnaHQubGVmdD1yLmxlZnQsci5sZWZ0PUEsci5yaWdodD1BLnJpZ2h0LEEucmlnaHQ9cixyLnJpZ2h0LmxlZnQ9cixlKHIua2V5LEEua2V5KSYmKEE9cikpOkE9cik7cmV0dXJuIEF9KGk9QS5yaWdodCx0aGlzLl9zaXplKSx0aGlzLl9zaXplLS0sdGhpcy5fbWluaW11bT1pLEF9LGkucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihBKXt0aGlzLl9taW5pbXVtPWZ1bmN0aW9uKEEsdCxuKXt0LmtleT0tMTt2YXIgaT10LnBhcmVudDtyZXR1cm4gaSYmZSh0LmtleSxpLmtleSkmJihyKEEsdCxpKSxmdW5jdGlvbiBBKGUsdCl7dmFyIG49dC5wYXJlbnQ7biYmKHQubWFyaz8ocihlLHQsbiksQShuKSk6dC5tYXJrPSEwKX0oQSxpKSksZSh0LmtleSxBLmtleSkmJihBPXQpLEF9KHRoaXMuX21pbmltdW0sQSksdGhpcy5leHRyYWN0TWluaW11bSgpfTt2YXIgbz1mdW5jdGlvbihBLGUpe0EubGVmdC5yaWdodD1BLnJpZ2h0LEEucmlnaHQubGVmdD1BLmxlZnQsQS5wYXJlbnQ9ZSxlLmNoaWxkPyhBLmxlZnQ9ZS5jaGlsZCxBLnJpZ2h0PWUuY2hpbGQucmlnaHQsZS5jaGlsZC5yaWdodD1BLEEucmlnaHQubGVmdD1BKTooZS5jaGlsZD1BLEEucmlnaHQ9QSxBLmxlZnQ9QSksZS5kZWdyZWUrKyxBLm1hcms9ITF9O3JldHVybiBpfSkse2lzQ2xhc3M6ITB9KSxjQj1wQSgiU3BhIixbImFkZFNjYWxhciIsImVxdWFsU2NhbGFyIiwiRmlib25hY2NpSGVhcCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmFkZFNjYWxhcix0PUEuZXF1YWxTY2FsYXIsbj1BLkZpYm9uYWNjaUhlYXA7ZnVuY3Rpb24gaSgpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGkpKXRocm93IG5ldyBTeW50YXhFcnJvcigiQ29uc3RydWN0b3IgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgbmV3IG9wZXJhdG9yIik7dGhpcy5fdmFsdWVzPVtdLHRoaXMuX2hlYXA9bmV3IG59cmV0dXJuIGkucHJvdG90eXBlLnR5cGU9IlNwYSIsaS5wcm90b3R5cGUuaXNTcGE9ITAsaS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKEEsZSl7aWYodGhpcy5fdmFsdWVzW0FdKXRoaXMuX3ZhbHVlc1tBXS52YWx1ZT1lO2Vsc2V7dmFyIHQ9dGhpcy5faGVhcC5pbnNlcnQoQSxlKTt0aGlzLl92YWx1ZXNbQV09dH19LGkucHJvdG90eXBlLmdldD1mdW5jdGlvbihBKXt2YXIgZT10aGlzLl92YWx1ZXNbQV07cmV0dXJuIGU/ZS52YWx1ZTowfSxpLnByb3RvdHlwZS5hY2N1bXVsYXRlPWZ1bmN0aW9uKEEsdCl7dmFyIG49dGhpcy5fdmFsdWVzW0FdO24/bi52YWx1ZT1lKG4udmFsdWUsdCk6KG49dGhpcy5faGVhcC5pbnNlcnQoQSx0KSx0aGlzLl92YWx1ZXNbQV09bil9LGkucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oQSxlLG4pe3ZhciBpPXRoaXMuX2hlYXAscj10aGlzLl92YWx1ZXMsbz1bXSxzPWkuZXh0cmFjdE1pbmltdW0oKTtmb3IocyYmby5wdXNoKHMpO3MmJnMua2V5PD1lOylzLmtleT49QSYmKHQocy52YWx1ZSwwKXx8bihzLmtleSxzLnZhbHVlLHRoaXMpKSwocz1pLmV4dHJhY3RNaW5pbXVtKCkpJiZvLnB1c2gocyk7Zm9yKHZhciBhPTA7YTxvLmxlbmd0aDthKyspe3ZhciBCPW9bYV07clsocz1pLmluc2VydChCLmtleSxCLnZhbHVlKSkua2V5XT1zfX0saS5wcm90b3R5cGUuc3dhcD1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuX3ZhbHVlc1tBXSxuPXRoaXMuX3ZhbHVlc1tlXTtpZighdCYmbil0PXRoaXMuX2hlYXAuaW5zZXJ0KEEsbi52YWx1ZSksdGhpcy5faGVhcC5yZW1vdmUobiksdGhpcy5fdmFsdWVzW0FdPXQsdGhpcy5fdmFsdWVzW2VdPXZvaWQgMDtlbHNlIGlmKHQmJiFuKW49dGhpcy5faGVhcC5pbnNlcnQoZSx0LnZhbHVlKSx0aGlzLl9oZWFwLnJlbW92ZSh0KSx0aGlzLl92YWx1ZXNbZV09bix0aGlzLl92YWx1ZXNbQV09dm9pZCAwO2Vsc2UgaWYodCYmbil7dmFyIGk9dC52YWx1ZTt0LnZhbHVlPW4udmFsdWUsbi52YWx1ZT1pfX0saX0pLHtpc0NsYXNzOiEwfSksZ0I9KG4oMzcyKSxZbigoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBBKDEpLmV4cCgpfSkse2hhc2hlcjpsQn0pKSxFQj1ZbigoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBBKDEpLnBsdXMobmV3IEEoNSkuc3FydCgpKS5kaXYoMil9KSx7aGFzaGVyOmxCfSksUUI9WW4oKGZ1bmN0aW9uKEEpe3JldHVybiBBLmFjb3MoLTEpfSkse2hhc2hlcjpsQn0pLHVCPVluKChmdW5jdGlvbihBKXtyZXR1cm4gUUIoQSkudGltZXMoMil9KSx7aGFzaGVyOmxCfSk7ZnVuY3Rpb24gbEIoQSl7cmV0dXJuIEFbMF0ucHJlY2lzaW9ufWZ1bmN0aW9uIGhCKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiB3QihBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgdD1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9oQihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe0lyKEEsZSx0W2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhBLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHQpKTpoQihPYmplY3QodCkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpKX0pKX1yZXR1cm4gQX12YXIgQ0I9cEEoIlVuaXQiLFsiP29uIiwiY29uZmlnIiwiYWRkU2NhbGFyIiwic3VidHJhY3RTY2FsYXIiLCJtdWx0aXBseVNjYWxhciIsImRpdmlkZVNjYWxhciIsInBvdyIsImFicyIsImZpeCIsInJvdW5kIiwiZXF1YWwiLCJpc051bWVyaWMiLCJmb3JtYXQiLCJudW1iZXIiLCJDb21wbGV4IiwiQmlnTnVtYmVyIiwiRnJhY3Rpb24iXSwoZnVuY3Rpb24oQSl7dmFyIHQsbixpLHI9QS5vbixzPUEuY29uZmlnLEI9QS5hZGRTY2FsYXIsYz1BLnN1YnRyYWN0U2NhbGFyLGc9QS5tdWx0aXBseVNjYWxhcixFPUEuZGl2aWRlU2NhbGFyLFE9QS5wb3csdT1BLmFicyxsPUEuZml4LGg9QS5yb3VuZCx3PUEuZXF1YWwsQz1BLmlzTnVtZXJpYyxJPUEuZm9ybWF0LE09QS5udW1iZXIsZD1BLkNvbXBsZXgscD1BLkJpZ051bWJlcixtPUEuRnJhY3Rpb24sRj1NO2Z1bmN0aW9uIEQoQSxlKXtpZighKHRoaXMgaW5zdGFuY2VvZiBEKSl0aHJvdyBuZXcgRXJyb3IoIkNvbnN0cnVjdG9yIG11c3QgYmUgY2FsbGVkIHdpdGggdGhlIG5ldyBvcGVyYXRvciIpO2lmKG51bGwhPUEmJiFDKEEpJiYhbyhBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJGaXJzdCBwYXJhbWV0ZXIgaW4gVW5pdCBjb25zdHJ1Y3RvciBtdXN0IGJlIG51bWJlciwgQmlnTnVtYmVyLCBGcmFjdGlvbiwgQ29tcGxleCwgb3IgdW5kZWZpbmVkIik7aWYodGhpcy5maXhQcmVmaXg9ITEsdGhpcy5za2lwQXV0b21hdGljU2ltcGxpZmljYXRpb249ITAsdm9pZCAwPT09ZSl0aGlzLnVuaXRzPVtdLHRoaXMuZGltZW5zaW9ucz1iLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIDB9KSk7ZWxzZSBpZigic3RyaW5nIj09dHlwZW9mIGUpe3ZhciB0PUQucGFyc2UoZSk7dGhpcy51bml0cz10LnVuaXRzLHRoaXMuZGltZW5zaW9ucz10LmRpbWVuc2lvbnN9ZWxzZXtpZighYShlKXx8bnVsbCE9PWUudmFsdWUpdGhyb3cgbmV3IFR5cGVFcnJvcigiU2Vjb25kIHBhcmFtZXRlciBpbiBVbml0IGNvbnN0cnVjdG9yIG11c3QgYmUgYSBzdHJpbmcgb3IgdmFsdWVsZXNzIFVuaXQiKTt0aGlzLmZpeFByZWZpeD1lLmZpeFByZWZpeCx0aGlzLnNraXBBdXRvbWF0aWNTaW1wbGlmaWNhdGlvbj1lLnNraXBBdXRvbWF0aWNTaW1wbGlmaWNhdGlvbix0aGlzLmRpbWVuc2lvbnM9ZS5kaW1lbnNpb25zLnNsaWNlKDApLHRoaXMudW5pdHM9ZS51bml0cy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBrdCh7fSxBKX0pKX10aGlzLnZhbHVlPXRoaXMuX25vcm1hbGl6ZShBKX1mdW5jdGlvbiBZKCl7Zm9yKDsiICI9PT1pfHwiXHQiPT09aTspTigpfWZ1bmN0aW9uIGYoQSl7cmV0dXJuIEE+PSIwIiYmQTw9IjkifWZ1bmN0aW9uIE4oKXtuKyssaT10LmNoYXJBdChuKX1mdW5jdGlvbiBVKEEpe249QSxpPXQuY2hhckF0KG4pfWZ1bmN0aW9uIHkoKXt2YXIgQT0iIixlPW47aWYoIisiPT09aT9OKCk6Ii0iPT09aSYmKEErPWksTigpKSwhZnVuY3Rpb24oQSl7cmV0dXJuIEE+PSIwIiYmQTw9IjkifHwiLiI9PT1BfShpKSlyZXR1cm4gVShlKSxudWxsO2lmKCIuIj09PWkpe2lmKEErPWksTigpLCFmKGkpKXJldHVybiBVKGUpLG51bGx9ZWxzZXtmb3IoO2YoaSk7KUErPWksTigpOyIuIj09PWkmJihBKz1pLE4oKSl9Zm9yKDtmKGkpOylBKz1pLE4oKTtpZigiRSI9PT1pfHwiZSI9PT1pKXt2YXIgdD0iIixyPW47aWYodCs9aSxOKCksIisiIT09aSYmIi0iIT09aXx8KHQrPWksTigpKSwhZihpKSlyZXR1cm4gVShyKSxBO2ZvcihBKz10O2YoaSk7KUErPWksTigpfXJldHVybiBBfWZ1bmN0aW9uIFQoKXtmb3IodmFyIEE9IiI7ZihpKXx8RC5pc1ZhbGlkQWxwaGEoaSk7KUErPWksTigpO3ZhciBlPUEuY2hhckF0KDApO3JldHVybiBELmlzVmFsaWRBbHBoYShlKT9BOm51bGx9ZnVuY3Rpb24geChBKXtyZXR1cm4gaT09PUE/KE4oKSxBKTpudWxsfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShELCJuYW1lIix7dmFsdWU6IlVuaXQifSksRC5wcm90b3R5cGUuY29uc3RydWN0b3I9RCxELnByb3RvdHlwZS50eXBlPSJVbml0IixELnByb3RvdHlwZS5pc1VuaXQ9ITAsRC5wYXJzZT1mdW5jdGlvbihBLGUpe2lmKGU9ZXx8e30sbj0tMSxpPSIiLCJzdHJpbmciIT10eXBlb2YodD1BKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGFyZ3VtZW50IGluIFVuaXQucGFyc2UsIHN0cmluZyBleHBlY3RlZCIpO3ZhciByPW5ldyBEO3IudW5pdHM9W107dmFyIG89MSxhPSExO04oKSxZKCk7dmFyIEI9eSgpLGM9bnVsbDtpZihCKXtpZigiQmlnTnVtYmVyIj09PXMubnVtYmVyKWM9bmV3IHAoQik7ZWxzZSBpZigiRnJhY3Rpb24iPT09cy5udW1iZXIpdHJ5e2M9bmV3IG0oQil9Y2F0Y2goQSl7Yz1wYXJzZUZsb2F0KEIpfWVsc2UgYz1wYXJzZUZsb2F0KEIpO1koKSx4KCIqIik/KG89MSxhPSEwKTp4KCIvIikmJihvPS0xLGE9ITApfWZvcih2YXIgZz1bXSxFPTE7Oyl7Zm9yKFkoKTsiKCI9PT1pOylnLnB1c2gobyksRSo9byxvPTEsTigpLFkoKTt2YXIgUTtpZighaSlicmVhazt2YXIgdT1pO2lmKG51bGw9PT0oUT1UKCkpKXRocm93IG5ldyBTeW50YXhFcnJvcignVW5leHBlY3RlZCAiJyt1KyciIGluICInK3QrJyIgYXQgaW5kZXggJytuLnRvU3RyaW5nKCkpO3ZhciBsPVIoUSk7aWYobnVsbD09PWwpdGhyb3cgbmV3IFN5bnRheEVycm9yKCdVbml0ICInK1ErJyIgbm90IGZvdW5kLicpO3ZhciBoPW8qRTtpZihZKCkseCgiXiIpKXtZKCk7dmFyIHc9eSgpO2lmKG51bGw9PT13KXRocm93IG5ldyBTeW50YXhFcnJvcignSW4gIicrQSsnIiwgIl4iIG11c3QgYmUgZm9sbG93ZWQgYnkgYSBmbG9hdGluZy1wb2ludCBudW1iZXInKTtoKj13fXIudW5pdHMucHVzaCh7dW5pdDpsLnVuaXQscHJlZml4OmwucHJlZml4LHBvd2VyOmh9KTtmb3IodmFyIEM9MDtDPGIubGVuZ3RoO0MrKylyLmRpbWVuc2lvbnNbQ10rPShsLnVuaXQuZGltZW5zaW9uc1tDXXx8MCkqaDtmb3IoWSgpOyIpIj09PWk7KXtpZigwPT09Zy5sZW5ndGgpdGhyb3cgbmV3IFN5bnRheEVycm9yKCdVbm1hdGNoZWQgIikiIGluICInK3QrJyIgYXQgaW5kZXggJytuLnRvU3RyaW5nKCkpO0UvPWcucG9wKCksTigpLFkoKX1pZihhPSExLHgoIioiKT8obz0xLGE9ITApOngoIi8iKT8obz0tMSxhPSEwKTpvPTEsbC51bml0LmJhc2Upe3ZhciBJPWwudW5pdC5iYXNlLmtleTtMLmF1dG9bSV09e3VuaXQ6bC51bml0LHByZWZpeDpsLnByZWZpeH19fWlmKFkoKSxpKXRocm93IG5ldyBTeW50YXhFcnJvcignQ291bGQgbm90IHBhcnNlOiAiJytBKyciJyk7aWYoYSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoJ1RyYWlsaW5nIGNoYXJhY3RlcnM6ICInK0ErJyInKTtpZigwIT09Zy5sZW5ndGgpdGhyb3cgbmV3IFN5bnRheEVycm9yKCdVbm1hdGNoZWQgIigiIGluICInK3QrJyInKTtpZigwPT09ci51bml0cy5sZW5ndGgmJiFlLmFsbG93Tm9Vbml0cyl0aHJvdyBuZXcgU3ludGF4RXJyb3IoJyInK0ErJyIgY29udGFpbnMgbm8gdW5pdHMnKTtyZXR1cm4gci52YWx1ZT12b2lkIDAhPT1jP3IuX25vcm1hbGl6ZShjKTpudWxsLHJ9LEQucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7dmFyIEE9bmV3IEQ7QS5maXhQcmVmaXg9dGhpcy5maXhQcmVmaXgsQS5za2lwQXV0b21hdGljU2ltcGxpZmljYXRpb249dGhpcy5za2lwQXV0b21hdGljU2ltcGxpZmljYXRpb24sQS52YWx1ZT11QSh0aGlzLnZhbHVlKSxBLmRpbWVuc2lvbnM9dGhpcy5kaW1lbnNpb25zLnNsaWNlKDApLEEudW5pdHM9W107Zm9yKHZhciBlPTA7ZTx0aGlzLnVuaXRzLmxlbmd0aDtlKyspZm9yKHZhciB0IGluIEEudW5pdHNbZV09e30sdGhpcy51bml0c1tlXSlNQSh0aGlzLnVuaXRzW2VdLHQpJiYoQS51bml0c1tlXVt0XT10aGlzLnVuaXRzW2VdW3RdKTtyZXR1cm4gQX0sRC5wcm90b3R5cGUudmFsdWVUeXBlPWZ1bmN0aW9uKCl7cmV0dXJuIFAodGhpcy52YWx1ZSl9LEQucHJvdG90eXBlLl9pc0Rlcml2ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gMCE9PXRoaXMudW5pdHMubGVuZ3RoJiYodGhpcy51bml0cy5sZW5ndGg+MXx8TWF0aC5hYnModGhpcy51bml0c1swXS5wb3dlci0xKT4xZS0xNSl9LEQucHJvdG90eXBlLl9ub3JtYWxpemU9ZnVuY3Rpb24oQSl7aWYobnVsbD09QXx8MD09PXRoaXMudW5pdHMubGVuZ3RoKXJldHVybiBBO2Zvcih2YXIgZT1BLHQ9RC5fZ2V0TnVtYmVyQ29udmVydGVyKFAoQSkpLG49MDtuPHRoaXMudW5pdHMubGVuZ3RoO24rKyl7dmFyIGk9dCh0aGlzLnVuaXRzW25dLnVuaXQudmFsdWUpLHI9dCh0aGlzLnVuaXRzW25dLnByZWZpeC52YWx1ZSksbz10KHRoaXMudW5pdHNbbl0ucG93ZXIpO2U9ZyhlLFEoZyhpLHIpLG8pKX1yZXR1cm4gZX0sRC5wcm90b3R5cGUuX2Rlbm9ybWFsaXplPWZ1bmN0aW9uKEEsZSl7aWYobnVsbD09QXx8MD09PXRoaXMudW5pdHMubGVuZ3RoKXJldHVybiBBO2Zvcih2YXIgdD1BLG49RC5fZ2V0TnVtYmVyQ29udmVydGVyKFAoQSkpLGk9MDtpPHRoaXMudW5pdHMubGVuZ3RoO2krKyl7dmFyIHI9bih0aGlzLnVuaXRzW2ldLnVuaXQudmFsdWUpLG89bih0aGlzLnVuaXRzW2ldLnByZWZpeC52YWx1ZSkscz1uKHRoaXMudW5pdHNbaV0ucG93ZXIpO3Q9RSh0LFEoZyhyLG8pLHMpKX1yZXR1cm4gdH07dmFyIFI9WW4oKGZ1bmN0aW9uKEEpe2lmKE1BKGosQSkpe3ZhciBlPWpbQV07cmV0dXJue3VuaXQ6ZSxwcmVmaXg6ZS5wcmVmaXhlc1siIl19fWZvcih2YXIgdCBpbiBqKWlmKE1BKGosdCkmJk90KEEsdCkpe3ZhciBuPWpbdF0saT1BLmxlbmd0aC10Lmxlbmd0aCxyPUEuc3Vic3RyaW5nKDAsaSksbz1NQShuLnByZWZpeGVzLHIpP24ucHJlZml4ZXNbcl06dm9pZCAwO2lmKHZvaWQgMCE9PW8pcmV0dXJue3VuaXQ6bixwcmVmaXg6b319cmV0dXJuIG51bGx9KSx7aGFzaGVyOmZ1bmN0aW9uKEEpe3JldHVybiBBWzBdfSxsaW1pdDoxMDB9KTtmdW5jdGlvbiBHKEEpe3JldHVybiBBLmVxdWFsQmFzZShILk5PTkUpJiZudWxsIT09QS52YWx1ZSYmIXMucHJlZGljdGFibGU/QS52YWx1ZTpBfUQuaXNWYWx1ZWxlc3NVbml0PWZ1bmN0aW9uKEEpe3JldHVybiBudWxsIT09UihBKX0sRC5wcm90b3R5cGUuaGFzQmFzZT1mdW5jdGlvbihBKXtpZigic3RyaW5nIj09dHlwZW9mIEEmJihBPUhbQV0pLCFBKXJldHVybiExO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKE1hdGguYWJzKCh0aGlzLmRpbWVuc2lvbnNbZV18fDApLShBLmRpbWVuc2lvbnNbZV18fDApKT4xZS0xMilyZXR1cm4hMTtyZXR1cm4hMH0sRC5wcm90b3R5cGUuZXF1YWxCYXNlPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKE1hdGguYWJzKCh0aGlzLmRpbWVuc2lvbnNbZV18fDApLShBLmRpbWVuc2lvbnNbZV18fDApKT4xZS0xMilyZXR1cm4hMTtyZXR1cm4hMH0sRC5wcm90b3R5cGUuZXF1YWxzPWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmVxdWFsQmFzZShBKSYmdyh0aGlzLnZhbHVlLEEudmFsdWUpfSxELnByb3RvdHlwZS5tdWx0aXBseT1mdW5jdGlvbihBKXtmb3IodmFyIGU9dGhpcy5jbG9uZSgpLHQ9YShBKT9BOm5ldyBEKEEpLG49MDtuPGIubGVuZ3RoO24rKyllLmRpbWVuc2lvbnNbbl09KHRoaXMuZGltZW5zaW9uc1tuXXx8MCkrKHQuZGltZW5zaW9uc1tuXXx8MCk7Zm9yKHZhciBpPTA7aTx0LnVuaXRzLmxlbmd0aDtpKyspe3ZhciByPXdCKHt9LHQudW5pdHNbaV0pO2UudW5pdHMucHVzaChyKX1pZihudWxsIT09dGhpcy52YWx1ZXx8bnVsbCE9PXQudmFsdWUpe3ZhciBvPW51bGw9PT10aGlzLnZhbHVlP3RoaXMuX25vcm1hbGl6ZSgxKTp0aGlzLnZhbHVlLHM9bnVsbD09PXQudmFsdWU/dC5fbm9ybWFsaXplKDEpOnQudmFsdWU7ZS52YWx1ZT1nKG8scyl9ZWxzZSBlLnZhbHVlPW51bGw7cmV0dXJuIGEoQSkmJihlLnNraXBBdXRvbWF0aWNTaW1wbGlmaWNhdGlvbj0hMSksRyhlKX0sRC5wcm90b3R5cGUuZGl2aWRlSW50bz1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IEQoQSkuZGl2aWRlKHRoaXMpfSxELnByb3RvdHlwZS5kaXZpZGU9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMuY2xvbmUoKSx0PWEoQSk/QTpuZXcgRChBKSxuPTA7bjxiLmxlbmd0aDtuKyspZS5kaW1lbnNpb25zW25dPSh0aGlzLmRpbWVuc2lvbnNbbl18fDApLSh0LmRpbWVuc2lvbnNbbl18fDApO2Zvcih2YXIgaT0wO2k8dC51bml0cy5sZW5ndGg7aSsrKXt2YXIgcj13Qih3Qih7fSx0LnVuaXRzW2ldKSx7fSx7cG93ZXI6LXQudW5pdHNbaV0ucG93ZXJ9KTtlLnVuaXRzLnB1c2gocil9aWYobnVsbCE9PXRoaXMudmFsdWV8fG51bGwhPT10LnZhbHVlKXt2YXIgbz1udWxsPT09dGhpcy52YWx1ZT90aGlzLl9ub3JtYWxpemUoMSk6dGhpcy52YWx1ZSxzPW51bGw9PT10LnZhbHVlP3QuX25vcm1hbGl6ZSgxKTp0LnZhbHVlO2UudmFsdWU9RShvLHMpfWVsc2UgZS52YWx1ZT1udWxsO3JldHVybiBhKEEpJiYoZS5za2lwQXV0b21hdGljU2ltcGxpZmljYXRpb249ITEpLEcoZSl9LEQucHJvdG90eXBlLnBvdz1mdW5jdGlvbihBKXtmb3IodmFyIGU9dGhpcy5jbG9uZSgpLHQ9MDt0PGIubGVuZ3RoO3QrKyllLmRpbWVuc2lvbnNbdF09KHRoaXMuZGltZW5zaW9uc1t0XXx8MCkqQTtmb3IodmFyIG49MDtuPGUudW5pdHMubGVuZ3RoO24rKyllLnVuaXRzW25dLnBvd2VyKj1BO3JldHVybiBudWxsIT09ZS52YWx1ZT9lLnZhbHVlPVEoZS52YWx1ZSxBKTplLnZhbHVlPW51bGwsZS5za2lwQXV0b21hdGljU2ltcGxpZmljYXRpb249ITEsRyhlKX0sRC5wcm90b3R5cGUuYWJzPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5jbG9uZSgpO2lmKG51bGwhPT1BLnZhbHVlKWlmKEEuX2lzRGVyaXZlZCgpfHwwPT09QS51bml0c1swXS51bml0Lm9mZnNldClBLnZhbHVlPXUoQS52YWx1ZSk7ZWxzZXt2YXIgZT1BLl9udW1iZXJDb252ZXJ0ZXIoKSx0PWUoQS51bml0c1swXS51bml0LnZhbHVlKSxuPWUoQS51bml0c1swXS51bml0Lm9mZnNldCksaT1nKHQsbik7QS52YWx1ZT1jKHUoQihBLnZhbHVlLGkpKSxpKX1mb3IodmFyIHIgaW4gQS51bml0cykiVkEiIT09QS51bml0c1tyXS51bml0Lm5hbWUmJiJWQVIiIT09QS51bml0c1tyXS51bml0Lm5hbWV8fChBLnVuaXRzW3JdLnVuaXQ9ai5XKTtyZXR1cm4gQX0sRC5wcm90b3R5cGUudG89ZnVuY3Rpb24oQSl7dmFyIGUsdD1udWxsPT09dGhpcy52YWx1ZT90aGlzLl9ub3JtYWxpemUoMSk6dGhpcy52YWx1ZTtpZigic3RyaW5nIj09dHlwZW9mIEEpZT1ELnBhcnNlKEEpO2Vsc2V7aWYoIWEoQSkpdGhyb3cgbmV3IEVycm9yKCJTdHJpbmcgb3IgVW5pdCBleHBlY3RlZCBhcyBwYXJhbWV0ZXIiKTtlPUEuY2xvbmUoKX1pZighdGhpcy5lcXVhbEJhc2UoZSkpdGhyb3cgbmV3IEVycm9yKCJVbml0cyBkbyBub3QgbWF0Y2ggKCciLmNvbmNhdChlLnRvU3RyaW5nKCksIicgIT0gJyIpLmNvbmNhdCh0aGlzLnRvU3RyaW5nKCksIicpIikpO2lmKG51bGwhPT1lLnZhbHVlKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGNvbnZlcnQgdG8gYSB1bml0IHdpdGggYSB2YWx1ZSIpO2lmKG51bGw9PT10aGlzLnZhbHVlfHx0aGlzLl9pc0Rlcml2ZWQoKXx8dGhpcy51bml0c1swXS51bml0Lm9mZnNldD09PWUudW5pdHNbMF0udW5pdC5vZmZzZXQpZS52YWx1ZT11QSh0KTtlbHNle3ZhciBuPUQuX2dldE51bWJlckNvbnZlcnRlcihQKHQpKSxpPXRoaXMudW5pdHNbMF0udW5pdC52YWx1ZSxyPXRoaXMudW5pdHNbMF0udW5pdC5vZmZzZXQsbz1nKGkscikscz1lLnVuaXRzWzBdLnVuaXQudmFsdWUsRT1lLnVuaXRzWzBdLnVuaXQub2Zmc2V0LFE9ZyhzLEUpO2UudmFsdWU9Qih0LG4oYyhvLFEpKSl9cmV0dXJuIGUuZml4UHJlZml4PSEwLGUuc2tpcEF1dG9tYXRpY1NpbXBsaWZpY2F0aW9uPSEwLGV9LEQucHJvdG90eXBlLnRvTnVtYmVyPWZ1bmN0aW9uKEEpe3JldHVybiBGKHRoaXMudG9OdW1lcmljKEEpKX0sRC5wcm90b3R5cGUudG9OdW1lcmljPWZ1bmN0aW9uKEEpe3ZhciBlO3JldHVybihlPUE/dGhpcy50byhBKTp0aGlzLmNsb25lKCkpLl9pc0Rlcml2ZWQoKXx8MD09PWUudW5pdHMubGVuZ3RoP2UuX2Rlbm9ybWFsaXplKGUudmFsdWUpOmUuX2Rlbm9ybWFsaXplKGUudmFsdWUsZS51bml0c1swXS5wcmVmaXgudmFsdWUpfSxELnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZvcm1hdCgpfSxELnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOiJVbml0Iix2YWx1ZTp0aGlzLl9kZW5vcm1hbGl6ZSh0aGlzLnZhbHVlKSx1bml0OnRoaXMuZm9ybWF0VW5pdHMoKSxmaXhQcmVmaXg6dGhpcy5maXhQcmVmaXh9fSxELmZyb21KU09OPWZ1bmN0aW9uKEEpe3ZhciBlPW5ldyBEKEEudmFsdWUsQS51bml0KTtyZXR1cm4gZS5maXhQcmVmaXg9QS5maXhQcmVmaXh8fCExLGV9LEQucHJvdG90eXBlLnZhbHVlT2Y9RC5wcm90b3R5cGUudG9TdHJpbmcsRC5wcm90b3R5cGUuc2ltcGxpZnk9ZnVuY3Rpb24oKXt2YXIgQSxlLHQ9dGhpcy5jbG9uZSgpLG49W107Zm9yKHZhciBpIGluIE8paWYoTUEoTyxpKSYmdC5oYXNCYXNlKEhbaV0pKXtBPWk7YnJlYWt9aWYoIk5PTkUiPT09QSl0LnVuaXRzPVtdO2Vsc2UgaWYoQSYmTUEoTyxBKSYmKGU9T1tBXSksZSl0LnVuaXRzPVt7dW5pdDplLnVuaXQscHJlZml4OmUucHJlZml4LHBvd2VyOjF9XTtlbHNle2Zvcih2YXIgcj0hMSxvPTA7bzxiLmxlbmd0aDtvKyspe3ZhciBzPWJbb107TWF0aC5hYnModC5kaW1lbnNpb25zW29dfHwwKT4xZS0xMiYmKE1BKE8scyk/bi5wdXNoKHt1bml0Ok9bc10udW5pdCxwcmVmaXg6T1tzXS5wcmVmaXgscG93ZXI6dC5kaW1lbnNpb25zW29dfHwwfSk6cj0hMCl9bi5sZW5ndGg8dC51bml0cy5sZW5ndGgmJiFyJiYodC51bml0cz1uKX1yZXR1cm4gdH0sRC5wcm90b3R5cGUudG9TST1mdW5jdGlvbigpe2Zvcih2YXIgQT10aGlzLmNsb25lKCksZT1bXSx0PTA7dDxiLmxlbmd0aDt0Kyspe3ZhciBuPWJbdF07aWYoTWF0aC5hYnMoQS5kaW1lbnNpb25zW3RdfHwwKT4xZS0xMil7aWYoIU1BKEwuc2ksbikpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZXhwcmVzcyBjdXN0b20gdW5pdCAiK24rIiBpbiBTSSB1bml0cyIpO2UucHVzaCh7dW5pdDpMLnNpW25dLnVuaXQscHJlZml4Okwuc2lbbl0ucHJlZml4LHBvd2VyOkEuZGltZW5zaW9uc1t0XXx8MH0pfX1yZXR1cm4gQS51bml0cz1lLEEuZml4UHJlZml4PSEwLEEuc2tpcEF1dG9tYXRpY1NpbXBsaWZpY2F0aW9uPSEwLEF9LEQucHJvdG90eXBlLmZvcm1hdFVuaXRzPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPSIiLGU9IiIsdD0wLG49MCxpPTA7aTx0aGlzLnVuaXRzLmxlbmd0aDtpKyspdGhpcy51bml0c1tpXS5wb3dlcj4wPyh0KyssQSs9IiAiK3RoaXMudW5pdHNbaV0ucHJlZml4Lm5hbWUrdGhpcy51bml0c1tpXS51bml0Lm5hbWUsTWF0aC5hYnModGhpcy51bml0c1tpXS5wb3dlci0xKT4xZS0xNSYmKEErPSJeIit0aGlzLnVuaXRzW2ldLnBvd2VyKSk6dGhpcy51bml0c1tpXS5wb3dlcjwwJiZuKys7aWYobj4wKWZvcih2YXIgcj0wO3I8dGhpcy51bml0cy5sZW5ndGg7cisrKXRoaXMudW5pdHNbcl0ucG93ZXI8MCYmKHQ+MD8oZSs9IiAiK3RoaXMudW5pdHNbcl0ucHJlZml4Lm5hbWUrdGhpcy51bml0c1tyXS51bml0Lm5hbWUsTWF0aC5hYnModGhpcy51bml0c1tyXS5wb3dlcisxKT4xZS0xNSYmKGUrPSJeIistdGhpcy51bml0c1tyXS5wb3dlcikpOihlKz0iICIrdGhpcy51bml0c1tyXS5wcmVmaXgubmFtZSt0aGlzLnVuaXRzW3JdLnVuaXQubmFtZSxlKz0iXiIrdGhpcy51bml0c1tyXS5wb3dlcikpO0E9QS5zdWJzdHIoMSksZT1lLnN1YnN0cigxKSx0PjEmJm4+MCYmKEE9IigiK0ErIikiKSxuPjEmJnQ+MCYmKGU9IigiK2UrIikiKTt2YXIgbz1BO3JldHVybiB0PjAmJm4+MCYmKG8rPSIgLyAiKSxvK2V9LEQucHJvdG90eXBlLmZvcm1hdD1mdW5jdGlvbihBKXt2YXIgZT10aGlzLnNraXBBdXRvbWF0aWNTaW1wbGlmaWNhdGlvbnx8bnVsbD09PXRoaXMudmFsdWU/dGhpcy5jbG9uZSgpOnRoaXMuc2ltcGxpZnkoKSx0PSExO2Zvcih2YXIgbiBpbiB2b2lkIDAhPT1lLnZhbHVlJiZudWxsIT09ZS52YWx1ZSYmbyhlLnZhbHVlKSYmKHQ9TWF0aC5hYnMoZS52YWx1ZS5yZSk8MWUtMTQpLGUudW5pdHMpTUEoZS51bml0cyxuKSYmZS51bml0c1tuXS51bml0JiYoIlZBIj09PWUudW5pdHNbbl0udW5pdC5uYW1lJiZ0P2UudW5pdHNbbl0udW5pdD1qLlZBUjoiVkFSIiE9PWUudW5pdHNbbl0udW5pdC5uYW1lfHx0fHwoZS51bml0c1tuXS51bml0PWouVkEpKTsxIT09ZS51bml0cy5sZW5ndGh8fGUuZml4UHJlZml4fHxNYXRoLmFicyhlLnVuaXRzWzBdLnBvd2VyLU1hdGgucm91bmQoZS51bml0c1swXS5wb3dlcikpPDFlLTE0JiYoZS51bml0c1swXS5wcmVmaXg9ZS5fYmVzdFByZWZpeCgpKTt2YXIgaT1lLl9kZW5vcm1hbGl6ZShlLnZhbHVlKSxyPW51bGwhPT1lLnZhbHVlP0koaSxBfHx7fSk6IiIscz1lLmZvcm1hdFVuaXRzKCk7cmV0dXJuIGUudmFsdWUmJm8oZS52YWx1ZSkmJihyPSIoIityKyIpIikscy5sZW5ndGg+MCYmci5sZW5ndGg+MCYmKHIrPSIgIikscitzfSxELnByb3RvdHlwZS5fYmVzdFByZWZpeD1mdW5jdGlvbigpe2lmKDEhPT10aGlzLnVuaXRzLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkNhbiBvbmx5IGNvbXB1dGUgdGhlIGJlc3QgcHJlZml4IGZvciBzaW5nbGUgdW5pdHMgd2l0aCBpbnRlZ2VyIHBvd2VycywgbGlrZSBrZywgc14yLCBOXi0xLCBhbmQgc28gZm9ydGghIik7aWYoTWF0aC5hYnModGhpcy51bml0c1swXS5wb3dlci1NYXRoLnJvdW5kKHRoaXMudW5pdHNbMF0ucG93ZXIpKT49MWUtMTQpdGhyb3cgbmV3IEVycm9yKCJDYW4gb25seSBjb21wdXRlIHRoZSBiZXN0IHByZWZpeCBmb3Igc2luZ2xlIHVuaXRzIHdpdGggaW50ZWdlciBwb3dlcnMsIGxpa2Uga2csIHNeMiwgTl4tMSwgYW5kIHNvIGZvcnRoISIpO3ZhciBBPW51bGwhPT10aGlzLnZhbHVlP3UodGhpcy52YWx1ZSk6MCxlPXUodGhpcy51bml0c1swXS51bml0LnZhbHVlKSx0PXRoaXMudW5pdHNbMF0ucHJlZml4O2lmKDA9PT1BKXJldHVybiB0O3ZhciBuPXRoaXMudW5pdHNbMF0ucG93ZXIsaT1NYXRoLmxvZyhBL01hdGgucG93KHQudmFsdWUqZSxuKSkvTWF0aC5MTjEwLTEuMjtpZihpPi0yLjIwMDAwMSYmaTwxLjgwMDAwMSlyZXR1cm4gdDtpPU1hdGguYWJzKGkpO3ZhciByPXRoaXMudW5pdHNbMF0udW5pdC5wcmVmaXhlcztmb3IodmFyIG8gaW4gcilpZihNQShyLG8pKXt2YXIgcz1yW29dO2lmKHMuc2NpZW50aWZpYyl7dmFyIGE9TWF0aC5hYnMoTWF0aC5sb2coQS9NYXRoLnBvdyhzLnZhbHVlKmUsbikpL01hdGguTE4xMC0xLjIpOyhhPGl8fGE9PT1pJiZzLm5hbWUubGVuZ3RoPHQubmFtZS5sZW5ndGgpJiYodD1zLGk9YSl9fXJldHVybiB0fSxELnByb3RvdHlwZS5zcGxpdFVuaXQ9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMuY2xvbmUoKSx0PVtdLG49MDtuPEEubGVuZ3RoJiYoZT1lLnRvKEFbbl0pLG4hPT1BLmxlbmd0aC0xKTtuKyspe3ZhciBpPWUudG9OdW1lcmljKCkscj1oKGkpLG89bmV3IEQodyhyLGkpP3I6bChlLnRvTnVtZXJpYygpKSxBW25dLnRvU3RyaW5nKCkpO3QucHVzaChvKSxlPWMoZSxvKX1mb3IodmFyIHM9MCxhPTA7YTx0Lmxlbmd0aDthKyspcz1CKHMsdFthXS52YWx1ZSk7cmV0dXJuIHcocyx0aGlzLnZhbHVlKSYmKGUudmFsdWU9MCksdC5wdXNoKGUpLHR9O3ZhciBTPXtOT05FOnsiIjp7bmFtZToiIix2YWx1ZToxLHNjaWVudGlmaWM6ITB9fSxTSE9SVDp7IiI6e25hbWU6IiIsdmFsdWU6MSxzY2llbnRpZmljOiEwfSxkYTp7bmFtZToiZGEiLHZhbHVlOjEwLHNjaWVudGlmaWM6ITF9LGg6e25hbWU6ImgiLHZhbHVlOjEwMCxzY2llbnRpZmljOiExfSxrOntuYW1lOiJrIix2YWx1ZToxZTMsc2NpZW50aWZpYzohMH0sTTp7bmFtZToiTSIsdmFsdWU6MWU2LHNjaWVudGlmaWM6ITB9LEc6e25hbWU6IkciLHZhbHVlOjFlOSxzY2llbnRpZmljOiEwfSxUOntuYW1lOiJUIix2YWx1ZToxZTEyLHNjaWVudGlmaWM6ITB9LFA6e25hbWU6IlAiLHZhbHVlOjFlMTUsc2NpZW50aWZpYzohMH0sRTp7bmFtZToiRSIsdmFsdWU6MWUxOCxzY2llbnRpZmljOiEwfSxaOntuYW1lOiJaIix2YWx1ZToxZTIxLHNjaWVudGlmaWM6ITB9LFk6e25hbWU6IlkiLHZhbHVlOjFlMjQsc2NpZW50aWZpYzohMH0sZDp7bmFtZToiZCIsdmFsdWU6LjEsc2NpZW50aWZpYzohMX0sYzp7bmFtZToiYyIsdmFsdWU6LjAxLHNjaWVudGlmaWM6ITF9LG06e25hbWU6Im0iLHZhbHVlOi4wMDEsc2NpZW50aWZpYzohMH0sdTp7bmFtZToidSIsdmFsdWU6MWUtNixzY2llbnRpZmljOiEwfSxuOntuYW1lOiJuIix2YWx1ZToxZS05LHNjaWVudGlmaWM6ITB9LHA6e25hbWU6InAiLHZhbHVlOjFlLTEyLHNjaWVudGlmaWM6ITB9LGY6e25hbWU6ImYiLHZhbHVlOjFlLTE1LHNjaWVudGlmaWM6ITB9LGE6e25hbWU6ImEiLHZhbHVlOjFlLTE4LHNjaWVudGlmaWM6ITB9LHo6e25hbWU6InoiLHZhbHVlOjFlLTIxLHNjaWVudGlmaWM6ITB9LHk6e25hbWU6InkiLHZhbHVlOjFlLTI0LHNjaWVudGlmaWM6ITB9fSxMT05HOnsiIjp7bmFtZToiIix2YWx1ZToxLHNjaWVudGlmaWM6ITB9LGRlY2E6e25hbWU6ImRlY2EiLHZhbHVlOjEwLHNjaWVudGlmaWM6ITF9LGhlY3RvOntuYW1lOiJoZWN0byIsdmFsdWU6MTAwLHNjaWVudGlmaWM6ITF9LGtpbG86e25hbWU6ImtpbG8iLHZhbHVlOjFlMyxzY2llbnRpZmljOiEwfSxtZWdhOntuYW1lOiJtZWdhIix2YWx1ZToxZTYsc2NpZW50aWZpYzohMH0sZ2lnYTp7bmFtZToiZ2lnYSIsdmFsdWU6MWU5LHNjaWVudGlmaWM6ITB9LHRlcmE6e25hbWU6InRlcmEiLHZhbHVlOjFlMTIsc2NpZW50aWZpYzohMH0scGV0YTp7bmFtZToicGV0YSIsdmFsdWU6MWUxNSxzY2llbnRpZmljOiEwfSxleGE6e25hbWU6ImV4YSIsdmFsdWU6MWUxOCxzY2llbnRpZmljOiEwfSx6ZXR0YTp7bmFtZToiemV0dGEiLHZhbHVlOjFlMjEsc2NpZW50aWZpYzohMH0seW90dGE6e25hbWU6InlvdHRhIix2YWx1ZToxZTI0LHNjaWVudGlmaWM6ITB9LGRlY2k6e25hbWU6ImRlY2kiLHZhbHVlOi4xLHNjaWVudGlmaWM6ITF9LGNlbnRpOntuYW1lOiJjZW50aSIsdmFsdWU6LjAxLHNjaWVudGlmaWM6ITF9LG1pbGxpOntuYW1lOiJtaWxsaSIsdmFsdWU6LjAwMSxzY2llbnRpZmljOiEwfSxtaWNybzp7bmFtZToibWljcm8iLHZhbHVlOjFlLTYsc2NpZW50aWZpYzohMH0sbmFubzp7bmFtZToibmFubyIsdmFsdWU6MWUtOSxzY2llbnRpZmljOiEwfSxwaWNvOntuYW1lOiJwaWNvIix2YWx1ZToxZS0xMixzY2llbnRpZmljOiEwfSxmZW10bzp7bmFtZToiZmVtdG8iLHZhbHVlOjFlLTE1LHNjaWVudGlmaWM6ITB9LGF0dG86e25hbWU6ImF0dG8iLHZhbHVlOjFlLTE4LHNjaWVudGlmaWM6ITB9LHplcHRvOntuYW1lOiJ6ZXB0byIsdmFsdWU6MWUtMjEsc2NpZW50aWZpYzohMH0seW9jdG86e25hbWU6InlvY3RvIix2YWx1ZToxZS0yNCxzY2llbnRpZmljOiEwfX0sU1FVQVJFRDp7IiI6e25hbWU6IiIsdmFsdWU6MSxzY2llbnRpZmljOiEwfSxkYTp7bmFtZToiZGEiLHZhbHVlOjEwMCxzY2llbnRpZmljOiExfSxoOntuYW1lOiJoIix2YWx1ZToxZTQsc2NpZW50aWZpYzohMX0sazp7bmFtZToiayIsdmFsdWU6MWU2LHNjaWVudGlmaWM6ITB9LE06e25hbWU6Ik0iLHZhbHVlOjFlMTIsc2NpZW50aWZpYzohMH0sRzp7bmFtZToiRyIsdmFsdWU6MWUxOCxzY2llbnRpZmljOiEwfSxUOntuYW1lOiJUIix2YWx1ZToxZTI0LHNjaWVudGlmaWM6ITB9LFA6e25hbWU6IlAiLHZhbHVlOjFlMzAsc2NpZW50aWZpYzohMH0sRTp7bmFtZToiRSIsdmFsdWU6MWUzNixzY2llbnRpZmljOiEwfSxaOntuYW1lOiJaIix2YWx1ZToxZTQyLHNjaWVudGlmaWM6ITB9LFk6e25hbWU6IlkiLHZhbHVlOjFlNDgsc2NpZW50aWZpYzohMH0sZDp7bmFtZToiZCIsdmFsdWU6LjAxLHNjaWVudGlmaWM6ITF9LGM6e25hbWU6ImMiLHZhbHVlOjFlLTQsc2NpZW50aWZpYzohMX0sbTp7bmFtZToibSIsdmFsdWU6MWUtNixzY2llbnRpZmljOiEwfSx1OntuYW1lOiJ1Iix2YWx1ZToxZS0xMixzY2llbnRpZmljOiEwfSxuOntuYW1lOiJuIix2YWx1ZToxZS0xOCxzY2llbnRpZmljOiEwfSxwOntuYW1lOiJwIix2YWx1ZToxZS0yNCxzY2llbnRpZmljOiEwfSxmOntuYW1lOiJmIix2YWx1ZToxZS0zMCxzY2llbnRpZmljOiEwfSxhOntuYW1lOiJhIix2YWx1ZToxZS0zNixzY2llbnRpZmljOiEwfSx6OntuYW1lOiJ6Iix2YWx1ZToxZS00MixzY2llbnRpZmljOiEwfSx5OntuYW1lOiJ5Iix2YWx1ZToxZS00OCxzY2llbnRpZmljOiEwfX0sQ1VCSUM6eyIiOntuYW1lOiIiLHZhbHVlOjEsc2NpZW50aWZpYzohMH0sZGE6e25hbWU6ImRhIix2YWx1ZToxZTMsc2NpZW50aWZpYzohMX0saDp7bmFtZToiaCIsdmFsdWU6MWU2LHNjaWVudGlmaWM6ITF9LGs6e25hbWU6ImsiLHZhbHVlOjFlOSxzY2llbnRpZmljOiEwfSxNOntuYW1lOiJNIix2YWx1ZToxZTE4LHNjaWVudGlmaWM6ITB9LEc6e25hbWU6IkciLHZhbHVlOjFlMjcsc2NpZW50aWZpYzohMH0sVDp7bmFtZToiVCIsdmFsdWU6MWUzNixzY2llbnRpZmljOiEwfSxQOntuYW1lOiJQIix2YWx1ZToxZTQ1LHNjaWVudGlmaWM6ITB9LEU6e25hbWU6IkUiLHZhbHVlOjFlNTQsc2NpZW50aWZpYzohMH0sWjp7bmFtZToiWiIsdmFsdWU6MWU2MyxzY2llbnRpZmljOiEwfSxZOntuYW1lOiJZIix2YWx1ZToxZTcyLHNjaWVudGlmaWM6ITB9LGQ6e25hbWU6ImQiLHZhbHVlOi4wMDEsc2NpZW50aWZpYzohMX0sYzp7bmFtZToiYyIsdmFsdWU6MWUtNixzY2llbnRpZmljOiExfSxtOntuYW1lOiJtIix2YWx1ZToxZS05LHNjaWVudGlmaWM6ITB9LHU6e25hbWU6InUiLHZhbHVlOjFlLTE4LHNjaWVudGlmaWM6ITB9LG46e25hbWU6Im4iLHZhbHVlOjFlLTI3LHNjaWVudGlmaWM6ITB9LHA6e25hbWU6InAiLHZhbHVlOjFlLTM2LHNjaWVudGlmaWM6ITB9LGY6e25hbWU6ImYiLHZhbHVlOjFlLTQ1LHNjaWVudGlmaWM6ITB9LGE6e25hbWU6ImEiLHZhbHVlOjFlLTU0LHNjaWVudGlmaWM6ITB9LHo6e25hbWU6InoiLHZhbHVlOjFlLTYzLHNjaWVudGlmaWM6ITB9LHk6e25hbWU6InkiLHZhbHVlOjFlLTcyLHNjaWVudGlmaWM6ITB9fSxCSU5BUllfU0hPUlRfU0k6eyIiOntuYW1lOiIiLHZhbHVlOjEsc2NpZW50aWZpYzohMH0sazp7bmFtZToiayIsdmFsdWU6MWUzLHNjaWVudGlmaWM6ITB9LE06e25hbWU6Ik0iLHZhbHVlOjFlNixzY2llbnRpZmljOiEwfSxHOntuYW1lOiJHIix2YWx1ZToxZTksc2NpZW50aWZpYzohMH0sVDp7bmFtZToiVCIsdmFsdWU6MWUxMixzY2llbnRpZmljOiEwfSxQOntuYW1lOiJQIix2YWx1ZToxZTE1LHNjaWVudGlmaWM6ITB9LEU6e25hbWU6IkUiLHZhbHVlOjFlMTgsc2NpZW50aWZpYzohMH0sWjp7bmFtZToiWiIsdmFsdWU6MWUyMSxzY2llbnRpZmljOiEwfSxZOntuYW1lOiJZIix2YWx1ZToxZTI0LHNjaWVudGlmaWM6ITB9fSxCSU5BUllfU0hPUlRfSUVDOnsiIjp7bmFtZToiIix2YWx1ZToxLHNjaWVudGlmaWM6ITB9LEtpOntuYW1lOiJLaSIsdmFsdWU6MTAyNCxzY2llbnRpZmljOiEwfSxNaTp7bmFtZToiTWkiLHZhbHVlOk1hdGgucG93KDEwMjQsMiksc2NpZW50aWZpYzohMH0sR2k6e25hbWU6IkdpIix2YWx1ZTpNYXRoLnBvdygxMDI0LDMpLHNjaWVudGlmaWM6ITB9LFRpOntuYW1lOiJUaSIsdmFsdWU6TWF0aC5wb3coMTAyNCw0KSxzY2llbnRpZmljOiEwfSxQaTp7bmFtZToiUGkiLHZhbHVlOk1hdGgucG93KDEwMjQsNSksc2NpZW50aWZpYzohMH0sRWk6e25hbWU6IkVpIix2YWx1ZTpNYXRoLnBvdygxMDI0LDYpLHNjaWVudGlmaWM6ITB9LFppOntuYW1lOiJaaSIsdmFsdWU6TWF0aC5wb3coMTAyNCw3KSxzY2llbnRpZmljOiEwfSxZaTp7bmFtZToiWWkiLHZhbHVlOk1hdGgucG93KDEwMjQsOCksc2NpZW50aWZpYzohMH19LEJJTkFSWV9MT05HX1NJOnsiIjp7bmFtZToiIix2YWx1ZToxLHNjaWVudGlmaWM6ITB9LGtpbG86e25hbWU6ImtpbG8iLHZhbHVlOjFlMyxzY2llbnRpZmljOiEwfSxtZWdhOntuYW1lOiJtZWdhIix2YWx1ZToxZTYsc2NpZW50aWZpYzohMH0sZ2lnYTp7bmFtZToiZ2lnYSIsdmFsdWU6MWU5LHNjaWVudGlmaWM6ITB9LHRlcmE6e25hbWU6InRlcmEiLHZhbHVlOjFlMTIsc2NpZW50aWZpYzohMH0scGV0YTp7bmFtZToicGV0YSIsdmFsdWU6MWUxNSxzY2llbnRpZmljOiEwfSxleGE6e25hbWU6ImV4YSIsdmFsdWU6MWUxOCxzY2llbnRpZmljOiEwfSx6ZXR0YTp7bmFtZToiemV0dGEiLHZhbHVlOjFlMjEsc2NpZW50aWZpYzohMH0seW90dGE6e25hbWU6InlvdHRhIix2YWx1ZToxZTI0LHNjaWVudGlmaWM6ITB9fSxCSU5BUllfTE9OR19JRUM6eyIiOntuYW1lOiIiLHZhbHVlOjEsc2NpZW50aWZpYzohMH0sa2liaTp7bmFtZToia2liaSIsdmFsdWU6MTAyNCxzY2llbnRpZmljOiEwfSxtZWJpOntuYW1lOiJtZWJpIix2YWx1ZTpNYXRoLnBvdygxMDI0LDIpLHNjaWVudGlmaWM6ITB9LGdpYmk6e25hbWU6ImdpYmkiLHZhbHVlOk1hdGgucG93KDEwMjQsMyksc2NpZW50aWZpYzohMH0sdGViaTp7bmFtZToidGViaSIsdmFsdWU6TWF0aC5wb3coMTAyNCw0KSxzY2llbnRpZmljOiEwfSxwZWJpOntuYW1lOiJwZWJpIix2YWx1ZTpNYXRoLnBvdygxMDI0LDUpLHNjaWVudGlmaWM6ITB9LGV4aTp7bmFtZToiZXhpIix2YWx1ZTpNYXRoLnBvdygxMDI0LDYpLHNjaWVudGlmaWM6ITB9LHplYmk6e25hbWU6InplYmkiLHZhbHVlOk1hdGgucG93KDEwMjQsNyksc2NpZW50aWZpYzohMH0seW9iaTp7bmFtZToieW9iaSIsdmFsdWU6TWF0aC5wb3coMTAyNCw4KSxzY2llbnRpZmljOiEwfX0sQlRVOnsiIjp7bmFtZToiIix2YWx1ZToxLHNjaWVudGlmaWM6ITB9LE1NOntuYW1lOiJNTSIsdmFsdWU6MWU2LHNjaWVudGlmaWM6ITB9fX07Uy5TSE9SVExPTkc9a3Qoe30sUy5TSE9SVCxTLkxPTkcpLFMuQklOQVJZX1NIT1JUPWt0KHt9LFMuQklOQVJZX1NIT1JUX1NJLFMuQklOQVJZX1NIT1JUX0lFQyksUy5CSU5BUllfTE9ORz1rdCh7fSxTLkJJTkFSWV9MT05HX1NJLFMuQklOQVJZX0xPTkdfSUVDKTt2YXIgYj1bIk1BU1MiLCJMRU5HVEgiLCJUSU1FIiwiQ1VSUkVOVCIsIlRFTVBFUkFUVVJFIiwiTFVNSU5PVVNfSU5URU5TSVRZIiwiQU1PVU5UX09GX1NVQlNUQU5DRSIsIkFOR0xFIiwiQklUIl0sSD17Tk9ORTp7ZGltZW5zaW9uczpbMCwwLDAsMCwwLDAsMCwwLDBdfSxNQVNTOntkaW1lbnNpb25zOlsxLDAsMCwwLDAsMCwwLDAsMF19LExFTkdUSDp7ZGltZW5zaW9uczpbMCwxLDAsMCwwLDAsMCwwLDBdfSxUSU1FOntkaW1lbnNpb25zOlswLDAsMSwwLDAsMCwwLDAsMF19LENVUlJFTlQ6e2RpbWVuc2lvbnM6WzAsMCwwLDEsMCwwLDAsMCwwXX0sVEVNUEVSQVRVUkU6e2RpbWVuc2lvbnM6WzAsMCwwLDAsMSwwLDAsMCwwXX0sTFVNSU5PVVNfSU5URU5TSVRZOntkaW1lbnNpb25zOlswLDAsMCwwLDAsMSwwLDAsMF19LEFNT1VOVF9PRl9TVUJTVEFOQ0U6e2RpbWVuc2lvbnM6WzAsMCwwLDAsMCwwLDEsMCwwXX0sRk9SQ0U6e2RpbWVuc2lvbnM6WzEsMSwtMiwwLDAsMCwwLDAsMF19LFNVUkZBQ0U6e2RpbWVuc2lvbnM6WzAsMiwwLDAsMCwwLDAsMCwwXX0sVk9MVU1FOntkaW1lbnNpb25zOlswLDMsMCwwLDAsMCwwLDAsMF19LEVORVJHWTp7ZGltZW5zaW9uczpbMSwyLC0yLDAsMCwwLDAsMCwwXX0sUE9XRVI6e2RpbWVuc2lvbnM6WzEsMiwtMywwLDAsMCwwLDAsMF19LFBSRVNTVVJFOntkaW1lbnNpb25zOlsxLC0xLC0yLDAsMCwwLDAsMCwwXX0sRUxFQ1RSSUNfQ0hBUkdFOntkaW1lbnNpb25zOlswLDAsMSwxLDAsMCwwLDAsMF19LEVMRUNUUklDX0NBUEFDSVRBTkNFOntkaW1lbnNpb25zOlstMSwtMiw0LDIsMCwwLDAsMCwwXX0sRUxFQ1RSSUNfUE9URU5USUFMOntkaW1lbnNpb25zOlsxLDIsLTMsLTEsMCwwLDAsMCwwXX0sRUxFQ1RSSUNfUkVTSVNUQU5DRTp7ZGltZW5zaW9uczpbMSwyLC0zLC0yLDAsMCwwLDAsMF19LEVMRUNUUklDX0lORFVDVEFOQ0U6e2RpbWVuc2lvbnM6WzEsMiwtMiwtMiwwLDAsMCwwLDBdfSxFTEVDVFJJQ19DT05EVUNUQU5DRTp7ZGltZW5zaW9uczpbLTEsLTIsMywyLDAsMCwwLDAsMF19LE1BR05FVElDX0ZMVVg6e2RpbWVuc2lvbnM6WzEsMiwtMiwtMSwwLDAsMCwwLDBdfSxNQUdORVRJQ19GTFVYX0RFTlNJVFk6e2RpbWVuc2lvbnM6WzEsMCwtMiwtMSwwLDAsMCwwLDBdfSxGUkVRVUVOQ1k6e2RpbWVuc2lvbnM6WzAsMCwtMSwwLDAsMCwwLDAsMF19LEFOR0xFOntkaW1lbnNpb25zOlswLDAsMCwwLDAsMCwwLDEsMF19LEJJVDp7ZGltZW5zaW9uczpbMCwwLDAsMCwwLDAsMCwwLDFdfX07Zm9yKHZhciB2IGluIEgpTUEoSCx2KSYmKEhbdl0ua2V5PXYpO3ZhciBrPXtuYW1lOiIiLGJhc2U6e30sdmFsdWU6MSxvZmZzZXQ6MCxkaW1lbnNpb25zOmIubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gMH0pKX0saj17bWV0ZXI6e25hbWU6Im1ldGVyIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTE9ORyx2YWx1ZToxLG9mZnNldDowfSxpbmNoOntuYW1lOiJpbmNoIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMDI1NCxvZmZzZXQ6MH0sZm9vdDp7bmFtZToiZm9vdCIsYmFzZTpILkxFTkdUSCxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjMwNDgsb2Zmc2V0OjB9LHlhcmQ6e25hbWU6InlhcmQiLGJhc2U6SC5MRU5HVEgscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi45MTQ0LG9mZnNldDowfSxtaWxlOntuYW1lOiJtaWxlIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZToxNjA5LjM0NCxvZmZzZXQ6MH0sbGluazp7bmFtZToibGluayIsYmFzZTpILkxFTkdUSCxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjIwMTE2OCxvZmZzZXQ6MH0scm9kOntuYW1lOiJyb2QiLGJhc2U6SC5MRU5HVEgscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjUuMDI5MixvZmZzZXQ6MH0sY2hhaW46e25hbWU6ImNoYWluIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZToyMC4xMTY4LG9mZnNldDowfSxhbmdzdHJvbTp7bmFtZToiYW5nc3Ryb20iLGJhc2U6SC5MRU5HVEgscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjFlLTEwLG9mZnNldDowfSxtOntuYW1lOiJtIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6MSxvZmZzZXQ6MH0saW46e25hbWU6ImluIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMDI1NCxvZmZzZXQ6MH0sZnQ6e25hbWU6ImZ0IixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMzA0OCxvZmZzZXQ6MH0seWQ6e25hbWU6InlkIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouOTE0NCxvZmZzZXQ6MH0sbWk6e25hbWU6Im1pIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZToxNjA5LjM0NCxvZmZzZXQ6MH0sbGk6e25hbWU6ImxpIixiYXNlOkguTEVOR1RILHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMjAxMTY4LG9mZnNldDowfSxyZDp7bmFtZToicmQiLGJhc2U6SC5MRU5HVEgscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjUuMDI5MjEsb2Zmc2V0OjB9LGNoOntuYW1lOiJjaCIsYmFzZTpILkxFTkdUSCxwcmVmaXhlczpTLk5PTkUsdmFsdWU6MjAuMTE2OCxvZmZzZXQ6MH0sbWlsOntuYW1lOiJtaWwiLGJhc2U6SC5MRU5HVEgscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjI1NGUtNyxvZmZzZXQ6MH0sbTI6e25hbWU6Im0yIixiYXNlOkguU1VSRkFDRSxwcmVmaXhlczpTLlNRVUFSRUQsdmFsdWU6MSxvZmZzZXQ6MH0sc3Fpbjp7bmFtZToic3FpbiIsYmFzZTpILlNVUkZBQ0UscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjY0NTE2ZS04LG9mZnNldDowfSxzcWZ0OntuYW1lOiJzcWZ0IixiYXNlOkguU1VSRkFDRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjA5MjkwMzA0LG9mZnNldDowfSxzcXlkOntuYW1lOiJzcXlkIixiYXNlOkguU1VSRkFDRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjgzNjEyNzM2LG9mZnNldDowfSxzcW1pOntuYW1lOiJzcW1pIixiYXNlOkguU1VSRkFDRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6MjU4OTk4OC4xMTAzMzYsb2Zmc2V0OjB9LHNxcmQ6e25hbWU6InNxcmQiLGJhc2U6SC5TVVJGQUNFLHByZWZpeGVzOlMuTk9ORSx2YWx1ZToyNS4yOTI5NSxvZmZzZXQ6MH0sc3FjaDp7bmFtZToic3FjaCIsYmFzZTpILlNVUkZBQ0UscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjQwNC42ODczLG9mZnNldDowfSxzcW1pbDp7bmFtZToic3FtaWwiLGJhc2U6SC5TVVJGQUNFLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo2LjQ1MTZlLTEwLG9mZnNldDowfSxhY3JlOntuYW1lOiJhY3JlIixiYXNlOkguU1VSRkFDRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6NDA0Ni44NixvZmZzZXQ6MH0saGVjdGFyZTp7bmFtZToiaGVjdGFyZSIsYmFzZTpILlNVUkZBQ0UscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjFlNCxvZmZzZXQ6MH0sbTM6e25hbWU6Im0zIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuQ1VCSUMsdmFsdWU6MSxvZmZzZXQ6MH0sTDp7bmFtZToiTCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOi4wMDEsb2Zmc2V0OjB9LGw6e25hbWU6ImwiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZTouMDAxLG9mZnNldDowfSxsaXRyZTp7bmFtZToibGl0cmUiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5MT05HLHZhbHVlOi4wMDEsb2Zmc2V0OjB9LGN1aW46e25hbWU6ImN1aW4iLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjE2Mzg3MDY0ZS0xMixvZmZzZXQ6MH0sY3VmdDp7bmFtZToiY3VmdCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjAyODMxNjg0NjU5MixvZmZzZXQ6MH0sY3V5ZDp7bmFtZToiY3V5ZCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6Ljc2NDU1NDg1Nzk4NCxvZmZzZXQ6MH0sdGVhc3Bvb246e25hbWU6InRlYXNwb29uIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo1ZS02LG9mZnNldDowfSx0YWJsZXNwb29uOntuYW1lOiJ0YWJsZXNwb29uIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZToxNWUtNixvZmZzZXQ6MH0sZHJvcDp7bmFtZToiZHJvcCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6NWUtOCxvZmZzZXQ6MH0sZ3R0OntuYW1lOiJndHQiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjVlLTgsb2Zmc2V0OjB9LG1pbmltOntuYW1lOiJtaW5pbSIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6Ni4xNjExNTJlLTgsb2Zmc2V0OjB9LGZsdWlkZHJhbTp7bmFtZToiZmx1aWRkcmFtIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTozNjk2NjkxMWUtMTMsb2Zmc2V0OjB9LGZsdWlkb3VuY2U6e25hbWU6ImZsdWlkb3VuY2UiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjI5NTczNTNlLTExLG9mZnNldDowfSxnaWxsOntuYW1lOiJnaWxsIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMDAwMTE4Mjk0MSxvZmZzZXQ6MH0sY2M6e25hbWU6ImNjIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZToxZS02LG9mZnNldDowfSxjdXA6e25hbWU6ImN1cCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjAwMDIzNjU4ODIsb2Zmc2V0OjB9LHBpbnQ6e25hbWU6InBpbnQiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4wMDA0NzMxNzY1LG9mZnNldDowfSxxdWFydDp7bmFtZToicXVhcnQiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4wMDA5NDYzNTI5LG9mZnNldDowfSxnYWxsb246e25hbWU6ImdhbGxvbiIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjAwMzc4NTQxMixvZmZzZXQ6MH0sYmVlcmJhcnJlbDp7bmFtZToiYmVlcmJhcnJlbCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjExNzM0Nzgsb2Zmc2V0OjB9LG9pbGJhcnJlbDp7bmFtZToib2lsYmFycmVsIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMTU4OTg3MyxvZmZzZXQ6MH0saG9nc2hlYWQ6e25hbWU6ImhvZ3NoZWFkIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMjM4NDgxLG9mZnNldDowfSxmbGRyOntuYW1lOiJmbGRyIixiYXNlOkguVk9MVU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTozNjk2NjkxMWUtMTMsb2Zmc2V0OjB9LGZsb3o6e25hbWU6ImZsb3oiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjI5NTczNTNlLTExLG9mZnNldDowfSxnaTp7bmFtZToiZ2kiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4wMDAxMTgyOTQxLG9mZnNldDowfSxjcDp7bmFtZToiY3AiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4wMDAyMzY1ODgyLG9mZnNldDowfSxwdDp7bmFtZToicHQiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4wMDA0NzMxNzY1LG9mZnNldDowfSxxdDp7bmFtZToicXQiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4wMDA5NDYzNTI5LG9mZnNldDowfSxnYWw6e25hbWU6ImdhbCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjAwMzc4NTQxMixvZmZzZXQ6MH0sYmJsOntuYW1lOiJiYmwiLGJhc2U6SC5WT0xVTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4xMTczNDc4LG9mZnNldDowfSxvYmw6e25hbWU6Im9ibCIsYmFzZTpILlZPTFVNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjE1ODk4NzMsb2Zmc2V0OjB9LGc6e25hbWU6ImciLGJhc2U6SC5NQVNTLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6LjAwMSxvZmZzZXQ6MH0sZ3JhbTp7bmFtZToiZ3JhbSIsYmFzZTpILk1BU1MscHJlZml4ZXM6Uy5MT05HLHZhbHVlOi4wMDEsb2Zmc2V0OjB9LHRvbjp7bmFtZToidG9uIixiYXNlOkguTUFTUyxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjkwNy4xODQ3NCxvZmZzZXQ6MH0sdDp7bmFtZToidCIsYmFzZTpILk1BU1MscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxZTMsb2Zmc2V0OjB9LHRvbm5lOntuYW1lOiJ0b25uZSIsYmFzZTpILk1BU1MscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjFlMyxvZmZzZXQ6MH0sZ3JhaW46e25hbWU6ImdyYWluIixiYXNlOkguTUFTUyxwcmVmaXhlczpTLk5PTkUsdmFsdWU6NjQ3OTg5MWUtMTEsb2Zmc2V0OjB9LGRyYW06e25hbWU6ImRyYW0iLGJhc2U6SC5NQVNTLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMDAxNzcxODQ1MTk1MzEyNSxvZmZzZXQ6MH0sb3VuY2U6e25hbWU6Im91bmNlIixiYXNlOkguTUFTUyxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjAyODM0OTUyMzEyNSxvZmZzZXQ6MH0scG91bmRtYXNzOntuYW1lOiJwb3VuZG1hc3MiLGJhc2U6SC5NQVNTLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouNDUzNTkyMzcsb2Zmc2V0OjB9LGh1bmRyZWR3ZWlnaHQ6e25hbWU6Imh1bmRyZWR3ZWlnaHQiLGJhc2U6SC5NQVNTLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo0NS4zNTkyMzcsb2Zmc2V0OjB9LHN0aWNrOntuYW1lOiJzdGljayIsYmFzZTpILk1BU1MscHJlZml4ZXM6Uy5OT05FLHZhbHVlOi4xMTUsb2Zmc2V0OjB9LHN0b25lOntuYW1lOiJzdG9uZSIsYmFzZTpILk1BU1MscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjYuMzUwMjkzMTgsb2Zmc2V0OjB9LGdyOntuYW1lOiJnciIsYmFzZTpILk1BU1MscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjY0Nzk4OTFlLTExLG9mZnNldDowfSxkcjp7bmFtZToiZHIiLGJhc2U6SC5NQVNTLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouMDAxNzcxODQ1MTk1MzEyNSxvZmZzZXQ6MH0sb3o6e25hbWU6Im96IixiYXNlOkguTUFTUyxwcmVmaXhlczpTLk5PTkUsdmFsdWU6LjAyODM0OTUyMzEyNSxvZmZzZXQ6MH0sbGJtOntuYW1lOiJsYm0iLGJhc2U6SC5NQVNTLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTouNDUzNTkyMzcsb2Zmc2V0OjB9LGN3dDp7bmFtZToiY3d0IixiYXNlOkguTUFTUyxwcmVmaXhlczpTLk5PTkUsdmFsdWU6NDUuMzU5MjM3LG9mZnNldDowfSxzOntuYW1lOiJzIixiYXNlOkguVElNRSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LG1pbjp7bmFtZToibWluIixiYXNlOkguVElNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6NjAsb2Zmc2V0OjB9LGg6e25hbWU6ImgiLGJhc2U6SC5USU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTozNjAwLG9mZnNldDowfSxzZWNvbmQ6e25hbWU6InNlY29uZCIsYmFzZTpILlRJTUUscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LHNlYzp7bmFtZToic2VjIixiYXNlOkguVElNRSxwcmVmaXhlczpTLkxPTkcsdmFsdWU6MSxvZmZzZXQ6MH0sbWludXRlOntuYW1lOiJtaW51dGUiLGJhc2U6SC5USU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo2MCxvZmZzZXQ6MH0saG91cjp7bmFtZToiaG91ciIsYmFzZTpILlRJTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjM2MDAsb2Zmc2V0OjB9LGRheTp7bmFtZToiZGF5IixiYXNlOkguVElNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6ODY0MDAsb2Zmc2V0OjB9LHdlZWs6e25hbWU6IndlZWsiLGJhc2U6SC5USU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo2MDQ4MDAsb2Zmc2V0OjB9LG1vbnRoOntuYW1lOiJtb250aCIsYmFzZTpILlRJTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjI2Mjk4MDAsb2Zmc2V0OjB9LHllYXI6e25hbWU6InllYXIiLGJhc2U6SC5USU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTozMTU1NzYwMCxvZmZzZXQ6MH0sZGVjYWRlOntuYW1lOiJkZWNhZGUiLGJhc2U6SC5USU1FLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTozMTU1NzZlMyxvZmZzZXQ6MH0sY2VudHVyeTp7bmFtZToiY2VudHVyeSIsYmFzZTpILlRJTUUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjMxNTU3NmU0LG9mZnNldDowfSxtaWxsZW5uaXVtOntuYW1lOiJtaWxsZW5uaXVtIixiYXNlOkguVElNRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6MzE1NTc2ZTUsb2Zmc2V0OjB9LGhlcnR6OntuYW1lOiJIZXJ0eiIsYmFzZTpILkZSRVFVRU5DWSxwcmVmaXhlczpTLkxPTkcsdmFsdWU6MSxvZmZzZXQ6MCxyZWNpcHJvY2FsOiEwfSxIejp7bmFtZToiSHoiLGJhc2U6SC5GUkVRVUVOQ1kscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxLG9mZnNldDowLHJlY2lwcm9jYWw6ITB9LHJhZDp7bmFtZToicmFkIixiYXNlOkguQU5HTEUscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxLG9mZnNldDowfSxyYWRpYW46e25hbWU6InJhZGlhbiIsYmFzZTpILkFOR0xFLHByZWZpeGVzOlMuTE9ORyx2YWx1ZToxLG9mZnNldDowfSxkZWc6e25hbWU6ImRlZyIsYmFzZTpILkFOR0xFLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6bnVsbCxvZmZzZXQ6MH0sZGVncmVlOntuYW1lOiJkZWdyZWUiLGJhc2U6SC5BTkdMRSxwcmVmaXhlczpTLkxPTkcsdmFsdWU6bnVsbCxvZmZzZXQ6MH0sZ3JhZDp7bmFtZToiZ3JhZCIsYmFzZTpILkFOR0xFLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6bnVsbCxvZmZzZXQ6MH0sZ3JhZGlhbjp7bmFtZToiZ3JhZGlhbiIsYmFzZTpILkFOR0xFLHByZWZpeGVzOlMuTE9ORyx2YWx1ZTpudWxsLG9mZnNldDowfSxjeWNsZTp7bmFtZToiY3ljbGUiLGJhc2U6SC5BTkdMRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6bnVsbCxvZmZzZXQ6MH0sYXJjc2VjOntuYW1lOiJhcmNzZWMiLGJhc2U6SC5BTkdMRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6bnVsbCxvZmZzZXQ6MH0sYXJjbWluOntuYW1lOiJhcmNtaW4iLGJhc2U6SC5BTkdMRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6bnVsbCxvZmZzZXQ6MH0sQTp7bmFtZToiQSIsYmFzZTpILkNVUlJFTlQscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxLG9mZnNldDowfSxhbXBlcmU6e25hbWU6ImFtcGVyZSIsYmFzZTpILkNVUlJFTlQscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LEs6e25hbWU6IksiLGJhc2U6SC5URU1QRVJBVFVSRSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LGRlZ0M6e25hbWU6ImRlZ0MiLGJhc2U6SC5URU1QRVJBVFVSRSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjI3My4xNX0sZGVnRjp7bmFtZToiZGVnRiIsYmFzZTpILlRFTVBFUkFUVVJFLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6bmV3IG0oNSw5KSxvZmZzZXQ6NDU5LjY3fSxkZWdSOntuYW1lOiJkZWdSIixiYXNlOkguVEVNUEVSQVRVUkUscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZTpuZXcgbSg1LDkpLG9mZnNldDowfSxrZWx2aW46e25hbWU6ImtlbHZpbiIsYmFzZTpILlRFTVBFUkFUVVJFLHByZWZpeGVzOlMuTE9ORyx2YWx1ZToxLG9mZnNldDowfSxjZWxzaXVzOntuYW1lOiJjZWxzaXVzIixiYXNlOkguVEVNUEVSQVRVUkUscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjI3My4xNX0sZmFocmVuaGVpdDp7bmFtZToiZmFocmVuaGVpdCIsYmFzZTpILlRFTVBFUkFUVVJFLHByZWZpeGVzOlMuTE9ORyx2YWx1ZTpuZXcgbSg1LDkpLG9mZnNldDo0NTkuNjd9LHJhbmtpbmU6e25hbWU6InJhbmtpbmUiLGJhc2U6SC5URU1QRVJBVFVSRSxwcmVmaXhlczpTLkxPTkcsdmFsdWU6bmV3IG0oNSw5KSxvZmZzZXQ6MH0sbW9sOntuYW1lOiJtb2wiLGJhc2U6SC5BTU9VTlRfT0ZfU1VCU1RBTkNFLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6MSxvZmZzZXQ6MH0sbW9sZTp7bmFtZToibW9sZSIsYmFzZTpILkFNT1VOVF9PRl9TVUJTVEFOQ0UscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LGNkOntuYW1lOiJjZCIsYmFzZTpILkxVTUlOT1VTX0lOVEVOU0lUWSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LGNhbmRlbGE6e25hbWU6ImNhbmRlbGEiLGJhc2U6SC5MVU1JTk9VU19JTlRFTlNJVFkscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LE46e25hbWU6Ik4iLGJhc2U6SC5GT1JDRSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LG5ld3Rvbjp7bmFtZToibmV3dG9uIixiYXNlOkguRk9SQ0UscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LGR5bjp7bmFtZToiZHluIixiYXNlOkguRk9SQ0UscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxZS01LG9mZnNldDowfSxkeW5lOntuYW1lOiJkeW5lIixiYXNlOkguRk9SQ0UscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjFlLTUsb2Zmc2V0OjB9LGxiZjp7bmFtZToibGJmIixiYXNlOkguRk9SQ0UscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjQuNDQ4MjIxNjE1MjYwNSxvZmZzZXQ6MH0scG91bmRmb3JjZTp7bmFtZToicG91bmRmb3JjZSIsYmFzZTpILkZPUkNFLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo0LjQ0ODIyMTYxNTI2MDUsb2Zmc2V0OjB9LGtpcDp7bmFtZToia2lwIixiYXNlOkguRk9SQ0UscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjQ0NDguMjIxNixvZmZzZXQ6MH0sa2lsb2dyYW1mb3JjZTp7bmFtZToia2lsb2dyYW1mb3JjZSIsYmFzZTpILkZPUkNFLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo5LjgwNjY1LG9mZnNldDowfSxKOntuYW1lOiJKIixiYXNlOkguRU5FUkdZLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6MSxvZmZzZXQ6MH0sam91bGU6e25hbWU6ImpvdWxlIixiYXNlOkguRU5FUkdZLHByZWZpeGVzOlMuTE9ORyx2YWx1ZToxLG9mZnNldDowfSxlcmc6e25hbWU6ImVyZyIsYmFzZTpILkVORVJHWSxwcmVmaXhlczpTLlNIT1JUTE9ORyx2YWx1ZToxZS03LG9mZnNldDowfSxXaDp7bmFtZToiV2giLGJhc2U6SC5FTkVSR1kscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZTozNjAwLG9mZnNldDowfSxCVFU6e25hbWU6IkJUVSIsYmFzZTpILkVORVJHWSxwcmVmaXhlczpTLkJUVSx2YWx1ZToxMDU1LjA1NTg1MjYyLG9mZnNldDowfSxlVjp7bmFtZToiZVYiLGJhc2U6SC5FTkVSR1kscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxNjAyMTc2NTY1ZS0yOCxvZmZzZXQ6MH0sZWxlY3Ryb252b2x0OntuYW1lOiJlbGVjdHJvbnZvbHQiLGJhc2U6SC5FTkVSR1kscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjE2MDIxNzY1NjVlLTI4LG9mZnNldDowfSxXOntuYW1lOiJXIixiYXNlOkguUE9XRVIscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxLG9mZnNldDowfSx3YXR0OntuYW1lOiJ3YXR0IixiYXNlOkguUE9XRVIscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LGhwOntuYW1lOiJocCIsYmFzZTpILlBPV0VSLHByZWZpeGVzOlMuTk9ORSx2YWx1ZTo3NDUuNjk5ODcxNTM4NixvZmZzZXQ6MH0sVkFSOntuYW1lOiJWQVIiLGJhc2U6SC5QT1dFUixwcmVmaXhlczpTLlNIT1JULHZhbHVlOmQuSSxvZmZzZXQ6MH0sVkE6e25hbWU6IlZBIixiYXNlOkguUE9XRVIscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxLG9mZnNldDowfSxQYTp7bmFtZToiUGEiLGJhc2U6SC5QUkVTU1VSRSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LHBzaTp7bmFtZToicHNpIixiYXNlOkguUFJFU1NVUkUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjY4OTQuNzU3MjkyNzY0NTksb2Zmc2V0OjB9LGF0bTp7bmFtZToiYXRtIixiYXNlOkguUFJFU1NVUkUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjEwMTMyNSxvZmZzZXQ6MH0sYmFyOntuYW1lOiJiYXIiLGJhc2U6SC5QUkVTU1VSRSxwcmVmaXhlczpTLlNIT1JUTE9ORyx2YWx1ZToxZTUsb2Zmc2V0OjB9LHRvcnI6e25hbWU6InRvcnIiLGJhc2U6SC5QUkVTU1VSRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6MTMzLjMyMixvZmZzZXQ6MH0sbW1IZzp7bmFtZToibW1IZyIsYmFzZTpILlBSRVNTVVJFLHByZWZpeGVzOlMuTk9ORSx2YWx1ZToxMzMuMzIyLG9mZnNldDowfSxtbUgyTzp7bmFtZToibW1IMk8iLGJhc2U6SC5QUkVTU1VSRSxwcmVmaXhlczpTLk5PTkUsdmFsdWU6OS44MDY2NSxvZmZzZXQ6MH0sY21IMk86e25hbWU6ImNtSDJPIixiYXNlOkguUFJFU1NVUkUscHJlZml4ZXM6Uy5OT05FLHZhbHVlOjk4LjA2NjUsb2Zmc2V0OjB9LGNvdWxvbWI6e25hbWU6ImNvdWxvbWIiLGJhc2U6SC5FTEVDVFJJQ19DSEFSR0UscHJlZml4ZXM6Uy5MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LEM6e25hbWU6IkMiLGJhc2U6SC5FTEVDVFJJQ19DSEFSR0UscHJlZml4ZXM6Uy5TSE9SVCx2YWx1ZToxLG9mZnNldDowfSxmYXJhZDp7bmFtZToiZmFyYWQiLGJhc2U6SC5FTEVDVFJJQ19DQVBBQ0lUQU5DRSxwcmVmaXhlczpTLkxPTkcsdmFsdWU6MSxvZmZzZXQ6MH0sRjp7bmFtZToiRiIsYmFzZTpILkVMRUNUUklDX0NBUEFDSVRBTkNFLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6MSxvZmZzZXQ6MH0sdm9sdDp7bmFtZToidm9sdCIsYmFzZTpILkVMRUNUUklDX1BPVEVOVElBTCxwcmVmaXhlczpTLkxPTkcsdmFsdWU6MSxvZmZzZXQ6MH0sVjp7bmFtZToiViIsYmFzZTpILkVMRUNUUklDX1BPVEVOVElBTCxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LG9obTp7bmFtZToib2htIixiYXNlOkguRUxFQ1RSSUNfUkVTSVNUQU5DRSxwcmVmaXhlczpTLlNIT1JUTE9ORyx2YWx1ZToxLG9mZnNldDowfSxoZW5yeTp7bmFtZToiaGVucnkiLGJhc2U6SC5FTEVDVFJJQ19JTkRVQ1RBTkNFLHByZWZpeGVzOlMuTE9ORyx2YWx1ZToxLG9mZnNldDowfSxIOntuYW1lOiJIIixiYXNlOkguRUxFQ1RSSUNfSU5EVUNUQU5DRSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LHNpZW1lbnM6e25hbWU6InNpZW1lbnMiLGJhc2U6SC5FTEVDVFJJQ19DT05EVUNUQU5DRSxwcmVmaXhlczpTLkxPTkcsdmFsdWU6MSxvZmZzZXQ6MH0sUzp7bmFtZToiUyIsYmFzZTpILkVMRUNUUklDX0NPTkRVQ1RBTkNFLHByZWZpeGVzOlMuU0hPUlQsdmFsdWU6MSxvZmZzZXQ6MH0sd2ViZXI6e25hbWU6IndlYmVyIixiYXNlOkguTUFHTkVUSUNfRkxVWCxwcmVmaXhlczpTLkxPTkcsdmFsdWU6MSxvZmZzZXQ6MH0sV2I6e25hbWU6IldiIixiYXNlOkguTUFHTkVUSUNfRkxVWCxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LHRlc2xhOntuYW1lOiJ0ZXNsYSIsYmFzZTpILk1BR05FVElDX0ZMVVhfREVOU0lUWSxwcmVmaXhlczpTLkxPTkcsdmFsdWU6MSxvZmZzZXQ6MH0sVDp7bmFtZToiVCIsYmFzZTpILk1BR05FVElDX0ZMVVhfREVOU0lUWSxwcmVmaXhlczpTLlNIT1JULHZhbHVlOjEsb2Zmc2V0OjB9LGI6e25hbWU6ImIiLGJhc2U6SC5CSVQscHJlZml4ZXM6Uy5CSU5BUllfU0hPUlQsdmFsdWU6MSxvZmZzZXQ6MH0sYml0czp7bmFtZToiYml0cyIsYmFzZTpILkJJVCxwcmVmaXhlczpTLkJJTkFSWV9MT05HLHZhbHVlOjEsb2Zmc2V0OjB9LEI6e25hbWU6IkIiLGJhc2U6SC5CSVQscHJlZml4ZXM6Uy5CSU5BUllfU0hPUlQsdmFsdWU6OCxvZmZzZXQ6MH0sYnl0ZXM6e25hbWU6ImJ5dGVzIixiYXNlOkguQklULHByZWZpeGVzOlMuQklOQVJZX0xPTkcsdmFsdWU6OCxvZmZzZXQ6MH19LEo9e21ldGVyczoibWV0ZXIiLGluY2hlczoiaW5jaCIsZmVldDoiZm9vdCIseWFyZHM6InlhcmQiLG1pbGVzOiJtaWxlIixsaW5rczoibGluayIscm9kczoicm9kIixjaGFpbnM6ImNoYWluIixhbmdzdHJvbXM6ImFuZ3N0cm9tIixsdDoibCIsbGl0cmVzOiJsaXRyZSIsbGl0ZXI6ImxpdHJlIixsaXRlcnM6ImxpdHJlIix0ZWFzcG9vbnM6InRlYXNwb29uIix0YWJsZXNwb29uczoidGFibGVzcG9vbiIsbWluaW1zOiJtaW5pbSIsZmx1aWRkcmFtczoiZmx1aWRkcmFtIixmbHVpZG91bmNlczoiZmx1aWRvdW5jZSIsZ2lsbHM6ImdpbGwiLGN1cHM6ImN1cCIscGludHM6InBpbnQiLHF1YXJ0czoicXVhcnQiLGdhbGxvbnM6ImdhbGxvbiIsYmVlcmJhcnJlbHM6ImJlZXJiYXJyZWwiLG9pbGJhcnJlbHM6Im9pbGJhcnJlbCIsaG9nc2hlYWRzOiJob2dzaGVhZCIsZ3R0czoiZ3R0IixncmFtczoiZ3JhbSIsdG9uczoidG9uIix0b25uZXM6InRvbm5lIixncmFpbnM6ImdyYWluIixkcmFtczoiZHJhbSIsb3VuY2VzOiJvdW5jZSIscG91bmRtYXNzZXM6InBvdW5kbWFzcyIsaHVuZHJlZHdlaWdodHM6Imh1bmRyZWR3ZWlnaHQiLHN0aWNrczoic3RpY2siLGxiOiJsYm0iLGxiczoibGJtIixraXBzOiJraXAiLGtnZjoia2lsb2dyYW1mb3JjZSIsYWNyZXM6ImFjcmUiLGhlY3RhcmVzOiJoZWN0YXJlIixzcWZlZXQ6InNxZnQiLHNxeWFyZDoic3F5ZCIsc3FtaWxlOiJzcW1pIixzcW1pbGVzOiJzcW1pIixtbWhnOiJtbUhnIixtbWgybzoibW1IMk8iLGNtaDJvOiJjbUgyTyIsc2Vjb25kczoic2Vjb25kIixzZWNzOiJzZWNvbmQiLG1pbnV0ZXM6Im1pbnV0ZSIsbWluczoibWludXRlIixob3VyczoiaG91ciIsaHI6ImhvdXIiLGhyczoiaG91ciIsZGF5czoiZGF5Iix3ZWVrczoid2VlayIsbW9udGhzOiJtb250aCIseWVhcnM6InllYXIiLGRlY2FkZXM6ImRlY2FkZSIsY2VudHVyaWVzOiJjZW50dXJ5IixtaWxsZW5uaWE6Im1pbGxlbm5pdW0iLGhlcnR6OiJoZXJ0eiIscmFkaWFuczoicmFkaWFuIixkZWdyZWVzOiJkZWdyZWUiLGdyYWRpYW5zOiJncmFkaWFuIixjeWNsZXM6ImN5Y2xlIixhcmNzZWNvbmQ6ImFyY3NlYyIsYXJjc2Vjb25kczoiYXJjc2VjIixhcmNtaW51dGU6ImFyY21pbiIsYXJjbWludXRlczoiYXJjbWluIixCVFVzOiJCVFUiLHdhdHRzOiJ3YXR0Iixqb3VsZXM6ImpvdWxlIixhbXBlcmVzOiJhbXBlcmUiLGFtcHM6ImFtcGVyZSIsYW1wOiJhbXBlcmUiLGNvdWxvbWJzOiJjb3Vsb21iIix2b2x0czoidm9sdCIsb2htczoib2htIixmYXJhZHM6ImZhcmFkIix3ZWJlcnM6IndlYmVyIix0ZXNsYXM6InRlc2xhIixlbGVjdHJvbnZvbHRzOiJlbGVjdHJvbnZvbHQiLG1vbGVzOiJtb2xlIixiaXQ6ImJpdHMiLGJ5dGU6ImJ5dGVzIn07ZnVuY3Rpb24geihBKXtpZigiQmlnTnVtYmVyIj09PUEubnVtYmVyKXt2YXIgZT1RQihwKTtqLnJhZC52YWx1ZT1uZXcgcCgxKSxqLmRlZy52YWx1ZT1lLmRpdigxODApLGouZ3JhZC52YWx1ZT1lLmRpdigyMDApLGouY3ljbGUudmFsdWU9ZS50aW1lcygyKSxqLmFyY3NlYy52YWx1ZT1lLmRpdig2NDhlMyksai5hcmNtaW4udmFsdWU9ZS5kaXYoMTA4MDApfWVsc2Ugai5yYWQudmFsdWU9MSxqLmRlZy52YWx1ZT1NYXRoLlBJLzE4MCxqLmdyYWQudmFsdWU9TWF0aC5QSS8yMDAsai5jeWNsZS52YWx1ZT0yKk1hdGguUEksai5hcmNzZWMudmFsdWU9TWF0aC5QSS82NDhlMyxqLmFyY21pbi52YWx1ZT1NYXRoLlBJLzEwODAwO2oucmFkaWFuLnZhbHVlPWoucmFkLnZhbHVlLGouZGVncmVlLnZhbHVlPWouZGVnLnZhbHVlLGouZ3JhZGlhbi52YWx1ZT1qLmdyYWQudmFsdWV9eihzKSxyJiZyKCJjb25maWciLChmdW5jdGlvbihBLGUpe0EubnVtYmVyIT09ZS5udW1iZXImJnooQSl9KSk7dmFyIEw9e3NpOntOT05FOnt1bml0OmsscHJlZml4OlMuTk9ORVsiIl19LExFTkdUSDp7dW5pdDpqLm0scHJlZml4OlMuU0hPUlRbIiJdfSxNQVNTOnt1bml0OmouZyxwcmVmaXg6Uy5TSE9SVC5rfSxUSU1FOnt1bml0OmoucyxwcmVmaXg6Uy5TSE9SVFsiIl19LENVUlJFTlQ6e3VuaXQ6ai5BLHByZWZpeDpTLlNIT1JUWyIiXX0sVEVNUEVSQVRVUkU6e3VuaXQ6ai5LLHByZWZpeDpTLlNIT1JUWyIiXX0sTFVNSU5PVVNfSU5URU5TSVRZOnt1bml0OmouY2QscHJlZml4OlMuU0hPUlRbIiJdfSxBTU9VTlRfT0ZfU1VCU1RBTkNFOnt1bml0OmoubW9sLHByZWZpeDpTLlNIT1JUWyIiXX0sQU5HTEU6e3VuaXQ6ai5yYWQscHJlZml4OlMuU0hPUlRbIiJdfSxCSVQ6e3VuaXQ6ai5iaXRzLHByZWZpeDpTLlNIT1JUWyIiXX0sRk9SQ0U6e3VuaXQ6ai5OLHByZWZpeDpTLlNIT1JUWyIiXX0sRU5FUkdZOnt1bml0OmouSixwcmVmaXg6Uy5TSE9SVFsiIl19LFBPV0VSOnt1bml0OmouVyxwcmVmaXg6Uy5TSE9SVFsiIl19LFBSRVNTVVJFOnt1bml0OmouUGEscHJlZml4OlMuU0hPUlRbIiJdfSxFTEVDVFJJQ19DSEFSR0U6e3VuaXQ6ai5DLHByZWZpeDpTLlNIT1JUWyIiXX0sRUxFQ1RSSUNfQ0FQQUNJVEFOQ0U6e3VuaXQ6ai5GLHByZWZpeDpTLlNIT1JUWyIiXX0sRUxFQ1RSSUNfUE9URU5USUFMOnt1bml0OmouVixwcmVmaXg6Uy5TSE9SVFsiIl19LEVMRUNUUklDX1JFU0lTVEFOQ0U6e3VuaXQ6ai5vaG0scHJlZml4OlMuU0hPUlRbIiJdfSxFTEVDVFJJQ19JTkRVQ1RBTkNFOnt1bml0OmouSCxwcmVmaXg6Uy5TSE9SVFsiIl19LEVMRUNUUklDX0NPTkRVQ1RBTkNFOnt1bml0OmouUyxwcmVmaXg6Uy5TSE9SVFsiIl19LE1BR05FVElDX0ZMVVg6e3VuaXQ6ai5XYixwcmVmaXg6Uy5TSE9SVFsiIl19LE1BR05FVElDX0ZMVVhfREVOU0lUWTp7dW5pdDpqLlQscHJlZml4OlMuU0hPUlRbIiJdfSxGUkVRVUVOQ1k6e3VuaXQ6ai5IeixwcmVmaXg6Uy5TSE9SVFsiIl19fX07TC5jZ3M9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShMLnNpKSksTC5jZ3MuTEVOR1RIPXt1bml0OmoubSxwcmVmaXg6Uy5TSE9SVC5jfSxMLmNncy5NQVNTPXt1bml0OmouZyxwcmVmaXg6Uy5TSE9SVFsiIl19LEwuY2dzLkZPUkNFPXt1bml0OmouZHluLHByZWZpeDpTLlNIT1JUWyIiXX0sTC5jZ3MuRU5FUkdZPXt1bml0OmouZXJnLHByZWZpeDpTLk5PTkVbIiJdfSxMLnVzPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoTC5zaSkpLEwudXMuTEVOR1RIPXt1bml0OmouZnQscHJlZml4OlMuTk9ORVsiIl19LEwudXMuTUFTUz17dW5pdDpqLmxibSxwcmVmaXg6Uy5OT05FWyIiXX0sTC51cy5URU1QRVJBVFVSRT17dW5pdDpqLmRlZ0YscHJlZml4OlMuTk9ORVsiIl19LEwudXMuRk9SQ0U9e3VuaXQ6ai5sYmYscHJlZml4OlMuTk9ORVsiIl19LEwudXMuRU5FUkdZPXt1bml0OmouQlRVLHByZWZpeDpTLkJUVVsiIl19LEwudXMuUE9XRVI9e3VuaXQ6ai5ocCxwcmVmaXg6Uy5OT05FWyIiXX0sTC51cy5QUkVTU1VSRT17dW5pdDpqLnBzaSxwcmVmaXg6Uy5OT05FWyIiXX0sTC5hdXRvPUpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoTC5zaSkpO3ZhciBPPUwuYXV0bztmb3IodmFyIFYgaW4gRC5zZXRVbml0U3lzdGVtPWZ1bmN0aW9uKEEpe2lmKCFNQShMLEEpKXRocm93IG5ldyBFcnJvcigiVW5pdCBzeXN0ZW0gIitBKyIgZG9lcyBub3QgZXhpc3QuIENob2ljZXMgYXJlOiAiK09iamVjdC5rZXlzKEwpLmpvaW4oIiwgIikpO089TFtBXX0sRC5nZXRVbml0U3lzdGVtPWZ1bmN0aW9uKCl7Zm9yKHZhciBBIGluIEwpaWYoTUEoTCxBKSYmTFtBXT09PU8pcmV0dXJuIEF9LEQudHlwZUNvbnZlcnRlcnM9e0JpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gbnVsbCE9QSYmQS5pc0ZyYWN0aW9uP25ldyBwKEEubikuZGl2KEEuZCkudGltZXMoQS5zKTpuZXcgcChBKyIiKX0sRnJhY3Rpb246ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBtKEEpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBfSxudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIG51bGwhPUEmJkEuaXNGcmFjdGlvbj9NKEEpOkF9fSxELnByb3RvdHlwZS5fbnVtYmVyQ29udmVydGVyPWZ1bmN0aW9uKCl7dmFyIEE9RC50eXBlQ29udmVydGVyc1t0aGlzLnZhbHVlVHlwZSgpXTtpZihBKXJldHVybiBBO3Rocm93IG5ldyBUeXBlRXJyb3IoJ1Vuc3VwcG9ydGVkIFVuaXQgdmFsdWUgdHlwZSAiJyt0aGlzLnZhbHVlVHlwZSgpKyciJyl9LEQuX2dldE51bWJlckNvbnZlcnRlcj1mdW5jdGlvbihBKXtpZighRC50eXBlQ29udmVydGVyc1tBXSl0aHJvdyBuZXcgVHlwZUVycm9yKCdVbnN1cHBvcnRlZCB0eXBlICInK0ErJyInKTtyZXR1cm4gRC50eXBlQ29udmVydGVyc1tBXX0sailpZihNQShqLFYpKXt2YXIgVz1qW1ZdO1cuZGltZW5zaW9ucz1XLmJhc2UuZGltZW5zaW9uc31mb3IodmFyIEsgaW4gSilpZihNQShKLEspKXt2YXIgWD1qW0pbS11dLFo9e307Zm9yKHZhciBfIGluIFgpTUEoWCxfKSYmKFpbX109WFtfXSk7Wi5uYW1lPUssaltLXT1afXJldHVybiBELmlzVmFsaWRBbHBoYT1mdW5jdGlvbihBKXtyZXR1cm4vXlthLXpBLVpdJC8udGVzdChBKX0sRC5jcmVhdGVVbml0PWZ1bmN0aW9uKEEsdCl7aWYoIm9iamVjdCIhPT1lKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoImNyZWF0ZVVuaXQgZXhwZWN0cyBmaXJzdCBwYXJhbWV0ZXIgdG8gYmUgb2YgdHlwZSAnT2JqZWN0JyIpO2lmKHQmJnQub3ZlcnJpZGUpZm9yKHZhciBuIGluIEEpaWYoTUEoQSxuKSYmRC5kZWxldGVVbml0KG4pLEFbbl0uYWxpYXNlcylmb3IodmFyIGk9MDtpPEFbbl0uYWxpYXNlcy5sZW5ndGg7aSsrKUQuZGVsZXRlVW5pdChBW25dLmFsaWFzZXNbaV0pO3ZhciByO2Zvcih2YXIgbyBpbiBBKU1BKEEsbykmJihyPUQuY3JlYXRlVW5pdFNpbmdsZShvLEFbb10pKTtyZXR1cm4gcn0sRC5jcmVhdGVVbml0U2luZ2xlPWZ1bmN0aW9uKEEsdCl7aWYobnVsbD09dCYmKHQ9e30pLCJzdHJpbmciIT10eXBlb2YgQSl0aHJvdyBuZXcgVHlwZUVycm9yKCJjcmVhdGVVbml0U2luZ2xlIGV4cGVjdHMgZmlyc3QgcGFyYW1ldGVyIHRvIGJlIG9mIHR5cGUgJ3N0cmluZyciKTtpZihNQShqLEEpKXRocm93IG5ldyBFcnJvcignQ2Fubm90IGNyZWF0ZSB1bml0ICInK0ErJyI6IGEgdW5pdCB3aXRoIHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cycpOyFmdW5jdGlvbihBKXtmb3IodmFyIGU9MDtlPEEubGVuZ3RoO2UrKyl7aWYoaT1BLmNoYXJBdChlKSwwPT09ZSYmIUQuaXNWYWxpZEFscGhhKGkpKXRocm93IG5ldyBFcnJvcignSW52YWxpZCB1bml0IG5hbWUgKG11c3QgYmVnaW4gd2l0aCBhbHBoYSBjaGFyYWN0ZXIpOiAiJytBKyciJyk7aWYoZT4wJiYhRC5pc1ZhbGlkQWxwaGEoaSkmJiFmKGkpKXRocm93IG5ldyBFcnJvcignSW52YWxpZCB1bml0IG5hbWUgKG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYXJlIGFsbG93ZWQpOiAiJytBKyciJyl9fShBKTt2YXIgbixyLG8scz1udWxsLGE9W10sQj0wO2lmKHQmJiJVbml0Ij09PXQudHlwZSlzPXQuY2xvbmUoKTtlbHNlIGlmKCJzdHJpbmciPT10eXBlb2YgdCkiIiE9PXQmJihuPXQpO2Vsc2V7aWYoIm9iamVjdCIhPT1lKHQpKXRocm93IG5ldyBUeXBlRXJyb3IoJ0Nhbm5vdCBjcmVhdGUgdW5pdCAiJytBKyciIGZyb20gIicrdC50b1N0cmluZygpKyciOiBleHBlY3RpbmcgInN0cmluZyIgb3IgIlVuaXQiIG9yICJPYmplY3QiJyk7bj10LmRlZmluaXRpb24scj10LnByZWZpeGVzLEI9dC5vZmZzZXQsbz10LmJhc2VOYW1lLHQuYWxpYXNlcyYmKGE9dC5hbGlhc2VzLnZhbHVlT2YoKSl9aWYoYSlmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihNQShqLGFbY10pKXRocm93IG5ldyBFcnJvcignQ2Fubm90IGNyZWF0ZSBhbGlhcyAiJythW2NdKyciOiBhIHVuaXQgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnKTtpZihuJiYic3RyaW5nIj09dHlwZW9mIG4mJiFzKXRyeXtzPUQucGFyc2Uobix7YWxsb3dOb1VuaXRzOiEwfSl9Y2F0Y2goZSl7dGhyb3cgZS5tZXNzYWdlPSdDb3VsZCBub3QgY3JlYXRlIHVuaXQgIicrQSsnIiBmcm9tICInK24rJyI6ICcrZS5tZXNzYWdlLGV9ZWxzZSBuJiYiVW5pdCI9PT1uLnR5cGUmJihzPW4uY2xvbmUoKSk7YT1hfHxbXSxCPUJ8fDAscj1yJiZyLnRvVXBwZXJDYXNlJiZTW3IudG9VcHBlckNhc2UoKV18fFMuTk9ORTt2YXIgZz17fTtpZihzKXtnPXtuYW1lOkEsdmFsdWU6cy52YWx1ZSxkaW1lbnNpb25zOnMuZGltZW5zaW9ucy5zbGljZSgwKSxwcmVmaXhlczpyLG9mZnNldDpCfTt2YXIgRT0hMTtmb3IodmFyIFEgaW4gSClpZihNQShILFEpKXtmb3IodmFyIHU9ITAsbD0wO2w8Yi5sZW5ndGg7bCsrKWlmKE1hdGguYWJzKChnLmRpbWVuc2lvbnNbbF18fDApLShIW1FdLmRpbWVuc2lvbnNbbF18fDApKT4xZS0xMil7dT0hMTticmVha31pZih1KXtFPSEwLGcuYmFzZT1IW1FdO2JyZWFrfX1pZighRSl7bz1vfHxBKyJfU1RVRkYiO3ZhciBoPXtkaW1lbnNpb25zOnMuZGltZW5zaW9ucy5zbGljZSgwKX07aC5rZXk9byxIW29dPWgsT1tvXT17dW5pdDpnLHByZWZpeDpTLk5PTkVbIiJdfSxnLmJhc2U9SFtvXX19ZWxzZXtpZihvPW98fEErIl9TVFVGRiIsYi5pbmRleE9mKG8pPj0wKXRocm93IG5ldyBFcnJvcignQ2Fubm90IGNyZWF0ZSBuZXcgYmFzZSB1bml0ICInK0ErJyI6IGEgYmFzZSB1bml0IHdpdGggdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzIChhbmQgY2Fubm90IGJlIG92ZXJyaWRkZW4pJyk7Zm9yKHZhciB3IGluIGIucHVzaChvKSxIKU1BKEgsdykmJihIW3ddLmRpbWVuc2lvbnNbYi5sZW5ndGgtMV09MCk7Zm9yKHZhciBDPXtkaW1lbnNpb25zOltdfSxJPTA7STxiLmxlbmd0aDtJKyspQy5kaW1lbnNpb25zW0ldPTA7Qy5kaW1lbnNpb25zW2IubGVuZ3RoLTFdPTEsQy5rZXk9byxIW29dPUMsZz17bmFtZTpBLHZhbHVlOjEsZGltZW5zaW9uczpIW29dLmRpbWVuc2lvbnMuc2xpY2UoMCkscHJlZml4ZXM6cixvZmZzZXQ6QixiYXNlOkhbb119LE9bb109e3VuaXQ6ZyxwcmVmaXg6Uy5OT05FWyIiXX19RC5VTklUU1tBXT1nO2Zvcih2YXIgTT0wO008YS5sZW5ndGg7TSsrKXt2YXIgZD1hW01dLHA9e307Zm9yKHZhciBtIGluIGcpTUEoZyxtKSYmKHBbbV09Z1ttXSk7cC5uYW1lPWQsRC5VTklUU1tkXT1wfXJldHVybiBkZWxldGUgUi5jYWNoZSxuZXcgRChudWxsLEEpfSxELmRlbGV0ZVVuaXQ9ZnVuY3Rpb24oQSl7ZGVsZXRlIEQuVU5JVFNbQV19LEQuUFJFRklYRVM9UyxELkJBU0VfRElNRU5TSU9OUz1iLEQuQkFTRV9VTklUUz1ILEQuVU5JVF9TWVNURU1TPUwsRC5VTklUUz1qLER9KSx7aXNDbGFzczohMH0pLElCPXBBKCJ1bml0IixbInR5cGVkIiwiVW5pdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5Vbml0O3JldHVybiBlKCJ1bml0Iix7VW5pdDpmdW5jdGlvbihBKXtyZXR1cm4gQS5jbG9uZSgpfSxzdHJpbmc6ZnVuY3Rpb24oQSl7cmV0dXJuIHQuaXNWYWx1ZWxlc3NVbml0KEEpP25ldyB0KG51bGwsQSk6dC5wYXJzZShBLHthbGxvd05vVW5pdHM6ITB9KX0sIm51bWJlciB8IEJpZ051bWJlciB8IEZyYWN0aW9uIHwgQ29tcGxleCwgc3RyaW5nIHwgVW5pdCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHQoQSxlKX0sIm51bWJlciB8IEJpZ051bWJlciB8IEZyYWN0aW9uIjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoQSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBHbihlLEEpfX0pKX0pfSkpLE1CPXBBKCJzcGFyc2UiLFsidHlwZWQiLCJTcGFyc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuU3BhcnNlTWF0cml4O3JldHVybiBlKCJzcGFyc2UiLHsiIjpmdW5jdGlvbigpe3JldHVybiBuZXcgdChbXSl9LHN0cmluZzpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoW10sQSl9LCJBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyB0KEEpfSwiQXJyYXkgfCBNYXRyaXgsIHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHQoQSxlKX19KX0pKSxkQj0iY3JlYXRlVW5pdCIscEI9cEEoZEIsWyJ0eXBlZCIsIlVuaXQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuVW5pdDtyZXR1cm4gZShkQix7Ik9iamVjdCwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiB0LmNyZWF0ZVVuaXQoQSxlKX0sT2JqZWN0OmZ1bmN0aW9uKEEpe3JldHVybiB0LmNyZWF0ZVVuaXQoQSx7fSl9LCJzdHJpbmcsIFVuaXQgfCBzdHJpbmcgfCBPYmplY3QsIE9iamVjdCI6ZnVuY3Rpb24oQSxlLG4pe3ZhciBpPXt9O3JldHVybiBpW0FdPWUsdC5jcmVhdGVVbml0KGksbil9LCJzdHJpbmcsIFVuaXQgfCBzdHJpbmcgfCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7dmFyIG49e307cmV0dXJuIG5bQV09ZSx0LmNyZWF0ZVVuaXQobix7fSl9LHN0cmluZzpmdW5jdGlvbihBKXt2YXIgZT17fTtyZXR1cm4gZVtBXT17fSx0LmNyZWF0ZVVuaXQoZSx7fSl9fSl9KSksbUI9cEEoImFjb3MiLFsidHlwZWQiLCJjb25maWciLCJDb21wbGV4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEuQ29tcGxleDtyZXR1cm4gZSgiYWNvcyIse251bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQT49LTEmJkE8PTF8fHQucHJlZGljdGFibGU/TWF0aC5hY29zKEEpOm5ldyBuKEEsMCkuYWNvcygpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmFjb3MoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmFjb3MoKX19KX0pKSxGQj0ibnVtYmVyIjtmdW5jdGlvbiBEQihBKXtyZXR1cm4gYUEoQSl9ZnVuY3Rpb24gWUIoQSl7cmV0dXJuIE1hdGguYXRhbigxL0EpfWZ1bmN0aW9uIGZCKEEpe3JldHVybiBpc0Zpbml0ZShBKT8oTWF0aC5sb2coKEErMSkvQSkrTWF0aC5sb2coQS8oQS0xKSkpLzI6MH1mdW5jdGlvbiBOQihBKXtyZXR1cm4gTWF0aC5hc2luKDEvQSl9ZnVuY3Rpb24gVUIoQSl7dmFyIGU9MS9BO3JldHVybiBNYXRoLmxvZyhlK01hdGguc3FydChlKmUrMSkpfWZ1bmN0aW9uIHlCKEEpe3JldHVybiBNYXRoLmFjb3MoMS9BKX1mdW5jdGlvbiBUQihBKXt2YXIgZT0xL0EsdD1NYXRoLnNxcnQoZSplLTEpO3JldHVybiBNYXRoLmxvZyh0K2UpfWZ1bmN0aW9uIHhCKEEpe3JldHVybiBCQShBKX1mdW5jdGlvbiBSQihBKXtyZXR1cm4gY0EoQSl9ZnVuY3Rpb24gR0IoQSl7cmV0dXJuIDEvTWF0aC50YW4oQSl9ZnVuY3Rpb24gU0IoQSl7dmFyIGU9TWF0aC5leHAoMipBKTtyZXR1cm4oZSsxKS8oZS0xKX1mdW5jdGlvbiBiQihBKXtyZXR1cm4gMS9NYXRoLnNpbihBKX1mdW5jdGlvbiBIQihBKXtyZXR1cm4gMD09PUE/TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZOk1hdGguYWJzKDIvKE1hdGguZXhwKEEpLU1hdGguZXhwKC1BKSkpKlcoQSl9ZnVuY3Rpb24gdkIoQSl7cmV0dXJuIDEvTWF0aC5jb3MoQSl9ZnVuY3Rpb24ga0IoQSl7cmV0dXJuIDIvKE1hdGguZXhwKEEpK01hdGguZXhwKC1BKSl9ZnVuY3Rpb24gakIoQSl7cmV0dXJuIEVBKEEpfURCLnNpZ25hdHVyZT1GQixZQi5zaWduYXR1cmU9RkIsZkIuc2lnbmF0dXJlPUZCLE5CLnNpZ25hdHVyZT1GQixVQi5zaWduYXR1cmU9RkIseUIuc2lnbmF0dXJlPUZCLFRCLnNpZ25hdHVyZT1GQix4Qi5zaWduYXR1cmU9RkIsUkIuc2lnbmF0dXJlPUZCLEdCLnNpZ25hdHVyZT1GQixTQi5zaWduYXR1cmU9RkIsYkIuc2lnbmF0dXJlPUZCLEhCLnNpZ25hdHVyZT1GQix2Qi5zaWduYXR1cmU9RkIsa0Iuc2lnbmF0dXJlPUZCLGpCLnNpZ25hdHVyZT1GQjt2YXIgSkI9cEEoImFjb3NoIixbInR5cGVkIiwiY29uZmlnIiwiQ29tcGxleCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLkNvbXBsZXg7cmV0dXJuIGUoImFjb3NoIix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPj0xfHx0LnByZWRpY3RhYmxlP0RCKEEpOkE8PS0xP25ldyBuKE1hdGgubG9nKE1hdGguc3FydChBKkEtMSktQSksTWF0aC5QSSk6bmV3IG4oQSwwKS5hY29zaCgpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmFjb3NoKCl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gQS5hY29zaCgpfX0pfSkpLHpCPXBBKCJhY290IixbInR5cGVkIiwiQmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkJpZ051bWJlcjtyZXR1cm4gZSgiYWNvdCIse251bWJlcjpZQixDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmFjb3QoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdCgxKS5kaXYoQSkuYXRhbigpfX0pfSkpLExCPXBBKCJhY290aCIsWyJ0eXBlZCIsImNvbmZpZyIsIkNvbXBsZXgiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5Db21wbGV4LGk9QS5CaWdOdW1iZXI7cmV0dXJuIGUoImFjb3RoIix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPj0xfHxBPD0tMXx8dC5wcmVkaWN0YWJsZT9mQihBKTpuZXcgbihBLDApLmFjb3RoKCl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYWNvdGgoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgaSgxKS5kaXYoQSkuYXRhbmgoKX19KX0pKSxQQj1wQSgiYWNzYyIsWyJ0eXBlZCIsImNvbmZpZyIsIkNvbXBsZXgiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5Db21wbGV4LGk9QS5CaWdOdW1iZXI7cmV0dXJuIGUoImFjc2MiLHtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEE8PS0xfHxBPj0xfHx0LnByZWRpY3RhYmxlP05CKEEpOm5ldyBuKEEsMCkuYWNzYygpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmFjc2MoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgaSgxKS5kaXYoQSkuYXNpbigpfX0pfSkpLE9CPXBBKCJhY3NjaCIsWyJ0eXBlZCIsIkJpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIGUoImFjc2NoIix7bnVtYmVyOlVCLENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYWNzY2goKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdCgxKS5kaXYoQSkuYXNpbmgoKX19KX0pKSxWQj1wQSgiYXNlYyIsWyJ0eXBlZCIsImNvbmZpZyIsIkNvbXBsZXgiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5Db21wbGV4LGk9QS5CaWdOdW1iZXI7cmV0dXJuIGUoImFzZWMiLHtudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEE8PS0xfHxBPj0xfHx0LnByZWRpY3RhYmxlP3lCKEEpOm5ldyBuKEEsMCkuYXNlYygpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmFzZWMoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgaSgxKS5kaXYoQSkuYWNvcygpfX0pfSkpLFdCPXBBKCJhc2VjaCIsWyJ0eXBlZCIsImNvbmZpZyIsIkNvbXBsZXgiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5Db21wbGV4LGk9QS5CaWdOdW1iZXI7cmV0dXJuIGUoImFzZWNoIix7bnVtYmVyOmZ1bmN0aW9uKEEpe2lmKEE8PTEmJkE+PS0xfHx0LnByZWRpY3RhYmxlKXt2YXIgZT0xL0E7aWYoZT4wfHx0LnByZWRpY3RhYmxlKXJldHVybiBUQihBKTt2YXIgaT1NYXRoLnNxcnQoZSplLTEpO3JldHVybiBuZXcgbihNYXRoLmxvZyhpLWUpLE1hdGguUEkpfXJldHVybiBuZXcgbihBLDApLmFzZWNoKCl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYXNlY2goKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgaSgxKS5kaXYoQSkuYWNvc2goKX19KX0pKSxLQj1wQSgiYXNpbiIsWyJ0eXBlZCIsImNvbmZpZyIsIkNvbXBsZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5Db21wbGV4O3JldHVybiBlKCJhc2luIix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPj0tMSYmQTw9MXx8dC5wcmVkaWN0YWJsZT9NYXRoLmFzaW4oQSk6bmV3IG4oQSwwKS5hc2luKCl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYXNpbigpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYXNpbigpfX0pfSkpLFhCPXBBKCJhc2luaCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgiYXNpbmgiLHtudW1iZXI6eEIsQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5hc2luaCgpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYXNpbmgoKX19KX0pKSxaQj1wQSgiYXRhbiIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgiYXRhbiIse251bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5hdGFuKEEpfSxDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLmF0YW4oKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmF0YW4oKX19KX0pKSxfQj1wQSgiYXRhbjIiLFsidHlwZWQiLCJtYXRyaXgiLCJlcXVhbFNjYWxhciIsIkJpZ051bWJlciIsIkRlbnNlTWF0cml4IiwiY29uY2F0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuZXF1YWxTY2FsYXIsaT1BLkJpZ051bWJlcixyPUEuRGVuc2VNYXRyaXgsbz1BLmNvbmNhdCxzPU1yKHt0eXBlZDplLGVxdWFsU2NhbGFyOm59KSxhPWRyKHt0eXBlZDplfSksQj1fcih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksYz1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjpufSksZz1vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksRT1Ecih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6b30pO3JldHVybiBlKCJhdGFuMiIseyJudW1iZXIsIG51bWJlciI6TWF0aC5hdGFuMiwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGkuYXRhbjIoQSxlKX19LEUoe3NjYWxhcjoibnVtYmVyIHwgQmlnTnVtYmVyIixTUzpCLERTOmEsU0Q6cyxTczpjLHNTOmd9KSl9KSkscUI9cEEoImF0YW5oIixbInR5cGVkIiwiY29uZmlnIiwiQ29tcGxleCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj1BLkNvbXBsZXg7cmV0dXJuIGUoImF0YW5oIix7bnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPD0xJiZBPj0tMXx8dC5wcmVkaWN0YWJsZT9SQihBKTpuZXcgbihBLDApLmF0YW5oKCl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuYXRhbmgoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmF0YW5oKCl9fSl9KSksJEI9cEEoInRyaWdVbml0IixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7cmV0dXJue1VuaXQ6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKHQpe2lmKCF0Lmhhc0Jhc2UodC5jb25zdHJ1Y3Rvci5CQVNFX1VOSVRTLkFOR0xFKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJVbml0IGluIGZ1bmN0aW9uIGNvdCBpcyBubyBhbmdsZSIpO3JldHVybiBlLmZpbmQoQSx0LnZhbHVlVHlwZSgpKSh0LnZhbHVlKX19KSl9fSkpLEFjPXBBKCJjb3MiLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PSRCKHt0eXBlZDplfSk7cmV0dXJuIGUoImNvcyIse251bWJlcjpNYXRoLmNvcywiQ29tcGxleCB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY29zKCl9fSx0KX0pKSxlYz1wQSgiY29zaCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgiY29zaCIse251bWJlcjpnQSwiQ29tcGxleCB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY29zaCgpfX0pfSkpLHRjPXBBKCJjb3QiLFsidHlwZWQiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuQmlnTnVtYmVyO3JldHVybiBlKCJjb3QiLHtudW1iZXI6R0IsQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5jb3QoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdCgxKS5kaXYoQS50YW4oKSl9fSwkQih7dHlwZWQ6ZX0pKX0pKSxuYz1wQSgiY290aCIsWyJ0eXBlZCIsIkJpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIGUoImNvdGgiLHtudW1iZXI6U0IsQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5jb3RoKCl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoMSkuZGl2KEEudGFuaCgpKX19KX0pKSxpYz1wQSgiY3NjIixbInR5cGVkIiwiQmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkJpZ051bWJlcjtyZXR1cm4gZSgiY3NjIix7bnVtYmVyOmJCLENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY3NjKCl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHQoMSkuZGl2KEEuc2luKCkpfX0sJEIoe3R5cGVkOmV9KSl9KSkscmM9cEEoImNzY2giLFsidHlwZWQiLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuQmlnTnVtYmVyO3JldHVybiBlKCJjc2NoIix7bnVtYmVyOkhCLENvbXBsZXg6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuY3NjaCgpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyB0KDEpLmRpdihBLnNpbmgoKSl9fSl9KSksb2M9cEEoInNlYyIsWyJ0eXBlZCIsIkJpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIGUoInNlYyIse251bWJlcjp2QixDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLnNlYygpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyB0KDEpLmRpdihBLmNvcygpKX19LCRCKHt0eXBlZDplfSkpfSkpLHNjPXBBKCJzZWNoIixbInR5cGVkIiwiQmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkJpZ051bWJlcjtyZXR1cm4gZSgic2VjaCIse251bWJlcjprQixDb21wbGV4OmZ1bmN0aW9uKEEpe3JldHVybiBBLnNlY2goKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdCgxKS5kaXYoQS5jb3NoKCkpfX0pfSkpLGFjPXBBKCJzaW4iLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PSRCKHt0eXBlZDplfSk7cmV0dXJuIGUoInNpbiIse251bWJlcjpNYXRoLnNpbiwiQ29tcGxleCB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuc2luKCl9fSx0KX0pKSxCYz1wQSgic2luaCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgic2luaCIse251bWJlcjpqQiwiQ29tcGxleCB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEuc2luaCgpfX0pfSkpLGNjPXBBKCJ0YW4iLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PSRCKHt0eXBlZDplfSk7cmV0dXJuIGUoInRhbiIse251bWJlcjpNYXRoLnRhbiwiQ29tcGxleCB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEudGFuKCl9fSx0KX0pKSxnYz1wQSgidGFuaCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4oMCxBLnR5cGVkKSgidGFuaCIse251bWJlcjpRQSwiQ29tcGxleCB8IEJpZ051bWJlciI6ZnVuY3Rpb24oQSl7cmV0dXJuIEEudGFuaCgpfX0pfSkpLEVjPSJzZXRDYXJ0ZXNpYW4iLFFjPXBBKEVjLFsidHlwZWQiLCJzaXplIiwic3Vic2V0IiwiY29tcGFyZU5hdHVyYWwiLCJJbmRleCIsIkRlbnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLnNpemUsbj1BLnN1YnNldCxpPUEuY29tcGFyZU5hdHVyYWwscj1BLkluZGV4LG89QS5EZW5zZU1hdHJpeDtyZXR1cm4gZShFYyx7IkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXt2YXIgcz1bXTtpZigwIT09bih0KEEpLG5ldyByKDApKSYmMCE9PW4odChlKSxuZXcgcigwKSkpe3ZhciBhPWduKEFycmF5LmlzQXJyYXkoQSk/QTpBLnRvQXJyYXkoKSkuc29ydChpKSxCPWduKEFycmF5LmlzQXJyYXkoZSk/ZTplLnRvQXJyYXkoKSkuc29ydChpKTtzPVtdO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWZvcih2YXIgZz0wO2c8Qi5sZW5ndGg7ZysrKXMucHVzaChbYVtjXSxCW2ddXSl9cmV0dXJuIEFycmF5LmlzQXJyYXkoQSkmJkFycmF5LmlzQXJyYXkoZSk/czpuZXcgbyhzKX19KX0pKSx1Yz0ic2V0RGlmZmVyZW5jZSIsbGM9cEEodWMsWyJ0eXBlZCIsInNpemUiLCJzdWJzZXQiLCJjb21wYXJlTmF0dXJhbCIsIkluZGV4IiwiRGVuc2VNYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuc2l6ZSxuPUEuc3Vic2V0LGk9QS5jb21wYXJlTmF0dXJhbCxyPUEuSW5kZXgsbz1BLkRlbnNlTWF0cml4O3JldHVybiBlKHVjLHsiQXJyYXkgfCBNYXRyaXgsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3ZhciBzO2lmKDA9PT1uKHQoQSksbmV3IHIoMCkpKXM9W107ZWxzZXtpZigwPT09bih0KGUpLG5ldyByKDApKSlyZXR1cm4gZ24oQS50b0FycmF5KCkpO3ZhciBhLEI9d24oZ24oQXJyYXkuaXNBcnJheShBKT9BOkEudG9BcnJheSgpKS5zb3J0KGkpKSxjPXduKGduKEFycmF5LmlzQXJyYXkoZSk/ZTplLnRvQXJyYXkoKSkuc29ydChpKSk7cz1bXTtmb3IodmFyIGc9MDtnPEIubGVuZ3RoO2crKyl7YT0hMTtmb3IodmFyIEU9MDtFPGMubGVuZ3RoO0UrKylpZigwPT09aShCW2ddLnZhbHVlLGNbRV0udmFsdWUpJiZCW2ddLmlkZW50aWZpZXI9PT1jW0VdLmlkZW50aWZpZXIpe2E9ITA7YnJlYWt9YXx8cy5wdXNoKEJbZ10pfX1yZXR1cm4gQXJyYXkuaXNBcnJheShBKSYmQXJyYXkuaXNBcnJheShlKT9DbihzKTpuZXcgbyhDbihzKSl9fSl9KSksaGM9InNldERpc3RpbmN0Iix3Yz1wQShoYyxbInR5cGVkIiwic2l6ZSIsInN1YnNldCIsImNvbXBhcmVOYXR1cmFsIiwiSW5kZXgiLCJEZW5zZU1hdHJpeCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5zaXplLG49QS5zdWJzZXQsaT1BLmNvbXBhcmVOYXR1cmFsLHI9QS5JbmRleCxvPUEuRGVuc2VNYXRyaXg7cmV0dXJuIGUoaGMseyJBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSl7dmFyIGU7aWYoMD09PW4odChBKSxuZXcgcigwKSkpZT1bXTtlbHNle3ZhciBzPWduKEFycmF5LmlzQXJyYXkoQSk/QTpBLnRvQXJyYXkoKSkuc29ydChpKTsoZT1bXSkucHVzaChzWzBdKTtmb3IodmFyIGE9MTthPHMubGVuZ3RoO2ErKykwIT09aShzW2FdLHNbYS0xXSkmJmUucHVzaChzW2FdKX1yZXR1cm4gQXJyYXkuaXNBcnJheShBKT9lOm5ldyBvKGUpfX0pfSkpLENjPSJzZXRJbnRlcnNlY3QiLEljPXBBKENjLFsidHlwZWQiLCJzaXplIiwic3Vic2V0IiwiY29tcGFyZU5hdHVyYWwiLCJJbmRleCIsIkRlbnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLnNpemUsbj1BLnN1YnNldCxpPUEuY29tcGFyZU5hdHVyYWwscj1BLkluZGV4LG89QS5EZW5zZU1hdHJpeDtyZXR1cm4gZShDYyx7IkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXt2YXIgcztpZigwPT09bih0KEEpLG5ldyByKDApKXx8MD09PW4odChlKSxuZXcgcigwKSkpcz1bXTtlbHNle3ZhciBhPXduKGduKEFycmF5LmlzQXJyYXkoQSk/QTpBLnRvQXJyYXkoKSkuc29ydChpKSksQj13bihnbihBcnJheS5pc0FycmF5KGUpP2U6ZS50b0FycmF5KCkpLnNvcnQoaSkpO3M9W107Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspZm9yKHZhciBnPTA7ZzxCLmxlbmd0aDtnKyspaWYoMD09PWkoYVtjXS52YWx1ZSxCW2ddLnZhbHVlKSYmYVtjXS5pZGVudGlmaWVyPT09QltnXS5pZGVudGlmaWVyKXtzLnB1c2goYVtjXSk7YnJlYWt9fXJldHVybiBBcnJheS5pc0FycmF5KEEpJiZBcnJheS5pc0FycmF5KGUpP0NuKHMpOm5ldyBvKENuKHMpKX19KX0pKSxNYz0ic2V0SXNTdWJzZXQiLGRjPXBBKE1jLFsidHlwZWQiLCJzaXplIiwic3Vic2V0IiwiY29tcGFyZU5hdHVyYWwiLCJJbmRleCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5zaXplLG49QS5zdWJzZXQsaT1BLmNvbXBhcmVOYXR1cmFsLHI9QS5JbmRleDtyZXR1cm4gZShNYyx7IkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtpZigwPT09bih0KEEpLG5ldyByKDApKSlyZXR1cm4hMDtpZigwPT09bih0KGUpLG5ldyByKDApKSlyZXR1cm4hMTtmb3IodmFyIG8scz13bihnbihBcnJheS5pc0FycmF5KEEpP0E6QS50b0FycmF5KCkpLnNvcnQoaSkpLGE9d24oZ24oQXJyYXkuaXNBcnJheShlKT9lOmUudG9BcnJheSgpKS5zb3J0KGkpKSxCPTA7QjxzLmxlbmd0aDtCKyspe289ITE7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoMD09PWkoc1tCXS52YWx1ZSxhW2NdLnZhbHVlKSYmc1tCXS5pZGVudGlmaWVyPT09YVtjXS5pZGVudGlmaWVyKXtvPSEwO2JyZWFrfWlmKCExPT09bylyZXR1cm4hMX1yZXR1cm4hMH19KX0pKSxwYz0ic2V0TXVsdGlwbGljaXR5IixtYz1wQShwYyxbInR5cGVkIiwic2l6ZSIsInN1YnNldCIsImNvbXBhcmVOYXR1cmFsIiwiSW5kZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuc2l6ZSxuPUEuc3Vic2V0LGk9QS5jb21wYXJlTmF0dXJhbCxyPUEuSW5kZXg7cmV0dXJuIGUocGMseyJudW1iZXIgfCBCaWdOdW1iZXIgfCBGcmFjdGlvbiB8IENvbXBsZXgsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe2lmKDA9PT1uKHQoZSksbmV3IHIoMCkpKXJldHVybiAwO2Zvcih2YXIgbz1nbihBcnJheS5pc0FycmF5KGUpP2U6ZS50b0FycmF5KCkpLHM9MCxhPTA7YTxvLmxlbmd0aDthKyspMD09PWkob1thXSxBKSYmcysrO3JldHVybiBzfX0pfSkpLEZjPSJzZXRQb3dlcnNldCIsRGM9cEEoRmMsWyJ0eXBlZCIsInNpemUiLCJzdWJzZXQiLCJjb21wYXJlTmF0dXJhbCIsIkluZGV4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLnNpemUsbj1BLnN1YnNldCxpPUEuY29tcGFyZU5hdHVyYWwscj1BLkluZGV4O3JldHVybiBlKEZjLHsiQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEpe2lmKDA9PT1uKHQoQSksbmV3IHIoMCkpKXJldHVybltdO2Zvcih2YXIgZT1nbihBcnJheS5pc0FycmF5KEEpP0E6QS50b0FycmF5KCkpLnNvcnQoaSkscz1bXSxhPTA7YS50b1N0cmluZygyKS5sZW5ndGg8PWUubGVuZ3RoOylzLnB1c2gobyhlLGEudG9TdHJpbmcoMikuc3BsaXQoIiIpLnJldmVyc2UoKSkpLGErKztyZXR1cm4gZnVuY3Rpb24oQSl7Zm9yKHZhciBlPVtdLHQ9QS5sZW5ndGgtMTt0PjA7dC0tKWZvcih2YXIgbj0wO248dDtuKyspQVtuXS5sZW5ndGg+QVtuKzFdLmxlbmd0aCYmKGU9QVtuXSxBW25dPUFbbisxXSxBW24rMV09ZSk7cmV0dXJuIEF9KHMpfX0pO2Z1bmN0aW9uIG8oQSxlKXtmb3IodmFyIHQ9W10sbj0wO248ZS5sZW5ndGg7bisrKSIxIj09PWVbbl0mJnQucHVzaChBW25dKTtyZXR1cm4gdH19KSksWWM9InNldFNpemUiLGZjPXBBKFljLFsidHlwZWQiLCJjb21wYXJlTmF0dXJhbCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb21wYXJlTmF0dXJhbDtyZXR1cm4gZShZYyx7IkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gQXJyYXkuaXNBcnJheShBKT9nbihBKS5sZW5ndGg6Z24oQS50b0FycmF5KCkpLmxlbmd0aH0sIkFycmF5IHwgTWF0cml4LCBib29sZWFuIjpmdW5jdGlvbihBLGUpe2lmKCExPT09ZXx8MD09PUEubGVuZ3RoKXJldHVybiBBcnJheS5pc0FycmF5KEEpP2duKEEpLmxlbmd0aDpnbihBLnRvQXJyYXkoKSkubGVuZ3RoO2Zvcih2YXIgbj1nbihBcnJheS5pc0FycmF5KEEpP0E6QS50b0FycmF5KCkpLnNvcnQodCksaT0xLHI9MTtyPG4ubGVuZ3RoO3IrKykwIT09dChuW3JdLG5bci0xXSkmJmkrKztyZXR1cm4gaX19KX0pKSxOYz0ic2V0U3ltRGlmZmVyZW5jZSIsVWM9cEEoTmMsWyJ0eXBlZCIsInNpemUiLCJjb25jYXQiLCJzdWJzZXQiLCJzZXREaWZmZXJlbmNlIiwiSW5kZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuc2l6ZSxuPUEuY29uY2F0LGk9QS5zdWJzZXQscj1BLnNldERpZmZlcmVuY2Usbz1BLkluZGV4O3JldHVybiBlKE5jLHsiQXJyYXkgfCBNYXRyaXgsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe2lmKDA9PT1pKHQoQSksbmV3IG8oMCkpKXJldHVybiBnbihlKTtpZigwPT09aSh0KGUpLG5ldyBvKDApKSlyZXR1cm4gZ24oQSk7dmFyIHM9Z24oQSksYT1nbihlKTtyZXR1cm4gbihyKHMsYSkscihhLHMpKX19KX0pKSx5Yz0ic2V0VW5pb24iLFRjPXBBKHljLFsidHlwZWQiLCJzaXplIiwiY29uY2F0Iiwic3Vic2V0Iiwic2V0SW50ZXJzZWN0Iiwic2V0U3ltRGlmZmVyZW5jZSIsIkluZGV4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLnNpemUsbj1BLmNvbmNhdCxpPUEuc3Vic2V0LHI9QS5zZXRJbnRlcnNlY3Qsbz1BLnNldFN5bURpZmZlcmVuY2Uscz1BLkluZGV4O3JldHVybiBlKHljLHsiQXJyYXkgfCBNYXRyaXgsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe2lmKDA9PT1pKHQoQSksbmV3IHMoMCkpKXJldHVybiBnbihlKTtpZigwPT09aSh0KGUpLG5ldyBzKDApKSlyZXR1cm4gZ24oQSk7dmFyIGE9Z24oQSksQj1nbihlKTtyZXR1cm4gbihvKGEsQikscihhLEIpKX19KX0pKSx4Yz1wQSgiYWRkIixbInR5cGVkIiwibWF0cml4IiwiYWRkU2NhbGFyIiwiZXF1YWxTY2FsYXIiLCJEZW5zZU1hdHJpeCIsIlNwYXJzZU1hdHJpeCIsImNvbmNhdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmFkZFNjYWxhcixpPUEuZXF1YWxTY2FsYXIscj1BLkRlbnNlTWF0cml4LG89KEEuU3BhcnNlTWF0cml4LEEuY29uY2F0KSxzPWZyKHt0eXBlZDplfSksYT1Ocih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjppfSksQj1Vcih7dHlwZWQ6ZSxEZW5zZU1hdHJpeDpyfSksYz1Ecih7dHlwZWQ6ZSxtYXRyaXg6dCxjb25jYXQ6b30pO3JldHVybiBlKCJhZGQiLHsiYW55LCBhbnkiOm4sImFueSwgYW55LCAuLi5hbnkiOmUucmVmZXJUb1NlbGYoKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQsbil7Zm9yKHZhciBpPUEoZSx0KSxyPTA7cjxuLmxlbmd0aDtyKyspaT1BKGksbltyXSk7cmV0dXJuIGl9fSkpfSxjKHtlbG9wOm4sRFM6cyxTUzphLFNzOkJ9KSl9KSksUmM9cEEoImh5cG90IixbInR5cGVkIiwiYWJzIiwiYWRkU2NhbGFyIiwiZGl2aWRlU2NhbGFyIiwibXVsdGlwbHlTY2FsYXIiLCJzcXJ0Iiwic21hbGxlciIsImlzUG9zaXRpdmUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuYWJzLG49QS5hZGRTY2FsYXIsaT1BLmRpdmlkZVNjYWxhcixyPUEubXVsdGlwbHlTY2FsYXIscz1BLnNxcnQsYT1BLnNtYWxsZXIsQj1BLmlzUG9zaXRpdmU7cmV0dXJuIGUoImh5cG90Iix7Ii4uLiBudW1iZXIgfCBCaWdOdW1iZXIiOmMsQXJyYXk6YyxNYXRyaXg6ZnVuY3Rpb24oQSl7cmV0dXJuIGMoZ24oQS50b0FycmF5KCkpKX19KTtmdW5jdGlvbiBjKEEpe2Zvcih2YXIgZT0wLGM9MCxnPTA7ZzxBLmxlbmd0aDtnKyspe2lmKG8oQVtnXSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5leHBlY3RlZCB0eXBlIG9mIGFyZ3VtZW50IHRvIGh5cG90Iik7dmFyIEU9dChBW2ddKTthKGMsRSk/KGU9cihlLHIoaShjLEUpLGkoYyxFKSkpLGU9bihlLDEpLGM9RSk6ZT1uKGUsQihFKT9yKGkoRSxjKSxpKEUsYykpOkUpfXJldHVybiByKGMscyhlKSl9fSkpLEdjPXBBKCJub3JtIixbInR5cGVkIiwiYWJzIiwiYWRkIiwicG93IiwiY29uaiIsInNxcnQiLCJtdWx0aXBseSIsImVxdWFsU2NhbGFyIiwibGFyZ2VyIiwic21hbGxlciIsIm1hdHJpeCIsImN0cmFuc3Bvc2UiLCJlaWdzIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFicyxuPUEuYWRkLGk9QS5wb3cscj1BLmNvbmosbz1BLnNxcnQscz1BLm11bHRpcGx5LGE9QS5lcXVhbFNjYWxhcixCPUEubGFyZ2VyLGM9QS5zbWFsbGVyLGc9QS5tYXRyaXgsRT1BLmN0cmFuc3Bvc2UsUT1BLmVpZ3M7cmV0dXJuIGUoIm5vcm0iLHtudW1iZXI6TWF0aC5hYnMsQ29tcGxleDpmdW5jdGlvbihBKXtyZXR1cm4gQS5hYnMoKX0sQmlnTnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBLmFicygpfSxib29sZWFuOmZ1bmN0aW9uKEEpe3JldHVybiBNYXRoLmFicyhBKX0sQXJyYXk6ZnVuY3Rpb24oQSl7cmV0dXJuIHUoZyhBKSwyKX0sTWF0cml4OmZ1bmN0aW9uKEEpe3JldHVybiB1KEEsMil9LCJBcnJheSwgbnVtYmVyIHwgQmlnTnVtYmVyIHwgc3RyaW5nIjpmdW5jdGlvbihBLGUpe3JldHVybiB1KGcoQSksZSl9LCJNYXRyaXgsIG51bWJlciB8IEJpZ051bWJlciB8IHN0cmluZyI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdShBLGUpfX0pO2Z1bmN0aW9uIHUoQSxlKXt2YXIgZz1BLnNpemUoKTtpZigxPT09Zy5sZW5ndGgpcmV0dXJuIGZ1bmN0aW9uKEEsZSl7aWYoZT09PU51bWJlci5QT1NJVElWRV9JTkZJTklUWXx8ImluZiI9PT1lKXJldHVybiBmdW5jdGlvbihBKXt2YXIgZT0wO3JldHVybiBBLmZvckVhY2goKGZ1bmN0aW9uKEEpe3ZhciBuPXQoQSk7QihuLGUpJiYoZT1uKX0pLCEwKSxlfShBKTtpZihlPT09TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZfHwiLWluZiI9PT1lKXJldHVybiBmdW5jdGlvbihBKXt2YXIgZTtyZXR1cm4gQS5mb3JFYWNoKChmdW5jdGlvbihBKXt2YXIgbj10KEEpO2UmJiFjKG4sZSl8fChlPW4pfSksITApLGV8fDB9KEEpO2lmKCJmcm8iPT09ZSlyZXR1cm4gdShBLDIpO2lmKCJudW1iZXIiPT10eXBlb2YgZSYmIWlzTmFOKGUpKXtpZighYShlLDApKXt2YXIgcj0wO3JldHVybiBBLmZvckVhY2goKGZ1bmN0aW9uKEEpe3I9bihpKHQoQSksZSkscil9KSwhMCksaShyLDEvZSl9cmV0dXJuIE51bWJlci5QT1NJVElWRV9JTkZJTklUWX10aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIHBhcmFtZXRlciB2YWx1ZSIpfShBLGUpO2lmKDI9PT1nLmxlbmd0aCl7aWYoZ1swXSYmZ1sxXSlyZXR1cm4gZnVuY3Rpb24oQSxlKXtpZigxPT09ZSlyZXR1cm4gZnVuY3Rpb24oQSl7dmFyIGU9W10saT0wO3JldHVybiBBLmZvckVhY2goKGZ1bmN0aW9uKEEscil7dmFyIG89clsxXSxzPW4oZVtvXXx8MCx0KEEpKTtCKHMsaSkmJihpPXMpLGVbb109c30pLCEwKSxpfShBKTtpZihlPT09TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZfHwiaW5mIj09PWUpcmV0dXJuIGZ1bmN0aW9uKEEpe3ZhciBlPVtdLGk9MDtyZXR1cm4gQS5mb3JFYWNoKChmdW5jdGlvbihBLHIpe3ZhciBvPXJbMF0scz1uKGVbb118fDAsdChBKSk7QihzLGkpJiYoaT1zKSxlW29dPXN9KSwhMCksaX0oQSk7aWYoImZybyI9PT1lKXJldHVybiBmdW5jdGlvbihBKXt2YXIgZT0wO3JldHVybiBBLmZvckVhY2goKGZ1bmN0aW9uKEEsdCl7ZT1uKGUscyhBLHIoQSkpKX0pKSx0KG8oZSkpfShBKTtpZigyPT09ZSlyZXR1cm4gZnVuY3Rpb24oQSl7dmFyIGU9QS5zaXplKCk7aWYoZVswXSE9PWVbMV0pdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgbWF0cml4IGRpbWVuc2lvbnMiKTt2YXIgbj1FKEEpLGk9cyhuLEEpLHI9UShpKS52YWx1ZXMudG9BcnJheSgpLGE9cltyLmxlbmd0aC0xXTtyZXR1cm4gdChvKGEpKX0oQSk7dGhyb3cgbmV3IEVycm9yKCJVbnN1cHBvcnRlZCBwYXJhbWV0ZXIgdmFsdWUgIitlKX0oQSxlKTt0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCBtYXRyaXggZGltZW5zaW9ucyIpfX19KSksU2M9cEEoImRvdCIsWyJ0eXBlZCIsImFkZFNjYWxhciIsIm11bHRpcGx5U2NhbGFyIiwiY29uaiIsInNpemUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuYWRkU2NhbGFyLG49QS5tdWx0aXBseVNjYWxhcixpPUEuY29uaixyPUEuc2l6ZTtyZXR1cm4gZSgiZG90Iix7IkFycmF5IHwgRGVuc2VNYXRyaXgsIEFycmF5IHwgRGVuc2VNYXRyaXgiOmZ1bmN0aW9uKEEscil7dmFyIGE9byhBLHIpLEI9ZyhBKT9BLl9kYXRhOkEsYz1nKEEpP0EuX2RhdGF0eXBlOnZvaWQgMCxFPWcocik/ci5fZGF0YTpyLFE9ZyhyKT9yLl9kYXRhdHlwZTp2b2lkIDAsdT0yPT09cyhBKS5sZW5ndGgsbD0yPT09cyhyKS5sZW5ndGgsaD10LHc9bjtpZihjJiZRJiZjPT09USYmInN0cmluZyI9PXR5cGVvZiBjKXt2YXIgQz1jO2g9ZS5maW5kKHQsW0MsQ10pLHc9ZS5maW5kKG4sW0MsQ10pfWlmKCF1JiYhbCl7Zm9yKHZhciBJPXcoaShCWzBdKSxFWzBdKSxNPTE7TTxhO00rKylJPWgoSSx3KGkoQltNXSksRVtNXSkpO3JldHVybiBJfWlmKCF1JiZsKXtmb3IodmFyIGQ9dyhpKEJbMF0pLEVbMF1bMF0pLHA9MTtwPGE7cCsrKWQ9aChkLHcoaShCW3BdKSxFW3BdWzBdKSk7cmV0dXJuIGR9aWYodSYmIWwpe2Zvcih2YXIgbT13KGkoQlswXVswXSksRVswXSksRj0xO0Y8YTtGKyspbT1oKG0sdyhpKEJbRl1bMF0pLEVbRl0pKTtyZXR1cm4gbX1pZih1JiZsKXtmb3IodmFyIEQ9dyhpKEJbMF1bMF0pLEVbMF1bMF0pLFk9MTtZPGE7WSsrKUQ9aChELHcoaShCW1ldWzBdKSxFW1ldWzBdKSk7cmV0dXJuIER9fSwiU3BhcnNlTWF0cml4LCBTcGFyc2VNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7byhBLGUpO2Zvcih2YXIgaT1BLl9pbmRleCxyPUEuX3ZhbHVlcyxzPWUuX2luZGV4LGE9ZS5fdmFsdWVzLEI9MCxjPXQsZz1uLEU9MCxRPTA7RTxpLmxlbmd0aCYmUTxzLmxlbmd0aDspe3ZhciB1PWlbRV0sbD1zW1FdO3U8bD9FKys6dT5sP1ErKzp1PT09bCYmKEI9YyhCLGcocltFXSxhW1FdKSksRSsrLFErKyl9cmV0dXJuIEJ9fSk7ZnVuY3Rpb24gbyhBLGUpe3ZhciB0LG4saT1zKEEpLHI9cyhlKTtpZigxPT09aS5sZW5ndGgpdD1pWzBdO2Vsc2V7aWYoMiE9PWkubGVuZ3RofHwxIT09aVsxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRXhwZWN0ZWQgYSBjb2x1bW4gdmVjdG9yLCBpbnN0ZWFkIGdvdCBhIG1hdHJpeCBvZiBzaXplICgiK2kuam9pbigiLCAiKSsiKSIpO3Q9aVswXX1pZigxPT09ci5sZW5ndGgpbj1yWzBdO2Vsc2V7aWYoMiE9PXIubGVuZ3RofHwxIT09clsxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRXhwZWN0ZWQgYSBjb2x1bW4gdmVjdG9yLCBpbnN0ZWFkIGdvdCBhIG1hdHJpeCBvZiBzaXplICgiK3Iuam9pbigiLCAiKSsiKSIpO249clswXX1pZih0IT09bil0aHJvdyBuZXcgUmFuZ2VFcnJvcigiVmVjdG9ycyBtdXN0IGhhdmUgZXF1YWwgbGVuZ3RoICgiK3QrIiAhPSAiK24rIikiKTtpZigwPT09dCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQ2Fubm90IGNhbGN1bGF0ZSB0aGUgZG90IHByb2R1Y3Qgb2YgZW1wdHkgdmVjdG9ycyIpO3JldHVybiB0fWZ1bmN0aW9uIHMoQSl7cmV0dXJuIGcoQSk/QS5zaXplKCk6cihBKX19KSksYmM9cEEoInRyYWNlIixbInR5cGVkIiwibWF0cml4IiwiYWRkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuYWRkO3JldHVybiBlKCJ0cmFjZSIse0FycmF5OmZ1bmN0aW9uKEEpe3JldHVybiBpKHQoQSkpfSxTcGFyc2VNYXRyaXg6ZnVuY3Rpb24oQSl7dmFyIGU9QS5fdmFsdWVzLHQ9QS5faW5kZXgsaT1BLl9wdHIscj1BLl9zaXplLG89clswXSxzPXJbMV07aWYobz09PXMpe3ZhciBhPTA7aWYoZS5sZW5ndGg+MClmb3IodmFyIEI9MDtCPHM7QisrKWZvcih2YXIgYz1pW0JdLGc9aVtCKzFdLEU9YztFPGc7RSsrKXt2YXIgUT10W0VdO2lmKFE9PT1CKXthPW4oYSxlW0VdKTticmVha31pZihRPkIpYnJlYWt9cmV0dXJuIGF9dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIHNxdWFyZSAoc2l6ZTogIitWdChyKSsiKSIpfSxEZW5zZU1hdHJpeDppLGFueTp1QX0pO2Z1bmN0aW9uIGkoQSl7dmFyIGU9QS5fc2l6ZSx0PUEuX2RhdGE7c3dpdGNoKGUubGVuZ3RoKXtjYXNlIDE6aWYoMT09PWVbMF0pcmV0dXJuIHVBKHRbMF0pO3Rocm93IG5ldyBSYW5nZUVycm9yKCJNYXRyaXggbXVzdCBiZSBzcXVhcmUgKHNpemU6ICIrVnQoZSkrIikiKTtjYXNlIDI6dmFyIGk9ZVswXTtpZihpPT09ZVsxXSl7Zm9yKHZhciByPTAsbz0wO288aTtvKyspcj1uKHIsdFtvXVtvXSk7cmV0dXJuIHJ9dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIHNxdWFyZSAoc2l6ZTogIitWdChlKSsiKSIpO2RlZmF1bHQ6dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIHR3byBkaW1lbnNpb25hbCAoc2l6ZTogIitWdChlKSsiKSIpfX19KSksSGM9cEEoImluZGV4IixbInR5cGVkIiwiSW5kZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuSW5kZXg7cmV0dXJuIGUoImluZGV4Iix7Ii4uLm51bWJlciB8IHN0cmluZyB8IEJpZ051bWJlciB8IFJhbmdlIHwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEpe3ZhciBlPUEubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gcihBKT9BLnRvTnVtYmVyKCk6YyhBKXx8ZyhBKT9BLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIHIoQSk/QS50b051bWJlcigpOkF9KSk6QX0pKSxuPW5ldyB0O3JldHVybiB0LmFwcGx5KG4sZSksbn19KX0pKSx2Yz0obig5NjQ5KSxuZXcgU2V0KFsiZW5kIl0pKSxrYz1wQSgiTm9kZSIsWyJtYXRoV2l0aFRyYW5zZm9ybSJdLChmdW5jdGlvbihBKXt2YXIgdD1BLm1hdGhXaXRoVHJhbnNmb3JtO3JldHVybiBmdW5jdGlvbigpe2Z1bmN0aW9uIEEoKXtEQSh0aGlzLEEpfXJldHVybiBOQShBLFt7a2V5OiJ0eXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iTm9kZSJ9fSx7a2V5OiJpc05vZGUiLGdldDpmdW5jdGlvbigpe3JldHVybiEwfX0se2tleToiZXZhbHVhdGUiLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmNvbXBpbGUoKS5ldmFsdWF0ZShBKX19LHtrZXk6ImNvbXBpbGUiLHZhbHVlOmZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5fY29tcGlsZSh0LHt9KSxlPXt9O3JldHVybntldmFsdWF0ZTpmdW5jdGlvbih0KXt2YXIgbj1qQSh0KTtyZXR1cm4gZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTAsdD16dCh2Yyk7ZTx0Lmxlbmd0aDtlKyspe3ZhciBuPXRbZV07aWYoQS5oYXMobikpdGhyb3cgbmV3IEVycm9yKCdTY29wZSBjb250YWlucyBhbiBpbGxlZ2FsIHN5bWJvbCwgIicrbisnIiBpcyBhIHJlc2VydmVkIGtleXdvcmQnKX19KG4pLEEobixlLG51bGwpfX19fSx7a2V5OiJfY29tcGlsZSIsdmFsdWU6ZnVuY3Rpb24oQSxlKXt0aHJvdyBuZXcgRXJyb3IoIk1ldGhvZCBfY29tcGlsZSBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IHR5cGUgIit0aGlzLnR5cGUpfX0se2tleToiZm9yRWFjaCIsdmFsdWU6ZnVuY3Rpb24oQSl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgcnVuIGZvckVhY2ggb24gYSBOb2RlIGludGVyZmFjZSIpfX0se2tleToibWFwIix2YWx1ZTpmdW5jdGlvbihBKXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBydW4gbWFwIG9uIGEgTm9kZSBpbnRlcmZhY2UiKX19LHtrZXk6Il9pZk5vZGUiLHZhbHVlOmZ1bmN0aW9uKEEpe2lmKCFiKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbGxiYWNrIGZ1bmN0aW9uIG11c3QgcmV0dXJuIGEgTm9kZSIpO3JldHVybiBBfX0se2tleToidHJhdmVyc2UiLHZhbHVlOmZ1bmN0aW9uKEEpe0EodGhpcyxudWxsLG51bGwpLGZ1bmN0aW9uIEEoZSx0KXtlLmZvckVhY2goKGZ1bmN0aW9uKGUsbixpKXt0KGUsbixpKSxBKGUsdCl9KSl9KHRoaXMsQSl9fSx7a2V5OiJ0cmFuc2Zvcm0iLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbiBlKHQsbixpKXt2YXIgcj1BKHQsbixpKTtyZXR1cm4gciE9PXQ/cjp0Lm1hcChlKX0odGhpcyxudWxsLG51bGwpfX0se2tleToiZmlsdGVyIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT1bXTtyZXR1cm4gdGhpcy50cmF2ZXJzZSgoZnVuY3Rpb24odCxuLGkpe0EodCxuLGkpJiZlLnB1c2godCl9KSksZX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGNsb25lIGEgTm9kZSBpbnRlcmZhY2UiKX19LHtrZXk6ImNsb25lRGVlcCIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLmNsb25lRGVlcCgpfSkpfX0se2tleToiZXF1YWxzIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4hIUEmJnRoaXMudHlwZT09PUEudHlwZSYmd0EodGhpcyxBKX19LHtrZXk6InRvU3RyaW5nIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT10aGlzLl9nZXRDdXN0b21TdHJpbmcoQSk7cmV0dXJuIHZvaWQgMCE9PWU/ZTp0aGlzLl90b1N0cmluZyhBKX19LHtrZXk6InRvSlNPTiIsdmFsdWU6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBzZXJpYWxpemUgb2JqZWN0OiB0b0pTT04gbm90IGltcGxlbWVudGVkIGJ5ICIrdGhpcy50eXBlKX19LHtrZXk6InRvSFRNTCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5fZ2V0Q3VzdG9tU3RyaW5nKEEpO3JldHVybiB2b2lkIDAhPT1lP2U6dGhpcy50b0hUTUwoQSl9fSx7a2V5OiJfdG9TdHJpbmciLHZhbHVlOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJfdG9TdHJpbmcgbm90IGltcGxlbWVudGVkIGZvciAiK3RoaXMudHlwZSl9fSx7a2V5OiJ0b1RleCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5fZ2V0Q3VzdG9tU3RyaW5nKEEpO3JldHVybiB2b2lkIDAhPT1lP2U6dGhpcy5fdG9UZXgoQSl9fSx7a2V5OiJfdG9UZXgiLHZhbHVlOmZ1bmN0aW9uKEEpe3Rocm93IG5ldyBFcnJvcigiX3RvVGV4IG5vdCBpbXBsZW1lbnRlZCBmb3IgIit0aGlzLnR5cGUpfX0se2tleToiX2dldEN1c3RvbVN0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7aWYoQSYmIm9iamVjdCI9PT1lKEEpKXN3aXRjaChlKEEuaGFuZGxlcikpe2Nhc2Uib2JqZWN0IjpjYXNlInVuZGVmaW5lZCI6cmV0dXJuO2Nhc2UiZnVuY3Rpb24iOnJldHVybiBBLmhhbmRsZXIodGhpcyxBKTtkZWZhdWx0OnRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBvciBmdW5jdGlvbiBleHBlY3RlZCBhcyBjYWxsYmFjayIpfX19LHtrZXk6ImdldElkZW50aWZpZXIiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudHlwZX19LHtrZXk6ImdldENvbnRlbnQiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9fV0pLEF9KCl9KSx7aXNDbGFzczohMCxpc05vZGU6ITB9KTtmdW5jdGlvbiBqYyhBLGUpe3JldHVybihqYz1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LnNldFByb3RvdHlwZU9mLmJpbmQoKTpmdW5jdGlvbihBLGUpe3JldHVybiBBLl9fcHJvdG9fXz1lLEF9KShBLGUpfWZ1bmN0aW9uIEpjKEEsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGUmJm51bGwhPT1lKXRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uIik7QS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShlJiZlLnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOkEsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLGUmJmpjKEEsZSl9ZnVuY3Rpb24gemMoQSx0KXtpZih0JiYoIm9iamVjdCI9PT1lKHQpfHwiZnVuY3Rpb24iPT10eXBlb2YgdCkpcmV0dXJuIHQ7aWYodm9pZCAwIT09dCl0aHJvdyBuZXcgVHlwZUVycm9yKCJEZXJpdmVkIGNvbnN0cnVjdG9ycyBtYXkgb25seSByZXR1cm4gb2JqZWN0IG9yIHVuZGVmaW5lZCIpO3JldHVybiBmdW5jdGlvbihBKXtpZih2b2lkIDA9PT1BKXRocm93IG5ldyBSZWZlcmVuY2VFcnJvcigidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkIik7cmV0dXJuIEF9KEEpfWZ1bmN0aW9uIExjKEEpe3JldHVybihMYz1PYmplY3Quc2V0UHJvdG90eXBlT2Y/T2JqZWN0LmdldFByb3RvdHlwZU9mLmJpbmQoKTpmdW5jdGlvbihBKXtyZXR1cm4gQS5fX3Byb3RvX198fE9iamVjdC5nZXRQcm90b3R5cGVPZihBKX0pKEEpfWZ1bmN0aW9uIFBjKEEpe3JldHVybiBBJiZBLmlzSW5kZXhFcnJvcj9uZXcgcXQoQS5pbmRleCsxLEEubWluKzEsdm9pZCAwIT09QS5tYXg/QS5tYXgrMTp2b2lkIDApOkF9ZnVuY3Rpb24gT2MoQSl7dmFyIHQ9QS5zdWJzZXQ7cmV0dXJuIGZ1bmN0aW9uKEEsbil7dHJ5e2lmKEFycmF5LmlzQXJyYXkoQSkpcmV0dXJuIHQoQSxuKTtpZihBJiYiZnVuY3Rpb24iPT10eXBlb2YgQS5zdWJzZXQpcmV0dXJuIEEuc3Vic2V0KG4pO2lmKCJzdHJpbmciPT10eXBlb2YgQSlyZXR1cm4gdChBLG4pO2lmKCJvYmplY3QiPT09ZShBKSl7aWYoIW4uaXNPYmplY3RQcm9wZXJ0eSgpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhcHBseSBhIG51bWVyaWMgaW5kZXggYXMgb2JqZWN0IHByb3BlcnR5Iik7cmV0dXJuIFVBKEEsbi5nZXRPYmplY3RQcm9wZXJ0eSgpKX10aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYXBwbHkgaW5kZXg6IHVuc3VwcG9ydGVkIHR5cGUgb2Ygb2JqZWN0Iil9Y2F0Y2goQSl7dGhyb3cgUGMoQSl9fX1uKDYwMzQpLG4oNTApO3ZhciBWYz0iQWNjZXNzb3JOb2RlIixXYz1wQShWYyxbInN1YnNldCIsIk5vZGUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5zdWJzZXQsdD1BLk5vZGUsbj1PYyh7c3Vic2V0OmV9KTtmdW5jdGlvbiBpKEEpe3JldHVybiEoWShBKXx8ZihBKXx8VChBKXx8RyhBKXx8SChBKXx8ayhBKXx8eihBKSl9dmFyIHI9ZnVuY3Rpb24oQSl7SmMobyxBKTt2YXIgZSx0LHI9KGU9byx0PWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBSZWZsZWN0fHwhUmVmbGVjdC5jb25zdHJ1Y3QpcmV0dXJuITE7aWYoUmVmbGVjdC5jb25zdHJ1Y3Quc2hhbSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUHJveHkpcmV0dXJuITA7dHJ5e3JldHVybiBCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbixbXSwoZnVuY3Rpb24oKXt9KSkpLCEwfWNhdGNoKEEpe3JldHVybiExfX0oKSxmdW5jdGlvbigpe3ZhciBBLG49TGMoZSk7aWYodCl7dmFyIGk9TGModGhpcykuY29uc3RydWN0b3I7QT1SZWZsZWN0LmNvbnN0cnVjdChuLGFyZ3VtZW50cyxpKX1lbHNlIEE9bi5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIHpjKHRoaXMsQSl9KTtmdW5jdGlvbiBvKEEsZSl7dmFyIHQ7aWYoREEodGhpcyxvKSx0PXIuY2FsbCh0aGlzKSwhYihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdOb2RlIGV4cGVjdGVkIGZvciBwYXJhbWV0ZXIgIm9iamVjdCInKTtpZighUyhlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdJbmRleE5vZGUgZXhwZWN0ZWQgZm9yIHBhcmFtZXRlciAiaW5kZXgiJyk7cmV0dXJuIHQub2JqZWN0PUEsdC5pbmRleD1lLHR9cmV0dXJuIE5BKG8sW3trZXk6Im5hbWUiLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmluZGV4P3RoaXMuaW5kZXguaXNPYmplY3RQcm9wZXJ0eSgpP3RoaXMuaW5kZXguZ2V0T2JqZWN0UHJvcGVydHkoKToiIjp0aGlzLm9iamVjdC5uYW1lfHwiIn19LHtrZXk6InR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBWY319LHtrZXk6ImlzQWNjZXNzb3JOb2RlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH19LHtrZXk6Il9jb21waWxlIix2YWx1ZTpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMub2JqZWN0Ll9jb21waWxlKEEsZSksaT10aGlzLmluZGV4Ll9jb21waWxlKEEsZSk7aWYodGhpcy5pbmRleC5pc09iamVjdFByb3BlcnR5KCkpe3ZhciByPXRoaXMuaW5kZXguZ2V0T2JqZWN0UHJvcGVydHkoKTtyZXR1cm4gZnVuY3Rpb24oQSxlLG4pe3JldHVybiBVQSh0KEEsZSxuKSxyKX19cmV0dXJuIGZ1bmN0aW9uKEEsZSxyKXt2YXIgbz10KEEsZSxyKSxzPWkoQSxlLG8pO3JldHVybiBuKG8scyl9fX0se2tleToiZm9yRWFjaCIsdmFsdWU6ZnVuY3Rpb24oQSl7QSh0aGlzLm9iamVjdCwib2JqZWN0Iix0aGlzKSxBKHRoaXMuaW5kZXgsImluZGV4Iix0aGlzKX19LHtrZXk6Im1hcCIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBvKHRoaXMuX2lmTm9kZShBKHRoaXMub2JqZWN0LCJvYmplY3QiLHRoaXMpKSx0aGlzLl9pZk5vZGUoQSh0aGlzLmluZGV4LCJpbmRleCIsdGhpcykpKX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgbyh0aGlzLm9iamVjdCx0aGlzLmluZGV4KX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5vYmplY3QudG9TdHJpbmcoQSk7cmV0dXJuIGkodGhpcy5vYmplY3QpJiYoZT0iKCIrZSsiKSIpLGUrdGhpcy5pbmRleC50b1N0cmluZyhBKX19LHtrZXk6InRvSFRNTCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5vYmplY3QudG9IVE1MKEEpO3JldHVybiBpKHRoaXMub2JqZWN0KSYmKGU9JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytlKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPicpLGUrdGhpcy5pbmRleC50b0hUTUwoQSl9fSx7a2V5OiJfdG9UZXgiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMub2JqZWN0LnRvVGV4KEEpO3JldHVybiBpKHRoaXMub2JqZWN0KSYmKGU9IlxcbGVmdCgnICsgb2JqZWN0ICsgJ1xccmlnaHQpIiksZSt0aGlzLmluZGV4LnRvVGV4KEEpfX0se2tleToidG9KU09OIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybnttYXRoanM6VmMsb2JqZWN0OnRoaXMub2JqZWN0LGluZGV4OnRoaXMuaW5kZXh9fX1dLFt7a2V5OiJmcm9tSlNPTiIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBvKEEub2JqZWN0LEEuaW5kZXgpfX1dKSxvfSh0KTtyZXR1cm4gSXIociwibmFtZSIsVmMpLHJ9KSx7aXNDbGFzczohMCxpc05vZGU6ITB9KSxLYz0iQXJyYXlOb2RlIixYYz1wQShLYyxbIk5vZGUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSl7SmMoaSxBKTt2YXIgZSx0LG49KGU9aSx0PWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBSZWZsZWN0fHwhUmVmbGVjdC5jb25zdHJ1Y3QpcmV0dXJuITE7aWYoUmVmbGVjdC5jb25zdHJ1Y3Quc2hhbSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUHJveHkpcmV0dXJuITA7dHJ5e3JldHVybiBCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbixbXSwoZnVuY3Rpb24oKXt9KSkpLCEwfWNhdGNoKEEpe3JldHVybiExfX0oKSxmdW5jdGlvbigpe3ZhciBBLG49TGMoZSk7aWYodCl7dmFyIGk9TGModGhpcykuY29uc3RydWN0b3I7QT1SZWZsZWN0LmNvbnN0cnVjdChuLGFyZ3VtZW50cyxpKX1lbHNlIEE9bi5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIHpjKHRoaXMsQSl9KTtmdW5jdGlvbiBpKEEpe3ZhciBlO2lmKERBKHRoaXMsaSksKGU9bi5jYWxsKHRoaXMpKS5pdGVtcz1BfHxbXSwhQXJyYXkuaXNBcnJheShlLml0ZW1zKXx8IWUuaXRlbXMuZXZlcnkoYikpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgY29udGFpbmluZyBOb2RlcyBleHBlY3RlZCIpO3JldHVybiBlfXJldHVybiBOQShpLFt7a2V5OiJ0eXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gS2N9fSx7a2V5OiJpc0FycmF5Tm9kZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuITB9fSx7a2V5OiJfY29tcGlsZSIsdmFsdWU6ZnVuY3Rpb24oQSxlKXt2YXIgdD1Fbih0aGlzLml0ZW1zLChmdW5jdGlvbih0KXtyZXR1cm4gdC5fY29tcGlsZShBLGUpfSkpO2lmKCJBcnJheSIhPT1BLmNvbmZpZy5tYXRyaXgpe3ZhciBuPUEubWF0cml4O3JldHVybiBmdW5jdGlvbihBLGUsaSl7cmV0dXJuIG4oRW4odCwoZnVuY3Rpb24odCl7cmV0dXJuIHQoQSxlLGkpfSkpKX19cmV0dXJuIGZ1bmN0aW9uKEEsZSxuKXtyZXR1cm4gRW4odCwoZnVuY3Rpb24odCl7cmV0dXJuIHQoQSxlLG4pfSkpfX19LHtrZXk6ImZvckVhY2giLHZhbHVlOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0wO2U8dGhpcy5pdGVtcy5sZW5ndGg7ZSsrKUEodGhpcy5pdGVtc1tlXSwiaXRlbXNbIitlKyJdIix0aGlzKX19LHtrZXk6Im1hcCIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPVtdLHQ9MDt0PHRoaXMuaXRlbXMubGVuZ3RoO3QrKyllW3RdPXRoaXMuX2lmTm9kZShBKHRoaXMuaXRlbXNbdF0sIml0ZW1zWyIrdCsiXSIsdGhpcykpO3JldHVybiBuZXcgaShlKX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgaSh0aGlzLml0ZW1zLnNsaWNlKDApKX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIlsiK3RoaXMuaXRlbXMubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZS50b1N0cmluZyhBKX0pKS5qb2luKCIsICIpKyJdIn19LHtrZXk6InRvSlNPTiIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOktjLGl0ZW1zOnRoaXMuaXRlbXN9fX0se2tleToidG9IVE1MIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4nPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1zcXVhcmUtcGFyZW50aGVzaXMiPls8L3NwYW4+Jyt0aGlzLml0ZW1zLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9IVE1MKEEpfSkpLmpvaW4oJzxzcGFuIGNsYXNzPSJtYXRoLXNlcGFyYXRvciI+LDwvc3Bhbj4nKSsnPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1zcXVhcmUtcGFyZW50aGVzaXMiPl08L3NwYW4+J319LHtrZXk6Il90b1RleCIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uIGUodCxuKXt2YXIgaT10LnNvbWUoZikmJiF0LmV2ZXJ5KGYpLHI9bnx8aSxvPXI/IiYiOiJcXFxcIixzPXQubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdC5pdGVtcz9lKHQuaXRlbXMsIW4pOnQudG9UZXgoQSl9KSkuam9pbihvKTtyZXR1cm4gaXx8IXJ8fHImJiFuPyJcXGJlZ2lue2JtYXRyaXh9IitzKyJcXGVuZHtibWF0cml4fSI6c30odGhpcy5pdGVtcywhMSl9fV0sW3trZXk6ImZyb21KU09OIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGkoQS5pdGVtcyl9fV0pLGl9KEEuTm9kZSk7cmV0dXJuIElyKGUsIm5hbWUiLEtjKSxlfSkse2lzQ2xhc3M6ITAsaXNOb2RlOiEwfSk7ZnVuY3Rpb24gWmMoQSxlKXsobnVsbD09ZXx8ZT5BLmxlbmd0aCkmJihlPUEubGVuZ3RoKTtmb3IodmFyIHQ9MCxuPW5ldyBBcnJheShlKTt0PGU7dCsrKW5bdF09QVt0XTtyZXR1cm4gbn12YXIgX2M9W3tBc3NpZ25tZW50Tm9kZTp7fSxGdW5jdGlvbkFzc2lnbm1lbnROb2RlOnt9fSx7Q29uZGl0aW9uYWxOb2RlOntsYXRleExlZnRQYXJlbnM6ITEsbGF0ZXhSaWdodFBhcmVuczohMSxsYXRleFBhcmVuczohMX19LHsiT3BlcmF0b3JOb2RlOm9yIjp7b3A6Im9yIixhc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6W119fSx7Ik9wZXJhdG9yTm9kZTp4b3IiOntvcDoieG9yIixhc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6W119fSx7Ik9wZXJhdG9yTm9kZTphbmQiOntvcDoiYW5kIixhc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6W119fSx7Ik9wZXJhdG9yTm9kZTpiaXRPciI6e29wOiJ8Iixhc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6W119fSx7Ik9wZXJhdG9yTm9kZTpiaXRYb3IiOntvcDoiXnwiLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXX19LHsiT3BlcmF0b3JOb2RlOmJpdEFuZCI6e29wOiImIixhc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6W119fSx7Ik9wZXJhdG9yTm9kZTplcXVhbCI6e29wOiI9PSIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOltdfSwiT3BlcmF0b3JOb2RlOnVuZXF1YWwiOntvcDoiIT0iLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXX0sIk9wZXJhdG9yTm9kZTpzbWFsbGVyIjp7b3A6IjwiLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXX0sIk9wZXJhdG9yTm9kZTpsYXJnZXIiOntvcDoiPiIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOltdfSwiT3BlcmF0b3JOb2RlOnNtYWxsZXJFcSI6e29wOiI8PSIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOltdfSwiT3BlcmF0b3JOb2RlOmxhcmdlckVxIjp7b3A6Ij49Iixhc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6W119LFJlbGF0aW9uYWxOb2RlOnthc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6W119fSx7Ik9wZXJhdG9yTm9kZTpsZWZ0U2hpZnQiOntvcDoiPDwiLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXX0sIk9wZXJhdG9yTm9kZTpyaWdodEFyaXRoU2hpZnQiOntvcDoiPj4iLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXX0sIk9wZXJhdG9yTm9kZTpyaWdodExvZ1NoaWZ0Ijp7b3A6Ij4+PiIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOltdfX0seyJPcGVyYXRvck5vZGU6dG8iOntvcDoidG8iLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXX19LHtSYW5nZU5vZGU6e319LHsiT3BlcmF0b3JOb2RlOmFkZCI6e29wOiIrIixhc3NvY2lhdGl2aXR5OiJsZWZ0Iixhc3NvY2lhdGl2ZVdpdGg6WyJPcGVyYXRvck5vZGU6YWRkIiwiT3BlcmF0b3JOb2RlOnN1YnRyYWN0Il19LCJPcGVyYXRvck5vZGU6c3VidHJhY3QiOntvcDoiLSIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOltdfX0seyJPcGVyYXRvck5vZGU6bXVsdGlwbHkiOntvcDoiKiIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOlsiT3BlcmF0b3JOb2RlOm11bHRpcGx5IiwiT3BlcmF0b3JOb2RlOmRpdmlkZSIsIk9wZXJhdG9yOmRvdE11bHRpcGx5IiwiT3BlcmF0b3I6ZG90RGl2aWRlIl19LCJPcGVyYXRvck5vZGU6ZGl2aWRlIjp7b3A6Ii8iLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXSxsYXRleExlZnRQYXJlbnM6ITEsbGF0ZXhSaWdodFBhcmVuczohMSxsYXRleFBhcmVuczohMX0sIk9wZXJhdG9yTm9kZTpkb3RNdWx0aXBseSI6e29wOiIuKiIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOlsiT3BlcmF0b3JOb2RlOm11bHRpcGx5IiwiT3BlcmF0b3JOb2RlOmRpdmlkZSIsIk9wZXJhdG9yTm9kZTpkb3RNdWx0aXBseSIsIk9wZXJhdG9yTm9kZTpkb0RpdmlkZSJdfSwiT3BlcmF0b3JOb2RlOmRvdERpdmlkZSI6e29wOiIuLyIsYXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOltdfSwiT3BlcmF0b3JOb2RlOm1vZCI6e29wOiJtb2QiLGFzc29jaWF0aXZpdHk6ImxlZnQiLGFzc29jaWF0aXZlV2l0aDpbXX19LHsiT3BlcmF0b3JOb2RlOm11bHRpcGx5Ijp7YXNzb2NpYXRpdml0eToibGVmdCIsYXNzb2NpYXRpdmVXaXRoOlsiT3BlcmF0b3JOb2RlOm11bHRpcGx5IiwiT3BlcmF0b3JOb2RlOmRpdmlkZSIsIk9wZXJhdG9yOmRvdE11bHRpcGx5IiwiT3BlcmF0b3I6ZG90RGl2aWRlIl19fSx7Ik9wZXJhdG9yTm9kZTp1bmFyeVBsdXMiOntvcDoiKyIsYXNzb2NpYXRpdml0eToicmlnaHQifSwiT3BlcmF0b3JOb2RlOnVuYXJ5TWludXMiOntvcDoiLSIsYXNzb2NpYXRpdml0eToicmlnaHQifSwiT3BlcmF0b3JOb2RlOmJpdE5vdCI6e29wOiJ+Iixhc3NvY2lhdGl2aXR5OiJyaWdodCJ9LCJPcGVyYXRvck5vZGU6bm90Ijp7b3A6Im5vdCIsYXNzb2NpYXRpdml0eToicmlnaHQifX0seyJPcGVyYXRvck5vZGU6cG93Ijp7b3A6Il4iLGFzc29jaWF0aXZpdHk6InJpZ2h0Iixhc3NvY2lhdGl2ZVdpdGg6W10sbGF0ZXhSaWdodFBhcmVuczohMX0sIk9wZXJhdG9yTm9kZTpkb3RQb3ciOntvcDoiLl4iLGFzc29jaWF0aXZpdHk6InJpZ2h0Iixhc3NvY2lhdGl2ZVdpdGg6W119fSx7Ik9wZXJhdG9yTm9kZTpmYWN0b3JpYWwiOntvcDoiISIsYXNzb2NpYXRpdml0eToibGVmdCJ9fSx7Ik9wZXJhdG9yTm9kZTpjdHJhbnNwb3NlIjp7b3A6IiciLGFzc29jaWF0aXZpdHk6ImxlZnQifX1dO2Z1bmN0aW9uIHFjKEEsZSl7aWYoIWV8fCJhdXRvIiE9PWUpcmV0dXJuIEE7Zm9yKHZhciB0PUE7ayh0KTspdD10LmNvbnRlbnQ7cmV0dXJuIHR9ZnVuY3Rpb24gJGMoQSxlLHQsbil7dmFyIGk9QTsia2VlcCIhPT1lJiYoaT1BLmdldENvbnRlbnQoKSk7Zm9yKHZhciByPWkuZ2V0SWRlbnRpZmllcigpLG89bnVsbCxzPTA7czxfYy5sZW5ndGg7cysrKWlmKHIgaW4gX2Nbc10pe289czticmVha31pZigiT3BlcmF0b3JOb2RlOm11bHRpcGx5Ij09PXImJmkuaW1wbGljaXQmJiJzaG93IiE9PXQpe3ZhciBhPXFjKGkuYXJnc1swXSxlKTtUKGEpJiZuJiYiT3BlcmF0b3JOb2RlOmRpdmlkZSI9PT1uLmdldElkZW50aWZpZXIoKSYmeChxYyhuLmFyZ3NbMF0sZSkpfHwiT3BlcmF0b3JOb2RlOmRpdmlkZSI9PT1hLmdldElkZW50aWZpZXIoKSYmeChxYyhhLmFyZ3NbMF0sZSkpJiZUKHFjKGEuYXJnc1sxXSkpfHwobys9MSl9cmV0dXJuIG99ZnVuY3Rpb24gQWcoQSxlKXt2YXIgdD1BOyJrZWVwIiE9PWUmJih0PUEuZ2V0Q29udGVudCgpKTt2YXIgbj10LmdldElkZW50aWZpZXIoKSxpPSRjKHQsZSk7aWYobnVsbD09PWkpcmV0dXJuIG51bGw7dmFyIHI9X2NbaV1bbl07aWYoTUEociwiYXNzb2NpYXRpdml0eSIpKXtpZigibGVmdCI9PT1yLmFzc29jaWF0aXZpdHkpcmV0dXJuImxlZnQiO2lmKCJyaWdodCI9PT1yLmFzc29jaWF0aXZpdHkpcmV0dXJuInJpZ2h0Ijt0aHJvdyBFcnJvcigiJyIrbisiJyBoYXMgdGhlIGludmFsaWQgYXNzb2NpYXRpdml0eSAnIityLmFzc29jaWF0aXZpdHkrIicuIil9cmV0dXJuIG51bGx9ZnVuY3Rpb24gZWcoQSxlLHQpe3ZhciBuPSJrZWVwIiE9PXQ/QS5nZXRDb250ZW50KCk6QSxpPSJrZWVwIiE9PXQ/QS5nZXRDb250ZW50KCk6ZSxyPW4uZ2V0SWRlbnRpZmllcigpLG89aS5nZXRJZGVudGlmaWVyKCkscz0kYyhuLHQpO2lmKG51bGw9PT1zKXJldHVybiBudWxsO3ZhciBhPV9jW3NdW3JdO2lmKE1BKGEsImFzc29jaWF0aXZlV2l0aCIpJiZhLmFzc29jaWF0aXZlV2l0aCBpbnN0YW5jZW9mIEFycmF5KXtmb3IodmFyIEI9MDtCPGEuYXNzb2NpYXRpdmVXaXRoLmxlbmd0aDtCKyspaWYoYS5hc3NvY2lhdGl2ZVdpdGhbQl09PT1vKXJldHVybiEwO3JldHVybiExfXJldHVybiBudWxsfXZhciB0Zz0iQXNzaWdubWVudE5vZGUiLG5nPXBBKHRnLFsic3Vic2V0IiwiP21hdHJpeCIsIk5vZGUiXSwoZnVuY3Rpb24oQSl7dmFyIHQ9QS5zdWJzZXQsbj1BLm1hdHJpeCxpPUEuTm9kZSxyPU9jKHtzdWJzZXQ6dH0pLG89ZnVuY3Rpb24oQSl7dmFyIHQ9QS5zdWJzZXQsbj1BLm1hdHJpeDtyZXR1cm4gZnVuY3Rpb24oQSxpLHIpe3RyeXtpZihBcnJheS5pc0FycmF5KEEpKXJldHVybiBuKEEpLnN1YnNldChpLHIpLnZhbHVlT2YoKS5mb3JFYWNoKChmdW5jdGlvbihlLHQpe0FbdF09ZX0pKSxBO2lmKEEmJiJmdW5jdGlvbiI9PXR5cGVvZiBBLnN1YnNldClyZXR1cm4gQS5zdWJzZXQoaSxyKTtpZigic3RyaW5nIj09dHlwZW9mIEEpcmV0dXJuIHQoQSxpLHIpO2lmKCJvYmplY3QiPT09ZShBKSl7aWYoIWkuaXNPYmplY3RQcm9wZXJ0eSgpKXRocm93IFR5cGVFcnJvcigiQ2Fubm90IGFwcGx5IGEgbnVtZXJpYyBpbmRleCBhcyBvYmplY3QgcHJvcGVydHkiKTtyZXR1cm4geUEoQSxpLmdldE9iamVjdFByb3BlcnR5KCksciksQX10aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYXBwbHkgaW5kZXg6IHVuc3VwcG9ydGVkIHR5cGUgb2Ygb2JqZWN0Iil9Y2F0Y2goQSl7dGhyb3cgUGMoQSl9fX0oe3N1YnNldDp0LG1hdHJpeDpufSk7ZnVuY3Rpb24gcyhBLGUsdCl7ZXx8KGU9ImtlZXAiKTt2YXIgbj0kYyhBLGUsdCksaT0kYyhBLnZhbHVlLGUsdCk7cmV0dXJuImFsbCI9PT1lfHxudWxsIT09aSYmaTw9bn12YXIgYT1mdW5jdGlvbihBKXtKYyhpLEEpO3ZhciBlLHQsbj0oZT1pLHQ9ZnVuY3Rpb24oKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLChmdW5jdGlvbigpe30pKSksITB9Y2F0Y2goQSl7cmV0dXJuITF9fSgpLGZ1bmN0aW9uKCl7dmFyIEEsbj1MYyhlKTtpZih0KXt2YXIgaT1MYyh0aGlzKS5jb25zdHJ1Y3RvcjtBPVJlZmxlY3QuY29uc3RydWN0KG4sYXJndW1lbnRzLGkpfWVsc2UgQT1uLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gemModGhpcyxBKX0pO2Z1bmN0aW9uIGkoQSxlLHQpe3ZhciByO2lmKERBKHRoaXMsaSksKHI9bi5jYWxsKHRoaXMpKS5vYmplY3Q9QSxyLmluZGV4PXQ/ZTpudWxsLHIudmFsdWU9dHx8ZSwheihBKSYmIVkoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcignU3ltYm9sTm9kZSBvciBBY2Nlc3Nvck5vZGUgZXhwZWN0ZWQgYXMgIm9iamVjdCInKTtpZih6KEEpJiYiZW5kIj09PUEubmFtZSl0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBhc3NpZ24gdG8gc3ltYm9sICJlbmQiJyk7aWYoci5pbmRleCYmIVMoci5pbmRleCkpdGhyb3cgbmV3IFR5cGVFcnJvcignSW5kZXhOb2RlIGV4cGVjdGVkIGFzICJpbmRleCInKTtpZighYihyLnZhbHVlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdOb2RlIGV4cGVjdGVkIGFzICJ2YWx1ZSInKTtyZXR1cm4gcn1yZXR1cm4gTkEoaSxbe2tleToibmFtZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaW5kZXg/dGhpcy5pbmRleC5pc09iamVjdFByb3BlcnR5KCk/dGhpcy5pbmRleC5nZXRPYmplY3RQcm9wZXJ0eSgpOiIiOnRoaXMub2JqZWN0Lm5hbWV8fCIifX0se2tleToidHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRnfX0se2tleToiaXNBc3NpZ25tZW50Tm9kZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuITB9fSx7a2V5OiJfY29tcGlsZSIsdmFsdWU6ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLm9iamVjdC5fY29tcGlsZShBLGUpLG49dGhpcy5pbmRleD90aGlzLmluZGV4Ll9jb21waWxlKEEsZSk6bnVsbCxpPXRoaXMudmFsdWUuX2NvbXBpbGUoQSxlKSxzPXRoaXMub2JqZWN0Lm5hbWU7aWYodGhpcy5pbmRleCl7aWYodGhpcy5pbmRleC5pc09iamVjdFByb3BlcnR5KCkpe3ZhciBhPXRoaXMuaW5kZXguZ2V0T2JqZWN0UHJvcGVydHkoKTtyZXR1cm4gZnVuY3Rpb24oQSxlLG4pe3ZhciByPXQoQSxlLG4pLG89aShBLGUsbik7cmV0dXJuIHlBKHIsYSxvKSxvfX1pZih6KHRoaXMub2JqZWN0KSlyZXR1cm4gZnVuY3Rpb24oQSxlLHIpe3ZhciBhPXQoQSxlLHIpLEI9aShBLGUsciksYz1uKEEsZSxhKTtyZXR1cm4gQS5zZXQocyxvKGEsYyxCKSksQn07dmFyIEI9dGhpcy5vYmplY3Qub2JqZWN0Ll9jb21waWxlKEEsZSk7aWYodGhpcy5vYmplY3QuaW5kZXguaXNPYmplY3RQcm9wZXJ0eSgpKXt2YXIgYz10aGlzLm9iamVjdC5pbmRleC5nZXRPYmplY3RQcm9wZXJ0eSgpO3JldHVybiBmdW5jdGlvbihBLGUsdCl7dmFyIHI9QihBLGUsdCkscz1VQShyLGMpLGE9bihBLGUscyksZz1pKEEsZSx0KTtyZXR1cm4geUEocixjLG8ocyxhLGcpKSxnfX12YXIgZz10aGlzLm9iamVjdC5pbmRleC5fY29tcGlsZShBLGUpO3JldHVybiBmdW5jdGlvbihBLGUsdCl7dmFyIHM9QihBLGUsdCksYT1nKEEsZSxzKSxjPXIocyxhKSxFPW4oQSxlLGMpLFE9aShBLGUsdCk7cmV0dXJuIG8ocyxhLG8oYyxFLFEpKSxRfX1pZigheih0aGlzLm9iamVjdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sTm9kZSBleHBlY3RlZCBhcyBvYmplY3QiKTtyZXR1cm4gZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWkoQSxlLHQpO3JldHVybiBBLnNldChzLG4pLG59fX0se2tleToiZm9yRWFjaCIsdmFsdWU6ZnVuY3Rpb24oQSl7QSh0aGlzLm9iamVjdCwib2JqZWN0Iix0aGlzKSx0aGlzLmluZGV4JiZBKHRoaXMuaW5kZXgsImluZGV4Iix0aGlzKSxBKHRoaXMudmFsdWUsInZhbHVlIix0aGlzKX19LHtrZXk6Im1hcCIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBpKHRoaXMuX2lmTm9kZShBKHRoaXMub2JqZWN0LCJvYmplY3QiLHRoaXMpKSx0aGlzLmluZGV4P3RoaXMuX2lmTm9kZShBKHRoaXMuaW5kZXgsImluZGV4Iix0aGlzKSk6bnVsbCx0aGlzLl9pZk5vZGUoQSh0aGlzLnZhbHVlLCJ2YWx1ZSIsdGhpcykpKX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgaSh0aGlzLm9iamVjdCx0aGlzLmluZGV4LHRoaXMudmFsdWUpfX0se2tleToiX3RvU3RyaW5nIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT10aGlzLm9iamVjdC50b1N0cmluZyhBKSx0PXRoaXMuaW5kZXg/dGhpcy5pbmRleC50b1N0cmluZyhBKToiIixuPXRoaXMudmFsdWUudG9TdHJpbmcoQSk7cmV0dXJuIHModGhpcyxBJiZBLnBhcmVudGhlc2lzLEEmJkEuaW1wbGljaXQpJiYobj0iKCIrbisiKSIpLGUrdCsiID0gIitufX0se2tleToidG9KU09OIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybnttYXRoanM6dGcsb2JqZWN0OnRoaXMub2JqZWN0LGluZGV4OnRoaXMuaW5kZXgsdmFsdWU6dGhpcy52YWx1ZX19fSx7a2V5OiJ0b0hUTUwiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMub2JqZWN0LnRvSFRNTChBKSx0PXRoaXMuaW5kZXg/dGhpcy5pbmRleC50b0hUTUwoQSk6IiIsbj10aGlzLnZhbHVlLnRvSFRNTChBKTtyZXR1cm4gcyh0aGlzLEEmJkEucGFyZW50aGVzaXMsQSYmQS5pbXBsaWNpdCkmJihuPSc8c3BhbiBjbGFzcz0ibWF0aC1wYXJhbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4oPC9zcGFuPicrbisnPHNwYW4gY2xhc3M9Im1hdGgtcGFyYW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KTwvc3Bhbj4nKSxlK3QrJzxzcGFuIGNsYXNzPSJtYXRoLW9wZXJhdG9yIG1hdGgtYXNzaWdubWVudC1vcGVyYXRvciBtYXRoLXZhcmlhYmxlLWFzc2lnbm1lbnQtb3BlcmF0b3IgbWF0aC1iaW5hcnktb3BlcmF0b3IiPj08L3NwYW4+JytufX0se2tleToiX3RvVGV4Iix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT10aGlzLm9iamVjdC50b1RleChBKSx0PXRoaXMuaW5kZXg/dGhpcy5pbmRleC50b1RleChBKToiIixuPXRoaXMudmFsdWUudG9UZXgoQSk7cmV0dXJuIHModGhpcyxBJiZBLnBhcmVudGhlc2lzLEEmJkEuaW1wbGljaXQpJiYobj0iXFxsZWZ0KCIuY29uY2F0KG4sIlxccmlnaHQpIikpLGUrdCsiOj0iK259fV0sW3trZXk6ImZyb21KU09OIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGkoQS5vYmplY3QsQS5pbmRleCxBLnZhbHVlKX19XSksaX0oaSk7cmV0dXJuIElyKGEsIm5hbWUiLHRnKSxhfSkse2lzQ2xhc3M6ITAsaXNOb2RlOiEwfSksaWc9IkJsb2NrTm9kZSIscmc9cEEoaWcsWyJSZXN1bHRTZXQiLCJOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuUmVzdWx0U2V0LHQ9ZnVuY3Rpb24oQSl7SmMocixBKTt2YXIgdCxuLGk9KHQ9cixuPWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBSZWZsZWN0fHwhUmVmbGVjdC5jb25zdHJ1Y3QpcmV0dXJuITE7aWYoUmVmbGVjdC5jb25zdHJ1Y3Quc2hhbSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUHJveHkpcmV0dXJuITA7dHJ5e3JldHVybiBCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbixbXSwoZnVuY3Rpb24oKXt9KSkpLCEwfWNhdGNoKEEpe3JldHVybiExfX0oKSxmdW5jdGlvbigpe3ZhciBBLGU9TGModCk7aWYobil7dmFyIGk9TGModGhpcykuY29uc3RydWN0b3I7QT1SZWZsZWN0LmNvbnN0cnVjdChlLGFyZ3VtZW50cyxpKX1lbHNlIEE9ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIHpjKHRoaXMsQSl9KTtmdW5jdGlvbiByKEEpe3ZhciBlO2lmKERBKHRoaXMsciksZT1pLmNhbGwodGhpcyksIUFycmF5LmlzQXJyYXkoQSkpdGhyb3cgbmV3IEVycm9yKCJBcnJheSBleHBlY3RlZCIpO3JldHVybiBlLmJsb2Nrcz1BLm1hcCgoZnVuY3Rpb24oQSl7dmFyIGU9QSYmQS5ub2RlLHQ9IUF8fHZvaWQgMD09PUEudmlzaWJsZXx8QS52aXNpYmxlO2lmKCFiKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoJ1Byb3BlcnR5ICJub2RlIiBtdXN0IGJlIGEgTm9kZScpO2lmKCJib29sZWFuIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcignUHJvcGVydHkgInZpc2libGUiIG11c3QgYmUgYSBib29sZWFuJyk7cmV0dXJue25vZGU6ZSx2aXNpYmxlOnR9fSkpLGV9cmV0dXJuIE5BKHIsW3trZXk6InR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBpZ319LHtrZXk6ImlzQmxvY2tOb2RlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH19LHtrZXk6Il9jb21waWxlIix2YWx1ZTpmdW5jdGlvbihBLHQpe3ZhciBuPUVuKHRoaXMuYmxvY2tzLChmdW5jdGlvbihlKXtyZXR1cm57ZXZhbHVhdGU6ZS5ub2RlLl9jb21waWxlKEEsdCksdmlzaWJsZTplLnZpc2libGV9fSkpO3JldHVybiBmdW5jdGlvbihBLHQsaSl7dmFyIHI9W107cmV0dXJuIFFuKG4sKGZ1bmN0aW9uKGUpe3ZhciBuPWUuZXZhbHVhdGUoQSx0LGkpO2UudmlzaWJsZSYmci5wdXNoKG4pfSkpLG5ldyBlKHIpfX19LHtrZXk6ImZvckVhY2giLHZhbHVlOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0wO2U8dGhpcy5ibG9ja3MubGVuZ3RoO2UrKylBKHRoaXMuYmxvY2tzW2VdLm5vZGUsImJsb2Nrc1siK2UrIl0ubm9kZSIsdGhpcyl9fSx7a2V5OiJtYXAiLHZhbHVlOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1bXSx0PTA7dDx0aGlzLmJsb2Nrcy5sZW5ndGg7dCsrKXt2YXIgbj10aGlzLmJsb2Nrc1t0XSxpPXRoaXMuX2lmTm9kZShBKG4ubm9kZSwiYmxvY2tzWyIrdCsiXS5ub2RlIix0aGlzKSk7ZVt0XT17bm9kZTppLHZpc2libGU6bi52aXNpYmxlfX1yZXR1cm4gbmV3IHIoZSl9fSx7a2V5OiJjbG9uZSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHIodGhpcy5ibG9ja3MubWFwKChmdW5jdGlvbihBKXtyZXR1cm57bm9kZTpBLm5vZGUsdmlzaWJsZTpBLnZpc2libGV9fSkpKX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuYmxvY2tzLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUubm9kZS50b1N0cmluZyhBKSsoZS52aXNpYmxlPyIiOiI7Iil9KSkuam9pbigiXG4iKX19LHtrZXk6InRvSlNPTiIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOmlnLGJsb2Nrczp0aGlzLmJsb2Nrc319fSx7a2V5OiJ0b0hUTUwiLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmJsb2Nrcy5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLm5vZGUudG9IVE1MKEEpKyhlLnZpc2libGU/IiI6JzxzcGFuIGNsYXNzPSJtYXRoLXNlcGFyYXRvciI+Ozwvc3Bhbj4nKX0pKS5qb2luKCc8c3BhbiBjbGFzcz0ibWF0aC1zZXBhcmF0b3IiPjxiciAvPjwvc3Bhbj4nKX19LHtrZXk6Il90b1RleCIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuYmxvY2tzLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUubm9kZS50b1RleChBKSsoZS52aXNpYmxlPyIiOiI7Iil9KSkuam9pbigiXFw7XFw7XG4iKX19XSxbe2tleToiZnJvbUpTT04iLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBLmJsb2Nrcyl9fV0pLHJ9KEEuTm9kZSk7cmV0dXJuIElyKHQsIm5hbWUiLGlnKSx0fSkse2lzQ2xhc3M6ITAsaXNOb2RlOiEwfSksb2c9IkNvbmRpdGlvbmFsTm9kZSIsc2c9cEEob2csWyJOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEpe0pjKGksQSk7dmFyIGUsdCxuPShlPWksdD1mdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgUmVmbGVjdHx8IVJlZmxlY3QuY29uc3RydWN0KXJldHVybiExO2lmKFJlZmxlY3QuY29uc3RydWN0LnNoYW0pcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIFByb3h5KXJldHVybiEwO3RyeXtyZXR1cm4gQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sW10sKGZ1bmN0aW9uKCl7fSkpKSwhMH1jYXRjaChBKXtyZXR1cm4hMX19KCksZnVuY3Rpb24oKXt2YXIgQSxuPUxjKGUpO2lmKHQpe3ZhciBpPUxjKHRoaXMpLmNvbnN0cnVjdG9yO0E9UmVmbGVjdC5jb25zdHJ1Y3Qobixhcmd1bWVudHMsaSl9ZWxzZSBBPW4uYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiB6Yyh0aGlzLEEpfSk7ZnVuY3Rpb24gaShBLGUsdCl7dmFyIHI7aWYoREEodGhpcyxpKSxyPW4uY2FsbCh0aGlzKSwhYihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJQYXJhbWV0ZXIgY29uZGl0aW9uIG11c3QgYmUgYSBOb2RlIik7aWYoIWIoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiUGFyYW1ldGVyIHRydWVFeHByIG11c3QgYmUgYSBOb2RlIik7aWYoIWIodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiUGFyYW1ldGVyIGZhbHNlRXhwciBtdXN0IGJlIGEgTm9kZSIpO3JldHVybiByLmNvbmRpdGlvbj1BLHIudHJ1ZUV4cHI9ZSxyLmZhbHNlRXhwcj10LHJ9cmV0dXJuIE5BKGksW3trZXk6InR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBvZ319LHtrZXk6ImlzQ29uZGl0aW9uYWxOb2RlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH19LHtrZXk6Il9jb21waWxlIix2YWx1ZTpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuY29uZGl0aW9uLl9jb21waWxlKEEsZSksbj10aGlzLnRydWVFeHByLl9jb21waWxlKEEsZSksaT10aGlzLmZhbHNlRXhwci5fY29tcGlsZShBLGUpO3JldHVybiBmdW5jdGlvbihBLGUscyl7cmV0dXJuIGZ1bmN0aW9uKEEpe2lmKCJudW1iZXIiPT10eXBlb2YgQXx8ImJvb2xlYW4iPT10eXBlb2YgQXx8InN0cmluZyI9PXR5cGVvZiBBKXJldHVybiEhQTtpZihBKXtpZihyKEEpKXJldHVybiFBLmlzWmVybygpO2lmKG8oQSkpcmV0dXJuISghQS5yZSYmIUEuaW0pO2lmKGEoQSkpcmV0dXJuISFBLnZhbHVlfWlmKG51bGw9PUEpcmV0dXJuITE7dGhyb3cgbmV3IFR5cGVFcnJvcignVW5zdXBwb3J0ZWQgdHlwZSBvZiBjb25kaXRpb24gIicrUChBKSsnIicpfSh0KEEsZSxzKSk/bihBLGUscyk6aShBLGUscyl9fX0se2tleToiZm9yRWFjaCIsdmFsdWU6ZnVuY3Rpb24oQSl7QSh0aGlzLmNvbmRpdGlvbiwiY29uZGl0aW9uIix0aGlzKSxBKHRoaXMudHJ1ZUV4cHIsInRydWVFeHByIix0aGlzKSxBKHRoaXMuZmFsc2VFeHByLCJmYWxzZUV4cHIiLHRoaXMpfX0se2tleToibWFwIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGkodGhpcy5faWZOb2RlKEEodGhpcy5jb25kaXRpb24sImNvbmRpdGlvbiIsdGhpcykpLHRoaXMuX2lmTm9kZShBKHRoaXMudHJ1ZUV4cHIsInRydWVFeHByIix0aGlzKSksdGhpcy5faWZOb2RlKEEodGhpcy5mYWxzZUV4cHIsImZhbHNlRXhwciIsdGhpcykpKX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgaSh0aGlzLmNvbmRpdGlvbix0aGlzLnRydWVFeHByLHRoaXMuZmFsc2VFeHByKX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9QSYmQS5wYXJlbnRoZXNpcz9BLnBhcmVudGhlc2lzOiJrZWVwIix0PSRjKHRoaXMsZSxBJiZBLmltcGxpY2l0KSxuPXRoaXMuY29uZGl0aW9uLnRvU3RyaW5nKEEpLGk9JGModGhpcy5jb25kaXRpb24sZSxBJiZBLmltcGxpY2l0KTsoImFsbCI9PT1lfHwiT3BlcmF0b3JOb2RlIj09PXRoaXMuY29uZGl0aW9uLnR5cGV8fG51bGwhPT1pJiZpPD10KSYmKG49IigiK24rIikiKTt2YXIgcj10aGlzLnRydWVFeHByLnRvU3RyaW5nKEEpLG89JGModGhpcy50cnVlRXhwcixlLEEmJkEuaW1wbGljaXQpOygiYWxsIj09PWV8fCJPcGVyYXRvck5vZGUiPT09dGhpcy50cnVlRXhwci50eXBlfHxudWxsIT09byYmbzw9dCkmJihyPSIoIityKyIpIik7dmFyIHM9dGhpcy5mYWxzZUV4cHIudG9TdHJpbmcoQSksYT0kYyh0aGlzLmZhbHNlRXhwcixlLEEmJkEuaW1wbGljaXQpO3JldHVybigiYWxsIj09PWV8fCJPcGVyYXRvck5vZGUiPT09dGhpcy5mYWxzZUV4cHIudHlwZXx8bnVsbCE9PWEmJmE8PXQpJiYocz0iKCIrcysiKSIpLG4rIiA/ICIrcisiIDogIitzfX0se2tleToidG9KU09OIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybnttYXRoanM6b2csY29uZGl0aW9uOnRoaXMuY29uZGl0aW9uLHRydWVFeHByOnRoaXMudHJ1ZUV4cHIsZmFsc2VFeHByOnRoaXMuZmFsc2VFeHByfX19LHtrZXk6InRvSFRNTCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9QSYmQS5wYXJlbnRoZXNpcz9BLnBhcmVudGhlc2lzOiJrZWVwIix0PSRjKHRoaXMsZSxBJiZBLmltcGxpY2l0KSxuPXRoaXMuY29uZGl0aW9uLnRvSFRNTChBKSxpPSRjKHRoaXMuY29uZGl0aW9uLGUsQSYmQS5pbXBsaWNpdCk7KCJhbGwiPT09ZXx8Ik9wZXJhdG9yTm9kZSI9PT10aGlzLmNvbmRpdGlvbi50eXBlfHxudWxsIT09aSYmaTw9dCkmJihuPSc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4oPC9zcGFuPicrbisnPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KTwvc3Bhbj4nKTt2YXIgcj10aGlzLnRydWVFeHByLnRvSFRNTChBKSxvPSRjKHRoaXMudHJ1ZUV4cHIsZSxBJiZBLmltcGxpY2l0KTsoImFsbCI9PT1lfHwiT3BlcmF0b3JOb2RlIj09PXRoaXMudHJ1ZUV4cHIudHlwZXx8bnVsbCE9PW8mJm88PXQpJiYocj0nPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KDwvc3Bhbj4nK3IrJzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPik8L3NwYW4+Jyk7dmFyIHM9dGhpcy5mYWxzZUV4cHIudG9IVE1MKEEpLGE9JGModGhpcy5mYWxzZUV4cHIsZSxBJiZBLmltcGxpY2l0KTtyZXR1cm4oImFsbCI9PT1lfHwiT3BlcmF0b3JOb2RlIj09PXRoaXMuZmFsc2VFeHByLnR5cGV8fG51bGwhPT1hJiZhPD10KSYmKHM9JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytzKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPicpLG4rJzxzcGFuIGNsYXNzPSJtYXRoLW9wZXJhdG9yIG1hdGgtY29uZGl0aW9uYWwtb3BlcmF0b3IiPj88L3NwYW4+JytyKyc8c3BhbiBjbGFzcz0ibWF0aC1vcGVyYXRvciBtYXRoLWNvbmRpdGlvbmFsLW9wZXJhdG9yIj46PC9zcGFuPicrc319LHtrZXk6Il90b1RleCIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIlxcYmVnaW57Y2FzZXN9IHsiK3RoaXMudHJ1ZUV4cHIudG9UZXgoQSkrIn0sICZcXHF1YWR7XFx0ZXh0e2lmIH1cXDsiK3RoaXMuY29uZGl0aW9uLnRvVGV4KEEpKyJ9XFxcXHsiK3RoaXMuZmFsc2VFeHByLnRvVGV4KEEpKyJ9LCAmXFxxdWFke1xcdGV4dHtvdGhlcndpc2V9fVxcZW5ke2Nhc2VzfSJ9fV0sW3trZXk6ImZyb21KU09OIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGkoQS5jb25kaXRpb24sQS50cnVlRXhwcixBLmZhbHNlRXhwcil9fV0pLGl9KEEuTm9kZSk7cmV0dXJuIElyKGUsIm5hbWUiLG9nKSxlfSkse2lzQ2xhc3M6ITAsaXNOb2RlOiEwfSksYWc9big3OTI4KSxCZz17QWxwaGE6IkEiLGFscGhhOiJcXGFscGhhIixCZXRhOiJCIixiZXRhOiJcXGJldGEiLEdhbW1hOiJcXEdhbW1hIixnYW1tYToiXFxnYW1tYSIsRGVsdGE6IlxcRGVsdGEiLGRlbHRhOiJcXGRlbHRhIixFcHNpbG9uOiJFIixlcHNpbG9uOiJcXGVwc2lsb24iLHZhcmVwc2lsb246IlxcdmFyZXBzaWxvbiIsWmV0YToiWiIsemV0YToiXFx6ZXRhIixFdGE6IkgiLGV0YToiXFxldGEiLFRoZXRhOiJcXFRoZXRhIix0aGV0YToiXFx0aGV0YSIsdmFydGhldGE6IlxcdmFydGhldGEiLElvdGE6IkkiLGlvdGE6IlxcaW90YSIsS2FwcGE6IksiLGthcHBhOiJcXGthcHBhIix2YXJrYXBwYToiXFx2YXJrYXBwYSIsTGFtYmRhOiJcXExhbWJkYSIsbGFtYmRhOiJcXGxhbWJkYSIsTXU6Ik0iLG11OiJcXG11IixOdToiTiIsbnU6IlxcbnUiLFhpOiJcXFhpIix4aToiXFx4aSIsT21pY3JvbjoiTyIsb21pY3JvbjoibyIsUGk6IlxcUGkiLHBpOiJcXHBpIix2YXJwaToiXFx2YXJwaSIsUmhvOiJQIixyaG86IlxccmhvIix2YXJyaG86IlxcdmFycmhvIixTaWdtYToiXFxTaWdtYSIsc2lnbWE6Ilxcc2lnbWEiLHZhcnNpZ21hOiJcXHZhcnNpZ21hIixUYXU6IlQiLHRhdToiXFx0YXUiLFVwc2lsb246IlxcVXBzaWxvbiIsdXBzaWxvbjoiXFx1cHNpbG9uIixQaGk6IlxcUGhpIixwaGk6IlxccGhpIix2YXJwaGk6IlxcdmFycGhpIixDaGk6IlgiLGNoaToiXFxjaGkiLFBzaToiXFxQc2kiLHBzaToiXFxwc2kiLE9tZWdhOiJcXE9tZWdhIixvbWVnYToiXFxvbWVnYSIsdHJ1ZToiXFxtYXRocm17VHJ1ZX0iLGZhbHNlOiJcXG1hdGhybXtGYWxzZX0iLGk6ImkiLGluZjoiXFxpbmZ0eSIsSW5mOiJcXGluZnR5IixpbmZpbml0eToiXFxpbmZ0eSIsSW5maW5pdHk6IlxcaW5mdHkiLG9vOiJcXGluZnR5IixsaW06IlxcbGltIix1bmRlZmluZWQ6IlxcbWF0aGJmez99In0sY2c9e3RyYW5zcG9zZToiXlxcdG9wIixjdHJhbnNwb3NlOiJeSCIsZmFjdG9yaWFsOiIhIixwb3c6Il4iLGRvdFBvdzoiLl5cXHdlZGdlIix1bmFyeVBsdXM6IisiLHVuYXJ5TWludXM6Ii0iLGJpdE5vdDoiXFx+Iixub3Q6IlxcbmVnIixtdWx0aXBseToiXFxjZG90IixkaXZpZGU6IlxcZnJhYyIsZG90TXVsdGlwbHk6Ii5cXGNkb3QiLGRvdERpdmlkZToiLjoiLG1vZDoiXFxtb2QiLGFkZDoiKyIsc3VidHJhY3Q6Ii0iLHRvOiJcXHJpZ2h0YXJyb3ciLGxlZnRTaGlmdDoiPDwiLHJpZ2h0QXJpdGhTaGlmdDoiPj4iLHJpZ2h0TG9nU2hpZnQ6Ij4+PiIsZXF1YWw6Ij0iLHVuZXF1YWw6IlxcbmVxIixzbWFsbGVyOiI8IixsYXJnZXI6Ij4iLHNtYWxsZXJFcToiXFxsZXEiLGxhcmdlckVxOiJcXGdlcSIsYml0QW5kOiJcXCYiLGJpdFhvcjoiXFx1bmRlcmxpbmV7fH0iLGJpdE9yOiJ8IixhbmQ6Ilxcd2VkZ2UiLHhvcjoiXFx2ZWViYXIiLG9yOiJcXHZlZSJ9LGdnPXthYnM6ezE6IlxcbGVmdHwke2FyZ3NbMF19XFxyaWdodHwifSxhZGQ6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cuYWRkLCIke2FyZ3NbMV19XFxyaWdodCkiKX0sY2JydDp7MToiXFxzcXJ0WzNdeyR7YXJnc1swXX19In0sY2VpbDp7MToiXFxsZWZ0XFxsY2VpbCR7YXJnc1swXX1cXHJpZ2h0XFxyY2VpbCJ9LGN1YmU6ezE6IlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCleMyJ9LGRpdmlkZTp7MjoiXFxmcmFjeyR7YXJnc1swXX19eyR7YXJnc1sxXX19In0sZG90RGl2aWRlOnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLmRvdERpdmlkZSwiJHthcmdzWzFdfVxccmlnaHQpIil9LGRvdE11bHRpcGx5OnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLmRvdE11bHRpcGx5LCIke2FyZ3NbMV19XFxyaWdodCkiKX0sZG90UG93OnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLmRvdFBvdywiJHthcmdzWzFdfVxccmlnaHQpIil9LGV4cDp7MToiXFxleHBcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sZXhwbTE6IlxcbGVmdChlIi5jb25jYXQoY2cucG93LCJ7JHthcmdzWzBdfX0tMVxccmlnaHQpIiksZml4OnsxOiJcXG1hdGhybXske25hbWV9fVxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxmbG9vcjp7MToiXFxsZWZ0XFxsZmxvb3Ike2FyZ3NbMF19XFxyaWdodFxccmZsb29yIn0sZ2NkOiJcXGdjZFxcbGVmdCgke2FyZ3N9XFxyaWdodCkiLGh5cG90OiJcXGh5cG90XFxsZWZ0KCR7YXJnc31cXHJpZ2h0KSIsbG9nOnsxOiJcXGxuXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSIsMjoiXFxsb2dfeyR7YXJnc1sxXX19XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGxvZzEwOnsxOiJcXGxvZ197MTB9XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGxvZzFwOnsxOiJcXGxuXFxsZWZ0KCR7YXJnc1swXX0rMVxccmlnaHQpIiwyOiJcXGxvZ197JHthcmdzWzFdfX1cXGxlZnQoJHthcmdzWzBdfSsxXFxyaWdodCkifSxsb2cyOiJcXGxvZ197Mn1cXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIixtb2Q6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cubW9kLCIke2FyZ3NbMV19XFxyaWdodCkiKX0sbXVsdGlwbHk6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cubXVsdGlwbHksIiR7YXJnc1sxXX1cXHJpZ2h0KSIpfSxub3JtOnsxOiJcXGxlZnRcXHwke2FyZ3NbMF19XFxyaWdodFxcfCIsMjp2b2lkIDB9LG50aFJvb3Q6ezI6Ilxcc3FydFske2FyZ3NbMV19XXske2FyZ3NbMF19fSJ9LG50aFJvb3RzOnsyOiJcXHt5IDogJHlee2FyZ3NbMV19ID0geyR7YXJnc1swXX19XFx9In0scG93OnsyOiJcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIi5jb25jYXQoY2cucG93LCJ7JHthcmdzWzFdfX0iKX0scm91bmQ6ezE6IlxcbGVmdFxcbGZsb29yJHthcmdzWzBdfVxccmlnaHRcXHJjZWlsIiwyOnZvaWQgMH0sc2lnbjp7MToiXFxtYXRocm17JHtuYW1lfX1cXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sc3FydDp7MToiXFxzcXJ0eyR7YXJnc1swXX19In0sc3F1YXJlOnsxOiJcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpXjIifSxzdWJ0cmFjdDp7MjoiXFxsZWZ0KCR7YXJnc1swXX0iLmNvbmNhdChjZy5zdWJ0cmFjdCwiJHthcmdzWzFdfVxccmlnaHQpIil9LHVuYXJ5TWludXM6ezE6IiIuY29uY2F0KGNnLnVuYXJ5TWludXMsIlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkiKX0sdW5hcnlQbHVzOnsxOiIiLmNvbmNhdChjZy51bmFyeVBsdXMsIlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkiKX0sYml0QW5kOnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLmJpdEFuZCwiJHthcmdzWzFdfVxccmlnaHQpIil9LGJpdE5vdDp7MTpjZy5iaXROb3QrIlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxiaXRPcjp7MjoiXFxsZWZ0KCR7YXJnc1swXX0iLmNvbmNhdChjZy5iaXRPciwiJHthcmdzWzFdfVxccmlnaHQpIil9LGJpdFhvcjp7MjoiXFxsZWZ0KCR7YXJnc1swXX0iLmNvbmNhdChjZy5iaXRYb3IsIiR7YXJnc1sxXX1cXHJpZ2h0KSIpfSxsZWZ0U2hpZnQ6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cubGVmdFNoaWZ0LCIke2FyZ3NbMV19XFxyaWdodCkiKX0scmlnaHRBcml0aFNoaWZ0OnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLnJpZ2h0QXJpdGhTaGlmdCwiJHthcmdzWzFdfVxccmlnaHQpIil9LHJpZ2h0TG9nU2hpZnQ6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cucmlnaHRMb2dTaGlmdCwiJHthcmdzWzFdfVxccmlnaHQpIil9LGJlbGxOdW1iZXJzOnsxOiJcXG1hdGhybXtCfV97JHthcmdzWzBdfX0ifSxjYXRhbGFuOnsxOiJcXG1hdGhybXtDfV97JHthcmdzWzBdfX0ifSxzdGlybGluZ1MyOnsyOiJcXG1hdGhybXtTfVxcbGVmdCgke2FyZ3N9XFxyaWdodCkifSxhcmc6ezE6IlxcYXJnXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGNvbmo6ezE6IlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCleKiJ9LGltOnsxOiJcXEltXFxsZWZ0XFxsYnJhY2Uke2FyZ3NbMF19XFxyaWdodFxccmJyYWNlIn0scmU6ezE6IlxcUmVcXGxlZnRcXGxicmFjZSR7YXJnc1swXX1cXHJpZ2h0XFxyYnJhY2UifSxhbmQ6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cuYW5kLCIke2FyZ3NbMV19XFxyaWdodCkiKX0sbm90OnsxOmNnLm5vdCsiXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LG9yOnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLm9yLCIke2FyZ3NbMV19XFxyaWdodCkiKX0seG9yOnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLnhvciwiJHthcmdzWzFdfVxccmlnaHQpIil9LGNyb3NzOnsyOiJcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpXFx0aW1lc1xcbGVmdCgke2FyZ3NbMV19XFxyaWdodCkifSxjdHJhbnNwb3NlOnsxOiJcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIi5jb25jYXQoY2cuY3RyYW5zcG9zZSl9LGRldDp7MToiXFxkZXRcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sZG90OnsyOiJcXGxlZnQoJHthcmdzWzBdfVxcY2RvdCR7YXJnc1sxXX1cXHJpZ2h0KSJ9LGV4cG06ezE6IlxcZXhwXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGludjp7MToiXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KV57LTF9In0scGludjp7MToiXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KV57K30ifSxzcXJ0bTp7MToieyR7YXJnc1swXX19Ii5jb25jYXQoY2cucG93LCJ7XFxmcmFjezF9ezJ9fSIpfSx0cmFjZTp7MToiXFxtYXRocm17dHJ9XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LHRyYW5zcG9zZTp7MToiXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSIuY29uY2F0KGNnLnRyYW5zcG9zZSl9LGNvbWJpbmF0aW9uczp7MjoiXFxiaW5vbXske2FyZ3NbMF19fXske2FyZ3NbMV19fSJ9LGNvbWJpbmF0aW9uc1dpdGhSZXA6ezI6IlxcbGVmdChcXCFcXCF7XFxiaW5vbXske2FyZ3NbMF19fXske2FyZ3NbMV19fX1cXCFcXCFcXHJpZ2h0KSJ9LGZhY3RvcmlhbDp7MToiXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSIuY29uY2F0KGNnLmZhY3RvcmlhbCl9LGdhbW1hOnsxOiJcXEdhbW1hXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGxnYW1tYTp7MToiXFxsblxcR2FtbWFcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sZXF1YWw6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cuZXF1YWwsIiR7YXJnc1sxXX1cXHJpZ2h0KSIpfSxsYXJnZXI6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cubGFyZ2VyLCIke2FyZ3NbMV19XFxyaWdodCkiKX0sbGFyZ2VyRXE6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cubGFyZ2VyRXEsIiR7YXJnc1sxXX1cXHJpZ2h0KSIpfSxzbWFsbGVyOnsyOiJcXGxlZnQoJHthcmdzWzBdfSIuY29uY2F0KGNnLnNtYWxsZXIsIiR7YXJnc1sxXX1cXHJpZ2h0KSIpfSxzbWFsbGVyRXE6ezI6IlxcbGVmdCgke2FyZ3NbMF19Ii5jb25jYXQoY2cuc21hbGxlckVxLCIke2FyZ3NbMV19XFxyaWdodCkiKX0sdW5lcXVhbDp7MjoiXFxsZWZ0KCR7YXJnc1swXX0iLmNvbmNhdChjZy51bmVxdWFsLCIke2FyZ3NbMV19XFxyaWdodCkiKX0sZXJmOnsxOiJlcmZcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sbWF4OiJcXG1heFxcbGVmdCgke2FyZ3N9XFxyaWdodCkiLG1pbjoiXFxtaW5cXGxlZnQoJHthcmdzfVxccmlnaHQpIix2YXJpYW5jZToiXFxtYXRocm17VmFyfVxcbGVmdCgke2FyZ3N9XFxyaWdodCkiLGFjb3M6ezE6IlxcY29zXnstMX1cXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sYWNvc2g6ezE6IlxcY29zaF57LTF9XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGFjb3Q6ezE6IlxcY290XnstMX1cXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sYWNvdGg6ezE6IlxcY290aF57LTF9XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGFjc2M6ezE6IlxcY3NjXnstMX1cXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sYWNzY2g6ezE6IlxcbWF0aHJte2NzY2h9XnstMX1cXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sYXNlYzp7MToiXFxzZWNeey0xfVxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxhc2VjaDp7MToiXFxtYXRocm17c2VjaH1eey0xfVxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxhc2luOnsxOiJcXHNpbl57LTF9XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGFzaW5oOnsxOiJcXHNpbmheey0xfVxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxhdGFuOnsxOiJcXHRhbl57LTF9XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGF0YW4yOnsyOiJcXG1hdGhybXthdGFuMn1cXGxlZnQoJHthcmdzfVxccmlnaHQpIn0sYXRhbmg6ezE6IlxcdGFuaF57LTF9XFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGNvczp7MToiXFxjb3NcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sY29zaDp7MToiXFxjb3NoXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGNvdDp7MToiXFxjb3RcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sY290aDp7MToiXFxjb3RoXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LGNzYzp7MToiXFxjc2NcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sY3NjaDp7MToiXFxtYXRocm17Y3NjaH1cXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIn0sc2VjOnsxOiJcXHNlY1xcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxzZWNoOnsxOiJcXG1hdGhybXtzZWNofVxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxzaW46ezE6Ilxcc2luXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LHNpbmg6ezE6Ilxcc2luaFxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSx0YW46ezE6IlxcdGFuXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LHRhbmg6ezE6IlxcdGFuaFxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSx0bzp7MjoiXFxsZWZ0KCR7YXJnc1swXX0iLmNvbmNhdChjZy50bywiJHthcmdzWzFdfVxccmlnaHQpIil9LG51bWVyaWM6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5hcmdzWzBdLnRvVGV4KCl9LG51bWJlcjp7MDoiMCIsMToiXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSIsMjoiXFxsZWZ0KFxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkke2FyZ3NbMV19XFxyaWdodCkifSxzdHJpbmc6ezA6J1xcbWF0aHR0eyIifScsMToiXFxtYXRocm17c3RyaW5nfVxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxiaWdudW1iZXI6ezA6IjAiLDE6IlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxjb21wbGV4OnswOiIwIiwxOiJcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpIiwyOiJcXGxlZnQoXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSsiLmNvbmNhdChCZy5pLCJcXGNkb3RcXGxlZnQoJHthcmdzWzFdfVxccmlnaHQpXFxyaWdodCkiKX0sbWF0cml4OnswOiJcXGJlZ2lue2JtYXRyaXh9XFxlbmR7Ym1hdHJpeH0iLDE6IlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkiLDI6IlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkifSxzcGFyc2U6ezA6IlxcYmVnaW57YnNwYXJzZX1cXGVuZHtic3BhcnNlfSIsMToiXFxsZWZ0KCR7YXJnc1swXX1cXHJpZ2h0KSJ9LHVuaXQ6ezE6IlxcbGVmdCgke2FyZ3NbMF19XFxyaWdodCkiLDI6IlxcbGVmdChcXGxlZnQoJHthcmdzWzBdfVxccmlnaHQpJHthcmdzWzFdfVxccmlnaHQpIn19LEVnPXtkZWc6Il5cXGNpcmMifTtmdW5jdGlvbiBRZyhBKXtyZXR1cm4gYWcoQSx7cHJlc2VydmVGb3JtYXR0aW5nOiEwfSl9ZnVuY3Rpb24gdWcoQSxlKXtyZXR1cm4oZT12b2lkIDAhPT1lJiZlKT9NQShFZyxBKT9FZ1tBXToiXFxtYXRocm17IitRZyhBKSsifSI6TUEoQmcsQSk/QmdbQV06UWcoQSl9dmFyIGxnPSJDb25zdGFudE5vZGUiLGhnPXBBKGxnLFsiTm9kZSJdLChmdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBKXtKYyhpLEEpO3ZhciBlLHQsbj0oZT1pLHQ9ZnVuY3Rpb24oKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLChmdW5jdGlvbigpe30pKSksITB9Y2F0Y2goQSl7cmV0dXJuITF9fSgpLGZ1bmN0aW9uKCl7dmFyIEEsbj1MYyhlKTtpZih0KXt2YXIgaT1MYyh0aGlzKS5jb25zdHJ1Y3RvcjtBPVJlZmxlY3QuY29uc3RydWN0KG4sYXJndW1lbnRzLGkpfWVsc2UgQT1uLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gemModGhpcyxBKX0pO2Z1bmN0aW9uIGkoQSl7dmFyIGU7cmV0dXJuIERBKHRoaXMsaSksKGU9bi5jYWxsKHRoaXMpKS52YWx1ZT1BLGV9cmV0dXJuIE5BKGksW3trZXk6InR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBsZ319LHtrZXk6ImlzQ29uc3RhbnROb2RlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH19LHtrZXk6Il9jb21waWxlIix2YWx1ZTpmdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMudmFsdWU7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIHR9fX0se2tleToiZm9yRWFjaCIsdmFsdWU6ZnVuY3Rpb24oQSl7fX0se2tleToibWFwIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5jbG9uZSgpfX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBpKHRoaXMudmFsdWUpfX0se2tleToiX3RvU3RyaW5nIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gVnQodGhpcy52YWx1ZSxBKX19LHtrZXk6InRvSFRNTCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5fdG9TdHJpbmcoQSk7c3dpdGNoKFAodGhpcy52YWx1ZSkpe2Nhc2UibnVtYmVyIjpjYXNlIkJpZ051bWJlciI6Y2FzZSJGcmFjdGlvbiI6cmV0dXJuJzxzcGFuIGNsYXNzPSJtYXRoLW51bWJlciI+JytlKyI8L3NwYW4+IjtjYXNlInN0cmluZyI6cmV0dXJuJzxzcGFuIGNsYXNzPSJtYXRoLXN0cmluZyI+JytlKyI8L3NwYW4+IjtjYXNlImJvb2xlYW4iOnJldHVybic8c3BhbiBjbGFzcz0ibWF0aC1ib29sZWFuIj4nK2UrIjwvc3Bhbj4iO2Nhc2UibnVsbCI6cmV0dXJuJzxzcGFuIGNsYXNzPSJtYXRoLW51bGwtc3ltYm9sIj4nK2UrIjwvc3Bhbj4iO2Nhc2UidW5kZWZpbmVkIjpyZXR1cm4nPHNwYW4gY2xhc3M9Im1hdGgtdW5kZWZpbmVkIj4nK2UrIjwvc3Bhbj4iO2RlZmF1bHQ6cmV0dXJuJzxzcGFuIGNsYXNzPSJtYXRoLXN5bWJvbCI+JytlKyI8L3NwYW4+In19fSx7a2V5OiJ0b0pTT04iLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJue21hdGhqczpsZyx2YWx1ZTp0aGlzLnZhbHVlfX19LHtrZXk6Il90b1RleCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5fdG9TdHJpbmcoQSk7c3dpdGNoKFAodGhpcy52YWx1ZSkpe2Nhc2Uic3RyaW5nIjpyZXR1cm4iXFxtYXRodHR7IitRZyhlKSsifSI7Y2FzZSJudW1iZXIiOmNhc2UiQmlnTnVtYmVyIjppZighaXNGaW5pdGUodGhpcy52YWx1ZSkpcmV0dXJuIHRoaXMudmFsdWUudmFsdWVPZigpPDA/Ii1cXGluZnR5IjoiXFxpbmZ0eSI7dmFyIHQ9ZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImUiKTtyZXR1cm4tMSE9PXQ/ZS5zdWJzdHJpbmcoMCx0KSsiXFxjZG90MTBeeyIrZS5zdWJzdHJpbmcodCsxKSsifSI6ZTtjYXNlIkZyYWN0aW9uIjpyZXR1cm4gdGhpcy52YWx1ZS50b0xhdGV4KCk7ZGVmYXVsdDpyZXR1cm4gZX19fV0sW3trZXk6ImZyb21KU09OIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGkoQS52YWx1ZSl9fV0pLGl9KEEuTm9kZSk7cmV0dXJuIElyKGUsIm5hbWUiLGxnKSxlfSkse2lzQ2xhc3M6ITAsaXNOb2RlOiEwfSk7ZnVuY3Rpb24gd2coQSxlKXsobnVsbD09ZXx8ZT5BLmxlbmd0aCkmJihlPUEubGVuZ3RoKTtmb3IodmFyIHQ9MCxuPW5ldyBBcnJheShlKTt0PGU7dCsrKW5bdF09QVt0XTtyZXR1cm4gbn12YXIgQ2c9IkZ1bmN0aW9uQXNzaWdubWVudE5vZGUiLElnPXBBKENnLFsidHlwZWQiLCJOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7ZnVuY3Rpb24gdChBLGUsdCl7dmFyIG49JGMoQSxlLHQpLGk9JGMoQS5leHByLGUsdCk7cmV0dXJuImFsbCI9PT1lfHxudWxsIT09aSYmaTw9bn12YXIgbj1mdW5jdGlvbihBKXtKYyhvLEEpO3ZhciBuLGkscj0obj1vLGk9ZnVuY3Rpb24oKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLChmdW5jdGlvbigpe30pKSksITB9Y2F0Y2goQSl7cmV0dXJuITF9fSgpLGZ1bmN0aW9uKCl7dmFyIEEsZT1MYyhuKTtpZihpKXt2YXIgdD1MYyh0aGlzKS5jb25zdHJ1Y3RvcjtBPVJlZmxlY3QuY29uc3RydWN0KGUsYXJndW1lbnRzLHQpfWVsc2UgQT1lLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gemModGhpcyxBKX0pO2Z1bmN0aW9uIG8oQSxlLHQpe3ZhciBuO2lmKERBKHRoaXMsbyksbj1yLmNhbGwodGhpcyksInN0cmluZyIhPXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoJ1N0cmluZyBleHBlY3RlZCBmb3IgcGFyYW1ldGVyICJuYW1lIicpO2lmKCFBcnJheS5pc0FycmF5KGUpKXRocm93IG5ldyBUeXBlRXJyb3IoJ0FycmF5IGNvbnRhaW5pbmcgc3RyaW5ncyBvciBvYmplY3RzIGV4cGVjdGVkIGZvciBwYXJhbWV0ZXIgInBhcmFtcyInKTtpZighYih0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCdOb2RlIGV4cGVjdGVkIGZvciBwYXJhbWV0ZXIgImV4cHIiJyk7aWYodmMuaGFzKEEpKXRocm93IG5ldyBFcnJvcignSWxsZWdhbCBmdW5jdGlvbiBuYW1lLCAiJytBKyciIGlzIGEgcmVzZXJ2ZWQga2V5d29yZCcpO3ZhciBpLHM9bmV3IFNldCxhPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJkFbU3ltYm9sLml0ZXJhdG9yXXx8QVsiQEBpdGVyYXRvciJdO2lmKCF0KXtpZihBcnJheS5pc0FycmF5KEEpfHwodD1mdW5jdGlvbihBLGUpe2lmKEEpe2lmKCJzdHJpbmciPT10eXBlb2YgQSlyZXR1cm4gd2coQSxlKTt2YXIgdD1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoQSkuc2xpY2UoOCwtMSk7cmV0dXJuIk9iamVjdCI9PT10JiZBLmNvbnN0cnVjdG9yJiYodD1BLmNvbnN0cnVjdG9yLm5hbWUpLCJNYXAiPT09dHx8IlNldCI9PT10P0FycmF5LmZyb20oQSk6IkFyZ3VtZW50cyI9PT10fHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdCh0KT93ZyhBLGUpOnZvaWQgMH19KEEpKSl7dCYmKEE9dCk7dmFyIG49MCxpPWZ1bmN0aW9uKCl7fTtyZXR1cm57czppLG46ZnVuY3Rpb24oKXtyZXR1cm4gbj49QS5sZW5ndGg/e2RvbmU6ITB9Ontkb25lOiExLHZhbHVlOkFbbisrXX19LGU6ZnVuY3Rpb24oQSl7dGhyb3cgQX0sZjppfX10aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gaXRlcmF0ZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9dmFyIHIsbz0hMCxzPSExO3JldHVybntzOmZ1bmN0aW9uKCl7dD10LmNhbGwoQSl9LG46ZnVuY3Rpb24oKXt2YXIgQT10Lm5leHQoKTtyZXR1cm4gbz1BLmRvbmUsQX0sZTpmdW5jdGlvbihBKXtzPSEwLHI9QX0sZjpmdW5jdGlvbigpe3RyeXtvfHxudWxsPT10LnJldHVybnx8dC5yZXR1cm4oKX1maW5hbGx5e2lmKHMpdGhyb3cgcn19fX0oZSk7dHJ5e2ZvcihhLnMoKTshKGk9YS5uKCkpLmRvbmU7KXt2YXIgQj1pLnZhbHVlLGM9InN0cmluZyI9PXR5cGVvZiBCP0I6Qi5uYW1lO2lmKHMuaGFzKGMpKXRocm93IG5ldyBFcnJvcignRHVwbGljYXRlIHBhcmFtZXRlciBuYW1lICInLmNvbmNhdChjLCciJykpO3MuYWRkKGMpfX1jYXRjaChBKXthLmUoQSl9ZmluYWxseXthLmYoKX1yZXR1cm4gbi5uYW1lPUEsbi5wYXJhbXM9ZS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBJiZBLm5hbWV8fEF9KSksbi50eXBlcz1lLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEmJkEudHlwZXx8ImFueSJ9KSksbi5leHByPXQsbn1yZXR1cm4gTkEobyxbe2tleToidHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIENnfX0se2tleToiaXNGdW5jdGlvbkFzc2lnbm1lbnROb2RlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH19LHtrZXk6Il9jb21waWxlIix2YWx1ZTpmdW5jdGlvbihBLHQpe3ZhciBuPU9iamVjdC5jcmVhdGUodCk7UW4odGhpcy5wYXJhbXMsKGZ1bmN0aW9uKEEpe25bQV09ITB9KSk7dmFyIGk9dGhpcy5leHByLl9jb21waWxlKEEsbikscj10aGlzLm5hbWUsbz10aGlzLnBhcmFtcyxzPWhuKHRoaXMudHlwZXMsIiwiKSxhPXIrIigiK2huKHRoaXMucGFyYW1zLCIsICIpKyIpIjtyZXR1cm4gZnVuY3Rpb24oQSx0LG4pe3ZhciBCPXt9O0Jbc109ZnVuY3Rpb24oKXtmb3IodmFyIGU9T2JqZWN0LmNyZWF0ZSh0KSxyPTA7cjxvLmxlbmd0aDtyKyspZVtvW3JdXT1hcmd1bWVudHNbcl07cmV0dXJuIGkoQSxlLG4pfTt2YXIgYz1lKHIsQik7cmV0dXJuIGMuc3ludGF4PWEsQS5zZXQocixjKSxjfX19LHtrZXk6ImZvckVhY2giLHZhbHVlOmZ1bmN0aW9uKEEpe0EodGhpcy5leHByLCJleHByIix0aGlzKX19LHtrZXk6Im1hcCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5faWZOb2RlKEEodGhpcy5leHByLCJleHByIix0aGlzKSk7cmV0dXJuIG5ldyBvKHRoaXMubmFtZSx0aGlzLnBhcmFtcy5zbGljZSgwKSxlKX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgbyh0aGlzLm5hbWUsdGhpcy5wYXJhbXMuc2xpY2UoMCksdGhpcy5leHByKX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9QSYmQS5wYXJlbnRoZXNpcz9BLnBhcmVudGhlc2lzOiJrZWVwIixuPXRoaXMuZXhwci50b1N0cmluZyhBKTtyZXR1cm4gdCh0aGlzLGUsQSYmQS5pbXBsaWNpdCkmJihuPSIoIituKyIpIiksdGhpcy5uYW1lKyIoIit0aGlzLnBhcmFtcy5qb2luKCIsICIpKyIpID0gIitufX0se2tleToidG9KU09OIix2YWx1ZTpmdW5jdGlvbigpe3ZhciBBPXRoaXMudHlwZXM7cmV0dXJue21hdGhqczpDZyxuYW1lOnRoaXMubmFtZSxwYXJhbXM6dGhpcy5wYXJhbXMubWFwKChmdW5jdGlvbihlLHQpe3JldHVybntuYW1lOmUsdHlwZTpBW3RdfX0pKSxleHByOnRoaXMuZXhwcn19fSx7a2V5OiJ0b0hUTUwiLHZhbHVlOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1BJiZBLnBhcmVudGhlc2lzP0EucGFyZW50aGVzaXM6ImtlZXAiLG49W10saT0wO2k8dGhpcy5wYXJhbXMubGVuZ3RoO2krKyluLnB1c2goJzxzcGFuIGNsYXNzPSJtYXRoLXN5bWJvbCBtYXRoLXBhcmFtZXRlciI+JytYdCh0aGlzLnBhcmFtc1tpXSkrIjwvc3Bhbj4iKTt2YXIgcj10aGlzLmV4cHIudG9IVE1MKEEpO3JldHVybiB0KHRoaXMsZSxBJiZBLmltcGxpY2l0KSYmKHI9JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytyKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPicpLCc8c3BhbiBjbGFzcz0ibWF0aC1mdW5jdGlvbiI+JytYdCh0aGlzLm5hbWUpKyc8L3NwYW4+PHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KDwvc3Bhbj4nK24uam9pbignPHNwYW4gY2xhc3M9Im1hdGgtc2VwYXJhdG9yIj4sPC9zcGFuPicpKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPjxzcGFuIGNsYXNzPSJtYXRoLW9wZXJhdG9yIG1hdGgtYXNzaWdubWVudC1vcGVyYXRvciBtYXRoLXZhcmlhYmxlLWFzc2lnbm1lbnQtb3BlcmF0b3IgbWF0aC1iaW5hcnktb3BlcmF0b3IiPj08L3NwYW4+JytyfX0se2tleToiX3RvVGV4Iix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT1BJiZBLnBhcmVudGhlc2lzP0EucGFyZW50aGVzaXM6ImtlZXAiLG49dGhpcy5leHByLnRvVGV4KEEpO3JldHVybiB0KHRoaXMsZSxBJiZBLmltcGxpY2l0KSYmKG49IlxcbGVmdCgiLmNvbmNhdChuLCJcXHJpZ2h0KSIpKSwiXFxtYXRocm17Iit0aGlzLm5hbWUrIn1cXGxlZnQoIit0aGlzLnBhcmFtcy5tYXAodWcpLmpvaW4oIiwiKSsiXFxyaWdodCk6PSIrbn19XSxbe2tleToiZnJvbUpTT04iLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgbyhBLm5hbWUsQS5wYXJhbXMsQS5leHByKX19XSksb30oQS5Ob2RlKTtyZXR1cm4gSXIobiwibmFtZSIsQ2cpLG59KSx7aXNDbGFzczohMCxpc05vZGU6ITB9KSxNZz0iSW5kZXhOb2RlIixkZz1wQShNZyxbIk5vZGUiLCJzaXplIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuTm9kZSx0PUEuc2l6ZSxuPWZ1bmN0aW9uKEEpe0pjKHIsQSk7dmFyIGUsbixpPShlPXIsbj1mdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgUmVmbGVjdHx8IVJlZmxlY3QuY29uc3RydWN0KXJldHVybiExO2lmKFJlZmxlY3QuY29uc3RydWN0LnNoYW0pcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIFByb3h5KXJldHVybiEwO3RyeXtyZXR1cm4gQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sW10sKGZ1bmN0aW9uKCl7fSkpKSwhMH1jYXRjaChBKXtyZXR1cm4hMX19KCksZnVuY3Rpb24oKXt2YXIgQSx0PUxjKGUpO2lmKG4pe3ZhciBpPUxjKHRoaXMpLmNvbnN0cnVjdG9yO0E9UmVmbGVjdC5jb25zdHJ1Y3QodCxhcmd1bWVudHMsaSl9ZWxzZSBBPXQuYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiB6Yyh0aGlzLEEpfSk7ZnVuY3Rpb24gcihBLGUpe3ZhciB0O2lmKERBKHRoaXMsciksKHQ9aS5jYWxsKHRoaXMpKS5kaW1lbnNpb25zPUEsdC5kb3ROb3RhdGlvbj1lfHwhMSwhQXJyYXkuaXNBcnJheShBKXx8IUEuZXZlcnkoYikpdGhyb3cgbmV3IFR5cGVFcnJvcignQXJyYXkgY29udGFpbmluZyBOb2RlcyBleHBlY3RlZCBmb3IgcGFyYW1ldGVyICJkaW1lbnNpb25zIicpO2lmKHQuZG90Tm90YXRpb24mJiF0LmlzT2JqZWN0UHJvcGVydHkoKSl0aHJvdyBuZXcgRXJyb3IoImRvdE5vdGF0aW9uIG9ubHkgYXBwbGljYWJsZSBmb3Igb2JqZWN0IHByb3BlcnRpZXMiKTtyZXR1cm4gdH1yZXR1cm4gTkEocixbe2tleToidHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE1nfX0se2tleToiaXNJbmRleE5vZGUiLGdldDpmdW5jdGlvbigpe3JldHVybiEwfX0se2tleToiX2NvbXBpbGUiLHZhbHVlOmZ1bmN0aW9uKEEsZSl7dmFyIG49RW4odGhpcy5kaW1lbnNpb25zLChmdW5jdGlvbihuLGkpe2lmKG4uZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gQS5pc1N5bWJvbE5vZGUmJiJlbmQiPT09QS5uYW1lfSkpLmxlbmd0aD4wKXt2YXIgcj1PYmplY3QuY3JlYXRlKGUpO3IuZW5kPSEwO3ZhciBvPW4uX2NvbXBpbGUoQSxyKTtyZXR1cm4gZnVuY3Rpb24oQSxlLG4pe2lmKCFnKG4pJiYhYyhuKSYmIUIobikpdGhyb3cgbmV3IFR5cGVFcnJvcignQ2Fubm90IHJlc29sdmUgImVuZCI6IGNvbnRleHQgbXVzdCBiZSBhIE1hdHJpeCwgQXJyYXksIG9yIHN0cmluZyBidXQgaXMgJytQKG4pKTt2YXIgcj10KG4pLnZhbHVlT2YoKSxzPU9iamVjdC5jcmVhdGUoZSk7cmV0dXJuIHMuZW5kPXJbaV0sbyhBLHMsbil9fXJldHVybiBuLl9jb21waWxlKEEsZSl9KSksaT1VQShBLCJpbmRleCIpO3JldHVybiBmdW5jdGlvbihBLGUsdCl7dmFyIHI9RW4obiwoZnVuY3Rpb24obil7cmV0dXJuIG4oQSxlLHQpfSkpO3JldHVybiBpLmFwcGx5KHZvaWQgMCx6dChyKSl9fX0se2tleToiZm9yRWFjaCIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTA7ZTx0aGlzLmRpbWVuc2lvbnMubGVuZ3RoO2UrKylBKHRoaXMuZGltZW5zaW9uc1tlXSwiZGltZW5zaW9uc1siK2UrIl0iLHRoaXMpfX0se2tleToibWFwIix2YWx1ZTpmdW5jdGlvbihBKXtmb3IodmFyIGU9W10sdD0wO3Q8dGhpcy5kaW1lbnNpb25zLmxlbmd0aDt0KyspZVt0XT10aGlzLl9pZk5vZGUoQSh0aGlzLmRpbWVuc2lvbnNbdF0sImRpbWVuc2lvbnNbIit0KyJdIix0aGlzKSk7cmV0dXJuIG5ldyByKGUsdGhpcy5kb3ROb3RhdGlvbil9fSx7a2V5OiJjbG9uZSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHIodGhpcy5kaW1lbnNpb25zLnNsaWNlKDApLHRoaXMuZG90Tm90YXRpb24pfX0se2tleToiaXNPYmplY3RQcm9wZXJ0eSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gMT09PXRoaXMuZGltZW5zaW9ucy5sZW5ndGgmJlQodGhpcy5kaW1lbnNpb25zWzBdKSYmInN0cmluZyI9PXR5cGVvZiB0aGlzLmRpbWVuc2lvbnNbMF0udmFsdWV9fSx7a2V5OiJnZXRPYmplY3RQcm9wZXJ0eSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pc09iamVjdFByb3BlcnR5KCk/dGhpcy5kaW1lbnNpb25zWzBdLnZhbHVlOm51bGx9fSx7a2V5OiJfdG9TdHJpbmciLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmRvdE5vdGF0aW9uPyIuIit0aGlzLmdldE9iamVjdFByb3BlcnR5KCk6IlsiK3RoaXMuZGltZW5zaW9ucy5qb2luKCIsICIpKyJdIn19LHtrZXk6InRvSlNPTiIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOk1nLGRpbWVuc2lvbnM6dGhpcy5kaW1lbnNpb25zLGRvdE5vdGF0aW9uOnRoaXMuZG90Tm90YXRpb259fX0se2tleToidG9IVE1MIix2YWx1ZTpmdW5jdGlvbihBKXtmb3IodmFyIGU9W10sdD0wO3Q8dGhpcy5kaW1lbnNpb25zLmxlbmd0aDt0KyspZVt0XT10aGlzLmRpbWVuc2lvbnNbdF0udG9IVE1MKCk7cmV0dXJuIHRoaXMuZG90Tm90YXRpb24/JzxzcGFuIGNsYXNzPSJtYXRoLW9wZXJhdG9yIG1hdGgtYWNjZXNzb3Itb3BlcmF0b3IiPi48L3NwYW4+PHNwYW4gY2xhc3M9Im1hdGgtc3ltYm9sIG1hdGgtcHJvcGVydHkiPicrWHQodGhpcy5nZXRPYmplY3RQcm9wZXJ0eSgpKSsiPC9zcGFuPiI6JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtc3F1YXJlLXBhcmVudGhlc2lzIj5bPC9zcGFuPicrZS5qb2luKCc8c3BhbiBjbGFzcz0ibWF0aC1zZXBhcmF0b3IiPiw8L3NwYW4+JykrJzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtc3F1YXJlLXBhcmVudGhlc2lzIj5dPC9zcGFuPid9fSx7a2V5OiJfdG9UZXgiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuZGltZW5zaW9ucy5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRvVGV4KEEpfSkpO3JldHVybiB0aGlzLmRvdE5vdGF0aW9uPyIuIit0aGlzLmdldE9iamVjdFByb3BlcnR5KCk6Il97IitlLmpvaW4oIiwiKSsifSJ9fV0sW3trZXk6ImZyb21KU09OIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQS5kaW1lbnNpb25zLEEuZG90Tm90YXRpb24pfX1dKSxyfShlKTtyZXR1cm4gSXIobiwibmFtZSIsTWcpLG59KSx7aXNDbGFzczohMCxpc05vZGU6ITB9KSxwZz0iT2JqZWN0Tm9kZSIsbWc9cEEocGcsWyJOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciB0PWZ1bmN0aW9uKEEpe0pjKHIsQSk7dmFyIHQsbixpPSh0PXIsbj1mdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgUmVmbGVjdHx8IVJlZmxlY3QuY29uc3RydWN0KXJldHVybiExO2lmKFJlZmxlY3QuY29uc3RydWN0LnNoYW0pcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIFByb3h5KXJldHVybiEwO3RyeXtyZXR1cm4gQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sW10sKGZ1bmN0aW9uKCl7fSkpKSwhMH1jYXRjaChBKXtyZXR1cm4hMX19KCksZnVuY3Rpb24oKXt2YXIgQSxlPUxjKHQpO2lmKG4pe3ZhciBpPUxjKHRoaXMpLmNvbnN0cnVjdG9yO0E9UmVmbGVjdC5jb25zdHJ1Y3QoZSxhcmd1bWVudHMsaSl9ZWxzZSBBPWUuYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiB6Yyh0aGlzLEEpfSk7ZnVuY3Rpb24gcihBKXt2YXIgdDtpZihEQSh0aGlzLHIpLCh0PWkuY2FsbCh0aGlzKSkucHJvcGVydGllcz1BfHx7fSxBJiYoIm9iamVjdCIhPT1lKEEpfHwhT2JqZWN0LmtleXMoQSkuZXZlcnkoKGZ1bmN0aW9uKGUpe3JldHVybiBiKEFbZV0pfSkpKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgY29udGFpbmluZyBOb2RlcyBleHBlY3RlZCIpO3JldHVybiB0fXJldHVybiBOQShyLFt7a2V5OiJ0eXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcGd9fSx7a2V5OiJpc09iamVjdE5vZGUiLGdldDpmdW5jdGlvbigpe3JldHVybiEwfX0se2tleToiX2NvbXBpbGUiLHZhbHVlOmZ1bmN0aW9uKEEsZSl7dmFyIHQ9e307Zm9yKHZhciBuIGluIHRoaXMucHJvcGVydGllcylpZihNQSh0aGlzLnByb3BlcnRpZXMsbikpe3ZhciBpPVd0KG4pLHI9SlNPTi5wYXJzZShpKSxvPVVBKHRoaXMucHJvcGVydGllcyxuKTt0W3JdPW8uX2NvbXBpbGUoQSxlKX1yZXR1cm4gZnVuY3Rpb24oQSxlLG4pe3ZhciBpPXt9O2Zvcih2YXIgciBpbiB0KU1BKHQscikmJihpW3JdPXRbcl0oQSxlLG4pKTtyZXR1cm4gaX19fSx7a2V5OiJmb3JFYWNoIix2YWx1ZTpmdW5jdGlvbihBKXtmb3IodmFyIGUgaW4gdGhpcy5wcm9wZXJ0aWVzKU1BKHRoaXMucHJvcGVydGllcyxlKSYmQSh0aGlzLnByb3BlcnRpZXNbZV0sInByb3BlcnRpZXNbIitXdChlKSsiXSIsdGhpcyl9fSx7a2V5OiJtYXAiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPXt9O2Zvcih2YXIgdCBpbiB0aGlzLnByb3BlcnRpZXMpTUEodGhpcy5wcm9wZXJ0aWVzLHQpJiYoZVt0XT10aGlzLl9pZk5vZGUoQSh0aGlzLnByb3BlcnRpZXNbdF0sInByb3BlcnRpZXNbIitXdCh0KSsiXSIsdGhpcykpKTtyZXR1cm4gbmV3IHIoZSl9fSx7a2V5OiJjbG9uZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgQT17fTtmb3IodmFyIGUgaW4gdGhpcy5wcm9wZXJ0aWVzKU1BKHRoaXMucHJvcGVydGllcyxlKSYmKEFbZV09dGhpcy5wcm9wZXJ0aWVzW2VdKTtyZXR1cm4gbmV3IHIoQSl9fSx7a2V5OiJfdG9TdHJpbmciLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPVtdO2Zvcih2YXIgdCBpbiB0aGlzLnByb3BlcnRpZXMpTUEodGhpcy5wcm9wZXJ0aWVzLHQpJiZlLnB1c2goV3QodCkrIjogIit0aGlzLnByb3BlcnRpZXNbdF0udG9TdHJpbmcoQSkpO3JldHVybiJ7IitlLmpvaW4oIiwgIikrIn0ifX0se2tleToidG9KU09OIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybnttYXRoanM6cGcscHJvcGVydGllczp0aGlzLnByb3BlcnRpZXN9fX0se2tleToidG9IVE1MIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT1bXTtmb3IodmFyIHQgaW4gdGhpcy5wcm9wZXJ0aWVzKU1BKHRoaXMucHJvcGVydGllcyx0KSYmZS5wdXNoKCc8c3BhbiBjbGFzcz0ibWF0aC1zeW1ib2wgbWF0aC1wcm9wZXJ0eSI+JytYdCh0KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJtYXRoLW9wZXJhdG9yIG1hdGgtYXNzaWdubWVudC1vcGVyYXRvciBtYXRoLXByb3BlcnR5LWFzc2lnbm1lbnQtb3BlcmF0b3IgbWF0aC1iaW5hcnktb3BlcmF0b3IiPjo8L3NwYW4+Jyt0aGlzLnByb3BlcnRpZXNbdF0udG9IVE1MKEEpKTtyZXR1cm4nPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1jdXJseS1wYXJlbnRoZXNpcyI+ezwvc3Bhbj4nK2Uuam9pbignPHNwYW4gY2xhc3M9Im1hdGgtc2VwYXJhdG9yIj4sPC9zcGFuPicpKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLWN1cmx5LXBhcmVudGhlc2lzIj59PC9zcGFuPid9fSx7a2V5OiJfdG9UZXgiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPVtdO2Zvcih2YXIgdCBpbiB0aGlzLnByb3BlcnRpZXMpTUEodGhpcy5wcm9wZXJ0aWVzLHQpJiZlLnB1c2goIlxcbWF0aGJmeyIrdCsiOn0gJiAiK3RoaXMucHJvcGVydGllc1t0XS50b1RleChBKSsiXFxcXCIpO3JldHVybiJcXGxlZnRcXHtcXGJlZ2lue2FycmF5fXtsbH0iK2Uuam9pbigiXG4iKSsiXFxlbmR7YXJyYXl9XFxyaWdodFxcfSJ9fV0sW3trZXk6ImZyb21KU09OIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQS5wcm9wZXJ0aWVzKX19XSkscn0oQS5Ob2RlKTtyZXR1cm4gSXIodCwibmFtZSIscGcpLHR9KSx7aXNDbGFzczohMCxpc05vZGU6ITB9KSxGZz0iT3BlcmF0b3JOb2RlIixEZz1wQShGZyxbIk5vZGUiXSwoZnVuY3Rpb24oQSl7ZnVuY3Rpb24gZShBLHQpe3ZhciBuPUE7aWYoImF1dG8iPT09dClmb3IoO2sobik7KW49bi5jb250ZW50O3JldHVybiEhVChuKXx8ISF2KG4pJiZlKG4uYXJnc1swXSx0KX1mdW5jdGlvbiB0KEEsdCxuLGkscil7dmFyIG8scz0kYyhBLHQsbiksYT1BZyhBLHQpO2lmKCJhbGwiPT09dHx8aS5sZW5ndGg+MiYmIk9wZXJhdG9yTm9kZTphZGQiIT09QS5nZXRJZGVudGlmaWVyKCkmJiJPcGVyYXRvck5vZGU6bXVsdGlwbHkiIT09QS5nZXRJZGVudGlmaWVyKCkpcmV0dXJuIGkubWFwKChmdW5jdGlvbihBKXtzd2l0Y2goQS5nZXRDb250ZW50KCkudHlwZSl7Y2FzZSJBcnJheU5vZGUiOmNhc2UiQ29uc3RhbnROb2RlIjpjYXNlIlN5bWJvbE5vZGUiOmNhc2UiUGFyZW50aGVzaXNOb2RlIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX0pKTtzd2l0Y2goaS5sZW5ndGgpe2Nhc2UgMDpvPVtdO2JyZWFrO2Nhc2UgMTp2YXIgQj0kYyhpWzBdLHQsbixBKTtpZihyJiZudWxsIT09Qil7dmFyIGMsZztpZigia2VlcCI9PT10PyhjPWlbMF0uZ2V0SWRlbnRpZmllcigpLGc9QS5nZXRJZGVudGlmaWVyKCkpOihjPWlbMF0uZ2V0Q29udGVudCgpLmdldElkZW50aWZpZXIoKSxnPUEuZ2V0Q29udGVudCgpLmdldElkZW50aWZpZXIoKSksITE9PT1fY1tzXVtnXS5sYXRleExlZnRQYXJlbnMpe289WyExXTticmVha31pZighMT09PV9jW0JdW2NdLmxhdGV4UGFyZW5zKXtvPVshMV07YnJlYWt9fWlmKG51bGw9PT1CKXtvPVshMV07YnJlYWt9aWYoQjw9cyl7bz1bITBdO2JyZWFrfW89WyExXTticmVhaztjYXNlIDI6dmFyIEUsUSx1PSRjKGlbMF0sdCxuLEEpLGw9ZWcoQSxpWzBdLHQpO0U9bnVsbCE9PXUmJih1PT09cyYmInJpZ2h0Ij09PWEmJiFsfHx1PHMpO3ZhciBoLHcsQyxJPSRjKGlbMV0sdCxuLEEpLE09ZWcoQSxpWzFdLHQpO1E9bnVsbCE9PUkmJihJPT09cyYmImxlZnQiPT09YSYmIU18fEk8cyksciYmKCJrZWVwIj09PXQ/KGg9QS5nZXRJZGVudGlmaWVyKCksdz1BLmFyZ3NbMF0uZ2V0SWRlbnRpZmllcigpLEM9QS5hcmdzWzFdLmdldElkZW50aWZpZXIoKSk6KGg9QS5nZXRDb250ZW50KCkuZ2V0SWRlbnRpZmllcigpLHc9QS5hcmdzWzBdLmdldENvbnRlbnQoKS5nZXRJZGVudGlmaWVyKCksQz1BLmFyZ3NbMV0uZ2V0Q29udGVudCgpLmdldElkZW50aWZpZXIoKSksbnVsbCE9PXUmJighMT09PV9jW3NdW2hdLmxhdGV4TGVmdFBhcmVucyYmKEU9ITEpLCExPT09X2NbdV1bd10ubGF0ZXhQYXJlbnMmJihFPSExKSksbnVsbCE9PUkmJighMT09PV9jW3NdW2hdLmxhdGV4UmlnaHRQYXJlbnMmJihRPSExKSwhMT09PV9jW0ldW0NdLmxhdGV4UGFyZW5zJiYoUT0hMSkpKSxvPVtFLFFdO2JyZWFrO2RlZmF1bHQ6Ik9wZXJhdG9yTm9kZTphZGQiIT09QS5nZXRJZGVudGlmaWVyKCkmJiJPcGVyYXRvck5vZGU6bXVsdGlwbHkiIT09QS5nZXRJZGVudGlmaWVyKCl8fChvPWkubWFwKChmdW5jdGlvbihlKXt2YXIgaT0kYyhlLHQsbixBKSxyPWVnKEEsZSx0KSxvPUFnKGUsdCk7cmV0dXJuIG51bGwhPT1pJiYocz09PWkmJmE9PT1vJiYhcnx8aTxzKX0pKSl9aWYoaS5sZW5ndGg+PTImJiJPcGVyYXRvck5vZGU6bXVsdGlwbHkiPT09QS5nZXRJZGVudGlmaWVyKCkmJkEuaW1wbGljaXQmJiJhbGwiIT09dCYmImhpZGUiPT09bilmb3IodmFyIGQ9MTtkPG8ubGVuZ3RoOysrZCkhZShpW2RdLHQpfHxvW2QtMV18fCJrZWVwIj09PXQmJmsoaVtkLTFdKXx8KG9bZF09ITApO3JldHVybiBvfXZhciBuPWZ1bmN0aW9uKEEpe0pjKHIsQSk7dmFyIGUsbixpPShlPXIsbj1mdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgUmVmbGVjdHx8IVJlZmxlY3QuY29uc3RydWN0KXJldHVybiExO2lmKFJlZmxlY3QuY29uc3RydWN0LnNoYW0pcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIFByb3h5KXJldHVybiEwO3RyeXtyZXR1cm4gQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sW10sKGZ1bmN0aW9uKCl7fSkpKSwhMH1jYXRjaChBKXtyZXR1cm4hMX19KCksZnVuY3Rpb24oKXt2YXIgQSx0PUxjKGUpO2lmKG4pe3ZhciBpPUxjKHRoaXMpLmNvbnN0cnVjdG9yO0E9UmVmbGVjdC5jb25zdHJ1Y3QodCxhcmd1bWVudHMsaSl9ZWxzZSBBPXQuYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiB6Yyh0aGlzLEEpfSk7ZnVuY3Rpb24gcihBLGUsdCxuLG8pe3ZhciBzO2lmKERBKHRoaXMscikscz1pLmNhbGwodGhpcyksInN0cmluZyIhPXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoJ3N0cmluZyBleHBlY3RlZCBmb3IgcGFyYW1ldGVyICJvcCInKTtpZigic3RyaW5nIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcignc3RyaW5nIGV4cGVjdGVkIGZvciBwYXJhbWV0ZXIgImZuIicpO2lmKCFBcnJheS5pc0FycmF5KHQpfHwhdC5ldmVyeShiKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdBcnJheSBjb250YWluaW5nIE5vZGVzIGV4cGVjdGVkIGZvciBwYXJhbWV0ZXIgImFyZ3MiJyk7cmV0dXJuIHMuaW1wbGljaXQ9ITA9PT1uLHMuaXNQZXJjZW50YWdlPSEwPT09byxzLm9wPUEscy5mbj1lLHMuYXJncz10fHxbXSxzfXJldHVybiBOQShyLFt7a2V5OiJ0eXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gRmd9fSx7a2V5OiJpc09wZXJhdG9yTm9kZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuITB9fSx7a2V5OiJfY29tcGlsZSIsdmFsdWU6ZnVuY3Rpb24oQSxlKXtpZigic3RyaW5nIiE9dHlwZW9mIHRoaXMuZm58fCF4QShBLHRoaXMuZm4pKXRocm93IEFbdGhpcy5mbl0/bmV3IEVycm9yKCdObyBhY2Nlc3MgdG8gZnVuY3Rpb24gIicrdGhpcy5mbisnIicpOm5ldyBFcnJvcigiRnVuY3Rpb24gIit0aGlzLmZuKycgbWlzc2luZyBpbiBwcm92aWRlZCBuYW1lc3BhY2UgIm1hdGgiJyk7dmFyIHQ9VUEoQSx0aGlzLmZuKSxuPUVuKHRoaXMuYXJncywoZnVuY3Rpb24odCl7cmV0dXJuIHQuX2NvbXBpbGUoQSxlKX0pKTtpZigxPT09bi5sZW5ndGgpe3ZhciBpPW5bMF07cmV0dXJuIGZ1bmN0aW9uKEEsZSxuKXtyZXR1cm4gdChpKEEsZSxuKSl9fWlmKDI9PT1uLmxlbmd0aCl7dmFyIHI9blswXSxvPW5bMV07cmV0dXJuIGZ1bmN0aW9uKEEsZSxuKXtyZXR1cm4gdChyKEEsZSxuKSxvKEEsZSxuKSl9fXJldHVybiBmdW5jdGlvbihBLGUsaSl7cmV0dXJuIHQuYXBwbHkobnVsbCxFbihuLChmdW5jdGlvbih0KXtyZXR1cm4gdChBLGUsaSl9KSkpfX19LHtrZXk6ImZvckVhY2giLHZhbHVlOmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0wO2U8dGhpcy5hcmdzLmxlbmd0aDtlKyspQSh0aGlzLmFyZ3NbZV0sImFyZ3NbIitlKyJdIix0aGlzKX19LHtrZXk6Im1hcCIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPVtdLHQ9MDt0PHRoaXMuYXJncy5sZW5ndGg7dCsrKWVbdF09dGhpcy5faWZOb2RlKEEodGhpcy5hcmdzW3RdLCJhcmdzWyIrdCsiXSIsdGhpcykpO3JldHVybiBuZXcgcih0aGlzLm9wLHRoaXMuZm4sZSx0aGlzLmltcGxpY2l0LHRoaXMuaXNQZXJjZW50YWdlKX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgcih0aGlzLm9wLHRoaXMuZm4sdGhpcy5hcmdzLnNsaWNlKDApLHRoaXMuaW1wbGljaXQsdGhpcy5pc1BlcmNlbnRhZ2UpfX0se2tleToiaXNVbmFyeSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gMT09PXRoaXMuYXJncy5sZW5ndGh9fSx7a2V5OiJpc0JpbmFyeSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gMj09PXRoaXMuYXJncy5sZW5ndGh9fSx7a2V5OiJfdG9TdHJpbmciLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPUEmJkEucGFyZW50aGVzaXM/QS5wYXJlbnRoZXNpczoia2VlcCIsbj1BJiZBLmltcGxpY2l0P0EuaW1wbGljaXQ6ImhpZGUiLGk9dGhpcy5hcmdzLHI9dCh0aGlzLGUsbixpLCExKTtpZigxPT09aS5sZW5ndGgpe3ZhciBvPUFnKHRoaXMsZSkscz1pWzBdLnRvU3RyaW5nKEEpO3JbMF0mJihzPSIoIitzKyIpIik7dmFyIGE9L1thLXpBLVpdKy8udGVzdCh0aGlzLm9wKTtyZXR1cm4icmlnaHQiPT09bz90aGlzLm9wKyhhPyIgIjoiIikrczoibGVmdCI9PT1vP3MrKGE/IiAiOiIiKSt0aGlzLm9wOnMrdGhpcy5vcH1pZigyPT09aS5sZW5ndGgpe3ZhciBCPWlbMF0udG9TdHJpbmcoQSksYz1pWzFdLnRvU3RyaW5nKEEpO3JldHVybiByWzBdJiYoQj0iKCIrQisiKSIpLHJbMV0mJihjPSIoIitjKyIpIiksdGhpcy5pbXBsaWNpdCYmIk9wZXJhdG9yTm9kZTptdWx0aXBseSI9PT10aGlzLmdldElkZW50aWZpZXIoKSYmImhpZGUiPT09bj9CKyIgIitjOkIrIiAiK3RoaXMub3ArIiAiK2N9aWYoaS5sZW5ndGg+MiYmKCJPcGVyYXRvck5vZGU6YWRkIj09PXRoaXMuZ2V0SWRlbnRpZmllcigpfHwiT3BlcmF0b3JOb2RlOm11bHRpcGx5Ij09PXRoaXMuZ2V0SWRlbnRpZmllcigpKSl7dmFyIGc9aS5tYXAoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9ZS50b1N0cmluZyhBKSxyW3RdJiYoZT0iKCIrZSsiKSIpLGV9KSk7cmV0dXJuIHRoaXMuaW1wbGljaXQmJiJPcGVyYXRvck5vZGU6bXVsdGlwbHkiPT09dGhpcy5nZXRJZGVudGlmaWVyKCkmJiJoaWRlIj09PW4/Zy5qb2luKCIgIik6Zy5qb2luKCIgIit0aGlzLm9wKyIgIil9cmV0dXJuIHRoaXMuZm4rIigiK3RoaXMuYXJncy5qb2luKCIsICIpKyIpIn19LHtrZXk6InRvSlNPTiIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm57bWF0aGpzOkZnLG9wOnRoaXMub3AsZm46dGhpcy5mbixhcmdzOnRoaXMuYXJncyxpbXBsaWNpdDp0aGlzLmltcGxpY2l0LGlzUGVyY2VudGFnZTp0aGlzLmlzUGVyY2VudGFnZX19fSx7a2V5OiJ0b0hUTUwiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPUEmJkEucGFyZW50aGVzaXM/QS5wYXJlbnRoZXNpczoia2VlcCIsbj1BJiZBLmltcGxpY2l0P0EuaW1wbGljaXQ6ImhpZGUiLGk9dGhpcy5hcmdzLHI9dCh0aGlzLGUsbixpLCExKTtpZigxPT09aS5sZW5ndGgpe3ZhciBvPUFnKHRoaXMsZSkscz1pWzBdLnRvSFRNTChBKTtyZXR1cm4gclswXSYmKHM9JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytzKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPicpLCJyaWdodCI9PT1vPyc8c3BhbiBjbGFzcz0ibWF0aC1vcGVyYXRvciBtYXRoLXVuYXJ5LW9wZXJhdG9yIG1hdGgtbGVmdGhhbmQtdW5hcnktb3BlcmF0b3IiPicrWHQodGhpcy5vcCkrIjwvc3Bhbj4iK3M6cysnPHNwYW4gY2xhc3M9Im1hdGgtb3BlcmF0b3IgbWF0aC11bmFyeS1vcGVyYXRvciBtYXRoLXJpZ2h0aGFuZC11bmFyeS1vcGVyYXRvciI+JytYdCh0aGlzLm9wKSsiPC9zcGFuPiJ9aWYoMj09PWkubGVuZ3RoKXt2YXIgYT1pWzBdLnRvSFRNTChBKSxCPWlbMV0udG9IVE1MKEEpO3JldHVybiByWzBdJiYoYT0nPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KDwvc3Bhbj4nK2ErJzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPik8L3NwYW4+JyksclsxXSYmKEI9JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytCKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPicpLHRoaXMuaW1wbGljaXQmJiJPcGVyYXRvck5vZGU6bXVsdGlwbHkiPT09dGhpcy5nZXRJZGVudGlmaWVyKCkmJiJoaWRlIj09PW4/YSsnPHNwYW4gY2xhc3M9Im1hdGgtb3BlcmF0b3IgbWF0aC1iaW5hcnktb3BlcmF0b3IgbWF0aC1pbXBsaWNpdC1iaW5hcnktb3BlcmF0b3IiPjwvc3Bhbj4nK0I6YSsnPHNwYW4gY2xhc3M9Im1hdGgtb3BlcmF0b3IgbWF0aC1iaW5hcnktb3BlcmF0b3IgbWF0aC1leHBsaWNpdC1iaW5hcnktb3BlcmF0b3IiPicrWHQodGhpcy5vcCkrIjwvc3Bhbj4iK0J9dmFyIGM9aS5tYXAoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9ZS50b0hUTUwoQSksclt0XSYmKGU9JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytlKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPicpLGV9KSk7cmV0dXJuIGkubGVuZ3RoPjImJigiT3BlcmF0b3JOb2RlOmFkZCI9PT10aGlzLmdldElkZW50aWZpZXIoKXx8Ik9wZXJhdG9yTm9kZTptdWx0aXBseSI9PT10aGlzLmdldElkZW50aWZpZXIoKSk/dGhpcy5pbXBsaWNpdCYmIk9wZXJhdG9yTm9kZTptdWx0aXBseSI9PT10aGlzLmdldElkZW50aWZpZXIoKSYmImhpZGUiPT09bj9jLmpvaW4oJzxzcGFuIGNsYXNzPSJtYXRoLW9wZXJhdG9yIG1hdGgtYmluYXJ5LW9wZXJhdG9yIG1hdGgtaW1wbGljaXQtYmluYXJ5LW9wZXJhdG9yIj48L3NwYW4+Jyk6Yy5qb2luKCc8c3BhbiBjbGFzcz0ibWF0aC1vcGVyYXRvciBtYXRoLWJpbmFyeS1vcGVyYXRvciBtYXRoLWV4cGxpY2l0LWJpbmFyeS1vcGVyYXRvciI+JytYdCh0aGlzLm9wKSsiPC9zcGFuPiIpOic8c3BhbiBjbGFzcz0ibWF0aC1mdW5jdGlvbiI+JytYdCh0aGlzLmZuKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJtYXRoLXBhcmFudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytjLmpvaW4oJzxzcGFuIGNsYXNzPSJtYXRoLXNlcGFyYXRvciI+LDwvc3Bhbj4nKSsnPHNwYW4gY2xhc3M9Im1hdGgtcGFyYW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KTwvc3Bhbj4nfX0se2tleToiX3RvVGV4Iix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT1BJiZBLnBhcmVudGhlc2lzP0EucGFyZW50aGVzaXM6ImtlZXAiLG49QSYmQS5pbXBsaWNpdD9BLmltcGxpY2l0OiJoaWRlIixpPXRoaXMuYXJncyxyPXQodGhpcyxlLG4saSwhMCksbz1jZ1t0aGlzLmZuXTtpZihvPXZvaWQgMD09PW8/dGhpcy5vcDpvLDE9PT1pLmxlbmd0aCl7dmFyIHM9QWcodGhpcyxlKSxhPWlbMF0udG9UZXgoQSk7cmV0dXJuIHJbMF0mJihhPSJcXGxlZnQoIi5jb25jYXQoYSwiXFxyaWdodCkiKSksInJpZ2h0Ij09PXM/bythOmErb31pZigyPT09aS5sZW5ndGgpe3ZhciBCPWlbMF0sYz1CLnRvVGV4KEEpO3JbMF0mJihjPSJcXGxlZnQoIi5jb25jYXQoYywiXFxyaWdodCkiKSk7dmFyIGcsRT1pWzFdLnRvVGV4KEEpO3N3aXRjaChyWzFdJiYoRT0iXFxsZWZ0KCIuY29uY2F0KEUsIlxccmlnaHQpIikpLGc9ImtlZXAiPT09ZT9CLmdldElkZW50aWZpZXIoKTpCLmdldENvbnRlbnQoKS5nZXRJZGVudGlmaWVyKCksdGhpcy5nZXRJZGVudGlmaWVyKCkpe2Nhc2UiT3BlcmF0b3JOb2RlOmRpdmlkZSI6cmV0dXJuIG8rInsiK2MrIn17IitFKyJ9IjtjYXNlIk9wZXJhdG9yTm9kZTpwb3ciOnN3aXRjaChjPSJ7IitjKyJ9IixFPSJ7IitFKyJ9IixnKXtjYXNlIkNvbmRpdGlvbmFsTm9kZSI6Y2FzZSJPcGVyYXRvck5vZGU6ZGl2aWRlIjpjPSJcXGxlZnQoIi5jb25jYXQoYywiXFxyaWdodCkiKX1icmVhaztjYXNlIk9wZXJhdG9yTm9kZTptdWx0aXBseSI6aWYodGhpcy5pbXBsaWNpdCYmImhpZGUiPT09bilyZXR1cm4gYysifiIrRX1yZXR1cm4gYytvK0V9aWYoaS5sZW5ndGg+MiYmKCJPcGVyYXRvck5vZGU6YWRkIj09PXRoaXMuZ2V0SWRlbnRpZmllcigpfHwiT3BlcmF0b3JOb2RlOm11bHRpcGx5Ij09PXRoaXMuZ2V0SWRlbnRpZmllcigpKSl7dmFyIFE9aS5tYXAoKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9ZS50b1RleChBKSxyW3RdJiYoZT0iXFxsZWZ0KCIuY29uY2F0KGUsIlxccmlnaHQpIikpLGV9KSk7cmV0dXJuIk9wZXJhdG9yTm9kZTptdWx0aXBseSI9PT10aGlzLmdldElkZW50aWZpZXIoKSYmdGhpcy5pbXBsaWNpdCYmImhpZGUiPT09bj9RLmpvaW4oIn4iKTpRLmpvaW4obyl9cmV0dXJuIlxcbWF0aHJteyIrdGhpcy5mbisifVxcbGVmdCgiK2kubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZS50b1RleChBKX0pKS5qb2luKCIsIikrIlxccmlnaHQpIn19LHtrZXk6ImdldElkZW50aWZpZXIiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudHlwZSsiOiIrdGhpcy5mbn19XSxbe2tleToiZnJvbUpTT04iLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBLm9wLEEuZm4sQS5hcmdzLEEuaW1wbGljaXQsQS5pc1BlcmNlbnRhZ2UpfX1dKSxyfShBLk5vZGUpO3JldHVybiBJcihuLCJuYW1lIixGZyksbn0pLHtpc0NsYXNzOiEwLGlzTm9kZTohMH0pLFlnPSJQYXJlbnRoZXNpc05vZGUiLGZnPXBBKFlnLFsiTm9kZSJdLChmdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBKXtKYyhpLEEpO3ZhciBlLHQsbj0oZT1pLHQ9ZnVuY3Rpb24oKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLChmdW5jdGlvbigpe30pKSksITB9Y2F0Y2goQSl7cmV0dXJuITF9fSgpLGZ1bmN0aW9uKCl7dmFyIEEsbj1MYyhlKTtpZih0KXt2YXIgaT1MYyh0aGlzKS5jb25zdHJ1Y3RvcjtBPVJlZmxlY3QuY29uc3RydWN0KG4sYXJndW1lbnRzLGkpfWVsc2UgQT1uLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gemModGhpcyxBKX0pO2Z1bmN0aW9uIGkoQSl7dmFyIGU7aWYoREEodGhpcyxpKSxlPW4uY2FsbCh0aGlzKSwhYihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdOb2RlIGV4cGVjdGVkIGZvciBwYXJhbWV0ZXIgImNvbnRlbnQiJyk7cmV0dXJuIGUuY29udGVudD1BLGV9cmV0dXJuIE5BKGksW3trZXk6InR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBZZ319LHtrZXk6ImlzUGFyZW50aGVzaXNOb2RlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH19LHtrZXk6Il9jb21waWxlIix2YWx1ZTpmdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLmNvbnRlbnQuX2NvbXBpbGUoQSxlKX19LHtrZXk6ImdldENvbnRlbnQiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29udGVudC5nZXRDb250ZW50KCl9fSx7a2V5OiJmb3JFYWNoIix2YWx1ZTpmdW5jdGlvbihBKXtBKHRoaXMuY29udGVudCwiY29udGVudCIsdGhpcyl9fSx7a2V5OiJtYXAiLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgaShBKHRoaXMuY29udGVudCwiY29udGVudCIsdGhpcykpfX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBpKHRoaXMuY29udGVudCl9fSx7a2V5OiJfdG9TdHJpbmciLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiFBfHxBJiYhQS5wYXJlbnRoZXNpc3x8QSYmImtlZXAiPT09QS5wYXJlbnRoZXNpcz8iKCIrdGhpcy5jb250ZW50LnRvU3RyaW5nKEEpKyIpIjp0aGlzLmNvbnRlbnQudG9TdHJpbmcoQSl9fSx7a2V5OiJ0b0pTT04iLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJue21hdGhqczpZZyxjb250ZW50OnRoaXMuY29udGVudH19fSx7a2V5OiJ0b0hUTUwiLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiFBfHxBJiYhQS5wYXJlbnRoZXNpc3x8QSYmImtlZXAiPT09QS5wYXJlbnRoZXNpcz8nPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KDwvc3Bhbj4nK3RoaXMuY29udGVudC50b0hUTUwoQSkrJzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPik8L3NwYW4+Jzp0aGlzLmNvbnRlbnQudG9IVE1MKEEpfX0se2tleToiX3RvVGV4Iix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4hQXx8QSYmIUEucGFyZW50aGVzaXN8fEEmJiJrZWVwIj09PUEucGFyZW50aGVzaXM/IlxcbGVmdCgiLmNvbmNhdCh0aGlzLmNvbnRlbnQudG9UZXgoQSksIlxccmlnaHQpIik6dGhpcy5jb250ZW50LnRvVGV4KEEpfX1dLFt7a2V5OiJmcm9tSlNPTiIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBpKEEuY29udGVudCl9fV0pLGl9KEEuTm9kZSk7cmV0dXJuIElyKGUsIm5hbWUiLFlnKSxlfSkse2lzQ2xhc3M6ITAsaXNOb2RlOiEwfSksTmc9IlJhbmdlTm9kZSIsVWc9cEEoTmcsWyJOb2RlIl0sKGZ1bmN0aW9uKEEpe2Z1bmN0aW9uIGUoQSxlLHQpe3ZhciBuPSRjKEEsZSx0KSxpPXt9LHI9JGMoQS5zdGFydCxlLHQpO2lmKGkuc3RhcnQ9bnVsbCE9PXImJnI8PW58fCJhbGwiPT09ZSxBLnN0ZXApe3ZhciBvPSRjKEEuc3RlcCxlLHQpO2kuc3RlcD1udWxsIT09byYmbzw9bnx8ImFsbCI9PT1lfXZhciBzPSRjKEEuZW5kLGUsdCk7cmV0dXJuIGkuZW5kPW51bGwhPT1zJiZzPD1ufHwiYWxsIj09PWUsaX12YXIgdD1mdW5jdGlvbihBKXtKYyhyLEEpO3ZhciB0LG4saT0odD1yLG49ZnVuY3Rpb24oKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIFJlZmxlY3R8fCFSZWZsZWN0LmNvbnN0cnVjdClyZXR1cm4hMTtpZihSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKXJldHVybiExO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBQcm94eSlyZXR1cm4hMDt0cnl7cmV0dXJuIEJvb2xlYW4ucHJvdG90eXBlLnZhbHVlT2YuY2FsbChSZWZsZWN0LmNvbnN0cnVjdChCb29sZWFuLFtdLChmdW5jdGlvbigpe30pKSksITB9Y2F0Y2goQSl7cmV0dXJuITF9fSgpLGZ1bmN0aW9uKCl7dmFyIEEsZT1MYyh0KTtpZihuKXt2YXIgaT1MYyh0aGlzKS5jb25zdHJ1Y3RvcjtBPVJlZmxlY3QuY29uc3RydWN0KGUsYXJndW1lbnRzLGkpfWVsc2UgQT1lLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gemModGhpcyxBKX0pO2Z1bmN0aW9uIHIoQSxlLHQpe3ZhciBuO2lmKERBKHRoaXMsciksbj1pLmNhbGwodGhpcyksIWIoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiTm9kZSBleHBlY3RlZCIpO2lmKCFiKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIk5vZGUgZXhwZWN0ZWQiKTtpZih0JiYhYih0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJOb2RlIGV4cGVjdGVkIik7aWYoYXJndW1lbnRzLmxlbmd0aD4zKXRocm93IG5ldyBFcnJvcigiVG9vIG1hbnkgYXJndW1lbnRzIik7cmV0dXJuIG4uc3RhcnQ9QSxuLmVuZD1lLG4uc3RlcD10fHxudWxsLG59cmV0dXJuIE5BKHIsW3trZXk6InR5cGUiLGdldDpmdW5jdGlvbigpe3JldHVybiBOZ319LHtrZXk6ImlzUmFuZ2VOb2RlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH19LHtrZXk6Im5lZWRzRW5kIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIHooQSkmJiJlbmQiPT09QS5uYW1lfSkpLmxlbmd0aD4wfX0se2tleToiX2NvbXBpbGUiLHZhbHVlOmZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS5yYW5nZSxuPXRoaXMuc3RhcnQuX2NvbXBpbGUoQSxlKSxpPXRoaXMuZW5kLl9jb21waWxlKEEsZSk7aWYodGhpcy5zdGVwKXt2YXIgcj10aGlzLnN0ZXAuX2NvbXBpbGUoQSxlKTtyZXR1cm4gZnVuY3Rpb24oQSxlLG8pe3JldHVybiB0KG4oQSxlLG8pLGkoQSxlLG8pLHIoQSxlLG8pKX19cmV0dXJuIGZ1bmN0aW9uKEEsZSxyKXtyZXR1cm4gdChuKEEsZSxyKSxpKEEsZSxyKSl9fX0se2tleToiZm9yRWFjaCIsdmFsdWU6ZnVuY3Rpb24oQSl7QSh0aGlzLnN0YXJ0LCJzdGFydCIsdGhpcyksQSh0aGlzLmVuZCwiZW5kIix0aGlzKSx0aGlzLnN0ZXAmJkEodGhpcy5zdGVwLCJzdGVwIix0aGlzKX19LHtrZXk6Im1hcCIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyByKHRoaXMuX2lmTm9kZShBKHRoaXMuc3RhcnQsInN0YXJ0Iix0aGlzKSksdGhpcy5faWZOb2RlKEEodGhpcy5lbmQsImVuZCIsdGhpcykpLHRoaXMuc3RlcCYmdGhpcy5faWZOb2RlKEEodGhpcy5zdGVwLCJzdGVwIix0aGlzKSkpfX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyByKHRoaXMuc3RhcnQsdGhpcy5lbmQsdGhpcy5zdGVwJiZ0aGlzLnN0ZXApfX0se2tleToiX3RvU3RyaW5nIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgdCxuPWUodGhpcyxBJiZBLnBhcmVudGhlc2lzP0EucGFyZW50aGVzaXM6ImtlZXAiLEEmJkEuaW1wbGljaXQpLGk9dGhpcy5zdGFydC50b1N0cmluZyhBKTtpZihuLnN0YXJ0JiYoaT0iKCIraSsiKSIpLHQ9aSx0aGlzLnN0ZXApe3ZhciByPXRoaXMuc3RlcC50b1N0cmluZyhBKTtuLnN0ZXAmJihyPSIoIityKyIpIiksdCs9IjoiK3J9dmFyIG89dGhpcy5lbmQudG9TdHJpbmcoQSk7cmV0dXJuIG4uZW5kJiYobz0iKCIrbysiKSIpLHQrIjoiK299fSx7a2V5OiJ0b0pTT04iLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJue21hdGhqczpOZyxzdGFydDp0aGlzLnN0YXJ0LGVuZDp0aGlzLmVuZCxzdGVwOnRoaXMuc3RlcH19fSx7a2V5OiJ0b0hUTUwiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciB0LG49ZSh0aGlzLEEmJkEucGFyZW50aGVzaXM/QS5wYXJlbnRoZXNpczoia2VlcCIsQSYmQS5pbXBsaWNpdCksaT10aGlzLnN0YXJ0LnRvSFRNTChBKTtpZihuLnN0YXJ0JiYoaT0nPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KDwvc3Bhbj4nK2krJzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPik8L3NwYW4+JyksdD1pLHRoaXMuc3RlcCl7dmFyIHI9dGhpcy5zdGVwLnRvSFRNTChBKTtuLnN0ZXAmJihyPSc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4oPC9zcGFuPicrcisnPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KTwvc3Bhbj4nKSx0Kz0nPHNwYW4gY2xhc3M9Im1hdGgtb3BlcmF0b3IgbWF0aC1yYW5nZS1vcGVyYXRvciI+Ojwvc3Bhbj4nK3J9dmFyIG89dGhpcy5lbmQudG9IVE1MKEEpO3JldHVybiBuLmVuZCYmKG89JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+JytvKyc8c3BhbiBjbGFzcz0ibWF0aC1wYXJlbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4pPC9zcGFuPicpLHQrJzxzcGFuIGNsYXNzPSJtYXRoLW9wZXJhdG9yIG1hdGgtcmFuZ2Utb3BlcmF0b3IiPjo8L3NwYW4+JytvfX0se2tleToiX3RvVGV4Iix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgdD1lKHRoaXMsQSYmQS5wYXJlbnRoZXNpcz9BLnBhcmVudGhlc2lzOiJrZWVwIixBJiZBLmltcGxpY2l0KSxuPXRoaXMuc3RhcnQudG9UZXgoQSk7aWYodC5zdGFydCYmKG49IlxcbGVmdCgiLmNvbmNhdChuLCJcXHJpZ2h0KSIpKSx0aGlzLnN0ZXApe3ZhciBpPXRoaXMuc3RlcC50b1RleChBKTt0LnN0ZXAmJihpPSJcXGxlZnQoIi5jb25jYXQoaSwiXFxyaWdodCkiKSksbis9IjoiK2l9dmFyIHI9dGhpcy5lbmQudG9UZXgoQSk7cmV0dXJuIHQuZW5kJiYocj0iXFxsZWZ0KCIuY29uY2F0KHIsIlxccmlnaHQpIikpLG4rIjoiK3J9fV0sW3trZXk6ImZyb21KU09OIix2YWx1ZTpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQS5zdGFydCxBLmVuZCxBLnN0ZXApfX1dKSxyfShBLk5vZGUpO3JldHVybiBJcih0LCJuYW1lIixOZyksdH0pLHtpc0NsYXNzOiEwLGlzTm9kZTohMH0pLHlnPSJSZWxhdGlvbmFsTm9kZSIsVGc9cEEoeWcsWyJOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuTm9kZSx0PXtlcXVhbDoiPT0iLHVuZXF1YWw6IiE9IixzbWFsbGVyOiI8IixsYXJnZXI6Ij4iLHNtYWxsZXJFcToiPD0iLGxhcmdlckVxOiI+PSJ9LG49ZnVuY3Rpb24oQSl7SmMocixBKTt2YXIgZSxuLGk9KGU9cixuPWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBSZWZsZWN0fHwhUmVmbGVjdC5jb25zdHJ1Y3QpcmV0dXJuITE7aWYoUmVmbGVjdC5jb25zdHJ1Y3Quc2hhbSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUHJveHkpcmV0dXJuITA7dHJ5e3JldHVybiBCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbixbXSwoZnVuY3Rpb24oKXt9KSkpLCEwfWNhdGNoKEEpe3JldHVybiExfX0oKSxmdW5jdGlvbigpe3ZhciBBLHQ9TGMoZSk7aWYobil7dmFyIGk9TGModGhpcykuY29uc3RydWN0b3I7QT1SZWZsZWN0LmNvbnN0cnVjdCh0LGFyZ3VtZW50cyxpKX1lbHNlIEE9dC5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIHpjKHRoaXMsQSl9KTtmdW5jdGlvbiByKEEsZSl7dmFyIHQ7aWYoREEodGhpcyxyKSx0PWkuY2FsbCh0aGlzKSwhQXJyYXkuaXNBcnJheShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJQYXJhbWV0ZXIgY29uZGl0aW9uYWxzIG11c3QgYmUgYW4gYXJyYXkiKTtpZighQXJyYXkuaXNBcnJheShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJQYXJhbWV0ZXIgcGFyYW1zIG11c3QgYmUgYW4gYXJyYXkiKTtpZihBLmxlbmd0aCE9PWUubGVuZ3RoLTEpdGhyb3cgbmV3IFR5cGVFcnJvcigiUGFyYW1ldGVyIHBhcmFtcyBtdXN0IGNvbnRhaW4gZXhhY3RseSBvbmUgbW9yZSBlbGVtZW50IHRoYW4gcGFyYW1ldGVyIGNvbmRpdGlvbmFscyIpO3JldHVybiB0LmNvbmRpdGlvbmFscz1BLHQucGFyYW1zPWUsdH1yZXR1cm4gTkEocixbe2tleToidHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHlnfX0se2tleToiaXNSZWxhdGlvbmFsTm9kZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuITB9fSx7a2V5OiJfY29tcGlsZSIsdmFsdWU6ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLG49dGhpcy5wYXJhbXMubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdC5fY29tcGlsZShBLGUpfSkpO3JldHVybiBmdW5jdGlvbihlLGkscil7Zm9yKHZhciBvLHM9blswXShlLGksciksYT0wO2E8dC5jb25kaXRpb25hbHMubGVuZ3RoO2ErKylpZihvPXMscz1uW2ErMV0oZSxpLHIpLCFVQShBLHQuY29uZGl0aW9uYWxzW2FdKShvLHMpKXJldHVybiExO3JldHVybiEwfX19LHtrZXk6ImZvckVhY2giLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPXRoaXM7dGhpcy5wYXJhbXMuZm9yRWFjaCgoZnVuY3Rpb24odCxuKXtyZXR1cm4gQSh0LCJwYXJhbXNbIituKyJdIixlKX0pLHRoaXMpfX0se2tleToibWFwIix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgZT10aGlzO3JldHVybiBuZXcgcih0aGlzLmNvbmRpdGlvbmFscy5zbGljZSgpLHRoaXMucGFyYW1zLm1hcCgoZnVuY3Rpb24odCxuKXtyZXR1cm4gZS5faWZOb2RlKEEodCwicGFyYW1zWyIrbisiXSIsZSkpfSksdGhpcykpfX0se2tleToiY2xvbmUiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyByKHRoaXMuY29uZGl0aW9uYWxzLHRoaXMucGFyYW1zKX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUEmJkEucGFyZW50aGVzaXM/QS5wYXJlbnRoZXNpczoia2VlcCIsbj0kYyh0aGlzLGUsQSYmQS5pbXBsaWNpdCksaT10aGlzLnBhcmFtcy5tYXAoKGZ1bmN0aW9uKHQsaSl7dmFyIHI9JGModCxlLEEmJkEuaW1wbGljaXQpO3JldHVybiJhbGwiPT09ZXx8bnVsbCE9PXImJnI8PW4/IigiK3QudG9TdHJpbmcoQSkrIikiOnQudG9TdHJpbmcoQSl9KSkscj1pWzBdLG89MDtvPHRoaXMuY29uZGl0aW9uYWxzLmxlbmd0aDtvKyspcis9IiAiK3RbdGhpcy5jb25kaXRpb25hbHNbb11dLHIrPSIgIitpW28rMV07cmV0dXJuIHJ9fSx7a2V5OiJ0b0pTT04iLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJue21hdGhqczp5Zyxjb25kaXRpb25hbHM6dGhpcy5jb25kaXRpb25hbHMscGFyYW1zOnRoaXMucGFyYW1zfX19LHtrZXk6InRvSFRNTCIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUEmJkEucGFyZW50aGVzaXM/QS5wYXJlbnRoZXNpczoia2VlcCIsbj0kYyh0aGlzLGUsQSYmQS5pbXBsaWNpdCksaT10aGlzLnBhcmFtcy5tYXAoKGZ1bmN0aW9uKHQsaSl7dmFyIHI9JGModCxlLEEmJkEuaW1wbGljaXQpO3JldHVybiJhbGwiPT09ZXx8bnVsbCE9PXImJnI8PW4/JzxzcGFuIGNsYXNzPSJtYXRoLXBhcmVudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPig8L3NwYW4+Jyt0LnRvSFRNTChBKSsnPHNwYW4gY2xhc3M9Im1hdGgtcGFyZW50aGVzaXMgbWF0aC1yb3VuZC1wYXJlbnRoZXNpcyI+KTwvc3Bhbj4nOnQudG9IVE1MKEEpfSkpLHI9aVswXSxvPTA7bzx0aGlzLmNvbmRpdGlvbmFscy5sZW5ndGg7bysrKXIrPSc8c3BhbiBjbGFzcz0ibWF0aC1vcGVyYXRvciBtYXRoLWJpbmFyeS1vcGVyYXRvciBtYXRoLWV4cGxpY2l0LWJpbmFyeS1vcGVyYXRvciI+JytYdCh0W3RoaXMuY29uZGl0aW9uYWxzW29dXSkrIjwvc3Bhbj4iK2lbbysxXTtyZXR1cm4gcn19LHtrZXk6Il90b1RleCIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUEmJkEucGFyZW50aGVzaXM/QS5wYXJlbnRoZXNpczoia2VlcCIsdD0kYyh0aGlzLGUsQSYmQS5pbXBsaWNpdCksbj10aGlzLnBhcmFtcy5tYXAoKGZ1bmN0aW9uKG4saSl7dmFyIHI9JGMobixlLEEmJkEuaW1wbGljaXQpO3JldHVybiJhbGwiPT09ZXx8bnVsbCE9PXImJnI8PXQ/IlxcbGVmdCgiK24udG9UZXgoQSkrIlxyaWdodCkiOm4udG9UZXgoQSl9KSksaT1uWzBdLHI9MDtyPHRoaXMuY29uZGl0aW9uYWxzLmxlbmd0aDtyKyspaSs9Y2dbdGhpcy5jb25kaXRpb25hbHNbcl1dK25bcisxXTtyZXR1cm4gaX19XSxbe2tleToiZnJvbUpTT04iLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBLmNvbmRpdGlvbmFscyxBLnBhcmFtcyl9fV0pLHJ9KGUpO3JldHVybiBJcihuLCJuYW1lIix5Zyksbn0pLHtpc0NsYXNzOiEwLGlzTm9kZTohMH0pLHhnPXBBKCJTeW1ib2xOb2RlIixbIm1hdGgiLCI/VW5pdCIsIk5vZGUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5tYXRoLHQ9QS5Vbml0O2Z1bmN0aW9uIG4oQSl7cmV0dXJuISF0JiZ0LmlzVmFsdWVsZXNzVW5pdChBKX1yZXR1cm4gZnVuY3Rpb24oQSl7SmMocyxBKTt2YXIgaSxyLG89KGk9cyxyPWZ1bmN0aW9uKCl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBSZWZsZWN0fHwhUmVmbGVjdC5jb25zdHJ1Y3QpcmV0dXJuITE7aWYoUmVmbGVjdC5jb25zdHJ1Y3Quc2hhbSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgUHJveHkpcmV0dXJuITA7dHJ5e3JldHVybiBCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbixbXSwoZnVuY3Rpb24oKXt9KSkpLCEwfWNhdGNoKEEpe3JldHVybiExfX0oKSxmdW5jdGlvbigpe3ZhciBBLGU9TGMoaSk7aWYocil7dmFyIHQ9TGModGhpcykuY29uc3RydWN0b3I7QT1SZWZsZWN0LmNvbnN0cnVjdChlLGFyZ3VtZW50cyx0KX1lbHNlIEE9ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIHpjKHRoaXMsQSl9KTtmdW5jdGlvbiBzKEEpe3ZhciBlO2lmKERBKHRoaXMscyksZT1vLmNhbGwodGhpcyksInN0cmluZyIhPXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoJ1N0cmluZyBleHBlY3RlZCBmb3IgcGFyYW1ldGVyICJuYW1lIicpO3JldHVybiBlLm5hbWU9QSxlfXJldHVybiBOQShzLFt7a2V5OiJ0eXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iU3ltYm9sTm9kZSJ9fSx7a2V5OiJpc1N5bWJvbE5vZGUiLGdldDpmdW5jdGlvbigpe3JldHVybiEwfX0se2tleToiX2NvbXBpbGUiLHZhbHVlOmZ1bmN0aW9uKEEsZSl7dmFyIGk9dGhpcy5uYW1lO2lmKCEwPT09ZVtpXSlyZXR1cm4gZnVuY3Rpb24oQSxlLHQpe3JldHVybiBVQShlLGkpfTtpZihpIGluIEEpcmV0dXJuIGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gZS5oYXMoaSk/ZS5nZXQoaSk6VUEoQSxpKX07dmFyIHI9bihpKTtyZXR1cm4gZnVuY3Rpb24oQSxlLG4pe3JldHVybiBBLmhhcyhpKT9BLmdldChpKTpyP25ldyB0KG51bGwsaSk6cy5vblVuZGVmaW5lZFN5bWJvbChpKX19fSx7a2V5OiJmb3JFYWNoIix2YWx1ZTpmdW5jdGlvbihBKXt9fSx7a2V5OiJtYXAiLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmNsb25lKCl9fSx7a2V5OiJjbG9uZSIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHModGhpcy5uYW1lKX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMubmFtZX19LHtrZXk6InRvSFRNTCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9WHQodGhpcy5uYW1lKTtyZXR1cm4idHJ1ZSI9PT1lfHwiZmFsc2UiPT09ZT8nPHNwYW4gY2xhc3M9Im1hdGgtc3ltYm9sIG1hdGgtYm9vbGVhbiI+JytlKyI8L3NwYW4+IjoiaSI9PT1lPyc8c3BhbiBjbGFzcz0ibWF0aC1zeW1ib2wgbWF0aC1pbWFnaW5hcnktc3ltYm9sIj4nK2UrIjwvc3Bhbj4iOiJJbmZpbml0eSI9PT1lPyc8c3BhbiBjbGFzcz0ibWF0aC1zeW1ib2wgbWF0aC1pbmZpbml0eS1zeW1ib2wiPicrZSsiPC9zcGFuPiI6Ik5hTiI9PT1lPyc8c3BhbiBjbGFzcz0ibWF0aC1zeW1ib2wgbWF0aC1uYW4tc3ltYm9sIj4nK2UrIjwvc3Bhbj4iOiJudWxsIj09PWU/JzxzcGFuIGNsYXNzPSJtYXRoLXN5bWJvbCBtYXRoLW51bGwtc3ltYm9sIj4nK2UrIjwvc3Bhbj4iOiJ1bmRlZmluZWQiPT09ZT8nPHNwYW4gY2xhc3M9Im1hdGgtc3ltYm9sIG1hdGgtdW5kZWZpbmVkLXN5bWJvbCI+JytlKyI8L3NwYW4+IjonPHNwYW4gY2xhc3M9Im1hdGgtc3ltYm9sIj4nK2UrIjwvc3Bhbj4ifX0se2tleToidG9KU09OIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybnttYXRoanM6IlN5bWJvbE5vZGUiLG5hbWU6dGhpcy5uYW1lfX19LHtrZXk6Il90b1RleCIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIHQ9ITE7dm9pZCAwPT09ZVt0aGlzLm5hbWVdJiZuKHRoaXMubmFtZSkmJih0PSEwKTt2YXIgaT11Zyh0aGlzLm5hbWUsdCk7cmV0dXJuIlxcIj09PWlbMF0/aToiICIraX19XSxbe2tleToib25VbmRlZmluZWRTeW1ib2wiLHZhbHVlOmZ1bmN0aW9uKEEpe3Rocm93IG5ldyBFcnJvcigiVW5kZWZpbmVkIHN5bWJvbCAiK0EpfX0se2tleToiZnJvbUpTT04iLHZhbHVlOmZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcyhBLm5hbWUpfX1dKSxzfShBLk5vZGUpfSkse2lzQ2xhc3M6ITAsaXNOb2RlOiEwfSk7ZnVuY3Rpb24gUmcoKXtyZXR1cm4oUmc9InVuZGVmaW5lZCIhPXR5cGVvZiBSZWZsZWN0JiZSZWZsZWN0LmdldD9SZWZsZWN0LmdldC5iaW5kKCk6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWZ1bmN0aW9uKEEsZSl7Zm9yKDshT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEEsZSkmJm51bGwhPT0oQT1MYyhBKSk7KTtyZXR1cm4gQX0oQSxlKTtpZihuKXt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG4sZSk7cmV0dXJuIGkuZ2V0P2kuZ2V0LmNhbGwoYXJndW1lbnRzLmxlbmd0aDwzP0E6dCk6aS52YWx1ZX19KS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZnVuY3Rpb24gR2coQSl7Zm9yKHZhciBlPWFyZ3VtZW50cy5sZW5ndGgsdD1uZXcgQXJyYXkoZT4xP2UtMTowKSxuPTE7bjxlO24rKyl0W24tMV09YXJndW1lbnRzW25dO3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBBLmNyZWF0ZVN1YlNjb3BlP3pBLmFwcGx5KHZvaWQgMCxbQS5jcmVhdGVTdWJTY29wZSgpXS5jb25jYXQodCkpOnpBLmFwcGx5KHZvaWQgMCxba0EoKSxBXS5jb25jYXQodCkpfXZhciBTZz0iRnVuY3Rpb25Ob2RlIixiZz1wQShTZyxbIm1hdGgiLCJOb2RlIiwiU3ltYm9sTm9kZSJdLChmdW5jdGlvbihBKXt2YXIgdCxuPUEubWF0aCxpPUEuTm9kZSxyPUEuU3ltYm9sTm9kZSxvPWZ1bmN0aW9uKEEpe3JldHVybiBWdChBLHt0cnVuY2F0ZTo3OH0pfTtmdW5jdGlvbiBzKEEsdCxuKXtmb3IodmFyIGkscj0iIixvPS9cJCg/Olx7KFthLXpfXVthLXpfMC05XSopKD86XFsoWzAtOV0rKVxdKT9cfXxcJCkvZ2kscz0wO251bGwhPT0oaT1vLmV4ZWMoQSkpOylpZihyKz1BLnN1YnN0cmluZyhzLGkuaW5kZXgpLHM9aS5pbmRleCwiJCQiPT09aVswXSlyKz0iJCIscysrO2Vsc2V7cys9aVswXS5sZW5ndGg7dmFyIGE9dFtpWzFdXTtpZighYSl0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoIlRlbXBsYXRlOiBQcm9wZXJ0eSAiK2lbMV0rIiBkb2VzIG5vdCBleGlzdC4iKTtpZih2b2lkIDA9PT1pWzJdKXN3aXRjaChlKGEpKXtjYXNlInN0cmluZyI6cis9YTticmVhaztjYXNlIm9iamVjdCI6aWYoYihhKSlyKz1hLnRvVGV4KG4pO2Vsc2V7aWYoIUFycmF5LmlzQXJyYXkoYSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVGVtcGxhdGU6ICIraVsxXSsiIGhhcyB0byBiZSBhIE5vZGUsIFN0cmluZyBvciBhcnJheSBvZiBOb2RlcyIpO3IrPWEubWFwKChmdW5jdGlvbihBLGUpe2lmKGIoQSkpcmV0dXJuIEEudG9UZXgobik7dGhyb3cgbmV3IFR5cGVFcnJvcigiVGVtcGxhdGU6ICIraVsxXSsiWyIrZSsiXSBpcyBub3QgYSBOb2RlLiIpfSkpLmpvaW4oIiwiKX1icmVhaztkZWZhdWx0OnRocm93IG5ldyBUeXBlRXJyb3IoIlRlbXBsYXRlOiAiK2lbMV0rIiBoYXMgdG8gYmUgYSBOb2RlLCBTdHJpbmcgb3IgYXJyYXkgb2YgTm9kZXMiKX1lbHNle2lmKCFiKGFbaVsyXV0mJmFbaVsyXV0pKXRocm93IG5ldyBUeXBlRXJyb3IoIlRlbXBsYXRlOiAiK2lbMV0rIlsiK2lbMl0rIl0gaXMgbm90IGEgTm9kZS4iKTtyKz1hW2lbMl1dLnRvVGV4KG4pfX1yZXR1cm4gcitBLnNsaWNlKHMpfXZhciBhPWZ1bmN0aW9uKEEpe0pjKEIsQSk7dmFyIHQsaSxhPSh0PUIsaT1mdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgUmVmbGVjdHx8IVJlZmxlY3QuY29uc3RydWN0KXJldHVybiExO2lmKFJlZmxlY3QuY29uc3RydWN0LnNoYW0pcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIFByb3h5KXJldHVybiEwO3RyeXtyZXR1cm4gQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sW10sKGZ1bmN0aW9uKCl7fSkpKSwhMH1jYXRjaChBKXtyZXR1cm4hMX19KCksZnVuY3Rpb24oKXt2YXIgQSxlPUxjKHQpO2lmKGkpe3ZhciBuPUxjKHRoaXMpLmNvbnN0cnVjdG9yO0E9UmVmbGVjdC5jb25zdHJ1Y3QoZSxhcmd1bWVudHMsbil9ZWxzZSBBPWUuYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiB6Yyh0aGlzLEEpfSk7ZnVuY3Rpb24gQihBLGUpe3ZhciB0O2lmKERBKHRoaXMsQiksdD1hLmNhbGwodGhpcyksInN0cmluZyI9PXR5cGVvZiBBJiYoQT1uZXcgcihBKSksIWIoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcignTm9kZSBleHBlY3RlZCBhcyBwYXJhbWV0ZXIgImZuIicpO2lmKCFBcnJheS5pc0FycmF5KGUpfHwhZS5ldmVyeShiKSl0aHJvdyBuZXcgVHlwZUVycm9yKCdBcnJheSBjb250YWluaW5nIE5vZGVzIGV4cGVjdGVkIGZvciBwYXJhbWV0ZXIgImFyZ3MiJyk7cmV0dXJuIHQuZm49QSx0LmFyZ3M9ZXx8W10sdH1yZXR1cm4gTkEoQixbe2tleToibmFtZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZm4ubmFtZXx8IiJ9fSx7a2V5OiJ0eXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gU2d9fSx7a2V5OiJpc0Z1bmN0aW9uTm9kZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuITB9fSx7a2V5OiJfY29tcGlsZSIsdmFsdWU6ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLmFyZ3MubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdC5fY29tcGlsZShBLGUpfSkpO2lmKCF6KHRoaXMuZm4pKXtpZihZKHRoaXMuZm4pJiZTKHRoaXMuZm4uaW5kZXgpJiZ0aGlzLmZuLmluZGV4LmlzT2JqZWN0UHJvcGVydHkoKSl7dmFyIG49dGhpcy5mbi5vYmplY3QuX2NvbXBpbGUoQSxlKSxpPXRoaXMuZm4uaW5kZXguZ2V0T2JqZWN0UHJvcGVydHkoKSxyPXRoaXMuYXJncztyZXR1cm4gZnVuY3Rpb24oZSxvLHMpe3ZhciBhPW4oZSxvLHMpLEI9ZnVuY3Rpb24oQSxlKXtpZigheEEoQSxlKSl0aHJvdyBuZXcgRXJyb3IoJ05vIGFjY2VzcyB0byBtZXRob2QgIicrZSsnIicpO3JldHVybiBBW2VdfShhLGkpO2lmKG51bGwhPUImJkIucmF3QXJncylyZXR1cm4gQihyLEEsR2coZSxvKSxlKTt2YXIgYz10Lm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEoZSxvLHMpfSkpO3JldHVybiBCLmFwcGx5KGEsYyl9fXZhciBzPXRoaXMuZm4udG9TdHJpbmcoKSxhPXRoaXMuZm4uX2NvbXBpbGUoQSxlKSxjPXRoaXMuYXJncztyZXR1cm4gZnVuY3Rpb24oZSxuLGkpe3ZhciByPWEoZSxuLGkpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiByKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cHJlc3Npb24gJyIuY29uY2F0KHMsIicgZGlkIG5vdCBldmFsdWF0ZSB0byBhIGZ1bmN0aW9uOyB2YWx1ZSBpczoiKSsiXG4gICIuY29uY2F0KG8ocikpKTtpZihyLnJhd0FyZ3MpcmV0dXJuIHIoYyxBLEdnKGUsbiksZSk7dmFyIEI9dC5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBKGUsbixpKX0pKTtyZXR1cm4gci5hcHBseShyLEIpfX12YXIgZz10aGlzLmZuLm5hbWU7aWYoZVtnXSl7dmFyIEU9dGhpcy5hcmdzO3JldHVybiBmdW5jdGlvbihlLG4saSl7dmFyIHI9VUEobixnKTtpZigiZnVuY3Rpb24iIT10eXBlb2Ygcil0aHJvdyBuZXcgVHlwZUVycm9yKCJBcmd1bWVudCAnIi5jb25jYXQoZywiJyB3YXMgbm90IGEgZnVuY3Rpb247IHJlY2VpdmVkOiAiKS5jb25jYXQobyhyKSkpO2lmKHIucmF3QXJncylyZXR1cm4gcihFLEEsR2coZSxuKSxlKTt2YXIgcz10Lm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEoZSxuLGkpfSkpO3JldHVybiByLmFwcGx5KHIscyl9fXZhciBRPWcgaW4gQT9VQShBLGcpOnZvaWQgMCx1PSJmdW5jdGlvbiI9PXR5cGVvZiBRJiYhMD09PVEucmF3QXJncyxsPWZ1bmN0aW9uKGUpe3ZhciB0O2lmKGUuaGFzKGcpKXQ9ZS5nZXQoZyk7ZWxzZXtpZighKGcgaW4gQSkpcmV0dXJuIEIub25VbmRlZmluZWRGdW5jdGlvbihnKTt0PVVBKEEsZyl9aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpcmV0dXJuIHQ7dGhyb3cgbmV3IFR5cGVFcnJvcigiJyIuY29uY2F0KGcsIicgaXMgbm90IGEgZnVuY3Rpb247IGl0cyB2YWx1ZSBpczpcbiAgIikuY29uY2F0KG8odCkpKX07aWYodSl7dmFyIGg9dGhpcy5hcmdzO3JldHVybiBmdW5jdGlvbihlLHQsbil7cmV0dXJuIGwoZSkoaCxBLEdnKGUsdCksZSl9fXN3aXRjaCh0Lmxlbmd0aCl7Y2FzZSAwOnJldHVybiBmdW5jdGlvbihBLGUsdCl7cmV0dXJuIGwoQSkoKX07Y2FzZSAxOnJldHVybiBmdW5jdGlvbihBLGUsbil7cmV0dXJuIGwoQSkoKDAsdFswXSkoQSxlLG4pKX07Y2FzZSAyOnJldHVybiBmdW5jdGlvbihBLGUsbil7dmFyIGk9bChBKSxyPXRbMF0sbz10WzFdO3JldHVybiBpKHIoQSxlLG4pLG8oQSxlLG4pKX07ZGVmYXVsdDpyZXR1cm4gZnVuY3Rpb24oQSxlLG4pe3ZhciBpPWwoQSkscj10Lm1hcCgoZnVuY3Rpb24odCl7cmV0dXJuIHQoQSxlLG4pfSkpO3JldHVybiBpLmFwcGx5KHZvaWQgMCx6dChyKSl9fX19LHtrZXk6ImZvckVhY2giLHZhbHVlOmZ1bmN0aW9uKEEpe0EodGhpcy5mbiwiZm4iLHRoaXMpO2Zvcih2YXIgZT0wO2U8dGhpcy5hcmdzLmxlbmd0aDtlKyspQSh0aGlzLmFyZ3NbZV0sImFyZ3NbIitlKyJdIix0aGlzKX19LHtrZXk6Im1hcCIsdmFsdWU6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMuX2lmTm9kZShBKHRoaXMuZm4sImZuIix0aGlzKSksdD1bXSxuPTA7bjx0aGlzLmFyZ3MubGVuZ3RoO24rKyl0W25dPXRoaXMuX2lmTm9kZShBKHRoaXMuYXJnc1tuXSwiYXJnc1siK24rIl0iLHRoaXMpKTtyZXR1cm4gbmV3IEIoZSx0KX19LHtrZXk6ImNsb25lIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBuZXcgQih0aGlzLmZuLHRoaXMuYXJncy5zbGljZSgwKSl9fSx7a2V5OiJ0b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIHQsbj10aGlzLmZuLnRvU3RyaW5nKEEpO3JldHVybiBBJiYib2JqZWN0Ij09PWUoQS5oYW5kbGVyKSYmTUEoQS5oYW5kbGVyLG4pJiYodD1BLmhhbmRsZXJbbl0odGhpcyxBKSksdm9pZCAwIT09dD90OlJnKExjKEIucHJvdG90eXBlKSwidG9TdHJpbmciLHRoaXMpLmNhbGwodGhpcyxBKX19LHtrZXk6Il90b1N0cmluZyIsdmFsdWU6ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5hcmdzLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9TdHJpbmcoQSl9KSk7cmV0dXJuKFIodGhpcy5mbik/IigiK3RoaXMuZm4udG9TdHJpbmcoQSkrIikiOnRoaXMuZm4udG9TdHJpbmcoQSkpKyIoIitlLmpvaW4oIiwgIikrIikifX0se2tleToidG9KU09OIix2YWx1ZTpmdW5jdGlvbigpe3JldHVybnttYXRoanM6U2csZm46dGhpcy5mbixhcmdzOnRoaXMuYXJnc319fSx7a2V5OiJ0b0hUTUwiLHZhbHVlOmZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuYXJncy5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRvSFRNTChBKX0pKTtyZXR1cm4nPHNwYW4gY2xhc3M9Im1hdGgtZnVuY3Rpb24iPicrWHQodGhpcy5mbikrJzwvc3Bhbj48c3BhbiBjbGFzcz0ibWF0aC1wYXJhbnRoZXNpcyBtYXRoLXJvdW5kLXBhcmVudGhlc2lzIj4oPC9zcGFuPicrZS5qb2luKCc8c3BhbiBjbGFzcz0ibWF0aC1zZXBhcmF0b3IiPiw8L3NwYW4+JykrJzxzcGFuIGNsYXNzPSJtYXRoLXBhcmFudGhlc2lzIG1hdGgtcm91bmQtcGFyZW50aGVzaXMiPik8L3NwYW4+J319LHtrZXk6InRvVGV4Iix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgdDtyZXR1cm4gQSYmIm9iamVjdCI9PT1lKEEuaGFuZGxlcikmJk1BKEEuaGFuZGxlcix0aGlzLm5hbWUpJiYodD1BLmhhbmRsZXJbdGhpcy5uYW1lXSh0aGlzLEEpKSx2b2lkIDAhPT10P3Q6UmcoTGMoQi5wcm90b3R5cGUpLCJ0b1RleCIsdGhpcykuY2FsbCh0aGlzLEEpfX0se2tleToiX3RvVGV4Iix2YWx1ZTpmdW5jdGlvbihBKXt2YXIgdCxpLHI9dGhpcy5hcmdzLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9UZXgoQSl9KSk7c3dpdGNoKGdnW3RoaXMubmFtZV0mJih0PWdnW3RoaXMubmFtZV0pLCFuW3RoaXMubmFtZV18fCJmdW5jdGlvbiIhPXR5cGVvZiBuW3RoaXMubmFtZV0udG9UZXgmJiJvYmplY3QiIT09ZShuW3RoaXMubmFtZV0udG9UZXgpJiYic3RyaW5nIiE9dHlwZW9mIG5bdGhpcy5uYW1lXS50b1RleHx8KHQ9blt0aGlzLm5hbWVdLnRvVGV4KSxlKHQpKXtjYXNlImZ1bmN0aW9uIjppPXQodGhpcyxBKTticmVhaztjYXNlInN0cmluZyI6aT1zKHQsdGhpcyxBKTticmVhaztjYXNlIm9iamVjdCI6c3dpdGNoKGUodFtyLmxlbmd0aF0pKXtjYXNlImZ1bmN0aW9uIjppPXRbci5sZW5ndGhdKHRoaXMsQSk7YnJlYWs7Y2FzZSJzdHJpbmciOmk9cyh0W3IubGVuZ3RoXSx0aGlzLEEpfX1yZXR1cm4gdm9pZCAwIT09aT9pOnMoIlxcbWF0aHJteyR7bmFtZX19XFxsZWZ0KCR7YXJnc31cXHJpZ2h0KSIsdGhpcyxBKX19LHtrZXk6ImdldElkZW50aWZpZXIiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudHlwZSsiOiIrdGhpcy5uYW1lfX1dKSxCfShpKTtyZXR1cm4gdD1hLElyKGEsIm5hbWUiLFNnKSxJcihhLCJvblVuZGVmaW5lZEZ1bmN0aW9uIiwoZnVuY3Rpb24oQSl7dGhyb3cgbmV3IEVycm9yKCJVbmRlZmluZWQgZnVuY3Rpb24gIitBKX0pKSxJcihhLCJmcm9tSlNPTiIsKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgdChBLmZuLEEuYXJncyl9KSksYX0pLHtpc0NsYXNzOiEwLGlzTm9kZTohMH0pLEhnPXBBKCJwYXJzZSIsWyJ0eXBlZCIsIm51bWVyaWMiLCJjb25maWciLCJBY2Nlc3Nvck5vZGUiLCJBcnJheU5vZGUiLCJBc3NpZ25tZW50Tm9kZSIsIkJsb2NrTm9kZSIsIkNvbmRpdGlvbmFsTm9kZSIsIkNvbnN0YW50Tm9kZSIsIkZ1bmN0aW9uQXNzaWdubWVudE5vZGUiLCJGdW5jdGlvbk5vZGUiLCJJbmRleE5vZGUiLCJPYmplY3ROb2RlIiwiT3BlcmF0b3JOb2RlIiwiUGFyZW50aGVzaXNOb2RlIiwiUmFuZ2VOb2RlIiwiUmVsYXRpb25hbE5vZGUiLCJTeW1ib2xOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm51bWVyaWMsbj1BLmNvbmZpZyxpPUEuQWNjZXNzb3JOb2RlLHI9QS5BcnJheU5vZGUsbz1BLkFzc2lnbm1lbnROb2RlLHM9QS5CbG9ja05vZGUsYT1BLkNvbmRpdGlvbmFsTm9kZSxCPUEuQ29uc3RhbnROb2RlLGM9QS5GdW5jdGlvbkFzc2lnbm1lbnROb2RlLGc9QS5GdW5jdGlvbk5vZGUsRT1BLkluZGV4Tm9kZSxRPUEuT2JqZWN0Tm9kZSx1PUEuT3BlcmF0b3JOb2RlLGw9QS5QYXJlbnRoZXNpc05vZGUsaD1BLlJhbmdlTm9kZSx3PUEuUmVsYXRpb25hbE5vZGUsQz1BLlN5bWJvbE5vZGUsST1lKCJwYXJzZSIse3N0cmluZzpmdW5jdGlvbihBKXtyZXR1cm4gVihBLHt9KX0sIkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gTShBLHt9KX0sInN0cmluZywgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiBWKEEsdm9pZCAwIT09ZS5ub2Rlcz9lLm5vZGVzOnt9KX0sIkFycmF5IHwgTWF0cml4LCBPYmplY3QiOk19KTtmdW5jdGlvbiBNKEEpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fSx0PXZvaWQgMCE9PWUubm9kZXM/ZS5ub2Rlczp7fTtyZXR1cm4gR24oQSwoZnVuY3Rpb24oQSl7aWYoInN0cmluZyIhPXR5cGVvZiBBKXRocm93IG5ldyBUeXBlRXJyb3IoIlN0cmluZyBleHBlY3RlZCIpO3JldHVybiBWKEEsdCl9KSl9dmFyIGQ9MCxwPTEsbT0yLEY9MyxEPTQsZj17IiwiOiEwLCIoIjohMCwiKSI6ITAsIlsiOiEwLCJdIjohMCwieyI6ITAsIn0iOiEwLCciJzohMCwiJyI6ITAsIjsiOiEwLCIrIjohMCwiLSI6ITAsIioiOiEwLCIuKiI6ITAsIi8iOiEwLCIuLyI6ITAsIiUiOiEwLCJeIjohMCwiLl4iOiEwLCJ+IjohMCwiISI6ITAsIiYiOiEwLCJ8IjohMCwiXnwiOiEwLCI9IjohMCwiOiI6ITAsIj8iOiEwLCI9PSI6ITAsIiE9IjohMCwiPCI6ITAsIj4iOiEwLCI8PSI6ITAsIj49IjohMCwiPDwiOiEwLCI+PiI6ITAsIj4+PiI6ITB9LE49e21vZDohMCx0bzohMCxpbjohMCxhbmQ6ITAseG9yOiEwLG9yOiEwLG5vdDohMH0sVT17dHJ1ZTohMCxmYWxzZTohMSxudWxsOm51bGwsdW5kZWZpbmVkOnZvaWQgMH0seT1bIk5hTiIsIkluZmluaXR5Il0sUj17JyInOiciJywiJyI6IiciLCJcXCI6IlxcIiwiLyI6Ii8iLGI6IlxiIixmOiJcZiIsbjoiXG4iLHI6IlxyIix0OiJcdCJ9O2Z1bmN0aW9uIFMoQSxlKXtyZXR1cm4gQS5leHByZXNzaW9uLnN1YnN0cihBLmluZGV4LGUpfWZ1bmN0aW9uIGIoQSl7cmV0dXJuIFMoQSwxKX1mdW5jdGlvbiBIKEEpe0EuaW5kZXgrK31mdW5jdGlvbiBrKEEpe3JldHVybiBBLmV4cHJlc3Npb24uY2hhckF0KEEuaW5kZXgtMSl9ZnVuY3Rpb24gaihBKXtyZXR1cm4gQS5leHByZXNzaW9uLmNoYXJBdChBLmluZGV4KzEpfWZ1bmN0aW9uIEooQSl7Zm9yKEEudG9rZW5UeXBlPWQsQS50b2tlbj0iIixBLmNvbW1lbnQ9IiI7Oyl7aWYoIiMiPT09YihBKSlmb3IoOyJcbiIhPT1iKEEpJiYiIiE9PWIoQSk7KUEuY29tbWVudCs9YihBKSxIKEEpO2lmKCFJLmlzV2hpdGVzcGFjZShiKEEpLEEubmVzdGluZ0xldmVsKSlicmVhaztIKEEpfWlmKCIiIT09YihBKSl7aWYoIlxuIj09PWIoQSkmJiFBLm5lc3RpbmdMZXZlbClyZXR1cm4gQS50b2tlblR5cGU9cCxBLnRva2VuPWIoQSksdm9pZCBIKEEpO3ZhciBlPWIoQSksdD1TKEEsMiksbj1TKEEsMyk7aWYoMz09PW4ubGVuZ3RoJiZmW25dKXJldHVybiBBLnRva2VuVHlwZT1wLEEudG9rZW49bixIKEEpLEgoQSksdm9pZCBIKEEpO2lmKDI9PT10Lmxlbmd0aCYmZlt0XSlyZXR1cm4gQS50b2tlblR5cGU9cCxBLnRva2VuPXQsSChBKSx2b2lkIEgoQSk7aWYoZltlXSlyZXR1cm4gQS50b2tlblR5cGU9cCxBLnRva2VuPWUsdm9pZCBIKEEpO2lmKEkuaXNEaWdpdERvdChlKSl7QS50b2tlblR5cGU9bTt2YXIgaT1TKEEsMik7aWYoIjBiIj09PWl8fCIwbyI9PT1pfHwiMHgiPT09aSl7Zm9yKEEudG9rZW4rPWIoQSksSChBKSxBLnRva2VuKz1iKEEpLEgoQSk7SS5pc0hleERpZ2l0KGIoQSkpOylBLnRva2VuKz1iKEEpLEgoQSk7aWYoIi4iPT09YihBKSlmb3IoQS50b2tlbis9Ii4iLEgoQSk7SS5pc0hleERpZ2l0KGIoQSkpOylBLnRva2VuKz1iKEEpLEgoQSk7ZWxzZSBpZigiaSI9PT1iKEEpKWZvcihBLnRva2VuKz0iaSIsSChBKTtJLmlzRGlnaXQoYihBKSk7KUEudG9rZW4rPWIoQSksSChBKTtyZXR1cm59aWYoIi4iPT09YihBKSl7aWYoQS50b2tlbis9YihBKSxIKEEpLCFJLmlzRGlnaXQoYihBKSkpcmV0dXJuIHZvaWQoQS50b2tlblR5cGU9cCl9ZWxzZXtmb3IoO0kuaXNEaWdpdChiKEEpKTspQS50b2tlbis9YihBKSxIKEEpO0kuaXNEZWNpbWFsTWFyayhiKEEpLGooQSkpJiYoQS50b2tlbis9YihBKSxIKEEpKX1mb3IoO0kuaXNEaWdpdChiKEEpKTspQS50b2tlbis9YihBKSxIKEEpO2lmKCJFIj09PWIoQSl8fCJlIj09PWIoQSkpaWYoSS5pc0RpZ2l0KGooQSkpfHwiLSI9PT1qKEEpfHwiKyI9PT1qKEEpKXtpZihBLnRva2VuKz1iKEEpLEgoQSksIisiIT09YihBKSYmIi0iIT09YihBKXx8KEEudG9rZW4rPWIoQSksSChBKSksIUkuaXNEaWdpdChiKEEpKSl0aHJvdyBRQShBLCdEaWdpdCBleHBlY3RlZCwgZ290ICInK2IoQSkrJyInKTtmb3IoO0kuaXNEaWdpdChiKEEpKTspQS50b2tlbis9YihBKSxIKEEpO2lmKEkuaXNEZWNpbWFsTWFyayhiKEEpLGooQSkpKXRocm93IFFBKEEsJ0RpZ2l0IGV4cGVjdGVkLCBnb3QgIicrYihBKSsnIicpfWVsc2UgaWYoIi4iPT09aihBKSl0aHJvdyBIKEEpLFFBKEEsJ0RpZ2l0IGV4cGVjdGVkLCBnb3QgIicrYihBKSsnIicpfWVsc2V7aWYoIUkuaXNBbHBoYShiKEEpLGsoQSksaihBKSkpe2ZvcihBLnRva2VuVHlwZT1EOyIiIT09YihBKTspQS50b2tlbis9YihBKSxIKEEpO3Rocm93IFFBKEEsJ1N5bnRheCBlcnJvciBpbiBwYXJ0ICInK0EudG9rZW4rJyInKX1mb3IoO0kuaXNBbHBoYShiKEEpLGsoQSksaihBKSl8fEkuaXNEaWdpdChiKEEpKTspQS50b2tlbis9YihBKSxIKEEpO01BKE4sQS50b2tlbik/QS50b2tlblR5cGU9cDpBLnRva2VuVHlwZT1GfX1lbHNlIEEudG9rZW5UeXBlPXB9ZnVuY3Rpb24gTChBKXtkb3tKKEEpfXdoaWxlKCJcbiI9PT1BLnRva2VuKX1mdW5jdGlvbiBQKEEpe0EubmVzdGluZ0xldmVsKyt9ZnVuY3Rpb24gTyhBKXtBLm5lc3RpbmdMZXZlbC0tfWZ1bmN0aW9uIFYoQSxlKXt2YXIgdD17ZXh0cmFOb2Rlczp7fSxleHByZXNzaW9uOiIiLGNvbW1lbnQ6IiIsaW5kZXg6MCx0b2tlbjoiIix0b2tlblR5cGU6ZCxuZXN0aW5nTGV2ZWw6MCxjb25kaXRpb25hbExldmVsOm51bGx9O2t0KHQse2V4cHJlc3Npb246QSxleHRyYU5vZGVzOmV9KSxKKHQpO3ZhciBuPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbj1bXTtmb3IoIiIhPT1BLnRva2VuJiYiXG4iIT09QS50b2tlbiYmIjsiIT09QS50b2tlbiYmKGU9VyhBKSxBLmNvbW1lbnQmJihlLmNvbW1lbnQ9QS5jb21tZW50KSk7IlxuIj09PUEudG9rZW58fCI7Ij09PUEudG9rZW47KTA9PT1uLmxlbmd0aCYmZSYmKHQ9IjsiIT09QS50b2tlbixuLnB1c2goe25vZGU6ZSx2aXNpYmxlOnR9KSksSihBKSwiXG4iIT09QS50b2tlbiYmIjsiIT09QS50b2tlbiYmIiIhPT1BLnRva2VuJiYoZT1XKEEpLEEuY29tbWVudCYmKGUuY29tbWVudD1BLmNvbW1lbnQpLHQ9IjsiIT09QS50b2tlbixuLnB1c2goe25vZGU6ZSx2aXNpYmxlOnR9KSk7cmV0dXJuIG4ubGVuZ3RoPjA/bmV3IHMobik6KGV8fChlPW5ldyBCKHZvaWQgMCksQS5jb21tZW50JiYoZS5jb21tZW50PUEuY29tbWVudCkpLGUpfSh0KTtpZigiIiE9PXQudG9rZW4pdGhyb3cgdC50b2tlblR5cGU9PT1wP3VBKHQsIlVuZXhwZWN0ZWQgb3BlcmF0b3IgIit0LnRva2VuKTpRQSh0LCdVbmV4cGVjdGVkIHBhcnQgIicrdC50b2tlbisnIicpO3JldHVybiBufWZ1bmN0aW9uIFcoQSl7dmFyIGUsdCxuLGkscj1mdW5jdGlvbihBKXtmb3IodmFyIGU9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUsoQSk7Im9yIj09PUEudG9rZW47KUwoQSksZT1uZXcgdSgib3IiLCJvciIsW2UsSyhBKV0pO3JldHVybiBlfShBKTsiPyI9PT1BLnRva2VuOyl7dmFyIHQ9QS5jb25kaXRpb25hbExldmVsO0EuY29uZGl0aW9uYWxMZXZlbD1BLm5lc3RpbmdMZXZlbCxMKEEpO3ZhciBuPWUsaT1XKEEpO2lmKCI6IiE9PUEudG9rZW4pdGhyb3cgUUEoQSwiRmFsc2UgcGFydCBvZiBjb25kaXRpb25hbCBleHByZXNzaW9uIGV4cGVjdGVkIik7QS5jb25kaXRpb25hbExldmVsPW51bGwsTChBKTt2YXIgcj1XKEEpO2U9bmV3IGEobixpLHIpLEEuY29uZGl0aW9uYWxMZXZlbD10fXJldHVybiBlfShBKTtpZigiPSI9PT1BLnRva2VuKXtpZih6KHIpKXJldHVybiBlPXIubmFtZSxMKEEpLG49VyhBKSxuZXcgbyhuZXcgQyhlKSxuKTtpZihZKHIpKXJldHVybiBMKEEpLG49VyhBKSxuZXcgbyhyLm9iamVjdCxyLmluZGV4LG4pO2lmKEcocikmJnooci5mbikmJihpPSEwLHQ9W10sZT1yLm5hbWUsci5hcmdzLmZvckVhY2goKGZ1bmN0aW9uKEEsZSl7eihBKT90W2VdPUEubmFtZTppPSExfSkpLGkpKXJldHVybiBMKEEpLG49VyhBKSxuZXcgYyhlLHQsbik7dGhyb3cgUUEoQSwiSW52YWxpZCBsZWZ0IGhhbmQgc2lkZSBvZiBhc3NpZ25tZW50IG9wZXJhdG9yID0iKX1yZXR1cm4gcn1mdW5jdGlvbiBLKEEpe2Zvcih2YXIgZT1YKEEpOyJ4b3IiPT09QS50b2tlbjspTChBKSxlPW5ldyB1KCJ4b3IiLCJ4b3IiLFtlLFgoQSldKTtyZXR1cm4gZX1mdW5jdGlvbiBYKEEpe2Zvcih2YXIgZT1aKEEpOyJhbmQiPT09QS50b2tlbjspTChBKSxlPW5ldyB1KCJhbmQiLCJhbmQiLFtlLFooQSldKTtyZXR1cm4gZX1mdW5jdGlvbiBaKEEpe2Zvcih2YXIgZT1fKEEpOyJ8Ij09PUEudG9rZW47KUwoQSksZT1uZXcgdSgifCIsImJpdE9yIixbZSxfKEEpXSk7cmV0dXJuIGV9ZnVuY3Rpb24gXyhBKXtmb3IodmFyIGU9cShBKTsiXnwiPT09QS50b2tlbjspTChBKSxlPW5ldyB1KCJefCIsImJpdFhvciIsW2UscShBKV0pO3JldHVybiBlfWZ1bmN0aW9uIHEoQSl7Zm9yKHZhciBlPSQoQSk7IiYiPT09QS50b2tlbjspTChBKSxlPW5ldyB1KCImIiwiYml0QW5kIixbZSwkKEEpXSk7cmV0dXJuIGV9ZnVuY3Rpb24gJChBKXtmb3IodmFyIGU9W0FBKEEpXSx0PVtdLG49eyI9PSI6ImVxdWFsIiwiIT0iOiJ1bmVxdWFsIiwiPCI6InNtYWxsZXIiLCI+IjoibGFyZ2VyIiwiPD0iOiJzbWFsbGVyRXEiLCI+PSI6ImxhcmdlckVxIn07TUEobixBLnRva2VuKTspe3ZhciBpPXtuYW1lOkEudG9rZW4sZm46bltBLnRva2VuXX07dC5wdXNoKGkpLEwoQSksZS5wdXNoKEFBKEEpKX1yZXR1cm4gMT09PWUubGVuZ3RoP2VbMF06Mj09PWUubGVuZ3RoP25ldyB1KHRbMF0ubmFtZSx0WzBdLmZuLGUpOm5ldyB3KHQubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQS5mbn0pKSxlKX1mdW5jdGlvbiBBQShBKXt2YXIgZSx0LG4saTtlPWVBKEEpO2Zvcih2YXIgcj17Ijw8IjoibGVmdFNoaWZ0IiwiPj4iOiJyaWdodEFyaXRoU2hpZnQiLCI+Pj4iOiJyaWdodExvZ1NoaWZ0In07TUEocixBLnRva2VuKTspbj1yW3Q9QS50b2tlbl0sTChBKSxpPVtlLGVBKEEpXSxlPW5ldyB1KHQsbixpKTtyZXR1cm4gZX1mdW5jdGlvbiBlQShBKXt2YXIgZSx0LG4saTtlPXRBKEEpO2Zvcih2YXIgcj17dG86InRvIixpbjoidG8ifTtNQShyLEEudG9rZW4pOyluPXJbdD1BLnRva2VuXSxMKEEpLCJpbiI9PT10JiYiIj09PUEudG9rZW4/ZT1uZXcgdSgiKiIsIm11bHRpcGx5IixbZSxuZXcgQygiaW4iKV0sITApOihpPVtlLHRBKEEpXSxlPW5ldyB1KHQsbixpKSk7cmV0dXJuIGV9ZnVuY3Rpb24gdEEoQSl7dmFyIGUsdD1bXTtpZihlPSI6Ij09PUEudG9rZW4/bmV3IEIoMSk6bkEoQSksIjoiPT09QS50b2tlbiYmQS5jb25kaXRpb25hbExldmVsIT09QS5uZXN0aW5nTGV2ZWwpe2Zvcih0LnB1c2goZSk7IjoiPT09QS50b2tlbiYmdC5sZW5ndGg8MzspTChBKSwiKSI9PT1BLnRva2VufHwiXSI9PT1BLnRva2VufHwiLCI9PT1BLnRva2VufHwiIj09PUEudG9rZW4/dC5wdXNoKG5ldyBDKCJlbmQiKSk6dC5wdXNoKG5BKEEpKTtlPTM9PT10Lmxlbmd0aD9uZXcgaCh0WzBdLHRbMl0sdFsxXSk6bmV3IGgodFswXSx0WzFdKX1yZXR1cm4gZX1mdW5jdGlvbiBuQShBKXt2YXIgZSx0LG4saTtlPWlBKEEpO2Zvcih2YXIgcj17IisiOiJhZGQiLCItIjoic3VidHJhY3QifTtNQShyLEEudG9rZW4pOyl7bj1yW3Q9QS50b2tlbl0sTChBKTt2YXIgbz1pQShBKTtpPW8uaXNQZXJjZW50YWdlP1tlLG5ldyB1KCIqIiwibXVsdGlwbHkiLFtlLG9dKV06W2Usb10sZT1uZXcgdSh0LG4saSl9cmV0dXJuIGV9ZnVuY3Rpb24gaUEoQSl7dmFyIGUsdCxuLGk7dD1lPXJBKEEpO2Zvcih2YXIgcj17IioiOiJtdWx0aXBseSIsIi4qIjoiZG90TXVsdGlwbHkiLCIvIjoiZGl2aWRlIiwiLi8iOiJkb3REaXZpZGUifTtNQShyLEEudG9rZW4pOylpPXJbbj1BLnRva2VuXSxMKEEpLHQ9ckEoQSksZT1uZXcgdShuLGksW2UsdF0pO3JldHVybiBlfWZ1bmN0aW9uIHJBKEEpe3ZhciBlLHQ7Zm9yKHQ9ZT1vQShBKTtBLnRva2VuVHlwZT09PUZ8fCJpbiI9PT1BLnRva2VuJiZUKGUpfHwhKEEudG9rZW5UeXBlIT09bXx8VCh0KXx8dih0KSYmIiEiIT09dC5vcCl8fCIoIj09PUEudG9rZW47KXQ9b0EoQSksZT1uZXcgdSgiKiIsIm11bHRpcGx5IixbZSx0XSwhMCk7cmV0dXJuIGV9ZnVuY3Rpb24gb0EoQSl7Zm9yKHZhciBlPXNBKEEpLHQ9ZSxuPVtdOyIvIj09PUEudG9rZW4mJngodCk7KXtpZihuLnB1c2goa3Qoe30sQSkpLEwoQSksQS50b2tlblR5cGUhPT1tKXtrdChBLG4ucG9wKCkpO2JyZWFrfWlmKG4ucHVzaChrdCh7fSxBKSksTChBKSxBLnRva2VuVHlwZSE9PUYmJiIoIiE9PUEudG9rZW4pe24ucG9wKCksa3QoQSxuLnBvcCgpKTticmVha31rdChBLG4ucG9wKCkpLG4ucG9wKCksdD1zQShBKSxlPW5ldyB1KCIvIiwiZGl2aWRlIixbZSx0XSl9cmV0dXJuIGV9ZnVuY3Rpb24gc0EoQSl7dmFyIGUsdCxuLGk7ZT1hQShBKTtmb3IodmFyIHI9eyIlIjoibW9kIixtb2Q6Im1vZCJ9O01BKHIsQS50b2tlbik7KW49clt0PUEudG9rZW5dLEwoQSksIiUiPT09dCYmQS50b2tlblR5cGU9PT1wJiYiKCIhPT1BLnRva2VuP2U9bmV3IHUoIi8iLCJkaXZpZGUiLFtlLG5ldyBCKDEwMCldLCExLCEwKTooaT1bZSxhQShBKV0sZT1uZXcgdSh0LG4saSkpO3JldHVybiBlfWZ1bmN0aW9uIGFBKEEpe3ZhciBlLGksbyxzPXsiLSI6InVuYXJ5TWludXMiLCIrIjoidW5hcnlQbHVzIiwifiI6ImJpdE5vdCIsbm90OiJub3QifTtyZXR1cm4gTUEocyxBLnRva2VuKT8obz1zW0EudG9rZW5dLGU9QS50b2tlbixMKEEpLGk9W2FBKEEpXSxuZXcgdShlLG8saSkpOmZ1bmN0aW9uKEEpe3ZhciBlLGksbyxzO3JldHVybiBlPWZ1bmN0aW9uKEEpe3ZhciBlLGksbztlPWZ1bmN0aW9uKEEpe3ZhciBlPVtdO2lmKEEudG9rZW5UeXBlPT09RiYmTUEoQS5leHRyYU5vZGVzLEEudG9rZW4pKXt2YXIgaT1BLmV4dHJhTm9kZXNbQS50b2tlbl07aWYoSihBKSwiKCI9PT1BLnRva2VuKXtpZihlPVtdLFAoQSksSihBKSwiKSIhPT1BLnRva2VuKWZvcihlLnB1c2goVyhBKSk7IiwiPT09QS50b2tlbjspSihBKSxlLnB1c2goVyhBKSk7aWYoIikiIT09QS50b2tlbil0aHJvdyBRQShBLCJQYXJlbnRoZXNpcyApIGV4cGVjdGVkIik7TyhBKSxKKEEpfXJldHVybiBuZXcgaShlKX1yZXR1cm4gZnVuY3Rpb24oQSl7dmFyIGU7cmV0dXJuIEEudG9rZW5UeXBlPT09Rnx8QS50b2tlblR5cGU9PT1wJiZBLnRva2VuIGluIE4/KGU9QS50b2tlbixKKEEpLEJBKEEsTUEoVSxlKT9uZXcgQihVW2VdKTotMSE9PXkuaW5kZXhPZihlKT9uZXcgQih0KGUsIm51bWJlciIpKTpuZXcgQyhlKSkpOmZ1bmN0aW9uKEEpe3ZhciBlO3JldHVybiciJz09PUEudG9rZW58fCInIj09PUEudG9rZW4/KGU9Y0EoQSxBLnRva2VuKSxCQShBLG5ldyBCKGUpKSk6ZnVuY3Rpb24oQSl7dmFyIGUsaSxvLHM7aWYoIlsiPT09QS50b2tlbil7aWYoUChBKSxKKEEpLCJdIiE9PUEudG9rZW4pe3ZhciBhPWdBKEEpO2lmKCI7Ij09PUEudG9rZW4pe2ZvcihvPTEsaT1bYV07IjsiPT09QS50b2tlbjspSihBKSxpW29dPWdBKEEpLG8rKztpZigiXSIhPT1BLnRva2VuKXRocm93IFFBKEEsIkVuZCBvZiBtYXRyaXggXSBleHBlY3RlZCIpO08oQSksSihBKSxzPWlbMF0uaXRlbXMubGVuZ3RoO2Zvcih2YXIgYz0xO2M8bztjKyspaWYoaVtjXS5pdGVtcy5sZW5ndGghPT1zKXRocm93IHVBKEEsIkNvbHVtbiBkaW1lbnNpb25zIG1pc21hdGNoICgiK2lbY10uaXRlbXMubGVuZ3RoKyIgIT09ICIrcysiKSIpO2U9bmV3IHIoaSl9ZWxzZXtpZigiXSIhPT1BLnRva2VuKXRocm93IFFBKEEsIkVuZCBvZiBtYXRyaXggXSBleHBlY3RlZCIpO08oQSksSihBKSxlPWF9fWVsc2UgTyhBKSxKKEEpLGU9bmV3IHIoW10pO3JldHVybiBCQShBLGUpfXJldHVybiBmdW5jdGlvbihBKXtpZigieyI9PT1BLnRva2VuKXt2YXIgZTtQKEEpO3ZhciBpPXt9O2Rve2lmKEooQSksIn0iIT09QS50b2tlbil7aWYoJyInPT09QS50b2tlbnx8IiciPT09QS50b2tlbillPWNBKEEsQS50b2tlbik7ZWxzZXtpZighKEEudG9rZW5UeXBlPT09Rnx8QS50b2tlblR5cGU9PT1wJiZBLnRva2VuIGluIE4pKXRocm93IFFBKEEsIlN5bWJvbCBvciBzdHJpbmcgZXhwZWN0ZWQgYXMgb2JqZWN0IGtleSIpO2U9QS50b2tlbixKKEEpfWlmKCI6IiE9PUEudG9rZW4pdGhyb3cgUUEoQSwiQ29sb24gOiBleHBlY3RlZCBhZnRlciBvYmplY3Qga2V5Iik7SihBKSxpW2VdPVcoQSl9fXdoaWxlKCIsIj09PUEudG9rZW4pO2lmKCJ9IiE9PUEudG9rZW4pdGhyb3cgUUEoQSwiQ29tbWEgLCBvciBicmFja2V0IH0gZXhwZWN0ZWQgYWZ0ZXIgb2JqZWN0IHZhbHVlIik7cmV0dXJuIE8oQSksSihBKSxCQShBLG5ldyBRKGkpKX1yZXR1cm4gZnVuY3Rpb24oQSl7dmFyIGU7cmV0dXJuIEEudG9rZW5UeXBlPT09bT8oZT1BLnRva2VuLEooQSksbmV3IEIodChlLG4ubnVtYmVyKSkpOmZ1bmN0aW9uKEEpe3ZhciBlO2lmKCIoIj09PUEudG9rZW4pe2lmKFAoQSksSihBKSxlPVcoQSksIikiIT09QS50b2tlbil0aHJvdyBRQShBLCJQYXJlbnRoZXNpcyApIGV4cGVjdGVkIik7cmV0dXJuIE8oQSksSihBKSxCQShBLGU9bmV3IGwoZSkpfXJldHVybiBmdW5jdGlvbihBKXt0aHJvdyIiPT09QS50b2tlbj9RQShBLCJVbmV4cGVjdGVkIGVuZCBvZiBleHByZXNzaW9uIik6UUEoQSwiVmFsdWUgZXhwZWN0ZWQiKX0oQSl9KEEpfShBKX0oQSl9KEEpfShBKX0oQSl9KEEpO2Zvcih2YXIgcz17IiEiOiJmYWN0b3JpYWwiLCInIjoiY3RyYW5zcG9zZSJ9O01BKHMsQS50b2tlbik7KW89c1tpPUEudG9rZW5dLEooQSksZT1CQShBLGU9bmV3IHUoaSxvLFtlXSkpO3JldHVybiBlfShBKSwoIl4iPT09QS50b2tlbnx8Ii5eIj09PUEudG9rZW4pJiYobz0iXiI9PT0oaT1BLnRva2VuKT8icG93IjoiZG90UG93IixMKEEpLHM9W2UsYUEoQSldLGU9bmV3IHUoaSxvLHMpKSxlfShBKX1mdW5jdGlvbiBCQShBLGUsdCl7Zm9yKHZhciBuOyEoIigiIT09QS50b2tlbiYmIlsiIT09QS50b2tlbiYmIi4iIT09QS50b2tlbnx8dCYmLTE9PT10LmluZGV4T2YoQS50b2tlbikpOylpZihuPVtdLCIoIj09PUEudG9rZW4pe2lmKCF6KGUpJiYhWShlKSlyZXR1cm4gZTtpZihQKEEpLEooQSksIikiIT09QS50b2tlbilmb3Iobi5wdXNoKFcoQSkpOyIsIj09PUEudG9rZW47KUooQSksbi5wdXNoKFcoQSkpO2lmKCIpIiE9PUEudG9rZW4pdGhyb3cgUUEoQSwiUGFyZW50aGVzaXMgKSBleHBlY3RlZCIpO08oQSksSihBKSxlPW5ldyBnKGUsbil9ZWxzZSBpZigiWyI9PT1BLnRva2VuKXtpZihQKEEpLEooQSksIl0iIT09QS50b2tlbilmb3Iobi5wdXNoKFcoQSkpOyIsIj09PUEudG9rZW47KUooQSksbi5wdXNoKFcoQSkpO2lmKCJdIiE9PUEudG9rZW4pdGhyb3cgUUEoQSwiUGFyZW50aGVzaXMgXSBleHBlY3RlZCIpO08oQSksSihBKSxlPW5ldyBpKGUsbmV3IEUobikpfWVsc2V7aWYoSihBKSwhKEEudG9rZW5UeXBlPT09Rnx8QS50b2tlblR5cGU9PT1wJiZBLnRva2VuIGluIE4pKXRocm93IFFBKEEsIlByb3BlcnR5IG5hbWUgZXhwZWN0ZWQgYWZ0ZXIgZG90Iik7bi5wdXNoKG5ldyBCKEEudG9rZW4pKSxKKEEpLGU9bmV3IGkoZSxuZXcgRShuLCEwKSl9cmV0dXJuIGV9ZnVuY3Rpb24gY0EoQSxlKXtmb3IodmFyIHQ9IiI7IiIhPT1iKEEpJiZiKEEpIT09ZTspaWYoIlxcIj09PWIoQSkpe0goQSk7dmFyIG49YihBKSxpPVJbbl07aWYodm9pZCAwIT09aSl0Kz1pLEEuaW5kZXgrPTE7ZWxzZXtpZigidSIhPT1uKXRocm93IFFBKEEsIkJhZCBlc2NhcGUgY2hhcmFjdGVyIFxcIi5jb25jYXQobikpO3ZhciByPUEuZXhwcmVzc2lvbi5zbGljZShBLmluZGV4KzEsQS5pbmRleCs1KTtpZighL15bMC05QS1GYS1mXXs0fSQvLnRlc3QocikpdGhyb3cgUUEoQSwiSW52YWxpZCB1bmljb2RlIGNoYXJhY3RlciBcXHUiLmNvbmNhdChyKSk7dCs9U3RyaW5nLmZyb21DaGFyQ29kZShwYXJzZUludChyLDE2KSksQS5pbmRleCs9NX19ZWxzZSB0Kz1iKEEpLEgoQSk7aWYoSihBKSxBLnRva2VuIT09ZSl0aHJvdyBRQShBLCJFbmQgb2Ygc3RyaW5nICIuY29uY2F0KGUsIiBleHBlY3RlZCIpKTtyZXR1cm4gSihBKSx0fWZ1bmN0aW9uIGdBKEEpe2Zvcih2YXIgZT1bVyhBKV0sdD0xOyIsIj09PUEudG9rZW47KUooQSksZVt0XT1XKEEpLHQrKztyZXR1cm4gbmV3IHIoZSl9ZnVuY3Rpb24gRUEoQSl7cmV0dXJuIEEuaW5kZXgtQS50b2tlbi5sZW5ndGgrMX1mdW5jdGlvbiBRQShBLGUpe3ZhciB0PUVBKEEpLG49bmV3IFN5bnRheEVycm9yKGUrIiAoY2hhciAiK3QrIikiKTtyZXR1cm4gbi5jaGFyPXQsbn1mdW5jdGlvbiB1QShBLGUpe3ZhciB0PUVBKEEpLG49bmV3IFN5bnRheEVycm9yKGUrIiAoY2hhciAiK3QrIikiKTtyZXR1cm4gbi5jaGFyPXQsbn1yZXR1cm4gSS5pc0FscGhhPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gSS5pc1ZhbGlkTGF0aW5PckdyZWVrKEEpfHxJLmlzVmFsaWRNYXRoU3ltYm9sKEEsdCl8fEkuaXNWYWxpZE1hdGhTeW1ib2woZSxBKX0sSS5pc1ZhbGlkTGF0aW5PckdyZWVrPWZ1bmN0aW9uKEEpe3JldHVybi9eW2EtekEtWl8kXHUwMEMwLVx1MDJBRlx1MDM3MC1cdTAzRkZcdTIxMDAtXHUyMTRGXSQvLnRlc3QoQSl9LEkuaXNWYWxpZE1hdGhTeW1ib2w9ZnVuY3Rpb24oQSxlKXtyZXR1cm4vXltcdUQ4MzVdJC8udGVzdChBKSYmL15bXHVEQzAwLVx1REZGRl0kLy50ZXN0KGUpJiYvXlteXHVEQzU1XHVEQzlEXHVEQ0EwXHVEQ0ExXHVEQ0EzXHVEQ0E0XHVEQ0E3XHVEQ0E4XHVEQ0FEXHVEQ0JBXHVEQ0JDXHVEQ0M0XHVERDA2XHVERDBCXHVERDBDXHVERDE1XHVERDFEXHVERDNBXHVERDNGXHVERDQ1XHVERDQ3LVx1REQ0OVx1REQ1MVx1REVBNlx1REVBN1x1REZDQ1x1REZDRF0kLy50ZXN0KGUpfSxJLmlzV2hpdGVzcGFjZT1mdW5jdGlvbihBLGUpe3JldHVybiIgIj09PUF8fCJcdCI9PT1BfHwiXG4iPT09QSYmZT4wfSxJLmlzRGVjaW1hbE1hcms9ZnVuY3Rpb24oQSxlKXtyZXR1cm4iLiI9PT1BJiYiLyIhPT1lJiYiKiIhPT1lJiYiXiIhPT1lfSxJLmlzRGlnaXREb3Q9ZnVuY3Rpb24oQSl7cmV0dXJuIEE+PSIwIiYmQTw9IjkifHwiLiI9PT1BfSxJLmlzRGlnaXQ9ZnVuY3Rpb24oQSl7cmV0dXJuIEE+PSIwIiYmQTw9IjkifSxJLmlzSGV4RGlnaXQ9ZnVuY3Rpb24oQSl7cmV0dXJuIEE+PSIwIiYmQTw9IjkifHxBPj0iYSImJkE8PSJmInx8QT49IkEiJiZBPD0iRiJ9LGUuYWRkQ29udmVyc2lvbih7ZnJvbToic3RyaW5nIix0bzoiTm9kZSIsY29udmVydDpJfSksSX0pKSx2Zz0iY29tcGlsZSIsa2c9cEEodmcsWyJ0eXBlZCIsInBhcnNlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLnBhcnNlO3JldHVybiBlKHZnLHtzdHJpbmc6ZnVuY3Rpb24oQSl7cmV0dXJuIHQoQSkuY29tcGlsZSgpfSwiQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEpe3JldHVybiBHbihBLChmdW5jdGlvbihBKXtyZXR1cm4gdChBKS5jb21waWxlKCl9KSl9fSl9KSksamc9ImV2YWx1YXRlIixKZz1wQShqZyxbInR5cGVkIiwicGFyc2UiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEucGFyc2U7cmV0dXJuIGUoamcse3N0cmluZzpmdW5jdGlvbihBKXt2YXIgZT1rQSgpO3JldHVybiB0KEEpLmNvbXBpbGUoKS5ldmFsdWF0ZShlKX0sInN0cmluZywgTWFwIHwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiB0KEEpLmNvbXBpbGUoKS5ldmFsdWF0ZShlKX0sIkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXt2YXIgZT1rQSgpO3JldHVybiBHbihBLChmdW5jdGlvbihBKXtyZXR1cm4gdChBKS5jb21waWxlKCkuZXZhbHVhdGUoZSl9KSl9LCJBcnJheSB8IE1hdHJpeCwgTWFwIHwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiBHbihBLChmdW5jdGlvbihBKXtyZXR1cm4gdChBKS5jb21waWxlKCkuZXZhbHVhdGUoZSl9KSl9fSl9KSksemc9cEEoIlBhcnNlciIsWyJldmFsdWF0ZSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmV2YWx1YXRlO2Z1bmN0aW9uIHQoKXtpZighKHRoaXMgaW5zdGFuY2VvZiB0KSl0aHJvdyBuZXcgU3ludGF4RXJyb3IoIkNvbnN0cnVjdG9yIG11c3QgYmUgY2FsbGVkIHdpdGggdGhlIG5ldyBvcGVyYXRvciIpO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCJzY29wZSIse3ZhbHVlOmtBKCksd3JpdGFibGU6ITF9KX1yZXR1cm4gdC5wcm90b3R5cGUudHlwZT0iUGFyc2VyIix0LnByb3RvdHlwZS5pc1BhcnNlcj0hMCx0LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihBKXtyZXR1cm4gZShBLHRoaXMuc2NvcGUpfSx0LnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSl7aWYodGhpcy5zY29wZS5oYXMoQSkpcmV0dXJuIHRoaXMuc2NvcGUuZ2V0KEEpfSx0LnByb3RvdHlwZS5nZXRBbGw9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oQSl7aWYoQSBpbnN0YW5jZW9mIHZBKXJldHVybiBBLndyYXBwZWRPYmplY3Q7dmFyIGUsdD17fSxuPWJBKEEua2V5cygpKTt0cnl7Zm9yKG4ucygpOyEoZT1uLm4oKSkuZG9uZTspe3ZhciBpPWUudmFsdWU7eUEodCxpLEEuZ2V0KGkpKX19Y2F0Y2goQSl7bi5lKEEpfWZpbmFsbHl7bi5mKCl9cmV0dXJuIHR9KHRoaXMuc2NvcGUpfSx0LnByb3RvdHlwZS5nZXRBbGxBc01hcD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnNjb3BlfSx0LnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5zY29wZS5zZXQoQSxlKSxlfSx0LnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oQSl7dGhpcy5zY29wZS5kZWxldGUoQSl9LHQucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5zY29wZS5jbGVhcigpfSx0fSkse2lzQ2xhc3M6ITB9KSxMZz1wQSgicGFyc2VyIixbInR5cGVkIiwiUGFyc2VyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLlBhcnNlcjtyZXR1cm4gZSgicGFyc2VyIix7IiI6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHR9fSl9KSksUGc9cEEoImx1cCIsWyJ0eXBlZCIsIm1hdHJpeCIsImFicyIsImFkZFNjYWxhciIsImRpdmlkZVNjYWxhciIsIm11bHRpcGx5U2NhbGFyIiwic3VidHJhY3RTY2FsYXIiLCJsYXJnZXIiLCJlcXVhbFNjYWxhciIsInVuYXJ5TWludXMiLCJEZW5zZU1hdHJpeCIsIlNwYXJzZU1hdHJpeCIsIlNwYSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLmFicyxpPUEuYWRkU2NhbGFyLHI9QS5kaXZpZGVTY2FsYXIsbz1BLm11bHRpcGx5U2NhbGFyLHM9QS5zdWJ0cmFjdFNjYWxhcixhPUEubGFyZ2VyLEI9QS5lcXVhbFNjYWxhcixjPUEudW5hcnlNaW51cyxnPUEuRGVuc2VNYXRyaXgsRT1BLlNwYXJzZU1hdHJpeCxRPUEuU3BhO3JldHVybiBlKCJsdXAiLHtEZW5zZU1hdHJpeDpmdW5jdGlvbihBKXtyZXR1cm4gdShBKX0sU3BhcnNlTWF0cml4OmZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihBKXt2YXIgZSx0LGkscz1BLl9zaXplWzBdLGc9QS5fc2l6ZVsxXSx1PU1hdGgubWluKHMsZyksbD1BLl92YWx1ZXMsaD1BLl9pbmRleCx3PUEuX3B0cixDPVtdLEk9W10sTT1bXSxkPVtzLHVdLHA9W10sbT1bXSxGPVtdLEQ9W3UsZ10sWT1bXSxmPVtdO2ZvcihlPTA7ZTxzO2UrKylZW2VdPWUsZltlXT1lO3ZhciBOPWZ1bmN0aW9uKCl7dmFyIEE9bmV3IFE7dDxzJiYoTS5wdXNoKEMubGVuZ3RoKSxDLnB1c2goMSksSS5wdXNoKHQpKSxGLnB1c2gocC5sZW5ndGgpO3ZhciBnPXdbdF0sdT13W3QrMV07Zm9yKGk9ZztpPHU7aSsrKWU9aFtpXSxBLnNldChZW2VdLGxbaV0pO3Q+MCYmQS5mb3JFYWNoKDAsdC0xLChmdW5jdGlvbihlLHQpe0UuX2ZvckVhY2hSb3coZSxDLEksTSwoZnVuY3Rpb24obixpKXtuPmUmJkEuYWNjdW11bGF0ZShuLGMobyhpLHQpKSl9KSl9KSk7dmFyIE4sVSx5LFQseD10LFI9QS5nZXQodCksRz1uKFIpO0EuZm9yRWFjaCh0KzEscy0xLChmdW5jdGlvbihBLGUpe3ZhciB0PW4oZSk7YSh0LEcpJiYoeD1BLEc9dCxSPWUpfSkpLHQhPT14JiYoRS5fc3dhcFJvd3ModCx4LGRbMV0sQyxJLE0pLEUuX3N3YXBSb3dzKHQseCxEWzFdLHAsbSxGKSxBLnN3YXAodCx4KSxVPXgseT1mW049dF0sVD1mW1VdLFlbeV09VSxZW1RdPU4sZltOXT1ULGZbVV09eSksQS5mb3JFYWNoKDAscy0xLChmdW5jdGlvbihBLGUpe0E8PXQ/KHAucHVzaChlKSxtLnB1c2goQSkpOihlPXIoZSxSKSxCKGUsMCl8fChDLnB1c2goZSksSS5wdXNoKEEpKSl9KSl9O2Zvcih0PTA7dDxnO3QrKylOKCk7cmV0dXJuIEYucHVzaChwLmxlbmd0aCksTS5wdXNoKEMubGVuZ3RoKSx7TDpuZXcgRSh7dmFsdWVzOkMsaW5kZXg6SSxwdHI6TSxzaXplOmR9KSxVOm5ldyBFKHt2YWx1ZXM6cCxpbmRleDptLHB0cjpGLHNpemU6RH0pLHA6WSx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiJMOiAiK3RoaXMuTC50b1N0cmluZygpKyJcblU6ICIrdGhpcy5VLnRvU3RyaW5nKCkrIlxuUDogIit0aGlzLnB9fX0oQSl9LEFycmF5OmZ1bmN0aW9uKEEpe3ZhciBlPXUodChBKSk7cmV0dXJue0w6ZS5MLnZhbHVlT2YoKSxVOmUuVS52YWx1ZU9mKCkscDplLnB9fX0pO2Z1bmN0aW9uIHUoQSl7dmFyIGUsdCxjLEU9QS5fc2l6ZVswXSxRPUEuX3NpemVbMV0sdT1NYXRoLm1pbihFLFEpLGw9dUEoQS5fZGF0YSksaD1bXSx3PVtFLHVdLEM9W10sST1bdSxRXSxNPVtdO2ZvcihlPTA7ZTxFO2UrKylNW2VdPWU7Zm9yKHQ9MDt0PFE7dCsrKXtpZih0PjApZm9yKGU9MDtlPEU7ZSsrKXt2YXIgZD1NYXRoLm1pbihlLHQpLHA9MDtmb3IoYz0wO2M8ZDtjKyspcD1pKHAsbyhsW2VdW2NdLGxbY11bdF0pKTtsW2VdW3RdPXMobFtlXVt0XSxwKX12YXIgbT10LEY9MCxEPTA7Zm9yKGU9dDtlPEU7ZSsrKXt2YXIgWT1sW2VdW3RdLGY9bihZKTthKGYsRikmJihtPWUsRj1mLEQ9WSl9aWYodCE9PW0mJihNW3RdPVtNW21dLE1bbV09TVt0XV1bMF0sZy5fc3dhcFJvd3ModCxtLGwpKSx0PEUpZm9yKGU9dCsxO2U8RTtlKyspe3ZhciBOPWxbZV1bdF07QihOLDApfHwobFtlXVt0XT1yKGxbZV1bdF0sRCkpfX1mb3IodD0wO3Q8UTt0KyspZm9yKGU9MDtlPEU7ZSsrKTA9PT10JiYoZTxRJiYoQ1tlXT1bXSksaFtlXT1bXSksZTx0PyhlPFEmJihDW2VdW3RdPWxbZV1bdF0pLHQ8RSYmKGhbZV1bdF09MCkpOmUhPT10PyhlPFEmJihDW2VdW3RdPTApLHQ8RSYmKGhbZV1bdF09bFtlXVt0XSkpOihlPFEmJihDW2VdW3RdPWxbZV1bdF0pLHQ8RSYmKGhbZV1bdF09MSkpO3ZhciBVPW5ldyBnKHtkYXRhOmgsc2l6ZTp3fSkseT1uZXcgZyh7ZGF0YTpDLHNpemU6SX0pLFQ9W107Zm9yKGU9MCx1PU0ubGVuZ3RoO2U8dTtlKyspVFtNW2VdXT1lO3JldHVybntMOlUsVTp5LHA6VCx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiJMOiAiK3RoaXMuTC50b1N0cmluZygpKyJcblU6ICIrdGhpcy5VLnRvU3RyaW5nKCkrIlxuUDogIit0aGlzLnB9fX19KSksT2c9cEEoInFyIixbInR5cGVkIiwibWF0cml4IiwiemVyb3MiLCJpZGVudGl0eSIsImlzWmVybyIsImVxdWFsIiwic2lnbiIsInNxcnQiLCJjb25qIiwidW5hcnlNaW51cyIsImFkZFNjYWxhciIsImRpdmlkZVNjYWxhciIsIm11bHRpcGx5U2NhbGFyIiwic3VidHJhY3RTY2FsYXIiLCJjb21wbGV4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuemVyb3MsaT1BLmlkZW50aXR5LHI9QS5pc1plcm8sbz1BLmVxdWFsLHM9QS5zaWduLGE9QS5zcXJ0LEI9QS5jb25qLGM9QS51bmFyeU1pbnVzLGc9QS5hZGRTY2FsYXIsRT1BLmRpdmlkZVNjYWxhcixRPUEubXVsdGlwbHlTY2FsYXIsdT1BLnN1YnRyYWN0U2NhbGFyLGw9QS5jb21wbGV4O3JldHVybiBrdChlKCJxciIse0RlbnNlTWF0cml4OmZ1bmN0aW9uKEEpe3JldHVybiB3KEEpfSxTcGFyc2VNYXRyaXg6ZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKEEpe3Rocm93IG5ldyBFcnJvcigicXIgbm90IGltcGxlbWVudGVkIGZvciBzcGFyc2UgbWF0cmljZXMgeWV0Iil9KCl9LEFycmF5OmZ1bmN0aW9uKEEpe3ZhciBlPXcodChBKSk7cmV0dXJue1E6ZS5RLnZhbHVlT2YoKSxSOmUuUi52YWx1ZU9mKCl9fX0pLHtfZGVuc2VRUmltcGw6aH0pO2Z1bmN0aW9uIGgoQSl7dmFyIGUsdCxsLGg9QS5fc2l6ZVswXSx3PUEuX3NpemVbMV0sQz1pKFtoXSwiZGVuc2UiKSxJPUMuX2RhdGEsTT1BLmNsb25lKCksZD1NLl9kYXRhLHA9bihbaF0sIiIpO2ZvcihsPTA7bDxNYXRoLm1pbih3LGgpOysrbCl7dmFyIG09ZFtsXVtsXSxGPWMobyhtLDApPzE6cyhtKSksRD1CKEYpLFk9MDtmb3IoZT1sO2U8aDtlKyspWT1nKFksUShkW2VdW2xdLEIoZFtlXVtsXSkpKTt2YXIgZj1RKEYsYShZKSk7aWYoIXIoZikpe3ZhciBOPXUobSxmKTtmb3IocFtsXT0xLGU9bCsxO2U8aDtlKyspcFtlXT1FKGRbZV1bbF0sTik7dmFyIFU9YyhCKEUoTixmKSkpLHk9dm9pZCAwO2Zvcih0PWw7dDx3O3QrKyl7Zm9yKHk9MCxlPWw7ZTxoO2UrKyl5PWcoeSxRKEIocFtlXSksZFtlXVt0XSkpO2Zvcih5PVEoeSxVKSxlPWw7ZTxoO2UrKylkW2VdW3RdPVEodShkW2VdW3RdLFEocFtlXSx5KSksRCl9Zm9yKGU9MDtlPGg7ZSsrKXtmb3IoeT0wLHQ9bDt0PGg7dCsrKXk9Zyh5LFEoSVtlXVt0XSxwW3RdKSk7Zm9yKHk9USh5LFUpLHQ9bDt0PGg7Kyt0KUlbZV1bdF09RSh1KElbZV1bdF0sUSh5LEIocFt0XSkpKSxEKX19fXJldHVybntROkMsUjpNLHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIlE6ICIrdGhpcy5RLnRvU3RyaW5nKCkrIlxuUjogIit0aGlzLlIudG9TdHJpbmcoKX19fWZ1bmN0aW9uIHcoQSl7dmFyIGU9aChBKSx0PWUuUi5fZGF0YTtpZihBLl9kYXRhLmxlbmd0aD4wKWZvcih2YXIgbj0iQ29tcGxleCI9PT10WzBdWzBdLnR5cGU/bCgwKTowLGk9MDtpPHQubGVuZ3RoOysraSlmb3IodmFyIHI9MDtyPGkmJnI8KHRbMF18fFtdKS5sZW5ndGg7KytyKXRbaV1bcl09bjtyZXR1cm4gZX19KSk7ZnVuY3Rpb24gVmcoQSxlLHQsbixpLHIsbyl7dmFyIHM9MDtmb3IodFtvXT1BO3M+PTA7KXt2YXIgYT10W28rc10sQj10W24rYV07LTE9PT1CPyhzLS0scltlKytdPWEpOih0W24rYV09dFtpK0JdLHRbbysgKytzXT1CKX1yZXR1cm4gZX1mdW5jdGlvbiBXZyhBKXtyZXR1cm4tQS0yfXZhciBLZz1wQSgiY3NBbWQiLFsiYWRkIiwibXVsdGlwbHkiLCJ0cmFuc3Bvc2UiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5hZGQsdD1BLm11bHRpcGx5LG49QS50cmFuc3Bvc2U7cmV0dXJuIGZ1bmN0aW9uKEEsbyl7aWYoIW98fEE8PTB8fEE+MylyZXR1cm4gbnVsbDt2YXIgcz1vLl9zaXplLGE9c1swXSxCPXNbMV0sYz0wLGc9TWF0aC5tYXgoMTYsMTAqTWF0aC5zcXJ0KEIpKSxFPWZ1bmN0aW9uKEEsaSxyLG8scyl7dmFyIGE9bihpKTtpZigxPT09QSYmbz09PXIpcmV0dXJuIGUoaSxhKTtpZigyPT09QSl7Zm9yKHZhciBCPWEuX2luZGV4LGM9YS5fcHRyLGc9MCxFPTA7RTxyO0UrKyl7dmFyIFE9Y1tFXTtpZihjW0VdPWcsIShjW0UrMV0tUT5zKSlmb3IodmFyIHU9Y1tFKzFdO1E8dTtRKyspQltnKytdPUJbUV19cmV0dXJuIGNbcl09ZyxpPW4oYSksdChhLGkpfXJldHVybiB0KGEsaSl9KEEsbyxhLEIsZz1NYXRoLm1pbihCLTIsZykpOyFmdW5jdGlvbihBLGUsdCl7Zm9yKHZhciBuPUEuX3ZhbHVlcyxpPUEuX2luZGV4LHI9QS5fcHRyLG89QS5fc2l6ZVsxXSxzPTAsYT0wO2E8bzthKyspe3ZhciBCPXJbYV07Zm9yKHJbYV09cztCPHJbYSsxXTtCKyspZShpW0JdLGEsbj9uW0JdOjEsbnVsbCkmJihpW3NdPWlbQl0sbiYmKG5bc109bltCXSkscysrKX1yW29dPXMsaS5zcGxpY2UocyxpLmxlbmd0aC1zKSxuJiZuLnNwbGljZShzLG4ubGVuZ3RoLXMpfShFLHIpO2Zvcih2YXIgUSx1LGwsaCx3LEMsSSxNLGQscCxtLEYsRCxZLGYsTixVPUUuX2luZGV4LHk9RS5fcHRyLFQ9eVtCXSx4PVtdLFI9W10sRz1CKzEsUz0yKihCKzEpLGI9MyooQisxKSxIPTQqKEIrMSksdj01KihCKzEpLGs9NiooQisxKSxqPTcqKEIrMSksSj14LHo9ZnVuY3Rpb24oQSxlLHQsbixyLG8scyxhLEIsYyxnLEUpe2Zvcih2YXIgUT0wO1E8QTtRKyspdFswK1FdPWVbUSsxXS1lW1FdO3RbMCtBXT0wO2Zvcih2YXIgdT0wO3U8PUE7dSsrKXRbcit1XT0tMSxvW3VdPS0xLHRbcyt1XT0tMSx0W2ErdV09LTEsdFtCK3VdPTEsdFtjK3VdPTEsdFtnK3VdPTAsdFtFK3VdPXRbMCt1XTt2YXIgbD1pKDAsMCx0LGMsQSk7cmV0dXJuIHRbZytBXT0tMixlW0FdPS0xLHRbYytBXT0wLGx9KEIseSxSLDAsYixKLFMsaixHLGssSCx2KSxMPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8scyxhLEIsYyl7Zm9yKHZhciBnPTAsRT0wO0U8QTtFKyspe3ZhciBRPXRbbitFXTtpZigwPT09USl0W2krRV09LTIsZysrLGVbRV09LTEsdFtyK0VdPTA7ZWxzZSBpZihRPm8pdFtzK0VdPTAsdFtpK0VdPS0xLGcrKyxlW0VdPVdnKEEpLHRbcytBXSsrO2Vsc2V7dmFyIHU9dFthK1FdOy0xIT09dSYmKEJbdV09RSksdFtjK0VdPXRbYStRXSx0W2ErUV09RX19cmV0dXJuIGd9KEIseSxSLHYsSCxrLGcsRyxiLEosUyksUD0wO0w8Qjspe2ZvcihsPS0xO1A8QiYmLTE9PT0obD1SW2IrUF0pO1ArKyk7LTEhPT1SW1MrbF0mJihKW1JbUytsXV09LTEpLFJbYitQXT1SW1MrbF07dmFyIE89UltIK2xdLFY9UltHK2xdO0wrPVY7dmFyIFc9MDtSW0crbF09LVY7dmFyIEs9eVtsXSxYPTA9PT1PP0s6VCxaPVg7Zm9yKGg9MTtoPD1PKzE7aCsrKXtmb3IoaD5PPyhDPWwsST1LLE09UlswK2xdLU8pOihJPXlbQz1VW0srK11dLE09UlswK0NdKSx3PTE7dzw9TTt3KyspKGQ9UltHKyhRPVVbSSsrXSldKTw9MHx8KFcrPWQsUltHK1FdPS1kLFVbWisrXT1RLC0xIT09UltTK1FdJiYoSltSW1MrUV1dPUpbUV0pLC0xIT09SltRXT9SW1MrSltRXV09UltTK1FdOlJbYitSW3YrUV1dPVJbUytRXSk7QyE9PWwmJih5W0NdPVdnKGwpLFJbaytDXT0wKX1mb3IoMCE9PU8mJihUPVopLFJbditsXT1XLHlbbF09WCxSWzArbF09Wi1YLFJbSCtsXT0tMix6PWkoeixjLFIsayxCKSxwPVg7cDxaO3ArKylpZighKChtPVJbSCsoUT1VW3BdKV0pPD0wKSl7dmFyIF89ei0oZD0tUltHK1FdKTtmb3IoSz15W1FdLEY9eVtRXSttLTE7Szw9RjtLKyspUltrKyhDPVVbS10pXT49ej9SW2srQ10tPWQ6MCE9PVJbaytDXSYmKFJbaytDXT1SW3YrQ10rXyl9Zm9yKHA9WDtwPFo7cCsrKXtmb3IoRD0oRj15W1E9VVtwXV0pK1JbSCtRXS0xLFk9RixmPTAsTj0wLEs9RjtLPD1EO0srKylpZigwIT09UltrKyhDPVVbS10pXSl7dmFyIHE9UltrK0NdLXo7cT4wPyhOKz1xLFVbWSsrXT1DLGYrPUMpOih5W0NdPVdnKGwpLFJbaytDXT0wKX1SW0grUV09WS1GKzE7dmFyICQ9WSxBQT1GK1JbMCtRXTtmb3IoSz1EKzE7SzxBQTtLKyspe3ZhciBlQT1SW0crKHU9VVtLXSldO2VBPD0wfHwoTis9ZUEsVVtZKytdPXUsZis9dSl9MD09PU4/KHlbUV09V2cobCksVy09ZD0tUltHK1FdLFYrPWQsTCs9ZCxSW0crUV09MCxSW0grUV09LTEpOihSW3YrUV09TWF0aC5taW4oUlt2K1FdLE4pLFVbWV09VVskXSxVWyRdPVVbRl0sVVtGXT1sLFJbMCtRXT1ZLUYrMSxmPShmPDA/LWY6ZiklQixSW1MrUV09UltqK2ZdLFJbaitmXT1RLEpbUV09Zil9Zm9yKFJbditsXT1XLHo9aSh6KyhjPU1hdGgubWF4KGMsVykpLGMsUixrLEIpLHA9WDtwPFo7cCsrKWlmKCEoUltHKyhRPVVbcF0pXT49MCkpZm9yKFE9UltqKyhmPUpbUV0pXSxSW2orZl09LTE7LTEhPT1RJiYtMSE9PVJbUytRXTtRPVJbUytRXSx6Kyspe2ZvcihNPVJbMCtRXSxtPVJbSCtRXSxLPXlbUV0rMTtLPD15W1FdK00tMTtLKyspUltrK1VbS11dPXo7dmFyIHRBPVE7Zm9yKHU9UltTK1FdOy0xIT09dTspe3ZhciBuQT1SWzArdV09PT1NJiZSW0grdV09PT1tO2ZvcihLPXlbdV0rMTtuQSYmSzw9eVt1XStNLTE7SysrKVJbaytVW0tdXSE9PXomJihuQT0wKTtuQT8oeVt1XT1XZyhRKSxSW0crUV0rPVJbRyt1XSxSW0crdV09MCxSW0grdV09LTEsdT1SW1MrdV0sUltTK3RBXT11KToodEE9dSx1PVJbUyt1XSl9fWZvcihLPVgscD1YO3A8WjtwKyspKGQ9LVJbRysoUT1VW3BdKV0pPD0wfHwoUltHK1FdPWQsTj1SW3YrUV0rVy1kLC0xIT09UltiKyhOPU1hdGgubWluKE4sQi1MLWQpKV0mJihKW1JbYitOXV09USksUltTK1FdPVJbYitOXSxKW1FdPS0xLFJbYitOXT1RLFA9TWF0aC5taW4oUCxOKSxSW3YrUV09TixVW0srK109USk7UltHK2xdPVYsMD09KFJbMCtsXT1LLVgpJiYoeVtsXT0tMSxSW2srbF09MCksMCE9PU8mJihUPUspfWZvcihRPTA7UTxCO1ErKyl5W1FdPVdnKHlbUV0pO2Zvcih1PTA7dTw9Qjt1KyspUltiK3VdPS0xO2Zvcih1PUI7dT49MDt1LS0pUltHK3VdPjB8fChSW1MrdV09UltiK3lbdV1dLFJbYit5W3VdXT11KTtmb3IoQz1CO0M+PTA7Qy0tKVJbRytDXTw9MHx8LTEhPT15W0NdJiYoUltTK0NdPVJbYit5W0NdXSxSW2IreVtDXV09Qyk7Zm9yKGw9MCxRPTA7UTw9QjtRKyspLTE9PT15W1FdJiYobD1WZyhRLGwsUixiLFMseCxrKSk7cmV0dXJuIHguc3BsaWNlKHgubGVuZ3RoLTEsMSkseH07ZnVuY3Rpb24gaShBLGUsdCxuLGkpe2lmKEE8Mnx8QStlPDApe2Zvcih2YXIgcj0wO3I8aTtyKyspMCE9PXRbbityXSYmKHRbbityXT0xKTtBPTJ9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUpe3JldHVybiBBIT09ZX19KSk7ZnVuY3Rpb24gWGcoQSxlLHQsbixpLHIsbyl7dmFyIHMsYSxCLGM9MDtpZihBPD1lfHx0W24rZV08PXRbaStBXSlyZXR1cm4tMTt0W2krQV09dFtuK2VdO3ZhciBnPXRbcitBXTtpZih0W3IrQV09ZSwtMT09PWcpYz0xLEI9QTtlbHNle2ZvcihjPTIsQj1nO0IhPT10W28rQl07Qj10W28rQl0pO2ZvcihzPWc7cyE9PUI7cz1hKWE9dFtvK3NdLHRbbytzXT1CfXJldHVybntqbGVhZjpjLHE6Qn19dmFyIFpnPXBBKCJjc0NvdW50cyIsWyJ0cmFuc3Bvc2UiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50cmFuc3Bvc2U7cmV0dXJuIGZ1bmN0aW9uKEEsdCxuLGkpe2lmKCFBfHwhdHx8IW4pcmV0dXJuIG51bGw7dmFyIHIsbyxzLGEsQixjLGcsRT1BLl9zaXplLFE9RVswXSx1PUVbMV0sbD00KnUrKGk/dStRKzE6MCksaD1bXSx3PXUsQz0yKnUsST0zKnUsTT00KnUsZD01KnUrMTtmb3Iocz0wO3M8bDtzKyspaFtzXT0tMTt2YXIgcD1bXSxtPWUoQSksRj1tLl9pbmRleCxEPW0uX3B0cjtmb3Iocz0wO3M8dTtzKyspZm9yKHBbbz1uW3NdXT0tMT09PWhbSStvXT8xOjA7LTEhPT1vJiYtMT09PWhbSStvXTtvPXRbb10paFtJK29dPXM7aWYoaSl7Zm9yKHM9MDtzPHU7cysrKWhbbltzXV09cztmb3Iocj0wO3I8UTtyKyspe2ZvcihzPXUsYz1EW3JdLGc9RFtyKzFdLEI9YztCPGc7QisrKXM9TWF0aC5taW4ocyxoW0ZbQl1dKTtoW2Qrcl09aFtNK3NdLGhbTStzXT1yfX1mb3Iocj0wO3I8dTtyKyspaFswK3JdPXI7Zm9yKHM9MDtzPHU7cysrKXtmb3IoLTEhPT10W289bltzXV0mJnBbdFtvXV0tLSxhPWk/aFtNK3NdOm87LTEhPT1hO2E9aT9oW2QrYV06LTEpZm9yKEI9RFthXTtCPERbYSsxXTtCKyspe3ZhciBZPVhnKHI9RltCXSxvLGgsSSx3LEMsMCk7WS5qbGVhZj49MSYmcFtvXSsrLDI9PT1ZLmpsZWFmJiZwW1kucV0tLX0tMSE9PXRbb10mJihoWzArb109dFtvXSl9Zm9yKG89MDtvPHU7bysrKS0xIT09dFtvXSYmKHBbdFtvXV0rPXBbb10pO3JldHVybiBwfX0pKSxfZz1wQSgiY3NTcXIiLFsiYWRkIiwibXVsdGlwbHkiLCJ0cmFuc3Bvc2UiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5hZGQsdD1BLm11bHRpcGx5LG49QS50cmFuc3Bvc2UsaT1LZyh7YWRkOmUsbXVsdGlwbHk6dCx0cmFuc3Bvc2U6bn0pLHI9Wmcoe3RyYW5zcG9zZTpufSk7cmV0dXJuIGZ1bmN0aW9uKEEsZSx0KXt2YXIgbixvPWUuX3B0cixzPWUuX3NpemVbMV0sYT17fTtpZihhLnE9aShBLGUpLEEmJiFhLnEpcmV0dXJuIG51bGw7aWYodCl7dmFyIEI9QT9mdW5jdGlvbihBLGUsdCxuKXtBLl92YWx1ZXM7Zm9yKHZhciBpPUEuX2luZGV4LHI9QS5fcHRyLG89QS5fc2l6ZSxzPUEuX2RhdGF0eXBlLGE9b1swXSxCPW9bMV0sYz1udWxsLGc9W10sRT1bXSxRPTAsdT0wO3U8Qjt1Kyspe0VbdV09UTtmb3IodmFyIGw9dD90W3VdOnUsaD1yW2xdLHc9cltsKzFdLEM9aDtDPHc7QysrKXt2YXIgST1pW0NdO2dbUV09SSxRKyt9fXJldHVybiBFW0JdPVEsQS5jcmVhdGVTcGFyc2VNYXRyaXgoe3ZhbHVlczpjLGluZGV4OmcscHRyOkUsc2l6ZTpbYSxCXSxkYXRhdHlwZTpzfSl9KGUsMCxhLnEpOmU7YS5wYXJlbnQ9ZnVuY3Rpb24oQSxlKXtpZighQSlyZXR1cm4gbnVsbDt2YXIgdCxuLGk9QS5faW5kZXgscj1BLl9wdHIsbz1BLl9zaXplLHM9b1swXSxhPW9bMV0sQj1bXSxjPVtdLGc9YTtmb3IodD0wO3Q8czt0KyspY1tnK3RdPS0xO2Zvcih2YXIgRT0wO0U8YTtFKyspe0JbRV09LTEsY1swK0VdPS0xO2Zvcih2YXIgUT1yW0VdLHU9cltFKzFdLGw9UTtsPHU7bCsrKXt2YXIgaD1pW2xdO2Zvcih0PWNbZytoXTstMSE9PXQmJnQ8RTt0PW4pbj1jWzArdF0sY1swK3RdPUUsLTE9PT1uJiYoQlt0XT1FKTtjW2craF09RX19cmV0dXJuIEJ9KEIpO3ZhciBjPWZ1bmN0aW9uKEEsZSl7aWYoIUEpcmV0dXJuIG51bGw7dmFyIHQsbj0wLGk9W10scj1bXSxvPWUscz0yKmU7Zm9yKHQ9MDt0PGU7dCsrKXJbMCt0XT0tMTtmb3IodD1lLTE7dD49MDt0LS0pLTEhPT1BW3RdJiYocltvK3RdPXJbMCtBW3RdXSxyWzArQVt0XV09dCk7Zm9yKHQ9MDt0PGU7dCsrKS0xPT09QVt0XSYmKG49VmcodCxuLHIsMCxvLGkscykpO3JldHVybiBpfShhLnBhcmVudCxzKTtpZihhLmNwPXIoQixhLnBhcmVudCxjLDEpLEImJmEucGFyZW50JiZhLmNwJiZmdW5jdGlvbihBLGUpe3ZhciB0PUEuX3B0cixuPUEuX2luZGV4LGk9QS5fc2l6ZSxyPWlbMF0sbz1pWzFdO2UucGludj1bXSxlLmxlZnRtb3N0PVtdO3ZhciBzLGEsQixjLGcsRT1lLnBhcmVudCxRPWUucGludix1PWUubGVmdG1vc3QsbD1bXSxoPXIsdz1yK28sQz1yKzIqbztmb3IoYT0wO2E8bzthKyspbFtoK2FdPS0xLGxbdythXT0tMSxsW0MrYV09MDtmb3Iocz0wO3M8cjtzKyspdVtzXT0tMTtmb3IoYT1vLTE7YT49MDthLS0pZm9yKGM9dFthXSxnPXRbYSsxXSxCPWM7QjxnO0IrKyl1W25bQl1dPWE7Zm9yKHM9ci0xO3M+PTA7cy0tKVFbc109LTEsLTEhPT0oYT11W3NdKSYmKDA9PWxbQythXSsrJiYobFt3K2FdPXMpLGxbMCtzXT1sW2grYV0sbFtoK2FdPXMpO2ZvcihlLmxuej0wLGUubTI9cixhPTA7YTxvO2ErKylpZihzPWxbaCthXSxlLmxueisrLHM8MCYmKHM9ZS5tMisrKSxRW3NdPWEsISgtLUNbYV08PTApKXtlLmxueis9bFtDK2FdO3ZhciBJPUVbYV07LTEhPT1JJiYoMD09PWxbQytJXSYmKGxbdytJXT1sW3crYV0pLGxbMCtsW3crYV1dPWxbaCtJXSxsW2grSV09bFswK3NdLGxbQytJXSs9bFtDK2FdKX1mb3Iocz0wO3M8cjtzKyspUVtzXTwwJiYoUVtzXT1hKyspO3JldHVybiEwfShCLGEpKWZvcihhLnVuej0wLG49MDtuPHM7bisrKWEudW56Kz1hLmNwW25dfWVsc2UgYS51bno9NCpvW3NdK3MsYS5sbno9YS51bno7cmV0dXJuIGF9fSkpO2Z1bmN0aW9uIHFnKEEsZSl7cmV0dXJuIEFbZV08MH1mdW5jdGlvbiAkZyhBLGUpe0FbZV09V2coQVtlXSl9ZnVuY3Rpb24gQUUoQSl7cmV0dXJuIEE8MD9XZyhBKTpBfWZ1bmN0aW9uIGVFKEEsZSx0LG4saSl7dmFyIHIsbyxzLGE9ZS5faW5kZXgsQj1lLl9wdHIsYz1lLl9zaXplWzFdLGc9MDtmb3IoblswXT1BO2c+PTA7KXtBPW5bZ107dmFyIEU9aT9pW0FdOkE7cWcoQixBKXx8KCRnKEIsQSksbltjK2ddPUU8MD8wOkFFKEJbRV0pKTt2YXIgUT0xO2ZvcihvPW5bYytnXSxzPUU8MD8wOkFFKEJbRSsxXSk7bzxzO28rKylpZighcWcoQixyPWFbb10pKXtuW2MrZ109byxuWysrZ109cixRPTA7YnJlYWt9USYmKGctLSxuWy0tdF09QSl9cmV0dXJuIHR9dmFyIHRFPXBBKCJjc1Nwc29sdmUiLFsiZGl2aWRlU2NhbGFyIiwibXVsdGlwbHkiLCJzdWJ0cmFjdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmRpdmlkZVNjYWxhcix0PUEubXVsdGlwbHksbj1BLnN1YnRyYWN0O3JldHVybiBmdW5jdGlvbihBLGkscixvLHMsYSxCKXt2YXIgYyxnLEUsUSx1PUEuX3ZhbHVlcyxsPUEuX2luZGV4LGg9QS5fcHRyLHc9QS5fc2l6ZVsxXSxDPWkuX3ZhbHVlcyxJPWkuX2luZGV4LE09aS5fcHRyLGQ9ZnVuY3Rpb24oQSxlLHQsbixpKXt2YXIgcixvLHMsYT1BLl9wdHIsQj1BLl9zaXplLGM9ZS5faW5kZXgsZz1lLl9wdHIsRT1CWzFdLFE9RTtmb3Iobz1nW3RdLHM9Z1t0KzFdLHI9bztyPHM7cisrKXt2YXIgdT1jW3JdO3FnKGEsdSl8fChRPWVFKHUsQSxRLG4saSkpfWZvcihyPVE7cjxFO3IrKykkZyhhLG5bcl0pO3JldHVybiBRfShBLGkscixvLGEpO2ZvcihjPWQ7Yzx3O2MrKylzW29bY11dPTA7Zm9yKGc9TVtyXSxFPU1bcisxXSxjPWc7YzxFO2MrKylzW0lbY11dPUNbY107Zm9yKHZhciBwPWQ7cDx3O3ArKyl7dmFyIG09b1twXSxGPWE/YVttXTptO2lmKCEoRjwwKSlmb3IoZz1oW0ZdLEU9aFtGKzFdLHNbbV09ZShzW21dLHVbQj9nOkUtMV0pLGM9Qj9nKzE6ZyxRPUI/RTpFLTE7YzxRO2MrKyl7dmFyIEQ9bFtjXTtzW0RdPW4oc1tEXSx0KHVbY10sc1ttXSkpfX1yZXR1cm4gZH19KSksbkU9cEEoImNzTHUiLFsiYWJzIiwiZGl2aWRlU2NhbGFyIiwibXVsdGlwbHkiLCJzdWJ0cmFjdCIsImxhcmdlciIsImxhcmdlckVxIiwiU3BhcnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuYWJzLHQ9QS5kaXZpZGVTY2FsYXIsbj1BLm11bHRpcGx5LGk9QS5zdWJ0cmFjdCxyPUEubGFyZ2VyLG89QS5sYXJnZXJFcSxzPUEuU3BhcnNlTWF0cml4LGE9dEUoe2RpdmlkZVNjYWxhcjp0LG11bHRpcGx5Om4sc3VidHJhY3Q6aX0pO3JldHVybiBmdW5jdGlvbihBLGksQil7aWYoIUEpcmV0dXJuIG51bGw7dmFyIGMsZz1BLl9zaXplWzFdLEU9MTAwLFE9MTAwO2kmJihjPWkucSxFPWkubG56fHxFLFE9aS51bnp8fFEpO3ZhciB1LGwsaD1bXSx3PVtdLEM9W10sST1uZXcgcyh7dmFsdWVzOmgsaW5kZXg6dyxwdHI6QyxzaXplOltnLGddfSksTT1bXSxkPVtdLHA9W10sbT1uZXcgcyh7dmFsdWVzOk0saW5kZXg6ZCxwdHI6cCxzaXplOltnLGddfSksRj1bXSxEPVtdLFk9W107Zm9yKHU9MDt1PGc7dSsrKURbdV09MCxGW3VdPS0xLENbdSsxXT0wO0U9MCxRPTA7Zm9yKHZhciBmPTA7ZjxnO2YrKyl7Q1tmXT1FLHBbZl09UTt2YXIgTj1jP2NbZl06ZixVPWEoSSxBLE4sWSxELEYsMSkseT0tMSxUPS0xO2ZvcihsPVU7bDxnO2wrKylpZihGW3U9WVtsXV08MCl7dmFyIHg9ZShEW3VdKTtyKHgsVCkmJihUPXgseT11KX1lbHNlIGRbUV09Rlt1XSxNW1ErK109RFt1XTtpZigtMT09PXl8fFQ8PTApcmV0dXJuIG51bGw7RltOXTwwJiZvKGUoRFtOXSksbihULEIpKSYmKHk9Tik7dmFyIFI9RFt5XTtmb3IoZFtRXT1mLE1bUSsrXT1SLEZbeV09Zix3W0VdPXksaFtFKytdPTEsbD1VO2w8ZztsKyspRlt1PVlbbF1dPDAmJih3W0VdPXUsaFtFKytdPXQoRFt1XSxSKSksRFt1XT0wfWZvcihDW2ddPUUscFtnXT1RLGw9MDtsPEU7bCsrKXdbbF09Rlt3W2xdXTtyZXR1cm4gaC5zcGxpY2UoRSxoLmxlbmd0aC1FKSx3LnNwbGljZShFLHcubGVuZ3RoLUUpLE0uc3BsaWNlKFEsTS5sZW5ndGgtUSksZC5zcGxpY2UoUSxkLmxlbmd0aC1RKSx7TDpJLFU6bSxwaW52OkZ9fX0pKSxpRT1wQSgic2x1IixbInR5cGVkIiwiYWJzIiwiYWRkIiwibXVsdGlwbHkiLCJ0cmFuc3Bvc2UiLCJkaXZpZGVTY2FsYXIiLCJzdWJ0cmFjdCIsImxhcmdlciIsImxhcmdlckVxIiwiU3BhcnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFicyxuPUEuYWRkLGk9QS5tdWx0aXBseSxyPUEudHJhbnNwb3NlLG89QS5kaXZpZGVTY2FsYXIscz1BLnN1YnRyYWN0LGE9QS5sYXJnZXIsQj1BLmxhcmdlckVxLGM9QS5TcGFyc2VNYXRyaXgsZz1fZyh7YWRkOm4sbXVsdGlwbHk6aSx0cmFuc3Bvc2U6cn0pLEU9bkUoe2Ficzp0LGRpdmlkZVNjYWxhcjpvLG11bHRpcGx5Omksc3VidHJhY3Q6cyxsYXJnZXI6YSxsYXJnZXJFcTpCLFNwYXJzZU1hdHJpeDpjfSk7cmV0dXJuIGUoInNsdSIseyJTcGFyc2VNYXRyaXgsIG51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUsdCl7aWYoIVYoZSl8fGU8MHx8ZT4zKXRocm93IG5ldyBFcnJvcigiU3ltYm9saWMgT3JkZXJpbmcgYW5kIEFuYWx5c2lzIG9yZGVyIG11c3QgYmUgYW4gaW50ZWdlciBudW1iZXIgaW4gdGhlIGludGVydmFsIFswLCAzXSIpO2lmKHQ8MHx8dD4xKXRocm93IG5ldyBFcnJvcigiUGFydGlhbCBwaXZvdGluZyB0aHJlc2hvbGQgbXVzdCBiZSBhIG51bWJlciBmcm9tIDAgdG8gMSIpO3ZhciBuPWcoZSxBLCExKSxpPUUoQSxuLHQpO3JldHVybntMOmkuTCxVOmkuVSxwOmkucGludixxOm4ucSx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiJMOiAiK3RoaXMuTC50b1N0cmluZygpKyJcblU6ICIrdGhpcy5VLnRvU3RyaW5nKCkrIlxucDogIit0aGlzLnAudG9TdHJpbmcoKSsodGhpcy5xPyJcbnE6ICIrdGhpcy5xLnRvU3RyaW5nKCk6IiIpKyJcbiJ9fX19KX0pKTtmdW5jdGlvbiByRShBLGUpe3ZhciB0LG49ZS5sZW5ndGgsaT1bXTtpZihBKWZvcih0PTA7dDxuO3QrKylpW0FbdF1dPWVbdF07ZWxzZSBmb3IodD0wO3Q8bjt0KyspaVt0XT1lW3RdO3JldHVybiBpfXZhciBvRT0ibHVzb2x2ZSIsc0U9cEEob0UsWyJ0eXBlZCIsIm1hdHJpeCIsImx1cCIsInNsdSIsInVzb2x2ZSIsImxzb2x2ZSIsIkRlbnNlTWF0cml4Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEubHVwLGk9QS5zbHUscj1BLnVzb2x2ZSxvPUEubHNvbHZlLHM9QmEoe0RlbnNlTWF0cml4OkEuRGVuc2VNYXRyaXh9KTtyZXR1cm4gZShvRSx7IkFycmF5LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtBPXQoQSk7dmFyIGk9bihBKTtyZXR1cm4gQihpLkwsaS5VLGkucCxudWxsLGUpLnZhbHVlT2YoKX0sIkRlbnNlTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXt2YXIgdD1uKEEpO3JldHVybiBCKHQuTCx0LlUsdC5wLG51bGwsZSl9LCJTcGFyc2VNYXRyaXgsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3ZhciB0PW4oQSk7cmV0dXJuIEIodC5MLHQuVSx0LnAsbnVsbCxlKX0sIlNwYXJzZU1hdHJpeCwgQXJyYXkgfCBNYXRyaXgsIG51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUsdCxuKXt2YXIgcj1pKEEsdCxuKTtyZXR1cm4gQihyLkwsci5VLHIucCxyLnEsZSl9LCJPYmplY3QsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBCKEEuTCxBLlUsQS5wLEEucSxlKX19KTtmdW5jdGlvbiBhKEEpe2lmKGcoQSkpcmV0dXJuIEE7aWYoYyhBKSlyZXR1cm4gdChBKTt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIE1hdHJpeCBMVSBkZWNvbXBvc2l0aW9uIil9ZnVuY3Rpb24gQihBLGUsdCxuLGkpe0E9YShBKSxlPWEoZSksdCYmKChpPXMoQSxpLCEwKSkuX2RhdGE9ckUodCxpLl9kYXRhKSk7dmFyIEI9byhBLGkpLGM9cihlLEIpO3JldHVybiBuJiYoYy5fZGF0YT1yRShuLGMuX2RhdGEpKSxjfX0pKSxhRT0icG9seW5vbWlhbFJvb3QiLEJFPXBBKGFFLFsidHlwZWQiLCJpc1plcm8iLCJlcXVhbFNjYWxhciIsImFkZCIsInN1YnRyYWN0IiwibXVsdGlwbHkiLCJkaXZpZGUiLCJzcXJ0IiwidW5hcnlNaW51cyIsImNicnQiLCJ0eXBlT2YiLCJpbSIsInJlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmlzWmVybyxuPUEuZXF1YWxTY2FsYXIsaT1BLmFkZCxyPUEuc3VidHJhY3Qsbz1BLm11bHRpcGx5LHM9QS5kaXZpZGUsYT1BLnNxcnQsQj1BLnVuYXJ5TWludXMsYz1BLmNicnQsZz1BLnR5cGVPZixFPUEuaW0sUT1BLnJlO3JldHVybiBlKGFFLHsibnVtYmVyfENvbXBsZXgsIC4uLm51bWJlcnxDb21wbGV4IjpmdW5jdGlvbihBLGUpe2Zvcih2YXIgdT1bQV0uY29uY2F0KHp0KGUpKTt1Lmxlbmd0aD4wJiZ0KHVbdS5sZW5ndGgtMV0pOyl1LnBvcCgpO2lmKHUubGVuZ3RoPDIpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIlBvbHlub21pYWwgWyIuY29uY2F0KEEsIiwgIikuY29uY2F0KGUsIl0gbXVzdCBoYXZlIGEgbm9uLXplcm8gbm9uLWNvbnN0YW50IGNvZWZmaWNpZW50IikpO3N3aXRjaCh1Lmxlbmd0aCl7Y2FzZSAyOnJldHVybltCKHModVswXSx1WzFdKSldO2Nhc2UgMzp2YXIgbD1pcih1LDMpLGg9bFswXSx3PWxbMV0sQz1sWzJdLEk9bygyLEMpLE09byh3LHcpLGQ9byg0LEMsaCk7aWYobihNLGQpKXJldHVybltzKEIodyksSSldO3ZhciBwPWEocihNLGQpKTtyZXR1cm5bcyhyKHAsdyksSSkscyhyKEIocCksdyksSSldO2Nhc2UgNDp2YXIgbT1pcih1LDQpLEY9bVswXSxEPW1bMV0sWT1tWzJdLGY9bVszXSxOPUIobygzLGYpKSxVPW8oWSxZKSx5PW8oMyxmLEQpLFQ9aShvKDIsWSxZLFkpLG8oMjcsZixmLEYpKSx4PW8oOSxmLFksRCk7aWYobihVLHkpJiZuKFQseCkpcmV0dXJuW3MoWSxOKV07dmFyIFIsRz1yKFUseSksUz1yKFQseCksYj1pKG8oMTgsZixZLEQsRiksbyhZLFksRCxEKSksSD1pKG8oNCxZLFksWSxGKSxvKDQsZixELEQsRCksbygyNyxmLGYsRixGKSk7cmV0dXJuIG4oYixIKT9bcyhyKG8oNCxmLFksRCksaShvKDksZixmLEYpLG8oWSxZLFkpKSksbyhmLEcpKSxzKHIobyg5LGYsRiksbyhZLEQpKSxvKDIsRykpXTooUj1uKFUseSk/UzpzKGkoUyxhKHIobyhTLFMpLG8oNCxHLEcsRykpKSksMiksYyhSLCEwKS50b0FycmF5KCkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gcyhpKFksQSxzKEcsQSkpLE4pfSkpLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIkNvbXBsZXgiPT09ZyhBKSYmbihRKEEpLFEoQSkrRShBKSk/UShBKTpBfSkpKTtkZWZhdWx0OnRocm93IG5ldyBSYW5nZUVycm9yKCJvbmx5IGltcGxlbWVudGVkIGZvciBjdWJpYyBvciBsb3dlci1vcmRlciBwb2x5bm9taWFscywgbm90ICIuY29uY2F0KHUpKX19fSl9KSksY0U9cEEoIkhlbHAiLFsicGFyc2UiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5wYXJzZTtmdW5jdGlvbiB0KEEpe2lmKCEodGhpcyBpbnN0YW5jZW9mIHQpKXRocm93IG5ldyBTeW50YXhFcnJvcigiQ29uc3RydWN0b3IgbXVzdCBiZSBjYWxsZWQgd2l0aCB0aGUgbmV3IG9wZXJhdG9yIik7aWYoIUEpdGhyb3cgbmV3IEVycm9yKCdBcmd1bWVudCAiZG9jIiBtaXNzaW5nJyk7dGhpcy5kb2M9QX1yZXR1cm4gdC5wcm90b3R5cGUudHlwZT0iSGVscCIsdC5wcm90b3R5cGUuaXNIZWxwPSEwLHQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5kb2N8fHt9LHQ9IlxuIjtpZihBLm5hbWUmJih0Kz0iTmFtZTogIitBLm5hbWUrIlxuXG4iKSxBLmNhdGVnb3J5JiYodCs9IkNhdGVnb3J5OiAiK0EuY2F0ZWdvcnkrIlxuXG4iKSxBLmRlc2NyaXB0aW9uJiYodCs9IkRlc2NyaXB0aW9uOlxuICAgICIrQS5kZXNjcmlwdGlvbisiXG5cbiIpLEEuc3ludGF4JiYodCs9IlN5bnRheDpcbiAgICAiK0Euc3ludGF4LmpvaW4oIlxuICAgICIpKyJcblxuIiksQS5leGFtcGxlcyl7dCs9IkV4YW1wbGVzOlxuIjtmb3IodmFyIG49e30saT0wO2k8QS5leGFtcGxlcy5sZW5ndGg7aSsrKXt2YXIgcj1BLmV4YW1wbGVzW2ldO3QrPSIgICAgIityKyJcbiI7dmFyIG89dm9pZCAwO3RyeXtvPWUocikuY29tcGlsZSgpLmV2YWx1YXRlKG4pfWNhdGNoKEEpe289QX12b2lkIDA9PT1vfHxJKG8pfHwodCs9IiAgICAgICAgIitWdChvLHtwcmVjaXNpb246MTR9KSsiXG4iKX10Kz0iXG4ifXJldHVybiBBLm1heVRocm93JiZBLm1heVRocm93Lmxlbmd0aCYmKHQrPSJUaHJvd3M6ICIrQS5tYXlUaHJvdy5qb2luKCIsICIpKyJcblxuIiksQS5zZWVhbHNvJiZBLnNlZWFsc28ubGVuZ3RoJiYodCs9IlNlZSBhbHNvOiAiK0Euc2VlYWxzby5qb2luKCIsICIpKyJcbiIpLHR9LHQucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3ZhciBBPXVBKHRoaXMuZG9jKTtyZXR1cm4gQS5tYXRoanM9IkhlbHAiLEF9LHQuZnJvbUpTT049ZnVuY3Rpb24oQSl7dmFyIGU9e307cmV0dXJuIE9iamVjdC5rZXlzKEEpLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIm1hdGhqcyIhPT1BfSkpLmZvckVhY2goKGZ1bmN0aW9uKHQpe2VbdF09QVt0XX0pKSxuZXcgdChlKX0sdC5wcm90b3R5cGUudmFsdWVPZj10LnByb3RvdHlwZS50b1N0cmluZyx0fSkse2lzQ2xhc3M6ITB9KSxnRT1wQSgiQ2hhaW4iLFsiP29uIiwibWF0aCIsInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEub24sdD1BLm1hdGgsbj1BLnR5cGVkO2Z1bmN0aW9uIGkoQSl7aWYoISh0aGlzIGluc3RhbmNlb2YgaSkpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDb25zdHJ1Y3RvciBtdXN0IGJlIGNhbGxlZCB3aXRoIHRoZSBuZXcgb3BlcmF0b3IiKTtMKEEpP3RoaXMudmFsdWU9QS52YWx1ZTp0aGlzLnZhbHVlPUF9ZnVuY3Rpb24gcihBLGUpe0lBKGkucHJvdG90eXBlLEEsKGZ1bmN0aW9uKCl7dmFyIEE9ZSgpO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBBKXJldHVybiBvKEEpfSkpfWZ1bmN0aW9uIG8oQSl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoMD09PWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIG5ldyBpKEEodGhpcy52YWx1ZSkpO2Zvcih2YXIgZT1bdGhpcy52YWx1ZV0sdD0wO3Q8YXJndW1lbnRzLmxlbmd0aDt0KyspZVt0KzFdPWFyZ3VtZW50c1t0XTtpZihuLmlzVHlwZWRGdW5jdGlvbihBKSl7dmFyIHI9bi5yZXNvbHZlKEEsZSk7aWYoMT09PXIucGFyYW1zLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoImNoYWluIGZ1bmN0aW9uICIrQS5uYW1lKyIgY2Fubm90IG1hdGNoIHJlc3QgcGFyYW1ldGVyIGJldHdlZW4gY2hhaW4gdmFsdWUgYW5kIGFkZGl0aW9uYWwgYXJndW1lbnRzLiIpO3JldHVybiBuZXcgaShyLmltcGxlbWVudGF0aW9uLmFwcGx5KEEsZSkpfXJldHVybiBuZXcgaShBLmFwcGx5KEEsZSkpfX1pLnByb3RvdHlwZS50eXBlPSJDaGFpbiIsaS5wcm90b3R5cGUuaXNDaGFpbj0hMCxpLnByb3RvdHlwZS5kb25lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9LGkucHJvdG90eXBlLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX0saS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gVnQodGhpcy52YWx1ZSl9LGkucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybnttYXRoanM6IkNoYWluIix2YWx1ZTp0aGlzLnZhbHVlfX0saS5mcm9tSlNPTj1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IGkoQS52YWx1ZSl9LGkuY3JlYXRlUHJveHk9ZnVuY3Rpb24oQSxlKXtpZigic3RyaW5nIj09dHlwZW9mIEEpYT1BLCJmdW5jdGlvbiI9PXR5cGVvZihCPWUpJiYoaS5wcm90b3R5cGVbYV09byhCKSk7ZWxzZXt2YXIgdD1mdW5jdGlvbihlKXtNQShBLGUpJiZ2b2lkIDA9PT1zW2VdJiZyKGUsKGZ1bmN0aW9uKCl7cmV0dXJuIEFbZV19KSl9O2Zvcih2YXIgbiBpbiBBKXQobil9dmFyIGEsQn07dmFyIHM9e2V4cHJlc3Npb246ITAsZG9jczohMCx0eXBlOiEwLGNsYXNzZXM6ITAsanNvbjohMCxlcnJvcjohMCxpc0NoYWluOiEwfTtyZXR1cm4gaS5jcmVhdGVQcm94eSh0KSxlJiZlKCJpbXBvcnQiLChmdW5jdGlvbihBLGUsdCl7dHx8cihBLGUpfSkpLGl9KSx7aXNDbGFzczohMH0pLEVFPXtuYW1lOiJlIixjYXRlZ29yeToiQ29uc3RhbnRzIixzeW50YXg6WyJlIl0sZGVzY3JpcHRpb246IkV1bGVyJ3MgbnVtYmVyLCB0aGUgYmFzZSBvZiB0aGUgbmF0dXJhbCBsb2dhcml0aG0uIEFwcHJveGltYXRlbHkgZXF1YWwgdG8gMi43MTgyOCIsZXhhbXBsZXM6WyJlIiwiZSBeIDIiLCJleHAoMikiLCJsb2coZSkiXSxzZWVhbHNvOlsiZXhwIl19LFFFPXtuYW1lOiJwaSIsY2F0ZWdvcnk6IkNvbnN0YW50cyIsc3ludGF4OlsicGkiXSxkZXNjcmlwdGlvbjoiVGhlIG51bWJlciBwaSBpcyBhIG1hdGhlbWF0aWNhbCBjb25zdGFudCB0aGF0IGlzIHRoZSByYXRpbyBvZiBhIGNpcmNsZSdzIGNpcmN1bWZlcmVuY2UgdG8gaXRzIGRpYW1ldGVyLCBhbmQgaXMgYXBwcm94aW1hdGVseSBlcXVhbCB0byAzLjE0MTU5IixleGFtcGxlczpbInBpIiwic2luKHBpLzIpIl0sc2VlYWxzbzpbInRhdSJdfSx1RT17YmlnbnVtYmVyOntuYW1lOiJiaWdudW1iZXIiLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbImJpZ251bWJlcih4KSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSBiaWcgbnVtYmVyIGZyb20gYSBudW1iZXIgb3Igc3RyaW5nLiIsZXhhbXBsZXM6WyIwLjEgKyAwLjIiLCJiaWdudW1iZXIoMC4xKSArIGJpZ251bWJlcigwLjIpIiwnYmlnbnVtYmVyKCI3LjIiKScsJ2JpZ251bWJlcigiNy4yZTUwMCIpJywiYmlnbnVtYmVyKFswLjEsIDAuMiwgMC4zXSkiXSxzZWVhbHNvOlsiYm9vbGVhbiIsImNvbXBsZXgiLCJmcmFjdGlvbiIsImluZGV4IiwibWF0cml4Iiwic3RyaW5nIiwidW5pdCJdfSxib29sZWFuOntuYW1lOiJib29sZWFuIixjYXRlZ29yeToiQ29uc3RydWN0aW9uIixzeW50YXg6WyJ4IiwiYm9vbGVhbih4KSJdLGRlc2NyaXB0aW9uOiJDb252ZXJ0IGEgc3RyaW5nIG9yIG51bWJlciBpbnRvIGEgYm9vbGVhbi4iLGV4YW1wbGVzOlsiYm9vbGVhbigwKSIsImJvb2xlYW4oMSkiLCJib29sZWFuKDMpIiwnYm9vbGVhbigidHJ1ZSIpJywnYm9vbGVhbigiZmFsc2UiKScsImJvb2xlYW4oWzEsIDAsIDEsIDFdKSJdLHNlZWFsc286WyJiaWdudW1iZXIiLCJjb21wbGV4IiwiaW5kZXgiLCJtYXRyaXgiLCJudW1iZXIiLCJzdHJpbmciLCJ1bml0Il19LGNvbXBsZXg6e25hbWU6ImNvbXBsZXgiLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbImNvbXBsZXgoKSIsImNvbXBsZXgocmUsIGltKSIsImNvbXBsZXgoc3RyaW5nKSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSBjb21wbGV4IG51bWJlci4iLGV4YW1wbGVzOlsiY29tcGxleCgpIiwiY29tcGxleCgyLCAzKSIsJ2NvbXBsZXgoIjcgLSAyaSIpJ10sc2VlYWxzbzpbImJpZ251bWJlciIsImJvb2xlYW4iLCJpbmRleCIsIm1hdHJpeCIsIm51bWJlciIsInN0cmluZyIsInVuaXQiXX0sY3JlYXRlVW5pdDp7bmFtZToiY3JlYXRlVW5pdCIsY2F0ZWdvcnk6IkNvbnN0cnVjdGlvbiIsc3ludGF4OlsiY3JlYXRlVW5pdChkZWZpbml0aW9ucykiLCJjcmVhdGVVbml0KG5hbWUsIGRlZmluaXRpb24pIl0sZGVzY3JpcHRpb246IkNyZWF0ZSBhIHVzZXItZGVmaW5lZCB1bml0IGFuZCByZWdpc3RlciBpdCB3aXRoIHRoZSBVbml0IHR5cGUuIixleGFtcGxlczpbJ2NyZWF0ZVVuaXQoImZvbyIpJywnY3JlYXRlVW5pdCgia25vdCIsIHtkZWZpbml0aW9uOiAiMC41MTQ0NDQ0NDQgbS9zIiwgYWxpYXNlczogWyJrbm90cyIsICJrdCIsICJrdHMiXX0pJywnY3JlYXRlVW5pdCgibXBoIiwgIjEgbWlsZS9ob3VyIiknXSxzZWVhbHNvOlsidW5pdCIsInNwbGl0VW5pdCJdfSxmcmFjdGlvbjp7bmFtZToiZnJhY3Rpb24iLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbImZyYWN0aW9uKG51bSkiLCJmcmFjdGlvbihtYXRyaXgpIiwiZnJhY3Rpb24obnVtLGRlbikiLCJmcmFjdGlvbih7bjogbnVtLCBkOiBkZW59KSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSBmcmFjdGlvbiBmcm9tIGEgbnVtYmVyIG9yIGZyb20gaW50ZWdlciBudW1lcmF0b3IgYW5kIGRlbm9taW5hdG9yLiIsZXhhbXBsZXM6WyJmcmFjdGlvbigwLjEyNSkiLCJmcmFjdGlvbigxLCAzKSArIGZyYWN0aW9uKDIsIDUpIiwiZnJhY3Rpb24oe246IDMzMywgZDogNTN9KSIsImZyYWN0aW9uKFtzcXJ0KDkpLCBzcXJ0KDEwKSwgc3FydCgxMSldKSJdLHNlZWFsc286WyJiaWdudW1iZXIiLCJib29sZWFuIiwiY29tcGxleCIsImluZGV4IiwibWF0cml4Iiwic3RyaW5nIiwidW5pdCJdfSxpbmRleDp7bmFtZToiaW5kZXgiLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbIltzdGFydF0iLCJbc3RhcnQ6ZW5kXSIsIltzdGFydDpzdGVwOmVuZF0iLCJbc3RhcnQxLCBzdGFydCAyLCAuLi5dIiwiW3N0YXJ0MTplbmQxLCBzdGFydDI6ZW5kMiwgLi4uXSIsIltzdGFydDE6c3RlcDE6ZW5kMSwgc3RhcnQyOnN0ZXAyOmVuZDIsIC4uLl0iXSxkZXNjcmlwdGlvbjoiQ3JlYXRlIGFuIGluZGV4IHRvIGdldCBvciByZXBsYWNlIGEgc3Vic2V0IG9mIGEgbWF0cml4IixleGFtcGxlczpbIkEgPSBbMSwgMiwgMzsgNCwgNSwgNl0iLCJBWzEsIDpdIiwiQVsxLCAyXSA9IDUwIiwiQVsxOjIsIDE6Ml0gPSAxIiwiQiA9IFsxLCAyLCAzXSIsIkJbQj4xIGFuZCBCPDNdIl0sc2VlYWxzbzpbImJpZ251bWJlciIsImJvb2xlYW4iLCJjb21wbGV4IiwibWF0cml4LCIsIm51bWJlciIsInJhbmdlIiwic3RyaW5nIiwidW5pdCJdfSxtYXRyaXg6e25hbWU6Im1hdHJpeCIsY2F0ZWdvcnk6IkNvbnN0cnVjdGlvbiIsc3ludGF4OlsiW10iLCJbYTEsIGIxLCAuLi47IGEyLCBiMiwgLi4uXSIsIm1hdHJpeCgpIiwnbWF0cml4KCJkZW5zZSIpJywibWF0cml4KFsuLi5dKSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSBtYXRyaXguIixleGFtcGxlczpbIltdIiwiWzEsIDIsIDNdIiwiWzEsIDIsIDM7IDQsIDUsIDZdIiwibWF0cml4KCkiLCJtYXRyaXgoWzMsIDRdKSIsJ21hdHJpeChbMywgNDsgNSwgNl0sICJzcGFyc2UiKScsJ21hdHJpeChbMywgNDsgNSwgNl0sICJzcGFyc2UiLCAibnVtYmVyIiknXSxzZWVhbHNvOlsiYmlnbnVtYmVyIiwiYm9vbGVhbiIsImNvbXBsZXgiLCJpbmRleCIsIm51bWJlciIsInN0cmluZyIsInVuaXQiLCJzcGFyc2UiXX0sbnVtYmVyOntuYW1lOiJudW1iZXIiLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbIngiLCJudW1iZXIoeCkiLCJudW1iZXIodW5pdCwgdmFsdWVsZXNzVW5pdCkiXSxkZXNjcmlwdGlvbjoiQ3JlYXRlIGEgbnVtYmVyIG9yIGNvbnZlcnQgYSBzdHJpbmcgb3IgYm9vbGVhbiBpbnRvIGEgbnVtYmVyLiIsZXhhbXBsZXM6WyIyIiwiMmUzIiwiNC4wNSIsIm51bWJlcigyKSIsJ251bWJlcigiNy4yIiknLCJudW1iZXIodHJ1ZSkiLCJudW1iZXIoW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlXSkiLCdudW1iZXIodW5pdCgiNTJjbSIpLCAibSIpJ10sc2VlYWxzbzpbImJpZ251bWJlciIsImJvb2xlYW4iLCJjb21wbGV4IiwiZnJhY3Rpb24iLCJpbmRleCIsIm1hdHJpeCIsInN0cmluZyIsInVuaXQiXX0sc3BhcnNlOntuYW1lOiJzcGFyc2UiLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbInNwYXJzZSgpIiwic3BhcnNlKFthMSwgYjEsIC4uLjsgYTEsIGIyLCAuLi5dKSIsJ3NwYXJzZShbYTEsIGIxLCAuLi47IGExLCBiMiwgLi4uXSwgIm51bWJlciIpJ10sZGVzY3JpcHRpb246IkNyZWF0ZSBhIHNwYXJzZSBtYXRyaXguIixleGFtcGxlczpbInNwYXJzZSgpIiwic3BhcnNlKFszLCA0OyA1LCA2XSkiLCdzcGFyc2UoWzMsIDA7IDUsIDBdLCAibnVtYmVyIiknXSxzZWVhbHNvOlsiYmlnbnVtYmVyIiwiYm9vbGVhbiIsImNvbXBsZXgiLCJpbmRleCIsIm51bWJlciIsInN0cmluZyIsInVuaXQiLCJtYXRyaXgiXX0sc3BsaXRVbml0OntuYW1lOiJzcGxpdFVuaXQiLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbInNwbGl0VW5pdCh1bml0OiBVbml0LCBwYXJ0czogVW5pdFtdKSJdLGRlc2NyaXB0aW9uOiJTcGxpdCBhIHVuaXQgaW4gYW4gYXJyYXkgb2YgdW5pdHMgd2hvc2Ugc3VtIGlzIGVxdWFsIHRvIHRoZSBvcmlnaW5hbCB1bml0LiIsZXhhbXBsZXM6WydzcGxpdFVuaXQoMSBtLCBbImZlZXQiLCAiaW5jaCJdKSddLHNlZWFsc286WyJ1bml0IiwiY3JlYXRlVW5pdCJdfSxzdHJpbmc6e25hbWU6InN0cmluZyIsY2F0ZWdvcnk6IkNvbnN0cnVjdGlvbiIsc3ludGF4OlsnInRleHQiJywic3RyaW5nKHgpIl0sZGVzY3JpcHRpb246IkNyZWF0ZSBhIHN0cmluZyBvciBjb252ZXJ0IGEgdmFsdWUgdG8gYSBzdHJpbmciLGV4YW1wbGVzOlsnIkhlbGxvIFdvcmxkISInLCJzdHJpbmcoNC4yKSIsInN0cmluZygzICsgMmkpIl0sc2VlYWxzbzpbImJpZ251bWJlciIsImJvb2xlYW4iLCJjb21wbGV4IiwiaW5kZXgiLCJtYXRyaXgiLCJudW1iZXIiLCJ1bml0Il19LHVuaXQ6e25hbWU6InVuaXQiLGNhdGVnb3J5OiJDb25zdHJ1Y3Rpb24iLHN5bnRheDpbInZhbHVlIHVuaXQiLCJ1bml0KHZhbHVlLCB1bml0KSIsInVuaXQoc3RyaW5nKSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSB1bml0LiIsZXhhbXBsZXM6WyI1LjUgbW0iLCIzIGluY2giLCd1bml0KDcuMSwgImtpbG9ncmFtIiknLCd1bml0KCIyMyBkZWciKSddLHNlZWFsc286WyJiaWdudW1iZXIiLCJib29sZWFuIiwiY29tcGxleCIsImluZGV4IiwibWF0cml4IiwibnVtYmVyIiwic3RyaW5nIl19LGU6RUUsRTpFRSxmYWxzZTp7bmFtZToiZmFsc2UiLGNhdGVnb3J5OiJDb25zdGFudHMiLHN5bnRheDpbImZhbHNlIl0sZGVzY3JpcHRpb246IkJvb2xlYW4gdmFsdWUgZmFsc2UiLGV4YW1wbGVzOlsiZmFsc2UiXSxzZWVhbHNvOlsidHJ1ZSJdfSxpOntuYW1lOiJpIixjYXRlZ29yeToiQ29uc3RhbnRzIixzeW50YXg6WyJpIl0sZGVzY3JpcHRpb246IkltYWdpbmFyeSB1bml0LCBkZWZpbmVkIGFzIGkqaT0tMS4gQSBjb21wbGV4IG51bWJlciBpcyBkZXNjcmliZWQgYXMgYSArIGIqaSwgd2hlcmUgYSBpcyB0aGUgcmVhbCBwYXJ0LCBhbmQgYiBpcyB0aGUgaW1hZ2luYXJ5IHBhcnQuIixleGFtcGxlczpbImkiLCJpICogaSIsInNxcnQoLTEpIl0sc2VlYWxzbzpbXX0sSW5maW5pdHk6e25hbWU6IkluZmluaXR5IixjYXRlZ29yeToiQ29uc3RhbnRzIixzeW50YXg6WyJJbmZpbml0eSJdLGRlc2NyaXB0aW9uOiJJbmZpbml0eSwgYSBudW1iZXIgd2hpY2ggaXMgbGFyZ2VyIHRoYW4gdGhlIG1heGltdW0gbnVtYmVyIHRoYXQgY2FuIGJlIGhhbmRsZWQgYnkgYSBmbG9hdGluZyBwb2ludCBudW1iZXIuIixleGFtcGxlczpbIkluZmluaXR5IiwiMSAvIDAiXSxzZWVhbHNvOltdfSxMTjI6e25hbWU6IkxOMiIsY2F0ZWdvcnk6IkNvbnN0YW50cyIsc3ludGF4OlsiTE4yIl0sZGVzY3JpcHRpb246IlJldHVybnMgdGhlIG5hdHVyYWwgbG9nYXJpdGhtIG9mIDIsIGFwcHJveGltYXRlbHkgZXF1YWwgdG8gMC42OTMiLGV4YW1wbGVzOlsiTE4yIiwibG9nKDIpIl0sc2VlYWxzbzpbXX0sTE4xMDp7bmFtZToiTE4xMCIsY2F0ZWdvcnk6IkNvbnN0YW50cyIsc3ludGF4OlsiTE4xMCJdLGRlc2NyaXB0aW9uOiJSZXR1cm5zIHRoZSBuYXR1cmFsIGxvZ2FyaXRobSBvZiAxMCwgYXBwcm94aW1hdGVseSBlcXVhbCB0byAyLjMwMiIsZXhhbXBsZXM6WyJMTjEwIiwibG9nKDEwKSJdLHNlZWFsc286W119LExPRzJFOntuYW1lOiJMT0cyRSIsY2F0ZWdvcnk6IkNvbnN0YW50cyIsc3ludGF4OlsiTE9HMkUiXSxkZXNjcmlwdGlvbjoiUmV0dXJucyB0aGUgYmFzZS0yIGxvZ2FyaXRobSBvZiBFLCBhcHByb3hpbWF0ZWx5IGVxdWFsIHRvIDEuNDQyIixleGFtcGxlczpbIkxPRzJFIiwibG9nKGUsIDIpIl0sc2VlYWxzbzpbXX0sTE9HMTBFOntuYW1lOiJMT0cxMEUiLGNhdGVnb3J5OiJDb25zdGFudHMiLHN5bnRheDpbIkxPRzEwRSJdLGRlc2NyaXB0aW9uOiJSZXR1cm5zIHRoZSBiYXNlLTEwIGxvZ2FyaXRobSBvZiBFLCBhcHByb3hpbWF0ZWx5IGVxdWFsIHRvIDAuNDM0IixleGFtcGxlczpbIkxPRzEwRSIsImxvZyhlLCAxMCkiXSxzZWVhbHNvOltdfSxOYU46e25hbWU6Ik5hTiIsY2F0ZWdvcnk6IkNvbnN0YW50cyIsc3ludGF4OlsiTmFOIl0sZGVzY3JpcHRpb246Ik5vdCBhIG51bWJlciIsZXhhbXBsZXM6WyJOYU4iLCIwIC8gMCJdLHNlZWFsc286W119LG51bGw6e25hbWU6Im51bGwiLGNhdGVnb3J5OiJDb25zdGFudHMiLHN5bnRheDpbIm51bGwiXSxkZXNjcmlwdGlvbjoiVmFsdWUgbnVsbCIsZXhhbXBsZXM6WyJudWxsIl0sc2VlYWxzbzpbInRydWUiLCJmYWxzZSJdfSxwaTpRRSxQSTpRRSxwaGk6e25hbWU6InBoaSIsY2F0ZWdvcnk6IkNvbnN0YW50cyIsc3ludGF4OlsicGhpIl0sZGVzY3JpcHRpb246IlBoaSBpcyB0aGUgZ29sZGVuIHJhdGlvLiBUd28gcXVhbnRpdGllcyBhcmUgaW4gdGhlIGdvbGRlbiByYXRpbyBpZiB0aGVpciByYXRpbyBpcyB0aGUgc2FtZSBhcyB0aGUgcmF0aW8gb2YgdGhlaXIgc3VtIHRvIHRoZSBsYXJnZXIgb2YgdGhlIHR3byBxdWFudGl0aWVzLiBQaGkgaXMgZGVmaW5lZCBhcyBgKDEgKyBzcXJ0KDUpKSAvIDJgIGFuZCBpcyBhcHByb3hpbWF0ZWx5IDEuNjE4MDM0Li4uIixleGFtcGxlczpbInBoaSJdLHNlZWFsc286W119LFNRUlQxXzI6e25hbWU6IlNRUlQxXzIiLGNhdGVnb3J5OiJDb25zdGFudHMiLHN5bnRheDpbIlNRUlQxXzIiXSxkZXNjcmlwdGlvbjoiUmV0dXJucyB0aGUgc3F1YXJlIHJvb3Qgb2YgMS8yLCBhcHByb3hpbWF0ZWx5IGVxdWFsIHRvIDAuNzA3IixleGFtcGxlczpbIlNRUlQxXzIiLCJzcXJ0KDEvMikiXSxzZWVhbHNvOltdfSxTUVJUMjp7bmFtZToiU1FSVDIiLGNhdGVnb3J5OiJDb25zdGFudHMiLHN5bnRheDpbIlNRUlQyIl0sZGVzY3JpcHRpb246IlJldHVybnMgdGhlIHNxdWFyZSByb290IG9mIDIsIGFwcHJveGltYXRlbHkgZXF1YWwgdG8gMS40MTQiLGV4YW1wbGVzOlsiU1FSVDIiLCJzcXJ0KDIpIl0sc2VlYWxzbzpbXX0sdGF1OntuYW1lOiJ0YXUiLGNhdGVnb3J5OiJDb25zdGFudHMiLHN5bnRheDpbInRhdSJdLGRlc2NyaXB0aW9uOiJUYXUgaXMgdGhlIHJhdGlvIGNvbnN0YW50IG9mIGEgY2lyY2xlJ3MgY2lyY3VtZmVyZW5jZSB0byByYWRpdXMsIGVxdWFsIHRvIDIgKiBwaSwgYXBwcm94aW1hdGVseSA2LjI4MzIuIixleGFtcGxlczpbInRhdSIsIjIgKiBwaSJdLHNlZWFsc286WyJwaSJdfSx0cnVlOntuYW1lOiJ0cnVlIixjYXRlZ29yeToiQ29uc3RhbnRzIixzeW50YXg6WyJ0cnVlIl0sZGVzY3JpcHRpb246IkJvb2xlYW4gdmFsdWUgdHJ1ZSIsZXhhbXBsZXM6WyJ0cnVlIl0sc2VlYWxzbzpbImZhbHNlIl19LHZlcnNpb246e25hbWU6InZlcnNpb24iLGNhdGVnb3J5OiJDb25zdGFudHMiLHN5bnRheDpbInZlcnNpb24iXSxkZXNjcmlwdGlvbjoiQSBzdHJpbmcgd2l0aCB0aGUgdmVyc2lvbiBudW1iZXIgb2YgbWF0aC5qcyIsZXhhbXBsZXM6WyJ2ZXJzaW9uIl0sc2VlYWxzbzpbXX0sc3BlZWRPZkxpZ2h0OntkZXNjcmlwdGlvbjoiU3BlZWQgb2YgbGlnaHQgaW4gdmFjdXVtIixleGFtcGxlczpbInNwZWVkT2ZMaWdodCJdfSxncmF2aXRhdGlvbkNvbnN0YW50OntkZXNjcmlwdGlvbjoiTmV3dG9uaWFuIGNvbnN0YW50IG9mIGdyYXZpdGF0aW9uIixleGFtcGxlczpbImdyYXZpdGF0aW9uQ29uc3RhbnQiXX0scGxhbmNrQ29uc3RhbnQ6e2Rlc2NyaXB0aW9uOiJQbGFuY2sgY29uc3RhbnQiLGV4YW1wbGVzOlsicGxhbmNrQ29uc3RhbnQiXX0scmVkdWNlZFBsYW5ja0NvbnN0YW50OntkZXNjcmlwdGlvbjoiUmVkdWNlZCBQbGFuY2sgY29uc3RhbnQiLGV4YW1wbGVzOlsicmVkdWNlZFBsYW5ja0NvbnN0YW50Il19LG1hZ25ldGljQ29uc3RhbnQ6e2Rlc2NyaXB0aW9uOiJNYWduZXRpYyBjb25zdGFudCAodmFjdXVtIHBlcm1lYWJpbGl0eSkiLGV4YW1wbGVzOlsibWFnbmV0aWNDb25zdGFudCJdfSxlbGVjdHJpY0NvbnN0YW50OntkZXNjcmlwdGlvbjoiRWxlY3RyaWMgY29uc3RhbnQgKHZhY3V1bSBwZXJtZWFiaWxpdHkpIixleGFtcGxlczpbImVsZWN0cmljQ29uc3RhbnQiXX0sdmFjdXVtSW1wZWRhbmNlOntkZXNjcmlwdGlvbjoiQ2hhcmFjdGVyaXN0aWMgaW1wZWRhbmNlIG9mIHZhY3V1bSIsZXhhbXBsZXM6WyJ2YWN1dW1JbXBlZGFuY2UiXX0sY291bG9tYjp7ZGVzY3JpcHRpb246IkNvdWxvbWIncyBjb25zdGFudCIsZXhhbXBsZXM6WyJjb3Vsb21iIl19LGVsZW1lbnRhcnlDaGFyZ2U6e2Rlc2NyaXB0aW9uOiJFbGVtZW50YXJ5IGNoYXJnZSIsZXhhbXBsZXM6WyJlbGVtZW50YXJ5Q2hhcmdlIl19LGJvaHJNYWduZXRvbjp7ZGVzY3JpcHRpb246IkJvcmggbWFnbmV0b24iLGV4YW1wbGVzOlsiYm9ock1hZ25ldG9uIl19LGNvbmR1Y3RhbmNlUXVhbnR1bTp7ZGVzY3JpcHRpb246IkNvbmR1Y3RhbmNlIHF1YW50dW0iLGV4YW1wbGVzOlsiY29uZHVjdGFuY2VRdWFudHVtIl19LGludmVyc2VDb25kdWN0YW5jZVF1YW50dW06e2Rlc2NyaXB0aW9uOiJJbnZlcnNlIGNvbmR1Y3RhbmNlIHF1YW50dW0iLGV4YW1wbGVzOlsiaW52ZXJzZUNvbmR1Y3RhbmNlUXVhbnR1bSJdfSxtYWduZXRpY0ZsdXhRdWFudHVtOntkZXNjcmlwdGlvbjoiTWFnbmV0aWMgZmx1eCBxdWFudHVtIixleGFtcGxlczpbIm1hZ25ldGljRmx1eFF1YW50dW0iXX0sbnVjbGVhck1hZ25ldG9uOntkZXNjcmlwdGlvbjoiTnVjbGVhciBtYWduZXRvbiIsZXhhbXBsZXM6WyJudWNsZWFyTWFnbmV0b24iXX0sa2xpdHppbmc6e2Rlc2NyaXB0aW9uOiJWb24gS2xpdHppbmcgY29uc3RhbnQiLGV4YW1wbGVzOlsia2xpdHppbmciXX0sYm9oclJhZGl1czp7ZGVzY3JpcHRpb246IkJvcmggcmFkaXVzIixleGFtcGxlczpbImJvaHJSYWRpdXMiXX0sY2xhc3NpY2FsRWxlY3Ryb25SYWRpdXM6e2Rlc2NyaXB0aW9uOiJDbGFzc2ljYWwgZWxlY3Ryb24gcmFkaXVzIixleGFtcGxlczpbImNsYXNzaWNhbEVsZWN0cm9uUmFkaXVzIl19LGVsZWN0cm9uTWFzczp7ZGVzY3JpcHRpb246IkVsZWN0cm9uIG1hc3MiLGV4YW1wbGVzOlsiZWxlY3Ryb25NYXNzIl19LGZlcm1pQ291cGxpbmc6e2Rlc2NyaXB0aW9uOiJGZXJtaSBjb3VwbGluZyBjb25zdGFudCIsZXhhbXBsZXM6WyJmZXJtaUNvdXBsaW5nIl19LGZpbmVTdHJ1Y3R1cmU6e2Rlc2NyaXB0aW9uOiJGaW5lLXN0cnVjdHVyZSBjb25zdGFudCIsZXhhbXBsZXM6WyJmaW5lU3RydWN0dXJlIl19LGhhcnRyZWVFbmVyZ3k6e2Rlc2NyaXB0aW9uOiJIYXJ0cmVlIGVuZXJneSIsZXhhbXBsZXM6WyJoYXJ0cmVlRW5lcmd5Il19LHByb3Rvbk1hc3M6e2Rlc2NyaXB0aW9uOiJQcm90b24gbWFzcyIsZXhhbXBsZXM6WyJwcm90b25NYXNzIl19LGRldXRlcm9uTWFzczp7ZGVzY3JpcHRpb246IkRldXRlcm9uIE1hc3MiLGV4YW1wbGVzOlsiZGV1dGVyb25NYXNzIl19LG5ldXRyb25NYXNzOntkZXNjcmlwdGlvbjoiTmV1dHJvbiBtYXNzIixleGFtcGxlczpbIm5ldXRyb25NYXNzIl19LHF1YW50dW1PZkNpcmN1bGF0aW9uOntkZXNjcmlwdGlvbjoiUXVhbnR1bSBvZiBjaXJjdWxhdGlvbiIsZXhhbXBsZXM6WyJxdWFudHVtT2ZDaXJjdWxhdGlvbiJdfSxyeWRiZXJnOntkZXNjcmlwdGlvbjoiUnlkYmVyZyBjb25zdGFudCIsZXhhbXBsZXM6WyJyeWRiZXJnIl19LHRob21zb25Dcm9zc1NlY3Rpb246e2Rlc2NyaXB0aW9uOiJUaG9tc29uIGNyb3NzIHNlY3Rpb24iLGV4YW1wbGVzOlsidGhvbXNvbkNyb3NzU2VjdGlvbiJdfSx3ZWFrTWl4aW5nQW5nbGU6e2Rlc2NyaXB0aW9uOiJXZWFrIG1peGluZyBhbmdsZSIsZXhhbXBsZXM6WyJ3ZWFrTWl4aW5nQW5nbGUiXX0sZWZpbW92RmFjdG9yOntkZXNjcmlwdGlvbjoiRWZpbW92IGZhY3RvciIsZXhhbXBsZXM6WyJlZmltb3ZGYWN0b3IiXX0sYXRvbWljTWFzczp7ZGVzY3JpcHRpb246IkF0b21pYyBtYXNzIGNvbnN0YW50IixleGFtcGxlczpbImF0b21pY01hc3MiXX0sYXZvZ2Fkcm86e2Rlc2NyaXB0aW9uOiJBdm9nYWRybydzIG51bWJlciIsZXhhbXBsZXM6WyJhdm9nYWRybyJdfSxib2x0em1hbm46e2Rlc2NyaXB0aW9uOiJCb2x0em1hbm4gY29uc3RhbnQiLGV4YW1wbGVzOlsiYm9sdHptYW5uIl19LGZhcmFkYXk6e2Rlc2NyaXB0aW9uOiJGYXJhZGF5IGNvbnN0YW50IixleGFtcGxlczpbImZhcmFkYXkiXX0sZmlyc3RSYWRpYXRpb246e2Rlc2NyaXB0aW9uOiJGaXJzdCByYWRpYXRpb24gY29uc3RhbnQiLGV4YW1wbGVzOlsiZmlyc3RSYWRpYXRpb24iXX0sbG9zY2htaWR0OntkZXNjcmlwdGlvbjoiTG9zY2htaWR0IGNvbnN0YW50IGF0IFQ9MjczLjE1IEsgYW5kIHA9MTAxLjMyNSBrUGEiLGV4YW1wbGVzOlsibG9zY2htaWR0Il19LGdhc0NvbnN0YW50OntkZXNjcmlwdGlvbjoiR2FzIGNvbnN0YW50IixleGFtcGxlczpbImdhc0NvbnN0YW50Il19LG1vbGFyUGxhbmNrQ29uc3RhbnQ6e2Rlc2NyaXB0aW9uOiJNb2xhciBQbGFuY2sgY29uc3RhbnQiLGV4YW1wbGVzOlsibW9sYXJQbGFuY2tDb25zdGFudCJdfSxtb2xhclZvbHVtZTp7ZGVzY3JpcHRpb246Ik1vbGFyIHZvbHVtZSBvZiBhbiBpZGVhbCBnYXMgYXQgVD0yNzMuMTUgSyBhbmQgcD0xMDEuMzI1IGtQYSIsZXhhbXBsZXM6WyJtb2xhclZvbHVtZSJdfSxzYWNrdXJUZXRyb2RlOntkZXNjcmlwdGlvbjoiU2Fja3VyLVRldHJvZGUgY29uc3RhbnQgYXQgVD0xIEsgYW5kIHA9MTAxLjMyNSBrUGEiLGV4YW1wbGVzOlsic2Fja3VyVGV0cm9kZSJdfSxzZWNvbmRSYWRpYXRpb246e2Rlc2NyaXB0aW9uOiJTZWNvbmQgcmFkaWF0aW9uIGNvbnN0YW50IixleGFtcGxlczpbInNlY29uZFJhZGlhdGlvbiJdfSxzdGVmYW5Cb2x0em1hbm46e2Rlc2NyaXB0aW9uOiJTdGVmYW4tQm9sdHptYW5uIGNvbnN0YW50IixleGFtcGxlczpbInN0ZWZhbkJvbHR6bWFubiJdfSx3aWVuRGlzcGxhY2VtZW50OntkZXNjcmlwdGlvbjoiV2llbiBkaXNwbGFjZW1lbnQgbGF3IGNvbnN0YW50IixleGFtcGxlczpbIndpZW5EaXNwbGFjZW1lbnQiXX0sbW9sYXJNYXNzOntkZXNjcmlwdGlvbjoiTW9sYXIgbWFzcyBjb25zdGFudCIsZXhhbXBsZXM6WyJtb2xhck1hc3MiXX0sbW9sYXJNYXNzQzEyOntkZXNjcmlwdGlvbjoiTW9sYXIgbWFzcyBjb25zdGFudCBvZiBjYXJib24tMTIiLGV4YW1wbGVzOlsibW9sYXJNYXNzQzEyIl19LGdyYXZpdHk6e2Rlc2NyaXB0aW9uOiJTdGFuZGFyZCBhY2NlbGVyYXRpb24gb2YgZ3Jhdml0eSAoc3RhbmRhcmQgYWNjZWxlcmF0aW9uIG9mIGZyZWUtZmFsbCBvbiBFYXJ0aCkiLGV4YW1wbGVzOlsiZ3Jhdml0eSJdfSxwbGFuY2tMZW5ndGg6e2Rlc2NyaXB0aW9uOiJQbGFuY2sgbGVuZ3RoIixleGFtcGxlczpbInBsYW5ja0xlbmd0aCJdfSxwbGFuY2tNYXNzOntkZXNjcmlwdGlvbjoiUGxhbmNrIG1hc3MiLGV4YW1wbGVzOlsicGxhbmNrTWFzcyJdfSxwbGFuY2tUaW1lOntkZXNjcmlwdGlvbjoiUGxhbmNrIHRpbWUiLGV4YW1wbGVzOlsicGxhbmNrVGltZSJdfSxwbGFuY2tDaGFyZ2U6e2Rlc2NyaXB0aW9uOiJQbGFuY2sgY2hhcmdlIixleGFtcGxlczpbInBsYW5ja0NoYXJnZSJdfSxwbGFuY2tUZW1wZXJhdHVyZTp7ZGVzY3JpcHRpb246IlBsYW5jayB0ZW1wZXJhdHVyZSIsZXhhbXBsZXM6WyJwbGFuY2tUZW1wZXJhdHVyZSJdfSxkZXJpdmF0aXZlOntuYW1lOiJkZXJpdmF0aXZlIixjYXRlZ29yeToiQWxnZWJyYSIsc3ludGF4OlsiZGVyaXZhdGl2ZShleHByLCB2YXJpYWJsZSkiLCJkZXJpdmF0aXZlKGV4cHIsIHZhcmlhYmxlLCB7c2ltcGxpZnk6IGJvb2xlYW59KSJdLGRlc2NyaXB0aW9uOiJUYWtlcyB0aGUgZGVyaXZhdGl2ZSBvZiBhbiBleHByZXNzaW9uIGV4cHJlc3NlZCBpbiBwYXJzZXIgTm9kZXMuIFRoZSBkZXJpdmF0aXZlIHdpbGwgYmUgdGFrZW4gb3ZlciB0aGUgc3VwcGxpZWQgdmFyaWFibGUgaW4gdGhlIHNlY29uZCBwYXJhbWV0ZXIuIElmIHRoZXJlIGFyZSBtdWx0aXBsZSB2YXJpYWJsZXMgaW4gdGhlIGV4cHJlc3Npb24sIGl0IHdpbGwgcmV0dXJuIGEgcGFydGlhbCBkZXJpdmF0aXZlLiIsZXhhbXBsZXM6WydkZXJpdmF0aXZlKCIyeF4zIiwgIngiKScsJ2Rlcml2YXRpdmUoIjJ4XjMiLCAieCIsIHtzaW1wbGlmeTogZmFsc2V9KScsJ2Rlcml2YXRpdmUoIjJ4XjIgKyAzeCArIDQiLCAieCIpJywnZGVyaXZhdGl2ZSgic2luKDJ4KSIsICJ4IiknLCdmID0gcGFyc2UoInheMiArIHgiKScsJ3ggPSBwYXJzZSgieCIpJywiZGYgPSBkZXJpdmF0aXZlKGYsIHgpIiwiZGYuZXZhbHVhdGUoe3g6IDN9KSJdLHNlZWFsc286WyJzaW1wbGlmeSIsInBhcnNlIiwiZXZhbHVhdGUiXX0sbHNvbHZlOntuYW1lOiJsc29sdmUiLGNhdGVnb3J5OiJBbGdlYnJhIixzeW50YXg6WyJ4PWxzb2x2ZShMLCBiKSJdLGRlc2NyaXB0aW9uOiJGaW5kcyBvbmUgc29sdXRpb24gb2YgdGhlIGxpbmVhciBzeXN0ZW0gTCAqIHggPSBiIHdoZXJlIEwgaXMgYW4gW24geCBuXSBsb3dlciB0cmlhbmd1bGFyIG1hdHJpeCBhbmQgYiBpcyBhIFtuXSBjb2x1bW4gdmVjdG9yLiIsZXhhbXBsZXM6WyJhID0gWy0yLCAzOyAyLCAxXSIsImIgPSBbMTEsIDldIiwieCA9IGxzb2x2ZShhLCBiKSJdLHNlZWFsc286WyJsc29sdmVBbGwiLCJsdXAiLCJsdXNvbHZlIiwidXNvbHZlIiwibWF0cml4Iiwic3BhcnNlIl19LGxzb2x2ZUFsbDp7bmFtZToibHNvbHZlQWxsIixjYXRlZ29yeToiQWxnZWJyYSIsc3ludGF4OlsieD1sc29sdmVBbGwoTCwgYikiXSxkZXNjcmlwdGlvbjoiRmluZHMgYWxsIHNvbHV0aW9ucyBvZiB0aGUgbGluZWFyIHN5c3RlbSBMICogeCA9IGIgd2hlcmUgTCBpcyBhbiBbbiB4IG5dIGxvd2VyIHRyaWFuZ3VsYXIgbWF0cml4IGFuZCBiIGlzIGEgW25dIGNvbHVtbiB2ZWN0b3IuIixleGFtcGxlczpbImEgPSBbLTIsIDM7IDIsIDFdIiwiYiA9IFsxMSwgOV0iLCJ4ID0gbHNvbHZlKGEsIGIpIl0sc2VlYWxzbzpbImxzb2x2ZSIsImx1cCIsImx1c29sdmUiLCJ1c29sdmUiLCJtYXRyaXgiLCJzcGFyc2UiXX0sbHVwOntuYW1lOiJsdXAiLGNhdGVnb3J5OiJBbGdlYnJhIixzeW50YXg6WyJsdXAobSkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSBNYXRyaXggTFUgZGVjb21wb3NpdGlvbiB3aXRoIHBhcnRpYWwgcGl2b3RpbmcuIE1hdHJpeCBBIGlzIGRlY29tcG9zZWQgaW4gdGhyZWUgbWF0cmljZXMgKEwsIFUsIFApIHdoZXJlIFAgKiBBID0gTCAqIFUiLGV4YW1wbGVzOlsibHVwKFtbMiwgMV0sIFsxLCA0XV0pIiwibHVwKG1hdHJpeChbWzIsIDFdLCBbMSwgNF1dKSkiLCJsdXAoc3BhcnNlKFtbMiwgMV0sIFsxLCA0XV0pKSJdLHNlZWFsc286WyJsdXNvbHZlIiwibHNvbHZlIiwidXNvbHZlIiwibWF0cml4Iiwic3BhcnNlIiwic2x1IiwicXIiXX0sbHVzb2x2ZTp7bmFtZToibHVzb2x2ZSIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbIng9bHVzb2x2ZShBLCBiKSIsIng9bHVzb2x2ZShsdSwgYikiXSxkZXNjcmlwdGlvbjoiU29sdmVzIHRoZSBsaW5lYXIgc3lzdGVtIEEgKiB4ID0gYiB3aGVyZSBBIGlzIGFuIFtuIHggbl0gbWF0cml4IGFuZCBiIGlzIGEgW25dIGNvbHVtbiB2ZWN0b3IuIixleGFtcGxlczpbImEgPSBbLTIsIDM7IDIsIDFdIiwiYiA9IFsxMSwgOV0iLCJ4ID0gbHVzb2x2ZShhLCBiKSJdLHNlZWFsc286WyJsdXAiLCJzbHUiLCJsc29sdmUiLCJ1c29sdmUiLCJtYXRyaXgiLCJzcGFyc2UiXX0sbGVhZkNvdW50OntuYW1lOiJsZWFmQ291bnQiLGNhdGVnb3J5OiJBbGdlYnJhIixzeW50YXg6WyJsZWFmQ291bnQoZXhwcikiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZXMgdGhlIG51bWJlciBvZiBsZWF2ZXMgaW4gdGhlIHBhcnNlIHRyZWUgb2YgdGhlIGdpdmVuIGV4cHJlc3Npb24iLGV4YW1wbGVzOlsnbGVhZkNvdW50KCJlXihpKnBpKS0xIiknLCdsZWFmQ291bnQocGFyc2UoInthOiAyMi83LCBiOiAxMF4oMS8yKX0iKSknXSxzZWVhbHNvOlsic2ltcGxpZnkiXX0scG9seW5vbWlhbFJvb3Q6e25hbWU6InBvbHlub21pYWxSb290IixjYXRlZ29yeToiQWxnZWJyYSIsc3ludGF4OlsieD1wb2x5bm9taWFsUm9vdCgtNiwgMykiLCJ4PXBvbHlub21pYWxSb290KDQsIC00LCAxKSIsIng9cG9seW5vbWlhbFJvb3QoLTgsIDEyLCAtNiwgMSkiXSxkZXNjcmlwdGlvbjoiRmluZHMgdGhlIHJvb3RzIG9mIGEgdW5pdmFyaWF0ZSBwb2x5bm9taWFsIGdpdmVuIGJ5IGl0cyBjb2VmZmljaWVudHMgc3RhcnRpbmcgZnJvbSBjb25zdGFudCwgbGluZWFyLCBhbmQgc28gb24sIGluY3JlYXNpbmcgaW4gZGVncmVlLiIsZXhhbXBsZXM6WyJhID0gcG9seW5vbWlhbFJvb3QoLTYsIDExLCAtNiwgMSkiXSxzZWVhbHNvOlsiY2JydCIsInNxcnQiXX0scmVzb2x2ZTp7bmFtZToicmVzb2x2ZSIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbInJlc29sdmUobm9kZSwgc2NvcGUpIl0sZGVzY3JpcHRpb246IlJlY3Vyc2l2ZWx5IHN1YnN0aXR1dGUgdmFyaWFibGVzIGluIGFuIGV4cHJlc3Npb24gdHJlZS4iLGV4YW1wbGVzOlsncmVzb2x2ZShwYXJzZSgiMSArIHgiKSwgeyB4OiA3IH0pJywncmVzb2x2ZShwYXJzZSgic2l6ZSh0ZXh0KSIpLCB7IHRleHQ6ICJIZWxsbyBXb3JsZCIgfSknLCdyZXNvbHZlKHBhcnNlKCJ4ICsgeSIpLCB7IHg6IHBhcnNlKCIzeiIpIH0pJywncmVzb2x2ZShwYXJzZSgiM3giKSwgeyB4OiBwYXJzZSgieSt6IiksIHo6IHBhcnNlKCJ3XnkiKSB9KSddLHNlZWFsc286WyJzaW1wbGlmeSIsImV2YWx1YXRlIl0sbWF5VGhyb3c6WyJSZWZlcmVuY2VFcnJvciJdfSxzaW1wbGlmeTp7bmFtZToic2ltcGxpZnkiLGNhdGVnb3J5OiJBbGdlYnJhIixzeW50YXg6WyJzaW1wbGlmeShleHByKSIsInNpbXBsaWZ5KGV4cHIsIHJ1bGVzKSJdLGRlc2NyaXB0aW9uOiJTaW1wbGlmeSBhbiBleHByZXNzaW9uIHRyZWUuIixleGFtcGxlczpbJ3NpbXBsaWZ5KCIzICsgMiAvIDQiKScsJ3NpbXBsaWZ5KCIyeCArIHgiKScsJ2YgPSBwYXJzZSgieCAqICh4ICsgMiArIHgpIiknLCJzaW1wbGlmaWVkID0gc2ltcGxpZnkoZikiLCJzaW1wbGlmaWVkLmV2YWx1YXRlKHt4OiAyfSkiXSxzZWVhbHNvOlsic2ltcGxpZnlDb3JlIiwiZGVyaXZhdGl2ZSIsImV2YWx1YXRlIiwicGFyc2UiLCJyYXRpb25hbGl6ZSIsInJlc29sdmUiXX0sc2ltcGxpZnlDb25zdGFudDp7bmFtZToic2ltcGxpZnlDb25zdGFudCIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbInNpbXBsaWZ5Q29uc3RhbnQoZXhwcikiLCJzaW1wbGlmeUNvbnN0YW50KGV4cHIsIG9wdGlvbnMpIl0sZGVzY3JpcHRpb246IlJlcGxhY2UgY29uc3RhbnQgc3ViZXhwcmVzc2lvbnMgb2Ygbm9kZSB3aXRoIHRoZWlyIHZhbHVlcy4iLGV4YW1wbGVzOlsnc2ltcGxpZnlDb25zdGFudCgiKDMtMykqeCIpJywnc2ltcGxpZnlDb25zdGFudChwYXJzZSgiei1jb3ModGF1LzgpIikpJ10sc2VlYWxzbzpbInNpbXBsaWZ5Iiwic2ltcGxpZnlDb3JlIiwiZXZhbHVhdGUiXX0sc2ltcGxpZnlDb3JlOntuYW1lOiJzaW1wbGlmeUNvcmUiLGNhdGVnb3J5OiJBbGdlYnJhIixzeW50YXg6WyJzaW1wbGlmeUNvcmUobm9kZSkiXSxkZXNjcmlwdGlvbjoiUGVyZm9ybSBzaW1wbGUgb25lLXBhc3Mgc2ltcGxpZmljYXRpb25zIG9uIGFuIGV4cHJlc3Npb24gdHJlZS4iLGV4YW1wbGVzOlsnc2ltcGxpZnlDb3JlKHBhcnNlKCIwKngiKSknLCdzaW1wbGlmeUNvcmUocGFyc2UoIih4KzApKjIiKSknXSxzZWVhbHNvOlsic2ltcGxpZnkiLCJzaW1wbGlmeUNvbnN0YW50IiwiZXZhbHVhdGUiXX0sc3ltYm9saWNFcXVhbDp7bmFtZToic3ltYm9saWNFcXVhbCIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbInN5bWJvbGljRXF1YWwoZXhwcjEsIGV4cHIyKSIsInN5bWJvbGljRXF1YWwoZXhwcjEsIGV4cHIyLCBvcHRpb25zKSJdLGRlc2NyaXB0aW9uOiJSZXR1cm5zIHRydWUgaWYgdGhlIGRpZmZlcmVuY2Ugb2YgdGhlIGV4cHJlc3Npb25zIHNpbXBsaWZpZXMgdG8gMCIsZXhhbXBsZXM6WydzeW1ib2xpY0VxdWFsKCJ4KnkiLCJ5KngiKScsJ3N5bWJvbGljRXF1YWwoImFicyh4XjIpIiwgInheMiIpJywnc3ltYm9saWNFcXVhbCgiYWJzKHgpIiwgIngiLCB7Y29udGV4dDoge2Ficzoge3RyaXZpYWw6IHRydWV9fX0pJ10sc2VlYWxzbzpbInNpbXBsaWZ5IiwiZXZhbHVhdGUiXX0scmF0aW9uYWxpemU6e25hbWU6InJhdGlvbmFsaXplIixjYXRlZ29yeToiQWxnZWJyYSIsc3ludGF4OlsicmF0aW9uYWxpemUoZXhwcikiLCJyYXRpb25hbGl6ZShleHByLCBzY29wZSkiLCJyYXRpb25hbGl6ZShleHByLCBzY29wZSwgZGV0YWlsZWQpIl0sZGVzY3JpcHRpb246IlRyYW5zZm9ybSBhIHJhdGlvbmFsaXphYmxlIGV4cHJlc3Npb24gaW4gYSByYXRpb25hbCBmcmFjdGlvbi4gSWYgcmF0aW9uYWwgZnJhY3Rpb24gaXMgb25lIHZhcmlhYmxlIHBvbHlub21pYWwgdGhlbiBjb252ZXJ0cyB0aGUgbnVtZXJhdG9yIGFuZCBkZW5vbWluYXRvciBpbiBjYW5vbmljYWwgZm9ybSwgd2l0aCBkZWNyZWFzaW5nIGV4cG9uZW50cywgcmV0dXJuaW5nIHRoZSBjb2VmZmljaWVudHMgb2YgbnVtZXJhdG9yLiIsZXhhbXBsZXM6WydyYXRpb25hbGl6ZSgiMngveSAtIHkvKHgrMSkiKScsJ3JhdGlvbmFsaXplKCIyeC95IC0geS8oeCsxKSIsIHRydWUpJ10sc2VlYWxzbzpbInNpbXBsaWZ5Il19LHNsdTp7bmFtZToic2x1IixjYXRlZ29yeToiQWxnZWJyYSIsc3ludGF4Olsic2x1KEEsIG9yZGVyLCB0aHJlc2hvbGQpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgTWF0cml4IExVIGRlY29tcG9zaXRpb24gd2l0aCBmdWxsIHBpdm90aW5nLiBNYXRyaXggQSBpcyBkZWNvbXBvc2VkIGluIHR3byBtYXRyaWNlcyAoTCwgVSkgYW5kIHR3byBwZXJtdXRhdGlvbiB2ZWN0b3JzIChwaW52LCBxKSB3aGVyZSBQICogQSAqIFEgPSBMICogVSIsZXhhbXBsZXM6WyJzbHUoc3BhcnNlKFs0LjUsIDAsIDMuMiwgMDsgMy4xLCAyLjksIDAsIDAuOTsgMCwgMS43LCAzLCAwOyAzLjUsIDAuNCwgMCwgMV0pLCAxLCAwLjAwMSkiXSxzZWVhbHNvOlsibHVzb2x2ZSIsImxzb2x2ZSIsInVzb2x2ZSIsIm1hdHJpeCIsInNwYXJzZSIsImx1cCIsInFyIl19LHVzb2x2ZTp7bmFtZToidXNvbHZlIixjYXRlZ29yeToiQWxnZWJyYSIsc3ludGF4OlsieD11c29sdmUoVSwgYikiXSxkZXNjcmlwdGlvbjoiRmluZHMgb25lIHNvbHV0aW9uIG9mIHRoZSBsaW5lYXIgc3lzdGVtIFUgKiB4ID0gYiB3aGVyZSBVIGlzIGFuIFtuIHggbl0gdXBwZXIgdHJpYW5ndWxhciBtYXRyaXggYW5kIGIgaXMgYSBbbl0gY29sdW1uIHZlY3Rvci4iLGV4YW1wbGVzOlsieD11c29sdmUoc3BhcnNlKFsxLCAxLCAxLCAxOyAwLCAxLCAxLCAxOyAwLCAwLCAxLCAxOyAwLCAwLCAwLCAxXSksIFsxOyAyOyAzOyA0XSkiXSxzZWVhbHNvOlsidXNvbHZlQWxsIiwibHVwIiwibHVzb2x2ZSIsImxzb2x2ZSIsIm1hdHJpeCIsInNwYXJzZSJdfSx1c29sdmVBbGw6e25hbWU6InVzb2x2ZUFsbCIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbIng9dXNvbHZlKFUsIGIpIl0sZGVzY3JpcHRpb246IkZpbmRzIGFsbCBzb2x1dGlvbnMgb2YgdGhlIGxpbmVhciBzeXN0ZW0gVSAqIHggPSBiIHdoZXJlIFUgaXMgYW4gW24geCBuXSB1cHBlciB0cmlhbmd1bGFyIG1hdHJpeCBhbmQgYiBpcyBhIFtuXSBjb2x1bW4gdmVjdG9yLiIsZXhhbXBsZXM6WyJ4PXVzb2x2ZShzcGFyc2UoWzEsIDEsIDEsIDE7IDAsIDEsIDEsIDE7IDAsIDAsIDEsIDE7IDAsIDAsIDAsIDFdKSwgWzE7IDI7IDM7IDRdKSJdLHNlZWFsc286WyJ1c29sdmUiLCJsdXAiLCJsdXNvbHZlIiwibHNvbHZlIiwibWF0cml4Iiwic3BhcnNlIl19LHFyOntuYW1lOiJxciIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbInFyKEEpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZXMgdGhlIE1hdHJpeCBRUiBkZWNvbXBvc2l0aW9uLiBNYXRyaXggYEFgIGlzIGRlY29tcG9zZWQgaW4gdHdvIG1hdHJpY2VzIChgUWAsIGBSYCkgd2hlcmUgYFFgIGlzIGFuIG9ydGhvZ29uYWwgbWF0cml4IGFuZCBgUmAgaXMgYW4gdXBwZXIgdHJpYW5ndWxhciBtYXRyaXguIixleGFtcGxlczpbInFyKFtbMSwgLTEsICA0XSwgWzEsICA0LCAtMl0sIFsxLCAgNCwgIDJdLCBbMSwgIC0xLCAwXV0pIl0sc2VlYWxzbzpbImx1cCIsInNsdSIsIm1hdHJpeCJdfSxhYnM6e25hbWU6ImFicyIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImFicyh4KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBhYnNvbHV0ZSB2YWx1ZS4iLGV4YW1wbGVzOlsiYWJzKDMuNSkiLCJhYnMoLTQuMikiXSxzZWVhbHNvOlsic2lnbiJdfSxhZGQ6e25hbWU6ImFkZCIsY2F0ZWdvcnk6Ik9wZXJhdG9ycyIsc3ludGF4OlsieCArIHkiLCJhZGQoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQWRkIHR3byB2YWx1ZXMuIixleGFtcGxlczpbImEgPSAyLjEgKyAzLjYiLCJhIC0gMy42IiwiMyArIDJpIiwiMyBjbSArIDIgaW5jaCIsJyIyLjMiICsgIjQiJ10sc2VlYWxzbzpbInN1YnRyYWN0Il19LGNicnQ6e25hbWU6ImNicnQiLGNhdGVnb3J5OiJBcml0aG1ldGljIixzeW50YXg6WyJjYnJ0KHgpIiwiY2JydCh4LCBhbGxSb290cykiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgY3ViaWMgcm9vdCB2YWx1ZS4gSWYgeCA9IHkgKiB5ICogeSwgdGhlbiB5IGlzIHRoZSBjdWJpYyByb290IG9mIHguIFdoZW4gYHhgIGlzIGEgbnVtYmVyIG9yIGNvbXBsZXggbnVtYmVyLCBhbiBvcHRpb25hbCBzZWNvbmQgYXJndW1lbnQgYGFsbFJvb3RzYCBjYW4gYmUgcHJvdmlkZWQgdG8gcmV0dXJuIGFsbCB0aHJlZSBjdWJpYyByb290cy4gSWYgbm90IHByb3ZpZGVkLCB0aGUgcHJpbmNpcGFsIHJvb3QgaXMgcmV0dXJuZWQiLGV4YW1wbGVzOlsiY2JydCg2NCkiLCJjdWJlKDQpIiwiY2JydCgtOCkiLCJjYnJ0KDIgKyAzaSkiLCJjYnJ0KDhpKSIsImNicnQoOGksIHRydWUpIiwiY2JydCgyNyBtXjMpIl0sc2VlYWxzbzpbInNxdWFyZSIsInNxcnQiLCJjdWJlIiwibXVsdGlwbHkiXX0sY2VpbDp7bmFtZToiY2VpbCIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImNlaWwoeCkiXSxkZXNjcmlwdGlvbjoiUm91bmQgYSB2YWx1ZSB0b3dhcmRzIHBsdXMgaW5maW5pdHkuIElmIHggaXMgY29tcGxleCwgYm90aCByZWFsIGFuZCBpbWFnaW5hcnkgcGFydCBhcmUgcm91bmRlZCB0b3dhcmRzIHBsdXMgaW5maW5pdHkuIixleGFtcGxlczpbImNlaWwoMy4yKSIsImNlaWwoMy44KSIsImNlaWwoLTQuMikiXSxzZWVhbHNvOlsiZmxvb3IiLCJmaXgiLCJyb3VuZCJdfSxjdWJlOntuYW1lOiJjdWJlIixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4OlsiY3ViZSh4KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBjdWJlIG9mIGEgdmFsdWUuIFRoZSBjdWJlIG9mIHggaXMgeCAqIHggKiB4LiIsZXhhbXBsZXM6WyJjdWJlKDIpIiwiMl4zIiwiMiAqIDIgKiAyIl0sc2VlYWxzbzpbIm11bHRpcGx5Iiwic3F1YXJlIiwicG93Il19LGRpdmlkZTp7bmFtZToiZGl2aWRlIixjYXRlZ29yeToiT3BlcmF0b3JzIixzeW50YXg6WyJ4IC8geSIsImRpdmlkZSh4LCB5KSJdLGRlc2NyaXB0aW9uOiJEaXZpZGUgdHdvIHZhbHVlcy4iLGV4YW1wbGVzOlsiYSA9IDIgLyAzIiwiYSAqIDMiLCI0LjUgLyAyIiwiMyArIDQgLyAyIiwiKDMgKyA0KSAvIDIiLCIxOCBrbSAvIDQuNSJdLHNlZWFsc286WyJtdWx0aXBseSJdfSxkb3REaXZpZGU6e25hbWU6ImRvdERpdmlkZSIsY2F0ZWdvcnk6Ik9wZXJhdG9ycyIsc3ludGF4OlsieCAuLyB5IiwiZG90RGl2aWRlKHgsIHkpIl0sZGVzY3JpcHRpb246IkRpdmlkZSB0d28gdmFsdWVzIGVsZW1lbnQgd2lzZS4iLGV4YW1wbGVzOlsiYSA9IFsxLCAyLCAzOyA0LCA1LCA2XSIsImIgPSBbMiwgMSwgMTsgMywgMiwgNV0iLCJhIC4vIGIiXSxzZWVhbHNvOlsibXVsdGlwbHkiLCJkb3RNdWx0aXBseSIsImRpdmlkZSJdfSxkb3RNdWx0aXBseTp7bmFtZToiZG90TXVsdGlwbHkiLGNhdGVnb3J5OiJPcGVyYXRvcnMiLHN5bnRheDpbInggLiogeSIsImRvdE11bHRpcGx5KHgsIHkpIl0sZGVzY3JpcHRpb246Ik11bHRpcGx5IHR3byB2YWx1ZXMgZWxlbWVudCB3aXNlLiIsZXhhbXBsZXM6WyJhID0gWzEsIDIsIDM7IDQsIDUsIDZdIiwiYiA9IFsyLCAxLCAxOyAzLCAyLCA1XSIsImEgLiogYiJdLHNlZWFsc286WyJtdWx0aXBseSIsImRpdmlkZSIsImRvdERpdmlkZSJdfSxkb3RQb3c6e25hbWU6ImRvdFBvdyIsY2F0ZWdvcnk6Ik9wZXJhdG9ycyIsc3ludGF4OlsieCAuXiB5IiwiZG90UG93KHgsIHkpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZXMgdGhlIHBvd2VyIG9mIHggdG8geSBlbGVtZW50IHdpc2UuIixleGFtcGxlczpbImEgPSBbMSwgMiwgMzsgNCwgNSwgNl0iLCJhIC5eIDIiXSxzZWVhbHNvOlsicG93Il19LGV4cDp7bmFtZToiZXhwIixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4OlsiZXhwKHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgZXhwb25lbnQgb2YgYSB2YWx1ZS4iLGV4YW1wbGVzOlsiZXhwKDEuMykiLCJlIF4gMS4zIiwibG9nKGV4cCgxLjMpKSIsInggPSAyLjQiLCIoZXhwKGkqeCkgPT0gY29zKHgpICsgaSpzaW4oeCkpICAgIyBFdWxlcidzIGZvcm11bGEiXSxzZWVhbHNvOlsiZXhwbSIsImV4cG0xIiwicG93IiwibG9nIl19LGV4cG06e25hbWU6ImV4cG0iLGNhdGVnb3J5OiJBcml0aG1ldGljIixzeW50YXg6WyJleHAoeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgbWF0cml4IGV4cG9uZW50aWFsLCBleHBtKEEpID0gZV5BLiBUaGUgbWF0cml4IG11c3QgYmUgc3F1YXJlLiBOb3QgdG8gYmUgY29uZnVzZWQgd2l0aCBleHAoYSksIHdoaWNoIHBlcmZvcm1zIGVsZW1lbnQtd2lzZSBleHBvbmVudGlhdGlvbi4iLGV4YW1wbGVzOlsiZXhwbShbWzAsMl0sWzAsMF1dKSJdLHNlZWFsc286WyJleHAiXX0sZXhwbTE6e25hbWU6ImV4cG0xIixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4OlsiZXhwbTEoeCkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSB2YWx1ZSBvZiBzdWJ0cmFjdGluZyAxIGZyb20gdGhlIGV4cG9uZW50aWFsIHZhbHVlLiIsZXhhbXBsZXM6WyJleHBtMSgyKSIsInBvdyhlLCAyKSAtIDEiLCJsb2coZXhwbTEoMikgKyAxKSJdLHNlZWFsc286WyJleHAiLCJwb3ciLCJsb2ciXX0sZml4OntuYW1lOiJmaXgiLGNhdGVnb3J5OiJBcml0aG1ldGljIixzeW50YXg6WyJmaXgoeCkiXSxkZXNjcmlwdGlvbjoiUm91bmQgYSB2YWx1ZSB0b3dhcmRzIHplcm8uIElmIHggaXMgY29tcGxleCwgYm90aCByZWFsIGFuZCBpbWFnaW5hcnkgcGFydCBhcmUgcm91bmRlZCB0b3dhcmRzIHplcm8uIixleGFtcGxlczpbImZpeCgzLjIpIiwiZml4KDMuOCkiLCJmaXgoLTQuMikiLCJmaXgoLTQuOCkiXSxzZWVhbHNvOlsiY2VpbCIsImZsb29yIiwicm91bmQiXX0sZmxvb3I6e25hbWU6ImZsb29yIixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4OlsiZmxvb3IoeCkiXSxkZXNjcmlwdGlvbjoiUm91bmQgYSB2YWx1ZSB0b3dhcmRzIG1pbnVzIGluZmluaXR5LklmIHggaXMgY29tcGxleCwgYm90aCByZWFsIGFuZCBpbWFnaW5hcnkgcGFydCBhcmUgcm91bmRlZCB0b3dhcmRzIG1pbnVzIGluZmluaXR5LiIsZXhhbXBsZXM6WyJmbG9vcigzLjIpIiwiZmxvb3IoMy44KSIsImZsb29yKC00LjIpIl0sc2VlYWxzbzpbImNlaWwiLCJmaXgiLCJyb3VuZCJdfSxnY2Q6e25hbWU6ImdjZCIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImdjZChhLCBiKSIsImdjZChhLCBiLCBjLCAuLi4pIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLiIsZXhhbXBsZXM6WyJnY2QoOCwgMTIpIiwiZ2NkKC00LCA2KSIsImdjZCgyNSwgMTUsIC0xMCkiXSxzZWVhbHNvOlsibGNtIiwieGdjZCJdfSxoeXBvdDp7bmFtZToiaHlwb3QiLGNhdGVnb3J5OiJBcml0aG1ldGljIixzeW50YXg6WyJoeXBvdChhLCBiLCBjLCAuLi4pIiwiaHlwb3QoW2EsIGIsIGMsIC4uLl0pIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgaHlwb3RlbnVzYSBvZiBhIGxpc3Qgd2l0aCB2YWx1ZXMuICIsZXhhbXBsZXM6WyJoeXBvdCgzLCA0KSIsInNxcnQoM14yICsgNF4yKSIsImh5cG90KC0yKSIsImh5cG90KFszLCA0LCA1XSkiXSxzZWVhbHNvOlsiYWJzIiwibm9ybSJdfSxsY206e25hbWU6ImxjbSIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImxjbSh4LCB5KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBsZWFzdCBjb21tb24gbXVsdGlwbGUuIixleGFtcGxlczpbImxjbSg0LCA2KSIsImxjbSg2LCAyMSkiLCJsY20oNiwgMjEsIDUpIl0sc2VlYWxzbzpbImdjZCJdfSxsb2c6e25hbWU6ImxvZyIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImxvZyh4KSIsImxvZyh4LCBiYXNlKSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBsb2dhcml0aG0gb2YgYSB2YWx1ZS4gSWYgbm8gYmFzZSBpcyBwcm92aWRlZCwgdGhlIG5hdHVyYWwgbG9nYXJpdGhtIG9mIHggaXMgY2FsY3VsYXRlZC4gSWYgYmFzZSBpZiBwcm92aWRlZCwgdGhlIGxvZ2FyaXRobSBpcyBjYWxjdWxhdGVkIGZvciB0aGUgc3BlY2lmaWVkIGJhc2UuIGxvZyh4LCBiYXNlKSBpcyBkZWZpbmVkIGFzIGxvZyh4KSAvIGxvZyhiYXNlKS4iLGV4YW1wbGVzOlsibG9nKDMuNSkiLCJhID0gbG9nKDIuNCkiLCJleHAoYSkiLCIxMCBeIDQiLCJsb2coMTAwMDAsIDEwKSIsImxvZygxMDAwMCkgLyBsb2coMTApIiwiYiA9IGxvZygxMDI0LCAyKSIsIjIgXiBiIl0sc2VlYWxzbzpbImV4cCIsImxvZzFwIiwibG9nMiIsImxvZzEwIl19LGxvZzI6e25hbWU6ImxvZzIiLGNhdGVnb3J5OiJBcml0aG1ldGljIixzeW50YXg6WyJsb2cyKHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgMi1iYXNlIG9mIGEgdmFsdWUuIFRoaXMgaXMgdGhlIHNhbWUgYXMgY2FsY3VsYXRpbmcgYGxvZyh4LCAyKWAuIixleGFtcGxlczpbImxvZzIoMC4wMzEyNSkiLCJsb2cyKDE2KSIsImxvZzIoMTYpIC8gbG9nMigyKSIsInBvdygyLCA0KSJdLHNlZWFsc286WyJleHAiLCJsb2cxcCIsImxvZyIsImxvZzEwIl19LGxvZzFwOntuYW1lOiJsb2cxcCIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImxvZzFwKHgpIiwibG9nMXAoeCwgYmFzZSkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSBsb2dhcml0aG0gb2YgYSBgdmFsdWUrMWAiLGV4YW1wbGVzOlsibG9nMXAoMi41KSIsImV4cChsb2cxcCgxLjQpKSIsInBvdygxMCwgNCkiLCJsb2cxcCg5OTk5LCAxMCkiLCJsb2cxcCg5OTk5KSAvIGxvZygxMCkiXSxzZWVhbHNvOlsiZXhwIiwibG9nIiwibG9nMiIsImxvZzEwIl19LGxvZzEwOntuYW1lOiJsb2cxMCIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImxvZzEwKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIDEwLWJhc2UgbG9nYXJpdGhtIG9mIGEgdmFsdWUuIixleGFtcGxlczpbImxvZzEwKDAuMDAwMDEpIiwibG9nMTAoMTAwMDApIiwiMTAgXiA0IiwibG9nKDEwMDAwKSAvIGxvZygxMCkiLCJsb2coMTAwMDAsIDEwKSJdLHNlZWFsc286WyJleHAiLCJsb2ciXX0sbW9kOntuYW1lOiJtb2QiLGNhdGVnb3J5OiJPcGVyYXRvcnMiLHN5bnRheDpbInggJSB5IiwieCBtb2QgeSIsIm1vZCh4LCB5KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGVzIHRoZSBtb2R1bHVzLCB0aGUgcmVtYWluZGVyIG9mIGFuIGludGVnZXIgZGl2aXNpb24uIixleGFtcGxlczpbIjcgJSAzIiwiMTEgJSAyIiwiMTAgbW9kIDQiLCJpc09kZCh4KSA9IHggJSAyIiwiaXNPZGQoMikiLCJpc09kZCgzKSJdLHNlZWFsc286WyJkaXZpZGUiXX0sbXVsdGlwbHk6e25hbWU6Im11bHRpcGx5IixjYXRlZ29yeToiT3BlcmF0b3JzIixzeW50YXg6WyJ4ICogeSIsIm11bHRpcGx5KHgsIHkpIl0sZGVzY3JpcHRpb246Im11bHRpcGx5IHR3byB2YWx1ZXMuIixleGFtcGxlczpbImEgPSAyLjEgKiAzLjQiLCJhIC8gMy40IiwiMiAqIDMgKyA0IiwiMiAqICgzICsgNCkiLCIzICogMi4xIGttIl0sc2VlYWxzbzpbImRpdmlkZSJdfSxub3JtOntuYW1lOiJub3JtIixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4Olsibm9ybSh4KSIsIm5vcm0oeCwgcCkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSBub3JtIG9mIGEgbnVtYmVyLCB2ZWN0b3Igb3IgbWF0cml4LiIsZXhhbXBsZXM6WyJhYnMoLTMuNSkiLCJub3JtKC0zLjUpIiwibm9ybSgzIC0gNGkpIiwibm9ybShbMSwgMiwgLTNdLCBJbmZpbml0eSkiLCJub3JtKFsxLCAyLCAtM10sIC1JbmZpbml0eSkiLCJub3JtKFszLCA0XSwgMikiLCJub3JtKFtbMSwgMl0sIFszLCA0XV0sIDEpIiwnbm9ybShbWzEsIDJdLCBbMywgNF1dLCAiaW5mIiknLCdub3JtKFtbMSwgMl0sIFszLCA0XV0sICJmcm8iKSddfSxudGhSb290OntuYW1lOiJudGhSb290IixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4OlsibnRoUm9vdChhKSIsIm50aFJvb3QoYSwgcm9vdCkiXSxkZXNjcmlwdGlvbjonQ2FsY3VsYXRlIHRoZSBudGggcm9vdCBvZiBhIHZhbHVlLiBUaGUgcHJpbmNpcGFsIG50aCByb290IG9mIGEgcG9zaXRpdmUgcmVhbCBudW1iZXIgQSwgaXMgdGhlIHBvc2l0aXZlIHJlYWwgc29sdXRpb24gb2YgdGhlIGVxdWF0aW9uICJ4XnJvb3QgPSBBIi4nLGV4YW1wbGVzOlsiNCBeIDMiLCJudGhSb290KDY0LCAzKSIsIm50aFJvb3QoOSwgMikiLCJzcXJ0KDkpIl0sc2VlYWxzbzpbIm50aFJvb3RzIiwicG93Iiwic3FydCJdfSxudGhSb290czp7bmFtZToibnRoUm9vdHMiLGNhdGVnb3J5OiJBcml0aG1ldGljIixzeW50YXg6WyJudGhSb290cyhBKSIsIm50aFJvb3RzKEEsIHJvb3QpIl0sZGVzY3JpcHRpb246J0NhbGN1bGF0ZSB0aGUgbnRoIHJvb3RzIG9mIGEgdmFsdWUuIEFuIG50aCByb290IG9mIGEgcG9zaXRpdmUgcmVhbCBudW1iZXIgQSwgaXMgYSBwb3NpdGl2ZSByZWFsIHNvbHV0aW9uIG9mIHRoZSBlcXVhdGlvbiAieF5yb290ID0gQSIuIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhbiBhcnJheSBvZiBjb21wbGV4IHZhbHVlcy4nLGV4YW1wbGVzOlsibnRoUm9vdHMoMSkiLCJudGhSb290cygxLCAzKSJdLHNlZWFsc286WyJzcXJ0IiwicG93IiwibnRoUm9vdCJdfSxwb3c6e25hbWU6InBvdyIsY2F0ZWdvcnk6Ik9wZXJhdG9ycyIsc3ludGF4OlsieCBeIHkiLCJwb3coeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlcyB0aGUgcG93ZXIgb2YgeCB0byB5LCB4XnkuIixleGFtcGxlczpbIjJeMyIsIjIqMioyIiwiMSArIGUgXiAocGkgKiBpKSIsInBvdyhbWzEsIDJdLCBbNCwgM11dLCAyKSIsInBvdyhbWzEsIDJdLCBbNCwgM11dLCAtMSkiXSxzZWVhbHNvOlsibXVsdGlwbHkiLCJudGhSb290IiwibnRoUm9vdHMiLCJzcXJ0Il19LHJvdW5kOntuYW1lOiJyb3VuZCIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbInJvdW5kKHgpIiwicm91bmQoeCwgbikiXSxkZXNjcmlwdGlvbjoicm91bmQgYSB2YWx1ZSB0b3dhcmRzIHRoZSBuZWFyZXN0IGludGVnZXIuSWYgeCBpcyBjb21wbGV4LCBib3RoIHJlYWwgYW5kIGltYWdpbmFyeSBwYXJ0IGFyZSByb3VuZGVkIHRvd2FyZHMgdGhlIG5lYXJlc3QgaW50ZWdlci4gV2hlbiBuIGlzIHNwZWNpZmllZCwgdGhlIHZhbHVlIGlzIHJvdW5kZWQgdG8gbiBkZWNpbWFscy4iLGV4YW1wbGVzOlsicm91bmQoMy4yKSIsInJvdW5kKDMuOCkiLCJyb3VuZCgtNC4yKSIsInJvdW5kKC00LjgpIiwicm91bmQocGksIDMpIiwicm91bmQoMTIzLjQ1Njc4LCAyKSJdLHNlZWFsc286WyJjZWlsIiwiZmxvb3IiLCJmaXgiXX0sc2lnbjp7bmFtZToic2lnbiIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbInNpZ24oeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgc2lnbiBvZiBhIHZhbHVlLiBUaGUgc2lnbiBvZiBhIHZhbHVlIHggaXMgMSB3aGVuIHg+MSwgLTEgd2hlbiB4PDAsIGFuZCAwIHdoZW4geD0wLiIsZXhhbXBsZXM6WyJzaWduKDMuNSkiLCJzaWduKC00LjIpIiwic2lnbigwKSJdLHNlZWFsc286WyJhYnMiXX0sc3FydDp7bmFtZToic3FydCIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbInNxcnQoeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgc3F1YXJlIHJvb3QgdmFsdWUuIElmIHggPSB5ICogeSwgdGhlbiB5IGlzIHRoZSBzcXVhcmUgcm9vdCBvZiB4LiIsZXhhbXBsZXM6WyJzcXJ0KDI1KSIsIjUgKiA1Iiwic3FydCgtMSkiXSxzZWVhbHNvOlsic3F1YXJlIiwic3FydG0iLCJtdWx0aXBseSIsIm50aFJvb3QiLCJudGhSb290cyIsInBvdyJdfSxzcXJ0bTp7bmFtZToic3FydG0iLGNhdGVnb3J5OiJBcml0aG1ldGljIixzeW50YXg6WyJzcXJ0bSh4KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIHByaW5jaXBhbCBzcXVhcmUgcm9vdCBvZiBhIHNxdWFyZSBtYXRyaXguIFRoZSBwcmluY2lwYWwgc3F1YXJlIHJvb3QgbWF0cml4IGBYYCBvZiBhbm90aGVyIG1hdHJpeCBgQWAgaXMgc3VjaCB0aGF0IGBYICogWCA9IEFgLiIsZXhhbXBsZXM6WyJzcXJ0bShbWzMzLCAyNF0sIFs0OCwgNTddXSkiXSxzZWVhbHNvOlsic3FydCIsImFicyIsInNxdWFyZSIsIm11bHRpcGx5Il19LHNxdWFyZTp7bmFtZToic3F1YXJlIixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4Olsic3F1YXJlKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIHNxdWFyZSBvZiBhIHZhbHVlLiBUaGUgc3F1YXJlIG9mIHggaXMgeCAqIHguIixleGFtcGxlczpbInNxdWFyZSgzKSIsInNxcnQoOSkiLCIzXjIiLCIzICogMyJdLHNlZWFsc286WyJtdWx0aXBseSIsInBvdyIsInNxcnQiLCJjdWJlIl19LHN1YnRyYWN0OntuYW1lOiJzdWJ0cmFjdCIsY2F0ZWdvcnk6Ik9wZXJhdG9ycyIsc3ludGF4OlsieCAtIHkiLCJzdWJ0cmFjdCh4LCB5KSJdLGRlc2NyaXB0aW9uOiJzdWJ0cmFjdCB0d28gdmFsdWVzLiIsZXhhbXBsZXM6WyJhID0gNS4zIC0gMiIsImEgKyAyIiwiMi8zIC0gMS82IiwiMiAqIDMgLSAzIiwiMi4xIGttIC0gNTAwbSJdLHNlZWFsc286WyJhZGQiXX0sdW5hcnlNaW51czp7bmFtZToidW5hcnlNaW51cyIsY2F0ZWdvcnk6Ik9wZXJhdG9ycyIsc3ludGF4OlsiLXgiLCJ1bmFyeU1pbnVzKHgpIl0sZGVzY3JpcHRpb246IkludmVyc2UgdGhlIHNpZ24gb2YgYSB2YWx1ZS4gQ29udmVydHMgYm9vbGVhbnMgYW5kIHN0cmluZ3MgdG8gbnVtYmVycy4iLGV4YW1wbGVzOlsiLTQuNSIsIi0oLTUuNikiLCctIjIyIiddLHNlZWFsc286WyJhZGQiLCJzdWJ0cmFjdCIsInVuYXJ5UGx1cyJdfSx1bmFyeVBsdXM6e25hbWU6InVuYXJ5UGx1cyIsY2F0ZWdvcnk6Ik9wZXJhdG9ycyIsc3ludGF4OlsiK3giLCJ1bmFyeVBsdXMoeCkiXSxkZXNjcmlwdGlvbjoiQ29udmVydHMgYm9vbGVhbnMgYW5kIHN0cmluZ3MgdG8gbnVtYmVycy4iLGV4YW1wbGVzOlsiK3RydWUiLCcrIjIiJ10sc2VlYWxzbzpbImFkZCIsInN1YnRyYWN0IiwidW5hcnlNaW51cyJdfSx4Z2NkOntuYW1lOiJ4Z2NkIixjYXRlZ29yeToiQXJpdGhtZXRpYyIsc3ludGF4OlsieGdjZChhLCBiKSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIGV4dGVuZGVkIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIGZvciB0d28gdmFsdWVzLiBUaGUgcmVzdWx0IGlzIGFuIGFycmF5IFtkLCB4LCB5XSB3aXRoIDMgZW50cmllcywgd2hlcmUgZCBpcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3IsIGFuZCBkID0geCAqIGEgKyB5ICogYi4iLGV4YW1wbGVzOlsieGdjZCg4LCAxMikiLCJnY2QoOCwgMTIpIiwieGdjZCgzNjE2MywgMjExOTkpIl0sc2VlYWxzbzpbImdjZCIsImxjbSJdfSxpbnZtb2Q6e25hbWU6Imludm1vZCIsY2F0ZWdvcnk6IkFyaXRobWV0aWMiLHN5bnRheDpbImludm1vZChhLCBiKSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIChtb2R1bGFyKSBtdWx0aXBsaWNhdGl2ZSBpbnZlcnNlIG9mIGEgbW9kdWxvIGIuIFNvbHV0aW9uIHRvIHRoZSBlcXVhdGlvbiBheCDiiaMgMSAobW9kIGIpIixleGFtcGxlczpbImludm1vZCg4LCAxMikiLCJpbnZtb2QoNywgMTMpIiwiaW52bW9kKDE1MTUxLCAxNTEyMikiXSxzZWVhbHNvOlsiZ2NkIiwieGdjZCJdfSxiaXRBbmQ6e25hbWU6ImJpdEFuZCIsY2F0ZWdvcnk6IkJpdHdpc2UiLHN5bnRheDpbInggJiB5IiwiYml0QW5kKHgsIHkpIl0sZGVzY3JpcHRpb246IkJpdHdpc2UgQU5EIG9wZXJhdGlvbi4gUGVyZm9ybXMgdGhlIGxvZ2ljYWwgQU5EIG9wZXJhdGlvbiBvbiBlYWNoIHBhaXIgb2YgdGhlIGNvcnJlc3BvbmRpbmcgYml0cyBvZiB0aGUgdHdvIGdpdmVuIHZhbHVlcyBieSBtdWx0aXBseWluZyB0aGVtLiBJZiBib3RoIGJpdHMgaW4gdGhlIGNvbXBhcmVkIHBvc2l0aW9uIGFyZSAxLCB0aGUgYml0IGluIHRoZSByZXN1bHRpbmcgYmluYXJ5IHJlcHJlc2VudGF0aW9uIGlzIDEsIG90aGVyd2lzZSwgdGhlIHJlc3VsdCBpcyAwIixleGFtcGxlczpbIjUgJiAzIiwiYml0QW5kKDUzLCAxMzEpIiwiWzEsIDEyLCAzMV0gJiA0MiJdLHNlZWFsc286WyJiaXROb3QiLCJiaXRPciIsImJpdFhvciIsImxlZnRTaGlmdCIsInJpZ2h0QXJpdGhTaGlmdCIsInJpZ2h0TG9nU2hpZnQiXX0sYml0Tm90OntuYW1lOiJiaXROb3QiLGNhdGVnb3J5OiJCaXR3aXNlIixzeW50YXg6WyJ+eCIsImJpdE5vdCh4KSJdLGRlc2NyaXB0aW9uOiJCaXR3aXNlIE5PVCBvcGVyYXRpb24uIFBlcmZvcm1zIGEgbG9naWNhbCBuZWdhdGlvbiBvbiBlYWNoIGJpdCBvZiB0aGUgZ2l2ZW4gdmFsdWUuIEJpdHMgdGhhdCBhcmUgMCBiZWNvbWUgMSwgYW5kIHRob3NlIHRoYXQgYXJlIDEgYmVjb21lIDAuIixleGFtcGxlczpbIn4xIiwifjIiLCJiaXROb3QoWzIsIC0zLCA0XSkiXSxzZWVhbHNvOlsiYml0QW5kIiwiYml0T3IiLCJiaXRYb3IiLCJsZWZ0U2hpZnQiLCJyaWdodEFyaXRoU2hpZnQiLCJyaWdodExvZ1NoaWZ0Il19LGJpdE9yOntuYW1lOiJiaXRPciIsY2F0ZWdvcnk6IkJpdHdpc2UiLHN5bnRheDpbInggfCB5IiwiYml0T3IoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQml0d2lzZSBPUiBvcGVyYXRpb24uIFBlcmZvcm1zIHRoZSBsb2dpY2FsIGluY2x1c2l2ZSBPUiBvcGVyYXRpb24gb24gZWFjaCBwYWlyIG9mIGNvcnJlc3BvbmRpbmcgYml0cyBvZiB0aGUgdHdvIGdpdmVuIHZhbHVlcy4gVGhlIHJlc3VsdCBpbiBlYWNoIHBvc2l0aW9uIGlzIDEgaWYgdGhlIGZpcnN0IGJpdCBpcyAxIG9yIHRoZSBzZWNvbmQgYml0IGlzIDEgb3IgYm90aCBiaXRzIGFyZSAxLCBvdGhlcndpc2UsIHRoZSByZXN1bHQgaXMgMC4iLGV4YW1wbGVzOlsiNSB8IDMiLCJiaXRPcihbMSwgMiwgM10sIDQpIl0sc2VlYWxzbzpbImJpdEFuZCIsImJpdE5vdCIsImJpdFhvciIsImxlZnRTaGlmdCIsInJpZ2h0QXJpdGhTaGlmdCIsInJpZ2h0TG9nU2hpZnQiXX0sYml0WG9yOntuYW1lOiJiaXRYb3IiLGNhdGVnb3J5OiJCaXR3aXNlIixzeW50YXg6WyJiaXRYb3IoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQml0d2lzZSBYT1Igb3BlcmF0aW9uLCBleGNsdXNpdmUgT1IuIFBlcmZvcm1zIHRoZSBsb2dpY2FsIGV4Y2x1c2l2ZSBPUiBvcGVyYXRpb24gb24gZWFjaCBwYWlyIG9mIGNvcnJlc3BvbmRpbmcgYml0cyBvZiB0aGUgdHdvIGdpdmVuIHZhbHVlcy4gVGhlIHJlc3VsdCBpbiBlYWNoIHBvc2l0aW9uIGlzIDEgaWYgb25seSB0aGUgZmlyc3QgYml0IGlzIDEgb3Igb25seSB0aGUgc2Vjb25kIGJpdCBpcyAxLCBidXQgd2lsbCBiZSAwIGlmIGJvdGggYXJlIDAgb3IgYm90aCBhcmUgMS4iLGV4YW1wbGVzOlsiYml0T3IoMSwgMikiLCJiaXRYb3IoWzIsIDMsIDRdLCA0KSJdLHNlZWFsc286WyJiaXRBbmQiLCJiaXROb3QiLCJiaXRPciIsImxlZnRTaGlmdCIsInJpZ2h0QXJpdGhTaGlmdCIsInJpZ2h0TG9nU2hpZnQiXX0sbGVmdFNoaWZ0OntuYW1lOiJsZWZ0U2hpZnQiLGNhdGVnb3J5OiJCaXR3aXNlIixzeW50YXg6WyJ4IDw8IHkiLCJsZWZ0U2hpZnQoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQml0d2lzZSBsZWZ0IGxvZ2ljYWwgc2hpZnQgb2YgYSB2YWx1ZSB4IGJ5IHkgbnVtYmVyIG9mIGJpdHMuIixleGFtcGxlczpbIjQgPDwgMSIsIjggPj4gMSJdLHNlZWFsc286WyJiaXRBbmQiLCJiaXROb3QiLCJiaXRPciIsImJpdFhvciIsInJpZ2h0QXJpdGhTaGlmdCIsInJpZ2h0TG9nU2hpZnQiXX0scmlnaHRBcml0aFNoaWZ0OntuYW1lOiJyaWdodEFyaXRoU2hpZnQiLGNhdGVnb3J5OiJCaXR3aXNlIixzeW50YXg6WyJ4ID4+IHkiLCJyaWdodEFyaXRoU2hpZnQoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQml0d2lzZSByaWdodCBhcml0aG1ldGljIHNoaWZ0IG9mIGEgdmFsdWUgeCBieSB5IG51bWJlciBvZiBiaXRzLiIsZXhhbXBsZXM6WyI4ID4+IDEiLCI0IDw8IDEiLCItMTIgPj4gMiJdLHNlZWFsc286WyJiaXRBbmQiLCJiaXROb3QiLCJiaXRPciIsImJpdFhvciIsImxlZnRTaGlmdCIsInJpZ2h0TG9nU2hpZnQiXX0scmlnaHRMb2dTaGlmdDp7bmFtZToicmlnaHRMb2dTaGlmdCIsY2F0ZWdvcnk6IkJpdHdpc2UiLHN5bnRheDpbInggPj4+IHkiLCJyaWdodExvZ1NoaWZ0KHgsIHkpIl0sZGVzY3JpcHRpb246IkJpdHdpc2UgcmlnaHQgbG9naWNhbCBzaGlmdCBvZiBhIHZhbHVlIHggYnkgeSBudW1iZXIgb2YgYml0cy4iLGV4YW1wbGVzOlsiOCA+Pj4gMSIsIjQgPDwgMSIsIi0xMiA+Pj4gMiJdLHNlZWFsc286WyJiaXRBbmQiLCJiaXROb3QiLCJiaXRPciIsImJpdFhvciIsImxlZnRTaGlmdCIsInJpZ2h0QXJpdGhTaGlmdCJdfSxiZWxsTnVtYmVyczp7bmFtZToiYmVsbE51bWJlcnMiLGNhdGVnb3J5OiJDb21iaW5hdG9yaWNzIixzeW50YXg6WyJiZWxsTnVtYmVycyhuKSJdLGRlc2NyaXB0aW9uOiJUaGUgQmVsbCBOdW1iZXJzIGNvdW50IHRoZSBudW1iZXIgb2YgcGFydGl0aW9ucyBvZiBhIHNldC4gQSBwYXJ0aXRpb24gaXMgYSBwYWlyd2lzZSBkaXNqb2ludCBzdWJzZXQgb2YgUyB3aG9zZSB1bmlvbiBpcyBTLiBgYmVsbE51bWJlcnNgIG9ubHkgdGFrZXMgaW50ZWdlciBhcmd1bWVudHMuIFRoZSBmb2xsb3dpbmcgY29uZGl0aW9uIG11c3QgYmUgZW5mb3JjZWQ6IG4gPj0gMC4iLGV4YW1wbGVzOlsiYmVsbE51bWJlcnMoMykiLCJiZWxsTnVtYmVycyg4KSJdLHNlZWFsc286WyJzdGlybGluZ1MyIl19LGNhdGFsYW46e25hbWU6ImNhdGFsYW4iLGNhdGVnb3J5OiJDb21iaW5hdG9yaWNzIixzeW50YXg6WyJjYXRhbGFuKG4pIl0sZGVzY3JpcHRpb246IlRoZSBDYXRhbGFuIE51bWJlcnMgZW51bWVyYXRlIGNvbWJpbmF0b3JpYWwgc3RydWN0dXJlcyBvZiBtYW55IGRpZmZlcmVudCB0eXBlcy4gY2F0YWxhbiBvbmx5IHRha2VzIGludGVnZXIgYXJndW1lbnRzLiBUaGUgZm9sbG93aW5nIGNvbmRpdGlvbiBtdXN0IGJlIGVuZm9yY2VkOiBuID49IDAuIixleGFtcGxlczpbImNhdGFsYW4oMykiLCJjYXRhbGFuKDgpIl0sc2VlYWxzbzpbImJlbGxOdW1iZXJzIl19LGNvbXBvc2l0aW9uOntuYW1lOiJjb21wb3NpdGlvbiIsY2F0ZWdvcnk6IkNvbWJpbmF0b3JpY3MiLHN5bnRheDpbImNvbXBvc2l0aW9uKG4sIGspIl0sZGVzY3JpcHRpb246IlRoZSBjb21wb3NpdGlvbiBjb3VudHMgb2YgbiBpbnRvIGsgcGFydHMuIGNvbXBvc2l0aW9uIG9ubHkgdGFrZXMgaW50ZWdlciBhcmd1bWVudHMuIFRoZSBmb2xsb3dpbmcgY29uZGl0aW9uIG11c3QgYmUgZW5mb3JjZWQ6IGsgPD0gbi4iLGV4YW1wbGVzOlsiY29tcG9zaXRpb24oNSwgMykiXSxzZWVhbHNvOlsiY29tYmluYXRpb25zIl19LHN0aXJsaW5nUzI6e25hbWU6InN0aXJsaW5nUzIiLGNhdGVnb3J5OiJDb21iaW5hdG9yaWNzIixzeW50YXg6WyJzdGlybGluZ1MyKG4sIGspIl0sZGVzY3JpcHRpb246ImhlIFN0aXJsaW5nIG51bWJlcnMgb2YgdGhlIHNlY29uZCBraW5kLCBjb3VudHMgdGhlIG51bWJlciBvZiB3YXlzIHRvIHBhcnRpdGlvbiBhIHNldCBvZiBuIGxhYmVsbGVkIG9iamVjdHMgaW50byBrIG5vbmVtcHR5IHVubGFiZWxsZWQgc3Vic2V0cy4gYHN0aXJsaW5nUzJgIG9ubHkgdGFrZXMgaW50ZWdlciBhcmd1bWVudHMuIFRoZSBmb2xsb3dpbmcgY29uZGl0aW9uIG11c3QgYmUgZW5mb3JjZWQ6IGsgPD0gbi4gSWYgbiA9IGsgb3IgayA9IDEsIHRoZW4gcyhuLGspID0gMS4iLGV4YW1wbGVzOlsic3RpcmxpbmdTMig1LCAzKSJdLHNlZWFsc286WyJiZWxsTnVtYmVycyJdfSxjb25maWc6e25hbWU6ImNvbmZpZyIsY2F0ZWdvcnk6IkNvcmUiLHN5bnRheDpbImNvbmZpZygpIiwiY29uZmlnKG9wdGlvbnMpIl0sZGVzY3JpcHRpb246IkdldCBjb25maWd1cmF0aW9uIG9yIGNoYW5nZSBjb25maWd1cmF0aW9uLiIsZXhhbXBsZXM6WyJjb25maWcoKSIsIjEvMyArIDEvNCIsJ2NvbmZpZyh7bnVtYmVyOiAiRnJhY3Rpb24ifSknLCIxLzMgKyAxLzQiXSxzZWVhbHNvOltdfSxpbXBvcnQ6e25hbWU6ImltcG9ydCIsY2F0ZWdvcnk6IkNvcmUiLHN5bnRheDpbImltcG9ydChmdW5jdGlvbnMpIiwiaW1wb3J0KGZ1bmN0aW9ucywgb3B0aW9ucykiXSxkZXNjcmlwdGlvbjoiSW1wb3J0IGZ1bmN0aW9ucyBvciBjb25zdGFudHMgZnJvbSBhbiBvYmplY3QuIixleGFtcGxlczpbImltcG9ydCh7bXlGbjogZih4KT14XjIsIG15Q29uc3RhbnQ6IDMyIH0pIiwibXlGbigyKSIsIm15Q29uc3RhbnQiXSxzZWVhbHNvOltdfSx0eXBlZDp7bmFtZToidHlwZWQiLGNhdGVnb3J5OiJDb3JlIixzeW50YXg6WyJ0eXBlZChzaWduYXR1cmVzKSIsInR5cGVkKG5hbWUsIHNpZ25hdHVyZXMpIl0sZGVzY3JpcHRpb246IkNyZWF0ZSBhIHR5cGVkIGZ1bmN0aW9uLiIsZXhhbXBsZXM6Wydkb3VibGUgPSB0eXBlZCh7ICJudW1iZXIiOiBmKHgpPXgreCwgInN0cmluZyI6IGYoeCk9Y29uY2F0KHgseCkgfSknLCJkb3VibGUoMikiLCdkb3VibGUoImhlbGxvIiknXSxzZWVhbHNvOltdfSxhcmc6e25hbWU6ImFyZyIsY2F0ZWdvcnk6IkNvbXBsZXgiLHN5bnRheDpbImFyZyh4KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBhcmd1bWVudCBvZiBhIGNvbXBsZXggdmFsdWUuIElmIHggPSBhK2JpLCB0aGUgYXJndW1lbnQgaXMgY29tcHV0ZWQgYXMgYXRhbjIoYiwgYSkuIixleGFtcGxlczpbImFyZygyICsgMmkpIiwiYXRhbjIoMywgMikiLCJhcmcoMiArIDNpKSJdLHNlZWFsc286WyJyZSIsImltIiwiY29uaiIsImFicyJdfSxjb25qOntuYW1lOiJjb25qIixjYXRlZ29yeToiQ29tcGxleCIsc3ludGF4OlsiY29uaih4KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBjb21wbGV4IGNvbmp1Z2F0ZSBvZiBhIGNvbXBsZXggdmFsdWUuIElmIHggPSBhK2JpLCB0aGUgY29tcGxleCBjb25qdWdhdGUgaXMgYS1iaS4iLGV4YW1wbGVzOlsiY29uaigyICsgM2kpIiwiY29uaigyIC0gM2kpIiwiY29uaigtNS4yaSkiXSxzZWVhbHNvOlsicmUiLCJpbSIsImFicyIsImFyZyJdfSxyZTp7bmFtZToicmUiLGNhdGVnb3J5OiJDb21wbGV4IixzeW50YXg6WyJyZSh4KSJdLGRlc2NyaXB0aW9uOiJHZXQgdGhlIHJlYWwgcGFydCBvZiBhIGNvbXBsZXggbnVtYmVyLiIsZXhhbXBsZXM6WyJyZSgyICsgM2kpIiwiaW0oMiArIDNpKSIsInJlKC01LjJpKSIsInJlKDIuNCkiXSxzZWVhbHNvOlsiaW0iLCJjb25qIiwiYWJzIiwiYXJnIl19LGltOntuYW1lOiJpbSIsY2F0ZWdvcnk6IkNvbXBsZXgiLHN5bnRheDpbImltKHgpIl0sZGVzY3JpcHRpb246IkdldCB0aGUgaW1hZ2luYXJ5IHBhcnQgb2YgYSBjb21wbGV4IG51bWJlci4iLGV4YW1wbGVzOlsiaW0oMiArIDNpKSIsInJlKDIgKyAzaSkiLCJpbSgtNS4yaSkiLCJpbSgyLjQpIl0sc2VlYWxzbzpbInJlIiwiY29uaiIsImFicyIsImFyZyJdfSxldmFsdWF0ZTp7bmFtZToiZXZhbHVhdGUiLGNhdGVnb3J5OiJFeHByZXNzaW9uIixzeW50YXg6WyJldmFsdWF0ZShleHByZXNzaW9uKSIsImV2YWx1YXRlKGV4cHJlc3Npb24sIHNjb3BlKSIsImV2YWx1YXRlKFtleHByMSwgZXhwcjIsIGV4cHIzLCAuLi5dKSIsImV2YWx1YXRlKFtleHByMSwgZXhwcjIsIGV4cHIzLCAuLi5dLCBzY29wZSkiXSxkZXNjcmlwdGlvbjoiRXZhbHVhdGUgYW4gZXhwcmVzc2lvbiBvciBhbiBhcnJheSB3aXRoIGV4cHJlc3Npb25zLiIsZXhhbXBsZXM6WydldmFsdWF0ZSgiMiArIDMiKScsJ2V2YWx1YXRlKCJzcXJ0KDE2KSIpJywnZXZhbHVhdGUoIjIgaW5jaCB0byBjbSIpJywnZXZhbHVhdGUoInNpbih4ICogcGkpIiwgeyAieCI6IDEvMiB9KScsJ2V2YWx1YXRlKFsid2lkdGg9MiIsICJoZWlnaHQ9NCIsIndpZHRoKmhlaWdodCJdKSddLHNlZWFsc286W119LGhlbHA6e25hbWU6ImhlbHAiLGNhdGVnb3J5OiJFeHByZXNzaW9uIixzeW50YXg6WyJoZWxwKG9iamVjdCkiLCJoZWxwKHN0cmluZykiXSxkZXNjcmlwdGlvbjoiRGlzcGxheSBkb2N1bWVudGF0aW9uIG9uIGEgZnVuY3Rpb24gb3IgZGF0YSB0eXBlLiIsZXhhbXBsZXM6WyJoZWxwKHNxcnQpIiwnaGVscCgiY29tcGxleCIpJ10sc2VlYWxzbzpbXX0sZGlzdGFuY2U6e25hbWU6ImRpc3RhbmNlIixjYXRlZ29yeToiR2VvbWV0cnkiLHN5bnRheDpbImRpc3RhbmNlKFt4MSwgeTFdLCBbeDIsIHkyXSkiLCJkaXN0YW5jZShbW3gxLCB5MV0sIFt4MiwgeTJdXSkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlcyB0aGUgRXVjbGlkZWFuIGRpc3RhbmNlIGJldHdlZW4gdHdvIHBvaW50cy4iLGV4YW1wbGVzOlsiZGlzdGFuY2UoWzAsMF0sIFs0LDRdKSIsImRpc3RhbmNlKFtbMCwwXSwgWzQsNF1dKSJdLHNlZWFsc286W119LGludGVyc2VjdDp7bmFtZToiaW50ZXJzZWN0IixjYXRlZ29yeToiR2VvbWV0cnkiLHN5bnRheDpbImludGVyc2VjdChleHByMSwgZXhwcjIsIGV4cHIzLCBleHByNCkiLCJpbnRlcnNlY3QoZXhwcjEsIGV4cHIyLCBleHByMykiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZXMgdGhlIGludGVyc2VjdGlvbiBwb2ludCBvZiBsaW5lcyBhbmQvb3IgcGxhbmVzLiIsZXhhbXBsZXM6WyJpbnRlcnNlY3QoWzAsIDBdLCBbMTAsIDEwXSwgWzEwLCAwXSwgWzAsIDEwXSkiLCJpbnRlcnNlY3QoWzEsIDAsIDFdLCAgWzQsIC0yLCAyXSwgWzEsIDEsIDEsIDZdKSJdLHNlZWFsc286W119LGFuZDp7bmFtZToiYW5kIixjYXRlZ29yeToiTG9naWNhbCIsc3ludGF4OlsieCBhbmQgeSIsImFuZCh4LCB5KSJdLGRlc2NyaXB0aW9uOiJMb2dpY2FsIGFuZC4gVGVzdCB3aGV0aGVyIHR3byB2YWx1ZXMgYXJlIGJvdGggZGVmaW5lZCB3aXRoIGEgbm9uemVyby9ub25lbXB0eSB2YWx1ZS4iLGV4YW1wbGVzOlsidHJ1ZSBhbmQgZmFsc2UiLCJ0cnVlIGFuZCB0cnVlIiwiMiBhbmQgNCJdLHNlZWFsc286WyJub3QiLCJvciIsInhvciJdfSxub3Q6e25hbWU6Im5vdCIsY2F0ZWdvcnk6IkxvZ2ljYWwiLHN5bnRheDpbIm5vdCB4Iiwibm90KHgpIl0sZGVzY3JpcHRpb246IkxvZ2ljYWwgbm90LiBGbGlwcyB0aGUgYm9vbGVhbiB2YWx1ZSBvZiBnaXZlbiBhcmd1bWVudC4iLGV4YW1wbGVzOlsibm90IHRydWUiLCJub3QgZmFsc2UiLCJub3QgMiIsIm5vdCAwIl0sc2VlYWxzbzpbImFuZCIsIm9yIiwieG9yIl19LG9yOntuYW1lOiJvciIsY2F0ZWdvcnk6IkxvZ2ljYWwiLHN5bnRheDpbInggb3IgeSIsIm9yKHgsIHkpIl0sZGVzY3JpcHRpb246IkxvZ2ljYWwgb3IuIFRlc3QgaWYgYXQgbGVhc3Qgb25lIHZhbHVlIGlzIGRlZmluZWQgd2l0aCBhIG5vbnplcm8vbm9uZW1wdHkgdmFsdWUuIixleGFtcGxlczpbInRydWUgb3IgZmFsc2UiLCJmYWxzZSBvciBmYWxzZSIsIjAgb3IgNCJdLHNlZWFsc286WyJub3QiLCJhbmQiLCJ4b3IiXX0seG9yOntuYW1lOiJ4b3IiLGNhdGVnb3J5OiJMb2dpY2FsIixzeW50YXg6WyJ4IHhvciB5IiwieG9yKHgsIHkpIl0sZGVzY3JpcHRpb246IkxvZ2ljYWwgZXhjbHVzaXZlIG9yLCB4b3IuIFRlc3Qgd2hldGhlciBvbmUgYW5kIG9ubHkgb25lIHZhbHVlIGlzIGRlZmluZWQgd2l0aCBhIG5vbnplcm8vbm9uZW1wdHkgdmFsdWUuIixleGFtcGxlczpbInRydWUgeG9yIGZhbHNlIiwiZmFsc2UgeG9yIGZhbHNlIiwidHJ1ZSB4b3IgdHJ1ZSIsIjAgeG9yIDQiXSxzZWVhbHNvOlsibm90IiwiYW5kIiwib3IiXX0sY29uY2F0OntuYW1lOiJjb25jYXQiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbImNvbmNhdChBLCBCLCBDLCAuLi4pIiwiY29uY2F0KEEsIEIsIEMsIC4uLiwgZGltKSJdLGRlc2NyaXB0aW9uOiJDb25jYXRlbmF0ZSBtYXRyaWNlcy4gQnkgZGVmYXVsdCwgdGhlIG1hdHJpY2VzIGFyZSBjb25jYXRlbmF0ZWQgYnkgdGhlIGxhc3QgZGltZW5zaW9uLiBUaGUgZGltZW5zaW9uIG9uIHdoaWNoIHRvIGNvbmNhdGVuYXRlIGNhbiBiZSBwcm92aWRlZCBhcyBsYXN0IGFyZ3VtZW50LiIsZXhhbXBsZXM6WyJBID0gWzEsIDI7IDUsIDZdIiwiQiA9IFszLCA0OyA3LCA4XSIsImNvbmNhdChBLCBCKSIsImNvbmNhdChBLCBCLCAxKSIsImNvbmNhdChBLCBCLCAyKSJdLHNlZWFsc286WyJkZXQiLCJkaWFnIiwiaWRlbnRpdHkiLCJpbnYiLCJvbmVzIiwicmFuZ2UiLCJzaXplIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYWNlIiwidHJhbnNwb3NlIiwiemVyb3MiXX0sY291bnQ6e25hbWU6ImNvdW50IixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJjb3VudCh4KSJdLGRlc2NyaXB0aW9uOiJDb3VudCB0aGUgbnVtYmVyIG9mIGVsZW1lbnRzIG9mIGEgbWF0cml4LCBhcnJheSBvciBzdHJpbmcuIixleGFtcGxlczpbImEgPSBbMSwgMjsgMywgNDsgNSwgNl0iLCJjb3VudChhKSIsInNpemUoYSkiLCdjb3VudCgiaGVsbG8gd29ybGQiKSddLHNlZWFsc286WyJzaXplIl19LGNyb3NzOntuYW1lOiJjcm9zcyIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiY3Jvc3MoQSwgQikiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSBjcm9zcyBwcm9kdWN0IGZvciB0d28gdmVjdG9ycyBpbiB0aHJlZSBkaW1lbnNpb25hbCBzcGFjZS4iLGV4YW1wbGVzOlsiY3Jvc3MoWzEsIDEsIDBdLCAgWzAsIDEsIDFdKSIsImNyb3NzKFszLCAtMywgMV0sIFs0LCA5LCAyXSkiLCJjcm9zcyhbMiwgMywgNF0sICBbNSwgNiwgN10pIl0sc2VlYWxzbzpbIm11bHRpcGx5IiwiZG90Il19LGNvbHVtbjp7bmFtZToiY29sdW1uIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJjb2x1bW4oeCwgaW5kZXgpIl0sZGVzY3JpcHRpb246IlJldHVybiBhIGNvbHVtbiBmcm9tIGEgbWF0cml4IG9yIGFycmF5LiIsZXhhbXBsZXM6WyJBID0gW1sxLCAyXSwgWzMsIDRdXSIsImNvbHVtbihBLCAxKSIsImNvbHVtbihBLCAyKSJdLHNlZWFsc286WyJyb3ciLCJtYXRyaXhGcm9tQ29sdW1ucyJdfSxjdHJhbnNwb3NlOntuYW1lOiJjdHJhbnNwb3NlIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJ4JyIsImN0cmFuc3Bvc2UoeCkiXSxkZXNjcmlwdGlvbjoiQ29tcGxleCBDb25qdWdhdGUgYW5kIFRyYW5zcG9zZSBhIG1hdHJpeCIsZXhhbXBsZXM6WyJhID0gWzEsIDIsIDM7IDQsIDUsIDZdIiwiYSciLCJjdHJhbnNwb3NlKGEpIl0sc2VlYWxzbzpbImNvbmNhdCIsImRldCIsImRpYWciLCJpZGVudGl0eSIsImludiIsIm9uZXMiLCJyYW5nZSIsInNpemUiLCJzcXVlZXplIiwic3Vic2V0IiwidHJhY2UiLCJ6ZXJvcyJdfSxkZXQ6e25hbWU6ImRldCIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiZGV0KHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgZGV0ZXJtaW5hbnQgb2YgYSBtYXRyaXgiLGV4YW1wbGVzOlsiZGV0KFsxLCAyOyAzLCA0XSkiLCJkZXQoWy0yLCAyLCAzOyAtMSwgMSwgMzsgMiwgMCwgLTFdKSJdLHNlZWFsc286WyJjb25jYXQiLCJkaWFnIiwiaWRlbnRpdHkiLCJpbnYiLCJvbmVzIiwicmFuZ2UiLCJzaXplIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYWNlIiwidHJhbnNwb3NlIiwiemVyb3MiXX0sZGlhZzp7bmFtZToiZGlhZyIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiZGlhZyh4KSIsImRpYWcoeCwgaykiXSxkZXNjcmlwdGlvbjoiQ3JlYXRlIGEgZGlhZ29uYWwgbWF0cml4IG9yIHJldHJpZXZlIHRoZSBkaWFnb25hbCBvZiBhIG1hdHJpeC4gV2hlbiB4IGlzIGEgdmVjdG9yLCBhIG1hdHJpeCB3aXRoIHRoZSB2ZWN0b3IgdmFsdWVzIG9uIHRoZSBkaWFnb25hbCB3aWxsIGJlIHJldHVybmVkLiBXaGVuIHggaXMgYSBtYXRyaXgsIGEgdmVjdG9yIHdpdGggdGhlIGRpYWdvbmFsIHZhbHVlcyBvZiB0aGUgbWF0cml4IGlzIHJldHVybmVkLiBXaGVuIGsgaXMgcHJvdmlkZWQsIHRoZSBrLXRoIGRpYWdvbmFsIHdpbGwgYmUgZmlsbGVkIGluIG9yIHJldHJpZXZlZCwgaWYgayBpcyBwb3NpdGl2ZSwgdGhlIHZhbHVlcyBhcmUgcGxhY2VkIG9uIHRoZSBzdXBlciBkaWFnb25hbC4gV2hlbiBrIGlzIG5lZ2F0aXZlLCB0aGUgdmFsdWVzIGFyZSBwbGFjZWQgb24gdGhlIHN1YiBkaWFnb25hbC4iLGV4YW1wbGVzOlsiZGlhZygxOjMpIiwiZGlhZygxOjMsIDEpIiwiYSA9IFsxLCAyLCAzOyA0LCA1LCA2OyA3LCA4LCA5XSIsImRpYWcoYSkiXSxzZWVhbHNvOlsiY29uY2F0IiwiZGV0IiwiaWRlbnRpdHkiLCJpbnYiLCJvbmVzIiwicmFuZ2UiLCJzaXplIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYWNlIiwidHJhbnNwb3NlIiwiemVyb3MiXX0sZGlmZjp7bmFtZToiZGlmZiIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiZGlmZihhcnIpIiwiZGlmZihhcnIsIGRpbSkiXSxkZXNjcmlwdGlvbjpbIkNyZWF0ZSBhIG5ldyBtYXRyaXggb3IgYXJyYXkgd2l0aCB0aGUgZGlmZmVyZW5jZSBvZiB0aGUgcGFzc2VkIG1hdHJpeCBvciBhcnJheS4iLCJEaW0gcGFyYW1ldGVyIGlzIG9wdGlvbmFsIGFuZCB1c2VkIHRvIGluZGljYW50IHRoZSBkaW1lbnNpb24gb2YgdGhlIGFycmF5L21hdHJpeCB0byBhcHBseSB0aGUgZGlmZmVyZW5jZSIsIklmIG5vIGRpbWVuc2lvbiBwYXJhbWV0ZXIgaXMgcGFzc2VkIGl0IGlzIGFzc3VtZWQgYXMgZGltZW5zaW9uIDAiLCJEaW1lbnNpb24gaXMgemVyby1iYXNlZCBpbiBqYXZhc2NyaXB0IGFuZCBvbmUtYmFzZWQgaW4gdGhlIHBhcnNlciIsIkFycmF5cyBtdXN0IGJlICdyZWN0YW5ndWxhcicgbWVhbmluZyBhcnJheXMgbGlrZSBbMSwgMl0iLCJJZiBzb21ldGhpbmcgaXMgcGFzc2VkIGFzIGEgbWF0cml4IGl0IHdpbGwgYmUgcmV0dXJuZWQgYXMgYSBtYXRyaXggYnV0IG90aGVyIHRoYW4gdGhhdCBhbGwgbWF0cmljZXMgYXJlIGNvbnZlcnRlZCB0byBhcnJheXMiXSxleGFtcGxlczpbIkEgPSBbMSwgMiwgNCwgNywgMF0iLCJkaWZmKEEpIiwiZGlmZihBLCAxKSIsIkIgPSBbWzEsIDJdLCBbMywgNF1dIiwiZGlmZihCKSIsImRpZmYoQiwgMSkiLCJkaWZmKEIsIDIpIiwiZGlmZihCLCBiaWdudW1iZXIoMikpIiwiZGlmZihbWzEsIDJdLCBtYXRyaXgoWzMsIDRdKV0sIDIpIl0sc2VlYWxzbzpbInN1YnRyYWN0IiwicGFydGl0aW9uU2VsZWN0Il19LGRvdDp7bmFtZToiZG90IixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJkb3QoQSwgQikiLCJBICogQiJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIGRvdCBwcm9kdWN0IG9mIHR3byB2ZWN0b3JzLiBUaGUgZG90IHByb2R1Y3Qgb2YgQSA9IFthMSwgYTIsIGEzLCAuLi4sIGFuXSBhbmQgQiA9IFtiMSwgYjIsIGIzLCAuLi4sIGJuXSBpcyBkZWZpbmVkIGFzIGRvdChBLCBCKSA9IGExICogYjEgKyBhMiAqIGIyICsgYTMgKiBiMyArIC4uLiArIGFuICogYm4iLGV4YW1wbGVzOlsiZG90KFsyLCA0LCAxXSwgWzIsIDIsIDNdKSIsIlsyLCA0LCAxXSAqIFsyLCAyLCAzXSJdLHNlZWFsc286WyJtdWx0aXBseSIsImNyb3NzIl19LGdldE1hdHJpeERhdGFUeXBlOntuYW1lOiJnZXRNYXRyaXhEYXRhVHlwZSIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiZ2V0TWF0cml4RGF0YVR5cGUoeCkiXSxkZXNjcmlwdGlvbjonRmluZCB0aGUgZGF0YSB0eXBlIG9mIGFsbCBlbGVtZW50cyBpbiBhIG1hdHJpeCBvciBhcnJheSwgZm9yIGV4YW1wbGUgIm51bWJlciIgaWYgYWxsIGl0ZW1zIGFyZSBhIG51bWJlciBhbmQgIkNvbXBsZXgiIGlmIGFsbCB2YWx1ZXMgYXJlIGNvbXBsZXggbnVtYmVycy4gSWYgYSBtYXRyaXggY29udGFpbnMgbW9yZSB0aGFuIG9uZSBkYXRhIHR5cGUsIGl0IHdpbGwgcmV0dXJuICJtaXhlZCIuJyxleGFtcGxlczpbImdldE1hdHJpeERhdGFUeXBlKFsxLCAyLCAzXSkiLCJnZXRNYXRyaXhEYXRhVHlwZShbWzUgY21dLCBbMiBpbmNoXV0pIiwnZ2V0TWF0cml4RGF0YVR5cGUoWzEsICJ0ZXh0Il0pJywiZ2V0TWF0cml4RGF0YVR5cGUoWzEsIGJpZ251bWJlcig0KV0pIl0sc2VlYWxzbzpbIm1hdHJpeCIsInNwYXJzZSIsInR5cGVPZiJdfSxpZGVudGl0eTp7bmFtZToiaWRlbnRpdHkiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbImlkZW50aXR5KG4pIiwiaWRlbnRpdHkobSwgbikiLCJpZGVudGl0eShbbSwgbl0pIl0sZGVzY3JpcHRpb246IlJldHVybnMgdGhlIGlkZW50aXR5IG1hdHJpeCB3aXRoIHNpemUgbS1ieS1uLiBUaGUgbWF0cml4IGhhcyBvbmVzIG9uIHRoZSBkaWFnb25hbCBhbmQgemVyb3MgZWxzZXdoZXJlLiIsZXhhbXBsZXM6WyJpZGVudGl0eSgzKSIsImlkZW50aXR5KDMsIDUpIiwiYSA9IFsxLCAyLCAzOyA0LCA1LCA2XSIsImlkZW50aXR5KHNpemUoYSkpIl0sc2VlYWxzbzpbImNvbmNhdCIsImRldCIsImRpYWciLCJpbnYiLCJvbmVzIiwicmFuZ2UiLCJzaXplIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYWNlIiwidHJhbnNwb3NlIiwiemVyb3MiXX0sZmlsdGVyOntuYW1lOiJmaWx0ZXIiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbImZpbHRlcih4LCB0ZXN0KSJdLGRlc2NyaXB0aW9uOiJGaWx0ZXIgaXRlbXMgaW4gYSBtYXRyaXguIixleGFtcGxlczpbImlzUG9zaXRpdmUoeCkgPSB4ID4gMCIsImZpbHRlcihbNiwgLTIsIC0xLCA0LCAzXSwgaXNQb3NpdGl2ZSkiLCJmaWx0ZXIoWzYsIC0yLCAwLCAxLCAwXSwgeCAhPSAwKSJdLHNlZWFsc286WyJzb3J0IiwibWFwIiwiZm9yRWFjaCJdfSxmbGF0dGVuOntuYW1lOiJmbGF0dGVuIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJmbGF0dGVuKHgpIl0sZGVzY3JpcHRpb246IkZsYXR0ZW4gYSBtdWx0aSBkaW1lbnNpb25hbCBtYXRyaXggaW50byBhIHNpbmdsZSBkaW1lbnNpb25hbCBtYXRyaXguIixleGFtcGxlczpbImEgPSBbMSwgMiwgMzsgNCwgNSwgNl0iLCJzaXplKGEpIiwiYiA9IGZsYXR0ZW4oYSkiLCJzaXplKGIpIl0sc2VlYWxzbzpbImNvbmNhdCIsInJlc2l6ZSIsInNpemUiLCJzcXVlZXplIl19LGZvckVhY2g6e25hbWU6ImZvckVhY2giLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbImZvckVhY2goeCwgY2FsbGJhY2spIl0sZGVzY3JpcHRpb246Ikl0ZXJhdGVzIG92ZXIgYWxsIGVsZW1lbnRzIG9mIGEgbWF0cml4L2FycmF5LCBhbmQgZXhlY3V0ZXMgdGhlIGdpdmVuIGNhbGxiYWNrIGZ1bmN0aW9uLiIsZXhhbXBsZXM6WyJudW1iZXJPZlBldHMgPSB7fSIsImFkZFBldChuKSA9IG51bWJlck9mUGV0c1tuXSA9IChudW1iZXJPZlBldHNbbl0gPyBudW1iZXJPZlBldHNbbl06MCApICsgMTsiLCdmb3JFYWNoKFsiRG9nIiwiQ2F0IiwiQ2F0Il0sIGFkZFBldCknLCJudW1iZXJPZlBldHMiXSxzZWVhbHNvOlsibWFwIiwic29ydCIsImZpbHRlciJdfSxpbnY6e25hbWU6ImludiIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiaW52KHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgaW52ZXJzZSBvZiBhIG1hdHJpeCIsZXhhbXBsZXM6WyJpbnYoWzEsIDI7IDMsIDRdKSIsImludig0KSIsIjEgLyA0Il0sc2VlYWxzbzpbImNvbmNhdCIsImRldCIsImRpYWciLCJpZGVudGl0eSIsIm9uZXMiLCJyYW5nZSIsInNpemUiLCJzcXVlZXplIiwic3Vic2V0IiwidHJhY2UiLCJ0cmFuc3Bvc2UiLCJ6ZXJvcyJdfSxwaW52OntuYW1lOiJwaW52IixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJwaW52KHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgTW9vcmXigJNQZW5yb3NlIGludmVyc2Ugb2YgYSBtYXRyaXgiLGV4YW1wbGVzOlsicGludihbMSwgMjsgMywgNF0pIiwicGludihbWzEsIDBdLCBbMCwgMV0sIFswLCAxXV0pIiwicGludig0KSJdLHNlZWFsc286WyJpbnYiXX0sZWlnczp7bmFtZToiZWlncyIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiZWlncyh4KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIGVpZ2VudmFsdWVzIGFuZCBlaWdlbnZlY3RvcnMgb2YgYSByZWFsIHN5bW1ldHJpYyBtYXRyaXgiLGV4YW1wbGVzOlsiZWlncyhbWzUsIDIuM10sIFsyLjMsIDFdXSkiXSxzZWVhbHNvOlsiaW52Il19LGtyb246e25hbWU6Imtyb24iLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbImtyb24oeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlcyB0aGUga3JvbmVja2VyIHByb2R1Y3Qgb2YgMiBtYXRyaWNlcyBvciB2ZWN0b3JzLiIsZXhhbXBsZXM6WyJrcm9uKFtbMSwgMF0sIFswLCAxXV0sIFtbMSwgMl0sIFszLCA0XV0pIiwia3JvbihbMSwxXSwgWzIsMyw0XSkiXSxzZWVhbHNvOlsibXVsdGlwbHkiLCJkb3QiLCJjcm9zcyJdfSxtYXRyaXhGcm9tRnVuY3Rpb246e25hbWU6Im1hdHJpeEZyb21GdW5jdGlvbiIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsibWF0cml4RnJvbUZ1bmN0aW9uKHNpemUsIGZuKSIsIm1hdHJpeEZyb21GdW5jdGlvbihzaXplLCBmbiwgZm9ybWF0KSIsIm1hdHJpeEZyb21GdW5jdGlvbihzaXplLCBmbiwgZm9ybWF0LCBkYXRhdHlwZSkiLCJtYXRyaXhGcm9tRnVuY3Rpb24oc2l6ZSwgZm9ybWF0LCBmbikiLCJtYXRyaXhGcm9tRnVuY3Rpb24oc2l6ZSwgZm9ybWF0LCBkYXRhdHlwZSwgZm4pIl0sZGVzY3JpcHRpb246IkNyZWF0ZSBhIG1hdHJpeCBieSBldmFsdWF0aW5nIGEgZ2VuZXJhdGluZyBmdW5jdGlvbiBhdCBlYWNoIGluZGV4LiIsZXhhbXBsZXM6WyJmKEkpID0gSVsxXSAtIElbMl0iLCJtYXRyaXhGcm9tRnVuY3Rpb24oWzMsM10sIGYpIiwiZyhJKSA9IElbMV0gLSBJWzJdID09IDEgPyA0IDogMCIsJ21hdHJpeEZyb21GdW5jdGlvbihbMTAwLCAxMDBdLCAic3BhcnNlIiwgZyknLCJtYXRyaXhGcm9tRnVuY3Rpb24oWzVdLCByYW5kb20pIl0sc2VlYWxzbzpbIm1hdHJpeCIsIm1hdHJpeEZyb21Sb3dzIiwibWF0cml4RnJvbUNvbHVtbnMiLCJ6ZXJvcyJdfSxtYXRyaXhGcm9tUm93czp7bmFtZToibWF0cml4RnJvbVJvd3MiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbIm1hdHJpeEZyb21Sb3dzKC4uLmFycikiLCJtYXRyaXhGcm9tUm93cyhyb3cxLCByb3cyKSIsIm1hdHJpeEZyb21Sb3dzKHJvdzEsIHJvdzIsIHJvdzMpIl0sZGVzY3JpcHRpb246IkNyZWF0ZSBhIGRlbnNlIG1hdHJpeCBmcm9tIHZlY3RvcnMgYXMgaW5kaXZpZHVhbCByb3dzLiIsZXhhbXBsZXM6WyJtYXRyaXhGcm9tUm93cyhbMSwgMiwgM10sIFtbNF0sWzVdLFs2XV0pIl0sc2VlYWxzbzpbIm1hdHJpeCIsIm1hdHJpeEZyb21Db2x1bW5zIiwibWF0cml4RnJvbUZ1bmN0aW9uIiwiemVyb3MiXX0sbWF0cml4RnJvbUNvbHVtbnM6e25hbWU6Im1hdHJpeEZyb21Db2x1bW5zIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJtYXRyaXhGcm9tQ29sdW1ucyguLi5hcnIpIiwibWF0cml4RnJvbUNvbHVtbnMocm93MSwgcm93MikiLCJtYXRyaXhGcm9tQ29sdW1ucyhyb3cxLCByb3cyLCByb3czKSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSBkZW5zZSBtYXRyaXggZnJvbSB2ZWN0b3JzIGFzIGluZGl2aWR1YWwgY29sdW1ucy4iLGV4YW1wbGVzOlsibWF0cml4RnJvbUNvbHVtbnMoWzEsIDIsIDNdLCBbWzRdLFs1XSxbNl1dKSJdLHNlZWFsc286WyJtYXRyaXgiLCJtYXRyaXhGcm9tUm93cyIsIm1hdHJpeEZyb21GdW5jdGlvbiIsInplcm9zIl19LG1hcDp7bmFtZToibWFwIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJtYXAoeCwgY2FsbGJhY2spIl0sZGVzY3JpcHRpb246IkNyZWF0ZSBhIG5ldyBtYXRyaXggb3IgYXJyYXkgd2l0aCB0aGUgcmVzdWx0cyBvZiB0aGUgY2FsbGJhY2sgZnVuY3Rpb24gZXhlY3V0ZWQgb24gZWFjaCBlbnRyeSBvZiB0aGUgbWF0cml4L2FycmF5LiIsZXhhbXBsZXM6WyJtYXAoWzEsIDIsIDNdLCBzcXVhcmUpIl0sc2VlYWxzbzpbImZpbHRlciIsImZvckVhY2giXX0sb25lczp7bmFtZToib25lcyIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4Olsib25lcyhtKSIsIm9uZXMobSwgbikiLCJvbmVzKG0sIG4sIHAsIC4uLikiLCJvbmVzKFttXSkiLCJvbmVzKFttLCBuXSkiLCJvbmVzKFttLCBuLCBwLCAuLi5dKSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSBtYXRyaXggY29udGFpbmluZyBvbmVzLiIsZXhhbXBsZXM6WyJvbmVzKDMpIiwib25lcygzLCA1KSIsIm9uZXMoWzIsM10pICogNC41IiwiYSA9IFsxLCAyLCAzOyA0LCA1LCA2XSIsIm9uZXMoc2l6ZShhKSkiXSxzZWVhbHNvOlsiY29uY2F0IiwiZGV0IiwiZGlhZyIsImlkZW50aXR5IiwiaW52IiwicmFuZ2UiLCJzaXplIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYWNlIiwidHJhbnNwb3NlIiwiemVyb3MiXX0scGFydGl0aW9uU2VsZWN0OntuYW1lOiJwYXJ0aXRpb25TZWxlY3QiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbInBhcnRpdGlvblNlbGVjdCh4LCBrKSIsInBhcnRpdGlvblNlbGVjdCh4LCBrLCBjb21wYXJlKSJdLGRlc2NyaXB0aW9uOiJQYXJ0aXRpb24tYmFzZWQgc2VsZWN0aW9uIG9mIGFuIGFycmF5IG9yIDFEIG1hdHJpeC4gV2lsbCBmaW5kIHRoZSBrdGggc21hbGxlc3QgdmFsdWUsIGFuZCBtdXRhdGVzIHRoZSBpbnB1dCBhcnJheS4gVXNlcyBRdWlja3NlbGVjdC4iLGV4YW1wbGVzOlsicGFydGl0aW9uU2VsZWN0KFs1LCAxMCwgMV0sIDIpIiwncGFydGl0aW9uU2VsZWN0KFsiQyIsICJCIiwgIkEiLCAiRCJdLCAxLCBjb21wYXJlVGV4dCknLCJhcnIgPSBbNSwgMiwgMV0iLCJwYXJ0aXRpb25TZWxlY3QoYXJyLCAwKSAjIHJldHVybnMgMSwgYXJyIGlzIG5vdzogWzEsIDIsIDVdIiwiYXJyIiwicGFydGl0aW9uU2VsZWN0KGFyciwgMSwgJ2Rlc2MnKSAjIHJldHVybnMgMiwgYXJyIGlzIG5vdzogWzUsIDIsIDFdIiwiYXJyIl0sc2VlYWxzbzpbInNvcnQiXX0scmFuZ2U6e25hbWU6InJhbmdlIixjYXRlZ29yeToiVHlwZSIsc3ludGF4Olsic3RhcnQ6ZW5kIiwic3RhcnQ6c3RlcDplbmQiLCJyYW5nZShzdGFydCwgZW5kKSIsInJhbmdlKHN0YXJ0LCBlbmQsIHN0ZXApIiwicmFuZ2Uoc3RyaW5nKSJdLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSByYW5nZS4gTG93ZXIgYm91bmQgb2YgdGhlIHJhbmdlIGlzIGluY2x1ZGVkLCB1cHBlciBib3VuZCBpcyBleGNsdWRlZC4iLGV4YW1wbGVzOlsiMTo1IiwiMzotMTotMyIsInJhbmdlKDMsIDcpIiwicmFuZ2UoMCwgMTIsIDIpIiwncmFuZ2UoIjQ6MTAiKScsInJhbmdlKDFtLCAxbSwgM20pIiwiYSA9IFsxLCAyLCAzLCA0OyA1LCA2LCA3LCA4XSIsImFbMToyLCAxOjJdIl0sc2VlYWxzbzpbImNvbmNhdCIsImRldCIsImRpYWciLCJpZGVudGl0eSIsImludiIsIm9uZXMiLCJzaXplIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYWNlIiwidHJhbnNwb3NlIiwiemVyb3MiXX0scmVzaXplOntuYW1lOiJyZXNpemUiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbInJlc2l6ZSh4LCBzaXplKSIsInJlc2l6ZSh4LCBzaXplLCBkZWZhdWx0VmFsdWUpIl0sZGVzY3JpcHRpb246IlJlc2l6ZSBhIG1hdHJpeC4iLGV4YW1wbGVzOlsicmVzaXplKFsxLDIsMyw0LDVdLCBbM10pIiwicmVzaXplKFsxLDIsM10sIFs1XSkiLCJyZXNpemUoWzEsMiwzXSwgWzVdLCAtMSkiLCJyZXNpemUoMiwgWzIsIDNdKSIsJ3Jlc2l6ZSgiaGVsbG8iLCBbOF0sICIhIiknXSxzZWVhbHNvOlsic2l6ZSIsInN1YnNldCIsInNxdWVlemUiLCJyZXNoYXBlIl19LHJlc2hhcGU6e25hbWU6InJlc2hhcGUiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbInJlc2hhcGUoeCwgc2l6ZXMpIl0sZGVzY3JpcHRpb246IlJlc2hhcGUgYSBtdWx0aSBkaW1lbnNpb25hbCBhcnJheSB0byBmaXQgdGhlIHNwZWNpZmllZCBkaW1lbnNpb25zLiIsZXhhbXBsZXM6WyJyZXNoYXBlKFsxLCAyLCAzLCA0LCA1LCA2XSwgWzIsIDNdKSIsInJlc2hhcGUoW1sxLCAyXSwgWzMsIDRdXSwgWzEsIDRdKSIsInJlc2hhcGUoW1sxLCAyXSwgWzMsIDRdXSwgWzRdKSIsInJlc2hhcGUoWzEsIDIsIDMsIDRdLCBbLTEsIDJdKSJdLHNlZWFsc286WyJzaXplIiwic3F1ZWV6ZSIsInJlc2l6ZSJdfSxyb3RhdGU6e25hbWU6InJvdGF0ZSIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4Olsicm90YXRlKHcsIHRoZXRhKSIsInJvdGF0ZSh3LCB0aGV0YSwgdikiXSxkZXNjcmlwdGlvbjoiUmV0dXJucyBhIDItRCByb3RhdGlvbiBtYXRyaXggKDJ4MikgZm9yIGEgZ2l2ZW4gYW5nbGUgKGluIHJhZGlhbnMpLiBSZXR1cm5zIGEgMi1EIHJvdGF0aW9uIG1hdHJpeCAoM3gzKSBvZiBhIGdpdmVuIGFuZ2xlIChpbiByYWRpYW5zKSBhcm91bmQgZ2l2ZW4gYXhpcy4iLGV4YW1wbGVzOlsicm90YXRlKFsxLCAwXSwgcGkgLyAyKSIsJ3JvdGF0ZShtYXRyaXgoWzEsIDBdKSwgdW5pdCgiMzVkZWciKSknLCdyb3RhdGUoWzEsIDAsIDBdLCB1bml0KCI5MGRlZyIpLCBbMCwgMCwgMV0pJywncm90YXRlKG1hdHJpeChbMSwgMCwgMF0pLCB1bml0KCI5MGRlZyIpLCBtYXRyaXgoWzAsIDAsIDFdKSknXSxzZWVhbHNvOlsibWF0cml4Iiwicm90YXRpb25NYXRyaXgiXX0scm90YXRpb25NYXRyaXg6e25hbWU6InJvdGF0aW9uTWF0cml4IixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJyb3RhdGlvbk1hdHJpeCh0aGV0YSkiLCJyb3RhdGlvbk1hdHJpeCh0aGV0YSwgdikiLCJyb3RhdGlvbk1hdHJpeCh0aGV0YSwgdiwgZm9ybWF0KSJdLGRlc2NyaXB0aW9uOiJSZXR1cm5zIGEgMi1EIHJvdGF0aW9uIG1hdHJpeCAoMngyKSBmb3IgYSBnaXZlbiBhbmdsZSAoaW4gcmFkaWFucykuIFJldHVybnMgYSAyLUQgcm90YXRpb24gbWF0cml4ICgzeDMpIG9mIGEgZ2l2ZW4gYW5nbGUgKGluIHJhZGlhbnMpIGFyb3VuZCBnaXZlbiBheGlzLiIsZXhhbXBsZXM6WyJyb3RhdGlvbk1hdHJpeChwaSAvIDIpIiwncm90YXRpb25NYXRyaXgodW5pdCgiNDVkZWciKSwgWzAsIDAsIDFdKScsJ3JvdGF0aW9uTWF0cml4KDEsIG1hdHJpeChbMCwgMCwgMV0pLCAic3BhcnNlIiknXSxzZWVhbHNvOlsiY29zIiwic2luIl19LHJvdzp7bmFtZToicm93IixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJyb3coeCwgaW5kZXgpIl0sZGVzY3JpcHRpb246IlJldHVybiBhIHJvdyBmcm9tIGEgbWF0cml4IG9yIGFycmF5LiIsZXhhbXBsZXM6WyJBID0gW1sxLCAyXSwgWzMsIDRdXSIsInJvdyhBLCAxKSIsInJvdyhBLCAyKSJdLHNlZWFsc286WyJjb2x1bW4iLCJtYXRyaXhGcm9tUm93cyJdfSxzaXplOntuYW1lOiJzaXplIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJzaXplKHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgc2l6ZSBvZiBhIG1hdHJpeC4iLGV4YW1wbGVzOlsic2l6ZSgyLjMpIiwnc2l6ZSgiaGVsbG8gd29ybGQiKScsImEgPSBbMSwgMjsgMywgNDsgNSwgNl0iLCJzaXplKGEpIiwic2l6ZSgxOjYpIl0sc2VlYWxzbzpbImNvbmNhdCIsImNvdW50IiwiZGV0IiwiZGlhZyIsImlkZW50aXR5IiwiaW52Iiwib25lcyIsInJhbmdlIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYWNlIiwidHJhbnNwb3NlIiwiemVyb3MiXX0sc29ydDp7bmFtZToic29ydCIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4Olsic29ydCh4KSIsInNvcnQoeCwgY29tcGFyZSkiXSxkZXNjcmlwdGlvbjonU29ydCB0aGUgaXRlbXMgaW4gYSBtYXRyaXguIENvbXBhcmUgY2FuIGJlIGEgc3RyaW5nICJhc2MiLCAiZGVzYyIsICJuYXR1cmFsIiwgb3IgYSBjdXN0b20gc29ydCBmdW5jdGlvbi4nLGV4YW1wbGVzOlsic29ydChbNSwgMTAsIDFdKSIsJ3NvcnQoWyJDIiwgIkIiLCAiQSIsICJEIl0sICJuYXR1cmFsIiknLCJzb3J0QnlMZW5ndGgoYSwgYikgPSBzaXplKGEpWzFdIC0gc2l6ZShiKVsxXSIsJ3NvcnQoWyJMYW5nZG9uIiwgIlRvbSIsICJTYXJhIl0sIHNvcnRCeUxlbmd0aCknLCdzb3J0KFsiMTAiLCAiMSIsICIyIl0sICJuYXR1cmFsIiknXSxzZWVhbHNvOlsibWFwIiwiZmlsdGVyIiwiZm9yRWFjaCJdfSxzcXVlZXplOntuYW1lOiJzcXVlZXplIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJzcXVlZXplKHgpIl0sZGVzY3JpcHRpb246IlJlbW92ZSBpbm5lciBhbmQgb3V0ZXIgc2luZ2xldG9uIGRpbWVuc2lvbnMgZnJvbSBhIG1hdHJpeC4iLGV4YW1wbGVzOlsiYSA9IHplcm9zKDMsMiwxKSIsInNpemUoc3F1ZWV6ZShhKSkiLCJiID0gemVyb3MoMSwxLDMpIiwic2l6ZShzcXVlZXplKGIpKSJdLHNlZWFsc286WyJjb25jYXQiLCJkZXQiLCJkaWFnIiwiaWRlbnRpdHkiLCJpbnYiLCJvbmVzIiwicmFuZ2UiLCJzaXplIiwic3Vic2V0IiwidHJhY2UiLCJ0cmFuc3Bvc2UiLCJ6ZXJvcyJdfSxzdWJzZXQ6e25hbWU6InN1YnNldCIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsidmFsdWUoaW5kZXgpIiwidmFsdWUoaW5kZXgpID0gcmVwbGFjZW1lbnQiLCJzdWJzZXQodmFsdWUsIFtpbmRleF0pIiwic3Vic2V0KHZhbHVlLCBbaW5kZXhdLCByZXBsYWNlbWVudCkiXSxkZXNjcmlwdGlvbjoiR2V0IG9yIHNldCBhIHN1YnNldCBvZiB0aGUgZW50cmllcyBvZiBhIG1hdHJpeCBvciBjaGFyYWN0ZXJzIG9mIGEgc3RyaW5nLiBJbmRleGVzIGFyZSBvbmUtYmFzZWQuIFRoZXJlIHNob3VsZCBiZSBvbmUgaW5kZXggc3BlY2lmaWNhdGlvbiBmb3IgZWFjaCBkaW1lbnNpb24gb2YgdGhlIHRhcmdldC4gRWFjaCBzcGVjaWZpY2F0aW9uIGNhbiBiZSBhIHNpbmdsZSBpbmRleCwgYSBsaXN0IG9mIGluZGljZXMsIG9yIGEgcmFuZ2UgaW4gY29sb24gbm90YXRpb24gYGw6dWAuIEluIGEgcmFuZ2UsIGJvdGggdGhlIGxvd2VyIGJvdW5kIGwgYW5kIHVwcGVyIGJvdW5kIHUgYXJlIGluY2x1ZGVkOyBhbmQgaWYgYSBib3VuZCBpcyBvbWl0dGVkIGl0IGRlZmF1bHRzIHRvIHRoZSBtb3N0IGV4dHJlbWUgdmFsaWQgdmFsdWUuIFRoZSBjYXJ0ZXNpYW4gcHJvZHVjdCBvZiB0aGUgaW5kaWNlcyBzcGVjaWZpZWQgaW4gZWFjaCBkaW1lbnNpb24gZGV0ZXJtaW5lcyB0aGUgdGFyZ2V0IG9mIHRoZSBvcGVyYXRpb24uIixleGFtcGxlczpbImQgPSBbMSwgMjsgMywgNF0iLCJlID0gW10iLCJlWzEsIDE6Ml0gPSBbNSwgNl0iLCJlWzIsIDpdID0gWzcsIDhdIiwiZiA9IGQgKiBlIiwiZlsyLCAxXSIsImZbOiwgMV0iLCJmW1sxLDJdLCBbMSwzXV0gPSBbOSwgMTA7IDExLCAxMl0iLCJmIl0sc2VlYWxzbzpbImNvbmNhdCIsImRldCIsImRpYWciLCJpZGVudGl0eSIsImludiIsIm9uZXMiLCJyYW5nZSIsInNpemUiLCJzcXVlZXplIiwidHJhY2UiLCJ0cmFuc3Bvc2UiLCJ6ZXJvcyJdfSx0cmFjZTp7bmFtZToidHJhY2UiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbInRyYWNlKEEpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgdHJhY2Ugb2YgYSBtYXRyaXg6IHRoZSBzdW0gb2YgdGhlIGVsZW1lbnRzIG9uIHRoZSBtYWluIGRpYWdvbmFsIG9mIGEgc3F1YXJlIG1hdHJpeC4iLGV4YW1wbGVzOlsiQSA9IFsxLCAyLCAzOyAtMSwgMiwgMzsgMiwgMCwgM10iLCJ0cmFjZShBKSJdLHNlZWFsc286WyJjb25jYXQiLCJkZXQiLCJkaWFnIiwiaWRlbnRpdHkiLCJpbnYiLCJvbmVzIiwicmFuZ2UiLCJzaXplIiwic3F1ZWV6ZSIsInN1YnNldCIsInRyYW5zcG9zZSIsInplcm9zIl19LHRyYW5zcG9zZTp7bmFtZToidHJhbnNwb3NlIixjYXRlZ29yeToiTWF0cml4IixzeW50YXg6WyJ4JyIsInRyYW5zcG9zZSh4KSJdLGRlc2NyaXB0aW9uOiJUcmFuc3Bvc2UgYSBtYXRyaXgiLGV4YW1wbGVzOlsiYSA9IFsxLCAyLCAzOyA0LCA1LCA2XSIsImEnIiwidHJhbnNwb3NlKGEpIl0sc2VlYWxzbzpbImNvbmNhdCIsImRldCIsImRpYWciLCJpZGVudGl0eSIsImludiIsIm9uZXMiLCJyYW5nZSIsInNpemUiLCJzcXVlZXplIiwic3Vic2V0IiwidHJhY2UiLCJ6ZXJvcyJdfSx6ZXJvczp7bmFtZToiemVyb3MiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbInplcm9zKG0pIiwiemVyb3MobSwgbikiLCJ6ZXJvcyhtLCBuLCBwLCAuLi4pIiwiemVyb3MoW21dKSIsInplcm9zKFttLCBuXSkiLCJ6ZXJvcyhbbSwgbiwgcCwgLi4uXSkiXSxkZXNjcmlwdGlvbjoiQ3JlYXRlIGEgbWF0cml4IGNvbnRhaW5pbmcgemVyb3MuIixleGFtcGxlczpbInplcm9zKDMpIiwiemVyb3MoMywgNSkiLCJhID0gWzEsIDIsIDM7IDQsIDUsIDZdIiwiemVyb3Moc2l6ZShhKSkiXSxzZWVhbHNvOlsiY29uY2F0IiwiZGV0IiwiZGlhZyIsImlkZW50aXR5IiwiaW52Iiwib25lcyIsInJhbmdlIiwic2l6ZSIsInNxdWVlemUiLCJzdWJzZXQiLCJ0cmFjZSIsInRyYW5zcG9zZSJdfSxmZnQ6e25hbWU6ImZmdCIsY2F0ZWdvcnk6Ik1hdHJpeCIsc3ludGF4OlsiZmZ0KHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSBOLWRpbWVuc2lvbmFsIGZvdXJpZXIgdHJhbnNmb3JtIixleGFtcGxlczpbImZmdChbWzEsIDBdLCBbMSwgMF1dKSJdLHNlZWFsc286WyJpZmZ0Il19LGlmZnQ6e25hbWU6ImlmZnQiLGNhdGVnb3J5OiJNYXRyaXgiLHN5bnRheDpbImlmZnQoeCkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIE4tZGltZW5zaW9uYWwgaW52ZXJzZSBmb3VyaWVyIHRyYW5zZm9ybSIsZXhhbXBsZXM6WyJpZmZ0KFtbMiwgMl0sIFswLCAwXV0pIl0sc2VlYWxzbzpbImZmdCJdfSxzeWx2ZXN0ZXI6e25hbWU6InN5bHZlc3RlciIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbInN5bHZlc3RlcihBLEIsQykiXSxkZXNjcmlwdGlvbjoiU29sdmVzIHRoZSByZWFsLXZhbHVlZCBTeWx2ZXN0ZXIgZXF1YXRpb24gQVgrWEI9QyBmb3IgWCIsZXhhbXBsZXM6WyJzeWx2ZXN0ZXIoW1stMSwgLTJdLCBbMSwgMV1dLCBbWy0yLCAxXSwgWy0xLCAyXV0sIFtbLTMsIDJdLCBbMywgMF1dKSIsIkEgPSBbWy0xLCAtMl0sIFsxLCAxXV07IEIgPSBbWzIsIC0xXSwgWzEsIC0yXV07IEMgPSBbWy0zLCAyXSwgWzMsIDBdXSIsInN5bHZlc3RlcihBLCBCLCBDKSJdLHNlZWFsc286WyJzY2h1ciIsImx5YXAiXX0sc2NodXI6e25hbWU6InNjaHVyIixjYXRlZ29yeToiQWxnZWJyYSIsc3ludGF4Olsic2NodXIoQSkiXSxkZXNjcmlwdGlvbjoiUGVyZm9ybXMgYSByZWFsIFNjaHVyIGRlY29tcG9zaXRpb24gb2YgdGhlIHJlYWwgbWF0cml4IEEgPSBVVFUnIixleGFtcGxlczpbInNjaHVyKFtbMSwgMF0sIFstNCwgM11dKSIsIkEgPSBbWzEsIDBdLCBbLTQsIDNdXSIsInNjaHVyKEEpIl0sc2VlYWxzbzpbImx5YXAiLCJzeWx2ZXN0ZXIiXX0sbHlhcDp7bmFtZToibHlhcCIsY2F0ZWdvcnk6IkFsZ2VicmEiLHN5bnRheDpbImx5YXAoQSxRKSJdLGRlc2NyaXB0aW9uOiJTb2x2ZXMgdGhlIENvbnRpbnVvdXMtdGltZSBMeWFwdW5vdiBlcXVhdGlvbiBBUCtQQScrUT0wIGZvciBQIixleGFtcGxlczpbImx5YXAoW1stMiwgMF0sIFsxLCAtNF1dLCBbWzMsIDFdLCBbMSwgM11dKSIsIkEgPSBbWy0yLCAwXSwgWzEsIC00XV0iLCJRID0gW1szLCAxXSwgWzEsIDNdXSIsImx5YXAoQSxRKSJdLHNlZWFsc286WyJzY2h1ciIsInN5bHZlc3RlciJdfSxzb2x2ZU9ERTp7bmFtZToic29sdmVPREUiLGNhdGVnb3J5OiJOdW1lcmljIixzeW50YXg6WyJzb2x2ZU9ERShmdW5jLCB0c3BhbiwgeTApIiwic29sdmVPREUoZnVuYywgdHNwYW4sIHkwLCBvcHRpb25zKSJdLGRlc2NyaXB0aW9uOiJOdW1lcmljYWwgSW50ZWdyYXRpb24gb2YgT3JkaW5hcnkgRGlmZmVyZW50aWFsIEVxdWF0aW9ucy4iLGV4YW1wbGVzOlsiZih0LHkpID0geSIsInRzcGFuID0gWzAsIDRdIiwic29sdmVPREUoZiwgdHNwYW4sIDEpIiwic29sdmVPREUoZiwgdHNwYW4sIFsxLCAyXSkiLCdzb2x2ZU9ERShmLCB0c3BhbiwgMSwgeyBtZXRob2Q6IlJLMjMiLCBtYXhTdGVwOjAuMSB9KSddLHNlZWFsc286WyJkZXJpdmF0aXZlIiwic2ltcGxpZnlDb3JlIl19LGNvbWJpbmF0aW9uczp7bmFtZToiY29tYmluYXRpb25zIixjYXRlZ29yeToiUHJvYmFiaWxpdHkiLHN5bnRheDpbImNvbWJpbmF0aW9ucyhuLCBrKSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBudW1iZXIgb2YgY29tYmluYXRpb25zIG9mIG4gaXRlbXMgdGFrZW4gayBhdCBhIHRpbWUiLGV4YW1wbGVzOlsiY29tYmluYXRpb25zKDcsIDUpIl0sc2VlYWxzbzpbImNvbWJpbmF0aW9uc1dpdGhSZXAiLCJwZXJtdXRhdGlvbnMiLCJmYWN0b3JpYWwiXX0sY29tYmluYXRpb25zV2l0aFJlcDp7bmFtZToiY29tYmluYXRpb25zV2l0aFJlcCIsY2F0ZWdvcnk6IlByb2JhYmlsaXR5IixzeW50YXg6WyJjb21iaW5hdGlvbnNXaXRoUmVwKG4sIGspIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIG51bWJlciBvZiBjb21iaW5hdGlvbnMgb2YgbiBpdGVtcyB0YWtlbiBrIGF0IGEgdGltZSB3aXRoIHJlcGxhY2VtZW50cy4iLGV4YW1wbGVzOlsiY29tYmluYXRpb25zV2l0aFJlcCg3LCA1KSJdLHNlZWFsc286WyJjb21iaW5hdGlvbnMiLCJwZXJtdXRhdGlvbnMiLCJmYWN0b3JpYWwiXX0sZmFjdG9yaWFsOntuYW1lOiJmYWN0b3JpYWwiLGNhdGVnb3J5OiJQcm9iYWJpbGl0eSIsc3ludGF4OlsibiEiLCJmYWN0b3JpYWwobikiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgZmFjdG9yaWFsIG9mIGEgdmFsdWUiLGV4YW1wbGVzOlsiNSEiLCI1ICogNCAqIDMgKiAyICogMSIsIjMhIl0sc2VlYWxzbzpbImNvbWJpbmF0aW9ucyIsImNvbWJpbmF0aW9uc1dpdGhSZXAiLCJwZXJtdXRhdGlvbnMiLCJnYW1tYSJdfSxnYW1tYTp7bmFtZToiZ2FtbWEiLGNhdGVnb3J5OiJQcm9iYWJpbGl0eSIsc3ludGF4OlsiZ2FtbWEobikiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgZ2FtbWEgZnVuY3Rpb24uIEZvciBzbWFsbCB2YWx1ZXMsIHRoZSBMYW5jem9zIGFwcHJveGltYXRpb24gaXMgdXNlZCwgYW5kIGZvciBsYXJnZSB2YWx1ZXMgdGhlIGV4dGVuZGVkIFN0aXJsaW5nIGFwcHJveGltYXRpb24uIixleGFtcGxlczpbImdhbW1hKDQpIiwiMyEiLCJnYW1tYSgxLzIpIiwic3FydChwaSkiXSxzZWVhbHNvOlsiZmFjdG9yaWFsIl19LGtsZGl2ZXJnZW5jZTp7bmFtZToia2xkaXZlcmdlbmNlIixjYXRlZ29yeToiUHJvYmFiaWxpdHkiLHN5bnRheDpbImtsZGl2ZXJnZW5jZSh4LCB5KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIEt1bGxiYWNrLUxlaWJsZXIgKEtMKSBkaXZlcmdlbmNlICBiZXR3ZWVuIHR3byBkaXN0cmlidXRpb25zLiIsZXhhbXBsZXM6WyJrbGRpdmVyZ2VuY2UoWzAuNywwLjUsMC40XSwgWzAuMiwwLjksMC41XSkiXSxzZWVhbHNvOltdfSxsZ2FtbWE6e25hbWU6ImxnYW1tYSIsY2F0ZWdvcnk6IlByb2JhYmlsaXR5IixzeW50YXg6WyJsZ2FtbWEobikiXSxkZXNjcmlwdGlvbjoiTG9nYXJpdGhtIG9mIHRoZSBnYW1tYSBmdW5jdGlvbiBmb3IgcmVhbCwgcG9zaXRpdmUgbnVtYmVycyBhbmQgY29tcGxleCBudW1iZXJzLCB1c2luZyBMYW5jem9zIGFwcHJveGltYXRpb24gZm9yIG51bWJlcnMgYW5kIFN0aXJsaW5nIHNlcmllcyBmb3IgY29tcGxleCBudW1iZXJzLiIsZXhhbXBsZXM6WyJsZ2FtbWEoNCkiLCJsZ2FtbWEoMS8yKSIsImxnYW1tYShpKSIsImxnYW1tYShjb21wbGV4KDEuMSwgMikpIl0sc2VlYWxzbzpbImdhbW1hIl19LG11bHRpbm9taWFsOntuYW1lOiJtdWx0aW5vbWlhbCIsY2F0ZWdvcnk6IlByb2JhYmlsaXR5IixzeW50YXg6WyJtdWx0aW5vbWlhbChBKSJdLGRlc2NyaXB0aW9uOiJNdWx0aW5vbWlhbCBDb2VmZmljaWVudHMgY29tcHV0ZSB0aGUgbnVtYmVyIG9mIHdheXMgb2YgcGlja2luZyBhMSwgYTIsIC4uLiwgYWkgdW5vcmRlcmVkIG91dGNvbWVzIGZyb20gYG5gIHBvc3NpYmlsaXRpZXMuIG11bHRpbm9taWFsIHRha2VzIG9uZSBhcnJheSBvZiBpbnRlZ2VycyBhcyBhbiBhcmd1bWVudC4gVGhlIGZvbGxvd2luZyBjb25kaXRpb24gbXVzdCBiZSBlbmZvcmNlZDogZXZlcnkgYWkgPiAwLiIsZXhhbXBsZXM6WyJtdWx0aW5vbWlhbChbMSwgMiwgMV0pIl0sc2VlYWxzbzpbImNvbWJpbmF0aW9ucyIsImZhY3RvcmlhbCJdfSxwZXJtdXRhdGlvbnM6e25hbWU6InBlcm11dGF0aW9ucyIsY2F0ZWdvcnk6IlByb2JhYmlsaXR5IixzeW50YXg6WyJwZXJtdXRhdGlvbnMobikiLCJwZXJtdXRhdGlvbnMobiwgaykiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgbnVtYmVyIG9mIHBlcm11dGF0aW9ucyBvZiBuIGl0ZW1zIHRha2VuIGsgYXQgYSB0aW1lIixleGFtcGxlczpbInBlcm11dGF0aW9ucyg1KSIsInBlcm11dGF0aW9ucyg1LCAzKSJdLHNlZWFsc286WyJjb21iaW5hdGlvbnMiLCJjb21iaW5hdGlvbnNXaXRoUmVwIiwiZmFjdG9yaWFsIl19LHBpY2tSYW5kb206e25hbWU6InBpY2tSYW5kb20iLGNhdGVnb3J5OiJQcm9iYWJpbGl0eSIsc3ludGF4OlsicGlja1JhbmRvbShhcnJheSkiLCJwaWNrUmFuZG9tKGFycmF5LCBudW1iZXIpIiwicGlja1JhbmRvbShhcnJheSwgd2VpZ2h0cykiLCJwaWNrUmFuZG9tKGFycmF5LCBudW1iZXIsIHdlaWdodHMpIiwicGlja1JhbmRvbShhcnJheSwgd2VpZ2h0cywgbnVtYmVyKSJdLGRlc2NyaXB0aW9uOiJQaWNrIGEgcmFuZG9tIGVudHJ5IGZyb20gYSBnaXZlbiBhcnJheS4iLGV4YW1wbGVzOlsicGlja1JhbmRvbSgwOjEwKSIsInBpY2tSYW5kb20oWzEsIDMsIDEsIDZdKSIsInBpY2tSYW5kb20oWzEsIDMsIDEsIDZdLCAyKSIsInBpY2tSYW5kb20oWzEsIDMsIDEsIDZdLCBbMiwgMywgMiwgMV0pIiwicGlja1JhbmRvbShbMSwgMywgMSwgNl0sIDIsIFsyLCAzLCAyLCAxXSkiLCJwaWNrUmFuZG9tKFsxLCAzLCAxLCA2XSwgWzIsIDMsIDIsIDFdLCAyKSJdLHNlZWFsc286WyJyYW5kb20iLCJyYW5kb21JbnQiXX0scmFuZG9tOntuYW1lOiJyYW5kb20iLGNhdGVnb3J5OiJQcm9iYWJpbGl0eSIsc3ludGF4OlsicmFuZG9tKCkiLCJyYW5kb20obWF4KSIsInJhbmRvbShtaW4sIG1heCkiLCJyYW5kb20oc2l6ZSkiLCJyYW5kb20oc2l6ZSwgbWF4KSIsInJhbmRvbShzaXplLCBtaW4sIG1heCkiXSxkZXNjcmlwdGlvbjoiUmV0dXJuIGEgcmFuZG9tIG51bWJlci4iLGV4YW1wbGVzOlsicmFuZG9tKCkiLCJyYW5kb20oMTAsIDIwKSIsInJhbmRvbShbMiwgM10pIl0sc2VlYWxzbzpbInBpY2tSYW5kb20iLCJyYW5kb21JbnQiXX0scmFuZG9tSW50OntuYW1lOiJyYW5kb21JbnQiLGNhdGVnb3J5OiJQcm9iYWJpbGl0eSIsc3ludGF4OlsicmFuZG9tSW50KG1heCkiLCJyYW5kb21JbnQobWluLCBtYXgpIiwicmFuZG9tSW50KHNpemUpIiwicmFuZG9tSW50KHNpemUsIG1heCkiLCJyYW5kb21JbnQoc2l6ZSwgbWluLCBtYXgpIl0sZGVzY3JpcHRpb246IlJldHVybiBhIHJhbmRvbSBpbnRlZ2VyIG51bWJlciIsZXhhbXBsZXM6WyJyYW5kb21JbnQoMTAsIDIwKSIsInJhbmRvbUludChbMiwgM10sIDEwKSJdLHNlZWFsc286WyJwaWNrUmFuZG9tIiwicmFuZG9tIl19LGNvbXBhcmU6e25hbWU6ImNvbXBhcmUiLGNhdGVnb3J5OiJSZWxhdGlvbmFsIixzeW50YXg6WyJjb21wYXJlKHgsIHkpIl0sZGVzY3JpcHRpb246IkNvbXBhcmUgdHdvIHZhbHVlcy4gUmV0dXJucyAxIHdoZW4geCA+IHksIC0xIHdoZW4geCA8IHksIGFuZCAwIHdoZW4geCA9PSB5LiIsZXhhbXBsZXM6WyJjb21wYXJlKDIsIDMpIiwiY29tcGFyZSgzLCAyKSIsImNvbXBhcmUoMiwgMikiLCJjb21wYXJlKDVjbSwgNDBtbSkiLCJjb21wYXJlKDIsIFsxLCAyLCAzXSkiXSxzZWVhbHNvOlsiZXF1YWwiLCJ1bmVxdWFsIiwic21hbGxlciIsInNtYWxsZXJFcSIsImxhcmdlckVxIiwiY29tcGFyZU5hdHVyYWwiLCJjb21wYXJlVGV4dCJdfSxjb21wYXJlTmF0dXJhbDp7bmFtZToiY29tcGFyZU5hdHVyYWwiLGNhdGVnb3J5OiJSZWxhdGlvbmFsIixzeW50YXg6WyJjb21wYXJlTmF0dXJhbCh4LCB5KSJdLGRlc2NyaXB0aW9uOiJDb21wYXJlIHR3byB2YWx1ZXMgb2YgYW55IHR5cGUgaW4gYSBkZXRlcm1pbmlzdGljLCBuYXR1cmFsIHdheS4gUmV0dXJucyAxIHdoZW4geCA+IHksIC0xIHdoZW4geCA8IHksIGFuZCAwIHdoZW4geCA9PSB5LiIsZXhhbXBsZXM6WyJjb21wYXJlTmF0dXJhbCgyLCAzKSIsImNvbXBhcmVOYXR1cmFsKDMsIDIpIiwiY29tcGFyZU5hdHVyYWwoMiwgMikiLCJjb21wYXJlTmF0dXJhbCg1Y20sIDQwbW0pIiwnY29tcGFyZU5hdHVyYWwoIjIiLCAiMTAiKScsImNvbXBhcmVOYXR1cmFsKDIgKyAzaSwgMiArIDRpKSIsImNvbXBhcmVOYXR1cmFsKFsxLCAyLCA0XSwgWzEsIDIsIDNdKSIsImNvbXBhcmVOYXR1cmFsKFsxLCA1XSwgWzEsIDIsIDNdKSIsImNvbXBhcmVOYXR1cmFsKFsxLCAyXSwgWzEsIDJdKSIsImNvbXBhcmVOYXR1cmFsKHthOiAyfSwge2E6IDR9KSJdLHNlZWFsc286WyJlcXVhbCIsInVuZXF1YWwiLCJzbWFsbGVyIiwic21hbGxlckVxIiwibGFyZ2VyRXEiLCJjb21wYXJlIiwiY29tcGFyZVRleHQiXX0sY29tcGFyZVRleHQ6e25hbWU6ImNvbXBhcmVUZXh0IixjYXRlZ29yeToiUmVsYXRpb25hbCIsc3ludGF4OlsiY29tcGFyZVRleHQoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ29tcGFyZSB0d28gc3RyaW5ncyBsZXhpY2FsbHkuIENvbXBhcmlzb24gaXMgY2FzZSBzZW5zaXRpdmUuIFJldHVybnMgMSB3aGVuIHggPiB5LCAtMSB3aGVuIHggPCB5LCBhbmQgMCB3aGVuIHggPT0geS4iLGV4YW1wbGVzOlsnY29tcGFyZVRleHQoIkIiLCAiQSIpJywnY29tcGFyZVRleHQoIkEiLCAiQiIpJywnY29tcGFyZVRleHQoIkEiLCAiQSIpJywnY29tcGFyZVRleHQoIjIiLCAiMTAiKScsJ2NvbXBhcmUoIjIiLCAiMTAiKScsImNvbXBhcmUoMiwgMTApIiwnY29tcGFyZU5hdHVyYWwoIjIiLCAiMTAiKScsJ2NvbXBhcmVUZXh0KCJCIiwgWyJBIiwgIkIiLCAiQyJdKSddLHNlZWFsc286WyJjb21wYXJlIiwiY29tcGFyZU5hdHVyYWwiXX0sZGVlcEVxdWFsOntuYW1lOiJkZWVwRXF1YWwiLGNhdGVnb3J5OiJSZWxhdGlvbmFsIixzeW50YXg6WyJkZWVwRXF1YWwoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ2hlY2sgZXF1YWxpdHkgb2YgdHdvIG1hdHJpY2VzIGVsZW1lbnQgd2lzZS4gUmV0dXJucyB0cnVlIGlmIHRoZSBzaXplIG9mIGJvdGggbWF0cmljZXMgaXMgZXF1YWwgYW5kIHdoZW4gYW5kIGVhY2ggb2YgdGhlIGVsZW1lbnRzIGFyZSBlcXVhbC4iLGV4YW1wbGVzOlsiZGVlcEVxdWFsKFsxLDMsNF0sIFsxLDMsNF0pIiwiZGVlcEVxdWFsKFsxLDMsNF0sIFsxLDNdKSJdLHNlZWFsc286WyJlcXVhbCIsInVuZXF1YWwiLCJzbWFsbGVyIiwibGFyZ2VyIiwic21hbGxlckVxIiwibGFyZ2VyRXEiLCJjb21wYXJlIl19LGVxdWFsOntuYW1lOiJlcXVhbCIsY2F0ZWdvcnk6IlJlbGF0aW9uYWwiLHN5bnRheDpbInggPT0geSIsImVxdWFsKHgsIHkpIl0sZGVzY3JpcHRpb246IkNoZWNrIGVxdWFsaXR5IG9mIHR3byB2YWx1ZXMuIFJldHVybnMgdHJ1ZSBpZiB0aGUgdmFsdWVzIGFyZSBlcXVhbCwgYW5kIGZhbHNlIGlmIG5vdC4iLGV4YW1wbGVzOlsiMisyID09IDMiLCIyKzIgPT0gNCIsImEgPSAzLjIiLCJiID0gNi0yLjgiLCJhID09IGIiLCI1MGNtID09IDAuNW0iXSxzZWVhbHNvOlsidW5lcXVhbCIsInNtYWxsZXIiLCJsYXJnZXIiLCJzbWFsbGVyRXEiLCJsYXJnZXJFcSIsImNvbXBhcmUiLCJkZWVwRXF1YWwiLCJlcXVhbFRleHQiXX0sZXF1YWxUZXh0OntuYW1lOiJlcXVhbFRleHQiLGNhdGVnb3J5OiJSZWxhdGlvbmFsIixzeW50YXg6WyJlcXVhbFRleHQoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ2hlY2sgZXF1YWxpdHkgb2YgdHdvIHN0cmluZ3MuIENvbXBhcmlzb24gaXMgY2FzZSBzZW5zaXRpdmUuIFJldHVybnMgdHJ1ZSBpZiB0aGUgdmFsdWVzIGFyZSBlcXVhbCwgYW5kIGZhbHNlIGlmIG5vdC4iLGV4YW1wbGVzOlsnZXF1YWxUZXh0KCJIZWxsbyIsICJIZWxsbyIpJywnZXF1YWxUZXh0KCJhIiwgIkEiKScsJ2VxdWFsKCIyZTMiLCAiMjAwMCIpJywnZXF1YWxUZXh0KCIyZTMiLCAiMjAwMCIpJywnZXF1YWxUZXh0KCJCIiwgWyJBIiwgIkIiLCAiQyJdKSddLHNlZWFsc286WyJjb21wYXJlIiwiY29tcGFyZU5hdHVyYWwiLCJjb21wYXJlVGV4dCIsImVxdWFsIl19LGxhcmdlcjp7bmFtZToibGFyZ2VyIixjYXRlZ29yeToiUmVsYXRpb25hbCIsc3ludGF4OlsieCA+IHkiLCJsYXJnZXIoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ2hlY2sgaWYgdmFsdWUgeCBpcyBsYXJnZXIgdGhhbiB5LiBSZXR1cm5zIHRydWUgaWYgeCBpcyBsYXJnZXIgdGhhbiB5LCBhbmQgZmFsc2UgaWYgbm90LiIsZXhhbXBsZXM6WyIyID4gMyIsIjUgPiAyKjIiLCJhID0gMy4zIiwiYiA9IDYtMi44IiwiKGEgPiBiKSIsIihiIDwgYSkiLCI1IGNtID4gMiBpbmNoIl0sc2VlYWxzbzpbImVxdWFsIiwidW5lcXVhbCIsInNtYWxsZXIiLCJzbWFsbGVyRXEiLCJsYXJnZXJFcSIsImNvbXBhcmUiXX0sbGFyZ2VyRXE6e25hbWU6ImxhcmdlckVxIixjYXRlZ29yeToiUmVsYXRpb25hbCIsc3ludGF4OlsieCA+PSB5IiwibGFyZ2VyRXEoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ2hlY2sgaWYgdmFsdWUgeCBpcyBsYXJnZXIgb3IgZXF1YWwgdG8geS4gUmV0dXJucyB0cnVlIGlmIHggaXMgbGFyZ2VyIG9yIGVxdWFsIHRvIHksIGFuZCBmYWxzZSBpZiBub3QuIixleGFtcGxlczpbIjIgPj0gMSsxIiwiMiA+IDErMSIsImEgPSAzLjIiLCJiID0gNi0yLjgiLCIoYSA+PSBiKSJdLHNlZWFsc286WyJlcXVhbCIsInVuZXF1YWwiLCJzbWFsbGVyRXEiLCJzbWFsbGVyIiwiY29tcGFyZSJdfSxzbWFsbGVyOntuYW1lOiJzbWFsbGVyIixjYXRlZ29yeToiUmVsYXRpb25hbCIsc3ludGF4OlsieCA8IHkiLCJzbWFsbGVyKHgsIHkpIl0sZGVzY3JpcHRpb246IkNoZWNrIGlmIHZhbHVlIHggaXMgc21hbGxlciB0aGFuIHZhbHVlIHkuIFJldHVybnMgdHJ1ZSBpZiB4IGlzIHNtYWxsZXIgdGhhbiB5LCBhbmQgZmFsc2UgaWYgbm90LiIsZXhhbXBsZXM6WyIyIDwgMyIsIjUgPCAyKjIiLCJhID0gMy4zIiwiYiA9IDYtMi44IiwiKGEgPCBiKSIsIjUgY20gPCAyIGluY2giXSxzZWVhbHNvOlsiZXF1YWwiLCJ1bmVxdWFsIiwibGFyZ2VyIiwic21hbGxlckVxIiwibGFyZ2VyRXEiLCJjb21wYXJlIl19LHNtYWxsZXJFcTp7bmFtZToic21hbGxlckVxIixjYXRlZ29yeToiUmVsYXRpb25hbCIsc3ludGF4OlsieCA8PSB5Iiwic21hbGxlckVxKHgsIHkpIl0sZGVzY3JpcHRpb246IkNoZWNrIGlmIHZhbHVlIHggaXMgc21hbGxlciBvciBlcXVhbCB0byB2YWx1ZSB5LiBSZXR1cm5zIHRydWUgaWYgeCBpcyBzbWFsbGVyIHRoYW4geSwgYW5kIGZhbHNlIGlmIG5vdC4iLGV4YW1wbGVzOlsiMiA8PSAxKzEiLCIyIDwgMSsxIiwiYSA9IDMuMiIsImIgPSA2LTIuOCIsIihhIDw9IGIpIl0sc2VlYWxzbzpbImVxdWFsIiwidW5lcXVhbCIsImxhcmdlciIsInNtYWxsZXIiLCJsYXJnZXJFcSIsImNvbXBhcmUiXX0sdW5lcXVhbDp7bmFtZToidW5lcXVhbCIsY2F0ZWdvcnk6IlJlbGF0aW9uYWwiLHN5bnRheDpbInggIT0geSIsInVuZXF1YWwoeCwgeSkiXSxkZXNjcmlwdGlvbjoiQ2hlY2sgdW5lcXVhbGl0eSBvZiB0d28gdmFsdWVzLiBSZXR1cm5zIHRydWUgaWYgdGhlIHZhbHVlcyBhcmUgdW5lcXVhbCwgYW5kIGZhbHNlIGlmIHRoZXkgYXJlIGVxdWFsLiIsZXhhbXBsZXM6WyIyKzIgIT0gMyIsIjIrMiAhPSA0IiwiYSA9IDMuMiIsImIgPSA2LTIuOCIsImEgIT0gYiIsIjUwY20gIT0gMC41bSIsIjUgY20gIT0gMiBpbmNoIl0sc2VlYWxzbzpbImVxdWFsIiwic21hbGxlciIsImxhcmdlciIsInNtYWxsZXJFcSIsImxhcmdlckVxIiwiY29tcGFyZSIsImRlZXBFcXVhbCJdfSxzZXRDYXJ0ZXNpYW46e25hbWU6InNldENhcnRlc2lhbiIsY2F0ZWdvcnk6IlNldCIsc3ludGF4Olsic2V0Q2FydGVzaWFuKHNldDEsIHNldDIpIl0sZGVzY3JpcHRpb246IkNyZWF0ZSB0aGUgY2FydGVzaWFuIHByb2R1Y3Qgb2YgdHdvIChtdWx0aSlzZXRzLiBNdWx0aS1kaW1lbnNpb24gYXJyYXlzIHdpbGwgYmUgY29udmVydGVkIHRvIHNpbmdsZS1kaW1lbnNpb24gYXJyYXlzIGFuZCB0aGUgdmFsdWVzIHdpbGwgYmUgc29ydGVkIGluIGFzY2VuZGluZyBvcmRlciBiZWZvcmUgdGhlIG9wZXJhdGlvbi4iLGV4YW1wbGVzOlsic2V0Q2FydGVzaWFuKFsxLCAyXSwgWzMsIDRdKSJdLHNlZWFsc286WyJzZXRVbmlvbiIsInNldEludGVyc2VjdCIsInNldERpZmZlcmVuY2UiLCJzZXRQb3dlcnNldCJdfSxzZXREaWZmZXJlbmNlOntuYW1lOiJzZXREaWZmZXJlbmNlIixjYXRlZ29yeToiU2V0IixzeW50YXg6WyJzZXREaWZmZXJlbmNlKHNldDEsIHNldDIpIl0sZGVzY3JpcHRpb246IkNyZWF0ZSB0aGUgZGlmZmVyZW5jZSBvZiB0d28gKG11bHRpKXNldHM6IGV2ZXJ5IGVsZW1lbnQgb2Ygc2V0MSwgdGhhdCBpcyBub3QgdGhlIGVsZW1lbnQgb2Ygc2V0Mi4gTXVsdGktZGltZW5zaW9uIGFycmF5cyB3aWxsIGJlIGNvbnZlcnRlZCB0byBzaW5nbGUtZGltZW5zaW9uIGFycmF5cyBiZWZvcmUgdGhlIG9wZXJhdGlvbi4iLGV4YW1wbGVzOlsic2V0RGlmZmVyZW5jZShbMSwgMiwgMywgNF0sIFszLCA0LCA1LCA2XSkiLCJzZXREaWZmZXJlbmNlKFtbMSwgMl0sIFszLCA0XV0sIFtbMywgNF0sIFs1LCA2XV0pIl0sc2VlYWxzbzpbInNldFVuaW9uIiwic2V0SW50ZXJzZWN0Iiwic2V0U3ltRGlmZmVyZW5jZSJdfSxzZXREaXN0aW5jdDp7bmFtZToic2V0RGlzdGluY3QiLGNhdGVnb3J5OiJTZXQiLHN5bnRheDpbInNldERpc3RpbmN0KHNldCkiXSxkZXNjcmlwdGlvbjoiQ29sbGVjdCB0aGUgZGlzdGluY3QgZWxlbWVudHMgb2YgYSBtdWx0aXNldC4gQSBtdWx0aS1kaW1lbnNpb24gYXJyYXkgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBzaW5nbGUtZGltZW5zaW9uIGFycmF5IGJlZm9yZSB0aGUgb3BlcmF0aW9uLiIsZXhhbXBsZXM6WyJzZXREaXN0aW5jdChbMSwgMSwgMSwgMiwgMiwgM10pIl0sc2VlYWxzbzpbInNldE11bHRpcGxpY2l0eSJdfSxzZXRJbnRlcnNlY3Q6e25hbWU6InNldEludGVyc2VjdCIsY2F0ZWdvcnk6IlNldCIsc3ludGF4Olsic2V0SW50ZXJzZWN0KHNldDEsIHNldDIpIl0sZGVzY3JpcHRpb246IkNyZWF0ZSB0aGUgaW50ZXJzZWN0aW9uIG9mIHR3byAobXVsdGkpc2V0cy4gTXVsdGktZGltZW5zaW9uIGFycmF5cyB3aWxsIGJlIGNvbnZlcnRlZCB0byBzaW5nbGUtZGltZW5zaW9uIGFycmF5cyBiZWZvcmUgdGhlIG9wZXJhdGlvbi4iLGV4YW1wbGVzOlsic2V0SW50ZXJzZWN0KFsxLCAyLCAzLCA0XSwgWzMsIDQsIDUsIDZdKSIsInNldEludGVyc2VjdChbWzEsIDJdLCBbMywgNF1dLCBbWzMsIDRdLCBbNSwgNl1dKSJdLHNlZWFsc286WyJzZXRVbmlvbiIsInNldERpZmZlcmVuY2UiXX0sc2V0SXNTdWJzZXQ6e25hbWU6InNldElzU3Vic2V0IixjYXRlZ29yeToiU2V0IixzeW50YXg6WyJzZXRJc1N1YnNldChzZXQxLCBzZXQyKSJdLGRlc2NyaXB0aW9uOiJDaGVjayB3aGV0aGVyIGEgKG11bHRpKXNldCBpcyBhIHN1YnNldCBvZiBhbm90aGVyIChtdWx0aSlzZXQ6IGV2ZXJ5IGVsZW1lbnQgb2Ygc2V0MSBpcyB0aGUgZWxlbWVudCBvZiBzZXQyLiBNdWx0aS1kaW1lbnNpb24gYXJyYXlzIHdpbGwgYmUgY29udmVydGVkIHRvIHNpbmdsZS1kaW1lbnNpb24gYXJyYXlzIGJlZm9yZSB0aGUgb3BlcmF0aW9uLiIsZXhhbXBsZXM6WyJzZXRJc1N1YnNldChbMSwgMl0sIFszLCA0LCA1LCA2XSkiLCJzZXRJc1N1YnNldChbMywgNF0sIFszLCA0LCA1LCA2XSkiXSxzZWVhbHNvOlsic2V0VW5pb24iLCJzZXRJbnRlcnNlY3QiLCJzZXREaWZmZXJlbmNlIl19LHNldE11bHRpcGxpY2l0eTp7bmFtZToic2V0TXVsdGlwbGljaXR5IixjYXRlZ29yeToiU2V0IixzeW50YXg6WyJzZXRNdWx0aXBsaWNpdHkoZWxlbWVudCwgc2V0KSJdLGRlc2NyaXB0aW9uOiJDb3VudCB0aGUgbXVsdGlwbGljaXR5IG9mIGFuIGVsZW1lbnQgaW4gYSBtdWx0aXNldC4gQSBtdWx0aS1kaW1lbnNpb24gYXJyYXkgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBzaW5nbGUtZGltZW5zaW9uIGFycmF5IGJlZm9yZSB0aGUgb3BlcmF0aW9uLiIsZXhhbXBsZXM6WyJzZXRNdWx0aXBsaWNpdHkoMSwgWzEsIDIsIDIsIDRdKSIsInNldE11bHRpcGxpY2l0eSgyLCBbMSwgMiwgMiwgNF0pIl0sc2VlYWxzbzpbInNldERpc3RpbmN0Iiwic2V0U2l6ZSJdfSxzZXRQb3dlcnNldDp7bmFtZToic2V0UG93ZXJzZXQiLGNhdGVnb3J5OiJTZXQiLHN5bnRheDpbInNldFBvd2Vyc2V0KHNldCkiXSxkZXNjcmlwdGlvbjoiQ3JlYXRlIHRoZSBwb3dlcnNldCBvZiBhIChtdWx0aSlzZXQ6IHRoZSBwb3dlcnNldCBjb250YWlucyB2ZXJ5IHBvc3NpYmxlIHN1YnNldHMgb2YgYSAobXVsdGkpc2V0LiBBIG11bHRpLWRpbWVuc2lvbiBhcnJheSB3aWxsIGJlIGNvbnZlcnRlZCB0byBhIHNpbmdsZS1kaW1lbnNpb24gYXJyYXkgYmVmb3JlIHRoZSBvcGVyYXRpb24uIixleGFtcGxlczpbInNldFBvd2Vyc2V0KFsxLCAyLCAzXSkiXSxzZWVhbHNvOlsic2V0Q2FydGVzaWFuIl19LHNldFNpemU6e25hbWU6InNldFNpemUiLGNhdGVnb3J5OiJTZXQiLHN5bnRheDpbInNldFNpemUoc2V0KSIsInNldFNpemUoc2V0LCB1bmlxdWUpIl0sZGVzY3JpcHRpb246J0NvdW50IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgb2YgYSAobXVsdGkpc2V0LiBXaGVuIHRoZSBzZWNvbmQgcGFyYW1ldGVyICJ1bmlxdWUiIGlzIHRydWUsIGNvdW50IG9ubHkgdGhlIHVuaXF1ZSB2YWx1ZXMuIEEgbXVsdGktZGltZW5zaW9uIGFycmF5IHdpbGwgYmUgY29udmVydGVkIHRvIGEgc2luZ2xlLWRpbWVuc2lvbiBhcnJheSBiZWZvcmUgdGhlIG9wZXJhdGlvbi4nLGV4YW1wbGVzOlsic2V0U2l6ZShbMSwgMiwgMiwgNF0pIiwic2V0U2l6ZShbMSwgMiwgMiwgNF0sIHRydWUpIl0sc2VlYWxzbzpbInNldFVuaW9uIiwic2V0SW50ZXJzZWN0Iiwic2V0RGlmZmVyZW5jZSJdfSxzZXRTeW1EaWZmZXJlbmNlOntuYW1lOiJzZXRTeW1EaWZmZXJlbmNlIixjYXRlZ29yeToiU2V0IixzeW50YXg6WyJzZXRTeW1EaWZmZXJlbmNlKHNldDEsIHNldDIpIl0sZGVzY3JpcHRpb246IkNyZWF0ZSB0aGUgc3ltbWV0cmljIGRpZmZlcmVuY2Ugb2YgdHdvIChtdWx0aSlzZXRzLiBNdWx0aS1kaW1lbnNpb24gYXJyYXlzIHdpbGwgYmUgY29udmVydGVkIHRvIHNpbmdsZS1kaW1lbnNpb24gYXJyYXlzIGJlZm9yZSB0aGUgb3BlcmF0aW9uLiIsZXhhbXBsZXM6WyJzZXRTeW1EaWZmZXJlbmNlKFsxLCAyLCAzLCA0XSwgWzMsIDQsIDUsIDZdKSIsInNldFN5bURpZmZlcmVuY2UoW1sxLCAyXSwgWzMsIDRdXSwgW1szLCA0XSwgWzUsIDZdXSkiXSxzZWVhbHNvOlsic2V0VW5pb24iLCJzZXRJbnRlcnNlY3QiLCJzZXREaWZmZXJlbmNlIl19LHNldFVuaW9uOntuYW1lOiJzZXRVbmlvbiIsY2F0ZWdvcnk6IlNldCIsc3ludGF4Olsic2V0VW5pb24oc2V0MSwgc2V0MikiXSxkZXNjcmlwdGlvbjoiQ3JlYXRlIHRoZSB1bmlvbiBvZiB0d28gKG11bHRpKXNldHMuIE11bHRpLWRpbWVuc2lvbiBhcnJheXMgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gc2luZ2xlLWRpbWVuc2lvbiBhcnJheXMgYmVmb3JlIHRoZSBvcGVyYXRpb24uIixleGFtcGxlczpbInNldFVuaW9uKFsxLCAyLCAzLCA0XSwgWzMsIDQsIDUsIDZdKSIsInNldFVuaW9uKFtbMSwgMl0sIFszLCA0XV0sIFtbMywgNF0sIFs1LCA2XV0pIl0sc2VlYWxzbzpbInNldEludGVyc2VjdCIsInNldERpZmZlcmVuY2UiXX0senBrMnRmOntuYW1lOiJ6cGsydGYiLGNhdGVnb3J5OiJTaWduYWwiLHN5bnRheDpbInpwazJ0Zih6LCBwLCBrKSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSB0cmFuc2ZlciBmdW5jdGlvbiBvZiBhIHplcm8tcG9sZS1nYWluIG1vZGVsLiIsZXhhbXBsZXM6WyJ6cGsydGYoWzEsIDJdLCBbLTEsIC0yXSwgMSkiLCJ6cGsydGYoWzEsIDJdLCBbLTEsIC0yXSkiLCJ6cGsydGYoWzEgLSAzaSwgMiArIDJpXSwgWy0xLCAtMl0pIl0sc2VlYWxzbzpbXX0sZnJlcXo6e25hbWU6ImZyZXF6IixjYXRlZ29yeToiU2lnbmFsIixzeW50YXg6WyJmcmVxeihiLCBhKSIsImZyZXF6KGIsIGEsIHcpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZXMgdGhlIGZyZXF1ZW5jeSByZXNwb25zZSBvZiBhIGZpbHRlciBnaXZlbiBpdHMgbnVtZXJhdG9yIGFuZCBkZW5vbWluYXRvciBjb2VmZmljaWVudHMuIixleGFtcGxlczpbImZyZXF6KFsxLCAyXSwgWzEsIDIsIDNdKSIsImZyZXF6KFsxLCAyXSwgWzEsIDIsIDNdLCBbMCwgMV0pIiwiZnJlcXooWzEsIDJdLCBbMSwgMiwgM10sIDUxMikiXSxzZWVhbHNvOltdfSxlcmY6e25hbWU6ImVyZiIsY2F0ZWdvcnk6IlNwZWNpYWwiLHN5bnRheDpbImVyZih4KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBlcmYgZnVuY3Rpb24gb2YgYSB2YWx1ZSB1c2luZyBhIHJhdGlvbmFsIENoZWJ5c2hldiBhcHByb3hpbWF0aW9ucyBmb3IgZGlmZmVyZW50IGludGVydmFscyBvZiB4IixleGFtcGxlczpbImVyZigwLjIpIiwiZXJmKC0wLjUpIiwiZXJmKDQpIl0sc2VlYWxzbzpbXX0semV0YTp7bmFtZToiemV0YSIsY2F0ZWdvcnk6IlNwZWNpYWwiLHN5bnRheDpbInpldGEocykiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgUmllbWFubiBaZXRhIEZ1bmN0aW9uIHVzaW5nIGFuIGluZmluaXRlIHNlcmllcyBhbmQgUmllbWFubnMgRnVuY3Rpb25hbCBFcXVhdGlvbiBmb3IgdGhlIGVudGlyZSBjb21wbGV4IHBsYW5lIixleGFtcGxlczpbInpldGEoMC4yKSIsInpldGEoLTAuNSkiLCJ6ZXRhKDQpIl0sc2VlYWxzbzpbXX0sY3Vtc3VtOntuYW1lOiJjdW1zdW0iLGNhdGVnb3J5OiJTdGF0aXN0aWNzIixzeW50YXg6WyJjdW1zdW0oYSwgYiwgYywgLi4uKSIsImN1bXN1bShBKSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBjdW11bGF0aXZlIHN1bSBvZiBhbGwgdmFsdWVzLiIsZXhhbXBsZXM6WyJjdW1zdW0oMiwgMywgNCwgMSkiLCJjdW1zdW0oWzIsIDMsIDQsIDFdKSIsImN1bXN1bShbMSwgMjsgMywgNF0pIiwiY3Vtc3VtKFsxLCAyOyAzLCA0XSwgMSkiLCJjdW1zdW0oWzEsIDI7IDMsIDRdLCAyKSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWVkaWFuIiwibWluIiwicHJvZCIsInN0ZCIsInN1bSIsInZhcmlhbmNlIl19LG1hZDp7bmFtZToibWFkIixjYXRlZ29yeToiU3RhdGlzdGljcyIsc3ludGF4OlsibWFkKGEsIGIsIGMsIC4uLikiLCJtYWQoQSkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgbWVkaWFuIGFic29sdXRlIGRldmlhdGlvbiBvZiBhIG1hdHJpeCBvciBhIGxpc3Qgd2l0aCB2YWx1ZXMuIFRoZSBtZWRpYW4gYWJzb2x1dGUgZGV2aWF0aW9uIGlzIGRlZmluZWQgYXMgdGhlIG1lZGlhbiBvZiB0aGUgYWJzb2x1dGUgZGV2aWF0aW9ucyBmcm9tIHRoZSBtZWRpYW4uIixleGFtcGxlczpbIm1hZCgxMCwgMjAsIDMwKSIsIm1hZChbMSwgMiwgM10pIl0sc2VlYWxzbzpbIm1lYW4iLCJtZWRpYW4iLCJzdGQiLCJhYnMiXX0sbWF4OntuYW1lOiJtYXgiLGNhdGVnb3J5OiJTdGF0aXN0aWNzIixzeW50YXg6WyJtYXgoYSwgYiwgYywgLi4uKSIsIm1heChBKSIsIm1heChBLCBkaW1lbnNpb24pIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIG1heGltdW0gdmFsdWUgb2YgYSBsaXN0IG9mIHZhbHVlcy4iLGV4YW1wbGVzOlsibWF4KDIsIDMsIDQsIDEpIiwibWF4KFsyLCAzLCA0LCAxXSkiLCJtYXgoWzIsIDU7IDQsIDNdKSIsIm1heChbMiwgNTsgNCwgM10sIDEpIiwibWF4KFsyLCA1OyA0LCAzXSwgMikiLCJtYXgoMi43LCA3LjEsIC00LjUsIDIuMCwgNC4xKSIsIm1pbigyLjcsIDcuMSwgLTQuNSwgMi4wLCA0LjEpIl0sc2VlYWxzbzpbIm1lYW4iLCJtZWRpYW4iLCJtaW4iLCJwcm9kIiwic3RkIiwic3VtIiwidmFyaWFuY2UiXX0sbWVhbjp7bmFtZToibWVhbiIsY2F0ZWdvcnk6IlN0YXRpc3RpY3MiLHN5bnRheDpbIm1lYW4oYSwgYiwgYywgLi4uKSIsIm1lYW4oQSkiLCJtZWFuKEEsIGRpbWVuc2lvbikiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgYXJpdGhtZXRpYyBtZWFuIG9mIGEgbGlzdCBvZiB2YWx1ZXMuIixleGFtcGxlczpbIm1lYW4oMiwgMywgNCwgMSkiLCJtZWFuKFsyLCAzLCA0LCAxXSkiLCJtZWFuKFsyLCA1OyA0LCAzXSkiLCJtZWFuKFsyLCA1OyA0LCAzXSwgMSkiLCJtZWFuKFsyLCA1OyA0LCAzXSwgMikiLCJtZWFuKFsxLjAsIDIuNywgMy4yLCA0LjBdKSJdLHNlZWFsc286WyJtYXgiLCJtZWRpYW4iLCJtaW4iLCJwcm9kIiwic3RkIiwic3VtIiwidmFyaWFuY2UiXX0sbWVkaWFuOntuYW1lOiJtZWRpYW4iLGNhdGVnb3J5OiJTdGF0aXN0aWNzIixzeW50YXg6WyJtZWRpYW4oYSwgYiwgYywgLi4uKSIsIm1lZGlhbihBKSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBtZWRpYW4gb2YgYWxsIHZhbHVlcy4gVGhlIHZhbHVlcyBhcmUgc29ydGVkIGFuZCB0aGUgbWlkZGxlIHZhbHVlIGlzIHJldHVybmVkLiBJbiBjYXNlIG9mIGFuIGV2ZW4gbnVtYmVyIG9mIHZhbHVlcywgdGhlIGF2ZXJhZ2Ugb2YgdGhlIHR3byBtaWRkbGUgdmFsdWVzIGlzIHJldHVybmVkLiIsZXhhbXBsZXM6WyJtZWRpYW4oNSwgMiwgNykiLCJtZWRpYW4oWzMsIC0xLCA1LCA3XSkiXSxzZWVhbHNvOlsibWF4IiwibWVhbiIsIm1pbiIsInByb2QiLCJzdGQiLCJzdW0iLCJ2YXJpYW5jZSIsInF1YW50aWxlU2VxIl19LG1pbjp7bmFtZToibWluIixjYXRlZ29yeToiU3RhdGlzdGljcyIsc3ludGF4OlsibWluKGEsIGIsIGMsIC4uLikiLCJtaW4oQSkiLCJtaW4oQSwgZGltZW5zaW9uKSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBtaW5pbXVtIHZhbHVlIG9mIGEgbGlzdCBvZiB2YWx1ZXMuIixleGFtcGxlczpbIm1pbigyLCAzLCA0LCAxKSIsIm1pbihbMiwgMywgNCwgMV0pIiwibWluKFsyLCA1OyA0LCAzXSkiLCJtaW4oWzIsIDU7IDQsIDNdLCAxKSIsIm1pbihbMiwgNTsgNCwgM10sIDIpIiwibWluKDIuNywgNy4xLCAtNC41LCAyLjAsIDQuMSkiLCJtYXgoMi43LCA3LjEsIC00LjUsIDIuMCwgNC4xKSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWVkaWFuIiwicHJvZCIsInN0ZCIsInN1bSIsInZhcmlhbmNlIl19LG1vZGU6e25hbWU6Im1vZGUiLGNhdGVnb3J5OiJTdGF0aXN0aWNzIixzeW50YXg6WyJtb2RlKGEsIGIsIGMsIC4uLikiLCJtb2RlKEEpIiwibW9kZShBLCBhLCBiLCBCLCBjLCAuLi4pIl0sZGVzY3JpcHRpb246IkNvbXB1dGVzIHRoZSBtb2RlIG9mIGFsbCB2YWx1ZXMgYXMgYW4gYXJyYXkuIEluIGNhc2UgbW9kZSBiZWluZyBtb3JlIHRoYW4gb25lLCBtdWx0aXBsZSB2YWx1ZXMgYXJlIHJldHVybmVkIGluIGFuIGFycmF5LiIsZXhhbXBsZXM6WyJtb2RlKDIsIDEsIDQsIDMsIDEpIiwibW9kZShbMSwgMi43LCAzLjIsIDQsIDIuN10pIiwibW9kZSgxLCA0LCA2LCAxLCA2KSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWluIiwibWVkaWFuIiwicHJvZCIsInN0ZCIsInN1bSIsInZhcmlhbmNlIl19LHByb2Q6e25hbWU6InByb2QiLGNhdGVnb3J5OiJTdGF0aXN0aWNzIixzeW50YXg6WyJwcm9kKGEsIGIsIGMsIC4uLikiLCJwcm9kKEEpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIHByb2R1Y3Qgb2YgYWxsIHZhbHVlcy4iLGV4YW1wbGVzOlsicHJvZCgyLCAzLCA0KSIsInByb2QoWzIsIDMsIDRdKSIsInByb2QoWzIsIDU7IDQsIDNdKSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWluIiwibWVkaWFuIiwibWluIiwic3RkIiwic3VtIiwidmFyaWFuY2UiXX0scXVhbnRpbGVTZXE6e25hbWU6InF1YW50aWxlU2VxIixjYXRlZ29yeToiU3RhdGlzdGljcyIsc3ludGF4OlsicXVhbnRpbGVTZXEoQSwgcHJvYlssIHNvcnRlZF0pIiwicXVhbnRpbGVTZXEoQSwgW3Byb2IxLCBwcm9iMiwgLi4uXVssIHNvcnRlZF0pIiwicXVhbnRpbGVTZXEoQSwgTlssIHNvcnRlZF0pIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIHByb2Igb3JkZXIgcXVhbnRpbGUgb2YgYSBtYXRyaXggb3IgYSBsaXN0IHdpdGggdmFsdWVzLiBUaGUgc2VxdWVuY2UgaXMgc29ydGVkIGFuZCB0aGUgbWlkZGxlIHZhbHVlIGlzIHJldHVybmVkLiBTdXBwb3J0ZWQgdHlwZXMgb2Ygc2VxdWVuY2UgdmFsdWVzIGFyZTogTnVtYmVyLCBCaWdOdW1iZXIsIFVuaXQgU3VwcG9ydGVkIHR5cGVzIG9mIHByb2JhYmxpdHkgYXJlOiBOdW1iZXIsIEJpZ051bWJlci4gXG5cbkluIGNhc2Ugb2YgYSAobXVsdGkgZGltZW5zaW9uYWwpIGFycmF5IG9yIG1hdHJpeCwgdGhlIHByb2Igb3JkZXIgcXVhbnRpbGUgb2YgYWxsIGVsZW1lbnRzIHdpbGwgYmUgY2FsY3VsYXRlZC4iLGV4YW1wbGVzOlsicXVhbnRpbGVTZXEoWzMsIC0xLCA1LCA3XSwgMC41KSIsInF1YW50aWxlU2VxKFszLCAtMSwgNSwgN10sIFsxLzMsIDIvM10pIiwicXVhbnRpbGVTZXEoWzMsIC0xLCA1LCA3XSwgMikiLCJxdWFudGlsZVNlcShbLTEsIDMsIDUsIDddLCAwLjUsIHRydWUpIl0sc2VlYWxzbzpbIm1lYW4iLCJtZWRpYW4iLCJtaW4iLCJtYXgiLCJwcm9kIiwic3RkIiwic3VtIiwidmFyaWFuY2UiXX0sc3RkOntuYW1lOiJzdGQiLGNhdGVnb3J5OiJTdGF0aXN0aWNzIixzeW50YXg6WyJzdGQoYSwgYiwgYywgLi4uKSIsInN0ZChBKSIsInN0ZChBLCBkaW1lbnNpb24pIiwic3RkKEEsIG5vcm1hbGl6YXRpb24pIiwic3RkKEEsIGRpbWVuc2lvbiwgbm9ybWFsaXphdGlvbikiXSxkZXNjcmlwdGlvbjonQ29tcHV0ZSB0aGUgc3RhbmRhcmQgZGV2aWF0aW9uIG9mIGFsbCB2YWx1ZXMsIGRlZmluZWQgYXMgc3RkKEEpID0gc3FydCh2YXJpYW5jZShBKSkuIE9wdGlvbmFsIHBhcmFtZXRlciBub3JtYWxpemF0aW9uIGNhbiBiZSAidW5iaWFzZWQiIChkZWZhdWx0KSwgInVuY29ycmVjdGVkIiwgb3IgImJpYXNlZCIuJyxleGFtcGxlczpbInN0ZCgyLCA0LCA2KSIsInN0ZChbMiwgNCwgNiwgOF0pIiwnc3RkKFsyLCA0LCA2LCA4XSwgInVuY29ycmVjdGVkIiknLCdzdGQoWzIsIDQsIDYsIDhdLCAiYmlhc2VkIiknLCJzdGQoWzEsIDIsIDM7IDQsIDUsIDZdKSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWluIiwibWVkaWFuIiwicHJvZCIsInN1bSIsInZhcmlhbmNlIl19LHN1bTp7bmFtZToic3VtIixjYXRlZ29yeToiU3RhdGlzdGljcyIsc3ludGF4Olsic3VtKGEsIGIsIGMsIC4uLikiLCJzdW0oQSkiLCJzdW0oQSwgZGltZW5zaW9uKSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBzdW0gb2YgYWxsIHZhbHVlcy4iLGV4YW1wbGVzOlsic3VtKDIsIDMsIDQsIDEpIiwic3VtKFsyLCAzLCA0LCAxXSkiLCJzdW0oWzIsIDU7IDQsIDNdKSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWVkaWFuIiwibWluIiwicHJvZCIsInN0ZCIsInN1bSIsInZhcmlhbmNlIl19LHZhcmlhbmNlOntuYW1lOiJ2YXJpYW5jZSIsY2F0ZWdvcnk6IlN0YXRpc3RpY3MiLHN5bnRheDpbInZhcmlhbmNlKGEsIGIsIGMsIC4uLikiLCJ2YXJpYW5jZShBKSIsInZhcmlhbmNlKEEsIGRpbWVuc2lvbikiLCJ2YXJpYW5jZShBLCBub3JtYWxpemF0aW9uKSIsInZhcmlhbmNlKEEsIGRpbWVuc2lvbiwgbm9ybWFsaXphdGlvbikiXSxkZXNjcmlwdGlvbjonQ29tcHV0ZSB0aGUgdmFyaWFuY2Ugb2YgYWxsIHZhbHVlcy4gT3B0aW9uYWwgcGFyYW1ldGVyIG5vcm1hbGl6YXRpb24gY2FuIGJlICJ1bmJpYXNlZCIgKGRlZmF1bHQpLCAidW5jb3JyZWN0ZWQiLCBvciAiYmlhc2VkIi4nLGV4YW1wbGVzOlsidmFyaWFuY2UoMiwgNCwgNikiLCJ2YXJpYW5jZShbMiwgNCwgNiwgOF0pIiwndmFyaWFuY2UoWzIsIDQsIDYsIDhdLCAidW5jb3JyZWN0ZWQiKScsJ3ZhcmlhbmNlKFsyLCA0LCA2LCA4XSwgImJpYXNlZCIpJywidmFyaWFuY2UoWzEsIDIsIDM7IDQsIDUsIDZdKSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWluIiwibWVkaWFuIiwibWluIiwicHJvZCIsInN0ZCIsInN1bSJdfSxjb3JyOntuYW1lOiJjb3JyIixjYXRlZ29yeToiU3RhdGlzdGljcyIsc3ludGF4OlsiY29ycihBLEIpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGNvcnJlbGF0aW9uIGNvZWZmaWNpZW50IG9mIGEgdHdvIGxpc3Qgd2l0aCB2YWx1ZXMsIEZvciBtYXRyaWNlcywgdGhlIG1hdHJpeCBjb3JyZWxhdGlvbiBjb2VmZmljaWVudCBpcyBjYWxjdWxhdGVkLiIsZXhhbXBsZXM6WyJjb3JyKFsyLCA0LCA2LCA4XSxbMSwgMiwgMywgNl0pIiwiY29ycihtYXRyaXgoW1sxLCAyLjIsIDMsIDQuOCwgNV0sIFsxLCAyLCAzLCA0LCA1XV0pLCBtYXRyaXgoW1s0LCA1LjMsIDYuNiwgNywgOF0sIFsxLCAyLCAzLCA0LCA1XV0pKSJdLHNlZWFsc286WyJtYXgiLCJtZWFuIiwibWluIiwibWVkaWFuIiwibWluIiwicHJvZCIsInN0ZCIsInN1bSJdfSxhY29zOntuYW1lOiJhY29zIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJhY29zKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGludmVyc2UgY29zaW5lIG9mIGEgdmFsdWUgaW4gcmFkaWFucy4iLGV4YW1wbGVzOlsiYWNvcygwLjUpIiwiYWNvcyhjb3MoMi4zKSkiXSxzZWVhbHNvOlsiY29zIiwiYXRhbiIsImFzaW4iXX0sYWNvc2g6e25hbWU6ImFjb3NoIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJhY29zaCh4KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIGh5cGVyYm9saWMgYXJjY29zIG9mIGEgdmFsdWUsIGRlZmluZWQgYXMgYGFjb3NoKHgpID0gbG4oc3FydCh4XjIgLSAxKSArIHgpYC4iLGV4YW1wbGVzOlsiYWNvc2goMS41KSJdLHNlZWFsc286WyJjb3NoIiwiYXNpbmgiLCJhdGFuaCJdfSxhY290OntuYW1lOiJhY290IixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJhY290KHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgaW52ZXJzZSBjb3RhbmdlbnQgb2YgYSB2YWx1ZS4iLGV4YW1wbGVzOlsiYWNvdCgwLjUpIiwiYWNvdChjb3QoMC41KSkiLCJhY290KDIpIl0sc2VlYWxzbzpbImNvdCIsImF0YW4iXX0sYWNvdGg6e25hbWU6ImFjb3RoIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJhY290aCh4KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIGh5cGVyYm9saWMgYXJjY290YW5nZW50IG9mIGEgdmFsdWUsIGRlZmluZWQgYXMgYGFjb3RoKHgpID0gKGxuKCh4KzEpL3gpICsgbG4oeC8oeC0xKSkpIC8gMmAuIixleGFtcGxlczpbImFjb3RoKDIpIiwiYWNvdGgoMC41KSJdLHNlZWFsc286WyJhY3NjaCIsImFzZWNoIl19LGFjc2M6e25hbWU6ImFjc2MiLGNhdGVnb3J5OiJUcmlnb25vbWV0cnkiLHN5bnRheDpbImFjc2MoeCkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSBpbnZlcnNlIGNvdGFuZ2VudCBvZiBhIHZhbHVlLiIsZXhhbXBsZXM6WyJhY3NjKDIpIiwiYWNzYyhjc2MoMC41KSkiLCJhY3NjKDAuNSkiXSxzZWVhbHNvOlsiY3NjIiwiYXNpbiIsImFzZWMiXX0sYWNzY2g6e25hbWU6ImFjc2NoIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJhY3NjaCh4KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIGh5cGVyYm9saWMgYXJjY29zZWNhbnQgb2YgYSB2YWx1ZSwgZGVmaW5lZCBhcyBgYWNzY2goeCkgPSBsbigxL3ggKyBzcXJ0KDEveF4yICsgMSkpYC4iLGV4YW1wbGVzOlsiYWNzY2goMC41KSJdLHNlZWFsc286WyJhc2VjaCIsImFjb3RoIl19LGFzZWM6e25hbWU6ImFzZWMiLGNhdGVnb3J5OiJUcmlnb25vbWV0cnkiLHN5bnRheDpbImFzZWMoeCkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSBpbnZlcnNlIHNlY2FudCBvZiBhIHZhbHVlLiIsZXhhbXBsZXM6WyJhc2VjKDAuNSkiLCJhc2VjKHNlYygwLjUpKSIsImFzZWMoMikiXSxzZWVhbHNvOlsiYWNvcyIsImFjb3QiLCJhY3NjIl19LGFzZWNoOntuYW1lOiJhc2VjaCIsY2F0ZWdvcnk6IlRyaWdvbm9tZXRyeSIsc3ludGF4OlsiYXNlY2goeCkiXSxkZXNjcmlwdGlvbjoiQ2FsY3VsYXRlIHRoZSBpbnZlcnNlIHNlY2FudCBvZiBhIHZhbHVlLiIsZXhhbXBsZXM6WyJhc2VjaCgwLjUpIl0sc2VlYWxzbzpbImFjc2NoIiwiYWNvdGgiXX0sYXNpbjp7bmFtZToiYXNpbiIsY2F0ZWdvcnk6IlRyaWdvbm9tZXRyeSIsc3ludGF4OlsiYXNpbih4KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBpbnZlcnNlIHNpbmUgb2YgYSB2YWx1ZSBpbiByYWRpYW5zLiIsZXhhbXBsZXM6WyJhc2luKDAuNSkiLCJhc2luKHNpbigwLjUpKSJdLHNlZWFsc286WyJzaW4iLCJhY29zIiwiYXRhbiJdfSxhc2luaDp7bmFtZToiYXNpbmgiLGNhdGVnb3J5OiJUcmlnb25vbWV0cnkiLHN5bnRheDpbImFzaW5oKHgpIl0sZGVzY3JpcHRpb246IkNhbGN1bGF0ZSB0aGUgaHlwZXJib2xpYyBhcmNzaW5lIG9mIGEgdmFsdWUsIGRlZmluZWQgYXMgYGFzaW5oKHgpID0gbG4oeCArIHNxcnQoeF4yICsgMSkpYC4iLGV4YW1wbGVzOlsiYXNpbmgoMC41KSJdLHNlZWFsc286WyJhY29zaCIsImF0YW5oIl19LGF0YW46e25hbWU6ImF0YW4iLGNhdGVnb3J5OiJUcmlnb25vbWV0cnkiLHN5bnRheDpbImF0YW4oeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgaW52ZXJzZSB0YW5nZW50IG9mIGEgdmFsdWUgaW4gcmFkaWFucy4iLGV4YW1wbGVzOlsiYXRhbigwLjUpIiwiYXRhbih0YW4oMC41KSkiXSxzZWVhbHNvOlsidGFuIiwiYWNvcyIsImFzaW4iXX0sYXRhbmg6e25hbWU6ImF0YW5oIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJhdGFuaCh4KSJdLGRlc2NyaXB0aW9uOiJDYWxjdWxhdGUgdGhlIGh5cGVyYm9saWMgYXJjdGFuZ2VudCBvZiBhIHZhbHVlLCBkZWZpbmVkIGFzIGBhdGFuaCh4KSA9IGxuKCgxICsgeCkvKDEgLSB4KSkgLyAyYC4iLGV4YW1wbGVzOlsiYXRhbmgoMC41KSJdLHNlZWFsc286WyJhY29zaCIsImFzaW5oIl19LGF0YW4yOntuYW1lOiJhdGFuMiIsY2F0ZWdvcnk6IlRyaWdvbm9tZXRyeSIsc3ludGF4OlsiYXRhbjIoeSwgeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZXMgdGhlIHByaW5jaXBhbCB2YWx1ZSBvZiB0aGUgYXJjIHRhbmdlbnQgb2YgeS94IGluIHJhZGlhbnMuIixleGFtcGxlczpbImF0YW4yKDIsIDIpIC8gcGkiLCJhbmdsZSA9IDYwIGRlZyBpbiByYWQiLCJ4ID0gY29zKGFuZ2xlKSIsInkgPSBzaW4oYW5nbGUpIiwiYXRhbjIoeSwgeCkiXSxzZWVhbHNvOlsic2luIiwiY29zIiwidGFuIl19LGNvczp7bmFtZToiY29zIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJjb3MoeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgY29zaW5lIG9mIHggaW4gcmFkaWFucy4iLGV4YW1wbGVzOlsiY29zKDIpIiwiY29zKHBpIC8gNCkgXiAyIiwiY29zKDE4MCBkZWcpIiwiY29zKDYwIGRlZykiLCJzaW4oMC4yKV4yICsgY29zKDAuMileMiJdLHNlZWFsc286WyJhY29zIiwic2luIiwidGFuIl19LGNvc2g6e25hbWU6ImNvc2giLGNhdGVnb3J5OiJUcmlnb25vbWV0cnkiLHN5bnRheDpbImNvc2goeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgaHlwZXJib2xpYyBjb3NpbmUgb2YgeCBpbiByYWRpYW5zLiIsZXhhbXBsZXM6WyJjb3NoKDAuNSkiXSxzZWVhbHNvOlsic2luaCIsInRhbmgiLCJjb3RoIl19LGNvdDp7bmFtZToiY290IixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJjb3QoeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgY290YW5nZW50IG9mIHggaW4gcmFkaWFucy4gRGVmaW5lZCBhcyAxL3Rhbih4KSIsZXhhbXBsZXM6WyJjb3QoMikiLCIxIC8gdGFuKDIpIl0sc2VlYWxzbzpbInNlYyIsImNzYyIsInRhbiJdfSxjb3RoOntuYW1lOiJjb3RoIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJjb3RoKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGh5cGVyYm9saWMgY290YW5nZW50IG9mIHggaW4gcmFkaWFucy4iLGV4YW1wbGVzOlsiY290aCgyKSIsIjEgLyB0YW5oKDIpIl0sc2VlYWxzbzpbInNlY2giLCJjc2NoIiwidGFuaCJdfSxjc2M6e25hbWU6ImNzYyIsY2F0ZWdvcnk6IlRyaWdvbm9tZXRyeSIsc3ludGF4OlsiY3NjKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGNvc2VjYW50IG9mIHggaW4gcmFkaWFucy4gRGVmaW5lZCBhcyAxL3Npbih4KSIsZXhhbXBsZXM6WyJjc2MoMikiLCIxIC8gc2luKDIpIl0sc2VlYWxzbzpbInNlYyIsImNvdCIsInNpbiJdfSxjc2NoOntuYW1lOiJjc2NoIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJjc2NoKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGh5cGVyYm9saWMgY29zZWNhbnQgb2YgeCBpbiByYWRpYW5zLiBEZWZpbmVkIGFzIDEvc2luaCh4KSIsZXhhbXBsZXM6WyJjc2NoKDIpIiwiMSAvIHNpbmgoMikiXSxzZWVhbHNvOlsic2VjaCIsImNvdGgiLCJzaW5oIl19LHNlYzp7bmFtZToic2VjIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJzZWMoeCkiXSxkZXNjcmlwdGlvbjoiQ29tcHV0ZSB0aGUgc2VjYW50IG9mIHggaW4gcmFkaWFucy4gRGVmaW5lZCBhcyAxL2Nvcyh4KSIsZXhhbXBsZXM6WyJzZWMoMikiLCIxIC8gY29zKDIpIl0sc2VlYWxzbzpbImNvdCIsImNzYyIsImNvcyJdfSxzZWNoOntuYW1lOiJzZWNoIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJzZWNoKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGh5cGVyYm9saWMgc2VjYW50IG9mIHggaW4gcmFkaWFucy4gRGVmaW5lZCBhcyAxL2Nvc2goeCkiLGV4YW1wbGVzOlsic2VjaCgyKSIsIjEgLyBjb3NoKDIpIl0sc2VlYWxzbzpbImNvdGgiLCJjc2NoIiwiY29zaCJdfSxzaW46e25hbWU6InNpbiIsY2F0ZWdvcnk6IlRyaWdvbm9tZXRyeSIsc3ludGF4Olsic2luKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIHNpbmUgb2YgeCBpbiByYWRpYW5zLiIsZXhhbXBsZXM6WyJzaW4oMikiLCJzaW4ocGkgLyA0KSBeIDIiLCJzaW4oOTAgZGVnKSIsInNpbigzMCBkZWcpIiwic2luKDAuMileMiArIGNvcygwLjIpXjIiXSxzZWVhbHNvOlsiYXNpbiIsImNvcyIsInRhbiJdfSxzaW5oOntuYW1lOiJzaW5oIixjYXRlZ29yeToiVHJpZ29ub21ldHJ5IixzeW50YXg6WyJzaW5oKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIGh5cGVyYm9saWMgc2luZSBvZiB4IGluIHJhZGlhbnMuIixleGFtcGxlczpbInNpbmgoMC41KSJdLHNlZWFsc286WyJjb3NoIiwidGFuaCJdfSx0YW46e25hbWU6InRhbiIsY2F0ZWdvcnk6IlRyaWdvbm9tZXRyeSIsc3ludGF4OlsidGFuKHgpIl0sZGVzY3JpcHRpb246IkNvbXB1dGUgdGhlIHRhbmdlbnQgb2YgeCBpbiByYWRpYW5zLiIsZXhhbXBsZXM6WyJ0YW4oMC41KSIsInNpbigwLjUpIC8gY29zKDAuNSkiLCJ0YW4ocGkgLyA0KSIsInRhbig0NSBkZWcpIl0sc2VlYWxzbzpbImF0YW4iLCJzaW4iLCJjb3MiXX0sdGFuaDp7bmFtZToidGFuaCIsY2F0ZWdvcnk6IlRyaWdvbm9tZXRyeSIsc3ludGF4OlsidGFuaCh4KSJdLGRlc2NyaXB0aW9uOiJDb21wdXRlIHRoZSBoeXBlcmJvbGljIHRhbmdlbnQgb2YgeCBpbiByYWRpYW5zLiIsZXhhbXBsZXM6WyJ0YW5oKDAuNSkiLCJzaW5oKDAuNSkgLyBjb3NoKDAuNSkiXSxzZWVhbHNvOlsic2luaCIsImNvc2giXX0sdG86e25hbWU6InRvIixjYXRlZ29yeToiVW5pdHMiLHN5bnRheDpbInggdG8gdW5pdCIsInRvKHgsIHVuaXQpIl0sZGVzY3JpcHRpb246IkNoYW5nZSB0aGUgdW5pdCBvZiBhIHZhbHVlLiIsZXhhbXBsZXM6WyI1IGluY2ggdG8gY20iLCIzLjJrZyB0byBnIiwiMTYgYnl0ZXMgaW4gYml0cyJdLHNlZWFsc286W119LGNsb25lOntuYW1lOiJjbG9uZSIsY2F0ZWdvcnk6IlV0aWxzIixzeW50YXg6WyJjbG9uZSh4KSJdLGRlc2NyaXB0aW9uOiJDbG9uZSBhIHZhcmlhYmxlLiBDcmVhdGVzIGEgY29weSBvZiBwcmltaXRpdmUgdmFyaWFibGVzLGFuZCBhIGRlZXAgY29weSBvZiBtYXRyaWNlcyIsZXhhbXBsZXM6WyJjbG9uZSgzLjUpIiwiY2xvbmUoMiAtIDRpKSIsImNsb25lKDQ1IGRlZykiLCJjbG9uZShbMSwgMjsgMywgNF0pIiwnY2xvbmUoImhlbGxvIHdvcmxkIiknXSxzZWVhbHNvOltdfSxmb3JtYXQ6e25hbWU6ImZvcm1hdCIsY2F0ZWdvcnk6IlV0aWxzIixzeW50YXg6WyJmb3JtYXQodmFsdWUpIiwiZm9ybWF0KHZhbHVlLCBwcmVjaXNpb24pIl0sZGVzY3JpcHRpb246IkZvcm1hdCBhIHZhbHVlIG9mIGFueSB0eXBlIGFzIHN0cmluZy4iLGV4YW1wbGVzOlsiZm9ybWF0KDIuMykiLCJmb3JtYXQoMyAtIDRpKSIsImZvcm1hdChbXSkiLCJmb3JtYXQocGksIDMpIl0sc2VlYWxzbzpbInByaW50Il19LGJpbjp7bmFtZToiYmluIixjYXRlZ29yeToiVXRpbHMiLHN5bnRheDpbImJpbih2YWx1ZSkiXSxkZXNjcmlwdGlvbjoiRm9ybWF0IGEgbnVtYmVyIGFzIGJpbmFyeSIsZXhhbXBsZXM6WyJiaW4oMikiXSxzZWVhbHNvOlsib2N0IiwiaGV4Il19LG9jdDp7bmFtZToib2N0IixjYXRlZ29yeToiVXRpbHMiLHN5bnRheDpbIm9jdCh2YWx1ZSkiXSxkZXNjcmlwdGlvbjoiRm9ybWF0IGEgbnVtYmVyIGFzIG9jdGFsIixleGFtcGxlczpbIm9jdCg1NikiXSxzZWVhbHNvOlsiYmluIiwiaGV4Il19LGhleDp7bmFtZToiaGV4IixjYXRlZ29yeToiVXRpbHMiLHN5bnRheDpbImhleCh2YWx1ZSkiXSxkZXNjcmlwdGlvbjoiRm9ybWF0IGEgbnVtYmVyIGFzIGhleGFkZWNpbWFsIixleGFtcGxlczpbImhleCgyNDApIl0sc2VlYWxzbzpbImJpbiIsIm9jdCJdfSxpc05hTjp7bmFtZToiaXNOYU4iLGNhdGVnb3J5OiJVdGlscyIsc3ludGF4OlsiaXNOYU4oeCkiXSxkZXNjcmlwdGlvbjoiVGVzdCB3aGV0aGVyIGEgdmFsdWUgaXMgTmFOIChub3QgYSBudW1iZXIpIixleGFtcGxlczpbImlzTmFOKDIpIiwiaXNOYU4oMCAvIDApIiwiaXNOYU4oTmFOKSIsImlzTmFOKEluZmluaXR5KSJdLHNlZWFsc286WyJpc05lZ2F0aXZlIiwiaXNOdW1lcmljIiwiaXNQb3NpdGl2ZSIsImlzWmVybyJdfSxpc0ludGVnZXI6e25hbWU6ImlzSW50ZWdlciIsY2F0ZWdvcnk6IlV0aWxzIixzeW50YXg6WyJpc0ludGVnZXIoeCkiXSxkZXNjcmlwdGlvbjoiVGVzdCB3aGV0aGVyIGEgdmFsdWUgaXMgYW4gaW50ZWdlciBudW1iZXIuIixleGFtcGxlczpbImlzSW50ZWdlcigyKSIsImlzSW50ZWdlcigzLjUpIiwiaXNJbnRlZ2VyKFszLCAwLjUsIC0yXSkiXSxzZWVhbHNvOlsiaXNOZWdhdGl2ZSIsImlzTnVtZXJpYyIsImlzUG9zaXRpdmUiLCJpc1plcm8iXX0saXNOZWdhdGl2ZTp7bmFtZToiaXNOZWdhdGl2ZSIsY2F0ZWdvcnk6IlV0aWxzIixzeW50YXg6WyJpc05lZ2F0aXZlKHgpIl0sZGVzY3JpcHRpb246IlRlc3Qgd2hldGhlciBhIHZhbHVlIGlzIG5lZ2F0aXZlOiBzbWFsbGVyIHRoYW4gemVyby4iLGV4YW1wbGVzOlsiaXNOZWdhdGl2ZSgyKSIsImlzTmVnYXRpdmUoMCkiLCJpc05lZ2F0aXZlKC00KSIsImlzTmVnYXRpdmUoWzMsIDAuNSwgLTJdKSJdLHNlZWFsc286WyJpc0ludGVnZXIiLCJpc051bWVyaWMiLCJpc1Bvc2l0aXZlIiwiaXNaZXJvIl19LGlzTnVtZXJpYzp7bmFtZToiaXNOdW1lcmljIixjYXRlZ29yeToiVXRpbHMiLHN5bnRheDpbImlzTnVtZXJpYyh4KSJdLGRlc2NyaXB0aW9uOiJUZXN0IHdoZXRoZXIgYSB2YWx1ZSBpcyBhIG51bWVyaWMgdmFsdWUuIFJldHVybnMgdHJ1ZSB3aGVuIHRoZSBpbnB1dCBpcyBhIG51bWJlciwgQmlnTnVtYmVyLCBGcmFjdGlvbiwgb3IgYm9vbGVhbi4iLGV4YW1wbGVzOlsiaXNOdW1lcmljKDIpIiwnaXNOdW1lcmljKCIyIiknLCdoYXNOdW1lcmljVmFsdWUoIjIiKScsImlzTnVtZXJpYygwKSIsImlzTnVtZXJpYyhiaWdudW1iZXIoNTAwKSkiLCJpc051bWVyaWMoZnJhY3Rpb24oMC4xMjUpKSIsImlzTnVtZXJpYygyICsgM2kpIiwnaXNOdW1lcmljKFsyLjMsICJmb28iLCBmYWxzZV0pJ10sc2VlYWxzbzpbImlzSW50ZWdlciIsImlzWmVybyIsImlzTmVnYXRpdmUiLCJpc1Bvc2l0aXZlIiwiaXNOYU4iLCJoYXNOdW1lcmljVmFsdWUiXX0saGFzTnVtZXJpY1ZhbHVlOntuYW1lOiJoYXNOdW1lcmljVmFsdWUiLGNhdGVnb3J5OiJVdGlscyIsc3ludGF4OlsiaGFzTnVtZXJpY1ZhbHVlKHgpIl0sZGVzY3JpcHRpb246IlRlc3Qgd2hldGhlciBhIHZhbHVlIGlzIGFuIG51bWVyaWMgdmFsdWUuIEluIGNhc2Ugb2YgYSBzdHJpbmcsIHRydWUgaXMgcmV0dXJuZWQgaWYgdGhlIHN0cmluZyBjb250YWlucyBhIG51bWVyaWMgdmFsdWUuIixleGFtcGxlczpbImhhc051bWVyaWNWYWx1ZSgyKSIsJ2hhc051bWVyaWNWYWx1ZSgiMiIpJywnaXNOdW1lcmljKCIyIiknLCJoYXNOdW1lcmljVmFsdWUoMCkiLCJoYXNOdW1lcmljVmFsdWUoYmlnbnVtYmVyKDUwMCkpIiwiaGFzTnVtZXJpY1ZhbHVlKGZyYWN0aW9uKDAuMTI1KSkiLCJoYXNOdW1lcmljVmFsdWUoMiArIDNpKSIsJ2hhc051bWVyaWNWYWx1ZShbMi4zLCAiZm9vIiwgZmFsc2VdKSddLHNlZWFsc286WyJpc0ludGVnZXIiLCJpc1plcm8iLCJpc05lZ2F0aXZlIiwiaXNQb3NpdGl2ZSIsImlzTmFOIiwiaXNOdW1lcmljIl19LGlzUG9zaXRpdmU6e25hbWU6ImlzUG9zaXRpdmUiLGNhdGVnb3J5OiJVdGlscyIsc3ludGF4OlsiaXNQb3NpdGl2ZSh4KSJdLGRlc2NyaXB0aW9uOiJUZXN0IHdoZXRoZXIgYSB2YWx1ZSBpcyBwb3NpdGl2ZTogbGFyZ2VyIHRoYW4gemVyby4iLGV4YW1wbGVzOlsiaXNQb3NpdGl2ZSgyKSIsImlzUG9zaXRpdmUoMCkiLCJpc1Bvc2l0aXZlKC00KSIsImlzUG9zaXRpdmUoWzMsIDAuNSwgLTJdKSJdLHNlZWFsc286WyJpc0ludGVnZXIiLCJpc051bWVyaWMiLCJpc05lZ2F0aXZlIiwiaXNaZXJvIl19LGlzUHJpbWU6e25hbWU6ImlzUHJpbWUiLGNhdGVnb3J5OiJVdGlscyIsc3ludGF4OlsiaXNQcmltZSh4KSJdLGRlc2NyaXB0aW9uOiJUZXN0IHdoZXRoZXIgYSB2YWx1ZSBpcyBwcmltZTogaGFzIG5vIGRpdmlzb3JzIG90aGVyIHRoYW4gaXRzZWxmIGFuZCBvbmUuIixleGFtcGxlczpbImlzUHJpbWUoMykiLCJpc1ByaW1lKC0yKSIsImlzUHJpbWUoWzIsIDE3LCAxMDBdKSJdLHNlZWFsc286WyJpc0ludGVnZXIiLCJpc051bWVyaWMiLCJpc05lZ2F0aXZlIiwiaXNaZXJvIl19LGlzWmVybzp7bmFtZToiaXNaZXJvIixjYXRlZ29yeToiVXRpbHMiLHN5bnRheDpbImlzWmVybyh4KSJdLGRlc2NyaXB0aW9uOiJUZXN0IHdoZXRoZXIgYSB2YWx1ZSBpcyB6ZXJvLiIsZXhhbXBsZXM6WyJpc1plcm8oMikiLCJpc1plcm8oMCkiLCJpc1plcm8oLTQpIiwiaXNaZXJvKFszLCAwLCAtMiwgMF0pIl0sc2VlYWxzbzpbImlzSW50ZWdlciIsImlzTnVtZXJpYyIsImlzTmVnYXRpdmUiLCJpc1Bvc2l0aXZlIl19LHByaW50OntuYW1lOiJwcmludCIsY2F0ZWdvcnk6IlV0aWxzIixzeW50YXg6WyJwcmludCh0ZW1wbGF0ZSwgdmFsdWVzKSIsInByaW50KHRlbXBsYXRlLCB2YWx1ZXMsIHByZWNpc2lvbikiXSxkZXNjcmlwdGlvbjoiSW50ZXJwb2xhdGUgdmFsdWVzIGludG8gYSBzdHJpbmcgdGVtcGxhdGUuIixleGFtcGxlczpbJ3ByaW50KCJMdWN5IGlzICRhZ2UgeWVhcnMgb2xkIiwge2FnZTogNX0pJywncHJpbnQoIlRoZSB2YWx1ZSBvZiBwaSBpcyAkcGkiLCB7cGk6IHBpfSwgMyknLCdwcmludCgiSGVsbG8sICR1c2VyLm5hbWUhIiwge3VzZXI6IHtuYW1lOiAiSm9obiJ9fSknLCdwcmludCgiVmFsdWVzOiAkMSwgJDIsICQzIiwgWzYsIDksIDRdKSddLHNlZWFsc286WyJmb3JtYXQiXX0sdHlwZU9mOntuYW1lOiJ0eXBlT2YiLGNhdGVnb3J5OiJVdGlscyIsc3ludGF4OlsidHlwZU9mKHgpIl0sZGVzY3JpcHRpb246IkdldCB0aGUgdHlwZSBvZiBhIHZhcmlhYmxlLiIsZXhhbXBsZXM6WyJ0eXBlT2YoMy41KSIsInR5cGVPZigyIC0gNGkpIiwidHlwZU9mKDQ1IGRlZykiLCd0eXBlT2YoImhlbGxvIHdvcmxkIiknXSxzZWVhbHNvOlsiZ2V0TWF0cml4RGF0YVR5cGUiXX0sbnVtZXJpYzp7bmFtZToibnVtZXJpYyIsY2F0ZWdvcnk6IlV0aWxzIixzeW50YXg6WyJudW1lcmljKHgpIl0sZGVzY3JpcHRpb246IkNvbnZlcnQgYSBudW1lcmljIGlucHV0IHRvIGEgc3BlY2lmaWMgbnVtZXJpYyB0eXBlOiBudW1iZXIsIEJpZ051bWJlciwgb3IgRnJhY3Rpb24uIixleGFtcGxlczpbJ251bWVyaWMoIjQiKScsJ251bWVyaWMoIjQiLCAibnVtYmVyIiknLCdudW1lcmljKCI0IiwgIkJpZ051bWJlciIpJywnbnVtZXJpYygiNCIsICJGcmFjdGlvbiIpJywnbnVtZXJpYyg0LCAiRnJhY3Rpb24iKScsJ251bWVyaWMoZnJhY3Rpb24oMiwgNSksICJudW1iZXIiKSddLHNlZWFsc286WyJudW1iZXIiLCJmcmFjdGlvbiIsImJpZ251bWJlciIsInN0cmluZyIsImZvcm1hdCJdfX0sbEU9cEEoImhlbHAiLFsidHlwZWQiLCJtYXRoV2l0aFRyYW5zZm9ybSIsIkhlbHAiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0aFdpdGhUcmFuc2Zvcm0sbj1BLkhlbHA7cmV0dXJuIGUoImhlbHAiLHthbnk6ZnVuY3Rpb24oQSl7dmFyIGUsaT1BO2lmKCJzdHJpbmciIT10eXBlb2YgQSlmb3IoZSBpbiB0KWlmKE1BKHQsZSkmJkE9PT10W2VdKXtpPWU7YnJlYWt9dmFyIHI9VUEodUUsaSk7aWYoIXIpe3ZhciBvPSJmdW5jdGlvbiI9PXR5cGVvZiBpP2kubmFtZTppO3Rocm93IG5ldyBFcnJvcignTm8gZG9jdW1lbnRhdGlvbiBmb3VuZCBvbiAiJytvKyciJyl9cmV0dXJuIG5ldyBuKHIpfX0pfSkpLGhFPXBBKCJjaGFpbiIsWyJ0eXBlZCIsIkNoYWluIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLkNoYWluO3JldHVybiBlKCJjaGFpbiIseyIiOmZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0fSxhbnk6ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyB0KEEpfX0pfSkpLHdFPXBBKCJkZXQiLFsidHlwZWQiLCJtYXRyaXgiLCJzdWJ0cmFjdFNjYWxhciIsIm11bHRpcGx5IiwiZGl2aWRlU2NhbGFyIiwiaXNaZXJvIiwidW5hcnlNaW51cyJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLnN1YnRyYWN0U2NhbGFyLGk9QS5tdWx0aXBseSxyPUEuZGl2aWRlU2NhbGFyLG89QS5pc1plcm8scz1BLnVuYXJ5TWludXM7cmV0dXJuIGUoImRldCIse2FueTpmdW5jdGlvbihBKXtyZXR1cm4gdUEoQSl9LCJBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSl7dmFyIGU7c3dpdGNoKChlPWcoQSk/QS5zaXplKCk6QXJyYXkuaXNBcnJheShBKT8oQT10KEEpKS5zaXplKCk6W10pLmxlbmd0aCl7Y2FzZSAwOnJldHVybiB1QShBKTtjYXNlIDE6aWYoMT09PWVbMF0pcmV0dXJuIHVBKEEudmFsdWVPZigpWzBdKTtpZigwPT09ZVswXSlyZXR1cm4gMTt0aHJvdyBuZXcgUmFuZ2VFcnJvcigiTWF0cml4IG11c3QgYmUgc3F1YXJlIChzaXplOiAiK1Z0KGUpKyIpIik7Y2FzZSAyOnZhciBhPWVbMF0sQj1lWzFdO2lmKGE9PT1CKXJldHVybiBmdW5jdGlvbihBLGUsdCl7aWYoMT09PWUpcmV0dXJuIHVBKEFbMF1bMF0pO2lmKDI9PT1lKXJldHVybiBuKGkoQVswXVswXSxBWzFdWzFdKSxpKEFbMV1bMF0sQVswXVsxXSkpO2Zvcih2YXIgYT0hMSxCPW5ldyBBcnJheShlKS5maWxsKDApLm1hcCgoZnVuY3Rpb24oQSxlKXtyZXR1cm4gZX0pKSxjPTA7YzxlO2MrKyl7dmFyIGc9QltjXTtpZihvKEFbZ11bY10pKXt2YXIgRT12b2lkIDA7Zm9yKEU9YysxO0U8ZTtFKyspaWYoIW8oQVtCW0VdXVtjXSkpe2c9QltFXSxCW0VdPUJbY10sQltjXT1nLGE9IWE7YnJlYWt9aWYoRT09PWUpcmV0dXJuIEFbZ11bY119Zm9yKHZhciBRPUFbZ11bY10sdT0wPT09Yz8xOkFbQltjLTFdXVtjLTFdLGw9YysxO2w8ZTtsKyspZm9yKHZhciBoPUJbbF0sdz1jKzE7dzxlO3crKylBW2hdW3ddPXIobihpKEFbaF1bd10sUSksaShBW2hdW2NdLEFbZ11bd10pKSx1KX12YXIgQz1BW0JbZS0xXV1bZS0xXTtyZXR1cm4gYT9zKEMpOkN9KEEuY2xvbmUoKS52YWx1ZU9mKCksYSk7aWYoMD09PUIpcmV0dXJuIDE7dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIHNxdWFyZSAoc2l6ZTogIitWdChlKSsiKSIpO2RlZmF1bHQ6dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIHR3byBkaW1lbnNpb25hbCAoc2l6ZTogIitWdChlKSsiKSIpfX19KX0pKSxDRT1wQSgiaW52IixbInR5cGVkIiwibWF0cml4IiwiZGl2aWRlU2NhbGFyIiwiYWRkU2NhbGFyIiwibXVsdGlwbHkiLCJ1bmFyeU1pbnVzIiwiZGV0IiwiaWRlbnRpdHkiLCJhYnMiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5kaXZpZGVTY2FsYXIsaT1BLmFkZFNjYWxhcixyPUEubXVsdGlwbHksbz1BLnVuYXJ5TWludXMscz1BLmRldCxhPUEuaWRlbnRpdHksQj1BLmFicztyZXR1cm4gZSgiaW52Iix7IkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXt2YXIgZT1nKEEpP0Euc2l6ZSgpOiR0KEEpO3N3aXRjaChlLmxlbmd0aCl7Y2FzZSAxOmlmKDE9PT1lWzBdKXJldHVybiBnKEEpP3QoW24oMSxBLnZhbHVlT2YoKVswXSldKTpbbigxLEFbMF0pXTt0aHJvdyBuZXcgUmFuZ2VFcnJvcigiTWF0cml4IG11c3QgYmUgc3F1YXJlIChzaXplOiAiK1Z0KGUpKyIpIik7Y2FzZSAyOnZhciBpPWVbMF0scj1lWzFdO2lmKGk9PT1yKXJldHVybiBnKEEpP3QoYyhBLnZhbHVlT2YoKSxpLHIpLEEuc3RvcmFnZSgpKTpjKEEsaSxyKTt0aHJvdyBuZXcgUmFuZ2VFcnJvcigiTWF0cml4IG11c3QgYmUgc3F1YXJlIChzaXplOiAiK1Z0KGUpKyIpIik7ZGVmYXVsdDp0aHJvdyBuZXcgUmFuZ2VFcnJvcigiTWF0cml4IG11c3QgYmUgdHdvIGRpbWVuc2lvbmFsIChzaXplOiAiK1Z0KGUpKyIpIil9fSxhbnk6ZnVuY3Rpb24oQSl7cmV0dXJuIG4oMSxBKX19KTtmdW5jdGlvbiBjKEEsZSx0KXt2YXIgYyxnLEUsUSx1O2lmKDE9PT1lKXtpZigwPT09KFE9QVswXVswXSkpdGhyb3cgRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgaW52ZXJzZSwgZGV0ZXJtaW5hbnQgaXMgemVybyIpO3JldHVybltbbigxLFEpXV19aWYoMj09PWUpe3ZhciBsPXMoQSk7aWYoMD09PWwpdGhyb3cgRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgaW52ZXJzZSwgZGV0ZXJtaW5hbnQgaXMgemVybyIpO3JldHVybltbbihBWzFdWzFdLGwpLG4obyhBWzBdWzFdKSxsKV0sW24obyhBWzFdWzBdKSxsKSxuKEFbMF1bMF0sbCldXX12YXIgaD1BLmNvbmNhdCgpO2ZvcihjPTA7YzxlO2MrKyloW2NdPWhbY10uY29uY2F0KCk7Zm9yKHZhciB3PWEoZSkudmFsdWVPZigpLEM9MDtDPHQ7QysrKXt2YXIgST1CKGhbQ11bQ10pLE09Qztmb3IoYz1DKzE7YzxlOylCKGhbY11bQ10pPkkmJihJPUIoaFtjXVtDXSksTT1jKSxjKys7aWYoMD09PUkpdGhyb3cgRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgaW52ZXJzZSwgZGV0ZXJtaW5hbnQgaXMgemVybyIpOyhjPU0pIT09QyYmKHU9aFtDXSxoW0NdPWhbY10saFtjXT11LHU9d1tDXSx3W0NdPXdbY10sd1tjXT11KTt2YXIgZD1oW0NdLHA9d1tDXTtmb3IoYz0wO2M8ZTtjKyspe3ZhciBtPWhbY10sRj13W2NdO2lmKGMhPT1DKXtpZigwIT09bVtDXSl7Zm9yKEU9bihvKG1bQ10pLGRbQ10pLGc9QztnPHQ7ZysrKW1bZ109aShtW2ddLHIoRSxkW2ddKSk7Zm9yKGc9MDtnPHQ7ZysrKUZbZ109aShGW2ddLHIoRSxwW2ddKSl9fWVsc2V7Zm9yKEU9ZFtDXSxnPUM7Zzx0O2crKyltW2ddPW4obVtnXSxFKTtmb3IoZz0wO2c8dDtnKyspRltnXT1uKEZbZ10sRSl9fX1yZXR1cm4gd319KSksSUU9cEEoInBpbnYiLFsidHlwZWQiLCJtYXRyaXgiLCJpbnYiLCJkZWVwRXF1YWwiLCJlcXVhbCIsImRvdERpdmlkZSIsImRvdCIsImN0cmFuc3Bvc2UiLCJkaXZpZGVTY2FsYXIiLCJtdWx0aXBseSIsImFkZCIsIkNvbXBsZXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS5pbnYsaT1BLmRlZXBFcXVhbCxyPUEuZXF1YWwsbz1BLmRvdERpdmlkZSxzPUEuZG90LGE9QS5jdHJhbnNwb3NlLEI9QS5kaXZpZGVTY2FsYXIsYz1BLm11bHRpcGx5LEU9QS5hZGQsUT1BLkNvbXBsZXg7cmV0dXJuIGUoInBpbnYiLHsiQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEpe3ZhciBlPWcoQSk/QS5zaXplKCk6JHQoQSk7c3dpdGNoKGUubGVuZ3RoKXtjYXNlIDE6cmV0dXJuIGgoQSk/YShBKToxPT09ZVswXT9uKEEpOm8oYShBKSxzKEEsQSkpO2Nhc2UgMjppZihoKEEpKXJldHVybiBhKEEpO3ZhciBpPWVbMF0scj1lWzFdO2lmKGk9PT1yKXRyeXtyZXR1cm4gbihBKX1jYXRjaChBKXtpZighKEEgaW5zdGFuY2VvZiBFcnJvciYmQS5tZXNzYWdlLm1hdGNoKC9DYW5ub3QgY2FsY3VsYXRlIGludmVyc2UsIGRldGVybWluYW50IGlzIHplcm8vKSkpdGhyb3cgQX1yZXR1cm4gZyhBKT90KHUoQS52YWx1ZU9mKCksaSxyKSxBLnN0b3JhZ2UoKSk6dShBLGkscik7ZGVmYXVsdDp0aHJvdyBuZXcgUmFuZ2VFcnJvcigiTWF0cml4IG11c3QgYmUgdHdvIGRpbWVuc2lvbmFsIChzaXplOiAiK1Z0KGUpKyIpIil9fSxhbnk6ZnVuY3Rpb24oQSl7cmV0dXJuIHIoQSwwKT91QShBKTpCKDEsQSl9fSk7ZnVuY3Rpb24gdShBLGUsdCl7dmFyIGk9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWZ1bmN0aW9uKEEsZSx0KXtmb3IodmFyIG49dUEoQSksaT0wLHI9MDtyPGU7cisrKXtpZih0PD1pKXJldHVybiBuO2Zvcih2YXIgcz1yO2wobltzXVtpXSk7KWlmKGU9PT0rK3MmJihzPXIsdD09PSsraSkpcmV0dXJuIG47dmFyIGE9W25bcl0sbltzXV07bltzXT1hWzBdLG5bcl09YVsxXTtmb3IodmFyIEI9bltyXVtpXSxnPTA7Zzx0O2crKyluW3JdW2ddPW8obltyXVtnXSxCKTtmb3IodmFyIFE9MDtRPGU7USsrKWlmKFEhPT1yKXtCPW5bUV1baV07Zm9yKHZhciB1PTA7dTx0O3UrKyluW1FdW3VdPUUobltRXVt1XSxjKC0xLGMoQixuW3JdW3VdKSkpfWkrK31yZXR1cm4gbn0oQSxlLHQpO3JldHVybntDOkEubWFwKChmdW5jdGlvbihBLHQpe3JldHVybiBBLmZpbHRlcigoZnVuY3Rpb24oQSx0KXtyZXR1cm4gdDxlJiYhbChzKG5bdF0sblt0XSkpfSkpfSkpLEY6bi5maWx0ZXIoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIWwocyhuW2VdLG5bZV0pKX0pKX19KEEsZSx0KSxyPWkuQyxCPWkuRixnPWMobihjKGEocikscikpLGEocikpLFE9YyhhKEIpLG4oYyhCLGEoQikpKSk7cmV0dXJuIGMoUSxnKX1mdW5jdGlvbiBsKEEpe3JldHVybiByKEUoQSxRKDEsMSkpLEUoMCxRKDEsMSkpKX1mdW5jdGlvbiBoKEEpe3JldHVybiBpKEUoQSxRKDEsMSkpLEUoYyhBLDApLFEoMSwxKSkpfX0pKTtmdW5jdGlvbiBNRShBLGUpe3ZhciB0PSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZBW1N5bWJvbC5pdGVyYXRvcl18fEFbIkBAaXRlcmF0b3IiXTtpZighdCl7aWYoQXJyYXkuaXNBcnJheShBKXx8KHQ9ZnVuY3Rpb24oQSxlKXtpZihBKXtpZigic3RyaW5nIj09dHlwZW9mIEEpcmV0dXJuIGRFKEEsZSk7dmFyIHQ9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKEEpLnNsaWNlKDgsLTEpO3JldHVybiJPYmplY3QiPT09dCYmQS5jb25zdHJ1Y3RvciYmKHQ9QS5jb25zdHJ1Y3Rvci5uYW1lKSwiTWFwIj09PXR8fCJTZXQiPT09dD9BcnJheS5mcm9tKEEpOiJBcmd1bWVudHMiPT09dHx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3QodCk/ZEUoQSxlKTp2b2lkIDB9fShBKSl8fGUmJkEmJiJudW1iZXIiPT10eXBlb2YgQS5sZW5ndGgpe3QmJihBPXQpO3ZhciBuPTAsaT1mdW5jdGlvbigpe307cmV0dXJue3M6aSxuOmZ1bmN0aW9uKCl7cmV0dXJuIG4+PUEubGVuZ3RoP3tkb25lOiEwfTp7ZG9uZTohMSx2YWx1ZTpBW24rK119fSxlOmZ1bmN0aW9uKEEpe3Rocm93IEF9LGY6aX19dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGl0ZXJhdGUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfXZhciByLG89ITAscz0hMTtyZXR1cm57czpmdW5jdGlvbigpe3Q9dC5jYWxsKEEpfSxuOmZ1bmN0aW9uKCl7dmFyIEE9dC5uZXh0KCk7cmV0dXJuIG89QS5kb25lLEF9LGU6ZnVuY3Rpb24oQSl7cz0hMCxyPUF9LGY6ZnVuY3Rpb24oKXt0cnl7b3x8bnVsbD09dC5yZXR1cm58fHQucmV0dXJuKCl9ZmluYWxseXtpZihzKXRocm93IHJ9fX19ZnVuY3Rpb24gZEUoQSxlKXsobnVsbD09ZXx8ZT5BLmxlbmd0aCkmJihlPUEubGVuZ3RoKTtmb3IodmFyIHQ9MCxuPW5ldyBBcnJheShlKTt0PGU7dCsrKW5bdF09QVt0XTtyZXR1cm4gbn12YXIgcEU9cEEoImVpZ3MiLFsiY29uZmlnIiwidHlwZWQiLCJtYXRyaXgiLCJhZGRTY2FsYXIiLCJlcXVhbCIsInN1YnRyYWN0IiwiYWJzIiwiYXRhbiIsImNvcyIsInNpbiIsIm11bHRpcGx5U2NhbGFyIiwiZGl2aWRlU2NhbGFyIiwiaW52IiwiYmlnbnVtYmVyIiwibXVsdGlwbHkiLCJhZGQiLCJsYXJnZXIiLCJjb2x1bW4iLCJmbGF0dGVuIiwibnVtYmVyIiwiY29tcGxleCIsInNxcnQiLCJkaWFnIiwicXIiLCJ1c29sdmUiLCJ1c29sdmVBbGwiLCJpbSIsInJlIiwic21hbGxlciIsIm1hdHJpeEZyb21Db2x1bW5zIiwiZG90Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLG49QS50eXBlZCxpPUEubWF0cml4LGE9QS5hZGRTY2FsYXIsQj1BLnN1YnRyYWN0LGM9QS5lcXVhbCxnPUEuYWJzLEU9QS5hdGFuLFE9QS5jb3MsdT1BLnNpbixsPUEubXVsdGlwbHlTY2FsYXIsaD1BLmRpdmlkZVNjYWxhcix3PUEuaW52LEM9QS5iaWdudW1iZXIsST1BLm11bHRpcGx5LE09QS5hZGQsZD1BLmxhcmdlcixwPUEuY29sdW1uLG09QS5mbGF0dGVuLEY9QS5udW1iZXIsRD1BLmNvbXBsZXgsWT1BLnNxcnQsZj1BLmRpYWcsTj1BLnFyLFU9QS51c29sdmUseT1BLnVzb2x2ZUFsbCxUPUEuaW0seD1BLnJlLFI9QS5zbWFsbGVyLEc9QS5tYXRyaXhGcm9tQ29sdW1ucyxTPUEuZG90LGI9ZnVuY3Rpb24oQSl7dmFyIGU9QS5jb25maWcsdD1BLmFkZFNjYWxhcixuPUEuc3VidHJhY3QsaT1BLmFicyxyPUEuYXRhbixvPUEuY29zLHM9QS5zaW4sYT1BLm11bHRpcGx5U2NhbGFyLEI9QS5pbnYsYz1BLmJpZ251bWJlcixnPUEubXVsdGlwbHksRT1BLmFkZDtmdW5jdGlvbiBRKEEsZSx0LG4pe2Zvcih2YXIgaT1BLmxlbmd0aCxyPU1hdGguY29zKGUpLG89TWF0aC5zaW4oZSkscz1NKGksMCksYT1NKGksMCksQj0wO0I8aTtCKyspc1tCXT1yKkFbQl1bdF0tbypBW0JdW25dLGFbQl09bypBW0JdW3RdK3IqQVtCXVtuXTtmb3IodmFyIGM9MDtjPGk7YysrKUFbY11bdF09c1tjXSxBW2NdW25dPWFbY107cmV0dXJuIEF9ZnVuY3Rpb24gdShBLGUsaSxyKXtmb3IodmFyIEI9QS5sZW5ndGgsZz1vKGUpLEU9cyhlKSxRPU0oQixjKDApKSx1PU0oQixjKDApKSxsPTA7bDxCO2wrKylRW2xdPW4oYShnLEFbbF1baV0pLGEoRSxBW2xdW3JdKSksdVtsXT10KGEoRSxBW2xdW2ldKSxhKGcsQVtsXVtyXSkpO2Zvcih2YXIgaD0wO2g8QjtoKyspQVtoXVtpXT1RW2hdLEFbaF1bcl09dVtoXTtyZXR1cm4gQX1mdW5jdGlvbiBsKEEsZSxpLHIpe2Zvcih2YXIgQj1BLmxlbmd0aCxRPWMobyhlKSksdT1jKHMoZSkpLGw9YShRLFEpLGg9YSh1LHUpLHc9TShCLGMoMCkpLEM9TShCLGMoMCkpLEk9ZyhjKDIpLFEsdSxBW2ldW3JdKSxkPXQobihhKGwsQVtpXVtpXSksSSksYShoLEFbcl1bcl0pKSxwPUUoYShoLEFbaV1baV0pLEksYShsLEFbcl1bcl0pKSxtPTA7bTxCO20rKyl3W21dPW4oYShRLEFbaV1bbV0pLGEodSxBW3JdW21dKSksQ1ttXT10KGEodSxBW2ldW21dKSxhKFEsQVtyXVttXSkpO0FbaV1baV09ZCxBW3JdW3JdPXAsQVtpXVtyXT1jKDApLEFbcl1baV09YygwKTtmb3IodmFyIEY9MDtGPEI7RisrKUYhPT1pJiZGIT09ciYmKEFbaV1bRl09d1tGXSxBW0ZdW2ldPXdbRl0sQVtyXVtGXT1DW0ZdLEFbRl1bcl09Q1tGXSk7cmV0dXJuIEF9ZnVuY3Rpb24gaChBLGUsdCxuKXtmb3IodmFyIGk9QS5sZW5ndGgscj1NYXRoLmNvcyhlKSxvPU1hdGguc2luKGUpLHM9cipyLGE9bypvLEI9TShpLDApLGM9TShpLDApLGc9cypBW3RdW3RdLTIqcipvKkFbdF1bbl0rYSpBW25dW25dLEU9YSpBW3RdW3RdKzIqcipvKkFbdF1bbl0rcypBW25dW25dLFE9MDtRPGk7USsrKUJbUV09cipBW3RdW1FdLW8qQVtuXVtRXSxjW1FdPW8qQVt0XVtRXStyKkFbbl1bUV07QVt0XVt0XT1nLEFbbl1bbl09RSxBW3RdW25dPTAsQVtuXVt0XT0wO2Zvcih2YXIgdT0wO3U8aTt1KyspdSE9PXQmJnUhPT1uJiYoQVt0XVt1XT1CW3VdLEFbdV1bdF09Qlt1XSxBW25dW3VdPWNbdV0sQVt1XVtuXT1jW3VdKTtyZXR1cm4gQX1mdW5jdGlvbiB3KEEpe2Zvcih2YXIgZT1BLmxlbmd0aCx0PTAsbj1bMCwxXSxpPTA7aTxlO2krKylmb3IodmFyIHI9aSsxO3I8ZTtyKyspTWF0aC5hYnModCk8TWF0aC5hYnMoQVtpXVtyXSkmJih0PU1hdGguYWJzKEFbaV1bcl0pLG49W2kscl0pO3JldHVybltuLHRdfWZ1bmN0aW9uIEMoQSl7Zm9yKHZhciBlPUEubGVuZ3RoLHQ9MCxuPVswLDFdLHI9MDtyPGU7cisrKWZvcih2YXIgbz1yKzE7bzxlO28rKylpKHQpPGkoQVtyXVtvXSkmJih0PWkoQVtyXVtvXSksbj1bcixvXSk7cmV0dXJuW24sdF19ZnVuY3Rpb24gSShBLGUpe2Zvcih2YXIgdD1BLmxlbmd0aCxuPUFycmF5KHQpLHI9QXJyYXkodCksbz0wO288dDtvKyspcltvXT1BcnJheSh0KTtmb3IodmFyIHM9MDtzPHQ7cysrKXtmb3IodmFyIGE9MCxCPUFbMF0sYz0wO2M8QS5sZW5ndGg7YysrKWkoQVtjXSk8aShCKSYmKEI9QVthPWNdKTtuW3NdPUEuc3BsaWNlKGEsMSlbMF07Zm9yKHZhciBnPTA7Zzx0O2crKylyW2ddW3NdPWVbZ11bYV0sZVtnXS5zcGxpY2UoYSwxKX1yZXR1cm57dmFsdWVzOm4sdmVjdG9yczpyfX1mdW5jdGlvbiBNKEEsZSl7Zm9yKHZhciB0PW5ldyBBcnJheShBKSxuPTA7bjxBO24rKyl0W25dPWU7cmV0dXJuIHR9cmV0dXJuIGZ1bmN0aW9uKEEsdCl7dmFyIG89YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOmUuZXBzaWxvbixzPWFyZ3VtZW50cy5sZW5ndGg+Mz9hcmd1bWVudHNbM106dm9pZCAwO2lmKCJudW1iZXIiPT09cylyZXR1cm4gZnVuY3Rpb24oQSx0KXtmb3IodmFyIG4saT1BLmxlbmd0aCxyPU1hdGguYWJzKHQvaSksbz1uZXcgQXJyYXkoaSkscz0wO3M8aTtzKyspb1tzXT1NKGksMCksb1tzXVtzXT0xO2Zvcih2YXIgYSxCLGMsZyxFPXcoQSk7TWF0aC5hYnMoRVsxXSk+PU1hdGguYWJzKHIpOyl7dmFyIHU9RVswXVswXSxsPUVbMF1bMV07QT1oKEEsKGE9QVt1XVt1XSxCPUFbbF1bbF0sYz1BW3VdW2xdLGc9Qi1hLG49TWF0aC5hYnMoZyk8PWUuZXBzaWxvbj9NYXRoLlBJLzQ6LjUqTWF0aC5hdGFuKDIqYy8oQi1hKSkpLHUsbCksbz1RKG8sbix1LGwpLEU9dyhBKX1mb3IodmFyIEM9TShpLDApLGQ9MDtkPGk7ZCsrKUNbZF09QVtkXVtkXTtyZXR1cm4gSSh1QShDKSx1QShvKSl9KEEsbyk7aWYoIkJpZ051bWJlciI9PT1zKXJldHVybiBmdW5jdGlvbihBLHQpe2Zvcih2YXIgbyxzPUEubGVuZ3RoLEU9aSh0L3MpLFE9bmV3IEFycmF5KHMpLGg9MDtoPHM7aCsrKVFbaF09TShzLDApLFFbaF1baF09MTtmb3IodmFyIHcsZCxwLG0sRj1DKEEpO2koRlsxXSk+PWkoRSk7KXt2YXIgRD1GWzBdWzBdLFk9RlswXVsxXTtBPWwoQSwodz1BW0RdW0RdLGQ9QVtZXVtZXSxwPUFbRF1bWV0sbT1uKGQsdyksbz1pKG0pPD1lLmVwc2lsb24/YygtMSkuYWNvcygpLmRpdig0KTphKC41LHIoZygyLHAsQihtKSkpKSksRCxZKSxRPXUoUSxvLEQsWSksRj1DKEEpfWZvcih2YXIgZj1NKHMsMCksTj0wO048cztOKyspZltOXT1BW05dW05dO3JldHVybiBJKHVBKGYpLHVBKFEpKX0oQSxvKTt0aHJvdyBUeXBlRXJyb3IoIlVuc3VwcG9ydGVkIGRhdGEgdHlwZTogIitzKX19KHtjb25maWc6ZSxhZGRTY2FsYXI6YSxzdWJ0cmFjdDpCLGNvbHVtbjpwLGZsYXR0ZW46bSxlcXVhbDpjLGFiczpnLGF0YW46RSxjb3M6USxzaW46dSxtdWx0aXBseVNjYWxhcjpsLGludjp3LGJpZ251bWJlcjpDLGNvbXBsZXg6RCxtdWx0aXBseTpJLGFkZDpNfSksSD1mdW5jdGlvbihBKXt2YXIgZT1BLmFkZFNjYWxhcix0PUEuc3VidHJhY3Qsbj1BLmZsYXR0ZW4saT1BLm11bHRpcGx5LHI9QS5tdWx0aXBseVNjYWxhcixvPUEuZGl2aWRlU2NhbGFyLHM9QS5zcXJ0LGE9QS5hYnMsQj1BLmJpZ251bWJlcixjPUEuZGlhZyxnPUEuaW52LEU9QS5xcixRPUEudXNvbHZlLHU9QS51c29sdmVBbGwsbD1BLmVxdWFsLGg9QS5jb21wbGV4LHc9QS5sYXJnZXIsQz1BLnNtYWxsZXIsST1BLm1hdHJpeEZyb21Db2x1bW5zLE09QS5kb3Q7ZnVuY3Rpb24gZChBLGUsbixpLHIsbyxzLGMpe3ZhciBnPSJCaWdOdW1iZXIiPT09YyxFPSJDb21wbGV4Ij09PWMsUT1nP0IoMCk6RT9oKDApOjAsdT1nP0IoMSk6RT9oKDEpOjE7aWYoQyhhKG4pLHMpKXJldHVybltbdSxRXSxbUSx1XV07aWYodyhhKHQocixvKSkscykpcmV0dXJuW1t0KHIsaSksdChvLGkpXSxbbixuXV07dmFyIGw9dChBLHIpLEk9dChlLHIpLE09dChuLHIpLGQ9dChpLHIpO3JldHVybiBDKGEoSSkscyk/W1tsLHVdLFtNLFFdXTpbW0ksUV0sW2QsdV1dfWZ1bmN0aW9uIHAoQSxlKXtmb3IodmFyIHQ9MDt0PEEubGVuZ3RoO3QrKyl7dmFyIG47KG49QVt0XSkucHVzaC5hcHBseShuLHp0KEFycmF5KGUtQVt0XS5sZW5ndGgpLmZpbGwoMCkpKX1mb3IodmFyIGk9QS5sZW5ndGg7aTxlO2krKylBLnB1c2goQXJyYXkoZSkuZmlsbCgwKSksQVtpXVtpXT0xO3JldHVybiBBfWZ1bmN0aW9uIG0oQSxlLHQpe2Zvcih2YXIgbj0wO248QS5sZW5ndGg7bisrKWlmKHQoQVtuXSxlKSlyZXR1cm4gbjtyZXR1cm4tMX1mdW5jdGlvbiBGKEEsZSx0LG4saSl7Zm9yKHZhciByLG89IkJpZ051bWJlciI9PT1pP0IoMWUzKToxZTMscz0wO3I9RChlLHQsaSkscj1RKEEsciksIXcoZihyKSxvKTspaWYoKytzPj01KXJldHVybiBudWxsO2ZvcihzPTA7Oyl7dmFyIGE9UShBLHIpO2lmKEMoZihZKHIsW2FdKSksbikpYnJlYWs7aWYoKytzPj0xMClyZXR1cm4gbnVsbDtyPU4oYSl9cmV0dXJuIHJ9ZnVuY3Rpb24gRChBLGUsdCl7dmFyIG49IkJpZ051bWJlciI9PT10LGk9IkNvbXBsZXgiPT09dCxyPUFycmF5KEEpLmZpbGwoMCkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gMipNYXRoLnJhbmRvbSgpLTF9KSk7cmV0dXJuIG4mJihyPXIubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQihBKX0pKSksaSYmKHI9ci5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBoKEEpfSkpKSxOKHI9WShyLGUpLHQpfWZ1bmN0aW9uIFkoQSxlKXt2YXIgbixyPU1FKGUpO3RyeXtmb3Ioci5zKCk7IShuPXIubigpKS5kb25lOyl7dmFyIHM9bi52YWx1ZTtBPXQoQSxpKG8oTShzLEEpLE0ocyxzKSkscykpfX1jYXRjaChBKXtyLmUoQSl9ZmluYWxseXtyLmYoKX1yZXR1cm4gQX1mdW5jdGlvbiBmKEEpe3JldHVybiBhKHMoTShBLEEpKSl9ZnVuY3Rpb24gTihBLGUpe3ZhciB0PSJDb21wbGV4Ij09PWUsbj0iQmlnTnVtYmVyIj09PWU/QigxKTp0P2goMSk6MTtyZXR1cm4gaShvKG4sZihBKSksQSl9cmV0dXJuIGZ1bmN0aW9uKEEsUSxNLEQsWSl7dm9pZCAwPT09WSYmKFk9ITApO3ZhciBmPWZ1bmN0aW9uKEEsdCxuLGkscyl7dmFyIGcsRT0iQmlnTnVtYmVyIj09PWksUT0iQ29tcGxleCI9PT1pLHU9RT9CKDApOjAsST1FP0IoMSk6UT9oKDEpOjEsTT1FP0IoMSk6MSxkPUU/QigxMCk6MixwPXIoZCxkKTtzJiYoZz1BcnJheSh0KS5maWxsKEkpKTtmb3IodmFyIG09ITE7IW07KXttPSEwO2Zvcih2YXIgRj0wO0Y8dDtGKyspe2Zvcih2YXIgRD11LFk9dSxmPTA7Zjx0O2YrKylpZihGIT09Zil7dmFyIE49YShBW0ZdW2ZdKTtEPWUoRCxOKSxZPWUoWSxOKX1pZighbChELDApJiYhbChZLDApKXtmb3IodmFyIFU9TSx5PUQsVD1vKFksZCkseD1yKFksZCk7Qyh5LFQpOyl5PXIoeSxwKSxVPXIoVSxkKTtmb3IoO3coeSx4KTspeT1vKHkscCksVT1vKFUsZCk7aWYoQyhvKGUoeSxZKSxVKSxyKGUoRCxZKSwuOTUpKSl7bT0hMTtmb3IodmFyIFI9bygxLFUpLEc9MDtHPHQ7RysrKUYhPT1HJiYoQVtGXVtHXT1yKEFbRl1bR10sVSksQVtHXVtGXT1yKEFbR11bRl0sUikpO3MmJihnW0ZdPXIoZ1tGXSxVKSl9fX19cmV0dXJuIGMoZyl9KEEsUSwwLEQsWSk7IWZ1bmN0aW9uKEEsbixpLHMsYyxnKXt2YXIgRT0iQmlnTnVtYmVyIj09PXMsUT0iQ29tcGxleCI9PT1zLHU9RT9CKDApOlE/aCgwKTowO0UmJihpPUIoaSkpO2Zvcih2YXIgbD0wO2w8bi0yO2wrKyl7Zm9yKHZhciB3PTAsST11LE09bCsxO008bjtNKyspe3ZhciBkPUFbTV1bbF07QyhhKEkpLGEoZCkpJiYoST1kLHc9TSl9aWYoIUMoYShJKSxpKSl7aWYodyE9PWwrMSl7dmFyIHA9QVt3XTtBW3ddPUFbbCsxXSxBW2wrMV09cDtmb3IodmFyIG09MDttPG47bSsrKXt2YXIgRj1BW21dW3ddO0FbbV1bd109QVttXVtsKzFdLEFbbV1bbCsxXT1GfWlmKGMpe3ZhciBEPWdbd107Z1t3XT1nW2wrMV0sZ1tsKzFdPUR9fWZvcih2YXIgWT1sKzI7WTxuO1krKyl7dmFyIGY9byhBW1ldW2xdLEkpO2lmKDAhPT1mKXtmb3IodmFyIE49MDtOPG47TisrKUFbWV1bTl09dChBW1ldW05dLHIoZixBW2wrMV1bTl0pKTtmb3IodmFyIFU9MDtVPG47VSsrKUFbVV1bbCsxXT1lKEFbVV1bbCsxXSxyKGYsQVtVXVtZXSkpO2lmKGMpZm9yKHZhciB5PTA7eTxuO3krKylnW1ldW3ldPXQoZ1tZXVt5XSxyKGYsZ1tsKzFdW3ldKSl9fX19fShBLFEsTSxELFksZik7dmFyIE4sVT1mdW5jdGlvbihBLG4sbyxnLFEpe3ZhciB1PSJCaWdOdW1iZXIiPT09ZyxsPSJDb21wbGV4Ij09PWcsdz11P0IoMSk6bD9oKDEpOjE7dSYmKG89QihvKSk7Zm9yKHZhciBJLE0sbSxGLEQsWSxmLE4sVT11QShBKSx5PVtdLFQ9bix4PVtdLFI9UT9jKEFycmF5KG4pLmZpbGwodykpOnZvaWQgMCxHPVE/YyhBcnJheShUKS5maWxsKHcpKTp2b2lkIDAsUz0wO1M8PTEwMDspe1MrPTE7Zm9yKHZhciBiPTA7YjxUO2IrKylVW2JdW2JdPXQoVVtiXVtiXSwwKTt2YXIgSD1FKFUpLHY9SC5RLGs9SC5SO1U9aShrLHYpO2Zvcih2YXIgaj0wO2o8VDtqKyspVVtqXVtqXT1lKFVbal1bal0sMCk7aWYoUSYmKEc9aShHLHYpKSwxPT09VHx8QyhhKFVbVC0xXVtULTJdKSxvKSl7Uz0wLHkucHVzaChVW1QtMV1bVC0xXSksUSYmKHgudW5zaGlmdChbWzFdXSkscChHLG4pLFI9aShSLEcpLFQ+MSYmKEc9YyhBcnJheShULTEpLmZpbGwodykpKSksVC09MSxVLnBvcCgpO2Zvcih2YXIgSj0wO0o8VDtKKyspVVtKXS5wb3AoKX1lbHNlIGlmKDI9PT1UfHxDKGEoVVtULTJdW1QtM10pLG8pKXtTPTA7dmFyIHo9KEk9VVtULTJdW1QtMl0sTT1VW1QtMl1bVC0xXSxtPVVbVC0xXVtULTJdLEY9VVtULTFdW1QtMV0sRD1lKEksRiksWT10KHIoSSxGKSxyKE0sbSkpLGY9cihELC41KSxOPXIocyh0KHIoRCxEKSxyKDQsWSkpKSwuNSksW2UoZixOKSx0KGYsTildKTt5LnB1c2guYXBwbHkoeSx6dCh6KSksUSYmKHgudW5zaGlmdChkKFVbVC0yXVtULTJdLFVbVC0yXVtULTFdLFVbVC0xXVtULTJdLFVbVC0xXVtULTFdLHpbMF0selsxXSxvLGcpKSxwKEcsbiksUj1pKFIsRyksVD4yJiYoRz1jKEFycmF5KFQtMikuZmlsbCh3KSkpKSxULT0yLFUucG9wKCksVS5wb3AoKTtmb3IodmFyIEw9MDtMPFQ7TCsrKVVbTF0ucG9wKCksVVtMXS5wb3AoKX1pZigwPT09VClicmVha31pZih5LnNvcnQoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuK3QoYShBKSxhKGUpKX0pKSxTPjEwMCl7dmFyIFA9RXJyb3IoIlRoZSBlaWdlbnZhbHVlcyBmYWlsZWQgdG8gY29udmVyZ2UuIE9ubHkgZm91bmQgdGhlc2UgZWlnZW52YWx1ZXM6ICIreS5qb2luKCIsICIpKTt0aHJvdyBQLnZhbHVlcz15LFAudmVjdG9ycz1bXSxQfXJldHVybnt2YWx1ZXM6eSxDOlE/aShSLGZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PVtdLG49MDtuPGU7bisrKXRbbl09QXJyYXkoZSkuZmlsbCgwKTt2YXIgaSxyPTAsbz1NRShBKTt0cnl7Zm9yKG8ucygpOyEoaT1vLm4oKSkuZG9uZTspe2Zvcih2YXIgcz1pLnZhbHVlLGE9cy5sZW5ndGgsQj0wO0I8YTtCKyspZm9yKHZhciBjPTA7YzxhO2MrKyl0W3IrQl1bcitjXT1zW0JdW2NdO3IrPWF9fWNhdGNoKEEpe28uZShBKX1maW5hbGx5e28uZigpfXJldHVybiB0fSh4LG4pKTp2b2lkIDB9fShBLFEsTSxELFkpLHk9VS52YWx1ZXMsVD1VLkM7cmV0dXJuIFkmJihOPWZ1bmN0aW9uKEEsZSxyLG8scyxhLEUpe3ZhciBRLHc9ZyhyKSxDPWkodyxBLHIpLEk9IkJpZ051bWJlciI9PT1FLE09IkNvbXBsZXgiPT09RSxkPUk/QigwKTpNP2goMCk6MCxwPUk/QigxKTpNP2goMSk6MSxEPVtdLFk9W10sZj1NRShzKTt0cnl7Zm9yKGYucygpOyEoUT1mLm4oKSkuZG9uZTspe3ZhciBOPVEudmFsdWUsVT1tKEQsTixsKTstMT09PVU/KEQucHVzaChOKSxZLnB1c2goMSkpOllbVV0rPTF9fWNhdGNoKEgpe2YuZShIKX1maW5hbGx5e2YuZigpfWZvcih2YXIgeT1bXSxUPUQubGVuZ3RoLHg9QXJyYXkoZSkuZmlsbChkKSxSPWMoQXJyYXkoZSkuZmlsbChwKSksRz1bXSxTPWZ1bmN0aW9uKCl7dmFyIEE9RFtiXSxzPXQoQyxpKEEsUikpLEI9dShzLHgpO2ZvcihCLnNoaWZ0KCk7Qi5sZW5ndGg8WVtiXTspe3ZhciBjPUYocyxlLEIsYSxFKTtpZihudWxsPT1jKXtHLnB1c2goQSk7YnJlYWt9Qi5wdXNoKGMpfXZhciBRPWkoZyhvKSxyKTtCPUIubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gaShRLEEpfSkpLHkucHVzaC5hcHBseSh5LHp0KEIubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gbihBKX0pKSkpfSxiPTA7YjxUO2IrKylTKCk7aWYoMCE9PUcubGVuZ3RoKXt2YXIgSD1uZXcgRXJyb3IoIkZhaWxlZCB0byBmaW5kIGVpZ2VudmVjdG9ycyBmb3IgdGhlIGZvbGxvd2luZyBlaWdlbnZhbHVlczogIitHLmpvaW4oIiwgIikpO3Rocm93IEgudmFsdWVzPXMsSC52ZWN0b3JzPXksSH1yZXR1cm4geX0oQSxRLFQsZix5LE0sRCksTj1JLmFwcGx5KHZvaWQgMCx6dChOKSkpLHt2YWx1ZXM6eSx2ZWN0b3JzOk59fX0oe2NvbmZpZzplLGFkZFNjYWxhcjphLHN1YnRyYWN0OkIsbXVsdGlwbHk6SSxtdWx0aXBseVNjYWxhcjpsLGZsYXR0ZW46bSxkaXZpZGVTY2FsYXI6aCxzcXJ0OlksYWJzOmcsYmlnbnVtYmVyOkMsZGlhZzpmLHFyOk4saW52OncsdXNvbHZlOlUsdXNvbHZlQWxsOnksZXF1YWw6Yyxjb21wbGV4OkQsbGFyZ2VyOmQsc21hbGxlcjpSLG1hdHJpeEZyb21Db2x1bW5zOkcsZG90OlN9KTtyZXR1cm4gbigiZWlncyIse0FycmF5OmZ1bmN0aW9uKEEpe3JldHVybiB2KGkoQSkpfSwiQXJyYXksIG51bWJlcnxCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHYoaShBKSxlKX0sTWF0cml4OmZ1bmN0aW9uKEEpe3ZhciBlPXYoQSksdD1lLnZhbHVlcyxuPWUudmVjdG9ycztyZXR1cm57dmFsdWVzOmkodCksdmVjdG9yczppKG4pfX0sIk1hdHJpeCwgbnVtYmVyfEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXt2YXIgdD12KEEsZSksbj10LnZhbHVlcyxyPXQudmVjdG9ycztyZXR1cm57dmFsdWVzOmkobiksdmVjdG9yczppKHIpfX19KTtmdW5jdGlvbiB2KEEsdCl7dm9pZCAwPT09dCYmKHQ9ZS5lcHNpbG9uKTt2YXIgbj1BLnNpemUoKTtpZigyIT09bi5sZW5ndGh8fG5bMF0hPT1uWzFdKXRocm93IG5ldyBSYW5nZUVycm9yKCJNYXRyaXggbXVzdCBiZSBzcXVhcmUgKHNpemU6ICIrVnQobikrIikiKTt2YXIgaT1BLnRvQXJyYXkoKSxyPW5bMF07aWYoZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgbj0wO248ZTtuKyspZm9yKHZhciBpPTA7aTxlO2krKylpZihkKEMoZyhUKEFbbl1baV0pKSksdCkpcmV0dXJuITE7cmV0dXJuITB9KGkscix0KSYmKGZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PTA7dDxlO3QrKylmb3IodmFyIG49MDtuPGU7bisrKUFbdF1bbl09eChBW3RdW25dKX0oaSxyKSxmdW5jdGlvbihBLGUsdCl7Zm9yKHZhciBuPTA7bjxlO24rKylmb3IodmFyIGk9bjtpPGU7aSsrKWlmKGQoQyhnKEIoQVtuXVtpXSxBW2ldW25dKSkpLHQpKXJldHVybiExO3JldHVybiEwfShpLHIsdCkpKXt2YXIgbz1rKEEsaSxyKTtyZXR1cm4gYihpLHIsdCxvKX12YXIgcz1rKEEsaSxyKTtyZXR1cm4gSChpLHIsdCxzKX1mdW5jdGlvbiBrKEEsZSxuKXt2YXIgaT1BLmRhdGF0eXBlKCk7aWYoIm51bWJlciI9PT1pfHwiQmlnTnVtYmVyIj09PWl8fCJDb21wbGV4Ij09PWkpcmV0dXJuIGk7Zm9yKHZhciBhPSExLEI9ITEsYz0hMSxnPTA7ZzxuO2crKylmb3IodmFyIEU9MDtFPG47RSsrKXt2YXIgUT1lW2ddW0VdO2lmKHQoUSl8fHMoUSkpYT0hMDtlbHNlIGlmKHIoUSkpQj0hMDtlbHNle2lmKCFvKFEpKXRocm93IFR5cGVFcnJvcigiVW5zdXBwb3J0ZWQgdHlwZSBpbiBNYXRyaXg6ICIrUChRKSk7Yz0hMH19aWYoQiYmYyYmY29uc29sZS53YXJuKCJDb21wbGV4IEJpZ051bWJlcnMgbm90IHN1cHBvcnRlZCwgdGhpcyBvcGVyYXRpb24gd2lsbCBsb3NlIHByZWNpc3Npb24uIiksYyl7Zm9yKHZhciB1PTA7dTxuO3UrKylmb3IodmFyIGw9MDtsPG47bCsrKWVbdV1bbF09RChlW3VdW2xdKTtyZXR1cm4iQ29tcGxleCJ9aWYoQil7Zm9yKHZhciBoPTA7aDxuO2grKylmb3IodmFyIHc9MDt3PG47dysrKWVbaF1bd109QyhlW2hdW3ddKTtyZXR1cm4iQmlnTnVtYmVyIn1pZihhKXtmb3IodmFyIEk9MDtJPG47SSsrKWZvcih2YXIgTT0wO008bjtNKyspZVtJXVtNXT1GKGVbSV1bTV0pO3JldHVybiJudW1iZXIifXRocm93IFR5cGVFcnJvcigiTWF0cml4IGNvbnRhaW5zIHVuc3VwcG9ydGVkIHR5cGVzIG9ubHkuIil9fSkpLG1FPXBBKCJleHBtIixbInR5cGVkIiwiYWJzIiwiYWRkIiwiaWRlbnRpdHkiLCJpbnYiLCJtdWx0aXBseSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5hYnMsbj1BLmFkZCxpPUEuaWRlbnRpdHkscj1BLmludixvPUEubXVsdGlwbHk7cmV0dXJuIGUoImV4cG0iLHtNYXRyaXg6ZnVuY3Rpb24oQSl7dmFyIGU9QS5zaXplKCk7aWYoMiE9PWUubGVuZ3RofHxlWzBdIT09ZVsxXSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiTWF0cml4IG11c3QgYmUgc3F1YXJlIChzaXplOiAiK1Z0KGUpKyIpIik7Zm9yKHZhciBhPWVbMF0sQj1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD0wO3Q8MzA7dCsrKWZvcih2YXIgbj0wO248PXQ7bisrKXt2YXIgaT10LW47aWYocyhBLG4saSk8MWUtMTUpcmV0dXJue3E6bixqOml9fXRocm93IG5ldyBFcnJvcigiQ291bGQgbm90IGZpbmQgYWNjZXB0YWJsZSBwYXJhbWV0ZXJzIHRvIGNvbXB1dGUgdGhlIG1hdHJpeCBleHBvbmVudGlhbCAodHJ5IGluY3JlYXNpbmcgbWF4U2VhcmNoU2l6ZSBpbiBleHBtLmpzKSIpfShmdW5jdGlvbihBKXtmb3IodmFyIGU9QS5zaXplKClbMF0sbj0wLGk9MDtpPGU7aSsrKXtmb3IodmFyIHI9MCxvPTA7bzxlO28rKylyKz10KEEuZ2V0KFtpLG9dKSk7bj1NYXRoLm1heChyLG4pfXJldHVybiBufShBKSksYz1CLnEsZz1CLmosRT1vKEEsTWF0aC5wb3coMiwtZykpLFE9aShhKSxsPWkoYSksaD0xLHc9RSxDPS0xLEk9MTtJPD1jO0krKylJPjEmJih3PW8odyxFKSxDPS1DKSxRPW4oUSxvKGg9aCooYy1JKzEpLygoMipjLUkrMSkqSSksdykpLGw9bihsLG8oaCpDLHcpKTtmb3IodmFyIE09byhyKGwpLFEpLGQ9MDtkPGc7ZCsrKU09byhNLE0pO3JldHVybiB1KEEpP0EuY3JlYXRlU3BhcnNlTWF0cml4KE0pOk19fSk7ZnVuY3Rpb24gcyhBLGUsdCl7Zm9yKHZhciBuPTEsaT0yO2k8PWU7aSsrKW4qPWk7Zm9yKHZhciByPW4sbz1lKzE7bzw9MiplO28rKylyKj1vO3ZhciBzPXIqKDIqZSsxKTtyZXR1cm4gOCpNYXRoLnBvdyhBL01hdGgucG93KDIsdCksMiplKSpuKm4vKHIqcyl9fSkpLEZFPXBBKCJzcXJ0bSIsWyJ0eXBlZCIsImFicyIsImFkZCIsIm11bHRpcGx5IiwibWFwIiwic3FydCIsInN1YnRyYWN0IiwiaW52Iiwic2l6ZSIsIm1heCIsImlkZW50aXR5Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFicyxuPUEuYWRkLGk9QS5tdWx0aXBseSxyPUEubWFwLG89QS5zcXJ0LHM9QS5zdWJ0cmFjdCxhPUEuaW52LEI9QS5zaXplLGM9QS5tYXgsRT1BLmlkZW50aXR5LFE9MWUtNjtyZXR1cm4gZSgic3FydG0iLHsiQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEpe3ZhciBlPWcoQSk/QS5zaXplKCk6JHQoQSk7c3dpdGNoKGUubGVuZ3RoKXtjYXNlIDE6aWYoMT09PWVbMF0pcmV0dXJuIHIoQSxvKTt0aHJvdyBuZXcgUmFuZ2VFcnJvcigiTWF0cml4IG11c3QgYmUgc3F1YXJlIChzaXplOiAiK1Z0KGUpKyIpIik7Y2FzZSAyOmlmKGVbMF09PT1lWzFdKXJldHVybiBmdW5jdGlvbihBKXt2YXIgZSxyPTAsbz1BLGc9RShCKEEpKTtkb3t2YXIgdT1vO2lmKG89aSguNSxuKHUsYShnKSkpLGc9aSguNSxuKGcsYSh1KSkpLChlPWModChzKG8sdSkpKSk+USYmKytyPjFlMyl0aHJvdyBuZXcgRXJyb3IoImNvbXB1dGluZyBzcXVhcmUgcm9vdCBvZiBtYXRyaXg6IGl0ZXJhdGl2ZSBtZXRob2QgY291bGQgbm90IGNvbnZlcmdlIil9d2hpbGUoZT5RKTtyZXR1cm4gb30oQSk7dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIHNxdWFyZSAoc2l6ZTogIitWdChlKSsiKSIpO2RlZmF1bHQ6dGhyb3cgbmV3IFJhbmdlRXJyb3IoIk1hdHJpeCBtdXN0IGJlIGF0IG1vc3QgdHdvIGRpbWVuc2lvbmFsIChzaXplOiAiK1Z0KGUpKyIpIil9fX0pfSkpLERFPSJzeWx2ZXN0ZXIiLFlFPXBBKERFLFsidHlwZWQiLCJzY2h1ciIsIm1hdHJpeEZyb21Db2x1bW5zIiwibWF0cml4IiwibXVsdGlwbHkiLCJyYW5nZSIsImNvbmNhdCIsInRyYW5zcG9zZSIsImluZGV4Iiwic3Vic2V0IiwiYWRkIiwic3VidHJhY3QiLCJpZGVudGl0eSIsImx1c29sdmUiLCJhYnMiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuc2NodXIsbj1BLm1hdHJpeEZyb21Db2x1bW5zLGk9QS5tYXRyaXgscj1BLm11bHRpcGx5LG89QS5yYW5nZSxzPUEuY29uY2F0LGE9QS50cmFuc3Bvc2UsQj1BLmluZGV4LGM9QS5zdWJzZXQsZz1BLmFkZCxFPUEuc3VidHJhY3QsUT1BLmlkZW50aXR5LHU9QS5sdXNvbHZlLGw9QS5hYnM7cmV0dXJuIGUoREUseyJNYXRyaXgsIE1hdHJpeCwgTWF0cml4IjpoLCJBcnJheSwgTWF0cml4LCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gaChpKEEpLGUsdCl9LCJBcnJheSwgQXJyYXksIE1hdHJpeCI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBoKGkoQSksaShlKSx0KX0sIkFycmF5LCBNYXRyaXgsIEFycmF5IjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIGgoaShBKSxlLGkodCkpfSwiTWF0cml4LCBBcnJheSwgTWF0cml4IjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIGgoQSxpKGUpLHQpfSwiTWF0cml4LCBBcnJheSwgQXJyYXkiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gaChBLGkoZSksaSh0KSl9LCJNYXRyaXgsIE1hdHJpeCwgQXJyYXkiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gaChBLGUsaSh0KSl9LCJBcnJheSwgQXJyYXksIEFycmF5IjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIGgoaShBKSxpKGUpLGkodCkpLnRvQXJyYXkoKX19KTtmdW5jdGlvbiBoKEEsZSxoKXtmb3IodmFyIHc9ZS5zaXplKClbMF0sQz1BLnNpemUoKVswXSxJPXQoQSksTT1JLlQsZD1JLlUscD10KHIoLTEsZSkpLG09cC5ULEY9cC5VLEQ9cihyKGEoZCksaCksRiksWT1vKDAsQyksZj1bXSxOPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHMoQSxlLDEpfSxVPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHMoQSxlLDApfSx5PTA7eTx3O3krKylpZih5PHctMSYmbChjKG0sQih5KzEseSkpKT4xZS01KXtmb3IodmFyIFQ9VShjKEQsQihZLHkpKSxjKEQsQihZLHkrMSkpKSx4PTA7eDx5O3grKylUPWcoVCxVKHIoZlt4XSxjKG0sQih4LHkpKSkscihmW3hdLGMobSxCKHgseSsxKSkpKSk7dmFyIFI9cihRKEMpLHIoLTEsYyhtLEIoeSx5KSkpKSxHPXIoUShDKSxyKC0xLGMobSxCKHkrMSx5KSkpKSxTPXIoUShDKSxyKC0xLGMobSxCKHkseSsxKSkpKSxiPXIoUShDKSxyKC0xLGMobSxCKHkrMSx5KzEpKSkpLEg9VShOKGcoTSxSKSxHKSxOKFMsZyhNLGIpKSksdj11KEgsVCk7Zlt5XT12LnN1YnNldChCKG8oMCxDKSwwKSksZlt5KzFdPXYuc3Vic2V0KEIobyhDLDIqQyksMCkpLHkrK31lbHNle2Zvcih2YXIgaz1jKEQsQihZLHkpKSxqPTA7ajx5O2orKylrPWcoayxyKGZbal0sYyhtLEIoaix5KSkpKTt2YXIgSj1jKG0sQih5LHkpKSx6PUUoTSxyKEosUShDKSkpO2ZbeV09dSh6LGspfXZhciBMPWkobi5hcHBseSh2b2lkIDAsZikpO3JldHVybiByKGQscihMLGEoRikpKX19KSksZkU9cEEoInNjaHVyIixbInR5cGVkIiwibWF0cml4IiwiaWRlbnRpdHkiLCJtdWx0aXBseSIsInFyIiwibm9ybSIsInN1YnRyYWN0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuaWRlbnRpdHksaT1BLm11bHRpcGx5LHI9QS5xcixvPUEubm9ybSxzPUEuc3VidHJhY3Q7cmV0dXJuIGUoInNjaHVyIix7QXJyYXk6ZnVuY3Rpb24oQSl7dmFyIGU9YSh0KEEpKTtyZXR1cm57VTplLlUudmFsdWVPZigpLFQ6ZS5ULnZhbHVlT2YoKX19LE1hdHJpeDpmdW5jdGlvbihBKXtyZXR1cm4gYShBKX19KTtmdW5jdGlvbiBhKEEpe3ZhciBlLHQ9QS5zaXplKClbMF0sYT1BLEI9bih0KSxjPTA7ZG97ZT1hO3ZhciBnPXIoYSksRT1nLlEsUT1nLlI7aWYoYT1pKFEsRSksQj1pKEIsRSksYysrPjEwMClicmVha313aGlsZShvKHMoYSxlKSk+MWUtNCk7cmV0dXJue1U6QixUOmF9fX0pKSxORT1wQSgibHlhcCIsWyJ0eXBlZCIsIm1hdHJpeCIsInN5bHZlc3RlciIsIm11bHRpcGx5IiwidHJhbnNwb3NlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuc3lsdmVzdGVyLGk9QS5tdWx0aXBseSxyPUEudHJhbnNwb3NlO3JldHVybiBlKCJseWFwIix7Ik1hdHJpeCwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBuKEEscihBKSxpKC0xLGUpKX0sIkFycmF5LCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG4odChBKSxyKHQoQSkpLGkoLTEsZSkpfSwiTWF0cml4LCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbihBLHIodChBKSksdChpKC0xLGUpKSl9LCJBcnJheSwgQXJyYXkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG4odChBKSxyKHQoQSkpLHQoaSgtMSxlKSkpLnRvQXJyYXkoKX19KX0pKSxVRT1wQSgiZGl2aWRlIixbInR5cGVkIiwibWF0cml4IiwibXVsdGlwbHkiLCJlcXVhbFNjYWxhciIsImRpdmlkZVNjYWxhciIsImludiJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLm11bHRpcGx5LGk9QS5lcXVhbFNjYWxhcixyPUEuZGl2aWRlU2NhbGFyLG89QS5pbnYscz1ycih7dHlwZWQ6ZSxlcXVhbFNjYWxhcjppfSksYT1zcih7dHlwZWQ6ZX0pO3JldHVybiBlKCJkaXZpZGUiLGhBKHsiQXJyYXkgfCBNYXRyaXgsIEFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBuKEEsbyhlKSl9LCJEZW5zZU1hdHJpeCwgYW55IjpmdW5jdGlvbihBLGUpe3JldHVybiBhKEEsZSxyLCExKX0sIlNwYXJzZU1hdHJpeCwgYW55IjpmdW5jdGlvbihBLGUpe3JldHVybiBzKEEsZSxyLCExKX0sIkFycmF5LCBhbnkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGEodChBKSxlLHIsITEpLnZhbHVlT2YoKX0sImFueSwgQXJyYXkgfCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG4oQSxvKGUpKX19LHIuc2lnbmF0dXJlcykpfSkpLHlFPSJkaXN0YW5jZSIsVEU9cEEoeUUsWyJ0eXBlZCIsImFkZFNjYWxhciIsInN1YnRyYWN0U2NhbGFyIiwiZGl2aWRlU2NhbGFyIiwibXVsdGlwbHlTY2FsYXIiLCJkZWVwRXF1YWwiLCJzcXJ0IiwiYWJzIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZFNjYWxhcixuPUEuc3VidHJhY3RTY2FsYXIsaT1BLm11bHRpcGx5U2NhbGFyLG89QS5kaXZpZGVTY2FsYXIscz1BLmRlZXBFcXVhbCxhPUEuc3FydCxCPUEuYWJzO3JldHVybiBlKHlFLHsiQXJyYXksIEFycmF5LCBBcnJheSI6ZnVuY3Rpb24oQSxlLHQpe2lmKDI9PT1BLmxlbmd0aCYmMj09PWUubGVuZ3RoJiYyPT09dC5sZW5ndGgpe2lmKCFnKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5IHdpdGggMiBudW1iZXJzIG9yIEJpZ051bWJlcnMgZXhwZWN0ZWQgZm9yIGZpcnN0IGFyZ3VtZW50Iik7aWYoIWcoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgd2l0aCAyIG51bWJlcnMgb3IgQmlnTnVtYmVycyBleHBlY3RlZCBmb3Igc2Vjb25kIGFyZ3VtZW50Iik7aWYoIWcodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgd2l0aCAyIG51bWJlcnMgb3IgQmlnTnVtYmVycyBleHBlY3RlZCBmb3IgdGhpcmQgYXJndW1lbnQiKTtpZihzKGUsdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiTGluZVBvaW50MSBzaG91bGQgbm90IGJlIHNhbWUgd2l0aCBMaW5lUG9pbnQyIik7dmFyIHI9bih0WzFdLGVbMV0pLG89bihlWzBdLHRbMF0pLGE9bihpKHRbMF0sZVsxXSksaShlWzBdLHRbMV0pKTtyZXR1cm4gaChBWzBdLEFbMV0scixvLGEpfXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgQXJndW1lbnRzOiBUcnkgYWdhaW4iKX0sIk9iamVjdCwgT2JqZWN0LCBPYmplY3QiOmZ1bmN0aW9uKEEsZSx0KXtpZigyPT09T2JqZWN0LmtleXMoQSkubGVuZ3RoJiYyPT09T2JqZWN0LmtleXMoZSkubGVuZ3RoJiYyPT09T2JqZWN0LmtleXModCkubGVuZ3RoKXtpZighZyhBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJWYWx1ZXMgb2YgcG9pbnRYIGFuZCBwb2ludFkgc2hvdWxkIGJlIG51bWJlcnMgb3IgQmlnTnVtYmVycyIpO2lmKCFnKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlZhbHVlcyBvZiBsaW5lT25lUHRYIGFuZCBsaW5lT25lUHRZIHNob3VsZCBiZSBudW1iZXJzIG9yIEJpZ051bWJlcnMiKTtpZighZyh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJWYWx1ZXMgb2YgbGluZVR3b1B0WCBhbmQgbGluZVR3b1B0WSBzaG91bGQgYmUgbnVtYmVycyBvciBCaWdOdW1iZXJzIik7aWYocyhsKGUpLGwodCkpKXRocm93IG5ldyBUeXBlRXJyb3IoIkxpbmVQb2ludDEgc2hvdWxkIG5vdCBiZSBzYW1lIHdpdGggTGluZVBvaW50MiIpO2lmKCJwb2ludFgiaW4gQSYmInBvaW50WSJpbiBBJiYibGluZU9uZVB0WCJpbiBlJiYibGluZU9uZVB0WSJpbiBlJiYibGluZVR3b1B0WCJpbiB0JiYibGluZVR3b1B0WSJpbiB0KXt2YXIgcj1uKHQubGluZVR3b1B0WSxlLmxpbmVPbmVQdFkpLG89bihlLmxpbmVPbmVQdFgsdC5saW5lVHdvUHRYKSxhPW4oaSh0LmxpbmVUd29QdFgsZS5saW5lT25lUHRZKSxpKGUubGluZU9uZVB0WCx0LmxpbmVUd29QdFkpKTtyZXR1cm4gaChBLnBvaW50WCxBLnBvaW50WSxyLG8sYSl9dGhyb3cgbmV3IFR5cGVFcnJvcigiS2V5IG5hbWVzIGRvIG5vdCBtYXRjaCIpfXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgQXJndW1lbnRzOiBUcnkgYWdhaW4iKX0sIkFycmF5LCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtpZigyPT09QS5sZW5ndGgmJjM9PT1lLmxlbmd0aCl7aWYoIWcoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgd2l0aCAyIG51bWJlcnMgb3IgQmlnTnVtYmVycyBleHBlY3RlZCBmb3IgZmlyc3QgYXJndW1lbnQiKTtpZighRShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSB3aXRoIDMgbnVtYmVycyBvciBCaWdOdW1iZXJzIGV4cGVjdGVkIGZvciBzZWNvbmQgYXJndW1lbnQiKTtyZXR1cm4gaChBWzBdLEFbMV0sZVswXSxlWzFdLGVbMl0pfWlmKDM9PT1BLmxlbmd0aCYmNj09PWUubGVuZ3RoKXtpZighRShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSB3aXRoIDMgbnVtYmVycyBvciBCaWdOdW1iZXJzIGV4cGVjdGVkIGZvciBmaXJzdCBhcmd1bWVudCIpO2lmKCF1KGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5IHdpdGggNiBudW1iZXJzIG9yIEJpZ051bWJlcnMgZXhwZWN0ZWQgZm9yIHNlY29uZCBhcmd1bWVudCIpO3JldHVybiB3KEFbMF0sQVsxXSxBWzJdLGVbMF0sZVsxXSxlWzJdLGVbM10sZVs0XSxlWzVdKX1pZihBLmxlbmd0aD09PWUubGVuZ3RoJiZBLmxlbmd0aD4wKXtpZighUShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBbGwgdmFsdWVzIG9mIGFuIGFycmF5IHNob3VsZCBiZSBudW1iZXJzIG9yIEJpZ051bWJlcnMiKTtpZighUShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBbGwgdmFsdWVzIG9mIGFuIGFycmF5IHNob3VsZCBiZSBudW1iZXJzIG9yIEJpZ051bWJlcnMiKTtyZXR1cm4gQyhBLGUpfXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgQXJndW1lbnRzOiBUcnkgYWdhaW4iKX0sIk9iamVjdCwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe2lmKDI9PT1PYmplY3Qua2V5cyhBKS5sZW5ndGgmJjM9PT1PYmplY3Qua2V5cyhlKS5sZW5ndGgpe2lmKCFnKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIlZhbHVlcyBvZiBwb2ludFggYW5kIHBvaW50WSBzaG91bGQgYmUgbnVtYmVycyBvciBCaWdOdW1iZXJzIik7aWYoIUUoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVmFsdWVzIG9mIHhDb2VmZkxpbmUsIHlDb2VmZkxpbmUgYW5kIGNvbnN0YW50IHNob3VsZCBiZSBudW1iZXJzIG9yIEJpZ051bWJlcnMiKTtpZigicG9pbnRYImluIEEmJiJwb2ludFkiaW4gQSYmInhDb2VmZkxpbmUiaW4gZSYmInlDb2VmZkxpbmUiaW4gZSYmImNvbnN0YW50ImluIGUpcmV0dXJuIGgoQS5wb2ludFgsQS5wb2ludFksZS54Q29lZmZMaW5lLGUueUNvZWZmTGluZSxlLmNvbnN0YW50KTt0aHJvdyBuZXcgVHlwZUVycm9yKCJLZXkgbmFtZXMgZG8gbm90IG1hdGNoIil9aWYoMz09PU9iamVjdC5rZXlzKEEpLmxlbmd0aCYmNj09PU9iamVjdC5rZXlzKGUpLmxlbmd0aCl7aWYoIUUoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVmFsdWVzIG9mIHBvaW50WCwgcG9pbnRZIGFuZCBwb2ludFogc2hvdWxkIGJlIG51bWJlcnMgb3IgQmlnTnVtYmVycyIpO2lmKCF1KGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlZhbHVlcyBvZiB4MCwgeTAsIHowLCBhLCBiIGFuZCBjIHNob3VsZCBiZSBudW1iZXJzIG9yIEJpZ051bWJlcnMiKTtpZigicG9pbnRYImluIEEmJiJwb2ludFkiaW4gQSYmIngwImluIGUmJiJ5MCJpbiBlJiYiejAiaW4gZSYmImEiaW4gZSYmImIiaW4gZSYmImMiaW4gZSlyZXR1cm4gdyhBLnBvaW50WCxBLnBvaW50WSxBLnBvaW50WixlLngwLGUueTAsZS56MCxlLmEsZS5iLGUuYyk7dGhyb3cgbmV3IFR5cGVFcnJvcigiS2V5IG5hbWVzIGRvIG5vdCBtYXRjaCIpfWlmKDI9PT1PYmplY3Qua2V5cyhBKS5sZW5ndGgmJjI9PT1PYmplY3Qua2V5cyhlKS5sZW5ndGgpe2lmKCFnKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIlZhbHVlcyBvZiBwb2ludE9uZVggYW5kIHBvaW50T25lWSBzaG91bGQgYmUgbnVtYmVycyBvciBCaWdOdW1iZXJzIik7aWYoIWcoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVmFsdWVzIG9mIHBvaW50VHdvWCBhbmQgcG9pbnRUd29ZIHNob3VsZCBiZSBudW1iZXJzIG9yIEJpZ051bWJlcnMiKTtpZigicG9pbnRPbmVYImluIEEmJiJwb2ludE9uZVkiaW4gQSYmInBvaW50VHdvWCJpbiBlJiYicG9pbnRUd29ZImluIGUpcmV0dXJuIEMoW0EucG9pbnRPbmVYLEEucG9pbnRPbmVZXSxbZS5wb2ludFR3b1gsZS5wb2ludFR3b1ldKTt0aHJvdyBuZXcgVHlwZUVycm9yKCJLZXkgbmFtZXMgZG8gbm90IG1hdGNoIil9aWYoMz09PU9iamVjdC5rZXlzKEEpLmxlbmd0aCYmMz09PU9iamVjdC5rZXlzKGUpLmxlbmd0aCl7aWYoIUUoQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVmFsdWVzIG9mIHBvaW50T25lWCwgcG9pbnRPbmVZIGFuZCBwb2ludE9uZVogc2hvdWxkIGJlIG51bWJlcnMgb3IgQmlnTnVtYmVycyIpO2lmKCFFKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlZhbHVlcyBvZiBwb2ludFR3b1gsIHBvaW50VHdvWSBhbmQgcG9pbnRUd29aIHNob3VsZCBiZSBudW1iZXJzIG9yIEJpZ051bWJlcnMiKTtpZigicG9pbnRPbmVYImluIEEmJiJwb2ludE9uZVkiaW4gQSYmInBvaW50T25lWiJpbiBBJiYicG9pbnRUd29YImluIGUmJiJwb2ludFR3b1kiaW4gZSYmInBvaW50VHdvWiJpbiBlKXJldHVybiBDKFtBLnBvaW50T25lWCxBLnBvaW50T25lWSxBLnBvaW50T25lWl0sW2UucG9pbnRUd29YLGUucG9pbnRUd29ZLGUucG9pbnRUd29aXSk7dGhyb3cgbmV3IFR5cGVFcnJvcigiS2V5IG5hbWVzIGRvIG5vdCBtYXRjaCIpfXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgQXJndW1lbnRzOiBUcnkgYWdhaW4iKX0sQXJyYXk6ZnVuY3Rpb24oQSl7aWYoIWZ1bmN0aW9uKEEpe2lmKDI9PT1BWzBdLmxlbmd0aCYmYyhBWzBdWzBdKSYmYyhBWzBdWzFdKSl7aWYoQS5zb21lKChmdW5jdGlvbihBKXtyZXR1cm4gMiE9PUEubGVuZ3RofHwhYyhBWzBdKXx8IWMoQVsxXSl9KSkpcmV0dXJuITF9ZWxzZXtpZighKDM9PT1BWzBdLmxlbmd0aCYmYyhBWzBdWzBdKSYmYyhBWzBdWzFdKSYmYyhBWzBdWzJdKSkpcmV0dXJuITE7aWYoQS5zb21lKChmdW5jdGlvbihBKXtyZXR1cm4gMyE9PUEubGVuZ3RofHwhYyhBWzBdKXx8IWMoQVsxXSl8fCFjKEFbMl0pfSkpKXJldHVybiExfXJldHVybiEwfShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbmNvcnJlY3QgYXJyYXkgZm9ybWF0IGVudGVyZWQgZm9yIHBhaXJ3aXNlIGRpc3RhbmNlIGNhbGN1bGF0aW9uIik7cmV0dXJuIGZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1bXSx0PVtdLG49W10saT0wO2k8QS5sZW5ndGgtMTtpKyspZm9yKHZhciByPWkrMTtyPEEubGVuZ3RoO3IrKykyPT09QVswXS5sZW5ndGg/KHQ9W0FbaV1bMF0sQVtpXVsxXV0sbj1bQVtyXVswXSxBW3JdWzFdXSk6Mz09PUFbMF0ubGVuZ3RoJiYodD1bQVtpXVswXSxBW2ldWzFdLEFbaV1bMl1dLG49W0Fbcl1bMF0sQVtyXVsxXSxBW3JdWzJdXSksZS5wdXNoKEModCxuKSk7cmV0dXJuIGV9KEEpfX0pO2Z1bmN0aW9uIGMoQSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBBfHxyKEEpfWZ1bmN0aW9uIGcoQSl7cmV0dXJuIEEuY29uc3RydWN0b3IhPT1BcnJheSYmKEE9bChBKSksYyhBWzBdKSYmYyhBWzFdKX1mdW5jdGlvbiBFKEEpe3JldHVybiBBLmNvbnN0cnVjdG9yIT09QXJyYXkmJihBPWwoQSkpLGMoQVswXSkmJmMoQVsxXSkmJmMoQVsyXSl9ZnVuY3Rpb24gUShBKXtyZXR1cm4gQXJyYXkuaXNBcnJheShBKXx8KEE9bChBKSksQS5ldmVyeShjKX1mdW5jdGlvbiB1KEEpe3JldHVybiBBLmNvbnN0cnVjdG9yIT09QXJyYXkmJihBPWwoQSkpLGMoQVswXSkmJmMoQVsxXSkmJmMoQVsyXSkmJmMoQVszXSkmJmMoQVs0XSkmJmMoQVs1XSl9ZnVuY3Rpb24gbChBKXtmb3IodmFyIGU9T2JqZWN0LmtleXMoQSksdD1bXSxuPTA7bjxlLmxlbmd0aDtuKyspdC5wdXNoKEFbZVtuXV0pO3JldHVybiB0fWZ1bmN0aW9uIGgoQSxlLG4scixzKXt2YXIgYz1CKHQodChpKG4sQSksaShyLGUpKSxzKSksZz1hKHQoaShuLG4pLGkocixyKSkpO3JldHVybiBvKGMsZyl9ZnVuY3Rpb24gdyhBLGUscixzLEIsYyxnLEUsUSl7dmFyIHU9W24oaShuKEIsZSksUSksaShuKGMsciksRSkpLG4oaShuKGMsciksZyksaShuKHMsQSksUSkpLG4oaShuKHMsQSksRSksaShuKEIsZSksZykpXTt1PWEodCh0KGkodVswXSx1WzBdKSxpKHVbMV0sdVsxXSkpLGkodVsyXSx1WzJdKSkpO3ZhciBsPWEodCh0KGkoZyxnKSxpKEUsRSkpLGkoUSxRKSkpO3JldHVybiBvKHUsbCl9ZnVuY3Rpb24gQyhBLGUpe2Zvcih2YXIgcj1BLmxlbmd0aCxvPTAscz0wLEI9MDtCPHI7QisrKXM9bihBW0JdLGVbQl0pLG89dChpKHMscyksbyk7cmV0dXJuIGEobyl9fSkpLHhFPXBBKCJpbnRlcnNlY3QiLFsidHlwZWQiLCJjb25maWciLCJhYnMiLCJhZGQiLCJhZGRTY2FsYXIiLCJtYXRyaXgiLCJtdWx0aXBseSIsIm11bHRpcGx5U2NhbGFyIiwiZGl2aWRlU2NhbGFyIiwic3VidHJhY3QiLCJzbWFsbGVyIiwiZXF1YWxTY2FsYXIiLCJmbGF0dGVuIiwiaXNaZXJvIiwiaXNOdW1lcmljIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEuYWJzLGk9QS5hZGQscj1BLmFkZFNjYWxhcixvPUEubWF0cml4LHM9QS5tdWx0aXBseSxhPUEubXVsdGlwbHlTY2FsYXIsQj1BLmRpdmlkZVNjYWxhcixjPUEuc3VidHJhY3QsZz1BLnNtYWxsZXIsRT1BLmVxdWFsU2NhbGFyLFE9QS5mbGF0dGVuLHU9QS5pc1plcm8sbD1BLmlzTnVtZXJpYztyZXR1cm4gZSgiaW50ZXJzZWN0Iix7IkFycmF5LCBBcnJheSwgQXJyYXkiOmgsIkFycmF5LCBBcnJheSwgQXJyYXksIEFycmF5Ijp3LCJNYXRyaXgsIE1hdHJpeCwgTWF0cml4IjpmdW5jdGlvbihBLGUsdCl7dmFyIG49aChBLnZhbHVlT2YoKSxlLnZhbHVlT2YoKSx0LnZhbHVlT2YoKSk7cmV0dXJuIG51bGw9PT1uP251bGw6byhuKX0sIk1hdHJpeCwgTWF0cml4LCBNYXRyaXgsIE1hdHJpeCI6ZnVuY3Rpb24oQSxlLHQsbil7dmFyIGk9dyhBLnZhbHVlT2YoKSxlLnZhbHVlT2YoKSx0LnZhbHVlT2YoKSxuLnZhbHVlT2YoKSk7cmV0dXJuIG51bGw9PT1pP251bGw6byhpKX19KTtmdW5jdGlvbiBoKEEsZSx0KXtpZihBPUMoQSksZT1DKGUpLHQ9Qyh0KSwhTShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSB3aXRoIDMgbnVtYmVycyBvciBCaWdOdW1iZXJzIGV4cGVjdGVkIGZvciBmaXJzdCBhcmd1bWVudCIpO2lmKCFNKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5IHdpdGggMyBudW1iZXJzIG9yIEJpZ051bWJlcnMgZXhwZWN0ZWQgZm9yIHNlY29uZCBhcmd1bWVudCIpO2lmKCFmdW5jdGlvbihBKXtyZXR1cm4gND09PUEubGVuZ3RoJiZsKEFbMF0pJiZsKEFbMV0pJiZsKEFbMl0pJiZsKEFbM10pfSh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSB3aXRoIDQgbnVtYmVycyBleHBlY3RlZCBhcyB0aGlyZCBhcmd1bWVudCIpO3JldHVybiBmdW5jdGlvbihBLGUsdCxuLGksbyxzLGcsRSxRKXt2YXIgdT1hKEEscyksbD1hKG4scyksaD1hKGUsZyksdz1hKGksZyksQz1hKHQsRSksST1hKG8sRSksTT1jKGMoYyhRLHUpLGgpLEMpLGQ9YyhjKGMocihyKGwsdyksSSksdSksaCksQykscD1CKE0sZCk7cmV0dXJuW3IoQSxhKHAsYyhuLEEpKSkscihlLGEocCxjKGksZSkpKSxyKHQsYShwLGMobyx0KSkpXX0oQVswXSxBWzFdLEFbMl0sZVswXSxlWzFdLGVbMl0sdFswXSx0WzFdLHRbMl0sdFszXSl9ZnVuY3Rpb24gdyhBLGUsbyxRKXtpZihBPUMoQSksZT1DKGUpLG89QyhvKSxRPUMoUSksMj09PUEubGVuZ3RoKXtpZighSShBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSB3aXRoIDIgbnVtYmVycyBvciBCaWdOdW1iZXJzIGV4cGVjdGVkIGZvciBmaXJzdCBhcmd1bWVudCIpO2lmKCFJKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5IHdpdGggMiBudW1iZXJzIG9yIEJpZ051bWJlcnMgZXhwZWN0ZWQgZm9yIHNlY29uZCBhcmd1bWVudCIpO2lmKCFJKG8pKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5IHdpdGggMiBudW1iZXJzIG9yIEJpZ051bWJlcnMgZXhwZWN0ZWQgZm9yIHRoaXJkIGFyZ3VtZW50Iik7aWYoIUkoUSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgd2l0aCAyIG51bWJlcnMgb3IgQmlnTnVtYmVycyBleHBlY3RlZCBmb3IgZm91cnRoIGFyZ3VtZW50Iik7cmV0dXJuIGZ1bmN0aW9uKEEsZSxvLEUpe3ZhciBRPUEsbD1vLGg9YyhRLGUpLHc9YyhsLEUpLEM9YyhhKGhbMF0sd1sxXSksYSh3WzBdLGhbMV0pKTtpZih1KEMpKXJldHVybiBudWxsO2lmKGcobihDKSx0LmVwc2lsb24pKXJldHVybiBudWxsO3ZhciBJPWEod1swXSxRWzFdKSxNPWEod1sxXSxRWzBdKSxkPWEod1swXSxsWzFdKSxwPWEod1sxXSxsWzBdKSxtPUIocihjKGMoSSxNKSxkKSxwKSxDKTtyZXR1cm4gaShzKGgsbSksUSl9KEEsZSxvLFEpfWlmKDM9PT1BLmxlbmd0aCl7aWYoIU0oQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJyYXkgd2l0aCAzIG51bWJlcnMgb3IgQmlnTnVtYmVycyBleHBlY3RlZCBmb3IgZmlyc3QgYXJndW1lbnQiKTtpZighTShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSB3aXRoIDMgbnVtYmVycyBvciBCaWdOdW1iZXJzIGV4cGVjdGVkIGZvciBzZWNvbmQgYXJndW1lbnQiKTtpZighTShvKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheSB3aXRoIDMgbnVtYmVycyBvciBCaWdOdW1iZXJzIGV4cGVjdGVkIGZvciB0aGlyZCBhcmd1bWVudCIpO2lmKCFNKFEpKXRocm93IG5ldyBUeXBlRXJyb3IoIkFycmF5IHdpdGggMyBudW1iZXJzIG9yIEJpZ051bWJlcnMgZXhwZWN0ZWQgZm9yIGZvdXJ0aCBhcmd1bWVudCIpO3JldHVybiBmdW5jdGlvbihBLGUsdCxuLGksbyxzLGcsUSxsLGgsdyl7dmFyIEM9ZChBLHMsbCxzLGUsZyxoLGcsdCxRLHcsUSksST1kKGwscyxuLEEsaCxnLGksZSx3LFEsbyx0KSxNPWQoQSxzLG4sQSxlLGcsaSxlLHQsUSxvLHQpLHA9ZChsLHMsbCxzLGgsZyxoLGcsdyxRLHcsUSksbT1kKG4sQSxuLEEsaSxlLGksZSxvLHQsbyx0KSxGPWMoYShDLEkpLGEoTSxwKSksRD1jKGEobSxwKSxhKEksSSkpO2lmKHUoRCkpcmV0dXJuIG51bGw7dmFyIFk9QihGLEQpLGY9QihyKEMsYShZLEkpKSxwKSxOPXIoQSxhKFksYyhuLEEpKSksVT1yKGUsYShZLGMoaSxlKSkpLHk9cih0LGEoWSxjKG8sdCkpKSxUPXIocyxhKGYsYyhsLHMpKSkseD1yKGcsYShmLGMoaCxnKSkpLFI9cihRLGEoZixjKHcsUSkpKTtyZXR1cm4gRShOLFQpJiZFKFUseCkmJkUoeSxSKT9bTixVLHldOm51bGx9KEFbMF0sQVsxXSxBWzJdLGVbMF0sZVsxXSxlWzJdLG9bMF0sb1sxXSxvWzJdLFFbMF0sUVsxXSxRWzJdKX10aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheXMgd2l0aCB0d28gb3IgdGhlZSBkaW1lbnNpb25hbCBwb2ludHMgZXhwZWN0ZWQiKX1mdW5jdGlvbiBDKEEpe3JldHVybiAxPT09QS5sZW5ndGg/QVswXTpBLmxlbmd0aD4xJiZBcnJheS5pc0FycmF5KEFbMF0pJiZBLmV2ZXJ5KChmdW5jdGlvbihBKXtyZXR1cm4gQXJyYXkuaXNBcnJheShBKSYmMT09PUEubGVuZ3RofSkpP1EoQSk6QX1mdW5jdGlvbiBJKEEpe3JldHVybiAyPT09QS5sZW5ndGgmJmwoQVswXSkmJmwoQVsxXSl9ZnVuY3Rpb24gTShBKXtyZXR1cm4gMz09PUEubGVuZ3RoJiZsKEFbMF0pJiZsKEFbMV0pJiZsKEFbMl0pfWZ1bmN0aW9uIGQoQSxlLHQsbixpLG8scyxCLGcsRSxRLHUpe3ZhciBsPWEoYyhBLGUpLGModCxuKSksaD1hKGMoaSxvKSxjKHMsQikpLHc9YShjKGcsRSksYyhRLHUpKTtyZXR1cm4gcihyKGwsaCksdyl9fSkpLFJFPXBBKCJzdW0iLFsidHlwZWQiLCJjb25maWciLCJhZGQiLCJudW1lcmljIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEuYWRkLGk9QS5udW1lcmljO3JldHVybiBlKCJzdW0iLHsiQXJyYXkgfCBNYXRyaXgiOnIsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7dHJ5e3JldHVybiBTbihBLGUsbil9Y2F0Y2goQSl7dGhyb3cgdnMoQSwic3VtIil9fSwiLi4uIjpmdW5jdGlvbihBKXtpZih4bihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTY2FsYXIgdmFsdWVzIGV4cGVjdGVkIGluIGZ1bmN0aW9uIHN1bSIpO3JldHVybiByKEEpfX0pO2Z1bmN0aW9uIHIoQSl7dmFyIGU7cmV0dXJuIFJuKEEsKGZ1bmN0aW9uKEEpe3RyeXtlPXZvaWQgMD09PWU/QTpuKGUsQSl9Y2F0Y2goZSl7dGhyb3cgdnMoZSwic3VtIixBKX19KSksdm9pZCAwPT09ZSYmKGU9aSgwLHQubnVtYmVyKSksInN0cmluZyI9PXR5cGVvZiBlJiYoZT1pKGUsdC5udW1iZXIpKSxlfX0pKSxHRT0iY3Vtc3VtIixTRT1wQShHRSxbInR5cGVkIiwiYWRkIiwidW5hcnlQbHVzIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZCxuPUEudW5hcnlQbHVzO3JldHVybiBlKEdFLHtBcnJheTppLE1hdHJpeDpmdW5jdGlvbihBKXtyZXR1cm4gQS5jcmVhdGUoaShBLnZhbHVlT2YoKSkpfSwiQXJyYXksIG51bWJlciB8IEJpZ051bWJlciI6bywiTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuY3JlYXRlKG8oQS52YWx1ZU9mKCksZSkpfSwiLi4uIjpmdW5jdGlvbihBKXtpZih4bihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBbGwgdmFsdWVzIGV4cGVjdGVkIHRvIGJlIHNjYWxhciBpbiBmdW5jdGlvbiBjdW1zdW0iKTtyZXR1cm4gaShBKX19KTtmdW5jdGlvbiBpKEEpe3RyeXtyZXR1cm4gcihBKX1jYXRjaChBKXt0aHJvdyB2cyhBLEdFKX19ZnVuY3Rpb24gcihBKXtpZigwPT09QS5sZW5ndGgpcmV0dXJuW107Zm9yKHZhciBlPVtuKEFbMF0pXSxpPTE7aTxBLmxlbmd0aDsrK2kpZS5wdXNoKHQoZVtpLTFdLEFbaV0pKTtyZXR1cm4gZX1mdW5jdGlvbiBvKEEsZSl7dmFyIHQ9JHQoQSk7aWYoZTwwfHxlPj10Lmxlbmd0aCl0aHJvdyBuZXcgcXQoZSx0Lmxlbmd0aCk7dHJ5e3JldHVybiBmdW5jdGlvbiBBKGUsdCl7dmFyIG4saSxvO2lmKHQ8PTApe3ZhciBzPWVbMF1bMF07aWYoQXJyYXkuaXNBcnJheShzKSl7Zm9yKG89VG4oZSksaT1bXSxuPTA7bjxvLmxlbmd0aDtuKyspaVtuXT1BKG9bbl0sdC0xKTtyZXR1cm4gaX1yZXR1cm4gcihlKX1mb3IoaT1bXSxuPTA7bjxlLmxlbmd0aDtuKyspaVtuXT1BKGVbbl0sdC0xKTtyZXR1cm4gaX0oQSxlKX1jYXRjaChBKXt0aHJvdyB2cyhBLEdFKX19fSkpLGJFPXBBKCJtZWFuIixbInR5cGVkIiwiYWRkIiwiZGl2aWRlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZCxuPUEuZGl2aWRlO3JldHVybiBlKCJtZWFuIix7IkFycmF5IHwgTWF0cml4IjppLCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3RyeXt2YXIgaT1TbihBLGUsdCkscj1BcnJheS5pc0FycmF5KEEpPyR0KEEpOkEuc2l6ZSgpO3JldHVybiBuKGkscltlXSl9Y2F0Y2goQSl7dGhyb3cgdnMoQSwibWVhbiIpfX0sIi4uLiI6ZnVuY3Rpb24oQSl7aWYoeG4oQSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiU2NhbGFyIHZhbHVlcyBleHBlY3RlZCBpbiBmdW5jdGlvbiBtZWFuIik7cmV0dXJuIGkoQSl9fSk7ZnVuY3Rpb24gaShBKXt2YXIgZSxpPTA7aWYoUm4oQSwoZnVuY3Rpb24oQSl7dHJ5e2U9dm9pZCAwPT09ZT9BOnQoZSxBKSxpKyt9Y2F0Y2goZSl7dGhyb3cgdnMoZSwibWVhbiIsQSl9fSkpLDA9PT1pKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGNhbGN1bGF0ZSB0aGUgbWVhbiBvZiBhbiBlbXB0eSBhcnJheSIpO3JldHVybiBuKGUsaSl9fSkpLEhFPXBBKCJtZWRpYW4iLFsidHlwZWQiLCJhZGQiLCJkaXZpZGUiLCJjb21wYXJlIiwicGFydGl0aW9uU2VsZWN0Il0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZCxuPUEuZGl2aWRlLGk9QS5jb21wYXJlLHI9QS5wYXJ0aXRpb25TZWxlY3Q7ZnVuY3Rpb24gbyhBKXt0cnl7dmFyIGU9KEE9Z24oQS52YWx1ZU9mKCkpKS5sZW5ndGg7aWYoMD09PWUpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY2FsY3VsYXRlIG1lZGlhbiBvZiBhbiBlbXB0eSBhcnJheSIpO2lmKGUlMj09MCl7Zm9yKHZhciB0PWUvMi0xLG49cihBLHQrMSksbz1BW3RdLEI9MDtCPHQ7KytCKWkoQVtCXSxvKT4wJiYobz1BW0JdKTtyZXR1cm4gYShvLG4pfXZhciBjPXIoQSwoZS0xKS8yKTtyZXR1cm4gcyhjKX1jYXRjaChBKXt0aHJvdyB2cyhBLCJtZWRpYW4iKX19dmFyIHM9ZSh7Im51bWJlciB8IEJpZ051bWJlciB8IENvbXBsZXggfCBVbml0IjpmdW5jdGlvbihBKXtyZXR1cm4gQX19KSxhPWUoeyJudW1iZXIgfCBCaWdOdW1iZXIgfCBDb21wbGV4IHwgVW5pdCwgbnVtYmVyIHwgQmlnTnVtYmVyIHwgQ29tcGxleCB8IFVuaXQiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG4odChBLGUpLDIpfX0pO3JldHVybiBlKCJtZWRpYW4iLHsiQXJyYXkgfCBNYXRyaXgiOm8sIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7dGhyb3cgbmV3IEVycm9yKCJtZWRpYW4oQSwgZGltKSBpcyBub3QgeWV0IHN1cHBvcnRlZCIpfSwiLi4uIjpmdW5jdGlvbihBKXtpZih4bihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTY2FsYXIgdmFsdWVzIGV4cGVjdGVkIGluIGZ1bmN0aW9uIG1lZGlhbiIpO3JldHVybiBvKEEpfX0pfSkpLHZFPXBBKCJtYWQiLFsidHlwZWQiLCJhYnMiLCJtYXAiLCJtZWRpYW4iLCJzdWJ0cmFjdCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5hYnMsbj1BLm1hcCxpPUEubWVkaWFuLHI9QS5zdWJ0cmFjdDtyZXR1cm4gZSgibWFkIix7IkFycmF5IHwgTWF0cml4IjpvLCIuLi4iOmZ1bmN0aW9uKEEpe3JldHVybiBvKEEpfX0pO2Z1bmN0aW9uIG8oQSl7aWYoMD09PShBPWduKEEudmFsdWVPZigpKSkubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGNhbGN1bGF0ZSBtZWRpYW4gYWJzb2x1dGUgZGV2aWF0aW9uIChtYWQpIG9mIGFuIGVtcHR5IGFycmF5Iik7dHJ5e3ZhciBlPWkoQSk7cmV0dXJuIGkobihBLChmdW5jdGlvbihBKXtyZXR1cm4gdChyKEEsZSkpfSkpKX1jYXRjaChBKXt0aHJvdyBBIGluc3RhbmNlb2YgVHlwZUVycm9yJiYtMSE9PUEubWVzc2FnZS5pbmRleE9mKCJtZWRpYW4iKT9uZXcgVHlwZUVycm9yKEEubWVzc2FnZS5yZXBsYWNlKCJtZWRpYW4iLCJtYWQiKSk6dnMoQSwibWFkIil9fX0pKSxrRT0idW5iaWFzZWQiLGpFPSJ2YXJpYW5jZSIsSkU9cEEoakUsWyJ0eXBlZCIsImFkZCIsInN1YnRyYWN0IiwibXVsdGlwbHkiLCJkaXZpZGUiLCJhcHBseSIsImlzTmFOIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZCxuPUEuc3VidHJhY3QsaT1BLm11bHRpcGx5LG89QS5kaXZpZGUscz1BLmFwcGx5LGE9QS5pc05hTjtyZXR1cm4gZShqRSx7IkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gQihBLGtFKX0sIkFycmF5IHwgTWF0cml4LCBzdHJpbmciOkIsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGMoQSxlLGtFKX0sIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIsIHN0cmluZyI6YywiLi4uIjpmdW5jdGlvbihBKXtyZXR1cm4gQihBLGtFKX19KTtmdW5jdGlvbiBCKEEsZSl7dmFyIHMsQj0wO2lmKDA9PT1BLmxlbmd0aCl0aHJvdyBuZXcgU3ludGF4RXJyb3IoIkZ1bmN0aW9uIHZhcmlhbmNlIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcmFtZXRlcnMgKDAgcHJvdmlkZWQpIik7aWYoUm4oQSwoZnVuY3Rpb24oQSl7dHJ5e3M9dm9pZCAwPT09cz9BOnQocyxBKSxCKyt9Y2F0Y2goZSl7dGhyb3cgdnMoZSwidmFyaWFuY2UiLEEpfX0pKSwwPT09Qil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgdmFyaWFuY2Ugb2YgYW4gZW1wdHkgYXJyYXkiKTt2YXIgYz1vKHMsQik7aWYocz12b2lkIDAsUm4oQSwoZnVuY3Rpb24oQSl7dmFyIGU9bihBLGMpO3M9dm9pZCAwPT09cz9pKGUsZSk6dChzLGkoZSxlKSl9KSksYShzKSlyZXR1cm4gcztzd2l0Y2goZSl7Y2FzZSJ1bmNvcnJlY3RlZCI6cmV0dXJuIG8ocyxCKTtjYXNlImJpYXNlZCI6cmV0dXJuIG8ocyxCKzEpO2Nhc2UidW5iaWFzZWQiOnZhciBnPXIocyk/cy5tdWwoMCk6MDtyZXR1cm4gMT09PUI/ZzpvKHMsQi0xKTtkZWZhdWx0OnRocm93IG5ldyBFcnJvcignVW5rbm93biBub3JtYWxpemF0aW9uICInK2UrJyIuIENob29zZSAidW5iaWFzZWQiIChkZWZhdWx0KSwgInVuY29ycmVjdGVkIiwgb3IgImJpYXNlZCIuJyl9fWZ1bmN0aW9uIGMoQSxlLHQpe3RyeXtpZigwPT09QS5sZW5ndGgpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJGdW5jdGlvbiB2YXJpYW5jZSByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJhbWV0ZXJzICgwIHByb3ZpZGVkKSIpO3JldHVybiBzKEEsZSwoZnVuY3Rpb24oQSl7cmV0dXJuIEIoQSx0KX0pKX1jYXRjaChBKXt0aHJvdyB2cyhBLCJ2YXJpYW5jZSIpfX19KSksekU9InF1YW50aWxlU2VxIixMRT1wQSh6RSxbInR5cGVkIiwiP2JpZ251bWJlciIsImFkZCIsInN1YnRyYWN0IiwiZGl2aWRlIiwibXVsdGlwbHkiLCJwYXJ0aXRpb25TZWxlY3QiLCJjb21wYXJlIiwiaXNJbnRlZ2VyIiwic21hbGxlciIsInNtYWxsZXJFcSIsImxhcmdlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLG49QS5iaWdudW1iZXIsaT1BLmFkZCxyPUEuc3VidHJhY3Qsbz1BLmRpdmlkZSxzPUEubXVsdGlwbHksYT1BLnBhcnRpdGlvblNlbGVjdCxCPUEuY29tcGFyZSxjPUEuaXNJbnRlZ2VyLGc9QS5zbWFsbGVyLEU9QS5zbWFsbGVyRXEsUT1BLmxhcmdlcix1PV9pKHt0eXBlZDplLGlzSW50ZWdlcjpjfSk7cmV0dXJuIGUoekUseyJBcnJheSB8IE1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBoKEEsZSwhMSl9LCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyIHwgQmlnTnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbChBLGUsITEsdCxoKX0sIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIsIGJvb2xlYW4iOmgsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIsIGJvb2xlYW4sIG51bWJlciI6ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIGwoQSxlLHQsbixoKX0sIkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdyhBLGUsITEpfSwiQXJyYXkgfCBNYXRyaXgsIEFycmF5IHwgTWF0cml4LCBudW1iZXIiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbChBLGUsITEsdCx3KX0sIkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCwgYm9vbGVhbiI6dywiQXJyYXkgfCBNYXRyaXgsIEFycmF5IHwgTWF0cml4LCBib29sZWFuLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiBsKEEsZSx0LG4sdyl9fSk7ZnVuY3Rpb24gbChBLGUsdCxuLGkpe3JldHVybiB1KEEsbiwoZnVuY3Rpb24oQSl7cmV0dXJuIGkoQSxlLHQpfSkpfWZ1bmN0aW9uIGgoQSxlLHIpe3ZhciBzLGE9QS52YWx1ZU9mKCk7aWYoZyhlLDApKXRocm93IG5ldyBFcnJvcigiTi9wcm9iIG11c3QgYmUgbm9uLW5lZ2F0aXZlIik7aWYoRShlLDEpKXJldHVybiB0KGUpP0MoYSxlLHIpOm4oQyhhLGUscikpO2lmKFEoZSwxKSl7aWYoIWMoZSkpdGhyb3cgbmV3IEVycm9yKCJOIG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyIik7aWYoUShlLDQyOTQ5NjcyOTUpKXRocm93IG5ldyBFcnJvcigiTiBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAyXjMyLTEsIGFzIHRoYXQgaXMgdGhlIG1heGltdW0gbGVuZ3RoIG9mIGFuIEFycmF5Iik7dmFyIEI9aShlLDEpO3M9W107Zm9yKHZhciB1PTA7Zyh1LGUpO3UrKyl7dmFyIGw9byh1KzEsQik7cy5wdXNoKEMoYSxsLHIpKX1yZXR1cm4gdChlKT9zOm4ocyl9fWZ1bmN0aW9uIHcoQSxlLHQpe2Zvcih2YXIgbj1BLnZhbHVlT2YoKSxpPWUudmFsdWVPZigpLHI9W10sbz0wO288aS5sZW5ndGg7KytvKXIucHVzaChDKG4saVtvXSx0KSk7cmV0dXJuIHJ9ZnVuY3Rpb24gQyhBLGUsbil7dmFyIG89Z24oQSksZz1vLmxlbmd0aDtpZigwPT09Zyl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBjYWxjdWxhdGUgcXVhbnRpbGUgb2YgYW4gZW1wdHkgc2VxdWVuY2UiKTt2YXIgRSxRLHU9dChlKT9lKihnLTEpOmUudGltZXMoZy0xKSxsPXQoZSk/TWF0aC5mbG9vcih1KTp1LmZsb29yKCkudG9OdW1iZXIoKSxoPXQoZSk/dSUxOnUubWludXMobCk7aWYoYyh1KSlyZXR1cm4gbj9vW3VdOmEobyx0KGUpP3U6dS52YWx1ZU9mKCkpO2lmKG4pRT1vW2xdLFE9b1tsKzFdO2Vsc2V7UT1hKG8sbCsxKSxFPW9bbF07Zm9yKHZhciB3PTA7dzxsOysrdylCKG9bd10sRSk+MCYmKEU9b1t3XSl9cmV0dXJuIGkocyhFLHIoMSxoKSkscyhRLGgpKX19KSksUEU9cEEoInN0ZCIsWyJ0eXBlZCIsIm1hcCIsInNxcnQiLCJ2YXJpYW5jZSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXAsbj1BLnNxcnQsaT1BLnZhcmlhbmNlO3JldHVybiBlKCJzdGQiLHsiQXJyYXkgfCBNYXRyaXgiOnIsIkFycmF5IHwgTWF0cml4LCBzdHJpbmciOnIsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOnIsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIsIHN0cmluZyI6ciwiLi4uIjpmdW5jdGlvbihBKXtyZXR1cm4gcihBKX19KTtmdW5jdGlvbiByKEEsZSl7aWYoMD09PUEubGVuZ3RoKXRocm93IG5ldyBTeW50YXhFcnJvcigiRnVuY3Rpb24gc3RkIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcmFtZXRlcnMgKDAgcHJvdmlkZWQpIik7dHJ5e3ZhciByPWkuYXBwbHkobnVsbCxhcmd1bWVudHMpO3JldHVybiBFKHIpP3QocixuKTpuKHIpfWNhdGNoKEEpe3Rocm93IEEgaW5zdGFuY2VvZiBUeXBlRXJyb3ImJi0xIT09QS5tZXNzYWdlLmluZGV4T2YoIiB2YXJpYW5jZSIpP25ldyBUeXBlRXJyb3IoQS5tZXNzYWdlLnJlcGxhY2UoIiB2YXJpYW5jZSIsIiBzdGQiKSk6QX19fSkpLE9FPXBBKCJjb3JyIixbInR5cGVkIiwibWF0cml4IiwibWVhbiIsInNxcnQiLCJzdW0iLCJhZGQiLCJzdWJ0cmFjdCIsIm11bHRpcGx5IiwicG93IiwiZGl2aWRlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuc3FydCxpPUEuc3VtLHI9QS5hZGQsbz1BLnN1YnRyYWN0LHM9QS5tdWx0aXBseSxhPUEucG93LEI9QS5kaXZpZGU7cmV0dXJuIGUoImNvcnIiLHsiQXJyYXksIEFycmF5IjpmdW5jdGlvbihBLGUpe3JldHVybiBjKEEsZSl9LCJNYXRyaXgsIE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXt2YXIgbj1jKEEudG9BcnJheSgpLGUudG9BcnJheSgpKTtyZXR1cm4gQXJyYXkuaXNBcnJheShuKT90KG4pOm59fSk7ZnVuY3Rpb24gYyhBLGUpe3ZhciB0PVtdO2lmKEFycmF5LmlzQXJyYXkoQVswXSkmJkFycmF5LmlzQXJyYXkoZVswXSkpe2lmKEEubGVuZ3RoIT09ZS5sZW5ndGgpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2guIEFycmF5IEEgYW5kIEIgbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aC4iKTtmb3IodmFyIG49MDtuPEEubGVuZ3RoO24rKyl7aWYoQVtuXS5sZW5ndGghPT1lW25dLmxlbmd0aCl0aHJvdyBuZXcgU3ludGF4RXJyb3IoIkRpbWVuc2lvbiBtaXNtYXRjaC4gQXJyYXkgQSBhbmQgQiBtdXN0IGhhdmUgdGhlIHNhbWUgbnVtYmVyIG9mIGVsZW1lbnRzLiIpO3QucHVzaChnKEFbbl0sZVtuXSkpfXJldHVybiB0fWlmKEEubGVuZ3RoIT09ZS5sZW5ndGgpdGhyb3cgbmV3IFN5bnRheEVycm9yKCJEaW1lbnNpb24gbWlzbWF0Y2guIEFycmF5IEEgYW5kIEIgbXVzdCBoYXZlIHRoZSBzYW1lIG51bWJlciBvZiBlbGVtZW50cy4iKTtyZXR1cm4gZyhBLGUpfWZ1bmN0aW9uIGcoQSxlKXt2YXIgdD1BLmxlbmd0aCxjPWkoQSksZz1pKGUpLEU9QS5yZWR1Y2UoKGZ1bmN0aW9uKEEsdCxuKXtyZXR1cm4gcihBLHModCxlW25dKSl9KSwwKSxRPWkoQS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBhKEEsMil9KSkpLHU9aShlLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIGEoQSwyKX0pKSksbD1vKHModCxFKSxzKGMsZykpLGg9bihzKG8ocyh0LFEpLGEoYywyKSksbyhzKHQsdSksYShnLDIpKSkpO3JldHVybiBCKGwsaCl9fSkpO2Z1bmN0aW9uIFZFKEEsZSl7aWYoZTxBKXJldHVybiAxO2lmKGU9PT1BKXJldHVybiBlO3ZhciB0PWUrQT4+MTtyZXR1cm4gVkUoQSx0KSpWRSh0KzEsZSl9ZnVuY3Rpb24gV0UoQSxlKXtpZighVihBKXx8QTwwKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvc2l0aXZlIGludGVnZXIgdmFsdWUgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gY29tYmluYXRpb25zIik7aWYoIVYoZSl8fGU8MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJQb3NpdGl2ZSBpbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGNvbWJpbmF0aW9ucyIpO2lmKGU+QSl0aHJvdyBuZXcgVHlwZUVycm9yKCJrIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIG4iKTtmb3IodmFyIHQ9QS1lLG49MSxpPTIscj1lPHQ/ZTp0LG89ZTx0P3QrMTplKzE7bzw9QTsrK28pZm9yKG4qPW87aTw9ciYmbiVpPT0wOyluLz1pLCsraTtyZXR1cm4gaTw9ciYmKG4vPVZFKGkscikpLG59V0Uuc2lnbmF0dXJlPSJudW1iZXIsIG51bWJlciI7dmFyIEtFPSJjb21iaW5hdGlvbnMiLFhFPXBBKEtFLFsidHlwZWQiXSwoZnVuY3Rpb24oQSl7cmV0dXJuKDAsQS50eXBlZCkoS0UseyJudW1iZXIsIG51bWJlciI6V0UsIkJpZ051bWJlciwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe3ZhciB0LG4saT1BLmNvbnN0cnVjdG9yLHI9QS5taW51cyhlKSxvPW5ldyBpKDEpO2lmKCFaRShBKXx8IVpFKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvc2l0aXZlIGludGVnZXIgdmFsdWUgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gY29tYmluYXRpb25zIik7aWYoZS5ndChBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJrIG11c3QgYmUgbGVzcyB0aGFuIG4gaW4gZnVuY3Rpb24gY29tYmluYXRpb25zIik7aWYodD1vLGUubHQocikpZm9yKG49bztuLmx0ZShyKTtuPW4ucGx1cyhvKSl0PXQudGltZXMoZS5wbHVzKG4pKS5kaXZpZGVkQnkobik7ZWxzZSBmb3Iobj1vO24ubHRlKGUpO249bi5wbHVzKG8pKXQ9dC50aW1lcyhyLnBsdXMobikpLmRpdmlkZWRCeShuKTtyZXR1cm4gdH19KX0pKTtmdW5jdGlvbiBaRShBKXtyZXR1cm4gQS5pc0ludGVnZXIoKSYmQS5ndGUoMCl9dmFyIF9FPSJjb21iaW5hdGlvbnNXaXRoUmVwIixxRT1wQShfRSxbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3JldHVybigwLEEudHlwZWQpKF9FLHsibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7aWYoIVYoQSl8fEE8MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJQb3NpdGl2ZSBpbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGNvbWJpbmF0aW9uc1dpdGhSZXAiKTtpZighVihlKXx8ZTwwKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvc2l0aXZlIGludGVnZXIgdmFsdWUgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gY29tYmluYXRpb25zV2l0aFJlcCIpO2lmKEE8MSl0aHJvdyBuZXcgVHlwZUVycm9yKCJrIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIG4gKyBrIC0gMSIpO3JldHVybiBlPEEtMT9WRShBLEErZS0xKS9WRSgxLGUpOlZFKGUrMSxBK2UtMSkvVkUoMSxBLTEpfSwiQmlnTnVtYmVyLCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpPW5ldygwLEEuY29uc3RydWN0b3IpKDEpLHI9QS5taW51cyhpKTtpZighJEUoQSl8fCEkRShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJQb3NpdGl2ZSBpbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGNvbWJpbmF0aW9uc1dpdGhSZXAiKTtpZihBLmx0KGkpKXRocm93IG5ldyBUeXBlRXJyb3IoImsgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gbiArIGsgLSAxIGluIGZ1bmN0aW9uIGNvbWJpbmF0aW9uc1dpdGhSZXAiKTtpZih0PWksZS5sdChyKSlmb3Iobj1pO24ubHRlKHIpO249bi5wbHVzKGkpKXQ9dC50aW1lcyhlLnBsdXMobikpLmRpdmlkZWRCeShuKTtlbHNlIGZvcihuPWk7bi5sdGUoZSk7bj1uLnBsdXMoaSkpdD10LnRpbWVzKHIucGx1cyhuKSkuZGl2aWRlZEJ5KG4pO3JldHVybiB0fX0pfSkpO2Z1bmN0aW9uICRFKEEpe3JldHVybiBBLmlzSW50ZWdlcigpJiZBLmd0ZSgwKX1mdW5jdGlvbiBBUShBKXt2YXIgZTtpZihWKEEpKXJldHVybiBBPD0wP2lzRmluaXRlKEEpPzEvMDpOYU46QT4xNzE/MS8wOlZFKDEsQS0xKTtpZihBPC41KXJldHVybiBNYXRoLlBJLyhNYXRoLnNpbihNYXRoLlBJKkEpKkFRKDEtQSkpO2lmKEE+PTE3MS4zNSlyZXR1cm4gMS8wO2lmKEE+ODUpe3ZhciB0PUEqQSxuPXQqQSxpPW4qQSxyPWkqQTtyZXR1cm4gTWF0aC5zcXJ0KDIqTWF0aC5QSS9BKSpNYXRoLnBvdyhBL01hdGguRSxBKSooMSsxLygxMipBKSsxLygyODgqdCktMTM5Lyg1MTg0MCpuKS01NzEvKDI0ODgzMjAqaSkrMTYzODc5LygyMDkwMTg4ODAqcikrNTI0NjgxOS8oNzUyNDY3OTY4MDAqcipBKSl9LS1BLGU9dFFbMF07Zm9yKHZhciBvPTE7bzx0US5sZW5ndGg7KytvKWUrPXRRW29dLyhBK28pO3ZhciBzPUErZVErLjU7cmV0dXJuIE1hdGguc3FydCgyKk1hdGguUEkpKk1hdGgucG93KHMsQSsuNSkqTWF0aC5leHAoLXMpKmV9QVEuc2lnbmF0dXJlPSJudW1iZXIiO3ZhciBlUT00Ljc0MjE4NzUsdFE9Wy45OTk5OTk5OTk5OTk5OTcxLDU3LjE1NjIzNTY2NTg2MjkyLC01OS41OTc5NjAzNTU0NzU0OSwxNC4xMzYwOTc5NzQ3NDE3NDYsLS40OTE5MTM4MTYwOTc2MjAyLDMzOTk0NjQ5OTg0ODExODllLTIwLDQ2NTIzNjI4OTI3MDQ4NThlLTIwLC05ODM3NDQ3NTMwNDg3OTU2ZS0yMCwuMDAwMTU4MDg4NzAzMjI0OTEyNSwtLjAwMDIxMDI2NDQ0MTcyNDEwNDg4LC4wMDAyMTc0Mzk2MTgxMTUyMTI2NSwtLjAwMDE2NDMxODEwNjUzNjc2MzksODQ0MTgyMjM5ODM4NTI3NWUtMjAsLTI2MTkwODM4NDAxNTgxNDA4ZS0yMSwzNjg5OTE4MjY1OTUzMTYyNWUtMjJdLG5RPS45MTg5Mzg1MzMyMDQ2NzI4LGlRPVsxLjAwMDAwMDAwMDE5MDAxNSw3Ni4xODAwOTE3Mjk0NzE0NiwtODYuNTA1MzIwMzI5NDE2NzgsMjQuMDE0MDk4MjQwODMwOTEsLTEuMjMxNzM5NTcyNDUwMTU1LC4wMDEyMDg2NTA5NzM4NjYxNzksLTUzOTUyMzkzODQ5NTNlLTE4XTtmdW5jdGlvbiByUShBKXtpZihBPDApcmV0dXJuIE5hTjtpZigwPT09QSlyZXR1cm4gMS8wO2lmKCFpc0Zpbml0ZShBKSlyZXR1cm4gQTtpZihBPC41KXJldHVybiBNYXRoLmxvZyhNYXRoLlBJL01hdGguc2luKE1hdGguUEkqQSkpLXJRKDEtQSk7Zm9yKHZhciBlPTUrKEEtPTEpKy41LHQ9aVFbMF0sbj02O24+PTE7bi0tKXQrPWlRW25dLyhBK24pO3JldHVybiBuUSsoQSsuNSkqTWF0aC5sb2coZSktZStNYXRoLmxvZyh0KX1yUS5zaWduYXR1cmU9Im51bWJlciI7dmFyIG9RPXBBKCJnYW1tYSIsWyJ0eXBlZCIsImNvbmZpZyIsIm11bHRpcGx5U2NhbGFyIiwicG93IiwiQmlnTnVtYmVyIiwiQ29tcGxleCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5jb25maWcsbj0oQS5tdWx0aXBseVNjYWxhcixBLnBvdyxBLkJpZ051bWJlciksaT1BLkNvbXBsZXg7cmV0dXJuIGUoImdhbW1hIix7bnVtYmVyOkFRLENvbXBsZXg6ZnVuY3Rpb24gQShlKXtpZigwPT09ZS5pbSlyZXR1cm4gQVEoZS5yZSk7aWYoZS5yZTwuNSl7dmFyIHQ9bmV3IGkoMS1lLnJlLC1lLmltKSxuPW5ldyBpKE1hdGguUEkqZS5yZSxNYXRoLlBJKmUuaW0pO3JldHVybiBuZXcgaShNYXRoLlBJKS5kaXYobi5zaW4oKSkuZGl2KEEodCkpfWU9bmV3IGkoZS5yZS0xLGUuaW0pO2Zvcih2YXIgcj1uZXcgaSh0UVswXSwwKSxvPTE7bzx0US5sZW5ndGg7KytvKXt2YXIgcz1uZXcgaSh0UVtvXSwwKTtyPXIuYWRkKHMuZGl2KGUuYWRkKG8pKSl9dmFyIGE9bmV3IGkoZS5yZStlUSsuNSxlLmltKSxCPU1hdGguc3FydCgyKk1hdGguUEkpLGM9YS5wb3coZS5hZGQoLjUpKSxnPWEubmVnKCkuZXhwKCk7cmV0dXJuIHIubXVsKEIpLm11bChjKS5tdWwoZyl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtpZihBLmlzSW50ZWdlcigpKXJldHVybiBBLmlzTmVnYXRpdmUoKXx8QS5pc1plcm8oKT9uZXcgbigxLzApOmZ1bmN0aW9uIEEoZSl7aWYoZTw4KXJldHVybiBuZXcgbihbMSwxLDIsNiwyNCwxMjAsNzIwLDUwNDBdW2VdKTt2YXIgaT10LnByZWNpc2lvbisoMHxNYXRoLmxvZyhlLnRvTnVtYmVyKCkpKSxyPW4uY2xvbmUoe3ByZWNpc2lvbjppfSk7aWYoZSUyPT0xKXJldHVybiBlLnRpbWVzKEEobmV3IG4oZS0xKSkpO2Zvcih2YXIgbz1lLHM9bmV3IHIoZSksYT1lLnRvTnVtYmVyKCk7bz4yOylhKz1vLT0yLHM9cy50aW1lcyhhKTtyZXR1cm4gbmV3IG4ocy50b1ByZWNpc2lvbihuLnByZWNpc2lvbikpfShBLm1pbnVzKDEpKTtpZighQS5pc0Zpbml0ZSgpKXJldHVybiBuZXcgbihBLmlzTmVnYXRpdmUoKT9OYU46MS8wKTt0aHJvdyBuZXcgRXJyb3IoIkludGVnZXIgQmlnTnVtYmVyIGV4cGVjdGVkIil9fSl9KSksc1E9cEEoImxnYW1tYSIsWyJDb21wbGV4IiwidHlwZWQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5Db21wbGV4LHQ9QS50eXBlZCxuPVstLjAyOTU1MDY1MzU5NDc3MTI0MiwuMDA2NDEwMjU2NDEwMjU2NDEsLS4wMDE5MTc1MjY5MTc1MjY5MTc2LC4wMDA4NDE3NTA4NDE3NTA4NDE3LC0uMDAwNTk1MjM4MDk1MjM4MDk1MywuMDAwNzkzNjUwNzkzNjUwNzkzNywtLjAwMjc3Nzc3Nzc3Nzc3Nzc3OCwuMDgzMzMzMzMzMzMzMzMzMzNdO3JldHVybiB0KCJsZ2FtbWEiLHtudW1iZXI6clEsQ29tcGxleDpmdW5jdGlvbiBBKHQpe2lmKHQuaXNOYU4oKSlyZXR1cm4gbmV3IGUoTmFOLE5hTik7aWYoMD09PXQuaW0pcmV0dXJuIG5ldyBlKHJRKHQucmUpLDApO2lmKHQucmU+PTd8fE1hdGguYWJzKHQuaW0pPj03KXJldHVybiBpKHQpO2lmKHQucmU8PS4xKXt2YXIgbj0oYT02LjI4MzE4NTMwNzE3OTU4NiwoITBeKChCPXQuaW0pPjB8fCEoQjwwKSYmMS9CPT0xLzApPy1hOmEpKk1hdGguZmxvb3IoLjUqdC5yZSsuMjUpKSxvPXQubXVsKE1hdGguUEkpLnNpbigpLmxvZygpLHM9QShuZXcgZSgxLXQucmUsLXQuaW0pKTtyZXR1cm4gbmV3IGUoMS4xNDQ3Mjk4ODU4NDk0MDAyLG4pLnN1YihvKS5zdWIocyl9cmV0dXJuIHQuaW0+PTA/cih0KTpyKHQuY29uanVnYXRlKCkpLmNvbmp1Z2F0ZSgpO3ZhciBhLEJ9LEJpZ051bWJlcjpmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigibWF0aGpzIGRvZXNuJ3QgeWV0IHByb3ZpZGUgYW4gaW1wbGVtZW50YXRpb24gb2YgdGhlIGFsZ29yaXRobSBsZ2FtbWEgZm9yIEJpZ051bWJlciIpfX0pO2Z1bmN0aW9uIGkoQSl7Zm9yKHZhciB0PUEuc3ViKC41KS5tdWwoQS5sb2coKSkuc3ViKEEpLmFkZChuUSksaT1uZXcgZSgxLDApLmRpdihBKSxyPWkuZGl2KEEpLG89blswXSxzPW5bMV0sYT0yKnIucmUsQj1yLnJlKnIucmUrci5pbSpyLmltLGM9MjtjPDg7YysrKXt2YXIgZz1zO3M9LUIqbytuW2NdLG89YSpvK2d9dmFyIEU9aS5tdWwoci5tdWwobykuYWRkKHMpKTtyZXR1cm4gdC5hZGQoRSl9ZnVuY3Rpb24gcihBKXt2YXIgdD0wLG49MCxyPUE7Zm9yKEE9QS5hZGQoMSk7QS5yZTw9Nzspe3ZhciBvPShyPXIubXVsKEEpKS5pbTwwPzE6MDswIT09byYmMD09PW4mJnQrKyxuPW8sQT1BLmFkZCgxKX1yZXR1cm4gaShBKS5zdWIoci5sb2coKSkuc3ViKG5ldyBlKDAsMip0Kk1hdGguUEkqMSkpfX0pKSxhUT0iZmFjdG9yaWFsIixCUT1wQShhUSxbInR5cGVkIiwiZ2FtbWEiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuZ2FtbWE7cmV0dXJuIGUoYVEse251bWJlcjpmdW5jdGlvbihBKXtpZihBPDApdGhyb3cgbmV3IEVycm9yKCJWYWx1ZSBtdXN0IGJlIG5vbi1uZWdhdGl2ZSIpO3JldHVybiB0KEErMSl9LEJpZ051bWJlcjpmdW5jdGlvbihBKXtpZihBLmlzTmVnYXRpdmUoKSl0aHJvdyBuZXcgRXJyb3IoIlZhbHVlIG11c3QgYmUgbm9uLW5lZ2F0aXZlIik7cmV0dXJuIHQoQS5wbHVzKDEpKX0sIkFycmF5IHwgTWF0cml4IjplLnJlZmVyVG9TZWxmKChmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEduKGUsQSl9fSkpfSl9KSksY1E9ImtsZGl2ZXJnZW5jZSIsZ1E9cEEoY1EsWyJ0eXBlZCIsIm1hdHJpeCIsImRpdmlkZSIsInN1bSIsIm11bHRpcGx5IiwibWFwIiwiZG90RGl2aWRlIiwibG9nIiwiaXNOdW1lcmljIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuZGl2aWRlLGk9QS5zdW0scj1BLm11bHRpcGx5LG89QS5tYXAscz1BLmRvdERpdmlkZSxhPUEubG9nLEI9QS5pc051bWVyaWM7cmV0dXJuIGUoY1EseyJBcnJheSwgQXJyYXkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGModChBKSx0KGUpKX0sIk1hdHJpeCwgQXJyYXkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGMoQSx0KGUpKX0sIkFycmF5LCBNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGModChBKSxlKX0sIk1hdHJpeCwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3JldHVybiBjKEEsZSl9fSk7ZnVuY3Rpb24gYyhBLGUpe3ZhciB0PWUuc2l6ZSgpLmxlbmd0aCxjPUEuc2l6ZSgpLmxlbmd0aDtpZih0PjEpdGhyb3cgbmV3IEVycm9yKCJmaXJzdCBvYmplY3QgbXVzdCBiZSBvbmUgZGltZW5zaW9uYWwiKTtpZihjPjEpdGhyb3cgbmV3IEVycm9yKCJzZWNvbmQgb2JqZWN0IG11c3QgYmUgb25lIGRpbWVuc2lvbmFsIik7aWYodCE9PWMpdGhyb3cgbmV3IEVycm9yKCJMZW5ndGggb2YgdHdvIHZlY3RvcnMgbXVzdCBiZSBlcXVhbCIpO2lmKDA9PT1pKEEpKXRocm93IG5ldyBFcnJvcigiU3VtIG9mIGVsZW1lbnRzIGluIGZpcnN0IG9iamVjdCBtdXN0IGJlIG5vbiB6ZXJvIik7aWYoMD09PWkoZSkpdGhyb3cgbmV3IEVycm9yKCJTdW0gb2YgZWxlbWVudHMgaW4gc2Vjb25kIG9iamVjdCBtdXN0IGJlIG5vbiB6ZXJvIik7dmFyIGc9bihBLGkoQSkpLEU9bihlLGkoZSkpLFE9aShyKGcsbyhzKGcsRSksKGZ1bmN0aW9uKEEpe3JldHVybiBhKEEpfSkpKSk7cmV0dXJuIEIoUSk/UTpOdW1iZXIuTmFOfX0pKSxFUT0ibXVsdGlub21pYWwiLFFRPXBBKEVRLFsidHlwZWQiLCJhZGQiLCJkaXZpZGUiLCJtdWx0aXBseSIsImZhY3RvcmlhbCIsImlzSW50ZWdlciIsImlzUG9zaXRpdmUiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuYWRkLG49QS5kaXZpZGUsaT1BLm11bHRpcGx5LHI9QS5mYWN0b3JpYWwsbz1BLmlzSW50ZWdlcixzPUEuaXNQb3NpdGl2ZTtyZXR1cm4gZShFUSx7IkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXt2YXIgZT0wLGE9MTtyZXR1cm4gUm4oQSwoZnVuY3Rpb24oQSl7aWYoIW8oQSl8fCFzKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvc2l0aXZlIGludGVnZXIgdmFsdWUgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gbXVsdGlub21pYWwiKTtlPXQoZSxBKSxhPWkoYSxyKEEpKX0pKSxuKHIoZSksYSl9fSl9KSksdVE9InBlcm11dGF0aW9ucyIsbFE9cEEodVEsWyJ0eXBlZCIsImZhY3RvcmlhbCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5mYWN0b3JpYWw7cmV0dXJuIGUodVEseyJudW1iZXIgfCBCaWdOdW1iZXIiOnQsIm51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe2lmKCFWKEEpfHxBPDApdGhyb3cgbmV3IFR5cGVFcnJvcigiUG9zaXRpdmUgaW50ZWdlciB2YWx1ZSBleHBlY3RlZCBpbiBmdW5jdGlvbiBwZXJtdXRhdGlvbnMiKTtpZighVihlKXx8ZTwwKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvc2l0aXZlIGludGVnZXIgdmFsdWUgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gcGVybXV0YXRpb25zIik7aWYoZT5BKXRocm93IG5ldyBUeXBlRXJyb3IoInNlY29uZCBhcmd1bWVudCBrIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIGZpcnN0IGFyZ3VtZW50IG4iKTtyZXR1cm4gVkUoQS1lKzEsQSl9LCJCaWdOdW1iZXIsIEJpZ051bWJlciI6ZnVuY3Rpb24oQSxlKXt2YXIgdCxuO2lmKCFoUShBKXx8IWhRKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIlBvc2l0aXZlIGludGVnZXIgdmFsdWUgZXhwZWN0ZWQgaW4gZnVuY3Rpb24gcGVybXV0YXRpb25zIik7aWYoZS5ndChBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJzZWNvbmQgYXJndW1lbnQgayBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byBmaXJzdCBhcmd1bWVudCBuIik7Zm9yKHQ9QS5tdWwoMCkuYWRkKDEpLG49QS5taW51cyhlKS5wbHVzKDEpO24ubHRlKEEpO249bi5wbHVzKDEpKXQ9dC50aW1lcyhuKTtyZXR1cm4gdH19KX0pKTtmdW5jdGlvbiBoUShBKXtyZXR1cm4gQS5pc0ludGVnZXIoKSYmQS5ndGUoMCl9bigyMjI3KTt2YXIgd1E9big2Mzc3KSxDUT13UShEYXRlLm5vdygpKTtmdW5jdGlvbiBJUShBKXt2YXIgZSx0O3JldHVybiBlPW51bGw9PT0odD1BKT9DUTp3UShTdHJpbmcodCkpLGZ1bmN0aW9uKCl7cmV0dXJuIGUoKX19dmFyIE1RPSJwaWNrUmFuZG9tIixkUT1wQShNUSxbInR5cGVkIiwiY29uZmlnIiwiP29uIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsbj1BLmNvbmZpZyxpPUEub24scj1JUShuLnJhbmRvbVNlZWQpO3JldHVybiBpJiZpKCJjb25maWciLChmdW5jdGlvbihBLGUpe0EucmFuZG9tU2VlZCE9PWUucmFuZG9tU2VlZCYmKHI9SVEoQS5yYW5kb21TZWVkKSl9KSksZShNUSx7IkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gbyhBLHt9KX0sIkFycmF5IHwgTWF0cml4LCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSxlKX0sIkFycmF5IHwgTWF0cml4LCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSx7bnVtYmVyOmV9KX0sIkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbyhBLHt3ZWlnaHRzOmV9KX0sIkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCwgbnVtYmVyIjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIG8oQSx7bnVtYmVyOnQsd2VpZ2h0czplfSl9LCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyLCBBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBvKEEse251bWJlcjplLHdlaWdodHM6dH0pfX0pO2Z1bmN0aW9uIG8oQSxlKXt2YXIgbj1lLm51bWJlcixpPWUud2VpZ2h0cyxvPWUuZWxlbWVudFdpc2Uscz12b2lkIDA9PT1vfHxvLGE9dm9pZCAwPT09bjthJiYobj0xKTt2YXIgQj1nKEEpP0EuY3JlYXRlOmcoaSk/aS5jcmVhdGU6bnVsbDtBPUEudmFsdWVPZigpLGkmJihpPWkudmFsdWVPZigpKSwhMD09PXMmJihBPWduKEEpLGk9Z24oaSkpO3ZhciBjPTA7aWYodm9pZCAwIT09aSl7aWYoaS5sZW5ndGghPT1BLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIldlaWdodHMgbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCBhcyBwb3NzaWJsZXMiKTtmb3IodmFyIEU9MCxRPWkubGVuZ3RoO0U8UTtFKyspe2lmKCF0KGlbRV0pfHxpW0VdPDApdGhyb3cgbmV3IEVycm9yKCJXZWlnaHRzIG11c3QgYmUgYW4gYXJyYXkgb2YgcG9zaXRpdmUgbnVtYmVycyIpO2MrPWlbRV19fWZvcih2YXIgdSxsPUEubGVuZ3RoLGg9W107aC5sZW5ndGg8bjspe2lmKHZvaWQgMD09PWkpdT1BW01hdGguZmxvb3IocigpKmwpXTtlbHNlIGZvcih2YXIgdz1yKCkqYyxDPTAsST1BLmxlbmd0aDtDPEk7QysrKWlmKCh3LT1pW0NdKTwwKXt1PUFbQ107YnJlYWt9aC5wdXNoKHUpfXJldHVybiBhP2hbMF06Qj9CKGgpOmh9fSkpO2Z1bmN0aW9uIHBRKEEsZSl7dmFyIHQ9W107aWYoKEE9QS5zbGljZSgwKSkubGVuZ3RoPjEpZm9yKHZhciBuPTAsaT1BLnNoaWZ0KCk7bjxpO24rKyl0LnB1c2gocFEoQSxlKSk7ZWxzZSBmb3IodmFyIHI9MCxvPUEuc2hpZnQoKTtyPG87cisrKXQucHVzaChlKCkpO3JldHVybiB0fXZhciBtUT1wQSgicmFuZG9tIixbInR5cGVkIiwiY29uZmlnIiwiP29uIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEub24saT1JUSh0LnJhbmRvbVNlZWQpO3JldHVybiBuJiZuKCJjb25maWciLChmdW5jdGlvbihBLGUpe0EucmFuZG9tU2VlZCE9PWUucmFuZG9tU2VlZCYmKGk9SVEoQS5yYW5kb21TZWVkKSl9KSksZSgicmFuZG9tIix7IiI6ZnVuY3Rpb24oKXtyZXR1cm4gbygwLDEpfSxudW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIG8oMCxBKX0sIm51bWJlciwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiBvKEEsZSl9LCJBcnJheSB8IE1hdHJpeCI6ZnVuY3Rpb24oQSl7cmV0dXJuIHIoQSwwLDEpfSwiQXJyYXkgfCBNYXRyaXgsIG51bWJlciI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcihBLDAsZSl9LCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gcihBLGUsdCl9fSk7ZnVuY3Rpb24gcihBLGUsdCl7dmFyIG49cFEoQS52YWx1ZU9mKCksKGZ1bmN0aW9uKCl7cmV0dXJuIG8oZSx0KX0pKTtyZXR1cm4gZyhBKT9BLmNyZWF0ZShuKTpufWZ1bmN0aW9uIG8oQSxlKXtyZXR1cm4gQStpKCkqKGUtQSl9fSkpLEZRPSJyYW5kb21JbnQiLERRPXBBKEZRLFsidHlwZWQiLCJjb25maWciLCI/b24iXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5vbixpPUlRKHQucmFuZG9tU2VlZCk7cmV0dXJuIG4mJm4oImNvbmZpZyIsKGZ1bmN0aW9uKEEsZSl7QS5yYW5kb21TZWVkIT09ZS5yYW5kb21TZWVkJiYoaT1JUShBLnJhbmRvbVNlZWQpKX0pKSxlKEZRLHsiIjpmdW5jdGlvbigpe3JldHVybiBvKDAsMSl9LG51bWJlcjpmdW5jdGlvbihBKXtyZXR1cm4gbygwLEEpfSwibnVtYmVyLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSxlKX0sIkFycmF5IHwgTWF0cml4IjpmdW5jdGlvbihBKXtyZXR1cm4gcihBLDAsMSl9LCJBcnJheSB8IE1hdHJpeCwgbnVtYmVyIjpmdW5jdGlvbihBLGUpe3JldHVybiByKEEsMCxlKX0sIkFycmF5IHwgTWF0cml4LCBudW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiByKEEsZSx0KX19KTtmdW5jdGlvbiByKEEsZSx0KXt2YXIgbj1wUShBLnZhbHVlT2YoKSwoZnVuY3Rpb24oKXtyZXR1cm4gbyhlLHQpfSkpO3JldHVybiBnKEEpP0EuY3JlYXRlKG4pOm59ZnVuY3Rpb24gbyhBLGUpe3JldHVybiBNYXRoLmZsb29yKEEraSgpKihlLUEpKX19KSksWVE9InN0aXJsaW5nUzIiLGZRPXBBKFlRLFsidHlwZWQiLCJhZGRTY2FsYXIiLCJzdWJ0cmFjdFNjYWxhciIsIm11bHRpcGx5U2NhbGFyIiwiZGl2aWRlU2NhbGFyIiwicG93IiwiZmFjdG9yaWFsIiwiY29tYmluYXRpb25zIiwiaXNOZWdhdGl2ZSIsImlzSW50ZWdlciIsIm51bWJlciIsIj9iaWdudW1iZXIiLCJsYXJnZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCxuPUEuYWRkU2NhbGFyLGk9KEEuc3VidHJhY3RTY2FsYXIsQS5tdWx0aXBseVNjYWxhcikscj0oQS5kaXZpZGVTY2FsYXIsQS5wb3csQS5mYWN0b3JpYWwsQS5jb21iaW5hdGlvbnMsQS5pc05lZ2F0aXZlKSxvPUEuaXNJbnRlZ2VyLHM9QS5udW1iZXIsYT1BLmJpZ251bWJlcixCPUEubGFyZ2VyLGM9W10sZz1bXTtyZXR1cm4gZShZUSx7Im51bWJlciB8IEJpZ051bWJlciwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe2lmKCFvKEEpfHxyKEEpfHwhbyhlKXx8cihlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJOb24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSBleHBlY3RlZCBpbiBmdW5jdGlvbiBzdGlybGluZ1MyIik7aWYoQihlLEEpKXRocm93IG5ldyBUeXBlRXJyb3IoImsgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gbiBpbiBmdW5jdGlvbiBzdGlybGluZ1MyIik7dmFyIEU9ISh0KEEpJiZ0KGUpKSxRPUU/ZzpjLHU9RT9hOnMsbD1zKEEpLGg9cyhlKTtpZihRW2xdJiZRW2xdLmxlbmd0aD5oKXJldHVybiBRW2xdW2hdO2Zvcih2YXIgdz0wO3c8PWw7Kyt3KWlmKFFbd118fChRW3ddPVt1KDA9PT13PzE6MCldKSwwIT09dylmb3IodmFyIEM9UVt3XSxJPVFbdy0xXSxNPUMubGVuZ3RoO008PXcmJk08PWg7KytNKUNbTV09TT09PXc/MTpuKGkodShNKSxJW01dKSxJW00tMV0pO3JldHVybiBRW2xdW2hdfX0pfSkpLE5RPSJiZWxsTnVtYmVycyIsVVE9cEEoTlEsWyJ0eXBlZCIsImFkZFNjYWxhciIsImlzTmVnYXRpdmUiLCJpc0ludGVnZXIiLCJzdGlybGluZ1MyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZFNjYWxhcixuPUEuaXNOZWdhdGl2ZSxpPUEuaXNJbnRlZ2VyLHI9QS5zdGlybGluZ1MyO3JldHVybiBlKE5RLHsibnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBKXtpZighaShBKXx8bihBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJOb24tbmVnYXRpdmUgaW50ZWdlciB2YWx1ZSBleHBlY3RlZCBpbiBmdW5jdGlvbiBiZWxsTnVtYmVycyIpO2Zvcih2YXIgZT0wLG89MDtvPD1BO28rKyllPXQoZSxyKEEsbykpO3JldHVybiBlfX0pfSkpLHlRPSJjYXRhbGFuIixUUT1wQSh5USxbInR5cGVkIiwiYWRkU2NhbGFyIiwiZGl2aWRlU2NhbGFyIiwibXVsdGlwbHlTY2FsYXIiLCJjb21iaW5hdGlvbnMiLCJpc05lZ2F0aXZlIiwiaXNJbnRlZ2VyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZFNjYWxhcixuPUEuZGl2aWRlU2NhbGFyLGk9QS5tdWx0aXBseVNjYWxhcixyPUEuY29tYmluYXRpb25zLG89QS5pc05lZ2F0aXZlLHM9QS5pc0ludGVnZXI7cmV0dXJuIGUoeVEseyJudW1iZXIgfCBCaWdOdW1iZXIiOmZ1bmN0aW9uKEEpe2lmKCFzKEEpfHxvKEEpKXRocm93IG5ldyBUeXBlRXJyb3IoIk5vbi1uZWdhdGl2ZSBpbnRlZ2VyIHZhbHVlIGV4cGVjdGVkIGluIGZ1bmN0aW9uIGNhdGFsYW4iKTtyZXR1cm4gbihyKGkoQSwyKSxBKSx0KEEsMSkpfX0pfSkpLHhRPSJjb21wb3NpdGlvbiIsUlE9cEEoeFEsWyJ0eXBlZCIsImFkZFNjYWxhciIsImNvbWJpbmF0aW9ucyIsImlzTmVnYXRpdmUiLCJpc1Bvc2l0aXZlIiwiaXNJbnRlZ2VyIiwibGFyZ2VyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZFNjYWxhcixuPUEuY29tYmluYXRpb25zLGk9QS5pc1Bvc2l0aXZlLHI9KEEuaXNOZWdhdGl2ZSxBLmlzSW50ZWdlciksbz1BLmxhcmdlcjtyZXR1cm4gZSh4USx7Im51bWJlciB8IEJpZ051bWJlciwgbnVtYmVyIHwgQmlnTnVtYmVyIjpmdW5jdGlvbihBLGUpe2lmKCEocihBKSYmaShBKSYmcihlKSYmaShlKSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiUG9zaXRpdmUgaW50ZWdlciB2YWx1ZSBleHBlY3RlZCBpbiBmdW5jdGlvbiBjb21wb3NpdGlvbiIpO2lmKG8oZSxBKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJrIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIG4gaW4gZnVuY3Rpb24gY29tcG9zaXRpb24iKTtyZXR1cm4gbih0KEEsLTEpLHQoZSwtMSkpfX0pfSkpLEdRPSJsZWFmQ291bnQiLFNRPXBBKEdRLFsicGFyc2UiLCJ0eXBlZCJdLChmdW5jdGlvbihBKXtyZXR1cm4gQS5wYXJzZSwoMCxBLnR5cGVkKShHUSx7Tm9kZTpmdW5jdGlvbihBKXtyZXR1cm4gZnVuY3Rpb24gQShlKXt2YXIgdD0wO3JldHVybiBlLmZvckVhY2goKGZ1bmN0aW9uKGUpe3QrPUEoZSl9KSksdHx8MX0oQSl9fSl9KSk7ZnVuY3Rpb24gYlEoQSl7cmV0dXJuIFQoQSl8fHYoQSkmJkEuaXNVbmFyeSgpJiZUKEEuYXJnc1swXSl9ZnVuY3Rpb24gSFEoQSl7cmV0dXJuISFUKEEpfHwhKCFHKEEpJiYhdihBKXx8IUEuYXJncy5ldmVyeShIUSkpfHwhKCFrKEEpfHwhSFEoQS5jb250ZW50KSl9ZnVuY3Rpb24gdlEoQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGtRKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP3ZRKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7SXIoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOnZRKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfW4oOTU4OCk7dmFyIGpRPXBBKCJzaW1wbGlmeVV0aWwiLFsiRnVuY3Rpb25Ob2RlIiwiT3BlcmF0b3JOb2RlIiwiU3ltYm9sTm9kZSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLkZ1bmN0aW9uTm9kZSx0PUEuT3BlcmF0b3JOb2RlLG49QS5TeW1ib2xOb2RlLGk9ITAscj0hMSxvPSJkZWZhdWx0RiIscz17YWRkOnt0cml2aWFsOmksdG90YWw6aSxjb21tdXRhdGl2ZTppLGFzc29jaWF0aXZlOml9LHVuYXJ5UGx1czp7dHJpdmlhbDppLHRvdGFsOmksY29tbXV0YXRpdmU6aSxhc3NvY2lhdGl2ZTppfSxzdWJ0cmFjdDp7dHJpdmlhbDpyLHRvdGFsOmksY29tbXV0YXRpdmU6cixhc3NvY2lhdGl2ZTpyfSxtdWx0aXBseTp7dHJpdmlhbDppLHRvdGFsOmksY29tbXV0YXRpdmU6aSxhc3NvY2lhdGl2ZTppfSxkaXZpZGU6e3RyaXZpYWw6cix0b3RhbDppLGNvbW11dGF0aXZlOnIsYXNzb2NpYXRpdmU6cn0scGFyZW46e3RyaXZpYWw6aSx0b3RhbDppLGNvbW11dGF0aXZlOmksYXNzb2NpYXRpdmU6cn0sZGVmYXVsdEY6e3RyaXZpYWw6cix0b3RhbDppLGNvbW11dGF0aXZlOnIsYXNzb2NpYXRpdmU6cn19O2Z1bmN0aW9uIGEoQSxlKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06cyxuPW87aWYoInN0cmluZyI9PXR5cGVvZiBBP249QTp2KEEpP249QS5mbi50b1N0cmluZygpOkcoQSk/bj1BLm5hbWU6ayhBKSYmKG49InBhcmVuIiksTUEodCxuKSl7dmFyIGk9dFtuXTtpZihNQShpLGUpKXJldHVybiBpW2VdO2lmKE1BKHMsbikpcmV0dXJuIHNbbl1bZV19aWYoTUEodCxvKSl7dmFyIHI9dFtvXTtyZXR1cm4gTUEocixlKT9yW2VdOnNbb11bZV19aWYoTUEocyxuKSl7dmFyIGE9c1tuXTtpZihNQShhLGUpKXJldHVybiBhW2VdfXJldHVybiBzW29dW2VdfWZ1bmN0aW9uIEIoQSl7cmV0dXJuIGEoQSwiYXNzb2NpYXRpdmUiLGFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpzKX1mdW5jdGlvbiBjKEEsZSl7dmFyIHQsbj1bXTtyZXR1cm4gQihBLGUpPyh0PUEub3AsZnVuY3Rpb24gQShlKXtmb3IodmFyIGk9MDtpPGUuYXJncy5sZW5ndGg7aSsrKXt2YXIgcj1lLmFyZ3NbaV07dihyKSYmdD09PXIub3A/QShyKTpuLnB1c2gocil9fShBKSxuKTpBLmFyZ3N9ZnVuY3Rpb24gZyhBKXtyZXR1cm4gdihBKT9mdW5jdGlvbihlKXt0cnl7cmV0dXJuIG5ldyB0KEEub3AsQS5mbixlLEEuaW1wbGljaXQpfWNhdGNoKEEpe3JldHVybiBjb25zb2xlLmVycm9yKEEpLFtdfX06ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBlKG5ldyBuKEEubmFtZSksdCl9fXJldHVybntjcmVhdGVNYWtlTm9kZUZ1bmN0aW9uOmcsaGFzUHJvcGVydHk6YSxpc0NvbW11dGF0aXZlOmZ1bmN0aW9uKEEpe3JldHVybiBhKEEsImNvbW11dGF0aXZlIixhcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06cyl9LGlzQXNzb2NpYXRpdmU6QixtZXJnZUNvbnRleHQ6ZnVuY3Rpb24oQSxlKXt2YXIgdD1rUSh7fSxBKTtmb3IodmFyIG4gaW4gZSlNQShBLG4pP3Rbbl09a1Eoa1Eoe30sZVtuXSksQVtuXSk6dFtuXT1lW25dO3JldHVybiB0fSxmbGF0dGVuOmZ1bmN0aW9uIEEoZSx0KXtpZighZS5hcmdzfHwwPT09ZS5hcmdzLmxlbmd0aClyZXR1cm4gZTtlLmFyZ3M9YyhlLHQpO2Zvcih2YXIgbj0wO248ZS5hcmdzLmxlbmd0aDtuKyspQShlLmFyZ3Nbbl0sdCl9LGFsbENoaWxkcmVuOmMsdW5mbGF0dGVucjpmdW5jdGlvbiBBKGUsdCl7aWYoZS5hcmdzJiYwIT09ZS5hcmdzLmxlbmd0aCl7Zm9yKHZhciBuPWcoZSksaT1lLmFyZ3MubGVuZ3RoLHI9MDtyPGk7cisrKUEoZS5hcmdzW3JdLHQpO2lmKGk+MiYmQihlLHQpKXtmb3IodmFyIG89ZS5hcmdzLnBvcCgpO2UuYXJncy5sZW5ndGg+MDspbz1uKFtlLmFyZ3MucG9wKCksb10pO2UuYXJncz1vLmFyZ3N9fX0sdW5mbGF0dGVubDpmdW5jdGlvbiBBKGUsdCl7aWYoZS5hcmdzJiYwIT09ZS5hcmdzLmxlbmd0aCl7Zm9yKHZhciBuPWcoZSksaT1lLmFyZ3MubGVuZ3RoLHI9MDtyPGk7cisrKUEoZS5hcmdzW3JdLHQpO2lmKGk+MiYmQihlLHQpKXtmb3IodmFyIG89ZS5hcmdzLnNoaWZ0KCk7ZS5hcmdzLmxlbmd0aD4wOylvPW4oW28sZS5hcmdzLnNoaWZ0KCldKTtlLmFyZ3M9by5hcmdzfX19LGRlZmF1bHRDb250ZXh0OnMscmVhbENvbnRleHQ6e2RpdmlkZTp7dG90YWw6cn0sbG9nOnt0b3RhbDpyfX0scG9zaXRpdmVDb250ZXh0OntzdWJ0cmFjdDp7dG90YWw6cn0sYWJzOnt0cml2aWFsOml9LGxvZzp7dG90YWw6aX19fX0pKSxKUT1wQSgic2ltcGxpZnkiLFsiY29uZmlnIiwidHlwZWQiLCJwYXJzZSIsImFkZCIsInN1YnRyYWN0IiwibXVsdGlwbHkiLCJkaXZpZGUiLCJwb3ciLCJpc1plcm8iLCJlcXVhbCIsInJlc29sdmUiLCJzaW1wbGlmeUNvbnN0YW50Iiwic2ltcGxpZnlDb3JlIiwiP2ZyYWN0aW9uIiwiP2JpZ251bWJlciIsIm1hdGhXaXRoVHJhbnNmb3JtIiwibWF0cml4IiwiQWNjZXNzb3JOb2RlIiwiQXJyYXlOb2RlIiwiQ29uc3RhbnROb2RlIiwiRnVuY3Rpb25Ob2RlIiwiSW5kZXhOb2RlIiwiT2JqZWN0Tm9kZSIsIk9wZXJhdG9yTm9kZSIsIlBhcmVudGhlc2lzTm9kZSIsIlN5bWJvbE5vZGUiXSwoZnVuY3Rpb24oQSl7QS5jb25maWc7dmFyIHQ9QS50eXBlZCxuPUEucGFyc2UsaT0oQS5hZGQsQS5zdWJ0cmFjdCxBLm11bHRpcGx5LEEuZGl2aWRlLEEucG93LEEuaXNaZXJvLEEuZXF1YWwpLHI9QS5yZXNvbHZlLG89QS5zaW1wbGlmeUNvbnN0YW50LHM9QS5zaW1wbGlmeUNvcmUsYT0oQS5mcmFjdGlvbixBLmJpZ251bWJlcixBLm1hdGhXaXRoVHJhbnNmb3JtLEEubWF0cml4LEEuQWNjZXNzb3JOb2RlKSxCPUEuQXJyYXlOb2RlLGM9QS5Db25zdGFudE5vZGUsZz1BLkZ1bmN0aW9uTm9kZSxFPUEuSW5kZXhOb2RlLFE9QS5PYmplY3ROb2RlLHU9QS5PcGVyYXRvck5vZGUsbD1BLlBhcmVudGhlc2lzTm9kZSxoPUEuU3ltYm9sTm9kZSx3PWpRKHtGdW5jdGlvbk5vZGU6ZyxPcGVyYXRvck5vZGU6dSxTeW1ib2xOb2RlOmh9KSxDPXcuaGFzUHJvcGVydHksST13LmlzQ29tbXV0YXRpdmUsTT13LmlzQXNzb2NpYXRpdmUsZD13Lm1lcmdlQ29udGV4dCxwPXcuZmxhdHRlbixtPXcudW5mbGF0dGVucixGPXcudW5mbGF0dGVubCxEPXcuY3JlYXRlTWFrZU5vZGVGdW5jdGlvbixZPXcuZGVmYXVsdENvbnRleHQsZj13LnJlYWxDb250ZXh0LE49dy5wb3NpdGl2ZUNvbnRleHQ7dC5hZGRDb252ZXJzaW9uKHtmcm9tOiJPYmplY3QiLHRvOiJNYXAiLGNvbnZlcnQ6akF9KTt2YXIgVT10KCJzaW1wbGlmeSIse05vZGU6YiwiTm9kZSwgTWFwIjpmdW5jdGlvbihBLGUpe3JldHVybiBiKEEsITEsZSl9LCJOb2RlLCBNYXAsIE9iamVjdCI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBiKEEsITEsZSx0KX0sIk5vZGUsIEFycmF5IjpiLCJOb2RlLCBBcnJheSwgTWFwIjpiLCJOb2RlLCBBcnJheSwgTWFwLCBPYmplY3QiOmJ9KTtmdW5jdGlvbiB5KEEpe3JldHVybiBBLnRyYW5zZm9ybSgoZnVuY3Rpb24oQSxlLHQpe3JldHVybiBrKEEpP3koQS5jb250ZW50KTpBfSkpfXQucmVtb3ZlQ29udmVyc2lvbih7ZnJvbToiT2JqZWN0Iix0bzoiTWFwIixjb252ZXJ0OmpBfSksVS5kZWZhdWx0Q29udGV4dD1ZLFUucmVhbENvbnRleHQ9ZixVLnBvc2l0aXZlQ29udGV4dD1OO3ZhciB4PXt0cnVlOiEwLGZhbHNlOiEwLGU6ITAsaTohMCxJbmZpbml0eTohMCxMTjI6ITAsTE4xMDohMCxMT0cyRTohMCxMT0cxMEU6ITAsTmFOOiEwLHBoaTohMCxwaTohMCxTUVJUMV8yOiEwLFNRUlQyOiEwLHRhdTohMH07ZnVuY3Rpb24gUihBLGUpe3ZhciB0PXt9O2lmKEEucyl7dmFyIGk9QS5zLnNwbGl0KCItPiIpO2lmKDIhPT1pLmxlbmd0aCl0aHJvdyBTeW50YXhFcnJvcigiQ291bGQgbm90IHBhcnNlIHJ1bGU6ICIrQS5zKTt0Lmw9aVswXSx0LnI9aVsxXX1lbHNlIHQubD1BLmwsdC5yPUEucjt0Lmw9eShuKHQubCkpLHQucj15KG4odC5yKSk7Zm9yKHZhciByPTAsbz1bImltcG9zZUNvbnRleHQiLCJyZXBlYXQiLCJhc3N1bWluZyJdO3I8by5sZW5ndGg7cisrKXt2YXIgcz1vW3JdO3MgaW4gQSYmKHRbc109QVtzXSl9aWYoQS5ldmFsdWF0ZSYmKHQuZXZhbHVhdGU9bihBLmV2YWx1YXRlKSksTSh0LmwsZSkpe3ZhciBhLEI9IUkodC5sLGUpO0ImJihhPVMoKSk7dmFyIGM9RCh0LmwpLGc9UygpO3QuZXhwYW5kZWQ9e30sdC5leHBhbmRlZC5sPWMoW3QubCxnXSkscCh0LmV4cGFuZGVkLmwsZSksbSh0LmV4cGFuZGVkLmwsZSksdC5leHBhbmRlZC5yPWMoW3QucixnXSksQiYmKHQuZXhwYW5kZWROQzE9e30sdC5leHBhbmRlZE5DMS5sPWMoW2EsdC5sXSksdC5leHBhbmRlZE5DMS5yPWMoW2EsdC5yXSksdC5leHBhbmRlZE5DMj17fSx0LmV4cGFuZGVkTkMyLmw9YyhbYSx0LmV4cGFuZGVkLmxdKSx0LmV4cGFuZGVkTkMyLnI9YyhbYSx0LmV4cGFuZGVkLnJdKSl9cmV0dXJuIHR9VS5ydWxlcz1bcyx7bDoibG9nKGUpIixyOiIxIn0se3M6Im4tbjEgLT4gbistbjEiLGFzc3VtaW5nOntzdWJ0cmFjdDp7dG90YWw6ITB9fX0se3M6Im4tbiAtPiAwIixhc3N1bWluZzp7c3VidHJhY3Q6e3RvdGFsOiExfX19LHtzOiItKGNsKnYpIC0+IHYgKiAoLWNsKSIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMH0sc3VidHJhY3Q6e3RvdGFsOiEwfX19LHtzOiItKGNsKnYpIC0+ICgtY2wpICogdiIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMX0sc3VidHJhY3Q6e3RvdGFsOiEwfX19LHtzOiItKHYqY2wpIC0+IHYgKiAoLWNsKSIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMX0sc3VidHJhY3Q6e3RvdGFsOiEwfX19LHtsOiItKG4xL24yKSIscjoiLW4xL24yIn0se2w6Ii12IixyOiJ2ICogKC0xKSJ9LHtsOiIobjEgKyBuMikqKC0xKSIscjoibjEqKC0xKSArIG4yKigtMSkiLHJlcGVhdDohMH0se2w6Im4vbjFebjIiLHI6Im4qbjFeLW4yIn0se2w6Im4vbjEiLHI6Im4qbjFeLTEifSx7czoiKG4xKm4yKV5uMyAtPiBuMV5uMyAqIG4yXm4zIixhc3N1bWluZzp7bXVsdGlwbHk6e2NvbW11dGF0aXZlOiEwfX19LHtzOiIobjEqbjIpXigtMSkgLT4gbjJeKC0xKSAqIG4xXigtMSkiLGFzc3VtaW5nOnttdWx0aXBseTp7Y29tbXV0YXRpdmU6ITF9fX0se3M6IihuIF4gbjEpIF4gbjIgLT4gbiBeIChuMSAqIG4yKSIsYXNzdW1pbmc6e2RpdmlkZTp7dG90YWw6ITB9fX0se2w6IiB2ZCAgICogKCB2ZCAgICogbjEgKyBuMikiLHI6InZkXjIgICAgICAgKiBuMSArICB2ZCAgICogbjIifSx7czoiIHZkICAgKiAodmRebjQgKiBuMSArIG4yKSAgIC0+ICB2ZF4oMStuNCkgICogbjEgKyAgdmQgICAqIG4yIixhc3N1bWluZzp7ZGl2aWRlOnt0b3RhbDohMH19fSx7czoidmRebjMgKiAoIHZkICAgKiBuMSArIG4yKSAgIC0+ICB2ZF4objMrMSkgICogbjEgKyB2ZF5uMyAqIG4yIixhc3N1bWluZzp7ZGl2aWRlOnt0b3RhbDohMH19fSx7czoidmRebjMgKiAodmRebjQgKiBuMSArIG4yKSAgIC0+ICB2ZF4objMrbjQpICogbjEgKyB2ZF5uMyAqIG4yIixhc3N1bWluZzp7ZGl2aWRlOnt0b3RhbDohMH19fSx7bDoibipuIixyOiJuXjIifSx7czoibiAqIG5ebjEgLT4gbl4objErMSkiLGFzc3VtaW5nOntkaXZpZGU6e3RvdGFsOiEwfX19LHtzOiJuXm4xICogbl5uMiAtPiBuXihuMStuMikiLGFzc3VtaW5nOntkaXZpZGU6e3RvdGFsOiEwfX19LG8se3M6Im4rbiAtPiAyKm4iLGFzc3VtaW5nOnthZGQ6e3RvdGFsOiEwfX19LHtsOiJuKy1uIixyOiIwIn0se2w6InZkKm4gKyB2ZCIscjoidmQqKG4rMSkifSx7bDoibjMqbjEgKyBuMypuMiIscjoibjMqKG4xK24yKSJ9LHtsOiJuM14oLW40KSpuMSArICAgbjMgICogbjIiLHI6Im4zXigtbjQpKihuMSArIG4zXihuNCsxKSAqbjIpIn0se2w6Im4zXigtbjQpKm4xICsgbjNebjUgKiBuMiIscjoibjNeKC1uNCkqKG4xICsgbjNeKG40K241KSpuMikifSx7czoibip2ZCArIHZkIC0+IChuKzEpKnZkIixhc3N1bWluZzp7bXVsdGlwbHk6e2NvbW11dGF0aXZlOiExfX19LHtzOiJ2ZCArIG4qdmQgLT4gKDErbikqdmQiLGFzc3VtaW5nOnttdWx0aXBseTp7Y29tbXV0YXRpdmU6ITF9fX0se3M6Im4xKm4zICsgbjIqbjMgLT4gKG4xK24yKSpuMyIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMX19fSx7czoibl5uMSAqIG4gLT4gbl4objErMSkiLGFzc3VtaW5nOntkaXZpZGU6e3RvdGFsOiEwfSxtdWx0aXBseTp7Y29tbXV0YXRpdmU6ITF9fX0se3M6Im4xKm4zXigtbjQpICsgbjIgKiBuMyAgICAtPiAobjEgKyBuMipuM14objQgKyAgMSkpKm4zXigtbjQpIixhc3N1bWluZzp7bXVsdGlwbHk6e2NvbW11dGF0aXZlOiExfX19LHtzOiJuMSpuM14oLW40KSArIG4yICogbjNebjUgLT4gKG4xICsgbjIqbjNeKG40ICsgbjUpKSpuM14oLW40KSIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMX19fSx7bDoibipjZCArIGNkIixyOiIobisxKSpjZCJ9LHtzOiJjZCpuICsgY2QgLT4gY2QqKG4rMSkiLGFzc3VtaW5nOnttdWx0aXBseTp7Y29tbXV0YXRpdmU6ITF9fX0se3M6ImNkICsgY2QqbiAtPiBjZCooMStuKSIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMX19fSxvLHtzOiIoLW4pKm4xIC0+IC0obipuMSkiLGFzc3VtaW5nOntzdWJ0cmFjdDp7dG90YWw6ITB9fX0se3M6Im4xKigtbikgLT4gLShuMSpuKSIsYXNzdW1pbmc6e3N1YnRyYWN0Ont0b3RhbDohMH0sbXVsdGlwbHk6e2NvbW11dGF0aXZlOiExfX19LHtzOiJjZSt2ZSAtPiB2ZStjZSIsYXNzdW1pbmc6e2FkZDp7Y29tbXV0YXRpdmU6ITB9fSxpbXBvc2VDb250ZXh0OnthZGQ6e2NvbW11dGF0aXZlOiExfX19LHtzOiJ2ZCpjZCAtPiBjZCp2ZCIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMH19LGltcG9zZUNvbnRleHQ6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMX19fSx7bDoibistbjEiLHI6Im4tbjEifSx7bDoibistKG4xKSIscjoibi0objEpIn0se3M6Im4qKG4xXi0xKSAtPiBuL24xIixhc3N1bWluZzp7bXVsdGlwbHk6e2NvbW11dGF0aXZlOiEwfX19LHtzOiJuKm4xXi1uMiAtPiBuL24xXm4yIixhc3N1bWluZzp7bXVsdGlwbHk6e2NvbW11dGF0aXZlOiEwfX19LHtzOiJuXi0xIC0+IDEvbiIsYXNzdW1pbmc6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMH19fSx7bDoibl4xIixyOiJuIn0se3M6Im4qKG4xL24yKSAtPiAobipuMSkvbjIiLGFzc3VtaW5nOnttdWx0aXBseTp7YXNzb2NpYXRpdmU6ITB9fX0se3M6Im4tKG4xK24yKSAtPiBuLW4xLW4yIixhc3N1bWluZzp7YWRkaXRpb246e2Fzc29jaWF0aXZlOiEwLGNvbW11dGF0aXZlOiEwfX19LHtsOiIxKm4iLHI6Im4iLGltcG9zZUNvbnRleHQ6e211bHRpcGx5Ontjb21tdXRhdGl2ZTohMH19fSx7czoibjEvKG4yL24zKSAtPiAobjEqbjMpL24yIixhc3N1bWluZzp7bXVsdGlwbHk6e2Fzc29jaWF0aXZlOiEwfX19LHtsOiJuMS8oLW4yKSIscjoiLW4xL24yIn1dO3ZhciBHPTA7ZnVuY3Rpb24gUygpe3JldHVybiBuZXcgaCgiX3AiK0crKyl9ZnVuY3Rpb24gYihBLHQpe3ZhciBuPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTprQSgpLGk9YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOnt9LG89aS5jb25zb2xlRGVidWc7dD1mdW5jdGlvbihBLHQpe2Zvcih2YXIgbj1bXSxpPTA7aTxBLmxlbmd0aDtpKyspe3ZhciByPUFbaV0sbz12b2lkIDAscz1lKHIpO3N3aXRjaChzKXtjYXNlInN0cmluZyI6cj17czpyfTtjYXNlIm9iamVjdCI6bz1SKHIsdCk7YnJlYWs7Y2FzZSJmdW5jdGlvbiI6bz1yO2JyZWFrO2RlZmF1bHQ6dGhyb3cgVHlwZUVycm9yKCJVbnN1cHBvcnRlZCB0eXBlIG9mIHJ1bGU6ICIrcyl9bi5wdXNoKG8pfXJldHVybiBufSh0fHxVLnJ1bGVzLGkuY29udGV4dCk7Zm9yKHZhciBzPXIoQSxuKSxhPXt9LEI9KHM9eShzKSkudG9TdHJpbmcoe3BhcmVudGhlc2lzOiJhbGwifSk7IWFbQl07KXthW0JdPSEwLEc9MDt2YXIgYz1CO28mJmNvbnNvbGUubG9nKCJXb3JraW5nIG9uOiAiLEIpO2Zvcih2YXIgZz0wO2c8dC5sZW5ndGg7ZysrKXt2YXIgRT0iIjtpZigiZnVuY3Rpb24iPT10eXBlb2YgdFtnXT8ocz10W2ddKHMsaSksbyYmKEU9dFtnXS5uYW1lKSk6KHAocyxpLmNvbnRleHQpLHM9dihzLHRbZ10saS5jb250ZXh0KSxvJiYoRT0iIi5jb25jYXQodFtnXS5sLnRvU3RyaW5nKCksIiAtPiAiKS5jb25jYXQodFtnXS5yLnRvU3RyaW5nKCkpKSksbyl7dmFyIFE9cy50b1N0cmluZyh7cGFyZW50aGVzaXM6ImFsbCJ9KTtRIT09YyYmKGNvbnNvbGUubG9nKCJBcHBseWluZyIsRSwicHJvZHVjZWQiLFEpLGM9USl9RihzLGkuY29udGV4dCl9Qj1zLnRvU3RyaW5nKHtwYXJlbnRoZXNpczoiYWxsIn0pfXJldHVybiBzfWZ1bmN0aW9uIEgoQSxlLHQpe3ZhciBuPUE7aWYoQSlmb3IodmFyIGk9MDtpPEEubGVuZ3RoOysraSl7dmFyIHI9dihBW2ldLGUsdCk7ciE9PUFbaV0mJihuPT09QSYmKG49QS5zbGljZSgpKSxuW2ldPXIpfXJldHVybiBufWZ1bmN0aW9uIHYoQSxlLHQpe2lmKGUuYXNzdW1pbmcpZm9yKHZhciBuIGluIGUuYXNzdW1pbmcpZm9yKHZhciBpIGluIGUuYXNzdW1pbmdbbl0paWYoQyhuLGksdCkhPT1lLmFzc3VtaW5nW25dW2ldKXJldHVybiBBO3ZhciByPWQoZS5pbXBvc2VDb250ZXh0LHQpLG89QTtpZihvIGluc3RhbmNlb2YgdXx8byBpbnN0YW5jZW9mIGcpe3ZhciBzPUgoby5hcmdzLGUsdCk7cyE9PW8uYXJncyYmKChvPW8uY2xvbmUoKSkuYXJncz1zKX1lbHNlIGlmKG8gaW5zdGFuY2VvZiBsKXtpZihvLmNvbnRlbnQpe3ZhciBjPXYoby5jb250ZW50LGUsdCk7YyE9PW8uY29udGVudCYmKG89bmV3IGwoYykpfX1lbHNlIGlmKG8gaW5zdGFuY2VvZiBCKXt2YXIgaD1IKG8uaXRlbXMsZSx0KTtoIT09by5pdGVtcyYmKG89bmV3IEIoaCkpfWVsc2UgaWYobyBpbnN0YW5jZW9mIGEpe3ZhciB3PW8ub2JqZWN0O28ub2JqZWN0JiYodz12KG8ub2JqZWN0LGUsdCkpO3ZhciBJPW8uaW5kZXg7by5pbmRleCYmKEk9dihvLmluZGV4LGUsdCkpLHc9PT1vLm9iamVjdCYmST09PW8uaW5kZXh8fChvPW5ldyBhKHcsSSkpfWVsc2UgaWYobyBpbnN0YW5jZW9mIEUpe3ZhciBNPUgoby5kaW1lbnNpb25zLGUsdCk7TSE9PW8uZGltZW5zaW9ucyYmKG89bmV3IEUoTSkpfWVsc2UgaWYobyBpbnN0YW5jZW9mIFEpe3ZhciBwPSExLG09e307Zm9yKHZhciBGIGluIG8ucHJvcGVydGllcyltW0ZdPXYoby5wcm9wZXJ0aWVzW0ZdLGUsdCksbVtGXSE9PW8ucHJvcGVydGllc1tGXSYmKHA9ITApO3AmJihvPW5ldyBRKG0pKX12YXIgRD1lLnIsWT1MKGUubCxvLHIpWzBdO2lmKCFZJiZlLmV4cGFuZGVkJiYoRD1lLmV4cGFuZGVkLnIsWT1MKGUuZXhwYW5kZWQubCxvLHIpWzBdKSwhWSYmZS5leHBhbmRlZE5DMSYmKEQ9ZS5leHBhbmRlZE5DMS5yLChZPUwoZS5leHBhbmRlZE5DMS5sLG8scilbMF0pfHwoRD1lLmV4cGFuZGVkTkMyLnIsWT1MKGUuZXhwYW5kZWROQzIubCxvLHIpWzBdKSksWSl7dmFyIGY9by5pbXBsaWNpdDtvPUQuY2xvbmUoKSxmJiYiaW1wbGljaXQiaW4gRCYmKG8uaW1wbGljaXQ9ITApLG89by50cmFuc2Zvcm0oKGZ1bmN0aW9uKEEpe3JldHVybiBBLmlzU3ltYm9sTm9kZSYmTUEoWS5wbGFjZWhvbGRlcnMsQS5uYW1lKT9ZLnBsYWNlaG9sZGVyc1tBLm5hbWVdLmNsb25lKCk6QX0pKX1yZXR1cm4gZS5yZXBlYXQmJm8hPT1BJiYobz12KG8sZSx0KSksb31mdW5jdGlvbiBqKEEsZSl7dmFyIHQ9e3BsYWNlaG9sZGVyczp7fX07aWYoIUEucGxhY2Vob2xkZXJzJiYhZS5wbGFjZWhvbGRlcnMpcmV0dXJuIHQ7aWYoIUEucGxhY2Vob2xkZXJzKXJldHVybiBlO2lmKCFlLnBsYWNlaG9sZGVycylyZXR1cm4gQTtmb3IodmFyIG4gaW4gQS5wbGFjZWhvbGRlcnMpaWYoTUEoQS5wbGFjZWhvbGRlcnMsbikmJih0LnBsYWNlaG9sZGVyc1tuXT1BLnBsYWNlaG9sZGVyc1tuXSxNQShlLnBsYWNlaG9sZGVycyxuKSYmIVAoQS5wbGFjZWhvbGRlcnNbbl0sZS5wbGFjZWhvbGRlcnNbbl0pKSlyZXR1cm4gbnVsbDtmb3IodmFyIGkgaW4gZS5wbGFjZWhvbGRlcnMpTUEoZS5wbGFjZWhvbGRlcnMsaSkmJih0LnBsYWNlaG9sZGVyc1tpXT1lLnBsYWNlaG9sZGVyc1tpXSk7cmV0dXJuIHR9ZnVuY3Rpb24gSihBLGUpe3ZhciB0LG49W107aWYoMD09PUEubGVuZ3RofHwwPT09ZS5sZW5ndGgpcmV0dXJuIG47Zm9yKHZhciBpPTA7aTxBLmxlbmd0aDtpKyspZm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspKHQ9aihBW2ldLGVbcl0pKSYmbi5wdXNoKHQpO3JldHVybiBufWZ1bmN0aW9uIEwoQSxlLHQsbil7dmFyIHI9W3twbGFjZWhvbGRlcnM6e319XTtpZihBIGluc3RhbmNlb2YgdSYmZSBpbnN0YW5jZW9mIHV8fEEgaW5zdGFuY2VvZiBnJiZlIGluc3RhbmNlb2YgZyl7aWYoQSBpbnN0YW5jZW9mIHUpe2lmKEEub3AhPT1lLm9wfHxBLmZuIT09ZS5mbilyZXR1cm5bXX1lbHNlIGlmKEEgaW5zdGFuY2VvZiBnJiZBLm5hbWUhPT1lLm5hbWUpcmV0dXJuW107aWYoISgxPT09ZS5hcmdzLmxlbmd0aCYmMT09PUEuYXJncy5sZW5ndGh8fCFNKGUsdCkmJmUuYXJncy5sZW5ndGg9PT1BLmFyZ3MubGVuZ3RofHxuKSl7aWYoZS5hcmdzLmxlbmd0aD49MiYmMj09PUEuYXJncy5sZW5ndGgpe2Zvcih2YXIgbz1mdW5jdGlvbihBLGUpe3ZhciB0LG4saT1bXSxyPUQoQSk7aWYoSShBLGUpKWZvcih2YXIgbz0wO288QS5hcmdzLmxlbmd0aDtvKyspKG49QS5hcmdzLnNsaWNlKDApKS5zcGxpY2UobywxKSx0PTE9PT1uLmxlbmd0aD9uWzBdOnIobiksaS5wdXNoKHIoW0EuYXJnc1tvXSx0XSkpO2Vsc2UgZm9yKHZhciBzPTE7czxBLmFyZ3MubGVuZ3RoO3MrKyl7dmFyIGE9QS5hcmdzWzBdO3M+MSYmKGE9cihBLmFyZ3Muc2xpY2UoMCxzKSkpLHQ9MT09PShuPUEuYXJncy5zbGljZShzKSkubGVuZ3RoP25bMF06cihuKSxpLnB1c2gocihbYSx0XSkpfXJldHVybiBpfShlLHQpLHM9W10sYT0wO2E8by5sZW5ndGg7YSsrKXt2YXIgQj1MKEEsb1thXSx0LCEwKTtzPXMuY29uY2F0KEIpfXJldHVybiBzfWlmKEEuYXJncy5sZW5ndGg+Mil0aHJvdyBFcnJvcigiVW5leHBlY3RlZCBub24tYmluYXJ5IGFzc29jaWF0aXZlIGZ1bmN0aW9uOiAiK0EudG9TdHJpbmcoKSk7cmV0dXJuW119Zm9yKHZhciBFPVtdLFE9MDtRPEEuYXJncy5sZW5ndGg7USsrKXt2YXIgbD1MKEEuYXJnc1tRXSxlLmFyZ3NbUV0sdCk7aWYoMD09PWwubGVuZ3RoKWJyZWFrO0UucHVzaChsKX1pZihFLmxlbmd0aCE9PUEuYXJncy5sZW5ndGgpe2lmKCFJKGUsdCl8fDE9PT1BLmFyZ3MubGVuZ3RoKXJldHVybltdO2lmKEEuYXJncy5sZW5ndGg+Mil0aHJvdyBuZXcgRXJyb3IoInBlcm11dGluZyA+MiBjb21tdXRhdGl2ZSBub24tYXNzb2NpYXRpdmUgcnVsZSBhcmd1bWVudHMgbm90IHlldCBpbXBsZW1lbnRlZCIpO3ZhciB3PUwoQS5hcmdzWzBdLGUuYXJnc1sxXSx0KTtpZigwPT09dy5sZW5ndGgpcmV0dXJuW107dmFyIEM9TChBLmFyZ3NbMV0sZS5hcmdzWzBdLHQpO2lmKDA9PT1DLmxlbmd0aClyZXR1cm5bXTtFPVt3LENdfXI9ZnVuY3Rpb24oQSl7aWYoMD09PUEubGVuZ3RoKXJldHVybiBBO2Zvcih2YXIgZT1BLnJlZHVjZShKKSx0PVtdLG49e30saT0wO2k8ZS5sZW5ndGg7aSsrKXt2YXIgcj1KU09OLnN0cmluZ2lmeShlW2ldKTtuW3JdfHwobltyXT0hMCx0LnB1c2goZVtpXSkpfXJldHVybiB0fShFKX1lbHNlIGlmKEEgaW5zdGFuY2VvZiBoKXtpZigwPT09QS5uYW1lLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIlN5bWJvbCBpbiBydWxlIGhhcyAwIGxlbmd0aC4uLiE/Iik7aWYoeFtBLm5hbWVdKXtpZihBLm5hbWUhPT1lLm5hbWUpcmV0dXJuW119ZWxzZSBzd2l0Y2goQS5uYW1lWzFdPj0iYSImJkEubmFtZVsxXTw9InoiP0EubmFtZS5zdWJzdHJpbmcoMCwyKTpBLm5hbWVbMF0pe2Nhc2UibiI6Y2FzZSJfcCI6clswXS5wbGFjZWhvbGRlcnNbQS5uYW1lXT1lO2JyZWFrO2Nhc2UiYyI6Y2FzZSJjbCI6aWYoIVQoZSkpcmV0dXJuW107clswXS5wbGFjZWhvbGRlcnNbQS5uYW1lXT1lO2JyZWFrO2Nhc2UidiI6aWYoVChlKSlyZXR1cm5bXTtyWzBdLnBsYWNlaG9sZGVyc1tBLm5hbWVdPWU7YnJlYWs7Y2FzZSJ2bCI6aWYoIXooZSkpcmV0dXJuW107clswXS5wbGFjZWhvbGRlcnNbQS5uYW1lXT1lO2JyZWFrO2Nhc2UiY2QiOmlmKCFiUShlKSlyZXR1cm5bXTtyWzBdLnBsYWNlaG9sZGVyc1tBLm5hbWVdPWU7YnJlYWs7Y2FzZSJ2ZCI6aWYoYlEoZSkpcmV0dXJuW107clswXS5wbGFjZWhvbGRlcnNbQS5uYW1lXT1lO2JyZWFrO2Nhc2UiY2UiOmlmKCFIUShlKSlyZXR1cm5bXTtyWzBdLnBsYWNlaG9sZGVyc1tBLm5hbWVdPWU7YnJlYWs7Y2FzZSJ2ZSI6aWYoSFEoZSkpcmV0dXJuW107clswXS5wbGFjZWhvbGRlcnNbQS5uYW1lXT1lO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIHN5bWJvbCBpbiBydWxlOiAiK0EubmFtZSl9fWVsc2V7aWYoIShBIGluc3RhbmNlb2YgYykpcmV0dXJuW107aWYoIWkoQS52YWx1ZSxlLnZhbHVlKSlyZXR1cm5bXX1yZXR1cm4gcn1mdW5jdGlvbiBQKEEsZSl7aWYoQSBpbnN0YW5jZW9mIGMmJmUgaW5zdGFuY2VvZiBjKXtpZighaShBLnZhbHVlLGUudmFsdWUpKXJldHVybiExfWVsc2UgaWYoQSBpbnN0YW5jZW9mIGgmJmUgaW5zdGFuY2VvZiBoKXtpZihBLm5hbWUhPT1lLm5hbWUpcmV0dXJuITF9ZWxzZXtpZighKEEgaW5zdGFuY2VvZiB1JiZlIGluc3RhbmNlb2YgdXx8QSBpbnN0YW5jZW9mIGcmJmUgaW5zdGFuY2VvZiBnKSlyZXR1cm4hMTtpZihBIGluc3RhbmNlb2YgdSl7aWYoQS5vcCE9PWUub3B8fEEuZm4hPT1lLmZuKXJldHVybiExfWVsc2UgaWYoQSBpbnN0YW5jZW9mIGcmJkEubmFtZSE9PWUubmFtZSlyZXR1cm4hMTtpZihBLmFyZ3MubGVuZ3RoIT09ZS5hcmdzLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIHQ9MDt0PEEuYXJncy5sZW5ndGg7dCsrKWlmKCFQKEEuYXJnc1t0XSxlLmFyZ3NbdF0pKXJldHVybiExfXJldHVybiEwfXJldHVybiBVfSkpO2Z1bmN0aW9uIHpRKEEsZSl7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJkFbU3ltYm9sLml0ZXJhdG9yXXx8QVsiQEBpdGVyYXRvciJdO2lmKCF0KXtpZihBcnJheS5pc0FycmF5KEEpfHwodD1mdW5jdGlvbihBLGUpe2lmKEEpe2lmKCJzdHJpbmciPT10eXBlb2YgQSlyZXR1cm4gTFEoQSxlKTt2YXIgdD1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoQSkuc2xpY2UoOCwtMSk7cmV0dXJuIk9iamVjdCI9PT10JiZBLmNvbnN0cnVjdG9yJiYodD1BLmNvbnN0cnVjdG9yLm5hbWUpLCJNYXAiPT09dHx8IlNldCI9PT10P0FycmF5LmZyb20oQSk6IkFyZ3VtZW50cyI9PT10fHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdCh0KT9MUShBLGUpOnZvaWQgMH19KEEpKXx8ZSYmQSYmIm51bWJlciI9PXR5cGVvZiBBLmxlbmd0aCl7dCYmKEE9dCk7dmFyIG49MCxpPWZ1bmN0aW9uKCl7fTtyZXR1cm57czppLG46ZnVuY3Rpb24oKXtyZXR1cm4gbj49QS5sZW5ndGg/e2RvbmU6ITB9Ontkb25lOiExLHZhbHVlOkFbbisrXX19LGU6ZnVuY3Rpb24oQSl7dGhyb3cgQX0sZjppfX10aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gaXRlcmF0ZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9dmFyIHIsbz0hMCxzPSExO3JldHVybntzOmZ1bmN0aW9uKCl7dD10LmNhbGwoQSl9LG46ZnVuY3Rpb24oKXt2YXIgQT10Lm5leHQoKTtyZXR1cm4gbz1BLmRvbmUsQX0sZTpmdW5jdGlvbihBKXtzPSEwLHI9QX0sZjpmdW5jdGlvbigpe3RyeXtvfHxudWxsPT10LnJldHVybnx8dC5yZXR1cm4oKX1maW5hbGx5e2lmKHMpdGhyb3cgcn19fX1mdW5jdGlvbiBMUShBLGUpeyhudWxsPT1lfHxlPkEubGVuZ3RoKSYmKGU9QS5sZW5ndGgpO2Zvcih2YXIgdD0wLG49bmV3IEFycmF5KGUpO3Q8ZTt0Kyspblt0XT1BW3RdO3JldHVybiBufXZhciBQUT1wQSgic2ltcGxpZnlDb25zdGFudCIsWyJ0eXBlZCIsImNvbmZpZyIsIm1hdGhXaXRoVHJhbnNmb3JtIiwibWF0cml4IiwiP2ZyYWN0aW9uIiwiP2JpZ251bWJlciIsIkFjY2Vzc29yTm9kZSIsIkFycmF5Tm9kZSIsIkNvbnN0YW50Tm9kZSIsIkZ1bmN0aW9uTm9kZSIsIkluZGV4Tm9kZSIsIk9iamVjdE5vZGUiLCJPcGVyYXRvck5vZGUiLCJTeW1ib2xOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciB0PUEudHlwZWQsbj1BLmNvbmZpZyxpPUEubWF0aFdpdGhUcmFuc2Zvcm0scj1BLm1hdHJpeCxvPUEuZnJhY3Rpb24sYT1BLmJpZ251bWJlcixCPUEuQWNjZXNzb3JOb2RlLGM9QS5BcnJheU5vZGUsRT1BLkNvbnN0YW50Tm9kZSxRPUEuRnVuY3Rpb25Ob2RlLHU9QS5JbmRleE5vZGUsbD1BLk9iamVjdE5vZGUsaD1BLk9wZXJhdG9yTm9kZSx3PUEuU3ltYm9sTm9kZSxDPWpRKHtGdW5jdGlvbk5vZGU6USxPcGVyYXRvck5vZGU6aCxTeW1ib2xOb2RlOnd9KSxJPUMuaXNDb21tdXRhdGl2ZSxNPUMuaXNBc3NvY2lhdGl2ZSxkPUMuYWxsQ2hpbGRyZW4scD1DLmNyZWF0ZU1ha2VOb2RlRnVuY3Rpb24sbT10KCJzaW1wbGlmeUNvbnN0YW50Iix7Tm9kZTpmdW5jdGlvbihBKXtyZXR1cm4gTihHKEEse30pKX0sIk5vZGUsIE9iamVjdCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gTihHKEEsZSkpfX0pO2Z1bmN0aW9uIEYoQSl7cmV0dXJuIHMoQSk/QS52YWx1ZU9mKCk6QSBpbnN0YW5jZW9mIEFycmF5P0EubWFwKEYpOmcoQSk/cihGKEEudmFsdWVPZigpKSk6QX1mdW5jdGlvbiBEKEEsZSx0KXt0cnl7cmV0dXJuIGlbQV0uYXBwbHkobnVsbCxlKX1jYXRjaChuKXtyZXR1cm4gZT1lLm1hcChGKSx5KGlbQV0uYXBwbHkobnVsbCxlKSx0KX19dmFyIFk9dCh7RnJhY3Rpb246ZnVuY3Rpb24oQSl7dmFyIGUsdD1BLnMqQS5uO3JldHVybiBlPXQ8MD9uZXcgaCgiLSIsInVuYXJ5TWludXMiLFtuZXcgRSgtdCldKTpuZXcgRSh0KSwxPT09QS5kP2U6bmV3IGgoIi8iLCJkaXZpZGUiLFtlLG5ldyBFKEEuZCldKX0sbnVtYmVyOmZ1bmN0aW9uKEEpe3JldHVybiBBPDA/eChuZXcgRSgtQSkpOm5ldyBFKEEpfSxCaWdOdW1iZXI6ZnVuY3Rpb24oQSl7cmV0dXJuIEE8MD94KG5ldyBFKC1BKSk6bmV3IEUoQSl9LENvbXBsZXg6ZnVuY3Rpb24oQSl7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY29udmVydCBDb21wbGV4IG51bWJlciB0byBOb2RlIil9LHN0cmluZzpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IEUoQSl9LE1hdHJpeDpmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGMoQS52YWx1ZU9mKCkubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gWShBKX0pKSl9fSk7ZnVuY3Rpb24gTihBKXtyZXR1cm4gYihBKT9BOlkoQSl9ZnVuY3Rpb24gVShBLGUpe2lmKGUmJiExIT09ZS5leGFjdEZyYWN0aW9ucyYmaXNGaW5pdGUoQSkmJm8pe3ZhciB0PW8oQSksbj1lJiYibnVtYmVyIj09dHlwZW9mIGUuZnJhY3Rpb25zTGltaXQ/ZS5mcmFjdGlvbnNMaW1pdDoxLzA7aWYodC52YWx1ZU9mKCk9PT1BJiZ0Lm48biYmdC5kPG4pcmV0dXJuIHR9cmV0dXJuIEF9dmFyIHk9dCh7InN0cmluZywgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiJCaWdOdW1iZXIiPT09bi5udW1iZXI/KHZvaWQgMD09PWEmJnRzKCksYShBKSk6IkZyYWN0aW9uIj09PW4ubnVtYmVyPyh2b2lkIDA9PT1vJiZucygpLG8oQSkpOlUocGFyc2VGbG9hdChBKSxlKX0sIkZyYWN0aW9uLCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEF9LCJCaWdOdW1iZXIsIE9iamVjdCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQX0sIm51bWJlciwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiBVKEEsZSl9LCJDb21wbGV4LCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIDAhPT1BLmltP0E6VShBLnJlLGUpfSwiTWF0cml4LCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHIoVShBLnZhbHVlT2YoKSkpfSwiQXJyYXksIE9iamVjdCI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5tYXAoVSl9fSk7ZnVuY3Rpb24geChBKXtyZXR1cm4gbmV3IGgoIi0iLCJ1bmFyeU1pbnVzIixbQV0pfWZ1bmN0aW9uIFIoQSxlLHQsbil7dmFyIGk9ZS5zaGlmdCgpLHI9ZS5yZWR1Y2UoKGZ1bmN0aW9uKGUsaSl7aWYoIWIoaSkpe3ZhciByPWUucG9wKCk7aWYoYihyKSlyZXR1cm5bcixpXTt0cnl7cmV0dXJuIGUucHVzaChEKEEsW3IsaV0sbikpLGV9Y2F0Y2goQSl7ZS5wdXNoKHIpfX1lLnB1c2goTihlLnBvcCgpKSk7dmFyIG89MT09PWUubGVuZ3RoP2VbMF06dChlKTtyZXR1cm5bdChbbyxOKGkpXSldfSksW2ldKTtyZXR1cm4gMT09PXIubGVuZ3RoP3JbMF06dChbclswXSxZKHJbMV0pXSl9ZnVuY3Rpb24gRyhBLHQpe3N3aXRjaChBLnR5cGUpe2Nhc2UiU3ltYm9sTm9kZSI6cmV0dXJuIEE7Y2FzZSJDb25zdGFudE5vZGUiOnN3aXRjaChlKEEudmFsdWUpKXtjYXNlIm51bWJlciI6cmV0dXJuIHkoQS52YWx1ZSx0KTtjYXNlInN0cmluZyI6cmV0dXJuIEEudmFsdWU7ZGVmYXVsdDppZighaXNOYU4oQS52YWx1ZSkpcmV0dXJuIHkoQS52YWx1ZSx0KX1yZXR1cm4gQTtjYXNlIkZ1bmN0aW9uTm9kZSI6aWYoaVtBLm5hbWVdJiZpW0EubmFtZV0ucmF3QXJncylyZXR1cm4gQTtpZigtMT09PVsiYWRkIiwibXVsdGlwbHkiXS5pbmRleE9mKEEubmFtZSkpe3ZhciBuPUEuYXJncy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBHKEEsdCl9KSk7aWYoIW4uc29tZShiKSl0cnl7cmV0dXJuIEQoQS5uYW1lLG4sdCl9Y2F0Y2goQSl7fWlmKCJzaXplIj09PUEubmFtZSYmMT09PW4ubGVuZ3RoJiZmKG5bMF0pKXtmb3IodmFyIG89W10scz1uWzBdO2Yocyk7KW8ucHVzaChzLml0ZW1zLmxlbmd0aCkscz1zLml0ZW1zWzBdO3JldHVybiByKG8pfXJldHVybiBuZXcgUShBLm5hbWUsbi5tYXAoTikpfWNhc2UiT3BlcmF0b3JOb2RlIjp2YXIgYSxoLHc9QS5mbi50b1N0cmluZygpLEM9cChBKTtpZih2KEEpJiZBLmlzVW5hcnkoKSloPWIoKGE9W0coQS5hcmdzWzBdLHQpXSlbMF0pP0MoYSk6RCh3LGEsdCk7ZWxzZSBpZihNKEEsdC5jb250ZXh0KSlpZihhPShhPWQoQSx0LmNvbnRleHQpKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBHKEEsdCl9KSksSSh3LHQuY29udGV4dCkpe2Zvcih2YXIgRj1bXSxZPVtdLFU9MDtVPGEubGVuZ3RoO1UrKyliKGFbVV0pP1kucHVzaChhW1VdKTpGLnB1c2goYVtVXSk7Ri5sZW5ndGg+MT8oaD1SKHcsRixDLHQpLFkudW5zaGlmdChoKSxoPVIodyxZLEMsdCkpOmg9Uih3LGEsQyx0KX1lbHNlIGg9Uih3LGEsQyx0KTtlbHNlIGg9Uih3LGE9QS5hcmdzLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEcoQSx0KX0pKSxDLHQpO3JldHVybiBoO2Nhc2UiUGFyZW50aGVzaXNOb2RlIjpyZXR1cm4gRyhBLmNvbnRlbnQsdCk7Y2FzZSJBY2Nlc3Nvck5vZGUiOnJldHVybiBmdW5jdGlvbihBLGUsdCl7aWYoIVMoZSkpcmV0dXJuIG5ldyBCKE4oQSksTihlKSk7aWYoZihBKXx8ZyhBKSl7Zm9yKHZhciBuPUFycmF5LmZyb20oZS5kaW1lbnNpb25zKTtuLmxlbmd0aD4wOylpZihUKG5bMF0pJiYic3RyaW5nIiE9dHlwZW9mIG5bMF0udmFsdWUpe3ZhciBpPXkobi5zaGlmdCgpLnZhbHVlLHQpO2YoQSk/QT1BLml0ZW1zW2ktMV06KEE9QS52YWx1ZU9mKClbaS0xXSlpbnN0YW5jZW9mIEFycmF5JiYoQT1yKEEpKX1lbHNle2lmKCEobi5sZW5ndGg+MSYmVChuWzFdKSYmInN0cmluZyIhPXR5cGVvZiBuWzFdLnZhbHVlKSlicmVhazt2YXIgbyxzPXkoblsxXS52YWx1ZSx0KSxhPVtdLFE9ZihBKT9BLml0ZW1zOkEudmFsdWVPZigpLGw9elEoUSk7dHJ5e2ZvcihsLnMoKTshKG89bC5uKCkpLmRvbmU7KXt2YXIgaD1vLnZhbHVlO2lmKGYoaCkpYS5wdXNoKGguaXRlbXNbcy0xXSk7ZWxzZXtpZighZyhBKSlicmVhazthLnB1c2goaFtzLTFdKX19fWNhdGNoKEEpe2wuZShBKX1maW5hbGx5e2wuZigpfWlmKGEubGVuZ3RoIT09US5sZW5ndGgpYnJlYWs7QT1mKEEpP25ldyBjKGEpOnIoYSksbi5zcGxpY2UoMSwxKX1yZXR1cm4gbi5sZW5ndGg9PT1lLmRpbWVuc2lvbnMubGVuZ3RoP25ldyBCKE4oQSksZSk6bi5sZW5ndGg+MD8oZT1uZXcgdShuKSxuZXcgQihOKEEpLGUpKTpBfWlmKEgoQSkmJjE9PT1lLmRpbWVuc2lvbnMubGVuZ3RoJiZUKGUuZGltZW5zaW9uc1swXSkpe3ZhciB3PWUuZGltZW5zaW9uc1swXS52YWx1ZTtyZXR1cm4gdyBpbiBBLnByb3BlcnRpZXM/QS5wcm9wZXJ0aWVzW3ddOm5ldyBFfXJldHVybiBuZXcgQihOKEEpLGUpfShHKEEub2JqZWN0LHQpLEcoQS5pbmRleCx0KSx0KTtjYXNlIkFycmF5Tm9kZSI6dmFyIHg9QS5pdGVtcy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBHKEEsdCl9KSk7cmV0dXJuIHguc29tZShiKT9uZXcgYyh4Lm1hcChOKSk6cih4KTtjYXNlIkluZGV4Tm9kZSI6cmV0dXJuIG5ldyB1KEEuZGltZW5zaW9ucy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBtKEEsdCl9KSkpO2Nhc2UiT2JqZWN0Tm9kZSI6dmFyIGs9e307Zm9yKHZhciBqIGluIEEucHJvcGVydGllcylrW2pdPW0oQS5wcm9wZXJ0aWVzW2pdLHQpO3JldHVybiBuZXcgbChrKTtkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVW5pbXBsZW1lbnRlZCBub2RlIHR5cGUgaW4gc2ltcGxpZnlDb25zdGFudDogIi5jb25jYXQoQS50eXBlKSl9fXJldHVybiBtfSkpLE9RPSJzaW1wbGlmeUNvcmUiLFZRPXBBKE9RLFsidHlwZWQiLCJwYXJzZSIsImVxdWFsIiwiaXNaZXJvIiwiYWRkIiwic3VidHJhY3QiLCJtdWx0aXBseSIsImRpdmlkZSIsInBvdyIsIkFjY2Vzc29yTm9kZSIsIkFycmF5Tm9kZSIsIkNvbnN0YW50Tm9kZSIsIkZ1bmN0aW9uTm9kZSIsIkluZGV4Tm9kZSIsIk9iamVjdE5vZGUiLCJPcGVyYXRvck5vZGUiLCJQYXJlbnRoZXNpc05vZGUiLCJTeW1ib2xOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD0oQS5wYXJzZSxBLmVxdWFsKSxuPUEuaXNaZXJvLGk9KEEuYWRkLEEuc3VidHJhY3QsQS5tdWx0aXBseSxBLmRpdmlkZSxBLnBvdyxBLkFjY2Vzc29yTm9kZSkscj1BLkFycmF5Tm9kZSxvPUEuQ29uc3RhbnROb2RlLHM9QS5GdW5jdGlvbk5vZGUsYT1BLkluZGV4Tm9kZSxCPUEuT2JqZWN0Tm9kZSxjPUEuT3BlcmF0b3JOb2RlLGc9KEEuUGFyZW50aGVzaXNOb2RlLEEuU3ltYm9sTm9kZSksRT1uZXcgbygwKSxRPW5ldyBvKDEpLHU9bmV3IG8oITApLGw9bmV3IG8oITEpO2Z1bmN0aW9uIGgoQSl7cmV0dXJuIHYoQSkmJlsiYW5kIiwibm90Iiwib3IiXS5pbmNsdWRlcyhBLm9wKX12YXIgdz1qUSh7RnVuY3Rpb25Ob2RlOnMsT3BlcmF0b3JOb2RlOmMsU3ltYm9sTm9kZTpnfSksQz13Lmhhc1Byb3BlcnR5LEk9dy5pc0NvbW11dGF0aXZlO2Z1bmN0aW9uIE0oQSl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOnt9LG89ZT9lLmNvbnRleHQ6dm9pZCAwO2lmKEMoQSwidHJpdmlhbCIsbykpe2lmKEcoQSkmJjE9PT1BLmFyZ3MubGVuZ3RoKXJldHVybiBNKEEuYXJnc1swXSxlKTt2YXIgZz0hMSx3PTA7aWYoQS5mb3JFYWNoKChmdW5jdGlvbihBKXsxPT0rK3cmJihnPU0oQSxlKSl9KSksMT09PXcpcmV0dXJuIGd9dmFyIGQ9QTtpZihHKGQpKXt2YXIgcD1mdW5jdGlvbihBKXt2YXIgZSx0PSJPcGVyYXRvck5vZGU6IitBLG49ZnVuY3Rpb24oQSxlKXt2YXIgdD0idW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmQVtTeW1ib2wuaXRlcmF0b3JdfHxBWyJAQGl0ZXJhdG9yIl07aWYoIXQpe2lmKEFycmF5LmlzQXJyYXkoQSl8fCh0PWZ1bmN0aW9uKEEsZSl7aWYoQSl7aWYoInN0cmluZyI9PXR5cGVvZiBBKXJldHVybiBaYyhBLGUpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChBKS5zbGljZSg4LC0xKTtyZXR1cm4iT2JqZWN0Ij09PXQmJkEuY29uc3RydWN0b3ImJih0PUEuY29uc3RydWN0b3IubmFtZSksIk1hcCI9PT10fHwiU2V0Ij09PXQ/QXJyYXkuZnJvbShBKToiQXJndW1lbnRzIj09PXR8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KHQpP1pjKEEsZSk6dm9pZCAwfX0oQSkpKXt0JiYoQT10KTt2YXIgbj0wLGk9ZnVuY3Rpb24oKXt9O3JldHVybntzOmksbjpmdW5jdGlvbigpe3JldHVybiBuPj1BLmxlbmd0aD97ZG9uZTohMH06e2RvbmU6ITEsdmFsdWU6QVtuKytdfX0sZTpmdW5jdGlvbihBKXt0aHJvdyBBfSxmOml9fXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBpdGVyYXRlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX12YXIgcixvPSEwLHM9ITE7cmV0dXJue3M6ZnVuY3Rpb24oKXt0PXQuY2FsbChBKX0sbjpmdW5jdGlvbigpe3ZhciBBPXQubmV4dCgpO3JldHVybiBvPUEuZG9uZSxBfSxlOmZ1bmN0aW9uKEEpe3M9ITAscj1BfSxmOmZ1bmN0aW9uKCl7dHJ5e298fG51bGw9PXQucmV0dXJufHx0LnJldHVybigpfWZpbmFsbHl7aWYocyl0aHJvdyByfX19fShfYyk7dHJ5e2ZvcihuLnMoKTshKGU9bi5uKCkpLmRvbmU7KXt2YXIgaT1lLnZhbHVlO2lmKHQgaW4gaSlyZXR1cm4gaVt0XS5vcH19Y2F0Y2goQSl7bi5lKEEpfWZpbmFsbHl7bi5mKCl9cmV0dXJuIG51bGx9KGQubmFtZSk7aWYoIXApcmV0dXJuIG5ldyBzKE0oZC5mbiksZC5hcmdzLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIE0oQSxlKX0pKSk7aWYoZC5hcmdzLmxlbmd0aD4yJiZDKGQsImFzc29jaWF0aXZlIixvKSlmb3IoO2QuYXJncy5sZW5ndGg+Mjspe3ZhciBtPWQuYXJncy5wb3AoKSxGPWQuYXJncy5wb3AoKTtkLmFyZ3MucHVzaChuZXcgYyhwLGQubmFtZSxbbSxGXSkpfWQ9bmV3IGMocCxkLm5hbWUsZC5hcmdzKX1pZih2KGQpJiZkLmlzVW5hcnkoKSl7dmFyIEQ9TShkLmFyZ3NbMF0sZSk7aWYoIn4iPT09ZC5vcCYmdihEKSYmRC5pc1VuYXJ5KCkmJiJ+Ij09PUQub3ApcmV0dXJuIEQuYXJnc1swXTtpZigibm90Ij09PWQub3AmJnYoRCkmJkQuaXNVbmFyeSgpJiYibm90Ij09PUQub3AmJmgoRC5hcmdzWzBdKSlyZXR1cm4gRC5hcmdzWzBdO3ZhciBOPSEwO2lmKCItIj09PWQub3AmJnYoRCkmJihELmlzQmluYXJ5KCkmJiJzdWJ0cmFjdCI9PT1ELmZuJiYoZD1uZXcgYygiLSIsInN1YnRyYWN0IixbRC5hcmdzWzFdLEQuYXJnc1swXV0pLE49ITEpLEQuaXNVbmFyeSgpJiYiLSI9PT1ELm9wKSlyZXR1cm4gRC5hcmdzWzBdO2lmKE4pcmV0dXJuIG5ldyBjKGQub3AsZC5mbixbRF0pfWlmKHYoZCkmJmQuaXNCaW5hcnkoKSl7dmFyIFU9TShkLmFyZ3NbMF0sZSkseT1NKGQuYXJnc1sxXSxlKTtpZigiKyI9PT1kLm9wKXtpZihUKFUpJiZuKFUudmFsdWUpKXJldHVybiB5O2lmKFQoeSkmJm4oeS52YWx1ZSkpcmV0dXJuIFU7dih5KSYmeS5pc1VuYXJ5KCkmJiItIj09PXkub3AmJih5PXkuYXJnc1swXSxkPW5ldyBjKCItIiwic3VidHJhY3QiLFtVLHldKSl9aWYoIi0iPT09ZC5vcClyZXR1cm4gdih5KSYmeS5pc1VuYXJ5KCkmJiItIj09PXkub3A/TShuZXcgYygiKyIsImFkZCIsW1UseS5hcmdzWzBdXSksZSk6VChVKSYmbihVLnZhbHVlKT9NKG5ldyBjKCItIiwidW5hcnlNaW51cyIsW3ldKSk6VCh5KSYmbih5LnZhbHVlKT9VOm5ldyBjKGQub3AsZC5mbixbVSx5XSk7aWYoIioiPT09ZC5vcCl7aWYoVChVKSl7aWYobihVLnZhbHVlKSlyZXR1cm4gRTtpZih0KFUudmFsdWUsMSkpcmV0dXJuIHl9aWYoVCh5KSl7aWYobih5LnZhbHVlKSlyZXR1cm4gRTtpZih0KHkudmFsdWUsMSkpcmV0dXJuIFU7aWYoSShkLG8pKXJldHVybiBuZXcgYyhkLm9wLGQuZm4sW3ksVV0sZC5pbXBsaWNpdCl9cmV0dXJuIG5ldyBjKGQub3AsZC5mbixbVSx5XSxkLmltcGxpY2l0KX1pZigiLyI9PT1kLm9wKXJldHVybiBUKFUpJiZuKFUudmFsdWUpP0U6VCh5KSYmdCh5LnZhbHVlLDEpP1U6bmV3IGMoZC5vcCxkLmZuLFtVLHldKTtpZigiXiI9PT1kLm9wJiZUKHkpKXtpZihuKHkudmFsdWUpKXJldHVybiBRO2lmKHQoeS52YWx1ZSwxKSlyZXR1cm4gVX1pZigiYW5kIj09PWQub3Ape2lmKFQoVSkpe2lmKCFVLnZhbHVlKXJldHVybiBsO2lmKGgoeSkpcmV0dXJuIHl9aWYoVCh5KSl7aWYoIXkudmFsdWUpcmV0dXJuIGw7aWYoaChVKSlyZXR1cm4gVX19aWYoIm9yIj09PWQub3Ape2lmKFQoVSkpe2lmKFUudmFsdWUpcmV0dXJuIHU7aWYoaCh5KSlyZXR1cm4geX1pZihUKHkpKXtpZih5LnZhbHVlKXJldHVybiB1O2lmKGgoVSkpcmV0dXJuIFV9fXJldHVybiBuZXcgYyhkLm9wLGQuZm4sW1UseV0pfWlmKHYoZCkpcmV0dXJuIG5ldyBjKGQub3AsZC5mbixkLmFyZ3MubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gTShBLGUpfSkpKTtpZihmKGQpKXJldHVybiBuZXcgcihkLml0ZW1zLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIE0oQSxlKX0pKSk7aWYoWShkKSlyZXR1cm4gbmV3IGkoTShkLm9iamVjdCxlKSxNKGQuaW5kZXgsZSkpO2lmKFMoZCkpcmV0dXJuIG5ldyBhKGQuZGltZW5zaW9ucy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBNKEEsZSl9KSkpO2lmKEgoZCkpe3ZhciB4PXt9O2Zvcih2YXIgUiBpbiBkLnByb3BlcnRpZXMpeFtSXT1NKGQucHJvcGVydGllc1tSXSxlKTtyZXR1cm4gbmV3IEIoeCl9cmV0dXJuIGR9cmV0dXJuIGUoT1Ese05vZGU6TSwiTm9kZSxPYmplY3QiOk19KX0pKSxXUT1wQSgicmVzb2x2ZSIsWyJ0eXBlZCIsInBhcnNlIiwiQ29uc3RhbnROb2RlIiwiRnVuY3Rpb25Ob2RlIiwiT3BlcmF0b3JOb2RlIiwiUGFyZW50aGVzaXNOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLnBhcnNlLG49QS5Db25zdGFudE5vZGUsaT1BLkZ1bmN0aW9uTm9kZSxyPUEuT3BlcmF0b3JOb2RlLG89QS5QYXJlbnRoZXNpc05vZGU7ZnVuY3Rpb24gcyhBLGUpe3ZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpuZXcgU2V0O2lmKCFlKXJldHVybiBBO2lmKHooQSkpe2lmKGEuaGFzKEEubmFtZSkpe3ZhciBCPUFycmF5LmZyb20oYSkuam9pbigiLCAiKTt0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoInJlY3Vyc2l2ZSBsb29wIG9mIHZhcmlhYmxlIGRlZmluaXRpb25zIGFtb25nIHsiLmNvbmNhdChCLCJ9IikpfXZhciBjPWUuZ2V0KEEubmFtZSk7aWYoYihjKSl7dmFyIGc9bmV3IFNldChhKTtyZXR1cm4gZy5hZGQoQS5uYW1lKSxzKGMsZSxnKX1yZXR1cm4ibnVtYmVyIj09dHlwZW9mIGM/dChTdHJpbmcoYykpOnZvaWQgMCE9PWM/bmV3IG4oYyk6QX1pZih2KEEpKXt2YXIgRT1BLmFyZ3MubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gcyhBLGUsYSl9KSk7cmV0dXJuIG5ldyByKEEub3AsQS5mbixFLEEuaW1wbGljaXQpfWlmKGsoQSkpcmV0dXJuIG5ldyBvKHMoQS5jb250ZW50LGUsYSkpO2lmKEcoQSkpe3ZhciBRPUEuYXJncy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBzKEEsZSxhKX0pKTtyZXR1cm4gbmV3IGkoQS5uYW1lLFEpfXJldHVybiBBLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIHMoQSxlLGEpfSkpfXJldHVybiBlKCJyZXNvbHZlIix7Tm9kZTpzLCJOb2RlLCBNYXAgfCBudWxsIHwgdW5kZWZpbmVkIjpzLCJOb2RlLCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHMoQSxqQShlKSl9LCJBcnJheSB8IE1hdHJpeCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBlLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIEEoZSl9KSl9fSkpLCJBcnJheSB8IE1hdHJpeCwgbnVsbCB8IHVuZGVmaW5lZCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBlLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIEEoZSl9KSl9fSkpLCJBcnJheSwgT2JqZWN0IjplLnJlZmVyVG8oIkFycmF5LE1hcCIsKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBBKGUsakEodCkpfX0pKSwiTWF0cml4LCBPYmplY3QiOmUucmVmZXJUbygiTWF0cml4LE1hcCIsKGZ1bmN0aW9uKEEpe3JldHVybiBmdW5jdGlvbihlLHQpe3JldHVybiBBKGUsakEodCkpfX0pKSwiQXJyYXkgfCBNYXRyaXgsIE1hcCI6ZS5yZWZlclRvU2VsZigoZnVuY3Rpb24oQSl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gQShlLHQpfSkpfX0pKX0pfSkpLEtRPSJzeW1ib2xpY0VxdWFsIixYUT1wQShLUSxbInBhcnNlIiwic2ltcGxpZnkiLCJ0eXBlZCIsIk9wZXJhdG9yTm9kZSJdLChmdW5jdGlvbihBKXtBLnBhcnNlO3ZhciBlPUEuc2ltcGxpZnksdD1BLnR5cGVkLG49QS5PcGVyYXRvck5vZGU7ZnVuY3Rpb24gaShBLHQpe3ZhciBpPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fSxyPW5ldyBuKCItIiwic3VidHJhY3QiLFtBLHRdKSxvPWUocix7fSxpKTtyZXR1cm4gVChvKSYmIW8udmFsdWV9cmV0dXJuIHQoS1EseyJOb2RlLCBOb2RlIjppLCJOb2RlLCBOb2RlLCBPYmplY3QiOml9KX0pKSxaUT0iZGVyaXZhdGl2ZSIsX1E9cEEoWlEsWyJ0eXBlZCIsImNvbmZpZyIsInBhcnNlIiwic2ltcGxpZnkiLCJlcXVhbCIsImlzWmVybyIsIm51bWVyaWMiLCJDb25zdGFudE5vZGUiLCJGdW5jdGlvbk5vZGUiLCJPcGVyYXRvck5vZGUiLCJQYXJlbnRoZXNpc05vZGUiLCJTeW1ib2xOb2RlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEucGFyc2UsaT1BLnNpbXBsaWZ5LHI9QS5lcXVhbCxvPUEuaXNaZXJvLHM9QS5udW1lcmljLGE9QS5Db25zdGFudE5vZGUsQj1BLkZ1bmN0aW9uTm9kZSxjPUEuT3BlcmF0b3JOb2RlLGc9QS5QYXJlbnRoZXNpc05vZGUsRT1BLlN5bWJvbE5vZGU7ZnVuY3Rpb24gUShBLGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7c2ltcGxpZnk6ITB9LG49e307aChuLEEsZS5uYW1lKTt2YXIgcj13KEEsbik7cmV0dXJuIHQuc2ltcGxpZnk/aShyKTpyfWUuYWRkQ29udmVyc2lvbih7ZnJvbToiaWRlbnRpZmllciIsdG86IlN5bWJvbE5vZGUiLGNvbnZlcnQ6bn0pO3ZhciB1PWUoWlEseyJOb2RlLCBTeW1ib2xOb2RlIjpRLCJOb2RlLCBTeW1ib2xOb2RlLCBPYmplY3QiOlF9KTtlLnJlbW92ZUNvbnZlcnNpb24oe2Zyb206ImlkZW50aWZpZXIiLHRvOiJTeW1ib2xOb2RlIixjb252ZXJ0Om59KSx1Ll9zaW1wbGlmeT0hMCx1LnRvVGV4PWZ1bmN0aW9uKEEpe3JldHVybiBsLmFwcGx5KG51bGwsQS5hcmdzKX07dmFyIGw9ZSgiX2Rlcml2VGV4Iix7Ik5vZGUsIFN5bWJvbE5vZGUiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIFQoQSkmJiJzdHJpbmciPT09UChBLnZhbHVlKT9sKG4oQS52YWx1ZSkudG9TdHJpbmcoKSxlLnRvU3RyaW5nKCksMSk6bChBLnRvVGV4KCksZS50b1N0cmluZygpLDEpfSwiTm9kZSwgQ29uc3RhbnROb2RlIjpmdW5jdGlvbihBLGUpe2lmKCJzdHJpbmciPT09UChlLnZhbHVlKSlyZXR1cm4gbChBLG4oZS52YWx1ZSkpO3Rocm93IG5ldyBFcnJvcigiVGhlIHNlY29uZCBwYXJhbWV0ZXIgdG8gJ2Rlcml2YXRpdmUnIGlzIGEgbm9uLXN0cmluZyBjb25zdGFudCIpfSwiTm9kZSwgU3ltYm9sTm9kZSwgQ29uc3RhbnROb2RlIjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIGwoQS50b1N0cmluZygpLGUubmFtZSx0LnZhbHVlKX0sInN0cmluZywgc3RyaW5nLCBudW1iZXIiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4oMT09PXQ/IntkXFxvdmVyIGQiK2UrIn0iOiJ7ZF57Iit0KyJ9XFxvdmVyIGQiK2UrIl57Iit0KyJ9fSIpKyJcXGxlZnRbIi5jb25jYXQoQSwiXFxyaWdodF0iKX19KSxoPWUoImNvbnN0VGFnIix7Ik9iamVjdCwgQ29uc3RhbnROb2RlLCBzdHJpbmciOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEFbZV09ITAsITB9LCJPYmplY3QsIFN5bWJvbE5vZGUsIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBlLm5hbWUhPT10JiYoQVtlXT0hMCwhMCl9LCJPYmplY3QsIFBhcmVudGhlc2lzTm9kZSwgc3RyaW5nIjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIGgoQSxlLmNvbnRlbnQsdCl9LCJPYmplY3QsIEZ1bmN0aW9uQXNzaWdubWVudE5vZGUsIHN0cmluZyI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybi0xPT09ZS5wYXJhbXMuaW5kZXhPZih0KT8oQVtlXT0hMCwhMCk6aChBLGUuZXhwcix0KX0sIk9iamVjdCwgRnVuY3Rpb25Ob2RlIHwgT3BlcmF0b3JOb2RlLCBzdHJpbmciOmZ1bmN0aW9uKEEsZSx0KXtpZihlLmFyZ3MubGVuZ3RoPjApe2Zvcih2YXIgbj1oKEEsZS5hcmdzWzBdLHQpLGk9MTtpPGUuYXJncy5sZW5ndGg7KytpKW49aChBLGUuYXJnc1tpXSx0KSYmbjtpZihuKXJldHVybiBBW2VdPSEwLCEwfXJldHVybiExfX0pLHc9ZSgiX2Rlcml2YXRpdmUiLHsiQ29uc3RhbnROb2RlLCBPYmplY3QiOmZ1bmN0aW9uKEEpe3JldHVybiBDKDApfSwiU3ltYm9sTm9kZSwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiB2b2lkIDAhPT1lW0FdP0MoMCk6QygxKX0sIlBhcmVudGhlc2lzTm9kZSwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe3JldHVybiBuZXcgZyh3KEEuY29udGVudCxlKSl9LCJGdW5jdGlvbkFzc2lnbm1lbnROb2RlLCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHZvaWQgMCE9PWVbQV0/QygwKTp3KEEuZXhwcixlKX0sIkZ1bmN0aW9uTm9kZSwgT2JqZWN0IjpmdW5jdGlvbihBLGUpe2lmKDEhPT1BLmFyZ3MubGVuZ3RoJiZmdW5jdGlvbihBKXtpZigibG9nIiE9PUEubmFtZSYmIm50aFJvb3QiIT09QS5uYW1lJiYicG93IiE9PUEubmFtZXx8MiE9PUEuYXJncy5sZW5ndGgpe2Zvcih2YXIgZT0wO2U8QS5hcmdzLmxlbmd0aDsrK2UpQS5hcmdzW2VdPUMoMCk7dGhyb3cgQS5jb21waWxlKCkuZXZhbHVhdGUoKSxuZXcgRXJyb3IoJ0Z1bmN0aW9uICInK0EubmFtZSsnIiBpcyBub3Qgc3VwcG9ydGVkIGJ5IGRlcml2YXRpdmUsIG9yIGEgd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyBpcyBwYXNzZWQnKX19KEEpLHZvaWQgMCE9PWVbQV0pcmV0dXJuIEMoMCk7dmFyIHQsbixpLHIsbz1BLmFyZ3NbMF0scz0hMSxhPSExO3N3aXRjaChBLm5hbWUpe2Nhc2UiY2JydCI6cz0hMCxuPW5ldyBjKCIqIiwibXVsdGlwbHkiLFtDKDMpLG5ldyBjKCJeIiwicG93IixbbyxuZXcgYygiLyIsImRpdmlkZSIsW0MoMiksQygzKV0pXSldKTticmVhaztjYXNlInNxcnQiOmNhc2UibnRoUm9vdCI6aWYoMT09PUEuYXJncy5sZW5ndGgpcz0hMCxuPW5ldyBjKCIqIiwibXVsdGlwbHkiLFtDKDIpLG5ldyBCKCJzcXJ0Iixbb10pXSk7ZWxzZSBpZigyPT09QS5hcmdzLmxlbmd0aClyZXR1cm4gZVt0PW5ldyBjKCIvIiwiZGl2aWRlIixbQygxKSxBLmFyZ3NbMV1dKV09ZVtBLmFyZ3NbMV1dLHcobmV3IGMoIl4iLCJwb3ciLFtvLHRdKSxlKTticmVhaztjYXNlImxvZzEwIjp0PUMoMTApO2Nhc2UibG9nIjppZih0fHwxIT09QS5hcmdzLmxlbmd0aCl7aWYoMT09PUEuYXJncy5sZW5ndGgmJnR8fDI9PT1BLmFyZ3MubGVuZ3RoJiZ2b2lkIDAhPT1lW0EuYXJnc1sxXV0pbj1uZXcgYygiKiIsIm11bHRpcGx5Iixbby5jbG9uZSgpLG5ldyBCKCJsb2ciLFt0fHxBLmFyZ3NbMV1dKV0pLHM9ITA7ZWxzZSBpZigyPT09QS5hcmdzLmxlbmd0aClyZXR1cm4gdyhuZXcgYygiLyIsImRpdmlkZSIsW25ldyBCKCJsb2ciLFtvXSksbmV3IEIoImxvZyIsW0EuYXJnc1sxXV0pXSksZSl9ZWxzZSBuPW8uY2xvbmUoKSxzPSEwO2JyZWFrO2Nhc2UicG93IjpyZXR1cm4gZVt0XT1lW0EuYXJnc1sxXV0sdyhuZXcgYygiXiIsInBvdyIsW28sQS5hcmdzWzFdXSksZSk7Y2FzZSJleHAiOm49bmV3IEIoImV4cCIsW28uY2xvbmUoKV0pO2JyZWFrO2Nhc2Uic2luIjpuPW5ldyBCKCJjb3MiLFtvLmNsb25lKCldKTticmVhaztjYXNlImNvcyI6bj1uZXcgYygiLSIsInVuYXJ5TWludXMiLFtuZXcgQigic2luIixbby5jbG9uZSgpXSldKTticmVhaztjYXNlInRhbiI6bj1uZXcgYygiXiIsInBvdyIsW25ldyBCKCJzZWMiLFtvLmNsb25lKCldKSxDKDIpXSk7YnJlYWs7Y2FzZSJzZWMiOm49bmV3IGMoIioiLCJtdWx0aXBseSIsW0EsbmV3IEIoInRhbiIsW28uY2xvbmUoKV0pXSk7YnJlYWs7Y2FzZSJjc2MiOmE9ITAsbj1uZXcgYygiKiIsIm11bHRpcGx5IixbQSxuZXcgQigiY290Iixbby5jbG9uZSgpXSldKTticmVhaztjYXNlImNvdCI6YT0hMCxuPW5ldyBjKCJeIiwicG93IixbbmV3IEIoImNzYyIsW28uY2xvbmUoKV0pLEMoMildKTticmVhaztjYXNlImFzaW4iOnM9ITAsbj1uZXcgQigic3FydCIsW25ldyBjKCItIiwic3VidHJhY3QiLFtDKDEpLG5ldyBjKCJeIiwicG93Iixbby5jbG9uZSgpLEMoMildKV0pXSk7YnJlYWs7Y2FzZSJhY29zIjpzPSEwLGE9ITAsbj1uZXcgQigic3FydCIsW25ldyBjKCItIiwic3VidHJhY3QiLFtDKDEpLG5ldyBjKCJeIiwicG93Iixbby5jbG9uZSgpLEMoMildKV0pXSk7YnJlYWs7Y2FzZSJhdGFuIjpzPSEwLG49bmV3IGMoIisiLCJhZGQiLFtuZXcgYygiXiIsInBvdyIsW28uY2xvbmUoKSxDKDIpXSksQygxKV0pO2JyZWFrO2Nhc2UiYXNlYyI6cz0hMCxuPW5ldyBjKCIqIiwibXVsdGlwbHkiLFtuZXcgQigiYWJzIixbby5jbG9uZSgpXSksbmV3IEIoInNxcnQiLFtuZXcgYygiLSIsInN1YnRyYWN0IixbbmV3IGMoIl4iLCJwb3ciLFtvLmNsb25lKCksQygyKV0pLEMoMSldKV0pXSk7YnJlYWs7Y2FzZSJhY3NjIjpzPSEwLGE9ITAsbj1uZXcgYygiKiIsIm11bHRpcGx5IixbbmV3IEIoImFicyIsW28uY2xvbmUoKV0pLG5ldyBCKCJzcXJ0IixbbmV3IGMoIi0iLCJzdWJ0cmFjdCIsW25ldyBjKCJeIiwicG93Iixbby5jbG9uZSgpLEMoMildKSxDKDEpXSldKV0pO2JyZWFrO2Nhc2UiYWNvdCI6cz0hMCxhPSEwLG49bmV3IGMoIisiLCJhZGQiLFtuZXcgYygiXiIsInBvdyIsW28uY2xvbmUoKSxDKDIpXSksQygxKV0pO2JyZWFrO2Nhc2Uic2luaCI6bj1uZXcgQigiY29zaCIsW28uY2xvbmUoKV0pO2JyZWFrO2Nhc2UiY29zaCI6bj1uZXcgQigic2luaCIsW28uY2xvbmUoKV0pO2JyZWFrO2Nhc2UidGFuaCI6bj1uZXcgYygiXiIsInBvdyIsW25ldyBCKCJzZWNoIixbby5jbG9uZSgpXSksQygyKV0pO2JyZWFrO2Nhc2Uic2VjaCI6YT0hMCxuPW5ldyBjKCIqIiwibXVsdGlwbHkiLFtBLG5ldyBCKCJ0YW5oIixbby5jbG9uZSgpXSldKTticmVhaztjYXNlImNzY2giOmE9ITAsbj1uZXcgYygiKiIsIm11bHRpcGx5IixbQSxuZXcgQigiY290aCIsW28uY2xvbmUoKV0pXSk7YnJlYWs7Y2FzZSJjb3RoIjphPSEwLG49bmV3IGMoIl4iLCJwb3ciLFtuZXcgQigiY3NjaCIsW28uY2xvbmUoKV0pLEMoMildKTticmVhaztjYXNlImFzaW5oIjpzPSEwLG49bmV3IEIoInNxcnQiLFtuZXcgYygiKyIsImFkZCIsW25ldyBjKCJeIiwicG93Iixbby5jbG9uZSgpLEMoMildKSxDKDEpXSldKTticmVhaztjYXNlImFjb3NoIjpzPSEwLG49bmV3IEIoInNxcnQiLFtuZXcgYygiLSIsInN1YnRyYWN0IixbbmV3IGMoIl4iLCJwb3ciLFtvLmNsb25lKCksQygyKV0pLEMoMSldKV0pO2JyZWFrO2Nhc2UiYXRhbmgiOnM9ITAsbj1uZXcgYygiLSIsInN1YnRyYWN0IixbQygxKSxuZXcgYygiXiIsInBvdyIsW28uY2xvbmUoKSxDKDIpXSldKTticmVhaztjYXNlImFzZWNoIjpzPSEwLGE9ITAsbj1uZXcgYygiKiIsIm11bHRpcGx5Iixbby5jbG9uZSgpLG5ldyBCKCJzcXJ0IixbbmV3IGMoIi0iLCJzdWJ0cmFjdCIsW0MoMSksbmV3IGMoIl4iLCJwb3ciLFtvLmNsb25lKCksQygyKV0pXSldKV0pO2JyZWFrO2Nhc2UiYWNzY2giOnM9ITAsYT0hMCxuPW5ldyBjKCIqIiwibXVsdGlwbHkiLFtuZXcgQigiYWJzIixbby5jbG9uZSgpXSksbmV3IEIoInNxcnQiLFtuZXcgYygiKyIsImFkZCIsW25ldyBjKCJeIiwicG93Iixbby5jbG9uZSgpLEMoMildKSxDKDEpXSldKV0pO2JyZWFrO2Nhc2UiYWNvdGgiOnM9ITAsYT0hMCxuPW5ldyBjKCItIiwic3VidHJhY3QiLFtDKDEpLG5ldyBjKCJeIiwicG93Iixbby5jbG9uZSgpLEMoMildKV0pO2JyZWFrO2Nhc2UiYWJzIjpuPW5ldyBjKCIvIiwiZGl2aWRlIixbbmV3IEIobmV3IEUoImFicyIpLFtvLmNsb25lKCldKSxvLmNsb25lKCldKTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcignRnVuY3Rpb24gIicrQS5uYW1lKyciIGlzIG5vdCBzdXBwb3J0ZWQgYnkgZGVyaXZhdGl2ZSwgb3IgYSB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzIGlzIHBhc3NlZCcpfXM/KGk9Ii8iLHI9ImRpdmlkZSIpOihpPSIqIixyPSJtdWx0aXBseSIpO3ZhciBnPXcobyxlKTtyZXR1cm4gYSYmKGc9bmV3IGMoIi0iLCJ1bmFyeU1pbnVzIixbZ10pKSxuZXcgYyhpLHIsW2csbl0pfSwiT3BlcmF0b3JOb2RlLCBPYmplY3QiOmZ1bmN0aW9uKEEsZSl7aWYodm9pZCAwIT09ZVtBXSlyZXR1cm4gQygwKTtpZigiKyI9PT1BLm9wKXJldHVybiBuZXcgYyhBLm9wLEEuZm4sQS5hcmdzLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIHcoQSxlKX0pKSk7aWYoIi0iPT09QS5vcCl7aWYoQS5pc1VuYXJ5KCkpcmV0dXJuIG5ldyBjKEEub3AsQS5mbixbdyhBLmFyZ3NbMF0sZSldKTtpZihBLmlzQmluYXJ5KCkpcmV0dXJuIG5ldyBjKEEub3AsQS5mbixbdyhBLmFyZ3NbMF0sZSksdyhBLmFyZ3NbMV0sZSldKX1pZigiKiI9PT1BLm9wKXt2YXIgdD1BLmFyZ3MuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gdm9pZCAwIT09ZVtBXX0pKTtpZih0Lmxlbmd0aD4wKXt2YXIgbj1BLmFyZ3MuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gdm9pZCAwPT09ZVtBXX0pKSxpPTE9PT1uLmxlbmd0aD9uWzBdOm5ldyBjKCIqIiwibXVsdGlwbHkiLG4pLHM9dC5jb25jYXQodyhpLGUpKTtyZXR1cm4gbmV3IGMoIioiLCJtdWx0aXBseSIscyl9cmV0dXJuIG5ldyBjKCIrIiwiYWRkIixBLmFyZ3MubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gbmV3IGMoIioiLCJtdWx0aXBseSIsQS5hcmdzLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEE9PT10P3coQSxlKTpBLmNsb25lKCl9KSkpfSkpKX1pZigiLyI9PT1BLm9wJiZBLmlzQmluYXJ5KCkpe3ZhciBhPUEuYXJnc1swXSxnPUEuYXJnc1sxXTtyZXR1cm4gdm9pZCAwIT09ZVtnXT9uZXcgYygiLyIsImRpdmlkZSIsW3coYSxlKSxnXSk6dm9pZCAwIT09ZVthXT9uZXcgYygiKiIsIm11bHRpcGx5IixbbmV3IGMoIi0iLCJ1bmFyeU1pbnVzIixbYV0pLG5ldyBjKCIvIiwiZGl2aWRlIixbdyhnLGUpLG5ldyBjKCJeIiwicG93IixbZy5jbG9uZSgpLEMoMildKV0pXSk6bmV3IGMoIi8iLCJkaXZpZGUiLFtuZXcgYygiLSIsInN1YnRyYWN0IixbbmV3IGMoIioiLCJtdWx0aXBseSIsW3coYSxlKSxnLmNsb25lKCldKSxuZXcgYygiKiIsIm11bHRpcGx5IixbYS5jbG9uZSgpLHcoZyxlKV0pXSksbmV3IGMoIl4iLCJwb3ciLFtnLmNsb25lKCksQygyKV0pXSl9aWYoIl4iPT09QS5vcCYmQS5pc0JpbmFyeSgpKXt2YXIgRT1BLmFyZ3NbMF0sUT1BLmFyZ3NbMV07aWYodm9pZCAwIT09ZVtFXSlyZXR1cm4gVChFKSYmKG8oRS52YWx1ZSl8fHIoRS52YWx1ZSwxKSk/QygwKTpuZXcgYygiKiIsIm11bHRpcGx5IixbQSxuZXcgYygiKiIsIm11bHRpcGx5IixbbmV3IEIoImxvZyIsW0UuY2xvbmUoKV0pLHcoUS5jbG9uZSgpLGUpXSldKTtpZih2b2lkIDAhPT1lW1FdKXtpZihUKFEpKXtpZihvKFEudmFsdWUpKXJldHVybiBDKDApO2lmKHIoUS52YWx1ZSwxKSlyZXR1cm4gdyhFLGUpfXZhciB1PW5ldyBjKCJeIiwicG93IixbRS5jbG9uZSgpLG5ldyBjKCItIiwic3VidHJhY3QiLFtRLEMoMSldKV0pO3JldHVybiBuZXcgYygiKiIsIm11bHRpcGx5IixbUS5jbG9uZSgpLG5ldyBjKCIqIiwibXVsdGlwbHkiLFt3KEUsZSksdV0pXSl9cmV0dXJuIG5ldyBjKCIqIiwibXVsdGlwbHkiLFtuZXcgYygiXiIsInBvdyIsW0UuY2xvbmUoKSxRLmNsb25lKCldKSxuZXcgYygiKyIsImFkZCIsW25ldyBjKCIqIiwibXVsdGlwbHkiLFt3KEUsZSksbmV3IGMoIi8iLCJkaXZpZGUiLFtRLmNsb25lKCksRS5jbG9uZSgpXSldKSxuZXcgYygiKiIsIm11bHRpcGx5IixbdyhRLGUpLG5ldyBCKCJsb2ciLFtFLmNsb25lKCldKV0pXSldKX10aHJvdyBuZXcgRXJyb3IoJ09wZXJhdG9yICInK0Eub3ArJyIgaXMgbm90IHN1cHBvcnRlZCBieSBkZXJpdmF0aXZlLCBvciBhIHdyb25nIG51bWJlciBvZiBhcmd1bWVudHMgaXMgcGFzc2VkJyl9fSk7ZnVuY3Rpb24gQyhBLGUpe3JldHVybiBuZXcgYShzKEEsZXx8dC5udW1iZXIpKX1yZXR1cm4gdX0pKSxxUT0icmF0aW9uYWxpemUiLCRRPXBBKHFRLFsiY29uZmlnIiwidHlwZWQiLCJlcXVhbCIsImlzWmVybyIsImFkZCIsInN1YnRyYWN0IiwibXVsdGlwbHkiLCJkaXZpZGUiLCJwb3ciLCJwYXJzZSIsInNpbXBsaWZ5Q29uc3RhbnQiLCJzaW1wbGlmeUNvcmUiLCJzaW1wbGlmeSIsIj9iaWdudW1iZXIiLCI/ZnJhY3Rpb24iLCJtYXRoV2l0aFRyYW5zZm9ybSIsIm1hdHJpeCIsIkFjY2Vzc29yTm9kZSIsIkFycmF5Tm9kZSIsIkNvbnN0YW50Tm9kZSIsIkZ1bmN0aW9uTm9kZSIsIkluZGV4Tm9kZSIsIk9iamVjdE5vZGUiLCJPcGVyYXRvck5vZGUiLCJTeW1ib2xOb2RlIiwiUGFyZW50aGVzaXNOb2RlIl0sKGZ1bmN0aW9uKEEpe0EuY29uZmlnO3ZhciBlPUEudHlwZWQsdD0oQS5lcXVhbCxBLmlzWmVybyxBLmFkZCxBLnN1YnRyYWN0LEEubXVsdGlwbHksQS5kaXZpZGUsQS5wb3csQS5wYXJzZSxBLnNpbXBsaWZ5Q29uc3RhbnQpLG49QS5zaW1wbGlmeUNvcmUsaT1BLnNpbXBsaWZ5LHI9KEEuZnJhY3Rpb24sQS5iaWdudW1iZXIsQS5tYXRoV2l0aFRyYW5zZm9ybSxBLm1hdHJpeCxBLkFjY2Vzc29yTm9kZSxBLkFycmF5Tm9kZSxBLkNvbnN0YW50Tm9kZSksbz0oQS5GdW5jdGlvbk5vZGUsQS5JbmRleE5vZGUsQS5PYmplY3ROb2RlLEEuT3BlcmF0b3JOb2RlKSxzPUEuU3ltYm9sTm9kZTtmdW5jdGlvbiBhKEEpe3ZhciBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fSxyPWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sbz1mdW5jdGlvbigpe3ZhciBBPVtuLHtsOiJuK24iLHI6IjIqbiJ9LHtsOiJuKy1uIixyOiIwIn0sdCx7bDoibioobjFeLTEpIixyOiJuL24xIn0se2w6Im4qbjFeLW4yIixyOiJuL24xXm4yIn0se2w6Im4xXi0xIixyOiIxL24xIn0se2w6Im4qKG4xL24yKSIscjoiKG4qbjEpL24yIn0se2w6IjEqbiIscjoibiJ9XSxlPVt7bDoiKC1uMSkvKC1uMikiLHI6Im4xL24yIn0se2w6IigtbjEpKigtbjIpIixyOiJuMSpuMiJ9LHtsOiJuMS0tbjIiLHI6Im4xK24yIn0se2w6Im4xLW4yIixyOiJuMSsoLW4yKSJ9LHtsOiIobjErbjIpKm4zIixyOiIobjEqbjMgKyBuMipuMykifSx7bDoibjEqKG4yK24zKSIscjoiKG4xKm4yK24xKm4zKSJ9LHtsOiJjMSpuICsgYzIqbiIscjoiKGMxK2MyKSpuIn0se2w6ImMxKm4gKyBuIixyOiIoYzErMSkqbiJ9LHtsOiJjMSpuIC0gYzIqbiIscjoiKGMxLWMyKSpuIn0se2w6ImMxKm4gLSBuIixyOiIoYzEtMSkqbiJ9LHtsOiJ2L2MiLHI6IigxL2MpKnYifSx7bDoidi8tYyIscjoiLSgxL2MpKnYifSx7bDoiLXYqLWMiLHI6ImMqdiJ9LHtsOiItdipjIixyOiItYyp2In0se2w6InYqLWMiLHI6Ii1jKnYifSx7bDoidipjIixyOiJjKnYifSx7bDoiLSgtbjEqbjIpIixyOiIobjEqbjIpIn0se2w6Ii0objEqbjIpIixyOiIoLW4xKm4yKSJ9LHtsOiItKC1uMStuMikiLHI6IihuMS1uMikifSx7bDoiLShuMStuMikiLHI6IigtbjEtbjIpIn0se2w6IihuMV5uMilebjMiLHI6IihuMV4objIqbjMpKSJ9LHtsOiItKC1uMS9uMikiLHI6IihuMS9uMikifSx7bDoiLShuMS9uMikiLHI6IigtbjEvbjIpIn1dLGk9W3tsOiIobjEvKG4yL24zKSkiLHI6IigobjEqbjMpL24yKSJ9LHtsOiIobjEvbjIvbjMpIixyOiIobjEvKG4yKm4zKSkifV0scj17fTtyZXR1cm4gci5maXJzdFJ1bGVzPUEuY29uY2F0KGUsaSksci5kaXN0ckRpdlJ1bGVzPVt7bDoiKG4xL24yICsgbjMvbjQpIixyOiIoKG4xKm40ICsgbjMqbjIpLyhuMipuNCkpIn0se2w6IihuMS9uMiArIG4zKSIscjoiKChuMSArIG4zKm4yKS9uMikifSx7bDoiKG4xICsgbjIvbjMpIixyOiIoKG4xKm4zICsgbjIpL24zKSJ9XSxyLnN1Y0RpdlJ1bGVzPWksci5maXJzdFJ1bGVzQWdhaW49QS5jb25jYXQoZSksci5maW5hbFJ1bGVzPVtuLHtsOiJuKi1uIixyOiItbl4yIn0se2w6Im4qbiIscjoibl4yIn0sdCx7bDoibiotbl5uMSIscjoiLW5eKG4xKzEpIn0se2w6Im4qbl5uMSIscjoibl4objErMSkifSx7bDoibl5uMSotbl5uMiIscjoiLW5eKG4xK24yKSJ9LHtsOiJuXm4xKm5ebjIiLHI6Im5eKG4xK24yKSJ9LHtsOiJuXm4xKi1uIixyOiItbl4objErMSkifSx7bDoibl5uMSpuIixyOiJuXihuMSsxKSJ9LHtsOiJuXm4xLy1uIixyOiItbl4objEtMSkifSx7bDoibl5uMS9uIixyOiJuXihuMS0xKSJ9LHtsOiJuLy1uXm4xIixyOiItbl4oMS1uMSkifSx7bDoibi9uXm4xIixyOiJuXigxLW4xKSJ9LHtsOiJuXm4xLy1uXm4yIixyOiJuXihuMS1uMikifSx7bDoibl5uMS9uXm4yIixyOiJuXihuMS1uMikifSx7bDoibjErKC1uMipuMykiLHI6Im4xLW4yKm4zIn0se2w6InYqKC1jKSIscjoiLWMqdiJ9LHtsOiJuMSstbjIiLHI6Im4xLW4yIn0se2w6InYqYyIscjoiYyp2In0se2w6IihuMV5uMilebjMiLHI6IihuMV4objIqbjMpKSJ9XSxyfSgpLHM9ZnVuY3Rpb24oQSxlLHQsbil7dmFyIHI9W10sbz1pKEEsbixlLHtleGFjdEZyYWN0aW9uczohMX0pLHM9IistKiIrKCh0PSEhdCk/Ii8iOiIiKTshZnVuY3Rpb24gQShlKXt2YXIgdD1lLnR5cGU7aWYoIkZ1bmN0aW9uTm9kZSI9PT10KXRocm93IG5ldyBFcnJvcigiVGhlcmUgaXMgYW4gdW5zb2x2ZWQgZnVuY3Rpb24gY2FsbCIpO2lmKCJPcGVyYXRvck5vZGUiPT09dClpZigiXiI9PT1lLm9wKXtpZigiQ29uc3RhbnROb2RlIiE9PWUuYXJnc1sxXS50eXBlfHwhVihwYXJzZUZsb2F0KGUuYXJnc1sxXS52YWx1ZSkpKXRocm93IG5ldyBFcnJvcigiVGhlcmUgaXMgYSBub24taW50ZWdlciBleHBvbmVudCIpO0EoZS5hcmdzWzBdKX1lbHNle2lmKC0xPT09cy5pbmRleE9mKGUub3ApKXRocm93IG5ldyBFcnJvcigiT3BlcmF0b3IgIitlLm9wKyIgaW52YWxpZCBpbiBwb2x5bm9taWFsIGV4cHJlc3Npb24iKTtmb3IodmFyIG49MDtuPGUuYXJncy5sZW5ndGg7bisrKUEoZS5hcmdzW25dKX1lbHNlIGlmKCJTeW1ib2xOb2RlIj09PXQpe3ZhciBpPWUubmFtZTstMT09PXIuaW5kZXhPZihpKSYmci5wdXNoKGkpfWVsc2UgaWYoIlBhcmVudGhlc2lzTm9kZSI9PT10KUEoZS5jb250ZW50KTtlbHNlIGlmKCJDb25zdGFudE5vZGUiIT09dCl0aHJvdyBuZXcgRXJyb3IoInR5cGUgIit0KyIgaXMgbm90IGFsbG93ZWQgaW4gcG9seW5vbWlhbCBleHByZXNzaW9uIil9KG8pO3ZhciBhPXt9O3JldHVybiBhLmV4cHJlc3Npb249byxhLnZhcmlhYmxlcz1yLGF9KEEsZSwhMCxvLmZpcnN0UnVsZXMpLGE9cy52YXJpYWJsZXMubGVuZ3RoLGc9e2V4YWN0RnJhY3Rpb25zOiExfSxFPXtleGFjdEZyYWN0aW9uczohMH07aWYoQT1zLmV4cHJlc3Npb24sYT49MSl7dmFyIFEsdTtBPUIoQSk7dmFyIGwsaD0hMCx3PSExO2ZvcihBPWkoQSxvLmZpcnN0UnVsZXMse30sZyk7dT1oP28uZGlzdHJEaXZSdWxlczpvLnN1Y0RpdlJ1bGVzLGg9IWgsKGw9KEE9aShBLHUse30sRSkpLnRvU3RyaW5nKCkpIT09UTspdz0hMCxRPWw7dyYmKEE9aShBLG8uZmlyc3RSdWxlc0FnYWluLHt9LGcpKSxBPWkoQSxvLmZpbmFsUnVsZXMse30sZyl9dmFyIEM9W10sST17fTtyZXR1cm4iT3BlcmF0b3JOb2RlIj09PUEudHlwZSYmQS5pc0JpbmFyeSgpJiYiLyI9PT1BLm9wPygxPT09YSYmKEEuYXJnc1swXT1jKEEuYXJnc1swXSxDKSxBLmFyZ3NbMV09YyhBLmFyZ3NbMV0pKSxyJiYoSS5udW1lcmF0b3I9QS5hcmdzWzBdLEkuZGVub21pbmF0b3I9QS5hcmdzWzFdKSk6KDE9PT1hJiYoQT1jKEEsQykpLHImJihJLm51bWVyYXRvcj1BLEkuZGVub21pbmF0b3I9bnVsbCkpLHI/KEkuY29lZmZpY2llbnRzPUMsSS52YXJpYWJsZXM9cy52YXJpYWJsZXMsSS5leHByZXNzaW9uPUEsSSk6QX1yZXR1cm4gQS5QYXJlbnRoZXNpc05vZGUsZShxUSx7Tm9kZTphLCJOb2RlLCBib29sZWFuIjpmdW5jdGlvbihBLGUpe3JldHVybiBhKEEse30sZSl9LCJOb2RlLCBPYmplY3QiOmEsIk5vZGUsIE9iamVjdCwgYm9vbGVhbiI6YX0pO2Z1bmN0aW9uIEIoQSxlLHQpe3ZhciBuPUEudHlwZSxpPWFyZ3VtZW50cy5sZW5ndGg+MTtpZigiT3BlcmF0b3JOb2RlIj09PW4mJkEuaXNCaW5hcnkoKSl7dmFyIHMsYT0hMTtpZigiXiI9PT1BLm9wJiYoIlBhcmVudGhlc2lzTm9kZSIhPT1BLmFyZ3NbMF0udHlwZSYmIk9wZXJhdG9yTm9kZSIhPT1BLmFyZ3NbMF0udHlwZXx8IkNvbnN0YW50Tm9kZSIhPT1BLmFyZ3NbMV0udHlwZXx8KGE9KHM9cGFyc2VGbG9hdChBLmFyZ3NbMV0udmFsdWUpKT49MiYmVihzKSkpLGEpe2lmKHM+Mil7dmFyIGM9QS5hcmdzWzBdLGc9bmV3IG8oIl4iLCJwb3ciLFtBLmFyZ3NbMF0uY2xvbmVEZWVwKCksbmV3IHIocy0xKV0pO0E9bmV3IG8oIioiLCJtdWx0aXBseSIsW2MsZ10pfWVsc2UgQT1uZXcgbygiKiIsIm11bHRpcGx5IixbQS5hcmdzWzBdLEEuYXJnc1swXS5jbG9uZURlZXAoKV0pO2kmJigiY29udGVudCI9PT10P2UuY29udGVudD1BOmUuYXJnc1t0XT1BKX19aWYoIlBhcmVudGhlc2lzTm9kZSI9PT1uKUIoQS5jb250ZW50LEEsImNvbnRlbnQiKTtlbHNlIGlmKCJDb25zdGFudE5vZGUiIT09biYmIlN5bWJvbE5vZGUiIT09bilmb3IodmFyIEU9MDtFPEEuYXJncy5sZW5ndGg7RSsrKUIoQS5hcmdzW0VdLEEsRSk7aWYoIWkpcmV0dXJuIEF9ZnVuY3Rpb24gYyhBLGUpe3ZvaWQgMD09PWUmJihlPVtdKSxlWzBdPTA7dmFyIHQ9MCxuPSIiOyFmdW5jdGlvbiBBKGkscixvKXt2YXIgcz1pLnR5cGU7aWYoIkZ1bmN0aW9uTm9kZSI9PT1zKXRocm93IG5ldyBFcnJvcigiVGhlcmUgaXMgYW4gdW5zb2x2ZWQgZnVuY3Rpb24gY2FsbCIpO2lmKCJPcGVyYXRvck5vZGUiPT09cyl7aWYoLTE9PT0iKy0qXiIuaW5kZXhPZihpLm9wKSl0aHJvdyBuZXcgRXJyb3IoIk9wZXJhdG9yICIraS5vcCsiIGludmFsaWQiKTtpZihudWxsIT09cil7aWYoKCJ1bmFyeU1pbnVzIj09PWkuZm58fCJwb3ciPT09aS5mbikmJiJhZGQiIT09ci5mbiYmInN1YnRyYWN0IiE9PXIuZm4mJiJtdWx0aXBseSIhPT1yLmZuKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCAiK2kub3ArIiBwbGFjaW5nIik7aWYoKCJzdWJ0cmFjdCI9PT1pLmZufHwiYWRkIj09PWkuZm58fCJtdWx0aXBseSI9PT1pLmZuKSYmImFkZCIhPT1yLmZuJiYic3VidHJhY3QiIT09ci5mbil0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgIitpLm9wKyIgcGxhY2luZyIpO2lmKCgic3VidHJhY3QiPT09aS5mbnx8ImFkZCI9PT1pLmZufHwidW5hcnlNaW51cyI9PT1pLmZuKSYmMCE9PW8ubm9GaWwpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkICIraS5vcCsiIHBsYWNpbmciKX0iXiIhPT1pLm9wJiYiKiIhPT1pLm9wfHwoby5maXJlPWkub3ApO2Zvcih2YXIgYT0wO2E8aS5hcmdzLmxlbmd0aDthKyspInVuYXJ5TWludXMiPT09aS5mbiYmKG8ub3Blcj0iLSIpLCIrIiE9PWkub3AmJiJzdWJ0cmFjdCIhPT1pLmZufHwoby5maXJlPSIiLG8uY3RlPTEsby5vcGVyPTA9PT1hPyIrIjppLm9wKSxvLm5vRmlsPWEsQShpLmFyZ3NbYV0saSxvKX1lbHNlIGlmKCJTeW1ib2xOb2RlIj09PXMpe2lmKGkubmFtZSE9PW4mJiIiIT09bil0aHJvdyBuZXcgRXJyb3IoIlRoZXJlIGlzIG1vcmUgdGhhbiBvbmUgdmFyaWFibGUiKTtpZihuPWkubmFtZSxudWxsPT09cilyZXR1cm4gdm9pZChlWzFdPTEpO2lmKCJeIj09PXIub3AmJjAhPT1vLm5vRmlsKXRocm93IG5ldyBFcnJvcigiSW4gcG93ZXIgdGhlIHZhcmlhYmxlIHNob3VsZCBiZSB0aGUgZmlyc3QgcGFyYW1ldGVyIik7aWYoIioiPT09ci5vcCYmMSE9PW8ubm9GaWwpdGhyb3cgbmV3IEVycm9yKCJJbiBtdWx0aXBseSB0aGUgdmFyaWFibGUgc2hvdWxkIGJlIHRoZSBzZWNvbmQgcGFyYW1ldGVyIik7IiIhPT1vLmZpcmUmJiIqIiE9PW8uZmlyZXx8KHQ8MSYmKGVbMV09MCksZVsxXSs9by5jdGUqKCIrIj09PW8ub3Blcj8xOi0xKSx0PU1hdGgubWF4KDEsdCkpfWVsc2V7aWYoIkNvbnN0YW50Tm9kZSIhPT1zKXRocm93IG5ldyBFcnJvcigiVHlwZSAiK3MrIiBpcyBub3QgYWxsb3dlZCIpO3ZhciBCPXBhcnNlRmxvYXQoaS52YWx1ZSk7aWYobnVsbD09PXIpcmV0dXJuIHZvaWQoZVswXT1CKTtpZigiXiI9PT1yLm9wKXtpZigxIT09by5ub0ZpbCl0aHJvdyBuZXcgRXJyb3IoIkNvbnN0YW50IGNhbm5vdCBiZSBwb3dlcmVkIik7aWYoIVYoQil8fEI8PTApdGhyb3cgbmV3IEVycm9yKCJOb24taW50ZWdlciBleHBvbmVudCBpcyBub3QgYWxsb3dlZCIpO2Zvcih2YXIgYz10KzE7YzxCO2MrKyllW2NdPTA7cmV0dXJuIEI+dCYmKGVbQl09MCksZVtCXSs9by5jdGUqKCIrIj09PW8ub3Blcj8xOi0xKSx2b2lkKHQ9TWF0aC5tYXgoQix0KSl9by5jdGU9QiwiIj09PW8uZmlyZSYmKGVbMF0rPW8uY3RlKigiKyI9PT1vLm9wZXI/MTotMSkpfX0oQSxudWxsLHtjdGU6MSxvcGVyOiIrIixmaXJlOiIifSk7Zm9yKHZhciBpLGE9ITAsQj10PWUubGVuZ3RoLTE7Qj49MDtCLS0paWYoMCE9PWVbQl0pe3ZhciBjPW5ldyByKGE/ZVtCXTpNYXRoLmFicyhlW0JdKSksZz1lW0JdPDA/Ii0iOiIrIjtpZihCPjApe3ZhciBFPW5ldyBzKG4pO2lmKEI+MSl7dmFyIFE9bmV3IHIoQik7RT1uZXcgbygiXiIsInBvdyIsW0UsUV0pfWM9LTE9PT1lW0JdJiZhP25ldyBvKCItIiwidW5hcnlNaW51cyIsW0VdKToxPT09TWF0aC5hYnMoZVtCXSk/RTpuZXcgbygiKiIsIm11bHRpcGx5IixbYyxFXSl9aT1hP2M6IisiPT09Zz9uZXcgbygiKyIsImFkZCIsW2ksY10pOm5ldyBvKCItIiwic3VidHJhY3QiLFtpLGNdKSxhPSExfXJldHVybiBhP25ldyByKDApOml9fSkpLEF1PXBBKCJ6cGsydGYiLFsidHlwZWQiLCJhZGQiLCJtdWx0aXBseSIsIkNvbXBsZXgiLCJudW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuYWRkLG49QS5tdWx0aXBseSxpPUEuQ29tcGxleCxyPUEubnVtYmVyO3JldHVybiBlKCJ6cGsydGYiLHsiQXJyYXksQXJyYXksbnVtYmVyIjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIG8oQSxlLHQpfSwiQXJyYXksQXJyYXkiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQSxlLDEpfSwiTWF0cml4LE1hdHJpeCxudW1iZXIiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbyhBLnZhbHVlT2YoKSxlLnZhbHVlT2YoKSx0KX0sIk1hdHJpeCxNYXRyaXgiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIG8oQS52YWx1ZU9mKCksZS52YWx1ZU9mKCksMSl9fSk7ZnVuY3Rpb24gbyhBLGUsdCl7QS5zb21lKChmdW5jdGlvbihBKXtyZXR1cm4iQmlnTnVtYmVyIj09PUEudHlwZX0pKSYmKEE9QS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiByKEEpfSkpKSxlLnNvbWUoKGZ1bmN0aW9uKEEpe3JldHVybiJCaWdOdW1iZXIiPT09QS50eXBlfSkpJiYoZT1lLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIHIoQSl9KSkpO2Zvcih2YXIgbz1baSgxLDApXSxhPVtpKDEsMCldLEI9MDtCPEEubGVuZ3RoO0IrKyl7dmFyIGM9QVtCXTsibnVtYmVyIj09dHlwZW9mIGMmJihjPWkoYywwKSksbz1zKG8sW2koMSwwKSxpKC1jLnJlLC1jLmltKV0pfWZvcih2YXIgZz0wO2c8ZS5sZW5ndGg7ZysrKXt2YXIgRT1lW2ddOyJudW1iZXIiPT10eXBlb2YgRSYmKEU9aShFLDApKSxhPXMoYSxbaSgxLDApLGkoLUUucmUsLUUuaW0pXSl9Zm9yKHZhciBRPTA7UTxvLmxlbmd0aDtRKyspb1tRXT1uKG9bUV0sdCk7cmV0dXJuW28sYV19ZnVuY3Rpb24gcyhBLGUpe2Zvcih2YXIgcj1bXSxvPTA7bzxBLmxlbmd0aCtlLmxlbmd0aC0xO28rKyl7cltvXT1pKDAsMCk7Zm9yKHZhciBzPTA7czxBLmxlbmd0aDtzKyspby1zPj0wJiZvLXM8ZS5sZW5ndGgmJihyW29dPXQocltvXSxuKEFbc10sZVtvLXNdKSkpfXJldHVybiByfX0pKSxldT1wQSgiZnJlcXoiLFsidHlwZWQiLCJhZGQiLCJtdWx0aXBseSIsIkNvbXBsZXgiLCJkaXZpZGUiLCJtYXRyaXgiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuYWRkLG49QS5tdWx0aXBseSxpPUEuQ29tcGxleCxyPUEuZGl2aWRlLG89QS5tYXRyaXg7cmV0dXJuIGUoImZyZXF6Iix7IkFycmF5LCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcyhBLGUsYSg1MTIpKX0sIkFycmF5LCBBcnJheSwgQXJyYXkiOmZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gcyhBLGUsdCl9LCJBcnJheSwgQXJyYXksIG51bWJlciI6ZnVuY3Rpb24oQSxlLHQpe2lmKHQ8MCl0aHJvdyBuZXcgRXJyb3IoIncgbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlciIpO3JldHVybiBzKEEsZSxhKHQpKX0sIk1hdHJpeCwgTWF0cml4IjpmdW5jdGlvbihBLGUpe3ZhciB0PWEoNTEyKSxuPXMoQS52YWx1ZU9mKCksZS52YWx1ZU9mKCksdCksaT1uLncscj1uLmg7cmV0dXJue3c6byhpKSxoOm8ocil9fSwiTWF0cml4LCBNYXRyaXgsIE1hdHJpeCI6ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXMoQS52YWx1ZU9mKCksZS52YWx1ZU9mKCksdC52YWx1ZU9mKCkpLmg7cmV0dXJue2g6byhuKSx3Om8odCl9fSwiTWF0cml4LCBNYXRyaXgsIG51bWJlciI6ZnVuY3Rpb24oQSxlLHQpe2lmKHQ8MCl0aHJvdyBuZXcgRXJyb3IoIncgbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlciIpO3ZhciBuPWEodCksaT1zKEEudmFsdWVPZigpLGUudmFsdWVPZigpLG4pLmg7cmV0dXJue2g6byhpKSx3Om8obil9fX0pO2Z1bmN0aW9uIHMoQSxlLG8pe2Zvcih2YXIgcz1bXSxhPVtdLEI9MDtCPG8ubGVuZ3RoO0IrKyl7Zm9yKHZhciBjPWkoMCwwKSxnPWkoMCwwKSxFPTA7RTxBLmxlbmd0aDtFKyspYz10KGMsbihBW0VdLGkoTWF0aC5jb3MoLUUqb1tCXSksTWF0aC5zaW4oLUUqb1tCXSkpKSk7Zm9yKHZhciBRPTA7UTxlLmxlbmd0aDtRKyspZz10KGcsbihlW1FdLGkoTWF0aC5jb3MoLVEqb1tCXSksTWF0aC5zaW4oLVEqb1tCXSkpKSk7cy5wdXNoKGMpLGEucHVzaChnKX1mb3IodmFyIHU9W10sbD0wO2w8cy5sZW5ndGg7bCsrKXUucHVzaChyKHNbbF0sYVtsXSkpO3JldHVybntoOnUsdzpvfX1mdW5jdGlvbiBhKEEpe2Zvcih2YXIgZT1bXSx0PTA7dDxBO3QrKyllLnB1c2godC9BKk1hdGguUEkpO3JldHVybiBlfX0pKSx0dT1wQSgicmV2aXZlciIsWyJjbGFzc2VzIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY2xhc3NlcztyZXR1cm4gZnVuY3Rpb24oQSx0KXt2YXIgbj1lW3QmJnQubWF0aGpzXTtyZXR1cm4gbiYmImZ1bmN0aW9uIj09dHlwZW9mIG4uZnJvbUpTT04/bi5mcm9tSlNPTih0KTp0fX0pKSxudT1wQSgicmVwbGFjZXIiLFtdLChmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihBLGUpe3JldHVybiJudW1iZXIiIT10eXBlb2YgZXx8aXNGaW5pdGUoZSkmJiFpc05hTihlKT9lOnttYXRoanM6Im51bWJlciIsdmFsdWU6U3RyaW5nKGUpfX19KSksaXU9TWF0aC5QSSxydT0yKk1hdGguUEksb3U9TWF0aC5FLHN1PXBBKCJ0cnVlIixbXSwoZnVuY3Rpb24oKXtyZXR1cm4hMH0pKSxhdT1wQSgiZmFsc2UiLFtdLChmdW5jdGlvbigpe3JldHVybiExfSkpLEJ1PXBBKCJudWxsIixbXSwoZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0pKSxjdT1ZdSgiSW5maW5pdHkiLFsiY29uZmlnIiwiP0JpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmNvbmZpZyx0PUEuQmlnTnVtYmVyO3JldHVybiJCaWdOdW1iZXIiPT09ZS5udW1iZXI/bmV3IHQoMS8wKToxLzB9KSksZ3U9WXUoIk5hTiIsWyJjb25maWciLCI/QmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIkJpZ051bWJlciI9PT1lLm51bWJlcj9uZXcgdChOYU4pOk5hTn0pKSxFdT1ZdSgicGkiLFsiY29uZmlnIiwiP0JpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmNvbmZpZyx0PUEuQmlnTnVtYmVyO3JldHVybiJCaWdOdW1iZXIiPT09ZS5udW1iZXI/UUIodCk6aXV9KSksUXU9WXUoInRhdSIsWyJjb25maWciLCI/QmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIkJpZ051bWJlciI9PT1lLm51bWJlcj91Qih0KTpydX0pKSx1dT1ZdSgiZSIsWyJjb25maWciLCI/QmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIkJpZ051bWJlciI9PT1lLm51bWJlcj9nQih0KTpvdX0pKSxsdT1ZdSgicGhpIixbImNvbmZpZyIsIj9CaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5jb25maWcsdD1BLkJpZ051bWJlcjtyZXR1cm4iQmlnTnVtYmVyIj09PWUubnVtYmVyP0VCKHQpOjEuNjE4MDMzOTg4NzQ5ODk1fSkpLGh1PVl1KCJMTjIiLFsiY29uZmlnIiwiP0JpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmNvbmZpZyx0PUEuQmlnTnVtYmVyO3JldHVybiJCaWdOdW1iZXIiPT09ZS5udW1iZXI/bmV3IHQoMikubG4oKTpNYXRoLkxOMn0pKSx3dT1ZdSgiTE4xMCIsWyJjb25maWciLCI/QmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIkJpZ051bWJlciI9PT1lLm51bWJlcj9uZXcgdCgxMCkubG4oKTpNYXRoLkxOMTB9KSksQ3U9WXUoIkxPRzJFIixbImNvbmZpZyIsIj9CaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS5jb25maWcsdD1BLkJpZ051bWJlcjtyZXR1cm4iQmlnTnVtYmVyIj09PWUubnVtYmVyP25ldyB0KDEpLmRpdihuZXcgdCgyKS5sbigpKTpNYXRoLkxPRzJFfSkpLEl1PVl1KCJMT0cxMEUiLFsiY29uZmlnIiwiP0JpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmNvbmZpZyx0PUEuQmlnTnVtYmVyO3JldHVybiJCaWdOdW1iZXIiPT09ZS5udW1iZXI/bmV3IHQoMSkuZGl2KG5ldyB0KDEwKS5sbigpKTpNYXRoLkxPRzEwRX0pKSxNdT1ZdSgiU1FSVDFfMiIsWyJjb25maWciLCI/QmlnTnVtYmVyIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEuY29uZmlnLHQ9QS5CaWdOdW1iZXI7cmV0dXJuIkJpZ051bWJlciI9PT1lLm51bWJlcj9uZXcgdCgiMC41Iikuc3FydCgpOk1hdGguU1FSVDFfMn0pKSxkdT1ZdSgiU1FSVDIiLFsiY29uZmlnIiwiP0JpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLmNvbmZpZyx0PUEuQmlnTnVtYmVyO3JldHVybiJCaWdOdW1iZXIiPT09ZS5udW1iZXI/bmV3IHQoMikuc3FydCgpOk1hdGguU1FSVDJ9KSkscHU9WXUoImkiLFsiQ29tcGxleCJdLChmdW5jdGlvbihBKXtyZXR1cm4gQS5Db21wbGV4Lkl9KSksbXU9cEEoIlBJIixbInBpIl0sKGZ1bmN0aW9uKEEpe3JldHVybiBBLnBpfSkpLEZ1PXBBKCJFIixbImUiXSwoZnVuY3Rpb24oQSl7cmV0dXJuIEEuZX0pKSxEdT1wQSgidmVyc2lvbiIsW10sKGZ1bmN0aW9uKCl7cmV0dXJuIjExLjEyLjAifSkpO2Z1bmN0aW9uIFl1KEEsZSx0KXtyZXR1cm4gcEEoQSxlLHQse3JlY3JlYXRlT25Db25maWdDaGFuZ2U6ITB9KX12YXIgZnU9bWwoInNwZWVkT2ZMaWdodCIsIjI5OTc5MjQ1OCIsIm0gc14tMSIpLE51PW1sKCJncmF2aXRhdGlvbkNvbnN0YW50IiwiNi42NzQzMGUtMTEiLCJtXjMga2deLTEgc14tMiIpLFV1PW1sKCJwbGFuY2tDb25zdGFudCIsIjYuNjI2MDcwMTVlLTM0IiwiSiBzIikseXU9bWwoInJlZHVjZWRQbGFuY2tDb25zdGFudCIsIjEuMDU0NTcxODE3NjQ2MTU2NWUtMzQiLCJKIHMiKSxUdT1tbCgibWFnbmV0aWNDb25zdGFudCIsIjEuMjU2NjM3MDYyMTJlLTYiLCJOIEFeLTIiKSx4dT1tbCgiZWxlY3RyaWNDb25zdGFudCIsIjguODU0MTg3ODEyOGUtMTIiLCJGIG1eLTEiKSxSdT1tbCgidmFjdXVtSW1wZWRhbmNlIiwiMzc2LjczMDMxMzY2NyIsIm9obSIpLEd1PW1sKCJjb3Vsb21iIiwiOC45ODc1NTE3OTIyNjExNzFlOSIsIk4gbV4yIENeLTIiKSxTdT1tbCgiZWxlbWVudGFyeUNoYXJnZSIsIjEuNjAyMTc2NjM0ZS0xOSIsIkMiKSxidT1tbCgiYm9ock1hZ25ldG9uIiwiOS4yNzQwMTAwNzgzZS0yNCIsIkogVF4tMSIpLEh1PW1sKCJjb25kdWN0YW5jZVF1YW50dW0iLCI3Ljc0ODA5MTcyOTg2MzY0OWUtNSIsIlMiKSx2dT1tbCgiaW52ZXJzZUNvbmR1Y3RhbmNlUXVhbnR1bSIsIjEyOTA2LjQwMzcyOTY1MjI1NyIsIm9obSIpLGt1PW1sKCJtYWduZXRpY0ZsdXhRdWFudHVtIiwiMi4wNjc4MzM4NDg0NjE5Mjk1ZS0xNSIsIldiIiksanU9bWwoIm51Y2xlYXJNYWduZXRvbiIsIjUuMDUwNzgzNzQ2MWUtMjciLCJKIFReLTEiKSxKdT1tbCgia2xpdHppbmciLCIyNTgxMi44MDc0NTkzMDQ1MTMiLCJvaG0iKSx6dT1tbCgiYm9oclJhZGl1cyIsIjUuMjkxNzcyMTA5MDNlLTExIiwibSIpLEx1PW1sKCJjbGFzc2ljYWxFbGVjdHJvblJhZGl1cyIsIjIuODE3OTQwMzI2MmUtMTUiLCJtIiksUHU9bWwoImVsZWN0cm9uTWFzcyIsIjkuMTA5MzgzNzAxNWUtMzEiLCJrZyIpLE91PW1sKCJmZXJtaUNvdXBsaW5nIiwiMS4xNjYzNzg3ZS01IiwiR2VWXi0yIiksVnU9RmwoImZpbmVTdHJ1Y3R1cmUiLC4wMDcyOTczNTI1NjkzKSxXdT1tbCgiaGFydHJlZUVuZXJneSIsIjQuMzU5NzQ0NzIyMjA3MWUtMTgiLCJKIiksS3U9bWwoInByb3Rvbk1hc3MiLCIxLjY3MjYyMTkyMzY5ZS0yNyIsImtnIiksWHU9bWwoImRldXRlcm9uTWFzcyIsIjMuMzQzNTgzMDkyNmUtMjciLCJrZyIpLFp1PW1sKCJuZXV0cm9uTWFzcyIsIjEuNjc0OTI3MTYxM2UtMjciLCJrZyIpLF91PW1sKCJxdWFudHVtT2ZDaXJjdWxhdGlvbiIsIjMuNjM2OTQ3NTUxNmUtNCIsIm1eMiBzXi0xIikscXU9bWwoInJ5ZGJlcmciLCIxMDk3MzczMS41NjgxNjAiLCJtXi0xIiksJHU9bWwoInRob21zb25Dcm9zc1NlY3Rpb24iLCI2LjY1MjQ1ODczMjFlLTI5IiwibV4yIiksQWw9RmwoIndlYWtNaXhpbmdBbmdsZSIsLjIyMjkpLGVsPUZsKCJlZmltb3ZGYWN0b3IiLDIyLjcpLHRsPW1sKCJhdG9taWNNYXNzIiwiMS42NjA1MzkwNjY2MGUtMjciLCJrZyIpLG5sPW1sKCJhdm9nYWRybyIsIjYuMDIyMTQwNzZlMjMiLCJtb2xeLTEiKSxpbD1tbCgiYm9sdHptYW5uIiwiMS4zODA2NDllLTIzIiwiSiBLXi0xIikscmw9bWwoImZhcmFkYXkiLCI5NjQ4NS4zMzIxMjMzMTAwMSIsIkMgbW9sXi0xIiksb2w9bWwoImZpcnN0UmFkaWF0aW9uIiwiMy43NDE3NzE4NTIxOTI3NTczZS0xNiIsIlcgbV4yIiksc2w9bWwoImxvc2NobWlkdCIsIjIuNjg2NzgwMTExNzk4NDQ0ZTI1IiwibV4tMyIpLGFsPW1sKCJnYXNDb25zdGFudCIsIjguMzE0NDYyNjE4MTUzMjQiLCJKIEteLTEgbW9sXi0xIiksQmw9bWwoIm1vbGFyUGxhbmNrQ29uc3RhbnQiLCIzLjk5MDMxMjcxMjg5MzQzMWUtMTAiLCJKIHMgbW9sXi0xIiksY2w9bWwoIm1vbGFyVm9sdW1lIiwiMC4wMjI0MTM5Njk1NDUwMTQxMzciLCJtXjMgbW9sXi0xIiksZ2w9RmwoInNhY2t1clRldHJvZGUiLC0xLjE2NDg3MDUyMzU4KSxFbD1tbCgic2Vjb25kUmFkaWF0aW9uIiwiMC4wMTQzODc3Njg3NzUwMzkzMzciLCJtIEsiKSxRbD1tbCgic3RlZmFuQm9sdHptYW5uIiwiNS42NzAzNzQ0MTkxODQ0M2UtOCIsIlcgbV4tMiBLXi00IiksdWw9bWwoIndpZW5EaXNwbGFjZW1lbnQiLCIyLjg5Nzc3MTk1NWUtMyIsIm0gSyIpLGxsPW1sKCJtb2xhck1hc3MiLCIwLjk5OTk5OTk5OTY1ZS0zIiwia2cgbW9sXi0xIiksaGw9bWwoIm1vbGFyTWFzc0MxMiIsIjExLjk5OTk5OTk5NThlLTMiLCJrZyBtb2xeLTEiKSx3bD1tbCgiZ3Jhdml0eSIsIjkuODA2NjUiLCJtIHNeLTIiKSxDbD1tbCgicGxhbmNrTGVuZ3RoIiwiMS42MTYyNTVlLTM1IiwibSIpLElsPW1sKCJwbGFuY2tNYXNzIiwiMi4xNzY0MzVlLTgiLCJrZyIpLE1sPW1sKCJwbGFuY2tUaW1lIiwiNS4zOTEyNDVlLTQ0IiwicyIpLGRsPW1sKCJwbGFuY2tDaGFyZ2UiLCIxLjg3NTU0NjAzNzc4ZS0xOCIsIkMiKSxwbD1tbCgicGxhbmNrVGVtcGVyYXR1cmUiLCIxLjQxNjc4NWUrMzIiLCJLIik7ZnVuY3Rpb24gbWwoQSxlLHQpe3JldHVybiBwQShBLFsiY29uZmlnIiwiVW5pdCIsIkJpZ051bWJlciJdLChmdW5jdGlvbihBKXt2YXIgbj1BLmNvbmZpZyxpPUEuVW5pdCxyPUEuQmlnTnVtYmVyLG89bmV3IGkoIkJpZ051bWJlciI9PT1uLm51bWJlcj9uZXcgcihlKTpwYXJzZUZsb2F0KGUpLHQpO3JldHVybiBvLmZpeFByZWZpeD0hMCxvfSkpfWZ1bmN0aW9uIEZsKEEsZSl7cmV0dXJuIHBBKEEsWyJjb25maWciLCJCaWdOdW1iZXIiXSwoZnVuY3Rpb24oQSl7dmFyIHQ9QS5jb25maWcsbj1BLkJpZ051bWJlcjtyZXR1cm4iQmlnTnVtYmVyIj09PXQubnVtYmVyP25ldyBuKGUpOmV9KSl9dmFyIERsPXBBKCJhcHBseSIsWyJ0eXBlZCIsImlzSW50ZWdlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLG49QS5pc0ludGVnZXIsaT1faSh7dHlwZWQ6ZSxpc0ludGVnZXI6bn0pO3JldHVybiBlKCJhcHBseSIseyIuLi5hbnkiOmZ1bmN0aW9uKEEpe3ZhciBlPUFbMV07dChlKT9BWzFdPWUtMTpyKGUpJiYoQVsxXT1lLm1pbnVzKDEpKTt0cnl7cmV0dXJuIGkuYXBwbHkobnVsbCxBKX1jYXRjaChBKXt0aHJvdyBQYyhBKX19fSl9KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLFlsPXBBKCJjb2x1bW4iLFsidHlwZWQiLCJJbmRleCIsIm1hdHJpeCIsInJhbmdlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsbj1BLkluZGV4LGk9QS5tYXRyaXgscj1BLnJhbmdlLG89U28oe3R5cGVkOmUsSW5kZXg6bixtYXRyaXg6aSxyYW5nZTpyfSk7cmV0dXJuIGUoImNvbHVtbiIseyIuLi5hbnkiOmZ1bmN0aW9uKEEpe3ZhciBlPUEubGVuZ3RoLTEsbj1BW2VdO3QobikmJihBW2VdPW4tMSk7dHJ5e3JldHVybiBvLmFwcGx5KG51bGwsQSl9Y2F0Y2goQSl7dGhyb3cgUGMoQSl9fX0pfSkse2lzVHJhbnNmb3JtRnVuY3Rpb246ITB9KTtmdW5jdGlvbiBmbChBLGUsdCl7dmFyIG49QS5maWx0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiB6KEEpJiYhKEEubmFtZSBpbiBlKSYmIXQuaGFzKEEubmFtZSl9KSlbMF07aWYoIW4pdGhyb3cgbmV3IEVycm9yKCdObyB1bmRlZmluZWQgdmFyaWFibGUgZm91bmQgaW4gaW5saW5lIGV4cHJlc3Npb24gIicrQSsnIicpO3ZhciBpPW4ubmFtZSxyPUdnKHQpLG89QS5jb21waWxlKCk7cmV0dXJuIGZ1bmN0aW9uKEEpe3JldHVybiByLnNldChpLEEpLG8uZXZhbHVhdGUocil9fXZhciBObD1wQSgiZmlsdGVyIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7ZnVuY3Rpb24gdChBLGUsdCl7dmFyIGkscjtyZXR1cm4gQVswXSYmKGk9QVswXS5jb21waWxlKCkuZXZhbHVhdGUodCkpLEFbMV0mJihyPXooQVsxXSl8fFIoQVsxXSk/QVsxXS5jb21waWxlKCkuZXZhbHVhdGUodCk6ZmwoQVsxXSxlLHQpKSxuKGkscil9dC5yYXdBcmdzPSEwO3ZhciBuPWUoImZpbHRlciIseyJBcnJheSwgZnVuY3Rpb24iOlVsLCJNYXRyaXgsIGZ1bmN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmNyZWF0ZShVbChBLnRvQXJyYXkoKSxlKSl9LCJBcnJheSwgUmVnRXhwIjpsbiwiTWF0cml4LCBSZWdFeHAiOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuY3JlYXRlKGxuKEEudG9BcnJheSgpLGUpKX19KTtyZXR1cm4gdH0pLHtpc1RyYW5zZm9ybUZ1bmN0aW9uOiEwfSk7ZnVuY3Rpb24gVWwoQSxlKXtyZXR1cm4gdW4oQSwoZnVuY3Rpb24oQSx0LG4pe3JldHVybiBrbyhlLEEsW3QrMV0sbiwiZmlsdGVyIil9KSl9dmFyIHlsPXBBKCJmb3JFYWNoIixbInR5cGVkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQ7ZnVuY3Rpb24gdChBLGUsdCl7dmFyIGkscjtyZXR1cm4gQVswXSYmKGk9QVswXS5jb21waWxlKCkuZXZhbHVhdGUodCkpLEFbMV0mJihyPXooQVsxXSl8fFIoQVsxXSk/QVsxXS5jb21waWxlKCkuZXZhbHVhdGUodCk6ZmwoQVsxXSxlLHQpKSxuKGkscil9dC5yYXdBcmdzPSEwO3ZhciBuPWUoImZvckVhY2giLHsiQXJyYXkgfCBNYXRyaXgsIGZ1bmN0aW9uIjpmdW5jdGlvbihBLGUpeyFmdW5jdGlvbiB0KG4saSl7aWYoIUFycmF5LmlzQXJyYXkobikpcmV0dXJuIGtvKGUsbixpLEEsImZvckVhY2giKTtRbihuLChmdW5jdGlvbihBLGUpe3QoQSxpLmNvbmNhdChlKzEpKX0pKX0oQS52YWx1ZU9mKCksW10pfX0pO3JldHVybiB0fSkse2lzVHJhbnNmb3JtRnVuY3Rpb246ITB9KSxUbD1wQSgiaW5kZXgiLFsiSW5kZXgiLCJnZXRNYXRyaXhEYXRhVHlwZSJdLChmdW5jdGlvbihBKXt2YXIgZT1BLkluZGV4LG49QS5nZXRNYXRyaXhEYXRhVHlwZTtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIEE9W10saT0wLG89YXJndW1lbnRzLmxlbmd0aDtpPG87aSsrKXt2YXIgcz1hcmd1bWVudHNbaV07aWYobChzKSlzLnN0YXJ0LS0scy5lbmQtPXMuc3RlcD4wPzA6MjtlbHNlIGlmKHMmJiEwPT09cy5pc1NldClzPXMubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQS0xfSkpO2Vsc2UgaWYoYyhzKXx8ZyhzKSkiYm9vbGVhbiIhPT1uKHMpJiYocz1zLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEtMX0pKSk7ZWxzZSBpZih0KHMpKXMtLTtlbHNlIGlmKHIocykpcz1zLnRvTnVtYmVyKCktMTtlbHNlIGlmKCJzdHJpbmciIT10eXBlb2Ygcyl0aHJvdyBuZXcgVHlwZUVycm9yKCJEaW1lbnNpb24gbXVzdCBiZSBhbiBBcnJheSwgTWF0cml4LCBudW1iZXIsIHN0cmluZywgb3IgUmFuZ2UiKTtBW2ldPXN9dmFyIGE9bmV3IGU7cmV0dXJuIGUuYXBwbHkoYSxBKSxhfX0pLHtpc1RyYW5zZm9ybUZ1bmN0aW9uOiEwfSkseGw9cEEoIm1hcCIsWyJ0eXBlZCJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkO2Z1bmN0aW9uIHQoQSxlLHQpe3ZhciBpLHI7cmV0dXJuIEFbMF0mJihpPUFbMF0uY29tcGlsZSgpLmV2YWx1YXRlKHQpKSxBWzFdJiYocj16KEFbMV0pfHxSKEFbMV0pP0FbMV0uY29tcGlsZSgpLmV2YWx1YXRlKHQpOmZsKEFbMV0sZSx0KSksbihpLHIpfXQucmF3QXJncz0hMDt2YXIgbj1lKCJtYXAiLHsiQXJyYXksIGZ1bmN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBSbChBLGUsQSl9LCJNYXRyaXgsIGZ1bmN0aW9uIjpmdW5jdGlvbihBLGUpe3JldHVybiBBLmNyZWF0ZShSbChBLnZhbHVlT2YoKSxlLEEpKX19KTtyZXR1cm4gdH0pLHtpc1RyYW5zZm9ybUZ1bmN0aW9uOiEwfSk7ZnVuY3Rpb24gUmwoQSxlLHQpe3JldHVybiBmdW5jdGlvbiBBKG4saSl7cmV0dXJuIEFycmF5LmlzQXJyYXkobik/RW4obiwoZnVuY3Rpb24oZSx0KXtyZXR1cm4gQShlLGkuY29uY2F0KHQrMSkpfSkpOmtvKGUsbixpLHQsIm1hcCIpfShBLFtdKX1mdW5jdGlvbiBHbChBKXtpZigyPT09QS5sZW5ndGgmJkUoQVswXSkpe3ZhciBlPShBPUEuc2xpY2UoKSlbMV07dChlKT9BWzFdPWUtMTpyKGUpJiYoQVsxXT1lLm1pbnVzKDEpKX1yZXR1cm4gQX12YXIgU2w9cEEoIm1heCIsWyJ0eXBlZCIsImNvbmZpZyIsIm51bWVyaWMiLCJsYXJnZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5udW1lcmljLGk9QS5sYXJnZXIscj1pQih7dHlwZWQ6ZSxjb25maWc6dCxudW1lcmljOm4sbGFyZ2VyOml9KTtyZXR1cm4gZSgibWF4Iix7Ii4uLmFueSI6ZnVuY3Rpb24oQSl7QT1HbChBKTt0cnl7cmV0dXJuIHIuYXBwbHkobnVsbCxBKX1jYXRjaChBKXt0aHJvdyBQYyhBKX19fSl9KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLGJsPXBBKCJtZWFuIixbInR5cGVkIiwiYWRkIiwiZGl2aWRlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZCxuPUEuZGl2aWRlLGk9YkUoe3R5cGVkOmUsYWRkOnQsZGl2aWRlOm59KTtyZXR1cm4gZSgibWVhbiIseyIuLi5hbnkiOmZ1bmN0aW9uKEEpe0E9R2woQSk7dHJ5e3JldHVybiBpLmFwcGx5KG51bGwsQSl9Y2F0Y2goQSl7dGhyb3cgUGMoQSl9fX0pfSkse2lzVHJhbnNmb3JtRnVuY3Rpb246ITB9KSxIbD1wQSgibWluIixbInR5cGVkIiwiY29uZmlnIiwibnVtZXJpYyIsInNtYWxsZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5udW1lcmljLGk9QS5zbWFsbGVyLHI9ckIoe3R5cGVkOmUsY29uZmlnOnQsbnVtZXJpYzpuLHNtYWxsZXI6aX0pO3JldHVybiBlKCJtaW4iLHsiLi4uYW55IjpmdW5jdGlvbihBKXtBPUdsKEEpO3RyeXtyZXR1cm4gci5hcHBseShudWxsLEEpfWNhdGNoKEEpe3Rocm93IFBjKEEpfX19KX0pLHtpc1RyYW5zZm9ybUZ1bmN0aW9uOiEwfSksdmw9cEEoInJhbmdlIixbInR5cGVkIiwiY29uZmlnIiwiP21hdHJpeCIsIj9iaWdudW1iZXIiLCJzbWFsbGVyIiwic21hbGxlckVxIiwibGFyZ2VyIiwibGFyZ2VyRXEiLCJhZGQiLCJpc1Bvc2l0aXZlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmNvbmZpZyxuPUEubWF0cml4LGk9QS5iaWdudW1iZXIscj1BLnNtYWxsZXIsbz1BLnNtYWxsZXJFcSxzPUEubGFyZ2VyLGE9QS5sYXJnZXJFcSxCPUEuYWRkLGM9QS5pc1Bvc2l0aXZlLGc9cnMoe3R5cGVkOmUsY29uZmlnOnQsbWF0cml4Om4sYmlnbnVtYmVyOmksc21hbGxlcjpyLHNtYWxsZXJFcTpvLGxhcmdlcjpzLGxhcmdlckVxOmEsYWRkOkIsaXNQb3NpdGl2ZTpjfSk7cmV0dXJuIGUoInJhbmdlIix7Ii4uLmFueSI6ZnVuY3Rpb24oQSl7cmV0dXJuImJvb2xlYW4iIT10eXBlb2YgQVtBLmxlbmd0aC0xXSYmQS5wdXNoKCEwKSxnLmFwcGx5KG51bGwsQSl9fSl9KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLGtsPXBBKCJyb3ciLFsidHlwZWQiLCJJbmRleCIsIm1hdHJpeCIsInJhbmdlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsbj1BLkluZGV4LGk9QS5tYXRyaXgscj1BLnJhbmdlLG89RXMoe3R5cGVkOmUsSW5kZXg6bixtYXRyaXg6aSxyYW5nZTpyfSk7cmV0dXJuIGUoInJvdyIseyIuLi5hbnkiOmZ1bmN0aW9uKEEpe3ZhciBlPUEubGVuZ3RoLTEsbj1BW2VdO3QobikmJihBW2VdPW4tMSk7dHJ5e3JldHVybiBvLmFwcGx5KG51bGwsQSl9Y2F0Y2goQSl7dGhyb3cgUGMoQSl9fX0pfSkse2lzVHJhbnNmb3JtRnVuY3Rpb246ITB9KSxqbD1wQSgic3Vic2V0IixbInR5cGVkIiwibWF0cml4IiwiemVyb3MiLCJhZGQiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEubWF0cml4LG49QS56ZXJvcyxpPUEuYWRkLHI9aHMoe3R5cGVkOmUsbWF0cml4OnQsemVyb3M6bixhZGQ6aX0pO3JldHVybiBlKCJzdWJzZXQiLHsiLi4uYW55IjpmdW5jdGlvbihBKXt0cnl7cmV0dXJuIHIuYXBwbHkobnVsbCxBKX1jYXRjaChBKXt0aHJvdyBQYyhBKX19fSl9KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLEpsPXBBKCJjb25jYXQiLFsidHlwZWQiLCJtYXRyaXgiLCJpc0ludGVnZXIiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCxuPUEubWF0cml4LGk9QS5pc0ludGVnZXIsbz1Hbyh7dHlwZWQ6ZSxtYXRyaXg6bixpc0ludGVnZXI6aX0pO3JldHVybiBlKCJjb25jYXQiLHsiLi4uYW55IjpmdW5jdGlvbihBKXt2YXIgZT1BLmxlbmd0aC0xLG49QVtlXTt0KG4pP0FbZV09bi0xOnIobikmJihBW2VdPW4ubWludXMoMSkpO3RyeXtyZXR1cm4gby5hcHBseShudWxsLEEpfWNhdGNoKEEpe3Rocm93IFBjKEEpfX19KX0pLHtpc1RyYW5zZm9ybUZ1bmN0aW9uOiEwfSksemw9cEEoImRpZmYiLFsidHlwZWQiLCJtYXRyaXgiLCJzdWJ0cmFjdCIsIm51bWJlciIsImJpZ251bWJlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5tYXRyaXgsbj1BLnN1YnRyYWN0LGk9QS5udW1iZXIscj1BLmJpZ251bWJlcixvPUFzKHt0eXBlZDplLG1hdHJpeDp0LHN1YnRyYWN0Om4sbnVtYmVyOmksYmlnbnVtYmVyOnJ9KTtyZXR1cm4gZSgiZGlmZiIseyIuLi5hbnkiOmZ1bmN0aW9uKEEpe0E9R2woQSk7dHJ5e3JldHVybiBvLmFwcGx5KG51bGwsQSl9Y2F0Y2goQSl7dGhyb3cgUGMoQSl9fX0pfSkse2lzVHJhbnNmb3JtRnVuY3Rpb246ITB9KSxMbD1wQSgic3RkIixbInR5cGVkIiwibWFwIiwic3FydCIsInZhcmlhbmNlIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hcCxuPUEuc3FydCxpPUEudmFyaWFuY2Uscj1QRSh7dHlwZWQ6ZSxtYXA6dCxzcXJ0Om4sdmFyaWFuY2U6aX0pO3JldHVybiBlKCJzdGQiLHsiLi4uYW55IjpmdW5jdGlvbihBKXtBPUdsKEEpO3RyeXtyZXR1cm4gci5hcHBseShudWxsLEEpfWNhdGNoKEEpe3Rocm93IFBjKEEpfX19KX0pLHtpc1RyYW5zZm9ybUZ1bmN0aW9uOiEwfSksUGw9cEEoInN1bSIsWyJ0eXBlZCIsImNvbmZpZyIsImFkZCIsIm51bWVyaWMiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCx0PUEuY29uZmlnLG49QS5hZGQsaT1BLm51bWVyaWMscj1SRSh7dHlwZWQ6ZSxjb25maWc6dCxhZGQ6bixudW1lcmljOml9KTtyZXR1cm4gZSgic3VtIix7Ii4uLmFueSI6ZnVuY3Rpb24oQSl7QT1HbChBKTt0cnl7cmV0dXJuIHIuYXBwbHkobnVsbCxBKX1jYXRjaChBKXt0aHJvdyBQYyhBKX19fSl9KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLE9sPXBBKCJxdWFudGlsZVNlcSIsWyJ0eXBlZCIsImJpZ251bWJlciIsImFkZCIsInN1YnRyYWN0IiwiZGl2aWRlIiwibXVsdGlwbHkiLCJwYXJ0aXRpb25TZWxlY3QiLCJjb21wYXJlIiwiaXNJbnRlZ2VyIiwic21hbGxlciIsInNtYWxsZXJFcSIsImxhcmdlciJdLChmdW5jdGlvbihBKXt2YXIgZT1BLnR5cGVkLHQ9QS5iaWdudW1iZXIsbj1BLmFkZCxpPUEuc3VidHJhY3Qscj1BLmRpdmlkZSxvPUEubXVsdGlwbHkscz1BLnBhcnRpdGlvblNlbGVjdCxhPUEuY29tcGFyZSxCPUEuaXNJbnRlZ2VyLGM9QS5zbWFsbGVyLGc9QS5zbWFsbGVyRXEsRT1BLmxhcmdlcixRPUxFKHt0eXBlZDplLGJpZ251bWJlcjp0LGFkZDpuLHN1YnRyYWN0OmksZGl2aWRlOnIsbXVsdGlwbHk6byxwYXJ0aXRpb25TZWxlY3Q6cyxjb21wYXJlOmEsaXNJbnRlZ2VyOkIsc21hbGxlcjpjLHNtYWxsZXJFcTpnLGxhcmdlcjpFfSk7cmV0dXJuIGUoInF1YW50aWxlU2VxIix7IkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIiOlEsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIsIG51bWJlciI6ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBRKEEsZSx1KHQpKX0sIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIsIGJvb2xlYW4iOlEsIkFycmF5IHwgTWF0cml4LCBudW1iZXIgfCBCaWdOdW1iZXIsIGJvb2xlYW4sIG51bWJlciI6ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIFEoQSxlLHQsdShuKSl9LCJBcnJheSB8IE1hdHJpeCwgQXJyYXkgfCBNYXRyaXgiOlEsIkFycmF5IHwgTWF0cml4LCBBcnJheSB8IE1hdHJpeCwgbnVtYmVyIjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIFEoQSxlLHUodCkpfSwiQXJyYXkgfCBNYXRyaXgsIEFycmF5IHwgTWF0cml4LCBib29sZWFuIjpRLCJBcnJheSB8IE1hdHJpeCwgQXJyYXkgfCBNYXRyaXgsIGJvb2xlYW4sIG51bWJlciI6ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIFEoQSxlLHQsdShuKSl9fSk7ZnVuY3Rpb24gdShBKXtyZXR1cm4gR2woW1tdLEFdKVsxXX19KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLFZsPXBBKCJjdW1zdW0iLFsidHlwZWQiLCJhZGQiLCJ1bmFyeVBsdXMiXSwoZnVuY3Rpb24oQSl7dmFyIGU9QS50eXBlZCxuPUEuYWRkLGk9QS51bmFyeVBsdXMsbz1TRSh7dHlwZWQ6ZSxhZGQ6bix1bmFyeVBsdXM6aX0pO3JldHVybiBlKCJjdW1zdW0iLHsiLi4uYW55IjpmdW5jdGlvbihBKXtpZigyPT09QS5sZW5ndGgmJkUoQVswXSkpe3ZhciBlPUFbMV07dChlKT9BWzFdPWUtMTpyKGUpJiYoQVsxXT1lLm1pbnVzKDEpKX10cnl7cmV0dXJuIG8uYXBwbHkobnVsbCxBKX1jYXRjaChBKXt0aHJvdyBQYyhBKX19fSl9KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLFdsPSJ2YXJpYW5jZSIsS2w9cEEoV2wsWyJ0eXBlZCIsImFkZCIsInN1YnRyYWN0IiwibXVsdGlwbHkiLCJkaXZpZGUiLCJhcHBseSIsImlzTmFOIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLmFkZCxuPUEuc3VidHJhY3QsaT1BLm11bHRpcGx5LHI9QS5kaXZpZGUsbz1BLmFwcGx5LHM9QS5pc05hTixhPUpFKHt0eXBlZDplLGFkZDp0LHN1YnRyYWN0Om4sbXVsdGlwbHk6aSxkaXZpZGU6cixhcHBseTpvLGlzTmFOOnN9KTtyZXR1cm4gZShXbCx7Ii4uLmFueSI6ZnVuY3Rpb24oQSl7QT1HbChBKTt0cnl7cmV0dXJuIGEuYXBwbHkobnVsbCxBKX1jYXRjaChBKXt0aHJvdyBQYyhBKX19fSl9KSx7aXNUcmFuc2Zvcm1GdW5jdGlvbjohMH0pLFhsPXBBKCJwcmludCIsWyJ0eXBlZCIsIm1hdHJpeCIsInplcm9zIiwiYWRkIl0sKGZ1bmN0aW9uKEEpe3ZhciBlPUEudHlwZWQsdD1BLm1hdHJpeCxuPUEuemVyb3MsaT1BLmFkZCxyPU9zKHt0eXBlZDplLG1hdHJpeDp0LHplcm9zOm4sYWRkOml9KTtyZXR1cm4gZSgicHJpbnQiLHsic3RyaW5nLCBPYmplY3QgfCBBcnJheSI6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gcihvKEEpLGUpfSwic3RyaW5nLCBPYmplY3QgfCBBcnJheSwgbnVtYmVyIHwgT2JqZWN0IjpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIHIobyhBKSxlLHQpfX0pO2Z1bmN0aW9uIG8oQSl7cmV0dXJuIEEucmVwbGFjZShQcywoZnVuY3Rpb24oQSl7cmV0dXJuIiQiK0Euc2xpY2UoMSkuc3BsaXQoIi4iKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiFpc05hTihBKSYmQS5sZW5ndGg+MD9wYXJzZUludChBKS0xOkF9KSkuam9pbigiLiIpfSkpfX0pLHtpc1RyYW5zZm9ybUZ1bmN0aW9uOiEwfSksWmw9KG4oMTUxNyksbig0Mjc5KSksX2w9e2Vwc2lsb246MWUtMTIsbWF0cml4OiJNYXRyaXgiLG51bWJlcjoibnVtYmVyIixwcmVjaXNpb246NjQscHJlZGljdGFibGU6ITEscmFuZG9tU2VlZDpudWxsfSxxbD1bIk1hdHJpeCIsIkFycmF5Il0sJGw9WyJudW1iZXIiLCJCaWdOdW1iZXIiLCJGcmFjdGlvbiJdO2Z1bmN0aW9uIEFoKEEsZSl7ZnVuY3Rpb24gdCh0KXtpZih0KXt2YXIgbj1sQShBLHVBKTtlaCh0LCJtYXRyaXgiLHFsKSxlaCh0LCJudW1iZXIiLCRsKSxmdW5jdGlvbiBBKGUsdCl7aWYoQXJyYXkuaXNBcnJheSh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheXMgYXJlIG5vdCBzdXBwb3J0ZWQgYnkgZGVlcEV4dGVuZCIpO2Zvcih2YXIgbiBpbiB0KWlmKE1BKHQsbikmJiEobiBpbiBPYmplY3QucHJvdG90eXBlKSYmIShuIGluIEZ1bmN0aW9uLnByb3RvdHlwZSkpaWYodFtuXSYmdFtuXS5jb25zdHJ1Y3Rvcj09PU9iamVjdCl2b2lkIDA9PT1lW25dJiYoZVtuXT17fSksZVtuXSYmZVtuXS5jb25zdHJ1Y3Rvcj09PU9iamVjdD9BKGVbbl0sdFtuXSk6ZVtuXT10W25dO2Vsc2V7aWYoQXJyYXkuaXNBcnJheSh0W25dKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcnJheXMgYXJlIG5vdCBzdXBwb3J0ZWQgYnkgZGVlcEV4dGVuZCIpO2Vbbl09dFtuXX1yZXR1cm4gZX0oQSx0KTt2YXIgaT1sQShBLHVBKSxyPWxBKHQsdUEpO3JldHVybiBlKCJjb25maWciLGksbixyKSxpfXJldHVybiBsQShBLHVBKX1yZXR1cm4gdC5NQVRSSVhfT1BUSU9OUz1xbCx0Lk5VTUJFUl9PUFRJT05TPSRsLE9iamVjdC5rZXlzKF9sKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gQVtlXX0sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9KX0pKSx0fWZ1bmN0aW9uIGVoKEEsZSx0KXt2YXIgbixpO3ZvaWQgMCE9PUFbZV0mJihuPXQsaT1BW2VdLC0xPT09bi5pbmRleE9mKGkpKSYmY29uc29sZS53YXJuKCdXYXJuaW5nOiBVbmtub3duIHZhbHVlICInK0FbZV0rJyIgZm9yIGNvbmZpZ3VyYXRpb24gb3B0aW9uICInK2UrJyIuIEF2YWlsYWJsZSBvcHRpb25zOiAnK3QubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoQSl9KSkuam9pbigiLCAiKSsiLiIpfWNvbnN0IHRoPWZ1bmN0aW9uIEEobixpKXt2YXIgeD1rdCh7fSxfbCxpKTtpZigiZnVuY3Rpb24iIT10eXBlb2YgT2JqZWN0LmNyZWF0ZSl0aHJvdyBuZXcgRXJyb3IoIkVTNSBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgSmF2YVNjcmlwdCBlbmdpbmUuIFBsZWFzZSBsb2FkIHRoZSBlczUtc2hpbSBhbmQgZXM1LXNoYW0gbGlicmFyeSBmb3IgY29tcGF0aWJpbGl0eS4iKTt2YXIgUCxWLFc9KFA9e2lzTnVtYmVyOnQsaXNDb21wbGV4Om8saXNCaWdOdW1iZXI6cixpc0ZyYWN0aW9uOnMsaXNVbml0OmEsaXNTdHJpbmc6Qixpc0FycmF5OmMsaXNNYXRyaXg6Zyxpc0NvbGxlY3Rpb246RSxpc0RlbnNlTWF0cml4OlEsaXNTcGFyc2VNYXRyaXg6dSxpc1JhbmdlOmwsaXNJbmRleDpoLGlzQm9vbGVhbjp3LGlzUmVzdWx0U2V0OkMsaXNIZWxwOkksaXNGdW5jdGlvbjpNLGlzRGF0ZTpkLGlzUmVnRXhwOnAsaXNPYmplY3Q6bSxpc051bGw6Rixpc1VuZGVmaW5lZDpELGlzQWNjZXNzb3JOb2RlOlksaXNBcnJheU5vZGU6Zixpc0Fzc2lnbm1lbnROb2RlOk4saXNCbG9ja05vZGU6VSxpc0NvbmRpdGlvbmFsTm9kZTp5LGlzQ29uc3RhbnROb2RlOlQsaXNGdW5jdGlvbkFzc2lnbm1lbnROb2RlOlIsaXNGdW5jdGlvbk5vZGU6Ryxpc0luZGV4Tm9kZTpTLGlzTm9kZTpiLGlzT2JqZWN0Tm9kZTpILGlzT3BlcmF0b3JOb2RlOnYsaXNQYXJlbnRoZXNpc05vZGU6ayxpc1JhbmdlTm9kZTpqLGlzUmVsYXRpb25hbE5vZGU6Sixpc1N5bWJvbE5vZGU6eixpc0NoYWluOkx9LFY9bmV3IFpsLFAub249Vi5vbi5iaW5kKFYpLFAub2ZmPVYub2ZmLmJpbmQoViksUC5vbmNlPVYub25jZS5iaW5kKFYpLFAuZW1pdD1WLmVtaXQuYmluZChWKSxQKTtXLmNvbmZpZz1BaCh4LFcuZW1pdCksVy5leHByZXNzaW9uPXt0cmFuc2Zvcm06e30sbWF0aFdpdGhUcmFuc2Zvcm06e2NvbmZpZzpXLmNvbmZpZ319O3ZhciBLPXt9O2Z1bmN0aW9uIFgoKXtmb3IodmFyIEE9YXJndW1lbnRzLmxlbmd0aCxlPW5ldyBBcnJheShBKSx0PTA7dDxBO3QrKyllW3RdPWFyZ3VtZW50c1t0XTtyZXR1cm4gVy50eXBlZC5hcHBseShXLnR5cGVkLGUpfVguaXNUeXBlZEZ1bmN0aW9uPU8uaXNUeXBlZEZ1bmN0aW9uO3ZhciBaPWZ1bmN0aW9uKEEsdCxuLGkpe2Z1bmN0aW9uIEIoZSx0LHIpe3ZhciBvO2lmKHIud3JhcCYmImZ1bmN0aW9uIj09dHlwZW9mIHQmJih0PWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKCl7Zm9yKHZhciBlPVtdLHQ9MCxpPWFyZ3VtZW50cy5sZW5ndGg7dDxpO3QrKyl7dmFyIHI9YXJndW1lbnRzW3RdO2VbdF09ciYmci52YWx1ZU9mKCl9cmV0dXJuIEEuYXBwbHkobixlKX07cmV0dXJuIEEudHJhbnNmb3JtJiYoZS50cmFuc2Zvcm09QS50cmFuc2Zvcm0pLGV9KHQpKSwiZnVuY3Rpb24iPT10eXBlb2Yobz10KSYmInN0cmluZyI9PXR5cGVvZiBvLnNpZ25hdHVyZSYmKHQ9QShlLElyKHt9LHQuc2lnbmF0dXJlLHQpKSksQS5pc1R5cGVkRnVuY3Rpb24obltlXSkmJkEuaXNUeXBlZEZ1bmN0aW9uKHQpKXJldHVybiB0PXIub3ZlcnJpZGU/QShlLHQuc2lnbmF0dXJlcyk6QShuW2VdLHQpLG5bZV09dCxkZWxldGUgaVtlXSxjKGUsdCksdm9pZCBuLmVtaXQoImltcG9ydCIsZSwoZnVuY3Rpb24oKXtyZXR1cm4gdH0pKTtpZih2b2lkIDA9PT1uW2VdfHxyLm92ZXJyaWRlKXJldHVybiBuW2VdPXQsZGVsZXRlIGlbZV0sYyhlLHQpLHZvaWQgbi5lbWl0KCJpbXBvcnQiLGUsKGZ1bmN0aW9uKCl7cmV0dXJuIHR9KSk7aWYoIXIuc2lsZW50KXRocm93IG5ldyBFcnJvcignQ2Fubm90IGltcG9ydCAiJytlKyciOiBhbHJlYWR5IGV4aXN0cycpfWZ1bmN0aW9uIGMoQSxlKXtlJiYiZnVuY3Rpb24iPT10eXBlb2YgZS50cmFuc2Zvcm0/KG4uZXhwcmVzc2lvbi50cmFuc2Zvcm1bQV09ZS50cmFuc2Zvcm0sdShBKSYmKG4uZXhwcmVzc2lvbi5tYXRoV2l0aFRyYW5zZm9ybVtBXT1lLnRyYW5zZm9ybSkpOihkZWxldGUgbi5leHByZXNzaW9uLnRyYW5zZm9ybVtBXSx1KEEpJiYobi5leHByZXNzaW9uLm1hdGhXaXRoVHJhbnNmb3JtW0FdPWUpKX1mdW5jdGlvbiBFKEEpe2RlbGV0ZSBuLmV4cHJlc3Npb24udHJhbnNmb3JtW0FdLHUoQSk/bi5leHByZXNzaW9uLm1hdGhXaXRoVHJhbnNmb3JtW0FdPW5bQV06ZGVsZXRlIG4uZXhwcmVzc2lvbi5tYXRoV2l0aFRyYW5zZm9ybVtBXX1mdW5jdGlvbiBRKGUsdCl7dmFyIHI9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOmUuZm47aWYoTW4ociwiLiIpKXRocm93IG5ldyBFcnJvcigiRmFjdG9yeSBuYW1lIHNob3VsZCBub3QgY29udGFpbiBhIG5lc3RlZCBwYXRoLiBOYW1lOiAiK0pTT04uc3RyaW5naWZ5KHIpKTt2YXIgbz1oKGUpP24uZXhwcmVzc2lvbi50cmFuc2Zvcm06bixzPXIgaW4gbi5leHByZXNzaW9uLnRyYW5zZm9ybSxhPU1BKG8scik/b1tyXTp2b2lkIDAsQj1mdW5jdGlvbigpe3ZhciBpPXt9O2UuZGVwZW5kZW5jaWVzLm1hcChGQSkuZm9yRWFjaCgoZnVuY3Rpb24oQSl7aWYoTW4oQSwiLiIpKXRocm93IG5ldyBFcnJvcigiRmFjdG9yeSBkZXBlbmRlbmN5IHNob3VsZCBub3QgY29udGFpbiBhIG5lc3RlZCBwYXRoLiBOYW1lOiAiK0pTT04uc3RyaW5naWZ5KEEpKTsibWF0aCI9PT1BP2kubWF0aD1uOiJtYXRoV2l0aFRyYW5zZm9ybSI9PT1BP2kubWF0aFdpdGhUcmFuc2Zvcm09bi5leHByZXNzaW9uLm1hdGhXaXRoVHJhbnNmb3JtOiJjbGFzc2VzIj09PUE/aS5jbGFzc2VzPW46aVtBXT1uW0FdfSkpO3ZhciBvPWUoaSk7aWYobyYmImZ1bmN0aW9uIj09dHlwZW9mIG8udHJhbnNmb3JtKXRocm93IG5ldyBFcnJvcignVHJhbnNmb3JtcyBjYW5ub3QgYmUgYXR0YWNoZWQgdG8gZmFjdG9yeSBmdW5jdGlvbnMuIFBsZWFzZSBjcmVhdGUgYSBzZXBhcmF0ZSBmdW5jdGlvbiBmb3IgaXQgd2l0aCBleHBvcnRzLnBhdGg9ImV4cHJlc3Npb24udHJhbnNmb3JtIicpO2lmKHZvaWQgMD09PWF8fHQub3ZlcnJpZGUpcmV0dXJuIG87aWYoQS5pc1R5cGVkRnVuY3Rpb24oYSkmJkEuaXNUeXBlZEZ1bmN0aW9uKG8pKXJldHVybiBBKGEsbyk7aWYodC5zaWxlbnQpcmV0dXJuIGE7dGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgaW1wb3J0ICInK3IrJyI6IGFscmVhZHkgZXhpc3RzJyl9O2UubWV0YSYmITE9PT1lLm1ldGEubGF6eT8ob1tyXT1CKCksYSYmcz9FKHIpOihoKGUpfHxsKGUpKSYmSUEobi5leHByZXNzaW9uLm1hdGhXaXRoVHJhbnNmb3JtLHIsKGZ1bmN0aW9uKCl7cmV0dXJuIG9bcl19KSkpOihJQShvLHIsQiksYSYmcz9FKHIpOihoKGUpfHxsKGUpKSYmSUEobi5leHByZXNzaW9uLm1hdGhXaXRoVHJhbnNmb3JtLHIsKGZ1bmN0aW9uKCl7cmV0dXJuIG9bcl19KSkpLGlbcl09ZSxuLmVtaXQoImltcG9ydCIscixCKX1mdW5jdGlvbiB1KEEpe3JldHVybiFNQSh3LEEpfWZ1bmN0aW9uIGwoQSl7cmV0dXJuISgtMSE9PUEuZm4uaW5kZXhPZigiLiIpfHxNQSh3LEEuZm4pfHxBLm1ldGEmJkEubWV0YS5pc0NsYXNzKX1mdW5jdGlvbiBoKEEpe3JldHVybiB2b2lkIDAhPT1BJiZ2b2lkIDAhPT1BLm1ldGEmJiEwPT09QS5tZXRhLmlzVHJhbnNmb3JtRnVuY3Rpb258fCExfXZhciB3PXtleHByZXNzaW9uOiEwLHR5cGU6ITAsZG9jczohMCxlcnJvcjohMCxqc29uOiEwLGNoYWluOiEwfTtyZXR1cm4gZnVuY3Rpb24oQSx0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoO2lmKDEhPT1uJiYyIT09bil0aHJvdyBuZXcgeXIoImltcG9ydCIsbiwxLDIpO3R8fCh0PXt9KTt2YXIgaSxjPXt9O2Zvcih2YXIgRSBpbiBmdW5jdGlvbiBBKG4saSxyKXtpZihBcnJheS5pc0FycmF5KGkpKWkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIEEobixlKX0pKTtlbHNlIGlmKCJvYmplY3QiPT09ZShpKSlmb3IodmFyIG8gaW4gaSlNQShpLG8pJiZBKG4saVtvXSxvKTtlbHNlIGlmKG1BKGkpfHx2b2lkIDAhPT1yKXt2YXIgcz1tQShpKT9oKGkpP2kuZm4rIi50cmFuc2Zvcm0iOmkuZm46cjtpZihNQShuLHMpJiZuW3NdIT09aSYmIXQuc2lsZW50KXRocm93IG5ldyBFcnJvcignQ2Fubm90IGltcG9ydCAiJytzKyciIHR3aWNlJyk7bltzXT1pfWVsc2UgaWYoIXQuc2lsZW50KXRocm93IG5ldyBUeXBlRXJyb3IoIkZhY3RvcnksIE9iamVjdCwgb3IgQXJyYXkgZXhwZWN0ZWQiKX0oYyxBKSxjKWlmKE1BKGMsRSkpe3ZhciB1PWNbRV07aWYobUEodSkpUSh1LHQpO2Vsc2UgaWYoImZ1bmN0aW9uIj09dHlwZW9mKGk9dSl8fCJudW1iZXIiPT10eXBlb2YgaXx8InN0cmluZyI9PXR5cGVvZiBpfHwiYm9vbGVhbiI9PXR5cGVvZiBpfHxudWxsPT09aXx8YShpKXx8byhpKXx8cihpKXx8cyhpKXx8ZyhpKXx8QXJyYXkuaXNBcnJheShpKSlCKEUsdSx0KTtlbHNlIGlmKCF0LnNpbGVudCl0aHJvdyBuZXcgVHlwZUVycm9yKCJGYWN0b3J5LCBPYmplY3QsIG9yIEFycmF5IGV4cGVjdGVkIil9fX0oWCwwLFcsSyk7cmV0dXJuIFcuaW1wb3J0PVosVy5vbigiY29uZmlnIiwoZnVuY3Rpb24oKXtkQShLKS5mb3JFYWNoKChmdW5jdGlvbihBKXtBJiZBLm1ldGEmJkEubWV0YS5yZWNyZWF0ZU9uQ29uZmlnQ2hhbmdlJiZaKEEse292ZXJyaWRlOiEwfSl9KSl9KSksVy5jcmVhdGU9QS5iaW5kKG51bGwsbiksVy5mYWN0b3J5PXBBLFcuaW1wb3J0KGRBKGZ1bmN0aW9uKEEpe3ZhciBlPXt9O3JldHVybiBDQShBLGUpLGV9KG4pKSksVy5Bcmd1bWVudHNFcnJvcj15cixXLkRpbWVuc2lvbkVycm9yPV90LFcuSW5kZXhFcnJvcj1xdCxXfShBKX0pKCksaS5kZWZhdWx0fSkoKSxBLmV4cG9ydHM9dCgpfSkuY2FsbCh0aGlzLHQoMTUpKX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxKSxpPXQoMykscj10KDQpLG89dCgyKSxzPXQoOCksYT0nXG48YmxvY2sgdHlwZT0ic2Vuc2luZ190aGluZ19oYXNfbnVtYmVyIj5cbiAgICA8dmFsdWUgbmFtZT0iVEVYVDEiPlxuICAgICAgICA8c2hhZG93IHR5cGU9InRleHQiPlxuICAgICAgICAgICAgPGZpZWxkIG5hbWU9IlRFWFQiPmFiYyAxMCBkZWY8L2ZpZWxkPlxuICAgICAgICA8L3NoYWRvdz5cbiAgICA8L3ZhbHVlPlxuPC9ibG9jaz5cbjxibG9jayB0eXBlPSJzZW5zaW5nX2lzVXBwZXJDYXNlIj5cbiAgICA8dmFsdWUgbmFtZT0idGV4dCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+QTwvZmllbGQ+XG4gICAgICAgIDwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG48L2Jsb2NrPlxuPGJsb2NrIHR5cGU9InNlbnNpbmdfcmVnZXh0ZXN0Ij5cbiAgICA8dmFsdWUgbmFtZT0idGV4dCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+Zm9vIGJhcjwvZmllbGQ+XG4gICAgICAgIDwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG4gICAgPHZhbHVlIG5hbWU9InJlZyI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+Zm9vPC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbiAgICA8dmFsdWUgbmFtZT0icmVncnVsZSI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+ZzwvZmllbGQ+XG4gICAgICAgIDwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG48L2Jsb2NrPlxuJy5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsJ1xuJWIxNj5cbiViMTc+XG4lYjIwPlxuJWIyMj5cbjxibG9jayB0eXBlPSJwbVNlbnNpbmdFeHBhbnNpb25fYW1vdW50T2ZUaW1lS2V5SGFzQmVlbkhlbGQiPlxuICAgIDx2YWx1ZSBuYW1lPSJLRVkiPlxuICAgICAgICA8c2hhZG93IHR5cGU9InNlbnNpbmdfa2V5b3B0aW9ucyIgLz5cbiAgICA8L3ZhbHVlPlxuPC9ibG9jaz5cbiViMTg+XG4lYjE5PlxuJWIyMz5cbiViMjQ+XG4nKS5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsJ1xuJWIxND5cbjxibG9jayB0eXBlPSJzZW5zaW5nX2dldHNwcml0ZXdpdGhhdHRyaWIiPlxuICAgIDx2YWx1ZSBuYW1lPSJ2YXIiPlxuICAgICAgICA8c2hhZG93IHR5cGU9InRleHQiPlxuICAgICAgICAgICAgPGZpZWxkIG5hbWU9IlRFWFQiPm15IHZhcmlhYmxlPC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbiAgICA8dmFsdWUgbmFtZT0idmFsIj5cbiAgICAgICAgPHNoYWRvdyB0eXBlPSJ0ZXh0Ij5cbiAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJURVhUIj4wPC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG4lYjEwPlxuJykuY29uY2F0KCc8c2VwIGdhcD0iMzYiLz4nLCJcbiViNj5cbiViOT5cbiViMTE+XG4lYjE1PlxuJWIxMj5cbiViMTM+XG4iKS5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsJ1xuPGJsb2NrIHR5cGU9InNlbnNpbmdfZ2V0b3BlcmF0aW5nc3lzdGVtIi8+XG48YmxvY2sgdHlwZT0ic2Vuc2luZ19nZXRicm93c2VyIi8+XG48YmxvY2sgdHlwZT0ic2Vuc2luZ19nZXR1cmwiLz5cbicpLmNvbmNhdCgnPHNlcCBnYXA9IjM2Ii8+JywiXG4lYjc+XG4lYjU+XG4lYjg+XG4lYjQ+XG4iKS5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsIlxuJWIzPlxuIikuY29uY2F0KCc8c2VwIGdhcD0iMzYiLz4nLCJcbiViMD5cbiViMT5cbiIpLmNvbmNhdCgnPHNlcCBnYXA9IjM2Ii8+JywiXG4lYjI+XG4iKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5jYW5WaWJyYXRlPSEwLHRoaXMubGFzdFVwZGF0ZT1EYXRlLm5vdygpLHRoaXMuY2FuR2V0TG91ZG5lc3M9ITEsdGhpcy5sb3VkbmVzc0FycmF5PVswXSx0aGlzLnNjcm9sbERpc3RhbmNlPTAsdGhpcy5sYXN0VmFsdWVzPXt9fW9yZGVyQ2F0ZWdvcnlCbG9ja3MoQSl7bGV0IGU9YSx0PTA7Zm9yKGNvbnN0IG4gb2YgQSllPWUucmVwbGFjZSgiJWIiK3QrIj4iLG4pLHQrKztyZXR1cm5bZV19Z2V0SW5mbygpe3JldHVybntpZDoicG1TZW5zaW5nRXhwYW5zaW9uIixuYW1lOiJTZW5zaW5nIEV4cGFuc2lvbiIsY29sb3IxOiIjNUNCMUQ2Iixjb2xvcjI6IiM0N0E4RDEiLGNvbG9yMzoiIzJFOEVCOCIsaXNEeW5hbWljOiEwLG9yZGVyQmxvY2tzOnRoaXMub3JkZXJDYXRlZ29yeUJsb2NrcyxibG9ja3M6W3tvcGNvZGU6ImJhdHRlcnlQZXJjZW50YWdlIix0ZXh0OiJiYXR0ZXJ5IHBlcmNlbnRhZ2UiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwfSx7b3Bjb2RlOiJiYXR0ZXJ5Q2hhcmdpbmciLHRleHQ6ImlzIGRldmljZSBjaGFyZ2luZz8iLGJsb2NrVHlwZTpuLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITB9LHtvcGNvZGU6InZpYnJhdGVEZXZpY2UiLHRleHQ6InZpYnJhdGUiLGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImJyb3dzZXJMYW5ndWFnZSIsdGV4dDoicHJlZmVycmVkIGxhbmd1YWdlIixibG9ja1R5cGU6bi5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMH0se29wY29kZToidXJsT3B0aW9ucyIsdGV4dDoidXJsIFtPUFRJT05TXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntPUFRJT05TOnt0eXBlOmkuU1RSSU5HLG1lbnU6InVybFNlY3Rpb25zIn19fSx7b3Bjb2RlOiJ1cmxPcHRpb25zT2YiLHRleHQ6IltPUFRJT05TXSBvZiB1cmwgW1VSTF0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7T1BUSU9OUzp7dHlwZTppLlNUUklORyxtZW51OiJ1cmxTZWN0aW9ucyJ9LFVSTDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vaG9tZS5wZW5ndWlubW9kLmNvbTozMDAwL3NvbWUvcmFuZG9tL3BhZ2U/cGFyYW09MTAjMjAifX19LHtvcGNvZGU6InNldFVzZXJuYW1lIix0ZXh0OiJzZXQgdXNlcm5hbWUgdG8gW05BTUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IlBlbmd1aW4ifX19LHtvcGNvZGU6InNldFVybEVuZCIsdGV4dDoic2V0IHVybCBwYXRoIHRvIFtQQVRIXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e1BBVEg6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiI/cGFyYW1ldGVyPTEwI3lvdS1jYW4tY2hhbmdlLXRoZXNlLXdpdGhvdXQtcmVmcmVzaGluZyJ9fX0se29wY29kZToicXVlcnlQYXJhbU9mVXJsIix0ZXh0OiJxdWVyeSBwYXJhbWV0ZXIgW1BBUkFNXSBvZiB1cmwgW1VSTF0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7UEFSQU06e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJwYXJhbSJ9LFVSTDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vP3BhcmFtPTEwIn19fSx7b3Bjb2RlOiJwYWNrYWdlZCIsdGV4dDoicHJvamVjdCBwYWNrYWdlZD8iLGJsb2NrVHlwZTpuLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITB9LHtvcGNvZGU6InNwcml0ZU5hbWUiLHRleHQ6InNwcml0ZSBuYW1lIixibG9ja1R5cGU6bi5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMH0se29wY29kZToiZnJhbWVkIix0ZXh0OiJwcm9qZWN0IGluIGlmcmFtZT8iLGJsb2NrVHlwZTpuLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITB9LHtvcGNvZGU6ImN1cnJlbnRNaWxsaXNlY29uZCIsdGV4dDoiY3VycmVudCBtaWxsaXNlY29uZCIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITF9LHtvcGNvZGU6ImRlbHRhVGltZSIsdGV4dDoiZGVsdGEgdGltZSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITF9LHtvcGNvZGU6InBpY2tDb2xvciIsdGV4dDoiZ3JhYiBjb2xvciBhdCB4OiBbWF0geTogW1ldIixibG9ja1R5cGU6bi5SRVBPUlRFUixhcmd1bWVudHM6e1g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fX0se29wY29kZToibWF4U3ByaXRlTGF5ZXJzIix0ZXh0OiJtYXggc3ByaXRlIGxheWVycyIsYmxvY2tUeXBlOm4uUkVQT1JURVJ9LHtvcGNvZGU6ImF2ZXJhZ2VMb3VkbmVzcyIsdGV4dDoiYXZlcmFnZSBsb3VkbmVzcyIsYmxvY2tUeXBlOm4uUkVQT1JURVJ9LHtvcGNvZGU6InNjcm9sbGluZ0Rpc3RhbmNlIix0ZXh0OiJzY3JvbGxpbmcgZGlzdGFuY2UiLGJsb2NrVHlwZTpuLlJFUE9SVEVSfSx7b3Bjb2RlOiJzZXRTY3JvbGxpbmdEaXN0YW5jZSIsdGV4dDoic2V0IHNjcm9sbGluZyBkaXN0YW5jZSB0byBbQU1PVU5UXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0FNT1VOVDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJjaGFuZ2VTY3JvbGxpbmdEaXN0YW5jZUJ5Iix0ZXh0OiJjaGFuZ2Ugc2Nyb2xsaW5nIGRpc3RhbmNlIGJ5IFtBTU9VTlRdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7QU1PVU5UOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMDB9fX0se29wY29kZToiY3VycmVudEtleVByZXNzZWQiLHRleHQ6ImN1cnJlbnQga2V5IHByZXNzZWQiLGJsb2NrVHlwZTpuLlJFUE9SVEVSfSx7b3Bjb2RlOiJhbW91bnRPZlRpbWVLZXlIYXNCZWVuSGVsZCIsdGV4dDoic2Vjb25kcyBzaW5jZSBob2xkaW5nIFtLRVldIixibG9ja1R5cGU6bi5SRVBPUlRFUixhcmd1bWVudHM6e0tFWTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImEifX19LHtvcGNvZGU6ImdldExhc3RLZXlQcmVzc2VkIix0ZXh0OnIoe2lkOiJ0dy5ibG9ja3MubGFzdEtleVByZXNzZWQiLGRlZmF1bHQ6Imxhc3Qga2V5IHByZXNzZWQiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIGxhc3Qga2V5IHRoYXQgd2FzIHByZXNzZWQifSksYmxvY2tUeXBlOm4uUkVQT1JURVJ9LHtvcGNvZGU6ImdldEJ1dHRvbklzRG93biIsdGV4dDpyKHtpZDoidHcuYmxvY2tzLmJ1dHRvbklzRG93biIsZGVmYXVsdDoiW01PVVNFX0JVVFRPTl0gbW91c2UgYnV0dG9uIGRvd24/IixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHdoZXRoZXIgYSBzcGVjaWZpYyBtb3VzZSBidXR0b24gaXMgZG93biJ9KSxibG9ja1R5cGU6bi5CT09MRUFOLGFyZ3VtZW50czp7TU9VU0VfQlVUVE9OOnt0eXBlOmkuTlVNQkVSLG1lbnU6Im1vdXNlQnV0dG9uIixkZWZhdWx0VmFsdWU6IjAifX19LHtvcGNvZGU6ImNoYW5nZWQiLGJsb2NrVHlwZTpuLkJPT0xFQU4sdGV4dDoiW09ORV0gY2hhbmdlZD8iLGFyZ3VtZW50czp7T05FOnt0eXBlOm51bGx9fX1dLG1lbnVzOnttb3VzZUJ1dHRvbjp7aXRlbXM6W3t0ZXh0OnIoe2lkOiJ0dy5ibG9ja3MubW91c2VCdXR0b24ucHJpbWFyeSIsZGVmYXVsdDoiKDApIHByaW1hcnkiLGRlc2NyaXB0aW9uOiJEcm9wZG93biBpdGVtIHRvIHNlbGVjdCBwcmltYXJ5ICh1c3VhbGx5IGxlZnQpIG1vdXNlIGJ1dHRvbiJ9KSx2YWx1ZToiMCJ9LHt0ZXh0OnIoe2lkOiJ0dy5ibG9ja3MubW91c2VCdXR0b24ubWlkZGxlIixkZWZhdWx0OiIoMSkgbWlkZGxlIixkZXNjcmlwdGlvbjoiRHJvcGRvd24gaXRlbSB0byBzZWxlY3QgbWlkZGxlIG1vdXNlIGJ1dHRvbiJ9KSx2YWx1ZToiMSJ9LHt0ZXh0OnIoe2lkOiJ0dy5ibG9ja3MubW91c2VCdXR0b24uc2Vjb25kYXJ5IixkZWZhdWx0OiIoMikgc2Vjb25kYXJ5IixkZXNjcmlwdGlvbjoiRHJvcGRvd24gaXRlbSB0byBzZWxlY3Qgc2Vjb25kYXJ5ICh1c3VhbGx5IHJpZ2h0KSBtb3VzZSBidXR0b24ifSksdmFsdWU6IjIifV0sYWNjZXB0UmVwb3J0ZXJzOiEwfSx1cmxTZWN0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsicHJvdG9jb2wiLCJob3N0IiwiaG9zdG5hbWUiLCJwb3J0IiwicGF0aG5hbWUiLCJzZWFyY2giLCJoYXNoIiwib3JpZ2luIiwic3ViZG9tYWluIiwicGF0aCJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfX19fWdldExhc3RLZXlQcmVzc2VkKEEsZSl7cmV0dXJuIGUuaW9RdWVyeSgia2V5Ym9hcmQiLCJnZXRMYXN0S2V5UHJlc3NlZCIpfWdldEJ1dHRvbklzRG93bihBLGUpe2NvbnN0IHQ9by50b051bWJlcihBLk1PVVNFX0JVVFRPTik7cmV0dXJuIGUuaW9RdWVyeSgibW91c2UiLCJnZXRCdXR0b25Jc0Rvd24iLFt0XSl9Y2hhbmdlZChBLGUpe2NvbnN0IHQ9ZS50aHJlYWQucGVla1N0YWNrKCk7cmV0dXJuIHRoaXMubGFzdFZhbHVlc1t0XXx8KHRoaXMubGFzdFZhbHVlc1t0XT1vLnRvU3RyaW5nKEEuT05FKSksby50b1N0cmluZyhBLk9ORSkhPT10aGlzLmxhc3RWYWx1ZXNbdF0mJih0aGlzLmxhc3RWYWx1ZXNbdF09by50b1N0cmluZyhBLk9ORSksITApfXBpY2tDb2xvcihBKXtjb25zdCBlPXRoaXMucnVudGltZS5yZW5kZXJlcix0PW8udG9OdW1iZXIoQS5YKSxuPW8udG9OdW1iZXIoQS5ZKSxpPU1hdGgucm91bmQoKHRoaXMucnVudGltZS5zdGFnZVdpZHRoLzIrdCkvdGhpcy5ydW50aW1lLnN0YWdlV2lkdGgqZS5fZ2wuY2FudmFzLmNsaWVudFdpZHRoKSxyPU1hdGgucm91bmQoKHRoaXMucnVudGltZS5zdGFnZUhlaWdodC8yLW4pL3RoaXMucnVudGltZS5zdGFnZUhlaWdodCplLl9nbC5jYW52YXMuY2xpZW50SGVpZ2h0KSxhPWUuZXh0cmFjdENvbG9yKGksciwyMCk7cmV0dXJuIHMucmdiVG9IZXgoYS5jb2xvcil9dXJsT3B0aW9uRnJvbU9iamVjdChBLGUpe2lmKCFbInByb3RvY29sIiwiaG9zdCIsImhvc3RuYW1lIiwicG9ydCIsInBhdGhuYW1lIiwic2VhcmNoIiwiaGFzaCIsIm9yaWdpbiIsInN1YmRvbWFpbiIsInBhdGgiXS5pbmNsdWRlcyhBKSlyZXR1cm4iIjtzd2l0Y2goQSl7Y2FzZSJzdWJkb21haW4iOntjb25zdCBBPWUub3JpZ2luO2lmKEEuc3BsaXQoIi4iKS5sZW5ndGg8PTIpcmV0dXJuIiI7Y29uc3QgdD1BLnNwbGl0KCIuIilbMF0uc3BsaXQoIi8vIilbMV07cmV0dXJuIHQ/dC5yZXBsYWNlKC9cLi9naW0sIiIpOiIifWNhc2UicGF0aCI6e2NvbnN0IEE9ZS5vcmlnaW47cmV0dXJuIEEuZW5kc1dpdGgoIi8iKT9lLmhyZWYucmVwbGFjZShBLCIiKTplLmhyZWYucmVwbGFjZShBKyIvIiwiIil9fXJldHVybiBvLnRvU3RyaW5nKGVbQV0pfXZhbGlkYXRlVXJsKEEpe2xldCBlPSEwO3RyeXtuZXcgVVJMKEEpfWNhdGNoKEEpe2U9ITF9cmV0dXJuIGV9YmF0dGVyeVBlcmNlbnRhZ2UoKXtyZXR1cm4iZ2V0QmF0dGVyeSJpbiBuYXZpZ2F0b3I/bmV3IFByb21pc2UoQT0+e25hdmlnYXRvci5nZXRCYXR0ZXJ5KCkudGhlbihlPT57QSgxMDAqZS5sZXZlbCl9KS5jYXRjaCgoKT0+MTAwKX0pOjEwMH1iYXR0ZXJ5Q2hhcmdpbmcoKXtyZXR1cm4hKCJnZXRCYXR0ZXJ5ImluIG5hdmlnYXRvcil8fG5ldyBQcm9taXNlKEE9PntuYXZpZ2F0b3IuZ2V0QmF0dGVyeSgpLnRoZW4oZT0+e0EoZS5jaGFyZ2luZyl9KS5jYXRjaCgoKT0+ITApfSl9bWF4U3ByaXRlTGF5ZXJzKCl7cmV0dXJuIHRoaXMucnVudGltZS5yZW5kZXJlci5fZHJhd0xpc3QubGVuZ3RoLTF9YXZlcmFnZUxvdWRuZXNzKCl7dGhpcy5jYW5HZXRMb3VkbmVzc3x8KGNvbnNvbGUubG9nKCJjcmVhdGVkIGF2ZXJhZ2UgbG91ZG5lc3MgbG9vcCIpLHNldEludGVydmFsKCgpPT57aWYoIXRoaXMuY2FuR2V0TG91ZG5lc3MpcmV0dXJuO2NvbnN0IEE9dGhpcy5ydW50aW1lLmF1ZGlvRW5naW5lLmdldExvdWRuZXNzKCk7Im51bWJlciI9PXR5cGVvZiBBJiYodGhpcy5sb3VkbmVzc0FycmF5Lmxlbmd0aD4yMCYmdGhpcy5sb3VkbmVzc0FycmF5LnNoaWZ0KCksQTwwP3RoaXMubG91ZG5lc3NBcnJheS5wdXNoKDApOnRoaXMubG91ZG5lc3NBcnJheS5wdXNoKEEpKX0sNTApKSx0aGlzLmNhbkdldExvdWRuZXNzPSEwO2xldCBBPTAsZT10aGlzLmxvdWRuZXNzQXJyYXkubGVuZ3RoO2Zvcihjb25zdCBlIG9mIHRoaXMubG91ZG5lc3NBcnJheSlBKz1lO3JldHVybiBBL2V9c2Nyb2xsaW5nRGlzdGFuY2UoKXtyZXR1cm4gdGhpcy5zY3JvbGxEaXN0YW5jZX1zZXRTY3JvbGxpbmdEaXN0YW5jZShBKXtjb25zdCBlPW8udG9OdW1iZXIoQS5BTU9VTlQpO3RoaXMuc2Nyb2xsRGlzdGFuY2U9ZX1jaGFuZ2VTY3JvbGxpbmdEaXN0YW5jZUJ5KEEpe2NvbnN0IGU9by50b051bWJlcihBLkFNT1VOVCk7dGhpcy5zY3JvbGxEaXN0YW5jZSs9ZX1jdXJyZW50S2V5UHJlc3NlZChBLGUpe2NvbnN0IHQ9ZS5pb1F1ZXJ5KCJrZXlib2FyZCIsImdldEFsbEtleXNQcmVzc2VkIiksbj10W3QubGVuZ3RoLTFdO3JldHVybiBuP28udG9TdHJpbmcobikudG9Mb3dlckNhc2UoKToiIn1hbW91bnRPZlRpbWVLZXlIYXNCZWVuSGVsZChBLGUpe2NvbnN0IHQ9by50b1N0cmluZyhBLktFWSksbj1lLmlvUXVlcnkoImtleWJvYXJkIiwiZ2V0S2V5VGltZXN0YW1wIixbdF0pO2lmKDA9PT1uKXJldHVybiAwO3JldHVybihEYXRlLm5vdygpLW4pLzFlM312aWJyYXRlRGV2aWNlKCl7dGhpcy5jYW5WaWJyYXRlJiYidmlicmF0ZSJpbiBuYXZpZ2F0b3ImJih0aGlzLmNhblZpYnJhdGU9ITEsbmF2aWdhdG9yLnZpYnJhdGUoMjUwKSxzZXRUaW1lb3V0KCgpPT57dGhpcy5jYW5WaWJyYXRlPSEwfSwxZTMpKX1icm93c2VyTGFuZ3VhZ2UoKXtpZighKCJsYW5ndWFnZSJpbiBuYXZpZ2F0b3IpKXJldHVybiJVbmtub3duIjtzd2l0Y2goby50b1N0cmluZyhuYXZpZ2F0b3IubGFuZ3VhZ2UpLnNwbGl0KCItIilbMF0udG9Mb3dlckNhc2UoKSl7Y2FzZSJlbiI6cmV0dXJuIkVuZ2xpc2giO2Nhc2UiZXMiOnJldHVybiJTcGFuaXNoIjtjYXNlImZyIjpyZXR1cm4iRnJlbmNoIjtjYXNlIml0IjpyZXR1cm4iSXRhbGlhbiI7Y2FzZSJwdCI6cmV0dXJuIlBvcnR1Z3Vlc2UiO2Nhc2UiZGUiOnJldHVybiJHZXJtYW4iO2Nhc2UicnUiOnJldHVybiJSdXNzaWFuIjtjYXNlImFyIjpyZXR1cm4iQXJhYmljIjtjYXNlInpoIjpyZXR1cm4iQ2hpbmVzZSAoTWFuZGFyaW4pIjtjYXNlImhlIjpyZXR1cm4iSGVicmV3IjtjYXNlImphIjpyZXR1cm4iSmFwYW5lc2UiO2Nhc2Uia28iOnJldHVybiJLb3JlYW4iO2Nhc2Uic3ciOnJldHVybiJTd2FoaWxpIjtjYXNlInNxIjpyZXR1cm4iQWxiYW5pYW4iO2Nhc2UiaHkiOnJldHVybiJBcm1lbmlhbiI7Y2FzZSJldSI6cmV0dXJuIkJhc3F1ZSI7Y2FzZSJubCI6cmV0dXJuIkR1dGNoIjtjYXNlImthIjpyZXR1cm4iR2VvcmdpYW4iO2Nhc2UiZ2QiOnJldHVybiJTY290dGlzaCBHYWVsaWMiO2Nhc2UiZ2EiOnJldHVybiJNb2Rlcm4gSXJpc2giO2Nhc2UiZmEiOnJldHVybiJQZXJzaWFuIChGYXJzaSkiO2Nhc2UiYm8iOnJldHVybiJUaWJldGFuIjtjYXNlImN5IjpyZXR1cm4iV2Vsc2giO2Nhc2UiZWwiOnJldHVybiJNb2Rlcm4gR3JlZWsiO2Nhc2UiZ3JjIjpyZXR1cm4iQW5jaWVudCBHcmVlayI7Y2FzZSJsYSI6cmV0dXJuIkxhdGluIjtjYXNlImFuZyI6cmV0dXJuIkFuZ2xvLVNheG9uIjtjYXNlImVubSI6cmV0dXJuIk1pZGRsZSBFbmdsaXNoIjtkZWZhdWx0OnJldHVybiJVbmtub3duIn19dXJsT3B0aW9ucyhBKXtpZighKCJsb2NhdGlvbiJpbiB3aW5kb3cpKXJldHVybiIiO2NvbnN0IGU9by50b1N0cmluZyhBLk9QVElPTlMpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIHRoaXMudXJsT3B0aW9uRnJvbU9iamVjdChlLGxvY2F0aW9uKX11cmxPcHRpb25zT2YoQSl7aWYoISgibG9jYXRpb24iaW4gd2luZG93KSlyZXR1cm4iIjtjb25zdCBlPW8udG9TdHJpbmcoQS5PUFRJT05TKS50b0xvd2VyQ2FzZSgpLHQ9by50b1N0cmluZyhBLlVSTCk7cmV0dXJuIHRoaXMudmFsaWRhdGVVcmwodCk/dGhpcy51cmxPcHRpb25Gcm9tT2JqZWN0KGUsbmV3IFVSTCh0KSk6IiJ9c2V0VXNlcm5hbWUoQSl7Y29uc3QgZT1vLnRvU3RyaW5nKEEuTkFNRSk7dm0ucG9zdElPRGF0YSgidXNlckRhdGEiLHt1c2VybmFtZTplLGxvZ2dlZEluOiExfSl9c2V0VXJsRW5kKEEpe2lmKCEoImhpc3RvcnkiaW4gd2luZG93KSlyZXR1cm47Y29uc3QgZT1vLnRvU3RyaW5nKEEuUEFUSCksdD1sb2NhdGlvbi5vcmlnaW4uZW5kc1dpdGgoIi8iKT9sb2NhdGlvbi5vcmlnaW4rZTpsb2NhdGlvbi5vcmlnaW4rIi8iK2U7aGlzdG9yeS5yZXBsYWNlU3RhdGUoIiIsIiIsdCl9cXVlcnlQYXJhbU9mVXJsKEEpe2lmKCEoIlVSTFNlYXJjaFBhcmFtcyJpbiB3aW5kb3cpKXJldHVybiIiO2NvbnN0IGU9by50b1N0cmluZyhBLlVSTCk7aWYoIXRoaXMudmFsaWRhdGVVcmwoZSkpcmV0dXJuIiI7Y29uc3QgdD1uZXcgVVJMKGUpO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKHQuc2VhcmNoKS5nZXQoby50b1N0cmluZyhBLlBBUkFNKSl9cGFja2FnZWQoKXtyZXR1cm4gdGhpcy5ydW50aW1lLmlzUGFja2FnZWRQcm9qZWN0fXNwcml0ZU5hbWUoQSxlKXtyZXR1cm4gZS50YXJnZXQuZ2V0TmFtZSgpfWZyYW1lZCgpe3JldHVybiEhd2luZG93LnBhcmVudCYmd2luZG93LnBhcmVudCE9PXdpbmRvd31jdXJyZW50TWlsbGlzZWNvbmQoKXtyZXR1cm4gRGF0ZS5ub3coKSUxZTN9ZGVsdGFUaW1lKCl7bGV0IEE9RGF0ZS5ub3coKSxlPUEtdGhpcy5sYXN0VXBkYXRlO3JldHVybiB0aGlzLmxhc3RVcGRhdGU9QSxlfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCg2Myksbz10KDIpLHM9dCgyNjcpLGE9J1xuPGJsb2NrIHR5cGU9ImNvbnRyb2xfcmVwZWF0Rm9yU2Vjb25kcyI+XG4gICAgPHZhbHVlIG5hbWU9IlRJTUVTIj5cbiAgICAgICAgPHNoYWRvdyB0eXBlPSJtYXRoX251bWJlciI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iTlVNIj4xPC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG48YmxvY2sgdHlwZT0iY29udHJvbF9pbmxpbmVfc3RhY2tfb3V0cHV0Ij5cbiAgICA8dmFsdWUgbmFtZT0iU1VCU1RBQ0siPlxuICAgICAgICA8YmxvY2sgdHlwZT0icHJvY2VkdXJlc19yZXR1cm4iPlxuICAgICAgICAgICAgPHZhbHVlIG5hbWU9InJldHVybiI+XG4gICAgICAgICAgICBcdDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICBcdFx0PGZpZWxkIG5hbWU9IlRFWFQiPjE8L2ZpZWxkPlxuICAgICAgICAgICAgXHQ8L3NoYWRvdz5cbiAgICAgICAgICAgIDwvdmFsdWU+XG4gICAgICAgIDwvYmxvY2s+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG48YmxvY2sgdHlwZT0iY29udHJvbF93YWl0dGljayIvPlxuJWJsb2NrMz5cbicuY29uY2F0KCc8c2VwIGdhcD0iMzYiLz4nLCJcbiVibG9jazI+XG4lYmxvY2s0PlxuJWJsb2NrNT5cbiIpLmNvbmNhdCgnPHNlcCBnYXA9IjM2Ii8+JywnXG48YmxvY2sgdHlwZT0iY29udHJvbF9nZXRfY291bnRlciIvPlxuPGJsb2NrIHR5cGU9ImNvbnRyb2xfaW5jcl9jb3VudGVyIi8+XG48YmxvY2sgdHlwZT0iY29udHJvbF9kZWNyX2NvdW50ZXIiLz5cbjxibG9jayB0eXBlPSJjb250cm9sX3NldF9jb3VudGVyIj5cbiAgICA8dmFsdWUgbmFtZT0iVkFMVUUiPlxuICAgICAgICA8c2hhZG93IHR5cGU9Im1hdGhfd2hvbGVfbnVtYmVyIj5cbiAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJOVU0iPjEwPC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG48YmxvY2sgdHlwZT0iY29udHJvbF9jbGVhcl9jb3VudGVyIi8+XG4nKS5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsJ1xuPGJsb2NrIHR5cGU9ImNvbnRyb2xfaWYiPlxuICAgIDx2YWx1ZSBuYW1lPSJDT05ESVRJT04iPlxuICAgICAgICA8c2hhZG93IHR5cGU9ImNoZWNrYm94IiAvPlxuICAgIDwvdmFsdWU+XG48L2Jsb2NrPlxuPGJsb2NrIHR5cGU9ImNvbnRyb2xfaWZfZWxzZSI+XG4gICAgPHZhbHVlIG5hbWU9IkNPTkRJVElPTiI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0iY2hlY2tib3giIC8+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG4lYmxvY2swPlxuJWJsb2NrMT5cbicpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLnJ1bnRpbWUucmVnaXN0ZXJDb21waWxlZEV4dGVuc2lvbkJsb2NrcygicG1Db250cm9sc0V4cGFuc2lvbiIsdGhpcy5nZXRDb21waWxlSW5mbygpKX1vcmRlckNhdGVnb3J5QmxvY2tzKEEpe2xldCBlPWEsdD0wO2Zvcihjb25zdCBuIG9mIEEpZT1lLnJlcGxhY2UoIiVibG9jayIuY29uY2F0KHQsIj4iKSxuKSx0Kys7cmV0dXJuW2VdfWdldEluZm8oKXtyZXR1cm57aWQ6InBtQ29udHJvbHNFeHBhbnNpb24iLG5hbWU6IkNvbnRyb2xzIEV4cGFuc2lvbiIsY29sb3IxOiIjRkZBQjE5Iixjb2xvcjI6IiNFQzlDMTMiLGNvbG9yMzoiI0NGOEIxNyIsaXNEeW5hbWljOiEwLG9yZGVyQmxvY2tzOnRoaXMub3JkZXJDYXRlZ29yeUJsb2NrcyxibG9ja3M6W3tvcGNvZGU6ImlmRWxzZUlmIix0ZXh0OlsiaWYgW0NPTkRJVElPTjFdIHRoZW4iLCJlbHNlIGlmIFtDT05ESVRJT04yXSB0aGVuIl0sYnJhbmNoQ291bnQ6MixibG9ja1R5cGU6bi5DT05ESVRJT05BTCxhcmd1bWVudHM6e0NPTkRJVElPTjE6e3R5cGU6aS5CT09MRUFOfSxDT05ESVRJT04yOnt0eXBlOmkuQk9PTEVBTn19fSx7b3Bjb2RlOiJpZkVsc2VJZkVsc2UiLHRleHQ6WyJpZiBbQ09ORElUSU9OMV0gdGhlbiIsImVsc2UgaWYgW0NPTkRJVElPTjJdIHRoZW4iLCJlbHNlIl0sYnJhbmNoQ291bnQ6MyxibG9ja1R5cGU6bi5DT05ESVRJT05BTCxhcmd1bWVudHM6e0NPTkRJVElPTjE6e3R5cGU6aS5CT09MRUFOfSxDT05ESVRJT04yOnt0eXBlOmkuQk9PTEVBTn19fSx7b3Bjb2RlOiJhc05ld0Jyb2FkY2FzdCIsdGV4dDpbIm5ldyB0aHJlYWQiLCJbSUNPTl0iXSxicmFuY2hDb3VudDoxLGJsb2NrVHlwZTpuLkNPTkRJVElPTkFMLGFsaWdubWVudHM6W251bGwsbnVsbCxyLlJJR0hUXSxhcmd1bWVudHM6e0lDT046e3R5cGU6aS5JTUFHRSxkYXRhVVJJOnN9fX0se29wY29kZToicmVzdGFydEZyb21UaGVUb3AiLHRleHQ6InJlc3RhcnQgZnJvbSB0aGUgdG9wIFtJQ09OXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxpc1Rlcm1pbmFsOiEwLGFyZ3VtZW50czp7SUNPTjp7dHlwZTppLklNQUdFLGRhdGFVUkk6IiIuY29uY2F0KCJzdGF0aWMvYmxvY2tzLW1lZGlhIiwiL3JlcGVhdC5zdmciKX19fSx7b3Bjb2RlOiJhc05ld0Jyb2FkY2FzdEFyZ3MiLHRleHQ6WyJuZXcgdGhyZWFkIHdpdGggZGF0YSBbREFUQV0iLCJbSUNPTl0iXSxicmFuY2hDb3VudDoxLGJsb2NrVHlwZTpuLkNPTkRJVElPTkFMLGFsaWdubWVudHM6W251bGwsbnVsbCxyLlJJR0hUXSxhcmd1bWVudHM6e0RBVEE6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJhYmMiLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwfSxJQ09OOnt0eXBlOmkuSU1BR0UsZGF0YVVSSTpzfX19LHtvcGNvZGU6ImFzTmV3QnJvYWRjYXN0QXJnQmxvY2siLHRleHQ6InRocmVhZCBkYXRhIixibG9ja1R5cGU6bi5SRVBPUlRFUixhbGxvd0Ryb3BBbnl3aGVyZTohMCxkaXNhYmxlTW9uaXRvcjohMH1dfX1nZXRDb21waWxlSW5mbygpe3JldHVybntpcjp7aWZFbHNlSWY6KEEsZSk9Pih7a2luZDoic3RhY2siLGNvbmRpdGlvbjE6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIkNPTkRJVElPTjEiKSxjb25kaXRpb24yOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJDT05ESVRJT04yIiksd2hlblRydWUxOkEuZGVzY2VuZFN1YnN0YWNrKGUsIlNVQlNUQUNLIiksd2hlblRydWUyOkEuZGVzY2VuZFN1YnN0YWNrKGUsIlNVQlNUQUNLMiIpfSksaWZFbHNlSWZFbHNlOihBLGUpPT4oe2tpbmQ6InN0YWNrIixjb25kaXRpb24xOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJDT05ESVRJT04xIiksY29uZGl0aW9uMjpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQ09ORElUSU9OMiIpLHdoZW5UcnVlMTpBLmRlc2NlbmRTdWJzdGFjayhlLCJTVUJTVEFDSyIpLHdoZW5UcnVlMjpBLmRlc2NlbmRTdWJzdGFjayhlLCJTVUJTVEFDSzIiKSx3aGVuVHJ1ZTM6QS5kZXNjZW5kU3Vic3RhY2soZSwiU1VCU1RBQ0szIil9KSxyZXN0YXJ0RnJvbVRoZVRvcDooKT0+KHtraW5kOiJzdGFjayJ9KX0sanM6e2lmRWxzZUlmOihBLGUsdCk9PntlLnNvdXJjZSs9ImlmICgiLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLmNvbmRpdGlvbjEpLmFzQm9vbGVhbigpLCIpIHtcbiIpLGUuZGVzY2VuZFN0YWNrKEEud2hlblRydWUxLG5ldyB0LkZyYW1lKCExKSksZS5zb3VyY2UrPSJ9IGVsc2UgaWYgKCIuY29uY2F0KGUuZGVzY2VuZElucHV0KEEuY29uZGl0aW9uMikuYXNCb29sZWFuKCksIikge1xuIiksZS5kZXNjZW5kU3RhY2soQS53aGVuVHJ1ZTIsbmV3IHQuRnJhbWUoITEpKSxlLnNvdXJjZSs9In1cbiJ9LGlmRWxzZUlmRWxzZTooQSxlLHQpPT57ZS5zb3VyY2UrPSJpZiAoIi5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS5jb25kaXRpb24xKS5hc0Jvb2xlYW4oKSwiKSB7XG4iKSxlLmRlc2NlbmRTdGFjayhBLndoZW5UcnVlMSxuZXcgdC5GcmFtZSghMSkpLGUuc291cmNlKz0ifSBlbHNlIGlmICgiLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLmNvbmRpdGlvbjIpLmFzQm9vbGVhbigpLCIpIHtcbiIpLGUuZGVzY2VuZFN0YWNrKEEud2hlblRydWUyLG5ldyB0LkZyYW1lKCExKSksZS5zb3VyY2UrPSJ9IGVsc2Uge1xuIixlLmRlc2NlbmRTdGFjayhBLndoZW5UcnVlMyxuZXcgdC5GcmFtZSghMSkpLGUuc291cmNlKz0ifVxuIn0scmVzdGFydEZyb21UaGVUb3A6KEEsZSk9PntlLnNvdXJjZSs9InJ1bnRpbWUuX3Jlc3RhcnRUaHJlYWQodGhyZWFkKTsiLGUuc291cmNlKz0icmV0dXJuOyJ9fX19aWZFbHNlSWYoQSxlKXtjb25zdCB0PW8udG9Cb29sZWFuKEEuQ09ORElUSU9OMSksbj1vLnRvQm9vbGVhbihBLkNPTkRJVElPTjIpO3Q/ZS5zdGFydEJyYW5jaCgxLCExKTpuJiZlLnN0YXJ0QnJhbmNoKDIsITEpfWlmRWxzZUlmRWxzZShBLGUpe2NvbnN0IHQ9by50b0Jvb2xlYW4oQS5DT05ESVRJT04xKSxuPW8udG9Cb29sZWFuKEEuQ09ORElUSU9OMik7dD9lLnN0YXJ0QnJhbmNoKDEsITEpOm4/ZS5zdGFydEJyYW5jaCgyLCExKTplLnN0YXJ0QnJhbmNoKDMsITEpfXJlc3RhcnRGcm9tVGhlVG9wKCl7fWFzTmV3QnJvYWRjYXN0KEEsZSl7ZS50aHJlYWQudGFyZ2V0LmJsb2Nrcy5nZXRCcmFuY2goZS50aHJlYWQucGVla1N0YWNrKCksMCkmJmUuc2VxdWVuY2VyLnJ1bnRpbWUuX3B1c2hUaHJlYWQoZS50aHJlYWQudGFyZ2V0LmJsb2Nrcy5nZXRCcmFuY2goZS50aHJlYWQucGVla1N0YWNrKCksMCksZS50YXJnZXQse30pfWFzTmV3QnJvYWRjYXN0QXJncyhBLGUpe2NvbnN0IHQ9QS5EQVRBO2lmKGUudGhyZWFkLnRhcmdldC5ibG9ja3MuZ2V0QnJhbmNoKGUudGhyZWFkLnBlZWtTdGFjaygpLDApKXtlLnNlcXVlbmNlci5ydW50aW1lLl9wdXNoVGhyZWFkKGUudGhyZWFkLnRhcmdldC5ibG9ja3MuZ2V0QnJhbmNoKGUudGhyZWFkLnBlZWtTdGFjaygpLDApLGUudGFyZ2V0LHt9KS5fX2NvbnRyb2x4X2FzTmV3QnJvYWRjYXN0QXJnc19kYXRhPXR9fWFzTmV3QnJvYWRjYXN0QXJnQmxvY2soQSxlKXtyZXR1cm4gZS50aHJlYWQuX19jb250cm9seF9hc05ld0Jyb2FkY2FzdEFyZ3NfZGF0YX19fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWmxjbk5wYjI0OUlqRXVNU0lnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSEJ5WlhObGNuWmxRWE53WldOMFVtRjBhVzg5SW01dmJtVWlJSGc5SWpCd2VDSWdlVDBpTUhCNElpQjNhV1IwYUQwaU1qUndlQ0lnYUdWcFoyaDBQU0l5TkhCNElpQjJhV1YzUW05NFBTSXdJREFnTWpRZ01qUWlQZ284WkdWbWN6NEtQR2NnYVdROUlreGhlV1Z5TVY4d1gwWkpURXdpUGdvOGNHRjBhQ0JtYVd4c1BTSWpNREF3TURBd0lpQm1hV3hzTFc5d1lXTnBkSGs5SWpBdU5EUTNNRFU0T0RJek5USTVOREV4T0NJZ2MzUnliMnRsUFNKdWIyNWxJaUJrUFNJS1RTQXhNaTR4SURFdU5UVUtVU0F4TVM0MU1UVTBNamsyT0RjMUlERXVORGs1TmpBNU16YzFJREV3TGprMUlESXVNVFVLVENBM0xqTWdOaTR4Q2xFZ05pNDJPRGN4TURrek56VWdOaTQxTmpJMUlEWXVOeUEzTGpJZ05pNDNNalVnT0M0M056VXhPVFV6TVRJMUlEZ3VNeUE0TGpjMUNrd2dPUzR5TlNBNExqYzFDbEVnT1M0Mk1UQTFORFk0TnpVZ01USXVNalUyTURVME5qZzNOU0E1TGpJMUlERTFMak1LVENBNExqRWdNVFV1TWpVS1VTQTNMakUxTXprd05qSTFJREUxTGpJM01UWTNPVFk0TnpVZ05pNDRJREUySURZdU5qYzJNelkzTVRnM05TQXhOaTR5TmpZM09UWTROelVnTmk0Mk5TQXhOaTQyTlNBMkxqWXhNalk1TlRNeE1qVWdNVGN1TVRZM01UZzNOU0EzTGpJZ01UY3VPRFVLVENBeE1DNDVOU0F5TVM0NUNsRWdNVEV1TkRReE1qRXdPVE0zTlNBeU1pNDJOVEU1TlRNeE1qVWdNVEl1TVNBeU1pNDFOU0F4TWk0Mk1Ea3hOemsyT0RjMUlESXlMalkwTkRjeU5qVTJNalVnTVRNdU1pQXlNaTR3TlFwTUlERXpMaklnTWpJdU1EVWdNVGN1TURVZ01UY3VPUXBSSURFM0xqVTFPRGM0T1RBMk1qVWdNVGN1TkRZNE9UUTFNekV5TlNBeE55NDFJREUyTGprZ01UY3VOVEkxSURFMUxqTXlORGd3TkRZNE56VWdNVFV1T1RVZ01UVXVNd3BNSURFMExqZ2dNVFV1TXdwUklERTBMalV5T0RNeU1ETXhNalVnTVRJdU1USXhOamM1TmpnM05TQXhOQzQ0TlNBNExqZ0tUQ0F4Tmk0eE5TQTRMamdLVVNBeE55NHhPVGcwTXpjMUlEZ3VPREk0TnpFd09UTTNOU0F4Tnk0ME5TQTNMamtnTVRjdU5USXpOak15T0RFeU5TQTNMamMxTVRFM01UZzNOU0F4Tnk0MUlEY3VOaUF4Tnk0MU1qVWdOeTQxTlNBeE55NDFJRGN1TkRVZ01UY3VOVFEzTkRZd09UTTNOU0EyTGpnME5EVXpNVEkxSURFM0xqQTFJRFl1TWpVS1RDQXhNeTR5SURJdU1ncFJJREV5TGpjMU5UQTNPREV5TlNBeExqUTVPREkwTWpFNE56VWdNVEl1TVNBeExqVTFJRm9pTHo0S1BDOW5QZ29LUEdjZ2FXUTlJa3hoZVdWeU1GOHdYMFpKVEV3aVBnbzhjR0YwYUNCbWFXeHNQU0lqUmtaR1JrWkdJaUJ6ZEhKdmEyVTlJbTV2Ym1VaUlHUTlJZ3BOSURFMkxqTTFJRFl1T0RVS1RDQXhNaTQwTlNBeUxqYzFDbEVnTVRJdU15QXlMalVnTVRJdU1TQXlMalVnTVRFdU9TQXlMalVnTVRFdU55QXlMamMxQ2t3Z055NDROU0EyTGpnMUNsRWdOeTQyTlNBM0lEY3VOalVnTnk0eUlEY3VOalVnTnk0NE5TQTRMak1nTnk0NE5RcE1JREV3TGpFZ055NDROUXBSSURFd0xqWTFJREV5TGpRZ01UQXVNU0F4Tmk0eU5RcE1JRGd1TVNBeE5pNHlDbEVnTnk0M05TQXhOaTR5SURjdU5qVWdNVFl1TlNBM0xqWWdNVFl1TlRVZ055NDJJREUyTGpZMUlEY3VOaUF4Tmk0NUlEY3VPU0F4Tnk0eU5RcE1JREV4TGpjMUlESXhMalFLVVNBeE1TNDVJREl4TGpZMUlERXlMakVnTWpFdU5qVWdNVEl1TXlBeU1TNDJOU0F4TWk0MU5TQXlNUzQwQ2t3Z01UWXVOQ0F4Tnk0eU5RcFJJREUyTGpZZ01UY3VNU0F4Tmk0MklERTJMamtnTVRZdU5pQXhOaTR5TlNBeE5TNDVOU0F4Tmk0eU5RcE1JREUwSURFMkxqSTFDbEVnTVRNdU5TQXhNaTR4TlNBeE5DQTNMamtLVENBeE5pNHhOU0EzTGprS1VTQXhOaTQxSURjdU9TQXhOaTQySURjdU5pQXhOaTQySURjdU5UVWdNVFl1TmlBM0xqUTFJREUyTGpZZ055NHhOU0F4Tmk0ek5TQTJMamcxSUZvaUx6NEtQQzluUGdvOEwyUmxabk0rQ2dvOFp5QnBaRDBpVEdGNVpYSmZNeUkrQ2p4bklIUnlZVzV6Wm05eWJUMGliV0YwY21sNEtDQXhMQ0F3TENBd0xDQXhMQ0F3TERBcElDSStDangxYzJVZ2VHeHBibXM2YUhKbFpqMGlJMHhoZVdWeU1WOHdYMFpKVEV3aUx6NEtQQzluUGdvOEwyYytDZ284WnlCcFpEMGlZWE41Ym1OZmMzWm5JajRLUEdjZ2RISmhibk5tYjNKdFBTSnRZWFJ5YVhnb0lERXNJREFzSURBc0lERXNJREFzTUNrZ0lqNEtQSFZ6WlNCNGJHbHVhenBvY21WbVBTSWpUR0Y1WlhJd1h6QmZSa2xNVENJdlBnbzhMMmMrQ2p3dlp6NEtQQzl6ZG1jK0NnPT0ifSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9dCgzKSxyPXQoMiksbz0nXG5ceDNjIS0tICViNCA+IG5haCAtLVx4M2VcbjxibG9jayB0eXBlPSJldmVudF93aGVuYnJvYWRjYXN0cmVjZWl2ZWQiPjwvYmxvY2s+XG48YmxvY2sgdHlwZT0icG1FdmVudHNFeHBhbnNpb25fc2VuZFdpdGhEYXRhIj5cbiAgICA8dmFsdWUgbmFtZT0iQlJPQURDQVNUIj5cbiAgICAgICAgPHNoYWRvdyB0eXBlPSJldmVudF9icm9hZGNhc3RfbWVudSI+PC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbiAgICA8dmFsdWUgbmFtZT0iREFUQSI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+YWJjPC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG48YmxvY2sgdHlwZT0icG1FdmVudHNFeHBhbnNpb25faXNCcm9hZGNhc3RSZWNlaXZlZCI+XG4gICAgPHZhbHVlIG5hbWU9IkJST0FEQ0FTVCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0iZXZlbnRfYnJvYWRjYXN0X21lbnUiPjwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG48L2Jsb2NrPlxuJWI1PlxuJy5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsJ1xuXHgzYyEtLSAlYjYgPiAtLVx4M2VcbjxibG9jayB0eXBlPSJwbUV2ZW50c0V4cGFuc2lvbl9icm9hZGNhc3RUb1Nwcml0ZSI+XG4gICAgPHZhbHVlIG5hbWU9IkJST0FEQ0FTVCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0iZXZlbnRfYnJvYWRjYXN0X21lbnUiPjwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG48L2Jsb2NrPlxuPGJsb2NrIHR5cGU9InBtRXZlbnRzRXhwYW5zaW9uX2Jyb2FkY2FzdEZ1bmN0aW9uIj5cbiAgICA8dmFsdWUgbmFtZT0iQlJPQURDQVNUIj5cbiAgICAgICAgPHNoYWRvdyB0eXBlPSJldmVudF9icm9hZGNhc3RfbWVudSI+PC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG48YmxvY2sgdHlwZT0icG1FdmVudHNFeHBhbnNpb25fYnJvYWRjYXN0RnVuY3Rpb25BcmdzIj5cbiAgICA8dmFsdWUgbmFtZT0iQlJPQURDQVNUIj5cbiAgICAgICAgPHNoYWRvdyB0eXBlPSJldmVudF9icm9hZGNhc3RfbWVudSI+PC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbiAgICA8dmFsdWUgbmFtZT0iQVJHUyI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0idGV4dCI+XG4gICAgICAgICAgICA8ZmllbGQgbmFtZT0iVEVYVCI+YWJjPC9maWVsZD5cbiAgICAgICAgPC9zaGFkb3c+XG4gICAgPC92YWx1ZT5cbjwvYmxvY2s+XG4lYjg+XG4nKS5jb25jYXQoJzxzZXAgZ2FwPSIzNiIvPicsIlxuJWIyPlxuJWIwPlxuJWIxPlxuIikuY29uY2F0KCc8c2VwIGdhcD0iMzYiLz4nLCdcbjxibG9jayB0eXBlPSJwbUV2ZW50c0V4cGFuc2lvbl9icm9hZGNhc3RUaHJlYWRDb3VudCI+XG4gICAgPHZhbHVlIG5hbWU9IkJST0FEQ0FTVCI+XG4gICAgICAgIDxzaGFkb3cgdHlwZT0iZXZlbnRfYnJvYWRjYXN0X21lbnUiPjwvc2hhZG93PlxuICAgIDwvdmFsdWU+XG48L2Jsb2NrPlxuJyk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX290aGVyRnJhbWU9ITEsdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1NURVBfU1RBUlQiLCgpPT57dGhpcy5fZXZlcnlPdGhlckZyYW1lKCl9KX1fZXZlcnlPdGhlckZyYW1lKCl7dGhpcy5fb3RoZXJGcmFtZT8odGhpcy5ydW50aW1lLnN0YXJ0SGF0cygicG1FdmVudHNFeHBhbnNpb25fZXZlcnlPdGhlckZyYW1lIiksdGhpcy5fb3RoZXJGcmFtZT0hMSk6dGhpcy5fb3RoZXJGcmFtZT0hMH1vcmRlckNhdGVnb3J5QmxvY2tzKEEpe2xldCBlPW8sdD0wO2Zvcihjb25zdCBuIG9mIEEpZT1lLnJlcGxhY2UoIiViIit0KyI+IixuKSx0Kys7cmV0dXJuW2VdfWdldEluZm8oKXtyZXR1cm57aWQ6InBtRXZlbnRzRXhwYW5zaW9uIixuYW1lOiJFdmVudHMgRXhwYW5zaW9uIixjb2xvcjE6IiNGRkJGMDAiLGNvbG9yMjoiI0U2QUMwMCIsY29sb3IzOiIjQ0M5OTAwIixpc0R5bmFtaWM6ITAsb3JkZXJCbG9ja3M6dGhpcy5vcmRlckNhdGVnb3J5QmxvY2tzLGJsb2Nrczpbe29wY29kZToiZXZlcnlPdGhlckZyYW1lIix0ZXh0OiJldmVyeSBvdGhlciBmcmFtZSIsYmxvY2tUeXBlOm4uRVZFTlQsaXNFZGdlQWN0aXZhdGVkOiExLHN3aXRjaGVzOlt7aXNOb29wOiEwfSwibmV2ZXJyIl19LHtvcGNvZGU6Im5ldmVyciIsdGV4dDoibmV2ZXIiLGJsb2NrVHlwZTpuLkVWRU5ULGlzRWRnZUFjdGl2YXRlZDohMSxzd2l0Y2hlczpbImV2ZXJ5T3RoZXJGcmFtZSIse2lzTm9vcDohMH1dfSx7b3Bjb2RlOiJ3aGVuU3ByaXRlQ2xpY2tlZCIsdGV4dDoid2hlbiBbU1BSSVRFXSBjbGlja2VkIixibG9ja1R5cGU6bi5FVkVOVCxpc0VkZ2VBY3RpdmF0ZWQ6ITEsYXJndW1lbnRzOntTUFJJVEU6e3R5cGU6aS5TVFJJTkcsbWVudToic3ByaXRlTmFtZSJ9fX0se29wY29kZToic2VuZFdpdGhEYXRhIix0ZXh0OiJicm9hZGNhc3QgW0JST0FEQ0FTVF0gd2l0aCBkYXRhIFtEQVRBXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0JST0FEQ0FTVDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InlvdXIgbm90IHN1cHBvc2VkIHRvIHNlZSB0aGlzPyJ9LERBVEE6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJhYmMifX19LHtvcGNvZGU6InJlY2VpdmVkRGF0YSIsdGV4dDoid2hlbiBJIHJlY2VpdmUgW0JST0FEQ0FTVF0gd2l0aCBkYXRhIixibG9ja1R5cGU6bi5FVkVOVCxpc0VkZ2VBY3RpdmF0ZWQ6ITEsaGlkZUZyb21QYWxsZXRlOiEwLGFyZ3VtZW50czp7QlJPQURDQVNUOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImJyb2FkY2FzdE1lbnUifX19LHtvcGNvZGU6ImlzQnJvYWRjYXN0UmVjZWl2ZWQiLHRleHQ6ImlzIG1lc3NhZ2UgW0JST0FEQ0FTVF0gcmVjZWl2ZWQ/IixibG9ja1R5cGU6bi5CT09MRUFOLGhpZGVGcm9tUGFsZXR0ZTohMCxhcmd1bWVudHM6e0JST0FEQ0FTVDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InlvdXIgbm90IHN1cHBvc2VkIHRvIHNlZSB0aGlzPyJ9fX0se29wY29kZToicmVjaWV2ZWREYXRhUmVwb3J0ZXIiLHRleHQ6InJlY2lldmVkIGRhdGEiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFsbG93RHJvcEFueXdoZXJlOiEwLGRpc2FibGVNb25pdG9yOiEwfSx7b3Bjb2RlOiJicm9hZGNhc3RUb1Nwcml0ZSIsdGV4dDoiYnJvYWRjYXN0IFtCUk9BRENBU1RdIHRvIFtTUFJJVEVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7QlJPQURDQVNUOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToieW91ciBub3Qgc3VwcG9zZWQgdG8gc2VlIHRoaXM/In0sU1BSSVRFOnt0eXBlOmkuU1RSSU5HLG1lbnU6InNwcml0ZU5hbWUifX19LHtvcGNvZGU6ImJyb2FkY2FzdEZ1bmN0aW9uIix0ZXh0OiJicm9hZGNhc3QgW0JST0FEQ0FTVF0gYW5kIHdhaXQiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFsbG93RHJvcEFueXdoZXJlOiEwLGFyZ3VtZW50czp7QlJPQURDQVNUOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToieW91ciBub3Qgc3VwcG9zZWQgdG8gc2VlIHRoaXM/In19LHN3aXRjaGVzOlt7aXNOb29wOiEwfSwiYnJvYWRjYXN0RnVuY3Rpb25BcmdzIiwiYnJvYWRjYXN0VGhyZWFkQ291bnQiXSxzd2l0Y2hUZXh0OiJicm9hZGNhc3QgYW5kIHdhaXQifSx7b3Bjb2RlOiJyZXR1cm5Gcm9tQnJvYWRjYXN0RnVuYyIsdGV4dDoicmV0dXJuIFtWQUxVRV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsaXNUZXJtaW5hbDohMCxkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1ZBTFVFOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiMSJ9fX0se29wY29kZToiYnJvYWRjYXN0VGhyZWFkQ291bnQiLHRleHQ6ImJyb2FkY2FzdCBbQlJPQURDQVNUXSBhbmQgZ2V0ICMgb2YgYmxvY2tzIHN0YXJ0ZWQiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7QlJPQURDQVNUOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToieW91ciBub3Qgc3VwcG9zZWQgdG8gc2VlIHRoaXM/In19LHN3aXRjaGVzOlsiYnJvYWRjYXN0RnVuY3Rpb24iLCJicm9hZGNhc3RGdW5jdGlvbkFyZ3MiLHtpc05vb3A6ITB9XSxzd2l0Y2hUZXh0OiJicm9hZGNhc3QgYW5kIGdldCBibG9ja3Mgc3RhcnRlZCJ9LHtvcGNvZGU6ImJyb2FkY2FzdEZ1bmN0aW9uQXJncyIsdGV4dDoiYnJvYWRjYXN0IFtCUk9BRENBU1RdIHdpdGggZGF0YSBbQVJHU10gYW5kIHdhaXQiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFsbG93RHJvcEFueXdoZXJlOiEwLGFyZ3VtZW50czp7QlJPQURDQVNUOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToieW91ciBub3Qgc3VwcG9zZWQgdG8gc2VlIHRoaXM/In0sQVJHUzp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImFiYyJ9fSxzd2l0Y2hlczpbImJyb2FkY2FzdEZ1bmN0aW9uIix7aXNOb29wOiEwfSwiYnJvYWRjYXN0VGhyZWFkQ291bnQiXSxzd2l0Y2hUZXh0OiJicm9hZGNhc3Qgd2l0aCBkYXRhIn1dLG1lbnVzOntzcHJpdGVOYW1lOiJfc3ByaXRlTmFtZSIsYnJvYWRjYXN0TWVudToiX2Jyb2FkY2FzdE1lbnUifX19X3Nwcml0ZUlkKCl7Y29uc3QgQT1bXTtmb3IoY29uc3QgZSBvZiB0aGlzLnJ1bnRpbWUudGFyZ2V0cyllLmlzT3JpZ2luYWwmJihlLmlzU3RhZ2U/QS5wdXNoKHt0ZXh0OiJzdGFnZSIsdmFsdWU6ZS5pZH0pOkEucHVzaCh7dGV4dDplLnNwcml0ZS5uYW1lLHZhbHVlOmUuaWR9KSk7cmV0dXJuIEEubGVuZ3RoPD0wP1t7dGV4dDoiIix2YWx1ZToiIn1dOkF9X3Nwcml0ZU5hbWUoKXtjb25zdCBBPVtdO2Zvcihjb25zdCBlIG9mIHRoaXMucnVudGltZS50YXJnZXRzKWUuaXNPcmlnaW5hbCYmKGUuaXNTdGFnZT9BLnB1c2goe3RleHQ6InN0YWdlIix2YWx1ZToiX3N0YWdlXyJ9KTpBLnB1c2goe3RleHQ6ZS5zcHJpdGUubmFtZSx2YWx1ZTplLnNwcml0ZS5uYW1lfSkpO3JldHVybiBBLmxlbmd0aDw9MD9be3RleHQ6IiIsdmFsdWU6IiJ9XTpBfV9icm9hZGNhc3RNZW51KCl7Y29uc3QgQT1bXTtmb3IoY29uc3QgZSBvZiB0aGlzLnJ1bnRpbWUudGFyZ2V0cyllLmlzT3JpZ2luYWwmJihlLmlzU3RhZ2U/QS5wdXNoKHt0ZXh0OiJzdGFnZSIsdmFsdWU6ZS5pZH0pOkEucHVzaCh7dGV4dDplLnNwcml0ZS5uYW1lLHZhbHVlOmUuaWR9KSk7cmV0dXJuIEEubGVuZ3RoPD0wP1t7dGV4dDoiIix2YWx1ZToiIn1dOkF9c2VuZFdpdGhEYXRhKEEsZSl7Y29uc3QgdD1yLnRvU3RyaW5nKEEuQlJPQURDQVNUKSxuPXIudG9TdHJpbmcoQS5EQVRBKSxpPWUucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmxvb2t1cEJyb2FkY2FzdE1zZygiIix0KTtpJiYoaS5pc1NlbnQ9ITApO2NvbnN0IG89ZS5zdGFydEhhdHMoImV2ZW50X3doZW5icm9hZGNhc3RyZWNlaXZlZCIse0JST0FEQ0FTVF9PUFRJT046dH0pO2Zvcihjb25zdCBBIG9mIG8pQS5fX2V2ZXhfcmVjaWV2ZWREYXRhYT1ufWJyb2FkY2FzdFRvU3ByaXRlKEEsZSl7Y29uc3QgdD1yLnRvU3RyaW5nKEEuQlJPQURDQVNUKSxuPWUucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmxvb2t1cEJyb2FkY2FzdE1zZygiIix0KTtuJiYobi5pc1NlbnQ9ITApO2NvbnN0IGk9ci50b1N0cmluZyhBLlNQUklURSksbz0iX3N0YWdlXyI9PT1pP3RoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpOnRoaXMucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUoaSk7ZS5zdGFydEhhdHMoImV2ZW50X3doZW5icm9hZGNhc3RyZWNlaXZlZCIse0JST0FEQ0FTVF9PUFRJT046dH0sbyl9YnJvYWRjYXN0VGhyZWFkQ291bnQoQSxlKXtjb25zdCB0PXIudG9TdHJpbmcoQS5CUk9BRENBU1QpLG49ZS5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkubG9va3VwQnJvYWRjYXN0TXNnKCIiLHQpO24mJihuLmlzU2VudD0hMCk7cmV0dXJuIGUuc3RhcnRIYXRzKCJldmVudF93aGVuYnJvYWRjYXN0cmVjZWl2ZWQiLHtCUk9BRENBU1RfT1BUSU9OOnR9KS5sZW5ndGh9cmVjaWV2ZWREYXRhUmVwb3J0ZXIoQSxlKXtyZXR1cm4gZS50aHJlYWQuX19ldmV4X3JlY2lldmVkRGF0YWF9cmV0dXJuRnJvbUJyb2FkY2FzdEZ1bmMoQSxlKXtlLnRocmVhZC5fX2V2ZXhfcmV0dXJuRGF0YWE9QS5WQUxVRX1pc0Jyb2FkY2FzdFJlY2VpdmVkKEEsZSl7Y29uc3QgdD1yLnRvU3RyaW5nKEEuQlJPQURDQVNUKSxuPWUucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmxvb2t1cEJyb2FkY2FzdE1zZygiIix0KTtyZXR1cm4gci50b0Jvb2xlYW4obiYmbi5pc1NlbnQpfWJyb2FkY2FzdEZ1bmN0aW9uKCl7fWJyb2FkY2FzdEZ1bmN0aW9uQXJncygpe319fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QX1vcmRlckNhdGVnb3J5QmxvY2tzKCl7cmV0dXJuWydcbjxibG9jayB0eXBlPSJjb250cm9sX2lubGluZV9zdGFja19vdXRwdXQiPlxuICAgIDx2YWx1ZSBuYW1lPSJTVUJTVEFDSyI+XG4gICAgICAgIDxibG9jayB0eXBlPSJwcm9jZWR1cmVzX3JldHVybiI+XG4gICAgICAgICAgICA8dmFsdWUgbmFtZT0icmV0dXJuIj5cbiAgICAgICAgICAgIFx0PHNoYWRvdyB0eXBlPSJ0ZXh0Ij5cbiAgICAgICAgICAgIFx0XHQ8ZmllbGQgbmFtZT0iVEVYVCI+MTwvZmllbGQ+XG4gICAgICAgICAgICBcdDwvc2hhZG93PlxuICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgPC9ibG9jaz5cbiAgICA8L3ZhbHVlPlxuPC9ibG9jaz5cbiddfWdldEluZm8oKXtyZXR1cm57aWQ6InBtSW5saW5lQmxvY2tzIixuYW1lOiJJbmxpbmUgQmxvY2tzIixjb2xvcjE6IiNGRkFCMTkiLGNvbG9yMjoiI0VDOUMxMyIsY29sb3IzOiIjQ0Y4QjE3Iixpc0R5bmFtaWM6ITAsb3JkZXJCbG9ja3M6dGhpcy5vcmRlckNhdGVnb3J5QmxvY2tzLGJsb2NrczpbXX19fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxKSxpPXQoMykse3ZhbGlkYXRlQXJyYXk6cn09dCgxNCksbz1uZXcodCgyNSkpLHM9e2lzTm9vcDohMH07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnRmlsZXMiLG5hbWU6IkZpbGVzIChsZWdhY3kpIixjb2xvcjE6IiNmZmJiMDAiLGNvbG9yMjoiI2ZmYWEwMCIsYmxvY2tzOlt7b3Bjb2RlOiJpc0ZpbGVSZWFkZXJTdXBwb3J0ZWQiLHRleHQ6ImNhbiBmaWxlcyBiZSB1c2VkPyIsZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOm4uQk9PTEVBTn0se29wY29kZToiYXNrVXNlckZvckZpbGVPZlR5cGUiLHRleHQ6ImFzayB1c2VyIGZvciBhIGZpbGUgb2YgdHlwZSBbRklMRV9UWVBFXSIsZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntGSUxFX1RZUEU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0eHQgc2F2ZWZpbGUifX0sc3dpdGNoZXM6W3MsImFza1VzZXJGb3JGaWxlT2ZUeXBlQXNBcnJheUJ1ZmZlciIsImFza1VzZXJGb3JGaWxlT2ZUeXBlQXNEYXRhVXJpIl0sc3dpdGNoVGV4dDoiYXNrIGZvciBmaWxlIn0se29wY29kZToiYXNrVXNlckZvckZpbGVPZlR5cGVBc0FycmF5QnVmZmVyIix0ZXh0OiJhc2sgdXNlciBmb3IgYW4gYXJyYXkgYnVmZmVyIGZpbGUgb2YgdHlwZSBbRklMRV9UWVBFXSIsZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntGSUxFX1RZUEU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0eHQgc2F2ZWZpbGUifX0sc3dpdGNoZXM6WyJhc2tVc2VyRm9yRmlsZU9mVHlwZSIscywiYXNrVXNlckZvckZpbGVPZlR5cGVBc0RhdGFVcmkiXSxzd2l0Y2hUZXh0OiJhc2sgZm9yIGFycmF5IGJ1ZmZlciJ9LHtvcGNvZGU6ImFza1VzZXJGb3JGaWxlT2ZUeXBlQXNEYXRhVXJpIix0ZXh0OiJhc2sgdXNlciBmb3IgYSBkYXRhIHVyaSBmaWxlIG9mIHR5cGUgW0ZJTEVfVFlQRV0iLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFyZ3VtZW50czp7RklMRV9UWVBFOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToicG5nIn19LHN3aXRjaGVzOlsiYXNrVXNlckZvckZpbGVPZlR5cGUiLCJhc2tVc2VyRm9yRmlsZU9mVHlwZUFzQXJyYXlCdWZmZXIiLHNdLHN3aXRjaFRleHQ6ImFzayBmb3IgZGF0YSB1cmkifSx7b3Bjb2RlOiJkb3dubG9hZEZpbGUiLHRleHQ6ImRvd25sb2FkIGNvbnRlbnQgW0ZJTEVfQ09OVEVOVF0gYXMgZmlsZSBuYW1lIFtGSUxFX05BTUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7RklMRV9DT05URU5UOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8hIn0sRklMRV9OQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidGV4dC50eHQifX0sc3dpdGNoZXM6W3MsImRvd25sb2FkRmlsZURhdGFVcmkiLCJkb3dubG9hZEZpbGVCdWZmZXIiXSxzd2l0Y2hUZXh0OiJkb3dubG9hZCBmaWxlIn0se29wY29kZToiZG93bmxvYWRGaWxlRGF0YVVyaSIsdGV4dDoiZG93bmxvYWQgZGF0YSB1cmkgW0ZJTEVfQ09OVEVOVF0gYXMgZmlsZSBuYW1lIFtGSUxFX05BTUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7RklMRV9DT05URU5UOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZGF0YTppbWFnZS9wbmc7YmFzZTY0LCJ9LEZJTEVfTkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImNvbnRlbnQucG5nIn19LHN3aXRjaGVzOlsiZG93bmxvYWRGaWxlIixzLCJkb3dubG9hZEZpbGVCdWZmZXIiXSxzd2l0Y2hUZXh0OiJkb3dubG9hZCBkYXRhIHVyaSJ9LHtvcGNvZGU6ImRvd25sb2FkRmlsZUJ1ZmZlciIsdGV4dDoiZG93bmxvYWQgYXJyYXkgYnVmZmVyIFtGSUxFX0NPTlRFTlRdIGFzIGZpbGUgbmFtZSBbRklMRV9OQU1FXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0ZJTEVfQ09OVEVOVDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IltdIn0sRklMRV9OQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZGF0YS5iaW4ifX0sc3dpdGNoZXM6WyJkb3dubG9hZEZpbGUiLCJkb3dubG9hZEZpbGVEYXRhVXJpIixzXSxzd2l0Y2hUZXh0OiJkb3dubG9hZCBhcnJheSBidWZmZXIifV19fWlzRmlsZVJlYWRlclN1cHBvcnRlZCgpe3JldHVybiBudWxsIT09d2luZG93LkZpbGVSZWFkZXImJm51bGwhPT13aW5kb3cuZG9jdW1lbnR9ZGF0YVVSTHRvQmxvYihBKXtmb3IodmFyIGU9QS5zcGxpdCgiLCIpLHQ9ZVswXS5tYXRjaCgvOiguKj8pOy8pWzFdLG49YXRvYihlWzFdKSxpPW4ubGVuZ3RoLHI9bmV3IFVpbnQ4QXJyYXkoaSk7aS0tOylyW2ldPW4uY2hhckNvZGVBdChpKTtyZXR1cm4gbmV3IEJsb2IoW3JdLHt0eXBlOnR9KX1fX2Fza1VzZXJGb3JGaWxlKEEpe3RyeXtyZXR1cm4gbmV3IFByb21pc2UoZT0+e2NvbnN0IHQ9bmV3IEZpbGVSZWFkZXI7dC5vbmxvYWQ9QT0+e2UoQS50YXJnZXQucmVzdWx0KX07Y29uc3Qgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO24udHlwZT0iZmlsZSIsbnVsbCE9PUEmJihuLmFjY2VwdD1BKSxuLnN0eWxlLmRpc3BsYXk9Im5vbmUiLGRvY3VtZW50LmJvZHkuYXBwZW5kKG4pLG4ub25jaGFuZ2U9KCk9Pntjb25zdCBBPW4uZmlsZXNbMF07QT8odC5yZWFkQXNUZXh0KEEpLG4ucmVtb3ZlKCkpOmUoIiIpfSxuLm9uYmx1cj0oKT0+e24ub25jaGFuZ2UoKX0sbi5mb2N1cygpLG4uY2xpY2soKX0pfWNhdGNoKEEpe3JldHVybn19X19hc2tVc2VyRm9yRmlsZWFycmF5YnVmZmVyKEEpe3RyeXtyZXR1cm4gbmV3IFByb21pc2UoZT0+e2NvbnN0IHQ9bmV3IEZpbGVSZWFkZXI7dC5vbmxvYWQ9QT0+e2UoSlNPTi5zdHJpbmdpZnkoby5idWZmZXJUb0FycmF5KEEudGFyZ2V0LnJlc3VsdCkpKX07Y29uc3Qgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO24udHlwZT0iZmlsZSIsbnVsbCE9PUEmJihuLmFjY2VwdD1BKSxuLnN0eWxlLmRpc3BsYXk9Im5vbmUiLGRvY3VtZW50LmJvZHkuYXBwZW5kKG4pLG4ub25jaGFuZ2U9KCk9Pntjb25zdCBBPW4uZmlsZXNbMF07QT8odC5yZWFkQXNBcnJheUJ1ZmZlcihBKSxuLnJlbW92ZSgpKTplKCIiKX0sbi5vbmJsdXI9KCk9PntuLm9uY2hhbmdlKCl9LG4uZm9jdXMoKSxuLmNsaWNrKCl9KX1jYXRjaChBKXtyZXR1cm59fV9fYXNrVXNlckZvckZpbGVkYXRhdXJpKEEpe3RyeXtyZXR1cm4gbmV3IFByb21pc2UoZT0+e2NvbnN0IHQ9bmV3IEZpbGVSZWFkZXI7dC5vbmxvYWQ9QT0+e2UoQS50YXJnZXQucmVzdWx0KX07Y29uc3Qgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO24udHlwZT0iZmlsZSIsbnVsbCE9PUEmJihuLmFjY2VwdD1BKSxuLnN0eWxlLmRpc3BsYXk9Im5vbmUiLGRvY3VtZW50LmJvZHkuYXBwZW5kKG4pLG4ub25jaGFuZ2U9KCk9Pntjb25zdCBBPW4uZmlsZXNbMF07QT8odC5yZWFkQXNEYXRhVVJMKEEpLG4ucmVtb3ZlKCkpOmUoIiIpfSxuLm9uYmx1cj0oKT0+e24ub25jaGFuZ2UoKX0sbi5mb2N1cygpLG4uY2xpY2soKX0pfWNhdGNoKEEpe3JldHVybn19YXNrVXNlckZvckZpbGVPZlR5cGUoQSl7Y29uc3QgZT1bXSx0PUEuRklMRV9UWVBFLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvLiwvZ2ltLCIiKTtyZXR1cm4iYW55Ij09PXQ/dGhpcy5fX2Fza1VzZXJGb3JGaWxlKG51bGwpOih0LnNwbGl0KCIgIikuZm9yRWFjaChBPT57ZS5wdXNoKCIuIi5jb25jYXQoQSkpfSksdGhpcy5fX2Fza1VzZXJGb3JGaWxlKGUuam9pbigiLCIpLCExKSl9YXNrVXNlckZvckZpbGVPZlR5cGVBc0FycmF5QnVmZmVyKEEpe2NvbnN0IGU9W10sdD1BLkZJTEVfVFlQRS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoLy4sL2dpbSwiIik7cmV0dXJuImFueSI9PT10P3RoaXMuX19hc2tVc2VyRm9yRmlsZWFycmF5YnVmZmVyKG51bGwpOih0LnNwbGl0KCIgIikuZm9yRWFjaChBPT57ZS5wdXNoKCIuIi5jb25jYXQoQSkpfSksdGhpcy5fX2Fza1VzZXJGb3JGaWxlYXJyYXlidWZmZXIoZS5qb2luKCIsIikpKX1hc2tVc2VyRm9yRmlsZU9mVHlwZUFzRGF0YVVyaShBKXtjb25zdCBlPVtdLHQ9QS5GSUxFX1RZUEUudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC8uLC9naW0sIiIpO3JldHVybiJhbnkiPT09dD90aGlzLl9fYXNrVXNlckZvckZpbGVkYXRhdXJpKG51bGwpOih0LnNwbGl0KCIgIikuZm9yRWFjaChBPT57ZS5wdXNoKCIuIi5jb25jYXQoQSkpfSksdGhpcy5fX2Fza1VzZXJGb3JGaWxlZGF0YXVyaShlLmpvaW4oIiwiKSkpfWRvd25sb2FkRmlsZShBLGUsdCxuLGkpe2xldCBzPSIiLGE9InRleHQudHh0IjtzPVN0cmluZyhBLkZJTEVfQ09OVEVOVCl8fHMsYT1TdHJpbmcoQS5GSUxFX05BTUUpfHxhO2NvbnN0IEI9cihBLkZJTEVfQ09OVEVOVCk7bGV0IGM7Qi5pc1ZhbGlkJiZuJiYocz1vLmFycmF5VG9CdWZmZXIoQi5hcnJheSkpLGM9aT90aGlzLmRhdGFVUkx0b0Jsb2Iocyk6bmV3IEJsb2IoW3NdKTtjb25zdCBnPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtnLnN0eWxlLmRpc3BsYXk9Im5vbmUiLGRvY3VtZW50LmJvZHkuYXBwZW5kKGcpO2NvbnN0IEU9d2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoYyk7Zy5ocmVmPUUsZy5kb3dubG9hZD1hLGcuY2xpY2soKSx3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTChFKSxnLnJlbW92ZSgpfWRvd25sb2FkRmlsZURhdGFVcmkoQSl7cmV0dXJuIHRoaXMuZG93bmxvYWRGaWxlKEEsbnVsbCxudWxsLCExLCEwKX1kb3dubG9hZEZpbGVCdWZmZXIoQSl7cmV0dXJuIHRoaXMuZG93bmxvYWRGaWxlKEEsbnVsbCxudWxsLCEwLCExKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDQpLGk9dCgxKSxyPXQoMyksbz1uZXcodCgyNSkpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ1dlYnNpdGVSZXF1ZXN0cyIsbmFtZToiV2Vic2l0ZSBSZXF1ZXN0cyIsY29sb3IxOiIjMDA0Mjk5Iixjb2xvcjI6IiMwMDM0NzgiLGJsb2Nrczpbe29wY29kZToiZW5jb2RlVGV4dEZvclVSTCIsdGV4dDpuKHtpZDoiamdXZWJzaXRlUmVxdWVzdHMuYmxvY2tzLmVuY29kZVRleHRGb3JVUkwiLGRlZmF1bHQ6ImVuY29kZSBbVEVYVF0gZm9yIFVSTCIsZGVzY3JpcHRpb246IkVuY29kZXMgdGV4dCB0byBiZSB1c2FibGUgaW4gYSBVUkwuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7VEVYVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6bih7aWQ6ImpnV2Vic2l0ZVJlcXVlc3RzLnRleHRfZW5jb2RlX2Zvcl91cmwiLGRlZmF1bHQ6IlRleHQgaGVyZSIsZGVzY3JpcHRpb246IlRoZSB0ZXh0IHRvIGVuY29kZS4ifSl9fX0se29wY29kZToiZGVjb2RlVXJsRm9yVGV4dCIsdGV4dDpuKHtpZDoiamdXZWJzaXRlUmVxdWVzdHMuYmxvY2tzLmRlY29kZVVybEZvclRleHQiLGRlZmF1bHQ6ImRlY29kZSBbVEVYVF0gZm9yIHRleHQiLGRlc2NyaXB0aW9uOiJEZWNvZGVzIHRleHQgdXNlZCBpbiBxdWVyeSBwYXJhbWV0ZXJzIGFuZCBvdGhlciBhcmVhcy4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntURVhUOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTpuKHtpZDoiamdXZWJzaXRlUmVxdWVzdHMudGV4dF9kZWNvZGVfZm9yX3VybCIsZGVmYXVsdDoiVGV4dCUyMGhlcmUiLGRlc2NyaXB0aW9uOiJUaGUgdGV4dCB0byBkZWNvZGUuIn0pfX19LHtvcGNvZGU6ImdldFdlYnNpdGVDb250ZW50Iix0ZXh0Om4oe2lkOiJqZ1dlYnNpdGVSZXF1ZXN0cy5ibG9ja3MuZ2V0V2Vic2l0ZUNvbnRlbnQiLGRlZmF1bHQ6ImdldCBbV0VCU0lURV0ncyBjb250ZW50IixkZXNjcmlwdGlvbjoiR2V0cyB0aGUgY29udGVudHMgb2YgdGhlIHNwZWNpZmllZCB3ZWJzaXRlLiBJbmNsdWRlcyBIVE1MIGlmIGl0J3MgYSBub3JtYWwgd2Vic2l0ZS4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntXRUJTSVRFOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTpuKHtpZDoiamdXZWJzaXRlUmVxdWVzdHMud2Vic2l0ZV9mZXRjaF9jb250ZW50IixkZWZhdWx0OiJodHRwczovL3d3dy5nb29nbGUuY29tIixkZXNjcmlwdGlvbjoiVGhlIHdlYnNpdGUgdG8gZ2V0IHRoZSBjb250ZW50IG9mLiJ9KX19fSx7b3Bjb2RlOiJnZXRXZWJzaXRlQmluYXJ5RGF0YSIsdGV4dDpuKHtpZDoiamdXZWJzaXRlUmVxdWVzdHMuYmxvY2tzLmdldFdlYnNpdGVCaW5hcnlEYXRhIixkZWZhdWx0OiJnZXQgYmluYXJ5IGRhdGEgZnJvbSBbV0VCU0lURV0iLGRlc2NyaXB0aW9uOiJHZXRzIHRoZSBkYXRhIG9mIHRoZSBzcGVjaWZpZWQgd2Vic2l0ZS4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntXRUJTSVRFOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTpuKHtpZDoiamdXZWJzaXRlUmVxdWVzdHMud2Vic2l0ZV9mZXRjaF9jb250ZW50IixkZWZhdWx0OiJodHRwczovL3d3dy5nb29nbGUuY29tIixkZXNjcmlwdGlvbjoiVGhlIHdlYnNpdGUgdG8gZ2V0IHRoZSBjb250ZW50IG9mLiJ9KX19fSx7b3Bjb2RlOiJwb3N0V2l0aENvbnRlbnRUb1dlYnNpdGUiLHRleHQ6bih7aWQ6ImpnV2Vic2l0ZVJlcXVlc3RzLmJsb2Nrcy5wb3N0V2l0aENvbnRlbnRUb1dlYnNpdGUiLGRlZmF1bHQ6InBvc3QgW0NPTlRFTlRdIGFzIFtLRVldIHRvIFtXRUJTSVRFXSIsZGVzY3JpcHRpb246IlBvc3RzIHRvIGEgd2Vic2l0ZSB1c2luZyBhIEpTT04gYm9keSB3aXRoIHRoZSBrZXkgdGV4dCBzZXQgdG8gdGhlIGNvbnRlbnQuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7Q09OVEVOVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6bih7aWQ6ImpnV2Vic2l0ZVJlcXVlc3RzLndlYnNpdGVfcG9zdF9jb250ZW50IixkZWZhdWx0OiJ2YWx1ZSIsZGVzY3JpcHRpb246IlRoZSBjb250ZW50IG9mIHRoZSBrZXkgdG8gcG9zdC4ifSl9LEtFWTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6bih7aWQ6ImpnV2Vic2l0ZVJlcXVlc3RzLndlYnNpdGVfcG9zdF9rZXkiLGRlZmF1bHQ6ImtleSIsZGVzY3JpcHRpb246IlRoZSBrZXkgaW4gdGhlIHJlcXVlc3QgYm9keSB0byBwb3N0LiJ9KX0sV0VCU0lURTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6bih7aWQ6ImpnV2Vic2l0ZVJlcXVlc3RzLndlYnNpdGVfcG9zdF93ZWJzaXRlIixkZWZhdWx0OiJodHRwczovL2h0dHBiaW4ub3JnL3Bvc3QiLGRlc2NyaXB0aW9uOiJUaGUgd2Vic2l0ZSB0byBwb3N0IHRoZSBrZXkgYW5kIGNvbnRlbnQgdG8uIn0pfX19XX19ZW5jb2RlVGV4dEZvclVSTChBKXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhBLlRFWFQpKX1kZWNvZGVVcmxGb3JUZXh0KEEpe3JldHVybiBkZWNvZGVVUkkoU3RyaW5nKEEuVEVYVCkpfWdldFdlYnNpdGVDb250ZW50KEEpe3JldHVybiBuZXcgUHJvbWlzZShlPT57aWYod2luZG93JiYhd2luZG93LmZldGNoKXJldHVybiBlKCIiKTtjb25zdCB0PUEuV0VCU0lURS5yZXBsYWNlKCJyYXdSZXF1ZXN0KCkiLCIiKTtmZXRjaCh0LHtjYWNoZToibm8tY2FjaGUifSkudGhlbihBPT57QS50ZXh0KCkudGhlbihBPT57ZShTdHJpbmcoQSkpfSkuY2F0Y2goKCk9PntlKCIiKX0pfSkuY2F0Y2goKCk9PntlKCIiKX0pfSl9Z2V0V2Vic2l0ZUJpbmFyeURhdGEoQSl7cmV0dXJuIG5ldyBQcm9taXNlKGU9PntpZih3aW5kb3cmJiF3aW5kb3cuZmV0Y2gpcmV0dXJuIGUoIltdIik7Y29uc3QgdD1BLldFQlNJVEUucmVwbGFjZSgicmF3UmVxdWVzdCgpIiwiIik7ZmV0Y2godCx7Y2FjaGU6Im5vLWNhY2hlIn0pLnRoZW4oQT0+e0EuYXJyYXlCdWZmZXIoKS50aGVuKEE9PntlKFN0cmluZyhKU09OLnN0cmluZ2lmeShvLmJ1ZmZlclRvQXJyYXkoQSkpKSl9KS5jYXRjaCgoKT0+e2UoIltdIil9KX0pLmNhdGNoKCgpPT57ZSgiW10iKX0pfSl9cG9zdFdpdGhDb250ZW50VG9XZWJzaXRlKEEpe3JldHVybiBuZXcgUHJvbWlzZShlPT57aWYod2luZG93JiYhd2luZG93LmZldGNoKXJldHVybiBlKCIiKTtjb25zdCB0PXt9LG49U3RyaW5nKEEuQ09OVEVOVCk7bGV0IGk9ITA7dHJ5e0pTT04ucGFyc2Uobil9Y2F0Y2goQSl7aT0hMX10W1N0cmluZyhBLktFWSldPSJ0cnVlIj09PW58fCJmYWxzZSIhPT1uJiYoTnVtYmVyKG4pP051bWJlcihuKToibnVsbCI9PT1uP251bGw6aT9KU09OLnBhcnNlKG4pOm4pLGZldGNoKEEuV0VCU0lURSx7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNhY2hlOiJuby1jYWNoZSIsYm9keTpKU09OLnN0cmluZ2lmeSh0KX0pLnRoZW4oQT0+e0EudGV4dCgpLnRoZW4oQT0+e2UoU3RyaW5nKEEpKX0pLmNhdGNoKCgpPT57ZSgiIil9KX0pLmNhdGNoKCgpPT57ZSgiIil9KX0pfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNCksaT10KDEpLHI9dCgzKSxvPXQoMikse3ZhbGlkYXRlSlNPTjpzLHZhbGlkYXRlQXJyYXk6YSxzdHJpbmdUb0VxaXZhbGludDpCLHZhbHVlVG9TdHJpbmc6Yyx2YWxpZGF0ZVJlZ2V4Omd9PXQoMTQpLEU9e2lzTm9vcDohMH07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnSlNPTiIsbmFtZToiSlNPTiIsY29sb3IxOiIjMEZCRDhDIixjb2xvcjI6IiMwRUFGODIiLGJsb2Nrczpbe29wY29kZToianNvbl92YWxpZGF0ZSIsYmxvY2tUeXBlOmkuQk9PTEVBTixhcmd1bWVudHM6e2pzb246e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ7fSJ9fSx0ZXh0OiJpcyBqc29uIFtqc29uXSB2YWxpZD8iLHN3aXRjaGVzOltFLHtvcGNvZGU6Impzb25fYXJyYXlfdmFsaWRhdGUiLHJlbWFwQXJndW1lbnRzOntqc29uOiJhcnJheSJ9fV0sc3dpdGNoVGV4dDoiaXMganNvbiB2YWxpZD8ifSwiLS0tIix7b3Bjb2RlOiJnZXRWYWx1ZUZyb21KU09OIix0ZXh0Om4oe2lkOiJqZ0pTT04uYmxvY2tzLmdldFZhbHVlRnJvbUpTT04iLGRlZmF1bHQ6ImdldCBbVkFMVUVdIGZyb20gW0pTT05dIixkZXNjcmlwdGlvbjoiR2V0cyBhIHZhbHVlIGZyb20gYSBKU09OIG9iamVjdC4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntWQUxVRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6bih7aWQ6ImpnSlNPTi5nZXRWYWx1ZUZyb21KU09OX3ZhbHVlIixkZWZhdWx0OiJrZXkiLGRlc2NyaXB0aW9uOiJUaGUgbmFtZSBvZiB0aGUgaXRlbSB5b3Ugd2FudCB0byBnZXQgZnJvbSB0aGUgSlNPTi4ifSl9LEpTT046e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOid7ImtleSI6ICJ2YWx1ZSJ9J319LHN3aXRjaGVzOltFLCJnZXRUcmVlVmFsdWVGcm9tSlNPTiIse29wY29kZToic2V0VmFsdWVUb0tleUluSlNPTiIscmVtYXBBcmd1bWVudHM6e1ZBTFVFOiJLRVkifX0se29wY29kZToianNvbl9kZWxldGUiLHJlbWFwQXJndW1lbnRzOntWQUxVRToia2V5IixKU09OOiJqc29uIn19XSxzd2l0Y2hUZXh0OiJnZXQga2V5IGZyb20ganNvbiJ9LHtvcGNvZGU6ImdldFRyZWVWYWx1ZUZyb21KU09OIix0ZXh0OiJnZXQgcGF0aCBbVkFMVUVdIGZyb20gW0pTT05dIixkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e1ZBTFVFOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZmlyc3Qvc2Vjb25kIn0sSlNPTjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J3siZmlyc3QiOiB7InNlY29uZCI6IDIsICJ0aGlyZCI6IDN9fSd9fSxzd2l0Y2hlczpbImdldFZhbHVlRnJvbUpTT04iLEUse29wY29kZToic2V0VmFsdWVUb0tleUluSlNPTiIscmVtYXBBcmd1bWVudHM6e1ZBTFVFOiJLRVkifX0se29wY29kZToianNvbl9kZWxldGUiLHJlbWFwQXJndW1lbnRzOntWQUxVRToia2V5IixKU09OOiJqc29uIn19XSxzd2l0Y2hUZXh0OiJnZXQgcGF0aCBmcm9tIGpzb24ifSx7b3Bjb2RlOiJzZXRWYWx1ZVRvS2V5SW5KU09OIix0ZXh0Om4oe2lkOiJqZ0pTT04uYmxvY2tzLnNldFZhbHVlVG9LZXlJbkpTT04iLGRlZmF1bHQ6InNldCBbS0VZXSB0byBbVkFMVUVdIGluIFtKU09OXSIsZGVzY3JpcHRpb246IlJldHVybnMgdGhlIEpTT04gd2l0aCB0aGUga2V5IHNldCB0byB0aGUgdmFsdWUuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7VkFMVUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOm4oe2lkOiJqZ0pTT04uc2V0VmFsdWVUb0tleUluSlNPTl92YWx1ZSIsZGVmYXVsdDoidmFsdWUiLGRlc2NyaXB0aW9uOiJUaGUgdmFsdWUgb2YgdGhlIGtleSB5b3UgYXJlIHNldHRpbmcuIn0pfSxLRVk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOm4oe2lkOiJqZ0pTT04uc2V0VmFsdWVUb0tleUluSlNPTl9rZXkiLGRlZmF1bHQ6ImtleSIsZGVzY3JpcHRpb246IlRoZSBrZXkgeW91IGFyZSBzZXR0aW5nIGluIHRoZSBKU09OLiJ9KX0sSlNPTjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Int9In19LHN3aXRjaGVzOlt7b3Bjb2RlOiJnZXRWYWx1ZUZyb21KU09OIixyZW1hcEFyZ3VtZW50czp7S0VZOiJWQUxVRSJ9fSx7b3Bjb2RlOiJnZXRUcmVlVmFsdWVGcm9tSlNPTiIscmVtYXBBcmd1bWVudHM6e0tFWToiVkFMVUUifX0sRSx7b3Bjb2RlOiJqc29uX2RlbGV0ZSIscmVtYXBBcmd1bWVudHM6e0tFWToia2V5IixKU09OOiJqc29uIn19XSxzd2l0Y2hUZXh0OiJzZXQga2V5IHRvIHZhbHVlIGluIGpzb24ifSx7b3Bjb2RlOiJqc29uX2RlbGV0ZSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntqc29uOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToie30ifSxrZXk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOm4oe2lkOiJqZ0pTT04uc2V0VmFsdWVUb0tleUluSlNPTl9rZXkiLGRlZmF1bHQ6ImtleSIsZGVzY3JpcHRpb246IlRoZSBrZXkgeW91IGFyZSBzZXR0aW5nIGluIHRoZSBKU09OLiJ9KX19LHRleHQ6ImluIGpzb24gW2pzb25dIGRlbGV0ZSBrZXkgW2tleV0iLHN3aXRjaGVzOlt7b3Bjb2RlOiJnZXRWYWx1ZUZyb21KU09OIixyZW1hcEFyZ3VtZW50czp7a2V5OiJWQUxVRSIsanNvbjoiSlNPTiJ9fSx7b3Bjb2RlOiJnZXRUcmVlVmFsdWVGcm9tSlNPTiIscmVtYXBBcmd1bWVudHM6e2tleToiVkFMVUUiLGpzb246IkpTT04ifX0se29wY29kZToic2V0VmFsdWVUb0tleUluSlNPTiIscmVtYXBBcmd1bWVudHM6e2tleToiS0VZIixqc29uOiJKU09OIn19LEVdLHN3aXRjaFRleHQ6ImluIGpzb24gZGVsZXRlIGtleSJ9LHtvcGNvZGU6Impzb25fdmFsdWVzIixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2pzb246e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ7fSJ9fSx0ZXh0OiJnZXQgYWxsIHZhbHVlcyBmcm9tIGpzb24gW2pzb25dIixzd2l0Y2hlczpbRSwianNvbl9rZXlzIl0sc3dpdGNoVGV4dDoiZ2V0IGFsbCB2YWx1ZXMgZnJvbSBqc29uIn0se29wY29kZToianNvbl9rZXlzIixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2pzb246e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ7fSJ9fSx0ZXh0OiJnZXQgYWxsIGtleXMgZnJvbSBqc29uIFtqc29uXSIsc3dpdGNoZXM6WyJqc29uX3ZhbHVlcyIsRV0sc3dpdGNoVGV4dDoiZ2V0IGFsbCBrZXlzIGZyb20ganNvbiJ9LHtvcGNvZGU6Impzb25faGFzIixibG9ja1R5cGU6aS5CT09MRUFOLGFyZ3VtZW50czp7anNvbjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Int9In0sa2V5Ont0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTpuKHtpZDoiamdKU09OLnNldFZhbHVlVG9LZXlJbkpTT05fa2V5IixkZWZhdWx0OiJrZXkiLGRlc2NyaXB0aW9uOiJUaGUga2V5IHlvdSBhcmUgc2V0dGluZyBpbiB0aGUgSlNPTi4ifSl9fSx0ZXh0OiJqc29uIFtqc29uXSBoYXMga2V5IFtrZXldPyJ9LHtvcGNvZGU6Impzb25fY29tYmluZSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntvbmU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ7fSJ9LHR3bzp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Int9In19LHRleHQ6ImNvbWJpbmUganNvbiBbb25lXSBhbmQganNvbiBbdHdvXSJ9LHtibG9ja1R5cGU6aS5MQUJFTCx0ZXh0OiJBcnJheXMifSx7b3Bjb2RlOiJqc29uX2FycmF5X3ZhbGlkYXRlIixibG9ja1R5cGU6aS5CT09MRUFOLGFyZ3VtZW50czp7YXJyYXk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJbXSJ9fSx0ZXh0OiJpcyBhcnJheSBbYXJyYXldIHZhbGlkPyIsc3dpdGNoZXM6W3tvcGNvZGU6Impzb25fdmFsaWRhdGUiLHJlbWFwQXJndW1lbnRzOnthcnJheToianNvbiJ9fSxFXSxzd2l0Y2hUZXh0OiJpcyBhcnJheSB2YWxpZD8ifSx7b3Bjb2RlOiJqc29uX2FycmF5X3NwbGl0IixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e3RleHQ6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJBLCBCLCBDIn0sZGVsaW1ldGVyOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiLCAifX0sdGV4dDoiY3JlYXRlIGFuIGFycmF5IGZyb20gdGV4dCBbdGV4dF0gd2l0aCBkZWxpbWV0ZXIgW2RlbGltZXRlcl0iLHN3aXRjaGVzOltFLHtvcGNvZGU6Impzb25fYXJyYXlfam9pbiIscmVtYXBBcmd1bWVudHM6e3RleHQ6ImFycmF5In19XSxzd2l0Y2hUZXh0OiJjcmVhdGUgYXJyYXkgZnJvbSB0ZXh0In0se29wY29kZToianNvbl9hcnJheV9qb2luIixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2FycmF5Ont0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTonWyJBIiwgIkIiLCAiQyJdJ30sZGVsaW1ldGVyOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiLCAifX0sdGV4dDoiY3JlYXRlIHRleHQgZnJvbSBhcnJheSBbYXJyYXldIHdpdGggZGVsaW1ldGVyIFtkZWxpbWV0ZXJdIixzd2l0Y2hlczpbe29wY29kZToianNvbl9hcnJheV9zcGxpdCIscmVtYXBBcmd1bWVudHM6e2FycmF5OiJ0ZXh0In19LEVdLHN3aXRjaFRleHQ6ImNyZWF0ZSB0ZXh0IGZyb20gYXJyYXkifSwiLS0tIix7b3Bjb2RlOiJqc29uX2FycmF5X3B1c2giLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7YXJyYXk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOidbIkEiLCAiQiIsICJDIl0nfSxpdGVtOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTpuKHtpZDoiamdKU09OLnNldFZhbHVlVG9LZXlJbkpTT05fdmFsdWUiLGRlZmF1bHQ6InZhbHVlIixkZXNjcmlwdGlvbjoiVGhlIHZhbHVlIG9mIHRoZSBrZXkgeW91IGFyZSBzZXR0aW5nLiJ9KX19LHRleHQ6ImluIGFycmF5IFthcnJheV0gYWRkIFtpdGVtXSIsc3dpdGNoZXM6W0UsImpzb25fYXJyYXlfZGVsZXRlIiwianNvbl9hcnJheV9pbnNlcnQiLCJqc29uX2FycmF5X3NldCJdLHN3aXRjaFRleHQ6ImluIGFycmF5IGFkZCBpdGVtIn0sIi0tLSIse29wY29kZToianNvbl9hcnJheV9jb25jYXRMYXllcjEiLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7YXJyYXkxOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTonWyJBIiwgIkIiLCAiQyJdJ30sYXJyYXkyOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTonWyJEIiwgIkUiLCAiRiJdJ319LHRleHQ6ImFkZCBpdGVtcyBmcm9tIGFycmF5IFthcnJheTJdIHRvIGFycmF5IFthcnJheTFdIixzd2l0Y2hlczpbRSwianNvbl9hcnJheV9jb25jYXRMYXllcjIiXSxzd2l0Y2hUZXh0OiJhZGQgaXRlbXMgZnJvbSBhcnJheSB0byBhcnJheSJ9LHtvcGNvZGU6Impzb25fYXJyYXlfY29uY2F0TGF5ZXIyIixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2FycmF5MTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siQSIsICJCIiwgIkMiXSd9LGFycmF5Mjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siRCIsICJFIiwgIkYiXSd9LGFycmF5Mzp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siRyIsICJIIiwgIkkiXSd9fSx0ZXh0OiJhZGQgaXRlbXMgZnJvbSBhcnJheSBbYXJyYXkyXSBhbmQgYXJyYXkgW2FycmF5M10gdG8gYXJyYXkgW2FycmF5MV0iLHN3aXRjaGVzOlsianNvbl9hcnJheV9jb25jYXRMYXllcjEiLEVdLHN3aXRjaFRleHQ6ImFkZCBpdGVtcyBmcm9tIGFycmF5IGFuZCBhcnJheSB0byBhcnJheSJ9LCItLS0iLHtvcGNvZGU6Impzb25fYXJyYXlfZGVsZXRlIixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2FycmF5Ont0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTonWyJBIiwgIkIiLCAiQyJdJ30saW5kZXg6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjJ9fSx0ZXh0OiJpbiBhcnJheSBbYXJyYXldIGRlbGV0ZSBbaW5kZXhdIixzd2l0Y2hlczpbImpzb25fYXJyYXlfcHVzaCIsRSwianNvbl9hcnJheV9pbnNlcnQiLCJqc29uX2FycmF5X3NldCJdLHN3aXRjaFRleHQ6ImluIGFycmF5IGRlbGV0ZSBpbmRleCJ9LHtvcGNvZGU6Impzb25fYXJyYXlfcmV2ZXJzZSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOnthcnJheTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siQSIsICJCIiwgIkMiXSd9fSx0ZXh0OiJyZXZlcnNlIGFycmF5IFthcnJheV0ifSx7b3Bjb2RlOiJqc29uX2FycmF5X2luc2VydCIsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOnthcnJheTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siQSIsICJCIiwgIkMiXSd9LGluZGV4Ont0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToyfSx2YWx1ZTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6bih7aWQ6ImpnSlNPTi5zZXRWYWx1ZVRvS2V5SW5KU09OX3ZhbHVlIixkZWZhdWx0OiJ2YWx1ZSIsZGVzY3JpcHRpb246IlRoZSB2YWx1ZSBvZiB0aGUga2V5IHlvdSBhcmUgc2V0dGluZy4ifSl9fSx0ZXh0OiJpbiBhcnJheSBbYXJyYXldIGluc2VydCBbdmFsdWVdIGF0IFtpbmRleF0iLHN3aXRjaGVzOlsianNvbl9hcnJheV9wdXNoIiwianNvbl9hcnJheV9kZWxldGUiLEUsImpzb25fYXJyYXlfc2V0Il0sc3dpdGNoVGV4dDoiaW4gYXJyYXkgaW5zZXJ0IHZhbHVlIGF0IGluZGV4In0se29wY29kZToianNvbl9hcnJheV9zZXQiLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7YXJyYXk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOidbIkEiLCAiQiIsICJDIl0nfSxpbmRleDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6Mn0sdmFsdWU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOm4oe2lkOiJqZ0pTT04uc2V0VmFsdWVUb0tleUluSlNPTl92YWx1ZSIsZGVmYXVsdDoidmFsdWUiLGRlc2NyaXB0aW9uOiJUaGUgdmFsdWUgb2YgdGhlIGtleSB5b3UgYXJlIHNldHRpbmcuIn0pfX0sdGV4dDoiaW4gYXJyYXkgW2FycmF5XSBzZXQgW2luZGV4XSB0byBbdmFsdWVdIixzd2l0Y2hlczpbImpzb25fYXJyYXlfcHVzaCIsImpzb25fYXJyYXlfZGVsZXRlIiwianNvbl9hcnJheV9pbnNlcnQiLEVdLHN3aXRjaFRleHQ6ImluIGFycmF5IHNldCBpbmRleCB0byB2YWx1ZSJ9LCItLS0iLHtvcGNvZGU6Impzb25fYXJyYXlfZ2V0IixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2FycmF5Ont0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTonWyJBIiwgIkIiLCAiQyJdJ30saW5kZXg6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjJ9fSx0ZXh0OiJpbiBhcnJheSBbYXJyYXldIGdldCBbaW5kZXhdIixzd2l0Y2hlczpbRSwianNvbl9hcnJheV9pbmRleG9mTm9zdGFydCIse29wY29kZToianNvbl9hcnJheV9pbmRleG9mIixyZW1hcEFyZ3VtZW50czp7aW5kZXg6Im51bWJlciJ9fSx7b3Bjb2RlOiJqc29uX2FycmF5X2dldHJhbmdlIixyZW1hcEFyZ3VtZW50czp7aW5kZXg6ImluZGV4MSJ9fV0sc3dpdGNoVGV4dDoiaW4gYXJyYXkgZ2V0IGluZGV4In0se29wY29kZToianNvbl9hcnJheV9pbmRleG9mTm9zdGFydCIsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOnthcnJheTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siQSIsICJCIiwgIkMiXSd9LHZhbHVlOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToidmFsdWUifX0sdGV4dDoiaW4gYXJyYXkgW2FycmF5XSBnZXQgaW5kZXggb2YgW3ZhbHVlXSIsc3dpdGNoZXM6WyJqc29uX2FycmF5X2dldCIsRSwianNvbl9hcnJheV9pbmRleG9mIiwianNvbl9hcnJheV9nZXRyYW5nZSJdLHN3aXRjaFRleHQ6ImluIGFycnJheSBnZXQgaW5kZXggb2YgdmFsdWUifSx7b3Bjb2RlOiJqc29uX2FycmF5X2luZGV4b2YiLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7YXJyYXk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOidbIkEiLCAiQiIsICJDIl0nfSxudW1iZXI6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjJ9LHZhbHVlOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTpuKHtpZDoiamdKU09OLnNldFZhbHVlVG9LZXlJbkpTT05fdmFsdWUiLGRlZmF1bHQ6InZhbHVlIixkZXNjcmlwdGlvbjoiVGhlIHZhbHVlIG9mIHRoZSBrZXkgeW91IGFyZSBzZXR0aW5nLiJ9KX19LHRleHQ6ImluIGFycmF5IFthcnJheV0gZnJvbSBbbnVtYmVyXSBnZXQgaW5kZXggb2YgW3ZhbHVlXSIsc3dpdGNoZXM6W3tvcGNvZGU6Impzb25fYXJyYXlfZ2V0IixyZW1hcEFyZ3VtZW50czp7bnVtYmVyOiJpbmRleCJ9fSwianNvbl9hcnJheV9pbmRleG9mTm9zdGFydCIsRSx7b3Bjb2RlOiJqc29uX2FycmF5X2dldHJhbmdlIixyZW1hcEFyZ3VtZW50czp7bnVtYmVyOiJpbmRleDEifX1dLHN3aXRjaFRleHQ6ImluIGFycmF5IGZyb20gaW5kZXggZ2V0IGluZGV4IG9mIHZhbHVlIn0se29wY29kZToianNvbl9hcnJheV9sZW5ndGgiLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7YXJyYXk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOidbIkEiLCAiQiIsICJDIl0nfX0sdGV4dDoibGVuZ3RoIG9mIGFycmF5IFthcnJheV0ifSx7b3Bjb2RlOiJqc29uX2FycmF5X2NvbnRhaW5zIixibG9ja1R5cGU6aS5CT09MRUFOLGFyZ3VtZW50czp7YXJyYXk6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOidbIkEiLCAiQiIsICJDIl0nfSx2YWx1ZTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6bih7aWQ6ImpnSlNPTi5zZXRWYWx1ZVRvS2V5SW5KU09OX3ZhbHVlIixkZWZhdWx0OiJ2YWx1ZSIsZGVzY3JpcHRpb246IlRoZSB2YWx1ZSBvZiB0aGUga2V5IHlvdSBhcmUgc2V0dGluZy4ifSl9fSx0ZXh0OiJhcnJheSBbYXJyYXldIGNvbnRhaW5zIFt2YWx1ZV0/In0sIi0tLSIse29wY29kZToianNvbl9hcnJheV9mbGF0IixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2FycmF5Ont0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTonW1siQSIsICJCIl0sIFsiQyIsICJEIl1dJ30sbGF5ZXI6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9fSx0ZXh0OiJmbGF0dGVuIG5lc3RlZCBhcnJheSBbYXJyYXldIGJ5IFtsYXllcl0gbGF5ZXJzIn0sIi0tLSIse29wY29kZToianNvbl9hcnJheV9nZXRyYW5nZSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOnthcnJheTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siQSIsICJCIiwgIkMiXSd9LGluZGV4MTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6Mn0saW5kZXgyOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToyfX0sdGV4dDoiaW4gYXJyYXkgW2FycmF5XSBnZXQgYWxsIGl0ZW1zIGZyb20gW2luZGV4MV0gdG8gW2luZGV4Ml0iLHN3aXRjaGVzOlt7b3Bjb2RlOiJqc29uX2FycmF5X2dldCIscmVtYXBBcmd1bWVudHM6e2luZGV4MToiaW5kZXgifX0sImpzb25fYXJyYXlfaW5kZXhvZk5vc3RhcnQiLHtvcGNvZGU6Impzb25fYXJyYXlfZ2V0IixyZW1hcEFyZ3VtZW50czp7aW5kZXgxOiJudW1iZXIifX0sRV0sc3dpdGNoVGV4dDoiaW4gYXJyYXkgZ2V0IGl0ZW1zIGZyb20gaW5kZXggdG8gaW5kZXgifSwiLS0tIix7b3Bjb2RlOiJqc29uX2FycmF5X2lzZW1wdHkiLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOnthcnJheTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J1siQSIsICJCIiwgIkMiXSd9fSx0ZXh0OiJpcyBhcnJheSBbYXJyYXldIGVtcHR5PyJ9LCItLS0iLHtvcGNvZGU6Impzb25fYXJyYXlfbGlzdHRvYXJyYXkiLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7bGlzdDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6InNlbGVjdCBhIGxpc3QiLG1lbnU6Imxpc3RzIn19LGhpZGVGcm9tUGFsZXR0ZTohMCx0ZXh0OiJnZXQgY29udGVudHMgb2YgbGlzdCBbbGlzdF0gYXMgYXJyYXkifSx7b3Bjb2RlOiJqc29uX2FycmF5X3RvbGlzdCIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e2xpc3Q6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJzZWxlY3QgYSBsaXN0IixtZW51OiJsaXN0cyJ9LGFycmF5Ont0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTonWyJBIiwgIkIiLCAiQyJdJ319LGhpZGVGcm9tUGFsZXR0ZTohMCx0ZXh0OiJzZXQgY29udGVudHMgb2YgbGlzdCBbbGlzdF0gdG8gY29udGVudHMgb2YgYXJyYXkgW2FycmF5XSJ9XSxtZW51czp7bGlzdHM6ImdldEFsbExpc3RzIn19fWdldEFsbExpc3RzKCl7Y29uc3QgQT1bXS5jb25jYXQoT2JqZWN0LnZhbHVlcyh2bS5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkudmFyaWFibGVzKSxPYmplY3QudmFsdWVzKHZtLmVkaXRpbmdUYXJnZXQudmFyaWFibGVzKSkuZmlsdGVyKEE9PiJsaXN0Ij09PUEudHlwZSk7cmV0dXJuIDA9PT1BLmxlbmd0aD9be3RleHQ6InNlbGVjdCBhIGxpc3QiLHZhbHVlOiJzZWxlY3QgYSBsaXN0In1dOkEubWFwKEE9Pih7dGV4dDpBLm5hbWUsdmFsdWU6SlNPTi5zdHJpbmdpZnkoe2lkOkEuaWQsbmFtZTpBLm5hbWV9KX0pKX1nZXRWYWx1ZUZyb21KU09OKEEpe2NvbnN0IGU9QS5WQUxVRSx0PXMoQS5KU09OKS5vYmplY3Q7cmV0dXJuIGModFtlXSl9Z2V0VHJlZVZhbHVlRnJvbUpTT04oQSl7Y29uc3QgZT1vLnRvU3RyaW5nKEEuVkFMVUUpO2xldCB0O3Q9by50b1N0cmluZyhBLkpTT04pLnN0YXJ0c1dpdGgoIlsiKT9hKEEuSlNPTikuYXJyYXk6cyhBLkpTT04pLm9iamVjdDtjb25zdCBuPXQ7aWYoIWUuaW5jbHVkZXMoIi8iKSlyZXR1cm4gQXJyYXkuaXNBcnJheShuKT90aGlzLmpzb25fYXJyYXlfZ2V0KHthcnJheTpvLnRvU3RyaW5nKEEuSlNPTiksaW5kZXg6by50b051bWJlcihBLlZBTFVFKX0pOnRoaXMuZ2V0VmFsdWVGcm9tSlNPTihBKTtsZXQgaT0iIixyPW47Y29uc3QgQj1lLnNwbGl0KCIvIik7Zm9yKGNvbnN0IEEgb2YgQilpPSIiLEFycmF5LmlzQXJyYXkocik/KHI9cltvLnRvTnVtYmVyKEEpXSxpPXIpOiJvYmplY3QiPT10eXBlb2Ygcj8ocj1yW0FdLGk9cik6aT1yO3JldHVybiB2b2lkIDA9PT1pPyIiOmMoaSl9c2V0VmFsdWVUb0tleUluSlNPTihBKXtjb25zdCBlPXMoQS5KU09OKS5vYmplY3QsdD1BLktFWSxuPUEuVkFMVUU7cmV0dXJuIGVbdF09QihuKSxKU09OLnN0cmluZ2lmeShlKX1qc29uX2hhcyhBKXtjb25zdCBlPXMoQS5qc29uKS5vYmplY3QsdD1BLmtleTtyZXR1cm4gZS5oYXNPd25Qcm9wZXJ0eSh0KX1qc29uX2RlbGV0ZShBKXtjb25zdCBlPXMoQS5qc29uKS5vYmplY3QsdD1BLmtleTtyZXR1cm4gZS5oYXNPd25Qcm9wZXJ0eSh0KT8oZGVsZXRlIGVbdF0sSlNPTi5zdHJpbmdpZnkoZSkpOkpTT04uc3RyaW5naWZ5KGUpfWpzb25fdmFsdWVzKEEpe2NvbnN0IGU9cyhBLmpzb24pLm9iamVjdDtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoT2JqZWN0LnZhbHVlcyhlKSl9anNvbl9rZXlzKEEpe2NvbnN0IGU9cyhBLmpzb24pLm9iamVjdDtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoT2JqZWN0LmtleXMoZSkpfWpzb25fYXJyYXlfbGVuZ3RoKEEpe3JldHVybiBhKEEuYXJyYXkpLmFycmF5Lmxlbmd0aH1qc29uX2FycmF5X2lzZW1wdHkoQSl7cmV0dXJuIWEoQS5hcnJheSkuYXJyYXkubGVuZ3RofWpzb25fYXJyYXlfY29udGFpbnMoQSl7Y29uc3QgZT1hKEEuYXJyYXkpLmFycmF5LHQ9QS52YWx1ZTtyZXR1cm4gZS5pbmNsdWRlcyhCKHQpKX1qc29uX2FycmF5X3JldmVyc2UoQSl7Y29uc3QgZT1hKEEuYXJyYXkpLmFycmF5O3JldHVybiBKU09OLnN0cmluZ2lmeShlLnJldmVyc2UoKSl9anNvbl9hcnJheV9pbmRleG9mKEEpe2NvbnN0IGU9YShBLmFycmF5KS5hcnJheSx0PUEubnVtYmVyLG49QS52YWx1ZTtyZXR1cm4gZS5pbmRleE9mKEIobiksdCl9anNvbl9hcnJheV9pbmRleG9mTm9zdGFydChBKXtjb25zdCBlPWEoQS5hcnJheSkuYXJyYXksdD1BLnZhbHVlO3JldHVybiBlLmluZGV4T2YoQih0KSl9anNvbl9hcnJheV9zZXQoQSl7Y29uc3QgZT1hKEEuYXJyYXkpLmFycmF5LHQ9QS5pbmRleCxuPUEudmFsdWU7cmV0dXJuIGVbdF09QihuKSxKU09OLnN0cmluZ2lmeShlKX1qc29uX2FycmF5X2luc2VydChBKXtjb25zdCBlPWEoQS5hcnJheSkuYXJyYXksdD1BLmluZGV4LG49QS52YWx1ZTtyZXR1cm4gZS5zcGxpY2UodCwwLEIobikpLEpTT04uc3RyaW5naWZ5KGUpfWpzb25fYXJyYXlfZ2V0KEEpe2NvbnN0IGU9YShBLmFycmF5KS5hcnJheSx0PUEuaW5kZXg7cmV0dXJuIGMoZVt0XSl9anNvbl9hcnJheV9nZXRyYW5nZShBKXtjb25zdCBlPWEoQS5hcnJheSkuYXJyYXksdD1BLmluZGV4MSxuPUEuaW5kZXgyO3JldHVybiBKU09OLnN0cmluZ2lmeShlLnNsaWNlKHQsbikpfWpzb25fYXJyYXlfcHVzaChBKXtjb25zdCBlPWEoQS5hcnJheSkuYXJyYXksdD1BLml0ZW07cmV0dXJuIGUucHVzaChCKHQpKSxKU09OLnN0cmluZ2lmeShlKX1qc29uX2FycmF5X2NvbmNhdExheWVyMShBKXtjb25zdCBlPWEoQS5hcnJheTEpLmFycmF5LHQ9YShBLmFycmF5MikuYXJyYXksbj1lLmNvbmNhdCh0KTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkobil9anNvbl9hcnJheV9jb25jYXRMYXllcjIoQSl7Y29uc3QgZT1hKEEuYXJyYXkxKS5hcnJheSx0PWEoQS5hcnJheTIpLmFycmF5LG49YShBLmFycmF5MykuYXJyYXksaT1lLmNvbmNhdCh0LG4pO3JldHVybiBKU09OLnN0cmluZ2lmeShpKX1qc29uX2FycmF5X2ZsYXQoQSl7Y29uc3QgZT1hKEEuYXJyYXkpLmFycmF5LHQ9by50b051bWJlcihBLmxheWVyKSxuPWUuZmxhdCh0KTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkobil9anNvbl9hcnJheV90b2xpc3QoQSxlKXtsZXQgdDt0cnl7dD1KU09OLnBhcnNlKEEubGlzdCl9Y2F0Y2goQSl7cmV0dXJufWNvbnN0IG49YShBLmFycmF5KS5hcnJheTtlLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QodC5pZCx0Lm5hbWUpLnZhbHVlPW4ubWFwKEE9PmMoQSkpfWpzb25fYXJyYXlfbGlzdHRvYXJyYXkoQSxlKXtsZXQgdDt0cnl7dD1KU09OLnBhcnNlKEEubGlzdCl9Y2F0Y2goQSl7cmV0dXJufWNvbnN0IG49ZS50YXJnZXQubG9va3VwT3JDcmVhdGVMaXN0KHQuaWQsdC5uYW1lKS52YWx1ZTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkobi5tYXAoQT0+QihBKSkpfWpzb25fYXJyYXlfZGVsZXRlKEEpe2NvbnN0IGU9YShBLmFycmF5KS5hcnJheSx0PUEuaW5kZXg7cmV0dXJuIGUuc3BsaWNlKHQsMSksSlNPTi5zdHJpbmdpZnkoZSl9anNvbl9hcnJheV9zcGxpdChBKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoQS50ZXh0LnNwbGl0KEEuZGVsaW1ldGVyKSl9anNvbl9hcnJheV9qb2luKEEpe3JldHVybiBhKEEuYXJyYXkpLmFycmF5LmpvaW4oQS5kZWxpbWV0ZXIpfWpzb25fdmFsaWRhdGUoQSl7cmV0dXJuIHMoQS5qc29uKS5pc1ZhbGlkfWpzb25fYXJyYXlfdmFsaWRhdGUoQSl7cmV0dXJuIGEoQS5hcnJheSkuaXNWYWxpZH1qc29uX2NvbWJpbmUoQSl7Y29uc3QgZT1zKEEub25lKS5vYmplY3QsdD1zKEEudHdvKS5vYmplY3Q7cmV0dXJuIEpTT04uc3RyaW5naWZ5KE9iamVjdC5hc3NpZ24oZSx0KSl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0KSxpPXQoMSkscj10KDMpLG89bmV3KHQoMjUpKSxzPXQoMiksYT10KDgpLEI9e2lzTm9vcDohMH07bGV0IGM9MDtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5wYXVzZWRTY3JpcHRzPU9iamVjdC5jcmVhdGUobnVsbCk7Y29uc3QgZT1bXTtjPXRoaXMucnVudGltZS5mcmFtZUxvb3AuZnJhbWVyYXRlLHRoaXMucnVudGltZS5vbigiUlVOVElNRV9TVEVQX1NUQVJUIiwoKT0+e2NvbnN0IEE9cGVyZm9ybWFuY2Uubm93KCk7Zm9yKDtlLmxlbmd0aD4wJiZlWzBdPD1BLTFlMzspZS5zaGlmdCgpO2UucHVzaChBKSxjPWUubGVuZ3RofSksdGhpcy5ydW50aW1lLm9uKCJQUk9KRUNUX1NUT1BfQUxMIiwoKT0+e3RoaXMucGF1c2VkU2NyaXB0cz1PYmplY3QuY3JlYXRlKG51bGwpfSl9X3R5cGVJc0JpdG1hcChBKXtyZXR1cm4iaW1hZ2UvcG5nIj09PUF8fCJpbWFnZS9ibXAiPT09QXx8ImltYWdlL2pwZyI9PT1BfHwiaW1hZ2UvanBlZyI9PT1BfHwiaW1hZ2UvamZpZiI9PT1BfHwiaW1hZ2Uvd2VicCI9PT1BfHwiaW1hZ2UvZ2lmIj09PUF9Z2V0SW5mbygpe3JldHVybntpZDoiamdSdW50aW1lIixuYW1lOiJSdW50aW1lIixjb2xvcjE6IiM3Nzc3NzciLGNvbG9yMjoiIzZhNmE2YSIsYmxvY2tzOlt7b3Bjb2RlOiJhZGRTcHJpdGVVcmwiLHRleHQ6ImFkZCBzcHJpdGUgZnJvbSBbVVJMXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1VSTDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vY29yc3Byb3h5LmlvLz8iLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQoImh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vU3ByaXRlMS5wbXMiKSl9fSxzd2l0Y2hlczpbQiwiYWRkQ29zdHVtZVVybCIsImFkZENvc3R1bWVVcmxGb3JjZU1pbWUiLCJhZGRTb3VuZFVybCIsImxvYWRQcm9qZWN0RGF0YVVybCJdLHN3aXRjaFRleHQ6ImFkZCBzcHJpdGUgZnJvbSB1cmwifSx7b3Bjb2RlOiJhZGRDb3N0dW1lVXJsIix0ZXh0OiJhZGQgY29zdHVtZSBbbmFtZV0gZnJvbSBbVVJMXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1VSTDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vY29yc3Byb3h5LmlvLz8iLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQoImh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vbmF2aWNvbi5wbmciKSl9LG5hbWU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJwZW5ndWlubW9kIn19LHN3aXRjaGVzOlsiYWRkU3ByaXRlVXJsIixCLCJhZGRDb3N0dW1lVXJsRm9yY2VNaW1lIix7b3Bjb2RlOiJhZGRTb3VuZFVybCIscmVtYXBBcmd1bWVudHM6e25hbWU6Ik5BTUUifX0sImxvYWRQcm9qZWN0RGF0YVVybCJdLHN3aXRjaFRleHQ6ImFkZCBjb3N0dW1lIGZyb20gdXJsIn0se29wY29kZToiYWRkQ29zdHVtZVVybEZvcmNlTWltZSIsdGV4dDoiYWRkIFtjb3N0dHlwZV0gY29zdHVtZSBbbmFtZV0gZnJvbSBbVVJMXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e2Nvc3R0eXBlOnt0eXBlOnIuU1RSSU5HLG1lbnU6ImNvc3R1bWVNaW1lVHlwZSJ9LFVSTDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vY29yc3Byb3h5LmlvLz8iLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQoImh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vbmF2aWNvbi5wbmciKSl9LG5hbWU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJwZW5ndWlubW9kIn19LHN3aXRjaGVzOlsiYWRkU3ByaXRlVXJsIiwiYWRkQ29zdHVtZVVybCIsQix7b3Bjb2RlOiJhZGRTb3VuZFVybCIscmVtYXBBcmd1bWVudHM6e25hbWU6Ik5BTUUifX0sImxvYWRQcm9qZWN0RGF0YVVybCJdLHN3aXRjaFRleHQ6ImFkZCB0eXBlZCBjb3N0dW1lIGZyb20gdXJsIn0se29wY29kZToiYWRkU291bmRVcmwiLHRleHQ6ImFkZCBzb3VuZCBbTkFNRV0gZnJvbSBbVVJMXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1VSTDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vZXh0ZW5zaW9ucy50dXJib3dhcnAub3JnL21lb3cubXAzIn0sTkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Ik1lb3cifX0sc3dpdGNoZXM6WyJhZGRTcHJpdGVVcmwiLHtvcGNvZGU6ImFkZENvc3R1bWVVcmwiLHJlbWFwQXJndW1lbnRzOntOQU1FOiJuYW1lIn19LHtvcGNvZGU6ImFkZENvc3R1bWVVcmxGb3JjZU1pbWUiLHJlbWFwQXJndW1lbnRzOntOQU1FOiJuYW1lIn19LEIsImxvYWRQcm9qZWN0RGF0YVVybCJdLHN3aXRjaFRleHQ6ImFkZCBzb3VuZCBmcm9tIHVybCJ9LHtvcGNvZGU6ImxvYWRQcm9qZWN0RGF0YVVybCIsdGV4dDoibG9hZCBwcm9qZWN0IGZyb20gW1VSTF0iLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntVUkw6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiIifX0sc3dpdGNoZXM6WyJhZGRTcHJpdGVVcmwiLCJhZGRDb3N0dW1lVXJsIiwiYWRkQ29zdHVtZVVybEZvcmNlTWltZSIsImFkZFNvdW5kVXJsIixCXSxzd2l0Y2hUZXh0OiJsb2FkIHByb2plY3QgZnJvbSB1cmwifSx7b3Bjb2RlOiJnZXRJbmRleE9mQ29zdHVtZSIsdGV4dDoiZ2V0IGNvc3R1bWUgaW5kZXggb2YgW2Nvc3R1bWVdIixibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e2Nvc3R1bWU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJjb3N0dW1lMSJ9fSxzd2l0Y2hlczpbQix7b3Bjb2RlOiJnZXRJbmRleE9mU291bmQiLHJlbWFwQXJndW1lbnRzOntjb3N0dW1lOiJOQU1FIn19XSxzd2l0Y2hUZXh0OiJnZXQgY29zdHVtZSBpbmRleCJ9LHtvcGNvZGU6ImdldEluZGV4T2ZTb3VuZCIsdGV4dDoiZ2V0IHNvdW5kIGluZGV4IG9mIFtOQU1FXSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiUG9wIn19LHN3aXRjaGVzOlt7b3Bjb2RlOiJnZXRJbmRleE9mQ29zdHVtZSIscmVtYXBBcmd1bWVudHM6e05BTUU6ImNvc3R1bWUifX0sQl0sc3dpdGNoVGV4dDoiZ2V0IHNvdW5kIGluZGV4IG9mIn0se29wY29kZToiZ2V0UHJvamVjdERhdGFVcmwiLHRleHQ6ImdldCBkYXRhIHVybCBvZiBwcm9qZWN0IixibG9ja1R5cGU6aS5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIse29wY29kZToic2V0U3RhZ2VTaXplIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLnNldFN0YWdlU2l6ZSIsZGVmYXVsdDoic2V0IHN0YWdlIHdpZHRoOiBbV0lEVEhdIGhlaWdodDogW0hFSUdIVF0iLGRlc2NyaXB0aW9uOiJTZXRzIHRoZSB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSBzdGFnZS4ifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1dJRFRIOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTo0ODB9LEhFSUdIVDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MzYwfX19LHtvcGNvZGU6ImdldFN0YWdlV2lkdGgiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuZ2V0U3RhZ2VXaWR0aCIsZGVmYXVsdDoic3RhZ2Ugd2lkdGgiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIHdpZHRoIG9mIHRoZSBzdGFnZS4ifSksZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsc3dpdGNoZXM6W0IsImdldFN0YWdlSGVpZ2h0Il0sc3dpdGNoVGV4dDoiZ2V0IHN0YWdlIHdpZHRoIn0se29wY29kZToiZ2V0U3RhZ2VIZWlnaHQiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuZ2V0U3RhZ2VIZWlnaHQiLGRlZmF1bHQ6InN0YWdlIGhlaWdodCIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcmV0dXJucyB0aGUgaGVpZ2h0IG9mIHRoZSBzdGFnZS4ifSksZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsc3dpdGNoZXM6WyJnZXRTdGFnZVdpZHRoIixCXSxzd2l0Y2hUZXh0OiJnZXQgc3RhZ2UgaGVpZ2h0In0sIi0tLSIse29wY29kZToidXBkYXRlUnVudGltZUNvbmZpZyIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy51cGRhdGVSdW50aW1lQ29uZmlnIixkZWZhdWx0OiJzZXQgW09QVElPTl0gdG8gW0VOQUJMRURdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCBlbmFibGVzIG9yIGRpc2FibGVzIGNvbmZpZ3VyYXRpb24gb24gdGhlIHJ1bnRpbWUgbGlrZSBoaWdoIHF1YWxpdHkgcGVuIG9yIHR1cmJvIG1vZGUuIn0pLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntPUFRJT046e21lbnU6InJ1bnRpbWVDb25maWcifSxFTkFCTEVEOnttZW51OiJvbm9mZiJ9fX0se29wY29kZToiY2hhbmdlUmVuZGVyaW5nQ2FwcGluZyIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5jaGFuZ2VSZW5kZXJpbmdDYXBwaW5nIixkZWZhdWx0OiJjaGFuZ2UgcmVuZGVyIHNldHRpbmcgW09QVElPTl0gdG8gW0NBUFBFRF0iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHVwZGF0ZXMgY29uZmlndXJhdGlvbiBvbiB0aGUgcmVuZGVyZXIgbGlrZSByZXNvbHV0aW9uIGZvciBjZXJ0YWluIGNvbnRlbnQuIn0pLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntPUFRJT046e21lbnU6InJlbmRlckNvbmZpZ0NhcHBhYmxlIn0sQ0FQUEVEOnttZW51OiJjYXBwYWJsZVNldHRpbmdzIn19fSx7b3Bjb2RlOiJzZXRSZW5kZXJpbmdOdW1iZXIiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3Muc2V0UmVuZGVyaW5nTnVtYmVyIixkZWZhdWx0OiJzZXQgcmVuZGVyIHNldHRpbmcgW09QVElPTl0gdG8gW05VTV0iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHNldHMgY29uZmlndXJhdGlvbiBvbiB0aGUgcmVuZGVyZXIgbGlrZSByZXNvbHV0aW9uIGZvciBjZXJ0YWluIGNvbnRlbnQuIn0pLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntPUFRJT046e21lbnU6InJlbmRlckNvbmZpZ051bWJlciJ9LE5VTTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJydW50aW1lQ29uZmlnRW5hYmxlZCIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5ydW50aW1lQ29uZmlnRW5hYmxlZCIsZGVmYXVsdDoiW09QVElPTl0gZW5hYmxlZD8iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgd2hldGhlciBhIHJ1bnRpbWUgb3B0aW9uIGxpa2UgVHVyYm8gTW9kZSBpcyBlbmFibGVkIG9uIHRoZSBwcm9qZWN0IG9yIG5vdC4ifSksZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuQk9PTEVBTixhcmd1bWVudHM6e09QVElPTjp7bWVudToicnVudGltZUNvbmZpZyJ9fX0se29wY29kZToidHVyYm9Nb2RlRW5hYmxlZCIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy50dXJib01vZGVFbmFibGVkIixkZWZhdWx0OiJ0dXJibyBtb2RlIGVuYWJsZWQ/IixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHdoZXRoZXIgVHVyYm8gTW9kZSBpcyBlbmFibGVkIG9uIHRoZSBwcm9qZWN0IG9yIG5vdC4ifSksZGlzYWJsZU1vbml0b3I6ITEsaGlkZUZyb21QYWxldHRlOiEwLGJsb2NrVHlwZTppLkJPT0xFQU59LCItLS0iLHtvcGNvZGU6InNldE1heENsb25lcyIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5zZXRNYXhDbG9uZXMiLGRlZmF1bHQ6InNldCBtYXggY2xvbmVzIHRvIFtNQVhdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCBlbmFibGVzIG9yIGRpc2FibGVzIGNvbmZpZ3VyYXRpb24gb24gdGhlIHJ1bnRpbWUgbGlrZSBoaWdoIHF1YWxpdHkgcGVuIG9yIHR1cmJvIG1vZGUuIn0pLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntNQVg6e21lbnU6ImNsb25lTGltaXQiLGRlZmF1bHRWYWx1ZTozMDB9fX0se29wY29kZToibWF4QW1vdW50T2ZDbG9uZXMiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MubWF4QW1vdW50T2ZDbG9uZXMiLGRlZmF1bHQ6Im1heCBjbG9uZSBjb3VudCIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcmV0dXJucyB0aGUgbWF4aW11bSBhbW91bnQgb2YgY2xvbmVzIHRoYXQgbWF5IGV4aXN0LiJ9KSxkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6aS5SRVBPUlRFUixzd2l0Y2hlczpbQiwiYW1vdW50T2ZDbG9uZXMiLCJnZXRJc0Nsb25lIl0sc3dpdGNoVGV4dDoibWF4IGNsb25lIGNvdW50In0se29wY29kZToiYW1vdW50T2ZDbG9uZXMiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuYW1vdW50T2ZDbG9uZXMiLGRlZmF1bHQ6ImNsb25lIGNvdW50IixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHRoZSBhbW91bnQgb2YgY2xvbmVzIHRoYXQgY3VycmVudGx5IGV4aXN0LiJ9KSxkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6aS5SRVBPUlRFUixzd2l0Y2hlczpbIm1heEFtb3VudE9mQ2xvbmVzIixCLCJnZXRJc0Nsb25lIl0sc3dpdGNoVGV4dDoiY2xvbmUgY291bnQifSx7b3Bjb2RlOiJnZXRJc0Nsb25lIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmdldElzQ2xvbmUiLGRlZmF1bHQ6ImlzIGNsb25lPyIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcmV0dXJucyB3aGV0aGVyIHRoZSBzcHJpdGUgaXMgYSBjbG9uZSBvciBub3QuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLkJPT0xFQU4sc3dpdGNoZXM6WyJtYXhBbW91bnRPZkNsb25lcyIsImFtb3VudE9mQ2xvbmVzIixCXSxzd2l0Y2hUZXh0OiJpcyBjbG9uZT8ifSwiLS0tIix7b3Bjb2RlOiJzZXRNYXhGcmFtZVJhdGUiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3Muc2V0TWF4RnJhbWVSYXRlIixkZWZhdWx0OiJzZXQgbWF4IGZyYW1lcmF0ZSB0bzogW0ZSQU1FUkFURV0iLGRlc2NyaXB0aW9uOiJTZXRzIHRoZSBtYXggYWxsb3dlZCBmcmFtZXJhdGUuIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntGUkFNRVJBVEU6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjMwfX19LHtvcGNvZGU6ImdldE1heEZyYW1lUmF0ZSIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5nZXRNYXhGcmFtZVJhdGUiLGRlZmF1bHQ6Im1heCBmcmFtZXJhdGUiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIGFtb3VudCBvZiBGUFMgYWxsb3dlZC4ifSksZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsc3dpdGNoZXM6W0IsImdldEZyYW1lUmF0ZSJdLHN3aXRjaFRleHQ6Im1heCBmcmFtZXJhdGUifSx7b3Bjb2RlOiJnZXRGcmFtZVJhdGUiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuZ2V0RnJhbWVSYXRlIixkZWZhdWx0OiJmcmFtZXJhdGUiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIGFtb3VudCBvZiBGUFMuIn0pLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTppLlJFUE9SVEVSLHN3aXRjaGVzOlsiZ2V0TWF4RnJhbWVSYXRlIixCXSxzd2l0Y2hUZXh0OiJmcmFtZXJhdGUifSwiLS0tIix7b3Bjb2RlOiJzZXRCYWNrZ3JvdW5kQ29sb3IiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3Muc2V0QmFja2dyb3VuZENvbG9yIixkZWZhdWx0OiJzZXQgc3RhZ2UgYmFja2dyb3VuZCBjb2xvciB0byBbQ09MT1JdIixkZXNjcmlwdGlvbjoiU2V0cyB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgc3RhZ2UuIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntDT0xPUjp7dHlwZTpyLkNPTE9SfX19LHtvcGNvZGU6ImdldEJhY2tncm91bmRDb2xvciIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5nZXRCYWNrZ3JvdW5kQ29sb3IiLGRlZmF1bHQ6InN0YWdlIGJhY2tncm91bmQgY29sb3IiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIHN0YWdlIGJhY2tncm91bmQgY29sb3IgaW4gSEVYLiJ9KSxkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6aS5SRVBPUlRFUn0sIi0tLSIse29wY29kZToicGF1c2VTY3JpcHQiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoicGF1c2UgdGhpcyBzY3JpcHQgdXNpbmcgbmFtZTogW05BTUVdIixhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteSBzY3JpcHQifX0sc3dpdGNoZXM6WyJwYXVzZVNjcmlwdCIsInVucGF1c2VTY3JpcHQiXSxzd2l0Y2hUZXh0OiJwYXVzZSB0aGlzIHNjcmlwdCJ9LHtvcGNvZGU6InVucGF1c2VTY3JpcHQiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoidW5wYXVzZSBzY3JpcHQgbmFtZWQ6IFtOQU1FXSIsYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXkgc2NyaXB0In19LHN3aXRjaGVzOlsicGF1c2VTY3JpcHQiLEJdLHN3aXRjaFRleHQ6InVucGF1c2Ugc2NyaXB0IG5hbWVkIn0se29wY29kZToiaXNTY3JpcHRQYXVzZWQiLGJsb2NrVHlwZTppLkJPT0xFQU4sdGV4dDoiaXMgc2NyaXB0IG5hbWVkIFtOQU1FXSBwYXVzZWQ/Iixhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteSBzY3JpcHQifX19LCItLS0iLHtvcGNvZGU6InZhcmlhYmxlc19jcmVhdGVWYXJpYWJsZSIsdGV4dDoiY3JlYXRlIHZhcmlhYmxlIG5hbWVkIFtOQU1FXSBmb3IgW1NDT1BFXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteSB2YXJpYWJsZSJ9LFNDT1BFOnt0eXBlOnIuU1RSSU5HLG1lbnU6InZhcmlhYmxlU2NvcGUifX0sc3dpdGNoZXM6W0IsInZhcmlhYmxlc19jcmVhdGVDbG91ZFZhcmlhYmxlIiwidmFyaWFibGVzX2NyZWF0ZUxpc3QiXSxzd2l0Y2hUZXh0OiJjcmVhdGUgdmFyaWFibGUifSx7b3Bjb2RlOiJ2YXJpYWJsZXNfY3JlYXRlQ2xvdWRWYXJpYWJsZSIsdGV4dDoiY3JlYXRlIGNsb3VkIHZhcmlhYmxlIG5hbWVkIFtOQU1FXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJjbG91ZCB2YXJpYWJsZSJ9fSxzd2l0Y2hlczpbInZhcmlhYmxlc19jcmVhdGVWYXJpYWJsZSIsQiwidmFyaWFibGVzX2NyZWF0ZUxpc3QiXSxzd2l0Y2hUZXh0OiJjcmVhdGUgY2xvdWQgdmFyaWFibGUifSx7b3Bjb2RlOiJ2YXJpYWJsZXNfY3JlYXRlTGlzdCIsdGV4dDoiY3JlYXRlIGxpc3QgbmFtZWQgW05BTUVdIGZvciBbU0NPUEVdIixibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Imxpc3QifSxTQ09QRTp7dHlwZTpyLlNUUklORyxtZW51OiJ2YXJpYWJsZVNjb3BlIn19LHN3aXRjaGVzOlsidmFyaWFibGVzX2NyZWF0ZVZhcmlhYmxlIiwidmFyaWFibGVzX2NyZWF0ZUNsb3VkVmFyaWFibGUiLEJdLHN3aXRjaFRleHQ6ImNyZWF0ZSBsaXN0In0se29wY29kZToidmFyaWFibGVzX2dldFZhcmlhYmxlIix0ZXh0OiJnZXQgdmFsdWUgb2YgdmFyaWFibGUgbmFtZWQgW05BTUVdIGluIFtTQ09QRV0iLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7TkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Im15IHZhcmlhYmxlIn0sU0NPUEU6e3R5cGU6ci5TVFJJTkcsbWVudToidmFyaWFibGVUeXBlcyJ9fSxzd2l0Y2hlczpbQix7b3Bjb2RlOiJ2YXJpYWJsZXNfZ2V0TGlzdCIscmVtYXBNZW51czp7U0NPUEU6eyJhbGwgc3ByaXRlcyI6ImZvciBhbGwgc3ByaXRlcyIsInRoaXMgc3ByaXRlIjoiaW4gdGhpcyBzcHJpdGUiLGNsb3VkOiJmb3IgYWxsIHNwcml0ZXMifX19LCJ2YXJpYWJsZXNfZXhpc3RzVmFyaWFibGUiLCJ2YXJpYWJsZXNfZXhpc3RzTGlzdCJdLHN3aXRjaFRleHQ6InZhbHVlIG9mIHZhcmlhYmxlIGluIHNjb3BlIn0se29wY29kZToidmFyaWFibGVzX2dldExpc3QiLHRleHQ6ImdldCBhcnJheSBvZiBsaXN0IG5hbWVkIFtOQU1FXSBpbiBbU0NPUEVdIixkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJsaXN0In0sU0NPUEU6e3R5cGU6ci5TVFJJTkcsbWVudToidmFyaWFibGVTY29wZSJ9fSxzd2l0Y2hlczpbInZhcmlhYmxlc19nZXRWYXJpYWJsZSIsQiwidmFyaWFibGVzX2V4aXN0c1ZhcmlhYmxlIiwidmFyaWFibGVzX2V4aXN0c0xpc3QiXSxzd2l0Y2hUZXh0OiJ2YWx1ZSBvZiBsaXN0IGluIHNjb3BlIn0se29wY29kZToidmFyaWFibGVzX2V4aXN0c1ZhcmlhYmxlIix0ZXh0OiJ2YXJpYWJsZSBuYW1lZCBbTkFNRV0gZXhpc3RzIGluIFtTQ09QRV0/IixkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5CT09MRUFOLGFyZ3VtZW50czp7TkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Im15IHZhcmlhYmxlIn0sU0NPUEU6e3R5cGU6ci5TVFJJTkcsbWVudToidmFyaWFibGVUeXBlcyJ9fSxzd2l0Y2hlczpbInZhcmlhYmxlc19nZXRWYXJpYWJsZSIsInZhcmlhYmxlc19nZXRMaXN0IixCLCJ2YXJpYWJsZXNfZXhpc3RzTGlzdCJdLHN3aXRjaFRleHQ6InZhcmlhYmxlIGV4aXN0cyBpbiBzY29wZSJ9LHtvcGNvZGU6InZhcmlhYmxlc19leGlzdHNMaXN0Iix0ZXh0OiJsaXN0IG5hbWVkIFtOQU1FXSBleGlzdHMgaW4gW1NDT1BFXT8iLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLkJPT0xFQU4sYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibGlzdCJ9LFNDT1BFOnt0eXBlOnIuU1RSSU5HLG1lbnU6InZhcmlhYmxlU2NvcGUifX0sc3dpdGNoZXM6WyJ2YXJpYWJsZXNfZ2V0VmFyaWFibGUiLCJ2YXJpYWJsZXNfZ2V0TGlzdCIsInZhcmlhYmxlc19leGlzdHNWYXJpYWJsZSIsQl0sc3dpdGNoVGV4dDoibGlzdCBleGlzdHMgaW4gc2NvcGUifSwiLS0tIix7b3Bjb2RlOiJnZXREYXRhT3B0aW9uIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmdldERhdGFPcHRpb24iLGRlZmF1bHQ6ImdldCBiaW5hcnkgZGF0YSBvZiBbT1BUSU9OXSBuYW1lZCBbTkFNRV0iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIGJpbmFyeSBkYXRhIG9mIGEgc3ByaXRlLCBzb3VuZCBvciBjb3N0dW1lLiJ9KSxkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e09QVElPTjp7dHlwZTpyLlNUUklORyxtZW51OiJvYmplY3RUeXBlIn0sTkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IlNwcml0ZTEifX0sc3dpdGNoZXM6W0IsImdldERhdGFVcmlPcHRpb24iXSxzd2l0Y2hUZXh0OiJnZXQgYmluYXJ5IGRhdGEgb2Ygb3B0aW9uIn0se29wY29kZToiZ2V0RGF0YVVyaU9wdGlvbiIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5nZXREYXRhVXJpT3B0aW9uIixkZWZhdWx0OiJnZXQgZGF0YSB1cmkgb2YgW09QVElPTl0gbmFtZWQgW05BTUVdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHRoZSBkYXRhIFVSSSBvZiBhIHNwcml0ZSwgc291bmQgb3IgY29zdHVtZS4ifSksZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntPUFRJT046e3R5cGU6ci5TVFJJTkcsbWVudToib2JqZWN0VHlwZSJ9LE5BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJTcHJpdGUxIn19LHN3aXRjaGVzOlsiZ2V0RGF0YU9wdGlvbiIsQl0sc3dpdGNoVGV4dDoiZ2V0IGRhdGEgdXJpIG9mIG9wdGlvbiJ9LCItLS0iLHtvcGNvZGU6ImdldEFsbFNwcml0ZXMiLHRleHQ6ImdldCBhbGwgc3ByaXRlcyIsZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsc3dpdGNoZXM6W0IsImdldEFsbENvc3R1bWVzIiwiZ2V0QWxsU291bmRzIiwiZ2V0QWxsRm9udHMiXX0se29wY29kZToiZ2V0QWxsQ29zdHVtZXMiLHRleHQ6ImdldCBhbGwgY29zdHVtZXMiLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTppLlJFUE9SVEVSLHN3aXRjaGVzOlsiZ2V0QWxsU3ByaXRlcyIsQiwiZ2V0QWxsU291bmRzIiwiZ2V0QWxsRm9udHMiXX0se29wY29kZToiZ2V0QWxsU291bmRzIix0ZXh0OiJnZXQgYWxsIHNvdW5kcyIsZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsc3dpdGNoZXM6WyJnZXRBbGxTcHJpdGVzIiwiZ2V0QWxsQ29zdHVtZXMiLEIsImdldEFsbEZvbnRzIl19LHtvcGNvZGU6ImdldEFsbEZvbnRzIix0ZXh0OiJnZXQgYWxsIGZvbnRzIixkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6aS5SRVBPUlRFUixzd2l0Y2hlczpbImdldEFsbFNwcml0ZXMiLCJnZXRBbGxDb3N0dW1lcyIsImdldEFsbFNvdW5kcyIsQl19LCItLS0iLHtvcGNvZGU6ImdldEFsbFZhcmlhYmxlcyIsdGV4dDoiZ2V0IGFsbCB2YXJpYWJsZXMgW0FMTFNDT1BFXSIsZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntBTExTQ09QRTp7dHlwZTpyLlNUUklORyxtZW51OiJhbGxWYXJpYWJsZVR5cGUifX0sc3dpdGNoZXM6W0Ise29wY29kZToiZ2V0QWxsTGlzdHMiLHJlbWFwTWVudXM6e0FMTFNDT1BFOnsiZm9yIGFsbCBzcHJpdGVzIjoiZm9yIGFsbCBzcHJpdGVzIiwiaW4gZXZlcnkgc3ByaXRlIjoiaW4gZXZlcnkgc3ByaXRlIiwiaW4gdGhpcyBzcHJpdGUiOiJpbiB0aGlzIHNwcml0ZSIsImluIHRoZSBjbG91ZCI6ImZvciBhbGwgc3ByaXRlcyJ9fX1dLHN3aXRjaFRleHQ6ImdldCBhbGwgdmFyaWFibGVzIn0se29wY29kZToiZ2V0QWxsTGlzdHMiLHRleHQ6ImdldCBhbGwgbGlzdHMgW0FMTFNDT1BFXSIsZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntBTExTQ09QRTp7dHlwZTpyLlNUUklORyxtZW51OiJhbGxWYXJpYWJsZVNjb3BlIn19LHN3aXRjaGVzOlsiZ2V0QWxsVmFyaWFibGVzIixCXSxzd2l0Y2hUZXh0OiJnZXQgYWxsIGxpc3RzIn0sIi0tLSIse2Jsb2NrVHlwZTppLkxBQkVMLHRleHQ6IlBvdGVudGlhbGx5IERhbmdlcm91cyJ9LHtvcGNvZGU6ImRlbGV0ZUNvc3R1bWUiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuZGVsZXRlQ29zdHVtZSIsZGVmYXVsdDoiZGVsZXRlIGNvc3R1bWUgYXQgaW5kZXggW0NPU1RVTUVdIixkZXNjcmlwdGlvbjoiRGVsZXRlcyBhIGNvc3R1bWUgYXQgdGhlIHNwZWNpZmllZCBpbmRleC4ifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e0NPU1RVTUU6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9fSxzd2l0Y2hlczpbQix7b3Bjb2RlOiJkZWxldGVTb3VuZCIscmVtYXBBcmd1bWVudHM6e0NPU1RVTUU6IlNPVU5EIn19LHtvcGNvZGU6ImRlbGV0ZVNwcml0ZSIscmVtYXBBcmd1bWVudHM6e0NPU1RVTUU6Ik5BTUUifX1dLHN3aXRjaFRleHQ6ImRlbGV0ZSBjb3N0dW1lIGF0IGluZGV4In0se29wY29kZToiZGVsZXRlU291bmQiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuZGVsZXRlU291bmQiLGRlZmF1bHQ6ImRlbGV0ZSBzb3VuZCBhdCBpbmRleCBbU09VTkRdIixkZXNjcmlwdGlvbjoiRGVsZXRlcyBhIHNvdW5kIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXguIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntTT1VORDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19LHN3aXRjaGVzOlt7b3Bjb2RlOiJkZWxldGVDb3N0dW1lIixyZW1hcEFyZ3VtZW50czp7U09VTkQ6IkNPU1RVTUUifX0sQix7b3Bjb2RlOiJkZWxldGVTcHJpdGUiLHJlbWFwQXJndW1lbnRzOntTT1VORDoiTkFNRSJ9fV0sc3dpdGNoVGV4dDoiZGVsZXRlIHNvdW5kIGF0IGluZGV4In0sIi0tLSIse29wY29kZToidmFyaWFibGVzX2RlbGV0ZVZhcmlhYmxlIix0ZXh0OiJkZWxldGUgdmFyaWFibGUgbmFtZWQgW05BTUVdIGluIFtTQ09QRV0iLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXkgdmFyaWFibGUifSxTQ09QRTp7dHlwZTpyLlNUUklORyxtZW51OiJ2YXJpYWJsZVR5cGVzIn19LHN3aXRjaGVzOltCLHtvcGNvZGU6InZhcmlhYmxlc19kZWxldGVMaXN0IixyZW1hcE1lbnVzOntTQ09QRTp7ImFsbCBzcHJpdGVzIjoiYWxsIHNwcml0ZXMiLCJ0aGlzIHNwcml0ZSI6InRoaXMgc3ByaXRlIixjbG91ZDoiYWxsIHNwcml0ZXMifX19XSxzd2l0Y2hUZXh0OiJkZWxldGUgdmFyaWFibGUifSx7b3Bjb2RlOiJ2YXJpYWJsZXNfZGVsZXRlTGlzdCIsdGV4dDoiZGVsZXRlIGxpc3QgbmFtZWQgW05BTUVdIGluIFtTQ09QRV0iLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibGlzdCJ9LFNDT1BFOnt0eXBlOnIuU1RSSU5HLG1lbnU6InZhcmlhYmxlU2NvcGUifX0sc3dpdGNoZXM6WyJ2YXJpYWJsZXNfZGVsZXRlVmFyaWFibGUiLEJdLHN3aXRjaFRleHQ6ImRlbGV0ZSBsaXN0In0sIi0tLSIse29wY29kZToiZGVsZXRlU3ByaXRlIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmRlbGV0ZVNwcml0ZSIsZGVmYXVsdDoiZGVsZXRlIHNwcml0ZSBuYW1lZCBbTkFNRV0iLGRlc2NyaXB0aW9uOiJEZWxldGVzIGEgc3ByaXRlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLiJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IlNwcml0ZTEifX0sc3dpdGNoZXM6W3tvcGNvZGU6ImRlbGV0ZUNvc3R1bWUiLHJlbWFwQXJndW1lbnRzOntOQU1FOiJDT1NUVU1FIn19LHtvcGNvZGU6ImRlbGV0ZVNvdW5kIixyZW1hcEFyZ3VtZW50czp7TkFNRToiU09VTkQifX0sQl0sc3dpdGNoVGV4dDoiZGVsZXRlIHNwcml0ZSBuYW1lZCJ9XSxtZW51czp7b2JqZWN0VHlwZTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsic3ByaXRlIiwiY29zdHVtZSIsInNvdW5kIl0ubWFwKEE9Pih7dGV4dDpBLHZhbHVlOkF9KSl9LHZhcmlhYmxlU2NvcGU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbImFsbCBzcHJpdGVzIiwidGhpcyBzcHJpdGUiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX0sYWxsVmFyaWFibGVTY29wZTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiZm9yIGFsbCBzcHJpdGVzIiwiaW4gZXZlcnkgc3ByaXRlIiwiaW4gdGhpcyBzcHJpdGUiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX0sYWxsVmFyaWFibGVUeXBlOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJmb3IgYWxsIHNwcml0ZXMiLCJpbiBldmVyeSBzcHJpdGUiLCJpbiB0aGlzIHNwcml0ZSIsImluIHRoZSBjbG91ZCJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfSx2YXJpYWJsZVR5cGVzOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJhbGwgc3ByaXRlcyIsInRoaXMgc3ByaXRlIiwiY2xvdWQiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX0sY2xvbmVMaW1pdDp7aXRlbXM6WyIxMDAiLCIxMjgiLCIzMDAiLCI1MDAiLCIxMDAwIiwiMTAyNCIsIjUwMDAiLCIxMDAwMCIsIjE2Mzg0IiwiSW5maW5pdHkiXSxpc1R5cGVhYmxlOiEwLGlzTnVtZXJpYzohMH0scnVudGltZUNvbmZpZzp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsidHVyYm8gbW9kZSIsImhpZ2ggcXVhbGl0eSBwZW4iLCJvZmZzY3JlZW4gc3ByaXRlcyIsInJlbW92ZSBtaXNjZWxsYW5lb3VzIGxpbWl0cyIsImRpc2FibGUgb2Zmc2NyZWVuIHJlbmRlcmluZyIsImRpc2FibGUgZGlyZWN0aW9uIGNsYW1waW5nIiwiaW50ZXJwb2xhdGlvbiIsIndhcnAgdGltZXIiXX0scmVuZGVyQ29uZmlnQ2FwcGFibGU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbImFuaW1hdGVkIHRleHQgcmVzb2x1dGlvbiJdfSxyZW5kZXJDb25maWdOdW1iZXI6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbImFuaW1hdGVkIHRleHQgcmVzb2x1dGlvbiJdfSxvbm9mZjpbIm9uIiwib2ZmIl0sY29zdHVtZU1pbWVUeXBlOlsicG5nIiwiYm1wIiwianBnIiwianBlZyIsImpmaWYiLCJ3ZWJwIiwiZ2lmIiwidmVjdG9yIl0sY2FwcGFibGVTZXR0aW5nczpbInVuY2FwcGVkIiwiY2FwcGVkIiwiZml4ZWQiXX19fV9nZW5lcmF0ZVNjcmF0Y2hJZCgpe2NvbnN0IEE9IiEjJSgpKissLS4vOjs9P0BbXV5fYHt8fX5BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIsZT1bXTtmb3IobGV0IHQ9MDt0PDIwO3QrKyllW3RdPUEuY2hhckF0KE1hdGgucmFuZG9tKCkqQS5sZW5ndGgpO3JldHVybiBlLmpvaW4oIiIpfWFkZENvc3R1bWVVcmwoQSxlKXtjb25zdCB0PWUudGFyZ2V0LmlkO3JldHVybiBuZXcgUHJvbWlzZShlPT57ZmV0Y2goQS5VUkwse21ldGhvZDoiR0VUIn0pLnRoZW4obj0+bi5ibG9iKCkudGhlbihuPT57Y29uc3QgaT0hIUEuY29zdHR5cGUscj0idmVjdG9yIiE9PUEuY29zdHR5cGU7aWYoIXRoaXMuX3R5cGVJc0JpdG1hcChuLnR5cGUpJiYiaW1hZ2Uvc3ZnK3htbCIhPT1uLnR5cGUmJiFpKXRocm93IGUoKSxuZXcgRXJyb3IoJ0ludmFsaWQgbWltZSB0eXBlOiAiJy5jb25jYXQobi50eXBlLCciJykpO2NvbnN0IG89KGk/cjp0aGlzLl90eXBlSXNCaXRtYXAobi50eXBlKSk/dGhpcy5ydW50aW1lLnN0b3JhZ2UuQXNzZXRUeXBlLkltYWdlQml0bWFwOnRoaXMucnVudGltZS5zdG9yYWdlLkFzc2V0VHlwZS5JbWFnZVZlY3RvcixzPWk/cj9BLmNvc3R0eXBlOiJzdmciOiJpbWFnZS9zdmcreG1sIj09PW4udHlwZT8ic3ZnIjpuLnR5cGUuc3BsaXQoIi8iKVsxXTtuLmFycmF5QnVmZmVyKCkudGhlbihuPT57Y29uc3QgYT1pP3I/bmV3IFVpbnQ4QXJyYXkobik6bjoiaW1hZ2Uvc3ZnK3htbCI9PT1zP246bmV3IFVpbnQ4QXJyYXkobiksQj10aGlzLnJ1bnRpbWUuc3RvcmFnZS5jcmVhdGVBc3NldChvLHMsYSxudWxsLCEwKSxjPSIiLmNvbmNhdChCLmFzc2V0SWQsIi4iKS5jb25jYXQoQi5kYXRhRm9ybWF0KSxnPXthc3NldDpCLG1kNWV4dDpjLG5hbWU6QS5uYW1lfSxFPXZtLmFkZENvc3R1bWUoYyxnLHQpO0UudGhlbj9FLnRoZW4oZSk6ZSgpfSkuY2F0Y2goQT0+e2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBMb2FkIENvc3R1bWU6ICIuY29uY2F0KEEpKSxlKCl9KX0pKX0pfWFkZENvc3R1bWVVcmxGb3JjZU1pbWUoQSxlKXt0aGlzLmFkZENvc3R1bWVVcmwoQSxlKX1kZWxldGVDb3N0dW1lKEEsZSl7Y29uc3QgdD1NYXRoLnJvdW5kKHMudG9OdW1iZXIoQS5DT1NUVU1FKSktMTt0PDB8fGUudGFyZ2V0LmRlbGV0ZUNvc3R1bWUodCl9ZGVsZXRlU291bmQoQSxlKXtjb25zdCB0PU1hdGgucm91bmQocy50b051bWJlcihBLlNPVU5EKSktMTt0PDB8fGUudGFyZ2V0LmRlbGV0ZVNvdW5kKHQpfWdldEluZGV4T2ZDb3N0dW1lKEEsZSl7cmV0dXJuIGUudGFyZ2V0LmdldENvc3R1bWVJbmRleEJ5TmFtZShBLmNvc3R1bWUpKzF9Z2V0SW5kZXhPZlNvdW5kKEEsZSl7bGV0IHQ9MDtjb25zdCBuPWUudGFyZ2V0LmdldFNvdW5kcygpO2ZvcihsZXQgZT0wO2U8bi5sZW5ndGg7ZSsrKW5bZV0ubmFtZT09PUEuTkFNRSYmKHQ9ZSsxKTtyZXR1cm4gdH1zZXRTdGFnZVNpemUoQSl7dm0mJnZtLnNldFN0YWdlU2l6ZShNYXRoLm1heCgxLHMudG9OdW1iZXIoQS5XSURUSCkpLE1hdGgubWF4KDEscy50b051bWJlcihBLkhFSUdIVCkpKX10dXJib01vZGVFbmFibGVkKCl7cmV0dXJuIHRoaXMucnVudGltZS50dXJib01vZGV9YW1vdW50T2ZDbG9uZXMoKXtyZXR1cm4gdGhpcy5ydW50aW1lLl9jbG9uZUNvdW50ZXJ9Z2V0U3RhZ2VXaWR0aCgpe3JldHVybiB0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aH1nZXRTdGFnZUhlaWdodCgpe3JldHVybiB0aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHR9Z2V0TWF4RnJhbWVSYXRlKCl7cmV0dXJuIHRoaXMucnVudGltZS5mcmFtZUxvb3AuZnJhbWVyYXRlfWdldElzQ2xvbmUoQSxlKXtyZXR1cm4hZS50YXJnZXQuaXNPcmlnaW5hbH1jaGFuZ2VSZW5kZXJpbmdDYXBwaW5nKEEpe2NvbnN0IGU9cy50b1N0cmluZyhBLk9QVElPTikudG9Mb3dlckNhc2UoKSx0PXMudG9TdHJpbmcoQS5DQVBQRUQpLnRvTG93ZXJDYXNlKCk7c3dpdGNoKGUpe2Nhc2UiYW5pbWF0ZWQgdGV4dCByZXNvbHV0aW9uIjp0aGlzLnJ1bnRpbWUucmVuZGVyZXIuY3VzdG9tUmVuZGVyQ29uZmlnLnRleHRDb3N0dW1lUmVzb2x1dGlvbi5maXhlZD0hMSx0aGlzLnJ1bnRpbWUucmVuZGVyZXIuY3VzdG9tUmVuZGVyQ29uZmlnLnRleHRDb3N0dW1lUmVzb2x1dGlvbi5jYXBwZWQ9ITEsImZpeGVkIj09PXQ/dGhpcy5ydW50aW1lLnJlbmRlcmVyLmN1c3RvbVJlbmRlckNvbmZpZy50ZXh0Q29zdHVtZVJlc29sdXRpb24uZml4ZWQ9ITA6ImNhcHBlZCI9PT10JiYodGhpcy5ydW50aW1lLnJlbmRlcmVyLmN1c3RvbVJlbmRlckNvbmZpZy50ZXh0Q29zdHVtZVJlc29sdXRpb24uY2FwcGVkPSEwKX10aGlzLnJ1bnRpbWUucmVuZGVyZXIuZGlydHk9ITAsdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX1zZXRSZW5kZXJpbmdOdW1iZXIoQSl7Y29uc3QgZT1zLnRvU3RyaW5nKEEuT1BUSU9OKS50b0xvd2VyQ2FzZSgpLHQ9cy50b051bWJlcihBLk5VTSk7c3dpdGNoKGUpe2Nhc2UiYW5pbWF0ZWQgdGV4dCByZXNvbHV0aW9uIjp0aGlzLnJ1bnRpbWUucmVuZGVyZXIuY3VzdG9tUmVuZGVyQ29uZmlnLnRleHRDb3N0dW1lUmVzb2x1dGlvbi52YWx1ZT10O2JyZWFrO2Nhc2UibWF4IHRleHR1cmUgc2NhbGUgZm9yIG5ldyBzdmcgaW1hZ2VzIjp0aGlzLnJ1bnRpbWUucmVuZGVyZXIuc2V0TWF4VGV4dHVyZURpbWVuc2lvbih0KX10aGlzLnJ1bnRpbWUucmVuZGVyZXIuZGlydHk9ITAsdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX11cGRhdGVSdW50aW1lQ29uZmlnKEEpe2NvbnN0IGU9Im9uIj09PXMudG9TdHJpbmcoQS5FTkFCTEVEKS50b0xvd2VyQ2FzZSgpO3N3aXRjaChzLnRvU3RyaW5nKEEuT1BUSU9OKS50b0xvd2VyQ2FzZSgpKXtjYXNlInR1cmJvIG1vZGUiOnJldHVybiB2bS5zZXRUdXJib01vZGUoZSk7Y2FzZSJoaWdoIHF1YWxpdHkgcGVuIjpyZXR1cm4gdGhpcy5ydW50aW1lLnJlbmRlcmVyLnNldFVzZUhpZ2hRdWFsaXR5UmVuZGVyKGUpO2Nhc2Uib2Zmc2NyZWVuIHNwcml0ZXMiOnJldHVybiB0aGlzLnJ1bnRpbWUuc2V0UnVudGltZU9wdGlvbnMoe2ZlbmNpbmc6IWV9KTtjYXNlInJlbW92ZSBtaXNjZWxsYW5lb3VzIGxpbWl0cyI6cmV0dXJuIHRoaXMucnVudGltZS5zZXRSdW50aW1lT3B0aW9ucyh7bWlzY0xpbWl0czohZX0pO2Nhc2UiZGlzYWJsZSBvZmZzY3JlZW4gcmVuZGVyaW5nIjpyZXR1cm4gdGhpcy5ydW50aW1lLnNldFJ1bnRpbWVPcHRpb25zKHtkaXNhYmxlT2Zmc2NyZWVuUmVuZGVyaW5nOmV9KTtjYXNlImRpc2FibGUgZGlyZWN0aW9uIGNsYW1waW5nIjpyZXR1cm4gdGhpcy5ydW50aW1lLnNldFJ1bnRpbWVPcHRpb25zKHtkaXNhYmxlRGlyZWN0aW9uQ2xhbXBpbmc6ZX0pO2Nhc2UiaW50ZXJwb2xhdGlvbiI6cmV0dXJuIHZtLnNldEludGVycG9sYXRpb24oZSk7Y2FzZSJ3YXJwIHRpbWVyIjpyZXR1cm4gdGhpcy5ydW50aW1lLnNldENvbXBpbGVyT3B0aW9ucyh7d2FycFRpbWVyOmV9KX19cnVudGltZUNvbmZpZ0VuYWJsZWQoQSl7c3dpdGNoKHMudG9TdHJpbmcoQS5PUFRJT04pLnRvTG93ZXJDYXNlKCkpe2Nhc2UidHVyYm8gbW9kZSI6cmV0dXJuIHRoaXMucnVudGltZS50dXJib01vZGU7Y2FzZSJoaWdoIHF1YWxpdHkgcGVuIjpyZXR1cm4gdGhpcy5ydW50aW1lLnJlbmRlcmVyLnVzZUhpZ2hRdWFsaXR5UmVuZGVyO2Nhc2Uib2Zmc2NyZWVuIHNwcml0ZXMiOnJldHVybiF0aGlzLnJ1bnRpbWUucnVudGltZU9wdGlvbnMuZmVuY2luZztjYXNlInJlbW92ZSBtaXNjZWxsYW5lb3VzIGxpbWl0cyI6cmV0dXJuIXRoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5taXNjTGltaXRzO2Nhc2UiZGlzYWJsZSBvZmZzY3JlZW4gcmVuZGVyaW5nIjpyZXR1cm4gdGhpcy5ydW50aW1lLnJ1bnRpbWVPcHRpb25zLmRpc2FibGVPZmZzY3JlZW5SZW5kZXJpbmc7Y2FzZSJkaXNhYmxlIGRpcmVjdGlvbiBjbGFtcGluZyI6cmV0dXJuIHRoaXMucnVudGltZS5ydW50aW1lT3B0aW9ucy5kaXNhYmxlRGlyZWN0aW9uQ2xhbXBpbmc7Y2FzZSJpbnRlcnBvbGF0aW9uIjpyZXR1cm4gdGhpcy5ydW50aW1lLmludGVycG9sYXRpb25FbmFibGVkO2Nhc2Uid2FycCB0aW1lciI6cmV0dXJuIHRoaXMucnVudGltZS5jb21waWxlck9wdGlvbnMud2FycFRpbWVyO2RlZmF1bHQ6cmV0dXJuITF9fXNldE1heENsb25lcyhBKXtjb25zdCBlPU1hdGgucm91bmQocy50b051bWJlcihBLk1BWCkpO3RoaXMucnVudGltZS52bS5zZXRSdW50aW1lT3B0aW9ucyh7bWF4Q2xvbmVzOmV9KX1tYXhBbW91bnRPZkNsb25lcygpe3JldHVybiB0aGlzLnJ1bnRpbWUucnVudGltZU9wdGlvbnMubWF4Q2xvbmVzfXNldEJhY2tncm91bmRDb2xvcihBKXtsZXQgZTsibnVtYmVyIj09dHlwZW9mIEEuQ09MT1I/KGU9cy50b1JnYkNvbG9yT2JqZWN0KEEuQ09MT1IpLHRoaXMucnVudGltZS5yZW5kZXJlci5zZXRCYWNrZ3JvdW5kQ29sb3IoZS5yLzI1NSxlLmcvMjU1LGUuYi8yNTUpKTooZT1zLnRvU3RyaW5nKEEuQ09MT1IpLGU9ZS5zdGFydHNXaXRoKCIjIik/ZS5zbGljZSgxKTplLHRoaXMucnVudGltZS5yZW5kZXJlci5zZXRCYWNrZ3JvdW5kQ29sb3IocGFyc2VJbnQoZS5zbGljZSgwLDIpLDE2KS8yNTUscGFyc2VJbnQoZS5zbGljZSgyLDQpLDE2KS8yNTUscGFyc2VJbnQoZS5zbGljZSg0LDYpLDE2KS8yNTUsOD09PWUubGVuZ3RoP3BhcnNlSW50KGUuc2xpY2UoNiw4KSwxNikvMjU1OjEpKX1nZXRCYWNrZ3JvdW5kQ29sb3IoKXtjb25zdCBBPXRoaXMucnVudGltZS5yZW5kZXJlci5fYmFja2dyb3VuZENvbG9yM2IsZT17cjpNYXRoLnJvdW5kKHMudG9OdW1iZXIoQVswXSkpLGc6TWF0aC5yb3VuZChzLnRvTnVtYmVyKEFbMV0pKSxiOk1hdGgucm91bmQocy50b051bWJlcihBWzJdKSl9O3JldHVybiBhLnJnYlRvSGV4KGUpfXBhdXNlU2NyaXB0KEEsZSl7Y29uc3QgdD1zLnRvU3RyaW5nKEEuTkFNRSksbj1lLnN0YWNrRnJhbWUucGF1c2VkU2NyaXB0O24/biBpbiB0aGlzLnBhdXNlZFNjcmlwdHMmJmUueWllbGQoKToodGhpcy5wYXVzZWRTY3JpcHRzW3RdPSEwLGUuc3RhY2tGcmFtZS5wYXVzZWRTY3JpcHQ9dCxlLnlpZWxkKCkpfXVucGF1c2VTY3JpcHQoQSl7Y29uc3QgZT1zLnRvU3RyaW5nKEEuTkFNRSk7ZSBpbiB0aGlzLnBhdXNlZFNjcmlwdHMmJmRlbGV0ZSB0aGlzLnBhdXNlZFNjcmlwdHNbZV19aXNTY3JpcHRQYXVzZWQoQSl7cmV0dXJuIHMudG9TdHJpbmcoQS5OQU1FKWluIHRoaXMucGF1c2VkU2NyaXB0c31zZXRNYXhGcmFtZVJhdGUoQSl7bGV0IGU9cy50b051bWJlcihBLkZSQU1FUkFURSk7dGhpcy5ydW50aW1lLnNldEZyYW1lcmF0ZShlKX1kZWxldGVTcHJpdGUoQSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKEEuTkFNRSk7ZSYmdm0uZGVsZXRlU3ByaXRlSW50ZXJuYWwoZS5pZCl9Z2V0RGF0YU9wdGlvbihBLGUpe3N3aXRjaChBLk9QVElPTil7Y2FzZSJzcHJpdGUiOntjb25zdCBlPXRoaXMucnVudGltZS50YXJnZXRzLmZpbHRlcihBPT5BLmlzT3JpZ2luYWwpLmZpbHRlcihlPT5lLnNwcml0ZS5uYW1lPT09QS5OQU1FKVswXTtyZXR1cm4gZT9uZXcgUHJvbWlzZShBPT57dm0uZXhwb3J0U3ByaXRlKGUuaWQpLnRoZW4oZT0+e2UuYXJyYXlCdWZmZXIoKS50aGVuKGU9Pntjb25zdCB0PW8uYnVmZmVyVG9BcnJheShlKSxuPUpTT04uc3RyaW5naWZ5KHQpO0Eobil9KS5jYXRjaCgoKT0+QSgiW10iKSl9KS5jYXRjaCgoKT0+QSgiW10iKSl9KToiW10ifWNhc2UiY29zdHVtZSI6e2NvbnN0IHQ9ZS50YXJnZXQuZ2V0Q29zdHVtZXMoKSxuPWUudGFyZ2V0LmdldENvc3R1bWVJbmRleEJ5TmFtZShBLk5BTUUpO2lmKCF0W25dKXJldHVybiJbXSI7Y29uc3QgaT10W25dLmFzc2V0LmRhdGEscj1vLmJ1ZmZlclRvQXJyYXkoaS5idWZmZXIpO3JldHVybiBKU09OLnN0cmluZ2lmeShyKX1jYXNlInNvdW5kIjp7Y29uc3QgdD1lLnRhcmdldC5nZXRTb3VuZHMoKSxuPXRoaXMuZ2V0SW5kZXhPZlNvdW5kKEEsZSktMTtpZighdFtuXSlyZXR1cm4iW10iO2NvbnN0IGk9dFtuXS5hc3NldC5kYXRhLHI9by5idWZmZXJUb0FycmF5KGkuYnVmZmVyKTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkocil9ZGVmYXVsdDpyZXR1cm4iW10ifX1nZXREYXRhVXJpT3B0aW9uKEEsZSl7c3dpdGNoKEEuT1BUSU9OKXtjYXNlInNwcml0ZSI6e2NvbnN0IGU9dGhpcy5ydW50aW1lLnRhcmdldHMuZmlsdGVyKEE9PkEuaXNPcmlnaW5hbCkuZmlsdGVyKGU9PmUuc3ByaXRlLm5hbWU9PT1BLk5BTUUpWzBdO3JldHVybiBlP25ldyBQcm9taXNlKEE9Pnt2bS5leHBvcnRTcHJpdGUoZS5pZCkudGhlbihlPT57Y29uc3QgdD1uZXcgRmlsZVJlYWRlcjt0Lm9ubG9hZD0oKT0+QSh0LnJlc3VsdCksdC5vbmVycm9yPSgpPT5BKCIiKSx0Lm9uYWJvcnQ9KCk9PkEoIiIpLHQucmVhZEFzRGF0YVVSTChlKX0pLmNhdGNoKCgpPT5BKCIiKSl9KToiIn1jYXNlImNvc3R1bWUiOntjb25zdCB0PWUudGFyZ2V0LmdldENvc3R1bWVzKCksbj1lLnRhcmdldC5nZXRDb3N0dW1lSW5kZXhCeU5hbWUoQS5OQU1FKTtpZighdFtuXSlyZXR1cm4iIjtyZXR1cm4gdFtuXS5hc3NldC5lbmNvZGVEYXRhVVJJKCl9Y2FzZSJzb3VuZCI6e2NvbnN0IHQ9ZS50YXJnZXQuZ2V0U291bmRzKCksbj10aGlzLmdldEluZGV4T2ZTb3VuZChBLGUpLTE7aWYoIXRbbl0pcmV0dXJuIiI7cmV0dXJuIHRbbl0uYXNzZXQuZW5jb2RlRGF0YVVSSSgpfWRlZmF1bHQ6cmV0dXJuIiJ9fWdldEFsbFNwcml0ZXMoKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5ydW50aW1lLnRhcmdldHMuZmlsdGVyKEE9PkEuaXNPcmlnaW5hbCYmIUEuaXNTdGFnZSkubWFwKEE9PkEuc3ByaXRlLm5hbWUpKX1nZXRBbGxDb3N0dW1lcyhBLGUpe2NvbnN0IHQ9ZS50YXJnZXQuZ2V0Q29zdHVtZXMoKTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodC5tYXAoQT0+QS5uYW1lKSl9Z2V0QWxsU291bmRzKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5nZXRTb3VuZHMoKTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodC5tYXAoQT0+QS5uYW1lKSl9Z2V0QWxsRm9udHMoKXtjb25zdCBBPXRoaXMucnVudGltZS5mb250TWFuYWdlci5nZXRGb250cygpO3JldHVybiBKU09OLnN0cmluZ2lmeShBLm1hcChBPT5BLm5hbWUpKX1sb2FkUHJvamVjdERhdGFVcmwoQSl7Y29uc3QgZT1zLnRvU3RyaW5nKEEuVVJMKTsoInVuZGVmaW5lZCI9PXR5cGVvZiBTY3JhdGNoQmxvY2tzfHxjb25maXJtKCJSdW50aW1lIEV4dGVuc2lvbiAtIEVkaXRvcjogQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGxvYWQgYSBuZXcgcHJvamVjdD9cbkV2ZXJ5dGhpbmcgaW4gdGhlIGN1cnJlbnQgcHJvamVjdCB3aWxsIGJlIHBlcm1hbmVudGx5IGRlbGV0ZWQuIikpJiYoY29uc29sZS5sb2coIkxvYWRpbmcgcHJvamVjdCBmcm9tIGN1c3RvbSBzb3VyY2UuLi4iKSxmZXRjaChlKS50aGVuKEE9PkEuYXJyYXlCdWZmZXIoKSkudGhlbihBPT52bS5sb2FkUHJvamVjdChBKSkudGhlbigoKT0+e2NvbnNvbGUubG9nKCJMb2FkZWQgcHJvamVjdCEiKSx2bS5ncmVlbkZsYWcoKX0pLmNhdGNoKEE9Pntjb25zb2xlLmxvZygiRXJyb3IgbG9hZGluZyBjdXN0b20gcHJvamVjdDsiLEEpfSkpfWdldFByb2plY3REYXRhVXJsKCl7cmV0dXJuIG5ldyBQcm9taXNlKEE9Pntjb25zdCBlPSJkYXRhOmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTtiYXNlNjQsIjt2bS5zYXZlUHJvamVjdFNiMygpLnRoZW4odD0+e2NvbnN0IG49bmV3IEZpbGVSZWFkZXI7bi5vbmxvYWQ9KCk9PntBKG4ucmVzdWx0KX0sbi5vbmVycm9yPSgpPT57QShlKX0sbi5yZWFkQXNEYXRhVVJMKHQpfSkuY2F0Y2goKCk9PntBKGUpfSl9KX1nZXRBbGxWYXJpYWJsZXMoQSxlKXtzd2l0Y2goQS5BTExTQ09QRSl7Y2FzZSJmb3IgYWxsIHNwcml0ZXMiOntjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO2lmKCFBKXJldHVybiJbXSI7Y29uc3QgZT1BLnZhcmlhYmxlcztyZXR1cm4gZT9KU09OLnN0cmluZ2lmeShPYmplY3QudmFsdWVzKGUpLmZpbHRlcihBPT4ibGlzdCIhPT1BLnR5cGUpLm1hcChBPT5BLm5hbWUpKToiW10ifWNhc2UiaW4gZXZlcnkgc3ByaXRlIjp7Y29uc3QgQT10aGlzLnJ1bnRpbWUudGFyZ2V0cztpZighQSlyZXR1cm4iW10iO2NvbnN0IGU9QS5maWx0ZXIoQT0+QS5pc09yaWdpbmFsKS5tYXAoQT0+QS52YXJpYWJsZXMpO3JldHVybiBlP0pTT04uc3RyaW5naWZ5KGUubWFwKEE9Pk9iamVjdC52YWx1ZXMoQSkpLm1hcChBPT5BLmZpbHRlcihBPT4ibGlzdCIhPT1BLnR5cGUpLm1hcChBPT5BLm5hbWUpKS5mbGF0KDEpKToiW10ifWNhc2UiaW4gdGhpcyBzcHJpdGUiOntjb25zdCBBPWUudGFyZ2V0O2lmKCFBKXJldHVybiJbXSI7Y29uc3QgdD1BLnZhcmlhYmxlcztyZXR1cm4gdD9KU09OLnN0cmluZ2lmeShPYmplY3QudmFsdWVzKHQpLmZpbHRlcihBPT4ibGlzdCIhPT1BLnR5cGUpLm1hcChBPT5BLm5hbWUpKToiW10ifWNhc2UiaW4gdGhlIGNsb3VkIjp7Y29uc3QgQT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtpZighQSlyZXR1cm4iW10iO2NvbnN0IGU9QS52YXJpYWJsZXM7cmV0dXJuIGU/SlNPTi5zdHJpbmdpZnkoT2JqZWN0LnZhbHVlcyhlKS5maWx0ZXIoQT0+Imxpc3QiIT09QS50eXBlKS5maWx0ZXIoQT0+ITA9PT1BLmlzQ2xvdWQpLm1hcChBPT5BLm5hbWUpKToiW10ifWRlZmF1bHQ6cmV0dXJuIltdIn19Z2V0QWxsTGlzdHMoQSxlKXtzd2l0Y2goQS5BTExTQ09QRSl7Y2FzZSJmb3IgYWxsIHNwcml0ZXMiOntjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO2lmKCFBKXJldHVybiJbXSI7Y29uc3QgZT1BLnZhcmlhYmxlcztyZXR1cm4gZT9KU09OLnN0cmluZ2lmeShPYmplY3QudmFsdWVzKGUpLmZpbHRlcihBPT4ibGlzdCI9PT1BLnR5cGUpLm1hcChBPT5BLm5hbWUpKToiW10ifWNhc2UiaW4gZXZlcnkgc3ByaXRlIjp7Y29uc3QgQT10aGlzLnJ1bnRpbWUudGFyZ2V0cztpZighQSlyZXR1cm4iW10iO2NvbnN0IGU9QS5maWx0ZXIoQT0+QS5pc09yaWdpbmFsKS5tYXAoQT0+QS52YXJpYWJsZXMpO3JldHVybiBlP0pTT04uc3RyaW5naWZ5KGUubWFwKEE9Pk9iamVjdC52YWx1ZXMoQSkpLm1hcChBPT5BLmZpbHRlcihBPT4ibGlzdCI9PT1BLnR5cGUpLm1hcChBPT5BLm5hbWUpKS5mbGF0KDEpKToiW10ifWNhc2UiaW4gdGhpcyBzcHJpdGUiOntjb25zdCBBPWUudGFyZ2V0O2lmKCFBKXJldHVybiJbXSI7Y29uc3QgdD1BLnZhcmlhYmxlcztyZXR1cm4gdD9KU09OLnN0cmluZ2lmeShPYmplY3QudmFsdWVzKHQpLmZpbHRlcihBPT4ibGlzdCI9PT1BLnR5cGUpLm1hcChBPT5BLm5hbWUpKToiW10ifWRlZmF1bHQ6cmV0dXJuIltdIn19Z2V0RnJhbWVSYXRlKCl7cmV0dXJuIGN9YWRkU291bmRVcmwoQSxlKXtjb25zdCB0PWUudGFyZ2V0LmlkO3JldHVybiBuZXcgUHJvbWlzZShlPT57ZmV0Y2goQS5VUkwpLnRoZW4oQT0+QS5hcnJheUJ1ZmZlcigpKS50aGVuKG49Pntjb25zdCBpPXRoaXMucnVudGltZS5zdG9yYWdlLHI9bmV3IGkuQXNzZXQoaS5Bc3NldFR5cGUuU291bmQsbnVsbCxpLkRhdGFGb3JtYXQuTVAzLG5ldyBVaW50OEFycmF5KG4pLCEwKTtlKHZtLmFkZFNvdW5kKHttZDU6ci5hc3NldElkKyIuIityLmRhdGFGb3JtYXQsYXNzZXQ6cixuYW1lOkEuTkFNRX0sdCkpfSkuY2F0Y2goZSl9KX1hZGRTcHJpdGVVcmwoQSl7cmV0dXJuIG5ldyBQcm9taXNlKGU9PntmZXRjaChBLlVSTCkudGhlbihBPT57QS5hcnJheUJ1ZmZlcigpLnRoZW4oQT0+e3ZtLmFkZFNwcml0ZShBKS5maW5hbGx5KGUpfSkuY2F0Y2goZSl9KS5jYXRjaChlKX0pfXZhcmlhYmxlc19jcmVhdGVWYXJpYWJsZShBLGUpe2NvbnN0IHQ9QS5OQU1FO3N3aXRjaChBLlNDT1BFKXtjYXNlImFsbCBzcHJpdGVzIjpyZXR1cm4gdGhpcy5ydW50aW1lLmNyZWF0ZU5ld0dsb2JhbFZhcmlhYmxlKHQpO2Nhc2UidGhpcyBzcHJpdGUiOnJldHVybiBlLnRhcmdldC5jcmVhdGVWYXJpYWJsZSh0aGlzLl9nZW5lcmF0ZVNjcmF0Y2hJZCgpLHQsIiIpfX12YXJpYWJsZXNfY3JlYXRlQ2xvdWRWYXJpYWJsZShBKXtjb25zdCBlPSLimIEgIi5jb25jYXQoQS5OQU1FKSx0PXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO2lmKCF0KXJldHVybjtjb25zdCBuPXRoaXMuX2dlbmVyYXRlU2NyYXRjaElkKCk7dC5jcmVhdGVWYXJpYWJsZShuLGUsIiIsITApfXZhcmlhYmxlc19jcmVhdGVMaXN0KEEsZSl7Y29uc3QgdD1BLk5BTUU7c3dpdGNoKEEuU0NPUEUpe2Nhc2UiYWxsIHNwcml0ZXMiOnJldHVybiB0aGlzLnJ1bnRpbWUuY3JlYXRlTmV3R2xvYmFsVmFyaWFibGUodCxudWxsLCJsaXN0Iik7Y2FzZSJ0aGlzIHNwcml0ZSI6cmV0dXJuIGUudGFyZ2V0LmNyZWF0ZVZhcmlhYmxlKHRoaXMuX2dlbmVyYXRlU2NyYXRjaElkKCksdCwibGlzdCIpfX12YXJpYWJsZXNfZ2V0VmFyaWFibGUoQSxlKXtjb25zdCB0PUEuTkFNRTtsZXQgbixpPSExO2lmKCJhbGwgc3ByaXRlcyI9PT1BLlNDT1BFKW49dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7ZWxzZSBpZigidGhpcyBzcHJpdGUiPT09QS5TQ09QRSluPWUudGFyZ2V0O2Vsc2V7aWYoImNsb3VkIiE9PUEuU0NPUEUpcmV0dXJuIiI7bj10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKSxpPSEwfWNvbnN0IHI9T2JqZWN0LnZhbHVlcyhuLnZhcmlhYmxlcykuZmlsdGVyKEE9PiJsaXN0IiE9PUEudHlwZSkuZmlsdGVyKEE9PkEuaXNDbG91ZD9TdHJpbmcoQS5uYW1lKS5yZXBsYWNlKCLimIEgIiwiIik9PT10OiFpJiZBLm5hbWU9PT10KTtpZighcilyZXR1cm4iIjtjb25zdCBvPXJbMF07cmV0dXJuIG8/by52YWx1ZToiIn12YXJpYWJsZXNfZ2V0TGlzdChBLGUpe2NvbnN0IHQ9QS5OQU1FO2xldCBuO2lmKCJhbGwgc3ByaXRlcyI9PT1BLlNDT1BFKW49dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7ZWxzZXtpZigidGhpcyBzcHJpdGUiIT09QS5TQ09QRSlyZXR1cm4iW10iO249ZS50YXJnZXR9Y29uc3QgaT1PYmplY3QudmFsdWVzKG4udmFyaWFibGVzKS5maWx0ZXIoQT0+Imxpc3QiPT09QS50eXBlKS5maWx0ZXIoQT0+QS5uYW1lPT09dCk7aWYoIWkpcmV0dXJuIltdIjtjb25zdCByPWlbMF07cmV0dXJuIHI/SlNPTi5zdHJpbmdpZnkoci52YWx1ZSk6IltdIn12YXJpYWJsZXNfZGVsZXRlVmFyaWFibGUoQSxlKXtjb25zdCB0PUEuTkFNRTtsZXQgbixpPSExO2lmKCJhbGwgc3ByaXRlcyI9PT1BLlNDT1BFKW49dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7ZWxzZSBpZigidGhpcyBzcHJpdGUiPT09QS5TQ09QRSluPWUudGFyZ2V0O2Vsc2V7aWYoImNsb3VkIiE9PUEuU0NPUEUpcmV0dXJuO249dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCksaT0hMH1jb25zdCByPU9iamVjdC52YWx1ZXMobi52YXJpYWJsZXMpLmZpbHRlcihBPT4ibGlzdCIhPT1BLnR5cGUpLmZpbHRlcihBPT5BLmlzQ2xvdWQ/U3RyaW5nKEEubmFtZSkucmVwbGFjZSgi4piBICIsIiIpPT09dDohaSYmQS5uYW1lPT09dCk7aWYoIXIpcmV0dXJuO2NvbnN0IG89clswXTtyZXR1cm4gbz9uLmRlbGV0ZVZhcmlhYmxlKG8uaWQpOnZvaWQgMH12YXJpYWJsZXNfZGVsZXRlTGlzdChBLGUpe2NvbnN0IHQ9QS5OQU1FO2xldCBuO2lmKCJhbGwgc3ByaXRlcyI9PT1BLlNDT1BFKW49dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7ZWxzZXtpZigidGhpcyBzcHJpdGUiIT09QS5TQ09QRSlyZXR1cm47bj1lLnRhcmdldH1jb25zdCBpPU9iamVjdC52YWx1ZXMobi52YXJpYWJsZXMpLmZpbHRlcihBPT4ibGlzdCI9PT1BLnR5cGUpLmZpbHRlcihBPT5BLm5hbWU9PT10KTtpZighaSlyZXR1cm47Y29uc3Qgcj1pWzBdO3JldHVybiByP24uZGVsZXRlVmFyaWFibGUoci5pZCk6dm9pZCAwfXZhcmlhYmxlc19leGlzdHNWYXJpYWJsZShBLGUpe2NvbnN0IHQ9QS5OQU1FO2xldCBuLGk9ITE7aWYoImFsbCBzcHJpdGVzIj09PUEuU0NPUEUpbj10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtlbHNlIGlmKCJ0aGlzIHNwcml0ZSI9PT1BLlNDT1BFKW49ZS50YXJnZXQ7ZWxzZXtpZigiY2xvdWQiIT09QS5TQ09QRSlyZXR1cm4hMTtuPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLGk9ITB9Y29uc3Qgcj1PYmplY3QudmFsdWVzKG4udmFyaWFibGVzKS5maWx0ZXIoQT0+Imxpc3QiIT09QS50eXBlKS5maWx0ZXIoQT0+QS5pc0Nsb3VkP1N0cmluZyhBLm5hbWUpLnJlcGxhY2UoIuKYgSAiLCIiKT09PXQ6IWkmJkEubmFtZT09PXQpO2lmKCFyKXJldHVybiExO3JldHVybiEhclswXX12YXJpYWJsZXNfZXhpc3RzTGlzdChBLGUpe2NvbnN0IHQ9QS5OQU1FO2xldCBuO2lmKCJhbGwgc3ByaXRlcyI9PT1BLlNDT1BFKW49dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk7ZWxzZXtpZigidGhpcyBzcHJpdGUiIT09QS5TQ09QRSlyZXR1cm4hMTtuPWUudGFyZ2V0fWNvbnN0IGk9T2JqZWN0LnZhbHVlcyhuLnZhcmlhYmxlcykuZmlsdGVyKEE9PiJsaXN0Ij09PUEudHlwZSkuZmlsdGVyKEE9PkEubmFtZT09PXQpO2lmKCFpKXJldHVybiExO3JldHVybiEhaVswXX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDQpLGk9dCgxKSxyPXQoMyksbz10KDI4KSxzPXtkZWZsYXRlOnQoMjc1KSxpbmZsYXRlOnQoMjc2KX0se3ZhbGlkYXRlQXJyYXk6YX09dCgxNCksQj1uZXcodCgyNSkpLGM9dCgyKSxnPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjgvOWhBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBQzhTVVJCVkRoUHBaUEJEWU13REVXaEp3NE1RemRnRzBiaTBBUERsSHVQWlJ2NlgyeFVhcUpXcEU4eTJQay9Ka1JKRlZuWHRWT01pcWRpZzV5eHptMUhKRFp1K2dXZXhxY1pEQ2p1cUh0Y1JvL2dmVGRSa2YyeXk3a0dNRzRpLzV3bEdZU1hPYnFMOU1Gc1JRdzA2QzB2b3E5Wmh4Y0hhc0g3bTRjVi9BVU5Ga3VMV0dnd1cxN0V6QjV3UEI5V24rYWFubW95c1ZHUkpBb3ZJNVBMeWRBcXpoN2wxbVdEQVVWMkpRRThuNVAzU09SbzN4VHhPak1Xcm5OVnZRQ2hHWlJwRXFuV1BRQUFBQUJKUlU1RXJrSmdnZz09IjtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5hdWRpb1BsYXllcj1uZXcgQXVkaW8sdGhpcy5pc0pTUGVybWlzc2lvbkdyYW50ZWQ9ITEsdGhpcy5pc0NhbWVyYVNjcmVlbnNob3RFbmFibGVkPSExLHRoaXMubW91c2VTY3JvbGxEZWx0YT17eDowLHk6MCx6OjB9LGFkZEV2ZW50TGlzdGVuZXIoIndoZWVsIixBPT57dGhpcy5tb3VzZVNjcm9sbERlbHRhLng9QS5kZWx0YVgsdGhpcy5tb3VzZVNjcm9sbERlbHRhLnk9QS5kZWx0YVksdGhpcy5tb3VzZVNjcm9sbERlbHRhLno9QS5kZWx0YVp9KSxzZXRJbnRlcnZhbCgoKT0+e3RoaXMubW91c2VTY3JvbGxEZWx0YT17eDowLHk6MCx6OjB9fSw2NSksdGhpcy5lbmNvZGVDaGFyYWN0ZXJMZW5ndGg9Nn1kZXNlcmlhbGl6ZSgpe3RoaXMuaXNKU1Blcm1pc3Npb25HcmFudGVkPSExLHRoaXMuaXNDYW1lcmFTY3JlZW5zaG90RW5hYmxlZD0hMX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ1ByaXNtIixuYW1lOiJQcmlzbSIsY29sb3IxOiIjQkM3RkZGIixjb2xvcjI6IiNBRDY2RkYiLGJsb2Nrczpbe29wY29kZToicGxheUF1ZGlvRnJvbVVybCIsdGV4dDpuKHtpZDoiamdQcmlzbS5ibG9ja3MucGxheUF1ZGlvRnJvbVVybCIsZGVmYXVsdDoicGxheSBhdWRpbyBmcm9tIFtVUkxdIixkZXNjcmlwdGlvbjoiUGxheXMgc291bmQgZnJvbSBhIFVSTC4ifSksYmxvY2tUeXBlOmkuQ09NTUFORCxoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntVUkw6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJodHRwczovL2V4dGVuc2lvbnMudHVyYm93YXJwLm9yZy9tZW93Lm1wMyJ9fX0se29wY29kZToic2V0QXVkaW9Ub0xvb3BpbmciLHRleHQ6bih7aWQ6ImpnUHJpc20uYmxvY2tzLnNldEF1ZGlvVG9Mb29waW5nIixkZWZhdWx0OiJzZXQgYXVkaW8gdG8gbG9vcCIsZGVzY3JpcHRpb246IlNldHMgdGhlIGF1ZGlvIHRvIGJlIGxvb3BpbmcuIn0pLGhpZGVGcm9tUGFsZXR0ZTohMCxibG9ja1R5cGU6aS5DT01NQU5EfSx7b3Bjb2RlOiJzZXRBdWRpb1RvTm90TG9vcGluZyIsdGV4dDpuKHtpZDoiamdQcmlzbS5ibG9ja3Muc2V0QXVkaW9Ub05vdExvb3BpbmciLGRlZmF1bHQ6InNldCBhdWRpbyB0byBub3QgbG9vcCIsZGVzY3JpcHRpb246IlNldHMgdGhlIGF1ZGlvIHRvIG5vdCBiZSBsb29waW5nLiJ9KSxoaWRlRnJvbVBhbGV0dGU6ITAsYmxvY2tUeXBlOmkuQ09NTUFORH0se29wY29kZToicGF1c2VBdWRpbyIsdGV4dDpuKHtpZDoiamdQcmlzbS5ibG9ja3MucGF1c2VBdWRpbyIsZGVmYXVsdDoicGF1c2UgYXVkaW8iLGRlc2NyaXB0aW9uOiJQYXVzZXMgdGhlIGF1ZGlvIHBsYXllci4ifSksaGlkZUZyb21QYWxldHRlOiEwLGJsb2NrVHlwZTppLkNPTU1BTkR9LHtvcGNvZGU6InBsYXlBdWRpbyIsdGV4dDpuKHtpZDoiamdQcmlzbS5ibG9ja3MucGxheUF1ZGlvIixkZWZhdWx0OiJyZXN1bWUgYXVkaW8iLGRlc2NyaXB0aW9uOiJSZXN1bWVzIHRoZSBhdWRpbyBwbGF5ZXIuIn0pLGhpZGVGcm9tUGFsZXR0ZTohMCxibG9ja1R5cGU6aS5DT01NQU5EfSx7b3Bjb2RlOiJzZXRBdWRpb1BsYXliYWNrU3BlZWQiLHRleHQ6bih7aWQ6ImpnUHJpc20uYmxvY2tzLnNldEF1ZGlvUGxheWJhY2tTcGVlZCIsZGVmYXVsdDoic2V0IGF1ZGlvIHNwZWVkIHRvIFtTUEVFRF0lIixkZXNjcmlwdGlvbjoiU2V0cyB0aGUgc3BlZWQgb2YgdGhlIGF1ZGlvIHBsYXllci4ifSksaGlkZUZyb21QYWxldHRlOiEwLGJsb2NrVHlwZTppLkNPTU1BTkQsYXJndW1lbnRzOntTUEVFRDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfX19LHtvcGNvZGU6ImdldEF1ZGlvUGxheWJhY2tTcGVlZCIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5nZXRBdWRpb1BsYXliYWNrU3BlZWQiLGRlZmF1bHQ6ImF1ZGlvIHNwZWVkIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHRoZSBwbGF5YmFjayBzcGVlZCBvZiB0aGUgYXVkaW8gcGxheWVyLiJ9KSxoaWRlRnJvbVBhbGV0dGU6ITAsZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtvcGNvZGU6InNldEF1ZGlvUG9zaXRpb24iLHRleHQ6bih7aWQ6ImpnUHJpc20uYmxvY2tzLnNldEF1ZGlvUG9zaXRpb24iLGRlZmF1bHQ6InNldCBhdWRpbyBwb3NpdGlvbiB0byBbUE9TSVRJT05dIHNlY29uZHMiLGRlc2NyaXB0aW9uOiJTZXRzIHRoZSBwb3NpdGlvbiBvZiB0aGUgY3VycmVudCBhdWRpbyBpbiB0aGUgYXVkaW8gcGxheWVyLiJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGhpZGVGcm9tUGFsZXR0ZTohMCxhcmd1bWVudHM6e1BPU0lUSU9OOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTo1fX19LHtvcGNvZGU6ImdldEF1ZGlvUG9zaXRpb24iLHRleHQ6ImF1ZGlvIHBvc2l0aW9uIixkaXNhYmxlTW9uaXRvcjohMSxoaWRlRnJvbVBhbGV0dGU6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtvcGNvZGU6InNldEF1ZGlvVm9sdW1lIix0ZXh0Om4oe2lkOiJqZ1ByaXNtLmJsb2Nrcy5zZXRBdWRpb1ZvbHVtZSIsZGVmYXVsdDoic2V0IGF1ZGlvIHZvbHVtZSB0byBbVk9MVU1FXSUiLGRlc2NyaXB0aW9uOiJTZXRzIHRoZSB2b2x1bWUgb2YgdGhlIGN1cnJlbnQgYXVkaW8gaW4gdGhlIGF1ZGlvIHBsYXllci4ifSksYmxvY2tUeXBlOmkuQ09NTUFORCxoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntWT0xVTUU6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH19fSx7b3Bjb2RlOiJnZXRBdWRpb1ZvbHVtZSIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5nZXRBdWRpb1ZvbHVtZSIsZGVmYXVsdDoiYXVkaW8gdm9sdW1lIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHRoZSB2b2x1bWUgb2YgdGhlIGF1ZGlvIHBsYXllci4ifSksZGlzYWJsZU1vbml0b3I6ITEsaGlkZUZyb21QYWxldHRlOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7YmxvY2tUeXBlOmkuTEFCRUwsdGV4dDoiRGF0YSBVUklzIn0se29wY29kZToic2NyZWVuc2hvdFN0YWdlIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLnNjcmVlbnNob3RTdGFnZSIsZGVmYXVsdDoic2NyZWVuc2hvdCB0aGUgc3RhZ2UiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHNjcmVlbnNob3RzIHRoZSBzdGFnZSBhbmQgcmV0dXJucyBhIERhdGEgVVJJIG9mIGl0LiJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMH0se29wY29kZToiZGF0YVVyaU9mQ29zdHVtZSIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5kYXRhVXJpT2ZDb3N0dW1lIixkZWZhdWx0OiJkYXRhIHVybCBvZiBjb3N0dW1lICNbSU5ERVhdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIGEgRGF0YSBVUkkgb2YgdGhlIGNvc3R1bWUgYXQgdGhlIGluZGV4LiJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e0lOREVYOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9fX0se29wY29kZToiZGF0YVVyaUZyb21JbWFnZVVybCIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5kYXRhVXJpRnJvbUltYWdlVXJsIixkZWZhdWx0OiJkYXRhIHVybCBvZiBpbWFnZSBhdCB1cmw6IFtVUkxdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIGEgRGF0YSBVUkkgb2YgdGhlIGNvbnRlbnQgZmV0Y2hlZCBmcm9tIHRoZSBVUkwuIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7VVJMOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToidXJsIn19fSx7b3Bjb2RlOiJkYXRhVXJpRnJvbUFycmF5QnVmZmVyIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmRhdGFVcmlGcm9tQXJyYXlCdWZmZXIiLGRlZmF1bHQ6ImNvbnZlcnQgYXJyYXkgYnVmZmVyIFtCVUZGRVJdIHRvIGRhdGEgdXJsIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIGEgRGF0YSBVUkkgZnJvbSBhbiBhcnJheSBidWZmZXIuIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7QlVGRkVSOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiWzcyLDEwMSwxMDgsMTA4LDExMV0ifX19LHtvcGNvZGU6ImFycmF5QnVmZmVyRnJvbURhdGFVcmkiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuYXJyYXlCdWZmZXJGcm9tRGF0YVVyaSIsZGVmYXVsdDoiY29udmVydCBkYXRhIHVybCBbVVJMXSB0byBhcnJheSBidWZmZXIiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgYW4gYXJyYXkgYnVmZmVyIGZyb20gYSBEYXRhIFVSTC4ifSksYmxvY2tUeXBlOmkuUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntVUkw6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJkYXRhOnRleHQvcGxhaW47YmFzZTY0LFNHVnNiRzg9In19fSx7b3Bjb2RlOiJjdXJyZW50TW91c2VTY3JvbGxYIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmN1cnJlbnRNb3VzZVNjcm9sbFgiLGRlZmF1bHQ6Im1vdXNlIHNjcm9sbCB4IixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksZGlzYWJsZU1vbml0b3I6ITEsaGlkZUZyb21QYWxldHRlOiEwLGJsb2NrSWNvblVSSTpnLGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJjdXJyZW50TW91c2VTY3JvbGwiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuY3VycmVudE1vdXNlU2Nyb2xsIixkZWZhdWx0OiJtb3VzZSBzY3JvbGwgeSIsZGVzY3JpcHRpb246ImltIHRvbyBsYXp5IHRvIHdyaXRlIHRoZXNlIGFueW1vcmUgdGJoIn0pLGRpc2FibGVNb25pdG9yOiExLGhpZGVGcm9tUGFsZXR0ZTohMCxibG9ja0ljb25VUkk6ZyxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiY3VycmVudE1vdXNlU2Nyb2xsWiIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5jdXJyZW50TW91c2VTY3JvbGxaIixkZWZhdWx0OiJtb3VzZSBzY3JvbGwgeiIsZGVzY3JpcHRpb246ImltIHRvbyBsYXp5IHRvIHdyaXRlIHRoZXNlIGFueW1vcmUgdGJoIn0pLGRpc2FibGVNb25pdG9yOiExLGhpZGVGcm9tUGFsZXR0ZTohMCxibG9ja0ljb25VUkk6ZyxibG9ja1R5cGU6aS5SRVBPUlRFUn0se2Jsb2NrVHlwZTppLkxBQkVMLHRleHQ6IkJhc2U2NCJ9LHtvcGNvZGU6ImJhc2U2NEVuY29kZSIsdGV4dDpuKHtpZDoiamdSdW50aW1lLmJsb2Nrcy5iYXNlNjRFbmNvZGUiLGRlZmF1bHQ6ImJhc2U2NCBlbmNvZGUgW1RFWFRdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCBlbmNvZGVzIGFuZCByZXR1cm5zIHRoZSByZXN1bHQgb2YgaXQuIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7VEVYVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImFiYyJ9fX0se29wY29kZToiYmFzZTY0RGVjb2RlIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmJhc2U2NERlY29kZSIsZGVmYXVsdDoiYmFzZTY0IGRlY29kZSBbVEVYVF0iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IGRlY29kZXMgYW5kIHJldHVybnMgdGhlIHJlc3VsdCBvZiBpdC4ifSksYmxvY2tUeXBlOmkuUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntURVhUOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiWVdKaiJ9fX0se29wY29kZToiZnJvbUNoYXJhY3RlckNvZGVTdHJpbmciLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuZnJvbUNoYXJhY3RlckNvZGVTdHJpbmciLGRlZmF1bHQ6ImNoYXJhY3RlciBmcm9tIGNoYXJhY3RlciBjb2RlIFtURVhUXSIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgZGVjb2RlcyBhbmQgcmV0dXJucyB0aGUgcmVzdWx0IG9mIGl0LiJ9KSxibG9ja1R5cGU6aS5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMCxoaWRlRnJvbVBhbGV0dGU6ITAsYmxvY2tJY29uVVJJOmcsYXJndW1lbnRzOntURVhUOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTo5N319fSx7b3Bjb2RlOiJ0b0NoYXJhY3RlckNvZGVTdHJpbmciLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MudG9DaGFyYWN0ZXJDb2RlU3RyaW5nIixkZWZhdWx0OiJjaGFyYWN0ZXIgY29kZSBvZiBbVEVYVF0iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IGVuY29kZXMgYW5kIHJldHVybnMgdGhlIHJlc3VsdCBvZiBpdC4ifSksYmxvY2tUeXBlOmkuUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsaGlkZUZyb21QYWxldHRlOiEwLGJsb2NrSWNvblVSSTpnLGFyZ3VtZW50czp7VEVYVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImEifX19LCItLS0iLCItLS0iLHtibG9ja1R5cGU6aS5MQUJFTCx0ZXh0OiJKUyBEZWZsYXRlIGJ5IEJlYXRHYW1taXQifSx7b3Bjb2RlOiJsaWJfZGVmbGF0ZV9kZWZsYXRlQXJyYXkiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MubGliX2RlZmxhdGVfZGVmbGF0ZUFycmF5IixkZWZhdWx0OiJkZWZsYXRlIFtBUlJBWV0iLGRlc2NyaXB0aW9uOiJhYmMifSksYmxvY2tUeXBlOmkuUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntBUlJBWTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IltdIn19fSx7b3Bjb2RlOiJsaWJfZGVmbGF0ZV9pbmZsYXRlQXJyYXkiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MubGliX2RlZmxhdGVfaW5mbGF0ZUFycmF5IixkZWZhdWx0OiJpbmZsYXRlIFtBUlJBWV0iLGRlc2NyaXB0aW9uOiJhYmMifSksYmxvY2tUeXBlOmkuUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntBUlJBWTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IltdIn19fSx7YmxvY2tUeXBlOmkuTEFCRUwsdGV4dDoiTnVtZXJpY2FsIEVuY29kaW5nIGJ5IGNzMjYyNzg4MyJ9LHtvcGNvZGU6Ik51bWVyaWNhbEVuY29kZSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsdGV4dDoiZW5jb2RlIFtEQVRBXSB0byBudW1iZXIiLGFyZ3VtZW50czp7REFUQTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IkhlbGxvISJ9fX0se29wY29kZToiTnVtZXJpY2FsRGVjb2RlIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJkZWNvZGUgW0VOQ09ERURdIGZyb20gbnVtYmVyIixhcmd1bWVudHM6e0VOQ09ERUQ6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiIwMDAwNzIwMDAxMDEwMDAxMDgwMDAxMDgwMDAxMTEwMDAwMzMifX19LHtvcGNvZGU6ImV2YWx1YXRlIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmV2YWx1YXRlIixkZWZhdWx0OiJldmFsIFtKQVZBU0NSSVBUXSIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcnVucyBKYXZhU2NyaXB0IGNvZGUuIn0pLGJsb2NrVHlwZTppLkNPTU1BTkQsYmxvY2tJY29uVVJJOmcsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7SkFWQVNDUklQVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImNvbnNvbGUubG9nKCdIZWxsbyEnKSJ9fX0se29wY29kZToiZXZhbHVhdGUyIix0ZXh0Om4oe2lkOiJqZ1J1bnRpbWUuYmxvY2tzLmV2YWx1YXRlMiIsZGVmYXVsdDoiZXZhbCBbSkFWQVNDUklQVF0iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJ1bnMgSmF2YVNjcmlwdCBjb2RlIGFuZCByZXR1cm5zIHRoZSByZXN1bHQgb2YgaXQuIn0pLGJsb2NrVHlwZTppLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrSWNvblVSSTpnLGhpZGVGcm9tUGFsZXR0ZTohMCxhcmd1bWVudHM6e0pBVkFTQ1JJUFQ6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJNYXRoLnJhbmRvbSgpIn19fSx7b3Bjb2RlOiJldmFsdWF0ZTMiLHRleHQ6bih7aWQ6ImpnUnVudGltZS5ibG9ja3MuZXZhbHVhdGUzIixkZWZhdWx0OiJldmFsIFtKQVZBU0NSSVBUXSIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcnVucyBKYXZhU2NyaXB0IGNvZGUuIn0pLGJsb2NrVHlwZTppLkhBVCxibG9ja0ljb25VUkk6ZyxoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntKQVZBU0NSSVBUOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiTWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKSA9PSAxIn19fV19fXBsYXlBdWRpb0Zyb21VcmwoQSl7dGhpcy5hdWRpb1BsYXllcnx8KHRoaXMuYXVkaW9QbGF5ZXI9bmV3IEF1ZGlvKSx0aGlzLmF1ZGlvUGxheWVyLnBhdXNlKCksdGhpcy5hdWRpb1BsYXllci5zcmM9IiIuY29uY2F0KEEuVVJMKSx0aGlzLmF1ZGlvUGxheWVyLmN1cnJlbnRUaW1lPTAsdGhpcy5hdWRpb1BsYXllci5wbGF5KCl9c2V0QXVkaW9Ub0xvb3BpbmcoKXt0aGlzLmF1ZGlvUGxheWVyLmxvb3A9ITB9c2V0QXVkaW9Ub05vdExvb3BpbmcoKXt0aGlzLmF1ZGlvUGxheWVyLmxvb3A9ITF9cGF1c2VBdWRpbygpe3RoaXMuYXVkaW9QbGF5ZXIucGF1c2UoKX1wbGF5QXVkaW8oKXt0aGlzLmF1ZGlvUGxheWVyLnBsYXkoKX1zZXRBdWRpb1BsYXliYWNrU3BlZWQoQSl7dGhpcy5hdWRpb1BsYXllci5wbGF5YmFja1JhdGU9KGlzTmFOKE51bWJlcihBLlNQRUVEKSk/MTAwOk51bWJlcihBLlNQRUVEKSkvMTAwfWdldEF1ZGlvUGxheWJhY2tTcGVlZCgpe3JldHVybiAxMDAqdGhpcy5hdWRpb1BsYXllci5wbGF5YmFja1JhdGV9c2V0QXVkaW9Qb3NpdGlvbihBKXt0aGlzLmF1ZGlvUGxheWVyLmN1cnJlbnRUaW1lPWlzTmFOKE51bWJlcihBLlBPU0lUSU9OKSk/MDpOdW1iZXIoQS5QT1NJVElPTil9Z2V0QXVkaW9Qb3NpdGlvbigpe3JldHVybiB0aGlzLmF1ZGlvUGxheWVyLmN1cnJlbnRUaW1lfXNldEF1ZGlvVm9sdW1lKEEpe3RoaXMuYXVkaW9QbGF5ZXIudm9sdW1lPShpc05hTihOdW1iZXIoQS5WT0xVTUUpKT8xMDA6TnVtYmVyKEEuVk9MVU1FKSkvMTAwfWdldEF1ZGlvVm9sdW1lKCl7cmV0dXJuIDEwMCp0aGlzLmF1ZGlvUGxheWVyLnZvbHVtZX1ldmFsdWF0ZShBLGUsdCl7cmV0dXJuIG5ldyBQcm9taXNlKChlLHQpPT57by5leGVjdXRlKFN0cmluZyhBLkpBVkFTQ1JJUFQpKS50aGVuKEE9PntpZighQS5zdWNjZXNzKXJldHVybiBhbGVydChBLnZhbHVlKSx2b2lkIGNvbnNvbGUuZXJyb3IoQS52YWx1ZSk7ZShBLnZhbHVlKX0pfSl9ZXZhbHVhdGUyKEEsZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoKGUsdCk9PntvLmV4ZWN1dGUoU3RyaW5nKEEuSkFWQVNDUklQVCkpLnRoZW4oQT0+e0Euc3VjY2Vzc3x8Y29uc29sZS5lcnJvcihBLnZhbHVlKSxlKEEudmFsdWUpfSl9KX1ldmFsdWF0ZTMoQSxlLHQpe3JldHVybiBuZXcgUHJvbWlzZSgoZSx0KT0+e28uZXhlY3V0ZShTdHJpbmcoQS5KQVZBU0NSSVBUKSkudGhlbihBPT57QS5zdWNjZXNzfHxjb25zb2xlLmVycm9yKEEudmFsdWUpLGUoITA9PT1BLnZhbHVlKX0pfSl9c2NyZWVuc2hvdFN0YWdlKCl7cmV0dXJuIHRoaXMucnVudGltZS5wcmlzbV9zY3JlZW5zaG90X2NoZWNrRm9yRXh0ZXJuYWxDYW52YXMmJnRoaXMucnVudGltZS5wcmlzbV9zY3JlZW5zaG90X2V4dGVybmFsQ2FudmFzP3RoaXMucnVudGltZS5wcmlzbV9zY3JlZW5zaG90X2V4dGVybmFsQ2FudmFzLnRvRGF0YVVSTCgpOm5ldyBQcm9taXNlKEE9Pnt2bS5yZW5kZXJlci5yZXF1ZXN0U25hcHNob3QoZT0+e0EoZSl9KX0pfWRhdGFVcmlPZkNvc3R1bWUoQSxlKXtjb25zdCB0PU51bWJlcihBLklOREVYKTtpZihpc05hTih0KSlyZXR1cm4iIjtpZih0PDEpcmV0dXJuIiI7Y29uc3Qgbj1lLnRhcmdldDtpZih2b2lkIDA9PT1uLnNwcml0ZS5jb3N0dW1lc1t0LTFdfHxudWxsPT09bi5zcHJpdGUuY29zdHVtZXNbdC0xXSlyZXR1cm4iIjtjb25zdCBpPW4uc3ByaXRlLmNvc3R1bWVzW3QtMV0uYXNzZXQuZW5jb2RlRGF0YVVSSSgpO3JldHVybiBTdHJpbmcoaSl9ZGF0YVVyaUZyb21JbWFnZVVybChBKXtyZXR1cm4gbmV3IFByb21pc2UoZT0+d2luZG93JiYhd2luZG93LkZpbGVSZWFkZXJ8fHdpbmRvdyYmIXdpbmRvdy5mZXRjaD9lKCIiKTp2b2lkIGZldGNoKCJodHRwczovL2FwaS5hbGxvcmlnaW5zLndpbi9yYXc/dXJsPSIuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoQS5VUkwpKSkpLnRoZW4oQT0+e0EuYmxvYigpLnRoZW4oQT0+e2NvbnN0IHQ9bmV3IEZpbGVSZWFkZXI7dC5vbmxvYWQ9QT0+e2UoQS50YXJnZXQucmVzdWx0KX0sdC5yZWFkQXNEYXRhVVJMKEEpfSkuY2F0Y2goKCk9PntlKCIiKX0pfSkuY2F0Y2goKCk9PntlKCIiKX0pKX1kYXRhVXJpRnJvbUFycmF5QnVmZmVyKEEpe2NvbnN0IGU9YShBLkJVRkZFUik7aWYoIWUuaXNWYWxpZClyZXR1cm4iZGF0YTp0ZXh0L3BsYWluO2Jhc2U2NCwiO2NvbnN0IHQ9Qi5hcnJheVRvQnVmZmVyKGUuYXJyYXkpO2xldCBuPSIiLGk9bmV3IFVpbnQ4QXJyYXkodCkscj1pLmJ5dGVMZW5ndGg7Zm9yKGxldCBBPTA7QTxyO0ErKyluKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGlbQV0pO3JldHVybiJkYXRhOmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTtiYXNlNjQsIi5jb25jYXQoYnRvYShuKSl9YXJyYXlCdWZmZXJGcm9tRGF0YVVyaShBKXtjb25zdCBlPWMudG9TdHJpbmcoQS5VUkwpO3JldHVybiBuZXcgUHJvbWlzZShBPT57ZmV0Y2goZSkudGhlbihlPT57ZS5hcnJheUJ1ZmZlcigpLnRoZW4oZT0+e2NvbnN0IHQ9Qi5idWZmZXJUb0FycmF5KGUpO0EoSlNPTi5zdHJpbmdpZnkodCkpfSkuY2F0Y2goKCk9PntBKCJbXSIpfSl9KS5jYXRjaCgoKT0+e0EoIltdIil9KX0pfWN1cnJlbnRNb3VzZVNjcm9sbFgoKXtyZXR1cm4gdGhpcy5tb3VzZVNjcm9sbERlbHRhLnh9Y3VycmVudE1vdXNlU2Nyb2xsKCl7cmV0dXJuIHRoaXMubW91c2VTY3JvbGxEZWx0YS55fWN1cnJlbnRNb3VzZVNjcm9sbFooKXtyZXR1cm4gdGhpcy5tb3VzZVNjcm9sbERlbHRhLnp9YmFzZTY0RW5jb2RlKEEpe2xldCBlPSIiO3RyeXtlPWJ0b2EoU3RyaW5nKEEuVEVYVCkpfWNhdGNoKEEpe31yZXR1cm4gZX1iYXNlNjREZWNvZGUoQSl7bGV0IGU9IiI7dHJ5e2U9YXRvYihTdHJpbmcoQS5URVhUKSl9Y2F0Y2goQSl7fXJldHVybiBlfWZyb21DaGFyYWN0ZXJDb2RlU3RyaW5nKEEpe3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKEEuVEVYVCl9dG9DaGFyYWN0ZXJDb2RlU3RyaW5nKEEpe3JldHVybiBTdHJpbmcoQS5URVhUKS5jaGFyQ29kZUF0KDApfWxpYl9kZWZsYXRlX2RlZmxhdGVBcnJheShBKXtjb25zdCBlPWEoQS5BUlJBWSkuYXJyYXk7cmV0dXJuIEpTT04uc3RyaW5naWZ5KHMuZGVmbGF0ZShlKSl9bGliX2RlZmxhdGVfaW5mbGF0ZUFycmF5KEEpe2NvbnN0IGU9YShBLkFSUkFZKS5hcnJheTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkocy5pbmZsYXRlKGUpKX1OdW1lcmljYWxFbmNvZGUoQSl7Y29uc3QgZT1TdHJpbmcoQS5EQVRBKTtsZXQgdD0iIjtmb3IobGV0IEE9MDtBPGUubGVuZ3RoOysrQSl7bGV0IG49U3RyaW5nKGUuY2hhckNvZGVBdChBKSk7bj0iMCIucmVwZWF0KHRoaXMuZW5jb2RlQ2hhcmFjdGVyTGVuZ3RoLW4ubGVuZ3RoKStuLHQrPW59cmV0dXJuIHR9TnVtZXJpY2FsRGVjb2RlKEEpe2NvbnN0IGU9U3RyaW5nKEEuRU5DT0RFRCk7aWYoIiI9PWUpcmV0dXJuIiI7bGV0IHQ9IiI7Y29uc3Qgbj1uZXcgUmVnRXhwKCIuezEsIit0aGlzLmVuY29kZUNoYXJhY3Rlckxlbmd0aCsifSIsImciKTtsZXQgaT1lLm1hdGNoKG4pO2ZvcihsZXQgQT0wO0E8aS5sZW5ndGg7QSsrKXt0Kz1TdHJpbmcuZnJvbUNoYXJDb2RlKGlbQV0pfXJldHVybiB0fX19LGZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIsbyxzLGEsQixjLGcsRSxRLHUsbCxoLHcsQyxJLE0sZCxwLG0sRixELFksZixOLFUseSxULHgsUixHLFMsYixILHYsayxqLEoseixMLFAsTyxWLFcsSyxYLFosXyxxLCQsQUEsZUEsdEEsbkEsaUE9cGFyc2VJbnQoMTcvMywxMCksckE9bnVsbDtmdW5jdGlvbiBvQSgpe3RoaXMuZmM9MCx0aGlzLmRsPTB9ZnVuY3Rpb24gc0EoKXt0aGlzLmR5bl90cmVlPW51bGwsdGhpcy5zdGF0aWNfdHJlZT1udWxsLHRoaXMuZXh0cmFfYml0cz1udWxsLHRoaXMuZXh0cmFfYmFzZT0wLHRoaXMuZWxlbXM9MCx0aGlzLm1heF9sZW5ndGg9MCx0aGlzLm1heF9jb2RlPTB9ZnVuY3Rpb24gYUEoQSxlLHQsbil7dGhpcy5nb29kX2xlbmd0aD1BLHRoaXMubWF4X2xhenk9ZSx0aGlzLm5pY2VfbGVuZ3RoPXQsdGhpcy5tYXhfY2hhaW49bn1mdW5jdGlvbiBCQSgpe3RoaXMubmV4dD1udWxsLHRoaXMubGVuPTAsdGhpcy5wdHI9W10sdGhpcy5vZmY9MH12YXIgY0E9WzAsMCwwLDAsMCwwLDAsMCwxLDEsMSwxLDIsMiwyLDIsMywzLDMsMyw0LDQsNCw0LDUsNSw1LDUsMF0sZ0E9WzAsMCwwLDAsMSwxLDIsMiwzLDMsNCw0LDUsNSw2LDYsNyw3LDgsOCw5LDksMTAsMTAsMTEsMTEsMTIsMTIsMTMsMTNdLEVBPVswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIsMyw3XSxRQT1bMTYsMTcsMTgsMCw4LDcsOSw2LDEwLDUsMTEsNCwxMiwzLDEzLDIsMTQsMSwxNV0sdUE9W25ldyBhQSgwLDAsMCwwKSxuZXcgYUEoNCw0LDgsNCksbmV3IGFBKDQsNSwxNiw4KSxuZXcgYUEoNCw2LDMyLDMyKSxuZXcgYUEoNCw0LDE2LDE2KSxuZXcgYUEoOCwxNiwzMiwzMiksbmV3IGFBKDgsMTYsMTI4LDEyOCksbmV3IGFBKDgsMzIsMTI4LDI1NiksbmV3IGFBKDMyLDEyOCwyNTgsMTAyNCksbmV3IGFBKDMyLDI1OCwyNTgsNDA5NildO2Z1bmN0aW9uIGxBKEEpe0EubmV4dD10LHQ9QX1mdW5jdGlvbiBoQShBKXtyZXR1cm4gRVszMjc2OCtBXX1mdW5jdGlvbiB3QShBLGUpe3JldHVybiBFWzMyNzY4K0FdPWV9ZnVuY3Rpb24gQ0EoQSl7ckFbcytvKytdPUEscytvPT09ODE5MiYmZnVuY3Rpb24oKXt2YXIgQSxlO2lmKDAhPT1vKXtmb3IobnVsbCE9PXQ/KHI9dCx0PXQubmV4dCk6cj1uZXcgQkEsci5uZXh0PW51bGwsci5sZW49ci5vZmY9MCxBPXIsbnVsbD09PW4/bj1pPUE6aT1pLm5leHQ9QSxBLmxlbj1vLXMsZT0wO2U8QS5sZW47ZSsrKUEucHRyW2VdPXJBW3MrZV07bz1zPTB9dmFyIHJ9KCl9ZnVuY3Rpb24gSUEoQSl7QSY9NjU1MzUscytvPDgxOTA/KHJBW3MrbysrXT0yNTUmQSxyQVtzK28rK109QT4+PjgpOihDQSgyNTUmQSksQ0EoQT4+PjgpKX1mdW5jdGlvbiBNQSgpe2g9MzI3NjcmKGg8PGlBXjI1NSZCW3ArMy0xXSksdz1oQShoKSxFWzMyNzY3JnBdPXcsd0EoaCxwKX1mdW5jdGlvbiBkQShBLGUpe2tBKGVbQV0uZmMsZVtBXS5kbCl9ZnVuY3Rpb24gcEEoQSl7cmV0dXJuIDI1NSYoQTwyNTY/T1tBXTpPWzI1NisoQT4+NyldKX1mdW5jdGlvbiBtQShBLGUsdCl7cmV0dXJuIEFbZV0uZmM8QVt0XS5mY3x8QVtlXS5mYz09PUFbdF0uZmMmJkxbZV08PUxbdF19ZnVuY3Rpb24gRkEoQSxlLHQpe3ZhciBuO2ZvcihuPTA7bjx0JiZuQTx0QS5sZW5ndGg7bisrKUFbZStuXT0yNTUmdEFbbkErK107cmV0dXJuIG59ZnVuY3Rpb24gREEoQSl7dmFyIGUsdCxuLGkscj1ZLG89cCxzPWQsYT1wPjMyNTA2P3AtMzI1MDY6MCxjPXArMjU4LGc9QltvK3MtMV0sUT1CW28rc107ZD49VSYmKHI+Pj0yKTtkb3tpZihCWyhlPUEpK3NdPT09USYmQltlK3MtMV09PT1nJiZCW2VdPT09QltvXSYmQlsrK2VdPT09QltvKzFdKXtmb3Iobys9MixlKys7bzxjOyl7Zm9yKGk9ITEsbj0wO248ODtuKz0xKWlmKGUrPTEsQltvKz0xXSE9PUJbZV0pe2k9ITA7YnJlYWt9aWYoaSlicmVha31pZih0PTI1OC0oYy1vKSxvPWMtMjU4LHQ+cyl7aWYobT1BLHM9dCx0Pj15KWJyZWFrO2c9QltvK3MtMV0sUT1CW28rc119fX13aGlsZSgoQT1FWzMyNzY3JkFdKT5hJiYwIT0tLXIpO3JldHVybiBzfWZ1bmN0aW9uIFlBKCl7dmFyIEEsZSx0PTY1NTM2LUQtcDtpZigtMT09PXQpdC0tO2Vsc2UgaWYocD49NjUyNzQpe2ZvcihBPTA7QTwzMjc2ODtBKyspQltBXT1CW0ErMzI3NjhdO2ZvcihtLT0zMjc2OCxwLT0zMjc2OCxsLT0zMjc2OCxBPTA7QTwzMjc2ODtBKyspd0EoQSwoZT1oQShBKSk+PTMyNzY4P2UtMzI3Njg6MCk7Zm9yKEE9MDtBPDMyNzY4O0ErKyllPUVbQV0sRVtBXT1lPj0zMjc2OD9lLTMyNzY4OjA7dCs9MzI3Njh9Rnx8KChBPUZBKEIscCtELHQpKTw9MD9GPSEwOkQrPUEpfWZ1bmN0aW9uIGZBKCl7Rnx8KFE9MCx1PTAsZnVuY3Rpb24oKXt2YXIgQSxlLHQsbixpO2lmKDAhPT1HWzBdLmRsKXJldHVybjtmb3IoYi5keW5fdHJlZT1ULGIuc3RhdGljX3RyZWU9UixiLmV4dHJhX2JpdHM9Y0EsYi5leHRyYV9iYXNlPTI1NyxiLmVsZW1zPTI4NixiLm1heF9sZW5ndGg9MTUsYi5tYXhfY29kZT0wLEguZHluX3RyZWU9eCxILnN0YXRpY190cmVlPUcsSC5leHRyYV9iaXRzPWdBLEguZXh0cmFfYmFzZT0wLEguZWxlbXM9MzAsSC5tYXhfbGVuZ3RoPTE1LEgubWF4X2NvZGU9MCx2LmR5bl90cmVlPVMsdi5zdGF0aWNfdHJlZT1udWxsLHYuZXh0cmFfYml0cz1FQSx2LmV4dHJhX2Jhc2U9MCx2LmVsZW1zPTE5LHYubWF4X2xlbmd0aD03LHYubWF4X2NvZGU9MCx0PTAsbj0wO248Mjg7bisrKWZvcihWW25dPXQsQT0wO0E8MTw8Y0Fbbl07QSsrKVBbdCsrXT1uO2ZvcihQW3QtMV09bixpPTAsbj0wO248MTY7bisrKWZvcihXW25dPWksQT0wO0E8MTw8Z0Fbbl07QSsrKU9baSsrXT1uO2ZvcihpPj49NztuPDMwO24rKylmb3IoV1tuXT1pPDw3LEE9MDtBPDE8PGdBW25dLTc7QSsrKU9bMjU2K2krK109bjtmb3IoZT0wO2U8PTE1O2UrKylrW2VdPTA7QT0wO2Zvcig7QTw9MTQzOylSW0ErK10uZGw9OCxrWzhdKys7Zm9yKDtBPD0yNTU7KVJbQSsrXS5kbD05LGtbOV0rKztmb3IoO0E8PTI3OTspUltBKytdLmRsPTcsa1s3XSsrO2Zvcig7QTw9Mjg3OylSW0ErK10uZGw9OCxrWzhdKys7Zm9yKHhBKFIsMjg3KSxBPTA7QTwzMDtBKyspR1tBXS5kbD01LEdbQV0uZmM9akEoQSw1KTt5QSgpfSgpLGZ1bmN0aW9uKCl7dmFyIEE7Zm9yKEE9MDtBPDMyNzY4O0ErKylFWzMyNzY4K0FdPTA7aWYoZj11QVtOXS5tYXhfbGF6eSxVPXVBW05dLmdvb2RfbGVuZ3RoLHk9dUFbTl0ubmljZV9sZW5ndGgsWT11QVtOXS5tYXhfY2hhaW4scD0wLGw9MCwoRD1GQShCLDAsNjU1MzYpKTw9MClyZXR1cm4gRj0hMCx2b2lkKEQ9MCk7Zm9yKEY9ITE7RDwyNjImJiFGOylZQSgpO2ZvcihoPTAsQT0wO0E8MjtBKyspaD0zMjc2NyYoaDw8aUFeMjU1JkJbQV0pfSgpLG49bnVsbCxvPTAscz0wLE48PTM/KGQ9MixNPTApOihNPTIsST0hMSksYT0hMSl9ZnVuY3Rpb24gTkEoQSxlLHQpe3ZhciBpO3JldHVybiByfHwoZkEoKSxyPSEwLDAhPT1EKT8oaT1VQShBLGUsdCkpPT09dD90OmE/aTooTjw9Mz9mdW5jdGlvbigpe2Zvcig7MCE9PUQmJm51bGw9PT1uOyl7dmFyIEE7aWYoTUEoKSwwIT09dyYmcC13PD0zMjUwNiYmKE09REEodykpPkQmJihNPUQpLE0+PTMpaWYoQT1IQShwLW0sTS0zKSxELT1NLE08PWYpe00tLTtkb3twKyssTUEoKX13aGlsZSgwIT0tLU0pO3ArK31lbHNlIHArPU0sTT0wLGg9MzI3NjcmKChoPTI1NSZCW3BdKTw8aUFeMjU1JkJbcCsxXSk7ZWxzZSBBPUhBKDAsMjU1JkJbcF0pLEQtLSxwKys7Zm9yKEEmJihiQSgwKSxsPXApO0Q8MjYyJiYhRjspWUEoKX19KCk6ZnVuY3Rpb24oKXtmb3IoOzAhPT1EJiZudWxsPT09bjspe2lmKE1BKCksZD1NLEM9bSxNPTIsMCE9PXcmJmQ8ZiYmcC13PD0zMjUwNiYmKChNPURBKHcpKT5EJiYoTT1EKSwzPT09TSYmcC1tPjQwOTYmJk0tLSksZD49MyYmTTw9ZCl7dmFyIEE7QT1IQShwLTEtQyxkLTMpLEQtPWQtMSxkLT0yO2Rve3ArKyxNQSgpfXdoaWxlKDAhPS0tZCk7ST0hMSxNPTIscCsrLEEmJihiQSgwKSxsPXApfWVsc2UgST8oSEEoMCwyNTUmQltwLTFdKSYmKGJBKDApLGw9cCkscCsrLEQtLSk6KEk9ITAscCsrLEQtLSk7Zm9yKDtEPDI2MiYmIUY7KVlBKCl9fSgpLDA9PT1EJiYoSSYmSEEoMCwyNTUmQltwLTFdKSxiQSgxKSxhPSEwKSxpK1VBKEEsaStlLHQtaSkpOihhPSEwLDApfWZ1bmN0aW9uIFVBKEEsZSx0KXt2YXIgaSxyLGE7Zm9yKGk9MDtudWxsIT09biYmaTx0Oyl7Zm9yKChyPXQtaSk+bi5sZW4mJihyPW4ubGVuKSxhPTA7YTxyO2ErKylBW2UraSthXT1uLnB0cltuLm9mZithXTt2YXIgQjtpZihuLm9mZis9cixuLmxlbi09cixpKz1yLDA9PT1uLmxlbilCPW4sbj1uLm5leHQsbEEoQil9aWYoaT09PXQpcmV0dXJuIGk7aWYoczxvKXtmb3IoKHI9dC1pKT5vLXMmJihyPW8tcyksYT0wO2E8cjthKyspQVtlK2krYV09ckFbcythXTtpKz1yLG89PT0ocys9cikmJihvPXM9MCl9cmV0dXJuIGl9ZnVuY3Rpb24geUEoKXt2YXIgQTtmb3IoQT0wO0E8Mjg2O0ErKylUW0FdLmZjPTA7Zm9yKEE9MDtBPDMwO0ErKyl4W0FdLmZjPTA7Zm9yKEE9MDtBPDE5O0ErKylTW0FdLmZjPTA7VFsyNTZdLmZjPTEsQUE9ZUE9MCxYPVo9Xz0wLHE9MCwkPTF9ZnVuY3Rpb24gVEEoQSxlKXtmb3IodmFyIHQ9altlXSxuPWU8PDE7bjw9SiYmKG48SiYmbUEoQSxqW24rMV0saltuXSkmJm4rKywhbUEoQSx0LGpbbl0pKTspaltlXT1qW25dLGU9bixuPDw9MTtqW2VdPXR9ZnVuY3Rpb24geEEoQSxlKXt2YXIgdCxuLGk9W10scj0wO2Zvcih0PTE7dDw9MTU7dCsrKXI9citrW3QtMV08PDEsaVt0XT1yO2ZvcihuPTA7bjw9ZTtuKyspe3ZhciBvPUFbbl0uZGw7MCE9PW8mJihBW25dLmZjPWpBKGlbb10rKyxvKSl9fWZ1bmN0aW9uIFJBKEEpe3ZhciBlLHQsbj1BLmR5bl90cmVlLGk9QS5zdGF0aWNfdHJlZSxyPUEuZWxlbXMsbz0tMSxzPXI7Zm9yKEo9MCx6PTU3MyxlPTA7ZTxyO2UrKykwIT09bltlXS5mYz8oalsrK0pdPW89ZSxMW2VdPTApOm5bZV0uZGw9MDtmb3IoO0o8Mjspe3ZhciBhPWpbKytKXT1vPDI/KytvOjA7blthXS5mYz0xLExbYV09MCxBQS0tLG51bGwhPT1pJiYoZUEtPWlbYV0uZGwpfWZvcihBLm1heF9jb2RlPW8sZT1KPj4xO2U+PTE7ZS0tKVRBKG4sZSk7ZG97ZT1qWzFdLGpbMV09altKLS1dLFRBKG4sMSksdD1qWzFdLGpbLS16XT1lLGpbLS16XT10LG5bc10uZmM9bltlXS5mYytuW3RdLmZjLExbZV0+TFt0XSsxP0xbc109TFtlXTpMW3NdPUxbdF0rMSxuW2VdLmRsPW5bdF0uZGw9cyxqWzFdPXMrKyxUQShuLDEpfXdoaWxlKEo+PTIpO2pbLS16XT1qWzFdLGZ1bmN0aW9uKEEpe3ZhciBlLHQsbixpLHIsbyxzPUEuZHluX3RyZWUsYT1BLmV4dHJhX2JpdHMsQj1BLmV4dHJhX2Jhc2UsYz1BLm1heF9jb2RlLGc9QS5tYXhfbGVuZ3RoLEU9QS5zdGF0aWNfdHJlZSxRPTA7Zm9yKGk9MDtpPD0xNTtpKyspa1tpXT0wO2ZvcihzW2pbel1dLmRsPTAsZT16KzE7ZTw1NzM7ZSsrKShpPXNbc1t0PWpbZV1dLmRsXS5kbCsxKT5nJiYoaT1nLFErKyksc1t0XS5kbD1pLHQ+Y3x8KGtbaV0rKyxyPTAsdD49QiYmKHI9YVt0LUJdKSxvPXNbdF0uZmMsQUErPW8qKGkrciksbnVsbCE9PUUmJihlQSs9byooRVt0XS5kbCtyKSkpO2lmKDAhPT1RKXtkb3tmb3IoaT1nLTE7MD09PWtbaV07KWktLTtrW2ldLS0sa1tpKzFdKz0yLGtbZ10tLSxRLT0yfXdoaWxlKFE+MCk7Zm9yKGk9ZzswIT09aTtpLS0pZm9yKHQ9a1tpXTswIT09dDspKG49alstLWVdKT5jfHwoc1tuXS5kbCE9PWkmJihBQSs9KGktc1tuXS5kbCkqc1tuXS5mYyxzW25dLmZjPWkpLHQtLSl9fShBKSx4QShuLG8pfWZ1bmN0aW9uIEdBKEEsZSl7dmFyIHQsbixpPS0xLHI9QVswXS5kbCxvPTAscz03LGE9NDtmb3IoMD09PXImJihzPTEzOCxhPTMpLEFbZSsxXS5kbD02NTUzNSx0PTA7dDw9ZTt0Kyspbj1yLHI9QVt0KzFdLmRsLCsrbzxzJiZuPT09cnx8KG88YT9TW25dLmZjKz1vOjAhPT1uPyhuIT09aSYmU1tuXS5mYysrLFNbMTZdLmZjKyspOm88PTEwP1NbMTddLmZjKys6U1sxOF0uZmMrKyxvPTAsaT1uLDA9PT1yPyhzPTEzOCxhPTMpOm49PT1yPyhzPTYsYT0zKToocz03LGE9NCkpfWZ1bmN0aW9uIFNBKEEsZSl7dmFyIHQsbixpPS0xLHI9QVswXS5kbCxvPTAscz03LGE9NDtmb3IoMD09PXImJihzPTEzOCxhPTMpLHQ9MDt0PD1lO3QrKylpZihuPXIscj1BW3QrMV0uZGwsISgrK288cyYmbj09PXIpKXtpZihvPGEpZG97ZEEobixTKX13aGlsZSgwIT0tLW8pO2Vsc2UgMCE9PW4/KG4hPT1pJiYoZEEobixTKSxvLS0pLGRBKDE2LFMpLGtBKG8tMywyKSk6bzw9MTA/KGRBKDE3LFMpLGtBKG8tMywzKSk6KGRBKDE4LFMpLGtBKG8tMTEsNykpO289MCxpPW4sMD09PXI/KHM9MTM4LGE9Myk6bj09PXI/KHM9NixhPTMpOihzPTcsYT00KX19ZnVuY3Rpb24gYkEoQSl7dmFyIGUsdCxuLGkscjtpZihpPXAtbCxLW19dPXEsUkEoYiksUkEoSCksbj1mdW5jdGlvbigpe3ZhciBBO2ZvcihHQShULGIubWF4X2NvZGUpLEdBKHgsSC5tYXhfY29kZSksUkEodiksQT0xODtBPj0zJiYwPT09U1tRQVtBXV0uZGw7QS0tKTtyZXR1cm4gQUErPTMqKEErMSkrNSs1KzQsQX0oKSwodD1lQSszKzc+PjMpPD0oZT1BQSszKzc+PjMpJiYoZT10KSxpKzQ8PWUmJmw+PTApZm9yKGtBKDArQSwzKSxKQSgpLElBKGkpLElBKH5pKSxyPTA7cjxpO3IrKylDQShCW2wrcl0pO2Vsc2UgdD09PWU/KGtBKDIrQSwzKSx2QShSLEcpKTooa0EoNCtBLDMpLGZ1bmN0aW9uKEEsZSx0KXt2YXIgbjtmb3Ioa0EoQS0yNTcsNSksa0EoZS0xLDUpLGtBKHQtNCw0KSxuPTA7bjx0O24rKylrQShTW1FBW25dXS5kbCwzKTtTQShULEEtMSksU0EoeCxlLTEpfShiLm1heF9jb2RlKzEsSC5tYXhfY29kZSsxLG4rMSksdkEoVCx4KSk7eUEoKSwwIT09QSYmSkEoKX1mdW5jdGlvbiBIQShBLGUpe2lmKGdbWCsrXT1lLDA9PT1BP1RbZV0uZmMrKzooQS0tLFRbUFtlXSsyNTYrMV0uZmMrKyx4W3BBKEEpXS5mYysrLGNbWisrXT1BLHF8PSQpLCQ8PD0xLDA9PSg3JlgpJiYoS1tfKytdPXEscT0wLCQ9MSksTj4yJiYwPT0oNDA5NSZYKSl7dmFyIHQsbj04KlgsaT1wLWw7Zm9yKHQ9MDt0PDMwO3QrKyluKz14W3RdLmZjKig1K2dBW3RdKTtpZihuPj49MyxaPHBhcnNlSW50KFgvMiwxMCkmJm48cGFyc2VJbnQoaS8yLDEwKSlyZXR1cm4hMH1yZXR1cm4gODE5MT09PVh8fDgxOTI9PT1afWZ1bmN0aW9uIHZBKEEsZSl7dmFyIHQsbixpLHIsbz0wLHM9MCxhPTAsQj0wO2lmKDAhPT1YKWRvezA9PSg3Jm8pJiYoQj1LW2ErK10pLG49MjU1JmdbbysrXSwwPT0oMSZCKT9kQShuLEEpOihkQSgoaT1QW25dKSsyNTYrMSxBKSwwIT09KHI9Y0FbaV0pJiZrQShuLT1WW2ldLHIpLGRBKGk9cEEodD1jW3MrK10pLGUpLDAhPT0ocj1nQVtpXSkmJmtBKHQtPVdbaV0scikpLEI+Pj0xfXdoaWxlKG88WCk7ZEEoMjU2LEEpfWZ1bmN0aW9uIGtBKEEsZSl7dT4xNi1lPyhJQShRfD1BPDx1KSxRPUE+PjE2LXUsdSs9ZS0xNik6KFF8PUE8PHUsdSs9ZSl9ZnVuY3Rpb24gakEoQSxlKXt2YXIgdD0wO2Rve3R8PTEmQSxBPj49MSx0PDw9MX13aGlsZSgtLWU+MCk7cmV0dXJuIHQ+PjF9ZnVuY3Rpb24gSkEoKXt1Pjg/SUEoUSk6dT4wJiZDQShRKSxRPTAsdT0wfUEuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3ZhciBvLHM7dEE9QSxuQT0wLHZvaWQgMD09PWUmJihlPTYpLGZ1bmN0aW9uKEEpe3ZhciBlO2lmKEE/QTwxP0E9MTpBPjkmJihBPTkpOkE9NixOPUEscj0hMSxGPSExLG51bGw9PT1yQSl7Zm9yKHQ9bj1pPW51bGwsckE9W10sQj1bXSxjPVtdLGc9W10sRT1bXSxUPVtdLGU9MDtlPDU3MztlKyspVFtlXT1uZXcgb0E7Zm9yKHg9W10sZT0wO2U8NjE7ZSsrKXhbZV09bmV3IG9BO2ZvcihSPVtdLGU9MDtlPDI4ODtlKyspUltlXT1uZXcgb0E7Zm9yKEc9W10sZT0wO2U8MzA7ZSsrKUdbZV09bmV3IG9BO2ZvcihTPVtdLGU9MDtlPDM5O2UrKylTW2VdPW5ldyBvQTtiPW5ldyBzQSxIPW5ldyBzQSx2PW5ldyBzQSxrPVtdLGo9W10sTD1bXSxQPVtdLE89W10sVj1bXSxXPVtdLEs9W119fShlKSxzPVtdO2Rve289TkEocyxzLmxlbmd0aCwxMDI0KX13aGlsZShvPjApO3JldHVybiB0QT1udWxsLHN9LEEuZXhwb3J0cy5ERUZBVUxUX0xFVkVMPTZ9LGZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIsbyxzLGEsQixjLGcsRSxRLHUsbCxoLHcsQyxJPW51bGwsTT1bMCwxLDMsNywxNSwzMSw2MywxMjcsMjU1LDUxMSwxMDIzLDIwNDcsNDA5NSw4MTkxLDE2MzgzLDMyNzY3LDY1NTM1XSxkPVszLDQsNSw2LDcsOCw5LDEwLDExLDEzLDE1LDE3LDE5LDIzLDI3LDMxLDM1LDQzLDUxLDU5LDY3LDgzLDk5LDExNSwxMzEsMTYzLDE5NSwyMjcsMjU4LDAsMF0scD1bMCwwLDAsMCwwLDAsMCwwLDEsMSwxLDEsMiwyLDIsMiwzLDMsMywzLDQsNCw0LDQsNSw1LDUsNSwwLDk5LDk5XSxtPVsxLDIsMyw0LDUsNyw5LDEzLDE3LDI1LDMzLDQ5LDY1LDk3LDEyOSwxOTMsMjU3LDM4NSw1MTMsNzY5LDEwMjUsMTUzNywyMDQ5LDMwNzMsNDA5Nyw2MTQ1LDgxOTMsMTIyODksMTYzODUsMjQ1NzddLEY9WzAsMCwwLDAsMSwxLDIsMiwzLDMsNCw0LDUsNSw2LDYsNyw3LDgsOCw5LDksMTAsMTAsMTEsMTEsMTIsMTIsMTMsMTNdLEQ9WzE2LDE3LDE4LDAsOCw3LDksNiwxMCw1LDExLDQsMTIsMywxMywyLDE0LDEsMTVdO2Z1bmN0aW9uIFkoKXt0aGlzLm5leHQ9bnVsbCx0aGlzLmxpc3Q9bnVsbH1mdW5jdGlvbiBmKCl7dGhpcy5lPTAsdGhpcy5iPTAsdGhpcy5uPTAsdGhpcy50PW51bGx9ZnVuY3Rpb24gTihBLGUsdCxuLGkscil7dmFyIG87dGhpcy5CTUFYPTE2LHRoaXMuTl9NQVg9Mjg4LHRoaXMuc3RhdHVzPTAsdGhpcy5yb290PW51bGwsdGhpcy5tPTA7dmFyIHMsYSxCLGMsZyxFLFEsdSxsLGgsdyxDLEksTSxkLHAsbT1bXSxGPVtdLEQ9bmV3IGYsTj1bXSxVPVtdLHk9W107Zm9yKHA9dGhpcy5yb290PW51bGwsZz0wO2c8dGhpcy5CTUFYKzE7ZysrKW1bZ109MDtmb3IoZz0wO2c8dGhpcy5CTUFYKzE7ZysrKUZbZ109MDtmb3IoZz0wO2c8dGhpcy5CTUFYO2crKylOW2ddPW51bGw7Zm9yKGc9MDtnPHRoaXMuTl9NQVg7ZysrKVVbZ109MDtmb3IoZz0wO2c8dGhpcy5CTUFYKzE7ZysrKXlbZ109MDtzPWU+MjU2P0FbMjU2XTp0aGlzLkJNQVgsdT1BLGw9MCxnPWU7ZG97bVt1W2xdXSsrLGwrK313aGlsZSgtLWc+MCk7aWYobVswXT09PWUpcmV0dXJuIHRoaXMucm9vdD1udWxsLHRoaXMubT0wLHZvaWQodGhpcy5zdGF0dXM9MCk7Zm9yKEU9MTtFPD10aGlzLkJNQVgmJjA9PT1tW0VdO0UrKyk7Zm9yKFE9RSxyPEUmJihyPUUpLGc9dGhpcy5CTUFYOzAhPT1nJiYwPT09bVtnXTtnLS0pO2ZvcihCPWcscj5nJiYocj1nKSxJPTE8PEU7RTxnO0UrKyxJPDw9MSlpZigoSS09bVtFXSk8MClyZXR1cm4gdGhpcy5zdGF0dXM9Mix2b2lkKHRoaXMubT1yKTtpZigoSS09bVtnXSk8MClyZXR1cm4gdGhpcy5zdGF0dXM9Mix2b2lkKHRoaXMubT1yKTtmb3IobVtnXSs9SSx5WzFdPUU9MCx1PW0sbD0xLEM9MjstLWc+MDspeVtDKytdPUUrPXVbbCsrXTt1PUEsbD0wLGc9MDtkb3swIT09KEU9dVtsKytdKSYmKFVbeVtFXSsrXT1nKX13aGlsZSgrK2c8ZSk7Zm9yKGU9eVtCXSx5WzBdPWc9MCx1PVUsbD0wLGM9LTEsdz1GWzBdPTAsaD1udWxsLE09MDtRPD1CO1ErKylmb3Iobz1tW1FdO28tLSA+MDspe2Zvcig7UT53K0ZbMStjXTspe2lmKHcrPUZbMStjXSxjKyssTT0oTT1CLXcpPnI/cjpNLChhPTE8PChFPVEtdykpPm8rMSlmb3IoYS09bysxLEM9UTsrK0U8TSYmISgoYTw8PTEpPD1tWysrQ10pOylhLT1tW0NdO2Zvcih3K0U+cyYmdzxzJiYoRT1zLXcpLE09MTw8RSxGWzErY109RSxoPVtdLGQ9MDtkPE07ZCsrKWhbZF09bmV3IGY7KHA9cD9wLm5leHQ9bmV3IFk6dGhpcy5yb290PW5ldyBZKS5uZXh0PW51bGwscC5saXN0PWgsTltjXT1oLGM+MCYmKHlbY109ZyxELmI9RltjXSxELmU9MTYrRSxELnQ9aCxFPShnJigxPDx3KS0xKT4+dy1GW2NdLE5bYy0xXVtFXS5lPUQuZSxOW2MtMV1bRV0uYj1ELmIsTltjLTFdW0VdLm49RC5uLE5bYy0xXVtFXS50PUQudCl9Zm9yKEQuYj1RLXcsbD49ZT9ELmU9OTk6dVtsXTx0PyhELmU9dVtsXTwyNTY/MTY6MTUsRC5uPXVbbCsrXSk6KEQuZT1pW3VbbF0tdF0sRC5uPW5bdVtsKytdLXRdKSxhPTE8PFEtdyxFPWc+Pnc7RTxNO0UrPWEpaFtFXS5lPUQuZSxoW0VdLmI9RC5iLGhbRV0ubj1ELm4saFtFXS50PUQudDtmb3IoRT0xPDxRLTE7MCE9KGcmRSk7RT4+PTEpZ149RTtmb3IoZ149RTsoZyYoMTw8dyktMSkhPT15W2NdOyl3LT1GW2NdLGMtLX10aGlzLm09RlsxXSx0aGlzLnN0YXR1cz0wIT09SSYmMSE9PUI/MTowfWZ1bmN0aW9uIFUoQSl7Zm9yKDthPEE7KXN8PSh3Lmxlbmd0aD09PUM/LTE6MjU1JndbQysrXSk8PGEsYSs9OH1mdW5jdGlvbiB5KEEpe3JldHVybiBzJk1bQV19ZnVuY3Rpb24gVChBKXtzPj49QSxhLT1BfWZ1bmN0aW9uIHgoQSxlLGkpe3ZhciByLG8scztpZigwPT09aSlyZXR1cm4gMDtmb3Iocz0wOzspe2ZvcihVKGwpLHI9KG89US5saXN0W3kobCldKS5lO3I+MTY7KXtpZig5OT09PXIpcmV0dXJuLTE7VChvLmIpLFUoci09MTYpLHI9KG89by50W3kocildKS5lfWlmKFQoby5iKSwxNiE9PXIpe2lmKDE1PT09cilicmVhaztmb3IoVShyKSxnPW8ubit5KHIpLFQociksVShoKSxyPShvPXUubGlzdFt5KGgpXSkuZTtyPjE2Oyl7aWYoOTk9PT1yKXJldHVybi0xO1Qoby5iKSxVKHItPTE2KSxyPShvPW8udFt5KHIpXSkuZX1mb3IoVChvLmIpLFUociksRT1uLW8ubi15KHIpLFQocik7Zz4wJiZzPGk7KWctLSxFJj0zMjc2NyxuJj0zMjc2NyxBW2UrcysrXT10W24rK109dFtFKytdO2lmKHM9PT1pKXJldHVybiBpfWVsc2UgaWYobiY9MzI3NjcsQVtlK3MrK109dFtuKytdPW8ubixzPT09aSlyZXR1cm4gaX1yZXR1cm4gQj0tMSxzfWZ1bmN0aW9uIFIoQSxlLGkpe3ZhciByO2lmKFQocj03JmEpLFUoMTYpLHI9eSgxNiksVCgxNiksVSgxNiksciE9PSg2NTUzNSZ+cykpcmV0dXJuLTE7Zm9yKFQoMTYpLGc9cixyPTA7Zz4wJiZyPGk7KWctLSxuJj0zMjc2NyxVKDgpLEFbZStyKytdPXRbbisrXT15KDgpLFQoOCk7cmV0dXJuIDA9PT1nJiYoQj0tMSkscn1mdW5jdGlvbiBHKEEsZSx0KXtpZighSSl7dmFyIG4scyxhPVtdO2ZvcihuPTA7bjwxNDQ7bisrKWFbbl09ODtmb3IoO248MjU2O24rKylhW25dPTk7Zm9yKDtuPDI4MDtuKyspYVtuXT03O2Zvcig7bjwyODg7bisrKWFbbl09ODtpZigwIT09KHM9bmV3IE4oYSwyODgsMjU3LGQscCxyPTcpKS5zdGF0dXMpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkh1ZkJ1aWxkIGVycm9yOiAiK3Muc3RhdHVzKSwtMTtmb3IoST1zLnJvb3Qscj1zLm0sbj0wO248MzA7bisrKWFbbl09NTtpZigocz1uZXcgTihhLDMwLDAsbSxGLG89NSkpLnN0YXR1cz4xKXJldHVybiBJPW51bGwsY29uc29sZS5lcnJvcigiSHVmQnVpbGQgZXJyb3I6ICIrcy5zdGF0dXMpLC0xO2k9cy5yb290LG89cy5tfXJldHVybiBRPUksdT1pLGw9cixoPW8seChBLGUsdCl9ZnVuY3Rpb24gUyhBLGUsdCl7dmFyIG4saSxyLG8scyxhLEIsYyxnLEU9W107Zm9yKG49MDtuPDMxNjtuKyspRVtuXT0wO2lmKFUoNSksQj0yNTcreSg1KSxUKDUpLFUoNSksYz0xK3koNSksVCg1KSxVKDQpLGE9NCt5KDQpLFQoNCksQj4yODZ8fGM+MzApcmV0dXJuLTE7Zm9yKGk9MDtpPGE7aSsrKVUoMyksRVtEW2ldXT15KDMpLFQoMyk7Zm9yKDtpPDE5O2krKylFW0RbaV1dPTA7aWYoMCE9PShnPW5ldyBOKEUsMTksMTksbnVsbCxudWxsLGw9NykpLnN0YXR1cylyZXR1cm4tMTtmb3IoUT1nLnJvb3QsbD1nLm0sbz1CK2Msbj1yPTA7bjxvOylpZihVKGwpLFQoaT0ocz1RLmxpc3RbeShsKV0pLmIpLChpPXMubik8MTYpRVtuKytdPXI9aTtlbHNlIGlmKDE2PT09aSl7aWYoVSgyKSxpPTMreSgyKSxUKDIpLG4raT5vKXJldHVybi0xO2Zvcig7aS0tID4wOylFW24rK109cn1lbHNlIGlmKDE3PT09aSl7aWYoVSgzKSxpPTMreSgzKSxUKDMpLG4raT5vKXJldHVybi0xO2Zvcig7aS0tID4wOylFW24rK109MDtyPTB9ZWxzZXtpZihVKDcpLGk9MTEreSg3KSxUKDcpLG4raT5vKXJldHVybi0xO2Zvcig7aS0tID4wOylFW24rK109MDtyPTB9aWYoZz1uZXcgTihFLEIsMjU3LGQscCxsPTkpLDA9PT1sJiYoZy5zdGF0dXM9MSksMCE9PWcuc3RhdHVzJiYxIT09Zy5zdGF0dXMpcmV0dXJuLTE7Zm9yKFE9Zy5yb290LGw9Zy5tLG49MDtuPGM7bisrKUVbbl09RVtuK0JdO3JldHVybiBnPW5ldyBOKEUsYywwLG0sRixoPTYpLHU9Zy5yb290LDA9PT0oaD1nLm0pJiZCPjI1N3x8MCE9PWcuc3RhdHVzPy0xOngoQSxlLHQpfWZ1bmN0aW9uIGIoQSxlLGkpe3ZhciByLG87Zm9yKHI9MDtyPGk7KXtpZihjJiYtMT09PUIpcmV0dXJuIHI7aWYoZz4wKXtpZigwIT09Qilmb3IoO2c+MCYmcjxpOylnLS0sRSY9MzI3NjcsbiY9MzI3NjcsQVtlK3IrK109dFtuKytdPXRbRSsrXTtlbHNle2Zvcig7Zz4wJiZyPGk7KWctLSxuJj0zMjc2NyxVKDgpLEFbZStyKytdPXRbbisrXT15KDgpLFQoOCk7MD09PWcmJihCPS0xKX1pZihyPT09aSlyZXR1cm4gcn1pZigtMT09PUIpe2lmKGMpYnJlYWs7VSgxKSwwIT09eSgxKSYmKGM9ITApLFQoMSksVSgyKSxCPXkoMiksVCgyKSxRPW51bGwsZz0wfXN3aXRjaChCKXtjYXNlIDA6bz1SKEEsZStyLGktcik7YnJlYWs7Y2FzZSAxOm89UT94KEEsZStyLGktcik6RyhBLGUrcixpLXIpO2JyZWFrO2Nhc2UgMjpvPVE/eChBLGUrcixpLXIpOlMoQSxlK3IsaS1yKTticmVhaztkZWZhdWx0Om89LTF9aWYoLTE9PT1vKXJldHVybiBjPzA6LTE7cis9b31yZXR1cm4gcn1BLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGUsaT1bXTt0fHwodD1bXSksbj0wLHM9MCxhPTAsQj0tMSxjPSExLGc9RT0wLFE9bnVsbCx3PUEsQz0wO2Rve2U9YihpLGkubGVuZ3RoLDEwMjQpfXdoaWxlKGU+MCk7cmV0dXJuIHc9bnVsbCxpfX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCg0KSxzPXQoMSksYT10KDMpLEI9dCg4KSxjPXQoMiksZz17YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDoiY29sb3IiLHZhbHVlOiJjb2xvciJ9LHt0ZXh0OiJncmF5c2NhbGUiLHZhbHVlOiJncmF5c2NhbGUifSx7dGV4dDoiYnJpZ2h0bmVzcyIsdmFsdWU6ImJyaWdodG5lc3MifSx7dGV4dDoiY29udHJhc3QiLHZhbHVlOiJjb250cmFzdCJ9LHt0ZXh0OiJnaG9zdCIsdmFsdWU6Imdob3N0In0se3RleHQ6ImJsdXIiLHZhbHVlOiJibHVyIn0se3RleHQ6ImludmVydCIsdmFsdWU6ImludmVydCJ9LHt0ZXh0OiJzYXR1cmF0ZSIsdmFsdWU6InNhdHVyYXRlIn0se3RleHQ6InNlcGlhIix2YWx1ZToic2VwaWEifV19LEU9KEEsZSk9Pntjb25zdCB0PXt9O3JldHVybiBBLmZvckVhY2goQT0+e3RbU3RyaW5nKEEpXT1lfSksdH07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuY3JlYXRlZElmcmFtZT1udWxsLHRoaXMuaWZyYW1lU2V0dGluZ3M9e3g6MCx5OjAscm90YXRpb246OTAsd2lkdGg6NDgwLGhlaWdodDozNjAsY29sb3I6IiNmZmZmZmYiLG9wYWNpdHk6MCxjbGlja2FibGU6ITB9LHRoaXMuaWZyYW1lRmlsdGVycz1FKGcuaXRlbXMubWFwKEE9PkEudmFsdWUpLDApLHRoaXMuaWZyYW1lTG9hZGVkVmFsdWU9ITEsdGhpcy5kaXNwbGF5V2Vic2l0ZVVybD0iIix0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RPUF9BTEwiLCgpPT57dGhpcy5SZW1vdmVJRnJhbWUoKX0pfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnSWZyYW1lIixuYW1lOiJJRnJhbWUiLGNvbG9yMToiI0YzNjUxOCIsY29sb3IyOiIjRTY0RDE4IixibG9ja3M6W3tvcGNvZGU6ImNyZWF0ZUlmcmFtZUVsZW1lbnQiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5jcmVhdGVJZnJhbWVFbGVtZW50IixkZWZhdWx0OiJzZXQgbmV3IGlmcmFtZSIsZGVzY3JpcHRpb246ImltIHRvbyBsYXp5IHRvIHdyaXRlIHRoZXNlIGFueW1vcmUgdGJoIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkR9LHtvcGNvZGU6ImRlbGV0ZUlmcmFtZUVsZW1lbnQiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5kZWxldGVJZnJhbWVFbGVtZW50IixkZWZhdWx0OiJkZWxldGUgaWZyYW1lIixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksYmxvY2tUeXBlOnMuQ09NTUFORH0se29wY29kZToiaWZyYW1lRWxlbWVudEV4aXN0cyIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmlmcmFtZUVsZW1lbnRFeGlzdHMiLGRlZmF1bHQ6ImlmcmFtZSBleGlzdHM/IixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksYmxvY2tUeXBlOnMuQk9PTEVBTixkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIsIi0tLSIse29wY29kZToid2hlbklmcmFtZUlzTG9hZGVkIix0ZXh0Om8oe2lkOiJqZ0lmcmFtZS5ibG9ja3Mud2hlbklmcmFtZUlzTG9hZGVkIixkZWZhdWx0OiJ3aGVuIGlmcmFtZSBsb2FkcyBzaXRlIixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksYmxvY2tUeXBlOnMuSEFUfSx7b3Bjb2RlOiJzZXRJZnJhbWVVcmwiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5zZXRJZnJhbWVVcmwiLGRlZmF1bHQ6InNldCBpZnJhbWUgdXJsIHRvIFtVUkxdIixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksYmxvY2tUeXBlOnMuQ09NTUFORCxhcmd1bWVudHM6e1VSTDp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vd3d3LmV4YW1wbGUuY29tIn19fSx7b3Bjb2RlOiJzZXRJZnJhbWVQb3NMZWZ0Iix0ZXh0Om8oe2lkOiJqZ0lmcmFtZS5ibG9ja3Muc2V0SWZyYW1lUG9zTGVmdCIsZGVmYXVsdDoic2V0IGlmcmFtZSB4IHRvIFtYXSIsZGVzY3JpcHRpb246ImltIHRvbyBsYXp5IHRvIHdyaXRlIHRoZXNlIGFueW1vcmUgdGJoIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkQsYXJndW1lbnRzOntYOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX19LHtvcGNvZGU6InNldElmcmFtZVBvc1RvcCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLnNldElmcmFtZVBvc1RvcCIsZGVmYXVsdDoic2V0IGlmcmFtZSB5IHRvIFtZXSIsZGVzY3JpcHRpb246ImltIHRvbyBsYXp5IHRvIHdyaXRlIHRoZXNlIGFueW1vcmUgdGJoIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkQsYXJndW1lbnRzOntZOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX19LHtvcGNvZGU6InNldElmcmFtZVNpemVXaWR0aCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLnNldElmcmFtZVNpemVXaWR0aCIsZGVmYXVsdDoic2V0IGlmcmFtZSB3aWR0aCB0byBbV0lEVEhdIixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksYmxvY2tUeXBlOnMuQ09NTUFORCxhcmd1bWVudHM6e1dJRFRIOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZTo0ODB9fX0se29wY29kZToic2V0SWZyYW1lU2l6ZUhlaWdodCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLnNldElmcmFtZVNpemVIZWlnaHQiLGRlZmF1bHQ6InNldCBpZnJhbWUgaGVpZ2h0IHRvIFtIRUlHSFRdIixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksYmxvY2tUeXBlOnMuQ09NTUFORCxhcmd1bWVudHM6e0hFSUdIVDp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MzYwfX19LHtvcGNvZGU6InNldElmcmFtZVJvdGF0aW9uIix0ZXh0Om8oe2lkOiJqZ0lmcmFtZS5ibG9ja3Muc2V0SWZyYW1lUm90YXRpb24iLGRlZmF1bHQ6InBvaW50IGlmcmFtZSBpbiBkaXJlY3Rpb24gW1JPVEFURV0iLGRlc2NyaXB0aW9uOiIifSksYmxvY2tUeXBlOnMuQ09NTUFORCxhcmd1bWVudHM6e1JPVEFURTp7dHlwZTphLkFOR0xFLGRlZmF1bHRWYWx1ZTo5MH19fSx7b3Bjb2RlOiJzZXRJZnJhbWVCYWNrZ3JvdW5kQ29sb3IiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5zZXRJZnJhbWVCYWNrZ3JvdW5kQ29sb3IiLGRlZmF1bHQ6InNldCBpZnJhbWUgYmFja2dyb3VuZCBjb2xvciB0byBbQ09MT1JdIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkQsYXJndW1lbnRzOntDT0xPUjp7dHlwZTphLkNPTE9SfX19LHtvcGNvZGU6InNldElmcmFtZUJhY2tncm91bmRPcGFjaXR5Iix0ZXh0Om8oe2lkOiJqZ0lmcmFtZS5ibG9ja3Muc2V0SWZyYW1lQmFja2dyb3VuZE9wYWNpdHkiLGRlZmF1bHQ6InNldCBpZnJhbWUgYmFja2dyb3VuZCB0cmFuc3BhcmVuY3kgdG8gW0dIT1NUXSUiLGRlc2NyaXB0aW9uOiIifSksYmxvY2tUeXBlOnMuQ09NTUFORCxhcmd1bWVudHM6e0dIT1NUOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMDB9fX0se29wY29kZToic2V0SWZyYW1lQ2xpY2thYmxlIix0ZXh0Om8oe2lkOiJqZ0lmcmFtZS5ibG9ja3Muc2V0SWZyYW1lQ2xpY2thYmxlIixkZWZhdWx0OiJ0b2dnbGUgaWZyYW1lIHRvIGJlIFtVU0FCTEVdIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkQsYXJndW1lbnRzOntVU0FCTEU6e3R5cGU6YS5TVFJJTkcsbWVudToiaWZyYW1lQ2xpY2thYmxlIn19fSx7b3Bjb2RlOiJzaG93SWZyYW1lRWxlbWVudCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLnNob3dJZnJhbWVFbGVtZW50IixkZWZhdWx0OiJzaG93IGlmcmFtZSIsZGVzY3JpcHRpb246ImltIHRvbyBsYXp5IHRvIHdyaXRlIHRoZXNlIGFueW1vcmUgdGJoIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkR9LHtvcGNvZGU6ImhpZGVJZnJhbWVFbGVtZW50Iix0ZXh0Om8oe2lkOiJqZ0lmcmFtZS5ibG9ja3MuaGlkZUlmcmFtZUVsZW1lbnQiLGRlZmF1bHQ6ImhpZGUgaWZyYW1lIixkZXNjcmlwdGlvbjoiaW0gdG9vIGxhenkgdG8gd3JpdGUgdGhlc2UgYW55bW9yZSB0YmgifSksYmxvY2tUeXBlOnMuQ09NTUFORH0se29wY29kZToiZ2V0SWZyYW1lTGVmdCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmdldElmcmFtZUxlZnQiLGRlZmF1bHQ6ImlmcmFtZSB4IixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpzLlJFUE9SVEVSfSx7b3Bjb2RlOiJnZXRJZnJhbWVUb3AiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5nZXRJZnJhbWVUb3AiLGRlZmF1bHQ6ImlmcmFtZSB5IixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpzLlJFUE9SVEVSfSx7b3Bjb2RlOiJnZXRJZnJhbWVXaWR0aCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmdldElmcmFtZVdpZHRoIixkZWZhdWx0OiJpZnJhbWUgd2lkdGgiLGRlc2NyaXB0aW9uOiIifSksYmxvY2tUeXBlOnMuUkVQT1JURVJ9LHtvcGNvZGU6ImdldElmcmFtZUhlaWdodCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmdldElmcmFtZUhlaWdodCIsZGVmYXVsdDoiaWZyYW1lIGhlaWdodCIsZGVzY3JpcHRpb246IiJ9KSxibG9ja1R5cGU6cy5SRVBPUlRFUn0se29wY29kZToiZ2V0SWZyYW1lUm90YXRpb24iLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5nZXRJZnJhbWVSb3RhdGlvbiIsZGVmYXVsdDoiaWZyYW1lIHJvdGF0aW9uIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpzLlJFUE9SVEVSfSx7b3Bjb2RlOiJnZXRJZnJhbWVCYWNrZ3JvdW5kQ29sb3IiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5nZXRJZnJhbWVCYWNrZ3JvdW5kQ29sb3IiLGRlZmF1bHQ6ImlmcmFtZSBiYWNrZ3JvdW5kIGNvbG9yIixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpzLlJFUE9SVEVSfSx7b3Bjb2RlOiJnZXRJZnJhbWVCYWNrZ3JvdW5kT3BhY2l0eSIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmdldElmcmFtZUJhY2tncm91bmRPcGFjaXR5IixkZWZhdWx0OiJpZnJhbWUgYmFja2dyb3VuZCB0cmFuc3BhcmVuY3kiLGRlc2NyaXB0aW9uOiIifSksYmxvY2tUeXBlOnMuUkVQT1JURVJ9LHtvcGNvZGU6ImdldElmcmFtZVRhcmdldFVybCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmdldElmcmFtZVRhcmdldFVybCIsZGVmYXVsdDoiaWZyYW1lIHRhcmdldCB1cmwiLGRlc2NyaXB0aW9uOiIifSksYmxvY2tUeXBlOnMuUkVQT1JURVJ9LHtvcGNvZGU6ImlmcmFtZUVsZW1lbnRJc0hpZGRlbiIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmlmcmFtZUVsZW1lbnRJc0hpZGRlbiIsZGVmYXVsdDoiaWZyYW1lIGlzIGhpZGRlbj8iLGRlc2NyaXB0aW9uOiJpbSB0b28gbGF6eSB0byB3cml0ZSB0aGVzZSBhbnltb3JlIHRiaCJ9KSxibG9ja1R5cGU6cy5CT09MRUFOLGRpc2FibGVNb25pdG9yOiEwfSx7b3Bjb2RlOiJnZXRJZnJhbWVDbGlja2FibGUiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5nZXRJZnJhbWVDbGlja2FibGUiLGRlZmF1bHQ6ImlmcmFtZSBpcyBpbnRlcmFjdGFibGU/IixkZXNjcmlwdGlvbjoiIn0pLGJsb2NrVHlwZTpzLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITB9LCItLS0iLCItLS0iLHtvcGNvZGU6ImlmcmFtZUVsZW1lbnRTZXRFZmZlY3QiLHRleHQ6byh7aWQ6ImpnSWZyYW1lLmJsb2Nrcy5pZnJhbWVFbGVtZW50U2V0RWZmZWN0IixkZWZhdWx0OiJzZXQgW0VGRkVDVF0gZWZmZWN0IG9uIGlmcmFtZSB0byBbQU1PVU5UXSIsZGVzY3JpcHRpb246IllBWVlBWUFXT09IT09PIFlFRUFBQUFBQUFBQVlBWVlBWUFXT09IT09PIFlFRUFBQUFBQUFBQSJ9KSxibG9ja1R5cGU6cy5DT01NQU5ELGFyZ3VtZW50czp7RUZGRUNUOnt0eXBlOmEuU1RSSU5HLG1lbnU6ImVmZmVjdHMiLGRlZmF1bHRWYWx1ZToiY29sb3IifSxBTU9VTlQ6e3R5cGU6YS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fX0se29wY29kZToiaWZyYW1lRWxlbWVudENoYW5nZUVmZmVjdCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmlmcmFtZUVsZW1lbnRDaGFuZ2VFZmZlY3QiLGRlZmF1bHQ6ImNoYW5nZSBbRUZGRUNUXSBlZmZlY3Qgb24gaWZyYW1lIGJ5IFtBTU9VTlRdIixkZXNjcmlwdGlvbjoiWUFZWUFZQVdPT0hPT08gWUVFQUFBQUFBQUFBWUFZWUFZQVdPT0hPT08gWUVFQUFBQUFBQUFBIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkQsYXJndW1lbnRzOntFRkZFQ1Q6e3R5cGU6YS5TVFJJTkcsbWVudToiZWZmZWN0cyIsZGVmYXVsdFZhbHVlOiJjb2xvciJ9LEFNT1VOVDp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MjV9fX0se29wY29kZToiaWZyYW1lRWxlbWVudENsZWFyRWZmZWN0cyIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmlmcmFtZUVsZW1lbnRDbGVhckVmZmVjdHMiLGRlZmF1bHQ6ImNsZWFyIGlmcmFtZSBlZmZlY3RzIixkZXNjcmlwdGlvbjoiWUFZWUFZQVdPT0hPT08gWUVFQUFBQUFBQUFBWUFZWUFZQVdPT0hPT08gWUVFQUFBQUFBQUFBIn0pLGJsb2NrVHlwZTpzLkNPTU1BTkR9LHtvcGNvZGU6ImdldElmcmFtZUVmZmVjdEFtb3VudCIsdGV4dDpvKHtpZDoiamdJZnJhbWUuYmxvY2tzLmdldElmcmFtZUVmZmVjdEFtb3VudCIsZGVmYXVsdDoiaWZyYW1lIFtFRkZFQ1RdIixkZXNjcmlwdGlvbjoiWUFZWUFZQVdPT0hPT08gWUVFQUFBQUFBQUFBWUFZWUFZQVdPT0hPT08gWUVFQUFBQUFBQUFBIn0pLGJsb2NrVHlwZTpzLlJFUE9SVEVSLGFyZ3VtZW50czp7RUZGRUNUOnt0eXBlOmEuU1RSSU5HLG1lbnU6ImVmZmVjdHMiLGRlZmF1bHRWYWx1ZToiY29sb3IifX19LCItLS0iXSxtZW51czp7ZWZmZWN0czpnLGlmcmFtZUNsaWNrYWJsZTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiaW50ZXJhY3RhYmxlIiwibm9uLWludGVyYWN0YWJsZSJdfX19fWFzeW5jIElzV2Vic2l0ZUFsbG93ZWQoQSl7cmV0dXJuIGF3YWl0IHRoaXMucnVudGltZS52bS5zZWN1cml0eU1hbmFnZXIuY2FuRW1iZWQoQSl9R2V0Q3VycmVudENhbnZhcygpe3JldHVybiB0aGlzLnJ1bnRpbWUucmVuZGVyZXIuY2FudmFzfVNldE5ld0lGcmFtZSgpe2NvbnN0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7cmV0dXJuIEEub25sb2FkPSgpPT57dGhpcy5pZnJhbWVMb2FkZWRWYWx1ZT0hMH0sdGhpcy5jcmVhdGVkSWZyYW1lPUEsQX1SZW1vdmVJRnJhbWUoKXt0aGlzLmNyZWF0ZWRJZnJhbWUmJih0aGlzLmNyZWF0ZWRJZnJhbWUucmVtb3ZlKCksdGhpcy5jcmVhdGVkSWZyYW1lPW51bGwpfUdldElGcmFtZVN0YXRlKCl7cmV0dXJuISF0aGlzLmNyZWF0ZWRJZnJhbWV9U2V0SUZyYW1lUG9zaXRpb24oQSxlLHQsbixyLG8pe2NvbnN0IHM9QSxhPXRoaXMucnVudGltZS5zdGFnZVdpZHRoLEI9dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0O3Muc3R5bGUucG9zaXRpb249ImFic29sdXRlIixzLnN0eWxlLndpZHRoPSIiLmNvbmNhdChuL2EqMTAwLCIlIikscy5zdHlsZS5oZWlnaHQ9IiIuY29uY2F0KHIvQioxMDAsIiUiKSxzLnN0eWxlLnRyYW5zZm9ybU9yaWdpbj0iY2VudGVyIGNlbnRlciI7bGV0IGM9KGEvMi1uLzIrZSkvYSoxMDAsZz0oQi8yLXIvMi10KS9CKjEwMDtzLnN0eWxlLmxlZnQ9IiIuY29uY2F0KGMsIiUiKSxzLnN0eWxlLnRvcD0iIi5jb25jYXQoZywiJSIpLHMuc3R5bGUudHJhbnNmb3JtPSJyb3RhdGUoIi5jb25jYXQoby05MCwiZGVnKSIpLHRoaXMuaWZyYW1lU2V0dGluZ3M9aShpKHt9LHRoaXMuaWZyYW1lU2V0dGluZ3MpLHt9LHt4OmUseTp0LHJvdGF0aW9uOm8sd2lkdGg6bixoZWlnaHQ6cn0pLEEucGFyZW50RWxlbWVudCE9PXRoaXMuR2V0Q3VycmVudENhbnZhcygpLnBhcmVudEVsZW1lbnQmJnRoaXMuR2V0Q3VycmVudENhbnZhcygpLnBhcmVudEVsZW1lbnQucHJlcGVuZChBKX1TZXRJRnJhbWVDb2xvcnMoQSxlLHQpe2NvbnN0IG49QSxyPWMudG9SZ2JDb2xvck9iamVjdChlKSxvPUIucmdiVG9IZXgocik7bi5zdHlsZS5iYWNrZ3JvdW5kQ29sb3I9InJnYmEoIi5jb25jYXQoci5yLCIsICIpLmNvbmNhdChyLmcsIiwgIikuY29uY2F0KHIuYiwiLCAiKS5jb25jYXQoMTAwKnQsIiUpIiksdGhpcy5pZnJhbWVTZXR0aW5ncz1pKGkoe30sdGhpcy5pZnJhbWVTZXR0aW5ncykse30se2NvbG9yOm8sb3BhY2l0eTpjLnRvTnVtYmVyKHQpfSksQS5wYXJlbnRFbGVtZW50IT09dGhpcy5HZXRDdXJyZW50Q2FudmFzKCkucGFyZW50RWxlbWVudCYmdGhpcy5HZXRDdXJyZW50Q2FudmFzKCkucGFyZW50RWxlbWVudC5wcmVwZW5kKEEpfVNldElGcmFtZUNsaWNrYWJsZShBLGUpe0Euc3R5bGUucG9pbnRlckV2ZW50cz1jLnRvQm9vbGVhbihlKT8iIjoibm9uZSIsdGhpcy5pZnJhbWVTZXR0aW5ncz1pKGkoe30sdGhpcy5pZnJhbWVTZXR0aW5ncykse30se2NsaWNrYWJsZTpjLnRvQm9vbGVhbihlKX0pLEEucGFyZW50RWxlbWVudCE9PXRoaXMuR2V0Q3VycmVudENhbnZhcygpLnBhcmVudEVsZW1lbnQmJnRoaXMuR2V0Q3VycmVudENhbnZhcygpLnBhcmVudEVsZW1lbnQucHJlcGVuZChBKX1HZW5lcmF0ZUNzc0ZpbHRlcihBLGUsdCxuLGkscixvLHMsYSl7cmV0dXJuImh1ZS1yb3RhdGUoIi5jb25jYXQoQS8yMDAqMzYwLCJkZWcpICIpKyJncmF5c2NhbGUoIi5jb25jYXQoZSwiJSkgIikrImJyaWdodG5lc3MoIi5jb25jYXQodCsxMDAsIiUpICIpKyJjb250cmFzdCgiLmNvbmNhdChuKzEwMCwiJSkgIikrIm9wYWNpdHkoIi5jb25jYXQoMTAwLWksIiUpICIpKyJibHVyKCIuY29uY2F0KHIsInB4KSAiKSsiaW52ZXJ0KCIuY29uY2F0KG8sIiUpICIpKyJzYXR1cmF0ZSgiLmNvbmNhdChzKzEwMCwiJSkgIikrInNlcGlhKCIuY29uY2F0KGEsIiUpIil9QXBwbHlGaWx0ZXJPcHRpb25zKEEpe0Euc3R5bGUuZmlsdGVyPXRoaXMuR2VuZXJhdGVDc3NGaWx0ZXIodGhpcy5pZnJhbWVGaWx0ZXJzLmNvbG9yLHRoaXMuaWZyYW1lRmlsdGVycy5ncmF5c2NhbGUsdGhpcy5pZnJhbWVGaWx0ZXJzLmJyaWdodG5lc3MsdGhpcy5pZnJhbWVGaWx0ZXJzLmNvbnRyYXN0LHRoaXMuaWZyYW1lRmlsdGVycy5naG9zdCx0aGlzLmlmcmFtZUZpbHRlcnMuYmx1cix0aGlzLmlmcmFtZUZpbHRlcnMuaW52ZXJ0LHRoaXMuaWZyYW1lRmlsdGVycy5zYXR1cmF0ZSx0aGlzLmlmcmFtZUZpbHRlcnMuc2VwaWEpfWNyZWF0ZUlmcmFtZUVsZW1lbnQoKXt0aGlzLlJlbW92ZUlGcmFtZSgpO2NvbnN0IEE9dGhpcy5TZXROZXdJRnJhbWUoKTtyZXR1cm4gQS5zdHlsZS56SW5kZXg9NTAwLEEuc3R5bGUuYm9yZGVyV2lkdGg9IjBweCIsQS5zcmM9ImRhdGE6dGV4dC9odG1sO2Jhc2U2NCxQRVJQUTFSWlVFVWdhSFJ0YkQ0S1BHaDBiV3dnYkdGdVp6MGlaVzR0VlZNaVBnbzhhR1ZoWkQ0OEwyaGxZV1ErQ2p4aWIyUjVQanhvTVQ1SVpXeHNieUU4TDJneFBqeHdQbGx2ZFNkMlpTQnFkWE4wSUdOeVpXRjBaV1FnWVc0Z2FXWnlZVzFsSUdWc1pXMWxiblF1UEdKeVBsVnpaU0IwYUdseklIUnZJR1Z0WW1Wa0lIZGxZbk5wZEdWeklIZHBkR2dnZEdobGFYSWdWVkpNY3k0Z1RtOTBaU0IwYUdGMElITnZiV1VnZDJWaWMybDBaWE1nYldsbmFIUWdibTkwSUdGc2JHOTNJR2xtY21GdFpYTWdkRzhnZDI5eWF5Qm1iM0lnZEdobGFYSWdkMlZpYzJsMFpTNDhMM0ErUEM5aWIyUjVQZ284TDJoMGJXdysiLHRoaXMuZGlzcGxheVdlYnNpdGVVcmw9QS5zcmMsdGhpcy5TZXRJRnJhbWVQb3NpdGlvbihBLDAsMCx0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aCx0aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHQsOTApLHRoaXMuU2V0SUZyYW1lQ29sb3JzKEEsIiNmZmZmZmYiLDApLHRoaXMuU2V0SUZyYW1lQ2xpY2thYmxlKEEsITApLHRoaXMuaWZyYW1lRmlsdGVycz1FKGcuaXRlbXMubWFwKEE9PkEudmFsdWUpLDApLHRoaXMuR2V0Q3VycmVudENhbnZhcygpLnBhcmVudEVsZW1lbnQucHJlcGVuZChBKSxBfWRlbGV0ZUlmcmFtZUVsZW1lbnQoKXt0aGlzLlJlbW92ZUlGcmFtZSgpfWlmcmFtZUVsZW1lbnRFeGlzdHMoKXtyZXR1cm4gdGhpcy5HZXRJRnJhbWVTdGF0ZSgpfXNldElmcmFtZVVybChBKXtpZighdGhpcy5HZXRJRnJhbWVTdGF0ZSgpKXJldHVybjtsZXQgZT1BLlVSTDtpZigiYWJvdXQ6YmxhbmsiPT09Yy50b1N0cmluZyhBLlVSTCkpcmV0dXJuIHRoaXMuY3JlYXRlZElmcmFtZS5zcmM9ImFib3V0OmJsYW5rIix2b2lkKHRoaXMuZGlzcGxheVdlYnNpdGVVcmw9ImFib3V0OmJsYW5rIik7dGhpcy5Jc1dlYnNpdGVBbGxvd2VkKGUpLnRoZW4oKCk9Pnt0aGlzLmNyZWF0ZWRJZnJhbWUuc3JjPUEuVVJMLHRoaXMuZGlzcGxheVdlYnNpdGVVcmw9dGhpcy5jcmVhdGVkSWZyYW1lLnNyY30pfXNldElmcmFtZVBvc0xlZnQoQSl7aWYoIXRoaXMuR2V0SUZyYW1lU3RhdGUoKSlyZXR1cm47Y29uc3QgZT10aGlzLmNyZWF0ZWRJZnJhbWU7dGhpcy5TZXRJRnJhbWVQb3NpdGlvbihlLGMudG9OdW1iZXIoQS5YKSx0aGlzLmlmcmFtZVNldHRpbmdzLnksdGhpcy5pZnJhbWVTZXR0aW5ncy53aWR0aCx0aGlzLmlmcmFtZVNldHRpbmdzLmhlaWdodCx0aGlzLmlmcmFtZVNldHRpbmdzLnJvdGF0aW9uKX1zZXRJZnJhbWVQb3NUb3AoQSl7aWYoIXRoaXMuR2V0SUZyYW1lU3RhdGUoKSlyZXR1cm47Y29uc3QgZT10aGlzLmNyZWF0ZWRJZnJhbWU7dGhpcy5TZXRJRnJhbWVQb3NpdGlvbihlLHRoaXMuaWZyYW1lU2V0dGluZ3MueCxjLnRvTnVtYmVyKEEuWSksdGhpcy5pZnJhbWVTZXR0aW5ncy53aWR0aCx0aGlzLmlmcmFtZVNldHRpbmdzLmhlaWdodCx0aGlzLmlmcmFtZVNldHRpbmdzLnJvdGF0aW9uKX1zZXRJZnJhbWVTaXplV2lkdGgoQSl7aWYoIXRoaXMuR2V0SUZyYW1lU3RhdGUoKSlyZXR1cm47Y29uc3QgZT10aGlzLmNyZWF0ZWRJZnJhbWU7dGhpcy5TZXRJRnJhbWVQb3NpdGlvbihlLHRoaXMuaWZyYW1lU2V0dGluZ3MueCx0aGlzLmlmcmFtZVNldHRpbmdzLnksYy50b051bWJlcihBLldJRFRIKSx0aGlzLmlmcmFtZVNldHRpbmdzLmhlaWdodCx0aGlzLmlmcmFtZVNldHRpbmdzLnJvdGF0aW9uKX1zZXRJZnJhbWVTaXplSGVpZ2h0KEEpe2lmKCF0aGlzLkdldElGcmFtZVN0YXRlKCkpcmV0dXJuO2NvbnN0IGU9dGhpcy5jcmVhdGVkSWZyYW1lO3RoaXMuU2V0SUZyYW1lUG9zaXRpb24oZSx0aGlzLmlmcmFtZVNldHRpbmdzLngsdGhpcy5pZnJhbWVTZXR0aW5ncy55LHRoaXMuaWZyYW1lU2V0dGluZ3Mud2lkdGgsYy50b051bWJlcihBLkhFSUdIVCksdGhpcy5pZnJhbWVTZXR0aW5ncy5yb3RhdGlvbil9c2V0SWZyYW1lUm90YXRpb24oQSl7aWYoIXRoaXMuR2V0SUZyYW1lU3RhdGUoKSlyZXR1cm47Y29uc3QgZT10aGlzLmNyZWF0ZWRJZnJhbWU7dGhpcy5TZXRJRnJhbWVQb3NpdGlvbihlLHRoaXMuaWZyYW1lU2V0dGluZ3MueCx0aGlzLmlmcmFtZVNldHRpbmdzLnksdGhpcy5pZnJhbWVTZXR0aW5ncy53aWR0aCx0aGlzLmlmcmFtZVNldHRpbmdzLmhlaWdodCxjLnRvTnVtYmVyKEEuUk9UQVRFKSl9c2V0SWZyYW1lQmFja2dyb3VuZENvbG9yKEEpe2lmKCF0aGlzLkdldElGcmFtZVN0YXRlKCkpcmV0dXJuO2NvbnN0IGU9dGhpcy5jcmVhdGVkSWZyYW1lO3RoaXMuU2V0SUZyYW1lQ29sb3JzKGUsQS5DT0xPUix0aGlzLmlmcmFtZVNldHRpbmdzLm9wYWNpdHkpfXNldElmcmFtZUJhY2tncm91bmRPcGFjaXR5KEEpe2lmKCF0aGlzLkdldElGcmFtZVN0YXRlKCkpcmV0dXJuO2NvbnN0IGU9dGhpcy5jcmVhdGVkSWZyYW1lO2xldCB0PWMudG9OdW1iZXIoQS5HSE9TVCk7dD4xMDAmJih0PTEwMCksdDwwJiYodD0wKSx0Lz0xMDAsdD0xLXQsdGhpcy5TZXRJRnJhbWVDb2xvcnMoZSx0aGlzLmlmcmFtZVNldHRpbmdzLmNvbG9yLHQpfXNldElmcmFtZUNsaWNrYWJsZShBKXtpZighdGhpcy5HZXRJRnJhbWVTdGF0ZSgpKXJldHVybjtjb25zdCBlPXRoaXMuY3JlYXRlZElmcmFtZTtsZXQgdD0hMTsiaW50ZXJhY3RhYmxlIj09PWMudG9TdHJpbmcoQS5VU0FCTEUpLnRvTG93ZXJDYXNlKCkmJih0PSEwKSwib24iPT09Yy50b1N0cmluZyhBLlVTQUJMRSkudG9Mb3dlckNhc2UoKSYmKHQ9ITApLCJlbmFibGVkIj09PWMudG9TdHJpbmcoQS5VU0FCTEUpLnRvTG93ZXJDYXNlKCkmJih0PSEwKSwidHJ1ZSI9PT1jLnRvU3RyaW5nKEEuVVNBQkxFKS50b0xvd2VyQ2FzZSgpJiYodD0hMCksdGhpcy5TZXRJRnJhbWVDbGlja2FibGUoZSx0KX1zaG93SWZyYW1lRWxlbWVudCgpe2lmKCF0aGlzLkdldElGcmFtZVN0YXRlKCkpcmV0dXJuO3RoaXMuY3JlYXRlZElmcmFtZS5zdHlsZS5kaXNwbGF5PSIifWhpZGVJZnJhbWVFbGVtZW50KCl7aWYoIXRoaXMuR2V0SUZyYW1lU3RhdGUoKSlyZXR1cm47dGhpcy5jcmVhdGVkSWZyYW1lLnN0eWxlLmRpc3BsYXk9Im5vbmUifWdldElmcmFtZUxlZnQoKXtyZXR1cm4gdGhpcy5HZXRJRnJhbWVTdGF0ZSgpP3RoaXMuaWZyYW1lU2V0dGluZ3MueDowfWdldElmcmFtZVRvcCgpe3JldHVybiB0aGlzLkdldElGcmFtZVN0YXRlKCk/dGhpcy5pZnJhbWVTZXR0aW5ncy55OjB9Z2V0SWZyYW1lV2lkdGgoKXtyZXR1cm4gdGhpcy5HZXRJRnJhbWVTdGF0ZSgpP3RoaXMuaWZyYW1lU2V0dGluZ3Mud2lkdGg6NDgwfWdldElmcmFtZUhlaWdodCgpe3JldHVybiB0aGlzLkdldElGcmFtZVN0YXRlKCk/dGhpcy5pZnJhbWVTZXR0aW5ncy5oZWlnaHQ6MzYwfWdldElmcmFtZVJvdGF0aW9uKCl7cmV0dXJuIHRoaXMuR2V0SUZyYW1lU3RhdGUoKT90aGlzLmlmcmFtZVNldHRpbmdzLnJvdGF0aW9uOjkwfWdldElmcmFtZVRhcmdldFVybCgpe3JldHVybiB0aGlzLkdldElGcmFtZVN0YXRlKCk/dGhpcy5kaXNwbGF5V2Vic2l0ZVVybDoiIn1nZXRJZnJhbWVCYWNrZ3JvdW5kQ29sb3IoKXtpZighdGhpcy5HZXRJRnJhbWVTdGF0ZSgpKXJldHVybiIjZmZmZmZmIjtjb25zdCBBPXRoaXMuaWZyYW1lU2V0dGluZ3MuY29sb3IsZT1jLnRvUmdiQ29sb3JPYmplY3QoQSk7cmV0dXJuIEIucmdiVG9IZXgoZSl9Z2V0SWZyYW1lQmFja2dyb3VuZE9wYWNpdHkoKXtpZighdGhpcy5HZXRJRnJhbWVTdGF0ZSgpKXJldHVybiAxMDA7cmV0dXJuIDEwMCooMS10aGlzLmlmcmFtZVNldHRpbmdzLm9wYWNpdHkpfWdldElmcmFtZUNsaWNrYWJsZSgpe3JldHVybiF0aGlzLkdldElGcmFtZVN0YXRlKCl8fHRoaXMuaWZyYW1lU2V0dGluZ3MuY2xpY2thYmxlfWlmcmFtZUVsZW1lbnRJc0hpZGRlbigpe3JldHVybiEhdGhpcy5HZXRJRnJhbWVTdGF0ZSgpJiYibm9uZSI9PT10aGlzLmNyZWF0ZWRJZnJhbWUuc3R5bGUuZGlzcGxheX13aGVuSWZyYW1lSXNMb2FkZWQoKXtjb25zdCBBPXRoaXMuaWZyYW1lTG9hZGVkVmFsdWU7cmV0dXJuIHRoaXMuaWZyYW1lTG9hZGVkVmFsdWU9ITEsQX1pZnJhbWVFbGVtZW50U2V0RWZmZWN0KEEpe3RoaXMuR2V0SUZyYW1lU3RhdGUoKSYmKHRoaXMuaWZyYW1lRmlsdGVyc1tBLkVGRkVDVF09Yy50b051bWJlcihBLkFNT1VOVCksdGhpcy5BcHBseUZpbHRlck9wdGlvbnModGhpcy5jcmVhdGVkSWZyYW1lKSl9aWZyYW1lRWxlbWVudENoYW5nZUVmZmVjdChBKXt0aGlzLkdldElGcmFtZVN0YXRlKCkmJih0aGlzLmlmcmFtZUZpbHRlcnNbQS5FRkZFQ1RdKz1jLnRvTnVtYmVyKEEuQU1PVU5UKSx0aGlzLkFwcGx5RmlsdGVyT3B0aW9ucyh0aGlzLmNyZWF0ZWRJZnJhbWUpKX1pZnJhbWVFbGVtZW50Q2xlYXJFZmZlY3RzKCl7dGhpcy5HZXRJRnJhbWVTdGF0ZSgpJiYodGhpcy5pZnJhbWVGaWx0ZXJzPUUoZy5pdGVtcy5tYXAoQT0+QS52YWx1ZSksMCksdGhpcy5BcHBseUZpbHRlck9wdGlvbnModGhpcy5jcmVhdGVkSWZyYW1lKSl9Z2V0SWZyYW1lRWZmZWN0QW1vdW50KEEpe3JldHVybiB0aGlzLkdldElGcmFtZVN0YXRlKCk/dGhpcy5pZnJhbWVGaWx0ZXJzW0EuRUZGRUNUXTowfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKSxvPW5ldyh0KDI3OSkuSGVscGVyKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5oZWxwZXI9byx0aGlzLmhlbHBlci5ydW50aW1lPXRoaXMucnVudGltZSx0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RPUF9BTEwiLCgpPT57Zm9yKGNvbnN0IEEgaW4gby5hdWRpb0dyb3Vwcyl7Y29uc3QgZT1vLkdldEF1ZGlvR3JvdXAoQSk7Zm9yKGNvbnN0IEEgaW4gZS5zb3VyY2VzKWUuc291cmNlc1tBXS5zdG9wKCl9fSksdGhpcy5ydW50aW1lLnJlZ2lzdGVyRXh0ZW5zaW9uQXVkaW9Db250ZXh0KCJqZ0V4dGVuZGVkQXVkaW8iLHRoaXMuaGVscGVyLmF1ZGlvQ29udGV4dCx0aGlzLmhlbHBlci5hdWRpb0dsb2JhbFZvbHVtZU5vZGUpfWRlc2VyaWFsaXplKEEpe2Zvcihjb25zdCBBIGluIG8uYXVkaW9Hcm91cHMpby5EZWxldGVBdWRpb0dyb3VwKEEpO28uYXVkaW9Hcm91cHM9e307Zm9yKGNvbnN0IGUgb2YgQSlvLkFkZEF1ZGlvR3JvdXAoZS5pZCxlKX1zZXJpYWxpemUoKXtyZXR1cm4gby5HZXRBbGxBdWRpb0dyb3VwcygpLm1hcChBPT4oe2lkOkEuaWQsc291cmNlczp7fSxnbG9iYWxWb2x1bWU6QS5nbG9iYWxWb2x1bWUsZ2xvYmFsU3BlZWQ6QS5nbG9iYWxTcGVlZCxnbG9iYWxQaXRjaDpBLmdsb2JhbFBpdGNoLGdsb2JhbFBhbjpBLmdsb2JhbFBhbn0pKX1vcmRlckNhdGVnb3J5QmxvY2tzKEEpe2NvbnN0IGU9e2NyZWF0ZTpBWzBdLGRlbGV0ZTpBWzFdfSx0PUFbMl07QS5zcGxpY2UoMCwzKTtjb25zdCBuPW8uR2V0QWxsQXVkaW9Hcm91cHMoKS5tYXAoQT0+dC5yZXBsYWNlKCJ7YXVkaW9Hcm91cElkfSIsQS5pZCkpO3JldHVybiBuLmxlbmd0aD8obi5yZXZlcnNlKCksbi5wdXNoKGUuZGVsZXRlKSxuLnB1c2goZS5jcmVhdGUpLEE9bi5yZXZlcnNlKCkuY29uY2F0KEEpKTpbZS5jcmVhdGVdfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnRXh0ZW5kZWRBdWRpbyIsbmFtZToiU291bmQgU3lzdGVtcyIsY29sb3IxOiIjRTI1NkExIixjb2xvcjI6IiNEMzMzODgiLGlzRHluYW1pYzohMCxvcmRlckJsb2Nrczp0aGlzLm9yZGVyQ2F0ZWdvcnlCbG9ja3MsYmxvY2tzOlt7b3Bjb2RlOiJjcmVhdGVBdWRpb0dyb3VwIix0ZXh0OiJOZXcgQXVkaW8gR3JvdXAiLGJsb2NrVHlwZTpuLkJVVFRPTn0se29wY29kZToiZGVsZXRlQXVkaW9Hcm91cCIsdGV4dDoiUmVtb3ZlIGFuIEF1ZGlvIEdyb3VwIixibG9ja1R5cGU6bi5CVVRUT059LHtvcGNvZGU6ImF1ZGlvR3JvdXBHZXQiLHRleHQ6IltBVURJT0dST1VQXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntBVURJT0dST1VQOnttZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6InthdWRpb0dyb3VwSWR9Iix0eXBlOmkuU1RSSU5HfX19LHt0ZXh0OiJPcGVyYXRpb25zIixibG9ja1R5cGU6bi5MQUJFTH0se29wY29kZToiYXVkaW9Hcm91cFNldFZvbHVtZVNwZWVkUGl0Y2hQYW4iLHRleHQ6InNldCBbQVVESU9HUk9VUF0gW1ZTUFBdIHRvIFtWQUxVRV0lIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7QVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9LFZTUFA6e3R5cGU6aS5TVFJJTkcsbWVudToidnNwcCIsZGVmYXVsdFZhbHVlOiIifSxWQUxVRTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfX19LHtvcGNvZGU6ImF1ZGlvR3JvdXBHZXRNb2RpZmljYXRpb25zIix0ZXh0OiJbQVVESU9HUk9VUF0gW09QVElPTl0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7QVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9LE9QVElPTjp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwT3B0aW9ucyIsZGVmYXVsdFZhbHVlOiIifX19LCItLS0iLHtvcGNvZGU6ImF1ZGlvU291cmNlQ3JlYXRlIix0ZXh0OiJbQ1JFQVRFT1BUSU9OXSBhdWRpbyBzb3VyY2UgbmFtZWQgW05BTUVdIGluIFtBVURJT0dST1VQXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0NSRUFURU9QVElPTjp7dHlwZTppLlNUUklORyxtZW51OiJjcmVhdGVPcHRpb25zIixkZWZhdWx0VmFsdWU6IiJ9LE5BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJBdWRpb1NvdXJjZTEifSxBVURJT0dST1VQOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImF1ZGlvR3JvdXAiLGRlZmF1bHRWYWx1ZToiIn19fSx7b3Bjb2RlOiJhdWRpb1NvdXJjZUR1cGxpY2F0ZSIsdGV4dDoiZHVwbGljYXRlIGF1ZGlvIHNvdXJjZSBmcm9tIFtOQU1FXSB0byBbQ09QWV0gaW4gW0FVRElPR1JPVVBdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IkF1ZGlvU291cmNlMSJ9LENPUFk6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJBdWRpb1NvdXJjZTIifSxBVURJT0dST1VQOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImF1ZGlvR3JvdXAiLGRlZmF1bHRWYWx1ZToiIn19fSx7b3Bjb2RlOiJhdWRpb1NvdXJjZVJldmVyc2UiLHRleHQ6InJldmVyc2UgYXVkaW8gc291cmNlIHVzZWQgaW4gW05BTUVdIGluIFtBVURJT0dST1VQXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJBdWRpb1NvdXJjZTEifSxDT1BZOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiQXVkaW9Tb3VyY2UyIn0sQVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9fX0se29wY29kZToiYXVkaW9Tb3VyY2VEZWxldGVBbGwiLHRleHQ6IltERUxFVEVPUFRJT05dIGFsbCBhdWRpbyBzb3VyY2VzIGluIFtBVURJT0dST1VQXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0RFTEVURU9QVElPTjp7dHlwZTppLlNUUklORyxtZW51OiJkZWxldGVPcHRpb25zIixkZWZhdWx0VmFsdWU6IiJ9LEFVRElPR1JPVVA6e3R5cGU6aS5TVFJJTkcsbWVudToiYXVkaW9Hcm91cCIsZGVmYXVsdFZhbHVlOiIifX19LCItLS0iLHtvcGNvZGU6ImF1ZGlvU291cmNlU2V0U2NyYXRjaCIsdGV4dDoic2V0IGF1ZGlvIHNvdXJjZSBbTkFNRV0gaW4gW0FVRElPR1JPVVBdIHRvIHVzZSBbU09VTkRdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IkF1ZGlvU291cmNlMSJ9LEFVRElPR1JPVVA6e3R5cGU6aS5TVFJJTkcsbWVudToiYXVkaW9Hcm91cCIsZGVmYXVsdFZhbHVlOiIifSxTT1VORDp7dHlwZTppLlNUUklORyxtZW51OiJzb3VuZHMiLGRlZmF1bHRWYWx1ZToiIn19fSx7b3Bjb2RlOiJhdWRpb1NvdXJjZVNldFVybCIsdGV4dDoic2V0IGF1ZGlvIHNvdXJjZSBbTkFNRV0gaW4gW0FVRElPR1JPVVBdIHRvIHVzZSBbVVJMXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJBdWRpb1NvdXJjZTEifSxBVURJT0dST1VQOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImF1ZGlvR3JvdXAiLGRlZmF1bHRWYWx1ZToiIn0sVVJMOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiaHR0cHM6Ly9leHRlbnNpb25zLnR1cmJvd2FycC5vcmcvbWVvdy5tcDMifX19LHtvcGNvZGU6ImF1ZGlvU291cmNlUGxheWVyT3B0aW9uIix0ZXh0OiJbUExBWUVST1BUSU9OXSBhdWRpbyBzb3VyY2UgW05BTUVdIGluIFtBVURJT0dST1VQXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e1BMQVlFUk9QVElPTjp7dHlwZTppLlNUUklORyxtZW51OiJwbGF5ZXJPcHRpb25zIixkZWZhdWx0VmFsdWU6IiJ9LE5BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJBdWRpb1NvdXJjZTEifSxBVURJT0dST1VQOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImF1ZGlvR3JvdXAiLGRlZmF1bHRWYWx1ZToiIn19fSwiLS0tIix7b3Bjb2RlOiJhdWRpb1NvdXJjZVNldExvb3AiLHRleHQ6InNldCBhdWRpbyBzb3VyY2UgW05BTUVdIGluIFtBVURJT0dST1VQXSB0byBbTE9PUF0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiQXVkaW9Tb3VyY2UxIn0sQVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9LExPT1A6e3R5cGU6aS5TVFJJTkcsbWVudToibG9vcCIsZGVmYXVsdFZhbHVlOiJsb29wIn19fSx7b3Bjb2RlOiJhdWRpb1NvdXJjZVNldFRpbWUyIix0ZXh0OiJzZXQgYXVkaW8gc291cmNlIFtOQU1FXSBbVElNRVBPU10gcG9zaXRpb24gaW4gW0FVRElPR1JPVVBdIHRvIFtUSU1FXSBzZWNvbmRzIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IkF1ZGlvU291cmNlMSJ9LFRJTUVQT1M6e3R5cGU6aS5TVFJJTkcsbWVudToidGltZVBvc2l0aW9uIn0sQVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9LFRJTUU6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOi4zfX19LHtvcGNvZGU6ImF1ZGlvU291cmNlU2V0Vm9sdW1lU3BlZWRQaXRjaFBhbiIsdGV4dDoic2V0IGF1ZGlvIHNvdXJjZSBbTkFNRV0gW1ZTUFBdIGluIFtBVURJT0dST1VQXSB0byBbVkFMVUVdJSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJBdWRpb1NvdXJjZTEifSxWU1BQOnt0eXBlOmkuU1RSSU5HLG1lbnU6InZzcHAiLGRlZmF1bHRWYWx1ZToiIn0sQVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9LFZBTFVFOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMDB9fX0sIi0tLSIse29wY29kZToiYXVkaW9Tb3VyY2VHZXRNb2RpZmljYXRpb25zQm9vbGVhbiIsdGV4dDoiYXVkaW8gc291cmNlIFtOQU1FXSBbT1BUSU9OXSBpbiBbQVVESU9HUk9VUF0iLGJsb2NrVHlwZTpuLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiQXVkaW9Tb3VyY2UxIn0sT1BUSU9OOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImF1ZGlvU291cmNlT3B0aW9uc0Jvb2xlYW5zIixkZWZhdWx0VmFsdWU6IiJ9LEFVRElPR1JPVVA6e3R5cGU6aS5TVFJJTkcsbWVudToiYXVkaW9Hcm91cCIsZGVmYXVsdFZhbHVlOiIifX19LHtvcGNvZGU6ImF1ZGlvU291cmNlR2V0TW9kaWZpY2F0aW9uc05vcm1hbCIsdGV4dDoiYXVkaW8gc291cmNlIFtOQU1FXSBbT1BUSU9OXSBpbiBbQVVESU9HUk9VUF0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IkF1ZGlvU291cmNlMSJ9LE9QVElPTjp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb1NvdXJjZU9wdGlvbnMiLGRlZmF1bHRWYWx1ZToiIn0sQVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9fX0se29wY29kZToiYXVkaW9Tb3VyY2VTZXRUaW1lIix0ZXh0OiJzZXQgYXVkaW8gc291cmNlIFtOQU1FXSBzdGFydCBwb3NpdGlvbiBpbiBbQVVESU9HUk9VUF0gdG8gW1RJTUVdIHNlY29uZHMiLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiQXVkaW9Tb3VyY2UxIn0sQVVESU9HUk9VUDp7dHlwZTppLlNUUklORyxtZW51OiJhdWRpb0dyb3VwIixkZWZhdWx0VmFsdWU6IiJ9LFRJTUU6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOi4zfX0saGlkZUZyb21QYWxldHRlOiEwfV0sbWVudXM6e2F1ZGlvR3JvdXA6ImZldGNoQXVkaW9Hcm91cE1lbnUiLHNvdW5kczoiZmV0Y2hTY3JhdGNoU291bmRNZW51Iix2c3BwOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJ2b2x1bWUiLHZhbHVlOiJ2b2x1bWUifSx7dGV4dDoic3BlZWQiLHZhbHVlOiJzcGVlZCJ9LHt0ZXh0OiJkZXR1bmUiLHZhbHVlOiJwaXRjaCJ9LHt0ZXh0OiJwYW4iLHZhbHVlOiJwYW4ifV19LHBsYXllck9wdGlvbnM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6InBsYXkiLHZhbHVlOiJwbGF5In0se3RleHQ6InBhdXNlIix2YWx1ZToicGF1c2UifSx7dGV4dDoic3RvcCIsdmFsdWU6InN0b3AifV19LGxvb3A6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6Imxvb3AiLHZhbHVlOiJsb29wIn0se3RleHQ6Im5vdCBsb29wIix2YWx1ZToibm90IGxvb3AifV19LHRpbWVQb3NpdGlvbjp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDoidGltZSIsdmFsdWU6InRpbWUifSx7dGV4dDoic3RhcnQiLHZhbHVlOiJzdGFydCJ9LHt0ZXh0OiJlbmQiLHZhbHVlOiJlbmQifSx7dGV4dDoic3RhcnQgbG9vcCIsdmFsdWU6InN0YXJ0IGxvb3AifSx7dGV4dDoiZW5kIGxvb3AiLHZhbHVlOiJlbmQgbG9vcCJ9XX0sZGVsZXRlT3B0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDoiZGVsZXRlIix2YWx1ZToiZGVsZXRlIn0se3RleHQ6InBsYXkiLHZhbHVlOiJwbGF5In0se3RleHQ6InBhdXNlIix2YWx1ZToicGF1c2UifSx7dGV4dDoic3RvcCIsdmFsdWU6InN0b3AifV19LGNyZWF0ZU9wdGlvbnM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6ImNyZWF0ZSIsdmFsdWU6ImNyZWF0ZSJ9LHt0ZXh0OiJkZWxldGUiLHZhbHVlOiJkZWxldGUifV19LGF1ZGlvR3JvdXBPcHRpb25zOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJ2b2x1bWUiLHZhbHVlOiJ2b2x1bWUifSx7dGV4dDoic3BlZWQiLHZhbHVlOiJzcGVlZCJ9LHt0ZXh0OiJkZXR1bmUiLHZhbHVlOiJwaXRjaCJ9LHt0ZXh0OiJwYW4iLHZhbHVlOiJwYW4ifV19LGF1ZGlvU291cmNlT3B0aW9uc0Jvb2xlYW5zOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJwbGF5aW5nIix2YWx1ZToicGxheWluZyJ9LHt0ZXh0OiJwYXVzZWQiLHZhbHVlOiJwYXVzZWQifSx7dGV4dDoibG9vcGluZyIsdmFsdWU6Imxvb3BpbmcifV19LGF1ZGlvU291cmNlT3B0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDoidm9sdW1lIix2YWx1ZToidm9sdW1lIn0se3RleHQ6InNwZWVkIix2YWx1ZToic3BlZWQifSx7dGV4dDoiZGV0dW5lIix2YWx1ZToicGl0Y2gifSx7dGV4dDoicGFuIix2YWx1ZToicGFuIn0se3RleHQ6InRpbWUgcG9zaXRpb24iLHZhbHVlOiJ0aW1lIHBvc2l0aW9uIn0se3RleHQ6Im91dHB1dCB2b2x1bWUiLHZhbHVlOiJvdXRwdXQgdm9sdW1lIn0se3RleHQ6InN0YXJ0IHBvc2l0aW9uIix2YWx1ZToic3RhcnQgcG9zaXRpb24ifSx7dGV4dDoiZW5kIHBvc2l0aW9uIix2YWx1ZToiZW5kIHBvc2l0aW9uIn0se3RleHQ6InN0YXJ0IGxvb3AgcG9zaXRpb24iLHZhbHVlOiJzdGFydCBsb29wIHBvc2l0aW9uIn0se3RleHQ6ImVuZCBsb29wIHBvc2l0aW9uIix2YWx1ZToiZW5kIGxvb3AgcG9zaXRpb24ifSx7dGV4dDoic291bmQgbGVuZ3RoIix2YWx1ZToic291bmQgbGVuZ3RoIn0se3RleHQ6Im9yaWdpbiBzb3VuZCIsdmFsdWU6Im9yaWdpbiBzb3VuZCJ9XX19fX1jcmVhdGVBdWRpb0dyb3VwKCl7Y29uc3QgQT1wcm9tcHQoIlNldCBhIG5hbWUgZm9yIHRoaXMgQXVkaW8gR3JvdXA6IiwiYXVkaW8gZ3JvdXAgIisoby5HZXRBbGxBdWRpb0dyb3VwcygpLmxlbmd0aCsxKSk7cmV0dXJuIEE/by5HZXRBdWRpb0dyb3VwKEEpP2FsZXJ0KCciJy5jb25jYXQoQSwnIiBpcyB0YWtlbiEnKSk6KG8uQWRkQXVkaW9Hcm91cChBKSx2bS5lbWl0V29ya3NwYWNlVXBkYXRlKCksdm9pZCB0aGlzLnNlcmlhbGl6ZSgpKTphbGVydCgiQ2FuY2VsZWQiKX1kZWxldGVBdWRpb0dyb3VwKCl7Y29uc3QgQT1wcm9tcHQoIldoaWNoIGF1ZGlvIGdyb3VwIHdvdWxkIHlvdSBsaWtlIHRvIGRlbGV0ZT8iKTtvLkRlbGV0ZUF1ZGlvR3JvdXAoQSksdm0uZW1pdFdvcmtzcGFjZVVwZGF0ZSgpLHRoaXMuc2VyaWFsaXplKCl9ZmV0Y2hBdWRpb0dyb3VwTWVudSgpe2NvbnN0IEE9by5HZXRBbGxBdWRpb0dyb3VwcygpO3JldHVybiBBLmxlbmd0aDw9MD9be3RleHQ6IiIsdmFsdWU6IiJ9XTpBLm1hcChBPT4oe3RleHQ6QS5pZCx2YWx1ZTpBLmlkfSkpfWZldGNoU2NyYXRjaFNvdW5kTWVudSgpe2NvbnN0IEE9dm0uZWRpdGluZ1RhcmdldC5zcHJpdGUuc291bmRzO3JldHVybiBBLmxlbmd0aDw9MD9be3RleHQ6IiIsdmFsdWU6IiJ9XTpBLm1hcChBPT4oe3RleHQ6QS5uYW1lLHZhbHVlOkEubmFtZX0pKX1hdWRpb0dyb3VwR2V0KEEpe2NvbnN0IGU9by5HZXRBdWRpb0dyb3VwKEEuQVVESU9HUk9VUCk7cmV0dXJuIEpTT04uc3RyaW5naWZ5KE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGUuc291cmNlcykpfWF1ZGlvR3JvdXBTZXRWb2x1bWVTcGVlZFBpdGNoUGFuKEEpe2NvbnN0IGU9by5HZXRBdWRpb0dyb3VwKEEuQVVESU9HUk9VUCk7c3dpdGNoKEEuVlNQUCl7Y2FzZSJ2b2x1bWUiOmUuZ2xvYmFsVm9sdW1lPW8uQ2xhbXAoci50b051bWJlcihBLlZBTFVFKS8xMDAsMCwxKTticmVhaztjYXNlInNwZWVkIjplLmdsb2JhbFNwZWVkPW8uQ2xhbXAoci50b051bWJlcihBLlZBTFVFKS8xMDAsMCwxLzApO2JyZWFrO2Nhc2UiZGV0dW5lIjpjYXNlInBpdGNoIjplLmdsb2JhbFBpdGNoPXIudG9OdW1iZXIoQS5WQUxVRSk7YnJlYWs7Y2FzZSJwYW4iOmUuZ2xvYmFsUGFuPW8uQ2xhbXAoci50b051bWJlcihBLlZBTFVFKSwtMTAwLDEwMCkvMTAwfW8uVXBkYXRlQXVkaW9Hcm91cFNvdXJjZXMoZSl9YXVkaW9Tb3VyY2VDcmVhdGUoQSl7Y29uc3QgZT1vLkdldEF1ZGlvR3JvdXAoQS5BVURJT0dST1VQKTtzd2l0Y2goQS5DUkVBVEVPUFRJT04pe2Nhc2UiY3JlYXRlIjpvLlJlbW92ZUF1ZGlvU291cmNlKGUsQS5OQU1FKSxvLkFwcGVuZEF1ZGlvU291cmNlKGUsQS5OQU1FKTticmVhaztjYXNlImRlbGV0ZSI6by5SZW1vdmVBdWRpb1NvdXJjZShlLEEuTkFNRSl9fWF1ZGlvU291cmNlRHVwbGljYXRlKEEpe2NvbnN0IGU9by5HZXRBdWRpb0dyb3VwKEEuQVVESU9HUk9VUCksdD1yLnRvU3RyaW5nKEEuTkFNRSksbj1yLnRvU3RyaW5nKEEuQ09QWSk7aWYoIWUpcmV0dXJuO2NvbnN0IGk9by5HcmFiQXVkaW9Tb3VyY2UoZSx0KTtpJiYoby5SZW1vdmVBdWRpb1NvdXJjZShlLG4pLGUuc291cmNlc1tuXT1pLmNsb25lKCkpfWF1ZGlvU291cmNlUmV2ZXJzZShBKXtjb25zdCBlPW8uR2V0QXVkaW9Hcm91cChBLkFVRElPR1JPVVApLHQ9ci50b1N0cmluZyhBLk5BTUUpO2lmKCFlKXJldHVybjtjb25zdCBuPW8uR3JhYkF1ZGlvU291cmNlKGUsdCk7biYmbi5yZXZlcnNlKCl9YXVkaW9Tb3VyY2VEZWxldGVBbGwoQSl7Y29uc3QgZT1vLkdldEF1ZGlvR3JvdXAoQS5BVURJT0dST1VQKTtmb3IoY29uc3QgdCBpbiBlLnNvdXJjZXMpc3dpdGNoKEEuREVMRVRFT1BUSU9OKXtjYXNlImRlbGV0ZSI6by5SZW1vdmVBdWRpb1NvdXJjZShlLHQpO2JyZWFrO2Nhc2UicGxheSI6ZS5zb3VyY2VzW3RdLnBsYXkoKTticmVhaztjYXNlInBhdXNlIjplLnNvdXJjZXNbdF0ucGF1c2UoKTticmVhaztjYXNlInN0b3AiOmUuc291cmNlc1t0XS5zdG9wKCl9fWF1ZGlvU291cmNlU2V0U2NyYXRjaChBLGUpe3JldHVybiBuZXcgUHJvbWlzZSgodCxuKT0+e2NvbnN0IGk9by5HZXRBdWRpb0dyb3VwKEEuQVVESU9HUk9VUCk7aWYoIWkpcmV0dXJuIHQoKTtjb25zdCByPW8uR3JhYkF1ZGlvU291cmNlKGksQS5OQU1FKTtpZighcilyZXR1cm4gdCgpO2NvbnN0IHM9by5GaW5kU291bmRCeU5hbWUoZS50YXJnZXQuc3ByaXRlLnNvdW5kcyxBLlNPVU5EKTtpZighcylyZXR1cm4gdCgpO2xldCBhPSEwO3RyeXtlLnRhcmdldC5zcHJpdGUuc291bmRCYW5rLmdldFNvdW5kUGxheWVyKHMuc291bmRJZCkuYnVmZmVyfWNhdGNoKEEpe2E9ITF9aWYoIWEpcmV0dXJuIHQoKTtjb25zdCBCPWUudGFyZ2V0LnNwcml0ZS5zb3VuZEJhbmsuZ2V0U291bmRQbGF5ZXIocy5zb3VuZElkKS5idWZmZXI7ci5kdXJhdGlvbj1CLmR1cmF0aW9uLHIuc3JjPUIsci5vcmlnaW5BdWRpb05hbWU9IiIuY29uY2F0KEEuU09VTkQpLHQoKX0pfWF1ZGlvU291cmNlU2V0VXJsKEEsZSl7cmV0dXJuIG5ldyBQcm9taXNlKCh0LG4pPT57Y29uc3QgaT1vLkdldEF1ZGlvR3JvdXAoQS5BVURJT0dST1VQKTtpZighaSlyZXR1cm4gdCgpO2NvbnN0IHI9by5HcmFiQXVkaW9Tb3VyY2UoaSxBLk5BTUUpO2lmKCFyKXJldHVybiB0KCk7ZmV0Y2goQS5VUkwpLnRoZW4oZT0+ZS5hcnJheUJ1ZmZlcigpLnRoZW4oZT0+e28uYXVkaW9Db250ZXh0LmRlY29kZUF1ZGlvRGF0YShlLGU9PntyLmR1cmF0aW9uPWUuZHVyYXRpb24sci5zcmM9ZSxyLm9yaWdpbkF1ZGlvTmFtZT0iIi5jb25jYXQoQS5VUkwpLHQoKX0sdCl9KS5jYXRjaCh0KSkuY2F0Y2gobj0+e2NvbnN0IGk9by5GaW5kU291bmRCeU5hbWUoZS50YXJnZXQuc3ByaXRlLnNvdW5kcyxBLlVSTCk7aWYoaSl7bGV0IG49ITA7dHJ5e2UudGFyZ2V0LnNwcml0ZS5zb3VuZEJhbmsuZ2V0U291bmRQbGF5ZXIoaS5zb3VuZElkKS5idWZmZXJ9Y2F0Y2goQSl7bj0hMX1pZighbilyZXR1cm4gdCgpO2NvbnN0IG89ZS50YXJnZXQuc3ByaXRlLnNvdW5kQmFuay5nZXRTb3VuZFBsYXllcihpLnNvdW5kSWQpLmJ1ZmZlcjtyZXR1cm4gci5kdXJhdGlvbj1vLmR1cmF0aW9uLHIuc3JjPW8sci5vcmlnaW5BdWRpb05hbWU9IiIuY29uY2F0KEEuVVJMKSx0KCl9cmV0dXJuIGNvbnNvbGUud2FybihuKSx0KCl9KX0pfWF1ZGlvU291cmNlUGxheWVyT3B0aW9uKEEpe2NvbnN0IGU9by5HZXRBdWRpb0dyb3VwKEEuQVVESU9HUk9VUCk7aWYoIWUpcmV0dXJuO2NvbnN0IHQ9by5HcmFiQXVkaW9Tb3VyY2UoZSxBLk5BTUUpO3QmJlsicGxheSIsInBhdXNlIiwic3RvcCJdLmluY2x1ZGVzKEEuUExBWUVST1BUSU9OKSYmdFtBLlBMQVlFUk9QVElPTl0oKX1hdWRpb1NvdXJjZVNldExvb3AoQSl7Y29uc3QgZT1vLkdldEF1ZGlvR3JvdXAoQS5BVURJT0dST1VQKTtpZighZSlyZXR1cm47Y29uc3QgdD1vLkdyYWJBdWRpb1NvdXJjZShlLEEuTkFNRSk7dCYmWyJsb29wIiwibm90IGxvb3AiXS5pbmNsdWRlcyhBLkxPT1ApJiYodC5sb29waW5nPSJsb29wIj09QS5MT09QKX1hdWRpb1NvdXJjZVNldFRpbWUoQSl7Y29uc3QgZT1vLkdldEF1ZGlvR3JvdXAoQS5BVURJT0dST1VQKTtpZighZSlyZXR1cm47Y29uc3QgdD1vLkdyYWJBdWRpb1NvdXJjZShlLEEuTkFNRSk7dCYmKHQuc3RhcnRQb3NpdGlvbj1yLnRvTnVtYmVyKEEuVElNRSkpfWF1ZGlvU291cmNlU2V0VGltZTIoQSl7Y29uc3QgZT1vLkdldEF1ZGlvR3JvdXAoQS5BVURJT0dST1VQKTtpZighZSlyZXR1cm47Y29uc3QgdD1vLkdyYWJBdWRpb1NvdXJjZShlLEEuTkFNRSk7aWYodClzd2l0Y2goQS5USU1FUE9TKXtjYXNlInN0YXJ0Ijp0LnN0YXJ0UG9zaXRpb249ci50b051bWJlcihBLlRJTUUpO2JyZWFrO2Nhc2UiZW5kIjp0LmVuZFBvc2l0aW9uPXIudG9OdW1iZXIoQS5USU1FKTticmVhaztjYXNlInN0YXJ0IGxvb3AiOnQubG9vcFN0YXJ0UG9zaXRpb249ci50b051bWJlcihBLlRJTUUpO2JyZWFrO2Nhc2UiZW5kIGxvb3AiOnQubG9vcEVuZFBvc2l0aW9uPXIudG9OdW1iZXIoQS5USU1FKTticmVhaztjYXNlInRpbWUiOnQuc2V0VGltZVBvc2l0aW9uKHIudG9OdW1iZXIoQS5USU1FKSl9fWF1ZGlvU291cmNlU2V0Vm9sdW1lU3BlZWRQaXRjaFBhbihBKXtjb25zdCBlPW8uR2V0QXVkaW9Hcm91cChBLkFVRElPR1JPVVApO2lmKCFlKXJldHVybjtjb25zdCB0PW8uR3JhYkF1ZGlvU291cmNlKGUsQS5OQU1FKTtpZih0KXtzd2l0Y2goQS5WU1BQKXtjYXNlInZvbHVtZSI6dC52b2x1bWU9by5DbGFtcChyLnRvTnVtYmVyKEEuVkFMVUUpLzEwMCwwLDEpO2JyZWFrO2Nhc2Uic3BlZWQiOnQuc3BlZWQ9by5DbGFtcChyLnRvTnVtYmVyKEEuVkFMVUUpLzEwMCwwLDEvMCk7YnJlYWs7Y2FzZSJkZXR1bmUiOmNhc2UicGl0Y2giOnQucGl0Y2g9ci50b051bWJlcihBLlZBTFVFKTticmVhaztjYXNlInBhbiI6dC5wYW49by5DbGFtcChyLnRvTnVtYmVyKEEuVkFMVUUpLC0xMDAsMTAwKS8xMDB9by5VcGRhdGVBdWRpb0dyb3VwU291cmNlcyhlKX19YXVkaW9Hcm91cEdldE1vZGlmaWNhdGlvbnMoQSl7Y29uc3QgZT1vLkdldEF1ZGlvR3JvdXAoQS5BVURJT0dST1VQKTtzd2l0Y2goQS5PUFRJT04pe2Nhc2Uidm9sdW1lIjpyZXR1cm4gMTAwKmUuZ2xvYmFsVm9sdW1lO2Nhc2Uic3BlZWQiOnJldHVybiAxMDAqZS5nbG9iYWxTcGVlZDtjYXNlImRldHVuZSI6Y2FzZSJwaXRjaCI6cmV0dXJuIGUuZ2xvYmFsUGl0Y2g7Y2FzZSJwYW4iOnJldHVybiAxMDAqZS5nbG9iYWxQYW47ZGVmYXVsdDpyZXR1cm4gMH19YXVkaW9Tb3VyY2VHZXRNb2RpZmljYXRpb25zQm9vbGVhbihBKXtjb25zdCBlPW8uR2V0QXVkaW9Hcm91cChBLkFVRElPR1JPVVApO2lmKCFlKXJldHVybiExO2NvbnN0IHQ9by5HcmFiQXVkaW9Tb3VyY2UoZSxBLk5BTUUpO2lmKCF0KXJldHVybiExO3N3aXRjaChBLk9QVElPTil7Y2FzZSJwbGF5aW5nIjpyZXR1cm4hdC5wYXVzZWQmJiF0Lm5vdFBsYXlpbmc7Y2FzZSJwYXVzZWQiOnJldHVybiB0LnBhdXNlZDtjYXNlImxvb3BpbmciOnJldHVybiB0Lmxvb3Bpbmc7ZGVmYXVsdDpyZXR1cm4hMX19YXVkaW9Tb3VyY2VHZXRNb2RpZmljYXRpb25zTm9ybWFsKEEpe2NvbnN0IGU9by5HZXRBdWRpb0dyb3VwKEEuQVVESU9HUk9VUCk7aWYoIWUpcmV0dXJuIiI7Y29uc3QgdD1vLkdyYWJBdWRpb1NvdXJjZShlLEEuTkFNRSk7aWYoIXQpcmV0dXJuIiI7c3dpdGNoKEEuT1BUSU9OKXtjYXNlInZvbHVtZSI6cmV0dXJuIDEwMCp0LnZvbHVtZTtjYXNlInNwZWVkIjpyZXR1cm4gMTAwKnQuc3BlZWQ7Y2FzZSJkZXR1bmUiOmNhc2UicGl0Y2giOnJldHVybiB0LnBpdGNoO2Nhc2UicGFuIjpyZXR1cm4gMTAwKnQucGFuO2Nhc2Uic3RhcnQgcG9zaXRpb24iOnJldHVybiB0LnN0YXJ0UG9zaXRpb247Y2FzZSJlbmQgcG9zaXRpb24iOnJldHVybiB0LmVuZFBvc2l0aW9uO2Nhc2Uic3RhcnQgbG9vcCBwb3NpdGlvbiI6cmV0dXJuIHQubG9vcFN0YXJ0UG9zaXRpb247Y2FzZSJlbmQgbG9vcCBwb3NpdGlvbiI6cmV0dXJuIHQubG9vcEVuZFBvc2l0aW9uO2Nhc2UidGltZSBwb3NpdGlvbiI6cmV0dXJuIHQuZ2V0VGltZVBvc2l0aW9uKCk7Y2FzZSJzb3VuZCBsZW5ndGgiOnJldHVybiB0LmR1cmF0aW9uO2Nhc2Uib3JpZ2luIHNvdW5kIjpyZXR1cm4gdC5vcmlnaW5BdWRpb05hbWU7Y2FzZSJvdXRwdXQgdm9sdW1lIjpyZXR1cm4gMTAwKnQuZ2V0Vm9sdW1lKCk7Y2FzZSJkb21pbmFudCBmcmVxdWVuY3kiOnJldHVybiB0LmdldEZyZXF1ZW5jeSgpO2RlZmF1bHQ6cmV0dXJuIiJ9fX19LGZ1bmN0aW9uKEEsZSx0KXt0KDIpO2NvbnN0IG49dCgyODApO2Z1bmN0aW9uIGkoQSxlLHQpe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChBLGUpLHQpfWNsYXNzIHJ7Y29uc3RydWN0b3IoQSxlLHQsaSxyLG8pe3ZhciBzLGEsQixjLGcsRSxRLHUsbDtudWxsPT10JiYodD0iIiksbnVsbD09aSYmKGk9e30pLHRoaXMucnVudGltZT1vLHRoaXMuc3JjPXQsdGhpcy5kdXJhdGlvbj10LmR1cmF0aW9uLHRoaXMub3JpZ2luQXVkaW9OYW1lPSIiLHRoaXMudm9sdW1lPW51bGwhPT0ocz1pLnZvbHVtZSkmJnZvaWQgMCE9PXM/czoxLHRoaXMuc3BlZWQ9bnVsbCE9PShhPWkuc3BlZWQpJiZ2b2lkIDAhPT1hP2E6MSx0aGlzLnBpdGNoPW51bGwhPT0oQj1pLnBpdGNoKSYmdm9pZCAwIT09Qj9COjAsdGhpcy5wYW49bnVsbCE9PShjPWkucGFuKSYmdm9pZCAwIT09Yz9jOjAsdGhpcy5sb29waW5nPW51bGwhPT0oZz1pLmxvb3BpbmcpJiZ2b2lkIDAhPT1nJiZnLHRoaXMuc3RhcnRQb3NpdGlvbj1udWxsIT09KEU9aS5zdGFydFBvc2l0aW9uKSYmdm9pZCAwIT09RT9FOjAsdGhpcy5lbmRQb3NpdGlvbj1udWxsIT09KFE9aS5lbmRQb3NpdGlvbikmJnZvaWQgMCE9PVE/UToxLzAsdGhpcy5sb29wU3RhcnRQb3NpdGlvbj1udWxsIT09KHU9aS5sb29wU3RhcnRQb3NpdGlvbikmJnZvaWQgMCE9PXU/dTowLHRoaXMubG9vcEVuZFBvc2l0aW9uPW51bGwhPT0obD1pLmxvb3BFbmRQb3NpdGlvbikmJnZvaWQgMCE9PWw/bDoxLzAsdGhpcy5yZXN1bWVTcG90PTAsdGhpcy5wYXVzZWQ9ITEsdGhpcy5ub3RQbGF5aW5nPSEwLHRoaXMucGFyZW50PXIsdGhpcy5fYXVkaW9Ob2RlPW51bGwsdGhpcy5fYXVkaW9Db250ZXh0PUEsdGhpcy5fYXVkaW9Hcm91cD1lLHRoaXMuX2F1ZGlvUGFubmVyPXRoaXMuX2F1ZGlvQ29udGV4dC5jcmVhdGVQYW5uZXIoKSx0aGlzLl9hdWRpb0dhaW5Ob2RlPXRoaXMuX2F1ZGlvQ29udGV4dC5jcmVhdGVHYWluKCksdGhpcy5fYXVkaW9BbmFseXplck5vZGU9dGhpcy5fYXVkaW9Db250ZXh0LmNyZWF0ZUFuYWx5c2VyKCksdGhpcy5fYXVkaW9QYW5uZXIucGFubmluZ01vZGVsPSJlcXVhbHBvd2VyIix0aGlzLl9hdWRpb0dhaW5Ob2RlLmdhaW4udmFsdWU9MSx0aGlzLl9hdWRpb0dhaW5Ob2RlLmNvbm5lY3QodGhpcy5fYXVkaW9QYW5uZXIpLHRoaXMuX2F1ZGlvUGFubmVyLmNvbm5lY3QodGhpcy5fYXVkaW9BbmFseXplck5vZGUpLHRoaXMuX2F1ZGlvQW5hbHl6ZXJOb2RlLmNvbm5lY3Qoci5hdWRpb0dsb2JhbFZvbHVtZU5vZGUpLHRoaXMuX29yaWdpbmFsQ29uZmlnPWksdGhpcy5fcGxheWluZ1NyYz1udWxsLHRoaXMuX3RpbWVyPW5ldyBuKG8sQSksdGhpcy5fZGlzcG9zZWQ9ITF9cGxheShBKXtpZighdGhpcy5zcmMpdGhyb3ciQ2Fubm90IHBsYXkgYW4gZW1wdHkgYXVkaW8gc291cmNlIjt0cnl7dGhpcy5fYXVkaW9Ob2RlJiYodGhpcy5fYXVkaW9Ob2RlLm9uZW5kZWQ9bnVsbCx0aGlzLl9hdWRpb05vZGUuc3RvcCgpKX1jYXRjaChBKXt9ZmluYWxseXt0aGlzLl9hdWRpb05vZGU9bnVsbH1jb25zdCBlPXRoaXMuX2F1ZGlvQ29udGV4dC5jcmVhdGVCdWZmZXJTb3VyY2UoKTt0aGlzLl9hdWRpb05vZGU9ZSx0aGlzLnVwZGF0ZSgpLGUuYnVmZmVyPXRoaXMuc3JjLGUuY29ubmVjdCh0aGlzLl9hdWRpb0dhaW5Ob2RlKSx0aGlzLl9wbGF5aW5nU3JjPWUuYnVmZmVyLHRoaXMucGF1c2VkPyh0aGlzLnJlc3VtZVNwb3Q9dGhpcy5nZXRUaW1lUG9zaXRpb24oKSx0aGlzLl90aW1lci5zdGFydCgpKToodGhpcy5fdGltZXIucmVzZXQoKSx0aGlzLl90aW1lci5zZXRUaW1lKDFlMyppKG51bGwhPUE/QTp0aGlzLnN0YXJ0UG9zaXRpb24sMCx0aGlzLmR1cmF0aW9uKSksdGhpcy5fdGltZXIuc3RhcnQoKSk7bGV0IHQ9dGhpcy5yZXN1bWVTcG90LG49dGhpcy5lbmRQb3NpdGlvbjt0aGlzLnBhdXNlZD90aGlzLnBhdXNlZD0hMTp0PW51bGwhPUE/QTp0aGlzLnN0YXJ0UG9zaXRpb24sdGhpcy5sb29waW5nJiYobj10aGlzLmxvb3BFbmRQb3NpdGlvbiksdGhpcy5ub3RQbGF5aW5nPSExO2NvbnN0IHI9aShuLXQsMCx0aGlzLmR1cmF0aW9uKTtyPDEvdGhpcy5zcmMuc2FtcGxlUmF0ZT90aGlzLl9vbk5vZGVTdG9wKCEwKTooZS5zdGFydCgwLGkodCwwLHRoaXMuZHVyYXRpb24pLHIpLGUub25lbmRlZD0oKT0+e3RoaXMuX29uTm9kZVN0b3AoKX0pfXN0b3AoKXt0aGlzLm5vdFBsYXlpbmc9ITAsdGhpcy5wYXVzZWQ9ITEsdGhpcy5fdGltZXIuc3RvcCgpO3RyeXt0aGlzLl9hdWRpb05vZGUmJnRoaXMuX2F1ZGlvTm9kZS5zdG9wKCl9Y2F0Y2goQSl7fWZpbmFsbHl7dGhpcy5fYXVkaW9Ob2RlPW51bGx9fXBhdXNlKCl7dGhpcy5fYXVkaW9Ob2RlJiYodGhpcy5wYXVzZWQ9ITAsdGhpcy5ub3RQbGF5aW5nPSEwLHRoaXMuX3RpbWVyLnBhdXNlKCksdGhpcy5fYXVkaW9Ob2RlLm9uZW5kZWQ9bnVsbCx0aGlzLl9hdWRpb05vZGUuc3RvcCgpLHRoaXMuX2F1ZGlvTm9kZT1udWxsKX11cGRhdGUoKXtpZighdGhpcy5fYXVkaW9Ob2RlKXJldHVybjtjb25zdCBBPXRoaXMuX2F1ZGlvTm9kZSxlPXRoaXMuX2F1ZGlvR3JvdXAsdD10aGlzLl9hdWRpb0dhaW5Ob2RlLG49dGhpcy5fYXVkaW9QYW5uZXI7QS5wbGF5YmFja1JhdGUudmFsdWU9dGhpcy5zcGVlZCpNYXRoLnBvdygyLHRoaXMucGl0Y2gvMTIwMCksdC5nYWluLnZhbHVlPXRoaXMudm9sdW1lLEEucGxheWJhY2tSYXRlLnZhbHVlKj1lLmdsb2JhbFNwZWVkKk1hdGgucG93KDIsZS5nbG9iYWxQaXRjaC8xMjAwKSx0LmdhaW4udmFsdWUqPWUuZ2xvYmFsVm9sdW1lLHRoaXMuX3RpbWVyLnNwZWVkPUEucGxheWJhY2tSYXRlLnZhbHVlO2NvbnN0IHI9aSh0aGlzLnBhbitlLmdsb2JhbFBhbiwtMSwxKTtuLnBvc2l0aW9uWC52YWx1ZT1yLG4ucG9zaXRpb25ZLnZhbHVlPTAsbi5wb3NpdGlvbloudmFsdWU9MS1NYXRoLmFicyhyKX1kaXNwb3NlKCl7dGhpcy5fZGlzcG9zZWQ9ITAsdGhpcy5fdGltZXIuZGlzcG9zZSgpLHRoaXMuc3RvcCgpfWNsb25lKCl7cmV0dXJuIG5ldyByKHRoaXMuX2F1ZGlvQ29udGV4dCx0aGlzLl9hdWRpb0dyb3VwLHRoaXMuc3JjLHRoaXMuX29yaWdpbmFsQ29uZmlnLHRoaXMucGFyZW50LHRoaXMucnVudGltZSl9cmV2ZXJzZSgpe2lmKCF0aGlzLnNyYyl0aHJvdyJDYW5ub3QgcmV2ZXJzZSBhbiBlbXB0eSBhdWRpbyBzb3VyY2UiO2NvbnN0IEE9dGhpcy5zcmMsZT10aGlzLl9hdWRpb0NvbnRleHQuY3JlYXRlQnVmZmVyKEEubnVtYmVyT2ZDaGFubmVscyxBLmxlbmd0aCxBLnNhbXBsZVJhdGUpO2ZvcihsZXQgdD0wO3Q8QS5udW1iZXJPZkNoYW5uZWxzO3QrKyl7Y29uc3Qgbj1BLmdldENoYW5uZWxEYXRhKHQpLGk9ZS5nZXRDaGFubmVsRGF0YSh0KTtmb3IobGV0IGU9MDtlPEEubGVuZ3RoO2UrKylpW2VdPW5bQS5sZW5ndGgtMS1lXX10aGlzLnNyYz1lfXNldFRpbWVQb3NpdGlvbihBKXtpZighdGhpcy5fYXVkaW9Ob2RlJiYhdGhpcy5wYXVzZWQpcmV0dXJuO0E9aShBLDAsdGhpcy5fZ2V0QWN0aXZlU291cmNlKCkuZHVyYXRpb24pLHRoaXMucGF1c2VkP3RoaXMuX3RpbWVyLnNldFRpbWUoMWUzKkEpOih0aGlzLl90aW1lci5zZXRUaW1lKDFlMypBKSx0aGlzLnBsYXkoQSkpfWdldFZvbHVtZSgpe2NvbnN0IEE9dGhpcy5fYXVkaW9BbmFseXplck5vZGUsZT1BLmZyZXF1ZW5jeUJpbkNvdW50LHQ9bmV3IFVpbnQ4QXJyYXkoZSk7QS5nZXRCeXRlVGltZURvbWFpbkRhdGEodCk7bGV0IG49MDtmb3IobGV0IEE9MDtBPGU7QSsrKXtjb25zdCBlPXRbQV0vMTI4LTE7bis9ZSplfXJldHVybiBNYXRoLnNxcnQobi9lKX1nZXRGcmVxdWVuY3koKXtjb25zdCBBPXRoaXMuX2F1ZGlvQW5hbHl6ZXJOb2RlLGU9dGhpcy5fZ2V0QWN0aXZlU291cmNlKCksdD1BLmZyZXF1ZW5jeUJpbkNvdW50LG49bmV3IFVpbnQ4QXJyYXkodCk7QS5nZXRCeXRlRnJlcXVlbmN5RGF0YShuKTtsZXQgaT0wO2ZvcihsZXQgQT0xO0E8dDtBKyspbltBXT5uW2ldJiYoaT1BKTtyZXR1cm4gaSooZS5zYW1wbGVSYXRlLzIpL3R9Z2V0VGltZVBvc2l0aW9uKCl7Y29uc3QgQT10aGlzLl9nZXRBY3RpdmVTb3VyY2UoKTtyZXR1cm4gaSh0aGlzLl90aW1lci5nZXRUaW1lKCEwKSwwLEEuZHVyYXRpb24pfV9nZXRBY3RpdmVTb3VyY2UoKXtyZXR1cm4gdGhpcy5fYXVkaW9Ob2RlP3RoaXMuX3BsYXlpbmdTcmM6dGhpcy5zcmN9X29uTm9kZVN0b3AoQSl7IXRoaXMucGF1c2VkJiZ0aGlzLl9hdWRpb05vZGUmJihBfHwhdGhpcy5sb29waW5nfHx0aGlzLm5vdFBsYXlpbmc/KHRoaXMuX2F1ZGlvTm9kZS5vbmVuZGVkPW51bGwsdGhpcy5ub3RQbGF5aW5nPSEwLHRoaXMuX2F1ZGlvTm9kZT1udWxsLHRoaXMuX3RpbWVyLnN0b3AoKSk6dGhpcy5wbGF5KHRoaXMubG9vcFN0YXJ0UG9zaXRpb258fDApKX19QS5leHBvcnRzLkhlbHBlcj1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLmF1ZGlvR3JvdXBzPXt9LHRoaXMuYXVkaW9Db250ZXh0PW5ldyBBdWRpb0NvbnRleHQsdGhpcy5hdWRpb0dsb2JhbFZvbHVtZU5vZGU9dGhpcy5hdWRpb0NvbnRleHQuY3JlYXRlR2FpbigpLHRoaXMuYXVkaW9HbG9iYWxWb2x1bWVOb2RlLmdhaW4udmFsdWU9MSx0aGlzLmF1ZGlvR2xvYmFsVm9sdW1lTm9kZS5jb25uZWN0KHRoaXMuYXVkaW9Db250ZXh0LmRlc3RpbmF0aW9uKX1BZGRBdWRpb0dyb3VwKEEsZSx0KXtyZXR1cm4gbnVsbD09ZSYmKGU9e30pLHRoaXMuYXVkaW9Hcm91cHNbQV09e2lkOkEsc291cmNlczpudWxsPT10P3t9OnQsZ2xvYmFsVm9sdW1lOm51bGw9PWUuZ2xvYmFsVm9sdW1lPzE6ZS5nbG9iYWxWb2x1bWUsZ2xvYmFsU3BlZWQ6bnVsbD09ZS5nbG9iYWxTcGVlZD8xOmUuZ2xvYmFsU3BlZWQsZ2xvYmFsUGl0Y2g6bnVsbD09ZS5nbG9iYWxQaXRjaD8wOmUuZ2xvYmFsUGl0Y2gsZ2xvYmFsUGFuOm51bGw9PWUuZ2xvYmFsUGFuPzA6ZS5nbG9iYWxQYW59LHRoaXMuYXVkaW9Hcm91cHNbQV19RGVsZXRlQXVkaW9Hcm91cChBKXtjb25zdCBlPXRoaXMuYXVkaW9Hcm91cHNbQV07ZSYmKHRoaXMuRGlzcG9zZUF1ZGlvR3JvdXBTb3VyY2VzKGUpLGRlbGV0ZSB0aGlzLmF1ZGlvR3JvdXBzW0FdKX1HZXRBdWRpb0dyb3VwKEEpe3JldHVybiB0aGlzLmF1ZGlvR3JvdXBzW0FdfUdldEFsbEF1ZGlvR3JvdXBzKCl7cmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy5hdWRpb0dyb3Vwcyl9VXBkYXRlQXVkaW9Hcm91cFNvdXJjZXMoQSl7Y29uc3QgZT10aGlzLkdyYWJBbGxHcmFiQXVkaW9Tb3VyY2VzKEEpO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7QSsrKXtlW0FdLnVwZGF0ZSgpfX1EaXNwb3NlQXVkaW9Hcm91cFNvdXJjZXMoQSl7Y29uc3QgZT10aGlzLkdyYWJBbGxHcmFiQXVkaW9Tb3VyY2VzKEEpO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7QSsrKXtlW0FdLmRpc3Bvc2UoKX19QXBwZW5kQXVkaW9Tb3VyY2UoQSxlLHQsbil7Y29uc3QgaT0ic3RyaW5nIj09dHlwZW9mIEE/dGhpcy5HZXRBdWRpb0dyb3VwKEEpOkE7aWYoaSlyZXR1cm4gaS5zb3VyY2VzW2VdPW5ldyByKHRoaXMuYXVkaW9Db250ZXh0LGksdCxuLHRoaXMsdGhpcy5ydW50aW1lKSxpLnNvdXJjZXNbZV19UmVtb3ZlQXVkaW9Tb3VyY2UoQSxlKXtjb25zdCB0PSJzdHJpbmciPT10eXBlb2YgQT90aGlzLkdldEF1ZGlvR3JvdXAoQSk6QTtpZighdClyZXR1cm47Y29uc3Qgbj10LnNvdXJjZXNbZV07biYmKG4uZGlzcG9zZSgpLGRlbGV0ZSB0LnNvdXJjZXNbZV0pfUdyYWJBdWRpb1NvdXJjZShBLGUpe2NvbnN0IHQ9InN0cmluZyI9PXR5cGVvZiBBP3RoaXMuR2V0QXVkaW9Hcm91cChBKTpBO2lmKHQpcmV0dXJuIHQuc291cmNlc1tlXX1HcmFiQWxsR3JhYkF1ZGlvU291cmNlcyhBKXtjb25zdCBlPSJzdHJpbmciPT10eXBlb2YgQT90aGlzLkdldEF1ZGlvR3JvdXAoQSk6QTtyZXR1cm4gZT9PYmplY3QudmFsdWVzKGUuc291cmNlcyk6W119RmluZFNvdW5kQnlTb3VuZElkKEEsZSl7Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0Kyspe2NvbnN0IG49QVt0XTtpZihuLnNvdW5kSWQ9PWUpcmV0dXJuIG59cmV0dXJuIG51bGx9RmluZFNvdW5kQnlOYW1lKEEsZSl7Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0Kyspe2NvbnN0IG49QVt0XTtpZihuLm5hbWU9PWUpcmV0dXJuIG59cmV0dXJuIG51bGx9Q2xhbXAoQSxlLHQpe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChBLGUpLHQpfX0sQS5leHBvcnRzLkF1ZGlvU291cmNlPXJ9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5ydW50aW1lPUEsdGhpcy5hdWRpb0NvbnRleHQ9ZSx0aGlzLl9kaXNwb3NlZD0hMSx0aGlzLnBhdXNlZD0hMSx0aGlzLnN0b3BwZWQ9ITAsdGhpcy5fdmFsdWU9MCx0aGlzLnNwZWVkPTEsdGhpcy5fbGFzdFVwZGF0ZVJlYWw9RGF0ZS5ub3coKSx0aGlzLl9sYXN0VXBkYXRlUHJvY2Vzc2VkPURhdGUubm93KCksdGhpcy5fYm91bmRGdW5jPXRoaXMudXBkYXRlLmJpbmQodGhpcyksdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1NURVBfU1RBUlQiLHRoaXMuX2JvdW5kRnVuYyl9c3RhcnQoKXt0aGlzLnBhdXNlZD0hMSx0aGlzLnN0b3BwZWQ9ITF9cGF1c2UoKXt0aGlzLnBhdXNlZD0hMH1zdG9wKCl7dGhpcy5wYXVzZWQ9ITEsdGhpcy5zdG9wcGVkPSEwfXJlc2V0KCl7dGhpcy5fdmFsdWU9MCx0aGlzLnBhdXNlZD0hMSx0aGlzLnN0b3BwZWQ9ITB9dXBkYXRlKCl7dGhpcy5zdG9wcGVkfHx0aGlzLnBhdXNlZHx8dGhpcy5fZGlzcG9zZWR8fCJydW5uaW5nIiE9PXRoaXMuYXVkaW9Db250ZXh0LnN0YXRlP3RoaXMuX2xhc3RVcGRhdGVSZWFsPURhdGUubm93KCk6KHRoaXMuX3ZhbHVlKz0oRGF0ZS5ub3coKS10aGlzLl9sYXN0VXBkYXRlUmVhbCkqdGhpcy5zcGVlZCx0aGlzLl9sYXN0VXBkYXRlUmVhbD1EYXRlLm5vdygpLHRoaXMuX2xhc3RVcGRhdGVQcm9jZXNzZWQ9RGF0ZS5ub3coKSl9ZGlzcG9zZSgpe3RoaXMuX2Rpc3Bvc2VkfHwodGhpcy5fZGlzcG9zZWQ9ITAsdGhpcy5ydW50aW1lLm9mZigiUlVOVElNRV9TVEVQX1NUQVJUIix0aGlzLl9ib3VuZEZ1bmMpKX1nZXRUaW1lKEEpe2NvbnN0IGU9QT8xZTM6MTtyZXR1cm4gdGhpcy5fdmFsdWUvZX1zZXRUaW1lKEEpe3RoaXMuX2xhc3RVcGRhdGVSZWFsPURhdGUubm93KCksdGhpcy5fbGFzdFVwZGF0ZVByb2Nlc3NlZD1EYXRlLm5vdygpLHRoaXMuX3ZhbHVlPUF9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0KSxpPXQoMSkscj10KDMpLG89dCgyKSxzPXQoMjgyKSxhPXQoMjgzKTtsZXQgQj0iIjtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5wcm9tcHRTdGF0dXM9e2luUHJvZ3Jlc3M6ITEsYmxvY2tlZDohMSxjb21wbGV0ZWQ6ITEsdXNlckNsb3NlZDohMX0sdGhpcy5sb2dpbkluZm89e30sdGhpcy5rZWVwQWxsb3dpbmdBdXRoQmxvY2s9ITAsdGhpcy5kaXNhYmxlQ29uZmlybWF0aW9uU2hvd249ITF9ZGVzZXJpYWxpemUoKXt0aGlzLmRpc2FibGVDb25maXJtYXRpb25TaG93bj0hMX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ1NjcmF0Y2hBdXRoZW50aWNhdGUiLG5hbWU6IlNjcmF0Y2ggQXV0aCIsY29sb3IxOiIjRkZBMDFDIixjb2xvcjI6IiNmZjhDMDAiLGJsb2NrSWNvblVSSTphLGJsb2Nrczpbe29wY29kZToiYXV0aGVudGljYXRlIix0ZXh0Om4oe2lkOiJqZ1NjcmF0Y2hBdXRoZW50aWNhdGUuYmxvY2tzLmF1dGhlbnRpY2F0ZSIsZGVmYXVsdDoiZ2V0IHNjcmF0Y2ggdXNlcm5hbWUgYW5kIHNldCBzaWduIGluIGxvY2F0aW9uIG5hbWUgdG8gW05BTUVdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHRoZSB1c2VyJ3MgbmFtZSBvbiBTY3JhdGNoLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiUGVuZ3Vpbk1vZCJ9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToic2hvd1Byb21wdCIsdGV4dDpuKHtpZDoiamdTY3JhdGNoQXV0aGVudGljYXRlLmJsb2Nrcy5zaG93UHJvbXB0IixkZWZhdWx0OiJzaG93IGxvZ2luIG1lc3NhZ2UgYXMgW05BTUVdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCBzaG93cyB0aGUgTG9nIGluIG1lbnUgZnJvbSBTY3JhdGNoIEF1dGhlbnRpY2F0aW9uLiJ9KSxhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsbWVudToibG9naW5Mb2NhdGlvbiJ9fSxibG9ja1R5cGU6aS5DT01NQU5EfSx7b3Bjb2RlOiJnZXRQcm9tcHRTdGF0dXMiLHRleHQ6bih7aWQ6ImpnU2NyYXRjaEF1dGhlbnRpY2F0ZS5ibG9ja3MucHJvbXB0U3RhdHVzIixkZWZhdWx0OiJsb2dpbiBwcm9tcHQgW1NUQVRVU10/IixkZXNjcmlwdGlvbjoiVGhlIHN0YXR1cyBvZiB0aGUgbG9naW4gcHJvbXB0IGZvciBTY3JhdGNoIEF1dGhlbnRpY2F0aW9uLiJ9KSxhcmd1bWVudHM6e1NUQVRVUzp7dHlwZTpyLlNUUklORyxtZW51OiJwcm9tcHRTdGF0dXMifX0sZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuQk9PTEVBTn0se29wY29kZToicHJpdmF0ZUNvZGUiLHRleHQ6bih7aWQ6ImpnU2NyYXRjaEF1dGhlbnRpY2F0ZS5ibG9ja3MucHJpdmF0ZUNvZGUiLGRlZmF1bHQ6ImF1dGhlbnRpY2F0aW9uIGNvZGUiLGRlc2NyaXB0aW9uOiJUaGUgbG9naW4gY29kZSB3aGVuIFNjcmF0Y2ggQXV0aGVudGljYXRpb24gY2xvc2VzIHRoZSBsb2dpbiBwcm9tcHQuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJzZXJ2ZXJSZWRpcmVjdExvY2F0aW9uIix0ZXh0Om4oe2lkOiJqZ1NjcmF0Y2hBdXRoZW50aWNhdGUuYmxvY2tzLnNlcnZlclJlZGlyZWN0TG9jYXRpb24iLGRlZmF1bHQ6InJlZGlyZWN0IGxvY2F0aW9uIixkZXNjcmlwdGlvbjoiVGhlIHJlZGlyZWN0IGxvY2F0aW9uIHdoZW4gU2NyYXRjaCBBdXRoZW50aWNhdGlvbiBjbG9zZXMgdGhlIGxvZ2luIHByb21wdC4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVJ9LCItLS0iLHt0ZXh0Om4oe2lkOiJqZ1NjcmF0Y2hBdXRoZW50aWNhdGUubGFiZWxzLmxvZ2luSW5mbzEiLGRlZmF1bHQ6IlRoZSBibG9ja3MgYmVsb3cgaW52YWxpZGF0ZSIsZGVzY3JpcHRpb246IkxhYmVsIHRvIGRlbm90ZSB0aGF0IGJsb2NrcyBpbnZhbGlkYXRlIHRoZSBTY3JhdGNoIEF1dGggcHJpdmF0ZSBjb2RlIGJlbG93IHRoaXMgbGFiZWwifSksYmxvY2tUeXBlOmkuTEFCRUx9LHt0ZXh0Om4oe2lkOiJqZ1NjcmF0Y2hBdXRoZW50aWNhdGUubGFiZWxzLmxvZ2luSW5mbzIiLGRlZmF1bHQ6InRoZSBhdXRoZW50aWNhdGlvbiBjb2RlIGZyb20gYWJvdmUuIixkZXNjcmlwdGlvbjoiTGFiZWwgdG8gZGVub3RlIHRoYXQgYmxvY2tzIGludmFsaWRhdGUgdGhlIFNjcmF0Y2ggQXV0aCBwcml2YXRlIGNvZGUgYmVsb3cgdGhpcyBsYWJlbCJ9KSxibG9ja1R5cGU6aS5MQUJFTH0se29wY29kZToidmFsaWRMb2dpbiIsdGV4dDpuKHtpZDoiamdTY3JhdGNoQXV0aGVudGljYXRlLmJsb2Nrcy52YWxpZExvZ2luIixkZWZhdWx0OiJsb2dpbiBpcyB2YWxpZD8iLGRlc2NyaXB0aW9uOiJXaGV0aGVyIG9yIG5vdCB0aGUgYXV0aGVudGljYXRpb24gd2FzIHZhbGlkLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxoaWRlRnJvbVBhbGV0dGU6ITAsYmxvY2tUeXBlOmkuQk9PTEVBTn0se29wY29kZToic2NyYXRjaFVzZXJuYW1lIix0ZXh0Om4oe2lkOiJqZ1NjcmF0Y2hBdXRoZW50aWNhdGUuYmxvY2tzLnNjcmF0Y2hVc2VybmFtZSIsZGVmYXVsdDoic2NyYXRjaCB1c2VybmFtZSIsZGVzY3JpcHRpb246IlRoZSB1c2VybmFtZSB0aGF0IHdhcyBsb2dnZWQgaW4uIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSfV0sbWVudXM6e2xvZ2luTG9jYXRpb246e2l0ZW1zOiJfZ2V0TG9naW5Mb2NhdGlvbnMiLGlzVHlwZWFibGU6ITB9LHByb21wdFN0YXR1czpbe3RleHQ6ImluIHByb2dyZXNzIix2YWx1ZToiaW5Qcm9ncmVzcyJ9LHt0ZXh0OiJibG9ja2VkIix2YWx1ZToiYmxvY2tlZCJ9LHt0ZXh0OiJjb21wbGV0ZSIsdmFsdWU6ImNvbXBsZXRlZCJ9LHt0ZXh0OiJjbG9zZWQgYnkgdGhlIHVzZXIiLHZhbHVlOiJ1c2VyQ2xvc2VkIn1dfX19X2dldExvZ2luTG9jYXRpb25zKCl7Y29uc3QgQT1kb2N1bWVudC50aXRsZS5zcGxpdCgiIC0gIik7QS5wb3AoKTtjb25zdCBlPW8udG9TdHJpbmcoQS5qb2luKCIgLSAiKSk7cmV0dXJuWyJQZW5ndWluTW9kIj09PWU/IlByb2plY3QiOmUsIlBlbmd1aW5Nb2QiLCJHYW1lIl19YXN5bmMgcGFyc2VMb2dpbkNvZGVfKCl7aWYoIUIpdGhyb3cgbmV3IEVycm9yKCJQcml2YXRlIGNvZGUgbm90IHByZXNlbnQiKTtjb25zdCBBPWF3YWl0IGZldGNoKCJodHRwczovL3BtLWJhcGkudmVyY2VsLmFwcC9hcGkvdmVyaWZ5VG9rZW4/cHJpdmF0ZUNvZGU9Ii5jb25jYXQoQikpLGU9YXdhaXQgQS5qc29uKCk7cmV0dXJuIHRoaXMubG9naW5JbmZvPXt2YWxpZDplLnZhbGlkLHVzZXJuYW1lOmUudXNlcm5hbWV9LHRoaXMubG9naW5JbmZvfXNob3dQcm9tcHQoQSl7dGhpcy5wcm9tcHRTdGF0dXM9e2luUHJvZ3Jlc3M6ITAsYmxvY2tlZDohMSxjb21wbGV0ZWQ6ITEsdXNlckNsb3NlZDohMX0sdGhpcy5sb2dpbkluZm89e307Y29uc3QgZT1vLnRvU3RyaW5nKEEuTkFNRSksdD1lbmNvZGVVUklDb21wb25lbnQoZS5zdWJzdHJpbmcoMCwyNTYpLnJlcGxhY2UoL1teYS16QS1aMC05IF9cLVwuXFtcXVwoXCldKy9naW0sIiIpKSxuPSJodHRwczovL3N0dWRpby5wZW5ndWlubW9kLmNvbS9zY3JhdGNoQXV0aEV4dC5odG1sP29wZW5Mb2NhdGlvbj0iLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQod2luZG93Lm9yaWdpbikpO2xldCBpLHI9ITE7Y29uc3Qgcz1BPT57aWYoQS5vcmlnaW4hPT1uZXcgVVJMKG4pLm9yaWdpbilyZXR1cm47aWYoIUEuZGF0YXx8IUEuZGF0YS5zY3JhdGNoYXV0aGQxKXJldHVybjtjb25zdCBlPUEuZGF0YS5zY3JhdGNoYXV0aGQxLnB2O0I9ZSx0aGlzLnByb21wdFN0YXR1cy5pblByb2dyZXNzPSExLHRoaXMucHJvbXB0U3RhdHVzLmNvbXBsZXRlZD0hMCxyPSEwLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixzKSxpLmNsb3NlKCl9O2lmKHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixzKSxpPXdpbmRvdy5vcGVuKCJodHRwczovL2F1dGguaXRpbmVyYXJ5LmV1Lm9yZy9hdXRoLz9yZWRpcmVjdD0iLmNvbmNhdChidG9hKG4pKS5jb25jYXQodC5sZW5ndGg+MD8iJm5hbWU9Ii5jb25jYXQodCk6IiIpLCJTY3JhdGNoIEF1dGhlbnRpY2F0aW9uIiwic2Nyb2xsYmFycz15ZXMscmVzaXphYmxlPXllcyxzdGF0dXM9bm8sbG9jYXRpb249eWVzLHRvb2xiYXI9bm8sbWVudWJhcj1ubyx3aWR0aD03NjgsaGVpZ2h0PTUxMixsZWZ0PTIwMCx0b3A9MjAwIiksIWkpcmV0dXJuIHRoaXMucHJvbXB0U3RhdHVzLmluUHJvZ3Jlc3M9ITEsdm9pZCh0aGlzLnByb21wdFN0YXR1cy5ibG9ja2VkPSEwKTtjb25zdCBhPXNldEludGVydmFsKCgpPT57aS5jbG9zZWQmJih0aGlzLnByb21wdFN0YXR1cy5pblByb2dyZXNzPSExLHJ8fCh0aGlzLnByb21wdFN0YXR1cy51c2VyQ2xvc2VkPSEwKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscyksY2xlYXJJbnRlcnZhbChhKSl9LDUwMCl9cHJpdmF0ZUNvZGUoKXtjb25zdCBBPUI7cmV0dXJuIEI9IiIsQX1zZXJ2ZXJSZWRpcmVjdExvY2F0aW9uKCl7cmV0dXJuImh0dHBzOi8vc3R1ZGlvLnBlbmd1aW5tb2QuY29tL3NjcmF0Y2hBdXRoRXh0Lmh0bWw/b3BlbkxvY2F0aW9uPSIuY29uY2F0KHdpbmRvdy5vcmlnaW4pfWdldFByb21wdFN0YXR1cyhBKXtjb25zdCBlPW8udG9TdHJpbmcoQS5TVEFUVVMpO3JldHVybiBlIGluIHRoaXMucHJvbXB0U3RhdHVzJiZ0aGlzLnByb21wdFN0YXR1c1tlXX1hc3luYyB2YWxpZExvZ2luKCl7aWYoT2JqZWN0LmtleXModGhpcy5sb2dpbkluZm8pLmxlbmd0aDw9MCl0cnl7YXdhaXQgdGhpcy5wYXJzZUxvZ2luQ29kZV8oKX1jYXRjaChBKXtyZXR1cm4hMX1yZXR1cm4hIXRoaXMubG9naW5JbmZvLnZhbGlkfWFzeW5jIHNjcmF0Y2hVc2VybmFtZSgpe2lmKE9iamVjdC5rZXlzKHRoaXMubG9naW5JbmZvKS5sZW5ndGg8PTApdHJ5e2F3YWl0IHRoaXMucGFyc2VMb2dpbkNvZGVfKCl9Y2F0Y2goQSl7cmV0dXJuIiJ9cmV0dXJuIG8udG9TdHJpbmcodGhpcy5sb2dpbkluZm8udXNlcm5hbWUpfWF1dGhlbnRpY2F0ZSgpe2Zvcih2YXIgQT1hcmd1bWVudHMubGVuZ3RoLGU9bmV3IEFycmF5KEEpLHQ9MDt0PEE7dCsrKWVbdF09YXJndW1lbnRzW3RdO3JldHVybiBzLmF1dGhlbnRpY2F0ZSh0aGlzLC4uLmUpfX19LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPXthdXRoZW50aWNhdGU6KEEsZSk9PntpZighQS5rZWVwQWxsb3dpbmdBdXRoQmxvY2spe2lmKEEuZGlzYWJsZUNvbmZpcm1hdGlvblNob3duKXJldHVybiJUaGUgdXNlciBoYXMgZGVjbGluZWQgdGhlIGFiaWxpdHkgdG8gYXV0aGVudGljYXRlLiI7aWYoISEwKXJldHVybiBBLmRpc2FibGVDb25maXJtYXRpb25TaG93bj0hMCwiVGhlIHVzZXIgaGFzIGRlY2xpbmVkIHRoZSBhYmlsaXR5IHRvIGF1dGhlbnRpY2F0ZS4ifXJldHVybiBuZXcgUHJvbWlzZSh0PT57Y29uc3Qgbj1lbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGUuTkFNRSkuc3Vic3RyaW5nKDAsMjU2KS5yZXBsYWNlKC9bXmEtekEtWjAtOSBfLV0rL2dpbSwiXyIpKSxpPSIiLmNvbmNhdCh3aW5kb3cubG9jYXRpb24ub3JpZ2luLCIvd2FpdC5odG1sIikscj13aW5kb3cub3BlbigiaHR0cHM6Ly9hdXRoLml0aW5lcmFyeS5ldS5vcmcvYXV0aC8/cmVkaXJlY3Q9Ii5jb25jYXQoYnRvYShpKSwiJm5hbWU9IikuY29uY2F0KG4ubGVuZ3RoPjA/bjoiUGVuZ3Vpbk1vZCIpLCJTY3JhdGNoIEF1dGhlbnRpY2F0aW9uIiwic2Nyb2xsYmFycz15ZXMscmVzaXphYmxlPXllcyxzdGF0dXM9bm8sbG9jYXRpb249eWVzLHRvb2xiYXI9bm8sbWVudWJhcj1ubyx3aWR0aD03NjgsaGVpZ2h0PTUxMixsZWZ0PTIwMCx0b3A9MjAwIik7cnx8dCgiQXV0aGVudGljYXRpb24gZmFpbGVkIHRvIGFwcGVhci4iKTtsZXQgbz0hMSxzPSExLGE9bnVsbDthPXNldEludGVydmFsKCgpPT57aWYobnVsbCE9ciYmci5jbG9zZWQmJiFzKXtBLmtlZXBBbGxvd2luZ0F1dGhCbG9jaz0hMSxjbGVhckludGVydmFsKGEpO3RyeXtyLmNsb3NlKCl9Y2F0Y2goQSl7fXQoIiIpfXRyeXtjb25zdCBBPXIubG9jYXRpb24uc2VhcmNoO2lmKCFvKXJldHVybjtjb25zdCBlPW5ldyBVUkxTZWFyY2hQYXJhbXMoQSkuZ2V0KCJwcml2YXRlQ29kZSIpO2V8fChzPSEwLGNsZWFySW50ZXJ2YWwoYSksci5jbG9zZSgpLHQoIiIpKSxjbGVhckludGVydmFsKGEpLGZldGNoKCJodHRwczovL3BtLWJhcGkudmVyY2VsLmFwcC9hcGkvdmVyaWZ5VG9rZW4/cHJpdmF0ZUNvZGU9Ii5jb25jYXQoZSkpLnRoZW4oQT0+QS5qc29uKCkudGhlbihBPT57cz0hMCxyLmNsb3NlKCksMSE9QS52YWxpZCYmdCgiIiksdChTdHJpbmcoQS51c2VybmFtZSkpfSkuY2F0Y2goKCk9PntzPSEwLHIuY2xvc2UoKSx0KCIiKX0pKS5jYXRjaCgoKT0+e3M9ITAsci5jbG9zZSgpLHQoIiIpfSl9Y2F0Y2goQSl7bz0hMH19LDEwKX0pfX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZHBaSFJvUFNJek5Ua3VPRGc0TXpjaUlHaGxhV2RvZEQwaU16VTVMamc0T0RNM0lpQjJhV1YzUW05NFBTSXdMREFzTXpVNUxqZzRPRE0zTERNMU9TNDRPRGd6TnlJK1BHY2dkSEpoYm5ObWIzSnRQU0owY21GdWMyeGhkR1VvTFRBdU1EVTFPREVzTFRBdU1EVTFPREVwSWo0OFp5QmtZWFJoTFhCaGNHVnlMV1JoZEdFOUluc21jWFZ2ZER0cGMxQmhhVzUwYVc1blRHRjVaWEltY1hWdmREczZkSEoxWlgwaUlHWnBiR3d0Y25Wc1pUMGlibTl1ZW1WeWJ5SWdjM1J5YjJ0bExXeHBibVZqWVhBOUltSjFkSFFpSUhOMGNtOXJaUzFzYVc1bGFtOXBiajBpYldsMFpYSWlJSE4wY205clpTMXRhWFJsY214cGJXbDBQU0l4TUNJZ2MzUnliMnRsTFdSaGMyaGhjbkpoZVQwaUlpQnpkSEp2YTJVdFpHRnphRzltWm5ObGREMGlNQ0lnYzNSNWJHVTlJbTFwZUMxaWJHVnVaQzF0YjJSbE9pQnViM0p0WVd3aVBqeHdZWFJvSUdROUlrMHdMakExTlRneExERTRNR013TEMwNU9TNHpPREEwTXlBNE1DNDFOak0zTml3dE1UYzVMamswTkRFNUlERTNPUzQ1TkRReE9Td3RNVGM1TGprME5ERTVZems1TGpNNE1EUXpMREFnTVRjNUxqazBOREU1TERnd0xqVTJNemMySURFM09TNDVORFF4T1N3eE56a3VPVFEwTVRsak1DdzVPUzR6T0RBME15QXRPREF1TlRZek56WXNNVGM1TGprME5ERTVJQzB4TnprdU9UUTBNVGtzTVRjNUxqazBOREU1WXkwNU9TNHpPREEwTXl3d0lDMHhOemt1T1RRME1Ua3NMVGd3TGpVMk16YzJJQzB4TnprdU9UUTBNVGtzTFRFM09TNDVORFF4T1hvaUlHWnBiR3c5SWlObVptRXdNV01pSUhOMGNtOXJaVDBpYm05dVpTSWdjM1J5YjJ0bExYZHBaSFJvUFNJd0lpOCtQSEJoZEdnZ1pEMGlUVEk0Tnk0M05URTNPQ3d4T1RNdU9UQXpPVEpqTUN3ME9DNDNNemt4TXlBdE16a3VNalF4TXpJc09EZ3VNalVnTFRFd055NDNOU3c0T0M0eU5XTXROamd1TURBNE5qZ3NNQ0F0TVRBM0xqYzFMQzB6T1M0MU1UQTROeUF0TVRBM0xqYzFMQzA0T0M0eU5XTXdMQzA1TGpFNU1EZzBJQzB3TGpJek1USXlMQzB4T1M0eE9UVTNOaUF6TGpBek9ESTNMQzB5Tnk0M05UZ3dOMk0xTGpJd056WTBMQzB4TXk0Mk16YzVPU0E0TGpreE1qQXpMQzAzTkM0Mk1EQXdPQ0F5TUM0ME5qRTNPQ3d0T0RZdU5UQTNPV000TGpnMk16ZzNMQzA1TGpFek9EWTJJREk1TGpjNU1UUXNNekF1TmpNNE1UZ2dORE11T1RRNU56Y3NNalV1TlRjME56UmpNVEl1TmpVM05UVXNMVFF1TlRJMk55QXlOUzQwTkRRMk5pd3ROQzQxTlRnM05pQXpPUzQ0TURBeE55d3ROQzQxTlRnM05tTXhNeTR3T0RFME9Td3dJREkyTGpVME5qQXpMREl1TVRBeU5UZ2dNemd1TURNeU56SXNOUzQ1TURFd04yTXhNQzQxTURNM09Td3pMalEzTXpRMklETTRMamt3TWpNM0xDMHpNeTQzTWpFMUlEUTBMakk0TWpReUxDMHlPQzR4TXpZeU4yTXhOQzQyTURjeE5Td3hOUzR4TmpReU1TQXhOaTQyTkRBMkxEWTVMalF4TVRrM0lESXlMalV5TlRNNUxEZzRMamM0TXpZMVl6SXVNakkzTkRRc055NHpNekl6TXlBekxqUXdPVFEzTERFNExqazFNRGcwSURNdU5EQTVORGNzTWpZdU56QXhOVFo2SWlCbWFXeHNQU0p1YjI1bElpQnpkSEp2YTJVOUlpTm1abVptWm1ZaUlITjBjbTlyWlMxM2FXUjBhRDBpTWpVaUx6NDhMMmMrUEM5blBqd3ZjM1puUGp3aExTMXliM1JoZEdsdmJrTmxiblJsY2pveE56a3VPVFEwTVRnMk1EUTJOVEV4TmpJNk1UYzVMamswTkRFNE5qQTBOalV4TVRZeUxTMCsifSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9dCgzKSxyPXQoMjg1KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0SW5mbygpe3JldHVybntpZDoiSmdQZXJtaXNzaW9uQmxvY2tzIixuYW1lOiJQZXJtaXNzaW9ucyIsY29sb3IxOiIjMDBDNEZGIixjb2xvcjI6IiMwMDkzRkYiLGJsb2Nrczpbe2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6IlRoaXMgZXh0ZW5zaW9uIGlzIGRlcHJlY2F0ZWQuIn0se2hpZGVGcm9tUGFsZXR0ZTohMCxvcGNvZGU6InJlcXVlc3RQZXJtaXNzaW9uIix0ZXh0OiJyZXF1ZXN0IFtQRVJNSVNTSU9OXSBwZXJtaXNzaW9uIixkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6bi5CT09MRUFOLGFyZ3VtZW50czp7UEVSTUlTU0lPTjp7dHlwZTppLlNUUklORyxtZW51OiJwZXJtaXNzaW9ucyIsZGVmYXVsdFZhbHVlOiJqYXZhc2NyaXB0In19fSx7aGlkZUZyb21QYWxldHRlOiEwLG9wY29kZToicmVxdWVzdFBlcm1pc3Npb24yIix0ZXh0OiJyZXF1ZXN0IFtQRVJNSVNTSU9OXSBwZXJtaXNzaW9uIixkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6bi5CT09MRUFOLGFyZ3VtZW50czp7UEVSTUlTU0lPTjp7dHlwZTppLlNUUklORyxtZW51OiJwZXJtaXNzaW9uczIifX19LHtoaWRlRnJvbVBhbGV0dGU6ITAsb3Bjb2RlOiJyZXF1ZXN0QWxsUGVybWlzc2lvbiIsdGV4dDoicmVxdWVzdCBhbGwgcGVybWlzc2lvbnMiLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTpuLkJPT0xFQU59LHtoaWRlRnJvbVBhbGV0dGU6ITAsb3Bjb2RlOiJyZXF1ZXN0U2l0ZVBlcm1pc3Npb24iLHRleHQ6InJlcXVlc3QgcGVybWlzc2lvbiB0byBzaG93IFtVUkxdIixkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6bi5CT09MRUFOLGFyZ3VtZW50czp7VVJMOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiaHR0cHM6Ly93d3cuZXhhbXBsZS5jb20ifX19XSxtZW51czp7cGVybWlzc2lvbnM6ImZldGNoUGVybWlzc2lvbnNMaXN0IixwZXJtaXNzaW9uczI6ImZldGNoUGVybWlzc2lvbnNMaXN0MiJ9fX1mZXRjaFBlcm1pc3Npb25zTGlzdCgpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhyLnBlcm1pc3Npb25zKS5maWx0ZXIoQT0+ImJvb2xlYW4iPT10eXBlb2Ygci5wZXJtaXNzaW9uc1tBXSkubWFwKEE9Pih7dGV4dDpBLHZhbHVlOkF9KSl9ZmV0Y2hQZXJtaXNzaW9uc0xpc3QyKCl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHIucGVybWlzc2lvbnMpLmZpbHRlcihBPT4iYm9vbGVhbiI9PXR5cGVvZiByLnBlcm1pc3Npb25zW0FdKS5maWx0ZXIoQT0+ImphdmFzY3JpcHQiIT09QSkubWFwKEE9Pih7dGV4dDpBLHZhbHVlOkF9KSl9cmVxdWVzdFBlcm1pc3Npb24oQSl7Y29uc3QgZT1BLlBFUk1JU1NJT047cmV0dXJuIDE9PXIucGVybWlzc2lvbnNbZV18fHIuUmVxdWVzdFBlcm1pc3Npb24oZSl9cmVxdWVzdFBlcm1pc3Npb24yKEEpe2NvbnN0IGU9QS5QRVJNSVNTSU9OO3JldHVybiAxPT1yLnBlcm1pc3Npb25zW2VdfHxyLlJlcXVlc3RQZXJtaXNzaW9uKGUpfXJlcXVlc3RBbGxQZXJtaXNzaW9uKCl7cmV0dXJuIHIuUmVxdWVzdEFsbFBlcm1pc3Npb25zKCl9cmVxdWVzdFNpdGVQZXJtaXNzaW9uKEEpe2NvbnN0IGU9QS5VUkw7cmV0dXJuIDE9PXIucGVybWlzc2lvbnMubGltaXRlZFdlYnNpdGVzW2VdfHxyLlJlcXVlc3RQZXJtaXNzaW9uKCJsaW1pdGVkV2Vic2l0ZSIsZSl9fX0sZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y2xhc3MgbntzdGF0aWMgZ2V0IHNraXBQZXJtaXNzaW9uUmVxdWVzdCgpe3JldHVybiEhdm0mJighIXZtLnJ1bnRpbWUmJiEwPT09dm0ucnVudGltZS5pc1Byb2plY3RQZXJtaXNzaW9uTWFuYWdlckRpc2FibGVkKX1zdGF0aWMgR2VuZXJhdGVDb2RlKEEpe3JldHVybiBBcnJheS5mcm9tKG5ldyBBcnJheShBKS5rZXlzKCkpLm1hcCgoKT0+TWF0aC5yb3VuZCg5Kk1hdGgucmFuZG9tKCkpKS5qb2luKCIiKX1zdGF0aWMgRWRpdFByb21wdEZvckFjY2VwdENoZWNrKEEpe3JldHVybiBTdHJpbmcoQSkucmVwbGFjZSgvIC9naW0sIiIpLnRvTG93ZXJDYXNlKCl9c3RhdGljIFJlcXVlc3RQZXJtaXNzaW9uKEEpe2lmKCEwPT09bi5za2lwUGVybWlzc2lvblJlcXVlc3QpcmV0dXJuITA7aWYobi5kaXNhYmxlZFBlcm1pc3Npb25zLmluY2x1ZGVzKEEpKXJldHVybiExO2Zvcih2YXIgZT1hcmd1bWVudHMubGVuZ3RoLHQ9bmV3IEFycmF5KGU+MT9lLTE6MCksaT0xO2k8ZTtpKyspdFtpLTFdPWFyZ3VtZW50c1tpXTtpZigibGltaXRlZFdlYnNpdGUiPT1BKXtpZih0Lmxlbmd0aDwxKXRocm93IG5ldyBFcnJvcigiTm8gVVJMIHNwZWNpZmllZCB3aGF0IGFyZSB5b3UgdHJ5aW5nIHRvIGdldCBwZXJtaXNzaW9uIGZvciBicm8iKTtpZighbi5Jc1VybFNhZmUodFswXSkpcmV0dXJuITF9aWYoImxpbWl0ZWRXZWJzaXRlIj09QSYmMT09bi5wZXJtaXNzaW9ucy5saW1pdGVkV2Vic2l0ZXNbdFswXV0pcmV0dXJuITA7aWYobi5wZXJtaXNzaW9uc1tBXSlyZXR1cm4hMDtsZXQgcj0iQWxsb3cgdGhpcyBwcm9qZWN0IHRvICIuY29uY2F0KG4ucGVybWlzc2lvbk1lc3NhZ2VzW0FdLCI/Iik7Zm9yKGxldCBBPTA7QTx0Lmxlbmd0aDtBKyspe2NvbnN0IGU9dFtBXTtyPXIucmVwbGFjZSgiJCIuY29uY2F0KEEpLG4uSXNEYXRhVXJsKGUpPyJjdXN0b20gd2Vic2l0ZSI6U3RyaW5nKGUpKX1yKz0iXG5cblRoaXMgd2lsbCBhbGxvdyB0aGUgcHJvamVjdCB0bzpcbiIsbi5wZXJtaXNzaW9uRHJhd2JhY2tzW0FdLmZvckVhY2goQT0+e3IrPSLilqogIi5jb25jYXQoQSwiXG4iKX0pO2xldCBvPSJvayI7bi5yZXF1aXJlc0NvZGUuaW5jbHVkZXMoQSkmJihvPW4uR2VuZXJhdGVDb2RlKDYpKSxyKz0nXG5UeXBlICInLmNvbmNhdChvLCciIHRvIGFsbG93LCBvciB0eXBlICJzdG9wIiB0byBuZXZlciBhc2sgZm9yIHRoaXMgcGVybWlzc2lvbiBhZ2Fpbi4nKTtjb25zdCBzPW4uRWRpdFByb21wdEZvckFjY2VwdENoZWNrKHByb21wdChyLCIiKSk7aWYoInN0b3AiPT1zKXJldHVybiBuLmRpc2FibGVkUGVybWlzc2lvbnMucHVzaChBKSwhMTtjb25zdCBhPXM9PT1TdHJpbmcobyk7cmV0dXJuImxpbWl0ZWRXZWJzaXRlIj09QT8hIWEmJihuLnBlcm1pc3Npb25zLmxpbWl0ZWRXZWJzaXRlc1t0WzBdXT0hMCwhMCk6KG4ucGVybWlzc2lvbnNbQV09YSxhKX1zdGF0aWMgUmVxdWVzdEFsbFBlcm1pc3Npb25zKCl7aWYoITA9PT1uLnNraXBQZXJtaXNzaW9uUmVxdWVzdClyZXR1cm4hMDtpZihuLmRpc2FibGVkUGVybWlzc2lvbnMuaW5jbHVkZXMoImFsbCIpKXJldHVybiExO2NvbnN0IEE9W107T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMobi5wZXJtaXNzaW9ucykuZm9yRWFjaChlPT57ImJvb2xlYW4iPT10eXBlb2Ygbi5wZXJtaXNzaW9uc1tlXSYmQS5wdXNoKGUpfSk7bGV0IGU9IkdpdmUgYWxsIHBlcm1pc3Npb25zIHRvIHRoaXMgcHJvamVjdD8iO2UrPSJcblxuVGhpcyB3aWxsIGFsbG93IHRoZSBwcm9qZWN0IHRvOlxuIixBLmZvckVhY2goQT0+e24ucGVybWlzc2lvbkRyYXdiYWNrc1tBXS5mb3JFYWNoKEE9PntlKz0i4paqICIuY29uY2F0KEEsIlxuIil9KX0pO2NvbnN0IHQ9bi5HZW5lcmF0ZUNvZGUoOCk7ZSs9J1xuVHlwZSAiJy5jb25jYXQodCwnIiB0byBhbGxvdywgb3IgdHlwZSAic3RvcCIgdG8gbmV2ZXIgYXNrIGZvciBhbGwgcGVybWlzc2lvbnMgYWdhaW4uJyk7Y29uc3QgaT1uLkVkaXRQcm9tcHRGb3JBY2NlcHRDaGVjayhwcm9tcHQoZSwiIikpO2lmKCJzdG9wIj09aSlyZXR1cm4gbi5kaXNhYmxlZFBlcm1pc3Npb25zLnB1c2goImFsbCIpLCExO3JldHVybiBpPT09U3RyaW5nKHQpJiYoT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMobi5wZXJtaXNzaW9ucykuZm9yRWFjaChBPT57ImJvb2xlYW4iPT10eXBlb2Ygbi5wZXJtaXNzaW9uc1tBXSYmKG4ucGVybWlzc2lvbnNbQV09ITApfSksITApfXN0YXRpYyBDYW5DcmVhdGVVUkxPYmplY3QoQSl7bGV0IGU9ITA7dHJ5e25ldyBVUkwoQSl9Y2F0Y2goQSl7ZT0hMX1yZXR1cm4gZX1zdGF0aWMgSXNEYXRhVXJsKEEpe2lmKCF0aGlzLkNhbkNyZWF0ZVVSTE9iamVjdChBKSlyZXR1cm4hMTtyZXR1cm4iZGF0YToiPT09bmV3IFVSTChBKS5wcm90b2NvbH1zdGF0aWMgSXNVcmxTYWZlKEEpe2lmKCF0aGlzLkNhbkNyZWF0ZVVSTE9iamVjdChBKSlyZXR1cm4hMTtpZihuLklzRGF0YVVybChBKSlyZXR1cm4hMDtjb25zdCBlPW5ldyBVUkwoQSkub3JpZ2luLnRvTG93ZXJDYXNlKCk7bGV0IHQ9ITA7cmV0dXJuKGUuaW5jbHVkZXMoInh4eCIpfHxlLmluY2x1ZGVzKCJhZHVsdCIpfHxlLmluY2x1ZGVzKGF0b2IoImMyVjQiKSl8fGUuaW5jbHVkZXMoYXRvYigiY0c5eWJnPT0iKSl8fGUuaW5jbHVkZXMoYXRvYigiWW05dmNuVT0iKSl8fGUuaW5jbHVkZXMoYXRvYigiYUdWdWRHRnAiKSkpJiYodD0hMSksdH19dChuLCJwZXJtaXNzaW9ucyIse2phdmFzY3JpcHQ6ITAsY2FtZXJhOiEwLGFsbFdlYnNpdGVzOiEwLGNhbWVyYVBpY3R1cmVzOiExLHNjcmF0Y2hTaWduSW46ITAsbGltaXRlZFdlYnNpdGVzOnt9fSksdChuLCJwZXJtaXNzaW9uTWVzc2FnZXMiLHtqYXZhc2NyaXB0OiJ1c2UgY3VzdG9tIGNvZGUgaW4gSmF2YVNjcmlwdCIsY2FtZXJhOiJ0dXJuIG9uIHlvdXIgY2FtZXJhIixhbGxXZWJzaXRlczoiZGlzcGxheSBhbGwgd2Vic2l0ZXMiLGNhbWVyYVBpY3R1cmVzOiJ0YWtlIHNjcmVlbnNob3RzIHdoaWxlIHlvdXIgY2FtZXJhIGlzIG9uIixzY3JhdGNoU2lnbkluOiJzaWduIGluIHdpdGggU2NyYXRjaCIsbGltaXRlZFdlYnNpdGU6ImRpc3BsYXkgJDAifSksdChuLCJwZXJtaXNzaW9uRHJhd2JhY2tzIix7amF2YXNjcmlwdDpbXSxjYW1lcmE6W10sYWxsV2Vic2l0ZXM6W10sY2FtZXJhUGljdHVyZXM6WyJ0YWtlIGEgc2NyZWVuc2hvdCB3aGlsZSB5b3VyIGNhbWVyYSBpcyB2aXNpYmxlIl0sc2NyYXRjaFNpZ25JbjpbXSxsaW1pdGVkV2Vic2l0ZTpbXX0pLHQobiwicmVxdWlyZXNDb2RlIixbXSksdChuLCJkaXNhYmxlZFBlcm1pc3Npb25zIixbXSksQS5leHBvcnRzPW59LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNCksaT10KDEpLHI9dCgzKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0SW5mbygpe3JldHVybntpZDoiamdDbG9uZXMiLG5hbWU6IkNsb25lIENvbW11bmljYXRpb24iLGNvbG9yMToiI0ZGQUIxOSIsY29sb3IyOiIjRUM5QzEzIixibG9ja3M6W3tibG9ja1R5cGU6aS5MQUJFTCx0ZXh0OiJNYWluIFNwcml0ZSBDb21tdW5pY2F0aW9uIn0se29wY29kZToiZ2V0Q2xvbmVXaXRoVmFyaWFibGVTZXRUbyIsdGV4dDpuKHtpZDoiamdDbG9uZXMuYmxvY2tzLmdldENsb25lV2l0aFZhcmlhYmxlU2V0VG8iLGRlZmF1bHQ6ImdldCBbREFUQV0gb2YgY2xvbmUgd2l0aCBbVkFSXSBzZXQgdG8gW1ZBTFVFXSIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIGl0ZW0gcGlja2VkIHdpdGhpbiBhIGNsb25lIHdpdGggYSB2YXJpYWJsZSBzZXQgdG8gYSBjZXJ0YWluIHZhbHVlLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e0RBVEE6e3R5cGU6ci5TVFJJTkcsbWVudToic3ByaXRlRGF0YSJ9LFZBUjp7dHlwZTpyLlNUUklORyxtZW51OiJzcHJpdGVWYXJpYWJsZXMifSxWQUxVRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IjAifX19LHtvcGNvZGU6ImdldENsb25lVmFyaWFibGVXaXRoVmFyaWFibGVTZXRUbyIsdGV4dDpuKHtpZDoiamdDbG9uZXMuYmxvY2tzLmdldENsb25lVmFyaWFibGVXaXRoVmFyaWFibGVTZXRUbyIsZGVmYXVsdDoiZ2V0IFtWQVIxXSBvZiBjbG9uZSB3aXRoIFtWQVIyXSBzZXQgdG8gW1ZBTFVFXSIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgcmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIHZhcmlhYmxlIHBpY2tlZCB3aXRoaW4gYSBjbG9uZSB3aXRoIGEgdmFyaWFibGUgc2V0IHRvIGEgY2VydGFpbiB2YWx1ZS4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVIsYXJndW1lbnRzOntWQVIxOnt0eXBlOnIuU1RSSU5HLG1lbnU6InNwcml0ZVZhcmlhYmxlcyJ9LFZBUjI6e3R5cGU6ci5TVFJJTkcsbWVudToic3ByaXRlVmFyaWFibGVzIn0sVkFMVUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiIwIn19fSx7b3Bjb2RlOiJzZXRWYXJpYWJsZU9uQ2xvbmVXaXRoVmFyaWFibGVTZXRUbyIsdGV4dDpuKHtpZDoiamdDbG9uZXMuYmxvY2tzLnNldFZhcmlhYmxlT25DbG9uZVdpdGhWYXJpYWJsZVNldFRvIixkZWZhdWx0OiJzZXQgW1ZBUjFdIHRvIFtWQUxVRTFdIG9uIGNsb25lIHdpdGggW1ZBUjJdIHNldCB0byBbVkFMVUUyXSIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgc2V0cyBhIHZhcmlhYmxlIHdpdGhpbiBhIGNsb25lIHdpdGggYSB2YXJpYWJsZSBzZXQgdG8gYSBjZXJ0YWluIHZhbHVlLiJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7VkFSMTp7dHlwZTpyLlNUUklORyxtZW51OiJzcHJpdGVWYXJpYWJsZXMifSxWQUxVRTE6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiIwIn0sVkFSMjp7dHlwZTpyLlNUUklORyxtZW51OiJzcHJpdGVWYXJpYWJsZXMifSxWQUxVRTI6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiIwIn19fSwiLS0tIiwiLS0tIix7YmxvY2tUeXBlOmkuTEFCRUwsdGV4dDoiQ2xvbmUgQ29tbXVuaWNhdGlvbiJ9LHtvcGNvZGU6ImdldE1haW5TcHJpdGVEYXRhIix0ZXh0Om4oe2lkOiJqZ0Nsb25lcy5ibG9ja3MuZ2V0TWFpblNwcml0ZURhdGEiLGRlZmF1bHQ6ImdldCBbREFUQV0gb2YgbWFpbiBzcHJpdGUiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSBpdGVtIHBpY2tlZCBvbiB0aGUgbWFpbiBzcHJpdGUuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7REFUQTp7dHlwZTpyLlNUUklORyxtZW51OiJzcHJpdGVEYXRhIn19fSx7b3Bjb2RlOiJnZXRWYXJpYWJsZU9uTWFpblNwcml0ZSIsdGV4dDpuKHtpZDoiamdDbG9uZXMuYmxvY2tzLmdldFZhcmlhYmxlT25NYWluU3ByaXRlIixkZWZhdWx0OiJnZXQgW1ZBUl0gb2YgbWFpbiBzcHJpdGUiLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJsZSBwaWNrZWQgb24gdGhlIG1haW4gc3ByaXRlLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e1ZBUjp7dHlwZTpyLlNUUklORyxtZW51OiJzcHJpdGVWYXJpYWJsZXMifX19LHtvcGNvZGU6InNldFZhcmlhYmxlT25NYWluU3ByaXRlIix0ZXh0Om4oe2lkOiJqZ0Nsb25lcy5ibG9ja3Muc2V0VmFyaWFibGVPbk1haW5TcHJpdGUiLGRlZmF1bHQ6InNldCBbVkFSXSB0byBbVkFMVUVdIG9uIG1haW4gc3ByaXRlIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCBzZXRzIGEgdmFyaWFibGUgd2l0aGluIHRoZSBtYWluIHNwcml0ZS4ifSksYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1ZBUjp7dHlwZTpyLlNUUklORyxtZW51OiJzcHJpdGVWYXJpYWJsZXMifSxWQUxVRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IjAifX19LCItLS0iLCItLS0iLHtibG9ja1R5cGU6aS5MQUJFTCx0ZXh0OiJPdGhlciJ9LHtvcGNvZGU6ImdldElzQ2xvbmUiLHRleHQ6bih7aWQ6ImpnQ2xvbmVzLmJsb2Nrcy5nZXRJc0Nsb25lIixkZWZhdWx0OiJpcyBjbG9uZT8iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IHJldHVybnMgd2hldGhlciB0aGUgY3VycmVudCBzcHJpdGUgaXMgYSBjbG9uZSBvciBub3QuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLkJPT0xFQU59LHtvcGNvZGU6ImNsb25lc0luU3ByaXRlIix0ZXh0Om4oe2lkOiJqZ0Nsb25lcy5ibG9ja3MuY2xvbmVzSW5TcHJpdGUiLGRlZmF1bHQ6ImNsb25lIGNvdW50IG9mIFtTUFJJVEVdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHRoZSBhbW91bnQgb2YgY2xvbmVzIG9mIHRoaXMgc3ByaXRlIHRoYXQgY3VycmVudGx5IGV4aXN0LiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e1NQUklURTp7dHlwZTpyLlNUUklORyxtZW51OiJzcHJpdGVzIn19fV0sbWVudXM6e3Nwcml0ZXM6ImdldFNwcml0ZU1lbnUiLHNwcml0ZVZhcmlhYmxlczoiZ2V0U3ByaXRlVmFyaWFibGVzTWVudSIsc3ByaXRlRGF0YTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsieCBwb3NpdGlvbiIsInkgcG9zaXRpb24iLCJkaXJlY3Rpb24iLCJyb3RhdGlvbiBzdHlsZSIsInZpc2libGUiLCJjb3N0dW1lIG51bWJlciIsImNvc3R1bWUgbmFtZSIsInNpemUiLCJ4IHN0cmV0Y2giLCJ5IHN0cmV0Y2giLCJ2b2x1bWUiLCJkcmFnZ2FibGUiLCJjb2xvciBlZmZlY3QiLCJmaXNoZXllIGVmZmVjdCIsIndoaXJsIGVmZmVjdCIsInBpeGVsYXRlIGVmZmVjdCIsIm1vc2FpYyBlZmZlY3QiLCJicmlnaHRuZXNzIGVmZmVjdCIsImdob3N0IGVmZmVjdCIsInNhdHVyYXRpb24gZWZmZWN0IiwicmVkIGVmZmVjdCIsImdyZWVuIGVmZmVjdCIsImJsdWUgZWZmZWN0Iiwib3BhcXVlIGVmZmVjdCJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfX19fWdldENsb25lcyhBKXtpZighQS5jbG9uZXMpcmV0dXJuW107cmV0dXJuIEEuY2xvbmVzLmZpbHRlcihBPT4hMT09PUEuaXNPcmlnaW5hbCl9Z2V0VGFyZ2V0QnlTcHJpdGVOYW1lKEEpe3JldHVybiB0aGlzLnJ1bnRpbWUudGFyZ2V0cy5maWx0ZXIoQT0+QS5pc09yaWdpbmFsKS5maWx0ZXIoZT0+ZS5zcHJpdGUubmFtZT09QSlbMF19Z2V0VGFyZ2V0Q2xvbmVzQnlWYXJpYWJsZVNldFRvVmFsdWUoQSxlLHQpe3JldHVybiB0aGlzLmdldENsb25lcyhBLnNwcml0ZSkuZmlsdGVyKEE9Pntjb25zdCBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKEEudmFyaWFibGVzKS5tYXAoZT0+QS52YXJpYWJsZXNbZV0pLmZpbHRlcihBPT5BLm5hbWU9PWUpWzBdO3JldHVybiEhbiYmU3RyaW5nKG4udmFsdWUpPT1TdHJpbmcodCl9KX1nZXRUYXJnZXRDbG9uZUJ5VmFyaWFibGVTZXRUb1ZhbHVlKEEsZSx0KXtjb25zdCBuPXRoaXMuZ2V0VGFyZ2V0Q2xvbmVzQnlWYXJpYWJsZVNldFRvVmFsdWUoQSxlLHQpO2lmKG4pcmV0dXJuIG5bMF19bWVudU9wdGlvblRvVGFyZ2V0UHJvcGVydHkoQSl7c3dpdGNoKEEpe2Nhc2UieCBwb3NpdGlvbiI6cmV0dXJuIngiO2Nhc2UieSBwb3NpdGlvbiI6cmV0dXJuInkiO2Nhc2UieCBzdHJldGNoIjpyZXR1cm4ieFN0cmV0Y2giO2Nhc2UieSBzdHJldGNoIjpyZXR1cm4ieVN0cmV0Y2giO2Nhc2Uicm90YXRpb24gc3R5bGUiOnJldHVybiJyb3RhdGlvblN0eWxlIjtjYXNlImNvc3R1bWUgbnVtYmVyIjpyZXR1cm4iY3VycmVudENvc3R1bWUiO2Nhc2UiY29zdHVtZSBuYW1lIjpyZXR1cm4iY29zdHVtZU5hbWUiO2RlZmF1bHQ6cmV0dXJuIEF9fWdldE1haW5TcHJpdGUoQSl7aWYoIUEuc3ByaXRlKXJldHVybjtyZXR1cm4gQS5zcHJpdGUuY2xvbmVzLmZpbHRlcihBPT5BLmlzT3JpZ2luYWwpWzBdfWdldFNwcml0ZU1lbnUoKXtjb25zdCBBPXRoaXMucnVudGltZS50YXJnZXRzLGU9W3t0ZXh0OiIiLHZhbHVlOiIifV07aWYoIUEpcmV0dXJuIGU7Y29uc3QgdD1BLmZpbHRlcihBPT5BLmlzT3JpZ2luYWwmJiFBLmlzU3RhZ2UpLm1hcChBPT4oe3RleHQ6QS5zcHJpdGUubmFtZSx2YWx1ZTpBLnNwcml0ZS5uYW1lfSkpO3JldHVybiB0Lmxlbmd0aD4wP3Q6ZX1nZXRTcHJpdGVWYXJpYWJsZXNNZW51KCl7Y29uc3QgQT12bS5lZGl0aW5nVGFyZ2V0LGU9W3t0ZXh0OiIiLHZhbHVlOiIifV07aWYoIUEpcmV0dXJuIGU7aWYoIUEudmFyaWFibGVzKXJldHVybiBlO2NvbnN0IHQ9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoQS52YXJpYWJsZXMpLm1hcChlPT57Y29uc3QgdD1BLnZhcmlhYmxlc1tlXTtyZXR1cm57dGV4dDp0Lm5hbWUsdmFsdWU6dC5uYW1lfX0pO3JldHVybiB0Lmxlbmd0aD4wP3Q6ZX1nZXRJc0Nsb25lKEEsZSl7cmV0dXJuIWUudGFyZ2V0LmlzT3JpZ2luYWx9Y2xvbmVzSW5TcHJpdGUoQSl7Y29uc3QgZT10aGlzLmdldFRhcmdldEJ5U3ByaXRlTmFtZShBLlNQUklURSk7aWYoIWUpcmV0dXJuIDA7cmV0dXJuIHRoaXMuZ2V0Q2xvbmVzKGUuc3ByaXRlKS5sZW5ndGh9Z2V0Q2xvbmVXaXRoVmFyaWFibGVTZXRUbyhBLGUpe2NvbnN0IHQ9ZS50YXJnZXQsbj10aGlzLmdldFRhcmdldENsb25lQnlWYXJpYWJsZVNldFRvVmFsdWUodCxBLlZBUixTdHJpbmcoQS5WQUxVRSkpO2lmKCFuKXJldHVybiIiO2NvbnN0IGk9dGhpcy5tZW51T3B0aW9uVG9UYXJnZXRQcm9wZXJ0eShBLkRBVEEpO3N3aXRjaChpKXtjYXNlImN1cnJlbnRDb3N0dW1lIjpyZXR1cm4gbi5jdXJyZW50Q29zdHVtZSsxO2Nhc2UiY29zdHVtZU5hbWUiOnJldHVybiBuLnNwcml0ZS5jb3N0dW1lc19bbi5jdXJyZW50Q29zdHVtZV0ubmFtZTtjYXNlInhTdHJldGNoIjpyZXR1cm4gbi5zdHJldGNoWzBdO2Nhc2UieVN0cmV0Y2giOnJldHVybiBuLnN0cmV0Y2hbMV07Y2FzZSJjb2xvciBlZmZlY3QiOnJldHVybiBuLmVmZmVjdHMuY29sb3I7Y2FzZSJmaXNoZXllIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5maXNoZXllO2Nhc2Uid2hpcmwgZWZmZWN0IjpyZXR1cm4gbi5lZmZlY3RzLndoaXJsO2Nhc2UicGl4ZWxhdGUgZWZmZWN0IjpyZXR1cm4gbi5lZmZlY3RzLnBpeGVsYXRlO2Nhc2UibW9zYWljIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5tb3NhaWM7Y2FzZSJicmlnaHRuZXNzIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5icmlnaHRuZXNzO2Nhc2UiZ2hvc3QgZWZmZWN0IjpyZXR1cm4gbi5lZmZlY3RzLmdob3N0O2Nhc2UicmVkIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5yZWQ7Y2FzZSJncmVlbiBlZmZlY3QiOnJldHVybiBuLmVmZmVjdHMuZ3JlZW47Y2FzZSJibHVlIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5ibHVlO2Nhc2Uib3BhcXVlIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5vcGFxdWU7Y2FzZSJzYXR1cmF0aW9uIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5zYXR1cmF0aW9uO2RlZmF1bHQ6cmV0dXJuIG5baV19fWdldENsb25lVmFyaWFibGVXaXRoVmFyaWFibGVTZXRUbyhBLGUpe2NvbnN0IHQ9ZS50YXJnZXQsbj10aGlzLmdldFRhcmdldENsb25lQnlWYXJpYWJsZVNldFRvVmFsdWUodCxBLlZBUjIsU3RyaW5nKEEuVkFMVUUpKTtpZighbilyZXR1cm4iIjtjb25zdCBpPXt9O3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhuLnZhcmlhYmxlcykuZm9yRWFjaChBPT57aVtuLnZhcmlhYmxlc1tBXS5uYW1lXT1uLnZhcmlhYmxlc1tBXS52YWx1ZX0pLGlbQS5WQVIxXX1zZXRWYXJpYWJsZU9uQ2xvbmVXaXRoVmFyaWFibGVTZXRUbyhBLGUpe2NvbnN0IHQ9ZS50YXJnZXQ7dGhpcy5nZXRUYXJnZXRDbG9uZXNCeVZhcmlhYmxlU2V0VG9WYWx1ZSh0LEEuVkFSMixTdHJpbmcoQS5WQUxVRTIpKS5mb3JFYWNoKGU9PntPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhlLnZhcmlhYmxlcykuZm9yRWFjaCh0PT57Y29uc3Qgbj1lLnZhcmlhYmxlc1t0XTtpZihuLm5hbWUhPT1BLlZBUjEpcmV0dXJuO2NvbnN0IGk9aXNOYU4oTnVtYmVyKEEuVkFMVUUxKSk/U3RyaW5nKEEuVkFMVUUxKTpOdW1iZXIoQS5WQUxVRTEpO24udmFsdWU9aX0pfSl9Z2V0TWFpblNwcml0ZURhdGEoQSxlKXtjb25zdCB0PWUudGFyZ2V0LG49dGhpcy5nZXRNYWluU3ByaXRlKHQpO2lmKCFuKXJldHVybiIiO2NvbnN0IGk9dGhpcy5tZW51T3B0aW9uVG9UYXJnZXRQcm9wZXJ0eShBLkRBVEEpO3N3aXRjaChpKXtjYXNlImN1cnJlbnRDb3N0dW1lIjpyZXR1cm4gbi5jdXJyZW50Q29zdHVtZSsxO2Nhc2UiY29zdHVtZU5hbWUiOnJldHVybiBuLnNwcml0ZS5jb3N0dW1lc19bbi5jdXJyZW50Q29zdHVtZV0ubmFtZTtjYXNlInhTdHJldGNoIjpyZXR1cm4gbi5zdHJldGNoWzBdO2Nhc2UieVN0cmV0Y2giOnJldHVybiBuLnN0cmV0Y2hbMV07Y2FzZSJjb2xvciBlZmZlY3QiOnJldHVybiBuLmVmZmVjdHMuY29sb3I7Y2FzZSJmaXNoZXllIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5maXNoZXllO2Nhc2Uid2hpcmwgZWZmZWN0IjpyZXR1cm4gbi5lZmZlY3RzLndoaXJsO2Nhc2UicGl4ZWxhdGUgZWZmZWN0IjpyZXR1cm4gbi5lZmZlY3RzLnBpeGVsYXRlO2Nhc2UibW9zYWljIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5tb3NhaWM7Y2FzZSJicmlnaHRuZXNzIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5icmlnaHRuZXNzO2Nhc2UiZ2hvc3QgZWZmZWN0IjpyZXR1cm4gbi5lZmZlY3RzLmdob3N0O2Nhc2UicmVkIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5yZWQ7Y2FzZSJncmVlbiBlZmZlY3QiOnJldHVybiBuLmVmZmVjdHMuZ3JlZW47Y2FzZSJibHVlIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5ibHVlO2Nhc2Uib3BhcXVlIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5vcGFxdWU7Y2FzZSJzYXR1cmF0aW9uIGVmZmVjdCI6cmV0dXJuIG4uZWZmZWN0cy5zYXR1cmF0aW9uO2RlZmF1bHQ6cmV0dXJuIG5baV19fWdldFZhcmlhYmxlT25NYWluU3ByaXRlKEEsZSl7Y29uc3QgdD1lLnRhcmdldCxuPXRoaXMuZ2V0TWFpblNwcml0ZSh0KTtpZighbilyZXR1cm4iIjtjb25zdCBpPXt9O3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhuLnZhcmlhYmxlcykuZm9yRWFjaChBPT57aVtuLnZhcmlhYmxlc1tBXS5uYW1lXT1uLnZhcmlhYmxlc1tBXS52YWx1ZX0pLGlbQS5WQVJdfXNldFZhcmlhYmxlT25NYWluU3ByaXRlKEEsZSl7Y29uc3QgdD1lLnRhcmdldCxuPXRoaXMuZ2V0TWFpblNwcml0ZSh0KTtPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhuLnZhcmlhYmxlcykuZm9yRWFjaChlPT57Y29uc3QgdD1uLnZhcmlhYmxlc1tlXTtpZih0Lm5hbWUhPT1BLlZBUilyZXR1cm47Y29uc3QgaT1pc05hTihOdW1iZXIoQS5WQUxVRSkpP1N0cmluZyhBLlZBTFVFKTpOdW1iZXIoQS5WQUxVRSk7dC52YWx1ZT1pfSl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0KSxpPXQoMSkscj10KDMpLG89dCgyKSxzPShBLGUsdCk9PkEqKHQtZSkrZSxhPShBLGUpPT57c3dpdGNoKGUpe2Nhc2UiaW4iOnJldHVybiAxLWEoMS1BLCJvdXQiKTtjYXNlIm91dCI6e2NvbnN0IGU9Ny41NjI1LHQ9Mi43NTtyZXR1cm4gQTwxL3Q/ZSpBKkE6QTwyL3Q/ZSooQS09MS41L3QpKkErLjc1OkE8Mi41L3Q/ZSooQS09Mi4yNS90KSpBKy45Mzc1OmUqKEEtPTIuNjI1L3QpKkErLjk4NDM3NX1jYXNlImluIG91dCI6cmV0dXJuIEE8LjU/KDEtYSgxLTIqQSwib3V0IikpLzI6KDErYSgyKkEtMSwib3V0IikpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LEI9e2xpbmVhcjpBPT5BLHNpbmU6KEEsZSk9Pntzd2l0Y2goZSl7Y2FzZSJpbiI6cmV0dXJuIDEtTWF0aC5jb3MoQSpNYXRoLlBJLzIpO2Nhc2Uib3V0IjpyZXR1cm4gTWF0aC5zaW4oQSpNYXRoLlBJLzIpO2Nhc2UiaW4gb3V0IjpyZXR1cm4tKE1hdGguY29zKE1hdGguUEkqQSktMSkvMjtkZWZhdWx0OnJldHVybiAwfX0scXVhZDooQSxlKT0+e3N3aXRjaChlKXtjYXNlImluIjpyZXR1cm4gQSpBO2Nhc2Uib3V0IjpyZXR1cm4gMS0oMS1BKSooMS1BKTtjYXNlImluIG91dCI6cmV0dXJuIEE8LjU/MipBKkE6MS1NYXRoLnBvdygtMipBKzIsMikvMjtkZWZhdWx0OnJldHVybiAwfX0sY3ViaWM6KEEsZSk9Pntzd2l0Y2goZSl7Y2FzZSJpbiI6cmV0dXJuIEEqQSpBO2Nhc2Uib3V0IjpyZXR1cm4gMS1NYXRoLnBvdygxLUEsMyk7Y2FzZSJpbiBvdXQiOnJldHVybiBBPC41PzQqQSpBKkE6MS1NYXRoLnBvdygtMipBKzIsMykvMjtkZWZhdWx0OnJldHVybiAwfX0scXVhcnQ6KEEsZSk9Pntzd2l0Y2goZSl7Y2FzZSJpbiI6cmV0dXJuIEEqQSpBKkE7Y2FzZSJvdXQiOnJldHVybiAxLU1hdGgucG93KDEtQSw0KTtjYXNlImluIG91dCI6cmV0dXJuIEE8LjU/OCpBKkEqQSpBOjEtTWF0aC5wb3coLTIqQSsyLDQpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LHF1aW50OihBLGUpPT57c3dpdGNoKGUpe2Nhc2UiaW4iOnJldHVybiBBKkEqQSpBKkE7Y2FzZSJvdXQiOnJldHVybiAxLU1hdGgucG93KDEtQSw1KTtjYXNlImluIG91dCI6cmV0dXJuIEE8LjU/MTYqQSpBKkEqQSpBOjEtTWF0aC5wb3coLTIqQSsyLDUpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LGV4cG86KEEsZSk9Pntzd2l0Y2goZSl7Y2FzZSJpbiI6cmV0dXJuIDA9PT1BPzA6TWF0aC5wb3coMiwxMCpBLTEwKTtjYXNlIm91dCI6cmV0dXJuIDE9PT1BPzE6MS1NYXRoLnBvdygyLC0xMCpBKTtjYXNlImluIG91dCI6cmV0dXJuIDA9PT1BPzA6MT09PUE/MTpBPC41P01hdGgucG93KDIsMjAqQS0xMCkvMjooMi1NYXRoLnBvdygyLC0yMCpBKzEwKSkvMjtkZWZhdWx0OnJldHVybiAwfX0sY2lyYzooQSxlKT0+e3N3aXRjaChlKXtjYXNlImluIjpyZXR1cm4gMS1NYXRoLnNxcnQoMS1NYXRoLnBvdyhBLDIpKTtjYXNlIm91dCI6cmV0dXJuIE1hdGguc3FydCgxLU1hdGgucG93KEEtMSwyKSk7Y2FzZSJpbiBvdXQiOnJldHVybiBBPC41PygxLU1hdGguc3FydCgxLU1hdGgucG93KDIqQSwyKSkpLzI6KE1hdGguc3FydCgxLU1hdGgucG93KC0yKkErMiwyKSkrMSkvMjtkZWZhdWx0OnJldHVybiAwfX0sYmFjazooQSxlKT0+e2NvbnN0IHQ9MS43MDE1OCxuPTEuNTI1KnQ7c3dpdGNoKGUpe2Nhc2UiaW4iOnJldHVybiAyLjcwMTU4KkEqQSpBLXQqQSpBO2Nhc2Uib3V0IjpyZXR1cm4gMSsyLjcwMTU4Kk1hdGgucG93KEEtMSwzKSt0Kk1hdGgucG93KEEtMSwyKTtjYXNlImluIG91dCI6cmV0dXJuIEE8LjU/TWF0aC5wb3coMipBLDIpKig3LjE4OTgxOSpBLW4pLzI6KE1hdGgucG93KDIqQS0yLDIpKigobisxKSooMipBLTIpK24pKzIpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LGVsYXN0aWM6KEEsZSk9Pntjb25zdCB0PTIqTWF0aC5QSS8zLG49MipNYXRoLlBJLzQuNTtzd2l0Y2goZSl7Y2FzZSJpbiI6cmV0dXJuIDA9PT1BPzA6MT09PUE/MTotTWF0aC5wb3coMiwxMCpBLTEwKSpNYXRoLnNpbigoMTAqQS0xMC43NSkqdCk7Y2FzZSJvdXQiOnJldHVybiAwPT09QT8wOjE9PT1BPzE6TWF0aC5wb3coMiwtMTAqQSkqTWF0aC5zaW4oKDEwKkEtLjc1KSp0KSsxO2Nhc2UiaW4gb3V0IjpyZXR1cm4gMD09PUE/MDoxPT09QT8xOkE8LjU/LU1hdGgucG93KDIsMjAqQS0xMCkqTWF0aC5zaW4oKDIwKkEtMTEuMTI1KSpuKS8yOk1hdGgucG93KDIsLTIwKkErMTApKk1hdGguc2luKCgyMCpBLTExLjEyNSkqbikvMisxO2RlZmF1bHQ6cmV0dXJuIDB9fSxib3VuY2U6YX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnVHdlZW4iLG5hbWU6IlR3ZWVuaW5nIixibG9ja3M6W3tvcGNvZGU6InR3ZWVuVmFsdWUiLHRleHQ6bih7aWQ6ImpnVHdlZW4uYmxvY2tzLnR3ZWVuVmFsdWUiLGRlZmF1bHQ6IltNT0RFXSBlYXNlIFtESVJFQ1RJT05dIFtTVEFSVF0gdG8gW0VORF0gYnkgW0FNT1VOVF0lIixkZXNjcmlwdGlvbjoiQmxvY2sgZm9yIGVhc2luZyBhIHZhbHVlIHdpdGggYSBjZXJ0YWluIG1vZGUgYW5kIGRpcmVjdGlvbiBieSBhIGNlcnRhaW4gYW1vdW50LiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e01PREU6e3R5cGU6ci5TVFJJTkcsbWVudToibW9kZXMifSxESVJFQ1RJT046e3R5cGU6ci5TVFJJTkcsbWVudToiZGlyZWN0aW9uIn0sU1RBUlQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LEVORDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfSxBTU9VTlQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjUwfX19LHtvcGNvZGU6InR3ZWVuVmFyaWFibGUiLHRleHQ6InR3ZWVuIHZhcmlhYmxlIFtWQVJdIHRvIFtWQUxVRV0gb3ZlciBbU0VDXSBzZWNvbmRzIHVzaW5nIFtNT0RFXSBlYXNlIFtESVJFQ1RJT05dIixibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7VkFSOnt0eXBlOnIuU1RSSU5HLG1lbnU6InZhcnMifSxWQUxVRTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfSxTRUM6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9LE1PREU6e3R5cGU6ci5TVFJJTkcsbWVudToibW9kZXMifSxESVJFQ1RJT046e3R5cGU6ci5TVFJJTkcsbWVudToiZGlyZWN0aW9uIn19fSx7b3Bjb2RlOiJ0d2VlblhZIix0ZXh0OiJ0d2VlbiB0byB4OiBbWF0geTogW1ldIG92ZXIgW1NFQ10gc2Vjb25kcyB1c2luZyBbTU9ERV0gZWFzZSBbRElSRUNUSU9OXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1BST1BFUlRZOnt0eXBlOnIuU1RSSU5HLG1lbnU6InByb3BlcnRpZXMifSxYOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMDB9LFk6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH0sU0VDOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxNT0RFOnt0eXBlOnIuU1RSSU5HLG1lbnU6Im1vZGVzIn0sRElSRUNUSU9OOnt0eXBlOnIuU1RSSU5HLG1lbnU6ImRpcmVjdGlvbiJ9fX0se29wY29kZToidHdlZW5Qcm9wZXJ0eSIsdGV4dDoidHdlZW4gW1BST1BFUlRZXSB0byBbVkFMVUVdIG92ZXIgW1NFQ10gc2Vjb25kcyB1c2luZyBbTU9ERV0gZWFzZSBbRElSRUNUSU9OXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1BST1BFUlRZOnt0eXBlOnIuU1RSSU5HLG1lbnU6InByb3BlcnRpZXMifSxWQUxVRTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfSxTRUM6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9LE1PREU6e3R5cGU6ci5TVFJJTkcsbWVudToibW9kZXMifSxESVJFQ1RJT046e3R5cGU6ci5TVFJJTkcsbWVudToiZGlyZWN0aW9uIn19fSwiLS0tIix7b3Bjb2RlOiJ0d2VlblZhcmlhYmxlQ2FuY2VsIix0ZXh0OiJjYW5jZWwgdHdlZW4gZm9yIHZhcmlhYmxlIFtWQVJdIixibG9ja1R5cGU6aS5DT01NQU5ELGFyZ3VtZW50czp7VkFSOnt0eXBlOnIuU1RSSU5HLG1lbnU6InZhcnMifX19LHtvcGNvZGU6InR3ZWVuUHJvcGVydHlDYW5jZWwiLHRleHQ6ImNhbmNlbCB0d2VlbiBmb3IgW1BST1BFUlRZXSIsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e1BST1BFUlRZOnt0eXBlOnIuU1RSSU5HLG1lbnU6InByb3BlcnRpZXMifX19LCItLS0iLHtvcGNvZGU6InR3ZWVuQyIsYmxvY2tUeXBlOmkuTE9PUCx0ZXh0OiJbTU9ERV0gZWFzZSBbRElSRUNUSU9OXSBbQ0hBTkdFXSBbU1RBUlRdIHRvIFtFTkRdIGluIFtTRUNdIHNlY3MiLGFyZ3VtZW50czp7TU9ERTp7dHlwZTpyLlNUUklORyxtZW51OiJtb2RlcyJ9LERJUkVDVElPTjp7dHlwZTpyLlNUUklORyxtZW51OiJkaXJlY3Rpb24ifSxDSEFOR0U6e3R5cGU6ci5TVFJJTkcsZmlsbEluOiJ0d2VlblZhbCJ9LFNUQVJUOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxFTkQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH0sU0VDOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfX19LHtvcGNvZGU6InR3ZWVuVmFsIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJ0d2VlbiB2YWx1ZSIsY2FuRHJhZ0R1cGxpY2F0ZTohMCxoaWRlRnJvbVBhbGV0dGU6ITB9XSxtZW51czp7bW9kZXM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpPYmplY3Qua2V5cyhCKX0sZGlyZWN0aW9uOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJpbiIsIm91dCIsImluIG91dCJdfSx2YXJzOnthY2NlcHRSZXBvcnRlcnM6ITEsaXRlbXM6ImdldFZhcmlhYmxlcyJ9LHByb3BlcnRpZXM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbInggcG9zaXRpb24iLCJ5IHBvc2l0aW9uIiwiZGlyZWN0aW9uIiwic2l6ZSJdfX19fWdldFZhcmlhYmxlcygpe2NvbnN0IEE9InVuZGVmaW5lZCI9PXR5cGVvZiBCbG9ja2x5P1tdOkJsb2NrbHkuZ2V0TWFpbldvcmtzcGFjZSgpLmdldFZhcmlhYmxlTWFwKCkuZ2V0VmFyaWFibGVzT2ZUeXBlKCIiKS5tYXAoQT0+KHt0ZXh0OkEubmFtZSx2YWx1ZTpBLmdldElkKCl9KSk7cmV0dXJuIEEubGVuZ3RoPjA/QTpbe3RleHQ6IiIsdmFsdWU6IiJ9XX10d2VlblZhbHVlKEEpe2NvbnN0IGU9by50b1N0cmluZyhBLk1PREUpLHQ9by50b1N0cmluZyhBLkRJUkVDVElPTiksbj1vLnRvTnVtYmVyKEEuU1RBUlQpLGk9by50b051bWJlcihBLkVORCkscj1vLnRvTnVtYmVyKEEuQU1PVU5UKS8xMDA7aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChCLGUpKXJldHVybiBuO2NvbnN0IGE9KDAsQltlXSkocix0KTtyZXR1cm4gcyhhLG4saSl9X3R3ZWVuVmFsdWUoQSxlLHQsbixpLHIpe2NvbnN0IGE9ZS5zdGFja0ZyYW1lW3RdO2lmKCFhKXtpZihlLnlpZWxkKCksZS5zdGFja1RpbWVyTmVlZHNJbml0KCkpe2NvbnN0IHQ9TWF0aC5tYXgoMCwxZTMqby50b051bWJlcihBLlNFQykpO2Uuc3RhcnRTdGFja1RpbWVyKHQpfWNvbnN0IHM9by50b1N0cmluZyhBLk1PREUpLGE9by50b1N0cmluZyhBLkRJUkVDVElPTiksYz1pLGc9by50b051bWJlcihBW25dKTtsZXQgRTtyZXR1cm4gRT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoQixzKT9CW3NdOkIubGluZWFyLGUuc3RhY2tGcmFtZVt0XT17ZWFzaW5nRnVuY3Rpb246RSxlYXNlRGlyZWN0aW9uOmEsc3RhcnQ6YyxlbmQ6Zyxwcm9wZXJ0eU5hbWU6cn0sY31pZihlLnN0YWNrVGltZXJGaW5pc2hlZCgpKXJldHVybiBlLnN0YWNrRnJhbWVbdF0uZW5kO2UueWllbGQoKTtjb25zdCBjPWUuc3RhY2tGcmFtZS50aW1lci50aW1lRWxhcHNlZCgpL2Uuc3RhY2tGcmFtZS5kdXJhdGlvbixnPWEuZWFzaW5nRnVuY3Rpb24oYyxhLmVhc2VEaXJlY3Rpb24pO3JldHVybiBzKGcsYS5zdGFydCxhLmVuZCl9dHdlZW5WYXJpYWJsZShBLGUpe2NvbnN0IHQ9ZS50YXJnZXQubG9va3VwVmFyaWFibGVCeUlkKEEuVkFSKTtpZihlLnN0YWNrRnJhbWVbIiJdJiZlLnN0YWNrRnJhbWVbIiJdLmNhbmNlbGxlZClyZXR1cm47Y29uc3Qgbj10aGlzLl90d2VlblZhbHVlKEEsZSwiIiwiVkFMVUUiLHQudmFsdWUsQS5WQVIpO3QmJiIiPT09dC50eXBlJiYodC52YWx1ZT1uKX10d2VlblhZKEEsZSl7Y29uc3QgdD1lLnN0YWNrRnJhbWUueHx8e30sbj1lLnN0YWNrRnJhbWUueXx8e30saT10LmNhbmNlbGxlZD9lLnRhcmdldC54OnRoaXMuX3R3ZWVuVmFsdWUoQSxlLCJ4IiwiWCIsZS50YXJnZXQueCwieCBwb3NpdGlvbiIpLHI9bi5jYW5jZWxsZWQ/ZS50YXJnZXQueTp0aGlzLl90d2VlblZhbHVlKEEsZSwieSIsIlkiLGUudGFyZ2V0LnksInkgcG9zaXRpb24iKTtlLnRhcmdldC5zZXRYWShpLHIpfXR3ZWVuUHJvcGVydHkoQSxlKXtsZXQgdD0wO2lmKCJ4IHBvc2l0aW9uIj09PUEuUFJPUEVSVFk/dD1lLnRhcmdldC54OiJ5IHBvc2l0aW9uIj09PUEuUFJPUEVSVFk/dD1lLnRhcmdldC55OiJkaXJlY3Rpb24iPT09QS5QUk9QRVJUWT90PWUudGFyZ2V0LmRpcmVjdGlvbjoic2l6ZSI9PT1BLlBST1BFUlRZJiYodD1lLnRhcmdldC5zaXplKSxlLnN0YWNrRnJhbWVbIiJdJiZlLnN0YWNrRnJhbWVbIiJdLmNhbmNlbGxlZClyZXR1cm47Y29uc3Qgbj10aGlzLl90d2VlblZhbHVlKEEsZSwiIiwiVkFMVUUiLHQsQS5QUk9QRVJUWSk7InggcG9zaXRpb24iPT09QS5QUk9QRVJUWT9lLnRhcmdldC5zZXRYWShuLGUudGFyZ2V0LnkpOiJ5IHBvc2l0aW9uIj09PUEuUFJPUEVSVFk/ZS50YXJnZXQuc2V0WFkoZS50YXJnZXQueCxuKToiZGlyZWN0aW9uIj09PUEuUFJPUEVSVFk/ZS50YXJnZXQuc2V0RGlyZWN0aW9uKG4pOiJzaXplIj09PUEuUFJPUEVSVFkmJmUudGFyZ2V0LnNldFNpemUobil9dHdlZW5WYXJpYWJsZUNhbmNlbChBLGUpe2NvbnN0IHQ9QS5WQVI7dGhpcy50d2VlblByb3BlcnR5Q2FuY2VsKHtQUk9QRVJUWTp0fSxlKX10d2VlblByb3BlcnR5Q2FuY2VsKEEsZSl7Y29uc3QgdD1BLlBST1BFUlRZLG49ZS50YXJnZXQuaWQ7Zm9yKGxldCBBPTA7QTx0aGlzLnJ1bnRpbWUudGhyZWFkcy5sZW5ndGg7QSsrKXtjb25zdCBlPXRoaXMucnVudGltZS50aHJlYWRzW0FdO2lmKCFlLnRhcmdldCljb250aW51ZTtpZihlLnRhcmdldC5pZCE9PW4pY29udGludWU7aWYoIWUuY29tcGF0aWJpbGl0eVN0YWNrRnJhbWUpY29udGludWU7Y29uc3QgaT1lLmNvbXBhdGliaWxpdHlTdGFja0ZyYW1lWyIiXXx8KCJ4IHBvc2l0aW9uIj09PXQ/ZS5jb21wYXRpYmlsaXR5U3RhY2tGcmFtZS54Om51bGwpfHwoInkgcG9zaXRpb24iPT09dD9lLmNvbXBhdGliaWxpdHlTdGFja0ZyYW1lLnk6bnVsbCk7aSYmKGkucHJvcGVydHlOYW1lPT09dCYmKGkuY2FuY2VsbGVkPSEwKSl9fXR3ZWVuQyhBLGUpe2NvbnN0IHQ9Imxvb3BlZFZhbCIsbj1lLnN0YWNrRnJhbWVbdF07aWYobilpZihlLnN0YWNrVGltZXJGaW5pc2hlZCgpKWUudGhyZWFkLnN0YWNrRnJhbWVzWzBdLnR3ZWVuVmFsdWU9ZS5zdGFja0ZyYW1lW3RdLmVuZCwic3RvcCIhPT1lLnN0YWNrRnJhbWVbdF0uY2FuQ29udGludWUmJihlLnN0YWNrRnJhbWVbdF0uY2FuQ29udGludWU9InN0b3AiLGUuc3RhcnRCcmFuY2goMSwhMCkpO2Vsc2V7Y29uc3QgQT1lLnN0YWNrRnJhbWUudGltZXIudGltZUVsYXBzZWQoKS9lLnN0YWNrRnJhbWUuZHVyYXRpb24saT1uLmVhc2luZ0Z1bmN0aW9uKEEsbi5lYXNlRGlyZWN0aW9uKTtlLnRocmVhZC5zdGFja0ZyYW1lc1swXS50d2VlblZhbHVlPXMoaSxuLnN0YXJ0LG4uZW5kKSwic3RvcCIhPT1lLnN0YWNrRnJhbWVbdF0uY2FuQ29udGludWUmJmUuc3RhcnRCcmFuY2goMSwhMCl9ZWxzZXtpZihlLnN0YWNrVGltZXJOZWVkc0luaXQoKSl7Y29uc3QgdD1NYXRoLm1heCgwLDFlMypvLnRvTnVtYmVyKEEuU0VDKSk7ZS5zdGFydFN0YWNrVGltZXIodCl9Y29uc3Qgbj1vLnRvU3RyaW5nKEEuTU9ERSksaT1vLnRvU3RyaW5nKEEuRElSRUNUSU9OKSxyPW8udG9OdW1iZXIoQS5TVEFSVCkscz1vLnRvTnVtYmVyKEEuRU5EKTtsZXQgYTt2b2lkIDA9PT1lLnRocmVhZC50d2VlblZhbHVlJiYoZS50aHJlYWQuc3RhY2tGcmFtZXNbMF0udHdlZW5WYWx1ZT1yKSxhPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChCLG4pP0Jbbl06Qi5saW5lYXIsZS5zdGFja0ZyYW1lW3RdPXtlYXNpbmdGdW5jdGlvbjphLGVhc2VEaXJlY3Rpb246aSxzdGFydDpyLGVuZDpzfSxlLnN0YXJ0QnJhbmNoKDEsITApfX10d2VlblZhbChBLGUpe3ZhciB0O3JldHVybiBudWxsIT09KHQ9ZS50aHJlYWQuc3RhY2tGcmFtZXNbMF0udHdlZW5WYWx1ZSkmJnZvaWQgMCE9PXQ/dDoiIn19fSxmdW5jdGlvbihBLGUsdCl7ZnVuY3Rpb24gbihBLGUpe3ZhciB0PU9iamVjdC5rZXlzKEEpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSkuZW51bWVyYWJsZX0pKSksdC5wdXNoLmFwcGx5KHQsbil9cmV0dXJuIHR9ZnVuY3Rpb24gaShBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgdD1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9uKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cihBLGUsdFtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0KSk6bihPYmplY3QodCkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpKX0pKX1yZXR1cm4gQX1mdW5jdGlvbiByKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3Qgbz10KDEpLHM9dCgzKSxhPXQoMiksQj10KDI0KSxjPXtpc05vb3A6ITB9LGc9KEEsZSk9PntpZignIichPT1BLmNoYXJBdChlKSlyZXR1cm4hMTtsZXQgdD1lLTEsbj0hMTtmb3IoOyJcXCI9PT1BLmNoYXJBdCh0KTspbj0hbix0LT0xO3JldHVybiBufSxFPXtoZWxwOiJMaXN0IGFsbCBjb21tYW5kcyBhbmQgaG93IHRvIHVzZSB0aGVtLlxuXHRTcGVjaWZ5IGEgY29tbWFuZCBhZnRlciB0byBvbmx5IGluY2x1ZGUgdGhhdCBleHBsYW5hdGlvbi4iLGV4aXQ6IkNsb3NlcyB0aGUgZGVidWdnZXIuIixzdGFydDoiUmVzdGFydHMgdGhlIHByb2plY3QgbGlrZSB0aGUgZmxhZyB3YXMgY2xpY2tlZC4iLHN0b3A6IlN0b3BzIHRoZSBwcm9qZWN0LiIscGF1c2U6IlBhdXNlcyB0aGUgcHJvamVjdC4iLHJlc3VtZToiUmVzdW1lcyB0aGUgcHJvamVjdC4iLGJyb2FkY2FzdDoiU3RhcnRzIGEgYnJvYWRjYXN0IGJ5IG5hbWUuIixnZXR2YXI6IkdldHMgdGhlIHZhbHVlIG9mIGEgdmFyaWFibGUgYnkgbmFtZS5cblx0QWRkIGEgc3ByaXRlIG5hbWUgdG8gc3BlY2lmeSBhIHZhcmlhYmxlIGluIGEgc3ByaXRlLiIsc2V0dmFyOiJTZXRzIHRoZSB2YWx1ZSBvZiBhIHZhcmlhYmxlIGJ5IG5hbWUuXG5cdEFkZCBhIHNwcml0ZSBuYW1lIHRvIHNwZWNpZnkgYSB2YXJpYWJsZSBpbiBhIHNwcml0ZS4iLGdldGxpc3Q6IkdldHMgdGhlIHZhbHVlIG9mIGEgbGlzdCBieSBuYW1lLlxuXHRSZXR1cm5zIGFuIGFycmF5LlxuXHRBZGQgYSBzcHJpdGUgbmFtZSB0byBzcGVjaWZ5IGEgbGlzdCBpbiBhIHNwcml0ZS4iLHNldGxpc3Q6IlNldHMgdGhlIHZhbHVlIG9mIGEgbGlzdCBieSBuYW1lLlxuXHRUaGUgbGlzdCB3aWxsIGJlIHNldCB0byB0aGUgYXJyYXkgc3BlY2lmaWVkLlxuXHRVc2UgYSBzcHJpdGUgbmFtZSBhcyB0aGUgZmlyc3QgcGFyYW1ldGVyIGluc3RlYWQgdG8gc3BlY2lmeSBhIGxpc3QgaW4gYSBzcHJpdGUuIn07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuY29uc29sZT1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKSx0aGlzLmNvbnNvbGUuc3R5bGU9ImRpc3BsYXk6IG5vbmU7cG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiA0MHB4OyB0b3A6IDQwcHg7cmVzaXplOiBib3RoOyBib3JkZXItcmFkaXVzOiA4cHg7Ym94LXNoYWRvdzogMHB4IDBweCAxMHB4IGJsYWNrOyBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO2JhY2tncm91bmQ6IGJsYWNrOyBmb250LWZhbWlseTogbW9ub3NwYWNlO21pbi1oZWlnaHQ6IDNyZW07IG1pbi13aWR0aDogMTI4cHg7IHdpZHRoOiA0ODBweDsgaGVpZ2h0OiA0ODBweDtvdmVyZmxvdzogaGlkZGVuOyB6LWluZGV4OiAxMDAwMDAwOyIsdGhpcy5jb25zb2xlSGVhZGVyPXRoaXMuY29uc29sZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSksdGhpcy5jb25zb2xlSGVhZGVyLnN0eWxlPSJ3aWR0aDogMTAwJTsgaGVpZ2h0OiAycmVtO3Bvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMHB4OyB0b3A6IDBweDtkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyO2p1c3RpZnktY29udGVudDogY2VudGVyOyBjb2xvcjogd2hpdGU7IGN1cnNvcjogbW92ZTtiYWNrZ3JvdW5kOiAjMzMzMzMzOyB6LWluZGV4OiAxMDAwMDAxOyB1c2VyLXNlbGVjdDogbm9uZTsiLHRoaXMuY29uc29sZUhlYWRlci5pbm5lckhUTUw9IjxwPkRlYnVnZ2VyPC9wPiIsdGhpcy5jb25zb2xlTG9ncz10aGlzLmNvbnNvbGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLHRoaXMuY29uc29sZUxvZ3Muc3R5bGU9IndpZHRoOiAxMDAlOyBoZWlnaHQ6IGNhbGMoMTAwJSAtIDNyZW0pO3Bvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMHB4OyB0b3A6IDJyZW07Y29sb3I6IHdoaXRlOyBjdXJzb3I6IHRleHQ7IG92ZXJmbG93OiBhdXRvO2JhY2tncm91bmQ6IHRyYW5zcGFyZW50OyBvdXRsaW5lOiB1bnNldCAhaW1wb3J0YW50O2JvcmRlcjogMDsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBmb250LWZhbWlseTogbW9ub3NwYWNlO2Rpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O3otaW5kZXg6IDEwMDAwMDU7IHVzZXItc2VsZWN0OiB0ZXh0OyIsdGhpcy5jb25zb2xlQmFyPXRoaXMuY29uc29sZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSksdGhpcy5jb25zb2xlQmFyLnN0eWxlPSJ3aWR0aDogMTAwJTsgaGVpZ2h0OiAxcmVtO3Bvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMHB4OyBib3R0b206IDBweDtkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogcm93O2NvbG9yOiB3aGl0ZTsgY3Vyc29yOiB0ZXh0OyBiYWNrZ3JvdW5kOiBibGFjazt6LWluZGV4OiAxMDAwMDAxOyB1c2VyLXNlbGVjdDogbm9uZTsiLHRoaXMuY29uc29sZUJhcklucHV0PXRoaXMuY29uc29sZUJhci5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKSx0aGlzLmNvbnNvbGVCYXJJbnB1dC5zdHlsZT0id2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpOyBoZWlnaHQ6IDEwMCU7cG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAxNnB4OyB0b3A6IDBweDtib3JkZXI6IDA7IHBhZGRpbmc6IDA7IG1hcmdpbjogMDsgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtjb2xvcjogd2hpdGU7IGN1cnNvcjogdGV4dDsgYmFja2dyb3VuZDogYmxhY2s7ei1pbmRleDogMTAwMDAwMzsgdXNlci1zZWxlY3Q6IG5vbmU7IG91dGxpbmU6IHVuc2V0ICFpbXBvcnRhbnQ7Ijtjb25zdCBlPXRoaXMuY29uc29sZUJhci5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSk7ZS5zdHlsZT0id2lkdGg6IDE2cHg7IGhlaWdodDogMTAwJTtwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDBweDsgdG9wOiAwcHg7Y29sb3I6IHdoaXRlOyBjdXJzb3I6IHRleHQ7ei1pbmRleDogMTAwMDAwMjsgdXNlci1zZWxlY3Q6IG5vbmU7IixlLmlubmVySFRNTD0iPiIsZS5vbmNsaWNrPSgpPT57dGhpcy5jb25zb2xlQmFySW5wdXQuZm9jdXMoKX0sdGhpcy5jb25zb2xlQmFySW5wdXQub25rZXlkb3duPUE9PntpZihBLmN0cmxLZXl8fEEubWV0YUtleXx8QS5zaGlmdEtleXx8QS5hbHRLZXkpcmV0dXJuO2lmKCJlbnRlciIhPT1BLmtleS50b0xvd2VyQ2FzZSgpKXJldHVybjtjb25zdCBlPXRoaXMuY29uc29sZUJhcklucHV0LnZhbHVlO3RoaXMuY29uc29sZUJhcklucHV0LnZhbHVlPSIiLHRoaXMuX2FkZExvZygiPiAiLmNvbmNhdChlKSwib3BhY2l0eTogMC43OyIpO2xldCB0PXt9O3RyeXt0PXRoaXMuX3BhcnNlQ29tbWFuZChlKX1jYXRjaChBKXtyZXR1cm4gdm9pZCB0aGlzLl9hZGRMb2coIiIuY29uY2F0KEEpLCJjb2xvcjogcmVkOyIpfWNvbnNvbGUubG9nKHQpLHRoaXMuX3J1bkNvbW1hbmQodCl9O2xldCB0PSExLG49MCxpPTA7dGhpcy5jb25zb2xlSGVhZGVyLm9ubW91c2Vkb3duPUE9PntpZigwIT09QS5idXR0b24pcmV0dXJuO3Q9ITAsQS5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IGU9dGhpcy5jb25zb2xlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO249QS5jbGllbnRYLWUubGVmdCxpPUEuY2xpZW50WS1lLnRvcH0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixBPT57dCYmKEEucHJldmVudERlZmF1bHQoKSx0aGlzLmNvbnNvbGUuc3R5bGUubGVmdD0iIi5jb25jYXQoQS5jbGllbnRYLW4sInB4IiksdGhpcy5jb25zb2xlLnN0eWxlLnRvcD0iIi5jb25jYXQoQS5jbGllbnRZLWksInB4IikpfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsQT0+e3QmJih0PSExKX0pLHRoaXMuX2xvZ3M9W10sdGhpcy5jb21tYW5kU2V0PXt9LHRoaXMuY29tbWFuZEV4cGxhbmF0aW9ucz17fX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ0RlYnVnZ2luZyIsbmFtZToiRGVidWdnaW5nIixjb2xvcjE6IiM4Nzg3ODciLGNvbG9yMjoiIzc1NzU3NSIsYmxvY2tzOlt7b3Bjb2RlOiJvcGVuRGVidWdnZXIiLHRleHQ6Im9wZW4gZGVidWdnZXIiLGJsb2NrVHlwZTpvLkNPTU1BTkQsc3dpdGNoZXM6W2MsImNsb3NlRGVidWdnZXIiXX0se29wY29kZToiY2xvc2VEZWJ1Z2dlciIsdGV4dDoiY2xvc2UgZGVidWdnZXIiLGJsb2NrVHlwZTpvLkNPTU1BTkQsc3dpdGNoZXM6WyJvcGVuRGVidWdnZXIiLGNdfSwiLS0tIix7b3Bjb2RlOiJsb2ciLHRleHQ6ImxvZyBbSU5GT10iLGJsb2NrVHlwZTpvLkNPTU1BTkQsYXJndW1lbnRzOntJTkZPOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8hIn19LHN3aXRjaGVzOltjLCJ3YXJuIiwiZXJyb3IiXSxzd2l0Y2hUZXh0OiJsb2cifSx7b3Bjb2RlOiJ3YXJuIix0ZXh0OiJ3YXJuIFtJTkZPXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e0lORk86e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJXYXJuaW5nIn19LHN3aXRjaGVzOlsibG9nIixjLCJlcnJvciJdLHN3aXRjaFRleHQ6Indhcm4ifSx7b3Bjb2RlOiJlcnJvciIsdGV4dDoiZXJyb3IgW0lORk9dIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7SU5GTzp7dHlwZTpzLlNUUklORyxkZWZhdWx0VmFsdWU6IkVycm9yIn19LHN3aXRjaGVzOlsibG9nIiwid2FybiIsY10sc3dpdGNoVGV4dDoiZXJyb3IifSwiLS0tIix7b3Bjb2RlOiJicmVha3BvaW50IixibG9ja1R5cGU6by5DT01NQU5EfV19fV9hZGRMb2coQSxlKXtjb25zdCB0PXRoaXMuY29uc29sZUxvZ3MuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgicCIpKTt0aGlzLl9sb2dzLnB1c2goQSksdC5zdHlsZT0id2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlczsiLGUmJih0LnN0eWxlPSJ3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzOyAiLmNvbmNhdChlKSksdC5pbm5lckhUTUw9QihBKSx0aGlzLmNvbnNvbGVMb2dzLnNjcm9sbEJ5KDAsMWU2KX1fcGFyc2VDb21tYW5kKEEpe2NvbnN0IGU9YS50b1N0cmluZyhBKSx0PXtjb21tYW5kOiIiLGFyZ3M6W119O2xldCBuPSIiLGk9ITAscj0hMSxvPS0xO2Zvcihjb25zdCBBIG9mIGUuc3BsaXQoIiIpKWlmKG8rKyxpKXtpZigiICI9PT1BfHwiXHQiPT09QSl7aWYobi5sZW5ndGg8PTApdGhyb3cgbmV3IFN5bnRheEVycm9yKCJObyBjb21tYW5kIGJlZm9yZSB3aGl0ZS1zcGFjZSIpO3QuY29tbWFuZD1uLG49IiIsaT0hMTtjb250aW51ZX1uKz1BfWVsc2UgaWYociknIichPT1BfHxnKGUsbyk/bis9QToocj0hMSx0LmFyZ3MucHVzaChKU09OLnBhcnNlKCciJy5jb25jYXQobiwnIicpKSksbj0iIik7ZWxzZXtpZignIichPT1BKXtpZigiICI9PT1BfHwiXHQiPT09QSl7dC5hcmdzLnB1c2gobiksbj0iIjtjb250aW51ZX1uKz1BO2NvbnRpbnVlfWlmKG4ubGVuZ3RoPjApdGhyb3cgbmV3IFN5bnRheEVycm9yKCJDYW5ub3QgcHJlZml4IHN0cmluZyBhcmd1bWVudCIpO3I9ITB9aWYocil0aHJvdyBuZXcgU3ludGF4RXJyb3IoIlN0cmluZyBuZXZlciB0ZXJtaW5hdGVzIGluIGNvbW1hbmQiKTtyZXR1cm4gaSYmbi5sZW5ndGg+MD8odC5jb21tYW5kPW4saT0hMSk6bi5sZW5ndGg+MCYmdC5hcmdzLnB1c2gobiksdH1fcnVuQ29tbWFuZChBKXtpZighQSlyZXR1cm47aWYoIUEuY29tbWFuZClyZXR1cm47Y29uc3QgZT1BLmNvbW1hbmQsdD1BLmFyZ3M7c3dpdGNoKGUpe2Nhc2UiaGVscCI6e2lmKHQubGVuZ3RoPjApe2NvbnN0IEE9dFswXTtsZXQgZT0iTm8gZGVzY3JpcHRpb24gZGVmaW5lZCBmb3IgdGhpcyBjb21tYW5kLiI7QSBpbiB0aGlzLmNvbW1hbmRFeHBsYW5hdGlvbnM/ZT10aGlzLmNvbW1hbmRFeHBsYW5hdGlvbnNbQV06QSBpbiBFJiYoZT1FW0FdKSx0aGlzLl9hZGRMb2coIi0gQ29tbWFuZDogIi5jb25jYXQoQSwiXG4iKS5jb25jYXQoZSkpO2JyZWFrfWNvbnN0IEE9aShpKHt9LHRoaXMuY29tbWFuZEV4cGxhbmF0aW9ucyksRSk7bGV0IGU9IiI7Zm9yKGNvbnN0IHQgaW4gQSllKz0iIi5jb25jYXQodCwiIC0gIikuY29uY2F0KEFbdF0sIlxuIik7dGhpcy5fYWRkTG9nKGUpO2JyZWFrfWNhc2UiZXhpdCI6dGhpcy5jbG9zZURlYnVnZ2VyKCk7YnJlYWs7ZGVmYXVsdDppZighKGUgaW4gdGhpcy5jb21tYW5kU2V0KSl7dGhpcy5fYWRkTG9nKCdDb21tYW5kICInLmNvbmNhdChlLCciIG5vdCBmb3VuZC4gQ2hlY2sgImhlbHAiIGZvciBjb21tYW5kIGxpc3QuJyksImNvbG9yOiByZWQ7Iik7YnJlYWt9dHJ5e3RoaXMuY29tbWFuZFNldFtlXSguLi50KX1jYXRjaChBKXt0aGlzLl9hZGRMb2coIkVycm9yOiAiLmNvbmNhdChBKSwiY29sb3I6IHJlZDsiKX19fV9maW5kQmxvY2tGcm9tSWQoQSxlKXtpZighZSlyZXR1cm47aWYoIWUuYmxvY2tzKXJldHVybjtpZighZS5ibG9ja3MuX2Jsb2NrcylyZXR1cm47cmV0dXJuIGUuYmxvY2tzLl9ibG9ja3NbQV19b3BlbkRlYnVnZ2VyKCl7dGhpcy5jb25zb2xlLnN0eWxlLmRpc3BsYXk9IiJ9Y2xvc2VEZWJ1Z2dlcigpe3RoaXMuY29uc29sZS5zdHlsZS5kaXNwbGF5PSJub25lIn1sb2coQSl7Y29uc3QgZT1hLnRvU3RyaW5nKEEuSU5GTyk7Y29uc29sZS5sb2coZSksdGhpcy5fYWRkTG9nKGUpfXdhcm4oQSl7Y29uc3QgZT1hLnRvU3RyaW5nKEEuSU5GTyk7Y29uc29sZS53YXJuKGUpLHRoaXMuX2FkZExvZyhlLCJjb2xvcjogeWVsbG93OyIpfWVycm9yKEEsZSl7Y29uc3QgdD1bXSxuPWUudGFyZ2V0LGk9ZS50aHJlYWQ7aS5zdGFja0NsaWNrJiZ0LnB1c2goImNsaWNrZWQgYmxvY2tzIik7Y29uc3Qgcj1pLnBlZWtTdGFjaygpLG89dGhpcy5fZmluZEJsb2NrRnJvbUlkKHIsbik7bz90LnB1c2goImJsb2NrICIuY29uY2F0KG8ub3Bjb2RlKSk6dC5wdXNoKCJibG9jayAiLmNvbmNhdChyKSk7Y29uc3Qgcz10aGlzLl9maW5kQmxvY2tGcm9tSWQoaS50b3BCbG9jayxuKTtzP3QucHVzaCgiZXZlbnQgIi5jb25jYXQocy5vcGNvZGUpKTp0LnB1c2goImV2ZW50ICIuY29uY2F0KGkudG9wQmxvY2spKSx0LnB1c2goInNwcml0ZSAiLmNvbmNhdChuLnNwcml0ZS5uYW1lKSk7Y29uc3QgQj0iRXJyb3I6ICIuY29uY2F0KGEudG9TdHJpbmcoQS5JTkZPKSkrIlxuIi5jb25jYXQodC5tYXAoQT0+Ilx0YXQgIi5jb25jYXQoQSkpLmpvaW4oIlxuIikpO2NvbnNvbGUuZXJyb3IoQiksdGhpcy5fYWRkTG9nKEIsImNvbG9yOiByZWQ7Iil9YnJlYWtwb2ludCgpe3RoaXMucnVudGltZS5wYXVzZSgpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSk7dCgzKSx0KDIpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ0Vhc3lTYXZlIixuYW1lOiJFYXN5IFNhdmUiLGNvbG9yMToiIzQ4YTNkNCIsY29sb3IyOiIjM2Q4OWIzIixibG9ja3M6W3tibG9ja1R5cGU6bi5MQUJFTCx0ZXh0OiJTYXZpbmcifSx7b3Bjb2RlOiJhZGRWYXJUb1NhdmUiLHRleHQ6ImFkZCB2YWx1ZSBvZiB2YXJpYWJsZSBbVkFSXSB0byBzYXZlIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7VkFSOnttZW51OiJ2YXJpYWJsZSJ9fX0se29wY29kZToiYWRkTGlzdFRvU2F2ZSIsdGV4dDoiYWRkIHZhbHVlIG9mIGxpc3QgW0xJU1RdIHRvIHNhdmUiLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntMSVNUOnttZW51OiJsaXN0In19fSx7YmxvY2tUeXBlOm4uTEFCRUwsdGV4dDoiTG9hZGluZyJ9XSxtZW51czp7dmFyaWFibGU6e2FjY2VwdFJlcG9ydGVyczohMSxpdGVtczoiZ2V0VmFyaWFibGVzIn0sbGlzdDp7YWNjZXB0UmVwb3J0ZXJzOiExLGl0ZW1zOiJnZXRMaXN0cyJ9fX19Z2V0VmFyaWFibGVzKCl7Y29uc3QgQT0idW5kZWZpbmVkIj09dHlwZW9mIEJsb2NrbHk/W106QmxvY2tseS5nZXRNYWluV29ya3NwYWNlKCkuZ2V0VmFyaWFibGVNYXAoKS5nZXRWYXJpYWJsZXNPZlR5cGUoIiIpLm1hcChBPT4oe3RleHQ6QS5uYW1lLHZhbHVlOkEuZ2V0SWQoKX0pKTtyZXR1cm4gQS5sZW5ndGg+MD9BOlt7dGV4dDoiIix2YWx1ZToiIn1dfWdldExpc3RzKCl7Y29uc3QgQT1PYmplY3QudmFsdWVzKHRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLnZhcmlhYmxlcykuZmlsdGVyKEE9PiJsaXN0Ij09QS50eXBlKSxlPU9iamVjdC52YWx1ZXModGhpcy5ydW50aW1lLnZtLmVkaXRpbmdUYXJnZXQudmFyaWFibGVzKS5maWx0ZXIoQT0+Imxpc3QiPT1BLnR5cGUpLHQ9Wy4uLm5ldyBTZXQoWy4uLkEsLi4uZV0pXTtyZXR1cm4gMD09PXQubGVuZ3RoP1t7dGV4dDoiIix2YWx1ZToiIn1dOnQubWFwKEE9Pih7dGV4dDpBLm5hbWUsdmFsdWU6QS5pZH0pKX1hZGRWYXJUb1NhdmUoQSxlKXtjb25zdCB0PWUudGFyZ2V0Lmxvb2t1cFZhcmlhYmxlQnlJZChBLlZBUik7Y29uc29sZS5sb2codCl9YWRkTGlzdFRvU2F2ZShBLGUpe2NvbnNvbGUubG9nKEEuTElTVCk7Y29uc3QgdD1lLnRhcmdldC5sb29rdXBWYXJpYWJsZUJ5SWQoQS5MSVNUKTtjb25zb2xlLmxvZyh0KX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9dCgzKSxyPXQoMiksbz10KDI5MSk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnUGFja2FnZXJBcHBsaWNhdGlvbnMiLG5hbWU6IlBhY2thZ2VyIEFwcGxpY2F0aW9ucyIsY29sb3IxOiIjNjZiOGZmIixjb2xvcjI6IiM1MDkyY2MiLGJsb2NrSWNvblVSSTpvLGJsb2Nrczpbe29wY29kZToiaXNQYWNrYWdlZCIsYmxvY2tUeXBlOm4uQk9PTEVBTix0ZXh0OiJpcyBwYWNrYWdlZD8ifSx7b3Bjb2RlOiJtb3ZlV2luZG93IixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6Im1vdmUgd2luZG93IHRvIHg6IFtYXSB5OiBbWV0iLGFyZ3VtZW50czp7WDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sWTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJzZXRYIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCB3aW5kb3cgeCB0byBbWF0iLGFyZ3VtZW50czp7WDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJjaGFuZ2VYIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImNoYW5nZSB3aW5kb3cgeCBieSBbWF0iLGFyZ3VtZW50czp7WDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTB9fX0se29wY29kZToic2V0WSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgd2luZG93IHkgdG8gW1ldIixhcmd1bWVudHM6e1k6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fX0se29wY29kZToiY2hhbmdlWSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJjaGFuZ2Ugd2luZG93IHkgYnkgW1ldIixhcmd1bWVudHM6e1k6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfX19LHtvcGNvZGU6IndpbmRvd1giLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6IndpbmRvdyB4In0se29wY29kZToid2luZG93WSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoid2luZG93IHkifSwiLS0tIix7b3Bjb2RlOiJyZXNpemVXaW5kb3ciLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoic2V0IHdpbmRvdyBzaXplIHRvIHdpZHRoOiBbV0lEVEhdIGhlaWdodDogW0hFSUdIVF0iLGFyZ3VtZW50czp7V0lEVEg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjY0MH0sSEVJR0hUOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTozNjB9fX0se29wY29kZToid2luZG93V2lkdGgiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6IndpbmRvdyB3aWR0aCJ9LHtvcGNvZGU6IndpbmRvd0hlaWdodCIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoid2luZG93IGhlaWdodCJ9LCItLS0iLHtvcGNvZGU6ImVuYWJsZUZ1bGxzY3JlZW4iLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiZW5hYmxlIGZ1bGxzY3JlZW4ifSx7b3Bjb2RlOiJleGl0RnVsbHNjcmVlbiIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJleGl0IGZ1bGxzY3JlZW4ifSx7b3Bjb2RlOiJpc0Z1bGxzY3JlZW4iLGJsb2NrVHlwZTpuLkJPT0xFQU4sdGV4dDoiaW4gZnVsbHNjcmVlbj8ifSx7b3Bjb2RlOiJzY3JlZW5XaWR0aCIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoic2NyZWVuIHdpZHRoIn0se29wY29kZToic2NyZWVuSGVpZ2h0IixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJzY3JlZW4gaGVpZ2h0In0sIi0tLSIse29wY29kZToic2V0V2luZG93TmFtZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgd2luZG93IG5hbWUgdG8gW05BTUVdIixhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJNeSBDb29sIEdhbWUifX19LHtvcGNvZGU6ImdldFdpbmRvd05hbWUiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6IndpbmRvdyBuYW1lIn0se29wY29kZToiaXNGb2N1c2VkIixibG9ja1R5cGU6bi5CT09MRUFOLHRleHQ6ImlzIHVzZXIgdXNpbmcgdGhpcyB3aW5kb3c/In0se29wY29kZToiY2xvc2VXaW5kb3ciLGJsb2NrVHlwZTpuLkNPTU1BTkQsaXNUZXJtaW5hbDohMCx0ZXh0OiJjbG9zZSB3aW5kb3cifV19fWlzUGFja2FnZWQoKXtyZXR1cm4gdGhpcy5ydW50aW1lLmlzUGFja2FnZWR9bW92ZVdpbmRvdyhBKXtjb25zdCBlPXIudG9OdW1iZXIoQS5YKSx0PXIudG9OdW1iZXIoQS5ZKTt3aW5kb3cubW92ZVRvKGUsdCl9c2V0WChBKXtjb25zdCBlPXIudG9OdW1iZXIoQS5YKSx0PXdpbmRvdy5zY3JlZW5ZO3dpbmRvdy5tb3ZlVG8oZSx0KX1jaGFuZ2VYKEEpe2NvbnN0IGU9ci50b051bWJlcihBLlgpO3dpbmRvdy5tb3ZlQnkoZSwwKX1zZXRZKEEpe2NvbnN0IGU9d2luZG93LnNjcmVlblgsdD1yLnRvTnVtYmVyKEEuWSk7d2luZG93Lm1vdmVUbyhlLHQpfWNoYW5nZVkoQSl7Y29uc3QgZT1yLnRvTnVtYmVyKEEuWSk7d2luZG93Lm1vdmVCeSgwLGUpfXdpbmRvd1goKXtyZXR1cm4gd2luZG93LnNjcmVlbkxlZnR9d2luZG93WSgpe3JldHVybiB3aW5kb3cuc2NyZWVuVG9wfXJlc2l6ZVdpbmRvdyhBKXtjb25zdCBlPXIudG9OdW1iZXIoQS5XSURUSCksdD1yLnRvTnVtYmVyKEEuSEVJR0hUKTt3aW5kb3cucmVzaXplVG8oZSx0KX13aW5kb3dXaWR0aCgpe3JldHVybiB3aW5kb3cub3V0ZXJXaWR0aH13aW5kb3dIZWlnaHQoKXtyZXR1cm4gd2luZG93Lm91dGVySGVpZ2h0fXNjcmVlbldpZHRoKCl7cmV0dXJuIHNjcmVlbi53aWR0aH1zY3JlZW5IZWlnaHQoKXtyZXR1cm4gc2NyZWVuLmhlaWdodH1lbmFibGVGdWxsc2NyZWVuKCl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnJlcXVlc3RGdWxsc2NyZWVuKCl9ZXhpdEZ1bGxzY3JlZW4oKXtkb2N1bWVudC5leGl0RnVsbHNjcmVlbigpfWlzRnVsbHNjcmVlbigpe3JldHVybiEhZG9jdW1lbnQuZnVsbHNjcmVlbkVsZW1lbnR9c2V0V2luZG93TmFtZShBKXtjb25zdCBlPXIudG9TdHJpbmcoQS5OQU1FKTtkb2N1bWVudC50aXRsZT1lfWdldFdpbmRvd05hbWUoKXtyZXR1cm4gZG9jdW1lbnQudGl0bGV9aXNGb2N1c2VkKCl7cmV0dXJuIGRvY3VtZW50Lmhhc0ZvY3VzKCl9Y2xvc2VXaW5kb3coKXt3aW5kb3cuY2xvc2UoKX19fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjJaWEp6YVc5dVBTSXhMakVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGRwWkhSb1BTSTJNQ0lnYUdWcFoyaDBQU0kyTUNJZ2RtbGxkMEp2ZUQwaU1Dd3dMRFl3TERZd0lqNEtJQ0FnSUR4bklIUnlZVzV6Wm05eWJUMGlkSEpoYm5Oc1lYUmxLQzB5TVRBc0xURTFNQ2tpUGdvZ0lDQWdJQ0FnSUR4bklHUmhkR0V0Y0dGd1pYSXRaR0YwWVQwaWV5WnhkVzkwTzJselVHRnBiblJwYm1kTVlYbGxjaVp4ZFc5ME96cDBjblZsZlNJZ1ptbHNiQzF5ZFd4bFBTSnViMjU2WlhKdklpQnpkSEp2YTJVdGJHbHVaV05oY0QwaVluVjBkQ0lLSUNBZ0lDQWdJQ0FnSUNBZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKdGFYUmxjaUlnYzNSeWIydGxMVzFwZEdWeWJHbHRhWFE5SWpFd0lpQnpkSEp2YTJVdFpHRnphR0Z5Y21GNVBTSWlJSE4wY205clpTMWtZWE5vYjJabWMyVjBQU0l3SWdvZ0lDQWdJQ0FnSUNBZ0lDQnpkSGxzWlQwaWJXbDRMV0pzWlc1a0xXMXZaR1U2SUc1dmNtMWhiQ0krQ2lBZ0lDQWdJQ0FnSUNBZ0lEeHdZWFJvQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JrUFNKTk1qRTFMakUxTnpjNExERTJOaTR5TnpNMk1td3lOQzQ0TkRJeU15d3RNVE11TnpJMk16aHNNalF1T0RReU1qSXNNVE11TnpJMk16aDJNamN1TkRVeU56WnNMVEkwTGpnME1qSXlMREV6TGpjeU5qTTRiQzB5TkM0NE5ESXlNeXd0TVRNdU56STJNemg2SWdvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWm1sc2JEMGlJelkyWWpobVppSWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQnpkSEp2YTJVdGQybGtkR2c5SWpJaUlDOCtDaUFnSUNBZ0lDQWdJQ0FnSUR4d1lYUm9JR1E5SWsweU1qTXVOREEwTWprc01UWTVMamsxTVRJeGJESTBMak16TVRnMkxDMHhNaTQwTlRJNU4ydzNMakE1T0RRNUxEUXVNREU1TWpOc0xUSXpMalkyTVRneUxERXlMalU0TmprM2VpSWdabWxzYkQwaUkyWm1abVptWmlJS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhOMGNtOXJaVDBpYm05dVpTSWdjM1J5YjJ0bExYZHBaSFJvUFNJd0lpQXZQZ29nSUNBZ0lDQWdJQ0FnSUNBOGNHRjBhQ0JrUFNKTk1qSXpMakkwTVRNMUxERTNPQzQxTmpVMk5td3RNQzR3TURBMU9Td3RPQzQxTnpZMU5XZzNMamt3TmpWc01DNHdNREE0Tnl3eE1pNDFPVFk0ZWlJZ1ptbHNiRDBpSTJabVptWm1aaUlnYzNSeWIydGxQU0p1YjI1bElnb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2MzUnliMnRsTFhkcFpIUm9QU0l3SWlBdlBnb2dJQ0FnSUNBZ0lDQWdJQ0E4Y0dGMGFBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pEMGlUVEl4TlM0eE5UYzNPQ3d4TmpZdU1qY3pOakpzTWpRdU9EUXlNak1zTFRFekxqY3lOak00YkRJMExqZzBNakl5TERFekxqY3lOak00ZGpJM0xqUTFNamMyYkMweU5DNDROREl5TWl3eE15NDNNall6T0d3dE1qUXVPRFF5TWpNc0xURXpMamN5TmpNNGVpSUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHWnBiR3c5SW01dmJtVWlJSE4wY205clpUMGlJekF3TURBd01DSWdjM1J5YjJ0bExYZHBaSFJvUFNJeUlpQXZQZ29nSUNBZ0lDQWdJRHd2Wno0S0lDQWdJRHd2Wno0S1BDOXpkbWMrUENFdExYSnZkR0YwYVc5dVEyVnVkR1Z5T2pJMUxqZzBNakl5TlRBd01EQXdNREF4TXpveU9DNDFPVFV5TlRnMU56SXdORFF5TFMwKyJ9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy50cmFja2Vycz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMubWF4U2F2aW5nPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5wb3NpdGlvbnM9T2JqZWN0LmNyZWF0ZShudWxsKTtjb25zdCBlPShBLGUpPT57Y29uc3QgdD1BWzBdO3JldHVybiJvYmplY3QiIT10eXBlb2YgdHx8KHQueCE9PWUueHx8dC55IT09ZS55KX07dGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1NURVBfU1RBUlQiLCgpPT57Zm9yKGNvbnN0IEEgaW4gdGhpcy50cmFja2Vycyl7Y29uc3QgdD10aGlzLnRyYWNrZXJzW0FdO2lmKHQuaXNEaXNwb3NlZCl7dGhpcy5zdG9wVHJhY2tpbmdTcHJpdGUoe05BTUU6QX0pO2NvbnRpbnVlfWNvbnN0IG49dGhpcy5wb3NpdGlvbnNbQV0saT10aGlzLm1heFNhdmluZ1tBXTtpPD0wfHwoZShuLHQpJiZuLnVuc2hpZnQoe3g6dC54LHk6dC55fSksdGhpcy5wb3NpdGlvbnNbQV09bi5zbGljZSgwLGkpKX19KX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ1RhaWxnYXRpbmciLG5hbWU6IlRhaWxnYXRpbmciLGJsb2Nrczpbe29wY29kZToic3RhcnRUcmFja2luZ1Nwcml0ZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzdGFydCB0cmFja2luZyBbU1BSSVRFXSBhcyBbTkFNRV0iLGFyZ3VtZW50czp7U1BSSVRFOnt0eXBlOmkuU1RSSU5HLG1lbnU6InNwcml0ZU1lbnUifSxOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToibGVhZGVyIn19fSx7b3Bjb2RlOiJzdG9wVHJhY2tpbmdTcHJpdGUiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoic3RvcCB0cmFja2luZyBbTkFNRV0iLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImxlYWRlciJ9fX0sIi0tLSIse29wY29kZToiZm9sbG93U3ByaXRlIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImZvbGxvdyBbSU5ERVhdIHBvc2l0aW9ucyBiZWhpbmQgW05BTUVdIixhcmd1bWVudHM6e0lOREVYOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToyMH0sTkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImxlYWRlciJ9fX0se29wY29kZToic2F2ZVBvc2l0aW9uc0JlaGluZFNwcml0ZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgbWF4IHNhdmVkIHBvc2l0aW9ucyBiZWhpbmQgW05BTUVdIHRvIFtNQVhdIixhcmd1bWVudHM6e01BWDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MjB9LE5BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJsZWFkZXIifX19LHtvcGNvZGU6ImdldFNwcml0ZUZvbGxvd1BvcyIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsdGV4dDoiZ2V0IHBvc2l0aW9uIFtJTkRFWF0gYmVoaW5kIFtOQU1FXSIsYXJndW1lbnRzOntJTkRFWDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MjB9LE5BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJsZWFkZXIifX19XSxtZW51czp7c3ByaXRlTWVudToiX2dldFNwcml0ZU1lbnUifX19X2dldFNwcml0ZU1lbnUoKXtjb25zdCBBPVtdO3RoaXMucnVudGltZS52bS5lZGl0aW5nVGFyZ2V0JiYhdGhpcy5ydW50aW1lLnZtLmVkaXRpbmdUYXJnZXQuaXNTdGFnZSYmQS5wdXNoKHt0ZXh0OiJ0aGlzIHNwcml0ZSIsdmFsdWU6Il9teXNlbGZfIn0pO2Zvcihjb25zdCBlIG9mIHRoaXMucnVudGltZS50YXJnZXRzKXtpZighZS5pc09yaWdpbmFsKWNvbnRpbnVlO2lmKGUuaXNTdGFnZSljb250aW51ZTtpZih0aGlzLnJ1bnRpbWUudm0uZWRpdGluZ1RhcmdldCYmdGhpcy5ydW50aW1lLnZtLmVkaXRpbmdUYXJnZXQuaWQ9PT1lLmlkKWNvbnRpbnVlO2NvbnN0IHQ9ZS5nZXROYW1lKCk7QS5wdXNoKHt0ZXh0OnQsdmFsdWU6dH0pfXJldHVybiBBLmxlbmd0aD4wP0E6W3t0ZXh0OiIiLHZhbHVlOiIifV19c3RhcnRUcmFja2luZ1Nwcml0ZShBLGUpe2NvbnN0IHQ9ci50b1N0cmluZyhBLlNQUklURSksbj1yLnRvU3RyaW5nKEEuTkFNRSksaT0iX215c2VsZl8iPT09dD9lLnRhcmdldDp0aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKHQpO2kmJih0aGlzLnRyYWNrZXJzW25dPWksdGhpcy5wb3NpdGlvbnNbbl09W10sbiBpbiB0aGlzLm1heFNhdmluZ3x8KHRoaXMubWF4U2F2aW5nW25dPTIwKSl9c3RvcFRyYWNraW5nU3ByaXRlKEEpe2NvbnN0IGU9ci50b1N0cmluZyhBLk5BTUUpO2RlbGV0ZSB0aGlzLnRyYWNrZXJzW2VdLHRoaXMucG9zaXRpb25zW2VdPVtdfWZvbGxvd1Nwcml0ZShBLGUpe2NvbnN0IHQ9ci50b1N0cmluZyhBLk5BTUUpLG49ci50b051bWJlcihBLklOREVYKSxpPXRoaXMucG9zaXRpb25zW3RdO2lmKCFpKXJldHVybjtsZXQgbz1pW25dO2lmKCJvYmplY3QiIT10eXBlb2Ygbyl7aWYoaS5sZW5ndGg8PTApcmV0dXJuO289aVtpLmxlbmd0aC0xXX1lLnRhcmdldC5zZXRYWShvLngsby55KX1nZXRTcHJpdGVGb2xsb3dQb3MoQSl7Y29uc3QgZT1yLnRvU3RyaW5nKEEuTkFNRSksdD1yLnRvTnVtYmVyKEEuSU5ERVgpLG49dGhpcy5wb3NpdGlvbnNbZV07aWYoIW4pcmV0dXJuInt9IjtsZXQgaT1uW3RdO2lmKCJvYmplY3QiIT10eXBlb2YgaSl7aWYobi5sZW5ndGg8PTApcmV0dXJuInt9IjtpPW5bbi5sZW5ndGgtMV19cmV0dXJuIEpTT04uc3RyaW5naWZ5KHt4OmkueCx5OmkueX0pfXNhdmVQb3NpdGlvbnNCZWhpbmRTcHJpdGUoQSxlKXtjb25zdCB0PXIudG9TdHJpbmcoQS5OQU1FKSxuPXIudG9OdW1iZXIoQS5NQVgpO2xldCBpPU1hdGgucm91bmQobik7aTw9MCYmKGk9MCksaT4wJiZpKyssdGhpcy5tYXhTYXZpbmdbdF09aX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9dCgzKSxyPXQoMik7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuc2NyaXB0cz17fSx0aGlzLnJ1bnRpbWUub24oIlBST0pFQ1RfU1RBUlQiLCgpPT57dGhpcy5zY3JpcHRzPXt9fSksdGhpcy5ydW50aW1lLm9uKCJQUk9KRUNUX1NUT1BfQUxMIiwoKT0+e3RoaXMuc2NyaXB0cz17fX0pfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnU2NyaXB0cyIsbmFtZToiU2NyaXB0cyIsY29sb3IxOiIjOGM4YzhjIixjb2xvcjI6IiM3YTdhN2EiLGJsb2Nrczpbe29wY29kZToiY3JlYXRlU2NyaXB0IixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImNyZWF0ZSBzY3JpcHQgbmFtZWQgW05BTUVdIixhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJTY3JpcHQxIn19fSx7b3Bjb2RlOiJkZWxldGVTY3JpcHQiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiZGVsZXRlIHNjcmlwdCBuYW1lZCBbTkFNRV0iLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IlNjcmlwdDEifX19LHtvcGNvZGU6ImRlbGV0ZUFsbCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJkZWxldGUgYWxsIHNjcmlwdHMifSx7b3Bjb2RlOiJhbGxTY3JpcHRzIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJhbGwgc2NyaXB0cyJ9LHtvcGNvZGU6InNjcmlwdEV4aXN0cyIsYmxvY2tUeXBlOm4uQk9PTEVBTix0ZXh0OiJzY3JpcHQgbmFtZWQgW05BTUVdIGV4aXN0cz8iLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IlNjcmlwdDEifX19LCItLS0iLHtvcGNvZGU6ImFkZEJsb2Nrc1RvIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6WyJhZGQgYmxvY2tzIiwidG8gc2NyaXB0IFtOQU1FXSJdLGJyYW5jaENvdW50OjEsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiU2NyaXB0MSJ9fX0se29wY29kZToiSkdyZXR1cm4iLHRleHQ6InJldHVybiBbVEhJTkddIixibG9ja1R5cGU6bi5DT01NQU5ELGlzVGVybWluYWw6ITAsYXJndW1lbnRzOntUSElORzp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IjEifX19LCItLS0iLHtvcGNvZGU6InNjcmlwdERhdGEiLHRleHQ6InNjcmlwdCBkYXRhIixibG9ja1R5cGU6bi5SRVBPUlRFUixhbGxvd0Ryb3BBbnl3aGVyZTohMCxkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIse29wY29kZToicnVuQmxvY2tzIix0ZXh0OiJydW4gc2NyaXB0IFtOQU1FXSBpbiBbU1BSSVRFXSIsYmxvY2tUeXBlOm4uQ09ORElUSU9OQUwsYnJhbmNoQ291bnQ6LTEsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiU2NyaXB0MSJ9LFNQUklURTp7dHlwZTppLlNUUklORyxtZW51OiJUQVJHRVRTIn19fSx7b3Bjb2RlOiJydW5CbG9ja3NEYXRhIix0ZXh0OiJydW4gc2NyaXB0IFtOQU1FXSBpbiBbU1BSSVRFXSB3aXRoIGRhdGEgW0RBVEFdIixibG9ja1R5cGU6bi5DT05ESVRJT05BTCxicmFuY2hDb3VudDotMSxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJTY3JpcHQxIn0sU1BSSVRFOnt0eXBlOmkuU1RSSU5HLG1lbnU6IlRBUkdFVFMifSxEQVRBOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZGF0YSJ9fX0sIi0tLSIse29wY29kZToicmVwb3J0QmxvY2tzIix0ZXh0OiJydW4gc2NyaXB0IFtOQU1FXSBpbiBbU1BSSVRFXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYWxsb3dEcm9wQW55d2hlcmU6ITAsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiU2NyaXB0MSJ9LFNQUklURTp7dHlwZTppLlNUUklORyxtZW51OiJUQVJHRVRTIn19fSx7b3Bjb2RlOiJyZXBvcnRCbG9ja3NEYXRhIix0ZXh0OiJydW4gc2NyaXB0IFtOQU1FXSBpbiBbU1BSSVRFXSB3aXRoIGRhdGEgW0RBVEFdIixibG9ja1R5cGU6bi5SRVBPUlRFUixhbGxvd0Ryb3BBbnl3aGVyZTohMCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJTY3JpcHQxIn0sU1BSSVRFOnt0eXBlOmkuU1RSSU5HLG1lbnU6IlRBUkdFVFMifSxEQVRBOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZGF0YSJ9fX1dLG1lbnVzOntUQVJHRVRTOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6ImdldFRhcmdldHMifX19fWdldFRhcmdldHMoKXtjb25zdCBBPVt7dGV4dDoibXlzZWxmIix2YWx1ZToiX215c2VsZl8ifSx7dGV4dDoiU3RhZ2UiLHZhbHVlOiJfc3RhZ2VfIn1dLGU9dGhpcy5ydW50aW1lLnRhcmdldHM7Zm9yKGxldCB0PTE7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IG49ZVt0XTtuLmlzT3JpZ2luYWwmJkEucHVzaCh7dGV4dDpuLmdldE5hbWUoKSx2YWx1ZTpuLmdldE5hbWUoKX0pfXJldHVybiBBLmxlbmd0aD4wP0E6WyIiXX1jcmVhdGVTY3JpcHQoQSl7dGhpcy5zY3JpcHRzW3IudG9TdHJpbmcoQS5OQU1FKV09e2Jsb2NrczpbXX19ZGVsZXRlU2NyaXB0KEEpe2RlbGV0ZSB0aGlzLnNjcmlwdHNbci50b1N0cmluZyhBLk5BTUUpXX1kZWxldGVBbGwoKXt0aGlzLnNjcmlwdHM9e319YWxsU2NyaXB0cygpe3JldHVybiBKU09OLnN0cmluZ2lmeShPYmplY3Qua2V5cyh0aGlzLnNjcmlwdHMpKX1zY3JpcHRFeGlzdHMoQSl7cmV0dXJuIHIudG9Cb29sZWFuKHRoaXMuc2NyaXB0c1tBLk5BTUVdKX1hZGRCbG9ja3NUbyhBLGUpe2NvbnN0IHQ9ci50b1N0cmluZyhBLk5BTUUpLG49ZS50aHJlYWQudGFyZ2V0LmJsb2Nrcy5nZXRCcmFuY2goZS50aHJlYWQucGVla1N0YWNrKCksMSk7biYmdm9pZCAwIT09dGhpcy5zY3JpcHRzW3RdJiZ0aGlzLnNjcmlwdHNbdF0uYmxvY2tzLnB1c2goe3N0YWNrOm4sdGFyZ2V0OmUudGFyZ2V0fSl9SkdyZXR1cm4oQSxlKXtlLnRocmVhZC5yZXBvcnQ9ci50b1N0cmluZyhBLlRISU5HKX1zY3JpcHREYXRhKEEsZSl7Y29uc3QgdD1lLnRocmVhZC5zY3JpcHREYXRhO3JldHVybiB0fHwiIn1ydW5CbG9ja3NEYXRhKEEsZSl7dGhpcy5ydW5CbG9ja3MoQSxlKX1ydW5CbG9ja3MoQSxlKXtjb25zdCB0PSJfbXlzZWxmXyI9PT1BLlNQUklURT9lLnRhcmdldDoiX3N0YWdlXyI9PT1BLlNQUklURT90aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTp0aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKEEuU1BSSVRFKSxuPXIudG9TdHJpbmcoQS5OQU1FKSxpPUEuREFUQT9yLnRvU3RyaW5nKEEuREFUQSk6IiI7aWYodm9pZCAwPT09dGhpcy5zY3JpcHRzW25dfHwhdClyZXR1cm47dm9pZCAwPT09ZS5zdGFja0ZyYW1lLkpHaW5kZXgmJihlLnN0YWNrRnJhbWUuSkdpbmRleD0wKSx2b2lkIDA9PT1lLnN0YWNrRnJhbWUuSkd0aHJlYWQmJihlLnN0YWNrRnJhbWUuSkd0aHJlYWQ9IiIpO2NvbnN0IG89dGhpcy5zY3JpcHRzW25dLmJsb2NrcyxzPWUuc3RhY2tGcmFtZS5KR2luZGV4O2lmKCFlLnN0YWNrRnJhbWUuSkd0aHJlYWQmJnM8by5sZW5ndGgpe2NvbnN0IEE9b1tzXTt2b2lkIDAhPT1BLnRhcmdldC5ibG9ja3MuZ2V0QmxvY2soQS5zdGFjaykmJihlLnN0YWNrRnJhbWUuSkd0aHJlYWQ9dGhpcy5ydW50aW1lLl9wdXNoVGhyZWFkKEEuc3RhY2ssQS50YXJnZXQse3N0YWNrQ2xpY2s6ITF9KSxlLnN0YWNrRnJhbWUuSkd0aHJlYWQuc2NyaXB0RGF0YT1pLGUuc3RhY2tGcmFtZS5KR3RocmVhZC50YXJnZXQ9dCxlLnN0YWNrRnJhbWUuSkd0aHJlYWQudHJ5Q29tcGlsZSgpKSxlLnN0YWNrRnJhbWUuSkdpbmRleD1lLnN0YWNrRnJhbWUuSkdpbmRleCsxfWUuc3RhY2tGcmFtZS5KR3RocmVhZCYmdGhpcy5ydW50aW1lLmlzQWN0aXZlVGhyZWFkKGUuc3RhY2tGcmFtZS5KR3RocmVhZCk/ZS5zdGFydEJyYW5jaCgxLCEwKTplLnN0YWNrRnJhbWUuSkd0aHJlYWQ9IiIsZS5zdGFja0ZyYW1lLkpHaW5kZXg8by5sZW5ndGgmJmUuc3RhcnRCcmFuY2goMSwhMCl9cmVwb3J0QmxvY2tzRGF0YShBLGUpe3JldHVybiB0aGlzLnJlcG9ydEJsb2NrcyhBLGUpfHwiIn1yZXBvcnRCbG9ja3MoQSxlKXtjb25zdCB0PSJfbXlzZWxmXyI9PT1BLlNQUklURT9lLnRhcmdldDoiX3N0YWdlXyI9PT1BLlNQUklURT90aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTp0aGlzLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKEEuU1BSSVRFKSxuPXIudG9TdHJpbmcoQS5OQU1FKSxpPUEuREFUQT9yLnRvU3RyaW5nKEEuREFUQSk6IiI7aWYodm9pZCAwPT09dGhpcy5zY3JpcHRzW25dfHwhdClyZXR1cm47dm9pZCAwPT09ZS5zdGFja0ZyYW1lLkpHaW5kZXgmJihlLnN0YWNrRnJhbWUuSkdpbmRleD0wKSx2b2lkIDA9PT1lLnN0YWNrRnJhbWUuSkd0aHJlYWQmJihlLnN0YWNrRnJhbWUuSkd0aHJlYWQ9IiIpO2NvbnN0IG89dGhpcy5zY3JpcHRzW25dLmJsb2NrcyxzPWUuc3RhY2tGcmFtZS5KR2luZGV4O2lmKCFlLnN0YWNrRnJhbWUuSkd0aHJlYWQmJnM8by5sZW5ndGgpe2NvbnN0IEE9b1tzXTt2b2lkIDAhPT1BLnRhcmdldC5ibG9ja3MuZ2V0QmxvY2soQS5zdGFjaykmJihlLnN0YWNrRnJhbWUuSkd0aHJlYWQ9dGhpcy5ydW50aW1lLl9wdXNoVGhyZWFkKEEuc3RhY2ssQS50YXJnZXQse3N0YWNrQ2xpY2s6ITF9KSxlLnN0YWNrRnJhbWUuSkd0aHJlYWQuc2NyaXB0RGF0YT1pLGUuc3RhY2tGcmFtZS5KR3RocmVhZC50YXJnZXQ9dCxlLnN0YWNrRnJhbWUuSkd0aHJlYWQudHJ5Q29tcGlsZSgpKSxlLnN0YWNrRnJhbWUuSkdpbmRleD1lLnN0YWNrRnJhbWUuSkdpbmRleCsxfXJldHVybiBlLnN0YWNrRnJhbWUuSkd0aHJlYWQmJnRoaXMucnVudGltZS5pc0FjdGl2ZVRocmVhZChlLnN0YWNrRnJhbWUuSkd0aHJlYWQpP2UueWllbGQoKToodm9pZCAwIT09ZS5zdGFja0ZyYW1lLkpHdGhyZWFkLnJlcG9ydCYmKGUuc3RhY2tGcmFtZS5KR3JlcG9ydD1lLnN0YWNrRnJhbWUuSkd0aHJlYWQucmVwb3J0LGUuc3RhY2tGcmFtZS5KR2luZGV4PW8ubGVuZ3RoKzEpLGUuc3RhY2tGcmFtZS5KR3RocmVhZD0iIiksZS5zdGFja0ZyYW1lLkpHaW5kZXg8by5sZW5ndGgmJmUueWllbGQoKSxlLnN0YWNrRnJhbWUuSkdyZXBvcnR8fCIifX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMiksaT10KDcpLHI9dCgyOTUpLG89dCgwKSxzPXQoNTIpLHtDb252ZXhHZW9tZXRyeTphfT10KDUwNSkse09CSkxvYWRlcjpCfT10KDMwNSkse0dMVEZMb2FkZXI6Y309dCgzMDYpLHtGQlhMb2FkZXI6Z309dCg1MDQpLEU9dCg4KSxRPXtPQko6bmV3IEIsR0xURjpuZXcgYyxGQlg6bmV3IGd9O2Z1bmN0aW9uIHUoQSl7cmV0dXJuIEEqKE1hdGguUEkvMTgwKX1mdW5jdGlvbiBsKEEpe2NvbnN0IGU9TWF0aC5zcXJ0KEEueCpBLngrQS55KkEueStBLnoqQS56KTtyZXR1cm4gbmV3IG8uVmVjdG9yMyhBLngvZSxBLnkvZSxBLnovZSl9ZnVuY3Rpb24gaChBKXtjb25zdCBlPWZ1bmN0aW9uKEEpe3JldHVybiBBKigxODAvTWF0aC5QSSl9KEEpO2lmKCFTdHJpbmcoZSkuaW5jbHVkZXMoIi4iKSlyZXR1cm4gZTtjb25zdCB0PVN0cmluZyhlKS5zcGxpdCgiLiIpLG49dFsxXS5zdWJzdHJpbmcoMCwzKTtyZXR1cm4iOTk5Ij09PW4mJiI5Ij09PXRbMV0uY2hhckF0KDMpP051bWJlcih0WzBdKSsxOk51bWJlcih0WzBdKyIuIituKX1BLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy50aHJlZT1vLHRoaXMuQnVmZmVyR2VvbWV0cnlVdGlscz1zLHRoaXMuQ29udmV4R2VvbWV0cnk9YSx0aGlzLk9CSkxvYWRlcj1CLHRoaXMuR0xURkxvYWRlcj1jLHRoaXMuRkJYTG9hZGVyPWcsdGhpcy5ydW50aW1lLnByaXNtX3NjcmVlbnNob3RfY2hlY2tGb3JFeHRlcm5hbENhbnZhcz0hMCx0aGlzLnJ1bnRpbWUucHJpc21fc2NyZWVuc2hvdF9leHRlcm5hbENhbnZhcz1udWxsLHRoaXMuc2NlbmU9bnVsbCx0aGlzLmNhbWVyYT1udWxsLHRoaXMucmVuZGVyZXI9bnVsbCx0aGlzLmV4aXN0aW5nU2NlbmVPYmplY3RzPVtdLHRoaXMuZXhpc3RpbmdTY2VuZUxpZ2h0cz1bXSx0aGlzLmxhc3RTdGFnZVNpemVXaGVuUmVuZGVyaW5nPXt3aWR0aDowLGhlaWdodDowfSx0aGlzLnNhdmVkTWVzaGVzPXt9LHRoaXMuc2NlbmVMYXllcj0iZnJvbnQiLHRoaXMubGFzdFN0YWdlQ29sb3I9WzI1NSwyNTUsMjU1LDBdLHRoaXMucnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsKCk9Pnt0aGlzLmRpc3Bvc2UoKSx0aGlzLnNjZW5lTGF5ZXI9ImZyb250Iix0aGlzLnVwZGF0ZVNjcmF0Y2hDYW52YXNSZWxheWVyaW5nKCl9KX1kaXNwb3NlKCl7dGhpcy5leGlzdGluZ1NjZW5lT2JqZWN0cz1bXSx0aGlzLmV4aXN0aW5nU2NlbmVMaWdodHM9W10sdGhpcy5zY2VuZSYmKHRoaXMuc2NlbmUucmVtb3ZlKCksdGhpcy5zY2VuZT1udWxsKSx0aGlzLmNhbWVyYSYmKHRoaXMuY2FtZXJhLnJlbW92ZSgpLHRoaXMuY2FtZXJhPW51bGwpLHRoaXMucmVuZGVyZXImJih0aGlzLnJlbmRlcmVyLmRvbUVsZW1lbnQmJnRoaXMucmVuZGVyZXIuZG9tRWxlbWVudC5yZW1vdmUoKSx0aGlzLnJlbmRlcmVyLmRpc3Bvc2UoKSx0aGlzLnJlbmRlcmVyPW51bGwsdGhpcy5ydW50aW1lLnByaXNtX3NjcmVlbnNob3RfZXh0ZXJuYWxDYW52YXM9bnVsbCl9c3RhY2tXYXJuaW5nKEEsZSl7aWYoIUEpcmV0dXJuO2lmKCFBLnRocmVhZClyZXR1cm47aWYoIUEudGhyZWFkLnN0YWNrQ2xpY2spcmV0dXJuO2NvbnN0IHQ9QS50aHJlYWQuYmxvY2tHbG93SW5GcmFtZTt0aGlzLnJ1bnRpbWUudmlzdWFsUmVwb3J0KHQsZSl9Z2V0SW5mbygpe3JldHVybiByfWdldFNjcmF0Y2hDYW52YXMoKXtyZXR1cm4gdGhpcy5ydW50aW1lLnJlbmRlcmVyLmNhbnZhc31yZXN0eWxlRXh0ZXJuYWxDYW52YXMoQSl7QS5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLEEuc3R5bGUud2lkdGg9IjEwMCUiLEEuc3R5bGUuaGVpZ2h0PSIxMDAlIixBLnN0eWxlLnBvaW50ZXJFdmVudHM9Im5vbmUifWFwcGVuZEVsZW1lbnRBYm92ZVNjcmF0Y2hDYW52YXMoQSl7QS5zdHlsZS56SW5kZXg9NDUwLCJiYWNrIj09PXRoaXMuc2NlbmVMYXllciYmKEEuc3R5bGUuekluZGV4PTApLHRoaXMuZ2V0U2NyYXRjaENhbnZhcygpLnBhcmVudEVsZW1lbnQucHJlcGVuZChBKX11cGRhdGVTY3JhdGNoQ2FudmFzUmVsYXllcmluZygpe2NvbnN0IEE9dGhpcy5nZXRTY3JhdGNoQ2FudmFzKCk7QS5zdHlsZS5iYWNrZ3JvdW5kQ29sb3I9InRyYW5zcGFyZW50IixBLnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIsbi50b051bWJlcihBLnN0eWxlLnpJbmRleCk8MSYmKEEuc3R5bGUuekluZGV4PTEpO2xldCBlPXRoaXMucnVudGltZS5yZW5kZXJlci5fYmFja2dyb3VuZENvbG9yNGZbM107ImZyb250Ij09PXRoaXMuc2NlbmVMYXllciYmdGhpcy5ydW50aW1lLnJlbmRlcmVyLnNldEJhY2tncm91bmRDb2xvcih0aGlzLmxhc3RTdGFnZUNvbG9yWzBdLHRoaXMubGFzdFN0YWdlQ29sb3JbMV0sdGhpcy5sYXN0U3RhZ2VDb2xvclsyXSwxKSwiYmFjayI9PT10aGlzLnNjZW5lTGF5ZXImJih0aGlzLnJ1bnRpbWUucmVuZGVyZXIuX2JhY2tncm91bmRDb2xvcjRmWzBdPT09dGhpcy5sYXN0U3RhZ2VDb2xvclswXSYmdGhpcy5ydW50aW1lLnJlbmRlcmVyLl9iYWNrZ3JvdW5kQ29sb3I0ZlsxXT09PXRoaXMubGFzdFN0YWdlQ29sb3JbMV0mJnRoaXMucnVudGltZS5yZW5kZXJlci5fYmFja2dyb3VuZENvbG9yNGZbMl09PT10aGlzLmxhc3RTdGFnZUNvbG9yWzJdfHwoY29uc29sZS5sb2coInVwZGF0ZWQgc3RhZ2UgY29sb3IiKSx0aGlzLmxhc3RTdGFnZUNvbG9yPXRoaXMucnVudGltZS5yZW5kZXJlci5fYmFja2dyb3VuZENvbG9yNGYpLHRoaXMucnVudGltZS5yZW5kZXJlci5zZXRCYWNrZ3JvdW5kQ29sb3IoMCwwLDAsMCkpLGUhPT10aGlzLnJ1bnRpbWUucmVuZGVyZXIuX2JhY2tncm91bmRDb2xvcjRmWzNdJiYodGhpcy5ydW50aW1lLnJlbmRlcmVyLmRpcnR5PSEwKX1uZWVkc1RvUmVzaXplQ2FudmFzKCl7cmV0dXJue3dpZHRoOnRoaXMucnVudGltZS5zdGFnZVdpZHRoLGhlaWdodDp0aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHR9IT09dGhpcy5sYXN0U3RhZ2VTaXplV2hlblJlbmRlcmluZ31tZXJnZVZlcnRpY2VzKEEpe2NvbnN0IGU9QS5hdHRyaWJ1dGVzLnBvc2l0aW9uLmFycmF5LHQ9e30sbj1bXSxpPVtdO2xldCByPTA7Zm9yKGxldCBBPTA7QTxlLmxlbmd0aDtBKz0zKXtjb25zdCBvPWVbQV0scz1lW0ErMV0sYT1lW0ErMl0sQj0iIi5jb25jYXQobywiLCIpLmNvbmNhdChzLCIsIikuY29uY2F0KGEpO3ZvaWQgMD09PXRbQl0/KHRbQl09cixuLnB1c2gobyxzLGEpLGkucHVzaChyKSxyKyspOmkucHVzaCh0W0JdKX1yZXR1cm4gQS5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixuZXcgby5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKG4sMykpLEEuc2V0SW5kZXgobmV3IG8uVWludDMyQnVmZmVyQXR0cmlidXRlKGksMSkpLEF9cGVyZm9ybVJheWNhc3QoQSxlKXtjb25zdCB0PWUuZ2VvbWV0cnksbj10aGlzLm1lcmdlVmVydGljZXModCksaT0obmV3IG8uQnVmZmVyR2VvbWV0cnkpLmNvcHkobik7aS5jb21wdXRlQm91bmRpbmdCb3goKSxpLmJvdW5kaW5nQm94LmFwcGx5TWF0cml4NChlLm1hdHJpeFdvcmxkKTtyZXR1cm4gQS5pbnRlcnNlY3RPYmplY3QoZSwhMCkubGVuZ3RoPjB9aW5pdGlhbGl6ZSgpe3RoaXMuZGlzcG9zZSgpLHRoaXMuc2NlbmU9bmV3IG8uU2NlbmUsdGhpcy5yZW5kZXJlcj1uZXcgby5XZWJHTFJlbmRlcmVyKHtwcmVzZXJ2ZURyYXdpbmdCdWZmZXI6ITAsYWxwaGE6ITB9KSx0aGlzLnJlbmRlcmVyLnBlbmd1aW5Nb2Q9e2JhY2tncm91bmRDb2xvcjowLGJhY2tncm91bmRPcGFjaXR5OjF9LHRoaXMucmVuZGVyZXIuc2V0Q2xlYXJDb2xvcigwLDEpO2NvbnN0IEE9dGhpcy5yZW5kZXJlci5kb21FbGVtZW50O3RoaXMucnVudGltZS5wcmlzbV9zY3JlZW5zaG90X2V4dGVybmFsQ2FudmFzPUEsdGhpcy5yZXN0eWxlRXh0ZXJuYWxDYW52YXMoQSksdGhpcy5hcHBlbmRFbGVtZW50QWJvdmVTY3JhdGNoQ2FudmFzKEEpLHRoaXMudXBkYXRlU2NyYXRjaENhbnZhc1JlbGF5ZXJpbmcoKX1yZW5kZXIoKXtpZih0aGlzLnJlbmRlcmVyJiZ0aGlzLnNjZW5lJiZ0aGlzLmNhbWVyYSlyZXR1cm4gdGhpcy5uZWVkc1RvUmVzaXplQ2FudmFzKCkmJih0aGlzLmxhc3RTdGFnZVNpemVXaGVuUmVuZGVyaW5nPXt3aWR0aDp0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aCxoZWlnaHQ6dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0fSx0aGlzLnJlbmRlcmVyLnNldFNpemUoMip0aGlzLmxhc3RTdGFnZVNpemVXaGVuUmVuZGVyaW5nLndpZHRoLDIqdGhpcy5sYXN0U3RhZ2VTaXplV2hlblJlbmRlcmluZy5oZWlnaHQpLHRoaXMucmVzdHlsZUV4dGVybmFsQ2FudmFzKHRoaXMucmVuZGVyZXIuZG9tRWxlbWVudCkpLHRoaXMuYXBwZW5kRWxlbWVudEFib3ZlU2NyYXRjaENhbnZhcyh0aGlzLnJlbmRlcmVyLmRvbUVsZW1lbnQpLHRoaXMudXBkYXRlU2NyYXRjaENhbnZhc1JlbGF5ZXJpbmcoKSxuZXcgUHJvbWlzZShBPT57cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5yZW5kZXJlciYmQSh0aGlzLnJlbmRlcmVyLnJlbmRlcih0aGlzLnNjZW5lLHRoaXMuY2FtZXJhKSl9KX0pfXNldENhbWVyYVBlcnNwZWN0aXZlMihBKXt0aGlzLmNhbWVyYSYmKHRoaXMuY2FtZXJhLnJlbW92ZSgpLHRoaXMuY2FtZXJhPW51bGwpO2NvbnN0IGU9bi50b051bWJlcihBLkZPViksdD1uLnRvTnVtYmVyKEEuQVIpLGk9bi50b051bWJlcihBLk5FQVIpLHI9bi50b051bWJlcihBLkZBUik7dGhpcy5jYW1lcmE9bmV3IG8uUGVyc3BlY3RpdmVDYW1lcmEoZSx0LGkscil9c2V0Q2FtZXJhUGVyc3BlY3RpdmUxKEEpe3JldHVybiB0aGlzLnNldENhbWVyYVBlcnNwZWN0aXZlMih7Rk9WOkEuRk9WLEFSOkEuQVIsTkVBUjouMSxGQVI6MWUzfSl9c2V0Q2FtZXJhUGVyc3BlY3RpdmUwKEEpe2NvbnN0IGU9dGhpcy5ydW50aW1lLnN0YWdlV2lkdGgvdGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0O3JldHVybiB0aGlzLnNldENhbWVyYVBlcnNwZWN0aXZlMih7Rk9WOkEuRk9WLEFSOmUsTkVBUjouMSxGQVI6MWUzfSl9c2V0Q2FtZXJhUG9zaXRpb24oQSl7aWYoIXRoaXMuY2FtZXJhKXJldHVybjtjb25zdCBlPXt4Om4udG9OdW1iZXIoQS5YKSx5Om4udG9OdW1iZXIoQS5ZKSx6Om4udG9OdW1iZXIoQS5aKX07dGhpcy5jYW1lcmEucG9zaXRpb24uc2V0KGUueCxlLnksZS56KX1zZXRDYW1lcmFSb3RhdGlvbihBKXtpZighdGhpcy5jYW1lcmEpcmV0dXJuO2NvbnN0IGU9e3g6bi50b051bWJlcihBLlgpLHk6bi50b051bWJlcihBLlkpLHo6bi50b051bWJlcihBLlopfSx0PW5ldyBvLkV1bGVyKDAsMCwwKTt0aGlzLmNhbWVyYS5zZXRSb3RhdGlvbkZyb21FdWxlcih0KSx0aGlzLmNhbWVyYS5yb3RhdGVZKHUoZS55KSksdGhpcy5jYW1lcmEucm90YXRlWCh1KGUueCkpLHRoaXMuY2FtZXJhLnJvdGF0ZVoodShlLnopKX1nZXRDYW1lcmFQb3NpdGlvbihBKXtpZighdGhpcy5jYW1lcmEpcmV0dXJuIiI7Y29uc3QgZT1BLlZFQ1RPUjM7cmV0dXJuIGUmJlsieCIsInkiLCJ6Il0uaW5jbHVkZXMoZSk/bi50b051bWJlcih0aGlzLmNhbWVyYS5wb3NpdGlvbltlXSk6IiJ9Z2V0Q2FtZXJhUm90YXRpb24oQSl7aWYoIXRoaXMuY2FtZXJhKXJldHVybiIiO2NvbnN0IGU9QS5WRUNUT1IzO2lmKCFlKXJldHVybiIiO2lmKCFbIngiLCJ5IiwieiJdLmluY2x1ZGVzKGUpKXJldHVybiIiO3JldHVybiBoKG4udG9OdW1iZXIodGhpcy5jYW1lcmEucm90YXRpb25bZV0pKX1zZXRTY2VuZUxheWVyKEEpe2lmKCF0aGlzLnJlbmRlcmVyKXJldHVybjtsZXQgZT10aGlzLnNjZW5lTGF5ZXI7dGhpcy5zY2VuZUxheWVyPSJmcm9udCIsImJhY2siPT09bi50b1N0cmluZyhBLlNJREUpJiYodGhpcy5zY2VuZUxheWVyPSJiYWNrIiksdGhpcy5zY2VuZUxheWVyIT09ZSYmKHRoaXMubGFzdFN0YWdlQ29sb3I9dGhpcy5ydW50aW1lLnJlbmRlcmVyLl9iYWNrZ3JvdW5kQ29sb3I0ZiksdGhpcy5hcHBlbmRFbGVtZW50QWJvdmVTY3JhdGNoQ2FudmFzKHRoaXMucmVuZGVyZXIuZG9tRWxlbWVudCksdGhpcy51cGRhdGVTY3JhdGNoQ2FudmFzUmVsYXllcmluZygpfXNldFNjZW5lQmFja2dyb3VuZENvbG9yKEEpe2lmKCF0aGlzLnJlbmRlcmVyKXJldHVybjtjb25zdCBlPW4udG9SZ2JDb2xvck9iamVjdChBLkNPTE9SKSx0PUUucmdiVG9EZWNpbWFsKGUpO3RoaXMucmVuZGVyZXIucGVuZ3Vpbk1vZC5iYWNrZ3JvdW5kQ29sb3I9dCx0aGlzLnJlbmRlcmVyLnNldENsZWFyQ29sb3IodCx0aGlzLnJlbmRlcmVyLnBlbmd1aW5Nb2QuYmFja2dyb3VuZE9wYWNpdHkpfXNldFNjZW5lQmFja2dyb3VuZE9wYWNpdHkoQSl7aWYoIXRoaXMucmVuZGVyZXIpcmV0dXJuO2xldCBlPW4udG9OdW1iZXIoQS5PUEFDSVRZKTtlPjEwMCYmKGU9MTAwKSxlPDAmJihlPTApO2NvbnN0IHQ9MS1lLzEwMDt0aGlzLnJlbmRlcmVyLnBlbmd1aW5Nb2QuYmFja2dyb3VuZE9wYWNpdHk9dCx0aGlzLnJlbmRlcmVyLnNldENsZWFyQ29sb3IodGhpcy5yZW5kZXJlci5wZW5ndWluTW9kLmJhY2tncm91bmRDb2xvcix0KX1zaG93M2QoKXt0aGlzLnJlbmRlcmVyLmRvbUVsZW1lbnQuc3R5bGUuZGlzcGxheT0iIn1oaWRlM2QoKXt0aGlzLnJlbmRlcmVyLmRvbUVsZW1lbnQuc3R5bGUuZGlzcGxheT0ibm9uZSJ9aXMzZFZpc2libGUoKXtyZXR1cm4iIj09PXRoaXMucmVuZGVyZXIuZG9tRWxlbWVudC5zdHlsZS5kaXNwbGF5fHwiYWJzb2x1dGUiPT09dGhpcy5yZW5kZXJlci5kb21FbGVtZW50LnN0eWxlLmRpc3BsYXl9Z2V0Q2FtZXJhWm9vbSgpe3JldHVybiB0aGlzLmNhbWVyYT8xMDAqbi50b051bWJlcih0aGlzLmNhbWVyYS56b29tKToiIn1zZXRDYW1lcmFab29tKEEpe3RoaXMuY2FtZXJhJiYodGhpcy5jYW1lcmEuem9vbT1uLnRvTnVtYmVyKEEuWk9PTSkvMTAwLHRoaXMuY2FtZXJhLnVwZGF0ZVByb2plY3Rpb25NYXRyaXgoKSl9Z2V0Q2FtZXJhQ2xpcFBsYW5lKEEpe2lmKCF0aGlzLmNhbWVyYSlyZXR1cm4iIjtjb25zdCBlPUEuQ0xJUFBMQU5FO3JldHVyblsibmVhciIsImZhciJdLmluY2x1ZGVzKGUpP3RoaXMuY2FtZXJhW2VdOiIifWdldENhbWVyYUFzcGVjdFJhdGlvKCl7cmV0dXJuIHRoaXMuY2FtZXJhP24udG9OdW1iZXIodGhpcy5jYW1lcmEuYXNwZWN0KToiIn1nZXRDYW1lcmFGb3YoKXtyZXR1cm4gdGhpcy5jYW1lcmE/bi50b051bWJlcih0aGlzLmNhbWVyYS5mb3YpOiIifWlzQ2FtZXJhUGVyc3BlY3RpdmUoKXtyZXR1cm4hIXRoaXMuY2FtZXJhJiZuLnRvQm9vbGVhbih0aGlzLmNhbWVyYS5pc1BlcnNwZWN0aXZlQ2FtZXJhKX1pc0NhbWVyYU9ydGhvZ3JhcGhpYygpe3JldHVybiEhdGhpcy5jYW1lcmEmJm4udG9Cb29sZWFuKCF0aGlzLmNhbWVyYS5pc1BlcnNwZWN0aXZlQ2FtZXJhKX1kb2VzT2JqZWN0RXhpc3QoQSl7aWYoIXRoaXMuc2NlbmUpcmV0dXJuITE7Y29uc3QgZT1uLnRvU3RyaW5nKEEuTkFNRSk7cmV0dXJuISF0aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKX1jcmVhdGVHYW1lT2JqZWN0KEEsZSx0KXtpZighdGhpcy5zY2VuZSlyZXR1cm47Y29uc3QgaT1uLnRvU3RyaW5nKEEuTkFNRSk7aWYodGhpcy5zY2VuZS5nZXRPYmplY3RCeU5hbWUoaSkpcmV0dXJuIHRoaXMuc3RhY2tXYXJuaW5nKGUsIkFuIG9iamVjdCB3aXRoIHRoaXMgbmFtZSBhbHJlYWR5IGV4aXN0cyEiKTtjb25zdCByPXt4Om4udG9OdW1iZXIoQS5YKSx5Om4udG9OdW1iZXIoQS5ZKSx6Om4udG9OdW1iZXIoQS5aKX07bGV0IHM7c3dpdGNoKHQpe2Nhc2Uic3BoZXJlIjp7Y29uc3QgQT1uZXcgby5TcGhlcmVHZW9tZXRyeSgxKSxlPW5ldyBvLk1lc2hTdGFuZGFyZE1hdGVyaWFsKHtjb2xvcjoxNjc3NzIxNX0pLHQ9bmV3IG8uTWVzaChBLGUpO3M9dDticmVha31jYXNlInBsYW5lIjp7Y29uc3QgQT1uZXcgby5QbGFuZUdlb21ldHJ5KDEsMSksZT1uZXcgby5NZXNoU3RhbmRhcmRNYXRlcmlhbCh7Y29sb3I6MTY3NzcyMTV9KSx0PW5ldyBvLk1lc2goQSxlKTtzPXQ7YnJlYWt9Y2FzZSJtZXNoIjp7Y29uc3QgdD1uLnRvU3RyaW5nKEEuVVJMKTtsZXQgYT0ib2JqIjtzd2l0Y2gobi50b1N0cmluZyhBLkZJTEVUWVBFKSl7Y2FzZSIuZ2xiIC8gLmdsdGYiOmE9ImdsYiI7YnJlYWs7Y2FzZSIuZmJ4IjphPSJmYngifXJldHVybiBuZXcgUHJvbWlzZShBPT57bGV0IG49US5PQko7c3dpdGNoKGEpe2Nhc2UiZ2xiIjpuPVEuR0xURjticmVhaztjYXNlImZieCI6bj1RLkZCWH1pZih0IGluIHRoaXMuc2F2ZWRNZXNoZXMpe2NvbnN0IGU9dGhpcy5zYXZlZE1lc2hlc1t0XTtyZXR1cm4gcz1lLmNsb25lKCkscy5uYW1lPWksdGhpcy5leGlzdGluZ1NjZW5lT2JqZWN0cy5wdXNoKGkpLHMuaXNQZW5ndWluTW9kPSEwLHMuaXNNZXNoT2JqPSEwLHMucG9zaXRpb24uc2V0KHIueCxyLnksci56KSx0aGlzLnNjZW5lLmFkZChzKSx2b2lkIEEoKX1uLmxvYWQodCxlPT57aWYobj09PVEuR0xURiYmKGU9ZS5zY2VuZSksbj09PVEuT0JKKXtjb25zdCBBPW5ldyBvLk1lc2hTdGFuZGFyZE1hdGVyaWFsKHtjb2xvcjoxNjc3NzIxNX0pO0Eud2lyZWZyYW1lPSExLHRoaXMudXBkYXRlTWF0ZXJpYWxPZk9iak9iamVjdChlLEEpLHRoaXMuc2F2ZWRNZXNoZXNbdF09ZX1lLm5hbWU9aSxjb25zb2xlLmxvZyhlKSx0aGlzLmV4aXN0aW5nU2NlbmVPYmplY3RzLnB1c2goaSksZS5pc1Blbmd1aW5Nb2Q9ITAsZS5pc01lc2hPYmo9ITAsZS5wb3NpdGlvbi5zZXQoci54LHIueSxyLnopLHRoaXMuc2NlbmUuYWRkKGUpLEEoKX0sKCk9Pnt9LHQ9Pntjb25zb2xlLndhcm4oIkZhaWxlZCB0byBsb2FkIDNEIG1lc2ggb2JqOyIsdCksdGhpcy5zdGFja1dhcm5pbmcoZSwiRmFpbGVkIHRvIGdldCB0aGUgM0QgbWVzaCEiKSxBKCl9KX0pfWNhc2UibGlnaHQiOntuLnRvU3RyaW5nKEEuTElHSFRUWVBFKTtsZXQgZTtlPW5ldyBvLlBvaW50TGlnaHQoMTY3NzcyMTUsMSwxMDApLHM9ZSx0aGlzLmV4aXN0aW5nU2NlbmVMaWdodHMucHVzaChpKTticmVha31kZWZhdWx0Ontjb25zdCBBPW5ldyBvLkJveEdlb21ldHJ5KDEsMSwxKSxlPW5ldyBvLk1lc2hTdGFuZGFyZE1hdGVyaWFsKHtjb2xvcjoxNjc3NzIxNX0pLHQ9bmV3IG8uTWVzaChBLGUpO3M9dDticmVha319cy5uYW1lPWksdGhpcy5leGlzdGluZ1NjZW5lT2JqZWN0cy5wdXNoKGkpLHMuaXNQZW5ndWluTW9kPSEwLHMucG9zaXRpb24uc2V0KHIueCxyLnksci56KSx0aGlzLnNjZW5lLmFkZChzKX1jcmVhdGVDdWJlT2JqZWN0KEEsZSl7dGhpcy5jcmVhdGVHYW1lT2JqZWN0KEEsZSwiY3ViZSIpfWNyZWF0ZVNwaGVyZU9iamVjdChBLGUpe3RoaXMuY3JlYXRlR2FtZU9iamVjdChBLGUsInNwaGVyZSIpfWNyZWF0ZVBsYW5lT2JqZWN0KEEsZSl7dGhpcy5jcmVhdGVHYW1lT2JqZWN0KEEsZSwicGxhbmUiKX1jcmVhdGVNZXNoT2JqZWN0KEEsZSl7dGhpcy5jcmVhdGVHYW1lT2JqZWN0KEEsZSwibWVzaCIpfWNyZWF0ZU1lc2hPYmplY3RGaWxlVHlwZWQoQSxlKXt0aGlzLmNyZWF0ZUdhbWVPYmplY3QoQSxlLCJtZXNoIil9Y3JlYXRlTGlnaHRPYmplY3QoQSxlKXt0aGlzLmNyZWF0ZUdhbWVPYmplY3QoQSxlLCJsaWdodCIpfWdldE1hdGVyaWFsT2ZPYmpPYmplY3QoQSl7bGV0IGU7cmV0dXJuIEEudHJhdmVyc2UoQT0+e0EgaW5zdGFuY2VvZiBvLk1lc2gmJihlPUEubWF0ZXJpYWwpfSksZX11cGRhdGVNYXRlcmlhbE9mT2JqT2JqZWN0KEEsZSl7QS50cmF2ZXJzZShBPT57QSBpbnN0YW5jZW9mIG8uTWVzaCYmKEEubWF0ZXJpYWw9ZSl9KX1zZXRPYmplY3RQb3NpdGlvbihBKXtpZighdGhpcy5zY2VuZSlyZXR1cm47Y29uc3QgZT1uLnRvU3RyaW5nKEEuTkFNRSksdD17eDpuLnRvTnVtYmVyKEEuWCkseTpuLnRvTnVtYmVyKEEuWSksejpuLnRvTnVtYmVyKEEuWil9LGk9dGhpcy5zY2VuZS5nZXRPYmplY3RCeU5hbWUoZSk7aSYmaS5wb3NpdGlvbi5zZXQodC54LHQueSx0LnopfXNldE9iamVjdFJvdGF0aW9uKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybjtjb25zdCBlPW4udG9TdHJpbmcoQS5OQU1FKSx0PXt4Om4udG9OdW1iZXIoQS5YKSx5Om4udG9OdW1iZXIoQS5ZKSx6Om4udG9OdW1iZXIoQS5aKX0saT10aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKTtpZighaSlyZXR1cm47Y29uc3Qgcj1uZXcgby5FdWxlcigwLDAsMCk7aS5zZXRSb3RhdGlvbkZyb21FdWxlcihyKSxpLnJvdGF0ZVkodSh0LnkpKSxpLnJvdGF0ZVgodSh0LngpKSxpLnJvdGF0ZVoodSh0LnopKX1zZXRPYmplY3RTaXplKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybjtjb25zdCBlPW4udG9TdHJpbmcoQS5OQU1FKSx0PXt4Om4udG9OdW1iZXIoQS5YKS8xMDAseTpuLnRvTnVtYmVyKEEuWSkvMTAwLHo6bi50b051bWJlcihBLlopLzEwMH0saT10aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKTtpJiZpLnNjYWxlLnNldCh0LngsdC55LHQueil9bW92ZU9iamVjdFVuaXRzKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybjtjb25zdCBlPW4udG9TdHJpbmcoQS5OQU1FKSx0PXRoaXMuc2NlbmUuZ2V0T2JqZWN0QnlOYW1lKGUpO2lmKCF0KXJldHVybjtjb25zdCBpPW4udG9OdW1iZXIoQS5BTU9VTlQpLHI9bmV3IG8uVmVjdG9yMzt0LmdldFdvcmxkRGlyZWN0aW9uKHIpLHQucG9zaXRpb24uYWRkKHIubXVsdGlwbHlTY2FsYXIoaSkpfWdldE9iamVjdFBvc2l0aW9uKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybiIiO2NvbnN0IGU9bi50b1N0cmluZyhBLk5BTUUpLHQ9dGhpcy5zY2VuZS5nZXRPYmplY3RCeU5hbWUoZSk7aWYoIXQpcmV0dXJuIiI7Y29uc3QgaT1BLlZFQ1RPUjM7cmV0dXJuIGkmJlsieCIsInkiLCJ6Il0uaW5jbHVkZXMoaSk/bi50b051bWJlcih0LnBvc2l0aW9uW2ldKToiIn1nZXRPYmplY3RSb3RhdGlvbihBKXtpZighdGhpcy5zY2VuZSlyZXR1cm4iIjtjb25zdCBlPW4udG9TdHJpbmcoQS5OQU1FKSx0PXRoaXMuc2NlbmUuZ2V0T2JqZWN0QnlOYW1lKGUpO2lmKCF0KXJldHVybiIiO2NvbnN0IGk9QS5WRUNUT1IzO2lmKCFpKXJldHVybiIiO2lmKCFbIngiLCJ5IiwieiJdLmluY2x1ZGVzKGkpKXJldHVybiIiO3JldHVybiBoKG4udG9OdW1iZXIodC5yb3RhdGlvbltpXSkpfWdldE9iamVjdFNpemUoQSl7aWYoIXRoaXMuc2NlbmUpcmV0dXJuIiI7Y29uc3QgZT1uLnRvU3RyaW5nKEEuTkFNRSksdD10aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKTtpZighdClyZXR1cm4iIjtjb25zdCBpPUEuVkVDVE9SMztyZXR1cm4gaSYmWyJ4IiwieSIsInoiXS5pbmNsdWRlcyhpKT8xMDAqbi50b051bWJlcih0LnNjYWxlW2ldKToiIn1nZXRPYmplY3RDb2xvcihBKXtpZighdGhpcy5zY2VuZSlyZXR1cm4iIjtjb25zdCBlPW4udG9TdHJpbmcoQS5OQU1FKSx0PXRoaXMuc2NlbmUuZ2V0T2JqZWN0QnlOYW1lKGUpO3JldHVybiB0PyIjIit0Lm1hdGVyaWFsLmNvbG9yLmdldEhleFN0cmluZygpOiIifWRlbGV0ZU9iamVjdChBKXtpZighdGhpcy5zY2VuZSlyZXR1cm47Y29uc3QgZT1uLnRvU3RyaW5nKEEuTkFNRSksdD10aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKTtpZighdClyZXR1cm47Y29uc3QgaT10LmlzTGlnaHQ7dC5jbGVhcigpLHRoaXMuc2NlbmUucmVtb3ZlKHQpO2NvbnN0IHI9dGhpcy5leGlzdGluZ1NjZW5lT2JqZWN0cy5pbmRleE9mKGUpO2lmKHRoaXMuZXhpc3RpbmdTY2VuZU9iamVjdHMuc3BsaWNlKHIsMSksaSl7Y29uc3QgQT10aGlzLmV4aXN0aW5nU2NlbmVMaWdodHMuaW5kZXhPZihlKTt0aGlzLmV4aXN0aW5nU2NlbmVMaWdodHMuc3BsaWNlKEEsMSl9fXNldE9iamVjdENvbG9yKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybjtjb25zdCBlPW4udG9TdHJpbmcoQS5OQU1FKSx0PW4udG9SZ2JDb2xvck9iamVjdChBLkNPTE9SKSxpPUUucmdiVG9EZWNpbWFsKHQpLHI9dGhpcy5zY2VuZS5nZXRPYmplY3RCeU5hbWUoZSk7aWYocilpZihyLmlzTGlnaHQpci5jb2xvci5zZXQoaSk7ZWxzZXtpZihyLmlzTWVzaE9iail7Y29uc3QgQT10aGlzLmdldE1hdGVyaWFsT2ZPYmpPYmplY3Qocik7aWYoIUEpcmV0dXJuO3JldHVybiBBLmNvbG9yLnNldChpKSx2b2lkIHRoaXMudXBkYXRlTWF0ZXJpYWxPZk9iak9iamVjdChyLEEpfXIubWF0ZXJpYWwuY29sb3Iuc2V0KGkpfX1zZXRPYmplY3RTaGFkaW5nKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybjtjb25zdCBlPW4udG9TdHJpbmcoQS5OQU1FKSx0PSJvbiI9PT1uLnRvU3RyaW5nKEEuT05PRkYpLGk9dGhpcy5zY2VuZS5nZXRPYmplY3RCeU5hbWUoZSk7aWYoIWkpcmV0dXJuO2lmKGkuaXNMaWdodClyZXR1cm47aWYoaS5pc01lc2hPYmope2NvbnN0IEE9dGhpcy5nZXRNYXRlcmlhbE9mT2JqT2JqZWN0KGkpO2lmKCFBKXJldHVybjtjb25zdCBlPSIjIitBLmNvbG9yLmdldEhleFN0cmluZygpO2xldCBuO3JldHVybiBuPXQ/bmV3IG8uTWVzaFN0YW5kYXJkTWF0ZXJpYWwoe2NvbG9yOmV9KTpuZXcgby5NZXNoQmFzaWNNYXRlcmlhbCh7Y29sb3I6ZX0pLG4uY29sb3Iuc2V0KGUpLHZvaWQgdGhpcy51cGRhdGVNYXRlcmlhbE9mT2JqT2JqZWN0KGksbil9Y29uc3Qgcj0iIyIraS5tYXRlcmlhbC5jb2xvci5nZXRIZXhTdHJpbmcoKTtpLm1hdGVyaWFsPXQ/bmV3IG8uTWVzaFN0YW5kYXJkTWF0ZXJpYWwoe2NvbG9yOnJ9KTpuZXcgby5NZXNoQmFzaWNNYXRlcmlhbCh7Y29sb3I6cn0pfXNldE9iamVjdFdpcmVmcmFtZShBKXtpZighdGhpcy5zY2VuZSlyZXR1cm47Y29uc3QgZT1uLnRvU3RyaW5nKEEuTkFNRSksdD0ib24iPT09bi50b1N0cmluZyhBLk9OT0ZGKSxpPXRoaXMuc2NlbmUuZ2V0T2JqZWN0QnlOYW1lKGUpO2lmKGkmJiFpLmlzTGlnaHQpe2lmKGkuaXNNZXNoT2JqKXtjb25zdCBBPXRoaXMuZ2V0TWF0ZXJpYWxPZk9iak9iamVjdChpKTtpZighQSlyZXR1cm47cmV0dXJuIEEud2lyZWZyYW1lPXQsdm9pZCB0aGlzLnVwZGF0ZU1hdGVyaWFsT2ZPYmpPYmplY3QoaSxBKX1pLm1hdGVyaWFsLndpcmVmcmFtZT10fX1leGlzdGluZ09iamVjdHNBcnJheShBKXtjb25zdCBlPW4udG9TdHJpbmcoQS5PQkpFQ1RMSVNUKTtpZighWyJvYmplY3RzIiwicGh5c2ljYWwgb2JqZWN0cyIsImxpZ2h0cyJdLmluY2x1ZGVzKGUpKXJldHVybiJbXSI7c3dpdGNoKGUpe2Nhc2Uib2JqZWN0cyI6cmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMuZXhpc3RpbmdTY2VuZU9iamVjdHMpO2Nhc2UibGlnaHRzIjpyZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5leGlzdGluZ1NjZW5lTGlnaHRzKTtjYXNlInBoeXNpY2FsIG9iamVjdHMiOntjb25zdCBBPXRoaXMuZXhpc3RpbmdTY2VuZU9iamVjdHMuZmlsdGVyKEE9PiF0aGlzLmV4aXN0aW5nU2NlbmVMaWdodHMuaW5jbHVkZXMoQSkpO3JldHVybiBKU09OLnN0cmluZ2lmeShBKX1kZWZhdWx0OnJldHVybiJbXSJ9fW9iamVjdFRvdWNoaW5nT2JqZWN0KEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybiExO2NvbnN0IGU9bi50b1N0cmluZyhBLk5BTUUxKSx0PW4udG9TdHJpbmcoQS5OQU1FMiksaT10aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKSxyPXRoaXMuc2NlbmUuZ2V0T2JqZWN0QnlOYW1lKHQpO2lmKCFpKXJldHVybiExO2lmKCFyKXJldHVybiExO2lmKGkuaXNMaWdodClyZXR1cm4hMTtpZihyLmlzTGlnaHQpcmV0dXJuITE7Y29uc3Qgcz0obmV3IG8uQm94Mykuc2V0RnJvbU9iamVjdChpKSxhPShuZXcgby5Cb3gzKS5zZXRGcm9tT2JqZWN0KHIpO3JldHVybiBzLmludGVyc2VjdHNCb3goYSl9cG9pbnRUb3dhcmRzT2JqZWN0KEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybiExO2NvbnN0IGU9bi50b1N0cmluZyhBLk5BTUUxKSx0PW4udG9TdHJpbmcoQS5OQU1FMiksaT10aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKSxyPXRoaXMuc2NlbmUuZ2V0T2JqZWN0QnlOYW1lKHQpO3JldHVybiEhaSYmKCEhciYmdm9pZCBpLmxvb2tBdChyLnBvc2l0aW9uKSl9cG9pbnRUb3dhcmRzWFlaKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybiExO2NvbnN0IGU9bi50b1N0cmluZyhBLk5BTUUpLHQ9dGhpcy5zY2VuZS5nZXRPYmplY3RCeU5hbWUoZSk7aWYoIXQpcmV0dXJuITE7Y29uc3QgaT17eDpuLnRvTnVtYmVyKEEuWCkseTpuLnRvTnVtYmVyKEEuWSksejpuLnRvTnVtYmVyKEEuWil9O3QubG9va0F0KGkueCxpLnksaS56KX1Nb3ZlQ2FtZXJhQnkoQSl7aWYoIXRoaXMuY2FtZXJhKXJldHVybjtjb25zdCBlPW4udG9OdW1iZXIoQS5BTU9VTlQpLHQ9bmV3IG8uVmVjdG9yMzt0aGlzLmNhbWVyYS5nZXRXb3JsZERpcmVjdGlvbih0KSx0aGlzLmNhbWVyYS5wb3NpdGlvbi5hZGQodC5tdWx0aXBseVNjYWxhcihlKSl9Y2hhbmdlQ2FtZXJhUG9zaXRpb24oQSl7dGhpcy5jYW1lcmEmJih0aGlzLmNhbWVyYS5wb3NpdGlvbi54Kz1uLnRvTnVtYmVyKEEuWCksdGhpcy5jYW1lcmEucG9zaXRpb24ueSs9bi50b051bWJlcihBLlkpLHRoaXMuY2FtZXJhLnBvc2l0aW9uLnorPW4udG9OdW1iZXIoQS5aKSl9Y2hhbmdlQ2FtZXJhUm90YXRpb24oQSl7dGhpcy5jYW1lcmEmJih0aGlzLmNhbWVyYS5yb3RhdGlvbi54Kz1uLnRvTnVtYmVyKEEuWCksdGhpcy5jYW1lcmEucm90YXRpb24ueSs9bi50b051bWJlcihBLlkpLHRoaXMuY2FtZXJhLnJvdGF0aW9uLnorPW4udG9OdW1iZXIoQS5aKSl9cmF5Y2FzdFJlc3VsdFRvUmVhZGFibGUoQSl7cmV0dXJuIGkuc2ltcGxlKEEpLm1hcChBPT4oY29uc29sZS5sb2coQS5vYmplY3Qub2JqZWN0Lm5hbWUpLEEub2JqZWN0Lm9iamVjdC5uYW1lKSl9cmF5Q29sbGlzaW9uKEEpe2lmKCF0aGlzLnNjZW5lKXJldHVybiIiO2NvbnN0IGU9bmV3IG8uUmF5Y2FzdGVyLHQ9e3g6bi50b051bWJlcihBLlgpLHk6bi50b051bWJlcihBLlkpLHo6bi50b051bWJlcihBLlopfSxpPWwoe3g6dShuLnRvTnVtYmVyKEEuRFgpKSx5OnUobi50b051bWJlcihBLkRZKSksejp1KG4udG9OdW1iZXIoQS5EWikpfSk7ZS5zZXQobmV3IG8uVmVjdG9yMyh0LngsdC55LHQueiksbmV3IG8uVmVjdG9yMyhpLngsaS55LGkueikpO2NvbnN0IHI9ZS5pbnRlcnNlY3RPYmplY3RzKHRoaXMuc2NlbmUuY2hpbGRyZW4sITApO2lmKDA9PT1yLmxlbmd0aClyZXR1cm4iIjtyZXR1cm4gclswXS5vYmplY3QubmFtZX1yYXlDb2xsaXNpb25DYW1lcmEoKXtpZighdGhpcy5zY2VuZSlyZXR1cm4iIjtpZighdGhpcy5jYW1lcmEpcmV0dXJuIiI7Y29uc3QgQT1uZXcgby5SYXljYXN0ZXI7QS5zZXRGcm9tQ2FtZXJhKG5ldyBvLlZlY3RvcjIsdGhpcy5jYW1lcmEpO2NvbnN0IGU9QS5pbnRlcnNlY3RPYmplY3RzKHRoaXMuc2NlbmUuY2hpbGRyZW4sITApO2lmKDA9PT1lLmxlbmd0aClyZXR1cm4iIjtyZXR1cm4gZVswXS5vYmplY3QubmFtZX1yYXlDb2xsaXNpb25BcnJheShBKXtpZighdGhpcy5zY2VuZSlyZXR1cm4iW10iO2NvbnN0IGU9bmV3IG8uUmF5Y2FzdGVyLHQ9e3g6bi50b051bWJlcihBLlgpLHk6bi50b051bWJlcihBLlkpLHo6bi50b051bWJlcihBLlopfSxpPWwoe3g6dShuLnRvTnVtYmVyKEEuRFgpKSx5OnUobi50b051bWJlcihBLkRZKSksejp1KG4udG9OdW1iZXIoQS5EWikpfSk7ZS5zZXQobmV3IG8uVmVjdG9yMyh0LngsdC55LHQueiksbmV3IG8uVmVjdG9yMyhpLngsaS55LGkueikpO2NvbnN0IHI9ZS5pbnRlcnNlY3RPYmplY3RzKHRoaXMuc2NlbmUuY2hpbGRyZW4sITApO3JldHVybiAwPT09ci5sZW5ndGg/IltdIjpKU09OLnN0cmluZ2lmeShyKX1yYXlDb2xsaXNpb25DYW1lcmFBcnJheSgpe2lmKCF0aGlzLnNjZW5lKXJldHVybiJbXSI7aWYoIXRoaXMuY2FtZXJhKXJldHVybiJbXSI7Y29uc3QgQT1uZXcgby5SYXljYXN0ZXI7QS5zZXRGcm9tQ2FtZXJhKG5ldyBvLlZlY3RvcjIsdGhpcy5jYW1lcmEpO2NvbnN0IGU9QS5pbnRlcnNlY3RPYmplY3RzKHRoaXMuc2NlbmUuY2hpbGRyZW4sITApO3JldHVybiAwPT09ZS5sZW5ndGg/IltdIjpKU09OLnN0cmluZ2lmeShlKX1yYXlDb2xsaXNpb25EaXN0YW5jZShBKXtpZighdGhpcy5zY2VuZSlyZXR1cm4iIjtjb25zdCBlPW5ldyBvLlZlY3RvcjMobi50b051bWJlcihBLlgpLG4udG9OdW1iZXIoQS5ZKSxuLnRvTnVtYmVyKEEuWikpLHQ9bChuZXcgby5WZWN0b3IzKHUobi50b051bWJlcihBLkRYKSksdShuLnRvTnVtYmVyKEEuRFkpKSx1KG4udG9OdW1iZXIoQS5EWikpKSksaT1uZXcgby5SYXljYXN0ZXIoZSx0LDAsQS5ESVMpLmludGVyc2VjdE9iamVjdHModGhpcy5zY2VuZS5jaGlsZHJlbiwhMCk7aWYoMD09PWkubGVuZ3RoKXJldHVybiIiO3JldHVybiBpWzBdLm9iamVjdC5uYW1lfXJheUNvbGxpc2lvbkFycmF5RGlzdGFuY2UoQSl7aWYoIXRoaXMuc2NlbmUpcmV0dXJuIltdIjtjb25zdCBlPW5ldyBvLlZlY3RvcjMobi50b051bWJlcihBLlgpLG4udG9OdW1iZXIoQS5ZKSxuLnRvTnVtYmVyKEEuWikpLHQ9bChuZXcgby5WZWN0b3IzKHUobi50b051bWJlcihBLkRYKSksdShuLnRvTnVtYmVyKEEuRFkpKSx1KG4udG9OdW1iZXIoQS5EWikpKSksaT1uZXcgby5SYXljYXN0ZXIoZSx0LDAsQS5ESVMpLmludGVyc2VjdE9iamVjdHModGhpcy5zY2VuZS5jaGlsZHJlbiwhMCk7aWYoMD09PWkubGVuZ3RoKXJldHVybiJbXSI7Y29uc3Qgcj10aGlzLnJheWNhc3RSZXN1bHRUb1JlYWRhYmxlKGkpO3JldHVybiBKU09OLnN0cmluZ2lmeShyKX1nZXRPYmplY3RQYXJlbnQoQSl7aWYoIXRoaXMuc2NlbmUpcmV0dXJuIiI7Y29uc3QgZT1uLnRvU3RyaW5nKEEuTkFNRSksdD10aGlzLnNjZW5lLmdldE9iamVjdEJ5TmFtZShlKTtyZXR1cm4gdCYmdC5wYXJlbnQ/dC5wYXJlbnQubmFtZToiIn19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9dCgzKSxyPXtDdWJlOnQoMjk2KSxTcGhlcmU6dCgyOTcpLFBsYW5lOnQoMjk4KSxMaWdodDp0KDI5OSksT0JKOnQoMzAwKSxDYW1lcmE6dCgzMDEpLFRvdWNoaW5nOnQoMzAyKSxXaXJlZnJhbWU6dCgzMDMpLFJheWNhc3Q6dCgzMDQpfTtmdW5jdGlvbiBvKEEpe3JldHVybnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6QS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX19ZnVuY3Rpb24gcyhBKXtyZXR1cm57YmxvY2tUeXBlOm4uTEFCRUwsdGV4dDpBfX1mdW5jdGlvbiBhKEEsZSx0KXtzd2l0Y2godHlwZW9mIEEpe2Nhc2UibnVtYmVyIjpyZXR1cm57dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6QX07Y2FzZSJib29sZWFuIjpyZXR1cm57dHlwZTppLkJPT0xFQU4sZGVmYXVsdFZhbHVlOkF9O2Nhc2Uic3RyaW5nIjpzd2l0Y2goQSl7Y2FzZSJDT0xPUiI6cmV0dXJue3R5cGU6aS5DT0xPUn07Y2FzZSJBTkdMRSI6cmV0dXJue3R5cGU6aS5BTkdMRX07Y2FzZSJNQVRSSVgiOnJldHVybnt0eXBlOmkuTUFUUklYfTtjYXNlIk5PVEUiOnJldHVybnt0eXBlOmkuTk9URSxkZWZhdWx0VmFsdWU6NjB9O2Nhc2UiUE9MWUdPTiI6cmV0dXJue3R5cGU6aS5QT0xZR09OLG5vZGVzOmV9O2Nhc2UiSU1BR0UiOnJldHVybnt0eXBlOmkuSU1BR0UsZGF0YVVSSTplLGFsdDp0fTtkZWZhdWx0OnJldHVybnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZTpBfX19fWZ1bmN0aW9uIEIoQSxlKXtyZXR1cm57dHlwZTpBLG1lbnU6ZX19ZnVuY3Rpb24gYyhBLGUsdCxpLHIpe2NvbnN0IG89e29wY29kZTpBLHRleHQ6ZXx8QSxibG9ja1R5cGU6bi5DT01NQU5EfTtyZXR1cm4gdCYmKG8uYXJndW1lbnRzPXQpLGkmJihvLmJsb2NrSWNvblVSST1pKSwhMD09PXImJihvLmhpZGVGcm9tUGFsZXR0ZT0hMCksb31mdW5jdGlvbiBnKEEsZSx0LGkscil7Y29uc3Qgbz17b3Bjb2RlOkEsdGV4dDplfHxBLGJsb2NrVHlwZTpuLlJFUE9SVEVSfTtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiByJiYoby5kaXNhYmxlTW9uaXRvcj1yKSx0JiYoby5hcmd1bWVudHM9dCksaSYmKG8uYmxvY2tJY29uVVJJPWkpLG99ZnVuY3Rpb24gRShBLGUsdCxpKXtjb25zdCByPXtvcGNvZGU6QSx0ZXh0OmV8fEEsYmxvY2tUeXBlOm4uQk9PTEVBTixkaXNhYmxlTW9uaXRvcjohMH07cmV0dXJuIHQmJihyLmFyZ3VtZW50cz10KSxpJiYoci5ibG9ja0ljb25VUkk9aSkscn1BLmV4cG9ydHM9e2lkOiJqZzNkIixuYW1lOiIzRCIsY29sb3IxOiIjQjEwMEZFIixjb2xvcjI6IiM4NjAwQzMiLGNvbG9yMzoiIzVCMDA4OCIsYmxvY2tJY29uVVJJOiJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNJQUFBN0NBUlVvU29BQUFBVDZTVVJCVkhoZTdadGRxQlZWRk1mWG5IdXZYRzlpOS9aaFdZR1ZZV29nZ3FHVkZTVjl5d1Vwb2hjaCtsQVJGWHdSQXUxQkVCOTdrTkFLaGVpcGh5QUtFcUtYSUNJeUt1aEZTMFFoK3lLdlpxTFhqK3NaLy8rOTlzeVpVL2VjTXg5NzVwekR6QS9XekZwenpzenN0V2F0dmZlWm1TTVYzV1hBcmt2SE9NU1B5RkpJS1JpQ2hJNlBMMmtLQXNXREZFcVJKNlNEaGdHY2Rlb0FGRzRaUkNOZU5wdWpGTmF1SWs0MEFibEJWWkg2ZnB4MG1yUFc2d2pNT21zb24wT2VVVFUvYW5hZEI5c2d2TWJHK2ZkZmhZR3JQcDN6cElhVzhQTURyOWtOSWs5RHVQK0x4c3FKUERMZ1JzZ3BWVVh1bnlmeTNadFFrcHdKYnQvOWhzang4Q2lHNnlBWFZIV0g2d0NFZFQ0MkluSjZENVFzWjhEUlptOFNPWGZKMm9yVE5yczYySitRVzFRVm1YeEhaSmo5dlNQT1RvcU1icmFHOGdma05sV3prYlVQV0EvaFZUZk8vN2dUQnVyWXBmUGsrcGw2M1AydjJBMGljeUU4N3hQR3lrREdCRldXM3lueUxldThDSERXRmJ0RURwMnd0cExhajZRNzh2c1lzSlFoVEdRdnZ3dkZWU0VsWkFqRDVsVFlHa1BpbGlUWjRTVGtkbFZ4SVQ3QTRvcnFYUVVlZUJoaUl4eUdMRmExTTNINmdOVVFwcnR4ZnQ5YUdKekY5WUx6QkMxamU3WngxcUFzZ3JDOUR4dXJBKzB5WUF4eVdsV1JOZmk1OGpGNzRpNmxleXpnOXNMdElqLy9aVzFsRkhKVzFmL1R5aDF1TjlVMU1rUGsvRjY3cFY5QUlHWnNRSkpldFhhYjFyZjZnQWsrT1BVWjV1Y2M0ZnVVcjQraERuWWI5UkJraGRIK1E5cytZR0ErRmlzUlVGWlVIMUZuZXpGVFdMbEs3WGJFbWdoNTdFNG96VU5PNzBISE1UK3NKWmdqeHA4Sjh1Q1BRQjR3VnUvQm4yQjBQR0cySnA4Szh5NGV5NEo5YXc5UUg4YUNFMk4wMW1sSUhnQ0xkeDhXQ0lRMGV0cENNZjBTSEs5eHNNNUE2Z0NFUEdvbFllcWxKWERjYy9KYjBFVUFDTE1BbmFUL2tKcDU0Yzl4NTNpQW13Qll6TzB1OWcvc2tCeFNIOFNDVnoySHB3aE9BeERnTGNTQ2djaDRkSitaeFRxL1dlMDh5Q1VBQWQ2RFdMQ2pURHAvWUowajFiMDcxTXlUWEFNUWd2bUR2OHpxSFREbGsySThUMHN4QVFBZXgydVdSWXRPck01eG5IV2VjanhQUzJFQkNQRHV3b0tCc1BNSG4rWEJPbmZjY2NhbDhBQUVlSnc3NE1lV0Y5NWo2ZzVkQzBDdlVBWEFya3RMRlFDN0xpMVZBT3k2dEZRQnNPdlNVZ1hBcmt0TEZRQzdMaTN0QThCN2NmM01yTTVQZEZ0OVl6WWtmS1RzLzRKRkhvL0YrT0RWK1l0dllBQ09OZDRYSUMwajBTb0Qvb1dFOTJhOEJTTDNQQW1sb050VVdWandlbnpuU2JzUzRDTnk3bXh1WWgzN0ZjWWlrWWtMbmRPcUc1eWNRUHVlRXpuNnU5MkFBb0IwYkd3U2J3NUNubFVWeWNEMC9VZjExTGdvQVZ4Q3IvbU40cmNoVzFUdFRKckxlUmxpM2dRY1JwRk0va1F0SlJrRFVGdU5DOUZjbG9uOVNUTU1zbTh3TDBCZlJDajRFT1NscmJRS0FnNHYzWXp6SXQwanpzK0VwS3JOVkR0RjROc0MzNmdxOHVsZWtmRVliMldFSk0yQTRacDRxNXFHbzNzaEhLTlNrelVBQVh3dmE0NnF1REsvWVhGTzliYkVEY0FJR3ZxWTFSVUczY21qV0ZjQkNBaVQ4cVl4a2IvRDNHaEJqQURNZWw3ay9FVnJLRTdibktZUGFBY2JONC9LcVRNdzBEKzg5eUd0NUd6WmgvMVI1eEhuNTBKY1h6RDNCNHp3QXVRalZUR3QvQjdUUy83bEljbzBHZkRGRHlKUDdiQ0d3a2NvWDZucW5qd0RFTkEwVVBuSHNRaitBQkVOQVBweDczR3JLOGloeG4rTitoMldHZ05oWlBGOGpHQkhJRjlDRG9wLzYyampNeXV1UzdOblFIL2VjUFNUUFVOUnB5bWw0UzFJMVBHTmtJcUtpcUlSdVFZSGVBRVU5c0JHQ1FBQUFBQkpSVTVFcmtKZ2dnPT0iLGJsb2NrczpbcygiSW5pdGlhbGl6aW5nIHlvdXIgc2NlbmUiKSxjKCJpbml0aWFsaXplIiwiY3JlYXRlIDNEIHNjZW5lIiksYygiZGlzcG9zZSIsInJlbW92ZSAzRCBzY2VuZSIpLCItLS0iLGMoInNldENhbWVyYVBlcnNwZWN0aXZlMCIsInNldCBzY2VuZSBjYW1lcmEgdG8gcGVyc3BlY3RpdmUgY2FtZXJhIHdpdGggZm92OiBbRk9WXSIse0ZPVjphKDcwKX0sci5DYW1lcmEpLGMoInNldENhbWVyYVBlcnNwZWN0aXZlMSIsInNldCBzY2VuZSBjYW1lcmEgdG8gcGVyc3BlY3RpdmUgY2FtZXJhIHdpdGggZm92OiBbRk9WXSBhc3BlY3QgcmF0aW86IFtBUl0iLHtGT1Y6YSg3MCksQVI6YSg0ODAvMzYwKX0sci5DYW1lcmEpLGMoInNldENhbWVyYVBlcnNwZWN0aXZlMiIsInNldCBzY2VuZSBjYW1lcmEgdG8gcGVyc3BlY3RpdmUgY2FtZXJhIHdpdGggZm92OiBbRk9WXSBhc3BlY3QgcmF0aW86IFtBUl0gYW5kIG9ubHkgcmVuZGVyIG9iamVjdHMgd2l0aGluIFtORUFSXSBhbmQgW0ZBUl0gdW5pdHMgb2YgdGhlIGNhbWVyYSIse0ZPVjphKDcwKSxBUjphKDQ4MC8zNjApLE5FQVI6YSguMSksRkFSOmEoMWUzKX0sci5DYW1lcmEpLCItLS0iLGMoInNldENhbWVyYU9ydGhvZ3JhcGhpYzAiLCJzZXQgc2NlbmUgY2FtZXJhIHRvIG9ydGhvZ3JhcGhpYyBjYW1lcmEiLG51bGwsci5DYW1lcmEpLGMoInNldENhbWVyYU9ydGhvZ3JhcGhpYzEiLCJzZXQgc2NlbmUgY2FtZXJhIHRvIG9ydGhvZ3JhcGhpYyBjYW1lcmEgd2l0aCBsZWZ0IHBsYW5lOiBbTEVGVF0gcmlnaHQgcGxhbmU6IFtSSUdIVF0gdG9wIHBsYW5lOiBbVE9QXSBib3R0b20gcGxhbmU6IFtCT1RUT01dIix7TEVGVDphKC0yNDApLFJJR0hUOmEoMjQwKSxUT1A6YSgxODApLEJPVFRPTTphKC0xODApfSxyLkNhbWVyYSksYygic2V0Q2FtZXJhT3J0aG9ncmFwaGljMiIsInNldCBzY2VuZSBjYW1lcmEgdG8gb3J0aG9ncmFwaGljIGNhbWVyYSB3aXRoIGxlZnQgcGxhbmU6IFtMRUZUXSByaWdodCBwbGFuZTogW1JJR0hUXSB0b3AgcGxhbmU6IFtUT1BdIGJvdHRvbSBwbGFuZTogW0JPVFRPTV0gYW5kIG9ubHkgcmVuZGVyIG9iamVjdHMgd2l0aGluIFtORUFSXSBhbmQgW0ZBUl0gdW5pdHMgb2YgdGhlIGNhbWVyYSIse0xFRlQ6YSgtMjQwKSxSSUdIVDphKDI0MCksVE9QOmEoMTgwKSxCT1RUT006YSgtMTgwKSxORUFSOmEoMSksRkFSOmEoMWUzKX0sci5DYW1lcmEpLCItLS0iLGMoInJlbmRlciIpLHMoIlNjZW5lIGN1c3RvbWl6YXRpb24iKSxjKCJzZXRTY2VuZUxheWVyIiwibW92ZSAzRCBzY2VuZSBsYXllciB0byBbU0lERV0iLHtTSURFOkIoaS5TVFJJTkcsImZyb250QmFjayIpfSksYygic2V0U2NlbmVCYWNrZ3JvdW5kQ29sb3IiLCJzZXQgYmFja2dyb3VuZCBjb2xvciB0byBbQ09MT1JdIix7Q09MT1I6YSgiQ09MT1IiKX0pLGMoInNldFNjZW5lQmFja2dyb3VuZE9wYWNpdHkiLCJzZXQgYmFja2dyb3VuZCB0cmFuc3BhcmVuY3kgdG8gW09QQUNJVFldJSIse09QQUNJVFk6YSgxMDApfSksYygic2hvdzNkIiwic2hvdyAzRCBzY2VuZSIse30pLGMoImhpZGUzZCIsImhpZGUgM0Qgc2NlbmUiLHt9KSxFKCJpczNkVmlzaWJsZSIsImlzIDNEIHNjZW5lIHZpc2libGU/Iix7fSkscygiQ2FtZXJhIGNvbnRyb2xzIiksYygiTW92ZUNhbWVyYUJ5IiwibW92ZSBjYW1lcmEgYnkgW0FNT1VOVF0iLHtBTU9VTlQ6YSgxMCl9LHIuQ2FtZXJhKSxjKCJzZXRDYW1lcmFQb3NpdGlvbiIsInNldCBjYW1lcmEgcG9zaXRpb24gdG8geDogW1hdIHk6IFtZXSB6OiBbWl0iLHtYOmEoMCksWTphKDApLFo6YSgwKX0sci5DYW1lcmEpLGMoImNoYW5nZUNhbWVyYVBvc2l0aW9uIiwiY2hhbmdlIGNhbWVyYSBwb3NpdGlvbiBieSB4OiBbWF0geTogW1ldIHo6IFtaXSIse1g6YSgwKSxZOmEoMCksWjphKDApfSxyLkNhbWVyYSksYygic2V0Q2FtZXJhUm90YXRpb24iLCJzZXQgY2FtZXJhIHJvdGF0aW9uIHRvIHg6IFtYXSB5OiBbWV0gejogW1pdIix7WDphKCJBTkdMRSIpLFk6YSgiQU5HTEUiKSxaOmEoIkFOR0xFIil9LHIuQ2FtZXJhKSxjKCJjaGFuZ2VDYW1lcmFSb3RhdGlvbiIsImNoYW5nZSBjYW1lcmEgcm90YXRpb24gYnkgeDogW1hdIHk6IFtZXSB6OiBbWl0iLHtYOmEoIkFOR0xFIiksWTphKCJBTkdMRSIpLFo6YSgiQU5HTEUiKX0sci5DYW1lcmEpLGMoInNldENhbWVyYVpvb20iLCJzZXQgY2FtZXJhIHpvb20gdG8gW1pPT01dJSIse1pPT006YSgxMDApfSxyLkNhbWVyYSksZygiZ2V0Q2FtZXJhQ2xpcFBsYW5lIiwiY2FtZXJhIFtDTElQUExBTkVdIix7Q0xJUFBMQU5FOkIoaS5TVFJJTkcsImNsaXBwaW5nUGxhbmVzIil9LHIuQ2FtZXJhKSxnKCJnZXRDYW1lcmFQb3NpdGlvbiIsImNhbWVyYSBbVkVDVE9SM10gcG9zaXRpb24iLHtWRUNUT1IzOkIoaS5TVFJJTkcsInZlY3RvcjMiKX0sci5DYW1lcmEpLGcoImdldENhbWVyYVJvdGF0aW9uIiwiY2FtZXJhIFtWRUNUT1IzXSByb3RhdGlvbiIse1ZFQ1RPUjM6QihpLlNUUklORywidmVjdG9yMyIpfSxyLkNhbWVyYSksZygiZ2V0Q2FtZXJhQXNwZWN0UmF0aW8iLCJjYW1lcmEgYXNwZWN0IHJhdGlvIixudWxsLHIuQ2FtZXJhKSxnKCJnZXRDYW1lcmFab29tIiwiY2FtZXJhIHpvb20iLG51bGwsci5DYW1lcmEpLGcoImdldENhbWVyYUZvdiIsImNhbWVyYSBmb3YiLG51bGwsci5DYW1lcmEpLCItLS0iLEUoImlzQ2FtZXJhUGVyc3BlY3RpdmUiLCJpcyBzY2VuZSBjYW1lcmEgYSBwZXJzcGVjdGl2ZSBjYW1lcmE/IixudWxsLHIuQ2FtZXJhKSxFKCJpc0NhbWVyYU9ydGhvZ3JhcGhpYyIsImlzIHNjZW5lIGNhbWVyYSBhbiBvcnRob2dyYXBoaWMgY2FtZXJhPyIsbnVsbCxyLkNhbWVyYSkscygiT2JqZWN0cyIpLEUoImRvZXNPYmplY3RFeGlzdCIsIm9iamVjdCBuYW1lZCBbTkFNRV0gZXhpc3RzPyIse05BTUU6YSgiT2JqZWN0MSIpfSksZygiZXhpc3RpbmdPYmplY3RzQXJyYXkiLCJleGlzdGluZyBbT0JKRUNUTElTVF0iLHtPQkpFQ1RMSVNUOkIoaS5TVFJJTkcsIm9iamVjdFR5cGVMaXN0Iil9KSwiLS0tIixjKCJjcmVhdGVDdWJlT2JqZWN0IiwiY3JlYXRlIGN1YmUgbmFtZWQgW05BTUVdIGF0IHg6IFtYXSB5OiBbWV0gejogW1pdIix7TkFNRTphKCJPYmplY3QxIiksWDphKDApLFk6YSgwKSxaOmEoMCl9LHIuQ3ViZSksYygiY3JlYXRlU3BoZXJlT2JqZWN0IiwiY3JlYXRlIHNwaGVyZSBuYW1lZCBbTkFNRV0gYXQgeDogW1hdIHk6IFtZXSB6OiBbWl0iLHtOQU1FOmEoIk9iamVjdDEiKSxYOmEoMCksWTphKDApLFo6YSgwKX0sci5TcGhlcmUpLGMoImNyZWF0ZVBsYW5lT2JqZWN0IiwiY3JlYXRlIHBsYW5lIG5hbWVkIFtOQU1FXSBhdCB4OiBbWF0geTogW1ldIHo6IFtaXSIse05BTUU6YSgiT2JqZWN0MSIpLFg6YSgwKSxZOmEoMCksWjphKDApfSxyLlBsYW5lKSxjKCJjcmVhdGVNZXNoT2JqZWN0IiwiY3JlYXRlIG1lc2ggbmFtZWQgW05BTUVdIHdpdGggLm9iaiBkYXRhOiBbVVJMXSBhdCB4OiBbWF0geTogW1ldIHo6IFtaXSIse05BTUU6YSgiT2JqZWN0MSIpLFVSTDphKCJkYXRhOnRleHQvcGxhaW47YmFzZTY0LCIpLFg6YSgwKSxZOmEoMCksWjphKDApfSxyLk9CSiwhMCksYygiY3JlYXRlTWVzaE9iamVjdEZpbGVUeXBlZCIsImNyZWF0ZSBtZXNoIG5hbWVkIFtOQU1FXSB3aXRoIFtGSUxFVFlQRV0gZGF0YTogW1VSTF0gYXQgeDogW1hdIHk6IFtZXSB6OiBbWl0iLHtOQU1FOmEoIk9iamVjdDEiKSxGSUxFVFlQRTpCKGkuU1RSSU5HLCJtZXNoRmlsZVR5cGVzIiksVVJMOmEoImRhdGE6dGV4dC9wbGFpbjtiYXNlNjQsIiksWDphKDApLFk6YSgwKSxaOmEoMCl9LHIuT0JKKSxjKCJjcmVhdGVMaWdodE9iamVjdCIsImNyZWF0ZSBbTElHSFRUWVBFXSBsaWdodCBuYW1lZCBbTkFNRV0gYXQgeDogW1hdIHk6IFtZXSB6OiBbWl0iLHtMSUdIVFRZUEU6QihpLlNUUklORywibGlnaHRUeXBlIiksTkFNRTphKCJMaWdodDEiKSxYOmEoMCksWTphKDApLFo6YSgwKX0sci5MaWdodCksIi0tLSIsYygibW92ZU9iamVjdFVuaXRzIiwibW92ZSBvYmplY3QgbmFtZWQgW05BTUVdIGJ5IFtBTU9VTlRdIix7TkFNRTphKCJPYmplY3QxIiksQU1PVU5UOmEoMTApfSksYygic2V0T2JqZWN0UG9zaXRpb24iLCJtb3ZlIG9iamVjdCBuYW1lZCBbTkFNRV0gdG8geDogW1hdIHk6IFtZXSB6OiBbWl0iLHtOQU1FOmEoIk9iamVjdDEiKSxYOmEoMSksWTphKDEpLFo6YSgxKX0pLGMoInNldE9iamVjdFJvdGF0aW9uIiwic2V0IHJvdGF0aW9uIG9mIG9iamVjdCBuYW1lZCBbTkFNRV0gdG8geDogW1hdIHk6IFtZXSB6OiBbWl0iLHtOQU1FOmEoIk9iamVjdDEiKSxYOmEoIkFOR0xFIiksWTphKCJBTkdMRSIpLFo6YSgiQU5HTEUiKX0pLGMoInNldE9iamVjdFNpemUiLCJzZXQgc2l6ZSBvZiBvYmplY3QgbmFtZWQgW05BTUVdIHRvIHg6IFtYXSUgeTogW1ldJSB6OiBbWl0lIix7TkFNRTphKCJPYmplY3QxIiksWDphKDEwMCksWTphKDEwMCksWjphKDEwMCl9KSxjKCJwb2ludFRvd2FyZHNPYmplY3QiLCJwb2ludCBvYmplY3QgbmFtZWQgW05BTUUxXSB0b3dhcmRzIG9iamVjdCBuYW1lZCBbTkFNRTJdIix7TkFNRTE6YSgiT2JqZWN0MSIpLE5BTUUyOmEoIk9iamVjdDIiKX0pLGMoInBvaW50VG93YXJkc1hZWiIsInBvaW50IG9iamVjdCBuYW1lZCBbTkFNRV0gdG93YXJkcyB4OiBbWF0geTogW1ldIHo6IFtaXSIse05BTUU6YSgiT2JqZWN0MSIpLFg6YSgzMSksWTphKDI2KSxaOmEoNDcpfSksZygiZ2V0T2JqZWN0UG9zaXRpb24iLCJbVkVDVE9SM10gcG9zaXRpb24gb2Ygb2JqZWN0IG5hbWVkIFtOQU1FXSIse1ZFQ1RPUjM6QihpLlNUUklORywidmVjdG9yMyIpLE5BTUU6YSgiT2JqZWN0MSIpfSksZygiZ2V0T2JqZWN0Um90YXRpb24iLCJbVkVDVE9SM10gcm90YXRpb24gb2Ygb2JqZWN0IG5hbWVkIFtOQU1FXSIse1ZFQ1RPUjM6QihpLlNUUklORywidmVjdG9yMyIpLE5BTUU6YSgiT2JqZWN0MSIpfSksZygiZ2V0T2JqZWN0U2l6ZSIsIltWRUNUT1IzXSBzaXplIG9mIG9iamVjdCBuYW1lZCBbTkFNRV0iLHtWRUNUT1IzOkIoaS5TVFJJTkcsInZlY3RvcjMiKSxOQU1FOmEoIk9iamVjdDEiKX0pLGcoImdldE9iamVjdENvbG9yIiwiaGV4IGNvbG9yIG9mIG9iamVjdCBuYW1lZCBbTkFNRV0iLHtOQU1FOmEoIk9iamVjdDEiKX0pLGcoImdldE9iamVjdFBhcmVudCIsInBhcmVudCBvZiBvYmplY3QgbmFtZWQgW05BTUVdIix7TkFNRTphKCJPYmplY3QxIil9KSwiLS0tIixFKCJvYmplY3RUb3VjaGluZ09iamVjdCIsIm9iamVjdCBbTkFNRTFdIHRvdWNoaW5nIG9iamVjdCBbTkFNRTJdPyIse05BTUUxOmEoIk9iamVjdDEiKSxOQU1FMjphKCJPYmplY3QyIil9LHIuVG91Y2hpbmcpLCItLS0iLGMoImRlbGV0ZU9iamVjdCIsInJlbW92ZSBvYmplY3QgbmFtZWQgW05BTUVdIix7TkFNRTphKCJPYmplY3QxIil9KSxjKCJzZXRPYmplY3RDb2xvciIsInJlY29sb3Igb2JqZWN0IG5hbWVkIFtOQU1FXSB0byBbQ09MT1JdIix7TkFNRTphKCJPYmplY3QxIiksQ09MT1I6YSgiQ09MT1IiKX0pLGMoInNldE9iamVjdFNoYWRpbmciLCJ0dXJuIFtPTk9GRl0gc2hhZGluZyBvbiBvYmplY3QgbmFtZWQgW05BTUVdIix7T05PRkY6QihpLlNUUklORywib25vZmYiKSxOQU1FOmEoIk9iamVjdDEiKX0pLGMoInNldE9iamVjdFdpcmVmcmFtZSIsInR1cm4gW09OT0ZGXSB3aXJlZnJhbWUgdmlldyBvbiBvYmplY3QgbmFtZWQgW05BTUVdIix7T05PRkY6QihpLlNUUklORywib25vZmYiKSxOQU1FOmEoIk9iamVjdDEiKX0sci5XaXJlZnJhbWUpLCItLS0iLGcoInJheUNvbGxpc2lvbiIsImZpcnN0IG9iamVjdCBpbiByYXljYXN0IGZyb20geDogW1hdIHk6IFtZXSB6OiBbWl0gd2l0aCBkaXJlY3Rpb24geDogW0RYXSB5OiBbRFldIHo6IFtEWl0iLHtYOmEoMCksWTphKDApLFo6YSgwKSxEWDphKDApLERZOmEoMCksRFo6YSgwKX0sci5SYXljYXN0LCEwKSxnKCJyYXlDb2xsaXNpb25BcnJheSIsInJheWNhc3QgcmVzdWx0IGZyb20geDogW1hdIHk6IFtZXSB6OiBbWl0gd2l0aCBkaXJlY3Rpb24geDogW0RYXSB5OiBbRFldIHo6IFtEWl0iLHtYOmEoMCksWTphKDApLFo6YSgwKSxEWDphKDApLERZOmEoMCksRFo6YSgwKX0sci5SYXljYXN0LCEwKSxnKCJyYXlDb2xsaXNpb25EaXN0YW5jZSIsImZpcnN0IG9iamVjdCBpbiByYXljYXN0IGZyb20geDogW1hdIHk6IFtZXSB6OiBbWl0gd2l0aCBkaXJlY3Rpb24geDogW0RYXSB5OiBbRFldIHo6IFtEWl0gd2l0aCBhIG1heCBkaXN0YW5jZSBvZiBbRElTXSIse1g6YSgwKSxZOmEoMCksWjphKDApLERYOmEoMCksRFk6YSgwKSxEWjphKDApLERJUzphKDEwKX0sci5SYXljYXN0LCEwKSxnKCJyYXlDb2xsaXNpb25BcnJheURpc3RhbmNlIiwicmF5Y2FzdCByZXN1bHQgZnJvbSB4OiBbWF0geTogW1ldIHo6IFtaXSB3aXRoIGRpcmVjdGlvbiB4OiBbRFhdIHk6IFtEWV0gejogW0RaXSB3aXRoIGEgbWF4IGRpc3RhbmNlIG9mIFtESVNdIix7WDphKDApLFk6YSgwKSxaOmEoMCksRFg6YSgwKSxEWTphKDApLERaOmEoMCksRElTOmEoMTApfSxyLlJheWNhc3QsITApLGcoInJheUNvbGxpc2lvbkNhbWVyYSIsImZpcnN0IG9iamVjdCBmcm9tIHJheWNhc3QgaW4gY2FtZXJhIGNlbnRlciIse30sci5SYXljYXN0LCEwKSxnKCJyYXlDb2xsaXNpb25DYW1lcmFBcnJheSIsInJheWNhc3QgcmVzdWx0IHN0YXJ0aW5nIGZyb20gdGhlIGNhbWVyYSBjZW50ZXIiLHt9LHIuUmF5Y2FzdCwhMCldLG1lbnVzOntjYW1lcmFUeXBlOm8oWyJwZXJzcGVjdGl2ZSIsIm9ydGhvZ3JhcGhpYyJdKSxsaWdodFR5cGU6byhbInBvaW50Il0pLGNsaXBwaW5nUGxhbmVzOm8oWyJuZWFyIiwiZmFyIl0pLGZyb250QmFjazpvKFsiZnJvbnQiLCJiYWNrIl0pLHZlY3RvcjM6byhbIngiLCJ5IiwieiJdKSx2ZWN0b3IyOm8oWyJ4IiwieSJdKSxvbm9mZjpvKFsib24iLCJvZmYiXSksb2JqZWN0VHlwZUxpc3Q6byhbIm9iamVjdHMiLCJwaHlzaWNhbCBvYmplY3RzIiwibGlnaHRzIl0pLG1lc2hGaWxlVHlwZXM6byhbIi5vYmoiLCIuZ2xiIC8gLmdsdGYiLCIuZmJ4Il0pfX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FZQUFBQ3FhWEhlQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzRUFBQTdCQWJpUmErMEFBQVRwU1VSQlZIaGU3WnZMU3p4SEVNZkxKMmg4ckQveGxRaXlDcjdSS0VwSWtLZ2d4S0FCSVVUUXF4QVJ5ZkYzOGs4UVBPV3Erdy9rYWxCVVZJSUl1U2xDQk5GVDFLaUowU0FTbjV2K2R2ZE01cmZPckRzelBiTXJPeDhvcHFwM1o3ZXJ1cXBudHFlWEFwSkxsanltSGQ4d2lScmtVeVpwUVE0VDNmSE96azVqRUNBWlRIekZ6eStFZzV5TWpBemEyTmpnZWxaV0Z2WDA5SERkZ0cvOTh1T0wvbUx5VHFoRTYrdnJsSm1aS2EzL2VYNStwdjcrZm1seGxwa01DdFU3WHZaRUhlK1pZTlM1ODFOVFU3UzV1V25xUEVBN1hzZjdKRjh4d2ZuZmNjc2p2TWlBVWlaL0NwVW9IQTdUd3NLQ3BlTm1JQnRHUjBmcDR1SkN0bkErWW5JclZIV29Eb0JlNS9uNStiUzR1R2pMOFZnUWlNSEJRYnE3dTVNdEhLVjlWdlZoZnpDcEVDclJ5c29LNWVibVNzczlOemMzTkRRMEpDM09LWk9QaGVvT3QzUEE5MHd3NnR6NStmbDVYc2NxblFjRkJRWDhjeWNuSjJVTFZUSEI5dzV3eXdWdU1rQlA5OXJhV29wRUl0THlGcFRGeE1RRUhSMGR5UmFPWXovc25vajNQd3RWWE1OWFYxZGQxYmtiY05sRVFBellEb1NkRTM1bjhvbFFpYmEydHVqeDhWRmF5YVczdDFkcW5OK1lOQXYxZFJJWk9zdytTSGZ1UE5JUDlaZ3F6Z1AwWjNoNFdGclV4QVQ5ZlhGN2FVYThEQ2hoY2lsVW9xNnVMcHFkblUxYXVpY0N5bUY4Zkp4T1QzR1IwQWt4dVJicVM2d0NvTmM2WnZUbDVlV1VkandXQkdKZ1lJQ2VucDVraS9WQVc3M3d3Q1I3WjJlSHJxNnVSTXNiWkc5dmo2YW5wNkgreXVRektMSEVIZGFxcWlwcWFtcUtuV2xUSHZTM3BLU0UrdnI2WklzMUNlVjFTMHZMbXdpRTVuaHBLWDZPSklhdHdrWWc2dXZycFpWYUZCWVcybkpjdy9iTWhwc2ZaQU4rN0tRQzJkblpmTlJ4ZElManFiMm1waWFwWmFHbE8wYmVEWTREb0lHeWFHNXU5aTBRVHVvOEhxNERBS0xSS0E5RVEwT0RiUEdHVUNpa3pIRU5KUUhRd00wU3lzSnRXc2FDZVFlampzVlUxU2dOZ0VaMWRUVVBoTnNPYStsZVZGUWtXOVRqU1FBMEdoc2JIVTJVcXVzOEhwNEdRQVB6UTExZG5iVGk0L1I2N2hSZkFnRHdvd3JaZ0pFMXcrMzEzQ20rQlVDanNyTHlnN0xRMGwzMXhKa292Z2RBQTJWUlVWSGhhN3Fia2JRQXBBcEJBT1F4YlFrQ0lJOXBTeEFBZVV4YmdnRElZOW9TQkVBZTA1WWdBUEtZdHNRTkFOYmkzako1ZVhsU3M4WnEwUTZMY1BvalpXeFh3OHF2YWk0dkwrbisvbDVhNnNEaWJHdHJxN1E0bG91VFZobndEeE45cDFOWldSbDFkSFRZWHR0TEJ0aFdsNmp6SUY0SjRCRTVUdWJiMFk2UGovbHF6dlcxNVY2RHBISjJka1p0YlcxMGNuSWlXNmlBeWF2TDBxKyt3Y0RQVEw0V3F0aTdkM3ZyYnVPbWloSXdTZmNmbWZ3ZzFOZXhFd0FOOUJqYjNpa25KNGRuaGxQY0JnQWpIb050ZjV4Y0JqRTM4QTNRRHc4UFZGNWVUbU5qWXpCOUFaUHh5TWhJclBPWTdwME1wdVA3Z0wrWjRBcy9oN0cydHNZRHNiUzBCTk16c0xUZTN0NXUzQ1NKaDVIb3g3L2Njb0NqcUpsd3hxUmNxT3o2eVNiS21BM09waVJhQW5BY1Q1a01iRFA1UXFqdVVCVUFEZjFtb2JpNG1BNE9EcVJsVGlJQjZPN3U5blMzdU5NU3NBS2RxNEdDTEVCWnpNM053YlROek13TXIzT0Q4OWdnclhyQTFIK2dnVytaL0NSVW9zUER3eGRQZjh3eVlIdDcyN2dySEh6SjVCZWhxc2ZMQUdoOGNBOE5wN1Z0dHNZQW1OUTVKbHI5djBadkhaUWFBc0VsSEE1SHo4L1BvL3Y3KzlIZDNkMW9LQlRTWDVPaXVqUlRCbXd0MHgyTlJDSkdweUZwQTJaR28rUDZYOFVDQWdKOGhPZy9vVHQxcFIzRG1Lc0FBQUFBU1VWT1JLNUNZSUk9In0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNFQUFBN0JBYmlSYSswQUFBMCtTVVJCVkhoZTdadHRpSjNGRmNmbjNzM0dSaE5KWXJSYm95aStCMnhGUDloQVUveFlhMEswSmFGUUNHbUUxaEJyQTdFcW9sRHlJUlRFOW9Pa0tFV2thTDgwRnRvUENiWDRwVUlGSzZRUWlvSW1na0pqTm1GdGd1WjE5OTY5L2YvT21mUGN1WGZ2M2IyN1NVcUsrOTg5T3pObjVwazUvelBubVhuZU5zMWpIdk9ZeDVjWnRaeGVUQ3lRZkZOeW4rU3JrcFdTa1p4ZUovbTM1TEJrTktkSEpXOW5hVWorTDdGWThnUEo3eVFRYTlScXRhWmtFcW5YNjYxdWlUcmEwVDRmeC9IMFEzOFhCUmM2QWxaSW5wWnNrd3lMVEYxU3UvcnFxOU9xVmF2UzJyVnIwNkpGaTlMaXhZdlQ1WmRmbnE2NDRvcDA1c3laZE83Y09jblpkUGJzdWJSbno1NzB3UWNmcEtOSGo2YVdZMUo5blpIOFZ2Skx5WmprZ3VGQ09lQXJraWNsUHhQZlpSQy84Y1liMDhhTkc5TnR0OTJXbGk1ZG1vYUdodEtDQlFzMG9IN3FTRDBOU1FCNWVjcnlobFpLSjArZFRFZU9IRW5QUGZkYyt2ampqM0hHcE9TNGFuK2Q1U3hOenhjWHdnR0U2UE1pZlMzRWI3cnBwdlRZVHg5TEkxOGJNY0lLYnlOUHFuckxCM25Lb1Rjb3dVRlN5QW10TkRuSjVLZDA0c1NKOU5SVFQ2VkRodzZGSXo2Vit1ZVNQMWlEODhENU9tQ241Qm1JcjF5NXNyWjE2OVowODgwM1Y2UkxCM1E0b1M0bkRQbXNoMDZrUEsrZkZpR2czMGxGditoYXhEVGxqR002TFhiczJKRU9IejZzNW5acTdKTDhBa1BtaXJrNmdFV0pCZW9oa1J5QytMMzMzcHVHaDRjcm9pVjV5OWRFVGtTc1h2bTZIRkJHUU9TWmRmS2Faak1PeDFna3lDR055V2FhYkRiVGh4OSttQjU5OU5IVWFEUllNUDhzK1pIa3BHVFdtSXNEMk1MZWtKRmZ2K3l5eStwUFBQRkV1dVdXVzR4WXR3UElNOXVRalRKMTNRSTRMUWg3eThzQkZnUXE4NE1Ed2hGTk9ZQjBkSFEwYmQ2OG1RV1VVK0pmT3V4K0NUdkhyREJiQnpEemY0ZjhpaFVyNm84Ly9uZ2FHUmx4b2lJNG5HY2RzcFVESUcyT2FFZUZTZGI1ek1zTVVrVUdSQjJpem1uQTdBdEJmRkpSMEd5Nkl6Ny8vUFAwOE1NUHA3R3hzWERDR3Ntc0ltRzJEdmlqRFA0ZTVKOTk5dG0wWk1rU0l4aGtnM2dRSlNMQ0liMmN3REU0d0ozZ2tkQ0pWbW8yUkxyVk5NZTRFNGlFWnBxWWFKaERUcDA2WlpHUW5mQW5IYlRCangwTXZVYnRCeGE4aHdqNzdkdTMyejRlaHBNR3NTQkZPZXJSUVo2VVdTWmFvajBwZ3JPMG5GUjVQNTBpdnpBdEdGSzl4UHYzNDhoang4c3Z2NXl3Qy91eW5RTmpVQWV3MVQyalFZZTJiZHVXdUxDQlhFaVFocEFSWnBYWFQrVVFoWGdZUEFSSlVnazYwK2U2SUc0NjllRjF1ZTJ3dDdGanpEbStucEJlZWVXVjZaVlhYcUZ1Q0R1enZRTmhFQWR3a2NNK1g5K3dZVU82OWRaYks5SWhRVFljd3FLSDRlRVFXL1ZKYy9zd1BQTGhFSXVNN0lUaGhVN1NDRXVpWC9xSTdiTVUxcUlYWG5pQmRuQjZQdHM5SXdaeHdKUHE5RnIyK1RWcjFyZ2hHcEEwd0F3RERBNDlhWkFNQWhEbDJBVUtiZlREbWxYcVNIM21SVnhsWnQvclBScnNHR3ZuYTByMFN6N0twTGZmZm52Q1R1RmFtYkREREprQk16bUFhM3N1YitzUFB2aGdCem1FUVNOZjZtelAxdytnRElqT01CYUhXWnQ4TGtQY0NITjY0SUFJZS9KS3d5SFdQK013UnU0cmJLQS9zR3ZYTHNvVWNBRDJUNHVaSFBDME9sdkc1UzNYOUlEQklvMHRLNHdBcEVhUWNNMTZERzNYNVFVTXNrUUM2d1U2NVYwZkMxL2VMU3pzMi8wZ1JKTDFsY1hHMFpqOGNBbU92ZEl2MDVEY21FMkw2UnpBbnI5TkhkWFhyMTlmRFFZaVpmOW1jQndSWkJIeVh1ODYwcnFJZXVwMTZHMm1KWVM5TDNJaW54MVFENGRVaXlHblVYdHNDdVZZcHJmZld0cTVjeWRsS240aW1mWldlam9IckpVTWMxZDMzWFU4dDNCVUJnaU1RUmtoRml5Vk15SmZ3dHJaandZdFF6YzdoUkNPYzk1bU92UzVuUjJYblVqWGRpcEVuMlVxdWVxcTVRbTdoVVdTNzVEcGgra2M4RjExVm1kaEFSSHVrVEpRem5qQ0gxV2hMMjl0elNpcnBkSjFMVjNBUUlSanJiM3lzV3ZFZVUxcXh4YnQzTFhlcCtub1VML3VkTjA3b0JjdzhaRkhIcUVNdndkTTJRZjlITUJqclB2VlFlMnV1KzZ5QWFMektjaDEvSVNCQWZUZHh2a011aDZubFAyU0R3Y1lPWU5Pcjl3bWRCWjVIRzUvNkpPeEhmVEI4ZGRmZnoxNURpQ1MrNktmQTNpR3Q0SUxIbDMyVmtiRzdBTzdWWVVjdXF5dTJsWG11QTdSRmF3aGlIdkJyL1hSZVRxcFM5eUoxTkFsci9YQnJ3N3NIc2Z1Q2F6ZzQ5RTNPZStiWmkyN1RNZCtnWjNnVzJSNm9aOEQ3cFBSTlI1akJhSnpRTjYzSFhReTNzeHAxNnZvaVF5TkZBUE5jQ09LMFRyTytsU3FteHV1NzdtNzFTMnV5ZzFMbTlMaGxIQ0FqY0d2OG1WL1FkNGRUZWRleG41NHFIcldEdURwYmUyYWE2N3hrdUQ5T01nemdQdmR3NzlORGpNOXI0YTVuYzh3WldCdElLMlpOdElpVEQyenp3M1B4TGpJSytVaENJZmpIQ0xCZFg1ajVQM212bktlY1JpQjZNVEdCeDZ3MHg4VlQ2QjdvcDhEN0FBZVhvTE9RYnhzaERJb1Z3NHlnL05zWkJMY3Z0TEc3dWJ5c1JoSjZuZDRrR2ZXSi93VUVNbW1ITk1rQ2xUZndGbGxKS2gvNjBOaVEyWTk0L3FESXRjdFhMalE4c0tzSFRBaUFqVnVNa0FNMEozSGdDaWJRVXBqaGpBY3NPSmJtWG9jSXBKMm5JeTFNTThPZ0x5UmxRNlphSXhiMmFLaWFHZkhFbEhtRUM5SG5kdUNqWjdYSFNJVHdjendFS2NuQm9vQUVDVExOUEloa0kyMlpiMmxNdExMY29abUYyTFVZZno0T0dRVkJabDhZOExMMUJtNXlPczRYeXRZSnhqVEhZdERQUEx5V09hRWxqMkN6NWgxQk5pVkQ0K3pBM1FZSU44dE1YZzVHNlF1bVh6VWE0YUlGRmI3SURraDBnMDdEWkIySkpob2pZaCtxU01mWThucjdpRDFWNDJYMi9Lc0lLTjlKZGVGZmc3Z2RaVTlqZzdFZ0Rhb1VBMldSUzJzVGRSRlcvSVlIVHJhUU5iS21hQzNwVjArNTBsMXpIaGVGTU1SSmNsMkJIblp4Mm83QitHUldZYng2WVYrRHVBZFhUcDVzdjE0TFRvRk1VZ1k0L20yZzhxNk1BN3BSeGFpdHZncEg2bnREUG00Nk1lUDhlT3FNWlMyMjdTakVkM3AwNmZOWHNINDlFSS9CNHlxbzFiaFFRTWRNMEExZUJZRzZ6Q3EwSkZIYjNtSkxXcEtTd2ZFSWhkbHBIS0VGc2YycVlINE9FUUlaWTR0eDR6eEVPeFh5cXoxZlZvOGNBUUErb29CU0VObmNhRS9ZVUNrWmQ2TVZUNGtDTm1DbVBOR051OEdPQ0NjUU9oUE9hN1FoV0NMMWVWeU1ZR3pqZ0JlVWJlT0hUdm1wUUowM0VHT0JRaWpGSnJobU1xSW5FZW1PaU9UenFGT2ZzSm0xWGNGYjhNNlFEU01WODZ3NCtsYjdjaFhDNnpsMjVORCt1Njc3Mkl5OHdPZm51am5nTGZWUVl1M3ROMklnVUtZaVJqVVNFc0F1b2FNRG4ycytFRXN0amx6QXVSdEYvQlpyL1JLM1RtUWJUdVBkbjcxU0tSNGYrWDRJZGdQRDVuRHR3WTkwZGNCa2pGZVVZK05UWDBiWFEybU5DNVJLNktaSUtrNUFZT3owVEhyTVpzUjVsNXVPeVBPZVZzYnBLYy9pRnE3VERoMHZZZ2oySTM5QWdSbTdRQStVSGdENzczMzNudXVLY0Nna09QQ0o3WW1NMWdEaDBIZERrR0NlTFFQaVhZVDQ5a3h0aFk0NGZFYy90RUg0eEVaMU5zWVhYMmhRNHJaZjBQUzkwdVRmZzRBZjVIMGRBQ29ETW9TQTVOdkwycUtBa1VJcWMra0d3dWhjRWFIS0VKNjZhM1BRaC9iWTltbUhKL3ltMisraVprNEFCNTlNWjBEOXNtQjQ1OTg4a25yMDA5NUhUOFY1Y0NJbFVXU3lLQnNNeGNSWXVlcms4REl0dmgxUUtjdVIwUkJHbDJVTy9vcDdpRk1yendmVnVTUEtyZ1EyT2ZXOW9ZL3J1Mk5jY2x5eVdwZEVkYnV1ZWNlVTg0RkZva1dqVWpjSXNlQ092VzZBa0VITWZKR05FdFpGenNCZWV0RHptZGhmT21sbDlKbm4zM0dQdjBieVY0YnJBK21jd0Q0cDI2bWZxek9GdkdvZWZseS9OR0pJQU80OGFJY2FabkhVUElsQVJEbGJnbXlaZnRJT2UrdFB0OE5JcWFYOEJYSnZuMDI2WHhPd3l1eTZuS3dGMlp5QUFmeml1aytoVlZ0OWVyVnB1d0doa1VhaEFQazdTa05lYzIycFVYN0VMdWtWUmpibXFIVHduUkJORHVCTUxkOEprMjVleGQ2OGNVWHVRQlNkeTIrSHZtckRUUU5abklBK0lka3l4ZGZmTEZFdDVlMUcyNjR3YlZkd01CK0tRODFTUkVNQlVHSzFFVEdReVllZkFTcEtlMnlsS1JKY2NaYmI3MlYzbm5uSFRXM2I0aCtLSm54TzhOQkhFQW5kUGo5ano3NnFNN1RWaDZVOWdLR0lvSElZMkFKakk2MkNQV1c1cENtdm13VEpFT2lQb1RqK0d6bTFWZGZwWjdCdGtvTzJHQXpZQkFIQVBiQ0lSbnpiVzJMdFR2dnZOTys4ZXNIakM0UlJCRHNpM29ybzJmblVBcVphR2QxbVd6VWxlVEx1dEVqbzJuMzd0M3NBcEFuOUhmYkFBTmdVQWVBdjBtK29VSHZrTGRyZDk5OWQvbk1iUXFDUUJBbURYMlVjUU9oRDRKVWVWeVVvdzZwRnNCY1BuNzh1SzM2T2tVNTcvbENoSTgwQjBaK2tqa3dPcjRSMnJKbFN5cWZIRStINmsyUEJQRHlJbERxdTRFREFrRWE0QVJ1MXZndzRuLzVqUkRvK0VwczA2Wk45bDUrVUFUWmtuU1pEOEtVZzJ5QU12VUlsN3F2dmZiYWVYOGxOcHRUSUlDSGZ5KzVnOVBod0lFRE5aNis5dHNkZWlGSUJLRXlwS01jdW1nWGVjQnEvL3JycjlzNUx4MWh2MTd5SDZ1Y0plYmlBTUJWNGg3SmtBeGJ3NXJ3L3Z2djE1WXRXOVozaHhnVVFiSVhEaDQ4YUxPK2YvOStYUXJJSTc3Z2NjNWp6NXd3bDFPZ0cxTytGVjYzYmwzSEsvWHpCZmNpZS9mdXZTUy9GUTdZMStKeXdIYWxTM0VFNytkWkczaTdQSmVvNEg2ZU8xRWt2aGFYK29UU1h5bTlwTDRXTHdGVCszOEJPWUU5VWtuNy93WFlNWGpad2hzblV0NDc4T2lkWjQ4OHZ5TmxaUy8vWDBCOWtIQkpmbEgrWCtCaWdlMlNVK05MOXg4anZmQ2wvSitoZWN4akh2T1l4NldQbFA0TFAvRW9PTzJzN3lnQUFBQUFTVVZPUks1Q1lJST0ifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRUFBQUFCQUNBWUFBQUNxYVhIZUFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc0VBQUE3QkFiaVJhKzBBQUFZYVNVUkJWSGhlN1ZkTGJCVmxHUDN1czIzU29KTFdnRFJVYUNFc3BEU2tHNUNsSVZaTTJvVThRckZwcUtJQk4wZ1hoc0s2YVV4aklESEc2TUlRbHhKSWRHSGlVamNra2pReHhJWTJkS0hTaEZMN3NGSjZIek9lODgxOGwrRnllOVBIeFVmOUR6bjhNLy84OTNiTytjNzN6eDF4Y0hCd2NIQndjSEJ3Y0hCd2NIQndjSEJ3Y1BnYlVBMitDLzRFL2d5K0I5YUM2eDR2Z2grQ002QmZ4R253STdBWlhIZDRCYndHWmtFVnZIWHJWdi9HalJ2K2p6ZHYrdHUzYnk4MjQydndWZkEvaldqTVZWZ3ltZlQzN3QycndtL2R1dVdQakl6NG8yTmovdmo0dUQ4Nk91cTN0YlhwR2xzUFB2WDJpSVZqSmNHWW53SGZCcC9oeElZTkcrVEtsU3V5YWZObXFhNnFra1FpSWVsVVd1S0p1Q1FUU1Izak1UQ1owQnZLWkRMUzJ0b3FNelBzRkFVUHZnQS9Cc2M0VVNsVTBnREduTUpmQjVPY1FNemw4dVZMVWwvL3ZGU3A4RGlZbEZRcUZRcVBTU0tlbEFTRUp6RVhqOFV3bDlCUndHeG1VZmJ2ZjFudTNMbkRyek44QTlLSWIvVnNqVmlyQVl4NUQwamhMM0VDRVphV2xoYTVlUEdpYk56NEhNNVRXbkZTaGVPNmtXSURNeUE2ampSZ2p1dVkvaGdTNFh1KytMNHYyWHhPWG10dmwrSGhZY25sY3Z3enhBaElJNWlNZVU2c0JxczFvR1RNS1hySGpoMVNVMU9qRlU2bUhvazFwbUFJSzU5Q0M5Z2NSVWVQR1FBYTRzRUF6L01rbjgrcjhHdzJLN096czdKdjM3Nkt0Y2RLRFNnWjg3Tm56MHBEUTBNWTg2Q3FVVkZrVUgzT1lReXJydGZDVmtpbm81K040NXRqbWdCVzN3c05pQm94TnpjbkhSMGRhMjZQNVJpd1pNeTd1N3ZSMy9VUmdZOVgwK1pzM295eCtlaG5Va2hMUEI2dTRUV1Fnck1VakwwZ24wTVNQSnhuc3BMSlpYRU9RM0o1bWY5elhrNmRPclhxOWloblFNbVlIejU4V1BiczJTTzF0YlZQaUxQejZCeXB2YzZXNERXMkJZNjU4YVhUYVYxSEJ0ZXdQdnhzMEFLZWlyTHFzL0xGU2VDYURNYUhDd3N5TVRFaFBUMDlLMnFQVWdhVWpIazdOcUZkdTNicFRXdVZRb0VtSURwSE1TbzgzTmpzdkxBK1BHY2JNTzdjRHpqUGRRbWtnT1lRdnMrcWd5cmFVN0ZtZ3RGTXlDRVZPU1NDajlCNzkrNUpYMS9mc3RyRERPQVBEY2I4SGZDeG1CODRjRUMyYk5sU3VQbGljU2FNNTNaTVViYjdCMnRZY1p6ckdsWWFKb1lwaUJvUTQzZHl4RC8rTmxBRFF1R3NlcFRGYVRBejlEZ0xZdS9naGprd01GQ3FQVDRGbVl3WjdqWUVLMDBXZm5IeHhuVTN4MGp3SnZoSU1rYkJhekZ1M2VGeDRYSTQ0cUVXK1F3M040Z2dVYkU4TmpvVHdIbXRKRzVlQldXQ1BxZElOU0VrcjNsWXkrL2t2TkdBTzlUN1lWR09IajFLYzZNM1RJM2MxeFRGTFVDMWpENWJnSzJnMkxsenB4dzhlRkNhbXBvS1ZXZkZiTFE1anZ5ajF0dlc2N3htQ2JIMWpEcjNBMHVMM1RESk9mTkxEZVVZVnA3aTh6Q0l5WWhXUHpBbE1HZHljbExPbno4dnQyL2ZqaHJ6QTNnSnZBNFc0bEJ1RTJRcjBBaTJoanBXVjFjbm5aMmRzbnYzYmsySGlhWW9NcDNtZWJEcEJmMzk1RVpueDJwRzJPOFV6emt6Z0xCRUZWZVpvcG1DNE5HSXB3R01vR2oyL205Mzc4cVowNmQxRHdqeEVQd1NaTzhQYzZJWTVRd3dQQXUrQmRJTVBobWt1cnBhamgwN3BrOERtc0ticGpnVGFNZDJiZ213YXh5VlhJTnE4NWh0b210QWlxZHdqbFpCanhWSDdIVlVFd0lqRmg0OGtMc1Fmdno0Y1g5eGNkSDAvQXBTOU9mZ2ZVNHNoZVVZWUZpeVBYcDdlNld4c1ZGLzVRVWJXeUNVZ2t3OEgzRVVGeldCOC9FNHF4K3M1UXNSd1EzUVFDUFlBbndTRURtSTk5QUNjM04vNk45ZFRzekxZU1VHUkZHeVBkNC9kMDd3Ymk4MVZkVmhmejh5STNxc2xUWURPTEwvSVQ2bVp1QVJDTVU4VnZFaFBZNFF5djQrY3VUSWltSmVEcXMxd0ZDeVBmcjcrNlc1dVZsL09GR1FQZ2J4MXFldnZ4RURDaVpZOVhFM1FlOEhMMFA0VDBXenY2ZW1wdVRRb1VPcmluazVyTlVBdzVMdDBYL2hncnl3ZVpNS010RlI4YllCY3JSejYvLzUrWGs1ZWZMa21tTmVEcFV5SUlxUzdURTRPRmg0WVRMUlZuMFR6LzJBYjREVHYwL0xpVGRQVkN6bTVmQTBERENVYkkraG9TSFp0bTJidmtzUVpnUmp6djd1NnVxcWVNei9hYkE5T3NIdlFHN29TclNILzlYVnEvNjE2OWQ5dkdQNE1LRndEZndlZkFNTWZvYXVJN0E5UGdFWHdLaGdrbk9mZ2EzZ3VnZmJvdzhjQjM4QlB3RHJ3UDhkR1BGMUYzTUhCd2NIQndjSEJ3Y0hCd2NIQndlSGZ6RkUvZ0poMEFkcWRROU00d0FBQUFCSlJVNUVya0pnZ2c9PSJ9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FZQUFBQ3FhWEhlQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzRUFBQTdCQWJpUmErMEFBQXRQU1VSQlZIaGU3WnQ5ckpkbEdjZXYzKzkzenVHQVdFYWtwTkJzczRiTCtiSlJxVmtRSWptWVM1TTNxUnhsZ1l1Mi9uRk5iUXd3bWh1NU5XTE9ZYlZaT1lwZ1kyMGdtWXlRU0NNZ3cvVkhXdm1Db0FSSUlMQkRjTTU1K242dTY3NS9aN2l3OGZ4ZUZzUVhybk8vUFBkelAvZjNlcm52KzdtZmMrd2MvczlSU1dtck1WSnlzMlJzeWlNakpHQ1BaRmVTcHlXL1N2a3pIdDJTcjB0K0t5bE9VN2lIZXpza0xVV3JQR0NXNUZ1U3l5aWNOOWlLQ2RlYlRiak9LcU92dk4wdXVmamROdXJpQzNTbFpydmVPR0s3WGo5c2Y5bnh1SzEvMW9yMXo1Z2Q3YW1QNjIrU2haTEh2ZFFDTkZzQnVQWnF5UmdLWTY0d2UrQyt6OWlucnh0bDNZUGxFQlVNMnFXMEZvS0JmUVFkVmlpdEZEWHJPWGJDbnY3ZDMyM2VvaC9idGo5enpiRk5jcHVrNmFIUlRBWGNJRmtwR1RGaXVObUQ5MTl2czJaY0xtSVE3dEtEYXNwM2VncjVvaklvSHU1S0FWVTV2NlJDYlovWFBMYjhEM2JmQTZ0c3ozNHZNbGRNbFd6MlVwUFFMQVhNa1B4VTBqSHVZOUxDajZiYThQY09WZStEVkFWaHBSV1JrL1ZkQ1pLb0YzbFpYYWFQUEVxb1R3TWtmYmIvemNOMng2ejVoQWZvbGR3aFdlV2xKZ0EvYkJSWS9wZVNqcnVsaHVXUFRyZnpGZlJXcFdzUmRiSXBkVThRMFNyNVFWSkdoNVNCMWZHU1RwVnJjZDFEcENvMTFHekllVjAyYzlvRTZ6bndhM3ZtT2RmUTV5Uy9rZXlVTkl4R0ZVRE1QeVY1RitRZmVXaUsxV29pNzZTQ01DUXFUaEJpMUtWVVJDdWV4eXZJNHhtWnZGSUI1VlQwcjZxd21IalRUZFozK0VuYnRNMlZNRW15UXZJVzdScEJveUd3VlRJR3QzL3FGN2RhUndjVFhiYXVZaHppV0w5S0NqbENJY2QvSnArdExsNCtCNlFRa1B2N1hFQmFuRWo1ZjlrdFUrNnhOUnRWaklueG81NXJBR2l6TEZqcXhqRGhyWHgwb3Nnblo4S0NiamN2cEZCUTZzU3BsYlZ6L0x1RncxTjhmaUEwS0V2cWVkcXBqOEtIMm1VL2UyeVJYZllCWldPbCtZTG5Ha0JaQmJESllaMjNCKys5UWhPZTNONUpaYkowQzFsSmdVWEpRNVo2MnVRMGVRajNFUUltRDZrU1F0MXlCTHdsVGFKMXBWVnQ2TkRCOXVEOG1hcHp6SmRJUStWUlZnRmZrVnpHT2o5cjJraFpCNEs0N1FCWlQ4bTZSYkUrUkNEQnBTRGo3ZHhEbE1yU3JCQ2hFRWtOWHJRakRXL3haeWhFcG56MktydjJLaFZqbzNXMzUwcUNYc3RnT2orKy9jMXI5Qk4zTDhKRkV5bEttZ0Q4V3F6cHFJaFdLQ1UvTXBPaWpqeVRJSE1JRTZZVVZsQkhPL3JsWHRxcWpubENwZm4zMzhsRjRHTXBpenlhMHdFei93MXNiOGRleTNhV1VlTGUyZnBCTmlBaVdOaXREdytsUHRIeFdJaDdyZjVuTHlBZkUyYTl2NlJVUjZXL1hyN3hVeC8wTGJZS0xNT01xUlJTejZjRjN1cU12ZjNnYmdiT0dESTBRQmZWc2NFUkt2MTRnRUF6bjlsRnlrTkY3ZnFWb2dTdnB3bXovVEZsMk84QTJqTDdwM1lNMSs4dHJMUFdaYmROaUZyQngxUUdaUlRBSzYyLzJPVEJRS1p3NHRFZE5XNHRFWW1aSDBDU2RycWE3K01TQ3FLc3BhNEMyZjRUMFpjcjViaUVSbjI2Umh2Vit6TEpzM3B0OG1UMlJBNGZVeG1VVVlDNzIralJtZ0dkYWd6TUIrZ2tFMFFBc2hWZnY3RW9nMVk3ZHJNaVViaUNna2lzOGJLKzFubElWenhWUFc5SVhwLzc1aDZlSjkwckZFWmNORVIxanJhR2dEOXM1QWhtYkFhbVFYcHNSdFNDaWhPRExBT0dCSU5PQkZ4aFdCU1NrQXZpaGJ1Kzh2M0tGeEVHaFNWRlNBcnU1N29yUW9wVi90S1I1eXZ2YUtzQy9DUm41UHVackVCU2dnYnMxaTF3V3cyU0tuNTRQZ1lkbG9RRVJGR08yanBwM2V0NUVWY2ZrQ1B2ODBjaVR0OFJacVE4cDlEK2czMkNJNTh1blRiS0tDQ0J3VUFNSWhBTGdyNWM0UUZ1WlFhYVNIaTc0OG1TWVZWUFBTOUxlejBXUjVKaTNFTW9SeDhSVHZUTE5lN2p1WTJoakFKNEw3ZGRiekJvU0tFSUpKVGdnL1NCYXNJak5Pb1dDd3ZHNElPSTEvczFDUGQ0Rytzbkw4bjFKNlVvSlBXdjh2NzlSNVE2ZkV4bFVFWUJmaXJ6Mmh0eVY1K1JOVEFSSytyRVNXTlZxRGdaU01lQTZ4TWlWcFZVRk8vdUZVNHVFZVVlRjY2bGVjSHJvMDJzRU5IL0s2KzlxWDRkcFUrS1NpdmdoUmRlMUVBZ3hHQVlIQU5MVnRWQUt4N3JFTWVGTTBFSWhWSnc3MWozaWZrZ1c3aDMwSjUrVVV5a3RJbTJhZkowNWZYYW5yMTFEMmlyQWppNjlnUE1JQkt4SG9TeHRvZ0N0eFlFRWdsUDhSZ1VoU0pFd2kzYkU4VHBJOVY3T0tpL2lxNjVJblJ2eFZjSnJxa2YrcEJTMWo2eFhxbkR4MVFHVE5PbkM1YWMxOWlHN24vdW1rcDNOek14cHpuczVkbkhzNGRuaGRCTzBQZjI2SmdYSEhhR2tYSUF3cHVndngra2JiRy9LYUtnS3NzSHcwSlJLaE5tcmp3VUMzazhxYzk2ZTQvYkJSLytRWkZPa0VkSlNubEIyUkRZeklNMy92NVFHbGhZWk1CdHlUTndMQmJ4V2llQU5WMndMcnMvZGVRZWtqekc1dzN1VTRoVVNCVWF2aU9rVHp5Ri9BbGJ2K25sZkh6T0lXbGJRd0J3SEdYekhucEpQeUhIb0xGT2tBdXlERlRrblV5YXpQcVYraEtYNDUzNnVKL05EeUVRS3dOdGlITUlJK3FEdG9RWno5SUV1WEJ4M2YxOUxHVVJieXluaitjbE0xN2ZhOE11dmFURHJ2NUl0OXhmdXN5dndMNDZoQnZqMnI1SDFQWEM2Mk43Rk1zbEVHSFZ4ejZTV0EvRmhVSlJCdk1MMW1lQ2pmZUZWV3RldHUvOTBNOUUrWER5SlFrdVdBcGxGY0RJRGt0dTNmTGNXemJyOXZmWWtNSEVOVXJnTXJHZFNHV2xPTG44b2t3OWFWWUM0NmRMU0hJcGthOHJJVksyMkllUEhyTnBYMTFuQnhSOXdqY2tmL0pjU2NSNHlzTVBSZlZtYU90K2NwVjFkREFCOG82UUpzS1RKc0NZL1BBSWRvdnhiU0FweDY4SDlYcnE1TWtEcGN3bDJsaE4rL0xQYmRXVFh0bVVROUd5SHBDeFRqTHpwVjAydE9mb1AyemkySXVpTmczY2licDFJWm5kWEdIaFhrRjlranJaN0FYcy9kbFdZL1hzQmIzMm5jVXI3ZUhseXNiTzcwWkp3OGZpalNxQUFXeVIzTWxIaTc3amUyejhKeTVVVVdUcUlRQXhTSVIxL1J1Z0V3cGxPRW5hMUZjSjVnM2E1ejBGazJXZkxmcnVhcHYzZldWREc1TWxBMThPRzBDakNnRE1SbitWM01wSGkrMDc5dGd0RTRiWm9DNTE3VytCWVV0SWtBdUxBbEtWdlEyZWtKVVZoQ1B0dFNOSGp0dm52L1pFdGp6aytUVEc3eEEwQmMxUUFNQWFmSzZhOU9Jck5uVGwybjEyOFlXZGR2bUgyQWpoQ1RFQm9naTNOanpxWVFCSVJWcks4WGNJNTFuWXFyVzdiZXFjWjIzekg3MFJiby9sbTBZZU1JcG1nbDFpL2ZQNHg2KzA0dVpQV21YQlBWZjdCTWdxNGVmNy9saFNyRTdLWklsaThyYWszeFlzM21nTEgwN0ZGbjRlejA5c0ZoZ2dNek5yODRFdHp5Y0ZhelBEbTJHOC9TRnBNNFNiZXhsSm14emZOTEVYcUFPRjBtZlR5WU5tS3lEak1ja2prUlY4MTRkYjQrYUpORE45SWoyZ2lIZ0plcHNDMkhTMURLMVNBSUN4bzRDa0U4UzZwRmhhbDcyTWQyUVBrTWhUWXUvZkhyUlNBWFh3RGgvSFl3ams4QVNVUWprckpGdWZkd0tsYlVKYkZCRFdEV3NQNU5ONVFQWU1ITVpmbGtoVjF5YTBSd0Z1MlVUY0QwQ1RKN2dpa2hJU2VROFYycC9oV0NCaFhXdVcwRjlMMENZUCtOOUZzemRDR1Zocy91clZxNjFXcTdud3BvamtzdGQxZGxxSDBtbzE3TkRYeDFGWHI2ZFp4bzBieHlWK1diSWxYdEJTQlV5ZmZ2S24rOW16WjFzTlJiZ0NxcEpRQ0lvcGlzSUpMMTY4T0xVT3JGamhCejVucGdJaU80QUZDLzQ3aDFPME9UTVZzR3pac2lnMWdEbHo1cENjSFNGdzExMTNlYnpISEZCVmZpRCtNNVlzV1pKeWdYTWhFRGc3UEdEOCtQRXBkMnBzMkxBaDVRSm50QWV3REdiZzZ0bjljejdPQnVNYXF3RG81L2NHQkZZRThwTW5jd2JTT2dXMENnejI3YnU1UnFSbDVNL3RCRlBhU3V5VERKODdkNjROSHo3Y1ErQ2RzRy9mUGx1NmRDbFova3ppZldSYWlYWjRnQjlpYnRxMHlRNGRPdVN4ZlNvY09IREFObTZNWHdVWG1ucjRlU28wNjFUNG5jQ1IrZXk5ZS9kV083WDNIelpzbVBYMDlGaFhWNWRQZk1qQmd3ZTlidnYyN2JaMUt4K2IvRFRwaTVLOUZGcUpkaWdBRXYrVVROcTVjNmZ0M3IzYnlUUHo0dzJRZi9YVlYyM3o1czNGamgwN2Nranl6VzlOWk04ZThIZEZLT0kvemZKWnVFNjdzeGI4ZHZXOUV2NEVpcS9Ma0NhbFREM1h6K0VjenFGZE1QczNmSGlvVlROMUo5MEFBQUFBU1VWT1JLNUNZSUk9In0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNBQUFBN0FBV3JXaVFrQUFBbkRTVVJCVkhoZTFacHJqRTNkR2NjWFk0aHhlOTJhUVdoUVNsRmpHdGNpMGJyVmxEVFJFUWtKb1RUVkwvMmkvVUxSQ0NJUkZhbnlSVW9pK2tXOWlVdW5icThQS0lyUUlrMFFYcDBPV3FOdU14Umo5Zm12eXo3UFdudWRjL2FaT2VlWS9wUGYyZXY2ck10WmUrMjExdDZDMUtiSXpDTmtnREZFS0gxQnNZNWlxSlQ0cjNacWxaU1VpS2FtSnVPTFZFS2dRNHFpdHVaYWFIMGtvc2JQblR0WFNDbkZodzhmMUxXaW9zTEVLS0ZIa0w1b2NvWkVubmxHUk1POHRMU1UycHRlYmRxMGlkSWEva1NFN09hVFlHQkwrVG5oTk1aWDBqakRBaUpVVGo0SUJqYVhYb1JUK2ZyNmV0TXNMVCtldzFWVFV4TkswNGtJbGRzU2dvSE53YW5zNnRXclRWTlM4dE1Rc1h5K3FxdXJuWGlEWDNaTENBYm13aE1pcWx6UG5qMU4xVlBpOFlhUUhTZU5yN0t5TWllZWVFU0U3T1JLTURBSlB5YWNTdm55NHcwaFc1WlllbCtCTkRPSWtLMmtCQU96NFZUaThlUEhwbnBhZnJ3aFpDY2RzZnhjZFhWMXNYZ2laQ2NKd2NBUVdETTRoYTVjdWRKVVNjdVBONFJzSmNXeDVXdjY5T2xPdkNGa0p5M1drVTIxUkYvdDFLTHlqVXVMbnVIR0ZTbWZpeXhuWVpTZzdMOFQzOURPN0xLZEVPTDdSTlM3V0tqNDR2R0drSjE4RUN2TFZ5RE5GQ0praXhNTTdFRTR4bXByYTAweFduNjhJV1FyMzhUSzVicDkrM1lzbnZpTUNOa0NzUUNuOFZWVlZjWjBTanplNE5zb0JrNGRmRTJlUE5tSko5SjFndU9KSnJydTNic2JVeW5aT0FiUCs2bHc2dVNyVzdkdVBENlczenFzM2hNbG1GUStma3pOTzRGSkJpcldUaktKWXJ0SGFydHhPZlgvQ3pGZU83V0NqWGozN3AyNkltT2c4Y2pUbWhvUHhlckU2MzdwMGlWMURTbVhoclRHaHZ2S3VZNUpFN2YyaHZ0S1hGK01FVDdHMVJ6dy92MTcwYTVkT3o3OHVVRThKYVlTdllrdUNERENwdWdlY1ZINTRocGhydW1FKy9nMThaSjRnWUFjVkdtdVhGZndnN25nOHVYTFl2eDRkZXZINWdESWRnTDRRRWpxQURXRHdtMUEzTGVKb3l3c0hXK0lYeExjN2tnaWxEWWQ2TXd0UkRlQzJ3bnhMU0prUXdIUkhHRDlsd2tudjNWWXBSc0JDNG5mYXljTmdSNDl4TlNwVTBYdjNyMUZseTVkeEpNblQ4UzllL2ZFeFl2T253OFBkb3gvSTlRc1BXSkVlQkRnaWZQNjlXdng4dVZMOGVLRjgrZWZKWDVBWUZTRTFKLzRFbzdLeXRRZ3VIYnRtbkdwSHNqTENGQk1talJKSGpseVJNV0YxTmpZS05ldVhjdnovSlg0cHZVbkVYYVdtemR2bGwyN2RyVTJ2aURhRWJ5ZWxnR0U3TisvdjhtdGhUQUxsR2tFRUk0bmJRY3NXTEJBaFNYUmhRc1g1S2hSbzJ4ZWRJSnk1Nkl6Wjg3SWtwSVNhK08zQksrbnBUZ2RNSGp3WVBYdmNqMTgrRkFlT25SSWJ0bXlSWjQ2ZFNvV2YrUEdqU2kveFlxR3ZLUmhLVStlUENtUEhUc1c0V3ZYcmwwMjd3T0MxOU5TbkE0NGV2U284bHR0M2JvMWlyTU1IRGd3ZG50czJyVEpTV09GRHVEaEZwcFQ1TldyVjAwcUtlL2Z2Mi9qUG0wSGNPM2R1emNLSi81Qm5DWXc4NnV3Qnc4ZW1KUlN2bnIxU25idTNEbEtiK1Yxd0NuaXVQV3ZXYlBHcENwT0IrUzh3S0VoYjF6aWR3UXFNSjNBOVA2UTRQR0NHaTltelpwbGZHbjFYZUo3MmlsRXIxNDRXZGZpczNraHhYc2s0d2hnL3dqNE9zSHovb1NRdzRjUE42bTEySDFzUXZRSVdMWnNtVnl5WkVuRTBxVkw1ZW5UcDAwS3JXblRwdG04ZnlCNFdaYmkzZ0puejU2MVlhRWhpU01vMmJGalI1TmFhLy8rL1RFN1NiUjQ4ZUlvSC9FZHdpOFBGUGNXcUt1ck15N3gyRnk1c0hvVGI5NjhVUXNhSytvUTQ4cE5DeGN1RkVPR0RERStzWWRvcjUzNWxlMEpxK0JLVUhjcUxlMW9wVGR4NGtRNDBkZytjRERoL2Y1VnJCTHI2K3QxQ0lsR2dLQWhydHpXRHE1Nzl1eFJuWVVWWUljT0hVU25UcDBFUFVuRW5EbHpWQnJvenAwN1l1VElrWFo3dm9uQXlxOHpQRVkvSTc2a0VTRG9zYXhEU0d3RnE4cHE4VXJRNnRHalIxRVlnUU5Ubm5jekljZU1HV05TYSszWXNTTm1KOTFqRUN4YXRNaWswbHEzYmwwd0hYR0R3TndnKy9YcloxSnJzVFRLbjdkYm9MeThYRlJWVlJtZldFZll4VDMrdGwvQVVWMWRqVXNrV2lRWlYxcjltdGhGL0JHZUF3Y09pTnBhbk1KclRaZ3dRVjFYckZnaE5tN2NLUGJ0Mnlkb0FZWWdMTEVIdzFGYWltOHZtaS9lSTFuWEFWakIyWEJEOUc2UU5qdXlxYW5KcEpTU05rbXliZHUyVVZvcmJ3UWd2L01kQVcyc1RFcXBWb3NJMjcxN3R3bVI4dnIxNjFGYU1HL2VQQk9qeGVPZ0ZvOEFXcGNibHhCang0NFY1ODZkNHp1N3IrQUg5MjVOVFkyZ0JxdEFhT2ZPbmM3Wllob2hmM2M0TU1LMmJkc21CZzBhQksvU2xTdHFXeTl1M3J5cHJ0RG8wYVBGakJsNEphaGw3dTltaS9kSWNBUU1HelpNTmpRMHFEQXVtcVRVTXRsL053aWRPSEVpeW0vaG9zbFA1YnQ3OTY1YVBmcmZFVURQbnorWE5BbXF2UFJFTUtFcG5UOS9YdTA1dVB6dkNxQVdyd01BdHNKb2NCSWRQMzZjYjJkUFdodTVhdmJzMlZINVlQMzY5U1ltckdmUG5za3BVNlk0ZWFCOGRFQWpybmhIdjJIRGhyUWRnZmxoK2ZMbFBCOGFqMU1kNWMra3QyL2Zxbi84MXExYjh1REJnNUltUDI1bmczWFRaQ2lmUG4xcWNxVjArUEJoV1ZsWmFkUC94NmFIOHRFQk9BNjd5L3hxOVRWdTNEZzVjK1pNV1ZGUm9WNms4SGdDczdvOTBsSmg3ZHUzajRFUHA0Qk5Fd0Q3Qk5pSU9nSDA2ZE5IL2R0b05PckM0dEI0bkZrcVA1U1BEa0FjdnMvNUZlRjBSQUFzTm41RWNMc2RpRkJhSDN4S2h6T3gyd1NPNExEcTRuWldFbGhsaGZLQ3p3bWNFU0t0Q29NeWRZQjFXS1U3RS9TZkZsaVJZU1dJOTIxVy95SndQb2QvSUtSTVMxbFVEa0w1U1lTeXY2YWRTZzNFdndsc3o2M1U0d2YvWXo3T0JIbWEveGRVM2FGTUl5RHBTakRydzd5VktYRjljMWtLdzJocjc0aG0xWkVQQ1hVTDRCbk9oVEFQbnFlMTROU1JpNFZublFTN0VzL2h3QWJEdmlXMjR0dE1vMXhHVUtIay9PTzZ2U2w1ZFk3VjF3L0FTWWFhMmZFa1FPYStmVlBmUnZuR1NaL3l0b2lWemV1SDg4aHNqYmV5bzRDRFI1WWROZ29zYjduOGVFUElWcjZKbGN0Rkc3QllQQkd5bzdDT2RNTHo5cC9hcVlYYmd1Ky9pM3hiNURMY0lieTl4aG9ocmJKVkZ0L2pJazJOOHBGbythcGVqbHFoRWw1RkNuRmJPRGI5TW5IdTZEWCtOd1RxbmJIeFZuWVVKQUVyTlR1czFJYUZpOGN4UW5hU0VyUEhOWFRvMEZnOEViS1RpV0JnSm1MZkVPTGtoOHVQSjBKMk1oR3p3WVdYcjRFME9INE8yY3BHTURBSjJLZzRsZkRseHhNaE96NU9IbDkrUE9HL29NbVZZR0F1WUJNVVZXakFnQUdtcWxvOGpoR3k0NlR4VlY1ZTdzUVRmeVpDZG5JbEdOZ2NuQXJPbnovZlZGM0xqemZFOGdFdS80VEg0SmZkRW9LQnplV3JoRk5aWDM0OGh3dkhXNEUwZUN5SHltMEp3Y0NXOGtNaXFqaU94bjN4ZUYvOEtOMkFFNTVRT1MzR09nb2xaejFRVmxZbUdocFNqMlk4dTZtOXhxZjluckF2U1MwNkNxQkNydG9nMk1jSFRrcU5qWTJxa2R1M2IxZCsyL2hWcTFhRkdvOThCVzA4Vk9nUndGVkc0RVBJYkNyMG4rS29tSVhoYUIzbDRWMWdTRDhsaXRwNHFKZ2pvQlZLaVA4QnJ5NExzU0llTlBNQUFBQUFTVVZPUks1Q1lJST0ifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRUFBQUFCQUNBWUFBQUNxYVhIZUFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc0FBQUE3QUFXcldpUWtBQUF4L1NVUkJWSGhlNVp0M2lOWFpGY2V2WmV5dXZheTk2MWdUMUZHd0pJcUlpb2JFQ0JGUmpHM1JWVkNTL0tOcHNJc0VkQW1SQ0pvbUdFalEyQkFpaUtpeFlleXh0M1dWVmFQRzN2dHF6dWZPTzIvUDNMbS9lVE52WmphUy9jTDMzWDUvOTV4N2J2MzlYZ1huSFB6YW9tTEsvZHFpdEJaUVdUaFZPRkpZaXdpREs4SVZ3ajArbEk5QndnbkNOa0xLS2w0TEx3bFhDM2NTOFZWQ2xWQlM1Z2pYQ045bTRNK0VWWVIvTUhGRmtUcmZFOGFlV2VaVVQwbEJHWHByWE1XS0ZkM2d3WU5kcjE2OVhKVXFWZHlMRnkvY25UdDMzTDU5Kzl4bm4zM21Nd3YrS0p5T3AzdjM3bTdZc0dIdS9mZmZkMi9ldkhHUEhqMXkxNjVkOC9uUG5qMUxGdkFQNFhlRmozeW9ISkd0QWhEbTkzaG16cHpwK3ZYcjV5cFZxdVNKUWhEc2l5KytjT3ZXclhNYk4yNGttMCtiTTJlT0d6MTZ0TTlqK2ZMbFMvZjQ4V08zZS9kdXQzVHBVdmY4K1hPS29JUVJ3bGNFeWd1VmhDVlZBUGxYQ2VzUEhEalFqUm8xU3V5b1Fwb0loTEJZUTQ4ZVBkejE2OWZkNWN1WDNRY2ZmT0RHakJsVEtDOXVUazZPejkreVpVdlh1WE5udDJQSER2ZjI3ZHUyOGd3bWFSUlJic2hHQWQyRlA4VXpiZG8wVjd0MjdiUWdvWEFJMWFWTEYvZjU1NSs3V2JObUZVcTM0Y3FWSzN1M2NlUEczajEyN0JpUHlCUCtXZmlRUUhrZ20yV3dMeitNWVJvclBaVklVTDkrZlRkLy92eENhUXlUTUs1cTFhcmVlc2FPSGVzYU5teEk4V3BDVnBseVF6WUthTWxQNjlhdEN3a1FrbmtBSUJpd2FXRlk0N0FFOGc4ZlB0eUhCVDlJdWVXQ2JCVGdwYWxidDI0aEFVTFN5N0dlMXJSWVBBb2diY0NBQWY1aGdpN0NPdm5lc2tmV08wRWFHaFBBMGlvZ0ZCallzSks1Z2J6Tm1qVnpOV3JVOFBrRVhWTnVtU05yQmJEZXh3UUlHUXFlS1Y3NTZ0VXIxN3g1ODlUVC9NYW9YSkNOQXA3eWMrL2V2V2pEUXpJUHhPSmpWS1ZRQmdWVXE4WWM2SkYxUjJWQ05oVmY1dWZLbFN1RkJJang5ZXZYMFhpSXdKWWFqL0RQbmozemNlV05iQlJ3bUorYk4yKzZ1M2Z2RmhBb3hvY1BIMGJqaStMVHAwLzlFTHQvLzc1L1lIa2lXd3U0U2tNUEh6NGNGVUJKVDdJVDFHRmdlN2tvb2xqT0U3ZHUzY3Avb25QWFUyNlpJMGtCSEcyL0xXUVQ4ckh3TDhKL0N2OGpaRmZXUXVpM3JPemJZMEpBQkxoOSs3WS83TVRTWTN6eTVJay9JSEdRNG93ZzRLajhZK0hQaGVPRjN4U1dHV0tISVlUdkk5enVReEd3eFdVZlVLOWVQVGRvMENEWHJWczN2NTluYVdRWll6ZUhNRnUzYnZXVEpXbVRKazN5YVpxdS9wRG56cDF6UjQ4ZTljcjk5Tk5QVTA4c2dNZkNid24vNVVPbFJFd0JYRnJzUk1nV0xWcTRCZzBhZUVIWjBpcHIxcXpwOStzaEVBd2xRSHFkZVlMOHJPZTRiSjlWMEpnU0dDS3JWNi8ybG9NRllGMTE2dFR4WlhWSU1LUUVLS0ZNbHNaRUJiUnIxODdOblR2WE4weEJyNGFJS2NKQ3krQmlOU2dXaTBBQmtQTHFidHUyemUzYXRjdXZBQ2d4TnpmWDN4K1FqbktZSEQvK21CR1pVUUZjd0hCbXdWSUdFNUhDSnVGdjg3MzVTRlFBQjUwRkN4YWtHNnBFSVRUV0NsWVVrdEtwQzBVb2p4OC83alp2M3V5UHhGaFkyN1p0WGExYXRmd0VpdkM0RHg0OGNJc1dMYUo0cUlEcXd2NUNoSVg0aVF1eFJWaEFDVEVGc1BjK2pka3VYTGl3a0FKQ2hoYVNTVEdhQjZHVUNNZCtnVlVENVdwYzZESUVsaXhaUWpVM2hEOFVJaXk5VEcvVDYyblFOcmJUS0pTaGZPSENCWGZreUJHUzVncUxWRUFENFMwYXNuang0Z0xtR2hMaFkyR0ZOaHlCVlJBcmxQVVh4MlZlV2Jac0dWVnp6UHp5UVFLR1RLdFdyVnliTm0zOFNaWDVoclpRRG03YXRNbWRQSG1TckFVVUVGc0c3d25mMEdpV0l4NmVSTzFON1ZIMW96d2F4SGdQMDVMOFJWSHpzVGxLb1JKMWQrclV5WTBZTWNMTm5qM2JmZlRSUjI3R2pCbHU2TkNoWGdrODM5YlA4cG9Dd3llTjJJMFF0anRiV0xOUG56Nyt4Z2VCa2doaVlRVm1IUXFTNUEvanduaDZzbW5UcHY1ZWNkeTRjUzR2TDg4eFdUTzVBaTBUa3JJSER4NVVKWENYZVFFUFNOb0krUzBZRjVYYW9KQzI4akJzNDIxNkdKZEVyUXRGVnE5ZVBiMkVjc2M0Y3VSSTE3NTllMi9lWVg1YlIwaGpBY3dmYVdSVWdGWWUwbFp1dytxUHhjWENOai9nTm9pOUJ6MnIreEFtWk9ZWFd5YXNVK054c1JTVzBrYU5HcVhETEtFcHNKdE5JMnNMZ0dGRDFCK0xpNFh4MDhzSWpSa3phOVBUM0FleUZKSmUzTG9Ra2tseS8vNzlidjM2OVY2QnFnQ0V4eFh3Y3hPUG9zUUswRWFGRGRPd2RXMGVtOFllbjdrQk0wWjR5R3BqODFyYWVxd2ZvVG1XNzkyNzE3K0QyTEpsaXp0eDRvVHIzYnUzVjRCZTJoanp2eTNrYkpGR2tRcWdvQXFpMUljcmJaejZ3M3hoV2RaOEVPYXgvckNNK2hHYWEvYWRPM2U2VmF0VytkM2o2ZE9uL2FFTGdibExIRDkrdkZldUh0VG95QlFLakgrUXBBQTA1UldnRFFpWjFNRFFUYUtXVjlyNG1JdUFDTHR5NVVxL1krU2d4RExOZlFQam5UeDkrL1oxRXlaTVNDK0JhZ0ZtL0JkYkFkRWhRS1hLTUU3OW9hditXRGhrVWw1Y2RuSzhPMFFvaGhDQ0l4aHBvR2ZQbm03aXhJbCs3NkhsSWtPZ3dBUUlTalFFdEhIYUtCdW4vdEJWdnczSG1KUmZYZVlNR0FvT09EUk5tVExGcnhhMkhBckFOUW9vbVFYbzdHbEpoZnFRTUp6a3htanoySHl4c3ZneGQrMFFDN2E5Q00vQktTeGI2aUdnbXJiVVJ0a0hXWC9vV2hLbmpPV3hZWnNQcG02SENvQmxjK3JVcWY3T0lLd1ROeklFaXEyQU8veFFTU1lyQ1AxSnJ2cVRhTk5qL2xBQmJJbW5UNS91bWpScGtzNm5lWEZaYVZneENHZGpBYnlUNTFDVW5najFBZm9RalF2OW9adUo1RXVxeC9vWi93bzJPSmc5bXlaYnh2cTE5MkUyQ2dBRmhvRldCZ2xyWE9pUHVUYWZUYlBwR2hmNjFWVUZjRGhqbldlYmJPc0kvVG9CWWduNFV5ajJLZ0Q4WHNBdWhmWWhHZzc5MXJYVWZFbTBlY0p5dUxwNTRnZ013N3loUHpJQm9zRzcrZDR2a2RFQzdGS29EOVdIcVd2OVlWeklXSm9OcXo5MFVRQUhJbDZYYVh5c25Qb2pFeUM5WCtpYXFsaERRQ3ZXeXZWaHNRWWt4U2x0V2l3dUtVMkhBQzlNOGVzRVovTlpmOFFDQ28xL1VDd0xDQ3ZYc0kyMzZkWmZYTnF5MWxVL0ZzQVdsenMrUUJoRmtLYTArVmsxOEplSkFzTEtOUnk2U2VrMjNzYlp0S1E0ZFJHV3pRNUhaYjE5MHZpWU5VUXNvTkFFQ0lwU2dEODNzLy9tOE1Ga2FCc2FObEFmbmhTUFg1bVVGc2JiTUQzT3hvYzVBT0daRDFRUktDQzBocklZQW53SStTR1Y4S3BxK2ZMbC90eU5hZG1HRmNjTlNlUER0S0xxUUhqOFhIWnl6TFhDSzBsWGE2Qk1XUXdCcnA3NXZQVkQ0UzAwdW4zN2RuOHRmZXJVcVFKbWwrU0dmaHRuWDZwcW5BM2J2TG9MNUdWSktIaEkyc1c1Z2ZvcHoxRTVoUklyQUtDRTVjSk93c1hDbDd5elg3Tm1qVnV4WWtYNkl3bHRxSFhWSHlNTmpTMnZTWDU2RnRObkJRZ0Z0aVR2MWF0WC9Wc215aERPcElEaWZpakpWbXFyOEs5Q1B0enB5bXNxM3JUdzBwSmRtWTVOb0EwQzlJaWFwU1ZtakRLWjJOU2tyWXZaNjNCai9pSHZrQ0ZEMHZXRzRKc0M1aXZhUXhsVkltM0VGZnhLNkxmM0ZpWDlVcFFLK0pwN203Q0hzTm1OR3pmY2dRTUh2SkFvZ3FWS1FXTjV1STVoUzNxSUQ2UzV1MFBnVUFtNnpKRVhrK2Jla0V1UEVQUXdyOVN4UmgzM0VLVnhiV2ErTXVHcjlVSkh5cElxUU1GWEluOFM4amw0bmdqNTNxVkxsL3dYSTF4S2NGSkRFSUFDZEw2QVRFcDc5dXp4bDVnWEwxNzB0NytzN1ZaNFhJU0hsTWZhZU8ybFg0MVJEM1Z5TjRqdzFFa2NlZUdaTTJmOHR3bEcrTzhJL1h1eEVOa3FBTEN0UEM3OG5aQnRXcDVNbERsTWtEU0FFeHN2TkdnWXZVa3YwaVBNSDF4dkVRY1lzOXpsY1pXbENvQ3FBTXB6QzhSTEVZWUw0SDZRNStBaXNBcVB3QWpPSlNsaHdiK0ZFNFYvSnhCRGFSU2dRSGorNWJGU3lBZStQYVhCRlhnVnhjY01YRmJ3em4vdDJyVyt4K2s1d1FQaEo4SmVJbVExNGpqZ1dDdEFlSlNFSUNpeVE0Y08zdHhSTGwrZnEzV29OZkJ4TmNLanJCUjRCVFpXZU1LSEVvRHdwVlZBaU43Q1h3djV6aUFFRnkyL0VTNFZvb1FmQ1Q5aGJaODNiNTYvM01EUFBJSlo2MUtHQXBnREVGeVZndEM0dkRKbmVlWnJsQlFZbGpPRU8zd29BOHBEQVlydkMzK1M3L1ZZSzJTNDJMZXp2Tk0vSld6ZnRXdFhOM255Wks4QWlBTFllMWhobFlTeEFLenMwS0ZEUGs3QUQ4cjloVEM5KzhtRThsUkFjZkU5NFRvOC9LbWlZOGVPWGdIc0U1alZZOEx6Q2d4elo4bExBU1ZPRXg3d29SS2dMT2FBMG9JL0NnMFJ0bWJPWUVKRUFmUSs1czRZMTBtT09QNVd3d3VTMUJhWCtXZWhjSkxRZjhGYVVyd0xDZ0NzSmpOa3BhakFGMmtzZHdoTGI2dndqUDhOR3pZNGx0c1VEZ3BIQy84bXpQOWpRaFo0VnhUQXQyLzhSK2diYkdqNjkrL3ZoY2NDbVBucGNTWTZKa1VCZTlzRlFpYTY2UGEySkhoWEZBRG8wWmt5N25OWUJ0bFZuajkvM3U4YlVFb0tMTGVqaEh6cFZlaDZLMXVnZ0hlRnZ4Uyt6Y25KZVp1Ym00dUFTaGIzbVVLMmw3RnlwV0UwOG4vRm1rS3ZCRU42bTN1d1dQNVNVejFmQlJDbU5DaVhkbWE2RC9nL2gzUC9CYjdaNzB6NVlGREhBQUFBQUVsRlRrU3VRbUNDIn0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNBQUFBN0FBV3JXaVFrQUFBWStTVVJCVkhoZTdacGZTRlJaSE1kL2plV2YvdGlZdXY3M3dYeFFFV05YRkdkaUh3cnlUUkRjMHZSQjdLWDFJWjhVa3BBU1VSSEJRTEJXb2lLTEJYdUlCRU14S0ZweUVWR0xTRERRQjEwWFZ6Y3pJd3ZOdkh1K3Y3a2prNHpYbWJuM3pyMnQ4NEVmYytiY0diMi83L21kM3ptL2U0WUNCQWdRd0tSSUxqYUFqdDNDdWpBcEpDUkVzdHZ0VWxSVWxGTUU5SThKMDVROThxc1pnSk5NUlVVRlpXUmtVRzV1TGkwdExkR3paOC9vNnRXcjhsVkdzL3MyZ3dETndpNmlJVWFkbXB1YktUczdHMisvNGVQSGozVHAwaVY2K2ZLbDNFTXZoUDNrYVBxTzBRTHdxSWVHaGxKNWVUbWRQbjJhOXUzYnh4ZmNJVWtTZFhkMzA5RFFFTDE0QWYrWnY0VWxPcHJlWTVRQW0rRmVXVmxKaFlXRlBQcDc5bmgyTyt2cjYvVCsvWHNxS2lxU2V4aWZmUEczQUVoa1FRS2UzelUxTlJRWkdlbTQ0Z01MQ3d0MC8vNTk2dTN0cGMrZlA4dTkzdm5rVHdGNDFDMFdDOTI3ZDQ5RWR1ZFJWd3VtQllTb3E2dWpOMi9leUwyZSs2VzNBSDhJK3htTitQaDRLaWdvb05MU1VyelZoWm1aR2JweTVRcE5UVTNKUGZTUHNEaEgwejE2Q3ZCV0dNYzM1aW9TWEZ5YzRyMW93dUxpSXIxKy9ab2FHeHRwZFhWVjd0M2VUNzBFV0JjSkxTZ3JLNHRhV2xvb0xDeE03dllmbUJvWExseWcyZGxaM2tzSTNQcHFrVisxSmdqeisrSERoN3pFR2NYdDI3ZDVoVkZDTHdGNFNUdHc0QUR2NkJENmUvZnVsYS9vQy80dkV1MlJJMGNvT0RpWTl1L2ZMMTl4ajI0Q3VHSzFXdW5vMGFOOFU1NnU5YjRBa1E4ZVBFaUhEeCtXZTNiR0x3SUFqRXBNVEF5bHBhWEpQZHFBdVE3ZytLRkRoN3lPTkw4SjRFcDZlam92aTRnTU5XQkRoUndURVJHaHVJVld3aEFCQU1JME5qYVdvOElYRUZFWWNiVXJqTllDSUI0MzkvazdnWHlBdklCcGdXaHdodk4yNERvU0c1SXJCTVQzMWVZVXJRUkFTY3QzaitYditQSGphSG9Nbk1CS2tacWF5b0s0QTU4SkR3OW41eUdDVm1naEFCeS9pTGw0L3Z4NWV2VG9FVVZIUnp1dWVBa2N3NVJBZnNEZmMwWUVSRVdFNkxHVXFoRUFkOGQzaUpLMnA2ZUh6cDQ5NjNNeWNnWGhuWlNVeEVKaW51KzBscXZCRndING1SMHlzTTFtb3djUEhsQkpTUW1QbU5yNTZBcEdHeU92OXdiS1d3RXc0a0hJd0hmdjNxWDYrbnBWOWJ3WjhFUUFsTFFjN3BpYm1PZFBuejZsaElRRVRlcDVvOWxKQUpTMFhNK2pwRzFyYTlPMW5qY0NKUUZRMGtZZU8zYU0rdnY3cWFxcXlpLzF2TDlSRXNBVUphM2VLRTRCWkhValNscC80a2tTWlB4VjB2b2Jqd1VBZXBXMFJ1S1ZBSzRvbGJRcEtTbjA5ZXRYNnV2cjQxZWplUExrQ1UxUFQ4dnYzS01VeXhKS3paMytBUGJyZU9nNFB6OHY5emo2UmtaR3FMcTZtcy81aW91TCtlakwyNm56NGNNSCt2VHBrL3pPYy9Ca3VMYTJsby9RWkZDZC9lbG9mb3ZQRWVBRVRtMHRhZEdYazVOREF3TUR0TEd4d1ljV09OT2JuSnlVdjZVUEt5c3I5UHo1Y3pweDRvVFQrZCtGUVhXM3pnUFZFYkNWdGJVMWpvaDM3OTdKUFVTam82UFUxTlRFcXdpRXVYbnpwbnhGR1c4aW9MMjluVStPRVhreS93cjd3ZEhjSHMwRmNMSzh2TXdpNE13T0VZRTlCVVlGeDk5d0N1ZjlwMDZkVW55aTQ0a0FjM056VkZaV1JtL2ZZdFBLYkJ2dTd0Qk5BSUJUWEVRRFRtaWNld2c0ZGV2V0xlcnE2cUtUSjAveURoTUhwZTVRRWdEVktJb3hQSDlBNkFzMjBJMkdOK2dxQUZCeUFvNS8rZktGRDBvUnVsdUxLM2ZmeFJUREZMcCsvYnJjUTFobWZONmhxVTZDYXNDVWFHMXRwY3pNVExMYjdYeU1ocWh4Qi9xeHJPS2hpNHZ6bmNKVWJVOE5qUUFuMkN0Y3UzYU5idHk0d1RsaGNIQ1FFaE1UTjcrTGNNZHlpdEhIcWlLQTQ3K2lvUlpUQ09BRVMyaERRd09QTkE1Vzhac2dQSEc2YytlTzY0Wks2WjY5eGxRQ09FRm12M3o1TWsxTVRIQWxtcGVYeDFXcFFGUG5nU2tGMkVwblp5ZDFkSFNncWJrQWhpWkJNeEFRUUg3ZHRTZ0s4TDJVdEdwUVNpckp3dmcvbTcya1ZZUFMzbmxaV0wyd0g4V3lsUGI0OFdOS1RrN21aV203QTB4M29BN0FkdGRUc0s4ZkhoNm1NMmZPOEErY0JDaHBzNFQ5aFRkYTQ4MXc4amtnenZUTlZ0S3F3WmQxbFlYQW9hVlpTbG8xK0xxeFFHd21vSkdmbjI5NFNhc0dYd1Z3aFNNQ1Q0dU5LbW5Wb01VK2dIOE9nb2VpUnBXMFp1RVhZWHlLTEhLQ05EWTJKaTBzTEVpVGs1UFNxMWV2cFBIeGNVbXNJSkxGWXVIUENQdE4yUDhTN0IvWVNadk5KdlgyOWtybnpwM0REeXFjanNOMkJXdkNKS3ZWdXVzY0R4QWd3UGNDMFgrOEViS0NBa0E4VUFBQUFBQkpSVTVFcmtKZ2dnPT0ifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRUFBQUFCQUNBWUFBQUNxYVhIZUFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEcjhBQUE2L0FUZ0ZVeVFBQUFKQlNVUkJWSGhlNVp2TGJzSXdFRVZENFFOWW92NFcvVVEramxWaFJ5V1Nwbk5kaitXRU5PWGh4OHprU2tjRzE2RDYrSkpWc21xYUJpdzJiMzVjYk9ZYXNQVWpjdmFqdVV3SitQYWo1WVRtajM4Q2c4MXZ0M0VKVENYc2M5d0E5NGUrNzkwYmkxbXR3bmJkNGNjTk1IdmNjNGtiQUFHZnFQM3BkUHFkaWRKMW5lcG1iRFliTjg0MXdPVjhucjdncjlmcitNT213aTBBT0dJNjZHR3UxNnZqY3JuMCsvMGVhenFpMVFELzd4eWFZOXllYnhvUUI3V1BneG9kRG9lR0pQZ1pHL216QVREWHRxMDdlVFlKZkJPNEJWL0VCeEYvandUdWFnQXgrTkNOQUlEYUs1U1FUZ0ROZGRpc01nbEpCYmd2VXlZaHZRQ2dTRUlXQWRpY0ZnbFpCR0JUV2lSa0VZQTFXaVJrRXdBMFNNZ3FBRWlYa0YwQWtDeWhpQUFnVlVJeEFVQ2loS0lDZ0RRSnhRVUFTUktxQ0FCU0pGUVRBQ1JJcUNvQTFKWlFYUUNvS1VHRUFGQkxnaGdCb0lZRVVRSkFhUW5pQklDU0VrUUtBS1VraUJVQVNrZ1FMUURrbGlCZUFNZ3BRWVVBa0V1Q0dnRWdod1JWQWtCcUNlb0VnSlFTVkFvQXFTU29GUUJTU0ZBdEFMd3FRYjBBOElvRUV3TEFzeExNQ0FEUFNEQWxBRHdxd1p3QThJZ0Vrd0xBUXhKNG5rTno2Z1dBZXlWMFBNZWhPUk1Dd0QwU3duc09yVGNqQVB3ckFYZTY0aldIMXI0a1FEUlRFaEJJNE5BNnV3SUkzTkhxVGo0V0VJZldEQVR3eGptRFIyYkluQnUxQmM4MTRQbUdxVVRQUEx3VHg5bmI1YlVHQnppKzFaK3oyKzM4cTkvTU5zQml4ZzFZc29EUWZwWUErQUpoQ3FyOTFMemJNMjg4VG5pbzBIQnVUdDl5NHF2ZTBZOGhTeEF3azZiNUFUT0V4LzdQOVZBaUFBQUFBRWxGVGtTdVFtQ0MifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRUFBQUFCQUNBWUFBQUNxYVhIZUFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc0FBQUE3QUFXcldpUWtBQUE0NFNVUkJWSGhlN1Z0NWNGWFZIZjdkdHlVdkx4dFoyTUltaUtoRVJTRkZaQ2xJWFNpMXJhMVloV3J0T01XQzJuYkdpcll6U0VYNmgwWFIybkdjc1ROZ1FkczZNaWhXS2dxbElJc0tRdGtVSzZFMnVBU0N5VXZJUXBLMzlmdk9QZmUrbTBja3lYMVB5d2pmekMvbjN2UGVPL2Q4Mys5M2Z1ZWNlMi9rTk1jRTJEYllJZGcrMkdXd013Wi9oY1ZnaVpLU2tnUkxXQlMyRzVZeEdMbzgzVUN5Q2pmZmZMT01IajFhcXF1cjVkRkhIOVcxQ3ZOaGk4eEQ5empkQklqRFZKL0dqaDByYytiTWtUNTkra2hPVG83RTQzR3BxcXFTTld2V3lBc3Z2TUN2RUJUS1l4NjZ3K2tpd0FiWUZCNTRQQjZaTjIrZVRKczJqYWVkNHMwMzM1VEZpeGRMYlcydHJwSE5zRy9BMnRWWkQvRC9Gb0RFTDRjRisvYnRLOE9HRFpPRkN4ZUt6K2RUSDU0S2pJajc3Nzlmamh3NW9pS0RWVEFLOFQxWUhTdTZneTlFQU1TbEh3VVRXQzR1Y0J6bklaVE42a01UdTJCRFlRV0ZoWVV5ZnZ4NDVmSHk4bkl4ak81M0taRkl5TkdqUjJYNTh1V3lkKzllK2VpamoxamRBdnNNTnBnblhTR2pBb0JvRm9xQnNGelkrVENHWkNIc0UxanNKcEZSejRzOGdPTThtTXljT1ZOR2pCZ2hreVpOVXFIdkZveUczYnQzeTlxMWEyWDkrdlVTaTFGN2FZWDlGUFlubm53ZU1pSUFpTE9kODJBWHdJYkQ2RjJTejRaRllQN1hJTWgya1VrbmNMSW5OMWZHM1hlZlZGUlVTREFZUkUxbUVBNkg1ZkRodzdKbzBTS3BxYW5SdGZJdjJPZXVIOUlXUUh0OUJPeHFHTW1maEtkRlp1dERHWHJ1dVRKaStIQXhRaUdwUmVnM1hKYlp0UTJIUld0cnEyemR1bFVlZXVnaFhhdlFLZGRNQ0RBV3hROWdJVlVCdE1IcnIzazhlZS9HNDdkVVlWQVBRVklMRmhmTGQ2WlBsNnlrWnlRZUNFaGJhYW5VWWNwckdUS0VVNEQrSkhONDVKRkhaTU9HRGRMY2JLY2dEb3ZuWUUwODhmS1BXNEE4ZWkzWHcwcFVCWERBNi8xMGdXSE1mVU9rb3Nydk40cEE3THlycjVZSjExMG5yY2owYmIxNzAwM2liMm9TQTJQVjM5Z29BWVJ1RE1NaVVsU2tXOGtjcnJqaUNzRktVaUtSaUVxWXlCZmZRdlZjMkJIWUh0Y1JBUEk1S0g0RUc2VXFUSnk0MGpEdXhtZWVnV1VEcE9KckZUTHEwa3NsSCtRSWRURWtMQXJnUVllQ3lObzVadVpXcUwzOGNna2pMeVN5T0tveWkvYjJkbG0xYXBYczNMbFR0bTlITmxJVUpEOGRBUzVCTVFkbXR1SDE3aHNYai84ZUo1NmZZd1VYQXVrQkF3YW9qeXlvTDRJOFJiREVNSENldjJlUEJPcnJKUTdpZFdQR1NCaEQ0b3NZRHN3UFhGTHYyTEZEVnF4WUljZU9IWXVuY3hVdVlDd0JFY3YrUGJpQTZ2YlVhNjZSOGxHakpPSDFkbTM0UmNzNTUwZ2N4NTYyTmlsQjhpcDU0dzB4b3R6M1pCNkRCdytXV2JObXFXRUJ1Sk1aUHNSQVZwbmZSSGIybnpISVdwbFFHRmRlSkxjQ2pPY2h5UGhaeVBhSURwdnNTUUlnUWJiMzZpVzFFeWRLeTZCQnFybUNmZnNrVkZtcGpqTUZlcjhJZmNwRlpBYlFQMnZkNFRZQ09NL2JXUi96RG1JZzVxSFBsTjlBVEdtTHN0L0FnVElRSGc1Z1E0TTFia2NSZU93NHB3Q3g3R3dWQ1gyeDZjbjU4RU8ybGhhOGFKZWtTYjR6dUJYQWRKVUd2RTdIcThVNGplU2RCRDFRdkMveVFRSENMb0NGankwQUJiR084YjA0eU5lTkd5ZkhSNDVVdWFGazQwYnhOVFN3eFI2QjN1YVNPaHZ0aFJDQmZqOVg1cDNEclFCYzdwb3dqUC9nTDllZWlqdi9rSkNLQW01cTlERkZLTVJhb0JoVFlRbk1jSktuV2Vjb1cvdjNseWc2bm9YZFhoRjJmajBCbDhVa3pTMDBWNW1NZ0ZQQnJRQzlkRWtCZGlNVE1nSVNKSzlXNGZDbWJld0FoZUF4UE1HY2tJY3h6NGpvVTFhV0ZBQ2YyeVdzSHJNQlViQi92K1M5KzY0Njdnb2tYRkJRSUZtWVRUak91d08zQWhUb2twSWZ4MThsZ0IwRzNORnBZbFpwa2JNRXljSzRETUw2SXl2N3JXR2hSZUR2bzZnTGF4R0t0MndSYjNJbGR4SVk3dlE0aVhkbksrMkVXd0djZzBxUmgzR0pZeVlEa3RCRUZHbUxPRWxhb2M1elJnU0lEc0Jxa2NQRGh6RWJwd2d3NW9BMkRCV0NxOFVDckJXYzREaG5KaWRoYnFsSnZpZGJhUXR1QlVpOWtpV0MrWWZFMlJsTjJzNEZMQzNUbjFFUWxyMndKNkFRb2Z4OHlZSTNsVWdnMlE1aGlGN3Z2Q09lRm03MXFhZEhKVGFHZTE2ZTJsbTdobHNCT3F4U1FGb0pZS3RBajFNQWxwb29TZHVlSjJsbVprMWUxZXZqM2tpQVRKUzU4S29QdjYvRldsNDFpYVZzMGR0dksrSU1kMDV0bVlCYkFUanVPNFV0QWdWd21IUDhLOEk0VjZRcEJPc2RJdmd4RkhyQjg2Vjkra2dBZGZYWVR6QWFTdDUvWDNJeDBDaUNtM0R2REJrUmdCVE53b0ZVOGluUm9Jd2lzRjRUVitlNjNnT1MyZkJ5UDBSRHNMemNUSEJZSG9jZ1FpYmhWb0JQZFdtaGN3R3NraVF0czBTZzUya2dySWFGWmZ5K1BtWWU4ZUJ6QTkrTDlPdW5tZ3Z0NHUzRXpNR3RBQi9ya2g1TVRvbUFyUVF6QXIzUFkwS1RWNkd2U3pzU05HR2J1Q1dVVmNaaTBzd2RJdUN2cVJIZlo3em5tUm00RmVEZnVpUlIzZzlnTzRiNnd6cUNBcWkwbUlRNkF5R2pyczcwdkVXUXBMWFo1L296VmNMVXJLSVI3T2JDcUR0Z245MkFRNkNOQjVpdnVURXlRTTdUd2Z1YWZMTGJKckplZmxtS3NkNFB2UHBxUnhGWWtpUk5rN2FQclZJakI3dkZUQ0haYWcrQTduRE5rN3BWVXo1U0RYSkpsR29RSk9lcHB5VC9ycnZFd0c0di8rNjd4YmRqaCtsbC9sSjczaW1FaWdoTlhnbWw0UTJIeGRCcmduVGhTZ0NOdDNWSitNMXVLbkVVV2Fza2VRTnplR2orZkFrdFhzeGFCWXBRY1B2dFl0VFhteVJWcFY1QWFSSFVWRWZ5NXFmU1BNcTgrOFpWWXFDNldoMm5pM1FFU0E3RTNOd0IySHY2U0VNMXlBY1Q5RHJ2NmpRMVNSNjhIbnorZVg1aWcvZjltaFl1bEFSV2N3cVdoMGxhbXhKRGk4Q3lYZDh3SVFLT2U0bnB3TFVBNkJZMzZ1YWszTlEwR2N1emJPVHpwQUF3QTltYVhnNXMzY3BhRzNIc0JodVdMNWUyNmRPVlNQU29OVXhza0xnRkxVU0MwNllHWjROTXdMVUFHbXQxU2NLbEdMSG1mWFlROFI0OEtJVzMzaXErRHo1Z2pZMFl2Tmp3M0hNU3hlcU90OFVWZVFybUpOK1pFRm9FQ3o3T0pCbEF1Z0l3QXN6QjJOeDhZUmFTRmdYd3YvV1c1TStkSzU2VVRrWXdoaHVlZVVaaTJBSXIwaHdpT2xxY3liSURVb2hiOEdCb1pRSnBDWUJ1c2JmcjFFazBpcFc3eUhkaHVVaDRCdThUT3RBMlpZb2NmK0lKU1NEODZYbWJmQ1NTRkFIa0RVc0VTd2pyT0VVRXp3aytaVXdmNlVZQThRNnNrUWYzZ3NROGk0UURKMjY2U1pvWExVTG1DcGlFWWJ6dHJZWUF2bXViRnNHS0JqVThhSVJWYXFqUFhLQUprY01IcC9vSmN2b0N3QzljRVBHRnBxbXBqemw1YzZQdWpqdWtaZlpzNVdHTHNPMXhSZ0VGWVdsRkJFc3RnTzE5eXh6b0tYMFM1Z1BUSlV1V3lOU3BVK1Y5YzFOVm5MWUE2QWlmTUR3R0c2WXFOTGhNK1JYQzlyR3FLbWxwUklBNENDb2hMTkpXdmRQb2ZUWmlDV0dKd1ZJamdTMXpkOUdDUmRPVFR6NHA5OXh6ajZ4Y3VaSlZ1SWo4R2xhbmtyWmJvRXZub21BTzZPQjgxRGMrYmhqYi94R1BENnFzckRRT1lrYllqK1hyaEFrVEpFNkMycU9LcE9WZFRkQUtlenRTVUxaajBSUkRwQVFySzhWLzlLaTZSclN3VUpvckt0VHhxYkIwNlZKWnRteVpyRjY5R3NFV1FlUHlkOWpGc0UzODNMVUFhSWt2TVdKQnI1NFFPMUVQWXErTXo4bFpIbzVFZG9CQ3pYdlYxUmNmT25SSTFuTDlEM0lYbk0rWFJ3QVNSa0hTS2djNHlkTjRUZ0dRVU9PSWxOd3RXOHpQZ0VoWm1aeTQ2Q0oxM0JtMmJkc21zekgwTm0vZUxCK2FEMWo0anQxdllRL0NHQUVLeWdrOUJicDFBNHBsc05UN1V1dGhmNE5kaU5WYkhUclBseHFQNGZ2UmIrUGl4MFFtc3Z1RGh3NlZCeFlza0w0ZzRiVVdOOHp5Skd4QkV5WGg0dzBORW9FSVJhdFdxVHFpRWRGMC9Nb3I5VmtTVEhJMzNuaWpmUHl4dldQbnh1MGNXS2R2a1BVNEF0REZYNko0Q3BZNkNKK0I4VVdKdzdCeWtHRnVHQ3ArL3ljZzB6NFQ0a0NBdlFlUkxNUGhzSGYxU3k5Sk5wYkRPYno5aFhDMlBhNjlia1VGajlzeGhoT3diQXdsQzAxangwcTB0RlNmaVNKTVQ4K1lNVVBxelBVSEZlUzdBSHlDYlhzOEZkMk9BSFNMSzEwbXU3dFVSVWZNUjBQMlc1djRMdC9RdWhOV0FNL1dnOVJlSE5NVE1WTDhPb1lJY244dWV1WHAzNysvZlArR0crVGlTeTZSUVZ3Z09hTkFpOUZVV3l1ZUF3Y2txRytIeFhKeXBBYmhIYy9QVjJUWHJWc25yNy8rdW5yc3pWL0J1RXJLNTBsWDZKWUFhSkdoL2hjWUZYVUNLVngrakVhZU5VK1R3RzlHb3BnRlUvZTFzYkhaQmEveWtTKzlRZS9FSjRxOGhnYUMyUFVaRjQ0Y0tkZE9teVpUSmsvRzZFbE9UZ2FTWDJ2bFFRbHNTejRpYXg0OVd1cXhqK0FMRDVzMmJaS05HemRDS3lVY2lmTzZqTUp1b1VzQjBDeWZUbkJjbTQ5cGtzQStWcTVIQXh2TjA0N0E3OWcyZjhOaGtZZnpWbFR3NlFiZmFtUnZsUWdQSUM5c0Z2a0ZCbWhKUGp4YTJydTMvTzdoaDgwSEhaZ0Z2SWNQUzNUWFRrazBta3ZmV0Nnayt5ZE9sQWRYckZDdnhqV1lEMDhaWFV0Z2Y0RDE2RzNSVXdxQVhqSmRjNXJyK0txSHlIOWgwL0RqTG0vUm9nMU9sVE5nMW16QloxeThwY1pYNENtQ0VnUEs1UDBNUXJQQzcvUEpWVWh5ZDJJbjZVZG90MkVhNUVOUDRsVWMzL2JLS3hKTkRoVkdtT3VkMGVjS2dPWW5vNkRuVXpQOVd6QjZuaThaZFFtMHcydFF3S3RnNVREcnZRSytQMGdoRGlCUGxDS0c2OFRuQ3pSR285N2J2TjRYbVVUS0lNUzFZOGFvRjZacjYrdGxLYWEwWnpFazlDM3BwMkYzbUlmdTBha0E2UFJ0S1A0SVkrSno0aVhZTGZoUmo3ZGlhSk52akZKVTVFRDFnbFVTaGxFTEFZcFJmb0t5ck4wdzZsWW1Fai9CUlZUK0dENTh1S3pCRE1BMUhNWVBid2tuMDMrYU9Fa0FkUFEzS0JhWVp4M3dPT3hlL0lDSnp6WFFQaCt0ZnhNMkNjWW9TTjdsNklqRVd1U0hmZUQvSHZxSlBCSER1RnVHRE1wcExXT3dCVURINkcwdWJuNm9LcElnWVJLbkFCa0Ryc2NvNEN2eWZOdU0xK0F3NFF5QmoxVEo3UVJmdm1EUzVQdDhZWlFaaHhJQVYyUjR2Z2hqaURyQlVHZklNL1MvTU9ENlRMYk1jZ3g1em9HOExoUGJDVnc3YzA5Qk9nTXVQZ1IyQU1hODZyUnFHRitGKzlLQTYxa09VZVdYQWswMGxUd0ZTZDNrZkRXUlFwejJUeGlIeEptQkZQSXJZS2xUMzFjYkR2SWRYcTQvWXdEaXZFM0NoYytaQ1pEbnY1dWR4Vm1jeFZtY2dSRDVINkpMbFNPd3FxRE9BQUFBQUVsRlRrU3VRbUNDIn0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksdC5kKGUsIk9CSkxvYWRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIGh9KSk7dmFyIG49dCgwKTtjb25zdCBpPS9eW29nXVxzKiguKyk/LyxyPS9ebXRsbGliIC8sbz0vXnVzZW10bCAvLHM9L151c2VtYXAgLyxhPS9ccysvLEI9bmV3IG4uVmVjdG9yMyxjPW5ldyBuLlZlY3RvcjMsZz1uZXcgbi5WZWN0b3IzLEU9bmV3IG4uVmVjdG9yMyxRPW5ldyBuLlZlY3RvcjMsdT1uZXcgbi5Db2xvcjtmdW5jdGlvbiBsKCl7Y29uc3QgQT17b2JqZWN0czpbXSxvYmplY3Q6e30sdmVydGljZXM6W10sbm9ybWFsczpbXSxjb2xvcnM6W10sdXZzOltdLG1hdGVyaWFsczp7fSxtYXRlcmlhbExpYnJhcmllczpbXSxzdGFydE9iamVjdDpmdW5jdGlvbihBLGUpe2lmKHRoaXMub2JqZWN0JiYhMT09PXRoaXMub2JqZWN0LmZyb21EZWNsYXJhdGlvbilyZXR1cm4gdGhpcy5vYmplY3QubmFtZT1BLHZvaWQodGhpcy5vYmplY3QuZnJvbURlY2xhcmF0aW9uPSExIT09ZSk7Y29uc3QgdD10aGlzLm9iamVjdCYmImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMub2JqZWN0LmN1cnJlbnRNYXRlcmlhbD90aGlzLm9iamVjdC5jdXJyZW50TWF0ZXJpYWwoKTp2b2lkIDA7aWYodGhpcy5vYmplY3QmJiJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLm9iamVjdC5fZmluYWxpemUmJnRoaXMub2JqZWN0Ll9maW5hbGl6ZSghMCksdGhpcy5vYmplY3Q9e25hbWU6QXx8IiIsZnJvbURlY2xhcmF0aW9uOiExIT09ZSxnZW9tZXRyeTp7dmVydGljZXM6W10sbm9ybWFsczpbXSxjb2xvcnM6W10sdXZzOltdLGhhc1VWSW5kaWNlczohMX0sbWF0ZXJpYWxzOltdLHNtb290aDohMCxzdGFydE1hdGVyaWFsOmZ1bmN0aW9uKEEsZSl7Y29uc3QgdD10aGlzLl9maW5hbGl6ZSghMSk7dCYmKHQuaW5oZXJpdGVkfHx0Lmdyb3VwQ291bnQ8PTApJiZ0aGlzLm1hdGVyaWFscy5zcGxpY2UodC5pbmRleCwxKTtjb25zdCBuPXtpbmRleDp0aGlzLm1hdGVyaWFscy5sZW5ndGgsbmFtZTpBfHwiIixtdGxsaWI6QXJyYXkuaXNBcnJheShlKSYmZS5sZW5ndGg+MD9lW2UubGVuZ3RoLTFdOiIiLHNtb290aDp2b2lkIDAhPT10P3Quc21vb3RoOnRoaXMuc21vb3RoLGdyb3VwU3RhcnQ6dm9pZCAwIT09dD90Lmdyb3VwRW5kOjAsZ3JvdXBFbmQ6LTEsZ3JvdXBDb3VudDotMSxpbmhlcml0ZWQ6ITEsY2xvbmU6ZnVuY3Rpb24oQSl7Y29uc3QgZT17aW5kZXg6Im51bWJlciI9PXR5cGVvZiBBP0E6dGhpcy5pbmRleCxuYW1lOnRoaXMubmFtZSxtdGxsaWI6dGhpcy5tdGxsaWIsc21vb3RoOnRoaXMuc21vb3RoLGdyb3VwU3RhcnQ6MCxncm91cEVuZDotMSxncm91cENvdW50Oi0xLGluaGVyaXRlZDohMX07cmV0dXJuIGUuY2xvbmU9dGhpcy5jbG9uZS5iaW5kKGUpLGV9fTtyZXR1cm4gdGhpcy5tYXRlcmlhbHMucHVzaChuKSxufSxjdXJyZW50TWF0ZXJpYWw6ZnVuY3Rpb24oKXtpZih0aGlzLm1hdGVyaWFscy5sZW5ndGg+MClyZXR1cm4gdGhpcy5tYXRlcmlhbHNbdGhpcy5tYXRlcmlhbHMubGVuZ3RoLTFdfSxfZmluYWxpemU6ZnVuY3Rpb24oQSl7Y29uc3QgZT10aGlzLmN1cnJlbnRNYXRlcmlhbCgpO2lmKGUmJi0xPT09ZS5ncm91cEVuZCYmKGUuZ3JvdXBFbmQ9dGhpcy5nZW9tZXRyeS52ZXJ0aWNlcy5sZW5ndGgvMyxlLmdyb3VwQ291bnQ9ZS5ncm91cEVuZC1lLmdyb3VwU3RhcnQsZS5pbmhlcml0ZWQ9ITEpLEEmJnRoaXMubWF0ZXJpYWxzLmxlbmd0aD4xKWZvcihsZXQgQT10aGlzLm1hdGVyaWFscy5sZW5ndGgtMTtBPj0wO0EtLSl0aGlzLm1hdGVyaWFsc1tBXS5ncm91cENvdW50PD0wJiZ0aGlzLm1hdGVyaWFscy5zcGxpY2UoQSwxKTtyZXR1cm4gQSYmMD09PXRoaXMubWF0ZXJpYWxzLmxlbmd0aCYmdGhpcy5tYXRlcmlhbHMucHVzaCh7bmFtZToiIixzbW9vdGg6dGhpcy5zbW9vdGh9KSxlfX0sdCYmdC5uYW1lJiYiZnVuY3Rpb24iPT10eXBlb2YgdC5jbG9uZSl7Y29uc3QgQT10LmNsb25lKDApO0EuaW5oZXJpdGVkPSEwLHRoaXMub2JqZWN0Lm1hdGVyaWFscy5wdXNoKEEpfXRoaXMub2JqZWN0cy5wdXNoKHRoaXMub2JqZWN0KX0sZmluYWxpemU6ZnVuY3Rpb24oKXt0aGlzLm9iamVjdCYmImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMub2JqZWN0Ll9maW5hbGl6ZSYmdGhpcy5vYmplY3QuX2ZpbmFsaXplKCEwKX0scGFyc2VWZXJ0ZXhJbmRleDpmdW5jdGlvbihBLGUpe2NvbnN0IHQ9cGFyc2VJbnQoQSwxMCk7cmV0dXJuIDMqKHQ+PTA/dC0xOnQrZS8zKX0scGFyc2VOb3JtYWxJbmRleDpmdW5jdGlvbihBLGUpe2NvbnN0IHQ9cGFyc2VJbnQoQSwxMCk7cmV0dXJuIDMqKHQ+PTA/dC0xOnQrZS8zKX0scGFyc2VVVkluZGV4OmZ1bmN0aW9uKEEsZSl7Y29uc3QgdD1wYXJzZUludChBLDEwKTtyZXR1cm4gMioodD49MD90LTE6dCtlLzIpfSxhZGRWZXJ0ZXg6ZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dGhpcy52ZXJ0aWNlcyxpPXRoaXMub2JqZWN0Lmdlb21ldHJ5LnZlcnRpY2VzO2kucHVzaChuW0ErMF0sbltBKzFdLG5bQSsyXSksaS5wdXNoKG5bZSswXSxuW2UrMV0sbltlKzJdKSxpLnB1c2goblt0KzBdLG5bdCsxXSxuW3QrMl0pfSxhZGRWZXJ0ZXhQb2ludDpmdW5jdGlvbihBKXtjb25zdCBlPXRoaXMudmVydGljZXM7dGhpcy5vYmplY3QuZ2VvbWV0cnkudmVydGljZXMucHVzaChlW0ErMF0sZVtBKzFdLGVbQSsyXSl9LGFkZFZlcnRleExpbmU6ZnVuY3Rpb24oQSl7Y29uc3QgZT10aGlzLnZlcnRpY2VzO3RoaXMub2JqZWN0Lmdlb21ldHJ5LnZlcnRpY2VzLnB1c2goZVtBKzBdLGVbQSsxXSxlW0ErMl0pfSxhZGROb3JtYWw6ZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dGhpcy5ub3JtYWxzLGk9dGhpcy5vYmplY3QuZ2VvbWV0cnkubm9ybWFscztpLnB1c2gobltBKzBdLG5bQSsxXSxuW0ErMl0pLGkucHVzaChuW2UrMF0sbltlKzFdLG5bZSsyXSksaS5wdXNoKG5bdCswXSxuW3QrMV0sblt0KzJdKX0sYWRkRmFjZU5vcm1hbDpmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10aGlzLnZlcnRpY2VzLGk9dGhpcy5vYmplY3QuZ2VvbWV0cnkubm9ybWFscztCLmZyb21BcnJheShuLEEpLGMuZnJvbUFycmF5KG4sZSksZy5mcm9tQXJyYXkobix0KSxRLnN1YlZlY3RvcnMoZyxjKSxFLnN1YlZlY3RvcnMoQixjKSxRLmNyb3NzKEUpLFEubm9ybWFsaXplKCksaS5wdXNoKFEueCxRLnksUS56KSxpLnB1c2goUS54LFEueSxRLnopLGkucHVzaChRLngsUS55LFEueil9LGFkZENvbG9yOmZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXRoaXMuY29sb3JzLGk9dGhpcy5vYmplY3QuZ2VvbWV0cnkuY29sb3JzO3ZvaWQgMCE9PW5bQV0mJmkucHVzaChuW0ErMF0sbltBKzFdLG5bQSsyXSksdm9pZCAwIT09bltlXSYmaS5wdXNoKG5bZSswXSxuW2UrMV0sbltlKzJdKSx2b2lkIDAhPT1uW3RdJiZpLnB1c2goblt0KzBdLG5bdCsxXSxuW3QrMl0pfSxhZGRVVjpmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10aGlzLnV2cyxpPXRoaXMub2JqZWN0Lmdlb21ldHJ5LnV2cztpLnB1c2gobltBKzBdLG5bQSsxXSksaS5wdXNoKG5bZSswXSxuW2UrMV0pLGkucHVzaChuW3QrMF0sblt0KzFdKX0sYWRkRGVmYXVsdFVWOmZ1bmN0aW9uKCl7Y29uc3QgQT10aGlzLm9iamVjdC5nZW9tZXRyeS51dnM7QS5wdXNoKDAsMCksQS5wdXNoKDAsMCksQS5wdXNoKDAsMCl9LGFkZFVWTGluZTpmdW5jdGlvbihBKXtjb25zdCBlPXRoaXMudXZzO3RoaXMub2JqZWN0Lmdlb21ldHJ5LnV2cy5wdXNoKGVbQSswXSxlW0ErMV0pfSxhZGRGYWNlOmZ1bmN0aW9uKEEsZSx0LG4saSxyLG8scyxhKXtjb25zdCBCPXRoaXMudmVydGljZXMubGVuZ3RoO2xldCBjPXRoaXMucGFyc2VWZXJ0ZXhJbmRleChBLEIpLGc9dGhpcy5wYXJzZVZlcnRleEluZGV4KGUsQiksRT10aGlzLnBhcnNlVmVydGV4SW5kZXgodCxCKTtpZih0aGlzLmFkZFZlcnRleChjLGcsRSksdGhpcy5hZGRDb2xvcihjLGcsRSksdm9pZCAwIT09byYmIiIhPT1vKXtjb25zdCBBPXRoaXMubm9ybWFscy5sZW5ndGg7Yz10aGlzLnBhcnNlTm9ybWFsSW5kZXgobyxBKSxnPXRoaXMucGFyc2VOb3JtYWxJbmRleChzLEEpLEU9dGhpcy5wYXJzZU5vcm1hbEluZGV4KGEsQSksdGhpcy5hZGROb3JtYWwoYyxnLEUpfWVsc2UgdGhpcy5hZGRGYWNlTm9ybWFsKGMsZyxFKTtpZih2b2lkIDAhPT1uJiYiIiE9PW4pe2NvbnN0IEE9dGhpcy51dnMubGVuZ3RoO2M9dGhpcy5wYXJzZVVWSW5kZXgobixBKSxnPXRoaXMucGFyc2VVVkluZGV4KGksQSksRT10aGlzLnBhcnNlVVZJbmRleChyLEEpLHRoaXMuYWRkVVYoYyxnLEUpLHRoaXMub2JqZWN0Lmdlb21ldHJ5Lmhhc1VWSW5kaWNlcz0hMH1lbHNlIHRoaXMuYWRkRGVmYXVsdFVWKCl9LGFkZFBvaW50R2VvbWV0cnk6ZnVuY3Rpb24oQSl7dGhpcy5vYmplY3QuZ2VvbWV0cnkudHlwZT0iUG9pbnRzIjtjb25zdCBlPXRoaXMudmVydGljZXMubGVuZ3RoO2ZvcihsZXQgdD0wLG49QS5sZW5ndGg7dDxuO3QrKyl7Y29uc3Qgbj10aGlzLnBhcnNlVmVydGV4SW5kZXgoQVt0XSxlKTt0aGlzLmFkZFZlcnRleFBvaW50KG4pLHRoaXMuYWRkQ29sb3Iobil9fSxhZGRMaW5lR2VvbWV0cnk6ZnVuY3Rpb24oQSxlKXt0aGlzLm9iamVjdC5nZW9tZXRyeS50eXBlPSJMaW5lIjtjb25zdCB0PXRoaXMudmVydGljZXMubGVuZ3RoLG49dGhpcy51dnMubGVuZ3RoO2ZvcihsZXQgZT0wLG49QS5sZW5ndGg7ZTxuO2UrKyl0aGlzLmFkZFZlcnRleExpbmUodGhpcy5wYXJzZVZlcnRleEluZGV4KEFbZV0sdCkpO2ZvcihsZXQgQT0wLHQ9ZS5sZW5ndGg7QTx0O0ErKyl0aGlzLmFkZFVWTGluZSh0aGlzLnBhcnNlVVZJbmRleChlW0FdLG4pKX19O3JldHVybiBBLnN0YXJ0T2JqZWN0KCIiLCExKSxBfWNsYXNzIGggZXh0ZW5kcyBuLkxvYWRlcntjb25zdHJ1Y3RvcihBKXtzdXBlcihBKSx0aGlzLm1hdGVyaWFscz1udWxsfWxvYWQoQSxlLHQsaSl7Y29uc3Qgcj10aGlzLG89bmV3IG4uRmlsZUxvYWRlcih0aGlzLm1hbmFnZXIpO28uc2V0UGF0aCh0aGlzLnBhdGgpLG8uc2V0UmVxdWVzdEhlYWRlcih0aGlzLnJlcXVlc3RIZWFkZXIpLG8uc2V0V2l0aENyZWRlbnRpYWxzKHRoaXMud2l0aENyZWRlbnRpYWxzKSxvLmxvYWQoQSwoZnVuY3Rpb24odCl7dHJ5e2Uoci5wYXJzZSh0KSl9Y2F0Y2goZSl7aT9pKGUpOmNvbnNvbGUuZXJyb3IoZSksci5tYW5hZ2VyLml0ZW1FcnJvcihBKX19KSx0LGkpfXNldE1hdGVyaWFscyhBKXtyZXR1cm4gdGhpcy5tYXRlcmlhbHM9QSx0aGlzfXBhcnNlKEEpe2NvbnN0IGU9bmV3IGw7LTEhPT1BLmluZGV4T2YoIlxyXG4iKSYmKEE9QS5yZXBsYWNlKC9cclxuL2csIlxuIikpLC0xIT09QS5pbmRleE9mKCJcXFxuIikmJihBPUEucmVwbGFjZSgvXFxcbi9nLCIiKSk7Y29uc3QgdD1BLnNwbGl0KCJcbiIpO2xldCBCPVtdO2ZvcihsZXQgQT0wLG49dC5sZW5ndGg7QTxuO0ErKyl7Y29uc3Qgbj10W0FdLnRyaW1TdGFydCgpO2lmKDA9PT1uLmxlbmd0aCljb250aW51ZTtjb25zdCBjPW4uY2hhckF0KDApO2lmKCIjIiE9PWMpaWYoInYiPT09Yyl7Y29uc3QgQT1uLnNwbGl0KGEpO3N3aXRjaChBWzBdKXtjYXNlInYiOmUudmVydGljZXMucHVzaChwYXJzZUZsb2F0KEFbMV0pLHBhcnNlRmxvYXQoQVsyXSkscGFyc2VGbG9hdChBWzNdKSksQS5sZW5ndGg+PTc/KHUuc2V0UkdCKHBhcnNlRmxvYXQoQVs0XSkscGFyc2VGbG9hdChBWzVdKSxwYXJzZUZsb2F0KEFbNl0pKS5jb252ZXJ0U1JHQlRvTGluZWFyKCksZS5jb2xvcnMucHVzaCh1LnIsdS5nLHUuYikpOmUuY29sb3JzLnB1c2godm9pZCAwLHZvaWQgMCx2b2lkIDApO2JyZWFrO2Nhc2Uidm4iOmUubm9ybWFscy5wdXNoKHBhcnNlRmxvYXQoQVsxXSkscGFyc2VGbG9hdChBWzJdKSxwYXJzZUZsb2F0KEFbM10pKTticmVhaztjYXNlInZ0IjplLnV2cy5wdXNoKHBhcnNlRmxvYXQoQVsxXSkscGFyc2VGbG9hdChBWzJdKSl9fWVsc2UgaWYoImYiPT09Yyl7Y29uc3QgQT1uLnNsaWNlKDEpLnRyaW0oKS5zcGxpdChhKSx0PVtdO2ZvcihsZXQgZT0wLG49QS5sZW5ndGg7ZTxuO2UrKyl7Y29uc3Qgbj1BW2VdO2lmKG4ubGVuZ3RoPjApe2NvbnN0IEE9bi5zcGxpdCgiLyIpO3QucHVzaChBKX19Y29uc3QgaT10WzBdO2ZvcihsZXQgQT0xLG49dC5sZW5ndGgtMTtBPG47QSsrKXtjb25zdCBuPXRbQV0scj10W0ErMV07ZS5hZGRGYWNlKGlbMF0sblswXSxyWzBdLGlbMV0sblsxXSxyWzFdLGlbMl0sblsyXSxyWzJdKX19ZWxzZSBpZigibCI9PT1jKXtjb25zdCBBPW4uc3Vic3RyaW5nKDEpLnRyaW0oKS5zcGxpdCgiICIpO2xldCB0PVtdO2NvbnN0IGk9W107aWYoLTE9PT1uLmluZGV4T2YoIi8iKSl0PUE7ZWxzZSBmb3IobGV0IGU9MCxuPUEubGVuZ3RoO2U8bjtlKyspe2NvbnN0IG49QVtlXS5zcGxpdCgiLyIpOyIiIT09blswXSYmdC5wdXNoKG5bMF0pLCIiIT09blsxXSYmaS5wdXNoKG5bMV0pfWUuYWRkTGluZUdlb21ldHJ5KHQsaSl9ZWxzZSBpZigicCI9PT1jKXtjb25zdCBBPW4uc2xpY2UoMSkudHJpbSgpLnNwbGl0KCIgIik7ZS5hZGRQb2ludEdlb21ldHJ5KEEpfWVsc2UgaWYobnVsbCE9PShCPWkuZXhlYyhuKSkpe2NvbnN0IEE9KCIgIitCWzBdLnNsaWNlKDEpLnRyaW0oKSkuc2xpY2UoMSk7ZS5zdGFydE9iamVjdChBKX1lbHNlIGlmKG8udGVzdChuKSllLm9iamVjdC5zdGFydE1hdGVyaWFsKG4uc3Vic3RyaW5nKDcpLnRyaW0oKSxlLm1hdGVyaWFsTGlicmFyaWVzKTtlbHNlIGlmKHIudGVzdChuKSllLm1hdGVyaWFsTGlicmFyaWVzLnB1c2gobi5zdWJzdHJpbmcoNykudHJpbSgpKTtlbHNlIGlmKHMudGVzdChuKSljb25zb2xlLndhcm4oJ1RIUkVFLk9CSkxvYWRlcjogUmVuZGVyaW5nIGlkZW50aWZpZXIgInVzZW1hcCIgbm90IHN1cHBvcnRlZC4gVGV4dHVyZXMgbXVzdCBiZSBkZWZpbmVkIGluIE1UTCBmaWxlcy4nKTtlbHNlIGlmKCJzIj09PWMpe2lmKEI9bi5zcGxpdCgiICIpLEIubGVuZ3RoPjEpe2NvbnN0IEE9QlsxXS50cmltKCkudG9Mb3dlckNhc2UoKTtlLm9iamVjdC5zbW9vdGg9IjAiIT09QSYmIm9mZiIhPT1BfWVsc2UgZS5vYmplY3Quc21vb3RoPSEwO2NvbnN0IEE9ZS5vYmplY3QuY3VycmVudE1hdGVyaWFsKCk7QSYmKEEuc21vb3RoPWUub2JqZWN0LnNtb290aCl9ZWxzZXtpZigiXDAiPT09biljb250aW51ZTtjb25zb2xlLndhcm4oJ1RIUkVFLk9CSkxvYWRlcjogVW5leHBlY3RlZCBsaW5lOiAiJytuKyciJyl9fWUuZmluYWxpemUoKTtjb25zdCBjPW5ldyBuLkdyb3VwO2MubWF0ZXJpYWxMaWJyYXJpZXM9W10uY29uY2F0KGUubWF0ZXJpYWxMaWJyYXJpZXMpO2lmKCEwPT09ISgxPT09ZS5vYmplY3RzLmxlbmd0aCYmMD09PWUub2JqZWN0c1swXS5nZW9tZXRyeS52ZXJ0aWNlcy5sZW5ndGgpKWZvcihsZXQgQT0wLHQ9ZS5vYmplY3RzLmxlbmd0aDtBPHQ7QSsrKXtjb25zdCB0PWUub2JqZWN0c1tBXSxpPXQuZ2VvbWV0cnkscj10Lm1hdGVyaWFscyxvPSJMaW5lIj09PWkudHlwZSxzPSJQb2ludHMiPT09aS50eXBlO2xldCBhPSExO2lmKDA9PT1pLnZlcnRpY2VzLmxlbmd0aCljb250aW51ZTtjb25zdCBCPW5ldyBuLkJ1ZmZlckdlb21ldHJ5O0Iuc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG4uRmxvYXQzMkJ1ZmZlckF0dHJpYnV0ZShpLnZlcnRpY2VzLDMpKSxpLm5vcm1hbHMubGVuZ3RoPjAmJkIuc2V0QXR0cmlidXRlKCJub3JtYWwiLG5ldyBuLkZsb2F0MzJCdWZmZXJBdHRyaWJ1dGUoaS5ub3JtYWxzLDMpKSxpLmNvbG9ycy5sZW5ndGg+MCYmKGE9ITAsQi5zZXRBdHRyaWJ1dGUoImNvbG9yIixuZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKGkuY29sb3JzLDMpKSksITA9PT1pLmhhc1VWSW5kaWNlcyYmQi5zZXRBdHRyaWJ1dGUoInV2IixuZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKGkudXZzLDIpKTtjb25zdCBnPVtdO2ZvcihsZXQgQT0wLHQ9ci5sZW5ndGg7QTx0O0ErKyl7Y29uc3QgdD1yW0FdLGk9dC5uYW1lKyJfIit0LnNtb290aCsiXyIrYTtsZXQgQj1lLm1hdGVyaWFsc1tpXTtpZihudWxsIT09dGhpcy5tYXRlcmlhbHMpaWYoQj10aGlzLm1hdGVyaWFscy5jcmVhdGUodC5uYW1lKSwhb3x8IUJ8fEIgaW5zdGFuY2VvZiBuLkxpbmVCYXNpY01hdGVyaWFsKXtpZihzJiZCJiYhKEIgaW5zdGFuY2VvZiBuLlBvaW50c01hdGVyaWFsKSl7Y29uc3QgQT1uZXcgbi5Qb2ludHNNYXRlcmlhbCh7c2l6ZToxMCxzaXplQXR0ZW51YXRpb246ITF9KTtuLk1hdGVyaWFsLnByb3RvdHlwZS5jb3B5LmNhbGwoQSxCKSxBLmNvbG9yLmNvcHkoQi5jb2xvciksQS5tYXA9Qi5tYXAsQj1BfX1lbHNle2NvbnN0IEE9bmV3IG4uTGluZUJhc2ljTWF0ZXJpYWw7bi5NYXRlcmlhbC5wcm90b3R5cGUuY29weS5jYWxsKEEsQiksQS5jb2xvci5jb3B5KEIuY29sb3IpLEI9QX12b2lkIDA9PT1CJiYoQj1vP25ldyBuLkxpbmVCYXNpY01hdGVyaWFsOnM/bmV3IG4uUG9pbnRzTWF0ZXJpYWwoe3NpemU6MSxzaXplQXR0ZW51YXRpb246ITF9KTpuZXcgbi5NZXNoUGhvbmdNYXRlcmlhbCxCLm5hbWU9dC5uYW1lLEIuZmxhdFNoYWRpbmc9IXQuc21vb3RoLEIudmVydGV4Q29sb3JzPWEsZS5tYXRlcmlhbHNbaV09QiksZy5wdXNoKEIpfWxldCBFO2lmKGcubGVuZ3RoPjEpe2ZvcihsZXQgQT0wLGU9ci5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1yW0FdO0IuYWRkR3JvdXAoZS5ncm91cFN0YXJ0LGUuZ3JvdXBDb3VudCxBKX1FPW8/bmV3IG4uTGluZVNlZ21lbnRzKEIsZyk6cz9uZXcgbi5Qb2ludHMoQixnKTpuZXcgbi5NZXNoKEIsZyl9ZWxzZSBFPW8/bmV3IG4uTGluZVNlZ21lbnRzKEIsZ1swXSk6cz9uZXcgbi5Qb2ludHMoQixnWzBdKTpuZXcgbi5NZXNoKEIsZ1swXSk7RS5uYW1lPXQubmFtZSxjLmFkZChFKX1lbHNlIGlmKGUudmVydGljZXMubGVuZ3RoPjApe2NvbnN0IEE9bmV3IG4uUG9pbnRzTWF0ZXJpYWwoe3NpemU6MSxzaXplQXR0ZW51YXRpb246ITF9KSx0PW5ldyBuLkJ1ZmZlckdlb21ldHJ5O3Quc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG4uRmxvYXQzMkJ1ZmZlckF0dHJpYnV0ZShlLnZlcnRpY2VzLDMpKSxlLmNvbG9ycy5sZW5ndGg+MCYmdm9pZCAwIT09ZS5jb2xvcnNbMF0mJih0LnNldEF0dHJpYnV0ZSgiY29sb3IiLG5ldyBuLkZsb2F0MzJCdWZmZXJBdHRyaWJ1dGUoZS5jb2xvcnMsMykpLEEudmVydGV4Q29sb3JzPSEwKTtjb25zdCBpPW5ldyBuLlBvaW50cyh0LEEpO2MuYWRkKGkpfXJldHVybiBjfX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLHQuZChlLCJHTFRGTG9hZGVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gcn0pKTt2YXIgbj10KDApLGk9dCg1Mik7Y2xhc3MgciBleHRlbmRzIG4uTG9hZGVye2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpLHRoaXMuZHJhY29Mb2FkZXI9bnVsbCx0aGlzLmt0eDJMb2FkZXI9bnVsbCx0aGlzLm1lc2hvcHREZWNvZGVyPW51bGwsdGhpcy5wbHVnaW5DYWxsYmFja3M9W10sdGhpcy5yZWdpc3RlcigoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBnKEEpfSkpLHRoaXMucmVnaXN0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgSShBKX0pKSx0aGlzLnJlZ2lzdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IE0oQSl9KSksdGhpcy5yZWdpc3RlcigoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBkKEEpfSkpLHRoaXMucmVnaXN0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgUShBKX0pKSx0aGlzLnJlZ2lzdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IHUoQSl9KSksdGhpcy5yZWdpc3RlcigoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBsKEEpfSkpLHRoaXMucmVnaXN0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgaChBKX0pKSx0aGlzLnJlZ2lzdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IGMoQSl9KSksdGhpcy5yZWdpc3RlcigoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyB3KEEpfSkpLHRoaXMucmVnaXN0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgRShBKX0pKSx0aGlzLnJlZ2lzdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IEMoQSl9KSksdGhpcy5yZWdpc3RlcigoZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyBhKEEpfSkpLHRoaXMucmVnaXN0ZXIoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcChBKX0pKSx0aGlzLnJlZ2lzdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IG0oQSl9KSl9bG9hZChBLGUsdCxpKXtjb25zdCByPXRoaXM7bGV0IG87bz0iIiE9PXRoaXMucmVzb3VyY2VQYXRoP3RoaXMucmVzb3VyY2VQYXRoOiIiIT09dGhpcy5wYXRoP3RoaXMucGF0aDpuLkxvYWRlclV0aWxzLmV4dHJhY3RVcmxCYXNlKEEpLHRoaXMubWFuYWdlci5pdGVtU3RhcnQoQSk7Y29uc3Qgcz1mdW5jdGlvbihlKXtpP2koZSk6Y29uc29sZS5lcnJvcihlKSxyLm1hbmFnZXIuaXRlbUVycm9yKEEpLHIubWFuYWdlci5pdGVtRW5kKEEpfSxhPW5ldyBuLkZpbGVMb2FkZXIodGhpcy5tYW5hZ2VyKTthLnNldFBhdGgodGhpcy5wYXRoKSxhLnNldFJlc3BvbnNlVHlwZSgiYXJyYXlidWZmZXIiKSxhLnNldFJlcXVlc3RIZWFkZXIodGhpcy5yZXF1ZXN0SGVhZGVyKSxhLnNldFdpdGhDcmVkZW50aWFscyh0aGlzLndpdGhDcmVkZW50aWFscyksYS5sb2FkKEEsKGZ1bmN0aW9uKHQpe3RyeXtyLnBhcnNlKHQsbywoZnVuY3Rpb24odCl7ZSh0KSxyLm1hbmFnZXIuaXRlbUVuZChBKX0pLHMpfWNhdGNoKEEpe3MoQSl9fSksdCxzKX1zZXREUkFDT0xvYWRlcihBKXtyZXR1cm4gdGhpcy5kcmFjb0xvYWRlcj1BLHRoaXN9c2V0RERTTG9hZGVyKCl7dGhyb3cgbmV3IEVycm9yKCdUSFJFRS5HTFRGTG9hZGVyOiAiTVNGVF90ZXh0dXJlX2RkcyIgbm8gbG9uZ2VyIHN1cHBvcnRlZC4gUGxlYXNlIHVwZGF0ZSB0byAiS0hSX3RleHR1cmVfYmFzaXN1Ii4nKX1zZXRLVFgyTG9hZGVyKEEpe3JldHVybiB0aGlzLmt0eDJMb2FkZXI9QSx0aGlzfXNldE1lc2hvcHREZWNvZGVyKEEpe3JldHVybiB0aGlzLm1lc2hvcHREZWNvZGVyPUEsdGhpc31yZWdpc3RlcihBKXtyZXR1cm4tMT09PXRoaXMucGx1Z2luQ2FsbGJhY2tzLmluZGV4T2YoQSkmJnRoaXMucGx1Z2luQ2FsbGJhY2tzLnB1c2goQSksdGhpc311bnJlZ2lzdGVyKEEpe3JldHVybi0xIT09dGhpcy5wbHVnaW5DYWxsYmFja3MuaW5kZXhPZihBKSYmdGhpcy5wbHVnaW5DYWxsYmFja3Muc3BsaWNlKHRoaXMucGx1Z2luQ2FsbGJhY2tzLmluZGV4T2YoQSksMSksdGhpc31wYXJzZShBLGUsdCxuKXtsZXQgaTtjb25zdCByPXt9LG89e30sYT1uZXcgVGV4dERlY29kZXI7aWYoInN0cmluZyI9PXR5cGVvZiBBKWk9SlNPTi5wYXJzZShBKTtlbHNlIGlmKEEgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcil7aWYoYS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoQSwwLDQpKT09PUYpe3RyeXtyW3MuS0hSX0JJTkFSWV9HTFRGXT1uZXcgZihBKX1jYXRjaChBKXtyZXR1cm4gdm9pZChuJiZuKEEpKX1pPUpTT04ucGFyc2UocltzLktIUl9CSU5BUllfR0xURl0uY29udGVudCl9ZWxzZSBpPUpTT04ucGFyc2UoYS5kZWNvZGUoQSkpfWVsc2UgaT1BO2lmKHZvaWQgMD09PWkuYXNzZXR8fGkuYXNzZXQudmVyc2lvblswXTwyKXJldHVybiB2b2lkKG4mJm4obmV3IEVycm9yKCJUSFJFRS5HTFRGTG9hZGVyOiBVbnN1cHBvcnRlZCBhc3NldC4gZ2xURiB2ZXJzaW9ucyA+PTIuMCBhcmUgc3VwcG9ydGVkLiIpKSk7Y29uc3QgYz1uZXcgcShpLHtwYXRoOmV8fHRoaXMucmVzb3VyY2VQYXRofHwiIixjcm9zc09yaWdpbjp0aGlzLmNyb3NzT3JpZ2luLHJlcXVlc3RIZWFkZXI6dGhpcy5yZXF1ZXN0SGVhZGVyLG1hbmFnZXI6dGhpcy5tYW5hZ2VyLGt0eDJMb2FkZXI6dGhpcy5rdHgyTG9hZGVyLG1lc2hvcHREZWNvZGVyOnRoaXMubWVzaG9wdERlY29kZXJ9KTtjLmZpbGVMb2FkZXIuc2V0UmVxdWVzdEhlYWRlcih0aGlzLnJlcXVlc3RIZWFkZXIpO2ZvcihsZXQgQT0wO0E8dGhpcy5wbHVnaW5DYWxsYmFja3MubGVuZ3RoO0ErKyl7Y29uc3QgZT10aGlzLnBsdWdpbkNhbGxiYWNrc1tBXShjKTtvW2UubmFtZV09ZSxyW2UubmFtZV09ITB9aWYoaS5leHRlbnNpb25zVXNlZClmb3IobGV0IEE9MDtBPGkuZXh0ZW5zaW9uc1VzZWQubGVuZ3RoOysrQSl7Y29uc3QgZT1pLmV4dGVuc2lvbnNVc2VkW0FdLHQ9aS5leHRlbnNpb25zUmVxdWlyZWR8fFtdO3N3aXRjaChlKXtjYXNlIHMuS0hSX01BVEVSSUFMU19VTkxJVDpyW2VdPW5ldyBCO2JyZWFrO2Nhc2Ugcy5LSFJfRFJBQ09fTUVTSF9DT01QUkVTU0lPTjpyW2VdPW5ldyBOKGksdGhpcy5kcmFjb0xvYWRlcik7YnJlYWs7Y2FzZSBzLktIUl9URVhUVVJFX1RSQU5TRk9STTpyW2VdPW5ldyBVO2JyZWFrO2Nhc2Ugcy5LSFJfTUVTSF9RVUFOVElaQVRJT046cltlXT1uZXcgeTticmVhaztkZWZhdWx0OnQuaW5kZXhPZihlKT49MCYmdm9pZCAwPT09b1tlXSYmY29uc29sZS53YXJuKCdUSFJFRS5HTFRGTG9hZGVyOiBVbmtub3duIGV4dGVuc2lvbiAiJytlKyciLicpfX1jLnNldEV4dGVuc2lvbnMociksYy5zZXRQbHVnaW5zKG8pLGMucGFyc2UodCxuKX1wYXJzZUFzeW5jKEEsZSl7Y29uc3QgdD10aGlzO3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24obixpKXt0LnBhcnNlKEEsZSxuLGkpfSkpfX1mdW5jdGlvbiBvKCl7bGV0IEE9e307cmV0dXJue2dldDpmdW5jdGlvbihlKXtyZXR1cm4gQVtlXX0sYWRkOmZ1bmN0aW9uKGUsdCl7QVtlXT10fSxyZW1vdmU6ZnVuY3Rpb24oZSl7ZGVsZXRlIEFbZV19LHJlbW92ZUFsbDpmdW5jdGlvbigpe0E9e319fX1jb25zdCBzPXtLSFJfQklOQVJZX0dMVEY6IktIUl9iaW5hcnlfZ2xURiIsS0hSX0RSQUNPX01FU0hfQ09NUFJFU1NJT046IktIUl9kcmFjb19tZXNoX2NvbXByZXNzaW9uIixLSFJfTElHSFRTX1BVTkNUVUFMOiJLSFJfbGlnaHRzX3B1bmN0dWFsIixLSFJfTUFURVJJQUxTX0NMRUFSQ09BVDoiS0hSX21hdGVyaWFsc19jbGVhcmNvYXQiLEtIUl9NQVRFUklBTFNfSU9SOiJLSFJfbWF0ZXJpYWxzX2lvciIsS0hSX01BVEVSSUFMU19TSEVFTjoiS0hSX21hdGVyaWFsc19zaGVlbiIsS0hSX01BVEVSSUFMU19TUEVDVUxBUjoiS0hSX21hdGVyaWFsc19zcGVjdWxhciIsS0hSX01BVEVSSUFMU19UUkFOU01JU1NJT046IktIUl9tYXRlcmlhbHNfdHJhbnNtaXNzaW9uIixLSFJfTUFURVJJQUxTX0lSSURFU0NFTkNFOiJLSFJfbWF0ZXJpYWxzX2lyaWRlc2NlbmNlIixLSFJfTUFURVJJQUxTX0FOSVNPVFJPUFk6IktIUl9tYXRlcmlhbHNfYW5pc290cm9weSIsS0hSX01BVEVSSUFMU19VTkxJVDoiS0hSX21hdGVyaWFsc191bmxpdCIsS0hSX01BVEVSSUFMU19WT0xVTUU6IktIUl9tYXRlcmlhbHNfdm9sdW1lIixLSFJfVEVYVFVSRV9CQVNJU1U6IktIUl90ZXh0dXJlX2Jhc2lzdSIsS0hSX1RFWFRVUkVfVFJBTlNGT1JNOiJLSFJfdGV4dHVyZV90cmFuc2Zvcm0iLEtIUl9NRVNIX1FVQU5USVpBVElPTjoiS0hSX21lc2hfcXVhbnRpemF0aW9uIixLSFJfTUFURVJJQUxTX0VNSVNTSVZFX1NUUkVOR1RIOiJLSFJfbWF0ZXJpYWxzX2VtaXNzaXZlX3N0cmVuZ3RoIixFWFRfVEVYVFVSRV9XRUJQOiJFWFRfdGV4dHVyZV93ZWJwIixFWFRfVEVYVFVSRV9BVklGOiJFWFRfdGV4dHVyZV9hdmlmIixFWFRfTUVTSE9QVF9DT01QUkVTU0lPTjoiRVhUX21lc2hvcHRfY29tcHJlc3Npb24iLEVYVF9NRVNIX0dQVV9JTlNUQU5DSU5HOiJFWFRfbWVzaF9ncHVfaW5zdGFuY2luZyJ9O2NsYXNzIGF7Y29uc3RydWN0b3IoQSl7dGhpcy5wYXJzZXI9QSx0aGlzLm5hbWU9cy5LSFJfTElHSFRTX1BVTkNUVUFMLHRoaXMuY2FjaGU9e3JlZnM6e30sdXNlczp7fX19X21hcmtEZWZzKCl7Y29uc3QgQT10aGlzLnBhcnNlcixlPXRoaXMucGFyc2VyLmpzb24ubm9kZXN8fFtdO2ZvcihsZXQgdD0wLG49ZS5sZW5ndGg7dDxuO3QrKyl7Y29uc3Qgbj1lW3RdO24uZXh0ZW5zaW9ucyYmbi5leHRlbnNpb25zW3RoaXMubmFtZV0mJnZvaWQgMCE9PW4uZXh0ZW5zaW9uc1t0aGlzLm5hbWVdLmxpZ2h0JiZBLl9hZGROb2RlUmVmKHRoaXMuY2FjaGUsbi5leHRlbnNpb25zW3RoaXMubmFtZV0ubGlnaHQpfX1fbG9hZExpZ2h0KEEpe2NvbnN0IGU9dGhpcy5wYXJzZXIsdD0ibGlnaHQ6IitBO2xldCBpPWUuY2FjaGUuZ2V0KHQpO2lmKGkpcmV0dXJuIGk7Y29uc3Qgcj1lLmpzb24sbz0oKHIuZXh0ZW5zaW9ucyYmci5leHRlbnNpb25zW3RoaXMubmFtZV18fHt9KS5saWdodHN8fFtdKVtBXTtsZXQgcztjb25zdCBhPW5ldyBuLkNvbG9yKDE2Nzc3MjE1KTt2b2lkIDAhPT1vLmNvbG9yJiZhLmZyb21BcnJheShvLmNvbG9yKTtjb25zdCBCPXZvaWQgMCE9PW8ucmFuZ2U/by5yYW5nZTowO3N3aXRjaChvLnR5cGUpe2Nhc2UiZGlyZWN0aW9uYWwiOnM9bmV3IG4uRGlyZWN0aW9uYWxMaWdodChhKSxzLnRhcmdldC5wb3NpdGlvbi5zZXQoMCwwLC0xKSxzLmFkZChzLnRhcmdldCk7YnJlYWs7Y2FzZSJwb2ludCI6cz1uZXcgbi5Qb2ludExpZ2h0KGEpLHMuZGlzdGFuY2U9QjticmVhaztjYXNlInNwb3QiOnM9bmV3IG4uU3BvdExpZ2h0KGEpLHMuZGlzdGFuY2U9QixvLnNwb3Q9by5zcG90fHx7fSxvLnNwb3QuaW5uZXJDb25lQW5nbGU9dm9pZCAwIT09by5zcG90LmlubmVyQ29uZUFuZ2xlP28uc3BvdC5pbm5lckNvbmVBbmdsZTowLG8uc3BvdC5vdXRlckNvbmVBbmdsZT12b2lkIDAhPT1vLnNwb3Qub3V0ZXJDb25lQW5nbGU/by5zcG90Lm91dGVyQ29uZUFuZ2xlOk1hdGguUEkvNCxzLmFuZ2xlPW8uc3BvdC5vdXRlckNvbmVBbmdsZSxzLnBlbnVtYnJhPTEtby5zcG90LmlubmVyQ29uZUFuZ2xlL28uc3BvdC5vdXRlckNvbmVBbmdsZSxzLnRhcmdldC5wb3NpdGlvbi5zZXQoMCwwLC0xKSxzLmFkZChzLnRhcmdldCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoIlRIUkVFLkdMVEZMb2FkZXI6IFVuZXhwZWN0ZWQgbGlnaHQgdHlwZTogIitvLnR5cGUpfXJldHVybiBzLnBvc2l0aW9uLnNldCgwLDAsMCkscy5kZWNheT0yLFYocyxvKSx2b2lkIDAhPT1vLmludGVuc2l0eSYmKHMuaW50ZW5zaXR5PW8uaW50ZW5zaXR5KSxzLm5hbWU9ZS5jcmVhdGVVbmlxdWVOYW1lKG8ubmFtZXx8ImxpZ2h0XyIrQSksaT1Qcm9taXNlLnJlc29sdmUocyksZS5jYWNoZS5hZGQodCxpKSxpfWdldERlcGVuZGVuY3koQSxlKXtpZigibGlnaHQiPT09QSlyZXR1cm4gdGhpcy5fbG9hZExpZ2h0KGUpfWNyZWF0ZU5vZGVBdHRhY2htZW50KEEpe2NvbnN0IGU9dGhpcyx0PXRoaXMucGFyc2VyLG49dC5qc29uLm5vZGVzW0FdLGk9KG4uZXh0ZW5zaW9ucyYmbi5leHRlbnNpb25zW3RoaXMubmFtZV18fHt9KS5saWdodDtyZXR1cm4gdm9pZCAwPT09aT9udWxsOnRoaXMuX2xvYWRMaWdodChpKS50aGVuKChmdW5jdGlvbihBKXtyZXR1cm4gdC5fZ2V0Tm9kZVJlZihlLmNhY2hlLGksQSl9KSl9fWNsYXNzIEJ7Y29uc3RydWN0b3IoKXt0aGlzLm5hbWU9cy5LSFJfTUFURVJJQUxTX1VOTElUfWdldE1hdGVyaWFsVHlwZSgpe3JldHVybiBuLk1lc2hCYXNpY01hdGVyaWFsfWV4dGVuZFBhcmFtcyhBLGUsdCl7Y29uc3QgaT1bXTtBLmNvbG9yPW5ldyBuLkNvbG9yKDEsMSwxKSxBLm9wYWNpdHk9MTtjb25zdCByPWUucGJyTWV0YWxsaWNSb3VnaG5lc3M7aWYocil7aWYoQXJyYXkuaXNBcnJheShyLmJhc2VDb2xvckZhY3Rvcikpe2NvbnN0IGU9ci5iYXNlQ29sb3JGYWN0b3I7QS5jb2xvci5mcm9tQXJyYXkoZSksQS5vcGFjaXR5PWVbM119dm9pZCAwIT09ci5iYXNlQ29sb3JUZXh0dXJlJiZpLnB1c2godC5hc3NpZ25UZXh0dXJlKEEsIm1hcCIsci5iYXNlQ29sb3JUZXh0dXJlLG4uU1JHQkNvbG9yU3BhY2UpKX1yZXR1cm4gUHJvbWlzZS5hbGwoaSl9fWNsYXNzIGN7Y29uc3RydWN0b3IoQSl7dGhpcy5wYXJzZXI9QSx0aGlzLm5hbWU9cy5LSFJfTUFURVJJQUxTX0VNSVNTSVZFX1NUUkVOR1RIfWV4dGVuZE1hdGVyaWFsUGFyYW1zKEEsZSl7Y29uc3QgdD10aGlzLnBhcnNlci5qc29uLm1hdGVyaWFsc1tBXTtpZighdC5leHRlbnNpb25zfHwhdC5leHRlbnNpb25zW3RoaXMubmFtZV0pcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2NvbnN0IG49dC5leHRlbnNpb25zW3RoaXMubmFtZV0uZW1pc3NpdmVTdHJlbmd0aDtyZXR1cm4gdm9pZCAwIT09biYmKGUuZW1pc3NpdmVJbnRlbnNpdHk9biksUHJvbWlzZS5yZXNvbHZlKCl9fWNsYXNzIGd7Y29uc3RydWN0b3IoQSl7dGhpcy5wYXJzZXI9QSx0aGlzLm5hbWU9cy5LSFJfTUFURVJJQUxTX0NMRUFSQ09BVH1nZXRNYXRlcmlhbFR5cGUoQSl7Y29uc3QgZT10aGlzLnBhcnNlci5qc29uLm1hdGVyaWFsc1tBXTtyZXR1cm4gZS5leHRlbnNpb25zJiZlLmV4dGVuc2lvbnNbdGhpcy5uYW1lXT9uLk1lc2hQaHlzaWNhbE1hdGVyaWFsOm51bGx9ZXh0ZW5kTWF0ZXJpYWxQYXJhbXMoQSxlKXtjb25zdCB0PXRoaXMucGFyc2VyLGk9dC5qc29uLm1hdGVyaWFsc1tBXTtpZighaS5leHRlbnNpb25zfHwhaS5leHRlbnNpb25zW3RoaXMubmFtZV0pcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2NvbnN0IHI9W10sbz1pLmV4dGVuc2lvbnNbdGhpcy5uYW1lXTtpZih2b2lkIDAhPT1vLmNsZWFyY29hdEZhY3RvciYmKGUuY2xlYXJjb2F0PW8uY2xlYXJjb2F0RmFjdG9yKSx2b2lkIDAhPT1vLmNsZWFyY29hdFRleHR1cmUmJnIucHVzaCh0LmFzc2lnblRleHR1cmUoZSwiY2xlYXJjb2F0TWFwIixvLmNsZWFyY29hdFRleHR1cmUpKSx2b2lkIDAhPT1vLmNsZWFyY29hdFJvdWdobmVzc0ZhY3RvciYmKGUuY2xlYXJjb2F0Um91Z2huZXNzPW8uY2xlYXJjb2F0Um91Z2huZXNzRmFjdG9yKSx2b2lkIDAhPT1vLmNsZWFyY29hdFJvdWdobmVzc1RleHR1cmUmJnIucHVzaCh0LmFzc2lnblRleHR1cmUoZSwiY2xlYXJjb2F0Um91Z2huZXNzTWFwIixvLmNsZWFyY29hdFJvdWdobmVzc1RleHR1cmUpKSx2b2lkIDAhPT1vLmNsZWFyY29hdE5vcm1hbFRleHR1cmUmJihyLnB1c2godC5hc3NpZ25UZXh0dXJlKGUsImNsZWFyY29hdE5vcm1hbE1hcCIsby5jbGVhcmNvYXROb3JtYWxUZXh0dXJlKSksdm9pZCAwIT09by5jbGVhcmNvYXROb3JtYWxUZXh0dXJlLnNjYWxlKSl7Y29uc3QgQT1vLmNsZWFyY29hdE5vcm1hbFRleHR1cmUuc2NhbGU7ZS5jbGVhcmNvYXROb3JtYWxTY2FsZT1uZXcgbi5WZWN0b3IyKEEsQSl9cmV0dXJuIFByb21pc2UuYWxsKHIpfX1jbGFzcyBFe2NvbnN0cnVjdG9yKEEpe3RoaXMucGFyc2VyPUEsdGhpcy5uYW1lPXMuS0hSX01BVEVSSUFMU19JUklERVNDRU5DRX1nZXRNYXRlcmlhbFR5cGUoQSl7Y29uc3QgZT10aGlzLnBhcnNlci5qc29uLm1hdGVyaWFsc1tBXTtyZXR1cm4gZS5leHRlbnNpb25zJiZlLmV4dGVuc2lvbnNbdGhpcy5uYW1lXT9uLk1lc2hQaHlzaWNhbE1hdGVyaWFsOm51bGx9ZXh0ZW5kTWF0ZXJpYWxQYXJhbXMoQSxlKXtjb25zdCB0PXRoaXMucGFyc2VyLG49dC5qc29uLm1hdGVyaWFsc1tBXTtpZighbi5leHRlbnNpb25zfHwhbi5leHRlbnNpb25zW3RoaXMubmFtZV0pcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2NvbnN0IGk9W10scj1uLmV4dGVuc2lvbnNbdGhpcy5uYW1lXTtyZXR1cm4gdm9pZCAwIT09ci5pcmlkZXNjZW5jZUZhY3RvciYmKGUuaXJpZGVzY2VuY2U9ci5pcmlkZXNjZW5jZUZhY3Rvciksdm9pZCAwIT09ci5pcmlkZXNjZW5jZVRleHR1cmUmJmkucHVzaCh0LmFzc2lnblRleHR1cmUoZSwiaXJpZGVzY2VuY2VNYXAiLHIuaXJpZGVzY2VuY2VUZXh0dXJlKSksdm9pZCAwIT09ci5pcmlkZXNjZW5jZUlvciYmKGUuaXJpZGVzY2VuY2VJT1I9ci5pcmlkZXNjZW5jZUlvciksdm9pZCAwPT09ZS5pcmlkZXNjZW5jZVRoaWNrbmVzc1JhbmdlJiYoZS5pcmlkZXNjZW5jZVRoaWNrbmVzc1JhbmdlPVsxMDAsNDAwXSksdm9pZCAwIT09ci5pcmlkZXNjZW5jZVRoaWNrbmVzc01pbmltdW0mJihlLmlyaWRlc2NlbmNlVGhpY2tuZXNzUmFuZ2VbMF09ci5pcmlkZXNjZW5jZVRoaWNrbmVzc01pbmltdW0pLHZvaWQgMCE9PXIuaXJpZGVzY2VuY2VUaGlja25lc3NNYXhpbXVtJiYoZS5pcmlkZXNjZW5jZVRoaWNrbmVzc1JhbmdlWzFdPXIuaXJpZGVzY2VuY2VUaGlja25lc3NNYXhpbXVtKSx2b2lkIDAhPT1yLmlyaWRlc2NlbmNlVGhpY2tuZXNzVGV4dHVyZSYmaS5wdXNoKHQuYXNzaWduVGV4dHVyZShlLCJpcmlkZXNjZW5jZVRoaWNrbmVzc01hcCIsci5pcmlkZXNjZW5jZVRoaWNrbmVzc1RleHR1cmUpKSxQcm9taXNlLmFsbChpKX19Y2xhc3MgUXtjb25zdHJ1Y3RvcihBKXt0aGlzLnBhcnNlcj1BLHRoaXMubmFtZT1zLktIUl9NQVRFUklBTFNfU0hFRU59Z2V0TWF0ZXJpYWxUeXBlKEEpe2NvbnN0IGU9dGhpcy5wYXJzZXIuanNvbi5tYXRlcmlhbHNbQV07cmV0dXJuIGUuZXh0ZW5zaW9ucyYmZS5leHRlbnNpb25zW3RoaXMubmFtZV0/bi5NZXNoUGh5c2ljYWxNYXRlcmlhbDpudWxsfWV4dGVuZE1hdGVyaWFsUGFyYW1zKEEsZSl7Y29uc3QgdD10aGlzLnBhcnNlcixpPXQuanNvbi5tYXRlcmlhbHNbQV07aWYoIWkuZXh0ZW5zaW9uc3x8IWkuZXh0ZW5zaW9uc1t0aGlzLm5hbWVdKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTtjb25zdCByPVtdO2Uuc2hlZW5Db2xvcj1uZXcgbi5Db2xvcigwLDAsMCksZS5zaGVlblJvdWdobmVzcz0wLGUuc2hlZW49MTtjb25zdCBvPWkuZXh0ZW5zaW9uc1t0aGlzLm5hbWVdO3JldHVybiB2b2lkIDAhPT1vLnNoZWVuQ29sb3JGYWN0b3ImJmUuc2hlZW5Db2xvci5mcm9tQXJyYXkoby5zaGVlbkNvbG9yRmFjdG9yKSx2b2lkIDAhPT1vLnNoZWVuUm91Z2huZXNzRmFjdG9yJiYoZS5zaGVlblJvdWdobmVzcz1vLnNoZWVuUm91Z2huZXNzRmFjdG9yKSx2b2lkIDAhPT1vLnNoZWVuQ29sb3JUZXh0dXJlJiZyLnB1c2godC5hc3NpZ25UZXh0dXJlKGUsInNoZWVuQ29sb3JNYXAiLG8uc2hlZW5Db2xvclRleHR1cmUsbi5TUkdCQ29sb3JTcGFjZSkpLHZvaWQgMCE9PW8uc2hlZW5Sb3VnaG5lc3NUZXh0dXJlJiZyLnB1c2godC5hc3NpZ25UZXh0dXJlKGUsInNoZWVuUm91Z2huZXNzTWFwIixvLnNoZWVuUm91Z2huZXNzVGV4dHVyZSkpLFByb21pc2UuYWxsKHIpfX1jbGFzcyB1e2NvbnN0cnVjdG9yKEEpe3RoaXMucGFyc2VyPUEsdGhpcy5uYW1lPXMuS0hSX01BVEVSSUFMU19UUkFOU01JU1NJT059Z2V0TWF0ZXJpYWxUeXBlKEEpe2NvbnN0IGU9dGhpcy5wYXJzZXIuanNvbi5tYXRlcmlhbHNbQV07cmV0dXJuIGUuZXh0ZW5zaW9ucyYmZS5leHRlbnNpb25zW3RoaXMubmFtZV0/bi5NZXNoUGh5c2ljYWxNYXRlcmlhbDpudWxsfWV4dGVuZE1hdGVyaWFsUGFyYW1zKEEsZSl7Y29uc3QgdD10aGlzLnBhcnNlcixuPXQuanNvbi5tYXRlcmlhbHNbQV07aWYoIW4uZXh0ZW5zaW9uc3x8IW4uZXh0ZW5zaW9uc1t0aGlzLm5hbWVdKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTtjb25zdCBpPVtdLHI9bi5leHRlbnNpb25zW3RoaXMubmFtZV07cmV0dXJuIHZvaWQgMCE9PXIudHJhbnNtaXNzaW9uRmFjdG9yJiYoZS50cmFuc21pc3Npb249ci50cmFuc21pc3Npb25GYWN0b3IpLHZvaWQgMCE9PXIudHJhbnNtaXNzaW9uVGV4dHVyZSYmaS5wdXNoKHQuYXNzaWduVGV4dHVyZShlLCJ0cmFuc21pc3Npb25NYXAiLHIudHJhbnNtaXNzaW9uVGV4dHVyZSkpLFByb21pc2UuYWxsKGkpfX1jbGFzcyBse2NvbnN0cnVjdG9yKEEpe3RoaXMucGFyc2VyPUEsdGhpcy5uYW1lPXMuS0hSX01BVEVSSUFMU19WT0xVTUV9Z2V0TWF0ZXJpYWxUeXBlKEEpe2NvbnN0IGU9dGhpcy5wYXJzZXIuanNvbi5tYXRlcmlhbHNbQV07cmV0dXJuIGUuZXh0ZW5zaW9ucyYmZS5leHRlbnNpb25zW3RoaXMubmFtZV0/bi5NZXNoUGh5c2ljYWxNYXRlcmlhbDpudWxsfWV4dGVuZE1hdGVyaWFsUGFyYW1zKEEsZSl7Y29uc3QgdD10aGlzLnBhcnNlcixpPXQuanNvbi5tYXRlcmlhbHNbQV07aWYoIWkuZXh0ZW5zaW9uc3x8IWkuZXh0ZW5zaW9uc1t0aGlzLm5hbWVdKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTtjb25zdCByPVtdLG89aS5leHRlbnNpb25zW3RoaXMubmFtZV07ZS50aGlja25lc3M9dm9pZCAwIT09by50aGlja25lc3NGYWN0b3I/by50aGlja25lc3NGYWN0b3I6MCx2b2lkIDAhPT1vLnRoaWNrbmVzc1RleHR1cmUmJnIucHVzaCh0LmFzc2lnblRleHR1cmUoZSwidGhpY2tuZXNzTWFwIixvLnRoaWNrbmVzc1RleHR1cmUpKSxlLmF0dGVudWF0aW9uRGlzdGFuY2U9by5hdHRlbnVhdGlvbkRpc3RhbmNlfHwxLzA7Y29uc3Qgcz1vLmF0dGVudWF0aW9uQ29sb3J8fFsxLDEsMV07cmV0dXJuIGUuYXR0ZW51YXRpb25Db2xvcj1uZXcgbi5Db2xvcihzWzBdLHNbMV0sc1syXSksUHJvbWlzZS5hbGwocil9fWNsYXNzIGh7Y29uc3RydWN0b3IoQSl7dGhpcy5wYXJzZXI9QSx0aGlzLm5hbWU9cy5LSFJfTUFURVJJQUxTX0lPUn1nZXRNYXRlcmlhbFR5cGUoQSl7Y29uc3QgZT10aGlzLnBhcnNlci5qc29uLm1hdGVyaWFsc1tBXTtyZXR1cm4gZS5leHRlbnNpb25zJiZlLmV4dGVuc2lvbnNbdGhpcy5uYW1lXT9uLk1lc2hQaHlzaWNhbE1hdGVyaWFsOm51bGx9ZXh0ZW5kTWF0ZXJpYWxQYXJhbXMoQSxlKXtjb25zdCB0PXRoaXMucGFyc2VyLmpzb24ubWF0ZXJpYWxzW0FdO2lmKCF0LmV4dGVuc2lvbnN8fCF0LmV4dGVuc2lvbnNbdGhpcy5uYW1lXSlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7Y29uc3Qgbj10LmV4dGVuc2lvbnNbdGhpcy5uYW1lXTtyZXR1cm4gZS5pb3I9dm9pZCAwIT09bi5pb3I/bi5pb3I6MS41LFByb21pc2UucmVzb2x2ZSgpfX1jbGFzcyB3e2NvbnN0cnVjdG9yKEEpe3RoaXMucGFyc2VyPUEsdGhpcy5uYW1lPXMuS0hSX01BVEVSSUFMU19TUEVDVUxBUn1nZXRNYXRlcmlhbFR5cGUoQSl7Y29uc3QgZT10aGlzLnBhcnNlci5qc29uLm1hdGVyaWFsc1tBXTtyZXR1cm4gZS5leHRlbnNpb25zJiZlLmV4dGVuc2lvbnNbdGhpcy5uYW1lXT9uLk1lc2hQaHlzaWNhbE1hdGVyaWFsOm51bGx9ZXh0ZW5kTWF0ZXJpYWxQYXJhbXMoQSxlKXtjb25zdCB0PXRoaXMucGFyc2VyLGk9dC5qc29uLm1hdGVyaWFsc1tBXTtpZighaS5leHRlbnNpb25zfHwhaS5leHRlbnNpb25zW3RoaXMubmFtZV0pcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2NvbnN0IHI9W10sbz1pLmV4dGVuc2lvbnNbdGhpcy5uYW1lXTtlLnNwZWN1bGFySW50ZW5zaXR5PXZvaWQgMCE9PW8uc3BlY3VsYXJGYWN0b3I/by5zcGVjdWxhckZhY3RvcjoxLHZvaWQgMCE9PW8uc3BlY3VsYXJUZXh0dXJlJiZyLnB1c2godC5hc3NpZ25UZXh0dXJlKGUsInNwZWN1bGFySW50ZW5zaXR5TWFwIixvLnNwZWN1bGFyVGV4dHVyZSkpO2NvbnN0IHM9by5zcGVjdWxhckNvbG9yRmFjdG9yfHxbMSwxLDFdO3JldHVybiBlLnNwZWN1bGFyQ29sb3I9bmV3IG4uQ29sb3Ioc1swXSxzWzFdLHNbMl0pLHZvaWQgMCE9PW8uc3BlY3VsYXJDb2xvclRleHR1cmUmJnIucHVzaCh0LmFzc2lnblRleHR1cmUoZSwic3BlY3VsYXJDb2xvck1hcCIsby5zcGVjdWxhckNvbG9yVGV4dHVyZSxuLlNSR0JDb2xvclNwYWNlKSksUHJvbWlzZS5hbGwocil9fWNsYXNzIEN7Y29uc3RydWN0b3IoQSl7dGhpcy5wYXJzZXI9QSx0aGlzLm5hbWU9cy5LSFJfTUFURVJJQUxTX0FOSVNPVFJPUFl9Z2V0TWF0ZXJpYWxUeXBlKEEpe2NvbnN0IGU9dGhpcy5wYXJzZXIuanNvbi5tYXRlcmlhbHNbQV07cmV0dXJuIGUuZXh0ZW5zaW9ucyYmZS5leHRlbnNpb25zW3RoaXMubmFtZV0/bi5NZXNoUGh5c2ljYWxNYXRlcmlhbDpudWxsfWV4dGVuZE1hdGVyaWFsUGFyYW1zKEEsZSl7Y29uc3QgdD10aGlzLnBhcnNlcixuPXQuanNvbi5tYXRlcmlhbHNbQV07aWYoIW4uZXh0ZW5zaW9uc3x8IW4uZXh0ZW5zaW9uc1t0aGlzLm5hbWVdKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTtjb25zdCBpPVtdLHI9bi5leHRlbnNpb25zW3RoaXMubmFtZV07cmV0dXJuIHZvaWQgMCE9PXIuYW5pc290cm9weVN0cmVuZ3RoJiYoZS5hbmlzb3Ryb3B5PXIuYW5pc290cm9weVN0cmVuZ3RoKSx2b2lkIDAhPT1yLmFuaXNvdHJvcHlSb3RhdGlvbiYmKGUuYW5pc290cm9weVJvdGF0aW9uPXIuYW5pc290cm9weVJvdGF0aW9uKSx2b2lkIDAhPT1yLmFuaXNvdHJvcHlUZXh0dXJlJiZpLnB1c2godC5hc3NpZ25UZXh0dXJlKGUsImFuaXNvdHJvcHlNYXAiLHIuYW5pc290cm9weVRleHR1cmUpKSxQcm9taXNlLmFsbChpKX19Y2xhc3MgSXtjb25zdHJ1Y3RvcihBKXt0aGlzLnBhcnNlcj1BLHRoaXMubmFtZT1zLktIUl9URVhUVVJFX0JBU0lTVX1sb2FkVGV4dHVyZShBKXtjb25zdCBlPXRoaXMucGFyc2VyLHQ9ZS5qc29uLG49dC50ZXh0dXJlc1tBXTtpZighbi5leHRlbnNpb25zfHwhbi5leHRlbnNpb25zW3RoaXMubmFtZV0pcmV0dXJuIG51bGw7Y29uc3QgaT1uLmV4dGVuc2lvbnNbdGhpcy5uYW1lXSxyPWUub3B0aW9ucy5rdHgyTG9hZGVyO2lmKCFyKXtpZih0LmV4dGVuc2lvbnNSZXF1aXJlZCYmdC5leHRlbnNpb25zUmVxdWlyZWQuaW5kZXhPZih0aGlzLm5hbWUpPj0wKXRocm93IG5ldyBFcnJvcigiVEhSRUUuR0xURkxvYWRlcjogc2V0S1RYMkxvYWRlciBtdXN0IGJlIGNhbGxlZCBiZWZvcmUgbG9hZGluZyBLVFgyIHRleHR1cmVzIik7cmV0dXJuIG51bGx9cmV0dXJuIGUubG9hZFRleHR1cmVJbWFnZShBLGkuc291cmNlLHIpfX1jbGFzcyBNe2NvbnN0cnVjdG9yKEEpe3RoaXMucGFyc2VyPUEsdGhpcy5uYW1lPXMuRVhUX1RFWFRVUkVfV0VCUCx0aGlzLmlzU3VwcG9ydGVkPW51bGx9bG9hZFRleHR1cmUoQSl7Y29uc3QgZT10aGlzLm5hbWUsdD10aGlzLnBhcnNlcixuPXQuanNvbixpPW4udGV4dHVyZXNbQV07aWYoIWkuZXh0ZW5zaW9uc3x8IWkuZXh0ZW5zaW9uc1tlXSlyZXR1cm4gbnVsbDtjb25zdCByPWkuZXh0ZW5zaW9uc1tlXSxvPW4uaW1hZ2VzW3Iuc291cmNlXTtsZXQgcz10LnRleHR1cmVMb2FkZXI7aWYoby51cmkpe2NvbnN0IEE9dC5vcHRpb25zLm1hbmFnZXIuZ2V0SGFuZGxlcihvLnVyaSk7bnVsbCE9PUEmJihzPUEpfXJldHVybiB0aGlzLmRldGVjdFN1cHBvcnQoKS50aGVuKChmdW5jdGlvbihpKXtpZihpKXJldHVybiB0LmxvYWRUZXh0dXJlSW1hZ2UoQSxyLnNvdXJjZSxzKTtpZihuLmV4dGVuc2lvbnNSZXF1aXJlZCYmbi5leHRlbnNpb25zUmVxdWlyZWQuaW5kZXhPZihlKT49MCl0aHJvdyBuZXcgRXJyb3IoIlRIUkVFLkdMVEZMb2FkZXI6IFdlYlAgcmVxdWlyZWQgYnkgYXNzZXQgYnV0IHVuc3VwcG9ydGVkLiIpO3JldHVybiB0LmxvYWRUZXh0dXJlKEEpfSkpfWRldGVjdFN1cHBvcnQoKXtyZXR1cm4gdGhpcy5pc1N1cHBvcnRlZHx8KHRoaXMuaXNTdXBwb3J0ZWQ9bmV3IFByb21pc2UoKGZ1bmN0aW9uKEEpe2NvbnN0IGU9bmV3IEltYWdlO2Uuc3JjPSJkYXRhOmltYWdlL3dlYnA7YmFzZTY0LFVrbEdSaUlBQUFCWFJVSlFWbEE0SUJZQUFBQXdBUUNkQVNvQkFBRUFEc0QrSmFRQUEzQUFBQUFBIixlLm9ubG9hZD1lLm9uZXJyb3I9ZnVuY3Rpb24oKXtBKDE9PT1lLmhlaWdodCl9fSkpKSx0aGlzLmlzU3VwcG9ydGVkfX1jbGFzcyBke2NvbnN0cnVjdG9yKEEpe3RoaXMucGFyc2VyPUEsdGhpcy5uYW1lPXMuRVhUX1RFWFRVUkVfQVZJRix0aGlzLmlzU3VwcG9ydGVkPW51bGx9bG9hZFRleHR1cmUoQSl7Y29uc3QgZT10aGlzLm5hbWUsdD10aGlzLnBhcnNlcixuPXQuanNvbixpPW4udGV4dHVyZXNbQV07aWYoIWkuZXh0ZW5zaW9uc3x8IWkuZXh0ZW5zaW9uc1tlXSlyZXR1cm4gbnVsbDtjb25zdCByPWkuZXh0ZW5zaW9uc1tlXSxvPW4uaW1hZ2VzW3Iuc291cmNlXTtsZXQgcz10LnRleHR1cmVMb2FkZXI7aWYoby51cmkpe2NvbnN0IEE9dC5vcHRpb25zLm1hbmFnZXIuZ2V0SGFuZGxlcihvLnVyaSk7bnVsbCE9PUEmJihzPUEpfXJldHVybiB0aGlzLmRldGVjdFN1cHBvcnQoKS50aGVuKChmdW5jdGlvbihpKXtpZihpKXJldHVybiB0LmxvYWRUZXh0dXJlSW1hZ2UoQSxyLnNvdXJjZSxzKTtpZihuLmV4dGVuc2lvbnNSZXF1aXJlZCYmbi5leHRlbnNpb25zUmVxdWlyZWQuaW5kZXhPZihlKT49MCl0aHJvdyBuZXcgRXJyb3IoIlRIUkVFLkdMVEZMb2FkZXI6IEFWSUYgcmVxdWlyZWQgYnkgYXNzZXQgYnV0IHVuc3VwcG9ydGVkLiIpO3JldHVybiB0LmxvYWRUZXh0dXJlKEEpfSkpfWRldGVjdFN1cHBvcnQoKXtyZXR1cm4gdGhpcy5pc1N1cHBvcnRlZHx8KHRoaXMuaXNTdXBwb3J0ZWQ9bmV3IFByb21pc2UoKGZ1bmN0aW9uKEEpe2NvbnN0IGU9bmV3IEltYWdlO2Uuc3JjPSJkYXRhOmltYWdlL2F2aWY7YmFzZTY0LEFBQUFJR1owZVhCaGRtbG1BQUFBQUdGMmFXWnRhV1l4YldsaFprMUJNVUlBQUFEeWJXVjBZUUFBQUFBQUFBQW9hR1JzY2dBQUFBQUFBQUFBY0dsamRBQUFBQUFBQUFBQUFBQUFBR3hwWW1GMmFXWUFBQUFBRG5CcGRHMEFBQUFBQUFFQUFBQWVhV3h2WXdBQUFBQkVBQUFCQUFFQUFBQUJBQUFCR2dBQUFCY0FBQUFvYVdsdVpnQUFBQUFBQVFBQUFCcHBibVpsQWdBQUFBQUJBQUJoZGpBeFEyOXNiM0lBQUFBQWFtbHdjbkFBQUFCTGFYQmpid0FBQUJScGMzQmxBQUFBQUFBQUFBRUFBQUFCQUFBQUVIQnBlR2tBQUFBQUF3Z0lDQUFBQUF4aGRqRkRnUUFNQUFBQUFCTmpiMnh5Ym1Oc2VBQUNBQUlBQm9BQUFBQVhhWEJ0WVFBQUFBQUFBQUFCQUFFRUFRS0RCQUFBQUI5dFpHRjBFZ0FLQ0JnQUJvZ1FFRFFnTWdrUUFBQUFCOGRTTGZJPSIsZS5vbmxvYWQ9ZS5vbmVycm9yPWZ1bmN0aW9uKCl7QSgxPT09ZS5oZWlnaHQpfX0pKSksdGhpcy5pc1N1cHBvcnRlZH19Y2xhc3MgcHtjb25zdHJ1Y3RvcihBKXt0aGlzLm5hbWU9cy5FWFRfTUVTSE9QVF9DT01QUkVTU0lPTix0aGlzLnBhcnNlcj1BfWxvYWRCdWZmZXJWaWV3KEEpe2NvbnN0IGU9dGhpcy5wYXJzZXIuanNvbix0PWUuYnVmZmVyVmlld3NbQV07aWYodC5leHRlbnNpb25zJiZ0LmV4dGVuc2lvbnNbdGhpcy5uYW1lXSl7Y29uc3QgQT10LmV4dGVuc2lvbnNbdGhpcy5uYW1lXSxuPXRoaXMucGFyc2VyLmdldERlcGVuZGVuY3koImJ1ZmZlciIsQS5idWZmZXIpLGk9dGhpcy5wYXJzZXIub3B0aW9ucy5tZXNob3B0RGVjb2RlcjtpZighaXx8IWkuc3VwcG9ydGVkKXtpZihlLmV4dGVuc2lvbnNSZXF1aXJlZCYmZS5leHRlbnNpb25zUmVxdWlyZWQuaW5kZXhPZih0aGlzLm5hbWUpPj0wKXRocm93IG5ldyBFcnJvcigiVEhSRUUuR0xURkxvYWRlcjogc2V0TWVzaG9wdERlY29kZXIgbXVzdCBiZSBjYWxsZWQgYmVmb3JlIGxvYWRpbmcgY29tcHJlc3NlZCBmaWxlcyIpO3JldHVybiBudWxsfXJldHVybiBuLnRoZW4oKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9QS5ieXRlT2Zmc2V0fHwwLG49QS5ieXRlTGVuZ3RofHwwLHI9QS5jb3VudCxvPUEuYnl0ZVN0cmlkZSxzPW5ldyBVaW50OEFycmF5KGUsdCxuKTtyZXR1cm4gaS5kZWNvZGVHbHRmQnVmZmVyQXN5bmM/aS5kZWNvZGVHbHRmQnVmZmVyQXN5bmMocixvLHMsQS5tb2RlLEEuZmlsdGVyKS50aGVuKChmdW5jdGlvbihBKXtyZXR1cm4gQS5idWZmZXJ9KSk6aS5yZWFkeS50aGVuKChmdW5jdGlvbigpe2NvbnN0IGU9bmV3IEFycmF5QnVmZmVyKHIqbyk7cmV0dXJuIGkuZGVjb2RlR2x0ZkJ1ZmZlcihuZXcgVWludDhBcnJheShlKSxyLG8scyxBLm1vZGUsQS5maWx0ZXIpLGV9KSl9KSl9cmV0dXJuIG51bGx9fWNsYXNzIG17Y29uc3RydWN0b3IoQSl7dGhpcy5uYW1lPXMuRVhUX01FU0hfR1BVX0lOU1RBTkNJTkcsdGhpcy5wYXJzZXI9QX1jcmVhdGVOb2RlTWVzaChBKXtjb25zdCBlPXRoaXMucGFyc2VyLmpzb24sdD1lLm5vZGVzW0FdO2lmKCF0LmV4dGVuc2lvbnN8fCF0LmV4dGVuc2lvbnNbdGhpcy5uYW1lXXx8dm9pZCAwPT09dC5tZXNoKXJldHVybiBudWxsO2NvbnN0IGk9ZS5tZXNoZXNbdC5tZXNoXTtmb3IoY29uc3QgQSBvZiBpLnByaW1pdGl2ZXMpaWYoQS5tb2RlIT09Ry5UUklBTkdMRVMmJkEubW9kZSE9PUcuVFJJQU5HTEVfU1RSSVAmJkEubW9kZSE9PUcuVFJJQU5HTEVfRkFOJiZ2b2lkIDAhPT1BLm1vZGUpcmV0dXJuIG51bGw7Y29uc3Qgcj10LmV4dGVuc2lvbnNbdGhpcy5uYW1lXS5hdHRyaWJ1dGVzLG89W10scz17fTtmb3IoY29uc3QgQSBpbiByKW8ucHVzaCh0aGlzLnBhcnNlci5nZXREZXBlbmRlbmN5KCJhY2Nlc3NvciIscltBXSkudGhlbihlPT4oc1tBXT1lLHNbQV0pKSk7cmV0dXJuIG8ubGVuZ3RoPDE/bnVsbDooby5wdXNoKHRoaXMucGFyc2VyLmNyZWF0ZU5vZGVNZXNoKEEpKSxQcm9taXNlLmFsbChvKS50aGVuKEE9Pntjb25zdCBlPUEucG9wKCksdD1lLmlzR3JvdXA/ZS5jaGlsZHJlbjpbZV0saT1BWzBdLmNvdW50LHI9W107Zm9yKGNvbnN0IEEgb2YgdCl7Y29uc3QgZT1uZXcgbi5NYXRyaXg0LHQ9bmV3IG4uVmVjdG9yMyxvPW5ldyBuLlF1YXRlcm5pb24sYT1uZXcgbi5WZWN0b3IzKDEsMSwxKSxCPW5ldyBuLkluc3RhbmNlZE1lc2goQS5nZW9tZXRyeSxBLm1hdGVyaWFsLGkpO2ZvcihsZXQgQT0wO0E8aTtBKyspcy5UUkFOU0xBVElPTiYmdC5mcm9tQnVmZmVyQXR0cmlidXRlKHMuVFJBTlNMQVRJT04sQSkscy5ST1RBVElPTiYmby5mcm9tQnVmZmVyQXR0cmlidXRlKHMuUk9UQVRJT04sQSkscy5TQ0FMRSYmYS5mcm9tQnVmZmVyQXR0cmlidXRlKHMuU0NBTEUsQSksQi5zZXRNYXRyaXhBdChBLGUuY29tcG9zZSh0LG8sYSkpO2Zvcihjb25zdCBlIGluIHMpIlRSQU5TTEFUSU9OIiE9PWUmJiJST1RBVElPTiIhPT1lJiYiU0NBTEUiIT09ZSYmQS5nZW9tZXRyeS5zZXRBdHRyaWJ1dGUoZSxzW2VdKTtuLk9iamVjdDNELnByb3RvdHlwZS5jb3B5LmNhbGwoQixBKSx0aGlzLnBhcnNlci5hc3NpZ25GaW5hbE1hdGVyaWFsKEIpLHIucHVzaChCKX1yZXR1cm4gZS5pc0dyb3VwPyhlLmNsZWFyKCksZS5hZGQoLi4uciksZSk6clswXX0pKX19Y29uc3QgRj0iZ2xURiIsRD0xMzEzODIxNTE0LFk9NTEzMDU2MjtjbGFzcyBme2NvbnN0cnVjdG9yKEEpe3RoaXMubmFtZT1zLktIUl9CSU5BUllfR0xURix0aGlzLmNvbnRlbnQ9bnVsbCx0aGlzLmJvZHk9bnVsbDtjb25zdCBlPW5ldyBEYXRhVmlldyhBLDAsMTIpLHQ9bmV3IFRleHREZWNvZGVyO2lmKHRoaXMuaGVhZGVyPXttYWdpYzp0LmRlY29kZShuZXcgVWludDhBcnJheShBLnNsaWNlKDAsNCkpKSx2ZXJzaW9uOmUuZ2V0VWludDMyKDQsITApLGxlbmd0aDplLmdldFVpbnQzMig4LCEwKX0sdGhpcy5oZWFkZXIubWFnaWMhPT1GKXRocm93IG5ldyBFcnJvcigiVEhSRUUuR0xURkxvYWRlcjogVW5zdXBwb3J0ZWQgZ2xURi1CaW5hcnkgaGVhZGVyLiIpO2lmKHRoaXMuaGVhZGVyLnZlcnNpb248Mil0aHJvdyBuZXcgRXJyb3IoIlRIUkVFLkdMVEZMb2FkZXI6IExlZ2FjeSBiaW5hcnkgZmlsZSBkZXRlY3RlZC4iKTtjb25zdCBuPXRoaXMuaGVhZGVyLmxlbmd0aC0xMixpPW5ldyBEYXRhVmlldyhBLDEyKTtsZXQgcj0wO2Zvcig7cjxuOyl7Y29uc3QgZT1pLmdldFVpbnQzMihyLCEwKTtyKz00O2NvbnN0IG49aS5nZXRVaW50MzIociwhMCk7aWYocis9NCxuPT09RCl7Y29uc3Qgbj1uZXcgVWludDhBcnJheShBLDEyK3IsZSk7dGhpcy5jb250ZW50PXQuZGVjb2RlKG4pfWVsc2UgaWYobj09PVkpe2NvbnN0IHQ9MTIrcjt0aGlzLmJvZHk9QS5zbGljZSh0LHQrZSl9cis9ZX1pZihudWxsPT09dGhpcy5jb250ZW50KXRocm93IG5ldyBFcnJvcigiVEhSRUUuR0xURkxvYWRlcjogSlNPTiBjb250ZW50IG5vdCBmb3VuZC4iKX19Y2xhc3MgTntjb25zdHJ1Y3RvcihBLGUpe2lmKCFlKXRocm93IG5ldyBFcnJvcigiVEhSRUUuR0xURkxvYWRlcjogTm8gRFJBQ09Mb2FkZXIgaW5zdGFuY2UgcHJvdmlkZWQuIik7dGhpcy5uYW1lPXMuS0hSX0RSQUNPX01FU0hfQ09NUFJFU1NJT04sdGhpcy5qc29uPUEsdGhpcy5kcmFjb0xvYWRlcj1lLHRoaXMuZHJhY29Mb2FkZXIucHJlbG9hZCgpfWRlY29kZVByaW1pdGl2ZShBLGUpe2NvbnN0IHQ9dGhpcy5qc29uLG49dGhpcy5kcmFjb0xvYWRlcixpPUEuZXh0ZW5zaW9uc1t0aGlzLm5hbWVdLmJ1ZmZlclZpZXcscj1BLmV4dGVuc2lvbnNbdGhpcy5uYW1lXS5hdHRyaWJ1dGVzLG89e30scz17fSxhPXt9O2Zvcihjb25zdCBBIGluIHIpe2NvbnN0IGU9a1tBXXx8QS50b0xvd2VyQ2FzZSgpO29bZV09cltBXX1mb3IoY29uc3QgZSBpbiBBLmF0dHJpYnV0ZXMpe2NvbnN0IG49a1tlXXx8ZS50b0xvd2VyQ2FzZSgpO2lmKHZvaWQgMCE9PXJbZV0pe2NvbnN0IGk9dC5hY2Nlc3NvcnNbQS5hdHRyaWJ1dGVzW2VdXSxyPVNbaS5jb21wb25lbnRUeXBlXTthW25dPXIubmFtZSxzW25dPSEwPT09aS5ub3JtYWxpemVkfX1yZXR1cm4gZS5nZXREZXBlbmRlbmN5KCJidWZmZXJWaWV3IixpKS50aGVuKChmdW5jdGlvbihBKXtyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKGUpe24uZGVjb2RlRHJhY29GaWxlKEEsKGZ1bmN0aW9uKEEpe2Zvcihjb25zdCBlIGluIEEuYXR0cmlidXRlcyl7Y29uc3QgdD1BLmF0dHJpYnV0ZXNbZV0sbj1zW2VdO3ZvaWQgMCE9PW4mJih0Lm5vcm1hbGl6ZWQ9bil9ZShBKX0pLG8sYSl9KSl9KSl9fWNsYXNzIFV7Y29uc3RydWN0b3IoKXt0aGlzLm5hbWU9cy5LSFJfVEVYVFVSRV9UUkFOU0ZPUk19ZXh0ZW5kVGV4dHVyZShBLGUpe3JldHVybiB2b2lkIDAhPT1lLnRleENvb3JkJiZlLnRleENvb3JkIT09QS5jaGFubmVsfHx2b2lkIDAhPT1lLm9mZnNldHx8dm9pZCAwIT09ZS5yb3RhdGlvbnx8dm9pZCAwIT09ZS5zY2FsZT8oQT1BLmNsb25lKCksdm9pZCAwIT09ZS50ZXhDb29yZCYmKEEuY2hhbm5lbD1lLnRleENvb3JkKSx2b2lkIDAhPT1lLm9mZnNldCYmQS5vZmZzZXQuZnJvbUFycmF5KGUub2Zmc2V0KSx2b2lkIDAhPT1lLnJvdGF0aW9uJiYoQS5yb3RhdGlvbj1lLnJvdGF0aW9uKSx2b2lkIDAhPT1lLnNjYWxlJiZBLnJlcGVhdC5mcm9tQXJyYXkoZS5zY2FsZSksQS5uZWVkc1VwZGF0ZT0hMCxBKTpBfX1jbGFzcyB5e2NvbnN0cnVjdG9yKCl7dGhpcy5uYW1lPXMuS0hSX01FU0hfUVVBTlRJWkFUSU9OfX1jbGFzcyBUIGV4dGVuZHMgbi5JbnRlcnBvbGFudHtjb25zdHJ1Y3RvcihBLGUsdCxuKXtzdXBlcihBLGUsdCxuKX1jb3B5U2FtcGxlVmFsdWVfKEEpe2NvbnN0IGU9dGhpcy5yZXN1bHRCdWZmZXIsdD10aGlzLnNhbXBsZVZhbHVlcyxuPXRoaXMudmFsdWVTaXplLGk9QSpuKjMrbjtmb3IobGV0IEE9MDtBIT09bjtBKyspZVtBXT10W2krQV07cmV0dXJuIGV9aW50ZXJwb2xhdGVfKEEsZSx0LG4pe2NvbnN0IGk9dGhpcy5yZXN1bHRCdWZmZXIscj10aGlzLnNhbXBsZVZhbHVlcyxvPXRoaXMudmFsdWVTaXplLHM9MipvLGE9MypvLEI9bi1lLGM9KHQtZSkvQixnPWMqYyxFPWcqYyxRPUEqYSx1PVEtYSxsPS0yKkUrMypnLGg9RS1nLHc9MS1sLEM9aC1nK2M7Zm9yKGxldCBBPTA7QSE9PW87QSsrKXtjb25zdCBlPXJbdStBK29dLHQ9clt1K0Erc10qQixuPXJbUStBK29dLGE9cltRK0FdKkI7aVtBXT13KmUrQyp0K2wqbitoKmF9cmV0dXJuIGl9fWNvbnN0IHg9bmV3IG4uUXVhdGVybmlvbjtjbGFzcyBSIGV4dGVuZHMgVHtpbnRlcnBvbGF0ZV8oQSxlLHQsbil7Y29uc3QgaT1zdXBlci5pbnRlcnBvbGF0ZV8oQSxlLHQsbik7cmV0dXJuIHguZnJvbUFycmF5KGkpLm5vcm1hbGl6ZSgpLnRvQXJyYXkoaSksaX19Y29uc3QgRz17RkxPQVQ6NTEyNixGTE9BVF9NQVQzOjM1Njc1LEZMT0FUX01BVDQ6MzU2NzYsRkxPQVRfVkVDMjozNTY2NCxGTE9BVF9WRUMzOjM1NjY1LEZMT0FUX1ZFQzQ6MzU2NjYsTElORUFSOjk3MjksUkVQRUFUOjEwNDk3LFNBTVBMRVJfMkQ6MzU2NzgsUE9JTlRTOjAsTElORVM6MSxMSU5FX0xPT1A6MixMSU5FX1NUUklQOjMsVFJJQU5HTEVTOjQsVFJJQU5HTEVfU1RSSVA6NSxUUklBTkdMRV9GQU46NixVTlNJR05FRF9CWVRFOjUxMjEsVU5TSUdORURfU0hPUlQ6NTEyM30sUz17NTEyMDpJbnQ4QXJyYXksNTEyMTpVaW50OEFycmF5LDUxMjI6SW50MTZBcnJheSw1MTIzOlVpbnQxNkFycmF5LDUxMjU6VWludDMyQXJyYXksNTEyNjpGbG9hdDMyQXJyYXl9LGI9ezk3Mjg6bi5OZWFyZXN0RmlsdGVyLDk3Mjk6bi5MaW5lYXJGaWx0ZXIsOTk4NDpuLk5lYXJlc3RNaXBtYXBOZWFyZXN0RmlsdGVyLDk5ODU6bi5MaW5lYXJNaXBtYXBOZWFyZXN0RmlsdGVyLDk5ODY6bi5OZWFyZXN0TWlwbWFwTGluZWFyRmlsdGVyLDk5ODc6bi5MaW5lYXJNaXBtYXBMaW5lYXJGaWx0ZXJ9LEg9ezMzMDcxOm4uQ2xhbXBUb0VkZ2VXcmFwcGluZywzMzY0ODpuLk1pcnJvcmVkUmVwZWF0V3JhcHBpbmcsMTA0OTc6bi5SZXBlYXRXcmFwcGluZ30sdj17U0NBTEFSOjEsVkVDMjoyLFZFQzM6MyxWRUM0OjQsTUFUMjo0LE1BVDM6OSxNQVQ0OjE2fSxrPXtQT1NJVElPTjoicG9zaXRpb24iLE5PUk1BTDoibm9ybWFsIixUQU5HRU5UOiJ0YW5nZW50IixURVhDT09SRF8wOiJ1diIsVEVYQ09PUkRfMToidXYxIixURVhDT09SRF8yOiJ1djIiLFRFWENPT1JEXzM6InV2MyIsQ09MT1JfMDoiY29sb3IiLFdFSUdIVFNfMDoic2tpbldlaWdodCIsSk9JTlRTXzA6InNraW5JbmRleCJ9LGo9e3NjYWxlOiJzY2FsZSIsdHJhbnNsYXRpb246InBvc2l0aW9uIixyb3RhdGlvbjoicXVhdGVybmlvbiIsd2VpZ2h0czoibW9ycGhUYXJnZXRJbmZsdWVuY2VzIn0sSj17Q1VCSUNTUExJTkU6dm9pZCAwLExJTkVBUjpuLkludGVycG9sYXRlTGluZWFyLFNURVA6bi5JbnRlcnBvbGF0ZURpc2NyZXRlfSx6PSJPUEFRVUUiLEw9Ik1BU0siLFA9IkJMRU5EIjtmdW5jdGlvbiBPKEEsZSx0KXtmb3IoY29uc3QgbiBpbiB0LmV4dGVuc2lvbnMpdm9pZCAwPT09QVtuXSYmKGUudXNlckRhdGEuZ2x0ZkV4dGVuc2lvbnM9ZS51c2VyRGF0YS5nbHRmRXh0ZW5zaW9uc3x8e30sZS51c2VyRGF0YS5nbHRmRXh0ZW5zaW9uc1tuXT10LmV4dGVuc2lvbnNbbl0pfWZ1bmN0aW9uIFYoQSxlKXt2b2lkIDAhPT1lLmV4dHJhcyYmKCJvYmplY3QiPT10eXBlb2YgZS5leHRyYXM/T2JqZWN0LmFzc2lnbihBLnVzZXJEYXRhLGUuZXh0cmFzKTpjb25zb2xlLndhcm4oIlRIUkVFLkdMVEZMb2FkZXI6IElnbm9yaW5nIHByaW1pdGl2ZSB0eXBlIC5leHRyYXMsICIrZS5leHRyYXMpKX1mdW5jdGlvbiBXKEEsZSl7aWYoQS51cGRhdGVNb3JwaFRhcmdldHMoKSx2b2lkIDAhPT1lLndlaWdodHMpZm9yKGxldCB0PTAsbj1lLndlaWdodHMubGVuZ3RoO3Q8bjt0KyspQS5tb3JwaFRhcmdldEluZmx1ZW5jZXNbdF09ZS53ZWlnaHRzW3RdO2lmKGUuZXh0cmFzJiZBcnJheS5pc0FycmF5KGUuZXh0cmFzLnRhcmdldE5hbWVzKSl7Y29uc3QgdD1lLmV4dHJhcy50YXJnZXROYW1lcztpZihBLm1vcnBoVGFyZ2V0SW5mbHVlbmNlcy5sZW5ndGg9PT10Lmxlbmd0aCl7QS5tb3JwaFRhcmdldERpY3Rpb25hcnk9e307Zm9yKGxldCBlPTAsbj10Lmxlbmd0aDtlPG47ZSsrKUEubW9ycGhUYXJnZXREaWN0aW9uYXJ5W3RbZV1dPWV9ZWxzZSBjb25zb2xlLndhcm4oIlRIUkVFLkdMVEZMb2FkZXI6IEludmFsaWQgZXh0cmFzLnRhcmdldE5hbWVzIGxlbmd0aC4gSWdub3JpbmcgbmFtZXMuIil9fWZ1bmN0aW9uIEsoQSl7bGV0IGU7Y29uc3QgdD1BLmV4dGVuc2lvbnMmJkEuZXh0ZW5zaW9uc1tzLktIUl9EUkFDT19NRVNIX0NPTVBSRVNTSU9OXTtpZihlPXQ/ImRyYWNvOiIrdC5idWZmZXJWaWV3KyI6Iit0LmluZGljZXMrIjoiK1godC5hdHRyaWJ1dGVzKTpBLmluZGljZXMrIjoiK1goQS5hdHRyaWJ1dGVzKSsiOiIrQS5tb2RlLHZvaWQgMCE9PUEudGFyZ2V0cylmb3IobGV0IHQ9MCxuPUEudGFyZ2V0cy5sZW5ndGg7dDxuO3QrKyllKz0iOiIrWChBLnRhcmdldHNbdF0pO3JldHVybiBlfWZ1bmN0aW9uIFgoQSl7bGV0IGU9IiI7Y29uc3QgdD1PYmplY3Qua2V5cyhBKS5zb3J0KCk7Zm9yKGxldCBuPTAsaT10Lmxlbmd0aDtuPGk7bisrKWUrPXRbbl0rIjoiK0FbdFtuXV0rIjsiO3JldHVybiBlfWZ1bmN0aW9uIFooQSl7c3dpdGNoKEEpe2Nhc2UgSW50OEFycmF5OnJldHVybiAxLzEyNztjYXNlIFVpbnQ4QXJyYXk6cmV0dXJuIDEvMjU1O2Nhc2UgSW50MTZBcnJheTpyZXR1cm4gMS8zMjc2NztjYXNlIFVpbnQxNkFycmF5OnJldHVybiAxLzY1NTM1O2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJUSFJFRS5HTFRGTG9hZGVyOiBVbnN1cHBvcnRlZCBub3JtYWxpemVkIGFjY2Vzc29yIGNvbXBvbmVudCB0eXBlLiIpfX1jb25zdCBfPW5ldyBuLk1hdHJpeDQ7Y2xhc3MgcXtjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp7fTt0aGlzLmpzb249QSx0aGlzLmV4dGVuc2lvbnM9e30sdGhpcy5wbHVnaW5zPXt9LHRoaXMub3B0aW9ucz1lLHRoaXMuY2FjaGU9bmV3IG8sdGhpcy5hc3NvY2lhdGlvbnM9bmV3IE1hcCx0aGlzLnByaW1pdGl2ZUNhY2hlPXt9LHRoaXMubm9kZUNhY2hlPXt9LHRoaXMubWVzaENhY2hlPXtyZWZzOnt9LHVzZXM6e319LHRoaXMuY2FtZXJhQ2FjaGU9e3JlZnM6e30sdXNlczp7fX0sdGhpcy5saWdodENhY2hlPXtyZWZzOnt9LHVzZXM6e319LHRoaXMuc291cmNlQ2FjaGU9e30sdGhpcy50ZXh0dXJlQ2FjaGU9e30sdGhpcy5ub2RlTmFtZXNVc2VkPXt9O2xldCB0PSExLGk9ITEscj0tMTsidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmKHQ9ITA9PT0vXigoPyFjaHJvbWV8YW5kcm9pZCkuKSpzYWZhcmkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGk9bmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJGaXJlZm94Iik+LTEscj1pP25hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL0ZpcmVmb3hcLyhbMC05XSspXC4vKVsxXTotMSksInVuZGVmaW5lZCI9PXR5cGVvZiBjcmVhdGVJbWFnZUJpdG1hcHx8dHx8aSYmcjw5OD90aGlzLnRleHR1cmVMb2FkZXI9bmV3IG4uVGV4dHVyZUxvYWRlcih0aGlzLm9wdGlvbnMubWFuYWdlcik6dGhpcy50ZXh0dXJlTG9hZGVyPW5ldyBuLkltYWdlQml0bWFwTG9hZGVyKHRoaXMub3B0aW9ucy5tYW5hZ2VyKSx0aGlzLnRleHR1cmVMb2FkZXIuc2V0Q3Jvc3NPcmlnaW4odGhpcy5vcHRpb25zLmNyb3NzT3JpZ2luKSx0aGlzLnRleHR1cmVMb2FkZXIuc2V0UmVxdWVzdEhlYWRlcih0aGlzLm9wdGlvbnMucmVxdWVzdEhlYWRlciksdGhpcy5maWxlTG9hZGVyPW5ldyBuLkZpbGVMb2FkZXIodGhpcy5vcHRpb25zLm1hbmFnZXIpLHRoaXMuZmlsZUxvYWRlci5zZXRSZXNwb25zZVR5cGUoImFycmF5YnVmZmVyIiksInVzZS1jcmVkZW50aWFscyI9PT10aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4mJnRoaXMuZmlsZUxvYWRlci5zZXRXaXRoQ3JlZGVudGlhbHMoITApfXNldEV4dGVuc2lvbnMoQSl7dGhpcy5leHRlbnNpb25zPUF9c2V0UGx1Z2lucyhBKXt0aGlzLnBsdWdpbnM9QX1wYXJzZShBLGUpe2NvbnN0IHQ9dGhpcyxuPXRoaXMuanNvbixpPXRoaXMuZXh0ZW5zaW9uczt0aGlzLmNhY2hlLnJlbW92ZUFsbCgpLHRoaXMubm9kZUNhY2hlPXt9LHRoaXMuX2ludm9rZUFsbCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEuX21hcmtEZWZzJiZBLl9tYXJrRGVmcygpfSkpLFByb21pc2UuYWxsKHRoaXMuX2ludm9rZUFsbCgoZnVuY3Rpb24oQSl7cmV0dXJuIEEuYmVmb3JlUm9vdCYmQS5iZWZvcmVSb290KCl9KSkpLnRoZW4oKGZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKFt0LmdldERlcGVuZGVuY2llcygic2NlbmUiKSx0LmdldERlcGVuZGVuY2llcygiYW5pbWF0aW9uIiksdC5nZXREZXBlbmRlbmNpZXMoImNhbWVyYSIpXSl9KSkudGhlbigoZnVuY3Rpb24oZSl7Y29uc3Qgcj17c2NlbmU6ZVswXVtuLnNjZW5lfHwwXSxzY2VuZXM6ZVswXSxhbmltYXRpb25zOmVbMV0sY2FtZXJhczplWzJdLGFzc2V0Om4uYXNzZXQscGFyc2VyOnQsdXNlckRhdGE6e319O08oaSxyLG4pLFYocixuKSxQcm9taXNlLmFsbCh0Ll9pbnZva2VBbGwoKGZ1bmN0aW9uKEEpe3JldHVybiBBLmFmdGVyUm9vdCYmQS5hZnRlclJvb3Qocil9KSkpLnRoZW4oKGZ1bmN0aW9uKCl7QShyKX0pKX0pKS5jYXRjaChlKX1fbWFya0RlZnMoKXtjb25zdCBBPXRoaXMuanNvbi5ub2Rlc3x8W10sZT10aGlzLmpzb24uc2tpbnN8fFtdLHQ9dGhpcy5qc29uLm1lc2hlc3x8W107Zm9yKGxldCB0PTAsbj1lLmxlbmd0aDt0PG47dCsrKXtjb25zdCBuPWVbdF0uam9pbnRzO2ZvcihsZXQgZT0wLHQ9bi5sZW5ndGg7ZTx0O2UrKylBW25bZV1dLmlzQm9uZT0hMH1mb3IobGV0IGU9MCxuPUEubGVuZ3RoO2U8bjtlKyspe2NvbnN0IG49QVtlXTt2b2lkIDAhPT1uLm1lc2gmJih0aGlzLl9hZGROb2RlUmVmKHRoaXMubWVzaENhY2hlLG4ubWVzaCksdm9pZCAwIT09bi5za2luJiYodFtuLm1lc2hdLmlzU2tpbm5lZE1lc2g9ITApKSx2b2lkIDAhPT1uLmNhbWVyYSYmdGhpcy5fYWRkTm9kZVJlZih0aGlzLmNhbWVyYUNhY2hlLG4uY2FtZXJhKX19X2FkZE5vZGVSZWYoQSxlKXt2b2lkIDAhPT1lJiYodm9pZCAwPT09QS5yZWZzW2VdJiYoQS5yZWZzW2VdPUEudXNlc1tlXT0wKSxBLnJlZnNbZV0rKyl9X2dldE5vZGVSZWYoQSxlLHQpe2lmKEEucmVmc1tlXTw9MSlyZXR1cm4gdDtjb25zdCBuPXQuY2xvbmUoKSxpPShBLGUpPT57Y29uc3QgdD10aGlzLmFzc29jaWF0aW9ucy5nZXQoQSk7bnVsbCE9dCYmdGhpcy5hc3NvY2lhdGlvbnMuc2V0KGUsdCk7Zm9yKGNvbnN0W3Qsbl1vZiBBLmNoaWxkcmVuLmVudHJpZXMoKSlpKG4sZS5jaGlsZHJlblt0XSl9O3JldHVybiBpKHQsbiksbi5uYW1lKz0iX2luc3RhbmNlXyIrQS51c2VzW2VdKyssbn1faW52b2tlT25lKEEpe2NvbnN0IGU9T2JqZWN0LnZhbHVlcyh0aGlzLnBsdWdpbnMpO2UucHVzaCh0aGlzKTtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrKyl7Y29uc3Qgbj1BKGVbdF0pO2lmKG4pcmV0dXJuIG59cmV0dXJuIG51bGx9X2ludm9rZUFsbChBKXtjb25zdCBlPU9iamVjdC52YWx1ZXModGhpcy5wbHVnaW5zKTtlLnVuc2hpZnQodGhpcyk7Y29uc3QgdD1bXTtmb3IobGV0IG49MDtuPGUubGVuZ3RoO24rKyl7Y29uc3QgaT1BKGVbbl0pO2kmJnQucHVzaChpKX1yZXR1cm4gdH1nZXREZXBlbmRlbmN5KEEsZSl7Y29uc3QgdD1BKyI6IitlO2xldCBuPXRoaXMuY2FjaGUuZ2V0KHQpO2lmKCFuKXtzd2l0Y2goQSl7Y2FzZSJzY2VuZSI6bj10aGlzLmxvYWRTY2VuZShlKTticmVhaztjYXNlIm5vZGUiOm49dGhpcy5faW52b2tlT25lKChmdW5jdGlvbihBKXtyZXR1cm4gQS5sb2FkTm9kZSYmQS5sb2FkTm9kZShlKX0pKTticmVhaztjYXNlIm1lc2giOm49dGhpcy5faW52b2tlT25lKChmdW5jdGlvbihBKXtyZXR1cm4gQS5sb2FkTWVzaCYmQS5sb2FkTWVzaChlKX0pKTticmVhaztjYXNlImFjY2Vzc29yIjpuPXRoaXMubG9hZEFjY2Vzc29yKGUpO2JyZWFrO2Nhc2UiYnVmZmVyVmlldyI6bj10aGlzLl9pbnZva2VPbmUoKGZ1bmN0aW9uKEEpe3JldHVybiBBLmxvYWRCdWZmZXJWaWV3JiZBLmxvYWRCdWZmZXJWaWV3KGUpfSkpO2JyZWFrO2Nhc2UiYnVmZmVyIjpuPXRoaXMubG9hZEJ1ZmZlcihlKTticmVhaztjYXNlIm1hdGVyaWFsIjpuPXRoaXMuX2ludm9rZU9uZSgoZnVuY3Rpb24oQSl7cmV0dXJuIEEubG9hZE1hdGVyaWFsJiZBLmxvYWRNYXRlcmlhbChlKX0pKTticmVhaztjYXNlInRleHR1cmUiOm49dGhpcy5faW52b2tlT25lKChmdW5jdGlvbihBKXtyZXR1cm4gQS5sb2FkVGV4dHVyZSYmQS5sb2FkVGV4dHVyZShlKX0pKTticmVhaztjYXNlInNraW4iOm49dGhpcy5sb2FkU2tpbihlKTticmVhaztjYXNlImFuaW1hdGlvbiI6bj10aGlzLl9pbnZva2VPbmUoKGZ1bmN0aW9uKEEpe3JldHVybiBBLmxvYWRBbmltYXRpb24mJkEubG9hZEFuaW1hdGlvbihlKX0pKTticmVhaztjYXNlImNhbWVyYSI6bj10aGlzLmxvYWRDYW1lcmEoZSk7YnJlYWs7ZGVmYXVsdDppZihuPXRoaXMuX2ludm9rZU9uZSgoZnVuY3Rpb24odCl7cmV0dXJuIHQhPXRoaXMmJnQuZ2V0RGVwZW5kZW5jeSYmdC5nZXREZXBlbmRlbmN5KEEsZSl9KSksIW4pdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIHR5cGU6ICIrQSl9dGhpcy5jYWNoZS5hZGQodCxuKX1yZXR1cm4gbn1nZXREZXBlbmRlbmNpZXMoQSl7bGV0IGU9dGhpcy5jYWNoZS5nZXQoQSk7aWYoIWUpe2NvbnN0IHQ9dGhpcyxuPXRoaXMuanNvbltBKygibWVzaCI9PT1BPyJlcyI6InMiKV18fFtdO2U9UHJvbWlzZS5hbGwobi5tYXAoKGZ1bmN0aW9uKGUsbil7cmV0dXJuIHQuZ2V0RGVwZW5kZW5jeShBLG4pfSkpKSx0aGlzLmNhY2hlLmFkZChBLGUpfXJldHVybiBlfWxvYWRCdWZmZXIoQSl7Y29uc3QgZT10aGlzLmpzb24uYnVmZmVyc1tBXSx0PXRoaXMuZmlsZUxvYWRlcjtpZihlLnR5cGUmJiJhcnJheWJ1ZmZlciIhPT1lLnR5cGUpdGhyb3cgbmV3IEVycm9yKCJUSFJFRS5HTFRGTG9hZGVyOiAiK2UudHlwZSsiIGJ1ZmZlciB0eXBlIGlzIG5vdCBzdXBwb3J0ZWQuIik7aWYodm9pZCAwPT09ZS51cmkmJjA9PT1BKXJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5leHRlbnNpb25zW3MuS0hSX0JJTkFSWV9HTFRGXS5ib2R5KTtjb25zdCBpPXRoaXMub3B0aW9ucztyZXR1cm4gbmV3IFByb21pc2UoKGZ1bmN0aW9uKEEscil7dC5sb2FkKG4uTG9hZGVyVXRpbHMucmVzb2x2ZVVSTChlLnVyaSxpLnBhdGgpLEEsdm9pZCAwLChmdW5jdGlvbigpe3IobmV3IEVycm9yKCdUSFJFRS5HTFRGTG9hZGVyOiBGYWlsZWQgdG8gbG9hZCBidWZmZXIgIicrZS51cmkrJyIuJykpfSkpfSkpfWxvYWRCdWZmZXJWaWV3KEEpe2NvbnN0IGU9dGhpcy5qc29uLmJ1ZmZlclZpZXdzW0FdO3JldHVybiB0aGlzLmdldERlcGVuZGVuY3koImJ1ZmZlciIsZS5idWZmZXIpLnRoZW4oKGZ1bmN0aW9uKEEpe2NvbnN0IHQ9ZS5ieXRlTGVuZ3RofHwwLG49ZS5ieXRlT2Zmc2V0fHwwO3JldHVybiBBLnNsaWNlKG4sbit0KX0pKX1sb2FkQWNjZXNzb3IoQSl7Y29uc3QgZT10aGlzLHQ9dGhpcy5qc29uLGk9dGhpcy5qc29uLmFjY2Vzc29yc1tBXTtpZih2b2lkIDA9PT1pLmJ1ZmZlclZpZXcmJnZvaWQgMD09PWkuc3BhcnNlKXtjb25zdCBBPXZbaS50eXBlXSxlPVNbaS5jb21wb25lbnRUeXBlXSx0PSEwPT09aS5ub3JtYWxpemVkLHI9bmV3IGUoaS5jb3VudCpBKTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5ldyBuLkJ1ZmZlckF0dHJpYnV0ZShyLEEsdCkpfWNvbnN0IHI9W107cmV0dXJuIHZvaWQgMCE9PWkuYnVmZmVyVmlldz9yLnB1c2godGhpcy5nZXREZXBlbmRlbmN5KCJidWZmZXJWaWV3IixpLmJ1ZmZlclZpZXcpKTpyLnB1c2gobnVsbCksdm9pZCAwIT09aS5zcGFyc2UmJihyLnB1c2godGhpcy5nZXREZXBlbmRlbmN5KCJidWZmZXJWaWV3IixpLnNwYXJzZS5pbmRpY2VzLmJ1ZmZlclZpZXcpKSxyLnB1c2godGhpcy5nZXREZXBlbmRlbmN5KCJidWZmZXJWaWV3IixpLnNwYXJzZS52YWx1ZXMuYnVmZmVyVmlldykpKSxQcm9taXNlLmFsbChyKS50aGVuKChmdW5jdGlvbihBKXtjb25zdCByPUFbMF0sbz12W2kudHlwZV0scz1TW2kuY29tcG9uZW50VHlwZV0sYT1zLkJZVEVTX1BFUl9FTEVNRU5ULEI9YSpvLGM9aS5ieXRlT2Zmc2V0fHwwLGc9dm9pZCAwIT09aS5idWZmZXJWaWV3P3QuYnVmZmVyVmlld3NbaS5idWZmZXJWaWV3XS5ieXRlU3RyaWRlOnZvaWQgMCxFPSEwPT09aS5ub3JtYWxpemVkO2xldCBRLHU7aWYoZyYmZyE9PUIpe2NvbnN0IEE9TWF0aC5mbG9vcihjL2cpLHQ9IkludGVybGVhdmVkQnVmZmVyOiIraS5idWZmZXJWaWV3KyI6IitpLmNvbXBvbmVudFR5cGUrIjoiK0ErIjoiK2kuY291bnQ7bGV0IEI9ZS5jYWNoZS5nZXQodCk7Qnx8KFE9bmV3IHMocixBKmcsaS5jb3VudCpnL2EpLEI9bmV3IG4uSW50ZXJsZWF2ZWRCdWZmZXIoUSxnL2EpLGUuY2FjaGUuYWRkKHQsQikpLHU9bmV3IG4uSW50ZXJsZWF2ZWRCdWZmZXJBdHRyaWJ1dGUoQixvLGMlZy9hLEUpfWVsc2UgUT1udWxsPT09cj9uZXcgcyhpLmNvdW50Km8pOm5ldyBzKHIsYyxpLmNvdW50Km8pLHU9bmV3IG4uQnVmZmVyQXR0cmlidXRlKFEsbyxFKTtpZih2b2lkIDAhPT1pLnNwYXJzZSl7Y29uc3QgZT12LlNDQUxBUix0PVNbaS5zcGFyc2UuaW5kaWNlcy5jb21wb25lbnRUeXBlXSxhPWkuc3BhcnNlLmluZGljZXMuYnl0ZU9mZnNldHx8MCxCPWkuc3BhcnNlLnZhbHVlcy5ieXRlT2Zmc2V0fHwwLGM9bmV3IHQoQVsxXSxhLGkuc3BhcnNlLmNvdW50KmUpLGc9bmV3IHMoQVsyXSxCLGkuc3BhcnNlLmNvdW50Km8pO251bGwhPT1yJiYodT1uZXcgbi5CdWZmZXJBdHRyaWJ1dGUodS5hcnJheS5zbGljZSgpLHUuaXRlbVNpemUsdS5ub3JtYWxpemVkKSk7Zm9yKGxldCBBPTAsZT1jLmxlbmd0aDtBPGU7QSsrKXtjb25zdCBlPWNbQV07aWYodS5zZXRYKGUsZ1tBKm9dKSxvPj0yJiZ1LnNldFkoZSxnW0EqbysxXSksbz49MyYmdS5zZXRaKGUsZ1tBKm8rMl0pLG8+PTQmJnUuc2V0VyhlLGdbQSpvKzNdKSxvPj01KXRocm93IG5ldyBFcnJvcigiVEhSRUUuR0xURkxvYWRlcjogVW5zdXBwb3J0ZWQgaXRlbVNpemUgaW4gc3BhcnNlIEJ1ZmZlckF0dHJpYnV0ZS4iKX19cmV0dXJuIHV9KSl9bG9hZFRleHR1cmUoQSl7Y29uc3QgZT10aGlzLmpzb24sdD10aGlzLm9wdGlvbnMsbj1lLnRleHR1cmVzW0FdLnNvdXJjZSxpPWUuaW1hZ2VzW25dO2xldCByPXRoaXMudGV4dHVyZUxvYWRlcjtpZihpLnVyaSl7Y29uc3QgQT10Lm1hbmFnZXIuZ2V0SGFuZGxlcihpLnVyaSk7bnVsbCE9PUEmJihyPUEpfXJldHVybiB0aGlzLmxvYWRUZXh0dXJlSW1hZ2UoQSxuLHIpfWxvYWRUZXh0dXJlSW1hZ2UoQSxlLHQpe2NvbnN0IGk9dGhpcyxyPXRoaXMuanNvbixvPXIudGV4dHVyZXNbQV0scz1yLmltYWdlc1tlXSxhPShzLnVyaXx8cy5idWZmZXJWaWV3KSsiOiIrby5zYW1wbGVyO2lmKHRoaXMudGV4dHVyZUNhY2hlW2FdKXJldHVybiB0aGlzLnRleHR1cmVDYWNoZVthXTtjb25zdCBCPXRoaXMubG9hZEltYWdlU291cmNlKGUsdCkudGhlbigoZnVuY3Rpb24oZSl7ZS5mbGlwWT0hMSxlLm5hbWU9by5uYW1lfHxzLm5hbWV8fCIiLCIiPT09ZS5uYW1lJiYic3RyaW5nIj09dHlwZW9mIHMudXJpJiYhMT09PXMudXJpLnN0YXJ0c1dpdGgoImRhdGE6aW1hZ2UvIikmJihlLm5hbWU9cy51cmkpO2NvbnN0IHQ9KHIuc2FtcGxlcnN8fHt9KVtvLnNhbXBsZXJdfHx7fTtyZXR1cm4gZS5tYWdGaWx0ZXI9Ylt0Lm1hZ0ZpbHRlcl18fG4uTGluZWFyRmlsdGVyLGUubWluRmlsdGVyPWJbdC5taW5GaWx0ZXJdfHxuLkxpbmVhck1pcG1hcExpbmVhckZpbHRlcixlLndyYXBTPUhbdC53cmFwU118fG4uUmVwZWF0V3JhcHBpbmcsZS53cmFwVD1IW3Qud3JhcFRdfHxuLlJlcGVhdFdyYXBwaW5nLGkuYXNzb2NpYXRpb25zLnNldChlLHt0ZXh0dXJlczpBfSksZX0pKS5jYXRjaCgoZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0pKTtyZXR1cm4gdGhpcy50ZXh0dXJlQ2FjaGVbYV09QixCfWxvYWRJbWFnZVNvdXJjZShBLGUpe2NvbnN0IHQ9dGhpcyxpPXRoaXMuanNvbixyPXRoaXMub3B0aW9ucztpZih2b2lkIDAhPT10aGlzLnNvdXJjZUNhY2hlW0FdKXJldHVybiB0aGlzLnNvdXJjZUNhY2hlW0FdLnRoZW4oQT0+QS5jbG9uZSgpKTtjb25zdCBvPWkuaW1hZ2VzW0FdLHM9c2VsZi5VUkx8fHNlbGYud2Via2l0VVJMO2xldCBhPW8udXJpfHwiIixCPSExO2lmKHZvaWQgMCE9PW8uYnVmZmVyVmlldylhPXQuZ2V0RGVwZW5kZW5jeSgiYnVmZmVyVmlldyIsby5idWZmZXJWaWV3KS50aGVuKChmdW5jdGlvbihBKXtCPSEwO2NvbnN0IGU9bmV3IEJsb2IoW0FdLHt0eXBlOm8ubWltZVR5cGV9KTtyZXR1cm4gYT1zLmNyZWF0ZU9iamVjdFVSTChlKSxhfSkpO2Vsc2UgaWYodm9pZCAwPT09by51cmkpdGhyb3cgbmV3IEVycm9yKCJUSFJFRS5HTFRGTG9hZGVyOiBJbWFnZSAiK0ErIiBpcyBtaXNzaW5nIFVSSSBhbmQgYnVmZmVyVmlldyIpO2NvbnN0IGM9UHJvbWlzZS5yZXNvbHZlKGEpLnRoZW4oKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCxpKXtsZXQgbz10OyEwPT09ZS5pc0ltYWdlQml0bWFwTG9hZGVyJiYobz1mdW5jdGlvbihBKXtjb25zdCBlPW5ldyBuLlRleHR1cmUoQSk7ZS5uZWVkc1VwZGF0ZT0hMCx0KGUpfSksZS5sb2FkKG4uTG9hZGVyVXRpbHMucmVzb2x2ZVVSTChBLHIucGF0aCksbyx2b2lkIDAsaSl9KSl9KSkudGhlbigoZnVuY3Rpb24oQSl7dmFyIGU7cmV0dXJuITA9PT1CJiZzLnJldm9rZU9iamVjdFVSTChhKSxBLnVzZXJEYXRhLm1pbWVUeXBlPW8ubWltZVR5cGV8fCgoZT1vLnVyaSkuc2VhcmNoKC9cLmpwZT9nKCR8XD8pL2kpPjB8fDA9PT1lLnNlYXJjaCgvXmRhdGFcOmltYWdlXC9qcGVnLyk/ImltYWdlL2pwZWciOmUuc2VhcmNoKC9cLndlYnAoJHxcPykvaSk+MHx8MD09PWUuc2VhcmNoKC9eZGF0YVw6aW1hZ2VcL3dlYnAvKT8iaW1hZ2Uvd2VicCI6ImltYWdlL3BuZyIpLEF9KSkuY2F0Y2goKGZ1bmN0aW9uKEEpe3Rocm93IGNvbnNvbGUuZXJyb3IoIlRIUkVFLkdMVEZMb2FkZXI6IENvdWxkbid0IGxvYWQgdGV4dHVyZSIsYSksQX0pKTtyZXR1cm4gdGhpcy5zb3VyY2VDYWNoZVtBXT1jLGN9YXNzaWduVGV4dHVyZShBLGUsdCxuKXtjb25zdCBpPXRoaXM7cmV0dXJuIHRoaXMuZ2V0RGVwZW5kZW5jeSgidGV4dHVyZSIsdC5pbmRleCkudGhlbigoZnVuY3Rpb24ocil7aWYoIXIpcmV0dXJuIG51bGw7aWYodm9pZCAwIT09dC50ZXhDb29yZCYmdC50ZXhDb29yZD4wJiYoKHI9ci5jbG9uZSgpKS5jaGFubmVsPXQudGV4Q29vcmQpLGkuZXh0ZW5zaW9uc1tzLktIUl9URVhUVVJFX1RSQU5TRk9STV0pe2NvbnN0IEE9dm9pZCAwIT09dC5leHRlbnNpb25zP3QuZXh0ZW5zaW9uc1tzLktIUl9URVhUVVJFX1RSQU5TRk9STV06dm9pZCAwO2lmKEEpe2NvbnN0IGU9aS5hc3NvY2lhdGlvbnMuZ2V0KHIpO3I9aS5leHRlbnNpb25zW3MuS0hSX1RFWFRVUkVfVFJBTlNGT1JNXS5leHRlbmRUZXh0dXJlKHIsQSksaS5hc3NvY2lhdGlvbnMuc2V0KHIsZSl9fXJldHVybiB2b2lkIDAhPT1uJiYoci5jb2xvclNwYWNlPW4pLEFbZV09cixyfSkpfWFzc2lnbkZpbmFsTWF0ZXJpYWwoQSl7Y29uc3QgZT1BLmdlb21ldHJ5O2xldCB0PUEubWF0ZXJpYWw7Y29uc3QgaT12b2lkIDA9PT1lLmF0dHJpYnV0ZXMudGFuZ2VudCxyPXZvaWQgMCE9PWUuYXR0cmlidXRlcy5jb2xvcixvPXZvaWQgMD09PWUuYXR0cmlidXRlcy5ub3JtYWw7aWYoQS5pc1BvaW50cyl7Y29uc3QgQT0iUG9pbnRzTWF0ZXJpYWw6Iit0LnV1aWQ7bGV0IGU9dGhpcy5jYWNoZS5nZXQoQSk7ZXx8KGU9bmV3IG4uUG9pbnRzTWF0ZXJpYWwsbi5NYXRlcmlhbC5wcm90b3R5cGUuY29weS5jYWxsKGUsdCksZS5jb2xvci5jb3B5KHQuY29sb3IpLGUubWFwPXQubWFwLGUuc2l6ZUF0dGVudWF0aW9uPSExLHRoaXMuY2FjaGUuYWRkKEEsZSkpLHQ9ZX1lbHNlIGlmKEEuaXNMaW5lKXtjb25zdCBBPSJMaW5lQmFzaWNNYXRlcmlhbDoiK3QudXVpZDtsZXQgZT10aGlzLmNhY2hlLmdldChBKTtlfHwoZT1uZXcgbi5MaW5lQmFzaWNNYXRlcmlhbCxuLk1hdGVyaWFsLnByb3RvdHlwZS5jb3B5LmNhbGwoZSx0KSxlLmNvbG9yLmNvcHkodC5jb2xvciksZS5tYXA9dC5tYXAsdGhpcy5jYWNoZS5hZGQoQSxlKSksdD1lfWlmKGl8fHJ8fG8pe2xldCBBPSJDbG9uZWRNYXRlcmlhbDoiK3QudXVpZCsiOiI7aSYmKEErPSJkZXJpdmF0aXZlLXRhbmdlbnRzOiIpLHImJihBKz0idmVydGV4LWNvbG9yczoiKSxvJiYoQSs9ImZsYXQtc2hhZGluZzoiKTtsZXQgZT10aGlzLmNhY2hlLmdldChBKTtlfHwoZT10LmNsb25lKCksciYmKGUudmVydGV4Q29sb3JzPSEwKSxvJiYoZS5mbGF0U2hhZGluZz0hMCksaSYmKGUubm9ybWFsU2NhbGUmJihlLm5vcm1hbFNjYWxlLnkqPS0xKSxlLmNsZWFyY29hdE5vcm1hbFNjYWxlJiYoZS5jbGVhcmNvYXROb3JtYWxTY2FsZS55Kj0tMSkpLHRoaXMuY2FjaGUuYWRkKEEsZSksdGhpcy5hc3NvY2lhdGlvbnMuc2V0KGUsdGhpcy5hc3NvY2lhdGlvbnMuZ2V0KHQpKSksdD1lfUEubWF0ZXJpYWw9dH1nZXRNYXRlcmlhbFR5cGUoKXtyZXR1cm4gbi5NZXNoU3RhbmRhcmRNYXRlcmlhbH1sb2FkTWF0ZXJpYWwoQSl7Y29uc3QgZT10aGlzLHQ9dGhpcy5qc29uLGk9dGhpcy5leHRlbnNpb25zLHI9dC5tYXRlcmlhbHNbQV07bGV0IG87Y29uc3QgYT17fSxCPVtdO2lmKChyLmV4dGVuc2lvbnN8fHt9KVtzLktIUl9NQVRFUklBTFNfVU5MSVRdKXtjb25zdCBBPWlbcy5LSFJfTUFURVJJQUxTX1VOTElUXTtvPUEuZ2V0TWF0ZXJpYWxUeXBlKCksQi5wdXNoKEEuZXh0ZW5kUGFyYW1zKGEscixlKSl9ZWxzZXtjb25zdCB0PXIucGJyTWV0YWxsaWNSb3VnaG5lc3N8fHt9O2lmKGEuY29sb3I9bmV3IG4uQ29sb3IoMSwxLDEpLGEub3BhY2l0eT0xLEFycmF5LmlzQXJyYXkodC5iYXNlQ29sb3JGYWN0b3IpKXtjb25zdCBBPXQuYmFzZUNvbG9yRmFjdG9yO2EuY29sb3IuZnJvbUFycmF5KEEpLGEub3BhY2l0eT1BWzNdfXZvaWQgMCE9PXQuYmFzZUNvbG9yVGV4dHVyZSYmQi5wdXNoKGUuYXNzaWduVGV4dHVyZShhLCJtYXAiLHQuYmFzZUNvbG9yVGV4dHVyZSxuLlNSR0JDb2xvclNwYWNlKSksYS5tZXRhbG5lc3M9dm9pZCAwIT09dC5tZXRhbGxpY0ZhY3Rvcj90Lm1ldGFsbGljRmFjdG9yOjEsYS5yb3VnaG5lc3M9dm9pZCAwIT09dC5yb3VnaG5lc3NGYWN0b3I/dC5yb3VnaG5lc3NGYWN0b3I6MSx2b2lkIDAhPT10Lm1ldGFsbGljUm91Z2huZXNzVGV4dHVyZSYmKEIucHVzaChlLmFzc2lnblRleHR1cmUoYSwibWV0YWxuZXNzTWFwIix0Lm1ldGFsbGljUm91Z2huZXNzVGV4dHVyZSkpLEIucHVzaChlLmFzc2lnblRleHR1cmUoYSwicm91Z2huZXNzTWFwIix0Lm1ldGFsbGljUm91Z2huZXNzVGV4dHVyZSkpKSxvPXRoaXMuX2ludm9rZU9uZSgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0TWF0ZXJpYWxUeXBlJiZlLmdldE1hdGVyaWFsVHlwZShBKX0pKSxCLnB1c2goUHJvbWlzZS5hbGwodGhpcy5faW52b2tlQWxsKChmdW5jdGlvbihlKXtyZXR1cm4gZS5leHRlbmRNYXRlcmlhbFBhcmFtcyYmZS5leHRlbmRNYXRlcmlhbFBhcmFtcyhBLGEpfSkpKSl9ITA9PT1yLmRvdWJsZVNpZGVkJiYoYS5zaWRlPW4uRG91YmxlU2lkZSk7Y29uc3QgYz1yLmFscGhhTW9kZXx8ejtpZihjPT09UD8oYS50cmFuc3BhcmVudD0hMCxhLmRlcHRoV3JpdGU9ITEpOihhLnRyYW5zcGFyZW50PSExLGM9PT1MJiYoYS5hbHBoYVRlc3Q9dm9pZCAwIT09ci5hbHBoYUN1dG9mZj9yLmFscGhhQ3V0b2ZmOi41KSksdm9pZCAwIT09ci5ub3JtYWxUZXh0dXJlJiZvIT09bi5NZXNoQmFzaWNNYXRlcmlhbCYmKEIucHVzaChlLmFzc2lnblRleHR1cmUoYSwibm9ybWFsTWFwIixyLm5vcm1hbFRleHR1cmUpKSxhLm5vcm1hbFNjYWxlPW5ldyBuLlZlY3RvcjIoMSwxKSx2b2lkIDAhPT1yLm5vcm1hbFRleHR1cmUuc2NhbGUpKXtjb25zdCBBPXIubm9ybWFsVGV4dHVyZS5zY2FsZTthLm5vcm1hbFNjYWxlLnNldChBLEEpfXJldHVybiB2b2lkIDAhPT1yLm9jY2x1c2lvblRleHR1cmUmJm8hPT1uLk1lc2hCYXNpY01hdGVyaWFsJiYoQi5wdXNoKGUuYXNzaWduVGV4dHVyZShhLCJhb01hcCIsci5vY2NsdXNpb25UZXh0dXJlKSksdm9pZCAwIT09ci5vY2NsdXNpb25UZXh0dXJlLnN0cmVuZ3RoJiYoYS5hb01hcEludGVuc2l0eT1yLm9jY2x1c2lvblRleHR1cmUuc3RyZW5ndGgpKSx2b2lkIDAhPT1yLmVtaXNzaXZlRmFjdG9yJiZvIT09bi5NZXNoQmFzaWNNYXRlcmlhbCYmKGEuZW1pc3NpdmU9KG5ldyBuLkNvbG9yKS5mcm9tQXJyYXkoci5lbWlzc2l2ZUZhY3RvcikpLHZvaWQgMCE9PXIuZW1pc3NpdmVUZXh0dXJlJiZvIT09bi5NZXNoQmFzaWNNYXRlcmlhbCYmQi5wdXNoKGUuYXNzaWduVGV4dHVyZShhLCJlbWlzc2l2ZU1hcCIsci5lbWlzc2l2ZVRleHR1cmUsbi5TUkdCQ29sb3JTcGFjZSkpLFByb21pc2UuYWxsKEIpLnRoZW4oKGZ1bmN0aW9uKCl7Y29uc3QgdD1uZXcgbyhhKTtyZXR1cm4gci5uYW1lJiYodC5uYW1lPXIubmFtZSksVih0LHIpLGUuYXNzb2NpYXRpb25zLnNldCh0LHttYXRlcmlhbHM6QX0pLHIuZXh0ZW5zaW9ucyYmTyhpLHQsciksdH0pKX1jcmVhdGVVbmlxdWVOYW1lKEEpe2NvbnN0IGU9bi5Qcm9wZXJ0eUJpbmRpbmcuc2FuaXRpemVOb2RlTmFtZShBfHwiIik7cmV0dXJuIGUgaW4gdGhpcy5ub2RlTmFtZXNVc2VkP2UrIl8iKyArK3RoaXMubm9kZU5hbWVzVXNlZFtlXToodGhpcy5ub2RlTmFtZXNVc2VkW2VdPTAsZSl9bG9hZEdlb21ldHJpZXMoQSl7Y29uc3QgZT10aGlzLHQ9dGhpcy5leHRlbnNpb25zLGk9dGhpcy5wcmltaXRpdmVDYWNoZTtmdW5jdGlvbiByKEEpe3JldHVybiB0W3MuS0hSX0RSQUNPX01FU0hfQ09NUFJFU1NJT05dLmRlY29kZVByaW1pdGl2ZShBLGUpLnRoZW4oKGZ1bmN0aW9uKHQpe3JldHVybiAkKHQsQSxlKX0pKX1jb25zdCBvPVtdO2ZvcihsZXQgdD0wLGE9QS5sZW5ndGg7dDxhO3QrKyl7Y29uc3QgYT1BW3RdLEI9SyhhKSxjPWlbQl07aWYoYylvLnB1c2goYy5wcm9taXNlKTtlbHNle2xldCBBO0E9YS5leHRlbnNpb25zJiZhLmV4dGVuc2lvbnNbcy5LSFJfRFJBQ09fTUVTSF9DT01QUkVTU0lPTl0/cihhKTokKG5ldyBuLkJ1ZmZlckdlb21ldHJ5LGEsZSksaVtCXT17cHJpbWl0aXZlOmEscHJvbWlzZTpBfSxvLnB1c2goQSl9fXJldHVybiBQcm9taXNlLmFsbChvKX1sb2FkTWVzaChBKXtjb25zdCBlPXRoaXMsdD10aGlzLmpzb24scj10aGlzLmV4dGVuc2lvbnMsbz10Lm1lc2hlc1tBXSxzPW8ucHJpbWl0aXZlcyxhPVtdO2ZvcihsZXQgQT0wLGU9cy5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT12b2lkIDA9PT1zW0FdLm1hdGVyaWFsPyh2b2lkIDA9PT0oQj10aGlzLmNhY2hlKS5EZWZhdWx0TWF0ZXJpYWwmJihCLkRlZmF1bHRNYXRlcmlhbD1uZXcgbi5NZXNoU3RhbmRhcmRNYXRlcmlhbCh7Y29sb3I6MTY3NzcyMTUsZW1pc3NpdmU6MCxtZXRhbG5lc3M6MSxyb3VnaG5lc3M6MSx0cmFuc3BhcmVudDohMSxkZXB0aFRlc3Q6ITAsc2lkZTpuLkZyb250U2lkZX0pKSxCLkRlZmF1bHRNYXRlcmlhbCk6dGhpcy5nZXREZXBlbmRlbmN5KCJtYXRlcmlhbCIsc1tBXS5tYXRlcmlhbCk7YS5wdXNoKGUpfXZhciBCO3JldHVybiBhLnB1c2goZS5sb2FkR2VvbWV0cmllcyhzKSksUHJvbWlzZS5hbGwoYSkudGhlbigoZnVuY3Rpb24odCl7Y29uc3QgYT10LnNsaWNlKDAsdC5sZW5ndGgtMSksQj10W3QubGVuZ3RoLTFdLGM9W107Zm9yKGxldCB0PTAsZz1CLmxlbmd0aDt0PGc7dCsrKXtjb25zdCBnPUJbdF0sRT1zW3RdO2xldCBRO2NvbnN0IHU9YVt0XTtpZihFLm1vZGU9PT1HLlRSSUFOR0xFU3x8RS5tb2RlPT09Ry5UUklBTkdMRV9TVFJJUHx8RS5tb2RlPT09Ry5UUklBTkdMRV9GQU58fHZvaWQgMD09PUUubW9kZSlRPSEwPT09by5pc1NraW5uZWRNZXNoP25ldyBuLlNraW5uZWRNZXNoKGcsdSk6bmV3IG4uTWVzaChnLHUpLCEwPT09US5pc1NraW5uZWRNZXNoJiZRLm5vcm1hbGl6ZVNraW5XZWlnaHRzKCksRS5tb2RlPT09Ry5UUklBTkdMRV9TVFJJUD9RLmdlb21ldHJ5PU9iamVjdChpLnRvVHJpYW5nbGVzRHJhd01vZGUpKFEuZ2VvbWV0cnksbi5UcmlhbmdsZVN0cmlwRHJhd01vZGUpOkUubW9kZT09PUcuVFJJQU5HTEVfRkFOJiYoUS5nZW9tZXRyeT1PYmplY3QoaS50b1RyaWFuZ2xlc0RyYXdNb2RlKShRLmdlb21ldHJ5LG4uVHJpYW5nbGVGYW5EcmF3TW9kZSkpO2Vsc2UgaWYoRS5tb2RlPT09Ry5MSU5FUylRPW5ldyBuLkxpbmVTZWdtZW50cyhnLHUpO2Vsc2UgaWYoRS5tb2RlPT09Ry5MSU5FX1NUUklQKVE9bmV3IG4uTGluZShnLHUpO2Vsc2UgaWYoRS5tb2RlPT09Ry5MSU5FX0xPT1ApUT1uZXcgbi5MaW5lTG9vcChnLHUpO2Vsc2V7aWYoRS5tb2RlIT09Ry5QT0lOVFMpdGhyb3cgbmV3IEVycm9yKCJUSFJFRS5HTFRGTG9hZGVyOiBQcmltaXRpdmUgbW9kZSB1bnN1cHBvcnRlZDogIitFLm1vZGUpO1E9bmV3IG4uUG9pbnRzKGcsdSl9T2JqZWN0LmtleXMoUS5nZW9tZXRyeS5tb3JwaEF0dHJpYnV0ZXMpLmxlbmd0aD4wJiZXKFEsbyksUS5uYW1lPWUuY3JlYXRlVW5pcXVlTmFtZShvLm5hbWV8fCJtZXNoXyIrQSksVihRLG8pLEUuZXh0ZW5zaW9ucyYmTyhyLFEsRSksZS5hc3NpZ25GaW5hbE1hdGVyaWFsKFEpLGMucHVzaChRKX1mb3IobGV0IHQ9MCxuPWMubGVuZ3RoO3Q8bjt0KyspZS5hc3NvY2lhdGlvbnMuc2V0KGNbdF0se21lc2hlczpBLHByaW1pdGl2ZXM6dH0pO2lmKDE9PT1jLmxlbmd0aClyZXR1cm4gby5leHRlbnNpb25zJiZPKHIsY1swXSxvKSxjWzBdO2NvbnN0IGc9bmV3IG4uR3JvdXA7by5leHRlbnNpb25zJiZPKHIsZyxvKSxlLmFzc29jaWF0aW9ucy5zZXQoZyx7bWVzaGVzOkF9KTtmb3IobGV0IEE9MCxlPWMubGVuZ3RoO0E8ZTtBKyspZy5hZGQoY1tBXSk7cmV0dXJuIGd9KSl9bG9hZENhbWVyYShBKXtsZXQgZTtjb25zdCB0PXRoaXMuanNvbi5jYW1lcmFzW0FdLGk9dFt0LnR5cGVdO2lmKGkpcmV0dXJuInBlcnNwZWN0aXZlIj09PXQudHlwZT9lPW5ldyBuLlBlcnNwZWN0aXZlQ2FtZXJhKG4uTWF0aFV0aWxzLnJhZFRvRGVnKGkueWZvdiksaS5hc3BlY3RSYXRpb3x8MSxpLnpuZWFyfHwxLGkuemZhcnx8MmU2KToib3J0aG9ncmFwaGljIj09PXQudHlwZSYmKGU9bmV3IG4uT3J0aG9ncmFwaGljQ2FtZXJhKC1pLnhtYWcsaS54bWFnLGkueW1hZywtaS55bWFnLGkuem5lYXIsaS56ZmFyKSksdC5uYW1lJiYoZS5uYW1lPXRoaXMuY3JlYXRlVW5pcXVlTmFtZSh0Lm5hbWUpKSxWKGUsdCksUHJvbWlzZS5yZXNvbHZlKGUpO2NvbnNvbGUud2FybigiVEhSRUUuR0xURkxvYWRlcjogTWlzc2luZyBjYW1lcmEgcGFyYW1ldGVycy4iKX1sb2FkU2tpbihBKXtjb25zdCBlPXRoaXMuanNvbi5za2luc1tBXSx0PVtdO2ZvcihsZXQgQT0wLG49ZS5qb2ludHMubGVuZ3RoO0E8bjtBKyspdC5wdXNoKHRoaXMuX2xvYWROb2RlU2hhbGxvdyhlLmpvaW50c1tBXSkpO3JldHVybiB2b2lkIDAhPT1lLmludmVyc2VCaW5kTWF0cmljZXM/dC5wdXNoKHRoaXMuZ2V0RGVwZW5kZW5jeSgiYWNjZXNzb3IiLGUuaW52ZXJzZUJpbmRNYXRyaWNlcykpOnQucHVzaChudWxsKSxQcm9taXNlLmFsbCh0KS50aGVuKChmdW5jdGlvbihBKXtjb25zdCB0PUEucG9wKCksaT1BLHI9W10sbz1bXTtmb3IobGV0IEE9MCxzPWkubGVuZ3RoO0E8cztBKyspe2NvbnN0IHM9aVtBXTtpZihzKXtyLnB1c2gocyk7Y29uc3QgZT1uZXcgbi5NYXRyaXg0O251bGwhPT10JiZlLmZyb21BcnJheSh0LmFycmF5LDE2KkEpLG8ucHVzaChlKX1lbHNlIGNvbnNvbGUud2FybignVEhSRUUuR0xURkxvYWRlcjogSm9pbnQgIiVzIiBjb3VsZCBub3QgYmUgZm91bmQuJyxlLmpvaW50c1tBXSl9cmV0dXJuIG5ldyBuLlNrZWxldG9uKHIsbyl9KSl9bG9hZEFuaW1hdGlvbihBKXtjb25zdCBlPXRoaXMuanNvbi5hbmltYXRpb25zW0FdLHQ9ZS5uYW1lP2UubmFtZToiYW5pbWF0aW9uXyIrQSxpPVtdLHI9W10sbz1bXSxzPVtdLGE9W107Zm9yKGxldCBBPTAsdD1lLmNoYW5uZWxzLmxlbmd0aDtBPHQ7QSsrKXtjb25zdCB0PWUuY2hhbm5lbHNbQV0sbj1lLnNhbXBsZXJzW3Quc2FtcGxlcl0sQj10LnRhcmdldCxjPUIubm9kZSxnPXZvaWQgMCE9PWUucGFyYW1ldGVycz9lLnBhcmFtZXRlcnNbbi5pbnB1dF06bi5pbnB1dCxFPXZvaWQgMCE9PWUucGFyYW1ldGVycz9lLnBhcmFtZXRlcnNbbi5vdXRwdXRdOm4ub3V0cHV0O3ZvaWQgMCE9PUIubm9kZSYmKGkucHVzaCh0aGlzLmdldERlcGVuZGVuY3koIm5vZGUiLGMpKSxyLnB1c2godGhpcy5nZXREZXBlbmRlbmN5KCJhY2Nlc3NvciIsZykpLG8ucHVzaCh0aGlzLmdldERlcGVuZGVuY3koImFjY2Vzc29yIixFKSkscy5wdXNoKG4pLGEucHVzaChCKSl9cmV0dXJuIFByb21pc2UuYWxsKFtQcm9taXNlLmFsbChpKSxQcm9taXNlLmFsbChyKSxQcm9taXNlLmFsbChvKSxQcm9taXNlLmFsbChzKSxQcm9taXNlLmFsbChhKV0pLnRoZW4oKGZ1bmN0aW9uKEEpe2NvbnN0IGU9QVswXSxpPUFbMV0scj1BWzJdLG89QVszXSxzPUFbNF0sYT1bXTtmb3IobGV0IEE9MCx0PWUubGVuZ3RoO0E8dDtBKyspe2NvbnN0IHQ9ZVtBXSxCPWlbQV0sYz1yW0FdLGc9b1tBXSxFPXNbQV07aWYodm9pZCAwPT09dCljb250aW51ZTtsZXQgUTtzd2l0Y2godC51cGRhdGVNYXRyaXgoKSxqW0UucGF0aF0pe2Nhc2Ugai53ZWlnaHRzOlE9bi5OdW1iZXJLZXlmcmFtZVRyYWNrO2JyZWFrO2Nhc2Ugai5yb3RhdGlvbjpRPW4uUXVhdGVybmlvbktleWZyYW1lVHJhY2s7YnJlYWs7Y2FzZSBqLnBvc2l0aW9uOmNhc2Ugai5zY2FsZTpkZWZhdWx0OlE9bi5WZWN0b3JLZXlmcmFtZVRyYWNrfWNvbnN0IHU9dC5uYW1lP3QubmFtZTp0LnV1aWQsbD12b2lkIDAhPT1nLmludGVycG9sYXRpb24/SltnLmludGVycG9sYXRpb25dOm4uSW50ZXJwb2xhdGVMaW5lYXIsaD1bXTtqW0UucGF0aF09PT1qLndlaWdodHM/dC50cmF2ZXJzZSgoZnVuY3Rpb24oQSl7QS5tb3JwaFRhcmdldEluZmx1ZW5jZXMmJmgucHVzaChBLm5hbWU/QS5uYW1lOkEudXVpZCl9KSk6aC5wdXNoKHUpO2xldCB3PWMuYXJyYXk7aWYoYy5ub3JtYWxpemVkKXtjb25zdCBBPVoody5jb25zdHJ1Y3RvciksZT1uZXcgRmxvYXQzMkFycmF5KHcubGVuZ3RoKTtmb3IobGV0IHQ9MCxuPXcubGVuZ3RoO3Q8bjt0KyspZVt0XT13W3RdKkE7dz1lfWZvcihsZXQgQT0wLGU9aC5sZW5ndGg7QTxlO0ErKyl7Y29uc3QgZT1uZXcgUShoW0FdKyIuIitqW0UucGF0aF0sQi5hcnJheSx3LGwpOyJDVUJJQ1NQTElORSI9PT1nLmludGVycG9sYXRpb24mJihlLmNyZWF0ZUludGVycG9sYW50PWZ1bmN0aW9uKEEpe3JldHVybiBuZXcodGhpcyBpbnN0YW5jZW9mIG4uUXVhdGVybmlvbktleWZyYW1lVHJhY2s/UjpUKSh0aGlzLnRpbWVzLHRoaXMudmFsdWVzLHRoaXMuZ2V0VmFsdWVTaXplKCkvMyxBKX0sZS5jcmVhdGVJbnRlcnBvbGFudC5pc0ludGVycG9sYW50RmFjdG9yeU1ldGhvZEdMVEZDdWJpY1NwbGluZT0hMCksYS5wdXNoKGUpfX1yZXR1cm4gbmV3IG4uQW5pbWF0aW9uQ2xpcCh0LHZvaWQgMCxhKX0pKX1jcmVhdGVOb2RlTWVzaChBKXtjb25zdCBlPXRoaXMuanNvbix0PXRoaXMsbj1lLm5vZGVzW0FdO3JldHVybiB2b2lkIDA9PT1uLm1lc2g/bnVsbDp0LmdldERlcGVuZGVuY3koIm1lc2giLG4ubWVzaCkudGhlbigoZnVuY3Rpb24oQSl7Y29uc3QgZT10Ll9nZXROb2RlUmVmKHQubWVzaENhY2hlLG4ubWVzaCxBKTtyZXR1cm4gdm9pZCAwIT09bi53ZWlnaHRzJiZlLnRyYXZlcnNlKChmdW5jdGlvbihBKXtpZihBLmlzTWVzaClmb3IobGV0IGU9MCx0PW4ud2VpZ2h0cy5sZW5ndGg7ZTx0O2UrKylBLm1vcnBoVGFyZ2V0SW5mbHVlbmNlc1tlXT1uLndlaWdodHNbZV19KSksZX0pKX1sb2FkTm9kZShBKXtjb25zdCBlPXRoaXMsdD10aGlzLmpzb24ubm9kZXNbQV0sbj1lLl9sb2FkTm9kZVNoYWxsb3coQSksaT1bXSxyPXQuY2hpbGRyZW58fFtdO2ZvcihsZXQgQT0wLHQ9ci5sZW5ndGg7QTx0O0ErKylpLnB1c2goZS5nZXREZXBlbmRlbmN5KCJub2RlIixyW0FdKSk7Y29uc3Qgbz12b2lkIDA9PT10LnNraW4/UHJvbWlzZS5yZXNvbHZlKG51bGwpOmUuZ2V0RGVwZW5kZW5jeSgic2tpbiIsdC5za2luKTtyZXR1cm4gUHJvbWlzZS5hbGwoW24sUHJvbWlzZS5hbGwoaSksb10pLnRoZW4oKGZ1bmN0aW9uKEEpe2NvbnN0IGU9QVswXSx0PUFbMV0sbj1BWzJdO251bGwhPT1uJiZlLnRyYXZlcnNlKChmdW5jdGlvbihBKXtBLmlzU2tpbm5lZE1lc2gmJkEuYmluZChuLF8pfSkpO2ZvcihsZXQgQT0wLG49dC5sZW5ndGg7QTxuO0ErKyllLmFkZCh0W0FdKTtyZXR1cm4gZX0pKX1fbG9hZE5vZGVTaGFsbG93KEEpe2NvbnN0IGU9dGhpcy5qc29uLHQ9dGhpcy5leHRlbnNpb25zLGk9dGhpcztpZih2b2lkIDAhPT10aGlzLm5vZGVDYWNoZVtBXSlyZXR1cm4gdGhpcy5ub2RlQ2FjaGVbQV07Y29uc3Qgcj1lLm5vZGVzW0FdLG89ci5uYW1lP2kuY3JlYXRlVW5pcXVlTmFtZShyLm5hbWUpOiIiLHM9W10sYT1pLl9pbnZva2VPbmUoKGZ1bmN0aW9uKGUpe3JldHVybiBlLmNyZWF0ZU5vZGVNZXNoJiZlLmNyZWF0ZU5vZGVNZXNoKEEpfSkpO3JldHVybiBhJiZzLnB1c2goYSksdm9pZCAwIT09ci5jYW1lcmEmJnMucHVzaChpLmdldERlcGVuZGVuY3koImNhbWVyYSIsci5jYW1lcmEpLnRoZW4oKGZ1bmN0aW9uKEEpe3JldHVybiBpLl9nZXROb2RlUmVmKGkuY2FtZXJhQ2FjaGUsci5jYW1lcmEsQSl9KSkpLGkuX2ludm9rZUFsbCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuY3JlYXRlTm9kZUF0dGFjaG1lbnQmJmUuY3JlYXRlTm9kZUF0dGFjaG1lbnQoQSl9KSkuZm9yRWFjaCgoZnVuY3Rpb24oQSl7cy5wdXNoKEEpfSkpLHRoaXMubm9kZUNhY2hlW0FdPVByb21pc2UuYWxsKHMpLnRoZW4oKGZ1bmN0aW9uKGUpe2xldCBzO2lmKHM9ITA9PT1yLmlzQm9uZT9uZXcgbi5Cb25lOmUubGVuZ3RoPjE/bmV3IG4uR3JvdXA6MT09PWUubGVuZ3RoP2VbMF06bmV3IG4uT2JqZWN0M0QscyE9PWVbMF0pZm9yKGxldCBBPTAsdD1lLmxlbmd0aDtBPHQ7QSsrKXMuYWRkKGVbQV0pO2lmKHIubmFtZSYmKHMudXNlckRhdGEubmFtZT1yLm5hbWUscy5uYW1lPW8pLFYocyxyKSxyLmV4dGVuc2lvbnMmJk8odCxzLHIpLHZvaWQgMCE9PXIubWF0cml4KXtjb25zdCBBPW5ldyBuLk1hdHJpeDQ7QS5mcm9tQXJyYXkoci5tYXRyaXgpLHMuYXBwbHlNYXRyaXg0KEEpfWVsc2Ugdm9pZCAwIT09ci50cmFuc2xhdGlvbiYmcy5wb3NpdGlvbi5mcm9tQXJyYXkoci50cmFuc2xhdGlvbiksdm9pZCAwIT09ci5yb3RhdGlvbiYmcy5xdWF0ZXJuaW9uLmZyb21BcnJheShyLnJvdGF0aW9uKSx2b2lkIDAhPT1yLnNjYWxlJiZzLnNjYWxlLmZyb21BcnJheShyLnNjYWxlKTtyZXR1cm4gaS5hc3NvY2lhdGlvbnMuaGFzKHMpfHxpLmFzc29jaWF0aW9ucy5zZXQocyx7fSksaS5hc3NvY2lhdGlvbnMuZ2V0KHMpLm5vZGVzPUEsc30pKSx0aGlzLm5vZGVDYWNoZVtBXX1sb2FkU2NlbmUoQSl7Y29uc3QgZT10aGlzLmV4dGVuc2lvbnMsdD10aGlzLmpzb24uc2NlbmVzW0FdLGk9dGhpcyxyPW5ldyBuLkdyb3VwO3QubmFtZSYmKHIubmFtZT1pLmNyZWF0ZVVuaXF1ZU5hbWUodC5uYW1lKSksVihyLHQpLHQuZXh0ZW5zaW9ucyYmTyhlLHIsdCk7Y29uc3Qgbz10Lm5vZGVzfHxbXSxzPVtdO2ZvcihsZXQgQT0wLGU9by5sZW5ndGg7QTxlO0ErKylzLnB1c2goaS5nZXREZXBlbmRlbmN5KCJub2RlIixvW0FdKSk7cmV0dXJuIFByb21pc2UuYWxsKHMpLnRoZW4oKGZ1bmN0aW9uKEEpe2ZvcihsZXQgZT0wLHQ9QS5sZW5ndGg7ZTx0O2UrKylyLmFkZChBW2VdKTtyZXR1cm4gaS5hc3NvY2lhdGlvbnM9KEE9Pntjb25zdCBlPW5ldyBNYXA7Zm9yKGNvbnN0W0EsdF1vZiBpLmFzc29jaWF0aW9ucykoQSBpbnN0YW5jZW9mIG4uTWF0ZXJpYWx8fEEgaW5zdGFuY2VvZiBuLlRleHR1cmUpJiZlLnNldChBLHQpO3JldHVybiBBLnRyYXZlcnNlKEE9Pntjb25zdCB0PWkuYXNzb2NpYXRpb25zLmdldChBKTtudWxsIT10JiZlLnNldChBLHQpfSksZX0pKHIpLHJ9KSl9fWZ1bmN0aW9uICQoQSxlLHQpe2NvbnN0IGk9ZS5hdHRyaWJ1dGVzLHI9W107ZnVuY3Rpb24gbyhlLG4pe3JldHVybiB0LmdldERlcGVuZGVuY3koImFjY2Vzc29yIixlKS50aGVuKChmdW5jdGlvbihlKXtBLnNldEF0dHJpYnV0ZShuLGUpfSkpfWZvcihjb25zdCBlIGluIGkpe2NvbnN0IHQ9a1tlXXx8ZS50b0xvd2VyQ2FzZSgpO3QgaW4gQS5hdHRyaWJ1dGVzfHxyLnB1c2gobyhpW2VdLHQpKX1pZih2b2lkIDAhPT1lLmluZGljZXMmJiFBLmluZGV4KXtjb25zdCBuPXQuZ2V0RGVwZW5kZW5jeSgiYWNjZXNzb3IiLGUuaW5kaWNlcykudGhlbigoZnVuY3Rpb24oZSl7QS5zZXRJbmRleChlKX0pKTtyLnB1c2gobil9cmV0dXJuIFYoQSxlKSxmdW5jdGlvbihBLGUsdCl7Y29uc3QgaT1lLmF0dHJpYnV0ZXMscj1uZXcgbi5Cb3gzO2lmKHZvaWQgMD09PWkuUE9TSVRJT04pcmV0dXJuO3tjb25zdCBBPXQuanNvbi5hY2Nlc3NvcnNbaS5QT1NJVElPTl0sZT1BLm1pbixvPUEubWF4O2lmKHZvaWQgMD09PWV8fHZvaWQgMD09PW8pcmV0dXJuIHZvaWQgY29uc29sZS53YXJuKCJUSFJFRS5HTFRGTG9hZGVyOiBNaXNzaW5nIG1pbi9tYXggcHJvcGVydGllcyBmb3IgYWNjZXNzb3IgUE9TSVRJT04uIik7aWYoci5zZXQobmV3IG4uVmVjdG9yMyhlWzBdLGVbMV0sZVsyXSksbmV3IG4uVmVjdG9yMyhvWzBdLG9bMV0sb1syXSkpLEEubm9ybWFsaXplZCl7Y29uc3QgZT1aKFNbQS5jb21wb25lbnRUeXBlXSk7ci5taW4ubXVsdGlwbHlTY2FsYXIoZSksci5tYXgubXVsdGlwbHlTY2FsYXIoZSl9fWNvbnN0IG89ZS50YXJnZXRzO2lmKHZvaWQgMCE9PW8pe2NvbnN0IEE9bmV3IG4uVmVjdG9yMyxlPW5ldyBuLlZlY3RvcjM7Zm9yKGxldCBuPTAsaT1vLmxlbmd0aDtuPGk7bisrKXtjb25zdCBpPW9bbl07aWYodm9pZCAwIT09aS5QT1NJVElPTil7Y29uc3Qgbj10Lmpzb24uYWNjZXNzb3JzW2kuUE9TSVRJT05dLHI9bi5taW4sbz1uLm1heDtpZih2b2lkIDAhPT1yJiZ2b2lkIDAhPT1vKXtpZihlLnNldFgoTWF0aC5tYXgoTWF0aC5hYnMoclswXSksTWF0aC5hYnMob1swXSkpKSxlLnNldFkoTWF0aC5tYXgoTWF0aC5hYnMoclsxXSksTWF0aC5hYnMob1sxXSkpKSxlLnNldFooTWF0aC5tYXgoTWF0aC5hYnMoclsyXSksTWF0aC5hYnMob1syXSkpKSxuLm5vcm1hbGl6ZWQpe2NvbnN0IEE9WihTW24uY29tcG9uZW50VHlwZV0pO2UubXVsdGlwbHlTY2FsYXIoQSl9QS5tYXgoZSl9ZWxzZSBjb25zb2xlLndhcm4oIlRIUkVFLkdMVEZMb2FkZXI6IE1pc3NpbmcgbWluL21heCBwcm9wZXJ0aWVzIGZvciBhY2Nlc3NvciBQT1NJVElPTi4iKX19ci5leHBhbmRCeVZlY3RvcihBKX1BLmJvdW5kaW5nQm94PXI7Y29uc3Qgcz1uZXcgbi5TcGhlcmU7ci5nZXRDZW50ZXIocy5jZW50ZXIpLHMucmFkaXVzPXIubWluLmRpc3RhbmNlVG8oci5tYXgpLzIsQS5ib3VuZGluZ1NwaGVyZT1zfShBLGUsdCksUHJvbWlzZS5hbGwocikudGhlbigoZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwIT09ZS50YXJnZXRzP2Z1bmN0aW9uKEEsZSx0KXtsZXQgbj0hMSxpPSExLHI9ITE7Zm9yKGxldCBBPTAsdD1lLmxlbmd0aDtBPHQ7QSsrKXtjb25zdCB0PWVbQV07aWYodm9pZCAwIT09dC5QT1NJVElPTiYmKG49ITApLHZvaWQgMCE9PXQuTk9STUFMJiYoaT0hMCksdm9pZCAwIT09dC5DT0xPUl8wJiYocj0hMCksbiYmaSYmcilicmVha31pZighbiYmIWkmJiFyKXJldHVybiBQcm9taXNlLnJlc29sdmUoQSk7Y29uc3Qgbz1bXSxzPVtdLGE9W107Zm9yKGxldCBCPTAsYz1lLmxlbmd0aDtCPGM7QisrKXtjb25zdCBjPWVbQl07aWYobil7Y29uc3QgZT12b2lkIDAhPT1jLlBPU0lUSU9OP3QuZ2V0RGVwZW5kZW5jeSgiYWNjZXNzb3IiLGMuUE9TSVRJT04pOkEuYXR0cmlidXRlcy5wb3NpdGlvbjtvLnB1c2goZSl9aWYoaSl7Y29uc3QgZT12b2lkIDAhPT1jLk5PUk1BTD90LmdldERlcGVuZGVuY3koImFjY2Vzc29yIixjLk5PUk1BTCk6QS5hdHRyaWJ1dGVzLm5vcm1hbDtzLnB1c2goZSl9aWYocil7Y29uc3QgZT12b2lkIDAhPT1jLkNPTE9SXzA/dC5nZXREZXBlbmRlbmN5KCJhY2Nlc3NvciIsYy5DT0xPUl8wKTpBLmF0dHJpYnV0ZXMuY29sb3I7YS5wdXNoKGUpfX1yZXR1cm4gUHJvbWlzZS5hbGwoW1Byb21pc2UuYWxsKG8pLFByb21pc2UuYWxsKHMpLFByb21pc2UuYWxsKGEpXSkudGhlbigoZnVuY3Rpb24oZSl7Y29uc3QgdD1lWzBdLG89ZVsxXSxzPWVbMl07cmV0dXJuIG4mJihBLm1vcnBoQXR0cmlidXRlcy5wb3NpdGlvbj10KSxpJiYoQS5tb3JwaEF0dHJpYnV0ZXMubm9ybWFsPW8pLHImJihBLm1vcnBoQXR0cmlidXRlcy5jb2xvcj1zKSxBLm1vcnBoVGFyZ2V0c1JlbGF0aXZlPSEwLEF9KSl9KEEsZS50YXJnZXRzLHQpOkF9KSl9fSxmdW5jdGlvbihBLGUsdCl7dCg0KTtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKSxvPXQoMzA4KSxzPXQoMzA5KTtmdW5jdGlvbiBhKEEpe2NvbnN0IGU9ZnVuY3Rpb24oQSl7cmV0dXJuIEEqKDE4MC9NYXRoLlBJKX0oQSk7aWYoIVN0cmluZyhlKS5pbmNsdWRlcygiLiIpKXJldHVybiBlO2NvbnN0IHQ9U3RyaW5nKGUpLnNwbGl0KCIuIiksbj10WzFdLnN1YnN0cmluZygwLDMpO3JldHVybiI5OTkiPT09biYmIjkiPT09dFsxXS5jaGFyQXQoMyk/TnVtYmVyKHRbMF0pKzE6TnVtYmVyKHRbMF0rIi4iK24pfUEuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLm9wZW49ITEsdGhpcy5fM2Q9e30sdGhpcy50aHJlZT17fSx0aGlzLndha2VMb2NrPW51bGwsdGhpcy5ydW50aW1lLmV4dF9qZzNkPyh0aGlzLl8zZD10aGlzLnJ1bnRpbWUuZXh0X2pnM2QsdGhpcy50aHJlZT10aGlzLl8zZC50aHJlZSk6dm0uZXh0ZW5zaW9uTWFuYWdlci5sb2FkRXh0ZW5zaW9uVVJMKCJqZzNkIikudGhlbigoKT0+e3RoaXMuXzNkPXRoaXMucnVudGltZS5leHRfamczZCx0aGlzLnRocmVlPXRoaXMuXzNkLnRocmVlfSl9Z2V0SW5mbygpe3JldHVybntpZDoiamczZFZyIixuYW1lOiIzRCBWUiIsY29sb3IxOiIjQjEwMEZFIixjb2xvcjI6IiM4MDAwQkMiLGJsb2NrSWNvblVSSTpvLGJsb2Nrczpbe29wY29kZToiaXNTdXBwb3J0ZWQiLHRleHQ6ImlzIHZyIHN1cHBvcnRlZD8iLGJsb2NrVHlwZTpuLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITB9LHtvcGNvZGU6ImNyZWF0ZVNlc3Npb24iLHRleHQ6ImNyZWF0ZSB2ciBzZXNzaW9uIixibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJjbG9zZVNlc3Npb24iLHRleHQ6ImNsb3NlIHZyIHNlc3Npb24iLGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImlzT3BlbmVkIix0ZXh0OiJpcyB2ciBvcGVuPyIsYmxvY2tUeXBlOm4uQk9PTEVBTixkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIse29wY29kZToiYXR0YWNoT2JqZWN0Iix0ZXh0OiJhdHRhY2ggY2FtZXJhIHRvIG9iamVjdCBuYW1lZCBbT0JKRUNUXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e09CSkVDVDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6Ik9iamVjdDEifX19LHtvcGNvZGU6ImRldGFjaE9iamVjdCIsdGV4dDoiZGV0YWNoIGNhbWVyYSBmcm9tIG9iamVjdCIsYmxvY2tUeXBlOm4uQ09NTUFORH0sIi0tLSIse29wY29kZToiZ2V0Q29udHJvbGxlclBvc2l0aW9uIix0ZXh0OiJjb250cm9sbGVyICNbSU5ERVhdIHBvc2l0aW9uIFtWRUNUT1IzXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYmxvY2tJY29uVVJJOnMsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntJTkRFWDp7dHlwZTppLk5VTUJFUixtZW51OiJjb3VudCJ9LFZFQ1RPUjM6e3R5cGU6aS5TVFJJTkcsbWVudToidmVjdG9yMyJ9fX0se29wY29kZToiZ2V0Q29udHJvbGxlclJvdGF0aW9uIix0ZXh0OiJjb250cm9sbGVyICNbSU5ERVhdIHJvdGF0aW9uIFtWRUNUT1IzXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYmxvY2tJY29uVVJJOnMsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntJTkRFWDp7dHlwZTppLk5VTUJFUixtZW51OiJjb3VudCJ9LFZFQ1RPUjM6e3R5cGU6aS5TVFJJTkcsbWVudToidmVjdG9yMyJ9fX0se29wY29kZToiZ2V0Q29udHJvbGxlclNpZGUiLHRleHQ6InNpZGUgb2YgY29udHJvbGxlciAjW0lOREVYXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYmxvY2tJY29uVVJJOnMsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntJTkRFWDp7dHlwZTppLk5VTUJFUixtZW51OiJjb3VudCJ9fX0sIi0tLSIse29wY29kZToiZ2V0Q29udHJvbGxlclN0aWNrIix0ZXh0OiJqb3lzdGljayBheGlzIFtYWV0gb2YgY29udHJvbGxlciAjW0lOREVYXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYmxvY2tJY29uVVJJOnMsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntYWTp7dHlwZTppLlNUUklORyxtZW51OiJ2ZWN0b3IyIn0sSU5ERVg6e3R5cGU6aS5OVU1CRVIsbWVudToiY291bnQifX19LHtvcGNvZGU6ImdldENvbnRyb2xsZXJUcmlnIix0ZXh0OiJhbmFsb2cgdmFsdWUgb2YgW1RSSUdHRVJdIHRyaWdnZXIgb24gY29udHJvbGxlciAjW0lOREVYXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYmxvY2tJY29uVVJJOnMsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntUUklHR0VSOnt0eXBlOmkuU1RSSU5HLG1lbnU6InRyaWcifSxJTkRFWDp7dHlwZTppLk5VTUJFUixtZW51OiJjb3VudCJ9fX0se29wY29kZToiZ2V0Q29udHJvbGxlckJ1dHRvbiIsdGV4dDoiYnV0dG9uIFtCVVRUT05dIG9uIGNvbnRyb2xsZXIgI1tJTkRFWF0gcHJlc3NlZD8iLGJsb2NrVHlwZTpuLkJPT0xFQU4sYmxvY2tJY29uVVJJOnMsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntCVVRUT046e3R5cGU6aS5TVFJJTkcsbWVudToiYnV0dCJ9LElOREVYOnt0eXBlOmkuTlVNQkVSLG1lbnU6ImNvdW50In19fSx7b3Bjb2RlOiJnZXRDb250cm9sbGVyVG91Y2hpbmciLHRleHQ6IltCVVRUT05dIG9uIGNvbnRyb2xsZXIgI1tJTkRFWF0gdG91Y2hlZD8iLGJsb2NrVHlwZTpuLkJPT0xFQU4sYmxvY2tJY29uVVJJOnMsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntCVVRUT046e3R5cGU6aS5TVFJJTkcsbWVudToiYnV0dEFsbCJ9LElOREVYOnt0eXBlOmkuTlVNQkVSLG1lbnU6ImNvdW50In19fV0sbWVudXM6e3ZlY3RvcjM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIngiLCJ5IiwieiJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfSx2ZWN0b3IyOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJ4IiwieSJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfSxidXR0OnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJhIiwiYiIsIngiLCJ5Iiwiam95c3RpY2siXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX0sdHJpZzp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiYmFjayIsInNpZGUiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX0sYnV0dEFsbDp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiYSBidXR0b24iLCJiIGJ1dHRvbiIsInggYnV0dG9uIiwieSBidXR0b24iLCJqb3lzdGljayIsImJhY2sgdHJpZ2dlciIsInNpZGUgdHJpZ2dlciJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfSxjb3VudDp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiMSIsIjIiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX19fX1fZ2V0UmVuZGVyZXIoKXtpZih0aGlzLl8zZClyZXR1cm4gdGhpcy5fM2QucmVuZGVyZXJ9X2dldEdhbWVwYWQoQSl7Y29uc3QgZT1yLnRvTnVtYmVyKEEpLTE7aWYoIXRoaXMuXzNkLnNjZW5lKXJldHVybjtjb25zdCB0PXRoaXMuX2dldFJlbmRlcmVyKCk7aWYoIXQpcmV0dXJuO2NvbnN0IG49dC54ci5nZXRTZXNzaW9uKCk7aWYoIW4pcmV0dXJuO2NvbnN0IGk9bi5pbnB1dFNvdXJjZXNbZV07aWYoIWkpcmV0dXJuO3JldHVybiBpLmdhbWVwYWR9X2dldENvbnRyb2xsZXIoQSl7Y29uc3QgZT10aGlzLl9nZXRSZW5kZXJlcigpO2lmKCFlKXJldHVybiBudWxsO3JldHVybiBlLnhyLmdldENvbnRyb2xsZXJHcmlwKEEpfHxlLnhyLmdldENvbnRyb2xsZXIoQSl9X2dldElucHV0U291cmNlKEEpe2NvbnN0IGU9dGhpcy5fZ2V0UmVuZGVyZXIoKTtpZighZSlyZXR1cm4gbnVsbDtjb25zdCB0PWUueHIuZ2V0U2Vzc2lvbigpO2lmKCF0KXJldHVybiBudWxsO3JldHVybiB0LmlucHV0U291cmNlc1tBXXx8bnVsbH1fZGlzcG9zZUltbWVyc2l2ZSgpe3RoaXMuc2Vzc2lvbj1udWxsO2NvbnN0IEE9dGhpcy5fZ2V0UmVuZGVyZXIoKTtBJiYoQS54ci5lbmFibGVkPSExLEEuc2V0QW5pbWF0aW9uTG9vcChudWxsKSl9YXN5bmMgX3JlcXVlc3RXYWtlTG9jaygpe2lmKCJ3YWtlTG9jayJpbiBuYXZpZ2F0b3IpdHJ5e3RoaXMud2FrZUxvY2s9YXdhaXQgbmF2aWdhdG9yLndha2VMb2NrLnJlcXVlc3QoInNjcmVlbiIpLHRoaXMud2FrZUxvY2suYWRkRXZlbnRMaXN0ZW5lcigicmVsZWFzZSIsKCk9Pntjb25zb2xlLmxvZygiV2FrZSBMb2NrIHdhcyByZWxlYXNlZCIpfSksY29uc29sZS5sb2coIldha2UgTG9jayBpcyBhY3RpdmUiKX1jYXRjaChBKXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gYWNxdWlyZSB3YWtlIGxvY2s6IixBKX19X3JlbGVhc2VXYWtlTG9jaygpe3RoaXMud2FrZUxvY2smJih0aGlzLndha2VMb2NrLnJlbGVhc2UoKSx0aGlzLndha2VMb2NrPW51bGwpfWFzeW5jIF9jcmVhdGVJbW1lcnNpdmUoKXtpZighKCJ4ciJpbiBuYXZpZ2F0b3IpKXJldHVybiExO2NvbnN0IEE9dGhpcy5fZ2V0UmVuZGVyZXIoKTtpZighQSlyZXR1cm4hMTtjb25zdCBlPWF3YWl0IG5hdmlnYXRvci54ci5yZXF1ZXN0U2Vzc2lvbigiaW1tZXJzaXZlLXZyIix7b3B0aW9uYWxGZWF0dXJlczpbImxvY2FsLWZsb29yIiwiYm91bmRlZC1mbG9vciIsImhhbmQtdHJhY2tpbmciLCJsYXllcnMiXX0pO3JldHVybiB0aGlzLnNlc3Npb249ZSx0aGlzLm9wZW49ITAsQS54ci5lbmFibGVkPSEwLGF3YWl0IEEueHIuc2V0U2Vzc2lvbihlKSxhd2FpdCB0aGlzLl9yZXF1ZXN0V2FrZUxvY2soKSxlLmFkZEV2ZW50TGlzdGVuZXIoImVuZCIsKCk9Pnt0aGlzLm9wZW49ITEsdGhpcy5fZGlzcG9zZUltbWVyc2l2ZSgpLHRoaXMuX3JlbGVhc2VXYWtlTG9jaygpfSksZS5yZXF1ZXN0UmVmZXJlbmNlU3BhY2UoImxvY2FsIikudGhlbihBPT57dGhpcy5sb2NhbFNwYWNlPUF9KSxBLnNldEFuaW1hdGlvbkxvb3AoKHQsbik9PntpZighdGhpcy5vcGVuKXJldHVybjtjb25zdCBpPXRoaXMuXzNkO2lmKGkuY2FtZXJhJiZpLnNjZW5lJiYoQS5yZW5kZXIoaS5zY2VuZSxpLmNhbWVyYSksdGhpcy5sb2NhbFNwYWNlJiZuKSl7dGhpcy5jb250cm9sbGVyUG9zZXM9e307Y29uc3QgQT1lLmlucHV0U291cmNlcztmb3IobGV0IGU9MDtlPEEubGVuZ3RoO2UrKyl7Y29uc3QgdD1BW2VdLGk9bi5nZXRQb3NlKHQudGFyZ2V0UmF5U3BhY2UsdGhpcy5sb2NhbFNwYWNlKTtpJiYodGhpcy5jb250cm9sbGVyUG9zZXNbZV09e3Bvc2l0aW9uOmkudHJhbnNmb3JtLnBvc2l0aW9uLG9yaWVudGF0aW9uOmkudHJhbnNmb3JtLm9yaWVudGF0aW9ufSl9fX0pLGV9aXNTdXBwb3J0ZWQoKXtyZXR1cm4ieHIiaW4gbmF2aWdhdG9yJiZuYXZpZ2F0b3IueHIuaXNTZXNzaW9uU3VwcG9ydGVkKCJpbW1lcnNpdmUtdnIiKX1pc09wZW5lZCgpe3JldHVybiB0aGlzLm9wZW59Y3JlYXRlU2Vzc2lvbigpe2lmKCF0aGlzLm9wZW4mJiF0aGlzLnNlc3Npb24pcmV0dXJuIHRoaXMuX2NyZWF0ZUltbWVyc2l2ZSgpfWNsb3NlU2Vzc2lvbigpe2lmKHRoaXMub3Blbj0hMSx0aGlzLnNlc3Npb24pcmV0dXJuIHRoaXMuc2Vzc2lvbi5lbmQoKX1hdHRhY2hPYmplY3QoQSl7Y29uc3QgZT10aGlzLl8zZDtpZighZS5zY2VuZSlyZXR1cm47aWYoIWUuY2FtZXJhKXJldHVybjtjb25zdCB0PXIudG9TdHJpbmcoQS5PQkpFQ1QpLG49ZS5zY2VuZS5nZXRPYmplY3RCeU5hbWUodCk7biYmbi5hZGQoZS5jYW1lcmEpfWRldGFjaE9iamVjdCgpe2NvbnN0IEE9dGhpcy5fM2Q7QS5zY2VuZSYmQS5jYW1lcmEmJkEuc2NlbmUuYWRkKEEuY2FtZXJhKX1nZXRDb250cm9sbGVyUG9zaXRpb24oQSl7aWYoIXRoaXMuXzNkfHwhdGhpcy5fM2Quc2NlbmUpcmV0dXJuIiI7Y29uc3QgZT1yLnRvTnVtYmVyKEEuSU5ERVgpLTEsdD1BLlZFQ1RPUjM7aWYoIXR8fCFbIngiLCJ5IiwieiJdLmluY2x1ZGVzKHQpKXJldHVybiIiO2lmKHRoaXMuY29udHJvbGxlclBvc2VzJiZ0aGlzLmNvbnRyb2xsZXJQb3Nlc1tlXSlyZXR1cm4gci50b051bWJlcih0aGlzLmNvbnRyb2xsZXJQb3Nlc1tlXS5wb3NpdGlvblt0XSk7aWYoIXRoaXMuX2dldFJlbmRlcmVyKCkpcmV0dXJuIiI7Y29uc3Qgbj10aGlzLl9nZXRDb250cm9sbGVyKGUpO2lmKCFuKXJldHVybiIiO24udXBkYXRlTWF0cml4V29ybGQoITApO2NvbnN0IGk9bmV3KHRoaXMudGhyZWUmJnRoaXMudGhyZWUudGhyZWUmJnRoaXMudGhyZWUudGhyZWUuVmVjdG9yMz90aGlzLnRocmVlLnRocmVlLlZlY3RvcjM6dGhpcy50aHJlZS5WZWN0b3IzKTtyZXR1cm4gbi5nZXRXb3JsZFBvc2l0aW9uKGkpLHIudG9OdW1iZXIoaVt0XSl9Z2V0Q29udHJvbGxlclJvdGF0aW9uKEEpe2lmKCF0aGlzLl8zZHx8IXRoaXMuXzNkLnNjZW5lKXJldHVybiIiO2NvbnN0IGU9ci50b051bWJlcihBLklOREVYKS0xLHQ9QS5WRUNUT1IzO2lmKCF0fHwhWyJ4IiwieSIsInoiXS5pbmNsdWRlcyh0KSlyZXR1cm4iIjtpZih0aGlzLmNvbnRyb2xsZXJQb3NlcyYmdGhpcy5jb250cm9sbGVyUG9zZXNbZV0pe2NvbnN0IEE9dGhpcy5jb250cm9sbGVyUG9zZXNbZV0ub3JpZW50YXRpb24sbj1uZXcodGhpcy50aHJlZSYmdGhpcy50aHJlZS50aHJlZSYmdGhpcy50aHJlZS50aHJlZS5RdWF0ZXJuaW9uP3RoaXMudGhyZWUudGhyZWUuUXVhdGVybmlvbjp0aGlzLnRocmVlLlF1YXRlcm5pb24pKEEueCxBLnksQS56LEEudyksaT1uZXcodGhpcy50aHJlZSYmdGhpcy50aHJlZS50aHJlZSYmdGhpcy50aHJlZS50aHJlZS5FdWxlcj90aGlzLnRocmVlLnRocmVlLkV1bGVyOnRoaXMudGhyZWUuRXVsZXIpKDAsMCwwLCJZWFoiKTtyZXR1cm4gaS5zZXRGcm9tUXVhdGVybmlvbihuLCJZWFoiKSxhKGlbdF0pfWlmKCF0aGlzLl9nZXRSZW5kZXJlcigpKXJldHVybiIiO2NvbnN0IG49dGhpcy5fZ2V0Q29udHJvbGxlcihlKTtpZighbilyZXR1cm4iIjtuLnVwZGF0ZU1hdHJpeFdvcmxkKCEwKTtjb25zdCBpPW5ldyh0aGlzLnRocmVlJiZ0aGlzLnRocmVlLnRocmVlJiZ0aGlzLnRocmVlLnRocmVlLlF1YXRlcm5pb24/dGhpcy50aHJlZS50aHJlZS5RdWF0ZXJuaW9uOnRoaXMudGhyZWUuUXVhdGVybmlvbik7bi5nZXRXb3JsZFF1YXRlcm5pb24oaSk7Y29uc3Qgbz1uZXcodGhpcy50aHJlZSYmdGhpcy50aHJlZS50aHJlZSYmdGhpcy50aHJlZS50aHJlZS5FdWxlcj90aGlzLnRocmVlLnRocmVlLkV1bGVyOnRoaXMudGhyZWUuRXVsZXIpKDAsMCwwLCJZWFoiKTtyZXR1cm4gby5zZXRGcm9tUXVhdGVybmlvbihpLCJZWFoiKSxhKG9bdF0pfWdldENvbnRyb2xsZXJTaWRlKEEpe2lmKCF0aGlzLl8zZC5zY2VuZSlyZXR1cm4iIjtjb25zdCBlPXRoaXMuX2dldFJlbmRlcmVyKCk7aWYoIWUpcmV0dXJuIiI7Y29uc3QgdD1lLnhyLmdldFNlc3Npb24oKTtpZighdClyZXR1cm4iIjtjb25zdCBuPXQuaW5wdXRTb3VyY2VzW3IudG9OdW1iZXIoQS5JTkRFWCktMV07cmV0dXJuIG4/bi5oYW5kZWRuZXNzOiIifWdldENvbnRyb2xsZXJTdGljayhBKXtjb25zdCBlPXRoaXMuX2dldEdhbWVwYWQoQS5JTkRFWCk7cmV0dXJuIGU/InkiPT09ci50b1N0cmluZyhBLlhZKT9lLmF4ZXNbM106ZS5heGVzWzJdOjB9Z2V0Q29udHJvbGxlclRyaWcoQSl7Y29uc3QgZT10aGlzLl9nZXRHYW1lcGFkKEEuSU5ERVgpO3JldHVybiBlPyJzaWRlIj09PXIudG9TdHJpbmcoQS5UUklHR0VSKT9lLmJ1dHRvbnNbMV0/ZS5idXR0b25zWzFdLnZhbHVlOjA6ZS5idXR0b25zWzBdP2UuYnV0dG9uc1swXS52YWx1ZTowOjB9Z2V0Q29udHJvbGxlckJ1dHRvbihBKXtjb25zdCBlPXRoaXMuX2dldEdhbWVwYWQoQS5JTkRFWCk7aWYoIWUpcmV0dXJuITE7Y29uc3QgdD10aGlzLl9nZXRJbnB1dFNvdXJjZShyLnRvTnVtYmVyKEEuSU5ERVgpLTEpO2xldCBuPSJyaWdodCI7dCYmdC5oYW5kZWRuZXNzJiYobj10LmhhbmRlZG5lc3MpO2NvbnN0IGk9ci50b1N0cmluZyhBLkJVVFRPTikudG9Mb3dlckNhc2UoKTtpZigicmlnaHQiPT09bilzd2l0Y2goaSl7Y2FzZSJhIjpyZXR1cm4gZS5idXR0b25zWzRdJiZlLmJ1dHRvbnNbNF0ucHJlc3NlZDtjYXNlImIiOnJldHVybiBlLmJ1dHRvbnNbNV0mJmUuYnV0dG9uc1s1XS5wcmVzc2VkO2Nhc2Uiam95c3RpY2siOnJldHVybiBlLmJ1dHRvbnNbM10mJmUuYnV0dG9uc1szXS5wcmVzc2VkfWVsc2UgaWYoImxlZnQiPT09bilzd2l0Y2goaSl7Y2FzZSJ4IjpyZXR1cm4gZS5idXR0b25zWzRdJiZlLmJ1dHRvbnNbNF0ucHJlc3NlZDtjYXNlInkiOnJldHVybiBlLmJ1dHRvbnNbNV0mJmUuYnV0dG9uc1s1XS5wcmVzc2VkO2Nhc2Uiam95c3RpY2siOnJldHVybiBlLmJ1dHRvbnNbM10mJmUuYnV0dG9uc1szXS5wcmVzc2VkfXJldHVybiExfWdldENvbnRyb2xsZXJUb3VjaGluZyhBKXtjb25zdCBlPXRoaXMuX2dldEdhbWVwYWQoQS5JTkRFWCk7aWYoIWUpcmV0dXJuITE7Y29uc3QgdD10aGlzLl9nZXRJbnB1dFNvdXJjZShyLnRvTnVtYmVyKEEuSU5ERVgpLTEpO2xldCBuPSJyaWdodCI7dCYmdC5oYW5kZWRuZXNzJiYobj10LmhhbmRlZG5lc3MpO2NvbnN0IGk9ci50b1N0cmluZyhBLkJVVFRPTikudG9Mb3dlckNhc2UoKTtpZigicmlnaHQiPT09bilzd2l0Y2goaSl7Y2FzZSJhIGJ1dHRvbiI6cmV0dXJuIGUuYnV0dG9uc1s0XSYmZS5idXR0b25zWzRdLnRvdWNoZWQ7Y2FzZSJiIGJ1dHRvbiI6cmV0dXJuIGUuYnV0dG9uc1s1XSYmZS5idXR0b25zWzVdLnRvdWNoZWQ7Y2FzZSJqb3lzdGljayI6cmV0dXJuIGUuYnV0dG9uc1szXSYmZS5idXR0b25zWzNdLnRvdWNoZWQ7Y2FzZSJiYWNrIHRyaWdnZXIiOnJldHVybiBlLmJ1dHRvbnNbMF0mJmUuYnV0dG9uc1swXS50b3VjaGVkO2Nhc2Uic2lkZSB0cmlnZ2VyIjpyZXR1cm4gZS5idXR0b25zWzFdJiZlLmJ1dHRvbnNbMV0udG91Y2hlZH1lbHNlIGlmKCJsZWZ0Ij09PW4pc3dpdGNoKGkpe2Nhc2UieCBidXR0b24iOnJldHVybiBlLmJ1dHRvbnNbNF0mJmUuYnV0dG9uc1s0XS50b3VjaGVkO2Nhc2UieSBidXR0b24iOnJldHVybiBlLmJ1dHRvbnNbNV0mJmUuYnV0dG9uc1s1XS50b3VjaGVkO2Nhc2Uiam95c3RpY2siOnJldHVybiBlLmJ1dHRvbnNbM10mJmUuYnV0dG9uc1szXS50b3VjaGVkO2Nhc2UiYmFjayB0cmlnZ2VyIjpyZXR1cm4gZS5idXR0b25zWzBdJiZlLmJ1dHRvbnNbMF0udG91Y2hlZDtjYXNlInNpZGUgdHJpZ2dlciI6cmV0dXJuIGUuYnV0dG9uc1sxXSYmZS5idXR0b25zWzFdLnRvdWNoZWR9cmV0dXJuITF9fX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQXZjQUFBTDNDQVlBQUFBT2YycTdBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFKaGlTVVJCVkhoZTdkMEh2QlRWM2YveG95SzlkNUF1SUUxRVJVUnNhTEQzbHRpamlScU5NZEhuSDAxUFRLSlBrc2MwWTB6VUtCSTEwU2oycm1CQlJFQzZJTDMzM3J1Si8vTTlPME9XNjcyWHV6T3p1ek96bi9mcjlYdDJaa0FmbzVkN3YzdjJkMzVudjg4Ly85d0FBQUFBU0w3OXZWY0FBQUFBQ1VlNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTKzNtdkFOS25ycTJtdHFyWmFxTUgzcXZ1VzlxcXFRZWVHcmIwckR6KzM2YzhEYjBxai80YS9iVzUybUZyUmVheVhHdHNiY2xjbWlXMlByT2x2MmFsSGxnYnZCTDlmZlJyK2ozNnZiTEFld1VBSUhVSTkwQThkZkJlL1JEdUIyVS9hQjlneXcvc1pYOXZaWUViR1hwem9EY0pDdis2VnZEWEc0S04zcldlNmRmOE54SzhJUUFBSkFMaEhzZy9oVzhGY3BVQ3VFSjVFKzllMTM1Z1Z6Q3ZhUFVjeGFlZ3IrQ3ZvSy9YcFZuWC9uTUFBSXFLY0E4RXM2L0FybWYrcjZOMGxBMzcvaHVBR2JibTJBSUFJSzhJOThCL0taVDdnZHdQNkg1Zzk4TzhIOXFCWEtudjN3LzVlcDJaZGE5UEJRQUFDSTF3ajFMaEIzU0ZkbFg3ckd2L09WQXNDdmNLK1ZOdEtmVHJlcHd0ZlFJQUFFQ1ZFZTZSQnByK29vRHVoM1M5bGczdjJaTmhnS1JRNkI5dFM2Ri92SzFKdG1qdkFRQlVpSENQcFBCRHVxcXpMWVYzLzE0RmxBcE45ZEdxdm9MK0dPK1Z3QThBY0FqM2lBdE5qRkZvOThzUDc3cldxMWJuQVpUUEQvd2YybnJQbGxiN05kOGZBRkJpQ1Bjb3BMSUIvbUJiM2J4clJrQUMwZEhtWFlWOUJmMzNiWTIwNVIvOEJRQklNY0k5OGtGaFhhRmRkWWozU29BSGlzY1Ard3I1L3VxK2Y0b3ZBQ0JGQ1BjSVNodFUvZERleTVZZjRsVnNYZ1hpVDczNmI5aDYwNVpDdjk0QUFBQVNqbkNQZlZFcmpRSzdBbnhQNzlwZm1RZVFEbXJaOFlPK1hobkJDUUFKUmJpSHoxK0pWeDNtdmZheHhTUWFvUFJvOU9ZcnRsalZCNENFSWR5WEpnVjNyY1FmNlYzN0JRQmxzYW9QQUFsQ3VFODNyY1lyeFBlMXBaWWF2ZXBlclRZQUVJUlc4cCsxTmRRV1FSOEFZb1p3bng0TmJmVzM1YS9JNjFXRkVsV3JWaTFUdlhwMVU3Tm1UVmU2cmwyN3R0bC8vLzFOL2ZyMTNlOXAyRkJmTnVYei83cUtWUGJYK3YrL2d0aXhZNGVyOHZ6blAvOHhtelp0Y3RmWnYwL1A5R3VmZmZhWjJiSWxNL0Z4MjdadFp0ZXVYZTU2dzRiTVlCajl2czgvLzl4ZEl4SUVmUUNJR2NKOU1pbFZhUlZlUGZGSGU2L2E1SXFVcUZldm5ndmhkZXZXTmRXcVZYTkJPVHVvNjVsK3JieWc3djgxS0ovL0JzQVAvd3I4ZXMxK3BqY0RldFc5bnYvNzMvLzIvbXBVZ3FBUEFERkF1STgvdGRCb1JaNGduMUFISG5pZ0MrY0szM3BWS1lDWHZjOE82b2dYaFh5OUNTaGJlaFBnWC9NR1lDOEVmUUFvRXNKOS9HaGpxOEs4Z3J3ZjZoRXorKzIzbnd2aUN1VitPTSsrVi9uaFhTdnVTTCt5YndEV3JWdG4xcXhaNDE3WHJsM3IvYTZTb3lrN3cyejl3NWFDZnZuOVZnQ0F5QkR1aTh0dnIvSEQvSEhlTXhTSjJtSDhjSzZ3cnNxK1YzaFhWZGFMRHBTbC9RQiswTmZycWxXcjl0enYzTG5UKzEycHA4MFFUOWxTME5jSnVRQ0FQQ0RjRjVabXhpdklIMnRMUVo1VitRS3FVNmZPbnNEdWwxYlhzNitCUWxOUGYzYmdYN0praWJ0T2VadlBBbHRQMlBxN3JUbDZBQUNJQnVFK3Z4VGVGZUw5TU4vR0Z2SkFiVElLNTQwYk4vNUNZUGRmMWRNT0pJRlcraFh3bHkxYlpsYXNXSkgyd0svK2ZLM21LK3huUmgwQkFBSWozRWRML2ZLbjJ6clIxa0JiTEFWSFNDdnZmbmpQRHZKNlZZQUgwc3h2N1ZIWVYrajNnLy91M2J1OTM1RjRtbGM2eE5hOXRyU3lEd0FJZ0hBZmp0cHNGT0svWkd1UXJaYTJFSkJXM3hYVXN5czd4RFBlRWRpYkFyOUMvb0lGQzF4cGhUOEZQZnphaFB1S3JmdHRhVE11QUNBSGhQdmNhQmVsd3Z4WnRyUkN6MGpLSEIxd3dBRmZDTzdaQlNBY3JlWm5oLzJ0VzdkNnY1SklrMndwNUt0bGgwazdBRkFGaFB0OVU0QlhrRmVnVjdCblRFb1ZhT3BNOCtiTlhXQnYyclRwbnFKOUJpZ3N0Zkw0WVYrVjBMQy94dFlEdGhUMFYrZ0JBS0I4aFBzdlV1K0hKdHBjWk90c1c2ek9WOEJmaFZkbzEydkxsaTMzM0RQYkhZZ250ZkhNbVRQSGxWYjJQLy84Yys5WEVrRXRPNXFYcjc3ODBYb0FBTmdiNFQ1RHEvSCs2dno1dHByYWdrZTk4RnFGVjJoWGdQZFg0VlVBa212SGpoMTdncjRxWWF2NkN2Y0srUXI3Q3YwQUFLdVV3NzBDL2NXMnRFS3Z6YkIxYlpXOEprMmE3QW51clZ1MzNuUE5HRWtnL1JLNnFxODJIYlhycUcxSDdUc0FVTkpLTGR6N0svUUs5RnFoTDlsQVg2TkdEYmNLcjlLcXZMOGlUenNOQU5tMmJadVpNV09HbVRwMXF1dlZUMERRMTRaYmJieFYwTmRHWEFBb1NhVVM3clVSOWdwYkpkbHkwNmhSSXhmZ3RSTHZCM2xOcWdHQXFzZ08rb3NXTFVyQ1lWcnYyVkxMemd2dURnQktTSnJEdlRiQ2Z0WFdOYlpLNW1UWVpzMmF1ZkN1SUsvU05hdnhBS0t5YTljdUYvUS8vZlJUMTc0VDg2Q3ZGZnlmMnlMa0F5Z1phUXYzYXJPNTBwWlc2WS9UZ3pRanlBTW9wdXlnUDJ2V3JEaTM3aER5QVpTTXRJVDd2cmErYmt2QlBwVjk5QTBhTkRCdDJyUnhSWkRIaGcwNnFYOXZtelp0Y2llV1p0dXlaWXY1N0xQZ2cwUzBrVHFYc3dscTE2N3R2aTV6L2V1UWZHcmRtVEpsaXBrMGFaSlp1WEtsOXpSMlJ0cjZpUzIxN1FCQUtpVTUzR3R6ckZwdUZPb1Y3bFBqd0FNUGRPRmRRYjVkdTNidXRXNWRodmtrbFIvRS9WYy9oUHV2ZmdEM1h4V1N0Q0lxK3ZYTm16ZTc2NlNxVmF2V0Z3Si9lVzhDcXZvTThhZFRjaFh5RmZhM2I5L3VQWTBWaFh1dDVCUHlBYVJPRXNOOUIxczMyN3JPVmlwMmhlbzBWNFY0djdUcFZXRUc4YUx3blYwSzY5bWhYSy9ab1QzcG9UeU85RVpCZ1Y5dmRoWDJkYTNTdFo3VnJGbHp6Ni94WjZqNDlPZEE3VG9LK1hxTllYLytNRnUzMjJLNkRvRFVTRks0MXl4NmhYcWRHcXRUWkJOTHMrUzFHdCtoUXdkWFRLNHBydXpBcmxKb0wvdHM0OGFOM3U5R1VtamNhM2J3ejM0amtIM05HNEhDMENkU21yWXpidHc0czNyMWF1OXBiS2dYWHl2NWhId0FpWmVFY0sveGxUK3oxY2ZkSlpEQ2ZLZE9uZHlxdk1JOExUYUZvVlZEQmZWMTY5WVIybEVwZlhxbU45a3FoWDMvMnI5WGF4Q2lveWs3WThlT05iTm56L2FleElaQy9nOXN6WEIzQUpCQWNRNzNpUTMxbWl1dk1PK3Z6QlBtODhjUDdRcndlczIrSnJnakttb0hhdHk0c1N1MXplbFZoNzdwdFZxMVJIK1FXRlJyMXF4eElWLzkrYnQzNy9hZUZwMTJvT3N3ckx0dHpkRURBRWlTT0liN3hJVjYvZUR2M0xuem5rQ3YxVDVFUjV0TEZkZ1ZCTXBXQWc3VFFjcHBrcFVmOVBYcUh4U24vbjlVelk0ZE84eUVDUk5jMEkvUm0zSkNQb0JFaWxPNFQxU29iOVdxbFF2MFhidDJkZjN6Q0U4LzREVmxZOVdxVlM2NEs5RHJtbzJwU0NLMStpamsrNlhRci9DUGlxbVZUblB6UjQ4ZWJSWXZYdXc5TGJvZHRoNnc5UnRiSy9RQUFPSXNEdUUrRWFGZTR5bTFNcTh3cjZMVkpody91Q3ZNKzBVYkRkSk8zMGNVOExVZ29NQ3ZNeXVZamxXK1pjdVd1WkN2QTdKaThnbWRRdjV2YlNua2I5RURBSWlqWW9aN3phYS94OVpBZHhkRGFyZnAxcTJiQy9OYXBhZTNOaGdGK1NWTGxyanlWK1ozN3R6cC9TcFEyZzQ0NElBOXAwejd4UXIvZjJsZmpkcDExTGF6ZGV0VzcybFJhZlZlbTI2SHVEc0FpSmxpaFB2T3RuNXA2MUozRnpQNktMMUhqeDZ1Tk4wR3VWRnJ6YUpGaTl5cW0wclhCSGtnTnhyanFaRHZUOWpTU24rcEx5N29MQW5OeTFmUWo4a0p1S050M2VhOUFrQnNGRExjYTVlcDJtKytaU3RXUDZVSTlNRnBKVjRyOGdyeGVsMi9mcjMzS3dDaW90VjkvMndNdmVyN1ZDbVA1NXczYjU0TCtUTm56dlNlRkpVMjNXb2xmNG03QTRBaUswUzQxOGlJVzIxOXoxWnN4c2lvNWFaWHIxNnVDUFJWbzgxdVdvMWZzR0NCQy9KNlpWVWVLTHo5OXR2UHJleHJINUIvaGtZcDl1MnI1Vy9FaUJGdVJmL3p6ei8zbmhhRit2SFZpLzlyN3hvQWlpYmY0VjZueWY3QmxscHhpazZyWCtxZjc5Mjd0M3RsRTF2bDlERzRRcnhXeWZ5VmVVWlBBdkhqYi9qWDNpQlZxWTNqalZISTErcjk3YmFlY25jQVVBVDVDdmZkYk4xbmE1QzdLektOcmV6YnQ2OXJ1MkgyZE9YVVpxTXc3d2Y2R0Iwc0E2Q0tkSkNlUDZwWHJUeWwwcThmbzVBLzBwYjY4Y2U1T3dBb29LakR2WmFMdEZuMlJsdEYvV21pVlhxdDBDdlU2K05ybEcvVHBrMTd3cndxSnRNb0FFUkVxL3FhK3FWUzRDK0ZYbjJGL0hmZWVjZE1temJOZTFJMG1xaWpmbnptNHdNb21DakQvWFcyZm1XcnFEUGN0R0xWdjM5L0YreFpwUytmUmxIcW9CalY4dVhMdmFkSW1BMWVaYXZxczF6b0QxSEx6T1UrNlEyOWY2S2IzdWlYVm05SUFtalJRd0ZmbjJMcXRYYnQydDZ2cEpNK2lYenZ2ZmVLdmZGV00vSFZqNjhaK2ZUakE4aTdLTU85VHZEN1J1YXk4QTQrK0dEVHIxOC85ekUwdmtndE5uNmdaNkpOd2EyeHBSL3dmdERXdGY5c3JTMzl3TmZLbm82Nzl5ZHVMUEJlSld4QUx6WUZmZ1YvbmZ6bXYvblhHd2E5Y2NoK1E5REVsbjg2WEFmdjFmOXJzdjlhUkVDYmN0V3lvNkVDQ3ZyMTY5ZjNmaVY5WWhMeTlXZGEvZmhEM1IwQTVFbFU0VjQvaUdmYlVwUGpnWHBRQ0ZxRk91S0lJMXlvNTlDWHZXa3o3Snc1Yzh5c1diTmNvTisrZmJ2M0t3aEpQNkFWeFAxYWFxdHNJTmU5Z3JwK25aVzZhT2w3amY2d3EvUUdRVzhNOUtaQTk3cldNMzFpVU5WUEcrQnAyN2F0VzlIWEFrbmp4bzI5cCttaWtLOTJuZG16OWVPcWFONnpwWDc4U2U0T0FDSVdWYmpYcUV0TnhTa0loWHIxMGg5MzNIR21ibDEvb1EvYnRtMXpnVjdIdGF0L25zMndPU2tiMm5WS1R0bG5LaVNId3I3L1JzQVAvdjRiQWIxSjBMMWU2ZDhybzBXTEZpN29hMVUvalVGZlkzeTFrcjl3NFVMdlNjSHB6YjgrN2Y2SnJTUi9LZ2NnaHFJSzl4L1lPaTV6bVQrRStpL2FzR0dEVzVuWENyMStZQlY1UWtRYzZZZW9Rdm9jNzVYUWpyTDhrTzlYK3pMM0pSMysyN2R2N3o0aFZkaFAyOVNkR0lSOFJtY0NpRndVNFY0cllvc3psL2xCcU4vYmpoMDczT3I4cEVtVHpPTEZlZjFYbnhRSzUzNTRuK3U5K3ZkK3l3d1FsQUsreHZ2cXZJNUR2RmZkNjNuSnFGR2poaHRVMEtkUG45Uk5JSXRCeUgvRDFrMjI5RDBMQUVLSkl0em5yU1ZIb1Y3OTlBTUdEQ2o1VUsvVFlkVnlvL25OV3FrdjBjT2tabmlsNEs0WmQxTzlhejdXUmpGb1JkOFArbm85MHJ2dVpTdlZkSGFJUW43YXBwTHBFOUEzM25paldFTUh0RC9uNTdZMFZVZWZPQUpBSUZHRSs3eTA1QngyMkdGbTRNQ0JKWGZTWWxuYUFLWVYrcWxUcDViU0RIb0ZkZ1gzeWQ2ckgralpuSW9rVU5wVndGY2Q1cjMyc2FWZS8xVFJBb3o2OGhYME5Ya25EYlNRTW5yMGFIY1kxczZkTzcybkJhWHZkOWZiMGtGWUFKQ3pzT0UrOHBhY2poMDdtbE5QUGRXMGJGbTZ3eTUwc0pUQ3ZGYnBWNjVVaTNocWFSU2t3cnRPY2RTTU9yM3FYcytCdE5IM3k3NjJqdlplVmFsWnZXalNwSWtMK2FvMGZOSzZaY3NXTjFsSGl5dEYyc3Ywc0MwZGdLV3h1UUJRWldIRHZVNmkvV3ZtTWh4Tlp4ZzBhSkNidDF5S05McFNmZlFLOUpwMGs4S05zVnAxVjNoWGpmRmV0Um9QbERLdDZpdmtxNldudnkydDhDZDYxNnJtNStzMFhCMG0ySzVkTys5cGN1blRVN1hxRktrZlg4RmVHMjUxMGkwQVZFblljUCsyclVHWnkrQjBTdUp0dDkyV3Vra01WYkZzMlRJemJ0dzR0MUtmb3RHVjZoZjFWK1Q5SUs5NytraUJ5bW5KVzIyT0N2b25lcStKYldwWGI3NzJUR25TenY3NzcrODlUU1l0dnJ6MTFsdG00OGFOM3BPQzBteDhiYmhWeXc0QVZDcE11RmYvNkhKYmtTVHk4ODQ3ejMyY1d3cTBTcTh3UDNic1dMTjh1ZjRWSnA1VzVVZmJVby9vaDk0cnJUVkFlQXIyQ3ZoKzJGZndUMXpQUzRNR0RkeEt2cjdISjNrRHJyNTNqeG8xeW93Y09iSVlpekZhSFBtMXJidHRzZjhJUUlYQ2hQdnJiUDB0Y3hsZXZYcjF6TGUvL2UxVXI5NXJKcjBDdlhvNEUzNWlySUo3ZHBCWHNPZUhEWkIvK2dhcGdQOGxXL3JVVktFL01UUk9VelB6RmZUcjE2L3ZQVTBlOWVNUEd6Yk1USjZzUGY4RnAzYkdXMnhwZkNZQWZFR1ljQjlKUzA2MkUwODgwVTNJU1J1TnNGU28xMnRDZSttMVlxUUFQOXpXTU8rYUZodWcrTFFoVjkrSEZmWlB0NVdJa1RYcXkxZXJqczR1U2ZMd0JMVlZ2dmJhYTJicDBxWGVrNExTd1ZlMzJlSVFQZ0I3Q1JydUkyM0o4UjE0NElGdTlUNE5reFowME5TRUNSTmNQMzJSWmlhSHBkNU9yUXdwMEt2Zmt6WWJJUDQwa2VCU1d4ZlpTa1NmbzA3QTFVcStOdUVtbFFZaGFDVi84K2JOM3BPQzBSa2ZtcWp6Z0xzREFDdG91SSswSlNmYjRZY2ZiczQ5OTF6dkxuazBXVUdCWHEwM0NUdG9TbTAxQ3ZPdjJuckZGcXRCUUxJbEt1ZzNhdFRJbkhEQ0NlNWdyQ1J1dmxVL3ZucnhWVVg0M3MrR1d3QjdCQTMzTDlzNk8zTVpMWDFjZStPTk41cm16WnQ3VCtKUGg1N28xRmh0dENyU3g3TkJhY3lhQXYyenR0UnV3K284a0U0Syt1ZmJPczlXNUljT1JpbnBJVi9ubEdpcXpyUnBPa1M3b0xSQTh4TmJmN1JGMnlSUXdvS0VlL1hNckxhVnQ1RUhCeDk4c0xueXlpdTl1L2pTU28xYWIzU2FZWUphYjViWUdtcExLL1JhN2VHSEFGQmFkSmpXeGJhMG9oL2JvSytRMzY5ZlA5TzNiOTlFRGxyUWVTV3Z2UEpLTVg0MlRMSjFyZmNLb0FRRkNmZEszWTluTHZQbmlpdXVpTzJCVnR1MmJYTWJaRlVKbVhxamIvSXYybnJCdXdZQWlYM1FyMU9uanR0NG04U1Fyd1dnRVNOR3VGYWRBZzlUMEtLTlZ2QzFrczhrTTZERUJBbjN6OXZTeDd0NTFheFpNOWVlRTZlUFpkZXRXK2RXNmJWYUgvTitlbjFqMTRoS1A5QXZzQVVBbGRHa25hL2J1c2FXUW4rc0pEbmtyMW16eHJ6MDBrdG04ZUxGM3BPQ1VRKytldkgxS1MyQUVwRnJ1TTk3UzA2MnM4NDZ5MzBqTHphTk85UEtpL3JxWXo3S1VpZkIvc1BXRTdiVVR3OEF1Vkp5MW5oTkJYM3RyWXJWcVZOSkR2bGFHTkpVblNKODR2dG5XMXJGMTNRZEFDbVhhN2d2U0V1T1R3ZWVhRFJtN2RxMXZTZUZOV3ZXTExkSmR1SENoZDZUV0ZJUHZjSzhRdjFVUFFDQWlHanNzYjd2SytqMzBvTzRTR3JJVjF1bk50d1c0UUFzL2F6UUtyNm1vUUZJc1Z6RGZVRmFjcklWZWpTbUp0OW9ackZDL2VyVitwQWlsalRWUnUwMmY3ZkZwbGdBaGFDUFVSWHlOVjVUaDJmRmdrTCtvRUdERWpkZFo4R0NCVzdEN2RxMWE3MG5CYU9CQ2dyNWZMb0xwRlF1NFY0ZnpTcnRGdnlFcWE5Ly9ldW1UWnY4dG9ENm9WNmJuMkk4K1ViaktyVkNyMi9PakswRVVBejZXYUJOdUFyNnNUbFN2RW1USmk3a0ora3dyQ0xPeGxld3Y5M1dFSGNISUZWeUNmZnF3WHc3YzFsWXJWcTFNdGRkZDExZVZtWDB6VldoWHQ5Y1l4cnF0U0ZLZ1Y3ZmhQV3hLZ0RFaFpMMGQyeHBFMjRzZXZQYnRtMXJUajc1Wk5PaGcvWUhKNE9HTldnVmYvNzgrZDZUZ3RFNUoxckZaK2dDa0NJSGVLOVZjWnV0ZnBuTHd0cXlaWXVwVjYrZWFkMjZ0ZmNrUElWNmpiSjgrdW1uemRTcFU4Mk9IYkdhRnFaL0dJWDVtMjNwYVBFUnRqYlpBb0E0MFFxd3pzeDQwTlptV3oxc0ZmelQzV3c2UkVyOTdEb3RYSWNocW0wbjdtclZxbVVPTyt3dzA3aHhZN2ZIU3orZkNrVHpwblhpdlA3YlRiRDFIMXNBRWk2WGxYc3RLUlJ0S1NTcXpiWDZwamx1M0RpM1VyOTE2MWJ2YVd6TXNhVWZrZy9iWXFvQmdLVFI2cjE2OHJXYTMwY1Bpa2tubnFzWFh5djU5ZXZYOTU3R214YWF0T0YyNHNTSjNwT0MwTStiN3JaV3VEc0FpVmJWY0s4cENaOWtMb3Nuek9iYUdJZDZMZEhvbzlIN3ZWY0FTQU8xY2lya2E1eG1VUjF3d0FIdXROc1RUampCMUt3WnE4bWVGVnEwYUpHYmpWK2dEYmM2MFRaTS83MTZadlV2OWtCM2w4a1dPMjBsNHBSSElHMnFHdTYvYit0WG1jdml5blZ6Yll4RHZUN08xZ3E5VnVycGR3U1FWbG9jVXNqWFNNMmlKbXQ5QXF5QXI2Q2ZoUEdaR3ZTZ0lRK3FQSjZ4b29sckoyVXVYVWh2N0ZVVDc3V1dMWDNzb1FsSmZ2bi9IUlhnUlN2L3V0YXVZQVY2L2N2VndwWCtvWlV6OUZ6dHB2cDc2Wm4ya3VtMGRQMTEramkrdWkwOTErL1JEK3BZSHlnRHhGMVZ3LzBIdGdJZlRkNmdRUU5UdlhyMVNFWkx0bWpSd3R4d3d3MzczRndiNDFBLzJwWlc2VFh4aG1QQkFaU0tsclp1dEtXZ1g5UlJtdnFacEZZZHRld2tnVTY0ZmVHRkY4elNwVXU5SjVGUjZKNW1TeHNURk9iTCsrK2kvVjRLNnZxaDY1ZjR3VjNCWEZVZS9YWHE1OWNQNFYyMjZ0bHFaRXZoWC8zOWVyYmMxbHhiNmc3UVF0ZEdXN3R0NmEvUnIrbWdHUzJHeGZwWWVDQk9xaEx1ZFlpSi9vQUZYdVk0NnFpalhFdk5Rdzg5NUQwSjU4UVRUelFEQjVZL2dTMm1vVjRoWGdkTmFaVmVwOGdDUUtsU2dMelZWdEZEdmhhTFRqLzk5RmhQMWxFUHZnNitVbW1qc0hyeEN6dzJzOUFVK3ZYRFcvMUl5aDVhM2RlOTlnUE1zcVVWLyttMjlDOUJielQwU1lGK3hySVpHUEJVSmR5SFBwWDJtbXV1TWQyN2R6ZFBQZlZVSkp1RXRFbEtxL2N0VzJvaEtDT21vVjdmakJUby8yaUxEYklBOEYreENmbGR1blJ4TS9JMVhTZGZGTkszYjkrK1Z5bXdsMzFXOWprY0JYZXQ1aXZRSzdlb3B0Z2FZMHRoWDI4Q3RPS3ZGZjVsdGpnSEJpV3RLdUgrU1Z1YWZoQ0kraHAvK3RPZnVsN0h6WnMzbTkvKzlyZVJqSjMwMjNQVWt4akRVSytwTi9mYVVrODlyVGNBVUxGWWhId3RHdlhwMDhlMTY5U3RXL0UwejUwN2QrNFZ4RlhsaGZTeXovTFlNdzlqMXRtYWFXdWVMUVY5OVM5TnRhWGdyOEFQbEpSOWhYdTE0dWhrcDhCeml6dDM3bXl1di81Njc4NllEejc0d0IzV0VZV0REejdZelRLT1VhalhONUs3YmIxZ3EyQ0RpZ0VnQldJVDhnODY2Q0EzYzE1QnZteEkxNElTWWsycisvcWtYSWMrS3VncjlPc0F6bzlzS2M5a2IvWUZVbWxmNGI2L0xmMkJDRXlqSzQ4OTlsanZMdE0rODZjLy9jbXNYTG5TZTVJS0dtSDVHMXVhT2dBQUNDNFdJUitwb0FDdmRoNTlncTdWZlIwSXFVUFhQcldsamI1NkU2QjJIaUJWOW5WQ3JmcnROYXM0TUlYNzdJT250Q3JTcWxVcjEwcVRjSHJuLzA5Ylg3WDFPMXVNc3dTQTREUmVVVTN2TFd4cDllZERXMXBsYldmTG41OE81RUlMbU1vNU5XenBqZUpodGk2MmRibDNyY2s5eld4cGlvOG05Mnl6QlNUZXZsYnVYN2QxZXVZeWQwMmFOREYzM0hHSGQ1ZWh2a045ckRsMDZGQXpZWUpPdTA0Y3JRQThZRXM5OVFSNkFOaWJ4aUtXblpYdXYxWjByZGR3eDQ4RHVkUEt2bjZtYTUvY1pGc2F4NmxOdW1OdHNac1ppVlZadUEvZGI2L0RRczQ2Nnl6dkxzTVA5eHMyYkREMzNudXY2MmxNQ0gxOHAwRFA1QnNBcFVBL0F5b0w0MldmK2RlQmYyWUFSYVorZmJYcHpMYjFySzFIYmJFaEY0bFRXYmdQM1cvL3RhOTl6Unh5eUNIZVhZYkN2V3IzN3QxbS9Qang1c1VYWC9SK0piWUk5UUNTVExQQUt3dmpaYS85VjUxS0NwUXFmMVYvdkMxbEFQWHJxMitmWVJtSXZjckMvZmR0L1Nwem1UdWRJSHZublhlNkVaaGxLZHpyRUE1dHJuM2lpU2ZNN05sNmt4dzdoSG9BY1ZOWkdLL29tazJwUUhnSyt0b3NxTWs3ejlueUQ5SUNZcWV5Y0IrcTM3NWR1M2JtNXB0djl1NzI1cmZtS055dlg3L2UvT1V2ZjRsVGV3NmhIa0MrYVNOZlJXRzhvckN1QWxCOG1vYzYzNVp5MG1PMmRLQldZbnFNa1g0VmhmdlEvZllEQnc0MFo1eHhobmYzUlg3QVYzdk8yTEZqemF1dmFqcFZVZWswV1kyekhHS0xVQStnS2hyWXFpaU1sM2V0VnhXQTlOQ0czT2R0L2N1V0RzOGk2S09vS2dyM2VlbTN6Nlp3TC80Sy91REJnODJDQlVVWlB1T0hlazNBMGNkdUFFcVBSdUZsQi9DeW9ieWk2MzJORXdaUVdqUkQveVZiUTIwUjlGRVVGWVg3dlBYYlo4c08rR3ZYcmpYMzNYZWYyYlZMbzJZTGdsQVBwSTgrYmF3c2pGY1UxcG1qRG9SUXJWbzFWL3I1TC9wWnJvVzdFcWR3LzdLdHAyMHA5QmNzNEtDMFZSVHU5ZkhTK1puTDNGWFdiMThlUCtUcllDdk52ODh6UWowUWY1cDVYbGtZTCs5YXI1cXhEaUNnNnRXcm0zcjE2dTJwdW5YcnVtZTFhdFV5ZGVyVWNhV0RLYlVvSi9yNXZXM2JOamNrUTN2bkZPajlhLzNhamgwN3pKbzFhOHk2ZGV2TWxpMWI5and2TWRwNHE5bjVUOXBTdmxwbUsvTXZFTWlEaXNMOVlsdHRNcGU1MjFlL2ZVWDBCMzdJa0NGbXhvd1ozcE5JcVk5ZW9WNGJaUW4xUUdIbzFOR3lBYnhzS0MvdlduOGRnSUFVeUJYTVZXWERldloxMlh2OWRXVXB2Q3ZNYTFWZXA4enIxUS8zdWo3d3dBUDNyTmhuVTVEZnZIbXorK3UxdjA0LzR4WCtGZmJWaGp0djNqeXplUEZpTjFoRGJ3aEtoT2JvdjJYcmNWdnYyZHBzQzRoVWVlRytxYTNWbWN0Zzl0VnZYeGw5SS9qOTczL3Z2aGxFUkIrRHFjV0k2VGRBY1BxSnY2OWdYdDR6VGgwRlFsQ3JTMlZoM0w4dSsrdjdhb3N0Tm9WNS84MkMzZ1FzV2JMRXpKOC8zeTN1elowNzF5eGJ0cXlRYmJyRm9vazdXc2xYMEtkdEI1RXBMOXlmYlVzOVlvSG9EMnRWK3Uwck0yWEtGUE9QZi96RHU0dkV0YlkwQlFjb2RacUVWVmtZejc3T2ZzYXBvMEFJQnh4d1FLVmgzTDh2KytzMWE1Ym1oMWdLOXN1WEwzZGhmOWFzV1diaHdvVm02ZEtscnMwbmhmeTJuWC9hVW0veVNsc2wxN3VFNkpRWDduOXM2NWVaeTl5MWF0WEszSHJycmQ1ZGNQLzg1ei9ONU1tVHZidlF0dGc2eHBZMnR3QnBvQ2t0bFlYeGlxNDVkUlFJUVF0WWZ2QXVMNHhuUDh1K1ZzODZ3bEhnVjhDZk0yZU9tVGx6cGpzQVUyOEExUEtUSWpvRjl5bGJEOXJTUVZtcCtoK0h3aWd2M0lmYVRIdlVVVWVaaXkrKzJMc0xUaC9UL2VFUGYzQzllQkZSc0ZmQVY5QUg0a0ovQmlzTDQvNTEyV2Vhcnc0Z0lMV0RsQTNpNVFWenZkYXZYMy9QcjJ0REtlSmowNlpOcm45ZksveWZmdnFwYStuWnVuVnJHamJ0cWtYblRWdC9zZldCcmEyMmdDb3BMOXlIMmt4Nzdybm5tbU9QUGRhN0MwY2Z3ejN3d0FON051NUVRSzA1YXRFQjhrR3owblh5cUY4SzRIcHRia3QvcHNvTDYvcDFBQ0g0d2RzUDVuNG96MzdtWCt0VllaMlFuazdLQzFyTm56WnRtdnYwWHl2OFdpU01NRWNVdzNoYmo5clNJVmxyOUFDb1RObHczOUJXcUtYeVcyNjV4YlJwRS9pOXdSY01IejdjdlBXV05wWkg1bnBiRDJjdWdTclRueFcxdENpVTY3V1pMWVYydlhhMjFjcFdTNi9VSkt1MkdZMlAwS3Myb0pBa2dIM1FpTVhzVlhJL21QdWhQUHRaOWpWUW1aVXJWNXJwMDZlN3dEOTE2bFN6ZXZYcXBFN25XV3BMNHpRZnNhVlRjVXYrSUFHVXIyeTRIMlRyN2N4bDd0U0wrSXRmL01LTnhZcUsvZ0ErOU5CRFVaNWVxejhNYXM4WjUrNkFMOUlYc01LNDN1eHFlcFNDZTF0Ym5XeTFzNldBcjlLdmE2T3BmaStqR3dHUFFuclpJRjVlTUMvN3JMeHhpa0RVL0xDdm9LL0FuOEN3ci9iaVYyejkxZGJIdHJiYkF2WW9HKzYvYSt1ZXpHWHVvdHBNVzlhR0RSdGMvMzJFdStTWDJEcktsZzYwQW54YWtUL1VWbmRiM1d3cHpMZTMxZHFXVnVpVlBNcHJaUU5TU1pOYXlnWnkvN3JzZmZhckpzTUFTYUIySFkzaFZOQ2ZOR21TNjl0WHozNUM2QjJKV2h0K2EydVVMYzd3Z1ZNMnFEeGpLL0J1MktnMjA1WW5EK014ZFhqRUtiYjRXS3MwcWQrOW82MnV0bnJhMHB1OVByYTBJazh5UWFwb05IRjVZVHo3dnJ4ZjE0eDFvSlRvakIxTjRWSFFuemh4b3B2T280TzNZazRoWDV0dmYyZUxrSTh2aFB0UGJQWEtYT1l1eXMyMDVYbnV1ZWZNbURGanZMdEkvTm5XTFpsTHBKZ1NpbHBvMUY3VHdaWjY1TFU2cjVYNWcyeXA5VWFyOW1ySFlXVWVzYVhUUXlzTDQ5blgyYytpYkpVRVNzbXFWYXZjNHVMNDhlUGQ2djZXTGJFZXVLZDNJVnJKSitTWHVMSkJSbjFiZ1h1SG85NU1XNVptMmQ1Ly8vMXVKM3lFcnJMMVJPWVNLZU9mcXRyRmx2WlphSFZlb1Y1OTh6bzVsUVpmRkVYMnFhTitFSzlLV0kvN3FhTkFtbW5zcGlid2ZQenh4eTd3Nno2bUl6ZjlrSzkyblk5c0VmSkxUSGE0MTJybTdNeGxNSGZkZFZmZVY0aldyRmxqN3IzMzNpaVBwZGJiOE9OdFRYSjNTRG9GZHZYSkgyZHJvSzMrdGc2MlJTcEM1QlRTS3dybWVpMXY4b3V1Uy9YVVVTQXQxTDZqemJnZmZ2aWhhK0dKYWRBbjVKZW83SEIvdXEzWE01ZTVhOUNnZ2ZuaEQzL28zZVdYL2lBOSthU21RVVZHbzNpMHFzdjgyR1RTS253UFd3cjBwOW5xYlV0aktta1lScFg0cDQ3NjRidHNHUGRmeTRaMVRoMEZrSUNncjVEL21xMy90VFhCRnFmZXBseDJ1UCtXcmZzeWw3bnIzTG16dWY1NmpaQXZqRHowM3cremRZYXQyTytjZ2FNRG9yUWhWa0grYUZ1SDJkS0t2YWJhcUIySDN2a1NWUGJVVVQrVVp6OHI3MXFqR3dFZ0xQWGtUNWd3d2J6NzdydnUxTndJcC94RlliTXRUU2JSU3Y0OFc0ay94aGZseXc1QUN2WUsrSUVjZmZUUjVzSUxML1R1OGk5UC9mZDMyZnBKNWhJeHBKNHZyY2hyd2sxZlcvMXNhUU80MzBPUEZQSERkM2xodkx4bktrNGRCUkFYeTVZdGM2djVJMGFNY0ZrbFJyUDBGWnp1dGFYRHNPaFlTS0hzY0srV0hMWG1CSExtbVdlYUUwODgwYnNyakhYcjFwbjc3cnZQZlNRV29VdHNEYzFjSWliVVI2K1ZlbzJxUE1lV3ZrN1ZSNjhWZXNTY0FuZDJFSzlxV0FlQU5OQW9UYzNQVjhnZk8zYXMyYnhaQytpeE1NM1czYlpldGhYck1VRElUWGE0MTJaYWJhb041T3FycnpZOWUycGNlR0ZwSHUzZ3dZUGRRUlFSMFJlNEpxdE1kWGNvTm8yb1BNbld0YmIwN2xFakxWRUVaVThkOVlONGVjRTgrNWxhWlFBQW1ZazdDdmh2di8yMm1UOS92dXRDaUFHMUphdHpZYlN0blhxQVpQTi82bXJqWWFpdnNOdHV1ODIwYk5uU3V5dXM0Y09IbTdmZTBvYnd5TXl4cFEyMkc5d2RDazFmaitxbnY4RFdaYmEwWW8rSVZIYnFhR1hQT0hVVUFLS2hCY25wMDZlYjExOS8zUjJXRlhFSFFoQUs5VS9adXNmV0RGdXg2U0ZDN3Z4d3I3NWxIV0FWV0NIR1lGYm03My8vdS92WUswSnNzQzA4cmRLcmovNHNXeWZiVWkrOW5qR1B2aHdLNlFyZDVZWHhzc0U4K3htbmpnSkFmQ3hldk5pODg4NDc1djMzM3pjYk5td285cVNkdGJidTkycVZIaUI1L0hCL3ZxM25NNWU1SytRWXpJcnMzTG5UOWQrdlhyM2FleEtKQjJ6ZGxMbEVubWc1V0tmRWF1S041dEpybzZ6YXc5UitVeEtoUHZ2VVVmKzFvdm5vMmErY09nb0E2YUdXSFczQWZlT05OOHpTcFV1THZRRjNzcTBmMlhySGxnNDRSWUw0NFQ1Ull6QXJzbUxGQ2pkQko4SURydVFXVzMvT1hDSkNPbFJLclRlSDJqckJsbWJVZDdPVjJOTjkxTGFpdWVmYVFLcHdydGZzYXRXcVZibGhYZUVlQUFEUkJ0eHg0OGE1bHAyWk0yZTZ4Y3NpVWVmQ0VGdS9zalhmRnFNekU4SVA5M2ZhK2xubU1uZUZIb05aR1IwSi9ZOS9hSXhyWlBURnJRa3RiN2c3aEtXdk9jMmlQOUxXbGJhMFd0L2FWbUtvcmFWSmt5YnVFeXVWcmhYbXRlZEU5d3JzalJvMWNyOVBoeVA1eFN4MUFFQXUxSmYvNG9zdm1zbVRKeGR6WnI0Tyt2eUZyV2R0YmRJRHhKc2Y3aCsxZFUzbU1uZURCZzB5cDV4eWluZFhmSysrK3FvYk9SVWhUZERSQmx0dE1rRTRHbUY1bTYycmJjVjYzcUZXNHYyK2RvVjNoWGl0dnF1YU4yL3VuaW5JYTdXK1JvMGE5TElEQVBJaUppSC9WVnRxMWRFMFFUYmN4cGdmN3RWdnI3NzdRQzY0NEFMVHYzOS83Njc0MUtlbThaaHo1bWpvVFdUME56dmUxZ3AzaDF4cHRmNjd0cjVwU3ljTitWOTdzYU5WZGdYNnRtM2JtZzRkT3BnMmJkcVlGaTFhbUtaTm01ckdqUnU3RlhqR093SUFDazBoWHd1WU9nVjMrL2FpdE1KcmlxQk91SDNRRmdkZ3haU2ZVRDZ3cFo3blFLNjQ0Z3JUdTNkdjd5NGVkRWlFTnRodTNMalJleEtKa2JZMFFZZkRIcXF1bGEwcmJHbGpzbnJzWTVXSzFlL2VzR0ZEdHhMdmgzblZRUWNkUklnSEFNU1NadVMvL1BMTFpzeVlNY1Vhb3puVzF2ZHRqYkxGYlB5WThaT0xOa3AweUZ6bTdvWWJiakFISDZ4dWkzaFpzbVNKMjJBYjRRRlg4b0l0bldMTGlNektOYkYxbmkzMTFldWRYeU5iUlo5K28xVjU5Y1dyUDc1OSsvYW1TNWN1cG5YcjFudDY1ZFdHUTNzTkFDQUppaHp5RmVvMVZWQXIrVXYwQVBIZ2gzdDl0aE40U3NuM3Z2YzkxNjRRUnpvSjd0bG50UWNrVXBxZW95azYrQ0o5SWVna1dRWDdBYmJhMjlMTXhxSXRnV3RrcE5wczlEV3FGZmxPblRxNVlLOVFyNDJ2akpRRUFDU1pRcjZ5enZqeDQ0dlJrei9KbHRwdTFRVVM2YmhDQktQQVZkZldabmNYMEM5KzhRdTNvVEN1bm43NmFmY0ZIN0hiYmVuZEtqSWEyTkpoYUtmYVV1dFNUMXRGSHcralRhOGExYXEyc1VNT09jUzEzbWdzSlFBQWFhTmVmR1dldVhQbnVwR2FCYVFjK2IrMkhySzFUZzlRUEFyM2FzZFJXMDRnYW1HNCsrNjd2YnQ0MGdiYmh4OSsyTXliTjg5N0VwbkxiT200NWxLbVpXK2RKS3RRZjY0dDdheldBVlJGb2JZYmJYenQxcTJiNmRPbmorblpzNmViY3FQSk53QUFwTjN1M2J2ZGFiZlBQZmVjTy8rbndDZmV2bTdyQjdhWXFGTkVDdmZhU0t1UFVnSlJXOFAzdjY4OUZmRzJkZXRXMTMrL2RxMU9WbzZNM2hhZlpFc2JiVXVSVnVZUHMvVjFXd3IybW9oVGNIcURxZkdVaHg1NnFPblZxNWZiRUt1dlMvWFBBd0JRaWpSUVJBZGh2Zm5tbTJiREJnMjVLWmhsdGhUd243UEZBSklpMEhMbUViWXVkWGNCYUdQaVVVZHBCSHk4YVNxS05rOU9uRGd4eW8rcXRFSDB5N2IwNW1pUkhwUVF6YWkvd05iUGJaMXBTKzFkQmFNcE51cWoxMy9URTA0NHdaMjEwSzlmUDlPeFkwYzMvWVpOc1FDQVVxWUZMaTE0S2FQcGxOdVZLMWU2VmYwQ1VEN1E0WithbHFkKy9FakhGbUxmRk83VlJoRjR4cjAySmFyOUlRblVhNjJaNVpNbVRZcnlZNnJxdGhSdWRiaERxY3g4VlN2WGoyM3BuWGtuV3dYYkxLdjJHcTNLcTQvK21HT09NU2VkZEpMN3hxVlFyLysraEhvQUFQNUxlOCswK0tWOVordldyVFByMTY5MzdjcDVwc1ZQTFI0UHNqWFQxbEpidE9rVWlNSjlYMXRxcVFpa1hidDJycTg1S2RSL3JSWGZHVE1pUFd4V3E5WVgyM3JSVnBvM2txZ05SMjlrN3JlbE40UUY2M3Z4RDViU3BKc1RUenpSbkhIR0dXYkFnQUd1SFlmMkd3QUFLcWZ6WEk0OTlsaDNLT1BpeFl2TmxpMEY2WmhwWVV2and6V1QvRk5iUlRsNXE5UW8zQ3ZZRDNSM0FTamNkKy9lM2J0TEJxM2VhMVRVb2tXUmR0SW80R3RUcWVadXBxM0h6Tjk0clZGWFdySFhvUVlGVzYzWHFFcDl0SGpSUlJlWlN5NjV4SDFTcE5WN0JYNEFBRkExK3ZSYis5TDY5Ky92V25XV0wxOWVpRllkRGQ0NDJaYmFQQ2JhMHViSGd1N3lMVFVLOXdyMmdjTzlnbjBjRDdEYUY3VjE2SXQ2OWVyVjNwTklOTFYxdHEyLzIwckxyTmRhdHZTSFVyMzFXcTNYNFZSNVQ5VUs3Z3J3cDV4eWlybisrdXZOQlJkYzRHYlR4M25rS2dBQVNhQVQyUHYyN2V1Qy9ySmx5OXptMndKTTFWRlkxS2YvczIwdHRzVmhvSGtTT3R5clRTS0o0VjdoVVc5TU5BdFdYOVFSVXNBL3dkWXp0cEljOEJYZ1c5dTZ6cFlPN05MZURHMlN5ZXVLdmY2N3FOVkdZZjZLSzY1d2ZZTE5taFZsQ0E4QUFLbW1mWk5xMWRIUDNxVkxsN3JWL0R6VHFHd3RGSzYzcFY3OHZQOC9MRVVLOTFmWTBxYUhRTFFDcm9DZlJOcDhxWUEvYmRvMHMzMTdwRzFnbXZ1ZTVJQ3ZYYW5IMkxyWjFwVzIxSGVWOTUycW1ydzBjT0JBYy83NTU1dkREei9jaFhwT2p3VUFKSWttOHFtZmZkT21UV2JidG0xdUZQZC8vdk9mMkg3eXJHbUMvaWhwVGRUUnBsdjk4K2FSZnJEcnNFdWRhSzhUUmhtWEdUR3R3ajVxNnhwM0Y0QjZvUFhSVHBLdFdyWEtQUGpnZy9uWVhLTDU5L29DVHRJWHJrNmFQYzJXdmlhK1pFdlRnUEpLb3l1MUtWdFRiM3IwNk9FT29kS29Td0FBaWtVaFhXRlhwUlplaFY3dDE5dThlYlBMQ3lxRmQzKzh0ait0VFMwdnV0WnF1QUs5SnRPbzExMC8xOVQ2b21zRmF2MitCZzBhdUlVdGpYVnUzTGl4KzN2ci80ZitXdi9YZFYwbzZyOS82NjIzekFzdnZHRFdyQ25JQUVDTkV0ZEM0alJiZVgxSFVVb0k5NTc1OCtlYndZTUhtMTI3SWw5b1QxTEFiMmxMcyt2dnNLVlBIL0w2SFVYVGI5cTJiZXRXNlk4KyttaHowRUVIY1pJc0FDQnkybU9ua0s3QXFzTXNGZFMxc3U0SGRZVjBoV3BsQUlYMWZJNktWRmozRjdBVTl2M1NNd1Y2amE3VW5qTUZlNDE0MWlmWXRXclZjaTJyZWhPZ1Y3MDV5Q2YxNGYvclgvOHlZOGVPZGY5ZThteStyVy9aR202TE5wMEk2S3ZyZVZ1QjU5eC81U3RmTVVjY0ViaXJKMWFtVEpsaW5uenl5WHg4SEpXRWdLL0RKbTZ3cGY1NmZWU1d0NlZ6cldob2hVSXI5VHFBU2pQcWFiOEJBT3lMUG1sZnNXS0ZDK2txbmJ5cVVsQlgrNHNmMHRVN251K1FYaWdLL2ZvWnFkSUNtSDZHMXF0WHovWExxNVhtc01NT2M4LzB2MVdMWnY0bkIySHA3L2YrKysrN2tLOS83M20yemRiM2JXa2d5U1k5UUhBS2NPL2FDcnloOW9ZYmJramtodHFLZlBEQkIrYVZWMTd4N2lJMTFkWXB0bGE0dTNqUnh0azdiWDNGVm4wOXlCZDl3OUZLL1Zsbm5XVzZkZXZHOUJzQUtFRnFjMUZnVkVEWHRRNVdVa2ozVjlJVjFCWFFWV29WMGFKYkFhYTVKSlorbHFxOVIzc2dOY2RlN2E3YXQ2YkZNMzBLRUliR2hqLzY2S051ZjJJQnhtWSthRXZUK1phN093UkN1QytIM3FtKzl0cHIzbDJrZEhLVzJsNGlQVUVycEs2MmZtOUw0eTQxOWpJdjlER2tOaStmYzg0NXBuZnYzdTRqUmdCQXNxbTlSZTB1Q3VwcWQvRkR1bGJTL1hZWERheklYa2tucE9lWFZ2b1Y5dFhlb3hWK0hkNnAwMm45OXRjZzlOL3ZwWmRlTXErKyttclVFd2JMTThLVyt2QjE2QlY5K0FFUTdpdnc4c3N2bTVFajFVMFRPYTNjYXdWZksvbkZkcEt0LzdWMWxLMjhOYnZybThucHA1OXVqai8rZU5kRENBQ0lGd1Z5QlhSL05WMmh2YUtRcnRWYlFucHkrRzA5Q3Z3YVdLR1dXRTJtMHdxLzloaW9mNytxbTNZLytlUVRNMlRJRUxOZ3dZSjhUOVJSSC83WGJIMW9LKzhmRjZRTjRiNFN6ejMzbkJrelpveDNGeW4xM3A5ajZ6MTNWM2hxY1AreXJlL1pPbFFQOHFGbXpacnVOTmt6empqRGRPM2ExZDBEQVBKSGJTM2FQT3B2SEZVcHBHdTExUS9wS29VNmhYU3RwaFBTUzR2Q3ZzSzgyblkwRUVYVDZyVHdwdUJmbFhObDlMWDB4Qk5QbUE4Ly9ERHFNZUpsYVZ6UHRiYmV0c1ZHMnh3UTdpdWhsUWx0c05VNzFUelE3S3pyYlExeGQ0V2p6YkpYMmRMTzlJNjJJbCt4MXpjTzlmNGRkOXh4cnJTem53MnpBRkIxQ3VMK0NNYnNublFGS3dWNGZ5VmRtMGNKNlFoRFA3TTE1RUpaVGhQczlHbTdGdVFxYStGUlBsSjNnektTdms3elNJZGRmY2ZXYzdhMjZnSDJqWEMvRC9vQzFrZFFzMmJOOHA1RTdpNWJQOGxjNWwxN1cvcVlTNk5QOWFjMjhtQ3YxWG4xOW1rS2pucnIxZXVuYnh3QVVJb1V3UDJlZEg4MVhVSGRiM2Z4Sjd5bzNVV3I2ZnFaaytkMkI2QkMrbm10UG4xdHdtM2V2TGs3M0VvdFBIcFdIbzNNMUdaYlRSdk13eWh4bnlicGFFVDM0N2FZcEZNRmhQc3EwRGRkemNCWGoxbWVETFdsajU3eU5TcFR6WFNIMkxyUjFrVzJOUFl5MGhuMitvaFAzd3lPUFBKSWQ1UzFBajZUY0FDa2hZS0xSakQ2czlJVjBQMVo2ZjRZeHJJcjZZUjBKSm1DdnZyeHRURlhJemMxK2x4OSttVXBJejMvL1BQbTlkZGZkMzhXOGtUZERqK3k5WkN0RFhxQWloSHVxNmdBQVgrY3JVdHNSZjMvUVAwdzZxdlgvUG96YlRXM0ZTbTEzT2lqdlA3OSs3c1YrL0wrOEFOQUhDaDBxeWZkYjNmSjdrbjN4ekJtaDNRVklSMmxUa0ZmbzZ6VnJuUGxsVmU2MWx2TjA4OCtUR3ZVcUZIbThjY2ZkMitDOCtnZXIxYTdPNVNMY0orREFnUjh2UnRWUDN4VWcvWjFpa1YzVzkrMWRhR3R1cllpb3ovc0dtbXBFL08wYVZhSG1kRmJENkJRMUJLUTNlNmlsWFEvcEdjZmFLUlZkMzhNSTREd3RQSDJ6RFBQTkIwNmREQnQyclJ4bTNGRnAvMy83VzkvTTdObnozWi81dkprc0swZjIySVdmZ1VJOXprcVFNQ1hYOXRTSDM2WVB4bnFwOWQvbUZ0dGZkVldiVnVSMGtkMUdtOTV3UVVYdU41NkFBaENyUzUrWDdvL2dqRjdES08va3E3dnY0UjBJRDYwZXE5cE96MTY5SENsUTdUMDUvV1JSeDV4MHdiMTV6WlB0TUgyZjJ3dGRIZllDK0UrZ0FJRmZJM0pWQjkra1A4bit1L2F3WllPZ2RCVW5NaWIzM1g2M1RlLytVMDNMeGNBUkcwdStraSt2SlYwZi9Pb3ZuK3ExTzVDU0FmU1FaL2FxeVZYSy9rNkxPdXd3dzR6Yjd6eGhqdnhQNDk5K0JxUnFad3p4eGFqb3JJUTdnUFNENmZISG52TXpKbWpyNm04MFFaYjljcm5PaTVURzJiMTEybDNlZVFUY2ZTSDk0NDc3bkFqTGdHa2owSzVRcnJDdXI5NVZDRmQ1YmU3YUhVdWV5V2RNWXdBMUs1YnAwNGRsdzgwWlVldHUwOC8vWFErKy9BbjJsSjN3alJiYkk3eEVPNUQwQSswUE03QnovYUNMYzNFMTRFTys5TFFsa0w5LzdPbEJuajlONDZNMm5DdXZ2cnFQZjExQU9KTG9keWY3cUx5VzE3OGRoY0ZkYi9keFY5Sko2UUQ0V21qcWVxQUF6THJhLzdlajFMNjg2WC8vZXJIVjI3NCtPT1AzVWp4UFBYaEUvRExJTnlIcEIrRyt0aEp1OFR6VEp0dGYyRHJBWGRYUHJYZjZQZG9BMjBkUFlpSy9wQnE4OHhwcDUzbVBuclR1M01BaGFFd3JwVXY5YVQ3YzlMOUNTOStTTmRLdXNLRGlwQU9SRU05NWRwVHBrT2UvRmVkNTZJOVoycFAxY211S2sxVTBwODVsZjY4NnMyeWZ4S3dBcTJ1OVh0VStyT3FQN042czYzSlRTcTl3UmFOa1BZSFUvaC9iZEtuTlduS2pqN3gxNyt6cVZPbnV2OWRlYUNBZjdXdFQyMlZmTUJYUW52WjF0bnVMb0RMTHJ2TTlPblR4N3NyWFpydit0NTdhcFBQdTlHMjFIS2owWm5adER5Z0diRGFRTnRJRDZLaStmVm5uWFdXRzNPcGIyNmFhUThnZHdyaTJRY2FaYStrK3hOZXRNS25VampRRDNaQ09oQ2Uya01VekxORHV2OWEyYldDZkZuNjg2bzMwRnFWMTg5RGxlNjE2S1ZuQ3VqbC9aeFV3UGYzb1NqTUs3VHI5eXY4NnRmMFBXSGh3b1ZtOGVMRjdscS9UMjhFOUgxRGIrbzFIVXJmTC9UL0s0bjB2MVVIWStsL2wvNzM1b0Y2OEhXZXp6eDNWOElVN2grMXBSTkxBN25ra2t0TTM3NTl2YnZTOXNFSEg1alhYbnV0RU8reTlibVdWdkExVVVjcit2b3VjcWV0YjlxS2RHeE51M2J0ekttbm5tcU9PZVlZdDBwQnNBY3lwNDc2czlMMVE5ZGZUZmREdW41d3FmUUQzRjlKVC9ycUd4QUhDczZWaFhIL3V1d3poZnM0MC9jSS9Yek4vbFJjYit5MUVLRGhIVXVYTG5YZlkxUUsrVE5tekhDbndtcXhRSXNBV3UzWDc5ZmZKKzRMQW5vem8vK2RXc0RJQXdLK1JiaVAyTFJwMDh4VFR6MlZyNCtkeXRJT0ZiWGh0TEdsMWZ6SURxalNPK3pPblR1YlUwNDV4VTNFMGNkcFFOcm96NmxDdW42QUtxajdLK2xhV2ZKWDBoWGtzMWZTQ2VsQWVBcWpsWVh4c3RmK3F6WnJsako5VDlMM0tDMGU2SHVSd3I1eWgzcmFwMCtmN3U3MXZVcS9SOS9QQ3BSRkFsSEF6OU1ia1pJUCtBcjM5OW5TdU1SQXRLcjdwUzk5eWJ1RDZGMzFrQ0ZEWEVBb0VBMlNWYi85ZjkveWg2Q1ZFWjFDcDRPcGV2ZnVYZkxmVEJGLytnR21GU3dGZEg4MVBYc2xYUjlyK3lGZHY1ZVFEa1JEQzBHVmhmR0tydXZWcStmOUhSQ0czdzZrVlg5OVQ5UDNRYTNvVDV3NDBVM3pXN1Jva1R0UVNxMCtTVzNuQ1VnQi94dTI1cnU3RXFNd3FIYU9uN203QUFZTkd1UldkN0UzQllwSEgzM1VmWlNXSk5vODFLdFhMM1A2NmFlN2d5bXlqNVlHOGswL25MUnhWS1dBcnBVbnYwZTFvcEJlWWord2dMeFFPS3dzakdkZlp6L1RabExFazFidkZld1Y4dFhMcjhsK1k4ZU96ZmNJN3poNXk1Wlc4RXN1NEJQdTgwajl0czgrKzZ5WlBIbXk5eVRldEhIb3lDT1BOT2VlZTY3cDBxWExYcjEvUUs0VXl2Mk5vMXBGOTl0ZGRLM2dycEN1SXFRRDBhb3NqRmNVMXJXbkN1bWsxaGUxODZnRlVkOS8xY00vYk5ndzgrYWJiN3J2MGZyMFJRc21LZjBlL0xpdDc5bGE3dTVLaE5MYjkyMzl5dDBGb0RENDVTOS8yYnREZVFxNDBUWXdiWEE1NG9nanpNVVhYK3lDUFZBWmZTMHJvR3VGWFlIZG42V3VRSzluV21GWFQ2aDZQN08vN3VPKzBRdUlFd1h1aXNKNDJXZloxMEJGOUQxWUN5b3FYVStZTU1HOC9QTExadlRvMGU3N3Q5cUsxYzZZTWlVWDhCWHV0WmxXbTJvRElkeFh6WklsUzh3VFR6emgzalhIalQ2T1BmVFFRODFWVjExVjBtY1dvSHhhMGRFM2U0VjNoWGl0L3VnSGdFSzhWdVA5RmhtdCtzVDVEU3hRTEdwZHFTeU1aMTluUDJNNkdRcEYzOGRIamh6cHp1M1JKQjV0MGxWdVNSR2Q5Sy9GN0pYdUx1VkNoL3ZERHovY1hIcnBwZDRkS3FNV2hLZWZmdHA4K3FuT1dJZ0gvZkRRVkp4dmZPTWJwbE9uVHQ1VHdMZ3c3NThxcU0xWVd0WFJSN3RhaldjRkhxVkltMERMQnZDcWhIVzFQUUJKb2FrNzZqalFxcjVlNDVSWlFsSUx1b2JJeEcrVk5XSUs5MHJtVDdxN0FCUUlGUXhSZGZyRDhzWWJiN2crNDJKU3NOZlIwTi81em5jSTlpVk9xL0VLOFRObnpqVHo1ODkzRzhIVldrT0lSeHBwQWxobFlienNNLy9hUHprVUtBWDZPYUFWZksza3EzWG4vZmZmejlkcytrSlI2THJlMWpPMnR1cEJXaW5jRDdUMXJyc0xnSEFmakZvYU5BOWZvYW9ZdEZtMlJZc1c1b2MvL0tGcDI3YXQ5eFNsUUMwMEdoZXBFV2tLOHBxaW9HL2lhckhSSm5DMTF4RHFrUVE2bUtpeU1GNzIybi9WdUY4QVZhTkpaV3JGMU9TZG9VT0htcGRlZXNrdC92Zy9LeEwyODBLcjlsclVmczlXZkE4QkNDbDB1Ty9Rb1lPNTZhYWJ2RHZrUW44d3RJSS9Zc1FJNzBuaHRHelowbnozdTk5MWI4NllpbE1hMUJhbU41UDZpRlVmdHlyVXE1ZSsySjhnQVFyYlpRTjRWYTdqZnVvb2tDWmFHTkxQRWJWc2FnL2hjODg5NXhZcXRaY3dZU3Y2T3R6cUFsdFRiYVZ5bzVoU1hYOWJIN203QUJvMWFtUysvMzN0VVVCUWMrZk9OYzgvLzd4YlRTMEVyZFJmZDkxMXBrZVBIbTVLRHRKTHdWMnRObm9EcVJuSCtob2p6Q05mZEM1R1pXRzhvckRPUVhsQThtaU1wc1o5di9qaWkyYnExS251UGtFaGY2U3RyOXBLNVNtMkN2Y2RiQVVlOEs5RGozNzJzOEJqOHVIUktyNEMyRHZ2dk9QZUhlZUxldXl2dnZwcWQvSXNIMDJuazFiang0OGY3MGFiYVdNVXZmUElsZDcwVnhiR0t3cnJkZXZXOWY0T0FFcUY1dWFyVldmNDhPRm0zTGh4YmpVL0laUFRIck9sRVprcjNGMktLTnpyNUlwUU80ZC84NXZmZUZjSVMzM1Btb21majRPdkZPdzF4NzVmdjM1OG5KMHlXcEhYQ3IyT0hkZm1KMzFzcXY1NVJsT1dOdi9VMFlyQ2VFWFg5ZXZYOS80T0FMQnZXa0JTeStmYmI3OXQzbnZ2UGJlNHBOSEpDYURWNlQvWjJ1RHVVc0p2dGc2MXJQZlRuLzZVajFVajl0RkhIN25kNlZyUmowTHo1czNOK2VlZmIwNDQ0UVQrVzZXRTVoSnJEckdtR1NqVWEvV0VIdnIwMmxjd0wrOFpwNDRDS0NUOVhOSkNrMzk0cDJibmEwTnVqT2tINW5XMk5FRm5teDZrZ1IvdU5iS2xaZVl5ZDkvNzN2ZmNEeEpFUTV0VDFJTS9aODZjU01LOVZ1Rk9QLzEwVjlvamdXUlRlTmZwc0ZvWlVTdVhwdDRRNkpORGZ3WXJDdVBaMTluUFZBQ1FGR29IMVg3Q01XUEdtSC8rODU4dTVFZTFXSmtINmw3UmFhenYyMHIwckUrZkgrN1ZjNi9lKzBCdXZQRkcwN0ZqUis4T1lTaWt2ZnJxcTY1dkxZcmVlN1hmREJnd3dGeHd3UVhtb0lNTzhwNGlxZFJ1OC9ycnI3dTlHV3JoUXZINHA0NldGOFlydTJZNkZZQlNvWkN2QlNqTnlQL3JYLy9xV25mVXdoUERsbEZ0ckQzZmxpYm9KSDZUbXY5VFJxTXdOUkl6a0J0dXVNRWNmUERCM2gzQ21EaHhvaGsyYkpnTGNXRnBVOXloaHg1cUxybmtFblBJSVlkd2xIbEM2VTJldmlHcVRVc1RDZks1NGJvVTZkVFJmUVh6OHA1eDZpZ0E3SnZDdlBhQWFack9QLzd4RC9PWHYvekY3UlBUczVnWmJ1c2FXMHZjWFlMNTRmNTFXNmRuTG5PbjhOaTNiMS92RGtGcEJyazJvNmlIT2l3RitYYnQycG1MTHJySUhIMzAwWnlzbUVCNmc2ZTJHMzJjcWQ3NmhKOE1tSGVhMUZJMmdGZDBuZjJNUHhzQVVCajZPYVpGekovLy9PZXVRMEdCUDJaK2J1dGVXNkVHelJTYkgrNGZ0YVYzSzRHbzVhTi9mNDNMUjFBNkdFS2JhTlZ1RVRiRTZXTi9oWlp6empuSDlka3o4akk1dENvL2I5NDhNMnJVS0ROcDBpVDNqUytHcXh0NXBmRzZmdkF1TDR4WGRNM1hPUUFrZ3piWmFnWC82YWVmZGd1YU1mbzV0OVdXRHJqU0NiYUpYVkh6dy8wZmJOMmF1Y3pkb0VHRHpDbW5uT0xkSVZmcVBaczFhNVpydTRpaUhVZmg2T1NUVDNhZnFERFNMaG0yYmR2bVdtODA5VWFsVDNHUzNuNmpGWEcxdkdoaVM5T21UZDFHVWwzNzFibHo1M0xEZXMyYU5iMi9Bd0FnemNhT0hXc2VlT0FCODlaYmI1bWxTNWQ2VDR0T3M4Z3ZzalhYM1NXUUgrN3Z0Qlg0Sktyampqdk9yUklqR0FWNmZXSHJCTkd3bTB6VVozLzQ0WWViYTYrOTFyUnExY3A3aXJqU2YyKzEzT2hUR3gwQW9xK0ZwQjA0cFJWemJkYld1RldWemxOUW1OYytITjByc090clVhZVhxazlkTFdONjVZMG5BRURESVo1ODhrbnozSFBQdVkyM01XbEIvYXV0bjlvS3YrSmFCSDY0djlHVy9vY0VjdVNSUjVvdmYxbFRoSkFydGVOTW1EREJoWHZOaHcycmZmdjI1cFpiYm1HRGMwSm9sZjZSUng1eDB3VGlUaXZ4Nm12WENueXpaczFjaU5mcXU2cERodzd1bVZiZkZkcjE2Ukc5N0FDQXF0Q2lsc1k3di9qaWkyNTA1ckpseTRvOU9sUHpwYSswOWFLdDhPR3N3UHh3cjM1NzlkMEgwcTFiTjdkU2pOem9DMWVydHM4Kysyd2tKN21wQmVJNzMvbU9lN09GZUZ1OGVMRzU3Nzc3ek96WnM3MG44YVZQZ3hUb2UvYnNhWHIzN20yNmQrOXVPblhxWk5xMmJXdGF0Mjd0d2p6akhRRUFZU2tMNlFDc2h4OSsyQTJUMkxwVkxmQkZvejZoTTJ3bGJqeW0veE5aWXpBMURqTVEvYUQveGplKzRkMmhxdFJuL2RKTEw3bU5rMkZiTVJUQXJybm1HblBXV1dkNVR4QkgyaXlyVlFuOU40L2pnUjQ2RjZGbHk1WnVKYjVIang3bXNNTU9jNEZlYitBSjhRQ0FmTlBtV2gyQXBZVlBmYks5Y09GQzcxZUtZcWl0VzJ5dGNIY0o0ZitrMWh6TGp6T1h1Vk5QN1IxMzNPSGRvU29VNWovKytHUHp5aXV2UkxKTFhCdWE5UWFMMmR2eHBJOFlodzRkNmpZUEZYa2xZaTk2VTZoMkdyWFc2RXlFZnYzNm1TNWR1cGdXTFZxNEZodTE0ZEJlQXdBb3RIWHIxcmtlL04vKzlyZXVaVWU1cVVoNzBqUndackN0emU0dUFmeHdyOU5wZFVwdElEcXA4WWMvL0tGM2g2cFEyTk1JcUJVclZvVCtZdFZteGgvLytNZHV4Ulh4NHA5ZG9BMnpPclNqMkt2MVdublhCbGkxMmVqclJvZWJhUU8yVnVjVjZyWHhsWkdTQUlBNDBPS25QdW0rNTU1N3pKdHZ2dWtXeDRvUThEWHovbHhibzIycEZ6LzIvSEJmMTFhb2R5Uy8rYzF2dkN2c2k5cHhYbi85ZGJlUjlyUFB3bjJkS0loOTg1dmZOTWNjY3d3cnJER2lJSzhET3RRenFJOFg0ekxEVjZ2MFJ4MTFsQnVWcXE4WnRkNW9MQ1VBQUhHa3FYSmFFTDMzM252Tlk0ODladGF1WFZ1TWhiSVBiRjF1S3hHbjEyWTMwSVo2Sy9TTFgveUNGYjhxMER0T25jNzJ4aHR2bUkwYk4zcFBnOU1oVlRxRlZxTUhVWHlhZUtRekM3UmFQM255WkhkUVJ6R3A3VVliWHdjTUdHQk9QZlZVYzhJSko3aDcycmNBQUVuaWo4eTgvLzc3elp3NWM0cXhhUFpMVzcrM3RjSGR4VmgydUY5c3EwM21NbmVYWFhhWjZkT25qM2VIaXF4ZnY5N05jdFZxYnRoM25tcWp1T3FxcTl6cUsyR3QrRFp0MnVUYWI3UkpXdTA0UmVvTmRHK3kxVU4vMGtrbm1ZRURCN28vbDJyWnFsT25qdmM3QUFCSUhuVSs2RXdZcmVLUEdUUEdiTm15eGZ1Vmd0Q0dPVTNQK2NoV3JOdHpzaFBoTjIwMXpsem1UcUgxNktPUDl1NVFIb1Y1dGVMb0pGTE50dzlEazB2T09PTU1OL2FTVDB5S1R4dC90S0x3d2dzdnVOV0ZRdFBCVU9xajE1OUJ2ZEcrN3JycnpIbm5uZWVDdlE2UzBnRlNBQUFrbWRxUGRZNVByMTY5WFBlRFRyVU5tNmR5b0Ira3pXMjlZeXZXbTJ1enc3MU9vV3FYdWN5ZDJnODBQaytUYzFBK25UNnFIZC9xSFF0RHEvU2FhakpvMENEK2ZjZUEzcXo5L3ZlL2QyL2NDdDBIcUc5MDJnU3JQdm9MTDd6UVhIMzExZWJjYzg5MUl5elZTODgrREFCQW1tZ3hTei8zK3ZidDYvcng5VW01RnBnTHBLdXRhYlptMllyRlVicmw4Y085ZHRUOTBWYW8zZzc5Qys3ZnY3OTNoMnphT0tzZTdFOCsrU1IwbjVqZVJHblZYbTA1K2lKSGNhZ05SeE9QZE5pR052Z1VrbnJwTmFyeWlDT09NRmRlZWFYYlZIM0pKWmU0ZGh6YWJ3QUFhYWJKYjVyVXFJVXRmV3F0eVlOaEYwNXpvQjcwbDIwVjlnZC9Ednd3cjZOMXYyb3JjRnVPcVBkSks4bDZSNFc5NmRRMVRVL1JSMGhoNkl0Wm15S1BQZlpZZCtBUUNrOHJCZE9uVHpkLyt0T2Z6S2hSbzBKUFBNcFZ6Wm8xellrbm51akd6LzdvUno5eVp4eW9wNTU5RndDQVVxS2ZoL3FrdW1QSGp1N0Uvd1VMRm5pL2tsZGFFTmNQL3JHMkN0WVRsSXZzTk5EYjFoR1p5K0QwN2ttcjk2d28vNWZDbjhLZ3duMllJS2pWMnA0OWU3cFRhTlZIamNKVCs5bkxMNzlzaGd3WlVzaFZBaGZjVzdkdWJhNi8vbnIzcHVMMjIyOTNoMDd4Qmc4QVVNcVVOOVdIcjVQVTU4K2ZieFl0V2xTSWdSYUgyM3JibGtaai9rY1A0aVE3M0I5cGEyRG1Namh0YkZCYlFMdDJnZHYzVTBlcjlscmgxV3RRK2doS3A0YWVlZWFaN3NBaDNhTnc5S1pzM3J4NXJnVkhKK1lWNnBSWmhmcXVYYnU2RTZEdnV1c3V0MG1XUDFzQUFPeE5Cek5xMFV2anFOVWxrZWM5Y05Wc2RiTDFwcTNZYmE0dCt6bStOZ2NjWml2VXN2dml4WXZkMUE0Mjg5bC9vYnQzdXk4MGhmc3c3eVQxMFpNT0hWSzQ1OTlyWWUzYXRjdk5yZi9IUC81aFpzK2VYYkEySEsxRWFJUHNkNy83WFhlZWdlYlRNL1VHQUlBdjhoZEJOVVZRUDZzVjhQUDg4N3E5cmJtMnB0dmFwUWR4a1IzdTFhaWtEUUxxdXcrMUsxYUJWaXY0M2J0Mzk1NlVMbzFxMG9GVlljWWo2aU1uOVZSZmNjVVY3b1JSRkk1T21uM21tV2ZNYTYrOTVxNExNYnRlLzYzVmV2V05iM3pEZk9VclgzR2YxTlN1WGR2N1ZRQUFVQjRGZk9Va1RkTFJRdlBDaFF2ekhmQzFJUDZxcmRYdUxpYksyNEUzMmRhM2JPa2poOEEwT1VmOVQ1ckhYcXIwSmtkakVqWCtNZ3kxWm56cFMxOXlteWhST05xWTg5UlRUNWwzM25uSG5UeWJiNXArb3hXSHl5Ky8zQVY3L2ZmV0ZBQmFzQUFBcUJyOXpOUndGMDJUVXhaVkgzNGVBNzVDcnZLeURyYmFwZ2R4VUY2NDEzRmY2dnNJMVgrdkZVNXRydFU4OWxLbGtaZHE1UWc3K2xKZnBBcDdyTjRXanZyckgzbmtFVE4rL1BpOHI5YnJFREwxMFd1VXBWcHdOSzllRTZmWWxBNEFRTzRVOExVNGR2amhoN3RSMWZxWnJoYmJQTkhxL1h1MkZ0bUt4ZWJhOHNLOVRMSjFvNjJhN2k0Z3RhUm9kS00yT1pTaUVTTkdtQmt6Wm9RS2gxcTFWOWpUSmhGR0hSYkczTGx6elIvKzhBZjNtbS9xb1ZjL3ZUYkxYbnZ0dGU0TUEwMUZBZ0FBd1NuZzZ4TnhqY3JjdG0yYm1UTm5UcjVPczlWS25EYlh2bVlyRnB0ckswcUw2a0ZRTDhBZ2R4ZUMrcDFLY1hPdFRrdDc2YVdYUW44aGFST2wrcTcxSm9uMmpQelRLYlAzM0hPUDY2L1BKNzFSMDNrRnYvdmQ3OXhxdmZhbnNGRWFBSUJvYVFXL1I0OGVibnFPTnRvcTZPZEJXMXRUYk0yMlZmU1RheXRiQ2g1bjZ6cGJkZDFkUU9vNzE5aEEvWXN0SmVyVFZzOTJtRkZNQ29CZi92S1hDWDRGOHVLTEw1cUhIbm9vNzJNdXRSZmx4ei8rc2ZuRkwzN2hldXpWbGdNQUFQS2pZY09HN2dSM2RWSW80T2ZwNS93aHRwNnp0ZEhkRlZGbDRWNjdEOVFzZnFhN0MwR0gvWFRxMU1sOVBGSUt0T3I3NFljZnV0WDdNQlFDMWJMQmhKejgwbVpaOWRjcjNPZXhKOC9VclZ2WG5IUE9PZVpuUC91Wk9mZmNjOTAzR3dBQWtIOWF3ZS9TcFl2N09UOXQyclRRK3lITG9iQ21sWHVOeGl6cTZ2MittcmduMkxyUVZ1ampVTFdLcmMyMXBkQTMvc2tubjVpWk0yZUdtckNpdm1zZFdLUmVlM3F3ODBjNzZSOTg4RUV6Y3VUSXZPMm0xOFpZclJqb2RObHZmZXRicGsrZlBwd3NDd0JBZ2ZrcitEcFVkUHIwNmZrNDZLcVhMYTNlaDF2ZERXbGZTVnU3ZnZVdTVHcDNGNEo2ei8vem4vKzRkMDFwdG1YTEZqTnUzRGkzMXlETVJsck5OaDg0Y0tBN2tBSDVvVC9ZT25GMnlwUXA3bXN6SCtyVnErZDY2MisrK1dZM0RVY0hVL0ZtRFFDQTR0Q0lkclU3YTlGWkM3RVIwMGZ5eTJ5cC83NW9CMXRWWlJsOW5xMXV0dlJ1SkpSRml4YTUzbnNGbnJUU2hKWEpreWViVFpzMmVVOXlwNUdYSjU5OHN1bmZ2ei9qRVBOQUsvUWFjVGxreUJDM2V6NGZveTcxQ1pXbVJGMTAwVVZ1ak9scHA1M21ScHF5S1JvQWdPSlJybEtidUJhYjFXbXhaTWtTNzFjaW8xWHNGMnl0YzNkRlVOVWVtVEcydm1rcjFKS2pRcFQrSmVya3NEU0dWdlZ4NmRBcTlYS0ZXUWxXSzg2Wlo1NUpUM1llcUZYcW80OCtNbzgvL3JnN21qcnFZSy93WHJObVRmZmY4S3FycmpJMzNYU1RPMGlERGRFQUFNU0RNcWdXNEhUR2pQWklhblI3aEJUZU5KSkhnMm55ZndKbU9hb2E3clVNclNYSGs5MWRDSnMzYjNiVFFUVFBPMjFXclZwbEprNmM2SHE1Z3RLR2orT1BQOTZORDBXMDlPWkxveTZmZU9LSlVQK05LcUp2RnZxNGI4Q0FBZWIyMjI4M1gvM3FWMDNUcGsyOVh3VUFBSEdpWVMvNlZGMkxmaHFSR2VHQ1gyOWI2cjFmNWU0S0xKZmRyV050WFdvcjlNZ2I5YVAzNnRYTDFLbFR4M3VTZkdyMVVQL1dtREZqM1BqUG9EcDI3T2g2c3pWWkJkRlJzSjg2ZGFvTDlwcmVGRFd0MkN2SVgzbmxsVzVPL2xGSEhjV2hZd0FBeEpoK2RtdURyUTZVMU9Kc2hDTXlOZU82cGEzaHR2SXlXTDh5dWFRUGpSTFI1dG9yM1YwSTJwMnNJS3dBbEpiMkhIMUJxTmMrekttbWVyT2ppVUxISEhNTXZka1JVb3VVTnMyb0ZVZGZkMUhUZnl0dGZOYm0zTzk4NXp0dTlSNEFBTVNmZ24zWHJsMWRqdE0rdkFnRHZucnZSOXRTZG81K2MxOGxjbDFhbkdPcnN5MTkzQkNLcHNwb2hWdi9RcE5PNFhIZHVuWG0zWGZmRFhYeW1UWWFYMzc1NWU0aklrUm4vdno1NXRGSEgzVUhWK1NEUmx1KzhjWWJiZ00wQUFCSUZnMHkwUVFkZmJLdlJkcUladUJyOWJxN3JkZHRiZENEUWduU04vQ0JyYS9acXUzdVFsQjdUaG9PdDFKTGpqYlJUcG8weVh1U083VndhSkxRV1dlZFJUdEhoTFFQNHM5Ly9uTSt4bDA1bDExMm1SazhlSEFxOTVBQUFGQXE5S203RnB3MStFV0xnUkhOd05jOGMzMFVvT3ljbjVuYjVRaVNJclUwdmRqV3hlNHVKSDBFb3VrNVNaNG1vbjd1VjE5OU5kVDRTMjNpdU9hYWEwemJ0bTI5SndoTG42TDg5cmUvZGZQc282WjMrYmZkZHB1NTQ0NDdUUHYyN1dtakFnQWc0YlRZM0xwMWF6ZE5MMHliZFJhRmc1NjJkQ2hzSkgvRHFnaTZSRHpWVmw5Ym9YdHE5TkhIMnJWcjNhRk5TYVUrYnAxd0dtYjhwUTQzdXVDQ0M5d1lSWVNuTjF4MzMzMjMrMFFsYXZxRHIyazRYLy82MTkwWXJUU09kUVVBb05UbzUzbXJWcTNjcTJiZ3IxOGZ5VUd6Nm5ScFpldE5XNUUxOUZjbVRQK0gzNTRUT28ycWRVSWpJQldha2tZZjI3ejk5dHR1dEdLWUVVcm5uWGVlNmRhdEc2ZVhSa0J0VWovNzJjL2NtUU5SMC96NlcyKzkxYlhqNk91VllBOEFRSHI0aDFBcVM0d2FOY3E5UnFDTkxjMjhmOS9kNVZtWWNLOGVGTDBET2RQZGhhVDJIRzFNckZXcmx2Y2tHVmFzV09FT1FBaXprYlpaczJibW5IUE9NYzJiTjZlOUl5VDlkOUNLZmRUQlhtMWpPbnZnNXB0dmRxZk9ham9PLzYwQUFFZ2Z0ZDZxUldmMTZ0V3V0VGVDK2ZmSzI1cWU4N2F0dk0rK0R4UHVSYlB2QjlvS3ZadlFINCtadE5Ocng0OGY3L3F5MUFZUzFISEhIZWZHZ3FacDduOHhiTml3d1cyZTFValNLRStlMVgrWFk0ODkxbno3Mjk5Mkc1NlR2Z0VjQUFCVVRwTUx0ZWlxdG10TlJJeUFEakJxWk90WmQ1ZEhZY085NkNPRzYyeFZkM2NoNlBSYTllQWZjc2doM3BONFU2QWZPM2FzV2I1OGVlQisrd1lOR3BoVFR6M1ZkT25TaFNrNUllaHJSK011ZFloWW1MMFBaZW0vejhrbm4reGFjVTQ1NVJRT0Z3TUFvQVJvb1ZrQnYySERodWE5OTk0THRZanIwY2Y5V2d4LzFWYjB4K1JuaVNKTmFuYm5jbHZudTd1UUZpMWE1TnBVV3JiVXdWN3hwajU3YmJqUWh1Q2dkRkt2Vm9WMXVpbUNVU3ZPTTg4ODQvN3dSZFFiNXlqSW4zSEdHVzRpemdrbm5KRG9pVTRBQUNBM05XclVjQ1BiZFY2T0JuUkUwQldnazJ2YjJmcW51OHVUcVBwZmh0Z2FtcmtNNzlsbm4zV2JiT05PaHgyb0ZTUW9UY2JSbEp3a2JpU09DNFg1OTk5LzN4MGdGc0c3YWtlOTlQb0RQV2pRSVBQZDczN1g5ZHJUWHc4QVFPblJ5djJkZDk3cE9pd2ljcHF0RXpLWCtSRmxjL3YxdHBaa0xzTlJTSHZpaVNlaU9pRXNML1RQcUJGSkd6ZHU5SjdrVHA5T0tOd25iUk54bkV5Wk1zVzg5TkpMVVI0WDdkcWp0RkwvazUvOHhPMkZBQUFBcFV1cjl6Lzg0US9kbnJzSUZ2czBGdkgvYk9tQXE3eUlNdHhyQ2Z2YXpHVjRhbm5SQ241Y2FjVmV1NmlEbm1DbVhpNkYrODZkTzN0UGtDdHR3TmJYeUpvMWF5THJzMWV3MTZidTMvem1OK2FJSTQ3d25nSUFnRkoyNmFXWG1pOS8rY3R1a2s0RWRGYVUydG56Y3JoUjFEczQ1OW5TanNNQjdpNGtCWHo5UzlSQlFYR2pFWmpqeG8wTHZHS3MvMTJISFhhWTZkKy9QeTBmQWVqTjFkQ2hROTNLZlZUdE9BcjJQWHIwTUE4Ly9MQTUvUEREdmFjQUFLRFVLU04wN2RyVjVRNjFaWWZjNDZmRmRhM3VmbXhyc1I1RUtSOHpKMzlpYTFMbU1yeFhYbm5GTEZrU1NiZFBaUFFmZE5PbVRXN0ZPQ2lOVjlTaFZRVDczTzNZc2NOdG50VVlVbDFIUVora2RPelkwVHoxMUZNRWV3QUE4QVVLOTlkZmY3M0xDeEhrdDY2MnJyUVYrWHp0ZklSN3BhMnJ2TmZRMUc3eDJHT1BSZHBUSFpZQ3BhYjZCRzBGMFJlRVZ1NzFSWUxjNk4rNUpoUU5HellzMUdibWJQcnZvVCtvLy9yWHYwejM3dDI5cHdBQUFIczcvZlRUeldtbm5SYkZtVGZLNEdyTmllUXcyR3o1Q1BjeTFkWVBNcGZoYWRPcVZsU0Q5cmRIYmZmdTNlNUUzYUQwMFU3YnRtMU5vMFk2eXdDNVVEdlVpeSsrYUpZdVhlbzlDVSt0T0E4KytLQTU5TkJEK1NRRkFBQlVxSDc5K3ViQ0N5OTByZFVSME56M1MyMUZPZzg5bjZjbWpiYlZ4MVkzZHhlU1pzbHYyYktsNkN1cldqbldYZ0NOWHd4S2MxSXZ1ZVNTV080bGlEUDk5OWZxK3FSSmt5SjdvNmV2cDEvLyt0Zm14Qk5QZE9NdkFRQUFLcU96aVhScXJXYmZLNXVFb0JYRjVyYlU3VEpTRDZLUXI1VjduNmJuQkYvaUxrT25qMzc0NFlmZVhYR29OMXYvTWNPczhPcHdKRnB5Y3FOTnN5TkdqSEI5OWhxUkdzRkJFaTdZLytoSFB6SW5uWFFTNDBnQkFFQ1ZhTitrMm5NR0Roem9QUW1sb1MyMXN4L2s3aUtRNzNDdnB1aExiRVd6NjlIU0J0dVpNMmQ2ZDRXbkZlTXdMVG5TczJkUFZvbHpOSDM2ZExlSlZuMzJVUVI3OWRqZmNzc3Q1dXl6ejNadnRnQUFBS3BLaTdUbm5YZWVPNjhvQWgxdDNaNjVEQy9mNFY0ME9lZW16R1Y0YW92UkFWZkZPc0ZXazN1MmI5OGVPR0JxeFYrOTNRY2VlS0QzQlBzeVk4WU05Nlp1NGNLRmdUY3haMnZXckptNTZxcXJ6QVVYWEdBYU5HamdQUVVBQUtpYW1qVnJtbU9PT2NhY2Y3NzJ4SWFtZWZjWDJ0SUJWNkVWSXR6TEVLOGlvUmFOd1lNSG04MmJOM3RQQ2tlcjl0cFFHNVJXaWR1MGFjUEtmUlZ0MjdiTmJhYWVPblZxSlBQc3RSSG1uSFBPTVpkZmZyazdSQXdBQUNDSTFxMWJ1OVg3aUZxdEZVcXV5VnlHVTZod0wxcTlqMnorL2ZyMTY5MEtmaUVuNkdqVldOTmF0SElmVkpjdVhVeTlldlZjN3o3MjdkVlhYM1gvcmFPWVo2ODNWQU1HRERCZis5clgzSDhIQUFDQW9LcFZxMlo2OSs3dGNrVUUxTklSU2FkTElST20wcG42NzZNWlRtNHRXTERBUFBQTU05NWQvbWxudEVKbTBOWVF0ZVJvUWc0ak1Ldm1vNDgrY3EwNE9sTWdMSTBmMVFiYWE2KzkxdlR0MjVjM1Z3QUFJRFIxQkZ4MjJXVlJIWUNwdjBuN3pHVndoVTQ0Mm9tcUNUcVJtVGh4b2hrK2ZMaDNsMThheHhsbTFWNHRPUzFhdEtEUHV3cTBwMkxzMkxGdU9rNVlDdkt0V3JVeVYxNTVwZHRBUzBzVUFBQ0lncjl3ZTl0dHQzbFBRdEVveHJ0dFZYZDNBUlZqK2ZJRlc3L09YRWJqcmJmZU1sT21UUEh1OG1mVHBrMmhUa1ZWd0ZSeFVGTGwxRnMvZWZKa00zLytmRGYyTWd6OXU5YTc2b3N2dnRoY2M4MDE3bVJnQUFDQUtHbEloemJZcWxVbnBMTnQ5Y2hjQmxPczNvU2YySG92Y3htTko1OThNcThCWDV0b3QyN2RHbW9UcjNydDJjUzVieHA3cWRJcHRHSEhYbW9xMFFrbm5HQys5YTF2bVNaTm1uaFBBUUFBb3FQdWpOdHZ2OTFONUF1NWlLdjJEbzNnMGZ6N1FJb1Y3ait6ZFlHdEdlNHVBdXFEMSttbFd1M05CNFY2OWR3SHBkWVF0WVBvVkROVWJQWHExZWJqano5MkxUbWZmYVl2aytEMGg2dGJ0MjdtcHovOWFWUnphQUVBQU1wMTJtbW51Yk9NSWxpOXY5TFdZWm5MM0JWelY2SDZXODZ4dGNiZFJVQmhVQ015OHhIdzFTb1NacmErNXFFcTJHdGpKOHFuZjhlVEprMXlMVG42bENTc3hvMGJtMS8vK3RmbXlDT1A5SjRBQUFEa2gxcC9MN3p3UWpmeVBLUU90Z2JaMHZ6N25CVXozSXMyMkdvRlA5d1NiUlovQm43VUFWOGpOM1dBVlZCNkYzZlFRWkdkTEp4SzJyQ3MvUlBMbGkzem5nUlh2WHAxYytlZGQ1b3p6ampEZXdJQUFKQmZwNXh5aXVuUm8wZllxWHhhQ1Q3ZFZrOTNsNk5paDNzWmFldjZ6R1Uwb2c3NEN2WmFTUTV6ZUpYK0hwMDZkZkx1VUpiYXFwNSsrbW4zQmlxS1UyaS8rdFd2bWh0dnZORzdBd0FBeUQrMUFSOTc3TEZSdEdGM3QzVnU1akkzY1FqM290TnI3OHBjUmlQcWdMOXk1VXJ2S2hnRjF2YnRRNDh1VGExUm8wYVpEei84TVBSMEhGR2YvZmUvLy8wb2V0NEFBQUNxVFB2OU5NZ2pncGJnT3JhMGV0L0szZVVnTHVGZU5FRm5hT1l5R2xFRmZQWEpMMSsrUE5UdVo1MklHc1dLZEJycGpkTlRUejNsOWt5RW5ZNVRwMDRkdDRHV0ZpZ0FBRkFNZmZyMGNRRS9nbk4xRHJGMVllYXk2dUlVN2tVSFhJM0xYRWJERC9qVHBrM3puZ1NqS1M1aEtOeXJOUWQ3MHh1ZTU1NTd6cjE1Q2h2c1JlMDR4eDEzSEFkVkFRQ0FvdEJDNDRBQkE4eGhod1VlZU9Pclordkx0bkxLNjNFTDkxdHNhWUpPOEoycjVWREFmK0tKSjh5NGNjSGVOK2hVV2xXWThLbWQwMHpLK2FLWk0yZWFqejc2S0pKZzM2OWZQM2RZbFE0S0F3QUFLSmF1WGJ1YTAwOC9QZXpHV3YzRnZXMTFjM2RWRkxkd0x5dHNLZUFyNkVkR0s4VFBQUE9NZWYvOTk3MG5WYWNSbUdGYWNqUzVwVkdqUnF3bWw3Rmp4dzd6MGtzdnVjM0tZY085RG8yNDdMTExYSThidmZZQUFLQ1ltamR2YnM0ODg4d29EdERVNnYxbG1jdXFpV080bDBtMk5NTXdzaEdadnRkZWU4MU5aY2xsOG8xR05JWnBxV25kdXJVN0tSVjdtenAxcWp1Sk51eGVCUDI3UGZYVVU5M1l5L3IxNjN0UEFRQUFpa01yOXAwN2R6Ym5uS1AxNmxEVTlxRVRhNnNzcnVGZU5DSlQ3MVFpRC9qang0ODNEejMwa0R0MXRpcjArOVRhRTVSV2xXdlZxdVhkUWRUbU5HellNTE5wMHlidlNYQzlldlV5bDF4eUNhTkdBUUJBYkRSczJOQmNmdm5sVVhSdXFDMm5SZVp5MytJYzdrWFRjeUtkZ2U5YnRHaVIrZU1mLzJnV0xsem9QYW1ZeGpNcWpBYWxscHdHRFJwNGR4Q2RSS3QrKzdEdE9QcllTKytLanovK2VENGRBUUFBc2FHOWxnTUhEalM5ZS9jTzFkNXRxZC80Qmx0Vk9yRTI3dUZlTkFQL3RzeGx0TFpzMldJZWVPQUI4K3FycjFiWWRxTmdyeEdOcWlEVS8xMjNibDMzN2cwWjI3WnRjM1B0TjJ6WTREMEpSdStFL1UyMGpSczM5cDRDQUFERWd3TCtsVmRlNmJKZ1NKZmFxdEtjN3lTRWUvbWpyVjluTHFPbGZ1OFJJMGFZKys2N3p5eGJ0c3g3K2w5YXNROXpzRkxObWpYZGluTEkzZEtwb2xYN3laTW5lM2ZCNk45bnUzYnR6S1dYWHVyYWNnQUFBT0pJK3dKYnRtd1pkdlcrczYwcXpkWk1VdUw4Z1MyRi9MelFuSFVGZkUzVHlWN0ZWNjk5bUpZY0JYdW01UHlYOWk5b0pHbFY5enRVUkROazlZZmwzSFBQRGZ1SEJRQUFJRyswc2Jabno1NWg4MkIxV3lmYjJtZXJRdEtXazlXZWs3ZUFyMVY4VGROUnE4NjZkZXYyUEFzVFJMWEN6QVNYLzFxOGVMRnJ5UWxESDNGcDFmNzY2NjgzOWVwcFFoUUFBRUE4cVVWYmgxbzFiZHJVZXhMWU1iYTZaaTRybHNSZWtid0dmTkZtMnovODRROW0rUERoYmhVL1RHKzROb3hxUXkweWV4emVmdnZ0VUcxT1dxWFhINUx6empzdmlwUGZBQUFBOGs3bjhMUnYzOTY3QzZ5anJTTXpseFZMYWlPNEF2NVBNcGY1b1hhY3Q5NTZ5d3daTWlSVXVGZVFqZUFBZzFUUUp5QkJEaEhMcGpkTDZsdTc4Y1lidlNjQUFBRHgxcU5IRDlPdFc3ZXdlekRWQ3RJdmMxbXhwSVo3dWN2V3RiWWluNE9mVFhQWXd4eXlwSDU5aFZFWTErNFVkdlNsOWpEY2ZQUE43dXdBQUFDQUpORG9iblVjaE96bTBJRldhbHVvdE84K3llRmVOQ2J6QWx0YjNGME1hUVJtMkJOWTAwQW4wZXBFMnJBT09lUVFjLzc1NTdOSkdRQUFKSVpXN0RYZFQ2djNJV2tjWnYvTVpmbVNIdTdsRlZ1bjJGcmg3bUpHNzlUQzlKaW54ZURCZzBPL3lkR3EvVTAzM1JURk9Da0FBSUNDMGtuNlJ4MTFsSGNYbUZwelRzOWNsaThONFY1RzI5SU80a251TGtiVWJ4LzBBS3kwbURCaGdsbXlaSWwzRjR6Qy9ORkhIMjJPTys0NEp1UUFBSURFMFlKdi8vNzl3NTZvcjc5WW1iZENhUW4zc3NEVzhiYWVjSGN4UVJBMTV0MTMzM1VibE1QUUh3UWRXSFh3d1FkN1R3QUFBSktqVnExYXJ1KytRNGNPM3BOQTFMcFE2VGpNTklWN1VlLzlWYlp1dHhXTDVmTGF0V3U3dWV5bFNuUHQ1OHlaRTdvbDU2U1RUakw5K3ZWemgxY0JBQUFra1ZxTE5mTStKSzBjOThsY2ZsSGF3cjN2dDdiVWh4K3VGeVFDTld2V2RPL1VTdFhJa1NQM0hBZ1dWSU1HRGN5Z1FZUE1FVWNjNFQwQkFBQklIblYwbkhLS0ltb29XcjAvTzNQNVJXa045L0tlclVOdEZhMU5SeXYyNmhWWHdDOUZHaU02YytiTTBDMDV4eDU3ckRucnJMTksraE1RQUFDUWZNb3lBd2NPZEF1WElZZUQ2QjFDdVNNeDB4enVSYWRQcVUzbkV1KzZvTlNTbzlOVVM5VzBhZFBNd29VTHZidGdXclZxWlU0ODhVVFR2WHQzN3drQUFFQnl0VzdkMm8zRkRKa1IxWGZmTG5PNXQ3U0hlOTlRVzFyRmY4UGRGWWcyZ1picXlFWWQzdlhwcDUrYWpSczNlazl5cDM5MzJrQjd5U1Y2YndZQUFKQjh5amZhV0J1eWJidUpyUzZaeTcyVlNyZ1g5ZCtmWWVzV1d6djBJTjlLTmRqTHlwVXIzY3A5bUJOcGRRQ1lOcDIwYjkvZWV3SUFBSkI4UFh2MmREa25CSTNFUE5MV0YzcS9TeW5jKy81czYzQmI0OXhkSGluWWhweGxta2lhNjYrNTlvc1dMZktlQktPMkpxM2E2MVEzQUFDQXRPamF0YXRwMXF5WmR4ZFlYMXM2c1hZdnBacWFadGpTRVdIWDJzcmJ5YmE3ZCs4dXlkVjd0ZVNNR2pYSy9QdmYvL2FlNUU1dmlnNC8vSERUdTNkdjd3a0FBRUE2cUN0QnZmY2hxZWUrVStieXYwcDlTWFNJTGZVcjNXVXI4bFlkaGZ0U0hJTzVZOGNPZHlwdEdQcDNkOE1OTjVqcTFhdDdUd0FBQU5KQjgrNDdkdXpvM1FXbXZ2c3ZuTzVKdjROeEIxLzl4SmJHc1dqamJXUTBBcklVeDJCKzhNRUhadWZPbmQ1ZE1IMzc5bldIVmdFQUFLUk4zYnAxVGVmT25kM2MreEJxMi9yQ2FiV0UrLzlhWUV0aldVNnlOVWtQd3RLcHJKcG5HcVk5SldtMGF2L21tMjk2ZDhGZGR0bGw3Z3NmQUFBZ2JkUzIzYWxUSnpmeU93UzFOeHlTdWZ3dnd2MFg2ZkFydng5L2poNkVvYmFTTUJOamttYmN1SEZtN2RxMTNsMHdIVHAwTU1jY2MweEpuK3dMQUFEU1RUMzN5andoS01kM3pseitGK0crZkovWlVqKytXbldtMmdxY3p0V2FVMHJoL3QxMzMzV2ZXSVJ4Mm1tbm1UWnQyakFsQndBQXBGYlRwazNkZVQ0aGZXSHBuL1JVT1lWOFRkWUozRUMrZGV2V2tnbjNtelp0Y2lNd3cvenZiZEdpaFRuKytPTk44K2JOdlNjQUFBRHBvem4zUFhyMDhPNENVOS85WG44VHd2MitiYkFWZUNsNnpKZ3hvVmV5azJMS2xDbnV6VXdZMmtqYnZYdDNVNk5HRGU4SkFBQkErdWc4SCtXZWtBNndkVnptTW9Od3YyL3JiUVZPNStvL0w1V1YrOG1USjdzTnRVRnBBKzJSUng1cHVuUXA5elJsQUFDQTFORFFsVjY5ZXJtUUg1Sm0zZS9KOUlUN2ZkT0lvY0JqV3padjNsd1M0ekRWa3JOOCtmSlFrNEhVZDZad0gzSXNGQUFBUUNKb1liTm56NTR1NkljdzBOYWU0MjRKOS91MnpIc05SS0czRkU2cG5UVnJsbG0xYXBWM2x6dDlVU3ZjSDNXVUJoVUJBQUNVaGtNT09TVHNvWjFhRlcyY3VTVGNWOFVpN3pXUWJkdTJsY1NjKzZWTGw1cjE2OVhCRkV6OSt2WGRZUTQ2c1EwQUFLQlV0Ry9mUHV6NDcycTJHbVF1Q2ZkVk1kZDdEVXp0S21tbU56QXJWcXd3bjMybTRVTEJhTWY0Z0FFRFN1SlREZ0FBQUYvYnRtM0R0aVJyMWI1TjVwSndYeFhoVG1TeTBoN3UxNnhaWTZaUG4rN2Q1VTd6N0xWeWYvVFJSM3RQQUFBQVNrT1RKazNDaG50dDdteWR1U1RjVjhVNjd6V3crZlBuZTFmcHBKVjd0ZVVFVmExYU5iZVpoSlljQUFCUWFwUi9kS0JWQ0pvZnZ1ZW9XOEw5dnEyeEZmZ1FLMUhMU2xxcEZXZmV2SG1oV25MMDE1NS8vdm5lSFFBQVFPbG8xS2lSVzcwUFFhTjIybWN1Q2ZkVm9iYWNiWm5MWU1KTWtZazdyYnEvODg0NzNsMHdqUnMzcGlVSEFBQ1VKTFhrTkd1Mlo1SmxFTnF3MkNKelNiaXZpdTIyUW9YN2xTdFhwdmFVMmwyN2RwbEZpMElORkRJbm5uaWlxVk9uam5jSEFBQlFPclR2VUJOelFsQzRyNSs1Sk54WFZhaE50ZXZXclV2dEtiWHZ2LzkrcUZHZjJreDcwa2tuaFozdkNnQUFrRWpLUUNGNzdtWFBqbHpDZmRXczlGNEQwYXA5Mk5YdHVQcmdndzlDdlhGUlMwNzM3dDFadVFjQUFDVkpCM21xN3o2azJ0NHI0YjZLVnRzS3RmUytaTWtTN3lvOXRCRjIyYkpsb2NKOXYzNzkzQ1lTcmVBREFBQ1VHbVVnbmZjVDBwNVZVaEpWMVN5MkZYd2NqQlZtVkdSY1RaMDYxZlhjQjZVdjVsNjllcGxXclZwNVR3QUFBRXFMVnU0akNQZXMzT2RJeSs0N01wZkJhSVU3YldiTm1oVXEzT3NqcUk0ZE80YmRJUTRBQUpCWVd1elVlVDhoYVZOdFhWMFE3cXRHcys2M1ppNkQwY1NjdE5IOC9qRGh2a3VYTHFaejU4NW12LzMwOVFnQUFGQ2FhdGFzYVJvMGFPRGRCZFpKLzRkd1h6VTZoVXA5OTRHdFhoM3FMNCtkelpzM213MGJOZ1R1dDFlZ1Y2Lzl3UWNmN0QwQkFBQW9YUm95RXBLYnAwbTRyNXIxdGtJZE02c2duQ2FMRnk4TzlZWkYvV1cxYTljMmJkdTI5WjRBQUFDVXJnakNmVHY5SDhKOTFXeXlOVDl6R1l4V3VKY3ZYKzdkSmQrbVRadmMvUDZnNnRhdDY0SzlUcmdGQUFBb2RlcG9DRUd0Rks2dmgzQmZOWnR0TGN4Y0JwZW1jWmpxdGQrMkxmakJ2UWNlZUtEcDFxMmJkd2NBQUZDNjFxOWY3L3J1UTFDNGR4TktDUGRWczkxVzZHWDN1WFBuZWxmSnRtUEhEck5xMVNydkxoak55RC84OE1POU93QUFnTktsRG8rUUcybzFuY1F0L1JQdXEyYW5yWm1aeStBME9qSXRacytlN1YzbFRwdHAvLzN2ZjV2ZXZYdDdUd0FBQUVwWFJBZFp1YVo5d24zVjZBQ3JhYmIrNCs0QzBpYlVOTkRIUm9zV0xmTHVjcWQzcHpxWlZxdjNBQUFBcFk1d1h4d2JiWVZxelZFLzFjNmQraEFnK2NKTy96bnFxS01JOXdBQUFKYTZHdXJYcisvZEJWWmQvNGR3bjV1SjNtc2dha1ZKUTkrOSt1M0RCdlB1M2JzektRY0FBTUJTcmdwNmRsQlpoUHZjVExZVjZ0OThtRjcxdUpnOFdmOGFncXRWcTVacDFhcVZtM01QQUFDQVNPelcveUhjNTBiTDdxSDZhdWJQbis5VzhKTnN6cHc1b2Q1ZGR1M2ExZFNvVWNPN0F3QUFLRzA2M0RNQ21waER1TStSWnQycjl6NHdoZnN3OCtIallPM2F0ZVkvL3dtK3Q3aDkrL2FtWHIxNjNoMEFBRUJwMC9rL216ZnJXS1hBRk94MTZDcmhQa2RMYmEzTVhBYWpVMTExdW11U2JkKytQZFRLZmN1V0xVM3o1czI5T3dBQWdOS21TWVFSREJyWllhczY0VDQzQ3ZlZlppNkQyYnAxcTFtNU10VDdnNkxTbTVQZHUxMUxWeUJxeDJuY3VMRUwrQUFBQU1oTXk5bXlaWXVwWHQwTnZBbEs3dzdxRXU1enM5WFdtTXhsTUZyeG5qNTl1bmVYUEd2V3JIRW4xQVpWcDA0ZEYvQTF6eFVBQUFBWkdwZXU5cHdRMU5kVGpZU1ZHL1dpNkRDclhlNHVvQ1JQekZGTFVaaHdyNCtkbUpJREFBQ3d0MTI3ZHJrVi9CRDB6dUFBd24zdTFKcXpPbk1aekpJbFN4SjdtSlg2d2NKc0NOWnU4R2JObW5sM0FBQUFFTFhsaE15SENtaGJDZmU1VTdDZm1ia01adVBHaldiUm9rWGVYYklvbklkWnVkZVVIYzI0QndBQVFJYUN2VnEzSTloVXU0bHduenVOdW5rbmN4bU0vc08xYWRQR3Uwc09mL3hsbURuOVd2VS82S0NEdkRzQUFBQ3NYcjNhaGZzUTB3Z1YwdHpSLzRUNzNPbnprbWN5bDhGcDNuM1NLTnhyUTIwWTZ0bnYzTG16ZHdjQUFJRDE2OWU3bnZzUUZPN2Q2aXZoUHBoNXRvTDNwbGl6WnMzeXJwS2pXclZxWnRXcVZkNWRNQnFCbWZRVGVnRUFBS0trbG1lZEl4U0N3cFZyMkNmY0I2T0dxRkJMNzBrTTl4SjI1YjVEaHc1dTFqOEFBQUF5ZEliUWhnMGJ2THRBMU0vRENiVWhmZUM5QnBMRXRod0plN3F1K3UxRGZ1d0VBQUNRT2lFUE9kVU1UVGZOa1hBZjNFdmVheUFyVnF4dy9WVkpFL0lqSTlPa1NSUHZDZ0FBQU5wRXE5Ym5rT0ZlbVg2aGY0RmczdmRlQTVzOGViSjNsUnhoVjkwYk5HZ1E5dlExQUFDQTFOQVVSYlVzcXpVbkJHWDZNZjRGZ3RsaWEwbm1NcGdwVTZaNFY4a1Jkak5zM2JwMVRiMTY5Ync3QUFBQXJGMjcxcnNLVE5OeUZ1dUNjQjlPcUtYM3FWT25lbGZKc0huejVsREhJbXZGZnYvOTl6ZDE2dFR4bmdBQUFKUTI1YVBseTVkN2Q0RnBOMjV0WFJEdXczbkxldzFFQnhZc1dSSnE4YitnMXExYjUxMEZRMHNPQUFEQUZ5MVlzTURVcUZIRHV3dEU3dzRhNklKd0gwN293NnlTdEhxdlhqQnQrQWhLWDdSaFZ2NEJBQURTU0F1K0lUT1NXbkk0b1RZQ2VwZmtkaVlIbGFTK2U1MVFHK0pZWlBkRlM3Z0hBQUQ0TCtVcmRVZG9ZMjBJYWdWeEJ3a1I3c01iNGIwR2tyU0pPZm9DREVwdkRFSis1QVFBQUpBcXk1WXRjNlBHUXc0dDBYeDExejlOdUEvdlJlODFrRzNidHBrNWMrWjRkL0ZXdlhyMVVDdjNPM2Z1Wk9VZUFBQWdpM0tnTWxLSWpLVWwvejN2REFqMzRRMzNYZ05MeXVwOXJWcTEzQmRmVVBwcjY5ZXY3OTBCQUFCZzBhSkZac01HRGJzSmJJZXR6WmxMd24wVTlGOWpRdVl5bUtUMDNXdUVaWmgrTUgxS3dSaE1BQUNBREszV3IxbXp4cXhZc2NKN0VvaDY3ZWRtTGduM1VRazFFbE1UY3padDJ1VGR4WmNPb0FvVDd0VkxwbWs3WVEvQ0FnQUFTQVBsdi9YcjE1c3RXM1EyYW1CcXE1aVl1U1RjUitWOTd6VVFiVklkTjI2Y2R4ZHZZWU81V252Q2JNb0ZBQUJJQzUxTXExWDdrTmxJYlRuek01ZUUrNmk4WjB2L1lnTWJNMmFNZHhWdk9tRTJETzBHRDdNcEZ3QUFJQzEwK3YvczJiTzl1MEFVcXRiWTJ2UHVnSEFmRFFYNzBabkxZQ1pPbkdoMjdkcmwzY1ZYMkJObXRXR0VsWHNBQUFEanN0LzA2ZE85dTBBVTdtZG1Mak1JOTlFSk5SSlRwNzhxNE1kZHpabzF2YXRnRk83cHVRY0FBS1ZPMlU5dE9hcVE5bW9QSjl4SDV3WHZOYkNQUHZySXU0cXYyclZyZTFmQnNISVBBQUNRMlhNNVk4YU1zSXVlT2tEb2pjeGxCdUUrT2d0c1RjcGNCak5od29UWXIycHJRMndZK3QrbnFUc0FBQUNsVEllRFJqQlFaYU10amNMY2czQWZyVmU4MTBDMHFVSmpNZU1zYk0vOXhvMGJPYVVXQUFDVVBLM2NmL0xKSjJHSGxYeHFhNisyQ3NKOXRKNzFYZ01iTzNhc2R4VlBZUStoV3JkdW5YY0ZBQUJRdXBZc1dlSVdQVU5PRWZ6QTFyYk1aUWJoUGxwcXkxbVN1UXhHSXpIajNKclRzR0ZEN3lxWUNEYU5BQUFBSk43NDhlUGRhNGh3cjhDbytmYUUrendMdGJGVzRWZTk5M0hWdUhGajd5b1lWdTRCQUVDcFU2RC8rT09QWFV0MkNPcTMzMkJycjBrbGhQdm9oUnFKS2UrKys2NTNGVDlObXpiMXJvSlp0V3FWV2JseXBYY0hBQUJRZXRhc1dXUG16SmxqTm0zYTVEMEpaSVd0eFpuTC95TGNSMCtuMWVwZFZHQnF6UW41SHp0dm1qZHY3bDBGbzVYN0pCeldCUUFBa0MvVHBrMHp5NWN2TjU5OTlwbjNKSkRsdG1aa0x2K0xjQjg5L1ZjS05UVkh1NmZmZWVjZDd5NWVXclZxRldwWE40ZFlBUUNBVXFhY04zUG1URE4vdnRybEExUGVYR1RyQy8zT2hQdjhTRzFyVHIxNjlVS05zbFNQbVQ2VjRDQXJBQUJRaWpRaFI4RStaSnV5TnRHT3lWenVqWENmSDFxNVg1TzVER2JSb2tYdVhWMGNWYXRXemJzS1JwdUdDZmNBQUtBVUxWNjgyRXlmUGoxc0o0UDZ0L2M2bWRaSHVNK1BIYmFleUZ3R04yellNTzhxWHNJZVpEVjM3bHl6ZmZ0Mjd3NEFBS0EwYUhGVEsvWVRKMDcwbmdTaTJabnpiQzEwZDJVUTd2UG5FZTgxc0pFalI4WXlCTmVxVmN1N0NtYnAwcVdFZXdBQVVIS1VmOVNTbzlYN0VMVGsvMUxtOG9zSTkva3oxZGE0ekdVd08zYnNNQjk5OUpGM0Z4OWhEN0xTTzlhdFc3ZDZkd0FBQUtWQitlZTk5elJZTVpUZHRvWm1McitJY0o5Zm9WZnYzM3p6VGU4cVBqVHJQc3pFSEszY2MxSXRBQUFvTlZxNGpTRGNMN0JWYmt1T0VPN3pTMzMzNnI4UGJOYXNXZTZRZ3pocDFLaFI2SEdZMmlrT0FBQlFTaVpQbnV6bTI0ZjB0SzBLZ3hqaFByKzIySG9xY3huY2M4ODk1MTNGUTh1V0xVMzE2dFc5dTl4cDFWNG4xUUlBQUpTU0YxNTRJZXhnRXZYYlYzb1lFdUUrLy83dXZRYW1FMnNqZUpjWEdhM2MxNnhaMDd2TG5lYmN4K2wvRHdBQVFMNHAveWpUaFJ5QnFaMjRPcmlxd3BuaWhQdjhVMlBWRjQ0R3pvWEdKcjMyMm12ZVhmRXAzTmVwVThlN3k5M216WnZkSEg4QUFJQlNNWHo0OENnTzhoeHRhM1htc255RSs4SUl2WHF2amJYNmdvZ0RUY3RwM0xpeGQ1ZTdMVnUybUU4KytjUzdBd0FBU0xmUFB2dk12UGppaTJiZE9pMjZCNllsLzBtMkNQY3hNTVRXWjVuTFlIYnYzaDJiMVh1dDJqZHAwc1M3eTUwK2pscXdZSUZac3liVUliNEFBQUNKTUduU0pEY2tKZVFvY0FVbkhWNVY2ZEkvNGI0d1Z0aXFjQjVwVlduMWZ0ZXVYZDVkOGRTdVhkdDA3ZHJWdTh2ZDU1OS9ibGF2WG0ybVRadm1QUUVBQUVpdmQ5NTV4OHlicDF3ZWlrWmdhdVcrVW9UN3d2bU45eHFZUmtqcWk2UFlOQ25uaUNPTzhPNkNVZC85MUtrNjV3c0FBQ0M5Rk9vblRKamdEdkVNUWF2MUN2ZHozVjBsQ1BlRm8zZGF3ektYd2FsZkt3NmFOV3RtRGpqZ0FPOHVHSzNjYjl1Mnpic0RBQUJJSHdYN2NlUEdlWGVCYWJ6Nmg3YjJ1UnVYY0Y5WW9WZnZWNnhZNGNZb3hVR0RCZzI4cTJBKy9mUlRzMzc5ZXU4T0FBQWdYWlJ6bEhmbXp0M25ndnUrcU1YN1g1bkx5aEh1QzBzcjkvdnNsZHFYWjU1NXhyc3FydWJObTN0WHdjeWVQWnZEckFBQVFHcXBKZWYxMTEvMzdnTGJiZXR0VzFVS1RZVDd3dnVkOXhxWTN2Mk5HalhLdXl1ZTFxMWJtLzMzRC80bHBJT3NORFVuNUdFT0FBQUFzYk45KzNhM2FqOTZ0RWJUaDdMRDFsOHlsL3RHdUMrOHAyeHBRMFFvanovK2VORkRjZHUyYlVNZG9heXBPZXE3MzdoeG8vY0VBQUFnSFpSdm5uLytlZTh1c005dHFSLzdVM2RYQllUN3d0TzgrM3N6bDhHcDkvNk5OOTd3N29xalhidDJwbWJObXQ1ZE1Qb1Vnbm4zQUFBZ1RYUUtyVG9VSXNocUN2Yy96bHhXRGVHK09CNnd0U0Z6R2R6UW9VUGRSejdGMHJGalI5T29VU1B2TGhpMTVTeGR1dFM3QXdBQVNENTFKenoyMkdObXh3NTExSVNpNGZnVE01ZFZRN2d2RHYyWC9uUG1NampOdlMvbWFFeE55Mm5UcG8xM0Y0eUNmUVE3eUFFQUFHSkRNKzBqR29EeUorKzF5Z2ozeFhPL3JkQnY1eFR1aXpWT1VwdHBPM1RvNEE2MUNtcnQycldFZXdBQWtDcERoZ3d4bXpadDh1NENXMmRMRTFSMnVic3FJdHdYaithVnFqMG5GSDNjODY5L1ZXbnNhVjVvVTIyOWV2Vzh1OXpwcEZydEpDOW1leEVBQUVCVVpzNmM2UlpmZFZDbjJuTkMwRzdjaFpuTHFpUGNGNWNPdFFxOWV2LzIyMis3VFJ2RjBLcFZLMWRCN2Q2OTIvMGhtRHAxcXZjRUFBQWdtUlRtbjNycUtUZmZQdVJVUXgzaHJ4TnBjNTQ2UXJndkxxM2VoejYxVmp1eU5ScXpHSm8wYVdKNjlPamgzUVdqZzZ3KytPQUQ3dzRBQUNDWnhvMGJaOTU5OTkwb1dxYW4yeHFmdWN3TjRiNzQvbWdyOUN6SWp6NzZ5SzJBRjFydDJyWE5NY2NjNDkwRm85YWNZY04wZUM4QUFFQXlxUTNubFZkZWNkMElJVmZ0TlRaZEoxOU5jWGM1SXR3WG4wWmkzcDI1REdmdzRNSGVWV0hwcE5wYXRXcDVkN243N0xQUHpJZ1JJOXptV2dBQWdDU2FOR21TNjBTSVlOVitwYTJYTXBlNUk5ekhnOFppenNsY0JqZHIxaXpYZjE5b21wWVRkaVRtMXExYnpmRGh3ODJ1WFRsdENBY0FBQ2c2QmZwMzNubkhCWHkxUzRlZ3YxaW4wYjduN2dJZzNNZURQbjc1ZWVZeW5JaEdMK1hzeUNPUE5QdnR0NTkzRjR4YWN6UzdId0FBSUNtMGlWYVQvOTU4ODgwb1Z1MDMyM3JFVnVEVlRzSjlmRHhoYTFMbU1qajFleFdqUGVmNDQ0ODMxYXBWOCs2Q0dUVnFGS2ZWQWdDQVJGR2dWenZPaEFrVHZDZUJhZFZlZjVOWDNWMUFoUHQ0dWQxN0RlWDk5OTh2K0doSjlkMDNidHpZdXd0R2JVWDY1NDdncUdZQUFJQzgwOFpaNVpkbm4zM1dMYkNHcEVOL2ZtVnJpN3NMaUhBZkx4b1pFN2pIS3RzRER6d1FkcWQyempwMTZ1Uk9yUTFLTSsvSGpCbFR0Sm45QUFBQXVkaXlaWXZiN3hqQnFyMU91M3JYMXZ2dUxnVENmZnpjNXIyR292WVd2WXNzcE83ZHU1dWFOV3Q2ZDhGTW5qelp6SjA3MTdzREFBQ0lKMjJjWGJod29YbmlpU2ZDYnFJVkxmdi8xRmJveVNLRSsvaFIzLzFUbWN0d2hnNGRXdEJWOE42OWU0ZHV6Wms5ZTdacnpRbDVYRE1BQUVCZWJkKyszUjBpcXJhY0NEeHRhMkxtTWh6Q2ZUejl3RmJveG5PMXVmenRiMy96N3ZLdmJkdTJwa09IRHQ1ZE1HdldySEZqcE5hdFcrYzlBUUFBaUorUkkwZWFSeDU1SlBTMFFFdWpBdithdVF6dkFPOFY4YUwveUdxWUgrVHVRbGl4WW9VNTZLQ0RUUHYyN2IwbithTXZibzJ5bkRGamhudGpFWVJXN0d2VXFPRStCUWo3UmdFQUFDQWZsSzl1dnZsbU0zLysvTEF0T1dwVjBKakRvYllpbVNqQ3luMTgvZFpXSkNOdk5CcFRoMFFWUXRldVhVTWZhTFZnd1FLM09ZWFdIQUFBRURkYXdMejMzbnZOdEduVDNDbjdJYTJ5cFUyU2tSMzBRN2lQTDMyMVhKKzVERWVyNmYvODV6Kzl1L3hxMTY2ZDZkZXZuM2NYek5xMWE4MWJiNzFsRmk5ZTdEMEJBQUNJQjQwY2YrNjU1OHpHalJ1OUo0RnB5ZjlGVzlQY1hVUUk5L0UyMnRiRG1jdHdYbnZ0TmZQeHh4OTdkL2xUdlhwMWMraWhoNXBhdFdwNVQzS25FWjV6NXN3eHI3Lyt1dmNFQUFDZytMUTM4UDc3NzNkZEJoRllZa3ZoWHF2M2tTSGN4NThPdGxxVHVRem52dnZ1aStKWTVIMXExYXFWNmRLbGkzY1hqTjROYXdmNnJsMmhKMElCQUFDRXB0NzZoeDU2eUoyb0gwRSswZDdLdDIyTmRIY1JJdHpIbjNxd0lwbDl2M256Wmhmdzg2MWV2WHJtdE5OTzgrNkNVYi85MkxGanpZY2ZmaGpGN0ZnQUFJQlFoZzhmYmw1ODhVV3phbFVrQyszcVBkYjR5MDN1TGtLRSsyUjR3cFpPcncxdDRzU0o1dVdYWC9idThrZDk5MkVQdE5LR0ZSME1FVUZQR3dBQVFHQ0xGaTF5NXdkcDRURUNHaW1vWEJkSnRpdUxjSjhjTjltS1pFU1MybDEwb2xvK1ZhdFd6Unh4eEJHaFo3Kys4Y1liN25BSTllRURBQUFVbWc2cjBxQ1BDRS8rbjIzcmQ3YnkwcHJBblB2azBLbE9Tc29udTdzUTFPYWlXZlFubjN5eU9lQ0EvSDBKTkdyVXlMWFZoQmtUcFZZaWpkYnMwYU9IcVZ1M3J2Y1VBQUNnTU1hUEgyOSs5YXRmdVdFZkVkaHM2eTViYjdxN1BHRGxQbGwrYld0RzVqSWM3ZkxXQ240K0taRHI4S3l3cS9ldnZQS0ttVDFiYjNJQkFBQUtaOW15WmVicHA1OTJiYzBSbkwramxmcDNiRDNvN3ZLRWxmdGswUmZGWkZ0ZmMzY2hxZDFGaDA1cHVrMithRGY1cDU5K0dtcjFYblA2RHo3NFlOT3JWNi9RZmZ3QUFBQlZzV1hMRnZQU1N5K1pQL3poRDJiVHBrajJ2YTYwZFlxdFNOcXNLMEs0VDU1RnRscmE2dXZ1UXRMcGFnTUhEalExYXRUd25rU3JhZE9tWnZMa3lXYmRPblVWQmFPTnRmcm42OTY5dTJuYnRxMzNGQUFBSUQrVVBVYU9IR251dlBOT00zLytmTzlwS0ZxZ3ZjeldKKzR1andqM3lmUytyUXR0TlhWM0lXaVRpRDV5T3Y3NDQ3MG4wZEpoVmpyd1llN2N1YUUyeGVvZHMzcnZCd3dZRUxyTkJ3QUFvQ0pxdjFGM3c0OS8vR00zSFNlQ2RoejVwNjNmWkM3emkzQ2ZURG81WVl3dHRlZUUzamV4ZE9sU041dGVMVHI1b0ZWMzljeUhPVUJyeDQ0ZHJpV25UNTgrcGxtelp0NVRBQUNBYUtuYjRHYy8rNW5iOHhmUnRENjE0NXh0YTd1N3l6UENmWEl0czZVNXFZUGNYVWlUSmsweVBYdjJOTTJiTi9lZVJFZHZITFI2cjNmQlFkLzk2cS9UNnIwK0NWQWJFUUFBUU5TMmJkdG03ci8vZmpONDhHQjNIY0dxdmQ0ZGZNUFdlRnVSZkFTd0w0VDdaQnR0UzZNeDI3bTdFUFRGcTUzZ3h4MTNuS2xkdTdiM05Cb2F0NmxXR28zZjFHakxvTlJDdEhYclZuUDAwVWViRmkxYWVFOEJBQURDVTUvOWM4ODlaKzY1NXg1M0NtMUU3VGd2MmZxcnJjaFBvcTBJNFQ3WnREbmpYVnZYMkFvOVJrYXRMNXBzbzVYeHFPZmYxNmxUeDRWei9mMkQwaDh5dlRuUTVKMHp6enpUZXdvQUFCQ096Z0FhTldxVXVldXV1Nkk4UEZOZEZqKzNOZEZXUVZidGhYQ2ZmQnRzTGJXbERiYWhxUzkrN2RxMWJuVThTdFdyVjNjQlgzOXdOQjR6S0wyclhyeDRzVG4yMkdQZEJsc0FBSUN3Rk9oMVVKVnlpaFk3STZEVzZiL1plc3pXVGowb0ZNSjlPa3l4MWMxV0wzY1hrZzY0eXNjR1cvWExyMXk1TXRSSUthM2VxelZIZjUvTEx0TkVLUUFBZ09CV3IxN3RadGxycHYzR2pSdTlwNkZvbFY2RFQ3UnFyOVg3Z3VLRTJ2UzR5ZGFTekdWNDJrZ3lkZXBVN3k0YW1uWno4Y1VYbS8zM0QvZGxwNEQvK3V1dm13OCsrQ0NxajgwQUFFQUpVc3Z3RTA4ODRYcnQxYmtRa1JXMi9teHJscnNyTU1KOWVxZzk1eXBid1krQ3phTGVzOS85N25kdVEwbVVkQnB1NTg2ZHZidmcxSGYveTEvKzBxM2dBd0FBNUVwWlIrTXUvLzczdjV0RmkzUkdhQ1MyMmhwczYyVmIyaHRaY0xUbHBNc0NXL1Z0RFhCM0lhbm5US3YzSjU1NG9qbnd3QU85cCtGcFRyMTYydlNIS294NTgrYTU4WjE2czVDdkUzWUJBRUE2dmZmZWUrWi8vL2QvemJoeDQ3d25vYW5QWHROeDdyWVYyY2NBdVNMY3A0K201NXhycTZXN0MybkRoZzF1Um4zLy92MjlKK0UxYnR6WVRKczJ6Zlc0aGFXUDBQcjI3ZXMrRWVEa1dnQUFzQzlxNzlVaTR3OSs4QVAzR2hHdFdFNnc5VU5iTS9XZ1dBajM2YU12cnZkdFhXa3I5SGhNV2Jod29ldVg3OVpOZTNiRDA1aE5yZDdyblhLWXlUbXliTmt5MDY1ZE85TzllM2MzalFjQUFLQWk2aHBRL3Jqampqdk1oeDkrNkQyTmhQWTkzbTVyaExzcklzSjlPcTJ4TmRuV3BiWWkyVmZ4eVNlZm1MWnQyN3FLUXFOR2pWd3dYN0prU2FqMkhMMzcxakhSYXMxUmhkMnNDd0FBMGtsRE9KUm5ici85ZGhmc2xTRWlvaE02ZjJuckgrNnV5QWozNlRYSGxyNXFkWUp0YVBvRE1HSENCTk9qUncrMzZoNldWdStiTm0xcXBreVpFdXJVV3RHbVg2M2FIM3Jvb2E3bEJ3QUFJSnNXRW1mT25HbHV1KzAyTTNMa1NEZVlJeUw2R3oxaTYwNTNGd09FKzNUVFIwT2FmZC9EM1lXa1B3anFUVHZxcUtOTXc0WU52YWZCMWE5ZjMvWDBhMk5zbUpHV2V1T2hmUUYxNjlZMXZYdjNabk10QUFEWVE4Ris3dHk1THRpUEdERWlkRXR3RmkyaWZtRHJDbHRGbVl4VEhzSjkrcjF1U3h0c203dTdrQlR3UjQ4ZTdUYXhLcHlIb1JhYTVzMmJ1NTcrc0NNdGRlaUUzaWkwYjkvZUhiN0Y1bG9BQUNCejVzd3gzLy8rOTgxYmI3MWxkdTZNOUxEWWhiYStaRXZqTDJPRGNKOStlbnVxZ0s4TnRyWDFJQ3lOeUp3NGNhSTU5dGhqM2FtelllZ2szTjI3ZDd2cE9Yb05ZLzM2OVM3Z0gzbmtrYTdsQndBQWxEYTE0dHg5OTkzdTlObUlnLzBtVytmWTBySDdrVFh2UjRGd1h4cDB3TlZFVzVmYmltVEg2Wll0Vzl4dWM4M0FyMTY5dXZjMEdQWEphMVBzL1BuNjh4R2NQbFhRYUV5OTZvMUgySDh1QUFDUVhMTm56M1lIY2c0ZE90UnMzYm8xeWcyMFdvMzhwcTFodGlKcjNvOEs0YjUwekxPMTNkYXA3aTRDMmdnN2ZmcDBNMkRBZ0ZDSFhHbjF2MEdEQm1iOCtQSHVVNEV3OU5lcnphZERodzV1Z3kwQUFDZzlNMmJNTUgvNXkxL01rMDgrYVRadDJoUmxzTmZmNkQ1YmY3TzFSUS9paG5CZlduUlNRMmRidmQxZEJMU1JWV0ZhSytWaHhsQnFNNnhvUkZWWTI3WnRNd3NXTERESEhYZGNKSk45QUFCQU11alRlNTJ1LytjLy85a0ZlN1hzUmtqQmZxaXRIOW5TMlBGWUl0eVhucmR0YWZXK3RidUxnT2JWTDE2ODJBWDhvS3BWcTJZNmR1em9qb0xldmwwZk1BU25kK2Y2WjlKSGNHZWNjWWI3ZXdNQWdIUlRULzJrU1pQTXIzLzlhL1A4ODgrN1lSc1IwalNjOTJ6OVAxdUw5Q0N1Q1BlbHg5OWdxLzc3ekhKNUJIUVlsY0wwRVVjYzRUM0puVnA3MUo0elpzd1k3MGs0NnVGdjNicTFPNzJXZ0E4QVFIcHBLSWZtMS8vODV6OTNVM0hDTGhTV29SWDdqMnpkYW11NmR4OWJoUHZTcEIzZTQyMXBnazVrUjdyT21qWEw5YnozNmRQSGU1STc5Y3BybzY0MjJJYWxkL0FhZjlXdlh6L1RzbVZMZDNBV0FBQklGODJ4Zi9IRkY4MVBmdklUZHg1UG1MTnp5cUVWZXcwbFViQ2Y0TjNIR21tbmRDMndwWGVmRjlxS0xPQnI1RlRZRmZ5MmJkdWFqei8rT0pLUlZacWVvNDIvbXN2UDZiVUFBS1NMcHZjTkhqelkvUFNuUDNXYmFDT21JRC9OMXYvWTByN0YyQWQ3SWR5WHRrOXRyYloxdHJ1TGlGYndOVy8rOE1NUEQ3VEpWcHRnOVFtQVJsaUZmZmV0L251MURDblk2M0NyT25YcWVMOENBQUNTYlBueTVlWlBmL3FUdWV1dXU4eXFWYXU4cDVGUjY0M2VMZnpRMXB2ZWZTSVE3akhPbHBiSUI3bTdpT2lZWjIyeTdkKy9mNkNBZi9EQkI3dVdHdjFoRFR1K1NwOEE2SituVmF0V0x1QXoveDRBZ0dUVFFxSkMvZC8rOWpmWE1SQXhCWTg1dG41aTZ5WHZQakVJOTVDUnRocmE2dS91SXFJVmN3Vjh0ZWprT2dkZnY3OTU4K2J1SXpiTnB3MUxyVG56NXMwekxWcTBNRDE3OWpUNzdiZWY5eXNBQUNBcHRIRjJ3b1FKcmczbmxWZGVjVzA1RVZPUTF6UWNCZnQvZWZlSlFyaUhUeDg1UlRvRFh4VHdQLzMwMDBBSFhhazlSNXRrdElLL2E1ZUcvQVNuMVg5dDBsMjVjcVVMK0owN2R5YmdBd0NRSUpxQU0yellNTGRpLy83NzcrZGp4VjVXMnZxZXJYKzZ1d1FpM0NQYnk3WjZlQlVaSFhTbGdLOFduVnhiWXRSS28xQythTkVpRi9URDBGK3YrZmZhWkt2eG1KcWdROEFIQUNEZS9KL2ZqejMybVBuclgvOXFSbzhlSGNuUWpYS3N0YVU1OXY5d2R3bEZ1RWMycFdmTndEL0JWanM5aUlvQ3Z1YlhIM1BNTWFaV3JWcmUwMzJyVWFPR1c4RmZ1blNwVzNVUFM5OGcxQ3EwZXZWcWMvVFJSNXVHRGRXTkJBQUE0a2duem1xQzNrTVBQV1FlZmZSUk0yM2F0TkNMZlJYUXh3QmZzNlZXbkVRajNLTXM5Yjg4WSt0Y1c4MzFJQ3JxZTljTSsxd0RmdjM2OWQyVUc0M1ozTFp0bS9jME9FM2dVYnVRVnZEVkxsUzdkbTN2VndBQVFGeG9ZZkNkZDk0eGYvempIODJUVHo3cEp2SGxpWUw5RmJaZXNaV0ljWmVWSWR5alBBcjR6OXZTaU15bWVoQVZCWHoxeVdudXZFSjdWYWgxUnFNc05YVkg3VDFSdkdQWHgza0xGeTUwUVYvL0xQcUVBQUFBRkorL0NQZjQ0NCs3RTJmSGp4OGY5Y0ZVMmRRV2NKR3RZYlkrMDRPa0k5eWpJdHArcmsyMlg3WlZWdytpb2huMkgzMzBrZHZVcW9rNFZhSE51Tm9JcThrNTgrZlA5NTZHbzQwNVU2Wk1NYTFidDNZVGRLcFZxK2I5Q2dBQUtBYUZlUDFzMW1tekR6LzhzRnU5RHpzU3V4S1RiRjFnYTZ5dHhLL1krd2ozcU13Nlc2L2F1dFJXcEwwckN2aGF3YTlidDY2YlBWOFZhdVZwMDZhTiswTWZ4WGhNMFFxKzNtZ2NldWloN3ArRERiWUFBQlNIZ3Ywamp6eGlicm5sRnJkcE51eWt2RW9veUd1SXlMVzJadWxCbWhEdXNTOXJiT2tQd01XMklsM0IxenR4emFyVlFWVnFqYW5LWVZmMTZ0VnpJVnc5ZUZHOWsxY2YvOFNKRTgxaGh4MW0yclp0UzhBSEFLREF0RkgyMWx0dk5YLys4NThqT2NDeUVqdHNQV3JyRGx1YVo1ODZoSHRVaFFLK1Z2RFZneC81ZUprRkN4YVlTWk1tdVlCZmxZMjI2ci9YNzlOZkV4Vjk3S2NlZkxVS2FVVG1BUWZ3UndNQWdIeGJ2MzY5Mnl6N294Lzl5THo3N3J2dWsvMDgwbzdjQjJ6OXl0WXlQVWdqRWd5cVNnRmY0NkVpMzJRcm1seWpOaDNObjIvYWROOS8rL2J0Mjd0dkNIcGpFQlgxOHE5WXNjTE4xbGNmZnE2SGJnRUFnS3JSeWJMNkZQNy8vdS8vekpBaFE5d3A4aHA3bVVmYU9Qc0hXMysxdFZ3UDBvcHdqMXhvaysyenRrNjNGZW1ZVFBINzhKczBhV0k2ZHV6b1BTMmZOci8yNmRQSFRKMDYxYjB4aUlxK3VXaUh2c0w5UVFjZFJNQUhBQ0JDT2xWV0xibURCdzkyL2ZValI0NTBQOGZ6T0ExSC9UMExiZjNhMW1CYldxeE1OY0k5Y3FXQS83aXR5QSs2RW8yNUhEdDJyQnVacWZCZVdSKytXbWQwRUpVT3Q0aHFnNjE2L0hUSWxVSytKdm0wYTljdTUxTjFBUURBM3JRNWRzNmNPZWI1NTU5M1UzQmVmdmxsZDUrbmsyWjkyamc3M2RZdmJTbTdhSjU5NmhIdUVZUi8wTlVBV3gzMElHcXpaODkybTJ2Mk5ZTmV3ZnZnZ3c5MnYxY2Y4VVhCUCtaYUFiOUJnd2FtVTZkT0JId0FBQUxRaXJ4T21OY0t2ZHB2VkpwYkg4V2hsUHVnSHAveHRuNW82emxiZWZ0b0lHNEk5d2hLQWY4ZnRucDRGYm5WcTFlYkR6LzgwUFRxMWNzMGF0VEllL3BGYXVQUlNFMnRBRVQxelVJcitOcXRQM2Z1WFBmM1B1U1FRMmpSQVFBZ0IycTMxZUtiMm05Kzk3dmZtZUhEaDBmMlNmcythRmZ1KzdadXRqVktEMG9KNFI1aDZPTXVuV1NidDRDdnNQNzIyMis3c0szTnRoVzE2WFRvME1IOUhxMjJSL1VSbjFidzFRYzRjK2JNUFQzK1RORUJBR0RmTlBUaTBVY2ZkVk53WG5qaEJYZGZJQnR0L2RIV0RiWlc2RUdwSWFrZ0xBVjh0ZWhvUkdaL1BZaWFRcnZlK2FzWFh3Ry9ZY1B5cDNHcWZVWTlmVkh1dUZmQTF6ZWtHVE5tdUJXSS92MzdFL0FCQUtqQXhvMGJ6Yi8rOVM5ejdiWFhtaWVlZU1KOUNsOUFuOWc2eDlaVHRsSno0bXl1U0NtSXlwdTI4aGJ3WmNPR0RlNGpQYlhIZE9uUzVRdXIrQXJkT3NGV08vRTFJbFBCUEFyNisraGp4Rm16WnBudDI3ZTdmUUMwNkFBQWtLRysrazgvL2RTMTM5eHh4eDNtc2NjZU04dVhGM1RhNUc1Ym1sMy9aVnNhZVZuU0NQZUlrZ0srNWxLZWFtdmZ4ODBHb0tBOWVmSmtkNENWVnZIcjE2L3YvVXFHRHJmU0dFdXR0aTlkdXRTdCtrZEJmeDhGZkkzZTFLY0RPczIyS2dkdUFRQ1FWbHFsMXdqckJ4OTgwUHpsTDM4eGI3NzVwanN6Umo4bkMyaWFyZE5zYWJVZUZ1RWVVUnRyNndOYm1vVmZWdy95UWIzd3c0WU5LM2NWdjE2OWV1NlFLNDIwMUE3OUtPbFRnWWtUSjVwMTY5YVpidDI2dVdrNisrMjNuL2VyQUFDa20xYnBkYUw3aUJFanpPT1BQKzVPbDMzampUZmNBQXBOcll0cVVhMEt0R2wyaUszL1oydXFIaUNEY0k5ODBMR3hPdXhxb0syV2VwQVAyYXY0V2ttdlU2ZU85eXYyWFVYZHVxWno1ODV1QlNIS1E2NUVHM1lWOExYUlZtTTRkYUp0WmZQNEFRQklPcldsNmhQeDBhTkh1MUN2emJLdnZQS0thNFBOODZ6NnN2VHVZYjZ0MzlqNmszZU5MSVI3NU1zR1d4cVZxWU91ZXV0QnZ2aXIrR3FUNmRxMXEzdW0xWFN0cXV0ZUt3eHIxa1I3SUozZVdHZ1d2NzdKdFd6WjBuMVN3Q3g4QUVBYXFkWDE5ZGRmTi9mZWU2KzU1NTU3ekFjZmZPQStHWTlxYjFzT3RGci9vYTI3YkQxdGE1MHRsRUc0Uno2cDZVNmpNblZ3aEU2MHpkdnl0cWJqNkRocjljUjM3Tmh4ejF4OFArQXZXYkxFemEyUG1xWUFqQm8xeW8zSzFHbTIrc1NBTmgwQVFOTHQzcjNiL1V6VmFiTC84ei8vNDE0LytlUVROem11Q0xSYXI0L2hOWjN2WjdiVS9sdlFqd3VTaEJTQ1FsRVAvcE8yeXA5akdiR1RUanJKWEhycHBhWjU4K2J1WHYzMytnaFI3VFQ1MExoeFkvT1ZyM3pGZlAzclh6ZUhIbm9vcS9nQWdFUlJMNzNhYnFaTW1lSVdyZFJUcnpIUTJtTld3RDc2OGlqRXo3VDFvQzJ0MWtmN1VYd0tFZTVSU04xc2FTVmZyM21uemJabm5ubW11ZVNTUzF3L3ZzWnk2ZGpyanovK09DL2ZxR3JYcnUzZVZIenptOTgwSjU1NDRsNTdBQUFBaUp2Tm16ZTdRSzhRci8xckN2WTY3VjAvTHpVSlI1K0tGekhZNi8reFBuTFhGSno3Yk0yMWhTb2czS1BRTkVGSEsvaG51N3NDVU9oV3dGZlExMDUramV2U0NuNCtlZ1hWbnFQTnZUZmNjSU81OE1JTFRkT21UYjFmQVFDZ3VCVFVkZks3OXFycEUyME5wZENDbDE1MUFLVENmaEg2Nk11ejNkWkx0clJwTmo4ZnVhY1k0UjdGOGt0YlA4NWNGa2F6WnMxY3E4NVJSeDFsN3IvL2ZqTnUzRGozTVdUVTFIUGZvVU1IOTRiaXV1dXVjNk02QVFBb0pvVjJIY2FvQVJTYVRhOVFyMVg3cUU1MGo0aitZZDZ6ZFljdFFuMUFoSHNVMDhXMi9tYXJJSDM0UGdYdks2NjR3bjF6MDdTYmZIMWpVeCsrMm5SdXVlVVdjOElKSjdEUkZnQ1Fkd3J4T25SUmd5UTBEbG9ueDZyZFJrTW5kRi9nc1pWVnBaVTJ6YXEvMjVaR2FjZmk0NE9rSW0yZzJOclkrcXV0Z3JYcCtIcjA2T0dtMjZqUE1GK242ZFdzV2ROTjBibjY2cXZkWnRzbVRacTR2UUFBQUlTaEZodjk3RktRMTZiWEZTdFdtRVdMRnJuRHBEU3EyVC9JVWIrbWxsU0YraUp2akMyUC9vRjBOczVnVzBOdHpiTlYwT050MDRod2o3aTQwZFk5dHZKMnFtMUZ0TUt1YjQ3NVdzSFhBVmVhbm5QeXlTZWJXMis5MWZUdDIzZlBxRTRBQUhLbFVMOXMyVEkzbWxMOThqcFVVV2U2S05CcjdMUDY2bU5Pb1Y1VGI0YmJldHpXQ0Z0YmJDRUNoSHZFU1FkYmo5clN5YllGcDdhWmZLMXErSDl2SFhiMXRhOTl6Vng4OGNYdWROc2FOV3A0dndNQVVLbzBVMTd0Tk5vSHBsZk5rdCt3WVlOYmVOSWhqSnBlbzFlZEJxc1FyNGsyYXJFcDBzejVNUFJEZHF1dFNiWjAwT1Z6dHFJL2hLYkVFZTRSUjkreTlTdGJCVi9GTHdSTjd6bjIyR1BOTjc3eERUTmd3QURUcWxVcjcxY0FBS1ZFSy9CcXA5RkdWNTBDcTBDdjB1cTdOcnNxMEt1dHhtK3QwWXE4QW4wK2hrSGttWHJvOVU1RTR5dzFCZWRQdGdqMWVVSzRSMXhwRlY4ZjFSM243bEpHclRvSzlWZGRkWlU1OTl4elRmLysvZGx3Q3dBSnBiWk9CWENObVBURCtMNnU5YXJBWGdMVVF6L2FsbjhJVmF6Rzg2UVJhUUp4VnMzV3JiWTBOck9tSHFTTmV2R1BQLzU0YzlGRkY3a1RidFgvRHdBb0RyWEVWQmJHeXo3enI5VStneTlZWitzWld6KzF4U3A5QVJIdWtRUTYwVmE5K1AzZFhjcG94YjVseTVibXROTk9jeE4xampzdWxSOVdBRUJCVlJiR0szcW1saGlFc3R2V3A3YnV0NlZnejcvUUlpRGNJeWxLWWhYLzBFTVBkWDM0TjkxMGt6bmtrRU5jK3c0QWxETDFvbGNVeGl1N1JzRm9rNnhDL0ZoYkw5Z2FhV3VPcmNUdDlrMEx3ajJTcHJNdGJiYlZBVmlwMUtCQkE5TzhlWE56NFlVWG1wdHZ2dG10NmxlclZvMmVmQUNKdG5IanhyMENlRlVDdWphVUlyYlVPNi8vUUJOc3ZXYnJiVnVhVTA5UGZaR1JGcEJVYXRGUnlDL0syTXg4VTVEWFZCM053Ly8ydDc5dExyamdBaGZ5OVl6VmZBREZ0SG56NW4wRzgvS2VKWERDQzc1SXEvVGFJTHZXMWhoYk9uanFEVnQ4VkJJamhIc2szZm0yMUtyVHk5MmxqRDhmdjNmdjNxNGYvNFFUVGpDZE9uVXk5ZXZYOTM0SEFBU3pkZXZXU3NONFJkZWF5WTZTNU0rblYrdk5zN2JtMjBJTUVlNlJCdXJIdjlLV1Z2SmI2a0VhSFhqZ2dXNWtwaWJyYU5PdGV2THIxazNsVVFBQWNxRFo1MlVEZUZYQytzNmRPNzIvQTFBaDljMVB0dld3TFIwNHhRcDlBaER1a1NiYWFQdGRXLy9QVmtNOVNLTjY5ZXE1VGJlbm5ucXFHNlBacTFjdlU2dFdMZTlYQVNTVkRpZXFMSXo3MTJXZkpmQ1VVc1NYUHBaUmdKOW1hNWhYTTIweDZ6TkJDUGRJSXdYN245bTYwVllxSit0SXMyYk56T0dISDI2T091b29GL0w3OWV2bmV2UUJGSmRPSGEwc2pKZTk5bCsxQWc4VW1IOXlyRGJHenJZMTBkWTRXNS9ZV21TckpFN1pTaHZDUGRKTWszVVU4dFd5azBycXlXL1lzS0ZwMTY2ZDZkeTVzMXZOUC92c3MwM3IxcTI5M3dFZ0tKMDZXbGtZcitpNlJFNGRSWEpwVTZ4VzZMVXBWalBwUDdRMTNKYjY2Vm1oVHdIQ1BVcEJIMXZmc1hXcHJkU3U1TmVvVWNNRmZRWDdNODg4MDF4KytlV21UWnMyN3JrS0tGV2EwbEpaR00rK3puN0dxYU5JRVcyd1dHbHJpaTBGZVUyNG1XRUxLVVM0UnluUlp0dnJiTjNzWGFmU0FRY2M0RXA5K0RyMTlyTExMalBkdTNkM3MvTnAyMEdTYVhKVVpXRzhvckN1K2VwQUNkQ0t2R2JNSzhqcm5la0tXN05zamJLbEE2WTAzV2FWTGFRYzRSNmxTS3YzT2dSTEcyKzFxcDlxQ3ZsSEgzMjBXODNYU0UwRi9iWnQyM0lvRm9wS3A0NVdGTWJMUHZPdjlkY0EyRU5oWGozekN2TTZJVlk5OHVxYlYrbUVXQjBvdGNTV1Z1dzVXS3FFOE5NZHBlNDRXMnJaMGJ4OGpkUk1MYTNtYTBiK3dJRUQzV3UzYnQxTW56NTlUSWNPSGJ6ZkFlUnV3NFlORllieHN0Zlpyd0FxcE5EdVUzaFhNTjl1U3p1dVY5dFNXTmNxdkNiYUxMV2xUYkRNbk1jZWhIc2dRd2xYN1RwcTIwbnRHRTJmVHJydDBxV0xhOVhSS3I3bTVwOSsrdW1tVmF0V3J2VkJXTmt2TGVvdnJ5aU1WM1N0MS8vOFI5a0RRQWgrTzQxYWFkUkR0dG03MWtqSzViYTBJci9BMWpLdkZQQzFVZytVaTUvZXdONTBLdFExdGhUMHUrbEIyaW5vYXlQdS92dnZidzQ5OUZCenpqbm5tQzk5NlV1bVRwMDZycVduUVlNR2J0VWZ5YUJKTFpXRjhiTFAvR3ROaGdFUWlrTDZ2MjFwRW8xVzJuV2lxNEs2K3NuMGNaWDYzZFVIcjlWMlA3Q3JkWWFEQ2hBcHdqMVFzVUcydm1KTC9mbXBYODJYYXRXcXVaQ242VHBhelZjTFQ4K2VQVTNMbGkxTml4WXQzTW8rQjJZVmhtYWVWeGJHeTE3N3I1cXhEaUEwaFhUOVlWTHdWa2ozVjlYOWtLN1dHRCtrTDdTbEhuY09La0FzRU82QmZkTUczTk50ZmRWN1RlMDR6ZkxvUk56RERqdk10ZkUwYmRyVVRkdzU2S0NEM0Z4OTllM3IzbS9oVVVzUDdUeDcwK21oWlFONFZhNDVkUlNJaEwrUzdvZDByYVNycFVVaFhRYzMrU3ZwaTIwcHBNKzF4UXhVSkJvL2hZSGNxRzFIOC9LMW9qL1FWcW8zNFphbDloeUZlWlhhZWJUU3IxVjlUZUhwMzcrL09lU1FROXlxdndKK3pabzFYVXVQWHROZzU4NmRsWWJ4aXNJNnA0NENrZkJEdWliREtLVHJwTEN5SVYzOTZKb09vODJsS3ZXc0F5V0hjQThFMThhV1duYTBvcC82a1pybFVZZy84TUFEM2F2Q3I0Sjl4NDRkWGUrK1Z2cTF3cTgySHIwSjBKc0J2U25RNnI4TzJ0SzEzaXhvdFgvNzl1M3VvQ0g5dnVyVnExZTV4MStiT2ZYWDZWVi9qZjc2ZmRtOWUzZWxZYnlpc0w1MXEvSUVnSkMwQTl0ZlNWZGZ1citTcnI1MGJSUlZTUGMza2FxWXpRN2tpSEFQUktPekxZVjhyZXJyR3BhQ2V2MzY5ZDBLdmpib0t2d3J6S3N2WEc4SXRKRlhwK2lxTkxtbldiTm03dmZwOTZqOFNTejZ2ZjRiQlA4VGdicDE2N29KTDVwOXJrT0s5T1pDZjkveWdubjI5ZWJOeWhJQVF2SkhOR2FIZFBXayt5RmRQZWtLNlg2N2kwSzY3Z0hrR2VFZWlKNVc4ZFdiZjVvdHpkRXZxZGFkcXRKMEhvVjJyYnhuVTRqWEd3S3Q3UHVyK0FyNjJ1aXJWWGV0b0tzMEZRWkFhSDVJVjd1TEg5TFZjKzZIZEsyYXF5ZmQzenlxbm5SZEE0Z3B3ajJRWCtyUjE5UWRCWDBGZms2TUFwQVAvcXgwUDZUcjNhOC9LMTA5NlFycDZrbFhNTmNJUnBWVzFBR2tET0VlS0N6TnpqL2IxcGRzYVVOdVNVM2VBYkJQZmtqWEdFWS9wS3ZkeGQ4ODZyZTdLS1FybkN1a2F6VWRBQnpDUFZBOEN2WUsrR2ZaMHFvK3ZmcEFldmdIR21rbDNSL0RXRGFrYS9Pb3BydjRCeHBwVmpwSC9nSUloWEFQeElkYWR2cmJPdEY3TGNrSlBFRE0rQ0hkUDlCSUsrbitoQmUxdS9nVFhoVFN0WGxVSjQ2cU9FME1RRkVRN29INDBxbTQycEI3clBmYTF4WnRQRUJ3YW5mSlB0QklQZW4rU3JwQ3V0cGQxSmV1a0s3cExncnBIRlFBSUZFSTkwQnlLTmdyNEdjSGZyMEJBRXFOZjZDUmV0SVZ2djJWZFA5QUl6K2txOTFGZmVrSzZadzZDcUFrRU82QlpGUHJqbHA0anZTdWU5bGlkUjlKNFlkMHJhUm5oM1JOZVBGbnBXZUhkRzBjMWE4REFDcEF1QWZTUlRQMUZmQzF3dC9UZTFYbzEwaE9JRi9LbmpxcVZYSnRIczBPNlpydTRtOGVWVWpYQ2pzQUlHS0VlNkEwS1BCckRLZmFlVTYyMWNWV0xWdEFOaitrYThLTFZ0TDlNWXorckhSdEhQVm5wYXNuWGFYZ0RnQ0lDY0k5VUxvVTlpK3hwWlg5N3JiYTJhcGpDOG1YZmVwb2RralhxYU4rU1BkbnBXc0VvMEs2cmdFQUNVZTRCeUJxMjJsbVMyMDk1OWk2MmxaWFc5VnQ3VytMN3hYRlVkNnBvMzVJVjd1TFRoMVZTTmQwRjM5V09xZU9Ba0FKNHdjMmdMSVU1clh5cTZEZno5WnB0clJoVjRkc05iWlZ6MVlOVzN6L3FMcktUaDFWU0ZmNTdTNEs2WnJ1b3RWMEFBQnl3ZzluQUZWVjM5Ymh0ZzZ6MWNaV0UxdHE1ZEVLZjNOYnBSRDR5NFowZjFhNlZ0STFodEZmU2ZkRHVnSzZObzl5NmlnQW9DQUk5d0NDVXRoWEs0ODI1aXJvS3ZScUxPZXB0bnJZT3NoV2JWdHE3VkhwazRBRGJNVkI5cW1qZmtqWEdFWS9wR3VUcUw5NVZHMHVhbmZoMUZFQVFPd1I3Z0hra3c3WjBxU2VnMjM1YndUVTJxTndyZnRHdHByYTBxY0Eyc3pyci80cmVLdjBoa0gwKzlVdXBEY0plb1BndjJIUWlyZ2YwRldhOUtKNy8wQWpyYVFycEdzRW8vclNGZFRuMk5MSVJnQUFVb2R3RDZEUUZOSzFvcTlTT0ZkYlMvYUt1SjZydjcrRkxRVjR2U0hRNy9OSE5QcWpHZFg2b2trd0FBREFzOS9ubjJ0QkRBQUFBRURTYVFVTkFBQUFRQW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tCT0VlQUFBQVNBbkNQUUFBQUpBU2hIc0FBQUFnSlFqM0FBQUFRRW9RN2dFQUFJQ1VJTndEQUFBQUtVRzRCd0FBQUZLQ2NBOEFBQUNrQk9FZUFBQUFTQW5DUFFBQUFKQVNoSHNBQUFBZ0pRajNBQUFBUUVvUTdnRUFBSUNVSU53REFBQUFLVUc0QndBQUFGS0NjQThBQUFDa0JPRWVBQUFBU0FuQ1BRQUFBSkFTaEhzQUFBQWdKUWozQUFBQVFFb1E3Z0VBQUlDVUlOd0RBQUFBS1VHNEJ3QUFBRktDY0E4QUFBQ2tnakgvSHp4R3RkbzlzczBXQUFBQUFFbEZUa1N1UW1DQyJ9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FZQUFBQ3FhWEhlQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQWpjU1VSQlZIaGU3WnRyYUJSWEdJYlBialJaSldvdVhpSXgzbEFKVVRIVlVsdmFTa1RFZ09LRnRGcXB4WUF0RkxRbEZIOVlxSmpTUXFrZ3Jmb2pQNVQwUnl0V0VtaUxTbFFzUWJDb0lGNndhb3pSbWlhcEVlOUVqVEc3ZS9xK1o4K01rM1ZqZG02SnNYM2daYzdNN3M2YytlYk05MzNuc3VLL1RrQnZlNFBoMENSb0RKU2h0MWFhb1h0NjJ3RGRnbnpIVHdPOERoVkJiK295RFdBSEd1QkVJQkQ0UTBwWmkvSnhkZlFGaDAvMUs2Z0praDZyR2NiNEd0djRsdU1LcjFyQWVHZ1R0QW9hd0FQeHBLV2xpWnljSERsOCtIQVJDb1ZFZG5hMi9pVEc3ZHUzeGVQSGo4V3RXN2RFYTJ0cm9LT2pRMy95REdIb0oraEw2Qm9QdU1FTEE1UkIzMEFodGFjWlBIaHdwTEN3TUpDZm54K2NQSG15R0RWcWxQNGtPVzdjdUNFdVg3NHNMbDI2Sk02ZVBTc2VQSGlnUHpGNURIME9mYS8ySE9MR0FIelNQMEx2cVQwTmJqZ3lkKzdjbEprelo0cVVsQlI5MUIyUlNFU2NPblZLSERseVJGeTRjRUVmTmZrWitnQml5N0NOR3dOVVFlL0Vpbmd4eDR5SnJscTFLamhseWhSOXhCL3E2K3ZGcmwyN1JGTVQzWXhKTmZSdXJHZ1BwNCtJemY2eldGR0krZlBuaTdWcjF3WkdqQmloai9nSGZjZWNPWE9VdjdoNjlhbytLZ3FnKzVEdFNPSEVBQ0Y0NDkrd0hjUWQzdnpLbFN0Rk1CamticS9BYTAyZlBsMDhldlRJYW9UWG9KdlFHYldYSkxacm5acWF1Z0J4T1l2bGtTTkhpdVhMbDZ2amZRR3Z6VHBvV0tkS3FGRHRKWWx0SHpCZ3dJQ2Z3K0h3Q3BZTENncmsrdlhybjN1T3pzNU8wZHpjVEk4dUh6NThHTGwzNzE3a3laTW5rWnMzYjRwb05CcUdNU1BwNmVuUklVT0dERVNJVEJzNmRHaHFWbFpXSURjM042bklzV2ZQSG5IdzRFRzlwL2dWV2hZcjlveGRBekNGYllTR2NpY3pNN05qeTVZdGFTd2JYTDkrWGRUVjFZbHIxNjVKU0xTMHRBUndvL3BUZXd3YU5FakNFSExzMkxFaUx5OHZNR0hDaEFETFZoSVlnTHdDSmZVcTJEWEFEMUJwcktoaS9kM05temRubmo5L1hseThlRkdlTzNlT0NZMmJ5TklqTk1yRWlST2p5QzJDa3laTkNsUldWb2J2M0xuRGtNeHMwYmcyRXlXR3hoNnhVOWw4NkdLczJBWHJoYnVEVCtNazFBSXhlMlBNWnFmSHdPZ2dzYjh3RG1LbmFabytsaFJ3aWhFOEFNT3BNMnRpU0dLeTVBMUlaYi9EUnVYbFNIU1kwckpkRzNtNlZlMVFEYlFlWW1jb0hYSUtVK3hGMEFhSWVjZDE2Smxyc2xYczNMbFRUcDA2MVhyY2xqUHNFV1IxVE1IVXlXdHJheVhpdnNReDZ3WC9nVDZCdXFURVByQU1ZZmdLdHVhMVMwcEtKSHlQWExGaWhiVStacExtQlh5SzZzVHcyQktlWFI0NmRFaU9IajNhZWtGRGU2RmlLR0dueUNFOFZ6RnVmQisyNXJXd0w4dkx5MlZqWTZPRW81V2xwYVhXZXBpK3lndllGTldKeDQ4Zkx4RUdKYnk3UkJJaTRRU2pDSTNXQ3h0aWM5MEJzYS9BMzl1RnYrRnZlWTVubWo1ZVNibHYzejVFVWFsdW5xeGV2ZHI2V25icG83aUZ6a2lkT0NNalF4bUFyY0FBemtjdVhydzRZbnluRzkyRmprRjhsM2xUNVhIaU1YN0c3L0M3aWM2aHRIVHBVc21vRTgrc1diT3NCdUFnaktlMFFlcmtmUEtKWUtYV3JWdlhnZGVFanRDc3NCZUMwNVZsWldVSmI1d2dMWlp4TGRHTjgwMEluNDQ2K2ZidDIvVmxFOFBXY2V6WU1ibHg0MFoyalR1SERSdldYY1RvVm14cDgrYk5pMjdhdEVtZHk5cmlFbEZWVldYOS9Ua29LZXprQVhRcVRJUUVFaEFtUGt5THVac1VyYTJ0b3FHaFFhWEZTSWVaTWJLaUpqazVPY3dzQStoV3EvTnozdzdGeGNVU0dhRnhQeHNoRHA5NVNnYThMa2R0bFpVcktpcTA3ZnVldlh2M1dwOStKMlRQZWphZ3MxSVhZamlrOCt0cjZCTTQxbWpVQzZxQWZDTWRyYUFPVzlNSXUzZnYxbFhwZmZqZTB6a2E5WUVZTHBOT241M0NQb0VaRWFnWk0yWW9aOFVNc2IyOVhWZlBIOUNObHR1MmJZc1dGaFphYjV4aW5kNkNlZ1YyVkM1RDhaV1FxYW1wOHZUcDA3cTYzckoxNjlidWtxNi9JTS9qZms4d3p0SW5QSk8wd052cktuc0hXeGF6UCt0MVlJdzI5RWUrUmRuem1HOEhYcndFdnVFOHRpcmU3OWl4UTFmYk93eFBId3dHby9BOWY2TWY4aEZDcGhxWDdHdllCMmRGTnNBSW5NNlJTNVlzaVNYbkhySm16UnBsWEZ5akhVK2RuUzF2SmgwOGdCV2g2SDA1QUNGRG9aQnNhMnZUVmZlRzNOeGNJNXRrbkZlRHNzOGg2UVRQaTdGc2RvSW9Ka21uZUlCajlvY1BIMmJSRTA2ZVBLbkdGdlV1MDg5UFk4VnVvYUdTd3V2QmZQYlhGZFhWMVVsWG9pZlE3ZFVsRTA3RWZoZ3J2bGh3R0VvNXErenNiTS84d0lJRkM5UTU0OFFXNTF2SzZ3Wno4TUtMZklDREhlaE5tamNlbC9seDlOY1Zmc3hubVM5L1RVME5LK2tLRHJuZnY4OXBQOFRiOUhTQkNHT2RobnNmNGdpeVkvd3d3Tzk2SzQ0ZVBlcmFBT3hDRzdDcm5KZVh4eGtwZlVUQmtXZkgrR0VBanY4clRwdzRZV2U4SVNGV0EyUmx4YUxmdUhHY09qQ1pwYmVPOE1NQWYwSnFRb0t6UkZ6eTRvWXJWemdDSGlNek0xTnQyUklzdktHM2p2RERBSVJHVUJ3LzdtNXhGNWZKR0JndElHNnVrWW1SWTN3M0FDZEszV0J0UVJrWnNhNCsxdzFaY0xWUXloY0R3RXVicXhZYUd6bVo3QnlPSlJvd0NuQXNrWU9rK2hEWm83Y3ZEakFBWjJaVnJGNjBhSkdPNlBaaERtQ2NoK01BQ3hjdWpBNGNPTkE2d253YThuSUd5aHRRV1RvbVZjbHAwNmJwMjdGUFUxTlRGd01ZWlMwbVhFNW1uTHJneXlzUURvYzVRcVBnSWdtbldOOS9uRk9YRkhRc2IwT3VGMHI2NVFSYjlkaUFXdURvTkJRbStCM0RLOGY3dVFMa2FZTGdBcjhNUU15blkwMW03TUJKRklPVWxCUjZ3K2tRSnowOFcvalFLd1p3K2hwb0g2QUloVUsvWU9QSlU3Zmlwd0hNQk1CcExtQU5vWjJkblYyQ3YxZjRaZ0E5U0tvNGMrYU0rU1R0Z0RUWTdFdEVJcEY2WGZRVTN3eUFHTTRZclVEbTVxaFRaUFVkTU1EVG5MaWZ3TFZDWnR6bWpJNGQ5T3l4SWM3NitJS2ZQb0NlK21pc0tNU0JBd2QwS1RuaXZtK2V4MnY4TkFEWnI3ZGkvMzZ6bUJSYy82T0x4QnhrNlc5d0lsVTE0N1MwdEdoM3kxdmk0YlI3WE9yTHVjaCtDeGM5cVJ1WlBYdDJ0S2NKRTg0QkZoVVZXVytlaXk3N05Xd0Y1cUlwVHFWejVYZ2llSnhHTXI2cmYrZTZ3L01pd0dXenhrMHBjZjZRaXl1UTdxcUZEaVVsSlltbXZqK0dYaG80azVQczhqa09jL0V2ZUM4ZHIwTE02WG1EaVc2YzR1Zjgza3NOaDNXL2dKZ3RjdGFEVy83ajFOVWtSMy9GOTBWTi85TXRRdndMS3pWc29xZDJNaDBBQUFBQVNVVk9SSzVDWUlJPSJ9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5vcGVuPSExLHRoaXMuc2Vzc2lvbj1udWxsLHRoaXMudmlldz1udWxsLHRoaXMubG9jYWxTcGFjZT1udWxsLHRoaXMuc3BsaXRTdGF0ZT0hMX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ1ZyIixuYW1lOiJWaXJ0dWFsIFJlYWxpdHkiLGNvbG9yMToiIzM4ODhjZiIsY29sb3IyOiIjMmY3MmFkIixibG9ja3M6W3tvcGNvZGU6ImlzU3VwcG9ydGVkIix0ZXh0OiJpcyB2ciBzdXBwb3J0ZWQ/IixibG9ja1R5cGU6bi5CT09MRUFOLGRpc2FibGVNb25pdG9yOiEwfSx7b3Bjb2RlOiJjcmVhdGVTZXNzaW9uIix0ZXh0OiJjcmVhdGUgdnIgc2Vzc2lvbiIsYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiY2xvc2VTZXNzaW9uIix0ZXh0OiJjbG9zZSB2ciBzZXNzaW9uIixibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJpc09wZW5lZCIsdGV4dDoiaXMgdnIgb3Blbj8iLGJsb2NrVHlwZTpuLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITB9LCItLS0iLHtvcGNvZGU6ImVuYWJsZURpc2FibGVTcGxpdHRpbmciLHRleHQ6InR1cm4gYXV0by1zcGxpdHRpbmcgW09OT0ZGXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e09OT0ZGOnt0eXBlOmkuU1RSSU5HLG1lbnU6Im9ub2ZmIn19fSx7b3Bjb2RlOiJzcGxpdHRpbmdPZmZzZXQiLHRleHQ6InNldCBhdXRvLXNwbGl0IG9mZnNldCB0byBbUFhdIHBpeGVscyIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e1BYOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTo0MH19fSx7b3Bjb2RlOiJwbGFjZW1lbnQxNjkiLHRleHQ6IltTSURFXSB4IHBsYWNlbWVudCIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntTSURFOnt0eXBlOmkuU1RSSU5HLG1lbnU6InNpZGUifX19LCItLS0iLHtvcGNvZGU6ImhlYWRzZXRQb3NpdGlvbiIsdGV4dDoiaGVhZHNldCBwb3NpdGlvbiBbVkVDVE9SM10iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7VkVDVE9SMzp7dHlwZTppLlNUUklORyxtZW51OiJ2ZWN0b3IzIn19fSx7b3Bjb2RlOiJoZWFkc2V0Um90YXRpb24iLHRleHQ6ImhlYWRzZXQgcm90YXRpb24gW1ZFQ1RPUjNdIixibG9ja1R5cGU6bi5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1ZFQ1RPUjM6e3R5cGU6aS5TVFJJTkcsbWVudToidmVjdG9yMyJ9fX0sIi0tLSIse29wY29kZToiY29udHJvbGxlclBvc2l0aW9uIix0ZXh0OiJjb250cm9sbGVyICNbQ09VTlRdIHBvc2l0aW9uIFtWRUNUT1IzXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntDT1VOVDp7dHlwZTppLk5VTUJFUixtZW51OiJjb3VudCJ9LFZFQ1RPUjM6e3R5cGU6aS5TVFJJTkcsbWVudToidmVjdG9yMyJ9fX0se29wY29kZToiY29udHJvbGxlclJvdGF0aW9uIix0ZXh0OiJjb250cm9sbGVyICNbQ09VTlRdIHJvdGF0aW9uIFtWRUNUT1IzXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntDT1VOVDp7dHlwZTppLk5VTUJFUixtZW51OiJjb3VudCJ9LFZFQ1RPUjM6e3R5cGU6aS5TVFJJTkcsbWVudToidmVjdG9yMyJ9fX1dLG1lbnVzOnt2ZWN0b3IzOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJ4IiwieSIsInoiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX0sY291bnQ6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIjEiLCIyIl0ubWFwKEE9Pih7dGV4dDpBLHZhbHVlOkF9KSl9LHNpZGU6e2FjY2VwdFJlcG9ydGVyczohMSxpdGVtczpbImxlZnQiLCJyaWdodCJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfSxvbm9mZjp7YWNjZXB0UmVwb3J0ZXJzOiExLGl0ZW1zOlsib24iLCJvZmYiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX19fX1faXNWZWN0b3IzTWVudShBKXtjb25zdCBlPXIudG9TdHJpbmcoQSkudG9Mb3dlckNhc2UoKS50cmltKCk7cmV0dXJuWyJ4IiwieSIsInoiXS5pbmNsdWRlcyhlKX1fb25PZmZCb29sZWFuKEEpe3JldHVybiJvbiI9PT1yLnRvU3RyaW5nKEEpLnRvTG93ZXJDYXNlKCkudHJpbSgpfV9nZXRDYW52YXMoKXtpZih0aGlzLnJ1bnRpbWUmJnRoaXMucnVudGltZS5yZW5kZXJlcilyZXR1cm4gdGhpcy5ydW50aW1lLnJlbmRlcmVyLmNhbnZhc31fZ2V0Q29udGV4dCgpe2lmKHRoaXMucnVudGltZSYmdGhpcy5ydW50aW1lLnJlbmRlcmVyKXJldHVybiB0aGlzLnJ1bnRpbWUucmVuZGVyZXIuZ2x9X2dldFJlbmRlcmVyKCl7aWYodGhpcy5ydW50aW1lKXJldHVybiB0aGlzLnJ1bnRpbWUucmVuZGVyZXJ9X2Rpc3Bvc2VJbW1lcnNpdmUoKXt0aGlzLnNlc3Npb249bnVsbDtjb25zdCBBPXRoaXMuX2dldENvbnRleHQoKTtpZighQSlyZXR1cm47QS5iaW5kRnJhbWVidWZmZXIoQS5GUkFNRUJVRkZFUixudWxsKTtjb25zdCBlPXRoaXMuX2dldFJlbmRlcmVyKCk7ZSYmKGUueHJFbmFibGVkPSExLGUueHJTcGxpdHRpbmc9ITEsZS54ckxheWVyPW51bGwpfWFzeW5jIF9jcmVhdGVJbW1lcnNpdmUoKXtpZighKCJ4ciJpbiBuYXZpZ2F0b3IpKXJldHVybiExO2NvbnN0IEE9dGhpcy5fZ2V0Q29udGV4dCgpO2lmKCFBKXJldHVybjtjb25zdCBlPXRoaXMuX2dldFJlbmRlcmVyKCk7aWYoIWUpcmV0dXJuO2F3YWl0IEEubWFrZVhSQ29tcGF0aWJsZSgpO2NvbnN0IHQ9YXdhaXQgbmF2aWdhdG9yLnhyLnJlcXVlc3RTZXNzaW9uKCJpbW1lcnNpdmUtdnIiKTt0aGlzLnNlc3Npb249dCx0aGlzLm9wZW49ITAsZS54ckVuYWJsZWQ9ITAsZS54clNwbGl0dGluZz10aGlzLnNwbGl0U3RhdGUsdC5hZGRFdmVudExpc3RlbmVyKCJlbmQiLCgpPT57dGhpcy5vcGVuPSExLHRoaXMuX2Rpc3Bvc2VJbW1lcnNpdmUoKX0pO2NvbnN0IG49bmV3IFhSV2ViR0xMYXllcih0LEEse2FscGhhOiEwLHN0ZW5jaWw6ITAsYW50aWFsaWFzOiExfSk7dC51cGRhdGVSZW5kZXJTdGF0ZSh7YmFzZUxheWVyOm59KSxlLnhyTGF5ZXI9bixlLl94clNlc3Npb249dDtjb25zdCBpPShBLG4pPT57aWYoIXRoaXMub3BlbilyZXR1cm47Y29uc3Qgcj1uLmdldFZpZXdlclBvc2UodGhpcy5sb2NhbFNwYWNlKS50cmFuc2Zvcm07dGhpcy52aWV3PXtwb3NpdGlvbjpbci5wb3NpdGlvbi54LHIucG9zaXRpb24ueSxyLnBvc2l0aW9uLnpdLHF1YXRlcm5pb246W3Iub3JpZW50YXRpb24udyxyLm9yaWVudGF0aW9uLnksci5vcmllbnRhdGlvbi54LHIub3JpZW50YXRpb24uel19LGUuZGlydHk9ITAsZS5kcmF3KCksdC5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoaSl9O3JldHVybiB0LnJlcXVlc3RBbmltYXRpb25GcmFtZShpKSx0LnJlcXVlc3RSZWZlcmVuY2VTcGFjZSgibG9jYWwiKS50aGVuKEE9Pnt0aGlzLmxvY2FsU3BhY2U9QX0pLHR9aXNTdXBwb3J0ZWQoKXtyZXR1cm4ieHIiaW4gbmF2aWdhdG9yJiZuYXZpZ2F0b3IueHIuaXNTZXNzaW9uU3VwcG9ydGVkKCJpbW1lcnNpdmUtdnIiKX1pc09wZW5lZCgpe3JldHVybiB0aGlzLm9wZW59Y3JlYXRlU2Vzc2lvbigpe2lmKCF0aGlzLm9wZW4mJiF0aGlzLnNlc3Npb24pcmV0dXJuIHRoaXMuX2NyZWF0ZUltbWVyc2l2ZSgpfWNsb3NlU2Vzc2lvbigpe2lmKHRoaXMub3Blbj0hMSx0aGlzLnNlc3Npb24pcmV0dXJuIHRoaXMuc2Vzc2lvbi5lbmQoKX1lbmFibGVEaXNhYmxlU3BsaXR0aW5nKEEpe2NvbnN0IGU9dGhpcy5fZ2V0UmVuZGVyZXIoKTtpZighZSlyZXR1cm47Y29uc3QgdD10aGlzLl9vbk9mZkJvb2xlYW4oQS5PTk9GRik7dGhpcy5zcGxpdFN0YXRlPXQsZS54ckVuYWJsZWQmJihlLnhyU3BsaXR0aW5nPXRoaXMuc3BsaXRTdGF0ZSl9c3BsaXR0aW5nT2Zmc2V0KEEpe2NvbnN0IGU9dGhpcy5fZ2V0UmVuZGVyZXIoKTtpZighZSlyZXR1cm47Y29uc3QgdD1yLnRvTnVtYmVyKEEuUFgpO2UueHJTcGxpdE9mZnNldD0wLXR9aGVhZHNldFBvc2l0aW9uKEEpe2lmKCF0aGlzLm9wZW4pcmV0dXJuIDA7aWYoIXRoaXMuc2Vzc2lvbilyZXR1cm4gMDtpZighdGhpcy52aWV3KXJldHVybiAwO2NvbnN0IGU9ci50b1N0cmluZyhBLlZFQ1RPUjMpLnRvTG93ZXJDYXNlKCkudHJpbSgpO2lmKCF0aGlzLl9pc1ZlY3RvcjNNZW51KGUpKXJldHVybiAwO2NvbnN0IHQ9WyJ4IiwieSIsInoiXS5pbmRleE9mKGUpO3JldHVybiAxMDAqdGhpcy52aWV3LnBvc2l0aW9uW3RdfWhlYWRzZXRSb3RhdGlvbihBKXtpZighdGhpcy5vcGVuKXJldHVybiAwO2lmKCF0aGlzLnNlc3Npb24pcmV0dXJuIDA7aWYoIXRoaXMudmlldylyZXR1cm4gMDtjb25zdCBlPXIudG9TdHJpbmcoQS5WRUNUT1IzKS50b0xvd2VyQ2FzZSgpLnRyaW0oKTtpZighdGhpcy5faXNWZWN0b3IzTWVudShlKSlyZXR1cm4gMDtjb25zdCB0PVsieCIsInkiLCJ6Il0uaW5kZXhPZihlKSxuPWZ1bmN0aW9uKEEpe2NvbnN0IGU9QVswXSx0PUFbMV0sbj1BWzJdLGk9QVszXTtyZXR1cm5bTWF0aC5hdGFuMigyKihlKnQrbippKSwxLTIqKHQqdCtuKm4pKSxNYXRoLmFzaW4oMiooZSpuLWkqdCkpLE1hdGguYXRhbjIoMiooZSppK3QqbiksMS0yKihuKm4raSppKSldfSh0aGlzLnZpZXcucXVhdGVybmlvbik7cmV0dXJuIG5bdF0qKDE4MC9NYXRoLlBJKX1wbGFjZW1lbnQxNjkoQSl7Y29uc3QgZT1yLnRvU3RyaW5nKEEuU0lERSkudG9Mb3dlckNhc2UoKS50cmltKCksdD0xMjAqKHRoaXMucnVudGltZS5zdGFnZVdpZHRoLzY0MCk7cmV0dXJuInJpZ2h0Ij09PWU/dDowLXR9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxKSxpPXQoMykscj10KDMxMiksbz10KDIpLHM9e01vdXNlOnQoMzEzKSxCdXR0b246dCgzMTQpLFRleHQ6dCgzMTUpLFRleHRhcmVhOnQoMzE2KSxCb3g6dCgzMTcpLFNjcm9sbGluZ0JveDp0KDMxOCksQ2hlY2tib3g6dCgzMTkpLERyb3Bkb3duOnQoMzIwKSxNdWx0aXNlbGVjdDp0KDMyMSksU2xpZGVyOnQoMzIyKX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuVUlDbGllbnQ9bmV3IHIoQSl9Z2V0SW5mbygpe3JldHVybntpZDoiamdJbnRlcmZhY2VzIixuYW1lOiJJbnRlcmZhY2VzIixjb2xvcjE6IiNhYzk2YjUiLGNvbG9yMjoiIzhlN2E5NiIsYmxvY2tzOlt7b3Bjb2RlOiJjcmVhdGVCdXR0b24iLHRleHQ6ImNyZWF0ZSBidXR0b24gbmFtZWQ6IFtOQU1FXSB3aXRoIHRleHQ6IFtURVhUXSIsYmxvY2tJY29uVVJJOnMuQnV0dG9uLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IkJ1dHRvbiJ9LFRFWFQ6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJDbGljayBtZSJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJjcmVhdGVUZXh0SW5wdXQiLHRleHQ6ImNyZWF0ZSB0ZXh0IGlucHV0IG5hbWVkOiBbTkFNRV0gd2l0aCBwbGFjZWhvbGRlcjogW1BMQUNFSE9MREVSXSBhbmQgZGVmYXVsdDogW0RFRkFVTFRdIixibG9ja0ljb25VUkk6cy5UZXh0LGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IlRleHRJbnB1dCJ9LFBMQUNFSE9MREVSOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVHlwZSBoZXJlLi4uIn0sREVGQVVMVDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IiAifX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiY3JlYXRlVGV4dEJveCIsdGV4dDoiY3JlYXRlIHRleHRib3ggbmFtZWQ6IFtOQU1FXSB3aXRoIHBsYWNlaG9sZGVyOiBbUExBQ0VIT0xERVJdIGFuZCBkZWZhdWx0OiBbREVGQVVMVF0gYmVpbmcgcmVzaXphYmxlPyBbUkVTSVpFXSIsYmxvY2tJY29uVVJJOnMuVGV4dGFyZWEsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVGV4dGJveCJ9LFBMQUNFSE9MREVSOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVHlwZSBoZXJlLi4uIn0sREVGQVVMVDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IiAifSxSRVNJWkU6e3R5cGU6aS5CT09MRUFOfX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiY3JlYXRlRHJvcGRvd24iLHRleHQ6ImNyZWF0ZSBkcm9wZG93biBtZW51IG5hbWVkOiBbTkFNRV0gd2l0aCBsYWJlbDogW0xBQkVMXSIsYmxvY2tJY29uVVJJOnMuRHJvcGRvd24sYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiRHJvcGRvd24ifSxMQUJFTDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IkNsaWNrIG1lIn19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImNyZWF0ZUNoZWNrYm94Iix0ZXh0OiJjcmVhdGUgY2hlY2tib3ggbmFtZWQ6IFtOQU1FXSB3aXRoIGxhYmVsOiBbTEFCRUxdIixibG9ja0ljb25VUkk6cy5DaGVja2JveCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJDaGVja2JveCJ9LExBQkVMOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiICJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJjcmVhdGVTbGlkZXIiLHRleHQ6ImNyZWF0ZSBzbGlkZXIgbmFtZWQ6IFtOQU1FXSBtaW5pbXVtIG51bWJlcjogW01JTl0gbWF4aW11bSBudW1iZXI6IFtNQVhdIixibG9ja0ljb25VUkk6cy5TbGlkZXIsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiU2xpZGVyIn0sTUlOOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxNQVg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImNyZWF0ZVNjcm9sbGluZ0FyZWEiLHRleHQ6ImNyZWF0ZSBzY3JvbGxpbmcgYm94IG5hbWVkOiBbTkFNRV0iLGJsb2NrSWNvblVSSTpzLlNjcm9sbGluZ0JveCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJTY3JvbGwgYXJlYSJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJjcmVhdGVNdWx0aXNlbGVjdCIsdGV4dDoiY3JlYXRlIG11bHRpc2VsZWN0IGJveCBuYW1lZDogW05BTUVdIixibG9ja0ljb25VUkk6cy5NdWx0aXNlbGVjdCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJNdWx0aS1zZWxlY3QifX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiY3JlYXRlR3JvdXAiLHRleHQ6ImNyZWF0ZSBncm91cCBib3ggbmFtZWQ6IFtOQU1FXSIsYmxvY2tJY29uVVJJOnMuQm94LGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IkJveCJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfV19fWNyZWF0ZUVsZW1lbnQoQSxlKXtuZXcgci5CdXR0b24odGhpcy5VSUNsaWVudCxlKX1jcmVhdGVCdXR0b24oQSl7dGhpcy5jcmVhdGVFbGVtZW50KCJCdXR0b24iLHtpZDpvLnRvU3RyaW5nKEEuTkFNRSksbGFiZWw6by50b1N0cmluZyhBLlRFWFQpLHNob3duOiEwfSl9Y3JlYXRlVGV4dElucHV0KEEpe31jcmVhdGVUZXh0Qm94KEEpe31jcmVhdGVEcm9wZG93bihBKXt9Y3JlYXRlQ2hlY2tib3goQSl7fWNyZWF0ZVNjcm9sbGluZ0FyZWEoQSl7fWNyZWF0ZU11bHRpc2VsZWN0KEEpe31jcmVhdGVHcm91cChBKXt9fX0sZnVuY3Rpb24oQSxlKXtjbGFzcyB0e2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuX2Rpdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLlJlYWxpZ24oKSx0aGlzLmJ1dHRvbnM9e319UmVhbGlnbigpe3RoaXMuX2Rpdi5zdHlsZT0icG9zaXRpb246IGFic29sdXRlO2xlZnQ6IDBweDt3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCU7dG9wOiAwcHg7ei1pbmRleDogMTAwMDsiLHRoaXMucnVudGltZS5yZW5kZXJlciYmdGhpcy5ydW50aW1lLnJlbmRlcmVyLmNhbnZhcy5wYXJlbnRFbGVtZW50LnByZXBlbmQodGhpcy5fZGl2KX1BZGRUb0NhbnZhcyhBKXt0aGlzLl9kaXYuYXBwZW5kKEEpLHRoaXMuUmVhbGlnbigpfURpc3Bvc2VBbGwoKXtjb25zdCBBPU9iamVjdC52YWx1ZXModGhpcy5idXR0b25zKTtbXS5jb25jYXQoQSkuZm9yRWFjaChBPT57QS5kaXNwb3NlKCl9KSx0aGlzLlJlYWxpZ24oKX19dmFyIG4saSxyO249dCxpPSJCdXR0b24iLHI9Y2xhc3N7Y29uc3RydWN0b3IoQSxlKXtsZXR7aWQ6dCxsYWJlbDpuLHNob3duOml9PWU7dGhpcy5pZD10LHRoaXMubGFiZWw9bix0aGlzLl9lbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpLHRoaXMuX2VsZW1lbnQuc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO2xlZnQ6MCU7dG9wOjAlIiwhMT09PWkmJih0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiKSx0aGlzLl9lbGVtZW50LmlubmVyVGV4dD1ufHwiQnV0dG9uIixBLkFkZFRvQ2FudmFzKHRoaXMuX2VsZW1lbnQpLEEuYnV0dG9uc1t0XSYmKEEuYnV0dG9uc1t0XS5kaXNwb3NlKCksZGVsZXRlIEEuYnV0dG9uc1t0XSksQS5idXR0b25zW3RdPXRoaXN9c2hvdygpe3RoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheT0iIn1oaWRlKCl7dGhpcy5fZWxlbWVudC5zdHlsZS5kaXNwbGF5PSJub25lIn1kaXNwb3NlKCl7dGhpcy5fZWxlbWVudC5yZW1vdmUoKX19LChpPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShpKSlpbiBuP09iamVjdC5kZWZpbmVQcm9wZXJ0eShuLGkse3ZhbHVlOnIsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpuW2ldPXIsQS5leHBvcnRzPXR9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFEQUFBQUF3Q0FZQUFBQlhBdm1IQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQXBBU1VSQlZHaER2VmxiVEZYWkdWNzdjRGxjNUE0aXFNQnc4ektDZU1HS0dtOWpDVlVuWWt2SDhVWE5OTFdhMUFjNzZVTmphaHVZcC9haEhYbVlwS242WUJ4VGJSeU5sMmppSFRNaGFyeGh2UkNHaThOVlJNRWpIQTRIV1AyK3hUNndoWE00ZXdQdGwveWV6ZHByci9YZi8zOHROZkYvZ0pSU2tZN0o3aWx0TnB2K09QbkZ4bUJ3Y0ZCL1VzK2EwK2tVZ1lHQklpUWt4Q2pFcEFBQnBrWWJQalNyQmpSTkV5ZFBuaFR2MzcvWFZxeFlJZWJPblR2MGNncUVNQW93WW90eFFLMGFTQnNZR05BY0RvZFdWMWNIUG9mNFRrcEtrdE9tVFpOMnUxMXBQRHc4WEpTVmxZbm56NTlyTDE2OEVHL2V2Qkg0WnNxczRNRVlDNUJKQTd4YWlFdy9ldlJJbkQ5L1hqdHk1TWhnVzF1YjZPbnBDUVJ6UVhodEI0WERaUUtqb3FMZWhvYUdPcFlzV1NLM2I5OXVTMDVPbG5nV3djSEJreFZrT0E0MEE4T1czT24rL2Z2aTl1M2I0dXpaczdaNzkrNGx3bFV5d0ZReVhwR3lzSUVHUzN3SFptOWkzRVh0MTlmWGEybHBhZXI3U2VJREFVd3pUczB6S0d0cWFrUmpZNlBZdDIrZmRMbGNkbGhnUzM5Ly82L0FjRnBZV0pnZGE4WjJkM2M3OFhzQ24zMFRGeGRYRng4ZlA5RFoyVG5RMHRLaWx1SS9rOEN3QUtaaXdBaGFyTG01V1lCaDlkdlUxQlRrZHJ1VElOekNHVE5tWkJjWEY2ZHUzcnc1QWpFUWcrbjVvTUt1cnE1Rm1CdEdLMEJnMGR2Ykt4QkhhcjBKWWtRQnRJQlZna3VvQlJJVEUrM1Erbnc4bGdZRUJMUXNYNzVjM3JoeFExNjZkSW0rVHQ5OEJVMWR3dStmSUdBNkxYano1azN4NnRVckRUSGpkVzJ6eFAwSnl4WWdybDI3Sm1Oalk1bFZJcUhKWEF4bFk5Rmd1SW1ZT1hPbXlNM05GZXZYcjllV0xsMGFqMEQrQkl6L0RFSi9CQXJhdW5XcnlsSVVaakxBZnVyWGtnQmdRUFQxOVFsb1dzQXQ2QXBCR010RjZpekl6czZPenNyS1lvNFdGSzZ3c0pDa3BhYW1ndDlBUmk0cGdERkU1bG5ZcGdLV0JLRGZJamlIOHptMFFFZU9nUHZFZ0ZIYjRzV0xSV1JrcEdBdFlQRXFLU2tSeTVZdEUwaWw1SmFXeWdUejAxYXVYR2xidUhDaHhETnBVdFl3TFlCbkk1cWYyZ1BUSE80Qk5ZSGN5RFJpMGFKRmdtNUVJQnNKV2dSdXhPY3dESzBGN1lFRmZsNWJXeHVMQXNjcXJRb2NsVElCSWRRSHBnV2d4c2swZVVGdTE1QjV1R2t3WGpsaEdUZUNrcG9lbXF5RGdqTHZJenNGNHBzNWNLL1BzYzVtdUY0OEdiNXc0WUs0ZlBteTF0RFFNTHFBbW9ibElBNEtDcEx3ZHhFUkVSRUZaZ293OUJPOUZvaDM3OTROVGRKQmEyVmtaQWdFcm9aNHNFT1FPQWlSaFZkeGNMT0FIVHQyVUJteXNySlN1ZEtFd0pSa2hzQ3NoMVFyQUVFK3d1ZmxZS2dWbVdZQS9pNGZQSGdnVVI4d1pRUndHZm55NVV1SmlpMDNiTmpBWG9tVjdFdFlheGI2cHhDMEZ6WW1CVXhWUFphM3ZjY2g4eFpnOXVubzZCRHdYMEgzQWJrd0RENUNJOWVzV1dQYnRtMmJTcUhNUWtiUWpXYlBuaTBZNExRYzNEQVN3K3ZoUnNYdDdlMDVzSnE5cXFxS2lVRXlGcGdvckZqRGxBQmNrRDVlVVZHaFhiMTZsVDBPeDV4NDlSb011K0VhS29BVEVoSjhiaDRkSGEzbVRKOCtuYzBlTTlKR1dHc1ZtSTVnYW1XTFFRVlJPYkNHK3NZRU5OTVdvTnVnLzVHN2QrK1czQVIvUjJCWWcyVUdtVW44Z1piSXk4c1RSVVZGQWZuNStjbG92ZGRoK0JNd20wQlhZS3d3NEVjbkFuOHdKUUExd3V6eitQRmpDWi9WRU1DSkVHSTVYcVZRR1BZMlpHSTgwR3FvRldMVHBrMnMwamFrMnhBOW9HZkNhaG9FNGpUTFBiWnBBY2dvR3pINExmTjJLQmpPQVZNTDRQZWhuaGJabitsalltTEUyclZyeGNhTkcxV05RQ0tnRmZQd1hUYUVpV1F4NU5saGFMWTVtQktBblNmZHBMUzBsTThTekhPVFZMaEZKdm9lTzEyREZ2SW5BSzFBVGZONGlVcE10NHJDOEtlZzN5QU8xaUFWaHo5OStwUlRUUXRCQWNhZHpLRDBaQWEyQ1hxUTlvUGNlSlpJaFlLbkxIU21ZektRTC9DNE9XZk9IQjVEUTJHRmZHU216eUQ4VDJIaFNHWTdLL0M3STdYS3dLTDUyYVRwNkFVMTQxMHZtV2Iyb1hiTmdyMFNNOUtXTFZzMHVKUWRkU1FKdy9OQTBmNWlhVFJNeHdBck1GS2hwdmMxTEdMUmpBdTZGbit0Z01MU2pmYnMyU04yN2RvbFpzMmFCVDNZS0VRQ0tNREtzWk1mNm8vakE4ZEgrcjhHTS9QTVd3SXF4TGZoRkk1WnlDcW9CektLemxSa1ptWXlMYlBBY2UzZzE2OWZxemxtWUk1NzROQ2hReXhtZ3hDQ3ZqSVBicFd4WU1HQzRJS0NBaFdZRkdRaWdHVlozR2dWNXRGMGtGMlBBMU1MZWdRd05abE1nbGlCMzBPQXZ0V3JWNnU4emtxc0I3ZFg2TitwZG9ScHVMcTZXdHk5ZTFkY3YzNmR0eHE4TzZJYjBnSWZnOExWUjFiQXdBRjVhNWFNNURrRHNPSC9LK0toNjhDQkF4SW5NL0EyQXFaWk1LcFNyUkVjQjZQeTRNR0RjdDI2ZFJLOUVidGFOekpSTjl6SkFRVzBZLzEvNERtRjJRNmZtR28wVGJzUW9Ib2dnQTVmQzQzMU5EVTFpYmR2MzZxckZuU2M0dUhEaCtMV3JWdml6cDA3WTFwcmdpMzM2ZE9uSlE3MkxuU3VNRVQxVmZSQS80SnJmZzJHLzRqMUQ0UDVEaDVGang4LzdyZTZFNG9qQnJLWnlVeW5DR0k2YUNOK25iemNPbnIwcUxMTXMyZlBSRjFkbldodGJSVTVPVG15ckt4TVk3SHlnSE9ZLy9ITGxyd2Q5QTJHejREb2treGpMbGpCaFZhbEgzMlJqUzdKeXM5Z3B6WDh3bWdXWDdSejUwNTl0bUFmOUFLWm94OUh5VjdVaURjUTdrY3dWNHZ4TGdUbDRKa3paM2pwaGIxSFVGTlRJNHVMaXlVcThFdk0rd1ZJS1pEQ3NkbGpPMzdxMUNsYVVFUGp5RWJSS3g5RzR2Y0srTU9NRUNwcm9CQ2xZZE92OGRuM29KT2dVdEF2UVorRHpxR3c5WlNYbDB1NGtjNzZFR0FkdVgvL2ZnazNZWjc4QXlpS211YTZ4bjB3ZFppTTQ5N0lTZ3lvVE1ORE93SzRGVUtVUTRoZlkvajNvTCtEdmdOZEFGVkFjODc2K25vVkcwWjRjaitzeFo0NUV4VEJOVWNEakErVFA1Z1dnQnZ4cmgrWlIwTVdjYUUvK2dHeDh4K01OMEFRSGdqWUh6RSttaUZBRHcvcVBHRVp3UllpSlNXRnNjRExnTm1nQ0ROTWpvZGhBY3hVWkc3R29zTXo3TjY5ZStuanF0RmpLNEYraGxONFQ5UUdBUnk4TitYbGx4RThGQ0ZJMlZjRlFuQzJEYkZZMHpaL1BtOG5wd0RlZk14SVBIUjNkblpxU0ozZTN1dXJpRHhRQlhxZGdTdFhyb3c1NVBOVXgwQ0dOUmp3akpzUVZuSXY2NWtpeXpGQVRmTjg2dzE4RDNTQ1d1QnVmY2FqSmpaVEJJSFU5OGo1ckx5cWRhQWxKNHJSQXZoMVNDalJaM0RwYmtqSGIwQng2dVAvNHZBV2cwV3VzckpTWEx4NFVadzRjVUxWRExnZGZXNGVoR1ozUzB3b0dENUlBZFFRNEx1cDhRTWtGOFlGbTdJdjRPOS9oaHZGc0cxbVZVWk1NSzI2RWRoOURvZGpBUE82SWZBcDVQKy9JRFUzczZKRE1aYjNubElCNEJwa2tobG1FelQ3TjJTblpERFhpZGpwUkdEVHRkcEFMR0kvZ2hyQmZCWFNjblZSVVZFdkw3MUtTa28wTThuRWlBOW1XLzE0Tk5pWklqajd3Tmh6TVA4dC9QMmZxQVZmZ2ZrdjhmcTNvTitCdmdLeGpmZzNxQXJ6blNoOEdpem11Vy9Gc0htTW1jM0kxaDh0QTV2TDlQUjBybUh2Nk9pSTV2a0JZUFBIS0ZWbmFDcUp4SXJPdVUrZVBPRjFqY2IwekJ0dUNLN1dNZ3R2QXZESHNoRFVIUDgvK05peFkreGg1T0hEaHlXdnp3a1czbFdyVm9sejU4NnB2NEVQMWpkcTNWZUM4SVVwRllCWGd6eW84SWpKWEs4elkza3RLNWhTQVZpVlNYU1AveEdHemVPSlY2K01Rb2dKYTQyQ1dIVURIeGpEckRkTXVRQVRoR0xXZWhZVTRyKytyZWdPVTZPM2RRQUFBQUJKUlU1RXJrSmdnZz09In0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURBQUFBQXdDQVlBQUFCWEF2bUhBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBYVhTVVJCVkdoRDdaaC9URlZsR01jZnVKZGZna1JBRTZGUUNCV1NIK0p3bWpIVEVWc3IwVFFnTkV4VVdKTEtiSzFtclRHcnJma1hvTGxzbWRQMGhycmNFdFBWWnVRR3RpTFIwcUJFNUVkM2s4S3AvRks3RVBEMmZkNTdEdHpkZTg2OWdGeTJOajdiOTU3M25QUGVjNTduZlo3M2VkOTdhWkpKSnZsLzQ2RWNKNW9BS0ZiUlhDZ0ZNa0oxMEhIb1BEUWkzTzFBS0JRUHNhRnpsQ09mUHdvNTR4aFVBTjJWWjA0WUx3ZG1RcXFoajBQem9CaUlIWEJneXBRQWlvNktwVm16NG1sV3pGeUtqbzRsSDI5Zit2R25TaktWNzZYNzk2WGQzMElaVUQrZjZERWFCempFYXRoWkhIcTE3UXM1TUhWcWtEUTBMbTRlUlVYTmtlM1pNRG9zVEQ4QVRjMVg2Wlc4WlhUcjF0OTh1Z0U2eEEwOVJ1SkFIclFGNGp6VkpEUTBUSTRtR3hnTlErWElRc0VQYXdiQUpSV25UUFRXam5YY3JJVVdjRU1QWnc3d2lCK0ZNdVVaaUFpZktRMmJFUmtqUjVSSGxvME9EQXhTZW93UHZiMFdXdlRVSTJvcStVRVdibWpoeklHUG9LMmNCdS9zS0tYbm44c2hIeC9OVEhFTEwyWXRvTHA2RGdBbFE3OXlRd3RQNVdnUFQ4RE5Cb09SRGg0NFM2dFg1VTJvOFV3a29xekFjMHdYUFFjNGJZeXJYOGlqaEhqZDFIY3JzYkZKOHVqaDRaRTBPRGlvbXlsNkRuRE5wc1NraGZKazRoQkQ0bm1tTUtZSXlOcmJoOG5rWG9ZTnRtb1lYaHNVeHVSQUEzODB0OGpET0tKdnNEMWMzUmdoUkd4a1pLVHVCTlJ6NENwL05EYnkxdVJCMERhWUY2dUxsMzVRenJReEdnMURUclMzdCt0R1FjOEJhWGx6aS9SamxEZ2FySEt5NGdpOThXWXViWC85Slhydmc2MVVlL0U4M2VtNHBkeDFSRTJqZ1lHQlVUdlFDdDNsNWJ5N3U5TjZSUmRiZ3gyTlZ1bnI2Nk1ydjEyZ3RyWnJWRmk0aWJxNjJ1bkxFL3VwdHJaYTZlR0lXa3FSUm9teW9ZR2VBNHdjZnVkUjBEZllub2FHSzlUVDAwbWVCdXpRVml5bmpSczMwdTA3WmlvLytqR1BNQnVwOUJ5R1YzdUZNT1hvZ0RNSHJ2TkhNL0pWbjVIdkJUdTdiaVAzNnlnaElZRlExeWs3TzV0V3dCR2VDM3FwWk1SQzZncG5EbHptajhicjlmTGtRZURCNVEyZjJkeEtLU2twTkgzNmRJcVBqNWRSU0V5TXA3MGY3NlRqeHo5VmVnOXpTWm5vV015YVpVTURseWxrTnN0QVBCQkNERkxRUXlFVStWZzBkWFIwa0orZkgzbDZlbEp3Y0REbDVPUlFTRWdBVlg1ZmdYblJJYVBEWEd1c3A0cXZUYkp0TkJwUHlJWUdydWVBMHhRYUdXeHMrYkY5MU5WOUIvT2dod3dHQTQrcXZKZVhsMGRidGhSaXJ2MU9ueC9lVFpjdi80enQ5QmUwWVZNNkpyNkYrMzFpc1ZoMGpYQ1Z4SEptWGZubEh4ZWJPZGVUdVd4UE1kWFZWZEh1UFdVeWZieTh2T1IxbnNCTVptWW1LdEpGVktrMlJNRjZEY2Fmam9pSXlEYWJ6UllNZ3VaTG5FV0FrZnZaN3lwUHlwT3gwTnZiSzBlMXJlMVBhbWx0Sm45L2Z4a0JGVzV6aFBMejh5azkvUm5WK0dzdy90WGs1T1RWYkx6c3FJT3JDT1JEKzNrQ2xoK3BwaGt6aGpaWWRnaTZkKytlTExtOGVyZGdDOEp0VGovYk1vd3RBWmxNSmtwTlRSMUtJWlhPems3TU43Tll1WEtseDQwYk44cjYrL3UvUVhUT0tyZlpTZGRoMW9EckdEOUU0SWVOS056OHJqajQyVmx4K05BNXNiTjRuMWkvYnJ0WSt2UnlnVjlxL0hCTndkQi9jZVJOVmZmYXRXc0hhMnBxVVBJZHdlUVZNRm9VRkJTSWtKQVFYajFQcDZXbEdYZ3I3V3c3UFJMNFA1eXZJRTBEVmNIUUh1Z0NkQlNqOVRaU1l4WHlQQ0U4UE53ck1ERFFIMzBxaTRxS0JoRXB4V1J0Mk1GZHUzWnhIZzNnR1UrT2h3TXFxUkQvekR3SGNWVDJRZHVoWjZHWjZvdTBCR2I3K1BpY3pNcktrcU9NYTRxNWpxRGlDR3plQlBLZkI2VklmUWJlb1ltclNXd0wvMXUyRFZvR3BVT0ZVQm5FLzkvdzNza1phZDdlM290OGZYMWxyc013NWJJalBPbnI2K3VKKzhJZnAvOUlqRHZxYU5rTEtiVXFORFRVVWxWVkpmUlNxTFcxVmVZL2p6d2V4ZUlLK0Q3L0Z1Qm44UFBkanIzaHFqRDZVYmo5VjNsNXVVeWZob1lHd2UybXBpYkZmQ0hUSmlZbWhnM25PYlFVRGdmWVBrTyt3TjNZdnRCZXVIMEs1Vk5rWkdRSVRHdzJ0SytrcEVReDM4cWFOV3Y0K2w2ZDc3c2ZyUmVyQWp2UXBRb3FRZnRsSEUxc3NDM3NFSzdYWUZVZUtwK3FjSDFpc0greEtwVFNvT0xpWWsvMUhLem5sTGw1ODZaaXZoRFYxZFhzd0NESzV5TGI3N0tzVDU4QTdGK3NKNndSVDZCNzU1a3paeFR6clNWMC92ejVYRDYzMmZlM1B0MlIwWlRSY1FYbDhnOGNMZ0RyQmNBbGR0cTBhUk5mUG0yeEh6bG5RdmNQRnk5ZUxFcExTMFZ1YnE2SWk0dmpGTG9QbWNMQ3dxYlk5WjA0YkYvc1RMdytvRHNiemIvK0RpQjFYa1ArTDF5eVpJblJ2aTgvVnd1M2VPYnNoYlpnMHphMXU3czdDVnZzT3FTUDA3OC94cm9ibldTU1NTWnhKMFQvQVZ6RUxhT0c2WGF6QUFBQUFFbEZUa1N1UW1DQyJ9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFEQUFBQUF3Q0FZQUFBQlhBdm1IQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQUdyU1VSQlZHaEQ3WmpQSzBSUkZNZlA4SlFhRmlSaGFrS0tyS1Jtb2RoYld2aVJySzJac1BBWFdLRHhYNGlVclRJN01vdFhRNUVvVWJPZWpHTEtSSEcrMTd0MVo5NXRhbEx2VXVkVDMzbjN2cWw1MysrODg2WnpoZ1JCRUFSQkVBUXJIbXVWNWJNK1dGOFJDOWZFdGVFQlhocWloM1hKc24yd0M4RUxQSVdJQlVjVHBFWHlzV1J5aU5iU1d6UTFPVTN4ZUp0Nk15cks1VGM2T3oraDNjd21GUW9QT0hYRlNyRStzZEhZQXVDV1pXRCtZRDlIblIxZFAyY2Q4VndxMHNMaWhBNlJadTFob1drS2ppWkxlTUUzcjgwUGo4YVVhdGRSQUEvd0VxQzhtZGljNE9IeDh2NXJxR3hnL1A0V0pSa3RLS2Z4VkR1V0tKOFdMRFMyTzZDZStLaHJ2aDZHbDlDdmtTM0F2MElDdUVZQ3VFWUN1RVlDdUVZQ3VNWVdRUFhibGNxNzJ2d0ZEQzlWc3dDd0JjRGdRQmU1ck5vQTNVS2pFNDI2blFhR0YrWE54T1prbmJVOU9EQkNSNGUrODY0VXJmVHNmSW9lbis2dzNXRHRZS0ZwRG80bWVkWk02YVhZZlpvOXBrU2luL3A2aytSNURjL1Z2d0psZzVGeUpUMm56ZCt3bGxtaE1yS0JBZnFhVlR0Y3V4SzhXSWY2ZXJTeVVFNnUvMWFCQjNnUkJFRVFCRUVRcWlENkJxQ1A0Y2dVd09GS0FBQUFBRWxGVGtTdVFtQ0MifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBREFBQUFBd0NBWUFBQUJYQXZtSEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc0lBQUE3Q0FSVW9Tb0FBQUFIY1NVUkJWR2hEN1puUkswTlJITWNQcmxMamdTU3NsZ2RhUEVudFFmSE9pNlFrZWZiTXdvTy9RSkhtdjlCZUtDOFViMlFQcTFFa1N0U2VseWxXRmpXLzc5azk2Mnc3VzZiY2M5WHZVOTk3ZnZkdTdYNi85NTZkaC9NVERNUFV4Q0d0a3BLa1QxTEJZK0dldURjOHdFdEQ5Skt1U0tZZnRpRjRnYWNxbXR4UkIybVJmRFFVR2hScjBTMHhPVEVsQW9GMithRlg1SEx2NHZ6aVJPekdOa1U2L1loTDE2UUk2UXNuQ2xNQXZMSVl6TWYzRTZLcnM3dDQxUkl2Mll4WVdCeFhJYUtrUFJTS1puZlVXY0lCVDk2MmVRQVA4T0lpdmVtWTNnRCtQRTRxK1ZhYU51R1I0dGNlN2dwbHRWZGdPbzFGT2xCaStyU2lVSmdDU0djbWd6RHZwWEVkOWVDSU1zK21LZlN2NEFDMjRRQzIrVkVBckFCcUJWSzFYMmhvR2JVSkw2TitoUVBZaGdQWWhnUFloZ1BZaGdQWWhnUFloZ1BZaGdQOEZjZEhCMjVWSDE4R2dQbnBtYmxTWFEvZkJhZzByK3BhbUFMSS9mZDgva09lZUVrdDg1cVhzdDRBTUFWQUkwRmNKczdraVpmVWV2S2FGK2xOeHhRZ2pzUDJ6b2JjMXZhYVN2UHdBQzh1MHB0T2l6dnFwRWl6MmRkTXorblpvUWdHQjBSL1gwZzRUc045dGw4eEZCNldJNllOV2t3cjBYbng5SHlQUzdla1pWTFZOREtCaHRvTkNidGJmaEM4R0p0ODlXZ2pyWk5zdDFuaEFWNFlocWxDaUcrQmlBZ1F5eUJ6VGdBQUFBQkpSVTVFcmtKZ2dnPT0ifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBREFBQUFBd0NBWUFBQUJYQXZtSEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFHYlNVUkJWR2hEN1prL1N3TkJFTVZIUFVHSUZvcUlHamdzL0FBaXBCQzB0N1FSRVd0clBkVENUeUFvRXIrRnBMSVZUS2VZSWhBRkxTeEVJWFV3Z2dZTUNqcHYzWU9WMndoQnVEbGhmdkJ1L3dSeTcyWG5VdHlRb2lnZENWaWJyQ3JybmZXWnNuQlAzQnNlNEtVcnhsbFhMTjhYU3doZTRDbEJqeDFka0JiSlo4SndtcmFpUFZxWVg2UmNidEI4bUJhdDFpdWRYNXpTWVhHWDZ2VjdiRjJ6Q3F3UExHSjhBWEJrUlpndkhWZG9aSGowZTFlSXAyYURWbGJuNGhBUjZ3aVRtRjQ3dXF6aGdsOWUyanlBQjNpeEdHOHV2aFBBd3hQVXFpK3BsMDBuVUU2emhTRk1VVDc5bU1UNFRzQTg4Vmt4RHh3dmlYOGpYNEIvaFFhUVJnTklvd0drMFFEU2FBQnBOSUEwR2tBYURTQ05CcEJHQTBpakFhVFJBTkpvQUdsOEFjejc5M2I3elN5eWdPUGxSMjhBK0FLZ2tVQ1hsYkpaWkFISGkvSG00Z3RRd21YL1lNZTgxcFlHSHVERllyeTU5Tm5ScGNaYWFqNDN4czdLSjVUUFQ5SGtSRWhCMEhXZjdVK2diTkJpMm9pVzZlSHhEbHUzckhWV29veDhvS0Yydy9JMTNDUUVMOTRtMzI4TXNMWlowbTFXZUlBWFJWRVNFSDBCczRqWXpYZWt0bjRBQUFBQVNVVk9SSzVDWUlJPSJ9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFEQUFBQUF3Q0FZQUFBQlhBdm1IQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQUlGU1VSQlZHaEQ3Wm5mSzROUkhNYS9ZMHFOQzVLd0RFVitYRW50UW5IdjBvMGsxNjVadVBBWEtOTDhGOW9ONVlheU8rSkNqYUw1a1FpM3l4UXJpemJmNSt4OTE1a2RXMHZ0bkhRKzliem52Tys3OWo3UGU3N3ZPbnNQV1N5V1gvR3lGbGluckU5V3RzckNOWEZ0ZUlDWGltaGpuYkZVWDZ4RDhBSlBSWGljVmdacGtYdzRFT2lseGRBcWpZOU5rTS9YSUU1V2kxVHFuUTZQOW1ranZFSlBUM2M0ZE00S3NyNnc0NklLZ0NFTHczeGs2NFNhbTFweVJ6WHhra3pROU15b0d5TEUya1RIcGNacFpXYXh3WjNYYlI3QUE3dzRDRzh5cWhIQXcrT05uYjVWdld3RWNJU3FCMDRmNVRRU2JNUVJsRThkT2k2cUVSQlB2QTd6SGphY3pXUm9iM2M3M3dlU2w2SmZJMVVBYldUNWJ0L2RYSXYrN1ZXY1E1UzNaMVFBOFB6NFVOQ1d3N2dBbFdJRDZNWUcwSTBOb0JzYlFEZkdCZWpzNmlsb3kyRmNnTDdCb1Z3N3dLMXFydndEMVVmRVpQWW03czVwcXdkbW9CbWVnV0lTSi9kQi8xRGVhb0ZubzBZQXMxSFhzTnd2aFhFbFZDazJnRzVzQU4zWUFMcXhBWFJqQStqbVh3WVE3OS9UNlEreFl3S1NsNEsxQWFBS2dJVUVPajZKaWgwVGtMd0liektxQUJGczF0YVh4V3R0M2NBRHZEZ0lieksxVGlzVFkwMG1YeE90QjlFZDh2dTdxYU05UUY1dnhldHNmd0psZ3lXbStkQVUzVCtJTjlhWHJEbFdVUm1wd0lMYUJRdC95MHdRdkNnWCtVcFJ6MXBpNlY1bWhRZDRzVmdzUlJCOUEyaFMvdWR5a1Rwd0FBQUFBRWxGVGtTdVFtQ0MifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBREFBQUFBd0NBWUFBQUJYQXZtSEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc0lBQUE3Q0FSVW9Tb0FBQUFQZlNVUkJWR2hEN1psclNCUlJGTWYvbTQrc0xDc2p3NmpvQVVXWlZDUWlmcWdNc2RjbVVhQmxTUVNsWklWR1VkU0hncUF2VVVZUENvV0lWTW9zS2wvWVUzdGg3eVJOS2t3VHMvZmJLTk5xdStkNmRoMXoxSmwxMmRrUCs0T3pjODZNdVAvL3ZYZG03NTBMTjI3Y2RJaW5pR1FSZDBVMGk3QTRPZWc3NmJ0SkEyblJ4UkFSRDBXby9XTWpnclNRcG5hWStLaUUzSkx6U2NPR1JTRnBXUkZtaEFGOSs4cHJUcU9oQVNndUJRNW16RUpkM1hrNlZTWWlSTVJ2S3F5b0dhQXVTeVh4eHc0VUljQ3Y1YVJSdlAwS3hLK3htVWdSc1pjU0t6MzRxQ1NPUHFqbGpSWlBrQWJTd2todFN0UjZnRzRlejl0NUZxY1BtNDZnNFJScWxsSnArSGhSWWtXdEIrUWQ3eXJpQ1lXV2RrOGpOUU9HY081aUJsNjlxZVZLT3k1aDRHbjFJMlNkT1lDVUhUSFlscHFBSHorLzg1V3VjUWtET1FWcDR0TUNpK1V2M245Nmc5NjlmRnN1YU1Cd0F4Ky92RVA1azN0Y0FYTm14SEttRGNNTkhNM1pJMXVlOE8zamgza1JpMld1RlVNTjBGaC9XSEdUS3lBaWZENW4yakhVd0luOHcyaHEvaVZ6YjYrZWlKbTdTdVo2TU14QXN4Qis3VlloVjBEWTFFaDRDUk42TWN4QVljbEoyK1BTdzhNVHNlWkVtZXZGT0FQRnh6a0RKbzRMZ1gvL3dWenB3eEFEeGFWNStQemxBMWNtTEYrNG5uUDlHR0lnNzFJbVo4Q1lrUk1RT0dRRVYvcHh1b0hIeis3ajVlc2FyaURHZmdKbjl1RjBBMW5uRG5JRzJmTEI0MEs1c2crbkdxRFo1dk1YbFZ3QjBaSHhuTm1QVXcxa25OMW5temI0OVJzbzF0cG1tWGNIM1FZeXorN0hsbDByNUNSTUQvVDNaWS9GS3AyWlBUMkdzKzZoeTBCdGZSVUtMaDlIVlUwRmtyY3ZRdjZWMW1kNVYrUVVwT1BQbjVZWENqUmROczljSXZQdW9zdkFoZXVuYlNKK05UWGkyS2xVVGIxQjA0WWJkMndMYzRTSFJOazFiVkJEbDRHVnNac1F2eWdGUGIxOStBdzA5VWEyV0xBb0oyMXgwVWt5ZHdTNjd3R2FyKy9kZmtyOEFBWHhtYTU3bzZRMG56TmdjbEM0cmhWWFYrZzJRTkM4WmVmR0k1cDZnL0p2RFo5bGJqTDF3TklGNjJUdUtPd3lZRVZMYnhRV24rQXJOR21iaW9CQmdWdzVCclVYVy9ReUZaVWw4cUFaYXVuczNFUFNnQlV2VDI4MC8yN2l5b1FkRzlJeGRsUXcxL29ZUDkwbXRZM21idldBRXJYZWFCVVBEQjg2Mm03eG5lRXdBMFJIOXdheEpIbzFaNDdGWVVQb2Yyajg3MDdmakQ3aWllTS9JQUNKY1Z2NWluMTBOSVRVRE1pWHV3K0tMUEJwMjRpRzBTaHVxeW16cEZSTkwzZHBJd0ZYYjh2Y0pWQm9rZHFVcUJuSXBvLzlhZlBsYTIyaklRMmtoWkhhbEtnTklSbzR0TVVVTkdxb0dXdFg1V0thV0hNNGV6alJzS0dXSi9IVjlYbDBxa0lFYlRHMVBxYzdnVGJVeWtYUW5ld0tRVnBVTi9rNmc5cDhnd2lqdDFsSmc0czhUdHk0Y1RXQWY1cGp1VVhnbzV5QkFBQUFBRWxGVGtTdVFtQ0MifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBREFBQUFBd0NBWUFBQUJYQXZtSEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc0lBQUE3Q0FSVW9Tb0FBQUFJaFNVUkJWR2hEN1pqQlN3SkJGTVpmWlJCWWFpSlJDWXRCSUhTS3dFTlE5NDVkSXFKejU1THEwRjhRRkdIL1JYanFhdVN0eUlOZ1FSRUprV0VkUllNU2tvS2FiMXBqRnNmSWxKM1I5Z2ZmenU2NnVOL2JlVFBNRzNMUUdCZlRHbE9hNlkzcHcyYmhuWGczUE1CTFF3d3puVFBKL2xpRjRBV2VhdWd5V3hGRWk4Z25EV09jMXFQYk5Ec3pSMjUzUC8vUkxzcmxGem81VGRCZWJJdnkrVnZjdW1DS01MM2pvb29zQUhSWkRPYmpCeW55RHdhKzdpcWlXQ3JRNHRKME5ZZ28wejVPcW5TYnJjZ3lEdmp5cXMwRGVJQVhFKzVOUk5ZREdEeXVUUHJaOXJTcEI5SnBLaktBVTZSUEwwNnF5SHFBajNoZHpBUEJTODFzSkF1Z3JXajdBR1JqQVBNdVphOTVZd3ZoQ1prTnF3ZmhHY3ZEVGdxMUFsbHYvellEdE9rQjBYQWo2YXRWQ3NGNEkrYUJNd1pVMDVFQjhPVnFwZkxLTDNSQThHSlpTZ05aQUZoMzAxa3F5UzkwUVBEQ3ZZbklBb2pqc0xPN3lWZUJxb0VIZURIaDNrUjZ6Rllrd3pSZmVpb01IU2NQS1JnTTBlaUlRUzVYdzJWcFV5QnRVSkd0Umhmb0xuZURXMWRNSzB3MWFTUUQ5ZWNsRXlabEhRUXYwcHI0Si9ESm5WMkpGcW41WFluUW1MMFYybjJ1UmJzUzRiRGF3ajZiYldKWFFyVjVBQTkvM3BXd08yM3FnWFNxdHlzaEN3Q0Rob29GM21pRFAvQnQxZUs1SXhkemJZVVRnR3FjQUZUakJLQ2FqZ3lBci9ZZUgvUXA2Z1V2LzZ5b3h5SktOZkRRVkZIdjg0WEk2ekhJNDdXM3FFZmFKSTcrZVZIZng3VEJwTHFvaHdkNGNkQVFvazlmRGFzU2w2bG4vZ0FBQUFCSlJVNUVya0pnZ2c9PSJ9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFEQUFBQUF3Q0FZQUFBQlhBdm1IQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzSUFBQTdDQVJVb1NvQUFBQUl6U1VSQlZHaEQ3Wm5OSzBSUkdNWmZqRkxqYThUNHFzbENLU3ZKTEJScmxoWWtmNEExRXhiK0FrVWEvZ3FKc2lWMnhHS0VJbEdpN0h4a0ZJb28zdWZNdmJwakR1ZWl6cmxUNTFmUDNLK2E5M251K1pqVEhMSllMTjhTWW8yeVVxeFgxcnRtb1NacXd3TzgvSW82MWo1TDlzVW1CQy93bEVPQmMvU0N0RWplRm9zMTAxaGlpcnE3ZWlrY0xoVVBkZkgwOUVpYlc2czBtNXlreThzejNEcGd4Vmx2dUhDUkJVQ1RKV0YrY1dHSHFpTFZtYnVHdUV2ZjB1QlFweHNpd1pyRGlZc3NBTjUreDN4eWlYcDcrdW1kRy9EbW11Zyt6VzJKeHRSQUFidXFqQkRWUkRQbnEydkxOSklZd0tOZEZscmhFMWtBREo3UVh1cEJkSnZySzZMMFhlYUJiaUpWUk5IYVRIZHFqNWZoRnJwUE1VNWNDcDJqRnpIaTNUNlBOMjhLdDdabi9PWE1ScklBV2VqcU5qTDgxRllHQ0RvMmdHbVVBVENObWNKUGJXV0E4Z3JueEFCK2Fpc0RZQjZ1cU5UYkVxaUZtcWl0UW1aTFRGNm54d2JuVHdrdHJaOVdzenpuL1NCV3RrQVExa0xnenkwQTgxZ0w2ZnhGUmkzVVJHMFZ5Z0JCV0F2OWhES0F6amYvRlQrMTgzNFEyd0NtVVFiUStRdjhGVCsxbFFIc1d1Z1BvSlpkQytVTE5vQnBiQURUMkFDbWtRVVEvNysvdkR5TGl5RGc4WksxTndCa0FiQ1JRTnM3RytJaUNIaThDRzllWkFFVzhURTlNeUgrMWpZTlBNQ0xnL0RtcGNnNWV0bGo5YVh2YjZQckd5dlUyTmhFRGZVeENvVit2Yy8yTDlCdHNNV0VqWTN6aXhQY09tSU5zM0s2a1F4c3FCMnlzQ0FLZ3VCRnVzbjNFeVdzY1picGJWWjRnQmVMeFpJRDBRZEFXaGxtM28zanV3QUFBQUJKUlU1RXJrSmdnZz09In0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURBQUFBQXdDQVlBQUFCWEF2bUhBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNJQUFBN0NBUlVvU29BQUFBTmJTVVJCVkdoRDdaZGRTQlJSR0lhL21WVVE3Q0pGUWlqRXpDeEN5Z2hCcUFWQlJic1RsQWdTK2dFam9nS0pBaStLcUFzbERhRS82RW9peFF3S29TQkNRY3RNUVFvalExTXpFY085c0RKSVNIWjErOTdqbkpoMVp0Wnh4NkxnUFBEdTJUTXo1OHo3bmQ4NXBGQW9GQXFGUXFGUVJDT0hkWVgxampYTkNoc3A4cmllemZvbmlXUFZzWUlzbUhZUzd1TzVCTmFxMFl4MHJjbldOTDA1SEY3Y3FldHhWSkIvaE5MVGQ5RzJyWG1VbXBwSmdjQVlmUmp0bzQvanI2bTc1ejRGZ3orNWlQYWU0Nm5nUHdPaUJwZjhpUUI0U0doOWJDWnhjM29PblQ3WlNCbWNPakgxZVppdTN6NUtJeHdRRTJMNVdTTGpobWdCWUFpY1loMWl3UUh5TGtDVllTb3VPa0hIajkwZ24yL2xZZ3NMSVdwdXZVQ1AybXFOS3dJRWc5NW9adDAwOGhhY0FraGxQV1U1TjEwVTBQTDFOZjJ1ekVzUVJQVkZ2K3lKNVNDUS9heUF5Sm13Q3dCdjdXZmxwS1ZsMHRtcUd2THZLNkhFeEhYaXBoTkRRd05VZGlDWHdqd3Q2MnY3b3c0Ykp6Q2Nxczd2cHNYRkVMVTA5ZEIwWUpLdU5WVFQ1T1FZYmlPSVhGWkVUK2hHYWdiRFJwaHZiZW1sa3VMeUZjMkRaKzBQUlN0aXdzWmlIbXphdUozOGV3K0tlanFmUHhidmhnZDRZVkFwdkVWZ0Z3REd2R2o1NUtRVWNjRU5IUjF0SXNWcTQ0VXRHWHRFS3V1REIzZ3hFTjdNMkFVZ21nL0RaalY4bTUwUktaWktMOGp5c2o1ZzhtTHBXcnNBeE14ek0yek16TXdzelMrczgxNlE1V1Y5d09URnNpcllCU0FteWZ3OE5oZjNwS1JnNGVKbGdqY3BMOGp5c2o1ZzhtSlpTdTBDRUR2aHE5NE9rWEZMMHZxbCtZSWQxZ3V5dkt3UG1MeFlkbW03QUZyeGM3WHVITTNOL1JBWDNGQllXQ3JTaVltM0lvMFZmRjRBV1I4OHdJdUI4R2JHTGdEc2VvUGpuNGFwbk5mMXpxNG5yb1pUY1ZFWjZicVB1cnFieEhvZUN5aUhieVBVVTFoUUt0NE5EL0RDRExMZ0xZSm9PM0U3SzZaUDNTeGVTV291ZDY5cUp3YllpWWVHWHhxNUNHQytpR1haaVgxR3VoeU1uVWJXZDFZeWF3UExycmRzME9qTDF5a0tMUVFwZTBjK3Q2YTdZaTBQTGxIWGkzdjg3M2ViWXNLK1lUV3dLbG16TEF0T1BlQUZyTlg0RklsRFQ1emhyMUhzc0U1ZzJOeTZVeWxiSHFiWDdHdlVDM21hcHQvbDgwQldmSHdDNWZzclZqd1A4UE1qL1B4aEx1dHRHVnREY01MaWs1YUdWbDErQ2pOSjNJLzVSUFkzd0pENkw4L0VDb1ZDb1ZBb0ZBcEZOSWgrQVVuSUxDRzh6MGcyQUFBQUFFbEZUa1N1UW1DQyJ9LGZ1bmN0aW9uKG1vZHVsZSxleHBvcnRzLF9fd2VicGFja19yZXF1aXJlX18pe2NvbnN0IEJsb2NrVHlwZT1fX3dlYnBhY2tfcmVxdWlyZV9fKDEpLEFyZ3VtZW50VHlwZT1fX3dlYnBhY2tfcmVxdWlyZV9fKDMpLFNhbmRib3hSdW5uZXI9X193ZWJwYWNrX3JlcXVpcmVfXygyOCksQ2FzdD1fX3dlYnBhY2tfcmVxdWlyZV9fKDIpO2NsYXNzIGpnSmF2YXNjcmlwdHtjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLnJ1bm5pbmdFZGl0b3JVbnNhbmRib3hlZD0hMX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ0phdmFzY3JpcHQiLG5hbWU6IkphdmFTY3JpcHQiLGlzRHluYW1pYzohMCxibG9ja3M6W3tvcGNvZGU6InVuc2FuZGJveCIsdGV4dDoiUnVuIFVuc2FuZGJveGVkIixibG9ja1R5cGU6QmxvY2tUeXBlLkJVVFRPTixoaWRlRnJvbVBhbGV0dGU6dGhpcy5ydW5uaW5nRWRpdG9yVW5zYW5kYm94ZWR9LHtvcGNvZGU6InNhbmRib3giLHRleHQ6IlJ1biBTYW5kYm94ZWQiLGJsb2NrVHlwZTpCbG9ja1R5cGUuQlVUVE9OLGhpZGVGcm9tUGFsZXR0ZTohdGhpcy5ydW5uaW5nRWRpdG9yVW5zYW5kYm94ZWR9LHtvcGNvZGU6ImphdmFzY3JpcHRIYXQiLHRleHQ6IndoZW4gamF2YXNjcmlwdCBbQ09ERV0gPT0gdHJ1ZSIsYmxvY2tUeXBlOkJsb2NrVHlwZS5IQVQsaGlkZUZyb21QYWxldHRlOiF0aGlzLnJ1bm5pbmdFZGl0b3JVbnNhbmRib3hlZCxhcmd1bWVudHM6e0NPREU6e3R5cGU6QXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6Ik1hdGgucm91bmQoTWF0aC5yYW5kb20oKSkgPT09IDEifX19LHtvcGNvZGU6ImphdmFzY3JpcHRTdGFjayIsdGV4dDoiamF2YXNjcmlwdCBbQ09ERV0iLGJsb2NrVHlwZTpCbG9ja1R5cGUuQ09NTUFORCxhcmd1bWVudHM6e0NPREU6e3R5cGU6QXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6ImFsZXJ0KCdIZWxsbyEnKSJ9fX0se29wY29kZToiamF2YXNjcmlwdFN0cmluZyIsdGV4dDoiamF2YXNjcmlwdCBbQ09ERV0iLGJsb2NrVHlwZTpCbG9ja1R5cGUuUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntDT0RFOnt0eXBlOkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJNYXRoLnJhbmRvbSgpIn19fSx7b3Bjb2RlOiJqYXZhc2NyaXB0Qm9vbCIsdGV4dDoiamF2YXNjcmlwdCBbQ09ERV0iLGJsb2NrVHlwZTpCbG9ja1R5cGUuQk9PTEVBTixkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e0NPREU6e3R5cGU6QXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6Ik1hdGgucm91bmQoTWF0aC5yYW5kb20oKSkgPT09IDEifX19LHtibG9ja1R5cGU6QmxvY2tUeXBlLkxBQkVMLHRleHQ6IllvdSBjYW4gcnVuIHVuc2FuZGJveGVkIixoaWRlRnJvbVBhbGV0dGU6IXRoaXMucnVubmluZ0VkaXRvclVuc2FuZGJveGVkfSx7YmxvY2tUeXBlOkJsb2NrVHlwZS5MQUJFTCx0ZXh0OiJ3aGVuIHBhY2thZ2luZyB0aGUgcHJvamVjdC4iLGhpZGVGcm9tUGFsZXR0ZTohdGhpcy5ydW5uaW5nRWRpdG9yVW5zYW5kYm94ZWR9LHtibG9ja1R5cGU6QmxvY2tUeXBlLkxBQkVMLHRleHQ6IuKggCIsaGlkZUZyb21QYWxldHRlOiF0aGlzLnJ1bm5pbmdFZGl0b3JVbnNhbmRib3hlZH0se2Jsb2NrVHlwZTpCbG9ja1R5cGUuTEFCRUwsdGV4dDoiUGxheWVyIE9wdGlvbnMgPiIsaGlkZUZyb21QYWxldHRlOiF0aGlzLnJ1bm5pbmdFZGl0b3JVbnNhbmRib3hlZH0se2Jsb2NrVHlwZTpCbG9ja1R5cGUuTEFCRUwsdGV4dDoiUmVtb3ZlIHNhbmRib3ggb24gdGhlIEphdmFTY3JpcHQgRXh0LiIsaGlkZUZyb21QYWxldHRlOiF0aGlzLnJ1bm5pbmdFZGl0b3JVbnNhbmRib3hlZH1dfX1hc3luYyB1bnNhbmRib3goKXthd2FpdCB0aGlzLnJ1bnRpbWUudm0uc2VjdXJpdHlNYW5hZ2VyLmNhblVuc2FuZGJveCgiSmF2YVNjcmlwdCIpJiYodGhpcy5ydW5uaW5nRWRpdG9yVW5zYW5kYm94ZWQ9ITAsdGhpcy5ydW50aW1lLmV4dGVuc2lvbk1hbmFnZXIucmVmcmVzaEJsb2NrcygiamdKYXZhc2NyaXB0IikpfXNhbmRib3goKXt0aGlzLnJ1bm5pbmdFZGl0b3JVbnNhbmRib3hlZD0hMSx0aGlzLnJ1bnRpbWUuZXh0ZW5zaW9uTWFuYWdlci5yZWZyZXNoQmxvY2tzKCJqZ0phdmFzY3JpcHQiKX1ldmFsdWF0ZUNvZGUoY29kZSxhcmdzLHV0aWwscmVhbEJsb2NrSW5mbyl7aWYoITA9PT10aGlzLnJ1bnRpbWUuZXh0ZW5zaW9uUnVudGltZU9wdGlvbnMuamF2YXNjcmlwdFVuc2FuZGJveGVkfHx0aGlzLnJ1bm5pbmdFZGl0b3JVbnNhbmRib3hlZCl7bGV0IHJlc3VsdDt0cnl7cmVzdWx0PWV2YWwoY29kZSl9Y2F0Y2goQSl7cmVzdWx0PUF9cmV0dXJuIHJlc3VsdH1yZXR1cm4gbmV3IFByb21pc2UoQT0+e1NhbmRib3hSdW5uZXIuZXhlY3V0ZShjb2RlKS50aGVuKGU9PkEoZS52YWx1ZSkpfSl9amF2YXNjcmlwdFN0YWNrKEEsZSx0KXtjb25zdCBuPUNhc3QudG9TdHJpbmcoQS5DT0RFKTtyZXR1cm4gdGhpcy5ldmFsdWF0ZUNvZGUobixBLGUsdCl9amF2YXNjcmlwdFN0cmluZyhBLGUsdCl7Y29uc3Qgbj1DYXN0LnRvU3RyaW5nKEEuQ09ERSk7cmV0dXJuIHRoaXMuZXZhbHVhdGVDb2RlKG4sQSxlLHQpfWphdmFzY3JpcHRCb29sKEEsZSx0KXtjb25zdCBuPUNhc3QudG9TdHJpbmcoQS5DT0RFKSxpPXRoaXMuZXZhbHVhdGVDb2RlKG4sQSxlLHQpO3JldHVybiBpJiYiZnVuY3Rpb24iPT10eXBlb2YgaS50aGVuPyhhc3luYygpPT57Y29uc3QgQT1hd2FpdCBpO3JldHVybiBCb29sZWFuKEEpfSkoKTpCb29sZWFuKGkpfWphdmFzY3JpcHRIYXQoKXtpZighdGhpcy5ydW50aW1lLmV4dGVuc2lvblJ1bnRpbWVPcHRpb25zLmphdmFzY3JpcHRVbnNhbmRib3hlZCYmIXRoaXMucnVubmluZ0VkaXRvclVuc2FuZGJveGVkKXJldHVybiExO2NvbnN0IEE9dGhpcy5qYXZhc2NyaXB0Qm9vbCguLi5hcmd1bWVudHMpO3JldHVybighQXx8ImZ1bmN0aW9uIiE9dHlwZW9mIEEudGhlbikmJkF9fW1vZHVsZS5leHBvcnRzPWpnSmF2YXNjcmlwdH0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxKSxpPXQoMykscj10KDQpLG89dCgyKSxzPXQoNyksYT10KDMyNSksQj10KDM0MSksYz10KDM0MiksZz10KDM0Myk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMubWFwPW5ldyBnLHRoaXMucGF0aGVyPXt4OjAseTowLHdpZHRoOjEsaGVpZ2h0OjF9LHRoaXMucGF0aE5vZGVzPW5ldyBCfWdldEluZm8oKXtyZXR1cm57aWQ6ImpnUGF0aGZpbmRpbmciLG5hbWU6IlBhdGhmaW5kaW5nIixjb2xvcjE6IiM1Mzg2RTIiLGNvbG9yMjoiIzQxNjlCMSIsYmxvY2tzOlt7b3Bjb2RlOiJjcmVhdGVCbG9ja2FkZUF0Iix0ZXh0OnIoe2lkOiJqZ1BhdGhmaW5kaW5nLmJsb2Nrcy5jcmVhdGVCbG9ja2FkZUF0IixkZWZhdWx0OiJjcmVhdGUgYmxvY2thZGUgYXQgeDE6IFtYMV0geTE6IFtZMV0geDI6IFtYMl0geTI6IFtZMl0iLGRlc2NyaXB0aW9uOiJCbG9jayB0aGF0IGNyZWF0ZXMgYSBibG9ja2FkZSBpbiB0aGUgcGF0aGZpbmRpbmcgYXJlYS4ifSksYXJndW1lbnRzOntYMTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6LTcwfSxZMTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MjB9LFgyOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTo3MH0sWTI6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOi0yMH19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImNsZWFyQmxvY2thZGVzIix0ZXh0OnIoe2lkOiJqZ1BhdGhmaW5kaW5nLmJsb2Nrcy5jbGVhckJsb2NrYWRlcyIsZGVmYXVsdDoiY2xlYXIgYmxvY2thZGVzIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZW1vdmVzIGFsbCBibG9ja2FkZXMgaW4gdGhlIHBhdGhmaW5kaW5nIGFyZWEuIn0pLGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6InNldFBhdGhlclhZIix0ZXh0OnIoe2lkOiJqZ1BhdGhmaW5kaW5nLmJsb2Nrcy5zZXRQYXRoZXJYWSIsZGVmYXVsdDoic2V0IHBhdGhlciBzdGFydGluZyB4OiBbWF0geTogW1ldIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCBzZXRzIHRoZSBzdGFydGluZyBwb3NpdGlvbiBmb3IgdGhlIHBhdGhlci4ifSksYXJndW1lbnRzOntYOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxZOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMjB9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJzZXRXaWR0aEhlaWdodCIsdGV4dDpyKHtpZDoiamdQYXRoZmluZGluZy5ibG9ja3Muc2V0V2lkdGhIZWlnaHQiLGRlZmF1bHQ6InNldCBwYXRoZXIgd2lkdGg6IFtXSURUSF0gaGVpZ2h0OiBbSEVJR0hUXSIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgc2V0cyB0aGUgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgcGF0aCBmb2xsb3dlci4gVGhpcyBhbGxvd3Mgc3ByaXRlcyB0byBhdm9pZCBjbGlwcGluZyBpbnNpZGUgd2FsbHMgb24gdGhlIHdheSB0byB0aGUgZGVzdGluYXRpb24uIn0pLGFyZ3VtZW50czp7V0lEVEg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjU1fSxIRUlHSFQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjk1fX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToicGF0aFRvU3BvdCIsdGV4dDpyKHtpZDoiamdQYXRoZmluZGluZy5ibG9ja3MucGF0aFRvU3BvdCIsZGVmYXVsdDoiZmluZCBwYXRoIHRvIHg6IFtYXSB5OiBbWV0gYXJvdW5kIGJsb2NrYWRlcyIsZGVzY3JpcHRpb246IkJsb2NrIHRoYXQgZmluZHMgYSBwYXRoIGFyb3VuZCBibG9ja2FkZXMgaW4gdGhlIHBhdGhmaW5kaW5nIGFyZWEgdG8gZ2V0IHRvIGEgbG9jYXRpb24uIn0pLGFyZ3VtZW50czp7WDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6NjB9LFk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOi02MH19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LCItLS0iLHtvcGNvZGU6InNldExpc3RUb1BhdGgiLHRleHQ6cih7aWQ6ImpnUGF0aGZpbmRpbmcuYmxvY2tzLnNldExpc3RUb1BhdGgiLGRlZmF1bHQ6InNldCBbTElTVF0gdG8gY3VycmVudCBwYXRoIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCBzZXRzIGEgbGlzdCB0byB0aGUgY3VycmVudCBwYXRoLiJ9KSxhcmd1bWVudHM6e0xJU1Q6e3R5cGU6aS5MSVNUfX0saGlkZUZyb21QYWxldHRlOiEwLGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImdldFBhdGhBcyIsdGV4dDpyKHtpZDoiamdQYXRoZmluZGluZy5ibG9ja3MuZ2V0UGF0aEFzIixkZWZhdWx0OiJjdXJyZW50IHBhdGggYXMgW1RZUEVdIixkZXNjcmlwdGlvbjoiQmxvY2sgdGhhdCByZXR1cm5zIHRoZSBjdXJyZW50IHBhdGggaW4gYSBjZXJ0YWluIHdheS4ifSksYXJndW1lbnRzOntUWVBFOnt0eXBlOmkuU1RSSU5HLG1lbnU6InBhdGhSZXR1cm5UeXBlIn19LGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpuLlJFUE9SVEVSfV0sbWVudXM6e3BhdGhSZXR1cm5UeXBlOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJqc29uIGFycmF5cyIsImpzb24gYXJyYXkgd2l0aCBvYmplY3RzIiwianNvbiBvYmplY3QiLCJjb21tYSBzZXBlcmF0ZWQgbGlzdCJdLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfX19fWNyZWF0ZUJsb2NrYWRlQXQoQSl7Y29uc3QgZT1vLnRvTnVtYmVyKEEuWDEpLHQ9by50b051bWJlcihBLlkxKSxuPW8udG9OdW1iZXIoQS5YMiksaT1vLnRvTnVtYmVyKEEuWTIpO3RoaXMubWFwLmFkZChlLHQsbixpKX1jbGVhckJsb2NrYWRlcygpe3RoaXMubWFwLmNsZWFyKCl9c2V0UGF0aGVyWFkoQSl7Y29uc3QgZT1vLnRvTnVtYmVyKEEuWCksdD1vLnRvTnVtYmVyKEEuWSk7dGhpcy5wYXRoZXIueD1lLHRoaXMucGF0aGVyLnk9dH1zZXRXaWR0aEhlaWdodChBKXtjb25zdCBlPW8udG9OdW1iZXIoQS5XSURUSCksdD1vLnRvTnVtYmVyKEEuSEVJR0hUKTt0aGlzLnBhdGhlci53aWR0aD1lLHRoaXMucGF0aGVyLmhlaWdodD10fXBhdGhUb1Nwb3QoQSl7Y29uc3QgZT1vLnRvTnVtYmVyKEEuWCksdD1vLnRvTnVtYmVyKEEuWSksbj10aGlzLm1hcC50b0dyaWQoKSxpPXRoaXMucnVudGltZS5zdGFnZVdpZHRoLHI9dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0LGc9KHI+aT9yOmkpKyh0aGlzLnBhdGhlci5oZWlnaHQ+dGhpcy5wYXRoZXIud2lkdGg/dGhpcy5wYXRoZXIuaGVpZ2h0OnRoaXMucGF0aGVyLndpZHRoKSsyNCxFPWMubWFyZ2luR3JpZChuLmdyaWQsZyksUT1jLnBhZEdyaWQoRSx0aGlzLnBhdGhlci53aWR0aCx0aGlzLnBhdGhlci5oZWlnaHQpLHU9bi5vZmZzZXQ7dS5sZWZ0LT1nLHUudG9wKz1nO2NvbnN0IGw9bmV3IGEuR3JpZChRKSxoPW5ldyBhLkFTdGFyRmluZGVyKHthbGxvd0RpYWdvbmFsOiEwLGRvbnRDcm9zc0Nvcm5lcnM6ITB9KSx3PXMuc2ltcGxlKHtzdGFydDp7eDp0aGlzLnBhdGhlci54LXUubGVmdCx5Ok1hdGguYWJzKHRoaXMucGF0aGVyLnktdS50b3ApfSxlbmQ6e3g6ZS11LmxlZnQseTpNYXRoLmFicyh0LXUudG9wKX19KSxDPWEuVXRpbC5jb21wcmVzc1BhdGgoaC5maW5kUGF0aCh3LnN0YXJ0Lngsdy5zdGFydC55LHcuZW5kLngsdy5lbmQueSxsKSksST1uZXcgQjtmb3IoY29uc3QgQSBvZiBDKXtjb25zdCBlPUFbMF0rdS5sZWZ0LHQ9MC0oQVsxXS11LnRvcCk7SS5wdXNoKFtlLHRdKX10aGlzLnBhdGhOb2Rlcz1JfXNldExpc3RUb1BhdGgoQSxlKXtjb25zb2xlLmxvZyhBKTtlLnRhcmdldC5sb29rdXBPckNyZWF0ZUxpc3QoQS5MSVNULmlkLEEuTElTVC5uYW1lKS52YWx1ZT1wdXNoKEEuSVRFTSl9Z2V0UGF0aEFzKEEpe3N3aXRjaChvLnRvU3RyaW5nKEEuVFlQRSkudG9Mb3dlckNhc2UoKSl7Y2FzZSJqc29uIGFycmF5IHdpdGggb2JqZWN0cyI6cmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMucGF0aE5vZGVzLmdldE9iamVjdHMoKSk7Y2FzZSJqc29uIG9iamVjdCI6cmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMucGF0aE5vZGVzLmdldEFzT2JqZWN0KCkpO2Nhc2UiY29tbWEgc2VwZXJhdGVkIGxpc3QiOnJldHVybiB0aGlzLnBhdGhOb2Rlcy5nZXRDb21tYVNlcGVyYXRlZCgpO2RlZmF1bHQ6cmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMucGF0aE5vZGVzLmdldFJhdygpKX19fX0sZnVuY3Rpb24oQSxlLHQpe0EuZXhwb3J0cz10KDMyNil9LGZ1bmN0aW9uKEEsZSx0KXtBLmV4cG9ydHM9e0hlYXA6dCg0NCksTm9kZTp0KDY0KSxHcmlkOnQoMzI4KSxVdGlsOnQoMjYpLERpYWdvbmFsTW92ZW1lbnQ6dCgxMiksSGV1cmlzdGljOnQoMzcpLEFTdGFyRmluZGVyOnQoNjUpLEJlc3RGaXJzdEZpbmRlcjp0KDMyOSksQnJlYWR0aEZpcnN0RmluZGVyOnQoMzMwKSxEaWprc3RyYUZpbmRlcjp0KDMzMSksQmlBU3RhckZpbmRlcjp0KDY2KSxCaUJlc3RGaXJzdEZpbmRlcjp0KDMzMiksQmlCcmVhZHRoRmlyc3RGaW5kZXI6dCgzMzMpLEJpRGlqa3N0cmFGaW5kZXI6dCgzMzQpLElEQVN0YXJGaW5kZXI6dCgzMzUpLEp1bXBQb2ludEZpbmRlcjp0KDMzNil9fSxmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKEEpeyhmdW5jdGlvbigpe3ZhciBlLHQsbixpLHIsbyxzLGEsQixjLGcsRSxRLHUsbDtuPU1hdGguZmxvb3IsYz1NYXRoLm1pbix0PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEE8ZT8tMTpBPmU/MTowfSxCPWZ1bmN0aW9uKEEsZSxpLHIsbyl7dmFyIHM7aWYobnVsbD09aSYmKGk9MCksbnVsbD09byYmKG89dCksaTwwKXRocm93IG5ldyBFcnJvcigibG8gbXVzdCBiZSBub24tbmVnYXRpdmUiKTtmb3IobnVsbD09ciYmKHI9QS5sZW5ndGgpO2k8cjspbyhlLEFbcz1uKChpK3IpLzIpXSk8MD9yPXM6aT1zKzE7cmV0dXJuW10uc3BsaWNlLmFwcGx5KEEsW2ksaS1pXS5jb25jYXQoZSkpLGV9LG89ZnVuY3Rpb24oQSxlLG4pe3JldHVybiBudWxsPT1uJiYobj10KSxBLnB1c2goZSksdShBLDAsQS5sZW5ndGgtMSxuKX0scj1mdW5jdGlvbihBLGUpe3ZhciBuLGk7cmV0dXJuIG51bGw9PWUmJihlPXQpLG49QS5wb3AoKSxBLmxlbmd0aD8oaT1BWzBdLEFbMF09bixsKEEsMCxlKSk6aT1uLGl9LGE9ZnVuY3Rpb24oQSxlLG4pe3ZhciBpO3JldHVybiBudWxsPT1uJiYobj10KSxpPUFbMF0sQVswXT1lLGwoQSwwLG4pLGl9LHM9ZnVuY3Rpb24oQSxlLG4pe3ZhciBpO3JldHVybiBudWxsPT1uJiYobj10KSxBLmxlbmd0aCYmbihBWzBdLGUpPDAmJihlPShpPVtBWzBdLGVdKVswXSxBWzBdPWlbMV0sbChBLDAsbikpLGV9LGk9ZnVuY3Rpb24oQSxlKXt2YXIgaSxyLG8scyxhLEI7Zm9yKG51bGw9PWUmJihlPXQpLGE9W10scj0wLG89KHM9ZnVuY3Rpb24oKXtCPVtdO2Zvcih2YXIgZT0wLHQ9bihBLmxlbmd0aC8yKTswPD10P2U8dDplPnQ7MDw9dD9lKys6ZS0tKUIucHVzaChlKTtyZXR1cm4gQn0uYXBwbHkodGhpcykucmV2ZXJzZSgpKS5sZW5ndGg7cjxvO3IrKylpPXNbcl0sYS5wdXNoKGwoQSxpLGUpKTtyZXR1cm4gYX0sUT1mdW5jdGlvbihBLGUsbil7dmFyIGk7aWYobnVsbD09biYmKG49dCksLTEhPT0oaT1BLmluZGV4T2YoZSkpKXJldHVybiB1KEEsMCxpLG4pLGwoQSxpLG4pfSxnPWZ1bmN0aW9uKEEsZSxuKXt2YXIgcixvLGEsQixjO2lmKG51bGw9PW4mJihuPXQpLCEobz1BLnNsaWNlKDAsZSkpLmxlbmd0aClyZXR1cm4gbztmb3IoaShvLG4pLGE9MCxCPShjPUEuc2xpY2UoZSkpLmxlbmd0aDthPEI7YSsrKXI9Y1thXSxzKG8scixuKTtyZXR1cm4gby5zb3J0KG4pLnJldmVyc2UoKX0sRT1mdW5jdGlvbihBLGUsbil7dmFyIG8scyxhLGcsRSxRLHUsbCxoO2lmKG51bGw9PW4mJihuPXQpLDEwKmU8PUEubGVuZ3RoKXtpZighKGE9QS5zbGljZSgwLGUpLnNvcnQobikpLmxlbmd0aClyZXR1cm4gYTtmb3Iocz1hW2EubGVuZ3RoLTFdLGc9MCxRPSh1PUEuc2xpY2UoZSkpLmxlbmd0aDtnPFE7ZysrKW4obz11W2ddLHMpPDAmJihCKGEsbywwLG51bGwsbiksYS5wb3AoKSxzPWFbYS5sZW5ndGgtMV0pO3JldHVybiBhfWZvcihpKEEsbiksaD1bXSxFPTAsbD1jKGUsQS5sZW5ndGgpOzA8PWw/RTxsOkU+bDswPD1sPysrRTotLUUpaC5wdXNoKHIoQSxuKSk7cmV0dXJuIGh9LHU9ZnVuY3Rpb24oQSxlLG4saSl7dmFyIHIsbyxzO2ZvcihudWxsPT1pJiYoaT10KSxyPUFbbl07bj5lJiZpKHIsbz1BW3M9bi0xPj4xXSk8MDspQVtuXT1vLG49cztyZXR1cm4gQVtuXT1yfSxsPWZ1bmN0aW9uKEEsZSxuKXt2YXIgaSxyLG8scyxhO2ZvcihudWxsPT1uJiYobj10KSxyPUEubGVuZ3RoLGE9ZSxvPUFbZV0saT0yKmUrMTtpPHI7KShzPWkrMSk8ciYmIShuKEFbaV0sQVtzXSk8MCkmJihpPXMpLEFbZV09QVtpXSxpPTIqKGU9aSkrMTtyZXR1cm4gQVtlXT1vLHUoQSxhLGUsbil9LGU9ZnVuY3Rpb24oKXtmdW5jdGlvbiBBKEEpe3RoaXMuY21wPW51bGwhPUE/QTp0LHRoaXMubm9kZXM9W119cmV0dXJuIEEucHVzaD1vLEEucG9wPXIsQS5yZXBsYWNlPWEsQS5wdXNocG9wPXMsQS5oZWFwaWZ5PWksQS51cGRhdGVJdGVtPVEsQS5ubGFyZ2VzdD1nLEEubnNtYWxsZXN0PUUsQS5wcm90b3R5cGUucHVzaD1mdW5jdGlvbihBKXtyZXR1cm4gbyh0aGlzLm5vZGVzLEEsdGhpcy5jbXApfSxBLnByb3RvdHlwZS5wb3A9ZnVuY3Rpb24oKXtyZXR1cm4gcih0aGlzLm5vZGVzLHRoaXMuY21wKX0sQS5wcm90b3R5cGUucGVlaz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5vZGVzWzBdfSxBLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihBKXtyZXR1cm4tMSE9PXRoaXMubm9kZXMuaW5kZXhPZihBKX0sQS5wcm90b3R5cGUucmVwbGFjZT1mdW5jdGlvbihBKXtyZXR1cm4gYSh0aGlzLm5vZGVzLEEsdGhpcy5jbXApfSxBLnByb3RvdHlwZS5wdXNocG9wPWZ1bmN0aW9uKEEpe3JldHVybiBzKHRoaXMubm9kZXMsQSx0aGlzLmNtcCl9LEEucHJvdG90eXBlLmhlYXBpZnk9ZnVuY3Rpb24oKXtyZXR1cm4gaSh0aGlzLm5vZGVzLHRoaXMuY21wKX0sQS5wcm90b3R5cGUudXBkYXRlSXRlbT1mdW5jdGlvbihBKXtyZXR1cm4gUSh0aGlzLm5vZGVzLEEsdGhpcy5jbXApfSxBLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5vZGVzPVtdfSxBLnByb3RvdHlwZS5lbXB0eT1mdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy5ub2Rlcy5sZW5ndGh9LEEucHJvdG90eXBlLnNpemU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ub2Rlcy5sZW5ndGh9LEEucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuKGU9bmV3IEEpLm5vZGVzPXRoaXMubm9kZXMuc2xpY2UoMCksZX0sQS5wcm90b3R5cGUudG9BcnJheT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5vZGVzLnNsaWNlKDApfSxBLnByb3RvdHlwZS5pbnNlcnQ9QS5wcm90b3R5cGUucHVzaCxBLnByb3RvdHlwZS50b3A9QS5wcm90b3R5cGUucGVlayxBLnByb3RvdHlwZS5mcm9udD1BLnByb3RvdHlwZS5wZWVrLEEucHJvdG90eXBlLmhhcz1BLnByb3RvdHlwZS5jb250YWlucyxBLnByb3RvdHlwZS5jb3B5PUEucHJvdG90eXBlLmNsb25lLEF9KCksKG51bGwhPT1BP0EuZXhwb3J0czp2b2lkIDApP0EuZXhwb3J0cz1lOndpbmRvdy5IZWFwPWV9KS5jYWxsKHRoaXMpfSkuY2FsbCh0aGlzLHQoODkpKEEpKX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoNjQpLGk9dCgxMik7ZnVuY3Rpb24gcihBLGUsdCl7dmFyIG47Im9iamVjdCIhPXR5cGVvZiBBP249QTooZT1BLmxlbmd0aCxuPUFbMF0ubGVuZ3RoLHQ9QSksdGhpcy53aWR0aD1uLHRoaXMuaGVpZ2h0PWUsdGhpcy5ub2Rlcz10aGlzLl9idWlsZE5vZGVzKG4sZSx0KX1yLnByb3RvdHlwZS5fYnVpbGROb2Rlcz1mdW5jdGlvbihBLGUsdCl7dmFyIGkscixvPW5ldyBBcnJheShlKTtmb3IoaT0wO2k8ZTsrK2kpZm9yKG9baV09bmV3IEFycmF5KEEpLHI9MDtyPEE7KytyKW9baV1bcl09bmV3IG4ocixpKTtpZih2b2lkIDA9PT10KXJldHVybiBvO2lmKHQubGVuZ3RoIT09ZXx8dFswXS5sZW5ndGghPT1BKXRocm93IG5ldyBFcnJvcigiTWF0cml4IHNpemUgZG9lcyBub3QgZml0Iik7Zm9yKGk9MDtpPGU7KytpKWZvcihyPTA7cjxBOysrcil0W2ldW3JdJiYob1tpXVtyXS53YWxrYWJsZT0hMSk7cmV0dXJuIG99LHIucHJvdG90eXBlLmdldE5vZGVBdD1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLm5vZGVzW2VdW0FdfSxyLnByb3RvdHlwZS5pc1dhbGthYmxlQXQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5pc0luc2lkZShBLGUpJiZ0aGlzLm5vZGVzW2VdW0FdLndhbGthYmxlfSxyLnByb3RvdHlwZS5pc0luc2lkZT1mdW5jdGlvbihBLGUpe3JldHVybiBBPj0wJiZBPHRoaXMud2lkdGgmJmU+PTAmJmU8dGhpcy5oZWlnaHR9LHIucHJvdG90eXBlLnNldFdhbGthYmxlQXQ9ZnVuY3Rpb24oQSxlLHQpe3RoaXMubm9kZXNbZV1bQV0ud2Fsa2FibGU9dH0sci5wcm90b3R5cGUuZ2V0TmVpZ2hib3JzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS54LG49QS55LHI9W10sbz0hMSxzPSExLGE9ITEsQj0hMSxjPSExLGc9ITEsRT0hMSxRPSExLHU9dGhpcy5ub2RlcztpZih0aGlzLmlzV2Fsa2FibGVBdCh0LG4tMSkmJihyLnB1c2godVtuLTFdW3RdKSxvPSEwKSx0aGlzLmlzV2Fsa2FibGVBdCh0KzEsbikmJihyLnB1c2godVtuXVt0KzFdKSxhPSEwKSx0aGlzLmlzV2Fsa2FibGVBdCh0LG4rMSkmJihyLnB1c2godVtuKzFdW3RdKSxjPSEwKSx0aGlzLmlzV2Fsa2FibGVBdCh0LTEsbikmJihyLnB1c2godVtuXVt0LTFdKSxFPSEwKSxlPT09aS5OZXZlcilyZXR1cm4gcjtpZihlPT09aS5Pbmx5V2hlbk5vT2JzdGFjbGVzKXM9RSYmbyxCPW8mJmEsZz1hJiZjLFE9YyYmRTtlbHNlIGlmKGU9PT1pLklmQXRNb3N0T25lT2JzdGFjbGUpcz1FfHxvLEI9b3x8YSxnPWF8fGMsUT1jfHxFO2Vsc2V7aWYoZSE9PWkuQWx3YXlzKXRocm93IG5ldyBFcnJvcigiSW5jb3JyZWN0IHZhbHVlIG9mIGRpYWdvbmFsTW92ZW1lbnQiKTtzPSEwLEI9ITAsZz0hMCxRPSEwfXJldHVybiBzJiZ0aGlzLmlzV2Fsa2FibGVBdCh0LTEsbi0xKSYmci5wdXNoKHVbbi0xXVt0LTFdKSxCJiZ0aGlzLmlzV2Fsa2FibGVBdCh0KzEsbi0xKSYmci5wdXNoKHVbbi0xXVt0KzFdKSxnJiZ0aGlzLmlzV2Fsa2FibGVBdCh0KzEsbisxKSYmci5wdXNoKHVbbisxXVt0KzFdKSxRJiZ0aGlzLmlzV2Fsa2FibGVBdCh0LTEsbisxKSYmci5wdXNoKHVbbisxXVt0LTFdKSxyfSxyLnByb3RvdHlwZS5jbG9uZT1mdW5jdGlvbigpe3ZhciBBLGUsdD10aGlzLndpZHRoLGk9dGhpcy5oZWlnaHQsbz10aGlzLm5vZGVzLHM9bmV3IHIodCxpKSxhPW5ldyBBcnJheShpKTtmb3IoQT0wO0E8aTsrK0EpZm9yKGFbQV09bmV3IEFycmF5KHQpLGU9MDtlPHQ7KytlKWFbQV1bZV09bmV3IG4oZSxBLG9bQV1bZV0ud2Fsa2FibGUpO3JldHVybiBzLm5vZGVzPWEsc30sQS5leHBvcnRzPXJ9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDY1KTtmdW5jdGlvbiBpKEEpe24uY2FsbCh0aGlzLEEpO3ZhciBlPXRoaXMuaGV1cmlzdGljO3RoaXMuaGV1cmlzdGljPWZ1bmN0aW9uKEEsdCl7cmV0dXJuIDFlNiplKEEsdCl9fWkucHJvdG90eXBlPW5ldyBuLGkucHJvdG90eXBlLmNvbnN0cnVjdG9yPWksQS5leHBvcnRzPWl9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDI2KSxpPXQoMTIpO2Z1bmN0aW9uIHIoQSl7QT1BfHx7fSx0aGlzLmFsbG93RGlhZ29uYWw9QS5hbGxvd0RpYWdvbmFsLHRoaXMuZG9udENyb3NzQ29ybmVycz1BLmRvbnRDcm9zc0Nvcm5lcnMsdGhpcy5kaWFnb25hbE1vdmVtZW50PUEuZGlhZ29uYWxNb3ZlbWVudCx0aGlzLmRpYWdvbmFsTW92ZW1lbnR8fCh0aGlzLmFsbG93RGlhZ29uYWw/dGhpcy5kb250Q3Jvc3NDb3JuZXJzP3RoaXMuZGlhZ29uYWxNb3ZlbWVudD1pLk9ubHlXaGVuTm9PYnN0YWNsZXM6dGhpcy5kaWFnb25hbE1vdmVtZW50PWkuSWZBdE1vc3RPbmVPYnN0YWNsZTp0aGlzLmRpYWdvbmFsTW92ZW1lbnQ9aS5OZXZlcil9ci5wcm90b3R5cGUuZmluZFBhdGg9ZnVuY3Rpb24oQSxlLHQsaSxyKXt2YXIgbyxzLGEsQixjLGc9W10sRT10aGlzLmRpYWdvbmFsTW92ZW1lbnQsUT1yLmdldE5vZGVBdChBLGUpLHU9ci5nZXROb2RlQXQodCxpKTtmb3IoZy5wdXNoKFEpLFEub3BlbmVkPSEwO2cubGVuZ3RoOyl7aWYoKGE9Zy5zaGlmdCgpKS5jbG9zZWQ9ITAsYT09PXUpcmV0dXJuIG4uYmFja3RyYWNlKHUpO2ZvcihCPTAsYz0obz1yLmdldE5laWdoYm9ycyhhLEUpKS5sZW5ndGg7QjxjOysrQikocz1vW0JdKS5jbG9zZWR8fHMub3BlbmVkfHwoZy5wdXNoKHMpLHMub3BlbmVkPSEwLHMucGFyZW50PWEpfXJldHVybltdfSxBLmV4cG9ydHM9cn0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoNjUpO2Z1bmN0aW9uIGkoQSl7bi5jYWxsKHRoaXMsQSksdGhpcy5oZXVyaXN0aWM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gMH19aS5wcm90b3R5cGU9bmV3IG4saS5wcm90b3R5cGUuY29uc3RydWN0b3I9aSxBLmV4cG9ydHM9aX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoNjYpO2Z1bmN0aW9uIGkoQSl7bi5jYWxsKHRoaXMsQSk7dmFyIGU9dGhpcy5oZXVyaXN0aWM7dGhpcy5oZXVyaXN0aWM9ZnVuY3Rpb24oQSx0KXtyZXR1cm4gMWU2KmUoQSx0KX19aS5wcm90b3R5cGU9bmV3IG4saS5wcm90b3R5cGUuY29uc3RydWN0b3I9aSxBLmV4cG9ydHM9aX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoMjYpLGk9dCgxMik7ZnVuY3Rpb24gcihBKXtBPUF8fHt9LHRoaXMuYWxsb3dEaWFnb25hbD1BLmFsbG93RGlhZ29uYWwsdGhpcy5kb250Q3Jvc3NDb3JuZXJzPUEuZG9udENyb3NzQ29ybmVycyx0aGlzLmRpYWdvbmFsTW92ZW1lbnQ9QS5kaWFnb25hbE1vdmVtZW50LHRoaXMuZGlhZ29uYWxNb3ZlbWVudHx8KHRoaXMuYWxsb3dEaWFnb25hbD90aGlzLmRvbnRDcm9zc0Nvcm5lcnM/dGhpcy5kaWFnb25hbE1vdmVtZW50PWkuT25seVdoZW5Ob09ic3RhY2xlczp0aGlzLmRpYWdvbmFsTW92ZW1lbnQ9aS5JZkF0TW9zdE9uZU9ic3RhY2xlOnRoaXMuZGlhZ29uYWxNb3ZlbWVudD1pLk5ldmVyKX1yLnByb3RvdHlwZS5maW5kUGF0aD1mdW5jdGlvbihBLGUsdCxpLHIpe3ZhciBvLHMsYSxCLGMsZz1yLmdldE5vZGVBdChBLGUpLEU9ci5nZXROb2RlQXQodCxpKSxRPVtdLHU9W10sbD10aGlzLmRpYWdvbmFsTW92ZW1lbnQ7Zm9yKFEucHVzaChnKSxnLm9wZW5lZD0hMCxnLmJ5PTAsdS5wdXNoKEUpLEUub3BlbmVkPSEwLEUuYnk9MTtRLmxlbmd0aCYmdS5sZW5ndGg7KXtmb3IoKGE9US5zaGlmdCgpKS5jbG9zZWQ9ITAsQj0wLGM9KG89ci5nZXROZWlnaGJvcnMoYSxsKSkubGVuZ3RoO0I8YzsrK0IpaWYoIShzPW9bQl0pLmNsb3NlZClpZihzLm9wZW5lZCl7aWYoMT09PXMuYnkpcmV0dXJuIG4uYmlCYWNrdHJhY2UoYSxzKX1lbHNlIFEucHVzaChzKSxzLnBhcmVudD1hLHMub3BlbmVkPSEwLHMuYnk9MDtmb3IoKGE9dS5zaGlmdCgpKS5jbG9zZWQ9ITAsQj0wLGM9KG89ci5nZXROZWlnaGJvcnMoYSxsKSkubGVuZ3RoO0I8YzsrK0IpaWYoIShzPW9bQl0pLmNsb3NlZClpZihzLm9wZW5lZCl7aWYoMD09PXMuYnkpcmV0dXJuIG4uYmlCYWNrdHJhY2UocyxhKX1lbHNlIHUucHVzaChzKSxzLnBhcmVudD1hLHMub3BlbmVkPSEwLHMuYnk9MX1yZXR1cm5bXX0sQS5leHBvcnRzPXJ9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDY2KTtmdW5jdGlvbiBpKEEpe24uY2FsbCh0aGlzLEEpLHRoaXMuaGV1cmlzdGljPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIDB9fWkucHJvdG90eXBlPW5ldyBuLGkucHJvdG90eXBlLmNvbnN0cnVjdG9yPWksQS5leHBvcnRzPWl9LGZ1bmN0aW9uKEEsZSx0KXt0KDI2KTt2YXIgbj10KDM3KSxpPXQoNjQpLHI9dCgxMik7ZnVuY3Rpb24gbyhBKXtBPUF8fHt9LHRoaXMuYWxsb3dEaWFnb25hbD1BLmFsbG93RGlhZ29uYWwsdGhpcy5kb250Q3Jvc3NDb3JuZXJzPUEuZG9udENyb3NzQ29ybmVycyx0aGlzLmRpYWdvbmFsTW92ZW1lbnQ9QS5kaWFnb25hbE1vdmVtZW50LHRoaXMuaGV1cmlzdGljPUEuaGV1cmlzdGljfHxuLm1hbmhhdHRhbix0aGlzLndlaWdodD1BLndlaWdodHx8MSx0aGlzLnRyYWNrUmVjdXJzaW9uPUEudHJhY2tSZWN1cnNpb258fCExLHRoaXMudGltZUxpbWl0PUEudGltZUxpbWl0fHwxLzAsdGhpcy5kaWFnb25hbE1vdmVtZW50fHwodGhpcy5hbGxvd0RpYWdvbmFsP3RoaXMuZG9udENyb3NzQ29ybmVycz90aGlzLmRpYWdvbmFsTW92ZW1lbnQ9ci5Pbmx5V2hlbk5vT2JzdGFjbGVzOnRoaXMuZGlhZ29uYWxNb3ZlbWVudD1yLklmQXRNb3N0T25lT2JzdGFjbGU6dGhpcy5kaWFnb25hbE1vdmVtZW50PXIuTmV2ZXIpLHRoaXMuZGlhZ29uYWxNb3ZlbWVudD09PXIuTmV2ZXI/dGhpcy5oZXVyaXN0aWM9QS5oZXVyaXN0aWN8fG4ubWFuaGF0dGFuOnRoaXMuaGV1cmlzdGljPUEuaGV1cmlzdGljfHxuLm9jdGlsZX1vLnByb3RvdHlwZS5maW5kUGF0aD1mdW5jdGlvbihBLGUsdCxuLHIpe3ZhciBvLHMsYSxCPShuZXcgRGF0ZSkuZ2V0VGltZSgpLGM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5oZXVyaXN0aWMoTWF0aC5hYnMoZS54LUEueCksTWF0aC5hYnMoZS55LUEueSkpfS5iaW5kKHRoaXMpLGc9ZnVuY3Rpb24oQSxlLHQsbixvKXtpZih0aGlzLnRpbWVMaW1pdD4wJiYobmV3IERhdGUpLmdldFRpbWUoKS1CPjFlMyp0aGlzLnRpbWVMaW1pdClyZXR1cm4gMS8wO3ZhciBzLGEsRSx1LGw9ZStjKEEsUSkqdGhpcy53ZWlnaHQ7aWYobD50KXJldHVybiBsO2lmKEE9PVEpcmV0dXJuIG5bb109W0EueCxBLnldLEE7dmFyIGgsdyxDPXIuZ2V0TmVpZ2hib3JzKEEsdGhpcy5kaWFnb25hbE1vdmVtZW50KTtmb3IoRT0wLHM9MS8wO3U9Q1tFXTsrK0Upe2lmKHRoaXMudHJhY2tSZWN1cnNpb24mJih1LnJldGFpbkNvdW50PXUucmV0YWluQ291bnQrMXx8MSwhMCE9PXUudGVzdGVkJiYodS50ZXN0ZWQ9ITApKSwoYT1nKHUsZSsodz11LChoPUEpLng9PT13Lnh8fGgueT09PXcueT8xOk1hdGguU1FSVDIpLHQsbixvKzEpKWluc3RhbmNlb2YgaSlyZXR1cm4gbltvXT1bQS54LEEueV0sYTt0aGlzLnRyYWNrUmVjdXJzaW9uJiYwPT0tLXUucmV0YWluQ291bnQmJih1LnRlc3RlZD0hMSksYTxzJiYocz1hKX1yZXR1cm4gc30uYmluZCh0aGlzKSxFPXIuZ2V0Tm9kZUF0KEEsZSksUT1yLmdldE5vZGVBdCh0LG4pLHU9YyhFLFEpO2ZvcihvPTA7Oysrbyl7aWYoKGE9ZyhFLDAsdSxzPVtdLDApKT09PTEvMClyZXR1cm5bXTtpZihhIGluc3RhbmNlb2YgaSlyZXR1cm4gczt1PWF9cmV0dXJuW119LEEuZXhwb3J0cz1vfSxmdW5jdGlvbihBLGUsdCl7dmFyIG49dCgxMiksaT10KDMzNykscj10KDMzOCksbz10KDMzOSkscz10KDM0MCk7QS5leHBvcnRzPWZ1bmN0aW9uKEEpe3JldHVybihBPUF8fHt9KS5kaWFnb25hbE1vdmVtZW50PT09bi5OZXZlcj9uZXcgaShBKTpBLmRpYWdvbmFsTW92ZW1lbnQ9PT1uLkFsd2F5cz9uZXcgcihBKTpBLmRpYWdvbmFsTW92ZW1lbnQ9PT1uLk9ubHlXaGVuTm9PYnN0YWNsZXM/bmV3IG8oQSk6bmV3IHMoQSl9fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49dCg0NSksaT10KDEyKTtmdW5jdGlvbiByKEEpe24uY2FsbCh0aGlzLEEpfXIucHJvdG90eXBlPW5ldyBuLHIucHJvdG90eXBlLmNvbnN0cnVjdG9yPXIsci5wcm90b3R5cGUuX2p1bXA9ZnVuY3Rpb24oQSxlLHQsbil7dmFyIGk9dGhpcy5ncmlkLHI9QS10LG89ZS1uO2lmKCFpLmlzV2Fsa2FibGVBdChBLGUpKXJldHVybiBudWxsO2lmKCEwPT09dGhpcy50cmFja0p1bXBSZWN1cnNpb24mJihpLmdldE5vZGVBdChBLGUpLnRlc3RlZD0hMCksaS5nZXROb2RlQXQoQSxlKT09PXRoaXMuZW5kTm9kZSlyZXR1cm5bQSxlXTtpZigwIT09cil7aWYoaS5pc1dhbGthYmxlQXQoQSxlLTEpJiYhaS5pc1dhbGthYmxlQXQoQS1yLGUtMSl8fGkuaXNXYWxrYWJsZUF0KEEsZSsxKSYmIWkuaXNXYWxrYWJsZUF0KEEtcixlKzEpKXJldHVybltBLGVdfWVsc2V7aWYoMD09PW8pdGhyb3cgbmV3IEVycm9yKCJPbmx5IGhvcml6b250YWwgYW5kIHZlcnRpY2FsIG1vdmVtZW50cyBhcmUgYWxsb3dlZCIpO2lmKGkuaXNXYWxrYWJsZUF0KEEtMSxlKSYmIWkuaXNXYWxrYWJsZUF0KEEtMSxlLW8pfHxpLmlzV2Fsa2FibGVBdChBKzEsZSkmJiFpLmlzV2Fsa2FibGVBdChBKzEsZS1vKSlyZXR1cm5bQSxlXTtpZih0aGlzLl9qdW1wKEErMSxlLEEsZSl8fHRoaXMuX2p1bXAoQS0xLGUsQSxlKSlyZXR1cm5bQSxlXX1yZXR1cm4gdGhpcy5fanVtcChBK3IsZStvLEEsZSl9LHIucHJvdG90eXBlLl9maW5kTmVpZ2hib3JzPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbixyLG8scyxhLEIsYz1BLnBhcmVudCxnPUEueCxFPUEueSxRPXRoaXMuZ3JpZCx1PVtdO2lmKGMpZT1jLngsdD1jLnksbj0oZy1lKS9NYXRoLm1heChNYXRoLmFicyhnLWUpLDEpLHI9KEUtdCkvTWF0aC5tYXgoTWF0aC5hYnMoRS10KSwxKSwwIT09bj8oUS5pc1dhbGthYmxlQXQoZyxFLTEpJiZ1LnB1c2goW2csRS0xXSksUS5pc1dhbGthYmxlQXQoZyxFKzEpJiZ1LnB1c2goW2csRSsxXSksUS5pc1dhbGthYmxlQXQoZytuLEUpJiZ1LnB1c2goW2crbixFXSkpOjAhPT1yJiYoUS5pc1dhbGthYmxlQXQoZy0xLEUpJiZ1LnB1c2goW2ctMSxFXSksUS5pc1dhbGthYmxlQXQoZysxLEUpJiZ1LnB1c2goW2crMSxFXSksUS5pc1dhbGthYmxlQXQoZyxFK3IpJiZ1LnB1c2goW2csRStyXSkpO2Vsc2UgZm9yKGE9MCxCPShvPVEuZ2V0TmVpZ2hib3JzKEEsaS5OZXZlcikpLmxlbmd0aDthPEI7KythKXM9b1thXSx1LnB1c2goW3MueCxzLnldKTtyZXR1cm4gdX0sQS5leHBvcnRzPXJ9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDQ1KSxpPXQoMTIpO2Z1bmN0aW9uIHIoQSl7bi5jYWxsKHRoaXMsQSl9ci5wcm90b3R5cGU9bmV3IG4sci5wcm90b3R5cGUuY29uc3RydWN0b3I9cixyLnByb3RvdHlwZS5fanVtcD1mdW5jdGlvbihBLGUsdCxuKXt2YXIgaT10aGlzLmdyaWQscj1BLXQsbz1lLW47aWYoIWkuaXNXYWxrYWJsZUF0KEEsZSkpcmV0dXJuIG51bGw7aWYoITA9PT10aGlzLnRyYWNrSnVtcFJlY3Vyc2lvbiYmKGkuZ2V0Tm9kZUF0KEEsZSkudGVzdGVkPSEwKSxpLmdldE5vZGVBdChBLGUpPT09dGhpcy5lbmROb2RlKXJldHVybltBLGVdO2lmKDAhPT1yJiYwIT09byl7aWYoaS5pc1dhbGthYmxlQXQoQS1yLGUrbykmJiFpLmlzV2Fsa2FibGVBdChBLXIsZSl8fGkuaXNXYWxrYWJsZUF0KEErcixlLW8pJiYhaS5pc1dhbGthYmxlQXQoQSxlLW8pKXJldHVybltBLGVdO2lmKHRoaXMuX2p1bXAoQStyLGUsQSxlKXx8dGhpcy5fanVtcChBLGUrbyxBLGUpKXJldHVybltBLGVdfWVsc2UgaWYoMCE9PXIpe2lmKGkuaXNXYWxrYWJsZUF0KEErcixlKzEpJiYhaS5pc1dhbGthYmxlQXQoQSxlKzEpfHxpLmlzV2Fsa2FibGVBdChBK3IsZS0xKSYmIWkuaXNXYWxrYWJsZUF0KEEsZS0xKSlyZXR1cm5bQSxlXX1lbHNlIGlmKGkuaXNXYWxrYWJsZUF0KEErMSxlK28pJiYhaS5pc1dhbGthYmxlQXQoQSsxLGUpfHxpLmlzV2Fsa2FibGVBdChBLTEsZStvKSYmIWkuaXNXYWxrYWJsZUF0KEEtMSxlKSlyZXR1cm5bQSxlXTtyZXR1cm4gdGhpcy5fanVtcChBK3IsZStvLEEsZSl9LHIucHJvdG90eXBlLl9maW5kTmVpZ2hib3JzPWZ1bmN0aW9uKEEpe3ZhciBlLHQsbixyLG8scyxhLEIsYz1BLnBhcmVudCxnPUEueCxFPUEueSxRPXRoaXMuZ3JpZCx1PVtdO2lmKGMpZT1jLngsdD1jLnksbj0oZy1lKS9NYXRoLm1heChNYXRoLmFicyhnLWUpLDEpLHI9KEUtdCkvTWF0aC5tYXgoTWF0aC5hYnMoRS10KSwxKSwwIT09biYmMCE9PXI/KFEuaXNXYWxrYWJsZUF0KGcsRStyKSYmdS5wdXNoKFtnLEUrcl0pLFEuaXNXYWxrYWJsZUF0KGcrbixFKSYmdS5wdXNoKFtnK24sRV0pLFEuaXNXYWxrYWJsZUF0KGcrbixFK3IpJiZ1LnB1c2goW2crbixFK3JdKSxRLmlzV2Fsa2FibGVBdChnLW4sRSl8fHUucHVzaChbZy1uLEUrcl0pLFEuaXNXYWxrYWJsZUF0KGcsRS1yKXx8dS5wdXNoKFtnK24sRS1yXSkpOjA9PT1uPyhRLmlzV2Fsa2FibGVBdChnLEUrcikmJnUucHVzaChbZyxFK3JdKSxRLmlzV2Fsa2FibGVBdChnKzEsRSl8fHUucHVzaChbZysxLEUrcl0pLFEuaXNXYWxrYWJsZUF0KGctMSxFKXx8dS5wdXNoKFtnLTEsRStyXSkpOihRLmlzV2Fsa2FibGVBdChnK24sRSkmJnUucHVzaChbZytuLEVdKSxRLmlzV2Fsa2FibGVBdChnLEUrMSl8fHUucHVzaChbZytuLEUrMV0pLFEuaXNXYWxrYWJsZUF0KGcsRS0xKXx8dS5wdXNoKFtnK24sRS0xXSkpO2Vsc2UgZm9yKGE9MCxCPShvPVEuZ2V0TmVpZ2hib3JzKEEsaS5BbHdheXMpKS5sZW5ndGg7YTxCOysrYSlzPW9bYV0sdS5wdXNoKFtzLngscy55XSk7cmV0dXJuIHV9LEEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUsdCl7dmFyIG49dCg0NSksaT10KDEyKTtmdW5jdGlvbiByKEEpe24uY2FsbCh0aGlzLEEpfXIucHJvdG90eXBlPW5ldyBuLHIucHJvdG90eXBlLmNvbnN0cnVjdG9yPXIsci5wcm90b3R5cGUuX2p1bXA9ZnVuY3Rpb24oQSxlLHQsbil7dmFyIGk9dGhpcy5ncmlkLHI9QS10LG89ZS1uO2lmKCFpLmlzV2Fsa2FibGVBdChBLGUpKXJldHVybiBudWxsO2lmKCEwPT09dGhpcy50cmFja0p1bXBSZWN1cnNpb24mJihpLmdldE5vZGVBdChBLGUpLnRlc3RlZD0hMCksaS5nZXROb2RlQXQoQSxlKT09PXRoaXMuZW5kTm9kZSlyZXR1cm5bQSxlXTtpZigwIT09ciYmMCE9PW8pe2lmKHRoaXMuX2p1bXAoQStyLGUsQSxlKXx8dGhpcy5fanVtcChBLGUrbyxBLGUpKXJldHVybltBLGVdfWVsc2UgaWYoMCE9PXIpe2lmKGkuaXNXYWxrYWJsZUF0KEEsZS0xKSYmIWkuaXNXYWxrYWJsZUF0KEEtcixlLTEpfHxpLmlzV2Fsa2FibGVBdChBLGUrMSkmJiFpLmlzV2Fsa2FibGVBdChBLXIsZSsxKSlyZXR1cm5bQSxlXX1lbHNlIGlmKDAhPT1vJiYoaS5pc1dhbGthYmxlQXQoQS0xLGUpJiYhaS5pc1dhbGthYmxlQXQoQS0xLGUtbyl8fGkuaXNXYWxrYWJsZUF0KEErMSxlKSYmIWkuaXNXYWxrYWJsZUF0KEErMSxlLW8pKSlyZXR1cm5bQSxlXTtyZXR1cm4gaS5pc1dhbGthYmxlQXQoQStyLGUpJiZpLmlzV2Fsa2FibGVBdChBLGUrbyk/dGhpcy5fanVtcChBK3IsZStvLEEsZSk6bnVsbH0sci5wcm90b3R5cGUuX2ZpbmROZWlnaGJvcnM9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuLHIsbyxzLGEsQixjLGc9QS5wYXJlbnQsRT1BLngsUT1BLnksdT10aGlzLmdyaWQsbD1bXTtpZihnKXtpZihlPWcueCx0PWcueSxuPShFLWUpL01hdGgubWF4KE1hdGguYWJzKEUtZSksMSkscj0oUS10KS9NYXRoLm1heChNYXRoLmFicyhRLXQpLDEpLDAhPT1uJiYwIT09cil1LmlzV2Fsa2FibGVBdChFLFErcikmJmwucHVzaChbRSxRK3JdKSx1LmlzV2Fsa2FibGVBdChFK24sUSkmJmwucHVzaChbRStuLFFdKSx1LmlzV2Fsa2FibGVBdChFLFErcikmJnUuaXNXYWxrYWJsZUF0KEUrbixRKSYmbC5wdXNoKFtFK24sUStyXSk7ZWxzZSBpZigwIT09bil7Yz11LmlzV2Fsa2FibGVBdChFK24sUSk7dmFyIGg9dS5pc1dhbGthYmxlQXQoRSxRKzEpLHc9dS5pc1dhbGthYmxlQXQoRSxRLTEpO2MmJihsLnB1c2goW0UrbixRXSksaCYmbC5wdXNoKFtFK24sUSsxXSksdyYmbC5wdXNoKFtFK24sUS0xXSkpLGgmJmwucHVzaChbRSxRKzFdKSx3JiZsLnB1c2goW0UsUS0xXSl9ZWxzZSBpZigwIT09cil7Yz11LmlzV2Fsa2FibGVBdChFLFErcik7dmFyIEM9dS5pc1dhbGthYmxlQXQoRSsxLFEpLEk9dS5pc1dhbGthYmxlQXQoRS0xLFEpO2MmJihsLnB1c2goW0UsUStyXSksQyYmbC5wdXNoKFtFKzEsUStyXSksSSYmbC5wdXNoKFtFLTEsUStyXSkpLEMmJmwucHVzaChbRSsxLFFdKSxJJiZsLnB1c2goW0UtMSxRXSl9fWVsc2UgZm9yKGE9MCxCPShvPXUuZ2V0TmVpZ2hib3JzKEEsaS5Pbmx5V2hlbk5vT2JzdGFjbGVzKSkubGVuZ3RoO2E8QjsrK2Epcz1vW2FdLGwucHVzaChbcy54LHMueV0pO3JldHVybiBsfSxBLmV4cG9ydHM9cn0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQoNDUpLGk9dCgxMik7ZnVuY3Rpb24gcihBKXtuLmNhbGwodGhpcyxBKX1yLnByb3RvdHlwZT1uZXcgbixyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1yLHIucHJvdG90eXBlLl9qdW1wPWZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpPXRoaXMuZ3JpZCxyPUEtdCxvPWUtbjtpZighaS5pc1dhbGthYmxlQXQoQSxlKSlyZXR1cm4gbnVsbDtpZighMD09PXRoaXMudHJhY2tKdW1wUmVjdXJzaW9uJiYoaS5nZXROb2RlQXQoQSxlKS50ZXN0ZWQ9ITApLGkuZ2V0Tm9kZUF0KEEsZSk9PT10aGlzLmVuZE5vZGUpcmV0dXJuW0EsZV07aWYoMCE9PXImJjAhPT1vKXtpZihpLmlzV2Fsa2FibGVBdChBLXIsZStvKSYmIWkuaXNXYWxrYWJsZUF0KEEtcixlKXx8aS5pc1dhbGthYmxlQXQoQStyLGUtbykmJiFpLmlzV2Fsa2FibGVBdChBLGUtbykpcmV0dXJuW0EsZV07aWYodGhpcy5fanVtcChBK3IsZSxBLGUpfHx0aGlzLl9qdW1wKEEsZStvLEEsZSkpcmV0dXJuW0EsZV19ZWxzZSBpZigwIT09cil7aWYoaS5pc1dhbGthYmxlQXQoQStyLGUrMSkmJiFpLmlzV2Fsa2FibGVBdChBLGUrMSl8fGkuaXNXYWxrYWJsZUF0KEErcixlLTEpJiYhaS5pc1dhbGthYmxlQXQoQSxlLTEpKXJldHVybltBLGVdfWVsc2UgaWYoaS5pc1dhbGthYmxlQXQoQSsxLGUrbykmJiFpLmlzV2Fsa2FibGVBdChBKzEsZSl8fGkuaXNXYWxrYWJsZUF0KEEtMSxlK28pJiYhaS5pc1dhbGthYmxlQXQoQS0xLGUpKXJldHVybltBLGVdO3JldHVybiBpLmlzV2Fsa2FibGVBdChBK3IsZSl8fGkuaXNXYWxrYWJsZUF0KEEsZStvKT90aGlzLl9qdW1wKEErcixlK28sQSxlKTpudWxsfSxyLnByb3RvdHlwZS5fZmluZE5laWdoYm9ycz1mdW5jdGlvbihBKXt2YXIgZSx0LG4scixvLHMsYSxCLGM9QS5wYXJlbnQsZz1BLngsRT1BLnksUT10aGlzLmdyaWQsdT1bXTtpZihjKWU9Yy54LHQ9Yy55LG49KGctZSkvTWF0aC5tYXgoTWF0aC5hYnMoZy1lKSwxKSxyPShFLXQpL01hdGgubWF4KE1hdGguYWJzKEUtdCksMSksMCE9PW4mJjAhPT1yPyhRLmlzV2Fsa2FibGVBdChnLEUrcikmJnUucHVzaChbZyxFK3JdKSxRLmlzV2Fsa2FibGVBdChnK24sRSkmJnUucHVzaChbZytuLEVdKSwoUS5pc1dhbGthYmxlQXQoZyxFK3IpfHxRLmlzV2Fsa2FibGVBdChnK24sRSkpJiZ1LnB1c2goW2crbixFK3JdKSwhUS5pc1dhbGthYmxlQXQoZy1uLEUpJiZRLmlzV2Fsa2FibGVBdChnLEUrcikmJnUucHVzaChbZy1uLEUrcl0pLCFRLmlzV2Fsa2FibGVBdChnLEUtcikmJlEuaXNXYWxrYWJsZUF0KGcrbixFKSYmdS5wdXNoKFtnK24sRS1yXSkpOjA9PT1uP1EuaXNXYWxrYWJsZUF0KGcsRStyKSYmKHUucHVzaChbZyxFK3JdKSxRLmlzV2Fsa2FibGVBdChnKzEsRSl8fHUucHVzaChbZysxLEUrcl0pLFEuaXNXYWxrYWJsZUF0KGctMSxFKXx8dS5wdXNoKFtnLTEsRStyXSkpOlEuaXNXYWxrYWJsZUF0KGcrbixFKSYmKHUucHVzaChbZytuLEVdKSxRLmlzV2Fsa2FibGVBdChnLEUrMSl8fHUucHVzaChbZytuLEUrMV0pLFEuaXNXYWxrYWJsZUF0KGcsRS0xKXx8dS5wdXNoKFtnK24sRS0xXSkpO2Vsc2UgZm9yKGE9MCxCPShvPVEuZ2V0TmVpZ2hib3JzKEEsaS5JZkF0TW9zdE9uZU9ic3RhY2xlKSkubGVuZ3RoO2E8QjsrK2Epcz1vW2FdLHUucHVzaChbcy54LHMueV0pO3JldHVybiB1fSxBLmV4cG9ydHM9cn0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg3KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXtmb3IodmFyIEE9YXJndW1lbnRzLmxlbmd0aCxlPW5ldyBBcnJheShBKSx0PTA7dDxBO3QrKyllW3RdPWFyZ3VtZW50c1t0XTtpZihBcnJheS5pc0FycmF5KGUpJiZBcnJheS5pc0FycmF5KGVbMF0pKXRoaXMuX25vZGVzPWU7ZWxzZXt0aGlzLl9ub2Rlcz1bXTtmb3IobGV0IEEgb2YgZSlBcnJheS5pc0FycmF5KEEpfHwoQT1bXSksIm51bWJlciIhPXR5cGVvZiBBWzBdJiYoQVswXT0wKSwibnVtYmVyIiE9dHlwZW9mIEFbMV0mJihBWzFdPTApLHRoaXMuX25vZGVzLnB1c2goW0Nhc3QudG9OdW1iZXIoQVswXSksQ2FzdC50b051bWJlcihBWzFdKV0pfX1wdXNoKEEpe3RoaXMuX25vZGVzLnB1c2goQSl9Z2V0UmF3KCl7cmV0dXJuIG4uc2ltcGxlKHRoaXMuX25vZGVzKX1nZXRBc09iamVjdCgpe2NvbnN0IEE9dGhpcy5nZXRSYXcoKSxlPXt9O2xldCB0PTA7Zm9yKGNvbnN0IG4gb2YgQSl7ZVtDYXN0LnRvU3RyaW5nKHQrMSldPXt4Om5bMF0seTpuWzFdfSx0Kyt9cmV0dXJuIGV9Z2V0T2JqZWN0cygpe2NvbnN0IEE9dGhpcy5nZXRSYXcoKSxlPVtdO2Zvcihjb25zdCB0IG9mIEEpZS5wdXNoKHt4OnRbMF0seTp0WzFdfSk7cmV0dXJuIGV9Z2V0Q29tbWFTZXBlcmF0ZWQoKXtyZXR1cm4gdGhpcy5nZXRSYXcoKS5mbGF0KDEvMCkuam9pbigiLCIpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMiksaT10KDcpO2NsYXNzIHJ7c3RhdGljIF9jcmVhdGVBcnJheU9mTGVuZ3RoKEEsZSl7aWYoKEE9bi50b051bWJlcihBKSk8PTApcmV0dXJuW107aWYoIWlzRmluaXRlKEEpKXJldHVybltdO2NvbnN0IHQ9QXJyYXkuZnJvbShBcnJheShBKS5rZXlzKCkpLm1hcCgoKT0+ZSk7cmV0dXJuIGkuc2ltcGxlKHQpfXN0YXRpYyBfdmFsaWRhdGVVbnNpZ25lZEludGVnZXIoQSl7cmV0dXJuKEE9bi50b051bWJlcihBKSk8MCYmKEE9MCksaXNGaW5pdGUoQSl8fChBPTApLE1hdGgucm91bmQoQSl9c3RhdGljIF9zcGxpdE51bWJlcihBKXtjb25zdCBlPU1hdGgucm91bmQobi50b051bWJlcihBKSk7cmV0dXJuIDA9PT1lP1swLDBdOmlzRmluaXRlKGUpP1tNYXRoLmNlaWwoZS8yKSxNYXRoLmZsb29yKGUvMildOlswLDBdfXN0YXRpYyBtYXJnaW5HcmlkKEEsZSl7ZT1yLl92YWxpZGF0ZVVuc2lnbmVkSW50ZWdlcihlKTtjb25zdCB0PWkuc2ltcGxlKEEpLG49ci5fdmFsaWRhdGVVbnNpZ25lZEludGVnZXIodFswXT90WzBdLmxlbmd0aDowKSxvPXIuX2NyZWF0ZUFycmF5T2ZMZW5ndGgobiwwKTtmb3IobGV0IEE9MDtBPGU7QSsrKXtjb25zdCBBPWkuc2ltcGxlKG8pLGU9aS5zaW1wbGUobyk7dC51bnNoaWZ0KEEpLHQucHVzaChlKX1mb3IoY29uc3QgQSBvZiB0KWZvcihsZXQgdD0wO3Q8ZTt0KyspQS51bnNoaWZ0KDApLEEucHVzaCgwKTtyZXR1cm4gdH1zdGF0aWMgcGFkR3JpZChBLGUsdCl7Y29uc3Qgbz1NYXRoLm1heCgwLG4udG9OdW1iZXIoZSktMSkscz1NYXRoLm1heCgwLG4udG9OdW1iZXIodCktMSksYT1yLl9zcGxpdE51bWJlcihvKSxCPXIuX3NwbGl0TnVtYmVyKHMpLGM9aS5zaW1wbGUoQSksZz1pLnNpbXBsZShBKSxFPXtyb3c6MCx0aWxlOjB9O2Zvcihjb25zdCBBIG9mIGcpe2Zvcihjb25zdCBlIG9mIEEpaWYoY1tFLnJvd11bRS50aWxlXTw9MClFLnRpbGUrKztlbHNle2ZvcihsZXQgZT0wO2U8YVswXTtlKyspe2NvbnN0IHQ9RS50aWxlKyhlKzEpOyJudW1iZXIiPT10eXBlb2YgQVt0XSYmKEFbdF09MSl9Zm9yKGxldCBlPTA7ZTxhWzFdO2UrKyl7Y29uc3QgdD1FLnRpbGUtKGUrMSk7Im51bWJlciI9PXR5cGVvZiBBW3RdJiYoQVt0XT0xKX1mb3IobGV0IEE9MDtBPEJbMF07QSsrKXtjb25zdCBlPUUucm93LShBKzEpO2lmKCFjW2VdKWNvbnRpbnVlO2dbZV1bRS50aWxlXT0xfWZvcihsZXQgQT0wO0E8QlsxXTtBKyspe2NvbnN0IGU9RS5yb3crKEErMSk7aWYoIWNbZV0pY29udGludWU7Z1tlXVtFLnRpbGVdPTF9Zm9yKGxldCBBPTA7QTwyO0ErKyl7Y29uc3QgZT0xPT09QTtmb3IobGV0IEE9MDtBPEJbZT8xOjBdO0ErKyl7bGV0IHQ9RS5yb3ctKEErMSk7aWYoZSYmKHQ9RS5yb3crKEErMSkpLCFjW3RdKWNvbnRpbnVlO2NvbnN0IG49Z1t0XTtmb3IobGV0IEE9MDtBPDI7QSsrKXtjb25zdCBlPTE9PT1BO2ZvcihsZXQgQT0wO0E8YVtlPzE6MF07QSsrKXtsZXQgdD1FLnRpbGUrKEErMSk7ZSYmKHQ9RS50aWxlLShBKzEpKSwibnVtYmVyIj09dHlwZW9mIG5bdF0mJihuW3RdPTEpfX19fUUudGlsZSsrfUUucm93KyssRS50aWxlPTB9cmV0dXJuIGd9fUEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDIpLGk9dCg3KSxyPXtncmlkOltbMCwwLDBdLFswLDAsMF0sWzAsMCwwXV0sb2Zmc2V0OntsZWZ0OjAsdG9wOjB9fTtjbGFzcyBve2NvbnN0cnVjdG9yKCl7dGhpcy5ib3hlcz1bXX1zdGF0aWMgbmV3KCl7Zm9yKHZhciBBPWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkoQSksdD0wO3Q8QTt0KyspZVt0XT1hcmd1bWVudHNbdF07cmV0dXJuIG5ldyBvKC4uLmUpfWFkZChBLGUsdCxpKXtjb25zdCByPXt4MTpBPU1hdGgucm91bmQobi50b051bWJlcihBKSkseTE6ZT1NYXRoLnJvdW5kKG4udG9OdW1iZXIoZSkpLHgyOnQ9TWF0aC5yb3VuZChuLnRvTnVtYmVyKHQpKSx5MjppPU1hdGgucm91bmQobi50b051bWJlcihpKSl9O3Q8QSYmKHIueDE9dCxyLngyPUEpLGk+ZSYmKHIueTE9aSxyLnkyPWUpO2NvbnN0IG89e3g6ci54MSx5OnIueDIsd2lkdGg6ci54Mi1yLngxLGhlaWdodDpyLnkxLXIueTJ9O3JldHVybiB0aGlzLmJveGVzLnB1c2gobyksb31jbGVhcigpe3RoaXMuYm94ZXM9W119dG9HcmlkKCl7aWYoIXRoaXMuYm94ZXMpcmV0dXJuIHI7aWYodGhpcy5ib3hlcy5sZW5ndGg8PTApcmV0dXJuIHI7Y29uc3QgQT1bXTtsZXQgZT0tMS8wO2Zvcihjb25zdCBBIG9mIHRoaXMuYm94ZXMpQS55PmUmJihlPUEueSk7bGV0IHQ9MS8wLG49MDtmb3IoY29uc3QgQSBvZiB0aGlzLmJveGVzKUEueTx0JiYodD1BLnksbj1BLmhlaWdodCk7Y29uc3Qgbz1bXTtsZXQgcz0xLzA7Zm9yKGNvbnN0IEEgb2YgdGhpcy5ib3hlcylBLng8cyYmKHM9QS54KTtsZXQgYT0tMS8wLEI9MDtmb3IoY29uc3QgQSBvZiB0aGlzLmJveGVzKUEueD5hJiYoYT1BLngsQj1BLndpZHRoKTtjb25zdCBjPWEtcytCO2ZvcihsZXQgQT0wO0E8YztBKyspby5wdXNoKDApO2NvbnN0IGc9ZS10K247Zm9yKGxldCBlPTA7ZTxnO2UrKyl7Y29uc3QgZT1pLnNpbXBsZShvKTtBLnB1c2goZSl9Y29uc3QgRT1pLnNpbXBsZSh7dG9wOmUsbGVmdDpzfSk7Zm9yKGNvbnN0IGUgb2YgdGhpcy5ib3hlcyl7Y29uc3QgdD1lLngtRS5sZWZ0O2xldCBuPXQsaT1NYXRoLmFicyhlLnktRS50b3ApO2ZvcihsZXQgcj0wO3I8ZS5oZWlnaHQ7cisrKXtmb3IobGV0IHQ9MDt0PGUud2lkdGg7dCsrKXtBW2ldW25dPTEsbisrfWkrKyxuPXR9fXJldHVybntncmlkOkEsb2Zmc2V0OkV9fX1BLmV4cG9ydHM9b30sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCgxKSxzPXQoMyksYT10KDIpLEI9dCg3KSxjPUE9Pih7eDpBLngseTpBLnksc2l6ZTpBLnNpemUsc3RyZXRjaDpCLnNpbXBsZShBLnN0cmV0Y2gpLHRyYW5zZm9ybTpCLnNpbXBsZShBLnRyYW5zZm9ybSksZGlyZWN0aW9uOkEuZGlyZWN0aW9uLHJvdGF0aW9uU3R5bGU6QS5yb3RhdGlvblN0eWxlLHZpc2libGU6QS52aXNpYmxlLGVmZmVjdHM6Qi5zaW1wbGUoQS5lZmZlY3RzfHx7fSksY3VycmVudENvc3R1bWU6QS5jdXJyZW50Q29zdHVtZSx0aW50Q29sb3I6QS50aW50Q29sb3J9KSxnPShBLGUpPT57aWYoQS5zZXRYWShlLngsZS55KSxBLnNldFNpemUoZS5zaXplKSxBLnNldFN0cmV0Y2goLi4uZS5zdHJldGNoKSxBLnNldFRyYW5zZm9ybShlLnRyYW5zZm9ybSksQS5zZXREaXJlY3Rpb24oZS5kaXJlY3Rpb24pLEEuc2V0Um90YXRpb25TdHlsZShlLnJvdGF0aW9uU3R5bGUpLEEuc2V0VmlzaWJsZShlLnZpc2libGUpLGUuZWZmZWN0cylmb3IoY29uc3QgdCBpbiBlLmVmZmVjdHMpQS5zZXRFZmZlY3QodCxlLmVmZmVjdHNbdF0pO0Euc2V0Q29zdHVtZShlLmN1cnJlbnRDb3N0dW1lKX07ZnVuY3Rpb24gRShBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e2g6MCxzOjAsdjowfTtjb25zdCB0PUE+PjE2JjI1NSxuPUE+PjgmMjU1LGk9MjU1JkEscj1NYXRoLm1heCh0LG4saSksbz1NYXRoLm1pbih0LG4saSkscz1yLW87bGV0IGE7cmV0dXJuIGE9MD09PXM/MDpyPT09dD8uNSsobi1pKS9zJTZ8MDpyPT09bj8oaS10KS9zKzIrLjV8MDoodC1uKS9zKzQrLjV8MCxlLmg9LjUrKDYwKmErMzYwKSUzNjB8MCxlLnM9MD09PXI/MDpzL3IsZS52PXIvMjU1LGV9ZnVuY3Rpb24gUShBLGUsdCl7Y29uc3Qgbj10KmUsaT1uKigxLU1hdGguYWJzKEEvNjAlMi0xKSkscj10LW47bGV0IG8scyxhO1tvLHMsYV09QTw2MD9bbixpLDBdOkE8MTIwP1tpLG4sMF06QTwxODA/WzAsbixpXTpBPDI0MD9bMCxpLG5dOkE8MzAwP1tpLDAsbl06W24sMCxpXTtyZXR1cm4oLjUrMjU1KihvK3IpfDApPDwxNnwoLjUrMjU1KihzK3IpfDApPDw4fCguNSsyNTUqKGErcil8MCl9Y29uc3QgdT0oQSxlKT0+e3N3aXRjaChlKXtjYXNlImluIjpyZXR1cm4gMS11KDEtQSwib3V0Iik7Y2FzZSJvdXQiOntjb25zdCBlPTcuNTYyNSx0PTIuNzU7cmV0dXJuIEE8MS90P2UqQSpBOkE8Mi90P2UqKEEtPTEuNS90KSpBKy43NTpBPDIuNS90P2UqKEEtPTIuMjUvdCkqQSsuOTM3NTplKihBLT0yLjYyNS90KSpBKy45ODQzNzV9Y2FzZSJpbiBvdXQiOnJldHVybiBBPC41PygxLXUoMS0yKkEsIm91dCIpKS8yOigxK3UoMipBLTEsIm91dCIpKS8yO2RlZmF1bHQ6cmV0dXJuIDB9fSxsPXtsaW5lYXI6QT0+QSxzaW5lOihBLGUpPT57c3dpdGNoKGUpe2Nhc2UiaW4iOnJldHVybiAxLU1hdGguY29zKEEqTWF0aC5QSS8yKTtjYXNlIm91dCI6cmV0dXJuIE1hdGguc2luKEEqTWF0aC5QSS8yKTtjYXNlImluIG91dCI6cmV0dXJuLShNYXRoLmNvcyhNYXRoLlBJKkEpLTEpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LHF1YWQ6KEEsZSk9Pntzd2l0Y2goZSl7Y2FzZSJpbiI6cmV0dXJuIEEqQTtjYXNlIm91dCI6cmV0dXJuIDEtKDEtQSkqKDEtQSk7Y2FzZSJpbiBvdXQiOnJldHVybiBBPC41PzIqQSpBOjEtTWF0aC5wb3coLTIqQSsyLDIpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LGN1YmljOihBLGUpPT57c3dpdGNoKGUpe2Nhc2UiaW4iOnJldHVybiBBKkEqQTtjYXNlIm91dCI6cmV0dXJuIDEtTWF0aC5wb3coMS1BLDMpO2Nhc2UiaW4gb3V0IjpyZXR1cm4gQTwuNT80KkEqQSpBOjEtTWF0aC5wb3coLTIqQSsyLDMpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LHF1YXJ0OihBLGUpPT57c3dpdGNoKGUpe2Nhc2UiaW4iOnJldHVybiBBKkEqQSpBO2Nhc2Uib3V0IjpyZXR1cm4gMS1NYXRoLnBvdygxLUEsNCk7Y2FzZSJpbiBvdXQiOnJldHVybiBBPC41PzgqQSpBKkEqQToxLU1hdGgucG93KC0yKkErMiw0KS8yO2RlZmF1bHQ6cmV0dXJuIDB9fSxxdWludDooQSxlKT0+e3N3aXRjaChlKXtjYXNlImluIjpyZXR1cm4gQSpBKkEqQSpBO2Nhc2Uib3V0IjpyZXR1cm4gMS1NYXRoLnBvdygxLUEsNSk7Y2FzZSJpbiBvdXQiOnJldHVybiBBPC41PzE2KkEqQSpBKkEqQToxLU1hdGgucG93KC0yKkErMiw1KS8yO2RlZmF1bHQ6cmV0dXJuIDB9fSxleHBvOihBLGUpPT57c3dpdGNoKGUpe2Nhc2UiaW4iOnJldHVybiAwPT09QT8wOk1hdGgucG93KDIsMTAqQS0xMCk7Y2FzZSJvdXQiOnJldHVybiAxPT09QT8xOjEtTWF0aC5wb3coMiwtMTAqQSk7Y2FzZSJpbiBvdXQiOnJldHVybiAwPT09QT8wOjE9PT1BPzE6QTwuNT9NYXRoLnBvdygyLDIwKkEtMTApLzI6KDItTWF0aC5wb3coMiwtMjAqQSsxMCkpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LGNpcmM6KEEsZSk9Pntzd2l0Y2goZSl7Y2FzZSJpbiI6cmV0dXJuIDEtTWF0aC5zcXJ0KDEtTWF0aC5wb3coQSwyKSk7Y2FzZSJvdXQiOnJldHVybiBNYXRoLnNxcnQoMS1NYXRoLnBvdyhBLTEsMikpO2Nhc2UiaW4gb3V0IjpyZXR1cm4gQTwuNT8oMS1NYXRoLnNxcnQoMS1NYXRoLnBvdygyKkEsMikpKS8yOihNYXRoLnNxcnQoMS1NYXRoLnBvdygtMipBKzIsMikpKzEpLzI7ZGVmYXVsdDpyZXR1cm4gMH19LGJhY2s6KEEsZSk9Pntzd2l0Y2goZSl7Y2FzZSJpbiI6e2NvbnN0IGU9MS43MDE1ODtyZXR1cm4oZSsxKSpBKkEqQS1lKkEqQX1jYXNlIm91dCI6e2NvbnN0IGU9MS43MDE1ODtyZXR1cm4gMSsoZSsxKSpNYXRoLnBvdyhBLTEsMykrZSpNYXRoLnBvdyhBLTEsMil9Y2FzZSJpbiBvdXQiOntjb25zdCBlPTEuNTI1KjEuNzAxNTg7cmV0dXJuIEE8LjU/TWF0aC5wb3coMipBLDIpKigyKihlKzEpKkEtZSkvMjooTWF0aC5wb3coMipBLTIsMikqKChlKzEpKigyKkEtMikrZSkrMikvMn1kZWZhdWx0OnJldHVybiAwfX0sZWxhc3RpYzooQSxlKT0+e3N3aXRjaChlKXtjYXNlImluIjp7Y29uc3QgZT0yKk1hdGguUEkvMztyZXR1cm4gMD09PUE/MDoxPT09QT8xOi1NYXRoLnBvdygyLDEwKkEtMTApKk1hdGguc2luKCgxMCpBLTEwLjc1KSplKX1jYXNlIm91dCI6e2NvbnN0IGU9MipNYXRoLlBJLzM7cmV0dXJuIDA9PT1BPzA6MT09PUE/MTpNYXRoLnBvdygyLC0xMCpBKSpNYXRoLnNpbigoMTAqQS0uNzUpKmUpKzF9Y2FzZSJpbiBvdXQiOntjb25zdCBlPTIqTWF0aC5QSS80LjU7cmV0dXJuIDA9PT1BPzA6MT09PUE/MTpBPC41Py1NYXRoLnBvdygyLDIwKkEtMTApKk1hdGguc2luKCgyMCpBLTExLjEyNSkqZSkvMjpNYXRoLnBvdygyLC0yMCpBKzEwKSpNYXRoLnNpbigoMjAqQS0xMS4xMjUpKmUpLzIrMX1kZWZhdWx0OnJldHVybiAwfX0sYm91bmNlOnUsc25hcDpBPT4xLHNuYXBjZW50ZXI6QT0+TWF0aC5yb3VuZChBKSxzbmFwZW5kOkE9Pk1hdGguY2VpbChBKX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuYW5pbWF0aW9ucz1PYmplY3QuY3JlYXRlKG51bGwpLHRoaXMucHJvZ3Jlc3NpbmdUYXJnZXRzPVtdLHRoaXMucHJvZ3Jlc3NpbmdUYXJnZXREYXRhPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1BSRV9QQVVTRUQiLCgpPT57Zm9yKGNvbnN0IEEgaW4gdGhpcy5wcm9ncmVzc2luZ1RhcmdldERhdGEpe2NvbnN0IGU9dGhpcy5wcm9ncmVzc2luZ1RhcmdldERhdGFbQV07Zm9yKGNvbnN0IEEgaW4gZSl7ZVtBXS5wcm9qZWN0UGF1c2VkPSEwfX10aGlzLnJ1bnRpbWUudXBkYXRlQ3VycmVudE1TZWNzKCksdGhpcy5ydW50aW1lLmVtaXQoIkFOSU1BVElPTlNfRk9SQ0VfU1RFUCIpfSksdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1VOUEFVU0VEIiwoKT0+e3RoaXMucnVudGltZS51cGRhdGVDdXJyZW50TVNlY3MoKTtmb3IoY29uc3QgQSBpbiB0aGlzLnByb2dyZXNzaW5nVGFyZ2V0RGF0YSl7Y29uc3QgZT10aGlzLnByb2dyZXNzaW5nVGFyZ2V0RGF0YVtBXTtmb3IoY29uc3QgQSBpbiBlKXtlW0FdLnByb2plY3RQYXVzZWQ9ITF9fX0pfW5vdygpe3JldHVybiB0aGlzLnJ1bnRpbWUuY3VycmVudE1TZWNzfWRlc2VyaWFsaXplKEEpe3RoaXMuYW5pbWF0aW9ucz1BfXNlcmlhbGl6ZSgpe3JldHVybiB0aGlzLmFuaW1hdGlvbnN9b3JkZXJDYXRlZ29yeUJsb2NrcyhBKXtjb25zdCBlPXtjcmVhdGU6QVswXSxkZWxldGU6QVsxXX0sdD1BWzJdO0Euc3BsaWNlKDAsMyk7Y29uc3Qgbj1PYmplY3Qua2V5cyh0aGlzLmFuaW1hdGlvbnMpLm1hcChBPT50LnJlcGxhY2UoInthbmltYXRpb25JZH0iLEEpKTtyZXR1cm4gbi5sZW5ndGg8PTA/W2UuY3JlYXRlXToobi5yZXZlcnNlKCksbi5wdXNoKGUuZGVsZXRlKSxuLnB1c2goZS5jcmVhdGUpLEE9bi5yZXZlcnNlKCkuY29uY2F0KEEpKX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ0FuaW1hdGlvbiIsbmFtZToiQW5pbWF0aW9uIixpc0R5bmFtaWM6ITAsb3JkZXJCbG9ja3M6dGhpcy5vcmRlckNhdGVnb3J5QmxvY2tzLmJpbmQodGhpcyksYmxvY2tzOlt7b3Bjb2RlOiJjcmVhdGVBbmltYXRpb24iLHRleHQ6Ik5ldyBBbmltYXRpb24iLGJsb2NrVHlwZTpvLkJVVFRPTn0se29wY29kZToiZGVsZXRlQW5pbWF0aW9uIix0ZXh0OiJEZWxldGUgYW4gQW5pbWF0aW9uIixibG9ja1R5cGU6by5CVVRUT059LHtvcGNvZGU6ImdldEFuaW1hdGlvbiIsdGV4dDoiW0FOSU1BVElPTl0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7QU5JTUFUSU9OOnttZW51OiJhbmltYXRpb25zIixkZWZhdWx0VmFsdWU6InthbmltYXRpb25JZH0iLHR5cGU6cy5TVFJJTkd9fX0se3RleHQ6IkFuaW1hdGlvbnMiLGJsb2NrVHlwZTpvLkxBQkVMfSx7b3Bjb2RlOiJwbGF5QW5pbWF0aW9uIixibG9ja1R5cGU6by5DT01NQU5ELHRleHQ6InBsYXkgW0FOSU1dIFtPRkZTRVRdIGFuZCBbRk9SV0FSRFNdIGFmdGVyIGxhc3Qga2V5ZnJhbWUiLGFyZ3VtZW50czp7QU5JTTp7dHlwZTpzLlNUUklORyxtZW51OiJhbmltYXRpb25zIn0sT0ZGU0VUOnt0eXBlOnMuU1RSSU5HLG1lbnU6Im9mZnNldE1lbnUifSxGT1JXQVJEUzp7dHlwZTpzLlNUUklORyxtZW51OiJmb3J3YXJkc01lbnUifX19LHtvcGNvZGU6InBhdXNlQW5pbWF0aW9uIixibG9ja1R5cGU6by5DT01NQU5ELHRleHQ6InBhdXNlIFtBTklNXSIsYXJndW1lbnRzOntBTklNOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImFuaW1hdGlvbnMifX19LHtvcGNvZGU6InVucGF1c2VBbmltYXRpb24iLGJsb2NrVHlwZTpvLkNPTU1BTkQsdGV4dDoidW5wYXVzZSBbQU5JTV0iLGFyZ3VtZW50czp7QU5JTTp7dHlwZTpzLlNUUklORyxtZW51OiJhbmltYXRpb25zIn19fSx7b3Bjb2RlOiJzdG9wQW5pbWF0aW9uIixibG9ja1R5cGU6by5DT01NQU5ELHRleHQ6InN0b3AgW0FOSU1dIixhcmd1bWVudHM6e0FOSU06e3R5cGU6cy5TVFJJTkcsbWVudToiYW5pbWF0aW9ucyJ9fX0se3RleHQ6IktleWZyYW1lcyIsYmxvY2tUeXBlOm8uTEFCRUx9LHtvcGNvZGU6ImFkZFN0YXRlS2V5ZnJhbWUiLGJsb2NrVHlwZTpvLkNPTU1BTkQsdGV4dDoiYWRkIGN1cnJlbnQgc3RhdGUgd2l0aCBbRUFTSU5HXSBbRElSRUNUSU9OXSBhcyBrZXlmcmFtZSB3aXRoIGR1cmF0aW9uIFtMRU5HVEhdIGluIGFuaW1hdGlvbiBbQU5JTV0iLGFyZ3VtZW50czp7RUFTSU5HOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImVhc2luZ01vZGUifSxESVJFQ1RJT046e3R5cGU6cy5TVFJJTkcsbWVudToiZWFzaW5nRGlyIn0sTEVOR1RIOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxBTklNOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImFuaW1hdGlvbnMifX19LHtvcGNvZGU6ImFkZEpTT05LZXlmcmFtZSIsYmxvY2tUeXBlOm8uQ09NTUFORCx0ZXh0OiJhZGQga2V5ZnJhbWUgSlNPTiBbSlNPTl0gYXMga2V5ZnJhbWUgaW4gYW5pbWF0aW9uIFtBTklNXSIsYXJndW1lbnRzOntKU09OOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToie30ifSxBTklNOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImFuaW1hdGlvbnMifX19LHtvcGNvZGU6InNldFN0YXRlS2V5ZnJhbWUiLGJsb2NrVHlwZTpvLkNPTU1BTkQsdGV4dDoic2V0IGtleWZyYW1lIFtJRFhdIGluIGFuaW1hdGlvbiBbQU5JTV0gdG8gY3VycmVudCBzdGF0ZSB3aXRoIFtFQVNJTkddIFtESVJFQ1RJT05dIGFuZCBkdXJhdGlvbiBbTEVOR1RIXSAiLGFyZ3VtZW50czp7SURYOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9LEVBU0lORzp7dHlwZTpzLlNUUklORyxtZW51OiJlYXNpbmdNb2RlIn0sRElSRUNUSU9OOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImVhc2luZ0RpciJ9LExFTkdUSDp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6MX0sQU5JTTp7dHlwZTpzLlNUUklORyxtZW51OiJhbmltYXRpb25zIn19fSx7b3Bjb2RlOiJzZXRKU09OS2V5ZnJhbWUiLGJsb2NrVHlwZTpvLkNPTU1BTkQsdGV4dDoic2V0IGtleWZyYW1lIFtJRFhdIGluIGFuaW1hdGlvbiBbQU5JTV0gdG8gSlNPTiBbSlNPTl0iLGFyZ3VtZW50czp7SURYOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9LEpTT046e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ7fSJ9LEFOSU06e3R5cGU6cy5TVFJJTkcsbWVudToiYW5pbWF0aW9ucyJ9fX0se29wY29kZToiZGVsZXRlS2V5ZnJhbWUiLGJsb2NrVHlwZTpvLkNPTU1BTkQsdGV4dDoiZGVsZXRlIGtleWZyYW1lIFtJRFhdIGZyb20gW0FOSU1dIixhcmd1bWVudHM6e0lEWDp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEifSxBTklNOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImFuaW1hdGlvbnMifX19LHtvcGNvZGU6ImRlbGV0ZUFsbEtleWZyYW1lcyIsYmxvY2tUeXBlOm8uQ09NTUFORCx0ZXh0OiJkZWxldGUgYWxsIGtleWZyYW1lcyBbQU5JTV0iLGFyZ3VtZW50czp7QU5JTTp7dHlwZTpzLlNUUklORyxtZW51OiJhbmltYXRpb25zIn19fSx7b3Bjb2RlOiJnZXRLZXlmcmFtZSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsdGV4dDoiZ2V0IGtleWZyYW1lIFtJRFhdIGZyb20gW0FOSU1dIixhcmd1bWVudHM6e0lEWDp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEifSxBTklNOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImFuaW1hdGlvbnMifX19LHtvcGNvZGU6ImdldEtleWZyYW1lQ291bnQiLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLHRleHQ6ImFtb3VudCBvZiBrZXlmcmFtZXMgaW4gW0FOSU1dIixhcmd1bWVudHM6e0FOSU06e3R5cGU6cy5TVFJJTkcsbWVudToiYW5pbWF0aW9ucyJ9fX0se29wY29kZToiaXNQYXVzZWRBbmltYXRpb24iLGJsb2NrVHlwZTpvLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITAsaGlkZUZyb21QYWxldHRlOiEwLHRleHQ6ImlzIFtBTklNXSBwYXVzZWQ/Iixhcmd1bWVudHM6e0FOSU06e3R5cGU6cy5TVFJJTkcsbWVudToiYW5pbWF0aW9ucyJ9fX0se29wY29kZToiaXNQcm9wZXJ0eUFuaW1hdGlvbiIsYmxvY2tUeXBlOm8uQk9PTEVBTixkaXNhYmxlTW9uaXRvcjohMCx0ZXh0OiJpcyBbQU5JTV0gW0FOSU1QUk9QXT8iLGFyZ3VtZW50czp7QU5JTTp7dHlwZTpzLlNUUklORyxtZW51OiJhbmltYXRpb25zIn0sQU5JTVBST1A6e3R5cGU6cy5TVFJJTkcsbWVudToiYW5pbWF0aW9uRGF0YVByb3BlcnR5In19fSx7dGV4dDoiT3BlcmF0aW9ucyIsYmxvY2tUeXBlOm8uTEFCRUx9LHtvcGNvZGU6ImdvVG9LZXlmcmFtZSIsYmxvY2tUeXBlOm8uQ09NTUFORCx0ZXh0OiJnbyB0byBrZXlmcmFtZSBbSURYXSBpbiBbQU5JTV0iLGFyZ3VtZW50czp7SURYOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9LEFOSU06e3R5cGU6cy5TVFJJTkcsbWVudToiYW5pbWF0aW9ucyJ9fX0se29wY29kZToic25hcFRvS2V5ZnJhbWUiLGJsb2NrVHlwZTpvLkNPTU1BTkQsdGV4dDoic25hcCB0byBrZXlmcmFtZSBbSURYXSBpbiBbQU5JTV0iLGFyZ3VtZW50czp7SURYOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9LEFOSU06e3R5cGU6cy5TVFJJTkcsbWVudToiYW5pbWF0aW9ucyJ9fX1dLG1lbnVzOnthbmltYXRpb25zOiJfYW5pbWF0aW9uc01lbnUiLGVhc2luZ01vZGU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpPYmplY3Qua2V5cyhsKX0sZWFzaW5nRGlyOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJpbiIsIm91dCIsImluIG91dCJdfSxhbmltYXRpb25EYXRhUHJvcGVydHk6e2FjY2VwdFJlcG9ydGVyczohMSxpdGVtczpbInBsYXlpbmciLCJwYXVzZWQiXX0sb2Zmc2V0TWVudTp7YWNjZXB0UmVwb3J0ZXJzOiExLGl0ZW1zOlt7dGV4dDoicmVsYXRpdmUgdG8gY3VycmVudCBzdGF0ZSIsdmFsdWU6InJlbGF0aXZlIn0se3RleHQ6InNuYXBwZWQgdG8gZmlyc3Qga2V5ZnJhbWUiLHZhbHVlOiJzbmFwcGVkIn1dfSxmb3J3YXJkc01lbnU6e2FjY2VwdFJlcG9ydGVyczohMSxpdGVtczpbe3RleHQ6InN0YXkiLHZhbHVlOiJzdGF5In0se3RleHQ6InJlc2V0IHRvIG9yaWdpbmFsIHN0YXRlIix2YWx1ZToicmVzZXQifV19fX19X2FuaW1hdGlvbnNNZW51KCl7Y29uc3QgQT1PYmplY3Qua2V5cyh0aGlzLmFuaW1hdGlvbnMpO3JldHVybiBBLmxlbmd0aDw9MD9be3RleHQ6IiIsdmFsdWU6IiJ9XTpBLm1hcChBPT4oe3RleHQ6QSx2YWx1ZTpBfSkpfV9wYXJzZUtleWZyYW1lT3JLZXlmcmFtZXMoQSl7bGV0IGU7dHJ5e2U9SlNPTi5wYXJzZShBKX1jYXRjaChBKXtlPXt9fWlmKCJvYmplY3QiIT10eXBlb2YgZSlyZXR1cm57fTtpZihBcnJheS5pc0FycmF5KGUpKWZvcihjb25zdCBBIG9mIGUpaWYoIm9iamVjdCIhPXR5cGVvZiBBKXJldHVybnt9O3JldHVybiBlfV90d2VlblZhbHVlKEEsZSx0LG4saSl7aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChsLHQpKXJldHVybiBBO2NvbnN0IHI9KDAsbFt0XSkoaSxuKTtyZXR1cm4gciooZS0obz1BKSkrbzt2YXIgb31fcHJvZ3Jlc3NBbmltYXRpb24oQSxlLHQsbixpLHIpe2NvbnN0IG89KEEsZSk9PnRoaXMuX3R3ZWVuVmFsdWUoQSxlLG4saSxyKSxzPW8oMCwxKTtBLnNldFhZKG8oZS54LHQueCksbyhlLnksdC55KSksQS5zZXRTaXplKG8oZS5zaXplLHQuc2l6ZSkpLEEuc2V0U3RyZXRjaChvKGUuc3RyZXRjaFswXSx0LnN0cmV0Y2hbMF0pLG8oZS5zdHJldGNoWzFdLHQuc3RyZXRjaFsxXSkpLEEuc2V0VHJhbnNmb3JtKFtvKGUudHJhbnNmb3JtWzBdLHQudHJhbnNmb3JtWzBdKSxvKGUudHJhbnNmb3JtWzFdLHQudHJhbnNmb3JtWzFdKV0pLEEuc2V0RGlyZWN0aW9uKG8oZS5kaXJlY3Rpb24sdC5kaXJlY3Rpb24pKSxBLnNldFJvdGF0aW9uU3R5bGUoMD09PU1hdGgucm91bmQocyk/ZS5yb3RhdGlvblN0eWxlOnQucm90YXRpb25TdHlsZSksQS5zZXRWaXNpYmxlKDA9PT1NYXRoLnJvdW5kKHMpP2UudmlzaWJsZTp0LnZpc2libGUpO2Zvcihjb25zdCBuIGluIGUuZWZmZWN0cylpZigidGludENvbG9yIiE9PW58fGUuZWZmZWN0cy50aW50Q29sb3I9PT10LmVmZmVjdHMudGludENvbG9yKUEuc2V0RWZmZWN0KG4sbyhlLmVmZmVjdHNbbl0sdC5lZmZlY3RzW25dKSk7ZWxzZXtjb25zdCBuPUUoZS5lZmZlY3RzLnRpbnRDb2xvci0xKSxpPUUodC5lZmZlY3RzLnRpbnRDb2xvci0xKSxyPXtoOm8obi5oLGkuaCksczpvKG4ucyxpLnMpLHY6byhuLnYsaS52KX07QS5zZXRFZmZlY3QoInRpbnRDb2xvciIsUShyLmgsci5zLHIudikpfUEuc2V0Q29zdHVtZSgwPT09TWF0aC5yb3VuZChzKT9lLmN1cnJlbnRDb3N0dW1lOnQuY3VycmVudENvc3R1bWUpfWNyZWF0ZUFuaW1hdGlvbigpe2NvbnN0IEE9cHJvbXB0KCJDcmVhdGUgYW5pbWF0aW9uIG5hbWVkOiIsImFuaW1hdGlvbiAiKyhPYmplY3Qua2V5cyh0aGlzLmFuaW1hdGlvbnMpLmxlbmd0aCsxKSk7aWYoQSl7aWYoQSBpbiB0aGlzLmFuaW1hdGlvbnMpcmV0dXJuIGFsZXJ0KCciJy5jb25jYXQoQSwnIiBpcyB0YWtlbiEnKSk7dGhpcy5hbmltYXRpb25zW0FdPXtrZXlmcmFtZXM6W119LHZtLmVtaXRXb3Jrc3BhY2VVcGRhdGUoKSx0aGlzLnNlcmlhbGl6ZSgpfX1kZWxldGVBbmltYXRpb24oKXtjb25zdCBBPXByb21wdCgiV2hpY2ggYW5pbWF0aW9uIHdvdWxkIHlvdSBsaWtlIHRvIGRlbGV0ZT8iKTtpZihBIGluIHRoaXMuYW5pbWF0aW9ucyl7Zm9yKGNvbnN0IGUgb2YgdGhpcy5ydW50aW1lLnRhcmdldHMpdGhpcy5zdG9wQW5pbWF0aW9uKHtBTklNOkF9LHt0YXJnZXQ6ZX0pO2RlbGV0ZSB0aGlzLmFuaW1hdGlvbnNbQV19dm0uZW1pdFdvcmtzcGFjZVVwZGF0ZSgpLHRoaXMuc2VyaWFsaXplKCl9Z2V0QW5pbWF0aW9uKEEpe2NvbnN0IGU9YS50b1N0cmluZyhBLkFOSU1BVElPTik7cmV0dXJuIGUgaW4gdGhpcy5hbmltYXRpb25zP0pTT04uc3RyaW5naWZ5KHRoaXMuYW5pbWF0aW9uc1tlXSk6Int9In1hZGRLZXlmcmFtZShBLGUpe0EgaW4gdGhpcy5hbmltYXRpb25zJiZ0aGlzLmFuaW1hdGlvbnNbQV0ua2V5ZnJhbWVzLnB1c2goZSl9c2V0S2V5ZnJhbWUoQSxlLHQpe2lmKCEoQSBpbiB0aGlzLmFuaW1hdGlvbnMpKXJldHVybjtjb25zdCBuPXRoaXMuYW5pbWF0aW9uc1tBXS5rZXlmcmFtZXM7dD5uLmxlbmd0aC0xfHx0PDB8fChuW3RdPWUpfWFkZFN0YXRlS2V5ZnJhbWUoQSxlKXtjb25zdCB0PWEudG9TdHJpbmcoQS5BTklNKSxuPWMoZS50YXJnZXQpO3RoaXMuYWRkS2V5ZnJhbWUodCxpKGkoe30sbikse30se2Vhc2luZ01vZGU6YS50b1N0cmluZyhBLkVBU0lORyksZWFzaW5nRGlyOmEudG9TdHJpbmcoQS5ESVJFQ1RJT04pLGtleWZyYW1lTGVuZ3RoOmEudG9OdW1iZXIoQS5MRU5HVEgpfSkpfWFkZEpTT05LZXlmcmFtZShBKXtjb25zdCBlPWEudG9TdHJpbmcoQS5BTklNKSx0PXRoaXMuX3BhcnNlS2V5ZnJhbWVPcktleWZyYW1lcyhBLkpTT04pO2lmKEFycmF5LmlzQXJyYXkodCkpZm9yKGNvbnN0IEEgb2YgdCl0aGlzLmFkZEtleWZyYW1lKGUsQSk7ZWxzZSB0aGlzLmFkZEtleWZyYW1lKGUsdCl9c2V0U3RhdGVLZXlmcmFtZShBLGUpe2NvbnN0IHQ9YS50b1N0cmluZyhBLkFOSU0pLG49YS50b051bWJlcihBLklEWCktMSxyPWMoZS50YXJnZXQpO3RoaXMuc2V0S2V5ZnJhbWUodCxpKGkoe30scikse30se2Vhc2luZ01vZGU6YS50b1N0cmluZyhBLkVBU0lORyksZWFzaW5nRGlyOmEudG9TdHJpbmcoQS5ESVJFQ1RJT04pLGtleWZyYW1lTGVuZ3RoOmEudG9OdW1iZXIoQS5MRU5HVEgpfSksbil9c2V0SlNPTktleWZyYW1lKEEpe2NvbnN0IGU9YS50b1N0cmluZyhBLkFOSU0pLHQ9YS50b051bWJlcihBLklEWCktMSxuPXRoaXMuX3BhcnNlS2V5ZnJhbWVPcktleWZyYW1lcyhBLkpTT04pO0FycmF5LmlzQXJyYXkobil8fHRoaXMuc2V0S2V5ZnJhbWUoZSxuLHQpfWRlbGV0ZUtleWZyYW1lKEEpe2NvbnN0IGU9YS50b1N0cmluZyhBLkFOSU0pLHQ9YS50b051bWJlcihBLklEWCk7ZSBpbiB0aGlzLmFuaW1hdGlvbnMmJnRoaXMuYW5pbWF0aW9uc1tlXS5rZXlmcmFtZXMuc3BsaWNlKHQtMSwxKX1kZWxldGVBbGxLZXlmcmFtZXMoQSl7Y29uc3QgZT1hLnRvU3RyaW5nKEEuQU5JTSk7ZSBpbiB0aGlzLmFuaW1hdGlvbnMmJih0aGlzLmFuaW1hdGlvbnNbZV0ua2V5ZnJhbWVzPVtdKX1nZXRLZXlmcmFtZShBKXtjb25zdCBlPWEudG9TdHJpbmcoQS5BTklNKSx0PWEudG9OdW1iZXIoQS5JRFgpLTE7aWYoIShlIGluIHRoaXMuYW5pbWF0aW9ucykpcmV0dXJuInt9Ijtjb25zdCBuPXRoaXMuYW5pbWF0aW9uc1tlXS5rZXlmcmFtZXNbdF07cmV0dXJuIG4/SlNPTi5zdHJpbmdpZnkobik6Int9In1nZXRLZXlmcmFtZUNvdW50KEEpe2NvbnN0IGU9YS50b1N0cmluZyhBLkFOSU0pO2lmKCEoZSBpbiB0aGlzLmFuaW1hdGlvbnMpKXJldHVybiJ7fSI7cmV0dXJuIHRoaXMuYW5pbWF0aW9uc1tlXS5rZXlmcmFtZXMubGVuZ3RofWdvVG9LZXlmcmFtZShBLGUpe2NvbnN0IHQ9YS50b1N0cmluZyhBLkFOSU0pLG49YS50b051bWJlcihBLklEWCktMTtpZighKHQgaW4gdGhpcy5hbmltYXRpb25zKSlyZXR1cm47Y29uc3QgaT10aGlzLmFuaW1hdGlvbnNbdF0ua2V5ZnJhbWVzW25dO2lmKCFpKXJldHVybjtjb25zdCByPWUudGFyZ2V0LG89YyhyKSxzPXRoaXMubm93KCksQj10aGlzLm5vdygpKzFlMyppLmtleWZyYW1lTGVuZ3RoO2lmKEI8PXMpcmV0dXJuIHZvaWQgZyhyLGkpO2xldCBFPSExO2NvbnN0IFE9KCk9Pntjb25zdCBBPXRoaXMubm93KCk7aWYoQT49QilyZXR1cm4gdGhpcy5ydW50aW1lLm9mZigiUlVOVElNRV9TVEVQX1NUQVJUIixRKSxnKHIsaSksdm9pZChFPSEwKTtjb25zdCBlPShBLXMpLyhCLXMpO3RoaXMuX3Byb2dyZXNzQW5pbWF0aW9uKHIsbyxpLGkuZWFzaW5nTW9kZSxpLmVhc2luZ0RpcixlKX07USgpLHRoaXMucnVudGltZS5vbmNlKCJQUk9KRUNUX1NUT1BfQUxMIiwoKT0+e0V8fHRoaXMucnVudGltZS5vZmYoIlJVTlRJTUVfU1RFUF9TVEFSVCIsUSl9KSx0aGlzLnJ1bnRpbWUub24oIlJVTlRJTUVfU1RFUF9TVEFSVCIsUSl9c25hcFRvS2V5ZnJhbWUoQSxlKXtjb25zdCB0PWEudG9TdHJpbmcoQS5BTklNKSxuPWEudG9OdW1iZXIoQS5JRFgpLTE7aWYoISh0IGluIHRoaXMuYW5pbWF0aW9ucykpcmV0dXJuO2NvbnN0IGk9dGhpcy5hbmltYXRpb25zW3RdLmtleWZyYW1lc1tuXTtpJiZnKGUudGFyZ2V0LGkpfXBsYXlBbmltYXRpb24oQSxlKXtjb25zdCB0PWUudGFyZ2V0LG49dC5pZCxpPWEudG9TdHJpbmcoQS5BTklNKSxyPSJzbmFwcGVkIiE9PUEuT0ZGU0VULG89InJlc2V0IiE9PUEuRk9SV0FSRFM7aWYoIShpIGluIHRoaXMuYW5pbWF0aW9ucykpcmV0dXJuO2NvbnN0IHM9dGhpcy5hbmltYXRpb25zW2ldLEU9cy5rZXlmcmFtZXNbMF07bGV0IFE9dGhpcy5wcm9ncmVzc2luZ1RhcmdldERhdGFbbl07aWYodGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXMobikmJlEmJlFbaV0pe2NvbnN0IEE9UVtpXTtpZihBLnBhdXNlZClyZXR1cm4gdm9pZChBLnBhdXNlZD0hMSk7aWYoIUEuZm9yY2VTdG9wKXJldHVybjt0aGlzLnJ1bnRpbWUuZW1pdCgiQU5JTUFUSU9OU19GT1JDRV9TUEVDSUZJQ19TVEVQIixuLGkpfWlmKCFFKXJldHVybjtpZighcy5rZXlmcmFtZXNbMV0pcmV0dXJuIHZvaWQobyYmIXImJmcodCxFKSk7aWYodGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXMobil8fHRoaXMucHJvZ3Jlc3NpbmdUYXJnZXRzLnB1c2gobiksIVEpe2NvbnN0IEE9T2JqZWN0LmNyZWF0ZShudWxsKTt0aGlzLnByb2dyZXNzaW5nVGFyZ2V0RGF0YVtuXT1BLFE9dGhpcy5wcm9ncmVzc2luZ1RhcmdldERhdGFbbl19UVtpXT17fTtjb25zdCB1PVFbaV07dS5mb3JjZVN0b3A9ITEsdS5wYXVzZWQ9ITEsdS5wcm9qZWN0UGF1c2VkPSExO2NvbnN0IGw9Qi5zaW1wbGUocyk7bC5rZXlmcmFtZXNbMF0ua2V5ZnJhbWVMZW5ndGg9LjAwMTtjb25zdCBoPWModCksdz17dGludENvbG9yOjE2Nzc3MjE2fTtpZihyKXt2YXIgQyxJLE07bGV0IEE9bnVsbCE9PShDPUUuY3VycmVudENvc3R1bWUpJiZ2b2lkIDAhPT1DP0M6aC5jdXJyZW50Q29zdHVtZSxlPW51bGwhPT0oST1FLnJvdGF0aW9uU3R5bGUpJiZ2b2lkIDAhPT1JP0k6aC5yb3RhdGlvblN0eWxlLHQ9bnVsbCE9PShNPShFLmVmZmVjdHN8fHcpLnRpbnRDb2xvcikmJnZvaWQgMCE9PU0/TTp3LnRpbnRDb2xvcixuPSExLGk9ITEscj0hMTtmb3IoY29uc3QgbyBvZiBsLmtleWZyYW1lcyl7by54LT1FLngsby55LT1FLnksby5zaXplLz1FLnNpemUvMTAwLG8uc3RyZXRjaD1bby5zdHJldGNoWzBdLyhFLnN0cmV0Y2hbMF0vMTAwKSxvLnN0cmV0Y2hbMV0vKEUuc3RyZXRjaFsxXS8xMDApXSxvLnRyYW5zZm9ybT1bby50cmFuc2Zvcm1bMF0tRS50cmFuc2Zvcm1bMF0sby50cmFuc2Zvcm1bMV0tRS50cmFuc2Zvcm1bMV1dLG8uZGlyZWN0aW9uLT1FLmRpcmVjdGlvbi05MCxvLngrPWgueCxvLnkrPWgueSxvLnNpemUqPWguc2l6ZS8xMDAsby5zdHJldGNoPVtvLnN0cmV0Y2hbMF0qKGguc3RyZXRjaFswXS8xMDApLG8uc3RyZXRjaFsxXSooaC5zdHJldGNoWzFdLzEwMCldLG8udHJhbnNmb3JtPVtvLnRyYW5zZm9ybVswXStoLnRyYW5zZm9ybVswXSxvLnRyYW5zZm9ybVsxXStoLnRyYW5zZm9ybVsxXV0sby5kaXJlY3Rpb24rPWguZGlyZWN0aW9uLTkwLG58fChuPUEhPT1vLmN1cnJlbnRDb3N0dW1lKSxpfHwoaT1lIT09by5yb3RhdGlvblN0eWxlKSxyfHwocj10IT09KG8uZWZmZWN0c3x8dykudGludENvbG9yKSxufHwoby5jdXJyZW50Q29zdHVtZT1oLmN1cnJlbnRDb3N0dW1lKSxpfHwoby5yb3RhdGlvblN0eWxlPWgucm90YXRpb25TdHlsZSkscnx8KG8uZWZmZWN0c3x8KG8uZWZmZWN0cz17fSksby5lZmZlY3RzLnRpbnRDb2xvcj1oLmVmZmVjdHMudGludENvbG9yKTtmb3IoY29uc3QgQSBpbiBvLmVmZmVjdHMpe2lmKCJ0aW50Q29sb3IiPT09QSljb250aW51ZTtjb25zdCBlPW8uZWZmZWN0c1tBXSx0PWguZWZmZWN0c1tBXTtzd2l0Y2goQSl7Y2FzZSJnaG9zdCI6Y29uc3Qgbj0oMS1lLzEwMCkqKDEtdC8xMDApO28uZWZmZWN0c1tBXT0xMDAqKDEtbik7YnJlYWs7ZGVmYXVsdDpvLmVmZmVjdHNbQV0rPWguZWZmZWN0c1tBXX19fX1yfHxnKHQsRSk7Y29uc3QgZD0oKT0+e3UuZm9yY2VTdG9wPSEwLHRoaXMucnVudGltZS5lbWl0KCJBTklNQVRJT05TX0ZPUkNFX1NQRUNJRklDX1NURVAiLG4saSl9LHA9KEEsZSk9PntBPT09biYmZT09PWkmJlMoKX0sbT1BPT57aWYobyl7aWYoIUEpe2NvbnN0IEE9bC5rZXlmcmFtZXNbbC5rZXlmcmFtZXMubGVuZ3RoLTFdO2codCxBKX19ZWxzZSBnKHQsaCk7dGhpcy5ydW50aW1lLm9mZigiUlVOVElNRV9TVEVQX1NUQVJUIixTKSx0aGlzLnJ1bnRpbWUub2ZmKCJBTklNQVRJT05TX0ZPUkNFX1NURVAiLFMpLHRoaXMucnVudGltZS5vZmYoIkFOSU1BVElPTlNfRk9SQ0VfU1BFQ0lGSUNfU1RFUCIscCksdGhpcy5ydW50aW1lLm9mZigiUFJPSkVDVF9TVE9QX0FMTCIsZCk7Y29uc3QgZT10aGlzLnByb2dyZXNzaW5nVGFyZ2V0RGF0YVtuXTtpZihlKXtlW2ldJiZkZWxldGUgZVtpXTtpZihPYmplY3Qua2V5cyhlKS5sZW5ndGg8PTAmJihkZWxldGUgdGhpcy5wcm9ncmVzc2luZ1RhcmdldERhdGFbbl0sdGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXMobikpKXtjb25zdCBBPXRoaXMucHJvZ3Jlc3NpbmdUYXJnZXRzLmluZGV4T2Yobik7dGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuc3BsaWNlKEEsMSl9fX07bGV0IEY9dGhpcy5ub3coKSxEPTAsWT1bXSxmPVtdLE49MDtmb3IoY29uc3QgQSBvZiBsLmtleWZyYW1lcylEKz0xZTMqQS5rZXlmcmFtZUxlbmd0aCxZLnB1c2goRitOKSxmLnB1c2goRisxZTMqQS5rZXlmcmFtZUxlbmd0aCtOKSxOKz0xZTMqQS5rZXlmcmFtZUxlbmd0aDtsZXQgVT0wLHk9Yyh0KTtjb25zdCBUPWwua2V5ZnJhbWVzLmxlbmd0aC0xO2xldCB4PXRoaXMubm93KCkrRCxSPSExLEc9MDtjb25zdCBTPSgpPT57Y29uc3QgQT10aGlzLm5vdygpO2lmKHUuZm9yY2VTdG9wKXJldHVybiB2b2lkIG0oITApO2lmKCh1LnBhdXNlZHx8dS5wcm9qZWN0UGF1c2VkKSYmKFI9ITAsMD09PUcmJihHPXRoaXMubm93KCkpKSxSKXtpZighdS5wYXVzZWQmJiF1LnByb2plY3RQYXVzZWQpe1I9ITE7Y29uc3QgQT10aGlzLm5vdygpLUc7Ris9QSx4Kz1BLFk9WS5tYXAoZT0+ZStBKSxmPWYubWFwKGU9PmUrQSksRz0wfWlmKFIpcmV0dXJufWlmKEE+PXgpcmV0dXJuIHZvaWQgbSgpO2NvbnN0IGU9bC5rZXlmcmFtZXNbVV0sbj1ZW1VdLGk9KEEtbikvKGZbVV0tbik7aWYoaT4xKXJldHVybiBVKzE+VD9tKCk6KGcodCxlKSx5PWModCksdm9pZChVKz0xKSk7dGhpcy5fcHJvZ3Jlc3NBbmltYXRpb24odCx5LGUsZS5lYXNpbmdNb2RlLGUuZWFzaW5nRGlyLGkpfTtTKCksdGhpcy5ydW50aW1lLm9uY2UoIlBST0pFQ1RfU1RPUF9BTEwiLGQpLHRoaXMucnVudGltZS5vbigiUlVOVElNRV9TVEVQX1NUQVJUIixTKSx0aGlzLnJ1bnRpbWUub24oIkFOSU1BVElPTlNfRk9SQ0VfU1RFUCIsUyksdGhpcy5ydW50aW1lLm9uKCJBTklNQVRJT05TX0ZPUkNFX1NQRUNJRklDX1NURVAiLHApfXBhdXNlQW5pbWF0aW9uKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5pZDtpZighdGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXModCkpcmV0dXJuO2NvbnN0IG49YS50b1N0cmluZyhBLkFOSU0pO2lmKCEobiBpbiB0aGlzLmFuaW1hdGlvbnMpKXJldHVybjtjb25zdCBpPXRoaXMucHJvZ3Jlc3NpbmdUYXJnZXREYXRhW3RdO2kmJm4gaW4gaSYmKGlbbl0ucGF1c2VkPSEwKX11bnBhdXNlQW5pbWF0aW9uKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5pZDtpZighdGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXModCkpcmV0dXJuO2NvbnN0IG49YS50b1N0cmluZyhBLkFOSU0pO2lmKCEobiBpbiB0aGlzLmFuaW1hdGlvbnMpKXJldHVybjtjb25zdCBpPXRoaXMucHJvZ3Jlc3NpbmdUYXJnZXREYXRhW3RdO2kmJm4gaW4gaSYmKGlbbl0ucGF1c2VkPSExKX1zdG9wQW5pbWF0aW9uKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5pZDtpZighdGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXModCkpcmV0dXJuO2NvbnN0IG49YS50b1N0cmluZyhBLkFOSU0pO2lmKCEobiBpbiB0aGlzLmFuaW1hdGlvbnMpKXJldHVybjtjb25zdCBpPXRoaXMucHJvZ3Jlc3NpbmdUYXJnZXREYXRhW3RdO2kmJm4gaW4gaSYmKGlbbl0uZm9yY2VTdG9wPSEwLHRoaXMucnVudGltZS5lbWl0KCJBTklNQVRJT05TX0ZPUkNFX1NQRUNJRklDX1NURVAiLHQsbikpfWlzUGF1c2VkQW5pbWF0aW9uKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5pZDtpZighdGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXModCkpcmV0dXJuITE7Y29uc3Qgbj1hLnRvU3RyaW5nKEEuQU5JTSk7aWYoIShuIGluIHRoaXMuYW5pbWF0aW9ucykpcmV0dXJuITE7Y29uc3QgaT10aGlzLnByb2dyZXNzaW5nVGFyZ2V0RGF0YVt0XTtyZXR1cm4gaT9uIGluIGkmJmlbbl0ucGF1c2VkOnZvaWQgMH1pc1Byb3BlcnR5QW5pbWF0aW9uKEEsZSl7Y29uc3QgdD1lLnRhcmdldC5pZDtpZighdGhpcy5wcm9ncmVzc2luZ1RhcmdldHMuaW5jbHVkZXModCkpcmV0dXJuITE7Y29uc3Qgbj1hLnRvU3RyaW5nKEEuQU5JTSksaT1hLnRvU3RyaW5nKEEuQU5JTVBST1ApO2lmKCEobiBpbiB0aGlzLmFuaW1hdGlvbnMpKXJldHVybiExO2NvbnN0IHI9dGhpcy5wcm9ncmVzc2luZ1RhcmdldERhdGFbdF07cmV0dXJuISFyJiYobiBpbiByJiYoInBhdXNlZCIhPT1pfHxyW25dLnBhdXNlZCkpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKSxvPXQoOSk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuY3VycmVudFNlcnZlcj0iaHR0cHM6Ly9zdG9yYWdlLWV4dC5wZW5ndWlubW9kLmNvbS8iLHRoaXMudXNlUGVuZ3Vpbk1vZD0hMCx0aGlzLnVzZUdsb2JhbD0hMCx0aGlzLndhaXRpbmdGb3JSZXNwb25zZT0hMSx0aGlzLnNlcnZlckZhaWxlZFJlc3BvbnNlPSExLHRoaXMuc2VydmVyRXJyb3I9IiIsdGhpcy51bmlxdWVQcmVmaXg9InUiK28oKX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ1N0b3JhZ2UiLG5hbWU6IlN0b3JhZ2UiLGNvbG9yMToiIzc2QThGRSIsY29sb3IyOiIjNTM4RUZDIixkb2NzVVJJOiJodHRwczovL2RvY3MucGVuZ3Vpbm1vZC5jb20vZXh0ZW5zaW9ucy9zdG9yYWdlIixibG9ja3M6W3tibG9ja1R5cGU6bi5MQUJFTCx0ZXh0OiJMb2NhbCBTdG9yYWdlIn0se29wY29kZToiZ2V0VmFsdWUiLHRleHQ6ImdldCBbS0VZXSIsZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntLRVk6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJrZXkifX19LHtvcGNvZGU6InNldFZhbHVlIix0ZXh0OiJzZXQgW0tFWV0gdG8gW1ZBTFVFXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0tFWTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImtleSJ9LFZBTFVFOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidmFsdWUifX19LHtvcGNvZGU6ImRlbGV0ZVZhbHVlIix0ZXh0OiJkZWxldGUgW0tFWV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntLRVk6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJrZXkifX19LHtvcGNvZGU6ImdldEtleXMiLHRleHQ6ImdldCBhbGwgc3RvcmVkIG5hbWVzIixkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6bi5SRVBPUlRFUn0se2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6IkxvY2FsIFVwbG9hZGVkIFByb2plY3QgU3RvcmFnZSJ9LHtvcGNvZGU6ImdldFByb2plY3RWYWx1ZSIsdGV4dDoiZ2V0IHVwbG9hZGVkIHByb2plY3QgW0tFWV0iLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFyZ3VtZW50czp7S0VZOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToia2V5In19fSx7b3Bjb2RlOiJzZXRQcm9qZWN0VmFsdWUiLHRleHQ6InNldCB1cGxvYWRlZCBwcm9qZWN0IFtLRVldIHRvIFtWQUxVRV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntLRVk6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJrZXkifSxWQUxVRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InZhbHVlIn19fSx7b3Bjb2RlOiJkZWxldGVQcm9qZWN0VmFsdWUiLHRleHQ6ImRlbGV0ZSB1cGxvYWRlZCBwcm9qZWN0IFtLRVldIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7S0VZOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToia2V5In19fSx7b3Bjb2RlOiJnZXRQcm9qZWN0S2V5cyIsdGV4dDoiZ2V0IGFsbCBzdG9yZWQgbmFtZXMgaW4gdGhpcyB1cGxvYWRlZCBwcm9qZWN0IixkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6bi5SRVBPUlRFUn0se2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6IkxvY2FsIFByb2plY3QgU3RvcmFnZSJ9LHtvcGNvZGU6ImdldFVuaXF1ZVZhbHVlIix0ZXh0OiJnZXQgbG9jYWwgcHJvamVjdCBbS0VZXSIsZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntLRVk6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJrZXkifX19LHtvcGNvZGU6InNldFVuaXF1ZVZhbHVlIix0ZXh0OiJzZXQgbG9jYWwgcHJvamVjdCBbS0VZXSB0byBbVkFMVUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7S0VZOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToia2V5In0sVkFMVUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ2YWx1ZSJ9fX0se29wY29kZToiZGVsZXRlVW5pcXVlVmFsdWUiLHRleHQ6ImRlbGV0ZSBsb2NhbCBwcm9qZWN0IFtLRVldIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7S0VZOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToia2V5In19fSx7b3Bjb2RlOiJnZXRVbmlxdWVLZXlzIix0ZXh0OiJnZXQgYWxsIHN0b3JlZCBuYW1lcyBpbiB0aGlzIGxvY2FsIHByb2plY3QiLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpuLlJFUE9SVEVSfSx7YmxvY2tUeXBlOm4uTEFCRUwsdGV4dDoiU2VydmVyIFN0b3JhZ2UifSx7b3Bjb2RlOiJpc0dsb2JhbFNlcnZlciIsdGV4dDoiaXMgdXNpbmcgZ2xvYmFsIHNlcnZlcj8iLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpuLkJPT0xFQU59LHtvcGNvZGU6InVzZUNlcnRhaW5TZXJ2ZXIiLHRleHQ6InNldCBzZXJ2ZXIgdG8gW1NFUlZFUl0gc2VydmVyIixkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7U0VSVkVSOnt0eXBlOmkuU1RSSU5HLG1lbnU6InNlcnZlclR5cGUifX19LHtvcGNvZGU6IndhaXRpbmdGb3JDb25uZWN0aW9uIix0ZXh0OiJ3YWl0aW5nIGZvciBzZXJ2ZXIgdG8gcmVzcG9uZD8iLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpuLkJPT0xFQU59LHtvcGNvZGU6ImNvbm5lY3Rpb25GYWlsZWQiLHRleHQ6InNlcnZlciBmYWlsZWQgdG8gcmVzcG9uZD8iLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpuLkJPT0xFQU59LHtvcGNvZGU6InNlcnZlckVycm9yT3V0cHV0Iix0ZXh0OiJzZXJ2ZXIgZXJyb3IiLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTpuLlJFUE9SVEVSfSwiLS0tIix7b3Bjb2RlOiJnZXRTZXJ2ZXJWYWx1ZSIsdGV4dDoiZ2V0IHNlcnZlciBbS0VZXSIsZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntLRVk6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJrZXkifX19LHtvcGNvZGU6InNldFNlcnZlclZhbHVlIix0ZXh0OiJzZXQgc2VydmVyIFtLRVldIHRvIFtWQUxVRV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntLRVk6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJrZXkifSxWQUxVRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InZhbHVlIn19fSx7b3Bjb2RlOiJkZWxldGVTZXJ2ZXJWYWx1ZSIsdGV4dDoiZGVsZXRlIHNlcnZlciBbS0VZXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0tFWTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImtleSJ9fX1dLG1lbnVzOntzZXJ2ZXJUeXBlOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJwcm9qZWN0IiwiZ2xvYmFsIl0ubWFwKEE9Pih7dGV4dDpBLHZhbHVlOkF9KSl9fX19c2VyaWFsaXplKCl7cmV0dXJue3VuaXF1ZUlkOnRoaXMudW5pcXVlUHJlZml4fX1kZXNlcmlhbGl6ZShBKXt0aGlzLnVuaXF1ZVByZWZpeD1BLnVuaXF1ZUlkfWdldFByZWZpeChBKXtyZXR1cm4iUE1fUFJPSkVDVFNUT1JBR0VfRVhUXyIuY29uY2F0KG51bGw9PUE/IiI6IiIuY29uY2F0KEEsIl8iKSl9Z2V0QWxsS2V5cyhBKXtyZXR1cm4gT2JqZWN0LmtleXMobG9jYWxTdG9yYWdlKS5maWx0ZXIoZT0+ZS5zdGFydHNXaXRoKHRoaXMuZ2V0UHJlZml4KEEpKSkubWFwKGU9PmUucmVwbGFjZSh0aGlzLmdldFByZWZpeChBKSwiIikpfWdldFByb2plY3RJZCgpe2NvbnN0IEE9U3RyaW5nKHdpbmRvdy5sb2NhdGlvbi5oYXNoKS5yZXBsYWNlKC8jL2dpbSwiIik7cmV0dXJuIHIudG9OdW1iZXIoQSl9cnVuUGVuZ3VpbldlYlJlcXVlc3QoQSxlLHQpe3JldHVybiB0aGlzLndhaXRpbmdGb3JSZXNwb25zZT0hMCx0aGlzLnNlcnZlckZhaWxlZFJlc3BvbnNlPSExLHRoaXMuc2VydmVyRXJyb3I9IiIsbmV3IFByb21pc2Uobj0+e2xldCBpPW51bGw7aT1udWxsIT09ZT9mZXRjaChBLGUpOmZldGNoKEEpLGkudGhlbihBPT57QS50ZXh0KCkudGhlbihlPT57aWYoIUEub2spcmV0dXJuIHRoaXMud2FpdGluZ0ZvclJlc3BvbnNlPSExLHRoaXMuc2VydmVyRmFpbGVkUmVzcG9uc2U9ITAsdGhpcy5zZXJ2ZXJFcnJvcj1yLnRvU3RyaW5nKGUpLG51bGwhPT10P24odCk6dm9pZCBuKGUpO3RoaXMud2FpdGluZ0ZvclJlc3BvbnNlPSExLHRoaXMuc2VydmVyRmFpbGVkUmVzcG9uc2U9ITEsdGhpcy5zZXJ2ZXJFcnJvcj0iIixuKGUpfSkuY2F0Y2goQT0+e2lmKHRoaXMud2FpdGluZ0ZvclJlc3BvbnNlPSExLHRoaXMuc2VydmVyRmFpbGVkUmVzcG9uc2U9ITAsdGhpcy5zZXJ2ZXJFcnJvcj1yLnRvU3RyaW5nKEEpLG51bGwhPT10KXJldHVybiBuKHQpO24oQSl9KX0pLmNhdGNoKEE9PntpZih0aGlzLndhaXRpbmdGb3JSZXNwb25zZT0hMSx0aGlzLnNlcnZlckZhaWxlZFJlc3BvbnNlPSEwLHRoaXMuc2VydmVyRXJyb3I9ci50b1N0cmluZyhBKSxudWxsIT09dClyZXR1cm4gbih0KTtuKEEpfSl9KX1nZXRDdXJyZW50U2VydmVyKCl7cmV0dXJuImh0dHBzOi8vc3RvcmFnZS1leHQucGVuZ3Vpbm1vZC5jb20vIn1nZXRLZXlzKCl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMuZ2V0QWxsS2V5cygpKX1nZXRWYWx1ZShBKXtjb25zdCBlPXRoaXMuZ2V0UHJlZml4KCkrci50b1N0cmluZyhBLktFWSksdD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKTtyZXR1cm4gbnVsbD09PXQ/IiI6ci50b1N0cmluZyh0KX1zZXRWYWx1ZShBKXtjb25zdCBlPXRoaXMuZ2V0UHJlZml4KCkrci50b1N0cmluZyhBLktFWSksdD1yLnRvU3RyaW5nKEEuVkFMVUUpO3JldHVybiBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShlLHQpfWRlbGV0ZVZhbHVlKEEpe2NvbnN0IGU9dGhpcy5nZXRQcmVmaXgoKStyLnRvU3RyaW5nKEEuS0VZKTtyZXR1cm4gbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oZSl9Z2V0UHJvamVjdEtleXMoKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5nZXRBbGxLZXlzKHRoaXMuZ2V0UHJvamVjdElkKCkpKX1nZXRQcm9qZWN0VmFsdWUoQSl7Y29uc3QgZT10aGlzLmdldFByZWZpeCh0aGlzLmdldFByb2plY3RJZCgpKStyLnRvU3RyaW5nKEEuS0VZKSx0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKGUpO3JldHVybiBudWxsPT09dD8iIjpyLnRvU3RyaW5nKHQpfXNldFByb2plY3RWYWx1ZShBKXtjb25zdCBlPXRoaXMuZ2V0UHJlZml4KHRoaXMuZ2V0UHJvamVjdElkKCkpK3IudG9TdHJpbmcoQS5LRVkpLHQ9ci50b1N0cmluZyhBLlZBTFVFKTtyZXR1cm4gbG9jYWxTdG9yYWdlLnNldEl0ZW0oZSx0KX1kZWxldGVQcm9qZWN0VmFsdWUoQSl7Y29uc3QgZT10aGlzLmdldFByZWZpeCh0aGlzLmdldFByb2plY3RJZCgpKStyLnRvU3RyaW5nKEEuS0VZKTtyZXR1cm4gbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oZSl9Z2V0VW5pcXVlS2V5cygpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLmdldEFsbEtleXModGhpcy51bmlxdWVQcmVmaXgpKX1nZXRVbmlxdWVWYWx1ZShBKXtjb25zdCBlPXRoaXMuZ2V0UHJlZml4KHRoaXMudW5pcXVlUHJlZml4KStyLnRvU3RyaW5nKEEuS0VZKSx0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKGUpO3JldHVybiBudWxsPT09dD8iIjpyLnRvU3RyaW5nKHQpfXNldFVuaXF1ZVZhbHVlKEEpe2NvbnN0IGU9dGhpcy5nZXRQcmVmaXgodGhpcy51bmlxdWVQcmVmaXgpK3IudG9TdHJpbmcoQS5LRVkpLHQ9ci50b1N0cmluZyhBLlZBTFVFKTtyZXR1cm4gbG9jYWxTdG9yYWdlLnNldEl0ZW0oZSx0KX1kZWxldGVVbmlxdWVWYWx1ZShBKXtjb25zdCBlPXRoaXMuZ2V0UHJlZml4KHRoaXMudW5pcXVlUHJlZml4KStyLnRvU3RyaW5nKEEuS0VZKTtyZXR1cm4gbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oZSl9aXNHbG9iYWxTZXJ2ZXIoKXtyZXR1cm4gdGhpcy51c2VHbG9iYWx9dXNlQ2VydGFpblNlcnZlcihBKXtjb25zdCBlPXIudG9TdHJpbmcoQS5TRVJWRVIpLnRvTG93ZXJDYXNlKCk7cmV0dXJuWyJwcm9qZWN0IiwiZ2xvYmFsIl0uaW5jbHVkZXMoZSk/KHRoaXMuY3VycmVudFNlcnZlcj0iaHR0cHM6Ly9zdG9yYWdlLWV4dC5wZW5ndWlubW9kLmNvbS8iLHRoaXMudXNlUGVuZ3Vpbk1vZD0hMCx0aGlzLnVzZUdsb2JhbD0iZ2xvYmFsIj09PWUpOih0aGlzLmN1cnJlbnRTZXJ2ZXI9ci50b1N0cmluZyhBLlNFUlZFUiksdGhpcy5jdXJyZW50U2VydmVyLmVuZHNXaXRoKCIvIil8fCh0aGlzLmN1cnJlbnRTZXJ2ZXIrPSIvIiksdGhpcy51c2VQZW5ndWluTW9kPSExLHRoaXMudXNlR2xvYmFsPSEwKSx0aGlzLnJ1blBlbmd1aW5XZWJSZXF1ZXN0KHRoaXMuY3VycmVudFNlcnZlcil9d2FpdGluZ0ZvckNvbm5lY3Rpb24oKXtyZXR1cm4gdGhpcy53YWl0aW5nRm9yUmVzcG9uc2V9Y29ubmVjdGlvbkZhaWxlZCgpe3JldHVybiB0aGlzLnNlcnZlckZhaWxlZFJlc3BvbnNlfXNlcnZlckVycm9yT3V0cHV0KCl7cmV0dXJuIHRoaXMuc2VydmVyRXJyb3J9Z2V0U2VydmVyVmFsdWUoQSl7Y29uc3QgZT1yLnRvU3RyaW5nKEEuS0VZKTtyZXR1cm4gdGhpcy5ydW5QZW5ndWluV2ViUmVxdWVzdCgiIi5jb25jYXQodGhpcy5jdXJyZW50U2VydmVyLCJnZXQ/a2V5PSIpLmNvbmNhdChlKS5jb25jYXQodGhpcy51c2VHbG9iYWw/IiI6IiZwcm9qZWN0PSIuY29uY2F0KHRoaXMuZ2V0UHJvamVjdElkKCkpKSxudWxsLCIiKX1zZXRTZXJ2ZXJWYWx1ZShBKXtjb25zdCBlPXIudG9TdHJpbmcoQS5LRVkpLHQ9ci50b1N0cmluZyhBLlZBTFVFKTtyZXR1cm4gdGhpcy5ydW5QZW5ndWluV2ViUmVxdWVzdCgiIi5jb25jYXQodGhpcy5jdXJyZW50U2VydmVyLCJzZXQ/a2V5PSIpLmNvbmNhdChlKS5jb25jYXQodGhpcy51c2VHbG9iYWw/IiI6IiZwcm9qZWN0PSIuY29uY2F0KHRoaXMuZ2V0UHJvamVjdElkKCkpKSx7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3ZhbHVlOnR9KX0pfWRlbGV0ZVNlcnZlclZhbHVlKEEpe2NvbnN0IGU9ci50b1N0cmluZyhBLktFWSk7cmV0dXJuIHRoaXMucnVuUGVuZ3VpbldlYlJlcXVlc3QoIiIuY29uY2F0KHRoaXMuY3VycmVudFNlcnZlciwiZGVsZXRlP2tleT0iKS5jb25jYXQoZSkuY29uY2F0KHRoaXMudXNlR2xvYmFsPyIiOiImcHJvamVjdD0iLmNvbmNhdCh0aGlzLmdldFByb2plY3RJZCgpKSkse21ldGhvZDoiREVMRVRFIn0pfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKSxvPXQoMzQ3KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy50aW1lcnM9e30sQS5vbigiUlVOVElNRV9QQVVTRUQiLCgpPT57dGhpcy5fZ2V0VGltZXJzQXJyYXkoKS5mb3JFYWNoKEE9PkEuaW5zdGFuY2UucGF1c2UoITApKX0pLEEub24oIlJVTlRJTUVfVU5QQVVTRUQiLCgpPT57dGhpcy5fZ2V0VGltZXJzQXJyYXkoKS5mb3JFYWNoKEE9PkEuaW5zdGFuY2Uuc3RhcnQoITApKX0pfV9nZXRUaW1lcnNBcnJheSgpe3JldHVybiBPYmplY3QudmFsdWVzKHRoaXMudGltZXJzKX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqZ1RpbWVycyIsbmFtZToiTXVsdGlwbGUgVGltZXJzIixjb2xvcjE6IiMwMDkzRkUiLGNvbG9yMjoiIzExNzdGQyIsYmxvY2tzOlt7b3Bjb2RlOiJjcmVhdGVUaW1lciIsdGV4dDoiY3JlYXRlIHRpbWVyIG5hbWVkIFtOQU1FXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0aW1lciJ9fX0se29wY29kZToiZGVsZXRlVGltZXIiLHRleHQ6ImRlbGV0ZSB0aW1lciBuYW1lZCBbTkFNRV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidGltZXIifX19LHtvcGNvZGU6ImRlbGV0ZUFsbFRpbWVyIix0ZXh0OiJkZWxldGUgYWxsIHRpbWVycyIsYmxvY2tUeXBlOm4uQ09NTUFORH0se3RleHQ6IlZhbHVlcyIsYmxvY2tUeXBlOm4uTEFCRUx9LHtvcGNvZGU6ImdldFRpbWVyIix0ZXh0OiJnZXQgdGltZXIgbmFtZWQgW05BTUVdIixibG9ja1R5cGU6bi5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMSxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0aW1lciJ9fX0se29wY29kZToiZ2V0VGltZXJEYXRhIix0ZXh0OiJnZXQgW0RBVEFdIG9mIHRpbWVyIG5hbWVkIFtOQU1FXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITEsYXJndW1lbnRzOntEQVRBOnt0eXBlOmkuU1RSSU5HLG1lbnU6InRpbWVyRGF0YSJ9LE5BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0aW1lciJ9fX0se29wY29kZToiZXhpc3RzVGltZXIiLHRleHQ6InRpbWVyIG5hbWVkIFtOQU1FXSBleGlzdHM/IixibG9ja1R5cGU6bi5CT09MRUFOLGRpc2FibGVNb25pdG9yOiExLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InRpbWVyIn19fSx7b3Bjb2RlOiJnZXRBbGxUaW1lciIsdGV4dDoiZ2V0IGFsbCB0aW1lcnMiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiExfSx7dGV4dDoiT3BlcmF0aW9ucyIsYmxvY2tUeXBlOm4uTEFCRUx9LHtvcGNvZGU6InN0YXJ0VGltZXIiLHRleHQ6InN0YXJ0IHRpbWVyIFtOQU1FXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e05BTUU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0aW1lciJ9fX0se29wY29kZToicGF1c2VUaW1lciIsdGV4dDoicGF1c2UgdGltZXIgW05BTUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InRpbWVyIn19fSx7b3Bjb2RlOiJzdG9wVGltZXIiLHRleHQ6InN0b3AgdGltZXIgW05BTUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InRpbWVyIn19fSx7b3Bjb2RlOiJyZXNldFRpbWVyIix0ZXh0OiJyZXNldCB0aW1lciBbTkFNRV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidGltZXIifX19LHtvcGNvZGU6ImFkZFRpbWVyIix0ZXh0OiJhZGQgW1NFQ09ORFNdIHNlY29uZHMgdG8gdGltZXIgW05BTUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7U0VDT05EUzp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6NX0sTkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InRpbWVyIn19fV0sbWVudXM6e3RpbWVyRGF0YTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsibWlsbGlzZWNvbmRzIiwibWludXRlcyIsImhvdXJzIiwiZGF5cyIsIndlZWtzIiwieWVhcnMiXS5tYXAoQT0+KHt0ZXh0OkEsdmFsdWU6QX0pKX19fX1jcmVhdGVUaW1lcihBKXt0aGlzLnRpbWVyc1tBLk5BTUVdfHwodGhpcy50aW1lcnNbQS5OQU1FXT17bmFtZTpyLnRvU3RyaW5nKEEuTkFNRSksaW5zdGFuY2U6bmV3IG99KX1kZWxldGVUaW1lcihBKXt0aGlzLnRpbWVyc1tBLk5BTUVdJiZkZWxldGUgdGhpcy50aW1lcnNbQS5OQU1FXX1kZWxldGVBbGxUaW1lcigpe3RoaXMudGltZXJzPXt9fWdldFRpbWVyKEEpe2NvbnN0IGU9dGhpcy50aW1lcnNbQS5OQU1FXTtpZighZSlyZXR1cm4iIjtjb25zdCB0PWUuaW5zdGFuY2UuZ2V0VGltZSghMCk7cmV0dXJuIHIudG9OdW1iZXIodCl9Z2V0VGltZXJEYXRhKEEpe2NvbnN0IGU9dGhpcy50aW1lcnNbQS5OQU1FXTtpZighZSlyZXR1cm4iIjtjb25zdCB0PXIudG9OdW1iZXIoZS5pbnN0YW5jZS5nZXRUaW1lKCEwKSk7c3dpdGNoKEEuREFUQSl7Y2FzZSJtaWxsaXNlY29uZHMiOnJldHVybiAxZTMqdDtjYXNlIm1pbnV0ZXMiOnJldHVybiBNYXRoLmZsb29yKHQvNjApO2Nhc2UiaG91cnMiOnJldHVybiBNYXRoLmZsb29yKHQvMzYwMCk7Y2FzZSJkYXlzIjpyZXR1cm4gTWF0aC5mbG9vcih0Lzg2NDAwKTtjYXNlIndlZWtzIjpyZXR1cm4gTWF0aC5mbG9vcih0LzYwNDgwMCk7Y2FzZSJ5ZWFycyI6cmV0dXJuIE1hdGguZmxvb3IodC8zMTUzNmUzKTtkZWZhdWx0OnJldHVybiB0fX1leGlzdHNUaW1lcihBKXtyZXR1cm4hIXRoaXMudGltZXJzW0EuTkFNRV19Z2V0QWxsVGltZXIoKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5fZ2V0VGltZXJzQXJyYXkoKS5tYXAoQT0+QS5uYW1lKSl9c3RhcnRUaW1lcihBKXtjb25zdCBlPXRoaXMudGltZXJzW0EuTkFNRV07ZSYmZS5pbnN0YW5jZS5zdGFydCgpfXBhdXNlVGltZXIoQSl7Y29uc3QgZT10aGlzLnRpbWVyc1tBLk5BTUVdO2UmJmUuaW5zdGFuY2UucGF1c2UoKX1zdG9wVGltZXIoQSl7Y29uc3QgZT10aGlzLnRpbWVyc1tBLk5BTUVdO2UmJmUuaW5zdGFuY2Uuc3RvcCgpfXJlc2V0VGltZXIoQSl7Y29uc3QgZT10aGlzLnRpbWVyc1tBLk5BTUVdO2UmJmUuaW5zdGFuY2UucmVzZXQoKX1hZGRUaW1lcihBKXtjb25zdCBlPXRoaXMudGltZXJzW0EuTkFNRV07aWYoIWUpcmV0dXJuO2NvbnN0IHQ9ci50b051bWJlcihBLlNFQ09ORFMpO2UuaW5zdGFuY2UuYWRkKDFlMyp0KX19fSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBLGUpe3RoaXMuc3RhcnRUaW1lPUF8fERhdGUubm93KCksZSYmKHRoaXMucGF1c2VUaW1lPWUpLHRoaXMuc3RvcHBlZD0hMH1zdGFydCgpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdJiZhcmd1bWVudHNbMF07Y29uc3QgZT1udWxsIT09dGhpcy5wYXVzZVRpbWU7IXRoaXMuc3RvcHBlZCYmIWV8fGUmJkEmJiF0aGlzLnZtUGF1c2VkfHwodGhpcy5zdG9wcGVkP3RoaXMuc3RhcnRUaW1lPURhdGUubm93KCk6dGhpcy5zdGFydFRpbWUrPURhdGUubm93KCktdGhpcy5wYXVzZVRpbWUsdGhpcy52bVBhdXNlZD0hMSx0aGlzLnBhdXNlVGltZT1udWxsLHRoaXMuc3RvcHBlZD0hMSl9cGF1c2UoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXSYmYXJndW1lbnRzWzBdO251bGwhPT10aGlzLnBhdXNlVGltZXx8KHRoaXMudm1QYXVzZWQ9QSx0aGlzLnBhdXNlVGltZT1EYXRlLm5vdygpKX1zdG9wKCl7dGhpcy5zdG9wcGVkfHwodGhpcy5zdG9wcGVkPSEwLHRoaXMucGF1c2VUaW1lPURhdGUubm93KCkpfXJlc2V0KCl7dGhpcy5zdG9wcGVkPSEwLHRoaXMucGF1c2VUaW1lPURhdGUubm93KCksdGhpcy5zdGFydFRpbWU9RGF0ZS5ub3coKX1hZGQoQSl7dGhpcy5zdGFydFRpbWUtPUF9Z2V0VGltZShBKXtjb25zdCBlPW51bGwhPT10aGlzLnBhdXNlVGltZSx0PU51bWJlcih0aGlzLnBhdXNlVGltZSktdGhpcy5zdGFydFRpbWUsbj1EYXRlLm5vdygpLXRoaXMuc3RhcnRUaW1lO3JldHVybihlP3Q6bikvKEE/MWUzOjEpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDEwKSxyPXQoMyksbz10KDYzKSxzPXQoMiksYT10KDYpLEI9dCgzNDkpLHtub29wU3dpdGNoOmN9PXQoODgpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLnJ1bnRpbWUucmVnaXN0ZXJDb21waWxlZEV4dGVuc2lvbkJsb2NrcygiamdEZXYiLHRoaXMuZ2V0Q29tcGlsZUluZm8oKSl9Z2V0SW5mbygpe3JldHVybntpZDoiamdEZXYiLG5hbWU6IlRlc3QgRXh0ZW5zaW9uIixjb2xvcjE6IiM0Mjc1ZjUiLGNvbG9yMjoiIzQyNWRmNSIsYmxvY2tzOlt7b3Bjb2RlOiJzdG9wU291bmQiLHRleHQ6InN0b3Agc291bmQgW0lEXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e0lEOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiaWQifX19LHtvcGNvZGU6InN0YXJ0dGltZVNvdW5kIix0ZXh0OiJzdGFydCBzb3VuZCBbSURdIGF0IHNlY29uZHMgW1NFWF0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntJRDp7dHlwZTpyLlNPVU5ELGRlZmF1bHRWYWx1ZToibmFtZSBvciBpbmRleCJ9LFNFWDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJ0cmFuc2l0aW9uU291bmQiLHRleHQ6InNldCBzb3VuZCBbSURdIHZvbHVtZSB0cmFuc2l0aW9uIHRvIHNlY29uZHMgW1NFWF0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntJRDp7dHlwZTpyLlNPVU5ELGRlZmF1bHRWYWx1ZToic291bmQgdG8gc2V0IGZhZGUgb3V0IGVmZmVjdCBvbiJ9LFNFWDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSx7b3Bjb2RlOiJsb2dBcmdzMSIsdGV4dDoiY29zdHVtZSBpbnB1dCBbSU5QVVRdIHNvdW5kIGlucHV0IFtJTlBVVDJdIixibG9ja1R5cGU6bi5SRVBPUlRFUixhcmd1bWVudHM6e0lOUFVUOnt0eXBlOnIuQ09TVFVNRX0sSU5QVVQyOnt0eXBlOnIuU09VTkR9fX0se29wY29kZToibG9nQXJnczIiLHRleHQ6InZhcmlhYmxlIGlucHV0IFtJTlBVVF0gbGlzdCBpbnB1dCBbSU5QVVQyXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpyLlZBUklBQkxFfSxJTlBVVDI6e3R5cGU6ci5MSVNUfX19LHtvcGNvZGU6ImxvZ0FyZ3MzIix0ZXh0OiJicm9hZGNhc3QgaW5wdXQgW0lOUFVUXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpyLkJST0FEQ0FTVH19fSx7b3Bjb2RlOiJsb2dBcmdzNCIsdGV4dDoiY29sb3IgaW5wdXQgW0lOUFVUXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpyLkNPTE9SfX19LHtvcGNvZGU6InNldEVmZmVjdE5hbWUiLHRleHQ6InNldCBbRUZGRUNUXSB0byBbVkFMVUVdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7RUZGRUNUOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiY29sb3IifSxWQUxVRTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJzZXRCbHVyRWZmZWN0Iix0ZXh0OiJzZXQgYmx1ciBbUFhdcHgiLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntQWDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJyZXN0YXJ0RnJvbVRoZVRvcCIsdGV4dDoicmVzdGFydCBmcm9tIHRoZSB0b3AgW0lDT05dIixibG9ja1R5cGU6bi5DT01NQU5ELGlzVGVybWluYWw6ITAsYXJndW1lbnRzOntJQ09OOnt0eXBlOnIuSU1BR0UsZGF0YVVSSToic3RhdGljL2Jsb2Nrcy1tZWRpYS9yZXBlYXQuc3ZnIn19fSx7b3Bjb2RlOiJkb29kb29CbG9ja0xvbG9sIix0ZXh0OiJpZ25vcmUgYmxvY2tzIGluc2lkZSBbSU5QVVRdIixicmFuY2hDb3VudDoxLGJsb2NrVHlwZTpuLkNPTkRJVElPTkFMLGFyZ3VtZW50czp7SU5QVVQ6e3R5cGU6ci5CT09MRUFOfX19LHtvcGNvZGU6ImlmRmFsc2UiLHRleHQ6ImlmIFtJTlBVVF0gaXMgZmFsc2UiLGJyYW5jaENvdW50OjEsYmxvY2tUeXBlOm4uQ09ORElUSU9OQUwsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpyLkJPT0xFQU59fX0se29wY29kZToibXVsdGlwbHlUZXN0Iix0ZXh0OiJtdWx0aXBseSBbVkFSXSBieSBbTVVMVF0gdGhlbiIsYnJhbmNoQ291bnQ6MSxibG9ja1R5cGU6bi5DT05ESVRJT05BTCxhcmd1bWVudHM6e1ZBUjp7dHlwZTpyLlNUUklORyxtZW51OiJ2YXJpYWJsZSJ9LE1VTFQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjR9fX0se29wY29kZToiY29tcGlsZWRJZk5vdCIsdGV4dDoiaWYgbm90IFtDT05ESVRJT05dIHRoZW4gKGNvbXBpbGVkKSIsYnJhbmNoQ291bnQ6MSxibG9ja1R5cGU6bi5DT05ESVRJT05BTCxhcmd1bWVudHM6e0NPTkRJVElPTjp7dHlwZTpyLkJPT0xFQU59fX0se29wY29kZToiY29tcGlsZWRSZXR1cm4iLHRleHQ6InJldHVybiBbUkVUVVJOXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxpc1Rlcm1pbmFsOiEwLGFyZ3VtZW50czp7UkVUVVJOOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiMSJ9fX0se29wY29kZToiY29tcGlsZWRPdXRwdXQiLHRleHQ6ImNvbXBpbGVkIGNvZGUiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwfSx7b3Bjb2RlOiJicmFuY2hOZXdUaHJlYWQiLHRleHQ6Im5ldyB0aHJlYWQiLGJyYW5jaENvdW50OjEsYmxvY2tUeXBlOm4uQ09ORElUSU9OQUx9LHtvcGNvZGU6IndoYXR0aGVzY2FsbG9wIix0ZXh0OiJicnVoIFtudW10eXBlYWJsZURyb3Bkb3duXSBbdHlwZWFibGVEcm9wZG93bl0gb3ZlcnJpZGVuOiBbb3ZlcnJpZGVubnVtdHlwZWFibGVEcm9wZG93bl0gW292ZXJyaWRlbnR5cGVhYmxlRHJvcGRvd25dIixhcmd1bWVudHM6e251bXR5cGVhYmxlRHJvcGRvd246e21lbnU6Im51bWVyaWNUeXBlYWJsZVRlc3QifSx0eXBlYWJsZURyb3Bkb3duOnttZW51OiJ0eXBlYWJsZVRlc3QifSxvdmVycmlkZW5udW10eXBlYWJsZURyb3Bkb3duOnttZW51OiJudW1lcmljVHlwZWFibGVUZXN0IixkZWZhdWx0VmFsdWU6NX0sb3ZlcnJpZGVudHlwZWFibGVEcm9wZG93bjp7bWVudToidHlwZWFibGVUZXN0IixkZWZhdWx0VmFsdWU6InlvdXIgbW9tIn19LGJsb2NrVHlwZTpuLlJFUE9SVEVSfSx7b3Bjb2RlOiJib29sZWFuTW9uaXRvciIsdGV4dDoiYm9vbGVhbiBtb25pdG9yIixibG9ja1R5cGU6bi5CT09MRUFOfSx7b3Bjb2RlOiJpZkZhbHNlUmV0dXJuZWQiLHRleHQ6ImlmIFtJTlBVVF0gaXMgZmFsc2UgKHJldHVybikiLGJyYW5jaENvdW50OjEsYmxvY2tUeXBlOm4uQ09ORElUSU9OQUwsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpyLkJPT0xFQU59fX0se29wY29kZToidHVyYnJvd2FvcnBsb29wIixibG9ja1R5cGU6bi5MT09QLHRleHQ6Im15IHJlcGVhdCBbVElNRVNdIixhcmd1bWVudHM6e1RJTUVTOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMH19fSx7b3Bjb2RlOiJhbGlnbm1lbnRUZXN0YXRlIixibG9ja1R5cGU6bi5DT05ESVRJT05BTCx0ZXh0OlsidGhpcyBibG9jayB0ZXN0cyBhbGlnbm1lbnRzIiwibGVmdCIsIm1pZGRsZSIsInJpZ2h0Il0sYWxpZ25tZW50czpbbnVsbCxudWxsLG8uTEVGVCxudWxsLG8uQ0VOVEVSLG51bGwsby5SSUdIVF0sYnJhbmNoQ291bnQ6M30se29wY29kZToic3F1YXJlUmVwb3J0ZXIiLHRleHQ6InNxdWFyZSBib3kiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGJsb2NrU2hhcGU6aS5TUVVBUkV9LHtvcGNvZGU6ImJyYW5jaEluZGljYXRvclRlc3QiLHRleHQ6InRoaXMgaGFzIGEgY3VzdG9tIGJyYW5jaEluZGljYXRvciIsYnJhbmNoQ291bnQ6MSxibG9ja1R5cGU6bi5DT05ESVRJT05BTCxicmFuY2hJbmRpY2F0b3I6Qn0se29wY29kZToiZ2l2ZXNBbkVycm9yIix0ZXh0OiJ0aHJvdyBhbiBlcnJvciIsYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiaGlkZGVuQm9vbGVhbiIsdGV4dDoiaW0gYWN0dWFsbHkgYSBib29sZWFuIG91dHB1dCIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZm9yY2VPdXRwdXRUeXBlOiJCb29sZWFuIixkaXNhYmxlTW9uaXRvcjohMH0se29wY29kZToidmFydmFydmF2dmFydmFydmFyIix0ZXh0OiJ2YXJpYmxlcyE/IT8hPz8hPyE/IT8hPyEhIT8hPyEgW3ZhcmlhYmxlXSIsYXJndW1lbnRzOnt2YXJpYWJsZTp7bWVudToidmFyaWFibGVJbnRlcm5hbCJ9fSxibG9ja1R5cGU6bi5SRVBPUlRFUn0se29wY29kZToiZ3JlZW4iLHRleHQ6ImltIGxpdGVyYWxseSBqdXN0IGdyZWVuIixibG9ja1R5cGU6bi5SRVBPUlRFUixjb2xvcjE6IiMwMGZmMDAiLGNvbG9yMjoiIzAwMDAwMCIsY29sb3IzOiIjMDAwMDAwIixkaXNhYmxlTW9uaXRvcjohMH0se29wY29kZToiZHVwbGljYXRvIix0ZXh0OiJkdXBsaWNhdG8iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGNhbkRyYWdEdXBsaWNhdGU6ITAsZGlzYWJsZU1vbml0b3I6ITAsaGlkZUZyb21QYWxldHRlOiEwfSx7b3Bjb2RlOiJ0aGVoZWhldW9paGV3OWg5IixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6IlRoaXMgYmxvY2sgd2lsbCBhcHBlYXIgaW4gdGhlIHBlbmd1aW5tb2Qgd2lraSBbU0VQXSBbRFVQTElDXSIsYXJndW1lbnRzOntTRVA6e3R5cGU6ci5TRVBFUkFUT1J9LERVUExJQzp7dHlwZTpyLlNUUklORyxmaWxsSW46ImR1cGxpY2F0byJ9fX0se29wY29kZToiZG9jc1NjcmVlbnNob3RCbG9jayIsdGV4dDoidGV4dCIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYmxvY2tTaGFwZTppLlRJQ0tFVCxjb2xvcjE6IiMwMDg4RkYiLGRpc2FibGVNb25pdG9yOiEwfSx7b3Bjb2RlOiJjb3N0dW1lVHlwZVRlc3QiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6InRlc3QgY3VzdG9tIHR5cGUgdXBkYXRpbmcvcmVuZGVyaW5nIChuZXcgaW5zdGFuY2UpIn0se29wY29kZToiY29zdHVtZVR5cGVUZXN0U2FtZSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoidGVzdCBjdXN0b20gdHlwZSB1cGRhdGluZy9yZW5kZXJpbmcgKHNhbWUgaW5zdGFuY2UpIn0se29wY29kZToic3ByaXRlRGVmYXVsdFR5cGUiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6ImdldCB0aGlzIHRhcmdldCJ9LHtvcGNvZGU6InNwcml0ZURlZmF1bHRUeXBlT3RoZXIiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6ImdldCBzdGFnZSB0YXJnZXQifSx7b3Bjb2RlOiJjb3N0dW1lRGVmYXVsdFR5cGUiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6ImdldCBjdXJyZW50IGNvc3R1bWUifSx7b3Bjb2RlOiJzb3VuZERlZmF1bHRUeXBlIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJnZXQgZmlyc3Qgc291bmQifSx7b3Bjb2RlOiJlcGljTGFiZWxUZXN0Iix0ZXh0OiJsb29rIGF0IG15IGNvb2wgbGFiZWwiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiExLGxhYmVsOiJXb3cgdGhpcyBpcyBhIG5pY2UgbGFiZWwifSx7b3Bjb2RlOiJlcGljTGFiZWxUZXN0MiIsdGV4dDoiaSBoYXZlIGEgQ09PTEVSIGxhYmVsLCB3aXRoIG15IFtUWVBFXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITEsbGFiZWxGbjoiZXBpY0xhYmVsVGVzdDJMYWJlbCIsYXJndW1lbnRzOntUWVBFOnt0eXBlOnIuU1RSSU5HLG1lbnU6ImVwaWNMYWJlbFRlc3RNZW51In19fSx7YmxvY2tUeXBlOm4uTEFCRUwsdGV4dDoiTmF0aXZlIENVU1RPTV9TSEFQRVMifSx7b3Bjb2RlOiJjdXN0b21TaGFwZU9DVEFHT05BTCIsdGV4dDoiY3VzdG9tIHNoYXBlIE9DVEFHT05BTCBbVEVTVF0iLGZvcmNlT3V0cHV0VHlwZTppLk9DVEFHT05BTCxibG9ja1NoYXBlOmkuT0NUQUdPTkFMLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFyZ3VtZW50czp7VEVTVDp7dHlwZTpyLlNUUklOR319fSx7b3Bjb2RlOiJjdXN0b21TaGFwZUJVTVBFRCIsdGV4dDoiY3VzdG9tIHNoYXBlIEJVTVBFRCBbVEVTVF0iLGZvcmNlT3V0cHV0VHlwZTppLkJVTVBFRCxibG9ja1NoYXBlOmkuQlVNUEVELGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFyZ3VtZW50czp7VEVTVDp7dHlwZTpyLlNUUklOR319fSx7b3Bjb2RlOiJjdXN0b21TaGFwZUlOREVOVEVEIix0ZXh0OiJjdXN0b20gc2hhcGUgSU5ERU5URUQgW1RFU1RdIixmb3JjZU91dHB1dFR5cGU6aS5JTkRFTlRFRCxibG9ja1NoYXBlOmkuSU5ERU5URUQsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntURVNUOnt0eXBlOnIuU1RSSU5HfX19LHtvcGNvZGU6ImN1c3RvbVNoYXBlU0NSQVBQRUQiLHRleHQ6ImN1c3RvbSBzaGFwZSBTQ1JBUFBFRCBbVEVTVF0iLGZvcmNlT3V0cHV0VHlwZTppLlNDUkFQUEVELGJsb2NrU2hhcGU6aS5TQ1JBUFBFRCxibG9ja1R5cGU6bi5SRVBPUlRFUixhcmd1bWVudHM6e1RFU1Q6e3R5cGU6ci5TVFJJTkd9fX0se29wY29kZToiY3VzdG9tU2hhcGVBUlJPVyIsdGV4dDoiY3VzdG9tIHNoYXBlIEFSUk9XIFtURVNUXSIsZm9yY2VPdXRwdXRUeXBlOmkuQVJST1csYmxvY2tTaGFwZTppLkFSUk9XLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFyZ3VtZW50czp7VEVTVDp7dHlwZTpyLlNUUklOR319fSx7b3Bjb2RlOiJjdXN0b21TaGFwZVRJQ0tFVCIsdGV4dDoiY3VzdG9tIHNoYXBlIFRJQ0tFVCBbVEVTVF0iLGZvcmNlT3V0cHV0VHlwZTppLlRJQ0tFVCxibG9ja1NoYXBlOmkuVElDS0VULGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFyZ3VtZW50czp7VEVTVDp7dHlwZTpyLlNUUklOR319fSx7b3Bjb2RlOiJjdXN0b21TaGFwZUlucHV0T0NUQUdPTkFMIixhcmd1bWVudHM6e1RFU1Q6e3NoYXBlOmkuT0NUQUdPTkFMLGNoZWNrOmkuT0NUQUdPTkFMfX0sdGV4dDoiY3VzdG9tIHNoYXBlIFtURVNUXSIsYmxvY2tUeXBlOm4uUkVQT1JURVJ9LHtvcGNvZGU6ImN1c3RvbVNoYXBlSW5wdXRCVU1QRUQiLGFyZ3VtZW50czp7VEVTVDp7c2hhcGU6aS5CVU1QRUQsY2hlY2s6aS5CVU1QRUR9fSx0ZXh0OiJjdXN0b20gc2hhcGUgW1RFU1RdIixibG9ja1R5cGU6bi5SRVBPUlRFUn0se29wY29kZToiY3VzdG9tU2hhcGVJbnB1dElOREVOVEVEIixhcmd1bWVudHM6e1RFU1Q6e3NoYXBlOmkuSU5ERU5URUQsY2hlY2s6aS5JTkRFTlRFRH19LHRleHQ6ImN1c3RvbSBzaGFwZSBbVEVTVF0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSfSx7b3Bjb2RlOiJjdXN0b21TaGFwZUlucHV0U0NSQVBQRUQiLGFyZ3VtZW50czp7VEVTVDp7c2hhcGU6aS5TQ1JBUFBFRCxjaGVjazppLlNDUkFQUEVEfX0sdGV4dDoiY3VzdG9tIHNoYXBlIFtURVNUXSIsYmxvY2tUeXBlOm4uUkVQT1JURVJ9LHtvcGNvZGU6ImN1c3RvbVNoYXBlSW5wdXRBUlJPVyIsYXJndW1lbnRzOntURVNUOntzaGFwZTppLkFSUk9XLGNoZWNrOmkuQVJST1d9fSx0ZXh0OiJjdXN0b20gc2hhcGUgW1RFU1RdIixibG9ja1R5cGU6bi5SRVBPUlRFUn0se29wY29kZToiY3VzdG9tU2hhcGVJbnB1dFRJQ0tFVCIsYXJndW1lbnRzOntURVNUOntzaGFwZTppLlRJQ0tFVCxjaGVjazppLlRJQ0tFVH19LHRleHQ6ImN1c3RvbSBzaGFwZSBbVEVTVF0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSfSx7YmxvY2tUeXBlOm4uTEFCRUwsdGV4dDoic3dpdGNoaW5nIHRlc3QgY2FzZXMifSx7b3Bjb2RlOiJzd2l0Y2hlc19ub3BhcmFtcyIsdGV4dDoiU3dpdGNoZXMgdGVzdCBjYXNlIDEiLGZ1bmM6Im5vb3AiLGJsb2NrVHlwZTpuLkNPTU1BTkQsc3dpdGNoZXM6W2MsInN3aXRjaGVzX25vcGFyYW1zMiJdfSx7b3Bjb2RlOiJzd2l0Y2hlc19ub3BhcmFtczIiLHRleHQ6IlN3aXRjaGVzIHRlc3QgY2FzZSAyIixmdW5jOiJub29wIixibG9ja1R5cGU6bi5DT01NQU5ELHN3aXRjaGVzOlsic3dpdGNoZXNfbm9wYXJhbXMiLGNdfSx7b3Bjb2RlOiJzd2l0Y2hlc19wYXJhbXMiLHRleHQ6IkhhcyBwYXJhbXMgW3AxXSBbcDJdIixmdW5jOiJub29wIixhcmd1bWVudHM6e3AxOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiaGVsbG8ifSxwMjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IndvcmxkIn19LHN3aXRjaGVzOltjLCJzd2l0Y2hlc19wYXJhbXMyIl19LHtvcGNvZGU6InN3aXRjaGVzX3BhcmFtczIiLHRleHQ6IkhhcyBwYXJhbXMyIFtwMV0gW3AyXSIsZnVuYzoibm9vcCIsYXJndW1lbnRzOntwMTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImhpIn0scDI6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJlYXJ0aCJ9fSxzd2l0Y2hlczpbInN3aXRjaGVzX3BhcmFtcyIsY119LHtvcGNvZGU6InN3aXRjaGVzX2NyZWF0ZXBhcmFtcyIsdGV4dDoiQ3JlYXRlIHBhcmFtcyIsZnVuYzoibm9vcCIsYmxvY2tUeXBlOm4uQ09NTUFORCxzd2l0Y2hlczpbInN3aXRjaGVzX2RlbGV0ZXBhcmFtcyIsY119LHtvcGNvZGU6InN3aXRjaGVzX2RlbGV0ZXBhcmFtcyIsdGV4dDoiRGVsZXRlIHBhcmFtcyBbcDFdIFtwMl0iLGZ1bmM6Im5vb3AiLGFyZ3VtZW50czp7cDE6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJoZWxsbyJ9LHAyOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMyJ9fSxzd2l0Y2hlczpbYywic3dpdGNoZXNfY3JlYXRlcGFyYW1zIl19LHtvcGNvZGU6InN3aXRjaGVzX3JlbmFtZXBhcmFtcyIsdGV4dDoiUmVuYW1lIHBhcmFtcyBbcDFdIFtwMl0iLGZ1bmM6Im5vb3AiLGFyZ3VtZW50czp7cDE6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJoZWxsbyJ9LHAyOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMyJ9fSxzd2l0Y2hlczpbYyx7b3Bjb2RlOiJzd2l0Y2hlc19yZW5hbWVwYXJhbXMyIixyZW1hcEFyZ3VtZW50czp7cDE6InAzIixwMjoicDEifX1dfSx7b3Bjb2RlOiJzd2l0Y2hlc19yZW5hbWVwYXJhbXMyIix0ZXh0OiJSZW5hbWUgcGFyYW1zMiBbcDNdIFtwMV0iLGZ1bmM6Im5vb3AiLGFyZ3VtZW50czp7cDM6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJoaSJ9LHAxOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiNSJ9fSxzd2l0Y2hlczpbYyx7b3Bjb2RlOiJzd2l0Y2hlc19yZW5hbWVwYXJhbXMiLHJlbWFwQXJndW1lbnRzOntwMzoicDEiLHAxOiJwMiJ9fV19LHtvcGNvZGU6InN3aXRjaGVzX3NoYWRvdzEiLHRleHQ6IlN3aXRjaCBzaGFkb3cgdHlwZSBbcDFdIixmdW5jOiJub29wIixhcmd1bWVudHM6e3AxOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiMyJ9fSxzd2l0Y2hlczpbYywic3dpdGNoZXNfc2hhZG93MiJdfSx7b3Bjb2RlOiJzd2l0Y2hlc19zaGFkb3cyIix0ZXh0OiJTd2l0Y2ggc2hhZG93IHR5cGUyIFtwMV0iLGZ1bmM6Im5vb3AiLGFyZ3VtZW50czp7cDE6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxIn19LHN3aXRjaGVzOlsic3dpdGNoZXNfc2hhZG93MSIsY119LHtvcGNvZGU6InN3aXRjaGVzX21lbnUxIix0ZXh0OiJTd2l0Y2ggbWVudXMgW3AxXSIsZnVuYzoibm9vcCIsYXJndW1lbnRzOntwMTp7dHlwZTpyLlNUUklORyxtZW51OiJzd2l0Y2hfbWVudTEifX0sc3dpdGNoZXM6W2Mse29wY29kZToic3dpdGNoZXNfbWVudTIiLHJlbWFwTWVudXM6e3AxOnszOiIxIiwyOiIxIiwxOiIwIiwwOiIwIn19fV19LHtvcGNvZGU6InN3aXRjaGVzX21lbnUyIix0ZXh0OiJTd2l0Y2ggbWVudXMyIFtwMV0iLGZ1bmM6Im5vb3AiLGFyZ3VtZW50czp7cDE6e3R5cGU6ci5TVFJJTkcsbWVudToic3dpdGNoX21lbnUyIn19LHN3aXRjaGVzOlt7b3Bjb2RlOiJzd2l0Y2hlc19tZW51MSIscmVtYXBNZW51czp7cDE6ezE6IjIiLDA6IjEifX19LGNdfSx7b3Bjb2RlOiJzd2l0Y2hlc19icm9rZW4iLHRleHQ6ImludGVudGlvbmFsbHkgYnJva2VuIHN3aXRjaCIsZnVuYzoibm9vcCIsYXJndW1lbnRzOntwMTp7dHlwZTpyLlNUUklORyxtZW51OiJzd2l0Y2hfbWVudTIifX0sc3dpdGNoZXM6W3t9LFsiYSJdLG5ldyBNYXAsMTcsLTE4LCJzd2l0Y2hlc19kb25vdGRlZmluZW1lYW5ncnlmYWNlZW1vamkiXX1dLG1lbnVzOnt2YXJpYWJsZUludGVybmFsOnt2YXJpYWJsZVR5cGU6InNjYWxhciJ9LHZhcmlhYmxlOiJnZXRWYXJpYWJsZXNNZW51IixudW1lcmljVHlwZWFibGVUZXN0OntpdGVtczpbIml0ZW0xIiwiaXRlbTIiLCJpdGVtMyJdLGlzVHlwZWFibGU6ITAsaXNOdW1lcmljOiEwfSx0eXBlYWJsZVRlc3Q6e2l0ZW1zOlsiaXRlbTEiLCJpdGVtMiIsIml0ZW0zIl0saXNUeXBlYWJsZTohMCxpc051bWVyaWM6ITF9LGVwaWNMYWJlbFRlc3RNZW51OntpdGVtczpbe3RleHQ6IkJMT0NLISEhIix2YWx1ZToiYmxvY2sifSx7dGV4dDoiTGFiZWwgRnVuY3Rpb24gO0QiLHZhbHVlOiJmdW5jdGlvbiJ9XX0sc3dpdGNoX21lbnUxOntpdGVtczpbImFhYWEhIiwib2ggbm8iLCJ3aHkgZG8gaSBuZWVkIHRoaXMgbWFueSIsImFuIGV4dHJhIG9uZSBJRy4iXS5tYXAoKEEsZSk9Pih7dGV4dDpBLHZhbHVlOmUudG9TdHJpbmcoKX0pKX0sc3dpdGNoX21lbnUyOntpdGVtczpbIm9rIiwiSSBvbmx5IG5lZWQgYSBjb3VwbGUgaGVyZS4iXS5tYXAoKEEsZSk9Pih7dGV4dDpBLHZhbHVlOmUudG9TdHJpbmcoKX0pKX19fX1zcHJpdGVEZWZhdWx0VHlwZShBLGUpe3JldHVybiBlLnRhcmdldH1zcHJpdGVEZWZhdWx0VHlwZU90aGVyKEEsZSl7cmV0dXJuIHRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpfWNvc3R1bWVEZWZhdWx0VHlwZShBLGUpe3JldHVybiBlLnRhcmdldC5nZXRDb3N0dW1lVHlwZShlLnRhcmdldC5jdXJyZW50Q29zdHVtZSl9c291bmREZWZhdWx0VHlwZShBLGUpe3JldHVybiBlLnRhcmdldC5nZXRTb3VuZFR5cGUoMCl9Y29zdHVtZVR5cGVUZXN0KCl7cmV0dXJue19tb25pdG9yVXBUb0RhdGU6ITEsY29zdHVtSWQ6InRoaW5nIixudW06TWF0aC5zaW4oRGF0ZS5ub3coKS8xZTMpLHRvUmVwb3J0ZXJDb250ZW50KCl7Y29uc3QgQT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIEEuc3R5bGUuY29sb3I9IiNGMDAiLEEudGV4dENvbnRlbnQ9dGhpcy5udW0sQX0sdG9Nb25pdG9yQ29udGVudCgpe3RoaXMuX21vbml0b3JVcFRvRGF0ZT0hMDtjb25zdCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtyZXR1cm4gQS5zdHlsZS5jb2xvcj0iIzBGMCIsQS50ZXh0Q29udGVudD10aGlzLm51bSxBfSx0b0xpc3RJdGVtKCl7dGhpcy5fbW9uaXRvclVwVG9EYXRlPSEwO2NvbnN0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiBBLnN0eWxlLmNvbG9yPSIjMDBGIixBLnRleHRDb250ZW50PXRoaXMubnVtLEF9LHRvTGlzdEVkaXRvcigpe3JldHVybiJbbnVtICIuY29uY2F0KHRoaXMubnVtLCJdIil9LGZyb21MaXN0RWRpdG9yKEEpe3JldHVybiB0aGlzLm51bT1OdW1iZXIoQS5zbGljZSg1LC0xKSksdGhpc319fWNvc3R1bWVUeXBlVGVzdFNhbWUoKXtyZXR1cm4gdGhpcy5jdXN0b218fCh0aGlzLmN1c3RvbT10aGlzLmNvc3R1bWVUeXBlVGVzdCgpKSx0aGlzLmN1c3RvbS5udW09TWF0aC5zaW4oRGF0ZS5ub3coKS8xZTMpLHRoaXMuY3VzdG9tLl9tb25pdG9yVXBUb0RhdGU9ITEsdGhpcy5jdXN0b219Z2V0Q29tcGlsZUluZm8oKXtyZXR1cm57aXI6e2NvbXBpbGVkSWZOb3Q6KEEsZSk9Pih7a2luZDoic3RhY2siLGNvbmRpdGlvbjpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQ09ORElUSU9OIiksd2hlblRydWU6QS5kZXNjZW5kU3Vic3RhY2soZSwiU1VCU1RBQ0siKSx3aGVuRmFsc2U6W119KSxjb21waWxlZFJldHVybjooQSxlKT0+KHtraW5kOiJzdGFjayIscmV0dXJuOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJSRVRVUk4iKX0pLHJlc3RhcnRGcm9tVGhlVG9wOigpPT4oe2tpbmQ6InN0YWNrIn0pLGNvbXBpbGVkT3V0cHV0OigpPT4oe2tpbmQ6ImlucHV0In0pfSxqczp7Y29tcGlsZWRJZk5vdDooQSxlLHQpPT57ZS5zb3VyY2UrPSJpZiAoISgiLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLmNvbmRpdGlvbikuYXNCb29sZWFuKCksIikpIHtcbiIpLGUuZGVzY2VuZFN0YWNrKEEud2hlblRydWUsbmV3IHQuRnJhbWUoITEpKSxBLndoZW5GYWxzZS5sZW5ndGgmJihlLnNvdXJjZSs9In0gZWxzZSB7XG4iLGUuZGVzY2VuZFN0YWNrKEEud2hlbkZhbHNlLG5ldyB0LkZyYW1lKCExKSkpLGUuc291cmNlKz0ifVxuIn0sY29tcGlsZWRSZXR1cm46KEEsZSk9PntlLnNvdXJjZSs9InJldHVybiAiLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLnJldHVybikuYXNTdHJpbmcoKSwiOyIpfSxyZXN0YXJ0RnJvbVRoZVRvcDooQSxlKT0+e2Uuc291cmNlKz0icnVudGltZS5fcmVzdGFydFRocmVhZCh0aHJlYWQpOyIsZS5zb3VyY2UrPSJyZXR1cm47In0sY29tcGlsZWRPdXRwdXQ6KEEsZSx0KT0+e2NvbnN0IG49cy50b1N0cmluZyhlLnNvdXJjZSk7cmV0dXJuIG5ldyB0LlR5cGVkSW5wdXQoSlNPTi5zdHJpbmdpZnkobiksdC5UWVBFX1NUUklORyl9fX19dmFydmFydmF2dmFydmFydmFyKEEpe3JldHVybiBKU09OLnN0cmluZ2lmeShBKX1nZXRWYXJpYWJsZXNNZW51KCl7Y29uc3QgQT12bS5lZGl0aW5nVGFyZ2V0LGU9W3t0ZXh0OiIiLHZhbHVlOiIifV07aWYoIUEpcmV0dXJuIGU7aWYoIUEudmFyaWFibGVzKXJldHVybiBlO2NvbnN0IHQ9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoQS52YXJpYWJsZXMpLm1hcChlPT57Y29uc3QgdD1BLnZhcmlhYmxlc1tlXTtyZXR1cm57dGV4dDp0Lm5hbWUsdmFsdWU6dC5uYW1lfX0pO3JldHVybiB0Lmxlbmd0aD4wP3Q6ZX1icmFuY2hJbmRpY2F0b3JUZXN0KCl7fWVwaWNMYWJlbFRlc3QoKXtyZXR1cm4iZ2V0IG91dCAhISEg8J+XoyJ9ZXBpY0xhYmVsVGVzdDIoKXtyZXR1cm4iaG1tIHF1aXRlIHBlY3VsaWFyIn1lcGljTGFiZWxUZXN0MkxhYmVsKEEpe3JldHVybiJibG9jayI9PT1BLlRZUEU/IllvdXIgYmxvY2sgaXMgQk9SSU5HISEhISEiOiJZZXMsIHRoaXMgZnVuY3Rpb24gaXMgdmVyeSBjb29sIn1fZ2V0U291bmRJbmRleChBLGUpe2NvbnN0IHQ9ZS50YXJnZXQuc3ByaXRlLnNvdW5kcy5sZW5ndGg7aWYoMD09PXQpcmV0dXJuLTE7Y29uc3Qgbj10aGlzLl9nZXRTb3VuZEluZGV4QnlOYW1lKEEsZSk7aWYoLTEhPT1uKXJldHVybiBuO2NvbnN0IGk9cGFyc2VJbnQoQSwxMCk7cmV0dXJuIGlzTmFOKGkpPy0xOmEud3JhcENsYW1wKGktMSwwLHQtMSl9X2dldFNvdW5kSW5kZXhCeU5hbWUoQSxlKXtjb25zdCB0PWUudGFyZ2V0LnNwcml0ZS5zb3VuZHM7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspaWYodFtlXS5uYW1lPT09QSlyZXR1cm4gZTtyZXR1cm4tMX1icmFuY2hOZXdUaHJlYWQoQSxlKXtlLnRocmVhZC50YXJnZXQuYmxvY2tzLmdldEJyYW5jaChlLnRocmVhZC5wZWVrU3RhY2soKSwwKSYmZS5zZXF1ZW5jZXIucnVudGltZS5fcHVzaFRocmVhZChlLnRocmVhZC50YXJnZXQuYmxvY2tzLmdldEJyYW5jaChlLnRocmVhZC5wZWVrU3RhY2soKSwwKSxlLnRhcmdldCx7fSl9Ym9vbGVhbk1vbml0b3IoKXtyZXR1cm4gMT09TWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKX1zdG9wU291bmQoQSxlKXtjb25zdCB0PWUudGFyZ2V0LG49dC5zcHJpdGU7aWYoIW4pcmV0dXJuO2NvbnN0IGk9bi5zb3VuZEJhbms7aWYoIWkpcmV0dXJuO2NvbnN0IHI9cy50b1N0cmluZyhBLklEKTtpLnN0b3AodCxyKX1zdGFydHRpbWVTb3VuZChBLGUpe2NvbnN0IHQ9cy50b1N0cmluZyhBLklEKSxuPXRoaXMuX2dldFNvdW5kSW5kZXgodCxlKTtpZihuPDApcmV0dXJuO2NvbnN0IGk9ZS50YXJnZXQscj1pLnNwcml0ZTtpZighcilyZXR1cm47aWYoIXIuc291bmRzKXJldHVybjtjb25zdHtzb3VuZElkOm99PXIuc291bmRzW25dLGE9ci5zb3VuZEJhbms7YSYmYS5wbGF5U291bmQoaSxvLHMudG9OdW1iZXIoQS5TRVgpKX10cmFuc2l0aW9uU291bmQoQSxlKXtjb25zdCB0PXMudG9TdHJpbmcoQS5JRCksbj10aGlzLl9nZXRTb3VuZEluZGV4KHQsZSk7aWYobjwwKXJldHVybjtjb25zdCBpPWUudGFyZ2V0LnNwcml0ZTtpZighaSlyZXR1cm47aWYoIWkuc291bmRzKXJldHVybjtjb25zdHtzb3VuZElkOnJ9PWkuc291bmRzW25dLG89aS5zb3VuZEJhbms7byYmKG8uc291bmRQbGF5ZXJzW3JdLnN0b3BGYWRlRGVjYXk9cy50b051bWJlcihBLlNFWCkpfWdyZWVuKCl7cmV0dXJuImcifWxvZ0FyZ3MxKEEpe3JldHVybiBjb25zb2xlLmxvZyhBKSxKU09OLnN0cmluZ2lmeShBKX1sb2dBcmdzMihBKXtyZXR1cm4gY29uc29sZS5sb2coQSksSlNPTi5zdHJpbmdpZnkoQSl9bG9nQXJnczMoQSl7cmV0dXJuIGNvbnNvbGUubG9nKEEpLEpTT04uc3RyaW5naWZ5KEEpfWxvZ0FyZ3M0KEEpe3JldHVybiBjb25zb2xlLmxvZyhBKSxKU09OLnN0cmluZ2lmeShBKX1zZXRFZmZlY3ROYW1lKEEsZSl7Y29uc3QgdD1zLnRvTnVtYmVyKEEuVkFMVUUpO2UudGFyZ2V0LnNldEVmZmVjdChBLkVGRkVDVCx0KX1zZXRCbHVyRWZmZWN0KEEsZSl7Y29uc3QgdD1zLnRvTnVtYmVyKEEuUFgpO2UudGFyZ2V0LnNldEVmZmVjdCgiYmx1ciIsdCl9ZG9vZG9vQmxvY2tMb2xvbChBLGUpeyEwIT09QS5JTlBVVCYmKGNvbnNvbGUubG9nKEEsZSksZS5zdGFydEJyYW5jaCgxLCExKSxjb25zb2xlLmxvZyhlLnRhcmdldC5nZXRDdXJyZW50Q29zdHVtZSgpKSl9aWZGYWxzZShBLGUpe2NvbnNvbGUubG9nKEEsZSksQS5JTlBVVHx8ZS5zdGFydEJyYW5jaCgxLCExKX1pZkZhbHNlUmV0dXJuZWQoQSl7aWYoIUEuSU5QVVQpcmV0dXJuIDF9dHVyYnJvd2FvcnBsb29wKEEsZSl7bGV0e1RJTUVTOnR9PUE7Y29uc3Qgbj1NYXRoLnJvdW5kKHMudG9OdW1iZXIodCkpO2lmKHZvaWQgMD09PWUuc3RhY2tGcmFtZS5sb29wQ291bnRlciYmKGUuc3RhY2tGcmFtZS5sb29wQ291bnRlcj1uKSxlLnN0YWNrRnJhbWUubG9vcENvdW50ZXItLSxlLnN0YWNrRnJhbWUubG9vcENvdW50ZXI+PTApcmV0dXJuITB9Y29tcGlsZWRJZk5vdChBLGUpe3MudG9Cb29sZWFuKEEuQ09ORElUSU9OKXx8ZS5zdGFydEJyYW5jaCgxLCExKX1jb21waWxlZFJldHVybigpe3JldHVybiJub29wIn1yZXN0YXJ0RnJvbVRoZVRvcCgpe3JldHVybiJub29wIn1jb21waWxlZE91dHB1dCgpe3JldHVybiI8dW5hdmFpbGFibGUgd2l0aG91dCBjb21waWxlcj4ifWhpZGRlbkJvb2xlYW4oKXtyZXR1cm4hMH1tdWx0aXBseVRlc3QoQSxlKXtjb25zdCB0PWUudGFyZ2V0O09iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHQudmFyaWFibGVzKS5mb3JFYWNoKGU9Pntjb25zdCBuPXQudmFyaWFibGVzW2VdO24ubmFtZT09PXMudG9TdHJpbmcoQS5WQVIpJiYoY29uc29sZS5sb2cobiksIm51bWJlciIhPXR5cGVvZiBuLnZhbHVlJiYobi52YWx1ZT0wKSxuLnZhbHVlKj1zLnRvTnVtYmVyKEEuTVVMVCkpfSl9d2hhdHRoZXNjYWxsb3AoQSl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KEEpfXNxdWFyZVJlcG9ydGVyKCl7cmV0dXJuIDB9YWxpZ25tZW50VGVzdGF0ZSgpe31naXZlc0FuRXJyb3IoKXt0aHJvdyBuZXcgRXJyb3IoIndvYWggYW4gZXJyb3IiKX1ub29wKCl7fWR1cGxpY2F0bygpe3JldHVybiAwfXRoZWhlaGV1b2loZXc5aDkoKXt9ZG9jc1NjcmVlbnNob3RCbG9jaygpe3JldHVybiAwfWN1c3RvbVNoYXBlT0NUQUdPTkFMKCl7cmV0dXJuIDB9Y3VzdG9tU2hhcGVCVU1QRUQoKXtyZXR1cm4gMH1jdXN0b21TaGFwZUlOREVOVEVEKCl7cmV0dXJuIDB9Y3VzdG9tU2hhcGVTQ1JBUFBFRCgpe3JldHVybiAwfWN1c3RvbVNoYXBlQVJST1coKXtyZXR1cm4gMH1jdXN0b21TaGFwZVRJQ0tFVCgpe3JldHVybiAwfWN1c3RvbVNoYXBlSW5wdXRPQ1RBR09OQUwoKXtyZXR1cm4gMH1jdXN0b21TaGFwZUlucHV0QlVNUEVEKCl7cmV0dXJuIDB9Y3VzdG9tU2hhcGVJbnB1dElOREVOVEVEKCl7cmV0dXJuIDB9Y3VzdG9tU2hhcGVJbnB1dFNDUkFQUEVEKCl7cmV0dXJuIDB9Y3VzdG9tU2hhcGVJbnB1dEFSUk9XKCl7cmV0dXJuIDB9Y3VzdG9tU2hhcGVJbnB1dFRJQ0tFVCgpe3JldHVybiAwfX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCZ0FBQUFZQ0FZQUFBRGdkejM0QUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzQUFBQTdBQVdyV2lRa0FBQU56U1VSQlZFaEx0VlpkVEJSWEZQN3VuZGxkaVlEZGdpc1ZVS3EwS3hLalhjU0hwdEkwN3BzMnlBSUpNWmJvYnVLVE5rMTg5dEhvWTdVUFByR3I3WU1oN1E2MEdCUFRtUGpnRDVobWhmaFQwTlRmQ0YzYXNKYS8yWi9adVo0N3pwcWhpb3JLbDV6ZHZlZWMrMzFuN2psenN5d1NpVEFzSXJqOXZXaDRid0pkRFQwSHVwcDZmemxacFZYYUxndnZSU0M2U2V2RUd1VVlHbDJodko5Zmp2bTFEWGJvM1FXaWRkcVg0aVBsQkJvOXdCb1g4TG1uMnF6bUY2TDEyallaZnllQldJMVdLMWJ3YmpTNmkrQW1SMDRBWlVUNWhjY3JWdkpmWTZzMC8xc0wvT2pyOFpvVnJBK2Z1WDBvSlJxRG5FNUxDNTBabUgwcmdlNGxaenk1U3RHTk9wY2ZLNVM1eEZQMEZCY3pHWllVSFh0R1E0OFdMREF3bVdEVGE3UEg4TEVheEZxVlNJbXdZR2tUdUp3Qnhzejk0ZHVoOHpKL3dRSTNHdTRkeEVxK0QvVjA2TTdLYzJSWHM4QkQ0MmhrSk5SRkt3dHpCQkxwNnl6bWkvdFBMKzFiWXJ2bUlGb1QzNGx5ZmdTYmlGdzRLcGMyUk9SM2paOTlkNVlkc3RNdFBCYzRPM0ZldVZaLyszdXppdCthcmNxZU8xV3FsZGtoQzlIS2VFQ1VzbE1JdUJVb2RMczRxNzlESDhQR2dHZFVEWDl0QnZNeXZ3Qkw0S2ZTM3BLeHphazRWaWtIME9SaDFMeXRSb1c0RkZzZS8xVEdUNVpyMWFJWXZUUXhKU2lTNUk3S0h4UGZZUGErTW82VzNaUE5NekxmQ2FaKzUvVVo1YUlQbjZoYnNJNWVsTUxWTjBvYmg3TGo3SW5vRkV2WllXeDBOV0ExTmRXSlNXcnFsY3dUbnNKWGU1T3RRN1ozRG5qZVl3YnhJZCtDV2lLbmZNZ0hsQ2JIYjdQYko3ejhMRTFNQXlxSnZCQ1ROa1BWOTJkekxJWGQ4NUZMS0VYMUpYOFp3dGlBYWRPUE1pS2xmWmFRTkRvdFZOQ0JTN0dDVDVxY21JR013TC9tdDVGazIybGF6UXUrSzkrc2YvQlBjVHZ1NTMrZ3gzMVdtYk9CNnY4YUtza1ROREZKODNoSGN2c0pXcjBTU2lBUVlPdk5XbE9ad0xsUmpFOWlQQitFbDNQSTQzWldYYkJoVXJtWC84MDdVYnh2bzZpVG5sZkNFcEEvS3RUbENPanIrd2ZGelJzWXkyK24rOFZ0SFpHVC9BR1IvNWxMdUtkY3pSM0dEbDN1ZXgxZWVKUEQvN1gzc0NrRTBaOFpzd2psRFNuSDhXL3E3UFhjWTBYbkxkOWtkMDdaNmEvRlM2K0s4RXpiVmE2enJSak0zY1FJaWFSSUlKR2RabW5Xc2tkdmZXU252UkZlS2lDeE45MTIxNVZXbWpDUyt4Mlgwck5zRnJ2Q2V0c2ZkdmlOTWErQVJLY1JTaTNMbE94UWRYVjFPTk4reG5ZdkNJdjh0d1Y0Q3J0UVkxdkdDckJHQUFBQUFFbEZUa1N1UW1DQyJ9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKSxvPSh0KDYpLHQoMjUpLHQoMzUxKSx0KDY3KSx0KDIzKSx0KDcpLHQoNDYpLHQoNTYpLHQoMzUpLHQoMzUyKSx0KDE0KSx0KDU0KSx0KDUpLChBLGUpPT5BK01hdGgucm91bmQoTWF0aC5yYW5kb20oKSooZS1BKSkpLHM9IiIuY29uY2F0KG8oMCwyNTUpLCIuIikuY29uY2F0KG8oMCwyNTUpLCIuIikuY29uY2F0KG8oMCwyNTUpLCIuIikuY29uY2F0KG8oMCwyNTUpKSxhPW5ldyBUZXh0RW5jb2RlcjtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0SW5mbygpe3JldHVybntpZDoiamdEb29Eb28iLG5hbWU6ImRvbyBkb28iLGNvbG9yMToiIzU5QzA1OSIsY29sb3IyOiIjNDZCOTQ2Iixjb2xvcjM6IiMzODk0MzgiLGJsb2Nrczpbe29wY29kZToicmV0dXJuU2VsZWN0ZWRDaGFyYWN0ZXIiLHRleHQ6IltDSEFSXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntDSEFSOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImZ1bm55In19fSx7dGV4dDoiaXAgYWRkcmVzc2VzIGFyZSBmYWtlIixibG9ja1R5cGU6bi5MQUJFTH0se3RleHQ6Iihzb3JyeSBub3Qgc29ycnkpIixibG9ja1R5cGU6bi5MQUJFTH0se29wY29kZToiZnVsbE5hbWVJcCIsdGV4dDoiaXAgYWRkcmVzcyBvZiBbTkFNRV0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6Imdsb29iZXJ0IGRvb2JlbiJ9fX0se29wY29kZToicmFuZG9tU3RhcnR1cElwIix0ZXh0OiJpcCBhZGRyZXNzIixibG9ja1R5cGU6bi5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMX0se29wY29kZToiY2hpY2FnbyIsdGV4dDoiY2hpY2FnbyIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITF9LCItLS0iLHtvcGNvZGU6ImRvb2RvbyIsdGV4dDoiZ28gdG8geDogMTcgeTogMzYiLGJsb2NrVHlwZTpuLkNPTU1BTkQsZGlzYWJsZU1vbml0b3I6ITF9LHtvcGNvZGU6InZpc3VhbFJlcG9ydGJhZCIsdGV4dDoiZ2l2ZSBtZSBhZG1pbiBvbiBQZW5ndWluTW9kIixibG9ja1R5cGU6bi5DT01NQU5EfSwiLS0tIix7b3Bjb2RlOiJsYXVuY2hyb2Jsb3giLHRleHQ6ImxhdW5jaCByb2Jsb3giLGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImxhdW5jaHJvYmxveGdhbWUiLHRleHQ6Im9wZW4gcm9ibG94IGdhbWUgaWQ6IFtJRF0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsYXJndW1lbnRzOntJRDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTEyMTk2NjkwNTl9fX1dLG1lbnVzOntmdW5ueToiZ2V0QWxsQ2hhcmFjdGVycyJ9fX1nZXRBbGxDaGFyYWN0ZXJzKCl7Y29uc3QgQT1bXTtmb3IobGV0IGU9ODtlPDE2Mzg1O2UrKylBLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShlKSk7cmV0dXJuIEEubWFwKEE9Pih7dGV4dDpBLHZhbHVlOkF9KSl9cmV0dXJuU2VsZWN0ZWRDaGFyYWN0ZXIoQSl7cmV0dXJuIHIudG9TdHJpbmcoQS5DSEFSKX1yYW5kb21TdGFydHVwSXAoKXtyZXR1cm4gc31jaGljYWdvKCl7cmV0dXJuIkNoaWNhZ28sIElMIn1kb29kb28oQSxlKXtlLnRhcmdldC5zZXRYWSgxNywzNil9dmlzdWFsUmVwb3J0YmFkKEEsZSl7ZS50aHJlYWQmJnRoaXMucnVudGltZS52aXN1YWxSZXBvcnQoZS50aHJlYWQudG9wQmxvY2ssIm5vIil9ZnVsbE5hbWVJcChBKXtyZXR1cm4gbmV3IFByb21pc2UoKGUsdCk9Pntjb25zdCBuPXIudG9TdHJpbmcoQS5OQU1FKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1teYS16IF0vZywiIikuc3BsaXQoIiAiKTtpZigwPT1uLmxlbmd0aClyZXR1cm4gZSgiQSBuYW1lIGlzIHJlcXVpcmVkIik7aWYobi5sZW5ndGg8MilyZXR1cm4gZSgiMm5kIG5hbWUgcmVxdWlyZWQiKTt2YXIgaT1hLmVuY29kZShuWzBdKSxzPWEuZW5jb2RlKG5bMV0pO2lmKDA9PWkubGVuZ3RofHwwPT1zLmxlbmd0aClyZXR1cm4gZSgiUHV0IHRoZSBmaXJzdCBhbmQgc2Vjb25kIG5hbWUiKTtpPU1hdGguY2VpbChpLnJlZHVjZSgoQSxlKT0+QSsxLjUzKmUsMCklMjUzKSxzPU1hdGguZmxvb3Iocy5yZWR1Y2UoKEEsZSk9PkErMS4zNSplLDApJTIzNSk7Y29uc3QgQj1pKyIuIitNYXRoLnJvdW5kKGkvMykrIi4iK3MrIi4iK01hdGguZmxvb3Iocy8yKTtzZXRUaW1lb3V0KEE9PmUoQiksbygzMDAsMTUwMCkpfSl9bGF1bmNocm9ibG94KCl7aWYoIWNvbmZpcm0oIkxhdW5jaCBSb2Jsb3g/IikpcmV0dXJuO2NvbnN0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO0EuaHJlZj0icm9ibG94OiIsQS50YXJnZXQ9Il9ibGFuayIsQS5zdHlsZT0iZGlzcGxheTogbm9uZTsiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoQSksQS5jbGljaygpLEEucmVtb3ZlKCl9bGF1bmNocm9ibG94Z2FtZShBKXtpZighY29uZmlybSgiTGF1bmNoIFJvYmxveD8iKSlyZXR1cm47Y29uc3QgZT1yLnRvU3RyaW5nKEEuSUQpLHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO3QuaHJlZj0icm9ibG94Oi8vcGxhY2VJRD0iLmNvbmNhdChlKSx0LnRhcmdldD0iX2JsYW5rIix0LnN0eWxlPSJkaXNwbGF5OiBub25lOyIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KSx0LmNsaWNrKCksdC5yZW1vdmUoKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDkpLGk9WyJqZ1ByaXNtX2V2YWx1YXRlIiwiamdQcmlzbV9ldmFsdWF0ZTIiLCJqZ1ByaXNtX2V2YWx1YXRlMyIsImpnRmlsZXNfZG93bmxvYWRGaWxlIiwidmlkZW9TZW5zaW5nX3ZpZGVvVG9nZ2xlIiwiamdQcmlzbV9zY3JlZW5zaG90U3RhZ2UiXTtBLmV4cG9ydHM9KEEsZSk9PntpZigoKEEsZSk9Pntmb3IoY29uc3QgdCBvZiBlKWZvcihjb25zdCBlIG9mIE9iamVjdC5rZXlzKHQuYmxvY2tzLl9ibG9ja3MpKWlmKEEuaW5jbHVkZXMoZS5vcGNvZGUpKXJldHVybiEwO3JldHVybiExfSkoaSxlKSl7Y29uc3QgZT1uKCk7cmV0dXJuIHByb21wdCgiIi5jb25jYXQoQSwnXG50byBjb25maXJtIHR5cGUgIicpLmNvbmNhdChlLCciJyksInRvIGNvbmZpcm0gdHlwZSB0aGUgdGV4dCBhYm92ZSIpPT09ZX1jb25zdCB0PXByb21wdChBLCJpIGRlY2xpbmUiKTtyZXR1cm4ieWVzIj09PXR8fCJpIGFjY2VwdCI9PT10fX0sZnVuY3Rpb24oQSxlKXtjb25zdCB0PVsibGVmdC1yaWdodCIsImRvbid0IHJvdGF0ZSIsImFsbCBhcm91bmQiXTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSxlLHQpe3RoaXMuZ2V0VGhpc0Z1bmNzKGUsdCkubXlTZWxmPW5ldyBGdW5jdGlvbihBKX1nZXRUaGlzRnVuY3MoQSxlKXtyZXR1cm57Z290bzpBLnNldFhZLHNldCB4UG9zaXRpb24oZSl7QS5zZXRYWShlLEEueSl9LHNldCB5UG9zaXRpb24oZSl7QS5zZXRYWShBLngsZSl9LGdldCB4UG9zaXRpb24oKXtyZXR1cm4gQS54fSxnZXQgeVBvc2l0aW9uKCl7cmV0dXJuIEEueX0sc2V0IGRpcmVjdGlvbihlKXtBLnNldERpcmVjdGlvbihlKX0sZ2V0IGRpcmVjdGlvbigpe3JldHVybiBBLmRpcmVjdGlvbn0sc2V0IHJvdGF0aW9uU3R5bGUoZSl7aWYoIXQuaW5jbHVkZXMoZSkpdGhyb3cgbmV3IEVycm9yKCJpbnZhbGlkIHN0eWxlOiAiLmNvbmNhdChlKSk7QS5zZXRSb3RhdGlvblN0eWxlKGUpfX19fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxKTt0KDMpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLnZpZGVvRWxlbWVudD1udWxsLHRoaXMucnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsKCk9Pnt0aGlzLnZpZGVvRWxlbWVudCYmKHRoaXMudmlkZW9FbGVtZW50LnJlbW92ZSgpLHRoaXMudmlkZW9FbGVtZW50PW51bGwpfSksdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX1BBVVNFRCIsKCk9Pnt0aGlzLnZpZGVvRWxlbWVudCYmdGhpcy52aWRlb0VsZW1lbnQucGF1c2UoKX0pLHRoaXMucnVudGltZS5vbigiUlVOVElNRV9VTlBBVVNFRCIsKCk9Pnt0aGlzLnZpZGVvRWxlbWVudCYmdGhpcy52aWRlb0VsZW1lbnQucGxheSgpfSksdGhpcy5ydW50aW1lLm9uKCJCRUZPUkVfRVhFQ1VURSIsKCk9Pnt0aGlzLnNldFZvbHVtZVByb3Blcmx5KCl9KX1zZXRWb2x1bWVQcm9wZXJseSgpe2lmKHRoaXMudmlkZW9FbGVtZW50KXRyeXt0aGlzLnZpZGVvRWxlbWVudC52b2x1bWU9LjUqdGhpcy5ydW50aW1lLmF1ZGlvRW5naW5lLmlucHV0Tm9kZS5nYWluLnZhbHVlfWNhdGNoKEEpe319Z2V0SW5mbygpe3JldHVybntpZDoiamdCZXN0RXh0ZW5zaW9uIixuYW1lOiJ0aGUgZ3JlYXQiLGNvbG9yMToiI2ZmMDAwMCIsY29sb3IyOiIjMDBmZjAwIixjb2xvcjM6IiMwMDAwZmYiLGJsb2Nrczpbe29wY29kZToib2hpb0Jsb2NrIix0ZXh0OiJhYnNvbHV0ZWx5IGRlbGVjdGFibGUhIixibG9ja1R5cGU6bi5DT01NQU5ELGRpc2FibGVNb25pdG9yOiExfV19fW9oaW9CbG9jaygpe2lmKHRoaXMudmlkZW9FbGVtZW50KXJldHVybjtjb25zdCBBPXRoaXMucnVudGltZS5yZW5kZXJlci5jYW52YXM7aWYoIUEpcmV0dXJuO2lmKCFBLnBhcmVudEVsZW1lbnQpcmV0dXJuO2NvbnN0IGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidmlkZW8iKTtlLnN0eWxlPSJ3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB6LWluZGV4OiAxMDAwMDsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IixlLmlubmVySFRNTD0nPHNvdXJjZSBzcmM9Imh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vYngtdHYxLm1wNCIgdHlwZT0idmlkZW8vbXA0Ij48c291cmNlIHNyYz0iaHR0cHM6Ly9wZW5ndWlubW9kLmNvbS92ci90aGVtZXMvc2VsZWN0aW9uLm1wMyIgdHlwZT0iYXVkaW8vbXBlZyI+Jyx0aGlzLnZpZGVvRWxlbWVudD1lLEEucGFyZW50RWxlbWVudC5hcHBlbmRDaGlsZChlKSx0aGlzLnNldFZvbHVtZVByb3Blcmx5KCksZS5wbGF5KCksZS5vbmVuZGVkPSgpPT57ZS5yZW1vdmUoKSx0aGlzLnZpZGVvRWxlbWVudD1udWxsfX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9KHQoMyksdCgyKSkscj10KDkpLG89e1Nub3c6dCgzNTUpLExpZ2h0OnQoMzU2KSxQcmVzZW50OnQoMzU3KX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMubWFpbkNvbnRhaW5lcj1udWxsLHRoaXMubWFpbkNhbnZhcz1udWxsLHRoaXMuY3R4PW51bGwsdGhpcy5pbml0aWFsaXplKCksdGhpcy5zbm93UGFydGljbGVzPXt9LHRoaXMubGlnaHRzPXt9LHRoaXMucnVudGltZS5vbigiUlVOVElNRV9TVEVQX1NUQVJUIiwoKT0+e2NvbnN0IEE9dGhpcy5tYWluQ29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2Zvcihjb25zdCBlIGluIHRoaXMuc25vd1BhcnRpY2xlcyl7Y29uc3QgdD10aGlzLnNub3dQYXJ0aWNsZXNbZV0sbj10LmVsZW1lbnQ7bi5zdHlsZS5sZWZ0PSJjYWxjKCIuY29uY2F0KHQub3JpZ2luLCIlICsgIikuY29uY2F0KHQueCwicHgpIiksdC54LT0zO2NvbnN0IHI9aS50b051bWJlcihuLnN0eWxlLnRvcC5yZXBsYWNlKCJweCIsIiIpKSt0LnNwZWVkO24uc3R5bGUudG9wPSIiLmNvbmNhdChyLCJweCIpLChuLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnJpZ2h0PDB8fHI+QS5oZWlnaHQpJiYobi5yZW1vdmUoKSxkZWxldGUgdGhpcy5zbm93UGFydGljbGVzW2VdKX10aGlzLmRyYXdMaWdodEJhY2tncm91bmQoKX0pLHRoaXMucnVudGltZS5vbigiUFJPSkVDVF9TVE9QX0FMTCIsKCk9Pnt0aGlzLmN0eC5jbGVhclJlY3QoMCwwLHRoaXMubWFpbkNhbnZhcy53aWR0aCx0aGlzLm1haW5DYW52YXMuaGVpZ2h0KSx0aGlzLmNsZWFyU25vdygpLHRoaXMucmVtb3ZlTGlnaHRzKCl9KX1pbml0aWFsaXplKCl7Y29uc3QgQT1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKTtBLnN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7bGVmdDogMDsgdG9wOiAwOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlO3BvaW50ZXItZXZlbnRzOiBub25lOyBvdmVyZmxvdzogaGlkZGVuO3otaW5kZXg6IDEwMDAwMDk7Iix0aGlzLm1haW5Db250YWluZXI9QTtjb25zdCBlPUEuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIikpO2Uuc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTtsZWZ0OiAwOyB0b3A6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7cG9pbnRlci1ldmVudHM6IG5vbmU7IGJhY2tncm91bmQ6IG5vbmU7Ym9yZGVyOiAwOyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7ei1pbmRleDogOTk5OTk5OyIsdGhpcy5tYWluQ2FudmFzPWUsZS53aWR0aD0xMjgwLGUuaGVpZ2h0PTcyMDtjb25zdCB0PWUuZ2V0Q29udGV4dCgiMmQiKTt0aGlzLmN0eD10fWdldEluZm8oKXtyZXR1cm57aWQ6ImpnQ2hyaXN0bWFzIixuYW1lOiJDaHJpc3RtYXMiLGNvbG9yMToiI2ZmMDAwMCIsY29sb3IyOiIjMDBmZjAwIixibG9ja0ljb25VUkk6dCgzNTgpLGJsb2Nrczpbe29wY29kZToic25vdyIsdGV4dDoic25vdyIsYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiY2xlYXJTbm93Iix0ZXh0OiJjbGVhciBzbm93IixibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJhZGRMaWdodCIsdGV4dDoiYWRkIGxpZ2h0IixibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJyZW1vdmVMaWdodHMiLHRleHQ6InJlbW92ZSBhbGwgbGlnaHRzIixibG9ja1R5cGU6bi5DT01NQU5EfV19fXNub3coKXtjb25zdCBBPXRoaXMubWFpbkNvbnRhaW5lci5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKSksZT1NYXRoLnJvdW5kKDgrMTYqTWF0aC5yYW5kb20oKSksdD0uNStNYXRoLnJhbmRvbSgpLzIsbj0xNTAqTWF0aC5yYW5kb20oKTtBLnN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IisibGVmdDogIi5jb25jYXQobiwiJTsgdG9wOiAtIikuY29uY2F0KGUsInB4OyB3aWR0aDogIikuY29uY2F0KGUsInB4OyBoZWlnaHQ6ICIpLmNvbmNhdChlLCJweDsiKSsicG9pbnRlci1ldmVudHM6IG5vbmU7IG9wYWNpdHk6ICIuY29uY2F0KHQsIjsiKSsiei1pbmRleDogMTAwMDAwODsiLEEuc3JjPW8uU25vdztjb25zdCBpPXIoKTt0aGlzLnNub3dQYXJ0aWNsZXNbaV09e2VsZW1lbnQ6QSxvcmlnaW46bix4OjAsc2l6ZTplLHNwZWVkOjIrNipNYXRoLnJhbmRvbSgpfX1yZW1vdmVMaWdodHMoKXt0aGlzLmN0eC5jbGVhclJlY3QoMCwwLHRoaXMubWFpbkNhbnZhcy53aWR0aCx0aGlzLm1haW5DYW52YXMuaGVpZ2h0KTtmb3IoY29uc3QgQSBpbiB0aGlzLmxpZ2h0cyl7dGhpcy5saWdodHNbQV0uZWxlbWVudC5yZW1vdmUoKSxkZWxldGUgdGhpcy5saWdodHNbQV19fWFkZExpZ2h0KCl7Y29uc3QgQT10aGlzLm1haW5Db250YWluZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIikpLGU9dGhpcy5tYWluQ29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHQ9TWF0aC5yYW5kb20oKSplLndpZHRoLG49TWF0aC5yYW5kb20oKSplLmhlaWdodCxpPTM2MCpNYXRoLnJhbmRvbSgpO0Euc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTtsZWZ0OiAwOyB0b3A6IDA7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDcwcHg7IisidHJhbnNmb3JtOiB0cmFuc2xhdGUoIi5jb25jYXQodCwicHgsICIpLmNvbmNhdChuLCJweCkgcm90YXRlKCIpLmNvbmNhdChpLCJkZWcpOyIpKyJ0cmFuc2Zvcm0tb3JpZ2luOiAzNHB4IDQxcHg7IHBvaW50ZXItZXZlbnRzOiBub25lO3otaW5kZXg6IDEwMDAwMDU7IixBLnNyYz1vLkxpZ2h0O2NvbnN0IHM9cigpO3RoaXMubGlnaHRzW3NdPXtlbGVtZW50OkEseDp0LHk6bn0sdGhpcy5kcmF3TGlnaHRCYWNrZ3JvdW5kKCk7bGV0IGE9ITE7c2V0SW50ZXJ2YWwoKCk9PntBLnN0eWxlLmZpbHRlcj1hPyJodWUtcm90YXRlKDkwZGVnKSBicmlnaHRuZXNzKDEuNSkiOiIiLGE9IWF9LDcwMCl9ZHJhd0xpZ2h0QmFja2dyb3VuZCgpe2NvbnN0IEE9dGhpcy5tYWluQ2FudmFzLGU9QS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx0PXRoaXMuY3R4O3QuY2xlYXJSZWN0KDAsMCxBLndpZHRoLEEuaGVpZ2h0KSx0LnN0cm9rZVN0eWxlPSIjM0Q1QzNBIix0LmxpbmVXaWR0aD0xLHQubW92ZVRvKDAsNzApLHQuYmVnaW5QYXRoKCk7Zm9yKGNvbnN0IEEgaW4gdGhpcy5saWdodHMpe2NvbnN0IG49dGhpcy5saWdodHNbQV07dC5saW5lVG8oKG4ueCszNCkvZS53aWR0aCoxMjgwLChuLnkrNDEpL2UuaGVpZ2h0KjcyMCksdC5tb3ZlVG8oKG4ueCszNCkvZS53aWR0aCoxMjgwLChuLnkrNDEpL2UuaGVpZ2h0KjcyMCksdC5zdHJva2UoKX19Y2xlYXJTbm93KCl7Zm9yKGNvbnN0IEEgaW4gdGhpcy5zbm93UGFydGljbGVzKXt0aGlzLnNub3dQYXJ0aWNsZXNbQV0uZWxlbWVudC5yZW1vdmUoKSxkZWxldGUgdGhpcy5zbm93UGFydGljbGVzW0FdfX1hZGRQcmVzZW50KCl7fX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQ0FZQUFBQWY4LzloQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQUZDU1VSQlZEaFBqZE85VHNKUUdNYnhuaGFGU2NQZ3FBa09iZ0plZ1lzRGQyRGNOZDRVcSs1dTZCMDRHQmtRTG9Dd0tZUkFvbEhiOG45T1RndVZZbm1TWC9wQnozcys4WW9TeDdGeHQ3bForOUUxS0tPS2ZRVDR4Qmd6WTB6SU5VMm1BSTFMWEE1eGdYTWNROFhlOFlvT1hqQ25VTXgxR1RYR0dkb1k0UnVSRTJLT1oxeERvMXVHRndZMXFQRVVtL0tMSGk1UmNjMXRnUXB1b0o2TG9wRTk0QVRHZHpVMEpNMzV3RDc5bngwMGNZb2dLYURWMW9KcEViZUpPcXdoOERVTTNVQ3J2VzNTNzMyM0hkcG5iVlYyYXpibkN4K0lraW5va0hTaFFrVlJKME84SVV3S3pQQ0lBVEluTFNkVFBHSEE2Q1A3Um1FdDluQ0xQclJWZjZNRE5jRTlHckNkcDBlWkY3clg2clp3aFlaNzFvZWFzNGF0bnUvUXAvY2ZycmwvSnAyd0k5U2hyZHFGRmt4ejFoVEhxME5mSzZDNDBXaXJSRkdETURObkc4OWJBRjJhQ2NwUHdSTmlBQUFBQUVsRlRrU3VRbUNDIn0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVZQUFBQkdDQVlBQUFCeEx1S0VBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBbGpTVVJCVkhoZTFWak5ibU5KR2Ezck9Fbkg4WFNENk9sTVN5QmFpQVZpQTAvQWlzZEE0bWNGUEFjUHdCUHdCbWdlZ1MxQ0xCQml3UUtKMlF3TWFnMnQ3a21uNDhTT3FWUGxZNS83K2Z2dXZYSHNibkdrbysrcnVsWGZQZWVNazNhbVdhWVBobVpWdS9CQjVFSFkrd3BtU0FoRGNYREpodzVtbjJGRU9JajhRd1RURjhaRHd1cVR1amNyK3c0bU10MFZSdGV6TG1uUnM3M1kyVmN3bnJtaGU0QzNmeC9qUS9jRzQ2SEJEREd2YSs4ODRPMFBDY2FlOGU3c1pBK0NkZzJtS3dCQTExRVAyTFdpeTNqVUEzM3JYa0RVTHNGMG1XTS9kSS9RZFpjeDlrUDNDTHZ1Qk1UY041akkwSDByb0gwRXoreDlLMkhYSVNEc1BzRkVwdGhyalhxdmRpRXlpeHIxV29Hb0QxRkVEenJaTm1GN3JyWGFmVzlOYUU5WU0xeXo3MXF6c2dlaTNrVVIySHNxTmxIdTE5YnRJd0syZXFBMFZOdGJBdEdhaVBvdEZLR2RKOXJDSTFObHpvNGt0TGNHZGlVUVZVRDdGb3E0OEdrc3ZOeXI3YnBYam5yV1NvQlZvVVk4M3ZXc1NjRDJDcnN1S09MY0p4VXFXRTNZbnRRQTJIdDdsZ0Fyb0NZc05RRDIzcDRTc0QyaC9ScEZtUHVrTGRTS0wvZUVVU0JSejdOS0N4cFJhaEJSYjgrU2dPMEo3UXVLcUszZHRsRDJXaTF0QU41YXFmY0FyZ2sxWUUyamV0Um5ldDRTaU9vYVJkRFdibHNrZTRxM3BGRTE3dkZJZXIxSFdrQVdhWTB2cEkrbzl6d0NySUQyVlZScnA0SkN0V3F2cG1qV2trRm9JTnFEbkVFU0ZBK3FTVkJEWWQ4VmxKMERBbEV0S0lKYU8yMkI3Q2xjU1dOcVZNT0llcDRsZFNZQlNhUTFxbUZFUGMrQ25LRXpTWUFWV1BkRmtEN0pvRUN0SHExQmtDRm9HR1BwZFYrSmVRUjZDbGVEb0EwaW9yMEg2a3lBYThEV2FuSzkyaGJJcXFRUk5XYU5nd3pFVytzZG5VMVFOQWdqTkV2amMrbTl0ZDRoT1V0bmd3QXJVUG9pU0haVm5CV3NKdENUYWhSa0FGRlZjaVlyUWRFMHBhWkJCaEZWa1BjNEE5UzVBTmNnVWZwaVZIWXBUcXRTalpCcVZFT3d2ZTZSbk1INUJNWFNFTTJDTUsvVVBmWjZuak5BenVSOEVtalZJbWkxbzhMWVV6QklBelFEcWtsUXd6aGVWWTk2UjJjVGtFUURhcElCV042dUtzL29IYkF2SEtCVktjb0RoYUxhM3FNTlMzc3ZIQWFIZXVJUSswcDczM3NQTlhqNlNNRDJpdlVhZ3lMb0pkc3JLWWJDUUlvbDFSU05vNTZtcHRrbTl2dERJZlc5cWtmcFFmZTN6bUNJSWhvQzZFdllXekdvS2xZTndGUTEyalFubVkvU2FNUXcwRTl5UFZ1dmEwQTJISjJuNzBEMTlJQUFlNjU3Z1FGOXNNUDBKVW9WZzE1TlVQeFJObnljZVpLRFlEaG42ZWhva2l2NnVxN1BLamVoUkRPOTl3UHN1U2JzMmdXR1dlaEY5bnlCSllCS1VhZ1JZYVNhcktaUFN4RGo4U1E5ZWpSTjArbmpkSDcrVVY0akdCQ2ZISVNvbnhSdkxxbTZ1Z2l3aHVEQVhhRXZWSEl1UmRkUVlKSm1HY3prN0R4OS9QSFgwL1BuTDlMRnhUZHlPTk1jVHYxUnFtZnhvOFJnTkJ4OWo4Y2g4TTZXTlFaN0dES1lRM2xXMXpHYnB2NDRqVWJINmVUa0xFM09MM0lRdjBxVHlTL1M4ZkV2MCtQSEY3a2lHSVl5S25lOFdmMGt0QitFS0JqQUcrYTlGTkE5clpiMXZ6YkR3YWRpUHY5SmV2TGtQRDE5MnVRNnliOXZmcGhEdzQ4YW51TWNRL0UrSFlCZEs3eDlycjN6YTNRRnN3dThsMjc2cHNFbkJ1c2NUZ2tvZjNLYTh4eEczc2xTVUcrdWYxRDJOMmQxRnVEUHJyRHJuYkd2WUtKdmtvRDJiU3p6bDlDYm15WmRYcWIwK25WS2I5NmtkRDA3U1hkMytIWks0TDRhOW1hamtoWjJ6enV6aFYyQ2lRUVErb3g5dmJORUV1VXIrU0t2Rm1seE4wdXo2K1hpMWF1MC9PS0xsRjYrek1GY0wvT1BGNzdtMzYzTzR5NnJ6aU8wM3h1aVlGU0V3Z3Jxb3BvaWN5REwrWW8zZjd5WWZ1MW5QLzUrK3UzenArblQ2VFQ5NXNXejlQTWZmZThvZjJLdThUeWY1OTlCT2dQVStYMEVXQlg2ZkFzSUpudzRBRHFjUGFqaTIxd3VFYzV0NW14eGwyYVhSMDN6NTA5TzArOWZuS1MvUFR0Slh6M0t2MWZ1OGljSndkUUFjZDcrTVFqcWV6d09oVDFiMXQ0blJnK3lSL1VJb0hvQzFRUllQeTM0Rk1CME52L3RWKy8rYzUzL3dMODZiOUxiMDFHNk9tb1MxcCtmbmpJY2ZtTDRWN09kYWQ5SkF0RWFZQTB4NUhlTUhjSVhXRktzL3NtdnJBWlhQMGFaczdPYjJ6ZXpVVk1DdVJvMzZWMnVzL3lCK1hLY3Yrem01eXNpSE42M00wa2JsQmNhb1gwSUcwelhKWDBCZXl1QUFrbHJvSDVhWURqL0huazlIdCtOcnBxM3MveFBOUUtabll6U2ZEbWFIeThXbCt2Zk16VVlocU8wNy9MMGdJQmQ5NkxyRTZORGJLKzBBa0ZyZ2o4TzRPMHltODI4K2VUcTZyL2YvZno2RDR2OGEzWStINlZGUHZuTmY4Mys5SzIzYjcvRWM1ekRlWFBmenRiM1VvL1Y2RUgzdDg1RXdmQ2dEbWJ2a2NKVUxIczFCZDdtTHlYNXkwdTZtU3dXNzM3NjJXZWZYcnhjL0dVOFMxZlAvcjM0NjYvLy9zL2ZUZWZ6SzU3QmVYTWY5TjVERFo0K0VyQzlZcjArNVAvempkYktNdStyOFhqOGorbjBvKzljWGw0K21jOFJCc1hUTkduRDhkWjZubUV4TUM4NG9GV0xZZTVrWUUyVVp5c0NEQVcwd1doQUdrWlU5UjZvN3dFb21JWm8wSnFQS3FqM1NKMExjQTBTcFMrQ1pGZkZzYWRva2tab0NxUkpWSkpCMkI3VU96cWJVTUZxa0taQkRVRjdVTytRbktXelFZQVZLSDBScExzWkZLalZJME5ScW5tUFBHUHZZUjdBU3RGcURGVFRYYlQzUUowSmNBM1lXazJ1VnhVVUI1VG50VjMzcEpwQ1ZjTTJDSy9uUFoxSlVEUklVMnJZaHFBOTE2aTh6MTRKYUErcyt5SkluNnhBa1ZxMVYwUG9QV29ZZG8va0RKS2dZTkFhOUFMUVBVczdCd1NpV2xBRXRYWXFWQ1I3aXJla1FUVnM2UVhDU2dLc2tLU2tLVFhjRlFhbzl6d0NySUQyVlZScnA0SUNBU3U2M0JHcVFjKzhSM3NQWUFWVXVKcFQ0NlMzcitmWms0Q3RnUFpWV0d0bkF4VnF4WmQ3aHRhd0RjRSt0N1NBTEVzYTFRQnNiODhxQVZzQjdRdUtxSzNkRFZRd2V6WENubFRUTmdnYkNOY0FxMElOZ0o3cCt3YWlQYUg5R2tXays2UkNCZHVlYS9iS0tBU1BBS3RDVFhpMEFYaUJnSUR0RlhaZFVNUzVUelpRMGRhSTFsMElzQUxzclFuVVhRaG9EMFI5QzBWZytIUURUN3hYbFlEZEl3SHRBZTJ0ZUs3Wld3TFJubGNCN2JkUXhIV2UyQ0F5VVdiVXRsWHR2bDE3VlJHWlFpVUJiODNLSG9oNkYwVnM3NmtOMUlEWGE0MTZyM2FCOHJ3YTlWcUJxQTlSUkE4NldXR042TnFhN2F1QTloRThVME1yb0QxZzF5NGc3RDdCRU5hUVozYm8zaEI0Um9mdUVYYmRDWWpiSlJqQUdvdld1dDkzeDBPWFFmWmRad0M3N2dXRTdSb000Qm5yTWova3ZNS1RwbnREQXRqSkhrUTlKQmhpcU9HdUVBQSs3NUkwMVB5RGJPMHJHS0RMZFBTc0x5Z2drdGNsKzhHVzlobU1ZcGVRaHVDZ1lTZ09GUXp4a0JDRzRpRHlEeDJNWXA4aEhWenkrd3ltQzE1b0gxVFcrL2lvLzU4aXBmOEJNbmgycGRBaXMvQUFBQUFBU1VWT1JLNUNZSUk9In0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksZS5kZWZhdWx0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFBTDVTVVJCVkhoZTdacy9heFZCRk1WdlJOQWlIOEF2SUZpazA5TENOaUNvb0wyTk5tS2hUZXd0UXBDQXBTQW8xbG9vQ3RvSUZwWmFhZUZIc0RlRmtzRHpudG03Njd6NzV1KytsOFRabVIvY2Q1ZGxkK2VjczdPUFRaaEh0Yk1tUFllWmRKc3gxMWtWTGowMlFXMDV3bU1EZ2FNS0lrVkx6MG9DbUJ0d2RtVlR0dmdDYjk3TDFzQmhodUEwYnV2cFVicThtcklDY0EzVWM4aEJMQmdQYWVteE5IbTFuSkFlSW1tNk9RVGh2S1J6STh4ZEErT2ttRThsNVM0WkFUbURPbVlER0RNakJ2TmpUSzlxQm1UanVVdTVNMklwODZrc05RUDBuZllKSGZIOUVEU2ZNcTQ2NW1obWdNT29BUUtWeU5CTThKckg5WDFqQkFpR25SeEFaT0Joa0pCSTE1MVNCTTBydk1aeVFrb0pJRFpkQVlUUEhaY2dRczhDcjNrRnhrblJCS0xIWlQwQzJwUmpXa2ZGZWN5bG1yZlJBUnA5T1hjL3hobXVoMXpmdVBhNU1HQkpCYzNRRGcvd2tzVjFybDljcmd1WFdQQUNUd3U0cGlzT2ZJbU55NWVJdG00UlhkZ2dPbjBLZTBhd2xUeWwzZXlNbTlLLy94QjkrYzZuUHlWNjkwbDJFdDNnZXRWdGR1anZBRXlWNTlqWXZrLzA5Z25SeGZOTG1EOUdvQm5hNFFGZUJIaWJleHgwQUhlNDFuSG5IOXp1ZGt3QmVJRW5acDBMSGdkMEFGZnhnV2svTlN4UHhtT1BEdUFjUHZETVR3M0xrL0hZb3dNNGlZOFNuL2tZbGlmanNVY0hVQjB0QU9uVjRnd0FMeEZUdytkSkI4RHZUdDBiMU5Td1BNMjUwd0Y4d01mdU03TTlLU3hQeG1PUERtQ1hhKy8xUjZMSEw3b2RVd0JlNEluWjQ0TEhBUjNBVDY2NzJMaTNUWFNOWHhvL2Z5VTZPTUNlc29CbWFJY0hlQkhnRFI2ajNPUnkvVmxaY3NGVEZ1YkVqYk1MRnlxbWxIWW5vWDlmbVpObVA4ejJlSTdwL3dFOWEvL2UvSjFlbmU4Qk5kRUNrRjR0TFFEcDFkSUNrRjR0TFFEcDFkSUNrRjR0TFFEcDFkSUNrRjR0TFFEcDFkSUNrRjR0TFFEcDFkSUNrRjR0TFFEcDFSSU5vT1RGRWluYVF3RVV2MWpDdHlqQ0poUkE4WXNsZklzaWJFSUJGTDFZSXJRb3dpWVVRSEdMSlpaZEZPRURDd3RLL08wQU5HY3ZpdkNCSmVhUHVQQUxETmRnLzFOQkk3UW0vRXFFNkMvWWJlMlo1ZXhQYkFBQUFBQkpSVTVFcmtKZ2dnPT0ifSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSxlLmRlZmF1bHQ9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBSUFBQUFDQUNBWUFBQUREUG1ITEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUEzc1NVUkJWSGhlN1YwTGNGUlhHVDZiSmNDR05DRUpTVWpJRUZxZzBzclkxdWxEa0w1ZzJsRjhVR1dxdzRpbFUzV2tnbmJ3MlphaGRqVE82RUN0VGdFN3RaYllRYUdLMUZIVHFrUGFXaWJhV3B5eFU2cFFMSlVBaFR3SXlTYVVaSGVUNC9lZHZVdldOTW51dmRtN2UrN2U4MDIrdlkvZHU5bDd2di84LzMvT3ZmY2NZV0JnWUdCZ1lHQmdZR0JnWU9BbkJLeGxObkVKZUQwNFMyMEpjUkxjRHg1Vld3WjVpUUp3RmZncUtNY2czK05uK0ZtRExDRWJIcUFLL0RWNEF6Zkt5c3JFc21YTFJIMTlQVGZGc1dQSFJITnpzemg3OXF6YUJsNEVid2ZiMVphQnAwRTMveFlvYTJ0clpXTmpvNHhHbzNJa3VHL0hqaDNxTS95c2RVd2RhT0JoVEFWZkFlVzExMTRyVDU4K2JjazlOdmlaUllzV0pZemdIMkFJTlBBb3ZnbktlZlBteWM3T1RrdmkxT2pxNmxMSDhGandYbjZSZ2ZkUUJES295MzM3OWxuU3BnOGV3Mk90NytCM0dYZ01Id2ZsZGRkZFowbHFIenlXMzJGOWw0RkxjS3ZKZFF0ZlZxeFlvVGFjSU9uWUw0TDNnRDhBZnc3K0NUd0FIZ0tQZzExZ0ozaks0ci9CRjhEZDRNUGdXbkFKT0EwMHlCS2VBZVdlUFh1cyttd2ZQSmJmTVI2bmdHaGpYbUE1T05ybkxNWkFKcFlQZ2JlQ2swSGZ3eTBQb0FxM3VMaFliVGhCNHRpNUVPNUhFUEJuV080VEl2STY5aDNEOG93UTU4Tll0bUU3UWJnQjJZSDljQUh5Yi9oOG94RFIrL0daMjRRWXFzWDdPTm4zWS9GVmtGNkVoK0JyeFkxZ0xucEU4eHBQZ2ZLSko1Nnc2ck45OEZoK3gzb2grckVpTThFak1JcnRNQWhVL3dpOUI3L2ZJc01HL3BWd2JyRWVoVnNlZ0RGYTdOL1BMbjVuU0J5N1ZJaEN0WklCekJNaWVEZStEOVcvRU1uQzRHTXdpS3V4UkNFc3dOdVBnT3lBMmdTV2dnWVR3SHRBV1ZaV0pzK2VQV3ZWNmZUQlkzZ3NheWxjZlN4Umc5M2l5d2dWZCtIL0pIa0ZKcFViUU93eWNBcUViQ0UzYk5oZ3labytlQXlQL1h3V3hFL21VZnkvei8yL0lid0JMZ2NOSElBSlZ6UVFDTWlkTzNkYTBxYkdybDI3SkkrNUNJbGJhNVlOSU1GWDhYOC9CQ0kwWUZQeGFaQjVwSUZOckFObFFVR0JiR2hva0pGSXhKTDUzZUI3L0V3d0dKUXMrRC9tU1B4azdvVUJYd0pENURtQTNTQ2Nrb0ZkZkFzY0JPWDgrZlBsbGkxYjVNR0RCMlU0SEZia092ZnhQWDRHYWZqUUhnM0VUN0FYditjZUdFSlNXUGc5V0EwYTJNQ25RV1VFWTVHMS9oWUkvMCtOeEUvbVgvRzc1ZzZmQS9zUUVDVU03T0Q3SUF0UHdxMzIxcUJBeVVWQ0REeUFndjA3YWxseWdldklQbmdETkNNVHVRRkRBN3VuSjRFR2FZQzlnd2RCK2FTbXRUeGRQZ1ZqTFJuT0RackJTdEFnRFh3UUhFSUFIUXlESXd2V1Mzd1R2Lzl5R0RMT0I1dml2K0NWb0VFYVVOM0UzL080RnlBWkVtNkhOK0Q1Z01nWGhmUExuejRDZXdsak0xQ0Rlanp1QlVqRWdTRWFzNVVYTUVuOEVrL1NLd2hheTJ6aURIanBPMEpjVVlFQ1crengyOEFEK0xzZTU0QndNUGdNeWhQdTRDUFdXMyt4bGdhamdMMkU4aklVR3FyTTBNaGE1VlVpRzR5eEI1UG5CbTRGYzFIQlBJTVdrSVhtK1RDUXpKZUVpSlFOR3dIdlNzclkxY3g4dzJkQnVjb0Q3WCs3UkF0aGFONndFZkNoR05OWE1BcDR0MjhZTGxQbVF6STRrcTB3Z1BuRFJyQUxOT0ZnRkR3SnlsL2tRWk53TkI2REFjd2ROZ0xlMEdxTVlBVFU3ZU9meWxNRElOOENZUVJZVlh3TU5QY2ZKb0dQai9VeGN6Nlh4MGJBbkNBcE1YeVFKMjR3ak4rQ0VtM292RXNHay9rS3pzOXFJcEozOE1SMWdBNmRNSC9tQzYrbzVET3VSa3ZnTjFoT2lZZUFuNEkzYzcrQmRRUHBWWGtjQXBLNVZZZ0JxOXVZVHpUeGJtUUQ0QVR2dUduM2lSSGNoMll2emhtcjRqQm9ia0VIMkU3Tyt6d2dRWFovby9tVHVKVE1IQ2huTFFOZExzUzh6QmMrdU9jSG9OQURqZUNsOFlTUWw1Qy9wdDd3TVJhREVpV1JkejJDNDVIM1AwNkxHMEVFdklZRjRWZHdLSmpvVEo4WkFQa1RHSUdWRkI0QmZmZHNZaktPc0NET1pQQmhVSzl3NVhCU0NIdndMNXBBdXNXOHVUOGdYYmJCQzFURmpZRGhnR01YWkEyNkpJRUVuOE1Uakl0cXkwZUErTUd0RUovSklUWWZCYk0yTHBKT0J2QW1YN3A5ZXUzOGRwdzNCN0xBNnNWZzFxNFg2R1FBZk5xR0l6WDBxeTBmNG1HRUEyU0JpQXBxVEtUNWFxZkwwTWtBMU5DdzhBQzhRdWhMekVZb3VDL3VCZmdReldhMTAyWG9aQUFkZkJsUXEvNEZxbjRBTVlCZWdCMUVybDh3MHNrQTFHalJoNFE0cjdaOGltblFwQ0h1QllnZmdxNXFwSk1CS09HamV2Mm1uR0FWeW9CakYyR1ZqNXZ4NWxuWG9GMWhKMHpmeitEREprbFYvMzdRdFhzSmRUSUFkWkw0UVl4L3ZzZjFLQThrQVBRQ2w0S2NTTU1WNkdRQWFtaDRwTC9HQUN3OEFGb0NvWEhnamxZNkdjQjB2aXd3Y3dSY3dBM3dBamZHbytMbElHZFJ5VGgwTW9BcXZsaGo4UmhZNEtpVkZyNXVMVE1LblF4Z05sOHU4ZUcxZ1BGd0V4TEM5OGE5QUJvR2FvQ05qRUluQTFCZG4zTmN6SGk5Q0xZSTdobHVISDNGV21ZTU9obkFGWHk1UnEvZnBBWFlMMUFSTjRKUGdobWRURXVYd3VabDBHc1EvOVh3OEdxUHdRVVVRNmM3NDdrUnI1VGVyWGJtR1pqbFN0UitYOXdWN0lSdm9XSllDVEpuV3MzWUpYTmRQTUNIK2NLRVIyMFp2QXZNalJiRk80WTRabkhHQnFuVXhRQnU0d3NDbk9rSkhnZWMvTWpDWGRaeXd0Q2h4ckdyODFBOXhJZWJLMkRXRzk5dE1CTG5VRWFjaXBVRGFtREJaSERDMCt2cTRBRTRLMWlBSm0zRUh4KzhWUHlaZUI3QWNZZXc2bjJ3KzdlSHljMEpKRG5KU1kvaDZHeFJWOHlWRVhCYTNna2oxeDZBSFJzbGQ4Q2x3YldaRHFBMGdFUXdpSERKRU1DZXdRbmZONWpMUXE4QWQ2UDJUOTBOaXk3VEp5SFZHZ3lUZks3OHhYaTQ1TnhHbmgyUWNoc29rZG1hdHI5Ti9ndGxodHFDVlRYZG5TZEI5NlhHQzI0RFI1NmdZV3BlR1E4RFdJMTNvVHRGTHR3dWUzeDNnTUh2NGdTcWpPdDNoRS9FeFNkV1drdlBZQXNvYjRJSGdBbjc3am5BVEJHK1B4RUdPSnV1Wi9BeGNJaXpiUncxcm4vQ2ZOOXdHTGlNaGVzRTJYUy92T0dqRWY4dzhEaCsrTVhHOVU4WVhnb0RmTnpySlZDdU0xbC94dmphY0tlUTFxUHJzTDM2UzFBaTlZLzFtN2lmU1E3Vm8weFp0dUFjMERheTRZYS9EYTZhaHgvNU82eWdDV0Q2K3pPSFFKTHZWMWRVZGNOcWNJaERwSEkrM2hIV2E1Z0J2ampzQVY1Z2dRTWNkekR0RzBiY3JJMGZCZmZDeFJRK0N3TzQxU1I5amhFV29yOERvZzZBLzhGNk81WVI4QTJzdDZKY240NC9UazRqWUU3QWRZNDRkZ0JNQ2JjTTRFYndXU2dlZWxTSXlCZmlQOHJBQWdXRmlJVVFNVGhTMEU1ci9SRFd6MkNKNmoySkhmNDI3NVRobFBlb2Q2bmhoZ0d3bTdjWjRwZHNnVVZ1OE1HY09hTUlxdFlwS0dwdUlhcGwwQkswRUlJRzdRZzZhZEtrdnZMeTh1anMyYk5ERlJVVk1UQmFWMWNYbWpGalJneU0xdGJXaGlvcksyTlZWVlhSdFd2WGlxYW1wakljZGlmSUNTcFNJdE1HY0JYNEhNU2YvaDJjNDBhUHVuMjNCUzBySzR2VzE5Y1hVVXlLQzBHTEtDYUVqTmJVMUJSeFNVR3JxNnVMSmsrZXpLN3p0TEIrL2ZyejI3WnQ0Nk4xM3dEWjQ1b1NtVFFBWHBSZ3phOWcyczhIRzNXQkxvS0NSVk1BNjlDTW82R2hJYnBwMHlaNlhFNXFmYS9hbVFLWk1nQWxQa2p4NVlQdTVSWUtQWlp3RlBHSUpTaEZQSXgxaURkUlFjOVIwTEZjTGdRTldXSzZMcWhkYk4rK1BieHUzYm9TclBKaVcxbzNqbVpDcUF2aTR6OE9QZzYzankrMTliM3BDTXJSd3lqb29EdUN4bGhMNFhKRE9nbHFGM3YzN2oyL2N1Vktob0EvZ0x6dWtoSVROUURPQU1vWlB5cStERTErak8raitHNEtHZ3dHbGFCd3VVcFF5K1dxUkNqZkJMV0xscGFXNkpJbFN4Z0NPUHI2QjlUT0ZMQnJBSnpsYXliSStmS3JRWTVmbzU3cm55TkVIOXFwb1V3S3l0cWF5SElUZ2s2ZE90VTNndHJGNGNPSHd3c1dMR0FJT0FyT1ZUdFR3SzRCY0RCSDlSei9XSUNnNzBEUUNGMHVhdVFnQkkwWVFiT0Q3dTd1OHloN2hnQk9aVTlEU0FtN0J2QWF1SEQxNnRYbkZ5NWNLQ0Z3eEhLNWd4QTBZZ1ROUFFvS0NxSlNTb1lCamplY2NzZzl1d2J3SEhoemMzTnpiT25TcFdZK1hBMHhmZnIwY0U5UEQydC9QZGlxZG80RHV4MDF5T2VFZVB2dHQzMDltS1BPUUloTjlMek9zSmJqd3E0QklMbkhTNGRhR0dnSUdFRENNNCticXlWZzF3Q1k0SXV1cmk0emtwZW1LQzB0VFhobnR0UlN3bEVJT0hIaWhBa0JtZ0pKZVNJRXVHSUF5dmUzdDdmYlRSNE5zZ1FZZ0tzaFFCa0Fza3pmanVtdk84ckx5OTBQQWEydHJTWUVhSXFaTTJlYUVPQm5WRmRYSjU3NGRzVUErR1R5NE1EQXdMUllMSlp1ZDc5QkZsRlpXZWxxQ0tEb1o4QkFSMGZIT2JYSFFDdFVWVlVsN3I5MHhRQUlFd1kwUm1scGFTZ1FDRVN3eXU3Z2xNbTZZd1BvN093MExRRk5VVkpTa25ZWWNHSUE1bnFBNXBnMWExYmFZY0N4QjBBT1lFS0FwcWlwcVVtN0plQkVSTjcwKytER2pSdGpEUTBONXBKd2x0SFQwM091cmEwdGloQmNkUHIwNlNqWHU3cTZpazZkT2hVbHU3dTdpdzRjT0JBSWg4UHNEK0FkV3p2VmdXUEFpUUZ3dE9ydGE5YXM2VzFzYkx3b3ZzdkFLZElSRk9FMlN2YjI5aFpKS2UwOFpjVlpSaDZLcjQ0T0p3YkF1V3QrdFh6NThyNm1wcWJpK0M2REJGRHoraUJpRElLR0tDZ1k0OVZUUzlEWUJBVWwzZ0daaHpFVWs4bnJJN2RQZ2VOT3h1ckVBRzRDbjErOGVIR3NwYVVsNzBOQUtrRlJnME1uVDU2a29ERUlHb0tnZG0rSlkzL0tXQUtPdHAzUi9oY25Cc0N4L1YrdnE2dnJQWDc4dU9kQ0FFUlNMaGRKYklqQ1VsUUt5aHFaWVVISHE2WEorMWlqY3dZbkJzRExqRzFUcGt6cDYrL3Z6M2tJR0V0UWlzbGFDcGRMY1dNVUdMVTU3d1cxQ3ljR3dDWUdlNW9Da1VoRUZoWVdPbWxLamdrSTJ0ZmUzazVCaXlnc2hUU0N1Z2NuQmtDd2NDcmhLbnRyYTJ2SERRT2pDS3F5WE5aVWlzaWtpUHZvZGlFb2t5SzdndmFCeVlLTkpQZnpWalpmQ0dvWFRnMkFneE5ldm5uejVqUEZ4Y1VGT1JBMGVkMzBTRTRBVGczZ2VaQ3RnWFJnQk5VWVRnM2dFWkRqMENRTG1TeGk4cm9SMU1EQXdNREF3TURBd01EQXdNREF3Q0RuRU9KLzRqdzdwMTBYMlhBQUFBQUFTVVZPUks1Q1lJST0ifSxmdW5jdGlvbihBLGUsdCl7ZnVuY3Rpb24gbihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IGk9dCg0KSxyPXQoMSksbz10KDMpLHt2YWxpZGF0ZVJlZ2V4OnN9PXQoMTQpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXtuKHRoaXMsInJlcGxhY2VycyIse30pLG4odGhpcywia25vd25MaW5rcyIse30pLHRoaXMucnVudGltZT1BLGFsZXJ0KCJ1bml0ZSBpcyBkZXByZWNhdGVkLCBwbGVhc2UgdXNlIHRoZSBibG9ja3MgaW4gdGhlIHRvb2xib3giKX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqd1VuaXRlIixuYW1lOiJVbml0ZSIsYmxvY2tJY29uVVJJOiJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVVBQUFBRkFDQU1BQUFENlRsV1lBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBUFVFeFVSUUFBQVAreE5RRGlHZ0NVL3dBQUFKRVFHR29BQUFBRmRGSk9VLy8vLy84QSs3WU9Vd0FBQUFsd1NGbHpBQUFPd3dBQURzTUJ4MitvWkFBQUJBNUpSRUZVZUY3dDBFdHVXMEVVQTlGOHZQODFaOEpSQXd6Ykx1azVDT29NQmIxTGRQMzRFR0pBeUlDUUFTRURRZ2FFREFnWkVESWdaRURJZ0pBQklRTkNCb1FNQ0JrUU1pQmtRTWlBa0FFaEEwSUdoQXdJR1JBeUlHUkF5SUNRQVNFRFFnYUVEQWdaRUhvczRNK0haZmJ0REFnWkVESWdaRURJZ0pBQklRTkNCb1FNQ0JrUU1pQmtRTWlBa0FFaEEwSUdoQXdJR1JBeUlHUkF5SUNRQVNFRFFnYUVEQWdaRURJZ1pFRElnSkFCSVFOQ0JvUU1DQmtRTWlCa1FNaUFrQUVoQTBJR2hBd0lHUkF5SUdSQXlJQ1FBU0VEUWdhRURBZ1pFRElnWkVESWdKQUJJUU5DQm9RTUNCa1FNaUJrUU1pQWtBRWhBMElHaEF3SUdSQXlJR1JBeUlDUUFTRURRZ2FFREFnWkVESWdaRURJZ0pBQklRTkNCb1FNQ0JrUU1pQmtRTWlBa0FFaEEwSUdoQXdJR1JBeUlHUkF5SUNRQVNFRFFnYUVEQWdaRURJZ1pFRElnSkFCSVFOQ0JvUU1DQmtRTWlCa1FNaUFrQUVoQTBLUEJmeGZHUkF5SUdSQXlJQ1FBU0VEUWdhRURBZ1pFRElnWkVESWdKQUJJUU5DQm9RTUNCa1FNaUJrUU1pQWtBRWhBMElHaEF3SUdSQXlJR1JBeUlDUUFTRURRZ2FFWnNCZmgvejh6L3I5U2Zuc3l3d0lHUkF5SUdSQXlJQ1FBU0VEUXA4T2VNcmZ2azA2dkV6T1hqUGdJV2V2R2ZDUXM5Y01lTWpaYXdZODVPdzFBeDV5OXBvQkR6bDd6WUNIbkwyR0E1N3kyZHZsdlcrVG1jbUFSV1ltQXhhWm1ReFlaR1l5WUpHWnlZQkZaaVlERnBtWkRGaGtabnA1d0ZQT3ZGemUrVGFabVF4WVpHWXlZSkdaeVlCRlppWURGcG1aREZoa1pqSmdrWm5KZ0VWbXByY0hQT1hzbCtWOWo4bHNaY0FoczVVQmg4eFdCaHd5V3hsd3lHeGx3Q0d6bFFHSHpGWUdIREpiUFI3d2xKbHJlZGRqTWxzWmNNaHNaY0FoczVVQmg4eFdCaHd5V3hsd3lHeGx3Q0d6bFFHSHpGYmZIdkNVMlNydmVreG1Ld01PbWEwTU9HUzJNdUNRMmNxQVEyWXJBdzZaclF3NFpMWXk0SkRaeW9CRFppc0REcG10RERoa3RqTGdrTm5LZ0VObUt3TU9tYTBNT0dTMk11Q1EyZXJiQTJibVd0NzFtTXhXQmh3eVd4bHd5R3hsd0NHemxRR0h6RllHSERKYkdYREliR1hBSWJQVjR3Rno5c3Z5cnNka3RqTGdrTm5LZ0VObUt3TU9tYTBNT0dTMk11Q1EyY3FBUTJZckF3NlpyZDRlTUdkZUx1OTdtOHhNQml3eU14bXd5TXhrd0NJemt3R0x6RXdHTERJekdiREl6R1RBSWpQVHl3UG1zN2ZMTzk4bU01TUJpOHhNQml3eU14bXd5TXhrd0NJemt3R0x6RXdHTERJekdiREl6SVFENW0vZkp1OTltWnk5WnNCRHpsNHo0Q0Zucnhud2tMUFhESGpJMldzR1BPVHNOUU1lY3ZhYUFRODVlKzNUQWZQelB5c2RydVd6THpNZ1pFRElnSkFCSVFOQ0JvUU1DTTJBK2pzRFFnYUVEQWdaRURJZ1pFRElnSkFCSVFOQ0JvUU1DQmtRTWlCa1FNaUFrQUVoQTBJR2hBd0lHUkF5SUdSQXlJQ1FBU0VEUWdhRURBZ1pFRElnWkVESWdNakh4eCtJUEV4TTBoOHNpQUFBQUFCSlJVNUVya0pnZ2c9PSIsY29sb3IxOiIjN2RkY2ZmIixjb2xvcjI6IiM0YTk4ZmYiLGJsb2Nrczpbe29wY29kZToiYWx3YXlzIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5hbHdheXMiLGRlZmF1bHQ6ImFsd2F5cyIsZGVzY3JpcHRpb246IlJ1bnMgdGhlIGNvZGUgZXZlcnkgdGljayJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5FVkVOVH0se29wY29kZToid2hlbmFueXRoaW5nIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy53aGVuYW55dGhpbmciLGRlZmF1bHQ6IndoZW4gW0FOWVRISU5HXSIsZGVzY3JpcHRpb246IlJ1bnMgYmxvY2tzIHdoZW4gc2V0IGJvb2xlYW4gaXMgdHJ1ZSJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5IQVQsYXJndW1lbnRzOntBTllUSElORzp7dHlwZTpvLkJPT0xFQU59fX0sIi0tLSIse29wY29kZToiZ2V0c3ByaXRld2l0aGF0dHJpYiIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MuZ2V0c3ByaXRld2l0aGF0dHJpYiIsZGVmYXVsdDoiZ2V0IHNwcml0ZSB3aXRoIFt2YXJdIHNldCB0byBbdmFsXSIsZGVzY3JpcHRpb246IlJlcG9ydHMgdGhlIGZpcnN0IHNwcml0ZSB3aXRoIGEgdmFyaWFibGUgc2V0IHRvIGEgdmFsdWUifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuUkVQT1JURVIsYXJndW1lbnRzOnt2YXI6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteSB2YXJpYWJsZSJ9LHZhbDp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6IjAifX19LCItLS0iLHtvcGNvZGU6ImJhY2tUb0dyZWVuRmxhZyIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MuYmFja1RvR3JlZW5GbGFnIixkZWZhdWx0OiJydW4gW0ZMQUddIixkZXNjcmlwdGlvbjoiQWN0cyBsaWtlIGEgY2xpY2sgb24gdGhlIGZsYWcgaGFzIGJlZW4gZG9uZS4ifSksdGVybWluYWw6ITAsYmxvY2tUeXBlOnIuQ09NTUFORCxhcmd1bWVudHM6e0ZMQUc6e3R5cGU6by5JTUFHRSxkYXRhVVJJOiJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQVlDQVlBQUFEZ2R6MzRBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFDSjBsRVFWUklpZDJVeTA5VFFSU0h2Mmt2MVZSNWhoUVFxd2xZR3RxQ210Ykhva2hEVE5RdEVWejRCL2dmbUJDRFhveUdtTGoza2JCd1kyTFk2TXBIV0pEVW9CdWtLc1RLUTZJMnBhV0dCaXBDbzczakJpaTMwQnBJNzhaZk1wa3pNem56blRPUEF3WkxiRmd0L1pXWTAxMWs5Z3p5c1NkWkxJQ1N0ZEpYa1BSalNuczQxaGNIMlk3RWptQVZtRVNLRnlqeUNhUHFyNTBBekJ0V2JlQXNFS0RFMG95N3c0cm5mQVhOYldVMG5sWTQwQ1F3bVgwa1k3M1VCcjRRR3c1dnU1dm5kZzMxWnk2d3YzT0doZWNaZlFicmFqazNScDJ6WFJkQ3FlMElyZzVvOGs4dyt1d1dSOVZMbUUxM2VhZU5nYXJScXRvUTRqS0tkcFV5K3dMeSszSGcydmFBUWxJc2JrNTFaVWpOSi9uOGVnQnY1Q0JhbjJCZjVUTDFubGthZkdrV1l6OFllVnk5NGJJandIcE9wVFkvdnM3TmMxV0FIUUNOcjVzWFRMc0EvRU9hTkJhZ2FicGg4UUV5WXpBQTNRa1prWUdlVU9BVnlUbFdVdC9JL001Z0xhL0dwRGpZWEZyeXV1bVBhQ3NnTVdzbCtpbEVmTG9PU1FUQkNsQkJ1VzJHRXhjWHNWaTloUUZTRjhSV1FHVDhNTkNMd3pYQVlIYzJuTmFiYlF6ZHU0L1RINlRocEJNaGJEbWVmMWlLaFJnZjhpSEZvL3dBZUVwSWZVZ29aL2JEOVNBQjFVczQyTVBVaUpPYXhoQlZoNVl3S1lLZmliM01oWnRZWFM1QjBzbDc5VlVoUUg0TnE2dkFEYnpxSGFKVGJVUW4zUWpLRUNLT2xHOElxYmxoN2FwVXNGYXlYNjYxZ2pMZ0gvelBnUG0xUGxGTVFQYVNIYTRIVEljblNGVzhMU2JBY1AwRjN1R3FFaW1ueDZNQUFBQUFTVVZPUks1Q1lJST0iLGFsdDoiQmx1ZSBGbGFnIn19fSwiLS0tIix7b3Bjb2RlOiJ0cnVlQm9vbGVhbiIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MudHJ1ZUJvb2xlYW4iLGRlZmF1bHQ6InRydWUiLGRlc2NyaXB0aW9uOiJSZXR1cm5zIHRydWUifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQk9PTEVBTn0se29wY29kZToiZmFsc2VCb29sZWFuIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5mYWxzZUJvb2xlYW4iLGRlZmF1bHQ6ImZhbHNlIixkZXNjcmlwdGlvbjoiUmV0dXJucyBmYWxzZSJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5CT09MRUFOfSx7b3Bjb2RlOiJyYW5kb21Cb29sZWFuIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5yYW5kb21Cb29sZWFuIixkZWZhdWx0OiJyYW5kb20iLGRlc2NyaXB0aW9uOiJSZXR1cm5zIHRydWUgb3IgZmFsc2UifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQk9PTEVBTn0sIi0tLSIse29wY29kZToibW9iaWxlIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5tb2JpbGUiLGRlZmF1bHQ6Im1vYmlsZT8iLGRlc2NyaXB0aW9uOiJSZXR1cm5zIHRydWUgaWYgdGhlIHByb2plY3QgaXMgcnVubmluZyBvbiBhIG1vYmlsZSBkZXZpY2UifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQk9PTEVBTn0sIi0tLSIse29wY29kZToidGhpbmdfaXNfdGV4dCIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MudGhpbmdfaXNfdGV4dCIsZGVmYXVsdDoiW1RFWFQxXSBpcyB0ZXh0PyIsZGVzY3JpcHRpb246IkNoZWNrcyBpZiBzb21ldGhpbmcgaXMgdGV4dCEifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQk9PTEVBTixhcmd1bWVudHM6e1RFWFQxOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZTppKHtpZDoiandVbml0ZS50aGluZ19pc190ZXh0X3doYXRUb0NoZWNrIixkZWZhdWx0OiJ3b3JsZCIsZGVzY3JpcHRpb246IldoYXQgdG8gY2hlY2suIn0pfX19LHtvcGNvZGU6InRoaW5nX2lzX251bWJlciIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MudGhpbmdfaXNfbnVtYmVyIixkZWZhdWx0OiJbVEVYVDFdIGlzIG51bWJlcj8iLGRlc2NyaXB0aW9uOiJDaGVja3MgaWYgc29tZXRoaW5nIGlzIGEgbnVtYmVyISJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5CT09MRUFOLGFyZ3VtZW50czp7VEVYVDE6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOmkoe2lkOiJqd1VuaXRlLnRoaW5nX2lzX251bWJlcl93aGF0VG9DaGVjayIsZGVmYXVsdDoiMTAiLGRlc2NyaXB0aW9uOiJXaGF0IHRvIGNoZWNrLiJ9KX19fSx7b3Bjb2RlOiJpZl9yZXR1cm5fZWxzZV9yZXR1cm4iLHRleHQ6aSh7aWQ6Imp3VW5pdGUuYmxvY2tzLmlmX3JldHVybl9lbHNlX3JldHVybiIsZGVmYXVsdDoiaWYgW2Jvb2xlYW5dIGlzIHRydWUgW1RFWFQxXSBpcyBmYWxzZSBbVEVYVDJdIixkZXNjcmlwdGlvbjoiUmV0dXJucyBhIHZhbHVlIGJhc2VkIG9uIHdldGhlciBvciBub3QgdGhlIGJvb2xlYW4gaXMgdHJ1ZSBvciBmYWxzZSJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5SRVBPUlRFUixhcmd1bWVudHM6e2Jvb2xlYW46e3R5cGU6by5CT09MRUFOfSxURVhUMTp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6aSh7aWQ6Imp3VW5pdGUuaWZfcmV0dXJuX2Vsc2VfcmV0dXJuX2lmVmFsdWUiLGRlZmF1bHQ6ImZvbyIsZGVzY3JpcHRpb246IldoYXQgdG8gcmV0dXJuIGlmIHRoZSBib29sZWFuIGlzIHRydWUuIn0pfSxURVhUMjp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6aSh7aWQ6Imp3VW5pdGUuaWZfcmV0dXJuX2Vsc2VfcmV0dXJuX2Vsc2VWYWx1ZSIsZGVmYXVsdDoiYmFyIixkZXNjcmlwdGlvbjoiV2hhdCB0byByZXR1cm4gaWYgdGhlIGJvb2xlYW4gaXMgZmFsc2UuIn0pfX19LHtvcGNvZGU6ImluZGV4T2ZUZXh0SW5UZXh0Iix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5pbmRleE9mVGV4dEluVGV4dCIsZGVmYXVsdDoiaW5kZXggb2YgW1RFWFQxXSBpbiBbVEVYVDJdIixkZXNjcmlwdGlvbjoiRmluZHMgdGhlIHBvc2l0aW9uIG9mIHNvbWUgdGV4dCBpbiBhbm90aGVyIHBpZWNlIG9mIHRleHQuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLlJFUE9SVEVSLGFyZ3VtZW50czp7VEVYVDE6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOmkoe2lkOiJqd1VuaXRlLmluZGV4b2ZfdGV4dFRvRmluZCIsZGVmYXVsdDoid29ybGQiLGRlc2NyaXB0aW9uOiJUaGUgdGV4dCB0byBsb29rIGZvci4ifSl9LFRFWFQyOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZTppKHtpZDoiandVbml0ZS5pbmRleG9mX3RleHRUb1NlYXJjaCIsZGVmYXVsdDoiSGVsbG8gd29ybGQhIixkZXNjcmlwdGlvbjoiVGhlIHRleHQgdG8gc2VhcmNoIGluLiJ9KX19fSx7b3Bjb2RlOiJyZWdleHRlc3QiLHRleHQ6aSh7aWQ6Imp3VW5pdGUuYmxvY2tzLnJlZ2V4dGVzdCIsZGVmYXVsdDoidGVzdCBbdGV4dF0gd2l0aCByZWdleCBbcmVnXSIsZGVzY3JpcHRpb246InRlc3RzIGEgc3RyaW5nIHRvIHNlZSBpZiBpdHMgdmFsaWQgZm9yIHRoaXMgcmVnZXgifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQk9PTEVBTixhcmd1bWVudHM6e3RleHQ6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOmkoe2lkOiJqd1VuaXRlLnJlZ2V4dGVzdF90ZXh0IixkZWZhdWx0OiJmb28gYmFyIixkZXNjcmlwdGlvbjoidGhlIHRleHQgdG8gdGVzdCJ9KX0scmVnOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZTppKHtpZDoiandVbml0ZS5yZWdleHRlc3RfcmVnZXgiLGRlZmF1bHQ6Ii9mb28vZyIsZGVzY3JpcHRpb246InRoZSByZWdleCB0byB0ZXN0IHRoZSB0ZXh0IHdpdGgifSl9fX0se29wY29kZToicmVnZXhtYXRjaCIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MucmVnZXhtYXRjaCIsZGVmYXVsdDoibWF0Y2ggW3RleHRdIHdpdGggcmVnZXggW3JlZ10iLGRlc2NyaXB0aW9uOiJnZXRzIGFsbCByZWdleCBtYXR4aGVzIG9uIGEgc3RyaW5nIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLlJFUE9SVEVSLGFyZ3VtZW50czp7dGV4dDp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6aSh7aWQ6Imp3VW5pdGUucmVnZXhtYXRjaF90ZXh0IixkZWZhdWx0OiJmb28gYmFyIixkZXNjcmlwdGlvbjoidGhlIHRleHQgdG8gdGVzdCJ9KX0scmVnOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZTppKHtpZDoiandVbml0ZS5yZWdleG1hdGNoX3JlZ2V4IixkZWZhdWx0OiIvZm9vL2ciLGRlc2NyaXB0aW9uOiJ0aGUgcmVnZXggdG8gdGVzdCB0aGUgdGV4dCB3aXRoIn0pfX19LHtvcGNvZGU6InJlcGxhY2VBbGwiLHRleHQ6aSh7aWQ6Imp3VW5pdGUuYmxvY2tzLnJlcGxhY2VBbGwiLGRlZmF1bHQ6ImluIFt0ZXh0XSByZXBsYWNlIGFsbCBbdGVybV0gd2l0aCBbcmVzXSIsZGVzY3JpcHRpb246InJlcGxhY2VzIGFsbCBvZiBzb210aGluZyB3aXRoIHNvbWV0aGluZyBpbiBhIHN0cmluZyJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5SRVBPUlRFUixhcmd1bWVudHM6e3RleHQ6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOmkoe2lkOiJqd1VuaXRlLnJlcGxhY2VBbGxfdGV4dCIsZGVmYXVsdDoiZm9vIGJhciIsZGVzY3JpcHRpb246InRoZSB0ZXh0IHRvIHRlc3QifSl9LHRlcm06e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOmkoe2lkOiJqd1VuaXRlLnJlcGxhY2VBbGxfcmVwbGFjeSIsZGVmYXVsdDoiZm9vIixkZXNjcmlwdGlvbjoid2hhdCB0ZXh0IHRvIHJlcGxhY2UifSl9LHJlczp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6aSh7aWQ6Imp3VW5pdGUucmVwbGFjZUFsbF9yZXBsYWNlciIsZGVmYXVsdDoiYmFyIixkZXNjcmlwdGlvbjoidGhlIHRleHQgdG8gcmVwbGFjZSB3aXRoIn0pfX19LHtvcGNvZGU6ImdldExldHRlcnNGcm9tSW5kZXhUb0luZGV4SW5UZXh0Iix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5nZXRMZXR0ZXJzRnJvbUluZGV4VG9JbmRleEluVGV4dCIsZGVmYXVsdDoibGV0dGVycyBmcm9tIFtJTkRFWDFdIHRvIFtJTkRFWDJdIGluIFtURVhUXSIsZGVzY3JpcHRpb246IkdldHMgYSBwYXJ0IG9mIHRleHQgdXNpbmcgdGhlIGluZGV4ZXMgc3BlY2lmaWVkLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5SRVBPUlRFUixhcmd1bWVudHM6e0lOREVYMTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6Mn0sSU5ERVgyOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZTozfSxURVhUOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZTppKHtpZDoiandVbml0ZS5nZXRMZXR0ZXJzRnJvbUluZGV4VG9JbmRleEluVGV4dF90ZXh0IixkZWZhdWx0OiJIZWxsbyEiLGRlc2NyaXB0aW9uOiJUaGUgdGV4dCB0byBnZXQgYSBzdWJzdHJpbmcgZnJvbS4ifSl9fX0se29wY29kZToicmVhZExpbmVJbk11bHRpbGluZVRleHQiLHRleHQ6aSh7aWQ6Imp3VW5pdGUuYmxvY2tzLnJlYWRMaW5lSW5NdWx0aWxpbmVUZXh0IixkZWZhdWx0OiJyZWFkIGxpbmUgW0xJTkVdIGluIFtURVhUXSIsZGVzY3JpcHRpb246IlJlYWRzIGEgY2VydGFpbiBsaW5lIGluIHRleHQgd2l0aCBtdWx0aXBsZSBsaW5lcy4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuUkVQT1JURVIsYXJndW1lbnRzOntMSU5FOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxURVhUOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZTppKHtpZDoiandVbml0ZS5yZWFkTGluZUluTXVsdGlsaW5lVGV4dF90ZXh0IixkZWZhdWx0OiJUZXh0IHdpdGggbXVsdGlwbGUgbGluZXMgaGVyZSIsZGVzY3JpcHRpb246IlRoZSB0ZXh0IHRvIHJlYWQgbGluZXMgZnJvbS4ifSl9fX0se29wY29kZToibmV3TGluZSIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MubmV3TGluZSIsZGVmYXVsdDoibmV3bGluZSIsZGVzY3JpcHRpb246IlJlcHJlc2VudHMgYSBuZXcgbGluZSBjaGFyYWN0ZXIuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLlJFUE9SVEVSfSx7b3Bjb2RlOiJzdHJpbmdpZnkiLHRleHQ6aSh7aWQ6Imp3VW5pdGUuYmxvY2tzLnN0cmluZ2lmeSIsZGVmYXVsdDoiW09ORV0gYXMgc3RyaW5nIixkZXNjcmlwdGlvbjoiUmVwcmVzZW50cyBhIG5ldyBsaW5lIGNoYXJhY3Rlci4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuUkVQT1JURVIsYXJndW1lbnRzOntPTkU6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOiJmb28ifX19LHtvcGNvZGU6ImxlcnBGdW5jIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5sZXJwRnVuYyIsZGVmYXVsdDoiaW50ZXJwb2xhdGUgW09ORV0gdG8gW1RXT10gYnkgW0FNT1VOVF0iLGRlc2NyaXB0aW9uOiJMaW5lYXJseSBpbnRlcnBvbGF0ZXMgdGhlIGZpcnN0IG51bWJlciB0byB0aGUgc2Vjb25kIGJ5IHRoZSBhbW91bnQuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLlJFUE9SVEVSLGFyZ3VtZW50czp7T05FOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxUV086e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjN9LEFNT1VOVDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6LjV9fX0se29wY29kZToiYWR2TWF0aCIsdGV4dDppKHtpZDoiandVbml0ZS5ibG9ja3MuYWR2TWF0aCIsZGVmYXVsdDoiW09ORV0gW09QVElPTl0gW1RXT10iLGRlc2NyaXB0aW9uOiJPcGVyYXRvcnMgYWR2YW5jZWQgbWF0aCBmdW5jdGlvbiBidXQgd2l0aCAyIHZhcmlhYmxlcyJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5SRVBPUlRFUixhcmd1bWVudHM6e09ORTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MX0sT1BUSU9OOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHRWYWx1ZToiXiIsbWVudToiYWR2TWF0aCJ9LFRXTzp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6Mn19fSx7b3Bjb2RlOiJjb25zdHJhaW5udW1iZXIiLHRleHQ6aSh7aWQ6Imp3VW5pdGUuYmxvY2tzLmNvbnN0cmFpbm51bWJlciIsZGVmYXVsdDoiY29uc3RyYWluIFtpbnBdIG1pbiBbbWluXSBtYXggW21heF0iLGRlc2NyaXB0aW9uOiJDb25zdHJhaW5zIGEgbnVtYmVyIHRvIGEgc3BlY2lmaWVkIG1pbmltdW0gYW5kIG1heGltdW0ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuUkVQT1JURVIsYXJndW1lbnRzOntpbnA6e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjUwfSxtaW46e3R5cGU6by5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9LG1heDp7dHlwZTpvLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfX19LCItLS0iLHtvcGNvZGU6InNldFJlcGxhY2VyIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5zZXRSZXBsYWNlciIsZGVmYXVsdDoicmVwbGFjZXIgW1JFUExBQ0VSXSB0byBbVkFMVUVdIixkZXNjcmlwdGlvbjoiU2V0cyBhIHJlcGxhY2VyIHRvIGEgdmFsdWUifSksYXJndW1lbnRzOntSRVBMQUNFUjp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6ImZvbyJ9LFZBTFVFOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZToiYmFyIn19LGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLkNPTU1BTkR9LHtvcGNvZGU6InJlcGxhY2VXaXRoUmVwbGFjZXJzIix0ZXh0Omkoe2lkOiJqd1VuaXRlLmJsb2Nrcy5yZXBsYWNlV2l0aFJlcGxhY2VycyIsZGVmYXVsdDoicmVwbGFjZSBbU1RSSU5HXSB3aXRoIHJlcGxhY2VycyIsZGVzY3JpcHRpb246IlJlcGxhY2VzIGFsbCByZXBsYWNlciBuYW1lcyB3aXRoIHRoZWlyIHJlc3BlY3RpdmUgdmFsdWUifSksYXJndW1lbnRzOntTVFJJTkc6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOiJIZWxsbyB7Zm9vfSEifX0sZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuUkVQT1JURVJ9XSxtZW51czp7YWR2TWF0aDpbIl4iLCJyb290IiwibG9nIl19fX13aGVuYW55dGhpbmcoQSxlKXtyZXR1cm4gQm9vbGVhbihBLkFOWVRISU5HfHwhMSl9YmFja1RvR3JlZW5GbGFnKEEsZSl7dm0mJnZtLmdyZWVuRmxhZygpfXRydWVCb29sZWFuKCl7cmV0dXJuITB9ZmFsc2VCb29sZWFuKCl7cmV0dXJuITF9cmFuZG9tQm9vbGVhbigpe3JldHVybiBCb29sZWFuKE1hdGgucm91bmQoTWF0aC5yYW5kb20oKSkpfWluZGV4T2ZUZXh0SW5UZXh0KEEsZSl7Y29uc3QgdD1TdHJpbmcoQS5URVhUMSksbj1TdHJpbmcoQS5URVhUMik7bGV0IGk9MDtyZXR1cm4gbi5pbmNsdWRlcyh0KSYmKGk9bi5pbmRleE9mKHQpKzEpLGl9Z2V0TGV0dGVyc0Zyb21JbmRleFRvSW5kZXhJblRleHQoQSxlKXtjb25zdCB0PShOdW1iZXIoQS5JTkRFWDEpP051bWJlcihBLklOREVYMSk6MSktMSxuPShOdW1iZXIoQS5JTkRFWDIpP051bWJlcihBLklOREVYMik6MSktMTtyZXR1cm4gU3RyaW5nKEEuVEVYVCkuc3Vic3RyaW5nKHQsbil9cmVhZExpbmVJbk11bHRpbGluZVRleHQoQSxlKXtjb25zdCB0PShOdW1iZXIoQS5MSU5FKT9OdW1iZXIoQS5MSU5FKToxKS0xO3JldHVybiBTdHJpbmcoQS5URVhUKS5zcGxpdCgiXG4iKVt0XXx8IiJ9bmV3TGluZSgpe3JldHVybiJcbiJ9c3RyaW5naWZ5KEEsZSl7cmV0dXJuIEEuT05FfWxlcnBGdW5jKEEsZSl7Y29uc3QgdD1pc05hTihOdW1iZXIoQS5PTkUpKT8wOk51bWJlcihBLk9ORSksbj1pc05hTihOdW1iZXIoQS5UV08pKT8wOk51bWJlcihBLlRXTyksaT1pc05hTihOdW1iZXIoQS5BTU9VTlQpKT8wOk51bWJlcihBLkFNT1VOVCk7bGV0IHI9dDtyZXR1cm4gcis9KG4tdCkvKGkvKGkqaSkpLHJ9YWR2TWF0aChBLGUpe2NvbnN0IHQ9aXNOYU4oTnVtYmVyKEEuT05FKSk/MDpOdW1iZXIoQS5PTkUpLG49aXNOYU4oTnVtYmVyKEEuVFdPKSk/MDpOdW1iZXIoQS5UV08pO3N3aXRjaChTdHJpbmcoQS5PUFRJT04pKXtjYXNlIl4iOnJldHVybiB0KipuO2Nhc2Uicm9vdCI6cmV0dXJuIHQqKjEvbjtjYXNlImxvZyI6cmV0dXJuIE1hdGgubG9nKG4pL01hdGgubG9nKHQpO2RlZmF1bHQ6cmV0dXJuIDB9fXNldFJlcGxhY2VyKEEsZSl7dGhpcy5yZXBsYWNlcnNbInsiK1N0cmluZyhBLlJFUExBQ0VSKSsifSJdPVN0cmluZyhBLlZBTFVFfHwiIil9cmVwbGFjZVdpdGhSZXBsYWNlcnMoQSxlKXtsZXQgdD1TdHJpbmcoQS5TVFJJTkd8fCIiKTtmb3IoY29uc3QgQSBvZiBPYmplY3Qua2V5cyh0aGlzLnJlcGxhY2VycykpdD10LnJlcGxhY2VBbGwoQSx0aGlzLnJlcGxhY2Vyc1tBXSk7cmV0dXJuIHR9dGhpbmdfaXNfbnVtYmVyKEEsZSl7cmV0dXJuIFN0cmluZyhOdW1iZXIoQS5URVhUMSkpPT1BLlRFWFQxJiYhaXNOYU4oTnVtYmVyKEEuVEVYVDEpKX10aGluZ19pc190ZXh0KEEsZSl7cmV0dXJuIGlzTmFOKE51bWJlcihBLlRFWFQxKSl9aWZfcmV0dXJuX2Vsc2VfcmV0dXJuKEEpe3JldHVybiBBLmJvb2xlYW4/QS5URVhUMTpBLlRFWFQyfW1vYmlsZShBLGUpe3JldHVybiBuYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKCJNb2JpbGUiKXx8d2luZG93Lm1hdGNoTWVkaWEoIihtYXgtd2lkdGg6IDc2N3B4KSIpLm1hdGNoZXN9Z2V0c3ByaXRld2l0aGF0dHJpYihBLGUpe2NvbnN0IHQ9ZS5ydW50aW1lLnRhcmdldHMubWFwKEE9Pih7aWQ6QS5pZCxuYW1lOkEuc3ByaXRlP0Euc3ByaXRlLm5hbWU6IlVua293biIsdmFyaWFibGVzOk9iamVjdC52YWx1ZXMoQS52YXJpYWJsZXMpLnJlZHVjZSgoQSxlKT0+ZS5uYW1lPyhBW2UubmFtZV09U3RyaW5nKGUudmFsdWUpLEEpOkEse30pfSkpO2xldCBuPSJObyBzcHJpdGVzIGZvdW5kIjtmb3IobGV0IGU9MSxpPXRbMF07ZTx0Lmxlbmd0aDtpPXRbZSsrXSlpZihpLnZhcmlhYmxlc1tBLnZhcl09PUEudmFsKXtuPSd7ImlkIjogIicuY29uY2F0KGkuaWQsJyIsICJuYW1lIjogIicpLmNvbmNhdChpLm5hbWUsJyJ9Jyk7YnJlYWt9cmV0dXJuIG59Y29uc3RyYWlubnVtYmVyKEEpe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChBLm1pbixBLmlucCksQS5tYXgpfXJlZ2V4dGVzdChBKXtpZighcyhBLnJlZykpcmV0dXJuITE7cmV0dXJuIG5ldyBSZWdFeHAoQS5yZWcpLnRlc3QoQS50ZXh0KX1yZWdleG1hdGNoKEEpe2lmKCFzKEEucmVnKSlyZXR1cm4iW10iO2NvbnN0IGU9bmV3IFJlZ0V4cChBLnJlZyksdD1BLnRleHQubWF0Y2goZSk7cmV0dXJuIEpTT04uc3RyaW5naWZ5KHR8fFtdKX1yZXBsYWNlQWxsKEEpe3JldHVybiBBLnRleHQucmVwbGFjZUFsbChBLnRlcm0sQS5yZXMpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNCksaT10KDEpLHI9dCgzKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5ydW50aW1lLnJlZ2lzdGVyQ29tcGlsZWRFeHRlbnNpb25CbG9ja3MoImp3UHJvdG8iLHRoaXMuZ2V0Q29tcGlsZUluZm8oKSl9Z2V0SW5mbygpe3JldHVybnthdXRvTG9hZDohMCxpZDoiandQcm90byIsbmFtZToiTGFiZWxzIixjb2xvcjE6IiM5Njk2OTYiLGNvbG9yMjoiIzZlNmU2ZSIsYmxvY2tzOlt7b3Bjb2RlOiJsYWJlbEhhdCIsdGV4dDpuKHtpZDoiandQcm90by5ibG9ja3MubGFiZWxIYXQiLGRlZmF1bHQ6Ii8vIFtMQUJFTF0iLGRlc2NyaXB0aW9uOiJMYWJlbCBmb3Igc29tZSB1bnVzZWQgYmxvY2tzLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5IQVQsYXJndW1lbnRzOntMQUJFTDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImxhYmVsIn19fSx7b3Bjb2RlOiJsYWJlbEZ1bmN0aW9uIix0ZXh0Om4oe2lkOiJqd1Byb3RvLmJsb2Nrcy5sYWJlbEZ1bmN0aW9uIixkZWZhdWx0OiIvLyBbTEFCRUxdIixkZXNjcmlwdGlvbjoiTGFiZWwgZm9yIHNvbWUgYmxvY2tzLiJ9KSxibG9ja1R5cGU6aS5DT01NQU5ELGJyYW5jaENvdW50OjEsYXJndW1lbnRzOntMQUJFTDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImxhYmVsIn19fSx7b3Bjb2RlOiJsYWJlbENvbW1hbmQiLHRleHQ6bih7aWQ6Imp3UHJvdG8uYmxvY2tzLmxhYmVsQ29tbWFuZCIsZGVmYXVsdDoiLy8gW0xBQkVMXSIsZGVzY3JpcHRpb246IkxhYmVsIGZvciBsYWJlbGluZy4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuQ09NTUFORCxhcmd1bWVudHM6e0xBQkVMOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibGFiZWwifX19LHtvcGNvZGU6ImxhYmVsUmVwb3J0ZXIiLHRleHQ6bih7aWQ6Imp3UHJvdG8uYmxvY2tzLmxhYmVsUmVwb3J0ZXIiLGRlZmF1bHQ6IltWQUxVRV0gLy8gW0xBQkVMXSIsZGVzY3JpcHRpb246IkxhYmVsIGZvciBhIHZhbHVlLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e0xBQkVMOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibGFiZWwifSxWQUxVRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6InZhbHVlIn19fSx7b3Bjb2RlOiJsYWJlbEJvb2xlYW4iLHRleHQ6bih7aWQ6Imp3UHJvdG8uYmxvY2tzLmxhYmVsQm9vbGVhbiIsZGVmYXVsdDoiW1ZBTFVFXSAvLyBbTEFCRUxdIixkZXNjcmlwdGlvbjoiTGFiZWwgZm9yIGEgYm9vbGVhbi4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuQk9PTEVBTixhcmd1bWVudHM6e0xBQkVMOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibGFiZWwifSxWQUxVRTp7dHlwZTpyLkJPT0xFQU59fX0se2Jsb2NrVHlwZTppLkxBQkVMLHRleHQ6IlBsYWNlaG9sZGVycyJ9LHtvcGNvZGU6InBsYWNlaG9sZGVyQ29tbWFuZCIsdGV4dDpuKHtpZDoiandQcm90by5ibG9ja3MucGxhY2Vob2xkZXJDb21tYW5kIixkZWZhdWx0OiIuLi4iLGRlc2NyaXB0aW9uOiJQbGFjZWhvbGRlciBmb3Igc3RhY2sgYmxvY2tzLiJ9KSxibG9ja1R5cGU6aS5DT01NQU5EfSx7b3Bjb2RlOiJwbGFjZWhvbGRlclJlcG9ydGVyIix0ZXh0Om4oe2lkOiJqd1Byb3RvLmJsb2Nrcy5wbGFjZWhvbGRlclJlcG9ydGVyIixkZWZhdWx0OiIuLi4iLGRlc2NyaXB0aW9uOiJQbGFjZWhvbGRlciBmb3IgYSB2YWx1ZS4ifSksZGlzYWJsZU1vbml0b3I6ITAsYWxsb3dEcm9wQW55d2hlcmU6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtvcGNvZGU6InBsYWNlaG9sZGVyQm9vbGVhbiIsdGV4dDpuKHtpZDoiandQcm90by5ibG9ja3MucGxhY2Vob2xkZXJCb29sZWFuIixkZWZhdWx0OiIuLi4iLGRlc2NyaXB0aW9uOiJQbGFjZWhvbGRlciBmb3IgYSBib29sZWFuLiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5CT09MRUFOfV19fWdldENvbXBpbGVJbmZvKCl7cmV0dXJue2lyOntsYWJlbEZ1bmN0aW9uOihBLGUpPT4oe2tpbmQ6InN0YWNrIixicmFuY2g6QS5kZXNjZW5kU3Vic3RhY2soZSwiU1VCU1RBQ0siKX0pfSxqczp7bGFiZWxGdW5jdGlvbjooQSxlLHQpPT57ZS5kZXNjZW5kU3RhY2soQS5icmFuY2gsbmV3IHQuRnJhbWUoITEpKX19fX1sYWJlbEhhdCgpe3JldHVybiExfWxhYmVsRnVuY3Rpb24oQSxlKXtlLnN0YXJ0QnJhbmNoKDEsITEpfWxhYmVsQ29tbWFuZCgpe31sYWJlbFJlcG9ydGVyKEEpe3JldHVybiBBLlZBTFVFfWxhYmVsQm9vbGVhbihBKXtyZXR1cm4gQS5WQUxVRX1wbGFjZWhvbGRlckNvbW1hbmQoKXt9cGxhY2Vob2xkZXJSZXBvcnRlcigpe3JldHVybiIifXBsYWNlaG9sZGVyQm9vbGVhbigpe3JldHVybiExfX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3QgaT10KDQpLHI9dCgxKSxvPXQoMykscz0iaHR0cHM6Ly9wcm94eS5qd2tsb25nLnJlcGwuY28iLGE9Imh0dHBzOi8vcG9zdGxpdC5kZXYvIjtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7bih0aGlzLCJsb2dpbkRhdGEiLHt1c2VybmFtZToiIix0b2tlbjoiIn0pLG4odGhpcywibGF0ZXN0UG9zdCIsIiIpLHRoaXMucnVudGltZT1BfWdldEluZm8oKXtyZXR1cm57aWQ6Imp3UG9zdExpdCIsbmFtZToicG9zdExpdCIsY29sb3IyOiIjMTRmNzg5Iixjb2xvcjE6IiMwZmQxNzMiLGJsb2Nrczpbe29wY29kZToiY2F0ZWdvcnlTaWduSW4iLHRleHQ6aSh7aWQ6Imp3UG9zdExpdC5ibG9ja3MuY2F0ZWdvcnlTaWduSW4iLGRlZmF1bHQ6IlNpZ24gSW4iLGRlc2NyaXB0aW9uOiJTaWduIGluIHRvIHBvc3RMaXQuIn0pLGJsb2NrVHlwZTpyLkxBQkVMfSx7b3Bjb2RlOiJzaWduSW4iLHRleHQ6aSh7aWQ6Imp3UG9zdExpdC5ibG9ja3Muc2lnbkluIixkZWZhdWx0OiJzaWduIGluIFtVU0VSXSBbUEFTU10iLGRlc2NyaXB0aW9uOiJTaWduIGluIHRvIHBvc3RMaXQuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLkNPTU1BTkQsYXJndW1lbnRzOntVU0VSOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZToidXNlcm5hbWUifSxQQVNTOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZToicGFzc3dvcmQifX19LHtvcGNvZGU6ImN1cnJlbnRVc2VybmFtZSIsdGV4dDppKHtpZDoiandQb3N0TGl0LmJsb2Nrcy5jdXJyZW50VXNlcm5hbWUiLGRlZmF1bHQ6InVzZXJuYW1lIixkZXNjcmlwdGlvbjoiVXNlcm5hbWUgZm9yIHlvdXIgcG9zdExpdCBhY2NvdW50LiJ9KSxkaXNhYmxlTW9uaXRvcjohMSxibG9ja1R5cGU6ci5SRVBPUlRFUn0se29wY29kZToiY3VycmVudFRva2VuIix0ZXh0Omkoe2lkOiJqd1Bvc3RMaXQuYmxvY2tzLmN1cnJlbnRUb2tlbiIsZGVmYXVsdDoidG9rZW4iLGRlc2NyaXB0aW9uOiJUb2tlbiBmb3IgeW91ciBwb3N0TGl0IGFjY291bnQuIn0pLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTpyLlJFUE9SVEVSfSx7b3Bjb2RlOiJpc1NpZ25lZEluIix0ZXh0Omkoe2lkOiJqd1Bvc3RMaXQuYmxvY2tzLmlzU2lnbmVkSW4iLGRlZmF1bHQ6InNpZ25lZCBpbj8iLGRlc2NyaXB0aW9uOiJDaGVja3MgaWYgeW91IGFyZSBjdXJyZW50bHkgc2lnbmVkIGludG8gYSBwb3N0TGl0IGFjY291bnQuIn0pLGRpc2FibGVNb25pdG9yOiExLGJsb2NrVHlwZTpyLkJPT0xFQU59LCItLS0iLHtvcGNvZGU6ImNhdGVnb3J5UG9zdHMiLHRleHQ6aSh7aWQ6Imp3UG9zdExpdC5ibG9ja3MuY2F0ZWdvcnlQb3N0cyIsZGVmYXVsdDoiUG9zdHMiLGRlc2NyaXB0aW9uOiJCbG9ja3MgdG8gY3JlYXRlIGFuZCBnZXQgZGF0YSBmcm9tIHBvc3RzIn0pLGJsb2NrVHlwZTpyLkxBQkVMfSx7b3Bjb2RlOiJjcmVhdGVQb3N0Iix0ZXh0Omkoe2lkOiJqd1Bvc3RMaXQuYmxvY2tzLmNyZWF0ZVBvc3QiLGRlZmF1bHQ6ImNyZWF0ZSBwb3N0IFtTVFJJTkddIixkZXNjcmlwdGlvbjoiQ3JlYXRlIGEgcG9zdC4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQ09NTUFORCxhcmd1bWVudHM6e1NUUklORzp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6InBvc3QifX19LHtvcGNvZGU6ImdldExhdGVzdFBvc3QiLHRleHQ6aSh7aWQ6Imp3UG9zdExpdC5ibG9ja3MuZ2V0TGF0ZXN0UG9zdCIsZGVmYXVsdDoibGF0ZXN0IHBvc3QgaWQiLGRlc2NyaXB0aW9uOiJHZXRzIHRoZSBJRCBvZiB0aGUgbGF0ZXN0IHBvc3QgbWFkZSB3aXRoIHRoZSBjcmVhdGUgcG9zdCBibG9jay4ifSksZGlzYWJsZU1vbml0b3I6ITEsYmxvY2tUeXBlOnIuUkVQT1JURVJ9LCItLS0iLHtvcGNvZGU6ImdldFBvc3QiLHRleHQ6aSh7aWQ6Imp3UG9zdExpdC5ibG9ja3MuZ2V0UG9zdCIsZGVmYXVsdDoiZ2V0IHBvc3QgW0lEXSBbV0FOVFNdIixkZXNjcmlwdGlvbjoiR2V0cyBzb21lIGRhdGEgZnJvbSBhIHBvc3QuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLlJFUE9SVEVSLGFyZ3VtZW50czp7SUQ6e3R5cGU6by5TVFJJTkcsZGVmYXVsdFZhbHVlOiJpZCJ9LFdBTlRTOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZToianNvbiIsbWVudToiZ2V0UG9zdFdhbnRzIn19fSx7b3Bjb2RlOiJsaWtlUG9zdCIsdGV4dDppKHtpZDoiandQb3N0TGl0LmJsb2Nrcy5saWtlUG9zdCIsZGVmYXVsdDoibGlrZSBwb3N0IFtJRF0iLGRlc2NyaXB0aW9uOiJMaWtlIGEgcG9zdC4ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQ09NTUFORCxhcmd1bWVudHM6e0lEOnt0eXBlOm8uU1RSSU5HLGRlZmF1bHRWYWx1ZToiaWQifX19LHtvcGNvZGU6InVubGlrZVBvc3QiLHRleHQ6aSh7aWQ6Imp3UG9zdExpdC5ibG9ja3MudW5saWtlUG9zdCIsZGVmYXVsdDoidW5saWtlIHBvc3QgW0lEXSIsZGVzY3JpcHRpb246IlVubGlrZSBhIHBvc3QuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLkNPTU1BTkQsYXJndW1lbnRzOntJRDp7dHlwZTpvLlNUUklORyxkZWZhdWx0VmFsdWU6ImlkIn19fV0sbWVudXM6e2dldFBvc3RXYW50czpbImpzb24iLCJhdXRob3IiLCJjb250ZW50IiwidGltZSIsImNvbW1lbnRzIiwibGlrZXMiLCJsaWtlcnMiLCJyZXBvc3RzIl19fX1hc3luYyBzaWduSW4oQSxlKXtjb25zdCB0PVN0cmluZyhBLlVTRVIpLG49U3RyaW5nKEEuUEFTUyk7dmFyIGk9YXdhaXQgZmV0Y2gocyx7bWV0aG9kOiJQT1NUIixoZWFkZXJzOntBY2NlcHQ6ImFwcGxpY2F0aW9uL2pzb24iLCJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7dXJsOmErInNpZ25pbiIsbWV0aG9kOiJQT1NUIixib2R5Ont1c2VybmFtZTp0LHBhc3N3b3JkOm59fSl9KSxyPWF3YWl0IGkuanNvbigpO3Iuc3VjY2VzcyYmKHRoaXMubG9naW5EYXRhPXt1c2VybmFtZTp0LHRva2VuOnIudG9rZW59KX1jdXJyZW50VXNlcm5hbWUoQSxlKXtyZXR1cm4gdGhpcy5sb2dpbkRhdGEudXNlcm5hbWV9Y3VycmVudFRva2VuKEEsZSl7cmV0dXJuIHRoaXMubG9naW5EYXRhLnRva2VufWlzU2lnbmVkSW4oQSxlKXtyZXR1cm4iIiE9PXRoaXMubG9naW5EYXRhLnRva2VufWFzeW5jIGNyZWF0ZVBvc3QoQSxlKXtjb25zdCB0PVN0cmluZyhBLlNUUklORyk7dmFyIG49YXdhaXQgZmV0Y2gocyx7bWV0aG9kOiJQT1NUIixoZWFkZXJzOntBY2NlcHQ6ImFwcGxpY2F0aW9uL2pzb24iLCJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7dXJsOmErInBvc3QiLG1ldGhvZDoiUE9TVCIsaGVhZGVyczp7Y29va2llOiJ0b2tlbj0iK3RoaXMubG9naW5EYXRhLnRva2VufSxib2R5Ontjb250ZW50OnR9fSl9KTtjb25zdCBpPWF3YWl0IG4uanNvbigpO2kuc3VjY2VzcyYmKHRoaXMubGF0ZXN0UG9zdD1pLnN1Y2Nlc3Muc3BsaXQoIi8iKVsyXSl9Z2V0TGF0ZXN0UG9zdChBLGUpe3JldHVybiB0aGlzLmxhdGVzdFBvc3R9YXN5bmMgZ2V0UG9zdChBLGUpe2NvbnN0IHQ9U3RyaW5nKEEuSUQpLG49U3RyaW5nKEEuV0FOVFMpLGk9YSsicG9zdHMvIit0KyIvZGF0YS8iO3ZhciByPWF3YWl0IGZldGNoKHMse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7QWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIiwiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3VybDppLGhlYWRlcnM6e2Nvb2tpZToidG9rZW49Iit0aGlzLmxvZ2luRGF0YS50b2tlbn19KX0pO2NvbnN0IG89YXdhaXQgci5qc29uKCk7c3dpdGNoKG4pe2Nhc2UianNvbiI6cmV0dXJuIEpTT04uc3RyaW5naWZ5KG8pO2Nhc2UiYXV0aG9yIjpyZXR1cm4gby5hdXRob3I7Y2FzZSJjb250ZW50IjpyZXR1cm4gby5jb250ZW50O2Nhc2UidGltZSI6cmV0dXJuIG8udGltZTtjYXNlImNvbW1lbnRzIjpyZXR1cm4gby5jb21tZW50cztjYXNlImxpa2VzIjpyZXR1cm4oby5saWtlc3x8W10pLmxlbmd0aDtjYXNlImxpa2VycyI6cmV0dXJuIEpTT04uc3RyaW5naWZ5KG8ubGlrZXN8fFtdKTtjYXNlInJlcG9zdHMiOnJldHVybiBvLnJlcG9zdHN8fDA7ZGVmYXVsdDpyZXR1cm4iIn19bGlrZVBvc3QoQSxlKXtjb25zdCB0PVN0cmluZyhBLklEKTtmZXRjaChzLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6e0FjY2VwdDoiYXBwbGljYXRpb24vanNvbiIsIkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxib2R5Ont1cmw6YSsibGlrZSIsbWV0aG9kOiJQT1NUIixoZWFkZXJzOntjb29raWU6InRva2VuPSIrdGhpcy5sb2dpbkRhdGEudG9rZW59LGJvZHk6e3Bvc3Q6dH19fSl9dW5saWtlUG9zdChBLGUpe2NvbnN0IHQ9U3RyaW5nKEEuSUQpO2ZldGNoKHMse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7QWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIiwiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6e3VybDphKyJ1bmxpa2UiLG1ldGhvZDoiUE9TVCIsaGVhZGVyczp7Y29va2llOiJ0b2tlbj0iK3RoaXMubG9naW5EYXRhLnRva2VufSxib2R5Ontwb3N0OnR9fX0pfX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3QgaT10KDQpLHI9dCgxKSxvPXQoMykscz10KDEzKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7bih0aGlzLCJmbGV4ZXMiLHt9KSx0aGlzLnJ1bnRpbWU9QX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqd1JlZmxleCIsbmFtZToiUmVmbGV4Iixjb2xvcjE6IiMwMDAwMDAiLGNvbG9yMjoiI2ZmZmZmZiIsYmxvY2tzOlt7b3Bjb2RlOiJjcmVhdGVGbGV4Iix0ZXh0Omkoe2lkOiJqd1JlZmxleC5ibG9ja3MuY3JlYXRlRmxleCIsZGVmYXVsdDoiY3JlYXRlIGZsZXgiLGRlc2NyaXB0aW9uOiJDcmVhdGVzIHRoZSBmbGV4LiBJZiB0aGVyZSBpcyBhbHJlYWR5IGEgZmxleCwgbm90aGluZyBoYXBwZW5zLiBZb3UgY2FuIG9ubHkgcmVtb3ZlIGEgZmxleCBieSByZWxvYWRpbmcgdGhlIHByb2plY3QuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLkNPTU1BTkQsZmlsdGVyOltzLlNQUklURV19LHtvcGNvZGU6InVwZGF0ZUZsZXgiLHRleHQ6aSh7aWQ6Imp3UmVmbGV4LmJsb2Nrcy51cGRhdGVGbGV4IixkZWZhdWx0OiJ1cGRhdGUgZmxleCIsZGVzY3JpcHRpb246IlVwZGF0ZSBwb3NpdGlvbiBvZiBzcHJpdGUgd2l0aCBmbGV4IGRhdGEuIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLkNPTU1BTkQsZmlsdGVyOltzLlNQUklURV19LCItLS0iLHtvcGNvZGU6InNldEZsZXhYWSIsdGV4dDppKHtpZDoiandSZWZsZXguYmxvY2tzLnNldEZsZXhYWSIsZGVmYXVsdDoic2V0IGZsZXggcG9zIFtGWF0gW0ZZXSIsZGVzY3JpcHRpb246IlNldHMgZmxleCBwb3NpdGlvbiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5DT01NQU5ELGFyZ3VtZW50czp7Rlg6e3R5cGU6by5OVU1CRVIsZGVmYXVsdDowfSxGWTp7dHlwZTpvLk5VTUJFUixkZWZhdWx0OjB9fSxmaWx0ZXI6W3MuU1BSSVRFXX0se29wY29kZToiZ2V0RmxleFgiLHRleHQ6aSh7aWQ6Imp3UmVmbGV4LmJsb2Nrcy5nZXRGbGV4WCIsZGVmYXVsdDoieCBmbGV4IHBvc2l0aW9uIixkZXNjcmlwdGlvbjoiR2V0cyB0aGUgZmxleCBwb3NpdG9uJ3MgeCB2YWx1ZSJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5SRVBPUlRFUixmaWx0ZXI6W3MuU1BSSVRFXX0se29wY29kZToiZ2V0RmxleFkiLHRleHQ6aSh7aWQ6Imp3UmVmbGV4LmJsb2Nrcy5nZXRGbGV4WSIsZGVmYXVsdDoieSBmbGV4IHBvc2l0aW9uIixkZXNjcmlwdGlvbjoiR2V0cyB0aGUgZmxleCBwb3NpdG9uJ3MgeSB2YWx1ZSJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5SRVBPUlRFUixmaWx0ZXI6W3MuU1BSSVRFXX0sIi0tLSIse29wY29kZToic2V0T2Zmc2V0WFkiLHRleHQ6aSh7aWQ6Imp3UmVmbGV4LmJsb2Nrcy5zZXRPZmZzZXRYWSIsZGVmYXVsdDoic2V0IG9mZnNldCBwb3MgW09YXSBbT1ldIixkZXNjcmlwdGlvbjoiU2V0cyBvZmZzZXQgcG9zaXRpb24ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOnIuQ09NTUFORCxhcmd1bWVudHM6e09YOnt0eXBlOm8uTlVNQkVSLGRlZmF1bHQ6MH0sT1k6e3R5cGU6by5OVU1CRVIsZGVmYXVsdDowfX0sZmlsdGVyOltzLlNQUklURV19LHtvcGNvZGU6ImdldE9mZnNldFgiLHRleHQ6aSh7aWQ6Imp3UmVmbGV4LmJsb2Nrcy5nZXRPZmZzZXRYIixkZWZhdWx0OiJ4IG9mZnNldCBwb3NpdGlvbiIsZGVzY3JpcHRpb246IkdldHMgdGhlIG9mZnNldCBwb3NpdG9uJ3MgeCB2YWx1ZSJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6ci5SRVBPUlRFUixmaWx0ZXI6W3MuU1BSSVRFXX0se29wY29kZToiZ2V0T2Zmc2V0WSIsdGV4dDppKHtpZDoiandSZWZsZXguYmxvY2tzLmdldE9mZnNldFkiLGRlZmF1bHQ6Inkgb2Zmc2V0IHBvc2l0aW9uIixkZXNjcmlwdGlvbjoiR2V0cyB0aGUgb2Zmc2V0IHBvc2l0b24ncyB5IHZhbHVlIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTpyLlJFUE9SVEVSLGZpbHRlcjpbcy5TUFJJVEVdfV19fV91cGRhdGVGbGV4KEEpe2NvbnN0IGU9dGhpcy5mbGV4ZXNbQS5nZXROYW1lKCldO2UmJiFlLnBhdXNlZCYmQS5zZXRYWShlLmZ4LzIqdm0ucnVudGltZS5zdGFnZVdpZHRoK2Uub3gsZS5meS8yKnZtLnJ1bnRpbWUuc3RhZ2VIZWlnaHQtZS5veSl9Y3JlYXRlRmxleChBLGUpe2UudGFyZ2V0LmlzU3ByaXRlKCkmJiFPYmplY3Qua2V5cyh0aGlzLmZsZXhlcykuaW5jbHVkZXMoZS50YXJnZXQuZ2V0TmFtZSgpKSYmKHRoaXMuZmxleGVzW2UudGFyZ2V0LmdldE5hbWUoKV09e2Z4OjAsZnk6MCxveDowLG95OjB9KSxjb25zb2xlLmRlYnVnKHRoaXMuZmxleGVzKX11cGRhdGVGbGV4KEEsZSl7dGhpcy5fdXBkYXRlRmxleChlLnRhcmdldCl9c2V0RmxleFhZKEEsZSl7T2JqZWN0LmtleXModGhpcy5mbGV4ZXMpLmluY2x1ZGVzKGUudGFyZ2V0LmdldE5hbWUoKSkmJih0aGlzLmZsZXhlc1tlLnRhcmdldC5nZXROYW1lKCldLmZ4PU51bWJlcihBLkZYKSx0aGlzLmZsZXhlc1tlLnRhcmdldC5nZXROYW1lKCldLmZ5PU51bWJlcihBLkZZKSl9Z2V0RmxleFgoQSxlKXtyZXR1cm4gT2JqZWN0LmtleXModGhpcy5mbGV4ZXMpLmluY2x1ZGVzKGUudGFyZ2V0LmdldE5hbWUoKSk/dGhpcy5mbGV4ZXNbZS50YXJnZXQuZ2V0TmFtZSgpXS5meDowfWdldEZsZXhZKEEsZSl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuZmxleGVzKS5pbmNsdWRlcyhlLnRhcmdldC5nZXROYW1lKCkpP3RoaXMuZmxleGVzW2UudGFyZ2V0LmdldE5hbWUoKV0uZnk6MH1zZXRPZmZzZXRYWShBLGUpe09iamVjdC5rZXlzKHRoaXMuZmxleGVzKS5pbmNsdWRlcyhlLnRhcmdldC5nZXROYW1lKCkpJiYodGhpcy5mbGV4ZXNbZS50YXJnZXQuZ2V0TmFtZSgpXS5veD1OdW1iZXIoQS5PWCksdGhpcy5mbGV4ZXNbZS50YXJnZXQuZ2V0TmFtZSgpXS5veT1OdW1iZXIoQS5PWSkpfWdldE9mZnNldFgoQSxlKXtyZXR1cm4gT2JqZWN0LmtleXModGhpcy5mbGV4ZXMpLmluY2x1ZGVzKGUudGFyZ2V0LmdldE5hbWUoKSk/dGhpcy5mbGV4ZXNbZS50YXJnZXQuZ2V0TmFtZSgpXS5veDowfWdldE9mZnNldFkoQSxlKXtyZXR1cm4gT2JqZWN0LmtleXModGhpcy5mbGV4ZXMpLmluY2x1ZGVzKGUudGFyZ2V0LmdldE5hbWUoKSk/dGhpcy5mbGV4ZXNbZS50YXJnZXQuZ2V0TmFtZSgpXS5veTowfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNCksaT10KDEpLHI9dCgzKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0SW5mbygpe3JldHVybntpZDoiYmxvY2tseTJtYXRoIixuYW1lOiJNYXRoIixjb2xvcjE6IiM1YjY3YTUiLGNvbG9yMjoiIzQ0NGQ3YyIsYmxvY2tzOlt7b3Bjb2RlOiJOdW1iZXIiLHRleHQ6bih7aWQ6ImJsb2NrbHkybWF0aC5ibG9ja3MuTnVtYmVyIixkZWZhdWx0OiJbTlVNQkVSXSIsZGVzY3JpcHRpb246IkRlZmluZSBhIG51bWJlciJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e05VTUJFUjp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTIzfX19LHtvcGNvZGU6Ik9wZXJhdGlvbiIsdGV4dDpuKHtpZDoiYmxvY2tseTJtYXRoLmJsb2Nrcy5PcGVyYXRpb24iLGRlZmF1bHQ6IltPTkVdW09QXVtUV09dIixkZXNjcmlwdGlvbjoiUGVyZm9ybSBhIGJhc2ljIG1hdGggb3BlcmF0aW9uIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7T05FOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxPUDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6IisiLG1lbnU6Ik9wZXJhdGlvbiJ9LFRXTzp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSx7b3Bjb2RlOiJBZHZhbmNlZE9wZXJhdGlvbiIsdGV4dDpuKHtpZDoiYmxvY2tseTJtYXRoLmJsb2Nrcy5BZHZhbmNlZE9wZXJhdGlvbiIsZGVmYXVsdDoiW09QXVtPTkVdIixkZXNjcmlwdGlvbjoiUGVyZm9ybSBhIGFkdmFuY2VkIG1hdGggb3BlcmF0aW9uIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7T05FOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxPUDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6InNxdWFyZSByb290IixtZW51OiJBZHZhbmNlZE9wZXJhdGlvbiJ9fX0se29wY29kZToiRnVuY3Rpb24iLHRleHQ6bih7aWQ6ImJsb2NrbHkybWF0aC5ibG9ja3MuRnVuY3Rpb24iLGRlZmF1bHQ6IltPUF1bT05FXSIsZGVzY3JpcHRpb246IlBlcmZvcm0gYSBtYXRoIGZ1bmN0aW9uIn0pLGRpc2FibGVNb25pdG9yOiEwLGJsb2NrVHlwZTppLlJFUE9SVEVSLGFyZ3VtZW50czp7T05FOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxPUDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6InNpbiIsbWVudToiRnVuY3Rpb24ifX19LHtvcGNvZGU6IkNvbnN0YW50Iix0ZXh0Om4oe2lkOiJibG9ja2x5Mm1hdGguYmxvY2tzLkNvbnN0YW50IixkZWZhdWx0OiJbQ09OU1RdIixkZXNjcmlwdGlvbjoiUmV0cmlldmUgYSBjb25zdGFudCJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUixhcmd1bWVudHM6e0NPTlNUOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiz4AiLG1lbnU6IkNvbnN0YW50In19fSx7b3Bjb2RlOiJJc09wdGlvbiIsdGV4dDpuKHtpZDoiYmxvY2tseTJtYXRoLmJsb2Nrcy5Jc09wdGlvbiIsZGVmYXVsdDoiW09ORV0gaXMgW09QVElPTl0/IixkZXNjcmlwdGlvbjoiQ2hlY2sgaWYgbnVtYmVyIG1hdGNoIGNvbmRpdGlvbiJ9KSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5CT09MRUFOLGFyZ3VtZW50czp7T05FOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxPUFRJT046e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJldmVuIixtZW51OiJJc09wdGlvbiJ9fX0se29wY29kZToiSXNPcHRpb24yIix0ZXh0Om4oe2lkOiJibG9ja2x5Mm1hdGguYmxvY2tzLklzT3B0aW9uMiIsZGVmYXVsdDoiW09ORV0gaXMgW09QVElPTl0gW1RXT10/IixkZXNjcmlwdGlvbjoiQ2hlY2sgaWYgbnVtYmVycyBtYXRjaCBjb25kaXRpb24ifSksZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuQk9PTEVBTixhcmd1bWVudHM6e09ORTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MX0sVFdPOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxPUFRJT046e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJldmVuIixtZW51OiJJc09wdGlvbjIifX19XSxtZW51czp7T3BlcmF0aW9uOlsiKyIsIi0iLCLDlyIsIsO3IiwiXiJdLEFkdmFuY2VkT3BlcmF0aW9uOlsic3F1YXJlIHJvb3QiLCJhYnNvbHV0ZSIsIi0iLCJsbiIsImxvZzEwIiwiZV4iLCIxMF4iXSxGdW5jdGlvbjpbInNpbiIsImNvcyIsInRhbiIsImFzaW4iLCJhY29zIiwiYXRhbiJdLENvbnN0YW50Olsiz4AiLCJlIiwiz4YiLCJzcXJ0KDIpIiwic3FydCjCvSkiLCLiiJ4iXSxJc09wdGlvbjpbImV2ZW4iLCJvZGQiLCJwcmltZSIsIndob2xlIiwicG9zaXRpdmUiLCJuZWdhdGl2ZSJdLElzT3B0aW9uMjpbImRpdmlzaWJsZSBieSJdfX19TnVtYmVyKEEsZSl7cmV0dXJuIE51bWJlcihBLk5VTUJFUil9T3BlcmF0aW9uKEEsZSl7c3dpdGNoKFN0cmluZyhBLk9QKSl7Y2FzZSIrIjpyZXR1cm4gTnVtYmVyKEEuT05FKStOdW1iZXIoQS5UV08pO2Nhc2UiLSI6cmV0dXJuIE51bWJlcihBLk9ORSktTnVtYmVyKEEuVFdPKTtjYXNlIsOXIjpyZXR1cm4gTnVtYmVyKEEuT05FKSpOdW1iZXIoQS5UV08pO2Nhc2Uiw7ciOnJldHVybiBOdW1iZXIoQS5PTkUpL051bWJlcihBLlRXTyk7Y2FzZSJeIjpyZXR1cm4gTnVtYmVyKEEuT05FKSoqTnVtYmVyKEEuVFdPKTtkZWZhdWx0OnJldHVybiBOdW1iZXIoQS5PTkUpfX1BZHZhbmNlZE9wZXJhdGlvbihBLGUpe3N3aXRjaChTdHJpbmcoQS5PUCkpe2Nhc2Uic3F1YXJlIHJvb3QiOnJldHVybiBNYXRoLnNxcnQoTnVtYmVyKEEuT05FKSk7Y2FzZSJhYnNvbHV0ZSI6cmV0dXJuIE1hdGguYWJzKE51bWJlcihBLk9ORSkpO2Nhc2UiLSI6cmV0dXJuIDAtTnVtYmVyKEEuT05FKTtjYXNlImxuIjpyZXR1cm4gTWF0aC5sb2coTnVtYmVyKEEuT05FKSk7Y2FzZSJsb2cxMCI6cmV0dXJuIE1hdGgubG9nMTAoTnVtYmVyKEEuT05FKSk7Y2FzZSJlXiI6cmV0dXJuIE1hdGguZXhwKE51bWJlcihBLk9ORSkpO2Nhc2UiMTBeIjpyZXR1cm4gTWF0aC5wb3coMTAsTnVtYmVyKEEuT05FKSk7ZGVmYXVsdDpyZXR1cm4gTnVtYmVyKEEuT05FKX19RnVuY3Rpb24oQSxlKXtzd2l0Y2goU3RyaW5nKEEuT1ApKXtjYXNlInNpbiI6cmV0dXJuIE1hdGguc2luKE51bWJlcihBLk9ORSkvMTgwKk1hdGguUEkpO2Nhc2UidGFuIjpyZXR1cm4gTWF0aC50YW4oTnVtYmVyKEEuT05FKS8xODAqTWF0aC5QSSk7Y2FzZSJjb3MiOnJldHVybiBNYXRoLmNvcyhOdW1iZXIoQS5PTkUpLzE4MCpNYXRoLlBJKTtjYXNlImFzaW4iOnJldHVybiBNYXRoLmFzaW4oTnVtYmVyKEEuT05FKSkvTWF0aC5QSSoxODA7Y2FzZSJhdGFuIjpyZXR1cm4gTWF0aC5hdGFuKE51bWJlcihBLk9ORSkpL01hdGguUEkqMTgwO2Nhc2UiYWNvcyI6cmV0dXJuIE1hdGguYWNvcyhOdW1iZXIoQS5PTkUpKS9NYXRoLlBJKjE4MDtkZWZhdWx0OnJldHVybiBOdW1iZXIoQS5PTkUpfX1Db25zdGFudChBLGUpe3N3aXRjaChTdHJpbmcoQS5DT05TVCkpe2Nhc2Uiz4AiOnJldHVybiBNYXRoLlBJO2Nhc2UiZSI6cmV0dXJuIE1hdGguRTtjYXNlIs+GIjpyZXR1cm4oMStNYXRoLnNxcnQoNSkpLzI7Y2FzZSJzcXJ0KDIpIjpyZXR1cm4gTWF0aC5TUVJUMjtjYXNlInNxcnQowr0pIjpyZXR1cm4gTWF0aC5TUVJUMV8yO2Nhc2Ui4oieIjpyZXR1cm4gMS8wO2RlZmF1bHQ6cmV0dXJuIDB9fUlzT3B0aW9uKEEsZSl7c3dpdGNoKFN0cmluZyhBLk9QVElPTikpe2Nhc2UiZXZlbiI6cmV0dXJuIE51bWJlcihBLk9ORSklMj09MDtjYXNlIm9kZCI6cmV0dXJuIE51bWJlcihBLk9ORSklMj09MTtjYXNlInByaW1lIjpyZXR1cm4gdGhpcy5faXNwcmltZShOdW1iZXIoQS5PTkUpKTtjYXNlIndob2xlIjpyZXR1cm4gTnVtYmVyKEEuT05FKSUxPT0wO2Nhc2UicG9zaXRpdmUiOnJldHVybiBOdW1iZXIoQS5PTkUpPjA7Y2FzZSJuZWdhdGl2ZSI6cmV0dXJuIE51bWJlcihBLk9ORSk8MDtkZWZhdWx0OnJldHVybiExfX1Jc09wdGlvbjIoQSxlKXtzd2l0Y2goU3RyaW5nKEEuT1BUSU9OKSl7Y2FzZSJkaXZpc2libGUgYnkiOnJldHVybiBOdW1iZXIoQS5PTkUpJU51bWJlcihBLlRXTyk9PTA7ZGVmYXVsdDpyZXR1cm4hMX19X2lzcHJpbWUoQSl7aWYoMj09QXx8Mz09QSlyZXR1cm4hMDtpZihpc05hTihBKXx8QTw9MXx8QSUxIT0wfHxBJTI9PTB8fEElMz09MClyZXR1cm4hMTtmb3IodmFyIGU9NjtlPD1NYXRoLnNxcnQoQSkrMTtlKz02KWlmKEElKGUtMSk9PTB8fEElKGUrMSk9PTApcmV0dXJuITE7cmV0dXJuITB9fX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBpPXQoMSkscj10KDMpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe24odGhpcywieG1sc0luR2VuZXJhdGlvbiIsW10pfWdldEluZm8oKXtyZXR1cm57aWQ6Imp3WG1sIixuYW1lOiJYTUwiLGNvbG9yMToiI2ZmYmIzZCIsY29sb3IyOiIjY2M5ODM3IixibG9ja3M6W3tvcGNvZGU6ImNyZWF0ZU5ld1hNTCIsdGV4dDoiZ2VuZXJhdGUgeG1sIFtST09UXSB3aXRoOiIsYXJndW1lbnRzOntST09UOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToicm9vdCJ9fSxibG9ja1R5cGU6aS5DT05ESVRJT05BTH0se29wY29kZToiYWRkVGV4dCIsdGV4dDoiYWRkIHRleHQgW1RFWFRdIixhcmd1bWVudHM6e1RFWFQ6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJmb28ifX0sYmxvY2tUeXBlOmkuQ09NTUFORH0se29wY29kZToiYWRkQ2hpbGQiLHRleHQ6ImFkZCBjaGlsZCBbQ0hJTERdIixhcmd1bWVudHM6e0NISUxEOnt9fSxibG9ja1R5cGU6aS5DT01NQU5EfSx7b3Bjb2RlOiJhZGRBdHRyaWJ1dGUiLHRleHQ6ImFkZCBhdHRyaWJ1dGUgW0FUVF0gYXMgW1RFWFRdIixhcmd1bWVudHM6e0FUVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImZvbyJ9LFRFWFQ6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJiYXIifX0sYmxvY2tUeXBlOmkuQ09NTUFORH0se29wY29kZToiZ2VuZXJhdGVkIix0ZXh0OiJ4bWwgZ2VuZXJhdGVkIixibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiY2xlYXIiLHRleHQ6ImNsZWFyIChBRFZBTkNFRCkiLGJsb2NrVHlwZTppLkNPTU1BTkR9LCItLS0iLHtvcGNvZGU6ImdldENoaWxkIix0ZXh0OiJnZXQgY2hpbGQgW05VTV0gZnJvbSBbWE1MXSIsYXJndW1lbnRzOntOVU06e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiZ2V0TmFtZWQiLHRleHQ6ImdldCBlbGVtZW50IFtTVFJdIGZyb20gW1hNTF0iLGFyZ3VtZW50czp7U1RSOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZWxlbWVudCJ9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiZ2V0QXR0ciIsdGV4dDoiZ2V0IGF0dHJpYnV0ZSBbQVRUXSBmcm9tIFtYTUxdIixhcmd1bWVudHM6e0FUVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6ImF0dHJpYnV0ZSJ9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn1dfX1fWE1MVG9TdHJpbmcoQSl7cmV0dXJuIEEub3V0ZXJIVE1MfV9TdHJpbmdUb1hNTChBKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gZS5pbm5lckhUTUw9QS50cmltKCksZS5maXJzdENoaWxkfWNyZWF0ZU5ld1hNTChBLGUpe2xldHtST09UOnR9PUE7dGhpcy54bWxzSW5HZW5lcmF0aW9uLnVuc2hpZnQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0KSksZS5zdGFydEJyYW5jaCgxLCExKX1hZGRUZXh0KEEpe2xldHtURVhUOmV9PUE7dGhpcy54bWxzSW5HZW5lcmF0aW9uWzBdLmFwcGVuZChlKX1hZGRDaGlsZChBKXtsZXR7Q0hJTEQ6ZX09QTtlPXRoaXMuX1N0cmluZ1RvWE1MKGUpLHRoaXMueG1sc0luR2VuZXJhdGlvblswXS5hcHBlbmRDaGlsZChlKX1hZGRBdHRyaWJ1dGUoQSl7bGV0e0FUVDplLFRFWFQ6dH09QTt0aGlzLnhtbHNJbkdlbmVyYXRpb25bMF0uc2V0QXR0cmlidXRlKGUsdCl9Z2VuZXJhdGVkKCl7dHJ5e3JldHVybiB0aGlzLl9YTUxUb1N0cmluZyh0aGlzLnhtbHNJbkdlbmVyYXRpb25bMF0pfWNhdGNoKEEpe3JldHVybiIifX1jbGVhcigpe3RoaXMueG1sc0luR2VuZXJhdGlvbi5zaGlmdCgpfWdldENoaWxkKEEpe2xldHtOVU06ZSxYTUw6dH09QTt0cnl7cmV0dXJuIGUtPTEsdD10aGlzLl9TdHJpbmdUb1hNTCh0KSwoInN0cmluZyIhPXR5cGVvZiB0LmNoaWxkTm9kZXNbZV0/dGhpcy5fWE1MVG9TdHJpbmcodC5jaGlsZE5vZGVzW2VdKTp0LmNoaWxkTm9kZXNbZV0pfHwiIn1jYXRjaChBKXtyZXR1cm4iIn19Z2V0TmFtZWQoQSl7bGV0e1NUUjplLFhNTDp0fT1BO3RyeXtyZXR1cm4gdD10aGlzLl9TdHJpbmdUb1hNTCh0KSx0aGlzLl9YTUxUb1N0cmluZyhBcnJheS5mcm9tKHQuY2hpbGRyZW4pLmZpbmQoQT0+QS5sb2NhbE5hbWU9PSIiLnRvTG93ZXJDYXNlKCkpKXx8IiJ9Y2F0Y2goQSl7cmV0dXJuIiJ9fWdldEF0dHIoQSl7bGV0e0FUVDplLFhNTDp0fT1BO3RyeXtyZXR1cm4gdD10aGlzLl9TdHJpbmdUb1hNTCh0KSx0LmdldEF0dHJpYnV0ZShlKXx8IiJ9Y2F0Y2goQSl7cmV0dXJuIiJ9fX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiBpKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP24oT2JqZWN0KHQpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyKEEsZSx0W2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhBLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHQpKTpuKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfWZ1bmN0aW9uIHIoQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBvPXQoMSkscz10KDEwKSxhPXQoMyksQj10KDEzKSxjPXQoMik7ZnVuY3Rpb24gZyhBKXtyZXR1cm4gQT49MWU2P0EudG9FeHBvbmVudGlhbCg0KTooQT1NYXRoLmZsb29yKDFlMypBKS8xZTMpLnRvRml4ZWQoTWF0aC5taW4oMywoU3RyaW5nKEEpLnNwbGl0KCIuIilbMV18fCIiKS5sZW5ndGgpKX1mdW5jdGlvbiBFKEEpe2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtyZXR1cm4gZS5pbm5lckhUTUw9QSxlLnN0eWxlLmRpc3BsYXk9ImhpZGRlbiIsZS5zdHlsZS53aGl0ZVNwYWNlPSJub3dyYXAiLGUuc3R5bGUud2lkdGg9IjEwMCUiLGUuc3R5bGUudGV4dEFsaWduPSJjZW50ZXIiLGV9Y2xhc3MgUXtjb25zdHJ1Y3Rvcigpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTowLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7cih0aGlzLCJjdXN0b21JZCIsImp3VmVjdG9yIikscih0aGlzLCJ0b01vbml0b3JDb250ZW50IiwoKT0+RSh0aGlzLnRvU3RyaW5nKCkpKSx0aGlzLng9aXNOYU4oQSk/MDpBLHRoaXMueT1pc05hTihlKT8wOmV9c3RhdGljIHRvVmVjdG9yKEEpe3JldHVybiBBIGluc3RhbmNlb2YgUT9BOkEgaW5zdGFuY2VvZiBBcnJheSYmMj09QS5sZW5ndGg/bmV3IFEoQVswXSxBWzFdKTpTdHJpbmcoQSkuc3BsaXQoIiwiKT9uZXcgUShjLnRvTnVtYmVyKFN0cmluZyhBKS5zcGxpdCgiLCIpWzBdKSxjLnRvTnVtYmVyKFN0cmluZyhBKS5zcGxpdCgiLCIpWzFdKSk6bmV3IFEoMCwwKX1qd0FycmF5SGFuZGxlcigpe3JldHVybiJWZWN0b3IifXRvU3RyaW5nKCl7cmV0dXJuIiIuY29uY2F0KHRoaXMueCwiLCIpLmNvbmNhdCh0aGlzLnkpfXRvUmVwb3J0ZXJDb250ZW50KCl7bGV0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7QS5zdHlsZS5kaXNwbGF5PSJmbGV4IixBLnN0eWxlLndpZHRoPSIyMDBweCIsQS5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIjtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLnN0eWxlLmRpc3BsYXk9ImZsZXgiLGUuc3R5bGUuZmxleERpcmVjdGlvbj0iY29sdW1uIixlLnN0eWxlLmp1c3RpZnlDb250ZW50PSJjZW50ZXIiLGUuc3R5bGUud2lkdGg9IjEwMHB4IixlLmFwcGVuZENoaWxkKEUoIjxiPlg6PC9iPiAiLmNvbmNhdChnKHRoaXMueCkpKSksZS5hcHBlbmRDaGlsZChFKCI8Yj5ZOjwvYj4gIi5jb25jYXQoZyh0aGlzLnkpKSkpLEEuYXBwZW5kQ2hpbGQoZSk7bGV0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS53aWR0aD0iMTAwcHgiO2xldCBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO24uc3R5bGUud2lkdGg9Ijg0cHgiLG4uc3R5bGUuaGVpZ2h0PSI4NHB4IixuLnN0eWxlLm1hcmdpbj0iOHB4IixuLnN0eWxlLmJvcmRlcj0iNHB4IHNvbGlkIGJsYWNrIixuLnN0eWxlLmJvcmRlclJhZGl1cz0iMTAwJSIsbi5zdHlsZS5ib3hTaXppbmc9ImJvcmRlci1ib3giLG4uc3R5bGUudHJhbnNmb3JtPSJyb3RhdGUoIi5jb25jYXQodGhpcy5hbmdsZSwiZGVnKSIpO2xldCBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiBpLnN0eWxlLndpZHRoPSI4cHgiLGkuc3R5bGUuaGVpZ2h0PSI1MCUiLGkuc3R5bGUuYmFja2dyb3VuZD0iYmxhY2siLGkuc3R5bGUucG9zaXRpb249ImFic29sdXRlIixpLnN0eWxlLmxlZnQ9ImNhbGMoNTAlIC0gNHB4KSIsbi5hcHBlbmRDaGlsZChpKSx0LmFwcGVuZENoaWxkKG4pLEEuYXBwZW5kQ2hpbGQodCksQX1nZXQgbWFnbml0dWRlKCl7cmV0dXJuIE1hdGguaHlwb3QodGhpcy54LHRoaXMueSl9Z2V0IGFuZ2xlKCl7cmV0dXJuIE1hdGguYXRhbjIodGhpcy54LHRoaXMueSkqKDE4MC9NYXRoLlBJKX10b0pTT04oKXtyZXR1cm57eDp0aGlzLngseTp0aGlzLnl9fX1jb25zdCB1PXtUeXBlOlEsQmxvY2s6e2Jsb2NrVHlwZTpvLlJFUE9SVEVSLGJsb2NrU2hhcGU6cy5MRUFGLGZvcmNlT3V0cHV0VHlwZToiVmVjdG9yIixkaXNhYmxlTW9uaXRvcjohMH0sQXJndW1lbnQ6e3NoYXBlOnMuTEVBRixjaGVjazpbIlZlY3RvciJdfX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7dm0uandWZWN0b3I9dSx2bS5ydW50aW1lLnJlZ2lzdGVyU2VyaWFsaXplcigiandWZWN0b3IiLEE9PltBLngsQS55XSxBPT5uZXcgdS5UeXBlKEFbMF0sQVsxXSkpfWdldEluZm8oKXtyZXR1cm57aWQ6Imp3VmVjdG9yIixuYW1lOiJWZWN0b3IiLGNvbG9yMToiIzZiYWJmZiIsbWVudUljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeU1DSWdlRzFzYm5NNlluZzlJbWgwZEhCek9pOHZZbTk0ZVMxemRtY3VZMjl0SWo0S0lDQThaV3hzYVhCelpTQnpkSGxzWlQwaWMzUnliMnRsTFhkcFpIUm9PaUF5Y0hnN0lIQmhhVzUwTFc5eVpHVnlPaUJ6ZEhKdmEyVTdJR1pwYkd3NklISm5ZaWd4TURjc0lERTNNU3dnTWpVMUtUc2djM1J5YjJ0bE9pQnlaMklvTmprc0lERXlOaXdnTWpBMEtUc2lJR040UFNJeE1DSWdZM2s5SWpFd0lpQnllRDBpT1NJZ2NuazlJamtpUGp3dlpXeHNhWEJ6WlQ0S0lDQThjR0YwYUNCa1BTSk5JRFF1TXpVeUlERXpMamMyTmlCRElEUXVNelV5SURFMExqZ3dOU0ExTGpFNU5DQXhOUzQyTkRnZ05pNHlNelVnTVRVdU5qUTRJRXdnTVRBZ01UVXVOalE0SUVNZ01URXVNRE01SURFMUxqWTBPQ0F4TVM0NE9ESWdNVFF1T0RBMUlERXhMamc0TWlBeE15NDNOallnVENBeE1TNDRPRElnTVRBZ1F5QXhNUzQ0T0RJZ09DNDVOVGtnTVRFdU1ETTVJRGd1TVRFNElERXdJRGd1TVRFNElFd2dOaTR5TXpVZ09DNHhNVGdnUXlBMUxqRTVOQ0E0TGpFeE9DQTBMak0xTWlBNExqazFPU0EwTGpNMU1pQXhNQ0JNSURRdU16VXlJREV6TGpjMk5pQk5JRGd1TVRFM0lERXpMamMyTmlCRElEWXVOalk0SURFekxqYzJOaUExTGpjMk1pQXhNaTR4T1RVZ05pNDBPRGNnTVRBdU9UUXlJRU1nTmk0NE1qSWdNVEF1TXpVNElEY3VORFF6SURFd0lEZ3VNVEUzSURFd0lFTWdPUzQxTmpjZ01UQWdNVEF1TkRjeUlERXhMalUyT1NBNUxqYzBOeUF4TWk0NE1qUWdReUE1TGpReE1TQXhNeTQwTURZZ09DNDNPRGtnTVRNdU56WTJJRGd1TVRFM0lERXpMamMyTmlCTklEY3VNVGMySURrdU1EVTVJRXdnT1M0d05UZ2dPUzR3TlRrZ1RDQTVMakExT0NBMUxqSTVOQ0JESURrdU1EVTRJRFF1TlRZNUlEZ3VNamN6SURRdU1URTJJRGN1TmpRM0lEUXVORGM1SUVNZ055NHpOVFVnTkM0Mk5EWWdOeTR4TnpZZ05DNDVOVGNnTnk0eE56WWdOUzR5T1RRZ1RDQTNMakUzTmlBNUxqQTFPU0JhSUUwZ01UQXVPVFF4SURFd0xqazBNaUJNSURFd0xqazBNU0F4TWk0NE1qUWdUQ0F4TkM0M01EWWdNVEl1T0RJMElFTWdNVFV1TkRNeElERXlMamd5TkNBeE5TNDRPRE1nTVRJdU1ETTVJREUxTGpVeU1TQXhNUzQwTVRJZ1F5QXhOUzR6TlRJZ01URXVNVEl4SURFMUxqQTBNU0F4TUM0NU5ESWdNVFF1TnpBMklERXdMamswTWlCTUlERXdMamswTVNBeE1DNDVORElnV2lJZ2MzUjViR1U5SW1acGJHdzZJSEpuWWlneU5UVXNJREkxTlN3Z01qVTFLVHNpUGp3dmNHRjBhRDRLUEM5emRtYysiLGJsb2NrczpbaSh7b3Bjb2RlOiJuZXdWZWN0b3IiLHRleHQ6Im5ldyB2ZWN0b3IgeDogW1hdIHk6IFtZXSIsYXJndW1lbnRzOntYOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxZOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX19LHUuQmxvY2spLGkoe29wY29kZToibmV3VmVjdG9yRnJvbU1hZ25pdHVkZSIsdGV4dDoibmV3IHZlY3RvciBtYWduaXR1ZGU6IFtYXSBhbmdsZTogW1ldIixhcmd1bWVudHM6e1g6e3R5cGU6YS5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9LFk6e3R5cGU6YS5BTkdMRSxkZWZhdWx0VmFsdWU6MH19fSx1LkJsb2NrKSwiLS0tIix7b3Bjb2RlOiJ2ZWN0b3JYIix0ZXh0OiJbVkVDVE9SXSB4IixibG9ja1R5cGU6by5SRVBPUlRFUixhcmd1bWVudHM6e1ZFQ1RPUjp1LkFyZ3VtZW50fX0se29wY29kZToidmVjdG9yWSIsdGV4dDoiW1ZFQ1RPUl0geSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntWRUNUT1I6dS5Bcmd1bWVudH19LCItLS0iLGkoe29wY29kZToiYWRkIix0ZXh0OiJbWF0gKyBbWV0iLGFyZ3VtZW50czp7WDp1LkFyZ3VtZW50LFk6dS5Bcmd1bWVudH19LHUuQmxvY2spLGkoe29wY29kZToic3VidHJhY3QiLHRleHQ6IltYXSAtIFtZXSIsYXJndW1lbnRzOntYOnUuQXJndW1lbnQsWTp1LkFyZ3VtZW50fX0sdS5CbG9jayksaSh7b3Bjb2RlOiJtdWx0aXBseUEiLHRleHQ6IltYXSAqIFtZXSIsYXJndW1lbnRzOntYOnUuQXJndW1lbnQsWTp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSx1LkJsb2NrKSxpKHtvcGNvZGU6Im11bHRpcGx5QiIsdGV4dDoiW1hdICogW1ldIixhcmd1bWVudHM6e1g6dS5Bcmd1bWVudCxZOnUuQXJndW1lbnR9fSx1LkJsb2NrKSxpKHtvcGNvZGU6ImRpdmlkZUEiLHRleHQ6IltYXSAvIFtZXSIsYXJndW1lbnRzOntYOnUuQXJndW1lbnQsWTp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSx1LkJsb2NrKSxpKHtvcGNvZGU6ImRpdmlkZUIiLHRleHQ6IltYXSAvIFtZXSIsYXJndW1lbnRzOntYOnUuQXJndW1lbnQsWTp1LkFyZ3VtZW50fX0sdS5CbG9jayksIi0tLSIse29wY29kZToibWFnbml0dWRlIix0ZXh0OiJtYWduaXR1ZGUgb2YgW1ZFQ1RPUl0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7VkVDVE9SOnUuQXJndW1lbnR9fSx7b3Bjb2RlOiJhbmdsZSIsdGV4dDoiYW5nbGUgb2YgW1ZFQ1RPUl0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7VkVDVE9SOnUuQXJndW1lbnR9fSxpKHtvcGNvZGU6Im5vcm1hbGl6ZSIsdGV4dDoibm9ybWFsaXplIFtWRUNUT1JdIixhcmd1bWVudHM6e1ZFQ1RPUjp1LkFyZ3VtZW50fX0sdS5CbG9jayksaSh7b3Bjb2RlOiJhYnNvbHV0ZSIsdGV4dDoiYWJzb2x1dGUgW1ZFQ1RPUl0iLGFyZ3VtZW50czp7VkVDVE9SOnUuQXJndW1lbnR9fSx1LkJsb2NrKSxpKHtvcGNvZGU6InJvdGF0ZSIsdGV4dDoicm90YXRlIFtWRUNUT1JdIGJ5IFtBTkdMRV0iLGFyZ3VtZW50czp7VkVDVE9SOnUuQXJndW1lbnQsQU5HTEU6e3R5cGU6YS5BTkdMRSxkZWZhdWx0VmFsdWU6OTB9fX0sdS5CbG9jayksaSh7b3Bjb2RlOiJyb3VuZCIsdGV4dDoiW1JPVU5ESU5HXSBvZiBbVkVDVE9SXSIsYXJndW1lbnRzOntST1VORElORzp7bWVudToicm91bmRpbmdGdW5jdGlvbnMifSxWRUNUT1I6dS5Bcmd1bWVudH19LHUuQmxvY2spLCItLS0iLGkoe29wY29kZToiZ2V0UG9zIix0ZXh0OiJwb3NpdGlvbiIsZXh0ZW5zaW9uczpbImNvbG91cnNfbW90aW9uIl0sZmlsdGVyOltCLlNQUklURV19LHUuQmxvY2spLHtvcGNvZGU6InNldFBvcyIsdGV4dDoic2V0IHBvc2l0aW9uIHRvIFtWRUNUT1JdIixhcmd1bWVudHM6e1ZFQ1RPUjp1LkFyZ3VtZW50fSxleHRlbnNpb25zOlsiY29sb3Vyc19tb3Rpb24iXSxmaWx0ZXI6W0IuU1BSSVRFXX0sIi0tLSIsaSh7b3Bjb2RlOiJnZXRTdHJldGNoIix0ZXh0OiJzdHJldGNoIixleHRlbnNpb25zOlsiY29sb3Vyc19sb29rcyJdLGZpbHRlcjpbQi5TUFJJVEVdfSx1LkJsb2NrKSx7b3Bjb2RlOiJzZXRTdHJldGNoIix0ZXh0OiJzZXQgc3RyZXRjaCB0byBbVkVDVE9SXSIsYXJndW1lbnRzOntWRUNUT1I6dS5Bcmd1bWVudH0sZXh0ZW5zaW9uczpbImNvbG91cnNfbG9va3MiXSxmaWx0ZXI6W0IuU1BSSVRFXX0sIi0tLSIsaSh7b3Bjb2RlOiJnZXRNb3VzZSIsdGV4dDoibW91c2UgcG9zaXRpb24iLGV4dGVuc2lvbnM6WyJjb2xvdXJzX3NlbnNpbmciXX0sdS5CbG9jayldLG1lbnVzOntyb3VuZGluZ0Z1bmN0aW9uczp7YWNjZXB0UmVwb3J0ZXJzOiExLGl0ZW1zOlt7dGV4dDoicm91bmQiLHZhbHVlOiJyb3VuZCJ9LHt0ZXh0OiJjZWlsIix2YWx1ZToiY2VpbCJ9LHt0ZXh0OiJmbG9vciIsdmFsdWU6ImZsb29yIn1dfX19fW5ld1ZlY3RvcihBKXtjb25zdCBlPWMudG9OdW1iZXIoQS5YKSx0PWMudG9OdW1iZXIoQS5ZKTtyZXR1cm4gbmV3IFEoZSx0KX1uZXdWZWN0b3JGcm9tTWFnbml0dWRlKEEpe3JldHVybiB0aGlzLnJvdGF0ZSh7VkVDVE9SOm5ldyBRKDAsYy50b051bWJlcihBLlgpKSxBTkdMRTpBLll9KX12ZWN0b3JYKEEpe3JldHVybiBRLnRvVmVjdG9yKEEuVkVDVE9SKS54fXZlY3RvclkoQSl7cmV0dXJuIFEudG9WZWN0b3IoQS5WRUNUT1IpLnl9YWRkKEEpe2NvbnN0IGU9US50b1ZlY3RvcihBLlgpLHQ9US50b1ZlY3RvcihBLlkpO3JldHVybiBuZXcgUShlLngrdC54LGUueSt0LnkpfXN1YnRyYWN0KEEpe2NvbnN0IGU9US50b1ZlY3RvcihBLlgpLHQ9US50b1ZlY3RvcihBLlkpO3JldHVybiBuZXcgUShlLngtdC54LGUueS10LnkpfW11bHRpcGx5QShBKXtjb25zdCBlPVEudG9WZWN0b3IoQS5YKSx0PWMudG9OdW1iZXIoQS5ZKTtyZXR1cm4gbmV3IFEoZS54KnQsZS55KnQpfW11bHRpcGx5QihBKXtjb25zdCBlPVEudG9WZWN0b3IoQS5YKSx0PVEudG9WZWN0b3IoQS5ZKTtyZXR1cm4gbmV3IFEoZS54KnQueCxlLnkqdC55KX1kaXZpZGVBKEEpe2NvbnN0IGU9US50b1ZlY3RvcihBLlgpLHQ9Yy50b051bWJlcihBLlkpO3JldHVybiBuZXcgUShlLngvdCxlLnkvdCl9ZGl2aWRlQihBKXtjb25zdCBlPVEudG9WZWN0b3IoQS5YKSx0PVEudG9WZWN0b3IoQS5ZKTtyZXR1cm4gbmV3IFEoZS54L3QueCxlLnkvdC55KX1tYWduaXR1ZGUoQSl7cmV0dXJuIFEudG9WZWN0b3IoQS5WRUNUT1IpLm1hZ25pdHVkZX1hbmdsZShBKXtyZXR1cm4gUS50b1ZlY3RvcihBLlZFQ1RPUikuYW5nbGV9bm9ybWFsaXplKEEpe2NvbnN0IGU9US50b1ZlY3RvcihBLlZFQ1RPUik7cmV0dXJuIG5ldyBRKGUueC9lLm1hZ25pdHVkZSxlLnkvZS5tYWduaXR1ZGUpfWFic29sdXRlKEEpe2NvbnN0IGU9US50b1ZlY3RvcihBLlZFQ1RPUik7cmV0dXJuIG5ldyBRKE1hdGguYWJzKGUueCksTWF0aC5hYnMoZS55KSl9cm90YXRlKEEpe2NvbnN0IGU9US50b1ZlY3RvcihBLlZFQ1RPUiksdD1jLnRvTnVtYmVyKEEuQU5HTEUpLzE4MCotTWF0aC5QSSxuPU1hdGguY29zKHQpLGk9TWF0aC5zaW4odCk7cmV0dXJuIG5ldyBRKGUueCpuLWUueSppLGUueCppK2UueSpuKX1yb3VuZChBKXtjb25zdCBlPVEudG9WZWN0b3IoQS5WRUNUT1IpO3N3aXRjaChjLnRvU3RyaW5nKEEuUk9VTkRJTkcpKXtjYXNlImZsb29yIjpyZXR1cm4gbmV3IFEoTWF0aC5mbG9vcihlLngpLE1hdGguZmxvb3IoZS55KSk7Y2FzZSJjZWlsIjpyZXR1cm4gbmV3IFEoTWF0aC5jZWlsKGUueCksTWF0aC5jZWlsKGUueSkpfXJldHVybiBuZXcgUShNYXRoLnJvdW5kKGUueCksTWF0aC5yb3VuZChlLnkpKX1nZXRQb3MoQSxlKXtsZXR7fT1BO3JldHVybiBuZXcgdS5UeXBlKGUudGFyZ2V0LngsZS50YXJnZXQueSl9c2V0UG9zKEEsZSl7bGV0e1ZFQ1RPUjp0fT1BO3Q9dS5UeXBlLnRvVmVjdG9yKHQpLGUudGFyZ2V0LnNldFhZKHQueCx0LnkpfWdldFN0cmV0Y2goQSxlKXtsZXR7fT1BO3JldHVybiBuZXcgdS5UeXBlKC4uLmUudGFyZ2V0LnN0cmV0Y2gpfXNldFN0cmV0Y2goQSxlKXtsZXR7VkVDVE9SOnR9PUE7dD11LlR5cGUudG9WZWN0b3IodCksZS50YXJnZXQuc2V0U3RyZXRjaCh0LngsdC55KX1nZXRNb3VzZShBLGUpe2xldHt9PUE7cmV0dXJuIG5ldyB1LlR5cGUodm0ucnVudGltZS5pb0RldmljZXMubW91c2UuZ2V0U2NyYXRjaFgoKSx2bS5ydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRTY3JhdGNoWSgpKX19fSxmdW5jdGlvbihBLGUsdCl7ZnVuY3Rpb24gbihBLGUpe3ZhciB0PU9iamVjdC5rZXlzKEEpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSkuZW51bWVyYWJsZX0pKSksdC5wdXNoLmFwcGx5KHQsbil9cmV0dXJuIHR9ZnVuY3Rpb24gaShBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgdD1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9uKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cihBLGUsdFtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0KSk6bihPYmplY3QodCkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpKX0pKX1yZXR1cm4gQX1mdW5jdGlvbiByKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3Qgbz10KDEpLHM9dCgxMCksYT10KDMpLEI9dCgyKTtmdW5jdGlvbiBjKEEpe3JldHVybiBBPj0xZTY/QS50b0V4cG9uZW50aWFsKDQpOihBPU1hdGguZmxvb3IoMWUzKkEpLzFlMykudG9GaXhlZChNYXRoLm1pbigzLChTdHJpbmcoQSkuc3BsaXQoIi4iKVsxXXx8IiIpLmxlbmd0aCkpfWZ1bmN0aW9uIGcoQSl7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KE1hdGguZmxvb3IoQSksMCksMioqMzItMSl9ZnVuY3Rpb24gRShBKXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPUEsZS5zdHlsZS5kaXNwbGF5PSJoaWRkZW4iLGUuc3R5bGUud2hpdGVTcGFjZT0ibm93cmFwIixlLnN0eWxlLndpZHRoPSIxMDAlIixlLnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIixlfWZ1bmN0aW9uIFEoQSl7Y29uc3QgZT1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmcsdD0vXmNsYXNzXHMvO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBBKXJldHVybiF0LnRlc3QoZS5jYWxsKEEpKTtpZihudWxsIT09QSYmIm9iamVjdCI9PXR5cGVvZiBBKXtjb25zdCBuPUEuY29uc3RydWN0b3I7cmV0dXJuISgiZnVuY3Rpb24iPT10eXBlb2YgbiYmdC50ZXN0KGUuY2FsbChuKSkpfXJldHVybiExfWNsYXNzIHV7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06W10sZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXSYmYXJndW1lbnRzWzFdO3IodGhpcywiY3VzdG9tSWQiLCJqd0FycmF5Iikscih0aGlzLCJhcnJheSIsW10pLHIodGhpcywidG9Nb25pdG9yQ29udGVudCIsKCk9PkUodGhpcy50b1N0cmluZygpKSksdGhpcy5hcnJheT1lP0E6QS5tYXAoQT0+QSBpbnN0YW5jZW9mIEFycmF5P25ldyB1KFsuLi5BXSk6QSl9c3RhdGljIHRvQXJyYXkoQSl7aWYoQSBpbnN0YW5jZW9mIHUpcmV0dXJuIG5ldyB1KFsuLi5BLmFycmF5XSwhMCk7aWYoQSBpbnN0YW5jZW9mIEFycmF5KXJldHVybiBuZXcgdShbLi4uQV0pO2lmKCIiPT09QXx8bnVsbD09QSlyZXR1cm4gbmV3IHUoW10sITApO2lmKCJvYmplY3QiPT10eXBlb2YgQSYmImZ1bmN0aW9uIj09dHlwZW9mIEEudG9KU09OKXtsZXQgZT1BLnRvSlNPTigpO3JldHVybiBlIGluc3RhbmNlb2YgQXJyYXk/bmV3IHUoZSk6UShlKT9uZXcgdShPYmplY3QudmFsdWVzKGUpKTpuZXcgdShbZV0pfXRyeXtsZXQgZT1KU09OLnBhcnNlKEEpO2lmKGUgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4gbmV3IHUoZSl9Y2F0Y2goQSl7fXJldHVybiBuZXcgdShbQV0pfXN0YXRpYyBmb3JBcnJheShBKXtyZXR1cm4gQSBpbnN0YW5jZW9mIHU/bmV3IHUoWy4uLkEuYXJyYXldKTpBIGluc3RhbmNlb2YgQXJyYXk/bmV3IHUoWy4uLkFdKTp2bS5kb2dlaXNjdXRPYmplY3QmJlEoQSk/bmV3IHZtLmRvZ2Vpc2N1dE9iamVjdC5UeXBlKGkoe30sQSkpOkF9c3RhdGljIGRpc3BsYXkoQSl7dHJ5e3N3aXRjaCh0eXBlb2YgQSl7Y2FzZSJvYmplY3QiOnJldHVybiBudWxsPT09QT8ibnVsbCI6ImZ1bmN0aW9uIj09dHlwZW9mIEEuandBcnJheUhhbmRsZXI/QS5qd0FycmF5SGFuZGxlcigpOiJPYmplY3QiO2Nhc2UidW5kZWZpbmVkIjpyZXR1cm4ibnVsbCI7Y2FzZSJudW1iZXIiOnJldHVybiBjKEEpO2Nhc2UiYm9vbGVhbiI6cmV0dXJuIEE/InRydWUiOiJmYWxzZSI7Y2FzZSJzdHJpbmciOnJldHVybiciJy5jb25jYXQoQi50b1N0cmluZyhBKS5yZXBsYWNlQWxsKCImIiwiJmFtcDsiKS5yZXBsYWNlQWxsKCI8IiwiJmx0OyIpLnJlcGxhY2VBbGwoIj4iLCImZ3Q7IikucmVwbGFjZUFsbCgnIicsIiZxdW90OyIpLnJlcGxhY2VBbGwoIiciLCImIzAzOTsiKSwnIicpfX1jYXRjaChBKXt9cmV0dXJuIj8ifWp3QXJyYXlIYW5kbGVyKCl7cmV0dXJuIkFycmF5PCIuY29uY2F0KGModGhpcy5hcnJheS5sZW5ndGgpLCI+Iil9dG9TdHJpbmcoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXSYmYXJndW1lbnRzWzBdO3JldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLnRvSlNPTigpLG51bGwsQT8iXHQiOm51bGwpfXRvSlNPTigpe3JldHVybiB0aGlzLmFycmF5Lm1hcChBPT4ib2JqZWN0Ij09dHlwZW9mIEEmJm51bGwhPT1BP0EudG9KU09OJiYiZnVuY3Rpb24iPT10eXBlb2YgQS50b0pTT04/QS50b0pTT04oKTpBLnRvU3RyaW5nJiYiZnVuY3Rpb24iPT10eXBlb2YgQS50b1N0cmluZz9BLnRvU3RyaW5nKCk6SlNPTi5zdHJpbmdpZnkoQSk6QSl9dG9SZXBvcnRlckNvbnRlbnQoKXtsZXQgQT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtBLnN0eWxlLmRpc3BsYXk9ImZsZXgiLEEuc3R5bGUuZmxleERpcmVjdGlvbj0iY29sdW1uIixBLnN0eWxlLmp1c3RpZnlDb250ZW50PSJjZW50ZXIiO2xldCBlPUUoIlsiLmNvbmNhdCh0aGlzLmFycmF5LnNsaWNlKDAsNTApLm1hcChBPT51LmRpc3BsYXkoQSkpLmpvaW4oIiwgIiksIl0iKSk7cmV0dXJuIGUuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIsZS5zdHlsZS53aGl0ZVNwYWNlPSJub3dyYXAiLGUuc3R5bGUudGV4dE92ZXJmbG93PSJlbGxpcHNpcyIsZS5zdHlsZS5tYXhXaWR0aD0iMjU2cHgiLEEuYXBwZW5kQ2hpbGQoZSksQS5hcHBlbmRDaGlsZChFKCJMZW5ndGg6ICIuY29uY2F0KHRoaXMuYXJyYXkubGVuZ3RoKSkpLEF9ZmxhdCgpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToxO3JldHVybiBBPU1hdGguZmxvb3IoQSksQTwxP3RoaXM6bmV3IHUodGhpcy5hcnJheS5yZWR1Y2UoKGUsdCk9PnQgaW5zdGFuY2VvZiB1P1suLi5lLC4uLnQuZmxhdChBLTEpLmFycmF5XTpbLi4uZSx0XSxbXSksITApfWdldCBsZW5ndGgoKXtyZXR1cm4gdGhpcy5hcnJheS5sZW5ndGh9fWNvbnN0IGw9e1R5cGU6dSxCbG9jazp7YmxvY2tUeXBlOm8uUkVQT1JURVIsYmxvY2tTaGFwZTpzLlNRVUFSRSxmb3JjZU91dHB1dFR5cGU6IkFycmF5IixkaXNhYmxlTW9uaXRvcjohMH0sQXJndW1lbnQ6e3NoYXBlOnMuU1FVQVJFLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwLGNoZWNrOlsiQXJyYXkiXSxjb21waWxlckluZm86e2p3QXJyYXlVbm1vZGlmaWVkOiEwfX0sY29tcGlsZXJNb2RpZmljYXRpb246ZnVuY3Rpb24qKEEsZSl7cmV0dXJuIGU9aSh7fSxlKSx5aWVsZCpmdW5jdGlvbip0KG4pe2ZvcihsZXRbaSxyXW9mIE9iamVjdC5lbnRyaWVzKG4pKXtpZihyIGluc3RhbmNlb2YgbC5UeXBlKXtjb25zdCB0PXIuYXJyYXk7bGV0IG89W107Zm9yKGxldCByIG9mIHQpbltpXT1yLG8ucHVzaCh5aWVsZCpsLmNvbXBpbGVyTW9kaWZpY2F0aW9uKEEsZSkpO3JldHVybiBsLlR5cGUudG9BcnJheShvKX1pZihyIGluc3RhbmNlb2YgQXJyYXkpcmV0dXJuIHlpZWxkKnQocil9cmV0dXJuIHlpZWxkKkEoZSl9KGUpfX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7aWYodm0uandBcnJheT1sLHZtLnJ1bnRpbWUucmVnaXN0ZXJTZXJpYWxpemVyKCJqd0FycmF5IixBPT5BLmFycmF5Lm1hcChBPT4ib2JqZWN0Ij09dHlwZW9mIEEmJm51bGwhPUEmJkEuY3VzdG9tSWQ/e2N1c3RvbVR5cGU6ITAsdHlwZUlkOkEuY3VzdG9tSWQsc2VyaWFsaXplZDp2bS5ydW50aW1lLnNlcmlhbGl6ZXJzW0EuY3VzdG9tSWRdLnNlcmlhbGl6ZShBKX06QSksQT0+bmV3IGwuVHlwZShBLm1hcChBPT4ib2JqZWN0Ij09dHlwZW9mIEEmJm51bGwhPUEmJkEuY3VzdG9tVHlwZT92bS5ydW50aW1lLnNlcmlhbGl6ZXJzW0EudHlwZUlkXS5kZXNlcmlhbGl6ZShBLnNlcmlhbGl6ZWQpOkEpLCEwKSksdm0ucnVudGltZS5yZWdpc3RlckNvbXBpbGVkRXh0ZW5zaW9uQmxvY2tzKCJqd0FycmF5Iix0aGlzLmdldENvbXBpbGVJbmZvKCkpLHZtLmZsYWdzJiYxPT12bS5mbGFncy5qd0FycmF5Q29tcGlsZXJNb2RpZmljYXRpb25zKXtjb25zdCBuPUE9PiJvYmplY3QiPT10eXBlb2YgQSYmbnVsbCE9PUEmJiEoQSBpbnN0YW5jZW9mIEFycmF5KSYmQS5raW5kJiYic3RyaW5nIj09dHlwZW9mIEEua2luZCYmIShBLmNvbXBpbGVySW5mbyYmQS5jb21waWxlckluZm8uandBcnJheVVubW9kaWZpZWQpO2Z1bmN0aW9uIEEoQSxuKXtsZXQgaT1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06W107cmV0dXJuIEEgaW5zdGFuY2VvZiBBcnJheT90KEEsbixpKTplKEEsbixpKX1mdW5jdGlvbiBlKGUsdCxpKXtjb25zdCByPWZ1bmN0aW9uKCl7dHJ5e2Zvcih2YXIgQT1hcmd1bWVudHMubGVuZ3RoLGU9bmV3IEFycmF5KEEpLG49MDtuPEE7bisrKWVbbl09YXJndW1lbnRzW25dO3JldHVybiB2bS5leHBvcnRzLkpTR2VuZXJhdG9yLnByb3RvdHlwZS5kZXNjZW5kSW5wdXQuY2FsbCh0LC4uLmUpLmFzVW5rbm93bigpfWNhdGNoKEEpe319LG89T2JqZWN0LmZyb21FbnRyaWVzKE9iamVjdC5lbnRyaWVzKGUpLmZpbHRlcihBPT4ib2JqZWN0Ij09dHlwZW9mIEFbMV0mJm51bGwhPT1BWzFdKS5tYXAoQT0+W0FbMF0sbihBWzFdKSYmcihBWzFdKV0pKTtyZXR1cm5bInsiK09iamVjdC5lbnRyaWVzKGUpLmZpbHRlcihBPT4ib2JqZWN0Ij09dHlwZW9mIEFbMV0mJm51bGwhPT1BWzFdKS5tYXAocj0+e2xldCBzO2lmKG9bclswXV0pcz1vW3JbMF1dO2Vsc2UgaWYoIW4oclsxXSkpe2xldCBuPUEoclsxXSx0LFsuLi5pLHJbMF1dKTtzPW5bMF0sZVtyWzBdXT1uWzFdfXJldHVybiIiLmNvbmNhdChKU09OLnN0cmluZ2lmeShyWzBdKSwiOiAiKS5jb25jYXQocyl9KS5qb2luKCIsICIpKyJ9IixPYmplY3QuZnJvbUVudHJpZXMoT2JqZWN0LmVudHJpZXMoZSkubWFwKEE9PltBWzBdLG9bQVswXV0/WyJub2RlIiwuLi5pLEFbMF1dLmpvaW4oIi4iKTpBWzFdXSkpXX1mdW5jdGlvbiB0KEEsZSx0KXtjb25zdCBpPWZ1bmN0aW9uKCl7dHJ5e2Zvcih2YXIgQT1hcmd1bWVudHMubGVuZ3RoLHQ9bmV3IEFycmF5KEEpLG49MDtuPEE7bisrKXRbbl09YXJndW1lbnRzW25dO3JldHVybiB2bS5leHBvcnRzLkpTR2VuZXJhdG9yLnByb3RvdHlwZS5kZXNjZW5kSW5wdXQuY2FsbChlLC4uLnQpLmFzVW5rbm93bigpfWNhdGNoKEEpe319LHI9QS5maWx0ZXIoQT0+bihBKSksbz1PYmplY3QuZnJvbUVudHJpZXMoci5tYXAoKEEsZSk9PltlLGkoQSldKSk7cmV0dXJuWyJbIityLm1hcCgoQSxlKT0+e3ZhciB0O3JldHVybiBudWxsIT09KHQ9b1tlXSkmJnZvaWQgMCE9PXQ/dDoibnVsbCJ9KS5qb2luKCIsICIpKyJdIixyLm1hcCgoQSxlKT0+b1tlXT9bIm5vZGUiLC4uLnRdLmpvaW4oIi4iKSsiWyIuY29uY2F0KGUsIl0iKTpBKV19Y29uc3QgaT12bS5leHBvcnRzLkpTR2VuZXJhdG9yLnByb3RvdHlwZS5kZXNjZW5kSW5wdXQ7dm0uZXhwb3J0cy5KU0dlbmVyYXRvci5wcm90b3R5cGUuZGVzY2VuZElucHV0PWZ1bmN0aW9uKGUsdCl7Y29uc3Qgbj12bS5leHBvcnRzLkpTR2VuZXJhdG9yLmdldEV4dGVuc2lvbkltcG9ydHMoKS5UeXBlZElucHV0O2lmKCJzdHJpbmciPT10eXBlb2YgZSYmZS5zdGFydHNXaXRoKCJub2RlLiIpKXJldHVybiBuZXcgbihlLHZtLmV4cG9ydHMuSlNHZW5lcmF0b3IuZ2V0RXh0ZW5zaW9uSW1wb3J0cygpLlRZUEVfVU5LTk9XTik7aWYoZS5jb21waWxlckluZm8mJiEwPT09ZS5jb21waWxlckluZm8uandBcnJheVVubW9kaWZpZWQpcmV0dXJuIGkuY2FsbCh0aGlzLGUsdCk7bGV0IHI9QShzdHJ1Y3R1cmVkQ2xvbmUoZSksdGhpcyksbz1yWzBdLHM9aS5jYWxsKHRoaXMsclsxXSx0KTtyZXR1cm4gcyBpbnN0YW5jZW9mIG4/bmV3IG4oIih5aWVsZCogdm0uandBcnJheS5jb21waWxlck1vZGlmaWNhdGlvbihmdW5jdGlvbioobm9kZSl7cmV0dXJuICIuY29uY2F0KHMuc291cmNlLCJ9LCAiKS5jb25jYXQobywiKSkiKSxzLnR5cGUpOnN9O2NvbnN0IHI9dm0uZXhwb3J0cy5KU0dlbmVyYXRvci5wcm90b3R5cGUuZGVzY2VuZFN0YWNrZWRCbG9jazt2bS5leHBvcnRzLkpTR2VuZXJhdG9yLnByb3RvdHlwZS5kZXNjZW5kU3RhY2tlZEJsb2NrPWZ1bmN0aW9uKGUpe2lmKCJ2aXN1YWxSZXBvcnQiPT09ZS5raW5kKXJldHVybiByLmNhbGwodGhpcyxlKTtpZihlLmNvbXBpbGVySW5mbyYmITA9PT1lLmNvbXBpbGVySW5mby5qd0FycmF5VW5tb2RpZmllZClyZXR1cm4gci5jYWxsKHRoaXMsZSk7Y29uc3QgdD10aGlzLnNvdXJjZTt0aGlzLnNvdXJjZT0iIjtsZXQgbj1BKHN0cnVjdHVyZWRDbG9uZShlKSx0aGlzKSxpPW5bMF07ci5jYWxsKHRoaXMsblsxXSksdGhpcy5zb3VyY2U9dCsieWllbGQqIHZtLmp3QXJyYXkuY29tcGlsZXJNb2RpZmljYXRpb24oZnVuY3Rpb24qKG5vZGUpeyIuY29uY2F0KHRoaXMuc291cmNlLCJ9LCAiKS5jb25jYXQoaSwiKTtcbiIpfX19Z2V0SW5mbygpe3JldHVybntpZDoiandBcnJheSIsbmFtZToiQXJyYXlzIixjb2xvcjE6IiNmZjUxM2QiLG1lbnVJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeU1DQXlNQ0lnZUcxc2JuTTZZbmc5SW1oMGRIQnpPaTh2WW05NGVTMXpkbWN1WTI5dElqNEtJQ0E4WTJseVkyeGxJSE4wZVd4bFBTSnpkSEp2YTJVdGQybGtkR2c2SURKd2VEc2djR0ZwYm5RdGIzSmtaWEk2SUhOMGNtOXJaVHNnWm1sc2JEb2djbWRpS0RJMU5Td2dPREVzSURZeEtUc2djM1J5YjJ0bE9pQnlaMklvTWpBMUxDQTFPU3dnTkRRcE95SWdZM2c5SWpFd0lpQmplVDBpTVRBaUlISTlJamtpUGp3dlkybHlZMnhsUGdvZ0lEeHdZWFJvSUdROUlrMGdPQzR3TnpNZ05DNHlNaUJNSURZdU1UUTNJRFF1TWpJZ1F5QTFMakE0TXlBMExqSXlJRFF1TWpJZ05TNHdPRE1nTkM0eU1pQTJMakUwTnlCTUlEUXVNaklnTVRNdU9EVXpJRU1nTkM0eU1pQXhOQzQ1TVRrZ05TNHdPRE1nTVRVdU56Z2dOaTR4TkRjZ01UVXVOemdnVENBNExqQTNNeUF4TlM0M09DQk1JRGd1TURjeklERXpMamcxTXlCTUlEWXVNVFEzSURFekxqZzFNeUJNSURZdU1UUTNJRFl1TVRRM0lFd2dPQzR3TnpNZ05pNHhORGNnVENBNExqQTNNeUEwTGpJeUlGb2dUU0F4TVM0NU1qY2dNVE11T0RVeklFd2dNVE11T0RVeklERXpMamcxTXlCTUlERXpMamcxTXlBMkxqRTBOeUJNSURFeExqa3lOeUEyTGpFME55Qk1JREV4TGpreU55QTBMakl5SUV3Z01UTXVPRFV6SURRdU1qSWdReUF4TkM0NU1UY2dOQzR5TWlBeE5TNDNPQ0ExTGpBNE15QXhOUzQzT0NBMkxqRTBOeUJNSURFMUxqYzRJREV6TGpnMU15QkRJREUxTGpjNElERTBMamt4T1NBeE5DNDVNVGNnTVRVdU56Z2dNVE11T0RVeklERTFMamM0SUV3Z01URXVPVEkzSURFMUxqYzRJRXdnTVRFdU9USTNJREV6TGpnMU15QmFJaUJtYVd4c1BTSWpabVptSWlCemRIbHNaVDBpSWo0OEwzQmhkR2crQ2p3dmMzWm5QZz09IixibG9ja3M6W2koe29wY29kZToiYmxhbmsiLHRleHQ6ImJsYW5rIGFycmF5In0sbC5CbG9jayksaSh7b3Bjb2RlOiJibGFua0xlbmd0aCIsdGV4dDoiYmxhbmsgYXJyYXkgb2YgbGVuZ3RoIFtMRU5HVEhdIixhcmd1bWVudHM6e0xFTkdUSDp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSxsLkJsb2NrKSxpKHtvcGNvZGU6ImZyb21MaXN0Iix0ZXh0OiJhcnJheSBmcm9tIGxpc3QgW0xJU1RdIixhcmd1bWVudHM6e0xJU1Q6e21lbnU6Imxpc3QifX0saGlkZUZyb21QYWxldHRlOiEwfSxsLkJsb2NrKSxpKHtvcGNvZGU6InBhcnNlIix0ZXh0OiJwYXJzZSBbSU5QVVRdIGFzIGFycmF5Iixhcmd1bWVudHM6e0lOUFVUOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZTonWyJhIiwgImIiLCAiYyJdJyxleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMCxjb21waWxlckluZm86e2p3QXJyYXlVbm1vZGlmaWVkOiEwfX19fSxsLkJsb2NrKSxpKHtvcGNvZGU6InNwbGl0Iix0ZXh0OiJzcGxpdCBbU1RSSU5HXSBieSBbRElWSURFUl0iLGFyZ3VtZW50czp7U1RSSU5HOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZm9vIn0sRElWSURFUjp7dHlwZTphLlNUUklOR319fSxsLkJsb2NrKSwiLS0tIixpKHtvcGNvZGU6ImJ1aWxkZXIiLHRleHQ6ImFycmF5IGJ1aWxkZXIgW1NIQURPV10iLGJyYW5jaGVzOlt7fV0sYXJndW1lbnRzOntTSEFET1c6e2ZpbGxJbjoiYnVpbGRlckN1cnJlbnQifX19LGwuQmxvY2spLGkoe29wY29kZToiYnVpbGRlckN1cnJlbnQiLHRleHQ6ImN1cnJlbnQgYXJyYXkiLGhpZGVGcm9tUGFsZXR0ZTohMCxjYW5EcmFnRHVwbGljYXRlOiEwfSxsLkJsb2NrKSx7b3Bjb2RlOiJidWlsZGVyQXBwZW5kIix0ZXh0OiJhcHBlbmQgW1ZBTFVFXSB0byBidWlsZGVyIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7VkFMVUU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJmb28iLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwLGNvbXBpbGVySW5mbzp7andBcnJheVVubW9kaWZpZWQ6ITB9fX19LHtvcGNvZGU6ImJ1aWxkZXJTZXQiLHRleHQ6InNldCBidWlsZGVyIHRvIFtBUlJBWV0iLGJsb2NrVHlwZTpvLkNPTU1BTkQsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50fX0sIi0tLSIse29wY29kZToiZ2V0Iix0ZXh0OiJnZXQgW0lOREVYXSBpbiBbQVJSQVldIixibG9ja1R5cGU6by5SRVBPUlRFUixhbGxvd0Ryb3BBbnl3aGVyZTohMCxhcmd1bWVudHM6e0FSUkFZOmwuQXJndW1lbnQsSU5ERVg6e3R5cGU6YS5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9fX0saSh7b3Bjb2RlOiJpdGVtcyIsdGV4dDoiaXRlbXMgW1hdIHRvIFtZXSBpbiBbQVJSQVldIixhcmd1bWVudHM6e0FSUkFZOmwuQXJndW1lbnQsWDp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX0sWTp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6M319fSxsLkJsb2NrKSx7b3Bjb2RlOiJpbmRleCIsdGV4dDoiaW5kZXggb2YgW1ZBTFVFXSBpbiBbQVJSQVldIixibG9ja1R5cGU6by5SRVBPUlRFUixhcmd1bWVudHM6e0FSUkFZOmwuQXJndW1lbnQsVkFMVUU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJmb28iLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwLGNvbXBpbGVySW5mbzp7andBcnJheVVubW9kaWZpZWQ6ITB9fX19LHtvcGNvZGU6ImhhcyIsdGV4dDoiW0FSUkFZXSBoYXMgW1ZBTFVFXSIsYmxvY2tUeXBlOm8uQk9PTEVBTixhcmd1bWVudHM6e0FSUkFZOmwuQXJndW1lbnQsVkFMVUU6e3R5cGU6YS5TVFJJTkcsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITAsY29tcGlsZXJJbmZvOntqd0FycmF5VW5tb2RpZmllZDohMH19fX0se29wY29kZToibGVuZ3RoIix0ZXh0OiJsZW5ndGggb2YgW0FSUkFZXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50fX0sIi0tLSIsaSh7b3Bjb2RlOiJzZXQiLHRleHQ6InNldCBbSU5ERVhdIGluIFtBUlJBWV0gdG8gW1ZBTFVFXSIsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50LElOREVYOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxWQUxVRTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6ImZvbyIsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITAsY29tcGlsZXJJbmZvOntqd0FycmF5VW5tb2RpZmllZDohMH19fX0sbC5CbG9jayksaSh7b3Bjb2RlOiJhcHBlbmQiLHRleHQ6ImFwcGVuZCBbVkFMVUVdIHRvIFtBUlJBWV0iLGFyZ3VtZW50czp7QVJSQVk6bC5Bcmd1bWVudCxWQUxVRTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6ImZvbyIsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITAsY29tcGlsZXJJbmZvOntqd0FycmF5VW5tb2RpZmllZDohMH19fX0sbC5CbG9jayksaSh7b3Bjb2RlOiJjb25jYXQiLHRleHQ6Im1lcmdlIFtPTkVdIHdpdGggW1RXT10iLGFyZ3VtZW50czp7T05FOmwuQXJndW1lbnQsVFdPOmwuQXJndW1lbnR9fSxsLkJsb2NrKSxpKHtvcGNvZGU6ImZpbGwiLHRleHQ6ImZpbGwgW0FSUkFZXSB3aXRoIFtWQUxVRV0iLGFyZ3VtZW50czp7QVJSQVk6bC5Bcmd1bWVudCxWQUxVRTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6ImZvbyIsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITAsY29tcGlsZXJJbmZvOntqd0FycmF5VW5tb2RpZmllZDohMH19fX0sbC5CbG9jayksIi0tLSIsaSh7b3Bjb2RlOiJyZXZlcnNlIix0ZXh0OiJyZXZlcnNlIFtBUlJBWV0iLGFyZ3VtZW50czp7QVJSQVk6bC5Bcmd1bWVudH19LGwuQmxvY2spLGkoe29wY29kZToic3BsaWNlIix0ZXh0OiJzcGxpY2UgW0FSUkFZXSBhdCBbSU5ERVhdIHdpdGggW0lURU1TXSBpdGVtcyIsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50LElOREVYOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfSxJVEVNUzp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSxsLkJsb2NrKSxpKHtvcGNvZGU6InJlcGVhdCIsdGV4dDoicmVwZWF0IFtBUlJBWV0gW1RJTUVTXSB0aW1lcyIsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50LFRJTUVTOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZToyfX19LGwuQmxvY2spLGkoe29wY29kZToiZmxhdCIsdGV4dDoiZmxhdCBbQVJSQVldIHdpdGggZGVwdGggW0RFUFRIXSIsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50LERFUFRIOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZToxfX19LGwuQmxvY2spLCItLS0iLHtvcGNvZGU6InRvU3RyaW5nIix0ZXh0OiJzdHJpbmdpZnkgW0FSUkFZXSBbRk9STUFUXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50LEZPUk1BVDp7bWVudToic3RyaW5naWZ5Rm9ybWF0IixkZWZhdWx0VmFsdWU6ImNvbXBhY3QifX19LHtvcGNvZGU6ImpvaW4iLHRleHQ6ImpvaW4gW0FSUkFZXSB3aXRoIFtESVZJREVSXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50LERJVklERVI6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiIifX19LHtvcGNvZGU6InN1bSIsdGV4dDoic3VtIG9mIFtBUlJBWV0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7QVJSQVk6bC5Bcmd1bWVudH19LCItLS0iLHtvcGNvZGU6ImZvckVhY2hJIix0ZXh0OiJpbmRleCIsYmxvY2tUeXBlOm8uUkVQT1JURVIsaGlkZUZyb21QYWxldHRlOiEwLGNhbkRyYWdEdXBsaWNhdGU6ITB9LHtvcGNvZGU6ImZvckVhY2hWIix0ZXh0OiJ2YWx1ZSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsaGlkZUZyb21QYWxldHRlOiEwLGFsbG93RHJvcEFueXdoZXJlOiEwLGNhbkRyYWdEdXBsaWNhdGU6ITB9LHtvcGNvZGU6ImZvckVhY2giLHRleHQ6ImZvciBbSV0gW1ZdIG9mIFtBUlJBWV0iLGJsb2NrVHlwZTpvLkxPT1AsYXJndW1lbnRzOntBUlJBWTpsLkFyZ3VtZW50LEk6e2ZpbGxJbjoiZm9yRWFjaEkifSxWOntmaWxsSW46ImZvckVhY2hWIn19fSxpKHtvcGNvZGU6ImJhc2ljU29ydCIsdGV4dDoic29ydCBbQVJSQVldIFtJXSBbVl0gPiBbVkFMVUVdIixhcmd1bWVudHM6e0FSUkFZOmwuQXJndW1lbnQsSTp7ZmlsbEluOiJmb3JFYWNoSSJ9LFY6e2ZpbGxJbjoiZm9yRWFjaFYifSxWQUxVRTp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSxsLkJsb2NrKV0sbWVudXM6e2xpc3Q6e2FjY2VwdFJlcG9ydGVyczohMSx2YXJpYWJsZVR5cGU6Imxpc3QifSxzdHJpbmdpZnlGb3JtYXQ6e2FjY2VwdFJlcG9ydGVyczohMSxpdGVtczpbImNvbXBhY3QiLCJwcmV0dHkiXX19fX1nZXRDb21waWxlSW5mbygpe3JldHVybntpcjp7YnVpbGRlcjooQSxlKT0+KEEuc2NyaXB0LnlpZWxkcz0hMCx7a2luZDoiaW5wdXQiLHN1YnN0YWNrOkEuZGVzY2VuZFN1YnN0YWNrKGUsIlNVQlNUQUNLIil9KSxmb3JFYWNoOihBLGUpPT4oQS5zY3JpcHQueWllbGRzPSEwLHtraW5kOiJzdGFjayIsc3Vic3RhY2s6QS5kZXNjZW5kU3Vic3RhY2soZSwiU1VCU1RBQ0siKSxhcnJheTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQVJSQVkiKX0pLGJhc2ljU29ydDooQSxlKT0+KEEuc2NyaXB0LnlpZWxkcz0hMCx7a2luZDoiaW5wdXQiLGFycmF5OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJBUlJBWSIpLHZhbHVlOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJWQUxVRSIpfSl9LGpzOntidWlsZGVyOihBLGUsdCk9Pntjb25zdCBuPWUuc291cmNlO2Uuc291cmNlPSJ2bS5qd0FycmF5LlR5cGUudG9BcnJheSh5aWVsZCogKGZ1bmN0aW9uKigpIHsiLGUuc291cmNlKz0idGhyZWFkLl9qd0FycmF5QnVpbGRlckluZGV4ID8/PSBbXTsiLGUuc291cmNlKz0idGhyZWFkLl9qd0FycmF5QnVpbGRlckluZGV4LnB1c2goW10pOyIsZS5kZXNjZW5kU3RhY2soQS5zdWJzdGFjayxuZXcgdC5GcmFtZSghMSx2b2lkIDAsITApKSxlLnNvdXJjZSs9InJldHVybiB0aHJlYWQuX2p3QXJyYXlCdWlsZGVySW5kZXgucG9wKCk7IixlLnNvdXJjZSs9In0pKCkpIjtjb25zdCBpPWUuc291cmNlO3JldHVybiBlLnNvdXJjZT1uLG5ldyB0LlR5cGVkSW5wdXQoaSx0LlRZUEVfVU5LTk9XTil9LGZvckVhY2g6KEEsZSx0KT0+e2NvbnN0IG49ZS5sb2NhbFZhcmlhYmxlcy5uZXh0KCk7ZS5zb3VyY2UrPSJsZXQgIi5jb25jYXQobiwiID0gdm0uandBcnJheS5UeXBlLnRvQXJyYXkoIikuY29uY2F0KGUuZGVzY2VuZElucHV0KEEuYXJyYXkpLmFzVW5rbm93bigpLCIpLmFycmF5O1xuIiksZS5zb3VyY2UrPSJ0aHJlYWQuX2p3QXJyYXlGb3JFYWNoID8/PSBbXTtcbiI7Y29uc3QgaT1lLmxvY2FsVmFyaWFibGVzLm5leHQoKTtlLnNvdXJjZSs9ImxldCAiLmNvbmNhdChpLCIgPSB0aHJlYWQuX2p3QXJyYXlGb3JFYWNoLnB1c2goW10pIC0gMTtcbiIpO2NvbnN0IHI9ZS5sb2NhbFZhcmlhYmxlcy5uZXh0KCksbz1lLmxvY2FsVmFyaWFibGVzLm5leHQoKTtlLnNvdXJjZSs9ImxldCAiLmNvbmNhdChvLCIgPSB5aWVsZCogKGZ1bmN0aW9uKiAoKSB7Zm9yIChsZXQgIikuY29uY2F0KHIsIiBpbiAiKS5jb25jYXQobiwiKSB7XG4iKSxlLnNvdXJjZSs9InRocmVhZC5fandBcnJheUZvckVhY2hbIi5jb25jYXQoaSwiXSA9IFtOdW1iZXIoIikuY29uY2F0KHIsIikgKyAxLCAiKS5jb25jYXQobiwiWyIpLmNvbmNhdChyLCJdXTtcbiIpLGUuZGVzY2VuZFN0YWNrKEEuc3Vic3RhY2ssbmV3IHQuRnJhbWUoITAsdm9pZCAwLCEwKSksZS55aWVsZExvb3AoKSxlLnNvdXJjZSs9In19KSgpO1xuIixlLnNvdXJjZSs9InRocmVhZC5fandBcnJheUZvckVhY2gucG9wKCk7XG4iLGUuc291cmNlKz0iaWYgKCIuY29uY2F0KG8sIiAhPT0gdW5kZWZpbmVkKSB7XG4iKSxlLnNvdXJjZSs9InJldHVybiAiLmNvbmNhdChvLCI7XG4iKSxlLnNvdXJjZSs9In07XG4ifSxiYXNpY1NvcnQ6KEEsZSx0KT0+e2NvbnN0IG49ZS5zb3VyY2U7ZS5zb3VyY2U9Iih5aWVsZCogKGZ1bmN0aW9uKigpIHsiLGUuc291cmNlKz0idGhyZWFkLl9qd0FycmF5Rm9yRWFjaCA/Pz0gW107XG4iO2NvbnN0IGk9ZS5sb2NhbFZhcmlhYmxlcy5uZXh0KCk7ZS5zb3VyY2UrPSJsZXQgIi5jb25jYXQoaSwiID0gdGhyZWFkLl9qd0FycmF5Rm9yRWFjaC5wdXNoKFtdKSAtIDE7XG4iKTtjb25zdCByPWUubG9jYWxWYXJpYWJsZXMubmV4dCgpLG89ZS5sb2NhbFZhcmlhYmxlcy5uZXh0KCk7ZS5zb3VyY2UrPSJsZXQgIi5jb25jYXQociwiID0gdm0uandBcnJheS5UeXBlLnRvQXJyYXkoIikuY29uY2F0KGUuZGVzY2VuZElucHV0KEEuYXJyYXkpLmFzVW5rbm93bigpLCIpLmFycmF5O1xuIiksZS5zb3VyY2UrPSJsZXQgIi5jb25jYXQobywiID0gW107XG4iKTtjb25zdCBzPWUubG9jYWxWYXJpYWJsZXMubmV4dCgpO2Uuc291cmNlKz0iZm9yIChsZXQgIi5jb25jYXQocywiID0gMDsgIikuY29uY2F0KHMsIiA8ICIpLmNvbmNhdChyLCIubGVuZ3RoOyAiKS5jb25jYXQocywiKyspIHtcbiIpLGUuc291cmNlKz0idGhyZWFkLl9qd0FycmF5Rm9yRWFjaFsiLmNvbmNhdChpLCJdID0gWyIpLmNvbmNhdChzLCIgKyAxLCAiKS5jb25jYXQociwiWyIpLmNvbmNhdChzLCJdXTtcbiIpLGUuc291cmNlKz0iIi5jb25jYXQobywiLnB1c2goWyIpLmNvbmNhdChzLCIsICIpLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLnZhbHVlKS5hc051bWJlcigpLCJdKTtcbiIpLGUuc291cmNlKz0ifTtcbiIsZS5zb3VyY2UrPSJ0aHJlYWQuX2p3QXJyYXlGb3JFYWNoLnBvcCgpO1xuIixlLnNvdXJjZSs9IiIuY29uY2F0KG8sIi5zb3J0KChhLCBiKSA9PiBhWzFdIC0gYlsxXSk7XG4iKSxlLnNvdXJjZSs9InJldHVybiBuZXcgdm0uandBcnJheS5UeXBlKCIuY29uY2F0KG8sIi5tYXAodiA9PiAiKS5jb25jYXQociwiW3ZbMF1dKSk7XG4iKSxlLnNvdXJjZSs9In0pKCkpIjtjb25zdCBhPWUuc291cmNlO3JldHVybiBlLnNvdXJjZT1uLG5ldyB0LlR5cGVkSW5wdXQoYSx0LlRZUEVfVU5LTk9XTil9fX19YmxhbmsoKXtyZXR1cm4gbmV3IGwuVHlwZShbXSwhMCl9YmxhbmtMZW5ndGgoQSl7bGV0e0xFTkdUSDplfT1BO3JldHVybiBlPWcoQi50b051bWJlcihlKSksbmV3IGwuVHlwZShBcnJheShlKS5maWxsKG51bGwpLCEwKX1mcm9tTGlzdChBKXtsZXR7TElTVDplfT1BO3JldHVybiBsLlR5cGUudG9BcnJheShlKX1wYXJzZShBKXtsZXR7SU5QVVQ6ZX09QTtyZXR1cm4gbC5UeXBlLnRvQXJyYXkoZSl9c3BsaXQoQSl7bGV0e1NUUklORzplLERJVklERVI6dH09QTtyZXR1cm4gZT1CLnRvU3RyaW5nKGUpLHQ9Qi50b1N0cmluZyh0KSxuZXcgbC5UeXBlKGUuc3BsaXQodCksITApfWJ1aWxkZXIoKXtyZXR1cm4ibm9vcCJ9YnVpbGRlckN1cnJlbnQoQSxlKXt2YXIgdDtsZXR7fT1BLG49bnVsbCE9PSh0PWUudGhyZWFkLl9qd0FycmF5QnVpbGRlckluZGV4KSYmdm9pZCAwIT09dD90OltdO3JldHVybiBuW24ubGVuZ3RoLTFdP25ldyBsLlR5cGUobltuLmxlbmd0aC0xXSk6bmV3IGwuVHlwZShbXSwhMCl9YnVpbGRlckFwcGVuZChBLGUpe3ZhciB0O2xldHtWQUxVRTpufT1BLGk9bnVsbCE9PSh0PWUudGhyZWFkLl9qd0FycmF5QnVpbGRlckluZGV4KSYmdm9pZCAwIT09dD90OltdO2lbaS5sZW5ndGgtMV0mJmlbaS5sZW5ndGgtMV0ucHVzaChuKX1idWlsZGVyU2V0KEEsZSl7dmFyIHQ7bGV0e0FSUkFZOm59PUE7bj1sLlR5cGUudG9BcnJheShuKTtsZXQgaT1udWxsIT09KHQ9ZS50aHJlYWQuX2p3QXJyYXlCdWlsZGVySW5kZXgpJiZ2b2lkIDAhPT10P3Q6W107aVtpLmxlbmd0aC0xXSYmKGlbaS5sZW5ndGgtMV09Wy4uLm4uYXJyYXldKX1nZXQoQSl7bGV0e0FSUkFZOmUsSU5ERVg6dH09QTtyZXR1cm4gZT1sLlR5cGUudG9BcnJheShlKSxsLlR5cGUuZm9yQXJyYXkodm9pZCAwPT09ZS5hcnJheVtCLnRvTnVtYmVyKHQpLTFdPyIiOmUuYXJyYXlbQi50b051bWJlcih0KS0xXSl9aW5kZXgoQSl7bGV0e0FSUkFZOmUsVkFMVUU6dH09QTtyZXR1cm4gZT1sLlR5cGUudG9BcnJheShlKSxlLmFycmF5Lm1hcChBPT5CLnRvU3RyaW5nKEEpKS5pbmRleE9mKEIudG9TdHJpbmcodCkpKzF9aGFzKEEpe2xldHtBUlJBWTplLFZBTFVFOnR9PUE7cmV0dXJuIGU9bC5UeXBlLnRvQXJyYXkoZSksZS5hcnJheS5tYXAoQT0+Qi50b1N0cmluZyhBKSkuaW5jbHVkZXMoQi50b1N0cmluZyh0KSl9bGVuZ3RoKEEpe2xldHtBUlJBWTplfT1BO3JldHVybiBlPWwuVHlwZS50b0FycmF5KGUpLGUubGVuZ3RofXNldChBKXtsZXR7QVJSQVk6ZSxJTkRFWDp0LFZBTFVFOm59PUE7cmV0dXJuIGU9bC5UeXBlLnRvQXJyYXkoZSksdD1CLnRvTnVtYmVyKHQpLGUuYXJyYXlbZyhCLnRvTnVtYmVyKHQpLTEpXT1sLlR5cGUuZm9yQXJyYXkobiksZS5hcnJheT1bLi4uZS5hcnJheV0sZX1hcHBlbmQoQSl7bGV0e0FSUkFZOmUsVkFMVUU6dH09QTtyZXR1cm4gZT1sLlR5cGUudG9BcnJheShlKSxlLmFycmF5LnB1c2gobC5UeXBlLmZvckFycmF5KHQpKSxlfWNvbmNhdChBKXtsZXR7T05FOmUsVFdPOnR9PUE7cmV0dXJuIGU9bC5UeXBlLnRvQXJyYXkoZSksdD1sLlR5cGUudG9BcnJheSh0KSxuZXcgbC5UeXBlKGUuYXJyYXkuY29uY2F0KHQuYXJyYXkpLCEwKX1maWxsKEEpe2xldHtBUlJBWTplLFZBTFVFOnR9PUE7cmV0dXJuIGU9bC5UeXBlLnRvQXJyYXkoZSksZS5hcnJheS5maWxsKGwuVHlwZS5mb3JBcnJheSh0KSksZX1pdGVtcyhBKXtsZXR7QVJSQVk6ZSxYOnQsWTpufT1BO3JldHVybiBlPWwuVHlwZS50b0FycmF5KGUpLHQ9ZyhCLnRvTnVtYmVyKHQpKSxuPWcoQi50b051bWJlcihuKSksbmV3IGwuVHlwZShlLmFycmF5LnNsaWNlKHQtMSxuKSwhMCl9c3BsaWNlKEEpe2xldHtBUlJBWTplLElOREVYOnQsSVRFTVM6bn09QTtyZXR1cm4gZT1sLlR5cGUudG9BcnJheShlKSx0PUIudG9OdW1iZXIodCksbj1CLnRvTnVtYmVyKG4pLGUuYXJyYXkuc3BsaWNlKHQtMSxuKSxlfXJlcGVhdChBKXtsZXR7QVJSQVk6ZSxUSU1FUzp0fT1BO3JldHVybiB0PWcoQi50b051bWJlcih0KSksMD09PXQ/bmV3IGwuVHlwZShbXSwhMCk6KGU9bC5UeXBlLnRvQXJyYXkoZSksMT09PXR8fDA9PWUuYXJyYXkubGVuZ3RoP2U6bmV3IGwuVHlwZShBcnJheSh0KS5maWxsKGUuYXJyYXkpLmZsYXQoKSwhMCkpfXJldmVyc2UoQSl7bGV0e0FSUkFZOmV9PUE7cmV0dXJuIGU9bC5UeXBlLnRvQXJyYXkoZSksZS5hcnJheS5yZXZlcnNlKCksZX1mbGF0KEEpe2xldHtBUlJBWTplLERFUFRIOnR9PUE7cmV0dXJuIGU9bC5UeXBlLnRvQXJyYXkoZSksdD1CLnRvTnVtYmVyKHQpLGUuZmxhdCh0KX10b1N0cmluZyhBKXtsZXR7QVJSQVk6ZSxGT1JNQVQ6dH09QTtyZXR1cm4gZT1sLlR5cGUudG9BcnJheShlKSxlLnRvU3RyaW5nKCJwcmV0dHkiPT09dCl9am9pbihBKXtsZXR7QVJSQVk6ZSxESVZJREVSOnR9PUE7cmV0dXJuIGU9bC5UeXBlLnRvQXJyYXkoZSksdD1CLnRvU3RyaW5nKHQpLGUuYXJyYXkubWFwKEE9PkIudG9TdHJpbmcoQSkpLmpvaW4odCl9c3VtKEEpe2xldHtBUlJBWTplfT1BO3JldHVybiBlPWwuVHlwZS50b0FycmF5KGUpLGUuYXJyYXkucmVkdWNlKChBLGUpPT5BK0IudG9OdW1iZXIoZSksMCl9Zm9yRWFjaEkoQSxlKXtsZXR7fT1BO3JldHVybiBlLnRocmVhZC5fandBcnJheUZvckVhY2gmJmUudGhyZWFkLl9qd0FycmF5Rm9yRWFjaFtlLnRocmVhZC5fandBcnJheUZvckVhY2gubGVuZ3RoLTFdP2UudGhyZWFkLl9qd0FycmF5Rm9yRWFjaFtlLnRocmVhZC5fandBcnJheUZvckVhY2gubGVuZ3RoLTFdWzBdOjB9Zm9yRWFjaFYoQSxlKXtsZXR7fT1BO3JldHVybiBlLnRocmVhZC5fandBcnJheUZvckVhY2gmJmUudGhyZWFkLl9qd0FycmF5Rm9yRWFjaFtlLnRocmVhZC5fandBcnJheUZvckVhY2gubGVuZ3RoLTFdP2UudGhyZWFkLl9qd0FycmF5Rm9yRWFjaFtlLnRocmVhZC5fandBcnJheUZvckVhY2gubGVuZ3RoLTFdWzFdOiIifWZvckVhY2goKXtyZXR1cm4ibm9vcCJ9Zm9yRWFjaEJyZWFrKEEsZSl7bGV0e309QTtlLnN0YWNrRnJhbWUuZW50cnk9W119YmFzaWNTb3J0KCl7cmV0dXJuIm5vb3AifX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiBpKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP24oT2JqZWN0KHQpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyKEEsZSx0W2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhBLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHQpKTpuKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfWZ1bmN0aW9uIHIoQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBvPXQoMSkscz10KDEwKSxhPXQoMyksQj0odCgxMyksdCgyKSk7ZnVuY3Rpb24gYyhBKXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPUEsZS5zdHlsZS5kaXNwbGF5PSJoaWRkZW4iLGUuc3R5bGUud2hpdGVTcGFjZT0ibm93cmFwIixlLnN0eWxlLndpZHRoPSIxMDAlIixlLnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIixlfWNsYXNzIGd7Y29uc3RydWN0b3IoQSl7cih0aGlzLCJjdXN0b21JZCIsImp3VGFyZ2V0cyIpLHIodGhpcywidGFyZ2V0SWQiLCIiKSx0aGlzLnRhcmdldElkPUF9c3RhdGljIHRvVGFyZ2V0KEEpe3JldHVybiBBIGluc3RhbmNlb2YgZz9BOm5ldyBnKCJzdHJpbmciPT10eXBlb2YgQT9BOiIiKX1qd0FycmF5SGFuZGxlcigpe3RyeXtyZXR1cm4iVGFyZ2V0PCIuY29uY2F0KHRoaXMudGFyZ2V0LnNwcml0ZS5uYW1lLCI+IikucmVwbGFjZUFsbCgiJiIsIiZhbXA7IikucmVwbGFjZUFsbCgiPCIsIiZsdDsiKS5yZXBsYWNlQWxsKCI+IiwiJmd0OyIpLnJlcGxhY2VBbGwoJyInLCImcXVvdDsiKS5yZXBsYWNlQWxsKCInIiwiJiMwMzk7Iil9Y2F0Y2goQSl7cmV0dXJuIlRhcmdldCJ9fXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMudGFyZ2V0SWR9dG9Nb25pdG9yQ29udGVudCgpe3RyeXtyZXR1cm4gYyh0aGlzLnRhcmdldC5zcHJpdGUubmFtZSl9Y2F0Y2goQSl7cmV0dXJuIGModGhpcy50YXJnZXRJZCl9fXRvUmVwb3J0ZXJDb250ZW50KCl7dHJ5e2xldCBBPXRoaXMudGFyZ2V0LGU9QS5zcHJpdGUubmFtZSx0PSFBLmlzT3JpZ2luYWwsbj1BLmdldENvc3R1bWVzKClbQS5jdXJyZW50Q29zdHVtZV0uYXNzZXQuZW5jb2RlRGF0YVVSSSgpLGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aS5zdHlsZS5kaXNwbGF5PSJmbGV4IixpLnN0eWxlLmZsZXhEaXJlY3Rpb249ImNvbHVtbiIsaS5zdHlsZS5qdXN0aWZ5Q29udGVudD0iY2VudGVyIjtsZXQgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTtyZXR1cm4gci5zcmM9bixyLnN0eWxlLm1heFdpZHRoPSIxNTBweCIsci5zdHlsZS5tYXhIZWlnaHQ9IjE1MHB4IixpLmFwcGVuZENoaWxkKHIpLGkuYXBwZW5kQ2hpbGQoYygiIi5jb25jYXQoZSkuY29uY2F0KHQ/IiAoY2xvbmUpIjoiIikpKSxpfWNhdGNoKEEpe3JldHVybiBjKCJVbmtub3duIil9fWdldCB0YXJnZXQoKXtyZXR1cm4gdm0ucnVudGltZS5nZXRUYXJnZXRCeUlkKHRoaXMudGFyZ2V0SWQpfX1jb25zdCBFPXtUeXBlOmcsQmxvY2s6e2Jsb2NrVHlwZTpvLlJFUE9SVEVSLGJsb2NrU2hhcGU6cy5PQ1RBR09OQUwsZm9yY2VPdXRwdXRUeXBlOiJUYXJnZXQiLGRpc2FibGVNb25pdG9yOiEwfSxBcmd1bWVudDp7Y2hlY2s6WyJUYXJnZXQiXSxzaGFwZTpzLk9DVEFHT05BTH19O2xldCBRPXtUeXBlOmNsYXNze30sQmxvY2s6e30sQXJndW1lbnQ6e319O0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZtLnJ1bnRpbWUub24oIlNQUklURV9SRU5BTUVEIixBPT57aWYoIXZtLmVkaXRpbmdUYXJnZXQpcmV0dXJuO2xldCBlPSExO2Zvcihjb25zdCB0IG9mIE9iamVjdC52YWx1ZXModm0uZWRpdGluZ1RhcmdldC5ibG9ja3MuX2Jsb2NrcykpaWYoImp3VGFyZ2V0c19tZW51X3Nwcml0ZSI9PT10Lm9wY29kZSl7Y29uc3Qgbj10LmZpZWxkcy5zcHJpdGU7bi52YWx1ZT09PUEub2xkJiYobi52YWx1ZT1BLm5ldyx0LnBhcmVudCYmKGU9ITApKX1lJiZ2bS5ydW50aW1lLnJlcXVlc3RCbG9ja3NVcGRhdGUoKX0pLHZtLmp3VGFyZ2V0cz1FLHZtLnJ1bnRpbWUucmVnaXN0ZXJTZXJpYWxpemVyKCJqd1RhcmdldHMiLEE9PkEudGFyZ2V0SWQsQT0+bmV3IEUuVHlwZShBKSksdm0uandBcnJheXx8dm0uZXh0ZW5zaW9uTWFuYWdlci5sb2FkRXh0ZW5zaW9uSWRTeW5jKCJqd0FycmF5IiksUT12bS5qd0FycmF5fWdldEluZm8oKXtyZXR1cm57aWQ6Imp3VGFyZ2V0cyIsbmFtZToiVGFyZ2V0cyIsY29sb3IxOiIjNDI1NGY1IixtZW51SWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F5TUNJZ2VHMXNibk02WW5nOUltaDBkSEJ6T2k4dlltOTRlUzF6ZG1jdVkyOXRJajRLSUNBOFkybHlZMnhsSUhOMGVXeGxQU0p6ZEhKdmEyVXRkMmxrZEdnNklESndlRHNnY0dGcGJuUXRiM0prWlhJNklITjBjbTlyWlRzZ1ptbHNiRG9nY21kaUtEWTJMQ0E0TkN3Z01qUTFLVHNnYzNSeWIydGxPaUJ5WjJJb05EQXNJRFUxTENBeE9Ua3BPeUlnWTNnOUlqRXdJaUJqZVQwaU1UQWlJSEk5SWpraVBqd3ZZMmx5WTJ4bFBnb2dJRHh3WVhSb0lHUTlJazBnTVRBZ015NHlNaklnUXlBMExqYzRNeUF6TGpJeU1pQXhMalV5TXlBNExqZzNJRFF1TVRNZ01UTXVNemc1SUVNZ05TNHpOQ0F4TlM0ME9EVWdOeTQxT0NBeE5pNDNOemdnTVRBZ01UWXVOemM0SUVNZ01UVXVNakU0SURFMkxqYzNPQ0F4T0M0ME9DQXhNUzR4TXlBeE5TNDROamtnTmk0Mk1URWdReUF4TkM0Mk5qRWdOQzQxTVRVZ01USXVOREl5SURNdU1qSXlJREV3SURNdU1qSXlJRTBnTVRBZ05TNDBPREVnUXlBeE15NDBOemtnTlM0ME9ERWdNVFV1TmpVeklEa3VNalE0SURFekxqa3hNeUF4TWk0eU5Ua2dReUF4TXk0eE1EWWdNVE11TmpVNElERXhMall4TmlBeE5DNDFNVGtnTVRBZ01UUXVOVEU1SUVNZ05pNDFNaklnTVRRdU5URTVJRFF1TXpVZ01UQXVOelV5SURZdU1EZzNJRGN1TnpReElFTWdOaTQ0T1RVZ05pNHpORElnT0M0ek9EVWdOUzQwT0RFZ01UQWdOUzQwT0RFZ1RTQXhNQ0EzTGpjME1TQkRJRGd1TWpZeUlEY3VOelF4SURjdU1UY3pJRGt1TmpJeUlEZ3VNRFEwSURFeExqRXpJRU1nT0M0ME5EZ2dNVEV1T0RJNElEa3VNVGt6SURFeUxqSTFPU0F4TUNBeE1pNHlOVGtnUXlBeE1TNDNOQ0F4TWk0eU5Ua2dNVEl1T0RJM0lERXdMak0zT0NBeE1TNDVOVFlnT0M0NE55QkRJREV4TGpVMU15QTRMakUzTWlBeE1DNDRNRGdnTnk0M05ERWdNVEFnTnk0M05ERWlJR1pwYkd3OUlpTm1abVlpSUhOMGVXeGxQU0lpUGp3dmNHRjBhRDRLUEM5emRtYysiLGJsb2NrczpbaSh7b3Bjb2RlOiJ0aGlzIix0ZXh0OiJ0aGlzIHRhcmdldCIsaGlkZUZyb21QYWxldHRlOiEwfSxFLkJsb2NrKSxpKHtvcGNvZGU6InN0YWdlIix0ZXh0OiJzdGFnZSB0YXJnZXQiLGhpZGVGcm9tUGFsZXR0ZTohMH0sRS5CbG9jayksaSh7b3Bjb2RlOiJmcm9tTmFtZSIsdGV4dDoiW1NQUklURV0gdGFyZ2V0Iixhcmd1bWVudHM6e1NQUklURTp7bWVudToic3ByaXRlIn19fSxFLkJsb2NrKSxpKHtvcGNvZGU6ImNsb25lT3JpZ2luIix0ZXh0OiJvcmlnaW4gb2YgW1RBUkdFVF0iLGFyZ3VtZW50czp7VEFSR0VUOkUuQXJndW1lbnR9fSxFLkJsb2NrKSwiLS0tIix7b3Bjb2RlOiJnZXQiLHRleHQ6IltUQVJHRVRdIFtNRU5VXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntUQVJHRVQ6RS5Bcmd1bWVudCxNRU5VOnttZW51OiJ0YXJnZXRQcm9wZXJ0eSIsZGVmYXVsdFZhbHVlOiJuYW1lIn19fSx7b3Bjb2RlOiJzZXQiLHRleHQ6InNldCBbVEFSR0VUXSBbTUVOVV0gdG8gW1ZBTFVFXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e1RBUkdFVDpFLkFyZ3VtZW50LE1FTlU6e21lbnU6InRhcmdldFByb3BlcnR5U2V0IixkZWZhdWx0VmFsdWU6IngifSxWQUxVRTp7dHlwZTphLlNUUklORyxleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMH19fSwiLS0tIix7b3Bjb2RlOiJpc0Nsb25lIix0ZXh0OiJpcyBbVEFSR0VUXSBhIGNsb25lIixibG9ja1R5cGU6by5CT09MRUFOLGFyZ3VtZW50czp7VEFSR0VUOkUuQXJndW1lbnR9fSx7b3Bjb2RlOiJpc1RvdWNoaW5nIix0ZXh0OiJpcyBbQV0gdG91Y2hpbmcgW0JdIixibG9ja1R5cGU6by5CT09MRUFOLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LHtvcGNvZGU6ImlzVG91Y2hpbmdPYmplY3QiLHRleHQ6ImlzIFtBXSB0b3VjaGluZyBbQl0iLGJsb2NrVHlwZTpvLkJPT0xFQU4sYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjp7bWVudToidG91Y2hpbmdPYmplY3QifX19LCItLS0iLHtvcGNvZGU6ImdldFZhciIsdGV4dDoidmFyIFtOQU1FXSBvZiBbVEFSR0VUXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYWxsb3dEcm9wQW55d2hlcmU6ITAsYXJndW1lbnRzOntUQVJHRVQ6RS5Bcmd1bWVudCxOQU1FOnt0eXBlOmEuU1RSSU5HfX19LHtvcGNvZGU6InNldFZhciIsdGV4dDoic2V0IHZhciBbTkFNRV0gb2YgW1RBUkdFVF0gdG8gW1ZBTFVFXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e1RBUkdFVDpFLkFyZ3VtZW50LE5BTUU6e3R5cGU6YS5TVFJJTkd9LFZBTFVFOnt0eXBlOmEuU1RSSU5HLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwfX19LCItLS0iLHtvcGNvZGU6ImNsb25lIix0ZXh0OiJjcmVhdGUgY2xvbmUgb2YgW1RBUkdFVF0iLGJsb2NrVHlwZTpvLkNPTU1BTkQsYXJndW1lbnRzOntUQVJHRVQ6RS5Bcmd1bWVudH19LGkoe29wY29kZToiY2xvbmVSIix0ZXh0OiJjcmVhdGUgY2xvbmUgb2YgW1RBUkdFVF0iLGFyZ3VtZW50czp7VEFSR0VUOkUuQXJndW1lbnR9fSxFLkJsb2NrKSx7b3Bjb2RlOiJkZWxldGVDbG9uZSIsdGV4dDoiZGVsZXRlIGNsb25lIFtUQVJHRVRdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7VEFSR0VUOkUuQXJndW1lbnR9fSwiLS0tIixpKHtvcGNvZGU6ImFsbCIsdGV4dDoiYWxsIHRhcmdldHMifSxRLkJsb2NrKSxpKHtvcGNvZGU6InRvdWNoaW5nIix0ZXh0OiJ0YXJnZXRzIHRvdWNoaW5nIFtUQVJHRVRdIixhcmd1bWVudHM6e1RBUkdFVDpFLkFyZ3VtZW50fX0sUS5CbG9jayksaSh7b3Bjb2RlOiJjbG9uZXMiLHRleHQ6ImNsb25lcyBvZiBbVEFSR0VUXSIsYXJndW1lbnRzOntUQVJHRVQ6RS5Bcmd1bWVudH19LFEuQmxvY2spLHtvcGNvZGU6ImFycmF5SGFzVGFyZ2V0Iix0ZXh0OiJbQVJSQVldIGhhcyBjbG9uZSBvZiBbVEFSR0VUXSIsYmxvY2tUeXBlOm8uQk9PTEVBTixhcmd1bWVudHM6e0FSUkFZOlEuQXJndW1lbnQsVEFSR0VUOkUuQXJndW1lbnR9fSwiLS0tIix7YmxvY2tUeXBlOm8uWE1MLHhtbDonPGJsb2NrIHR5cGU9ImNvbnRyb2xfcnVuX2FzX3Nwcml0ZSIgLz4nfV0sbWVudXM6e3Nwcml0ZTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOiJnZXRTcHJpdGVNZW51In0sdGFyZ2V0UHJvcGVydHk6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIm5hbWUiLCJpZCIsIngiLCJ5IiwiZGlyZWN0aW9uIiwic2l6ZSIsInN0cmV0Y2ggeCIsInN0cmV0Y2ggeSIsImNvc3R1bWUgIyIsImNvc3R1bWUgbmFtZSIsInZpc2libGUiLCJsYXllciIsInZvbHVtZSJdfSx0YXJnZXRQcm9wZXJ0eVNldDp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsieCIsInkiLCJkaXJlY3Rpb24iLCJzaXplIiwic3RyZXRjaCB4Iiwic3RyZXRjaCB5IiwiY29zdHVtZSAjIiwiY29zdHVtZSBuYW1lIiwidmlzaWJsZSIsImxheWVyIiwidm9sdW1lIl19LHRvdWNoaW5nT2JqZWN0Olt7dGV4dDoibW91c2UtcG9pbnRlciIsdmFsdWU6Il9tb3VzZV8ifSx7dGV4dDoiZWRnZSIsdmFsdWU6Il9lZGdlXyJ9XX19fWdldFNwcml0ZU1lbnUoQSl7bGV0e309QSxlPVsidGhpcyIsInN0YWdlIl07Zm9yKGxldCBBIG9mIHZtLnJ1bnRpbWUudGFyZ2V0cy5maWx0ZXIoQT0+QSE9PXZtLnJ1bnRpbWUuX3N0YWdlVGFyZ2V0KSllLmluY2x1ZGVzKEEuc3ByaXRlLm5hbWUpfHxlLnB1c2goQS5zcHJpdGUubmFtZSk7cmV0dXJuIGV9dGhpcyhBLGUpe2xldHt9PUE7cmV0dXJuIG5ldyBFLlR5cGUoZS50YXJnZXQuaWQpfXN0YWdlKCl7cmV0dXJuIG5ldyBFLlR5cGUodm0ucnVudGltZS5fc3RhZ2VUYXJnZXQuaWQpfWZyb21OYW1lKEEsZSl7bGV0e1NQUklURTp0fT1BO2lmKHQ9Qi50b1N0cmluZyh0KSwidGhpcyI9PXQpcmV0dXJuIHRoaXMudGhpcyh7fSxlKTtpZigic3RhZ2UiPT10KXJldHVybiB0aGlzLnN0YWdlKCk7bGV0IG49dm0ucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUodCk7cmV0dXJuIG5ldyBFLlR5cGUobj9uLmlkOiIiKX1jbG9uZU9yaWdpbihBLGUpe2xldHtUQVJHRVQ6dH09QTtyZXR1cm4gdD1FLlR5cGUudG9UYXJnZXQodCksdC50YXJnZXQ/dGhpcy5mcm9tTmFtZSh7U1BSSVRFOnQudGFyZ2V0LnNwcml0ZS5uYW1lfSxlKToiIn1nZXQoQSl7bGV0e1RBUkdFVDplLE1FTlU6dH09QTtpZihlPUUuVHlwZS50b1RhcmdldChlKSx0PUIudG9TdHJpbmcodCksIWUudGFyZ2V0KXJldHVybiIiO3N3aXRjaCh0KXtjYXNlIm5hbWUiOnJldHVybiBlLnRhcmdldC5zcHJpdGUubmFtZTtjYXNlImlkIjpyZXR1cm4gZS50YXJnZXQuaWQ7Y2FzZSJ4IjpyZXR1cm4gZS50YXJnZXQueDtjYXNlInkiOnJldHVybiBlLnRhcmdldC55O2Nhc2UiZGlyZWN0aW9uIjpyZXR1cm4gZS50YXJnZXQuZGlyZWN0aW9uO2Nhc2Uic2l6ZSI6cmV0dXJuIGUudGFyZ2V0LnNpemU7Y2FzZSJzdHJldGNoIHgiOnJldHVybiBlLnRhcmdldC5zdHJldGNoWzBdO2Nhc2Uic3RyZXRjaCB5IjpyZXR1cm4gZS50YXJnZXQuc3RyZXRjaFsxXTtjYXNlImNvc3R1bWUgIyI6cmV0dXJuIGUudGFyZ2V0LmN1cnJlbnRDb3N0dW1lKzE7Y2FzZSJjb3N0dW1lIG5hbWUiOnJldHVybiBlLnRhcmdldC5nZXRDdXJyZW50Q29zdHVtZSgpLm5hbWU7Y2FzZSJ2aXNpYmxlIjpyZXR1cm4gZS50YXJnZXQudmlzaWJsZTtjYXNlImxheWVyIjpyZXR1cm4gZS50YXJnZXQuZ2V0TGF5ZXJPcmRlcigpO2Nhc2Uidm9sdW1lIjpyZXR1cm4gZS50YXJnZXQudm9sdW1lfXJldHVybiIifXNldChBKXtsZXR7VEFSR0VUOmUsTUVOVTp0LFZBTFVFOm59PUE7aWYoZT1FLlR5cGUudG9UYXJnZXQoZSksdD1CLnRvU3RyaW5nKHQpLGUudGFyZ2V0KXN3aXRjaCh0KXtjYXNlIngiOmUudGFyZ2V0LnNldFhZKEIudG9OdW1iZXIobiksZS50YXJnZXQueSk7YnJlYWs7Y2FzZSJ5IjplLnRhcmdldC5zZXRYWShlLnRhcmdldC54LEIudG9OdW1iZXIobikpO2JyZWFrO2Nhc2UiZGlyZWN0aW9uIjplLnRhcmdldC5zZXREaXJlY3Rpb24oQi50b051bWJlcihuKSk7YnJlYWs7Y2FzZSJzaXplIjplLnRhcmdldC5zZXRTaXplKEIudG9OdW1iZXIobikpO2JyZWFrO2Nhc2Uic3RyZXRjaCB4IjplLnRhcmdldC5zZXRTdHJldGNoKEIudG9OdW1iZXIobiksZS50YXJnZXQuc3RyZXRjaFsxXSk7YnJlYWs7Y2FzZSJzdHJldGNoIHkiOmUudGFyZ2V0LnNldFN0cmV0Y2goZS50YXJnZXQuc3RyZXRjaFswXSxCLnRvTnVtYmVyKG4pKTticmVhaztjYXNlImNvc3R1bWUgIyI6ZS50YXJnZXQuc2V0Q29zdHVtZShCLnRvTnVtYmVyKG4pLTEpO2JyZWFrO2Nhc2UiY29zdHVtZSBuYW1lIjpsZXQgQT1lLnRhcmdldC5nZXRDb3N0dW1lcygpLmluZGV4T2YoZS50YXJnZXQuZ2V0Q29zdHVtZXMoKS5maW5kKEE9PkEubmFtZT09PUIudG9TdHJpbmcobikpKTtlLnRhcmdldC5zZXRDb3N0dW1lKEEpO2JyZWFrO2Nhc2UidmlzaWJsZSI6ZS50YXJnZXQuc2V0VmlzaWJsZShCLnRvQm9vbGVhbihuKSk7YnJlYWs7Y2FzZSJsYXllciI6dm0ucnVudGltZS5leHRfc2NyYXRjaDNfbG9va3Muc2V0U3ByaXRlTGF5ZXIoe05VTTpufSx7dGFyZ2V0OmUudGFyZ2V0fSk7YnJlYWs7Y2FzZSJ2b2x1bWUiOnZtLnJ1bnRpbWUuZXh0X3NjcmF0Y2gzX3NvdW5kLl91cGRhdGVWb2x1bWUoQi50b051bWJlcihuKSxlLnRhcmdldCl9fWlzQ2xvbmUoQSl7bGV0e1RBUkdFVDplfT1BO3JldHVybiBlPUUuVHlwZS50b1RhcmdldChlKSwhIWUudGFyZ2V0JiYhZS50YXJnZXQuaXNPcmlnaW5hbH1pc1RvdWNoaW5nKEEpe2xldHtBOmUsQjp0fT1BO3JldHVybiBlPUUuVHlwZS50b1RhcmdldChlKSx0PUUuVHlwZS50b1RhcmdldCh0KSwhKCFlLnRhcmdldHx8IXQudGFyZ2V0KSYmZS50YXJnZXQuaXNUb3VjaGluZ1RhcmdldCh0LnRhcmdldC5pZCl9aXNUb3VjaGluZ09iamVjdChBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9UYXJnZXQoZSksISFlLnRhcmdldCYmZS50YXJnZXQuaXNUb3VjaGluZ09iamVjdCh0KX1nZXRWYXIoQSl7bGV0e1RBUkdFVDplLE5BTUU6dH09QTtpZihlPUUuVHlwZS50b1RhcmdldChlKSx0PUIudG9TdHJpbmcodCksIWUudGFyZ2V0KXJldHVybiIiO2xldCBuPU9iamVjdC52YWx1ZXMoZS50YXJnZXQudmFyaWFibGVzKS5maW5kKEE9PkEubmFtZT09dCk7cmV0dXJuIG4/bi52YWx1ZToiIn1zZXRWYXIoQSl7bGV0e1RBUkdFVDplLE5BTUU6dCxWQUxVRTpufT1BO2lmKGU9RS5UeXBlLnRvVGFyZ2V0KGUpLHQ9Qi50b1N0cmluZyh0KSwhZS50YXJnZXQpcmV0dXJuO2xldCBpPU9iamVjdC52YWx1ZXMoZS50YXJnZXQudmFyaWFibGVzKS5maW5kKEE9PkEubmFtZT09dCk7aSYmKGkudmFsdWU9bil9Y2xvbmUoQSl7dGhpcy5jbG9uZVIoQSl9Y2xvbmVSKEEpe2xldHtUQVJHRVQ6ZX09QTtpZihlPUUuVHlwZS50b1RhcmdldChlKSwhZS50YXJnZXQpcmV0dXJuO2xldCB0PWUudGFyZ2V0LG49dC5tYWtlQ2xvbmUoKTtyZXR1cm4gbiYmKHZtLnJ1bnRpbWUuYWRkVGFyZ2V0KG4pLG4uZ29CZWhpbmRPdGhlcih0KSksbmV3IEUuVHlwZShuP24uaWQ6IiIpfWRlbGV0ZUNsb25lKEEpe2xldHtUQVJHRVQ6ZX09QTtlPUUuVHlwZS50b1RhcmdldChlKSxlLnRhcmdldCYmKGUudGFyZ2V0LmlzT3JpZ2luYWx8fCh2bS5ydW50aW1lLnN0b3BGb3JUYXJnZXQoZS50YXJnZXQpLHZtLnJ1bnRpbWUuZGlzcG9zZVRhcmdldChlLnRhcmdldCkpKX1hbGwoKXtyZXR1cm4gbmV3IFEuVHlwZSh2bS5ydW50aW1lLnRhcmdldHMubWFwKEE9Pm5ldyBFLlR5cGUoQS5pZCkpKX10b3VjaGluZyhBKXtsZXR7VEFSR0VUOmV9PUE7aWYoZT1FLlR5cGUudG9UYXJnZXQoZSksIWUudGFyZ2V0KXJldHVybiBuZXcgUS5UeXBlO2xldCB0PXZtLnJ1bnRpbWUudGFyZ2V0cztyZXR1cm4gdD10LmZpbHRlcihBPT5BIT09ZSYmIUEuaXNTdGFnZSksdD10LmZpbHRlcihBPT5BLmlzVG91Y2hpbmdUYXJnZXQoZS50YXJnZXRJZCkpLG5ldyBRLlR5cGUodC5tYXAoQT0+bmV3IEUuVHlwZShBLmlkKSkpfWNsb25lcyhBKXtsZXR7VEFSR0VUOmV9PUE7cmV0dXJuIGU9RS5UeXBlLnRvVGFyZ2V0KGUpLGUudGFyZ2V0P25ldyBRLlR5cGUoZS50YXJnZXQuc3ByaXRlLmNsb25lcy5maWx0ZXIoQT0+IUEuaXNPcmlnaW5hbCkubWFwKEE9Pm5ldyBFLlR5cGUoQS5pZCkpKTpuZXcgUS5UeXBlfWFycmF5SGFzVGFyZ2V0KEEpe2xldHtBUlJBWTplLFRBUkdFVDp0fT1BO3JldHVybiBlPVEuVHlwZS50b0FycmF5KGUpLHQ9RS5UeXBlLnRvVGFyZ2V0KHQpLCEhdC50YXJnZXQmJnZvaWQgMCE9PWUuYXJyYXkuZmluZChBPT57bGV0IGU9RS5UeXBlLnRvVGFyZ2V0KEEpO3JldHVybiEhZS50YXJnZXQmJmUudGFyZ2V0LnNwcml0ZT09dC50YXJnZXQuc3ByaXRlfSl9fX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCgxKSxzPSh0KDEwKSx0KDMpKSxhPXQoMTMpLEI9dCgyKSxjPXQoMzY5KTtsZXQgZz17VHlwZTpjbGFzc3t9LEJsb2NrOnt9LEFyZ3VtZW50Ont9fSxFPXtUeXBlOmNsYXNze30sQmxvY2s6e30sQXJndW1lbnQ6e319LFE9e1R5cGU6Y2xhc3N7fSxCbG9jazp7fSxBcmd1bWVudDp7fX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7dm0uandWZWN0b3J8fHZtLmV4dGVuc2lvbk1hbmFnZXIubG9hZEV4dGVuc2lvbklkU3luYygiandWZWN0b3IiKSxnPXZtLmp3VmVjdG9yLHZtLmp3QXJyYXl8fHZtLmV4dGVuc2lvbk1hbmFnZXIubG9hZEV4dGVuc2lvbklkU3luYygiandBcnJheSIpLEU9dm0uandBcnJheSx2bS5qd1RhcmdldHN8fHZtLmV4dGVuc2lvbk1hbmFnZXIubG9hZEV4dGVuc2lvbklkU3luYygiandUYXJnZXRzIiksUT12bS5qd1RhcmdldHMsdGhpcy5lbmdpbmU9Yy5FbmdpbmUuY3JlYXRlKCksdGhpcy5ib2RpZXM9e30sdGhpcy5ib3VuZHM9bnVsbCx2bS5ydW50aW1lLm9uKCJQUk9KRUNUX1NUQVJUIix0aGlzLnJlc2V0LmJpbmQodGhpcykpLHZtLlBzeWNoaWNEZWJ1Zz10aGlzfWdldEluZm8oKXtyZXR1cm57aWQ6Imp3UHN5Y2hpYyIsbmFtZToiUHN5Y2hpYyIsY29sb3IxOiIjYjE2YmVkIixtZW51SWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpZFhSbUxUZ2lQejRLUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeU1DSWdlRzFzYm5NNlluZzlJbWgwZEhCek9pOHZZbTk0ZVMxemRtY3VZMjl0SWlCM2FXUjBhRDBpTWpCd2VDSWdhR1ZwWjJoMFBTSXlNSEI0SWo0OFpHVm1jejQ4WW5nNlpYaHdiM0owUGp4aWVEcG1hV3hsSUdadmNtMWhkRDBpYzNabklpOCtQQzlpZURwbGVIQnZjblErUEM5a1pXWnpQanhsYkd4cGNITmxJSE4wZVd4bFBTSnpkSEp2YTJVdGQybGtkR2c2SURKd2VEc2djR0ZwYm5RdGIzSmtaWEk2SUhOMGNtOXJaVHNnWm1sc2JEb2djbWRpS0RFM055d2dNVEEzTENBeU16Y3BPeUJ6ZEhKdmEyVTZJSEpuWWlneE5Ua3NJRGsyTENBeU1UTXBPeUlnWTNnOUlqRXdJaUJqZVQwaU1UQWlJSEo0UFNJNUlpQnllVDBpT1NJdlBqeHlaV04wSUhnOUlqUXVOak0wSWlCNVBTSXhNQzR5TWpnaUlIZHBaSFJvUFNJMExqYzNJaUJvWldsbmFIUTlJalF1TnpjaUlITjBlV3hsUFNKbWFXeHNPaUJ5WjJJb01qVTFMQ0F5TlRVc0lESTFOU2s3SWk4K1BISmxZM1FnZUQwaU1UQXVOVGsySWlCNVBTSXhNQzR5TWpnaUlIZHBaSFJvUFNJMExqYzNJaUJvWldsbmFIUTlJalF1TnpjaUlITjBlV3hsUFNKbWFXeHNPaUJ5WjJJb01qVTFMQ0F5TlRVc0lESTFOU2s3SWk4K1BISmxZM1FnZUQwaU55NDJNVFVpSUhkcFpIUm9QU0kwTGpjM0lpQm9aV2xuYUhROUlqUXVOemNpSUhOMGVXeGxQU0ptYVd4c09pQnlaMklvTWpVMUxDQXlOVFVzSURJMU5TazdJaUI1UFNJMExqSTJOeUl2UGp3dmMzWm5QZz09IixibG9ja3M6W3tvcGNvZGU6InRpY2siLHRleHQ6InRpY2siLGJsb2NrVHlwZTpvLkNPTU1BTkR9LCItLS0iLHtvcGNvZGU6ImJvdW5kYXJpZXMiLHRleHQ6InNldCBib3VuZGFyaWVzIFtPUFRJT05dIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7T1BUSU9OOnt0eXBlOnMuU1RSSU5HLG1lbnU6ImJvdW5kYXJpZXNPcHRpb24ifX19LHtvcGNvZGU6InNldEdyYXZpdHkiLHRleHQ6InNldCBncmF2aXR5IHRvIFtWRUNUT1JdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7VkVDVE9SOmcuQXJndW1lbnR9fSxpKHtvcGNvZGU6ImdldEdyYXZpdHkiLHRleHQ6ImdyYXZpdHkifSxnLkJsb2NrKSwiLS0tIix7b3Bjb2RlOiJlbmFibGVQaHlzaWNzIix0ZXh0OiJlbmFibGUgcGh5c2ljcyBhcyBbT1BUSU9OXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e09QVElPTjp7dHlwZTpzLlNUUklORyxtZW51OiJlbmFibGVQaHlzaWNzT3B0aW9uIn19LGZpbHRlcjpbYS5TUFJJVEVdfSx7b3Bjb2RlOiJkaXNhYmxlUGh5c2ljcyIsdGV4dDoiZGlzYWJsZSBwaHlzaWNzIixibG9ja1R5cGU6by5DT01NQU5ELGZpbHRlcjpbYS5TUFJJVEVdfSwiLS0tIix7b3Bjb2RlOiJzZXRQb3MiLHRleHQ6InNldCBwb3NpdGlvbiB0byBbVkVDVE9SXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e1ZFQ1RPUjpnLkFyZ3VtZW50fSxmaWx0ZXI6W2EuU1BSSVRFXX0saSh7b3Bjb2RlOiJnZXRQb3MiLHRleHQ6InBvc2l0aW9uIixmaWx0ZXI6W2EuU1BSSVRFXX0sZy5CbG9jaykse29wY29kZToic2V0VmVsIix0ZXh0OiJzZXQgdmVsb2NpdHkgdG8gW1ZFQ1RPUl0iLGJsb2NrVHlwZTpvLkNPTU1BTkQsYXJndW1lbnRzOntWRUNUT1I6Zy5Bcmd1bWVudH0sZmlsdGVyOlthLlNQUklURV19LGkoe29wY29kZToiZ2V0VmVsIix0ZXh0OiJ2ZWxvY2l0eSIsZmlsdGVyOlthLlNQUklURV19LGcuQmxvY2spLHtvcGNvZGU6InNldFJvdCIsdGV4dDoic2V0IHJvdGF0aW9uIHRvIFtBTkdMRV0iLGJsb2NrVHlwZTpvLkNPTU1BTkQsYXJndW1lbnRzOntBTkdMRTp7dHlwZTpzLkFOR0xFLGRlZmF1bHRWYWx1ZTo5MH19LGZpbHRlcjpbYS5TUFJJVEVdfSx7b3Bjb2RlOiJnZXRSb3QiLHRleHQ6InJvdGF0aW9uIixibG9ja1R5cGU6by5SRVBPUlRFUixmaWx0ZXI6W2EuU1BSSVRFXX0se29wY29kZToic2V0QW5nVmVsIix0ZXh0OiJzZXQgYW5ndWxhciB2ZWxvY2l0eSB0byBbQU5HTEVdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7QU5HTEU6e3R5cGU6cy5BTkdMRSxkZWZhdWx0VmFsdWU6MH19LGZpbHRlcjpbYS5TUFJJVEVdfSx7b3Bjb2RlOiJnZXRBbmdWZWwiLHRleHQ6ImFuZ3VsYXIgdmVsb2NpdHkiLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGZpbHRlcjpbYS5TUFJJVEVdfSwiLS0tIix7b3Bjb2RlOiJnZXRNYXNzIix0ZXh0OiJtYXNzIixibG9ja1R5cGU6by5SRVBPUlRFUixmaWx0ZXI6W2EuU1BSSVRFXX0se29wY29kZToic2V0RGVuc2l0eSIsdGV4dDoic2V0IGRlbnNpdHkgdG8gW05VTUJFUl0iLGJsb2NrVHlwZTpvLkNPTU1BTkQsYXJndW1lbnRzOntOVU1CRVI6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOi4wMDF9fSxmaWx0ZXI6W2EuU1BSSVRFXX0se29wY29kZToiZ2V0RGVuc2l0eSIsdGV4dDoiZGVuc2l0eSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZmlsdGVyOlthLlNQUklURV19LCItLS0iLHtvcGNvZGU6InNldFN0YXRpYyIsdGV4dDoic2V0IGZpeGVkIHRvIFtCT09MRUFOXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e0JPT0xFQU46e3R5cGU6cy5CT09MRUFOfX0sZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6ImdldFN0YXRpYyIsdGV4dDoiZml4ZWQiLGJsb2NrVHlwZTpvLkJPT0xFQU4sZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6InNldFJvdGF0YWJsZSIsdGV4dDoic2V0IHJvdGF0YWJsZSB0byBbQk9PTEVBTl0iLGJsb2NrVHlwZTpvLkNPTU1BTkQsYXJndW1lbnRzOntCT09MRUFOOnt0eXBlOnMuQk9PTEVBTn19LGZpbHRlcjpbYS5TUFJJVEVdfSx7b3Bjb2RlOiJnZXRSb3RhdGFibGUiLHRleHQ6InJvdGF0YWJsZSIsYmxvY2tUeXBlOm8uQk9PTEVBTixmaWx0ZXI6W2EuU1BSSVRFXX0sIi0tLSIse29wY29kZToic2V0RnJpYyIsdGV4dDoic2V0IGZyaWN0aW9uIHRvIFtOVU1CRVJdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7TlVNQkVSOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTouMX19LGZpbHRlcjpbYS5TUFJJVEVdfSx7b3Bjb2RlOiJnZXRGcmljIix0ZXh0OiJmcmljdGlvbiIsYmxvY2tUeXBlOm8uUkVQT1JURVIsZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6InNldEFpckZyaWMiLHRleHQ6InNldCBhaXIgcmVzaXN0YW5jZSB0byBbTlVNQkVSXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e05VTUJFUjp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6LjAxfX0sZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6ImdldEFpckZyaWMiLHRleHQ6ImFpciByZXNpc3RhbmNlIixibG9ja1R5cGU6by5SRVBPUlRFUixmaWx0ZXI6W2EuU1BSSVRFXX0se29wY29kZToic2V0UmVzdCIsdGV4dDoic2V0IHJlc3RpdHV0aW9uIHRvIFtOVU1CRVJdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7TlVNQkVSOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX0sZmlsdGVyOlthLlNQUklURV19LHtvcGNvZGU6ImdldFJlc3QiLHRleHQ6InJlc3RpdHV0aW9uIixibG9ja1R5cGU6by5SRVBPUlRFUixmaWx0ZXI6W2EuU1BSSVRFXX0sIi0tLSIsaSh7b3Bjb2RlOiJnZXRDb2xsaWRlcyIsdGV4dDoidGFyZ2V0cyBjb2xsaWRpbmcgd2l0aCBbT1BUSU9OXSIsYXJndW1lbnRzOntPUFRJT046e3R5cGU6cy5TVFJJTkcsbWVudToidG91Y2hpbmdPcHRpb24ifX0sZmlsdGVyOlthLlNQUklURV19LEUuQmxvY2spXSxtZW51czp7ZW5hYmxlUGh5c2ljc09wdGlvbjpbInByZWNpc2UiLCJib3giLCJjaXJjbGUiXSxib3VuZGFyaWVzT3B0aW9uOlsiYWxsIiwiZmxvb3IiLCJub25lIl0sdG91Y2hpbmdPcHRpb246WyJib2R5IiwiZmVldCIsImhlYWQiXX19fXZlY3RvclRvTWF0dGVyKEEpe3JldHVybiBjLlZlY3Rvci5jcmVhdGUoQS54LC1BLnkpfW1hdHRlclRvVmVjdG9yKEEpe3JldHVybiBuZXcgZy5UeXBlKEEueCwtQS55KX1hbmdsZVRvTWF0dGVyKEEpe3JldHVybihBLTkwKSpNYXRoLlBJLzE4MH1tYXR0ZXJUb0FuZ2xlKEEpe3JldHVybiAxODAqQS9NYXRoLlBJKzkwfXJlc2V0KCl7dGhpcy5lbmdpbmU9Yy5FbmdpbmUuY3JlYXRlKCksdGhpcy5ib2RpZXM9e30sdGhpcy5ib3VuZHM9bnVsbH1jb3JyZWN0Qm9keShBKXtsZXQgZT10aGlzLmJvZGllc1tBXSx0PXZtLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChBKTtpZihudWxsPT10KXJldHVybiBjLkNvbXBvc2l0ZS5yZW1vdmUodGhpcy5lbmdpbmUud29ybGQsZSksdm9pZCBkZWxldGUgdGhpcy5ib2RpZXNbQV07Yy5Cb2R5LnNldFBvc2l0aW9uKGUsYy5WZWN0b3IuY3JlYXRlKHQueCwtdC55KSksYy5Cb2R5LnNldEFuZ2xlKGUsdGhpcy5hbmdsZVRvTWF0dGVyKHQuZGlyZWN0aW9uKSl9Y29ycmVjdFRhcmdldChBKXtsZXQgZT10aGlzLmJvZGllc1tBXSx0PXZtLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChBKTt0LnNldFhZKGUucG9zaXRpb24ueCwtZS5wb3NpdGlvbi55LCExLCEwKSx0LnNldERpcmVjdGlvbih0aGlzLm1hdHRlclRvQW5nbGUoZS5hbmdsZSkpfXRpY2soKXtsZXQgQT12bS5ydW50aW1lLmZyYW1lTG9vcC5mcmFtZXJhdGU7MD09QSYmKEE9NjApO2ZvcihsZXQgQSBvZiBPYmplY3Qua2V5cyh0aGlzLmJvZGllcykpdGhpcy5jb3JyZWN0Qm9keShBKTtjLkVuZ2luZS51cGRhdGUodGhpcy5lbmdpbmUsMWUzL0EpO2ZvcihsZXQgQSBvZiBPYmplY3Qua2V5cyh0aGlzLmJvZGllcykpdGhpcy5jb3JyZWN0VGFyZ2V0KEEpfWJvdW5kYXJpZXMoQSl7bGV0e09QVElPTjplfT1BO3RoaXMuYm91bmRzJiYoYy5Db21wb3NpdGUucmVtb3ZlKHRoaXMuZW5naW5lLndvcmxkLHRoaXMuYm91bmRzKSx0aGlzLmJvdW5kcz1udWxsKTtsZXQgdD12bS5ydW50aW1lLnN0YWdlV2lkdGgsbj12bS5ydW50aW1lLnN0YWdlSGVpZ2h0O3N3aXRjaCh0aGlzLmJvdW5kcz1jLkNvbXBvc2l0ZS5jcmVhdGUoKSxlKXtjYXNlImFsbCI6Yy5Db21wb3NpdGUuYWRkKHRoaXMuYm91bmRzLFtjLkJvZGllcy5yZWN0YW5nbGUoLXQsMCx0LE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLzIse2lzU3RhdGljOiEwfSksYy5Cb2RpZXMucmVjdGFuZ2xlKHQsMCx0LE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLzIse2lzU3RhdGljOiEwfSksYy5Cb2RpZXMucmVjdGFuZ2xlKDAsLW4sTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIvMixuLHtpc1N0YXRpYzohMH0pXSk7Y2FzZSJmbG9vciI6Yy5Db21wb3NpdGUuYWRkKHRoaXMuYm91bmRzLGMuQm9kaWVzLnJlY3RhbmdsZSgwLG4sTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIvMixuLHtpc1N0YXRpYzohMH0pKX1jLkNvbXBvc2l0ZS5hZGQodGhpcy5lbmdpbmUud29ybGQsdGhpcy5ib3VuZHMpfXNldEdyYXZpdHkoQSl7bGV0e1ZFQ1RPUjplfT1BLHQ9Zy5UeXBlLnRvVmVjdG9yKGUpO3RoaXMuZW5naW5lLmdyYXZpdHkueD10LngsdGhpcy5lbmdpbmUuZ3Jhdml0eS55PS10Lnl9Z2V0R3Jhdml0eSgpe3JldHVybiB0aGlzLm1hdHRlclRvVmVjdG9yKHRoaXMuZW5naW5lLmdyYXZpdHkpfWVuYWJsZVBoeXNpY3MoQSxlKXtsZXR7T1BUSU9OOnR9PUEsbj1lLnRhcmdldCxpPW4uZ2V0Q29zdHVtZXMoKVtuLmN1cnJlbnRDb3N0dW1lXSxyPXt4Omkuc2l6ZVswXSoobi5zaXplLzEwMCkqKG4uc3RyZXRjaFswXS8xMDApL2kuYml0bWFwUmVzb2x1dGlvbix5Omkuc2l6ZVsxXSoobi5zaXplLzEwMCkqKG4uc3RyZXRjaFsxXS8xMDApL2kuYml0bWFwUmVzb2x1dGlvbn07Y29uc29sZS5kZWJ1ZyhyKTtsZXQgbz1udWxsO3N3aXRjaCh0KXtjYXNlInByZWNpc2UiOnRocm93ImkgbmVlZCB0byBmaW5pc2ggcHJlY2lzZSBtYiI7Y2FzZSJib3giOm89Yy5Cb2RpZXMucmVjdGFuZ2xlKG4ueCwtbi55LHIueCxyLnkpO2JyZWFrO2Nhc2UiY2lyY2xlIjpvPWMuQm9kaWVzLmNpcmNsZShuLngsLW4ueSxNYXRoLm1heChyLngsci55KS8yKTticmVhaztkZWZhdWx0OnRocm93IkludmFsaWQgcGh5c2ljcyBvcHRpb24ifW8ubGFiZWw9bi5pZCx0aGlzLmJvZGllc1tuLmlkXT1vLGMuQ29tcG9zaXRlLmFkZCh0aGlzLmVuZ2luZS53b3JsZCxvKSx0aGlzLmNvcnJlY3RCb2R5KG4uaWQpfWRpc2FibGVQaHlzaWNzKEEsZSl7bGV0e309QSx0PXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTt0JiYoYy5Db21wb3NpdGUucmVtb3ZlKHRoaXMuZW5naW5lLndvcmxkLHQpLGRlbGV0ZSB0aGlzLmJvZGllc1tpZF0pfXNldFBvcyhBLGUpe2xldHtWRUNUT1I6dH09QSxuPWcuVHlwZS50b1ZlY3Rvcih0KTtlLnRhcmdldC5zZXRYWShuLngsbi55KX1nZXRQb3MoQSxlKXtsZXR7fT1BLHQ9dGhpcy5ib2RpZXNbZS50YXJnZXQuaWRdO3JldHVybiB0P3RoaXMubWF0dGVyVG9WZWN0b3IodC5wb3NpdGlvbik6bmV3IGcuVHlwZShlLnRhcmdldC54LGUudGFyZ2V0LnkpfXNldFJvdChBLGUpe2xldHtBTkdMRTp0fT1BLG49Qi50b051bWJlcih0KTtlLnRhcmdldC5zZXREaXJlY3Rpb24obil9Z2V0Um90KEEsZSl7bGV0e309QSx0PXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTtyZXR1cm4gdD90aGlzLm1hdHRlclRvQW5nbGUodC5hbmdsZSk6ZS50YXJnZXQuZGlyZWN0aW9ufXNldFZlbChBLGUpe2xldHtWRUNUT1I6dH09QSxuPXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTtpZighbilyZXR1cm47bGV0IGk9Zy5UeXBlLnRvVmVjdG9yKHQpO2MuQm9keS5zZXRWZWxvY2l0eShuLHRoaXMudmVjdG9yVG9NYXR0ZXIoaSkpfWdldFZlbChBLGUpe2xldHt9PUEsdD10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07cmV0dXJuIHQ/dGhpcy5tYXR0ZXJUb1ZlY3Rvcih0LnZlbG9jaXR5KTpuZXcgZy5UeXBlKDAsMCl9c2V0QW5nVmVsKEEsZSl7bGV0e0FOR0xFOnR9PUEsbj10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07biYmYy5Cb2R5LnNldEFuZ3VsYXJWZWxvY2l0eShuLEIudG9OdW1iZXIodCkpfWdldEFuZ1ZlbChBLGUpe2xldHt9PUEsdD10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07cmV0dXJuIHQ/dC5hbmd1bGFyVmVsb2NpdHk6MH1nZXRNYXNzKEEsZSl7bGV0e309QSx0PXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTtyZXR1cm4gdD90Lm1hc3M6MH1nZXREZW5zaXR5KEEsZSl7bGV0e309QSx0PXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTtyZXR1cm4gdD90LmRlbnNpdHk6LjAwMX1zZXREZW5zaXR5KEEsZSl7bGV0e05VTUJFUjp0fT1BO3RoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXSYmYy5Cb2R5LnNldERlbnNpdHkoQi50b051bWJlcih0KSl9Z2V0U3RhdGljKEEsZSl7bGV0e309QSx0PXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTtyZXR1cm4hIXQmJnQuaXNTdGF0aWN9c2V0U3RhdGljKEEsZSl7bGV0e0JPT0xFQU46dH09QSxuPXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTtuJiYobi5pc1N0YXRpYz10KX1nZXRSb3RhdGFibGUoQSxlKXtsZXR7fT1BLHQ9dGhpcy5ib2RpZXNbZS50YXJnZXQuaWRdO3JldHVybiF0fHx0LmluZXJ0aWEhPT0xLzB9c2V0Um90YXRhYmxlKEEsZSl7bGV0e0JPT0xFQU46dH09QSxuPXRoaXMuYm9kaWVzW2UudGFyZ2V0LmlkXTtuJiYodD9jLkJvZHkuc2V0VmVydGljZXMobixuLnZlcnRpY2VzKTpjLkJvZHkuc2V0SW5lcnRpYShuLDEvMCkpfXNldEZyaWMoQSxlKXtsZXR7TlVNQkVSOnR9PUEsbj10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07biYmKG4uZnJpY3Rpb249Qi50b051bWJlcih0KSl9Z2V0RnJpYyhBLGUpe2xldHt9PUEsdD10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07cmV0dXJuIHQ/dC5mcmljdGlvbjouMX1zZXRBaXJGcmljKEEsZSl7bGV0e05VTUJFUjp0fT1BLG49dGhpcy5ib2RpZXNbZS50YXJnZXQuaWRdO24mJihuLmZyaWN0aW9uQWlyPUIudG9OdW1iZXIodCkpfWdldEFpckZyaWMoQSxlKXtsZXR7fT1BLHQ9dGhpcy5ib2RpZXNbZS50YXJnZXQuaWRdO3JldHVybiB0P3QuZnJpY3Rpb25BaXI6LjAxfXNldFJlc3QoQSxlKXtsZXR7TlVNQkVSOnR9PUEsbj10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07biYmKG4ucmVzdGl0dXRpb249Qi50b051bWJlcih0KSl9Z2V0UmVzdChBLGUpe2xldHt9PUEsdD10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07cmV0dXJuIHQ/dC5yZXN0aXR1dGlvbjouMDF9Z2V0Q29sbGlkZXMoQSxlKXtsZXR7T1BUSU9OOnR9PUEsbj10aGlzLmJvZGllc1tlLnRhcmdldC5pZF07aWYoIW4pcmV0dXJuIG5ldyBFLlR5cGU7bGV0IGk9Yy5RdWVyeS5jb2xsaWRlcyhuLE9iamVjdC52YWx1ZXModGhpcy5ib2RpZXMpLmZpbHRlcihBPT5BLmxhYmVsIT09ZS50YXJnZXQuaWQpKTtpZigiYm9keSIhPT10KXtzd2l0Y2goaT1pLmZpbHRlcihBPT5BLnN1cHBvcnRzWzBdLng+bi5ib3VuZHMubWluLngrMSYmQS5zdXBwb3J0c1swXS54PG4uYm91bmRzLm1heC54LTEpLGNvbnNvbGUuZGVidWcoaSksdCl7Y2FzZSJmZWV0IjppPWkuZmlsdGVyKEE9Pntmb3IobGV0IGUgb2YgQS5zdXBwb3J0cylpZihudWxsIT1lJiZlLnk+bi5ib3VuZHMubWF4LnktNClyZXR1cm4hMH0pO2JyZWFrO2Nhc2UiaGVhZCI6aT1pLmZpbHRlcihBPT57Zm9yKGxldCBlIG9mIEEuc3VwcG9ydHMpaWYobnVsbCE9ZSYmZS55PG4uYm91bmRzLm1pbi55KzQpcmV0dXJuITB9KX1jb25zb2xlLmRlYnVnKGkpfWxldCByPWkubWFwKEE9Pm49PUEuYm9keUE/QS5ib2R5QjpBLmJvZHlBKTtyZXR1cm4gci5maWx0ZXIoQT0+QS5sYWJlbCE9PWUudGFyZ2V0LmlkKSxuZXcgRS5UeXBlKHIubWFwKEE9Pm5ldyBRLlR5cGUoQS5sYWJlbCkpKX19fSxmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKGUpewovKiEKICogbWF0dGVyLWpzIDAuMjAuMCBieSBAbGlhYnJ1CiAqIGh0dHA6Ly9icm0uaW8vbWF0dGVyLWpzLwogKiBMaWNlbnNlIE1JVAogKiAKICogVGhlIE1JVCBMaWNlbnNlIChNSVQpCiAqIAogKiBDb3B5cmlnaHQgKGMpIExpYW0gQnJ1bW1pdHQgYW5kIGNvbnRyaWJ1dG9ycy4KICogCiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHkKICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwogKiB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsCiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwogKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgogKiAKICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCiAqIAogKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgogKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwKICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTgogKiBUSEUgU09GVFdBUkUuCiAqLwp2YXIgdDt0PWZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKEEpe3ZhciBlPXt9O2Z1bmN0aW9uIHQobil7aWYoZVtuXSlyZXR1cm4gZVtuXS5leHBvcnRzO3ZhciBpPWVbbl09e2k6bixsOiExLGV4cG9ydHM6e319O3JldHVybiBBW25dLmNhbGwoaS5leHBvcnRzLGksaS5leHBvcnRzLHQpLGkubD0hMCxpLmV4cG9ydHN9cmV0dXJuIHQubT1BLHQuYz1lLHQuZD1mdW5jdGlvbihBLGUsbil7dC5vKEEsZSl8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse2VudW1lcmFibGU6ITAsZ2V0Om59KX0sdC5yPWZ1bmN0aW9uKEEpeyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoQSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LHQudD1mdW5jdGlvbihBLGUpe2lmKDEmZSYmKEE9dChBKSksOCZlKXJldHVybiBBO2lmKDQmZSYmIm9iamVjdCI9PXR5cGVvZiBBJiZBJiZBLl9fZXNNb2R1bGUpcmV0dXJuIEE7dmFyIG49T2JqZWN0LmNyZWF0ZShudWxsKTtpZih0LnIobiksT2JqZWN0LmRlZmluZVByb3BlcnR5KG4sImRlZmF1bHQiLHtlbnVtZXJhYmxlOiEwLHZhbHVlOkF9KSwyJmUmJiJzdHJpbmciIT10eXBlb2YgQSlmb3IodmFyIGkgaW4gQSl0LmQobixpLGZ1bmN0aW9uKGUpe3JldHVybiBBW2VdfS5iaW5kKG51bGwsaSkpO3JldHVybiBufSx0Lm49ZnVuY3Rpb24oQSl7dmFyIGU9QSYmQS5fX2VzTW9kdWxlP2Z1bmN0aW9uKCl7cmV0dXJuIEEuZGVmYXVsdH06ZnVuY3Rpb24oKXtyZXR1cm4gQX07cmV0dXJuIHQuZChlLCJhIixlKSxlfSx0Lm89ZnVuY3Rpb24oQSxlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEEsZSl9LHQucD0iIix0KHQucz0yMCl9KFtmdW5jdGlvbihBLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uLGZ1bmN0aW9uKCl7bi5fYmFzZURlbHRhPTFlMy82MCxuLl9uZXh0SWQ9MCxuLl9zZWVkPTAsbi5fbm93U3RhcnRUaW1lPStuZXcgRGF0ZSxuLl93YXJuZWRPbmNlPXt9LG4uX2RlY29tcD1udWxsLG4uZXh0ZW5kPWZ1bmN0aW9uKEEsZSl7dmFyIHQsaTsiYm9vbGVhbiI9PXR5cGVvZiBlPyh0PTIsaT1lKToodD0xLGk9ITApO2Zvcih2YXIgcj10O3I8YXJndW1lbnRzLmxlbmd0aDtyKyspe3ZhciBvPWFyZ3VtZW50c1tyXTtpZihvKWZvcih2YXIgcyBpbiBvKWkmJm9bc10mJm9bc10uY29uc3RydWN0b3I9PT1PYmplY3Q/QVtzXSYmQVtzXS5jb25zdHJ1Y3RvciE9PU9iamVjdD9BW3NdPW9bc106KEFbc109QVtzXXx8e30sbi5leHRlbmQoQVtzXSxpLG9bc10pKTpBW3NdPW9bc119cmV0dXJuIEF9LG4uY2xvbmU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbi5leHRlbmQoe30sZSxBKX0sbi5rZXlzPWZ1bmN0aW9uKEEpe2lmKE9iamVjdC5rZXlzKXJldHVybiBPYmplY3Qua2V5cyhBKTt2YXIgZT1bXTtmb3IodmFyIHQgaW4gQSllLnB1c2godCk7cmV0dXJuIGV9LG4udmFsdWVzPWZ1bmN0aW9uKEEpe3ZhciBlPVtdO2lmKE9iamVjdC5rZXlzKXtmb3IodmFyIHQ9T2JqZWN0LmtleXMoQSksbj0wO248dC5sZW5ndGg7bisrKWUucHVzaChBW3Rbbl1dKTtyZXR1cm4gZX1mb3IodmFyIGkgaW4gQSllLnB1c2goQVtpXSk7cmV0dXJuIGV9LG4uZ2V0PWZ1bmN0aW9uKEEsZSx0LG4pe2U9ZS5zcGxpdCgiLiIpLnNsaWNlKHQsbik7Zm9yKHZhciBpPTA7aTxlLmxlbmd0aDtpKz0xKUE9QVtlW2ldXTtyZXR1cm4gQX0sbi5zZXQ9ZnVuY3Rpb24oQSxlLHQsaSxyKXt2YXIgbz1lLnNwbGl0KCIuIikuc2xpY2UoaSxyKTtyZXR1cm4gbi5nZXQoQSxlLDAsLTEpW29bby5sZW5ndGgtMV1dPXQsdH0sbi5zaHVmZmxlPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1BLmxlbmd0aC0xO2U+MDtlLS0pe3ZhciB0PU1hdGguZmxvb3Iobi5yYW5kb20oKSooZSsxKSksaT1BW2VdO0FbZV09QVt0XSxBW3RdPWl9cmV0dXJuIEF9LG4uY2hvb3NlPWZ1bmN0aW9uKEEpe3JldHVybiBBW01hdGguZmxvb3Iobi5yYW5kb20oKSpBLmxlbmd0aCldfSxuLmlzRWxlbWVudD1mdW5jdGlvbihBKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEhUTUxFbGVtZW50P0EgaW5zdGFuY2VvZiBIVE1MRWxlbWVudDohIShBJiZBLm5vZGVUeXBlJiZBLm5vZGVOYW1lKX0sbi5pc0FycmF5PWZ1bmN0aW9uKEEpe3JldHVybiJbb2JqZWN0IEFycmF5XSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoQSl9LG4uaXNGdW5jdGlvbj1mdW5jdGlvbihBKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgQX0sbi5pc1BsYWluT2JqZWN0PWZ1bmN0aW9uKEEpe3JldHVybiJvYmplY3QiPT10eXBlb2YgQSYmQS5jb25zdHJ1Y3Rvcj09PU9iamVjdH0sbi5pc1N0cmluZz1mdW5jdGlvbihBKXtyZXR1cm4iW29iamVjdCBTdHJpbmddIj09PXRvU3RyaW5nLmNhbGwoQSl9LG4uY2xhbXA9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBPGU/ZTpBPnQ/dDpBfSxuLnNpZ249ZnVuY3Rpb24oQSl7cmV0dXJuIEE8MD8tMToxfSxuLm5vdz1mdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cucGVyZm9ybWFuY2Upe2lmKHdpbmRvdy5wZXJmb3JtYW5jZS5ub3cpcmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS5ub3coKTtpZih3aW5kb3cucGVyZm9ybWFuY2Uud2Via2l0Tm93KXJldHVybiB3aW5kb3cucGVyZm9ybWFuY2Uud2Via2l0Tm93KCl9cmV0dXJuIERhdGUubm93P0RhdGUubm93KCk6bmV3IERhdGUtbi5fbm93U3RhcnRUaW1lfSxuLnJhbmRvbT1mdW5jdGlvbihlLHQpe3JldHVybiB0PXZvaWQgMCE9PXQ/dDoxLChlPXZvaWQgMCE9PWU/ZTowKStBKCkqKHQtZSl9O3ZhciBBPWZ1bmN0aW9uKCl7cmV0dXJuIG4uX3NlZWQ9KDkzMDEqbi5fc2VlZCs0OTI5NyklMjMzMjgwLG4uX3NlZWQvMjMzMjgwfTtuLmNvbG9yVG9OdW1iZXI9ZnVuY3Rpb24oQSl7cmV0dXJuIDM9PShBPUEucmVwbGFjZSgiIyIsIiIpKS5sZW5ndGgmJihBPUEuY2hhckF0KDApK0EuY2hhckF0KDApK0EuY2hhckF0KDEpK0EuY2hhckF0KDEpK0EuY2hhckF0KDIpK0EuY2hhckF0KDIpKSxwYXJzZUludChBLDE2KX0sbi5sb2dMZXZlbD0xLG4ubG9nPWZ1bmN0aW9uKCl7Y29uc29sZSYmbi5sb2dMZXZlbD4wJiZuLmxvZ0xldmVsPD0zJiZjb25zb2xlLmxvZy5hcHBseShjb25zb2xlLFsibWF0dGVyLWpzOiJdLmNvbmNhdChBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpKSl9LG4uaW5mbz1mdW5jdGlvbigpe2NvbnNvbGUmJm4ubG9nTGV2ZWw+MCYmbi5sb2dMZXZlbDw9MiYmY29uc29sZS5pbmZvLmFwcGx5KGNvbnNvbGUsWyJtYXR0ZXItanM6Il0uY29uY2F0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cykpKX0sbi53YXJuPWZ1bmN0aW9uKCl7Y29uc29sZSYmbi5sb2dMZXZlbD4wJiZuLmxvZ0xldmVsPD0zJiZjb25zb2xlLndhcm4uYXBwbHkoY29uc29sZSxbIm1hdHRlci1qczoiXS5jb25jYXQoQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKSkpfSxuLndhcm5PbmNlPWZ1bmN0aW9uKCl7dmFyIEE9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKS5qb2luKCIgIik7bi5fd2FybmVkT25jZVtBXXx8KG4ud2FybihBKSxuLl93YXJuZWRPbmNlW0FdPSEwKX0sbi5kZXByZWNhdGVkPWZ1bmN0aW9uKEEsZSx0KXtBW2VdPW4uY2hhaW4oKGZ1bmN0aW9uKCl7bi53YXJuT25jZSgi8J+UhSBkZXByZWNhdGVkIPCflIUiLHQpfSksQVtlXSl9LG4ubmV4dElkPWZ1bmN0aW9uKCl7cmV0dXJuIG4uX25leHRJZCsrfSxuLmluZGV4T2Y9ZnVuY3Rpb24oQSxlKXtpZihBLmluZGV4T2YpcmV0dXJuIEEuaW5kZXhPZihlKTtmb3IodmFyIHQ9MDt0PEEubGVuZ3RoO3QrKylpZihBW3RdPT09ZSlyZXR1cm4gdDtyZXR1cm4tMX0sbi5tYXA9ZnVuY3Rpb24oQSxlKXtpZihBLm1hcClyZXR1cm4gQS5tYXAoZSk7Zm9yKHZhciB0PVtdLG49MDtuPEEubGVuZ3RoO24rPTEpdC5wdXNoKGUoQVtuXSkpO3JldHVybiB0fSxuLnRvcG9sb2dpY2FsU29ydD1mdW5jdGlvbihBKXt2YXIgZT1bXSx0PVtdLGk9W107Zm9yKHZhciByIGluIEEpdFtyXXx8aVtyXXx8bi5fdG9wb2xvZ2ljYWxTb3J0KHIsdCxpLEEsZSk7cmV0dXJuIGV9LG4uX3RvcG9sb2dpY2FsU29ydD1mdW5jdGlvbihBLGUsdCxpLHIpe3ZhciBvPWlbQV18fFtdO3RbQV09ITA7Zm9yKHZhciBzPTA7czxvLmxlbmd0aDtzKz0xKXt2YXIgYT1vW3NdO3RbYV18fGVbYV18fG4uX3RvcG9sb2dpY2FsU29ydChhLGUsdCxpLHIpfXRbQV09ITEsZVtBXT0hMCxyLnB1c2goQSl9LG4uY2hhaW49ZnVuY3Rpb24oKXtmb3IodmFyIEE9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKz0xKXt2YXIgdD1hcmd1bWVudHNbZV07dC5fY2hhaW5lZD9BLnB1c2guYXBwbHkoQSx0Ll9jaGFpbmVkKTpBLnB1c2godCl9dmFyIG49ZnVuY3Rpb24oKXtmb3IodmFyIGUsdD1uZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aCksbj0wLGk9YXJndW1lbnRzLmxlbmd0aDtuPGk7bisrKXRbbl09YXJndW1lbnRzW25dO2ZvcihuPTA7bjxBLmxlbmd0aDtuKz0xKXt2YXIgcj1BW25dLmFwcGx5KGUsdCk7dm9pZCAwIT09ciYmKGU9cil9cmV0dXJuIGV9O3JldHVybiBuLl9jaGFpbmVkPUEsbn0sbi5jaGFpblBhdGhCZWZvcmU9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBuLnNldChBLGUsbi5jaGFpbih0LG4uZ2V0KEEsZSkpKX0sbi5jaGFpblBhdGhBZnRlcj1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG4uc2V0KEEsZSxuLmNoYWluKG4uZ2V0KEEsZSksdCkpfSxuLnNldERlY29tcD1mdW5jdGlvbihBKXtuLl9kZWNvbXA9QX0sbi5nZXREZWNvbXA9ZnVuY3Rpb24oKXt2YXIgQT1uLl9kZWNvbXA7dHJ5e0F8fCJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93fHwoQT13aW5kb3cuZGVjb21wKSxBfHx2b2lkIDA9PT1lfHwoQT1lLmRlY29tcCl9Y2F0Y2goZSl7QT1udWxsfXJldHVybiBBfX0oKX0sZnVuY3Rpb24oQSxlKXt2YXIgdD17fTtBLmV4cG9ydHM9dCx0LmNyZWF0ZT1mdW5jdGlvbihBKXt2YXIgZT17bWluOnt4OjAseTowfSxtYXg6e3g6MCx5OjB9fTtyZXR1cm4gQSYmdC51cGRhdGUoZSxBKSxlfSx0LnVwZGF0ZT1mdW5jdGlvbihBLGUsdCl7QS5taW4ueD0xLzAsQS5tYXgueD0tMS8wLEEubWluLnk9MS8wLEEubWF4Lnk9LTEvMDtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpLng+QS5tYXgueCYmKEEubWF4Lng9aS54KSxpLng8QS5taW4ueCYmKEEubWluLng9aS54KSxpLnk+QS5tYXgueSYmKEEubWF4Lnk9aS55KSxpLnk8QS5taW4ueSYmKEEubWluLnk9aS55KX10JiYodC54PjA/QS5tYXgueCs9dC54OkEubWluLngrPXQueCx0Lnk+MD9BLm1heC55Kz10Lnk6QS5taW4ueSs9dC55KX0sdC5jb250YWlucz1mdW5jdGlvbihBLGUpe3JldHVybiBlLng+PUEubWluLngmJmUueDw9QS5tYXgueCYmZS55Pj1BLm1pbi55JiZlLnk8PUEubWF4Lnl9LHQub3ZlcmxhcHM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5taW4ueDw9ZS5tYXgueCYmQS5tYXgueD49ZS5taW4ueCYmQS5tYXgueT49ZS5taW4ueSYmQS5taW4ueTw9ZS5tYXgueX0sdC50cmFuc2xhdGU9ZnVuY3Rpb24oQSxlKXtBLm1pbi54Kz1lLngsQS5tYXgueCs9ZS54LEEubWluLnkrPWUueSxBLm1heC55Kz1lLnl9LHQuc2hpZnQ9ZnVuY3Rpb24oQSxlKXt2YXIgdD1BLm1heC54LUEubWluLngsbj1BLm1heC55LUEubWluLnk7QS5taW4ueD1lLngsQS5tYXgueD1lLngrdCxBLm1pbi55PWUueSxBLm1heC55PWUueStufX0sZnVuY3Rpb24oQSxlKXt2YXIgdD17fTtBLmV4cG9ydHM9dCx0LmNyZWF0ZT1mdW5jdGlvbihBLGUpe3JldHVybnt4OkF8fDAseTplfHwwfX0sdC5jbG9uZT1mdW5jdGlvbihBKXtyZXR1cm57eDpBLngseTpBLnl9fSx0Lm1hZ25pdHVkZT1mdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5zcXJ0KEEueCpBLngrQS55KkEueSl9LHQubWFnbml0dWRlU3F1YXJlZD1mdW5jdGlvbihBKXtyZXR1cm4gQS54KkEueCtBLnkqQS55fSx0LnJvdGF0ZT1mdW5jdGlvbihBLGUsdCl7dmFyIG49TWF0aC5jb3MoZSksaT1NYXRoLnNpbihlKTt0fHwodD17fSk7dmFyIHI9QS54Km4tQS55Kmk7cmV0dXJuIHQueT1BLngqaStBLnkqbix0Lng9cix0fSx0LnJvdGF0ZUFib3V0PWZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpPU1hdGguY29zKGUpLHI9TWF0aC5zaW4oZSk7bnx8KG49e30pO3ZhciBvPXQueCsoKEEueC10LngpKmktKEEueS10LnkpKnIpO3JldHVybiBuLnk9dC55KygoQS54LXQueCkqcisoQS55LXQueSkqaSksbi54PW8sbn0sdC5ub3JtYWxpc2U9ZnVuY3Rpb24oQSl7dmFyIGU9dC5tYWduaXR1ZGUoQSk7cmV0dXJuIDA9PT1lP3t4OjAseTowfTp7eDpBLngvZSx5OkEueS9lfX0sdC5kb3Q9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS54KmUueCtBLnkqZS55fSx0LmNyb3NzPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEueCplLnktQS55KmUueH0sdC5jcm9zczM9ZnVuY3Rpb24oQSxlLHQpe3JldHVybihlLngtQS54KSoodC55LUEueSktKGUueS1BLnkpKih0LngtQS54KX0sdC5hZGQ9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiB0fHwodD17fSksdC54PUEueCtlLngsdC55PUEueStlLnksdH0sdC5zdWI9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiB0fHwodD17fSksdC54PUEueC1lLngsdC55PUEueS1lLnksdH0sdC5tdWx0PWZ1bmN0aW9uKEEsZSl7cmV0dXJue3g6QS54KmUseTpBLnkqZX19LHQuZGl2PWZ1bmN0aW9uKEEsZSl7cmV0dXJue3g6QS54L2UseTpBLnkvZX19LHQucGVycD1mdW5jdGlvbihBLGUpe3JldHVybnt4OihlPSEwPT09ZT8tMToxKSotQS55LHk6ZSpBLnh9fSx0Lm5lZz1mdW5jdGlvbihBKXtyZXR1cm57eDotQS54LHk6LUEueX19LHQuYW5nbGU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gTWF0aC5hdGFuMihlLnktQS55LGUueC1BLngpfSx0Ll90ZW1wPVt0LmNyZWF0ZSgpLHQuY3JlYXRlKCksdC5jcmVhdGUoKSx0LmNyZWF0ZSgpLHQuY3JlYXRlKCksdC5jcmVhdGUoKV19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDIpLHI9dCgwKTtuLmNyZWF0ZT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxBLmxlbmd0aDtuKyspe3ZhciBpPUFbbl0scj17eDppLngseTppLnksaW5kZXg6bixib2R5OmUsaXNJbnRlcm5hbDohMX07dC5wdXNoKHIpfXJldHVybiB0fSxuLmZyb21QYXRoPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9W107cmV0dXJuIEEucmVwbGFjZSgvTD9ccyooWy1cZC5lXSspW1xzLF0qKFstXGQuZV0rKSovZ2ksKGZ1bmN0aW9uKEEsZSxuKXt0LnB1c2goe3g6cGFyc2VGbG9hdChlKSx5OnBhcnNlRmxvYXQobil9KX0pKSxuLmNyZWF0ZSh0LGUpfSxuLmNlbnRyZT1mdW5jdGlvbihBKXtmb3IodmFyIGUsdCxyLG89bi5hcmVhKEEsITApLHM9e3g6MCx5OjB9LGE9MDthPEEubGVuZ3RoO2ErKylyPShhKzEpJUEubGVuZ3RoLGU9aS5jcm9zcyhBW2FdLEFbcl0pLHQ9aS5tdWx0KGkuYWRkKEFbYV0sQVtyXSksZSkscz1pLmFkZChzLHQpO3JldHVybiBpLmRpdihzLDYqbyl9LG4ubWVhbj1mdW5jdGlvbihBKXtmb3IodmFyIGU9e3g6MCx5OjB9LHQ9MDt0PEEubGVuZ3RoO3QrKyllLngrPUFbdF0ueCxlLnkrPUFbdF0ueTtyZXR1cm4gaS5kaXYoZSxBLmxlbmd0aCl9LG4uYXJlYT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD0wLG49QS5sZW5ndGgtMSxpPTA7aTxBLmxlbmd0aDtpKyspdCs9KEFbbl0ueC1BW2ldLngpKihBW25dLnkrQVtpXS55KSxuPWk7cmV0dXJuIGU/dC8yOk1hdGguYWJzKHQpLzJ9LG4uaW5lcnRpYT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdCxuLHI9MCxvPTAscz1BLGE9MDthPHMubGVuZ3RoO2ErKyluPShhKzEpJXMubGVuZ3RoLHIrPSh0PU1hdGguYWJzKGkuY3Jvc3Moc1tuXSxzW2FdKSkpKihpLmRvdChzW25dLHNbbl0pK2kuZG90KHNbbl0sc1thXSkraS5kb3Qoc1thXSxzW2FdKSksbys9dDtyZXR1cm4gZS82KihyL28pfSxuLnRyYW5zbGF0ZT1mdW5jdGlvbihBLGUsdCl7dD12b2lkIDAhPT10P3Q6MTt2YXIgbixpPUEubGVuZ3RoLHI9ZS54KnQsbz1lLnkqdDtmb3Iobj0wO248aTtuKyspQVtuXS54Kz1yLEFbbl0ueSs9bztyZXR1cm4gQX0sbi5yb3RhdGU9ZnVuY3Rpb24oQSxlLHQpe2lmKDAhPT1lKXt2YXIgbixpLHIsbyxzPU1hdGguY29zKGUpLGE9TWF0aC5zaW4oZSksQj10LngsYz10LnksZz1BLmxlbmd0aDtmb3Iobz0wO288ZztvKyspaT0obj1BW29dKS54LUIscj1uLnktYyxuLng9QisoaSpzLXIqYSksbi55PWMrKGkqYStyKnMpO3JldHVybiBBfX0sbi5jb250YWlucz1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdCxuPWUueCxpPWUueSxyPUEubGVuZ3RoLG89QVtyLTFdLHM9MDtzPHI7cysrKXtpZih0PUFbc10sKG4tby54KSoodC55LW8ueSkrKGktby55KSooby54LXQueCk+MClyZXR1cm4hMTtvPXR9cmV0dXJuITB9LG4uc2NhbGU9ZnVuY3Rpb24oQSxlLHQscil7aWYoMT09PWUmJjE9PT10KXJldHVybiBBO3ZhciBvLHM7cj1yfHxuLmNlbnRyZShBKTtmb3IodmFyIGE9MDthPEEubGVuZ3RoO2ErKylvPUFbYV0scz1pLnN1YihvLHIpLEFbYV0ueD1yLngrcy54KmUsQVthXS55PXIueStzLnkqdDtyZXR1cm4gQX0sbi5jaGFtZmVyPWZ1bmN0aW9uKEEsZSx0LG4sbyl7ZT0ibnVtYmVyIj09dHlwZW9mIGU/W2VdOmV8fFs4XSx0PXZvaWQgMCE9PXQ/dDotMSxuPW58fDIsbz1vfHwxNDtmb3IodmFyIHM9W10sYT0wO2E8QS5sZW5ndGg7YSsrKXt2YXIgQj1BW2EtMT49MD9hLTE6QS5sZW5ndGgtMV0sYz1BW2FdLGc9QVsoYSsxKSVBLmxlbmd0aF0sRT1lW2E8ZS5sZW5ndGg/YTplLmxlbmd0aC0xXTtpZigwIT09RSl7dmFyIFE9aS5ub3JtYWxpc2Uoe3g6Yy55LUIueSx5OkIueC1jLnh9KSx1PWkubm9ybWFsaXNlKHt4OmcueS1jLnkseTpjLngtZy54fSksbD1NYXRoLnNxcnQoMipNYXRoLnBvdyhFLDIpKSxoPWkubXVsdChyLmNsb25lKFEpLEUpLHc9aS5ub3JtYWxpc2UoaS5tdWx0KGkuYWRkKFEsdSksLjUpKSxDPWkuc3ViKGMsaS5tdWx0KHcsbCkpLEk9dDstMT09PXQmJihJPTEuNzUqTWF0aC5wb3coRSwuMzIpKSwoST1yLmNsYW1wKEksbixvKSklMj09MSYmKEkrPTEpO2Zvcih2YXIgTT1NYXRoLmFjb3MoaS5kb3QoUSx1KSkvSSxkPTA7ZDxJO2QrKylzLnB1c2goaS5hZGQoaS5yb3RhdGUoaCxNKmQpLEMpKX1lbHNlIHMucHVzaChjKX1yZXR1cm4gc30sbi5jbG9ja3dpc2VTb3J0PWZ1bmN0aW9uKEEpe3ZhciBlPW4ubWVhbihBKTtyZXR1cm4gQS5zb3J0KChmdW5jdGlvbihBLHQpe3JldHVybiBpLmFuZ2xlKGUsQSktaS5hbmdsZShlLHQpfSkpLEF9LG4uaXNDb252ZXg9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuLGkscj0wLG89QS5sZW5ndGg7aWYobzwzKXJldHVybiBudWxsO2ZvcihlPTA7ZTxvO2UrKylpZihuPShlKzIpJW8saT0oQVt0PShlKzEpJW9dLngtQVtlXS54KSooQVtuXS55LUFbdF0ueSksKGktPShBW3RdLnktQVtlXS55KSooQVtuXS54LUFbdF0ueCkpPDA/cnw9MTppPjAmJihyfD0yKSwzPT09cilyZXR1cm4hMTtyZXR1cm4gMCE9PXJ8fG51bGx9LG4uaHVsbD1mdW5jdGlvbihBKXt2YXIgZSx0LG49W10scj1bXTtmb3IoKEE9QS5zbGljZSgwKSkuc29ydCgoZnVuY3Rpb24oQSxlKXt2YXIgdD1BLngtZS54O3JldHVybiAwIT09dD90OkEueS1lLnl9KSksdD0wO3Q8QS5sZW5ndGg7dCs9MSl7Zm9yKGU9QVt0XTtyLmxlbmd0aD49MiYmaS5jcm9zczMocltyLmxlbmd0aC0yXSxyW3IubGVuZ3RoLTFdLGUpPD0wOylyLnBvcCgpO3IucHVzaChlKX1mb3IodD1BLmxlbmd0aC0xO3Q+PTA7dC09MSl7Zm9yKGU9QVt0XTtuLmxlbmd0aD49MiYmaS5jcm9zczMobltuLmxlbmd0aC0yXSxuW24ubGVuZ3RoLTFdLGUpPD0wOyluLnBvcCgpO24ucHVzaChlKX1yZXR1cm4gbi5wb3AoKSxyLnBvcCgpLG4uY29uY2F0KHIpfX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoMykscj10KDIpLG89dCg3KSxzPXQoMCksYT10KDEpLEI9dCgxMSk7IWZ1bmN0aW9uKCl7bi5fdGltZUNvcnJlY3Rpb249ITAsbi5faW5lcnRpYVNjYWxlPTQsbi5fbmV4dENvbGxpZGluZ0dyb3VwSWQ9MSxuLl9uZXh0Tm9uQ29sbGlkaW5nR3JvdXBJZD0tMSxuLl9uZXh0Q2F0ZWdvcnk9MSxuLl9iYXNlRGVsdGE9MWUzLzYwLG4uY3JlYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXtpZDpzLm5leHRJZCgpLHR5cGU6ImJvZHkiLGxhYmVsOiJCb2R5IixwYXJ0czpbXSxwbHVnaW46e30sYW5nbGU6MCx2ZXJ0aWNlczppLmZyb21QYXRoKCJMIDAgMCBMIDQwIDAgTCA0MCA0MCBMIDAgNDAiKSxwb3NpdGlvbjp7eDowLHk6MH0sZm9yY2U6e3g6MCx5OjB9LHRvcnF1ZTowLHBvc2l0aW9uSW1wdWxzZTp7eDowLHk6MH0sY29uc3RyYWludEltcHVsc2U6e3g6MCx5OjAsYW5nbGU6MH0sdG90YWxDb250YWN0czowLHNwZWVkOjAsYW5ndWxhclNwZWVkOjAsdmVsb2NpdHk6e3g6MCx5OjB9LGFuZ3VsYXJWZWxvY2l0eTowLGlzU2Vuc29yOiExLGlzU3RhdGljOiExLGlzU2xlZXBpbmc6ITEsbW90aW9uOjAsc2xlZXBUaHJlc2hvbGQ6NjAsZGVuc2l0eTouMDAxLHJlc3RpdHV0aW9uOjAsZnJpY3Rpb246LjEsZnJpY3Rpb25TdGF0aWM6LjUsZnJpY3Rpb25BaXI6LjAxLGNvbGxpc2lvbkZpbHRlcjp7Y2F0ZWdvcnk6MSxtYXNrOjQyOTQ5NjcyOTUsZ3JvdXA6MH0sc2xvcDouMDUsdGltZVNjYWxlOjEscmVuZGVyOnt2aXNpYmxlOiEwLG9wYWNpdHk6MSxzdHJva2VTdHlsZTpudWxsLGZpbGxTdHlsZTpudWxsLGxpbmVXaWR0aDpudWxsLHNwcml0ZTp7eFNjYWxlOjEseVNjYWxlOjEseE9mZnNldDowLHlPZmZzZXQ6MH19LGV2ZW50czpudWxsLGJvdW5kczpudWxsLGNoYW1mZXI6bnVsbCxjaXJjbGVSYWRpdXM6MCxwb3NpdGlvblByZXY6bnVsbCxhbmdsZVByZXY6MCxwYXJlbnQ6bnVsbCxheGVzOm51bGwsYXJlYTowLG1hc3M6MCxpbmVydGlhOjAsZGVsdGFUaW1lOjFlMy82MCxfb3JpZ2luYWw6bnVsbH0sbj1zLmV4dGVuZCh0LGUpO3JldHVybiBBKG4sZSksbn0sbi5uZXh0R3JvdXA9ZnVuY3Rpb24oQSl7cmV0dXJuIEE/bi5fbmV4dE5vbkNvbGxpZGluZ0dyb3VwSWQtLTpuLl9uZXh0Q29sbGlkaW5nR3JvdXBJZCsrfSxuLm5leHRDYXRlZ29yeT1mdW5jdGlvbigpe3JldHVybiBuLl9uZXh0Q2F0ZWdvcnk9bi5fbmV4dENhdGVnb3J5PDwxLG4uX25leHRDYXRlZ29yeX07dmFyIEE9ZnVuY3Rpb24oQSxlKXtlPWV8fHt9LG4uc2V0KEEse2JvdW5kczpBLmJvdW5kc3x8YS5jcmVhdGUoQS52ZXJ0aWNlcykscG9zaXRpb25QcmV2OkEucG9zaXRpb25QcmV2fHxyLmNsb25lKEEucG9zaXRpb24pLGFuZ2xlUHJldjpBLmFuZ2xlUHJldnx8QS5hbmdsZSx2ZXJ0aWNlczpBLnZlcnRpY2VzLHBhcnRzOkEucGFydHN8fFtBXSxpc1N0YXRpYzpBLmlzU3RhdGljLGlzU2xlZXBpbmc6QS5pc1NsZWVwaW5nLHBhcmVudDpBLnBhcmVudHx8QX0pLGkucm90YXRlKEEudmVydGljZXMsQS5hbmdsZSxBLnBvc2l0aW9uKSxCLnJvdGF0ZShBLmF4ZXMsQS5hbmdsZSksYS51cGRhdGUoQS5ib3VuZHMsQS52ZXJ0aWNlcyxBLnZlbG9jaXR5KSxuLnNldChBLHtheGVzOmUuYXhlc3x8QS5heGVzLGFyZWE6ZS5hcmVhfHxBLmFyZWEsbWFzczplLm1hc3N8fEEubWFzcyxpbmVydGlhOmUuaW5lcnRpYXx8QS5pbmVydGlhfSk7dmFyIHQ9QS5pc1N0YXRpYz8iIzE0MTUxZiI6cy5jaG9vc2UoWyIjZjE5NjQ4IiwiI2Y1ZDI1OSIsIiNmNTVhM2MiLCIjMDYzZTdiIiwiI2VjZWNkMSJdKSxvPUEuaXNTdGF0aWM/IiM1NTUiOiIjY2NjIixjPUEuaXNTdGF0aWMmJm51bGw9PT1BLnJlbmRlci5maWxsU3R5bGU/MTowO0EucmVuZGVyLmZpbGxTdHlsZT1BLnJlbmRlci5maWxsU3R5bGV8fHQsQS5yZW5kZXIuc3Ryb2tlU3R5bGU9QS5yZW5kZXIuc3Ryb2tlU3R5bGV8fG8sQS5yZW5kZXIubGluZVdpZHRoPUEucmVuZGVyLmxpbmVXaWR0aHx8YyxBLnJlbmRlci5zcHJpdGUueE9mZnNldCs9LShBLmJvdW5kcy5taW4ueC1BLnBvc2l0aW9uLngpLyhBLmJvdW5kcy5tYXgueC1BLmJvdW5kcy5taW4ueCksQS5yZW5kZXIuc3ByaXRlLnlPZmZzZXQrPS0oQS5ib3VuZHMubWluLnktQS5wb3NpdGlvbi55KS8oQS5ib3VuZHMubWF4LnktQS5ib3VuZHMubWluLnkpfTtuLnNldD1mdW5jdGlvbihBLGUsdCl7dmFyIGk7Zm9yKGkgaW4ic3RyaW5nIj09dHlwZW9mIGUmJihpPWUsKGU9e30pW2ldPXQpLGUpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsaSkpc3dpdGNoKHQ9ZVtpXSxpKXtjYXNlImlzU3RhdGljIjpuLnNldFN0YXRpYyhBLHQpO2JyZWFrO2Nhc2UiaXNTbGVlcGluZyI6by5zZXQoQSx0KTticmVhaztjYXNlIm1hc3MiOm4uc2V0TWFzcyhBLHQpO2JyZWFrO2Nhc2UiZGVuc2l0eSI6bi5zZXREZW5zaXR5KEEsdCk7YnJlYWs7Y2FzZSJpbmVydGlhIjpuLnNldEluZXJ0aWEoQSx0KTticmVhaztjYXNlInZlcnRpY2VzIjpuLnNldFZlcnRpY2VzKEEsdCk7YnJlYWs7Y2FzZSJwb3NpdGlvbiI6bi5zZXRQb3NpdGlvbihBLHQpO2JyZWFrO2Nhc2UiYW5nbGUiOm4uc2V0QW5nbGUoQSx0KTticmVhaztjYXNlInZlbG9jaXR5IjpuLnNldFZlbG9jaXR5KEEsdCk7YnJlYWs7Y2FzZSJhbmd1bGFyVmVsb2NpdHkiOm4uc2V0QW5ndWxhclZlbG9jaXR5KEEsdCk7YnJlYWs7Y2FzZSJzcGVlZCI6bi5zZXRTcGVlZChBLHQpO2JyZWFrO2Nhc2UiYW5ndWxhclNwZWVkIjpuLnNldEFuZ3VsYXJTcGVlZChBLHQpO2JyZWFrO2Nhc2UicGFydHMiOm4uc2V0UGFydHMoQSx0KTticmVhaztjYXNlImNlbnRyZSI6bi5zZXRDZW50cmUoQSx0KTticmVhaztkZWZhdWx0OkFbaV09dH19LG4uc2V0U3RhdGljPWZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PTA7dDxBLnBhcnRzLmxlbmd0aDt0Kyspe3ZhciBuPUEucGFydHNbdF07ZT8obi5pc1N0YXRpY3x8KG4uX29yaWdpbmFsPXtyZXN0aXR1dGlvbjpuLnJlc3RpdHV0aW9uLGZyaWN0aW9uOm4uZnJpY3Rpb24sbWFzczpuLm1hc3MsaW5lcnRpYTpuLmluZXJ0aWEsZGVuc2l0eTpuLmRlbnNpdHksaW52ZXJzZU1hc3M6bi5pbnZlcnNlTWFzcyxpbnZlcnNlSW5lcnRpYTpuLmludmVyc2VJbmVydGlhfSksbi5yZXN0aXR1dGlvbj0wLG4uZnJpY3Rpb249MSxuLm1hc3M9bi5pbmVydGlhPW4uZGVuc2l0eT0xLzAsbi5pbnZlcnNlTWFzcz1uLmludmVyc2VJbmVydGlhPTAsbi5wb3NpdGlvblByZXYueD1uLnBvc2l0aW9uLngsbi5wb3NpdGlvblByZXYueT1uLnBvc2l0aW9uLnksbi5hbmdsZVByZXY9bi5hbmdsZSxuLmFuZ3VsYXJWZWxvY2l0eT0wLG4uc3BlZWQ9MCxuLmFuZ3VsYXJTcGVlZD0wLG4ubW90aW9uPTApOm4uX29yaWdpbmFsJiYobi5yZXN0aXR1dGlvbj1uLl9vcmlnaW5hbC5yZXN0aXR1dGlvbixuLmZyaWN0aW9uPW4uX29yaWdpbmFsLmZyaWN0aW9uLG4ubWFzcz1uLl9vcmlnaW5hbC5tYXNzLG4uaW5lcnRpYT1uLl9vcmlnaW5hbC5pbmVydGlhLG4uZGVuc2l0eT1uLl9vcmlnaW5hbC5kZW5zaXR5LG4uaW52ZXJzZU1hc3M9bi5fb3JpZ2luYWwuaW52ZXJzZU1hc3Msbi5pbnZlcnNlSW5lcnRpYT1uLl9vcmlnaW5hbC5pbnZlcnNlSW5lcnRpYSxuLl9vcmlnaW5hbD1udWxsKSxuLmlzU3RhdGljPWV9fSxuLnNldE1hc3M9ZnVuY3Rpb24oQSxlKXt2YXIgdD1BLmluZXJ0aWEvKEEubWFzcy82KTtBLmluZXJ0aWE9dCooZS82KSxBLmludmVyc2VJbmVydGlhPTEvQS5pbmVydGlhLEEubWFzcz1lLEEuaW52ZXJzZU1hc3M9MS9BLm1hc3MsQS5kZW5zaXR5PUEubWFzcy9BLmFyZWF9LG4uc2V0RGVuc2l0eT1mdW5jdGlvbihBLGUpe24uc2V0TWFzcyhBLGUqQS5hcmVhKSxBLmRlbnNpdHk9ZX0sbi5zZXRJbmVydGlhPWZ1bmN0aW9uKEEsZSl7QS5pbmVydGlhPWUsQS5pbnZlcnNlSW5lcnRpYT0xL0EuaW5lcnRpYX0sbi5zZXRWZXJ0aWNlcz1mdW5jdGlvbihBLGUpe2VbMF0uYm9keT09PUE/QS52ZXJ0aWNlcz1lOkEudmVydGljZXM9aS5jcmVhdGUoZSxBKSxBLmF4ZXM9Qi5mcm9tVmVydGljZXMoQS52ZXJ0aWNlcyksQS5hcmVhPWkuYXJlYShBLnZlcnRpY2VzKSxuLnNldE1hc3MoQSxBLmRlbnNpdHkqQS5hcmVhKTt2YXIgdD1pLmNlbnRyZShBLnZlcnRpY2VzKTtpLnRyYW5zbGF0ZShBLnZlcnRpY2VzLHQsLTEpLG4uc2V0SW5lcnRpYShBLG4uX2luZXJ0aWFTY2FsZSppLmluZXJ0aWEoQS52ZXJ0aWNlcyxBLm1hc3MpKSxpLnRyYW5zbGF0ZShBLnZlcnRpY2VzLEEucG9zaXRpb24pLGEudXBkYXRlKEEuYm91bmRzLEEudmVydGljZXMsQS52ZWxvY2l0eSl9LG4uc2V0UGFydHM9ZnVuY3Rpb24oQSxlLHQpe3ZhciByO2ZvcihlPWUuc2xpY2UoMCksQS5wYXJ0cy5sZW5ndGg9MCxBLnBhcnRzLnB1c2goQSksQS5wYXJlbnQ9QSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBvPWVbcl07byE9PUEmJihvLnBhcmVudD1BLEEucGFydHMucHVzaChvKSl9aWYoMSE9PUEucGFydHMubGVuZ3RoKXtpZih0PXZvaWQgMD09PXR8fHQpe3ZhciBzPVtdO2ZvcihyPTA7cjxlLmxlbmd0aDtyKyspcz1zLmNvbmNhdChlW3JdLnZlcnRpY2VzKTtpLmNsb2Nrd2lzZVNvcnQocyk7dmFyIGE9aS5odWxsKHMpLEI9aS5jZW50cmUoYSk7bi5zZXRWZXJ0aWNlcyhBLGEpLGkudHJhbnNsYXRlKEEudmVydGljZXMsQil9dmFyIGM9bi5fdG90YWxQcm9wZXJ0aWVzKEEpO0EuYXJlYT1jLmFyZWEsQS5wYXJlbnQ9QSxBLnBvc2l0aW9uLng9Yy5jZW50cmUueCxBLnBvc2l0aW9uLnk9Yy5jZW50cmUueSxBLnBvc2l0aW9uUHJldi54PWMuY2VudHJlLngsQS5wb3NpdGlvblByZXYueT1jLmNlbnRyZS55LG4uc2V0TWFzcyhBLGMubWFzcyksbi5zZXRJbmVydGlhKEEsYy5pbmVydGlhKSxuLnNldFBvc2l0aW9uKEEsYy5jZW50cmUpfX0sbi5zZXRDZW50cmU9ZnVuY3Rpb24oQSxlLHQpe3Q/KEEucG9zaXRpb25QcmV2LngrPWUueCxBLnBvc2l0aW9uUHJldi55Kz1lLnksQS5wb3NpdGlvbi54Kz1lLngsQS5wb3NpdGlvbi55Kz1lLnkpOihBLnBvc2l0aW9uUHJldi54PWUueC0oQS5wb3NpdGlvbi54LUEucG9zaXRpb25QcmV2LngpLEEucG9zaXRpb25QcmV2Lnk9ZS55LShBLnBvc2l0aW9uLnktQS5wb3NpdGlvblByZXYueSksQS5wb3NpdGlvbi54PWUueCxBLnBvc2l0aW9uLnk9ZS55KX0sbi5zZXRQb3NpdGlvbj1mdW5jdGlvbihBLGUsdCl7dmFyIG49ci5zdWIoZSxBLnBvc2l0aW9uKTt0PyhBLnBvc2l0aW9uUHJldi54PUEucG9zaXRpb24ueCxBLnBvc2l0aW9uUHJldi55PUEucG9zaXRpb24ueSxBLnZlbG9jaXR5Lng9bi54LEEudmVsb2NpdHkueT1uLnksQS5zcGVlZD1yLm1hZ25pdHVkZShuKSk6KEEucG9zaXRpb25QcmV2LngrPW4ueCxBLnBvc2l0aW9uUHJldi55Kz1uLnkpO2Zvcih2YXIgbz0wO288QS5wYXJ0cy5sZW5ndGg7bysrKXt2YXIgcz1BLnBhcnRzW29dO3MucG9zaXRpb24ueCs9bi54LHMucG9zaXRpb24ueSs9bi55LGkudHJhbnNsYXRlKHMudmVydGljZXMsbiksYS51cGRhdGUocy5ib3VuZHMscy52ZXJ0aWNlcyxBLnZlbG9jaXR5KX19LG4uc2V0QW5nbGU9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWUtQS5hbmdsZTt0PyhBLmFuZ2xlUHJldj1BLmFuZ2xlLEEuYW5ndWxhclZlbG9jaXR5PW4sQS5hbmd1bGFyU3BlZWQ9TWF0aC5hYnMobikpOkEuYW5nbGVQcmV2Kz1uO2Zvcih2YXIgbz0wO288QS5wYXJ0cy5sZW5ndGg7bysrKXt2YXIgcz1BLnBhcnRzW29dO3MuYW5nbGUrPW4saS5yb3RhdGUocy52ZXJ0aWNlcyxuLEEucG9zaXRpb24pLEIucm90YXRlKHMuYXhlcyxuKSxhLnVwZGF0ZShzLmJvdW5kcyxzLnZlcnRpY2VzLEEudmVsb2NpdHkpLG8+MCYmci5yb3RhdGVBYm91dChzLnBvc2l0aW9uLG4sQS5wb3NpdGlvbixzLnBvc2l0aW9uKX19LG4uc2V0VmVsb2NpdHk9ZnVuY3Rpb24oQSxlKXt2YXIgdD1BLmRlbHRhVGltZS9uLl9iYXNlRGVsdGE7QS5wb3NpdGlvblByZXYueD1BLnBvc2l0aW9uLngtZS54KnQsQS5wb3NpdGlvblByZXYueT1BLnBvc2l0aW9uLnktZS55KnQsQS52ZWxvY2l0eS54PShBLnBvc2l0aW9uLngtQS5wb3NpdGlvblByZXYueCkvdCxBLnZlbG9jaXR5Lnk9KEEucG9zaXRpb24ueS1BLnBvc2l0aW9uUHJldi55KS90LEEuc3BlZWQ9ci5tYWduaXR1ZGUoQS52ZWxvY2l0eSl9LG4uZ2V0VmVsb2NpdHk9ZnVuY3Rpb24oQSl7dmFyIGU9bi5fYmFzZURlbHRhL0EuZGVsdGFUaW1lO3JldHVybnt4OihBLnBvc2l0aW9uLngtQS5wb3NpdGlvblByZXYueCkqZSx5OihBLnBvc2l0aW9uLnktQS5wb3NpdGlvblByZXYueSkqZX19LG4uZ2V0U3BlZWQ9ZnVuY3Rpb24oQSl7cmV0dXJuIHIubWFnbml0dWRlKG4uZ2V0VmVsb2NpdHkoQSkpfSxuLnNldFNwZWVkPWZ1bmN0aW9uKEEsZSl7bi5zZXRWZWxvY2l0eShBLHIubXVsdChyLm5vcm1hbGlzZShuLmdldFZlbG9jaXR5KEEpKSxlKSl9LG4uc2V0QW5ndWxhclZlbG9jaXR5PWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS5kZWx0YVRpbWUvbi5fYmFzZURlbHRhO0EuYW5nbGVQcmV2PUEuYW5nbGUtZSp0LEEuYW5ndWxhclZlbG9jaXR5PShBLmFuZ2xlLUEuYW5nbGVQcmV2KS90LEEuYW5ndWxhclNwZWVkPU1hdGguYWJzKEEuYW5ndWxhclZlbG9jaXR5KX0sbi5nZXRBbmd1bGFyVmVsb2NpdHk9ZnVuY3Rpb24oQSl7cmV0dXJuKEEuYW5nbGUtQS5hbmdsZVByZXYpKm4uX2Jhc2VEZWx0YS9BLmRlbHRhVGltZX0sbi5nZXRBbmd1bGFyU3BlZWQ9ZnVuY3Rpb24oQSl7cmV0dXJuIE1hdGguYWJzKG4uZ2V0QW5ndWxhclZlbG9jaXR5KEEpKX0sbi5zZXRBbmd1bGFyU3BlZWQ9ZnVuY3Rpb24oQSxlKXtuLnNldEFuZ3VsYXJWZWxvY2l0eShBLHMuc2lnbihuLmdldEFuZ3VsYXJWZWxvY2l0eShBKSkqZSl9LG4udHJhbnNsYXRlPWZ1bmN0aW9uKEEsZSx0KXtuLnNldFBvc2l0aW9uKEEsci5hZGQoQS5wb3NpdGlvbixlKSx0KX0sbi5yb3RhdGU9ZnVuY3Rpb24oQSxlLHQsaSl7aWYodCl7dmFyIHI9TWF0aC5jb3MoZSksbz1NYXRoLnNpbihlKSxzPUEucG9zaXRpb24ueC10LngsYT1BLnBvc2l0aW9uLnktdC55O24uc2V0UG9zaXRpb24oQSx7eDp0LngrKHMqci1hKm8pLHk6dC55KyhzKm8rYSpyKX0saSksbi5zZXRBbmdsZShBLEEuYW5nbGUrZSxpKX1lbHNlIG4uc2V0QW5nbGUoQSxBLmFuZ2xlK2UsaSl9LG4uc2NhbGU9ZnVuY3Rpb24oQSxlLHQscil7dmFyIG89MCxzPTA7cj1yfHxBLnBvc2l0aW9uO2Zvcih2YXIgYz0wO2M8QS5wYXJ0cy5sZW5ndGg7YysrKXt2YXIgZz1BLnBhcnRzW2NdO2kuc2NhbGUoZy52ZXJ0aWNlcyxlLHQsciksZy5heGVzPUIuZnJvbVZlcnRpY2VzKGcudmVydGljZXMpLGcuYXJlYT1pLmFyZWEoZy52ZXJ0aWNlcyksbi5zZXRNYXNzKGcsQS5kZW5zaXR5KmcuYXJlYSksaS50cmFuc2xhdGUoZy52ZXJ0aWNlcyx7eDotZy5wb3NpdGlvbi54LHk6LWcucG9zaXRpb24ueX0pLG4uc2V0SW5lcnRpYShnLG4uX2luZXJ0aWFTY2FsZSppLmluZXJ0aWEoZy52ZXJ0aWNlcyxnLm1hc3MpKSxpLnRyYW5zbGF0ZShnLnZlcnRpY2VzLHt4OmcucG9zaXRpb24ueCx5OmcucG9zaXRpb24ueX0pLGM+MCYmKG8rPWcuYXJlYSxzKz1nLmluZXJ0aWEpLGcucG9zaXRpb24ueD1yLngrKGcucG9zaXRpb24ueC1yLngpKmUsZy5wb3NpdGlvbi55PXIueSsoZy5wb3NpdGlvbi55LXIueSkqdCxhLnVwZGF0ZShnLmJvdW5kcyxnLnZlcnRpY2VzLEEudmVsb2NpdHkpfUEucGFydHMubGVuZ3RoPjEmJihBLmFyZWE9byxBLmlzU3RhdGljfHwobi5zZXRNYXNzKEEsQS5kZW5zaXR5Km8pLG4uc2V0SW5lcnRpYShBLHMpKSksQS5jaXJjbGVSYWRpdXMmJihlPT09dD9BLmNpcmNsZVJhZGl1cyo9ZTpBLmNpcmNsZVJhZGl1cz1udWxsKX0sbi51cGRhdGU9ZnVuY3Rpb24oQSxlKXt2YXIgdD0oZT0odm9pZCAwIT09ZT9lOjFlMy82MCkqQS50aW1lU2NhbGUpKmUsbz1uLl90aW1lQ29ycmVjdGlvbj9lLyhBLmRlbHRhVGltZXx8ZSk6MSxjPTEtQS5mcmljdGlvbkFpciooZS9zLl9iYXNlRGVsdGEpLGc9KEEucG9zaXRpb24ueC1BLnBvc2l0aW9uUHJldi54KSpvLEU9KEEucG9zaXRpb24ueS1BLnBvc2l0aW9uUHJldi55KSpvO0EudmVsb2NpdHkueD1nKmMrQS5mb3JjZS54L0EubWFzcyp0LEEudmVsb2NpdHkueT1FKmMrQS5mb3JjZS55L0EubWFzcyp0LEEucG9zaXRpb25QcmV2Lng9QS5wb3NpdGlvbi54LEEucG9zaXRpb25QcmV2Lnk9QS5wb3NpdGlvbi55LEEucG9zaXRpb24ueCs9QS52ZWxvY2l0eS54LEEucG9zaXRpb24ueSs9QS52ZWxvY2l0eS55LEEuZGVsdGFUaW1lPWUsQS5hbmd1bGFyVmVsb2NpdHk9KEEuYW5nbGUtQS5hbmdsZVByZXYpKmMqbytBLnRvcnF1ZS9BLmluZXJ0aWEqdCxBLmFuZ2xlUHJldj1BLmFuZ2xlLEEuYW5nbGUrPUEuYW5ndWxhclZlbG9jaXR5O2Zvcih2YXIgUT0wO1E8QS5wYXJ0cy5sZW5ndGg7USsrKXt2YXIgdT1BLnBhcnRzW1FdO2kudHJhbnNsYXRlKHUudmVydGljZXMsQS52ZWxvY2l0eSksUT4wJiYodS5wb3NpdGlvbi54Kz1BLnZlbG9jaXR5LngsdS5wb3NpdGlvbi55Kz1BLnZlbG9jaXR5LnkpLDAhPT1BLmFuZ3VsYXJWZWxvY2l0eSYmKGkucm90YXRlKHUudmVydGljZXMsQS5hbmd1bGFyVmVsb2NpdHksQS5wb3NpdGlvbiksQi5yb3RhdGUodS5heGVzLEEuYW5ndWxhclZlbG9jaXR5KSxRPjAmJnIucm90YXRlQWJvdXQodS5wb3NpdGlvbixBLmFuZ3VsYXJWZWxvY2l0eSxBLnBvc2l0aW9uLHUucG9zaXRpb24pKSxhLnVwZGF0ZSh1LmJvdW5kcyx1LnZlcnRpY2VzLEEudmVsb2NpdHkpfX0sbi51cGRhdGVWZWxvY2l0aWVzPWZ1bmN0aW9uKEEpe3ZhciBlPW4uX2Jhc2VEZWx0YS9BLmRlbHRhVGltZSx0PUEudmVsb2NpdHk7dC54PShBLnBvc2l0aW9uLngtQS5wb3NpdGlvblByZXYueCkqZSx0Lnk9KEEucG9zaXRpb24ueS1BLnBvc2l0aW9uUHJldi55KSplLEEuc3BlZWQ9TWF0aC5zcXJ0KHQueCp0LngrdC55KnQueSksQS5hbmd1bGFyVmVsb2NpdHk9KEEuYW5nbGUtQS5hbmdsZVByZXYpKmUsQS5hbmd1bGFyU3BlZWQ9TWF0aC5hYnMoQS5hbmd1bGFyVmVsb2NpdHkpfSxuLmFwcGx5Rm9yY2U9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWUueC1BLnBvc2l0aW9uLngsaT1lLnktQS5wb3NpdGlvbi55O0EuZm9yY2UueCs9dC54LEEuZm9yY2UueSs9dC55LEEudG9ycXVlKz1uKnQueS1pKnQueH0sbi5fdG90YWxQcm9wZXJ0aWVzPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT17bWFzczowLGFyZWE6MCxpbmVydGlhOjAsY2VudHJlOnt4OjAseTowfX0sdD0xPT09QS5wYXJ0cy5sZW5ndGg/MDoxO3Q8QS5wYXJ0cy5sZW5ndGg7dCsrKXt2YXIgbj1BLnBhcnRzW3RdLGk9bi5tYXNzIT09MS8wP24ubWFzczoxO2UubWFzcys9aSxlLmFyZWErPW4uYXJlYSxlLmluZXJ0aWErPW4uaW5lcnRpYSxlLmNlbnRyZT1yLmFkZChlLmNlbnRyZSxyLm11bHQobi5wb3NpdGlvbixpKSl9cmV0dXJuIGUuY2VudHJlPXIuZGl2KGUuY2VudHJlLGUubWFzcyksZX19KCl9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDApO24ub249ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgbixpPWUuc3BsaXQoIiAiKSxyPTA7cjxpLmxlbmd0aDtyKyspbj1pW3JdLEEuZXZlbnRzPUEuZXZlbnRzfHx7fSxBLmV2ZW50c1tuXT1BLmV2ZW50c1tuXXx8W10sQS5ldmVudHNbbl0ucHVzaCh0KTtyZXR1cm4gdH0sbi5vZmY9ZnVuY3Rpb24oQSxlLHQpe2lmKGUpeyJmdW5jdGlvbiI9PXR5cGVvZiBlJiYodD1lLGU9aS5rZXlzKEEuZXZlbnRzKS5qb2luKCIgIikpO2Zvcih2YXIgbj1lLnNwbGl0KCIgIikscj0wO3I8bi5sZW5ndGg7cisrKXt2YXIgbz1BLmV2ZW50c1tuW3JdXSxzPVtdO2lmKHQmJm8pZm9yKHZhciBhPTA7YTxvLmxlbmd0aDthKyspb1thXSE9PXQmJnMucHVzaChvW2FdKTtBLmV2ZW50c1tuW3JdXT1zfX1lbHNlIEEuZXZlbnRzPXt9fSxuLnRyaWdnZXI9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuLHIsbyxzLGE9QS5ldmVudHM7aWYoYSYmaS5rZXlzKGEpLmxlbmd0aD4wKXt0fHwodD17fSksbj1lLnNwbGl0KCIgIik7Zm9yKHZhciBCPTA7QjxuLmxlbmd0aDtCKyspaWYobz1hW3I9bltCXV0peyhzPWkuY2xvbmUodCwhMSkpLm5hbWU9cixzLnNvdXJjZT1BO2Zvcih2YXIgYz0wO2M8by5sZW5ndGg7YysrKW9bY10uYXBwbHkoQSxbc10pfX19fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49e307QS5leHBvcnRzPW47dmFyIGk9dCg1KSxyPXQoMCksbz10KDEpLHM9dCg0KTtuLmNyZWF0ZT1mdW5jdGlvbihBKXtyZXR1cm4gci5leHRlbmQoe2lkOnIubmV4dElkKCksdHlwZToiY29tcG9zaXRlIixwYXJlbnQ6bnVsbCxpc01vZGlmaWVkOiExLGJvZGllczpbXSxjb25zdHJhaW50czpbXSxjb21wb3NpdGVzOltdLGxhYmVsOiJDb21wb3NpdGUiLHBsdWdpbjp7fSxjYWNoZTp7YWxsQm9kaWVzOm51bGwsYWxsQ29uc3RyYWludHM6bnVsbCxhbGxDb21wb3NpdGVzOm51bGx9fSxBKX0sbi5zZXRNb2RpZmllZD1mdW5jdGlvbihBLGUsdCxpKXtpZihBLmlzTW9kaWZpZWQ9ZSxlJiZBLmNhY2hlJiYoQS5jYWNoZS5hbGxCb2RpZXM9bnVsbCxBLmNhY2hlLmFsbENvbnN0cmFpbnRzPW51bGwsQS5jYWNoZS5hbGxDb21wb3NpdGVzPW51bGwpLHQmJkEucGFyZW50JiZuLnNldE1vZGlmaWVkKEEucGFyZW50LGUsdCxpKSxpKWZvcih2YXIgcj0wO3I8QS5jb21wb3NpdGVzLmxlbmd0aDtyKyspe3ZhciBvPUEuY29tcG9zaXRlc1tyXTtuLnNldE1vZGlmaWVkKG8sZSx0LGkpfX0sbi5hZGQ9ZnVuY3Rpb24oQSxlKXt2YXIgdD1bXS5jb25jYXQoZSk7aS50cmlnZ2VyKEEsImJlZm9yZUFkZCIse29iamVjdDplfSk7Zm9yKHZhciBvPTA7bzx0Lmxlbmd0aDtvKyspe3ZhciBzPXRbb107c3dpdGNoKHMudHlwZSl7Y2FzZSJib2R5IjppZihzLnBhcmVudCE9PXMpe3Iud2FybigiQ29tcG9zaXRlLmFkZDogc2tpcHBlZCBhZGRpbmcgYSBjb21wb3VuZCBib2R5IHBhcnQgKHlvdSBtdXN0IGFkZCBpdHMgcGFyZW50IGluc3RlYWQpIik7YnJlYWt9bi5hZGRCb2R5KEEscyk7YnJlYWs7Y2FzZSJjb25zdHJhaW50IjpuLmFkZENvbnN0cmFpbnQoQSxzKTticmVhaztjYXNlImNvbXBvc2l0ZSI6bi5hZGRDb21wb3NpdGUoQSxzKTticmVhaztjYXNlIm1vdXNlQ29uc3RyYWludCI6bi5hZGRDb25zdHJhaW50KEEscy5jb25zdHJhaW50KX19cmV0dXJuIGkudHJpZ2dlcihBLCJhZnRlckFkZCIse29iamVjdDplfSksQX0sbi5yZW1vdmU9ZnVuY3Rpb24oQSxlLHQpe3ZhciByPVtdLmNvbmNhdChlKTtpLnRyaWdnZXIoQSwiYmVmb3JlUmVtb3ZlIix7b2JqZWN0OmV9KTtmb3IodmFyIG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIHM9cltvXTtzd2l0Y2gocy50eXBlKXtjYXNlImJvZHkiOm4ucmVtb3ZlQm9keShBLHMsdCk7YnJlYWs7Y2FzZSJjb25zdHJhaW50IjpuLnJlbW92ZUNvbnN0cmFpbnQoQSxzLHQpO2JyZWFrO2Nhc2UiY29tcG9zaXRlIjpuLnJlbW92ZUNvbXBvc2l0ZShBLHMsdCk7YnJlYWs7Y2FzZSJtb3VzZUNvbnN0cmFpbnQiOm4ucmVtb3ZlQ29uc3RyYWludChBLHMuY29uc3RyYWludCl9fXJldHVybiBpLnRyaWdnZXIoQSwiYWZ0ZXJSZW1vdmUiLHtvYmplY3Q6ZX0pLEF9LG4uYWRkQ29tcG9zaXRlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuY29tcG9zaXRlcy5wdXNoKGUpLGUucGFyZW50PUEsbi5zZXRNb2RpZmllZChBLCEwLCEwLCExKSxBfSxuLnJlbW92ZUNvbXBvc2l0ZT1mdW5jdGlvbihBLGUsdCl7dmFyIGk9ci5pbmRleE9mKEEuY29tcG9zaXRlcyxlKTtpZigtMSE9PWkpe3ZhciBvPW4uYWxsQm9kaWVzKGUpO24ucmVtb3ZlQ29tcG9zaXRlQXQoQSxpKTtmb3IodmFyIHM9MDtzPG8ubGVuZ3RoO3MrKylvW3NdLnNsZWVwQ291bnRlcj0wfWlmKHQpZm9yKHM9MDtzPEEuY29tcG9zaXRlcy5sZW5ndGg7cysrKW4ucmVtb3ZlQ29tcG9zaXRlKEEuY29tcG9zaXRlc1tzXSxlLCEwKTtyZXR1cm4gQX0sbi5yZW1vdmVDb21wb3NpdGVBdD1mdW5jdGlvbihBLGUpe3JldHVybiBBLmNvbXBvc2l0ZXMuc3BsaWNlKGUsMSksbi5zZXRNb2RpZmllZChBLCEwLCEwLCExKSxBfSxuLmFkZEJvZHk9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5ib2RpZXMucHVzaChlKSxuLnNldE1vZGlmaWVkKEEsITAsITAsITEpLEF9LG4ucmVtb3ZlQm9keT1mdW5jdGlvbihBLGUsdCl7dmFyIGk9ci5pbmRleE9mKEEuYm9kaWVzLGUpO2lmKC0xIT09aSYmKG4ucmVtb3ZlQm9keUF0KEEsaSksZS5zbGVlcENvdW50ZXI9MCksdClmb3IodmFyIG89MDtvPEEuY29tcG9zaXRlcy5sZW5ndGg7bysrKW4ucmVtb3ZlQm9keShBLmNvbXBvc2l0ZXNbb10sZSwhMCk7cmV0dXJuIEF9LG4ucmVtb3ZlQm9keUF0PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuYm9kaWVzLnNwbGljZShlLDEpLG4uc2V0TW9kaWZpZWQoQSwhMCwhMCwhMSksQX0sbi5hZGRDb25zdHJhaW50PWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEuY29uc3RyYWludHMucHVzaChlKSxuLnNldE1vZGlmaWVkKEEsITAsITAsITEpLEF9LG4ucmVtb3ZlQ29uc3RyYWludD1mdW5jdGlvbihBLGUsdCl7dmFyIGk9ci5pbmRleE9mKEEuY29uc3RyYWludHMsZSk7aWYoLTEhPT1pJiZuLnJlbW92ZUNvbnN0cmFpbnRBdChBLGkpLHQpZm9yKHZhciBvPTA7bzxBLmNvbXBvc2l0ZXMubGVuZ3RoO28rKyluLnJlbW92ZUNvbnN0cmFpbnQoQS5jb21wb3NpdGVzW29dLGUsITApO3JldHVybiBBfSxuLnJlbW92ZUNvbnN0cmFpbnRBdD1mdW5jdGlvbihBLGUpe3JldHVybiBBLmNvbnN0cmFpbnRzLnNwbGljZShlLDEpLG4uc2V0TW9kaWZpZWQoQSwhMCwhMCwhMSksQX0sbi5jbGVhcj1mdW5jdGlvbihBLGUsdCl7aWYodClmb3IodmFyIGk9MDtpPEEuY29tcG9zaXRlcy5sZW5ndGg7aSsrKW4uY2xlYXIoQS5jb21wb3NpdGVzW2ldLGUsITApO3JldHVybiBlP0EuYm9kaWVzPUEuYm9kaWVzLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIEEuaXNTdGF0aWN9KSk6QS5ib2RpZXMubGVuZ3RoPTAsQS5jb25zdHJhaW50cy5sZW5ndGg9MCxBLmNvbXBvc2l0ZXMubGVuZ3RoPTAsbi5zZXRNb2RpZmllZChBLCEwLCEwLCExKSxBfSxuLmFsbEJvZGllcz1mdW5jdGlvbihBKXtpZihBLmNhY2hlJiZBLmNhY2hlLmFsbEJvZGllcylyZXR1cm4gQS5jYWNoZS5hbGxCb2RpZXM7Zm9yKHZhciBlPVtdLmNvbmNhdChBLmJvZGllcyksdD0wO3Q8QS5jb21wb3NpdGVzLmxlbmd0aDt0KyspZT1lLmNvbmNhdChuLmFsbEJvZGllcyhBLmNvbXBvc2l0ZXNbdF0pKTtyZXR1cm4gQS5jYWNoZSYmKEEuY2FjaGUuYWxsQm9kaWVzPWUpLGV9LG4uYWxsQ29uc3RyYWludHM9ZnVuY3Rpb24oQSl7aWYoQS5jYWNoZSYmQS5jYWNoZS5hbGxDb25zdHJhaW50cylyZXR1cm4gQS5jYWNoZS5hbGxDb25zdHJhaW50cztmb3IodmFyIGU9W10uY29uY2F0KEEuY29uc3RyYWludHMpLHQ9MDt0PEEuY29tcG9zaXRlcy5sZW5ndGg7dCsrKWU9ZS5jb25jYXQobi5hbGxDb25zdHJhaW50cyhBLmNvbXBvc2l0ZXNbdF0pKTtyZXR1cm4gQS5jYWNoZSYmKEEuY2FjaGUuYWxsQ29uc3RyYWludHM9ZSksZX0sbi5hbGxDb21wb3NpdGVzPWZ1bmN0aW9uKEEpe2lmKEEuY2FjaGUmJkEuY2FjaGUuYWxsQ29tcG9zaXRlcylyZXR1cm4gQS5jYWNoZS5hbGxDb21wb3NpdGVzO2Zvcih2YXIgZT1bXS5jb25jYXQoQS5jb21wb3NpdGVzKSx0PTA7dDxBLmNvbXBvc2l0ZXMubGVuZ3RoO3QrKyllPWUuY29uY2F0KG4uYWxsQ29tcG9zaXRlcyhBLmNvbXBvc2l0ZXNbdF0pKTtyZXR1cm4gQS5jYWNoZSYmKEEuY2FjaGUuYWxsQ29tcG9zaXRlcz1lKSxlfSxuLmdldD1mdW5jdGlvbihBLGUsdCl7dmFyIGkscjtzd2l0Y2godCl7Y2FzZSJib2R5IjppPW4uYWxsQm9kaWVzKEEpO2JyZWFrO2Nhc2UiY29uc3RyYWludCI6aT1uLmFsbENvbnN0cmFpbnRzKEEpO2JyZWFrO2Nhc2UiY29tcG9zaXRlIjppPW4uYWxsQ29tcG9zaXRlcyhBKS5jb25jYXQoQSl9cmV0dXJuIGk/MD09PShyPWkuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gQS5pZC50b1N0cmluZygpPT09ZS50b1N0cmluZygpfSkpKS5sZW5ndGg/bnVsbDpyWzBdOm51bGx9LG4ubW92ZT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG4ucmVtb3ZlKEEsZSksbi5hZGQodCxlKSxBfSxuLnJlYmFzZT1mdW5jdGlvbihBKXtmb3IodmFyIGU9bi5hbGxCb2RpZXMoQSkuY29uY2F0KG4uYWxsQ29uc3RyYWludHMoQSkpLmNvbmNhdChuLmFsbENvbXBvc2l0ZXMoQSkpLHQ9MDt0PGUubGVuZ3RoO3QrKyllW3RdLmlkPXIubmV4dElkKCk7cmV0dXJuIEF9LG4udHJhbnNsYXRlPWZ1bmN0aW9uKEEsZSx0KXtmb3IodmFyIGk9dD9uLmFsbEJvZGllcyhBKTpBLmJvZGllcyxyPTA7cjxpLmxlbmd0aDtyKyspcy50cmFuc2xhdGUoaVtyXSxlKTtyZXR1cm4gQX0sbi5yb3RhdGU9ZnVuY3Rpb24oQSxlLHQsaSl7Zm9yKHZhciByPU1hdGguY29zKGUpLG89TWF0aC5zaW4oZSksYT1pP24uYWxsQm9kaWVzKEEpOkEuYm9kaWVzLEI9MDtCPGEubGVuZ3RoO0IrKyl7dmFyIGM9YVtCXSxnPWMucG9zaXRpb24ueC10LngsRT1jLnBvc2l0aW9uLnktdC55O3Muc2V0UG9zaXRpb24oYyx7eDp0LngrKGcqci1FKm8pLHk6dC55KyhnKm8rRSpyKX0pLHMucm90YXRlKGMsZSl9cmV0dXJuIEF9LG4uc2NhbGU9ZnVuY3Rpb24oQSxlLHQsaSxyKXtmb3IodmFyIG89cj9uLmFsbEJvZGllcyhBKTpBLmJvZGllcyxhPTA7YTxvLmxlbmd0aDthKyspe3ZhciBCPW9bYV0sYz1CLnBvc2l0aW9uLngtaS54LGc9Qi5wb3NpdGlvbi55LWkueTtzLnNldFBvc2l0aW9uKEIse3g6aS54K2MqZSx5OmkueStnKnR9KSxzLnNjYWxlKEIsZSx0KX1yZXR1cm4gQX0sbi5ib3VuZHM9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPW4uYWxsQm9kaWVzKEEpLHQ9W10saT0wO2k8ZS5sZW5ndGg7aSs9MSl7dmFyIHI9ZVtpXTt0LnB1c2goci5ib3VuZHMubWluLHIuYm91bmRzLm1heCl9cmV0dXJuIG8uY3JlYXRlKHQpfX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoNCkscj10KDUpLG89dCgwKTtuLl9tb3Rpb25XYWtlVGhyZXNob2xkPS4xOCxuLl9tb3Rpb25TbGVlcFRocmVzaG9sZD0uMDgsbi5fbWluQmlhcz0uOSxuLnVwZGF0ZT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD1lL28uX2Jhc2VEZWx0YSxyPW4uX21vdGlvblNsZWVwVGhyZXNob2xkLHM9MDtzPEEubGVuZ3RoO3MrKyl7dmFyIGE9QVtzXSxCPWkuZ2V0U3BlZWQoYSksYz1pLmdldEFuZ3VsYXJTcGVlZChhKSxnPUIqQitjKmM7aWYoMD09PWEuZm9yY2UueCYmMD09PWEuZm9yY2UueSl7dmFyIEU9TWF0aC5taW4oYS5tb3Rpb24sZyksUT1NYXRoLm1heChhLm1vdGlvbixnKTthLm1vdGlvbj1uLl9taW5CaWFzKkUrKDEtbi5fbWluQmlhcykqUSxhLnNsZWVwVGhyZXNob2xkPjAmJmEubW90aW9uPHI/KGEuc2xlZXBDb3VudGVyKz0xLGEuc2xlZXBDb3VudGVyPj1hLnNsZWVwVGhyZXNob2xkL3QmJm4uc2V0KGEsITApKTphLnNsZWVwQ291bnRlcj4wJiYoYS5zbGVlcENvdW50ZXItPTEpfWVsc2Ugbi5zZXQoYSwhMSl9fSxuLmFmdGVyQ29sbGlzaW9ucz1mdW5jdGlvbihBKXtmb3IodmFyIGU9bi5fbW90aW9uU2xlZXBUaHJlc2hvbGQsdD0wO3Q8QS5sZW5ndGg7dCsrKXt2YXIgaT1BW3RdO2lmKGkuaXNBY3RpdmUpe3ZhciByPWkuY29sbGlzaW9uLG89ci5ib2R5QS5wYXJlbnQscz1yLmJvZHlCLnBhcmVudDtpZighKG8uaXNTbGVlcGluZyYmcy5pc1NsZWVwaW5nfHxvLmlzU3RhdGljfHxzLmlzU3RhdGljKSYmKG8uaXNTbGVlcGluZ3x8cy5pc1NsZWVwaW5nKSl7dmFyIGE9by5pc1NsZWVwaW5nJiYhby5pc1N0YXRpYz9vOnMsQj1hPT09bz9zOm87IWEuaXNTdGF0aWMmJkIubW90aW9uPmUmJm4uc2V0KGEsITEpfX19fSxuLnNldD1mdW5jdGlvbihBLGUpe3ZhciB0PUEuaXNTbGVlcGluZztlPyhBLmlzU2xlZXBpbmc9ITAsQS5zbGVlcENvdW50ZXI9QS5zbGVlcFRocmVzaG9sZCxBLnBvc2l0aW9uSW1wdWxzZS54PTAsQS5wb3NpdGlvbkltcHVsc2UueT0wLEEucG9zaXRpb25QcmV2Lng9QS5wb3NpdGlvbi54LEEucG9zaXRpb25QcmV2Lnk9QS5wb3NpdGlvbi55LEEuYW5nbGVQcmV2PUEuYW5nbGUsQS5zcGVlZD0wLEEuYW5ndWxhclNwZWVkPTAsQS5tb3Rpb249MCx0fHxyLnRyaWdnZXIoQSwic2xlZXBTdGFydCIpKTooQS5pc1NsZWVwaW5nPSExLEEuc2xlZXBDb3VudGVyPTAsdCYmci50cmlnZ2VyKEEsInNsZWVwRW5kIikpfX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpLHIsbyxzPXQoMyksYT10KDkpO2k9W10scj17b3ZlcmxhcDowLGF4aXM6bnVsbH0sbz17b3ZlcmxhcDowLGF4aXM6bnVsbH0sbi5jcmVhdGU9ZnVuY3Rpb24oQSxlKXtyZXR1cm57cGFpcjpudWxsLGNvbGxpZGVkOiExLGJvZHlBOkEsYm9keUI6ZSxwYXJlbnRBOkEucGFyZW50LHBhcmVudEI6ZS5wYXJlbnQsZGVwdGg6MCxub3JtYWw6e3g6MCx5OjB9LHRhbmdlbnQ6e3g6MCx5OjB9LHBlbmV0cmF0aW9uOnt4OjAseTowfSxzdXBwb3J0czpbbnVsbCxudWxsXSxzdXBwb3J0Q291bnQ6MH19LG4uY29sbGlkZXM9ZnVuY3Rpb24oQSxlLHQpe2lmKG4uX292ZXJsYXBBeGVzKHIsQS52ZXJ0aWNlcyxlLnZlcnRpY2VzLEEuYXhlcyksci5vdmVybGFwPD0wKXJldHVybiBudWxsO2lmKG4uX292ZXJsYXBBeGVzKG8sZS52ZXJ0aWNlcyxBLnZlcnRpY2VzLGUuYXhlcyksby5vdmVybGFwPD0wKXJldHVybiBudWxsO3ZhciBpLEIsYz10JiZ0LnRhYmxlW2EuaWQoQSxlKV07Yz9pPWMuY29sbGlzaW9uOigoaT1uLmNyZWF0ZShBLGUpKS5jb2xsaWRlZD0hMCxpLmJvZHlBPUEuaWQ8ZS5pZD9BOmUsaS5ib2R5Qj1BLmlkPGUuaWQ/ZTpBLGkucGFyZW50QT1pLmJvZHlBLnBhcmVudCxpLnBhcmVudEI9aS5ib2R5Qi5wYXJlbnQpLEE9aS5ib2R5QSxlPWkuYm9keUIsQj1yLm92ZXJsYXA8by5vdmVybGFwP3I6bzt2YXIgZz1pLm5vcm1hbCxFPWkudGFuZ2VudCxRPWkucGVuZXRyYXRpb24sdT1pLnN1cHBvcnRzLGw9Qi5vdmVybGFwLGg9Qi5heGlzLHc9aC54LEM9aC55O3cqKGUucG9zaXRpb24ueC1BLnBvc2l0aW9uLngpK0MqKGUucG9zaXRpb24ueS1BLnBvc2l0aW9uLnkpPj0wJiYodz0tdyxDPS1DKSxnLng9dyxnLnk9QyxFLng9LUMsRS55PXcsUS54PXcqbCxRLnk9QypsLGkuZGVwdGg9bDt2YXIgST1uLl9maW5kU3VwcG9ydHMoQSxlLGcsMSksTT0wO2lmKHMuY29udGFpbnMoQS52ZXJ0aWNlcyxJWzBdKSYmKHVbTSsrXT1JWzBdKSxzLmNvbnRhaW5zKEEudmVydGljZXMsSVsxXSkmJih1W00rK109SVsxXSksTTwyKXt2YXIgZD1uLl9maW5kU3VwcG9ydHMoZSxBLGcsLTEpO3MuY29udGFpbnMoZS52ZXJ0aWNlcyxkWzBdKSYmKHVbTSsrXT1kWzBdKSxNPDImJnMuY29udGFpbnMoZS52ZXJ0aWNlcyxkWzFdKSYmKHVbTSsrXT1kWzFdKX1yZXR1cm4gMD09PU0mJih1W00rK109SVswXSksaS5zdXBwb3J0Q291bnQ9TSxpfSxuLl9vdmVybGFwQXhlcz1mdW5jdGlvbihBLGUsdCxuKXt2YXIgaSxyLG8scyxhLEIsYz1lLmxlbmd0aCxnPXQubGVuZ3RoLEU9ZVswXS54LFE9ZVswXS55LHU9dFswXS54LGw9dFswXS55LGg9bi5sZW5ndGgsdz1OdW1iZXIuTUFYX1ZBTFVFLEM9MDtmb3IoYT0wO2E8aDthKyspe3ZhciBJPW5bYV0sTT1JLngsZD1JLnkscD1FKk0rUSpkLG09dSpNK2wqZCxGPXAsRD1tO2ZvcihCPTE7QjxjO0IrPTEpKHM9ZVtCXS54Kk0rZVtCXS55KmQpPkY/Rj1zOnM8cCYmKHA9cyk7Zm9yKEI9MTtCPGc7Qis9MSkocz10W0JdLngqTSt0W0JdLnkqZCk+RD9EPXM6czxtJiYobT1zKTtpZigoaT0ocj1GLW0pPChvPUQtcCk/cjpvKTx3JiYodz1pLEM9YSxpPD0wKSlicmVha31BLmF4aXM9bltDXSxBLm92ZXJsYXA9d30sbi5fZmluZFN1cHBvcnRzPWZ1bmN0aW9uKEEsZSx0LG4pe3ZhciByLG8scyxhPWUudmVydGljZXMsQj1hLmxlbmd0aCxjPUEucG9zaXRpb24ueCxnPUEucG9zaXRpb24ueSxFPXQueCpuLFE9dC55Km4sdT1hWzBdLGw9dSxoPUUqKGMtbC54KStRKihnLWwueSk7Zm9yKHM9MTtzPEI7cys9MSkobz1FKihjLShsPWFbc10pLngpK1EqKGctbC55KSk8aCYmKGg9byx1PWwpO3JldHVybiBoPUUqKGMtKHI9YVsoQit1LmluZGV4LTEpJUJdKS54KStRKihnLXIueSksRSooYy0obD1hWyh1LmluZGV4KzEpJUJdKS54KStRKihnLWwueSk8aD8oaVswXT11LGlbMV09bCxpKTooaVswXT11LGlbMV09cixpKX19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDE2KTtuLmNyZWF0ZT1mdW5jdGlvbihBLGUpe3ZhciB0PUEuYm9keUEscj1BLmJvZHlCLG89e2lkOm4uaWQodCxyKSxib2R5QTp0LGJvZHlCOnIsY29sbGlzaW9uOkEsY29udGFjdHM6W2kuY3JlYXRlKCksaS5jcmVhdGUoKV0sY29udGFjdENvdW50OjAsc2VwYXJhdGlvbjowLGlzQWN0aXZlOiEwLGlzU2Vuc29yOnQuaXNTZW5zb3J8fHIuaXNTZW5zb3IsdGltZUNyZWF0ZWQ6ZSx0aW1lVXBkYXRlZDplLGludmVyc2VNYXNzOjAsZnJpY3Rpb246MCxmcmljdGlvblN0YXRpYzowLHJlc3RpdHV0aW9uOjAsc2xvcDowfTtyZXR1cm4gbi51cGRhdGUobyxBLGUpLG99LG4udXBkYXRlPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1lLnN1cHBvcnRzLGk9ZS5zdXBwb3J0Q291bnQscj1BLmNvbnRhY3RzLG89ZS5wYXJlbnRBLHM9ZS5wYXJlbnRCO0EuaXNBY3RpdmU9ITAsQS50aW1lVXBkYXRlZD10LEEuY29sbGlzaW9uPWUsQS5zZXBhcmF0aW9uPWUuZGVwdGgsQS5pbnZlcnNlTWFzcz1vLmludmVyc2VNYXNzK3MuaW52ZXJzZU1hc3MsQS5mcmljdGlvbj1vLmZyaWN0aW9uPHMuZnJpY3Rpb24/by5mcmljdGlvbjpzLmZyaWN0aW9uLEEuZnJpY3Rpb25TdGF0aWM9by5mcmljdGlvblN0YXRpYz5zLmZyaWN0aW9uU3RhdGljP28uZnJpY3Rpb25TdGF0aWM6cy5mcmljdGlvblN0YXRpYyxBLnJlc3RpdHV0aW9uPW8ucmVzdGl0dXRpb24+cy5yZXN0aXR1dGlvbj9vLnJlc3RpdHV0aW9uOnMucmVzdGl0dXRpb24sQS5zbG9wPW8uc2xvcD5zLnNsb3A/by5zbG9wOnMuc2xvcCxBLmNvbnRhY3RDb3VudD1pLGUucGFpcj1BO3ZhciBhPW5bMF0sQj1yWzBdLGM9blsxXSxnPXJbMV07Zy52ZXJ0ZXghPT1hJiZCLnZlcnRleCE9PWN8fChyWzFdPUIsclswXT1CPWcsZz1yWzFdKSxCLnZlcnRleD1hLGcudmVydGV4PWN9LG4uc2V0QWN0aXZlPWZ1bmN0aW9uKEEsZSx0KXtlPyhBLmlzQWN0aXZlPSEwLEEudGltZVVwZGF0ZWQ9dCk6KEEuaXNBY3RpdmU9ITEsQS5jb250YWN0Q291bnQ9MCl9LG4uaWQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5pZDxlLmlkP0EuaWQudG9TdHJpbmcoMzYpKyI6IitlLmlkLnRvU3RyaW5nKDM2KTplLmlkLnRvU3RyaW5nKDM2KSsiOiIrQS5pZC50b1N0cmluZygzNil9fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49e307QS5leHBvcnRzPW47dmFyIGk9dCgzKSxyPXQoMiksbz10KDcpLHM9dCgxKSxhPXQoMTEpLEI9dCgwKTtuLl93YXJtaW5nPS40LG4uX3RvcnF1ZURhbXBlbj0xLG4uX21pbkxlbmd0aD0xZS02LG4uY3JlYXRlPWZ1bmN0aW9uKEEpe3ZhciBlPUE7ZS5ib2R5QSYmIWUucG9pbnRBJiYoZS5wb2ludEE9e3g6MCx5OjB9KSxlLmJvZHlCJiYhZS5wb2ludEImJihlLnBvaW50Qj17eDowLHk6MH0pO3ZhciB0PWUuYm9keUE/ci5hZGQoZS5ib2R5QS5wb3NpdGlvbixlLnBvaW50QSk6ZS5wb2ludEEsbj1lLmJvZHlCP3IuYWRkKGUuYm9keUIucG9zaXRpb24sZS5wb2ludEIpOmUucG9pbnRCLGk9ci5tYWduaXR1ZGUoci5zdWIodCxuKSk7ZS5sZW5ndGg9dm9pZCAwIT09ZS5sZW5ndGg/ZS5sZW5ndGg6aSxlLmlkPWUuaWR8fEIubmV4dElkKCksZS5sYWJlbD1lLmxhYmVsfHwiQ29uc3RyYWludCIsZS50eXBlPSJjb25zdHJhaW50IixlLnN0aWZmbmVzcz1lLnN0aWZmbmVzc3x8KGUubGVuZ3RoPjA/MTouNyksZS5kYW1waW5nPWUuZGFtcGluZ3x8MCxlLmFuZ3VsYXJTdGlmZm5lc3M9ZS5hbmd1bGFyU3RpZmZuZXNzfHwwLGUuYW5nbGVBPWUuYm9keUE/ZS5ib2R5QS5hbmdsZTplLmFuZ2xlQSxlLmFuZ2xlQj1lLmJvZHlCP2UuYm9keUIuYW5nbGU6ZS5hbmdsZUIsZS5wbHVnaW49e307dmFyIG89e3Zpc2libGU6ITAsbGluZVdpZHRoOjIsc3Ryb2tlU3R5bGU6IiNmZmZmZmYiLHR5cGU6ImxpbmUiLGFuY2hvcnM6ITB9O3JldHVybiAwPT09ZS5sZW5ndGgmJmUuc3RpZmZuZXNzPi4xPyhvLnR5cGU9InBpbiIsby5hbmNob3JzPSExKTplLnN0aWZmbmVzczwuOSYmKG8udHlwZT0ic3ByaW5nIiksZS5yZW5kZXI9Qi5leHRlbmQobyxlLnJlbmRlciksZX0sbi5wcmVTb2x2ZUFsbD1mdW5jdGlvbihBKXtmb3IodmFyIGU9MDtlPEEubGVuZ3RoO2UrPTEpe3ZhciB0PUFbZV0sbj10LmNvbnN0cmFpbnRJbXB1bHNlO3QuaXNTdGF0aWN8fDA9PT1uLngmJjA9PT1uLnkmJjA9PT1uLmFuZ2xlfHwodC5wb3NpdGlvbi54Kz1uLngsdC5wb3NpdGlvbi55Kz1uLnksdC5hbmdsZSs9bi5hbmdsZSl9fSxuLnNvbHZlQWxsPWZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PUIuY2xhbXAoZS9CLl9iYXNlRGVsdGEsMCwxKSxpPTA7aTxBLmxlbmd0aDtpKz0xKXt2YXIgcj1BW2ldLG89IXIuYm9keUF8fHIuYm9keUEmJnIuYm9keUEuaXNTdGF0aWMscz0hci5ib2R5Qnx8ci5ib2R5QiYmci5ib2R5Qi5pc1N0YXRpYzsob3x8cykmJm4uc29sdmUoQVtpXSx0KX1mb3IoaT0wO2k8QS5sZW5ndGg7aSs9MSlvPSEocj1BW2ldKS5ib2R5QXx8ci5ib2R5QSYmci5ib2R5QS5pc1N0YXRpYyxzPSFyLmJvZHlCfHxyLmJvZHlCJiZyLmJvZHlCLmlzU3RhdGljLG98fHN8fG4uc29sdmUoQVtpXSx0KX0sbi5zb2x2ZT1mdW5jdGlvbihBLGUpe3ZhciB0PUEuYm9keUEsaT1BLmJvZHlCLG89QS5wb2ludEEscz1BLnBvaW50QjtpZih0fHxpKXt0JiYhdC5pc1N0YXRpYyYmKHIucm90YXRlKG8sdC5hbmdsZS1BLmFuZ2xlQSxvKSxBLmFuZ2xlQT10LmFuZ2xlKSxpJiYhaS5pc1N0YXRpYyYmKHIucm90YXRlKHMsaS5hbmdsZS1BLmFuZ2xlQixzKSxBLmFuZ2xlQj1pLmFuZ2xlKTt2YXIgYT1vLEI9cztpZih0JiYoYT1yLmFkZCh0LnBvc2l0aW9uLG8pKSxpJiYoQj1yLmFkZChpLnBvc2l0aW9uLHMpKSxhJiZCKXt2YXIgYz1yLnN1YihhLEIpLGc9ci5tYWduaXR1ZGUoYyk7ZzxuLl9taW5MZW5ndGgmJihnPW4uX21pbkxlbmd0aCk7dmFyIEUsUSx1LGwsaCx3PShnLUEubGVuZ3RoKS9nLEM9QS5zdGlmZm5lc3M+PTF8fDA9PT1BLmxlbmd0aD9BLnN0aWZmbmVzcyplOkEuc3RpZmZuZXNzKmUqZSxJPUEuZGFtcGluZyplLE09ci5tdWx0KGMsdypDKSxkPSh0P3QuaW52ZXJzZU1hc3M6MCkrKGk/aS5pbnZlcnNlTWFzczowKSxwPWQrKCh0P3QuaW52ZXJzZUluZXJ0aWE6MCkrKGk/aS5pbnZlcnNlSW5lcnRpYTowKSk7aWYoST4wKXt2YXIgbT1yLmNyZWF0ZSgpO3U9ci5kaXYoYyxnKSxoPXIuc3ViKGkmJnIuc3ViKGkucG9zaXRpb24saS5wb3NpdGlvblByZXYpfHxtLHQmJnIuc3ViKHQucG9zaXRpb24sdC5wb3NpdGlvblByZXYpfHxtKSxsPXIuZG90KHUsaCl9dCYmIXQuaXNTdGF0aWMmJihRPXQuaW52ZXJzZU1hc3MvZCx0LmNvbnN0cmFpbnRJbXB1bHNlLngtPU0ueCpRLHQuY29uc3RyYWludEltcHVsc2UueS09TS55KlEsdC5wb3NpdGlvbi54LT1NLngqUSx0LnBvc2l0aW9uLnktPU0ueSpRLEk+MCYmKHQucG9zaXRpb25QcmV2LngtPUkqdS54KmwqUSx0LnBvc2l0aW9uUHJldi55LT1JKnUueSpsKlEpLEU9ci5jcm9zcyhvLE0pL3Aqbi5fdG9ycXVlRGFtcGVuKnQuaW52ZXJzZUluZXJ0aWEqKDEtQS5hbmd1bGFyU3RpZmZuZXNzKSx0LmNvbnN0cmFpbnRJbXB1bHNlLmFuZ2xlLT1FLHQuYW5nbGUtPUUpLGkmJiFpLmlzU3RhdGljJiYoUT1pLmludmVyc2VNYXNzL2QsaS5jb25zdHJhaW50SW1wdWxzZS54Kz1NLngqUSxpLmNvbnN0cmFpbnRJbXB1bHNlLnkrPU0ueSpRLGkucG9zaXRpb24ueCs9TS54KlEsaS5wb3NpdGlvbi55Kz1NLnkqUSxJPjAmJihpLnBvc2l0aW9uUHJldi54Kz1JKnUueCpsKlEsaS5wb3NpdGlvblByZXYueSs9SSp1LnkqbCpRKSxFPXIuY3Jvc3MocyxNKS9wKm4uX3RvcnF1ZURhbXBlbippLmludmVyc2VJbmVydGlhKigxLUEuYW5ndWxhclN0aWZmbmVzcyksaS5jb25zdHJhaW50SW1wdWxzZS5hbmdsZSs9RSxpLmFuZ2xlKz1FKX19fSxuLnBvc3RTb2x2ZUFsbD1mdW5jdGlvbihBKXtmb3IodmFyIGU9MDtlPEEubGVuZ3RoO2UrKyl7dmFyIHQ9QVtlXSxCPXQuY29uc3RyYWludEltcHVsc2U7aWYoISh0LmlzU3RhdGljfHwwPT09Qi54JiYwPT09Qi55JiYwPT09Qi5hbmdsZSkpe28uc2V0KHQsITEpO2Zvcih2YXIgYz0wO2M8dC5wYXJ0cy5sZW5ndGg7YysrKXt2YXIgZz10LnBhcnRzW2NdO2kudHJhbnNsYXRlKGcudmVydGljZXMsQiksYz4wJiYoZy5wb3NpdGlvbi54Kz1CLngsZy5wb3NpdGlvbi55Kz1CLnkpLDAhPT1CLmFuZ2xlJiYoaS5yb3RhdGUoZy52ZXJ0aWNlcyxCLmFuZ2xlLHQucG9zaXRpb24pLGEucm90YXRlKGcuYXhlcyxCLmFuZ2xlKSxjPjAmJnIucm90YXRlQWJvdXQoZy5wb3NpdGlvbixCLmFuZ2xlLHQucG9zaXRpb24sZy5wb3NpdGlvbikpLHMudXBkYXRlKGcuYm91bmRzLGcudmVydGljZXMsdC52ZWxvY2l0eSl9Qi5hbmdsZSo9bi5fd2FybWluZyxCLngqPW4uX3dhcm1pbmcsQi55Kj1uLl93YXJtaW5nfX19LG4ucG9pbnRBV29ybGQ9ZnVuY3Rpb24oQSl7cmV0dXJue3g6KEEuYm9keUE/QS5ib2R5QS5wb3NpdGlvbi54OjApKyhBLnBvaW50QT9BLnBvaW50QS54OjApLHk6KEEuYm9keUE/QS5ib2R5QS5wb3NpdGlvbi55OjApKyhBLnBvaW50QT9BLnBvaW50QS55OjApfX0sbi5wb2ludEJXb3JsZD1mdW5jdGlvbihBKXtyZXR1cm57eDooQS5ib2R5Qj9BLmJvZHlCLnBvc2l0aW9uLng6MCkrKEEucG9pbnRCP0EucG9pbnRCLng6MCkseTooQS5ib2R5Qj9BLmJvZHlCLnBvc2l0aW9uLnk6MCkrKEEucG9pbnRCP0EucG9pbnRCLnk6MCl9fSxuLmN1cnJlbnRMZW5ndGg9ZnVuY3Rpb24oQSl7dmFyIGU9KEEuYm9keUE/QS5ib2R5QS5wb3NpdGlvbi54OjApKyhBLnBvaW50QT9BLnBvaW50QS54OjApLHQ9KEEuYm9keUE/QS5ib2R5QS5wb3NpdGlvbi55OjApKyhBLnBvaW50QT9BLnBvaW50QS55OjApLG49ZS0oKEEuYm9keUI/QS5ib2R5Qi5wb3NpdGlvbi54OjApKyhBLnBvaW50Qj9BLnBvaW50Qi54OjApKSxpPXQtKChBLmJvZHlCP0EuYm9keUIucG9zaXRpb24ueTowKSsoQS5wb2ludEI/QS5wb2ludEIueTowKSk7cmV0dXJuIE1hdGguc3FydChuKm4raSppKX19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDIpLHI9dCgwKTtuLmZyb21WZXJ0aWNlcz1mdW5jdGlvbihBKXtmb3IodmFyIGU9e30sdD0wO3Q8QS5sZW5ndGg7dCsrKXt2YXIgbj0odCsxKSVBLmxlbmd0aCxvPWkubm9ybWFsaXNlKHt4OkFbbl0ueS1BW3RdLnkseTpBW3RdLngtQVtuXS54fSkscz0wPT09by55PzEvMDpvLngvby55O2Vbcz1zLnRvRml4ZWQoMykudG9TdHJpbmcoKV09b31yZXR1cm4gci52YWx1ZXMoZSl9LG4ucm90YXRlPWZ1bmN0aW9uKEEsZSl7aWYoMCE9PWUpZm9yKHZhciB0PU1hdGguY29zKGUpLG49TWF0aC5zaW4oZSksaT0wO2k8QS5sZW5ndGg7aSsrKXt2YXIgcixvPUFbaV07cj1vLngqdC1vLnkqbixvLnk9by54Km4rby55KnQsby54PXJ9fX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoMykscj10KDApLG89dCg0KSxzPXQoMSksYT10KDIpO24ucmVjdGFuZ2xlPWZ1bmN0aW9uKEEsZSx0LG4scyl7cz1zfHx7fTt2YXIgYT17bGFiZWw6IlJlY3RhbmdsZSBCb2R5Iixwb3NpdGlvbjp7eDpBLHk6ZX0sdmVydGljZXM6aS5mcm9tUGF0aCgiTCAwIDAgTCAiK3QrIiAwIEwgIit0KyIgIituKyIgTCAwICIrbil9O2lmKHMuY2hhbWZlcil7dmFyIEI9cy5jaGFtZmVyO2EudmVydGljZXM9aS5jaGFtZmVyKGEudmVydGljZXMsQi5yYWRpdXMsQi5xdWFsaXR5LEIucXVhbGl0eU1pbixCLnF1YWxpdHlNYXgpLGRlbGV0ZSBzLmNoYW1mZXJ9cmV0dXJuIG8uY3JlYXRlKHIuZXh0ZW5kKHt9LGEscykpfSxuLnRyYXBlem9pZD1mdW5jdGlvbihBLGUsdCxuLHMsYSl7YT1hfHx7fSxzPj0xJiZyLndhcm4oIkJvZGllcy50cmFwZXpvaWQ6IHNsb3BlIHBhcmFtZXRlciBtdXN0IGJlIDwgMS4iKTt2YXIgQixjPXQqKHMqPS41KSxnPWMrKDEtMipzKSp0LEU9ZytjO0I9czwuNT8iTCAwIDAgTCAiK2MrIiAiKy1uKyIgTCAiK2crIiAiKy1uKyIgTCAiK0UrIiAwIjoiTCAwIDAgTCAiK2crIiAiKy1uKyIgTCAiK0UrIiAwIjt2YXIgUT17bGFiZWw6IlRyYXBlem9pZCBCb2R5Iixwb3NpdGlvbjp7eDpBLHk6ZX0sdmVydGljZXM6aS5mcm9tUGF0aChCKX07aWYoYS5jaGFtZmVyKXt2YXIgdT1hLmNoYW1mZXI7US52ZXJ0aWNlcz1pLmNoYW1mZXIoUS52ZXJ0aWNlcyx1LnJhZGl1cyx1LnF1YWxpdHksdS5xdWFsaXR5TWluLHUucXVhbGl0eU1heCksZGVsZXRlIGEuY2hhbWZlcn1yZXR1cm4gby5jcmVhdGUoci5leHRlbmQoe30sUSxhKSl9LG4uY2lyY2xlPWZ1bmN0aW9uKEEsZSx0LGksbyl7aT1pfHx7fTt2YXIgcz17bGFiZWw6IkNpcmNsZSBCb2R5IixjaXJjbGVSYWRpdXM6dH07bz1vfHwyNTt2YXIgYT1NYXRoLmNlaWwoTWF0aC5tYXgoMTAsTWF0aC5taW4obyx0KSkpO3JldHVybiBhJTI9PTEmJihhKz0xKSxuLnBvbHlnb24oQSxlLGEsdCxyLmV4dGVuZCh7fSxzLGkpKX0sbi5wb2x5Z29uPWZ1bmN0aW9uKEEsZSx0LHMsYSl7aWYoYT1hfHx7fSx0PDMpcmV0dXJuIG4uY2lyY2xlKEEsZSxzLGEpO2Zvcih2YXIgQj0yKk1hdGguUEkvdCxjPSIiLGc9LjUqQixFPTA7RTx0O0UrPTEpe3ZhciBRPWcrRSpCLHU9TWF0aC5jb3MoUSkqcyxsPU1hdGguc2luKFEpKnM7Yys9IkwgIit1LnRvRml4ZWQoMykrIiAiK2wudG9GaXhlZCgzKSsiICJ9dmFyIGg9e2xhYmVsOiJQb2x5Z29uIEJvZHkiLHBvc2l0aW9uOnt4OkEseTplfSx2ZXJ0aWNlczppLmZyb21QYXRoKGMpfTtpZihhLmNoYW1mZXIpe3ZhciB3PWEuY2hhbWZlcjtoLnZlcnRpY2VzPWkuY2hhbWZlcihoLnZlcnRpY2VzLHcucmFkaXVzLHcucXVhbGl0eSx3LnF1YWxpdHlNaW4sdy5xdWFsaXR5TWF4KSxkZWxldGUgYS5jaGFtZmVyfXJldHVybiBvLmNyZWF0ZShyLmV4dGVuZCh7fSxoLGEpKX0sbi5mcm9tVmVydGljZXM9ZnVuY3Rpb24oQSxlLHQsbixCLGMsZyxFKXt2YXIgUSx1LGwsaCx3LEMsSSxNLGQscCxtPXIuZ2V0RGVjb21wKCk7Zm9yKFE9Qm9vbGVhbihtJiZtLnF1aWNrRGVjb21wKSxuPW58fHt9LGw9W10sQj12b2lkIDAhPT1CJiZCLGM9dm9pZCAwIT09Yz9jOi4wMSxnPXZvaWQgMCE9PWc/ZzoxMCxFPXZvaWQgMCE9PUU/RTouMDEsci5pc0FycmF5KHRbMF0pfHwodD1bdF0pLGQ9MDtkPHQubGVuZ3RoO2QrPTEpaWYodz10W2RdLCEoaD1pLmlzQ29udmV4KHcpKSYmIVEmJnIud2Fybk9uY2UoIkJvZGllcy5mcm9tVmVydGljZXM6IEluc3RhbGwgdGhlICdwb2x5LWRlY29tcCcgbGlicmFyeSBhbmQgdXNlIENvbW1vbi5zZXREZWNvbXAgb3IgcHJvdmlkZSAnZGVjb21wJyBhcyBhIGdsb2JhbCB0byBkZWNvbXBvc2UgY29uY2F2ZSB2ZXJ0aWNlcy4iKSxofHwhUSl3PWg/aS5jbG9ja3dpc2VTb3J0KHcpOmkuaHVsbCh3KSxsLnB1c2goe3Bvc2l0aW9uOnt4OkEseTplfSx2ZXJ0aWNlczp3fSk7ZWxzZXt2YXIgRj13Lm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuW0EueCxBLnldfSkpO20ubWFrZUNDVyhGKSwhMSE9PWMmJm0ucmVtb3ZlQ29sbGluZWFyUG9pbnRzKEYsYyksITEhPT1FJiZtLnJlbW92ZUR1cGxpY2F0ZVBvaW50cyYmbS5yZW1vdmVEdXBsaWNhdGVQb2ludHMoRixFKTt2YXIgRD1tLnF1aWNrRGVjb21wKEYpO2ZvcihDPTA7QzxELmxlbmd0aDtDKyspe3ZhciBZPURbQ10ubWFwKChmdW5jdGlvbihBKXtyZXR1cm57eDpBWzBdLHk6QVsxXX19KSk7Zz4wJiZpLmFyZWEoWSk8Z3x8bC5wdXNoKHtwb3NpdGlvbjppLmNlbnRyZShZKSx2ZXJ0aWNlczpZfSl9fWZvcihDPTA7QzxsLmxlbmd0aDtDKyspbFtDXT1vLmNyZWF0ZShyLmV4dGVuZChsW0NdLG4pKTtpZihCKWZvcihDPTA7QzxsLmxlbmd0aDtDKyspe3ZhciBmPWxbQ107Zm9yKEk9QysxO0k8bC5sZW5ndGg7SSsrKXt2YXIgTj1sW0ldO2lmKHMub3ZlcmxhcHMoZi5ib3VuZHMsTi5ib3VuZHMpKXt2YXIgVT1mLnZlcnRpY2VzLHk9Ti52ZXJ0aWNlcztmb3IoTT0wO008Zi52ZXJ0aWNlcy5sZW5ndGg7TSsrKWZvcihwPTA7cDxOLnZlcnRpY2VzLmxlbmd0aDtwKyspe3ZhciBUPWEubWFnbml0dWRlU3F1YXJlZChhLnN1YihVWyhNKzEpJVUubGVuZ3RoXSx5W3BdKSkseD1hLm1hZ25pdHVkZVNxdWFyZWQoYS5zdWIoVVtNXSx5WyhwKzEpJXkubGVuZ3RoXSkpO1Q8NSYmeDw1JiYoVVtNXS5pc0ludGVybmFsPSEwLHlbcF0uaXNJbnRlcm5hbD0hMCl9fX19cmV0dXJuIGwubGVuZ3RoPjE/KHU9by5jcmVhdGUoci5leHRlbmQoe3BhcnRzOmwuc2xpY2UoMCl9LG4pKSxvLnNldFBvc2l0aW9uKHUse3g6QSx5OmV9KSx1KTpsWzBdfX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoMCkscj10KDgpO24uY3JlYXRlPWZ1bmN0aW9uKEEpe3JldHVybiBpLmV4dGVuZCh7Ym9kaWVzOltdLGNvbGxpc2lvbnM6W10scGFpcnM6bnVsbH0sQSl9LG4uc2V0Qm9kaWVzPWZ1bmN0aW9uKEEsZSl7QS5ib2RpZXM9ZS5zbGljZSgwKX0sbi5jbGVhcj1mdW5jdGlvbihBKXtBLmJvZGllcz1bXSxBLmNvbGxpc2lvbnM9W119LG4uY29sbGlzaW9ucz1mdW5jdGlvbihBKXt2YXIgZSx0LGk9QS5wYWlycyxvPUEuYm9kaWVzLHM9by5sZW5ndGgsYT1uLmNhbkNvbGxpZGUsQj1yLmNvbGxpZGVzLGM9QS5jb2xsaXNpb25zLGc9MDtmb3Ioby5zb3J0KG4uX2NvbXBhcmVCb3VuZHNYKSxlPTA7ZTxzO2UrKyl7dmFyIEU9b1tlXSxRPUUuYm91bmRzLHU9RS5ib3VuZHMubWF4LngsbD1FLmJvdW5kcy5tYXgueSxoPUUuYm91bmRzLm1pbi55LHc9RS5pc1N0YXRpY3x8RS5pc1NsZWVwaW5nLEM9RS5wYXJ0cy5sZW5ndGgsST0xPT09Qztmb3IodD1lKzE7dDxzO3QrKyl7dmFyIE09b1t0XTtpZigoTj1NLmJvdW5kcykubWluLng+dSlicmVhaztpZighKGw8Ti5taW4ueXx8aD5OLm1heC55KSYmKCF3fHwhTS5pc1N0YXRpYyYmIU0uaXNTbGVlcGluZykmJmEoRS5jb2xsaXNpb25GaWx0ZXIsTS5jb2xsaXNpb25GaWx0ZXIpKXt2YXIgZD1NLnBhcnRzLmxlbmd0aDtpZihJJiYxPT09ZCkoWT1CKEUsTSxpKSkmJihjW2crK109WSk7ZWxzZSBmb3IodmFyIHA9ZD4xPzE6MCxtPUM+MT8xOjA7bTxDO20rKylmb3IodmFyIEY9RS5wYXJ0c1ttXSxEPShRPUYuYm91bmRzLHApO0Q8ZDtEKyspe3ZhciBZLGY9TS5wYXJ0c1tEXSxOPWYuYm91bmRzO1EubWluLng+Ti5tYXgueHx8US5tYXgueDxOLm1pbi54fHxRLm1heC55PE4ubWluLnl8fFEubWluLnk+Ti5tYXgueXx8KFk9QihGLGYsaSkpJiYoY1tnKytdPVkpfX19fXJldHVybiBjLmxlbmd0aCE9PWcmJihjLmxlbmd0aD1nKSxjfSxuLmNhbkNvbGxpZGU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS5ncm91cD09PWUuZ3JvdXAmJjAhPT1BLmdyb3VwP0EuZ3JvdXA+MDowIT0oQS5tYXNrJmUuY2F0ZWdvcnkpJiYwIT0oZS5tYXNrJkEuY2F0ZWdvcnkpfSxuLl9jb21wYXJlQm91bmRzWD1mdW5jdGlvbihBLGUpe3JldHVybiBBLmJvdW5kcy5taW4ueC1lLmJvdW5kcy5taW4ueH19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDApO24uY3JlYXRlPWZ1bmN0aW9uKEEpe3ZhciBlPXt9O3JldHVybiBBfHxpLmxvZygiTW91c2UuY3JlYXRlOiBlbGVtZW50IHdhcyB1bmRlZmluZWQsIGRlZmF1bHRpbmcgdG8gZG9jdW1lbnQuYm9keSIsIndhcm4iKSxlLmVsZW1lbnQ9QXx8ZG9jdW1lbnQuYm9keSxlLmFic29sdXRlPXt4OjAseTowfSxlLnBvc2l0aW9uPXt4OjAseTowfSxlLm1vdXNlZG93blBvc2l0aW9uPXt4OjAseTowfSxlLm1vdXNldXBQb3NpdGlvbj17eDowLHk6MH0sZS5vZmZzZXQ9e3g6MCx5OjB9LGUuc2NhbGU9e3g6MSx5OjF9LGUud2hlZWxEZWx0YT0wLGUuYnV0dG9uPS0xLGUucGl4ZWxSYXRpbz1wYXJzZUludChlLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLXBpeGVsLXJhdGlvIiksMTApfHwxLGUuc291cmNlRXZlbnRzPXttb3VzZW1vdmU6bnVsbCxtb3VzZWRvd246bnVsbCxtb3VzZXVwOm51bGwsbW91c2V3aGVlbDpudWxsfSxlLm1vdXNlbW92ZT1mdW5jdGlvbihBKXt2YXIgdD1uLl9nZXRSZWxhdGl2ZU1vdXNlUG9zaXRpb24oQSxlLmVsZW1lbnQsZS5waXhlbFJhdGlvKTtBLmNoYW5nZWRUb3VjaGVzJiYoZS5idXR0b249MCxBLnByZXZlbnREZWZhdWx0KCkpLGUuYWJzb2x1dGUueD10LngsZS5hYnNvbHV0ZS55PXQueSxlLnBvc2l0aW9uLng9ZS5hYnNvbHV0ZS54KmUuc2NhbGUueCtlLm9mZnNldC54LGUucG9zaXRpb24ueT1lLmFic29sdXRlLnkqZS5zY2FsZS55K2Uub2Zmc2V0LnksZS5zb3VyY2VFdmVudHMubW91c2Vtb3ZlPUF9LGUubW91c2Vkb3duPWZ1bmN0aW9uKEEpe3ZhciB0PW4uX2dldFJlbGF0aXZlTW91c2VQb3NpdGlvbihBLGUuZWxlbWVudCxlLnBpeGVsUmF0aW8pO0EuY2hhbmdlZFRvdWNoZXM/KGUuYnV0dG9uPTAsQS5wcmV2ZW50RGVmYXVsdCgpKTplLmJ1dHRvbj1BLmJ1dHRvbixlLmFic29sdXRlLng9dC54LGUuYWJzb2x1dGUueT10LnksZS5wb3NpdGlvbi54PWUuYWJzb2x1dGUueCplLnNjYWxlLngrZS5vZmZzZXQueCxlLnBvc2l0aW9uLnk9ZS5hYnNvbHV0ZS55KmUuc2NhbGUueStlLm9mZnNldC55LGUubW91c2Vkb3duUG9zaXRpb24ueD1lLnBvc2l0aW9uLngsZS5tb3VzZWRvd25Qb3NpdGlvbi55PWUucG9zaXRpb24ueSxlLnNvdXJjZUV2ZW50cy5tb3VzZWRvd249QX0sZS5tb3VzZXVwPWZ1bmN0aW9uKEEpe3ZhciB0PW4uX2dldFJlbGF0aXZlTW91c2VQb3NpdGlvbihBLGUuZWxlbWVudCxlLnBpeGVsUmF0aW8pO0EuY2hhbmdlZFRvdWNoZXMmJkEucHJldmVudERlZmF1bHQoKSxlLmJ1dHRvbj0tMSxlLmFic29sdXRlLng9dC54LGUuYWJzb2x1dGUueT10LnksZS5wb3NpdGlvbi54PWUuYWJzb2x1dGUueCplLnNjYWxlLngrZS5vZmZzZXQueCxlLnBvc2l0aW9uLnk9ZS5hYnNvbHV0ZS55KmUuc2NhbGUueStlLm9mZnNldC55LGUubW91c2V1cFBvc2l0aW9uLng9ZS5wb3NpdGlvbi54LGUubW91c2V1cFBvc2l0aW9uLnk9ZS5wb3NpdGlvbi55LGUuc291cmNlRXZlbnRzLm1vdXNldXA9QX0sZS5tb3VzZXdoZWVsPWZ1bmN0aW9uKEEpe2Uud2hlZWxEZWx0YT1NYXRoLm1heCgtMSxNYXRoLm1pbigxLEEud2hlZWxEZWx0YXx8LUEuZGV0YWlsKSksQS5wcmV2ZW50RGVmYXVsdCgpLGUuc291cmNlRXZlbnRzLm1vdXNld2hlZWw9QX0sbi5zZXRFbGVtZW50KGUsZS5lbGVtZW50KSxlfSxuLnNldEVsZW1lbnQ9ZnVuY3Rpb24oQSxlKXtBLmVsZW1lbnQ9ZSxlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsQS5tb3VzZW1vdmUse3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsQS5tb3VzZWRvd24se3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLEEubW91c2V1cCx7cGFzc2l2ZTohMH0pLGUuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLEEubW91c2V3aGVlbCx7cGFzc2l2ZTohMX0pLGUuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixBLm1vdXNlbW92ZSx7cGFzc2l2ZTohMX0pLGUuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsQS5tb3VzZWRvd24se3Bhc3NpdmU6ITF9KSxlLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixBLm1vdXNldXAse3Bhc3NpdmU6ITF9KX0sbi5jbGVhclNvdXJjZUV2ZW50cz1mdW5jdGlvbihBKXtBLnNvdXJjZUV2ZW50cy5tb3VzZW1vdmU9bnVsbCxBLnNvdXJjZUV2ZW50cy5tb3VzZWRvd249bnVsbCxBLnNvdXJjZUV2ZW50cy5tb3VzZXVwPW51bGwsQS5zb3VyY2VFdmVudHMubW91c2V3aGVlbD1udWxsLEEud2hlZWxEZWx0YT0wfSxuLnNldE9mZnNldD1mdW5jdGlvbihBLGUpe0Eub2Zmc2V0Lng9ZS54LEEub2Zmc2V0Lnk9ZS55LEEucG9zaXRpb24ueD1BLmFic29sdXRlLngqQS5zY2FsZS54K0Eub2Zmc2V0LngsQS5wb3NpdGlvbi55PUEuYWJzb2x1dGUueSpBLnNjYWxlLnkrQS5vZmZzZXQueX0sbi5zZXRTY2FsZT1mdW5jdGlvbihBLGUpe0Euc2NhbGUueD1lLngsQS5zY2FsZS55PWUueSxBLnBvc2l0aW9uLng9QS5hYnNvbHV0ZS54KkEuc2NhbGUueCtBLm9mZnNldC54LEEucG9zaXRpb24ueT1BLmFic29sdXRlLnkqQS5zY2FsZS55K0Eub2Zmc2V0Lnl9LG4uX2dldFJlbGF0aXZlTW91c2VQb3NpdGlvbj1mdW5jdGlvbihBLGUsdCl7dmFyIG4saSxyPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbz1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnR8fGRvY3VtZW50LmJvZHkucGFyZW50Tm9kZXx8ZG9jdW1lbnQuYm9keSxzPXZvaWQgMCE9PXdpbmRvdy5wYWdlWE9mZnNldD93aW5kb3cucGFnZVhPZmZzZXQ6by5zY3JvbGxMZWZ0LGE9dm9pZCAwIT09d2luZG93LnBhZ2VZT2Zmc2V0P3dpbmRvdy5wYWdlWU9mZnNldDpvLnNjcm9sbFRvcCxCPUEuY2hhbmdlZFRvdWNoZXM7cmV0dXJuIEI/KG49QlswXS5wYWdlWC1yLmxlZnQtcyxpPUJbMF0ucGFnZVktci50b3AtYSk6KG49QS5wYWdlWC1yLmxlZnQtcyxpPUEucGFnZVktci50b3AtYSkse3g6bi8oZS5jbGllbnRXaWR0aC8oZS53aWR0aHx8ZS5jbGllbnRXaWR0aCkqdCkseTppLyhlLmNsaWVudEhlaWdodC8oZS5oZWlnaHR8fGUuY2xpZW50SGVpZ2h0KSp0KX19fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49e307QS5leHBvcnRzPW47dmFyIGk9dCgwKTtuLl9yZWdpc3RyeT17fSxuLnJlZ2lzdGVyPWZ1bmN0aW9uKEEpe2lmKG4uaXNQbHVnaW4oQSl8fGkud2FybigiUGx1Z2luLnJlZ2lzdGVyOiIsbi50b1N0cmluZyhBKSwiZG9lcyBub3QgaW1wbGVtZW50IGFsbCByZXF1aXJlZCBmaWVsZHMuIiksQS5uYW1lIGluIG4uX3JlZ2lzdHJ5KXt2YXIgZT1uLl9yZWdpc3RyeVtBLm5hbWVdLHQ9bi52ZXJzaW9uUGFyc2UoQS52ZXJzaW9uKS5udW1iZXIscj1uLnZlcnNpb25QYXJzZShlLnZlcnNpb24pLm51bWJlcjt0PnI/KGkud2FybigiUGx1Z2luLnJlZ2lzdGVyOiIsbi50b1N0cmluZyhlKSwid2FzIHVwZ3JhZGVkIHRvIixuLnRvU3RyaW5nKEEpKSxuLl9yZWdpc3RyeVtBLm5hbWVdPUEpOnQ8cj9pLndhcm4oIlBsdWdpbi5yZWdpc3RlcjoiLG4udG9TdHJpbmcoZSksImNhbiBub3QgYmUgZG93bmdyYWRlZCB0byIsbi50b1N0cmluZyhBKSk6QSE9PWUmJmkud2FybigiUGx1Z2luLnJlZ2lzdGVyOiIsbi50b1N0cmluZyhBKSwiaXMgYWxyZWFkeSByZWdpc3RlcmVkIHRvIGRpZmZlcmVudCBwbHVnaW4gb2JqZWN0Iil9ZWxzZSBuLl9yZWdpc3RyeVtBLm5hbWVdPUE7cmV0dXJuIEF9LG4ucmVzb2x2ZT1mdW5jdGlvbihBKXtyZXR1cm4gbi5fcmVnaXN0cnlbbi5kZXBlbmRlbmN5UGFyc2UoQSkubmFtZV19LG4udG9TdHJpbmc9ZnVuY3Rpb24oQSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBBP0E6KEEubmFtZXx8ImFub255bW91cyIpKyJAIisoQS52ZXJzaW9ufHxBLnJhbmdlfHwiMC4wLjAiKX0sbi5pc1BsdWdpbj1mdW5jdGlvbihBKXtyZXR1cm4gQSYmQS5uYW1lJiZBLnZlcnNpb24mJkEuaW5zdGFsbH0sbi5pc1VzZWQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQS51c2VkLmluZGV4T2YoZSk+LTF9LG4uaXNGb3I9ZnVuY3Rpb24oQSxlKXt2YXIgdD1BLmZvciYmbi5kZXBlbmRlbmN5UGFyc2UoQS5mb3IpO3JldHVybiFBLmZvcnx8ZS5uYW1lPT09dC5uYW1lJiZuLnZlcnNpb25TYXRpc2ZpZXMoZS52ZXJzaW9uLHQucmFuZ2UpfSxuLnVzZT1mdW5jdGlvbihBLGUpe2lmKEEudXNlcz0oQS51c2VzfHxbXSkuY29uY2F0KGV8fFtdKSwwIT09QS51c2VzLmxlbmd0aCl7Zm9yKHZhciB0PW4uZGVwZW5kZW5jaWVzKEEpLHI9aS50b3BvbG9naWNhbFNvcnQodCksbz1bXSxzPTA7czxyLmxlbmd0aDtzKz0xKWlmKHJbc10hPT1BLm5hbWUpe3ZhciBhPW4ucmVzb2x2ZShyW3NdKTthP24uaXNVc2VkKEEsYS5uYW1lKXx8KG4uaXNGb3IoYSxBKXx8KGkud2FybigiUGx1Z2luLnVzZToiLG4udG9TdHJpbmcoYSksImlzIGZvciIsYS5mb3IsImJ1dCBpbnN0YWxsZWQgb24iLG4udG9TdHJpbmcoQSkrIi4iKSxhLl93YXJuZWQ9ITApLGEuaW5zdGFsbD9hLmluc3RhbGwoQSk6KGkud2FybigiUGx1Z2luLnVzZToiLG4udG9TdHJpbmcoYSksImRvZXMgbm90IHNwZWNpZnkgYW4gaW5zdGFsbCBmdW5jdGlvbi4iKSxhLl93YXJuZWQ9ITApLGEuX3dhcm5lZD8oby5wdXNoKCLwn5S2ICIrbi50b1N0cmluZyhhKSksZGVsZXRlIGEuX3dhcm5lZCk6by5wdXNoKCLinIUgIituLnRvU3RyaW5nKGEpKSxBLnVzZWQucHVzaChhLm5hbWUpKTpvLnB1c2goIuKdjCAiK3Jbc10pfW8ubGVuZ3RoPjAmJmkuaW5mbyhvLmpvaW4oIiAgIikpfWVsc2UgaS53YXJuKCJQbHVnaW4udXNlOiIsbi50b1N0cmluZyhBKSwiZG9lcyBub3Qgc3BlY2lmeSBhbnkgZGVwZW5kZW5jaWVzIHRvIGluc3RhbGwuIil9LG4uZGVwZW5kZW5jaWVzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9bi5kZXBlbmRlbmN5UGFyc2UoQSkscj10Lm5hbWU7aWYoIShyIGluKGU9ZXx8e30pKSl7QT1uLnJlc29sdmUoQSl8fEEsZVtyXT1pLm1hcChBLnVzZXN8fFtdLChmdW5jdGlvbihlKXtuLmlzUGx1Z2luKGUpJiZuLnJlZ2lzdGVyKGUpO3ZhciByPW4uZGVwZW5kZW5jeVBhcnNlKGUpLG89bi5yZXNvbHZlKGUpO3JldHVybiBvJiYhbi52ZXJzaW9uU2F0aXNmaWVzKG8udmVyc2lvbixyLnJhbmdlKT8oaS53YXJuKCJQbHVnaW4uZGVwZW5kZW5jaWVzOiIsbi50b1N0cmluZyhvKSwiZG9lcyBub3Qgc2F0aXNmeSIsbi50b1N0cmluZyhyKSwidXNlZCBieSIsbi50b1N0cmluZyh0KSsiLiIpLG8uX3dhcm5lZD0hMCxBLl93YXJuZWQ9ITApOm98fChpLndhcm4oIlBsdWdpbi5kZXBlbmRlbmNpZXM6IixuLnRvU3RyaW5nKGUpLCJ1c2VkIGJ5IixuLnRvU3RyaW5nKHQpLCJjb3VsZCBub3QgYmUgcmVzb2x2ZWQuIiksQS5fd2FybmVkPSEwKSxyLm5hbWV9KSk7Zm9yKHZhciBvPTA7bzxlW3JdLmxlbmd0aDtvKz0xKW4uZGVwZW5kZW5jaWVzKGVbcl1bb10sZSk7cmV0dXJuIGV9fSxuLmRlcGVuZGVuY3lQYXJzZT1mdW5jdGlvbihBKXtyZXR1cm4gaS5pc1N0cmluZyhBKT8oL15bXHctXSsoQChcKnxbXF5+XT9cZCtcLlxkK1wuXGQrKC1bMC05QS1aYS16LStdKyk/KSk/JC8udGVzdChBKXx8aS53YXJuKCJQbHVnaW4uZGVwZW5kZW5jeVBhcnNlOiIsQSwiaXMgbm90IGEgdmFsaWQgZGVwZW5kZW5jeSBzdHJpbmcuIikse25hbWU6QS5zcGxpdCgiQCIpWzBdLHJhbmdlOkEuc3BsaXQoIkAiKVsxXXx8IioifSk6e25hbWU6QS5uYW1lLHJhbmdlOkEucmFuZ2V8fEEudmVyc2lvbn19LG4udmVyc2lvblBhcnNlPWZ1bmN0aW9uKEEpe3ZhciBlPS9eKFwqKXwoXF58fnw+PXw+KT9ccyooKFxkKylcLihcZCspXC4oXGQrKSkoLVswLTlBLVphLXotK10rKT8kLztlLnRlc3QoQSl8fGkud2FybigiUGx1Z2luLnZlcnNpb25QYXJzZToiLEEsImlzIG5vdCBhIHZhbGlkIHZlcnNpb24gb3IgcmFuZ2UuIik7dmFyIHQ9ZS5leGVjKEEpLG49TnVtYmVyKHRbNF0pLHI9TnVtYmVyKHRbNV0pLG89TnVtYmVyKHRbNl0pO3JldHVybntpc1JhbmdlOkJvb2xlYW4odFsxXXx8dFsyXSksdmVyc2lvbjp0WzNdLHJhbmdlOkEsb3BlcmF0b3I6dFsxXXx8dFsyXXx8IiIsbWFqb3I6bixtaW5vcjpyLHBhdGNoOm8scGFydHM6W24scixvXSxwcmVyZWxlYXNlOnRbN10sbnVtYmVyOjFlOCpuKzFlNCpyK299fSxuLnZlcnNpb25TYXRpc2ZpZXM9ZnVuY3Rpb24oQSxlKXtlPWV8fCIqIjt2YXIgdD1uLnZlcnNpb25QYXJzZShlKSxpPW4udmVyc2lvblBhcnNlKEEpO2lmKHQuaXNSYW5nZSl7aWYoIioiPT09dC5vcGVyYXRvcnx8IioiPT09QSlyZXR1cm4hMDtpZigiPiI9PT10Lm9wZXJhdG9yKXJldHVybiBpLm51bWJlcj50Lm51bWJlcjtpZigiPj0iPT09dC5vcGVyYXRvcilyZXR1cm4gaS5udW1iZXI+PXQubnVtYmVyO2lmKCJ+Ij09PXQub3BlcmF0b3IpcmV0dXJuIGkubWFqb3I9PT10Lm1ham9yJiZpLm1pbm9yPT09dC5taW5vciYmaS5wYXRjaD49dC5wYXRjaDtpZigiXiI9PT10Lm9wZXJhdG9yKXJldHVybiB0Lm1ham9yPjA/aS5tYWpvcj09PXQubWFqb3ImJmkubnVtYmVyPj10Lm51bWJlcjp0Lm1pbm9yPjA/aS5taW5vcj09PXQubWlub3ImJmkucGF0Y2g+PXQucGF0Y2g6aS5wYXRjaD09PXQucGF0Y2h9cmV0dXJuIEE9PT1lfHwiKiI9PT1BfX0sZnVuY3Rpb24oQSxlKXt2YXIgdD17fTtBLmV4cG9ydHM9dCx0LmNyZWF0ZT1mdW5jdGlvbihBKXtyZXR1cm57dmVydGV4OkEsbm9ybWFsSW1wdWxzZTowLHRhbmdlbnRJbXB1bHNlOjB9fX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoNykscj10KDE4KSxvPXQoMTMpLHM9dCgxOSksYT10KDUpLEI9dCg2KSxjPXQoMTApLGc9dCgwKSxFPXQoNCk7bi5fZGVsdGFNYXg9MWUzLzYwLG4uY3JlYXRlPWZ1bmN0aW9uKEEpe0E9QXx8e307dmFyIGU9Zy5leHRlbmQoe3Bvc2l0aW9uSXRlcmF0aW9uczo2LHZlbG9jaXR5SXRlcmF0aW9uczo0LGNvbnN0cmFpbnRJdGVyYXRpb25zOjIsZW5hYmxlU2xlZXBpbmc6ITEsZXZlbnRzOltdLHBsdWdpbjp7fSxncmF2aXR5Ont4OjAseToxLHNjYWxlOi4wMDF9LHRpbWluZzp7dGltZXN0YW1wOjAsdGltZVNjYWxlOjEsbGFzdERlbHRhOjAsbGFzdEVsYXBzZWQ6MCxsYXN0VXBkYXRlc1BlckZyYW1lOjB9fSxBKTtyZXR1cm4gZS53b3JsZD1BLndvcmxkfHxCLmNyZWF0ZSh7bGFiZWw6IldvcmxkIn0pLGUucGFpcnM9QS5wYWlyc3x8cy5jcmVhdGUoKSxlLmRldGVjdG9yPUEuZGV0ZWN0b3J8fG8uY3JlYXRlKCksZS5kZXRlY3Rvci5wYWlycz1lLnBhaXJzLGUuZ3JpZD17YnVja2V0czpbXX0sZS53b3JsZC5ncmF2aXR5PWUuZ3Jhdml0eSxlLmJyb2FkcGhhc2U9ZS5ncmlkLGUubWV0cmljcz17fSxlfSxuLnVwZGF0ZT1mdW5jdGlvbihBLGUpe3ZhciB0LEU9Zy5ub3coKSxRPUEud29ybGQsdT1BLmRldGVjdG9yLGw9QS5wYWlycyxoPUEudGltaW5nLHc9aC50aW1lc3RhbXA7ZT5uLl9kZWx0YU1heCYmZy53YXJuT25jZSgiTWF0dGVyLkVuZ2luZS51cGRhdGU6IGRlbHRhIGFyZ3VtZW50IGlzIHJlY29tbWVuZGVkIHRvIGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byIsbi5fZGVsdGFNYXgudG9GaXhlZCgzKSwibXMuIiksZT12b2lkIDAhPT1lP2U6Zy5fYmFzZURlbHRhLGUqPWgudGltZVNjYWxlLGgudGltZXN0YW1wKz1lLGgubGFzdERlbHRhPWU7dmFyIEM9e3RpbWVzdGFtcDpoLnRpbWVzdGFtcCxkZWx0YTplfTthLnRyaWdnZXIoQSwiYmVmb3JlVXBkYXRlIixDKTt2YXIgST1CLmFsbEJvZGllcyhRKSxNPUIuYWxsQ29uc3RyYWludHMoUSk7Zm9yKFEuaXNNb2RpZmllZCYmKG8uc2V0Qm9kaWVzKHUsSSksQi5zZXRNb2RpZmllZChRLCExLCExLCEwKSksQS5lbmFibGVTbGVlcGluZyYmaS51cGRhdGUoSSxlKSxuLl9ib2RpZXNBcHBseUdyYXZpdHkoSSxBLmdyYXZpdHkpLGU+MCYmbi5fYm9kaWVzVXBkYXRlKEksZSksYS50cmlnZ2VyKEEsImJlZm9yZVNvbHZlIixDKSxjLnByZVNvbHZlQWxsKEkpLHQ9MDt0PEEuY29uc3RyYWludEl0ZXJhdGlvbnM7dCsrKWMuc29sdmVBbGwoTSxlKTtjLnBvc3RTb2x2ZUFsbChJKTt2YXIgZD1vLmNvbGxpc2lvbnModSk7cy51cGRhdGUobCxkLHcpLEEuZW5hYmxlU2xlZXBpbmcmJmkuYWZ0ZXJDb2xsaXNpb25zKGwubGlzdCksbC5jb2xsaXNpb25TdGFydC5sZW5ndGg+MCYmYS50cmlnZ2VyKEEsImNvbGxpc2lvblN0YXJ0Iix7cGFpcnM6bC5jb2xsaXNpb25TdGFydCx0aW1lc3RhbXA6aC50aW1lc3RhbXAsZGVsdGE6ZX0pO3ZhciBwPWcuY2xhbXAoMjAvQS5wb3NpdGlvbkl0ZXJhdGlvbnMsMCwxKTtmb3Ioci5wcmVTb2x2ZVBvc2l0aW9uKGwubGlzdCksdD0wO3Q8QS5wb3NpdGlvbkl0ZXJhdGlvbnM7dCsrKXIuc29sdmVQb3NpdGlvbihsLmxpc3QsZSxwKTtmb3Ioci5wb3N0U29sdmVQb3NpdGlvbihJKSxjLnByZVNvbHZlQWxsKEkpLHQ9MDt0PEEuY29uc3RyYWludEl0ZXJhdGlvbnM7dCsrKWMuc29sdmVBbGwoTSxlKTtmb3IoYy5wb3N0U29sdmVBbGwoSSksci5wcmVTb2x2ZVZlbG9jaXR5KGwubGlzdCksdD0wO3Q8QS52ZWxvY2l0eUl0ZXJhdGlvbnM7dCsrKXIuc29sdmVWZWxvY2l0eShsLmxpc3QsZSk7cmV0dXJuIG4uX2JvZGllc1VwZGF0ZVZlbG9jaXRpZXMoSSksbC5jb2xsaXNpb25BY3RpdmUubGVuZ3RoPjAmJmEudHJpZ2dlcihBLCJjb2xsaXNpb25BY3RpdmUiLHtwYWlyczpsLmNvbGxpc2lvbkFjdGl2ZSx0aW1lc3RhbXA6aC50aW1lc3RhbXAsZGVsdGE6ZX0pLGwuY29sbGlzaW9uRW5kLmxlbmd0aD4wJiZhLnRyaWdnZXIoQSwiY29sbGlzaW9uRW5kIix7cGFpcnM6bC5jb2xsaXNpb25FbmQsdGltZXN0YW1wOmgudGltZXN0YW1wLGRlbHRhOmV9KSxuLl9ib2RpZXNDbGVhckZvcmNlcyhJKSxhLnRyaWdnZXIoQSwiYWZ0ZXJVcGRhdGUiLEMpLEEudGltaW5nLmxhc3RFbGFwc2VkPWcubm93KCktRSxBfSxuLm1lcmdlPWZ1bmN0aW9uKEEsZSl7aWYoZy5leHRlbmQoQSxlKSxlLndvcmxkKXtBLndvcmxkPWUud29ybGQsbi5jbGVhcihBKTtmb3IodmFyIHQ9Qi5hbGxCb2RpZXMoQS53b3JsZCkscj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbz10W3JdO2kuc2V0KG8sITEpLG8uaWQ9Zy5uZXh0SWQoKX19fSxuLmNsZWFyPWZ1bmN0aW9uKEEpe3MuY2xlYXIoQS5wYWlycyksby5jbGVhcihBLmRldGVjdG9yKX0sbi5fYm9kaWVzQ2xlYXJGb3JjZXM9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUEubGVuZ3RoLHQ9MDt0PGU7dCsrKXt2YXIgbj1BW3RdO24uZm9yY2UueD0wLG4uZm9yY2UueT0wLG4udG9ycXVlPTB9fSxuLl9ib2RpZXNBcHBseUdyYXZpdHk9ZnVuY3Rpb24oQSxlKXt2YXIgdD12b2lkIDAhPT1lLnNjYWxlP2Uuc2NhbGU6LjAwMSxuPUEubGVuZ3RoO2lmKCgwIT09ZS54fHwwIT09ZS55KSYmMCE9PXQpZm9yKHZhciBpPTA7aTxuO2krKyl7dmFyIHI9QVtpXTtyLmlzU3RhdGljfHxyLmlzU2xlZXBpbmd8fChyLmZvcmNlLnkrPXIubWFzcyplLnkqdCxyLmZvcmNlLngrPXIubWFzcyplLngqdCl9fSxuLl9ib2RpZXNVcGRhdGU9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9QS5sZW5ndGgsbj0wO248dDtuKyspe3ZhciBpPUFbbl07aS5pc1N0YXRpY3x8aS5pc1NsZWVwaW5nfHxFLnVwZGF0ZShpLGUpfX0sbi5fYm9kaWVzVXBkYXRlVmVsb2NpdGllcz1mdW5jdGlvbihBKXtmb3IodmFyIGU9QS5sZW5ndGgsdD0wO3Q8ZTt0KyspRS51cGRhdGVWZWxvY2l0aWVzKEFbdF0pfX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoMykscj10KDApLG89dCgxKTtuLl9yZXN0aW5nVGhyZXNoPTIsbi5fcmVzdGluZ1RocmVzaFRhbmdlbnQ9TWF0aC5zcXJ0KDYpLG4uX3Bvc2l0aW9uRGFtcGVuPS45LG4uX3Bvc2l0aW9uV2FybWluZz0uOCxuLl9mcmljdGlvbk5vcm1hbE11bHRpcGxpZXI9NSxuLl9mcmljdGlvbk1heFN0YXRpYz1OdW1iZXIuTUFYX1ZBTFVFLG4ucHJlU29sdmVQb3NpdGlvbj1mdW5jdGlvbihBKXt2YXIgZSx0LG4saT1BLmxlbmd0aDtmb3IoZT0wO2U8aTtlKyspKHQ9QVtlXSkuaXNBY3RpdmUmJihuPXQuY29udGFjdENvdW50LHQuY29sbGlzaW9uLnBhcmVudEEudG90YWxDb250YWN0cys9bix0LmNvbGxpc2lvbi5wYXJlbnRCLnRvdGFsQ29udGFjdHMrPW4pfSxuLnNvbHZlUG9zaXRpb249ZnVuY3Rpb24oQSxlLHQpe3ZhciBpLG8scyxhLEIsYyxnLEUsUT1uLl9wb3NpdGlvbkRhbXBlbioodHx8MSksdT1yLmNsYW1wKGUvci5fYmFzZURlbHRhLDAsMSksbD1BLmxlbmd0aDtmb3IoaT0wO2k8bDtpKyspKG89QVtpXSkuaXNBY3RpdmUmJiFvLmlzU2Vuc29yJiYoYT0ocz1vLmNvbGxpc2lvbikucGFyZW50QSxCPXMucGFyZW50QixjPXMubm9ybWFsLG8uc2VwYXJhdGlvbj1zLmRlcHRoK2MueCooQi5wb3NpdGlvbkltcHVsc2UueC1hLnBvc2l0aW9uSW1wdWxzZS54KStjLnkqKEIucG9zaXRpb25JbXB1bHNlLnktYS5wb3NpdGlvbkltcHVsc2UueSkpO2ZvcihpPTA7aTxsO2krKykobz1BW2ldKS5pc0FjdGl2ZSYmIW8uaXNTZW5zb3ImJihhPShzPW8uY29sbGlzaW9uKS5wYXJlbnRBLEI9cy5wYXJlbnRCLGM9cy5ub3JtYWwsRT1vLnNlcGFyYXRpb24tby5zbG9wKnUsKGEuaXNTdGF0aWN8fEIuaXNTdGF0aWMpJiYoRSo9MiksYS5pc1N0YXRpY3x8YS5pc1NsZWVwaW5nfHwoZz1RL2EudG90YWxDb250YWN0cyxhLnBvc2l0aW9uSW1wdWxzZS54Kz1jLngqRSpnLGEucG9zaXRpb25JbXB1bHNlLnkrPWMueSpFKmcpLEIuaXNTdGF0aWN8fEIuaXNTbGVlcGluZ3x8KGc9US9CLnRvdGFsQ29udGFjdHMsQi5wb3NpdGlvbkltcHVsc2UueC09Yy54KkUqZyxCLnBvc2l0aW9uSW1wdWxzZS55LT1jLnkqRSpnKSl9LG4ucG9zdFNvbHZlUG9zaXRpb249ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPW4uX3Bvc2l0aW9uV2FybWluZyx0PUEubGVuZ3RoLHI9aS50cmFuc2xhdGUscz1vLnVwZGF0ZSxhPTA7YTx0O2ErKyl7dmFyIEI9QVthXSxjPUIucG9zaXRpb25JbXB1bHNlLGc9Yy54LEU9Yy55LFE9Qi52ZWxvY2l0eTtpZihCLnRvdGFsQ29udGFjdHM9MCwwIT09Z3x8MCE9PUUpe2Zvcih2YXIgdT0wO3U8Qi5wYXJ0cy5sZW5ndGg7dSsrKXt2YXIgbD1CLnBhcnRzW3VdO3IobC52ZXJ0aWNlcyxjKSxzKGwuYm91bmRzLGwudmVydGljZXMsUSksbC5wb3NpdGlvbi54Kz1nLGwucG9zaXRpb24ueSs9RX1CLnBvc2l0aW9uUHJldi54Kz1nLEIucG9zaXRpb25QcmV2LnkrPUUsZypRLngrRSpRLnk8MD8oYy54PTAsYy55PTApOihjLngqPWUsYy55Kj1lKX19fSxuLnByZVNvbHZlVmVsb2NpdHk9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuPUEubGVuZ3RoO2ZvcihlPTA7ZTxuO2UrKyl7dmFyIGk9QVtlXTtpZihpLmlzQWN0aXZlJiYhaS5pc1NlbnNvcil7dmFyIHI9aS5jb250YWN0cyxvPWkuY29udGFjdENvdW50LHM9aS5jb2xsaXNpb24sYT1zLnBhcmVudEEsQj1zLnBhcmVudEIsYz1zLm5vcm1hbCxnPXMudGFuZ2VudDtmb3IodD0wO3Q8bzt0Kyspe3ZhciBFPXJbdF0sUT1FLnZlcnRleCx1PUUubm9ybWFsSW1wdWxzZSxsPUUudGFuZ2VudEltcHVsc2U7aWYoMCE9PXV8fDAhPT1sKXt2YXIgaD1jLngqdStnLngqbCx3PWMueSp1K2cueSpsO2EuaXNTdGF0aWN8fGEuaXNTbGVlcGluZ3x8KGEucG9zaXRpb25QcmV2LngrPWgqYS5pbnZlcnNlTWFzcyxhLnBvc2l0aW9uUHJldi55Kz13KmEuaW52ZXJzZU1hc3MsYS5hbmdsZVByZXYrPWEuaW52ZXJzZUluZXJ0aWEqKChRLngtYS5wb3NpdGlvbi54KSp3LShRLnktYS5wb3NpdGlvbi55KSpoKSksQi5pc1N0YXRpY3x8Qi5pc1NsZWVwaW5nfHwoQi5wb3NpdGlvblByZXYueC09aCpCLmludmVyc2VNYXNzLEIucG9zaXRpb25QcmV2LnktPXcqQi5pbnZlcnNlTWFzcyxCLmFuZ2xlUHJldi09Qi5pbnZlcnNlSW5lcnRpYSooKFEueC1CLnBvc2l0aW9uLngpKnctKFEueS1CLnBvc2l0aW9uLnkpKmgpKX19fX19LG4uc29sdmVWZWxvY2l0eT1mdW5jdGlvbihBLGUpe3ZhciB0LGksbyxzLGE9ZS9yLl9iYXNlRGVsdGEsQj1hKmEqYSxjPS1uLl9yZXN0aW5nVGhyZXNoKmEsZz1uLl9yZXN0aW5nVGhyZXNoVGFuZ2VudCxFPW4uX2ZyaWN0aW9uTm9ybWFsTXVsdGlwbGllciphLFE9bi5fZnJpY3Rpb25NYXhTdGF0aWMsdT1BLmxlbmd0aDtmb3Iobz0wO288dTtvKyspe3ZhciBsPUFbb107aWYobC5pc0FjdGl2ZSYmIWwuaXNTZW5zb3Ipe3ZhciBoPWwuY29sbGlzaW9uLHc9aC5wYXJlbnRBLEM9aC5wYXJlbnRCLEk9aC5ub3JtYWwueCxNPWgubm9ybWFsLnksZD1oLnRhbmdlbnQueCxwPWgudGFuZ2VudC55LG09bC5pbnZlcnNlTWFzcyxGPWwuZnJpY3Rpb24qbC5mcmljdGlvblN0YXRpYypFLEQ9bC5jb250YWN0cyxZPWwuY29udGFjdENvdW50LGY9MS9ZLE49dy5wb3NpdGlvbi54LXcucG9zaXRpb25QcmV2LngsVT13LnBvc2l0aW9uLnktdy5wb3NpdGlvblByZXYueSx5PXcuYW5nbGUtdy5hbmdsZVByZXYsVD1DLnBvc2l0aW9uLngtQy5wb3NpdGlvblByZXYueCx4PUMucG9zaXRpb24ueS1DLnBvc2l0aW9uUHJldi55LFI9Qy5hbmdsZS1DLmFuZ2xlUHJldjtmb3Iocz0wO3M8WTtzKyspe3ZhciBHPURbc10sUz1HLnZlcnRleCxiPVMueC13LnBvc2l0aW9uLngsSD1TLnktdy5wb3NpdGlvbi55LHY9Uy54LUMucG9zaXRpb24ueCxrPVMueS1DLnBvc2l0aW9uLnksaj1OLUgqeS0oVC1rKlIpLEo9VStiKnktKHgrdipSKSx6PUkqaitNKkosTD1kKmorcCpKLFA9bC5zZXBhcmF0aW9uK3osTz1NYXRoLm1pbihQLDEpLFY9KE89UDwwPzA6TykqRjtMPC1WfHxMPlY/KGk9TD4wP0w6LUwsKHQ9bC5mcmljdGlvbiooTD4wPzE6LTEpKkIpPC1pP3Q9LWk6dD5pJiYodD1pKSk6KHQ9TCxpPVEpO3ZhciBXPWIqTS1IKkksSz12Kk0taypJLFg9Zi8obSt3LmludmVyc2VJbmVydGlhKlcqVytDLmludmVyc2VJbmVydGlhKksqSyksWj0oMStsLnJlc3RpdHV0aW9uKSp6Klg7aWYodCo9WCx6PGMpRy5ub3JtYWxJbXB1bHNlPTA7ZWxzZXt2YXIgXz1HLm5vcm1hbEltcHVsc2U7Ry5ub3JtYWxJbXB1bHNlKz1aLEcubm9ybWFsSW1wdWxzZT4wJiYoRy5ub3JtYWxJbXB1bHNlPTApLFo9Ry5ub3JtYWxJbXB1bHNlLV99aWYoTDwtZ3x8TD5nKUcudGFuZ2VudEltcHVsc2U9MDtlbHNle3ZhciBxPUcudGFuZ2VudEltcHVsc2U7Ry50YW5nZW50SW1wdWxzZSs9dCxHLnRhbmdlbnRJbXB1bHNlPC1pJiYoRy50YW5nZW50SW1wdWxzZT0taSksRy50YW5nZW50SW1wdWxzZT5pJiYoRy50YW5nZW50SW1wdWxzZT1pKSx0PUcudGFuZ2VudEltcHVsc2UtcX12YXIgJD1JKlorZCp0LEFBPU0qWitwKnQ7dy5pc1N0YXRpY3x8dy5pc1NsZWVwaW5nfHwody5wb3NpdGlvblByZXYueCs9JCp3LmludmVyc2VNYXNzLHcucG9zaXRpb25QcmV2LnkrPUFBKncuaW52ZXJzZU1hc3Msdy5hbmdsZVByZXYrPShiKkFBLUgqJCkqdy5pbnZlcnNlSW5lcnRpYSksQy5pc1N0YXRpY3x8Qy5pc1NsZWVwaW5nfHwoQy5wb3NpdGlvblByZXYueC09JCpDLmludmVyc2VNYXNzLEMucG9zaXRpb25QcmV2LnktPUFBKkMuaW52ZXJzZU1hc3MsQy5hbmdsZVByZXYtPSh2KkFBLWsqJCkqQy5pbnZlcnNlSW5lcnRpYSl9fX19fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49e307QS5leHBvcnRzPW47dmFyIGk9dCg5KSxyPXQoMCk7bi5jcmVhdGU9ZnVuY3Rpb24oQSl7cmV0dXJuIHIuZXh0ZW5kKHt0YWJsZTp7fSxsaXN0OltdLGNvbGxpc2lvblN0YXJ0OltdLGNvbGxpc2lvbkFjdGl2ZTpbXSxjb2xsaXNpb25FbmQ6W119LEEpfSxuLnVwZGF0ZT1mdW5jdGlvbihBLGUsdCl7dmFyIG4scixvLHM9aS51cGRhdGUsYT1pLmNyZWF0ZSxCPWkuc2V0QWN0aXZlLGM9QS50YWJsZSxnPUEubGlzdCxFPWcubGVuZ3RoLFE9RSx1PUEuY29sbGlzaW9uU3RhcnQsbD1BLmNvbGxpc2lvbkVuZCxoPUEuY29sbGlzaW9uQWN0aXZlLHc9ZS5sZW5ndGgsQz0wLEk9MCxNPTA7Zm9yKG89MDtvPHc7bysrKShyPShuPWVbb10pLnBhaXIpPyhyLmlzQWN0aXZlJiYoaFtNKytdPXIpLHMocixuLHQpKTooY1socj1hKG4sdCkpLmlkXT1yLHVbQysrXT1yLGdbUSsrXT1yKTtmb3IoUT0wLEU9Zy5sZW5ndGgsbz0wO288RTtvKyspKHI9Z1tvXSkudGltZVVwZGF0ZWQ+PXQ/Z1tRKytdPXI6KEIociwhMSx0KSxyLmNvbGxpc2lvbi5ib2R5QS5zbGVlcENvdW50ZXI+MCYmci5jb2xsaXNpb24uYm9keUIuc2xlZXBDb3VudGVyPjA/Z1tRKytdPXI6KGxbSSsrXT1yLGRlbGV0ZSBjW3IuaWRdKSk7Zy5sZW5ndGghPT1RJiYoZy5sZW5ndGg9USksdS5sZW5ndGghPT1DJiYodS5sZW5ndGg9QyksbC5sZW5ndGghPT1JJiYobC5sZW5ndGg9SSksaC5sZW5ndGghPT1NJiYoaC5sZW5ndGg9TSl9LG4uY2xlYXI9ZnVuY3Rpb24oQSl7cmV0dXJuIEEudGFibGU9e30sQS5saXN0Lmxlbmd0aD0wLEEuY29sbGlzaW9uU3RhcnQubGVuZ3RoPTAsQS5jb2xsaXNpb25BY3RpdmUubGVuZ3RoPTAsQS5jb2xsaXNpb25FbmQubGVuZ3RoPTAsQX19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1BLmV4cG9ydHM9dCgyMSk7bi5BeGVzPXQoMTEpLG4uQm9kaWVzPXQoMTIpLG4uQm9keT10KDQpLG4uQm91bmRzPXQoMSksbi5Db2xsaXNpb249dCg4KSxuLkNvbW1vbj10KDApLG4uQ29tcG9zaXRlPXQoNiksbi5Db21wb3NpdGVzPXQoMjIpLG4uQ29uc3RyYWludD10KDEwKSxuLkNvbnRhY3Q9dCgxNiksbi5EZXRlY3Rvcj10KDEzKSxuLkVuZ2luZT10KDE3KSxuLkV2ZW50cz10KDUpLG4uR3JpZD10KDIzKSxuLk1vdXNlPXQoMTQpLG4uTW91c2VDb25zdHJhaW50PXQoMjQpLG4uUGFpcj10KDkpLG4uUGFpcnM9dCgxOSksbi5QbHVnaW49dCgxNSksbi5RdWVyeT10KDI1KSxuLlJlbmRlcj10KDI2KSxuLlJlc29sdmVyPXQoMTgpLG4uUnVubmVyPXQoMjcpLG4uU0FUPXQoMjgpLG4uU2xlZXBpbmc9dCg3KSxuLlN2Zz10KDI5KSxuLlZlY3Rvcj10KDIpLG4uVmVydGljZXM9dCgzKSxuLldvcmxkPXQoMzApLG4uRW5naW5lLnJ1bj1uLlJ1bm5lci5ydW4sbi5Db21tb24uZGVwcmVjYXRlZChuLkVuZ2luZSwicnVuIiwiRW5naW5lLnJ1biDinqQgdXNlIE1hdHRlci5SdW5uZXIucnVuKGVuZ2luZSkgaW5zdGVhZCIpfSxmdW5jdGlvbihBLGUsdCl7dmFyIG49e307QS5leHBvcnRzPW47dmFyIGk9dCgxNSkscj10KDApO24ubmFtZT0ibWF0dGVyLWpzIixuLnZlcnNpb249IjAuMjAuMCIsbi51c2VzPVtdLG4udXNlZD1bXSxuLnVzZT1mdW5jdGlvbigpe2kudXNlKG4sQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKSl9LG4uYmVmb3JlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEE9QS5yZXBsYWNlKC9eTWF0dGVyLi8sIiIpLHIuY2hhaW5QYXRoQmVmb3JlKG4sQSxlKX0sbi5hZnRlcj1mdW5jdGlvbihBLGUpe3JldHVybiBBPUEucmVwbGFjZSgvXk1hdHRlci4vLCIiKSxyLmNoYWluUGF0aEFmdGVyKG4sQSxlKX19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDYpLHI9dCgxMCksbz10KDApLHM9dCg0KSxhPXQoMTIpLEI9by5kZXByZWNhdGVkO24uc3RhY2s9ZnVuY3Rpb24oQSxlLHQsbixyLG8sYSl7Zm9yKHZhciBCLGM9aS5jcmVhdGUoe2xhYmVsOiJTdGFjayJ9KSxnPUEsRT1lLFE9MCx1PTA7dTxuO3UrKyl7Zm9yKHZhciBsPTAsaD0wO2g8dDtoKyspe3ZhciB3PWEoZyxFLGgsdSxCLFEpO2lmKHcpe3ZhciBDPXcuYm91bmRzLm1heC55LXcuYm91bmRzLm1pbi55LEk9dy5ib3VuZHMubWF4Lngtdy5ib3VuZHMubWluLng7Qz5sJiYobD1DKSxzLnRyYW5zbGF0ZSh3LHt4Oi41KkkseTouNSpDfSksZz13LmJvdW5kcy5tYXgueCtyLGkuYWRkQm9keShjLHcpLEI9dyxRKz0xfWVsc2UgZys9cn1FKz1sK28sZz1BfXJldHVybiBjfSxuLmNoYWluPWZ1bmN0aW9uKEEsZSx0LG4scyxhKXtmb3IodmFyIEI9QS5ib2RpZXMsYz0xO2M8Qi5sZW5ndGg7YysrKXt2YXIgZz1CW2MtMV0sRT1CW2NdLFE9Zy5ib3VuZHMubWF4LnktZy5ib3VuZHMubWluLnksdT1nLmJvdW5kcy5tYXgueC1nLmJvdW5kcy5taW4ueCxsPUUuYm91bmRzLm1heC55LUUuYm91bmRzLm1pbi55LGg9e2JvZHlBOmcscG9pbnRBOnt4OnUqZSx5OlEqdH0sYm9keUI6RSxwb2ludEI6e3g6KEUuYm91bmRzLm1heC54LUUuYm91bmRzLm1pbi54KSpuLHk6bCpzfX0sdz1vLmV4dGVuZChoLGEpO2kuYWRkQ29uc3RyYWludChBLHIuY3JlYXRlKHcpKX1yZXR1cm4gQS5sYWJlbCs9IiBDaGFpbiIsQX0sbi5tZXNoPWZ1bmN0aW9uKEEsZSx0LG4scyl7dmFyIGEsQixjLGcsRSxRPUEuYm9kaWVzO2ZvcihhPTA7YTx0O2ErKyl7Zm9yKEI9MTtCPGU7QisrKWM9UVtCLTErYSplXSxnPVFbQithKmVdLGkuYWRkQ29uc3RyYWludChBLHIuY3JlYXRlKG8uZXh0ZW5kKHtib2R5QTpjLGJvZHlCOmd9LHMpKSk7aWYoYT4wKWZvcihCPTA7QjxlO0IrKyljPVFbQisoYS0xKSplXSxnPVFbQithKmVdLGkuYWRkQ29uc3RyYWludChBLHIuY3JlYXRlKG8uZXh0ZW5kKHtib2R5QTpjLGJvZHlCOmd9LHMpKSksbiYmQj4wJiYoRT1RW0ItMSsoYS0xKSplXSxpLmFkZENvbnN0cmFpbnQoQSxyLmNyZWF0ZShvLmV4dGVuZCh7Ym9keUE6RSxib2R5QjpnfSxzKSkpKSxuJiZCPGUtMSYmKEU9UVtCKzErKGEtMSkqZV0saS5hZGRDb25zdHJhaW50KEEsci5jcmVhdGUoby5leHRlbmQoe2JvZHlBOkUsYm9keUI6Z30scykpKSl9cmV0dXJuIEEubGFiZWwrPSIgTWVzaCIsQX0sbi5weXJhbWlkPWZ1bmN0aW9uKEEsZSx0LGkscixvLGEpe3JldHVybiBuLnN0YWNrKEEsZSx0LGkscixvLChmdW5jdGlvbihlLG4sbyxCLGMsZyl7dmFyIEU9TWF0aC5taW4oaSxNYXRoLmNlaWwodC8yKSksUT1jP2MuYm91bmRzLm1heC54LWMuYm91bmRzLm1pbi54OjA7aWYoIShCPkV8fG88KEI9RS1CKXx8bz50LTEtQikpcmV0dXJuIDE9PT1nJiZzLnRyYW5zbGF0ZShjLHt4OihvKyh0JTI9PTE/MTotMSkpKlEseTowfSksYShBKyhjP28qUTowKStvKnIsbixvLEIsYyxnKX0pKX0sbi5uZXd0b25zQ3JhZGxlPWZ1bmN0aW9uKEEsZSx0LG4sbyl7Zm9yKHZhciBzPWkuY3JlYXRlKHtsYWJlbDoiTmV3dG9ucyBDcmFkbGUifSksQj0wO0I8dDtCKyspe3ZhciBjPWEuY2lyY2xlKEErQiooMS45Km4pLGUrbyxuLHtpbmVydGlhOjEvMCxyZXN0aXR1dGlvbjoxLGZyaWN0aW9uOjAsZnJpY3Rpb25BaXI6MWUtNCxzbG9wOjF9KSxnPXIuY3JlYXRlKHtwb2ludEE6e3g6QStCKigxLjkqbikseTplfSxib2R5QjpjfSk7aS5hZGRCb2R5KHMsYyksaS5hZGRDb25zdHJhaW50KHMsZyl9cmV0dXJuIHN9LEIobiwibmV3dG9uc0NyYWRsZSIsIkNvbXBvc2l0ZXMubmV3dG9uc0NyYWRsZSDinqQgbW92ZWQgdG8gbmV3dG9uc0NyYWRsZSBleGFtcGxlIiksbi5jYXI9ZnVuY3Rpb24oQSxlLHQsbixvKXt2YXIgQj1zLm5leHRHcm91cCghMCksYz0uNSotdCsyMCxnPS41KnQtMjAsRT1pLmNyZWF0ZSh7bGFiZWw6IkNhciJ9KSxRPWEucmVjdGFuZ2xlKEEsZSx0LG4se2NvbGxpc2lvbkZpbHRlcjp7Z3JvdXA6Qn0sY2hhbWZlcjp7cmFkaXVzOi41Km59LGRlbnNpdHk6MmUtNH0pLHU9YS5jaXJjbGUoQStjLGUrMCxvLHtjb2xsaXNpb25GaWx0ZXI6e2dyb3VwOkJ9LGZyaWN0aW9uOi44fSksbD1hLmNpcmNsZShBK2csZSswLG8se2NvbGxpc2lvbkZpbHRlcjp7Z3JvdXA6Qn0sZnJpY3Rpb246Ljh9KSxoPXIuY3JlYXRlKHtib2R5QjpRLHBvaW50Qjp7eDpjLHk6MH0sYm9keUE6dSxzdGlmZm5lc3M6MSxsZW5ndGg6MH0pLHc9ci5jcmVhdGUoe2JvZHlCOlEscG9pbnRCOnt4OmcseTowfSxib2R5QTpsLHN0aWZmbmVzczoxLGxlbmd0aDowfSk7cmV0dXJuIGkuYWRkQm9keShFLFEpLGkuYWRkQm9keShFLHUpLGkuYWRkQm9keShFLGwpLGkuYWRkQ29uc3RyYWludChFLGgpLGkuYWRkQ29uc3RyYWludChFLHcpLEV9LEIobiwiY2FyIiwiQ29tcG9zaXRlcy5jYXIg4p6kIG1vdmVkIHRvIGNhciBleGFtcGxlIiksbi5zb2Z0Qm9keT1mdW5jdGlvbihBLGUsdCxpLHIscyxCLGMsZyxFKXtnPW8uZXh0ZW5kKHtpbmVydGlhOjEvMH0sZyksRT1vLmV4dGVuZCh7c3RpZmZuZXNzOi4yLHJlbmRlcjp7dHlwZToibGluZSIsYW5jaG9yczohMX19LEUpO3ZhciBRPW4uc3RhY2soQSxlLHQsaSxyLHMsKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIGEuY2lyY2xlKEEsZSxjLGcpfSkpO3JldHVybiBuLm1lc2goUSx0LGksQixFKSxRLmxhYmVsPSJTb2Z0IEJvZHkiLFF9LEIobiwic29mdEJvZHkiLCJDb21wb3NpdGVzLnNvZnRCb2R5IOKepCBtb3ZlZCB0byBzb2Z0Qm9keSBhbmQgY2xvdGggZXhhbXBsZXMiKX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoOSkscj10KDApLG89ci5kZXByZWNhdGVkO24uY3JlYXRlPWZ1bmN0aW9uKEEpe3JldHVybiByLmV4dGVuZCh7YnVja2V0czp7fSxwYWlyczp7fSxwYWlyc0xpc3Q6W10sYnVja2V0V2lkdGg6NDgsYnVja2V0SGVpZ2h0OjQ4fSxBKX0sbi51cGRhdGU9ZnVuY3Rpb24oQSxlLHQsaSl7dmFyIHIsbyxzLGEsQixjPXQud29ybGQsZz1BLmJ1Y2tldHMsRT0hMTtmb3Iocj0wO3I8ZS5sZW5ndGg7cisrKXt2YXIgUT1lW3JdO2lmKCghUS5pc1NsZWVwaW5nfHxpKSYmKCFjLmJvdW5kc3x8IShRLmJvdW5kcy5tYXgueDxjLmJvdW5kcy5taW4ueHx8US5ib3VuZHMubWluLng+Yy5ib3VuZHMubWF4Lnh8fFEuYm91bmRzLm1heC55PGMuYm91bmRzLm1pbi55fHxRLmJvdW5kcy5taW4ueT5jLmJvdW5kcy5tYXgueSkpKXt2YXIgdT1uLl9nZXRSZWdpb24oQSxRKTtpZighUS5yZWdpb258fHUuaWQhPT1RLnJlZ2lvbi5pZHx8aSl7US5yZWdpb24mJiFpfHwoUS5yZWdpb249dSk7dmFyIGw9bi5fcmVnaW9uVW5pb24odSxRLnJlZ2lvbik7Zm9yKG89bC5zdGFydENvbDtvPD1sLmVuZENvbDtvKyspZm9yKHM9bC5zdGFydFJvdztzPD1sLmVuZFJvdztzKyspe2E9Z1tCPW4uX2dldEJ1Y2tldElkKG8scyldO3ZhciBoPW8+PXUuc3RhcnRDb2wmJm88PXUuZW5kQ29sJiZzPj11LnN0YXJ0Um93JiZzPD11LmVuZFJvdyx3PW8+PVEucmVnaW9uLnN0YXJ0Q29sJiZvPD1RLnJlZ2lvbi5lbmRDb2wmJnM+PVEucmVnaW9uLnN0YXJ0Um93JiZzPD1RLnJlZ2lvbi5lbmRSb3c7IWgmJncmJncmJmEmJm4uX2J1Y2tldFJlbW92ZUJvZHkoQSxhLFEpLChRLnJlZ2lvbj09PXV8fGgmJiF3fHxpKSYmKGF8fChhPW4uX2NyZWF0ZUJ1Y2tldChnLEIpKSxuLl9idWNrZXRBZGRCb2R5KEEsYSxRKSl9US5yZWdpb249dSxFPSEwfX19RSYmKEEucGFpcnNMaXN0PW4uX2NyZWF0ZUFjdGl2ZVBhaXJzTGlzdChBKSl9LG8obiwidXBkYXRlIiwiR3JpZC51cGRhdGUg4p6kIHJlcGxhY2VkIGJ5IE1hdHRlci5EZXRlY3RvciIpLG4uY2xlYXI9ZnVuY3Rpb24oQSl7QS5idWNrZXRzPXt9LEEucGFpcnM9e30sQS5wYWlyc0xpc3Q9W119LG8obiwiY2xlYXIiLCJHcmlkLmNsZWFyIOKepCByZXBsYWNlZCBieSBNYXR0ZXIuRGV0ZWN0b3IiKSxuLl9yZWdpb25Vbmlvbj1mdW5jdGlvbihBLGUpe3ZhciB0PU1hdGgubWluKEEuc3RhcnRDb2wsZS5zdGFydENvbCksaT1NYXRoLm1heChBLmVuZENvbCxlLmVuZENvbCkscj1NYXRoLm1pbihBLnN0YXJ0Um93LGUuc3RhcnRSb3cpLG89TWF0aC5tYXgoQS5lbmRSb3csZS5lbmRSb3cpO3JldHVybiBuLl9jcmVhdGVSZWdpb24odCxpLHIsbyl9LG4uX2dldFJlZ2lvbj1mdW5jdGlvbihBLGUpe3ZhciB0PWUuYm91bmRzLGk9TWF0aC5mbG9vcih0Lm1pbi54L0EuYnVja2V0V2lkdGgpLHI9TWF0aC5mbG9vcih0Lm1heC54L0EuYnVja2V0V2lkdGgpLG89TWF0aC5mbG9vcih0Lm1pbi55L0EuYnVja2V0SGVpZ2h0KSxzPU1hdGguZmxvb3IodC5tYXgueS9BLmJ1Y2tldEhlaWdodCk7cmV0dXJuIG4uX2NyZWF0ZVJlZ2lvbihpLHIsbyxzKX0sbi5fY3JlYXRlUmVnaW9uPWZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybntpZDpBKyIsIitlKyIsIit0KyIsIituLHN0YXJ0Q29sOkEsZW5kQ29sOmUsc3RhcnRSb3c6dCxlbmRSb3c6bn19LG4uX2dldEJ1Y2tldElkPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIkMiK0ErIlIiK2V9LG4uX2NyZWF0ZUJ1Y2tldD1mdW5jdGlvbihBLGUpe3JldHVybiBBW2VdPVtdfSxuLl9idWNrZXRBZGRCb2R5PWZ1bmN0aW9uKEEsZSx0KXt2YXIgbixyPUEucGFpcnMsbz1pLmlkLHM9ZS5sZW5ndGg7Zm9yKG49MDtuPHM7bisrKXt2YXIgYT1lW25dO2lmKCEodC5pZD09PWEuaWR8fHQuaXNTdGF0aWMmJmEuaXNTdGF0aWMpKXt2YXIgQj1vKHQsYSksYz1yW0JdO2M/Y1syXSs9MTpyW0JdPVt0LGEsMV19fWUucHVzaCh0KX0sbi5fYnVja2V0UmVtb3ZlQm9keT1mdW5jdGlvbihBLGUsdCl7dmFyIG4sbz1BLnBhaXJzLHM9aS5pZDtlLnNwbGljZShyLmluZGV4T2YoZSx0KSwxKTt2YXIgYT1lLmxlbmd0aDtmb3Iobj0wO248YTtuKyspe3ZhciBCPW9bcyh0LGVbbl0pXTtCJiYoQlsyXS09MSl9fSxuLl9jcmVhdGVBY3RpdmVQYWlyc0xpc3Q9ZnVuY3Rpb24oQSl7dmFyIGUsdCxuPUEucGFpcnMsaT1yLmtleXMobiksbz1pLmxlbmd0aCxzPVtdO2Zvcih0PTA7dDxvO3QrKykoZT1uW2lbdF1dKVsyXT4wP3MucHVzaChlKTpkZWxldGUgbltpW3RdXTtyZXR1cm4gc319LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDMpLHI9dCg3KSxvPXQoMTQpLHM9dCg1KSxhPXQoMTMpLEI9dCgxMCksYz10KDYpLGc9dCgwKSxFPXQoMSk7bi5jcmVhdGU9ZnVuY3Rpb24oQSxlKXt2YXIgdD0oQT9BLm1vdXNlOm51bGwpfHwoZT9lLm1vdXNlOm51bGwpO3R8fChBJiZBLnJlbmRlciYmQS5yZW5kZXIuY2FudmFzP3Q9by5jcmVhdGUoQS5yZW5kZXIuY2FudmFzKTplJiZlLmVsZW1lbnQ/dD1vLmNyZWF0ZShlLmVsZW1lbnQpOih0PW8uY3JlYXRlKCksZy53YXJuKCJNb3VzZUNvbnN0cmFpbnQuY3JlYXRlOiBvcHRpb25zLm1vdXNlIHdhcyB1bmRlZmluZWQsIG9wdGlvbnMuZWxlbWVudCB3YXMgdW5kZWZpbmVkLCBtYXkgbm90IGZ1bmN0aW9uIGFzIGV4cGVjdGVkIikpKTt2YXIgaT17dHlwZToibW91c2VDb25zdHJhaW50Iixtb3VzZTp0LGVsZW1lbnQ6bnVsbCxib2R5Om51bGwsY29uc3RyYWludDpCLmNyZWF0ZSh7bGFiZWw6Ik1vdXNlIENvbnN0cmFpbnQiLHBvaW50QTp0LnBvc2l0aW9uLHBvaW50Qjp7eDowLHk6MH0sbGVuZ3RoOi4wMSxzdGlmZm5lc3M6LjEsYW5ndWxhclN0aWZmbmVzczoxLHJlbmRlcjp7c3Ryb2tlU3R5bGU6IiM5MEVFOTAiLGxpbmVXaWR0aDozfX0pLGNvbGxpc2lvbkZpbHRlcjp7Y2F0ZWdvcnk6MSxtYXNrOjQyOTQ5NjcyOTUsZ3JvdXA6MH19LHI9Zy5leHRlbmQoaSxlKTtyZXR1cm4gcy5vbihBLCJiZWZvcmVVcGRhdGUiLChmdW5jdGlvbigpe3ZhciBlPWMuYWxsQm9kaWVzKEEud29ybGQpO24udXBkYXRlKHIsZSksbi5fdHJpZ2dlckV2ZW50cyhyKX0pKSxyfSxuLnVwZGF0ZT1mdW5jdGlvbihBLGUpe3ZhciB0PUEubW91c2Usbj1BLmNvbnN0cmFpbnQsbz1BLmJvZHk7aWYoMD09PXQuYnV0dG9uKXtpZihuLmJvZHlCKXIuc2V0KG4uYm9keUIsITEpLG4ucG9pbnRBPXQucG9zaXRpb247ZWxzZSBmb3IodmFyIEI9MDtCPGUubGVuZ3RoO0IrKylpZihvPWVbQl0sRS5jb250YWlucyhvLmJvdW5kcyx0LnBvc2l0aW9uKSYmYS5jYW5Db2xsaWRlKG8uY29sbGlzaW9uRmlsdGVyLEEuY29sbGlzaW9uRmlsdGVyKSlmb3IodmFyIGM9by5wYXJ0cy5sZW5ndGg+MT8xOjA7YzxvLnBhcnRzLmxlbmd0aDtjKyspe3ZhciBnPW8ucGFydHNbY107aWYoaS5jb250YWlucyhnLnZlcnRpY2VzLHQucG9zaXRpb24pKXtuLnBvaW50QT10LnBvc2l0aW9uLG4uYm9keUI9QS5ib2R5PW8sbi5wb2ludEI9e3g6dC5wb3NpdGlvbi54LW8ucG9zaXRpb24ueCx5OnQucG9zaXRpb24ueS1vLnBvc2l0aW9uLnl9LG4uYW5nbGVCPW8uYW5nbGUsci5zZXQobywhMSkscy50cmlnZ2VyKEEsInN0YXJ0ZHJhZyIse21vdXNlOnQsYm9keTpvfSk7YnJlYWt9fX1lbHNlIG4uYm9keUI9QS5ib2R5PW51bGwsbi5wb2ludEI9bnVsbCxvJiZzLnRyaWdnZXIoQSwiZW5kZHJhZyIse21vdXNlOnQsYm9keTpvfSl9LG4uX3RyaWdnZXJFdmVudHM9ZnVuY3Rpb24oQSl7dmFyIGU9QS5tb3VzZSx0PWUuc291cmNlRXZlbnRzO3QubW91c2Vtb3ZlJiZzLnRyaWdnZXIoQSwibW91c2Vtb3ZlIix7bW91c2U6ZX0pLHQubW91c2Vkb3duJiZzLnRyaWdnZXIoQSwibW91c2Vkb3duIix7bW91c2U6ZX0pLHQubW91c2V1cCYmcy50cmlnZ2VyKEEsIm1vdXNldXAiLHttb3VzZTplfSksby5jbGVhclNvdXJjZUV2ZW50cyhlKX19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj17fTtBLmV4cG9ydHM9bjt2YXIgaT10KDIpLHI9dCg4KSxvPXQoMSkscz10KDEyKSxhPXQoMyk7bi5jb2xsaWRlcz1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD1bXSxuPWUubGVuZ3RoLGk9QS5ib3VuZHMscz1yLmNvbGxpZGVzLGE9by5vdmVybGFwcyxCPTA7QjxuO0IrKyl7dmFyIGM9ZVtCXSxnPWMucGFydHMubGVuZ3RoLEU9MT09PWc/MDoxO2lmKGEoYy5ib3VuZHMsaSkpZm9yKHZhciBRPUU7UTxnO1ErKyl7dmFyIHU9Yy5wYXJ0c1tRXTtpZihhKHUuYm91bmRzLGkpKXt2YXIgbD1zKHUsQSk7aWYobCl7dC5wdXNoKGwpO2JyZWFrfX19fXJldHVybiB0fSxuLnJheT1mdW5jdGlvbihBLGUsdCxyKXtyPXJ8fDFlLTEwMDtmb3IodmFyIG89aS5hbmdsZShlLHQpLGE9aS5tYWduaXR1ZGUoaS5zdWIoZSx0KSksQj0uNSoodC54K2UueCksYz0uNSoodC55K2UueSksZz1zLnJlY3RhbmdsZShCLGMsYSxyLHthbmdsZTpvfSksRT1uLmNvbGxpZGVzKGcsQSksUT0wO1E8RS5sZW5ndGg7USs9MSl7dmFyIHU9RVtRXTt1LmJvZHk9dS5ib2R5Qj11LmJvZHlBfXJldHVybiBFfSxuLnJlZ2lvbj1mdW5jdGlvbihBLGUsdCl7Zm9yKHZhciBuPVtdLGk9MDtpPEEubGVuZ3RoO2krKyl7dmFyIHI9QVtpXSxzPW8ub3ZlcmxhcHMoci5ib3VuZHMsZSk7KHMmJiF0fHwhcyYmdCkmJm4ucHVzaChyKX1yZXR1cm4gbn0sbi5wb2ludD1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxBLmxlbmd0aDtuKyspe3ZhciBpPUFbbl07aWYoby5jb250YWlucyhpLmJvdW5kcyxlKSlmb3IodmFyIHI9MT09PWkucGFydHMubGVuZ3RoPzA6MTtyPGkucGFydHMubGVuZ3RoO3IrKyl7dmFyIHM9aS5wYXJ0c1tyXTtpZihvLmNvbnRhaW5zKHMuYm91bmRzLGUpJiZhLmNvbnRhaW5zKHMudmVydGljZXMsZSkpe3QucHVzaChpKTticmVha319fXJldHVybiB0fX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoNCkscj10KDApLG89dCg2KSxzPXQoMSksYT10KDUpLEI9dCgyKSxjPXQoMTQpOyFmdW5jdGlvbigpe3ZhciBBLGU7InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJihBPXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy53ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5tb3pSZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHdpbmRvdy5tc1JlcXVlc3RBbmltYXRpb25GcmFtZXx8ZnVuY3Rpb24oQSl7d2luZG93LnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7QShyLm5vdygpKX0pLDFlMy82MCl9LGU9d2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lfHx3aW5kb3cubW96Q2FuY2VsQW5pbWF0aW9uRnJhbWV8fHdpbmRvdy53ZWJraXRDYW5jZWxBbmltYXRpb25GcmFtZXx8d2luZG93Lm1zQ2FuY2VsQW5pbWF0aW9uRnJhbWUpLG4uX2dvb2RGcHM9MzAsbi5fZ29vZERlbHRhPTFlMy82MCxuLmNyZWF0ZT1mdW5jdGlvbihBKXt2YXIgZT17ZW5naW5lOm51bGwsZWxlbWVudDpudWxsLGNhbnZhczpudWxsLG1vdXNlOm51bGwsZnJhbWVSZXF1ZXN0SWQ6bnVsbCx0aW1pbmc6e2hpc3RvcnlTaXplOjYwLGRlbHRhOjAsZGVsdGFIaXN0b3J5OltdLGxhc3RUaW1lOjAsbGFzdFRpbWVzdGFtcDowLGxhc3RFbGFwc2VkOjAsdGltZXN0YW1wRWxhcHNlZDowLHRpbWVzdGFtcEVsYXBzZWRIaXN0b3J5OltdLGVuZ2luZURlbHRhSGlzdG9yeTpbXSxlbmdpbmVFbGFwc2VkSGlzdG9yeTpbXSxlbmdpbmVVcGRhdGVzSGlzdG9yeTpbXSxlbGFwc2VkSGlzdG9yeTpbXX0sb3B0aW9uczp7d2lkdGg6ODAwLGhlaWdodDo2MDAscGl4ZWxSYXRpbzoxLGJhY2tncm91bmQ6IiMxNDE1MWYiLHdpcmVmcmFtZUJhY2tncm91bmQ6IiMxNDE1MWYiLHdpcmVmcmFtZVN0cm9rZVN0eWxlOiIjYmJiIixoYXNCb3VuZHM6ISFBLmJvdW5kcyxlbmFibGVkOiEwLHdpcmVmcmFtZXM6ITAsc2hvd1NsZWVwaW5nOiEwLHNob3dEZWJ1ZzohMSxzaG93U3RhdHM6ITEsc2hvd1BlcmZvcm1hbmNlOiExLHNob3dCb3VuZHM6ITEsc2hvd1ZlbG9jaXR5OiExLHNob3dDb2xsaXNpb25zOiExLHNob3dTZXBhcmF0aW9uczohMSxzaG93QXhlczohMSxzaG93UG9zaXRpb25zOiExLHNob3dBbmdsZUluZGljYXRvcjohMSxzaG93SWRzOiExLHNob3dWZXJ0ZXhOdW1iZXJzOiExLHNob3dDb252ZXhIdWxsczohMSxzaG93SW50ZXJuYWxFZGdlczohMSxzaG93TW91c2VQb3NpdGlvbjohMX19LHQ9ci5leHRlbmQoZSxBKTtyZXR1cm4gdC5jYW52YXMmJih0LmNhbnZhcy53aWR0aD10Lm9wdGlvbnMud2lkdGh8fHQuY2FudmFzLndpZHRoLHQuY2FudmFzLmhlaWdodD10Lm9wdGlvbnMuaGVpZ2h0fHx0LmNhbnZhcy5oZWlnaHQpLHQubW91c2U9QS5tb3VzZSx0LmVuZ2luZT1BLmVuZ2luZSx0LmNhbnZhcz10LmNhbnZhc3x8RSh0Lm9wdGlvbnMud2lkdGgsdC5vcHRpb25zLmhlaWdodCksdC5jb250ZXh0PXQuY2FudmFzLmdldENvbnRleHQoIjJkIiksdC50ZXh0dXJlcz17fSx0LmJvdW5kcz10LmJvdW5kc3x8e21pbjp7eDowLHk6MH0sbWF4Ont4OnQuY2FudmFzLndpZHRoLHk6dC5jYW52YXMuaGVpZ2h0fX0sdC5jb250cm9sbGVyPW4sdC5vcHRpb25zLnNob3dCcm9hZHBoYXNlPSExLDEhPT10Lm9wdGlvbnMucGl4ZWxSYXRpbyYmbi5zZXRQaXhlbFJhdGlvKHQsdC5vcHRpb25zLnBpeGVsUmF0aW8pLHIuaXNFbGVtZW50KHQuZWxlbWVudCkmJnQuZWxlbWVudC5hcHBlbmRDaGlsZCh0LmNhbnZhcyksdH0sbi5ydW49ZnVuY3Rpb24oZSl7IWZ1bmN0aW9uIGkocil7ZS5mcmFtZVJlcXVlc3RJZD1BKGkpLHQoZSxyKSxuLndvcmxkKGUsciksZS5jb250ZXh0LnNldFRyYW5zZm9ybShlLm9wdGlvbnMucGl4ZWxSYXRpbywwLDAsZS5vcHRpb25zLnBpeGVsUmF0aW8sMCwwKSwoZS5vcHRpb25zLnNob3dTdGF0c3x8ZS5vcHRpb25zLnNob3dEZWJ1ZykmJm4uc3RhdHMoZSxlLmNvbnRleHQsciksKGUub3B0aW9ucy5zaG93UGVyZm9ybWFuY2V8fGUub3B0aW9ucy5zaG93RGVidWcpJiZuLnBlcmZvcm1hbmNlKGUsZS5jb250ZXh0LHIpLGUuY29udGV4dC5zZXRUcmFuc2Zvcm0oMSwwLDAsMSwwLDApfSgpfSxuLnN0b3A9ZnVuY3Rpb24oQSl7ZShBLmZyYW1lUmVxdWVzdElkKX0sbi5zZXRQaXhlbFJhdGlvPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS5vcHRpb25zLG49QS5jYW52YXM7ImF1dG8iPT09ZSYmKGU9UShuKSksdC5waXhlbFJhdGlvPWUsbi5zZXRBdHRyaWJ1dGUoImRhdGEtcGl4ZWwtcmF0aW8iLGUpLG4ud2lkdGg9dC53aWR0aCplLG4uaGVpZ2h0PXQuaGVpZ2h0KmUsbi5zdHlsZS53aWR0aD10LndpZHRoKyJweCIsbi5zdHlsZS5oZWlnaHQ9dC5oZWlnaHQrInB4In0sbi5zZXRTaXplPWZ1bmN0aW9uKEEsZSx0KXtBLm9wdGlvbnMud2lkdGg9ZSxBLm9wdGlvbnMuaGVpZ2h0PXQsQS5ib3VuZHMubWF4Lng9QS5ib3VuZHMubWluLngrZSxBLmJvdW5kcy5tYXgueT1BLmJvdW5kcy5taW4ueSt0LDEhPT1BLm9wdGlvbnMucGl4ZWxSYXRpbz9uLnNldFBpeGVsUmF0aW8oQSxBLm9wdGlvbnMucGl4ZWxSYXRpbyk6KEEuY2FudmFzLndpZHRoPWUsQS5jYW52YXMuaGVpZ2h0PXQpfSxuLmxvb2tBdD1mdW5jdGlvbihBLGUsdCxuKXtuPXZvaWQgMD09PW58fG4sZT1yLmlzQXJyYXkoZSk/ZTpbZV0sdD10fHx7eDowLHk6MH07Zm9yKHZhciBpPXttaW46e3g6MS8wLHk6MS8wfSxtYXg6e3g6LTEvMCx5Oi0xLzB9fSxvPTA7bzxlLmxlbmd0aDtvKz0xKXt2YXIgcz1lW29dLGE9cy5ib3VuZHM/cy5ib3VuZHMubWluOnMubWlufHxzLnBvc2l0aW9ufHxzLEI9cy5ib3VuZHM/cy5ib3VuZHMubWF4OnMubWF4fHxzLnBvc2l0aW9ufHxzO2EmJkImJihhLng8aS5taW4ueCYmKGkubWluLng9YS54KSxCLng+aS5tYXgueCYmKGkubWF4Lng9Qi54KSxhLnk8aS5taW4ueSYmKGkubWluLnk9YS55KSxCLnk+aS5tYXgueSYmKGkubWF4Lnk9Qi55KSl9dmFyIGc9aS5tYXgueC1pLm1pbi54KzIqdC54LEU9aS5tYXgueS1pLm1pbi55KzIqdC55LFE9QS5jYW52YXMuaGVpZ2h0LHU9QS5jYW52YXMud2lkdGgvUSxsPWcvRSxoPTEsdz0xO2w+dT93PWwvdTpoPXUvbCxBLm9wdGlvbnMuaGFzQm91bmRzPSEwLEEuYm91bmRzLm1pbi54PWkubWluLngsQS5ib3VuZHMubWF4Lng9aS5taW4ueCtnKmgsQS5ib3VuZHMubWluLnk9aS5taW4ueSxBLmJvdW5kcy5tYXgueT1pLm1pbi55K0UqdyxuJiYoQS5ib3VuZHMubWluLngrPS41KmctZypoKi41LEEuYm91bmRzLm1heC54Kz0uNSpnLWcqaCouNSxBLmJvdW5kcy5taW4ueSs9LjUqRS1FKncqLjUsQS5ib3VuZHMubWF4LnkrPS41KkUtRSp3Ki41KSxBLmJvdW5kcy5taW4ueC09dC54LEEuYm91bmRzLm1heC54LT10LngsQS5ib3VuZHMubWluLnktPXQueSxBLmJvdW5kcy5tYXgueS09dC55LEEubW91c2UmJihjLnNldFNjYWxlKEEubW91c2Use3g6KEEuYm91bmRzLm1heC54LUEuYm91bmRzLm1pbi54KS9BLmNhbnZhcy53aWR0aCx5OihBLmJvdW5kcy5tYXgueS1BLmJvdW5kcy5taW4ueSkvQS5jYW52YXMuaGVpZ2h0fSksYy5zZXRPZmZzZXQoQS5tb3VzZSxBLmJvdW5kcy5taW4pKX0sbi5zdGFydFZpZXdUcmFuc2Zvcm09ZnVuY3Rpb24oQSl7dmFyIGU9QS5ib3VuZHMubWF4LngtQS5ib3VuZHMubWluLngsdD1BLmJvdW5kcy5tYXgueS1BLmJvdW5kcy5taW4ueSxuPWUvQS5vcHRpb25zLndpZHRoLGk9dC9BLm9wdGlvbnMuaGVpZ2h0O0EuY29udGV4dC5zZXRUcmFuc2Zvcm0oQS5vcHRpb25zLnBpeGVsUmF0aW8vbiwwLDAsQS5vcHRpb25zLnBpeGVsUmF0aW8vaSwwLDApLEEuY29udGV4dC50cmFuc2xhdGUoLUEuYm91bmRzLm1pbi54LC1BLmJvdW5kcy5taW4ueSl9LG4uZW5kVmlld1RyYW5zZm9ybT1mdW5jdGlvbihBKXtBLmNvbnRleHQuc2V0VHJhbnNmb3JtKEEub3B0aW9ucy5waXhlbFJhdGlvLDAsMCxBLm9wdGlvbnMucGl4ZWxSYXRpbywwLDApfSxuLndvcmxkPWZ1bmN0aW9uKEEsZSl7dmFyIHQsaT1yLm5vdygpLGc9QS5lbmdpbmUsRT1nLndvcmxkLFE9QS5jYW52YXMsdT1BLmNvbnRleHQsaD1BLm9wdGlvbnMsdz1BLnRpbWluZyxDPW8uYWxsQm9kaWVzKEUpLEk9by5hbGxDb25zdHJhaW50cyhFKSxNPWgud2lyZWZyYW1lcz9oLndpcmVmcmFtZUJhY2tncm91bmQ6aC5iYWNrZ3JvdW5kLGQ9W10scD1bXSxtPXt0aW1lc3RhbXA6Zy50aW1pbmcudGltZXN0YW1wfTtpZihhLnRyaWdnZXIoQSwiYmVmb3JlUmVuZGVyIixtKSxBLmN1cnJlbnRCYWNrZ3JvdW5kIT09TSYmbChBLE0pLHUuZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uPSJzb3VyY2UtaW4iLHUuZmlsbFN0eWxlPSJ0cmFuc3BhcmVudCIsdS5maWxsUmVjdCgwLDAsUS53aWR0aCxRLmhlaWdodCksdS5nbG9iYWxDb21wb3NpdGVPcGVyYXRpb249InNvdXJjZS1vdmVyIixoLmhhc0JvdW5kcyl7Zm9yKHQ9MDt0PEMubGVuZ3RoO3QrKyl7dmFyIEY9Q1t0XTtzLm92ZXJsYXBzKEYuYm91bmRzLEEuYm91bmRzKSYmZC5wdXNoKEYpfWZvcih0PTA7dDxJLmxlbmd0aDt0Kyspe3ZhciBEPUlbdF0sWT1ELmJvZHlBLGY9RC5ib2R5QixOPUQucG9pbnRBLFU9RC5wb2ludEI7WSYmKE49Qi5hZGQoWS5wb3NpdGlvbixELnBvaW50QSkpLGYmJihVPUIuYWRkKGYucG9zaXRpb24sRC5wb2ludEIpKSxOJiZVJiYocy5jb250YWlucyhBLmJvdW5kcyxOKXx8cy5jb250YWlucyhBLmJvdW5kcyxVKSkmJnAucHVzaChEKX1uLnN0YXJ0Vmlld1RyYW5zZm9ybShBKSxBLm1vdXNlJiYoYy5zZXRTY2FsZShBLm1vdXNlLHt4OihBLmJvdW5kcy5tYXgueC1BLmJvdW5kcy5taW4ueCkvQS5vcHRpb25zLndpZHRoLHk6KEEuYm91bmRzLm1heC55LUEuYm91bmRzLm1pbi55KS9BLm9wdGlvbnMuaGVpZ2h0fSksYy5zZXRPZmZzZXQoQS5tb3VzZSxBLmJvdW5kcy5taW4pKX1lbHNlIHA9SSxkPUMsMSE9PUEub3B0aW9ucy5waXhlbFJhdGlvJiZBLmNvbnRleHQuc2V0VHJhbnNmb3JtKEEub3B0aW9ucy5waXhlbFJhdGlvLDAsMCxBLm9wdGlvbnMucGl4ZWxSYXRpbywwLDApOyFoLndpcmVmcmFtZXN8fGcuZW5hYmxlU2xlZXBpbmcmJmguc2hvd1NsZWVwaW5nP24uYm9kaWVzKEEsZCx1KTooaC5zaG93Q29udmV4SHVsbHMmJm4uYm9keUNvbnZleEh1bGxzKEEsZCx1KSxuLmJvZHlXaXJlZnJhbWVzKEEsZCx1KSksaC5zaG93Qm91bmRzJiZuLmJvZHlCb3VuZHMoQSxkLHUpLChoLnNob3dBeGVzfHxoLnNob3dBbmdsZUluZGljYXRvcikmJm4uYm9keUF4ZXMoQSxkLHUpLGguc2hvd1Bvc2l0aW9ucyYmbi5ib2R5UG9zaXRpb25zKEEsZCx1KSxoLnNob3dWZWxvY2l0eSYmbi5ib2R5VmVsb2NpdHkoQSxkLHUpLGguc2hvd0lkcyYmbi5ib2R5SWRzKEEsZCx1KSxoLnNob3dTZXBhcmF0aW9ucyYmbi5zZXBhcmF0aW9ucyhBLGcucGFpcnMubGlzdCx1KSxoLnNob3dDb2xsaXNpb25zJiZuLmNvbGxpc2lvbnMoQSxnLnBhaXJzLmxpc3QsdSksaC5zaG93VmVydGV4TnVtYmVycyYmbi52ZXJ0ZXhOdW1iZXJzKEEsZCx1KSxoLnNob3dNb3VzZVBvc2l0aW9uJiZuLm1vdXNlUG9zaXRpb24oQSxBLm1vdXNlLHUpLG4uY29uc3RyYWludHMocCx1KSxoLmhhc0JvdW5kcyYmbi5lbmRWaWV3VHJhbnNmb3JtKEEpLGEudHJpZ2dlcihBLCJhZnRlclJlbmRlciIsbSksdy5sYXN0RWxhcHNlZD1yLm5vdygpLWl9LG4uc3RhdHM9ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgbj1BLmVuZ2luZSxpPW4ud29ybGQscj1vLmFsbEJvZGllcyhpKSxzPTAsYT0wLEI9MDtCPHIubGVuZ3RoO0IrPTEpcys9cltCXS5wYXJ0cy5sZW5ndGg7dmFyIGM9e1BhcnQ6cyxCb2R5OnIubGVuZ3RoLENvbnM6by5hbGxDb25zdHJhaW50cyhpKS5sZW5ndGgsQ29tcDpvLmFsbENvbXBvc2l0ZXMoaSkubGVuZ3RoLFBhaXI6bi5wYWlycy5saXN0Lmxlbmd0aH07Zm9yKHZhciBnIGluIGUuZmlsbFN0eWxlPSIjMGUwZjE5IixlLmZpbGxSZWN0KGEsMCwzMDIuNSw0NCksZS5mb250PSIxMnB4IEFyaWFsIixlLnRleHRCYXNlbGluZT0idG9wIixlLnRleHRBbGlnbj0icmlnaHQiLGMpe3ZhciBFPWNbZ107ZS5maWxsU3R5bGU9IiNhYWEiLGUuZmlsbFRleHQoZyxhKzU1LDgpLGUuZmlsbFN0eWxlPSIjZWVlIixlLmZpbGxUZXh0KEUsYSs1NSwyNiksYSs9NTV9fSxuLnBlcmZvcm1hbmNlPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS5lbmdpbmUsaT1BLnRpbWluZyxvPWkuZGVsdGFIaXN0b3J5LHM9aS5lbGFwc2VkSGlzdG9yeSxhPWkudGltZXN0YW1wRWxhcHNlZEhpc3RvcnksQj1pLmVuZ2luZURlbHRhSGlzdG9yeSxjPWkuZW5naW5lVXBkYXRlc0hpc3RvcnksRT1pLmVuZ2luZUVsYXBzZWRIaXN0b3J5LFE9dC50aW1pbmcubGFzdFVwZGF0ZXNQZXJGcmFtZSx1PXQudGltaW5nLmxhc3REZWx0YSxsPWcobyksaD1nKHMpLHc9ZyhCKSxDPWcoYyksST1nKEUpLE09ZyhhKS9sfHwwLGQ9TWF0aC5yb3VuZChsL3UpLHA9MWUzL2x8fDAsbT0xMCxGPTY5O2UuZmlsbFN0eWxlPSIjMGUwZjE5IixlLmZpbGxSZWN0KDAsNTAsNDQyLDM0KSxuLnN0YXR1cyhlLG0sRiw2MCw0LG8ubGVuZ3RoLE1hdGgucm91bmQocCkrIiBmcHMiLHAvbi5fZ29vZEZwcywoZnVuY3Rpb24oQSl7cmV0dXJuIG9bQV0vbC0xfSkpLG4uc3RhdHVzKGUsODIsRiw2MCw0LEIubGVuZ3RoLHUudG9GaXhlZCgyKSsiIGR0IixuLl9nb29kRGVsdGEvdSwoZnVuY3Rpb24oQSl7cmV0dXJuIEJbQV0vdy0xfSkpLG4uc3RhdHVzKGUsMTU0LEYsNjAsNCxjLmxlbmd0aCxRKyIgdXBmIixNYXRoLnBvdyhyLmNsYW1wKEMvZHx8MSwwLDEpLDQpLChmdW5jdGlvbihBKXtyZXR1cm4gY1tBXS9DLTF9KSksbi5zdGF0dXMoZSwyMjYsRiw2MCw0LEUubGVuZ3RoLEkudG9GaXhlZCgyKSsiIHV0IiwxLVEqSS9uLl9nb29kRnBzLChmdW5jdGlvbihBKXtyZXR1cm4gRVtBXS9JLTF9KSksbi5zdGF0dXMoZSwyOTgsRiw2MCw0LHMubGVuZ3RoLGgudG9GaXhlZCgyKSsiIHJ0IiwxLWgvbi5fZ29vZEZwcywoZnVuY3Rpb24oQSl7cmV0dXJuIHNbQV0vaC0xfSkpLG4uc3RhdHVzKGUsMzcwLEYsNjAsNCxhLmxlbmd0aCxNLnRvRml4ZWQoMikrIiB4IixNKk0qTSwoZnVuY3Rpb24oQSl7cmV0dXJuKGFbQV0vb1tBXS9NfHwwKS0xfSkpfSxuLnN0YXR1cz1mdW5jdGlvbihBLGUsdCxuLGksbyxzLGEsQil7QS5zdHJva2VTdHlsZT0iIzg4OCIsQS5maWxsU3R5bGU9IiM0NDQiLEEubGluZVdpZHRoPTEsQS5maWxsUmVjdChlLHQrNyxuLDEpLEEuYmVnaW5QYXRoKCksQS5tb3ZlVG8oZSx0KzctaSpyLmNsYW1wKC40KkIoMCksLTIsMikpO2Zvcih2YXIgYz0wO2M8bjtjKz0xKUEubGluZVRvKGUrYyx0KzctKGM8bz9pKnIuY2xhbXAoLjQqQihjKSwtMiwyKTowKSk7QS5zdHJva2UoKSxBLmZpbGxTdHlsZT0iaHNsKCIrci5jbGFtcCgyNSs5NSphLDAsMTIwKSsiLDEwMCUsNjAlKSIsQS5maWxsUmVjdChlLHQtNyw0LDQpLEEuZm9udD0iMTJweCBBcmlhbCIsQS50ZXh0QmFzZWxpbmU9Im1pZGRsZSIsQS50ZXh0QWxpZ249InJpZ2h0IixBLmZpbGxTdHlsZT0iI2VlZSIsQS5maWxsVGV4dChzLGUrbix0LTUpfSxuLmNvbnN0cmFpbnRzPWZ1bmN0aW9uKEEsZSl7Zm9yKHZhciB0PWUsbj0wO248QS5sZW5ndGg7bisrKXt2YXIgaT1BW25dO2lmKGkucmVuZGVyLnZpc2libGUmJmkucG9pbnRBJiZpLnBvaW50Qil7dmFyIG8scyxhPWkuYm9keUEsYz1pLmJvZHlCO2lmKG89YT9CLmFkZChhLnBvc2l0aW9uLGkucG9pbnRBKTppLnBvaW50QSwicGluIj09PWkucmVuZGVyLnR5cGUpdC5iZWdpblBhdGgoKSx0LmFyYyhvLngsby55LDMsMCwyKk1hdGguUEkpLHQuY2xvc2VQYXRoKCk7ZWxzZXtpZihzPWM/Qi5hZGQoYy5wb3NpdGlvbixpLnBvaW50Qik6aS5wb2ludEIsdC5iZWdpblBhdGgoKSx0Lm1vdmVUbyhvLngsby55KSwic3ByaW5nIj09PWkucmVuZGVyLnR5cGUpZm9yKHZhciBnLEU9Qi5zdWIocyxvKSxRPUIucGVycChCLm5vcm1hbGlzZShFKSksdT1NYXRoLmNlaWwoci5jbGFtcChpLmxlbmd0aC81LDEyLDIwKSksbD0xO2w8dTtsKz0xKWc9bCUyPT0wPzE6LTEsdC5saW5lVG8oby54K0UueCoobC91KStRLngqZyo0LG8ueStFLnkqKGwvdSkrUS55KmcqNCk7dC5saW5lVG8ocy54LHMueSl9aS5yZW5kZXIubGluZVdpZHRoJiYodC5saW5lV2lkdGg9aS5yZW5kZXIubGluZVdpZHRoLHQuc3Ryb2tlU3R5bGU9aS5yZW5kZXIuc3Ryb2tlU3R5bGUsdC5zdHJva2UoKSksaS5yZW5kZXIuYW5jaG9ycyYmKHQuZmlsbFN0eWxlPWkucmVuZGVyLnN0cm9rZVN0eWxlLHQuYmVnaW5QYXRoKCksdC5hcmMoby54LG8ueSwzLDAsMipNYXRoLlBJKSx0LmFyYyhzLngscy55LDMsMCwyKk1hdGguUEkpLHQuY2xvc2VQYXRoKCksdC5maWxsKCkpfX19LG4uYm9kaWVzPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbixpLHIsbyxzPXQsYT0oQS5lbmdpbmUsQS5vcHRpb25zKSxCPWEuc2hvd0ludGVybmFsRWRnZXN8fCFhLndpcmVmcmFtZXM7Zm9yKHI9MDtyPGUubGVuZ3RoO3IrKylpZigobj1lW3JdKS5yZW5kZXIudmlzaWJsZSlmb3Iobz1uLnBhcnRzLmxlbmd0aD4xPzE6MDtvPG4ucGFydHMubGVuZ3RoO28rKylpZigoaT1uLnBhcnRzW29dKS5yZW5kZXIudmlzaWJsZSl7aWYoYS5zaG93U2xlZXBpbmcmJm4uaXNTbGVlcGluZz9zLmdsb2JhbEFscGhhPS41KmkucmVuZGVyLm9wYWNpdHk6MSE9PWkucmVuZGVyLm9wYWNpdHkmJihzLmdsb2JhbEFscGhhPWkucmVuZGVyLm9wYWNpdHkpLGkucmVuZGVyLnNwcml0ZSYmaS5yZW5kZXIuc3ByaXRlLnRleHR1cmUmJiFhLndpcmVmcmFtZXMpe3ZhciBjPWkucmVuZGVyLnNwcml0ZSxnPXUoQSxjLnRleHR1cmUpO3MudHJhbnNsYXRlKGkucG9zaXRpb24ueCxpLnBvc2l0aW9uLnkpLHMucm90YXRlKGkuYW5nbGUpLHMuZHJhd0ltYWdlKGcsZy53aWR0aCotYy54T2Zmc2V0KmMueFNjYWxlLGcuaGVpZ2h0Ki1jLnlPZmZzZXQqYy55U2NhbGUsZy53aWR0aCpjLnhTY2FsZSxnLmhlaWdodCpjLnlTY2FsZSkscy5yb3RhdGUoLWkuYW5nbGUpLHMudHJhbnNsYXRlKC1pLnBvc2l0aW9uLngsLWkucG9zaXRpb24ueSl9ZWxzZXtpZihpLmNpcmNsZVJhZGl1cylzLmJlZ2luUGF0aCgpLHMuYXJjKGkucG9zaXRpb24ueCxpLnBvc2l0aW9uLnksaS5jaXJjbGVSYWRpdXMsMCwyKk1hdGguUEkpO2Vsc2V7cy5iZWdpblBhdGgoKSxzLm1vdmVUbyhpLnZlcnRpY2VzWzBdLngsaS52ZXJ0aWNlc1swXS55KTtmb3IodmFyIEU9MTtFPGkudmVydGljZXMubGVuZ3RoO0UrKykhaS52ZXJ0aWNlc1tFLTFdLmlzSW50ZXJuYWx8fEI/cy5saW5lVG8oaS52ZXJ0aWNlc1tFXS54LGkudmVydGljZXNbRV0ueSk6cy5tb3ZlVG8oaS52ZXJ0aWNlc1tFXS54LGkudmVydGljZXNbRV0ueSksaS52ZXJ0aWNlc1tFXS5pc0ludGVybmFsJiYhQiYmcy5tb3ZlVG8oaS52ZXJ0aWNlc1soRSsxKSVpLnZlcnRpY2VzLmxlbmd0aF0ueCxpLnZlcnRpY2VzWyhFKzEpJWkudmVydGljZXMubGVuZ3RoXS55KTtzLmxpbmVUbyhpLnZlcnRpY2VzWzBdLngsaS52ZXJ0aWNlc1swXS55KSxzLmNsb3NlUGF0aCgpfWEud2lyZWZyYW1lcz8ocy5saW5lV2lkdGg9MSxzLnN0cm9rZVN0eWxlPUEub3B0aW9ucy53aXJlZnJhbWVTdHJva2VTdHlsZSxzLnN0cm9rZSgpKToocy5maWxsU3R5bGU9aS5yZW5kZXIuZmlsbFN0eWxlLGkucmVuZGVyLmxpbmVXaWR0aCYmKHMubGluZVdpZHRoPWkucmVuZGVyLmxpbmVXaWR0aCxzLnN0cm9rZVN0eWxlPWkucmVuZGVyLnN0cm9rZVN0eWxlLHMuc3Ryb2tlKCkpLHMuZmlsbCgpKX1zLmdsb2JhbEFscGhhPTF9fSxuLmJvZHlXaXJlZnJhbWVzPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbixpLHIsbyxzLGE9dCxCPUEub3B0aW9ucy5zaG93SW50ZXJuYWxFZGdlcztmb3IoYS5iZWdpblBhdGgoKSxyPTA7cjxlLmxlbmd0aDtyKyspaWYoKG49ZVtyXSkucmVuZGVyLnZpc2libGUpZm9yKHM9bi5wYXJ0cy5sZW5ndGg+MT8xOjA7czxuLnBhcnRzLmxlbmd0aDtzKyspe2ZvcihpPW4ucGFydHNbc10sYS5tb3ZlVG8oaS52ZXJ0aWNlc1swXS54LGkudmVydGljZXNbMF0ueSksbz0xO288aS52ZXJ0aWNlcy5sZW5ndGg7bysrKSFpLnZlcnRpY2VzW28tMV0uaXNJbnRlcm5hbHx8Qj9hLmxpbmVUbyhpLnZlcnRpY2VzW29dLngsaS52ZXJ0aWNlc1tvXS55KTphLm1vdmVUbyhpLnZlcnRpY2VzW29dLngsaS52ZXJ0aWNlc1tvXS55KSxpLnZlcnRpY2VzW29dLmlzSW50ZXJuYWwmJiFCJiZhLm1vdmVUbyhpLnZlcnRpY2VzWyhvKzEpJWkudmVydGljZXMubGVuZ3RoXS54LGkudmVydGljZXNbKG8rMSklaS52ZXJ0aWNlcy5sZW5ndGhdLnkpO2EubGluZVRvKGkudmVydGljZXNbMF0ueCxpLnZlcnRpY2VzWzBdLnkpfWEubGluZVdpZHRoPTEsYS5zdHJva2VTdHlsZT1BLm9wdGlvbnMud2lyZWZyYW1lU3Ryb2tlU3R5bGUsYS5zdHJva2UoKX0sbi5ib2R5Q29udmV4SHVsbHM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuLGkscixvPXQ7Zm9yKG8uYmVnaW5QYXRoKCksaT0wO2k8ZS5sZW5ndGg7aSsrKWlmKChuPWVbaV0pLnJlbmRlci52aXNpYmxlJiYxIT09bi5wYXJ0cy5sZW5ndGgpe2ZvcihvLm1vdmVUbyhuLnZlcnRpY2VzWzBdLngsbi52ZXJ0aWNlc1swXS55KSxyPTE7cjxuLnZlcnRpY2VzLmxlbmd0aDtyKyspby5saW5lVG8obi52ZXJ0aWNlc1tyXS54LG4udmVydGljZXNbcl0ueSk7by5saW5lVG8obi52ZXJ0aWNlc1swXS54LG4udmVydGljZXNbMF0ueSl9by5saW5lV2lkdGg9MSxvLnN0cm9rZVN0eWxlPSJyZ2JhKDI1NSwyNTUsMjU1LDAuMikiLG8uc3Ryb2tlKCl9LG4udmVydGV4TnVtYmVycz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saSxyLG89dDtmb3Iobj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcz1lW25dLnBhcnRzO2ZvcihyPXMubGVuZ3RoPjE/MTowO3I8cy5sZW5ndGg7cisrKXt2YXIgYT1zW3JdO2ZvcihpPTA7aTxhLnZlcnRpY2VzLmxlbmd0aDtpKyspby5maWxsU3R5bGU9InJnYmEoMjU1LDI1NSwyNTUsMC4yKSIsby5maWxsVGV4dChuKyJfIitpLGEucG9zaXRpb24ueCsuOCooYS52ZXJ0aWNlc1tpXS54LWEucG9zaXRpb24ueCksYS5wb3NpdGlvbi55Ky44KihhLnZlcnRpY2VzW2ldLnktYS5wb3NpdGlvbi55KSl9fX0sbi5tb3VzZVBvc2l0aW9uPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10O24uZmlsbFN0eWxlPSJyZ2JhKDI1NSwyNTUsMjU1LDAuOCkiLG4uZmlsbFRleHQoZS5wb3NpdGlvbi54KyIgICIrZS5wb3NpdGlvbi55LGUucG9zaXRpb24ueCs1LGUucG9zaXRpb24ueS01KX0sbi5ib2R5Qm91bmRzPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10LGk9KEEuZW5naW5lLEEub3B0aW9ucyk7bi5iZWdpblBhdGgoKTtmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKylpZihlW3JdLnJlbmRlci52aXNpYmxlKWZvcih2YXIgbz1lW3JdLnBhcnRzLHM9by5sZW5ndGg+MT8xOjA7czxvLmxlbmd0aDtzKyspe3ZhciBhPW9bc107bi5yZWN0KGEuYm91bmRzLm1pbi54LGEuYm91bmRzLm1pbi55LGEuYm91bmRzLm1heC54LWEuYm91bmRzLm1pbi54LGEuYm91bmRzLm1heC55LWEuYm91bmRzLm1pbi55KX1pLndpcmVmcmFtZXM/bi5zdHJva2VTdHlsZT0icmdiYSgyNTUsMjU1LDI1NSwwLjA4KSI6bi5zdHJva2VTdHlsZT0icmdiYSgwLDAsMCwwLjEpIixuLmxpbmVXaWR0aD0xLG4uc3Ryb2tlKCl9LG4uYm9keUF4ZXM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuLGkscixvLHM9dCxhPShBLmVuZ2luZSxBLm9wdGlvbnMpO2ZvcihzLmJlZ2luUGF0aCgpLGk9MDtpPGUubGVuZ3RoO2krKyl7dmFyIEI9ZVtpXSxjPUIucGFydHM7aWYoQi5yZW5kZXIudmlzaWJsZSlpZihhLnNob3dBeGVzKWZvcihyPWMubGVuZ3RoPjE/MTowO3I8Yy5sZW5ndGg7cisrKWZvcihuPWNbcl0sbz0wO288bi5heGVzLmxlbmd0aDtvKyspe3ZhciBnPW4uYXhlc1tvXTtzLm1vdmVUbyhuLnBvc2l0aW9uLngsbi5wb3NpdGlvbi55KSxzLmxpbmVUbyhuLnBvc2l0aW9uLngrMjAqZy54LG4ucG9zaXRpb24ueSsyMCpnLnkpfWVsc2UgZm9yKHI9Yy5sZW5ndGg+MT8xOjA7cjxjLmxlbmd0aDtyKyspZm9yKG49Y1tyXSxvPTA7bzxuLmF4ZXMubGVuZ3RoO28rKylzLm1vdmVUbyhuLnBvc2l0aW9uLngsbi5wb3NpdGlvbi55KSxzLmxpbmVUbygobi52ZXJ0aWNlc1swXS54K24udmVydGljZXNbbi52ZXJ0aWNlcy5sZW5ndGgtMV0ueCkvMiwobi52ZXJ0aWNlc1swXS55K24udmVydGljZXNbbi52ZXJ0aWNlcy5sZW5ndGgtMV0ueSkvMil9YS53aXJlZnJhbWVzPyhzLnN0cm9rZVN0eWxlPSJpbmRpYW5yZWQiLHMubGluZVdpZHRoPTEpOihzLnN0cm9rZVN0eWxlPSJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCkiLHMuZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uPSJvdmVybGF5IixzLmxpbmVXaWR0aD0yKSxzLnN0cm9rZSgpLHMuZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uPSJzb3VyY2Utb3ZlciJ9LG4uYm9keVBvc2l0aW9ucz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saSxyLG8scz10LGE9KEEuZW5naW5lLEEub3B0aW9ucyk7Zm9yKHMuYmVnaW5QYXRoKCkscj0wO3I8ZS5sZW5ndGg7cisrKWlmKChuPWVbcl0pLnJlbmRlci52aXNpYmxlKWZvcihvPTA7bzxuLnBhcnRzLmxlbmd0aDtvKyspaT1uLnBhcnRzW29dLHMuYXJjKGkucG9zaXRpb24ueCxpLnBvc2l0aW9uLnksMywwLDIqTWF0aC5QSSwhMSkscy5jbG9zZVBhdGgoKTtmb3IoYS53aXJlZnJhbWVzP3MuZmlsbFN0eWxlPSJpbmRpYW5yZWQiOnMuZmlsbFN0eWxlPSJyZ2JhKDAsMCwwLDAuNSkiLHMuZmlsbCgpLHMuYmVnaW5QYXRoKCkscj0wO3I8ZS5sZW5ndGg7cisrKShuPWVbcl0pLnJlbmRlci52aXNpYmxlJiYocy5hcmMobi5wb3NpdGlvblByZXYueCxuLnBvc2l0aW9uUHJldi55LDIsMCwyKk1hdGguUEksITEpLHMuY2xvc2VQYXRoKCkpO3MuZmlsbFN0eWxlPSJyZ2JhKDI1NSwxNjUsMCwwLjgpIixzLmZpbGwoKX0sbi5ib2R5VmVsb2NpdHk9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXQ7bi5iZWdpblBhdGgoKTtmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyl7dmFyIG89ZVtyXTtpZihvLnJlbmRlci52aXNpYmxlKXt2YXIgcz1pLmdldFZlbG9jaXR5KG8pO24ubW92ZVRvKG8ucG9zaXRpb24ueCxvLnBvc2l0aW9uLnkpLG4ubGluZVRvKG8ucG9zaXRpb24ueCtzLngsby5wb3NpdGlvbi55K3MueSl9fW4ubGluZVdpZHRoPTMsbi5zdHJva2VTdHlsZT0iY29ybmZsb3dlcmJsdWUiLG4uc3Ryb2tlKCl9LG4uYm9keUlkcz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saSxyPXQ7Zm9yKG49MDtuPGUubGVuZ3RoO24rKylpZihlW25dLnJlbmRlci52aXNpYmxlKXt2YXIgbz1lW25dLnBhcnRzO2ZvcihpPW8ubGVuZ3RoPjE/MTowO2k8by5sZW5ndGg7aSsrKXt2YXIgcz1vW2ldO3IuZm9udD0iMTJweCBBcmlhbCIsci5maWxsU3R5bGU9InJnYmEoMjU1LDI1NSwyNTUsMC41KSIsci5maWxsVGV4dChzLmlkLHMucG9zaXRpb24ueCsxMCxzLnBvc2l0aW9uLnktMTApfX19LG4uY29sbGlzaW9ucz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saSxyLG8scz10LGE9QS5vcHRpb25zO2ZvcihzLmJlZ2luUGF0aCgpLHI9MDtyPGUubGVuZ3RoO3IrKylpZigobj1lW3JdKS5pc0FjdGl2ZSlmb3IoaT1uLmNvbGxpc2lvbixvPTA7bzxuLmNvbnRhY3RDb3VudDtvKyspe3ZhciBCPW4uY29udGFjdHNbb10udmVydGV4O3MucmVjdChCLngtMS41LEIueS0xLjUsMy41LDMuNSl9Zm9yKGEud2lyZWZyYW1lcz9zLmZpbGxTdHlsZT0icmdiYSgyNTUsMjU1LDI1NSwwLjcpIjpzLmZpbGxTdHlsZT0ib3JhbmdlIixzLmZpbGwoKSxzLmJlZ2luUGF0aCgpLHI9MDtyPGUubGVuZ3RoO3IrKylpZigobj1lW3JdKS5pc0FjdGl2ZSYmKGk9bi5jb2xsaXNpb24sbi5jb250YWN0Q291bnQ+MCkpe3ZhciBjPW4uY29udGFjdHNbMF0udmVydGV4LngsZz1uLmNvbnRhY3RzWzBdLnZlcnRleC55OzI9PT1uLmNvbnRhY3RDb3VudCYmKGM9KG4uY29udGFjdHNbMF0udmVydGV4Lngrbi5jb250YWN0c1sxXS52ZXJ0ZXgueCkvMixnPShuLmNvbnRhY3RzWzBdLnZlcnRleC55K24uY29udGFjdHNbMV0udmVydGV4LnkpLzIpLGkuYm9keUI9PT1pLnN1cHBvcnRzWzBdLmJvZHl8fCEwPT09aS5ib2R5QS5pc1N0YXRpYz9zLm1vdmVUbyhjLTgqaS5ub3JtYWwueCxnLTgqaS5ub3JtYWwueSk6cy5tb3ZlVG8oYys4Kmkubm9ybWFsLngsZys4Kmkubm9ybWFsLnkpLHMubGluZVRvKGMsZyl9YS53aXJlZnJhbWVzP3Muc3Ryb2tlU3R5bGU9InJnYmEoMjU1LDE2NSwwLDAuNykiOnMuc3Ryb2tlU3R5bGU9Im9yYW5nZSIscy5saW5lV2lkdGg9MSxzLnN0cm9rZSgpfSxuLnNlcGFyYXRpb25zPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbixpLHIsbyxzLGE9dCxCPUEub3B0aW9ucztmb3IoYS5iZWdpblBhdGgoKSxzPTA7czxlLmxlbmd0aDtzKyspaWYoKG49ZVtzXSkuaXNBY3RpdmUpe3I9KGk9bi5jb2xsaXNpb24pLmJvZHlBO3ZhciBjPTE7KG89aS5ib2R5QikuaXNTdGF0aWN8fHIuaXNTdGF0aWN8fChjPS41KSxvLmlzU3RhdGljJiYoYz0wKSxhLm1vdmVUbyhvLnBvc2l0aW9uLngsby5wb3NpdGlvbi55KSxhLmxpbmVUbyhvLnBvc2l0aW9uLngtaS5wZW5ldHJhdGlvbi54KmMsby5wb3NpdGlvbi55LWkucGVuZXRyYXRpb24ueSpjKSxjPTEsby5pc1N0YXRpY3x8ci5pc1N0YXRpY3x8KGM9LjUpLHIuaXNTdGF0aWMmJihjPTApLGEubW92ZVRvKHIucG9zaXRpb24ueCxyLnBvc2l0aW9uLnkpLGEubGluZVRvKHIucG9zaXRpb24ueCtpLnBlbmV0cmF0aW9uLngqYyxyLnBvc2l0aW9uLnkraS5wZW5ldHJhdGlvbi55KmMpfUIud2lyZWZyYW1lcz9hLnN0cm9rZVN0eWxlPSJyZ2JhKDI1NSwxNjUsMCwwLjUpIjphLnN0cm9rZVN0eWxlPSJvcmFuZ2UiLGEuc3Ryb2tlKCl9LG4uaW5zcGVjdG9yPWZ1bmN0aW9uKEEsZSl7QS5lbmdpbmU7dmFyIHQsbj1BLnNlbGVjdGVkLGk9QS5yZW5kZXIscj1pLm9wdGlvbnM7aWYoci5oYXNCb3VuZHMpe3ZhciBvPWkuYm91bmRzLm1heC54LWkuYm91bmRzLm1pbi54LHM9aS5ib3VuZHMubWF4LnktaS5ib3VuZHMubWluLnksYT1vL2kub3B0aW9ucy53aWR0aCxCPXMvaS5vcHRpb25zLmhlaWdodDtlLnNjYWxlKDEvYSwxL0IpLGUudHJhbnNsYXRlKC1pLmJvdW5kcy5taW4ueCwtaS5ib3VuZHMubWluLnkpfWZvcih2YXIgYz0wO2M8bi5sZW5ndGg7YysrKXt2YXIgZz1uW2NdLmRhdGE7c3dpdGNoKGUudHJhbnNsYXRlKC41LC41KSxlLmxpbmVXaWR0aD0xLGUuc3Ryb2tlU3R5bGU9InJnYmEoMjU1LDE2NSwwLDAuOSkiLGUuc2V0TGluZURhc2goWzEsMl0pLGcudHlwZSl7Y2FzZSJib2R5Ijp0PWcuYm91bmRzLGUuYmVnaW5QYXRoKCksZS5yZWN0KE1hdGguZmxvb3IodC5taW4ueC0zKSxNYXRoLmZsb29yKHQubWluLnktMyksTWF0aC5mbG9vcih0Lm1heC54LXQubWluLngrNiksTWF0aC5mbG9vcih0Lm1heC55LXQubWluLnkrNikpLGUuY2xvc2VQYXRoKCksZS5zdHJva2UoKTticmVhaztjYXNlImNvbnN0cmFpbnQiOnZhciBFPWcucG9pbnRBO2cuYm9keUEmJihFPWcucG9pbnRCKSxlLmJlZ2luUGF0aCgpLGUuYXJjKEUueCxFLnksMTAsMCwyKk1hdGguUEkpLGUuY2xvc2VQYXRoKCksZS5zdHJva2UoKX1lLnNldExpbmVEYXNoKFtdKSxlLnRyYW5zbGF0ZSgtLjUsLS41KX1udWxsIT09QS5zZWxlY3RTdGFydCYmKGUudHJhbnNsYXRlKC41LC41KSxlLmxpbmVXaWR0aD0xLGUuc3Ryb2tlU3R5bGU9InJnYmEoMjU1LDE2NSwwLDAuNikiLGUuZmlsbFN0eWxlPSJyZ2JhKDI1NSwxNjUsMCwwLjEpIix0PUEuc2VsZWN0Qm91bmRzLGUuYmVnaW5QYXRoKCksZS5yZWN0KE1hdGguZmxvb3IodC5taW4ueCksTWF0aC5mbG9vcih0Lm1pbi55KSxNYXRoLmZsb29yKHQubWF4LngtdC5taW4ueCksTWF0aC5mbG9vcih0Lm1heC55LXQubWluLnkpKSxlLmNsb3NlUGF0aCgpLGUuc3Ryb2tlKCksZS5maWxsKCksZS50cmFuc2xhdGUoLS41LC0uNSkpLHIuaGFzQm91bmRzJiZlLnNldFRyYW5zZm9ybSgxLDAsMCwxLDAsMCl9O3ZhciB0PWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS5lbmdpbmUsaT1BLnRpbWluZyxyPWkuaGlzdG9yeVNpemUsbz10LnRpbWluZy50aW1lc3RhbXA7aS5kZWx0YT1lLWkubGFzdFRpbWV8fG4uX2dvb2REZWx0YSxpLmxhc3RUaW1lPWUsaS50aW1lc3RhbXBFbGFwc2VkPW8taS5sYXN0VGltZXN0YW1wfHwwLGkubGFzdFRpbWVzdGFtcD1vLGkuZGVsdGFIaXN0b3J5LnVuc2hpZnQoaS5kZWx0YSksaS5kZWx0YUhpc3RvcnkubGVuZ3RoPU1hdGgubWluKGkuZGVsdGFIaXN0b3J5Lmxlbmd0aCxyKSxpLmVuZ2luZURlbHRhSGlzdG9yeS51bnNoaWZ0KHQudGltaW5nLmxhc3REZWx0YSksaS5lbmdpbmVEZWx0YUhpc3RvcnkubGVuZ3RoPU1hdGgubWluKGkuZW5naW5lRGVsdGFIaXN0b3J5Lmxlbmd0aCxyKSxpLnRpbWVzdGFtcEVsYXBzZWRIaXN0b3J5LnVuc2hpZnQoaS50aW1lc3RhbXBFbGFwc2VkKSxpLnRpbWVzdGFtcEVsYXBzZWRIaXN0b3J5Lmxlbmd0aD1NYXRoLm1pbihpLnRpbWVzdGFtcEVsYXBzZWRIaXN0b3J5Lmxlbmd0aCxyKSxpLmVuZ2luZVVwZGF0ZXNIaXN0b3J5LnVuc2hpZnQodC50aW1pbmcubGFzdFVwZGF0ZXNQZXJGcmFtZSksaS5lbmdpbmVVcGRhdGVzSGlzdG9yeS5sZW5ndGg9TWF0aC5taW4oaS5lbmdpbmVVcGRhdGVzSGlzdG9yeS5sZW5ndGgsciksaS5lbmdpbmVFbGFwc2VkSGlzdG9yeS51bnNoaWZ0KHQudGltaW5nLmxhc3RFbGFwc2VkKSxpLmVuZ2luZUVsYXBzZWRIaXN0b3J5Lmxlbmd0aD1NYXRoLm1pbihpLmVuZ2luZUVsYXBzZWRIaXN0b3J5Lmxlbmd0aCxyKSxpLmVsYXBzZWRIaXN0b3J5LnVuc2hpZnQoaS5sYXN0RWxhcHNlZCksaS5lbGFwc2VkSGlzdG9yeS5sZW5ndGg9TWF0aC5taW4oaS5lbGFwc2VkSGlzdG9yeS5sZW5ndGgscil9LGc9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTAsdD0wO3Q8QS5sZW5ndGg7dCs9MSllKz1BW3RdO3JldHVybiBlL0EubGVuZ3RofHwwfSxFPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7cmV0dXJuIHQud2lkdGg9QSx0LmhlaWdodD1lLHQub25jb250ZXh0bWVudT1mdW5jdGlvbigpe3JldHVybiExfSx0Lm9uc2VsZWN0c3RhcnQ9ZnVuY3Rpb24oKXtyZXR1cm4hMX0sdH0sUT1mdW5jdGlvbihBKXt2YXIgZT1BLmdldENvbnRleHQoIjJkIik7cmV0dXJuKHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHwxKS8oZS53ZWJraXRCYWNraW5nU3RvcmVQaXhlbFJhdGlvfHxlLm1vekJhY2tpbmdTdG9yZVBpeGVsUmF0aW98fGUubXNCYWNraW5nU3RvcmVQaXhlbFJhdGlvfHxlLm9CYWNraW5nU3RvcmVQaXhlbFJhdGlvfHxlLmJhY2tpbmdTdG9yZVBpeGVsUmF0aW98fDEpfSx1PWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS50ZXh0dXJlc1tlXTtyZXR1cm4gdHx8KCh0PUEudGV4dHVyZXNbZV09bmV3IEltYWdlKS5zcmM9ZSx0KX0sbD1mdW5jdGlvbihBLGUpe3ZhciB0PWU7LyhqcGd8Z2lmfHBuZykkLy50ZXN0KGUpJiYodD0idXJsKCIrZSsiKSIpLEEuY2FudmFzLnN0eWxlLmJhY2tncm91bmQ9dCxBLmNhbnZhcy5zdHlsZS5iYWNrZ3JvdW5kU2l6ZT0iY29udGFpbiIsQS5jdXJyZW50QmFja2dyb3VuZD1lfX0oKX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoNSkscj10KDE3KSxvPXQoMCk7IWZ1bmN0aW9uKCl7bi5fbWF4RnJhbWVEZWx0YT0xZTMvMTUsbi5fZnJhbWVEZWx0YUZhbGxiYWNrPTFlMy82MCxuLl90aW1lQnVmZmVyTWFyZ2luPTEuNSxuLl9lbGFwc2VkTmV4dEVzdGltYXRlPTEsbi5fc21vb3RoaW5nTG93ZXJCb3VuZD0uMSxuLl9zbW9vdGhpbmdVcHBlckJvdW5kPS45LG4uY3JlYXRlPWZ1bmN0aW9uKEEpe3ZhciBlPW8uZXh0ZW5kKHtkZWx0YToxZTMvNjAsZnJhbWVEZWx0YTpudWxsLGZyYW1lRGVsdGFTbW9vdGhpbmc6ITAsZnJhbWVEZWx0YVNuYXBwaW5nOiEwLGZyYW1lRGVsdGFIaXN0b3J5OltdLGZyYW1lRGVsdGFIaXN0b3J5U2l6ZToxMDAsZnJhbWVSZXF1ZXN0SWQ6bnVsbCx0aW1lQnVmZmVyOjAsdGltZUxhc3RUaWNrOm51bGwsbWF4VXBkYXRlczpudWxsLG1heEZyYW1lVGltZToxZTMvMzAsbGFzdFVwZGF0ZXNEZWZlcnJlZDowLGVuYWJsZWQ6ITB9LEEpO3JldHVybiBlLmZwcz0wLGV9LG4ucnVuPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEudGltZUJ1ZmZlcj1uLl9mcmFtZURlbHRhRmFsbGJhY2ssZnVuY3Rpb24gdChpKXtBLmZyYW1lUmVxdWVzdElkPW4uX29uTmV4dEZyYW1lKEEsdCksaSYmQS5lbmFibGVkJiZuLnRpY2soQSxlLGkpfSgpLEF9LG4udGljaz1mdW5jdGlvbihlLHQscyl7dmFyIGE9by5ub3coKSxCPWUuZGVsdGEsYz0wLGc9cy1lLnRpbWVMYXN0VGljaztpZigoIWd8fCFlLnRpbWVMYXN0VGlja3x8Zz5NYXRoLm1heChuLl9tYXhGcmFtZURlbHRhLGUubWF4RnJhbWVUaW1lKSkmJihnPWUuZnJhbWVEZWx0YXx8bi5fZnJhbWVEZWx0YUZhbGxiYWNrKSxlLmZyYW1lRGVsdGFTbW9vdGhpbmcpe2UuZnJhbWVEZWx0YUhpc3RvcnkucHVzaChnKSxlLmZyYW1lRGVsdGFIaXN0b3J5PWUuZnJhbWVEZWx0YUhpc3Rvcnkuc2xpY2UoLWUuZnJhbWVEZWx0YUhpc3RvcnlTaXplKTt2YXIgRT1lLmZyYW1lRGVsdGFIaXN0b3J5LnNsaWNlKDApLnNvcnQoKSxRPWUuZnJhbWVEZWx0YUhpc3Rvcnkuc2xpY2UoRS5sZW5ndGgqbi5fc21vb3RoaW5nTG93ZXJCb3VuZCxFLmxlbmd0aCpuLl9zbW9vdGhpbmdVcHBlckJvdW5kKTtnPUEoUSl8fGd9ZS5mcmFtZURlbHRhU25hcHBpbmcmJihnPTFlMy9NYXRoLnJvdW5kKDFlMy9nKSksZS5mcmFtZURlbHRhPWcsZS50aW1lTGFzdFRpY2s9cyxlLnRpbWVCdWZmZXIrPWUuZnJhbWVEZWx0YSxlLnRpbWVCdWZmZXI9by5jbGFtcChlLnRpbWVCdWZmZXIsMCxlLmZyYW1lRGVsdGErQipuLl90aW1lQnVmZmVyTWFyZ2luKSxlLmxhc3RVcGRhdGVzRGVmZXJyZWQ9MDt2YXIgdT1lLm1heFVwZGF0ZXN8fE1hdGguY2VpbChlLm1heEZyYW1lVGltZS9CKSxsPXt0aW1lc3RhbXA6dC50aW1pbmcudGltZXN0YW1wfTtpLnRyaWdnZXIoZSwiYmVmb3JlVGljayIsbCksaS50cmlnZ2VyKGUsInRpY2siLGwpO2Zvcih2YXIgaD1vLm5vdygpO0I+MCYmZS50aW1lQnVmZmVyPj1CKm4uX3RpbWVCdWZmZXJNYXJnaW47KXtpLnRyaWdnZXIoZSwiYmVmb3JlVXBkYXRlIixsKSxyLnVwZGF0ZSh0LEIpLGkudHJpZ2dlcihlLCJhZnRlclVwZGF0ZSIsbCksZS50aW1lQnVmZmVyLT1CLGMrPTE7dmFyIHc9by5ub3coKS1hLEM9by5ub3coKS1oLEk9dytuLl9lbGFwc2VkTmV4dEVzdGltYXRlKkMvYztpZihjPj11fHxJPmUubWF4RnJhbWVUaW1lKXtlLmxhc3RVcGRhdGVzRGVmZXJyZWQ9TWF0aC5yb3VuZChNYXRoLm1heCgwLGUudGltZUJ1ZmZlci9CLW4uX3RpbWVCdWZmZXJNYXJnaW4pKTticmVha319dC50aW1pbmcubGFzdFVwZGF0ZXNQZXJGcmFtZT1jLGkudHJpZ2dlcihlLCJhZnRlclRpY2siLGwpLGUuZnJhbWVEZWx0YUhpc3RvcnkubGVuZ3RoPj0xMDAmJihlLmxhc3RVcGRhdGVzRGVmZXJyZWQmJk1hdGgucm91bmQoZS5mcmFtZURlbHRhL0IpPnU/by53YXJuT25jZSgiTWF0dGVyLlJ1bm5lcjogcnVubmVyIHJlYWNoZWQgcnVubmVyLm1heFVwZGF0ZXMsIHNlZSBkb2NzLiIpOmUubGFzdFVwZGF0ZXNEZWZlcnJlZCYmby53YXJuT25jZSgiTWF0dGVyLlJ1bm5lcjogcnVubmVyIHJlYWNoZWQgcnVubmVyLm1heEZyYW1lVGltZSwgc2VlIGRvY3MuIiksdm9pZCAwIT09ZS5pc0ZpeGVkJiZvLndhcm5PbmNlKCJNYXR0ZXIuUnVubmVyOiBydW5uZXIuaXNGaXhlZCBpcyBub3cgcmVkdW5kYW50LCBzZWUgZG9jcy4iKSwoZS5kZWx0YU1pbnx8ZS5kZWx0YU1heCkmJm8ud2Fybk9uY2UoIk1hdHRlci5SdW5uZXI6IHJ1bm5lci5kZWx0YU1pbiBhbmQgcnVubmVyLmRlbHRhTWF4IHdlcmUgcmVtb3ZlZCwgc2VlIGRvY3MuIiksMCE9PWUuZnBzJiZvLndhcm5PbmNlKCJNYXR0ZXIuUnVubmVyOiBydW5uZXIuZnBzIHdhcyByZXBsYWNlZCBieSBydW5uZXIuZGVsdGEsIHNlZSBkb2NzLiIpKX0sbi5zdG9wPWZ1bmN0aW9uKEEpe24uX2NhbmNlbE5leHRGcmFtZShBKX0sbi5fb25OZXh0RnJhbWU9ZnVuY3Rpb24oQSxlKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8IXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUpdGhyb3cgbmV3IEVycm9yKCJNYXR0ZXIuUnVubmVyOiBtaXNzaW5nIHJlcXVpcmVkIGdsb2JhbCB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lLiIpO3JldHVybiBBLmZyYW1lUmVxdWVzdElkPXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZSksQS5mcmFtZVJlcXVlc3RJZH0sbi5fY2FuY2VsTmV4dEZyYW1lPWZ1bmN0aW9uKEEpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2Ygd2luZG93fHwhd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKXRocm93IG5ldyBFcnJvcigiTWF0dGVyLlJ1bm5lcjogbWlzc2luZyByZXF1aXJlZCBnbG9iYWwgd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lLiIpO3dpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZShBLmZyYW1lUmVxdWVzdElkKX07dmFyIEE9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTAsdD1BLmxlbmd0aCxuPTA7bjx0O24rPTEpZSs9QVtuXTtyZXR1cm4gZS90fHwwfX0oKX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXt9O0EuZXhwb3J0cz1uO3ZhciBpPXQoOCkscj10KDApLmRlcHJlY2F0ZWQ7bi5jb2xsaWRlcz1mdW5jdGlvbihBLGUpe3JldHVybiBpLmNvbGxpZGVzKEEsZSl9LHIobiwiY29sbGlkZXMiLCJTQVQuY29sbGlkZXMg4p6kIHJlcGxhY2VkIGJ5IENvbGxpc2lvbi5jb2xsaWRlcyIpfSxmdW5jdGlvbihBLGUsdCl7dmFyIG49e307QS5leHBvcnRzPW4sdCgxKTt2YXIgaT10KDApO24ucGF0aFRvVmVydGljZXM9ZnVuY3Rpb24oQSxlKXsidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8IlNWR1BhdGhTZWciaW4gd2luZG93fHxpLndhcm4oIlN2Zy5wYXRoVG9WZXJ0aWNlczogU1ZHUGF0aFNlZyBub3QgZGVmaW5lZCwgYSBwb2x5ZmlsbCBpcyByZXF1aXJlZC4iKTt2YXIgdCxyLG8scyxhLEIsYyxnLEUsUSx1LGw9W10saD0wLHc9MCxDPTA7ZT1lfHwxNTt2YXIgST1mdW5jdGlvbihBLGUsdCl7dmFyIG49dCUyPT0xJiZ0PjE7aWYoIUV8fEEhPUUueHx8ZSE9RS55KXtFJiZuPyhRPUUueCx1PUUueSk6KFE9MCx1PTApO3ZhciBpPXt4OlErQSx5OnUrZX07IW4mJkV8fChFPWkpLGwucHVzaChpKSx3PVErQSxDPXUrZX19LE09ZnVuY3Rpb24oQSl7dmFyIGU9QS5wYXRoU2VnVHlwZUFzTGV0dGVyLnRvVXBwZXJDYXNlKCk7aWYoIloiIT09ZSl7c3dpdGNoKGUpe2Nhc2UiTSI6Y2FzZSJMIjpjYXNlIlQiOmNhc2UiQyI6Y2FzZSJTIjpjYXNlIlEiOnc9QS54LEM9QS55O2JyZWFrO2Nhc2UiSCI6dz1BLng7YnJlYWs7Y2FzZSJWIjpDPUEueX1JKHcsQyxBLnBhdGhTZWdUeXBlKX19O2ZvcihuLl9zdmdQYXRoVG9BYnNvbHV0ZShBKSxvPUEuZ2V0VG90YWxMZW5ndGgoKSxCPVtdLHQ9MDt0PEEucGF0aFNlZ0xpc3QubnVtYmVyT2ZJdGVtczt0Kz0xKUIucHVzaChBLnBhdGhTZWdMaXN0LmdldEl0ZW0odCkpO2ZvcihjPUIuY29uY2F0KCk7aDxvOyl7aWYoKGE9QltBLmdldFBhdGhTZWdBdExlbmd0aChoKV0pIT1nKXtmb3IoO2MubGVuZ3RoJiZjWzBdIT1hOylNKGMuc2hpZnQoKSk7Zz1hfXN3aXRjaChhLnBhdGhTZWdUeXBlQXNMZXR0ZXIudG9VcHBlckNhc2UoKSl7Y2FzZSJDIjpjYXNlIlQiOmNhc2UiUyI6Y2FzZSJRIjpjYXNlIkEiOnM9QS5nZXRQb2ludEF0TGVuZ3RoKGgpLEkocy54LHMueSwwKX1oKz1lfWZvcih0PTAscj1jLmxlbmd0aDt0PHI7Kyt0KU0oY1t0XSk7cmV0dXJuIGx9LG4uX3N2Z1BhdGhUb0Fic29sdXRlPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZSx0LG4saSxyLG8scz1BLnBhdGhTZWdMaXN0LGE9MCxCPTAsYz1zLm51bWJlck9mSXRlbXMsZz0wO2c8YzsrK2cpe3ZhciBFPXMuZ2V0SXRlbShnKSxRPUUucGF0aFNlZ1R5cGVBc0xldHRlcjtpZigvW01MSFZDU1FUQV0vLnRlc3QoUSkpIngiaW4gRSYmKGE9RS54KSwieSJpbiBFJiYoQj1FLnkpO2Vsc2Ugc3dpdGNoKCJ4MSJpbiBFJiYobj1hK0UueDEpLCJ4MiJpbiBFJiYocj1hK0UueDIpLCJ5MSJpbiBFJiYoaT1CK0UueTEpLCJ5MiJpbiBFJiYobz1CK0UueTIpLCJ4ImluIEUmJihhKz1FLngpLCJ5ImluIEUmJihCKz1FLnkpLFEpe2Nhc2UibSI6cy5yZXBsYWNlSXRlbShBLmNyZWF0ZVNWR1BhdGhTZWdNb3ZldG9BYnMoYSxCKSxnKTticmVhaztjYXNlImwiOnMucmVwbGFjZUl0ZW0oQS5jcmVhdGVTVkdQYXRoU2VnTGluZXRvQWJzKGEsQiksZyk7YnJlYWs7Y2FzZSJoIjpzLnJlcGxhY2VJdGVtKEEuY3JlYXRlU1ZHUGF0aFNlZ0xpbmV0b0hvcml6b250YWxBYnMoYSksZyk7YnJlYWs7Y2FzZSJ2IjpzLnJlcGxhY2VJdGVtKEEuY3JlYXRlU1ZHUGF0aFNlZ0xpbmV0b1ZlcnRpY2FsQWJzKEIpLGcpO2JyZWFrO2Nhc2UiYyI6cy5yZXBsYWNlSXRlbShBLmNyZWF0ZVNWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNBYnMoYSxCLG4saSxyLG8pLGcpO2JyZWFrO2Nhc2UicyI6cy5yZXBsYWNlSXRlbShBLmNyZWF0ZVNWR1BhdGhTZWdDdXJ2ZXRvQ3ViaWNTbW9vdGhBYnMoYSxCLHIsbyksZyk7YnJlYWs7Y2FzZSJxIjpzLnJlcGxhY2VJdGVtKEEuY3JlYXRlU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNBYnMoYSxCLG4saSksZyk7YnJlYWs7Y2FzZSJ0IjpzLnJlcGxhY2VJdGVtKEEuY3JlYXRlU1ZHUGF0aFNlZ0N1cnZldG9RdWFkcmF0aWNTbW9vdGhBYnMoYSxCKSxnKTticmVhaztjYXNlImEiOnMucmVwbGFjZUl0ZW0oQS5jcmVhdGVTVkdQYXRoU2VnQXJjQWJzKGEsQixFLnIxLEUucjIsRS5hbmdsZSxFLmxhcmdlQXJjRmxhZyxFLnN3ZWVwRmxhZyksZyk7YnJlYWs7Y2FzZSJ6IjpjYXNlIloiOmE9ZSxCPXR9Ik0iIT1RJiYibSIhPVF8fChlPWEsdD1CKX19fSxmdW5jdGlvbihBLGUsdCl7dmFyIG49e307QS5leHBvcnRzPW47dmFyIGk9dCg2KTt0KDApLG4uY3JlYXRlPWkuY3JlYXRlLG4uYWRkPWkuYWRkLG4ucmVtb3ZlPWkucmVtb3ZlLG4uY2xlYXI9aS5jbGVhcixuLmFkZENvbXBvc2l0ZT1pLmFkZENvbXBvc2l0ZSxuLmFkZEJvZHk9aS5hZGRCb2R5LG4uYWRkQ29uc3RyYWludD1pLmFkZENvbnN0cmFpbnR9XSl9LEEuZXhwb3J0cz10KCl9KS5jYWxsKHRoaXMsdCgxNSkpfSxmdW5jdGlvbihBLGUsdCl7ZnVuY3Rpb24gbihBLGUpe3ZhciB0PU9iamVjdC5rZXlzKEEpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSkuZW51bWVyYWJsZX0pKSksdC5wdXNoLmFwcGx5KHQsbil9cmV0dXJuIHR9ZnVuY3Rpb24gaShBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgdD1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9uKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cihBLGUsdFtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0KSk6bihPYmplY3QodCkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpKX0pKX1yZXR1cm4gQX1mdW5jdGlvbiByKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3Qgbz10KDEpLHM9dCgxMCksYT10KDMpLEI9dCgyKTtjbGFzcyBje2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOmZ1bmN0aW9uKigpe30sZT1hcmd1bWVudHMubGVuZ3RoPjE/YXJndW1lbnRzWzFdOnZvaWQgMDtyKHRoaXMsImN1c3RvbUlkIiwiandMYW1iZGEiKSxyKHRoaXMsImV4ZWN1dGUiLChmdW5jdGlvbiooQSxlLHQsbixyKXt2YXIgbyxzO251bGwhPT0obz1lLl9qd0xhbWJkYUFyZ3VtZW50KSYmdm9pZCAwIT09b3x8KGUuX2p3TGFtYmRhQXJndW1lbnQ9W10pLGUuX2p3TGFtYmRhQXJndW1lbnQucHVzaChBKSx0aGlzLnByb2MmJihlLnByb2NlZHVyZXM9aShpKHt9LHRoaXMucHJvYyksZS5wcm9jZWR1cmVzKSksdGhpcy50aW1lc0V4ZWN1dGVkKys7bGV0IGE9eWllbGQqbnVsbCE9PShzPXRoaXMuZnVuYyhBLGUsdCxuLHIsdGhpcykpJiZ2b2lkIDAhPT1zP3M6IiI7cmV0dXJuIGUuX2p3TGFtYmRhQXJndW1lbnQucG9wKCksYX0pKSx0aGlzLmZ1bmM9QSx0aGlzLnByb2M9ZT9lLnByb2NlZHVyZXM6e30sdGhpcy50aW1lc0V4ZWN1dGVkPTB9c3RhdGljIHRvTGFtYmRhKEEpe3JldHVybiBBIGluc3RhbmNlb2YgYz9BOm5ldyBjfWp3QXJyYXlIYW5kbGVyKCl7cmV0dXJuIkxhbWJkYSJ9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5mdW5jLnRvU3RyaW5nKCl9dG9SZXBvcnRlckNvbnRlbnQoKXtsZXQgQT1mdW5jdGlvbihBKXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPUEsZS5zdHlsZS5kaXNwbGF5PSJoaWRkZW4iLGUuc3R5bGUud2lkdGg9IjEwMCUiLGUuc3R5bGUuYm94U2l6aW5nPSJib3JkZXItYm94IixlLnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIixlfSh0aGlzLnRvU3RyaW5nKCkpO3JldHVybiBBLnN0eWxlLmRpc3BsYXk9ImJsb2NrIixBLnN0eWxlLnRleHRBbGlnbj0ibGVmdCIsQS5zdHlsZS5mb250RmFtaWx5PSJtb25vc3BhY2UiLEEuc3R5bGUuZm9udFNpemU9IjE0cHgiLEF9fWNvbnN0IGc9e1R5cGU6YyxCbG9jazp7YmxvY2tUeXBlOm8uUkVQT1JURVIsYmxvY2tTaGFwZTpzLlNRVUFSRSxmb3JjZU91dHB1dFR5cGU6IkxhbWJkYSIsZGlzYWJsZU1vbml0b3I6ITB9LEFyZ3VtZW50OntzaGFwZTpzLlNRVUFSRSxjaGVjazpbIkxhbWJkYSJdfX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7aWYoIXZtLmp3TGFtYmRhKXtjb25zdCBBPU9iamVjdC5nZXRQcm90b3R5cGVPZih2bS5ydW50aW1lLnNlcXVlbmNlcikucmV0aXJlVGhyZWFkO09iamVjdC5nZXRQcm90b3R5cGVPZih2bS5ydW50aW1lLnNlcXVlbmNlcikucmV0aXJlVGhyZWFkPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS5pc0NvbXBpbGVkO2UuaXNDb21waWxlZD0hMSxBLmNhbGwodGhpcyxlKSxlLmlzQ29tcGlsZWQ9dH19dm0uandMYW1iZGE9Zyx2bS5ydW50aW1lLnJlZ2lzdGVyU2VyaWFsaXplcigiandMYW1iZGEiLEE9Pm51bGwsQT0+bmV3IGcuVHlwZSksdm0ucnVudGltZS5yZWdpc3RlckNvbXBpbGVkRXh0ZW5zaW9uQmxvY2tzKCJqd0xhbWJkYSIsdGhpcy5nZXRDb21waWxlSW5mbygpKX1nZXQgcmF3TGFtYmRhQXZhaWxhYmxlKCl7dmFyIEE7cmV0dXJuIG51bGw9PT0oQT12bS5ydW50aW1lLmV4dF9TUGphdmFzY3JpcHRWMil8fHZvaWQgMD09PUE/dm9pZCAwOkEuaXNFZGl0b3JVbnNhbmRib3hlZH1nZXRJbmZvKCl7cmV0dXJue2lkOiJqd0xhbWJkYSIsbmFtZToiTGFtYmRhIixjb2xvcjE6IiNjNzFhNGIiLG1lbnVJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeU1DQXlNQ0krQ2lBZ1BHVnNiR2x3YzJVZ2MzUjViR1U5SW1acGJHdzZJSEpuWWlneE9Ua3NJREkyTENBM05TazdJSE4wY205clpUb2djbWRpS0RFMU9Td2dNakFzSURZd0tUc2lJR040UFNJeE1DSWdZM2s5SWpFd0lpQnllVDBpT1M0MUlpQnllRDBpT1M0MUlqNDhMMlZzYkdsd2MyVStDaUFnUEhCaGRHZ2daRDBpVFNBM0xqSXpOeUExTGpJMk5DQkRJREV3TGpNNU5TQTFMakkyTkNBeE1DNHpPVFVnTVRRdU56TTJJREV6TGpVMU1TQXhOQzQzTXpZZ1RTQXhNQzR3TnprZ09TNHdOVE1nVENBMkxqUTBPU0F4TkM0M016WWlJSE4wZVd4bFBTSm1hV3hzT2lCdWIyNWxPeUJ6ZEhKdmEyVTZJSEpuWWlneU5UVXNJREkxTlN3Z01qVTFLVHNnYzNSeWIydGxMV3hwYm1WallYQTZJSEp2ZFc1a095QnpkSEp2YTJVdGQybGtkR2c2SURKd2VEc2lQand2Y0dGMGFENEtQQzl6ZG1jKyIsYmxvY2tzOlt7b3Bjb2RlOiJhcmciLHRleHQ6ImFyZ3VtZW50IixibG9ja1R5cGU6by5SRVBPUlRFUixoaWRlRnJvbVBhbGV0dGU6ITAsYWxsb3dEcm9wQW55d2hlcmU6ITAsY2FuRHJhZ0R1cGxpY2F0ZTohMH0saSh7b3Bjb2RlOiJuZXdMYW1iZGEiLHRleHQ6Im5ldyBsYW1iZGEgW0FSR10iLGhpZGVGcm9tUGFsZXR0ZTohMCxhcmd1bWVudHM6e0FSRzp7ZmlsbEluOiJhcmcifX0sYnJhbmNoZXM6W3t9XX0sZy5CbG9jaykse2Jsb2NrVHlwZTpvLlhNTCx4bWw6J1xuICAgICAgICAgICAgICAgICAgICA8YmxvY2sgdHlwZT0iandMYW1iZGFfbmV3TGFtYmRhIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJBUkciPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzaGFkb3cgdHlwZT0iandMYW1iZGFfYXJnIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC92YWx1ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJTVUJTVEFDSyI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJsb2NrIHR5cGU9InByb2NlZHVyZXNfcmV0dXJuIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9InJldHVybiI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2hhZG93IHR5cGU9InRleHQiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWVsZCBuYW1lPSJURVhUIj4xPC9maWVsZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2hhZG93PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3ZhbHVlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYmxvY2s+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3ZhbHVlPlxuICAgICAgICAgICAgICAgICAgICA8L2Jsb2NrPlxuICAgICAgICAgICAgICAgICAgICAnfSx7b3Bjb2RlOiJyYXdMYW1iZGFJbnB1dCIsdGV4dDoiW0ZJRUxEXSIsaGlkZUZyb21QYWxldHRlOiEwLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGJsb2NrU2hhcGU6cy5TUVVBUkUsYXJndW1lbnRzOntGSUVMRDp7dHlwZTphLkNVU1RPTSxpZDoiU1BqYXZhc2NyaXB0VjItY29kZUVkaXRvciIsZGVmYXVsdFZhbHVlOiJmdW5jdGlvbiogKGFyZywgdGhyZWFkLCB0YXJnZXQsIHJ1bnRpbWUsIHN0YWdlKSB7XG4gIHJldHVybiAxO1xufSJ9fX0saSh7b3Bjb2RlOiJyYXdMYW1iZGEiLHRleHQ6Im5ldyBsYW1iZGEgW1JBV10iLGhpZGVGcm9tUGFsZXR0ZTohMC8qIXRoaXMucmF3TGFtYmRhQXZhaWxhYmxlIHx8ICEodHlwZW9mIFNjcmF0Y2hCbG9ja3MgPT09ICJvYmplY3QiKSovLGFyZ3VtZW50czp7UkFXOntmaWxsSW46InJhd0xhbWJkYUlucHV0In19fSxnLkJsb2NrKSwiLS0tIix7b3Bjb2RlOiJleGVjdXRlIix0ZXh0OiJleGVjdXRlIFtMQU1CREFdIHdpdGggW0FSR10iLGFyZ3VtZW50czp7TEFNQkRBOmcuQXJndW1lbnQsQVJHOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZm9vIixleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMH19fSx7b3Bjb2RlOiJleGVjdXRlUiIsdGV4dDoiZXhlY3V0ZSBbTEFNQkRBXSB3aXRoIFtBUkddIixibG9ja1R5cGU6by5SRVBPUlRFUixhbGxvd0Ryb3BBbnl3aGVyZTohMCxhcmd1bWVudHM6e0xBTUJEQTpnLkFyZ3VtZW50LEFSRzp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6ImZvbyIsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITB9fX0sIi0tLSIsaSh7b3Bjb2RlOiJ0aGlzIix0ZXh0OiJ0aGlzIGxhbWJkYSJ9LGcuQmxvY2spLHtvcGNvZGU6InRpbWVzRXhlY3V0ZWQiLHRleHQ6InRpbWVzIFtMQU1CREFdIGV4ZWN1dGVkIixibG9ja1R5cGU6by5SRVBPUlRFUixhcmd1bWVudHM6e0xBTUJEQTpnLkFyZ3VtZW50fX1dfX1nZXRDb21waWxlSW5mbygpe3JldHVybntpcjp7bmV3TGFtYmRhOihBLGUpPT4oe2tpbmQ6ImlucHV0IixzdWJzdGFjazpBLmRlc2NlbmRTdWJzdGFjayhlLCJTVUJTVEFDSyIpfSksdGhpczooQSxlKT0+KHtraW5kOiJpbnB1dCJ9KSxleGVjdXRlOihBLGUpPT4oQS5zY3JpcHQueWllbGRzPSEwLHtraW5kOiJzdGFjayIsbGFtYmRhOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJMQU1CREEiKSxhcmc6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIkFSRyIpfSksZXhlY3V0ZVI6KEEsZSk9PihBLnNjcmlwdC55aWVsZHM9ITAse2tpbmQ6ImlucHV0IixsYW1iZGE6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIkxBTUJEQSIpLGFyZzpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQVJHIil9KX0sanM6e25ld0xhbWJkYTooQSxlLHQpPT57Y29uc3Qgbj1lLnNvdXJjZTtlLnNvdXJjZT0iKG5ldyBydW50aW1lLnZtLmp3TGFtYmRhLlR5cGUoZnVuY3Rpb24qKGFyZywgdGhyZWFkLCB0YXJnZXQsIHJ1bnRpbWUsIHN0YWdlLCBsYW1iZGEpIHtcbiIsZS5kZXNjZW5kU3RhY2soQS5zdWJzdGFjayxuZXcgdC5GcmFtZSghMSx2b2lkIDAsITApKSxlLnNvdXJjZSs9In0sIHRocmVhZCkpIjtjb25zdCBpPWUuc291cmNlO3JldHVybiBlLnNvdXJjZT1uLG5ldyB0LlR5cGVkSW5wdXQoaSx0LlRZUEVfVU5LTk9XTil9LHRoaXM6KEEsZSx0KT0+bmV3IHQuVHlwZWRJbnB1dCgnKHR5cGVvZiBsYW1iZGEgPT09ICJ1bmRlZmluZWQiID8gbmV3IHJ1bnRpbWUudm0uandMYW1iZGEuVHlwZSgpIDogbGFtYmRhKScsdC5UWVBFX1VOS05PV04pLGV4ZWN1dGU6KEEsZSx0KT0+e2Uuc291cmNlKz0ieWllbGQqIHJ1bnRpbWUudm0uandMYW1iZGEuVHlwZS50b0xhbWJkYSgiLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLmxhbWJkYSkuYXNVbmtub3duKCksIikuZXhlY3V0ZSgiKS5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS5hcmcpLmFzVW5rbm93bigpLCIsIHRocmVhZCwgdGFyZ2V0LCBydW50aW1lLCBzdGFnZSk7XG4iKX0sZXhlY3V0ZVI6KEEsZSx0KT0+bmV3IHQuVHlwZWRJbnB1dCgiKHlpZWxkKiBydW50aW1lLnZtLmp3TGFtYmRhLlR5cGUudG9MYW1iZGEoIi5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS5sYW1iZGEpLmFzVW5rbm93bigpLCIpLmV4ZWN1dGUoIikuY29uY2F0KGUuZGVzY2VuZElucHV0KEEuYXJnKS5hc1Vua25vd24oKSwiLCB0aHJlYWQsIHRhcmdldCwgcnVudGltZSwgc3RhZ2UpKSIpKX19fWFyZyhBLGUpe2xldHt9PUE7cmV0dXJuIGUudGhyZWFkLl9qd0xhbWJkYUFyZ3VtZW50P2UudGhyZWFkLl9qd0xhbWJkYUFyZ3VtZW50W2UudGhyZWFkLl9qd0xhbWJkYUFyZ3VtZW50Lmxlbmd0aC0xXToiIn1uZXdMYW1iZGEoKXtyZXR1cm4ibm9vcCJ9cmF3TGFtYmRhSW5wdXQoQSl7bGV0e0ZJRUxEOmV9PUE7cmV0dXJuIGV9cmF3TGFtYmRhKEEpe2xldHtSQVc6ZX09QTtpZighdGhpcy5yYXdMYW1iZGFBdmFpbGFibGUpcmV0dXJuIG5ldyBnLlR5cGU7bGV0IHQ9ZnVuY3Rpb24oQSl7dHJ5e2xldCBlPW5ldyBGdW5jdGlvbigicmV0dXJuICIuY29uY2F0KEEpKSgpO2lmKE9iamVjdC5nZXRQcm90b3R5cGVPZihlKT09T2JqZWN0LmdldFByb3RvdHlwZU9mKChmdW5jdGlvbiooKXt9KSkpcmV0dXJuIGV9Y2F0Y2goQSl7fX0oQi50b1N0cmluZyhlKSk7cmV0dXJuIG5ldyBnLlR5cGUodCl9dGhpcygpe3JldHVybiJub29wIn1leGVjdXRlKCl7cmV0dXJuIm5vb3AifWV4ZWN1dGVSKCl7cmV0dXJuIm5vb3AifXRpbWVzRXhlY3V0ZWQoQSl7bGV0e0xBTUJEQTplfT1BO3JldHVybiBlPWcuVHlwZS50b0xhbWJkYShlKSxlLnRpbWVzRXhlY3V0ZWR9fX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCgxKSxzPSh0KDEwKSx0KDMpKSxhPXQoMiksQj10KDM3Mik7ZnVuY3Rpb24gYyhBKXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPUEsZS5zdHlsZS5kaXNwbGF5PSJoaWRkZW4iLGUuc3R5bGUud2hpdGVTcGFjZT0ibm93cmFwIixlLnN0eWxlLndpZHRoPSIxMDAlIixlLnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIixlfWNsYXNzIGd7Y29uc3RydWN0b3IoQSl7cih0aGlzLCJjdXN0b21JZCIsImp3TnVtIikscih0aGlzLCJudW1iZXIiLEIoMCkpLHIodGhpcywidG9Nb25pdG9yQ29udGVudCIsKCk9PmModGhpcy50b1N0cmluZygpKSkscih0aGlzLCJ0b1JlcG9ydGVyQ29udGVudCIsKCk9PmModGhpcy50b1N0cmluZygpKSksdGhpcy5udW1iZXI9QihBKX1zdGF0aWMgdG9OdW0oQSl7aWYoQSBpbnN0YW5jZW9mIGcpcmV0dXJuIG5ldyBnKEEubnVtYmVyKTt0cnl7bGV0IGU9SlNPTi5wYXJzZShBKTtpZigib2JqZWN0Ij09dHlwZW9mIGUpcmV0dXJuIG5ldyBnKGUpfWNhdGNoKEEpe31yZXR1cm4gbmV3IGcoQSl9andBcnJheUhhbmRsZXIoKXtyZXR1cm4gdGhpcy5udW1iZXIudG9TdHJpbmdXaXRoRGVjaW1hbFBsYWNlcygzKX10b1N0cmluZygpe3JldHVybiB0aGlzLm51bWJlci50b1N0cmluZ1dpdGhEZWNpbWFsUGxhY2VzKDcpfX1jb25zdCBFPXtUeXBlOmcsQmxvY2s6e2Jsb2NrVHlwZTpvLlJFUE9SVEVSLGZvcmNlT3V0cHV0VHlwZToiandOdW0iLGRpc2FibGVNb25pdG9yOiEwfSxBcmd1bWVudDp7dHlwZTpzLlNUUklORyxkZWZhdWx0VmFsdWU6IjEwIixleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMH0sRXhwYW50YU51bTpCfTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXt2bS5qd051bT1FLHZtLnJ1bnRpbWUucmVnaXN0ZXJTZXJpYWxpemVyKCJqd051bSIsQT0+QS5udW1iZXIudG9KU09OKCksQT0+e2xldCBlPW5ldyBCKDApO3RyeXtlPUIuZnJvbUpTT04oQSl9Y2F0Y2goQSl7fXJldHVybiBuZXcgRS5UeXBlKGUpfSl9Z2V0SW5mbygpe3JldHVybntpZDoiandOdW0iLG5hbWU6IkluZmluaXR5Iixjb2xvcjE6IiMzYmQ0NzEiLG1lbnVJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzlJakFnTUNBeU1DQXlNQ0krQ2lBZ1BHVnNiR2x3YzJVZ2MzUjViR1U5SW5OMGNtOXJaUzEzYVdSMGFEb2dNbkI0T3lCd1lXbHVkQzF2Y21SbGNqb2djM1J5YjJ0bE95Qm1hV3hzT2lCeVoySW9OVGtzSURJeE1pd2dNVEV6S1RzZ2MzUnliMnRsT2lCeVoySW9OVE1zSURFNU1Dd2dNVEF5S1RzaUlHTjRQU0l4TUNJZ1kzazlJakV3SWlCeWVEMGlPU0lnY25rOUlqa2lQand2Wld4c2FYQnpaVDRLSUNBOGNHRjBhQ0JrUFNKTklERXpMalUzT0NBeE15NDJNVE1nVVNBeE1pNDJORGdnTVRNdU5qRXpJREV4TGprMk5DQXhNeTR6TXpZZ1VTQXhNUzR5TnprZ01UTXVNRFU0SURFd0xqYzVJREV5TGpZd01pQlJJREV3TGpNd01TQXhNaTR4TkRZZ09TNDVNallnTVRFdU5qRTJJRkVnT1M0MU5URWdNVEV1TURnMklEa3VNakkxSURFd0xqVXpNaUJSSURndU9EazVJRGt1T1RjNElEZ3VOVE16SURrdU5USTVJRkVnT0M0eE5qWWdPUzR3T0RFZ055NDNNU0E0TGpnd05DQlJJRGN1TWpVeklEZ3VOVEkzSURZdU5qRTNJRGd1TlRJM0lGRWdOaTR4TkRVZ09DNDFNamNnTlM0M055QTRMamMwTnlCUklEVXVNemsxSURndU9UWTNJRFV1TVRneklEa3VNekkySUZFZ05DNDVOekVnT1M0Mk9EUWdOQzQ1TnpFZ01UQXVNVFUzSUZFZ05DNDVOekVnTVRBdU5qRXpJRFV1TVRneklERXdMams0SUZFZ05TNHpPVFVnTVRFdU16UTNJRFV1TnpjZ01URXVOVFkzSUZFZ05pNHhORFVnTVRFdU56ZzNJRFl1TmpFM0lERXhMamM0TnlCUklEY3VNalV6SURFeExqYzROeUEzTGpjeElERXhMalV4SUZFZ09DNHhOallnTVRFdU1qTXpJRGd1TlRNeklERXdMamM0TlNCUklEZ3VPRGs1SURFd0xqTXpOaUE1TGpJeU5TQTVMamM1T0NCUklEa3VOVFV4SURrdU1qWXhJRGt1T1RJMklEZ3VOekUwSUZFZ01UQXVNekF4SURndU1UWTRJREV3TGpjNUlEY3VOekV5SUZFZ01URXVNamM1SURjdU1qVTJJREV4TGprMk5DQTJMamszT1NCUklERXlMalkwT0NBMkxqY3dNU0F4TXk0MU56Z2dOaTQzTURFZ1VTQXhOQzQxTnpJZ05pNDNNREVnTVRVdU16VTBJRGN1TVRVNElGRWdNVFl1TVRNM0lEY3VOakUwSURFMkxqVTVNeUE0TGpNNElGRWdNVGN1TURRNUlEa3VNVFEySURFM0xqQTBPU0F4TUM0eE5ERWdVU0F4Tnk0d05Ea2dNVEV1TVRNMUlERTJMalU1TXlBeE1TNDVNVGNnVVNBeE5pNHhNemNnTVRJdU55QXhOUzR6TlRRZ01UTXVNVFUySUZFZ01UUXVOVGN5SURFekxqWXhNeUF4TXk0MU56Z2dNVE11TmpFeklGb2dUU0EyTGpRMU5DQXhNeTQyTVRNZ1VTQTFMalEySURFekxqWXhNeUEwTGpZMk1TQXhNeTR4TlRZZ1VTQXpMamcyTXlBeE1pNDNJRE11TkRBMklERXhMamt4TnlCUklESXVPVFVnTVRFdU1UTTFJREl1T1RVZ01UQXVNVFUzSUZFZ01pNDVOU0E1TGpFMk15QXpMalF3TmlBNExqTTRPQ0JSSURNdU9EWXpJRGN1TmpFMElEUXVOall4SURjdU1UVTRJRkVnTlM0ME5pQTJMamN3TVNBMkxqUTFOQ0EyTGpjd01TQlJJRGN1TXpZM0lEWXVOekF4SURndU1EVXlJRFl1T1RjNUlGRWdPQzQzTXpZZ055NHlOVFlnT1M0eU1qVWdOeTQzTVRJZ1VTQTVMamN4TkNBNExqRTJPQ0F4TUM0d09Ea2dPQzQzTURZZ1VTQXhNQzQwTmpRZ09TNHlORFFnTVRBdU56azRJRGt1TnprZ1VTQXhNUzR4TXpNZ01UQXVNek0ySURFeExqUTRNeUF4TUM0M09EVWdVU0F4TVM0NE16TWdNVEV1TWpNeklERXlMakk1T0NBeE1TNDFNU0JSSURFeUxqYzJNeUF4TVM0M09EY2dNVE11TXpneUlERXhMamM0TnlCUklERXpMamcxTlNBeE1TNDNPRGNnTVRRdU1qTWdNVEV1TlRjMUlGRWdNVFF1TmpBMElERXhMak0yTXlBeE5DNDRNRGdnTVRBdU9UZzRJRkVnTVRVdU1ERXlJREV3TGpZeE15QXhOUzR3TVRJZ01UQXVNVFF4SUZFZ01UVXVNREV5SURrdU5qZzBJREUwTGpnd09DQTVMak14T0NCUklERTBMall3TkNBNExqazFNU0F4TkM0eU15QTRMamN6T1NCUklERXpMamcxTlNBNExqVXlOeUF4TXk0ek9ESWdPQzQxTWpjZ1VTQXhNaTQzTmpNZ09DNDFNamNnTVRJdU1qazRJRGd1T0RBMElGRWdNVEV1T0RNeklEa3VNRGd4SURFeExqUTRNeUE1TGpVeU9TQlJJREV4TGpFek15QTVMamszT0NBeE1DNDNPVGdnTVRBdU5USTBJRkVnTVRBdU5EWTBJREV4TGpBM0lERXdMakE0T1NBeE1TNDJNRGdnVVNBNUxqY3hOQ0F4TWk0eE5EWWdPUzR5TWpVZ01USXVOakF5SUZFZ09DNDNNellnTVRNdU1EVTRJRGd1TURVeUlERXpMak16TmlCUklEY3VNelkzSURFekxqWXhNeUEyTGpRMU5DQXhNeTQyTVRNZ1dpSWdjM1I1YkdVOUltWnBiR3c2SUhKbllpZ3lOVFVzSURJMU5Td2dNalUxS1RzZ2RHVjRkQzEzY21Gd0xXMXZaR1U2SUc1dmQzSmhjRHNpUGp3dmNHRjBhRDRLUEM5emRtYysiLGJsb2NrczpbaSh7b3Bjb2RlOiJhZGQiLHRleHQ6IltBXSArIFtCXSIsYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJzdWIiLHRleHQ6IltBXSAtIFtCXSIsYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJtdWwiLHRleHQ6IltBXSAqIFtCXSIsYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJkaXYiLHRleHQ6IltBXSAvIFtCXSIsYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJwb3ciLHRleHQ6IltBXSBeIFtCXSIsYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJmYWN0Iix0ZXh0OiJbQV0hIixhcmd1bWVudHM6e0E6RS5Bcmd1bWVudH19LEUuQmxvY2spLCItLS0iLHtvcGNvZGU6ImVxIix0ZXh0OiJbQV0gPSBbQl0iLGJsb2NrVHlwZTpvLkJPT0xFQU4sYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0se29wY29kZToiZ3QiLHRleHQ6IltBXSA+IFtCXSIsYmxvY2tUeXBlOm8uQk9PTEVBTixhcmd1bWVudHM6e0E6RS5Bcmd1bWVudCxCOkUuQXJndW1lbnR9fSx7b3Bjb2RlOiJndGUiLHRleHQ6IltBXSA+PSBbQl0iLGJsb2NrVHlwZTpvLkJPT0xFQU4sYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0se29wY29kZToibHQiLHRleHQ6IltBXSA8IFtCXSIsYmxvY2tUeXBlOm8uQk9PTEVBTixhcmd1bWVudHM6e0E6RS5Bcmd1bWVudCxCOkUuQXJndW1lbnR9fSx7b3Bjb2RlOiJsdGUiLHRleHQ6IltBXSA8PSBbQl0iLGJsb2NrVHlwZTpvLkJPT0xFQU4sYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50fX0sIi0tLSIsaSh7b3Bjb2RlOiJyb290Iix0ZXh0OiJyb290IFtBXSBbQl0iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLGkoe29wY29kZToic3NxcnQiLHRleHQ6InNxdWFyZSBzdXBlci1yb290IFtBXSIsYXJndW1lbnRzOntBOkUuQXJndW1lbnR9fSxFLkJsb2NrKSxpKHtvcGNvZGU6ImxvZyIsdGV4dDoibG9nIFtBXSBbQl0iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLGkoe29wY29kZToic2xvZyIsdGV4dDoic3VwZXIgbG9nIFtBXSBbQl0iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLCItLS0iLGkoe29wY29kZToibW9kIix0ZXh0OiJbQV0gJSBbQl0iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLGkoe29wY29kZToicm91bmQiLHRleHQ6IltBXSBbQl0iLGFyZ3VtZW50czp7QTp7dHlwZTpzLlNUUklORyxtZW51OiJyb3VuZCIsZGVmYXVsdFZhbHVlOiJyb3VuZCJ9LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLHtvcGNvZGU6ImlzSW50ZWdlciIsdGV4dDoiaXMgW0FdIGFuIGludGVnZXI/IixibG9ja1R5cGU6by5CT09MRUFOLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50fX0sIi0tLSIsaSh7b3Bjb2RlOiJoeXBlciIsdGV4dDoiW0FdIGh5cGVyIFtCXSBbQ10iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudCxDOkUuQXJndW1lbnR9fSxFLkJsb2NrKSxpKHtvcGNvZGU6ImFycm93Iix0ZXh0OiJbQV0gYXJyb3cgW0JdIFtDXSIsYXJndW1lbnRzOntBOkUuQXJndW1lbnQsQjpFLkFyZ3VtZW50LEM6RS5Bcmd1bWVudH19LEUuQmxvY2spLGkoe29wY29kZToicmV2ZXJzZUFycm93Iix0ZXh0OiJbQ10gcmV2ZXJzZSBhcnJvdyBbQl0gW0FdIixhcmd1bWVudHM6e0E6RS5Bcmd1bWVudCxCOkUuQXJndW1lbnQsQzpFLkFyZ3VtZW50fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJleHBhbnNpb24iLHRleHQ6IltBXSBleHBhbnNpb24gW0JdIixhcmd1bWVudHM6e0E6RS5Bcmd1bWVudCxCOkUuQXJndW1lbnR9fSxFLkJsb2NrKSwiLS0tIix7b3Bjb2RlOiJ0b1N0cmluZyIsdGV4dDoiW0FdIHRvIHN0cmluZyIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntBOkUuQXJndW1lbnR9fSx7b3Bjb2RlOiJ0b1N0cmluZ0QiLHRleHQ6IltBXSB0byBzdHJpbmcgd2l0aCBbQl0gZGVjaW1hbCBwbGFjZXMiLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjIwfX19LHtvcGNvZGU6InRvSHlwZXJFIix0ZXh0OiJbQV0gdG8gaHlwZXIgRSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntBOkUuQXJndW1lbnR9fV0sbWVudXM6e3JvdW5kOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJjZWlsIiwicm91bmQiLCJmbG9vciJdfX19fWFkZChBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksbmV3IEUuVHlwZShlLm51bWJlci5hZGQodC5udW1iZXIpKX1zdWIoQSl7bGV0e0E6ZSxCOnR9PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLHQ9RS5UeXBlLnRvTnVtKHQpLG5ldyBFLlR5cGUoZS5udW1iZXIuc3ViKHQubnVtYmVyKSl9bXVsKEEpe2xldHtBOmUsQjp0fT1BO3JldHVybiBlPUUuVHlwZS50b051bShlKSx0PUUuVHlwZS50b051bSh0KSxuZXcgRS5UeXBlKGUubnVtYmVyLm11bCh0Lm51bWJlcikpfWRpdihBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksbmV3IEUuVHlwZShlLm51bWJlci5kaXYodC5udW1iZXIpKX1wb3coQSl7bGV0e0E6ZSxCOnR9PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLHQ9RS5UeXBlLnRvTnVtKHQpLG5ldyBFLlR5cGUoZS5udW1iZXIucG93KHQubnVtYmVyKSl9ZmFjdChBKXtsZXR7QTplfT1BO3JldHVybiBlPUUuVHlwZS50b051bShlKSxuZXcgRS5UeXBlKGUubnVtYmVyLmZhY3QoKSl9ZXEoQSl7bGV0e0E6ZSxCOnR9PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLHQ9RS5UeXBlLnRvTnVtKHQpLGUubnVtYmVyLmVxKHQubnVtYmVyKX1ndChBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksZS5udW1iZXIuZ3QodC5udW1iZXIpfWd0ZShBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksZS5udW1iZXIuZ3RlKHQubnVtYmVyKX1sdChBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksZS5udW1iZXIubHQodC5udW1iZXIpfWx0ZShBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksZS5udW1iZXIubHRlKHQubnVtYmVyKX1yb290KEEpe2xldHtBOmUsQjp0fT1BO3JldHVybiBlPUUuVHlwZS50b051bShlKSx0PUUuVHlwZS50b051bSh0KSxuZXcgRS5UeXBlKHQubnVtYmVyLnJvb3QoZS5udW1iZXIpKX1zc3FydChBKXtsZXR7QTplfT1BO3JldHVybiBlPUUuVHlwZS50b051bShlKSxuZXcgRS5UeXBlKGUubnVtYmVyLnNzcXJ0KCkpfWxvZyhBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksbmV3IEUuVHlwZSh0Lm51bWJlci5sb2dCYXNlKGUubnVtYmVyKSl9c2xvZyhBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksbmV3IEUuVHlwZSh0Lm51bWJlci5zbG9nKGUubnVtYmVyKSl9bW9kKEEpe2xldHtBOmUsQjp0fT1BO3JldHVybiBlPUUuVHlwZS50b051bShlKSx0PUUuVHlwZS50b051bSh0KSxuZXcgRS5UeXBlKGUubnVtYmVyLm1vZCh0Lm51bWJlcikpfXJvdW5kKEEpe2xldHtBOmUsQjp0fT1BO3N3aXRjaChlPWEudG9TdHJpbmcoZSkudG9Mb3dlckNhc2UoKSx0PUUuVHlwZS50b051bSh0KSxlKXtjYXNlImNlaWxpbmciOmNhc2UiY2VpbCI6cmV0dXJuIG5ldyBFLlR5cGUodC5udW1iZXIuY2VpbCgpKTtjYXNlInJvdW5kIjpyZXR1cm4gbmV3IEUuVHlwZSh0Lm51bWJlci5yb3VuZCgpKTtjYXNlImZsb29yIjpyZXR1cm4gbmV3IEUuVHlwZSh0Lm51bWJlci5mbG9vcigpKTtkZWZhdWx0OnJldHVybiBuZXcgRS5UeXBlKHQpfX1pc0ludGVnZXIoQSl7bGV0e0E6ZX09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksZS5udW1iZXIuaXNpbnQoKX1oeXBlcihBKXtsZXR7QTplLEI6dCxDOm59PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLHQ9RS5UeXBlLnRvTnVtKHQpLG49RS5UeXBlLnRvTnVtKG4pLG5ldyBFLlR5cGUoQi5oeXBlcih0Lm51bWJlcikoZS5udW1iZXIsbi5udW1iZXIpKX1hcnJvdyhBKXtsZXR7QTplLEI6dCxDOm59PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLHQ9RS5UeXBlLnRvTnVtKHQpLG49RS5UeXBlLnRvTnVtKG4pLG5ldyBFLlR5cGUoZS5udW1iZXIuYXJyb3codC5udW1iZXIpKG4ubnVtYmVyKSl9cmV2ZXJzZUFycm93KEEpe2xldHtBOmUsQjp0LEM6bn09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksdD1FLlR5cGUudG9OdW0odCksbj1FLlR5cGUudG9OdW0obiksbmV3IEUuVHlwZShlLm51bWJlci5hcnJvd19oZWlnaHRfaW52ZXJzZSh0Lm51bWJlcikobi5udW1iZXIpKX1leHBhbnNpb24oQSl7bGV0e0E6ZSxCOnR9PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLHQ9RS5UeXBlLnRvTnVtKHQpLG5ldyBFLlR5cGUoZS5udW1iZXIuZXhwYW5zaW9uKHQubnVtYmVyKSl9dG9TdHJpbmcoQSl7bGV0e0E6ZX09QTtyZXR1cm4gZT1FLlR5cGUudG9OdW0oZSksZS5udW1iZXIudG9TdHJpbmcoKX10b1N0cmluZ0QoQSl7bGV0e0E6ZSxCOnR9PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLHQ9YS50b051bWJlcih0KSxlLm51bWJlci50b1N0cmluZ1dpdGhEZWNpbWFsUGxhY2VzKHQpfXRvSHlwZXJFKEEpe2xldHtBOmV9PUE7cmV0dXJuIGU9RS5UeXBlLnRvTnVtKGUpLGUubnVtYmVyLnRvSHlwZXJFKCl9fX0sZnVuY3Rpb24oQSxlLHQpe3ZhciBuOyFmdW5jdGlvbihpKXsidXNlIHN0cmljdCI7dmFyIHI9e21heE9wczoxZTMsc2VyaWFsaXplTW9kZTowLGRlYnVnOjB9LG89IltFeHBhbnRhTnVtRXJyb3JdIEludmFsaWQgYXJndW1lbnQ6ICIscz0vXlstXCtdKihJbmZpbml0eXxOYU58KEorfEpcXlxkKyApPygxMChcXit8XHtbMS05XVxkKlx9KXxcKDEwKFxeK3xce1sxLTldXGQqXH0pXClcXlsxLTldXGQqICkqKChcZCsoXC5cZCopP3xcZCpcLlxkKyk/KFtFZV1bLVwrXSopKSooMHxcZCsoXC5cZCopP3xcZCpcLlxkKykpJC8sYT1NYXRoLmxvZzEwKDkwMDcxOTkyNTQ3NDA5OTEpLEI9e30sYz17fSxnPXtaRVJPOjAsT05FOjF9O2cuRT1NYXRoLkUsZy5MTjI9TWF0aC5MTjIsZy5MTjEwPU1hdGguTE4xMCxnLkxPRzJFPU1hdGguTE9HMkUsZy5MT0cxMEU9TWF0aC5MT0cxMEUsZy5QST1NYXRoLlBJLGcuU1FSVDFfMj1NYXRoLlNRUlQxXzIsZy5TUVJUMj1NYXRoLlNRUlQyLGcuTUFYX1NBRkVfSU5URUdFUj05MDA3MTk5MjU0NzQwOTkxLGcuTUlOX1NBRkVfSU5URUdFUj1OdW1iZXIuTUlOX1NBRkVfSU5URUdFUixnLk5hTj1OdW1iZXIuTmFOLGcuTkVHQVRJVkVfSU5GSU5JVFk9TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZLGcuUE9TSVRJVkVfSU5GSU5JVFk9TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLGcuRV9NQVhfU0FGRV9JTlRFR0VSPSJlOTAwNzE5OTI1NDc0MDk5MSIsZy5FRV9NQVhfU0FGRV9JTlRFR0VSPSJlZTkwMDcxOTkyNTQ3NDA5OTEiLGcuVEVUUkFURURfTUFYX1NBRkVfSU5URUdFUj0iMTBeXjkwMDcxOTkyNTQ3NDA5OTEiLGcuR1JBSEFNU19OVU1CRVI9IkpeNjMgMTBeXl4oMTBeKV43NjI1NTk3NDg0OTg0IDM2MzgzMzQ2NDAwMjMuNzc4MyIsQi5hYnNvbHV0ZVZhbHVlPUIuYWJzPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5jbG9uZSgpO3JldHVybiBBLnNpZ249MSxBfSxjLmFic29sdXRlVmFsdWU9Yy5hYnM9ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyByKEEpLmFicygpfSxCLm5lZ2F0ZT1CLm5lZz1mdW5jdGlvbigpe3ZhciBBPXRoaXMuY2xvbmUoKTtyZXR1cm4gQS5zaWduPS0xKkEuc2lnbixBfSxjLm5lZ2F0ZT1jLm5lZz1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkubmVnKCl9LEIuY29tcGFyZVRvPUIuY21wPWZ1bmN0aW9uKEEpe2lmKEEgaW5zdGFuY2VvZiByfHwoQT1uZXcgcihBKSksaXNOYU4odGhpcy5hcnJheVswXVsxXSl8fGlzTmFOKEEuYXJyYXlbMF1bMV0pKXJldHVybiBOYU47aWYodGhpcy5hcnJheVswXVsxXT09MS8wJiZBLmFycmF5WzBdWzFdIT0xLzApcmV0dXJuIHRoaXMuc2lnbjtpZih0aGlzLmFycmF5WzBdWzFdIT0xLzAmJkEuYXJyYXlbMF1bMV09PTEvMClyZXR1cm4tQS5zaWduO2lmKDE9PXRoaXMuYXJyYXkubGVuZ3RoJiYwPT09dGhpcy5hcnJheVswXVsxXSYmMT09QS5hcnJheS5sZW5ndGgmJjA9PT1BLmFycmF5WzBdWzFdKXJldHVybiAwO2lmKHRoaXMuc2lnbiE9QS5zaWduKXJldHVybiB0aGlzLnNpZ247dmFyIGUsdD10aGlzLnNpZ247aWYodGhpcy5sYXllcj5BLmxheWVyKWU9MTtlbHNlIGlmKHRoaXMubGF5ZXI8QS5sYXllcillPS0xO2Vsc2V7Zm9yKHZhciBuLGksbz0wLHM9TWF0aC5taW4odGhpcy5hcnJheS5sZW5ndGgsQS5hcnJheS5sZW5ndGgpO288czsrK28pe2lmKG49dGhpcy5hcnJheVt0aGlzLmFycmF5Lmxlbmd0aC0xLW9dLGk9QS5hcnJheVtBLmFycmF5Lmxlbmd0aC0xLW9dLG5bMF0+aVswXXx8blswXT09aVswXSYmblsxXT5pWzFdKXtlPTE7YnJlYWt9aWYoblswXTxpWzBdfHxuWzBdPT1pWzBdJiZuWzFdPGlbMV0pe2U9LTE7YnJlYWt9fXZvaWQgMD09PWUmJihlPXRoaXMuYXJyYXkubGVuZ3RoPT1BLmFycmF5Lmxlbmd0aD8wOnRoaXMuYXJyYXkubGVuZ3RoPkEuYXJyYXkubGVuZ3RoPyhuPXRoaXMuYXJyYXlbdGhpcy5hcnJheS5sZW5ndGgtc10pWzBdPj0xfHxuWzFdPjEwPzE6LTE6KG49QS5hcnJheVtBLmFycmF5Lmxlbmd0aC1zXSlbMF0+PTF8fG5bMV0+MTA/LTE6MSl9cmV0dXJuIGUqdH0sYy5jb21wYXJlPWMuY21wPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLmNtcChlKX0sQi5ncmVhdGVyVGhhbj1CLmd0PWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmNtcChBKT4wfSxjLmdyZWF0ZXJUaGFuPWMuZ3Q9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkuZ3QoZSl9LEIuZ3JlYXRlclRoYW5PckVxdWFsVG89Qi5ndGU9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuY21wKEEpPj0wfSxjLmdyZWF0ZXJUaGFuT3JFcXVhbFRvPWMuZ3RlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLmd0ZShlKX0sQi5sZXNzVGhhbj1CLmx0PWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmNtcChBKTwwfSxjLmxlc3NUaGFuPWMubHQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkubHQoZSl9LEIubGVzc1RoYW5PckVxdWFsVG89Qi5sdGU9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuY21wKEEpPD0wfSxjLmxlc3NUaGFuT3JFcXVhbFRvPWMubHRlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLmx0ZShlKX0sQi5lcXVhbHNUbz1CLmVxdWFsPUIuZXE9ZnVuY3Rpb24oQSl7cmV0dXJuIDA9PT10aGlzLmNtcChBKX0sYy5lcXVhbHNUbz1jLmVxdWFsPWMuZXE9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkuZXEoZSl9LEIubm90RXF1YWxzVG89Qi5ub3RFcXVhbD1CLm5lcT1mdW5jdGlvbihBKXtyZXR1cm4gMCE9PXRoaXMuY21wKEEpfSxjLm5vdEVxdWFsc1RvPWMubm90RXF1YWw9Yy5uZXE9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkubmVxKGUpfSxCLm1pbmltdW09Qi5taW49ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMubHQoQSk/dGhpcy5jbG9uZSgpOm5ldyByKEEpfSxjLm1pbmltdW09Yy5taW49ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkubWluKGUpfSxCLm1heGltdW09Qi5tYXg9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuZ3QoQSk/dGhpcy5jbG9uZSgpOm5ldyByKEEpfSxjLm1heGltdW09Yy5tYXg9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkubWF4KGUpfSxCLmNvbXBhcmVUb190b2xlcmFuY2U9Qi5jbXBfdG9sZXJhbmNlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEgaW5zdGFuY2VvZiByfHwoQT1uZXcgcihBKSksdGhpcy5lcV90b2xlcmFuY2UoQSxlKT8wOnRoaXMuY21wKEEpfSxjLmNvbXBhcmVfdG9sZXJhbmNlPWMuY21wX3RvbGVyYW5jZT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG5ldyByKEEpLmNtcF90b2xlcmFuY2UoZSx0KX0sQi5ncmVhdGVyVGhhbl90b2xlcmFuY2U9Qi5ndF90b2xlcmFuY2U9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQSBpbnN0YW5jZW9mIHJ8fChBPW5ldyByKEEpKSwhdGhpcy5lcV90b2xlcmFuY2UoQSxlKSYmdGhpcy5ndChBKX0sYy5ncmVhdGVyVGhhbl90b2xlcmFuY2U9Yy5ndF90b2xlcmFuY2U9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBuZXcgcihBKS5ndF90b2xlcmFuY2UoZSx0KX0sQi5ncmVhdGVyVGhhbk9yRXF1YWxUb190b2xlcmFuY2U9Qi5ndGVfdG9sZXJhbmNlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIEEgaW5zdGFuY2VvZiByfHwoQT1uZXcgcihBKSksdGhpcy5lcV90b2xlcmFuY2UoQSxlKXx8dGhpcy5ndChBKX0sYy5ncmVhdGVyVGhhbk9yRXF1YWxUb190b2xlcmFuY2U9Yy5ndGVfdG9sZXJhbmNlPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbmV3IHIoQSkuZ3RlX3RvbGVyYW5jZShlLHQpfSxCLmxlc3NUaGFuX3RvbGVyYW5jZT1CLmx0X3RvbGVyYW5jZT1mdW5jdGlvbihBLGUpe3JldHVybiBBIGluc3RhbmNlb2Ygcnx8KEE9bmV3IHIoQSkpLCF0aGlzLmVxX3RvbGVyYW5jZShBLGUpJiZ0aGlzLmx0KEEpfSxjLmxlc3NUaGFuX3RvbGVyYW5jZT1jLmx0X3RvbGVyYW5jZT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG5ldyByKEEpLmx0X3RvbGVyYW5jZShlLHQpfSxCLmxlc3NUaGFuT3JFcXVhbFRvX3RvbGVyYW5jZT1CLmx0ZV90b2xlcmFuY2U9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gQSBpbnN0YW5jZW9mIHJ8fChBPW5ldyByKEEpKSx0aGlzLmVxX3RvbGVyYW5jZShBLGUpfHx0aGlzLmx0KEEpfSxjLmxlc3NUaGFuT3JFcXVhbFRvX3RvbGVyYW5jZT1jLmx0ZV90b2xlcmFuY2U9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBuZXcgcihBKS5sdGVfdG9sZXJhbmNlKGUsdCl9LEIuZXF1YWxzVG9fdG9sZXJhbmNlPUIuZXF1YWxfdG9sZXJhbmNlPUIuZXFfdG9sZXJhbmNlPWZ1bmN0aW9uKEEsZSl7aWYoQSBpbnN0YW5jZW9mIHJ8fChBPW5ldyByKEEpKSxudWxsPT1lJiYoZT0xZS03KSx0aGlzLmlzTmFOKCl8fEEuaXNOYU4oKXx8dGhpcy5pc0Zpbml0ZSgpIT1BLmlzRmluaXRlKCkpcmV0dXJuITE7aWYodGhpcy5zaWduIT1BLnNpZ24pcmV0dXJuITE7aWYoTWF0aC5hYnModGhpcy5sYXllci1BLmxheWVyKT4xKXJldHVybiExO3ZhciB0LG47aWYodGhpcy5sYXllciE9QS5sYXllcil7aWYodGhpcy5sYXllcj5BLmxheWVyPyhvPXRoaXMscz1BKToobz1BLHM9dGhpcyksMiE9by5hcnJheS5sZW5ndGh8fDAhPT1vLmFycmF5WzBdWzBdfHwxIT1vLmFycmF5WzFdWzBdfHwxIT1vLmFycmF5WzFdWzFdKXJldHVybiExO3Q9by5hcnJheVswXVsxXSxuPXMuYXJyYXlbcy5hcnJheS5sZW5ndGgtMV1bMV0+PTEwP01hdGgubG9nMTAocy5hcnJheVtzLmFycmF5Lmxlbmd0aC0xXVswXSsxKTpNYXRoLmxvZzEwKHMuYXJyYXlbcy5hcnJheS5sZW5ndGgtMV1bMF0pfWVsc2V7aWYoTWF0aC5hYnModGhpcy5hcnJheVt0aGlzLmFycmF5Lmxlbmd0aC0xXVswXS1BLmFycmF5W0EuYXJyYXkubGVuZ3RoLTFdWzBdKT4xKXJldHVybiExO2Zvcih2YXIgaT0xO01hdGgubWF4KHRoaXMuYXJyYXkubGVuZ3RoLEEuYXJyYXkubGVuZ3RoKS1pPj0wOysraSl7dmFyIG8scyxhLEIsYz10aGlzLmFycmF5W3RoaXMuYXJyYXkubGVuZ3RoLWldWzBdLGc9QS5hcnJheVtBLmFycmF5Lmxlbmd0aC1pXVswXTtpZihjIT1nKWM+Zz8obz10aGlzLHM9QSk6KG89QSxzPXRoaXMsYz1nKSxhPW8uYXJyYXlbby5hcnJheS5sZW5ndGgtaV1bMV0sQj0wO2Vsc2UgaWYocz1BLGE9KG89dGhpcykuYXJyYXlbby5hcnJheS5sZW5ndGgtaV1bMV0sQj1zLmFycmF5W3MuYXJyYXkubGVuZ3RoLWldWzFdLG8uYXJyYXkubGVuZ3RoLWk9PTApe3Q9YSxuPUI7YnJlYWt9aWYoTWF0aC5hYnMoYS1CKT4xKXJldHVybiExO2lmKGEhPUIpe2lmKCEoby5hcnJheS5sZW5ndGgtaTwyfHxvLmFycmF5Lmxlbmd0aC1pPT0yJiYwPT09by5hcnJheVswXVswXSYmMT09by5hcnJheVsxXVswXSYmMT09by5hcnJheVsxXVsxXSkpcmV0dXJuITE7dD1vLmFycmF5WzBdWzFdLG49MT09Yz9NYXRoLmxvZzEwKHMub3BlcmF0b3IoMCkpOjI9PWMmJnMub3BlcmF0b3IoMCk+PTFlMTA/TWF0aC5sb2cxMChzLm9wZXJhdG9yKDEpKzIpOnMub3BlcmF0b3IoYy0yKT49MTA/TWF0aC5sb2cxMChzLm9wZXJhdG9yKGMtMSkrMSk6TWF0aC5sb2cxMChzLm9wZXJhdG9yKGMtMSkpO2JyZWFrfX19cmV0dXJuIE1hdGguYWJzKHQtbik8PWUqTWF0aC5tYXgoTWF0aC5hYnModCksTWF0aC5hYnMobikpfSxjLmVxdWFsc1RvX3RvbGVyYW5jZT1jLmVxdWFsX3RvbGVyYW5jZT1jLmVxX3RvbGVyYW5jZT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG5ldyByKEEpLmVxX3RvbGVyYW5jZShlLHQpfSxCLm5vdEVxdWFsc1RvX3RvbGVyYW5jZT1CLm5vdEVxdWFsX3RvbGVyYW5jZT1CLm5lcV90b2xlcmFuY2U9ZnVuY3Rpb24oQSxlKXtyZXR1cm4hdGhpcy5lcV90b2xlcmFuY2UoQSxlKX0sYy5ub3RFcXVhbHNUb190b2xlcmFuY2U9Yy5ub3RFcXVhbF90b2xlcmFuY2U9Yy5uZXFfdG9sZXJhbmNlPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbmV3IHIoQSkubmVxX3RvbGVyYW5jZShlLHQpfSxCLmlzUG9zaXRpdmU9Qi5pc3Bvcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd0KHIuWkVSTyl9LGMuaXNQb3NpdGl2ZT1jLmlzcG9zPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKS5pc3BvcygpfSxCLmlzTmVnYXRpdmU9Qi5pc25lZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmx0KHIuWkVSTyl9LGMuaXNOZWdhdGl2ZT1jLmlzbmVnPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKS5pc25lZygpfSxCLmlzTmFOPWZ1bmN0aW9uKCl7cmV0dXJuIGlzTmFOKHRoaXMuYXJyYXlbMF1bMV0pfSxjLmlzTmFOPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKS5pc05hTigpfSxCLmlzRmluaXRlPWZ1bmN0aW9uKCl7cmV0dXJuIGlzRmluaXRlKHRoaXMuYXJyYXlbMF1bMV0pfSxjLmlzRmluaXRlPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKS5pc0Zpbml0ZSgpfSxCLmlzSW5maW5pdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hcnJheVswXVsxXT09MS8wfSxjLmlzSW5maW5pdGU9ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyByKEEpLmlzSW5maW5pdGUoKX0sQi5pc0ludGVnZXI9Qi5pc2ludD1mdW5jdGlvbigpe3JldHVybi0xPT10aGlzLnNpZ24/dGhpcy5hYnMoKS5pc2ludCgpOiEhdGhpcy5ndChyLk1BWF9TQUZFX0lOVEVHRVIpfHxOdW1iZXIuaXNJbnRlZ2VyKHRoaXMudG9OdW1iZXIoKSl9LGMuaXNJbnRlZ2VyPWMuaXNpbnQ9ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyByKEEpLmlzaW50KCl9LEIuZmxvb3I9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pc0ludGVnZXIoKT90aGlzLmNsb25lKCk6bmV3IHIoTWF0aC5mbG9vcih0aGlzLnRvTnVtYmVyKCkpKX0sYy5mbG9vcj1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkuZmxvb3IoKX0sQi5jZWlsaW5nPUIuY2VpbD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlzSW50ZWdlcigpP3RoaXMuY2xvbmUoKTpuZXcgcihNYXRoLmNlaWwodGhpcy50b051bWJlcigpKSl9LGMuY2VpbGluZz1jLmNlaWw9ZnVuY3Rpb24oQSl7cmV0dXJuIG5ldyByKEEpLmNlaWwoKX0sQi5yb3VuZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlzSW50ZWdlcigpP3RoaXMuY2xvbmUoKTpuZXcgcihNYXRoLnJvdW5kKHRoaXMudG9OdW1iZXIoKSkpfSxjLnJvdW5kPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKS5yb3VuZCgpfTt2YXIgRT0hMTtCLnBsdXM9Qi5hZGQ9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5jbG9uZSgpO2lmKEE9bmV3IHIoQSksci5kZWJ1Zz49ci5OT1JNQUwmJihjb25zb2xlLmxvZyh0aGlzKyIrIitBKSxFfHwoY29uc29sZS53YXJuKCJbRXhwYW50YU51bUVycm9yXSBEZWJ1ZyBvdXRwdXQgdmlhICdkZWJ1ZycgaXMgYmVpbmcgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBmdXR1cmUhIiksRT0hMCkpLC0xPT1lLnNpZ24pcmV0dXJuIGUubmVnKCkuYWRkKEEubmVnKCkpLm5lZygpO2lmKC0xPT1BLnNpZ24pcmV0dXJuIGUuc3ViKEEubmVnKCkpO2lmKGUuZXEoci5aRVJPKSlyZXR1cm4gQTtpZihBLmVxKHIuWkVSTykpcmV0dXJuIGU7aWYoZS5pc05hTigpfHxBLmlzTmFOKCl8fGUuaXNJbmZpbml0ZSgpJiZBLmlzSW5maW5pdGUoKSYmZS5lcShBLm5lZygpKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtpZihlLmlzSW5maW5pdGUoKSlyZXR1cm4gZTtpZihBLmlzSW5maW5pdGUoKSlyZXR1cm4gQTt2YXIgdCxuPWUubWluKEEpLGk9ZS5tYXgoQSksbz1pLm9wZXJhdG9yKDApLHM9aS5vcGVyYXRvcigxKTtpZihpLmd0KHIuRV9NQVhfU0FGRV9JTlRFR0VSKXx8aS5kaXYobikuZ3Qoci5NQVhfU0FGRV9JTlRFR0VSKSl0PWk7ZWxzZSBpZihzKXtpZigxPT1zKXt2YXIgYT1uLm9wZXJhdG9yKDEpP24ub3BlcmF0b3IoMCk6TWF0aC5sb2cxMChuLm9wZXJhdG9yKDApKTt0PW5ldyByKFthK01hdGgubG9nMTAoTWF0aC5wb3coMTAsby1hKSsxKSwxXSl9fWVsc2UgdD1uZXcgcihlLnRvTnVtYmVyKCkrQS50b051bWJlcigpKTtyZXR1cm4gbj1pPW51bGwsdH0sYy5wbHVzPWMuYWRkPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLmFkZChlKX0sQi5taW51cz1CLnN1Yj1mdW5jdGlvbihBKXt2YXIgZT10aGlzLmNsb25lKCk7aWYoQT1uZXcgcihBKSxyLmRlYnVnPj1yLk5PUk1BTCYmY29uc29sZS5sb2coZSsiLSIrQSksLTE9PWUuc2lnbilyZXR1cm4gZS5uZWcoKS5zdWIoQS5uZWcoKSkubmVnKCk7aWYoLTE9PUEuc2lnbilyZXR1cm4gZS5hZGQoQS5uZWcoKSk7aWYoZS5lcShBKSlyZXR1cm4gci5aRVJPLmNsb25lKCk7aWYoQS5lcShyLlpFUk8pKXJldHVybiBlO2lmKGUuaXNOYU4oKXx8QS5pc05hTigpfHxlLmlzSW5maW5pdGUoKSYmQS5pc0luZmluaXRlKCkpcmV0dXJuIHIuTmFOLmNsb25lKCk7aWYoZS5pc0luZmluaXRlKCkpcmV0dXJuIGU7aWYoQS5pc0luZmluaXRlKCkpcmV0dXJuIEEubmVnKCk7dmFyIHQsbj1lLm1pbihBKSxpPWUubWF4KEEpLG89QS5ndChlKSxzPWkub3BlcmF0b3IoMCksYT1pLm9wZXJhdG9yKDEpO2lmKGkuZ3Qoci5FX01BWF9TQUZFX0lOVEVHRVIpfHxpLmRpdihuKS5ndChyLk1BWF9TQUZFX0lOVEVHRVIpKXQ9aSx0PW8/dC5uZWcoKTp0O2Vsc2UgaWYoYSl7aWYoMT09YSl7dmFyIEI9bi5vcGVyYXRvcigxKT9uLm9wZXJhdG9yKDApOk1hdGgubG9nMTAobi5vcGVyYXRvcigwKSk7dD1uZXcgcihbQitNYXRoLmxvZzEwKE1hdGgucG93KDEwLHMtQiktMSksMV0pLHQ9bz90Lm5lZygpOnR9fWVsc2UgdD1uZXcgcihlLnRvTnVtYmVyKCktQS50b051bWJlcigpKTtyZXR1cm4gbj1pPW51bGwsdH0sYy5taW51cz1jLnN1Yj1mdW5jdGlvbihBLGUpe3JldHVybiBuZXcgcihBKS5zdWIoZSl9LEIudGltZXM9Qi5tdWw9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5jbG9uZSgpO2lmKEE9bmV3IHIoQSksci5kZWJ1Zz49ci5OT1JNQUwmJmNvbnNvbGUubG9nKGUrIioiK0EpLGUuc2lnbipBLnNpZ249PS0xKXJldHVybiBlLmFicygpLm11bChBLmFicygpKS5uZWcoKTtpZigtMT09ZS5zaWduKXJldHVybiBlLmFicygpLm11bChBLmFicygpKTtpZihlLmlzTmFOKCl8fEEuaXNOYU4oKXx8ZS5lcShyLlpFUk8pJiZBLmlzSW5maW5pdGUoKXx8ZS5pc0luZmluaXRlKCkmJkEuYWJzKCkuZXEoci5aRVJPKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtpZihBLmVxKHIuWkVSTykpcmV0dXJuIHIuWkVSTy5jbG9uZSgpO2lmKEEuZXEoci5PTkUpKXJldHVybiBlLmNsb25lKCk7aWYoZS5pc0luZmluaXRlKCkpcmV0dXJuIGU7aWYoQS5pc0luZmluaXRlKCkpcmV0dXJuIEE7aWYoZS5tYXgoQSkuZ3Qoci5FRV9NQVhfU0FGRV9JTlRFR0VSKSlyZXR1cm4gZS5tYXgoQSk7dmFyIHQ9ZS50b051bWJlcigpKkEudG9OdW1iZXIoKTtyZXR1cm4gdDw9OTAwNzE5OTI1NDc0MDk5MT9uZXcgcih0KTpyLnBvdygxMCxlLmxvZzEwKCkuYWRkKEEubG9nMTAoKSkpfSxjLnRpbWVzPWMubXVsPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLm11bChlKX0sQi5kaXZpZGU9Qi5kaXY9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5jbG9uZSgpO2lmKEE9bmV3IHIoQSksci5kZWJ1Zz49ci5OT1JNQUwmJmNvbnNvbGUubG9nKGUrIi8iK0EpLGUuc2lnbipBLnNpZ249PS0xKXJldHVybiBlLmFicygpLmRpdihBLmFicygpKS5uZWcoKTtpZigtMT09ZS5zaWduKXJldHVybiBlLmFicygpLmRpdihBLmFicygpKTtpZihlLmlzTmFOKCl8fEEuaXNOYU4oKXx8ZS5pc0luZmluaXRlKCkmJkEuaXNJbmZpbml0ZSgpfHxlLmVxKHIuWkVSTykmJkEuZXEoci5aRVJPKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtpZihBLmVxKHIuWkVSTykpcmV0dXJuIHIuUE9TSVRJVkVfSU5GSU5JVFkuY2xvbmUoKTtpZihBLmVxKHIuT05FKSlyZXR1cm4gZS5jbG9uZSgpO2lmKGUuZXEoQSkpcmV0dXJuIHIuT05FLmNsb25lKCk7aWYoZS5pc0luZmluaXRlKCkpcmV0dXJuIGU7aWYoQS5pc0luZmluaXRlKCkpcmV0dXJuIHIuWkVSTy5jbG9uZSgpO2lmKGUubWF4KEEpLmd0KHIuRUVfTUFYX1NBRkVfSU5URUdFUikpcmV0dXJuIGUuZ3QoQSk/ZS5jbG9uZSgpOnIuWkVSTy5jbG9uZSgpO3ZhciB0PWUudG9OdW1iZXIoKS9BLnRvTnVtYmVyKCk7aWYodDw9OTAwNzE5OTI1NDc0MDk5MSlyZXR1cm4gbmV3IHIodCk7dmFyIG49ci5wb3coMTAsZS5sb2cxMCgpLnN1YihBLmxvZzEwKCkpKSxpPW4uZmxvb3IoKTtyZXR1cm4gbi5zdWIoaSkubHQobmV3IHIoMWUtOSkpP2k6bn0sYy5kaXZpZGU9Yy5kaXY9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkuZGl2KGUpfSxCLnJlY2lwcm9jYXRlPUIucmVjPWZ1bmN0aW9uKCl7cmV0dXJuIHIuZGVidWc+PXIuTk9STUFMJiZjb25zb2xlLmxvZyh0aGlzKyJeLTEiKSx0aGlzLmlzTmFOKCl8fHRoaXMuZXEoci5aRVJPKT9yLk5hTi5jbG9uZSgpOnRoaXMuYWJzKCkuZ3QoIjJlMzIzIik/ci5aRVJPLmNsb25lKCk6bmV3IHIoMS90aGlzKX0sYy5yZWNpcHJvY2F0ZT1jLnJlYz1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkucmVjKCl9LEIubW9kdWxhcj1CLm1vZD1mdW5jdGlvbihBKXtyZXR1cm4oQT1uZXcgcihBKSkuZXEoci5aRVJPKT9yLlpFUk8uY2xvbmUoKTp0aGlzLnNpZ24qQS5zaWduPT0tMT90aGlzLmFicygpLm1vZChBLmFicygpKS5uZWcoKTotMT09dGhpcy5zaWduP3RoaXMuYWJzKCkubW9kKEEuYWJzKCkpOnRoaXMuc3ViKHRoaXMuZGl2KEEpLmZsb29yKCkubXVsKEEpKX0sYy5tb2R1bGFyPWMubW9kPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLm1vZChlKX07Qi5nYW1tYT1mdW5jdGlvbigpe3ZhciBBPXRoaXMuY2xvbmUoKTtpZihBLmd0KHIuVEVUUkFURURfTUFYX1NBRkVfSU5URUdFUikpcmV0dXJuIEE7aWYoQS5ndChyLkVfTUFYX1NBRkVfSU5URUdFUikpcmV0dXJuIHIuZXhwKEEpO2lmKEEuZ3Qoci5NQVhfU0FGRV9JTlRFR0VSKSlyZXR1cm4gci5leHAoci5tdWwoQSxyLmxuKEEpLnN1YigxKSkpO3ZhciBlPUEub3BlcmF0b3IoMCk7aWYoZT4xKXtpZihlPDI0KXJldHVybiBuZXcgcihmdW5jdGlvbihBKXtpZighaXNGaW5pdGUoQSkpcmV0dXJuIEE7aWYoQTwtNTApcmV0dXJuIEE9PU1hdGgudHJ1bmMoQSk/TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZOjA7Zm9yKHZhciBlPTE7QTwxMDspZSo9QSwrK0E7dmFyIHQ9LjkxODkzODUzMzIwNDY3Mjc7dCs9KChBLT0xKSsuNSkqTWF0aC5sb2coQSksdC09QTt2YXIgbj1BKkEsaT1BO3JldHVybiB0Kz0xLygxMippKSx0LT0xLygzNjAqKGkqPW4pKSx0Kz0xLygxMjYwKihpKj1pKm4pKSx0LT0xLygxNjgwKihpKj1uKSksdCs9MS8oMTE4OCooaSo9bikpLHQtPTY5MS8oMzYwMzYwKihpKj1uKSksdCs9Ny8oMTA5MiooaSo9bikpLHQtPTM2MTcvKDEyMjQwMCooaSo9bikpLE1hdGguZXhwKHQpL2V9KEEuc2lnbiplKSk7dmFyIHQ9ZS0xLG49LjkxODkzODUzMzIwNDY3Mjc7bis9KHQrLjUpKk1hdGgubG9nKHQpO3ZhciBpPXQqdCxvPXQscz0xMipvLGE9MS9zLEI9KG4tPXQpK2E7aWYoQj09bilyZXR1cm4gci5leHAobik7aWYoKEI9KG49QiktKGE9MS8ocz0zNjAqKG8qPWkpKSkpPT1uKXJldHVybiByLmV4cChuKTtuPUI7dmFyIGM9MS8ocz0xMjYwKihvKj1pKSk7cmV0dXJuIG4rPWMsbi09Yz0xLyhzPTE2ODAqKG8qPWkpKSxyLmV4cChuKX1yZXR1cm4gdGhpcy5yZWMoKX0sYy5nYW1tYT1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkuZ2FtbWEoKX0sYy5mYWN0b3JpYWxzPVsxLDEsMiw2LDI0LDEyMCw3MjAsNTA0MCw0MDMyMCwzNjI4ODAsMzYyODgwMCwzOTkxNjgwMCw0NzkwMDE2MDAsNjIyNzAyMDgwMCw4NzE3ODI5MTIwMCwxMzA3Njc0MzY4ZTMsMjA5MjI3ODk4ODhlMywzNTU2ODc0MjgwOTZlMyw2NDAyMzczNzA1NzI4ZTMsMHgxYjAyYjkzMDY4OTAwMDAsMjQzMjkwMjAwODE3NjY0ZTQsNTEwOTA5NDIxNzE3MDk0NGU0LDExMjQwMDA3Mjc3Nzc2MDc3ZTUsMjU4NTIwMTY3Mzg4ODQ5OGU3LDYyMDQ0ODQwMTczMzIzOTRlOCwxNTUxMTIxMDA0MzMzMDk4NmU5LDQwMzI5MTQ2MTEyNjYwNTY1ZTEwLDEwODg4ODY5NDUwNDE4MzUyZTEyLDMwNDg4ODM0NDYxMTcxMzg3ZTEzLDguODQxNzYxOTkzNzM5NzAyZTMwLDI2NTI1Mjg1OTgxMjE5MTA3ZTE2LDgyMjI4Mzg2NTQxNzc5MjJlMTgsMjYzMTMwODM2OTMzNjkzNWUyMCw4NjgzMzE3NjE4ODExODg2ZTIxLDI5NTIzMjc5OTAzOTYwNDE2ZTIyLDEuMDMzMzE0Nzk2NjM4NjE0NWU0MCwzNzE5OTMzMjY3ODk5MDEyNWUyNSwxMzc2Mzc1MzA5MTIyNjM0NmUyNyw1MjMwMjI2MTc0NjY2MDExZTI5LDIwMzk3ODgyMDgxMTk3NDQ0ZTMwLDgxNTkxNTI4MzI0Nzg5NzdlMzIsMzM0NTI1MjY2MTMxNjM4MWUzNCwxNDA1MDA2MTE3NzUyODhlMzcsNjA0MTUyNjMwNjMzNzM4M2UzNywyNjU4MjcxNTc0Nzg4NDQ5ZTM5LDExOTYyMjIyMDg2NTQ4MDE5ZTQwLDU1MDI2MjIxNTk4MTIwODllNDIsMjU4NjIzMjQxNTExMTY4MThlNDMsMTI0MTM5MTU1OTI1MzYwNzNlNDUsNjA4MjgxODY0MDM0MjY3NWU0NywzMDQxNDA5MzIwMTcxMzM3NmU0OCwxNTUxMTE4NzUzMjg3MzgyMmU1MCw4MDY1ODE3NTE3MDk0Mzg4ZTUyLDQyNzQ4ODMyODQwNjAwMjU1ZTUzLDIzMDg0MzY5NzMzOTI0MTRlNTYsMTI2OTY0MDMzNTM2NTgyNzZlNTcsNzEwOTk4NTg3ODA0ODYzNWU1OSw0MDUyNjkxOTUwNDg3NzIxNGU2MCwyMzUwNTYxMzMxMjgyODc4NWU2MiwxLjM4NjgzMTE4NTQ1Njg5ODRlODAsODMyMDk4NzExMjc0MTM5ZTY3LDUwNzU4MDIxMzg3NzIyNDhlNjgsMzE0Njk5NzMyNjAzODc5NGU3MCwxOTgyNjA4MzE1NDA0NDRlNzMsMTI2ODg2OTMyMTg1ODg0MTdlNzMsOC4yNDc2NTA1OTIwODI0NzJlOTAsNTQ0MzQ0OTM5MDc3NDQzMWU3NywzNjQ3MTExMDkxODE4ODY4ZTc5LDI0ODAwMzU1NDI0MzY4MzA1ZTgwLDE3MTEyMjQ1MjQyODE0MTNlODMsMS4xOTc4NTcxNjY5OTY5ODkyZTEwMCw4NTA0Nzg1ODg1Njc4NjIzZTg2LDYxMjM0NDU4Mzc2ODg2MDg1ZTg3LDQ0NzAxMTU0NjE1MTI2ODQ0ZTg5LDMzMDc4ODU0NDE1MTkzODZlOTIsMjQ4MDkxNDA4MTEzOTU0ZTk1LDE4ODU0OTQ3MDE2NjYwNTA0ZTk1LDE0NTE4MzA5MjAyODI4NTg3ZTk3LDExMzI0MjgxMTc4MjA2Mjk3ZTk5LDg5NDYxODIxMzA3ODI5NzZlMTAxLDcxNTY5NDU3MDQ2MjYzODFlMTAzLDUuNzk3MTI2MDIwNzQ3MzY4ZTEyMCw0NzUzNjQzMzM3MDEyODQyZTEwNywzOTQ1NTIzOTY5NzIwNjU5ZTEwOSwzMzE0MjQwMTM0NTY1MzUzZTExMSwyODE3MTA0MTE0MzgwNTVlMTE0LDIuNDIyNzA5NTM4MzY3MjczNGUxMzAsMjEwNzc1NzI5ODM3OTUyOGUxMTcsMTg1NDgyNjQyMjU3Mzk4NDRlMTE4LDE2NTA3OTU1MTYwOTA4NDZlMTIxLDE0ODU3MTU5NjQ0ODE3NjE1ZTEyMiwxLjM1MjAwMTUyNzY3ODQwM2UxNDAsMTI0Mzg0MTQwNTQ2NDEzMDhlMTI2LDExNTY3NzI1MDcwODE2NDE2ZTEyOCwxMDg3MzY2MTU2NjU2NzQzZTEzMSwxMDMyOTk3ODQ4ODIzOTA2ZTEzMyw5OTE2Nzc5MzQ4NzA5NDk2ZTEzNCw5NjE5Mjc1OTY4MjQ4MjEyZTEzNiw5NDI2ODkwNDQ4ODgzMjQ4ZTEzOCw5MzMyNjIxNTQ0Mzk0NDE1ZTE0MCw5MzMyNjIxNTQ0Mzk0NDE1ZTE0Miw5NDI1OTQ3NzU5ODM4MzZlMTQ1LDk2MTQ0NjY3MTUwMzUxMjdlMTQ2LDk5MDI5MDA3MTY0ODYxOGUxNDksMTAyOTkwMTY3NDUxNDU2MjhlMTUwLDEwODEzOTY3NTgyNDAyOTFlMTUzLDEuMTQ2MjgwNTYzNzM0NzA4NGUxNzAsMTIyNjUyMDIwMzE5NjEzOGUxNTcsMTMyNDY0MTgxOTQ1MTgyOWUxNTksMTQ0Mzg1OTU4MzIwMjQ5MzdlMTYwLDE1ODgyNDU1NDE1MjI3NDNlMTYzLDEuNzYyOTUyNTUxMDkwMjQ0NmUxODAsMTk3NDUwNjg1NzIyMTA3NGUxNjcsMjIzMTE5Mjc0ODY1OTgxMzhlMTY4LDI1NDM1NTk3MzM0NzIxODc3ZTE3MCwyOTI1MDkzNjkzNDkzMDE2ZTE3MywzLjM5MzEwODY4NDQ1MTg5OGUxOTAsMzk2OTkzNzE2MDgwODcyMWUxNzcsNDY4NDUyNTg0OTc1NDI5MWUxNzksNTU3NDU4NTc2MTIwNzYwNmUxODEsNjY4OTUwMjkxMzQ0OTEyN2UxODMsOC4wOTQyOTg1MjUyNzM0NDRlMjAwLDk4NzUwNDQyMDA4MzM2MDFlMTg3LDEyMTQ2MzA0MzY3MDI1MzNlMTkwLDE1MDYxNDE3NDE1MTExNDFlMTkyLDE4ODI2NzcxNzY4ODg5MjZlMTk0LDIzNzIxNzMyNDI4ODAwNDdlMTk2LDMwMTI2NjAwMTg0NTc2NTk0ZTE5NywzODU2MjA0ODIzNjI1ODA0ZTIwMCw0OTc0NTA0MjIyNDc3Mjg3ZTIwMiw2NDY2ODU1NDg5MjIwNDc0ZTIwNCw4NDcxNTgwNjkwODc4ODJlMjA3LDExMTgyNDg2NTExOTYwMDQzZTIwOCwxNDg3MjcwNzA2MDkwNjg1N2UyMTAsMTk5Mjk0Mjc0NjE2MTUxODhlMjEyLDIuNjkwNDcyNzA3MzE4MDUwNGUyMzAsMzY1OTA0Mjg4MTk1MjU0OWUyMTcsNTAxMjg4ODc0ODI3NDk5MmUyMTksNjkxNzc4NjQ3MjYxOTQ4OWUyMjEsOTYxNTcyMzE5Njk0MTA4OWUyMjMsMTM0NjIwMTI0NzU3MTc1MjZlMjI1LDE4OTgxNDM3NTkwNzYxNzFlMjI4LDI2OTUzNjQxMzc4ODgxNjNlMjMwLDM4NTQzNzA3MTcxODAwNzNlMjMyLDU1NTAyOTM4MzI3MzkzMDQ0ZTIzMyw4MDQ3OTI2MDU3NDcxOTkyZTIzNiwxMTc0OTk3MjA0MzkwOTEwN2UyMzgsMTcyNzI0NTg5MDQ1NDYzOWUyNDEsMjU1NjMyMzkxNzg3Mjg2NTRlMjQyLDMuODA4OTIyNjM3NjMwNTdlMjYwLDU3MTMzODM5NTY0NDU4NTVlMjQ3LDg2MjcyMDk3NzQyMzMyNGUyNTAsMTMxMTMzNTg4NTY4MzQ1MjRlMjUxLDIwMDYzNDM5MDUwOTU2ODIzZTI1MywzMDg5NzY5NjEzODQ3MzUwOGUyNTUsNDc4OTE0MjkwMTQ2MzM5NGUyNTgsNzQ3MTA2MjkyNjI4Mjg5NGUyNjAsMTE3Mjk1Njg3OTQyNjQxNDVlMjYyLDEuODUzMjcxODY5NDkzNzM1ZTI4MCwyOTQ2NzAyMjcyNDk1MDM4NGUyNjYsNDcxNDcyMzYzNTk5MjA2MTZlMjY4LDc1OTA3MDUwNTM5NDcyMTllMjcxLDEyMjk2OTQyMTg3Mzk0NDk0ZTI3MywyMDA0NDAxNTc2NTQ1MzAyNmUyNzUsMzI4NzIxODU4NTUzNDI5NmUyNzgsNTQyMzkxMDY2NjEzMTU4OWUyODAsOTAwMzY5MTcwNTc3ODQzOGUyODIsMS41MDM2MTY1MTQ4NjQ5OTllMzAwLDI1MjYwNzU3NDQ5NzMxOTg0ZTI4Niw0MjY5MDY4MDA5MDA0NzA1ZTI4OSw3MjU3NDE1NjE1MzA3OTk5ZTI5MV0sQi5mYWN0b3JpYWw9Qi5mYWN0PWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5jbG9uZSgpLGU9ci5mYWN0b3JpYWxzO2lmKEEubHQoci5aRVJPKXx8IUEuaXNpbnQoKSlyZXR1cm4gQS5hZGQoMSkuZ2FtbWEoKTtpZihBLmx0ZSgxNzApKXJldHVybiBuZXcgcihlWytBXSk7dmFyIHQ9K0E7cmV0dXJuIHQ8NTAwJiYodCs9MTYzODc5LzIwOTAxODg4MCpNYXRoLnBvdyh0LDUpKSx0PDFlMyYmKHQrPS01NzEvMjQ4ODMyMCpNYXRoLnBvdyh0LDQpKSx0PDVlNCYmKHQrPS0xMzkvNTE4NDAqTWF0aC5wb3codCwzKSksdDwxZTcmJih0Kz0xLzI4OCpNYXRoLnBvdyh0LDIpKSx0PDFlMjAmJih0Kz0xLzEyKnQpLEEuZGl2KHIuRSkucG93KEEpLm11bChBLm11bChyLlBJKS5tdWwoMikuc3FydCgpKS50aW1lcygxKX0sYy5mYWN0b3JpYWw9Yy5mYWN0PWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKS5mYWN0KCl9LEIudG9Qb3dlcj1CLnBvdz1mdW5jdGlvbihBKXtpZihBPW5ldyByKEEpLHIuZGVidWc+PXIuTk9STUFMJiZjb25zb2xlLmxvZyh0aGlzKyJeIitBKSxBLmVxKHIuWkVSTykpcmV0dXJuIHIuT05FLmNsb25lKCk7aWYoQS5lcShyLk9ORSkpcmV0dXJuIHRoaXMuY2xvbmUoKTtpZihBLmx0KHIuWkVSTykpcmV0dXJuIHRoaXMucG93KEEubmVnKCkpLnJlYygpO2lmKHRoaXMubHQoci5aRVJPKSYmQS5pc2ludCgpKXJldHVybiBBLm1vZCgyKS5sdChyLk9ORSk/dGhpcy5hYnMoKS5wb3coQSk6dGhpcy5hYnMoKS5wb3coQSkubmVnKCk7aWYodGhpcy5sdChyLlpFUk8pKXJldHVybiByLk5hTi5jbG9uZSgpO2lmKHRoaXMuZXEoci5PTkUpKXJldHVybiByLk9ORS5jbG9uZSgpO2lmKHRoaXMuZXEoci5aRVJPKSlyZXR1cm4gci5aRVJPLmNsb25lKCk7aWYodGhpcy5tYXgoQSkuZ3Qoci5URVRSQVRFRF9NQVhfU0FGRV9JTlRFR0VSKSlyZXR1cm4gdGhpcy5tYXgoQSk7aWYodGhpcy5lcSgxMCkpcmV0dXJuIEEuZ3Qoci5aRVJPKT8oQS5vcGVyYXRvcigxLEEub3BlcmF0b3IoMSkrMXx8MSksQS5ub3JtYWxpemUoKSxBKTpuZXcgcihNYXRoLnBvdygxMCxBLnRvTnVtYmVyKCkpKTtpZihBLmx0KHIuT05FKSlyZXR1cm4gdGhpcy5yb290KEEucmVjKCkpO3ZhciBlPU1hdGgucG93KHRoaXMudG9OdW1iZXIoKSxBLnRvTnVtYmVyKCkpO3JldHVybiBlPD05MDA3MTk5MjU0NzQwOTkxP25ldyByKGUpOnIucG93KDEwLHRoaXMubG9nMTAoKS5tdWwoQSkpfSxjLnRvUG93ZXI9Yy5wb3c9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkucG93KGUpfSxCLmV4cG9uZW50aWFsPUIuZXhwPWZ1bmN0aW9uKCl7cmV0dXJuIHIucG93KE1hdGguRSx0aGlzKX0sYy5leHBvbmVudGlhbD1jLmV4cD1mdW5jdGlvbihBKXtyZXR1cm4gci5wb3coTWF0aC5FLEEpfSxCLnNxdWFyZVJvb3Q9Qi5zcXJ0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucm9vdCgyKX0sYy5zcXVhcmVSb290PWMuc3FydD1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkucm9vdCgyKX0sQi5jdWJlUm9vdD1CLmNicnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yb290KDMpfSxjLmN1YmVSb290PWMuY2JydD1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkucm9vdCgzKX0sQi5yb290PWZ1bmN0aW9uKEEpe3JldHVybiBBPW5ldyByKEEpLHIuZGVidWc+PXIuTk9STUFMJiZjb25zb2xlLmxvZyh0aGlzKyJyb290IitBKSxBLmVxKHIuT05FKT90aGlzLmNsb25lKCk6QS5sdChyLlpFUk8pP3RoaXMucm9vdChBLm5lZygpKS5yZWMoKTpBLmx0KHIuT05FKT90aGlzLnBvdyhBLnJlYygpKTp0aGlzLmx0KHIuWkVSTykmJkEuaXNpbnQoKSYmQS5tb2QoMikuZXEoci5PTkUpP3RoaXMubmVnKCkucm9vdChBKS5uZWcoKTp0aGlzLmx0KHIuWkVSTyk/ci5OYU4uY2xvbmUoKTp0aGlzLmVxKHIuT05FKT9yLk9ORS5jbG9uZSgpOnRoaXMuZXEoci5aRVJPKT9yLlpFUk8uY2xvbmUoKTp0aGlzLm1heChBKS5ndChyLlRFVFJBVEVEX01BWF9TQUZFX0lOVEVHRVIpP3RoaXMuZ3QoQSk/dGhpcy5jbG9uZSgpOnIuWkVSTy5jbG9uZSgpOnIucG93KDEwLHRoaXMubG9nMTAoKS5kaXYoQSkpfSxjLnJvb3Q9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkucm9vdChlKX0sQi5nZW5lcmFsTG9nYXJpdGhtPUIubG9nMTA9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmNsb25lKCk7cmV0dXJuIHIuZGVidWc+PXIuTk9STUFMJiZjb25zb2xlLmxvZygibG9nIit0aGlzKSxBLmx0KHIuWkVSTyk/ci5OYU4uY2xvbmUoKTpBLmVxKHIuWkVSTyk/ci5ORUdBVElWRV9JTkZJTklUWS5jbG9uZSgpOkEubHRlKHIuTUFYX1NBRkVfSU5URUdFUik/bmV3IHIoTWF0aC5sb2cxMChBLnRvTnVtYmVyKCkpKTpBLmlzRmluaXRlKCk/QS5ndChyLlRFVFJBVEVEX01BWF9TQUZFX0lOVEVHRVIpP0E6KEEub3BlcmF0b3IoMSxBLm9wZXJhdG9yKDEpLTEpLEEubm9ybWFsaXplKCkpOkF9LGMuZ2VuZXJhbExvZ2FyaXRobT1jLmxvZzEwPWZ1bmN0aW9uKEEpe3JldHVybiBuZXcgcihBKS5sb2cxMCgpfSxCLmxvZ2FyaXRobT1CLmxvZ0Jhc2U9ZnVuY3Rpb24oQSl7cmV0dXJuIHZvaWQgMD09PUEmJihBPU1hdGguRSksdGhpcy5sb2cxMCgpLmRpdihyLmxvZzEwKEEpKX0sYy5sb2dhcml0aG09Yy5sb2dCYXNlPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLmxvZ0Jhc2UoZSl9LEIubmF0dXJhbExvZ2FyaXRobT1CLmxvZz1CLmxuPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubG9nQmFzZShNYXRoLkUpfSxjLm5hdHVyYWxMb2dhcml0aG09Yy5sb2c9Yy5sbj1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkubG4oKX07dmFyIFE9LjU2NzE0MzI5MDQwOTc4MzgsdT1mdW5jdGlvbihBLGUsdCl7dmFyIG47aWYodm9pZCAwPT09ZSYmKGU9MWUtMTApLHZvaWQgMD09PXQmJih0PSEwKSwhTnVtYmVyLmlzRmluaXRlKEEpKXJldHVybiBBO2lmKHQpe2lmKDA9PT1BKXJldHVybiBBO2lmKDE9PT1BKXJldHVybiBRO249QTwxMD8wOk1hdGgubG9nKEEpLU1hdGgubG9nKE1hdGgubG9nKEEpKX1lbHNle2lmKDA9PT1BKXJldHVybi0xLzA7bj1BPD0tLjE/LTI6TWF0aC5sb2coLUEpLU1hdGgubG9nKC1NYXRoLmxvZygtQSkpfWZvcih2YXIgaT0wO2k8MTAwOysraSl7dmFyIHI9KEEqTWF0aC5leHAoLW4pK24qbikvKG4rMSk7aWYoTWF0aC5hYnMoci1uKTxlKk1hdGguYWJzKHIpKXJldHVybiByO249cn10aHJvdyBFcnJvcigiSXRlcmF0aW9uIGZhaWxlZCB0byBjb252ZXJnZTogIitBKX0sbD1mdW5jdGlvbihBLGUsdCl7dmFyIG47aWYodm9pZCAwPT09ZSYmKGU9MWUtMTApLHZvaWQgMD09PXQmJih0PSEwKSwhKEE9bmV3IHIoQSkpLmlzRmluaXRlKCkpcmV0dXJuIEE7aWYodCl7aWYoQS5lcShyLlpFUk8pKXJldHVybiBBO2lmKEEuZXEoci5PTkUpKXJldHVybiBuZXcgcihRKTtuPXIubG4oQSl9ZWxzZXtpZihBLmVxKHIuWkVSTykpcmV0dXJuIHIuTkVHQVRJVkVfSU5GSU5JVFkuY2xvbmUoKTtuPXIubG4oQS5uZWcoKSl9Zm9yKHZhciBpPTA7aTwxMDA7KytpKXt2YXIgbz1uLm5lZygpLmV4cCgpLHM9bi5zdWIoQS5tdWwobykpLGE9bi5hZGQoci5PTkUpLnN1YihuLmFkZCgyKS5tdWwocykuZGl2KHIubXVsKDIsbikuYWRkKDIpKSk7aWYoYS5lcShyLlpFUk8pKXJldHVybiBuO3ZhciBCPW4uc3ViKHMuZGl2KGEpKTtpZihyLmFicyhCLnN1YihuKSkubHQoci5hYnMoQikubXVsKGUpKSlyZXR1cm4gQjtuPUJ9dGhyb3cgRXJyb3IoIkl0ZXJhdGlvbiBmYWlsZWQgdG8gY29udmVyZ2U6ICIrQSl9O0IubGFtYmVydHc9ZnVuY3Rpb24oQSl7dm9pZCAwPT09QSYmKEE9ITApO3ZhciBlPXRoaXMuY2xvbmUoKTtyZXR1cm4gZS5pc05hTigpP2U6ZS5sdCgtLjM2Nzg3OTQ0MTE3MTA0OTkpP3IuTmFOLmNsb25lKCk6QT9lLmd0KHIuVEVUUkFURURfTUFYX1NBRkVfSU5URUdFUik/ZTplLmd0KHIuRUVfTUFYX1NBRkVfSU5URUdFUik/KGUub3BlcmF0b3IoMSxlLm9wZXJhdG9yKDEpLTEpLGUpOmUuZ3Qoci5NQVhfU0FGRV9JTlRFR0VSKT9sKGUpOm5ldyByKHUoZS5zaWduKmUub3BlcmF0b3IoMCkpKTplLmlzcG9zKCk/ci5OYU4uY2xvbmUoKTplLmFicygpLmd0KHIuRUVfTUFYX1NBRkVfSU5URUdFUik/ZS5uZWcoKS5yZWMoKS5sYW1iZXJ0dygpLm5lZygpOmUuYWJzKCkuZ3Qoci5NQVhfU0FGRV9JTlRFR0VSKT9sKGUsMWUtMTAsITEpOm5ldyByKHUoZS5zaWduKmUub3BlcmF0b3IoMCksMWUtMTAsITEpKX0sYy5sYW1iZXJ0dz1mdW5jdGlvbihBLGUpe3JldHVybiBuZXcgcihBKS5sYW1iZXJ0dyhlKX0sQi50ZXRyYXRlPUIudGV0cj1mdW5jdGlvbihBLGUpe3ZvaWQgMD09PWUmJihlPXIuT05FKTt2YXIgdCxuPXRoaXMuY2xvbmUoKTtpZihBPW5ldyByKEEpLGU9bmV3IHIoZSksbi5pc05hTigpfHxBLmlzTmFOKCl8fGUuaXNOYU4oKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtpZihlLm5lcShyLk9ORSkmJihBPUEuYWRkKGUuc2xvZyhuKSkpLHIuZGVidWc+PXIuTk9STUFMJiZjb25zb2xlLmxvZyhuKyJeXiIrQSksQS5pc0luZmluaXRlKCkmJkEuc2lnbj4wKXJldHVybiBuLmd0ZShNYXRoLmV4cCgxL01hdGguRSkpP3IuUE9TSVRJVkVfSU5GSU5JVFkuY2xvbmUoKToodD1uLmxuKCkubmVnKCkpLmxhbWJlcnR3KCkuZGl2KHQpO2lmKEEubHRlKC0yKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtpZihuLmVxKHIuWkVSTykpcmV0dXJuIEEuZXEoci5aRVJPKT9yLk5hTi5jbG9uZSgpOkEubW9kKDIpLmVxKHIuWkVSTyk/ci5aRVJPLmNsb25lKCk6ci5PTkUuY2xvbmUoKTtpZihuLmVxKHIuT05FKSlyZXR1cm4gQS5lcShyLk9ORS5uZWcoKSk/ci5OYU4uY2xvbmUoKTpyLk9ORS5jbG9uZSgpO2lmKEEuZXEoci5PTkUubmVnKCkpKXJldHVybiByLlpFUk8uY2xvbmUoKTtpZihBLmVxKHIuWkVSTykpcmV0dXJuIHIuT05FLmNsb25lKCk7aWYoQS5lcShyLk9ORSkpcmV0dXJuIG47aWYoQS5lcSgyKSlyZXR1cm4gbi5wb3cobik7aWYobi5lcSgyKSl7aWYoQS5lcSgzKSlyZXR1cm4gbmV3IHIoMTYpO2lmKEEuZXEoNCkpcmV0dXJuIG5ldyByKDY1NTM2KX12YXIgaT1uLm1heChBKTtpZihpLmd0KCIxMF5eXjkwMDcxOTkyNTQ3NDA5OTEiKSlyZXR1cm4gaTtpZihpLmd0KHIuVEVUUkFURURfTUFYX1NBRkVfSU5URUdFUil8fEEuZ3Qoci5NQVhfU0FGRV9JTlRFR0VSKSl7aWYodGhpcy5sdChNYXRoLmV4cCgxL01hdGguRSkpKXJldHVybih0PW4ubG4oKS5uZWcoKSkubGFtYmVydHcoKS5kaXYodCk7dmFyIG89bi5zbG9nKDEwKS5hZGQoQSk7cmV0dXJuIG8ub3BlcmF0b3IoMiwoby5vcGVyYXRvcigyKXx8MCkrMSksby5ub3JtYWxpemUoKSxvfWZvcih2YXIgcz1BLnRvTnVtYmVyKCksYT1NYXRoLmZsb29yKHMpLEI9bi5wb3cocy1hKSxjPXIuTmFOLGc9MCxFPW5ldyByKHIuRV9NQVhfU0FGRV9JTlRFR0VSKTswIT09YSYmQi5sdChFKSYmZzwxMDA7KytnKWlmKGE+MCl7aWYoQj1uLnBvdyhCKSxjLmVxKEIpKXthPTA7YnJlYWt9Yz1CLC0tYX1lbHNle2lmKEI9Qi5sb2dCYXNlKG4pLGMuZXEoQikpe2E9MDticmVha31jPUIsKythfXJldHVybigxMDA9PWd8fHRoaXMubHQoTWF0aC5leHAoMS9NYXRoLkUpKSkmJihhPTApLEIub3BlcmF0b3IoMSxCLm9wZXJhdG9yKDEpK2F8fGEpLEIubm9ybWFsaXplKCksQn0sYy50ZXRyYXRlPWMudGV0cj1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG5ldyByKEEpLnRldHIoZSx0KX0sQi5pdGVyYXRlZGV4cD1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLnRldHIoQSxlKX0sYy5pdGVyYXRlZGV4cD1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG5ldyByKEEpLml0ZXJhdGVkZXhwKGUsdCl9LEIuaXRlcmF0ZWRsb2c9ZnVuY3Rpb24oQSxlKXt2b2lkIDA9PT1BJiYoQT0xMCksdm9pZCAwPT09ZSYmKGU9ci5PTkUuY2xvbmUoKSk7dmFyIHQ9dGhpcy5jbG9uZSgpO3JldHVybiBBPW5ldyByKEEpLChlPW5ldyByKGUpKS5lcShyLlpFUk8pP3Q6ZS5lcShyLk9ORSk/dC5sb2dCYXNlKEEpOkEudGV0cih0LnNsb2coQSkuc3ViKGUpKX0sYy5pdGVyYXRlZGxvZz1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIG5ldyByKEEpLml0ZXJhdGVkbG9nKGUsdCl9LEIubGF5ZXJhZGQ9ZnVuY3Rpb24oQSxlKXt2b2lkIDA9PT1lJiYoZT0xMCksdm9pZCAwPT09QSYmKEE9ci5PTkUuY2xvbmUoKSk7dmFyIHQ9dGhpcy5jbG9uZSgpO3JldHVybiBlPW5ldyByKGUpLEE9bmV3IHIoQSksZS50ZXRyKHQuc2xvZyhlKS5hZGQoQSkpfSxjLmxheWVyYWRkPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbmV3IHIoQSkubGF5ZXJhZGQoZSx0KX0sQi5sYXllcmFkZDEwPWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmxheWVyYWRkKEEpfSxjLmxheWVyYWRkMTA9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkubGF5ZXJhZGQxMChlKX0sQi5zc3FydD1CLnNzcnQ9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmNsb25lKCk7aWYoQS5sdChNYXRoLmV4cCgtMS9NYXRoLkUpKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtpZighQS5pc0Zpbml0ZSgpKXJldHVybiBBO2lmKEEuZ3Qoci5URVRSQVRFRF9NQVhfU0FGRV9JTlRFR0VSKSlyZXR1cm4gQTtpZihBLmd0KHIuRUVfTUFYX1NBRkVfSU5URUdFUikpcmV0dXJuIEEub3BlcmF0b3IoMSxBLm9wZXJhdG9yKDEpLTEpLEE7dmFyIGU9QS5sbigpO3JldHVybiBlLmRpdihlLmxhbWJlcnR3KCkpfSxjLnNzcXJ0PWMuc3NydD1mdW5jdGlvbihBKXtyZXR1cm4gbmV3IHIoQSkuc3NxcnQoKX0sQi5saW5lYXJfc3Jvb3Q9ZnVuY3Rpb24oQSl7dmFyIGU9bmV3IHIodGhpcyk7aWYoKEE9bmV3IHIoQSkpLmlzTmFOKCkpcmV0dXJuIHIuTmFOLmNsb25lKCk7dmFyIHQ9TnVtYmVyKEEpO2lmKDE9PXQpcmV0dXJuIGU7aWYoZS5lcShyLlBPU0lUSVZFX0lORklOSVRZKSlyZXR1cm4gci5QT1NJVElWRV9JTkZJTklUWS5jbG9uZSgpO2lmKCFlLmlzRmluaXRlKCkpcmV0dXJuIHIuTmFOLmNsb25lKCk7aWYodD4wJiZ0PDEpcmV0dXJuIGUucm9vdChBKTtpZih0Pi0yJiZ0PC0xKXJldHVybiBBLmFkZCgyKS5wb3coZS5yZWMoKSk7aWYodDw9MClyZXR1cm4gci5OYU4uY2xvbmUoKTtpZihBLmd0KHIuTUFYX1NBRkVfSU5URUdFUikpe3ZhciBuPU51bWJlcihlKTtpZihuPE1hdGguRSYmbj4xL01hdGguRSlyZXR1cm4gZS5wb3coZS5yZWMoKSk7aWYoZS5ndChyLlRFVFJBVEVEX01BWF9TQUZFX0lOVEVHRVIpKXt2YXIgaT1lLnNsb2coMTApLnN1YihBKTtyZXR1cm4gaS5sdGUoci5aRVJPKT9uZXcgcihNYXRoLmV4cCgxL01hdGguRSkpOnIudGV0cigxMCxpKX1yZXR1cm4gci5OYU4uY2xvbmUoKX1pZihlLmVxKHIuT05FKSlyZXR1cm4gci5PTkUuY2xvbmUoKTtpZihlLmx0KHIuWkVSTykpcmV0dXJuIHIuTmFOLmNsb25lKCk7aWYoZS5lcShyLlpFUk8pKXJldHVybiByLlpFUk8uY2xvbmUoKTtpZihlLmd0KHIuT05FKSl7dz10PD0xP2Uucm9vdChBKTplLmd0ZShyLnRldHIoMTAsQSkpP2UuaXRlcmF0ZWRsb2coMTAsdC0xKTpuZXcgcigxMCk7Zm9yKHZhciBvPXIuWkVSTyxzPXcuYXJyYXlbMl18fDAsYT0odT13Lml0ZXJhdGVkbG9nKDEwLHMpKS5kaXYoMik7Oyl7ci5pdGVyYXRlZGV4cCgxMCxzLGEpLnRldHIoQSkuZ3QoZSk/dT1hOm89YTt2YXIgQj1vLmFkZCh1KS5kaXYoMik7aWYoQi5lcShhKSlicmVhazthPUJ9cmV0dXJuIHIuaXRlcmF0ZWRleHAoMTAscyxhKX1mb3IodmFyIGM9bmV3IHIoIjEwXl4xMCIpLGc9MSxFPWMsUT1jLHU9KG89YyxuZXcgcigxZS0xNikpLGw9ci5aRVJPLGg9Yyx3PXIucG93KDEwLHUpLnJlYygpLEM9ci5aRVJPLEk9dyxNPXcsZD1NYXRoLmNlaWwodCklMj09MCxwPTAsbT1jLEY9ITEsRD1yLlpFUk8sWT0hMTtnPDQ7KXtpZigyPT1nKXtpZihkKWJyZWFrO289Yyx1PUUsZz0zLGg9YyxtPWN9Zm9yKEY9ITE7dS5uZXEobyk7KXtEPXU7dmFyIGY9ci5wb3coMTAsdSkucmVjKCksTj1mLnRldHIoQSk7aWYoTi5lcShyLk9ORSkmJmYubHQoLjQpKXc9ZixJPWYsTT1mLEM9ci5aRVJPLHA9LTEsMz09ZyYmKG09dSk7ZWxzZSBpZihOLmVxKGYpJiYhZCYmZi5sdCguNCkpdz1mLEk9ZixNPWYsQz1yLlpFUk8scD0wO2Vsc2UgaWYoTi5lcShmLm11bCgyKS50ZXRyKEEpKSl3PWYsST1yLlpFUk8sTT13Lm11bCgyKSxDPXcscD1kPy0xOjA7ZWxzZXtsPXUubXVsKDEyZS0xNyksdz1mLEk9ci5wb3coMTAsdS5hZGQobCkpLnJlYygpLEM9dy5zdWIoSSksTT13LmFkZChDKTtmb3IodmFyIFUseSxUPXcudGV0cihBKTtJLmd0ZSh3KXx8TS5sdGUodyl8fChVPUkudGV0cihBKSkuZXEoVCl8fCh5PU0udGV0cihBKSkuZXEoVCk7KWw9bC5tdWwoMiksST1yLnBvdygxMCx1LmFkZChsKSkucmVjKCksQz13LnN1YihJKSxNPXcuYWRkKEMpO2lmKCgxPT1nJiZ5Lmd0KFQpJiZVLmd0KFQpfHwzPT1nJiZ5Lmx0KFQpJiZVLmx0KFQpKSYmKG09dSkseS5sdChUKSlwPS0xO2Vsc2UgaWYoZClwPTE7ZWxzZSBpZigzPT1nJiZ1Lmd0X3RvbGVyYW5jZShFLDFlLTgpKXA9MDtlbHNle2Zvcig7SS5ndGUodyl8fE0ubHRlKHcpfHwoVT1JLnRldHIoQSkpLmVxX3RvbGVyYW5jZShULDFlLTgpfHwoeT1NLnRldHIoQSkpLmVxX3RvbGVyYW5jZShULDFlLTgpOylsPWwubXVsKDIpLEk9ci5wb3coMTAsdS5hZGQobCkpLnJlYygpLEM9dy5zdWIoSSksTT13LmFkZChDKTtwPXkuc3ViKFQpLmx0KFQuc3ViKFUpKT8wOjF9fWlmKC0xPT1wJiYoWT0hMCksMT09ZyYmMT09cHx8Mz09ZyYmMCE9cCl7aWYoby5lcShjKSl1PXUubXVsKDIpO2Vsc2UgaWYodT11LmFkZChvKS5kaXYoMiksRiYmKDE9PXAmJjE9PWd8fC0xPT1wJiYzPT1nKSlicmVha31lbHNlIGlmKG8uZXEoYykpbz11LHU9dS5kaXYoMik7ZWxzZSBpZihvPW8uc3ViKGgpLHU9dS5zdWIoaCksRiYmKDE9PXAmJjE9PWd8fC0xPT1wJiYzPT1nKSlicmVhazt2YXIgeD1vLnN1Yih1KS5kaXYoMikuYWJzKCk7aWYoeC5ndChoLm11bCgxLjUpKSYmKEY9ITApLGg9eCx1Lmd0KDFlMTgpfHx1LmVxKEQpKWJyZWFrfWlmKHUuZ3QoMWUxOCkpYnJlYWs7aWYoIVkpYnJlYWs7aWYobS5lcShjKSlicmVhazsxPT1nP0U9bTozPT1nJiYoUT1tKSxnKyt9bz1FO2Zvcih2YXIgUj11PW5ldyByKDFlLTE4KSxHPShhPXIuWkVSTywhMCk7RzspaWYoYT1vLmVxKGMpP3UubXVsKDIpOm8uYWRkKHUpLmRpdigyKSxyLnBvdygxMCxhKS5yZWMoKS50ZXRyKEEpLmd0KGUpP3U9YTpvPWEsYS5lcShSKT9HPSExOlI9YSx1Lmd0KDFlMTgpKXJldHVybiByLk5hTi5jbG9uZSgpO2lmKGEubmVxX3RvbGVyYW5jZShFLDFlLTE1KSlyZXR1cm4gci5wb3coMTAsYSkucmVjKCk7aWYoUS5lcShjKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtvPWMsUj11PVEsYT1yLlpFUk87Zm9yKEc9ITA7RzspaWYoYT1vLmVxKGMpP3UubXVsKDIpOm8uYWRkKHUpLmRpdigyKSxyLnBvdygxMCxhKS5yZWMoKS50ZXRyKEEpLmd0KGUpP3U9YTpvPWEsYS5lcShSKT9HPSExOlI9YSx1Lmd0KDFlMTgpKXJldHVybiByLk5hTi5jbG9uZSgpO3JldHVybiByLnBvdygxMCxhKS5yZWMoKX0sYy5saW5lYXJfc3Jvb3Q9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkubGluZWFyX3Nyb290KGUpfSxCLnNsb2c9ZnVuY3Rpb24oQSl7dm9pZCAwPT09QSYmKEE9MTApO3ZhciBlPXRoaXMuY2xvbmUoKTtpZihBPW5ldyByKEEpLGUuaXNOYU4oKXx8QS5pc05hTigpfHxlLmlzSW5maW5pdGUoKSYmQS5pc0luZmluaXRlKCkpcmV0dXJuIHIuTmFOLmNsb25lKCk7aWYoZS5pc0luZmluaXRlKCkpcmV0dXJuIGU7aWYoQS5pc0luZmluaXRlKCkpcmV0dXJuIHIuWkVSTy5jbG9uZSgpO2lmKGUuZXEoci5aRVJPKSlyZXR1cm4gci5PTkUubmVnKCk7aWYoZS5lcShyLk9ORSkpcmV0dXJuIHIuWkVSTy5jbG9uZSgpO2lmKGUuZXEoQSkpcmV0dXJuIHIuT05FLmNsb25lKCk7aWYoQS5sdChNYXRoLmV4cCgxL01hdGguRSkpKXt2YXIgdD1yLnRldHIoQSwxLzApO2lmKGUuZXEodCkpcmV0dXJuIHIuUE9TSVRJVkVfSU5GSU5JVFkuY2xvbmUoKTtpZihlLmd0KHQpKXJldHVybiByLk5hTi5jbG9uZSgpfWlmKGUubWF4KEEpLmd0KCIxMF5eXjkwMDcxOTkyNTQ3NDA5OTEiKSlyZXR1cm4gZS5ndChBKT9lOnIuWkVSTy5jbG9uZSgpO2lmKGUubWF4KEEpLmd0KHIuVEVUUkFURURfTUFYX1NBRkVfSU5URUdFUikpcmV0dXJuIGUuZ3QoQSk/KGUub3BlcmF0b3IoMixlLm9wZXJhdG9yKDIpLTEpLGUubm9ybWFsaXplKCksZS5zdWIoZS5vcGVyYXRvcigxKSkpOnIuWkVSTy5jbG9uZSgpO2lmKGUubHQoci5aRVJPKSlyZXR1cm4gQS5wb3coZSkuc3ViKDIpO3ZhciBuPTAsaT0oZS5vcGVyYXRvcigxKXx8MCktKEEub3BlcmF0b3IoMSl8fDApO2lmKGk+Myl7dmFyIG89aS0zO24rPW8sZS5vcGVyYXRvcigxLGUub3BlcmF0b3IoMSktbyl9Zm9yKHZhciBzPTA7czwxMDA7KytzKXtpZihlLmx0ZShyLk9ORSkpcmV0dXJuIG5ldyByKG4rZS50b051bWJlcigpLTEpOysrbixlPXIubG9nQmFzZShlLEEpfXJldHVybiByLk5hTi5jbG9uZSgpfSxjLnNsb2c9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gbmV3IHIoQSkuc2xvZyhlKX0sQi5wZW50YXRlPUIucGVudD1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy5hcnJvdygzKShBKX0sYy5wZW50YXRlPWMucGVudD1mdW5jdGlvbihBLGUpe3JldHVybiByLmFycm93KEEsMyxlKX0sQi5wZW50YV9sb2c9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMuYXJyb3dfaGVpZ2h0X2ludmVyc2UoMykoQSl9LGMucGVudGFfbG9nPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHIuYXJyb3dfaGVpZ2h0X2ludmVyc2UoQSwzLGUpfSxCLmFycm93PWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuY2xvbmUoKTtyZXR1cm4hKEE9bmV3IHIoQSkpLmlzaW50KCl8fEEubHQoci5aRVJPKT9mdW5jdGlvbihBKXtyZXR1cm4gci5OYU4uY2xvbmUoKX06QS5lcShyLlpFUk8pP2Z1bmN0aW9uKEEpe3JldHVybiBlLm11bChBKX06QS5lcShyLk9ORSk/ZnVuY3Rpb24oQSl7cmV0dXJuIGUucG93KEEpfTpBLmVxKDIpP2Z1bmN0aW9uKEEsdCl7cmV0dXJuIGUudGV0cihBLHQpfTpmdW5jdGlvbih0LG4saSl7aWYodm9pZCAwPT09biYmKG49ci5PTkUpLHZvaWQgMD09PWkmJihpPTApLHQ9bmV3IHIodCksbj1uZXcgcihuKSxlLmlzTmFOKCl8fHQuaXNOYU4oKXx8bi5pc05hTigpKXJldHVybiByLk5hTi5jbG9uZSgpO2lmKG4ubmVxKHIuT05FKSYmKHQ9dC5hZGQobi5hcnJvd19oZWlnaHRfaW52ZXJzZShBKShlKSkpLHIuZGVidWc+PXIuTk9STUFMJiZjb25zb2xlLmxvZyhlKyJ7IitBKyJ9Iit0KSxlLmVxKHIuWkVSTykpcmV0dXJuIHQuZXEoci5PTkUpP3IuWkVSTy5jbG9uZSgpOnIuTmFOLmNsb25lKCk7aWYoZS5lcShyLk9ORSkpcmV0dXJuIHIuT05FLmNsb25lKCk7aWYodC5lcShyLlpFUk8pKXJldHVybiByLk9ORS5jbG9uZSgpO2lmKHQuZXEoci5PTkUpKXJldHVybiBlLmNsb25lKCk7aWYodC5ndChyLlpFUk8pJiZ0Lmx0KHIuT05FKSlyZXR1cm4gZS5wb3codCk7aWYodC5ndChyLk9ORSkmJkEuZ3Qoci5NQVhfU0FGRV9JTlRFR0VSKSlyZXR1cm4oZz1BLmNsb25lKCkpLmxheWVyKyssZzt2YXIgbz1BLnRvTnVtYmVyKCk7aWYodC5lcSgyKSlyZXR1cm4gZS5hcnJvdyhvLTEpKGUsci5PTkUsaSsxKTtpZihlLm1heCh0KS5ndCgiMTB7IisobysxKSsifTkwMDcxOTkyNTQ3NDA5OTEiKSlyZXR1cm4gZS5tYXgodCk7aWYoZS5ndCgiMTB7IitvKyJ9OTAwNzE5OTI1NDc0MDk5MSIpfHx0Lmd0KHIuTUFYX1NBRkVfSU5URUdFUikpe2UuZ3QoIjEweyIrbysifTkwMDcxOTkyNTQ3NDA5OTEiKT8oKGc9ZS5jbG9uZSgpKS5vcGVyYXRvcihvLGcub3BlcmF0b3IobyktMSksZy5ub3JtYWxpemUoKSk6Zz1lLmd0KCIxMHsiKyhvLTEpKyJ9OTAwNzE5OTI1NDc0MDk5MSIpP25ldyByKGUub3BlcmF0b3Ioby0xKSk6ci5aRVJPO3ZhciBzPWcuYWRkKHQpO3JldHVybiBzLm9wZXJhdG9yKG8sKHMub3BlcmF0b3Iobyl8fDApKzEpLHMubm9ybWFsaXplKCksc31pZihpPj1yLm1heE9wcysxMClyZXR1cm4gbmV3IHIoW1swLDEwXSxbbywxXV0pO2Zvcih2YXIgYT10LnRvTnVtYmVyKCksQj1NYXRoLmZsb29yKGEpLGM9QS5zdWIoci5PTkUpLGc9ZS5hcnJvdyhjKShhLUIsci5PTkUsaSsxKSxFPXIuTmFOLFE9MCx1PW5ldyByKCIxMHsiKyhvLTEpKyJ9OTAwNzE5OTI1NDc0MDk5MSIpOzAhPT1CJiZnLmx0KHUpJiZRPDEwMDsrK1EpaWYoQj4wKXtpZihnPWUuYXJyb3coYykoZyxyLk9ORSxpKzEpLEUuZXEoZykpe0I9MDticmVha31FPWcsLS1CfWVsc2V7aWYoZz1nLmFycm93X2hlaWdodF9pbnZlcnNlKGMpKGUpLEUuZXEoZykpe0I9MDticmVha31FPWcsKytCfXJldHVybiAxMDA9PVEmJihCPTApLGcub3BlcmF0b3Ioby0xLGcub3BlcmF0b3Ioby0xKStCfHxCKSxnLm5vcm1hbGl6ZSgpLGd9fSxCLmNoYWluPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHRoaXMuYXJyb3coZSkoQSl9LGMuYXJyb3c9ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIG5ldyByKEEpLmFycm93KGUpKHQsbil9LGMuY2hhaW49ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBuZXcgcihBKS5hcnJvdyh0KShlKX0sYy5oeXBlcj1mdW5jdGlvbihBKXtyZXR1cm4oQT1uZXcgcihBKSkuZXEoci5aRVJPKT9mdW5jdGlvbihBLGUpe3JldHVybiBuZXcgcihlKS5lcShyLlpFUk8pP25ldyByKEEpOm5ldyByKEEpLmFkZChyLk9ORSl9OkEuZXEoci5PTkUpP2Z1bmN0aW9uKEEsZSl7cmV0dXJuIHIuYWRkKEEsZSl9OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbmV3IHIoZSkuYXJyb3coQS5zdWIoMikpKHQsbil9fSxCLmFycm93X2hlaWdodF9pbnZlcnNlPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuY2xvbmUoKTtyZXR1cm4hKEE9bmV3IHIoQSkpLmlzaW50KCl8fEEubHQoci5PTkUpP2Z1bmN0aW9uKEEpe3JldHVybiByLk5hTi5jbG9uZSgpfTpBLmVxKHIuT05FKT9mdW5jdGlvbihBKXtyZXR1cm4gZS5sb2dCYXNlKEEpfTpBLmVxKDIpP2Z1bmN0aW9uKEEpe3JldHVybiBlLnNsb2coQSl9OmZ1bmN0aW9uKHQsbil7aWYodm9pZCAwPT09dCYmKHQ9MTApLHZvaWQgMD09PW4mJihuPTApLHQ9bmV3IHIodCksZS5pc05hTigpfHx0LmlzTmFOKCl8fGUuaXNJbmZpbml0ZSgpJiZ0LmlzSW5maW5pdGUoKSlyZXR1cm4gci5OYU4uY2xvbmUoKTtpZih0Lmx0ZShyLk9ORSkpcmV0dXJuIHIuTmFOLmNsb25lKCk7aWYoZS5pc0luZmluaXRlKCkpcmV0dXJuIGU7aWYodC5pc0luZmluaXRlKCkpcmV0dXJuIHIuWkVSTy5jbG9uZSgpO2lmKGUuZXEoci5aRVJPKSlyZXR1cm4gci5PTkUubmVnKCk7aWYoZS5lcShyLk9ORSkpcmV0dXJuIHIuWkVSTy5jbG9uZSgpO2lmKGUuZXEodCkpcmV0dXJuIHIuT05FLmNsb25lKCk7aWYoZS5ndChyLk9ORSkmJmUubHQodCkpcmV0dXJuIGUubG9nQmFzZSh0KTtpZihlLmd0KHIuT05FKSYmQS5ndChyLk1BWF9TQUZFX0lOVEVHRVIpKXt2YXIgaT1lLmNtcCh0LmFycm93KEEpKHQpKTtyZXR1cm4gMD09aT9uZXcgcigyKTppPjA/ZTpyLk9ORS5jbG9uZSgpfXZhciBvPUEudG9OdW1iZXIoKTtpZigyPT1vJiZlLmx0KHIuT05FLm5lZygpKSl7aWYoZS5sdCgtMikpcmV0dXJuIHIuTmFOLmNsb25lKCk7dmFyIHM9ZS5jbXAodC5hcnJvdyhBLnN1YihyLk9ORSkpKGUpKTtpZigwPT1zKXJldHVybiByLk5FR0FUSVZFX0lORklOSVRZLmNsb25lKCk7aWYocz4wKXJldHVybiByLk5hTi5jbG9uZSgpfWlmKGUubWF4KHQpLmd0KCIxMHsiKyhvKzEpKyJ9OTAwNzE5OTI1NDc0MDk5MSIpKXJldHVybiBlLmd0KHQpP2U6ci5aRVJPLmNsb25lKCk7aWYoZS5tYXgodCkuZ3QoIjEweyIrbysifTkwMDcxOTkyNTQ3NDA5OTEiKSlyZXR1cm4gZS5ndCh0KT8oZS5vcGVyYXRvcihvLGUub3BlcmF0b3IobyktMSksZS5ub3JtYWxpemUoKSxlLnN1YihlLm9wZXJhdG9yKG8tMSkpKTpyLlpFUk8uY2xvbmUoKTt2YXIgYT0wLEI9KGUub3BlcmF0b3Ioby0xKXx8MCktKHQub3BlcmF0b3Ioby0xKXx8MCk7aWYobj49ci5tYXhPcHMrMTApcmV0dXJuIG5ldyByKEIpO2lmKEI+Myl7dmFyIGM9Qi0zO2ErPWMsZS5vcGVyYXRvcihvLTEsZS5vcGVyYXRvcihvLTEpLWMpfWZvcih2YXIgZz1BLnN1YihyLk9ORSksRT0wO0U8MTAwOysrRSlpZihlLmx0KHIuWkVSTykpZT10LmFycm93KGcpKGUpLC0tYTtlbHNle2lmKGUubHRlKHIuT05FKSlyZXR1cm4gbmV3IHIoYStlLnRvTnVtYmVyKCktMSk7KythLGU9ZS5hcnJvd19oZWlnaHRfaW52ZXJzZShnKSh0LG4rMSl9cmV0dXJuIHIuTmFOLmNsb25lKCl9fSxjLmFycm93X2hlaWdodF9pbnZlcnNlPWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gbmV3IHIoQSkuYXJyb3dfaGVpZ2h0X2ludmVyc2UoZSkodCl9LEIuZXhwYW5zaW9uPWZ1bmN0aW9uKEEpe3ZhciBlLHQ9dGhpcy5jbG9uZSgpO2lmKEE9bmV3IHIoQSksci5kZWJ1Zz49ci5OT1JNQUwmJmNvbnNvbGUubG9nKCJ7Iit0KyIsIitBKyIsMSwyfSIpLEEubHRlKHIuWkVSTyl8fCFBLmlzaW50KCkpcmV0dXJuIHIuTmFOLmNsb25lKCk7aWYoQS5lcShyLk9ORSkpcmV0dXJuIHQuY2xvbmUoKTtpZighdC5pc2ludCgpKXJldHVybiByLk5hTi5jbG9uZSgpO2lmKHQuZXEoMikpcmV0dXJuIG5ldyByKDQpO2lmKEEuZ3Qoci5NQVhfU0FGRV9JTlRFR0VSKSlyZXR1cm4gci5QT1NJVElWRV9JTkZJTklUWS5jbG9uZSgpO3ZhciBuPUEudG9OdW1iZXIoKS0xO2U9dDtmb3IodmFyIGk9MDswIT09biYmZS5sdChyLk1BWF9TQUZFX0lOVEVHRVIpJiZpPDEwMDsrK2kpbj4wJiYoZT10LmFycm93KGUpKHQpLC0tbik7cmV0dXJuIDEwMD09aSYmKG49MCksZS5sYXllcis9bixlLm5vcm1hbGl6ZSgpLGV9LGMuZXhwYW5zaW9uPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIG5ldyByKEEpLmV4cGFuc2lvbihlKX0sYy5hZmZvcmRHZW9tZXRyaWNTZXJpZXM9ZnVuY3Rpb24oQSxlLHQsbil7QT1uZXcgcihBKSxlPW5ldyByKGUpLHQ9bmV3IHIodCk7dmFyIGk9ZS5tdWwodC5wb3cobikpO3JldHVybiByLmZsb29yKEEuZGl2KGkpLm11bCh0LnN1YihyLk9ORSkpLmFkZChyLk9ORSkubG9nMTAoKS5kaXYodC5sb2cxMCgpKSl9LGMuYWZmb3JkQXJpdGhtZXRpY1Nlcmllcz1mdW5jdGlvbihBLGUsdCxuKXtBPW5ldyByKEEpLGU9bmV3IHIoZSksdD1uZXcgcih0KSxuPW5ldyByKG4pO3ZhciBpPWUuYWRkKG4ubXVsKHQpKS5zdWIodC5kaXYoMikpLG89aS5wb3coMik7cmV0dXJuIGkubmVnKCkuYWRkKG8uYWRkKHQubXVsKEEpLm11bCgyKSkuc3FydCgpKS5kaXYodCkuZmxvb3IoKX0sYy5zdW1HZW9tZXRyaWNTZXJpZXM9ZnVuY3Rpb24oQSxlLHQsbil7cmV0dXJuIGU9bmV3IHIoZSksdD1uZXcgcih0KSxlLm11bCh0LnBvdyhuKSkubXVsKHIuc3ViKHIuT05FLHQucG93KEEpKSkuZGl2KHIuc3ViKHIuT05FLHQpKX0sYy5zdW1Bcml0aG1ldGljU2VyaWVzPWZ1bmN0aW9uKEEsZSx0LG4pe0E9bmV3IHIoQSksZT1uZXcgcihlKSxuPW5ldyByKG4pO3ZhciBpPWUuYWRkKG4ubXVsKHQpKTtyZXR1cm4gQS5kaXYoMikubXVsKGkubXVsKDIpLnBsdXMoQS5zdWIoci5PTkUpLm11bCh0KSkpfSxjLmNob29zZT1mdW5jdGlvbihBLGUpe3JldHVybiBuZXcgcihBKS5mYWN0b3JpYWwoKS5kaXYobmV3IHIoZSkuZmFjdG9yaWFsKCkubXVsKG5ldyByKEEpLnN1YihuZXcgcihlKSkuZmFjdG9yaWFsKCkpKX0sQi5jaG9vc2U9ZnVuY3Rpb24oQSl7cmV0dXJuIHIuY2hvb3NlKHRoaXMsQSl9LEIubm9ybWFsaXplPWZ1bmN0aW9uKCl7dmFyIEEsZT10aGlzO2lmKHIuZGVidWc+PXIuQUxMJiZjb25zb2xlLmxvZyhlLnRvU3RyaW5nKCkpLGUuYXJyYXkmJmUuYXJyYXkubGVuZ3RofHwoZS5hcnJheT1bWzAsMF1dKSwxIT1lLnNpZ24mJi0xIT1lLnNpZ24mJigibnVtYmVyIiE9dHlwZW9mIGUuc2lnbiYmKGUuc2lnbj1OdW1iZXIoZS5zaWduKSksZS5zaWduPWUuc2lnbjwwPy0xOjEpLGUubGF5ZXI+OTAwNzE5OTI1NDc0MDk5MSlyZXR1cm4gZS5hcnJheT1bWzAsMS8wXV0sZS5sYXllcj0wLGU7TnVtYmVyLmlzSW50ZWdlcihlLmxheWVyKSYmKGUubGF5ZXI9TWF0aC5mbG9vcihlLmxheWVyKSk7Zm9yKHZhciB0PTA7dDxlLmFycmF5Lmxlbmd0aDsrK3Qpe3ZhciBuPWUuYXJyYXlbdF07aWYobnVsbCE9PW5bMF0mJnZvaWQgMCE9PW5bMF18fChuWzBdPTApLDA9PT1uWzBdfHwwIT09blsxXSYmbnVsbCE9PW5bMV0mJnZvaWQgMCE9PW5bMV0pe2lmKGlzTmFOKG5bMF0pfHxpc05hTihuWzFdKSlyZXR1cm4gZS5hcnJheT1bWzAsTmFOXV0sZTtpZighaXNGaW5pdGUoblswXSl8fCFpc0Zpbml0ZShuWzFdKSlyZXR1cm4gZS5hcnJheT1bWzAsMS8wXV0sZTtOdW1iZXIuaXNJbnRlZ2VyKG5bMF0pfHwoblswXT1NYXRoLmZsb29yKG5bMF0pKSwwPT09blswXXx8TnVtYmVyLmlzSW50ZWdlcihuWzFdKXx8KG5bMV09TWF0aC5mbG9vcihuWzFdKSl9ZWxzZSBlLmFycmF5LnNwbGljZSh0LDEpLC0tdH1kb3tmb3Ioci5kZWJ1Zz49ci5BTEwmJmNvbnNvbGUubG9nKGUudG9TdHJpbmcoKSksQT0hMSxlLmFycmF5LnNvcnQoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEFbMF0+ZVswXT8xOkFbMF08ZVswXT8tMTowfSkpLGUuYXJyYXkubGVuZ3RoPnIubWF4T3BzJiZlLmFycmF5LnNwbGljZSgwLGUuYXJyYXkubGVuZ3RoLXIubWF4T3BzKSxlLmFycmF5Lmxlbmd0aHx8KGUuYXJyYXk9W1swLDBdXSksZS5hcnJheVtlLmFycmF5Lmxlbmd0aC0xXVswXT45MDA3MTk5MjU0NzQwOTkxPyhlLmxheWVyKyssZS5hcnJheT1bWzAsZS5hcnJheVtlLmFycmF5Lmxlbmd0aC0xXVswXV1dLEE9ITApOmUubGF5ZXImJjE9PWUuYXJyYXkubGVuZ3RoJiYwPT09ZS5hcnJheVswXVswXSYmKGUubGF5ZXItLSwwPT09ZS5hcnJheVswXVsxXT9lLmFycmF5PVtbMCwxMF1dOmUuYXJyYXk9W1swLDEwXSxbTWF0aC5yb3VuZChlLmFycmF5WzBdWzFdKSwxXV0sQT0hMCksZS5hcnJheS5sZW5ndGg8ci5tYXhPcHMmJjAhPT1lLmFycmF5WzBdWzBdJiZlLmFycmF5LnVuc2hpZnQoWzAsMTBdKSx0PTA7dDxlLmFycmF5Lmxlbmd0aC0xOysrdCllLmFycmF5W3RdWzBdPT1lLmFycmF5W3QrMV1bMF0mJihlLmFycmF5W3RdWzFdKz1lLmFycmF5W3QrMV1bMV0sZS5hcnJheS5zcGxpY2UodCsxLDEpLC0tdCxBPSEwKTtmb3IoMD09PWUuYXJyYXlbMF1bMF0mJmUuYXJyYXlbMF1bMV0+OTAwNzE5OTI1NDc0MDk5MSYmKGUuYXJyYXkubGVuZ3RoPj0yJiYxPT1lLmFycmF5WzFdWzBdP2UuYXJyYXlbMV1bMV0rKzplLmFycmF5LnNwbGljZSgxLDAsWzEsMV0pLGUuYXJyYXlbMF1bMV09TWF0aC5sb2cxMChlLmFycmF5WzBdWzFdKSxBPSEwKTtlLmFycmF5Lmxlbmd0aD49MiYmMD09PWUuYXJyYXlbMF1bMF0mJmUuYXJyYXlbMF1bMV08YSYmMT09ZS5hcnJheVsxXVswXSYmZS5hcnJheVsxXVsxXTspZS5hcnJheVswXVsxXT1NYXRoLnBvdygxMCxlLmFycmF5WzBdWzFdKSxlLmFycmF5WzFdWzFdPjE/ZS5hcnJheVsxXVsxXS0tOmUuYXJyYXkuc3BsaWNlKDEsMSksQT0hMDtmb3IoO2UuYXJyYXkubGVuZ3RoPj0yJiYwPT09ZS5hcnJheVswXVswXSYmMT09ZS5hcnJheVswXVsxXSYmZS5hcnJheVsxXVsxXTspZS5hcnJheVsxXVsxXT4xP2UuYXJyYXlbMV1bMV0tLTplLmFycmF5LnNwbGljZSgxLDEpLGUuYXJyYXlbMF1bMV09MTA7aWYoZS5hcnJheS5sZW5ndGg+PTImJjA9PT1lLmFycmF5WzBdWzBdJiYxIT1lLmFycmF5WzFdWzBdKXt2YXIgaT0xO01hdGguZmxvb3IoZS5hcnJheVswXVsxXSkmJihlLmFycmF5LnNwbGljZSgxLDAsW2UuYXJyYXlbMV1bMF0tMSxNYXRoLmZsb29yKGUuYXJyYXlbMF1bMV0pXSksaSsrKSxlLmFycmF5WzBdWzFdPU1hdGgucG93KDEwLGUuYXJyYXlbMF1bMV0tTWF0aC5mbG9vcihlLmFycmF5WzBdWzFdKSksZS5hcnJheVtpXVsxXT4xP2UuYXJyYXlbaV1bMV0tLTplLmFycmF5LnNwbGljZShpLDEpLEE9ITB9Zm9yKHQ9MDt0PGUuYXJyYXkubGVuZ3RoOysrdCllLmFycmF5W3RdWzFdPjkwMDcxOTkyNTQ3NDA5OTEmJih0IT1lLmFycmF5Lmxlbmd0aC0xJiZlLmFycmF5W3QrMV1bMF09PWUuYXJyYXlbdF1bMF0rMT9lLmFycmF5W3QrMV1bMV0rKzplLmFycmF5LnNwbGljZSh0KzEsMCxbZS5hcnJheVt0XVswXSsxLDFdKSxlLmFycmF5LnNwbGljZSgwLHQrMSxbMCxlLmFycmF5W3RdWzFdKzFdKSxBPSEwKX13aGlsZShBKTtyZXR1cm4gZS5hcnJheS5sZW5ndGh8fChlLmFycmF5PVtbMCwwXV0pLGV9O3ZhciBoPSExO0Iuc3RhbmRhcmRpemU9ZnVuY3Rpb24oKXtyZXR1cm4gaHx8KGNvbnNvbGUud2FybigiW0V4cGFudGFOdW1FcnJvcl0gJ3N0YW5kYXJkaXplJyBtZXRob2QgaXMgYmVpbmcgZGVwcmVjYXRlZCBpbiBmYXZvciBvZiAnbm9ybWFsaXplJyBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBmdXR1cmUhIiksaD0hMCksdGhpcy5ub3JtYWxpemUoKX0sQi50b051bWJlcj1mdW5jdGlvbigpe3JldHVybi0xPT10aGlzLnNpZ24/LTEqdGhpcy5hYnMoKTp0aGlzLmxheWVyPjB8fHRoaXMuYXJyYXkubGVuZ3RoPj0yJiYodGhpcy5hcnJheVsxXVswXT49Mnx8dGhpcy5hcnJheVsxXVsxXT49Mnx8MT09dGhpcy5hcnJheVsxXVsxXSYmdGhpcy5hcnJheVswXVsxXT5NYXRoLmxvZzEwKE51bWJlci5NQVhfVkFMVUUpKT8xLzA6dGhpcy5hcnJheS5sZW5ndGg+PTImJjE9PXRoaXMuYXJyYXlbMV1bMV0/TWF0aC5wb3coMTAsdGhpcy5hcnJheVswXVsxXSk6dGhpcy5hcnJheVswXVsxXX0sQi50b1N0cmluZz1mdW5jdGlvbigpe2lmKC0xPT10aGlzLnNpZ24pcmV0dXJuIi0iK3RoaXMuYWJzKCk7aWYoaXNOYU4odGhpcy5hcnJheVswXVsxXSkpcmV0dXJuIk5hTiI7aWYoIWlzRmluaXRlKHRoaXMuYXJyYXlbMF1bMV0pKXJldHVybiJJbmZpbml0eSI7dmFyIEE9IiI7aWYodGhpcy5sYXllcj90aGlzLmxheWVyPDM/QSs9IkoiLnJlcGVhdCh0aGlzLmxheWVyKTpBKz0iSl4iK3RoaXMubGF5ZXIrIiAiOkErPSIiLHRoaXMuYXJyYXkubGVuZ3RoPj0zfHwyPT10aGlzLmFycmF5Lmxlbmd0aCYmdGhpcy5hcnJheVsxXVswXT49Milmb3IodmFyIGU9dGhpcy5hcnJheS5sZW5ndGgtMTtlPj0yOy0tZSl7dmFyIHQ9dGhpcy5hcnJheVtlXSxuPXRbMF0+PTU/InsiK3RbMF0rIn0iOiJeIi5yZXBlYXQodFswXSk7dFsxXT4xP0ErPSIoMTAiK24rIileIit0WzFdKyIgIjoxPT10WzFdJiYoQSs9IjEwIituKX12YXIgaT10aGlzLm9wZXJhdG9yKDApLHI9dGhpcy5vcGVyYXRvcigxKTtyZXR1cm4gQSs9cj9yPDM/ImUiLnJlcGVhdChyLTEpK01hdGgucG93KDEwLGktTWF0aC5mbG9vcihpKSkrImUiK01hdGguZmxvb3IoaSk6cjw4PyJlIi5yZXBlYXQocikraToiKDEwXileIityKyIgIitpOlN0cmluZyhpKX07dmFyIHc9ZnVuY3Rpb24oQSxlKXt2YXIgdD1lKzEsbj1NYXRoLmNlaWwoTWF0aC5sb2cxMChNYXRoLmFicyhBKSkpO248MTAwJiYobj0wKTt2YXIgaT1NYXRoLnJvdW5kKEEqTWF0aC5wb3coMTAsdC1uKSkqTWF0aC5wb3coMTAsbi10KTtyZXR1cm4gcGFyc2VGbG9hdChpLnRvRml4ZWQoTWF0aC5tYXgodC1uLDApKSl9O0IudG9TdHJpbmdXaXRoRGVjaW1hbFBsYWNlcz1mdW5jdGlvbihBLGUpe2lmKC0xPT10aGlzLnNpZ24pcmV0dXJuIi0iK3RoaXMuYWJzKCk7aWYoaXNOYU4odGhpcy5hcnJheVswXVsxXSkpcmV0dXJuIk5hTiI7aWYoIWlzRmluaXRlKHRoaXMuYXJyYXlbMF1bMV0pKXJldHVybiJJbmZpbml0eSI7dmFyIHQ9MCxuPSIiLGk9TWF0aC5wb3coMTAsQSk7aWYodGhpcy5sYXllcj90aGlzLmxheWVyPDM/bis9IkoiLnJlcGVhdCh0aGlzLmxheWVyKTpuKz0iSl4iK3RoaXMubGF5ZXIrIiAiOm4rPSIiLHRoaXMuYXJyYXkubGVuZ3RoPj0zfHwyPT10aGlzLmFycmF5Lmxlbmd0aCYmdGhpcy5hcnJheVsxXVswXT49Milmb3IodmFyIHI9dGhpcy5hcnJheS5sZW5ndGgtMTshdCYmcj49MjstLXIpe3ZhciBvPXRoaXMuYXJyYXlbcl0scz1vWzBdLGE9b1sxXTtlJiZhPj1pPygrK3MsdD1hLGE9MSk6ZSYmdGhpcy5hcnJheVtyLTFdWzBdPT1zLTEmJnRoaXMuYXJyYXlbci0xXVsxXT49aSYmKCsrYSx0PXRoaXMuYXJyYXlbci0xXVsxXSk7dmFyIEI9cz49NT8ieyIrcysifSI6Il4iLnJlcGVhdChzKTthPjE/bis9IigxMCIrQisiKV4iK2ErIiAiOjE9PWEmJihuKz0iMTAiK0IpfXZhciBjPXRoaXMub3BlcmF0b3IoMCksZz10aGlzLm9wZXJhdG9yKDEpO3JldHVybiBjPmkmJihjPU1hdGgubG9nMTAoYyksKytnKSxuKz10P3codCxBKTpnP2c8Mz8iZSIucmVwZWF0KGctMSkrdyhNYXRoLnBvdygxMCxjLU1hdGguZmxvb3IoYykpLEEpKyJlIit3KE1hdGguZmxvb3IoYyksQSk6Zzw4PyJlIi5yZXBlYXQoZykrdyhjLEEpOmU/IigxMF4pXiIrdyhnLEEpKyIgIit3KGMsQSk6IigxMF4pXiIrZysiICIrdyhjLEEpOlN0cmluZyh3KGMsQSkpfSxCLnRvRXhwb25lbnRpYWw9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gMT09dGhpcy5hcnJheS5sZW5ndGg/KHRoaXMuc2lnbip0aGlzLmFycmF5WzBdWzFdKS50b0V4cG9uZW50aWFsKEEpOnRoaXMudG9TdHJpbmdXaXRoRGVjaW1hbFBsYWNlcyhBLGUpfSxCLnRvRml4ZWQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gMT09dGhpcy5hcnJheS5sZW5ndGg/KHRoaXMuc2lnbip0aGlzLmFycmF5WzBdWzFdKS50b0ZpeGVkKEEpOnRoaXMudG9TdHJpbmdXaXRoRGVjaW1hbFBsYWNlcyhBLGUpfSxCLnRvUHJlY2lzaW9uPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIDA9PT10aGlzLmFycmF5WzBdWzFdPyh0aGlzLnNpZ24qdGhpcy5hcnJheVswXVsxXSkudG9GaXhlZChBLTEsZSk6MT09dGhpcy5hcnJheS5sZW5ndGgmJnRoaXMuYXJyYXlbMF1bMV08MWUtNj90aGlzLnRvRXhwb25lbnRpYWwoQS0xLGUpOjE9PXRoaXMuYXJyYXkubGVuZ3RoJiZBPk1hdGgubG9nMTAodGhpcy5hcnJheVswXVsxXSk/dGhpcy50b0ZpeGVkKEEtTWF0aC5mbG9vcihNYXRoLmxvZzEwKHRoaXMuYXJyYXlbMF1bMV0pKS0xLGUpOnRoaXMudG9FeHBvbmVudGlhbChBLTEsZSl9LEIudmFsdWVPZj1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvU3RyaW5nKCl9LEIudG9KU09OPWZ1bmN0aW9uKCl7aWYoci5zZXJpYWxpemVNb2RlPT1yLkpTT04pe2Zvcih2YXIgQT1bXSxlPTA7ZTx0aGlzLmFycmF5Lmxlbmd0aDsrK2UpQS5wdXNoKFt0aGlzLmFycmF5W2VdWzBdLHRoaXMuYXJyYXlbZV1bMV1dKTtyZXR1cm57YXJyYXk6QSxsYXllcjp0aGlzLmxheWVyLHNpZ246dGhpcy5zaWdufX1pZihyLnNlcmlhbGl6ZU1vZGU9PXIuU1RSSU5HKXJldHVybiB0aGlzLnRvU3RyaW5nKCl9LEIudG9IeXBlckU9ZnVuY3Rpb24oKXtpZih0aGlzLmxheWVyKXRocm93IEVycm9yKCJbRXhwYW50YU51bUVycm9yXSBTb3JyeSwgYnV0IHRoaXMgcHJvdG90eXBlIGRvZXNuJ3Qgc3VwcG9ydCBjb3JyZWN0IEh5cGVyLUUgbm90YXRpb24gZm9yIG51bWJlcnMgbGFyZ2VyIHRoYW4gMTB7TVNJfTEwIik7aWYoLTE9PXRoaXMuc2lnbilyZXR1cm4iLSIrdGhpcy5hYnMoKS50b0h5cGVyRSgpO2lmKGlzTmFOKHRoaXMuYXJyYXlbMF1bMV0pKXJldHVybiJOYU4iO2lmKCFpc0Zpbml0ZSh0aGlzLmFycmF5WzBdWzFdKSlyZXR1cm4iSW5maW5pdHkiO2lmKHRoaXMubHQoci5NQVhfU0FGRV9JTlRFR0VSKSlyZXR1cm4gU3RyaW5nKHRoaXMuYXJyYXlbMF1bMV0pO2lmKHRoaXMubHQoci5FX01BWF9TQUZFX0lOVEVHRVIpKXJldHVybiJFIit0aGlzLmFycmF5WzBdWzFdO2Zvcih2YXIgQT0iRSIrdGhpcy5vcGVyYXRvcigwKSsiIyIrdGhpcy5vcGVyYXRvcigxKSxlPTEsdD1NYXRoLmNlaWwodGhpcy5nZXRPcGVyYXRvckluZGV4KDIpKTt0PHRoaXMuYXJyYXkubGVuZ3RoOysrdCllKzE8dGhpcy5hcnJheVt0XVswXSYmKEErPSIjMSIucmVwZWF0KHRoaXMuYXJyYXlbdF1bMF0tZS0xKSksZT10aGlzLmFycmF5W3RdWzBdLEErPSIjIisodGhpcy5hcnJheVt0XVsxXSsxKTtyZXR1cm4gQT10aGlzLmxheWVyP3RoaXMubGF5ZXI8Mz8iSiIucmVwZWF0KHRoaXMubGF5ZXIpK0E6IkpeIit0aGlzLmxheWVyKyIgIitBOiIiK0F9LGMuZnJvbU51bWJlcj1mdW5jdGlvbihBKXtpZigibnVtYmVyIiE9dHlwZW9mIEEpdGhyb3cgRXJyb3IobysiRXhwZWN0ZWQgTnVtYmVyIik7dmFyIGU9bmV3IHI7cmV0dXJuIGUuYXJyYXlbMF1bMV09TWF0aC5hYnMoQSksZS5zaWduPUE8MD8tMToxLGUubm9ybWFsaXplKCksZX07dmFyIEM9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUJpZ0ludCg2NCk7QT49QmlnSW50KDEpPDxlOyllKj1CaWdJbnQoMik7Zm9yKHZhciB0PWUvQmlnSW50KDIpO3Q+QmlnSW50KDApOylBPj1CaWdJbnQoMSk8PGU/ZSs9dDplLT10LHQvPUJpZ0ludCgyKTt2YXIgbj1lLUJpZ0ludCg1NCksaT1BPj5uO3JldHVybiBNYXRoLmxvZzEwKE51bWJlcihpKSkrTWF0aC5MT0cxMEUvTWF0aC5MT0cyRSpOdW1iZXIobil9O2MuZnJvbUJpZ0ludD1mdW5jdGlvbihBKXtpZigiYmlnaW50IiE9dHlwZW9mIEEpdGhyb3cgRXJyb3IobysiRXhwZWN0ZWQgQmlnSW50Iik7dmFyIGU9bmV3IHIsdD1BPEJpZ0ludCgwKT8tQTpBO3JldHVybiBlLnNpZ249QTxCaWdJbnQoMCk/LTE6MSx0PD05MDA3MTk5MjU0NzQwOTkxP2UuYXJyYXlbMF1bMV09TnVtYmVyKHQpOmUuYXJyYXk9W1swLEModCldLFsxLDFdXSxlLm5vcm1hbGl6ZSgpLGV9O3ZhciBJPWZ1bmN0aW9uKEEpe3JldHVybiBNYXRoLmxvZzEwKE51bWJlcihBLnN1YnN0cmluZygwLDE3KSkpKyhBLmxlbmd0aC0xNyl9O2Z1bmN0aW9uIE0oQSl7aWYoIUF8fCJvYmplY3QiIT10eXBlb2YgQSl0aHJvdyBFcnJvcigiW0V4cGFudGFOdW1FcnJvcl0gT2JqZWN0IGV4cGVjdGVkIik7dmFyIGUsdCxuLGk9WyJtYXhPcHMiLDEsTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIsInNlcmlhbGl6ZU1vZGUiLDAsMSwiZGVidWciLDAsMl07Zm9yKGU9MDtlPGkubGVuZ3RoO2UrPTMpaWYodm9pZCAwIT09KG49QVt0PWlbZV1dKSl7aWYoIShNYXRoLmZsb29yKG4pPT09biYmbj49aVtlKzFdJiZuPD1pW2UrMl0pKXRocm93IEVycm9yKG8rdCsiOiAiK24pO3RoaXNbdF09bn1yZXR1cm4gdGhpc31jLmZyb21TdHJpbmc9ZnVuY3Rpb24oQSl7aWYoInN0cmluZyIhPXR5cGVvZiBBKXRocm93IEVycm9yKG8rIkV4cGVjdGVkIFN0cmluZyIpO3ZhciBlPSExO2lmKCJzdHJpbmciPT10eXBlb2YgQSYmKCJbIj09QVswXXx8InsiPT1BWzBdKSl0cnl7SlNPTi5wYXJzZShBKX1jYXRjaChBKXt9ZmluYWxseXtlPSEwfWlmKGUpcmV0dXJuIHIuZnJvbUpTT04oQSk7dmFyIHQ9bmV3IHI7aWYodC5hcnJheT1bWzAsMF1dLCFzLnRlc3QoQSkpcmV0dXJuIGNvbnNvbGUud2FybigiW0V4cGFudGFOdW1FcnJvcl0gTWFsZm9ybWVkIGlucHV0OiAiK0EpLHQuYXJyYXk9W1swLE5hTl1dLHQ7dmFyIG49ITE7aWYoIi0iPT1BWzBdfHwiKyI9PUFbMF0pe3ZhciBpPUEuc2VhcmNoKC9bXi1cK10vKTtuPUEuc3Vic3RyaW5nKDAsaSkubWF0Y2goLy0vZykubGVuZ3RoJTI9PTEsQT1BLnN1YnN0cmluZyhpKX1pZigiTmFOIj09QSl0LmFycmF5PVtbMCxOYU5dXTtlbHNlIGlmKCJJbmZpbml0eSI9PUEpdC5hcnJheT1bWzAsMS8wXV07ZWxzZXt2YXIgQixjLGcsRSxRO2ZvcigiSiI9PUFbMF0mJigiXiI9PUFbMV0/KEI9QS5zdWJzdHJpbmcoMikuc2VhcmNoKC9bXjAtOV0vKSsyLHQubGF5ZXI9TnVtYmVyKEEuc3Vic3RyaW5nKDIsQikpLEE9QS5zdWJzdHJpbmcoQisxKSk6KEI9QS5zZWFyY2goL1teSl0vKSx0LmxheWVyPUIsQT1BLnN1YnN0cmluZyhCKSkpO0EmJi9eXCg/MTBbXF5ce10vLnRlc3QoQSk7KXt2YXIgdTsiKCI9PUFbMF0mJihBPUEuc3Vic3RyaW5nKDEpKSwiXiI9PUFbMl0/KHU9Qj1BLnN1YnN0cmluZygyKS5zZWFyY2goL1teXF5dLyksYz1CKzIpOihCPUEuaW5kZXhPZigifSIpLHU9TnVtYmVyKEEuc3Vic3RyaW5nKDMsQikpLGM9QisxKSwiKSI9PShBPUEuc3Vic3RyaW5nKGMpKVswXT8oQj1BLmluZGV4T2YoIiAiKSxnPU51bWJlcihBLnN1YnN0cmluZygyLEIpKSxBPUEuc3Vic3RyaW5nKEIrMSkpOmc9MSwxPT11P3QuYXJyYXkubGVuZ3RoPj0yJiYxPT10LmFycmF5WzFdWzBdP3QuYXJyYXlbMV1bMV0rPWc6dC5hcnJheS5zcGxpY2UoMSwwLFsxLGddKToyPT11PyhCPXQuYXJyYXkubGVuZ3RoPj0yJiYxPT10LmFycmF5WzFdWzBdP3QuYXJyYXlbMV1bMV06MCwoYz10LmFycmF5WzBdWzFdKT49MWUxMCYmKytCLGM+PTEwJiYrK0IsdC5hcnJheVswXVsxXT1CLHQuYXJyYXkubGVuZ3RoPj0yJiYxPT10LmFycmF5WzFdWzBdJiZ0LmFycmF5LnNwbGljZSgxLDEpLEU9dC5nZXRPcGVyYXRvckluZGV4KDIpLE51bWJlci5pc0ludGVnZXIoRSk/dC5hcnJheVtFXVsxXSs9Zzp0LmFycmF5LnNwbGljZShNYXRoLmNlaWwoRSksMCxbMixnXSkpOihCPXQub3BlcmF0b3IodS0xKSwoYz10Lm9wZXJhdG9yKHUtMikpPj0xMCYmKytCLEU9dC5nZXRPcGVyYXRvckluZGV4KHUpLHQuYXJyYXkuc3BsaWNlKDEsTWF0aC5jZWlsKEUpLTEpLHQuYXJyYXlbMF1bMV09QixOdW1iZXIuaXNJbnRlZ2VyKEUpP3QuYXJyYXlbMV1bMV0rPWc6dC5hcnJheS5zcGxpY2UoMSwwLFt1LGddKSl9Zm9yKEI9QS5zcGxpdCgvW0VlXS8pLGM9W3QuYXJyYXlbMF1bMV0sMF0sZz0xLFE9Qi5sZW5ndGgtMTtRPj0wOy0tUSl7Y1swXTxhJiYwPT09Y1sxXT9jWzBdPU1hdGgucG93KDEwLGcqY1swXSk6LTE9PWc/KDA9PT1jWzFdP2NbMF09TWF0aC5wb3coMTAsZypjWzBdKToxPT1jWzFdJiZjWzBdPD1NYXRoLmxvZzEwKE51bWJlci5NQVhfVkFMVUUpP2NbMF09TWF0aC5wb3coMTAsZypNYXRoLnBvdygxMCxjWzBdKSk6Y1swXT0wLGNbMV09MCk6Y1sxXSsrO3ZhciBsPUJbUV0uaW5kZXhPZigiLiIpLGg9LTE9PWw/QltRXS5sZW5ndGg6bDswPT09Y1sxXT9oPj0xNz8oY1swXT1NYXRoLmxvZzEwKGNbMF0pK0koQltRXS5zdWJzdHJpbmcoMCxoKSksY1sxXT0xKTpCW1FdJiYoY1swXSo9TnVtYmVyKEJbUV0pKTooRT1oPj0xNz9JKEJbUV0uc3Vic3RyaW5nKDAsaCkpOkJbUV0/TWF0aC5sb2cxMChOdW1iZXIoQltRXSkpOjAsMT09Y1sxXT9jWzBdKz1FOjI9PWNbMV0mJmNbMF08YStNYXRoLmxvZzEwKEUpJiYoY1swXSs9TWF0aC5sb2cxMCgxK01hdGgucG93KDEwLE1hdGgubG9nMTAoRSktY1swXSkpKSksY1swXTxhJiZjWzFdPyhjWzBdPU1hdGgucG93KDEwLGNbMF0pLGNbMV0tLSk6Y1swXT45MDA3MTk5MjU0NzQwOTkxJiYoY1swXT1NYXRoLmxvZzEwKGNbMF0pLGNbMV0rKyl9dC5hcnJheVswXVsxXT1jWzBdLGNbMV0mJih0LmFycmF5Lmxlbmd0aD49MiYmMT09dC5hcnJheVsxXVswXT90LmFycmF5WzFdWzFdKz1jWzFdOnQuYXJyYXkuc3BsaWNlKDEsMCxbMSxjWzFdXSkpfXJldHVybiBuJiYodC5zaWduKj0tMSksdC5ub3JtYWxpemUoKSx0fSxjLmZyb21BcnJheT1mdW5jdGlvbihBLGUsdCl7dmFyIG4saTtpZighKEEgaW5zdGFuY2VvZiBBcnJheSl8fHZvaWQgMCE9PWUmJiJudW1iZXIiIT10eXBlb2YgZXx8dm9pZCAwIT09dCYmIm51bWJlciIhPXR5cGVvZiB0KWlmKCJudW1iZXIiPT10eXBlb2YgQSYmZSBpbnN0YW5jZW9mIEFycmF5JiYodm9pZCAwPT09dHx8Im51bWJlciI9PXR5cGVvZiB0KSluPWUsaT1BLHR8fDA7ZWxzZXtpZighKCJudW1iZXIiPT10eXBlb2YgQSYmIm51bWJlciI9PXR5cGVvZiBlJiZ0IGluc3RhbmNlb2YgQXJyYXkpKXRocm93IEVycm9yKG8rIkV4cGVjdGVkIGFuIEFycmF5IFthbmQgMSBvciAyIE51bWJlcl0iKTtuPXQsaT1BLGV9ZWxzZSBuPUEsaT1lLHR8fDA7dmFyIHMsYT1uZXcgcjtpZihuLmxlbmd0aClpZigibnVtYmVyIj09dHlwZW9mIG5bMF0pZm9yKGEuYXJyYXk9W10scz0wO3M8bi5sZW5ndGg7cysrKXtpZigibnVtYmVyIiE9dHlwZW9mIG5bc10pdGhyb3cgRXJyb3IobysiRXhwZWN0ZWQgQXJyYXkgb2YgTnVtYmVyIik7YS5hcnJheS5wdXNoKFtzLG5bc11dKX1lbHNle2lmKCEoblswXWluc3RhbmNlb2YgQXJyYXkpKXRocm93IEVycm9yKG8rIkV4cGVjdGVkIEFycmF5IG9mIE51bWJlciBvciBBcnJheSBvZiBwYWlyIG9mIE51bWJlciIpO2ZvcihhLmFycmF5PVtdLHM9MDtzPG4ubGVuZ3RoO3MrKyl7aWYoIShuW3NdaW5zdGFuY2VvZiBBcnJheSl8fCJudW1iZXIiIT10eXBlb2YgbltzXVswXXx8Im51bWJlciIhPXR5cGVvZiBuW3NdWzFdKXRocm93IEVycm9yKG8rIkV4cGVjdGVkIEFycmF5IG9mIHBhaXIgb2YgTnVtYmVyIik7YS5hcnJheS5wdXNoKFtuW3NdWzBdLG5bc11bMV1dKX19ZWxzZSBhLmFycmF5PVtbMCwwXV07cmV0dXJuIGEuc2lnbj1pP051bWJlcihpKToxLGEubm9ybWFsaXplKCksYX0sYy5mcm9tT2JqZWN0PWZ1bmN0aW9uKEEpe2lmKCJvYmplY3QiIT10eXBlb2YgQSlyZXR1cm4gci5aRVJPLmNsb25lKCk7aWYobnVsbD09PUEpcmV0dXJuIHIuWkVSTy5jbG9uZSgpO2lmKEEgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4gci5mcm9tQXJyYXkoQSk7aWYoQSBpbnN0YW5jZW9mIHIpcmV0dXJuIG5ldyByKEEpO2lmKCEoQS5hcnJheSBpbnN0YW5jZW9mIEFycmF5KSl0aHJvdyBFcnJvcihvKyJFeHBlY3RlZCB0aGF0IHByb3BlcnR5ICdhcnJheScgZXhpc3RzIik7aWYodm9pZCAwIT09QS5zaWduJiYibnVtYmVyIiE9dHlwZW9mIEEuc2lnbil0aHJvdyBFcnJvcihvKyJFeHBlY3RlZCB0aGF0IHByb3BlcnR5ICdzaWduJyBpcyBOdW1iZXIiKTtpZih2b2lkIDAhPT1BLmxheWVyJiYibnVtYmVyIiE9dHlwZW9mIEEubGF5ZXIpdGhyb3cgRXJyb3IobysiRXhwZWN0ZWQgdGhhdCBwcm9wZXJ0eSAnbGF5ZXInIGlzIE51bWJlciIpO3JldHVybiByLmZyb21BcnJheShBLmFycmF5LEEuc2lnbixBLmxheWVyKX0sYy5mcm9tSlNPTj1mdW5jdGlvbihBKXtpZigib2JqZWN0Ij09dHlwZW9mIEEpcmV0dXJuIHIuZnJvbU9iamVjdChlKTtpZigic3RyaW5nIiE9dHlwZW9mIEEpdGhyb3cgRXJyb3IobysiRXhwZWN0ZWQgU3RyaW5nIik7dmFyIGUsdDt0cnl7ZT1KU09OLnBhcnNlKEEpfWNhdGNoKEEpe3Rocm93IGU9bnVsbCxBfWZpbmFsbHl7dD1yLmZyb21PYmplY3QoZSl9cmV0dXJuIGU9bnVsbCx0fSxjLmZyb21IeXBlckU9ZnVuY3Rpb24oQSl7aWYoInN0cmluZyIhPXR5cGVvZiBBKXRocm93IEVycm9yKG8rIkV4cGVjdGVkIFN0cmluZyIpO3ZhciBlPW5ldyByO2lmKGUuYXJyYXk9W1swLDBdXSwhL15bLVwrXSooMHxbMS05XVxkKihcLlxkKik/fEluZmluaXR5fE5hTnxFWzEtOV1cZCooXC5cZCopPygjWzEtOV1cZCopKikkLy50ZXN0KEEpKXJldHVybiBjb25zb2xlLndhcm4oIltFeHBhbnRhTnVtRXJyb3JdIE1hbGZvcm1lZCBpbnB1dDogIitBKSxlLmFycmF5PVtbMCxOYU5dXSxlO3ZhciB0PSExO2lmKCItIj09QVswXXx8IisiPT1BWzBdKXt2YXIgbj1BLnNlYXJjaCgvW14tXCtdLyk7dD1BLnN1YnN0cmluZygwLG4pLm1hdGNoKC8tL2cpLmxlbmd0aCUyPT0wLEE9QS5zdWJzdHJpbmcobil9aWYoIk5hTiI9PUEpZS5hcnJheT1bWzAsTmFOXV07ZWxzZSBpZigiSW5maW5pdHkiPT1BKWUuYXJyYXk9W1swLDEvMF1dO2Vsc2UgaWYoIkUiIT1BWzBdKWUuYXJyYXlbMF1bMV09TnVtYmVyKEEpO2Vsc2UgaWYoLTE9PUEuaW5kZXhPZigiIyIpKWUuYXJyYXlbMF1bMV09TnVtYmVyKEEuc3Vic3RyaW5nKDEpKSxlLmFycmF5WzFdPVsxLDFdO2Vsc2UgZm9yKHZhciBpPUEuc3Vic3RyaW5nKDEpLnNwbGl0KCIjIikscz0wO3M8aS5sZW5ndGg7KytzKXt2YXIgYT1OdW1iZXIoaVtzXSk7cz49MiYmLS1hLGUuYXJyYXlbc109W3MsYV19cmV0dXJuIHQmJihlLnNpZ24qPS0xKSxlLm5vcm1hbGl6ZSgpLGV9LEIuZ2V0T3BlcmF0b3JJbmRleD1mdW5jdGlvbihBKXtpZigibnVtYmVyIiE9dHlwZW9mIEEmJihBPU51bWJlcihBKSksIWlzRmluaXRlKEEpKXRocm93IEVycm9yKG8rIkluZGV4IG91dCBvZiByYW5nZS4iKTt2YXIgZT10aGlzLmFycmF5LHQ9MCxuPWUubGVuZ3RoLTE7aWYoZVtuXVswXTxBKXJldHVybiBuKy41O2lmKGVbdF1bMF0+QSlyZXR1cm4tLjU7Zm9yKDt0IT1uOyl7aWYoZVt0XVswXT09QSlyZXR1cm4gdDtpZihlW25dWzBdPT1BKXJldHVybiBuO3ZhciBpPU1hdGguZmxvb3IoKHQrbikvMik7aWYodD09aXx8ZVtpXVswXT09QSl7dD1pO2JyZWFrfWVbaV1bMF08QSYmKHQ9aSksZVtpXVswXT5BJiYobj1pKX1yZXR1cm4gZVt0XVswXT09QT90OnQrLjV9LEIuZ2V0T3BlcmF0b3I9ZnVuY3Rpb24oQSl7aWYoIm51bWJlciIhPXR5cGVvZiBBJiYoQT1OdW1iZXIoQSkpLCFpc0Zpbml0ZShBKSl0aHJvdyBFcnJvcihvKyJJbmRleCBvdXQgb2YgcmFuZ2UuIik7dmFyIGU9dGhpcy5nZXRPcGVyYXRvckluZGV4KEEpO3JldHVybiBOdW1iZXIuaXNJbnRlZ2VyKGUpP3RoaXMuYXJyYXlbZV1bMV06MD09PUE/MTA6MH0sQi5zZXRPcGVyYXRvcj1mdW5jdGlvbihBLGUpe2lmKCJudW1iZXIiIT10eXBlb2YgQSYmKEE9TnVtYmVyKEEpKSwhaXNGaW5pdGUoQSkpdGhyb3cgRXJyb3IobysiSW5kZXggb3V0IG9mIHJhbmdlLiIpO3ZhciB0PXRoaXMuZ2V0T3BlcmF0b3JJbmRleChBKTtOdW1iZXIuaXNJbnRlZ2VyKHQpP3RoaXMuYXJyYXlbdF1bMV09ZToodD1NYXRoLmNlaWwodCksdGhpcy5hcnJheS5zcGxpY2UodCwwLFtBLGVdKSksdGhpcy5ub3JtYWxpemUoKX0sQi5vcGVyYXRvcj1mdW5jdGlvbihBLGUpe2lmKHZvaWQgMD09PWUpcmV0dXJuIHRoaXMuZ2V0T3BlcmF0b3IoQSk7dGhpcy5zZXRPcGVyYXRvcihBLGUpfSxCLmNsb25lPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPW5ldyByLGU9W10sdD0wO3Q8dGhpcy5hcnJheS5sZW5ndGg7Kyt0KWUucHVzaChbdGhpcy5hcnJheVt0XVswXSx0aGlzLmFycmF5W3RdWzFdXSk7cmV0dXJuIEEuYXJyYXk9ZSxBLnNpZ249dGhpcy5zaWduLEEubGF5ZXI9dGhpcy5sYXllcixBfSwocj1mdW5jdGlvbihBKXtmb3IodmFyIGUgaW4gZylnLmhhc093blByb3BlcnR5KGUpJiYoT2JqZWN0LmRlZmluZVByb3BlcnR5P09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse2NvbmZpZ3VyYWJsZTohMSxlbnVtZXJhYmxlOiEwLHdyaXRhYmxlOiExLHZhbHVlOm5ldyByKGdbZV0pfSk6QVtlXT1uZXcgcihnW2VdKSk7cmV0dXJuIEF9KHI9ZnVuY3Rpb24gQShlKXt2YXIgdCxuLGk7ZnVuY3Rpb24gcihBLGUpe3ZhciB0PXRoaXM7aWYoISh0IGluc3RhbmNlb2YgcikpcmV0dXJuIG5ldyByKEEsZSk7dC5jb25zdHJ1Y3Rvcj1yO3ZhciBuLGksbyxzPW51bGw7aWYoInN0cmluZyI9PXR5cGVvZiBBJiYoIlsiPT1BWzBdfHwieyI9PUFbMF0pKXRyeXtzPUpTT04ucGFyc2UoQSl9Y2F0Y2goQSl7fWlmKCJudW1iZXIiIT10eXBlb2YgQXx8ZSBpbnN0YW5jZW9mIEFycmF5KWlmKCJiaWdpbnQiPT10eXBlb2YgQSluPXIuZnJvbUJpZ0ludChBKTtlbHNlIGlmKHMpbj1yLmZyb21PYmplY3Qocyk7ZWxzZSBpZigic3RyaW5nIj09dHlwZW9mIEEmJiJFIj09QVswXSluPXIuZnJvbUh5cGVyRShBKTtlbHNlIGlmKCJzdHJpbmciPT10eXBlb2YgQSluPXIuZnJvbVN0cmluZyhBKTtlbHNlIGlmKEEgaW5zdGFuY2VvZiBBcnJheXx8ZSBpbnN0YW5jZW9mIEFycmF5KW49ci5mcm9tQXJyYXkoQSxlKTtlbHNlIGlmKEEgaW5zdGFuY2VvZiByKXtuPVtdO2Zvcih2YXIgYT0wO2E8QS5hcnJheS5sZW5ndGg7KythKW4ucHVzaChbQS5hcnJheVthXVswXSxBLmFycmF5W2FdWzFdXSk7aT1BLnNpZ24sbz1BLmxheWVyfWVsc2Uib2JqZWN0Ij09dHlwZW9mIEE/bj1yLmZyb21PYmplY3QoQSk6KG49W1swLE5hTl1dLGk9MSxvPTApO2Vsc2Ugbj1yLmZyb21OdW1iZXIoQSk7cmV0dXJuIHZvaWQgMD09PWk/KHQuYXJyYXk9bi5hcnJheSx0LnNpZ249bi5zaWduLHQubGF5ZXI9bi5sYXllcik6KHQuYXJyYXk9bix0LnNpZ249aSx0LmxheWVyPW8pLHR9Zm9yKHZhciBvIGluIHIucHJvdG90eXBlPUIsci5KU09OPTAsci5TVFJJTkc9MSxyLk5PTkU9MCxyLk5PUk1BTD0xLHIuQUxMPTIsci5jbG9uZT1BLHIuY29uZmlnPXIuc2V0PU0sYyljLmhhc093blByb3BlcnR5KG8pJiYocltvXT1jW29dKTtpZih2b2lkIDA9PT1lJiYoZT17fSksZSlmb3IoaT1bIm1heE9wcyIsInNlcmlhbGl6ZU1vZGUiLCJkZWJ1ZyJdLHQ9MDt0PGkubGVuZ3RoOyllLmhhc093blByb3BlcnR5KG49aVt0KytdKXx8KGVbbl09dGhpc1tuXSk7cmV0dXJuIHIuY29uZmlnKGUpLHJ9KHIpKSkuZGVmYXVsdD1yLkV4cGFudGFOdW09cix2b2lkIDA9PT0obj1mdW5jdGlvbigpe3JldHVybiByfS5jYWxsKGUsdCxlLEEpKXx8KEEuZXhwb3J0cz1uKX0oKX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCgxKSxzPSh0KDEwKSx0KDMpKSxhPXQoMik7ZnVuY3Rpb24gQihBKXtyZXR1cm4gQT49MWU2P0EudG9FeHBvbmVudGlhbCg0KTooQT1NYXRoLmZsb29yKDFlMypBKS8xZTMpLnRvRml4ZWQoTWF0aC5taW4oMSwoU3RyaW5nKEEpLnNwbGl0KCIuIilbMV18fCIiKS5sZW5ndGgpKX1mdW5jdGlvbiBjKEEpe2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtyZXR1cm4gZS5pbm5lckhUTUw9QSxlLnN0eWxlLmRpc3BsYXk9ImhpZGRlbiIsZS5zdHlsZS53aGl0ZVNwYWNlPSJub3dyYXAiLGUuc3R5bGUud2lkdGg9IjEwMCUiLGUuc3R5bGUudGV4dEFsaWduPSJjZW50ZXIiLGV9Y2xhc3MgZ3tzZXRIdWUoQSl7dGhpcy5oPUElMzYwLHRoaXMuaDwwJiYodGhpcy5oPTM2MCt0aGlzLmgpfXNldFNhdHVyYXRpb24oQSl7dGhpcy5zPU1hdGgubWF4KDAsTWF0aC5taW4oQSwxKSl9c2V0VmFsdWUoQSl7dGhpcy52PU1hdGgubWF4KDAsTWF0aC5taW4oQSwxKSl9Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06MCxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjA7cih0aGlzLCJjdXN0b21JZCIsImp3Q29sb3IiKSxyKHRoaXMsImgiLDApLHIodGhpcywicyIsMCkscih0aGlzLCJ2IiwwKSxyKHRoaXMsInRvTW9uaXRvckNvbnRlbnQiLCgpPT5jKHRoaXMudG9TdHJpbmcoKSkpLHRoaXMuc2V0SHVlKEEpLHRoaXMuc2V0U2F0dXJhdGlvbihlKSx0aGlzLnNldFZhbHVlKHQpfXN0YXRpYyB0b0NvbG9yKEEpe3JldHVybiBBIGluc3RhbmNlb2YgZz9BOk51bWJlcihBKT09QT9nLmZyb21EZWNpbWFsKEEpOiJzdHJpbmciPT10eXBlb2YgQT9nLmZyb21IZXgoQSk6bmV3IGd9c3RhdGljIGZyb21IZXgoQSl7QS5zdGFydHNXaXRoKCIjIikmJihBPUEuc3Vic3RyaW5nKDEpKTt0cnl7aWYoNj09PUEubGVuZ3RofHw4PT09QS5sZW5ndGgpcmV0dXJuIGcuZnJvbURlY2ltYWwoTnVtYmVyKCIweCIuY29uY2F0KEEuc2xpY2UoMCw2KSkpKTtpZigzPT09QS5sZW5ndGh8fDQ9PT1BLmxlbmd0aClyZXR1cm4gZy5mcm9tRGVjaW1hbChOdW1iZXIoIjB4Ii5jb25jYXQoQS5zbGljZSgwLDMpLnNwbGl0KCIiKS5tYXAoQT0+QStBKS5qb2luKCIiKSkpKX1jYXRjaChBKXt9cmV0dXJuIG5ldyBnfXN0YXRpYyBmcm9tUkdCKEEsZSx0KXtBPU1hdGgubWF4KDAsTWF0aC5taW4oQS8yNTUsMSkpLGU9TWF0aC5tYXgoMCxNYXRoLm1pbihlLzI1NSwxKSksdD1NYXRoLm1heCgwLE1hdGgubWluKHQvMjU1LDEpKTtsZXQgbj1NYXRoLm1heChBLGUsdCksaT1uLU1hdGgubWluKEEsZSx0KSxyPWkmJihuPT1BPyhlLXQpL2k6bj09ZT8yKyh0LUEpL2k6NCsoQS1lKS9pKTtyZXR1cm4gbmV3IGcoNjAqKHI8MD9yKzY6ciksbiYmaS9uLG4pfXN0YXRpYyBmcm9tRGVjaW1hbChBKXtjb25zdCBlPUE+PjE2JjI1NSx0PUE+PjgmMjU1LG49MjU1JkE7cmV0dXJuIHRoaXMuZnJvbVJHQihlLHQsbil9andBcnJheUhhbmRsZXIoKXtsZXQgQT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gQS5zdHlsZS53aWR0aD0iMTZweCIsQS5zdHlsZS5oZWlnaHQ9IjE2cHgiLEEuc3R5bGUuYm9yZGVyPSIxcHggc29saWQgYmxhY2siLEEuc3R5bGUuYm9yZGVyUmFkaXVzPSI0cHgiLEEuc3R5bGUuYm94U2l6aW5nPSJib3JkZXItYm94IixBLnN0eWxlLmJhY2tncm91bmRDb2xvcj0iIyIuY29uY2F0KHRoaXMudG9IZXgoKSksQS5zdHlsZS5kaXNwbGF5PSJpbmxpbmUtYmxvY2siLEEuc3R5bGUudmVydGljYWxBbGlnbj0idGV4dC1ib3R0b20iLEEub3V0ZXJIVE1MfXRvU3RyaW5nKCl7cmV0dXJuIFN0cmluZyh0aGlzLnRvRGVjaW1hbCgpKX10b1JlcG9ydGVyQ29udGVudCgpe2xldCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO0Euc3R5bGUuZGlzcGxheT0iZmxleCIsQS5zdHlsZS53aWR0aD0iMjAwcHgiLEEuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiI7bGV0IGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZS5zdHlsZS5kaXNwbGF5PSJmbGV4IixlLnN0eWxlLmZsZXhEaXJlY3Rpb249ImNvbHVtbiIsZS5zdHlsZS5qdXN0aWZ5Q29udGVudD0iY2VudGVyIixlLnN0eWxlLndpZHRoPSIxMDBweCIsZS5hcHBlbmRDaGlsZChjKCI8Yj5IOjwvYj4gIi5jb25jYXQoQihNYXRoLnJvdW5kKHRoaXMuaCkpKSkpLGUuYXBwZW5kQ2hpbGQoYygiPGI+Uzo8L2I+ICIuY29uY2F0KEIoMTAwKnRoaXMucyksIiUiKSkpLGUuYXBwZW5kQ2hpbGQoYygiPGI+Vjo8L2I+ICIuY29uY2F0KEIoMTAwKnRoaXMudiksIiUiKSkpLEEuYXBwZW5kQ2hpbGQoZSk7bGV0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHQuc3R5bGUud2lkdGg9Ijg0cHgiLHQuc3R5bGUuaGVpZ2h0PSI4NHB4Iix0LnN0eWxlLm1hcmdpbj0iOHB4Iix0LnN0eWxlLmJvcmRlcj0iMnB4IHNvbGlkIGJsYWNrIix0LnN0eWxlLmJvcmRlclJhZGl1cz0iOHB4Iix0LnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsdC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3I9IiMiLmNvbmNhdCh0aGlzLnRvSGV4KCkpLEEuYXBwZW5kQ2hpbGQodCksQX10b1JHQigpe3ZhciBBPXRoaXM7bGV0IGU9ZnVuY3Rpb24oZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOihlK0EuaC82MCklNjtyZXR1cm4gQS52LUEudipBLnMqTWF0aC5tYXgoTWF0aC5taW4odCw0LXQsMSksMCl9O3JldHVybltNYXRoLnJvdW5kKDI1NSplKDUpKSxNYXRoLnJvdW5kKDI1NSplKDMpKSxNYXRoLnJvdW5kKDI1NSplKDEpKV19dG9EZWNpbWFsKCl7bGV0W0EsZSx0XT10aGlzLnRvUkdCKCk7cmV0dXJuIDY1NTM2KkErMjU2KmUrMSp0fXRvSGV4KCl7cmV0dXJuIHRoaXMudG9EZWNpbWFsKCkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDYsIjAiKX10b0pTT04oKXtyZXR1cm57aHVlOnRoaXMuaCxzYXR1cmF0aW9uOnRoaXMucyx2YWx1ZTp0aGlzLnZ9fX1jb25zdCBFPXtUeXBlOmcsQmxvY2s6e2Jsb2NrVHlwZTpvLlJFUE9SVEVSLGZvcmNlT3V0cHV0VHlwZToiQ29sb3IiLGRpc2FibGVNb25pdG9yOiEwfSxBcmd1bWVudDp7dHlwZTpzLkNPTE9SLGRlZmF1bHRWYWx1ZToiI2ZmN2FhYiJ9fTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXt2bS5qd0NvbG9yPUUsdm0ucnVudGltZS5yZWdpc3RlclNlcmlhbGl6ZXIoImp3Q29sb3IiLEE9PltBLmgsQS5zLEEudl0sQT0+bmV3IEUuVHlwZSguLi5BKSl9Z2V0SW5mbygpe3JldHVybntpZDoiandDb2xvciIsbmFtZToiQ29sb3IiLGNvbG9yMToiI2YwNGE4NyIsbWVudUljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeU1DSStDaUFnUEdWc2JHbHdjMlVnYzNSNWJHVTlJbVpwYkd3NklISm5ZaWd5TkRBc0lEYzBMQ0F4TXpVcE95QnpkSEp2YTJVNklISm5ZaWd5TVRZc0lEWTJMQ0F4TWpJcE95QnpkSEp2YTJVdGQybGtkR2c2SURKd2VEc2djR0ZwYm5RdGIzSmtaWEk2SUhOMGNtOXJaVHNpSUdONFBTSXhNQ0lnWTNrOUlqRXdJaUJ5ZUQwaU9TSWdjbms5SWpraVBqd3ZaV3hzYVhCelpUNEtJQ0E4Y0dGMGFDQjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlHUTlJazBnTVRJdU1UWXlJREV4TGpBeE5TQkRJREV4TGpNMU9DQXhNUzQ0TVRrZ01UQXVOelkxSURFeUxqSXpNeUF4TUM0eU9Ua2dNVEl1TXpreElFTWdNVEF1TVRZeUlERXhMamsyT0NBNUxqa3lPU0F4TVM0MU56WWdPUzQyTURFZ01URXVNalE0SUVNZ09TNHlOaklnTVRBdU9USWdPQzQ0TnpFZ01UQXVOamczSURndU5EUTNJREV3TGpVek9DQkRJRGd1TmpFM0lERXdMakEzTXlBNUxqQXpJRGt1TkRnZ09TNDRNak1nT0M0Mk9EY2dReUF4TVM0M01qZ2dOaTQzTnpFZ01UVXVNVEUxSURRdU5ETXlJREUxTGpjMk1TQTFMakEzT0NCRElERTJMalF3TnlBMUxqY3lNeUF4TkM0d05qZ2dPUzR4TVNBeE1pNHhOaklnTVRFdU1ERTFJRm9nVFNBNExqWTFJREUwTGpVek9TQkRJRGd1TXpNMUlERTBMamcwTkNBM0xqa3lPU0F4TlNBM0xqVXlNaUF4TlM0d01pQk1JRGN1TlRJeUlERTFMakF6SUV3Z055NDBNakVnTVRVdU1ETWdReUEwTGpZNU9DQXhOUzR4TWpnZ015NDFNRGtnTVRJdU1EUTJJRFF1TkRRMElERXlMak0yT1NCRElEVXVOamN6SURFeUxqYzVNaUEyTGpFM01pQXhNaTR4T0RNZ05pNHhPVEVnTVRJdU1UWXpJRU1nTmk0NE56SWdNVEV1TlRFMklEY3VPVFk1SURFeExqVXhOaUE0TGpZMUlERXlMakUyTXlCRElEa3VNek14SURFeUxqZ3lNU0E1TGpNek1TQXhNeTQ0T1RJZ09DNDJOU0F4TkM0MU16a2dXaUlnYVdROUltSjFjbk5vTFdsamIyNGlJSE4wZVd4bFBTSm1hV3hzT2lCeVoySW9NalUxTENBeU5UVXNJREkxTlNrN0lqNDhMM0JoZEdnK0Nqd3ZjM1puUGc9PSIsYmxvY2tzOltpKHtvcGNvZGU6Im5ld0NvbG9yIix0ZXh0OiJuZXcgY29sb3IgW0NPTE9SXSIsYXJndW1lbnRzOntDT0xPUjpFLkFyZ3VtZW50fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJmcm9tUkdCIix0ZXh0OiJmcm9tIFJHQiBbUl0gW0ddIFtCXSIsYXJndW1lbnRzOntSOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZToyNTV9LEc6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjEyMn0sQjp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6MTcxfX19LEUuQmxvY2spLGkoe29wY29kZToiZnJvbUhTViIsdGV4dDoiZnJvbSBIU1YgW0hdIFtTXSBbVl0iLGFyZ3VtZW50czp7SDp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6MzM4fSxTOnt0eXBlOnMuTlVNQkVSLGRlZmF1bHRWYWx1ZTouNTJ9LFY6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjF9fX0sRS5CbG9jayksaSh7b3Bjb2RlOiJmcm9tSGV4Iix0ZXh0OiJmcm9tIGhleCBbSEVYXSIsYXJndW1lbnRzOntIRVg6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJmZjdhYWIifX19LEUuQmxvY2spLCItLS0iLGkoe29wY29kZToiYWRkIix0ZXh0OiJbQV0gKyBbQl0iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLGkoe29wY29kZToic3ViIix0ZXh0OiJbQV0gLSBbQl0iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLGkoe29wY29kZToibXVsIix0ZXh0OiJbQV0gKiBbQl0iLGFyZ3VtZW50czp7QTpFLkFyZ3VtZW50LEI6RS5Bcmd1bWVudH19LEUuQmxvY2spLGkoe29wY29kZToiaW50ZXJwb2xhdGUiLHRleHQ6ImludGVycG9sYXRlIFtBXSB0byBbQl0gYnkgW0ldIHVzaW5nIFtPUFRJT05dIixhcmd1bWVudHM6e0E6RS5Bcmd1bWVudCxCOkUuQXJndW1lbnQsSTp7dHlwZTpzLk5VTUJFUixkZWZhdWx0VmFsdWU6LjV9LE9QVElPTjp7bWVudToiaW50ZXJwb2xhdGVPcHRpb24ifX19LEUuQmxvY2spLCItLS0iLHtvcGNvZGU6ImdldCIsdGV4dDoiZ2V0IFtPUFRJT05dIFtDT0xPUl0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7Q09MT1I6RS5Bcmd1bWVudCxPUFRJT046e21lbnU6InByb3BPcHRpb24ifX19LGkoe29wY29kZToic2V0Iix0ZXh0OiJzZXQgW09QVElPTl0gW0NPTE9SXSB0byBbVkFMVUVdIixhcmd1bWVudHM6e0NPTE9SOkUuQXJndW1lbnQsVkFMVUU6e3R5cGU6cy5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LE9QVElPTjp7bWVudToicHJvcE9wdGlvbiJ9fX0sRS5CbG9jayksIi0tLSIse29wY29kZToidG9EZWNpbWFsIix0ZXh0OiJbQ09MT1JdIHRvIGRlY2ltYWwiLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7Q09MT1I6RS5Bcmd1bWVudH19LHtvcGNvZGU6InRvSGV4Iix0ZXh0OiJbQ09MT1JdIHRvIGhleGFkZWNpbWFsIixibG9ja1R5cGU6by5SRVBPUlRFUixhcmd1bWVudHM6e0NPTE9SOkUuQXJndW1lbnR9fV0sbWVudXM6e2ludGVycG9sYXRlT3B0aW9uOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJSR0IiLCJIU1YiXX0scHJvcE9wdGlvbjp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsicmVkIiwiZ3JlZW4iLCJibHVlIiwiaHVlIiwic2F0dXJhdGlvbiIsInZhbHVlIl19fX19bmV3Q29sb3IoQSl7bGV0e0NPTE9SOmV9PUE7cmV0dXJuIEUuVHlwZS50b0NvbG9yKGUpfWZyb21SR0IoQSl7bGV0e1I6ZSxHOnQsQjpufT1BO3JldHVybiBlPWEudG9OdW1iZXIoZSksdD1hLnRvTnVtYmVyKHQpLG49YS50b051bWJlcihuKSxFLlR5cGUuZnJvbVJHQihlLHQsbil9ZnJvbUhTVihBKXtsZXR7SDplLFM6dCxWOm59PUE7cmV0dXJuIGU9YS50b051bWJlcihlKSx0PWEudG9OdW1iZXIodCksbj1hLnRvTnVtYmVyKG4pLG5ldyBFLlR5cGUoZSx0LG4pfWZyb21IZXgoQSl7bGV0e0hFWDplfT1BO3JldHVybiBlPWEudG9TdHJpbmcoZSksRS5UeXBlLmZyb21IZXgoZSl9YWRkKEEpe2xldHtBOmUsQjp0fT1BO3JldHVybiBlPUUuVHlwZS50b0NvbG9yKGUpLnRvUkdCKCksdD1FLlR5cGUudG9Db2xvcih0KS50b1JHQigpLEUuVHlwZS5mcm9tUkdCKE1hdGgubWluKDI1NSxlWzBdK3RbMF0pLE1hdGgubWluKDI1NSxlWzFdK3RbMV0pLE1hdGgubWluKDI1NSxlWzJdK3RbMl0pKX1zdWIoQSl7bGV0e0E6ZSxCOnR9PUE7cmV0dXJuIGU9RS5UeXBlLnRvQ29sb3IoZSkudG9SR0IoKSx0PUUuVHlwZS50b0NvbG9yKHQpLnRvUkdCKCksRS5UeXBlLmZyb21SR0IoZVswXS10WzBdLGVbMV0tdFsxXSxlWzJdLXRbMl0pfW11bChBKXtsZXR7QTplLEI6dH09QTtyZXR1cm4gZT1FLlR5cGUudG9Db2xvcihlKS50b1JHQigpLHQ9RS5UeXBlLnRvQ29sb3IodCkudG9SR0IoKSxFLlR5cGUuZnJvbVJHQihlWzBdKnRbMF0vMjU1LGVbMV0qdFsxXS8yNTUsZVsyXSp0WzJdLzI1NSl9aW50ZXJwb2xhdGUoQSl7bGV0e0E6ZSxCOnQsSTpuLE9QVElPTjppfT1BO3N3aXRjaChlPUUuVHlwZS50b0NvbG9yKGUpLHQ9RS5UeXBlLnRvQ29sb3IodCksbj1NYXRoLm1heCgwLE1hdGgubWluKGEudG9OdW1iZXIobiksMSkpLGkpe2Nhc2UiUkdCIjpyZXR1cm4gZT1lLnRvUkdCKCksdD10LnRvUkdCKCksRS5UeXBlLmZyb21SR0IoZVswXSooMS1uKSt0WzBdKm4sZVsxXSooMS1uKSt0WzFdKm4sZVsyXSooMS1uKSt0WzJdKm4pO2Nhc2UiSFNWIjpyZXR1cm4gTWF0aC5hYnMoZS5oLXQuaCk+MTgwP25ldyBFLlR5cGUoZS5oKigxLW4pLSgzNjAtdC5oKSpuLGUucyooMS1uKSt0LnMqbixlLnYqKDEtbikrdC52Km4pOm5ldyBFLlR5cGUoZS5oKigxLW4pK3QuaCpuLGUucyooMS1uKSt0LnMqbixlLnYqKDEtbikrdC52Km4pO2RlZmF1bHQ6cmV0dXJuIG5ldyBFLlR5cGV9fWdldChBKXtsZXR7Q09MT1I6ZSxPUFRJT046dH09QTtzd2l0Y2goZT1FLlR5cGUudG9Db2xvcihlKSx0KXtjYXNlInJlZCI6cmV0dXJuIGUudG9SR0IoKVswXTtjYXNlImdyZWVuIjpyZXR1cm4gZS50b1JHQigpWzFdO2Nhc2UiYmx1ZSI6cmV0dXJuIGUudG9SR0IoKVsyXTtjYXNlImh1ZSI6cmV0dXJuIGUuaDtjYXNlInNhdHVyYXRpb24iOnJldHVybiBlLnM7Y2FzZSJ2YWx1ZSI6cmV0dXJuIGUudjtkZWZhdWx0OnJldHVybiAwfX1zZXQoQSl7bGV0e0NPTE9SOmUsVkFMVUU6dCxPUFRJT046bn09QTtzd2l0Y2goZT1FLlR5cGUudG9Db2xvcihlKSx0PWEudG9OdW1iZXIodCksbil7Y2FzZSJyZWQiOnJldHVybiBFLlR5cGUuZnJvbVJHQih0LGUudG9SR0IoKVsxXSxlLnRvUkdCKClbMl0pO2Nhc2UiZ3JlZW4iOnJldHVybiBFLlR5cGUuZnJvbVJHQihlLnRvUkdCKClbMF0sdCxlLnRvUkdCKClbMl0pO2Nhc2UiYmx1ZSI6cmV0dXJuIEUuVHlwZS5mcm9tUkdCKGUudG9SR0IoKVswXSxlLnRvUkdCKClbMV0sdCk7Y2FzZSJodWUiOnJldHVybiBuZXcgRS5UeXBlKHQsZS5zLGUudik7Y2FzZSJzYXR1cmF0aW9uIjpyZXR1cm4gbmV3IEUuVHlwZShlLmgsdCxlLnYpO2Nhc2UidmFsdWUiOnJldHVybiBuZXcgRS5UeXBlKGUuaCxlLnMsdCl9fXRvRGVjaW1hbChBKXtsZXR7Q09MT1I6ZX09QTtyZXR1cm4gZT1FLlR5cGUudG9Db2xvcihlKSxlLnRvRGVjaW1hbCgpfXRvSGV4KEEpe2xldHtDT0xPUjplfT1BO3JldHVybiBlPUUuVHlwZS50b0NvbG9yKGUpLGUudG9IZXgoKX19fSxmdW5jdGlvbihBLGUsdCl7ZnVuY3Rpb24gbihBLGUpe3ZhciB0PU9iamVjdC5rZXlzKEEpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7ZSYmKG49bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEEsZSkuZW51bWVyYWJsZX0pKSksdC5wdXNoLmFwcGx5KHQsbil9cmV0dXJuIHR9ZnVuY3Rpb24gaShBKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgdD1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9uKE9iamVjdCh0KSwhMCkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7cihBLGUsdFtlXSl9KSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0KSk6bihPYmplY3QodCkpLmZvckVhY2goKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LGUpKX0pKX1yZXR1cm4gQX1mdW5jdGlvbiByKEEsZSx0KXtyZXR1cm4oZT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oZSkpaW4gQT9PYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLHt2YWx1ZTp0LGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6QVtlXT10LEF9Y29uc3Qgbz10KDEpLHM9KHQoMTApLHQoMykpLGE9KHQoMTMpLHQoMikpO2xldCBCPXtUeXBlOmNsYXNze30sQmxvY2s6e30sQXJndW1lbnQ6e319O0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZtLmp3QXJyYXl8fHZtLmV4dGVuc2lvbk1hbmFnZXIubG9hZEV4dGVuc2lvbklkU3luYygiandBcnJheSIpLEI9dm0uandBcnJheX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqd1N0b3JhZ2UiLG5hbWU6IkFzc2V0cyIsY29sb3IxOiIjNmY2ZGYwIixtZW51SWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F5TUNJK0NpQWdQR05wY21Oc1pTQnpkSGxzWlQwaWMzUnliMnRsTFhkcFpIUm9PaUF5T3lCd1lXbHVkQzF2Y21SbGNqb2djM1J5YjJ0bE95QnpkSEp2YTJVNklISm5ZaWc0T0N3Z09EY3NJREU1TWlrN0lHWnBiR3c2SUhKbllpZ3hNVEVzSURFd09Td2dNalF3S1RzaUlHTjRQU0l4TUNJZ1kzazlJakV3SWlCeVBTSTVJajQ4TDJOcGNtTnNaVDRLSUNBOGNHRjBhQ0JrUFNKTklEWXVPVEEySURNdU9ERXpJRU1nTmk0d05UTWdNeTQ0TVRNZ05TNHpOaUEwTGpVd05pQTFMak0ySURVdU16WWdUQ0ExTGpNMklERTBMalkwSUVNZ05TNHpOaUF4TlM0ME9UUWdOaTR3TlRNZ01UWXVNVGczSURZdU9UQTJJREUyTGpFNE55Qk1JREV6TGpBNU5DQXhOaTR4T0RjZ1F5QXhNeTQ1TkRjZ01UWXVNVGczSURFMExqWTBJREUxTGpRNU5DQXhOQzQyTkNBeE5DNDJOQ0JNSURFMExqWTBJRGt1TWpJM0lFTWdNVFF1TmpRZ09DNDNNVElnTVRRdU16Z3lJRGd1TVRrMUlERXpMamcyTnlBM0xqWTRJRXdnTVRBdU56Y3pJRFF1TlRnMklFTWdNVEF1TWpVNElEUXVNRGN4SURrdU56UXlJRE11T0RFeklEa3VNakkzSURNdU9ERXpJRXdnTmk0NU1EWWdNeTQ0TVRNZ1dpQk5JRGd1TkRVeklEWXVNVE16SUVNZ09DNDBOVE1nTlM0eE1ERWdPQzQ1TmpnZ05TNHhNREVnTVRBZ05pNHhNek1nVENBeE1pNHpNaUE0TGpRMU15QkRJREV6TGpNMU1pQTVMalE0TlNBeE15NHpOVElnTVRBZ01USXVNeklnTVRBZ1RDQXhNQ0F4TUNCRElEa3VNVFEySURFd0lEZ3VORFV6SURrdU16QTNJRGd1TkRVeklEZ3VORFV6SUV3Z09DNDBOVE1nTmk0eE16TWdXaUlnWm1sc2JEMGlJMlptWmlJZ2MzUjViR1U5SW5OMGNtOXJaUzEzYVdSMGFEb2dNVHNpUGp3dmNHRjBhRDRLUEM5emRtYysiLGJsb2Nrczpbe29wY29kZToiZ2V0RmlsZSIsdGV4dDoiZ2V0IGZpbGUgW05BTUVdIGFzIFtUWVBFXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntOQU1FOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZmlsZS50eHQifSxUWVBFOnttZW51OiJmaWxlRXhwb3J0VHlwZSIsZGVmYXVsdFZhbHVlOiJ0ZXh0In19fSx7b3Bjb2RlOiJmaWxlRXhpc3RzIix0ZXh0OiJmaWxlL2RpcmVjdG9yeSBbTkFNRV0gZXhpc3RzPyIsYmxvY2tUeXBlOm8uQk9PTEVBTixhcmd1bWVudHM6e05BTUU6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJmaWxlLnR4dCJ9fX0sIi0tLSIsaSh7b3Bjb2RlOiJnZXRBbGxGaWxlcyIsdGV4dDoiZ2V0IGFsbCBmaWxlcyJ9LEIuQmxvY2spLGkoe29wY29kZToiZ2V0QWxsRGlyZWN0b3JpZXMiLHRleHQ6ImdldCBhbGwgZGlyZWN0b3JpZXMifSxCLkJsb2NrKSxpKHtvcGNvZGU6ImdldEZpbGVzSW5Gb2xkZXIiLHRleHQ6ImdldCBmaWxlcyBpbiBkaXJlY3RvcnkgW05BTUVdIixhcmd1bWVudHM6e05BTUU6e3R5cGU6cy5TVFJJTkcsZGVmYXVsdFZhbHVlOiJmb2xkZXIifX19LEIuQmxvY2spLGkoe29wY29kZToiZ2V0U3ViZGlycyIsdGV4dDoiZ2V0IGZvbGRlcnMgaW4gZGlyZWN0b3J5IFtOQU1FXSIsYXJndW1lbnRzOntOQU1FOnt0eXBlOnMuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZm9sZGVyIn19fSxCLkJsb2NrKV0sbWVudXM6e2ZpbGVFeHBvcnRUeXBlOlsidGV4dCIsImJhc2U2NCJdfX19YXN5bmMgZ2V0RmlsZShBKXtsZXR7TkFNRTplLFRZUEU6dH09QTtpZighdm0uX3Byb2plY3RaaXAuZmlsZXNbImV4dHJhQXNzZXRzLyJdKXJldHVybiIiO2U9YS50b1N0cmluZyhlKSx0PWEudG9TdHJpbmcodCk7bGV0IG49dm0uX3Byb2plY3RaaXAuZm9sZGVyKCJleHRyYUFzc2V0cyIpLmZpbGUoZSk7aWYoIW4pcmV0dXJuIiI7c3dpdGNoKHQpe2Nhc2UidGV4dCI6cmV0dXJuIGF3YWl0IG4uYXN5bmMoInRleHQiKTtjYXNlImJhc2U2NCI6cmV0dXJuIGF3YWl0IG4uYXN5bmMoImJhc2U2NCIpO2RlZmF1bHQ6cmV0dXJuIiJ9fWZpbGVFeGlzdHMoQSl7bGV0e05BTUU6ZX09QTtyZXR1cm4gdm0uX3Byb2plY3RaaXAuZmlsZXNbImV4dHJhQXNzZXRzLyJdPyhlPWEudG9TdHJpbmcoZSksZS5lbmRzV2l0aCgiLyIpJiYoZT1lLnN1YnN0cmluZygwLGUubGVuZ3RoLTEpKSwhKCF2bS5fcHJvamVjdFppcC5maWxlc1siZXh0cmFBc3NldHMvIi5jb25jYXQoZSwiLyIpXSYmIXZtLl9wcm9qZWN0WmlwLmZvbGRlcigiZXh0cmFBc3NldHMiKS5maWxlKGUpKSk6IiJ9Z2V0QWxsRmlsZXMoKXtyZXR1cm4gdm0uX3Byb2plY3RaaXAuZmlsZXNbImV4dHJhQXNzZXRzLyJdP25ldyBCLlR5cGUoT2JqZWN0LnZhbHVlcyh2bS5fcHJvamVjdFppcC5maWxlcykuZmlsdGVyKEE9PkEubmFtZS5zdGFydHNXaXRoKCJleHRyYUFzc2V0cy8iKSYmIUEuZGlyKS5tYXAoQT0+QS5uYW1lLnN1YnN0cmluZygxMikpKTpuZXcgQi5UeXBlfWdldEFsbERpcmVjdG9yaWVzKCl7cmV0dXJuIHZtLl9wcm9qZWN0WmlwLmZpbGVzWyJleHRyYUFzc2V0cy8iXT9uZXcgQi5UeXBlKE9iamVjdC52YWx1ZXModm0uX3Byb2plY3RaaXAuZmlsZXMpLmZpbHRlcihBPT5BLm5hbWUuc3RhcnRzV2l0aCgiZXh0cmFBc3NldHMvIikmJkEuZGlyJiYiZXh0cmFBc3NldHMvIiE9PUEubmFtZSkubWFwKEE9PkEubmFtZS5zdWJzdHJpbmcoMTIpKSk6bmV3IEIuVHlwZX1nZXRGaWxlc0luRm9sZGVyKEEpe2xldHtOQU1FOmV9PUE7aWYoIXZtLl9wcm9qZWN0WmlwLmZpbGVzWyJleHRyYUFzc2V0cy8iXSlyZXR1cm4gbmV3IEIuVHlwZTtlPWEudG9TdHJpbmcoZSksZS5lbmRzV2l0aCgiLyIpfHwoZSs9Ii8iKTtsZXQgdD0iLyI9PWU/ImV4dHJhQXNzZXRzLyI6ImV4dHJhQXNzZXRzLyIuY29uY2F0KGUpLG49dC5zcGxpdCgiLyIpLmxlbmd0aDtyZXR1cm4gbmV3IEIuVHlwZShPYmplY3QudmFsdWVzKHZtLl9wcm9qZWN0WmlwLmZpbGVzKS5maWx0ZXIoQT0+QS5uYW1lLnN0YXJ0c1dpdGgodCkmJkEubmFtZS5zcGxpdCgiLyIpLmxlbmd0aD09biYmIUEuZGlyKS5tYXAoQT0+QS5uYW1lLnN1YnN0cmluZygxMikpKX1nZXRTdWJkaXJzKEEpe2xldHtOQU1FOmV9PUE7aWYoIXZtLl9wcm9qZWN0WmlwLmZpbGVzWyJleHRyYUFzc2V0cy8iXSlyZXR1cm4gbmV3IEIuVHlwZTtlPWEudG9TdHJpbmcoZSksZS5lbmRzV2l0aCgiLyIpfHwoZSs9Ii8iKTtsZXQgdD0iLyI9PWU/ImV4dHJhQXNzZXRzLyI6ImV4dHJhQXNzZXRzLyIuY29uY2F0KGUpLG49dC5zcGxpdCgiLyIpLmxlbmd0aDtyZXR1cm4gbmV3IEIuVHlwZShPYmplY3QudmFsdWVzKHZtLl9wcm9qZWN0WmlwLmZpbGVzKS5maWx0ZXIoQT0+QS5uYW1lLnN0YXJ0c1dpdGgodCkmJkEubmFtZS5zcGxpdCgiLyIpLmxlbmd0aD09bisxJiZBLmRpcikubWFwKEE9PkEubmFtZS5zdWJzdHJpbmcoMTIpKSl9fX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCgxKSxzPXQoMTApLGE9dCgzKTt0KDIpO2Z1bmN0aW9uIEIoQSl7bGV0IGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiBlLmlubmVySFRNTD1BLGUuc3R5bGUuZGlzcGxheT0iaGlkZGVuIixlLnN0eWxlLndoaXRlU3BhY2U9Im5vd3JhcCIsZS5zdHlsZS53aWR0aD0iMTAwJSIsZS5zdHlsZS50ZXh0QWxpZ249ImNlbnRlciIsZX1jbGFzcyBje2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOm5ldyBEYXRlKDApO3IodGhpcywiY3VzdG9tSWQiLCJqd0RhdGUiKSxyKHRoaXMsImRhdGUiLG5ldyBEYXRlKDApKSxyKHRoaXMsInRvTW9uaXRvckNvbnRlbnQiLCgpPT5CKHRoaXMudG9TdHJpbmcoKSkpLHRoaXMuZGF0ZT1BfXN0YXRpYyBmcm9tKEEpe3JldHVybiBBIGluc3RhbmNlb2YgYz9uZXcgYyhBLmRhdGUpOkEgaW5zdGFuY2VvZiBEYXRlP25ldyBjKEEpOiJudW1iZXIiPT10eXBlb2YgQXx8TnVtYmVyKEEpPT1BP25ldyBjKG5ldyBEYXRlKE51bWJlcihBKSkpOiJzdHJpbmciPT10eXBlb2YgQT9uZXcgYyhuZXcgRGF0ZShBKSk6bmV3IGN9andBcnJheUhhbmRsZXIoKXtyZXR1cm4gdGhpcy5kYXRlLnRvTG9jYWxlRGF0ZVN0cmluZygpfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuZGF0ZS50b0xvY2FsZVN0cmluZygpfXRvUmVwb3J0ZXJDb250ZW50KCl7bGV0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIEEuc3R5bGUuZGlzcGxheT0iZmxleCIsQS5zdHlsZS5mbGV4RGlyZWN0aW9uPSJjb2x1bW4iLEEuc3R5bGUuanVzdGlmeUNvbnRlbnQ9ImNlbnRlciIsQS5hcHBlbmRDaGlsZChCKHRoaXMuZGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoKSkpLEEuYXBwZW5kQ2hpbGQoQih0aGlzLmRhdGUudG9Mb2NhbGVUaW1lU3RyaW5nKCkpKSxBfX1jb25zdCBnPXtUeXBlOmMsQmxvY2s6e2Jsb2NrVHlwZTpvLlJFUE9SVEVSLGJsb2NrU2hhcGU6cy5USUNLRVQsZm9yY2VPdXRwdXRUeXBlOiJqd0RhdGUiLGRpc2FibGVNb25pdG9yOiEwfSxBcmd1bWVudDp7c2hhcGU6cy5USUNLRVQsY2hlY2s6WyJqd0RhdGUiXX19O0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZtLmp3RGF0ZT1nLHZtLnJ1bnRpbWUucmVnaXN0ZXJTZXJpYWxpemVyKCJqd0RhdGUiLEE9PkEuZGF0ZS52YWx1ZU9mKCksQT0+Zy5UeXBlLmZyb20oQSkpfWdldEluZm8oKXtyZXR1cm57aWQ6Imp3RGF0ZSIsbmFtZToiRGF0ZXMiLGNvbG9yMToiI2ZmNzg4YSIsYmxvY2tzOltpKHtvcGNvZGU6Im5vdyIsdGV4dDoibm93In0sZy5CbG9jayksaSh7b3Bjb2RlOiJlcG9jaCIsdGV4dDoidW5peCBlcG9jaCJ9LGcuQmxvY2spLGkoe29wY29kZToicGFyc2UiLHRleHQ6InBhcnNlIFtJTlBVVF0iLGFyZ3VtZW50czp7SU5QVVQ6e3R5cGU6YS5TdHJpbmcsZGVmYXVsdFZhbHVlOiIxLzEvMTk3MCAwMToyMyIsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITB9fX0sZy5CbG9jayldLG1lbnVzOnt9fX1ub3coKXtyZXR1cm4gZy5UeXBlLmZyb20oRGF0ZS5ub3coKSl9ZXBvY2goKXtyZXR1cm4gZy5UeXBlLmZyb20oMCl9cGFyc2UoQSl7bGV0e0lOUFVUOmV9PUE7cmV0dXJuIGcuVHlwZS5mcm9tKGUpfX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiBpKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP24oT2JqZWN0KHQpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyKEEsZSx0W2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhBLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHQpKTpuKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfWZ1bmN0aW9uIHIoQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBvPXQoMSkscz10KDEwKSxhPXQoMyksQj0odCgxMyksdCgyKSksYz17Y3JlYXRlKEEsZSl7dmFyIHQsbjtudWxsIT09KG49KHQ9QVtBLmxlbmd0aC0xXSlbZV0pJiZ2b2lkIDAhPT1ufHwodFtlXT1udWxsKX0sZGVsZXRlKEEsZSl7Zm9yKGxldCB0PUEubGVuZ3RoLTE7dD49MDt0LS0paWYoZSBpbiBBW3RdKXJldHVybiB2b2lkIGRlbGV0ZSBBW3RdW2VdfSxzZXQoQSxlLHQpe2ZvcihsZXQgbj1BLmxlbmd0aC0xO24+PTA7bi0tKWlmKGUgaW4gQVtuXSlyZXR1cm4gdm9pZChBW25dW2VdPXQpO0FbQS5sZW5ndGgtMV1bZV09dH0sY2hhbmdlKEEsZSx0KXtmb3IobGV0IG49QS5sZW5ndGgtMTtuPj0wO24tLSlpZihlIGluIEFbbl0pcmV0dXJuIHZvaWQoQVtuXVtlXT1CLnRvTnVtYmVyKEFbbl1bZV0pK3QpO0FbQS5sZW5ndGgtMV1bZV09dH0sZ2V0KEEsZSl7Zm9yKGxldCB0PUEubGVuZ3RoLTE7dD49MDt0LS0paWYoZSBpbiBBW3RdKXJldHVybiBBW3RdW2VdO3JldHVybiBudWxsfSxoYXMoQSxlKXtmb3IobGV0IHQ9QS5sZW5ndGgtMTt0Pj0wO3QtLSlpZihlIGluIEFbdF0pcmV0dXJuITA7cmV0dXJuITF9LHJlc2V0KEEpe2ZvcihsZXQgZT1BLmxlbmd0aC0xO2U+PTA7ZS0tKUFbZV09e319LGRlcHRoOkE9PkEubGVuZ3RoLGN1cnJlbnQoQSl7bGV0IGU9bmV3IFNldDtmb3IobGV0IHQ9MDt0PEEubGVuZ3RoO3QrKylPYmplY3Qua2V5cyhBW3RdKS5mb3JFYWNoKEE9PntlLmRlbGV0ZShBKSxlLmFkZChBKX0pO3JldHVybiBuZXcgdm0uandBcnJheS5UeXBlKEFycmF5LmZyb20oZSkpfSxhbGw6QT0+bmV3IHZtLmp3QXJyYXkuVHlwZShBLm1hcChBPT5PYmplY3Qua2V5cyhBKSkuZmlsdGVyKEE9PkEubGVuZ3RoPjApLm1hcChBPT5uZXcgdm0uandBcnJheS5UeXBlKEEpKSl9O0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe2lmKCF2bS5qd1Njb3BlKXtjb25zdCBBPXZtLmV4cG9ydHMuSlNHZW5lcmF0b3IucHJvdG90eXBlLmNvbXBpbGU7dm0uZXhwb3J0cy5KU0dlbmVyYXRvci5wcm90b3R5cGUuY29tcGlsZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnNvdXJjZSs9ImxldCBqd1Njb3BlID0gW107XG4iLEEuY2FsbCh0aGlzKX07Y29uc3QgZT12bS5leHBvcnRzLkpTR2VuZXJhdG9yLnByb3RvdHlwZS5kZXNjZW5kU3RhY2s7dm0uZXhwb3J0cy5KU0dlbmVyYXRvci5wcm90b3R5cGUuZGVzY2VuZFN0YWNrPWZ1bmN0aW9uKEEsdCl7aWYoImNvbnRyb2wuc3dpdGNoIj09dC5wYXJlbnQpcmV0dXJuIGUuY2FsbCh0aGlzLEEsdCk7dGhpcy5zb3VyY2UrPSJ2YXIgandTY29wZVQgPSBbLi4uandTY29wZSwge31dO1xuIix0aGlzLnNvdXJjZSs9IntcbiIsdGhpcy5zb3VyY2UrPSJsZXQgandTY29wZSA9IGp3U2NvcGVUO1xuIjtjb25zdCBuPWUuY2FsbCh0aGlzLEEsdCk7cmV0dXJuIHRoaXMuc291cmNlKz0ifTtcbiIsbn19dm0uandTY29wZT1jLHZtLnJ1bnRpbWUucmVnaXN0ZXJDb21waWxlZEV4dGVuc2lvbkJsb2NrcygiandTY29wZSIsdGhpcy5nZXRDb21waWxlSW5mbygpKX1nZXRJbmZvKCl7cmV0dXJue2lkOiJqd1Njb3BlIixuYW1lOiJTY29wZSIsY29sb3IxOiIjNGY4NWYzIixtZW51SWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F5TUNJK0NpQWdQR1ZzYkdsd2MyVWdjM1I1YkdVOUluTjBjbTlyWlMxc2FXNWxhbTlwYmpvZ2NtOTFibVE3SUhCaGFXNTBMVzl5WkdWeU9pQm1hV3hzT3lCemRISnZhMlU2SUhKbllpZzNNU3dnTVRFNUxDQXlNVGtwT3lCbWFXeHNPaUJ5WjJJb056a3NJREV6TXl3Z01qUXpLVHNpSUdONFBTSXhNQ0lnWTNrOUlqRXdJaUJ5ZUQwaU9TNDFJaUJ5ZVQwaU9TNDFJajQ4TDJWc2JHbHdjMlUrQ2lBZ1BISmxZM1FnYzNSNWJHVTlJbkJoYVc1MExXOXlaR1Z5T2lCemRISnZhMlU3SUdacGJHdzZJRzV2Ym1VN0lITjBjbTlyWlRvZ2NtZGlLREkxTlN3Z01qVTFMQ0F5TlRVcE95QnpkSEp2YTJVdGJHbHVaV3B2YVc0NklISnZkVzVrT3lCemRISnZhMlV0ZDJsa2RHZzZJREp3ZURzaUlIZzlJalVpSUhrOUlqVWlJSGRwWkhSb1BTSXhNQ0lnYUdWcFoyaDBQU0l4TUNJZ2NuZzlJak1pSUhKNVBTSXpJajQ4TDNKbFkzUStDand2YzNablBnPT0iLGRvY3NVUkk6Imh0dHBzOi8vZG9jcy5wZW5ndWlubW9kLmNvbS9leHRlbnNpb25zL2p3U2NvcGUvIixibG9ja3M6W3tvcGNvZGU6InNldCIsYmxvY2tUeXBlOm8uQ09NTUFORCx0ZXh0OiJzZXQgW05BTUVdIHRvIFtWQUxVRV0iLGFyZ3VtZW50czp7TkFNRTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6InZhciJ9LFZBTFVFOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYXBwbGUiLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwfX19LHtvcGNvZGU6ImNoYW5nZSIsYmxvY2tUeXBlOm8uQ09NTUFORCx0ZXh0OiJjaGFuZ2UgW05BTUVdIGJ5IFtWQUxVRV0iLGFyZ3VtZW50czp7TkFNRTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6InZhciJ9LFZBTFVFOnt0eXBlOmEuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9fX0sIi0tLSIse29wY29kZToiZ2V0IixibG9ja1R5cGU6by5SRVBPUlRFUix0ZXh0OiJnZXQgW05BTUVdIixhbGxvd0Ryb3BBbnl3aGVyZTohMCxhcmd1bWVudHM6e05BTUU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ2YXIifX19LHtvcGNvZGU6ImhhcyIsYmxvY2tUeXBlOm8uQk9PTEVBTix0ZXh0OiJpcyBbTkFNRV0gZGVmaW5lZD8iLGFyZ3VtZW50czp7TkFNRTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6InZhciJ9fX0sIi0tLSIse29wY29kZToiY3JlYXRlIixibG9ja1R5cGU6by5DT01NQU5ELHRleHQ6ImluaXQgW05BTUVdIixhcmd1bWVudHM6e05BTUU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ2YXIifX19LHtvcGNvZGU6ImRlbGV0ZSIsYmxvY2tUeXBlOm8uQ09NTUFORCx0ZXh0OiJyZW1vdmUgW05BTUVdIixhcmd1bWVudHM6e05BTUU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ2YXIifX19LHtvcGNvZGU6InJlc2V0IixibG9ja1R5cGU6by5DT01NQU5ELHRleHQ6InJlc2V0IHNjb3BlIn0sIi0tLSIse29wY29kZToiZGVwdGgiLGJsb2NrVHlwZTpvLlJFUE9SVEVSLHRleHQ6ImRlcHRoIG9mIHNjb3BlIixkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIsaSh7b3Bjb2RlOiJjdXJyZW50Iix0ZXh0OiJjdXJyZW50IHNjb3BlIixoaWRlRnJvbVBhbGV0dGU6IXZtLnJ1bnRpbWUuZXh0X2p3QXJyYXksYmxvY2tUeXBlOm8uUkVQT1JURVIsYmxvY2tTaGFwZTpzLlNRVUFSRX0sdm0uandBcnJheT92bS5qd0FycmF5LkJsb2NrOnt9KSxpKHtvcGNvZGU6ImFsbCIsdGV4dDoiYWxsIHNjb3BlcyIsaGlkZUZyb21QYWxldHRlOiF2bS5ydW50aW1lLmV4dF9qd0FycmF5LGJsb2NrVHlwZTpvLlJFUE9SVEVSLGJsb2NrU2hhcGU6cy5TUVVBUkV9LHZtLmp3QXJyYXk/dm0uandBcnJheS5CbG9jazp7fSldfX1nZXRDb21waWxlSW5mbygpe3JldHVybntpcjp7Y3JlYXRlOihBLGUpPT4oe2tpbmQ6InN0YWNrIixuYW1lOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJOQU1FIil9KSxkZWxldGU6KEEsZSk9Pih7a2luZDoic3RhY2siLG5hbWU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIk5BTUUiKX0pLHNldDooQSxlKT0+KHtraW5kOiJzdGFjayIsbmFtZTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiTkFNRSIpLHZhbHVlOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJWQUxVRSIpfSksY2hhbmdlOihBLGUpPT4oe2tpbmQ6InN0YWNrIixuYW1lOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJOQU1FIiksdmFsdWU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlZBTFVFIil9KSxnZXQ6KEEsZSk9Pih7a2luZDoiaW5wdXQiLG5hbWU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIk5BTUUiKX0pLGhhczooQSxlKT0+KHtraW5kOiJpbnB1dCIsbmFtZTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiTkFNRSIpfSkscmVzZXQ6KEEsZSk9Pih7a2luZDoic3RhY2sifSksZGVwdGg6KEEsZSk9Pih7a2luZDoiaW5wdXQifSksY3VycmVudDooQSxlKT0+KHtraW5kOiJpbnB1dCJ9KSxhbGw6KEEsZSk9Pih7a2luZDoiaW5wdXQifSl9LGpzOntjcmVhdGU6KEEsZSx0KT0+e2Uuc291cmNlKz0idm0uandTY29wZS5jcmVhdGUoandTY29wZSwgIi5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS5uYW1lKS5hc1N0cmluZygpLCIpO1xuIil9LGRlbGV0ZTooQSxlLHQpPT57ZS5zb3VyY2UrPSJ2bS5qd1Njb3BlLmRlbGV0ZShqd1Njb3BlLCAiLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLm5hbWUpLmFzU3RyaW5nKCksIik7XG4iKX0sc2V0OihBLGUsdCk9PntlLnNvdXJjZSs9InZtLmp3U2NvcGUuc2V0KGp3U2NvcGUsICIuY29uY2F0KGUuZGVzY2VuZElucHV0KEEubmFtZSkuYXNTdHJpbmcoKSwiLCAiKS5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNVbmtub3duKCksIik7XG4iKX0sY2hhbmdlOihBLGUsdCk9PntlLnNvdXJjZSs9InZtLmp3U2NvcGUuY2hhbmdlKGp3U2NvcGUsICIuY29uY2F0KGUuZGVzY2VuZElucHV0KEEubmFtZSkuYXNTdHJpbmcoKSwiLCAiKS5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS52YWx1ZSkuYXNOdW1iZXIoKSwiKTtcbiIpfSxnZXQ6KEEsZSx0KT0+bmV3IHQuVHlwZWRJbnB1dCgidm0uandTY29wZS5nZXQoandTY29wZSwgIi5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS5uYW1lKS5hc1N0cmluZygpLCIpIiksdC5UWVBFX1VOS05PV04pLGhhczooQSxlLHQpPT5uZXcgdC5UeXBlZElucHV0KCJ2bS5qd1Njb3BlLmhhcyhqd1Njb3BlLCAiLmNvbmNhdChlLmRlc2NlbmRJbnB1dChBLm5hbWUpLmFzU3RyaW5nKCksIikiKSx0LlRZUEVfQk9PTEVBTikscmVzZXQ6KEEsZSx0KT0+e2Uuc291cmNlKz0idm0uandTY29wZS5yZXNldChqd1Njb3BlKTtcbiJ9LGRlcHRoOihBLGUsdCk9Pm5ldyB0LlR5cGVkSW5wdXQoInZtLmp3U2NvcGUuZGVwdGgoandTY29wZSkiLHQuVFlQRV9OVU1CRVIpLGN1cnJlbnQ6KEEsZSx0KT0+bmV3IHQuVHlwZWRJbnB1dCh2bS5qd0FycmF5PyJ2bS5qd1Njb3BlLmN1cnJlbnQoandTY29wZSkiOiIwIix0LlRZUEVfVU5LTk9XTiksYWxsOihBLGUsdCk9Pm5ldyB0LlR5cGVkSW5wdXQodm0uandBcnJheT8idm0uandTY29wZS5hbGwoandTY29wZSkiOiIwIix0LlRZUEVfVU5LTk9XTil9fX1jcmVhdGUoKXtyZXR1cm4ibm9vcCJ9ZGVsZXRlKCl7cmV0dXJuIm5vb3AifXNldCgpe3JldHVybiJub29wIn1nZXQoKXtyZXR1cm4ibm9vcCJ9aGFzKCl7cmV0dXJuIm5vb3AifXJlc2V0KCl7cmV0dXJuIm5vb3AifWRlcHRoKCl7cmV0dXJuIm5vb3AifWN1cnJlbnQoKXtyZXR1cm4ibm9vcCJ9YWxsKCl7cmV0dXJuIm5vb3AifX19LGZ1bmN0aW9uKEEsZSx0KXtmdW5jdGlvbiBuKEEsZSl7dmFyIHQ9T2JqZWN0LmtleXMoQSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhBKTtlJiYobj1uLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoQSxlKS5lbnVtZXJhYmxlfSkpKSx0LnB1c2guYXBwbHkodCxuKX1yZXR1cm4gdH1mdW5jdGlvbiBpKEEpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciB0PW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP24oT2JqZWN0KHQpLCEwKS5mb3JFYWNoKChmdW5jdGlvbihlKXtyKEEsZSx0W2VdKX0pKTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhBLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHQpKTpuKE9iamVjdCh0KSkuZm9yRWFjaCgoZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkpfSkpfXJldHVybiBBfWZ1bmN0aW9uIHIoQSxlLHQpe3JldHVybihlPWZ1bmN0aW9uKEEpe3ZhciBlPWZ1bmN0aW9uKEEsZSl7aWYoIm9iamVjdCIhPXR5cGVvZiBBfHwhQSlyZXR1cm4gQTt2YXIgdD1BW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwIT09dCl7dmFyIG49dC5jYWxsKEEsZXx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9dHlwZW9mIG4pcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX1yZXR1cm4oInN0cmluZyI9PT1lP1N0cmluZzpOdW1iZXIpKEEpfShBLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09dHlwZW9mIGU/ZTplKyIifShlKSlpbiBBP09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3ZhbHVlOnQsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpBW2VdPXQsQX1jb25zdCBvPXQoMSkscz10KDEwKSxhPXQoMyksQj0odCgxMyksdCgyKSksYz10KDM3OCk7ZnVuY3Rpb24gZyhBKXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJUZXh0PUEsZS5zdHlsZS53aWR0aD0iMTAwJSIsZX1jbGFzcyBFe2NvbnN0cnVjdG9yKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpbXSx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTp7fTtyKHRoaXMsImN1c3RvbUlkIiwiandYTUwiKSxyKHRoaXMsImNoaWxkcmVuIix2b2lkIDApLHIodGhpcywiYXR0cmlidXRlcyIsdm9pZCAwKSxyKHRoaXMsIm5hbWUiLHZvaWQgMCkscih0aGlzLCJ0b01vbml0b3JDb250ZW50IiwoKT0+Zyh0aGlzLnRvU3RyaW5nKCkpKSx0aGlzLm5hbWU9RS5zYWZlTmFtZShBKSx0aGlzLmNoaWxkcmVuPWUsdGhpcy5hdHRyaWJ1dGVzPXR9c3RhdGljIHRvWE1MKEEpe2lmKEEgaW5zdGFuY2VvZiBFKXJldHVybiBuZXcgRShBLm5hbWUsWy4uLkEuY2hpbGRyZW5dLGkoe30sQS5hdHRyaWJ1dGVzKSk7aWYobnVsbD09QSlyZXR1cm4gbmV3IEU7bGV0IGU9RS5zdHJpbmdUb011bHRpcGxlKEIudG9TdHJpbmcoQSkpLmZpbHRlcihBPT5BIGluc3RhbmNlb2YgRSk7cmV0dXJuIGUubGVuZ3RoPjA/ZVswXTpuZXcgRSgibm9kZSIsW0IudG9TdHJpbmcoQSldKX1zdGF0aWMgc3RyaW5nVG9NdWx0aXBsZShBKXtsZXQgZT1uZXcgYy5kZWZhdWx0KHtpZ25vcmVBdHRyaWJ1dGVzOiExLGF0dHJpYnV0ZU5hbWVQcmVmaXg6IiIsYWxsb3dCb29sZWFuQXR0cmlidXRlczohMCx0ZXh0Tm9kZU5hbWU6IiN0ZXh0IixwcmVzZXJ2ZU9yZGVyOiEwLGlnbm9yZURlY2xhcmF0aW9uOiEwLGlnbm9yZVBpVGFnczohMH0pLnBhcnNlKCIiLmNvbmNhdChBKSksdD1BPT57bGV0IGU9W107Zm9yKGxldCBuIG9mIEEpe2lmKG5bIiN0ZXh0Il0pe2UucHVzaChuWyIjdGV4dCJdKTtjb250aW51ZX1sZXQgQSxpPXt9O2lmKG5bIjpAIl0pZm9yKGxldFtBLGVdb2YgT2JqZWN0LmVudHJpZXMoblsiOkAiXSkpaVtBXT1CLnRvU3RyaW5nKGUpO2ZvcihsZXQgZSBvZiBPYmplY3Qua2V5cyhuKSlpZigiI3RleHQiIT09ZSYmIjpAIiE9PWUpe0E9ZTticmVha31sZXQgcj10KG5bQV0pO2UucHVzaChuZXcgRShBLHIsaSkpfXJldHVybiBlfTtyZXR1cm4gdChlKX1zdGF0aWMgZm9yWE1MKEEpe3JldHVybiBBIGluc3RhbmNlb2YgRT9BOkIudG9TdHJpbmcoQSl9c3RhdGljIHNhZmVOYW1lKEEpe3JldHVybiBudWxsIT1BfHwoQT0ibm9kZSIpLC9eW0Etel9dW0EtejAtOV9cLTpdKiQvLmV4ZWMoQSk/QToibm9kZSJ9c3RhdGljIHNhZmVUZXh0KEEpe3JldHVybltbIiYiLCImYW1wOyJdLFsiPCIsIiZsdDsiXSxbIj4iLCImZ3Q7Il0sWyciJywiJnF1b3Q7Il0sWyInIiwiJmFwb3M7Il0sWyJcclxuIiwiJiMxMDsiXSxbIlxuIiwiJiMxMDsiXSxbIlx0IiwiJiM5OyJdXS5yZWR1Y2UoKEEsZSk9PkEucmVwbGFjZUFsbChlWzBdLGVbMV0pLEEpfXN0YXRpYyBzYWZlRGlzcGxheVRleHQoQSl7cmV0dXJuWyJcciIsIlxuIiwiXHQiXS5yZWR1Y2UoKEEsZSk9PkEucmVwbGFjZUFsbChlLCIiKSxBKX1qd0FycmF5SGFuZGxlcigpe3JldHVybiBFLnNhZmVUZXh0KCI8Ii5jb25jYXQodGhpcy5uYW1lLCIgLz4iKSl9dG9TdHJpbmcoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXSYmYXJndW1lbnRzWzBdLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsdD0iXHQiLnJlcGVhdChBP2U6MCkrIjwiLmNvbmNhdCh0aGlzLm5hbWUpO2ZvcihsZXRbQSxlXW9mIE9iamVjdC5lbnRyaWVzKHRoaXMuYXR0cmlidXRlcykpdCs9IiAiLmNvbmNhdChBLCc9IicpLmNvbmNhdChFLnNhZmVUZXh0KGUpLCciJyk7aWYoMD09PXRoaXMuY2hpbGRyZW4ubGVuZ3RoKXQrPSIgLz4iO2Vsc2V7dCs9Ij4iKyhBPyJcbiI6IiIpO2ZvcihsZXQgbiBvZiB0aGlzLmNoaWxkcmVuKXQrPShuIGluc3RhbmNlb2YgRT9uLnRvU3RyaW5nKEEsZSsxKToiXHQiLnJlcGVhdChBP2UrMTowKStFLnNhZmVUZXh0KG4pKSsoQT8iXG4iOiIiKTt0Kz0iXHQiLnJlcGVhdChBP2U6MCkrIjwvIi5jb25jYXQodGhpcy5uYW1lLCI+Iil9cmV0dXJuIHR9dG9SZXBvcnRlckNvbnRlbnQoKXtsZXQgQT0iPCIuY29uY2F0KHRoaXMubmFtZSk7Zm9yKGxldFtlLHRdb2YgT2JqZWN0LmVudHJpZXModGhpcy5hdHRyaWJ1dGVzKSlBKz0iICIuY29uY2F0KGUsJz0iJykuY29uY2F0KEUuc2FmZVRleHQodCksJyInKTtpZigwPT09dGhpcy5jaGlsZHJlbi5sZW5ndGgpQSs9IiAvPiI7ZWxzZXtBKz0iPlxuIjtmb3IobGV0IGUgb2YgdGhpcy5jaGlsZHJlbi5zbGljZSgwLDUwKSl7aWYoQSs9Ilx0IixlIGluc3RhbmNlb2YgRSl7QSs9IjwiLmNvbmNhdChlLm5hbWUpO2ZvcihsZXRbdCxuXW9mIE9iamVjdC5lbnRyaWVzKGUuYXR0cmlidXRlcykpQSs9IiAiLmNvbmNhdCh0LCc9IicpLmNvbmNhdChFLnNhZmVUZXh0KG4pLCciJyk7MD09PWUuY2hpbGRyZW4ubGVuZ3RoP0ErPSIgLz4iOkErPSI+Li4uPC8iLmNvbmNhdChlLm5hbWUsIj4iKX1lbHNlIEErPSciJy5jb25jYXQoRS5zYWZlRGlzcGxheVRleHQoZSksJyInKTtBKz0iXG4ifXRoaXMuY2hpbGRyZW4ubGVuZ3RoPjUwJiYoQSs9Ilx0Li4uICgiLmNvbmNhdCh0aGlzLmNoaWxkcmVuLmxlbmd0aC01MCwiIG5vZGVzKVxuIikpLEErPSI8LyIuY29uY2F0KHRoaXMubmFtZSwiPiIpfXJldHVybiBnKEEpfXNlcmlhbGl6ZSgpe3JldHVybntuYW1lOnRoaXMubmFtZSxjaGlsZHJlbjp0aGlzLmNoaWxkcmVuLm1hcChBPT5BIGluc3RhbmNlb2YgRT9BLnNlcmlhbGl6ZSgpOkEpLGF0dHJpYnV0ZXM6dGhpcy5hdHRyaWJ1dGVzfX1zdGF0aWMgZGVzZXJpYWxpemUoQSl7cmV0dXJuIG5ldyBFKEEubmFtZSxBLmNoaWxkcmVuLm1hcChBPT4ib2JqZWN0Ij09dHlwZW9mIEEmJm51bGwhPT1BP0UuZGVzZXJpYWxpemUoQSk6QSksQS5hdHRyaWJ1dGVzKX19bGV0IFE9e1R5cGU6RSxCbG9jazp7YmxvY2tUeXBlOm8uUkVQT1JURVIsYmxvY2tTaGFwZTpzLklOREVOVEVELGZvcmNlT3V0cHV0VHlwZToiandYTUwiLGRpc2FibGVNb25pdG9yOiEwfSxBcmd1bWVudDp7c2hhcGU6cy5JTkRFTlRFRCxjaGVjazpbImp3WE1MIl0sZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITB9LGZ4cDpjfSx1PXtUeXBlOmNsYXNze30sQmxvY2s6e30sQXJndW1lbnQ6e319O0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZtLmp3WE1MPVEsdm0ucnVudGltZS5yZWdpc3RlclNlcmlhbGl6ZXIoImp3WE1MIixBPT5BLnNlcmlhbGl6ZSgpLEE9PlEuVHlwZS5kZXNlcmlhbGl6ZShBKSksdm0uandBcnJheXx8dm0uZXh0ZW5zaW9uTWFuYWdlci5sb2FkRXh0ZW5zaW9uSWRTeW5jKCJqd0FycmF5IiksdT12bS5qd0FycmF5fWdldEluZm8oKXtyZXR1cm57aWQ6Imp3WE1MIixuYW1lOiJYTUwiLGNvbG9yMToiIzhkZDk0MSIsbWVudUljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TUNBeU1DSStDaUFnUEdWc2JHbHdjMlVnYzNSNWJHVTlJbk4wY205clpUb2djbWRpS0RFeE1pd2dNVGN6TENBMU1pazdJR1pwYkd3NklISm5ZaWd4TkRFc0lESXhOeXdnTmpVcE95SWdZM2c5SWpFd0lpQmplVDBpTVRBaUlISjRQU0k1TGpVaUlISjVQU0k1TGpVaVBqd3ZaV3hzYVhCelpUNEtJQ0E4Y0dGMGFDQmtQU0pOSURndU1qZzNJRFl1TWpFMElFd2dOQzQxSURFekxqYzROaUJOSURFeUxqQTNNeUEyTGpJeE5DQk1JREUxTGpnMklERXdJRXdnTVRJdU1EY3pJREV6TGpjNE5pSWdjM1J5YjJ0bFBTSWpabVptSWlCbWFXeHNQU0p1YjI1bElpQnpkSGxzWlQwaWMzUnliMnRsTFd4cGJtVmpZWEE2SUhKdmRXNWtPeUJ6ZEhKdmEyVXRiR2x1WldwdmFXNDZJSEp2ZFc1a095QnpkSEp2YTJVdGQybGtkR2c2SURKd2VEc2lQand2Y0dGMGFENEtQQzl6ZG1jKyIsYmxvY2tzOltpKHtvcGNvZGU6Im5ld05vZGUiLHRleHQ6Im5ldyBub2RlIFtOQU1FXSIsYXJndW1lbnRzOntOQU1FOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToibmFtZSJ9fX0sUS5CbG9jayksaSh7b3Bjb2RlOiJwYXJzZSIsdGV4dDoicGFyc2UgW0lOUFVUXSBhcyBub2RlIixhcmd1bWVudHM6e0lOUFVUOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToiPG5hbWUgLz4iLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwfX19LFEuQmxvY2spLGkoe29wY29kZToicGFyc2VNdWx0aXBsZSIsdGV4dDoicGFyc2UgW0lOUFVUXSBhcyBub2RlcyIsYXJndW1lbnRzOntJTlBVVDp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6IjxvbmUgLz48dHdvIC8+IixleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMH19fSx1LkJsb2NrKSwiLS0tIix7b3Bjb2RlOiJnZXROYW1lIix0ZXh0OiJuYW1lIG9mIFtOT0RFXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntOT0RFOlEuQXJndW1lbnR9fSxpKHtvcGNvZGU6InNldE5hbWUiLHRleHQ6InNldCBuYW1lIG9mIFtOT0RFXSB0byBbTkFNRV0iLGFyZ3VtZW50czp7Tk9ERTpRLkFyZ3VtZW50LE5BTUU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJuYW1lIn19fSxRLkJsb2NrKSwiLS0tIixpKHtvcGNvZGU6ImFwcGVuZENoaWxkIix0ZXh0OiJhcHBlbmQgW0NISUxEXSB0byBbTk9ERV0iLGFyZ3VtZW50czp7Q0hJTEQ6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0ZXh0IC8gbm9kZSIsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITB9LE5PREU6US5Bcmd1bWVudH19LFEuQmxvY2spLGkoe29wY29kZToicmVtb3ZlQ2hpbGRyZW4iLHRleHQ6InJlbW92ZSBjaGlsZHJlbiBvZiBbTk9ERV0iLGFyZ3VtZW50czp7Tk9ERTpRLkFyZ3VtZW50fX0sUS5CbG9jayksaSh7b3Bjb2RlOiJnZXRDaGlsZHJlbiIsdGV4dDoiY2hpbGRyZW4gb2YgW05PREVdIixhcmd1bWVudHM6e05PREU6US5Bcmd1bWVudH19LHUuQmxvY2spLGkoe29wY29kZToic2V0Q2hpbGRyZW4iLHRleHQ6InNldCBjaGlsZHJlbiBvZiBbTk9ERV0gdG8gW0NISUxEUkVOXSIsYXJndW1lbnRzOntOT0RFOlEuQXJndW1lbnQsQ0hJTERSRU46dS5Bcmd1bWVudH19LFEuQmxvY2spLCItLS0iLHtvcGNvZGU6ImdldEF0dHJpYnV0ZSIsdGV4dDoiYXR0cmlidXRlIFtBVFRSSUJVVEVdIG9mIFtOT0RFXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntBVFRSSUJVVEU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJuYW1lIn0sTk9ERTpRLkFyZ3VtZW50fX0saSh7b3Bjb2RlOiJzZXRBdHRyaWJ1dGUiLHRleHQ6InNldCBhdHRyaWJ1dGUgW0FUVFJJQlVURV0gb2YgW05PREVdIHRvIFtWQUxVRV0iLGFyZ3VtZW50czp7QVRUUklCVVRFOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToibmFtZSJ9LE5PREU6US5Bcmd1bWVudCxWQUxVRTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6InZhbHVlIn19fSxRLkJsb2NrKSxpKHtvcGNvZGU6InJlbW92ZUF0dHJpYnV0ZSIsdGV4dDoicmVtb3ZlIGF0dHJpYnV0ZSBbQVRUUklCVVRFXSBvZiBbTk9ERV0iLGFyZ3VtZW50czp7QVRUUklCVVRFOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToibmFtZSJ9LE5PREU6US5Bcmd1bWVudH19LFEuQmxvY2spLGkoe29wY29kZToicmVtb3ZlQXR0cmlidXRlcyIsdGV4dDoicmVtb3ZlIGFsbCBhdHRyaWJ1dGVzIG9mIFtOT0RFXSIsYXJndW1lbnRzOntOT0RFOlEuQXJndW1lbnR9fSxRLkJsb2NrKSx7b3Bjb2RlOiJoYXNBdHRyaWJ1dGUiLHRleHQ6IltOT0RFXSBoYXMgYXR0cmlidXRlIFtBVFRSSUJVVEVdIixibG9ja1R5cGU6by5CT09MRUFOLGFyZ3VtZW50czp7Tk9ERTpRLkFyZ3VtZW50LEFUVFJJQlVURTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6Im5hbWUifX19LGkoe29wY29kZToiZ2V0QXR0cmlidXRlcyIsdGV4dDoiYXR0cmlidXRlcyBvZiBbTk9ERV0iLGFyZ3VtZW50czp7Tk9ERTpRLkFyZ3VtZW50fX0sdS5CbG9jayksIi0tLSIse29wY29kZToidG9TdHJpbmciLHRleHQ6InN0cmluZ2lmeSBbTk9ERV0gW0ZPUk1BVF0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFyZ3VtZW50czp7Tk9ERTpRLkFyZ3VtZW50LEZPUk1BVDp7bWVudToic3RyaW5naWZ5Rm9ybWF0IixkZWZhdWx0VmFsdWU6ImNvbXBhY3QifX19LCItLS0iLHtvcGNvZGU6InZhbGlkTmFtZSIsdGV4dDoiaXMgW05BTUVdIHZhbGlkIG5hbWUiLGJsb2NrVHlwZTpvLkJPT0xFQU4sYXJndW1lbnRzOntOQU1FOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToibmFtZSJ9fX0se29wY29kZToidG9TdHJpbmdTYWZlIix0ZXh0OiJtYWtlIFtURVhUXSBYTUwgc2FmZSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntURVhUOnt0eXBlOmEuU1RSSU5HLGRlZmF1bHRWYWx1ZToiPHVuc2FmZT4ifX19LGkoe29wY29kZToiZmlsdGVyQXJyYXkiLHRleHQ6ImVsZW1lbnRzIG5hbWVkIFtOQU1FXSBpbiBbSU5QVVRdIixibG9ja1R5cGU6by5SRVBPUlRFUixhcmd1bWVudHM6e05BTUU6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJuYW1lIn0sSU5QVVQ6dS5Bcmd1bWVudH19LHUuQmxvY2spXSxtZW51czp7c3RyaW5naWZ5Rm9ybWF0OnthY2NlcHRSZXBvcnRlcnM6ITEsaXRlbXM6WyJjb21wYWN0IiwicHJldHR5Il19fX19bmV3Tm9kZShBKXtsZXR7TkFNRTplfT1BO3JldHVybiBlPUIudG9TdHJpbmcoZSksbmV3IFEuVHlwZShRLlR5cGUuc2FmZU5hbWUoZSkpfXBhcnNlKEEpe2xldHtJTlBVVDplfT1BO3JldHVybiBRLlR5cGUudG9YTUwoZSl9cGFyc2VNdWx0aXBsZShBKXtsZXR7SU5QVVQ6ZX09QTtyZXR1cm4gZSBpbnN0YW5jZW9mIFEuVHlwZT9uZXcgdS5UeXBlKFtlXSwhMCk6ZSBpbnN0YW5jZW9mIHUuVHlwZT9uZXcgdS5UeXBlKGUuYXJyYXkubWFwKEE9PlEuVHlwZS50b1hNTChBKSksITApOm5ldyB1LlR5cGUoUS5UeXBlLnN0cmluZ1RvTXVsdGlwbGUoQi50b1N0cmluZyhlKSksITApfWdldE5hbWUoQSl7bGV0e05PREU6ZX09QTtyZXR1cm4gZT1RLlR5cGUudG9YTUwoZSksZS5uYW1lfXNldE5hbWUoQSl7bGV0e05PREU6ZSxOQU1FOnR9PUE7cmV0dXJuIGU9US5UeXBlLnRvWE1MKGUpLHQ9Qi50b1N0cmluZyh0KSxlLm5hbWU9US5UeXBlLnNhZmVOYW1lKHQpLGV9YXBwZW5kQ2hpbGQoQSl7bGV0e05PREU6ZSxDSElMRDp0fT1BO3JldHVybiBlPVEuVHlwZS50b1hNTChlKSx0PVEuVHlwZS5mb3JYTUwodCksZS5jaGlsZHJlbi5wdXNoKHQpLGV9cmVtb3ZlQ2hpbGRyZW4oQSl7bGV0e05PREU6ZX09QTtyZXR1cm4gZT1RLlR5cGUudG9YTUwoZSksZS5jaGlsZHJlbj1bXSxlfWdldENoaWxkcmVuKEEpe2xldHtOT0RFOmV9PUE7cmV0dXJuIGU9US5UeXBlLnRvWE1MKGUpLG5ldyB1LlR5cGUoZS5jaGlsZHJlbiwhMCl9c2V0Q2hpbGRyZW4oQSl7bGV0e05PREU6ZSxDSElMRFJFTjp0fT1BO3JldHVybiBlPVEuVHlwZS50b1hNTChlKSx0PXUuVHlwZS50b0FycmF5KHQpLmFycmF5Lm1hcChBPT5RLlR5cGUuZm9yWE1MKEEpKSxlLmNoaWxkcmVuPXQsZX1nZXRBdHRyaWJ1dGUoQSl7bGV0e05PREU6ZSxBVFRSSUJVVEU6dH09QTtyZXR1cm4gZT1RLlR5cGUudG9YTUwoZSksdD1CLnRvU3RyaW5nKHQpLHZvaWQgMD09PWUuYXR0cmlidXRlc1t0XT8iIjplLmF0dHJpYnV0ZXNbdF19c2V0QXR0cmlidXRlKEEpe2xldHtOT0RFOmUsQVRUUklCVVRFOnQsVkFMVUU6bn09QTtyZXR1cm4gZT1RLlR5cGUudG9YTUwoZSksdD1CLnRvU3RyaW5nKHQpLG49Qi50b1N0cmluZyhuKSx0aGlzLnZhbGlkTmFtZSh7TkFNRTp0fSkmJihlLmF0dHJpYnV0ZXNbdF09biksZX1yZW1vdmVBdHRyaWJ1dGUoQSl7bGV0e05PREU6ZSxBVFRSSUJVVEU6dH09QTtyZXR1cm4gZT1RLlR5cGUudG9YTUwoZSksdD1CLnRvU3RyaW5nKHQpLGRlbGV0ZSBlLmF0dHJpYnV0ZXNbdF0sZX1yZW1vdmVBdHRyaWJ1dGVzKEEpe2xldHtOT0RFOmV9PUE7cmV0dXJuIGU9US5UeXBlLnRvWE1MKGUpLGUuYXR0cmlidXRlcz17fSxlfWhhc0F0dHJpYnV0ZShBKXtsZXR7Tk9ERTplLEFUVFJJQlVURTp0fT1BO3JldHVybiBlPVEuVHlwZS50b1hNTChlKSx0PUIudG9TdHJpbmcodCksdm9pZCAwIT09ZS5hdHRyaWJ1dGVzW3RdfWdldEF0dHJpYnV0ZXMoQSl7bGV0e05PREU6ZX09QTtyZXR1cm4gZT1RLlR5cGUudG9YTUwoZSksbmV3IHUuVHlwZShPYmplY3Qua2V5cyhlLmF0dHJpYnV0ZXMpLCEwKX10b1N0cmluZyhBKXtsZXR7Tk9ERTplLEZPUk1BVDp0fT1BO3JldHVybiBlPVEuVHlwZS50b1hNTChlKSxlLnRvU3RyaW5nKCJwcmV0dHkiPT09dCl9dmFsaWROYW1lKEEpe2xldHtOQU1FOmV9PUE7cmV0dXJuIGU9Qi50b1N0cmluZyhlKSxRLlR5cGUuc2FmZU5hbWUoZSk9PT1lfXRvU3RyaW5nU2FmZShBKXtsZXR7VEVYVDplfT1BO3JldHVybiBlPUIudG9TdHJpbmcoZSksUS5UeXBlLnNhZmVUZXh0KGUpfWZpbHRlckFycmF5KEEpe2xldHtOQU1FOmUsSU5QVVQ6dH09QTtyZXR1cm4gZT1CLnRvU3RyaW5nKGUpLHQ9dS5UeXBlLnRvQXJyYXkodCksdGhpcy52YWxpZE5hbWUoe05BTUU6ZX0pPyh0LmFycmF5PXQuYXJyYXkuZmlsdGVyKEE9PkEgaW5zdGFuY2VvZiBRLlR5cGUmJkEubmFtZT09PWUpLHQpOm5ldyB1LlR5cGUoW10sITApfX19LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbjtuPSgpPT4oKCk9PnsidXNlIHN0cmljdCI7dmFyIEE9e2Q6KGUsdCk9Pntmb3IodmFyIG4gaW4gdClBLm8odCxuKSYmIUEubyhlLG4pJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtlbnVtZXJhYmxlOiEwLGdldDp0W25dfSl9LG86KEEsZSk9Pk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLGUpLHI6QT0+eyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoQSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9fSxlPXt9O0EucihlKSxBLmQoZSx7ZGVmYXVsdDooKT0+Wn0pO3ZhciB0PXtwcmVzZXJ2ZU9yZGVyOiExLGF0dHJpYnV0ZU5hbWVQcmVmaXg6IkBfIixhdHRyaWJ1dGVzR3JvdXBOYW1lOiExLHRleHROb2RlTmFtZToiI3RleHQiLGlnbm9yZUF0dHJpYnV0ZXM6ITAscmVtb3ZlTlNQcmVmaXg6ITEsYWxsb3dCb29sZWFuQXR0cmlidXRlczohMSxwYXJzZVRhZ1ZhbHVlOiEwLHBhcnNlQXR0cmlidXRlVmFsdWU6ITEsdHJpbVZhbHVlczohMCxjZGF0YVByb3BOYW1lOiExLG51bWJlclBhcnNlT3B0aW9uczp7aGV4OiEwLGxlYWRpbmdaZXJvczohMCxlTm90YXRpb246ITB9LHRhZ1ZhbHVlUHJvY2Vzc29yOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV9LGF0dHJpYnV0ZVZhbHVlUHJvY2Vzc29yOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIGV9LHN0b3BOb2RlczpbXSxhbHdheXNDcmVhdGVUZXh0Tm9kZTohMSxpc0FycmF5OmZ1bmN0aW9uKCl7cmV0dXJuITF9LGNvbW1lbnRQcm9wTmFtZTohMSx1bnBhaXJlZFRhZ3M6W10scHJvY2Vzc0VudGl0aWVzOiEwLGh0bWxFbnRpdGllczohMSxpZ25vcmVEZWNsYXJhdGlvbjohMSxpZ25vcmVQaVRhZ3M6ITEsdHJhbnNmb3JtVGFnTmFtZTohMSx0cmFuc2Zvcm1BdHRyaWJ1dGVOYW1lOiExLHVwZGF0ZVRhZzpmdW5jdGlvbihBLGUsdCl7cmV0dXJuIEF9LGNhcHR1cmVNZXRhRGF0YTohMX0sbj0iOkEtWmEtel9cXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkQiLGk9bmV3IFJlZ0V4cCgiXlsiK24rIl1bIituKyJcXC0uXFxkXFx1MDBCN1xcdTAzMDAtXFx1MDM2RlxcdTIwM0YtXFx1MjA0MF0qJCIpO2Z1bmN0aW9uIHIoQSxlKXtmb3IodmFyIHQ9W10sbj1lLmV4ZWMoQSk7bjspe3ZhciBpPVtdO2kuc3RhcnRJbmRleD1lLmxhc3RJbmRleC1uWzBdLmxlbmd0aDtmb3IodmFyIHI9bi5sZW5ndGgsbz0wO288cjtvKyspaS5wdXNoKG5bb10pO3QucHVzaChpKSxuPWUuZXhlYyhBKX1yZXR1cm4gdH12YXIgbyxzPWZ1bmN0aW9uKEEpe3JldHVybiEobnVsbD09aS5leGVjKEEpKX07bz0iZnVuY3Rpb24iIT10eXBlb2YgU3ltYm9sPyJAQHhtbE1ldGFkYXRhIjpTeW1ib2woIlhNTCBOb2RlIE1ldGFkYXRhIik7dmFyIGE9ZnVuY3Rpb24oKXtmdW5jdGlvbiBBKEEpe3RoaXMudGFnbmFtZT1BLHRoaXMuY2hpbGQ9W10sdGhpc1siOkAiXT17fX12YXIgZT1BLnByb3RvdHlwZTtyZXR1cm4gZS5hZGQ9ZnVuY3Rpb24oQSxlKXt2YXIgdDsiX19wcm90b19fIj09PUEmJihBPSIjX19wcm90b19fIiksdGhpcy5jaGlsZC5wdXNoKCgodD17fSlbQV09ZSx0KSl9LGUuYWRkQ2hpbGQ9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuOyJfX3Byb3RvX18iPT09QS50YWduYW1lJiYoQS50YWduYW1lPSIjX19wcm90b19fIiksQVsiOkAiXSYmT2JqZWN0LmtleXMoQVsiOkAiXSkubGVuZ3RoPjA/dGhpcy5jaGlsZC5wdXNoKCgodD17fSlbQS50YWduYW1lXT1BLmNoaWxkLHRbIjpAIl09QVsiOkAiXSx0KSk6dGhpcy5jaGlsZC5wdXNoKCgobj17fSlbQS50YWduYW1lXT1BLmNoaWxkLG4pKSx2b2lkIDAhPT1lJiYodGhpcy5jaGlsZFt0aGlzLmNoaWxkLmxlbmd0aC0xXVtvXT17c3RhcnRJbmRleDplfSl9LEEuZ2V0TWV0YURhdGFTeW1ib2w9ZnVuY3Rpb24oKXtyZXR1cm4gb30sQX0oKSxCPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gQShBKXt0aGlzLnN1cHByZXNzVmFsaWRhdGlvbkVycj0hQX12YXIgZT1BLnByb3RvdHlwZTtyZXR1cm4gZS5yZWFkRG9jVHlwZT1mdW5jdGlvbihBLGUpe3ZhciB0PXt9O2lmKCJPIiE9PUFbZSszXXx8IkMiIT09QVtlKzRdfHwiVCIhPT1BW2UrNV18fCJZIiE9PUFbZSs2XXx8IlAiIT09QVtlKzddfHwiRSIhPT1BW2UrOF0pdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIFRhZyBpbnN0ZWFkIG9mIERPQ1RZUEUiKTtlKz05O2Zvcih2YXIgbj0xLGk9ITEscj0hMTtlPEEubGVuZ3RoO2UrKylpZigiPCIhPT1BW2VdfHxyKWlmKCI+Ij09PUFbZV0pe2lmKHI/Ii0iPT09QVtlLTFdJiYiLSI9PT1BW2UtMl0mJihyPSExLG4tLSk6bi0tLDA9PT1uKWJyZWFrfWVsc2UiWyI9PT1BW2VdP2k9ITA6QVtlXTtlbHNle2lmKGkmJmcoQSwiIUVOVElUWSIsZSkpe2UrPTc7dmFyIG8scz12b2lkIDAsYT10aGlzLnJlYWRFbnRpdHlFeHAoQSxlKzEsdGhpcy5zdXBwcmVzc1ZhbGlkYXRpb25FcnIpO289YVswXSxzPWFbMV0sZT1hWzJdLC0xPT09cy5pbmRleE9mKCImIikmJih0W29dPXtyZWd4OlJlZ0V4cCgiJiIrbysiOyIsImciKSx2YWw6c30pfWVsc2UgaWYoaSYmZyhBLCIhRUxFTUVOVCIsZSkpZSs9OCxlPXRoaXMucmVhZEVsZW1lbnRFeHAoQSxlKzEpLmluZGV4O2Vsc2UgaWYoaSYmZyhBLCIhQVRUTElTVCIsZSkpZSs9ODtlbHNlIGlmKGkmJmcoQSwiIU5PVEFUSU9OIixlKSllKz05LGU9dGhpcy5yZWFkTm90YXRpb25FeHAoQSxlKzEsdGhpcy5zdXBwcmVzc1ZhbGlkYXRpb25FcnIpLmluZGV4O2Vsc2V7aWYoIWcoQSwiIS0tIixlKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgRE9DVFlQRSIpO3I9ITB9bisrfWlmKDAhPT1uKXRocm93IG5ldyBFcnJvcigiVW5jbG9zZWQgRE9DVFlQRSIpO3JldHVybntlbnRpdGllczp0LGk6ZX19LGUucmVhZEVudGl0eUV4cD1mdW5jdGlvbihBLGUpe2U9YyhBLGUpO2Zvcih2YXIgdD0iIjtlPEEubGVuZ3RoJiYhL1xzLy50ZXN0KEFbZV0pJiYnIichPT1BW2VdJiYiJyIhPT1BW2VdOyl0Kz1BW2VdLGUrKztpZihFKHQpLGU9YyhBLGUpLCF0aGlzLnN1cHByZXNzVmFsaWRhdGlvbkVycil7aWYoIlNZU1RFTSI9PT1BLnN1YnN0cmluZyhlLGUrNikudG9VcHBlckNhc2UoKSl0aHJvdyBuZXcgRXJyb3IoIkV4dGVybmFsIGVudGl0aWVzIGFyZSBub3Qgc3VwcG9ydGVkIik7aWYoIiUiPT09QVtlXSl0aHJvdyBuZXcgRXJyb3IoIlBhcmFtZXRlciBlbnRpdGllcyBhcmUgbm90IHN1cHBvcnRlZCIpfXZhciBuPXRoaXMucmVhZElkZW50aWZpZXJWYWwoQSxlLCJlbnRpdHkiKTtyZXR1cm4gZT1uWzBdLFt0LG5bMV0sLS1lXX0sZS5yZWFkTm90YXRpb25FeHA9ZnVuY3Rpb24oQSxlKXtlPWMoQSxlKTtmb3IodmFyIHQ9IiI7ZTxBLmxlbmd0aCYmIS9ccy8udGVzdChBW2VdKTspdCs9QVtlXSxlKys7IXRoaXMuc3VwcHJlc3NWYWxpZGF0aW9uRXJyJiZFKHQpLGU9YyhBLGUpO3ZhciBuPUEuc3Vic3RyaW5nKGUsZSs2KS50b1VwcGVyQ2FzZSgpO2lmKCF0aGlzLnN1cHByZXNzVmFsaWRhdGlvbkVyciYmIlNZU1RFTSIhPT1uJiYiUFVCTElDIiE9PW4pdGhyb3cgbmV3IEVycm9yKCdFeHBlY3RlZCBTWVNURU0gb3IgUFVCTElDLCBmb3VuZCAiJytuKyciJyk7ZSs9bi5sZW5ndGgsZT1jKEEsZSk7dmFyIGk9bnVsbCxyPW51bGw7aWYoIlBVQkxJQyI9PT1uKXt2YXIgbz10aGlzLnJlYWRJZGVudGlmaWVyVmFsKEEsZSwicHVibGljSWRlbnRpZmllciIpO2lmKGU9b1swXSxpPW9bMV0sJyInPT09QVtlPWMoQSxlKV18fCInIj09PUFbZV0pe3ZhciBzPXRoaXMucmVhZElkZW50aWZpZXJWYWwoQSxlLCJzeXN0ZW1JZGVudGlmaWVyIik7ZT1zWzBdLHI9c1sxXX19ZWxzZSBpZigiU1lTVEVNIj09PW4pe3ZhciBhPXRoaXMucmVhZElkZW50aWZpZXJWYWwoQSxlLCJzeXN0ZW1JZGVudGlmaWVyIik7aWYoZT1hWzBdLHI9YVsxXSwhdGhpcy5zdXBwcmVzc1ZhbGlkYXRpb25FcnImJiFyKXRocm93IG5ldyBFcnJvcigiTWlzc2luZyBtYW5kYXRvcnkgc3lzdGVtIGlkZW50aWZpZXIgZm9yIFNZU1RFTSBub3RhdGlvbiIpfXJldHVybntub3RhdGlvbk5hbWU6dCxwdWJsaWNJZGVudGlmaWVyOmksc3lzdGVtSWRlbnRpZmllcjpyLGluZGV4Oi0tZX19LGUucmVhZElkZW50aWZpZXJWYWw9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPSIiLGk9QVtlXTtpZignIichPT1pJiYiJyIhPT1pKXRocm93IG5ldyBFcnJvcignRXhwZWN0ZWQgcXVvdGVkIHN0cmluZywgZm91bmQgIicraSsnIicpO2ZvcihlKys7ZTxBLmxlbmd0aCYmQVtlXSE9PWk7KW4rPUFbZV0sZSsrO2lmKEFbZV0hPT1pKXRocm93IG5ldyBFcnJvcigiVW50ZXJtaW5hdGVkICIrdCsiIHZhbHVlIik7cmV0dXJuWysrZSxuXX0sZS5yZWFkRWxlbWVudEV4cD1mdW5jdGlvbihBLGUpe2U9YyhBLGUpO2Zvcih2YXIgdD0iIjtlPEEubGVuZ3RoJiYhL1xzLy50ZXN0KEFbZV0pOyl0Kz1BW2VdLGUrKztpZighdGhpcy5zdXBwcmVzc1ZhbGlkYXRpb25FcnImJiFzKHQpKXRocm93IG5ldyBFcnJvcignSW52YWxpZCBlbGVtZW50IG5hbWU6ICInK3QrJyInKTt2YXIgbj0iIjtpZigiRSI9PT1BW2U9YyhBLGUpXSYmZyhBLCJNUFRZIixlKSllKz00O2Vsc2UgaWYoIkEiPT09QVtlXSYmZyhBLCJOWSIsZSkpZSs9MjtlbHNlIGlmKCIoIj09PUFbZV0pe2ZvcihlKys7ZTxBLmxlbmd0aCYmIikiIT09QVtlXTspbis9QVtlXSxlKys7aWYoIikiIT09QVtlXSl0aHJvdyBuZXcgRXJyb3IoIlVudGVybWluYXRlZCBjb250ZW50IG1vZGVsIil9ZWxzZSBpZighdGhpcy5zdXBwcmVzc1ZhbGlkYXRpb25FcnIpdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEVsZW1lbnQgRXhwcmVzc2lvbiwgZm91bmQgIicrQVtlXSsnIicpO3JldHVybntlbGVtZW50TmFtZTp0LGNvbnRlbnRNb2RlbDpuLnRyaW0oKSxpbmRleDplfX0sZS5yZWFkQXR0bGlzdEV4cD1mdW5jdGlvbihBLGUpe2U9YyhBLGUpO2Zvcih2YXIgdD0iIjtlPEEubGVuZ3RoJiYhL1xzLy50ZXN0KEFbZV0pOyl0Kz1BW2VdLGUrKztFKHQpLGU9YyhBLGUpO2Zvcih2YXIgbj0iIjtlPEEubGVuZ3RoJiYhL1xzLy50ZXN0KEFbZV0pOyluKz1BW2VdLGUrKztpZighRShuKSl0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYXR0cmlidXRlIG5hbWU6ICInK24rJyInKTtlPWMoQSxlKTt2YXIgaT0iIjtpZigiTk9UQVRJT04iPT09QS5zdWJzdHJpbmcoZSxlKzgpLnRvVXBwZXJDYXNlKCkpe2lmKGk9Ik5PVEFUSU9OIiwiKCIhPT1BW2U9YyhBLGUrPTgpXSl0aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkICcoJywgZm91bmQgXCIiK0FbZV0rJyInKTtlKys7Zm9yKHZhciByPVtdO2U8QS5sZW5ndGgmJiIpIiE9PUFbZV07KXtmb3IodmFyIG89IiI7ZTxBLmxlbmd0aCYmInwiIT09QVtlXSYmIikiIT09QVtlXTspbys9QVtlXSxlKys7aWYoIUUobz1vLnRyaW0oKSkpdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIG5vdGF0aW9uIG5hbWU6ICInK28rJyInKTtyLnB1c2gobyksInwiPT09QVtlXSYmKGUrKyxlPWMoQSxlKSl9aWYoIikiIT09QVtlXSl0aHJvdyBuZXcgRXJyb3IoIlVudGVybWluYXRlZCBsaXN0IG9mIG5vdGF0aW9ucyIpO2UrKyxpKz0iICgiK3Iuam9pbigifCIpKyIpIn1lbHNle2Zvcig7ZTxBLmxlbmd0aCYmIS9ccy8udGVzdChBW2VdKTspaSs9QVtlXSxlKys7aWYoIXRoaXMuc3VwcHJlc3NWYWxpZGF0aW9uRXJyJiYhWyJDREFUQSIsIklEIiwiSURSRUYiLCJJRFJFRlMiLCJFTlRJVFkiLCJFTlRJVElFUyIsIk5NVE9LRU4iLCJOTVRPS0VOUyJdLmluY2x1ZGVzKGkudG9VcHBlckNhc2UoKSkpdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGF0dHJpYnV0ZSB0eXBlOiAiJytpKyciJyl9ZT1jKEEsZSk7dmFyIHM9IiI7aWYoIiNSRVFVSVJFRCI9PT1BLnN1YnN0cmluZyhlLGUrOCkudG9VcHBlckNhc2UoKSlzPSIjUkVRVUlSRUQiLGUrPTg7ZWxzZSBpZigiI0lNUExJRUQiPT09QS5zdWJzdHJpbmcoZSxlKzcpLnRvVXBwZXJDYXNlKCkpcz0iI0lNUExJRUQiLGUrPTc7ZWxzZXt2YXIgYT10aGlzLnJlYWRJZGVudGlmaWVyVmFsKEEsZSwiQVRUTElTVCIpO2U9YVswXSxzPWFbMV19cmV0dXJue2VsZW1lbnROYW1lOnQsYXR0cmlidXRlTmFtZTpuLGF0dHJpYnV0ZVR5cGU6aSxkZWZhdWx0VmFsdWU6cyxpbmRleDplfX0sQX0oKSxjPWZ1bmN0aW9uKEEsZSl7Zm9yKDtlPEEubGVuZ3RoJiYvXHMvLnRlc3QoQVtlXSk7KWUrKztyZXR1cm4gZX07ZnVuY3Rpb24gZyhBLGUsdCl7Zm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspaWYoZVtuXSE9PUFbdCtuKzFdKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIEUoQSl7aWYocyhBKSlyZXR1cm4gQTt0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZW50aXR5IG5hbWUgIitBKX1jb25zdCBRPS9eWy0rXT8weFthLWZBLUYwLTldKyQvLHU9L14oW1wtXCtdKT8oMCopKFswLTldKihcLlswLTldKik/KSQvLGw9e2hleDohMCxsZWFkaW5nWmVyb3M6ITAsZGVjaW1hbFBvaW50OiIuIixlTm90YXRpb246ITB9LGg9L14oWy0rXSk/KDAqKShcZCooXC5cZCopP1tlRV1bLVwrXT9cZCspJC87ZnVuY3Rpb24gdyhBLGUpeyhudWxsPT1lfHxlPkEubGVuZ3RoKSYmKGU9QS5sZW5ndGgpO2Zvcih2YXIgdD0wLG49QXJyYXkoZSk7dDxlO3QrKyluW3RdPUFbdF07cmV0dXJuIG59dmFyIEM9ZnVuY3Rpb24oQSl7dmFyIGU7dGhpcy5vcHRpb25zPUEsdGhpcy5jdXJyZW50Tm9kZT1udWxsLHRoaXMudGFnc05vZGVTdGFjaz1bXSx0aGlzLmRvY1R5cGVFbnRpdGllcz17fSx0aGlzLmxhc3RFbnRpdGllcz17YXBvczp7cmVnZXg6LyYoYXBvc3wjMzl8I3gyNyk7L2csdmFsOiInIn0sZ3Q6e3JlZ2V4Oi8mKGd0fCM2MnwjeDNFKTsvZyx2YWw6Ij4ifSxsdDp7cmVnZXg6LyYobHR8IzYwfCN4M0MpOy9nLHZhbDoiPCJ9LHF1b3Q6e3JlZ2V4Oi8mKHF1b3R8IzM0fCN4MjIpOy9nLHZhbDonIid9fSx0aGlzLmFtcEVudGl0eT17cmVnZXg6LyYoYW1wfCMzOHwjeDI2KTsvZyx2YWw6IiYifSx0aGlzLmh0bWxFbnRpdGllcz17c3BhY2U6e3JlZ2V4Oi8mKG5ic3B8IzE2MCk7L2csdmFsOiIgIn0sY2VudDp7cmVnZXg6LyYoY2VudHwjMTYyKTsvZyx2YWw6IsKiIn0scG91bmQ6e3JlZ2V4Oi8mKHBvdW5kfCMxNjMpOy9nLHZhbDoiwqMifSx5ZW46e3JlZ2V4Oi8mKHllbnwjMTY1KTsvZyx2YWw6IsKlIn0sZXVybzp7cmVnZXg6LyYoZXVyb3wjODM2NCk7L2csdmFsOiLigqwifSxjb3B5cmlnaHQ6e3JlZ2V4Oi8mKGNvcHl8IzE2OSk7L2csdmFsOiLCqSJ9LHJlZzp7cmVnZXg6LyYocmVnfCMxNzQpOy9nLHZhbDoiwq4ifSxpbnI6e3JlZ2V4Oi8mKGlucnwjODM3Nyk7L2csdmFsOiLigrkifSxudW1fZGVjOntyZWdleDovJiMoWzAtOV17MSw3fSk7L2csdmFsOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIFN0cmluZy5mcm9tQ29kZVBvaW50KE51bWJlci5wYXJzZUludChlLDEwKSl9fSxudW1faGV4OntyZWdleDovJiN4KFswLTlhLWZBLUZdezEsNn0pOy9nLHZhbDpmdW5jdGlvbihBLGUpe3JldHVybiBTdHJpbmcuZnJvbUNvZGVQb2ludChOdW1iZXIucGFyc2VJbnQoZSwxNikpfX19LHRoaXMuYWRkRXh0ZXJuYWxFbnRpdGllcz1JLHRoaXMucGFyc2VYbWw9Rix0aGlzLnBhcnNlVGV4dERhdGE9TSx0aGlzLnJlc29sdmVOYW1lU3BhY2U9ZCx0aGlzLmJ1aWxkQXR0cmlidXRlc01hcD1tLHRoaXMuaXNJdFN0b3BOb2RlPU4sdGhpcy5yZXBsYWNlRW50aXRpZXNWYWx1ZT1ZLHRoaXMucmVhZFN0b3BOb2RlRGF0YT1ULHRoaXMuc2F2ZVRleHRUb1BhcmVudFRhZz1mLHRoaXMuYWRkQ2hpbGQ9RCx0aGlzLmlnbm9yZUF0dHJpYnV0ZXNGbj0iZnVuY3Rpb24iPT10eXBlb2YoZT10aGlzLm9wdGlvbnMuaWdub3JlQXR0cmlidXRlcyk/ZTpBcnJheS5pc0FycmF5KGUpP2Z1bmN0aW9uKEEpe2Zvcih2YXIgdCxuPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJkFbU3ltYm9sLml0ZXJhdG9yXXx8QVsiQEBpdGVyYXRvciJdO2lmKHQpcmV0dXJuKHQ9dC5jYWxsKEEpKS5uZXh0LmJpbmQodCk7aWYoQXJyYXkuaXNBcnJheShBKXx8KHQ9ZnVuY3Rpb24oQSxlKXtpZihBKXtpZigic3RyaW5nIj09dHlwZW9mIEEpcmV0dXJuIHcoQSxlKTt2YXIgdD17fS50b1N0cmluZy5jYWxsKEEpLnNsaWNlKDgsLTEpO3JldHVybiJPYmplY3QiPT09dCYmQS5jb25zdHJ1Y3RvciYmKHQ9QS5jb25zdHJ1Y3Rvci5uYW1lKSwiTWFwIj09PXR8fCJTZXQiPT09dD9BcnJheS5mcm9tKEEpOiJBcmd1bWVudHMiPT09dHx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3QodCk/dyhBLGUpOnZvaWQgMH19KEEpKSl7dCYmKEE9dCk7dmFyIG49MDtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbj49QS5sZW5ndGg/e2RvbmU6ITB9Ontkb25lOiExLHZhbHVlOkFbbisrXX19fXRocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBpdGVyYXRlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oZSk7ISh0PW4oKSkuZG9uZTspe3ZhciBpPXQudmFsdWU7aWYoInN0cmluZyI9PXR5cGVvZiBpJiZBPT09aSlyZXR1cm4hMDtpZihpIGluc3RhbmNlb2YgUmVnRXhwJiZpLnRlc3QoQSkpcmV0dXJuITB9fTpmdW5jdGlvbigpe3JldHVybiExfX07ZnVuY3Rpb24gSShBKXtmb3IodmFyIGU9T2JqZWN0LmtleXMoQSksdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgbj1lW3RdO3RoaXMubGFzdEVudGl0aWVzW25dPXtyZWdleDpuZXcgUmVnRXhwKCImIituKyI7IiwiZyIpLHZhbDpBW25dfX19ZnVuY3Rpb24gTShBLGUsdCxuLGkscixvKXtpZih2b2lkIDAhPT1BJiYodGhpcy5vcHRpb25zLnRyaW1WYWx1ZXMmJiFuJiYoQT1BLnRyaW0oKSksQS5sZW5ndGg+MCkpe298fChBPXRoaXMucmVwbGFjZUVudGl0aWVzVmFsdWUoQSkpO3ZhciBzPXRoaXMub3B0aW9ucy50YWdWYWx1ZVByb2Nlc3NvcihlLEEsdCxpLHIpO3JldHVybiBudWxsPT1zP0E6dHlwZW9mIHMhPXR5cGVvZiBBfHxzIT09QT9zOnRoaXMub3B0aW9ucy50cmltVmFsdWVzfHxBLnRyaW0oKT09PUE/eChBLHRoaXMub3B0aW9ucy5wYXJzZVRhZ1ZhbHVlLHRoaXMub3B0aW9ucy5udW1iZXJQYXJzZU9wdGlvbnMpOkF9fWZ1bmN0aW9uIGQoQSl7aWYodGhpcy5vcHRpb25zLnJlbW92ZU5TUHJlZml4KXt2YXIgZT1BLnNwbGl0KCI6IiksdD0iLyI9PT1BLmNoYXJBdCgwKT8iLyI6IiI7aWYoInhtbG5zIj09PWVbMF0pcmV0dXJuIiI7Mj09PWUubGVuZ3RoJiYoQT10K2VbMV0pfXJldHVybiBBfXZhciBwPW5ldyBSZWdFeHAoIihbXlxccz1dKylcXHMqKD1cXHMqKFsnXCJdKShbXFxzXFxTXSo/KVxcMyk/IiwiZ20iKTtmdW5jdGlvbiBtKEEsZSx0KXtpZighMCE9PXRoaXMub3B0aW9ucy5pZ25vcmVBdHRyaWJ1dGVzJiYic3RyaW5nIj09dHlwZW9mIEEpe2Zvcih2YXIgbj1yKEEscCksaT1uLmxlbmd0aCxvPXt9LHM9MDtzPGk7cysrKXt2YXIgYT10aGlzLnJlc29sdmVOYW1lU3BhY2UobltzXVsxXSk7aWYoIXRoaXMuaWdub3JlQXR0cmlidXRlc0ZuKGEsZSkpe3ZhciBCPW5bc11bNF0sYz10aGlzLm9wdGlvbnMuYXR0cmlidXRlTmFtZVByZWZpeCthO2lmKGEubGVuZ3RoKWlmKHRoaXMub3B0aW9ucy50cmFuc2Zvcm1BdHRyaWJ1dGVOYW1lJiYoYz10aGlzLm9wdGlvbnMudHJhbnNmb3JtQXR0cmlidXRlTmFtZShjKSksIl9fcHJvdG9fXyI9PT1jJiYoYz0iI19fcHJvdG9fXyIpLHZvaWQgMCE9PUIpe3RoaXMub3B0aW9ucy50cmltVmFsdWVzJiYoQj1CLnRyaW0oKSksQj10aGlzLnJlcGxhY2VFbnRpdGllc1ZhbHVlKEIpO3ZhciBnPXRoaXMub3B0aW9ucy5hdHRyaWJ1dGVWYWx1ZVByb2Nlc3NvcihhLEIsZSk7b1tjXT1udWxsPT1nP0I6dHlwZW9mIGchPXR5cGVvZiBCfHxnIT09Qj9nOngoQix0aGlzLm9wdGlvbnMucGFyc2VBdHRyaWJ1dGVWYWx1ZSx0aGlzLm9wdGlvbnMubnVtYmVyUGFyc2VPcHRpb25zKX1lbHNlIHRoaXMub3B0aW9ucy5hbGxvd0Jvb2xlYW5BdHRyaWJ1dGVzJiYob1tjXT0hMCl9fWlmKCFPYmplY3Qua2V5cyhvKS5sZW5ndGgpcmV0dXJuO2lmKHRoaXMub3B0aW9ucy5hdHRyaWJ1dGVzR3JvdXBOYW1lKXt2YXIgRT17fTtyZXR1cm4gRVt0aGlzLm9wdGlvbnMuYXR0cmlidXRlc0dyb3VwTmFtZV09byxFfXJldHVybiBvfX12YXIgRj1mdW5jdGlvbihBKXtBPUEucmVwbGFjZSgvXHJcbj8vZywiXG4iKTtmb3IodmFyIGU9bmV3IGEoIiF4bWwiKSx0PWUsbj0iIixpPSIiLHI9bmV3IEIodGhpcy5vcHRpb25zLnByb2Nlc3NFbnRpdGllcyksbz0wO288QS5sZW5ndGg7bysrKWlmKCI8Ij09PUFbb10paWYoIi8iPT09QVtvKzFdKXt2YXIgcz1VKEEsIj4iLG8sIkNsb3NpbmcgVGFnIGlzIG5vdCBjbG9zZWQuIiksYz1BLnN1YnN0cmluZyhvKzIscykudHJpbSgpO2lmKHRoaXMub3B0aW9ucy5yZW1vdmVOU1ByZWZpeCl7dmFyIGc9Yy5pbmRleE9mKCI6Iik7LTEhPT1nJiYoYz1jLnN1YnN0cihnKzEpKX10aGlzLm9wdGlvbnMudHJhbnNmb3JtVGFnTmFtZSYmKGM9dGhpcy5vcHRpb25zLnRyYW5zZm9ybVRhZ05hbWUoYykpLHQmJihuPXRoaXMuc2F2ZVRleHRUb1BhcmVudFRhZyhuLHQsaSkpO3ZhciBFPWkuc3Vic3RyaW5nKGkubGFzdEluZGV4T2YoIi4iKSsxKTtpZihjJiYtMSE9PXRoaXMub3B0aW9ucy51bnBhaXJlZFRhZ3MuaW5kZXhPZihjKSl0aHJvdyBuZXcgRXJyb3IoIlVucGFpcmVkIHRhZyBjYW4gbm90IGJlIHVzZWQgYXMgY2xvc2luZyB0YWc6IDwvIitjKyI+Iik7dmFyIFE9MDtFJiYtMSE9PXRoaXMub3B0aW9ucy51bnBhaXJlZFRhZ3MuaW5kZXhPZihFKT8oUT1pLmxhc3RJbmRleE9mKCIuIixpLmxhc3RJbmRleE9mKCIuIiktMSksdGhpcy50YWdzTm9kZVN0YWNrLnBvcCgpKTpRPWkubGFzdEluZGV4T2YoIi4iKSxpPWkuc3Vic3RyaW5nKDAsUSksdD10aGlzLnRhZ3NOb2RlU3RhY2sucG9wKCksbj0iIixvPXN9ZWxzZSBpZigiPyI9PT1BW28rMV0pe3ZhciB1PXkoQSxvLCExLCI/PiIpO2lmKCF1KXRocm93IG5ldyBFcnJvcigiUGkgVGFnIGlzIG5vdCBjbG9zZWQuIik7aWYobj10aGlzLnNhdmVUZXh0VG9QYXJlbnRUYWcobix0LGkpLHRoaXMub3B0aW9ucy5pZ25vcmVEZWNsYXJhdGlvbiYmIj94bWwiPT09dS50YWdOYW1lfHx0aGlzLm9wdGlvbnMuaWdub3JlUGlUYWdzKTtlbHNle3ZhciBsPW5ldyBhKHUudGFnTmFtZSk7bC5hZGQodGhpcy5vcHRpb25zLnRleHROb2RlTmFtZSwiIiksdS50YWdOYW1lIT09dS50YWdFeHAmJnUuYXR0ckV4cFByZXNlbnQmJihsWyI6QCJdPXRoaXMuYnVpbGRBdHRyaWJ1dGVzTWFwKHUudGFnRXhwLGksdS50YWdOYW1lKSksdGhpcy5hZGRDaGlsZCh0LGwsaSxvKX1vPXUuY2xvc2VJbmRleCsxfWVsc2UgaWYoIiEtLSI9PT1BLnN1YnN0cihvKzEsMykpe3ZhciBoPVUoQSwiLS1ceDNlIixvKzQsIkNvbW1lbnQgaXMgbm90IGNsb3NlZC4iKTtpZih0aGlzLm9wdGlvbnMuY29tbWVudFByb3BOYW1lKXt2YXIgdyxDPUEuc3Vic3RyaW5nKG8rNCxoLTIpO249dGhpcy5zYXZlVGV4dFRvUGFyZW50VGFnKG4sdCxpKSx0LmFkZCh0aGlzLm9wdGlvbnMuY29tbWVudFByb3BOYW1lLFsodz17fSx3W3RoaXMub3B0aW9ucy50ZXh0Tm9kZU5hbWVdPUMsdyldKX1vPWh9ZWxzZSBpZigiIUQiPT09QS5zdWJzdHIobysxLDIpKXt2YXIgST1yLnJlYWREb2NUeXBlKEEsbyk7dGhpcy5kb2NUeXBlRW50aXRpZXM9SS5lbnRpdGllcyxvPUkuaX1lbHNlIGlmKCIhWyI9PT1BLnN1YnN0cihvKzEsMikpe3ZhciBNPVUoQSwiXV0+IixvLCJDREFUQSBpcyBub3QgY2xvc2VkLiIpLTIsZD1BLnN1YnN0cmluZyhvKzksTSk7bj10aGlzLnNhdmVUZXh0VG9QYXJlbnRUYWcobix0LGkpO3ZhciBwLG09dGhpcy5wYXJzZVRleHREYXRhKGQsdC50YWduYW1lLGksITAsITEsITAsITApO251bGw9PW0mJihtPSIiKSx0aGlzLm9wdGlvbnMuY2RhdGFQcm9wTmFtZT90LmFkZCh0aGlzLm9wdGlvbnMuY2RhdGFQcm9wTmFtZSxbKHA9e30scFt0aGlzLm9wdGlvbnMudGV4dE5vZGVOYW1lXT1kLHApXSk6dC5hZGQodGhpcy5vcHRpb25zLnRleHROb2RlTmFtZSxtKSxvPU0rMn1lbHNle3ZhciBGPXkoQSxvLHRoaXMub3B0aW9ucy5yZW1vdmVOU1ByZWZpeCksRD1GLnRhZ05hbWUsWT1GLnJhd1RhZ05hbWUsZj1GLnRhZ0V4cCxOPUYuYXR0ckV4cFByZXNlbnQsVD1GLmNsb3NlSW5kZXg7dGhpcy5vcHRpb25zLnRyYW5zZm9ybVRhZ05hbWUmJihEPXRoaXMub3B0aW9ucy50cmFuc2Zvcm1UYWdOYW1lKEQpKSx0JiZuJiYiIXhtbCIhPT10LnRhZ25hbWUmJihuPXRoaXMuc2F2ZVRleHRUb1BhcmVudFRhZyhuLHQsaSwhMSkpO3ZhciB4PXQ7eCYmLTEhPT10aGlzLm9wdGlvbnMudW5wYWlyZWRUYWdzLmluZGV4T2YoeC50YWduYW1lKSYmKHQ9dGhpcy50YWdzTm9kZVN0YWNrLnBvcCgpLGk9aS5zdWJzdHJpbmcoMCxpLmxhc3RJbmRleE9mKCIuIikpKSxEIT09ZS50YWduYW1lJiYoaSs9aT8iLiIrRDpEKTt2YXIgUj1vO2lmKHRoaXMuaXNJdFN0b3BOb2RlKHRoaXMub3B0aW9ucy5zdG9wTm9kZXMsaSxEKSl7dmFyIEc9IiI7aWYoZi5sZW5ndGg+MCYmZi5sYXN0SW5kZXhPZigiLyIpPT09Zi5sZW5ndGgtMSkiLyI9PT1EW0QubGVuZ3RoLTFdPyhEPUQuc3Vic3RyKDAsRC5sZW5ndGgtMSksaT1pLnN1YnN0cigwLGkubGVuZ3RoLTEpLGY9RCk6Zj1mLnN1YnN0cigwLGYubGVuZ3RoLTEpLG89Ri5jbG9zZUluZGV4O2Vsc2UgaWYoLTEhPT10aGlzLm9wdGlvbnMudW5wYWlyZWRUYWdzLmluZGV4T2YoRCkpbz1GLmNsb3NlSW5kZXg7ZWxzZXt2YXIgUz10aGlzLnJlYWRTdG9wTm9kZURhdGEoQSxZLFQrMSk7aWYoIVMpdGhyb3cgbmV3IEVycm9yKCJVbmV4cGVjdGVkIGVuZCBvZiAiK1kpO289Uy5pLEc9Uy50YWdDb250ZW50fXZhciBiPW5ldyBhKEQpO0QhPT1mJiZOJiYoYlsiOkAiXT10aGlzLmJ1aWxkQXR0cmlidXRlc01hcChmLGksRCkpLEcmJihHPXRoaXMucGFyc2VUZXh0RGF0YShHLEQsaSwhMCxOLCEwLCEwKSksaT1pLnN1YnN0cigwLGkubGFzdEluZGV4T2YoIi4iKSksYi5hZGQodGhpcy5vcHRpb25zLnRleHROb2RlTmFtZSxHKSx0aGlzLmFkZENoaWxkKHQsYixpLFIpfWVsc2V7aWYoZi5sZW5ndGg+MCYmZi5sYXN0SW5kZXhPZigiLyIpPT09Zi5sZW5ndGgtMSl7Ii8iPT09RFtELmxlbmd0aC0xXT8oRD1ELnN1YnN0cigwLEQubGVuZ3RoLTEpLGk9aS5zdWJzdHIoMCxpLmxlbmd0aC0xKSxmPUQpOmY9Zi5zdWJzdHIoMCxmLmxlbmd0aC0xKSx0aGlzLm9wdGlvbnMudHJhbnNmb3JtVGFnTmFtZSYmKEQ9dGhpcy5vcHRpb25zLnRyYW5zZm9ybVRhZ05hbWUoRCkpO3ZhciBIPW5ldyBhKEQpO0QhPT1mJiZOJiYoSFsiOkAiXT10aGlzLmJ1aWxkQXR0cmlidXRlc01hcChmLGksRCkpLHRoaXMuYWRkQ2hpbGQodCxILGksUiksaT1pLnN1YnN0cigwLGkubGFzdEluZGV4T2YoIi4iKSl9ZWxzZXt2YXIgdj1uZXcgYShEKTt0aGlzLnRhZ3NOb2RlU3RhY2sucHVzaCh0KSxEIT09ZiYmTiYmKHZbIjpAIl09dGhpcy5idWlsZEF0dHJpYnV0ZXNNYXAoZixpLEQpKSx0aGlzLmFkZENoaWxkKHQsdixpLFIpLHQ9dn1uPSIiLG89VH19ZWxzZSBuKz1BW29dO3JldHVybiBlLmNoaWxkfTtmdW5jdGlvbiBEKEEsZSx0LG4pe3RoaXMub3B0aW9ucy5jYXB0dXJlTWV0YURhdGF8fChuPXZvaWQgMCk7dmFyIGk9dGhpcy5vcHRpb25zLnVwZGF0ZVRhZyhlLnRhZ25hbWUsdCxlWyI6QCJdKTshMT09PWl8fCgic3RyaW5nIj09dHlwZW9mIGk/KGUudGFnbmFtZT1pLEEuYWRkQ2hpbGQoZSxuKSk6QS5hZGRDaGlsZChlLG4pKX12YXIgWT1mdW5jdGlvbihBKXtpZih0aGlzLm9wdGlvbnMucHJvY2Vzc0VudGl0aWVzKXtmb3IodmFyIGUgaW4gdGhpcy5kb2NUeXBlRW50aXRpZXMpe3ZhciB0PXRoaXMuZG9jVHlwZUVudGl0aWVzW2VdO0E9QS5yZXBsYWNlKHQucmVneCx0LnZhbCl9Zm9yKHZhciBuIGluIHRoaXMubGFzdEVudGl0aWVzKXt2YXIgaT10aGlzLmxhc3RFbnRpdGllc1tuXTtBPUEucmVwbGFjZShpLnJlZ2V4LGkudmFsKX1pZih0aGlzLm9wdGlvbnMuaHRtbEVudGl0aWVzKWZvcih2YXIgciBpbiB0aGlzLmh0bWxFbnRpdGllcyl7dmFyIG89dGhpcy5odG1sRW50aXRpZXNbcl07QT1BLnJlcGxhY2Uoby5yZWdleCxvLnZhbCl9QT1BLnJlcGxhY2UodGhpcy5hbXBFbnRpdHkucmVnZXgsdGhpcy5hbXBFbnRpdHkudmFsKX1yZXR1cm4gQX07ZnVuY3Rpb24gZihBLGUsdCxuKXtyZXR1cm4gQSYmKHZvaWQgMD09PW4mJihuPTA9PT1lLmNoaWxkLmxlbmd0aCksdm9pZCAwIT09KEE9dGhpcy5wYXJzZVRleHREYXRhKEEsZS50YWduYW1lLHQsITEsISFlWyI6QCJdJiYwIT09T2JqZWN0LmtleXMoZVsiOkAiXSkubGVuZ3RoLG4pKSYmIiIhPT1BJiZlLmFkZCh0aGlzLm9wdGlvbnMudGV4dE5vZGVOYW1lLEEpLEE9IiIpLEF9ZnVuY3Rpb24gTihBLGUsdCl7dmFyIG49IiouIit0O2Zvcih2YXIgaSBpbiBBKXt2YXIgcj1BW2ldO2lmKG49PT1yfHxlPT09cilyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBVKEEsZSx0LG4pe3ZhciBpPUEuaW5kZXhPZihlLHQpO2lmKC0xPT09aSl0aHJvdyBuZXcgRXJyb3Iobik7cmV0dXJuIGkrZS5sZW5ndGgtMX1mdW5jdGlvbiB5KEEsZSx0LG4pe3ZvaWQgMD09PW4mJihuPSI+Iik7dmFyIGk9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuO3ZvaWQgMD09PXQmJih0PSI+Iik7Zm9yKHZhciBpPSIiLHI9ZTtyPEEubGVuZ3RoO3IrKyl7dmFyIG89QVtyXTtpZihuKW89PT1uJiYobj0iIik7ZWxzZSBpZignIic9PT1vfHwiJyI9PT1vKW49bztlbHNlIGlmKG89PT10WzBdKXtpZighdFsxXSlyZXR1cm57ZGF0YTppLGluZGV4OnJ9O2lmKEFbcisxXT09PXRbMV0pcmV0dXJue2RhdGE6aSxpbmRleDpyfX1lbHNlIlx0Ij09PW8mJihvPSIgIik7aSs9b319KEEsZSsxLG4pO2lmKGkpe3ZhciByPWkuZGF0YSxvPWkuaW5kZXgscz1yLnNlYXJjaCgvXHMvKSxhPXIsQj0hMDstMSE9PXMmJihhPXIuc3Vic3RyaW5nKDAscykscj1yLnN1YnN0cmluZyhzKzEpLnRyaW1TdGFydCgpKTt2YXIgYz1hO2lmKHQpe3ZhciBnPWEuaW5kZXhPZigiOiIpOy0xIT09ZyYmKEI9KGE9YS5zdWJzdHIoZysxKSkhPT1pLmRhdGEuc3Vic3RyKGcrMSkpfXJldHVybnt0YWdOYW1lOmEsdGFnRXhwOnIsY2xvc2VJbmRleDpvLGF0dHJFeHBQcmVzZW50OkIscmF3VGFnTmFtZTpjfX19ZnVuY3Rpb24gVChBLGUsdCl7Zm9yKHZhciBuPXQsaT0xO3Q8QS5sZW5ndGg7dCsrKWlmKCI8Ij09PUFbdF0paWYoIi8iPT09QVt0KzFdKXt2YXIgcj1VKEEsIj4iLHQsZSsiIGlzIG5vdCBjbG9zZWQiKTtpZihBLnN1YnN0cmluZyh0KzIscikudHJpbSgpPT09ZSYmMD09LS1pKXJldHVybnt0YWdDb250ZW50OkEuc3Vic3RyaW5nKG4sdCksaTpyfTt0PXJ9ZWxzZSBpZigiPyI9PT1BW3QrMV0pdD1VKEEsIj8+Iix0KzEsIlN0b3BOb2RlIGlzIG5vdCBjbG9zZWQuIik7ZWxzZSBpZigiIS0tIj09PUEuc3Vic3RyKHQrMSwzKSl0PVUoQSwiLS1ceDNlIix0KzMsIlN0b3BOb2RlIGlzIG5vdCBjbG9zZWQuIik7ZWxzZSBpZigiIVsiPT09QS5zdWJzdHIodCsxLDIpKXQ9VShBLCJdXT4iLHQsIlN0b3BOb2RlIGlzIG5vdCBjbG9zZWQuIiktMjtlbHNle3ZhciBvPXkoQSx0LCI+Iik7byYmKChvJiZvLnRhZ05hbWUpPT09ZSYmIi8iIT09by50YWdFeHBbby50YWdFeHAubGVuZ3RoLTFdJiZpKyssdD1vLmNsb3NlSW5kZXgpfX1mdW5jdGlvbiB4KEEsZSx0KXtpZihlJiYic3RyaW5nIj09dHlwZW9mIEEpe3ZhciBuPUEudHJpbSgpO3JldHVybiJ0cnVlIj09PW58fCJmYWxzZSIhPT1uJiZmdW5jdGlvbihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e307aWYoZT1PYmplY3QuYXNzaWduKHt9LGwsZSksIUF8fCJzdHJpbmciIT10eXBlb2YgQSlyZXR1cm4gQTtsZXQgdD1BLnRyaW0oKTtpZih2b2lkIDAhPT1lLnNraXBMaWtlJiZlLnNraXBMaWtlLnRlc3QodCkpcmV0dXJuIEE7aWYoIjAiPT09QSlyZXR1cm4gMDtpZihlLmhleCYmUS50ZXN0KHQpKXJldHVybiBmdW5jdGlvbihBKXtpZihwYXJzZUludClyZXR1cm4gcGFyc2VJbnQoQSwxNik7aWYoTnVtYmVyLnBhcnNlSW50KXJldHVybiBOdW1iZXIucGFyc2VJbnQoQSwxNik7aWYod2luZG93JiZ3aW5kb3cucGFyc2VJbnQpcmV0dXJuIHdpbmRvdy5wYXJzZUludChBLDE2KTt0aHJvdyBuZXcgRXJyb3IoInBhcnNlSW50LCBOdW1iZXIucGFyc2VJbnQsIHdpbmRvdy5wYXJzZUludCBhcmUgbm90IHN1cHBvcnRlZCIpfSh0KTtpZigtMSE9PXQuc2VhcmNoKC8uK1tlRV0uKy8pKXJldHVybiBmdW5jdGlvbihBLGUsdCl7aWYoIXQuZU5vdGF0aW9uKXJldHVybiBBO2NvbnN0IG49ZS5tYXRjaChoKTtpZihuKXtsZXQgaT1uWzFdfHwiIjtjb25zdCByPS0xPT09blszXS5pbmRleE9mKCJlIik/IkUiOiJlIixvPW5bMl0scz1pP0Fbby5sZW5ndGgrMV09PT1yOkFbby5sZW5ndGhdPT09cjtyZXR1cm4gby5sZW5ndGg+MSYmcz9BOjEhPT1vLmxlbmd0aHx8IW5bM10uc3RhcnRzV2l0aCgiLiIuY29uY2F0KHIpKSYmblszXVswXSE9PXI/dC5sZWFkaW5nWmVyb3MmJiFzPyhlPShuWzFdfHwiIikrblszXSxOdW1iZXIoZSkpOkE6TnVtYmVyKGUpfXJldHVybiBBfShBLHQsZSk7e2NvbnN0IGk9dS5leGVjKHQpO2lmKGkpe2NvbnN0IHI9aVsxXXx8IiIsbz1pWzJdO2xldCBzPShuPWlbM10pJiYtMSE9PW4uaW5kZXhPZigiLiIpPygiLiI9PT0obj1uLnJlcGxhY2UoLzArJC8sIiIpKT9uPSIwIjoiLiI9PT1uWzBdP249IjAiK246Ii4iPT09bltuLmxlbmd0aC0xXSYmKG49bi5zdWJzdHJpbmcoMCxuLmxlbmd0aC0xKSksbik6bjtjb25zdCBhPXI/Ii4iPT09QVtvLmxlbmd0aCsxXToiLiI9PT1BW28ubGVuZ3RoXTtpZighZS5sZWFkaW5nWmVyb3MmJihvLmxlbmd0aD4xfHwxPT09by5sZW5ndGgmJiFhKSlyZXR1cm4gQTt7Y29uc3Qgbj1OdW1iZXIodCksaT1TdHJpbmcobik7aWYoMD09PW58fC0wPT09bilyZXR1cm4gbjtpZigtMSE9PWkuc2VhcmNoKC9bZUVdLykpcmV0dXJuIGUuZU5vdGF0aW9uP246QTtpZigtMSE9PXQuaW5kZXhPZigiLiIpKXJldHVybiIwIj09PWl8fGk9PT1zfHxpPT09IiIuY29uY2F0KHIpLmNvbmNhdChzKT9uOkE7bGV0IGE9bz9zOnQ7cmV0dXJuIG8/YT09PWl8fHIrYT09PWk/bjpBOmE9PT1pfHxhPT09citpP246QX19cmV0dXJuIEF9dmFyIG59KEEsdCl9cmV0dXJuIHZvaWQgMCE9PUE/QToiIn12YXIgUj1hLmdldE1ldGFEYXRhU3ltYm9sKCk7ZnVuY3Rpb24gRyhBLGUpe3JldHVybiBmdW5jdGlvbiBBKGUsdCxuKXtmb3IodmFyIGkscj17fSxvPTA7bzxlLmxlbmd0aDtvKyspe3ZhciBzLGE9ZVtvXSxCPVMoYSk7aWYocz12b2lkIDA9PT1uP0I6bisiLiIrQixCPT09dC50ZXh0Tm9kZU5hbWUpdm9pZCAwPT09aT9pPWFbQl06aSs9IiIrYVtCXTtlbHNle2lmKHZvaWQgMD09PUIpY29udGludWU7aWYoYVtCXSl7dmFyIGM9QShhW0JdLHQscyksZz1IKGMsdCk7dm9pZCAwIT09YVtSXSYmKGNbUl09YVtSXSksYVsiOkAiXT9iKGMsYVsiOkAiXSxzLHQpOjEhPT1PYmplY3Qua2V5cyhjKS5sZW5ndGh8fHZvaWQgMD09PWNbdC50ZXh0Tm9kZU5hbWVdfHx0LmFsd2F5c0NyZWF0ZVRleHROb2RlPzA9PT1PYmplY3Qua2V5cyhjKS5sZW5ndGgmJih0LmFsd2F5c0NyZWF0ZVRleHROb2RlP2NbdC50ZXh0Tm9kZU5hbWVdPSIiOmM9IiIpOmM9Y1t0LnRleHROb2RlTmFtZV0sdm9pZCAwIT09cltCXSYmci5oYXNPd25Qcm9wZXJ0eShCKT8oQXJyYXkuaXNBcnJheShyW0JdKXx8KHJbQl09W3JbQl1dKSxyW0JdLnB1c2goYykpOnQuaXNBcnJheShCLHMsZyk/cltCXT1bY106cltCXT1jfX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiBpP2kubGVuZ3RoPjAmJihyW3QudGV4dE5vZGVOYW1lXT1pKTp2b2lkIDAhPT1pJiYoclt0LnRleHROb2RlTmFtZV09aSkscn0oQSxlKX1mdW5jdGlvbiBTKEEpe2Zvcih2YXIgZT1PYmplY3Qua2V5cyhBKSx0PTA7dDxlLmxlbmd0aDt0Kyspe3ZhciBuPWVbdF07aWYoIjpAIiE9PW4pcmV0dXJuIG59fWZ1bmN0aW9uIGIoQSxlLHQsbil7aWYoZSlmb3IodmFyIGk9T2JqZWN0LmtleXMoZSkscj1pLmxlbmd0aCxvPTA7bzxyO28rKyl7dmFyIHM9aVtvXTtuLmlzQXJyYXkocyx0KyIuIitzLCEwLCEwKT9BW3NdPVtlW3NdXTpBW3NdPWVbc119fWZ1bmN0aW9uIEgoQSxlKXt2YXIgdD1lLnRleHROb2RlTmFtZSxuPU9iamVjdC5rZXlzKEEpLmxlbmd0aDtyZXR1cm4gMD09PW58fCEoMSE9PW58fCFBW3RdJiYiYm9vbGVhbiIhPXR5cGVvZiBBW3RdJiYwIT09QVt0XSl9dmFyIHY9e2FsbG93Qm9vbGVhbkF0dHJpYnV0ZXM6ITEsdW5wYWlyZWRUYWdzOltdfTtmdW5jdGlvbiBrKEEpe3JldHVybiIgIj09PUF8fCJcdCI9PT1BfHwiXG4iPT09QXx8IlxyIj09PUF9ZnVuY3Rpb24gaihBLGUpe2Zvcih2YXIgdD1lO2U8QS5sZW5ndGg7ZSsrKWlmKCI/IiE9QVtlXSYmIiAiIT1BW2VdKTtlbHNle3ZhciBuPUEuc3Vic3RyKHQsZS10KTtpZihlPjUmJiJ4bWwiPT09bilyZXR1cm4gVigiSW52YWxpZFhtbCIsIlhNTCBkZWNsYXJhdGlvbiBhbGxvd2VkIG9ubHkgYXQgdGhlIHN0YXJ0IG9mIHRoZSBkb2N1bWVudC4iLEsoQSxlKSk7aWYoIj8iPT1BW2VdJiYiPiI9PUFbZSsxXSl7ZSsrO2JyZWFrfX1yZXR1cm4gZX1mdW5jdGlvbiBKKEEsZSl7aWYoQS5sZW5ndGg+ZSs1JiYiLSI9PT1BW2UrMV0mJiItIj09PUFbZSsyXSl7Zm9yKGUrPTM7ZTxBLmxlbmd0aDtlKyspaWYoIi0iPT09QVtlXSYmIi0iPT09QVtlKzFdJiYiPiI9PT1BW2UrMl0pe2UrPTI7YnJlYWt9fWVsc2UgaWYoQS5sZW5ndGg+ZSs4JiYiRCI9PT1BW2UrMV0mJiJPIj09PUFbZSsyXSYmIkMiPT09QVtlKzNdJiYiVCI9PT1BW2UrNF0mJiJZIj09PUFbZSs1XSYmIlAiPT09QVtlKzZdJiYiRSI9PT1BW2UrN10pe3ZhciB0PTE7Zm9yKGUrPTg7ZTxBLmxlbmd0aDtlKyspaWYoIjwiPT09QVtlXSl0Kys7ZWxzZSBpZigiPiI9PT1BW2VdJiYwPT0tLXQpYnJlYWt9ZWxzZSBpZihBLmxlbmd0aD5lKzkmJiJbIj09PUFbZSsxXSYmIkMiPT09QVtlKzJdJiYiRCI9PT1BW2UrM10mJiJBIj09PUFbZSs0XSYmIlQiPT09QVtlKzVdJiYiQSI9PT1BW2UrNl0mJiJbIj09PUFbZSs3XSlmb3IoZSs9ODtlPEEubGVuZ3RoO2UrKylpZigiXSI9PT1BW2VdJiYiXSI9PT1BW2UrMV0mJiI+Ij09PUFbZSsyXSl7ZSs9MjticmVha31yZXR1cm4gZX1mdW5jdGlvbiB6KEEsZSl7Zm9yKHZhciB0PSIiLG49IiIsaT0hMTtlPEEubGVuZ3RoO2UrKyl7aWYoJyInPT09QVtlXXx8IiciPT09QVtlXSkiIj09PW4/bj1BW2VdOm4hPT1BW2VdfHwobj0iIik7ZWxzZSBpZigiPiI9PT1BW2VdJiYiIj09PW4pe2k9ITA7YnJlYWt9dCs9QVtlXX1yZXR1cm4iIj09PW4mJnt2YWx1ZTp0LGluZGV4OmUsdGFnQ2xvc2VkOml9fXZhciBMPW5ldyBSZWdFeHAoIihcXHMqKShbXlxccz1dKykoXFxzKj0pPyhcXHMqKFsnXCJdKSgoW1xcc1xcU10pKj8pXFw1KT8iLCJnIik7ZnVuY3Rpb24gUChBLGUpe2Zvcih2YXIgdD1yKEEsTCksbj17fSxpPTA7aTx0Lmxlbmd0aDtpKyspe2lmKDA9PT10W2ldWzFdLmxlbmd0aClyZXR1cm4gVigiSW52YWxpZEF0dHIiLCJBdHRyaWJ1dGUgJyIrdFtpXVsyXSsiJyBoYXMgbm8gc3BhY2UgaW4gc3RhcnRpbmcuIixYKHRbaV0pKTtpZih2b2lkIDAhPT10W2ldWzNdJiZ2b2lkIDA9PT10W2ldWzRdKXJldHVybiBWKCJJbnZhbGlkQXR0ciIsIkF0dHJpYnV0ZSAnIit0W2ldWzJdKyInIGlzIHdpdGhvdXQgdmFsdWUuIixYKHRbaV0pKTtpZih2b2lkIDA9PT10W2ldWzNdJiYhZS5hbGxvd0Jvb2xlYW5BdHRyaWJ1dGVzKXJldHVybiBWKCJJbnZhbGlkQXR0ciIsImJvb2xlYW4gYXR0cmlidXRlICciK3RbaV1bMl0rIicgaXMgbm90IGFsbG93ZWQuIixYKHRbaV0pKTt2YXIgbz10W2ldWzJdO2lmKCFXKG8pKXJldHVybiBWKCJJbnZhbGlkQXR0ciIsIkF0dHJpYnV0ZSAnIitvKyInIGlzIGFuIGludmFsaWQgbmFtZS4iLFgodFtpXSkpO2lmKG4uaGFzT3duUHJvcGVydHkobykpcmV0dXJuIFYoIkludmFsaWRBdHRyIiwiQXR0cmlidXRlICciK28rIicgaXMgcmVwZWF0ZWQuIixYKHRbaV0pKTtuW29dPTF9cmV0dXJuITB9ZnVuY3Rpb24gTyhBLGUpe2lmKCI7Ij09PUFbKytlXSlyZXR1cm4tMTtpZigiIyI9PT1BW2VdKXJldHVybiBmdW5jdGlvbihBLGUpe3ZhciB0PS9cZC87Zm9yKCJ4Ij09PUFbZV0mJihlKyssdD0vW1xkYS1mQS1GXS8pO2U8QS5sZW5ndGg7ZSsrKXtpZigiOyI9PT1BW2VdKXJldHVybiBlO2lmKCFBW2VdLm1hdGNoKHQpKWJyZWFrfXJldHVybi0xfShBLCsrZSk7Zm9yKHZhciB0PTA7ZTxBLmxlbmd0aDtlKyssdCsrKWlmKCEoQVtlXS5tYXRjaCgvXHcvKSYmdDwyMCkpe2lmKCI7Ij09PUFbZV0pYnJlYWs7cmV0dXJuLTF9cmV0dXJuIGV9ZnVuY3Rpb24gVihBLGUsdCl7cmV0dXJue2Vycjp7Y29kZTpBLG1zZzplLGxpbmU6dC5saW5lfHx0LGNvbDp0LmNvbH19fWZ1bmN0aW9uIFcoQSl7cmV0dXJuIHMoQSl9ZnVuY3Rpb24gSyhBLGUpe3ZhciB0PUEuc3Vic3RyaW5nKDAsZSkuc3BsaXQoL1xyP1xuLyk7cmV0dXJue2xpbmU6dC5sZW5ndGgsY29sOnRbdC5sZW5ndGgtMV0ubGVuZ3RoKzF9fWZ1bmN0aW9uIFgoQSl7cmV0dXJuIEEuc3RhcnRJbmRleCtBWzFdLmxlbmd0aH12YXIgWj1mdW5jdGlvbigpe2Z1bmN0aW9uIEEoQSl7dGhpcy5leHRlcm5hbEVudGl0aWVzPXt9LHRoaXMub3B0aW9ucz1mdW5jdGlvbihBKXtyZXR1cm4gT2JqZWN0LmFzc2lnbih7fSx0LEEpfShBKX12YXIgZT1BLnByb3RvdHlwZTtyZXR1cm4gZS5wYXJzZT1mdW5jdGlvbihBLGUpe2lmKCJzdHJpbmciIT10eXBlb2YgQSYmQS50b1N0cmluZylBPUEudG9TdHJpbmcoKTtlbHNlIGlmKCJzdHJpbmciIT10eXBlb2YgQSl0aHJvdyBuZXcgRXJyb3IoIlhNTCBkYXRhIGlzIGFjY2VwdGVkIGluIFN0cmluZyBvciBCeXRlc1tdIGZvcm0uIik7aWYoZSl7ITA9PT1lJiYoZT17fSk7dmFyIHQ9ZnVuY3Rpb24oQSxlKXtlPU9iamVjdC5hc3NpZ24oe30sdixlKTt2YXIgdD1bXSxuPSExLGk9ITE7Ilx1ZmVmZiI9PT1BWzBdJiYoQT1BLnN1YnN0cigxKSk7Zm9yKHZhciByPTA7cjxBLmxlbmd0aDtyKyspaWYoIjwiPT09QVtyXSYmIj8iPT09QVtyKzFdKXtpZigocj1qKEEscis9MikpLmVycilyZXR1cm4gcn1lbHNle2lmKCI8IiE9PUFbcl0pe2lmKGsoQVtyXSkpY29udGludWU7cmV0dXJuIFYoIkludmFsaWRDaGFyIiwiY2hhciAnIitBW3JdKyInIGlzIG5vdCBleHBlY3RlZC4iLEsoQSxyKSl9dmFyIG89cjtpZigiISI9PT1BWysrcl0pe3I9SihBLHIpO2NvbnRpbnVlfXZhciBhPSExOyIvIj09PUFbcl0mJihhPSEwLHIrKyk7Zm9yKHZhciBCPSIiO3I8QS5sZW5ndGgmJiI+IiE9PUFbcl0mJiIgIiE9PUFbcl0mJiJcdCIhPT1BW3JdJiYiXG4iIT09QVtyXSYmIlxyIiE9PUFbcl07cisrKUIrPUFbcl07aWYoIi8iPT09KEI9Qi50cmltKCkpW0IubGVuZ3RoLTFdJiYoQj1CLnN1YnN0cmluZygwLEIubGVuZ3RoLTEpLHItLSksIXMoQikpcmV0dXJuIFYoIkludmFsaWRUYWciLDA9PT1CLnRyaW0oKS5sZW5ndGg/IkludmFsaWQgc3BhY2UgYWZ0ZXIgJzwnLiI6IlRhZyAnIitCKyInIGlzIGFuIGludmFsaWQgbmFtZS4iLEsoQSxyKSk7dmFyIGM9eihBLHIpO2lmKCExPT09YylyZXR1cm4gVigiSW52YWxpZEF0dHIiLCJBdHRyaWJ1dGVzIGZvciAnIitCKyInIGhhdmUgb3BlbiBxdW90ZS4iLEsoQSxyKSk7dmFyIGc9Yy52YWx1ZTtpZihyPWMuaW5kZXgsIi8iPT09Z1tnLmxlbmd0aC0xXSl7dmFyIEU9ci1nLmxlbmd0aCxRPVAoZz1nLnN1YnN0cmluZygwLGcubGVuZ3RoLTEpLGUpO2lmKCEwIT09USlyZXR1cm4gVihRLmVyci5jb2RlLFEuZXJyLm1zZyxLKEEsRStRLmVyci5saW5lKSk7bj0hMH1lbHNlIGlmKGEpe2lmKCFjLnRhZ0Nsb3NlZClyZXR1cm4gVigiSW52YWxpZFRhZyIsIkNsb3NpbmcgdGFnICciK0IrIicgZG9lc24ndCBoYXZlIHByb3BlciBjbG9zaW5nLiIsSyhBLHIpKTtpZihnLnRyaW0oKS5sZW5ndGg+MClyZXR1cm4gVigiSW52YWxpZFRhZyIsIkNsb3NpbmcgdGFnICciK0IrIicgY2FuJ3QgaGF2ZSBhdHRyaWJ1dGVzIG9yIGludmFsaWQgc3RhcnRpbmcuIixLKEEsbykpO2lmKDA9PT10Lmxlbmd0aClyZXR1cm4gVigiSW52YWxpZFRhZyIsIkNsb3NpbmcgdGFnICciK0IrIicgaGFzIG5vdCBiZWVuIG9wZW5lZC4iLEsoQSxvKSk7dmFyIHU9dC5wb3AoKTtpZihCIT09dS50YWdOYW1lKXt2YXIgbD1LKEEsdS50YWdTdGFydFBvcyk7cmV0dXJuIFYoIkludmFsaWRUYWciLCJFeHBlY3RlZCBjbG9zaW5nIHRhZyAnIit1LnRhZ05hbWUrIicgKG9wZW5lZCBpbiBsaW5lICIrbC5saW5lKyIsIGNvbCAiK2wuY29sKyIpIGluc3RlYWQgb2YgY2xvc2luZyB0YWcgJyIrQisiJy4iLEsoQSxvKSl9MD09dC5sZW5ndGgmJihpPSEwKX1lbHNle3ZhciBoPVAoZyxlKTtpZighMCE9PWgpcmV0dXJuIFYoaC5lcnIuY29kZSxoLmVyci5tc2csSyhBLHItZy5sZW5ndGgraC5lcnIubGluZSkpO2lmKCEwPT09aSlyZXR1cm4gVigiSW52YWxpZFhtbCIsIk11bHRpcGxlIHBvc3NpYmxlIHJvb3Qgbm9kZXMgZm91bmQuIixLKEEscikpOy0xIT09ZS51bnBhaXJlZFRhZ3MuaW5kZXhPZihCKXx8dC5wdXNoKHt0YWdOYW1lOkIsdGFnU3RhcnRQb3M6b30pLG49ITB9Zm9yKHIrKztyPEEubGVuZ3RoO3IrKylpZigiPCI9PT1BW3JdKXtpZigiISI9PT1BW3IrMV0pe3I9SihBLCsrcik7Y29udGludWV9aWYoIj8iIT09QVtyKzFdKWJyZWFrO2lmKChyPWooQSwrK3IpKS5lcnIpcmV0dXJuIHJ9ZWxzZSBpZigiJiI9PT1BW3JdKXt2YXIgdz1PKEEscik7aWYoLTE9PXcpcmV0dXJuIFYoIkludmFsaWRDaGFyIiwiY2hhciAnJicgaXMgbm90IGV4cGVjdGVkLiIsSyhBLHIpKTtyPXd9ZWxzZSBpZighMD09PWkmJiFrKEFbcl0pKXJldHVybiBWKCJJbnZhbGlkWG1sIiwiRXh0cmEgdGV4dCBhdCB0aGUgZW5kIixLKEEscikpOyI8Ij09PUFbcl0mJnItLX1yZXR1cm4gbj8xPT10Lmxlbmd0aD9WKCJJbnZhbGlkVGFnIiwiVW5jbG9zZWQgdGFnICciK3RbMF0udGFnTmFtZSsiJy4iLEsoQSx0WzBdLnRhZ1N0YXJ0UG9zKSk6ISh0Lmxlbmd0aD4wKXx8VigiSW52YWxpZFhtbCIsIkludmFsaWQgJyIrSlNPTi5zdHJpbmdpZnkodC5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnRhZ05hbWV9KSksbnVsbCw0KS5yZXBsYWNlKC9ccj9cbi9nLCIiKSsiJyBmb3VuZC4iLHtsaW5lOjEsY29sOjF9KTpWKCJJbnZhbGlkWG1sIiwiU3RhcnQgdGFnIGV4cGVjdGVkLiIsMSl9KEEsZSk7aWYoITAhPT10KXRocm93IEVycm9yKHQuZXJyLm1zZysiOiIrdC5lcnIubGluZSsiOiIrdC5lcnIuY29sKX12YXIgbj1uZXcgQyh0aGlzLm9wdGlvbnMpO24uYWRkRXh0ZXJuYWxFbnRpdGllcyh0aGlzLmV4dGVybmFsRW50aXRpZXMpO3ZhciBpPW4ucGFyc2VYbWwoQSk7cmV0dXJuIHRoaXMub3B0aW9ucy5wcmVzZXJ2ZU9yZGVyfHx2b2lkIDA9PT1pP2k6RyhpLHRoaXMub3B0aW9ucyl9LGUuYWRkRW50aXR5PWZ1bmN0aW9uKEEsZSl7aWYoLTEhPT1lLmluZGV4T2YoIiYiKSl0aHJvdyBuZXcgRXJyb3IoIkVudGl0eSB2YWx1ZSBjYW4ndCBoYXZlICcmJyIpO2lmKC0xIT09QS5pbmRleE9mKCImIil8fC0xIT09QS5pbmRleE9mKCI7IikpdGhyb3cgbmV3IEVycm9yKCJBbiBlbnRpdHkgbXVzdCBiZSBzZXQgd2l0aG91dCAnJicgYW5kICc7Jy4gRWcuIHVzZSAnI3hEJyBmb3IgJyYjeEQ7JyIpO2lmKCImIj09PWUpdGhyb3cgbmV3IEVycm9yKCJBbiBlbnRpdHkgd2l0aCB2YWx1ZSAnJicgaXMgbm90IHBlcm1pdHRlZCIpO3RoaXMuZXh0ZXJuYWxFbnRpdGllc1tBXT1lfSxBLmdldE1ldGFEYXRhU3ltYm9sPWZ1bmN0aW9uKCl7cmV0dXJuIGEuZ2V0TWV0YURhdGFTeW1ib2woKX0sQX0oKTtyZXR1cm4gZX0pKCksQS5leHBvcnRzPW4oKX0sZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlKXt2YXIgdD1PYmplY3Qua2V5cyhBKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2UmJihuPW4uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihBLGUpLmVudW1lcmFibGV9KSkpLHQucHVzaC5hcHBseSh0LG4pfXJldHVybiB0fWZ1bmN0aW9uIGkoQSl7Zm9yKHZhciBlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHQ9bnVsbCE9YXJndW1lbnRzW2VdP2FyZ3VtZW50c1tlXTp7fTtlJTI/bihPYmplY3QodCksITApLmZvckVhY2goKGZ1bmN0aW9uKGUpe3IoQSxlLHRbZV0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModCkpOm4oT2JqZWN0KHQpKS5mb3JFYWNoKChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoQSxlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlKSl9KSl9cmV0dXJuIEF9ZnVuY3Rpb24gcihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IG89dCgxKSxzPXQoMTApLGE9dCgzKSxCPXQoMik7ZnVuY3Rpb24gYyhBKXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPUEsZS5zdHlsZS5kaXNwbGF5PSJoaWRkZW4iLGUuc3R5bGUud2lkdGg9IjEwMCUiLGUuc3R5bGUuYm94U2l6aW5nPSJib3JkZXItYm94IixlLnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIixlfWNvbnN0IGc9TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI7bGV0IEU9MDtjb25zdCBRPW5ldyBNYXA7Y2xhc3MgdXtjb25zdHJ1Y3RvcihBKXtyKHRoaXMsImN1c3RvbUlkIiwiandQb2ludGVyIiksdGhpcy5wb2ludGVySUQ9QX1zdGF0aWMgY3JlYXRlKCl7RSsrO2xldCBBPUU7RT09ZyYmKEU9MCk7bGV0IGU9bmV3IHUoQSk7cmV0dXJuIGUuaW5pdCgpLGV9c3RhdGljIHRvUG9pbnRlcihBKXtpZihjb25zb2xlLmRlYnVnKEEpLEEgaW5zdGFuY2VvZiB1KXJldHVybiBBO2xldCBlPUIudG9OdW1iZXIoQSk7cmV0dXJuIG5ldyB1KGU8PWc/ZTowKX1pbml0KCl7US5zZXQodGhpcy5wb2ludGVySUQsbnVsbCl9ZGVzdHJveSgpe1EuZGVsZXRlKHRoaXMucG9pbnRlcklEKX1nZXQgdmFsdWUoKXt0cnl7bGV0IEE9US5nZXQodGhpcy5wb2ludGVySUQpO3JldHVybiB2b2lkIDA9PT1BP251bGw6QX1jYXRjaChBKXtyZXR1cm4gbnVsbH19c2V0IHZhbHVlKEEpe1EuaGFzKHRoaXMucG9pbnRlcklEKSYmUS5zZXQodGhpcy5wb2ludGVySUQsQSl9andBcnJheUhhbmRsZXIoKXtyZXR1cm4gUS5oYXModGhpcy5wb2ludGVySUQpP251bGw9PT10aGlzLnZhbHVlPyJQb2ludGVyJmx0O251bGwmZ3Q7Ijp0aGlzLnZhbHVlIGluc3RhbmNlb2YgdT8iUG9pbnRlciZsdDsuLi4mZ3Q7Ijp0aGlzLnZhbHVlLmp3QXJyYXlIYW5kbGVyPyJQb2ludGVyJmx0OyIuY29uY2F0KHRoaXMudmFsdWUuandBcnJheUhhbmRsZXIoKSwiJmd0OyIpOiJQb2ludGVyJmx0OyIuY29uY2F0KHZtLmp3QXJyYXkuVHlwZS5kaXNwbGF5KHRoaXMudmFsdWUpLCImZ3Q7Iik6IlBvaW50ZXIifXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMucG9pbnRlcklELnRvU3RyaW5nKCl9dG9SZXBvcnRlckNvbnRlbnQoKXtsZXQgQT0hUS5oYXModGhpcy5wb2ludGVySUQpLGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZS5zdHlsZS5kaXNwbGF5PSJmbGV4IixlLnN0eWxlLmZsZXhEaXJlY3Rpb249ImNvbHVtbiIsZS5zdHlsZS5tYXhXaWR0aD0iMTAwJSI7bGV0IHQ9YygiUG9pbnRlciB8ICIuY29uY2F0KEE/IkludmFsaWQiOnRoaXMucG9pbnRlcklEKSk7aWYodC5zdHlsZS5vcGFjaXR5PSIwLjUiLGUuYXBwZW5kQ2hpbGQodCksIUEpe2xldCBBO3RyeXtBPW51bGw9PT10aGlzLnZhbHVlP2MoIm51bGwiKTp0aGlzLnZhbHVlIGluc3RhbmNlb2YgdT9jKCIoUG9pbnRlcikiKTp0aGlzLnZhbHVlLnRvUmVwb3J0ZXJDb250ZW50P3RoaXMudmFsdWUudG9SZXBvcnRlckNvbnRlbnQoKTpjKEIudG9TdHJpbmcoQSkucmVwbGFjZUFsbCgiJiIsIiZhbXA7IikucmVwbGFjZUFsbCgiPCIsIiZsdDsiKS5yZXBsYWNlQWxsKCI+IiwiJmd0OyIpLnJlcGxhY2VBbGwoJyInLCImcXVvdDsiKS5yZXBsYWNlQWxsKCInIiwiJiMwMzk7IikpfWNhdGNoKGUpe0E9YygiKFJlY3Vyc2l2ZSkiKX1BLnN0eWxlLm1heFdpZHRoPSIxMDAlIixBLnN0eWxlLm92ZXJmbG93PSJhdXRvIixlLmFwcGVuZENoaWxkKEEpfXJldHVybiBlfX1jb25zdCBsPXtUeXBlOnUsQmxvY2s6e2Jsb2NrVHlwZTpvLlJFUE9SVEVSLGZvcmNlT3V0cHV0VHlwZToiUG9pbnRlciIsZGlzYWJsZU1vbml0b3I6ITB9LEFyZ3VtZW50OntjaGVjazpbIlBvaW50ZXIiXSxleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMCxuZWdsZWN0VHlwZXM6WyJqd1BvaW50ZXIiXX0scG9pbnRlcnM6UX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7dm0uandQb2ludGVyPWwsdm0ucnVudGltZS5yZWdpc3RlclNlcmlhbGl6ZXIoImp3UG9pbnRlciIsQT0+W0EucG9pbnRlcklELFEuaGFzKEEucG9pbnRlcklEKV0sQT0+KEU9TWF0aC5tYXgoQVswXSsxLEUpLG5ldyBsLlR5cGUoQVswXSkpKSx2bS5ydW50aW1lLm9uKCJQUk9KRUNUX1NUQVJUIix0aGlzLmRlc3Ryb3lBbGwuYmluZCh0aGlzKSl9Z2V0SW5mbygpe3JldHVybntpZDoiandQb2ludGVyIixuYW1lOiJQb2ludGVycyIsY29sb3IxOiIjODUxMWQzIixtZW51SWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXlNQ0F5TUNJK0NpQWdQR1ZzYkdsd2MyVWdjM1I1YkdVOUluTjBjbTlyWlMxc2FXNWxhbTlwYmpvZ2NtOTFibVE3SUhCaGFXNTBMVzl5WkdWeU9pQm1hV3hzT3lCemRISnZhMlV0ZDJsa2RHZzZJREU3SUdacGJHdzZJSEpuWWlneE16TXNJREUzTENBeU1URXBPeUJ6ZEhKdmEyVTZJSEpuWWlneE1EWXNJREUwTENBeE5qa3BPeUlnWTNnOUlqRXdJaUJqZVQwaU1UQWlJSEo0UFNJNUxqVWlJSEo1UFNJNUxqVWlQand2Wld4c2FYQnpaVDRLSUNBOGNHRjBhQ0JrUFNKTklEVXVNakl6SURndU5UTWdReUEwTGpjek1pQTRMalV6SURRdU5EZzRJRGd1TnpjMklEUXVORGc0SURrdU1qWTFJRXdnTkM0ME9EZ2dNVEF1T0RneUlFTWdOQzQwT0RnZ01URXVNamMwSURRdU56TXlJREV4TGpRM0lEVXVNakl6SURFeExqUTNJRXdnT0M0NE9UZ2dNVEV1TkRjZ1F5QTVMamN3T1NBeE1TNDBOeUF4TUM0ek5qZ2dNVEl1TVRJNElERXdMak0yT0NBeE1pNDVOQ0JNSURFd0xqTTJPQ0F4TkM0ME1Ea2dReUF4TUM0ek5qZ2dNVFV1TXprZ01UQXVPRFUzSURFMUxqTTVJREV4TGpnek55QXhOQzQwTURrZ1RDQXhOQzQzTnpjZ01URXVORGNnUXlBeE5TNDNOVFlnTVRBdU5EZzVJREUxTGpjMU5pQTVMalV4TVNBeE5DNDNOemNnT0M0MU15Qk1JREV4TGpnek55QTFMalU1TVNCRElERXdMamcxTnlBMExqWXhJREV3TGpNMk9DQTBMall4SURFd0xqTTJPQ0ExTGpVNU1TQk1JREV3TGpNMk9DQTNMakEySUVNZ01UQXVNelk0SURjdU9EY3lJRGt1TnpBNUlEZ3VOVE1nT0M0NE9UZ2dPQzQxTXlCTUlEVXVNakl6SURndU5UTWdXaUlnWm1sc2JEMGlJMlptWmlJZ2MzUjViR1U5SW5OMGNtOXJaUzEzYVdSMGFEb2dNVHNpUGp3dmNHRjBhRDRLUEM5emRtYysiLGJsb2NrczpbaSh7b3Bjb2RlOiJjcmVhdGUiLHRleHQ6ImNyZWF0ZSBwb2ludGVyIn0sbC5CbG9jaykse29wY29kZToiY3JlYXRlQyIsdGV4dDoiY3JlYXRlIHBvaW50ZXIiLGJsb2NrVHlwZTpvLkNPTU1BTkR9LGkoe29wY29kZToiY3JlYXRlRGF0YSIsdGV4dDoiY3JlYXRlIHBvaW50ZXIgdG8gZGF0YSBbREFUQV0iLGFyZ3VtZW50czp7REFUQTp7dHlwZTphLlNUUklORyxkZWZhdWx0VmFsdWU6ImRhdGEiLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwfX19LGwuQmxvY2spLHtvcGNvZGU6ImNyZWF0ZURhdGFDIix0ZXh0OiJjcmVhdGUgcG9pbnRlciB0byBkYXRhIFtEQVRBXSIsYmxvY2tUeXBlOm8uQ09NTUFORCxhcmd1bWVudHM6e0RBVEE6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJkYXRhIixleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMH19fSwiLS0tIixpKHtvcGNvZGU6ImZpbmRJRCIsdGV4dDoiZ2V0IHBvaW50ZXIgb2YgSUQgW0lEXSIsYXJndW1lbnRzOntJRDp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSxsLkJsb2NrKSwiLS0tIix7b3Bjb2RlOiJnZXREYXRhIix0ZXh0OiJ2YWx1ZSBvZiBbUE9JTlRFUl0iLGJsb2NrVHlwZTpvLlJFUE9SVEVSLGFsbG93RHJvcEFueXdoZXJlOiEwLGFyZ3VtZW50czp7UE9JTlRFUjpsLkFyZ3VtZW50fX0se29wY29kZToiZ2V0SUQiLHRleHQ6IklEIG9mIFtQT0lOVEVSXSIsYmxvY2tUeXBlOm8uUkVQT1JURVIsYXJndW1lbnRzOntQT0lOVEVSOmwuQXJndW1lbnR9fSx7b3Bjb2RlOiJpc0Rlc3Ryb3llZCIsdGV4dDoiaXMgW1BPSU5URVJdIHZhbGlkPyIsYmxvY2tUeXBlOm8uQk9PTEVBTixhcmd1bWVudHM6e1BPSU5URVI6bC5Bcmd1bWVudH19LCItLS0iLHtvcGNvZGU6InNldERhdGEiLHRleHQ6InNldCBbUE9JTlRFUl0gdG8gW0RBVEFdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7UE9JTlRFUjpsLkFyZ3VtZW50LERBVEE6e3R5cGU6YS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJkYXRhIixleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMH19fSx7b3Bjb2RlOiJjaGFuZ2VEYXRhIix0ZXh0OiJjaGFuZ2UgW1BPSU5URVJdIGJ5IFtBTU9VTlRdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7UE9JTlRFUjpsLkFyZ3VtZW50LEFNT1VOVDp7dHlwZTphLk5VTUJFUixkZWZhdWx0VmFsdWU6MX19fSwiLS0tIix7b3Bjb2RlOiJkZXN0cm95Iix0ZXh0OiJkZWxldGUgW1BPSU5URVJdIixibG9ja1R5cGU6by5DT01NQU5ELGFyZ3VtZW50czp7UE9JTlRFUjpsLkFyZ3VtZW50fX0se29wY29kZToiZGVzdHJveUFsbCIsdGV4dDoiZGVsZXRlIGFsbCBwb2ludGVycyIsYmxvY2tUeXBlOm8uQ09NTUFORH0sIi0tLSIse29wY29kZToibGFzdElEIix0ZXh0OiJsYXN0IHBvaW50ZXIgSUQiLGJsb2NrVHlwZTpvLlJFUE9SVEVSfSx7b3Bjb2RlOiJpc1BvaW50ZXIiLHRleHQ6ImlzIFtJTlBVVF0gYSBwb2ludGVyPyIsYmxvY2tUeXBlOm8uQk9PTEVBTixhcmd1bWVudHM6e0lOUFVUOmwuQXJndW1lbnR9fSwuLi52bS5ydW50aW1lLmV4dF9qd0FycmF5P1siLS0tIl06W10saSh7b3Bjb2RlOiJhbGxQb2ludGVycyIsdGV4dDoiYWxsIHBvaW50ZXJzIixibG9ja1R5cGU6by5SRVBPUlRFUixibG9ja1NoYXBlOnMuU1FVQVJFLGhpZGVGcm9tUGFsZXR0ZTohdm0ucnVudGltZS5leHRfandBcnJheX0sdm0uandBcnJheT92bS5qd0FycmF5LkJsb2NrOnt9KV19fWNyZWF0ZSgpe3JldHVybiBsLlR5cGUuY3JlYXRlKCl9Y3JlYXRlQygpe2wuVHlwZS5jcmVhdGUoKX1jcmVhdGVEYXRhKEEpe2xldHtEQVRBOmV9PUEsdD1sLlR5cGUuY3JlYXRlKCk7cmV0dXJuIHQudmFsdWU9ZSx0fWNyZWF0ZURhdGFDKEEpe2xldHtEQVRBOmV9PUE7bC5UeXBlLmNyZWF0ZSgpLnZhbHVlPWV9ZmluZElEKEEpe2xldHtJRDplfT1BO3JldHVybiBlPUIudG9OdW1iZXIoZSksUS5oYXMoZSk/bmV3IGwuVHlwZShlKTpuZXcgbC5UeXBlKDApfWdldERhdGEoQSl7bGV0e1BPSU5URVI6ZX09QTtyZXR1cm4gZT1sLlR5cGUudG9Qb2ludGVyKGUpLGUudmFsdWV9Z2V0SUQoQSl7bGV0e1BPSU5URVI6ZX09QTtyZXR1cm4gZT1sLlR5cGUudG9Qb2ludGVyKGUpLGUucG9pbnRlcklEfWlzRGVzdHJveWVkKEEpe2xldHtQT0lOVEVSOmV9PUE7cmV0dXJuIGU9bC5UeXBlLnRvUG9pbnRlcihlKSxRLmhhcyhlLnBvaW50ZXJJRCl9c2V0RGF0YShBKXtsZXR7UE9JTlRFUjplLERBVEE6dH09QTtlPWwuVHlwZS50b1BvaW50ZXIoZSksZS52YWx1ZT10fWNoYW5nZURhdGEoQSl7bGV0e1BPSU5URVI6ZSxBTU9VTlQ6dH09QTtlPWwuVHlwZS50b1BvaW50ZXIoZSksdD1CLnRvTnVtYmVyKHQpLGUudmFsdWU9Qi50b051bWJlcihlLnZhbHVlKSt0fWRlc3Ryb3koQSl7bGV0e1BPSU5URVI6ZX09QTtlPWwuVHlwZS50b1BvaW50ZXIoZSksZS5kZXN0cm95KCl9ZGVzdHJveUFsbCgpe1EuY2xlYXIoKX1sYXN0SUQoKXtyZXR1cm4gRX1pc1BvaW50ZXIoQSl7bGV0e1BPSU5URVI6ZX09QTtyZXR1cm4gZSBpbnN0YW5jZW9mIGwuVHlwZX1hbGxQb2ludGVycygpe2lmKCF2bS5qd0FycmF5KXJldHVybiAwO2xldCBBPUFycmF5LmZyb20oUS5rZXlzKCkpLm1hcChBPT5uZXcgbC5UeXBlKEEpKTtyZXR1cm4gdm0uandBcnJheS5UeXBlLnRvQXJyYXkoQSl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0KSxpPXQoMSkscj10KDMpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXtjb25zb2xlLmxvZygiV2VsY29tZSB0byB0aGUgT09QIGV4dGVuc2lvbiEiKSx0aGlzLnJ1bnRpbWU9QSx0aGlzLmNsYXNzZXM9e30sdGhpcy5vYmplY3RzPXt9fWdldEluZm8oKXtyZXR1cm4gY29uc29sZS5sb2coIkdldHRpbmcgaW5mbyBmb3IgdGhlIE9PUCBleHRlbnNpb24hIikse2lkOiJqd1N0cnVjdHMiLG5hbWU6IlN0cnVjdHMiLGNvbG9yMToiIzdkZGNmZiIsY29sb3IyOiIjNGE5OGZmIixibG9ja3M6W3tvcGNvZGU6ImNyZWF0ZUNsYXNzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6bih7aWQ6Imp3U3RydWN0cy5jcmVhdGVDbGFzcyIsZGVmYXVsdDoiQ3JlYXRlIGNsYXNzIFtOQU1FXSIsZGVzY3JpcHRpb246IkNyZWF0ZSBhIGNsYXNzIn0pLGFyZ3VtZW50czp7TkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Ik15Q2xhc3MifX19LHtvcGNvZGU6ImNyZWF0ZUNsYXNzUHJvcGVydHkiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDpuKHtpZDoiandTdHJ1Y3RzLmNyZWF0ZUNsYXNzUHJvcGVydHkiLGRlZmF1bHQ6IkNyZWF0ZSBjbGFzcyBwcm9wZXJ0eSBbTkFNRV0gd2l0aCB2YWx1ZSBbVkFMVUVdIGluIGNsYXNzIFtDTEFTU10iLGRlc2NyaXB0aW9uOiJDcmVhdGUgYSBjbGFzcyBwcm9wZXJ0eSJ9KSxhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteVByb3BlcnR5In0sVkFMVUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteVZhbHVlIn0sQ0xBU1M6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJNeUNsYXNzIn19fSwiLS0tIix7b3Bjb2RlOiJuZXdPYmplY3QiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDpuKHtpZDoiandTdHJ1Y3RzLm5ld09iamVjdCIsZGVmYXVsdDoiQ3JlYXRlIG9iamVjdCBbTkFNRV0gZnJvbSBjbGFzcyBbQ0xBU1NdIixkZXNjcmlwdGlvbjoiQ3JlYXRlIGEgbmV3IG9iamVjdCJ9KSxhcmd1bWVudHM6e05BTUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteU9iamVjdCJ9LENMQVNTOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiTXlDbGFzcyJ9fX0se29wY29kZToic2V0T2JqZWN0UHJvcGVydHkiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDpuKHtpZDoiandTdHJ1Y3RzLnNldE9iamVjdFByb3BlcnR5IixkZWZhdWx0OiJTZXQgcHJvcGVydHkgW1BST1BFUlRZXSBvZiBvYmplY3QgW09CSkVDVF0gdG8gW1ZBTFVFXSIsZGVzY3JpcHRpb246IlNldCBhIHByb3BlcnR5IG9mIGFuIG9iamVjdCJ9KSxhcmd1bWVudHM6e1BST1BFUlRZOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXlQcm9wZXJ0eSJ9LE9CSkVDVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Im15T2JqZWN0In0sVkFMVUU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteVZhbHVlIn19fSx7b3Bjb2RlOiJyZXR1cm5PYmplY3RQcm9wZXJ0eSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsdGV4dDpuKHtpZDoiandTdHJ1Y3RzLnJldHVybk9iamVjdFByb3BlcnR5IixkZWZhdWx0OiJQcm9wZXJ0eSBbUFJPUEVSVFldIG9mIG9iamVjdCBbT0JKRUNUXSIsZGVzY3JpcHRpb246IlJldHVybiBhIHByb3BlcnR5IG9mIGFuIG9iamVjdCJ9KSxhcmd1bWVudHM6e1BST1BFUlRZOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXlQcm9wZXJ0eSJ9LE9CSkVDVDp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Im15T2JqZWN0In19fSwiLS0tIix7b3Bjb2RlOiJjcmVhdGVDbGFzc01ldGhvZCIsYmxvY2tUeXBlOmkuSEFULHRleHQ6bih7aWQ6Imp3U3RydWN0cy5jcmVhdGVDbGFzc01ldGhvZCIsZGVmYXVsdDoiV2hlbiBtZXRob2QgW05BTUVdIGlzIGNhbGxlZCBpbiBjbGFzcyBbQ0xBU1NdIixkZXNjcmlwdGlvbjoiQ3JlYXRlIGEgY2xhc3MgbWV0aG9kIn0pLGFyZ3VtZW50czp7TkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Im15TWV0aG9kIn0sQ0xBU1M6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJNeUNsYXNzIn19fSx7b3Bjb2RlOiJjYWxsT2JqZWN0TWV0aG9kIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6bih7aWQ6Imp3U3RydWN0cy5jYWxsT2JqZWN0TWV0aG9kIixkZWZhdWx0OiJDYWxsIG1ldGhvZCBbTkFNRV0gb2Ygb2JqZWN0IFtPQkpFQ1RdIixkZXNjcmlwdGlvbjoiQ2FsbCBhIG1ldGhvZCBvZiBhbiBvYmplY3QifSksYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXlNZXRob2QifSxPQkpFQ1Q6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteU9iamVjdCJ9fX0sIi0tLSIse29wY29kZToiZGVsZXRlQ2xhc3NlcyIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0Om4oe2lkOiJqd1N0cnVjdHMuZGVsZXRlQ2xhc3NlcyIsZGVmYXVsdDoiRGVsZXRlIGFsbCBjbGFzc2VzIixkZXNjcmlwdGlvbjoiRGVsZXRlIGFsbCBjbGFzc2VzIn0pfSx7b3Bjb2RlOiJkZWxldGVPYmplY3RzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6bih7aWQ6Imp3U3RydWN0cy5kZWxldGVPYmplY3RzIixkZWZhdWx0OiJEZWxldGUgYWxsIG9iamVjdHMiLGRlc2NyaXB0aW9uOiJEZWxldGUgYWxsIG9iamVjdHMifSl9LHtvcGNvZGU6ImRlbGV0ZUNsYXNzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6bih7aWQ6Imp3U3RydWN0cy5kZWxldGVDbGFzcyIsZGVmYXVsdDoiRGVsZXRlIGNsYXNzIFtDTEFTU10iLGRlc2NyaXB0aW9uOiJEZWxldGUgYSBjbGFzcyJ9KSxhcmd1bWVudHM6e0NMQVNTOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToiTXlDbGFzcyJ9fX0se29wY29kZToiZGVsZXRlT2JqZWN0IixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6bih7aWQ6Imp3U3RydWN0cy5kZWxldGVPYmplY3QiLGRlZmF1bHQ6IkRlbGV0ZSBvYmplY3QgW09CSkVDVF0iLGRlc2NyaXB0aW9uOiJEZWxldGUgYW4gb2JqZWN0In0pLGFyZ3VtZW50czp7T0JKRUNUOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXlPYmplY3QifX19XX19Y3JlYXRlQ2xhc3MoQSxlKXt2YXIgdD1BLk5BTUU7dCBpbiB0aGlzLmNsYXNzZXN8fCh0aGlzLmNsYXNzZXNbdF09e3Byb3BlcnRpZXM6e30sbWV0aG9kczp7fX0pfWNyZWF0ZUNsYXNzUHJvcGVydHkoQSxlKXt2YXIgdD1BLk5BTUUsbj1BLlZBTFVFLGk9QS5DTEFTUztpIGluIHRoaXMuY2xhc3NlcyYmKHRoaXMuY2xhc3Nlc1tpXS5wcm9wZXJ0aWVzW3RdPW4pfW5ld09iamVjdChBLGUpe3ZhciB0PUEuTkFNRSxuPUEuQ0xBU1M7biBpbiB0aGlzLmNsYXNzZXMmJih0aGlzLm9iamVjdHNbdF09dGhpcy5jbGFzc2VzW25dKX1zZXRPYmplY3RQcm9wZXJ0eShBLGUpe3ZhciB0PUEuUFJPUEVSVFksbj1BLk9CSkVDVCxpPUEuVkFMVUU7biBpbiB0aGlzLm9iamVjdHMmJih0aGlzLm9iamVjdHNbbl0ucHJvcGVydGllc1t0XT1pKX1yZXR1cm5PYmplY3RQcm9wZXJ0eShBLGUpe3ZhciB0PUEuUFJPUEVSVFksbj1BLk9CSkVDVDtpZihuIGluIHRoaXMub2JqZWN0cylyZXR1cm4gdGhpcy5vYmplY3RzW25dLnByb3BlcnRpZXNbdF19Y3JlYXRlQ2xhc3NNZXRob2QoQSxlKXt2YXIgdD1BLk5BTUUsbj1BLkNMQVNTO24gaW4gdGhpcy5jbGFzc2VzJiYodGhpcy5jbGFzc2VzW25dLm1ldGhvZHNbdF09ZS5zdGFja0ZyYW1lKX1jYWxsT2JqZWN0TWV0aG9kKEEsZSl7dmFyIHQ9QS5OQU1FLG49QS5PQkpFQ1Q7aWYobiBpbiB0aGlzLm9iamVjdHMpe3ZhciBpPXRoaXMub2JqZWN0c1tuXS5tZXRob2RzW3RdO2kmJmUuc3RhcnRCcmFuY2goMSxpKX19ZGVsZXRlQ2xhc3NlcyhBLGUpe3RoaXMuY2xhc3Nlcz17fX1kZWxldGVPYmplY3RzKEEsZSl7dGhpcy5vYmplY3RzPXt9fWRlbGV0ZUNsYXNzKEEsZSl7dmFyIHQ9QS5DTEFTUzt0IGluIHRoaXMuY2xhc3NlcyYmZGVsZXRlIHRoaXMuY2xhc3Nlc1t0XX1kZWxldGVPYmplY3QoQSxlKXt2YXIgdD1BLk9CSkVDVDt0IGluIHRoaXMub2JqZWN0cyYmZGVsZXRlIHRoaXMub2JqZWN0c1t0XX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj1uZXcodCg0NikpKCEwKSxpPUE9PntpZigiYW55Ij09PUEpcmV0dXJuIG5hdmlnYXRvci5nZXRHYW1lcGFkcygpLmZpbHRlcihBPT5BKTtjb25zdCBlPW5hdmlnYXRvci5nZXRHYW1lcGFkcygpW0EtMV07cmV0dXJuIGU/W2VdOltdfSxyPShBLGUpPT57aWYoImFueSI9PT1lKXJldHVybiBBLmJ1dHRvbnMuc29tZShBPT5BLnByZXNzZWQpO2NvbnN0IHQ9QS5idXR0b25zW2UtMV07cmV0dXJuISF0JiZ0LnByZXNzZWR9LG89KEEsZSk9Pntjb25zdCB0PUEuYnV0dG9uc1tlLTFdO2lmKCF0KXJldHVybiAwO2NvbnN0IG49dC52YWx1ZTtyZXR1cm4gbjwuMDU/MDpufSxzPShBLGUpPT57Y29uc3QgdD1BLmF4ZXNbZS0xXTtyZXR1cm4ibnVtYmVyIiE9dHlwZW9mIHR8fE1hdGguYWJzKHQpPC4xPzA6dH07QS5leHBvcnRzPWNsYXNze2dldEluZm8oKXtyZXR1cm57aWQ6IkdhbWVwYWQiLG5hbWU6IkdhbWVwYWQiLGJsb2Nrczpbe29wY29kZToiZ2FtZXBhZENvbm5lY3RlZCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkJPT0xFQU4sdGV4dDoiaXMgZ2FtZXBhZCBbcGFkXSBjb25uZWN0ZWQ/Iixhcmd1bWVudHM6e3BhZDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxIixtZW51OiJwYWRNZW51In19fSx7b3Bjb2RlOiJidXR0b25Eb3duIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJidXR0b24gW2JdIG9uIHBhZCBbaV0gcHJlc3NlZD8iLGFyZ3VtZW50czp7Yjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxIixtZW51OiJidXR0b25NZW51In0saTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxIixtZW51OiJwYWRNZW51In19fSx7b3Bjb2RlOiJidXR0b25WYWx1ZSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6InZhbHVlIG9mIGJ1dHRvbiBbYl0gb24gcGFkIFtpXSIsYXJndW1lbnRzOntiOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEiLG1lbnU6ImJ1dHRvbk1lbnUifSxpOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEiLG1lbnU6InBhZE1lbnUifX19LHtvcGNvZGU6ImF4aXNWYWx1ZSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6InZhbHVlIG9mIGF4aXMgW2JdIG9uIHBhZCBbaV0iLGFyZ3VtZW50czp7Yjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxIixtZW51OiJheGlzTWVudSJ9LGk6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSIsbWVudToicGFkTWVudSJ9fX0sIi0tLSIse29wY29kZToiYXhpc0RpcmVjdGlvbiIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6ImRpcmVjdGlvbiBvZiBheGVzIFtheGlzXSBvbiBwYWQgW3BhZF0iLGFyZ3VtZW50czp7YXhpczp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxIixtZW51OiJheGVzR3JvdXBNZW51In0scGFkOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEiLG1lbnU6InBhZE1lbnUifX19LHtvcGNvZGU6ImF4aXNNYWduaXR1ZGUiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJtYWduaXR1ZGUgb2YgYXhlcyBbYXhpc10gb24gcGFkIFtwYWRdIixhcmd1bWVudHM6e2F4aXM6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSIsbWVudToiYXhlc0dyb3VwTWVudSJ9LHBhZDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxIixtZW51OiJwYWRNZW51In19fSwiLS0tIix7b3Bjb2RlOiJydW1ibGUiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InJ1bWJsZSBzdHJvbmcgW3NdIGFuZCB3ZWFrIFt3XSBmb3IgW3RdIHNlYy4gb24gcGFkIFtpXSIsYXJndW1lbnRzOntzOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAuMjUifSx3Ont0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAuNSJ9LHQ6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMC4yNSJ9LGk6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSIsbWVudToicGFkTWVudSJ9fX1dLG1lbnVzOntwYWRNZW51OnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJhbnkiLHZhbHVlOiJhbnkifSx7dGV4dDoiMSIsdmFsdWU6IjEifSx7dGV4dDoiMiIsdmFsdWU6IjIifSx7dGV4dDoiMyIsdmFsdWU6IjMifSx7dGV4dDoiNCIsdmFsdWU6IjQifV19LGJ1dHRvbk1lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6ImFueSIsdmFsdWU6ImFueSJ9LHt0ZXh0OiJBICgxKSIsdmFsdWU6IjEifSx7dGV4dDoiQiAoMikiLHZhbHVlOiIyIn0se3RleHQ6IlggKDMpIix2YWx1ZToiMyJ9LHt0ZXh0OiJZICg0KSIsdmFsdWU6IjQifSx7dGV4dDoiTGVmdCBidW1wZXIgKDUpIix2YWx1ZToiNSJ9LHt0ZXh0OiJSaWdodCBidW1wZXIgKDYpIix2YWx1ZToiNiJ9LHt0ZXh0OiJMZWZ0IHRyaWdnZXIgKDcpIix2YWx1ZToiNyJ9LHt0ZXh0OiJSaWdodCB0cmlnZ2VyICg4KSIsdmFsdWU6IjgifSx7dGV4dDoiU2VsZWN0L1ZpZXcgKDkpIix2YWx1ZToiOSJ9LHt0ZXh0OiJTdGFydC9NZW51ICgxMCkiLHZhbHVlOiIxMCJ9LHt0ZXh0OiJMZWZ0IHN0aWNrICgxMSkiLHZhbHVlOiIxMSJ9LHt0ZXh0OiJSaWdodCBzdGljayAoMTIpIix2YWx1ZToiMTIifSx7dGV4dDoiRC1wYWQgdXAgKDEzKSIsdmFsdWU6IjEzIn0se3RleHQ6IkQtcGFkIGRvd24gKDE0KSIsdmFsdWU6IjE0In0se3RleHQ6IkQtcGFkIGxlZnQgKDE1KSIsdmFsdWU6IjE1In0se3RleHQ6IkQtcGFkIHJpZ2h0ICgxNikiLHZhbHVlOiIxNiJ9XX0sYXhpc01lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6IkxlZnQgc3RpY2sgaG9yaXpvbnRhbCAoMSkiLHZhbHVlOiIxIn0se3RleHQ6IkxlZnQgc3RpY2sgdmVydGljYWwgKDIpIix2YWx1ZToiMiJ9LHt0ZXh0OiJSaWdodCBzdGljayBob3Jpem9udGFsICgzKSIsdmFsdWU6IjMifSx7dGV4dDoiUmlnaHQgc3RpY2sgdmVydGljYWwgKDQpIix2YWx1ZToiNCJ9XX0sYXhlc0dyb3VwTWVudTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlt7dGV4dDoiTGVmdCBzdGljayAoMSAmIDIpIix2YWx1ZToiMSJ9LHt0ZXh0OiJSaWdodCBzdGljayAoMyAmIDQpIix2YWx1ZToiMyJ9XX19fX1nYW1lcGFkQ29ubmVjdGVkKEEpe2xldHtwYWQ6ZX09QTtyZXR1cm4gaShlKS5sZW5ndGg+MH1idXR0b25Eb3duKEEpe2xldHtiOmUsaTp0fT1BO2Zvcihjb25zdCBBIG9mIGkodCkpaWYocihBLGUpKXJldHVybiEwO3JldHVybiExfWJ1dHRvblZhbHVlKEEpe2xldHtiOmUsaTp0fT1BLG49MDtmb3IoY29uc3QgQSBvZiBpKHQpKXtjb25zdCB0PW8oQSxlKTt0Pm4mJihuPXQpfXJldHVybiBufWF4aXNWYWx1ZShBKXtsZXR7YjplLGk6dH09QSxuPTA7Zm9yKGNvbnN0IEEgb2YgaSh0KSl7Y29uc3QgdD1zKEEsZSk7TWF0aC5hYnModCk+TWF0aC5hYnMobikmJihuPXQpfXJldHVybiBufWF4aXNEaXJlY3Rpb24oQSl7bGV0e2F4aXM6ZSxwYWQ6dH09QSxuPTAscj05MDtmb3IoY29uc3QgQSBvZiBpKHQpKXtjb25zdCB0PXMoQSxlKSxpPXMoQSwrZSsxKSxvPU1hdGguc3FydCh0KioyK2kqKjIpO28+biYmKG49byxyPTE4MCpNYXRoLmF0YW4yKGksdCkvTWF0aC5QSSs5MCxyPDAmJihyKz0zNjApKX1yZXR1cm4gcn1heGlzTWFnbml0dWRlKEEpe2xldHtheGlzOmUscGFkOnR9PUEsbj0wO2Zvcihjb25zdCBBIG9mIGkodCkpe2NvbnN0IHQ9cyhBLGUpLGk9cyhBLCtlKzEpLHI9TWF0aC5zcXJ0KHQqKjIraSoqMik7cj5uJiYobj1yKX1yZXR1cm4gbn1ydW1ibGUoQSl7bGV0e3M6ZSx3OnQsdDpuLGk6cn09QTtjb25zdCBvPWkocik7Zm9yKGNvbnN0IEEgb2YgbylBLnZpYnJhdGlvbkFjdHVhdG9yJiZBLnZpYnJhdGlvbkFjdHVhdG9yLnBsYXlFZmZlY3QoImR1YWwtcnVtYmxlIix7c3RhcnREZWxheTowLGR1cmF0aW9uOjFlMypuLHdlYWtNYWduaXR1ZGU6dCxzdHJvbmdNYWduaXR1ZGU6ZX0pfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCgyKTtsZXQgbyxzPTAsYT0wLEI9MCxjPTAsZz0wLEU9MCxRPTEwMCx1PTAsbD0wLGg9MCx3PTEwMCxDPTEwMCxJPTAsTT0xMDAsZD0wLHA9ImRlZmF1bHQiLG09WyIiLDEwMF0sRj1bMCwibm9uZSIsIiNmZjAwMDAiLCJ0cmFuc3BhcmVudCJdO2NvbnN0IEQ9KCk9Pntjb25zdCBBPSJyb3RhdGUoIi5jb25jYXQoYSwiZGVnKSBzY2FsZSgiKS5jb25jYXQoUSwiJSkgc2tldygiKS5jb25jYXQoRSwiZGVnLCAiKS5jb25jYXQoZywiZGVnKSB0cmFuc2xhdGUoIikuY29uY2F0KGMsIiUsICIpLmNvbmNhdCgwLUIsIiUpIik7by5zdHlsZS50cmFuc2Zvcm0hPT1BJiYoby5zdHlsZS50cmFuc2Zvcm09QSk7Y29uc3QgZT0iYmx1cigiLmNvbmNhdChoLCJweCkgY29udHJhc3QoIikuY29uY2F0KHcvMTAwLCIpIHNhdHVyYXRlKCIpLmNvbmNhdChDLCIlKSBodWUtcm90YXRlKCIpLmNvbmNhdChJLCJkZWcpIGJyaWdodG5lc3MoIikuY29uY2F0KE0sIiUpIGludmVydCgiKS5jb25jYXQoZCwiJSkgc2VwaWEoIikuY29uY2F0KGwsIiUpIG9wYWNpdHkoIikuY29uY2F0KDEwMC11LCIlKSIpO28uc3R5bGUuZmlsdGVyIT09ZSYmKG8uc3R5bGUuZmlsdGVyPWUpO2NvbnN0IHQ9MD09PXM/IiI6IiIuY29uY2F0KHMsIiUiKTtvLnN0eWxlLmJvcmRlclJhZGl1cyE9PXQmJihvLnN0eWxlLmJvcmRlclJhZGl1cz10KTtjb25zdCBuPSJwaXhlbGF0ZWQiPT09cD8icGl4ZWxhdGVkIjoiIjtvLnN0eWxlLmltYWdlUmVuZGVyaW5nIT09biYmKG8uc3R5bGUuaW1hZ2VSZW5kZXJpbmc9biksby5zdHlsZS5ib3JkZXI9ci50b1N0cmluZygiIi5jb25jYXQoRlswXSwicHggIikuY29uY2F0KEZbMV0sIiAiKS5jb25jYXQoRlsyXSkpLG8uc3R5bGUuYmFja2dyb3VuZENvbG9yPXIudG9TdHJpbmcoRlszXSksbVswXS5sZW5ndGg+MyYmKG8uc3R5bGUuYmFja2dyb3VuZEltYWdlPW1bMF0sby5zdHlsZS5iYWNrZ3JvdW5kU2l6ZT0iIi5jb25jYXQoci50b051bWJlcihtWzFdKSwiJSIpKX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuY2FudmFzPUEucmVuZGVyZXIuY2FudmFzLG89dGhpcy5jYW52YXMsbmV3IE11dGF0aW9uT2JzZXJ2ZXIoRCkub2JzZXJ2ZSh0aGlzLmNhbnZhcyx7YXR0cmlidXRlRmlsdGVyOlsic3R5bGUiXSxhdHRyaWJ1dGVzOiEwfSksdGhpcy5ydW50aW1lLm9uKCJSVU5USU1FX0RJU1BPU0VEIix0aGlzLmNsZWFyZWZmZWN0cyl9Z2V0SW5mbygpe3JldHVybntpZDoidGhlc2hvdmVsY2FudmFzZWZmZWN0cyIsbmFtZToiQ2FudmFzIEVmZmVjdHMiLGJsb2Nrczpbe29wY29kZToic2V0ZWZmZWN0IixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InNldCBjYW52YXMgW0VGRkVDVF0gdG8gW05VTUJFUl0iLGFyZ3VtZW50czp7RUZGRUNUOnt0eXBlOm4uU1RSSU5HLG1lbnU6IkVGRkVDVE1FTlUifSxOVU1CRVI6e3R5cGU6bi5OVU1CRVJ9fX0se29wY29kZToiY2hhbmdlRWZmZWN0IixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6ImNoYW5nZSBjYW52YXMgW0VGRkVDVF0gYnkgW05VTUJFUl0iLGFyZ3VtZW50czp7RUZGRUNUOnt0eXBlOm4uU1RSSU5HLG1lbnU6IkVGRkVDVE1FTlUifSxOVU1CRVI6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjV9fX0se29wY29kZToiZ2V0ZWZmZWN0IixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJnZXQgY2FudmFzIFtFRkZFQ1RdIixhcmd1bWVudHM6e0VGRkVDVDp7dHlwZTpuLlNUUklORyxtZW51OiJFRkZFQ1RHRVRNRU5VIn19fSx7b3Bjb2RlOiJzZXRCb3JkZXIiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoiYWRkIFtCT1JERVJdIGJvcmRlciB0byBjYW52YXMgd2l0aCBjb2xvciBbQ09MT1IxXSBhbmQgYmFja3VwIFtDT0xPUjJdIGFuZCB0aGlja25lc3MgW1RISUNLXSIsYXJndW1lbnRzOntCT1JERVI6e3R5cGU6bi5TVFJJTkcsbWVudToiQk9SREVSVFlQRVMifSxUSElDSzp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6NX0sQ09MT1IxOnt0eXBlOm4uQ09MT1IsZGVmYXVsdFZhbHVlOiIjZmYwMDAwIn0sQ09MT1IyOnt0eXBlOm4uQ09MT1IsZGVmYXVsdFZhbHVlOiIjMDAwMGZmIn19fSx7b3Bjb2RlOiJzZXRJbWFnZSIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OiJzZXQgY2FudmFzIGltYWdlIHRvIFtJTUFHRV0gc2NhbGVkIFtBTVRdJSIsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7SU1BR0U6e3R5cGU6bi5TVFJJTkcsZGVmYXVsdFZhbHVlOiJodHRwczovL2V4dGVuc2lvbnMudHVyYm93YXJwLm9yZy9kYW5nby5wbmcifSxBTVQ6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH19fSx7b3Bjb2RlOiJjbGVhcmVmZmVjdHMiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoiY2xlYXIgY2FudmFzIGVmZmVjdHMifSx7b3Bjb2RlOiJyZW5kZXJzY2FsZSIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OiJzZXQgY2FudmFzIHJlbmRlciBzaXplIHRvIHdpZHRoOltYXSBoZWlnaHQ6W1ldIixhcmd1bWVudHM6e1g6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH0sWTp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfX19LHtvcGNvZGU6InNldHJlbmRlcm1vZGUiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGNhbnZhcyByZXNpemUgcmVuZGVyaW5nIG1vZGUgW0VGRkVDVF0iLGFyZ3VtZW50czp7RUZGRUNUOnt0eXBlOm4uU1RSSU5HLG1lbnU6IlJFTkRFUk1PREUifX19XSxtZW51czp7RUZGRUNUTUVOVTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiYmx1ciIsImNvbnRyYXN0Iiwic2F0dXJhdGlvbiIsImNvbG9yIHNoaWZ0IiwiYnJpZ2h0bmVzcyIsImludmVydCIsInNlcGlhIiwidHJhbnNwYXJlbmN5Iiwic2NhbGUiLCJza2V3IFgiLCJza2V3IFkiLCJvZmZzZXQgWCIsIm9mZnNldCBZIiwicm90YXRpb24iLCJib3JkZXIgcmFkaXVzIl19LFJFTkRFUk1PREU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbInBpeGVsYXRlZCIsImRlZmF1bHQiXX0sRUZGRUNUR0VUTUVOVTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiYmx1ciIsImNvbnRyYXN0Iiwic2F0dXJhdGlvbiIsImNvbG9yIHNoaWZ0IiwiYnJpZ2h0bmVzcyIsImludmVydCIsInJlc2l6ZSByZW5kZXJpbmcgbW9kZSIsInNlcGlhIiwidHJhbnNwYXJlbmN5Iiwic2NhbGUiLCJza2V3IFgiLCJza2V3IFkiLCJvZmZzZXQgWCIsIm9mZnNldCBZIiwicm90YXRpb24iLCJib3JkZXIgcmFkaXVzIl19LEJPUkRFUlRZUEVTOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJkb3R0ZWQiLCJkYXNoZWQiLCJzb2xpZCIsImRvdWJsZSIsImdyb292ZSIsInJpZGdlIiwiaW5zZXQiLCJvdXRzZXQiLCJub25lIl19fX19Z2V0ZWZmZWN0KEEpe2xldHtFRkZFQ1Q6ZX09QTtyZXR1cm4iYmx1ciI9PT1lP2g6ImNvbnRyYXN0Ij09PWU/dzoic2F0dXJhdGlvbiI9PT1lP0M6ImNvbG9yIHNoaWZ0Ij09PWU/SToiYnJpZ2h0bmVzcyI9PT1lP006ImludmVydCI9PT1lP2Q6InJlc2l6ZSByZW5kZXJpbmcgbW9kZSI9PT1lP3A6InNlcGlhIj09PWU/bDoidHJhbnNwYXJlbmN5Ij09PWU/dToic2NhbGUiPT09ZT9ROiJza2V3IFgiPT09ZT9FOiJza2V3IFkiPT09ZT9nOiJvZmZzZXQgWCI9PT1lP2M6Im9mZnNldCBZIj09PWU/Qjoicm90YXRpb24iPT09ZT9hOiJib3JkZXIgcmFkaXVzIj09PWU/czoiIn1zZXRlZmZlY3QoQSl7bGV0e0VGRkVDVDplLE5VTUJFUjp0fT1BO3Q9ci50b051bWJlcih0KSwiYmx1ciI9PT1lP2g9dDoiY29udHJhc3QiPT09ZT93PXQ6InNhdHVyYXRpb24iPT09ZT9DPXQ6ImNvbG9yIHNoaWZ0Ij09PWU/ST10OiJicmlnaHRuZXNzIj09PWU/TT10OiJpbnZlcnQiPT09ZT9kPXQ6InNlcGlhIj09PWU/bD10OiJ0cmFuc3BhcmVuY3kiPT09ZT91PXQ6InNjYWxlIj09PWU/UT10OiJza2V3IFgiPT09ZT9FPXQ6InNrZXcgWSI9PT1lP2c9dDoib2Zmc2V0IFgiPT09ZT9jPXQ6Im9mZnNldCBZIj09PWU/Qj10OiJyb3RhdGlvbiI9PT1lP2E9dDoiYm9yZGVyIHJhZGl1cyI9PT1lJiYocz10KSxEKCl9Y2hhbmdlRWZmZWN0KEEpe2NvbnN0IGU9QS5FRkZFQ1QsdD10aGlzLmdldGVmZmVjdChBKSxuPXIudG9OdW1iZXIoQS5OVU1CRVIpK3Q7ImJsdXIiPT09ZT9oPW46ImNvbnRyYXN0Ij09PWU/dz1uOiJzYXR1cmF0aW9uIj09PWU/Qz1uOiJjb2xvciBzaGlmdCI9PT1lP0k9bjoiYnJpZ2h0bmVzcyI9PT1lP009bjoiaW52ZXJ0Ij09PWU/ZD1uOiJzZXBpYSI9PT1lP2w9bjoidHJhbnNwYXJlbmN5Ij09PWU/dT1uOiJzY2FsZSI9PT1lP1E9bjoic2tldyBYIj09PWU/RT1uOiJza2V3IFkiPT09ZT9nPW46Im9mZnNldCBYIj09PWU/Yz1uOiJvZmZzZXQgWSI9PT1lP0I9bjoicm90YXRpb24iPT09ZT9hPW46ImJvcmRlciByYWRpdXMiPT09ZSYmKHM9biksRCgpfWNsZWFyZWZmZWN0cygpe3M9MCxhPTAsQj0wLGM9MCxnPTAsRT0wLFE9MTAwLHU9MCxsPTAsaD0wLHc9MTAwLEM9MTAwLEk9MCxNPTEwMCxkPTAscD0iZGVmYXVsdCIsbT1bIiIsMTAwXSxGPVswLCJub25lIiwiI2ZmMDAwMCIsInRyYW5zcGFyZW50Il0sRCgpfXNldHJlbmRlcm1vZGUoQSl7bGV0e0VGRkVDVDplfT1BO3A9ZSxEKCl9cmVuZGVyc2NhbGUoQSl7bGV0e1g6ZSxZOnR9PUE7dGhpcy5ydW50aW1lLnJlbmRlcmVyLnJlc2l6ZShlLHQpfXNldEltYWdlKEEpe3RoaXMucnVudGltZS52bS5zZWN1cml0eU1hbmFnZXIuY2FuRmV0Y2goZW5jb2RlVVJJKEEuSU1BR0UpKS50aGVuKGU9PntlP209WyJ1cmwoIi5jb25jYXQoZW5jb2RlVVJJKEEuSU1BR0UpLCIpIiksQS5BTVRdOihjb25zb2xlLmxvZygiQ2Fubm90IGZldGNoIGNvbnRlbnQgZnJvbSB0aGUgVVJMLiIpLG09W10pLEQoKX0pfXNldEJvcmRlcihBKXtGPVtBLlRISUNLLEEuQk9SREVSLEEuQ09MT1IxLEEuQ09MT1IyXSwibm9uZSI9PT1BLkJPUkRFUiYmKEZbM109InRyYW5zcGFyZW50IiksRCgpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHt2YWxpZGF0ZUFycmF5OnJ9PXQoMTQpLG89bmV3KHQoMjUpKSxzPXQoMiksYT10KDM4NCk7QS5leHBvcnRzPWNsYXNze2dldEluZm8oKXtyZXR1cm57aWQ6InNob3ZlbGx6Y29tcHJlc3NzIixuYW1lOiJMWiBDb21wcmVzcyIsYmxvY2tzOlt7b3Bjb2RlOiJjb21wcmVzcyIsYmxvY2tUeXBlOmkuUkVQT1JURVIsdGV4dDoiY29tcHJlc3MgW1RFWFRdIHRvIFtUWVBFXSIsYXJndW1lbnRzOntURVhUOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8gd29ybGQhIn0sVFlQRTp7dHlwZTpuLlNUUklORyxtZW51OiJDT01QUkVTU0lPTlRZUEVTIn19fSx7b3Bjb2RlOiJkZWNvbXByZXNzIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJkZWNvbXByZXNzIFtURVhUXSBmcm9tIFtUWVBFXSIsYXJndW1lbnRzOntURVhUOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToi0oXjgLbmg7ZA7rqQ4pyw04DokYAifSxUWVBFOnt0eXBlOm4uU1RSSU5HLG1lbnU6IkNPTVBSRVNTSU9OVFlQRVMifX19XSxtZW51czp7Q09NUFJFU1NJT05UWVBFUzp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiUmF3IiwiQmFzZTY0IiwiRW5jb2RlZFVSSUNvbXBvbmVudCIsIkFycmF5QnVmZmVyIiwiVVRGMTYiXX19fX1jb21wcmVzcyhBKXtjb25zdCBlPXMudG9TdHJpbmcoQS5URVhUKTtpZigiUmF3Ij09QS5UWVBFKXJldHVybiBhLmNvbXByZXNzKGUpO2lmKCJCYXNlNjQiPT1BLlRZUEUpcmV0dXJuIGEuY29tcHJlc3NUb0Jhc2U2NChlKTtpZigiRW5jb2RlZFVSSUNvbXBvbmVudCI9PUEuVFlQRSlyZXR1cm4gYS5jb21wcmVzc1RvRW5jb2RlZFVSSUNvbXBvbmVudChlKTtpZigiQXJyYXlCdWZmZXIiPT1BLlRZUEUpe2NvbnN0IEE9YS5jb21wcmVzc1RvVWludDhBcnJheShlKSx0PW8udWludDhBcnJheVRvQnVmZmVyKEEpLG49by5idWZmZXJUb0FycmF5KHQpO3JldHVybiBKU09OLnN0cmluZ2lmeShuKX1yZXR1cm4iVVRGMTYiPT1BLlRZUEU/YS5jb21wcmVzc1RvVVRGMTYoZSk6IiJ9ZGVjb21wcmVzcyhBKXt0cnl7Y29uc3QgZT1zLnRvU3RyaW5nKEEuVEVYVCk7aWYoIlJhdyI9PUEuVFlQRSlyZXR1cm4gYS5kZWNvbXByZXNzKGUpfHwiIjtpZigiQmFzZTY0Ij09QS5UWVBFKXJldHVybiBhLmRlY29tcHJlc3NGcm9tQmFzZTY0KGUpfHwiIjtpZigiRW5jb2RlZFVSSUNvbXBvbmVudCI9PUEuVFlQRSlyZXR1cm4gYS5kZWNvbXByZXNzRnJvbUVuY29kZWRVUklDb21wb25lbnQoZSl8fCIiO2lmKCJBcnJheUJ1ZmZlciI9PUEuVFlQRSl7Y29uc3QgQT1yKGUpO2lmKCFBLmlzVmFsaWQpcmV0dXJuIiI7Y29uc3QgdD1vLmFycmF5VG9CdWZmZXIoQS5hcnJheSksbj1vLmJ1ZmZlclRvVWludDhBcnJheSh0KTtyZXR1cm4gYS5kZWNvbXByZXNzRnJvbVVpbnQ4QXJyYXkobil8fCIifWlmKCJVVEYxNiI9PUEuVFlQRSlyZXR1cm4gYS5kZWNvbXByZXNzRnJvbVVURjE2KGUpfHwiIn1jYXRjaChBKXtjb25zb2xlLmVycm9yKCJkZWNvbXByZXNzIGVycm9yIixBKX1yZXR1cm4iIn19fSxmdW5jdGlvbihBLGUsdCl7dmFyIG4saT1mdW5jdGlvbigpe3ZhciBBPVN0cmluZy5mcm9tQ2hhckNvZGUsZT0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0iLHQ9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky0kIixuPXt9O2Z1bmN0aW9uIGkoQSxlKXtpZighbltBXSl7bltBXT17fTtmb3IodmFyIHQ9MDt0PEEubGVuZ3RoO3QrKyluW0FdW0EuY2hhckF0KHQpXT10fXJldHVybiBuW0FdW2VdfXZhciByPXtjb21wcmVzc1RvQmFzZTY0OmZ1bmN0aW9uKEEpe2lmKG51bGw9PUEpcmV0dXJuIiI7dmFyIHQ9ci5fY29tcHJlc3MoQSw2LChmdW5jdGlvbihBKXtyZXR1cm4gZS5jaGFyQXQoQSl9KSk7c3dpdGNoKHQubGVuZ3RoJTQpe2RlZmF1bHQ6Y2FzZSAwOnJldHVybiB0O2Nhc2UgMTpyZXR1cm4gdCsiPT09IjtjYXNlIDI6cmV0dXJuIHQrIj09IjtjYXNlIDM6cmV0dXJuIHQrIj0ifX0sZGVjb21wcmVzc0Zyb21CYXNlNjQ6ZnVuY3Rpb24oQSl7cmV0dXJuIG51bGw9PUE/IiI6IiI9PUE/bnVsbDpyLl9kZWNvbXByZXNzKEEubGVuZ3RoLDMyLChmdW5jdGlvbih0KXtyZXR1cm4gaShlLEEuY2hhckF0KHQpKX0pKX0sY29tcHJlc3NUb1VURjE2OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOnIuX2NvbXByZXNzKGUsMTUsKGZ1bmN0aW9uKGUpe3JldHVybiBBKGUrMzIpfSkpKyIgIn0sZGVjb21wcmVzc0Zyb21VVEYxNjpmdW5jdGlvbihBKXtyZXR1cm4gbnVsbD09QT8iIjoiIj09QT9udWxsOnIuX2RlY29tcHJlc3MoQS5sZW5ndGgsMTYzODQsKGZ1bmN0aW9uKGUpe3JldHVybiBBLmNoYXJDb2RlQXQoZSktMzJ9KSl9LGNvbXByZXNzVG9VaW50OEFycmF5OmZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1yLmNvbXByZXNzKEEpLHQ9bmV3IFVpbnQ4QXJyYXkoMiplLmxlbmd0aCksbj0wLGk9ZS5sZW5ndGg7bjxpO24rKyl7dmFyIG89ZS5jaGFyQ29kZUF0KG4pO3RbMipuXT1vPj4+OCx0WzIqbisxXT1vJTI1Nn1yZXR1cm4gdH0sZGVjb21wcmVzc0Zyb21VaW50OEFycmF5OmZ1bmN0aW9uKGUpe2lmKG51bGw9PWUpcmV0dXJuIHIuZGVjb21wcmVzcyhlKTtmb3IodmFyIHQ9bmV3IEFycmF5KGUubGVuZ3RoLzIpLG49MCxpPXQubGVuZ3RoO248aTtuKyspdFtuXT0yNTYqZVsyKm5dK2VbMipuKzFdO3ZhciBvPVtdO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKGUpe28ucHVzaChBKGUpKX0pKSxyLmRlY29tcHJlc3Moby5qb2luKCIiKSl9LGNvbXByZXNzVG9FbmNvZGVkVVJJQ29tcG9uZW50OmZ1bmN0aW9uKEEpe3JldHVybiBudWxsPT1BPyIiOnIuX2NvbXByZXNzKEEsNiwoZnVuY3Rpb24oQSl7cmV0dXJuIHQuY2hhckF0KEEpfSkpfSxkZWNvbXByZXNzRnJvbUVuY29kZWRVUklDb21wb25lbnQ6ZnVuY3Rpb24oQSl7cmV0dXJuIG51bGw9PUE/IiI6IiI9PUE/bnVsbDooQT1BLnJlcGxhY2UoLyAvZywiKyIpLHIuX2RlY29tcHJlc3MoQS5sZW5ndGgsMzIsKGZ1bmN0aW9uKGUpe3JldHVybiBpKHQsQS5jaGFyQXQoZSkpfSkpKX0sY29tcHJlc3M6ZnVuY3Rpb24oZSl7cmV0dXJuIHIuX2NvbXByZXNzKGUsMTYsKGZ1bmN0aW9uKGUpe3JldHVybiBBKGUpfSkpfSxfY29tcHJlc3M6ZnVuY3Rpb24oQSxlLHQpe2lmKG51bGw9PUEpcmV0dXJuIiI7dmFyIG4saSxyLG89e30scz17fSxhPSIiLEI9IiIsYz0iIixnPTIsRT0zLFE9Mix1PVtdLGw9MCxoPTA7Zm9yKHI9MDtyPEEubGVuZ3RoO3IrPTEpaWYoYT1BLmNoYXJBdChyKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobyxhKXx8KG9bYV09RSsrLHNbYV09ITApLEI9YythLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvLEIpKWM9QjtlbHNle2lmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLGMpKXtpZihjLmNoYXJDb2RlQXQoMCk8MjU2KXtmb3Iobj0wO248UTtuKyspbDw8PTEsaD09ZS0xPyhoPTAsdS5wdXNoKHQobCkpLGw9MCk6aCsrO2ZvcihpPWMuY2hhckNvZGVBdCgwKSxuPTA7bjw4O24rKylsPWw8PDF8MSZpLGg9PWUtMT8oaD0wLHUucHVzaCh0KGwpKSxsPTApOmgrKyxpPj49MX1lbHNle2ZvcihpPTEsbj0wO248UTtuKyspbD1sPDwxfGksaD09ZS0xPyhoPTAsdS5wdXNoKHQobCkpLGw9MCk6aCsrLGk9MDtmb3IoaT1jLmNoYXJDb2RlQXQoMCksbj0wO248MTY7bisrKWw9bDw8MXwxJmksaD09ZS0xPyhoPTAsdS5wdXNoKHQobCkpLGw9MCk6aCsrLGk+Pj0xfTA9PS0tZyYmKGc9TWF0aC5wb3coMixRKSxRKyspLGRlbGV0ZSBzW2NdfWVsc2UgZm9yKGk9b1tjXSxuPTA7bjxRO24rKylsPWw8PDF8MSZpLGg9PWUtMT8oaD0wLHUucHVzaCh0KGwpKSxsPTApOmgrKyxpPj49MTswPT0tLWcmJihnPU1hdGgucG93KDIsUSksUSsrKSxvW0JdPUUrKyxjPVN0cmluZyhhKX1pZigiIiE9PWMpe2lmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLGMpKXtpZihjLmNoYXJDb2RlQXQoMCk8MjU2KXtmb3Iobj0wO248UTtuKyspbDw8PTEsaD09ZS0xPyhoPTAsdS5wdXNoKHQobCkpLGw9MCk6aCsrO2ZvcihpPWMuY2hhckNvZGVBdCgwKSxuPTA7bjw4O24rKylsPWw8PDF8MSZpLGg9PWUtMT8oaD0wLHUucHVzaCh0KGwpKSxsPTApOmgrKyxpPj49MX1lbHNle2ZvcihpPTEsbj0wO248UTtuKyspbD1sPDwxfGksaD09ZS0xPyhoPTAsdS5wdXNoKHQobCkpLGw9MCk6aCsrLGk9MDtmb3IoaT1jLmNoYXJDb2RlQXQoMCksbj0wO248MTY7bisrKWw9bDw8MXwxJmksaD09ZS0xPyhoPTAsdS5wdXNoKHQobCkpLGw9MCk6aCsrLGk+Pj0xfTA9PS0tZyYmKGc9TWF0aC5wb3coMixRKSxRKyspLGRlbGV0ZSBzW2NdfWVsc2UgZm9yKGk9b1tjXSxuPTA7bjxRO24rKylsPWw8PDF8MSZpLGg9PWUtMT8oaD0wLHUucHVzaCh0KGwpKSxsPTApOmgrKyxpPj49MTswPT0tLWcmJihnPU1hdGgucG93KDIsUSksUSsrKX1mb3IoaT0yLG49MDtuPFE7bisrKWw9bDw8MXwxJmksaD09ZS0xPyhoPTAsdS5wdXNoKHQobCkpLGw9MCk6aCsrLGk+Pj0xO2Zvcig7Oyl7aWYobDw8PTEsaD09ZS0xKXt1LnB1c2godChsKSk7YnJlYWt9aCsrfXJldHVybiB1LmpvaW4oIiIpfSxkZWNvbXByZXNzOmZ1bmN0aW9uKEEpe3JldHVybiBudWxsPT1BPyIiOiIiPT1BP251bGw6ci5fZGVjb21wcmVzcyhBLmxlbmd0aCwzMjc2OCwoZnVuY3Rpb24oZSl7cmV0dXJuIEEuY2hhckNvZGVBdChlKX0pKX0sX2RlY29tcHJlc3M6ZnVuY3Rpb24oZSx0LG4pe3ZhciBpLHIsbyxzLGEsQixjLGc9W10sRT00LFE9NCx1PTMsbD0iIixoPVtdLHc9e3ZhbDpuKDApLHBvc2l0aW9uOnQsaW5kZXg6MX07Zm9yKGk9MDtpPDM7aSs9MSlnW2ldPWk7Zm9yKG89MCxhPU1hdGgucG93KDIsMiksQj0xO0IhPWE7KXM9dy52YWwmdy5wb3NpdGlvbix3LnBvc2l0aW9uPj49MSwwPT13LnBvc2l0aW9uJiYody5wb3NpdGlvbj10LHcudmFsPW4ody5pbmRleCsrKSksb3w9KHM+MD8xOjApKkIsQjw8PTE7c3dpdGNoKG8pe2Nhc2UgMDpmb3Iobz0wLGE9TWF0aC5wb3coMiw4KSxCPTE7QiE9YTspcz13LnZhbCZ3LnBvc2l0aW9uLHcucG9zaXRpb24+Pj0xLDA9PXcucG9zaXRpb24mJih3LnBvc2l0aW9uPXQsdy52YWw9bih3LmluZGV4KyspKSxvfD0ocz4wPzE6MCkqQixCPDw9MTtjPUEobyk7YnJlYWs7Y2FzZSAxOmZvcihvPTAsYT1NYXRoLnBvdygyLDE2KSxCPTE7QiE9YTspcz13LnZhbCZ3LnBvc2l0aW9uLHcucG9zaXRpb24+Pj0xLDA9PXcucG9zaXRpb24mJih3LnBvc2l0aW9uPXQsdy52YWw9bih3LmluZGV4KyspKSxvfD0ocz4wPzE6MCkqQixCPDw9MTtjPUEobyk7YnJlYWs7Y2FzZSAyOnJldHVybiIifWZvcihnWzNdPWMscj1jLGgucHVzaChjKTs7KXtpZih3LmluZGV4PmUpcmV0dXJuIiI7Zm9yKG89MCxhPU1hdGgucG93KDIsdSksQj0xO0IhPWE7KXM9dy52YWwmdy5wb3NpdGlvbix3LnBvc2l0aW9uPj49MSwwPT13LnBvc2l0aW9uJiYody5wb3NpdGlvbj10LHcudmFsPW4ody5pbmRleCsrKSksb3w9KHM+MD8xOjApKkIsQjw8PTE7c3dpdGNoKGM9byl7Y2FzZSAwOmZvcihvPTAsYT1NYXRoLnBvdygyLDgpLEI9MTtCIT1hOylzPXcudmFsJncucG9zaXRpb24sdy5wb3NpdGlvbj4+PTEsMD09dy5wb3NpdGlvbiYmKHcucG9zaXRpb249dCx3LnZhbD1uKHcuaW5kZXgrKykpLG98PShzPjA/MTowKSpCLEI8PD0xO2dbUSsrXT1BKG8pLGM9US0xLEUtLTticmVhaztjYXNlIDE6Zm9yKG89MCxhPU1hdGgucG93KDIsMTYpLEI9MTtCIT1hOylzPXcudmFsJncucG9zaXRpb24sdy5wb3NpdGlvbj4+PTEsMD09dy5wb3NpdGlvbiYmKHcucG9zaXRpb249dCx3LnZhbD1uKHcuaW5kZXgrKykpLG98PShzPjA/MTowKSpCLEI8PD0xO2dbUSsrXT1BKG8pLGM9US0xLEUtLTticmVhaztjYXNlIDI6cmV0dXJuIGguam9pbigiIil9aWYoMD09RSYmKEU9TWF0aC5wb3coMix1KSx1KyspLGdbY10pbD1nW2NdO2Vsc2V7aWYoYyE9PVEpcmV0dXJuIG51bGw7bD1yK3IuY2hhckF0KDApfWgucHVzaChsKSxnW1ErK109citsLmNoYXJBdCgwKSxyPWwsMD09LS1FJiYoRT1NYXRoLnBvdygyLHUpLHUrKyl9fX07cmV0dXJuIHJ9KCk7dm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gaX0uY2FsbChlLHQsZSxBKSl8fChBLmV4cG9ydHM9bil9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCgyKTtsZXQgbyxzPTAsYT0wO2NvbnN0IEI9KCk9PntvLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKCIuY29uY2F0KHMsInB4LCAiKS5jb25jYXQoLWEsInB4KSIpfTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLG8udHlwZT0iY29sb3IiLG8udmFsdWU9IiM5OTY2ZmYiLG8uc3R5bGUucG9pbnRlckV2ZW50cz0ibm9uZSIsby5zdHlsZS53aWR0aD0iMXB4IixvLnN0eWxlLmhlaWdodD0iMXB4IixvLnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiIsdGhpcy5ydW50aW1lLnJlbmRlcmVyLmFkZE92ZXJsYXkobywic2NhbGUtY2VudGVyZWQiKSxvLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwoKT0+e3RoaXMucnVudGltZS5zdGFydEhhdHMoInNob3ZlbENvbG9yUGlja2VyX3doZW5DaGFuZ2VkIil9KSxCKCl9Z2V0SW5mbygpe3JldHVybntpZDoic2hvdmVsQ29sb3JQaWNrZXIiLG5hbWU6IkNvbG9yUGlja2VyIixjb2xvcjE6IiNmZjdkYjUiLGNvbG9yMjoiI2UwNjQ5YSIsY29sb3IzOiIjYzE0ZDdmIixibG9ja3M6W3tvcGNvZGU6InNob3dQaWNrZXIiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2hvdyBjb2xvciBwaWNrZXIifSx7b3Bjb2RlOiJzZXRQb3MiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IHBpY2tlciBwb3NpdGlvbiB0byB4OiBbWF0geTogW1ldIixhcmd1bWVudHM6e1g6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fX0se29wY29kZToic2V0Q29sb3IiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IHBpY2tlciBjb2xvciB0byBbQ09MT1JdIixhcmd1bWVudHM6e0NPTE9SOnt0eXBlOm4uQ09MT1IsZGVmYXVsdFZhbHVlOiIjODU1Q0Q2In19fSx7b3Bjb2RlOiJnZXRDb2xvciIsYmxvY2tUeXBlOmkuUkVQT1JURVIsdGV4dDoiY29sb3IgW1RZUEVdIHZhbHVlIixhcmd1bWVudHM6e1RZUEU6e3R5cGU6bi5TVFJJTkcsbWVudToiUkdCTWVudSJ9fX0se29wY29kZToiZ2V0UG9zIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJwaWNrZXIgW0NPT1JEXSBwb3NpdGlvbiIsYXJndW1lbnRzOntDT09SRDp7dHlwZTpuLlNUUklORyxtZW51OiJQT1NNZW51In19fSx7b3Bjb2RlOiJ3aGVuQ2hhbmdlZCIsYmxvY2tUeXBlOmkuRVZFTlQsaXNFZGdlQWN0aXZhdGVkOiExLHRleHQ6IndoZW4gY29sb3IgY2hhbmdlZCJ9XSxtZW51czp7UkdCTWVudTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiaGV4IiwicmVkIiwiZ3JlZW4iLCJibHVlIl19LFBPU01lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIlgiLCJZIl19fX19c2V0Q29sb3IoQSl7by52YWx1ZT1BLkNPTE9SfWdldENvbG9ySEVYKCl7cmV0dXJuIG8udmFsdWV9c2hvd1BpY2tlcigpe28uY2xpY2soKX1nZXRDb2xvcihBKXtyZXR1cm4iaGV4Ij09PUEuVFlQRT9vLnZhbHVlOiJyZWQiPT1BLlRZUEU/ci50b1JnYkNvbG9yT2JqZWN0KG8udmFsdWUpLnI6ImdyZWVuIj09QS5UWVBFP3IudG9SZ2JDb2xvck9iamVjdChvLnZhbHVlKS5nOiJibHVlIj09QS5UWVBFP3IudG9SZ2JDb2xvck9iamVjdChvLnZhbHVlKS5iOiIifXNldFBvcyhBKXtzPXIudG9OdW1iZXIoQS5YKSxhPXIudG9OdW1iZXIoQS5ZKSxCKCl9Z2V0UG9zKEEpe3JldHVybiJYIj09QS5DT09SRD9zOiJZIj09QS5DT09SRD9hOiIifX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCgyKTtsZXQgbyxzLGEsQixjLGcsRSxRLHUsbCxoLHcsQyxJLE0sZD0iIixwPSIiLG09IiIsRj0iIixEPSIiLFk9IiIsZj0iIixOPSIiLFU9IiIseT0tMSxUPS0xLHg9LTEsUj0tMSxHPSIiLFM9IiIsYj0tMSxIPS0xLHY9IiIsaz0tMSxqPSIiLEo9LTEsej0tMSxMPSIiLFA9IiIsTz0iIixWPSIiLFc9IiI7InVuZGVmaW5lZCIhPXR5cGVvZiBzY2FmZm9sZGluZz8obz0iLnNjLW1vbml0b3Itcm9vdCIscz0iLnNjLW1vbml0b3ItdmFsdWUiLGE9Ii5zYy1tb25pdG9yLWxpc3QtbGFiZWwiLEI9Ii5zYy1tb25pdG9yLWxpc3QtZm9vdGVyIixjPSIuc2MtbW9uaXRvci1yb3ctdmFsdWUtb3V0ZXIiLGc9Ii5zYy1tb25pdG9yLXJvd3MtaW5uZXIiLEU9ZyxRPSIuc2MtbW9uaXRvci1yb3ctaW5kZXgiLHU9Ii5zYy1tb25pdG9yLWxhcmdlLXZhbHVlIixsPSIuc2MtcXVlc3Rpb24taW5uZXIiLGg9Ii5zYy1xdWVzdGlvbi1zdWJtaXQtYnV0dG9uIix3PSIuc2MtcXVlc3Rpb24taW5wdXQiLEk9Ii5zYy1xdWVzdGlvbi1pbnB1dDpob3ZlciIsTT0iLnNjLXF1ZXN0aW9uLWlucHV0OmZvY3VzIixDPSIuc2MtcXVlc3Rpb24tdGV4dCIpOihvPSdkaXZbY2xhc3NePSJtb25pdG9yX21vbml0b3ItY29udGFpbmVyXyJdJyxzPSdkaXZbY2xhc3NePSJtb25pdG9yX3ZhbHVlXyJdJyxhPSdkaXZbY2xhc3NePSJtb25pdG9yX2xpc3QtaGVhZGVyXyJdJyxCPSdkaXZbY2xhc3NePSJtb25pdG9yX2xpc3QtZm9vdGVyXyJdJyxjPSdkaXZbY2xhc3NePSJtb25pdG9yX2xpc3QtdmFsdWVfIl0nLGc9J2RpdltjbGFzc149Im1vbml0b3JfbGlzdC1ib2R5XyJdJyxFPSdkaXZbY2xhc3NePSJtb25pdG9yX2xpc3QtYm9keV8iXSA+IC5SZWFjdFZpcnR1YWxpemVkX19MaXN0JyxRPSdkaXZbY2xhc3NePSJtb25pdG9yX2xpc3QtaW5kZXhfIl0nLHU9J2RpdltjbGFzc149Im1vbml0b3JfbGFyZ2UtdmFsdWVfIl0nLGw9J2RpdltjbGFzc149InF1ZXN0aW9uX3F1ZXN0aW9uLWNvbnRhaW5lcl8iXScsaD0nYnV0dG9uW2NsYXNzXj0icXVlc3Rpb25fcXVlc3Rpb24tc3VibWl0LWJ1dHRvbl8iXScsdz0nW2NsYXNzXj0icXVlc3Rpb25fcXVlc3Rpb24tY29udGFpbmVyXyJdIGlucHV0W2NsYXNzXj0iaW5wdXRfaW5wdXQtZm9ybV8iXScsTD0naW1nW2NsYXNzXj0icXVlc3Rpb25fcXVlc3Rpb24tc3VibWl0LWJ1dHRvbi1pY29uXyJdJyxJPSdbY2xhc3NePSJxdWVzdGlvbl9xdWVzdGlvbi1pbnB1dF8iXSBpbnB1dDpmb2N1cywgW2NsYXNzXj0icXVlc3Rpb25fcXVlc3Rpb24taW5wdXRfIl0gaW5wdXQ6aG92ZXInLE09J1tjbGFzc149InF1ZXN0aW9uX3F1ZXN0aW9uLWlucHV0XyJdID4gaW5wdXQ6Zm9jdXMnLEM9J1tjbGFzc149InF1ZXN0aW9uX3F1ZXN0aW9uLWNvbnRhaW5lcl8iXSBkaXZbY2xhc3NePSJxdWVzdGlvbl9xdWVzdGlvbi1sYWJlbF8iXScpO2NvbnN0IEs9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjJaWEp6YVc5dVBTSXhMakVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGRwWkhSb1BTSXhNamt1TURBNE5ESWlJR2hsYVdkb2REMGlNVEk1TGpBd09EUXpJaUIyYVdWM1FtOTRQU0l3TERBc01USTVMakF3T0RReUxERXlPUzR3TURnME15SStQR2NnZEhKaGJuTm1iM0p0UFNKMGNtRnVjMnhoZEdVb01UUXVOVEEwTWpFc01UUXVOVEEwTWpJcElqNDhaeUJrWVhSaExYQmhjR1Z5TFdSaGRHRTlJbnNtY1hWdmREdHBjMUJoYVc1MGFXNW5UR0Y1WlhJbWNYVnZkRHM2ZEhKMVpYMGlJR1pwYkd3OUltNXZibVVpSUdacGJHd3RjblZzWlQwaWJtOXVlbVZ5YnlJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW1KMWRIUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGliV2wwWlhJaUlITjBjbTlyWlMxdGFYUmxjbXhwYldsMFBTSXhNQ0lnYzNSeWIydGxMV1JoYzJoaGNuSmhlVDBpSWlCemRISnZhMlV0WkdGemFHOW1abk5sZEQwaU1DSWdjM1I1YkdVOUltMXBlQzFpYkdWdVpDMXRiMlJsT2lCdWIzSnRZV3dpUGp4d1lYUm9JR1E5SWswdE1pNHdNRFF5TVN3NE55NDBOVE00T0dNd0xDMHlNaTQ0TVRFMklEQXNMVFkxTGpZd09EY3pJREFzTFRjM0xqTTVNak14WXpBc0xUVXVPVEEwTnprZ055NHdOVFV4Tml3dE1USXVNRFkxTnprZ01UTXVNVEEzT1RZc0xURXlMakEyTlRjNVl6RXhMamt3TlRRc01DQTFOQzR5TmpRMk5Td3dJRGMyTGpjd056UXlMREJqT0M0MU16YzJOeXd3SURFMExqRTVNekEwTERjdU1UUTROemNnTVRRdU1Ua3pNRFFzTVRjdU5UUTBPRGxqTUN3eU15NDRNak15TlNBd0xEWTBMalk1T1RBMElEQXNOelV1Tmpnd01EbGpNQ3cxTGpNMk5EUTRJQzAyTGpjeU9UQXlMREV3TGpjNE16UTFJQzB4Tmk0MU9UQXhOU3d4TUM0M09ETTBOV010TWpJdU9EZzVNalFzTUNBdE5qSXVOalV6TlRVc01DQXROelF1TXpFd016RXNNR010Tmk0ek16TTFOU3d3SUMweE15NHhNRGM1Tml3dE5TNDRNRGN5TkNBdE1UTXVNVEEzT1RZc0xURTBMalUxTURNemVpSWdjM1J5YjJ0bExXOXdZV05wZEhrOUlqQXVNVEk1TkRFaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFhkcFpIUm9QU0l5TlNJdlBqeHdZWFJvSUdROUlrMHRNaTR3TURReU1TdzROeTQwTlRNNE9HTXdMQzB5TWk0NE1URTJJREFzTFRZMUxqWXdPRGN6SURBc0xUYzNMak01TWpNeFl6QXNMVFV1T1RBME56a2dOeTR3TlRVeE5pd3RNVEl1TURZMU56a2dNVE11TVRBM09UWXNMVEV5TGpBMk5UYzVZekV4TGprd05UUXNNQ0ExTkM0eU5qUTJOU3d3SURjMkxqY3dOelF5TERCak9DNDFNemMyTnl3d0lERTBMakU1TXpBMExEY3VNVFE0TnpjZ01UUXVNVGt6TURRc01UY3VOVFEwT0Rsak1Dd3lNeTQ0TWpNeU5TQXdMRFkwTGpZNU9UQTBJREFzTnpVdU5qZ3dNRGxqTUN3MUxqTTJORFE0SUMwMkxqY3lPVEF5TERFd0xqYzRNelExSUMweE5pNDFPVEF4TlN3eE1DNDNPRE0wTldNdE1qSXVPRGc1TWpRc01DQXROakl1TmpVek5UVXNNQ0F0TnpRdU16RXdNekVzTUdNdE5pNHpNek0xTlN3d0lDMHhNeTR4TURjNU5pd3ROUzQ0TURjeU5DQXRNVE11TVRBM09UWXNMVEUwTGpVMU1ETXplaUlnYzNSeWIydGxQU0lqTURBd01EQXdJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqSXdJaTgrUEM5blBqd3ZaejQ4TDNOMlp6NDhJUzB0Y205MFlYUnBiMjVEWlc1MFpYSTZOalF1TlRBME1qRTZOalF1TlRBME1qSXRMVDQ9IixYPSJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIyWlhKemFXOXVQU0l4TGpFaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2VHMXNibk02ZUd4cGJtczlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHeHBibXNpSUhkcFpIUm9QU0l4TXpVdU16YzVJaUJvWldsbmFIUTlJakV6TlM0ek56Y2lJSFpwWlhkQ2IzZzlJakFzTUN3eE16VXVNemM1TERFek5TNHpOemNpUGp4bklIUnlZVzV6Wm05eWJUMGlkSEpoYm5Oc1lYUmxLQzB5TXpJdU16RXNMVGd5TGpNeE1Ta2lQanhuSUdSaGRHRXRjR0Z3WlhJdFpHRjBZVDBpZXlaeGRXOTBPMmx6VUdGcGJuUnBibWRNWVhsbGNpWnhkVzkwT3pwMGNuVmxmU0lnWm1sc2JEMGlJekF3TURBd01DSWdabWxzYkMxeWRXeGxQU0psZG1WdWIyUmtJaUJ6ZEhKdmEyVXRiR2x1WldOaGNEMGlZblYwZENJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKdGFYUmxjaUlnYzNSeWIydGxMVzFwZEdWeWJHbHRhWFE5SWpFd0lpQnpkSEp2YTJVdFpHRnphR0Z5Y21GNVBTSWlJSE4wY205clpTMWtZWE5vYjJabWMyVjBQU0l3SWlCemRIbHNaVDBpYldsNExXSnNaVzVrTFcxdlpHVTZJRzV2Y20xaGJDSStQSEJoZEdnZ1pEMGlUVE0wT0M0NU5qY3NNVEV5TGpBNFl6SXVNekl4TERJdU16SXhJREl1TXpJeExEWXVNVEU0SURBc09DNDBNemxzTFRjdU1UQXhMRGN1TVRBeFl6RXVPVFU1TERNdU5qVTRJRE11TkRVMExEY3VOakF4SURRdU5EQTFMREV4TGpjMU1tZzVMakU1T1dNekxqSTRNeXd3SURVdU9UWTVMREl1TmpnMklEVXVPVFk1TERVdU9UWTRkakV5TGpRM01XTXdMRE11TWpneklDMHlMalk0Tml3MUxqazJPU0F0TlM0NU5qa3NOUzQ1Tmpsb0xURXdMakF6T1dNdE1TNHlNekVzTkM0d05qTWdMVEl1T1RreUxEY3VPRGsySUMwMUxqSXdOQ3d4TVM0ME1UaHNOaTQxTVRJc05pNDFNV015TGpNeU1Td3lMak15TXlBeUxqTXlNU3cyTGpFeUlEQXNPQzQwTkd3dE9DNDRNVGdzT0M0NE1UbGpMVEl1TXpJeExESXVNeklnTFRZdU1URTVMREl1TXpJZ0xUZ3VORE01TERCc0xUY3VNVEF5TEMwM0xqRXdNbU10TXk0Mk5UY3NNUzQ1TmlBdE55NDJNREVzTXk0ME5UWWdMVEV4TGpjMU15dzBMalF3Tm5ZNUxqRTVPV013TERNdU1qZ3lJQzB5TGpZNE5TdzFMamsyT0NBdE5TNDVOamdzTlM0NU5qaG9MVEV5TGpRM1l5MHpMakk0TXl3d0lDMDFMamsyT1N3dE1pNDJPRFlnTFRVdU9UWTVMQzAxTGprMk9IWXRNVEF1TURNNVl5MDBMakEyTXl3dE1TNHlNeklnTFRjdU9EazJMQzB5TGprNU15QXRNVEV1TkRFM0xDMDFMakl3Tld3dE5pNDFNVEVzTmk0MU1USmpMVEl1TXpJekxESXVNekl4SUMwMkxqRXlMREl1TXpJeElDMDRMalEwTVN3d2JDMDRMamd4T0N3dE9DNDRNVGhqTFRJdU16SXhMQzB5TGpNeU1TQXRNaTR6TWpFc0xUWXVNVEU0SURBc0xUZ3VORE01YkRjdU1UQXlMQzAzTGpFd01tTXRNUzQ1Tml3dE15NDJOVGNnTFRNdU5EVTJMQzAzTGpZZ0xUUXVOREExTEMweE1TNDNOVEZvTFRrdU1qQXlZeTB6TGpJNE1pd3dJQzAxTGprMk9Dd3RNaTQyT0RVZ0xUVXVPVFk0TEMwMUxqazJPSFl0TVRJdU5EY3hZekFzTFRNdU1qZ3pJREl1TmpnMkxDMDFMamsyT0NBMUxqazJPQ3d0TlM0NU5qaG9NVEF1TURNNVl6RXVNak15TEMwMExqQTJNeUF5TGprNU15d3ROeTQ0T1RZZ05TNHlNRFFzTFRFeExqUXhPR3d0Tmk0MU1URXNMVFl1TlRGakxUSXVNekl4TEMweUxqTXlNaUF0TWk0ek1qRXNMVFl1TVRJZ01Dd3RPQzQwTkd3NExqZ3hPU3d0T0M0NE1UbGpNaTR6TWpFc0xUSXVNekl4SURZdU1URTRMQzB5TGpNeU1TQTRMalF6T1N3d2JEY3VNVEF4TERjdU1UQXhZek11TmpVNExDMHhMamsySURjdU5qQXhMQzB6TGpRMU5pQXhNUzQzTlRNc0xUUXVOREEyZGkwNUxqRTVPV013TEMwekxqSTRNeUF5TGpZNE5pd3ROUzQ1TmprZ05TNDVOamdzTFRVdU9UWTVhREV5TGpRM01XTXpMakk0TWl3d0lEVXVPVFk0TERJdU5qZzJJRFV1T1RZNExEVXVPVFk1ZGpFd0xqQXpObU0wTGpBMk5Dd3hMakl6TVNBM0xqZzVPQ3d5TGprNU1pQXhNUzQwTWpJc05TNHlNRFJzTmk0MU1EY3NMVFl1TlRBNVl6SXVNekl6TEMweUxqTXlNU0EyTGpFeUxDMHlMak15TVNBNExqUTBNU3d3ZWswek1qUXVOVEU1TERFMU1HTXdMREV6TGpVek9DQXRNVEF1T1RjNUxESTBMalV4T1NBdE1qUXVOVEU1TERJMExqVXhPV010TVRNdU5UTTVMREFnTFRJMExqVXhPU3d0TVRBdU9UZ2dMVEkwTGpVeE9Td3RNalF1TlRFNVl6QXNMVEV6TGpVek9TQXhNQzQ1T0N3dE1qUXVOVEU1SURJMExqVXhPU3d0TWpRdU5URTVZekV6TGpVMExEQWdNalF1TlRFNUxERXdMams0SURJMExqVXhPU3d5TkM0MU1UbDZJaUJ6ZEhKdmEyVXRiM0JoWTJsMGVUMGlNQzR4TWprME1TSWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQnpkSEp2YTJVdGQybGtkR2c5SWpFeUxqVWlMejQ4Y0dGMGFDQmtQU0pOTXpRNExqazJOeXd4TVRJdU1EaGpNaTR6TWpFc01pNHpNakVnTWk0ek1qRXNOaTR4TVRnZ01DdzRMalF6T1d3dE55NHhNREVzTnk0eE1ERmpNUzQ1TlRrc015NDJOVGdnTXk0ME5UUXNOeTQyTURFZ05DNDBNRFVzTVRFdU56VXlhRGt1TVRrNVl6TXVNamd6TERBZ05TNDVOamtzTWk0Mk9EWWdOUzQ1Tmprc05TNDVOamgyTVRJdU5EY3hZekFzTXk0eU9ETWdMVEl1TmpnMkxEVXVPVFk1SUMwMUxqazJPU3cxTGprMk9XZ3RNVEF1TURNNVl5MHhMakl6TVN3MExqQTJNeUF0TWk0NU9USXNOeTQ0T1RZZ0xUVXVNakEwTERFeExqUXhPR3cyTGpVeE1pdzJMalV4WXpJdU16SXhMREl1TXpJeklESXVNekl4TERZdU1USWdNQ3c0TGpRMGJDMDRMamd4T0N3NExqZ3hPV010TWk0ek1qRXNNaTR6TWlBdE5pNHhNVGtzTWk0ek1pQXRPQzQwTXprc01Hd3ROeTR4TURJc0xUY3VNVEF5WXkwekxqWTFOeXd4TGprMklDMDNMall3TVN3ekxqUTFOaUF0TVRFdU56VXpMRFF1TkRBMmRqa3VNVGs1WXpBc015NHlPRElnTFRJdU5qZzFMRFV1T1RZNElDMDFMamsyT0N3MUxqazJPR2d0TVRJdU5EZGpMVE11TWpnekxEQWdMVFV1T1RZNUxDMHlMalk0TmlBdE5TNDVOamtzTFRVdU9UWTRkaTB4TUM0d016bGpMVFF1TURZekxDMHhMakl6TWlBdE55NDRPVFlzTFRJdU9Ua3pJQzB4TVM0ME1UY3NMVFV1TWpBMWJDMDJMalV4TVN3MkxqVXhNbU10TWk0ek1qTXNNaTR6TWpFZ0xUWXVNVElzTWk0ek1qRWdMVGd1TkRReExEQnNMVGd1T0RFNExDMDRMamd4T0dNdE1pNHpNakVzTFRJdU16SXhJQzB5TGpNeU1Td3ROaTR4TVRnZ01Dd3RPQzQwTXpsc055NHhNRElzTFRjdU1UQXlZeTB4TGprMkxDMHpMalkxTnlBdE15NDBOVFlzTFRjdU5pQXROQzQwTURVc0xURXhMamMxTVdndE9TNHlNREpqTFRNdU1qZ3lMREFnTFRVdU9UWTRMQzB5TGpZNE5TQXROUzQ1Tmpnc0xUVXVPVFk0ZGkweE1pNDBOekZqTUN3dE15NHlPRE1nTWk0Mk9EWXNMVFV1T1RZNElEVXVPVFk0TEMwMUxqazJPR2d4TUM0d016bGpNUzR5TXpJc0xUUXVNRFl6SURJdU9Ua3pMQzAzTGpnNU5pQTFMakl3TkN3dE1URXVOREU0YkMwMkxqVXhNU3d0Tmk0MU1XTXRNaTR6TWpFc0xUSXVNekl5SUMweUxqTXlNU3d0Tmk0eE1pQXdMQzA0TGpRMGJEZ3VPREU1TEMwNExqZ3hPV015TGpNeU1Td3RNaTR6TWpFZ05pNHhNVGdzTFRJdU16SXhJRGd1TkRNNUxEQnNOeTR4TURFc055NHhNREZqTXk0Mk5UZ3NMVEV1T1RZZ055NDJNREVzTFRNdU5EVTJJREV4TGpjMU15d3ROQzQwTURaMkxUa3VNVGs1WXpBc0xUTXVNamd6SURJdU5qZzJMQzAxTGprMk9TQTFMamsyT0N3dE5TNDVOamxvTVRJdU5EY3hZek11TWpneUxEQWdOUzQ1Tmpnc01pNDJPRFlnTlM0NU5qZ3NOUzQ1TmpsMk1UQXVNRE0yWXpRdU1EWTBMREV1TWpNeElEY3VPRGs0TERJdU9Ua3lJREV4TGpReU1pdzFMakl3Tkd3MkxqVXdOeXd0Tmk0MU1EbGpNaTR6TWpNc0xUSXVNekl4SURZdU1USXNMVEl1TXpJeElEZ3VORFF4TERCNlRUTXlOQzQxTVRrc01UVXdZekFzTVRNdU5UTTRJQzB4TUM0NU56a3NNalF1TlRFNUlDMHlOQzQxTVRrc01qUXVOVEU1WXkweE15NDFNemtzTUNBdE1qUXVOVEU1TEMweE1DNDVPQ0F0TWpRdU5URTVMQzB5TkM0MU1UbGpNQ3d0TVRNdU5UTTVJREV3TGprNExDMHlOQzQxTVRrZ01qUXVOVEU1TEMweU5DNDFNVGxqTVRNdU5UUXNNQ0F5TkM0MU1Ua3NNVEF1T1RnZ01qUXVOVEU1TERJMExqVXhPWG9pSUhOMGNtOXJaVDBpSXpBd01EQXdNQ0lnYzNSeWIydGxMWGRwWkhSb1BTSTNMalVpTHo0OEwyYytQQzluUGp3dmMzWm5QandoTFMxeWIzUmhkR2x2YmtObGJuUmxjam8yTnk0Mk9UbzJOeTQyT0RrdExUND0iLFo9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjJaWEp6YVc5dVBTSXhMakVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGRwWkhSb1BTSXhNemd1TmpBM01EVWlJR2hsYVdkb2REMGlNVEUwTGpJeE1qSTNJaUIyYVdWM1FtOTRQU0l3TERBc01UTTRMall3TnpBMUxERXhOQzR5TVRJeU55SStQR2NnZEhKaGJuTm1iM0p0UFNKMGNtRnVjMnhoZEdVb01Ua3VNekF6TlRJc055NHhNRFl4TkNraVBqeG5JR1JoZEdFdGNHRndaWEl0WkdGMFlUMGlleVp4ZFc5ME8ybHpVR0ZwYm5ScGJtZE1ZWGxsY2laeGRXOTBPenAwY25WbGZTSWdabWxzYkQwaUl6QXdNREF3TUNJZ1ptbHNiQzF5ZFd4bFBTSnViMjU2WlhKdklpQnpkSEp2YTJVdGIzQmhZMmwwZVQwaU1DNHhNamswTVNJZ2MzUnliMnRsUFNJak1EQXdNREF3SWlCemRISnZhMlV0ZDJsa2RHZzlJamN1TlNJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW1KMWRIUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGliV2wwWlhJaUlITjBjbTlyWlMxdGFYUmxjbXhwYldsMFBTSXhNQ0lnYzNSeWIydGxMV1JoYzJoaGNuSmhlVDBpSWlCemRISnZhMlV0WkdGemFHOW1abk5sZEQwaU1DSWdjM1I1YkdVOUltMXBlQzFpYkdWdVpDMXRiMlJsT2lCdWIzSnRZV3dpUGp4d1lYUm9JR1E5SWsweE1UVXVOVFV6TlRJc05TNDNPVEEzTm5ZNE9DNDBNVGcwT0dNd0xEVXVNRFV4TXpjZ0xUUXVNRGsxTlRJc09TNHhORFk1SUMwNUxqRTBOamtzT1M0eE5EWTVhQzB4TVRJdU9ERXpNalZqTFRVdU1EVXhNemNzTUNBdE9TNHhORFk1TEMwMExqQTVOVFV5SUMwNUxqRTBOamtzTFRrdU1UUTJPWFl0T0RndU5ERTRORGhqTUN3dE5TNHdOVEV6TnlBMExqQTVOVFV5TEMwNUxqRTBOamtnT1M0eE5EWTVMQzA1TGpFME5qbG9NVEV5TGpneE16STFZelV1TURVeE16Y3NNQ0E1TGpFME5qa3NOQzR3T1RVMU1pQTVMakUwTmprc09TNHhORFk1ZWsweUxqYzBNREkzTERVM0xqVTRPVFkwYkRFMUxqRTJNRGs0TEMweE1TNHhORGMzT0dNekxqZ3hPRGd6TEMweUxqZ3hNalkzSURrdU1UWXdOaklzTFRJdU1qTTBNVE1nTVRJdU1qa3pORE1zTVM0ek16VTBOV3d4TUM0eU1qTTVOQ3d4TVM0Mk5EZzFOMnd5TkM0MU5EVTNMQzB4TWk0eU56QTFObU16TGpBeE5qRTVMQzB4TGpVeE1UVXlJRFl1TmpJME5qUXNMVEV1TWpNM01USWdPUzR6T0RBeE5Dd3dMamN4TlRjMGJESXlMamt4TlRJMkxERTJMakl6TXpRMmRpMDBPUzR4TmpZNE5tZ3RPVFF1TlRFNU5EWjZUVE00TGpVM056Z3hMRGcxTGpBMk1qTTBiQzB4Tmk0MU9UY3dOQ3d0TVRndU9UQTRPVEpzTFRFNUxqRTFOVGc1TERFMExqQTRNVFkxWXkwd0xqQXlOelEwTERBdU1ESXdOVGdnTFRBdU1EVTNNVGNzTUM0d01qazNNeUF0TUM0d09EUTJNU3d3TGpBMU1ETXhkalF1TnpjMk9UZDZUVGsxTGpFNU56RXNPRFV1TURZeU16UnNMVEkyTGprMU5Ua3hMQzB4T1M0d09URTRObXd0TVRVdU16UTJNakVzTnk0Mk56RTVObXd4TUM0d01qSTNNU3d4TVM0ME1UazVlazB6TUM0eE9EQTVOaXd5T1M0NE1ERXpObU13TEMwMUxqUTNNakV6SUMwMExqUXpOakkxTEMwNUxqa3dPRE00SUMwNUxqa3dPRE00TEMwNUxqa3dPRE00WXkwMUxqUTNNakV6TERBZ0xUa3VPVEE0TXpnc05DNDBNell5TlNBdE9TNDVNRGd6T0N3NUxqa3dPRE00WXpBc05TNDBOekl4TXlBMExqUXpOakkxTERrdU9UQTRNemdnT1M0NU1EZ3pPQ3c1TGprd09ETTRZelV1TkRjeU1UTXNNQ0E1TGprd09ETTRMQzAwTGpRek5qSTFJRGt1T1RBNE16Z3NMVGt1T1RBNE16aDZJaTgrUEM5blBqd3ZaejQ4TDNOMlp6NDhJUzB0Y205MFlYUnBiMjVEWlc1MFpYSTZOamt1TXpBek5USXpPVFEyTXpFeE9EbzFOeTR4TURZeE16WTRNakEzTURrNU5pMHRQZz09IixfPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7Xy5jbGFzc05hbWU9InNob3ZlbGNzcy1zdHlsZSIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChfKTtjb25zdCBxPSgpPT57bGV0IEE9IiI7ZCYmKEErPSIiLmNvbmNhdChvLCIsICIpLmNvbmNhdChCLCIsICIpLmNvbmNhdChhLCIsICIpLmNvbmNhdChRLCIgeyBjb2xvcjogIikuY29uY2F0KGQsIjsgfSIpKSxtJiYoQSs9IiIuY29uY2F0KG8sIiwgIikuY29uY2F0KGcsIiB7IGJhY2tncm91bmQ6ICIpLmNvbmNhdChtLCI7IH0iKSkscCYmKEErPSIiLmNvbmNhdChvLCIgeyBib3JkZXItY29sb3I6ICIpLmNvbmNhdChwLCI7IH0iKSkseD49MCYmKEErPSIiLmNvbmNhdChvLCIgeyBib3JkZXItcmFkaXVzOiAiKS5jb25jYXQoeCwicHg7IH0iKSksUj49MCYmKEErPSIiLmNvbmNhdChvLCIgeyBib3JkZXItd2lkdGg6ICIpLmNvbmNhdChSLCJweDsgfSIpKSxGJiYoQSs9IiIuY29uY2F0KHMsIiwgIikuY29uY2F0KHUsIiB7IGJhY2tncm91bmQ6ICIpLmNvbmNhdChGLCIgIWltcG9ydGFudDsgfSIpKSxEJiYoQSs9IiIuY29uY2F0KHMsIiwgIikuY29uY2F0KHUsIiB7IGNvbG9yOiAiKS5jb25jYXQoRCwiOyB9IikpLHk+PTAmJihBKz0iIi5jb25jYXQocywiIHsgYm9yZGVyLXJhZGl1czogIikuY29uY2F0KHksInB4OyB9IikpLGYmJihBKz0iIi5jb25jYXQoYSwiIHsgYmFja2dyb3VuZDogIikuY29uY2F0KGYsIjsgfSIpKSxZJiYoQSs9IiIuY29uY2F0KEIsIiB7IGJhY2tncm91bmQ6ICIpLmNvbmNhdChmLCI7IH0iKSksVSYmKEErPSIiLmNvbmNhdChjLCIgeyBiYWNrZ3JvdW5kOiAiKS5jb25jYXQoVSwiICFpbXBvcnRhbnQ7IH0iKSksTiYmKEErPSIiLmNvbmNhdChjLCIgeyBjb2xvcjogIikuY29uY2F0KE4sIjsgfSIpKSxUPj0wJiYoQSs9IiIuY29uY2F0KGMsIiB7IGJvcmRlci1yYWRpdXM6ICIpLmNvbmNhdChULCJweDsgfSIpKSxHJiYoQSs9IiIuY29uY2F0KEUsIiB7IG92ZXJmbG93OiAiKS5jb25jYXQoRywiICFpbXBvcnRhbnQ7IH0iKSksUyYmKEErPSIiLmNvbmNhdChsLCIgeyBiYWNrZ3JvdW5kOiAiKS5jb25jYXQoUywiICFpbXBvcnRhbnQ7IGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OyB9IikpLGI+PTAmJihBKz0iIi5jb25jYXQobCwiIHsgYm9yZGVyLXJhZGl1czogIikuY29uY2F0KGIsInB4ICFpbXBvcnRhbnQ7IH0iKSksSD49MCYmKEErPSIiLmNvbmNhdChsLCIgeyBib3JkZXItd2lkdGg6ICIpLmNvbmNhdChILCJweCAhaW1wb3J0YW50OyB9IikpLHYmJihBKz0iIi5jb25jYXQoaCwiIHsgYmFja2dyb3VuZC1jb2xvcjogIikuY29uY2F0KHYsIjsgfSIpKSxrPj0wJiYoQSs9IiIuY29uY2F0KGgsIiB7IGJvcmRlci1yYWRpdXM6ICIpLmNvbmNhdChrLCJweCAhaW1wb3J0YW50OyB9IikpLGomJihBKz0iIi5jb25jYXQodywiIHsgYmFja2dyb3VuZDogIikuY29uY2F0KGosIiAhaW1wb3J0YW50OyB9IiksQSs9IiIuY29uY2F0KHcsIiB7IGJvcmRlcjogbm9uZSAhaW1wb3J0YW50OyB9IikpLFAmJihBKz0iIi5jb25jYXQodywiIHsgY29sb3I6ICIpLmNvbmNhdChQLCIgIWltcG9ydGFudDsgfSIpKSxKPj0wJiYoQSs9IiIuY29uY2F0KHcsIiB7IGJvcmRlci1yYWRpdXM6ICIpLmNvbmNhdChKLCJweCAhaW1wb3J0YW50OyB9IikpLHo+PTAmJihBKz0iIi5jb25jYXQodywiIHsgYm9yZGVyLXdpZHRoOiAiKS5jb25jYXQoeiwicHggIWltcG9ydGFudDsgfSIpKSxWJiYoQSs9IiIuY29uY2F0KGgsJyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgiJykuY29uY2F0KGVuY29kZVVSSShWKSwnIikgIWltcG9ydGFudDsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9JyksQSs9IiIuY29uY2F0KEwsIiB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfSIpKSxXJiYoQSs9IiIuY29uY2F0KEksIiwgIikuY29uY2F0KE0sIiB7IGJvcmRlci1jb2xvcjogIikuY29uY2F0KFcsIiAhaW1wb3J0YW50OyB9IiksQSs9IiIuY29uY2F0KE0sIiB7IGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfSIpKSxPJiYoQSs9IiIuY29uY2F0KEMsIiB7IGNvbG9yOiAiKS5jb25jYXQoTywiICFpbXBvcnRhbnQ7IH0iKSksXy50ZXh0Q29udGVudD1BfSwkPSgpPT57ZD0iIixwPSIiLG09IiIsRj0iIixEPSIiLFk9IiIsZj0iIixOPSIiLFU9IiIseT0tMSxUPS0xLHg9LTEsUj0tMSxHPSIiLFM9IiIsYj0tMSxIPS0xLHY9IiIsaz0tMSxqPSIiLEo9LTEsej0tMSxMPSIiLFA9IiIsTz0iIixWPSIiLFc9IiIscSgpfSxBQT0oQSxlLHQpPT57Y29uc3Qgbj0oQT0+e2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChvKTtmb3IoY29uc3QgdCBvZiBlKWlmKHQuZGF0YXNldC5pZD09PUEpcmV0dXJuIHQ7cmV0dXJuIG51bGx9KShBKTtuJiYobi5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZSgiLmNvbmNhdChlLCJweCwgIikuY29uY2F0KHQsInB4KSIpLG4uc3R5bGUubGVmdD0iMHB4IixuLnN0eWxlLnRvcD0iMHB4Iil9LGVBPShBLGUsdCxuLGkpPT57Y29uc3Qgcj1BLmxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZShlLHQpO3ImJkFBKHIuaWQsbixpKX07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMucnVudGltZS5vbigiUlVOVElNRV9ESVNQT1NFRCIsJCl9Z2V0SW5mbygpe3JldHVybntpZDoic2hvdmVsY3NzIixuYW1lOiJDdXN0b20gU3R5bGVzIixtZW51SWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUNCMmFXVjNRbTk0UFNJd0lEQWdNamsyTWprM0lETXpNek16TXlJZ2VHMXNibk02ZUd4cGJtczlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHeHBibXNpSUhOb1lYQmxMWEpsYm1SbGNtbHVaejBpWjJWdmJXVjBjbWxqVUhKbFkybHphVzl1SWlCMFpYaDBMWEpsYm1SbGNtbHVaejBpWjJWdmJXVjBjbWxqVUhKbFkybHphVzl1SWlCcGJXRm5aUzF5Wlc1a1pYSnBibWM5SW05d2RHbHRhWHBsVVhWaGJHbDBlU0lnWm1sc2JDMXlkV3hsUFNKbGRtVnViMlJrSWlCamJHbHdMWEoxYkdVOUltVjJaVzV2WkdRaVBqeGtaV1p6UGp4c2FXNWxZWEpIY21Ga2FXVnVkQ0JwWkQwaWFXUTBJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJalUwTVRJNExqY2lJSGt4UFNJM09UTTFOUzQxSWlCNE1qMGlNalF3TXpFNElpQjVNajBpTnprek5UVXVOU0krUEhOMGIzQWdiMlptYzJWMFBTSXdJaUJ6ZEc5d0xXTnZiRzl5UFNJalpUaGxOMlUxSWk4K1BITjBiM0FnYjJabWMyVjBQU0l4SWlCemRHOXdMV052Ykc5eVBTSWpabVptSWk4K1BDOXNhVzVsWVhKSGNtRmthV1Z1ZEQ0OGJHbHVaV0Z5UjNKaFpHbGxiblFnYVdROUltbGtOU0lnWjNKaFpHbGxiblJWYm1sMGN6MGlkWE5sY2xOd1lXTmxUMjVWYzJVaUlIZ3hQU0kyTWpBeE9TNHpJaUI1TVQwaU1qQXlPRFk0SWlCNE1qMGlNak16TlRFMUlpQjVNajBpTWpBeU9EWTRJajQ4YzNSdmNDQnZabVp6WlhROUlqQWlJSE4wYjNBdFkyOXNiM0k5SWlObE9HVTNaVFVpTHo0OGMzUnZjQ0J2Wm1aelpYUTlJakVpSUhOMGIzQXRZMjlzYjNJOUlpTm1abVlpTHo0OEwyeHBibVZoY2tkeVlXUnBaVzUwUGp4c2FXNWxZWEpIY21Ga2FXVnVkQ0JwWkQwaWFXUTJJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakV3TkRrMk15SWdlVEU5SWprNU5qRTJMamtpSUhneVBTSXhNRFE1TmpNaUlIa3lQU0l4TnpFd01qRWlQanh6ZEc5d0lHOW1abk5sZEQwaU1DSWdjM1J2Y0MxamIyeHZjajBpSTJReFpETmtOQ0l2UGp4emRHOXdJRzltWm5ObGREMGlMak00T0NJZ2MzUnZjQzFqYjJ4dmNqMGlJMlF4WkROa05DSXZQanh6ZEc5d0lHOW1abk5sZEQwaU1TSWdjM1J2Y0MxamIyeHZjajBpSTJReFpETmtOQ0l2UGp3dmJHbHVaV0Z5UjNKaFpHbGxiblErUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKcFpEY2lJR2R5WVdScFpXNTBWVzVwZEhNOUluVnpaWEpUY0dGalpVOXVWWE5sSWlCNGJHbHVhenBvY21WbVBTSWphV1EySWlCNE1UMGlNVGswTVRjNUlpQjVNVDBpTmpFeE9EVXVPQ0lnZURJOUlqRTVOREUzT1NJZ2VUSTlJakV6TlRRd055SXZQanh0WVhOcklHbGtQU0pwWkRBaVBqeHNhVzVsWVhKSGNtRmthV1Z1ZENCcFpEMGlhV1F4SWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpFd05EazJNeUlnZVRFOUlqazVOakUyTGpraUlIZ3lQU0l4TURRNU5qTWlJSGt5UFNJeE56RXdNakVpUGp4emRHOXdJRzltWm5ObGREMGlNQ0lnYzNSdmNDMXZjR0ZqYVhSNVBTSXdJaUJ6ZEc5d0xXTnZiRzl5UFNJalptWm1JaTgrUEhOMGIzQWdiMlptYzJWMFBTSXVNemc0SWlCemRHOXdMV052Ykc5eVBTSWpabVptSWk4K1BITjBiM0FnYjJabWMyVjBQU0l4SWlCemRHOXdMVzl3WVdOcGRIazlJaTQ0TXpFaUlITjBiM0F0WTI5c2IzSTlJaU5tWm1ZaUx6NDhMMnhwYm1WaGNrZHlZV1JwWlc1MFBqeHdZWFJvSUdacGJHdzlJblZ5YkNnamFXUXhLU0lnWkQwaVRUWXhOek0zSURrNU5EWTNhRGcyTkRVemRqY3hOekEwU0RZeE56TTNlaUl2UGp3dmJXRnphejQ4YldGemF5QnBaRDBpYVdReUlqNDhiR2x1WldGeVIzSmhaR2xsYm5RZ2FXUTlJbWxrTXlJZ1ozSmhaR2xsYm5SVmJtbDBjejBpZFhObGNsTndZV05sVDI1VmMyVWlJSGd4UFNJeE9UUXhOemtpSUhreFBTSTJNVEU0TlM0NElpQjRNajBpTVRrME1UYzVJaUI1TWowaU1UTTFOREEzSWo0OGMzUnZjQ0J2Wm1aelpYUTlJakFpSUhOMGIzQXRiM0JoWTJsMGVUMGlNQ0lnYzNSdmNDMWpiMnh2Y2owaUkyWm1aaUl2UGp4emRHOXdJRzltWm5ObGREMGlMak00T0NJZ2MzUnZjQzFqYjJ4dmNqMGlJMlptWmlJdlBqeHpkRzl3SUc5bVpuTmxkRDBpTVNJZ2MzUnZjQzF2Y0dGamFYUjVQU0l1T0RNeElpQnpkRzl3TFdOdmJHOXlQU0lqWm1abUlpOCtQQzlzYVc1bFlYSkhjbUZrYVdWdWRENDhjR0YwYUNCbWFXeHNQU0oxY213b0kybGtNeWtpSUdROUlrMHhORGM0T1RBZ05qRXdNelpvT1RJMU56aDJOelExTWpGb0xUa3lOVGM0ZWlJdlBqd3ZiV0Z6YXo0OGMzUjViR1UrTG1acGJEWjdabWxzYkRvak1EQXdPMlpwYkd3dGIzQmhZMmwwZVRvdU1EVXdPVGg5UEM5emRIbHNaVDQ4TDJSbFpuTStQR2NnYVdROUlreGhlV1Z5WDNnd01ESXdYekVpUGp4bklHbGtQU0pmTlRFek1EZzFNekEwSWo0OGNHRjBhQ0JtYVd4c1BTSWpNakEyTW1GbUlpQmtQU0pOTWpZNE5URTNJRE13TURreU1td3RNVEl3TXpZNUlETXlOREV4TFRFeU1ETTNNUzB6TWpReE1Vd3dJREJvTWprMk1qazNlaUl2UGp4d1lYUm9JR1pwYkd3OUlpTXpZemxqWkRjaUlHUTlJazB4TkRneE5EWWdNalF6TnpSMk1qZ3pNVEE1YkRJM015QTNOQ0E1TnpRd09TMHlOakl5T1NBeU1qUTROUzB5TlRZNU5UUjZJaTgrUEhCaGRHZ2dabWxzYkQwaUkyWm1aaUlnWkQwaVRURTBPREEwTUNBNU9UWXhOMnd0T0RZeE5UTWdNelU0T0RBZ01qZzFOeUF6TlRVeU5DQTRNekk1Tmkwek5UWXhOQ0E0T0RZd05DMHpOemc0TXlBek5qYzBMVE0yTXpNNUxUa3lNamM0SURNNE5ETXllaUl2UGp4d1lYUm9JRzFoYzJzOUluVnliQ2dqYVdRd0tTSWdabWxzYkQwaWRYSnNLQ05wWkRZcElpQmtQU0pOTmpFNE9EY2dNVE0xTkRrM2JESTROVGNnTXpVMU1qUWdPRE15T1RVdE16VTJNVFJXT1RrMk1UZDZJaTgrUEhCaGRHZ2diV0Z6YXowaWRYSnNLQ05wWkRJcElpQm1hV3hzUFNKMWNtd29JMmxrTnlraUlHUTlJazB5TkRBek1UZ2dOakV4T0Rac0xUa3lNamM0SURNNE5ETXhkak0xTnprd2JEZzROakEwTFRNM09EZ3plaUl2UGp4d1lYUm9JR1pwYkd3OUluVnliQ2dqYVdRMUtTSWdaRDBpVFRZeU1ERTVJREV6TlRRNU4yd3lPRFU0SURNMU5USTBJREV5Tnpnd05pQTBNRGN0TWpnMU9TQTBOek0yTlMwME1qQTFOU0F4TVRnME1DMDBNRFF5T0MweE1ESXdPQzB5TkRVd0xUSTVNems1U0RZM016STNiRFE1TURBZ05UWTNOVFlnTnpVNU5UQWdNakkwTlRjZ056VTFNemd0TWpJd05UQWdPVGd3TUMweE1USTJPVEo2SWk4K1BIQmhkR2dnWTJ4aGMzTTlJbVpwYkRZaUlHUTlJazB4TkRnd05EQWdNVE0xTkRrM1NEWXhPRGc0YkRJNE5UY2dNelUxTWpRZ09ETXlPVFVnTWpZMmRpMHpOVGM1TUhwdE1DQTVOVEF5TW13dE5EQTRJREV4TkMwME1EUXlNaTB4TURJd09DMHlORFV3TFRJNU16azVTRFkzTVRrM2JEUTRPVGtnTlRZM05UWWdOelU1TkRRZ01qSTBOVGQyTFRNNU56SXdlaUl2UGp4d1lYUm9JR1pwYkd3OUluVnliQ2dqYVdRMEtTSWdaRDBpVFRVME1USTVJRFl4TVRnMmFERTROakU0T1d3dE16WTNOQ0F6TmpNek9VZzFPRFl5TUd3dE5EUTVNUzB6TmpNek9Yb2lMejQ4Y0dGMGFDQmpiR0Z6Y3owaVptbHNOaUlnWkQwaVRURTBPREEwTUNBMk1URTROa2cxTkRFeU9XdzBORGt4SURNMk16TTVhRGc1TkRJd2VpSXZQand2Wno0OEwyYytQQzl6ZG1jKyIsY29sb3IxOiIjMDA3MmQ2Iixjb2xvcjI6IiMwMDY0YmMiLGNvbG9yMzoiIzAxNTM5YiIsYmxvY2tzOlt7YmxvY2tJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIyWlhKemFXOXVQU0l4TGpFaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2VHMXNibk02ZUd4cGJtczlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHeHBibXNpSUhkcFpIUm9QU0l4TVRZdU5ERTVOalFpSUdobGFXZG9kRDBpTVRFNExqTTBPVGswSWlCMmFXVjNRbTk0UFNJd0xEQXNNVEUyTGpReE9UWTBMREV4T0M0ek5EazVOQ0krUEdjZ2RISmhibk5tYjNKdFBTSjBjbUZ1YzJ4aGRHVW9PQzQ1TWpnd09TdzNMalkxTVRrMEtTSStQR2NnWkdGMFlTMXdZWEJsY2kxa1lYUmhQU0o3Sm5GMWIzUTdhWE5RWVdsdWRHbHVaMHhoZVdWeUpuRjFiM1E3T25SeWRXVjlJaUJ6ZEhKdmEyVXRiR2x1WldOaGNEMGlZblYwZENJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKdGFYUmxjaUlnYzNSeWIydGxMVzFwZEdWeWJHbHRhWFE5SWpFd0lpQnpkSEp2YTJVdFpHRnphR0Z5Y21GNVBTSWlJSE4wY205clpTMWtZWE5vYjJabWMyVjBQU0l3SWlCemRIbHNaVDBpYldsNExXSnNaVzVrTFcxdlpHVTZJRzV2Y20xaGJDSStQSEJoZEdnZ1pEMGlUVE14TGpjM056RTRMREV3TGpVMU1ETXpZeTB4TUM0eU9Ua3hOeXd4TGpFd09EVXlJQzB4Tmk0ek5EVTJOU3cwTGpZMk5UZzNJQzB4T1M0eE5EY3hPU3c1TGpFNE1EVTNZeTB4TGpnNU1qSXNNeTR5TkRjNU55QXRNaTR6TkRFMU5pdzNMakV6T0RjeUlDMHhMakl6T1RVekxERXdMamN6TWpWc01DNHdPVEEzTERBdU16UXlOalJzTWpBdU1qWTFOemtzTFRJd0xqSTFOVGN4ZWswM09DNHlPRFEyT1N3eU1TNDNOVFkwT0dNdE55NHpORFkwTnl3dE55NHpOVFkxTlNBdE1UUXVOemN6TlRjc0xURXpMakV3TURjZ0xUSXdMamc1TURVNUxDMHhOaTR5T1RVeU4yTXROQzR6TkRNek9Td3RNaTR5TXpjeUlDMDNMamN5T1RReUxDMHpMakV6TkRBNUlDMDVMak01TWpJc0xUSXVNVGcyT0RGc0xUQXVPREkyTXpZc01DNDRNall6Tm1NdE1TNHlNamswTlN3eUxqQXhOVFVnTFRBdU5URXpPVFlzTmk0ek1EZzBPU0F4TGpjNU16YzVMREV4TGpZMk9UZGpNeTQxTmpNek5TdzNMamN6TWpFNUlEZ3VOVEl3TVRVc01UUXVOelF5TURnZ01UUXVOakl5TkN3eU1DNDJOemc1TjJNMkxqazVNemMzTERZdU9Ua3pOemNnTVRRdU5UQXhORGdzTVRJdU1qTTBNRFFnTWpBdU9Ea3dOVGtzTVRVdU1URTJNbU0wTGpVME5EazBMREl1TURFMU5TQTRMakkzTXpZc01pNDVNakkwTnlBeE1DNDBNekF4T0N3eUxqTXpOemszYkRFdU9USTBPQ3d0TVM0NU16UTRPR013TGpRMU16UTRMQzB4TGpreU5EZ2dMVEF1TlRBek9EZ3NMVFV1TVRjNU9ESWdMVEl1TlRBNU1qa3NMVGt1TWpBd056TmpMVE11TVRFek9UUXNMVFl1TWpVNE1URWdMVGd1TnpnM05UVXNMVEV6TGpjMk5UZ3lJQzB4Tmk0d05ETXpNeXd0TWpFdU1ERXhOVEo2VFRZd0xqSTROak16TEMwd0xqRTFNVGswWXpZdU56RXhOVGtzTXk0ME5UWTFOeUF4TkM0Mk9USTVOU3c1TGpZME5ERTBJREl5TGpRNE1qZ3pMREUzTGpRek5EQXlZemN1TnpnNU9Ea3NOeTQzT0RrNE9TQXhNeTQ0TlRZMU1pd3hOUzQ0TWpFMk15QXhOeTR5TWpJek9Td3lNaTQzTWpRMk9XTXpMamMzT1RBMUxEY3VOVFk0TVRnZ05DNHpPRE0zTERFMExqQXlOemcwSURBdU5qazFNelFzTVRjdU56RTJNVGxqTFRBdU5qQTFPQ3d3TGpVM056UTVJQzB4TGpJNU5UVXlMREV1TURVNU9UWWdMVEl1TURRMU56SXNNUzQwTXpGc0xUTTVMalF5TXpBMkxETTVMalF3TWpsakxUSXVNelk0TWl3eUxqTTRPRE0ySUMwekxqTTFOVGdzTXk0ek9UWXhNU0F0Tnk0ME16Y3hOeXcwTGpNeE16RTFZeTB5TGpBek1UTXlMREF1TkRRd016Y2dMVFF1TVRFNE55d3dMalUyTWpjMklDMDJMakU0TnpVM0xEQXVNell5TnpoakxUSXVNVFF4T0RNc0xUQXVNakEzT0NBdE5DNHlOVEl4TlN3dE1DNDJOalF6TnlBdE5pNHlPRGd6TkN3dE1TNHpOakEwTm1NdE9DNHpPVFExTXl3dE1pNDRNakUyT1NBdE1UY3VNVE14Tmprc0xUZ3VOekkzTURrZ0xUSTBMalF3TnpZeUxDMHhOUzQ1T0RJNE5tTXROeTR5TnpVNU15d3ROeTR5TlRVM055QXRNVE11TXpjeU9Dd3RNVFl1TURVek5ERWdMVEUyTGpNeU5UVXNMVEkwTGpRMk9ERmpMVEF1TlRVd05EWXNMVEV1TlRJMU5USWdMVEF1T1RjNE5ETXNMVE11TURreU5EZ2dMVEV1TWpjNU9EUXNMVFF1TmpnMk1ESmpMVEF1TWpnMk1ETXNMVEV1TkRjM056VWdMVEF1TkRNeE1USXNMVEl1T1RjNU15QXRNQzQwTXpNek5Dd3ROQzQwT0RRME4yTXRNQzR4TVRneE55d3RNaTR6TlRJek5DQXdMak13TlRreUxDMDBMamN3TURNM0lERXVNak01TlRNc0xUWXVPRFl5TnpWak1DNDVOamMwTEMweExqZzJNVGN6SURJdU1qVXpNaXd0TXk0MU16azNOaUF6TGpjNU9USXhMQzAwTGprMU9ERXhiREF1TVRZeE1qUXNMVEF1TVRjeE16SnNOQzQzTkRZME9Td3ROQzQzTXpZME1XTXRNQzQwT1RjME55d3RNUzR4TWpZd01pQXRNQzQ1TURnME9Dd3RNaTR5T0RneU9DQXRNUzR5TWprME5Td3RNeTQwTnpZM00yTXRNUzQxTlRZeExDMDFMakU1TlRnNUlDMHdMamcxTXpneUxDMHhNQzQ0TURZM05TQXhMamt6TkRnNExDMHhOUzQwTlRnNE5HTTBMak13TXpBNExDMDNMakF6TkRBM0lERXpMamsxTnpNc0xURXlMakkyTkRJNElETXdMalkyTlRjekxDMHhNaTQwTXpVMmJEUXVNakF5TXpFc0xUUXVNVGt5TWpOak1DNDBORE0yT0N3dE1DNDJNRGd6TWlBd0xqazRNVEV4TEMweExqRTBNak0xSURFdU5Ua3lNalFzTFRFdU5UZ3lNVFpqTUM0eE9UZzFOeXd0TUM0eE9EY3pNU0F3TGpReU5qY3NMVEF1TXpRd05UTWdNQzQyTnpVeE9Td3RNQzQwTlRNME9HTXpMamN6T0RjMExDMHlMakkxTnpNMUlEa3VNamN4TWpjc0xURXVNell3TkRZZ01UVXVOalF3TWpNc01TNDVNalE0ZWswNE9TNHdORGMwTXl3MU9TNDNOamcyT1dNdE1pNDBOamN5TEMwd0xqVTFPVFkySUMwMExqZzJPRGMwTEMweExqTTNOekEzSUMwM0xqRTJOVEE0TEMweUxqUXpPRGMxWXkwM0xqQTFOREl6TEMwekxqRTRORFE0SUMweE5TNHlNamN3Tml3dE9DNDROemd5TlNBdE1qSXVOelkxTEMweE5pNDBNRFl4TW1NdE5pNDJOamN5Tnl3dE5pNDFNRFkzTmlBdE1USXVNRGM0TlRFc0xURTBMakU0TmpNMklDMHhOUzQ1TmpJM01Td3RNakl1TmpVME1UVmpMVEV1TURrNE1qWXNMVEl1TkRjNE5EVWdMVEV1T1RBMk5EWXNMVFV1TURjMU5URWdMVEl1TkRBNE5USXNMVGN1TnpNNU5EbHNMVEkyTGpReE9EazRMREkyTGpNd01qSmpNVE11T0Rnek5UY3NNVFV1TURNM05Ua2dOVFV1TXpjeU16Y3NNakF1TXpVMU9UUWdOamd1TWpReE15d3hOQzQ0TkRNMU5tTXhMalV5T1RrM0xDMHdMall5TmpFeUlETXVNamM1TVRVc01DNHdPVEkzTmlBekxqa3lOalk1TERFdU5qRXpPR013TGpZME56VTBMREV1TlRJeE1ETWdMVEF1TURRMk56RXNNeTR5T0RBeE5DQXRNUzQxTlRnME9Td3pMamswT0RrM1l5MHhOUzR6TWpjNE15dzJMalUyTURReklDMDJNaTQxTlRnM05pd3RNUzQxTWpVM05pQXROelF1T0RZMk16UXNMVEUyTGpBNE16QTViQzB6TGpZNU9EUXpMRE11TnpNNE56UmpMVEV1TURFM09Td3dMamt4TkRBMUlDMHhMamc0TWpFM0xERXVPVGcxT0RjZ0xUSXVOVFU1Tmpnc015NHhOelEwWXkwd0xqVXhOVE0yTERFdU16STNNemNnTFRBdU56TTFORFVzTWk0M05URXdOU0F0TUM0Mk5EUTVOaXcwTGpFM01qQTNZekF1TURBM055d3hMakV4TmpReUlEQXVNVEU1TURRc01pNHlNamszTWlBd0xqTXpNalUyTERNdU16STFOVFpqTUM0eU16a3hNeXd4TGpJNE1ESXpJREF1TlRjMk1ETXNNaTQxTkRBeU5DQXhMakF3TnpjMExETXVOelk0T1Rkak1pNDJNekF5TWl3M0xqUTROelUySURndU1EWXhPVGNzTVRVdU16ZzRNamtnTVRRdU9ESXpPVFlzTWpJdU1EVTVOVGhqTmk0M05qRTVPU3cyTGpZM01USTVJREUwTGpVeU1UWXpMREV5TGpBeU1qUXlJREl4TGprM09EazJMREUwTGpRNU1UUmpNUzQxTmpZeU1Td3dMalUwSURNdU1UZzVNak1zTUM0NE9UZzBNU0EwTGpnek56RTVMREV1TURZNE1qRjJNR014TGpReE5EZzJMREF1TVRNNU5DQXlMamcwTWpjM0xEQXVNRFUzT0RFZ05DNHlNekkxTXl3dE1DNHlOREU0Tm1NeExqY3dPVE16TEMwd0xqSTVPRGswSURNdU1qUTROVEVzTFRFdU1qRTNOREVnTkM0ek1qTXlNeXd0TWk0MU56azRNMk13TGpBMk1EUTJMQzB3TGpBM01EVTBJREF1TmpRME9UWXNMVEF1TmpRME9UWWdNQzQyTXpRNE9Dd3RNQzQyTlRVd05Ib2lJR1pwYkd3OUlpTXdNREF3TURBaUlHWnBiR3d0Y25Wc1pUMGlibTl1ZW1WeWJ5SWdjM1J5YjJ0bExXOXdZV05wZEhrOUlqQXVNVEk1TkRFaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFhkcFpIUm9QU0l4TlNJdlBqeHdZWFJvSUdROUlrMHpMakk1TnpBeUxEUTVMalF5TVRaak1pNDBORGcyT1N3d0xqUTRPRGd4SURFMExqWXdNemN6TERJMExqSTVOemM1SURNeExqYzVPU3d5TVM0ME1qa3lNMk14TlM0Mk16VTRNeXd0TWk0Mk1EZzBNU0E1TGpBNE1EWTNMREUwTGpNek1qUTFJRFE0TGpVME9EWTFMQzAxTGpVd05qZ3liQzB5T0M0MU1Ea3hOaXd5T0M0ME56ZzVNMk13TERBZ0xUQXVOVGMwTkRJc01DNDFPRFExSUMwd0xqWXpORGc0TERBdU5qVTFNRFJqTFRFdU1EYzBOeklzTVM0ek5qSTBNU0F0TWk0Mk1UTTVMREl1TWpnd09TQXROQzR6TWpNeU15d3lMalUzT1Rnell5MHhMak00T1RjMkxEQXVNams1TmpZZ0xUSXVPREUzTmpnc01DNHpPREV5TmlBdE5DNHlNekkxTXl3d0xqSTBNVGcyZGpCakxURXVOalEzT1RZc0xUQXVNVFk1TnprZ0xUTXVNamN3T1Rjc0xUQXVOVEk0TWpFZ0xUUXVPRE0zTVRrc0xURXVNRFk0TWpGakxUY3VORFUzTXpNc0xUSXVORGs1TWpFZ0xURTFMakk0TnpVeUxDMDNMamcyTURReklDMHlNUzQ1TlRnNExDMHhOQzQwT0RFek1tTXROaTQyTnpFeU9Td3ROaTQyTWpBNE9TQXRNVEl1TVRZek5Td3RNVFF1TlRjeU1ESWdMVEUwTGpjNU16Y3lMQzB5TWk0d05UazFPR010TUM0ME16RTNNaXd0TVM0eU1qZzNOQ0F0TUM0M05qZzJNaXd0TWk0ME9EZzNOU0F0TVM0d01EYzNOQ3d0TXk0M05qZzVOMk10TUM0eU1UTTFNaXd0TVM0d09UVTROU0F0TUM0ek1qUTROaXd0TWk0eU1Ea3hOQ0F0TUM0ek16STFOaXd0TXk0ek1qVTFObU10TUM0d016WTVMQzB4TGpBMk5UY3hJREF1TURVM09EY3NMVEl1TVRNeE9TQXdMakk0TWpFMkxDMHpMakUzTkRSNklpQm1hV3hzUFNJalpqVTBNalF5SWlCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlITjBjbTlyWlQwaWJtOXVaU0lnYzNSeWIydGxMWGRwWkhSb1BTSXhJaTgrUEhCaGRHZ2daRDBpVFRNeExqYzNOekU0TERFd0xqVTFNRE16WXkweE1DNHlPVGt4Tnl3eExqRXdPRFV5SUMweE5pNHpORFUyTlN3MExqWTJOVGczSUMweE9TNHhORGN4T1N3NUxqRTRNRFUzWXkweExqZzVNaklzTXk0eU5EYzVOeUF0TWk0ek5ERTFOaXczTGpFek9EY3lJQzB4TGpJek9UVXpMREV3TGpjek1qVnNNQzR3T1RBM0xEQXVNelF5TmpSc01qQXVNalkxTnprc0xUSXdMakkxTlRjeGVrMDNPQzR5T0RRMk9Td3lNUzQzTlRZME9HTXROeTR6TkRZME55d3ROeTR6TlRZMU5TQXRNVFF1Tnpjek5UY3NMVEV6TGpFd01EY2dMVEl3TGpnNU1EVTVMQzB4Tmk0eU9UVXlOMk10TkM0ek5ETXpPU3d0TWk0eU16Y3lJQzAzTGpjeU9UUXlMQzB6TGpFek5EQTVJQzA1TGpNNU1qSXNMVEl1TVRnMk9ERnNMVEF1T0RJMk16WXNNQzQ0TWpZek5tTXRNUzR5TWprME5Td3lMakF4TlRVZ0xUQXVOVEV6T1RZc05pNHpNRGcwT1NBeExqYzVNemM1TERFeExqWTJPVGRqTXk0MU5qTXpOU3czTGpjek1qRTVJRGd1TlRJd01UVXNNVFF1TnpReU1EZ2dNVFF1TmpJeU5Dd3lNQzQyTnpnNU4yTTJMams1TXpjM0xEWXVPVGt6TnpjZ01UUXVOVEF4TkRnc01USXVNak0wTURRZ01qQXVPRGt3TlRrc01UVXVNVEUyTW1NMExqVTBORGswTERJdU1ERTFOU0E0TGpJM016WXNNaTQ1TWpJME55QXhNQzQwTXpBeE9Dd3lMak16TnprM2JERXVPVEkwT0N3dE1TNDVNelE0T0dNd0xqUTFNelE0TEMweExqa3lORGdnTFRBdU5UQXpPRGdzTFRVdU1UYzVPRElnTFRJdU5UQTVNamtzTFRrdU1qQXdOek5qTFRNdU1URXpPVFFzTFRZdU1qVTRNVEVnTFRndU56ZzNOVFVzTFRFekxqYzJOVGd5SUMweE5pNHdORE16TXl3dE1qRXVNREV4TlRKNlRUWXdMakk0TmpNekxDMHdMakUxTVRrMFl6WXVOekV4TlRrc015NDBOVFkxTnlBeE5DNDJPVEk1TlN3NUxqWTBOREUwSURJeUxqUTRNamd6TERFM0xqUXpOREF5WXpjdU56ZzVPRGtzTnk0M09EazRPU0F4TXk0NE5UWTFNaXd4TlM0NE1qRTJNeUF4Tnk0eU1qSXpPU3d5TWk0M01qUTJPV016TGpjM09UQTFMRGN1TlRZNE1UZ2dOQzR6T0RNM0xERTBMakF5TnpnMElEQXVOamsxTXpRc01UY3VOekUyTVRsakxUQXVOakExT0N3d0xqVTNOelE1SUMweExqSTVOVFV5TERFdU1EVTVPVFlnTFRJdU1EUTFOeklzTVM0ME16RnNMVE01TGpReU16QTJMRE01TGpRd01qbGpMVEl1TXpZNE1pd3lMak00T0RNMklDMHpMak0xTlRnc015NHpPVFl4TVNBdE55NDBNemN4Tnl3MExqTXhNekUxWXkweUxqQXpNVE15TERBdU5EUXdNemNnTFRRdU1URTROeXd3TGpVMk1qYzJJQzAyTGpFNE56VTNMREF1TXpZeU56aGpMVEl1TVRReE9ETXNMVEF1TWpBM09DQXROQzR5TlRJeE5Td3RNQzQyTmpRek55QXROaTR5T0Rnek5Dd3RNUzR6TmpBME5tTXRPQzR6T1RRMU15d3RNaTQ0TWpFMk9TQXRNVGN1TVRNeE5qa3NMVGd1TnpJM01Ea2dMVEkwTGpRd056WXlMQzB4TlM0NU9ESTRObU10Tnk0eU56VTVNeXd0Tnk0eU5UVTNOeUF0TVRNdU16Y3lPQ3d0TVRZdU1EVXpOREVnTFRFMkxqTXlOVFVzTFRJMExqUTJPREZqTFRBdU5UVXdORFlzTFRFdU5USTFOVElnTFRBdU9UYzRORE1zTFRNdU1Ea3lORGdnTFRFdU1qYzVPRFFzTFRRdU5qZzJNREpqTFRBdU1qZzJNRE1zTFRFdU5EYzNOelVnTFRBdU5ETXhNVElzTFRJdU9UYzVNeUF0TUM0ME16TXpOQ3d0TkM0ME9EUTBOMk10TUM0eE1UZ3hOeXd0TWk0ek5USXpOQ0F3TGpNd05Ua3lMQzAwTGpjd01ETTNJREV1TWpNNU5UTXNMVFl1T0RZeU56VmpNQzQ1TmpjMExDMHhMamcyTVRjeklESXVNalV6TWl3dE15NDFNemszTmlBekxqYzVPVEl4TEMwMExqazFPREV4YkRBdU1UWXhNalFzTFRBdU1UY3hNekpzTkM0M05EWTBPU3d0TkM0M016WTBNV010TUM0ME9UYzBOeXd0TVM0eE1qWXdNaUF0TUM0NU1EZzBPQ3d0TWk0eU9EZ3lPQ0F0TVM0eU1qazBOU3d0TXk0ME56WTNNMk10TVM0MU5UWXhMQzAxTGpFNU5UZzVJQzB3TGpnMU16Z3lMQzB4TUM0NE1EWTNOU0F4TGprek5EZzRMQzB4TlM0ME5UZzROR00wTGpNd016QTRMQzAzTGpBek5EQTNJREV6TGprMU56TXNMVEV5TGpJMk5ESTRJRE13TGpZMk5UY3pMQzB4TWk0ME16VTJiRFF1TWpBeU16RXNMVFF1TVRreU1qTmpNQzQwTkRNMk9Dd3RNQzQyTURnek1pQXdMams0TVRFeExDMHhMakUwTWpNMUlERXVOVGt5TWpRc0xURXVOVGd5TVRaak1DNHhPVGcxTnl3dE1DNHhPRGN6TVNBd0xqUXlOamNzTFRBdU16UXdOVE1nTUM0Mk56VXhPU3d0TUM0ME5UTTBPR016TGpjek9EYzBMQzB5TGpJMU56TTFJRGt1TWpjeE1qY3NMVEV1TXpZd05EWWdNVFV1TmpRd01qTXNNUzQ1TWpRNGVrMDRPUzR3TkRjME15dzFPUzQzTmpnMk9XTXRNaTQwTmpjeUxDMHdMalUxT1RZMklDMDBMamcyT0RjMExDMHhMak0zTnpBM0lDMDNMakUyTlRBNExDMHlMalF6T0RjMVl5MDNMakExTkRJekxDMHpMakU0TkRRNElDMHhOUzR5TWpjd05pd3RPQzQ0TnpneU5TQXRNakl1TnpZMUxDMHhOaTQwTURZeE1tTXROaTQyTmpjeU55d3ROaTQxTURZM05pQXRNVEl1TURjNE5URXNMVEUwTGpFNE5qTTJJQzB4TlM0NU5qSTNNU3d0TWpJdU5qVTBNVFZqTFRFdU1EazRNallzTFRJdU5EYzRORFVnTFRFdU9UQTJORFlzTFRVdU1EYzFOVEVnTFRJdU5EQTROVElzTFRjdU56TTVORGxzTFRJMkxqUXhPRGs0TERJMkxqTXdNakpqTVRNdU9EZ3pOVGNzTVRVdU1ETTNOVGtnTlRVdU16Y3lNemNzTWpBdU16VTFPVFFnTmpndU1qUXhNeXd4TkM0NE5ETTFObU14TGpVeU9UazNMQzB3TGpZeU5qRXlJRE11TWpjNU1UVXNNQzR3T1RJM05pQXpMamt5TmpZNUxERXVOakV6T0dNd0xqWTBOelUwTERFdU5USXhNRE1nTFRBdU1EUTJOekVzTXk0eU9EQXhOQ0F0TVM0MU5UZzBPU3d6TGprME9EazNZeTB4TlM0ek1qYzRNeXcyTGpVMk1EUXpJQzAyTWk0MU5UZzNOaXd0TVM0MU1qVTNOaUF0TnpRdU9EWTJNelFzTFRFMkxqQTRNekE1YkMwekxqWTVPRFF6TERNdU56TTROelJqTFRFdU1ERTNPU3d3TGpreE5EQTFJQzB4TGpnNE1qRTNMREV1T1RnMU9EY2dMVEl1TlRVNU5qZ3NNeTR4TnpRMFl5MHdMalV4TlRNMkxERXVNekkzTXpjZ0xUQXVOek0xTkRVc01pNDNOVEV3TlNBdE1DNDJORFE1Tml3MExqRTNNakEzWXpBdU1EQTNOeXd4TGpFeE5qUXlJREF1TVRFNU1EUXNNaTR5TWprM01pQXdMak16TWpVMkxETXVNekkxTlRaak1DNHlNemt4TXl3eExqSTRNREl6SURBdU5UYzJNRE1zTWk0MU5EQXlOQ0F4TGpBd056YzBMRE11TnpZNE9UZGpNaTQyTXpBeU1pdzNMalE0TnpVMklEZ3VNRFl4T1Rjc01UVXVNemc0TWprZ01UUXVPREl6T1RZc01qSXVNRFU1TlRoak5pNDNOakU1T1N3MkxqWTNNVEk1SURFMExqVXlNVFl6TERFeUxqQXlNalF5SURJeExqazNPRGsyTERFMExqUTVNVFJqTVM0MU5qWXlNU3d3TGpVMElETXVNVGc1TWpNc01DNDRPVGcwTVNBMExqZ3pOekU1TERFdU1EWTRNakYyTUdNeExqUXhORGcyTERBdU1UTTVOQ0F5TGpnME1qYzNMREF1TURVM09ERWdOQzR5TXpJMU15d3RNQzR5TkRFNE5tTXhMamN3T1RNekxDMHdMakk1T0RrMElETXVNalE0TlRFc0xURXVNakUzTkRFZ05DNHpNak15TXl3dE1pNDFOems0TTJNd0xqQTJNRFEyTEMwd0xqQTNNRFUwSURBdU5qUTBPVFlzTFRBdU5qUTBPVFlnTUM0Mk16UTRPQ3d0TUM0Mk5UVXdOSG9pSUdacGJHdzlJaU13TURBd01EQWlJR1pwYkd3dGNuVnNaVDBpYm05dWVtVnlieUlnYzNSeWIydGxQU0lqTURBd01EQXdJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqRXdJaTgrUEM5blBqd3ZaejQ4TDNOMlp6NDhJUzB0Y205MFlYUnBiMjVEWlc1MFpYSTZOVGd1T1RJNE1EazZOVGN1TmpVeE9UTTVPVGs1T1RrNU9UazJMUzArIixvcGNvZGU6ImNoYW5nZWNzcyIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OiJzZXQgW0NPTE9SQUJMRV0gdG8gW0NPTE9SXSIsYXJndW1lbnRzOntDT0xPUkFCTEU6e3R5cGU6bi5TVFJJTkcsbWVudToiQ09MT1JBQkxFX01FTlUifSxDT0xPUjp7dHlwZTpuLkNPTE9SLGRlZmF1bHRWYWx1ZToiI2ZmMDAwMCJ9fX0se2Jsb2NrSWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZHBaSFJvUFNJeE1UWXVOREU1TmpRaUlHaGxhV2RvZEQwaU1URTRMak0wT1RrMElpQjJhV1YzUW05NFBTSXdMREFzTVRFMkxqUXhPVFkwTERFeE9DNHpORGs1TkNJK1BHUmxabk0rUEd4cGJtVmhja2R5WVdScFpXNTBJSGd4UFNJekxqTTJPRE16SWlCNU1UMGlOek11TWpFek9DSWdlREk5SWpnekxqTTROakF6SWlCNU1qMGlOek11TWpFek9DSWdaM0poWkdsbGJuUlZibWwwY3owaWRYTmxjbE53WVdObFQyNVZjMlVpSUdsa1BTSmpiMnh2Y2kweElqNDhjM1J2Y0NCdlptWnpaWFE5SWpBaUlITjBiM0F0WTI5c2IzSTlJaU5tTlRReU5ESWlMejQ4YzNSdmNDQnZabVp6WlhROUlqRWlJSE4wYjNBdFkyOXNiM0k5SWlNME1qazNaalVpTHo0OEwyeHBibVZoY2tkeVlXUnBaVzUwUGp3dlpHVm1jejQ4WnlCMGNtRnVjMlp2Y20wOUluUnlZVzV6YkdGMFpTZzRMamt5T0RBNUxEY3VOalV4T1RRcElqNDhaeUJrWVhSaExYQmhjR1Z5TFdSaGRHRTlJbnNtY1hWdmREdHBjMUJoYVc1MGFXNW5UR0Y1WlhJbWNYVnZkRHM2ZEhKMVpYMGlJSE4wY205clpTMXNhVzVsWTJGd1BTSmlkWFIwSWlCemRISnZhMlV0YkdsdVpXcHZhVzQ5SW0xcGRHVnlJaUJ6ZEhKdmEyVXRiV2wwWlhKc2FXMXBkRDBpTVRBaUlITjBjbTlyWlMxa1lYTm9ZWEp5WVhrOUlpSWdjM1J5YjJ0bExXUmhjMmh2Wm1aelpYUTlJakFpSUhOMGVXeGxQU0p0YVhndFlteGxibVF0Ylc5a1pUb2dibTl5YldGc0lqNDhjR0YwYUNCa1BTSk5NeTQyTlRZd015dzBPUzQwTWpZd00yTXlMalF5T1RnMkxEQXVORGcxTURVZ01UUXVORGt4TkRjc01qUXVNVEV4SURNeExqVTFORFUxTERJeExqSTJORFZqTVRVdU5URTFOak1zTFRJdU5UZzRNellnT1M0d01UQTROeXd4TkM0eU1qSXlOeUEwT0M0eE56VTBOU3d0TlM0ME5qUTBPV3d0TWpndU1qa3NNamd1TWpaak1Dd3dJQzB3TGpVM0xEQXVOVGdnTFRBdU5qTXNNQzQyTldNdE1TNHdOalkwTml3eExqTTFNVGswSUMweUxqVTVNemd4TERJdU1qWXpNellnTFRRdU1qa3NNaTQxTm1NdE1TNHpOemt3T0N3d0xqSTVOek0ySUMweUxqYzVOakF5TERBdU16YzRNek1nTFRRdU1pd3dMakkwZGpCakxURXVOak0xTWprc0xUQXVNVFk0TkRrZ0xUTXVNalExT0RNc0xUQXVOVEkwTVRVZ0xUUXVPQ3d0TVM0d05tTXROeTQwTEMweUxqUTRJQzB4TlM0eE55d3ROeTQ0SUMweU1TNDNPU3d0TVRRdU16ZGpMVFl1TmpJc0xUWXVOVGNnTFRFeUxqQTNMQzB4TkM0ME5pQXRNVFF1Tmpnc0xUSXhMamc1WXkwd0xqUXlPRFFzTFRFdU1qRTVNamtnTFRBdU56WXlOekVzTFRJdU5EWTVOaklnTFRFc0xUTXVOelJqTFRBdU1qRXhPRGdzTFRFdU1EZzNORElnTFRBdU16SXlNellzTFRJdU1Ua3lNVFlnTFRBdU16TXNMVE11TTJNdE1DNHdNelkyTWl3dE1TNHdOVGMxTWlBd0xqQTFOelF5TEMweUxqRXhOVFV5SURBdU1qZ3NMVE11TVRWNklpQm1hV3hzUFNKMWNtd29JMk52Ykc5eUxURXBJaUJtYVd4c0xYSjFiR1U5SW1WMlpXNXZaR1FpSUhOMGNtOXJaVDBpYm05dVpTSWdjM1J5YjJ0bExYZHBaSFJvUFNJeElpOCtQSEJoZEdnZ1pEMGlUVE14TGpjM056RTRMREV3TGpVMU1ETXpZeTB4TUM0eU9Ua3hOeXd4TGpFd09EVXlJQzB4Tmk0ek5EVTJOU3cwTGpZMk5UZzNJQzB4T1M0eE5EY3hPU3c1TGpFNE1EVTNZeTB4TGpnNU1qSXNNeTR5TkRjNU55QXRNaTR6TkRFMU5pdzNMakV6T0RjeUlDMHhMakl6T1RVekxERXdMamN6TWpWc01DNHdPVEEzTERBdU16UXlOalJzTWpBdU1qWTFOemtzTFRJd0xqSTFOVGN4ZWswM09DNHlPRFEyT1N3eU1TNDNOVFkwT0dNdE55NHpORFkwTnl3dE55NHpOVFkxTlNBdE1UUXVOemN6TlRjc0xURXpMakV3TURjZ0xUSXdMamc1TURVNUxDMHhOaTR5T1RVeU4yTXROQzR6TkRNek9Td3RNaTR5TXpjeUlDMDNMamN5T1RReUxDMHpMakV6TkRBNUlDMDVMak01TWpJc0xUSXVNVGcyT0RGc0xUQXVPREkyTXpZc01DNDRNall6Tm1NdE1TNHlNamswTlN3eUxqQXhOVFVnTFRBdU5URXpPVFlzTmk0ek1EZzBPU0F4TGpjNU16YzVMREV4TGpZMk9UZGpNeTQxTmpNek5TdzNMamN6TWpFNUlEZ3VOVEl3TVRVc01UUXVOelF5TURnZ01UUXVOakl5TkN3eU1DNDJOemc1TjJNMkxqazVNemMzTERZdU9Ua3pOemNnTVRRdU5UQXhORGdzTVRJdU1qTTBNRFFnTWpBdU9Ea3dOVGtzTVRVdU1URTJNbU0wTGpVME5EazBMREl1TURFMU5TQTRMakkzTXpZc01pNDVNakkwTnlBeE1DNDBNekF4T0N3eUxqTXpOemszYkRFdU9USTBPQ3d0TVM0NU16UTRPR013TGpRMU16UTRMQzB4TGpreU5EZ2dMVEF1TlRBek9EZ3NMVFV1TVRjNU9ESWdMVEl1TlRBNU1qa3NMVGt1TWpBd056TmpMVE11TVRFek9UUXNMVFl1TWpVNE1URWdMVGd1TnpnM05UVXNMVEV6TGpjMk5UZ3lJQzB4Tmk0d05ETXpNeXd0TWpFdU1ERXhOVEo2VFRZd0xqSTROak16TEMwd0xqRTFNVGswWXpZdU56RXhOVGtzTXk0ME5UWTFOeUF4TkM0Mk9USTVOU3c1TGpZME5ERTBJREl5TGpRNE1qZ3pMREUzTGpRek5EQXlZemN1TnpnNU9Ea3NOeTQzT0RrNE9TQXhNeTQ0TlRZMU1pd3hOUzQ0TWpFMk15QXhOeTR5TWpJek9Td3lNaTQzTWpRMk9XTXpMamMzT1RBMUxEY3VOVFk0TVRnZ05DNHpPRE0zTERFMExqQXlOemcwSURBdU5qazFNelFzTVRjdU56RTJNVGxqTFRBdU5qQTFPQ3d3TGpVM056UTVJQzB4TGpJNU5UVXlMREV1TURVNU9UWWdMVEl1TURRMU56SXNNUzQwTXpGc0xUTTVMalF5TXpBMkxETTVMalF3TWpsakxUSXVNelk0TWl3eUxqTTRPRE0ySUMwekxqTTFOVGdzTXk0ek9UWXhNU0F0Tnk0ME16Y3hOeXcwTGpNeE16RTFZeTB5TGpBek1UTXlMREF1TkRRd016Y2dMVFF1TVRFNE55d3dMalUyTWpjMklDMDJMakU0TnpVM0xEQXVNell5TnpoakxUSXVNVFF4T0RNc0xUQXVNakEzT0NBdE5DNHlOVEl4TlN3dE1DNDJOalF6TnlBdE5pNHlPRGd6TkN3dE1TNHpOakEwTm1NdE9DNHpPVFExTXl3dE1pNDRNakUyT1NBdE1UY3VNVE14Tmprc0xUZ3VOekkzTURrZ0xUSTBMalF3TnpZeUxDMHhOUzQ1T0RJNE5tTXROeTR5TnpVNU15d3ROeTR5TlRVM055QXRNVE11TXpjeU9Dd3RNVFl1TURVek5ERWdMVEUyTGpNeU5UVXNMVEkwTGpRMk9ERmpMVEF1TlRVd05EWXNMVEV1TlRJMU5USWdMVEF1T1RjNE5ETXNMVE11TURreU5EZ2dMVEV1TWpjNU9EUXNMVFF1TmpnMk1ESmpMVEF1TWpnMk1ETXNMVEV1TkRjM056VWdMVEF1TkRNeE1USXNMVEl1T1RjNU15QXRNQzQwTXpNek5Dd3ROQzQwT0RRME4yTXRNQzR4TVRneE55d3RNaTR6TlRJek5DQXdMak13TlRreUxDMDBMamN3TURNM0lERXVNak01TlRNc0xUWXVPRFl5TnpWak1DNDVOamMwTEMweExqZzJNVGN6SURJdU1qVXpNaXd0TXk0MU16azNOaUF6TGpjNU9USXhMQzAwTGprMU9ERXhiREF1TVRZeE1qUXNMVEF1TVRjeE16SnNOQzQzTkRZME9Td3ROQzQzTXpZME1XTXRNQzQwT1RjME55d3RNUzR4TWpZd01pQXRNQzQ1TURnME9Dd3RNaTR5T0RneU9DQXRNUzR5TWprME5Td3RNeTQwTnpZM00yTXRNUzQxTlRZeExDMDFMakU1TlRnNUlDMHdMamcxTXpneUxDMHhNQzQ0TURZM05TQXhMamt6TkRnNExDMHhOUzQwTlRnNE5HTTBMak13TXpBNExDMDNMakF6TkRBM0lERXpMamsxTnpNc0xURXlMakkyTkRJNElETXdMalkyTlRjekxDMHhNaTQwTXpVMmJEUXVNakF5TXpFc0xUUXVNVGt5TWpOak1DNDBORE0yT0N3dE1DNDJNRGd6TWlBd0xqazRNVEV4TEMweExqRTBNak0xSURFdU5Ua3lNalFzTFRFdU5UZ3lNVFpqTUM0eE9UZzFOeXd0TUM0eE9EY3pNU0F3TGpReU5qY3NMVEF1TXpRd05UTWdNQzQyTnpVeE9Td3RNQzQwTlRNME9HTXpMamN6T0RjMExDMHlMakkxTnpNMUlEa3VNamN4TWpjc0xURXVNell3TkRZZ01UVXVOalF3TWpNc01TNDVNalE0ZWswNE9TNHdORGMwTXl3MU9TNDNOamcyT1dNdE1pNDBOamN5TEMwd0xqVTFPVFkySUMwMExqZzJPRGMwTEMweExqTTNOekEzSUMwM0xqRTJOVEE0TEMweUxqUXpPRGMxWXkwM0xqQTFOREl6TEMwekxqRTRORFE0SUMweE5TNHlNamN3Tml3dE9DNDROemd5TlNBdE1qSXVOelkxTEMweE5pNDBNRFl4TW1NdE5pNDJOamN5Tnl3dE5pNDFNRFkzTmlBdE1USXVNRGM0TlRFc0xURTBMakU0TmpNMklDMHhOUzQ1TmpJM01Td3RNakl1TmpVME1UVmpMVEV1TURrNE1qWXNMVEl1TkRjNE5EVWdMVEV1T1RBMk5EWXNMVFV1TURjMU5URWdMVEl1TkRBNE5USXNMVGN1TnpNNU5EbHNMVEkyTGpReE9EazRMREkyTGpNd01qSmpNVE11T0Rnek5UY3NNVFV1TURNM05Ua2dOVFV1TXpjeU16Y3NNakF1TXpVMU9UUWdOamd1TWpReE15d3hOQzQ0TkRNMU5tTXhMalV5T1RrM0xDMHdMall5TmpFeUlETXVNamM1TVRVc01DNHdPVEkzTmlBekxqa3lOalk1TERFdU5qRXpPR013TGpZME56VTBMREV1TlRJeE1ETWdMVEF1TURRMk56RXNNeTR5T0RBeE5DQXRNUzQxTlRnME9Td3pMamswT0RrM1l5MHhOUzR6TWpjNE15dzJMalUyTURReklDMDJNaTQxTlRnM05pd3RNUzQxTWpVM05pQXROelF1T0RZMk16UXNMVEUyTGpBNE16QTViQzB6TGpZNU9EUXpMRE11TnpNNE56UmpMVEV1TURFM09Td3dMamt4TkRBMUlDMHhMamc0TWpFM0xERXVPVGcxT0RjZ0xUSXVOVFU1Tmpnc015NHhOelEwWXkwd0xqVXhOVE0yTERFdU16STNNemNnTFRBdU56TTFORFVzTWk0M05URXdOU0F0TUM0Mk5EUTVOaXcwTGpFM01qQTNZekF1TURBM055d3hMakV4TmpReUlEQXVNVEU1TURRc01pNHlNamszTWlBd0xqTXpNalUyTERNdU16STFOVFpqTUM0eU16a3hNeXd4TGpJNE1ESXpJREF1TlRjMk1ETXNNaTQxTkRBeU5DQXhMakF3TnpjMExETXVOelk0T1Rkak1pNDJNekF5TWl3M0xqUTROelUySURndU1EWXhPVGNzTVRVdU16ZzRNamtnTVRRdU9ESXpPVFlzTWpJdU1EVTVOVGhqTmk0M05qRTVPU3cyTGpZM01USTVJREUwTGpVeU1UWXpMREV5TGpBeU1qUXlJREl4TGprM09EazJMREUwTGpRNU1UUmpNUzQxTmpZeU1Td3dMalUwSURNdU1UZzVNak1zTUM0NE9UZzBNU0EwTGpnek56RTVMREV1TURZNE1qRjJNR014TGpReE5EZzJMREF1TVRNNU5DQXlMamcwTWpjM0xEQXVNRFUzT0RFZ05DNHlNekkxTXl3dE1DNHlOREU0Tm1NeExqY3dPVE16TEMwd0xqSTVPRGswSURNdU1qUTROVEVzTFRFdU1qRTNOREVnTkM0ek1qTXlNeXd0TWk0MU56azRNMk13TGpBMk1EUTJMQzB3TGpBM01EVTBJREF1TmpRME9UWXNMVEF1TmpRME9UWWdNQzQyTXpRNE9Dd3RNQzQyTlRVd05Ib2lJR1pwYkd3OUlpTXdNREF3TURBaUlHWnBiR3d0Y25Wc1pUMGlibTl1ZW1WeWJ5SWdjM1J5YjJ0bExXOXdZV05wZEhrOUlqQXVNVEk1TkRFaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFhkcFpIUm9QU0l4TlNJdlBqeHdZWFJvSUdROUlrMHpNUzQzTnpjeE9Dd3hNQzQxTlRBek0yTXRNVEF1TWprNU1UY3NNUzR4TURnMU1pQXRNVFl1TXpRMU5qVXNOQzQyTmpVNE55QXRNVGt1TVRRM01Ua3NPUzR4T0RBMU4yTXRNUzQ0T1RJeUxETXVNalEzT1RjZ0xUSXVNelF4TlRZc055NHhNemczTWlBdE1TNHlNemsxTXl3eE1DNDNNekkxYkRBdU1Ea3dOeXd3TGpNME1qWTBiREl3TGpJMk5UYzVMQzB5TUM0eU5UVTNNWHBOTnpndU1qZzBOamtzTWpFdU56VTJORGhqTFRjdU16UTJORGNzTFRjdU16VTJOVFVnTFRFMExqYzNNelUzTEMweE15NHhNREEzSUMweU1DNDRPVEExT1N3dE1UWXVNamsxTWpkakxUUXVNelF6TXprc0xUSXVNak0zTWlBdE55NDNNamswTWl3dE15NHhNelF3T1NBdE9TNHpPVEl5TEMweUxqRTROamd4YkMwd0xqZ3lOak0yTERBdU9ESTJNelpqTFRFdU1qSTVORFVzTWk0d01UVTFJQzB3TGpVeE16azJMRFl1TXpBNE5Ea2dNUzQzT1RNM09Td3hNUzQyTmprM1l6TXVOVFl6TXpVc055NDNNekl4T1NBNExqVXlNREUxTERFMExqYzBNakE0SURFMExqWXlNalFzTWpBdU5qYzRPVGRqTmk0NU9UTTNOeXcyTGprNU16YzNJREUwTGpVd01UUTRMREV5TGpJek5EQTBJREl3TGpnNU1EVTVMREUxTGpFeE5qSmpOQzQxTkRRNU5Dd3lMakF4TlRVZ09DNHlOek0yTERJdU9USXlORGNnTVRBdU5ETXdNVGdzTWk0ek16YzVOMnd4TGpreU5EZ3NMVEV1T1RNME9EaGpNQzQwTlRNME9Dd3RNUzQ1TWpRNElDMHdMalV3TXpnNExDMDFMakUzT1RneUlDMHlMalV3T1RJNUxDMDVMakl3TURjell5MHpMakV4TXprMExDMDJMakkxT0RFeElDMDRMamM0TnpVMUxDMHhNeTQzTmpVNE1pQXRNVFl1TURRek16TXNMVEl4TGpBeE1UVXllazAyTUM0eU9EWXpNeXd0TUM0eE5URTVOR00yTGpjeE1UVTVMRE11TkRVMk5UY2dNVFF1TmpreU9UVXNPUzQyTkRReE5DQXlNaTQwT0RJNE15d3hOeTQwTXpRd01tTTNMamM0T1RnNUxEY3VOemc1T0RrZ01UTXVPRFUyTlRJc01UVXVPREl4TmpNZ01UY3VNakl5TXprc01qSXVOekkwTmpsak15NDNOemt3TlN3M0xqVTJPREU0SURRdU16Z3pOeXd4TkM0d01qYzROQ0F3TGpZNU5UTTBMREUzTGpjeE5qRTVZeTB3TGpZd05UZ3NNQzQxTnpjME9TQXRNUzR5T1RVMU1pd3hMakExT1RrMklDMHlMakEwTlRjeUxERXVORE14YkMwek9TNDBNak13Tml3ek9TNDBNREk1WXkweUxqTTJPRElzTWk0ek9EZ3pOaUF0TXk0ek5UVTRMRE11TXprMk1URWdMVGN1TkRNM01UY3NOQzR6TVRNeE5XTXRNaTR3TXpFek1pd3dMalEwTURNM0lDMDBMakV4T0Rjc01DNDFOakkzTmlBdE5pNHhPRGMxTnl3d0xqTTJNamM0WXkweUxqRTBNVGd6TEMwd0xqSXdOemdnTFRRdU1qVXlNVFVzTFRBdU5qWTBNemNnTFRZdU1qZzRNelFzTFRFdU16WXdORFpqTFRndU16azBOVE1zTFRJdU9ESXhOamtnTFRFM0xqRXpNVFk1TEMwNExqY3lOekE1SUMweU5DNDBNRGMyTWl3dE1UVXVPVGd5T0RaakxUY3VNamMxT1RNc0xUY3VNalUxTnpjZ0xURXpMak0zTWpnc0xURTJMakExTXpReElDMHhOaTR6TWpVMUxDMHlOQzQwTmpneFl5MHdMalUxTURRMkxDMHhMalV5TlRVeUlDMHdMamszT0RRekxDMHpMakE1TWpRNElDMHhMakkzT1RnMExDMDBMalk0TmpBeVl5MHdMakk0TmpBekxDMHhMalEzTnpjMUlDMHdMalF6TVRFeUxDMHlMamszT1RNZ0xUQXVORE16TXpRc0xUUXVORGcwTkRkakxUQXVNVEU0TVRjc0xUSXVNelV5TXpRZ01DNHpNRFU1TWl3dE5DNDNNREF6TnlBeExqSXpPVFV6TEMwMkxqZzJNamMxWXpBdU9UWTNOQ3d0TVM0NE5qRTNNeUF5TGpJMU16SXNMVE11TlRNNU56WWdNeTQzT1RreU1Td3ROQzQ1TlRneE1Xd3dMakUyTVRJMExDMHdMakUzTVRNeWJEUXVOelEyTkRrc0xUUXVOek0yTkRGakxUQXVORGszTkRjc0xURXVNVEkyTURJZ0xUQXVPVEE0TkRnc0xUSXVNamc0TWpnZ0xURXVNakk1TkRVc0xUTXVORGMyTnpOakxURXVOVFUyTVN3dE5TNHhPVFU0T1NBdE1DNDROVE00TWl3dE1UQXVPREEyTnpVZ01TNDVNelE0T0N3dE1UVXVORFU0T0RSak5DNHpNRE13T0N3dE55NHdNelF3TnlBeE15NDVOVGN6TEMweE1pNHlOalF5T0NBek1DNDJOalUzTXl3dE1USXVORE0xTm13MExqSXdNak14TEMwMExqRTVNakl6WXpBdU5EUXpOamdzTFRBdU5qQTRNeklnTUM0NU9ERXhNU3d0TVM0eE5ESXpOU0F4TGpVNU1qSTBMQzB4TGpVNE1qRTJZekF1TVRrNE5UY3NMVEF1TVRnM016RWdNQzQwTWpZM0xDMHdMak0wTURVeklEQXVOamMxTVRrc0xUQXVORFV6TkRoak15NDNNemczTkN3dE1pNHlOVGN6TlNBNUxqSTNNVEkzTEMweExqTTJNRFEySURFMUxqWTBNREl6TERFdU9USTBPSHBOT0RrdU1EUTNORE1zTlRrdU56WTROamxqTFRJdU5EWTNNaXd0TUM0MU5UazJOaUF0TkM0NE5qZzNOQ3d0TVM0ek56Y3dOeUF0Tnk0eE5qVXdPQ3d0TWk0ME16ZzNOV010Tnk0d05UUXlNeXd0TXk0eE9EUTBPQ0F0TVRVdU1qSTNNRFlzTFRndU9EYzRNalVnTFRJeUxqYzJOU3d0TVRZdU5EQTJNVEpqTFRZdU5qWTNNamNzTFRZdU5UQTJOellnTFRFeUxqQTNPRFV4TEMweE5DNHhPRFl6TmlBdE1UVXVPVFl5TnpFc0xUSXlMalkxTkRFMVl5MHhMakE1T0RJMkxDMHlMalEzT0RRMUlDMHhMamt3TmpRMkxDMDFMakEzTlRVeElDMHlMalF3T0RVeUxDMDNMamN6T1RRNWJDMHlOaTQwTVRnNU9Dd3lOaTR6TURJeVl6RXpMamc0TXpVM0xERTFMakF6TnpVNUlEVTFMak0zTWpNM0xESXdMak0xTlRrMElEWTRMakkwTVRNc01UUXVPRFF6TlRaak1TNDFNams1Tnl3dE1DNDJNall4TWlBekxqSTNPVEUxTERBdU1Ea3lOellnTXk0NU1qWTJPU3d4TGpZeE16aGpNQzQyTkRjMU5Dd3hMalV5TVRBeklDMHdMakEwTmpjeExETXVNamd3TVRRZ0xURXVOVFU0TkRrc015NDVORGc1TjJNdE1UVXVNekkzT0RNc05pNDFOakEwTXlBdE5qSXVOVFU0TnpZc0xURXVOVEkxTnpZZ0xUYzBMamcyTmpNMExDMHhOaTR3T0RNd09Xd3RNeTQyT1RnME15d3pMamN6T0RjMFl5MHhMakF4Tnprc01DNDVNVFF3TlNBdE1TNDRPREl4Tnl3eExqazROVGczSUMweUxqVTFPVFk0TERNdU1UYzBOR010TUM0MU1UVXpOaXd4TGpNeU56TTNJQzB3TGpjek5UUTFMREl1TnpVeE1EVWdMVEF1TmpRME9UWXNOQzR4TnpJd04yTXdMakF3Tnpjc01TNHhNVFkwTWlBd0xqRXhPVEEwTERJdU1qSTVOeklnTUM0ek16STFOaXd6TGpNeU5UVTJZekF1TWpNNU1UTXNNUzR5T0RBeU15QXdMalUzTmpBekxESXVOVFF3TWpRZ01TNHdNRGMzTkN3ekxqYzJPRGszWXpJdU5qTXdNaklzTnk0ME9EYzFOaUE0TGpBMk1UazNMREUxTGpNNE9ESTVJREUwTGpneU16azJMREl5TGpBMU9UVTRZell1TnpZeE9Ua3NOaTQyTnpFeU9TQXhOQzQxTWpFMk15d3hNaTR3TWpJME1pQXlNUzQ1TnpnNU5pd3hOQzQwT1RFMFl6RXVOVFkyTWpFc01DNDFOQ0F6TGpFNE9USXpMREF1T0RrNE5ERWdOQzQ0TXpjeE9Td3hMakEyT0RJeGRqQmpNUzQwTVRRNE5pd3dMakV6T1RRZ01pNDROREkzTnl3d0xqQTFOemd4SURRdU1qTXlOVE1zTFRBdU1qUXhPRFpqTVM0M01Ea3pNeXd0TUM0eU9UZzVOQ0F6TGpJME9EVXhMQzB4TGpJeE56UXhJRFF1TXpJek1qTXNMVEl1TlRjNU9ETmpNQzR3TmpBME5pd3RNQzR3TnpBMU5DQXdMalkwTkRrMkxDMHdMalkwTkRrMklEQXVOak0wT0Rnc0xUQXVOalUxTURSNklpQm1hV3hzUFNJak1EQXdNREF3SWlCbWFXeHNMWEoxYkdVOUltNXZibnBsY204aUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFhkcFpIUm9QU0l4TUNJdlBqd3ZaejQ4TDJjK1BDOXpkbWMrUENFdExYSnZkR0YwYVc5dVEyVnVkR1Z5T2pVNExqa3lPREE0T0RrMU5UQXhPRGs0T2pVM0xqWTFNVGswTVRBeU1qSTBNVGd6TFMwKyIsb3Bjb2RlOiJncmFkaWVudEFuZ2xlIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJtYWtlIGEgZ3JhZGllbnQgd2l0aCBbQ09MT1IxXSBhbmQgW0NPTE9SMl0gYXQgYW5nbGUgW0FOR0xFXSIsYXJndW1lbnRzOntDT0xPUjE6e3R5cGU6bi5DT0xPUixkZWZhdWx0VmFsdWU6IiNmZjAwMDAifSxDT0xPUjI6e3R5cGU6bi5DT0xPUixkZWZhdWx0VmFsdWU6IiM2ZWQwMmQifSxBTkdMRTp7dHlwZTpuLkFOR0xFLGRlZmF1bHRWYWx1ZToiOTAifX19LHtibG9ja0ljb25VUkk6ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjJaWEp6YVc5dVBTSXhMakVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGRwWkhSb1BTSXhNVFl1TkRFNU5qUWlJR2hsYVdkb2REMGlNVEU0TGpNME9UazBJaUIyYVdWM1FtOTRQU0l3TERBc01URTJMalF4T1RZMExERXhPQzR6TkRrNU5DSStQR2NnZEhKaGJuTm1iM0p0UFNKMGNtRnVjMnhoZEdVb09DNDVNamd3T1N3M0xqWTFNVGswS1NJK1BHY2daR0YwWVMxd1lYQmxjaTFrWVhSaFBTSjdKbkYxYjNRN2FYTlFZV2x1ZEdsdVoweGhlV1Z5Sm5GMWIzUTdPblJ5ZFdWOUlpQnpkSEp2YTJVdGJHbHVaV05oY0QwaVluVjBkQ0lnYzNSeWIydGxMV3hwYm1WcWIybHVQU0p0YVhSbGNpSWdjM1J5YjJ0bExXMXBkR1Z5YkdsdGFYUTlJakV3SWlCemRISnZhMlV0WkdGemFHRnljbUY1UFNJaUlITjBjbTlyWlMxa1lYTm9iMlptYzJWMFBTSXdJaUJ6ZEhsc1pUMGliV2w0TFdKc1pXNWtMVzF2WkdVNklHNXZjbTFoYkNJK1BIQmhkR2dnWkQwaVRUUXVORGswT1RZc05EWXVNekF3TkRSak1pNDBNams0Tml3d0xqUTROVEExSURFMExqUTVNVFEzTERJMExqRXhNU0F6TVM0MU5UUTFOU3d5TVM0eU5qUTFZekUxTGpVeE5UWXpMQzB5TGpVNE9ETTJJREV1TmpVMU5qTXNNak11TkRVMU5EVWdOREF1T0RJd01qRXNNeTQzTmpnMk9Xd3RNakF1T1RNME56WXNNVGt1TURJMk9ESmpNQ3d3SUMwd0xqVTNMREF1TlRnZ0xUQXVOak1zTUM0Mk5XTXRNUzR3TmpZME5pd3hMak0xTVRrMElDMHlMalU1TXpneExESXVNall6TXpZZ0xUUXVNamtzTWk0MU5tTXRNUzR6Tnprd09Dd3dMakk1TnpNMklDMHlMamM1TmpBeUxEQXVNemM0TXpNZ0xUUXVNaXd3TGpJMGRqQmpMVEV1TmpNMU1qa3NMVEF1TVRZNE5Ea2dMVE11TWpRMU9ETXNMVEF1TlRJME1UVWdMVFF1T0N3dE1TNHdObU10Tnk0MExDMHlMalE0SUMweE5TNHhOeXd0Tnk0NElDMHlNUzQzT1N3dE1UUXVNemRqTFRZdU5qSXNMVFl1TlRjZ0xURXlMakEzTEMweE5DNDBOaUF0TVRRdU5qZ3NMVEl4TGpnNVl5MHdMalF5T0RRc0xURXVNakU1TWprZ0xUQXVOell5TnpFc0xUSXVORFk1TmpJZ0xURXNMVE11TnpSakxUQXVNakV4T0Rnc0xURXVNRGczTkRJZ0xUQXVNekl5TXpZc0xUSXVNVGt5TVRZZ0xUQXVNek1zTFRNdU0yTXRNQzR3TXpZMk1pd3RNUzR3TlRjMU1pQXdMakExTnpReUxDMHlMakV4TlRVeUlEQXVNamdzTFRNdU1UVjZJaUJtYVd4c1BTSnViMjVsSWlCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFhkcFpIUm9QU0l4TUNJdlBqeHdZWFJvSUdROUlrMHpNUzQzTnpjeE9Dd3hNQzQxTlRBek0yTXRNVEF1TWprNU1UY3NNUzR4TURnMU1pQXRNVFl1TXpRMU5qVXNOQzQyTmpVNE55QXRNVGt1TVRRM01Ua3NPUzR4T0RBMU4yTXRNUzQ0T1RJeUxETXVNalEzT1RjZ0xUSXVNelF4TlRZc055NHhNemczTWlBdE1TNHlNemsxTXl3eE1DNDNNekkxYkRBdU1Ea3dOeXd3TGpNME1qWTBiREl3TGpJMk5UYzVMQzB5TUM0eU5UVTNNWHBOTnpndU1qZzBOamtzTWpFdU56VTJORGhqTFRjdU16UTJORGNzTFRjdU16VTJOVFVnTFRFMExqYzNNelUzTEMweE15NHhNREEzSUMweU1DNDRPVEExT1N3dE1UWXVNamsxTWpkakxUUXVNelF6TXprc0xUSXVNak0zTWlBdE55NDNNamswTWl3dE15NHhNelF3T1NBdE9TNHpPVEl5TEMweUxqRTROamd4YkMwd0xqZ3lOak0yTERBdU9ESTJNelpqTFRFdU1qSTVORFVzTWk0d01UVTFJQzB3TGpVeE16azJMRFl1TXpBNE5Ea2dNUzQzT1RNM09Td3hNUzQyTmprM1l6TXVOVFl6TXpVc055NDNNekl4T1NBNExqVXlNREUxTERFMExqYzBNakE0SURFMExqWXlNalFzTWpBdU5qYzRPVGRqTmk0NU9UTTNOeXcyTGprNU16YzNJREUwTGpVd01UUTRMREV5TGpJek5EQTBJREl3TGpnNU1EVTVMREUxTGpFeE5qSmpOQzQxTkRRNU5Dd3lMakF4TlRVZ09DNHlOek0yTERJdU9USXlORGNnTVRBdU5ETXdNVGdzTWk0ek16YzVOMnd4TGpreU5EZ3NMVEV1T1RNME9EaGpNQzQwTlRNME9Dd3RNUzQ1TWpRNElDMHdMalV3TXpnNExDMDFMakUzT1RneUlDMHlMalV3T1RJNUxDMDVMakl3TURjell5MHpMakV4TXprMExDMDJMakkxT0RFeElDMDRMamM0TnpVMUxDMHhNeTQzTmpVNE1pQXRNVFl1TURRek16TXNMVEl4TGpBeE1UVXllazAyTUM0eU9EWXpNeXd0TUM0eE5URTVOR00yTGpjeE1UVTVMRE11TkRVMk5UY2dNVFF1TmpreU9UVXNPUzQyTkRReE5DQXlNaTQwT0RJNE15d3hOeTQwTXpRd01tTTNMamM0T1RnNUxEY3VOemc1T0RrZ01UTXVPRFUyTlRJc01UVXVPREl4TmpNZ01UY3VNakl5TXprc01qSXVOekkwTmpsak15NDNOemt3TlN3M0xqVTJPREU0SURRdU16Z3pOeXd4TkM0d01qYzROQ0F3TGpZNU5UTTBMREUzTGpjeE5qRTVZeTB3TGpZd05UZ3NNQzQxTnpjME9TQXRNUzR5T1RVMU1pd3hMakExT1RrMklDMHlMakEwTlRjeUxERXVORE14YkMwek9TNDBNak13Tml3ek9TNDBNREk1WXkweUxqTTJPRElzTWk0ek9EZ3pOaUF0TXk0ek5UVTRMRE11TXprMk1URWdMVGN1TkRNM01UY3NOQzR6TVRNeE5XTXRNaTR3TXpFek1pd3dMalEwTURNM0lDMDBMakV4T0Rjc01DNDFOakkzTmlBdE5pNHhPRGMxTnl3d0xqTTJNamM0WXkweUxqRTBNVGd6TEMwd0xqSXdOemdnTFRRdU1qVXlNVFVzTFRBdU5qWTBNemNnTFRZdU1qZzRNelFzTFRFdU16WXdORFpqTFRndU16azBOVE1zTFRJdU9ESXhOamtnTFRFM0xqRXpNVFk1TEMwNExqY3lOekE1SUMweU5DNDBNRGMyTWl3dE1UVXVPVGd5T0RaakxUY3VNamMxT1RNc0xUY3VNalUxTnpjZ0xURXpMak0zTWpnc0xURTJMakExTXpReElDMHhOaTR6TWpVMUxDMHlOQzQwTmpneFl5MHdMalUxTURRMkxDMHhMalV5TlRVeUlDMHdMamszT0RRekxDMHpMakE1TWpRNElDMHhMakkzT1RnMExDMDBMalk0TmpBeVl5MHdMakk0TmpBekxDMHhMalEzTnpjMUlDMHdMalF6TVRFeUxDMHlMamszT1RNZ0xUQXVORE16TXpRc0xUUXVORGcwTkRkakxUQXVNVEU0TVRjc0xUSXVNelV5TXpRZ01DNHpNRFU1TWl3dE5DNDNNREF6TnlBeExqSXpPVFV6TEMwMkxqZzJNamMxWXpBdU9UWTNOQ3d0TVM0NE5qRTNNeUF5TGpJMU16SXNMVE11TlRNNU56WWdNeTQzT1RreU1Td3ROQzQ1TlRneE1Xd3dMakUyTVRJMExDMHdMakUzTVRNeWJEUXVOelEyTkRrc0xUUXVOek0yTkRGakxUQXVORGszTkRjc0xURXVNVEkyTURJZ0xUQXVPVEE0TkRnc0xUSXVNamc0TWpnZ0xURXVNakk1TkRVc0xUTXVORGMyTnpOakxURXVOVFUyTVN3dE5TNHhPVFU0T1NBdE1DNDROVE00TWl3dE1UQXVPREEyTnpVZ01TNDVNelE0T0N3dE1UVXVORFU0T0RSak5DNHpNRE13T0N3dE55NHdNelF3TnlBeE15NDVOVGN6TEMweE1pNHlOalF5T0NBek1DNDJOalUzTXl3dE1USXVORE0xTm13MExqSXdNak14TEMwMExqRTVNakl6WXpBdU5EUXpOamdzTFRBdU5qQTRNeklnTUM0NU9ERXhNU3d0TVM0eE5ESXpOU0F4TGpVNU1qSTBMQzB4TGpVNE1qRTJZekF1TVRrNE5UY3NMVEF1TVRnM016RWdNQzQwTWpZM0xDMHdMak0wTURVeklEQXVOamMxTVRrc0xUQXVORFV6TkRoak15NDNNemczTkN3dE1pNHlOVGN6TlNBNUxqSTNNVEkzTEMweExqTTJNRFEySURFMUxqWTBNREl6TERFdU9USTBPSHBOT0RrdU1EUTNORE1zTlRrdU56WTROamxqTFRJdU5EWTNNaXd0TUM0MU5UazJOaUF0TkM0NE5qZzNOQ3d0TVM0ek56Y3dOeUF0Tnk0eE5qVXdPQ3d0TWk0ME16ZzNOV010Tnk0d05UUXlNeXd0TXk0eE9EUTBPQ0F0TVRVdU1qSTNNRFlzTFRndU9EYzRNalVnTFRJeUxqYzJOU3d0TVRZdU5EQTJNVEpqTFRZdU5qWTNNamNzTFRZdU5UQTJOellnTFRFeUxqQTNPRFV4TEMweE5DNHhPRFl6TmlBdE1UVXVPVFl5TnpFc0xUSXlMalkxTkRFMVl5MHhMakE1T0RJMkxDMHlMalEzT0RRMUlDMHhMamt3TmpRMkxDMDFMakEzTlRVeElDMHlMalF3T0RVeUxDMDNMamN6T1RRNWJDMHlOaTQwTVRnNU9Dd3lOaTR6TURJeVl6RXpMamc0TXpVM0xERTFMakF6TnpVNUlEVTFMak0zTWpNM0xESXdMak0xTlRrMElEWTRMakkwTVRNc01UUXVPRFF6TlRaak1TNDFNams1Tnl3dE1DNDJNall4TWlBekxqSTNPVEUxTERBdU1Ea3lOellnTXk0NU1qWTJPU3d4TGpZeE16aGpNQzQyTkRjMU5Dd3hMalV5TVRBeklDMHdMakEwTmpjeExETXVNamd3TVRRZ0xURXVOVFU0TkRrc015NDVORGc1TjJNdE1UVXVNekkzT0RNc05pNDFOakEwTXlBdE5qSXVOVFU0TnpZc0xURXVOVEkxTnpZZ0xUYzBMamcyTmpNMExDMHhOaTR3T0RNd09Xd3RNeTQyT1RnME15d3pMamN6T0RjMFl5MHhMakF4Tnprc01DNDVNVFF3TlNBdE1TNDRPREl4Tnl3eExqazROVGczSUMweUxqVTFPVFk0TERNdU1UYzBOR010TUM0MU1UVXpOaXd4TGpNeU56TTNJQzB3TGpjek5UUTFMREl1TnpVeE1EVWdMVEF1TmpRME9UWXNOQzR4TnpJd04yTXdMakF3Tnpjc01TNHhNVFkwTWlBd0xqRXhPVEEwTERJdU1qSTVOeklnTUM0ek16STFOaXd6TGpNeU5UVTJZekF1TWpNNU1UTXNNUzR5T0RBeU15QXdMalUzTmpBekxESXVOVFF3TWpRZ01TNHdNRGMzTkN3ekxqYzJPRGszWXpJdU5qTXdNaklzTnk0ME9EYzFOaUE0TGpBMk1UazNMREUxTGpNNE9ESTVJREUwTGpneU16azJMREl5TGpBMU9UVTRZell1TnpZeE9Ua3NOaTQyTnpFeU9TQXhOQzQxTWpFMk15d3hNaTR3TWpJME1pQXlNUzQ1TnpnNU5pd3hOQzQwT1RFMFl6RXVOVFkyTWpFc01DNDFOQ0F6TGpFNE9USXpMREF1T0RrNE5ERWdOQzQ0TXpjeE9Td3hMakEyT0RJeGRqQmpNUzQwTVRRNE5pd3dMakV6T1RRZ01pNDROREkzTnl3d0xqQTFOemd4SURRdU1qTXlOVE1zTFRBdU1qUXhPRFpqTVM0M01Ea3pNeXd0TUM0eU9UZzVOQ0F6TGpJME9EVXhMQzB4TGpJeE56UXhJRFF1TXpJek1qTXNMVEl1TlRjNU9ETmpNQzR3TmpBME5pd3RNQzR3TnpBMU5DQXdMalkwTkRrMkxDMHdMalkwTkRrMklEQXVOak0wT0Rnc0xUQXVOalUxTURSNklpQm1hV3hzUFNJak1EQXdNREF3SWlCbWFXeHNMWEoxYkdVOUltNXZibnBsY204aUlITjBjbTlyWlMxdmNHRmphWFI1UFNJd0xqRXlPVFF4SWlCemRISnZhMlU5SWlNd01EQXdNREFpSUhOMGNtOXJaUzEzYVdSMGFEMGlNVFVpTHo0OGNHRjBhQ0JrUFNKTk16RXVOemMzTVRnc01UQXVOVFV3TXpOakxURXdMakk1T1RFM0xERXVNVEE0TlRJZ0xURTJMak0wTlRZMUxEUXVOalkxT0RjZ0xURTVMakUwTnpFNUxEa3VNVGd3TlRkakxURXVPRGt5TWl3ekxqSTBOemszSUMweUxqTTBNVFUyTERjdU1UTTROeklnTFRFdU1qTTVOVE1zTVRBdU56TXlOV3d3TGpBNU1EY3NNQzR6TkRJMk5Hd3lNQzR5TmpVM09Td3RNakF1TWpVMU56RjZUVGM0TGpJNE5EWTVMREl4TGpjMU5qUTRZeTAzTGpNME5qUTNMQzAzTGpNMU5qVTFJQzB4TkM0M056TTFOeXd0TVRNdU1UQXdOeUF0TWpBdU9Ea3dOVGtzTFRFMkxqSTVOVEkzWXkwMExqTTBNek01TEMweUxqSXpOeklnTFRjdU56STVORElzTFRNdU1UTTBNRGtnTFRrdU16a3lNaXd0TWk0eE9EWTRNV3d0TUM0NE1qWXpOaXd3TGpneU5qTTJZeTB4TGpJeU9UUTFMREl1TURFMU5TQXRNQzQxTVRNNU5pdzJMak13T0RRNUlERXVOemt6Tnprc01URXVOalk1TjJNekxqVTJNek0xTERjdU56TXlNVGtnT0M0MU1qQXhOU3d4TkM0M05ESXdPQ0F4TkM0Mk1qSTBMREl3TGpZM09EazNZell1T1Rrek56Y3NOaTQ1T1RNM055QXhOQzQxTURFME9Dd3hNaTR5TXpRd05DQXlNQzQ0T1RBMU9Td3hOUzR4TVRZeVl6UXVOVFEwT1RRc01pNHdNVFUxSURndU1qY3pOaXd5TGpreU1qUTNJREV3TGpRek1ERTRMREl1TXpNM09UZHNNUzQ1TWpRNExDMHhMamt6TkRnNFl6QXVORFV6TkRnc0xURXVPVEkwT0NBdE1DNDFNRE00T0N3dE5TNHhOems0TWlBdE1pNDFNRGt5T1N3dE9TNHlNREEzTTJNdE15NHhNVE01TkN3dE5pNHlOVGd4TVNBdE9DNDNPRGMxTlN3dE1UTXVOelkxT0RJZ0xURTJMakEwTXpNekxDMHlNUzR3TVRFMU1ucE5OakF1TWpnMk16TXNMVEF1TVRVeE9UUmpOaTQzTVRFMU9Td3pMalExTmpVM0lERTBMalk1TWprMUxEa3VOalEwTVRRZ01qSXVORGd5T0RNc01UY3VORE0wTURKak55NDNPRGs0T1N3M0xqYzRPVGc1SURFekxqZzFOalV5TERFMUxqZ3lNVFl6SURFM0xqSXlNak01TERJeUxqY3lORFk1WXpNdU56YzVNRFVzTnk0MU5qZ3hPQ0EwTGpNNE16Y3NNVFF1TURJM09EUWdNQzQyT1RVek5Dd3hOeTQzTVRZeE9XTXRNQzQyTURVNExEQXVOVGMzTkRrZ0xURXVNamsxTlRJc01TNHdOVGs1TmlBdE1pNHdORFUzTWl3eExqUXpNV3d0TXprdU5ESXpNRFlzTXprdU5EQXlPV010TWk0ek5qZ3lMREl1TXpnNE16WWdMVE11TXpVMU9Dd3pMak01TmpFeElDMDNMalF6TnpFM0xEUXVNekV6TVRWakxUSXVNRE14TXpJc01DNDBOREF6TnlBdE5DNHhNVGczTERBdU5UWXlOellnTFRZdU1UZzNOVGNzTUM0ek5qSTNPR010TWk0eE5ERTRNeXd0TUM0eU1EYzRJQzAwTGpJMU1qRTFMQzB3TGpZMk5ETTNJQzAyTGpJNE9ETTBMQzB4TGpNMk1EUTJZeTA0TGpNNU5EVXpMQzB5TGpneU1UWTVJQzB4Tnk0eE16RTJPU3d0T0M0M01qY3dPU0F0TWpRdU5EQTNOaklzTFRFMUxqazRNamcyWXkwM0xqSTNOVGt6TEMwM0xqSTFOVGMzSUMweE15NHpOekk0TEMweE5pNHdOVE0wTVNBdE1UWXVNekkxTlN3dE1qUXVORFk0TVdNdE1DNDFOVEEwTml3dE1TNDFNalUxTWlBdE1DNDVOemcwTXl3dE15NHdPVEkwT0NBdE1TNHlOems0TkN3dE5DNDJPRFl3TW1NdE1DNHlPRFl3TXl3dE1TNDBOemMzTlNBdE1DNDBNekV4TWl3dE1pNDVOemt6SUMwd0xqUXpNek0wTEMwMExqUTRORFEzWXkwd0xqRXhPREUzTEMweUxqTTFNak0wSURBdU16QTFPVElzTFRRdU56QXdNemNnTVM0eU16azFNeXd0Tmk0NE5qSTNOV013TGprMk56UXNMVEV1T0RZeE56TWdNaTR5TlRNeUxDMHpMalV6T1RjMklETXVOems1TWpFc0xUUXVPVFU0TVRGc01DNHhOakV5TkN3dE1DNHhOekV6TW13MExqYzBOalE1TEMwMExqY3pOalF4WXkwd0xqUTVOelEzTEMweExqRXlOakF5SUMwd0xqa3dPRFE0TEMweUxqSTRPREk0SUMweExqSXlPVFExTEMwekxqUTNOamN6WXkweExqVTFOakVzTFRVdU1UazFPRGtnTFRBdU9EVXpPRElzTFRFd0xqZ3dOamMxSURFdU9UTTBPRGdzTFRFMUxqUTFPRGcwWXpRdU16QXpNRGdzTFRjdU1ETTBNRGNnTVRNdU9UVTNNeXd0TVRJdU1qWTBNamdnTXpBdU5qWTFOek1zTFRFeUxqUXpOVFpzTkM0eU1ESXpNU3d0TkM0eE9USXlNMk13TGpRME16WTRMQzB3TGpZd09ETXlJREF1T1RneE1URXNMVEV1TVRReU16VWdNUzQxT1RJeU5Dd3RNUzQxT0RJeE5tTXdMakU1T0RVM0xDMHdMakU0TnpNeElEQXVOREkyTnl3dE1DNHpOREExTXlBd0xqWTNOVEU1TEMwd0xqUTFNelE0WXpNdU56TTROelFzTFRJdU1qVTNNelVnT1M0eU56RXlOeXd0TVM0ek5qQTBOaUF4TlM0Mk5EQXlNeXd4TGpreU5EaDZUVGc1TGpBME56UXpMRFU1TGpjMk9EWTVZeTB5TGpRMk56SXNMVEF1TlRVNU5qWWdMVFF1T0RZNE56UXNMVEV1TXpjM01EY2dMVGN1TVRZMU1EZ3NMVEl1TkRNNE56VmpMVGN1TURVME1qTXNMVE11TVRnME5EZ2dMVEUxTGpJeU56QTJMQzA0TGpnM09ESTFJQzB5TWk0M05qVXNMVEUyTGpRd05qRXlZeTAyTGpZMk56STNMQzAyTGpVd05qYzJJQzB4TWk0d056ZzFNU3d0TVRRdU1UZzJNellnTFRFMUxqazJNamN4TEMweU1pNDJOVFF4TldNdE1TNHdPVGd5Tml3dE1pNDBOemcwTlNBdE1TNDVNRFkwTml3dE5TNHdOelUxTVNBdE1pNDBNRGcxTWl3dE55NDNNemswT1d3dE1qWXVOREU0T1Rnc01qWXVNekF5TW1NeE15NDRPRE0xTnl3eE5TNHdNemMxT1NBMU5TNHpOekl6Tnl3eU1DNHpOVFU1TkNBMk9DNHlOREV6TERFMExqZzBNelUyWXpFdU5USTVPVGNzTFRBdU5qSTJNVElnTXk0eU56a3hOU3d3TGpBNU1qYzJJRE11T1RJMk5qa3NNUzQyTVRNNFl6QXVOalEzTlRRc01TNDFNakV3TXlBdE1DNHdORFkzTVN3ekxqSTRNREUwSUMweExqVTFPRFE1TERNdU9UUTRPVGRqTFRFMUxqTXlOemd6TERZdU5UWXdORE1nTFRZeUxqVTFPRGMyTEMweExqVXlOVGMySUMwM05DNDROall6TkN3dE1UWXVNRGd6TURsc0xUTXVOams0TkRNc015NDNNemczTkdNdE1TNHdNVGM1TERBdU9URTBNRFVnTFRFdU9EZ3lNVGNzTVM0NU9EVTROeUF0TWk0MU5UazJPQ3d6TGpFM05EUmpMVEF1TlRFMU16WXNNUzR6TWpjek55QXRNQzQzTXpVME5Td3lMamMxTVRBMUlDMHdMalkwTkRrMkxEUXVNVGN5TURkak1DNHdNRGMzTERFdU1URTJORElnTUM0eE1Ua3dOQ3d5TGpJeU9UY3lJREF1TXpNeU5UWXNNeTR6TWpVMU5tTXdMakl6T1RFekxERXVNamd3TWpNZ01DNDFOell3TXl3eUxqVTBNREkwSURFdU1EQTNOelFzTXk0M05qZzVOMk15TGpZek1ESXlMRGN1TkRnM05UWWdPQzR3TmpFNU55d3hOUzR6T0RneU9TQXhOQzQ0TWpNNU5pd3lNaTR3TlRrMU9HTTJMamMyTVRrNUxEWXVOamN4TWprZ01UUXVOVEl4TmpNc01USXVNREl5TkRJZ01qRXVPVGM0T1RZc01UUXVORGt4TkdNeExqVTJOakl4TERBdU5UUWdNeTR4T0RreU15d3dMamc1T0RReElEUXVPRE0zTVRrc01TNHdOamd5TVhZd1l6RXVOREUwT0RZc01DNHhNemswSURJdU9EUXlOemNzTUM0d05UYzRNU0EwTGpJek1qVXpMQzB3TGpJME1UZzJZekV1TnpBNU16TXNMVEF1TWprNE9UUWdNeTR5TkRnMU1Td3RNUzR5TVRjME1TQTBMak15TXpJekxDMHlMalUzT1Rnell6QXVNRFl3TkRZc0xUQXVNRGN3TlRRZ01DNDJORFE1Tml3dE1DNDJORFE1TmlBd0xqWXpORGc0TEMwd0xqWTFOVEEwZWlJZ1ptbHNiRDBpSXpBd01EQXdNQ0lnWm1sc2JDMXlkV3hsUFNKdWIyNTZaWEp2SWlCemRISnZhMlU5SWlNd01EQXdNREFpSUhOMGNtOXJaUzEzYVdSMGFEMGlNVEFpTHo0OEwyYytQQzluUGp3dmMzWm5QandoTFMxeWIzUmhkR2x2YmtObGJuUmxjam8xT0M0NU1qZ3dPVG8xTnk0Mk5URTVNems1T1RrNU9UazVPVFl0TFQ0PSIsZGlzYWJsZU1vbml0b3I6ITAsb3Bjb2RlOiJ0cmFuc3BhcmVudGlucHV0IixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJ0cmFuc3BhcmVudCJ9LHtibG9ja0ljb25VUkk6WixkaXNhYmxlTW9uaXRvcjohMCxvcGNvZGU6InBpY3R1cmVpbnB1dCIsYmxvY2tUeXBlOmkuUkVQT1JURVIsdGV4dDoiaW1hZ2UgW1VSTF0iLGFyZ3VtZW50czp7VVJMOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToiaHR0cHM6Ly9leHRlbnNpb25zLnR1cmJvd2FycC5vcmcvZGFuZ28ucG5nIn19fSwiLS0tIix7YmxvY2tJY29uVVJJOlosZGlzYWJsZU1vbml0b3I6ITAsb3Bjb2RlOiJzZXRBc2tVUkkiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGFzayBwcm9tcHQgYnV0dG9uIGltYWdlIHRvIFtVUkxdIixhcmd1bWVudHM6e1VSTDp7dHlwZTpuLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vZXh0ZW5zaW9ucy50dXJib3dhcnAub3JnL2RhbmdvLnBuZyJ9fX0sIi0tLSIse2Jsb2NrSWNvblVSSTpLLG9wY29kZToic2V0Ym9yZGVyc2l6ZSIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OiJzZXQgYm9yZGVyIHdpZHRoIG9mIFtCT1JERVJdIHRvIFtTSVpFXSIsYXJndW1lbnRzOntCT1JERVI6e3R5cGU6bi5TVFJJTkcsbWVudToiQk9SREVSX1dJRFRIX01FTlUifSxTSVpFOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZToiMiJ9fX0se2Jsb2NrSWNvblVSSTpLLG9wY29kZToic2V0Ym9yZGVycmFkaXVzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InNldCByb3VuZG5lc3Mgb2YgW0NPUk5FUl0gdG8gW1NJWkVdIixhcmd1bWVudHM6e1NJWkU6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOiI0In0sQ09STkVSOnt0eXBlOm4uU1RSSU5HLG1lbnU6IkJPUkRFUl9ST1VORE5FU1NfTUVOVSJ9fX0sIi0tLSIse2Jsb2NrSWNvblVSSToiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZHBaSFJvUFNJek5Ea3VNekl6TWpRaUlHaGxhV2RvZEQwaU16STNMak0wT1RFeUlpQjJhV1YzUW05NFBTSXdMREFzTXpRNUxqTXlNekkwTERNeU55NHpORGt4TWlJK1BHY2dkSEpoYm5ObWIzSnRQU0owY21GdWMyeGhkR1VvTFRZMUxqTXpPRE00TEMweE5pNHpNalUwTkNraVBqeG5JR1JoZEdFdGNHRndaWEl0WkdGMFlUMGlleVp4ZFc5ME8ybHpVR0ZwYm5ScGJtZE1ZWGxsY2laeGRXOTBPenAwY25WbGZTSWdabWxzYkQwaWJtOXVaU0lnWm1sc2JDMXlkV3hsUFNKdWIyNTZaWEp2SWlCemRISnZhMlV0YkdsdVpXcHZhVzQ5SW0xcGRHVnlJaUJ6ZEhKdmEyVXRiV2wwWlhKc2FXMXBkRDBpTVRBaUlITjBjbTlyWlMxa1lYTm9ZWEp5WVhrOUlpSWdjM1J5YjJ0bExXUmhjMmh2Wm1aelpYUTlJakFpSUhOMGVXeGxQU0p0YVhndFlteGxibVF0Ylc5a1pUb2dibTl5YldGc0lqNDhjR0YwYUNCa1BTSk5NVE0yTGpReE5UYzBMRGszTGprd01UazBZeTB6T0M0eU5EZ3dOaXc0TWk0M056SXlOU0F0TXpBdU5Ua3pNRFlzTWpNeUxqYzVOekk0SURFek9TNDNNekEzTnl3eU1qQXVNREEwTVRaak1UUXlMalF6T1N3dE1UQXVOams0TmpnZ01UUXpMamMwTVRrM0xDMHhPVEl1TlRFNE9EUWdORE11TXpjNU5qa3NMVEkwT1M0MU16Z3hJaUJ6ZEhKdmEyVTlJaU13TURBd01EQWlJSE4wY205clpTMTNhV1IwYUQwaU5UQWlJSE4wY205clpTMXNhVzVsWTJGd1BTSnliM1Z1WkNJdlBqeHdZWFJvSUdROUlrMDVOUzQyTkRjM01TdzBPUzQzT0RBMk4ydzVPUzQ0TlRJeU1pd3RNQzQwTURJMk15SWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQnpkSEp2YTJVdGQybGtkR2c5SWpBdU5TSWdjM1J5YjJ0bExXeHBibVZqWVhBOUluSnZkVzVrSWk4K1BIQmhkR2dnWkQwaVRUa3hMalExTXpJNExEWTFMalV4TkRJeGJERXdPUzQyT0RNME55d3RNalF1TVRnNE56Y2lJSE4wY205clpUMGlJekF3TURBd01DSWdjM1J5YjJ0bExYZHBaSFJvUFNJMU1DSWdjM1J5YjJ0bExXeHBibVZqWVhBOUluSnZkVzVrSWk4K1BIQmhkR2dnWkQwaVRUSXdOQzR3TWpFMU1pdzBNeTR5T1RRek5Xd3RPUzQ0TWpJMExERXdOaTR3TVRFeE15SWdjM1J5YjJ0bFBTSWpNREF3TURBd0lpQnpkSEp2YTJVdGQybGtkR2c5SWpVd0lpQnpkSEp2YTJVdGJHbHVaV05oY0QwaWNtOTFibVFpTHo0OGNHRjBhQ0JrUFNKTk9UQXVNek00TXpnc05qY3VOREkyTURoc01UQXpMalV5TXpZMkxEZ3lMakl3T0RJaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFhkcFpIUm9QU0kxTUNJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW5KdmRXNWtJaTgrUEhCaGRHZ2daRDBpVFRFMU15NDVNVFV4T0N3eE1ETXVPRFE1T0RWMkxUTXlMakE1TlRsb01UUXVOamswTlRGMk16SXVNRGsxT1hvaUlITjBjbTlyWlQwaUl6QXdNREF3TUNJZ2MzUnliMnRsTFhkcFpIUm9QU0kxTUNJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW1KMWRIUWlMejQ4Y0dGMGFDQmtQU0pOTVRrMUxqUTVPVGt5TERRNUxqTTNPREEwSWlCemRISnZhMlU5SWlObVpqQXdNREFpSUhOMGNtOXJaUzEzYVdSMGFEMGlOVEFpSUhOMGNtOXJaUzFzYVc1bFkyRndQU0p5YjNWdVpDSXZQand2Wno0OEwyYytQQzl6ZG1jK1BDRXRMWEp2ZEdGMGFXOXVRMlZ1ZEdWeU9qRTNOQzQyTmpFMk1qb3hOak11TmpjME5UVTVPVGs1T1RrNU9Ua3RMVDQ9IixvcGNvZGU6ImNsZWFyQ1NTIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InJlc2V0IHN0eWxlcyJ9LCItLS0iLHtibG9ja0ljb25VUkk6WCxvcGNvZGU6ImFsbG93c2Nyb2xscnVsZSIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OiJzZXQgbGlzdCBzY3JvbGxpbmcgdG8gW1NDUk9MTFJVTEVdIixhcmd1bWVudHM6e1NDUk9MTFJVTEU6e3R5cGU6bi5TVFJJTkcsbWVudToiU0NST0xMX01FTlUifX19LHtibG9ja0ljb25VUkk6WCxvcGNvZGU6ImdldFZhbHVlIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0OiJnZXQgW0lURU1dIixhcmd1bWVudHM6e0lURU06e3R5cGU6bi5TVFJJTkcsbWVudToiVkFMVUVHRVRfTElTVCJ9fX0sIi0tLSIse2Jsb2NrSWNvblVSSTpYLG9wY29kZToic2V0dmFycG9zIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InNldCBwb3NpdGlvbiBvZiB2YXJpYWJsZSBbTkFNRV0gdG8geDogW1hdIHk6IFtZXSIsYXJndW1lbnRzOntYOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LFk6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sTkFNRTp7dHlwZTpuLlNUUklORyxkZWZhdWx0VmFsdWU6Im15IHZhcmlhYmxlIn19fSx7YmxvY2tJY29uVVJJOlgsb3Bjb2RlOiJzZXRsaXN0cG9zIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InNldCBwb3NpdGlvbiBvZiBsaXN0IFtOQU1FXSB0byB4OiBbWF0geTogW1ldIixhcmd1bWVudHM6e1g6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sWTp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxOQU1FOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToibXkgdmFyaWFibGUifX19XSxtZW51czp7Q09MT1JBQkxFX01FTlU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIm1vbml0b3IgdGV4dCIsIm1vbml0b3IgYmFja2dyb3VuZCIsIm1vbml0b3IgYm9yZGVyIiwidmFyaWFibGUgdmFsdWUgYmFja2dyb3VuZCIsInZhcmlhYmxlIHZhbHVlIHRleHQiLCJsaXN0IGhlYWRlciBiYWNrZ3JvdW5kIiwibGlzdCBmb290ZXIgYmFja2dyb3VuZCIsImxpc3QgdmFsdWUgYmFja2dyb3VuZCIsImxpc3QgdmFsdWUgdGV4dCIsImFzayBwcm9tcHQgYmFja2dyb3VuZCIsImFzayBwcm9tcHQgYnV0dG9uIGJhY2tncm91bmQiLCJhc2sgcHJvbXB0IGlucHV0IGJhY2tncm91bmQiLCJhc2sgcHJvbXB0IHF1ZXN0aW9uIHRleHQiLCJhc2sgcHJvbXB0IGlucHV0IHRleHQiLCJhc2sgcHJvbXB0IGlucHV0IGJvcmRlciJdfSxCT1JERVJfV0lEVEhfTUVOVTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsibW9uaXRvciBiYWNrZ3JvdW5kIiwiYXNrIHByb21wdCBiYWNrZ3JvdW5kIiwiYXNrIHByb21wdCBpbnB1dCJdfSxCT1JERVJfUk9VTkRORVNTX01FTlU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIm1vbml0b3IgYmFja2dyb3VuZCIsInZhcmlhYmxlIHZhbHVlIiwibGlzdCB2YWx1ZSIsImFzayBwcm9tcHQgYmFja2dyb3VuZCIsImFzayBwcm9tcHQgYnV0dG9uIiwiYXNrIHByb21wdCBpbnB1dCJdfSxTQ1JPTExfTUVOVTp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsiZW5hYmxlZCIsImRpc2FibGVkIl19LFZBTFVFR0VUX0xJU1Q6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbIm1vbml0b3IgdGV4dCIsIm1vbml0b3IgYmFja2dyb3VuZCIsIm1vbml0b3IgYm9yZGVyIGNvbG9yIiwidmFyaWFibGUgdmFsdWUgYmFja2dyb3VuZCIsInZhcmlhYmxlIHZhbHVlIHRleHQiLCJsaXN0IGhlYWRlciBiYWNrZ3JvdW5kIiwibGlzdCBmb290ZXIgYmFja2dyb3VuZCIsImxpc3QgdmFsdWUgYmFja2dyb3VuZCIsImxpc3QgdmFsdWUgdGV4dCIsImFzayBwcm9tcHQgYmFja2dyb3VuZCIsImFzayBwcm9tcHQgYnV0dG9uIGJhY2tncm91bmQiLCJhc2sgcHJvbXB0IGlucHV0IGJhY2tncm91bmQiLCJhc2sgcHJvbXB0IGlucHV0IHRleHQiLCJhc2sgcHJvbXB0IGlucHV0IGJvcmRlciIsIm1vbml0b3IgYmFja2dyb3VuZCBib3JkZXIgd2lkdGgiLCJhc2sgcHJvbXB0IGJhY2tncm91bmQgYm9yZGVyIHdpZHRoIiwiYXNrIHByb21wdCBpbnB1dCBib3JkZXIgd2lkdGgiLCJtb25pdG9yIGJhY2tncm91bmQgcm91bmRuZXNzIiwidmFyaWFibGUgdmFsdWUgcm91bmRuZXNzIiwibGlzdCB2YWx1ZSByb3VuZG5lc3MiLCJhc2sgcHJvbXB0IGJhY2tncm91bmQgcm91bmRuZXNzIiwiYXNrIHByb21wdCBidXR0b24gcm91bmRuZXNzIiwiYXNrIHByb21wdCBpbnB1dCByb3VuZG5lc3MiLCJhc2sgcHJvbXB0IGJ1dHRvbiBpbWFnZSIsImxpc3Qgc2Nyb2xsIHJ1bGUiXX19fX1jaGFuZ2Vjc3MoQSl7cmV0dXJuKChBLGUpPT57aWYoQT1yLnRvU3RyaW5nKEEpLC9eIz9bYS16MC05XSskLy50ZXN0KEEpKXJldHVybiB2b2lkIGUoQSk7aWYoL15bYS16LV0rLWdyYWRpZW50XChbYS16MC05LCMlLiBdK1wpJC9pLnRlc3QoQSkpcmV0dXJuIHZvaWQgZShBKTtjb25zdCB0PUEubWF0Y2goL151cmxcKCIoW0EtWmEtejAtOVwtXy4hfionKCk7Lz86QCY9KyQsI10rKSJcKSQvKTtpZih0KXtjb25zdCBuPXRbMV07cmV0dXJuIHZtLnNlY3VyaXR5TWFuYWdlci5jYW5GZXRjaChuKS50aGVuKHQ9Pnt0JiZlKEEpfSl9Y29uc29sZS5lcnJvcigiSW52YWxpZCBjb2xvciIsQSl9KShBLkNPTE9SLGU9PnsibW9uaXRvciB0ZXh0Ij09PUEuQ09MT1JBQkxFP2Q9ZToibW9uaXRvciBiYWNrZ3JvdW5kIj09PUEuQ09MT1JBQkxFP209ZToibW9uaXRvciBib3JkZXIiPT09QS5DT0xPUkFCTEU/cD1lOiJ2YXJpYWJsZSB2YWx1ZSBiYWNrZ3JvdW5kIj09PUEuQ09MT1JBQkxFP0Y9ZToidmFyaWFibGUgdmFsdWUgdGV4dCI9PT1BLkNPTE9SQUJMRT9EPWU6Imxpc3QgaGVhZGVyIGJhY2tncm91bmQiPT09QS5DT0xPUkFCTEU/Zj1lOiJsaXN0IGZvb3RlciBiYWNrZ3JvdW5kIj09PUEuQ09MT1JBQkxFP1k9ZToibGlzdCB2YWx1ZSBiYWNrZ3JvdW5kIj09PUEuQ09MT1JBQkxFP1U9ZToibGlzdCB2YWx1ZSB0ZXh0Ij09PUEuQ09MT1JBQkxFP049ZToiYXNrIHByb21wdCBiYWNrZ3JvdW5kIj09PUEuQ09MT1JBQkxFP1M9ZToiYXNrIHByb21wdCBidXR0b24gYmFja2dyb3VuZCI9PT1BLkNPTE9SQUJMRT92PWU6ImFzayBwcm9tcHQgaW5wdXQgYmFja2dyb3VuZCI9PT1BLkNPTE9SQUJMRT9qPWU6ImFzayBwcm9tcHQgaW5wdXQgdGV4dCI9PT1BLkNPTE9SQUJMRT9QPWU6ImFzayBwcm9tcHQgcXVlc3Rpb24gdGV4dCI9PT1BLkNPTE9SQUJMRT9PPWU6ImFzayBwcm9tcHQgaW5wdXQgYm9yZGVyIj09PUEuQ09MT1JBQkxFJiYoVz1lKSxxKCl9KX1ncmFkaWVudEFuZ2xlKEEpe3JldHVybiJsaW5lYXItZ3JhZGllbnQoIitBLkFOR0xFKyJkZWcsIitBLkNPTE9SMSsiLCIrQS5DT0xPUjIrIikifXNldGJvcmRlcnNpemUoQSl7Y29uc3QgZT1yLnRvTnVtYmVyKEEuU0laRSk7Im1vbml0b3IgYmFja2dyb3VuZCI9PT1BLkJPUkRFUj9SPWU6ImFzayBwcm9tcHQgYmFja2dyb3VuZCI9PT1BLkJPUkRFUj9IPWU6ImFzayBwcm9tcHQgaW5wdXQiPT09QS5CT1JERVImJih6PWUpLHEoKX1zZXRib3JkZXJyYWRpdXMoQSl7Y29uc3QgZT1yLnRvTnVtYmVyKEEuU0laRSk7Im1vbml0b3IgYmFja2dyb3VuZCI9PT1BLkNPUk5FUj94PWU6InZhcmlhYmxlIHZhbHVlIj09PUEuQ09STkVSP3k9ZToibGlzdCB2YWx1ZSI9PT1BLkNPUk5FUj9UPWU6ImFzayBwcm9tcHQgYmFja2dyb3VuZCI9PT1BLkNPUk5FUj9iPWU6ImFzayBwcm9tcHQgYnV0dG9uIj09PUEuQ09STkVSP2s9ZToiYXNrIHByb21wdCBpbnB1dCI9PT1BLkNPUk5FUiYmKEo9ZSkscSgpfWFsbG93c2Nyb2xscnVsZShBKXtHPSJlbmFibGVkIj09PUEuU0NST0xMUlVMRT8iYXV0byI6ImhpZGRlbiIscSgpfXNldHZhcnBvcyhBLGUpe2VBKGUudGFyZ2V0LEEuTkFNRSwiIixyLnRvTnVtYmVyKEEuWCkrdGhpcy5ydW50aW1lLnN0YWdlV2lkdGgvMix0aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHQvMi1yLnRvTnVtYmVyKEEuWSkpfXNldGxpc3Rwb3MoQSxlKXtlQShlLnRhcmdldCxBLk5BTUUsImxpc3QiLHIudG9OdW1iZXIoQS5YKSt0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aC8yLHRoaXMucnVudGltZS5zdGFnZUhlaWdodC8yLXIudG9OdW1iZXIoQS5ZKSl9aGVscCgpe2FsZXJ0KCJcblRoaXMgaXMgYSBzaG9ydCBpbnRyb2R1Y3Rpb24gdG8gaG93IHRvIHVzZSB0aGUgTW9uaXRvciBTdHlsZXMgZXh0ZW5zaW9uIVxuXG7wnZef8J2XvPCdl7zwnZe48J2YgCDwnZev8J2XufCdl7zwnZew8J2XuPCdmIBcblRoZXNlIGJsb2NrcyBjaGFuZ2UgdGhlIGFwcGVhcmFuY2Ugb2YgdGhlIHZhcmlhYmxlIGFuZCBsaXN0IGRpZHNwbGF5cy4gWW91IGNhbiB1c2UgdGhlIGRyb3AtZG93biBtZW51IHRvIHNlbGVjdCB3aGF0IGNvbXBvbmVudCB5b3Ugd2FudCB0byBtb2RpZnkuIPCdmY/wnZmd8J2ZmiDwnZmY8J2ZpPCdmaHwnZmk8J2ZpyDwnZmX8J2ZofCdmaTwnZmY8J2ZoCBtb2RpZmllYXMgdGhlIGNvbG9yIG9mIGEgY29tcG9uZW50LiBZb3UgY2FuIHVzZSB0aGUg8J2ZnPCdmafwnZmW8J2ZmfCdmZ7wnZma8J2Zo/CdmakgYmxvY2sgaW5zaWRlIHRoZSBjb2xvciBpbnB1dCwgdG8gY3JlYXRlIGdyYWRpZW50cyBvciB0aGUg8J2ZhPCdmaLwnZmW8J2ZnPCdmZogYmxvY2sgdG8gdXNlIGEgaW1hZ2UgaW5zdGVhZCBvZiBzb2xpZCBjb2xvcnMuIPCdmY/wnZmd8J2ZmvCdmajwnZmaIPCdmanwnZms8J2ZpCDwnZmk8J2Zo/CdmaHwnZmuIPCdmazwnZmk8J2Zp/CdmaAg8J2ZpPCdmaMg8J2ZmPCdmZrwnZmn8J2ZqfCdmZbwnZme8J2ZoyDwnZmY8J2ZpPCdmaLwnZml8J2ZpPCdmaPwnZma8J2Zo/CdmanwnZmoISBZb3UgY2FuIGFsc28gdXNlIHRoZSDwnZmp8J2Zp/CdmZbwnZmj8J2ZqPCdmaXwnZmW8J2Zp/CdmZrwnZmj8J2ZqSDwnZmX8J2ZofCdmaTwnZmY8J2ZoCBhcyBhIGNvbG9yIGlucHV0LCB0byBtYWtlIGNvbXBvbmVudHMgaW52aXNpYmxlLiBUaGUg8J2Zl/CdmaTwnZmn8J2ZmfCdmZrwnZmnIPCdmZfwnZmh8J2ZpPCdmZjwnZmg8J2ZqCBtb2RpZnkgdGhlIGJvcmRlcnMgb2YgY29tcG9uZW50cy5cblxu8J2XpvCdl7LwnZe78J2YgPCdl7bwnZe78J2XtCDwnZev8J2XufCdl7zwnZew8J2XuPCdmIBcblRoZXNlIGJsb2NrcyBjYW4gY2hhbmdlIHRoZSBiZWhhdmlvdXIgb2YgY2VydGFpbiBjb21wb25lbnRzLiBUaGUg8J2ZqPCdmZjwnZmn8J2ZpPCdmaHwnZmhIPCdmafwnZmq8J2ZofCdmZogYmxvY2sgY2hhbmdlIHRoZSBiZWhhdmlvdXIgZm9yIGxpc3RzLiBPbiAnYXV0bycgdGhleSB3aWxsIHNob3cgdGhlIHNjcm9sbCBiYXIsIGFuZCBhbGxvdyB5b3UgdG8gc2Nob29sLCBidXQgb24gJ2hpZGRlbicsIHRoZXkgd29uJ3QgbGV0IHlvdSBkbyB0aGF0LCBhbmQgdGhlIHNjcm9sbCBiYXIgd2lsbCBiZSBoaWRkZW4uXG5cbvCdl6DwnZe88J2YgfCdl7bwnZe88J2XuyDwnZev8J2XufCdl7zwnZew8J2XuPCdmIBcblRoZXNlIGJsb2NrcyBhbGxvdyB5b3UgdG8gbW92ZSB2YXJpYWJsZSBhbmQgbGlzdCBkaXNwbGF5cyBhcm91bmQuIFlvdSBuZWVkIHRvIHVzZSB0aGVpciDwnZmh8J2ZlvCdmZfwnZma8J2ZoSDwnZmj8J2ZlvCdmaLwnZmaLiBUaGUgbGFiZWwgbmFtZSBpcyB0aGUgdGV4dCB0aGF0IGRpc3BsYXlzIG9uIHRoZSBtb25pdG9yLiBGb3IgZXhhbXBsZSwgYSAnZm9yIHRoaXMgc3ByaXRlIG9ubHknIHZhcmlhYmxlIHdpbGwgYmUgbGlrZSAnU3ByaXRlMTogbXkgdmFyaWFibGUnLiIpfXRyYW5zcGFyZW50aW5wdXQoKXtyZXR1cm4idHJhbnNwYXJlbnQifXBpY3R1cmVpbnB1dChBKXtyZXR1cm4ndXJsKCInLmNvbmNhdChlbmNvZGVVUkkoQS5VUkwpLCciKScpfWNsZWFyQ1NTKCl7JCgpfWdldFZhbHVlKEEpe3JldHVybiJtb25pdG9yIHRleHQiPT09QS5JVEVNP2Q6Im1vbml0b3IgYmFja2dyb3VuZCI9PT1BLklURU0/bToibW9uaXRvciBib3JkZXIgY29sb3IiPT09QS5JVEVNP3A6InZhcmlhYmxlIHZhbHVlIGJhY2tncm91bmQiPT09QS5JVEVNP0Y6InZhcmlhYmxlIHZhbHVlIHRleHQiPT09QS5JVEVNP0Q6Imxpc3QgaGVhZGVyIGJhY2tncm91bmQiPT09QS5JVEVNP2Y6Imxpc3QgZm9vdGVyIGJhY2tncm91bmQiPT09QS5JVEVNP1k6Imxpc3QgdmFsdWUgYmFja2dyb3VuZCI9PT1BLklURU0/VToibGlzdCB2YWx1ZSB0ZXh0Ij09PUEuSVRFTT9OOiJhc2sgcHJvbXB0IGJhY2tncm91bmQiPT09QS5JVEVNP1M6ImFzayBwcm9tcHQgYnV0dG9uIGJhY2tncm91bmQiPT09QS5JVEVNP3Y6ImFzayBwcm9tcHQgaW5wdXQgYmFja2dyb3VuZCI9PT1BLklURU0/ajoiYXNrIHByb21wdCBpbnB1dCB0ZXh0Ij09PUEuSVRFTT9QOiJhc2sgcHJvbXB0IHF1ZXN0aW9uIHRleHQiPT09QS5JVEVNP086ImFzayBwcm9tcHQgaW5wdXQgYm9yZGVyIj09PUEuSVRFTT9XOiJtb25pdG9yIGJhY2tncm91bmQgYm9yZGVyIHdpZHRoIj09PUEuSVRFTT9SOiJhc2sgcHJvbXB0IGJhY2tncm91bmQgYm9yZGVyIHdpZHRoIj09PUEuSVRFTT9IOiJhc2sgcHJvbXB0IGlucHV0IGJvcmRlciB3aWR0aCI9PT1BLklURU0/ejoibW9uaXRvciBiYWNrZ3JvdW5kIHJvdW5kbmVzcyI9PT1BLklURU0/eDoidmFyaWFibGUgdmFsdWUgcm91bmRuZXNzIj09PUEuSVRFTT95OiJsaXN0IHZhbHVlIHJvdW5kbmVzcyI9PT1BLklURU0/VDoiYXNrIHByb21wdCBiYWNrZ3JvdW5kIHJvdW5kbmVzcyI9PT1BLklURU0/YjoiYXNrIHByb21wdCBidXR0b24gcm91bmRuZXNzIj09PUEuSVRFTT9rOiJhc2sgcHJvbXB0IGlucHV0IHJvdW5kbmVzcyI9PT1BLklURU0/SjoiYXNrIHByb21wdCBidXR0b24gaW1hZ2UiPT09QS5JVEVNP1Y6Imxpc3Qgc2Nyb2xsaW5nIj09PUEuSVRFTT8iYXV0byI9PT1HPyJlbmFibGVkIjoiZGlzYWJsZWQiOiIifXNldEFza1VSSShBKXtyZXR1cm4gdGhpcy5ydW50aW1lLnZtLnNlY3VyaXR5TWFuYWdlci5jYW5GZXRjaChBLlVSTCkudGhlbihlPT57ZSYmKFY9QS5VUkwscSgpKX0pfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCgyKTtBLmV4cG9ydHM9Y2xhc3N7Z2V0SW5mbygpe3JldHVybntpZDoicHJvZmFuaXR5QVBJIixuYW1lOiJDZW5zb3JzaGlwIixibG9ja3M6W3tvcGNvZGU6ImNoZWNrUHJvZmFuaXR5IixibG9ja1R5cGU6aS5SRVBPUlRFUixkaXNhYmxlTW9uaXRvcjohMSx0ZXh0OiJyZW1vdmUgcHJvZmFuaXR5IGZyb20gW1RFWFRdIixhcmd1bWVudHM6e1RFWFQ6e3R5cGU6bi5TVFJJTkcsZGVmYXVsdFZhbHVlOiJIZWxsbywgSSBsb3ZlIHBpenphISJ9fX1dfX1jaGVja1Byb2Zhbml0eShBKXtsZXR7VEVYVDplfT1BO2NvbnN0IHQ9ZW5jb2RlVVJJQ29tcG9uZW50KHIudG9TdHJpbmcoZSkpO3JldHVybiBmZXRjaCgiaHR0cHM6Ly93d3cucHVyZ29tYWx1bS5jb20vc2VydmljZS9wbGFpbj90ZXh0PSIuY29uY2F0KHQpKS50aGVuKEE9PkEudGV4dCgpKS5jYXRjaCgoKT0+IiIpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9KHQoOCksdCgzODkpKSxvPXQoMikscz1uZXcgcjtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEscy5hdHRhY2hSdW50aW1lKEEpfXN0YXRpYyBnZXQgY2FudmFzU3RvcmFnZUhlYWRlcigpe3JldHVybiJjYW52YXNlczogIn1kZXNlcmlhbGl6ZShBKXtzLmNhbnZhc2VzPXt9O2Zvcihjb25zdCBlIG9mIEEpcy5uZXdDYW52YXMoZS5uYW1lLGUud2lkdGgsZS5oZWlnaHQsZS5pZCl9c2VyaWFsaXplKCl7cmV0dXJuIHMuZ2V0QWxsQ2FudmFzZXMoKS5tYXAoQT0+KHtuYW1lOkEubmFtZSx3aWR0aDpBLndpZHRoLGhlaWdodDpBLmhlaWdodCxpZDpBLmlkfSkpfXJlYWRBc0ltYWdlRWxlbWVudChBKXtyZXR1cm4gbmV3IFByb21pc2UoKGUsdCk9Pntjb25zdCBuPW5ldyBJbWFnZTtuLm9ubG9hZD1mdW5jdGlvbigpe2Uobiksbi5vbmxvYWQ9bnVsbCxuLm9uZXJyb3I9bnVsbH0sbi5vbmVycm9yPWZ1bmN0aW9uKCl7dChuZXcgRXJyb3IoIkNvc3R1bWUgbG9hZCBmYWlsZWQuIEFzc2V0IGNvdWxkIG5vdCBiZSByZWFkLiIpKSxuLm9ubG9hZD1udWxsLG4ub25lcnJvcj1udWxsfSxuLnNyYz1BfSl9b3JkZXJDYXRlZ29yeUJsb2NrcyhBKXtjb25zdCBlPUFbMF0sdD1BWzFdO2RlbGV0ZSBBWzBdLGRlbGV0ZSBBWzFdO2NvbnN0IG49cy5nZXRBbGxDYW52YXNlcygpLm1hcChBPT50LnJlcGxhY2UoIntjYW52YXNJZH0iLEEuaWQpKTtyZXR1cm4gbi5sZW5ndGg/KG4ucmV2ZXJzZSgpLnB1c2goZSksQT1uLnJldmVyc2UoKS5jb25jYXQoQSkpOltlXX1nZXRJbmZvKCl7cmV0dXJue2lkOiJjYW52YXMiLG5hbWU6Imh0bWwgY2FudmFzIixjb2xvcjE6IiMwMDY5YzIiLGNvbG9yMjoiIzAwNjBCNCIsY29sb3IzOiIjMDA2MEI0Iixpc0R5bmFtaWM6ITAsb3JkZXJCbG9ja3M6dGhpcy5vcmRlckNhdGVnb3J5QmxvY2tzLGJsb2Nrczpbe29wY29kZToiY3JlYXRlTmV3Q2FudmFzIixibG9ja1R5cGU6bi5CVVRUT04sdGV4dDoiY3JlYXRlIG5ldyBjYW52YXMifSx7b3Bjb2RlOiJjYW52YXNHZXR0ZXIiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyIsZGVmYXVsdFZhbHVlOiJ7Y2FudmFzSWR9In19LHRleHQ6IltjYW52YXNdIn0se2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6ImNvbmZpZyJ9LHtvcGNvZGU6InNldEdsb2JhbENvbXBvc2l0ZU9wZXJhdGlvbiIsdGV4dDoic2V0IGNvbXBvc2l0ZSBvcGVyYXRpb24gb2YgW2NhbnZhc10gdG8gW0NvbXBvc2l0ZU9wZXJhdGlvbl0iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyIsZGVmYXVsdFZhbHVlOiIifSxDb21wb3NpdGVPcGVyYXRpb246e3R5cGU6aS5TVFJJTkcsbWVudToiQ29tcG9zaXRlT3BlcmF0aW9uIixkZWZhdWx0VmFsdWU6IiJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJzZXRTaXplIix0ZXh0OiJzZXQgd2lkdGg6IFt3aWR0aF0gaGVpZ2h0OiBbaGVpZ2h0XSBvZiBbY2FudmFzXSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIixkZWZhdWx0VmFsdWU6IiJ9LHdpZHRoOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTp0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aH0saGVpZ2h0Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTp0aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHR9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJzZXRUcmFuc3BhcmVuY3kiLHRleHQ6InNldCB0cmFuc3BhcmVuY3kgb2YgW2NhbnZhc10gdG8gW3RyYW5zcGFyZW5jeV0iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyIsZGVmYXVsdFZhbHVlOiIifSx0cmFuc3BhcmVuY3k6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6InNldEZpbGwiLHRleHQ6InNldCBmaWxsIGNvbG9yIG9mIFtjYW52YXNdIHRvIFtjb2xvcl0iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyIsZGVmYXVsdFZhbHVlOiIifSxjb2xvcjp7dHlwZTppLkNPTE9SfX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToic2V0Qm9yZGVyQ29sb3IiLHRleHQ6InNldCBib3JkZXIgY29sb3Igb2YgW2NhbnZhc10gdG8gW2NvbG9yXSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIixkZWZhdWx0VmFsdWU6IiJ9LGNvbG9yOnt0eXBlOmkuQ09MT1J9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7YmxvY2tUeXBlOm4uTEFCRUwsdGV4dDoiZHJhd2luZyJ9LHtvcGNvZGU6ImNsZWFyQ2FudmFzIix0ZXh0OiJjbGVhciBjYW52YXMgW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyIsZGVmYXVsdFZhbHVlOiIifX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiY2xlYXJBcmlhIix0ZXh0OiJjbGVhciBhcmVhIGF0IHg6IFt4XSB5OiBbeV0gd2l0aCB3aWR0aDogW3dpZHRoXSBoZWlnaHQ6IFtoZWlnaHRdIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMiLGRlZmF1bHRWYWx1ZToiIn0seDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx5Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LHdpZHRoOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTp0aGlzLnJ1bnRpbWUuc3RhZ2VXaWR0aH0saGVpZ2h0Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTp0aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHR9fSxibG9ja1R5cGU6bi5DT01NQU5EfSwiLS0tIix7b3Bjb2RlOiJkcmF3UmVjdCIsdGV4dDoiZHJhdyByZWN0YW5nbGUgYXQgeDogW3hdIHk6IFt5XSB3aXRoIHdpZHRoOiBbd2lkdGhdIGhlaWdodDogW2hlaWdodF0gb24gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyIsZGVmYXVsdFZhbHVlOiIifSx4Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LHk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sd2lkdGg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOnRoaXMucnVudGltZS5zdGFnZVdpZHRofSxoZWlnaHQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOnRoaXMucnVudGltZS5zdGFnZUhlaWdodH19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImRyYXdJbWFnZSIsdGV4dDoiZHJhdyBpbWFnZSBbc3JjXSBhdCB4OiBbeF0geTogW3ldIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMiLGRlZmF1bHRWYWx1ZToiIn0seDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx5Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LHNyYzp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vc3R1ZGlvLnBlbmd1aW5tb2QuY29tL2Zhdmljb24uaWNvIn19LGJsb2NrVHlwZTpuLkNPTU1BTkR9XSxtZW51czp7Y2FudmFzOiJnZXRDYW52YXNNZW51SXRlbXMiLENvbXBvc2l0ZU9wZXJhdGlvbjp7aXRlbXM6W3t0ZXh0OiJzb3VyY2Utb3ZlciIsdmFsdWU6InNvdXJjZS1vdmVyIn0se3RleHQ6InNvdXJjZS1pbiIsdmFsdWU6InNvdXJjZS1pbiJ9LHt0ZXh0OiJzb3VyY2Utb3V0Iix2YWx1ZToic291cmNlLW91dCJ9LHt0ZXh0OiJzb3VyY2UtYXRvcCIsdmFsdWU6InNvdXJjZS1hdG9wIn0se3RleHQ6ImRlc3RpbmF0aW9uLW92ZXIiLHZhbHVlOiJkZXN0aW5hdGlvbi1vdmVyIn0se3RleHQ6ImRlc3RpbmF0aW9uLWluIix2YWx1ZToiZGVzdGluYXRpb24taW4ifSx7dGV4dDoiZGVzdGluYXRpb24tb3V0Iix2YWx1ZToiZGVzdGluYXRpb24tb3V0In0se3RleHQ6ImRlc3RpbmF0aW9uLWF0b3AiLHZhbHVlOiJkZXN0aW5hdGlvbi1hdG9wIn0se3RleHQ6ImxpZ2h0ZXIiLHZhbHVlOiJsaWdodGVyIn0se3RleHQ6ImNvcHkiLHZhbHVlOiJjb3B5In0se3RleHQ6InhvciIsdmFsdWU6InhvciJ9LHt0ZXh0OiJtdWx0aXBseSIsdmFsdWU6Im11bHRpcGx5In0se3RleHQ6InNjcmVlbiIsdmFsdWU6InNjcmVlbiJ9LHt0ZXh0OiJvdmVybGF5Iix2YWx1ZToib3ZlcmxheSJ9LHt0ZXh0OiJkYXJrZW4iLHZhbHVlOiJkYXJrZW4ifSx7dGV4dDoibGlnaHRlbiIsdmFsdWU6ImxpZ2h0ZW4ifSx7dGV4dDoiY29sb3ItZG9kZ2UiLHZhbHVlOiJjb2xvci1kb2RnZSJ9LHt0ZXh0OiJjb2xvci1idXJuIix2YWx1ZToiY29sb3ItYnVybiJ9LHt0ZXh0OiJoYXJkLWxpZ2h0Iix2YWx1ZToiaGFyZC1saWdodCJ9LHt0ZXh0OiJzb2Z0LWxpZ2h0Iix2YWx1ZToic29mdC1saWdodCJ9LHt0ZXh0OiJkaWZmZXJlbmNlIix2YWx1ZToiZGlmZmVyZW5jZSJ9LHt0ZXh0OiJleGNsdXNpb24iLHZhbHVlOiJleGNsdXNpb24ifSx7dGV4dDoiaHVlIix2YWx1ZToiaHVlIn0se3RleHQ6InNhdHVyYXRpb24iLHZhbHVlOiJzYXR1cmF0aW9uIn0se3RleHQ6ImNvbG9yIix2YWx1ZToiY29sb3IifSx7dGV4dDoibHVtaW5vc2l0eSIsdmFsdWU6Imx1bWlub3NpdHkifV19fX19Y3JlYXRlTmV3Q2FudmFzKCl7Y29uc3QgQT1wcm9tcHQoImNhbnZhcyBuYW1lPyIsIm5ld0NhbnZhcyIpO2lmKCFBKXJldHVybiBhbGVydCgiQ2FuY2VsZWQiKTtzLmdldENhbnZhc0J5TmFtZShBKXx8KHMubmV3Q2FudmFzKEEpLHZtLmVtaXRXb3Jrc3BhY2VVcGRhdGUoKSx0aGlzLnNlcmlhbGl6ZSgpKX1nZXRDYW52YXNNZW51SXRlbXMoKXtjb25zdCBBPXMuZ2V0QWxsQ2FudmFzZXMoKTtyZXR1cm4gQS5sZW5ndGg8MT9be3RleHQ6IiIsdmFsdWU6IiJ9XTpBLm1hcChBPT4oe3RleHQ6QS5uYW1lLHZhbHVlOkEuaWR9KSl9Y2FudmFzR2V0dGVyKEEpe3JldHVybiBzLmdldENhbnZhcyhBLmNhbnZhcykuZWxlbWVudC50b0RhdGFVUkwoKX1zZXRHbG9iYWxDb21wb3NpdGVPcGVyYXRpb24oQSl7cy5nZXRDYW52YXMoQS5jYW52YXMpLmNvbnRleHQuZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uPUEuQ29tcG9zaXRlT3BlcmF0aW9ufXNldEJvcmRlckNvbG9yKEEpe2NvbnN0IGU9by50b1N0cmluZyhBLmNvbG9yKTtzLmdldENhbnZhcyhBLmNhbnZhcykuY29udGV4dC5zdHJva2VTdHlsZT1lfXNldEZpbGwoQSl7Y29uc3QgZT1vLnRvU3RyaW5nKEEuY29sb3IpO3MuZ2V0Q2FudmFzKEEuY2FudmFzKS5jb250ZXh0LmZpbGxTdHlsZT1lfXNldFNpemUoQSl7Y29uc3QgZT1zLmdldENhbnZhcyhBLmNhbnZhcyk7ZS5lbGVtZW50LndpZHRoPUEud2lkdGgsZS5lbGVtZW50LmhlaWdodD1BLmhlaWdodCxlLmNvbnRleHQ9ZS5lbGVtZW50LmdldENvbnRleHQoIjJkIil9ZHJhd1JlY3QoQSl7cy5nZXRDYW52YXMoQS5jYW52YXMpLmNvbnRleHQuZmlsbFJlY3QoQS54LEEueSxBLndpZHRoLEEuaGVpZ2h0KX1kcmF3SW1hZ2UoQSl7cmV0dXJuIG5ldyBQcm9taXNlKGU9Pntjb25zdCB0PXMuZ2V0Q2FudmFzKEEuY2FudmFzKSxuPW5ldyBJbWFnZTtuLm9ubG9hZD0oKT0+e3QuY29udGV4dC5kcmF3SW1hZ2UobixBLngsQS55KSxlKCl9LG4uc3JjPUEuc3JjfSl9Y2xlYXJBcmlhKEEpe3MuZ2V0Q2FudmFzKEEuY2FudmFzKS5jb250ZXh0LmNsZWFyUmVjdChBLngsQS55LEEud2lkdGgsQS5oZWlnaHQpfWNsZWFyQ2FudmFzKEEpe2NvbnN0IGU9cy5nZXRDYW52YXMoQS5jYW52YXMpO2UuY29udGV4dC5jbGVhclJlY3QoMCwwLGUud2lkdGgsZS5oZWlnaHQpfXNldFRyYW5zcGFyZW5jeShBKXtzLmdldENhbnZhcyhBLmNhbnZhcykuY29udGV4dC5nbG9iYWxBbHBoYT1BLnRyYW5zcGFyZW5jeS8xMDB9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg5KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmNhbnZhc2VzPXt9fWF0dGFjaFJ1bnRpbWUoQSl7dGhpcy5ydW50aW1lPUF9Z2V0Q2FudmFzKEEpe3JldHVybiB0aGlzLmNhbnZhc2VzW0FdfWRlbGV0ZUNhbnZhcyhBKXtjb25zdCBlPXRoaXMuY2FudmFzZXNbQV07cmV0dXJuIGRlbGV0ZSB0aGlzLmNhbnZhc2VzW0FdLGV9bmV3Q2FudmFzKEEsZSx0LGkpe2U9ZXx8dGhpcy5ydW50aW1lLnN0YWdlV2lkdGgsdD10fHx0aGlzLnJ1bnRpbWUuc3RhZ2VIZWlnaHQ7Y29uc3Qgcj1pfHxuKCksbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTtvLmlkPXIsby53aWR0aD1lLG8uaGVpZ2h0PXQ7Y29uc3Qgcz17bmFtZTpBLGlkOnIsZWxlbWVudDpvLHNraW5JZDp0aGlzLnJ1bnRpbWUucmVuZGVyZXI/dGhpcy5ydW50aW1lLnJlbmRlcmVyLmNyZWF0ZUJpdG1hcFNraW4obywxKTpudWxsLHdpZHRoOmUsaGVpZ2h0OnQsY29udGV4dDpvLmdldENvbnRleHQoIjJkIil9O3JldHVybiB0aGlzLmNhbnZhc2VzW3JdPXMsc31nZXRDYW52YXNCeU5hbWUoQSl7cmV0dXJuIE9iamVjdC52YWx1ZXModGhpcy5jYW52YXNlcykuZmluZChlPT5lLm5hbWU9PT1BKX1nZXRBbGxDYW52YXNlcygpe3JldHVybiBPYmplY3QudmFsdWVzKHRoaXMuY2FudmFzZXMpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9KHQoNiksdCgzOTEpKSxvPXQoOSkscz0iaHR0cHM6Ly9zdHVkaW8ucGVuZ3Vpbm1vZC5jb20vZmF2aWNvbi5pY28iLGE9W1siY29tcG9zaXRpbmcgbWV0aG9kIiwiZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uIixbWyJzb3VyY2Ugb3ZlciIsInNvdXJjZS1vdmVyIl0sWyJzb3VyY2UgaW4iLCJzb3VyY2UtaW4iXSxbInNvdXJjZSBvdXQiLCJzb3VyY2Utb3V0Il0sWyJzb3VyY2UgYXRvcCIsInNvdXJjZS1hdG9wIl0sWyJkZXN0aW5hdGlvbiBvdmVyIiwiZGVzdGluYXRpb24tb3ZlciJdLFsiZGVzdGluYXRpb24gaW4iLCJkZXN0aW5hdGlvbi1pbiJdLFsiZGVzdGluYXRpb24gb3V0IiwiZGVzdGluYXRpb24tb3V0Il0sWyJkZXN0aW5hdGlvbiBhdG9wIiwiZGVzdGluYXRpb24tYXRvcCJdLFsibGlnaHRlciIsImxpZ2h0ZXIiXSxbImNvcHkiLCJjb3B5Il0sWyJ4b3IiLCJ4b3IiXSxbIm11bHRpcGx5IiwibXVsdGlwbHkiXSxbInNjcmVlbiIsInNjcmVlbiJdLFsib3ZlcmxheSIsIm92ZXJsYXkiXSxbImRhcmtlbiIsImRhcmtlbiJdLFsibGlnaHRlbiIsImxpZ2h0ZW4iXSxbImNvbG9yIGRvZGdlIiwiY29sb3ItZG9kZ2UiXSxbImNvbG9yIGJ1cm4iLCJjb2xvci1idXJuIl0sWyJoYXJkIGxpZ2h0IiwiaGFyZC1saWdodCJdLFsic29mdCBsaWdodCIsInNvZnQtbGlnaHQiXSxbImRpZmZlcmVuY2UiLCJkaWZmZXJlbmNlIl0sWyJleGNsdXNpb24iLCJleGNsdXNpb24iXSxbImh1ZSIsImh1ZSJdLFsic2F0dXJhdGlvbiIsInNhdHVyYXRpb24iXSxbImNvbG9yIiwiY29sb3IiXSxbImx1bWlub3NpdHkiLCJsdW1pbm9zaXR5Il1dLCJzb3VyY2Utb3ZlciJdLFsiQ1NTIGZpbHRlciIsImZpbHRlciIsaS5TVFJJTkcsIm5vbmUiXSxbImZvbnQiLCJmb250IixpLlNUUklORywiIl0sWyJmb250IGtlcm5pbmcgbWV0aG9kIiwiZm9udEtlcm5pbmciLFtbImJyb3dzZXIgZGVmaW5lZCIsImF1dG8iXSxbImZvbnQgZGVmaW5lZCIsIm5vcm1hbCJdLFsibm9uZSIsIm5vbmUiXV0sIm5vcm1hbCJdLFsiZm9udCBzdHJldGNoIiwiZm9udFN0cmV0Y2giLFtbInVsdHJhIGNvbmRlbnNlZCIsInVsdHJhLWNvbmRlbnNlZCJdLFsiZXh0cmEgY29uZGVuc2VkIiwiZXh0cmEtY29uZGVuc2VkIl0sWyJjb25kZW5zZWQiLCJjb25kZW5zZWQiXSxbIm5vcm1hbCIsIm5vcm1hbCJdLFsic2VtaSBleHBhbmRlZCIsInNlbWktZXhwYW5kZWQiXSxbImV4cGFuZGVkIiwiZXhwYW5kZWQiXSxbImV4dHJhIGV4cGFuZGVkIiwiZXh0cmEtZXhwYW5kZWQiXSxbInVsdHJhIGV4cGFuZGVkIiwidWx0cmEtZXhwYW5kZWQiXV0sIm5vcm1hbCJdLFsiZm9udCBjYXNlIHNpemluZyIsImZvbnRWYXJpYW50Q2FwcyIsW1sibm9ybWFsIiwibm9ybWFsIl0sWyJ1bmktY2FzZSIsInVuaWNhc2UiXSxbInRpdGxpbmctY2FzZSIsInRpdGxpbmctY2FwcyJdLFsic21hbGxlciB1cHBlcmNhc2UiLCJzbWFsbC1jYXBzIl0sWyJzbWFsbGVyIGNhc2VkIGNoYXJhY3RlcnMiLCJhbGwtc21hbGwtY2FwcyJdLFsicGV0aXRlIHVwcGVyY2FzZSIsInBldGl0ZS1jYXBzIl0sWyJwZXRpdGUgY2FzZWQgY2hhcmFjdGVycyIsImFsbC1wZXRpdGUtY2FwcyJdXSwibm9ybWFsIl0sWyJ0cmFuc3BhcmVuY3kiLCJnbG9iYWxBbHBoYSIsaS5OVU1CRVIsIjAiXSxbImltYWdlIHNtb290aGluZyIsImltYWdlU21vb3RoaW5nRW5hYmxlZCIsaS5CT09MRUFOLCIiXSxbImltYWdlIHNtb290aGluZyBxdWFsaXR5IiwiaW1hZ2VTbW9vdGhpbmdRdWFsaXR5IixbWyJsb3ciLCJsb3ciXSxbIm1lZGl1bSIsIm1lZGl1bSJdLFsiaGlnaCIsImhpZ2giXV0sImxvdyJdLFsibGV0dGVyIHNwYWNpbmciLCJsZXR0ZXJTcGFjaW5nIixpLk5VTUJFUiwiMCJdLFsibGluZSBjYXAgc2hhcGUiLCJsaW5lQ2FwIixbWyJzaGFycCIsImJ1dHQiXSxbInJvdW5kIiwicm91bmQiXSxbInNxdWFyZSIsInNxdWFyZSJdXSwiYnV0dCJdLFsibGluZSBkYXNoIG9mZnNldCIsImxpbmVEYXNoT2Zmc2V0IixpLk5VTUJFUiwiMCJdLFsibGluZSBqb2luIHNoYXBlIiwibGluZUpvaW4iLFtbInJvdW5kIiwicm91bmQiXSxbImJldmVsZWQiLCJiZXZlbCJdLFsic2hhcnAiLCJtaXRlciJdXSwibWl0ZXIiXSxbImxpbmUgc2l6ZSIsImxpbmVXaWR0aCIsaS5OVU1CRVIsIjEiXSxbInNoYXJwIGxpbmUgam9pbiBsaW1pdCIsIm1pdGVyTGltaXQiLGkuTlVNQkVSLCIxMCJdLFsic2hhZG93IGJsdXIiLCJzaGFkb3dCbHVyIixpLk5VTUJFUiwiMCJdLFsic2hhZG93IGNvbG9yIiwic2hhZG93Q29sb3IiLGkuQ09MT1IsbnVsbF0sWyJzaGFkb3cgWCBvZmZzZXQiLCJzaGFkb3dPZmZzZXRYIixpLk5VTUJFUiwiMCJdLFsic2hhZG93IFkgb2Zmc2V0Iiwic2hhZG93T2Zmc2V0WSIsaS5OVU1CRVIsIjAiXSxbImxpbmUgY29sb3IiLCJzdHJva2VTdHlsZSIsaS5DT0xPUixudWxsXSxbInRleHQgaG9yaXpvbnRhbCBhbGlnbm1lbnQiLCJ0ZXh0QWxpZ24iLFtbInN0YXJ0Iiwic3RhcnQiXSxbImxlZnQiLCJsZWZ0Il0sWyJjZW50ZXIiLCJjZW50ZXIiXSxbInJpZ2h0IiwicmlnaHQiXSxbImVuZCIsImVuZCJdXSwic3RhcnQiXSxbInRleHQgdmVydGljYWwgYWxpZ25tZW50IiwidGV4dEJhc2VsaW5lIixbWyJ0b3AiLCJ0b3AiXSxbImhhbmdpbmciLCJoYW5naW5nIl0sWyJtaWRkbGUiLCJtaWRkbGUiXSxbImFscGhhYmV0aWMiLCJhbHBoYWJldGljIl0sWyJpZGVvZ3JhcGhpYyIsImlkZW9ncmFwaGljIl0sWyJib3R0b20iLCJib3R0b20iXV0sImFscGhhYmV0aWMiXSxbInRleHQgcmVuZGVyaW5nIG9wdGltaXNhdGlvbiIsInRleHRSZW5kZXJpbmciLFtbImF1dG8iLCJhdXRvIl0sWyJyZW5kZXIgc3BlZWQiLCJvcHRpbWl6ZVNwZWVkIl0sWyJsZWdpYmlsaXR5Iiwib3B0aW1pemVMZWdpYmlsaXR5Il0sWyJnZW9tZXRyaWMgcHJlY2lzaW9uIiwiZ2VvbWV0cmljUHJlY2lzaW9uIl1dLCJhdXRvIl0sWyJ3b3JkIHNwYWNpbmciLCJ3b3JkU3BhY2luZyIsaS5OVU1CRVIsIjAiXV07QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMubGFzdFZhcnM9W10sdGhpcy5wcmVsb2FkZWRJbWFnZXM9e30sdGhpcy5wcm9wTGlzdD1bXSx0aGlzLnNiSW5mbz17fTtmb3IoY29uc3QgQSBvZiBhKXt0aGlzLnByb3BMaXN0LnB1c2goQS5zbGljZSgwLDIpKTtjb25zdCBlPXtpc0R1bW15OiExLGRlZmF1bHQ6QVszXSx0eXBlOkFbMl19O3N3aXRjaChBWzJdKXtjYXNlIGkuU1RSSU5HOmUuc2hhZG93PSJ0ZXh0IjticmVhaztjYXNlIGkuTlVNQkVSOmUuc2hhZG93PSJtYXRoX251bWJlciI7YnJlYWs7Y2FzZSBpLkJPT0xFQU46ZS5jaGVjaz0iQm9vbGVhbiI7YnJlYWs7Y2FzZSBpLkNPTE9SOmUuc2hhZG93PSJjb2xvdXJfcGlja2VyIjticmVhaztkZWZhdWx0OmUuaXNEdW1teT0hMCxlLm9wdGlvbnM9QVsyXX10aGlzLnNiSW5mb1tBWzFdXT1lfXRoaXMucnVudGltZS5yZWdpc3RlclZhcmlhYmxlKCJjYW52YXMiLHIpLHRoaXMucnVudGltZS5yZWdpc3RlclNlcmlhbGl6ZXIoci5jdXN0b21JZCxBPT5BLmlkLChBLGUpPT57bGV0IHQ9ZS52YXJpYWJsZXNbQV07aWYoIXQpZm9yKGNvbnN0IGUgb2YgdGhpcy5ydW50aW1lLnRhcmdldHMpaWYoZS52YXJpYWJsZXNbQV0pe3Q9ZS52YXJpYWJsZXNbQV07YnJlYWt9cmV0dXJuIHR9KSx0aGlzLnJ1bnRpbWUucmVnaXN0ZXJDb21waWxlZEV4dGVuc2lvbkJsb2NrcygibmV3Q2FudmFzIix0aGlzLmdldENvbXBpbGVJbmZvKCkpO2NvbnN0IGU9QT0+eyJjYW52YXMiPT09QSYmdGhpcy5ydW50aW1lLnZtLmVtaXRXb3Jrc3BhY2VVcGRhdGUoKX07dGhpcy5ydW50aW1lLm9uKCJ2YXJpYWJsZUNyZWF0ZSIsZSksdGhpcy5ydW50aW1lLm9uKCJ2YXJpYWJsZUNoYW5nZSIsZSksdGhpcy5ydW50aW1lLm9uKCJ2YXJpYWJsZURlbGV0ZSIsZSk7bGV0IHQ9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KFNjcmF0Y2hCbG9ja3MuQmxvY2tzLCJuZXdDYW52YXNfc2V0UHJvcGVydHkiLHtzZXQ6QT0+e3RoaXMuX2ltcGxlbWVudFNCSW5mbyhBKSx0PUF9LGdldDooKT0+dH0pfW9yZGVyQ2F0ZWdvcnlCbG9ja3MoQSl7Y29uc3QgZT1BWzBdLHQ9QVsxXSxuPVtlXTtkZWxldGUgQVswXSxkZWxldGUgQVsxXTtjb25zdCBpPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLHI9dGhpcy5ydW50aW1lLnZtLmVkaXRpbmdUYXJnZXQsbz1PYmplY3QudmFsdWVzKGkudmFyaWFibGVzKS5maWx0ZXIoQT0+ImNhbnZhcyI9PT1BLnR5cGUpLm1hcChBPT5BLnRvVG9vbGJveERlZmF1bHQoImNhbnZhcyIpKS5tYXAoQT0+dC5yZXBsYWNlKCI+PC9ibG9jaz4iLCI+Ii5jb25jYXQoQSwiPC9ibG9jaz4iKSkpLHM9T2JqZWN0LnZhbHVlcyhyLnZhcmlhYmxlcykuZmlsdGVyKEE9PiJjYW52YXMiPT09QS50eXBlKS5tYXAoQT0+QS50b1Rvb2xib3hEZWZhdWx0KCJjYW52YXMiKSkubWFwKEE9PnQucmVwbGFjZSgiPjwvYmxvY2s+IiwiPiIuY29uY2F0KEEsIjwvYmxvY2s+IikpKTtyZXR1cm4gby5sZW5ndGgmJihuLnB1c2goJzxsYWJlbCB0ZXh0PSJDYW52YXNlcyBmb3IgYWxsIHNwcml0ZXMiPjwvbGFiZWw+Jyksbi5wdXNoKC4uLm8pKSxzLmxlbmd0aCYmci5pZCE9PWkuaWQmJihuLnB1c2goJzxsYWJlbCB0ZXh0PSJDYW52YXNlcyBmb3IgdGhpcyBzcHJpdGUiPjwvbGFiZWw+Jyksbi5wdXNoKC4uLnMpKSwoby5sZW5ndGh8fHMubGVuZ3RoKSYmbi5wdXNoKC4uLkEpLG59X2ltcGxlbWVudFNCSW5mbyhBKXtjb25zdCBlPXRoaXMuc2JJbmZvO0EucmVuZGVySW5wdXQ9ZnVuY3Rpb24oQSl7dmFyIHQsbjtBfHwoQT10aGlzLmdldEZpZWxkVmFsdWUoInByb3AiKSk7Y29uc3QgaT10aGlzLmdldElucHV0KCJ2YWx1ZSIpLHI9aS50eXBlIT09U2NyYXRjaEJsb2Nrcy5EVU1NWV9JTlBVVCYmIShudWxsIT09KHQ9aS5jb25uZWN0aW9uLnRhcmdldEJsb2NrKCkpJiZ2b2lkIDAhPT10JiZudWxsIT09KG49dC5pc1NoYWRvdykmJnZvaWQgMCE9PW4mJm4uY2FsbCh0KSksbz1lW0FdO2lmKHRoaXMubGFzdEl0ZW09PT1BfHxyJiYhby5pc0R1bW15KXJldHVybjtpZih0aGlzLnJlbW92ZUlucHV0KCJ2YWx1ZSIpLG8uaXNEdW1teSl7Y29uc3QgQT10aGlzLmFwcGVuZER1bW15SW5wdXQoInZhbHVlIiksZT1uZXcgU2NyYXRjaEJsb2Nrcy5GaWVsZERyb3Bkb3duKG8ub3B0aW9ucyk7cmV0dXJuIEEuYXBwZW5kRmllbGQoZSwidmFsdWUiKSx2b2lkIGUuc2V0VmFsdWUoby5kZWZhdWx0KX1jb25zdCBzPXRoaXMuYXBwZW5kVmFsdWVJbnB1dCgidmFsdWUiKTtpZihzLnNldENoZWNrKG8uY2hlY2spLG8uc2hhZG93JiYhdGhpcy5pc0luc2VydGlvbk1hcmtlcigpKXtjb25zdCBBPXRoaXMud29ya3NwYWNlLm5ld0Jsb2NrKG8uc2hhZG93KTtBLnNldFNoYWRvdyghMCksQS5pbml0U3ZnKCksQS5pbnB1dExpc3RbMF0uZmllbGRSb3dbMF0uc2V0VmFsdWUoby5kZWZhdWx0KSxzLmNvbm5lY3Rpb24uY29ubmVjdChBLm91dHB1dENvbm5lY3Rpb24pLEEucmVuZGVyKCExKX19O2NvbnN0IHQ9QS5pbml0O0EuaW5pdD1mdW5jdGlvbigpe3QuYXBwbHkodGhpcyksdGhpcy5hcHBlbmREdW1teUlucHV0KCJ2YWx1ZSIpO3RoaXMuZ2V0RmllbGQoInByb3AiKS5zZXRWYWxpZGF0b3IoQT0+KHRoaXMucmVuZGVySW5wdXQoQSksQSkpLHRoaXMucmVuZGVySW5wdXQoKX19Z2V0SW5mbygpe3JldHVybntpZDoibmV3Q2FudmFzIixuYW1lOiJodG1sIGNhbnZhcyIsY29sb3IxOiIjMDA2OWMyIixpc0R5bmFtaWM6ITAsb3JkZXJCbG9ja3M6dGhpcy5vcmRlckNhdGVnb3J5QmxvY2tzLmJpbmQodGhpcyksYmxvY2tzOlt7b3Bjb2RlOiJjcmVhdGVOZXdDYW52YXMiLGJsb2NrVHlwZTpuLkJVVFRPTix0ZXh0OiJjcmVhdGUgbmV3IGNhbnZhcyJ9LHtvcGNvZGU6ImNhbnZhc0dldHRlciIsYmxvY2tUeXBlOm4uUkVQT1JURVIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19LHRleHQ6IltjYW52YXNdIn0se2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6InN0eWxpemluZyJ9LHtvcGNvZGU6InNldFNpemUiLHRleHQ6InNldCB3aWR0aDogW3dpZHRoXSBoZWlnaHQ6IFtoZWlnaHRdIG9mIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifSx3aWR0aDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlV2lkdGh9LGhlaWdodDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0fX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToic2V0UHJvcGVydHkiLHRleHQ6InNldCBbcHJvcF0gb2YgW2NhbnZhc10gdG8gIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifSxwcm9wOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhc1Byb3BzIn19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImdldFByb3BlcnR5Iix0ZXh0OiJnZXQgW3Byb3BdIG9mIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifSxwcm9wOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhc1Byb3BzIn19LGJsb2NrVHlwZTpuLlJFUE9SVEVSfSx7b3Bjb2RlOiJkYXNoIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBsaW5lIGRhc2ggdG8gW2Rhc2hpbmddIGluIFtjYW52YXNdIixhcmd1bWVudHM6e2Rhc2hpbmc6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJbMTAsIDEwXSJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtibG9ja1R5cGU6bi5MQUJFTCx0ZXh0OiJkaXJlY3QgZHJhd2luZyJ9LHtvcGNvZGU6ImNsZWFyQ2FudmFzIix0ZXh0OiJjbGVhciBjYW52YXMgW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJjbGVhckFyaWEiLHRleHQ6ImNsZWFyIGFyZWEgYXQgeDogW3hdIHk6IFt5XSB3aXRoIHdpZHRoOiBbd2lkdGhdIGhlaWdodDogW2hlaWdodF0gb24gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9LHg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0seTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx3aWR0aDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlV2lkdGh9LGhlaWdodDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0fX0sYmxvY2tUeXBlOm4uQ09NTUFORH0sIi0tLSIse29wY29kZToiZHJhd1RleHQiLHRleHQ6ImRyYXcgdGV4dCBbdGV4dF0gYXQgW3hdIFt5XSBvbnRvIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifSx0ZXh0Ont0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToicGhvdG9zIHByaW50ZWQifSx4Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LHk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImRyYXdUZXh0V2l0aENhcCIsdGV4dDoiZHJhdyB0ZXh0IFt0ZXh0XSBhdCBbeF0gW3ldIHdpdGggc2l6ZSBjYXAgW2NhcF0gb250byBbY2FudmFzXSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn0sdGV4dDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InBob3RvcyBwcmludGVkIn0seDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx5Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LGNhcDp7dHlwZTppLk5VTUJFUixkZWZhdWxlVmFsdWU6IjEwIn19LGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6Im91dGxpbmVUZXh0Iix0ZXh0OiJkcmF3IHRleHQgb3V0bGluZSBmb3IgW3RleHRdIGF0IFt4XSBbeV0gb250byBbY2FudmFzXSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn0sdGV4dDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InBob3RvcyBwcmludGVkIn0seDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx5Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJvdXRsaW5lVGV4dFdpdGhDYXAiLHRleHQ6ImRyYXcgdGV4dCBvdXRsaW5lIGZvciBbdGV4dF0gYXQgW3hdIFt5XSB3aXRoIHNpemUgY2FwIFtjYXBdIG9udG8gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9LHRleHQ6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJwaG90b3MgcHJpbnRlZCJ9LHg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0seTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxjYXA6e3R5cGU6aS5OVU1CRVIsZGVmYXVsZVZhbHVlOiIxMCJ9fSxibG9ja1R5cGU6bi5DT01NQU5EfSx7b3Bjb2RlOiJkcmF3UmVjdCIsdGV4dDoiZHJhdyByZWN0YW5nbGUgYXQgeDogW3hdIHk6IFt5XSB3aXRoIHdpZHRoOiBbd2lkdGhdIGhlaWdodDogW2hlaWdodF0gb24gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9LHg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0seTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx3aWR0aDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlV2lkdGh9LGhlaWdodDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0fX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToib3V0bGluZVJlY3QiLHRleHQ6ImRyYXcgcmVjdGFuZ2xlIG91dGxpbmUgYXQgeDogW3hdIHk6IFt5XSB3aXRoIHdpZHRoOiBbd2lkdGhdIGhlaWdodDogW2hlaWdodF0gb24gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9LHg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0seTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx3aWR0aDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlV2lkdGh9LGhlaWdodDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6dGhpcy5ydW50aW1lLnN0YWdlSGVpZ2h0fX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToicHJlbG9hZFVyaUltYWdlIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InByZWxvYWQgaW1hZ2UgW1VSSV0gYXMgW05BTUVdIixhcmd1bWVudHM6e1VSSTp7dHlwZTppLlNUUklORyxleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMCxkZWZhdWx0VmFsdWU6c30sTkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InByZWxvYWRlZCBpbWFnZSJ9fX0se29wY29kZToidW5sb2FkVXJpSW1hZ2UiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoidW5sb2FkIGltYWdlIFtOQU1FXSIsYXJndW1lbnRzOntOQU1FOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToicHJlbG9hZGVkIGltYWdlIn19fSx7b3Bjb2RlOiJnZXRXaWR0aE9mUHJlbG9hZGVkIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJnZXQgd2lkdGggb2YgW25hbWVdIixhcmd1bWVudHM6e25hbWU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJwcmVsb2FkZWQgaW1hZ2UifX19LHtvcGNvZGU6ImdldEhlaWdodE9mUHJlbG9hZGVkIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJnZXQgaGVpZ2h0IG9mIFtuYW1lXSIsYXJndW1lbnRzOntuYW1lOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToicHJlbG9hZGVkIGltYWdlIn19fSx7b3Bjb2RlOiJkcmF3VXJpSW1hZ2UiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiZHJhdyBpbWFnZSBbVVJJXSBhdCB4OltYXSB5OltZXSBvbnRvIGNhbnZhcyBbY2FudmFzXSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn0sVVJJOnt0eXBlOmkuU1RSSU5HLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwLGRlZmF1bHRWYWx1ZTpzfSxYOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxZOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX19LHtvcGNvZGU6ImRyYXdVcmlJbWFnZVdIUiIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJkcmF3IGltYWdlIFtVUkldIGF0IHg6W1hdIHk6W1ldIHdpZHRoOltXSURUSF0gaGVpZ2h0OltIRUlHSFRdIHBvaW50ZWQgYXQ6IFtST1RBVEVdIG9udG8gY2FudmFzIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifSxVUkk6e3R5cGU6aS5TVFJJTkcsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITAsZGVmYXVsdFZhbHVlOnN9LFg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFdJRFRIOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTo2NH0sSEVJR0hUOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTo2NH0sUk9UQVRFOnt0eXBlOmkuQU5HTEUsZGVmYXVsdFZhbHVlOjkwfX19LHtvcGNvZGU6ImRyYXdVcmlJbWFnZVdIQ1gxWTFYMlkyUiIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJkcmF3IGltYWdlIFtVUkldIGF0IHg6W1hdIHk6W1ldIHdpZHRoOltXSURUSF0gaGVpZ2h0OltIRUlHSFRdIGNyb3BwaW5nIGZyb20geDpbQ1JPUFhdIHk6W0NST1BZXSB3aWR0aDpbQ1JPUFddIGhlaWdodDpbQ1JPUEhdIHBvaW50ZWQgYXQ6IFtST1RBVEVdIG9udG8gY2FudmFzIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifSxVUkk6e3R5cGU6aS5TVFJJTkcsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITAsZGVmYXVsdFZhbHVlOnN9LFg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFdJRFRIOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTo2NH0sSEVJR0hUOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTo2NH0sQ1JPUFg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LENST1BZOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxDUk9QVzp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfSxDUk9QSDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTAwfSxST1RBVEU6e3R5cGU6aS5BTkdMRSxkZWZhdWx0VmFsdWU6OTB9fX0se2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6InBhdGggZHJhd2luZyJ9LHtvcGNvZGU6ImJlZ2luUGF0aCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJiZWdpbiBwYXRoIGRyYXdpbmcgb24gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToibW92ZVRvIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6Im1vdmUgcGVuIHRvIHg6W3hdIHk6W3ldIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e3g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0seTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSx7b3Bjb2RlOiJsaW5lVG8iLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiYWRkIGxpbmUgZ29pbmcgdG8geDpbeF0geTpbeV0gb24gW2NhbnZhc10iLGFyZ3VtZW50czp7eDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx5Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImFyY1RvIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImFkZCBhcmMgZ29pbmcgdG8geDpbeF0geTpbeV0gb24gW2NhbnZhc10gd2l0aCBjb250cm9sIHBvaW50cyBbY29udHJvbFBvaW50c10gYW5kIHJhZGl1cyBbcmFkaXVzXSIsYXJndW1lbnRzOnt4Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LHk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sY29udHJvbFBvaW50czp7dHlwZTppLlBPTFlHT04sbm9kZXM6Mn0scmFkaXVzOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMTAifSxjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSwiLS0tIix7b3Bjb2RlOiJhZGRSZWN0IixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImFkZCBhIHJlY3RhbmdsZSBhdCB4Olt4XSB5Olt5XSB3aXRoIHdpZHRoOlt3aWR0aF0gaGVpZ2h0OltoZWlnaHRdIHRvIFtjYW52YXNdIixhcmd1bWVudHM6e3g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0seTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSx3aWR0aDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTB9LGhlaWdodDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6MTB9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImFkZEVsbGlwc2UiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiYWRkIGEgZWxsaXBzZSBhdCB4Olt4XSB5Olt5XSB3aXRoIHdpZHRoOlt3aWR0aF0gaGVpZ2h0OltoZWlnaHRdIHBvaW50ZWQgdG93YXJkcyBbZGlyXSB0byBbY2FudmFzXSIsYXJndW1lbnRzOnt4Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LHk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sd2lkdGg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfSxoZWlnaHQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfSxkaXI6e3R5cGU6aS5BTkdMRSxkZWZhdWx0VmFsdWU6OTB9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImFkZEVsbGlwc2VTdGFydFN0b3AiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiYWRkIGEgZWxsaXBzZSB3aXRoIHN0YXJ0aW5nIHJvdGF0aW9uIFtzdGFydF0gYW5kIGVuZGluZyByb3RhdGlvbiBbZW5kXSBhdCB4Olt4XSB5Olt5XSB3aXRoIHdpZHRoOlt3aWR0aF0gaGVpZ2h0OltoZWlnaHRdIHBvaW50ZWQgdG93YXJkcyBbZGlyXSB0byBbY2FudmFzXSIsYXJndW1lbnRzOnt4Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9LHk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sd2lkdGg6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfSxoZWlnaHQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfSxzdGFydDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxlbmQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIzNjAifSxkaXI6e3R5cGU6aS5BTkdMRSxkZWZhdWx0VmFsdWU6OTB9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LCItLS0iLHtvcGNvZGU6ImNsb3NlUGF0aCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJhdHRlbXB0IHRvIGNsb3NlIGFueSBvcGVuIHBhdGggaW4gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToic3Ryb2tlIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImRyYXcgb3V0bGluZSBmb3IgY3VycmVudCBwYXRoIGluIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImZpbGwiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiZHJhdyBmaWxsIGZvciBjdXJyZW50IHBhdGggaW4gW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6InRyYW5zZm9ybXMifSx7b3Bjb2RlOiJzYXZlVHJhbnNmb3JtIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNhdmUgW2NhbnZhc10ncyB0cmFuc2Zvcm0iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToicmVzdG9yZVRyYW5zZm9ybSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJyZXNldCB0byBbY2FudmFzXSdzIHNhdmVkIHRyYW5zZm9ybSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSwiLS0tIix7b3Bjb2RlOiJ0dXJuUm90YXRpb25MZWZ0IixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InR1cm4gbGVmdCBbZGVncmVlc10gaW4gW2NhbnZhc10iLGFyZ3VtZW50czp7ZGVncmVlczp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjkwIn0sY2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToidHVyblJvdGF0aW9uUmlnaHQiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoidHVybiByaWdodCBbZGVncmVlc10gaW4gW2NhbnZhc10iLGFyZ3VtZW50czp7ZGVncmVlczp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjkwIn0sY2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToic2V0Um90YXRpb24iLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoic2V0IHJvdGF0aW9uIHRvIFtkZWdyZWVzXSBpbiBbY2FudmFzXSIsYXJndW1lbnRzOntkZWdyZWVzOnt0eXBlOmkuQU5HTEUsZGVmYXVsdFZhbHVlOiI5MCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LCItLS0iLHtvcGNvZGU6InNldFRyYW5zbGF0ZVhZIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCB0cmFuc2xhdGlvbiBYOiBbeF0gWTogW3ldIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e3g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9LHk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImNoYW5nZVRyYW5zbGF0ZVhZIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImNoYW5nZSB0cmFuc2xhdGlvbiBYOiBbeF0gWTogW3ldIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e3g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9LHk6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LCItLS0iLHtvcGNvZGU6ImNoYW5nZVRyYW5zbGF0ZVgiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiY2hhbmdlIFggdHJhbnNsYXRpb24gYnkgW2Ftb3VudF0gb24gW2NhbnZhc10iLGFyZ3VtZW50czp7YW1vdW50Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMTAifSxjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSx7b3Bjb2RlOiJzZXRUcmFuc2xhdGVYIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBYIHNjYWxlciB0byBbYW1vdW50XSBvbiBbY2FudmFzXSIsYXJndW1lbnRzOnthbW91bnQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiI1MCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImNoYW5nZVRyYW5zbGF0ZVkiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiY2hhbmdlIFkgdHJhbnNsYXRpb24gYnkgW2Ftb3VudF0gb24gW2NhbnZhc10iLGFyZ3VtZW50czp7YW1vdW50Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMTAifSxjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSx7b3Bjb2RlOiJzZXRUcmFuc2xhdGVZIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBZIHRyYW5zbGF0aW9uIGJ5IFthbW91bnRdIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e2Ftb3VudDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjUwIn0sY2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0sIi0tLSIse29wY29kZToiY2hhbmdlU2NhbGVYWSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJjaGFuZ2UgWFkgc2NhbGVyIGJ5IFtwZXJjZW50XSUgb24gW2NhbnZhc10iLGFyZ3VtZW50czp7cGVyY2VudDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEwIn0sY2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToic2V0U2NhbGVYWSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgWFkgc2NhbGVyIHRvIFtwZXJjZW50XSUgb24gW2NhbnZhc10iLGFyZ3VtZW50czp7cGVyY2VudDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjUwIn0sY2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToiY2hhbmdlU2NhbGVYIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImNoYW5nZSBYIHNjYWxlciBieSBbcGVyY2VudF0lIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e3BlcmNlbnQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6InNldFNjYWxlWCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgWCBzY2FsZXIgdG8gW3BlcmNlbnRdJSBvbiBbY2FudmFzXSIsYXJndW1lbnRzOntwZXJjZW50Ont0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiNTAifSxjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSx7b3Bjb2RlOiJjaGFuZ2VTY2FsZVkiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiY2hhbmdlIFkgc2NhbGVyIGJ5IFtwZXJjZW50XSUgb24gW2NhbnZhc10iLGFyZ3VtZW50czp7cGVyY2VudDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjUwIn0sY2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToic2V0U2NhbGVZIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBZIHNjYWxlciB0byBbcGVyY2VudF0lIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e3BlcmNlbnQ6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiI1MCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LCItLS0iLHtvcGNvZGU6InJlc2V0VHJhbnNmb3JtIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImNsZWFyIHRyYW5zZm9ybSBpbiBbY2FudmFzXSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSx7b3Bjb2RlOiJsb2FkVHJhbnNmb3JtIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBuZXcgdHJhbnNmb3JtIFt0cmFuc2Zvcm1dIG9uIFtjYW52YXNdIixhcmd1bWVudHM6e3RyYW5zZm9ybTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IlsxLCAwLCAwLCAxLCAwLCAwXSJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImdldFRyYW5zZm9ybSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoiZ2V0IGN1cnJlbnQgdHJhbnNmb3JtIGluIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtibG9ja1R5cGU6bi5MQUJFTCx0ZXh0OiJ1dGlsaXppbmcifSx7b3Bjb2RlOiJwdXRPbnRvU3ByaXRlIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCB0aGlzIHNwcml0ZXMgY29zdHVtZSB0byBbY2FudmFzXSIsYXJndW1lbnRzOntjYW52YXM6e3R5cGU6aS5TVFJJTkcsbWVudToiY2FudmFzIn19fSx7b3Bjb2RlOiJnZXREYXRhVVJJIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJnZXQgZGF0YSBVUkwgb2YgW2NhbnZhc10iLGFyZ3VtZW50czp7Y2FudmFzOnt0eXBlOmkuU1RSSU5HLG1lbnU6ImNhbnZhcyJ9fX0se29wY29kZToiZ2V0V2lkdGhPZkNhbnZhcyIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoiZ2V0IHdpZHRoIG9mIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImdldEhlaWdodE9mQ2FudmFzIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJnZXQgaGVpZ2h0IG9mIFtjYW52YXNdIixhcmd1bWVudHM6e2NhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19LHtvcGNvZGU6ImdldERyYXduV2lkdGhPZlRleHQiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6ImdldCBbZGltZW5zaW9uXSBvZiB0ZXh0IFt0ZXh0XSB3aGVuIGRyYXduIHRvIFtjYW52YXNdIixhcmd1bWVudHM6e2RpbWVuc2lvbjp7dHlwZTppLlNUUklORyxtZW51OiJ0ZXh0RGltZW5zaW9uIn0sdGV4dDp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImJvZ29zIGJpbnRlZCJ9LGNhbnZhczp7dHlwZTppLlNUUklORyxtZW51OiJjYW52YXMifX19XSxtZW51czp7dGV4dERpbWVuc2lvbjp7aXRlbXM6WyJ3aWR0aCIsImhlaWdodCIsWyJib3VuZGluZyBib3ggbGVmdCIsImFjdHVhbEJvdW5kaW5nQm94TGVmdCJdLFsiYm91bmRpbmcgYm94IHJpZ2h0IiwiYWN0dWFsQm91bmRpbmdCb3hSaWdodCJdLFsiYm91bmRpbmcgYm94IGFzY2VudCIsImFjdHVhbEJvdW5kaW5nQm94QXNjZW50Il0sWyJib3VuZGluZyBib3ggZGVzY2VudCIsImFjdHVhbEJvdW5kaW5nQm94RGVzY2VudCJdLFsiZm9udCBib3VuZGluZyBib3ggYXNjZW50IiwiZm9udEJvdW5kaW5nQm94QXNjZW50Il0sWyJmb250IGJvdW5kaW5nIGJveCBkZXNjZW50IiwiZm9udEJvdW5kaW5nQm94RGVzY2VudCJdXX0sY2FudmFzOnt2YXJpYWJsZVR5cGU6ImNhbnZhcyJ9LGNhbnZhc1Byb3BzOntpdGVtczp0aGlzLnByb3BMaXN0fX19fWNyZWF0ZU5ld0NhbnZhcygpe1NjcmF0Y2hCbG9ja3MucHJvbXB0KCJOZXcgQ2FudmFzIG5hbWU6IiwiIiwoQSxlLHQpPT57bGV0e3Njb3BlOm59PXQ7aWYoIShBPVNjcmF0Y2hCbG9ja3MuVmFyaWFibGVzLnZhbGlkYXRlU2NhbGFyVmFyT3JMaXN0TmFtZV8oQSxTY3JhdGNoQmxvY2tzLmdldE1haW5Xb3Jrc3BhY2UoKSxlLCExLCJjYW52YXMiLCdBIENhbnZhcyBuYW1lZCAiJTEiIGFscmVhZHkgZXhpc3RzLicpKSlyZXR1cm47KG4/dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCk6dGhpcy5ydW50aW1lLnZtLmVkaXRpbmdUYXJnZXQpLmNyZWF0ZVZhcmlhYmxlKG8oKSxBLCJjYW52YXMiKSx0aGlzLnJ1bnRpbWUudm0uZW1pdFdvcmtzcGFjZVVwZGF0ZSgpfSwiTmV3IENhbnZhcyIsImNhbnZhcyIpfWdldENvbXBpbGVJbmZvKCl7cmV0dXJue2lyOntjYW52YXNHZXR0ZXI6KEEsZSk9Pih7a2luZDoiaW5wdXQiLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLHNldFNpemU6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKSx3aWR0aDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwid2lkdGgiKSxoZWlnaHQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsImhlaWdodCIpfSksc2V0UHJvcGVydHk6KEEsZSk9Pnt2YXIgdCxuO3JldHVybntraW5kOiJzdGFjayIsaXNGaWVsZDohIWUuZmllbGRzLnZhbHVlLHByb3A6ZS5maWVsZHMucHJvcC52YWx1ZSx2YWx1ZTpudWxsIT09KHQ9bnVsbD09PShuPWUuZmllbGRzKXx8dm9pZCAwPT09bnx8bnVsbD09PShuPW4udmFsdWUpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLnZhbHVlKSYmdm9pZCAwIT09dD90OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ2YWx1ZSIpLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX19LGdldFByb3BlcnR5OihBLGUpPT4oe2tpbmQ6ImlucHV0Iixwcm9wOmUuZmllbGRzLnByb3AudmFsdWUsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksZGFzaDooQSxlKT0+KHtraW5kOiJzdGFjayIsZGFzaGluZzpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiZGFzaGluZyIpLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLGNsZWFyQ2FudmFzOihBLGUpPT4oe2tpbmQ6InN0YWNrIixjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxjbGVhckFyaWE6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKSx4OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ4IikseTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieSIpLHdpZHRoOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ3aWR0aCIpLGhlaWdodDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiaGVpZ2h0Iil9KSxkcmF3VGV4dDooQSxlKT0+KHtraW5kOiJzdGFjayIsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpLHg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIngiKSx5OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ5IiksdGV4dDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwidGV4dCIpfSksZHJhd1RleHRXaXRoQ2FwOihBLGUpPT4oe2tpbmQ6InN0YWNrIixjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIikseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieCIpLHk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInkiKSx0ZXh0OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ0ZXh0IiksY2FwOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJjYXAiKX0pLG91dGxpbmVUZXh0OihBLGUpPT4oe2tpbmQ6InN0YWNrIixjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIikseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieCIpLHk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInkiKSx0ZXh0OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ0ZXh0Iil9KSxvdXRsaW5lVGV4dFdpdGhDYXA6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKSx4OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ4IikseTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieSIpLHRleHQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInRleHQiKSxjYXA6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsImNhcCIpfSksZHJhd1JlY3Q6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKSx4OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ4IikseTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieSIpLHdpZHRoOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ3aWR0aCIpLGhlaWdodDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiaGVpZ2h0Iil9KSxvdXRsaW5lUmVjdDooQSxlKT0+KHtraW5kOiJzdGFjayIsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpLHg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIngiKSx5OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ5Iiksd2lkdGg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIndpZHRoIiksaGVpZ2h0OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJoZWlnaHQiKX0pLHByZWxvYWRVcmlJbWFnZTooQSxlKT0+KHtraW5kOiJzdGFjayIsVVJJOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJVUkkiKSxOQU1FOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJOQU1FIil9KSx1bmxvYWRVcmlJbWFnZTooQSxlKT0+KHtraW5kOiJzdGFjayIsTkFNRTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiTkFNRSIpfSksZ2V0V2lkdGhPZlByZWxvYWRlZDooQSxlKT0+KHtraW5kOiJpbnB1dCIsbmFtZTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwibmFtZSIpfSksZ2V0SGVpZ2h0T2ZQcmVsb2FkZWQ6KEEsZSk9Pih7a2luZDoiaW5wdXQiLG5hbWU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIm5hbWUiKX0pLGRyYXdVcmlJbWFnZTooQSxlKT0+KHtraW5kOiJzdGFjayIsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpLFVSSTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiVVJJIiksWDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiWCIpLFk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlkiKX0pLGRyYXdVcmlJbWFnZVdIUjooQSxlKT0+KHtraW5kOiJzdGFjayIsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpLFVSSTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiVVJJIiksWDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiWCIpLFk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlkiKSxXSURUSDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiV0lEVEgiKSxIRUlHSFQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIkhFSUdIVCIpLFJPVEFURTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiUk9UQVRFIil9KSxkcmF3VXJpSW1hZ2VXSENYMVkxWDJZMlI6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKSxVUkk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlVSSSIpLFg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlgiKSxZOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJZIiksV0lEVEg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIldJRFRIIiksSEVJR0hUOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJIRUlHSFQiKSxDUk9QWDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQ1JPUFgiKSxDUk9QWTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQ1JPUFkiKSxDUk9QVzpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQ1JPUFciKSxDUk9QSDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiQ1JPUEgiKSxST1RBVEU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlJPVEFURSIpfSksZ2V0V2lkdGhPZkNhbnZhczooQSxlKT0+KHtraW5kOiJpbnB1dCIsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksZ2V0SGVpZ2h0T2ZDYW52YXM6KEEsZSk9Pih7a2luZDoiaW5wdXQiLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLGJlZ2luUGF0aDooQSxlKT0+KHtraW5kOiJzdGFjayIsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksbW92ZVRvOihBLGUpPT4oe2tpbmQ6InN0YWNrIix4OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ4IikseTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieSIpLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLGxpbmVUbzooQSxlKT0+KHtraW5kOiJzdGFjayIseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieCIpLHk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInkiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxhcmNUbzooQSxlKT0+KHtraW5kOiJzdGFjayIseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieCIpLHk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInkiKSxjb250cm9sUG9pbnRzOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJjb250cm9sUG9pbnRzIikscmFkaXVzOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJyYWRpdXMiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxhZGRSZWN0OihBLGUpPT4oe2tpbmQ6InN0YWNrIix4OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ4IikseTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieSIpLHdpZHRoOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ3aWR0aCIpLGhlaWdodDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiaGVpZ2h0IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksYWRkRWxsaXBzZTooQSxlKT0+KHtraW5kOiJzdGFjayIseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieCIpLHk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInkiKSx3aWR0aDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwid2lkdGgiKSxoZWlnaHQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsImhlaWdodCIpLGRpcjpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiZGlyIiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksYWRkRWxsaXBzZVN0YXJ0U3RvcDooQSxlKT0+KHtraW5kOiJzdGFjayIseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwieCIpLHk6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInkiKSx3aWR0aDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwid2lkdGgiKSxoZWlnaHQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsImhlaWdodCIpLHN0YXJ0OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJzdGFydCIpLGVuZDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiZW5kIiksZGlyOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJkaXIiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxzdHJva2U6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLGZpbGw6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLHNhdmVUcmFuc2Zvcm06KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLHJlc3RvcmVUcmFuc2Zvcm06KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLHR1cm5Sb3RhdGlvbkxlZnQ6KEEsZSk9Pih7a2luZDoic3RhY2siLGRlZ3JlZXM6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsImRlZ3JlZXMiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSx0dXJuUm90YXRpb25SaWdodDooQSxlKT0+KHtraW5kOiJzdGFjayIsZGVncmVlczpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiZGVncmVlcyIpLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLHNldFJvdGF0aW9uOihBLGUpPT4oe2tpbmQ6InN0YWNrIixkZWdyZWVzOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJkZWdyZWVzIiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksc2V0VHJhbnNsYXRlWFk6KEEsZSk9Pih7a2luZDoic3RhY2siLHg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIngiKSx5OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ5IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksY2hhbmdlVHJhbnNsYXRlWFk6KEEsZSk9Pih7a2luZDoic3RhY2siLHg6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIngiKSx5OkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ5IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksY2hhbmdlVHJhbnNsYXRlWDooQSxlKT0+KHtraW5kOiJzdGFjayIseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiYW1vdW50IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksc2V0VHJhbnNsYXRlWDooQSxlKT0+KHtraW5kOiJzdGFjayIseDpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiYW1vdW50IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksY2hhbmdlVHJhbnNsYXRlWTooQSxlKT0+KHtraW5kOiJzdGFjayIseTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiYW1vdW50IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksc2V0VHJhbnNsYXRlWTooQSxlKT0+KHtraW5kOiJzdGFjayIseTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwiYW1vdW50IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksY2hhbmdlU2NhbGVYWTooQSxlKT0+KHtraW5kOiJzdGFjayIsc2NhbGU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInBlcmNlbnQiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxzZXRTY2FsZVhZOihBLGUpPT4oe2tpbmQ6InN0YWNrIixzY2FsZTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwicGVyY2VudCIpLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLGNoYW5nZVNjYWxlWDooQSxlKT0+KHtraW5kOiJzdGFjayIsc2NhbGU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInBlcmNlbnQiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxzZXRTY2FsZVg6KEEsZSk9Pih7a2luZDoic3RhY2siLHNjYWxlOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJwZXJjZW50IiksY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksY2hhbmdlU2NhbGVZOihBLGUpPT4oe2tpbmQ6InN0YWNrIixzY2FsZTpBLmRlc2NlbmRJbnB1dE9mQmxvY2soZSwicGVyY2VudCIpLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLHNldFNjYWxlWTooQSxlKT0+KHtraW5kOiJzdGFjayIsc2NhbGU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInBlcmNlbnQiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxyZXNldFRyYW5zZm9ybTooQSxlKT0+KHtraW5kOiJzdGFjayIsY2FudmFzOkEuZGVzY2VuZFZhcmlhYmxlKGUsImNhbnZhcyIsImNhbnZhcyIpfSksbG9hZFRyYW5zZm9ybTooQSxlKT0+KHtraW5kOiJzdGFjayIsdHJhbnNmb3JtOkEuZGVzY2VuZElucHV0T2ZCbG9jayhlLCJ0cmFuc2Zvcm0iKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KSxnZXRUcmFuc2Zvcm06KEEsZSk9Pih7a2luZDoiaW5wdXQiLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLHB1dE9udG9TcHJpdGU6KEEsZSk9Pih7a2luZDoic3RhY2siLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLGdldERhdGFVUkk6KEEsZSk9Pih7a2luZDoiaW5wdXQiLGNhbnZhczpBLmRlc2NlbmRWYXJpYWJsZShlLCJjYW52YXMiLCJjYW52YXMiKX0pLGdldERyYXduV2lkdGhPZlRleHQ6KEEsZSk9Pih7a2luZDoiaW5wdXQiLHByb3A6ZS5maWVsZHMuZGltZW5zaW9uLnZhbHVlLHRleHQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsInRleHQiKSxjYW52YXM6QS5kZXNjZW5kVmFyaWFibGUoZSwiY2FudmFzIiwiY2FudmFzIil9KX0sanM6e2NhbnZhc0dldHRlcjooQSxlLHQpPT57bGV0e1R5cGVkSW5wdXQ6bixUWVBFX1VOS05PV046aX09dDtyZXR1cm4gbmV3IG4oZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksaSl9LHNldFNpemU6KEEsZSk9Pntjb25zb2xlLmxvZyhBKTtjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5kZXNjZW5kSW5wdXQoQS53aWR0aCkuYXNOdW1iZXIoKSxpPWUuZGVzY2VuZElucHV0KEEuaGVpZ2h0KS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQodCwiLmNhbnZhcy53aWR0aCA9ICIpLmNvbmNhdChuLCI7XG4iKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5jYW52YXMuaGVpZ2h0ID0gIikuY29uY2F0KGksIjtcbiIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLnVwZGF0ZUNhbnZhc0NvbnRlbnRSZW5kZXJzKCk7XG4iKX0sc2V0UHJvcGVydHk6KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxyPUEuaXNGaWVsZD9BLnZhbHVlOmUuZGVzY2VuZElucHV0KEEudmFsdWUpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLiIpLmNvbmNhdChBLnByb3AsIiA9ICIpO3N3aXRjaCh0aGlzLnNiSW5mb1tBLnByb3BdLnR5cGUpe2Nhc2UgaS5TVFJJTkc6ZS5zb3VyY2UrPXIuYXNTdHJpbmcoKTticmVhaztjYXNlIGkuTlVNQkVSOmUuc291cmNlKz1yLmFzTnVtYmVyKCk7YnJlYWs7Y2FzZSBpLkJPT0xFQU46ZS5zb3VyY2UrPXIuYXNCb29sZWFuKCk7YnJlYWs7Y2FzZSBpLkNPTE9SOmUuc291cmNlKz1yLmFzU3RyaW5nKCk7YnJlYWs7ZGVmYXVsdDplLnNvdXJjZSs9JyInLmNvbmNhdCgoInN0cmluZyIhPXR5cGVvZihvPXIpJiYobG9nLndhcm4oInNhbml0aXplIGdvdCB1bmV4cGVjdGVkIHR5cGU6ICIuY29uY2F0KHR5cGVvZiBvKSksbz0iIitvKSxKU09OLnN0cmluZ2lmeShvKS5zbGljZSgxLC0xKSksJyInKX12YXIgbztlLnNvdXJjZSs9IjtcbiJ9LGdldFByb3BlcnR5OihBLGUsdCk9PntsZXR7VHlwZWRJbnB1dDpuLFRZUEVfTlVNQkVSOnIsVFlQRV9TVFJJTkc6byxUWVBFX0JPT0xFQU46cyxUWVBFX1VOS05PV046YX09dDtjb25zdCBCPWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLGM9ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KEIsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKTtsZXQgZz1hO3N3aXRjaCh0aGlzLnNiSW5mb1tBLnByb3BdLnR5cGUpe2Nhc2UgaS5TVFJJTkc6Zz1vO2JyZWFrO2Nhc2UgaS5OVU1CRVI6Zz1yO2JyZWFrO2Nhc2UgaS5CT09MRUFOOmc9czticmVhaztjYXNlIGkuQ09MT1I6Zz1vO2JyZWFrO2RlZmF1bHQ6Zz1vfXJldHVybiBuZXcgbigiIi5jb25jYXQoYywiLiIpLmNvbmNhdChBLnByb3ApLGcpfSxkYXNoOihBLGUsdCk9PntsZXR7Q29uc3RhbnRJbnB1dDpufT10O2NvbnN0IGk9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcykscj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQoaSwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLG89ZS5kZXNjZW5kSW5wdXQoQS5kYXNoaW5nKSxzPW8gaW5zdGFuY2VvZiBuO2Uuc291cmNlKz0iIi5jb25jYXQociwiLnNldExpbmVEYXNoKCIpLHN8fChlLnNvdXJjZSs9InBhcnNlSlNPTlNhZmUoIiksZS5zb3VyY2UrPXM/by5jb25zdGFudFZhbHVlOm8uYXNVbmtub3duKCksc3x8KGUuc291cmNlKz0iKSIpLGUuc291cmNlKz0iKTtcbiJ9LGNsZWFyQ2FudmFzOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuY2xlYXJSZWN0KDAsIDAsICIpLmNvbmNhdCh0LCIuY2FudmFzLndpZHRoLCAiKS5jb25jYXQodCwiLmNhbnZhcy5oZWlnaHQpO1xuIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIudXBkYXRlQ2FudmFzQ29udGVudFJlbmRlcnMoKTtcbiIpfSxjbGVhckFyaWE6KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxpPWUuZGVzY2VuZElucHV0KEEueCkuYXNOdW1iZXIoKSxyPWUuZGVzY2VuZElucHV0KEEueSkuYXNOdW1iZXIoKSxvPWUuZGVzY2VuZElucHV0KEEud2lkdGgpLmFzTnVtYmVyKCkscz1lLmRlc2NlbmRJbnB1dChBLmhlaWdodCkuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5jbGVhclJlY3QoIikuY29uY2F0KGksIiwgIikuY29uY2F0KHIsIiwgIikuY29uY2F0KG8sIiwgIikuY29uY2F0KHMsIik7XG4iKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi51cGRhdGVDYW52YXNDb250ZW50UmVuZGVycygpO1xuIil9LGRyYXdUZXh0OihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLngpLmFzTnVtYmVyKCkscj1lLmRlc2NlbmRJbnB1dChBLnkpLmFzTnVtYmVyKCksbz1lLmRlc2NlbmRJbnB1dChBLnRleHQpLmFzU3RyaW5nKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuZmlsbFRleHQoIikuY29uY2F0KG8sIiwgIikuY29uY2F0KGksIiwgIikuY29uY2F0KHIsIik7XG4iKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi51cGRhdGVDYW52YXNDb250ZW50UmVuZGVycygpO1xuIil9LGRyYXdUZXh0V2l0aENhcDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLHI9ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS50ZXh0KS5hc1N0cmluZygpLHM9ZS5kZXNjZW5kSW5wdXQoQS5jYXApLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuZmlsbFRleHQoIikuY29uY2F0KG8sIiwgIikuY29uY2F0KGksIiwgIikuY29uY2F0KHIsIiwgIikuY29uY2F0KHMsIik7XG4iKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi51cGRhdGVDYW52YXNDb250ZW50UmVuZGVycygpO1xuIil9LG91dGxpbmVUZXh0OihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLngpLmFzTnVtYmVyKCkscj1lLmRlc2NlbmRJbnB1dChBLnkpLmFzTnVtYmVyKCksbz1lLmRlc2NlbmRJbnB1dChBLnRleHQpLmFzU3RyaW5nKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuc3Ryb2tlVGV4dCgiKS5jb25jYXQobywiLCAiKS5jb25jYXQoaSwiLCAiKS5jb25jYXQociwiKTtcbiIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLnVwZGF0ZUNhbnZhc0NvbnRlbnRSZW5kZXJzKCk7XG4iKX0sb3V0bGluZVRleHRXaXRoQ2FwOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLngpLmFzTnVtYmVyKCkscj1lLmRlc2NlbmRJbnB1dChBLnkpLmFzTnVtYmVyKCksbz1lLmRlc2NlbmRJbnB1dChBLnRleHQpLmFzU3RyaW5nKCkscz1lLmRlc2NlbmRJbnB1dChBLmNhcCkuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5zdHJva2VUZXh0KCIpLmNvbmNhdChvLCIsICIpLmNvbmNhdChpLCIsICIpLmNvbmNhdChyLCIsICIpLmNvbmNhdChzLCIpO1xuIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIudXBkYXRlQ2FudmFzQ29udGVudFJlbmRlcnMoKTtcbiIpfSxkcmF3UmVjdDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLHI9ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS53aWR0aCkuYXNOdW1iZXIoKSxzPWUuZGVzY2VuZElucHV0KEEuaGVpZ2h0KS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLmZpbGxSZWN0KCIpLmNvbmNhdChpLCIsICIpLmNvbmNhdChyLCIsICIpLmNvbmNhdChvLCIsICIpLmNvbmNhdChzLCIpO1xuIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIudXBkYXRlQ2FudmFzQ29udGVudFJlbmRlcnMoKTtcbiIpfSxvdXRsaW5lUmVjdDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLHI9ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS53aWR0aCkuYXNOdW1iZXIoKSxzPWUuZGVzY2VuZElucHV0KEEuaGVpZ2h0KS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnN0cm9rZVJlY3QoIikuY29uY2F0KGksIiwgIikuY29uY2F0KHIsIiwgIikuY29uY2F0KG8sIiwgIikuY29uY2F0KHMsIik7XG4iKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi51cGRhdGVDYW52YXNDb250ZW50UmVuZGVycygpO1xuIil9LHByZWxvYWRVcmlJbWFnZTooQSxlKT0+e2NvbnN0IHQ9ZS5ldmFsdWF0ZU9uY2UoInt9Iiksbj1lLmRlc2NlbmRJbnB1dChBLk5BTUUpLmFzU3RyaW5nKCksaT1lLmRlc2NlbmRJbnB1dChBLlVSSSkuYXNVbmtub3duKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCJbIikuY29uY2F0KG4sIl0gPSB5aWVsZCogd2FpdFByb21pc2UoIiksZS5zb3VyY2UrPSJyZXNvbHZlSW1hZ2VVUkwoIi5jb25jYXQoaSwiKSIpLGUuc291cmNlKz0iKTtcbiJ9LHVubG9hZFVyaUltYWdlOihBLGUpPT57Y29uc3QgdD1lLmV2YWx1YXRlT25jZSgie30iKSxuPWUuZGVzY2VuZElucHV0KEEuTkFNRSkuYXNTdHJpbmcoKTtlLnNvdXJjZSs9ImlmICgiLmNvbmNhdCh0LCJbIikuY29uY2F0KG4sIl0pIHsiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIlsiKS5jb25jYXQobiwiXS5yZW1vdmUoKTtcbiIpLGUuc291cmNlKz0iZGVsZXRlICIuY29uY2F0KHQsIlsiKS5jb25jYXQobiwiXTtcbiIpLGUuc291cmNlKz0ifSJ9LGdldFdpZHRoT2ZQcmVsb2FkZWQ6KEEsZSx0KT0+e2xldHtUeXBlZElucHV0Om4sVFlQRV9OVU1CRVI6aX09dDtjb25zdCByPWUuZXZhbHVhdGVPbmNlKCJ7fSIpLG89ZS5kZXNjZW5kSW5wdXQoQS5uYW1lKS5hc1N0cmluZygpO3JldHVybiBuZXcgbigiIi5jb25jYXQociwiWyIpLmNvbmNhdChvLCJdPy53aWR0aCA/PyAwIiksaSl9LGdldEhlaWdodE9mUHJlbG9hZGVkOihBLGUsdCk9PntsZXR7VHlwZWRJbnB1dDpuLFRZUEVfTlVNQkVSOml9PXQ7Y29uc3Qgcj1lLmV2YWx1YXRlT25jZSgie30iKSxvPWUuZGVzY2VuZElucHV0KEEubmFtZSkuYXNTdHJpbmcoKTtyZXR1cm4gbmV3IG4oIiIuY29uY2F0KHIsIlsiKS5jb25jYXQobywiXT8uaGVpZ2h0ID8/IDAiKSxpKX0sZHJhd1VyaUltYWdlOihBLGUpPT57Y29uc3QgdD1lLmV2YWx1YXRlT25jZSgie30iKSxuPWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLGk9ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KG4sIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxyPWUuZGVzY2VuZElucHV0KEEuVVJJKS5hc1Vua25vd24oKSxvPWUuZGVzY2VuZElucHV0KEEuWCkuYXNOdW1iZXIoKSxzPWUuZGVzY2VuZElucHV0KEEuWSkuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KGksIi5kcmF3SW1hZ2UoIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCJbIikuY29uY2F0KHIsIl0iKSxlLnNvdXJjZSs9Ij8gIi5jb25jYXQodCwiWyIpLmNvbmNhdChyLCJdIiksZS5zb3VyY2UrPSI6IHlpZWxkKiB3YWl0UHJvbWlzZShyZXNvbHZlSW1hZ2VVUkwoIi5jb25jYXQociwiKSkiKSxlLnNvdXJjZSs9IiwgIi5jb25jYXQobywiLCAiKS5jb25jYXQocywiKTtcbiIpLGUuc291cmNlKz0iIi5jb25jYXQobiwiLnVwZGF0ZUNhbnZhc0NvbnRlbnRSZW5kZXJzKCk7XG4iKX0sZHJhd1VyaUltYWdlV0hSOihBLGUpPT57Y29uc3QgdD1lLmV2YWx1YXRlT25jZSgie30iKSxuPWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLGk9ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KG4sIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxyPWUuZGVzY2VuZElucHV0KEEuVVJJKS5hc1Vua25vd24oKSxvPWUuZGVzY2VuZElucHV0KEEuWCkuYXNOdW1iZXIoKSxzPWUuZGVzY2VuZElucHV0KEEuWSkuYXNOdW1iZXIoKSxhPWUuZGVzY2VuZElucHV0KEEuV0lEVEgpLmFzTnVtYmVyKCksQj1lLmRlc2NlbmRJbnB1dChBLkhFSUdIVCkuYXNOdW1iZXIoKSxjPWUuZGVzY2VuZElucHV0KEEuUk9UQVRFKS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQoaSwiLmRyYXdJbWFnZSgiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIlsiKS5jb25jYXQociwiXSA/ICIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiWyIpLmNvbmNhdChyLCJdIDogIiksZS5zb3VyY2UrPSJ5aWVsZCogd2FpdFByb21pc2UocmVzb2x2ZUltYWdlVVJMKCIuY29uY2F0KHIsIikpIiksZS5zb3VyY2UrPSIsICIuY29uY2F0KG8sIiwgIikuY29uY2F0KHMsIiwgIikuY29uY2F0KGEsIiwgIikuY29uY2F0KEIsIiwgIikuY29uY2F0KGMsIik7XG4iKSxlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi51cGRhdGVDYW52YXNDb250ZW50UmVuZGVycygpO1xuIil9LGRyYXdVcmlJbWFnZVdIQ1gxWTFYMlkyUjooQSxlKT0+e2NvbnN0IHQ9ZS5ldmFsdWF0ZU9uY2UoInt9Iiksbj1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxpPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdChuLCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSkscj1lLmRlc2NlbmRJbnB1dChBLlVSSSkuYXNVbmtub3duKCksbz1lLmRlc2NlbmRJbnB1dChBLlgpLmFzTnVtYmVyKCkscz1lLmRlc2NlbmRJbnB1dChBLlkpLmFzTnVtYmVyKCksYT1lLmRlc2NlbmRJbnB1dChBLldJRFRIKS5hc051bWJlcigpLEI9ZS5kZXNjZW5kSW5wdXQoQS5IRUlHSFQpLmFzTnVtYmVyKCksYz1lLmRlc2NlbmRJbnB1dChBLlJPVEFURSkuYXNOdW1iZXIoKSxnPWUuZGVzY2VuZElucHV0KEEuQ1JPUFgpLmFzTnVtYmVyKCksRT1lLmRlc2NlbmRJbnB1dChBLkNST1BZKS5hc051bWJlcigpLFE9ZS5kZXNjZW5kSW5wdXQoQS5DUk9QVykuYXNOdW1iZXIoKSx1PWUuZGVzY2VuZElucHV0KEEuQ1JPUEgpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChpLCIuZHJhd0ltYWdlKCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiWyIpLmNvbmNhdChyLCJdID8gIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCJbIikuY29uY2F0KHIsIl0gOiAiKSxlLnNvdXJjZSs9InlpZWxkKiB3YWl0UHJvbWlzZShyZXNvbHZlSW1hZ2VVUkwoIi5jb25jYXQociwiKSkiKSxlLnNvdXJjZSs9IiwgIi5jb25jYXQobywiLCAiKS5jb25jYXQocywiLCAiKS5jb25jYXQoYSwiLCAiKS5jb25jYXQoQiwiLCAiKS5jb25jYXQoYywiLCAiKSxlLnNvdXJjZSs9IiIuY29uY2F0KGcsIiwgIikuY29uY2F0KEUsIiwgIikuY29uY2F0KFEsIiwgIikuY29uY2F0KHUsIik7XG4iKSxlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi51cGRhdGVDYW52YXNDb250ZW50UmVuZGVycygpO1xuIil9LGdldFdpZHRoT2ZDYW52YXM6KEEsZSx0KT0+e2xldHtUWVBFX05VTUJFUjpuLFR5cGVkSW5wdXQ6aX09dDtjb25zdCByPWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpO3JldHVybiBuZXcgaSgiIi5jb25jYXQociwiLmNhbnZhcy53aWR0aCIpLG4pfSxnZXRIZWlnaHRPZkNhbnZhczooQSxlLHQpPT57bGV0e1RZUEVfTlVNQkVSOm4sVHlwZWRJbnB1dDppfT10O2NvbnN0IHI9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyk7cmV0dXJuIG5ldyBpKCIiLmNvbmNhdChyLCIuY2FudmFzLmhlaWdodCIpLG4pfSxiZWdpblBhdGg6KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5iZWdpblBhdGgoKTtcbiIpfSxtb3ZlVG86KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxpPWUuZGVzY2VuZElucHV0KEEueCkuYXNOdW1iZXIoKSxyPWUuZGVzY2VuZElucHV0KEEueSkuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5tb3ZlVG8oIikuY29uY2F0KGksIiwgIikuY29uY2F0KHIsIik7XG4iKX0sbGluZVRvOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLngpLmFzTnVtYmVyKCkscj1lLmRlc2NlbmRJbnB1dChBLnkpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIubGluZVRvKCIpLmNvbmNhdChpLCIsICIpLmNvbmNhdChyLCIpO1xuIil9LGFyY1RvOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLngpLmFzTnVtYmVyKCkscj1lLmRlc2NlbmRJbnB1dChBLnkpLmFzTnVtYmVyKCksbz1lLmRlc2NlbmRJbnB1dChBLmNvbnRyb2xQb2ludHMpLmFzVW5rbm93bigpLHM9ZS5kZXNjZW5kSW5wdXQoQS5yYWRpdXMpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuYXJjVG8oIikuY29uY2F0KGksIiwgIikuY29uY2F0KHIsIiwgLi4uIikuY29uY2F0KG8sIiwgIikuY29uY2F0KHMsIik7XG4iKX0sYWRkUmVjdDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLHI9ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS53aWR0aCkuYXNOdW1iZXIoKSxzPWUuZGVzY2VuZElucHV0KEEuaGVpZ2h0KS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnJlY3QoIikuY29uY2F0KGksIiwgIikuY29uY2F0KHIsIiwgIikuY29uY2F0KG8sIiwgIikuY29uY2F0KHMsIik7XG4iKX0sYWRkRWxsaXBzZTooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLHI9ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS53aWR0aCkuYXNOdW1iZXIoKSxzPWUuZGVzY2VuZElucHV0KEEuaGVpZ2h0KS5hc051bWJlcigpLGE9ZS5kZXNjZW5kSW5wdXQoQS5kaXIpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuZWxsaXBzZSgiKS5jb25jYXQoaSwiLCAiKS5jb25jYXQociwiLCAiKS5jb25jYXQobywiLCAiKS5jb25jYXQocyksZS5zb3VyY2UrPSIsICgiLmNvbmNhdChhLCIgLSA5MCkgKiBNYXRoLlBJIC8gMTgwLCAwLCAyICogTWF0aC5QSSk7XG4iKX0sYWRkRWxsaXBzZVN0YXJ0U3RvcDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLHI9ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpLG89ZS5kZXNjZW5kSW5wdXQoQS53aWR0aCkuYXNOdW1iZXIoKSxzPWUuZGVzY2VuZElucHV0KEEuaGVpZ2h0KS5hc051bWJlcigpLGE9ZS5kZXNjZW5kSW5wdXQoQS5kaXIpLmFzTnVtYmVyKCksQj1lLmRlc2NlbmRJbnB1dChBLnN0YXJ0KS5hc051bWJlcigpLGM9ZS5kZXNjZW5kSW5wdXQoQS5lbmQpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuZWxsaXBzZSgiKS5jb25jYXQoaSwiLCAiKS5jb25jYXQociwiLCAiKS5jb25jYXQobywiLCAiKS5jb25jYXQocywiLCAiKSxlLnNvdXJjZSs9IigiLmNvbmNhdChhLCIgLSA5MCkgKiBNYXRoLlBJIC8gMTgwLCAoIikuY29uY2F0KEIsIiAtIDkwKSAqIE1hdGguUEkgLyAxODAsICgiKS5jb25jYXQoYywiIC0gOTApICogTWF0aC5QSSAvIDE4MCk7XG4iKX0sY2xvc2VQYXRoOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSk7ZS5zb291cmNlKz0iIi5jb25jYXQobiwiLmNsb3NlUGF0aCgpIil9LHN0cm9rZTooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnN0cm9rZSgpO1xuIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIudXBkYXRlQ2FudmFzQ29udGVudFJlbmRlcnMoKTtcbiIpfSxmaWxsOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuZmlsbCgpO1xuIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIudXBkYXRlQ2FudmFzQ29udGVudFJlbmRlcnMoKTtcbiIpfSxzYXZlVHJhbnNmb3JtOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuc2F2ZSgpO1xuIil9LHJlc3RvcmVUcmFuc2Zvcm06KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5yZXN0b3JlKCk7XG4iKX0sdHVyblJvdGF0aW9uTGVmdDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS5kZWdyZWVzKS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnJvdGF0ZSgiKSxlLnNvdXJjZSs9IigiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnJvdGF0aW9uIC09ICIpLmNvbmNhdChpLCIpICogTWF0aC5QSSAvIDE4MCIpLGUuc291cmNlKz0iKTtcbiJ9LHR1cm5Sb3RhdGlvblJpZ2h0OihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLmRlZ3JlZXMpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIucm90YXRlKCIpLGUuc291cmNlKz0iKCIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYucm90YXRpb24gKz0gIikuY29uY2F0KGksIikgKiBNYXRoLlBJIC8gMTgwIiksZS5zb3VyY2UrPSIpO1xuIn0sc2V0Um90YXRpb246KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxpPWUuZGVzY2VuZElucHV0KEEuZGVncmVlcykuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5yb3RhdGUoIiksZS5zb3VyY2UrPSIoKCIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYucm90YXRpb24gPSAiKS5jb25jYXQoaSwiKSAtIDkwKSAqIE1hdGguUEkgLyAxODAiKSxlLnNvdXJjZSs9Iik7XG4ifSxzZXRUcmFuc2xhdGVYWTooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpLHI9ZS5kZXNjZW5kSW5wdXQoQS55KS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnRyYW5zbGF0ZSgiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYueCA9ICIpLmNvbmNhdChpLCIsIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnkgPSAiKS5jb25jYXQociksZS5zb3VyY2UrPSIpO1xuIn0sY2hhbmdlVHJhbnNsYXRlWFk6KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxpPWUuZGVzY2VuZElucHV0KEEueCkuYXNOdW1iZXIoKSxyPWUuZGVzY2VuZElucHV0KEEueSkuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi50cmFuc2xhdGUoIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnggKz0gIikuY29uY2F0KGksIiwiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYueSArPSAiKS5jb25jYXQociksZS5zb3VyY2UrPSIpO1xuIn0sY2hhbmdlVHJhbnNsYXRlWDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnRyYW5zbGF0ZSgiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYueCArPSAiKS5jb25jYXQoaSwiLCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi55IiksZS5zb3VyY2UrPSIpO1xuIn0sc2V0VHJhbnNsYXRlWDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS54KS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnRyYW5zbGF0ZSgiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYueCA9ICIpLmNvbmNhdChpLCIsIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnkiKSxlLnNvdXJjZSs9Iik7XG4ifSxjaGFuZ2VUcmFuc2xhdGVZOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLnkpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIudHJhbnNsYXRlKCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi54LCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi55ICs9ICIpLmNvbmNhdChpKSxlLnNvdXJjZSs9Iik7XG4ifSxzZXRUcmFuc2xhdGVZOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLnkpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIudHJhbnNsYXRlKCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi54LCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi55ID0gIikuY29uY2F0KGkpLGUuc291cmNlKz0iKTtcbiJ9LGNoYW5nZVNjYWxlWFk6KEEsZSk9Pntjb25zdCB0PWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG49ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHQsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKSxpPWUuZGVzY2VuZElucHV0KEEuc2NhbGUpLmFzTnVtYmVyKCk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIuc2NhbGUoIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnNjYWxlWCArPSAoIikuY29uY2F0KGksIiAvIDEwMCksIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnNjYWxlWSArPSAoIikuY29uY2F0KGksIiAvIDEwMCkiKSxlLnNvdXJjZSs9Iik7XG4ifSxzZXRTY2FsZVhZOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLnNjYWxlKS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnNjYWxlKCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi5zY2FsZVggPSAoIikuY29uY2F0KGksIiAvIDEwMCksIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnNjYWxlWSA9ICgiKS5jb25jYXQoaSwiIC8gMTAwKSIpLGUuc291cmNlKz0iKTtcbiJ9LGNoYW5nZVNjYWxlWDooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS5zY2FsZSkuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5zY2FsZSgiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYuc2NhbGVYICs9ICgiKS5jb25jYXQoaSwiIC8gMTAwKSwiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYuc2NhbGVZIiksZS5zb3VyY2UrPSIpO1xuIn0sc2V0U2NhbGVYOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLnNjYWxlKS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnNjYWxlKCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi5zY2FsZVggPSAoIikuY29uY2F0KGksIiAvIDEwMCksIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnNjYWxlWSIpLGUuc291cmNlKz0iKTtcbiJ9LGNoYW5nZVNjYWxlWTooQSxlKT0+e2NvbnN0IHQ9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyksbj1lLmV2YWx1YXRlT25jZSgiIi5jb25jYXQodCwiLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIikpLGk9ZS5kZXNjZW5kSW5wdXQoQS5zY2FsZSkuYXNOdW1iZXIoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5zY2FsZSgiKSxlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5fY2FtZXJhU3R1ZmYuc2NhbGVYLCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi5zY2FsZVkgKz0gKCIpLmNvbmNhdChpLCIgLyAxMDApIiksZS5zb3VyY2UrPSIpO1xuIn0sc2V0U2NhbGVZOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLnNjYWxlKS5hc051bWJlcigpO2Uuc291cmNlKz0iIi5jb25jYXQobiwiLnNjYWxlKCIpLGUuc291cmNlKz0iIi5jb25jYXQodCwiLl9jYW1lcmFTdHVmZi5zY2FsZVgsIiksZS5zb3VyY2UrPSIiLmNvbmNhdCh0LCIuX2NhbWVyYVN0dWZmLnNjYWxlWSA9ICgiKS5jb25jYXQoaSwiIC8gMTAwKSIpLGUuc291cmNlKz0iKTtcbiJ9LHJlc2V0VHJhbnNmb3JtOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSk7ZS5zb3VyY2UrPSIiLmNvbmNhdChuLCIucmVzZXRUcmFuc2Zvcm0oKTtcbiIpfSxsb2FkVHJhbnNmb3JtOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxuPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdCh0LCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksaT1lLmRlc2NlbmRJbnB1dChBLnRyYW5zZm9ybSkuYXNTdHJpbmcoKTtlLnNvdXJjZSs9IiIuY29uY2F0KG4sIi5zZXRUcmFuc2Zvcm0oIiksZS5zb3VyY2UrPSJwYXJzZUpTT05TYWZlKCIuY29uY2F0KGksIikiKSxlLnNvdXJjZSs9Iik7XG4ifSxnZXRUcmFuc2Zvcm06KEEsZSx0KT0+e2xldHtUeXBlZElucHV0Om4sVFlQRV9TVFJJTkc6aX09dDtjb25zdCByPWUucmVmZXJlbmNlVmFyaWFibGUoQS5jYW52YXMpLG89ZS5ldmFsdWF0ZU9uY2UoIiIuY29uY2F0KHIsIi5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSIpKTtsZXQgcz0iKCgpID0+IHsiO3JldHVybiBzKz0iY29uc3QgdHJhbnNmb3JtID0gIi5jb25jYXQobywiLmdldFRyYW5zZm9ybSgpOyAiKSxzKz0icmV0dXJuIEpTT04uc3RyaW5naWZ5KFsiLHMrPSJ0cmFuc2Zvcm0uYSwgdHJhbnNmb3JtLmIsIHRyYW5zZm9ybS5jLCAiLHMrPSJ0cmFuc2Zvcm0uZCwgdHJhbnNmb3JtLmUsIHRyYW5zZm9ybS5mIixzKz0iXSl9KSgpIixuZXcgbihzLGkpfSxwdXRPbnRvU3ByaXRlOihBLGUpPT57Y29uc3QgdD1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKTtlLnNvdXJjZSs9IiIuY29uY2F0KHQsIi5hcHBseUNhbnZhc1RvVGFyZ2V0KHRhcmdldCk7XG4iKX0sZ2V0RGF0YVVSSTooQSxlLHQpPT57bGV0e1R5cGVkSW5wdXQ6bixUWVBFX1NUUklORzppfT10O2NvbnN0IHI9ZS5yZWZlcmVuY2VWYXJpYWJsZShBLmNhbnZhcyk7cmV0dXJuIG5ldyBuKCIiLmNvbmNhdChyLCIudG9TdHJpbmcoKSIpLGkpfSxnZXREcmF3bldpZHRoT2ZUZXh0OihBLGUsdCk9PntsZXR7VHlwZWRJbnB1dDpuLFRZUEVfTlVNQkVSOml9PXQ7Y29uc3Qgcj1lLnJlZmVyZW5jZVZhcmlhYmxlKEEuY2FudmFzKSxvPWUuZGVzY2VuZElucHV0KEEudGV4dCkuYXNTdHJpbmcoKSxzPWUuZXZhbHVhdGVPbmNlKCIiLmNvbmNhdChyLCIuY2FudmFzLmdldENvbnRleHQoJzJkJykiKSksYT1lLmV2YWx1YXRlT25jZSgie30iKTtsZXQgQj0iKHRleHQgPT4geyI7c3dpdGNoKEIrPSJsZXQgdGV4dE1lYXN1cmUgPSAiLmNvbmNhdChhLCJbdGV4dCArICIpLmNvbmNhdChzLCIuZm9udF0iKSxCKz0iaWYgKCF0ZXh0TWVhc3VyZSkgeyIsQis9InRleHRNZWFzdXJlID0gIi5jb25jYXQocywiLm1lYXN1cmVUZXh0KHRleHQpO1xuIiksQis9IiIuY29uY2F0KGEsIlt0ZXh0ICsgIikuY29uY2F0KHMsIi5mb250XSA9IHRleHRNZWFzdXJlO1xuIiksQis9In1cbiIsQis9InJldHVybiB0ZXh0TWVhc3VyZS4iLEEucHJvcCl7Y2FzZSJoZWlnaHQiOkIrPSJhY3R1YWxCb3VuZGluZ0JveEFzY2VudCArIHRleHRNZWFzdXJlLmFjdHVhbEJvdW5kaW5nQm94RGVzY2VudCI7YnJlYWs7ZGVmYXVsdDpCKz1BLnByb3B9cmV0dXJuIEIrPSI7fSkoIi5jb25jYXQobywiKSIpLG5ldyBuKEIsaSl9fX19Z2V0T3JDcmVhdGVWYXJpYWJsZShBLGUsdCl7dmFyIG47Y29uc3QgaT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKSxyPW51bGwhPT0obj1BLnZhcmlhYmxlc1tlXSkmJnZvaWQgMCE9PW4/bjppLnZhcmlhYmxlc1tlXTtyZXR1cm4gcnx8QS5jcmVhdGVWYXJpYWJsZShlLHQpfWNhbnZhc0dldHRlcihBLGUpe3JldHVybiB0aGlzLmdldE9yQ3JlYXRlVmFyaWFibGUoZS50YXJnZXQsQS5jYW52YXMuaWQsQS5jYW52YXMubmFtZSl9Z2V0UHJvcGVydHkoQSxlKXtyZXR1cm4gdGhpcy5nZXRPckNyZWF0ZVZhcmlhYmxlKGUudGFyZ2V0LEEuY2FudmFzLmlkLEEuY2FudmFzLm5hbWUpLmNhbnZhcy5nZXRDb250ZXh0KCIyZCIpW0EucHJvcF19Z2V0RGF0YVVSSShBLGUpe3JldHVybiB0aGlzLmdldE9yQ3JlYXRlVmFyaWFibGUoZS50YXJnZXQsQS5jYW52YXMuaWQsQS5jYW52YXMubmFtZSkudG9TdHJpbmcoKX1nZXRXaWR0aE9mUHJlbG9hZGVkKEEpe2xldHtuYW1lOmV9PUE7cmV0dXJuIHRoaXMucHJlbG9hZGVkSW1hZ2VzLmhhc093blByb3BlcnR5KGUpP3RoaXMucHJlbG9hZGVkSW1hZ2VzW2VdLndpZHRoOjB9Z2V0SGVpZ2h0T2ZQcmVsb2FkZWQoQSl7bGV0e25hbWU6ZX09QTtyZXR1cm4gdGhpcy5wcmVsb2FkZWRJbWFnZXMuaGFzT3duUHJvcGVydHkoZSk/dGhpcy5wcmVsb2FkZWRJbWFnZXNbZV0uaGVpZ2h0OjB9Z2V0V2lkdGhPZkNhbnZhcyhBLGUpe2xldHtjYW52YXM6dH09QTtyZXR1cm4gdGhpcy5nZXRPckNyZWF0ZVZhcmlhYmxlKGUudGFyZ2V0LHQuaWQsdC5uYW1lKS5zaXplWzBdfWdldEhlaWdodE9mQ2FudmFzKEEsZSl7bGV0e2NhbnZhczp0fT1BO3JldHVybiB0aGlzLmdldE9yQ3JlYXRlVmFyaWFibGUoZS50YXJnZXQsdC5pZCx0Lm5hbWUpLnNpemVbMV19fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgyNCksaT10KDkpLHI9dCgxNik7Y2xhc3Mgb3tjb25zdHJ1Y3RvcihBLGUsdCl7bGV0IG49YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOlsxLDFdO3RoaXMuaWQ9bnVsbCE9ZT9lOmkoKSx0aGlzLm5hbWU9dCx0aGlzLnR5cGU9ImNhbnZhcyIsdGhpcy5jdXN0b21JZD1vLmN1c3RvbUlkLHRoaXMucnVudGltZT1BLHRoaXMucmVuZGVyZXI9QS5yZW5kZXJlcix0aGlzLmNhbnZhcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKSx0aGlzLl9jb3N0dW1lRHJhd2VyPXRoaXMucmVuZGVyZXIuY3JlYXRlRHJhd2FibGUoci5TUFJJVEVfTEFZRVIpLHRoaXMuX3NraW5JZD10aGlzLnJlbmRlcmVyLmNyZWF0ZUJpdG1hcFNraW4odGhpcy5jYW52YXMsMSksdGhpcy5fbW9uaXRvclVwVG9EYXRlPSExLHRoaXMuX2NhY2hlZE1vbkNvbnRlbnQ9W251bGwsMF0sdGhpcy5fY2FtZXJhU3R1ZmY9e3g6MCx5OjAscm90YXRpb246MCxzY2FsZVg6MSxzY2FsZVk6MX0sQXJyYXkuaXNBcnJheShuKT90aGlzLnNpemU9bjpuJiZ0aGlzLmxvYWRJbWFnZShuKX1zZXJpYWxpemUoQSl7Y29uc3QgZT1udWxsIT1BP0E6dGhpcztyZXR1cm5bZS5pZCxlLm5hbWUsZS5jYW52YXMudG9EYXRhVVJMKCldfWdldFNuYXBzaG90KCl7Y29uc3QgQT1uZXcgSW1hZ2U7cmV0dXJuIEEuc3JjPXRoaXMuY2FudmFzLnRvRGF0YVVSTCgpLEF9dG9SZXBvcnRlckNvbnRlbnQoKXtyZXR1cm4gdGhpcy5jYW52YXN9dG9Nb25pdG9yQ29udGVudCgpe3JldHVybiB0aGlzLl9tb25pdG9yVXBUb0RhdGV8fCh0aGlzLl9jYWNoZWRNb25Db250ZW50PXRoaXMuZ2V0U25hcHNob3QoKSx0aGlzLl9tb25pdG9yVXBUb0RhdGU9ITApLHRoaXMuX2NhY2hlZE1vbkNvbnRlbnR9dG9MaXN0RWRpdG9yKCl7cmV0dXJuIHRoaXMudG9TdHJpbmcoKX1mcm9tTGlzdEVkaXRvcihBKXtyZXR1cm4gdGhpcy50b1N0cmluZygpIT09QSYmdGhpcy5sb2FkSW1hZ2UoQSksdGhpc310b1N0cmluZygpe3JldHVybiB0aGlzLmNhbnZhcy50b0RhdGFVUkwoKX10b1hNTChBKXtyZXR1cm4nPHZhcmlhYmxlIHR5cGU9ImNhbnZhcyIgaWQ9IicuY29uY2F0KHRoaXMuaWQsJyIgaXNsb2NhbD0iJykuY29uY2F0KEEsJyIgaXNjbG91ZD0iZmFsc2UiPicpLmNvbmNhdChuKHRoaXMubmFtZSksIjwvdmFyaWFibGU+Iil9dG9Ub29sYm94RGVmYXVsdChBKXtyZXR1cm4nPGZpZWxkIG5hbWU9IicuY29uY2F0KEEsJyIgaWQ9IicpLmNvbmNhdCh0aGlzLmlkLCciIHZhcmlhYmxldHlwZT0iY2FudmFzIj4nKS5jb25jYXQobih0aGlzLm5hbWUpLCI8L2ZpZWxkPiIpfWdldCBzaXplKCl7cmV0dXJuW3RoaXMuY2FudmFzLndpZHRoLHRoaXMuY2FudmFzLmhlaWdodF19c2V0IHNpemUoQSl7dGhpcy5jYW52YXMud2lkdGg9QVswXSx0aGlzLmNhbnZhcy5oZWlnaHQ9QVsxXX1hc3luYyBsb2FkSW1hZ2UoQSl7QSBpbnN0YW5jZW9mIEltYWdlJiYhQS5jb21wbGV0ZSYmYXdhaXQgbmV3IFByb21pc2UoZT0+e0Eub25sb2FkPWUsQS5vbmVycm9yPWV9KSwic3RyaW5nIj09dHlwZW9mIEEmJmF3YWl0IG5ldyBQcm9taXNlKGU9Pntjb25zdCB0PUE7KEE9bmV3IEltYWdlKS5vbmxvYWQ9ZSxBLm9uZXJyb3I9ZSxBLnNyYz10fSksdGhpcy5jYW52YXMud2lkdGg9QS53aWR0aCx0aGlzLmNhbnZhcy5oZWlnaHQ9QS5oZWlnaHQ7dGhpcy5jYW52YXMuZ2V0Q29udGV4dCgiMmQiKS5kcmF3SW1hZ2UoQSwwLDApLHRoaXMudXBkYXRlQ2FudmFzQ29udGVudFJlbmRlcnMoKX1zdGFtcERyYXdhYmxlKEEsZSx0KXtpZighdGhpcy5yZW5kZXJlci5fYWxsRHJhd2FibGVzW0FdKXJldHVybjtjb25zdCBuPXRoaXMucmVuZGVyZXIuZXh0cmFjdERyYXdhYmxlU2NyZWVuU3BhY2UoQSk7aWYoIW4pcmV0dXJuO3RoaXMuY2FudmFzLmdldENvbnRleHQoIjJkIikucHV0SW1hZ2VEYXRhKG4uaW1hZ2VEYXRhLGUsdCl9c3RhbXBDb3N0dW1lKEEsZSx0LG4pe2NvbnN0IGk9Il9fY3VycmVudF9fIiE9PWU/KCgpPT57Y29uc3QgdD1BLmdldENvc3R1bWVJbmRleEJ5TmFtZShlKSxuPUEuZ2V0Q29zdHVtZXMoKVt0XTtyZXR1cm4gdGhpcy5yZW5kZXJlci5fYWxsU2tpbnNbbi5za2luSWRdfSkoKTp0aGlzLnJlbmRlcmVyLl9hbGxEcmF3YWJsZXNbQS5kcmF3YWJsZUlEXS5za2luLHI9dGhpcy5jYW52YXMuZ2V0Q29udGV4dCgiMmQiKTtpLl9zdmdJbWFnZT9yLmRyYXdJbWFnZShpLl9zdmdJbWFnZSx0LG4pOmkuX2NhbnZhcz9yLmRyYXdJbWFnZShpLl9jYW52YXMsdCxuKToodGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZVNraW5JZCh0aGlzLl9jb3N0dW1lRHJhd2VyLGkuaWQpLHRoaXMuc3RhbXBEcmF3YWJsZSh0aGlzLl9jb3N0dW1lRHJhd2VyKSl9dXBkYXRlQ2FudmFzQ29udGVudFJlbmRlcnMoKXt0aGlzLl9tb25pdG9yVXBUb0RhdGU9ITE7Y29uc3QgQT1NYXRoLm1heCh0aGlzLmNhbnZhcy53aWR0aCwxKSxlPU1hdGgubWF4KHRoaXMuY2FudmFzLmhlaWdodCwxKSx0PXRoaXMuY2FudmFzLmdldENvbnRleHQoIjJkIiksbj10aGlzLnJlbmRlcmVyLl9hbGxTa2luc1t0aGlzLl9za2luSWRdLGk9dC5nZXRJbWFnZURhdGEoMCwwLEEsZSk7bi5fc2V0VGV4dHVyZShpKX1hcHBseUNhbnZhc1RvVGFyZ2V0KEEpe3RoaXMucmVuZGVyZXIudXBkYXRlRHJhd2FibGVTa2luSWQoQS5kcmF3YWJsZUlELHRoaXMuX3NraW5JZCksdGhpcy5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX19dmFyIHMsYSxCO3M9byxCPSJjYW52YXNEYXRhIiwoYT1mdW5jdGlvbihBKXt2YXIgZT1mdW5jdGlvbihBLGUpe2lmKCJvYmplY3QiIT10eXBlb2YgQXx8IUEpcmV0dXJuIEE7dmFyIHQ9QVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMCE9PXQpe3ZhciBuPXQuY2FsbChBLGV8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPXR5cGVvZiBuKXJldHVybiBuO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09ZT9TdHJpbmc6TnVtYmVyKShBKX0oQSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiBlP2U6ZSsiIn0oYT0iY3VzdG9tSWQiKSlpbiBzP09iamVjdC5kZWZpbmVQcm9wZXJ0eShzLGEse3ZhbHVlOkIsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTpzW2FdPUIsQS5leHBvcnRzPW99LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9dCgyKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0VGhyZWFkVmFycyhBKXtyZXR1cm4gQS50ZW1wVmFyc3x8KEEudGVtcFZhcnM9T2JqZWN0LmNyZWF0ZShudWxsKSksQS50ZW1wVmFyc31nZXRJbmZvKCl7cmV0dXJue2lkOiJ0ZW1wVmFycyIsbmFtZToiVGVtcG9yYXJ5IFZhcmlhYmxlcyIsY29sb3IxOiIjMDA2OWMyIixjb2xvcjI6IiMwMDYwQjQiLGNvbG9yMzoiIzAwNjBCNCIsYmxvY2tzOlt7b3Bjb2RlOiJzZXRWYXJpYWJsZSIsdGV4dDoic2V0IFtuYW1lXSB0byBbdmFsdWVdIixhcmd1bWVudHM6e25hbWU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJWYXJpYWJsZSJ9LHZhbHVlOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVmFsdWUifX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiY2hhbmdlVmFyaWFibGUiLHRleHQ6ImNoYW5nZSBbbmFtZV0gYnkgW3ZhbHVlXSIsYXJndW1lbnRzOntuYW1lOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVmFyaWFibGUifSx2YWx1ZTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEifX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiZ2V0VmFyaWFibGUiLHRleHQ6ImdldCBbbmFtZV0iLGFyZ3VtZW50czp7bmFtZTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IlZhcmlhYmxlIn19LGFsbG93RHJvcEFueXdoZXJlOiEwLGJsb2NrVHlwZTpuLlJFUE9SVEVSfSwiLS0tIix7b3Bjb2RlOiJkZWxldGVWYXJpYWJsZSIsdGV4dDoiZGVsZXRlIFtuYW1lXSIsYXJndW1lbnRzOntuYW1lOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVmFyaWFibGUifX0sYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToiZGVsZXRlQWxsVmFyaWFibGVzIix0ZXh0OiJkZWxldGUgYWxsIHZhcmlhYmxlcyIsYmxvY2tUeXBlOm4uQ09NTUFORH0se29wY29kZToidmFyaWFibGVFeGlzdHMiLHRleHQ6InZhcmlhYmxlIFtuYW1lXSBleGlzdHM/Iixhcmd1bWVudHM6e25hbWU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJWYXJpYWJsZSJ9fSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6bi5CT09MRUFOfSx7b3Bjb2RlOiJhbGxWYXJpYWJsZXMiLHRleHQ6ImN1cnJlbnQgdmFyaWFibGVzIixhcmd1bWVudHM6e25hbWU6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJWYXJpYWJsZSJ9fSxkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6bi5SRVBPUlRFUn0sIi0tLSIse29wY29kZToiZm9yRWFjaFRlbXBWYXIiLHRleHQ6ImZvciBlYWNoIFtOQU1FXSBpbiBbUkVQRUFUXSIsYnJhbmNoQ291bnQ6MSxibG9ja1R5cGU6bi5MT09QLGFyZ3VtZW50czp7TkFNRTp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IlZhcmlhYmxlIn0sUkVQRUFUOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMH19fV19fWdldENvbXBpbGVJbmZvT2xkKCl7cmV0dXJue2lyOntmb3JFYWNoVGVtcFZhcjooQSxlKT0+KEEuYW5hbHl6ZUxvb3AoKSx7a2luZDoic3RhY2siLG5hbWU6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIk5BTUUiKSxyZXBlYXQ6QS5kZXNjZW5kSW5wdXRPZkJsb2NrKGUsIlJFUEVBVCIpLGRvOkEuZGVzY2VuZFN1YnN0YWNrKGUsIlNVQlNUQUNLIil9KX0sanM6e2ZvckVhY2hUZW1wVmFyOihBLGUsdCk9Pntjb25zdCBuPWUubG9jYWxWYXJpYWJsZXMubmV4dCgpLGk9ZS5sb2NhbFZhcmlhYmxlcy5uZXh0KCkscj1lLmRlc2NlbmRJbnB1dChBLm5hbWUpLmFzU3RyaW5nKCksbz0iKCd0aHJlYWRWYXJfJyArICIuY29uY2F0KHIsIikiKTtlLnNvdXJjZSs9InZhciAiLmNvbmNhdChuLCIgPSAwOyAiKSxlLnNvdXJjZSs9InZhciAiLmNvbmNhdChpLCIgPSAiKS5jb25jYXQobywiOyAiKSxlLnNvdXJjZSs9IndoaWxlICgiLmNvbmNhdChuLCIgPCAiKS5jb25jYXQoZS5kZXNjZW5kSW5wdXQoQS5yZXBlYXQpLmFzTnVtYmVyKCksIikgeyAiKSxlLnNvdXJjZSs9IiIuY29uY2F0KG4sIisrOyAiKSxlLnNvdXJjZSs9ImlmICghdGhyZWFkLnRlbXBWYXJzKSB7ICIsZS5zb3VyY2UrPSJ0aHJlYWQudGVtcFZhcnMgPSB7fTsgIixlLnNvdXJjZSs9In1cbiIsZS5zb3VyY2UrPSJ0aHJlYWQudGVtcFZhcnNbIi5jb25jYXQoaSwiXSA9ICIpLmNvbmNhdChuLCI7XG4iKSxlLmRlc2NlbmRTdGFjayhBLmRvLG5ldyB0LkZyYW1lKCEwKSksZS55aWVsZExvb3AoKSxlLnNvdXJjZSs9In1cbiJ9fX19c2V0VmFyaWFibGUoQSxlKXt0aGlzLmdldFRocmVhZFZhcnMoZS50aHJlYWQpWyJ0aHJlYWRWYXJfIi5jb25jYXQoQS5uYW1lKV09QS52YWx1ZX1jaGFuZ2VWYXJpYWJsZShBLGUpe2NvbnN0IHQ9dGhpcy5nZXRUaHJlYWRWYXJzKGUudGhyZWFkKSxuPSJ0aHJlYWRWYXJfIi5jb25jYXQoQS5uYW1lKSxpPU51bWJlcih0W25dKSxyPWkrQS52YWx1ZTt0W25dPWk/cjpOdW1iZXIoQS52YWx1ZSl9Z2V0VmFyaWFibGUoQSxlKXtjb25zdCB0PXRoaXMuZ2V0VGhyZWFkVmFycyhlLnRocmVhZClbInRocmVhZFZhcl8iLmNvbmNhdChBLm5hbWUpXTtyZXR1cm4gdHx8IiJ9ZGVsZXRlVmFyaWFibGUoQSxlKXtjb25zdCB0PXRoaXMuZ2V0VGhyZWFkVmFycyhlLnRocmVhZCksbj0idGhyZWFkVmFyXyIuY29uY2F0KEEubmFtZSk7biBpbiB0JiZkZWxldGUgdFtuXX1kZWxldGVBbGxWYXJpYWJsZXMoQSxlKXtlLnRocmVhZC50ZW1wVmFycz1PYmplY3QuY3JlYXRlKG51bGwpfXZhcmlhYmxlRXhpc3RzKEEsZSl7Y29uc3QgdD10aGlzLmdldFRocmVhZFZhcnMoZS50aHJlYWQpO3JldHVybiJ0aHJlYWRWYXJfIi5jb25jYXQoQS5uYW1lKWluIHR9YWxsVmFyaWFibGVzKEEsZSl7Y29uc3QgdD10aGlzLmdldFRocmVhZFZhcnMoZS50aHJlYWQpLG49T2JqZWN0LmtleXModCkubWFwKEE9PkEucmVwbGFjZSgidGhyZWFkVmFyXyIsIiIpKTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkobil9Zm9yRWFjaFRlbXBWYXIoQSxlKXtjb25zdCB0PXIudG9OdW1iZXIoQS5SRVBFQVQpLG49ci50b1N0cmluZyhBLk5BTUUpO2lmKHZvaWQgMD09PWUuc3RhY2tGcmFtZS5sb29wQ291bnRlciYmKGUuc3RhY2tGcmFtZS5sb29wQ291bnRlcj10KSxlLnN0YWNrRnJhbWUubG9vcENvdW50ZXItLSxlLnN0YWNrRnJhbWUubG9vcENvdW50ZXI+PTApe2NvbnN0IEE9dC1lLnN0YWNrRnJhbWUubG9vcENvdW50ZXItMTt0aGlzLnNldFZhcmlhYmxlKHtuYW1lOm4sdmFsdWU6QSsxfSxlKSxlLnN0YXJ0QnJhbmNoKDEsITApfX19fSxmdW5jdGlvbihBLGUsdCl7ZnVuY3Rpb24gbihBLGUsdCl7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7dmFyIGU9ZnVuY3Rpb24oQSxlKXtpZigib2JqZWN0IiE9dHlwZW9mIEF8fCFBKXJldHVybiBBO3ZhciB0PUFbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT10KXt2YXIgbj10LmNhbGwoQSxlfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT10eXBlb2YgbilyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybigic3RyaW5nIj09PWU/U3RyaW5nOk51bWJlcikoQSl9KEEsInN0cmluZyIpO3JldHVybiJzeW1ib2wiPT10eXBlb2YgZT9lOmUrIiJ9KGUpKWluIEE/T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7dmFsdWU6dCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOkFbZV09dCxBfWNvbnN0IGk9dCgxKSxyPXQoMyksbz10KDgpLHt2YWxpZGF0ZUpTT046c309dCgxNCksYT10KDIpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXtuKHRoaXMsImRlYWZ1bHRIc3YiLCd7ImgiOiAzNjAsICJzIjogMSwgInYiOiAxfScpLG4odGhpcywiZGVhZnVsdFJnYiIsJ3siciI6IDI1NSwgImciOiAwLCAiYiI6IDB9Jyksbih0aGlzLCJkZWFmdWx0SGV4IiwiI2ZmMDAwMCIpLG4odGhpcywiZGVhZnVsdERlY2ltYWwiLCIxNjcxMTY4MCIpLHRoaXMucnVudGltZT1BfWdldEluZm8oKXtyZXR1cm57aWQ6ImNvbG9ycyIsbmFtZToiQ29sb3JzIixjb2xvcjE6IiNmZjRjNGMiLGNvbG9yMjoiI2U2NDQ0NCIsYmxvY2tzOlt7b3Bjb2RlOiJjb2xvclBpY2tlciIsdGV4dDoiW09VVFBVVF0gb2YgW0NPTE9SXSIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntPVVRQVVQ6e3R5cGU6ci5TVFJJTkcsbWVudToib3V0cHV0Q29sb3JUeXBlIn0sQ09MT1I6e3R5cGU6ci5DT0xPUn19LGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJkZWZhdWx0QmxhY2siLHRleHQ6ImJsYWNrIixkaXNhYmxlTW9uaXRvcjohMCxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiZGVmYXVsdFdoaXRlIix0ZXh0OiJ3aGl0ZSIsZGlzYWJsZU1vbml0b3I6ITAsYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtibG9ja1R5cGU6aS5MQUJFTCx0ZXh0OiJSR0IifSx7b3Bjb2RlOiJyZ2JUb0RlY2ltYWwiLHRleHQ6InJnYiBbY29sb3JdIHRvIGRlY2ltYWwiLGFyZ3VtZW50czp7Y29sb3I6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOnRoaXMuZGVhZnVsdFJnYn19LGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJyZ2JUb0hleCIsdGV4dDoicmdiIFtjb2xvcl0gdG8gaGV4Iixhcmd1bWVudHM6e2NvbG9yOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTp0aGlzLmRlYWZ1bHRSZ2J9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToicmdiVG9Ic3YiLHRleHQ6InJnYiBbY29sb3JdIHRvIGhzdiIsYXJndW1lbnRzOntjb2xvcjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6dGhpcy5kZWFmdWx0UmdifX0sYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtibG9ja1R5cGU6aS5MQUJFTCx0ZXh0OiJIZXgifSx7b3Bjb2RlOiJoZXhUb0RlY2ltYWwiLHRleHQ6ImhleCBbY29sb3JdIHRvIGRlY2ltYWwiLGFyZ3VtZW50czp7Y29sb3I6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOnRoaXMuZGVhZnVsdEhleH19LGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJoZXhUb1JnYiIsdGV4dDoiaGV4IFtjb2xvcl0gdG8gcmdiIixhcmd1bWVudHM6e2NvbG9yOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTp0aGlzLmRlYWZ1bHRIZXh9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiaGV4VG9Ic3YiLHRleHQ6ImhleCBbY29sb3JdIHRvIGhzdiIsYXJndW1lbnRzOntjb2xvcjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6dGhpcy5kZWFmdWx0SGV4fX0sYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtibG9ja1R5cGU6aS5MQUJFTCx0ZXh0OiJEZWNpbWFsIn0se29wY29kZToiZGVjaW1hbFRvSGV4Iix0ZXh0OiJkZWNpbWFsIFtjb2xvcl0gdG8gaGV4Iixhcmd1bWVudHM6e2NvbG9yOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTp0aGlzLmRlYWZ1bHREZWNpbWFsfX0sYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtvcGNvZGU6ImRlY2ltYWxUb1JnYiIsdGV4dDoiZGVjaW1hbCBbY29sb3JdIHRvIHJnYiIsYXJndW1lbnRzOntjb2xvcjp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6dGhpcy5kZWFmdWx0RGVjaW1hbH19LGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJkZWNpbWFsVG9Ic3YiLHRleHQ6ImRlY2ltYWwgW2NvbG9yXSB0byBoc3YiLGFyZ3VtZW50czp7Y29sb3I6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOnRoaXMuZGVhZnVsdERlY2ltYWx9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se2Jsb2NrVHlwZTppLkxBQkVMLHRleHQ6IkhTViJ9LHtvcGNvZGU6ImhzdlRvSGV4Iix0ZXh0OiJoc3YgW2NvbG9yXSB0byBoZXgiLGFyZ3VtZW50czp7Y29sb3I6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOnRoaXMuZGVhZnVsdEhzdn19LGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJoc3ZUb1JnYiIsdGV4dDoiaHN2IFtjb2xvcl0gdG8gcmdiIixhcmd1bWVudHM6e2NvbG9yOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTp0aGlzLmRlYWZ1bHRIc3Z9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToiaHN2VG9EZWNpbWFsIix0ZXh0OiJoc3YgW2NvbG9yXSB0byBkZWNpbWFsIixhcmd1bWVudHM6e2NvbG9yOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZTp0aGlzLmRlYWZ1bHRIc3Z9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0sIi0tLSIse2Jsb2NrVHlwZTppLkxBQkVMLHRleHQ6Ik90aGVyIn0se29wY29kZToiY3NiTWFrZXIiLHRleHQ6ImNvbG9yOiBbaF0gc2F0dXJhdGlvbjogW3NdIGJyaWdodG5lc3M6IFt2XSB0cmFuc3BhcmVuY3k6IFthXSIsYXJndW1lbnRzOntoOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiNTAifSxzOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiNTAifSx2Ont0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiNTAifSxhOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToiNTAifX0sYmxvY2tUeXBlOmkuUkVQT1JURVJ9LHtvcGNvZGU6Imhzdk1ha2VyIix0ZXh0OiJoOiBbaF0gczogW3NdIHY6IFt2XSBhOiBbYV0iLGFyZ3VtZW50czp7aDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6IjUwIn0sczp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6IjUwIn0sdjp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6IjUwIn0sYTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6IjUwIn19LGJsb2NrVHlwZTppLlJFUE9SVEVSfSx7b3Bjb2RlOiJyZ2JNYWtlciIsdGV4dDoicjogW3JdIGc6IFtnXSBiOiBbYl0gYTogW2FdIixhcmd1bWVudHM6e3I6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOiI1MCJ9LGc6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOiI1MCJ9LGI6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOiI1MCJ9LGE6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOiI1MCJ9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn0se29wY29kZToibWl4Q29sb3JzIix0ZXh0OiJtaXggW2NvbG9yMV0gW2NvbG9yMl0gYnkgW3BlcmNlbnRdIixhcmd1bWVudHM6e2NvbG9yMTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6dGhpcy5kZWFmdWx0UmdifSxjb2xvcjI6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOnRoaXMuZGVhZnVsdFJnYn0scGVyY2VudDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAuNSJ9fSxibG9ja1R5cGU6aS5SRVBPUlRFUn1dLG1lbnVzOntvdXRwdXRDb2xvclR5cGU6e2l0ZW1zOlt7dGV4dDoiZGVjaW1hbCIsdmFsdWU6ImRlY2ltYWwifSx7dGV4dDoicmdiIix2YWx1ZToicmdiIn0se3RleHQ6ImhzdiIsdmFsdWU6ImhzdiJ9LHt0ZXh0OiJoZXgiLHZhbHVlOiJoZXgifV0sYWNjZXB0UmVwb3J0ZXJzOiEwfX19fWRlZmF1bHRCbGFjaygpe3JldHVybiBKU09OLnN0cmluZ2lmeShvLlJHQl9CTEFDSyl9ZGVmYXVsdFdoaXRlKCl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KG8uUkdCX1dISVRFKX1jb2xvclBpY2tlcihBKXtjb25zdCBlPW8uaGV4VG9EZWNpbWFsKEEuQ09MT1IpLHQ9e2NvbG9yOmV9O3N3aXRjaChhLnRvU3RyaW5nKEEuT1VUUFVUKS50b0xvd2VyQ2FzZSgpKXtjYXNlInJnYiI6cmV0dXJuIHRoaXMuZGVjaW1hbFRvUmdiKHQpO2Nhc2UiaHN2IjpyZXR1cm4gdGhpcy5kZWNpbWFsVG9Ic3YodCk7Y2FzZSJoZXgiOnJldHVybiB0aGlzLmRlY2ltYWxUb0hleCh0KTtkZWZhdWx0OnJldHVybiBlfX1jc2JNYWtlcihBKXtjb25zdCBlPXtoOjM2MCpBLmgvMTAwLHM6QS5zLzEwMCx2OkEudi8xMDB9O3JldHVybiBpc05hTihBLmEpfHwoZS5hPUEuYS8xMDApLEpTT04uc3RyaW5naWZ5KGUpfWhzdk1ha2VyKEEpe2NvbnN0IGU9e2g6QS5oLHM6QS5zLHY6QS52fTtyZXR1cm4gaXNOYU4oQS5hKXx8KGUuYT1BLmEpLEpTT04uc3RyaW5naWZ5KGUpfXJnYk1ha2VyKEEpe2NvbnN0IGU9e3I6QS5yLGc6QS5nLGI6QS5ifTtyZXR1cm4gaXNOYU4oQS5hKXx8KGUuYT1BLmEpLEpTT04uc3RyaW5naWZ5KGUpfW1peENvbG9ycyhBKXtjb25zdCBlPXMoQS5jb2xvcjEpLm9iamVjdCx0PXMoQS5jb2xvcjIpLm9iamVjdDtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoby5taXhSZ2IoZSx0LEEucGVyY2VudCkpfXJnYlRvRGVjaW1hbChBKXtjb25zdCBlPXMoQS5jb2xvcikub2JqZWN0O3JldHVybiBvLnJnYlRvRGVjaW1hbChlKX1yZ2JUb0hleChBKXtjb25zdCBlPXMoQS5jb2xvcikub2JqZWN0O3JldHVybiBvLnJnYlRvSGV4KGUpfXJnYlRvSHN2KEEpe2NvbnN0IGU9cyhBLmNvbG9yKS5vYmplY3Q7cmV0dXJuIEpTT04uc3RyaW5naWZ5KG8ucmdiVG9Ic3YoZSkpfWhleFRvRGVjaW1hbChBKXtjb25zdCBlPUEuY29sb3I7cmV0dXJuIG8uaGV4VG9EZWNpbWFsKGUpfWhleFRvUmdiKEEpe2NvbnN0IGU9by5oZXhUb1JnYihBLmNvbG9yKTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9aGV4VG9Ic3YoQSl7Y29uc3QgZT1vLmhleFRvUmdiKEEuY29sb3IpO3JldHVybiBKU09OLnN0cmluZ2lmeShvLnJnYlRvSHN2KGUpKX1kZWNpbWFsVG9IZXgoQSl7Y29uc3QgZT1OdW1iZXIoQS5jb2xvcik7cmV0dXJuIG8uZGVjaW1hbFRvSGV4KGUpfWRlY2ltYWxUb1JnYihBKXtjb25zdCBlPW8uZGVjaW1hbFRvUmdiKE51bWJlcihBLmNvbG9yKSk7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfWRlY2ltYWxUb0hzdihBKXtjb25zdCBlPW8uZGVjaW1hbFRvUmdiKE51bWJlcihBLmNvbG9yKSk7cmV0dXJuIEpTT04uc3RyaW5naWZ5KG8ucmdiVG9Ic3YoZSkpfWhzdlRvSGV4KEEpe2NvbnN0IGU9by5oc3ZUb1JnYihzKEEuY29sb3IpLm9iamVjdCk7cmV0dXJuIG8ucmdiVG9IZXgoZSl9aHN2VG9SZ2IoQSl7Y29uc3QgZT1vLmhzdlRvUmdiKHMoQS5jb2xvcikub2JqZWN0KTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9aHN2VG9EZWNpbWFsKEEpe2NvbnN0IGU9by5oc3ZUb1JnYihzKEEuY29sb3IpLm9iamVjdCk7cmV0dXJuIG8ucmdiVG9EZWNpbWFsKGUpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDMpLHI9KHQoMiksdCg2KSk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLEEuc2V0UnVudGltZU9wdGlvbnMoe2ZlbmNpbmc6ITF9KSxBLmlvRGV2aWNlcy5tb3VzZS5iaW5kVG9DYW1lcmEoMCl9Z2V0Q2FtZXJhKEEpe3JldHVybiB0aGlzLnJ1bnRpbWUuZ2V0Q2FtZXJhKHRoaXMuZ2V0QWN0aXZlQ2FtZXJhKEEpKX11cGRhdGVDYW1lcmEoQSxlKXt0aGlzLnJ1bnRpbWUudXBkYXRlQ2FtZXJhKHRoaXMuZ2V0QWN0aXZlQ2FtZXJhKEEpLGUpfWdldEFjdGl2ZUNhbWVyYShBKXtsZXQgZT1BLl9jdXN0b21TdGF0ZS5DQU1FUkFfSU5GTztyZXR1cm4gZXx8KGU9QS5jYW1lcmFCb3VuZHx8ImRlZmF1bHQiLEEuc2V0Q3VzdG9tU3RhdGUoIkNBTUVSQV9JTkZPIixlKSksZX1zZXRBY3RpdmVDYW1lcmEoQSxlKXtBLnNldEN1c3RvbVN0YXRlKCJDQU1FUkFfSU5GTyIsZSl9Z2V0SW5mbygpe3JldHVybntpZDoicG1DYW1lcmEiLG5hbWU6IkNhbWVyYSIsY29sb3IxOiIjMDU4NkZGIixibG9ja3M6W3tvcGNvZGU6Im1vdmVTdGVwcyIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJtb3ZlIGNhbWVyYSBbU1RFUFNdIHN0ZXBzIixhcmd1bWVudHM6e1NURVBTOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMTAifX19LHtvcGNvZGU6InR1cm5SaWdodCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJ0dXJuIGNhbWVyYSBbRElSRUNUSU9OXSBbREVHUkVFU10gZGVncmVlcyIsYXJndW1lbnRzOntESVJFQ1RJT046e3R5cGU6aS5JTUFHRSxkYXRhVVJJOiIiLmNvbmNhdCgic3RhdGljL2Jsb2Nrcy1tZWRpYSIsIi9yb3RhdGUtcmlnaHQuc3ZnIil9LERFR1JFRVM6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxNSJ9fX0se29wY29kZToidHVybkxlZnQiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoidHVybiBjYW1lcmEgW0RJUkVDVElPTl0gW0RFR1JFRVNdIGRlZ3JlZXMiLGFyZ3VtZW50czp7RElSRUNUSU9OOnt0eXBlOmkuSU1BR0UsZGF0YVVSSToiIi5jb25jYXQoInN0YXRpYy9ibG9ja3MtbWVkaWEiLCIvcm90YXRlLWxlZnQuc3ZnIil9LERFR1JFRVM6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxNSJ9fX0se29wY29kZToiYmluZFRhcmdldCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJiaW5kIFtUQVJHRVRdIHRvIGNhbWVyYSBbU0NSRUVOXSIsYXJndW1lbnRzOntUQVJHRVQ6e3R5cGU6aS5TVFJJTkcsbWVudToiQklOREFCTEVfVEFSR0VUUyJ9LFNDUkVFTjp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6ImRlZmF1bHQifX19LHtvcGNvZGU6InVuYmluZFRhcmdldCIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJ1bmJpbmQgW1RBUkdFVF0gZnJvbSB0aGUgY2FtZXJhIixhcmd1bWVudHM6e1RBUkdFVDp7dHlwZTppLlNUUklORyxtZW51OiJCSU5EQUJMRV9UQVJHRVRTIn19fSx7b3Bjb2RlOiJzZXRDdXJyZW50Q2FtZXJhIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBjdXJyZW50IGNhbWVyYSB0byBbU0NSRUVOXSIsYXJndW1lbnRzOntTQ1JFRU46e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJkZWZhdWx0In19fSx7b3Bjb2RlOiJzZXRSZW5kZXJJbWVkaWF0IixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCByZW5kZXIgbW9kZSB0byBbUkVOREVSX01PREVdIixhcmd1bWVudHM6e1JFTkRFUl9NT0RFOnt0eXBlOmkuU1RSSU5HLG1lbnU6IlJFTkRFUl9NT0RFUyJ9fX0se29wY29kZToibWFudWFsUmVuZGVyIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InJlbmRlciBjYW1lcmEifSwiLS0tIix7b3Bjb2RlOiJnb3RvWFkiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoic2V0IGNhbWVyYSB4OiBbWF0geTogW1ldIixhcmd1bWVudHM6e1g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sWTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifX19LHtvcGNvZGU6InNldFNpemUiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoic2V0IGNhbWVyYSB6b29tIHRvIFtaT09NXSUiLGFyZ3VtZW50czp7Wk9PTTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEwMCJ9fX0se29wY29kZToiY2hhbmdlU2l6ZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJjaGFuZ2UgY2FtZXJhIHpvb20gYnkgW1pPT01dJSIsYXJndW1lbnRzOntaT09NOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMTAifX19LCItLS0iLHtvcGNvZGU6InBvaW50VG93YXJkcyIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJwb2ludCBjYW1lcmEgaW4gZGlyZWN0aW9uIFtESVJFQ1RJT05dIixhcmd1bWVudHM6e0RJUkVDVElPTjp7dHlwZTppLkFOR0xFLGRlZmF1bHRWYWx1ZToiOTAifX19LHtvcGNvZGU6InBvaW50VG93YXJkc1BvaW50IixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InBvaW50IGNhbWVyYSB0b3dhcmRzIHg6IFtYXSB5OiBbWV0iLGFyZ3VtZW50czp7WDp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxZOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMCJ9fX0sIi0tLSIse29wY29kZToiY2hhbmdlWHBvcyIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJjaGFuZ2UgY2FtZXJhIHggYnkgW1hdIixhcmd1bWVudHM6e1g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9fX0se29wY29kZToic2V0WHBvcyIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgY2FtZXJhIHggdG8gW1hdIixhcmd1bWVudHM6e1g6e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn19fSx7b3Bjb2RlOiJjaGFuZ2VZcG9zIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImNoYW5nZSBjYW1lcmEgeSBieSBbWV0iLGFyZ3VtZW50czp7WTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEwIn19fSx7b3Bjb2RlOiJzZXRZcG9zIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6InNldCBjYW1lcmEgeSB0byBbWV0iLGFyZ3VtZW50czp7WTp7dHlwZTppLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifX19LCItLS0iLHtvcGNvZGU6InhQb3NpdGlvbiIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoiY2FtZXJhIHgifSx7b3Bjb2RlOiJ5UG9zaXRpb24iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6ImNhbWVyYSB5In0se29wY29kZToiZGlyZWN0aW9uIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJjYW1lcmEgZGlyZWN0aW9uIn0se29wY29kZToiZ2V0U2l6ZSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoiY2FtZXJhIHpvb20ifSx7b3Bjb2RlOiJnZXRDdXJyZW50Q2FtZXJhIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJjdXJyZW50IGNhbWVyYSJ9XSxtZW51czp7QklOREFCTEVfVEFSR0VUUzp7aXRlbXM6ImdldEJpbmRhYmxlVGFyZ2V0cyIsYWNjZXB0UmVwb3J0czohMH0sUkVOREVSX01PREVTOntpdGVtczpbImltbWVkaWF0ZSIsIm1hbnVhbCJdfX19fWdldEJpbmRhYmxlVGFyZ2V0cygpe2NvbnN0IEE9dGhpcy5ydW50aW1lLnRhcmdldHMuZmlsdGVyKEE9PiFBLmlzU3RhZ2UmJkEuaXNPcmlnaW5hbCYmQS5pZCE9PXRoaXMucnVudGltZS52bS5lZGl0aW5nVGFyZ2V0KS5tYXAoQT0+QS5nZXROYW1lKCkpO3JldHVybltdLmNvbmNhdChbe3RleHQ6InRoaXMgc3ByaXRlIix2YWx1ZToiX19NWVNFTEZfXyJ9LHt0ZXh0OiJtb3VzZS1wb2ludGVyIix2YWx1ZToiX19NT1VTRVBPSU5URVJfXyJ9LHt0ZXh0OiJiYWNrZHJvcCIsdmFsdWU6Il9fU1RBR0VfXyJ9LHt0ZXh0OiJhbGwgc3ByaXRlcyIsdmFsdWU6Il9fQUxMX18ifV0sQSl9bW92ZVN0ZXBzKEEsZSl7bGV0e1NURVBTOnR9PUE7Y29uc3R7cG9zOltuLGldLGRpcjpvfT10aGlzLmdldENhbWVyYShlLnRhcmdldCkscz1yLmRlZ1RvUmFkKG8pLGE9dCpNYXRoLmNvcyhzKSxCPXQqTWF0aC5zaW4ocyk7dGhpcy51cGRhdGVDYW1lcmEoZS50YXJnZXQse3BvczpbbithLGkrQl19KX10dXJuUmlnaHQoQSxlKXtsZXR7REVHUkVFUzp0fT1BO2NvbnN0e2RpcjpufT10aGlzLmdldENhbWVyYShlLnRhcmdldCk7dGhpcy51cGRhdGVDYW1lcmEoZS50YXJnZXQse2RpcjpuLXR9KX10dXJuTGVmdChBLGUpe2xldHtERUdSRUVTOnR9PUE7Y29uc3R7ZGlyOm59PXRoaXMuZ2V0Q2FtZXJhKGUudGFyZ2V0KTt0aGlzLnVwZGF0ZUNhbWVyYShlLnRhcmdldCx7ZGlyOm4rdH0pfWJpbmRUYXJnZXQoQSxlKXtsZXR7VEFSR0VUOnQsU0NSRUVOOm59PUE7aWYoIW4pdGhyb3cgbmV3IEVycm9yKCJ0YXJnZXQgc2NyZWVuIE1VU1Qgbm90IGJlIGJsYW5rIik7c3dpdGNoKHQpe2Nhc2UiX19NWVNFTEZfXyI6Y29uc3QgQT1lLnRhcmdldDtBLmJpbmRUb0NhbWVyYShuKSx0aGlzLnNldEFjdGl2ZUNhbWVyYShBLG4pO2JyZWFrO2Nhc2UiX19NT1VTRVBPSU5URVJfXyI6ZS5pb1F1ZXJ5KCJtb3VzZSIsImJpbmRUb0NhbWVyYSIsW25dKTticmVhaztjYXNlIl9fU1RBR0VfXyI6dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkuYmluZFRvQ2FtZXJhKG4pO2JyZWFrO2Nhc2UiX19BTExfXyI6Zm9yKGNvbnN0IEEgb2YgdGhpcy5ydW50aW1lLnRhcmdldHMpQS5iaW5kVG9DYW1lcmEobik7YnJlYWs7ZGVmYXVsdDpjb25zdCBpPXRoaXMucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUodCk7aWYoIWkpdGhyb3cidW5rb3duIHRhcmdldCAiLmNvbmNhdCh0KTtpLmJpbmRUb0NhbWVyYShuKX19dW5iaW5kVGFyZ2V0KEEsZSl7bGV0e1RBUkdFVDp0fT1BO3N3aXRjaCh0KXtjYXNlIl9fTVlTRUxGX18iOmUudGFyZ2V0LnJlbW92ZUNhbWVyYUJpbmRpbmcoKTticmVhaztjYXNlIl9fTU9VU0VQT0lOVEVSX18iOmUuaW9RdWVyeSgibW91c2UiLCJyZW1vdmVDYW1lcmFCaW5kaW5nIik7YnJlYWs7Y2FzZSJfX1NUQUdFX18iOnRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLnJlbW92ZUNhbWVyYUJpbmRpbmcoKTticmVhaztjYXNlIl9fQUxMX18iOmZvcihjb25zdCBBIG9mIHRoaXMucnVudGltZS50YXJnZXRzKUEucmVtb3ZlQ2FtZXJhQmluZGluZygpO2JyZWFrO2RlZmF1bHQ6e2NvbnN0IEE9dGhpcy5ydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZSh0KTtpZighQSl0aHJvdyJ1bmtvd24gdGFyZ2V0ICIuY29uY2F0KHQpO0EucmVtb3ZlQ2FtZXJhQmluZGluZygpO2JyZWFrfX19c2V0Q3VycmVudENhbWVyYShBLGUpe2xldHtTQ1JFRU46dH09QTtpZighdCl0aHJvdyBuZXcgRXJyb3IoInRhcmdldCBzY3JlZW4gTVVTVCBub3QgYmUgYmxhbmsiKTt0aGlzLnNldEFjdGl2ZUNhbWVyYShlLnRhcmdldCx0KX1zZXRSZW5kZXJJbWVkaWF0KEEsZSl7bGV0e1JFTkRFUl9NT0RFOnR9PUE7c3dpdGNoKHQpe2Nhc2UiaW1tZWRpYXRlIjp0aGlzLnVwZGF0ZUNhbWVyYShlLnRhcmdldCx7c2lsZW50OiExfSk7YnJlYWs7Y2FzZSJtYW51YWwiOnRoaXMudXBkYXRlQ2FtZXJhKGUudGFyZ2V0LHtzaWxlbnQ6ITB9KX19bWFudWFsUmVuZGVyKEEsZSl7dGhpcy5ydW50aW1lLmVtaXRDYW1lcmFDaGFuZ2VkKHRoaXMuZ2V0QWN0aXZlQ2FtZXJhKGUudGFyZ2V0KSl9Z290b1hZKEEsZSl7bGV0e1g6dCxZOm59PUE7dGhpcy51cGRhdGVDYW1lcmEoZS50YXJnZXQse3BvczpbdCxuXX0pfXNldFNpemUoQSxlKXtsZXR7Wk9PTTp0fT1BO3RoaXMudXBkYXRlQ2FtZXJhKGUudGFyZ2V0LHtzY2FsZTp0LzEwMH0pfWNoYW5nZVNpemUoQSxlKXtsZXR7Wk9PTTp0fT1BO2NvbnN0e3NjYWxlOm59PXRoaXMuZ2V0Q2FtZXJhKGUudGFyZ2V0KTt0aGlzLnVwZGF0ZUNhbWVyYShlLnRhcmdldCx7c2NhbGU6dC8xMDArbn0pfXBvaW50VG93YXJkcyhBLGUpe2xldHtESVJFQ1RJT046dH09QTt0aGlzLnVwZGF0ZUNhbWVyYShlLnRhcmdldCx7ZGlyOnQtOTB9KX1wb2ludFRvd2FyZHNQb2ludChBLGUpe2xldHtYOnQsWTpufT1BO2NvbnN0e3BvczpbaSxvXX09dGhpcy5nZXRDYW1lcmEoZS50YXJnZXQpO3RoaXMudXBkYXRlQ2FtZXJhKGUudGFyZ2V0LHtkaXI6ci5yYWRUb0RlZyhNYXRoLmF0YW4yKHQtaSxuLW8pKX0pfWNoYW5nZVhwb3MoQSxlKXtsZXR7WDp0fT1BO2NvbnN0e3BvczpbbixpXX09dGhpcy5nZXRDYW1lcmEoZS50YXJnZXQpO3RoaXMudXBkYXRlQ2FtZXJhKGUudGFyZ2V0LHtwb3M6W3QrbixpXX0pfXNldFhwb3MoQSxlKXtsZXR7WDp0fT1BO2NvbnN0e3BvczpbbixpXX09dGhpcy5nZXRDYW1lcmEoZS50YXJnZXQpO3RoaXMudXBkYXRlQ2FtZXJhKGUudGFyZ2V0LHtwb3M6W3QsaV19KX1jaGFuZ2VZcG9zKEEsZSl7bGV0e1k6dH09QTtjb25zdHtwb3M6W24saV19PXRoaXMuZ2V0Q2FtZXJhKGUudGFyZ2V0KTt0aGlzLnVwZGF0ZUNhbWVyYShlLnRhcmdldCx7cG9zOltuLHQraV19KX1zZXRZcG9zKEEsZSl7bGV0e1k6dH09QTtjb25zdHtwb3M6W24saV19PXRoaXMuZ2V0Q2FtZXJhKGUudGFyZ2V0KTt0aGlzLnVwZGF0ZUNhbWVyYShlLnRhcmdldCx7cG9zOltuLHRdfSl9eFBvc2l0aW9uKEEsZSl7cmV0dXJuIHRoaXMuZ2V0Q2FtZXJhKGUudGFyZ2V0KS5wb3NbMF19eVBvc2l0aW9uKEEsZSl7cmV0dXJuIHRoaXMuZ2V0Q2FtZXJhKGUudGFyZ2V0KS5wb3NbMV19ZGlyZWN0aW9uKEEsZSl7cmV0dXJuIHRoaXMuZ2V0Q2FtZXJhKGUudGFyZ2V0KS5kaXIrOTB9Z2V0U2l6ZShBLGUpe3JldHVybiAxMDAqdGhpcy5nZXRDYW1lcmEoZS50YXJnZXQpLnNjYWxlfWdldEN1cnJlbnRDYW1lcmEoQSxlKXtyZXR1cm4gdGhpcy5nZXRBY3RpdmVDYW1lcmEoZS50YXJnZXQpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMyksaT10KDEpLHI9dCgyKSxvPXQoOCkscz1mdW5jdGlvbihBKXtyZXR1cm4oQT1yLnRvU3RyaW5nKEEpKS5yZXBsYWNlKC9bPD4mJyJdL2csQT0+e3N3aXRjaChBKXtjYXNlIjwiOnJldHVybiImbHQ7IjtjYXNlIj4iOnJldHVybiImZ3Q7IjtjYXNlIiYiOnJldHVybiImYW1wOyI7Y2FzZSInIjpyZXR1cm4iJmFwb3M7IjtjYXNlJyInOnJldHVybiImcXVvdDsifX0pfTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5ET01QdXJpZnk9QS5yZW5kZXJlci5leHBvcnRzLlNWR1JlbmRlcmVyLkRPTVB1cmlmeSx0aGlzLmxldHRlckluZm89e2NvbG9yOiIjMDAwMDAwIixmb250OiJBcmlhbCIsc2l6ZToiMTIiLGFsaWduOiJsZWZ0IixsZXR0ZXJTcGFjaW5nOiIwIixsaW5IZWlnaHQ6IjEuMiJ9LHRoaXMuaW1nSW5mbz17d2lkdGg6IjEwMCIsaGVpZ2h0OiIxMDAiLHg6MCx5OjAscm90OjB9LHRoaXMuaXNDYW1lcmFTY3JlZW5zaG90RW5hYmxlZD0hMSx0aGlzLmxhc3RIVE1MdHh0PSIiLHRoaXMuZWxlbWVudHNUb1ByaW50PVtdLHRoaXMucHJpbnRCYWNrZ3JvdW5kPW51bGx9Z2V0SW5mbygpe3JldHVybntpZDoic2hhcmtwb29sUHJpbnRpbmciLG5hbWU6IlByaW50aW5nIixibG9ja3M6W3tvcGNvZGU6ImlzUHJpbnRpbmdTdXBwb3J0ZWQiLGJsb2NrVHlwZTppLkJPT0xFQU4sdGV4dDoiaXMgcHJpbnRpbmcgc3VwcG9ydGVkPyIsaGlkZUZyb21QYWxldHRlOiEwLGRpc2FibGVNb25pdG9yOiEwfSx7b3Bjb2RlOiJwcmludEVsZW1lbnRzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InByaW50IGVsZW1lbnRzIGFuZCB3YWl0In0sIi0tLSIse29wY29kZToiYWRkRWxlbWVudFRleHQiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoiYWRkIHRleHQgW1RYVF0iLGFyZ3VtZW50czp7VFhUOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToiSGVsbG8gd29ybGQhIn19fSx7b3Bjb2RlOiJhZGRFbGVtZW50U2NyZWVuc2hvdCIsYmxvY2tUeXBlOmkuQ09NTUFORCx0ZXh0OiJhZGQgc3RhZ2Ugc2NyZWVuc2hvdCJ9LHtvcGNvZGU6ImFkZEVsZW1lbnRJbWciLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoiYWRkIGltYWdlIFtJTUddIixhcmd1bWVudHM6e0lNRzp7dHlwZTpuLlNUUklORyxkZWZhdWx0VmFsdWU6Imh0dHBzOi8vcGVuZ3Vpbm1vZC5jb20vZmF2aWNvbi5wbmcifX19LHtvcGNvZGU6ImFkZEVsZW1lbnRIdG1sIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6ImFkZCBodG1sIFtIVE1MXSIsYXJndW1lbnRzOntIVE1MOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToiPGgxPkhlYWRlciB0ZXh0PC9oMT48cD5QYXJhZ3JhcGggaGVyZTwvcD4ifX19LHtvcGNvZGU6InJlbW92ZUVsZW1lbnRzIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InJlbW92ZSBhbGwgZWxlbWVudHMifSx7YmxvY2tUeXBlOmkuTEFCRUwsdGV4dDoiRm9ybWF0dGluZyJ9LHtvcGNvZGU6InR4dEZvbnQiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGZvbnQgdG8gW0ZPTlRdIHNpemUgW1NaXSIsYXJndW1lbnRzOntGT05UOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToiQXJpYWwifSxTWjp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MTJ9fX0se29wY29kZToidHh0Q29sb3IiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IHRleHQgY29sb3IgW0NPTE9SXSIsYXJndW1lbnRzOntDT0xPUjp7dHlwZTpuLkNPTE9SfX19LHtvcGNvZGU6InR4dEFsaWduIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6ImFsaWduIHRleHQgW0FMSUdOXSIsYXJndW1lbnRzOntBTElHTjp7dHlwZTpuLlNUUklORyxtZW51OiJBTElHTk1FTlRTIn19fSx7b3Bjb2RlOiJ0eHRTcGFjaW5nIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InNldCB0ZXh0IHNwYWNpbmcgbGV0dGVyIFtMRVRdIGxpbmUgW0xJTl0iLGFyZ3VtZW50czp7TEVUOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxMSU46e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjEuMn19fSwiLS0tIix7b3Bjb2RlOiJpbWdTaXplIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InNldCBpbWFnZSB3aWR0aCBbV10gaGVpZ2h0IFtIXSIsYXJndW1lbnRzOntXOnt0eXBlOm4uTlVNQkVSLGRlZmF1bHRWYWx1ZToyMDB9LEg6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjIwMH19fSx7b3Bjb2RlOiJpbWdQb3MiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGltYWdlIHBvc2l0aW9uIHRvIHggW3hdIHkgW3ldIixhcmd1bWVudHM6e3g6e3R5cGU6bi5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH0seTp7dHlwZTpuLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJpbWdSb3QiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGltYWdlIHJvdGF0aW9uIHRvIFtyb3RdIixhcmd1bWVudHM6e3JvdDp7dHlwZTpuLkFOR0xFLGRlZmF1bHRWYWx1ZTo5MH19fSx7YmxvY2tUeXBlOmkuTEFCRUwsdGV4dDoiQmFja2dyb3VuZCJ9LHtvcGNvZGU6InNldEJHQ29sb3IiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGJhY2tncm91bmQgY29sb3IgW0NPTE9SXSIsYXJndW1lbnRzOntDT0xPUjp7dHlwZTpuLkNPTE9SfX19LHtvcGNvZGU6InNldEJHSW1hZ2UiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGJhY2tncm91bmQgaW1hZ2UgW0lNR10iLGFyZ3VtZW50czp7SU1HOnt0eXBlOm4uU1RSSU5HLGRlZmF1bHRWYWx1ZToiaHR0cHM6Ly9wZW5ndWlubW9kLmNvbS90ZXN0LnBuZyJ9fX0se29wY29kZToic2V0QkdSZXBlYXQiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDoic2V0IGJhY2tncm91bmQgdG8gW0JHTU9ERV0iLGFyZ3VtZW50czp7QkdNT0RFOnt0eXBlOm4uU1RSSU5HLG1lbnU6IkJHTU9ERSJ9fX0se29wY29kZToicmVzZXRCYWNrZ3JvdW5kIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6InJlbW92ZSBiYWNrZ3JvdW5kIn0se2Jsb2NrVHlwZTppLkxBQkVMLHRleHQ6Ik1pc2NlbGxhbmVvdXMifSx7b3Bjb2RlOiJlbGVtZW50Q291bnQiLGJsb2NrVHlwZTppLlJFUE9SVEVSLHRleHQ6ImVsZW1lbnRzIGluIHByaW50In0se29wY29kZToibGFzdEhUTUwiLGJsb2NrVHlwZTppLlJFUE9SVEVSLHRleHQ6Imxhc3QgcHJpbnRlZCBodG1sIn1dLG1lbnVzOntBTElHTk1FTlRTOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJsZWZ0IiwicmlnaHQiLCJjZW50ZXIiXX0sQkdNT0RFOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJyZXBlYXQiLCJub3QgcmVwZWF0IiwiZmlsbCIsInN0cmV0Y2giXX19fX1fZ2V0U3RhZ2VTY3JlZW5zaG90KCl7cmV0dXJuIHRoaXMucnVudGltZS5wcmlzbV9zY3JlZW5zaG90X2NoZWNrRm9yRXh0ZXJuYWxDYW52YXMmJnRoaXMucnVudGltZS5wcmlzbV9zY3JlZW5zaG90X2V4dGVybmFsQ2FudmFzP3RoaXMucnVudGltZS5wcmlzbV9zY3JlZW5zaG90X2V4dGVybmFsQ2FudmFzLnRvRGF0YVVSTCgpOm5ldyBQcm9taXNlKEE9Pnt0aGlzLnJ1bnRpbWUucmVuZGVyZXIucmVxdWVzdFNuYXBzaG90KGU9PntBKGUpfSl9KX1fY29udmVydFRvRGF0YVVSTChBLGUpe3JldHVybiBuZXcgUHJvbWlzZSgodCxuKT0+e2NvbnN0IGk9e307ZSYmKGkudHlwZT1lKTtjb25zdCByPW5ldyBCbG9iKFtBXSxpKSxvPW5ldyBGaWxlUmVhZGVyO28ub25sb2FkPSgpPT57Y29uc3QgQT1vLnJlc3VsdDt0KEEpfSxvLm9uZXJyb3I9QT0+e24oQSl9LG8ucmVhZEFzRGF0YVVSTChyKX0pfXdhaXRGb3JMb2FkKEEpe3JldHVybiBuZXcgUHJvbWlzZSgoZSx0KT0+e0Eub25sb2FkPWUsQS5vbmVycm9yPXR9KX1hcHBseVN0eWxpbmdzKEEsZSl7Zm9yKGNvbnN0IHQgaW4gQSllLnN0eWxlW3RdPUFbdF19aXNQcmludGluZ1N1cHBvcnRlZCgpe3JldHVybiJwcmludCJpbiB3aW5kb3d9YXN5bmMgcHJpbnRFbGVtZW50cygpe2F3YWl0IHRoaXMuYmVnaW5QcmludCgpfWFkZEVsZW1lbnRUZXh0KEEpe3RoaXMucHJlcGFyZShzKEEuVFhUKSwidHh0Iil9YXN5bmMgYWRkRWxlbWVudFNjcmVlbnNob3QoKXtjb25zdCBBPWF3YWl0IHRoaXMuX2dldFN0YWdlU2NyZWVuc2hvdCgpO3RoaXMucHJlcGFyZShzKEEpLCJpbWciKX1hc3luYyBhZGRFbGVtZW50SW1nKEEpe2xldCBlPUEuSU1HO2F3YWl0IHRoaXMucnVudGltZS52bS5zZWN1cml0eU1hbmFnZXIuY2FuRmV0Y2goZSl8fChlPSJodHRwczovL3Blbmd1aW5tb2QuY29tL25vdGFsbG93ZWQucG5nIiksdGhpcy5wcmVwYXJlKHMoZSksImltZyIpfWFzeW5jIGFkZEVsZW1lbnRIdG1sKEEpe2NvbnN0IGU9QS5IVE1MLHQ9YXdhaXQgdGhpcy5fY29udmVydFRvRGF0YVVSTChlLCJ0ZXh0L2h0bWwiKTthd2FpdCB0aGlzLnJ1bnRpbWUudm0uc2VjdXJpdHlNYW5hZ2VyLmNhbkVtYmVkKHQpJiZ0aGlzLnByZXBhcmUoZSwiaHRtbCIpfXJlbW92ZUVsZW1lbnRzKCl7dGhpcy5lbGVtZW50c1RvUHJpbnQ9W119dHh0Rm9udChBKXt0aGlzLmxldHRlckluZm8uZm9udD1zKEEuRk9OVCksdGhpcy5sZXR0ZXJJbmZvLnNpemU9ci50b051bWJlcihBLlNaKX10eHRDb2xvcihBKXtjb25zdCBlPXIudG9SZ2JDb2xvck9iamVjdChBLkNPTE9SKSx0PW8ucmdiVG9IZXgoZSk7dGhpcy5sZXR0ZXJJbmZvLmNvbG9yPXModCl9dHh0QWxpZ24oQSl7dGhpcy5sZXR0ZXJJbmZvLmFsaWduPXMoQS5BTElHTil9dHh0U3BhY2luZyhBKXt0aGlzLmxldHRlckluZm8ubGV0dGVyU3BhY2luZz1yLnRvTnVtYmVyKEEuTEVUKSx0aGlzLmxldHRlckluZm8ubGluSGVpZ2h0PXIudG9OdW1iZXIoQS5MSU4pfWltZ1NpemUoQSl7dGhpcy5pbWdJbmZvLndpZHRoPXIudG9OdW1iZXIoQS5XKSx0aGlzLmltZ0luZm8uaGVpZ2h0PXIudG9OdW1iZXIoQS5IKX1pbWdQb3MoQSl7dGhpcy5pbWdJbmZvLng9ci50b051bWJlcihBLngpLHRoaXMuaW1nSW5mby55PXIudG9OdW1iZXIoQS55KX1pbWdSb3QoQSl7dGhpcy5pbWdJbmZvLnJvdD1yLnRvTnVtYmVyKEEucm90KS05MH1zZXRCR0NvbG9yKEEpe3RoaXMucHJpbnRCYWNrZ3JvdW5kfHwodGhpcy5wcmludEJhY2tncm91bmQ9e30pO2NvbnN0IGU9ci50b1JnYkNvbG9yT2JqZWN0KEEuQ09MT1IpLHQ9by5yZ2JUb0hleChlKTt0aGlzLnByaW50QmFja2dyb3VuZC5jb2xvcj10fWFzeW5jIHNldEJHSW1hZ2UoQSl7bGV0IGU9QS5JTUc7YXdhaXQgdGhpcy5ydW50aW1lLnZtLnNlY3VyaXR5TWFuYWdlci5jYW5GZXRjaChlKSYmKHRoaXMucHJpbnRCYWNrZ3JvdW5kfHwodGhpcy5wcmludEJhY2tncm91bmQ9e30pLHRoaXMucHJpbnRCYWNrZ3JvdW5kLmltYWdlPWUpfXNldEJHUmVwZWF0KEEpe3RoaXMucHJpbnRCYWNrZ3JvdW5kfHwodGhpcy5wcmludEJhY2tncm91bmQ9e30pLHRoaXMucHJpbnRCYWNrZ3JvdW5kLmJnbW9kZT1BLkJHTU9ERX1yZXNldEJhY2tncm91bmQoKXt0aGlzLnByaW50QmFja2dyb3VuZD1udWxsfWVsZW1lbnRDb3VudCgpe3JldHVybiB0aGlzLmVsZW1lbnRzVG9QcmludC5sZW5ndGh9bGFzdEhUTUwoKXtyZXR1cm4gdGhpcy5sYXN0SFRNTHR4dH1wcmVwYXJlKEEsZSl7Y29uc3QgdD17fTtzd2l0Y2godC50eXBlPWUsZSl7Y2FzZSJ0eHQiOnQuc3R5bGU9e30sdC5zdHlsZS5mb250RmFtaWx5PXRoaXMubGV0dGVySW5mby5mb250LHQuc3R5bGUuZm9udFNpemU9IiIuY29uY2F0KHRoaXMubGV0dGVySW5mby5zaXplLCJweCIpLHQuc3R5bGUuY29sb3I9dGhpcy5sZXR0ZXJJbmZvLmNvbG9yLHQuc3R5bGUudGV4dEFsaWduPXRoaXMubGV0dGVySW5mby5hbGlnbix0LnN0eWxlLmxldHRlclNwYWNpbmc9IiIuY29uY2F0KHRoaXMubGV0dGVySW5mby5sZXR0ZXJTcGFjaW5nLCJweCIpLHQuc3R5bGUubGluZUhlaWdodD0iIi5jb25jYXQodGhpcy5sZXR0ZXJJbmZvLmxpbkhlaWdodCwicHgiKSx0LnRleHRDb250ZW50PUE7YnJlYWs7Y2FzZSJpbWciOnQuc3R5bGU9e30sdC53aWR0aD10aGlzLmltZ0luZm8ud2lkdGgsdC5oZWlnaHQ9dGhpcy5pbWdJbmZvLmhlaWdodCx0LnN0eWxlLmRpc3BsYXk9ImJsb2NrIix0LnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKCIuY29uY2F0KHIudG9OdW1iZXIodGhpcy5pbWdJbmZvLngpLCJweCwgIikuY29uY2F0KHIudG9OdW1iZXIodGhpcy5pbWdJbmZvLnkpLCJweCkgcm90YXRlKCIpLmNvbmNhdChyLnRvTnVtYmVyKHRoaXMuaW1nSW5mby5yb3QpLCJkZWcpIiksdC5zcmM9QTticmVhaztjYXNlImh0bWwiOnQuaHRtbD10aGlzLkRPTVB1cmlmeS5zYW5pdGl6ZShBKX10aGlzLmVsZW1lbnRzVG9QcmludC5wdXNoKHQpfWFzeW5jIGJlZ2luUHJpbnQoKXtjb25zdCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGU9W107Zm9yKGNvbnN0IHQgb2YgdGhpcy5lbGVtZW50c1RvUHJpbnQpc3dpdGNoKHQudHlwZSl7Y2FzZSJ0eHQiOntjb25zdCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3RoaXMuYXBwbHlTdHlsaW5ncyh0LnN0eWxlLGUpLGUudGV4dENvbnRlbnQ9dC50ZXh0Q29udGVudCxBLmFwcGVuZENoaWxkKGUpO2JyZWFrfWNhc2UiaW1nIjp7Y29uc3Qgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKTtuLndpZHRoPXQud2lkdGgsbi5oZWlnaHQ9dC5oZWlnaHQsdGhpcy5hcHBseVN0eWxpbmdzKHQuc3R5bGUsbiksbi5zcmM9dC5zcmMsQS5hcHBlbmRDaGlsZChuKSxlLnB1c2gobik7YnJlYWt9Y2FzZSJodG1sIjpBLmlubmVySFRNTCs9dC5odG1sfXRoaXMubGFzdEhUTUx0eHQ9QS5pbm5lckhUTUw7Y29uc3QgdD13aW5kb3cub3BlbigiIiwiRG9jdW1lbnQiLCJzY3JvbGxiYXJzPXllcyxyZXNpemFibGU9eWVzLHN0YXR1cz1ubyxsb2NhdGlvbj1ubyx0b29sYmFyPW5vLG1lbnViYXI9bm8sd2lkdGg9NzIwLGhlaWdodD03MjAsbGVmdD0xMCx0b3A9MTAiKTtpZih0KXtpZih0LmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoQSksdC5kb2N1bWVudC50aXRsZT0iRG9jdW1lbnQiLHRoaXMucHJpbnRCYWNrZ3JvdW5kKXtjb25zdCBBPXRoaXMucHJpbnRCYWNrZ3JvdW5kLGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTtsZXQgbj0iYm9keSB7XG5iYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuIjtpZihBLmNvbG9yJiYobis9ImJhY2tncm91bmQ6ICIuY29uY2F0KHMoQS5jb2xvciksIjsiKSksQS5pbWFnZSYmKG4rPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi5jb25jYXQoSlNPTi5zdHJpbmdpZnkocyhBLmltYWdlKSksIik7IikpLEEuYmdtb2RlKXtsZXQgZT0ibm8tcmVwZWF0Ijtzd2l0Y2goQS5iZ21vZGUpe2Nhc2UicmVwZWF0IjplPSJyZXBlYXQiO2Nhc2Uibm90IHJlcGVhdCI6bis9ImJhY2tncm91bmQtcmVwZWF0OiAiLmNvbmNhdChlLCI7Iik7YnJlYWs7Y2FzZSJzdHJldGNoIjpuKz0iYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IjticmVhaztjYXNlImZpbGwiOm4rPSJiYWNrZ3JvdW5kLXNpemU6IDEwMCU7In19aWYobis9IlxufSIsZS5pbm5lckhUTUw9bix0LmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZSksQS5pbWFnZSl7Y29uc3QgZT1uZXcgSW1hZ2U7ZS5zdHlsZT0icG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwcHg7IHRvcDogMHB4OyI7dHJ5e2NvbnN0IG49dGhpcy53YWl0Rm9yTG9hZChlKTtlLnNyYz1BLmltYWdlLHQuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChlKSxhd2FpdCBufWZpbmFsbHl7ZS5yZW1vdmUoKX19fWlmKGUubGVuZ3RoPjApZm9yKGNvbnN0IEEgb2YgZSl0cnl7YXdhaXQgdGhpcy53YWl0Rm9yTG9hZChBKX1jYXRjaChlKXtjb25zb2xlLndhcm4oIkZhaWxlZCB0byBsb2FkIixBLGUpfWF3YWl0KG49NTAsbmV3IFByb21pc2UoQT0+e3NldFRpbWVvdXQoKCk9PntBKCl9LG4pfSkpLGF3YWl0IHQucHJpbnQoKSx0LmNsb3NlKCksQS5yZW1vdmUoKX1lbHNlIGNvbnNvbGUuZXJyb3IoIlVuYWJsZSB0byBvcGVuIHByaW50IHdpbmRvdyIpO3ZhciBufX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMSksaT10KDEwKSxyPXQoMyksbz10KDI4KSxzPXQoMik7bGV0IGE9Im9iamVjdCI9PXR5cGVvZiBTY3JhdGNoQmxvY2tzO2NvbnN0IEI9bmV3IE1hcCxjPS9eKCg/IWNocm9tZXxhbmRyb2lkKS4pKnNhZmFyaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7ZnVuY3Rpb24gZygpe3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixBPT57dmFyIGU7aWYoImNvZGUtY2hhbmdlIj09PShudWxsPT09KGU9QS5kYXRhKXx8dm9pZCAwPT09ZT92b2lkIDA6ZS50eXBlKSl7Y29uc3QgZT1CLmdldChBLmRhdGEuaWQpO2UmJmUoQS5kYXRhLnZhbHVlKX19KTtjb25zdCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO0Euc2V0QXR0cmlidXRlKCJzdHlsZSIsImRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBwYWRkaW5nLXRvcDogMTBweDsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDIwMHB4OyIpO2NvbnN0IGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZS5zZXRBdHRyaWJ1dGUoInN0eWxlIiwiYmFja2dyb3VuZDogIzI3MjgyMjsgYm9yZGVyLXJhZGl1czogMTBweDsgYm9yZGVyOiBub25lOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTsiKSxBLmFwcGVuZENoaWxkKGUpLFNjcmF0Y2hCbG9ja3MuRmllbGRDdXN0b20ucmVnaXN0ZXJJbnB1dCgiU1BqYXZhc2NyaXB0VjItY29kZUVkaXRvciIsQSxBPT57Y29uc3QgZT1BLmlucHV0U291cmNlLHQ9ZS5maXJzdENoaWxkLG49QS5zb3VyY2VCbG9ja18saT1uLnBhcmVudEJsb2NrXyxyPWkuaXNJbkZseW91dHx8bi5zdmdHcm91cF8uY2xhc3NMaXN0LmNvbnRhaW5zKCJibG9ja2x5RHJhZ2dpbmciKT8ibm9uZSI6ImFsbCI7ZS5zZXRBdHRyaWJ1dGUoInBvaW50ZXItZXZlbnRzIiwibm9uZSIpLHQuc3R5bGUuaGVpZ2h0PSIyMTBweCI7Y29uc3Qgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtvLnNldEF0dHJpYnV0ZSgic3R5bGUiLCJwb2ludGVyLWV2ZW50czogIi5jb25jYXQociwiOyBiYWNrZ3JvdW5kOiAjMjcyODIyOyBib3JkZXItcmFkaXVzOiAxMHB4OyBib3JkZXI6IG5vbmU7ICIpLmNvbmNhdChjPyIiOiJ3aWR0aDogMTAwJTsiLCIgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTsiKSksby5zZXRBdHRyaWJ1dGUoInNhbmRib3giLCJhbGxvdy1zY3JpcHRzIik7Y29uc3Qgcz0nXG48IURPQ1RZUEUgaHRtbD5cbjxodG1sPjxoZWFkPlxuICA8c3R5bGU+aHRtbCwgYm9keSwgI2VkaXRvciB7YmFja2dyb3VuZDogIzI3MjgyMjsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlO308L3N0eWxlPlxuPC9oZWFkPlxuPGJvZHk+XG4gIDxkaXYgaWQ9ImVkaXRvciI+PC9kaXY+XG4gIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2FjZS1idWlsZHNAMS4zMi4zL3NyYy1taW4tbm9jb25mbGljdC9hY2UuanMiPjxcL3NjcmlwdD5cbiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYWNlLWJ1aWxkc0AxLjMyLjMvc3JjLW1pbi1ub2NvbmZsaWN0L21vZGUtamF2YXNjcmlwdC5qcyI+PFwvc2NyaXB0PlxuICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9hY2UtYnVpbGRzQDEuMzIuMy9zcmMtbWluLW5vY29uZmxpY3QvdGhlbWUtbW9ub2thaS5qcyI+PFwvc2NyaXB0PlxuICA8c2NyaXB0PlxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwgZnVuY3Rpb24oZSkge1xuICAgICAgY29uc3QgZWRpdG9yID0gYWNlLmVkaXQoImVkaXRvciIpO1xuICAgICAgZWRpdG9yLnNldE9wdGlvbnMoe1xuICAgICAgICBmb250U2l6ZTogIjE1cHgiLCBzaG93UHJpbnRNYXJnaW46IGZhbHNlLFxuICAgICAgICBoaWdobGlnaHRBY3RpdmVMaW5lOiB0cnVlLCB1c2VXb3JrZXI6IGZhbHNlXG4gICAgICB9KTtcblxuICAgICAgZWRpdG9yLnNlc3Npb24uc2V0TW9kZSgiYWNlL21vZGUvamF2YXNjcmlwdCIpO1xuICAgICAgZWRpdG9yLnNldFRoZW1lKCJhY2UvdGhlbWUvbW9ub2thaSIpO1xuICAgICAgZWRpdG9yLnNldFZhbHVlKGUuZGF0YS52YWx1ZSk7XG4gICAgICBlZGl0b3Iuc2Vzc2lvbi5vbigiY2hhbmdlIiwgKCkgPT4gcGFyZW50LnBvc3RNZXNzYWdlKHtcbiAgICAgICAgdHlwZTogImNvZGUtY2hhbmdlIiwgaWQ6ICInLmNvbmNhdChuLmlkLCciLCB2YWx1ZTogZWRpdG9yLmdldFZhbHVlKClcbiAgICAgIH0sICIqIikpO1xuICAgIH0sIHsgb25jZTogdHJ1ZSB9KTtcbiAgPFwvc2NyaXB0PlxuPC9ib2R5PlxuPC9odG1sPicpO28uc3JjPVVSTC5jcmVhdGVPYmplY3RVUkwobmV3IEJsb2IoW3NdLHt0eXBlOiJ0ZXh0L2h0bWwifSkpLHQucmVwbGFjZUNoaWxkKG8sdC5maXJzdENoaWxkKSxvLm9ubG9hZD0oKT0+e2xldCBlPUEuZ2V0VmFsdWUoKTtpZigibmVlZHNJbml0LTFAIzQlXjcqKDAiPT09ZSl7Y29uc3QgdD1uLnBhcmVudEJsb2NrXy50eXBlO3QuZW5kc1dpdGgoImpzQ29tbWFuZEJpbmRlZCIpP2U9ImFsZXJ0KEZPTyk7Ijp0LmVuZHNXaXRoKCJqc1JlcG9ydGVyQmluZGVkIik/ZT0icmV0dXJuIFNUUklORyArIE1hdGgucmFuZG9tKCkiOnQuZW5kc1dpdGgoImpzQm9vbGVhbkJpbmRlZCIpP2U9InJldHVybiBNYXRoLnJhbmRvbSgpID4gVEhSRVNIT0xEIjp0LmVuZHNXaXRoKCJkZWZpbmVHbG9iYWxGdW5jIikmJihlPSIocGFyYW0xKSA9PiB7XG5yZXR1cm4gYnRvYShwYXJhbTEpO1xufSIpLEEuc2V0VmFsdWUoZSl9by5jb250ZW50V2luZG93LnBvc3RNZXNzYWdlKHt2YWx1ZTplfSwiKiIpfSxCLnNldChuLmlkLGU9PkEuc2V0VmFsdWUoZSkpO2NvbnN0IGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7YS5zZXRBdHRyaWJ1dGUoInN0eWxlIiwicG9pbnRlci1ldmVudHM6ICIuY29uY2F0KHIsIjsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogNXB4OyBib3R0b206IDE1cHg7IHdpZHRoOiAxMnB4OyBoZWlnaHQ6IDEycHg7IGJhY2tncm91bmQ6ICNmZmZmZmY0MDsgY3Vyc29yOiBzZS1yZXNpemU7IGJvcmRlci1yYWRpdXM6IDBweCAwIDUwcHggMDsiKSksdC5hcHBlbmRDaGlsZChhKTtsZXQgZyxFLFEsdSxsPSExO2EuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixyPT57ZnVuY3Rpb24gcyhpKXtpZighbClyZXR1cm47by5zdHlsZS5wb2ludGVyRXZlbnRzPSJub25lIjtjb25zdCByPU1hdGgubWF4KDE1MCxRKyhpLmNsaWVudFgtZykpLHM9TWF0aC5tYXgoMTAwLHUrKGkuY2xpZW50WS1FKSk7dC5zdHlsZS53aWR0aD0iIi5jb25jYXQociwicHgiKSx0LnN0eWxlLmhlaWdodD0iIi5jb25jYXQocywicHgiKSxhLnN0eWxlLmxlZnQ9IiIuY29uY2F0KHItMjAsInB4IiksYS5zdHlsZS50b3A9IiIuY29uY2F0KHMtNDAsInB4IiksZS5zZXRBdHRyaWJ1dGUoIndpZHRoIixyKSxlLnNldEF0dHJpYnV0ZSgiaGVpZ2h0IixzKSxBLnNpemVfLndpZHRoPXIsQS5zaXplXy5oZWlnaHQ9cy0xMCxudWxsIT1uJiZuLnJlbmRlciYmbi5yZW5kZXIoKX1pLmlzSW5GbHlvdXR8fChyLnByZXZlbnREZWZhdWx0KCksbD0hMCxnPXIuY2xpZW50WCxFPXIuY2xpZW50WSxRPXQub2Zmc2V0V2lkdGgsdT10Lm9mZnNldEhlaWdodCxTY3JhdGNoQmxvY2tzLm1haW5Xb3Jrc3BhY2UuYWxsb3dEcmFnZ2luZz0hMSxpLnNldE1vdmFibGUoITEpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIscyksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsKGZ1bmN0aW9uIEEoKXtsPSExLFNjcmF0Y2hCbG9ja3MubWFpbldvcmtzcGFjZS5hbGxvd0RyYWdnaW5nPSEwLGkuc2V0TW92YWJsZSghMCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixzKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIixBKX0pKSl9KTtjb25zdCBoPWkuc3ZnR3JvdXBfLnNldEF0dHJpYnV0ZTtpLnN2Z0dyb3VwXy5zZXRBdHRyaWJ1dGU9ZnVuY3Rpb24oKXtmb3IodmFyIEE9YXJndW1lbnRzLmxlbmd0aCxlPW5ldyBBcnJheShBKSx0PTA7dDxBO3QrKyllW3RdPWFyZ3VtZW50c1t0XTsiY2xhc3MiPT09ZVswXSYmKGkuaXNJbkZseW91dHx8ZVsxXS5pbmNsdWRlcygiYmxvY2tseURyYWdnaW5nIik/KG8uc3R5bGUucG9pbnRlckV2ZW50cz0ibm9uZSIsYS5zdHlsZS5wb2ludGVyRXZlbnRzPSJub25lIik6KG8uc3R5bGUucG9pbnRlckV2ZW50cz0iYWxsIixhLnN0eWxlLnBvaW50ZXJFdmVudHM9ImFsbCIpKSxoLmNhbGwoaS5zdmdHcm91cF8sLi4uZSl9fSwoKT0+e30sKCk9Pnt9KX1hJiZnKCk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuaXNFZGl0b3JVbnNhbmRib3hlZD0hMSx0aGlzLnJ1bnRpbWUudm0ub24oIndvcmtzcGFjZVVwZGF0ZSIsKCk9PntCLmNsZWFyKCksYXx8KGE9Im9iamVjdCI9PXR5cGVvZiBTY3JhdGNoQmxvY2tzLGEmJmcoKSl9KSx0aGlzLmdsb2JhbEZ1bmNzPW5ldyBNYXB9Z2V0SW5mbygpe3JldHVybntpZDoiU1BqYXZhc2NyaXB0VjIiLG5hbWU6IkphdmFTY3JpcHQgVjIiLGNvbG9yMToiI2Y3ZGYxZSIsYmxvY2tUZXh0OiIjMzIzMzMwIixibG9ja3M6W3tvcGNvZGU6InRvZ2dsZVNhbmRib3giLHRleHQ6dGhpcy5pc0VkaXRvclVuc2FuZGJveGVkPyJSdW4gU2FuZGJveGVkIjoiUnVuIFVuc2FuZGJveGVkIixibG9ja1R5cGU6bi5CVVRUT059LHtvcGNvZGU6ImNvZGVJbnB1dCIsdGV4dDoiW0NPREVdIixibG9ja1R5cGU6bi5SRVBPUlRFUixibG9ja1NoYXBlOmkuU1FVQVJFLGhpZGVGcm9tUGFsZXR0ZTohMCxhcmd1bWVudHM6e0NPREU6e3R5cGU6ci5DVVNUT00saWQ6IlNQamF2YXNjcmlwdFYyLWNvZGVFZGl0b3IiLGRlZmF1bHRWYWx1ZToibmVlZHNJbml0LTFAIzQlXjcqKDAifX19LHtvcGNvZGU6ImFyZ3VtZW50UmVwb3J0Iix0ZXh0OiJkYXRhIixibG9ja1R5cGU6bi5SRVBPUlRFUixoaWRlRnJvbVBhbGV0dGU6ITAsY2FuRHJhZ0R1cGxpY2F0ZTohMCxkaXNhYmxlTW9uaXRvcjohMH0se29wY29kZToicmV0dXJuRGF0YSIsYmxvY2tUeXBlOm4uQ09NTUFORCxpc1Rlcm1pbmFsOiEwLGhpZGVGcm9tUGFsZXR0ZTohMCx0ZXh0OiJyZXR1cm4gW0RBVEFdIixhcmd1bWVudHM6e0RBVEE6e3R5cGU6ci5TVFJJTkd9fX0se29wY29kZToianNDb21tYW5kIix0ZXh0OiJydW4gW0NPREVdIixibG9ja1R5cGU6bi5DT01NQU5ELGhpZGVGcm9tUGFsZXR0ZTphJiYhYyxhcmd1bWVudHM6e0NPREU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOidhbGVydCgiSGVsbG8hIiknfX19LHtvcGNvZGU6ImpzUmVwb3J0ZXIiLHRleHQ6InJ1biBbQ09ERV0iLGJsb2NrVHlwZTpuLlJFUE9SVEVSLGRpc2FibGVNb25pdG9yOiEwLGFsbG93RHJvcEFueXdoZXJlOiEwLGhpZGVGcm9tUGFsZXR0ZTphJiYhYyxhcmd1bWVudHM6e0NPREU6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOiJNYXRoLnJhbmRvbSgpIn19fSx7b3Bjb2RlOiJqc0Jvb2xlYW4iLHRleHQ6InJ1biBbQ09ERV0iLGJsb2NrVHlwZTpuLkJPT0xFQU4sZGlzYWJsZU1vbml0b3I6ITAsaGlkZUZyb21QYWxldHRlOmEmJiFjLGFyZ3VtZW50czp7Q09ERTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Ik1hdGgucm91bmQoTWF0aC5yYW5kb20oKSkgPT09IDEifX19LHtvcGNvZGU6ImpzQ29tbWFuZEJpbmRlZCIsdGV4dDoicnVuIFtDT0RFXSB3aXRoIGRhdGEgW0FSR1NdIixibG9ja1R5cGU6bi5DT01NQU5ELGhpZGVGcm9tUGFsZXR0ZTpjfHwhYSxhcmd1bWVudHM6e0NPREU6e2ZpbGxJbjoiY29kZUlucHV0In0sQVJHUzp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6J3sgIkZPTyI6ICJiYXIiIH0nLGV4ZW1wdEZyb21Ob3JtYWxpemF0aW9uOiEwfX19LHtvcGNvZGU6ImpzUmVwb3J0ZXJCaW5kZWQiLHRleHQ6InJ1biBbQ09ERV0gd2l0aCBkYXRhIFtBUkdTXSIsYmxvY2tUeXBlOm4uUkVQT1JURVIsZGlzYWJsZU1vbml0b3I6ITAsYWxsb3dEcm9wQW55d2hlcmU6ITAsaGlkZUZyb21QYWxldHRlOmN8fCFhLGFyZ3VtZW50czp7Q09ERTp7ZmlsbEluOiJjb2RlSW5wdXQifSxBUkdTOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToneyAiU1RSSU5HIjogIm91dHB1dDogIiB9JyxleGVtcHRGcm9tTm9ybWFsaXphdGlvbjohMH19fSx7b3Bjb2RlOiJqc0Jvb2xlYW5CaW5kZWQiLHRleHQ6InJ1biBbQ09ERV0gd2l0aCBkYXRhIFtBUkdTXSIsYmxvY2tUeXBlOm4uQk9PTEVBTixkaXNhYmxlTW9uaXRvcjohMCxoaWRlRnJvbVBhbGV0dGU6Y3x8IWEsYXJndW1lbnRzOntDT0RFOntmaWxsSW46ImNvZGVJbnB1dCJ9LEFSR1M6e3R5cGU6ci5TVFJJTkcsZGVmYXVsdFZhbHVlOid7ICJUSFJFU0hPTEQiOiAwLjUgfScsZXhlbXB0RnJvbU5vcm1hbGl6YXRpb246ITB9fX0sLi4uYT9bIi0tLSJdOltdLHtvcGNvZGU6ImRlZmluZUdsb2JhbEZ1bmMiLHRleHQ6ImNyZWF0ZSBnbG9iYWwgZnVuY3Rpb24gbmFtZWQgW05BTUVdIHdpdGggY29kZSBbQ09ERV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsaGlkZUZyb21QYWxldHRlOihjfHwhYSkmJiF0aGlzLmlzRWRpdG9yVW5zYW5kYm94ZWQsYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXlGdW5jdGlvbiJ9LENPREU6e2ZpbGxJbjoiY29kZUlucHV0In19fSx7b3Bjb2RlOiJkZWZpbmVTY3JhdGNoQ29kZSIsdGV4dDoiY3JlYXRlIGxvY2FsIGZ1bmN0aW9uIG5hbWVkIFtOQU1FXSB3aXRoIGNvZGUgW0NPREVdIixibG9ja1R5cGU6bi5DT05ESVRJT05BTCxoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntOQU1FOnt0eXBlOnIuU1RSSU5HfSxDT0RFOntmaWxsSW46ImFyZ3VtZW50UmVwb3J0In19fSx7YmxvY2tUeXBlOm4uWE1MLGhpZGVGcm9tUGFsZXR0ZTohdGhpcy5pc0VkaXRvclVuc2FuZGJveGVkLHhtbDonXG4gICAgICAgICAgICA8YmxvY2sgdHlwZT0iU1BqYXZhc2NyaXB0VjJfZGVmaW5lU2NyYXRjaENvZGUiPlxuICAgICAgICAgICAgICA8dmFsdWUgbmFtZT0iTkFNRSI+PHNoYWRvdyB0eXBlPSJ0ZXh0Ij48ZmllbGQgbmFtZT0iVEVYVCI+bXlGdW5jdGlvbjwvZmllbGQ+PC9zaGFkb3c+PC92YWx1ZT5cbiAgICAgICAgICAgICAgPHZhbHVlIG5hbWU9IkNPREUiPjxzaGFkb3cgdHlwZT0iU1BqYXZhc2NyaXB0VjJfYXJndW1lbnRSZXBvcnQiPjwvc2hhZG93PjwvdmFsdWU+XG4gICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJTVUJTVEFDSyI+PGJsb2NrIHR5cGU9IlNQamF2YXNjcmlwdFYyX3JldHVybkRhdGEiPlxuICAgICAgICAgICAgICAgIDx2YWx1ZSBuYW1lPSJEQVRBIj48c2hhZG93IHR5cGU9InRleHQiPjxmaWVsZCBuYW1lPSJURVhUIj5jb21wbGV0ZWQ8L2ZpZWxkPjwvc2hhZG93PjwvdmFsdWU+XG4gICAgICAgICAgICAgIDwvYmxvY2s+PC92YWx1ZT5cbiAgICAgICAgICAgIDwvYmxvY2s+XG4gICAgICAgICAgJ30se29wY29kZToiZGVsZXRlR2xvYmFsRnVuYyIsdGV4dDoiZGVsZXRlIGdsb2JhbCBmdW5jdGlvbiBbTkFNRV0iLGJsb2NrVHlwZTpuLkNPTU1BTkQsaGlkZUZyb21QYWxldHRlOiFhJiYhdGhpcy5pc0VkaXRvclVuc2FuZGJveGVkLGFyZ3VtZW50czp7TkFNRTp7dHlwZTpyLlNUUklORyxkZWZhdWx0VmFsdWU6Im15RnVuY3Rpb24ifX19LHtvcGNvZGU6InBhY2thZ2VySW5mbyIsdGV4dDoiU2FuZGJveCBpbiBQYWNrYWdlciBOb3RpY2UiLGJsb2NrVHlwZTpuLkJVVFRPTixoaWRlRnJvbVBhbGV0dGU6IXRoaXMuaXNFZGl0b3JVbnNhbmRib3hlZH1dfX10b2dnbGVTYW5kYm94KCl7dGhpcy5pc0VkaXRvclVuc2FuZGJveGVkPyh0aGlzLmlzRWRpdG9yVW5zYW5kYm94ZWQ9ITEsdGhpcy5ydW50aW1lLmV4dGVuc2lvbk1hbmFnZXIucmVmcmVzaEJsb2NrcygiU1BqYXZhc2NyaXB0VjIiKSk6dGhpcy5ydW50aW1lLnZtLnNlY3VyaXR5TWFuYWdlci5jYW5VbnNhbmRib3goIkphdmFTY3JpcHQiKS50aGVuKEE9PntBJiYodGhpcy5pc0VkaXRvclVuc2FuZGJveGVkPSEwLHRoaXMucnVudGltZS5leHRlbnNpb25NYW5hZ2VyLnJlZnJlc2hCbG9ja3MoIlNQamF2YXNjcmlwdFYyIikpfSl9cGFja2FnZXJJbmZvKCl7YWxlcnQoWyJZb3UgY2FuIHJ1biBjb2RlIFVuc2FuZGJveGVkIGluIHRoZSBQcm9qZWN0IFBhY2thZ2VyIGJ1dCB0b2dnbGluZzoiLCInUGxheWVyIE9wdGlvbnMgPiBSZW1vdmUgc2FuZGJveCBvbiB0aGUgSmF2YVNjcmlwdCBFeHQuJyIsIk9uISJdLmpvaW4oIlxuIikpfXBhcnNlQXJndW1lbnRzKEEpe3RyeXt2YXIgZTtyZXR1cm4iT2JqZWN0Ij09PShudWxsPT09KGU9QS5jb25zdHJ1Y3Rvcil8fHZvaWQgMD09PWU/dm9pZCAwOmUubmFtZSk/QToib2JqZWN0IiE9dHlwZW9mKEE9QS50b1N0cmluZygpKXx8QXJyYXkuaXNBcnJheShBKT9KU09OLnBhcnNlKEEpOkF9Y2F0Y2goQSl7cmV0dXJuIGNvbnNvbGUud2FybigiRmFpbGVkIHRvIHBhcnNlIEphdmFzY3JpcHQgRGF0YSBKU09OOiAiLmNvbmNhdChBKSkse319fWlzTGVnYWxGdW5jTmFtZShBKXt0cnl7cmV0dXJuIG5ldyBGdW5jdGlvbigiZnVuY3Rpb24gIi5jb25jYXQoQSwiKCl7fSIpKSwhMH1jYXRjaChBKXtyZXR1cm4hMX19YXN5bmMgcnVuQ29kZShBLGUpe2xldCB0PSIiO2lmKHRoaXMuZ2xvYmFsRnVuY3Muc2l6ZT4wKXtjb25zdCBBPXRoaXMuZ2xvYmFsRnVuY3MuZW50cmllcygpLnRvQXJyYXkoKTtmb3IoY29uc3RbZSxuXW9mIEEpbi5pc0Jsb2NrQ29kZT8odCs9ImNvbnN0ICIuY29uY2F0KGUsIiA9IGFzeW5jIGZ1bmN0aW9uKC4uLmFyZ3MpIHtcbiIpLG4uaWQmJih0Kz0icmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4iLHQrPSdjb25zdCB0YXJnZXQgPSB2bS5ydW50aW1lLmdldFRhcmdldEJ5SWQoIicuY29uY2F0KG4ub3JpZ2luLCciKTtcbicpLHQrPSdjb25zdCB0aHJlYWQgPSB2bS5ydW50aW1lLl9wdXNoVGhyZWFkKCInLmNvbmNhdChuLmlkLCciLCB0YXJnZXQpO1xuJyksdCs9ImNvbnN0IHRocmVhZElEID0gdGhyZWFkLmdldElkKCk7XG4iLHQrPSJ0aHJlYWQuanNFeHREYXRhID0gWy4uLmFyZ3NdO1xuIix0Kz0iY29uc3QgZW5kSGFuZGxlciA9ICh0KSA9PiB7XG4iLHQrPSJpZiAodC5nZXRJZCgpID09PSB0aHJlYWQuZ2V0SWQoKSkge1xuIix0Kz0ndm0ucnVudGltZS5yZW1vdmVMaXN0ZW5lcigiVEhSRUFEX0ZJTklTSEVEIiwgZW5kSGFuZGxlcik7XG4nLHQrPSJyZXNvbHZlKHQuanVzdFJlcG9ydGVkKTtcbiIsdCs9In1cbiIsdCs9In07XG4iLHQrPSd2bS5ydW50aW1lLm9uKCJUSFJFQURfRklOSVNIRUQiLCBlbmRIYW5kbGVyKTtcbicsdCs9In0pO1xuIiksdCs9In1cbiIpOnQrPSJjb25zdCAiLmNvbmNhdChlLCIgPSAiKS5jb25jYXQobi5jb2RlLCJcbiIpfWlmKHZvaWQgMCE9PWUpZm9yKGxldFtBLG5db2YgT2JqZWN0LmVudHJpZXMoZSkpe3N3aXRjaCh0eXBlb2Ygbil7Y2FzZSJzdHJpbmciOm49JyInLmNvbmNhdChuLCciJyk7YnJlYWs7Y2FzZSJvYmplY3QiOm49SlNPTi5zdHJpbmdpZnkobil9dCs9ImNvbnN0ICIuY29uY2F0KEEsIiA9ICIpLmNvbmNhdChuLCI7XG4iKX1pZih0aGlzLmlzRWRpdG9yVW5zYW5kYm94ZWR8fCEwPT09dGhpcy5ydW50aW1lLmV4dGVuc2lvblJ1bnRpbWVPcHRpb25zLmphdmFzY3JpcHRVbnNhbmRib3hlZCl7bGV0IGU7dHJ5e2U9YXdhaXQgYXN5bmMgZnVuY3Rpb24oQSl7cmV0dXJuIGF3YWl0IE9iamVjdC5nZXRQcm90b3R5cGVPZigoYXN5bmMgZnVuY3Rpb24oKXt9KSkuY29uc3RydWN0b3IoQSkoKX0odCtBKX1jYXRjaChBKXt0aHJvdyBBfXJldHVybiBlfWNvbnN0IG49Ik9iamVjdC5nZXRQcm90b3R5cGVPZihhc3luYyBmdW5jdGlvbigpIHt9KS5jb25zdHJ1Y3RvcihgIi5jb25jYXQoKHQrQSkucmVwbGFjZUFsbCgiYCIsIlxcYCIpLCJgKSgpIik7cmV0dXJuIG5ldyBQcm9taXNlKEE9PntvLmV4ZWN1dGUobikudGhlbihlPT5BKGUudmFsdWUpKX0pfWNvZGVJbnB1dChBKXtyZXR1cm4gQS5DT0RFfWFzeW5jIGpzQ29tbWFuZChBKXthd2FpdCB0aGlzLnJ1bkNvZGUocy50b1N0cmluZyhBLkNPREUpKX1hc3luYyBqc0NvbW1hbmRCaW5kZWQoQSl7YXdhaXQgdGhpcy5ydW5Db2RlKHMudG9TdHJpbmcoQS5DT0RFKSx0aGlzLnBhcnNlQXJndW1lbnRzKEEuQVJHUykpfWFzeW5jIGpzUmVwb3J0ZXIoQSl7cmV0dXJuIGF3YWl0IHRoaXMucnVuQ29kZShzLnRvU3RyaW5nKEEuQ09ERSkpfWFzeW5jIGpzUmVwb3J0ZXJCaW5kZWQoQSl7cmV0dXJuIGF3YWl0IHRoaXMucnVuQ29kZShzLnRvU3RyaW5nKEEuQ09ERSksdGhpcy5wYXJzZUFyZ3VtZW50cyhBLkFSR1MpKX1hc3luYyBqc0Jvb2xlYW4oQSl7Y29uc3QgZT1hd2FpdCB0aGlzLnJ1bkNvZGUocy50b1N0cmluZyhBLkNPREUpKTtyZXR1cm4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbj8oYXN5bmMoKT0+e2NvbnN0IEE9YXdhaXQgZTtyZXR1cm4gcy50b0Jvb2xlYW4oQSl9KSgpOnMudG9Cb29sZWFuKGUpfWFzeW5jIGpzQm9vbGVhbkJpbmRlZChBKXtjb25zdCBlPWF3YWl0IHRoaXMucnVuQ29kZShzLnRvU3RyaW5nKEEuQ09ERSksdGhpcy5wYXJzZUFyZ3VtZW50cyhBLkFSR1MpKTtyZXR1cm4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIGUudGhlbj8oYXN5bmMoKT0+e2NvbnN0IEE9YXdhaXQgZTtyZXR1cm4gcy50b0Jvb2xlYW4oQSl9KSgpOnMudG9Cb29sZWFuKGUpfWRlZmluZUdsb2JhbEZ1bmMoQSl7Y29uc3QgZT1zLnRvU3RyaW5nKEEuTkFNRSk7aWYoIXRoaXMuaXNMZWdhbEZ1bmNOYW1lKGUpKXRocm93IG5ldyBFcnJvcigiSWxsZWdhbCBGdW5jdGlvbiBOYW1lISIpO3tjb25zdCB0PS9eZnVuY3Rpb25ccypcKFteKV0qXClccypce1tcc1xTXSpcfSQvLG49L15cKFteKV0qXClccyo9PlxzKihce1tcc1xTXSpcfXxbXnt9XVteXG5dKikkLyxpPXMudG9TdHJpbmcoQS5DT0RFKS50cmltKCk7aWYoIXQudGVzdChpKSYmIW4udGVzdChpKSl0aHJvdyBuZXcgRXJyb3IoIkdsb2JhbCBDb2RlIG11c3QgYmUgJ2Z1bmN0aW9uJyBvciAnbGFtYmRhJyEiKTt0aGlzLmdsb2JhbEZ1bmNzLnNldChlLHtjb2RlOmksaXNCbG9ja0NvZGU6ITF9KX19ZGVmaW5lU2NyYXRjaENvZGUoQSxlKXtjb25zdCB0PXMudG9TdHJpbmcoQS5OQU1FKTtpZighdGhpcy5pc0xlZ2FsRnVuY05hbWUodCkpdGhyb3cgbmV3IEVycm9yKCJJbGxlZ2FsIEZ1bmN0aW9uIE5hbWUhIik7e2NvbnN0IEE9ZS50aHJlYWQuYmxvY2tDb250YWluZXIuZ2V0QnJhbmNoKGUudGhyZWFkLnBlZWtTdGFjaygpLDEpO3RoaXMuZ2xvYmFsRnVuY3Muc2V0KHQse2lkOkEsb3JpZ2luOmUudGFyZ2V0LmlkLGlzQmxvY2tDb2RlOiEwfSl9fWFyZ3VtZW50UmVwb3J0KEEsZSl7cmV0dXJuIGUudGhyZWFkLmpzRXh0RGF0YT9KU09OLnN0cmluZ2lmeShlLnRocmVhZC5qc0V4dERhdGEpOiJbXSJ9ZGVsZXRlR2xvYmFsRnVuYyhBKXt0aGlzLmdsb2JhbEZ1bmNzLmRlbGV0ZShzLnRvU3RyaW5nKEEuTkFNRSkpfXJldHVybkRhdGEoQSxlKXtlLnRocmVhZC5qdXN0UmVwb3J0ZWQ9QS5EQVRBLGUuc3RhY2tUaW1lck5lZWRzSW5pdCgpPyhlLnN0YXJ0U3RhY2tUaW1lcigwKSx0aGlzLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpLGUueWllbGQoKSk6ZS5zdGFja1RpbWVyRmluaXNoZWQoKXx8ZS55aWVsZCgpLGUudGhyZWFkLnN0b3BUaGlzU2NyaXB0KCl9fX0sZnVuY3Rpb24oQSxlKXtjb25zdCB0PSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVdZQUFBR0FDQVlBQUFDZU84aUpBQUFnQUVsRVFWUjRYdTJjUFpJY1NYSkdHenJ2c0RScWN3R2FyY2hUa0tmaGVXakdRNnkrUEFBMEdxbndCS09EU0FEVnFLNnVyQXozOE4rSXQ4TGEyaUxTdytOOUhtOFMyUmg4ZVhQK3o5Ly8rUGJOZVF2S1F3QUNFQWdqOE05ZnYzengzc3gwQXlUc0hSZjFJUUNCcWdRc2hUMHRabVJjZFV6b0N3SVF5Q0l3SzJtMW1CRnlWdVRzQ3dFSWRDR2dGYlJZekFpNXkwalFKd1FnVUlXQVZOQWlNU1BsS2pIVEJ3UWcwSTJBUk03RFlrYkszY2FBZmlFQWdXb0VSdVU4Skdha1hDMWUrb0VBQkxvU0dKSHpwWmlSY3RmNDZSc0NFS2hLNEVyT0w4V01sS3ZHU2w4UWdFQjNBcS9rZkNwbXBOdzlkdnFIQUFTcUV6aVQ4MU14SStYcWNkSWZCQ0N3Q29GbmN2NGtaa3NwLy9sMUZYU2NBd0lRZ01CSEF2L3doeDJSUnptYml4a1oyNFZGSlFoQW9BZUJXVW0vRlBQTTJ6SkM3akZBZEFrQkNQZ1JtQkgwdlp3L3ZERnJ4WXlVL1lLbU1nUWcwSXVBVnM1UHhZeVVlNFZQdHhDQVFGMENzM0orZjJQV2lKazM1YnFEUVdjUWdFQXVBWTJjYjIvTmFqRWo1ZHpRMlIwQ0VLaFBRQ3JuRDJMbWJibCt3SFFJQVFqMEl5QVY4M0hDUTg0LzNwaWxZdVp0dWQrQTBERUVJSkJEUUNwbnhKeVRFN3RDQUFJYkVRZ1JNMi9MRzAwVVI0VUFCRXdJU09UODQ0Mlp6eGdtM0NrQ0FRaEE0SlNBUk14SEVjVE1NRUVBQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxa01BQWhCd0pvQ1luUUZUSGdJUWdJQ1VBR0tXRW1NOUJDQUFBV2NDaU5rWk1PVWhBQUVJU0FrZ1ppa3gxcjhUK0pkdmNURCs5aVZ1TDNhQ1FEWUJ4SnlkUU9IOUk4VnJnUUY1VzFDa1JnVUNpTGxDQ2dWNjZDYmhFV1NJZW9RU2F5b1NRTXdWVTNIcWFVWDVTbEFoNnJlM1p6TUFGOGtVeGF4RnpER2NVM2JaWGNTdm9LOGtJKytjVjJLVmNoRVZteUptQmJTcWozaGYwS3JubnUycmszaXlNKzdFYW5ZdU1wOUh6Sm4wamZiT3ZxeEd4MGd2VTAwNkhYS3R4aXg5aUl3YVFNeEdJS1BMZExpMDBVeXM5b3VXelFwWlJqT3p5cnBxSGNSY05abVR2bGE0eEIyUWU0bG05Znk4dUhXWUdjc2VFYk1sVGNkYXExOW9SM1JUcFdkRXMzTm1NOXltQWx2a1ljVGNJTWlkTDNpRmVLNGtRejduS1YyeHE1QnZ4UjRRYzhWVWZ2WEVoYThWemlFWk1wRm5ncHpsekJDem5GbklFd2dnQkRPYkJCSkEwT093RWZNNHE1Q1ZDRGtFTTVza0VVRE9ZK0FSOHhpbmtGVklPUVF6bXlRVFFNN1hBU0RtYTBZaEs1QnlDR1kyS1VRQVFaK0hnWmdMRENwU0xoQUNMYVFRUU03UHNTUG1sSEg4dldsbktVZGVxczZja2tlcy9QYVJjMVFleHE4R0VYTmlVbDFrVS8zaWRPR1lPR3FsdDY0K1h4bndFSE1HOWU5N1ZwVEpLaGVrSXR1a01XdXo3U3F6WndVY01WdVJGTlRKRnNkT2x5Q2J0V0FzWEplZVpWNkp6MDV6ZVJVMllyNGlaUHpyR1JlQmdmOFpZZ1o3NC9GNVdjNDY1d3hlMW1lSTVHKzVGMksycEhsUkszTFFHZkR6TUNKejhCaXZqR3dqbVdXY3p5T25tWnFJZVlhZTRObW93V2FveDBLSnltT3NtL05WMWZLTTRGYnR6TE1aYXA1SHpCcHFpbWU4QjVwaFZvUlM3UE5HcHd5Wlo5MjhqVDZGbUVkSlRheGppQ2ZnQlR6cW5jK3pJM1NTOEtzSXZOaXR3a2M3dm9oWlMyN3dPYS9CUGJiZmZYZ0hJeGhhNXBYVERobkJibWpFUklzUXN3aVhmREZESzJlVzljUnNWanRJK0N5YldYWm5kWGRsaXBnZExjQ3dPc0oxS2oyYTJhN0N1TUkreXUrcXp1M1hkK1dNbUVjblJMak9la0IzSDFRaC9xbmx6N0xiVlJCU2tCNXp2eU43eEN5ZHZNSDFET2dnS0pZdFI4QjY5aEh6OVloOCtmc2YzNzVkTC91OTRzK3ZrdFhyckdVNDE4bVNrOGdKTVA5eVp2ZFA4TVk4eCsvcDB3eWxBMVJLdGlOZ2VROTJlMnRHekE3anprQTZRS1ZrT3dMY0EzMWtpRm5QenYxdGViZTNCT01vS0ZlQUFITFdoWUNZZGR4T24ySVFqWUZTcmowQnF6dXgwNHNLWWpZY2U2c0JQRnJhYVFnTkk2QlVRUUpXOTJLbk80R1lEUWVaQVRTRVNhbWxDSEEzWkhFaVpobXZsNnNaUGtPWWxGcUtBSGRERmlkaWx2SGkyN0lSTDhyc1JRQXh5L0pHekRKZTdtTGU2VHVhRVhyS05DRmdJZWRkN2dkaU5ocHFpNkhqaDM1R1lWQ21KQUh1eUhnc2lIbWNsZnYzNVYzZUJveVFVNllaQWNROEhoaGlIbWZGWnd3RFZwVFltNENGbkhkNGdVSE1CdmZFWXRqNGpHRVFCQ1hLRTdDNEs0ajVjOHo4N1hKUFJwOWhLKzhER2l4Q2dMc3lGZ1J2ekdPYytMNXN3SWtTRUVETVl6T0FtTWM0SVdZRFRwU0FBR0llbXdIRVBNWUpNUXM1V1Z6QXN5MTMrTVlveE4xbXVjVmM3SkEvWWpZWTZkMkh6ZUw4TXpIc2NGRm4rRlI2MW1KV2RzZ2JNUnRNN1E3RFpuRkdBOVNYSlhhNHRKY1FDaSt3bUtNZE1rYk1Ca084NnJCWm5Nc0FyN2pFRGhmM0JtVWtvMG84UnZxOUNyelNlYTU2MWY0Nll0YVN1M3R1dFdHek9JOEJWbldKRlMrdVJTWVZ1S3h5RHZWd0RqNkltQWRCdlZxMjByQlpuTVVBNlhTSkNoTFNIc0l6ZzJ3dUZtZkxQb00yVjhsemlGbEM2MlR0S3NObWNRNERuQ1lsdWx6ZURPWlpiS3pPbXRXL3lXQU9Ga0hNZzZCV2YyTzJ1alFHT0tkTFZMMjRWUmhuOGJFNmYxYi8wNE1wS0lDWUJiRE9sbllmT0t2K0RWQ2FsTWkrdU5WNVp2R3g0SkxWdThsZ0Nvb2daZ0dzVmQrYUxTNk1FVWFUTXRHWHR4dS9hRDYzVUMwNFpmVnVNcGlDSW9oWkFBc3hHOEZ5TEJOMWNTMGs0NGpoWmVrb1J2ZE5XUEhLNkQwako4UnNSTDN6NEZuMWJvUlNYU2JpMHE3QUtvTFRZNGhXM0RKNlZ3L2t4SU9JZVFMZUttOEVWcGZHQ0tXNFROUmw3YzdwQUJ2RmFwVzdJUjVHb3djUXN4SElvNHpWeGUxOGVReHhMdnZiOFNoR2ovdGt6RlgzZTVHVkZXSTJKTjlaekpZWGFBWnBsanl1ZXJiSzltb2ZyMS9QNG1ySkxlc01YcG04cW91WURhbXZNSVNXWnhoRjIrSENaWEFaNWZkcVhUWmJLMjdaNTdESVFsSURNVXRvWGF5MUdzS3NiNEdQeDdNOHp4bTZUaGN1Z3NmTU9GWmphY21yMnRsbWNocDVGakdQVUJLczJXMFlaOC9iNmNMTm5sVXdSa05MSzdPelpsWDVyRU5oQ1JjaFppR3dxK1U3RHVUTW1idGR1Sm16dnZwZGc2WnVaWGFhODZ6d3U2b3JQNHorT21JZUpTVll0OXRRenB5M3NseGVSUzQ5ODlVNXBmV3FmTzU2eGtoemxzcmZ5UVZYMzJ3cFlqWkQrYnZRam9PcFBmT1ZzQnppTVMzNTdOeWFNMm40YWZZeFBmeVRZcHB6SU9YUEJCQ3owNlR1TnFEYTgxYVVpOU5JdkN5cjRWZU5uZVlNVjZ5cm5mR3FYNnRmUjh4V0pCL3E3RGFrMnZQdWV2RWV4MDdEcnhJN1RmOVhWNi9TK2E1NnRmNTF4R3hOOUs3ZVRzT3FQZXZPbCs5KzlLVDhLbkdUOWo1NjVTcWRjYlJucTNXSTJZcGt3UGUyMnhZVkIxWjdPU3VleFhFa3pENW5WT0Ntelh5RWI0WHpqZlRwdFFZeGU1SDlWWGVYNGRXZWMvY0xxSDFyenVhbXpYdmt1bVdmYmFSSDd6V0kyWm13NXdBZnJWY1pZdTA1cS9UdlBBWkQ1U1VNczdoSmVodzY5Sk5GV1dmVDl1dnhIR0wyb1BwUWM0ZGgxcDZSUy9oN1dDUU1NN2hKK3ROZXE0eHphWHYxZkE0eGU5SzlxeDB4MUpsdjBOcnpjUkVSYytXZm5RVHA0ZE0yaURtSXZGWmMydmFpaGFjOVgzU2ZXcDRSejBrWVpuQ1Q5S2ZobFhFbVRaOFJ6eURtQ01xLzl2QWU3TWVqUkErNjVuelJQUWJHTGQ1S3dpK0RtNlEvNmVFenppUHRNWEk5WW82ay9YMHZ6K0ZHek1GaEdtOG5tWTBNa1VuNms2REpPSXVrdjR5MWlEbUJ1dGVBSSthRU1BMjNsTXhGaHN3ay9ZMWl5VGpIYUcrWjZ4QnpFbjJQSVVmTVNXRWFiU3VaaVF5aFNmb2JRWkp4aHBHK0txeEJ6SWtwV0E4NllrNE0wMkJyeVR4a1NFM1MzeFdPalA2dmVxcjA2NGc1T1EzTFlVZk15V0ZPYmkrWmhReXhTZnA3aFNLajk4bG93aDlIek9ISVAyOW9OZkNJdVVDWUV5MUk1aUJEYnBMK3pqQms5RDBSU2RxamlEa04vY2VOTFlZZU1SY0pVOW1HWkFZeUJDZnBEekVyaCtEWFk0aDVqcC81MHhiRGYyc3ErdkpxZTQvdTB6dzBvNElTZmhuTUpQMGg1cm1oUU14ei9GeWV0cmdBUjJQUmwxZmJkM1NmTHFFWkZKWHd5MkFtNlE4eHp3MEVZcDdqNS9aMHgwdWc3VGxETW03QlRSU1c4TXRnSnVrUE1VOE13dmRIRWZNY1A3ZW5PMTRDYmM4WmtuRUxicUt3aEY4R00wbC9pSGxpRUJEekhEelBwenRlQW0zUEdaTHh6RTViVzhJdmc1bWtQOFNzbllLZnovSEdQTWZQN2VtT2wwRGJjNFprM0lLYktDemhsOEZNMGg5aW5oZ0V4RHdIei9OcGkwdHc5QmQ1Z2JVOVIvYm9tZGxzYlFtL0RHYVMvaER6M0RUd3hqekh6L1hwYmhkQjIyK0daRnlEVXhhWDhNdGdKdWtQTVN1SDROZGppSG1Pbit2VDNTNkN0dDhNeWJnR3B5Z3VaWmZCVE5yak13d1pmU3ZpU0g4RU1hZEhjTjVBeDR1ZzZabkxLdjk3dWpPWWFiSjluTzZNdmd0ZjhkUFdFSFBoMURwZUJFM1BYRmJFWFBnYXByU0dtRk93ajIycWtWejJHNHFtWjhTTW1NZHV4RDZyRUhQaHJEV1NROHlGQTMzUm1qVHJqSCtZU1h2a0c3TitGaEd6bnAzN2t4MHZncWJuRE1tNGh5ZmNRTW90ZzVtMFI4UXNISUs3NVloWno4Nzl5WTRYUWROemhtVGN3eE51SU9VV3pVemFIMUlXRHNERGNzUTh4OC8xNlk2WFFkTnp0R1JjUTFNV2wzS0xaaWJ0RHpFckIrSFhZNGg1anAvcjB4MHZnNmJuYU1tNGhxWXNMdVVXelV6YUgySldEZ0ppbmdNWDhYVEh5NkRwT1ZveUVkbEo5NUJ5aTJZbTdROHhTeWZnNDNyZW1PZjR1VDdkOFRKb2VvNldqR3RveXVKU2J0SE1wUDBoWnVVZzhNWThCeTdpNlk2WFFkTnp0R1Fpc3BQdUllVVd6VXphSDJLV1RnQnZ6SFBFQXAvdWVCazBQVWRMSmpEQzRhMmszS0taU2Z0RHpNUFJQMTNJcDR3NWZxNVBkN3dNbXA2akplTWFtcks0aEZzR0wwbC9ad2d5K2xiR2tmNFlZazZQNEx5QmpwZEIwek1YVnZhdlpHZncwdVQ2T05rWmZSZSszaTliUTh5RmsrdDRHVFE5YzJFUmMrRnJtTklhWWs3QlByYXBSbkxaYnltYW5uY1hzNVJaQmk5cGozeGpIcnZqWjZzUTh4dy85NmU3WFFoTnZ4bWljUTlPc0lHVVdUUXZhWDk4WXhhRWY3SVVNYzh6ZEsxZ2NTa2lMN0ttMzhqK1hNTlNGcGN5aStZbDdZKzNaZVVnM0QyR21PY1p1bGJvZGlrMC9VYUx4alV3UlhFcHMyaGUwdjRRczJJSUhoNUJ6UE1NWFN0MHZCU2FucU5sNHhxYXNMaVVWelFyYVgrSVdUZ0FUNVlqNW5tR3JoVTZYZ3BOejlHeWNRMU5XRnpLSzVxVnREL0VMQndBeER3UExMcEN4MHVoNlRsYU50RTV2dHBQeWl1YWxiUS94RHcvWGJ3eHp6TjByZER4VW1oNmpwYU5hMmlDNGxKV0daeWtQU0ptd1FDY0xFWE04d3hkSzNTOEZKcWVNNFRqR3R4Z2NTbXJERTdTSGhIellQZ3ZsaUhtZVlhdUZUcGVDazNQR2NKeERXNnd1SlJWQmlkcGo0aDVNSHpFUEE4cXEwTEhTNkhwT1VNNFdabmU3eXRsbGNGSjJpTmlucDhzM3BqbkdicFc2SGdwTkQxbkNNYzF1TUhpVWxiUm5LVDluUjA3dXU5Qi9HV1hJZWF5MGZ4c3pPSmlSRjhLVGMvUlBWYUpYY29xbXBPMFA5NldiU1lMTWR0d2RLdlM4V0pvZW80V2psdGd3c0pTVnRHY3BQMGhadUVBbkN4SHpEWWMzYXAwdkJpYW5xT0Y0eGFZb0hBSFRwb2VIeEhzbUsxZ0RKNHVSY3l6QkoyZjczZ3hORDN2ZUhrN2NOTDBpSmpucFlDWTV4bTZWdWg0TVRROUkrYnJNY3BncE1rU01WOW5lYlVDTVY4UlN2NzFqaGREMDNPR2RKS2pGZjlnTjRPUkprdkVQRDlaaUhtZW9XdUZqaGREMDNPR2RGeURHeWd1NVpUQlNOb2pQL3diQ0g1Z0NXSWVnSlM1cE9QRjBQU2NJWjNNWEkrOXBaeWlHVW43TytNWjNYZDJyaGI3STJZTGlvNDFMQzVIOU1YUTlCemRvMk5rUTZVN01OTDB5R2VNb2ZndkZ5SG1TMFQ1QzdwZEVFMi9pUGw2enFJWmFYSkV6TmM1anF4QXpDT1VrdGQwdkNEU25xT2xreHlwK0RQRzBXODBJMm1HZkYrMm15ckViTWZTclZMSEN5THRPVm82Ym1FTkZwYnlRY3lEWUJkWmhwZ2JCS201eE5tL3BaVDJqSmhmRDJJR0gybUd2REhieVFReDI3RjBxOVR4Z21oNnpwQ1BXMmdYaGFWOE10aEllMFRNZHRPRW1PMVl1bFhxZUVFMFBXZkl4eTIwRjRXN3NOSDBtZjA3dFl3OFBmWkV6QjVVald0MnZDQ2FuaEh6K2VCa3NORmtpSmh0TGo5aXR1SG9XcVhqQmRIMG5DRWYxK0JPaW5kZ28rbVJUeGwyMDRTWTdWaTZWYks0Sk5IUzAvWWMzYWRiYU0wL1pXanp1ei8yRGxsNnpROWk5aUpyV0xmakpkSDJ2TU5sbHJMSllDTHRrYmRsd3d2L3ZSUml0dVhwVXEzckpkSDBuU0VobDlBYWY4WTRXdGRreC9kbHUwbEN6SFlzM1NwMXZTU2F2aEh6NXpIS1lLTEpEakhiS1FBeDI3RjBxMlJ4U1k3bW9pKzRwdS9vSHQxQzQ0MDVmTjZpcy9UY0R6RjcwaldzclpGYzlodU10dWRWNWF6aGtjVkMwMnYydkJsZXQvUlNpRGs5Z3JFR09sNFViYzlaTWhwTFFyOUt3eU9EaGFiUFoxUXlldGVuVSt0SnhGd3JqOU51TEM1THhrWFI5cDNScStjb2RPS2c3WlUzWnJzSlFzeDJMRjByV1Z5V0RObHArODdvMVRQQVRoeTB2ZDd6V3kwL3o5bDRWaHN4UnhOWDd0ZjFzc3owdmRMbDFuRElPcittVjk2V2xSZjc1REhFYk12VHJWcm55Nkx0UFV0TTFpRjJPNysyWDk2WTdTWUhNZHV4ZEsxa2NWbU9Cak5rTjlON1JyL1dRV3JQbjNGMmJhKzhNZHRPRFdLMjVlbGF6ZUxTZEx6c0dUMWJCcW5KTGV2TW1sNlJzdVcwL0t5Rm1PMlp1bFhzZkdsbWU4OFMxV3lZMm5Obm5WZmJMNTh4WmlmbDQvT0kyWmFuYTdYdWwyYTIveXhaYVVQVm5qZnpuTnFlRWJOMlNwNC9oNWh0ZWJwVzYzNXBadnZQRkpZbVdPMTVzODZwN1pkUEdacnBlUDBNWXJabjZsWnhoWXN6ZTRZc2FVbEQxWjR6ODN6YW5oR3pkRHF1MXlQbWEwWmxWcXh3Y1N6T2tDbXZrV0dZT1dQbTJXYjZ2bkhKN0g4a215NXJFSE9YcEg3MXVjTGxzVGpEZ2FPaUJHYk9sbjJlbWQ0UnM2MUlFTE10VC9kcXExd2VpM05Vay9Qc21UTEZQTnM3WXJhOStvalpscWQ3dFpVdUVHZjVQUzZaVWo2NldDa0w5MHNZc0FGaURvQnN1Y1ZLRjhqcUxObHZheGJuV0VITTJXZXd2R2ZadFJCemRnS0svVmNRd2UzWUZtZTVSeGdwQjZ2ZUkzdCtObTZybkVOeGxjbytncGpMUm5QZTJHb1h5ZW84RVlLMjdqVmJ5bnpHcUNrQXhGd3psNWRkV2NtaGdoUzgzcHd0SkczRitTek1Ldnd0emxubExBMnY4OU9XRVhQREpDMHUwbkhzYXBmSjZsd2prVDZlUFhMdlN1eXR6bDF0bGtabW9QSWF4Rnc1blJlOXJYcWhyTTVWT2RaS0VyUGlYZWxNbGJNZjdRMHhqNUlxdG03bEMyVjF0bUtSL1dpbmtzQ3NPRmM2VThYTU5UMGhaZzIxQXM5WVhhcHFzcmhIYTNuR0FwR1ZrdkxCdzRvdllyYWZMc1JzenpTczRnNFh5K3FNWWFFODJhaXF1S3pZVmoxZlp1YXpleVBtV1lLSnoxdGRyTXB2elpadmR0RlJWUmJXTHJNVG5iblZmb2paaW1SU0hhc0xWbGtpTjdSV1o0MklxanBQSzViVnp4bVJ0Y2NlaU5tRGFtQk5xd3RXL2EyNXc3Zm5McExhY1dZQ3I2VEpWb2paQkdOZUVjdEwxa25PbFQ1eGRCR3k5ZTg4dXAwNzc1YktkMGJNY21ibG5yQ1VjOGZMWm5uK2tYQTdNcktXY3JkL2lJL2tXbWtOWXE2VWhySVhhekVobm85QmRPYnhPRkpXczdJU0UrVzFjMzBNTWJ2aWpTdHVkZUZ1SGE5MDhVYllySFRlczZrYjRUQTZzVHZ3R21YaHNRNHhlMUJOcUdsNTZmaHRha0tBemxzeUg4NkFqY3NqWm1PZ21lVzRmSm4wYSs5dE9SdThMZnRualpqOUdZZnRZSG41VnZ5a0VSWkVzWTJzNXdJeCt3ZU1tUDBaaCs1Z2ZRbjVyQkVhbjh0bWxqT0JsRjBpK2xRVU1jZHdEdDNGOGlJaTV0RG96RGRqRnN5UmhoUkV6Q0dZWXpleHZveklPVFkvcTkyczU0QzNaYXRrcnVzZzVtdEdMVmRZWDByazNHOE1yR2NBTWNmTkFHS09ZeDI2ay9XbDVJZUJvZkZOYjJhZFAxS2Vqa1JVQURHTGNQVmFiSDA1a1hPUC9LMXpSOHJ4dVNQbWVPYWhPMXBmVXVRY0dwOTRNNCs4RWJNNGh1a0hFUE0wd3ZvRlBDNHIzNXpyNWU2Uk0xTE95Umt4NTNBUDNkWGp3dkxtSEJyaDVXWmVHU1BtUy9RdUN4Q3pDOVo2UmIwdUxtL08rVmw3Wll1VTg3SkZ6SG5zdzNmMnVzRElPVHpLOXcyOU1rWEtlWmtlT3lQbVhQN2h1M3RkWk9RY0h1VWJXY1l6ajlvUk1VZVJMcktQNTJWR3pqRWhrMkVNNTh4ZEVITW0vYVM5dlM4Mmd2WUwxanM3UG1INFpTZXBqSmdsdEJaYTYzM0JrYlA5c0hobmhwVHRNOU5XUk14YWNnczg1MzNSa2JQTmtFVGtSRlkyV1ZsVlFjeFdKSnZXNGRMWERvNThhdWZqMVIxaTlpTGJxQzZYdjE1WVVabndwbHd2KzZNanhGd3psL0N1RUVFNDhxY2JSdWFBbEd0ay9xd0x4RnczbS9ET2tFSTQ4Zzhid2orWGY2WGRFWE9sTkFyMEVpMEgzdHJlWFA5RmtiT1I0azlnRkxoc0wxcEF6TFh6U2VrT09mdGp6MkI4T3hWUzlzOTNkZ2ZFUEV0dzBlY1JoMzJ3bVV5UnNuMmVuaFVSc3lmZDVyV3pSYkxDbTEwMncvc1JYSUZuOHlzMTNENWlIa2ExNThJcVl1a2lsU3E4SHFlMUM3ODliOW5uVXlObUp1R1NRRFhaVkpKTU5UWUkrWEtjV3l4QXpDMWlxdEZrVlFsRmlicnErZm1URnpYdWgyVVhpTm1TNWdhMXVzbHA5SWRlWGMrRmxOZThkSWg1elZ4ZFQ3V2F4RnhoQlJlUCt0MUQ4TEcyMnc0eGJ4ZTUzWUVSdEIxTGkwcEkyWUppalJxSXVVWU9iYnRBenZuUkllVDhES3c3UU16V1JEZXRoNkJ6Z2tmS09keTlkMFhNM29RM3FvK2M0OEpHeUhHc00zWkN6Qm5VRjk4VFFmc0ZqSkQ5MkZhcWpKZ3JwYkZZTHdqYU5sQ2tiTXV6Y2pYRVhEbWRSWHBEMEhOQkl1UTVmaDJmUnN3ZFUydmFNNEllRHc0Wmo3TmFjU1ZpWGpIVndtZEN6cS9EUWNpRmh6ZXdOY1FjQ0p1dFBoSkEwajk1SUdOdXhpTUJ4TXhNbENDd202U1JjWW14SzlzRVlpNGJ6WjZOclNwb1JMem5QR3RQalppMTVIak9uVUJuU1NOaTkvRlllZ1BFdkhTOGF4MnVxcWlSOEZwelZ1RTBpTGxDQ3ZTZ0poQXRheVNzam9vSEJRUVFzd0FXUy9zU3VCSTR3dTJiN1lxZEkrWVZVK1ZNRUlCQWF3S0l1WFY4TkE4QkNLeElBREd2bUNwbmdnQUVXaE5Bekszam8za0lRR0JGQW9oNXhWUTVFd1FnMEpvQVltNGRIODFEQUFJckVrRE1LNmJLbVNBQWdkWUVFSFByK0dnZUFoQllrUUJpWGpGVnpnUUJDTFFtSUJiemY3ejl6N2QvK3VNdnc0Zis4K3Z3VWhaQ0FBSVFnTUIzQWhJeC8vZlgvMzM3SWhYelFSazVNMnNRZ0FBRXhnaElwSHhVUk14alhGa0ZBUWhBUUUwZ1RNeThOYXN6NGtFSVFHQWpBbElwVDcweEkrYU5Kb3VqUWdBQ2FnSlRZajUybGZ3QThOWWwzNXJWZWZFZ0JDQ3dPQUd0bEE4c1AzNzRweFV6Yjg2TFR4Ykhnd0FFVkFRMFVyNTl4dmdnWnVTczRzOURFSUFBQkQ0UW1KV3ltWmg1YzJZeUlRQUJDTWordlBJanIrT1B5ZDMrOC80cDQvWi9hTDQxMzIvQWQyZkdFd0lRMkkyQTlpMzV4dWxleXAvZW1HYytaendHZ2FCM0cwM09DNEg5Q013S2VWak1sbkplUFNiKzRiTjZ3cHpQaW9DVndLejZxVlRuOFczNTZSdXoxU2VOU2dlUDZnVlJSNUZtbjhvRWtQQjRPcytrL0ZMTXZEbVB3MzIyRWtuUDhlUHBYZ1NRc1R5dk15a2paamxMMVJOSVdvV05oeG9RUU1qNmtOUmk1cTFaRDUyM2FGdDJWS3RGQUNIUDVmRkt5cGR2elBkYnovNHh1cmxqclBVMGI5QnI1Ym5UYVJEeVhOcFhRcjVWLy9Ubm1GOXRpNXpuUXJsL0dqbmJzYVNTUHdHRVBNOTRWTXFpTitaYlc4aDVQaUFFYmN1UWFyNEVrUEk4WDRtVVZXSkcwUE1oUFZiZzdkbWVLUlZ0Q0NEbE9ZNVNJYXMrWlR4cmtUZm91ZUJ1VHlObkc0NVVzU0dBa09jNGFvWDhMdWJqZjl6KzZzKzVWblIvcC9Qc25pczlqNXhYU3JQdldaQ3lMcnRaR2Q5Mi9iZTNmL3p5eFZMTWo4ZmhiVm9lTUhLV00rTUpPd0pJZVp5bGxZZ2ZkM1FYOC9nUmU2NzgxLy84Njl0Ly9mdi9tVGVQbk0yUlVuQ0FnSmVVdlFRMmNLU1dTeEN6WVd6V2trYk9odUZRNnBLQXRaU1I4U1h5MHdYdll2YjhuS0Z2cisrVFZwOXdrSFBmR2VqV3VaV1lFZkpjOG9lVWp3by8vZ3N4ejhGODlyVFZHelJ5dHMrR2loOEpXRWdaSWR0TUZXSzI0WGhaeGVMdEdUbGZZbWFCa3NDc2xCR3lFdnpKWTUvRXpGdXpMZURIYWpPQ1JzeSsyZXhhSFNuWFN2NG01UStmTWhDemYwakkyWjh4TzR3UlFNcGpuQ0pYbllvWk9mdkhnSno5R2JQRGF3Skl1ZDZFM0V2NTB4c3pZbzRKRERuSGNHYVh6d1NRY3MycHVCUXpjbzRKVGl0bnZqZkg1TFBxTGpOaTVnZDlQbFB4S09XbmI4eTNyYTMrL2d5Zm8vU3ZxaFh6Y1hMazNELy9qQk1nNVF6cXIvZDhKbVhFbkp3VGNrNE9ZS1B0a1hMTnNNVmk1cE5HVEpESU9ZYnp6cnNnNVpycG4wbjU1UnN6bnpUaXdrVE9jYXgzMndrcDEwejhsWlNIeE15YmMweXdXam56dlRrbW40Njd6RWo1T0M4LzdQTkovVXJLdzJMbTdka25vUHVxV2pFZk5aQ3pmejdkZGtESzlSSWJFZkt0Ni9lL3hHajBHUHhwalZGUzhuWElXYzZNSjU0VG1CRXpiOHIyVXlXUnN2aU4rYjVkQkcwZjNsRVJPZnR3M2FrcVVxNlR0bFRJNmpkbTVPd2ZPbkwyWjd6cURraTVUckphS1UrOU1UOGVuemRvMjRIUXlwbnZ6Ylk1ZEtxR2xQUFRtcEh4ZmZmaWI4eWpSMGZVbzZTZXI5T0srYWlHbk9mWWQzd2FLZWVrWmlYaXgrN2R4SnlES1c3WGlIL3dJT2U0UER2dk5DUGw0OXhSUCt6emtsam43TTU2Ujh3R3FYcEtHamtiQkxSd2ljcFNSc1Q2d1VQTWVuWlBuL1NRdEZiT2ZOSXdEcmRZdVlwU1JzWTJRNEtZYlRoK3FtSXBhSzJZK2Q3c0ZHNlJzak5pOXZoOGdaVHRCZ014MjdGMGZZTkd6czVCTlN0ZlNjb0kyWDU0RUxNOVU3ZTNaK1FjRUZhRExhcElHU0g3RFF0aTltUDdvYkxWcHcza0hCUlkwVzJRY3RGZ2pOdEN6TVpBWDVXcklHZStPd2NHYnJqVmpKQ1BOaXkvS2ZPbWJCanNTU25FN00vWS9NMTU1cTM1MWd4L1lpTTRlT1YyczBLK2JXc2xacVNzREZMNEdHSVdBck5ZYnZIbWJDSG4rN01nYW90a2JXcFl5UmdwMitTUlVRVXhaMUQvdm1kRk9TZWhZRnRIQXJ3cE84SjFMSTJZSGVGZWxVYk9WNFQ0OVJrQ1NIbUdYdTZ6aURtWFAyL095ZnhYM2Q1S3lnY2Z2aXZIVHdsaWptZithVWZlbkF1RXNGQUxTTGwvbUlpNVFJWVdZajZPWWYwRHdRSm9hRUZJQUNrTGdSVmRqcGlMQklPY2l3VFJ1QTJrM0RpOGg5WVJjNkVza1hPaE1KcTFncFNiQlhiUkxtSXVsbUlMUmRVQUFBSGFTVVJCVktlVm5QbTBVU3hZcDNZc2hjd1ArcHhDVXBSRnpBcG8zbzhnWjIvQy9ldGJDeGtwMTVvSnhGd3JqeC9kV0lyNS9uajhjTEJnMk1LV1BJUjhhNEUvRmljTXczRTVZbmFFTzFQYVM4NjNucEQwVERxeHozcktHQ25IWmptNkcySWVKWld3emx2T0NVZGl5NElFZUZPdUZ3cGlycGZKaDQ2UWMvR0FtcmVIbEdzR2lKaHI1dkxlRldJdUhsRGo5cEJ5M2ZBUWM5MXNrSE9EYkxxMmlKUnJKNGVZYStlRG5KdmswNmxOcEZ3L0xjUmNQeVBrM0NpajZxMGk1ZW9KL2V3UE1mZklDVGszeTZscXU0aTVhaklmKzBMTVBYSkN6TTF5cXRndVVxNll5dk9lRUhPZnJKQnp3NnlxdEl5VXF5UXgxZ2RpSHVOVWJoVi9qSzVjSkdVYlFzcGxvemx0RERIM3k0dzM1OGFaUmJlT2xLT0oyK3lIbUcwNHBsWGh6VGtOZmZtTmtYTDVpSGhqN2h2UmRlZkkrWnJSYml1UWN1L0VlV1B1bmQrUDdoSHpBaUVhSGdFcEc4Sk1Lb1dZazhCYmI0dWNyWW4yckllVWUrYjIyRFZpWGlOSDNwd1h5bEY3RktTc0pWZnZPY1JjTDVQcGpuaDdua2JZcmdCU2JoZlp5NFlSODFwNXZwOEdPUzhhN01PeEVQS2FPU1BtTlhORjBJdm5laHdQS2E4Yk1tSmVOOXNQSitNTmVwMmdFZkk2V1o2ZEJER3ZuL0duRXlMcGZxRWo0MzZaelhTTW1HZm9MZmdzMHM0TEZmbm1zYSsyOC84RHNubzlTVEpvekJrQUFBQUFTVVZPUks1Q1lJST0iO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QSx0aGlzLm1lc3NhZ2VRdWV1ZT1bXSx0aGlzLnJlY29yZGluZz1bXSx0aGlzLmxvZ3M9W10sdGhpcy5yZWNvcmRpbmdEZWxheT0xZTN9Z2V0SW5mbygpe3JldHVybntpZDoib2RkTWVzc2FnZSIsbmFtZToiT2RkIE1lc3NhZ2VzIixtZW51SWNvblVSSTp0LGJsb2NrSWNvblVSSTp0LGNvbG9yMToiI0JFMDBGRiIsYmxvY2tzOlt7b3Bjb2RlOiJlbWl0IixibG9ja1R5cGU6ImNvbW1hbmQiLHRleHQ6ImVtaXQgW2FdIFtiXSIsYXJndW1lbnRzOnthOnt0eXBlOiJzdHJpbmciLGRlZmF1bHRWYWx1ZToibWVzc2FnZSJ9LGI6e3R5cGU6InN0cmluZyIsZGVmYXVsdFZhbHVlOiJkYXRhIn19fSx7b3Bjb2RlOiJvbiIsYmxvY2tUeXBlOiJoYXQiLHRleHQ6Im9uIFthXSBzZXQgW2JdIixhcmd1bWVudHM6e2E6e3R5cGU6InN0cmluZyIsZGVmYXVsdFZhbHVlOiJtZXNzYWdlIn0sYjp7dHlwZToic3RyaW5nIixtZW51OiJ2YXJpYWJsZXMifX19LCItLS0iLHtvcGNvZGU6IndoZW5WYXJDaGFuZ2UiLGJsb2NrVHlwZToiaGF0Iix0ZXh0OiJ3aGVuIFthXSBjaGFuZ2VzIixhcmd1bWVudHM6e2E6e3R5cGU6InN0cmluZyIsbWVudToidmFyaWFibGVzIn19fSx7b3Bjb2RlOiJyZWNvcmRWYXIiLGJsb2NrVHlwZToiY29tbWFuZCIsdGV4dDoicmVjb3JkIFthXSBpbiBsaXN0IFtiXSIsYXJndW1lbnRzOnthOnt0eXBlOiJzdHJpbmciLG1lbnU6InZhcmlhYmxlcyJ9LGI6e3R5cGU6InN0cmluZyIsbWVudToibGlzdHMifX19LHtvcGNvZGU6InN0b3BSZWNvcmRpbmciLGJsb2NrVHlwZToiY29tbWFuZCIsdGV4dDoic3RvcCByZWNvcmRpbmcgW2FdIixhcmd1bWVudHM6e2E6e3R5cGU6InN0cmluZyIsbWVudToidmFyaWFibGVzIn19fSx7b3Bjb2RlOiJzZXRSZWNvcmRpbmdEZWxheSIsYmxvY2tUeXBlOiJjb21tYW5kIix0ZXh0OiJzZXQgcmVjb3JkaW5nIGRlbGF5IHRvIFthXSIsYXJndW1lbnRzOnthOnt0eXBlOiJudW1iZXIiLGRlZmF1bHRWYWx1ZToxZTN9fX0sIi0tLSIse29wY29kZToibG9nVG9KU09OIixibG9ja1R5cGU6InJlcG9ydGVyIix0ZXh0OiJsaXN0IGxvZ3MifSx7b3Bjb2RlOiJsb2ciLGJsb2NrVHlwZToiY29tbWFuZCIsdGV4dDoibG9nIFthXSBhcyBbYl0iLGFyZ3VtZW50czp7YTp7dHlwZToic3RyaW5nIixkZWZhdWx0VmFsdWU6Im1lc3NhZ2UifSxiOnt0eXBlOiJzdHJpbmciLGRlZmF1bHRWYWx1ZToid2FybiJ9fX0se29wY29kZToibG9nQ2xlYXIiLGJsb2NrVHlwZToiY29tbWFuZCIsdGV4dDoiY2xlYXIgbG9ncyJ9LHtvcGNvZGU6ImxvZ1RvQXJyYXkiLGJsb2NrVHlwZToicmVwb3J0ZXIiLHRleHQ6IiNbbl0gbG9nIGFzIGFycmF5Iixhcmd1bWVudHM6e246e3R5cGU6Im51bWJlciIsZGVmYXVsdFZhbHVlOjB9fX1dLG1lbnVzOnt2YXJpYWJsZXM6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczoiX2dldFZhcmlhYmxlTWVudSJ9LGxpc3RzOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6Il9nZXRMaXN0TWVudSJ9fX19X2dldFZhcmlhYmxlTWVudSgpe2NvbnN0IEE9dGhpcy5ydW50aW1lLmdldEFsbFZhck5hbWVzT2ZUeXBlKCIiKTtyZXR1cm4gMD09QS5sZW5ndGg/WyIgIl06QX1fZ2V0TGlzdE1lbnUoKXtjb25zdCBBPXRoaXMucnVudGltZS5nZXRBbGxWYXJOYW1lc09mVHlwZSgibGlzdCIpO3JldHVybiAwPT1BLmxlbmd0aD9bIiAiXTpBfWxvZyhBKXtsZXR7YTplLGI6dH09QTt0aGlzLmxvZ3MucHVzaCh7bG9nOmUsdHlwZTp0fSl9bG9nQ2xlYXIoKXt0aGlzLmxvZ3M9W119bG9nVG9BcnJheShBKXtsZXR7bjplfT1BLHQ9dGhpcy5sb2dzW2VdO3JldHVybiB0P0pTT04uc3RyaW5naWZ5KFt0LmxvZyx0LnR5cGVdKToiW10ifWxvZ1RvSlNPTigpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLmxvZ3MpfWVtaXQoQSl7bGV0e2E6ZSxiOnR9PUE7dGhpcy5tZXNzYWdlUXVldWUucHVzaChbZSx0XSl9b24oQSl7bGV0e2E6ZSxiOnR9PUE7aWYoMD09dGhpcy5tZXNzYWdlUXVldWUubGVuZ3RoKXJldHVybiExO2lmKHRoaXMubWVzc2FnZVF1ZXVlWzBdWzBdPT1lKXtjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO2lmKCFBKXJldHVybiEwO2NvbnN0IGU9QS5sb29rdXBWYXJpYWJsZUJ5TmFtZUFuZFR5cGUodCk7cmV0dXJuIWV8fChlLnZhbHVlPXRoaXMubWVzc2FnZVF1ZXVlWzBdWzFdLHRoaXMubWVzc2FnZVF1ZXVlLnNoaWZ0KCksITApfXJldHVybiExfWFzeW5jIHdoZW5WYXJDaGFuZ2UoQSl7bGV0e2E6ZX09QTtpZighdGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKGUpKXJldHVybiExO2xldCB0PXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZShlKS52YWx1ZTtyZXR1cm4gYXdhaXQgbmV3IFByb21pc2UoQT0+e3NldFRpbWVvdXQoQSwxMDApfSksdCE9dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKGUpLnZhbHVlfWFzeW5jIHJlY29yZFZhcihBKXtsZXR7YTplLGI6dH09QTtpZih0aGlzLnJlY29yZGluZy5pbmNsdWRlcyhlKSlyZXR1cm47Y29uc3Qgbj1hc3luYyBBPT57YXdhaXQgbmV3IFByb21pc2UoZT0+c2V0VGltZW91dChlLEEpKX07Zm9yKHRoaXMucmVjb3JkaW5nLnB1c2goZSk7dGhpcy5yZWNvcmRpbmcuaW5jbHVkZXMoZSk7KXthd2FpdCBuKHRoaXMucmVjb3JkaW5nRGVsYXkpO2xldCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpLmxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZShlKS52YWx1ZTt0aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKS5sb29rdXBWYXJpYWJsZUJ5TmFtZUFuZFR5cGUodCwibGlzdCIpLnZhbHVlLnB1c2goQSl9fXN0b3BSZWNvcmRpbmcoQSl7bGV0e2E6ZX09QTt0aGlzLnJlY29yZGluZy5pbmNsdWRlcyhlKSYmdGhpcy5yZWNvcmRpbmcuc3BsaWNlKHRoaXMucmVjb3JkaW5nLmluZGV4T2YoZSksMSl9c2V0UmVjb3JkaW5nRGVsYXkoQSl7bGV0e2E6ZX09QTt0aGlzLnJlY29yZGluZ0RlbGF5PWV9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49e0Jsb2NrVHlwZTp0KDEpLEFyZ3VtZW50VHlwZTp0KDMpLFRhcmdldFR5cGU6dCgxMyl9LGk9dCgyKTt2YXIgcj17dmFyaWFibGVzOnt9fTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUF9Z2V0SW5mbygpe3JldHVybntpZDoibG1zdXRpbHNibG9ja3MiLG5hbWU6IkxNUyBVdGlsaXRpZXMiLGNvbG9yMToiIzFjZDZmZiIsY29sb3IyOiIjMWNiYmZmIixjb2xvcjM6IiMxY2JiZmYiLGJsb2NrSWNvblVSSToiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFWNEFBQUZlQ0FZQUFBRE5LM2NhQUFBQUJtSkxSMFFBL3dEL0FQK2d2YWVUQUFBdjJFbEVRVlI0MnUyZEI1aFVWZEtHZTNMT3VTZUNZRUpSUVdWZCtSRVFRUVVEaWdrTXFJaW9LT3F1b21EQWpCZ1FzeUNpSUlxb21MTmdBQ1dOcExHN0IwWUVZYzJKWUFCQjZxKzYwK0FBRXpyZDAvZmMrOVh6dkE4cnE5Tjl6OVQ1K25TZENpNFhES2JRMnRSUlVtVXR0U3J6MEtITU1jeVpaVjRhVnVxbG01bUh5cjMwSFAvZExQNjdhai9MK1o5WDhwOWZNci80K1kwaFA3ODErUHN2L2YvdThoMy92WTltOHMrZEpqOWJYa05leTNqTit0YytWTjZMdkNmOFptQXdtTGJXc1pvU0tsWlE2d29QZFM3MTBDa3NkTU5aNEI1alFYM1BMNHBiRzRpbWxSRGhyaTczMFhUK2N6UUw5bUMzajQ2cjhGRkhkeldsNGpjTGc4RXNZZVcxNUhaN3FZZHhpdlRTWlA4cGM3TkZoVFVjdHZvL05GN2pQMGZKQndwL3NMUnpFY1hDQzJBd21EbEdGQ05DdzhJemlMK3VQMXp1b1RuOHY5ZlpVR0NEWlIydngyeFpFMWtiWHFOOVphM2dNREFZTExSd0FYL0ZscE9zLzZ2M2p4RFpnTm5nRDZ1TU1yNE5yS1VVZUJRTUJ0dk5SQnhZS0k1bXdiaVhoV01lOHhjRU5HTElXczdsOE1UZC9DSFdDMElNZ3puWTVBSk1McEQ4SjlvTkVFaGwvR0djaVBuU1ViNVZ3Qk5oTUp1ZmFqa1cyWnMzL0lQTUZ4QkF5MURIM3pZZTREK1B4V2tZQnJPQlNYNnFwRVQ1TXc3V1ErU3NmeHFXekFuK2dEd2JLV3d3bUU1R0ZDYzV0Skk3aTh3RHZUTW01QU5UUGpqYmVTZ1JqZzJEV1U5c1kvank1c2hTSHozaEx3U0FjTm1MbjVtSnBiWFVEZWxxTUZpVXJjcER4VVpsR0dLMlRvc0pqM0xYVURsMkFBeW03blFiSy9taC9td0VwSDA1bDYyU0hTRlZkSzRQS0I0YkF3WXp3YVE4bDlPL2J1QU45eFZFQit6Q2F2R05TaStWWUtmQVlCR3dzbHBxNzc4byt4TUNBMXBnczVIQjRxUDlzWE5nc0JETXlFeVFwaXhlMmdaQkFjRWkvVFFrSXdLWGNUQllDeVpwUTBZclJSOHRnSGlBQ0xGVUtoU3JWbEV5ZGhnTTFzQ2swSUhEQ1pmeEp2a2FRZ0ZNd1VOcldZQ0hvdWs3elBFbVhjQ2tTc2svWFFIaUFGU3dScnJPUVlCaHpqTk9DZk5QWjZpREVJQW9aa0lNUmlvYXpFbUN1eHdiSDFpRUx3MEI1bEp6YkZDWTdjdy9JcWNHR3gxWTlSS09Ed1hkc1ZOaHRqQysxR2pqcnpMRDVnWTY4RnA1RGUyQm5RdlQwb3FXVXByVTFMTWpiOEptQnRwTnpmRFJPTDZBeThST2h1a1R4K1ZNQmVZN2JHQ2dPVEpyYnhqaXZ6QkxHL2RUT0pnZGRSRTJMTEFaQy9tT29nTjJPTXhhY1Z3WkZ1bWwwZEl4Q3BzVTJKUXRFbjRvOEZBNmRqd3MrcWRjTDNWQmVoaHdVQVhjeWdvdkhZV2RENHVLVlMybWJIL1hNRFN4QWM1cndzT1pPanp4SkE5S0FGTjV5ajBObDJjQTBMZEdJM1lZekV5VDlCcDJ0aW5ZY0FEc2ZQcXRXRVk1VUFoWXhJMi9WaDBtOFMxc05BQWE1U3U1NzRCU3dDSmozRVRFWHdpQmpBVUFtdWR2eVh6QU9IcFlXRlpaUzYzWW1UN0JoZ0lnQ09vYitiZUZnc0NDTm5hYzg1bmZzSkVBQ0ltTkhQc2RDQ1dCQlhxQmxzUk9Nd0ViQjRDSU1Ga0tqS0Fzc0NiTlhVUGw3Q2p6c1ZrQWlDaUxKR3dIaFlIdEhscndVVmZtZTJ3U0FFemhKdzQ5OUlUU3dPcU54MSt6VXd4SDFnSUFwck5WTW9Ta2d4K0V4OW54WENtSWVBa2JBZ0NsL1I1ZXlLK2xEQ2lRRTBNTHk2bVVuV0F4TmdJQVVhR214RXVWVUNJbmlXNHR0ZWRQM2JWd2ZnQ2l5amNWUHVvSVJYS0FjWUMvRi8vQ044RHBBYkFFdjdsOWRCeVV5ZDZaQzRPTmhzNXdkZ0NzZGVubW82RlFLRHRtTHRUM1c0Q1RBMkRkVXVOeHlIaXdUK2FDVktMTmdHTURvSVg0UGk5N0ZzcWxzYm1yS1pWL21lL0FvUUhRS3Qxc0ZtYTdhV3J5aStOUHo1bHdaQUMwNUdQSnM0ZVNhV1RTRFo5L2NYUGh2QUJvVFRYbXVtbGlSVXVwa0UrNlMrQzBBTmdDVDZXWFNxQnNGamI1QmZFdjZuTTRLd0Myb3JaMEtaVkI0U3hvOG92QlREUUFiSHZodGxMSy9LRjBGckxpT2lyZ2NldGVPQ2dBdG1aRmxZZUtvWGdXc0tyRmxNM1RUVCtEVXdMZ0NKYng2VGNYeWhmZDRvaE0vMkE5T0NRQXptRWUya3BHdHpqaVF6Z2hBTTZqM0VOek9JTXBEVXFvME5wNUtKRVgvMDA0SUFET2hlOTEza1Y1c1Nyakpocm92UUFBTUU2K1BwcU94am9LakMvU3hzTGhBQUFOR0FObE5OSDgvWFRoYUFDQVhidWFvWit2S2FMcnBXUEwwTVFjQU5BNFcvbkM3WGdvWlNRekdMelVnUmQySTV3TEFOQU1HOTBlT2dpS0dZbVRya3dEeG1CS0FFQmdmTVBpV3dIbERMZEFnc2RBdzVrQUFFR3dGQVVXb2FlTnlaeTBGK0JFQUlBUWVGazBCRUlhcEpWNmFBU2NCd0FRQmxkRFNZTVQzU1BsbGhLT0F3QUlnNys1d0tJWEZEV1FEQVlPalBPQy9RaW5BUUJFZ0o4cmE2a1ZsTFVacTFwRnlieFFDK0VzQUlBSXNxaHNMYVZBWVpzdWtwZ0lKd0VBbU1CNEtHempvbnMrbkFNQVlHSTNzN09odEEwYjM5VFFIcnd3RytBY0FBQXpLOXVZdGxCY3NROG9uaGRqSHB3Q0FLQ2dtYzZDanRXVWdOT3VqMjZEUXdBQWxPR2hVWTRXM1FvUGRZNW92bTdOVmlwK3U0N3l4NzlOT1RlTnA2d3JSMVBtUmRkVDVyQmJLZnU2QnlsL3dqdmtudnN6SEE4QWgrZjM4c24zQ0VlS2J1dVZsTVVMc0Rxc1lQblN6VlR3eFB1VWNkNVZsTmpoY0lwSlNTTXBObTZXMkZoSzZ0U2Q4c2E5Q0FjRXdMbXNxVmhHT1U3TVluZ20xRVVyZm5NNXBROFlTckZadVMwTGJUTWtIOTZUM1BOK2dSTUM0RXltT0swaytOUlFGc285ZngybG5YSUJ1ZUxpd3hMY2hpVHN1Yi94YytHRUFEanlzdTFrWjV4MFBaVEwrWFRmQlgzS2ZkMUhjZTdLaUFsdVExTDdESUFEQXVCTXZuVkV5SUdIVlQ0WjdPS1VmUFFOeGVVWG15SzZCakV4eHFVY25CQUFSekxCM2lHR1d1ckdEN2t0MklWSk9lb2s4MFRYVCthUTYrQ0FBRGlUYlR4ZXJJYzl1NDVWVXlvLzRCZEJuM2JmWDIxa0lwZ3R2QkxHZ0FNQzRGaFcyTEtSRGwrbzNSUEtnbVRmOExEcG9yc2RoQnNBY0hSaHhSMzJpdXQrVG9lRVdpaVIwdk5rWmNLYmU4ZFRjRDRBbk1zV21XaHVEOVVsaWkyVGZwZ2hMa2JDdmgyVUNXL2FxUmZDK1FCd052TkZzL1JQSC9QUkJlRXNSSHo1SHNxRU4yR3Y5bkE4QUp6ZVB0Skg1Mmd0dWpKaVdmTGt3bG1FeEFNUFV5YThVcGhSdW1RVG5BOEFKd3N2MXhtMHFhTk1uVSs3ZDRXN0NLbDkrcXNUWHFab3htSTRId0FPUjdvbTZ0emNmRk80QzVCNTRVaWx3cHM3ZWpJY0R3Q3dpYk1jMnVnbnZCNTZOUklMa0hQTDQwcUZWenFkd2VrQUFDeThMK2lXczlzOVVnOWZNT1ZqcGNLYjNMa1hIQTRBVU4rWVM1dUtOcUk0ZnNNMUVYdncrYjhhdlJSVUNXOWNRUWtjRGdDd25jVmFwSmZ4OGZ6TVNEOThYRW1GMGxPdmU4NzNjRGdBUUgyV0E3ZXgxZUcwV3h2cEIwL3Uya2VwOEJaTW1nbUhBd0JzWjdrTTViWHloZHA1Wmp4NHh1QVJTb1UzKzVxeGNEWUFRTU9MdGpNdEtib3lNcG5mM0VvekhqcjM3bWVWQ20vYVNlZkIwUUFBRGFtejVLbVg0eUJEekhyb290YzhTb1UzY2IrRDRXZ0FnSjJMS3ZnYnZhVkVsOHZya3ZpTnJUSHRvV3UyVUV4U3NqTGhqVWxPTVViRnc5a0FBQTFZM2M1RGlWYktaTGpNN0lkTzJPY2dwYWRlbWZFR1J3TUE3SkxoTU1RU29pdWZBUHlHL21mMkE2ZWVlSTVTNGMwYk94Mk9CZ0RZbGEva1BpdjZtUXcrR3FqaWdiT3V1bHVwOEdaZWREMmNEQUN3T3o3cWI0VU9aRXRVUEd6KzQrOHFGZDZVN2lmQXdRQUFqUW52RXE1WmlJbm1hYmVYcW9jdG1mMmRVdUdOTDJzRkJ3TUFOQlhyN1I2OUZESXZ2YXZ5WVdOekM5V0pML2VIY0M5WUR5Y0RBRFRHRzlFS01lelBMNzVONWNNbUhkWkQ2YW0zY09vbmNEQUFRR05zSzZ1bDl1ckRERjU2U3ZYRFpneThVcW53NXR6NENCd01BTkFVRTlXS2JpMjUrVVUzcTM3UW5Oc21LUlhlOURNdWhuTUJBSnBpVTZXWFNsU0dHVzZNeG9NV3ZmQ1pVdUZONnRBWnpnVUFhTHFNMkV2WHFXcjlHQ3VsYzFHNVNlUUp3RElKV0pYd3htWmtjVmVpYlhBd0FFRGptdVNsVlVvYXBYTjU4REhSZk5ENDF2c29QZldXdkw4YURnWUFhSklLTHgxbHZ2QjZhVVkwSHpMMW1OT1VDbS8rUTYvQ3VRQUFUWWNiZkRUZFZOR3Q4bEF4djlCZjBYekl6R0czcWkwZDV0ZURjd0VBbW1GejBWSXFOSzlnd2tmWFJ2c2g1UVNxVW5qbGhBM0hBZ0EwZStyMTBIL051bFNMNFJlb2kvWURTc3hWYWVrd3g1VGhXQUNBRmxodVN2OEdyazArMGhJUHlGa0dzUm5aNnNRM0xvNUtGLzBCeHdJQXRKUmExc1VNNFoxa2xRZVUvRnFWcDE3Skg0WmpBUUNhUHhUU1k1RWZaT21sbjYzeWdGSlJwclIwbUN2bTRGZ0FnQmI0TWFKTjB2bFNyWStWSGxCNktLZ1VYdWtSQWFjQ0FBU1FXdFlya3JtN1U2ejBjTkkxVEducE1IZEZnMU1CQUpRMXp2RlBFRjVucVRLOWhSdU1mcm5LU29kekMrQlFBSUJBK0RVaWs0ajVwdTVFS3o2Z1RJaFFXanJNRXpEZ1ZFM3crZDlVOVBJeXloMHpsV2ZqM1VWWlY0Nm16S0UzVWZhSWNjYmZGVDQzbjl4emY4WTZBYWYwYitnZGlURERNMVo4T0ptSnByUjBtR2Urd2FsMnh2M3BUNVJ4L3RVQlR3YUpyOXFUMHZvTm90elJrNm5rNDIreGhzQ3VhV1ZQaFNlNmF5bUZmOUJHS3o2Y1RBRldLYnd5NVJoTzlROEZUMzVnaEdCQ1hjK1krQVJLNlhXSzhYT3duc0JtckpNUXJXMnlHUnFTTjNhNjJ0TGhFOCtCUS9rcG1yR1lZcEpUSXJhMmllMDdHVDhUYXd1UTNWQWZabmpRcWc5Vy9FYXRVdUZOMk9jZ09KVEVyN2lLTDJHUGZVMm9FSXluakVIRHFheG1LOVlaMkNIY01EWWM0ZjNDc2cvSEd6UW1PVldaOE1Za0p2RnJibkc4UTJWZWRvdXA2NXpXOTF4c1hHQUhha01OTSt4cDlZZEwzTzlndGFYRHIzbWNmZHBkL0dmQUYybGhWUXJlUEFFYkYyaFB4UXBxSGNwcGQ1alZIeXp0cFBPVUNtL3UzYzg2KzBMdGlmZVZqVnlTakFsc1hxQjV1T0dpVUFaYXZtWDFCOHUrWnF6YTB1SEJJNXdkWnJqMFpuVVRucys1QXBzWDZDMjhIbm8xbERTeTN5MS9BcHMwVTZud0puZnQ0MmhIU3U3Y1MxMU1QU0dSaXQvNUFoc1k2TXh2UWFXVlJYdWdaVEFKL0NxRk42Nmt3dEhWYVJJQ1VKckMxMmNBTmkvUSsxNkUrNWdIMDN2M0hsMGVMSzdRclZRTTNQTi9kV2J1TGw4c3FseG5nOWhZS25weEVUWXcwSm5Sd2NSM0YrRHJiK01VVFBuWWtRNGtQUmVVQzY5MGhqdTBLell2MERuT095ZVkrTzVtWFI0czQ3eXJsQXBCOW5VUE90S0JNZ1pmR3hYaE5mcGtUSGpIZm12S0k2eEtQdnJHcU5ncmZMN2FvT1NELzZHQXhINXNxbHBGeVlHY2RydHFkUkxqaGlzcVJTRHQxQXVkZWJIR0Y0dlJFdDZFdlE4MFlzemF4L3VXYnFiY082ZFFjcGRqbTU0YnlCVjhjY1hsbE5qaGNFbzdiUWpsM0RxUml0K3VnNERwM0V5cWxnNFBKTDQ3UXF2WTQwdExsSXBBNG9HSE9kSjU1R0l4V3NKcjVGQ3pZT204ZnRJYU03N1ZYcUZQdTY1b1k2UXpGcisxQW1LbUgxY0hVamp4aG02bkNPbDBwU3pOS1MzRCtKcW8ramxMWnEybC9QRnZVOVoveDFEYXllZFQwaUZIVUh4NWE0ck56REZPVDNINXhVWWxuOHlqSzVqOFVXUS9zZmxDVVdYaitVYUZwN1NLU3BkczBuTGo1VDN3VXVUSzIvbkNNZldZMDVCcXA1TkcrZWlWNWxXWDU4S1hXV2lvWmFBa3ROMVBxUWdVdjdQU3ZLOGw4MzR4THZCa3JsejY2UmRSVXNmL004UTE2RXVwZngxWkh6T01STDQwdjU5b2l1Nk8xcHhYMzZQZHBqT0tmRmdzSTM0QVNFMm4zRHVlZ3JEcHdZK2lyVTNxYm9XSDJ1bjRZS2w5K2lzVkFEbkJSS0x2Z1l5Tmw4MGpGNFNTblJGWFZCYlpVeUpQNllqRTVBeTVVTFNDOE1abTVlcVR6c2VYWk9rRExqVjNUZmhiaUh4QVE5ZzBpUE11cDcyYnUxaTdRTWVIa2xFektnVkF4dG9Fc3dHbGhXWGVmYzlUNWlVM1VrclBrNDFKREs2NE9DWHZOYVZudi9CN1l2Q0ZvaFdFMXlqYmx0YVJWdjlxK2RsdmxOTHRlR1VWZm5MUEFYR3pQT2MzTjEvdEVSMGZLdi9STjVSdS9xYkV6QWdUUEQyYnNxKzlqOFZxc0hFenJiSjFaVk9uSWhIK3NMckE4WVdpVllSWEdyQ1h6RnBqV1YrVWtVYXF1K2JKSkE4SW05WFRCK21CcG9XWGszMTFmQ2k1ZUZKNjBjTTN6SEtCbFgzOVEwYktUMUtIemsybkIxbUE5RE12Q3l2Zk5EWTkwMUxQazlaM29HV3IrK1FTVVBtSFVWS3kwYUFlQW1kcFBtcnVZbTI5cmc4bThUK3JDbC9VWTZQOG9SQnFFM2U1UGJmY00wa3BzY1ZHQlVuRHBtaCsrTXJyUTl3c3phK05YckJWMWxJcm5SOU0wcXNnc2sxVE9IMWhhS2xRRDc1c3llZVJJZ1RMRlBIYy9xUVJhNDNtZW1RUHZ4ZmladlVMdGhvcWJ5ek1jSUxPRDJYNkRiTG1aRjExVjJnOWVQa2kwYXJQSkkzWm8xMzJLeGVtMGM1eE5pNThMeHdKY2JQNnBhdVhlamQyc1hhOXpnOGw0Mklnc00xY3dIUS9JYVIxbFl0RXF6NVQ0bjZIUktXWVpYdmhUdW9KWjF0bUxUSXZ1aDdpWm5WOGRNM3V3dXVqNlZxWFpFNmJCNEZ0cnQ4QkY1bUVzcTdobExrcUtTVytaNXI2cjR5Y1M1elVxWnVsMWlGNzVBTVFOdXRuTmt4dHJGUzRWdXRqUE9kT21sRWhaS3NMdG1EWGxHL0tWZVViaDFNa29yS1V1T1REcnlsaHJ3TXN0dzc1RDcwS1liTStOVHVKYmpzUEpmSmZidFg5d2VJcjIwSmttNkcwZW1OdzN5S21MOURpdWJKSDNxOG1YZXlWR3FOem1CWFhvUGpONVJBMjYvT1g2d09LYnpqcXA0MGRIaXpscUpNZ3NCR2NuaUV0Q2JVNHplY1drSHZCZW5QVHhTYStaN2w4NW9iVmE2WEwvb0t3NlZCejRLWEtIY0xyOWxJUE96eVVjY01NZ1czNnhCdms1a3cvYTVnMno1WTU1RHBUZXo2cjdJQVhkUHgrci9ZUU5YMHUyTHBxMzZOaHQ1elRjUzlDWUpzNUZRV2RHOTJwdXo3UFo1UVNyNDE4ZHpFdS83WkN1bGl6UTBHUE94T0Nwc3NvSUI4TmJKalJjSnNkSGtvNjlVTmttemdWN2RzaCtHcEEvZ3F2MHpOS2Y0eUlkaGZqdHB4YTVHai81MDZJbWo2WkRUYzFqUEZPdGNWRDhYZ1k2Vk1Lb1cxa2MxNStlOUMzOTlvOUoyZGdTTCtFU0dUSUpIYzdUcHZuemgvL0ZnUk5seE92bDU1cW1FcjJpVjBlTFBHQWYwRm9HNW5lNEo2L0xyaU9ienp0UXN0Q2tTTlBEQzlIOTlPZktQR2dmMnYxelBJaENWSFRobzhiQ3U4M2RubXd0Rk11Z05nMklLNmdoUHUxTGcyK3h6R1BHTkwxbWFVMVoyZ05nVmJXOTByV0tUK2JtME5CekxRS05hdzFSRmRHRC9OZmJMUExnK1hjTkI2Q3UvMzB4K2wxb1k3L1NUMytMRzJmTzdGOXA2QkxpV1VZWld4dW9YYlBLaFYwRURTdCtMdE5IU1c1S2xaUWF6czlXTkhyWG1kbkwzQnYxcFNqVDZYQ1p6NE5iNDZkQmF1emdoclBkUCtNb0Rxd1JiMWhmVFI2TFlPb1VPV2pLcmxZTzlSZVIzbHUzSjJUN3h5aDVmelN4SFlkS2IzL0paUTNkanFWTHR3UWdSdjlMUlNUbUtSM1hKdERCb0hrTGVmYzhqaGZ5c1ZyKzV6U0hBcGlwaGNWUHVvb3dudU0zUjVNT25IWk5WNmJkRmdQNDVRalF6SUxuNjgyaG1hYVVScHJoL1hLR2ZWb3l5MGRkZSt6ekNFU2lKbDJ1Ync5WGR3ajhpeTdQWmh4aXRHNW9RMlBjNWQ1YlpLWEtnbjhjbGtVa1pOc29KVmFZNmJhb3pFUXgyd2JXemVqcFNNWEhXai9qTndVU2xMZklHYmFWYS8xRitHOTNIYWQzcmx1MzZwMTlUdUZDZEl5alBRM3ljVElIakhPR04vaW52TkQxTmN2NDRKcmJQTXRJZlBTbTNjV1hXNFVsTno1YUh1a0NYSlRLQWlabHBrTmw0cnczbUxIaDdQUzEwZ3AxNVY2K3RRKy9TbnJpanNvLytIWHFQamRMNlBXeExzbGtvL29iWjhZT0JmVWxNeis3cCtXam5zZmFKK3NsWjRuUThUMEZONVIybzUwYjdINmlIdTBTdk52dThaaHpjU3FyUTlEdnZrZk1KU0tYdjJjNGtvcWJQVmNtWmVNZ29qcHlZUGFUNTVvTmlIK3JSV21pVWhjZm5HOXdKNXpoUkZUbHQ2MWRvaTNTZXRJcXplRkNTWHpJNW9UZ0UxTG1lT21VQkF4TFdldlBTdFpEYk5zM2YrU0N3aFNldlFOL1lLR1k4VlNRbXBjZFBGNGxZSkpzNHl5VXJ1dVY4R1VqNVY5TTBDUlM1ak56L2xnQVNIVHNsL0RlOUlTY29FVEhyYm9wU1hHNlZRR0pEYVdveW8zNEZMeEpMZmRXVmVPcHZ4SFhxZmk5MVk1emlua3cwWFYxMlNJWnhpbitKUTBveWtVaEV4TDVvcndMbkhrY1ovVGpLUi9xM3ZlTCtqZTM3RFhCWi9zbGVTZmNtaEc5K3E0cUpkRncxOTFaWkdFR254WUNLQzZ1NXQ3enZlVWZjMVlpR2lvdlljNUJSSCtxaTJmaS9DdXhFS0E3ZFZja2x1c29wK0V2Slo4MjFEeGVuWkU4cjdoczlwU0o4SzdGZ3NCNnRzaWZxR3NqOEtPWW8zenJvS1FodEw2OHFrUDRiUDY4cFgwNHYwQkN3R01MbDBQdktSRU5KTC9mZFEvV1NkYzNDRHowaUNtUVlacWJKeFo0NEIwc3U5RWVOZGhNWUJSN1RmMEpqWHh5WDZEZHI3UU8yMEl4RFNZVkx5aU12aXIzdndpd3ZzSEZnSVlYZDE2OW90Sy93UXBuOWE1TmFOcWtyc2NDMy9WbTk5RmVMZGlJWUFRMzJvdkpjS1JlL3VUdTArOHNFTzNNRVZrbkg4MS9GVnZ0a0o0UVgzY2FkRWZ4cFJlSlJkRFQzNncrOFVlbjNxbG1SQ0VOWUFQcmpGUHcyZHRJTHdJTlFBdWFGaW9ydFNWaDBvMldyeWhhYXhYT3A2cC9OQUlaWGdwc0Y2b0FaZHJnSEp1bmFpdWVYY1RsWUxTdGxHM0RJZTRvbExLZi9RTnBTMUdwWkU3ZkZiM3l6VWZmWStGQU9sblgyNkpHM21KWCtvMFdyM281V1ZHekZyWjZYclAvZUd2dGtnblF3RUZZSkk2ZFZmVFk0QTd2VFhibHBLcjJXVDBrUTdqbVNROFkzeG84YUJSVmE4cmw1RHdWenNVVUtCa0dEQ3h1UVZxaEtQM0dTM25FM082bWJWbnVSWHNGR2VWaGpXcVhqdnJQM2ZDWCsxUU1zekhYaThXd3RtVWZQU051bFFvbnVmVzRsY3hub3NXbDFkazJRR2FFbDdZOFY0NVhxMHlMcDAvL2kzNHJDMmE1RGkwTFNUNGgvenhiNnRyN25MRHc0SDFCZWJweXBhN1NPTVBnNkpYYW5idTgvemlJcVh2UVJyN3cyZnQwQmJTSVkzUVFkTmtYWFdYdWhNYk41Z1A2QUtDWitiRnVTdXRJN3I4WG9yZlhMNTdOZ2lQZlZKNW1RZC90UVZHSS9TWldBaG5rM3I4V2VweVVIbm9aTUFwYnJjOVlZMHg2cTMzNXFiNWF4clBQVDcxUW1Ydkk2bFROL2lyUGJJYTNwVXB3ODloTVp5Tnlra1E3Z1hyQTM5dk5WdFo5UGFKN3FTSGRoMjVhZnNQVGI1SCtmK1ZUVXZteWRYd1YxdndqRnl1UFl5RmNEQTFXeHFkUVdkV0NsYlFyU3J2ZXo1cW9wdDB5QkhOZmxCSUlZT3F0Uk55YnA0QWY3VURIbnBBaFBkbUxJWnprY3NpbGFXMXdUdnBOcVhwV2pzNmdIVTd6dWhmMFh5WjlRS2w3Nm53dWZtVzlpWDMvRitOY3ZCZE1iNHg4TzhSKzIySDhJNlNrdUZoV0F6bmtudjNzOHFFSTZYYjhhRmxYVXg0UjZuQXBaNTRqdkZOb01VWTlJMlBxSHRmVW1yOTJXOVIvM1lrMDdwemJwdEVHWU5IVU1yUnAxTEN2aDNxYzhCYmFyREU3MS8rdllSOURxS1VYcWNZLzMzdW5WT28rSTFhNTRteWo0WktBY1daRUNEbmtqSDRXblV4eWdHWFdyNnlUcXJRQWgyYm5uYnkrZW91K0NyYnFyOEU0aHpsZ2trektlUGMvMUJpaDhNNVh6blZuQkJVUmhhbDlPaHI5QXR4d21TTmNoK2RJY0o3TkFUSXVTUjM3YU91Nm9yVDFrSU9pYnp3bWVrZHdIWnQwTjdpcFNTSFRwUjlXempxSkdWaW0vZmd5OGFwTkRZOVUzbUlSNHBSSkZPaytLMFZ0dDF6RlY0NnlsWCtPUjBDQVhJdWNTVVZ5alpWM3RqcFliMVgwNG9xK0d0dzluVVBCdDIvT0NZK1FkbmFaVjV5bzduVml6Ty9NaG9VeGVVWFd5TjNta01YcVgwR1VORnJIdHZ0T2JlWE9yZ3FhNmtWQk1pWnlHV0lLeVpHM2VYUXRIbGhYa3BzaTNoREd2bjZuSGYvak9EN0Z6ODdWNmtRNVkxNzBSekI1ZnprOU5NdnNtNFRldjVRVEQzMjlHWlQrclFyMGZkU3BhdHFGU1h6UC93TklYSWVCWk0vVWx2dXloT0ZJMUpwZCtYb3lNUVdzL09vOE9rNW9aMitSOTZ2ZE8ySzM2NkxiRWhoOForVU9lUTZwZWx3NFpackIxcjFhSEgrYmxOSFNTNHgvb2V2SVVUT1E3NWVLNHZkSlNWSDlQWTY5NjVuK0ZJbU8vUjBzY043VXZGN3EwS3Y5dVBNQjJWcmw1SVc4SVZmUUIrNGsyWVpsM1hhVGZ2Z2IyZkJ4dUV0eUJyWGR1Ti8rQVJDNUR4VWxydWFjU3N2WGRVazlDQ2lIbGpjTUo1U2pqelJTRThMdTlxdjdYN3FxdWYyUHpSQythUGJLUE95VzR5djd6clBuRXMvYTVqTysrNmpmNFRYUjA5RGlKeUhOQ1ZYVmdWMldBOFRZOVhyak54UzZUbVJzTWUreGdseGUzd3d2clRLeU55UTBJQ01Gb3JJMTNUT3AxVTFHRlJJNnpjby9QZThjSU9SUjIyWGdaODVONDNYTTVYTVMwL3RFRjZ1WHJzVlF1VEE1dWNLSnoya25YU2VmV0xqVDg5V0tqTFpJOGFGL2NHVWVPQmh0cHEwTEplaVdyYklsS3ExQnFHR1FSQWlwMlUwckZPNlVUS0gzbVNmMlBqd2U1V3VYY0ZUSDRiK2UrWlJTb243SFdMTE1mZFpWOXloWS9IRXdCM0N5M2xsUFNCR0R1dlJ3QVVKS2plSkRJUzBUUnROemk5VnVYWWhWM054aWErcWlyOW9rTnpsV0IzTGhZL1lJYnpsTmJRSHhNaFo1TjMzZ3RwVEc5K2syMlh0NGx2dHBYQjhmRm5JN3pOOXdGRGJpcTV4YjlDaHMzN2ZORDFVc1VONE8xWlRBdi9sRmdpU2M4aTY2bTYxZWFqdmZHR1BFQTIzaVZTWkZaRDhmOGVFbG03SERXanNMTHJoTkYyS0lwdGRYQ3pxYW1nWWVnbmhOZTBpSkMzRGFHcHVpNHMxUHJtckZKZU1RY09EVDdQalN5ZVZGNmZSSXVQYy8rcm1QMHRkdXhvTDd6UUlrb1BhUVk2ZWJJdFVNdlVmV0hlcGpZM3p5VFhveGtkOFNyYTc2QnBsMUErOW9wdi9UTmxOZURtL2JDUUV5VG1VdkwvYU5nMWVsRjZzSFhPYVVuRnBPRW8rb05nOWk1RVRSRmU2bUpVdStsMDMvN2w2TitGMSsrZzRDSkt6U0dqVFRzMWs0UWhVaWxubVlxMThEM1hpd28xclpMeFE0RmtNVzVYOVRxTWUzK1VtN0JybThCNnptL0JLeHh5SWtjTjZOU2hvOUNJbms2QUdYRnI1WW8xellsVjJjMHZZYzMvTGhvK2lUY0dVai9Yem9lVlV1cHZ3OG0xYkRQK2Z2MEtRbkVQcGtrMm1OL00ySmpyWXBXSnQ0bnRxUnhCeHZuQlFKZUFLSng1SGs1Qm05MFdmbjExTkdWK3d6WVlnT1F2cDBCVmYzdHFja1M3Y2RqRlMvUkVzY2JIR2xWSktLN080L1dYQS9ZR25mdUtZMDI3ZUF5L3A2RDhmTmllOEQwR01ISGpSeG4xeWs0L29IZkVXZnZrUHYyYXJkVXJwZWJKU2djbC83TTNBaXlXNG1ia1RSRGZ4Z0gvcE9SelRSL2MzS2J6bzJlQnNwTkYwUkVhcHl5aWQ2eCt5M2Zxb3ZGZ3pHc2ZQV2h0d3UwZXBjTE85OEhKYno2SVhGK25abGN4RDV6VXB2Q1UxdEE4RUNCUzl0TlNZUGl5anVJTzlURXJZNndCanNvWHQxb1g3SHFpY3NSYWJsUnY0NzR2RnlBbW4zY3lMYjlEM1BzVkhlellwdlA0THRwOGhQcUJoRnpPNVZKTENnYlRUaGhqSitZbjdIV3pFaFFVUlp5bmRsRnpkd21jK3RYVXNYR2tmZ2tPT0NEdzc1WWFIb3o0WklyNXFUeU5jbFhiS0JjYlllMmxnSXpIK2lKVk9kKzZsYy9Yamo2S3RydWFNLzZYWElUZ0E3Rm9xUEZQdGxJVXpMd3Y0dlluWVJhdEpqVlRXdWVmKzNHUmVjYzZ0RXltdTBCMWVYTGZENFViemVZMzk1eVZYUzhaSDRtdXgwUUNJYnRPWllDWXNxRzV5TGhNK1pPWmR3Rit6V1RRekw3cmVhRjRlZkVwZGZ4MHIxSGFONy82M1JlSGwwdUV1MkdnQTdDSzhZNllxRmJmQzZRdXRlZWtuMlNwQlpGdnMycnduNi9MYmpYdUFGbWYwY2V2TnZQdG4yQ05mM2tlSHRTaThaV3NwUmRxWFliTUIwRUI0NzVtbXRnL0JzcjhDZm0reEdWbnEybFR5ZE9hSXBERE8vTXI0TU1zWWVDV2xIbnU2OFhQbFR4azViMHpjMERGbHJIRTI3UmpuM3FMNGVta2VOaHNBRFZMdHhyK3RMblo2YU5lZzNwdktiQXNKR2NBZmd1SmpWNkJXNnFHN3NXQUE3RnhlSFp1ZXFXYTQ1VFZqZ3hQZUVHS25JVi82OFZRTCtFTlFqWEh1Q0ZoNCtWOCtHb3NHd0M0dElZODcwM3h4NCtLVGtsbHJnbnBmS3B1ZXh4V1VHQ21HOEljQVA3QTkxRDFnNGExYVJjbjhILzJPaFFPZ1FTN3YyM1VVazVwdWJydkRudjJDcjZqakhGcWxhV1NkdW9VK2dOTlovQlp3ZkxkQm5QZE5MQndBdThaNjN6SlBmT1BpcUdqRzRxRGZVM0xubzVYbjhFcGxYZVlsbzZqNGpWcjRSZE84N0FyV09OeHdHUllPZ01aS3FwZFFmRVViUzh4WE14cmtuSEZ4VkN2WDR2S0s2ck1TVGp6SG1JTW16eUZrWFg2YjBXR3RJVG1qSHFXOGU1K2ovTWZmcGNMbnE2bjQzUytwdEhxalhjTU1RNElYWGkrMXhTWURvT25MTmhHU1NGMjRKWGZ0RTl5MGlRYmszUGFFOW4wWUpFNXRsSjhmZFpLUllpWk4raVdUUk9lUVJzVUthdTBLeGZnL3JzTW1BNkFaQVY2NGdZVnZrdEZiSWFUcEZQemZTQStNMHNWL2hoNTdmbXVGclp2anhGZTJOWnJDaXhnWFRwdG5OQ3l5dkYvdzFIWlhxTWJoaGdld3VRQUlzS0VROXl5UTFwcVpGNDdrQzZqdTlhMGFPVzdiNkFtUGl4NWtjR2JoMDNNaTh0cHgrY1dPYVlRZW01TnY5Qjh1ZUhxMmRjdUV2WFJ2eU1MTHF0MGJHd3FBOE5wSlNwV1d4RE1GbVJvcy94enB5aXdaL3VnVTRkMDF3eUtZOG1wbHd1dWpuaUVMcnordGJEMDJFQURXSnUrK0Z4d3B2RHZDTmYwR2NUT2RQNnp5Ky9nMTZEU3kzY0lOUG5vYWpnMkF4V09LZkRFWHlmNjNXc2FDVys5RFJhOTdyWkROTU1rVnJuRkxzK1BoMkFCWUg2Zk1YV3MyL3B1UlhYOEJGOTB5NFdQQ0Z0NTJIa3JrSC9ZTEhCc0FxK2NYTHpWS2ppRytXZEdNKy80aW11bUtoUEVOM1pOd2JBQTA2Q2ZCamNPZExyemI4NExsSWpNS3Y0TUpya2daLzdCajRkUUFhTkJQZ2l2QlloSVNJYjRTOCtYcVF2ZUM5V3BUQ3IzVUkyTEMyN0dhRXZpSC9nVEhCa0NEV08vWmwwTjR0NDhPNG81eUN0ZitSOWNIRk8rS3BQRVBmUnhPRFlBR0dRNWNCWmV3VjNzSXI1OWc1c09GV1RUeGlDdlNWbHBMM2VEVUFHZ1NjdUF5WXJOYldPcENuTHZTNksxaGVtOEdEM1dPdVBES1hIais0U3ZnMUFEb2daejBrT1hnbitweDdYMW1yM2V0YUtUTERPTmlpbXZnMEFEb1E4Nm94MEpyM21PM0xJZmNBbVBNdklrbHdsZTZ6TEpXTlZURUwvSVhIQm9BZlpBWmJoQmZqdldPbm16V0dtOHVycU1DbDVuR0wvSWluQmtBelhvNWpKMU9NU2xwamhiZTVIOGZaZGFsMm5NdXN3MkRNQUhRdGJLTkoyZVV0M2F1K0JxRFJOZGFPM2UzbVV1MldINngxWEJrQURSTU5WdjBPMlVNSHVIWUlnc1RMdG0rRkUxMHFUQytaTHNCVGd5QXh1bG1ieTZudEw0REtTWXAyVkhDbTlMejVFaUhHVWE2VkZsNUxia2xvQXdIQmtCdlpHcEcxdFgzVU5MQlhTZ21Qc0grT2IwOG1ET0NUZWczVlhtbzJLWFNwT2NrSEJjQUc0VWhPTjJxWU9KN3hvUmc2VzFyVi9HVjRoTExOY1FKb21QWmZ2ekMyK0N3QU5pMzRZNWtRMlJjY0kweHZsMXlZVzJSVmpabWFpVFdaeHRYcXUzcmlvWnhyUGN0T0NnQXpxRmsxaHJLZit4TnlyN2hZZU5rbk5yN0RFcnNjRGdQOWl6VjVzSXU2L0xiSXJFV3I3bWlaWkpHQVdjRUFPeUFoM3U2NS8xQ0plK3ZOc2J3RkQ0M24vSWZmOWM0T2VmY05KNHlMNzJaVW5xZFlzUmFveVc4YWFjT0R2ODVmZFRWRlUzak43RUlEZ2NBQ0lyUC82YUNLUjlUU3ZjVDFCZFNkTzRWN3Z1dmRrWGJlQVQ4V1hBa0FFREkvU1J1ZkVTcDhDYnNkVUM0S1dTblIxMTRqU2JwSGxvTEJ3SkE0NnEyMXp4R1Q0ZjBNeStqOUhPdU1QNTM0ZFJQT0hTd1ZjbnJ4NWZ2b1U1NDIrNFh6bnRkSGZGbTUyRmNzZzJGOHdLZ1h6dzI5L1lualJFNXpYWDFrb2tXRXJNMTg3MGtIZHBWbmZDMmFSZE9iSGV3eXlvbVV6VTU1TEFLemd5QUpxbGliOWNaWDdrREZxeTRlQ09Eb1dqR1lsUGVUK0pCLzFZbnZIdnNHL0pwTjJJVGhDTjQ2aDBNaHdiQStraVJSR3hHZHNpTlp0TDZEU0wzcHo5RnJuQmo2V1pqS3JBeTRkMjNRMml4WFI4TmRGbk4vTEhlbFhCc0FLeEw0ZlNGRVJrSkZKdWRaelJabCt5RWNOOVQ3cDFUMVBacjZORTNsUGU1d2pLeDNkMnEyZmdUQWM0TmdGV0xIOVpHUEg4MnNYMG5LbnIxODdDcTQwVEVWUXF2WEI2R0VOdnQ3N0tzRWNYeHFkY0hKd2ZBWW5CakdDbjdOVVBJcEdJdDgrSWJqTUtKWU41VC9vUjMrUEt1VUgxcnlCSGpnbDAvajdMV2oySEVldnZEMFFHd0ZsTGlhN2FneVlTTDlETXU1b2JyUzV1TzUvSzAzN3dIWGpMdFF5QVFDcDZlSFZ3TTJrUDlYSmEzK2ticFMrSHNBRmluMlkzcXNUOXgrY1dVMm1jQVpWMTFseUg2bVVPdU0wYnZ4S1JsUkxWUGc4UzNTNWY5RlV5eHhHZW1UUStPZURWYkxYV0R3d05nRFZLUFB3c2ozcmVYQ3gvUk85Z3F0UzR1bll6ZjlBdzRQUUJSUHUyK1VjczV1SEVRM1JEaXUxeWJNTTJsbTFXc29OYjg1ditFOHdPQTA2NFZpRWxNSXZjblB3YTZkbjlVK2FqS3BhUHhteDhONXdjZ09wUXUzRUF4eVNrUVhUOFNjdzdpdEh1elMxZkxyNlVNZm9odnNBa0FVSTgwTElmZ2hwVE44TCtpcFpUbTB0bktQWFF1TmdFQTZzbTY2bTRJcnAra1R0MkR5SG1tQVM3dHJUNjliQ0UyQWdDS2haZEgzRUIwNi90TEJOSGNaNjQyNldNdHBwZDlUZ2Z3QS8yRnpRQ0FPdkx1ZXg2aUs2TisrcDRiNkpwdGNYdm9JSmVkakI5cUREWURBT3B3TDFpdnpRQkswd281aXNvQ3ptVGdDN1ZiWFhhenNyV1V3ZzlYaHcwQmdNSjBzbU5QZDI3NldIeEMvUlNOd05acWVkVXFTbmJaMFdReUp6L2dObXdJQUJRVlVMeXowc2hmZGFMd1psMTlUNkRydEkzN01YUjMyZG40SVNkaVF3Q2c4Skx0UDNjNlRuUXpCbzhJcHNINW95NjdXK3VWbE1VUCt6VTJCQUFLUXc1OStqdEdkSVBzdC90dHhUTEtjVG5CcE0wYU5nTUFDcXZZRnYxQnlWMzcyRnQwWTJJb2M5aXR3YTVOWDVlVGpKT1VwMkpEQUtBUUh0V2UxbmVnUFMvU2twSXBkOHpVWUR1UFBlVnlta25JQVpPSkFWQU16MGlUK0tlY0R1MGl1dkd0OStibTYwdUNYWXN2MjlSUnBzdUo1cTZsdzNrQnRtSkRBS0NXM0h1bWNRT2RWRnNVUjVSKzlsdXd6NytsMUVlSHVaeHNmT3E5QlJzQkFQVklHVzE4ZVdzOUN5TktLaWovb1ZkRGUzWWYzZWh5dlBISVpLbVB4a1lBSUJxWGJyOVR4cURoUnJHQkZyRmNyc1NUcklYUzZvMGhQUzgzN1pwajJUSHRxczNmTkgwRE5nSUFVVHI5OG9qMmxDTlB0RzdzbHh2ZFNFcWNGSVNFOFp3YitWSy9EUlMzZ1hFUzgwQnNBQUNpTE1BOElUaWwxeW1XR1JjazJRcHAvUVlaSHd4aFA1OHQyajJhVTlVMkFjNFBRUFFwbWJXR01pKytnWnZNbEVaRmNCUDIzSit5L2p1RzNITytqMHhJeFVzUFEyR2JNRTd2U09MQTl3STRQZ0JXeWYzZFlseGlTYk1kVTBmRTh3azc4WUIvVWViUW0wSkpEV3VKZWFJdFVOam1Vc3hxcUp3WDZnYzRQUURXcTM0cm1EU1RNaSs2bnBJN0gyMjBYQXcxWGh2bnJqUitocHlxOHg5NW5keHpmemJuZmZ2bys5S2xWQVpsRGF5a3VMdmsyc0haQWJCNHo5LzU2NmpvbFJwRFBITnVlZHdZbjU1MTVXaERVT1ZQSVh2ay9aUjcxek5VOE1UN1ZQUzZsMHFYYkZMMS9yWklSMFFvYW5EeDN1RndiQUJBcVBDRi9aVlEwbUNONXg3eHdrMkhBd0VBUW1DR2JXYW5xVGIvZVBobGNDSUFRQkJ4M1NVRkhrcUhnb2FUMzF0TGJzNi9Xd3VIQWdBRXdOZHlRUS9sakVTbUEwLytOS3BPNEZRQWdLYlp3QmZ6QjBJeEkzblo1cUZqa09rQUFHaUNyVzRmSFFlbE5FTjhmWFFCSEF3QXNGc0dnNWN1aGtLYW0rTjdEeHdOQU5DQTBWQkc4OVBNWXZuayt6eWNEUURBUFJpbWlTWkFHQlZZT3c4bDhxSy9Ec2NEd05HOGd4NE1xdU85YXltRkYvNERPQjhBRG96cGNrUHpvcVdVQmlXTWdzbkM4MWVOMlhCRUFCekZQQ211Z2dKRzBXUmFNZDlvZmdabkJNQVJMT1hVMGx3b253V3N1STRLK0JmaWdWTUNZR3VXVjNtb0dJcG5wVFF6N3JuSm40UXI0WndBMkpJdnlwWlRLWlRPZ2lhZmh2d0xxb0dUQW1BalBPUkRNM1ByWDdnVjhpOXJNUndXQUZ1d1dFS0pVRFlkVHI2TEtadC9ZWi9DYVFIUW1vV2xQc3FEb21tV2FzYlpEdS9CZVFIUWtvK1FNcWFwU1ZVTGYySytBaWNHUUN2ZWxBSXBLSmpHSnVYRkdDRUVnRDY5RjJUUFFybnNZRHg3aVc5R1I4R3hBYkF3UGhxSGhqYzJOUDdsRG1MK2dwTURZQ20yb3ArdXpZM0REajM1RjcwZXpnNkFKZGpJNFlYZVVDWW5uSHg5dEQvL3d0ZkE2UUdJS2wrN3ZkUUJpdVNrazY5TUwvYlNJamcvQUZGaEdRK3hyWUFTT2RBS1BKU09qQWNBbFBPeWRCV0VBams5NDhGTHczRHBCb0Q1bDJqTWNObHpFQjVZZmVqQlMxM1lLYjdGNWdEQUZIN2tlRzRQS0ExczkwczNianZIRGpJWG13U0FpRkpkNHFWS0tBeXNTWk15WTBua3htWUJJQ0l0SFI5REpSb3NZT1Bjd3JQWmNUWmc4d0FRRXV0WmRBZEFTV0JCbTN3OXdqQk5BSUptSG90dUd5Z0lMSFQ3Z09MbEpoWlpEd0MweUJabWRNZHFTb0J3d0NKejhlYWhUdXhVZGRoY0FEVEs2Z29QZFlaU3dNeTRlTXVVeXdKc01nRCtRWXFRWk9vTEZBSm03dW5YUnljajV4Y0ErcHJwQzBXQUtUTXBlZlNubmYyTkRRZ2N4alptTXVhaHdhSm01Ujc2UHhrL2pjMElITUlYcFI0NkVqc2ZGbldyV2tYSi9na1htN0V4Z1cwekZ2Z2JuZ3lSeFk2SFdjcjRKSEFnTytjQ2JGSmdNK2FXMVZKNzdIQ1lkWTA3TDdFQW44TE8raFUyTE5EKzhzeEhnekVIRGFhTnVhc3AxUjkrK0JNYkdHakdIMUlJa1Y5TEdkakpNRDBGdUliSzVRYllmeE9NVFEyc3ptdVZ0ZFFLT3hkbUMrT3ZiRWV3VXkvR3hnYVdMSUx3MG1lU29ZT2RDck5sL05mdG8rTlloSmRnc3dNcndFMmd2TktKRDNGY21CTUVPTlovQWJjY214OUVpUy85RjJkeDJKQXdwd293bXU4QVpjMXNETUhscm52WWdEQkhtM1RvNXhqYlJVaEJBMllLTG4vSVg0aVdqVEJZSXlkZ0l3WXNqYVFoRkNBeUxEWml1RGpod21BdG0vUTJsZFFlcEtHQlVKclk4RGVvOStSREhEc0pCZ3ZCZUJPMTlYZEIrd09DQWxwQWVvVk01Zy90ZHRnNU1GZ0VyTkpMSlh5S3VZNi9OcTZDd0lCZE14VFlOMFpXZWFnWU93VUdNeXNPN0tVZS9tbzRuSUlkZkxxVnlROUdPQUVwWVRDWXdqandNc3FSMUNEZWhNc2dSSTVCY3IrSGMzdkdRdXdBR0N5NnArQVkvcXJaeFQ4UDdrZUlrKzM0Z1UrM2oyS1lKQXhtWFJHT016SWk2aS9rZm9Cb2Fjc3ZFazZTVUFKeWIyRXdIVVc0L2lTOERtSm1lZFp0RjFzcHFvRUR3MkNhRzQrbVQrS3ZxNzE0WTkvSDFFTGtMQUxQNitNdzBiMzh1K2twdnlONEtneG1ZNU9lcTNJeEp6ZmpMQURySVlMSytGMktHK1NDekwyYzlvWW53bUFPUGczN1U5UkdjMC9XT2Z6bkpnaGt4UGlUYzY5bjg4bjJEdTZWMEIwaEJCZ00xcmh4WFgrRmp6cXlhQXp6bjRoeFNSYzQ2NDBUTFk5OWtnOHptVUFOaDRMQllNR2JOSERucjhWOEdqNlBoZVZCNWlQL3JUc3lEN3owSVl2c0E3STJDQjNBWUREVHJieVczUDRReFRCL0pWMjFUWWQ3Ym1GeFhXazBMWktUTEdjZFZLeWcxdktCQkMrQXdXQ1dNS21vazFDRnY4bjdjRWxuODMvOUZ2SGFhdUhUYTdVL3RESmFMaDdsUThVUVdMUlVoTUZnT3B0Y0xwVjRxVktFMlVodjgxRi9GdVJMNVNRcFlReStpSHJXZit0ZjdjZGpDSGE5YVAva0Y4aU5EUVJ6by8vdmZtcnc3M20yLy9mODg5N2xQNStSY0lEeEd2SmEvSnJ5MnZJZTVMM2d3Z3VtMnY0ZldkN0lXS0ovWTdNQUFBQUFTVVZPUks1Q1lJST0iLGJsb2Nrczpbe29wY29kZToid2hlbkJvb2xlYW5IYXQiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5IQVQsdGV4dDoid2hlbiBbSU5QVVRdIixpc0VkZ2VBY3RpdmF0ZWQ6ITAsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7SU5QVVQ6e3R5cGU6bi5Bcmd1bWVudFR5cGUuQk9PTEVBTixkZWZhdWx0VmFsdWU6IiJ9fX0se29wY29kZToid2hlbktleVN0cmluZyIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkhBVCx0ZXh0OiJ3aGVuIGtleSBbS0VZX09QVElPTl0gcHJlc3NlZCIsaXNFZGdlQWN0aXZhdGVkOiEwLGFyZ3VtZW50czp7S0VZX09QVElPTjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJlbnRlciJ9fX0sIi0tLSIse29wY29kZToia2V5U3RyaW5nUHJlc3NlZCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkJPT0xFQU4sdGV4dDoia2V5IFtLRVlfT1BUSU9OXSBwcmVzc2VkPyIsYXJndW1lbnRzOntLRVlfT1BUSU9OOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6ImVudGVyIn19fSx7b3Bjb2RlOiJ0cnVlRmFsc2VCb29sZWFuIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJbVFJVRUZBTFNFXSIsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7VFJVRUZBTFNFOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6InRydWUiLG1lbnU6InRydWVGYWxzZU1lbnUifX19LHtvcGNvZGU6InN0cmluZ0lmIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiaWYgW0JPT0xFQU5dIHRoZW4gW0lOUFVUQV0iLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7Qk9PTEVBTjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5CT09MRUFOLGRlZmF1bHRWYWx1ZToiIn0sSU5QVVRBOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6ImFwcGxlIn19fSx7b3Bjb2RlOiJzdHJpbmdJZkVsc2UiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJpZiBbQk9PTEVBTl0gdGhlbiBbSU5QVVRBXSBlbHNlIFtJTlBVVEJdIixoaWRlRnJvbVBhbGV0dGU6ITAsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntCT09MRUFOOnt0eXBlOm4uQXJndW1lbnRUeXBlLkJPT0xFQU4sZGVmYXVsdFZhbHVlOiIifSxJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYXBwbGUifSxJTlBVVEI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYmFuYW5hIn19fSwiLS0tIix7b3Bjb2RlOiJnZXRFZmZlY3RWYWx1ZSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6ImVmZmVjdCBbSU5QVVRdIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJjb2xvciIsbWVudToiY29sb3JNZW51In19fSx7b3Bjb2RlOiJjbG9uZXNCZWluZ1VzZWQiLGhpZGVGcm9tUGFsZXR0ZTohMCxibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiY2xvbmUgY291bnQifSx7b3Bjb2RlOiJpc0Nsb25lIixoaWRlRnJvbVBhbGV0dGU6ITAsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkJPT0xFQU4sdGV4dDoiaXMgY2xvbmU/IixmaWx0ZXI6W24uVGFyZ2V0VHlwZS5TUFJJVEVdfSx7b3Bjb2RlOiJzcHJpdGVDbGlja2VkIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJzcHJpdGUgY2xpY2tlZD8iLGZpbHRlcjpbbi5UYXJnZXRUeXBlLlNQUklURV19LCItLS0iLHtvcGNvZGU6ImxldHRlcnNUb09mIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoibGV0dGVycyBbSU5QVVRBXSB0byBbSU5QVVRCXSBvZiBbU1RSSU5HXSIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9LElOUFVUQjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIzIn0sU1RSSU5HOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6InN1c3BpY2lvdXMifX19LHtvcGNvZGU6InJlcGxhY2VXb3JkcyIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6InJlcGxhY2UgW0lOUFVUQV0gd2l0aCBbSU5QVVRCXSBpbiBbU1RSSU5HXSIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiU2NyYXRjaCJ9LElOUFVUQjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJUdXJib3dhcnAifSxTVFJJTkc6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiU2NyYXRjaCBpcyBicmlsbGlhbnQhIn19fSx7b3Bjb2RlOiJmaW5kSW5kZXhPZlN0cmluZyIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6ImluZGV4IG9mIFtJTlBVVEFdIGluIFtJTlBVVEJdIixhcmd1bWVudHM6e0lOUFVUQTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJicmlsbGlhbnQifSxJTlBVVEI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVHVyYm93YXJwIGlzIGJyaWxsaWFudCEifX19LHtvcGNvZGU6Iml0ZW1PZkZyb21TdHJpbmciLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJpdGVtIFtJTlBVVEFdIG9mIFtJTlBVVEJdIHNwbGl0IGJ5IFtJTlBVVENdIixhcmd1bWVudHM6e0lOUFVUQTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIyIn0sSU5QVVRCOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6ImFwcGxlfGJhbmFuYSJ9LElOUFVUQzp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ8In19fSx7b3Bjb2RlOiJzdHJpbmdUb1VwcGVyQ2FzZSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6IltTVFJJTkddIHRvIHVwcGVyY2FzZSIsZGlzYWJsZU1vbml0b3I6ITAsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7U1RSSU5HOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6ImFwcGxlIn19fSx7b3Bjb2RlOiJzdHJpbmdUb0xvd2VyQ2FzZSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6IltTVFJJTkddIHRvIGxvd2VyY2FzZSIsZGlzYWJsZU1vbml0b3I6ITAsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7U1RSSU5HOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6IkFQUExFIn19fSx7b3Bjb2RlOiJyZXZlcnNlU3RyaW5nIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoicmV2ZXJzZSBbU1RSSU5HXSIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntTVFJJTkc6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToicHJhd29icnV0In19fSwiLS0tIix7b3Bjb2RlOiJub3JCb29sZWFuIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJbSU5QVVRBXSBub3IgW0lOUFVUQl0iLGFyZ3VtZW50czp7SU5QVVRBOnt0eXBlOm4uQXJndW1lbnRUeXBlLkJPT0xFQU4sZGVmYXVsdFZhbHVlOiIifSxJTlBVVEI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuQk9PTEVBTixkZWZhdWx0VmFsdWU6IiJ9fX0se29wY29kZToieG9yQm9vbGVhbiIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkJPT0xFQU4sdGV4dDoiW0lOUFVUQV0geG9yIFtJTlBVVEJdIixhcmd1bWVudHM6e0lOUFVUQTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5CT09MRUFOLGRlZmF1bHRWYWx1ZToiIn0sSU5QVVRCOnt0eXBlOm4uQXJndW1lbnRUeXBlLkJPT0xFQU4sZGVmYXVsdFZhbHVlOiIifX19LHtvcGNvZGU6Inhub3JCb29sZWFuIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJbSU5QVVRBXSB4bm9yIFtJTlBVVEJdIixhcmd1bWVudHM6e0lOUFVUQTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5CT09MRUFOLGRlZmF1bHRWYWx1ZToiIn0sSU5QVVRCOnt0eXBlOm4uQXJndW1lbnRUeXBlLkJPT0xFQU4sZGVmYXVsdFZhbHVlOiIifX19LHtvcGNvZGU6Im5hbmRCb29sZWFuIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJbSU5QVVRBXSBuYW5kIFtJTlBVVEJdIixhcmd1bWVudHM6e0lOUFVUQTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5CT09MRUFOLGRlZmF1bHRWYWx1ZToiIn0sSU5QVVRCOnt0eXBlOm4uQXJndW1lbnRUeXBlLkJPT0xFQU4sZGVmYXVsdFZhbHVlOiIifX19LCItLS0iLHtvcGNvZGU6InN0cmluZ1JlcG9ydGVyIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiW1NUUklOR10iLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7U1RSSU5HOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6ImFwcGxlIn19fSx7b3Bjb2RlOiJjb2xvdXJIZXgiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJjb2xvciBbQ09MT1VSXSIsYXJndW1lbnRzOntDT0xPVVI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuQ09MT1IsZGVmYXVsdFZhbHVlOiIjMDA4OGZmIn19fSx7b3Bjb2RlOiJhbmdsZVJlcG9ydGVyIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiYW5nbGUgW0FOR0xFXSIsYXJndW1lbnRzOntBTkdMRTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5BTkdMRSxkZWZhdWx0VmFsdWU6IjkwIn19fSx7b3Bjb2RlOiJtYXRyaXhSZXBvcnRlciIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6Im1hdHJpeCBbTUFUUklYXSIsYXJndW1lbnRzOntNQVRSSVg6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTUFUUklYLGRlZmF1bHRWYWx1ZToiMDEwMTAwMTAxMDAwMDAwMTAwMDEwMTExMCJ9fX0se29wY29kZToibm90ZVJlcG9ydGVyIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoibm90ZSBbTk9URV0iLGFyZ3VtZW50czp7Tk9URTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OT1RFLGRlZmF1bHRWYWx1ZToiIn19fSx7b3Bjb2RlOiJuZXdsaW5lQ2hhcmFjdGVyIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoibmV3bGluZSBjaGFyYWN0ZXIiLGhpZGVGcm9tUGFsZXR0ZTohMCxkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIse29wY29kZToiZXF1YWxzRXhhY3RseSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkJPT0xFQU4sdGV4dDoiW09ORV0gPT09IFtUV09dIixhcmd1bWVudHM6e09ORTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJhcHBsZSJ9LFRXTzp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJiYW5hbmEifX19LHtvcGNvZGU6Im5vdEVxdWFsVG8iLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5CT09MRUFOLHRleHQ6IltJTlBVVEFdIOKJoCBbSU5QVVRCXSIsYXJndW1lbnRzOntJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYXBwbGUifSxJTlBVVEI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYmFuYW5hIn19fSx7b3Bjb2RlOiJtb3JlVGhhbkVxdWFsIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJbSU5QVVRBXSDiiaUgW0lOUFVUQl0iLGFyZ3VtZW50czp7SU5QVVRBOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjE2In0sSU5QVVRCOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjI1In19fSx7b3Bjb2RlOiJsZXNzVGhhbkVxdWFsIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJbSU5QVVRBXSDiiaQgW0lOUFVUQl0iLGFyZ3VtZW50czp7SU5QVVRBOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjE2In0sSU5QVVRCOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjI1In19fSx7b3Bjb2RlOiJzdHJpbmdDaGVja0Jvb2xlYW4iLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5CT09MRUFOLHRleHQ6IltJTlBVVF0gaXMgW0RST1BET1dOXSIsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJhcHBsZSJ9LERST1BET1dOOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6InRleHQiLG1lbnU6InN0cmluZ0NoZWNrTWVudSJ9fX0sIi0tLSIse29wY29kZToiZW5jb2RlVG9CbG9jayIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6ImVuY29kZSBbU1RSSU5HXSB0byBbRFJPUERPV05dIixkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1NUUklORzp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiIifSxEUk9QRE9XTjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJiYXNlNjQiLG1lbnU6ImNvbnZlcnNpb25NZW51In19fSx7b3Bjb2RlOiJkZWNvZGVGcm9tQmxvY2siLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJkZWNvZGUgW1NUUklOR10gZnJvbSBbRFJPUERPV05dIixkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e1NUUklORzp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiIifSxEUk9QRE9XTjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJiYXNlNjQiLG1lbnU6ImNvbnZlcnNpb25NZW51In19fSwiLS0tIix7b3Bjb2RlOiJuZWdhdGl2ZVJlcG9ydGVyIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiLSBbSU5QVVRdIixkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e0lOUFVUOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IiJ9fX0se29wY29kZToiZXhwb25lbnRCbG9jayIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6IltJTlBVVEFdIF4gW0lOUFVUQl0iLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7SU5QVVRBOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IiJ9LElOUFVUQjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIifX19LHtvcGNvZGU6InJvb3RCbG9jayIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6IltJTlBVVEFdIOKImiBbSU5QVVRCXSIsYXJndW1lbnRzOntJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiIn0sSU5QVVRCOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IiJ9fX0se29wY29kZToibm9ybWFsaXNlVmFsdWUiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJub3JtYWxpc2UgW0lOUFVUXSIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMDAifX19LHtvcGNvZGU6ImNsYW1wTnVtYmVyIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsaGlkZUZyb21QYWxldHRlOiEwLHRleHQ6ImNsYW1wIFtJTlBVVEFdIGJldHdlZW4gW0lOUFVUQl0gYW5kIFtJTlBVVENdIixhcmd1bWVudHM6e0lOUFVUQTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMDAifSxJTlBVVEI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMjUifSxJTlBVVEM6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiNTAifX19LCItLS0iLHtvcGNvZGU6InNldFZhcmlhYmxlVG8iLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InNldCB2YXJpYWJsZSBbSU5QVVRBXSB0byBbSU5QVVRCXSIsYXJndW1lbnRzOntJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXkgdmFyaWFibGUifSxJTlBVVEI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiMCJ9fX0se29wY29kZToiY2hhbmdlVmFyaWFibGVCeSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoiY2hhbmdlIHZhcmlhYmxlIFtJTlBVVEFdIGJ5IFtJTlBVVEJdIixhcmd1bWVudHM6e0lOUFVUQTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteSB2YXJpYWJsZSJ9LElOUFVUQjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiIxIn19fSx7b3Bjb2RlOiJnZXRWYXJpYWJsZSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6InZhcmlhYmxlIFtJTlBVVF0iLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7SU5QVVQ6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToibXkgdmFyaWFibGUifX19LHtvcGNvZGU6ImRlbGV0ZVZhcmlhYmxlIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJkZWxldGUgdmFyaWFibGUgW0lOUFVUXSIsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJteSB2YXJpYWJsZSJ9fX0se29wY29kZToiZGVsZXRlQWxsVmFyaWFibGVzIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJkZWxldGUgYWxsIHZhcmlhYmxlcyJ9LHtvcGNvZGU6Imxpc3RWYXJpYWJsZXMiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJsaXN0IGFjdGl2ZSB2YXJpYWJsZXMiLGRpc2FibGVNb25pdG9yOiEwfSwiLS0tIix7b3Bjb2RlOiJncmVlbkZsYWciLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELGhpZGVGcm9tUGFsZXR0ZTohMCx0ZXh0OiJncmVlbiBmbGFnIn0se29wY29kZToic2V0VXNlcm5hbWUiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InNldCB1c2VybmFtZSB0byBbSU5QVVRdIixhcmd1bWVudHM6e0lOUFVUOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6IkxpbHlNYWtlc1RoaW5ncyJ9fX0sIi0tLSIse29wY29kZToic2V0U3ByaXRlU1ZHIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJyZXBsYWNlIFNWRyBkYXRhIGZvciBjb3N0dW1lIFtJTlBVVEFdIHdpdGggW0lOUFVUQl0iLGFyZ3VtZW50czp7SU5QVVRBOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjEifSxJTlBVVEI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiIn19fSwiLS0tIix7b3Bjb2RlOiJhbGVydEJsb2NrIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJhbGVydCBbU1RSSU5HXSIsYXJndW1lbnRzOntTVFJJTkc6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiQSByZWQgc3B5IGlzIGluIHRoZSBiYXNlISJ9fX0se29wY29kZToiaW5wdXRQcm9tcHRCbG9jayIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6InByb21wdCBbU1RSSU5HXSIsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntTVFJJTkc6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiVGhlIGNvZGUgaXMgMSwgMSwgMS4uIGVyci4uLiAxISJ9fX0se29wY29kZToiY29uZmlybWF0aW9uQmxvY2siLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5CT09MRUFOLHRleHQ6ImNvbmZpcm0gW1NUUklOR10iLGFyZ3VtZW50czp7U1RSSU5HOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6IkFyZSB5b3UgdGhlIHJlZCBzcHk/In19fSx7b3Bjb2RlOiJnb1RvTGluayIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoib3BlbiBsaW5rIFtJTlBVVF0gaW4gbmV3IHRhYiIsaGlkZUZyb21QYWxldHRlOiEwLGFyZ3VtZW50czp7SU5QVVQ6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiIn19fSx7b3Bjb2RlOiJyZWRpcmVjdFRvTGluayIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoicmVkaXJlY3QgdG8gbGluayBbSU5QVVRdIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntJTlBVVDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiIifX19LCItLS0iLHtvcGNvZGU6InNldENsaXBib2FyZCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoic2V0IFtTVFJJTkddIHRvIGNsaXBib2FyZCIsYXJndW1lbnRzOntTVFJJTkc6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiYXBwbGUifX19LHtvcGNvZGU6InJlYWRDbGlwYm9hcmQiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJjbGlwYm9hcmQifSwiLS0tIix7b3Bjb2RlOiJpc1VzZXJNb2JpbGUiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5CT09MRUFOLHRleHQ6ImlzIG1vYmlsZT8ifSx7b3Bjb2RlOiJzY3JlZW5SZXBvcnRlciIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6InNjcmVlbiBbRFJPUERPV05dIixkaXNhYmxlTW9uaXRvcjohMCxhcmd1bWVudHM6e0RST1BET1dOOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6IndpZHRoIixtZW51OiJzY3JlZW5SZXBvcnRlck1lbnUifX19LHtvcGNvZGU6IndpbmRvd1JlcG9ydGVyIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoid2luZG93IFtEUk9QRE9XTl0iLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7RFJPUERPV046e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToid2lkdGgiLG1lbnU6InNjcmVlblJlcG9ydGVyTWVudSJ9fX0se29wY29kZToib3NCcm93c2VyRGV0YWlscyIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6IltEUk9QRE9XTl0iLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7RFJPUERPV046e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToib3BlcmF0aW5nIHN5c3RlbSIsbWVudToib3NCcm93c2VyTWVudSJ9fX0se29wY29kZToicHJvamVjdFVSTCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6InByb2plY3QgVVJMIixkaXNhYmxlTW9uaXRvcjohMH0sIi0tLSIse29wY29kZToiY29uc29sZUxvZyIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoiY29uc29sZSBbRFJPUERPV05dIFtJTlBVVF0iLGRpc2FibGVNb25pdG9yOiEwLGFyZ3VtZW50czp7RFJPUERPV046e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToibG9nIixtZW51OiJjb25zb2xlTG9nTWVudSJ9LElOUFVUOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6IkFwcGxlIn19fSx7b3Bjb2RlOiJjbGVhckNvbnNvbGUiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6ImNsZWFyIGNvbnNvbGUifSwiLS0tIix7b3Bjb2RlOiJjb21tZW50SGF0IixibG9ja1R5cGU6bi5CbG9ja1R5cGUuSEFULHRleHQ6Ii8vIFtTVFJJTkddIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntTVFJJTkc6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiY29tbWVudCJ9fX0se29wY29kZToiY29tbWVudENvbW1hbmQiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6Ii8vIFtTVFJJTkddIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntTVFJJTkc6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiY29tbWVudCJ9fX0se29wY29kZToiY29tbWVudFN0cmluZyIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLlJFUE9SVEVSLHRleHQ6Ii8vIFtJTlBVVEFdIFtJTlBVVEJdIixoaWRlRnJvbVBhbGV0dGU6ITAsZGlzYWJsZU1vbml0b3I6ITAsYXJndW1lbnRzOntJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiY29tbWVudCJ9LElOUFVUQjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJpbnB1dCJ9fX0se29wY29kZToiY29tbWVudEJvb2wiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5CT09MRUFOLHRleHQ6Ii8vIFtJTlBVVEFdIFtJTlBVVEJdIixoaWRlRnJvbVBhbGV0dGU6ITAsYXJndW1lbnRzOntJTlBVVEE6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiY29tbWVudCJ9LElOUFVUQjp7dHlwZTpuLkFyZ3VtZW50VHlwZS5CT09MRUFOfX19XSxtZW51czp7Y29udmVyc2lvbk1lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6ImJhc2U2NCIsdmFsdWU6ImJhc2U2NCJ9LHt0ZXh0OiJiaW5hcnkiLHZhbHVlOiJiaW5hcnkifV19LHRydWVGYWxzZU1lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6InRydWUiLHZhbHVlOiJ0cnVlIn0se3RleHQ6ImZhbHNlIix2YWx1ZToiZmFsc2UifSx7dGV4dDoicmFuZG9tIix2YWx1ZToicmFuZG9tIn1dfSxzY3JlZW5SZXBvcnRlck1lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6IndpZHRoIix2YWx1ZToid2lkdGgifSx7dGV4dDoiaGVpZ2h0Iix2YWx1ZToiaGVpZ2h0In1dfSx3aW5kb3dSZXBvcnRlck1lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6IndpZHRoIix2YWx1ZToid2lkdGgifSx7dGV4dDoiaGVpZ2h0Iix2YWx1ZToiaGVpZ2h0In1dfSxzdHJpbmdDaGVja01lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6InRleHQiLHZhbHVlOiJ0ZXh0In0se3RleHQ6Im51bWJlciIsdmFsdWU6Im51bWJlciJ9LHt0ZXh0OiJ1cHBlcmNhc2UiLHZhbHVlOiJ1cHBlcmNhc2UifSx7dGV4dDoibG93ZXJjYXNlIix2YWx1ZToibG93ZXJjYXNlIn1dfSxvc0Jyb3dzZXJNZW51OnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6W3t0ZXh0OiJvcGVyYXRpbmcgc3lzdGVtIix2YWx1ZToib3BlcmF0aW5nIHN5c3RlbSJ9LHt0ZXh0OiJicm93c2VyIix2YWx1ZToiYnJvd3NlciJ9XX0sY29uc29sZUxvZ01lbnU6e2FjY2VwdFJlcG9ydGVyczohMSxpdGVtczpbe3RleHQ6ImxvZyIsdmFsdWU6ImxvZyJ9LHt0ZXh0OiJlcnJvciIsdmFsdWU6ImVycm9yIn0se3RleHQ6Indhcm4iLHZhbHVlOiJ3YXJuIn1dfSxjb2xvck1lbnU6e2FjY2VwdFJlcG9ydGVyczohMCxpdGVtczpbe3RleHQ6ImNvbG9yIix2YWx1ZToiY29sb3IifSx7dGV4dDoiZmlzaGV5ZSIsdmFsdWU6ImZpc2hleWUifSx7dGV4dDoid2hpcmwiLHZhbHVlOiJ3aGlybCJ9LHt0ZXh0OiJwaXhlbGF0ZSIsdmFsdWU6InBpeGVsYXRlIn0se3RleHQ6Im1vc2FpYyIsdmFsdWU6Im1vc2FpYyJ9LHt0ZXh0OiJicmlnaHRuZXNzIix2YWx1ZToiYnJpZ2h0bmVzcyJ9LHt0ZXh0OiJnaG9zdCIsdmFsdWU6Imdob3N0In1dfX19fXdoZW5Cb29sZWFuSGF0KEEpe3JldHVybiBBLklOUFVUfXdoZW5LZXlTdHJpbmcoQSxlKXtyZXR1cm4gZS5pb1F1ZXJ5KCJrZXlib2FyZCIsImdldEtleUlzRG93biIsW0EuS0VZX09QVElPTl0pfWVxdWFsc0V4YWN0bHkoQSl7cmV0dXJuIEEuT05FPT09QS5UV099c3RyaW5nUmVwb3J0ZXIoQSl7cmV0dXJuIEEuU1RSSU5HfWNvbG91ckhleChBKXtyZXR1cm4gQS5DT0xPVVJ9YW5nbGVSZXBvcnRlcihBKXtyZXR1cm4gQS5BTkdMRX1tYXRyaXhSZXBvcnRlcihBKXtyZXR1cm4gQS5NQVRSSVh9bm90ZVJlcG9ydGVyKEEpe3JldHVybiBBLk5PVEV9bmV3bGluZUNoYXJhY3Rlcigpe3JldHVybiJcbiJ9c3RyaW5nSWYoQSl7cmV0dXJuIEEuQk9PTEVBTj9BLklOUFVUQToiIn1zdHJpbmdJZkVsc2UoQSl7cmV0dXJuIEEuQk9PTEVBTj9BLklOUFVUQTpBLklOUFVUQn1sZXR0ZXJzVG9PZihBKXt2YXIgZT1BLlNUUklORy50b1N0cmluZygpLHQ9QS5JTlBVVEEtMSxuPUEuSU5QVVRCO3JldHVybiBlLnNsaWNlKHQsbil9cmVwbGFjZVdvcmRzKEEpe3ZhciBlPUEuSU5QVVRBLHQ9QS5JTlBVVEI7cmV0dXJuIEEuU1RSSU5HLnJlcGxhY2UoZSx0KX1leHBvbmVudEJsb2NrKEEpe3JldHVybiBNYXRoLnBvdyhBLklOUFVUQSxBLklOUFVUQil9cm9vdEJsb2NrKEEpe3JldHVybiBNYXRoLnBvdyhBLklOUFVUQiwxL0EuSU5QVVRBKX1ub3JtYWxpc2VWYWx1ZShBKXt2YXIgZT1BLklOUFVULHQ9ZS9NYXRoLmFicyhlKTtyZXR1cm4gaXNOYU4odCk/IjAiOnR9c3RyaW5nVG9VcHBlckNhc2UoQSl7cmV0dXJuIEEuU1RSSU5HLnRvVXBwZXJDYXNlKCl9c3RyaW5nVG9Mb3dlckNhc2UoQSl7cmV0dXJuIEEuU1RSSU5HLnRvTG93ZXJDYXNlKCl9cmV2ZXJzZVN0cmluZyhBKXtyZXR1cm4gQS5TVFJJTkcuc3BsaXQoIiIpLnJldmVyc2UoKS5qb2luKCIiKX1lbmNvZGVUb0Jsb2NrKEEpe3JldHVybiIiPT09QS5TVFJJTkc/IiI6ImJhc2U2NCI9PT1BLkRST1BET1dOP2J0b2EoQS5TVFJJTkcpOiJiaW5hcnkiPT09QS5EUk9QRE9XTj9BLlNUUklORy5zcGxpdCgiIikubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQS5jaGFyQ29kZUF0KDApLnRvU3RyaW5nKDIpfSkpLmpvaW4oIiAiKTp2b2lkIDB9ZGVjb2RlRnJvbUJsb2NrKEEpe3JldHVybiIiPT09QS5TVFJJTkc/IiI6ImJhc2U2NCI9PT1BLkRST1BET1dOP2F0b2IoQS5TVFJJTkcpOiJiaW5hcnkiPT09QS5EUk9QRE9XTj9BLlNUUklORy50b1N0cmluZygpLnNwbGl0KCIgIikubWFwKEE9PlN0cmluZy5mcm9tQ2hhckNvZGUocGFyc2VJbnQoQSwyKSkpLmpvaW4oIiIpOnZvaWQgMH10cnVlRmFsc2VCb29sZWFuKEEpe3JldHVybiJyYW5kb20iPT09QS5UUlVFRkFMU0U/TWF0aC5yYW5kb20oKT4uNToidHJ1ZSI9PT1BLlRSVUVGQUxTRX1pc0Nsb25lKEEsZSl7cmV0dXJuIWUudGFyZ2V0LmlzT3JpZ2luYWx9Y2xvbmVzQmVpbmdVc2VkKEEsZSl7cmV0dXJuIHZtLnJ1bnRpbWUuX2Nsb25lQ291bnRlcn1rZXlTdHJpbmdQcmVzc2VkKEEsZSl7cmV0dXJuIGUuaW9RdWVyeSgia2V5Ym9hcmQiLCJnZXRLZXlJc0Rvd24iLFtBLktFWV9PUFRJT05dKX1zcHJpdGVDbGlja2VkKEEsZSl7cmV0dXJuIGUuaW9RdWVyeSgibW91c2UiLCJnZXRJc0Rvd24iKSYmZS50YXJnZXQuaXNUb3VjaGluZ09iamVjdCgiX21vdXNlXyIpfW5vdEVxdWFsVG8oQSl7cmV0dXJuIEEuSU5QVVRBIT1BLklOUFVUQn1tb3JlVGhhbkVxdWFsKEEpe3JldHVybiBBLklOUFVUQT49QS5JTlBVVEJ9bGVzc1RoYW5FcXVhbChBKXtyZXR1cm4gQS5JTlBVVEE8PUEuSU5QVVRCfXN0cmluZ0NoZWNrQm9vbGVhbihBKXtBLklOUFVUO3JldHVybiJ0ZXh0Ij09PUEuRFJPUERPV04/aXNOYU4oQS5JTlBVVCk6Im51bWJlciI9PT1BLkRST1BET1dOPyFpc05hTihBLklOUFVUKToidXBwZXJjYXNlIj09PUEuRFJPUERPV04/QS5JTlBVVD09QS5JTlBVVC50b1VwcGVyQ2FzZSgpOiJsb3dlcmNhc2UiPT09QS5EUk9QRE9XTj9BLklOUFVUPT1BLklOUFVULnRvTG93ZXJDYXNlKCk6dm9pZCAwfW5vckJvb2xlYW4oQSl7cmV0dXJuIShBLklOUFVUQXx8QS5JTlBVVEIpfXhvckJvb2xlYW4oQSl7cmV0dXJuIEEuSU5QVVRBIT09QS5JTlBVVEJ9eG5vckJvb2xlYW4oQSl7cmV0dXJuIEEuSU5QVVRBPT09QS5JTlBVVEJ9bmFuZEJvb2xlYW4oQSl7cmV0dXJuIShBLklOUFVUQSYmQS5JTlBVVEIpfXNjcmVlblJlcG9ydGVyKEEpe3JldHVybiJ3aWR0aCI9PT1BLkRST1BET1dOP3NjcmVlbi53aWR0aDoiaGVpZ2h0Ij09PUEuRFJPUERPV04/c2NyZWVuLmhlaWdodDp2b2lkIDB9d2luZG93UmVwb3J0ZXIoQSl7cmV0dXJuIndpZHRoIj09PUEuRFJPUERPV04/d2luZG93LmlubmVyV2lkdGg6ImhlaWdodCI9PT1BLkRST1BET1dOP3dpbmRvdy5pbm5lckhlaWdodDp2b2lkIDB9b3NCcm93c2VyRGV0YWlscyhBKXt2YXIgZT1uYXZpZ2F0b3IudXNlckFnZW50O3JldHVybiJvcGVyYXRpbmcgc3lzdGVtIj09PUEuRFJPUERPV04/ZS5pbmNsdWRlcygiTWFjIE9TIik/Im1hY09TIjplLmluY2x1ZGVzKCJDck9TIik/IkNocm9tZU9TIjplLmluY2x1ZGVzKCJMaW51eCIpPyJMaW51eCI6ZS5pbmNsdWRlcygiV2luZG93cyIpPyJXaW5kb3dzIjplLmluY2x1ZGVzKCJpUGFkIil8fGUuaW5jbHVkZXMoImlQb2QiKXx8ZS5pbmNsdWRlcygiaVBob25lIik/ImlPUyI6ZS5pbmNsdWRlcygiQW5kcm9pZCIpPyJBbmRyb2lkIjoiT3RoZXIiOiJicm93c2VyIj09PUEuRFJPUERPV04/ZS5pbmNsdWRlcygiQ2hyb21lIik/IkNocm9tZSI6ZS5pbmNsdWRlcygiTVNJRSIpfHxlLmluY2x1ZGVzKCJydjoiKT8iSW50ZXJuZXQgRXhwbG9yZXIiOmUuaW5jbHVkZXMoIkZpcmVmb3giKT8iRmlyZWZveCI6ZS5pbmNsdWRlcygiU2FmYXJpIik/IlNhZmFyaSI6Ik90aGVyIjp2b2lkIDB9cHJvamVjdFVSTCgpe3JldHVybiB3aW5kb3cubG9jYXRpb24uaHJlZn1ncmVlbkZsYWcoQSxlKXtlLnJ1bnRpbWUuZ3JlZW5GbGFnKCl9c2V0VXNlcm5hbWUoQSxlKXtlLnJ1bnRpbWUudm0ucG9zdElPRGF0YSgidXNlckRhdGEiLHt1c2VybmFtZTpBLklOUFVULGxvZ2dlZEluOiExfSl9Y29uc29sZUxvZyhBKXsibG9nIj09PUEuRFJPUERPV04/Y29uc29sZS5sb2coQS5JTlBVVCk6ImVycm9yIj09PUEuRFJPUERPV04/Y29uc29sZS5lcnJvcihBLklOUFVUKToid2FybiI9PT1BLkRST1BET1dOJiZjb25zb2xlLndhcm4oQS5JTlBVVCl9Y2xlYXJDb25zb2xlKCl7Y29uc29sZS5jbGVhcigpfXNldENsaXBib2FyZChBKXtuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChBLlNUUklORyl9cmVhZENsaXBib2FyZChBKXtyZXR1cm4gbmF2aWdhdG9yLmNsaXBib2FyZCYmbmF2aWdhdG9yLmNsaXBib2FyZC5yZWFkVGV4dD9uYXZpZ2F0b3IuY2xpcGJvYXJkLnJlYWRUZXh0KCk6IiJ9YWxlcnRCbG9jayhBKXthbGVydChBLlNUUklORyl9aW5wdXRQcm9tcHRCbG9jayhBKXtyZXR1cm4gcHJvbXB0KEEuU1RSSU5HKX1jb25maXJtYXRpb25CbG9jayhBKXtyZXR1cm4hIWNvbmZpcm0oQS5TVFJJTkcpfWNvbW1lbnRIYXQoQSxlKXtyZXR1cm4gQS5JTlBVVH1jb21tZW50Q29tbWFuZChBKXt9Y29tbWVudFN0cmluZyhBKXtyZXR1cm4gQS5JTlBVVEJ9Y29tbWVudEJvb2woQSl7cmV0dXJuIGkudG9Cb29sZWFuKEEuSU5QVVRCKX1nZXRWYXJpYWJsZShBKXtyZXR1cm4gQS5JTlBVVCBpbiByLnZhcmlhYmxlcz9yLnZhcmlhYmxlc1tBLklOUFVUXToiIn1zZXRWYXJpYWJsZVRvKEEpe3IudmFyaWFibGVzW0EuSU5QVVRBXT1BLklOUFVUQn1jaGFuZ2VWYXJpYWJsZUJ5KEEpe2lmKEEuSU5QVVRBIGluIHIudmFyaWFibGVzKXt2YXIgZT1yLnZhcmlhYmxlc1tBLklOUFVUQV0sdD1BLklOUFVUQjtyLnZhcmlhYmxlc1tBLklOUFVUQV09ZSt0fWVsc2Ugci52YXJpYWJsZXNbQS5JTlBVVEFdPUEuSU5QVVRCfWxpc3RWYXJpYWJsZXMoQSxlKXtyZXR1cm4gT2JqZWN0LmtleXMoci52YXJpYWJsZXMpLmxlbmd0aD9PYmplY3Qua2V5cyhyLnZhcmlhYmxlcyk6dm9pZCAwfWRlbGV0ZVZhcmlhYmxlKEEpe1JlZmxlY3QuZGVsZXRlUHJvcGVydHkoci52YXJpYWJsZXMsQS5JTlBVVCl9ZGVsZXRlQWxsVmFyaWFibGVzKCl7UmVmbGVjdC5kZWxldGVQcm9wZXJ0eShyLCJ2YXJpYWJsZXMiKSxyLnZhcmlhYmxlcz17fX1jbGFtcE51bWJlcihBKXt2YXIgZT1BLklOUFVUQSx0PUEuSU5QVVRCLG49QS5JTlBVVEM7cmV0dXJuIE1hdGgubWluKE1hdGgubWF4KGUsdCksbil9ZmluZEluZGV4T2ZTdHJpbmcoQSl7dmFyIGU9QS5JTlBVVEEsdD1BLklOUFVUQjtyZXR1cm4gdC5pbmNsdWRlcyhlKT90LmluZGV4T2YoZSkrMToiIn1pdGVtT2ZGcm9tU3RyaW5nKEEsZSl7dmFyIHQ9QS5JTlBVVEEtMSxuPVN0cmluZyhBLklOUFVUQiksaT1BLklOUFVUQztyZXR1cm4gbi5zcGxpdChpKVt0XXx8IiJ9aXNVc2VyTW9iaWxlKEEsZSl7cmV0dXJuIG5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoIk1vYmlsZSIpfWdldEVmZmVjdFZhbHVlKEEsZSl7cmV0dXJuIGUudGFyZ2V0LmVmZmVjdHNbQS5JTlBVVF19bmVnYXRpdmVSZXBvcnRlcihBKXtyZXR1cm4tMSpBLklOUFVUfXNldFNwcml0ZVNWRyhBLGUpe3RyeXt0aGlzLnJ1bnRpbWUucmVuZGVyZXIudXBkYXRlU1ZHU2tpbihlLnRhcmdldC5zcHJpdGUuY29zdHVtZXNbQS5JTlBVVEEtMV0uc2tpbklkLEEuSU5QVVRCKX1jYXRjaChBKXtyZXR1cm59dm0uZW1pdFRhcmdldHNVcGRhdGUoKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDEpLGk9dCgzKSxyPXQoMik7bGV0IG89T2JqZWN0LmNyZWF0ZShudWxsKTtjb25zdCBzPShBLGUpPT4oe2Jsb2NrVHlwZTpuLkxBQkVMLHRleHQ6QSxoaWRlRnJvbVBhbGV0dGU6ZX0pO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnJ1bnRpbWU9QX1nZXRJbmZvKCl7cmV0dXJue2lkOiJsbXNUZW1wVmFyczIiLG5hbWU6IlRlbXBvcmFyeSBWYXJpYWJsZXMiLGNvbG9yMToiI0ZGNzkxQSIsY29sb3IyOiIjRTE1RDAwIixibG9ja3M6W3MoIlRocmVhZCBWYXJpYWJsZXMiLCExKSx7b3Bjb2RlOiJzZXRUaHJlYWRWYXJpYWJsZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgdGhyZWFkIHZhciBbVkFSXSB0byBbU1RSSU5HXSIsYXJndW1lbnRzOntWQVI6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ2YXJpYWJsZSJ9LFNUUklORzp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6IjAifX19LHtvcGNvZGU6ImNoYW5nZVRocmVhZFZhcmlhYmxlIixibG9ja1R5cGU6bi5DT01NQU5ELHRleHQ6ImNoYW5nZSB0aHJlYWQgdmFyIFtWQVJdIGJ5IFtOVU1dIixhcmd1bWVudHM6e1ZBUjp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InZhcmlhYmxlIn0sTlVNOnt0eXBlOmkuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMSJ9fX0sIi0tLSIse29wY29kZToiZ2V0VGhyZWFkVmFyaWFibGUiLGJsb2NrVHlwZTpuLlJFUE9SVEVSLHRleHQ6InRocmVhZCB2YXIgW1ZBUl0iLGRpc2FibGVNb25pdG9yOiEwLGFsbG93RHJvcEFueXdoZXJlOiEwLGFyZ3VtZW50czp7VkFSOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidmFyaWFibGUifX19LHtvcGNvZGU6InRocmVhZFZhcmlhYmxlRXhpc3RzIixibG9ja1R5cGU6bi5CT09MRUFOLHRleHQ6InRocmVhZCB2YXIgW1ZBUl0gZXhpc3RzPyIsYXJndW1lbnRzOntWQVI6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ2YXJpYWJsZSJ9fX0sIi0tLSIse29wY29kZToiZm9yRWFjaFRocmVhZFZhcmlhYmxlIixibG9ja1R5cGU6bi5MT09QLHRleHQ6ImZvciBbVkFSXSBpbiBbTlVNXSIsYXJndW1lbnRzOntWQVI6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ0aHJlYWQgdmFyaWFibGUifSxOVU06e3R5cGU6aS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIxMCJ9fX0se29wY29kZToibGlzdFRocmVhZFZhcmlhYmxlcyIsYmxvY2tUeXBlOm4uUkVQT1JURVIsdGV4dDoiYWN0aXZlIHRocmVhZCB2YXJpYWJsZXMiLGRpc2FibGVNb25pdG9yOiEwfSwiLS0tIixzKCJSdW50aW1lIFZhcmlhYmxlcyIsITEpLHtvcGNvZGU6InNldFJ1bnRpbWVWYXJpYWJsZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJzZXQgcnVudGltZSB2YXIgW1ZBUl0gdG8gW1NUUklOR10iLGFyZ3VtZW50czp7VkFSOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidmFyaWFibGUifSxTVFJJTkc6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiIwIn19fSx7b3Bjb2RlOiJjaGFuZ2VSdW50aW1lVmFyaWFibGUiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiY2hhbmdlIHJ1bnRpbWUgdmFyIFtWQVJdIGJ5IFtOVU1dIixhcmd1bWVudHM6e1ZBUjp7dHlwZTppLlNUUklORyxkZWZhdWx0VmFsdWU6InZhcmlhYmxlIn0sTlVNOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiMSJ9fX0sIi0tLSIse29wY29kZToiZ2V0UnVudGltZVZhcmlhYmxlIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJydW50aW1lIHZhciBbVkFSXSIsZGlzYWJsZU1vbml0b3I6ITAsYWxsb3dEcm9wQW55d2hlcmU6ITAsYXJndW1lbnRzOntWQVI6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJ2YXJpYWJsZSJ9fX0se29wY29kZToicnVudGltZVZhcmlhYmxlRXhpc3RzIixibG9ja1R5cGU6bi5CT09MRUFOLHRleHQ6InJ1bnRpbWUgdmFyIFtWQVJdIGV4aXN0cz8iLGFyZ3VtZW50czp7VkFSOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidmFyaWFibGUifX19LCItLS0iLHtvcGNvZGU6ImRlbGV0ZVJ1bnRpbWVWYXJpYWJsZSIsYmxvY2tUeXBlOm4uQ09NTUFORCx0ZXh0OiJkZWxldGUgcnVudGltZSB2YXIgW1ZBUl0iLGFyZ3VtZW50czp7VkFSOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToidmFyaWFibGUifX19LHtvcGNvZGU6ImRlbGV0ZUFsbFJ1bnRpbWVWYXJpYWJsZXMiLGJsb2NrVHlwZTpuLkNPTU1BTkQsdGV4dDoiZGVsZXRlIGFsbCBydW50aW1lIHZhcmlhYmxlcyJ9LHtvcGNvZGU6Imxpc3RSdW50aW1lVmFyaWFibGVzIixibG9ja1R5cGU6bi5SRVBPUlRFUix0ZXh0OiJhY3RpdmUgcnVudGltZSB2YXJpYWJsZXMifV19fXNldFRocmVhZFZhcmlhYmxlKEEsZSl7Y29uc3QgdD1lLnRocmVhZDt0LnZhcmlhYmxlc3x8KHQudmFyaWFibGVzPU9iamVjdC5jcmVhdGUobnVsbCkpO3QudmFyaWFibGVzW0EuVkFSXT1BLlNUUklOR31jaGFuZ2VUaHJlYWRWYXJpYWJsZShBLGUpe2NvbnN0IHQ9ZS50aHJlYWQ7dC52YXJpYWJsZXN8fCh0LnZhcmlhYmxlcz1PYmplY3QuY3JlYXRlKG51bGwpKTtjb25zdCBuPXQudmFyaWFibGVzLGk9ci50b051bWJlcihuW0EuVkFSXSksbz1yLnRvTnVtYmVyKEEuTlVNKTtuW0EuVkFSXT1pK299Z2V0VGhyZWFkVmFyaWFibGUoQSxlKXtjb25zdCB0PWUudGhyZWFkO3QudmFyaWFibGVzfHwodC52YXJpYWJsZXM9T2JqZWN0LmNyZWF0ZShudWxsKSk7Y29uc3Qgbj10LnZhcmlhYmxlc1tBLlZBUl07cmV0dXJuIHZvaWQgMD09PW4/IiI6bn10aHJlYWRWYXJpYWJsZUV4aXN0cyhBLGUpe2NvbnN0IHQ9ZS50aHJlYWQ7dC52YXJpYWJsZXN8fCh0LnZhcmlhYmxlcz1PYmplY3QuY3JlYXRlKG51bGwpKTtyZXR1cm4hKHZvaWQgMD09PXQudmFyaWFibGVzW0EuVkFSXSl9Zm9yRWFjaFRocmVhZFZhcmlhYmxlKEEsZSl7Y29uc3QgdD1lLnRocmVhZDt0LnZhcmlhYmxlc3x8KHQudmFyaWFibGVzPU9iamVjdC5jcmVhdGUobnVsbCkpO2NvbnN0IG49dC52YXJpYWJsZXM7aWYodm9pZCAwPT09ZS5zdGFja0ZyYW1lLmluZGV4JiYoZS5zdGFja0ZyYW1lLmluZGV4PTApLGUuc3RhY2tGcmFtZS5pbmRleDxOdW1iZXIoQS5OVU0pKXJldHVybiBlLnN0YWNrRnJhbWUuaW5kZXgrKyxuW0EuVkFSXT1lLnN0YWNrRnJhbWUuaW5kZXgsITB9bGlzdFRocmVhZFZhcmlhYmxlcyhBLGUpe2NvbnN0IHQ9ZS50aHJlYWQ7dC52YXJpYWJsZXN8fCh0LnZhcmlhYmxlcz1PYmplY3QuY3JlYXRlKG51bGwpKTtjb25zdCBuPXQudmFyaWFibGVzO3JldHVybiBPYmplY3Qua2V5cyhuKS5qb2luKCIsIil9c2V0UnVudGltZVZhcmlhYmxlKEEpe29bQS5WQVJdPUEuU1RSSU5HfWNoYW5nZVJ1bnRpbWVWYXJpYWJsZShBKXtjb25zdCBlPXIudG9OdW1iZXIob1tBLlZBUl0pLHQ9ci50b051bWJlcihBLk5VTSk7b1tBLlZBUl09ZSt0fWdldFJ1bnRpbWVWYXJpYWJsZShBKXtyZXR1cm4gQS5WQVIgaW4gbz9vW0EuVkFSXToiIn1ydW50aW1lVmFyaWFibGVFeGlzdHMoQSl7cmV0dXJuIEEuVkFSIGluIG99bGlzdFJ1bnRpbWVWYXJpYWJsZXMoQSxlKXtyZXR1cm4gT2JqZWN0LmtleXModGhpcy5ydW50aW1lLnZhcmlhYmxlcykuam9pbigiLCIpfWRlbGV0ZVJ1bnRpbWVWYXJpYWJsZShBKXtSZWZsZWN0LmRlbGV0ZVByb3BlcnR5KG8sQS5WQVIpfWRlbGV0ZUFsbFJ1bnRpbWVWYXJpYWJsZXMoKXtvPU9iamVjdC5jcmVhdGUobnVsbCl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49bmV3KHQoNDYpKSghMCksaT0iZGF0YTppbWFnZS9zdmcreG1sLCIrZW5jb2RlVVJJQ29tcG9uZW50KCdcbiAgICA8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmlld0JveD0iMCwwLDIwMCwyMDAiPlxuICAgICAgPGNpcmNsZSByPSIxMDAiIGN4PSIxMDAiIGN5PSIxMDAiIGZpbGw9IiM5OTY2ZmYiLz5cbiAgICAgIDxwYXRoIGQ9Ik0xMjIsNjF2LTRhMTIsMTIgMCwwLDAgLTEyLC0xMmgtNG0tMTcsMGgtMTZtLTE3LDBoLTRhMTIsMTIgMCwwLDAgLTEyLDEydjRtMCwxN3YxNm0wLDE3djRhMTIsMTIgMCwwLDAgMTIsMTJoNCIgc3Ryb2tlPSIjZmZmZmZmIiBzdHJva2Utd2lkdGg9IjExIiBzdHJva2UtbGluZWNhcD0icm91bmQiIGZpbGw9Im5vbmUiLz5cbiAgICAgIDxnIGZpbGw9IiNmZmZmZmYiIHN0cm9rZT0iIzk5NjZmZiIgc3Ryb2tlLXdpZHRoPSI3LjUiPlxuICAgICAgICA8Y2lyY2xlIHI9IjMyIiBjeD0iMTE4IiBjeT0iMTAyIi8+XG4gICAgICAgIDxjaXJjbGUgcj0iMzIiIGN4PSI5NiIgY3k9IjEzNyIvPlxuICAgICAgICA8Y2lyY2xlIHI9IjMyIiBjeD0iMTQwIiBjeT0iMTM3Ii8+XG4gICAgICA8L2c+XG4gICAgPC9zdmc+Jyk7bGV0IHI9bnVsbCxvPSExLHM9ITE7Y29uc3QgYT1uLnZtLEI9YS5ydW50aW1lLGM9YS5yZW5kZXJlcixnPWMuX2RyYXdUaGVzZSxFPWMuX2dsLFE9Yy5jYW52YXM7bGV0IHU9MCxsPTAsaD00ODAsdz0zNjAsQz0hMTtjLl9kcmF3VGhlc2U9ZnVuY3Rpb24oQSxlLHQsbil7bz0hMCxbaCx3XT1jLmdldE5hdGl2ZVNpemUoKSxnLmNhbGwodGhpcyxBLGUsdCxuKSxFLmRpc2FibGUoRS5TQ0lTU09SX1RFU1QpLEUuYmxlbmRGdW5jKEUuT05FLEUuT05FX01JTlVTX1NSQ19BTFBIQSksbz0hMX07Y29uc3QgST1FLmJpbmRGcmFtZWJ1ZmZlcjtFLmJpbmRGcmFtZWJ1ZmZlcj1mdW5jdGlvbihBLGUpe2lmKEE9PUUuRlJBTUVCVUZGRVIpaWYobnVsbD09ZSlyPSEwLHM9ITEsdT1RLndpZHRoLGw9US5oZWlnaHQ7ZWxzZSBpZihjLl9wZW5Ta2luSWQpe2NvbnN0IEE9Yy5fYWxsU2tpbnNbYy5fcGVuU2tpbklkXS5fZnJhbWVidWZmZXI7ZT09QS5mcmFtZWJ1ZmZlcj8ocj0hMCxzPSEwLHU9QS53aWR0aCxsPUEuaGVpZ2h0KTpyPSExfWVsc2Ugcj0hMTtJLmNhbGwodGhpcyxBLGUpfTtjb25zdCBNPWMuY3JlYXRlRHJhd2FibGUoImJhY2tncm91bmQiKSxkPWMuX2FsbERyYXdhYmxlc1tNXS5fX3Byb3RvX187ZnVuY3Rpb24gcChBLGUsdCl7aWYoQSl7RS5lbmFibGUoRS5TQ0lTU09SX1RFU1QpO2xldCBlPShBLnhfbWluL2grLjUpKnV8MCxuPShBLnlfbWluL3crLjUpKmx8MCxpPSgoQS54X21heC9oKy41KSp1fDApLWUscj0oKEEueV9tYXgvdysuNSkqbHwwKS1uO3QmJihuPSgtQS55X21heC93Ky41KSpsfDApLEUuc2Npc3NvcihlLG4saSxyKX1lbHNlIEUuZGlzYWJsZShFLlNDSVNTT1JfVEVTVCk7c3dpdGNoKGUpe2Nhc2UiYWRkaXRpdmUiOkUuYmxlbmRFcXVhdGlvbihFLkZVTkNfQUREKSxFLmJsZW5kRnVuYyhFLk9ORSxFLk9ORSk7YnJlYWs7Y2FzZSJzdWJ0cmFjdCI6RS5ibGVuZEVxdWF0aW9uKEUuRlVOQ19SRVZFUlNFX1NVQlRSQUNUKSxFLmJsZW5kRnVuYyhFLk9ORSxFLk9ORSk7YnJlYWs7Y2FzZSJtdWx0aXBseSI6RS5ibGVuZEVxdWF0aW9uKEUuRlVOQ19BREQpLEUuYmxlbmRGdW5jKEUuRFNUX0NPTE9SLEUuT05FX01JTlVTX1NSQ19BTFBIQSk7YnJlYWs7Y2FzZSJpbnZlcnQiOkUuYmxlbmRFcXVhdGlvbihFLkZVTkNfQUREKSxFLmJsZW5kRnVuYyhFLk9ORV9NSU5VU19EU1RfQ09MT1IsRS5PTkVfTUlOVVNfU1JDX0NPTE9SKTticmVhaztkZWZhdWx0OkUuYmxlbmRFcXVhdGlvbihFLkZVTkNfQUREKSxFLmJsZW5kRnVuYyhFLk9ORSxFLk9ORV9NSU5VU19TUkNfQUxQSEEpfX1jLmRlc3Ryb3lEcmF3YWJsZShNLCJiYWNrZ3JvdW5kIik7Y29uc3QgbT1kLmdldFVuaWZvcm1zO2QuZ2V0VW5pZm9ybXM9ZnVuY3Rpb24oKXtyZXR1cm4gbyYmciYmcCh0aGlzLmNsaXBib3gsdGhpcy5ibGVuZE1vZGUscyksbS5jYWxsKHRoaXMpfSxkLnVwZGF0ZUNsaXBCb3g9ZnVuY3Rpb24oQSl7dGhpcy5jbGlwYm94PUF9LGQudXBkYXRlQmxlbmRNb2RlPWZ1bmN0aW9uKEEpe3RoaXMuYmxlbmRNb2RlPUF9LGMudXBkYXRlRHJhd2FibGVDbGlwQm94PWZ1bmN0aW9uKEEsZSl7Y29uc3QgdD10aGlzLl9hbGxEcmF3YWJsZXNbQV07dCYmdC51cGRhdGVDbGlwQm94KGUpfSxjLnVwZGF0ZURyYXdhYmxlQmxlbmRNb2RlPWZ1bmN0aW9uKEEsZSl7Y29uc3QgdD10aGlzLl9hbGxEcmF3YWJsZXNbQV07dCYmdC51cGRhdGVCbGVuZE1vZGUoZSl9O2NvbnN0IEY9ZnVuY3Rpb24oQSl7aWYoQS5lZGl0aW5nVGFyZ2V0KXthLnJlbW92ZUxpc3RlbmVyKCJ0YXJnZXRzVXBkYXRlIixGKTtjb25zdCBBPWEucnVudGltZS50YXJnZXRzWzBdLl9fcHJvdG9fXyxlPUEub25TdG9wQWxsO0Eub25TdG9wQWxsPWZ1bmN0aW9uKCl7dGhpcy5yZW5kZXJlci51cGRhdGVEcmF3YWJsZUNsaXBCb3guY2FsbChjLHRoaXMuZHJhd2FibGVJRCxudWxsKSx0aGlzLnJlbmRlcmVyLnVwZGF0ZURyYXdhYmxlQmxlbmRNb2RlLmNhbGwoYyx0aGlzLmRyYXdhYmxlSUQsbnVsbCksZS5jYWxsKHRoaXMpfTtjb25zdCB0PUEubWFrZUNsb25lO0EubWFrZUNsb25lPWZ1bmN0aW9uKCl7Y29uc3QgQT10LmNhbGwodGhpcyk7cmV0dXJuKHRoaXMuY2xpcGJveHx8dGhpcy5ibGVuZE1vZGUpJiYoQS5jbGlwYm94PU9iamVjdC5hc3NpZ24oe30sdGhpcy5jbGlwYm94KSxBLmJsZW5kTW9kZT10aGlzLmJsZW5kTW9kZSxjLnVwZGF0ZURyYXdhYmxlQ2xpcEJveC5jYWxsKGMsQS5kcmF3YWJsZUlELHRoaXMuY2xpcGJveCksYy51cGRhdGVEcmF3YWJsZUJsZW5kTW9kZS5jYWxsKGMsQS5kcmF3YWJsZUlELHRoaXMuYmxlbmRNb2RlKSksQX19fTthLm9uKCJ0YXJnZXRzVXBkYXRlIixGKTtsZXQgRD17fSxZPUQsZj17fSxOPSJkZWZhdWx0IjtmdW5jdGlvbiBVKEEpe2NvbnN0IGU9Qi5leHRfcGVuO0EuX2xpbmVPbkJ1ZmZlckRyYXdSZWdpb25JZC5leGl0PSgpPT57QS5fZXhpdERyYXdMaW5lT25CdWZmZXIoKSxFLmJsZW5kRnVuYyhFLk9ORSxFLk9ORV9NSU5VU19TUkNfQUxQSEEpLEUuZGlzYWJsZShFLlNDSVNTT1JfVEVTVCksWT1ELGY9bnVsbCxOPSJkZWZhdWx0In07Y29uc3QgdD1mdW5jdGlvbihlKXtpZighQyYmZT09WSlyZXR1cm47Qz0hMTtjb25zdCB0PWUuY2xpcGJveDsoIWZeIXR8fE4hPWUuYmxlbmRNb2RlfHx0JiYodC54X21pbiE9Zi54X21pbnx8dC55X21pbiE9Zi55X21pbnx8dC54X21heCE9Zi54X21heHx8dC55X21heCE9Zi55X21heCkpJiYoQS5hX2xpbmVDb2xvckluZGV4JiZBLl9mbHVzaExpbmVzKCksWT1lLGY9dD97eF9taW46dC54X21pbix5X21pbjp0LnlfbWluLHhfbWF4OnQueF9tYXgseV9tYXg6dC55X21heH06bnVsbCxOPWUuYmxlbmRNb2RlKX0sbj1lLl9vblRhcmdldE1vdmVkO2UuX29uVGFyZ2V0TW92ZWQ9ZnVuY3Rpb24oQSxlLGkscil7dChBKSxuLmNhbGwodGhpcyxBLGUsaSxyKX07Zm9yKGxldCBBIGluIEIudHJhZ2V0cylBLm9uVGFyZ2V0TW92ZWQ9PW4mJihBLm9uVGFyZ2V0TW92ZWQ9ZS5fb25UYXJnZXRNb3ZlZCk7Y29uc3QgaT1lLl9wZW5Eb3duO2UuX3BlbkRvd249ZnVuY3Rpb24oQSl7dChBKSxpLmNhbGwodGhpcyxBKX07Y29uc3Qgcj1BLl9fcHJvdG9fXy5fZmx1c2hMaW5lcztBLl9fcHJvdG9fXy5fZmx1c2hMaW5lcz1mdW5jdGlvbigpe3AoZixOLCEwKSxyLmNhbGwodGhpcyl9fWlmKGMuX2FsbFNraW5zW2MuX3BlblNraW5JZF0pVShjLl9hbGxTa2luc1tjLl9wZW5Ta2luSWRdKTtlbHNle2NvbnN0IEE9Yy5jcmVhdGVQZW5Ta2luO2MuY3JlYXRlUGVuU2tpbj1mdW5jdGlvbigpe2xldCBlPUEuY2FsbCh0aGlzKTtyZXR1cm4gVShjLl9hbGxTa2luc1tlXSksYy5jcmVhdGVQZW5Ta2luPUEsZX19QS5leHBvcnRzPWNsYXNze2dldEluZm8oKXtyZXR1cm57aWQ6InhlbHRhbGxpdmNsaXBibGVuZCIsbmFtZToiQ2xpcHBpbmcgYW5kIEJsZW5kaW5nIixjb2xvcjE6IiM5OTY2RkYiLGNvbG9yMjoiIzg1NUNENiIsY29sb3IzOiIjNzc0RENCIixtZW51SWNvblVSSTppLGJsb2Nrczpbe29wY29kZToic2V0Q2xpcGJveCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoic2V0IGNsaXBwaW5nIGJveCB4MTpbWDFdIHkxOltZMV0geDI6W1gyXSB5MjpbWTJdIixhcmd1bWVudHM6e1gxOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6IjAifSxZMTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOiIwIn0sWDI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMTAwIn0sWTI6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToiMTAwIn19LGZpbHRlcjpbbi5UYXJnZXRUeXBlLlNQUklURV19LHtvcGNvZGU6ImNsZWFyQ2xpcGJveCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoiY2xlYXIgY2xpcHBpbmcgYm94IixmaWx0ZXI6W24uVGFyZ2V0VHlwZS5TUFJJVEVdfSx7b3Bjb2RlOiJnZXRDbGlwYm94IixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiY2xpcHBpbmcgYm94IFtQUk9QXSIsYXJndW1lbnRzOntQUk9QOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxkZWZhdWx0VmFsdWU6IndpZHRoIixtZW51OiJwcm9wcyJ9fSxmaWx0ZXI6W24uVGFyZ2V0VHlwZS5TUFJJVEVdfSwiLS0tIix7b3Bjb2RlOiJzZXRCbGVuZCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoidXNlIFtCTEVORE1PREVdIGJsZW5kaW5nICIsYXJndW1lbnRzOntCTEVORE1PREU6e3R5cGU6bi5Bcmd1bWVudFR5cGUuU1RSSU5HLGRlZmF1bHRWYWx1ZToiZGVmYXVsdCIsbWVudToiYmxlbmRzIn19LGZpbHRlcjpbbi5UYXJnZXRUeXBlLlNQUklURV19LHtvcGNvZGU6ImdldEJsZW5kIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiYmxlbmRpbmciLGZpbHRlcjpbbi5UYXJnZXRUeXBlLlNQUklURV0sZGlzYWJsZU1vbml0b3I6ITB9LCItLS0iLHtvcGNvZGU6InNldEFkZGl0aXZlQmxlbmQiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InR1cm4gYWRkaXRpdmUgYmxlbmRpbmcgW1NUQVRFXSIsYXJndW1lbnRzOntTVEFURTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJvbiIsbWVudToic3RhdGVzIn19LGZpbHRlcjpbbi5UYXJnZXRUeXBlLlNQUklURV0saGlkZUZyb21QYWxldHRlOiEwfSx7b3Bjb2RlOiJnZXRBZGRpdGl2ZUJsZW5kIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQk9PTEVBTix0ZXh0OiJpcyBhZGRpdGl2ZSBibGVuZGluZyBvbj8iLGZpbHRlcjpbbi5UYXJnZXRUeXBlLlNQUklURV0saGlkZUZyb21QYWxldHRlOiEwfV0sbWVudXM6e3N0YXRlczp7YWNjZXB0UmVwb3J0ZXJzOiEwLGl0ZW1zOlsib24iLCJvZmYiXX0sYmxlbmRzOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJkZWZhdWx0IiwiYWRkaXRpdmUiLCJzdWJ0cmFjdCIsIm11bHRpcGx5IiwiaW52ZXJ0Il19LHByb3BzOnthY2NlcHRSZXBvcnRlcnM6ITAsaXRlbXM6WyJ3aWR0aCIsImhlaWdodCIsIm1pbiB4IiwibWluIHkiLCJtYXggeCIsIm1heCB5Il19fX19c2V0Q2xpcGJveChBLGUpe2xldHtYMTp0LFkxOm4sWDI6aSxZMjpyfT1BLHt0YXJnZXQ6b309ZTtpZihvLmlzU3RhZ2UpcmV0dXJuO2NvbnN0IHM9e3hfbWluOk1hdGgubWluKHQsaSkseV9taW46TWF0aC5taW4obixyKSx4X21heDpNYXRoLm1heCh0LGkpLHlfbWF4Ok1hdGgubWF4KG4scil9O0M9ITAsby5jbGlwYm94PXMsYy51cGRhdGVEcmF3YWJsZUNsaXBCb3guY2FsbChjLG8uZHJhd2FibGVJRCxzKSxvLnZpc2libGUmJihjLmRpcnR5PSEwLG8uZW1pdFZpc3VhbENoYW5nZSgpLG8ucnVudGltZS5yZXF1ZXN0UmVkcmF3KCksby5ydW50aW1lLnJlcXVlc3RUYXJnZXRzVXBkYXRlKG8pKX1jbGVhckNsaXBib3goQSxlKXtsZXR7dGFyZ2V0OnR9PWU7dC5pc1N0YWdlfHwodC5jbGlwYm94PW51bGwsQz0hMCxjLnVwZGF0ZURyYXdhYmxlQ2xpcEJveC5jYWxsKGMsdC5kcmF3YWJsZUlELG51bGwpLHQudmlzaWJsZSYmKGMuZGlydHk9ITAsdC5lbWl0VmlzdWFsQ2hhbmdlKCksdC5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKSx0LnJ1bnRpbWUucmVxdWVzdFRhcmdldHNVcGRhdGUodCkpKX1nZXRDbGlwYm94KEEsZSl7bGV0e1BST1A6dH09QSx7dGFyZ2V0Om59PWU7Y29uc3QgaT1uLmNsaXBib3g7aWYoIWkpcmV0dXJuIiI7c3dpdGNoKHQpe2Nhc2Uid2lkdGgiOnJldHVybiBpLnhfbWF4LWkueF9taW47Y2FzZSJoZWlnaHQiOnJldHVybiBpLnlfbWF4LWkueV9taW47Y2FzZSJtaW4geCI6cmV0dXJuIGkueF9taW47Y2FzZSJtaW4geSI6cmV0dXJuIGkueV9taW47Y2FzZSJtYXggeCI6cmV0dXJuIGkueF9tYXg7Y2FzZSJtYXggeSI6cmV0dXJuIGkueV9tYXg7ZGVmYXVsdDpyZXR1cm4iIn19c2V0QmxlbmQoQSxlKXtsZXR7QkxFTkRNT0RFOnR9PUEse3RhcmdldDpufT1lLGk9bnVsbDtzd2l0Y2godCl7Y2FzZSJkZWZhdWx0IjpjYXNlImFkZGl0aXZlIjpjYXNlInN1YnRyYWN0IjpjYXNlIm11bHRpcGx5IjpjYXNlImludmVydCI6aT10O2JyZWFrO2RlZmF1bHQ6cmV0dXJufW4uaXNTdGFnZXx8KEM9ITAsbi5ibGVuZE1vZGU9aSxjLnVwZGF0ZURyYXdhYmxlQmxlbmRNb2RlLmNhbGwoYyxuLmRyYXdhYmxlSUQsaSksbi52aXNpYmxlJiYoYy5kaXJ0eT0hMCxuLmVtaXRWaXN1YWxDaGFuZ2UoKSxuLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpLG4ucnVudGltZS5yZXF1ZXN0VGFyZ2V0c1VwZGF0ZShuKSkpfWdldEJsZW5kKEEsZSl7dmFyIHQ7bGV0e3RhcmdldDpufT1lO3JldHVybiBudWxsIT09KHQ9bi5ibGVuZE1vZGUpJiZ2b2lkIDAhPT10P3Q6ImRlZmF1bHQifXNldEFkZGl0aXZlQmxlbmQoQSxlKXtsZXR7U1RBVEU6dH09QTsib24iPT09dCYmdGhpcy5zZXRCbGVuZCh7QkxFTkRNT0RFOiJhZGRpdGl2ZSJ9LGUpLCJvZmYiPT09dCYmdGhpcy5zZXRCbGVuZCh7QkxFTkRNT0RFOiJkZWZhdWx0In0sZSl9Z2V0QWRkaXRpdmVCbGVuZChBLGUpe2xldHt0YXJnZXQ6dH09ZTtyZXR1cm4iYWRkaXRpdmUiPT09dC5ibGVuZE1vZGV9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49bmV3KHQoNDYpKSghMCksaT1uLnZtO2xldCByPTAsbz0wLHM9MTAwLGE9OTAsQj0iI2ZmZmZmZiI7ZnVuY3Rpb24gYygpe2xldCBBPWFyZ3VtZW50cy5sZW5ndGg+MCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTpyLGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm8sdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06cy8xMDAsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106OTAtYTtuPW4vMTgwKk1hdGguUEk7bGV0IEI9TWF0aC5zaW4obikqdCxjPU1hdGguY29zKG4pKnQsZz1pLnJ1bnRpbWUuc3RhZ2VXaWR0aC8yLEU9aS5ydW50aW1lLnN0YWdlSGVpZ2h0LzI7aS5yZW5kZXJlci5fcHJvamVjdGlvbj1bYy9nLC1CL0UsMCwwLEIvZyxjL0UsMCwwLDAsMCwtMSwwLChjKi1BK0IqLWUpL2csKGMqLWUtQiotQSkvRSwwLDFdLGkucmVuZGVyZXIuZGlydHk9ITB9aS5ydW50aW1lLnJ1bnRpbWVPcHRpb25zLmZlbmNpbmc9ITEsaS5yZW5kZXJlci5vZmZzY3JlZW5Ub3VjaGluZz0hMCxpLnJ1bnRpbWUub24oIlNUQUdFX1NJWkVfQ0hBTkdFRCIsQT0+YygpKTtsZXQgZz1pLnJ1bnRpbWUuaW9EZXZpY2VzLm1vdXNlLmdldFNjcmF0Y2hYLEU9aS5ydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRTY3JhdGNoWTtpLnJ1bnRpbWUuaW9EZXZpY2VzLm1vdXNlLmdldFNjcmF0Y2hYPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkoQSksdD0wO3Q8QTt0KyspZVt0XT1hcmd1bWVudHNbdF07cmV0dXJuKGcuYXBwbHkodGhpcyxlKStyKS9zKjEwMH0saS5ydW50aW1lLmlvRGV2aWNlcy5tb3VzZS5nZXRTY3JhdGNoWT1mdW5jdGlvbigpe2Zvcih2YXIgQT1hcmd1bWVudHMubGVuZ3RoLGU9bmV3IEFycmF5KEEpLHQ9MDt0PEE7dCsrKWVbdF09YXJndW1lbnRzW3RdO3JldHVybihFLmFwcGx5KHRoaXMsZSkrbykvcyoxMDB9O0EuZXhwb3J0cz1jbGFzc3tnZXRJbmZvKCl7cmV0dXJue2lkOiJEVGNhbWVyYWNvbnRyb2xzIixuYW1lOiJDYW1lcmEiLGNvbG9yMToiI2ZmNGRhNyIsY29sb3IyOiIjZGU0MzkxIixjb2xvcjM6IiNjODNjODIiLG1lbnVJY29uVVJJOiJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIyWlhKemFXOXVQU0l4TGpFaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2VHMXNibk02ZUd4cGJtczlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHeHBibXNpSUhkcFpIUm9QU0l5TWpVdU16VTBPQ0lnYUdWcFoyaDBQU0l5TWpVdU16VTBPQ0lnZG1sbGQwSnZlRDBpTUN3d0xESXlOUzR6TlRRNExESXlOUzR6TlRRNElqNDhaeUIwY21GdWMyWnZjbTA5SW5SeVlXNXpiR0YwWlNndE1UZzNMak15TWprekxDMHpOeTR6TWpJMU9Ta2lQanhuSUdSaGRHRXRjR0Z3WlhJdFpHRjBZVDBpZXlaeGRXOTBPMmx6VUdGcGJuUnBibWRNWVhsbGNpWnhkVzkwT3pwMGNuVmxmU0lnWm1sc2JDMXlkV3hsUFNKdWIyNTZaWEp2SWlCemRISnZhMlU5SW01dmJtVWlJSE4wY205clpTMXNhVzVsWTJGd1BTSmlkWFIwSWlCemRISnZhMlV0YkdsdVpXcHZhVzQ5SW0xcGRHVnlJaUJ6ZEhKdmEyVXRiV2wwWlhKc2FXMXBkRDBpTVRBaUlITjBjbTlyWlMxa1lYTm9ZWEp5WVhrOUlpSWdjM1J5YjJ0bExXUmhjMmh2Wm1aelpYUTlJakFpSUhOMGVXeGxQU0p0YVhndFlteGxibVF0Ylc5a1pUb2dibTl5YldGc0lqNDhjR0YwYUNCa1BTSk5NVGczTGpNeU1qazBMREUxTUdNd0xDMDJNaTR5TXpBd01TQTFNQzQwTkRjek9Td3RNVEV5TGpZM056UWdNVEV5TGpZM056UXNMVEV4TWk0Mk56YzBZell5TGpJek1EQXhMREFnTVRFeUxqWTNOelFzTlRBdU5EUTNNemtnTVRFeUxqWTNOelFzTVRFeUxqWTNOelJqTUN3Mk1pNHlNekF3TVNBdE5UQXVORFEzTXprc01URXlMalkzTnpRZ0xURXhNaTQyTnpjMExERXhNaTQyTnpjMFl5MDJNaTR5TXpBd01Td3dJQzB4TVRJdU5qYzNOQ3d0TlRBdU5EUTNNemtnTFRFeE1pNDJOemMwTEMweE1USXVOamMzTkhvaUlHWnBiR3c5SWlObVpqUmtZVGNpSUhOMGNtOXJaUzEzYVdSMGFEMGlNQ0l2UGp4blBqeHdZWFJvSUdROUlrMHpNVGN1TVRBeU9TdzRNQzQ0TVRBNE4yTXlNUzQ0T1RJMExEQWdNemt1TmpZeU1EY3NNVGN1TnpNM01qTWdNemt1TmpZeU1EY3NNemt1TmpNME5HTXdMREV5TGpNd05URTNJQzAxTGpZeE1UUTRMREl6TGpJNU5qSXlJQzB4TkM0ME1EQTRPQ3d6TUM0MU5qZ3lOR2c0TGpjM01ETXlkalk0TGpFM05UWXphQzB4TVRRdU1UTXpNalYyTFRVMUxqYzVPRGc1WXkweE5DNHpNelF3T0N3dE15NDFNamd4TnlBdE1qUXVPVFl4TlRNc0xURTJMalExTnpRM0lDMHlOQzQ1TmpFMU15d3RNekV1T0Rnd05EUmpNQ3d0TVRndU1UTTVJREUwTGpZNU5qY3pMQzB6TWk0NE16UTNPQ0F6TWk0NE16UTNPQ3d0TXpJdU9ETTBOemhqTVRJdU1ETTNPVFVzTUNBeU1pNDFOVFkyTVN3MkxqUTNPREF4SURJNExqSTNNakV4TERFMkxqRXpNemsxYkRRdU9EWXhNemNzTFRBdU9USTBOelZqTXk0eE1qa3lOaXd0TVRndU56WTJPVFlnTVRrdU5ETTVOellzTFRNekxqQTNNek0ySURNNUxqQTVPVEF5TEMwek15NHdOek16Tm5wTk1qYzJMakl4T0RVeExERTBNUzR5T1RFM01XTXRNUzR4TURBek5Td3pMalV6TXpnNUlDMHlMamMyT1RRM0xEWXVPREV5TURNZ0xUUXVPVEl3TlRRc09TNDNNakUzT1dneU1DNDFORGMzTkdNdE15NDJPRGMxTkN3dE15NHdORGd4TkNBdE5pNDRNREkwT0N3dE5pNDNOalV5TnlBdE9TNHhPRFUwTlN3dE1UQXVPVFEwTWpsNklpQm1hV3hzUFNJalptWm1abVptSWlCemRISnZhMlV0ZDJsa2RHZzlJakVpTHo0OGNHRjBhQ0JrUFNKTk16TTJMalUzTlRJNUxERXhPUzQxTWpneE5XTXdMREV4TGpBMk9ETTFJQzA0TGprM01qWTBMREl3TGpBME1EazVJQzB5TUM0d05EQTVPU3d5TUM0d05EQTVPV010TVRFdU1EWTRNelVzTUNBdE1qQXVNRFF3T1Rrc0xUZ3VPVGN5TmpRZ0xUSXdMakEwTURrNUxDMHlNQzR3TkRBNU9XTXdMQzB4TVM0d05qZ3pOU0E0TGprM01qWTBMQzB5TUM0d05EQTVPU0F5TUM0d05EQTVPU3d0TWpBdU1EUXdPVGxqTVRFdU1EWTRNelVzTUNBeU1DNHdOREE1T1N3NExqazNNalkwSURJd0xqQTBNRGs1TERJd0xqQTBNRGs1ZWlJZ1ptbHNiRDBpSTJabU5HUmhOeUlnYzNSeWIydGxMWGRwWkhSb1BTSXdMalVpTHo0OGNHRjBhQ0JrUFNKTk1qWXhMakU0TXl3eE16QXVNREkxT0RGak1DdzRMamsyTURBMElDMDNMakkyTXpZeUxERTJMakl5TXpZMklDMHhOaTR5TWpNMk5pd3hOaTR5TWpNMk5tTXRPQzQ1TmpBd05Dd3dJQzB4Tmk0eU1qTTJOaXd0Tnk0eU5qTTJNaUF0TVRZdU1qSXpOallzTFRFMkxqSXlNelkyWXpBc0xUZ3VPVFl3TURRZ055NHlOak0yTWl3dE1UWXVNakl6TmpZZ01UWXVNakl6TmpZc0xURTJMakl5TXpZMll6Z3VPVFl3TURRc01DQXhOaTR5TWpNMk5pdzNMakkyTXpZeUlERTJMakl5TXpZMkxERTJMakl5TXpZMmVpSWdabWxzYkQwaUkyWm1OR1JoTnlJZ2MzUnliMnRsTFhkcFpIUm9QU0l3TGpVaUx6NDhjR0YwYUNCa1BTSk5NemczTGprMk1ETTVMREUwTlM0NE5UY3lOSFkyTUM0MU1UQTBNMnd0TWpFdU5qQXpNallzTFRFekxqUTNNakUzYUMweE5pNDRPVGd6TkhZdE16TXVOVFkyTURkb01UWXVPRGs0TXpSc01qRXVOVGs1TVRjc0xURXpMalEzTVRFeWVpSWdabWxzYkQwaUkyWm1abVptWmlJZ2MzUnliMnRsTFhkcFpIUm9QU0l4SWk4K1BDOW5Qand2Wno0OEwyYytQQzl6ZG1jK1BDRXRMWEp2ZEdGMGFXOXVRMlZ1ZEdWeU9qRXhNaTQyTnpjd05qVTZNVEV5TGpZM056UXdOUzB0UGc9PSIsYmxvY2tzOlt7b3Bjb2RlOiJtb3ZlU3RlcHMiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6Im1vdmUgY2FtZXJhIFt2YWxdIHN0ZXBzIixhcmd1bWVudHM6e3ZhbDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfX19LHtvcGNvZGU6InJvdGF0ZUNXIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJ0dXJuIGNhbWVyYSBbaW1hZ2VdIFt2YWxdIGRlZ3JlZXMiLGFyZ3VtZW50czp7aW1hZ2U6e3R5cGU6bi5Bcmd1bWVudFR5cGUuSU1BR0UsZGF0YVVSSToiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFJVUFBQUIrQ0FZQUFBQUtqOUxtQUFBQUFYTlNSMElBcnM0YzZRQUFCcWRKUkVGVWVGN3RuZXVWMURBTWhaZFNvQldvQjJxQmVxQVZLQVdPT1FSQ052SFYyN0t0L2JzZXg3cjZjaVY3TWpOdlh1cHZXZ1crdi8vOHN5MyszYmRQYnl5RE1KM01jbUhhdVE3QnFQTllDMHU5TG5jY2lzc2lqdW1oUUNKeFJiOGJieUcwZGgzY09EVnJuZzRLcmpqYVpHU0FSQnF6Rkl6MFVFZ0Y4WURoYVU2cCtKUTFhdU9YckMwdEZGb3hLSUo3akpFazRXa2RWaHB3MTVRS0Npc1JQSkxOblpPYmlPdjhsbHB3MTVJQ0Nrc0JLTWw3Ky9YajcyRS9QbnloREZlTjRTYmt1QmpTNUlqaEdOK0xoYnVHb1ZDZ3dLblp1QXBFZlIwYVp3a05KekZJbDZkNHJjQVlBZ1VLR2lYTEN3SjBYUXQzUVhBZ2JYcXhUd2tGQ3JpWGxKRWdQSzFMNHlSM2NDQjlLQm84clFuQmVJNHh6Q2xRd0hmQ1UwU2czTjBSWTZTQUhNbEMrbEMxc0hDTEVDaFF3TmVrVVFXSVNEYjNHaEk0R2hoSUk2b202YUZBZ2E0RXd4MDhFa0MwanBrYUNnNFExTHVBZTlkbUdhK0JRNktOdHE5d0tSOVVJQ1FCWjBrMGR4MFNNS1Q2cElLQ0NrTVRWQm93TnhuWnhsUGgwT2lqTFNGbVRrRUZRaE5zdGdScjFvUGcwT2lVQW9vQ1FvYkhVL0kwUUtCamI4cDVoZG9wS0VCWUJDbVRQZitycm1CWWFhWHBLMVJRRkJCMjBMVWtXZ0dCanVPUlc0aWhLQ0RzZ1BDWVNkTlh1RUZoU2IySGFEdk1LUzBoSWlpUVN4UVFPWkFMZzZLQXlKRnd5aXFrSllUbEZBVUVKUlY1eGd5SG9rcEdIaGpRV1VYN2YyOEhRbmFLY29sOFNhZXNTTkpYa0tBb0lDank1eHd6QklvcUd6bGgwSlFRNkJROWx5Z2djZ01oUGRuc1FqRkwyVUR2T0ZKU3R6TGczQklpaG1LMGlCWWc5R0FaSFI4RlpPb1lNeWl5bGcxdkdLNUNyd0FIOTd6aTBTbXlRUkVOdzBwd21FQ1JDWWpSTUt3Q0I2ZUUzRHBGRmlpeUFYRUdaTGF5b29KaUJTRFFReVRuNUtJZDFpck5LS2VFdkhLS0RGQndIWUlEUVMvSkVrQm1jUXdYS0NLQ0h3WERIU2hjUUNMMG9XNUJuOFpSUzhoL1RqSFNKVGhBV0RrRFJXUU9ITm5CTUlVaUlsZ0tGSkV3WElGQmNFUm9SSUc0TjJZcUtMSUQwWVJlR1lycjh4Vi95OGVvMGxGQWFPOS8zdXNwYmdHaDhMVEZBb0tYVUl2UjAwTXhzb2RZcFdSY1FTSkRNYUowSUpjWURRU0N3dE5CTFJ5QnV5MDk5eFcveTBjMEZMTUQwVFRiRmdxdndEbW5hNTUzemRQY0srdzBORnZUcmxQc0NNWHFRRFJZVUY4UkRrVm1sOWdCaUI0VVIxL1IvYW8rRDZlWUZRb1BMVWFVUmhVVUhpTE1Dc1RNalNWM0Y5SjJmWTlPVVZEOGs5TkRpMUV1Y1Z5MzExZWtnQ0x6bWNTS1FLQm1zNkFZY0U0ejJpVlFYeEVHeFl6OXhLb3VVVkFRYnN1bnJlaktVUFRBR080VW1mdUpGWGNkcU5Gcy95OG8vcWdVL2Y0UHdjRGNocUJTWGxBUW9EaXlNM3M1UVc5RXdoTk5hd0hRZWJ2YmJVR2NHQjF4RTZlWmZsam80VlYyS0ZvMmR3Zmo2TytxZkZ6dTdWM0JPRGY4QmNXTjRlOEd4blVIV0ZBOGRBRzdnSEYzSkZCUUVGckQxUUJCWjBNRkJRR0szWVlVRkx0bG5CQnZRVUVRYWJjaHc2RTRUdEYyRXo1enZLSFBhTTV3Z0pVNVdWRnJDMzJhdTZDSVNxdnVPZ1dGVHI4bFg1MENpdW9yY3JFVi9sblNLaUc1QUxoYlRmajNVeFFVQmNVckJkQlRQL2tsVzMrRjRVN1JKQzIzeUEwV2hLSXRQK29wckdvNGM4QkMraDVOYXloNmJsRmdqQWVqb0JpZmczUXJJRUhoVVVMS0xkS3g4SGRCNUM5c2p5NGhWVWJHUVVPR290eGlYSktpcnp3Y2lpb2owU25IMTB2eHkwRG9rMHZvbVVJY1pvM2dLSkFDQ3VRVzFWOXdVcW9mbStyWEJzc3g5QW0xbUNFVkZPVVlGaW5WejVIeUY0eVJZMVE1MFNlK04wTktLQ2lPVVdENGdkR0ZvbDEyNUpkNWxHUDRKVjdzRkFnS3J3T3Q4NElwWUpScjJNSURuUUtCNFhIOGZRMlJDc2J4dWpyWDBFRkNnbUpHTU1vOTVHQ1lRQkZSUm80UXVhNVI3c0dIZ3d3RmNvc1p3TGlUcDByTmExVllVQ0F3SXZvTFNSUEt1VmNLa3BjWFV5Z2kzYUxnNEtET0c4dUdBcm5GS0REYWRhWDlSayt5SFoxREJFVm1NTFFOYWZVZGd2SnhGZzE5RjFSMGo5Rzc0N1V1c3BOamlKM2lTTUJNWU54Qnc0RmxGekRjb1JqWlkvRGFLMXBQc2dNWWFpZ28vY1ZNWUtDR3RhQmczR3FvakJRWURERUhEelZ4Q21wL2NZekwxSUErNmIvenArTk5vYUNXa2xsY1k5ZFB4NXREc1JJWUJZVkRIYVAwR2RsZDR3Nk0xWnRORjZmZ0hIQmw3ek1LQ2dlMzRKU1RqSzVSVURoQndRVWpDeHpWVXpnQ0lTa25HY3BLUVJFRWhjUTFSamxIUVJFSUJmZXc2N3EwaU1Pdk9yd2FBSVNtcEp4ZjZ3SEl6a0EwYmQyM3BGVGVxR2NhYUQ0dEpPaXQ5TlhQS0ZKQlllVWNUOUFnV0JBTWJkNGRnRWdMaGJiblFHNGkrZjh1UUtTSElnc2NPd0V4RFJUZXBhWG5ITHNCTVNVVWtZRHNDTVQwVU56ZDRSYTdtRjFoT1BSTXN5V1ZOSC9jMS9TQTJSMkVzNWEvQUNGdGNuL3h4TVFNQUFBQUFFbEZUa1N1UW1DQyJ9LHZhbDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5BTkdMRSxkZWZhdWx0VmFsdWU6MTV9fX0se29wY29kZToicm90YXRlQ0NXIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJ0dXJuIGNhbWVyYSBbaW1hZ2VdIFt2YWxdIGRlZ3JlZXMiLGFyZ3VtZW50czp7aW1hZ2U6e3R5cGU6bi5Bcmd1bWVudFR5cGUuSU1BR0UsZGF0YVVSSToiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFJWUFBQUI5Q0FZQUFBQm5MQnRMQUFBQUFYTlNSMElBcnM0YzZRQUFCb3RKUkVGVWVGN3RuV3VXNVRRTWhKbWx3RlpnUGNOYVlEM0RWbUFwekFtSHpFbW5ZK3RodlJ4Vi8wMWl5NlhQSlNVM2ZlK1hud3orL3Y3MWozK3BZWDc1Ni9jdjFEa1ZqblBXY3NTNXkzcTBtaTRsaXl2aUdWd1ZNYVZ4UzhXdHNrNXAzTmZ6MVdCb3hZMFdUUnZuaXFqM2E2UFhiQkc3Q294VnNUMkZXbzNOUWxScURNLzFVM056ajZlQTRWR2pkd0JpSnljUmcyR1pnTldkWXhrTGR5ZDVuYmVxaFhWY3BtRDgvTzNyaC9qKytlM1BhYnhhTWQ0RVJGVVhFWUV4UzhnZGluUEJsbkJZQWpHS2QzWG5VZXZsanEvZE5OenhxZlBjd1RnQ29NU2lSRmdGd2dzQ1Nsek8ycWt4S0cybzY3WEhUY0RnQ0srQll3VUlUa3hhMGJUWFVSck14bzBHSkF3TXp1NjVMbDREUlVVWVJzbldRQklKQnhzTVRYOXhGNFVTNDFqNDI0R1FhcExWbklhQ3dYRU5pVTN2NUJEVXVxaE5FdzNJTWhpYTVFaEZ1SXVpbVpOS1RKWGpFbTA4UzBzS0dGcm5lRE1RS3lYR0E1QXR3T2dFeEJXUVRQZGdnV0hSZUQ1Wk5iWHdya0JvM2NQU09aYkFzRWpjQ0E2THNhdjBEUlp4VUp2b25NTUtqblF3bnZvTlFQR01VaVFjSmNBNDRRQVFQRy9oQUxMcUhDUVlYdjBGVHdLY3RmTGtkQVVPZ0xFeGU1UnpwSUFCMjY5QmxCY2Nhc2NBR0RYQTREd3MxRGpIRkF6MEYzV1NUMFZpN1J3QWcxSjhvK09XY0tqQVFCbXBTUXZBcUptWEVsRlp3UUhIS0pGTzJ5Qm1jSEFiMFNFWWFEeHRreFU5MmlvY1lqQTY5QmVVSFQ4bHVab3UxQm9vNTJnUEJpV2dkcWRYQUdYRk5kcUM0UVhFSGFSc1FMUndQSUx4NXY0aUNvZ3FnQUNNaWVkbndWQ2xGOUhBSVhLTWJGdlUxUHRLVUZ6amo5UVNZRnlVWHdHQzZ0anZnR3IrU2VvWW96SWNueHpqRGYyRkJnb3BERFAza29BU0JZZlVOVjRIaGdRS1N4aWVRT0VDa2czSGt3NXNNS0tDMS9RUm5IY1NydU42QTZFcE5SSDZTbHpqTldCdzRJZ0dRZ3BJSmh4M2JRQ0cxcUtVMTFIbHhSc09ybXQ4QUtORDQ1bnRHZ2RQbVhDWWd1Rk5zWEx6RFMrakdsREE4ZnlsZVZkZFdJNnhHeGc3OUJ1VWMzaHFQdG80TGNBQUhHTWY1cFNUSDQ3eGh2N2lMZ1ZLaWh5TzB6VmVEUVpjd3hFTXoxcG4zWFNPeHF2dUhCbDNLVlNmUVRyR0c4RFl3VG1pU3puVlovd0hSblJRVVU0aDZUa3EzOEo2YkU2QUlmZ29QaHVPNkEwNkt5ZFR4L0FnTmNzdHpubXBuWklaSDhESVZKLzQwdnVxcnVHeFNlRVlEeUJTWFhrV3U1R3VNUVVqTXBBc3NaL21CUmpqbndzNVhMTmRqMEgxR2xWTHlSRzNkVGxCS2Rtb2xNd2VINVFCdzRQU0N1V2s4cDNKTm1DY2liU21OUU9RNm8vR1QwMUdmWjkxRHNoU1FqMzl6RWhpeHB6Wi9VVVZNSTQ0eU05S01oS1VNV2NWS0NxVWtnOWdkSGNOZ1BGeE83TGZFcy9ZeFJGelZnS2laQ201SjRGNlJ5QWlhZDV6VklTaVFpbjU4WUJybG9DM0FWSVZobXNPU3QyVmVPOU9qTTlYQUdEd3RXcDFKc0JvbFc3K1lnRUdYNnMyWjBaKzJzMTY4dGxHK2VJTEJSakZFNVFWWGhRWTFBZUo1QS9aWkFuVWRkNEsvY1duUitKZGsxRnAzUUNqVWphS3hCSlZSbzdsVXE4Mm9wUVVnU0x5VVRqQUtKUjBLcFFLYm5IRStPbS8zYW5BY2R4WGdRcGdETDg0eFhmcEdIMmtRQ1FVbkRLQ3U1SWlyRWFDUVQyL09DVkI4NWtNUnlRVVhMZUFZeFNHNGdqTitxMXdnSkdjY083MFZkemllamVDVXNMTm50TjUwVkJJM0FLbHhDbnAxTERVNjVLUkplVEpMUUFHbFVHSDR4bFF6TndDWURna1dUcmtMbERBTWFTWlhUaWZnc0xyTGtUakZnQmpJZEdTUzNlREFtQklzcXM0bHdPRXAxTm8zUUpnS0pMTnZXUm5LQUFHTjh2Qzg2cERNYm9UdVM0VG41VUlrejQ3blF1RWQvbFlLU0huK2dDR0FSZ1NJSGFBQXFWa0FRb3BEQkZBVUU3QktTRndEQVVVR2hqT2FUd2Vjejh0Z2Z1K0JiVjhsSktCUWlzUVhJZU1Bb0p5QytuWFB3QU14czlkVXJ0cmRMd0tGSklTZ2xMeUVpQW9wOUJBMGJiNXRDb1RXU1hqT3EvWGQ1ZTJLeVhXVUVTV0M4OW04ejUyS3pBc29NZ0dJY0l0V3BVU0tSU1ZBSkE2aGJhdnVNN1R4akVvTUtxRGNDYU42aWtzb0dqakdJQkNmc1Bkd2pFeTNzaVdwMkorUlpSVHRIbU9BU2gwaUw3ZU1hSytvVVluUDMxVnRGTzBkNHpxelNZSENLdEc4d2xQT0FhOWFjUFB5SWFpeFYzSlRxV0VDNFNuVTZDVWZQc2E3Z1NqQ1NzQkFUQ0tnRkVSQ3BTU0pNK1F3SENHS0gzUlpuVnBiWnZQUTdqb081TWRnR2hUU282RlpqZWdPd0VCTVA1WHdNczFOREJrbFkyV3p6Rm1qbkVWWkJXUUZSQXFBZEhLTWJod2NQb09Dd0R1T3pTNnNlUTBwcTl2UHE4aVVCKy9jd1N6UEtjaUVPMGM0MXh3Tmh5VlliaEMzOG94TXVIWUJZaTJqaEVGeDI0ZzNFdGtTOGZ3NkR0MkJ3RmdUTHBIVHYveE5nQkdjbndIYTZ4cmZ2aWNDY0VBQUFBQVNVVk9SSzVDWUlJPSJ9LHZhbDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5BTkdMRSxkZWZhdWx0VmFsdWU6MTV9fX0sIi0tLSIse29wY29kZToiZ29UbyIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoibW92ZSBjYW1lcmEgdG8gW3Nwcml0ZV0iLGFyZ3VtZW50czp7c3ByaXRlOnt0eXBlOm4uQXJndW1lbnRUeXBlLlNUUklORyxtZW51OiJzcHJpdGVzIn19fSx7b3Bjb2RlOiJzZXRCb3RoIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJzZXQgY2FtZXJhIHRvIHg6IFt4XSB5OiBbeV0iLGFyZ3VtZW50czp7eDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LHk6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX19LCItLS0iLHtvcGNvZGU6InNldERpcmVjdGlvbiIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoic2V0IGNhbWVyYSBkaXJlY3Rpb24gdG8gW3ZhbF0iLGFyZ3VtZW50czp7dmFsOnt0eXBlOm4uQXJndW1lbnRUeXBlLkFOR0xFLGRlZmF1bHRWYWx1ZTo5MH19fSx7b3Bjb2RlOiJwb2ludFRvd2FyZHMiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InBvaW50IGNhbWVyYSB0b3dhcmRzIFtzcHJpdGVdIixhcmd1bWVudHM6e3Nwcml0ZTp7dHlwZTpuLkFyZ3VtZW50VHlwZS5TVFJJTkcsbWVudToic3ByaXRlcyJ9fX0sIi0tLSIse29wY29kZToiY2hhbmdlWCIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoiY2hhbmdlIGNhbWVyYSB4IGJ5IFt2YWxdIixhcmd1bWVudHM6e3ZhbDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfX19LHtvcGNvZGU6InNldFgiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InNldCBjYW1lcmEgeCB0byBbdmFsXSIsYXJndW1lbnRzOnt2YWw6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX19LHtvcGNvZGU6ImNoYW5nZVkiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6ImNoYW5nZSBjYW1lcmEgeSBieSBbdmFsXSIsYXJndW1lbnRzOnt2YWw6e3R5cGU6bi5Bcmd1bWVudFR5cGUuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMH19fSx7b3Bjb2RlOiJzZXRZIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuQ09NTUFORCx0ZXh0OiJzZXQgY2FtZXJhIHkgdG8gW3ZhbF0iLGFyZ3VtZW50czp7dmFsOnt0eXBlOm4uQXJndW1lbnRUeXBlLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSwiLS0tIix7b3Bjb2RlOiJnZXRYIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiY2FtZXJhIHgifSx7b3Bjb2RlOiJnZXRZIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiY2FtZXJhIHkifSx7b3Bjb2RlOiJnZXREaXJlY3Rpb24iLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJjYW1lcmEgZGlyZWN0aW9uIn0sIi0tLSIse29wY29kZToiY2hhbmdlWm9vbSIsYmxvY2tUeXBlOm4uQmxvY2tUeXBlLkNPTU1BTkQsdGV4dDoiY2hhbmdlIGNhbWVyYSB6b29tIGJ5IFt2YWxdIixhcmd1bWVudHM6e3ZhbDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwfX19LHtvcGNvZGU6InNldFpvb20iLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InNldCBjYW1lcmEgem9vbSB0byBbdmFsXSAlIixhcmd1bWVudHM6e3ZhbDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5OVU1CRVIsZGVmYXVsdFZhbHVlOjEwMH19fSx7b3Bjb2RlOiJnZXRab29tIixibG9ja1R5cGU6bi5CbG9ja1R5cGUuUkVQT1JURVIsdGV4dDoiY2FtZXJhIHpvb20ifSwiLS0tIix7b3Bjb2RlOiJzZXRDb2wiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5DT01NQU5ELHRleHQ6InNldCBiYWNrZ3JvdW5kIGNvbG9yIHRvIFt2YWxdIixhcmd1bWVudHM6e3ZhbDp7dHlwZTpuLkFyZ3VtZW50VHlwZS5DT0xPUn19fSx7b3Bjb2RlOiJnZXRDb2wiLGJsb2NrVHlwZTpuLkJsb2NrVHlwZS5SRVBPUlRFUix0ZXh0OiJiYWNrZ3JvdW5kIGNvbG9yIn1dLG1lbnVzOntzcHJpdGVzOntpdGVtczoiZ2V0U3ByaXRlcyIsYWNjZXB0UmVwb3J0ZXJzOiEwfX19fWdldFNwcml0ZXMoKXtsZXQgQT1bXTtyZXR1cm4gbi52bS5ydW50aW1lLnRhcmdldHMuZm9yRWFjaChlPT57ZS5pc09yaWdpbmFsJiYhZS5pc1N0YWdlJiZBLnB1c2goZS5zcHJpdGUubmFtZSl9KSwwPT09QS5sZW5ndGgmJkEucHVzaCgibm8gc3ByaXRlcyBleGlzdCIpLEF9c2V0Qm90aChBLGUpe3I9K0EueCxvPStBLnksYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9Y2hhbmdlWm9vbShBLGUpe3MrPStBLnZhbCxjKCksaS5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX1zZXRab29tKEEsZSl7cz0rQS52YWwsYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9Y2hhbmdlWChBLGUpe3IrPStBLnZhbCxjKCksaS5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX1zZXRYKEEsZSl7cj0rQS52YWwsYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9Y2hhbmdlWShBLGUpe28rPStBLnZhbCxjKCksaS5ydW50aW1lLnJlcXVlc3RSZWRyYXcoKX1zZXRZKEEsZSl7bz0rQS52YWwsYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9c2V0RGlyZWN0aW9uKEEsZSl7YT0rQS52YWwsYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9cm90YXRlQ1coQSxlKXthKz0rQS52YWwsYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9cm90YXRlQ0NXKEEsZSl7YS09K0EudmFsLGMoKSxpLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpfWdldFgoKXtyZXR1cm4gcn1nZXRZKCl7cmV0dXJuIG99Z2V0Wm9vbSgpe3JldHVybiBzfWdldERpcmVjdGlvbigpe3JldHVybiBhfXNldENvbChBLGUpe0I9bi5DYXN0LnRvU3RyaW5nKEEudmFsKTtjb25zdCB0PW4uQ2FzdC50b1JnYkNvbG9yTGlzdChBLnZhbCk7bi52bS5yZW5kZXJlci5zZXRCYWNrZ3JvdW5kQ29sb3IodFswXS8yNTUsdFsxXS8yNTUsdFsyXS8yNTUpLGMoKSxpLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpfWdldENvbCgpe3JldHVybiBCfW1vdmVTdGVwcyhBKXtsZXQgZT0oOTAtYSkqTWF0aC5QSS8xODA7cis9QS52YWwqTWF0aC5jb3MoZSksbys9QS52YWwqTWF0aC5zaW4oZSksYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9Z29UbyhBLGUpe2NvbnN0IHQ9bi5DYXN0LnRvU3RyaW5nKEEuc3ByaXRlKSxzPWkucnVudGltZS5nZXRTcHJpdGVUYXJnZXRCeU5hbWUodCk7cyYmKHI9TWF0aC5yb3VuZChzLngpLG89TWF0aC5yb3VuZChzLnkpLGMoKSxpLnJ1bnRpbWUucmVxdWVzdFJlZHJhdygpKX1wb2ludFRvd2FyZHMoQSxlKXtjb25zdCB0PW4uQ2FzdC50b1N0cmluZyhBLnNwcml0ZSkscz1pLnJ1bnRpbWUuZ2V0U3ByaXRlVGFyZ2V0QnlOYW1lKHQpO2lmKCFzKXJldHVybjtsZXQgQj1zLngsZz1zLnk7Y29uc3QgRT1CLXIsUT1nLW87YT05MC10aGlzLnJhZFRvRGVnKE1hdGguYXRhbjIoUSxFKSksYygpLGkucnVudGltZS5yZXF1ZXN0UmVkcmF3KCl9cmFkVG9EZWcoQSl7cmV0dXJuIDE4MCpBL01hdGguUEl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0KSxpPXQoMSkscj10KDMpLG89dCg0MDMpLHtjcmVhdGVOb2lzZTNEOnN9PXQoNDA0KTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5ub2lzZSx0aGlzLnNlZWQ9MTIzLHRoaXMuc2l6ZT01MCx0aGlzLmdlbmVyYXRvcj1uZXcgbyh0aGlzLnNlZWQpfWdldEluZm8oKXtyZXR1cm57aWQ6Iml5Z1BlcmxpbiIsbmFtZToiUGVybGluIE5vaXNlIixjb2xvcjE6IiM1MjUyNTIiLGNvbG9yMjoiIzYzNjM2MyIsYmxvY2tzOlt7b3Bjb2RlOiJHZXROb2lzZSIsYmxvY2tUeXBlOmkuUkVQT1JURVIsdGV4dDpuKHtpZDoiaXlnUGVybGluLkdldE5vaXNlIixkZWZhdWx0OiJHZXQgcGVybGluIG5vaXNlIHdpdGggc2VlZCBbU0VFRF0gYW5kIG9jdGF2ZSBbT0NUQVZFXSBhdCB4IFtYXSwgeSBbWV0sIGFuZCB6IFtaXSIsZGVzY3JpcHRpb246IkdldCBzZWVkZWQgcGVybGluIG5vaXNlIGF0IGEgc3BlY2lmaWVkIHggYW5kIHkgYW5kIHouIn0pLGFyZ3VtZW50czp7U0VFRDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTIzfSxPQ1RBVkU6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjR9LFg6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFo6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fSxoaWRlRnJvbVBhbGV0dGU6ITB9LHtvcGNvZGU6IkdldFJhbmRvbU5vaXNlIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0Om4oe2lkOiJpeWdQZXJsaW4uR2V0UmFuZG9tTm9pc2UiLGRlZmF1bHQ6IkdldCBub2lzZSB3aXRoIHNlZWQgW1NFRURdIGF0IHggW1hdLCB5IFtZXSwgYW5kIHogW1pdIixkZXNjcmlwdGlvbjoiR2V0IHNlZWRlZCBub2lzZSB3aXRoIGEgc3BlY2lmaWVkIHNlZWQgYXQgYSBzcGVjaWZpZWQgeCBhbmQgeSBhbmQgei4ifSksYXJndW1lbnRzOntTRUVEOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMjN9LFg6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFo6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fSxoaWRlRnJvbVBhbGV0dGU6ITB9LHtvcGNvZGU6IkdlbmVyYXRlUGVybGluTm9pc2UiLGJsb2NrVHlwZTppLkNPTU1BTkQsdGV4dDpuKHtpZDoiaXlnUGVybGluLkdlbmVyYXRlUGVybGluTm9pc2UiLGRlZmF1bHQ6IlByZS1nZW5lcmF0ZSBwZXJsaW4gbm9pc2Ugd2l0aCBzZWVkIFtTRUVEXSBhbmQgb2N0YXZlIFtPQ1RBVkVdIixkZXNjcmlwdGlvbjoiUHJlLWdlbmVyYXRlIHNlZWRlZCBwZXJsaW4gbm9pc2UuIn0pLGFyZ3VtZW50czp7U0VFRDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTIzfSxPQ1RBVkU6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjR9fSxoaWRlRnJvbVBhbGV0dGU6ITB9LHtvcGNvZGU6IkdlbmVyYXRlUmFuZG9tTm9pc2UiLGJsb2NrVHlwZTppLkNPTU1BTkQsaGlkZUZyb21QYWxldHRlOiEwLHRleHQ6bih7aWQ6Iml5Z1Blcmxpbi5HZW5lcmF0ZVJhbmRvbU5vaXNlIixkZWZhdWx0OiJub3QgbmVlZGVkIFtTRUVEXSBbU0laRV0iLGRlc2NyaXB0aW9uOiJQcmUtZ2VuZXJhdGUgc2VlZGVkIG5vaXNlLiJ9KSxhcmd1bWVudHM6e1NFRUQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjEyM30sU0laRTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6NTB9fX0se29wY29kZToiZ2V0U2ltcGxleE5vaXNlIixibG9ja1R5cGU6aS5SRVBPUlRFUixoaWRlRnJvbVBhbGV0dGU6ITAsdGV4dDpuKHtpZDoiaXlnUGVybGluLmdldFNpbXBsZXhOb2lzZSIsZGVmYXVsdDoiR2V0IHNpbXBsZXggbm9pc2Ugd2l0aCBzZWVkIFtTRUVEXSBhdCB4IFtYXSwgeSBbWV0sIGFuZCB6IFtaXSIsZGVzY3JpcHRpb246IkdldCBzaW1wbGV4IG5vaXNlIHdpdGggYSBzcGVjaWZpZWQgc2VlZCBhdCBhIHNwZWNpZmllZCB4IGFuZCB5IGFuZCB6LiJ9KSxhcmd1bWVudHM6e1NFRUQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjEyM30sWDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sWTp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MH0sWjp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MH19fSx7b3Bjb2RlOiJHZXROb2lzZVYyIixibG9ja1R5cGU6aS5SRVBPUlRFUix0ZXh0Om4oe2lkOiJpeWdQZXJsaW4uR2V0Tm9pc2VWMiIsZGVmYXVsdDoiR2V0IHBlcmxpbiBub2lzZSB3aXRoIHNlZWQgW1NFRURdIGFuZCBvY3RhdmUgW09DVEFWRV0gYXQgeCBbWF0sIHkgW1ldLCBhbmQgeiBbWl0iLGRlc2NyaXB0aW9uOiJHZXQgc2VlZGVkIHBlcmxpbiBub2lzZSBhdCBhIHNwZWNpZmllZCB4IGFuZCB5IGFuZCB6LiJ9KSxhcmd1bWVudHM6e1NFRUQ6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjEyM30sT0NUQVZFOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTo0fSxYOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxZOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfSxaOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZTowfX19LHtvcGNvZGU6IkdldFJhbmRvbU5vaXNlVjIiLGJsb2NrVHlwZTppLlJFUE9SVEVSLHRleHQ6bih7aWQ6Iml5Z1Blcmxpbi5HZXRSYW5kb21Ob2lzZVYyIixkZWZhdWx0OiJHZXQgcmFuZG9tIG5vaXNlIHdpdGggc2VlZCBbU0VFRF0gYXQgeCBbWF0sIHkgW1ldLCBhbmQgeiBbWl0iLGRlc2NyaXB0aW9uOiJHZXQgc2VlZGVkIHJhbmRvbSBub2lzZSB3aXRoIGEgc3BlY2lmaWVkIHNlZWQgYXQgYSBzcGVjaWZpZWQgeCBhbmQgeSBhbmQgei4ifSksYXJndW1lbnRzOntTRUVEOnt0eXBlOnIuTlVNQkVSLGRlZmF1bHRWYWx1ZToxMjN9LFg6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFk6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9LFo6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjB9fX0se29wY29kZToiR2VuZXJhdGVQZXJsaW5Ob2lzZVYyIixibG9ja1R5cGU6aS5DT01NQU5ELHRleHQ6bih7aWQ6Iml5Z1Blcmxpbi5HZW5lcmF0ZVBlcmxpbk5vaXNlVjIiLGRlZmF1bHQ6IlByZS1nZW5lcmF0ZSBwZXJsaW4gbm9pc2Ugd2l0aCBzZWVkIFtTRUVEXSBhbmQgb2N0YXZlIFtPQ1RBVkVdIixkZXNjcmlwdGlvbjoiUHJlLWdlbmVyYXRlIHNlZWRlZCBwZXJsaW4gbm9pc2UuIn0pLGFyZ3VtZW50czp7U0VFRDp7dHlwZTpyLk5VTUJFUixkZWZhdWx0VmFsdWU6MTIzfSxPQ1RBVkU6e3R5cGU6ci5OVU1CRVIsZGVmYXVsdFZhbHVlOjR9fX1dfX1nb29kU2VlZFJhbmRvbSgpe3RoaXMuZ2VuZXJhdG9yLmluaXRfc2VlZCh0aGlzLnNlZWQpO2xldCBBPXRoaXMuZ2VuZXJhdG9yLnJhbmRvbV9pbmNsKCk7cmV0dXJuIHRoaXMuc2VlZD00Mjk0OTY3Mjk2KkEsQX1kdW1iU2VlZFJhbmRvbSgpe3RoaXMuZ2VuZXJhdG9yLmluaXRfc2VlZCh0aGlzLnNlZWQpO2xldCBBPXRoaXMuZ2VuZXJhdG9yLnJhbmRvbV9pbmNsKCk7cmV0dXJuIHRoaXMuc2VlZD0oMTY2NDUyNSp0aGlzLnNlZWQrMTAxMzkwNDIyMyklNDI5NDk2NzI5NixBfUdlbmVyYXRlUGVybGluTm9pc2UoQSxlKXtBLlg9MCxBLlk9MCxBLlo9MCx0aGlzLkdldE5vaXNlKEEsZSl9R2VuZXJhdGVSYW5kb21Ob2lzZShBLGUpe2xldCB0PUEuU0VFRCxuPUEuU0laRTtpZihudWxsPT10aGlzLm5vaXNlfHx0IT10aGlzLnNlZWQpe3RoaXMubm9pc2U9bmV3IEFycmF5KG4pLHRoaXMuc2VlZD10O2ZvcihsZXQgQT0wO0E8bjtBKyspe3RoaXMubm9pc2VbQV09bmV3IEFycmF5KG4pO2ZvcihsZXQgZT0wO2U8bjtlKyspe3RoaXMubm9pc2VbQV1bZV09bmV3IEFycmF5KG4pO2ZvcihsZXQgdD0wO3Q8bjt0KyspdGhpcy5ub2lzZVtBXVtlXVt0XT10aGlzLmR1bWJTZWVkUmFuZG9tKCl9fXRoaXMuc2VlZD10LHRoaXMucHJldl9zZWVkPXQsdGhpcy5zaXplPW59aWYobj50aGlzLnNpemUmJnQ9PXRoaXMuc2VlZCl7dGhpcy5zZWVkPXRoaXMucHJldl9zZWVkO2ZvcihsZXQgQT10aGlzLnNpemU7QTxuKzE7QSsrKXt0aGlzLm5vaXNlW0FdPW5ldyBBcnJheShuKTtmb3IobGV0IGU9dGhpcy5zaXplO2U8bisxO2UrKyl7dGhpcy5ub2lzZVtBXVtlXT1uZXcgQXJyYXkobik7Zm9yKGxldCB0PXRoaXMuc2l6ZTt0PG4rMTt0KyspdGhpcy5ub2lzZVtBXVtlXVt0XT10aGlzLmR1bWJTZWVkUmFuZG9tKCl9fX19R2V0UmFuZG9tTm9pc2UoQSxlKXtsZXQgdD1BLlNFRUQsbj1BLlgsaT1BLlkscj1BLlosbz10aGlzLnNlZWQ7dGhpcy5zZWVkPXQrbisxZTMqaSsxZTQqcjtsZXQgcz10aGlzLmR1bWJTZWVkUmFuZG9tKCk7cmV0dXJuIHRoaXMuc2VlZD1vLHN9Z2VuZXJhdGVQZXJsaW4oQSxlLHQsbixpLHIpe2NvbnN0IG89QT0+LjUqKDEtTWF0aC5jb3MoQSpNYXRoLlBJKSk7aWYobnVsbD09dGhpcy5wZXJsaW58fEEhPXRoaXMuc2VlZCl7dGhpcy5wZXJsaW49bmV3IEFycmF5KDQwOTYpLHRoaXMuc2VlZD1BO2ZvcihsZXQgQT0wO0E8NDA5NjtBKyspdGhpcy5wZXJsaW5bQV09dCgpO3RoaXMuc2VlZD1BfW48MCYmKG49LW4pLGk8MCYmKGk9LWkpLHI8MCYmKHI9LXIpO2xldCBzLGEsQixjLGcsRT1NYXRoLmZsb29yKG4pLFE9TWF0aC5mbG9vcihpKSx1PU1hdGguZmxvb3IociksbD1uLUUsaD1pLVEsdz1yLXUsQz0wLEk9LjU7Zm9yKGxldCBBPTA7QTxlO0ErKyl7bGV0IEE9RSsoUTw8NCkrKHU8PDgpO3M9byhsKSxhPW8oaCksQj10aGlzLnBlcmxpbls0MDk1JkFdLEIrPXMqKHRoaXMucGVybGluW0ErMSY0MDk1XS1CKSxjPXRoaXMucGVybGluW0ErMTYmNDA5NV0sYys9cyoodGhpcy5wZXJsaW5bQSsxNisxJjQwOTVdLWMpLEIrPWEqKGMtQiksQSs9MjU2LGM9dGhpcy5wZXJsaW5bNDA5NSZBXSxjKz1zKih0aGlzLnBlcmxpbltBKzEmNDA5NV0tYyksZz10aGlzLnBlcmxpbltBKzE2JjQwOTVdLGcrPXMqKHRoaXMucGVybGluW0ErMTYrMSY0MDk1XS1nKSxjKz1hKihnLWMpLEIrPW8odykqKGMtQiksQys9QipJLEkqPS41LEU8PD0xLGwqPTIsUTw8PTEsaCo9Mix1PDw9MSx3Kj0yLGw+PTEmJihFKyssbC0tKSxoPj0xJiYoUSsrLGgtLSksdz49MSYmKHUrKyx3LS0pfXJldHVybiBDJTF9R2V0Tm9pc2UoQSxlKXtsZXQgdD1BLlNFRUQsbj1BLk9DVEFWRT09PTEvMD80OkEuT0NUQVZFLGk9QS5YKy41LHI9QS5ZKy41LG89QS5aKy41O3JldHVybiB0aGlzLmdlbmVyYXRlUGVybGluKHQsbix0aGlzLmR1bWJTZWVkUmFuZG9tLmJpbmQodGhpcyksaSxyLG8pfUdldE5vaXNlVjIoQSxlKXtsZXQgdD1BLlNFRUQsbj1BLk9DVEFWRT09PTEvMD80OkEuT0NUQVZFLGk9QS5YKy41LHI9QS5ZKy41LG89QS5aKy41O3JldHVybiB0aGlzLmdlbmVyYXRlUGVybGluKHQsbix0aGlzLmdvb2RTZWVkUmFuZG9tLmJpbmQodGhpcyksaSxyLG8pfUdldFJhbmRvbU5vaXNlVjIoQSxlKXtsZXQgdD1BLlNFRUQsbj1BLlgsaT1BLlkscj1BLlosbz10aGlzLnNlZWQ7dGhpcy5zZWVkPXQrNzQzKm4rOTQyKmkrNjQ1KnI7bGV0IHM9dGhpcy5nb29kU2VlZFJhbmRvbS5iaW5kKHRoaXMpKCk7cmV0dXJuIHRoaXMuc2VlZD1vLHN9R2VuZXJhdGVQZXJsaW5Ob2lzZVYyKEEsZSl7QS5YPTAsQS5ZPTAsQS5aPTAsdGhpcy5HZXROb2lzZVYyKEEsZSl9Z2V0U2ltcGxleE5vaXNlKEEpe2NvbnN0IGU9QS5TRUVELHQ9QS5YLG49QS5ZLGk9QS5aO3RoaXMuZ2VuZXJhdG9yLmluaXRfc2VlZChlKTtyZXR1cm4gcyh0aGlzLmdlbmVyYXRvci5yYW5kb21faW5jbC5iaW5kKHRoaXMuZ2VuZXJhdG9yKSkodCxuLGkpfX19LGZ1bmN0aW9uKEEsZSl7dmFyIHQ9ZnVuY3Rpb24oQSl7bnVsbD09QSYmKEE9KG5ldyBEYXRlKS5nZXRUaW1lKCkpLHRoaXMuTj02MjQsdGhpcy5NPTM5Nyx0aGlzLk1BVFJJWF9BPTI1Njc0ODM2MTUsdGhpcy5VUFBFUl9NQVNLPTIxNDc0ODM2NDgsdGhpcy5MT1dFUl9NQVNLPTIxNDc0ODM2NDcsdGhpcy5tdD1uZXcgQXJyYXkodGhpcy5OKSx0aGlzLm10aT10aGlzLk4rMSxBLmNvbnN0cnVjdG9yPT1BcnJheT90aGlzLmluaXRfYnlfYXJyYXkoQSxBLmxlbmd0aCk6dGhpcy5pbml0X3NlZWQoQSl9O3QucHJvdG90eXBlLmluaXRfc2VlZD1mdW5jdGlvbihBKXtmb3IodGhpcy5tdFswXT1BPj4+MCx0aGlzLm10aT0xO3RoaXMubXRpPHRoaXMuTjt0aGlzLm10aSsrKXtBPXRoaXMubXRbdGhpcy5tdGktMV1edGhpcy5tdFt0aGlzLm10aS0xXT4+PjMwO3RoaXMubXRbdGhpcy5tdGldPSgxODEyNDMzMjUzKigoNDI5NDkwMTc2MCZBKT4+PjE2KTw8MTYpKzE4MTI0MzMyNTMqKDY1NTM1JkEpK3RoaXMubXRpLHRoaXMubXRbdGhpcy5tdGldPj4+PTB9fSx0LnByb3RvdHlwZS5pbml0X2J5X2FycmF5PWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpO2Zvcih0aGlzLmluaXRfc2VlZCgxOTY1MDIxOCksdD0xLG49MCxpPXRoaXMuTj5lP3RoaXMuTjplO2k7aS0tKXt2YXIgcj10aGlzLm10W3QtMV1edGhpcy5tdFt0LTFdPj4+MzA7dGhpcy5tdFt0XT0odGhpcy5tdFt0XV4oMTY2NDUyNSooKDQyOTQ5MDE3NjAmcik+Pj4xNik8PDE2KSsxNjY0NTI1Kig2NTUzNSZyKSkrQVtuXStuLHRoaXMubXRbdF0+Pj49MCxuKyssKyt0Pj10aGlzLk4mJih0aGlzLm10WzBdPXRoaXMubXRbdGhpcy5OLTFdLHQ9MSksbj49ZSYmKG49MCl9Zm9yKGk9dGhpcy5OLTE7aTtpLS0pe3I9dGhpcy5tdFt0LTFdXnRoaXMubXRbdC0xXT4+PjMwO3RoaXMubXRbdF09KHRoaXMubXRbdF1eKDE1NjYwODM5NDEqKCg0Mjk0OTAxNzYwJnIpPj4+MTYpPDwxNikrMTU2NjA4Mzk0MSooNjU1MzUmcikpLXQsdGhpcy5tdFt0XT4+Pj0wLCsrdD49dGhpcy5OJiYodGhpcy5tdFswXT10aGlzLm10W3RoaXMuTi0xXSx0PTEpfXRoaXMubXRbMF09MjE0NzQ4MzY0OH0sdC5wcm90b3R5cGUucmFuZG9tX2ludD1mdW5jdGlvbigpe3ZhciBBLGU9bmV3IEFycmF5KDAsdGhpcy5NQVRSSVhfQSk7aWYodGhpcy5tdGk+PXRoaXMuTil7dmFyIHQ7Zm9yKHRoaXMubXRpPT10aGlzLk4rMSYmdGhpcy5pbml0X3NlZWQoNTQ4OSksdD0wO3Q8dGhpcy5OLXRoaXMuTTt0KyspQT10aGlzLm10W3RdJnRoaXMuVVBQRVJfTUFTS3x0aGlzLm10W3QrMV0mdGhpcy5MT1dFUl9NQVNLLHRoaXMubXRbdF09dGhpcy5tdFt0K3RoaXMuTV1eQT4+PjFeZVsxJkFdO2Zvcig7dDx0aGlzLk4tMTt0KyspQT10aGlzLm10W3RdJnRoaXMuVVBQRVJfTUFTS3x0aGlzLm10W3QrMV0mdGhpcy5MT1dFUl9NQVNLLHRoaXMubXRbdF09dGhpcy5tdFt0Kyh0aGlzLk0tdGhpcy5OKV1eQT4+PjFeZVsxJkFdO0E9dGhpcy5tdFt0aGlzLk4tMV0mdGhpcy5VUFBFUl9NQVNLfHRoaXMubXRbMF0mdGhpcy5MT1dFUl9NQVNLLHRoaXMubXRbdGhpcy5OLTFdPXRoaXMubXRbdGhpcy5NLTFdXkE+Pj4xXmVbMSZBXSx0aGlzLm10aT0wfXJldHVybiBBPXRoaXMubXRbdGhpcy5tdGkrK10sQV49QT4+PjExLEFePUE8PDcmMjYzNjkyODY0MCxBXj1BPDwxNSY0MDIyNzMwNzUyLChBXj1BPj4+MTgpPj4+MH0sdC5wcm90b3R5cGUucmFuZG9tX2ludDMxPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmFuZG9tX2ludCgpPj4+MX0sdC5wcm90b3R5cGUucmFuZG9tX2luY2w9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5yYW5kb21faW50KCkqKDEvNDI5NDk2NzI5NSl9LHQucHJvdG90eXBlLnJhbmRvbT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJhbmRvbV9pbnQoKSooMS80Mjk0OTY3Mjk2KX0sdC5wcm90b3R5cGUucmFuZG9tX2V4Y2w9ZnVuY3Rpb24oKXtyZXR1cm4odGhpcy5yYW5kb21faW50KCkrLjUpKigxLzQyOTQ5NjcyOTYpfSx0LnByb3RvdHlwZS5yYW5kb21fbG9uZz1mdW5jdGlvbigpe3JldHVybig2NzEwODg2NCoodGhpcy5yYW5kb21faW50KCk+Pj41KSsodGhpcy5yYW5kb21faW50KCk+Pj42KSkqKDEvOTAwNzE5OTI1NDc0MDk5Mil9LEEuZXhwb3J0cz10fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSx0LmQoZSwiY3JlYXRlTm9pc2UyRCIsKGZ1bmN0aW9uKCl7cmV0dXJuIHV9KSksdC5kKGUsImNyZWF0ZU5vaXNlM0QiLChmdW5jdGlvbigpe3JldHVybiBsfSkpLHQuZChlLCJjcmVhdGVOb2lzZTREIiwoZnVuY3Rpb24oKXtyZXR1cm4gaH0pKSx0LmQoZSwiYnVpbGRQZXJtdXRhdGlvblRhYmxlIiwoZnVuY3Rpb24oKXtyZXR1cm4gd30pKTtjb25zdCBuPU1hdGguc3FydCgzKSxpPU1hdGguc3FydCg1KSxyPS41KihuLTEpLG89KDMtbikvNixzPTEvNixhPShpLTEpLzQsQj0oNS1pKS8yMCxjPUE9PjB8TWF0aC5mbG9vcihBKSxnPW5ldyBGbG9hdDY0QXJyYXkoWzEsMSwtMSwxLDEsLTEsLTEsLTEsMSwwLC0xLDAsMSwwLC0xLDAsMCwxLDAsLTEsMCwxLDAsLTFdKSxFPW5ldyBGbG9hdDY0QXJyYXkoWzEsMSwwLC0xLDEsMCwxLC0xLDAsLTEsLTEsMCwxLDAsMSwtMSwwLDEsMSwwLC0xLC0xLDAsLTEsMCwxLDEsMCwtMSwxLDAsMSwtMSwwLC0xLC0xXSksUT1uZXcgRmxvYXQ2NEFycmF5KFswLDEsMSwxLDAsMSwxLC0xLDAsMSwtMSwxLDAsMSwtMSwtMSwwLC0xLDEsMSwwLC0xLDEsLTEsMCwtMSwtMSwxLDAsLTEsLTEsLTEsMSwwLDEsMSwxLDAsMSwtMSwxLDAsLTEsMSwxLDAsLTEsLTEsLTEsMCwxLDEsLTEsMCwxLC0xLC0xLDAsLTEsMSwtMSwwLC0xLC0xLDEsMSwwLDEsMSwxLDAsLTEsMSwtMSwwLDEsMSwtMSwwLC0xLC0xLDEsMCwxLC0xLDEsMCwtMSwtMSwtMSwwLDEsLTEsLTEsMCwtMSwxLDEsMSwwLDEsMSwtMSwwLDEsLTEsMSwwLDEsLTEsLTEsMCwtMSwxLDEsMCwtMSwxLC0xLDAsLTEsLTEsMSwwLC0xLC0xLC0xLDBdKTtmdW5jdGlvbiB1KCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOk1hdGgucmFuZG9tO2NvbnN0IGU9dyhBKSx0PW5ldyBGbG9hdDY0QXJyYXkoZSkubWFwKEE9PmdbQSUxMioyXSksbj1uZXcgRmxvYXQ2NEFycmF5KGUpLm1hcChBPT5nW0ElMTIqMisxXSk7cmV0dXJuIGZ1bmN0aW9uKEEsaSl7bGV0IHM9MCxhPTAsQj0wO2NvbnN0IGc9KEEraSkqcixFPWMoQStnKSxRPWMoaStnKSx1PShFK1EpKm8sbD1BLShFLXUpLGg9aS0oUS11KTtsZXQgdyxDO2w+aD8odz0xLEM9MCk6KHc9MCxDPTEpO2NvbnN0IEk9bC13K28sTT1oLUMrbyxkPWwtMSsyKm8scD1oLTErMipvLG09MjU1JkUsRj0yNTUmUTtsZXQgRD0uNS1sKmwtaCpoO2lmKEQ+PTApe2NvbnN0IEE9bStlW0ZdO0QqPUQscz1EKkQqKHRbQV0qbCtuW0FdKmgpfWxldCBZPS41LUkqSS1NKk07aWYoWT49MCl7Y29uc3QgQT1tK3crZVtGK0NdO1kqPVksYT1ZKlkqKHRbQV0qSStuW0FdKk0pfWxldCBmPS41LWQqZC1wKnA7aWYoZj49MCl7Y29uc3QgQT1tKzErZVtGKzFdO2YqPWYsQj1mKmYqKHRbQV0qZCtuW0FdKnApfXJldHVybiA3MCoocythK0IpfX1mdW5jdGlvbiBsKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOk1hdGgucmFuZG9tO2NvbnN0IGU9dyhBKSx0PW5ldyBGbG9hdDY0QXJyYXkoZSkubWFwKEE9PkVbQSUxMiozXSksbj1uZXcgRmxvYXQ2NEFycmF5KGUpLm1hcChBPT5FW0ElMTIqMysxXSksaT1uZXcgRmxvYXQ2NEFycmF5KGUpLm1hcChBPT5FW0ElMTIqMysyXSk7cmV0dXJuIGZ1bmN0aW9uKEEscixvKXtsZXQgYSxCLGcsRTtjb25zdCBRPShBK3IrbykqKDEvMyksdT1jKEErUSksbD1jKHIrUSksaD1jKG8rUSksdz0odStsK2gpKnMsQz1BLSh1LXcpLEk9ci0obC13KSxNPW8tKGgtdyk7bGV0IGQscCxtLEYsRCxZO0M+PUk/ST49TT8oZD0xLHA9MCxtPTAsRj0xLEQ9MSxZPTApOkM+PU0/KGQ9MSxwPTAsbT0wLEY9MSxEPTAsWT0xKTooZD0wLHA9MCxtPTEsRj0xLEQ9MCxZPTEpOkk8TT8oZD0wLHA9MCxtPTEsRj0wLEQ9MSxZPTEpOkM8TT8oZD0wLHA9MSxtPTAsRj0wLEQ9MSxZPTEpOihkPTAscD0xLG09MCxGPTEsRD0xLFk9MCk7Y29uc3QgZj1DLWQrcyxOPUktcCtzLFU9TS1tK3MseT1DLUYrMipzLFQ9SS1EKzIqcyx4PU0tWSsyKnMsUj1DLTErLjUsRz1JLTErLjUsUz1NLTErLjUsYj0yNTUmdSxIPTI1NSZsLHY9MjU1Jmg7bGV0IGs9LjYtQypDLUkqSS1NKk07aWYoazwwKWE9MDtlbHNle2NvbnN0IEE9YitlW0grZVt2XV07ayo9ayxhPWsqayoodFtBXSpDK25bQV0qSStpW0FdKk0pfWxldCBqPS42LWYqZi1OKk4tVSpVO2lmKGo8MClCPTA7ZWxzZXtjb25zdCBBPWIrZCtlW0grcCtlW3YrbV1dO2oqPWosQj1qKmoqKHRbQV0qZituW0FdKk4raVtBXSpVKX1sZXQgSj0uNi15KnktVCpULXgqeDtpZihKPDApZz0wO2Vsc2V7Y29uc3QgQT1iK0YrZVtIK0QrZVt2K1ldXTtKKj1KLGc9SipKKih0W0FdKnkrbltBXSpUK2lbQV0qeCl9bGV0IHo9LjYtUipSLUcqRy1TKlM7aWYoejwwKUU9MDtlbHNle2NvbnN0IEE9YisxK2VbSCsxK2VbdisxXV07eio9eixFPXoqeioodFtBXSpSK25bQV0qRytpW0FdKlMpfXJldHVybiAzMiooYStCK2crRSl9fWZ1bmN0aW9uIGgoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06TWF0aC5yYW5kb207Y29uc3QgZT13KEEpLHQ9bmV3IEZsb2F0NjRBcnJheShlKS5tYXAoQT0+UVtBJTMyKjRdKSxuPW5ldyBGbG9hdDY0QXJyYXkoZSkubWFwKEE9PlFbQSUzMio0KzFdKSxpPW5ldyBGbG9hdDY0QXJyYXkoZSkubWFwKEE9PlFbQSUzMio0KzJdKSxyPW5ldyBGbG9hdDY0QXJyYXkoZSkubWFwKEE9PlFbQSUzMio0KzNdKTtyZXR1cm4gZnVuY3Rpb24oQSxvLHMsZyl7bGV0IEUsUSx1LGwsaDtjb25zdCB3PShBK28rcytnKSphLEM9YyhBK3cpLEk9YyhvK3cpLE09YyhzK3cpLGQ9YyhnK3cpLHA9KEMrSStNK2QpKkIsbT1BLShDLXApLEY9by0oSS1wKSxEPXMtKE0tcCksWT1nLShkLXApO2xldCBmPTAsTj0wLFU9MCx5PTA7bT5GP2YrKzpOKyssbT5EP2YrKzpVKyssbT5ZP2YrKzp5KyssRj5EP04rKzpVKyssRj5ZP04rKzp5KyssRD5ZP1UrKzp5Kys7Y29uc3QgVD1mPj0zPzE6MCx4PU4+PTM/MTowLFI9VT49Mz8xOjAsRz15Pj0zPzE6MCxTPWY+PTI/MTowLGI9Tj49Mj8xOjAsSD1VPj0yPzE6MCx2PXk+PTI/MTowLGs9Zj49MT8xOjAsaj1OPj0xPzE6MCxKPVU+PTE/MTowLHo9eT49MT8xOjAsTD1tLVQrQixQPUYteCtCLE89RC1SK0IsVj1ZLUcrQixXPW0tUysyKkIsSz1GLWIrMipCLFg9RC1IKzIqQixaPVktdisyKkIsXz1tLWsrMypCLHE9Ri1qKzMqQiwkPUQtSiszKkIsQUE9WS16KzMqQixlQT1tLTErNCpCLHRBPUYtMSs0KkIsbkE9RC0xKzQqQixpQT1ZLTErNCpCLHJBPTI1NSZDLG9BPTI1NSZJLHNBPTI1NSZNLGFBPTI1NSZkO2xldCBCQT0uNi1tKm0tRipGLUQqRC1ZKlk7aWYoQkE8MClFPTA7ZWxzZXtjb25zdCBBPXJBK2Vbb0ErZVtzQStlW2FBXV1dO0JBKj1CQSxFPUJBKkJBKih0W0FdKm0rbltBXSpGK2lbQV0qRCtyW0FdKlkpfWxldCBjQT0uNi1MKkwtUCpQLU8qTy1WKlY7aWYoY0E8MClRPTA7ZWxzZXtjb25zdCBBPXJBK1QrZVtvQSt4K2Vbc0ErUitlW2FBK0ddXV07Y0EqPWNBLFE9Y0EqY0EqKHRbQV0qTCtuW0FdKlAraVtBXSpPK3JbQV0qVil9bGV0IGdBPS42LVcqVy1LKkstWCpYLVoqWjtpZihnQTwwKXU9MDtlbHNle2NvbnN0IEE9ckErUytlW29BK2IrZVtzQStIK2VbYUErdl1dXTtnQSo9Z0EsdT1nQSpnQSoodFtBXSpXK25bQV0qSytpW0FdKlgrcltBXSpaKX1sZXQgRUE9LjYtXypfLXEqcS0kKiQtQUEqQUE7aWYoRUE8MClsPTA7ZWxzZXtjb25zdCBBPXJBK2srZVtvQStqK2Vbc0ErSitlW2FBK3pdXV07RUEqPUVBLGw9RUEqRUEqKHRbQV0qXytuW0FdKnEraVtBXSokK3JbQV0qQUEpfWxldCBRQT0uNi1lQSplQS10QSp0QS1uQSpuQS1pQSppQTtpZihRQTwwKWg9MDtlbHNle2NvbnN0IEE9ckErMStlW29BKzErZVtzQSsxK2VbYUErMV1dXTtRQSo9UUEsaD1RQSpRQSoodFtBXSplQStuW0FdKnRBK2lbQV0qbkErcltBXSppQSl9cmV0dXJuIDI3KihFK1ErdStsK2gpfX1mdW5jdGlvbiB3KEEpe2NvbnN0IGU9bmV3IFVpbnQ4QXJyYXkoNTEyKTtmb3IobGV0IEE9MDtBPDI1NjtBKyspZVtBXT1BO2ZvcihsZXQgdD0wO3Q8MjU1O3QrKyl7Y29uc3Qgbj10K35+KEEoKSooMjU2LXQpKSxpPWVbdF07ZVt0XT1lW25dLGVbbl09aX1mb3IobGV0IEE9MjU2O0E8NTEyO0ErKyllW0FdPWVbQS0yNTZdO3JldHVybiBlfX0sZnVuY3Rpb24oQSxlLHQpe3QoNCk7Y29uc3Qgbj10KDEpLGk9dCgzKSxyPXQoMiksbz10KDQwNikscz10KDQwNyk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucnVudGltZT1BLHRoaXMuQ0FOTk9OPW8sdGhpcy53b3JsZD1uZXcgdGhpcy5DQU5OT04uV29ybGQsdGhpcy5fM2Q9e30sdGhpcy5UaHJlZT17fSx2bS5ydW50aW1lLmV4dF9qZzNkPyh0aGlzLl8zZD12bS5ydW50aW1lLmV4dF9qZzNkLHRoaXMuVGhyZWU9dGhpcy5fM2QudGhyZWUpOnZtLmV4dGVuc2lvbk1hbmFnZXIubG9hZEV4dGVuc2lvblVSTCgiamczZCIpLnRoZW4oKCk9Pnt0aGlzLl8zZD12bS5ydW50aW1lLmV4dF9qZzNkLHRoaXMuVGhyZWU9dGhpcy5fM2QudGhyZWV9KX1nZXRJbmZvKCl7cmV0dXJue2lkOiJmcjNkIixuYW1lOiIzRCBQaHlzaWNzIixjb2xvcjE6IiNEMDY2RkUiLGNvbG9yMjoiIzgwMDBCQyIsYmxvY2tJY29uVVJJOnMsYmxvY2tzOlt7b3Bjb2RlOiJzdGVwIix0ZXh0OiJzdGVwIHNpbXVsYXRpb24iLGJsb2NrVHlwZTpuLkNPTU1BTkR9LHtvcGNvZGU6ImFkZHAiLHRleHQ6ImVuYWJsZSBwaHlzaWNzIGZvciBbTkFNRTFdIixibG9ja1R5cGU6bi5DT01NQU5ELGFyZ3VtZW50czp7TkFNRTE6e3R5cGU6aS5TVFJJTkcsZGVmYXVsdFZhbHVlOiJPYmplY3QxIn19fSx7b3Bjb2RlOiJybXAiLHRleHQ6ImRpc2FibGUgcGh5c2ljcyBmb3IgW05BTUUxXSIsYmxvY2tUeXBlOm4uQ09NTUFORCxhcmd1bWVudHM6e05BTUUxOnt0eXBlOmkuU1RSSU5HLGRlZmF1bHRWYWx1ZToiT2JqZWN0MSJ9fX1dfX1jcmVhdGVTaGFwZUZyb21HZW9tZXRyeShBKXtpZihBIGluc3RhbmNlb2YgdGhpcy5UaHJlZS5CdWZmZXJHZW9tZXRyeSl7Y29uc3QgZT1BLmF0dHJpYnV0ZXMucG9zaXRpb24uYXJyYXksdD1bXTtmb3IobGV0IEE9MDtBPGUubGVuZ3RoLzM7QSsrKXQucHVzaChBKTtyZXR1cm4gbmV3IHRoaXMuQ0FOTk9OLlRyaW1lc2goZSx0KX1yZXR1cm4gQSBpbnN0YW5jZW9mIHRoaXMuVGhyZWUuR2VvbWV0cnk/bmV3IHRoaXMuQ0FOTk9OLkNvbnZleFBvbHloZWRyb24oQS52ZXJ0aWNlcy5tYXAoQT0+bmV3IHRoaXMuQ0FOTk9OLlZlYzMoQS54LEEueSxBLnopKSxBLmZhY2VzLm1hcChBPT5bQS5hLEEuYixBLmNdKSk6KGNvbnNvbGUud2FybigiVW5zdXBwb3J0ZWQgZ2VvbWV0cnkgdHlwZSBmb3IgY29sbGlzaW9uIHNoYXBlIGNyZWF0aW9uOiIsQS50eXBlKSxudWxsKX1lbmFibGVQaHlzaWNzRm9yT2JqZWN0KEEpe2lmKCF0aGlzLl8zZC5zY2VuZSlyZXR1cm47Y29uc3QgZT10aGlzLl8zZC5zY2VuZS5nZXRPYmplY3RCeU5hbWUoQSk7aWYoIWV8fCF0aGlzLl8zZC5zY2VuZSlyZXR1cm47Y29uc3QgdD10aGlzLmNyZWF0ZVNoYXBlRnJvbUdlb21ldHJ5KGUuZ2VvbWV0cnkpO2lmKCF0KXJldHVybiB2b2lkIGNvbnNvbGUud2FybigiRmFpbGVkIHRvIGNyZWF0ZSBhIHZhbGlkIHNoYXBlIGZvciB0aGUgb2JqZWN0OiIsZS5uYW1lKTtjb25zdCBuPW5ldyB0aGlzLkNBTk5PTi5Cb2R5KHttYXNzOjF9KTtuLmFkZFNoYXBlKHQpLHRoaXMud29ybGQuYWRkQm9keShuKSxlLnVzZXJEYXRhLnBoeXNpY3NCb2R5PW59ZGlzYWJsZVBoeXNpY3NGb3JPYmplY3QoQSl7Y29uc3QgZT10aGlzLl8zZC5zY2VuZS5nZXRPYmplY3RCeU5hbWUoQSk7ZSYmZS51c2VyRGF0YSYmZS51c2VyRGF0YS5waHlzaWNzQm9keSYmKHRoaXMud29ybGQucmVtb3ZlQm9keShlLnVzZXJEYXRhLnBoeXNpY3NCb2R5KSxkZWxldGUgZS51c2VyRGF0YS5waHlzaWNzQm9keSl9c3RlcCgpe3RoaXMud29ybGQuc3RlcCgxLzYwKSx0aGlzLl8zZC5zY2VuZS50cmF2ZXJzZShBPT57QS51c2VyRGF0YSYmQS51c2VyRGF0YS5waHlzaWNzQm9keSYmKEEucG9zaXRpb24uY29weShBLnVzZXJEYXRhLnBoeXNpY3NCb2R5LnBvc2l0aW9uKSxBLnF1YXRlcm5pb24uY29weShBLnVzZXJEYXRhLnBoeXNpY3NCb2R5LnF1YXRlcm5pb24pKX0pfWFkZHAoQSl7dGhpcy5lbmFibGVQaHlzaWNzRm9yT2JqZWN0KHIudG9TdHJpbmcoQS5OQU1FMSkpfXJtcChBKXt0aGlzLmRpc2FibGVQaHlzaWNzRm9yT2JqZWN0KHIudG9TdHJpbmcoQS5OQU1FMSkpfX19LGZ1bmN0aW9uKEEsZSx0KXtBLmV4cG9ydHM9ZnVuY3Rpb24gQShlLHQsbil7ZnVuY3Rpb24gaShvLHMpe2lmKCF0W29dKXtpZighZVtvXSl7aWYocilyZXR1cm4gcihvLCEwKTt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBmaW5kIG1vZHVsZSAnIitvKyInIil9dmFyIGE9dFtvXT17ZXhwb3J0czp7fX07ZVtvXVswXS5jYWxsKGEuZXhwb3J0cywoZnVuY3Rpb24oQSl7dmFyIHQ9ZVtvXVsxXVtBXTtyZXR1cm4gaSh0fHxBKX0pLGEsYS5leHBvcnRzLEEsZSx0LG4pfXJldHVybiB0W29dLmV4cG9ydHN9Zm9yKHZhciByPSExLG89MDtvPG4ubGVuZ3RoO28rKylpKG5bb10pO3JldHVybiBpfSh7MTpbZnVuY3Rpb24oQSxlKXtlLmV4cG9ydHM9e25hbWU6ImNhbm5vbiIsdmVyc2lvbjoiMC42LjIiLGRlc2NyaXB0aW9uOiJBIGxpZ2h0d2VpZ2h0IDNEIHBoeXNpY3MgZW5naW5lIHdyaXR0ZW4gaW4gSmF2YVNjcmlwdC4iLGhvbWVwYWdlOiJodHRwczovL2dpdGh1Yi5jb20vc2NodGVwcGUvY2Fubm9uLmpzIixhdXRob3I6IlN0ZWZhbiBIZWRtYW4gPHNjaHRlcHBlQGdtYWlsLmNvbT4gKGh0dHA6Ly9zdGVmZmUuc2UpIixrZXl3b3JkczpbImNhbm5vbi5qcyIsImNhbm5vbiIsInBoeXNpY3MiLCJlbmdpbmUiLCIzZCJdLG1haW46Ii4vYnVpbGQvY2Fubm9uLmpzIixlbmdpbmVzOntub2RlOiIqIn0scmVwb3NpdG9yeTp7dHlwZToiZ2l0Iix1cmw6Imh0dHBzOi8vZ2l0aHViLmNvbS9zY2h0ZXBwZS9jYW5ub24uanMuZ2l0In0sYnVnczp7dXJsOiJodHRwczovL2dpdGh1Yi5jb20vc2NodGVwcGUvY2Fubm9uLmpzL2lzc3VlcyJ9LGxpY2Vuc2VzOlt7dHlwZToiTUlUIn1dLGRldkRlcGVuZGVuY2llczp7anNoaW50OiJsYXRlc3QiLCJ1Z2xpZnktanMiOiJsYXRlc3QiLG5vZGV1bml0OiJeMC45LjAiLGdydW50OiJ+MC40LjAiLCJncnVudC1jb250cmliLWpzaGludCI6In4wLjEuMSIsImdydW50LWNvbnRyaWItbm9kZXVuaXQiOiJeMC40LjEiLCJncnVudC1jb250cmliLWNvbmNhdCI6In4wLjEuMyIsImdydW50LWNvbnRyaWItdWdsaWZ5IjoiXjAuNS4xIiwiZ3J1bnQtYnJvd3NlcmlmeSI6Il4yLjEuNCIsImdydW50LWNvbnRyaWIteXVpZG9jIjoiXjAuNS4yIixicm93c2VyaWZ5OiIqIn0sZGVwZW5kZW5jaWVzOnt9fX0se31dLDI6W2Z1bmN0aW9uKEEsZSl7ZS5leHBvcnRzPXt2ZXJzaW9uOkEoIi4uL3BhY2thZ2UuanNvbiIpLnZlcnNpb24sQUFCQjpBKCIuL2NvbGxpc2lvbi9BQUJCIiksQXJyYXlDb2xsaXNpb25NYXRyaXg6QSgiLi9jb2xsaXNpb24vQXJyYXlDb2xsaXNpb25NYXRyaXgiKSxCb2R5OkEoIi4vb2JqZWN0cy9Cb2R5IiksQm94OkEoIi4vc2hhcGVzL0JveCIpLEJyb2FkcGhhc2U6QSgiLi9jb2xsaXNpb24vQnJvYWRwaGFzZSIpLENvbnN0cmFpbnQ6QSgiLi9jb25zdHJhaW50cy9Db25zdHJhaW50IiksQ29udGFjdEVxdWF0aW9uOkEoIi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiIpLE5hcnJvd3BoYXNlOkEoIi4vd29ybGQvTmFycm93cGhhc2UiKSxDb25lVHdpc3RDb25zdHJhaW50OkEoIi4vY29uc3RyYWludHMvQ29uZVR3aXN0Q29uc3RyYWludCIpLENvbnRhY3RNYXRlcmlhbDpBKCIuL21hdGVyaWFsL0NvbnRhY3RNYXRlcmlhbCIpLENvbnZleFBvbHloZWRyb246QSgiLi9zaGFwZXMvQ29udmV4UG9seWhlZHJvbiIpLEN5bGluZGVyOkEoIi4vc2hhcGVzL0N5bGluZGVyIiksRGlzdGFuY2VDb25zdHJhaW50OkEoIi4vY29uc3RyYWludHMvRGlzdGFuY2VDb25zdHJhaW50IiksRXF1YXRpb246QSgiLi9lcXVhdGlvbnMvRXF1YXRpb24iKSxFdmVudFRhcmdldDpBKCIuL3V0aWxzL0V2ZW50VGFyZ2V0IiksRnJpY3Rpb25FcXVhdGlvbjpBKCIuL2VxdWF0aW9ucy9GcmljdGlvbkVxdWF0aW9uIiksR1NTb2x2ZXI6QSgiLi9zb2x2ZXIvR1NTb2x2ZXIiKSxHcmlkQnJvYWRwaGFzZTpBKCIuL2NvbGxpc2lvbi9HcmlkQnJvYWRwaGFzZSIpLEhlaWdodGZpZWxkOkEoIi4vc2hhcGVzL0hlaWdodGZpZWxkIiksSGluZ2VDb25zdHJhaW50OkEoIi4vY29uc3RyYWludHMvSGluZ2VDb25zdHJhaW50IiksTG9ja0NvbnN0cmFpbnQ6QSgiLi9jb25zdHJhaW50cy9Mb2NrQ29uc3RyYWludCIpLE1hdDM6QSgiLi9tYXRoL01hdDMiKSxNYXRlcmlhbDpBKCIuL21hdGVyaWFsL01hdGVyaWFsIiksTmFpdmVCcm9hZHBoYXNlOkEoIi4vY29sbGlzaW9uL05haXZlQnJvYWRwaGFzZSIpLE9iamVjdENvbGxpc2lvbk1hdHJpeDpBKCIuL2NvbGxpc2lvbi9PYmplY3RDb2xsaXNpb25NYXRyaXgiKSxQb29sOkEoIi4vdXRpbHMvUG9vbCIpLFBhcnRpY2xlOkEoIi4vc2hhcGVzL1BhcnRpY2xlIiksUGxhbmU6QSgiLi9zaGFwZXMvUGxhbmUiKSxQb2ludFRvUG9pbnRDb25zdHJhaW50OkEoIi4vY29uc3RyYWludHMvUG9pbnRUb1BvaW50Q29uc3RyYWludCIpLFF1YXRlcm5pb246QSgiLi9tYXRoL1F1YXRlcm5pb24iKSxSYXk6QSgiLi9jb2xsaXNpb24vUmF5IiksUmF5Y2FzdFZlaGljbGU6QSgiLi9vYmplY3RzL1JheWNhc3RWZWhpY2xlIiksUmF5Y2FzdFJlc3VsdDpBKCIuL2NvbGxpc2lvbi9SYXljYXN0UmVzdWx0IiksUmlnaWRWZWhpY2xlOkEoIi4vb2JqZWN0cy9SaWdpZFZlaGljbGUiKSxSb3RhdGlvbmFsRXF1YXRpb246QSgiLi9lcXVhdGlvbnMvUm90YXRpb25hbEVxdWF0aW9uIiksUm90YXRpb25hbE1vdG9yRXF1YXRpb246QSgiLi9lcXVhdGlvbnMvUm90YXRpb25hbE1vdG9yRXF1YXRpb24iKSxTQVBCcm9hZHBoYXNlOkEoIi4vY29sbGlzaW9uL1NBUEJyb2FkcGhhc2UiKSxTUEhTeXN0ZW06QSgiLi9vYmplY3RzL1NQSFN5c3RlbSIpLFNoYXBlOkEoIi4vc2hhcGVzL1NoYXBlIiksU29sdmVyOkEoIi4vc29sdmVyL1NvbHZlciIpLFNwaGVyZTpBKCIuL3NoYXBlcy9TcGhlcmUiKSxTcGxpdFNvbHZlcjpBKCIuL3NvbHZlci9TcGxpdFNvbHZlciIpLFNwcmluZzpBKCIuL29iamVjdHMvU3ByaW5nIiksVHJpbWVzaDpBKCIuL3NoYXBlcy9UcmltZXNoIiksVmVjMzpBKCIuL21hdGgvVmVjMyIpLFZlYzNQb29sOkEoIi4vdXRpbHMvVmVjM1Bvb2wiKSxXb3JsZDpBKCIuL3dvcmxkL1dvcmxkIil9fSx7Ii4uL3BhY2thZ2UuanNvbiI6MSwiLi9jb2xsaXNpb24vQUFCQiI6MywiLi9jb2xsaXNpb24vQXJyYXlDb2xsaXNpb25NYXRyaXgiOjQsIi4vY29sbGlzaW9uL0Jyb2FkcGhhc2UiOjUsIi4vY29sbGlzaW9uL0dyaWRCcm9hZHBoYXNlIjo2LCIuL2NvbGxpc2lvbi9OYWl2ZUJyb2FkcGhhc2UiOjcsIi4vY29sbGlzaW9uL09iamVjdENvbGxpc2lvbk1hdHJpeCI6OCwiLi9jb2xsaXNpb24vUmF5Ijo5LCIuL2NvbGxpc2lvbi9SYXljYXN0UmVzdWx0IjoxMCwiLi9jb2xsaXNpb24vU0FQQnJvYWRwaGFzZSI6MTEsIi4vY29uc3RyYWludHMvQ29uZVR3aXN0Q29uc3RyYWludCI6MTIsIi4vY29uc3RyYWludHMvQ29uc3RyYWludCI6MTMsIi4vY29uc3RyYWludHMvRGlzdGFuY2VDb25zdHJhaW50IjoxNCwiLi9jb25zdHJhaW50cy9IaW5nZUNvbnN0cmFpbnQiOjE1LCIuL2NvbnN0cmFpbnRzL0xvY2tDb25zdHJhaW50IjoxNiwiLi9jb25zdHJhaW50cy9Qb2ludFRvUG9pbnRDb25zdHJhaW50IjoxNywiLi9lcXVhdGlvbnMvQ29udGFjdEVxdWF0aW9uIjoxOSwiLi9lcXVhdGlvbnMvRXF1YXRpb24iOjIwLCIuL2VxdWF0aW9ucy9GcmljdGlvbkVxdWF0aW9uIjoyMSwiLi9lcXVhdGlvbnMvUm90YXRpb25hbEVxdWF0aW9uIjoyMiwiLi9lcXVhdGlvbnMvUm90YXRpb25hbE1vdG9yRXF1YXRpb24iOjIzLCIuL21hdGVyaWFsL0NvbnRhY3RNYXRlcmlhbCI6MjQsIi4vbWF0ZXJpYWwvTWF0ZXJpYWwiOjI1LCIuL21hdGgvTWF0MyI6MjcsIi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi9tYXRoL1ZlYzMiOjMwLCIuL29iamVjdHMvQm9keSI6MzEsIi4vb2JqZWN0cy9SYXljYXN0VmVoaWNsZSI6MzIsIi4vb2JqZWN0cy9SaWdpZFZlaGljbGUiOjMzLCIuL29iamVjdHMvU1BIU3lzdGVtIjozNCwiLi9vYmplY3RzL1NwcmluZyI6MzUsIi4vc2hhcGVzL0JveCI6MzcsIi4vc2hhcGVzL0NvbnZleFBvbHloZWRyb24iOjM4LCIuL3NoYXBlcy9DeWxpbmRlciI6MzksIi4vc2hhcGVzL0hlaWdodGZpZWxkIjo0MCwiLi9zaGFwZXMvUGFydGljbGUiOjQxLCIuL3NoYXBlcy9QbGFuZSI6NDIsIi4vc2hhcGVzL1NoYXBlIjo0MywiLi9zaGFwZXMvU3BoZXJlIjo0NCwiLi9zaGFwZXMvVHJpbWVzaCI6NDUsIi4vc29sdmVyL0dTU29sdmVyIjo0NiwiLi9zb2x2ZXIvU29sdmVyIjo0NywiLi9zb2x2ZXIvU3BsaXRTb2x2ZXIiOjQ4LCIuL3V0aWxzL0V2ZW50VGFyZ2V0Ijo0OSwiLi91dGlscy9Qb29sIjo1MSwiLi91dGlscy9WZWMzUG9vbCI6NTQsIi4vd29ybGQvTmFycm93cGhhc2UiOjU1LCIuL3dvcmxkL1dvcmxkIjo1Nn1dLDM6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXtBPUF8fHt9LHRoaXMubG93ZXJCb3VuZD1uZXcgbixBLmxvd2VyQm91bmQmJnRoaXMubG93ZXJCb3VuZC5jb3B5KEEubG93ZXJCb3VuZCksdGhpcy51cHBlckJvdW5kPW5ldyBuLEEudXBwZXJCb3VuZCYmdGhpcy51cHBlckJvdW5kLmNvcHkoQS51cHBlckJvdW5kKX12YXIgbj1BKCIuLi9tYXRoL1ZlYzMiKTtBKCIuLi91dGlscy9VdGlscyIpLGUuZXhwb3J0cz10O3ZhciBpPW5ldyBuO3QucHJvdG90eXBlLnNldEZyb21Qb2ludHM9ZnVuY3Rpb24oQSxlLHQsbil7dmFyIHI9dGhpcy5sb3dlckJvdW5kLG89dGhpcy51cHBlckJvdW5kLHM9dDtyLmNvcHkoQVswXSkscyYmcy52bXVsdChyLHIpLG8uY29weShyKTtmb3IodmFyIGE9MTthPEEubGVuZ3RoO2ErKyl7dmFyIEI9QVthXTtzJiYocy52bXVsdChCLGkpLEI9aSksQi54Pm8ueCYmKG8ueD1CLngpLEIueDxyLngmJihyLng9Qi54KSxCLnk+by55JiYoby55PUIueSksQi55PHIueSYmKHIueT1CLnkpLEIuej5vLnomJihvLno9Qi56KSxCLno8ci56JiYoci56PUIueil9cmV0dXJuIGUmJihlLnZhZGQocixyKSxlLnZhZGQobyxvKSksbiYmKHIueC09bixyLnktPW4sci56LT1uLG8ueCs9bixvLnkrPW4sby56Kz1uKSx0aGlzfSx0LnByb3RvdHlwZS5jb3B5PWZ1bmN0aW9uKEEpe3JldHVybiB0aGlzLmxvd2VyQm91bmQuY29weShBLmxvd2VyQm91bmQpLHRoaXMudXBwZXJCb3VuZC5jb3B5KEEudXBwZXJCb3VuZCksdGhpc30sdC5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4obmV3IHQpLmNvcHkodGhpcyl9LHQucHJvdG90eXBlLmV4dGVuZD1mdW5jdGlvbihBKXt2YXIgZT1BLmxvd2VyQm91bmQueDt0aGlzLmxvd2VyQm91bmQueD5lJiYodGhpcy5sb3dlckJvdW5kLng9ZSk7dmFyIHQ9QS51cHBlckJvdW5kLng7dGhpcy51cHBlckJvdW5kLng8dCYmKHRoaXMudXBwZXJCb3VuZC54PXQpLGU9QS5sb3dlckJvdW5kLnksdGhpcy5sb3dlckJvdW5kLnk+ZSYmKHRoaXMubG93ZXJCb3VuZC55PWUpLHQ9QS51cHBlckJvdW5kLnksdGhpcy51cHBlckJvdW5kLnk8dCYmKHRoaXMudXBwZXJCb3VuZC55PXQpLGU9QS5sb3dlckJvdW5kLnosdGhpcy5sb3dlckJvdW5kLno+ZSYmKHRoaXMubG93ZXJCb3VuZC56PWUpLHQ9QS51cHBlckJvdW5kLnosdGhpcy51cHBlckJvdW5kLno8dCYmKHRoaXMudXBwZXJCb3VuZC56PXQpfSx0LnByb3RvdHlwZS5vdmVybGFwcz1mdW5jdGlvbihBKXt2YXIgZT10aGlzLmxvd2VyQm91bmQsdD10aGlzLnVwcGVyQm91bmQsbj1BLmxvd2VyQm91bmQsaT1BLnVwcGVyQm91bmQ7cmV0dXJuKG4ueDw9dC54JiZ0Lng8PWkueHx8ZS54PD1pLngmJmkueDw9dC54KSYmKG4ueTw9dC55JiZ0Lnk8PWkueXx8ZS55PD1pLnkmJmkueTw9dC55KSYmKG4uejw9dC56JiZ0Lno8PWkuenx8ZS56PD1pLnomJmkuejw9dC56KX0sdC5wcm90b3R5cGUuY29udGFpbnM9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5sb3dlckJvdW5kLHQ9dGhpcy51cHBlckJvdW5kLG49QS5sb3dlckJvdW5kLGk9QS51cHBlckJvdW5kO3JldHVybiBlLng8PW4ueCYmdC54Pj1pLngmJmUueTw9bi55JiZ0Lnk+PWkueSYmZS56PD1uLnomJnQuej49aS56fSx0LnByb3RvdHlwZS5nZXRDb3JuZXJzPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8scyl7dmFyIGE9dGhpcy5sb3dlckJvdW5kLEI9dGhpcy51cHBlckJvdW5kO0EuY29weShhKSxlLnNldChCLngsYS55LGEueiksdC5zZXQoQi54LEIueSxhLnopLG4uc2V0KGEueCxCLnksQi56KSxpLnNldChCLngsYS55LGEueiksci5zZXQoYS54LEIueSxhLnopLG8uc2V0KGEueCxhLnksQi56KSxzLmNvcHkoQil9O3ZhciByPVtuZXcgbixuZXcgbixuZXcgbixuZXcgbixuZXcgbixuZXcgbixuZXcgbixuZXcgbl07dC5wcm90b3R5cGUudG9Mb2NhbEZyYW1lPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9cixuPXRbMF0saT10WzFdLG89dFsyXSxzPXRbM10sYT10WzRdLEI9dFs1XSxjPXRbNl0sZz10WzddO3RoaXMuZ2V0Q29ybmVycyhuLGksbyxzLGEsQixjLGcpO2Zvcih2YXIgRT0wOzghPT1FO0UrKyl7dmFyIFE9dFtFXTtBLnBvaW50VG9Mb2NhbChRLFEpfXJldHVybiBlLnNldEZyb21Qb2ludHModCl9LHQucHJvdG90eXBlLnRvV29ybGRGcmFtZT1mdW5jdGlvbihBLGUpe3ZhciB0PXIsbj10WzBdLGk9dFsxXSxvPXRbMl0scz10WzNdLGE9dFs0XSxCPXRbNV0sYz10WzZdLGc9dFs3XTt0aGlzLmdldENvcm5lcnMobixpLG8scyxhLEIsYyxnKTtmb3IodmFyIEU9MDs4IT09RTtFKyspe3ZhciBRPXRbRV07QS5wb2ludFRvV29ybGQoUSxRKX1yZXR1cm4gZS5zZXRGcm9tUG9pbnRzKHQpfX0seyIuLi9tYXRoL1ZlYzMiOjMwLCIuLi91dGlscy9VdGlscyI6NTN9XSw0OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXt0aGlzLm1hdHJpeD1bXX1lLmV4cG9ydHM9dCx0LnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlKXtpZihBPUEuaW5kZXgsKGU9ZS5pbmRleCk+QSl7dmFyIHQ9ZTtlPUEsQT10fXJldHVybiB0aGlzLm1hdHJpeFsoQSooQSsxKT4+MSkrZS0xXX0sdC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKEEsZSx0KXtpZihBPUEuaW5kZXgsKGU9ZS5pbmRleCk+QSl7dmFyIG49ZTtlPUEsQT1ufXRoaXMubWF0cml4WyhBKihBKzEpPj4xKStlLTFdPXQ/MTowfSx0LnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe2Zvcih2YXIgQT0wLGU9dGhpcy5tYXRyaXgubGVuZ3RoO0EhPT1lO0ErKyl0aGlzLm1hdHJpeFtBXT0wfSx0LnByb3RvdHlwZS5zZXROdW1PYmplY3RzPWZ1bmN0aW9uKEEpe3RoaXMubWF0cml4Lmxlbmd0aD1BKihBLTEpPj4xfX0se31dLDU6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdCgpe3RoaXMud29ybGQ9bnVsbCx0aGlzLnVzZUJvdW5kaW5nQm94ZXM9ITEsdGhpcy5kaXJ0eT0hMH12YXIgbj1BKCIuLi9vYmplY3RzL0JvZHkiKSxpPUEoIi4uL21hdGgvVmVjMyIpLHI9QSgiLi4vbWF0aC9RdWF0ZXJuaW9uIik7QSgiLi4vc2hhcGVzL1NoYXBlIiksQSgiLi4vc2hhcGVzL1BsYW5lIiksZS5leHBvcnRzPXQsdC5wcm90b3R5cGUuY29sbGlzaW9uUGFpcnM9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoImNvbGxpc2lvblBhaXJzIG5vdCBpbXBsZW1lbnRlZCBmb3IgdGhpcyBCcm9hZFBoYXNlIGNsYXNzISIpfTt2YXIgbz1uLlNUQVRJQ3xuLktJTkVNQVRJQzt0LnByb3RvdHlwZS5uZWVkQnJvYWRwaGFzZUNvbGxpc2lvbj1mdW5jdGlvbihBLGUpe3JldHVybiAwIT0oQS5jb2xsaXNpb25GaWx0ZXJHcm91cCZlLmNvbGxpc2lvbkZpbHRlck1hc2spJiYwIT0oZS5jb2xsaXNpb25GaWx0ZXJHcm91cCZBLmNvbGxpc2lvbkZpbHRlck1hc2spJiYoMD09KEEudHlwZSZvKSYmQS5zbGVlcFN0YXRlIT09bi5TTEVFUElOR3x8MD09KGUudHlwZSZvKSYmZS5zbGVlcFN0YXRlIT09bi5TTEVFUElORyl9LHQucHJvdG90eXBlLmludGVyc2VjdGlvblRlc3Q9ZnVuY3Rpb24oQSxlLHQsbil7dGhpcy51c2VCb3VuZGluZ0JveGVzP3RoaXMuZG9Cb3VuZGluZ0JveEJyb2FkcGhhc2UoQSxlLHQsbik6dGhpcy5kb0JvdW5kaW5nU3BoZXJlQnJvYWRwaGFzZShBLGUsdCxuKX07dmFyIHM9bmV3IGk7bmV3IGksbmV3IHIsbmV3IGksdC5wcm90b3R5cGUuZG9Cb3VuZGluZ1NwaGVyZUJyb2FkcGhhc2U9ZnVuY3Rpb24oQSxlLHQsbil7dmFyIGk9cztlLnBvc2l0aW9uLnZzdWIoQS5wb3NpdGlvbixpKSxNYXRoLnBvdyhBLmJvdW5kaW5nUmFkaXVzK2UuYm91bmRpbmdSYWRpdXMsMik+aS5ub3JtMigpJiYodC5wdXNoKEEpLG4ucHVzaChlKSl9LHQucHJvdG90eXBlLmRvQm91bmRpbmdCb3hCcm9hZHBoYXNlPWZ1bmN0aW9uKEEsZSx0LG4pe0EuYWFiYk5lZWRzVXBkYXRlJiZBLmNvbXB1dGVBQUJCKCksZS5hYWJiTmVlZHNVcGRhdGUmJmUuY29tcHV0ZUFBQkIoKSxBLmFhYmIub3ZlcmxhcHMoZS5hYWJiKSYmKHQucHVzaChBKSxuLnB1c2goZSkpfTt2YXIgYT17a2V5czpbXX0sQj1bXSxjPVtdO3QucHJvdG90eXBlLm1ha2VQYWlyc1VuaXF1ZT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD1hLG49QixpPWMscj1BLmxlbmd0aCxvPTA7byE9PXI7bysrKW5bb109QVtvXSxpW29dPWVbb107Zm9yKEEubGVuZ3RoPTAsZS5sZW5ndGg9MCxvPTA7byE9PXI7bysrKXt2YXIgcz1uW29dLmlkLGc9aVtvXS5pZDt0W0U9Zz5zP3MrIiwiK2c6ZysiLCIrc109byx0LmtleXMucHVzaChFKX1mb3Iobz0wO28hPT10LmtleXMubGVuZ3RoO28rKyl7dmFyIEU9dC5rZXlzLnBvcCgpLFE9dFtFXTtBLnB1c2gobltRXSksZS5wdXNoKGlbUV0pLGRlbGV0ZSB0W0VdfX0sdC5wcm90b3R5cGUuc2V0V29ybGQ9ZnVuY3Rpb24oKXt9O3ZhciBnPW5ldyBpO3QuYm91bmRpbmdTcGhlcmVDaGVjaz1mdW5jdGlvbihBLGUpe3ZhciB0PWc7cmV0dXJuIEEucG9zaXRpb24udnN1YihlLnBvc2l0aW9uLHQpLE1hdGgucG93KEEuc2hhcGUuYm91bmRpbmdTcGhlcmVSYWRpdXMrZS5zaGFwZS5ib3VuZGluZ1NwaGVyZVJhZGl1cywyKT50Lm5vcm0yKCl9LHQucHJvdG90eXBlLmFhYmJRdWVyeT1mdW5jdGlvbigpe3JldHVybiBjb25zb2xlLndhcm4oIi5hYWJiUXVlcnkgaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgQnJvYWRwaGFzZSBzdWJjbGFzcy4iKSxbXX19LHsiLi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi4vbWF0aC9WZWMzIjozMCwiLi4vb2JqZWN0cy9Cb2R5IjozMSwiLi4vc2hhcGVzL1BsYW5lIjo0MiwiLi4vc2hhcGVzL1NoYXBlIjo0M31dLDY6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUsdCxyLG8pe24uYXBwbHkodGhpcyksdGhpcy5ueD10fHwxMCx0aGlzLm55PXJ8fDEwLHRoaXMubno9b3x8MTAsdGhpcy5hYWJiTWluPUF8fG5ldyBpKDEwMCwxMDAsMTAwKSx0aGlzLmFhYmJNYXg9ZXx8bmV3IGkoLTEwMCwtMTAwLC0xMDApO3ZhciBzPXRoaXMubngqdGhpcy5ueSp0aGlzLm56O2lmKDA+PXMpdGhyb3ciR3JpZEJyb2FkcGhhc2U6IEVhY2ggZGltZW5zaW9uJ3MgbiBtdXN0IGJlID4wIjt0aGlzLmJpbnM9W10sdGhpcy5iaW5MZW5ndGhzPVtdLHRoaXMuYmlucy5sZW5ndGg9cyx0aGlzLmJpbkxlbmd0aHMubGVuZ3RoPXM7Zm9yKHZhciBhPTA7cz5hO2ErKyl0aGlzLmJpbnNbYV09W10sdGhpcy5iaW5MZW5ndGhzW2FdPTB9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi9Ccm9hZHBoYXNlIiksaT1BKCIuLi9tYXRoL1ZlYzMiKSxyPUEoIi4uL3NoYXBlcy9TaGFwZSIpO3QucHJvdG90eXBlPW5ldyBuLHQucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQ7dmFyIG89bmV3IGk7bmV3IGksdC5wcm90b3R5cGUuY29sbGlzaW9uUGFpcnM9ZnVuY3Rpb24oQSxlLHQpe2Z1bmN0aW9uIG4oQSxlLHQsbixpLHIsbyl7dmFyIHM9KEEtSSkqcHwwLGE9KGUtTSkqbXwwLEI9KHQtZCkqRnwwLGg9Yigobi1JKSpwKSx3PWIoKGktTSkqbSksQz1iKChyLWQpKkYpOzA+cz9zPTA6cz49YyYmKHM9Yy0xKSwwPmE/YT0wOmE+PWcmJihhPWctMSksMD5CP0I9MDpCPj1FJiYoQj1FLTEpLDA+aD9oPTA6aD49YyYmKGg9Yy0xKSwwPnc/dz0wOnc+PWcmJih3PWctMSksMD5DP0M9MDpDPj1FJiYoQz1FLTEpLGEqPXUsQio9bCxoKj1RLHcqPXUsQyo9bDtmb3IodmFyIEQ9cyo9UTtoPj1EO0QrPVEpZm9yKHZhciBZPWE7dz49WTtZKz11KWZvcih2YXIgZj1CO0M+PWY7Zis9bCl7dmFyIE49RCtZK2Y7eFtOXVtSW05dKytdPW99fWZvcih2YXIgaT1BLm51bU9iamVjdHMoKSxzPUEuYm9kaWVzLGE9dGhpcy5hYWJiTWF4LEI9dGhpcy5hYWJiTWluLGM9dGhpcy5ueCxnPXRoaXMubnksRT10aGlzLm56LFE9ZypFLHU9RSxsPTEsaD1hLngsdz1hLnksQz1hLnosST1CLngsTT1CLnksZD1CLnoscD1jLyhoLUkpLG09Zy8ody1NKSxGPUUvKEMtZCksRD0oaC1JKS9jLFk9KHctTSkvZyxmPShDLWQpL0UsTj0uNSpNYXRoLnNxcnQoRCpEK1kqWStmKmYpLFU9ci50eXBlcyx5PVUuU1BIRVJFLFQ9VS5QTEFORSx4PShVLkJPWCxVLkNPTVBPVU5ELFUuQ09OVkVYUE9MWUhFRFJPTix0aGlzLmJpbnMpLFI9dGhpcy5iaW5MZW5ndGhzLEc9dGhpcy5iaW5zLmxlbmd0aCxTPTA7UyE9PUc7UysrKVJbU109MDt2YXIgYj1NYXRoLmNlaWw7Zm9yKEI9TWF0aC5taW4sYT1NYXRoLm1heCxTPTA7UyE9PWk7UysrKXt2YXIgSD0odEE9c1tTXSkuc2hhcGU7c3dpdGNoKEgudHlwZSl7Y2FzZSB5OnZhciB2PXRBLnBvc2l0aW9uLngsaz10QS5wb3NpdGlvbi55LGo9dEEucG9zaXRpb24ueixKPUgucmFkaXVzO24odi1KLGstSixqLUosditKLGsrSixqK0osdEEpO2JyZWFrO2Nhc2UgVDpILndvcmxkTm9ybWFsTmVlZHNVcGRhdGUmJkguY29tcHV0ZVdvcmxkTm9ybWFsKHRBLnF1YXRlcm5pb24pO3ZhciB6PUgud29ybGROb3JtYWwsTD1JKy41KkQtdEEucG9zaXRpb24ueCxQPU0rLjUqWS10QS5wb3NpdGlvbi55LE89ZCsuNSpmLXRBLnBvc2l0aW9uLnosVj1vO1Yuc2V0KEwsUCxPKTtmb3IodmFyIFc9MCxLPTA7VyE9PWM7VysrLEsrPVEsVi55PVAsVi54Kz1EKWZvcih2YXIgWD0wLFo9MDtYIT09ZztYKyssWis9dSxWLno9TyxWLnkrPVkpZm9yKHZhciBfPTAscT0wO18hPT1FO18rKyxxKz1sLFYueis9ZilpZihWLmRvdCh6KTxOKXt2YXIgJD1LK1orcTt4WyRdW1JbJF0rK109dEF9YnJlYWs7ZGVmYXVsdDp0QS5hYWJiTmVlZHNVcGRhdGUmJnRBLmNvbXB1dGVBQUJCKCksbih0QS5hYWJiLmxvd2VyQm91bmQueCx0QS5hYWJiLmxvd2VyQm91bmQueSx0QS5hYWJiLmxvd2VyQm91bmQueix0QS5hYWJiLnVwcGVyQm91bmQueCx0QS5hYWJiLnVwcGVyQm91bmQueSx0QS5hYWJiLnVwcGVyQm91bmQueix0QSl9fWZvcihTPTA7UyE9PUc7UysrKXt2YXIgQUE9UltTXTtpZihBQT4xKXt2YXIgZUE9eFtTXTtmb3IoVz0wO1chPT1BQTtXKyspe3ZhciB0QT1lQVtXXTtmb3IoWD0wO1ghPT1XO1grKyl7dmFyIG5BPWVBW1hdO3RoaXMubmVlZEJyb2FkcGhhc2VDb2xsaXNpb24odEEsbkEpJiZ0aGlzLmludGVyc2VjdGlvblRlc3QodEEsbkEsZSx0KX19fX10aGlzLm1ha2VQYWlyc1VuaXF1ZShlLHQpfX0seyIuLi9tYXRoL1ZlYzMiOjMwLCIuLi9zaGFwZXMvU2hhcGUiOjQzLCIuL0Jyb2FkcGhhc2UiOjV9XSw3OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXtuLmFwcGx5KHRoaXMpfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vQnJvYWRwaGFzZSIpLGk9QSgiLi9BQUJCIik7dC5wcm90b3R5cGU9bmV3IG4sdC5wcm90b3R5cGUuY29uc3RydWN0b3I9dCx0LnByb3RvdHlwZS5jb2xsaXNpb25QYWlycz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saSxyLG8scz1BLmJvZGllcyxhPXMubGVuZ3RoO2ZvcihuPTA7biE9PWE7bisrKWZvcihpPTA7aSE9PW47aSsrKXI9c1tuXSxvPXNbaV0sdGhpcy5uZWVkQnJvYWRwaGFzZUNvbGxpc2lvbihyLG8pJiZ0aGlzLmludGVyc2VjdGlvblRlc3QocixvLGUsdCl9LG5ldyBpLHQucHJvdG90eXBlLmFhYmJRdWVyeT1mdW5jdGlvbihBLGUsdCl7dD10fHxbXTtmb3IodmFyIG49MDtuPEEuYm9kaWVzLmxlbmd0aDtuKyspe3ZhciBpPUEuYm9kaWVzW25dO2kuYWFiYk5lZWRzVXBkYXRlJiZpLmNvbXB1dGVBQUJCKCksaS5hYWJiLm92ZXJsYXBzKGUpJiZ0LnB1c2goaSl9cmV0dXJuIHR9fSx7Ii4vQUFCQiI6MywiLi9Ccm9hZHBoYXNlIjo1fV0sODpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7dGhpcy5tYXRyaXg9e319ZS5leHBvcnRzPXQsdC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKEEsZSl7aWYoQT1BLmlkLChlPWUuaWQpPkEpe3ZhciB0PWU7ZT1BLEE9dH1yZXR1cm4gQSsiLSIrZSBpbiB0aGlzLm1hdHJpeH0sdC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKEEsZSx0KXtpZihBPUEuaWQsKGU9ZS5pZCk+QSl7dmFyIG49ZTtlPUEsQT1ufXQ/dGhpcy5tYXRyaXhbQSsiLSIrZV09ITA6ZGVsZXRlIHRoaXMubWF0cml4W0ErIi0iK2VdfSx0LnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMubWF0cml4PXt9fSx0LnByb3RvdHlwZS5zZXROdW1PYmplY3RzPWZ1bmN0aW9uKCl7fX0se31dLDk6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUpe3RoaXMuZnJvbT1BP0EuY2xvbmUoKTpuZXcgaSx0aGlzLnRvPWU/ZS5jbG9uZSgpOm5ldyBpLHRoaXMuX2RpcmVjdGlvbj1uZXcgaSx0aGlzLnByZWNpc2lvbj0xZS00LHRoaXMuY2hlY2tDb2xsaXNpb25SZXNwb25zZT0hMCx0aGlzLnNraXBCYWNrZmFjZXM9ITEsdGhpcy5jb2xsaXNpb25GaWx0ZXJNYXNrPS0xLHRoaXMuY29sbGlzaW9uRmlsdGVyR3JvdXA9LTEsdGhpcy5tb2RlPXQuQU5ZLHRoaXMucmVzdWx0PW5ldyBzLHRoaXMuaGFzSGl0PSExLHRoaXMuY2FsbGJhY2s9ZnVuY3Rpb24oKXt9fWZ1bmN0aW9uIG4oQSxlLHQsbil7bi52c3ViKGUsUiksdC52c3ViKGUsRSksQS52c3ViKGUsUSk7dmFyIGkscixvPVIuZG90KFIpLHM9Ui5kb3QoRSksYT1SLmRvdChRKSxCPUUuZG90KEUpLGM9RS5kb3QoUSk7cmV0dXJuKGk9QiphLXMqYyk+PTAmJihyPW8qYy1zKmEpPj0wJiZvKkItcypzPmkrcn1lLmV4cG9ydHM9dDt2YXIgaT1BKCIuLi9tYXRoL1ZlYzMiKSxyPUEoIi4uL21hdGgvUXVhdGVybmlvbiIpLG89QSgiLi4vbWF0aC9UcmFuc2Zvcm0iKSxzPShBKCIuLi9zaGFwZXMvQ29udmV4UG9seWhlZHJvbiIpLEEoIi4uL3NoYXBlcy9Cb3giKSxBKCIuLi9jb2xsaXNpb24vUmF5Y2FzdFJlc3VsdCIpKSxhPUEoIi4uL3NoYXBlcy9TaGFwZSIpLEI9QSgiLi4vY29sbGlzaW9uL0FBQkIiKTt0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10LHQuQ0xPU0VTVD0xLHQuQU5ZPTIsdC5BTEw9NDt2YXIgYz1uZXcgQixnPVtdO3QucHJvdG90eXBlLmludGVyc2VjdFdvcmxkPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIHRoaXMubW9kZT1lLm1vZGV8fHQuQU5ZLHRoaXMucmVzdWx0PWUucmVzdWx0fHxuZXcgcyx0aGlzLnNraXBCYWNrZmFjZXM9ISFlLnNraXBCYWNrZmFjZXMsdGhpcy5jb2xsaXNpb25GaWx0ZXJNYXNrPXZvaWQgMCE9PWUuY29sbGlzaW9uRmlsdGVyTWFzaz9lLmNvbGxpc2lvbkZpbHRlck1hc2s6LTEsdGhpcy5jb2xsaXNpb25GaWx0ZXJHcm91cD12b2lkIDAhPT1lLmNvbGxpc2lvbkZpbHRlckdyb3VwP2UuY29sbGlzaW9uRmlsdGVyR3JvdXA6LTEsZS5mcm9tJiZ0aGlzLmZyb20uY29weShlLmZyb20pLGUudG8mJnRoaXMudG8uY29weShlLnRvKSx0aGlzLmNhbGxiYWNrPWUuY2FsbGJhY2t8fGZ1bmN0aW9uKCl7fSx0aGlzLmhhc0hpdD0hMSx0aGlzLnJlc3VsdC5yZXNldCgpLHRoaXMuX3VwZGF0ZURpcmVjdGlvbigpLHRoaXMuZ2V0QUFCQihjKSxnLmxlbmd0aD0wLEEuYnJvYWRwaGFzZS5hYWJiUXVlcnkoQSxjLGcpLHRoaXMuaW50ZXJzZWN0Qm9kaWVzKGcpLHRoaXMuaGFzSGl0fTt2YXIgRT1uZXcgaSxRPW5ldyBpO3QucG9pbnRJblRyaWFuZ2xlPW47dmFyIHU9bmV3IGksbD1uZXcgcjt0LnByb3RvdHlwZS5pbnRlcnNlY3RCb2R5PWZ1bmN0aW9uKEEsZSl7ZSYmKHRoaXMucmVzdWx0PWUsdGhpcy5fdXBkYXRlRGlyZWN0aW9uKCkpO3ZhciB0PXRoaXMuY2hlY2tDb2xsaXNpb25SZXNwb25zZTtpZigoIXR8fEEuY29sbGlzaW9uUmVzcG9uc2UpJiYwIT0odGhpcy5jb2xsaXNpb25GaWx0ZXJHcm91cCZBLmNvbGxpc2lvbkZpbHRlck1hc2spJiYwIT0oQS5jb2xsaXNpb25GaWx0ZXJHcm91cCZ0aGlzLmNvbGxpc2lvbkZpbHRlck1hc2spKWZvcih2YXIgbj11LGk9bCxyPTAsbz1BLnNoYXBlcy5sZW5ndGg7bz5yO3IrKyl7dmFyIHM9QS5zaGFwZXNbcl07aWYoKCF0fHxzLmNvbGxpc2lvblJlc3BvbnNlKSYmKEEucXVhdGVybmlvbi5tdWx0KEEuc2hhcGVPcmllbnRhdGlvbnNbcl0saSksQS5xdWF0ZXJuaW9uLnZtdWx0KEEuc2hhcGVPZmZzZXRzW3JdLG4pLG4udmFkZChBLnBvc2l0aW9uLG4pLHRoaXMuaW50ZXJzZWN0U2hhcGUocyxpLG4sQSksdGhpcy5yZXN1bHQuX3Nob3VsZFN0b3ApKWJyZWFrfX0sdC5wcm90b3R5cGUuaW50ZXJzZWN0Qm9kaWVzPWZ1bmN0aW9uKEEsZSl7ZSYmKHRoaXMucmVzdWx0PWUsdGhpcy5fdXBkYXRlRGlyZWN0aW9uKCkpO2Zvcih2YXIgdD0wLG49QS5sZW5ndGg7IXRoaXMucmVzdWx0Ll9zaG91bGRTdG9wJiZuPnQ7dCsrKXRoaXMuaW50ZXJzZWN0Qm9keShBW3RdKX0sdC5wcm90b3R5cGUuX3VwZGF0ZURpcmVjdGlvbj1mdW5jdGlvbigpe3RoaXMudG8udnN1Yih0aGlzLmZyb20sdGhpcy5fZGlyZWN0aW9uKSx0aGlzLl9kaXJlY3Rpb24ubm9ybWFsaXplKCl9LHQucHJvdG90eXBlLmludGVyc2VjdFNoYXBlPWZ1bmN0aW9uKEEsZSx0LG4pe2lmKCEoZnVuY3Rpb24oQSxlLHQpe3QudnN1YihBLFIpO3ZhciBuPVIuZG90KGUpO3JldHVybiBlLm11bHQobixHKSxHLnZhZGQoQSxHKSx0LmRpc3RhbmNlVG8oRyl9KHRoaXMuZnJvbSx0aGlzLl9kaXJlY3Rpb24sdCk+QS5ib3VuZGluZ1NwaGVyZVJhZGl1cykpe3ZhciBpPXRoaXNbQS50eXBlXTtpJiZpLmNhbGwodGhpcyxBLGUsdCxuKX19O3ZhciBoPShuZXcgaSxuZXcgaSxuZXcgaSksdz1uZXcgaSxDPW5ldyBpLEk9bmV3IGk7bmV3IGksbmV3IHMsdC5wcm90b3R5cGUuaW50ZXJzZWN0Qm94PWZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiB0aGlzLmludGVyc2VjdENvbnZleChBLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbixlLHQsbil9LHQucHJvdG90eXBlW2EudHlwZXMuQk9YXT10LnByb3RvdHlwZS5pbnRlcnNlY3RCb3gsdC5wcm90b3R5cGUuaW50ZXJzZWN0UGxhbmU9ZnVuY3Rpb24oQSxlLHQsbil7dmFyIHI9dGhpcy5mcm9tLG89dGhpcy50byxzPXRoaXMuX2RpcmVjdGlvbixhPW5ldyBpKDAsMCwxKTtlLnZtdWx0KGEsYSk7dmFyIEI9bmV3IGk7ci52c3ViKHQsQik7dmFyIGM9Qi5kb3QoYSk7aWYoby52c3ViKHQsQiksIShjKkIuZG90KGEpPjB8fHIuZGlzdGFuY2VUbyhvKTxjKSl7dmFyIGc9YS5kb3Qocyk7aWYoIShNYXRoLmFicyhnKTx0aGlzLnByZWNpc2lvbikpe3ZhciBFPW5ldyBpLFE9bmV3IGksdT1uZXcgaTtyLnZzdWIodCxFKTt2YXIgbD0tYS5kb3QoRSkvZztzLnNjYWxlKGwsUSksci52YWRkKFEsdSksdGhpcy5yZXBvcnRJbnRlcnNlY3Rpb24oYSx1LEEsbiwtMSl9fX0sdC5wcm90b3R5cGVbYS50eXBlcy5QTEFORV09dC5wcm90b3R5cGUuaW50ZXJzZWN0UGxhbmUsdC5wcm90b3R5cGUuZ2V0QUFCQj1mdW5jdGlvbihBKXt2YXIgZT10aGlzLnRvLHQ9dGhpcy5mcm9tO0EubG93ZXJCb3VuZC54PU1hdGgubWluKGUueCx0LngpLEEubG93ZXJCb3VuZC55PU1hdGgubWluKGUueSx0LnkpLEEubG93ZXJCb3VuZC56PU1hdGgubWluKGUueix0LnopLEEudXBwZXJCb3VuZC54PU1hdGgubWF4KGUueCx0LngpLEEudXBwZXJCb3VuZC55PU1hdGgubWF4KGUueSx0LnkpLEEudXBwZXJCb3VuZC56PU1hdGgubWF4KGUueix0LnopfTt2YXIgTT17ZmFjZUxpc3Q6WzBdfTt0LnByb3RvdHlwZS5pbnRlcnNlY3RIZWlnaHRmaWVsZD1mdW5jdGlvbihBLGUsbixyKXt2YXIgcz0oQS5kYXRhLEEuZWxlbWVudFNpemUsbmV3IGkpLGE9bmV3IHQodGhpcy5mcm9tLHRoaXMudG8pO28ucG9pbnRUb0xvY2FsRnJhbWUobixlLGEuZnJvbSxhLmZyb20pLG8ucG9pbnRUb0xvY2FsRnJhbWUobixlLGEudG8sYS50byk7dmFyIEI9W10sYz1udWxsLGc9bnVsbCxFPW51bGwsUT1udWxsLHU9QS5nZXRJbmRleE9mUG9zaXRpb24oYS5mcm9tLngsYS5mcm9tLnksQiwhMSk7aWYodSYmKGM9QlswXSxnPUJbMV0sRT1CWzBdLFE9QlsxXSksKHU9QS5nZXRJbmRleE9mUG9zaXRpb24oYS50by54LGEudG8ueSxCLCExKSkmJigobnVsbD09PWN8fEJbMF08YykmJihjPUJbMF0pLChudWxsPT09RXx8QlswXT5FKSYmKEU9QlswXSksKG51bGw9PT1nfHxCWzFdPGcpJiYoZz1CWzFdKSwobnVsbD09PVF8fEJbMV0+USkmJihRPUJbMV0pKSxudWxsIT09Yyl7dmFyIGw9W107QS5nZXRSZWN0TWluTWF4KGMsZyxFLFEsbCk7Zm9yKHZhciBoPWM7RT49aDtoKyspZm9yKHZhciB3PWc7UT49dzt3Kyspe2lmKHRoaXMucmVzdWx0Ll9zaG91bGRTdG9wKXJldHVybjtpZihBLmdldENvbnZleFRyaWFuZ2xlUGlsbGFyKGgsdywhMSksby5wb2ludFRvV29ybGRGcmFtZShuLGUsQS5waWxsYXJPZmZzZXQscyksdGhpcy5pbnRlcnNlY3RDb252ZXgoQS5waWxsYXJDb252ZXgsZSxzLHIsTSksdGhpcy5yZXN1bHQuX3Nob3VsZFN0b3ApcmV0dXJuO0EuZ2V0Q29udmV4VHJpYW5nbGVQaWxsYXIoaCx3LCEwKSxvLnBvaW50VG9Xb3JsZEZyYW1lKG4sZSxBLnBpbGxhck9mZnNldCxzKSx0aGlzLmludGVyc2VjdENvbnZleChBLnBpbGxhckNvbnZleCxlLHMscixNKX19fSx0LnByb3RvdHlwZVthLnR5cGVzLkhFSUdIVEZJRUxEXT10LnByb3RvdHlwZS5pbnRlcnNlY3RIZWlnaHRmaWVsZDt2YXIgZD1uZXcgaSxwPW5ldyBpO3QucHJvdG90eXBlLmludGVyc2VjdFNwaGVyZT1mdW5jdGlvbihBLGUsdCxuKXt2YXIgaT10aGlzLmZyb20scj10aGlzLnRvLG89QS5yYWRpdXMscz1NYXRoLnBvdyhyLngtaS54LDIpK01hdGgucG93KHIueS1pLnksMikrTWF0aC5wb3coci56LWkueiwyKSxhPTIqKChyLngtaS54KSooaS54LXQueCkrKHIueS1pLnkpKihpLnktdC55KSsoci56LWkueikqKGkuei10LnopKSxCPU1hdGgucG93KGkueC10LngsMikrTWF0aC5wb3coaS55LXQueSwyKStNYXRoLnBvdyhpLnotdC56LDIpLU1hdGgucG93KG8sMiksYz1NYXRoLnBvdyhhLDIpLTQqcypCLGc9ZCxFPXA7aWYoISgwPmMpKWlmKDA9PT1jKWkubGVycChyLGMsZyksZy52c3ViKHQsRSksRS5ub3JtYWxpemUoKSx0aGlzLnJlcG9ydEludGVyc2VjdGlvbihFLGcsQSxuLC0xKTtlbHNle3ZhciBRPSgtYS1NYXRoLnNxcnQoYykpLygyKnMpLHU9KC1hK01hdGguc3FydChjKSkvKDIqcyk7aWYoUT49MCYmMT49USYmKGkubGVycChyLFEsZyksZy52c3ViKHQsRSksRS5ub3JtYWxpemUoKSx0aGlzLnJlcG9ydEludGVyc2VjdGlvbihFLGcsQSxuLC0xKSksdGhpcy5yZXN1bHQuX3Nob3VsZFN0b3ApcmV0dXJuO3U+PTAmJjE+PXUmJihpLmxlcnAocix1LGcpLGcudnN1Yih0LEUpLEUubm9ybWFsaXplKCksdGhpcy5yZXBvcnRJbnRlcnNlY3Rpb24oRSxnLEEsbiwtMSkpfX0sdC5wcm90b3R5cGVbYS50eXBlcy5TUEhFUkVdPXQucHJvdG90eXBlLmludGVyc2VjdFNwaGVyZTt2YXIgbT1uZXcgaSxGPShuZXcgaSxuZXcgaSxuZXcgaSk7dC5wcm90b3R5cGUuaW50ZXJzZWN0Q29udmV4PWZ1bmN0aW9uKEEsZSx0LGkscil7Zm9yKHZhciBvPW0scz1GLGE9ciYmci5mYWNlTGlzdHx8bnVsbCxCPUEuZmFjZXMsYz1BLnZlcnRpY2VzLGc9QS5mYWNlTm9ybWFscyxFPXRoaXMuX2RpcmVjdGlvbixRPXRoaXMuZnJvbSx1PXRoaXMudG8sbD1RLmRpc3RhbmNlVG8odSksTT1hP2EubGVuZ3RoOkIubGVuZ3RoLGQ9dGhpcy5yZXN1bHQscD0wOyFkLl9zaG91bGRTdG9wJiZNPnA7cCsrKXt2YXIgRD1hP2FbcF06cCxZPUJbRF0sZj1nW0RdLE49ZSxVPXQ7cy5jb3B5KGNbWVswXV0pLE4udm11bHQocyxzKSxzLnZhZGQoVSxzKSxzLnZzdWIoUSxzKSxOLnZtdWx0KGYsbyk7dmFyIHk9RS5kb3Qobyk7aWYoIShNYXRoLmFicyh5KTx0aGlzLnByZWNpc2lvbikpe3ZhciBUPW8uZG90KHMpL3k7aWYoISgwPlQpKXtFLm11bHQoVCxoKSxoLnZhZGQoUSxoKSx3LmNvcHkoY1tZWzBdXSksTi52bXVsdCh3LHcpLFUudmFkZCh3LHcpO2Zvcih2YXIgeD0xOyFkLl9zaG91bGRTdG9wJiZ4PFkubGVuZ3RoLTE7eCsrKXtDLmNvcHkoY1tZW3hdXSksSS5jb3B5KGNbWVt4KzFdXSksTi52bXVsdChDLEMpLE4udm11bHQoSSxJKSxVLnZhZGQoQyxDKSxVLnZhZGQoSSxJKTt2YXIgUj1oLmRpc3RhbmNlVG8oUSk7IW4oaCx3LEMsSSkmJiFuKGgsQyx3LEkpfHxSPmx8fHRoaXMucmVwb3J0SW50ZXJzZWN0aW9uKG8saCxBLGksRCl9fX19fSx0LnByb3RvdHlwZVthLnR5cGVzLkNPTlZFWFBPTFlIRURST05dPXQucHJvdG90eXBlLmludGVyc2VjdENvbnZleDt2YXIgRD1uZXcgaSxZPW5ldyBpLGY9bmV3IGksTj1uZXcgaSxVPW5ldyBpLHk9bmV3IGksVD0obmV3IEIsW10pLHg9bmV3IG87dC5wcm90b3R5cGUuaW50ZXJzZWN0VHJpbWVzaD1mdW5jdGlvbihBLGUsdCxpLHIpe3ZhciBzPUQsYT1ULEI9eCxjPUYsZz1ZLEU9ZixRPU4sdT15LGw9VSxNPShyJiZyLmZhY2VMaXN0LEEuaW5kaWNlcyksZD0oQS52ZXJ0aWNlcyxBLmZhY2VOb3JtYWxzLHRoaXMuZnJvbSkscD10aGlzLnRvLG09dGhpcy5fZGlyZWN0aW9uO0IucG9zaXRpb24uY29weSh0KSxCLnF1YXRlcm5pb24uY29weShlKSxvLnZlY3RvclRvTG9jYWxGcmFtZSh0LGUsbSxnKSxvLnBvaW50VG9Mb2NhbEZyYW1lKHQsZSxkLEUpLG8ucG9pbnRUb0xvY2FsRnJhbWUodCxlLHAsUSk7dmFyIFI9RS5kaXN0YW5jZVNxdWFyZWQoUSk7QS50cmVlLnJheVF1ZXJ5KHRoaXMsQixhKTtmb3IodmFyIEc9MCxTPWEubGVuZ3RoOyF0aGlzLnJlc3VsdC5fc2hvdWxkU3RvcCYmRyE9PVM7RysrKXt2YXIgYj1hW0ddO0EuZ2V0Tm9ybWFsKGIscyksQS5nZXRWZXJ0ZXgoTVszKmJdLHcpLHcudnN1YihFLGMpO3ZhciBIPWcuZG90KHMpLHY9cy5kb3QoYykvSDtpZighKDA+dikpe2cuc2NhbGUodixoKSxoLnZhZGQoRSxoKSxBLmdldFZlcnRleChNWzMqYisxXSxDKSxBLmdldFZlcnRleChNWzMqYisyXSxJKTt2YXIgaz1oLmRpc3RhbmNlU3F1YXJlZChFKTshbihoLEMsdyxJKSYmIW4oaCx3LEMsSSl8fGs+Unx8KG8udmVjdG9yVG9Xb3JsZEZyYW1lKGUscyxsKSxvLnBvaW50VG9Xb3JsZEZyYW1lKHQsZSxoLHUpLHRoaXMucmVwb3J0SW50ZXJzZWN0aW9uKGwsdSxBLGksYikpfX1hLmxlbmd0aD0wfSx0LnByb3RvdHlwZVthLnR5cGVzLlRSSU1FU0hdPXQucHJvdG90eXBlLmludGVyc2VjdFRyaW1lc2gsdC5wcm90b3R5cGUucmVwb3J0SW50ZXJzZWN0aW9uPWZ1bmN0aW9uKEEsZSxuLGkscil7dmFyIG89dGhpcy5mcm9tLHM9dGhpcy50byxhPW8uZGlzdGFuY2VUbyhlKSxCPXRoaXMucmVzdWx0O2lmKCEodGhpcy5za2lwQmFja2ZhY2VzJiZBLmRvdCh0aGlzLl9kaXJlY3Rpb24pPjApKXN3aXRjaChCLmhpdEZhY2VJbmRleD12b2lkIDAhPT1yP3I6LTEsdGhpcy5tb2RlKXtjYXNlIHQuQUxMOnRoaXMuaGFzSGl0PSEwLEIuc2V0KG8scyxBLGUsbixpLGEpLEIuaGFzSGl0PSEwLHRoaXMuY2FsbGJhY2soQik7YnJlYWs7Y2FzZSB0LkNMT1NFU1Q6KGE8Qi5kaXN0YW5jZXx8IUIuaGFzSGl0KSYmKHRoaXMuaGFzSGl0PSEwLEIuaGFzSGl0PSEwLEIuc2V0KG8scyxBLGUsbixpLGEpKTticmVhaztjYXNlIHQuQU5ZOnRoaXMuaGFzSGl0PSEwLEIuaGFzSGl0PSEwLEIuc2V0KG8scyxBLGUsbixpLGEpLEIuX3Nob3VsZFN0b3A9ITB9fTt2YXIgUj1uZXcgaSxHPW5ldyBpfSx7Ii4uL2NvbGxpc2lvbi9BQUJCIjozLCIuLi9jb2xsaXNpb24vUmF5Y2FzdFJlc3VsdCI6MTAsIi4uL21hdGgvUXVhdGVybmlvbiI6MjgsIi4uL21hdGgvVHJhbnNmb3JtIjoyOSwiLi4vbWF0aC9WZWMzIjozMCwiLi4vc2hhcGVzL0JveCI6MzcsIi4uL3NoYXBlcy9Db252ZXhQb2x5aGVkcm9uIjozOCwiLi4vc2hhcGVzL1NoYXBlIjo0M31dLDEwOltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXt0aGlzLnJheUZyb21Xb3JsZD1uZXcgbix0aGlzLnJheVRvV29ybGQ9bmV3IG4sdGhpcy5oaXROb3JtYWxXb3JsZD1uZXcgbix0aGlzLmhpdFBvaW50V29ybGQ9bmV3IG4sdGhpcy5oYXNIaXQ9ITEsdGhpcy5zaGFwZT1udWxsLHRoaXMuYm9keT1udWxsLHRoaXMuaGl0RmFjZUluZGV4PS0xLHRoaXMuZGlzdGFuY2U9LTEsdGhpcy5fc2hvdWxkU3RvcD0hMX12YXIgbj1BKCIuLi9tYXRoL1ZlYzMiKTtlLmV4cG9ydHM9dCx0LnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMucmF5RnJvbVdvcmxkLnNldFplcm8oKSx0aGlzLnJheVRvV29ybGQuc2V0WmVybygpLHRoaXMuaGl0Tm9ybWFsV29ybGQuc2V0WmVybygpLHRoaXMuaGl0UG9pbnRXb3JsZC5zZXRaZXJvKCksdGhpcy5oYXNIaXQ9ITEsdGhpcy5zaGFwZT1udWxsLHRoaXMuYm9keT1udWxsLHRoaXMuaGl0RmFjZUluZGV4PS0xLHRoaXMuZGlzdGFuY2U9LTEsdGhpcy5fc2hvdWxkU3RvcD0hMX0sdC5wcm90b3R5cGUuYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLl9zaG91bGRTdG9wPSEwfSx0LnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyl7dGhpcy5yYXlGcm9tV29ybGQuY29weShBKSx0aGlzLnJheVRvV29ybGQuY29weShlKSx0aGlzLmhpdE5vcm1hbFdvcmxkLmNvcHkodCksdGhpcy5oaXRQb2ludFdvcmxkLmNvcHkobiksdGhpcy5zaGFwZT1pLHRoaXMuYm9keT1yLHRoaXMuZGlzdGFuY2U9b319LHsiLi4vbWF0aC9WZWMzIjozMH1dLDExOltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSl7bi5hcHBseSh0aGlzKSx0aGlzLmF4aXNMaXN0PVtdLHRoaXMud29ybGQ9bnVsbCx0aGlzLmF4aXNJbmRleD0wO3ZhciBlPXRoaXMuYXhpc0xpc3Q7dGhpcy5fYWRkQm9keUhhbmRsZXI9ZnVuY3Rpb24oQSl7ZS5wdXNoKEEuYm9keSl9LHRoaXMuX3JlbW92ZUJvZHlIYW5kbGVyPWZ1bmN0aW9uKEEpe3ZhciB0PWUuaW5kZXhPZihBLmJvZHkpOy0xIT09dCYmZS5zcGxpY2UodCwxKX0sQSYmdGhpcy5zZXRXb3JsZChBKX12YXIgbj0oQSgiLi4vc2hhcGVzL1NoYXBlIiksQSgiLi4vY29sbGlzaW9uL0Jyb2FkcGhhc2UiKSk7ZS5leHBvcnRzPXQsdC5wcm90b3R5cGU9bmV3IG4sdC5wcm90b3R5cGUuc2V0V29ybGQ9ZnVuY3Rpb24oQSl7dGhpcy5heGlzTGlzdC5sZW5ndGg9MDtmb3IodmFyIGU9MDtlPEEuYm9kaWVzLmxlbmd0aDtlKyspdGhpcy5heGlzTGlzdC5wdXNoKEEuYm9kaWVzW2VdKTtBLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFkZEJvZHkiLHRoaXMuX2FkZEJvZHlIYW5kbGVyKSxBLnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlbW92ZUJvZHkiLHRoaXMuX3JlbW92ZUJvZHlIYW5kbGVyKSxBLmFkZEV2ZW50TGlzdGVuZXIoImFkZEJvZHkiLHRoaXMuX2FkZEJvZHlIYW5kbGVyKSxBLmFkZEV2ZW50TGlzdGVuZXIoInJlbW92ZUJvZHkiLHRoaXMuX3JlbW92ZUJvZHlIYW5kbGVyKSx0aGlzLndvcmxkPUEsdGhpcy5kaXJ0eT0hMH0sdC5pbnNlcnRpb25Tb3J0WD1mdW5jdGlvbihBKXtmb3IodmFyIGU9MSx0PUEubGVuZ3RoO3Q+ZTtlKyspe2Zvcih2YXIgbj1BW2VdLGk9ZS0xO2k+PTAmJiEoQVtpXS5hYWJiLmxvd2VyQm91bmQueDw9bi5hYWJiLmxvd2VyQm91bmQueCk7aS0tKUFbaSsxXT1BW2ldO0FbaSsxXT1ufXJldHVybiBBfSx0Lmluc2VydGlvblNvcnRZPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT0xLHQ9QS5sZW5ndGg7dD5lO2UrKyl7Zm9yKHZhciBuPUFbZV0saT1lLTE7aT49MCYmIShBW2ldLmFhYmIubG93ZXJCb3VuZC55PD1uLmFhYmIubG93ZXJCb3VuZC55KTtpLS0pQVtpKzFdPUFbaV07QVtpKzFdPW59cmV0dXJuIEF9LHQuaW5zZXJ0aW9uU29ydFo9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTEsdD1BLmxlbmd0aDt0PmU7ZSsrKXtmb3IodmFyIG49QVtlXSxpPWUtMTtpPj0wJiYhKEFbaV0uYWFiYi5sb3dlckJvdW5kLno8PW4uYWFiYi5sb3dlckJvdW5kLnopO2ktLSlBW2krMV09QVtpXTtBW2krMV09bn1yZXR1cm4gQX0sdC5wcm90b3R5cGUuY29sbGlzaW9uUGFpcnM9ZnVuY3Rpb24oQSxlLG4pe3ZhciBpLHIsbz10aGlzLmF4aXNMaXN0LHM9by5sZW5ndGgsYT10aGlzLmF4aXNJbmRleDtmb3IodGhpcy5kaXJ0eSYmKHRoaXMuc29ydExpc3QoKSx0aGlzLmRpcnR5PSExKSxpPTA7aSE9PXM7aSsrKXt2YXIgQj1vW2ldO2ZvcihyPWkrMTtzPnI7cisrKXt2YXIgYz1vW3JdO2lmKHRoaXMubmVlZEJyb2FkcGhhc2VDb2xsaXNpb24oQixjKSl7aWYoIXQuY2hlY2tCb3VuZHMoQixjLGEpKWJyZWFrO3RoaXMuaW50ZXJzZWN0aW9uVGVzdChCLGMsZSxuKX19fX0sdC5wcm90b3R5cGUuc29ydExpc3Q9ZnVuY3Rpb24oKXtmb3IodmFyIEE9dGhpcy5heGlzTGlzdCxlPXRoaXMuYXhpc0luZGV4LG49QS5sZW5ndGgsaT0wO2khPT1uO2krKyl7dmFyIHI9QVtpXTtyLmFhYmJOZWVkc1VwZGF0ZSYmci5jb21wdXRlQUFCQigpfTA9PT1lP3QuaW5zZXJ0aW9uU29ydFgoQSk6MT09PWU/dC5pbnNlcnRpb25Tb3J0WShBKToyPT09ZSYmdC5pbnNlcnRpb25Tb3J0WihBKX0sdC5jaGVja0JvdW5kcz1mdW5jdGlvbihBLGUsdCl7dmFyIG4saTtyZXR1cm4gMD09PXQ/KG49QS5wb3NpdGlvbi54LGk9ZS5wb3NpdGlvbi54KToxPT09dD8obj1BLnBvc2l0aW9uLnksaT1lLnBvc2l0aW9uLnkpOjI9PT10JiYobj1BLnBvc2l0aW9uLnosaT1lLnBvc2l0aW9uLnopLG4rQS5ib3VuZGluZ1JhZGl1cz5pLWUuYm91bmRpbmdSYWRpdXN9LHQucHJvdG90eXBlLmF1dG9EZXRlY3RBeGlzPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPTAsZT0wLHQ9MCxuPTAsaT0wLHI9MCxvPXRoaXMuYXhpc0xpc3Qscz1vLmxlbmd0aCxhPTEvcyxCPTA7QiE9PXM7QisrKXt2YXIgYz1vW0JdLGc9Yy5wb3NpdGlvbi54O0ErPWcsZSs9ZypnO3ZhciBFPWMucG9zaXRpb24ueTt0Kz1FLG4rPUUqRTt2YXIgUT1jLnBvc2l0aW9uLno7aSs9USxyKz1RKlF9dmFyIHU9ZS1BKkEqYSxsPW4tdCp0KmEsaD1yLWkqaSphO3RoaXMuYXhpc0luZGV4PXU+bD91Pmg/MDoyOmw+aD8xOjJ9LHQucHJvdG90eXBlLmFhYmJRdWVyeT1mdW5jdGlvbihBLGUsdCl7dD10fHxbXSx0aGlzLmRpcnR5JiYodGhpcy5zb3J0TGlzdCgpLHRoaXMuZGlydHk9ITEpO3ZhciBuPXRoaXMuYXhpc0luZGV4LGk9IngiOzE9PT1uJiYoaT0ieSIpLDI9PT1uJiYoaT0ieiIpO2Zvcih2YXIgcj10aGlzLmF4aXNMaXN0LG89KGUubG93ZXJCb3VuZFtpXSxlLnVwcGVyQm91bmRbaV0sMCk7bzxyLmxlbmd0aDtvKyspe3ZhciBzPXJbb107cy5hYWJiTmVlZHNVcGRhdGUmJnMuY29tcHV0ZUFBQkIoKSxzLmFhYmIub3ZlcmxhcHMoZSkmJnQucHVzaChzKX1yZXR1cm4gdH19LHsiLi4vY29sbGlzaW9uL0Jyb2FkcGhhc2UiOjUsIi4uL3NoYXBlcy9TaGFwZSI6NDN9XSwxMjpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXt2YXIgcz12b2lkIDAhPT0odD10fHx7fSkubWF4Rm9yY2U/dC5tYXhGb3JjZToxZTYsYT10LnBpdm90QT90LnBpdm90QS5jbG9uZSgpOm5ldyBvLEI9dC5waXZvdEI/dC5waXZvdEIuY2xvbmUoKTpuZXcgbzt0aGlzLmF4aXNBPXQuYXhpc0E/dC5heGlzQS5jbG9uZSgpOm5ldyBvLHRoaXMuYXhpc0I9dC5heGlzQj90LmF4aXNCLmNsb25lKCk6bmV3IG8sbi5jYWxsKHRoaXMsQSxhLGUsQixzKSx0aGlzLmNvbGxpZGVDb25uZWN0ZWQ9ISF0LmNvbGxpZGVDb25uZWN0ZWQsdGhpcy5hbmdsZT12b2lkIDAhPT10LmFuZ2xlP3QuYW5nbGU6MDt2YXIgYz10aGlzLmNvbmVFcXVhdGlvbj1uZXcgaShBLGUsdCksZz10aGlzLnR3aXN0RXF1YXRpb249bmV3IHIoQSxlLHQpO3RoaXMudHdpc3RBbmdsZT12b2lkIDAhPT10LnR3aXN0QW5nbGU/dC50d2lzdEFuZ2xlOjAsYy5tYXhGb3JjZT0wLGMubWluRm9yY2U9LXMsZy5tYXhGb3JjZT0wLGcubWluRm9yY2U9LXMsdGhpcy5lcXVhdGlvbnMucHVzaChjLGcpfWUuZXhwb3J0cz10O3ZhciBuPShBKCIuL0NvbnN0cmFpbnQiKSxBKCIuL1BvaW50VG9Qb2ludENvbnN0cmFpbnQiKSksaT1BKCIuLi9lcXVhdGlvbnMvQ29uZUVxdWF0aW9uIikscj1BKCIuLi9lcXVhdGlvbnMvUm90YXRpb25hbEVxdWF0aW9uIiksbz0oQSgiLi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiIpLEEoIi4uL21hdGgvVmVjMyIpKTt0LnByb3RvdHlwZT1uZXcgbix0LmNvbnN0cnVjdG9yPXQsbmV3IG8sbmV3IG8sdC5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5ib2R5QSxlPXRoaXMuYm9keUIsdD10aGlzLmNvbmVFcXVhdGlvbixpPXRoaXMudHdpc3RFcXVhdGlvbjtuLnByb3RvdHlwZS51cGRhdGUuY2FsbCh0aGlzKSxBLnZlY3RvclRvV29ybGRGcmFtZSh0aGlzLmF4aXNBLHQuYXhpc0EpLGUudmVjdG9yVG9Xb3JsZEZyYW1lKHRoaXMuYXhpc0IsdC5heGlzQiksdGhpcy5heGlzQS50YW5nZW50cyhpLmF4aXNBLGkuYXhpc0EpLEEudmVjdG9yVG9Xb3JsZEZyYW1lKGkuYXhpc0EsaS5heGlzQSksdGhpcy5heGlzQi50YW5nZW50cyhpLmF4aXNCLGkuYXhpc0IpLGUudmVjdG9yVG9Xb3JsZEZyYW1lKGkuYXhpc0IsaS5heGlzQiksdC5hbmdsZT10aGlzLmFuZ2xlLGkubWF4QW5nbGU9dGhpcy50d2lzdEFuZ2xlfX0seyIuLi9lcXVhdGlvbnMvQ29uZUVxdWF0aW9uIjoxOCwiLi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiI6MTksIi4uL2VxdWF0aW9ucy9Sb3RhdGlvbmFsRXF1YXRpb24iOjIyLCIuLi9tYXRoL1ZlYzMiOjMwLCIuL0NvbnN0cmFpbnQiOjEzLCIuL1BvaW50VG9Qb2ludENvbnN0cmFpbnQiOjE3fV0sMTM6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUsaSl7aT1uLmRlZmF1bHRzKGkse2NvbGxpZGVDb25uZWN0ZWQ6ITAsd2FrZVVwQm9kaWVzOiEwfSksdGhpcy5lcXVhdGlvbnM9W10sdGhpcy5ib2R5QT1BLHRoaXMuYm9keUI9ZSx0aGlzLmlkPXQuaWRDb3VudGVyKyssdGhpcy5jb2xsaWRlQ29ubmVjdGVkPWkuY29sbGlkZUNvbm5lY3RlZCxpLndha2VVcEJvZGllcyYmKEEmJkEud2FrZVVwKCksZSYmZS53YWtlVXAoKSl9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi4vdXRpbHMvVXRpbHMiKTt0LnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoIm1ldGhvZCB1cGRhdGUoKSBub3QgaW1wbG1lbWVudGVkIGluIHRoaXMgQ29uc3RyYWludCBzdWJjbGFzcyEiKX0sdC5wcm90b3R5cGUuZW5hYmxlPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPXRoaXMuZXF1YXRpb25zLGU9MDtlPEEubGVuZ3RoO2UrKylBW2VdLmVuYWJsZWQ9ITB9LHQucHJvdG90eXBlLmRpc2FibGU9ZnVuY3Rpb24oKXtmb3IodmFyIEE9dGhpcy5lcXVhdGlvbnMsZT0wO2U8QS5sZW5ndGg7ZSsrKUFbZV0uZW5hYmxlZD0hMX0sdC5pZENvdW50ZXI9MH0seyIuLi91dGlscy9VdGlscyI6NTN9XSwxNDpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0LHIpe24uY2FsbCh0aGlzLEEsZSksdm9pZCAwPT09dCYmKHQ9QS5wb3NpdGlvbi5kaXN0YW5jZVRvKGUucG9zaXRpb24pKSx2b2lkIDA9PT1yJiYocj0xZTYpLHRoaXMuZGlzdGFuY2U9dDt2YXIgbz10aGlzLmRpc3RhbmNlRXF1YXRpb249bmV3IGkoQSxlKTt0aGlzLmVxdWF0aW9ucy5wdXNoKG8pLG8ubWluRm9yY2U9LXIsby5tYXhGb3JjZT1yfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vQ29uc3RyYWludCIpLGk9QSgiLi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiIpO3QucHJvdG90eXBlPW5ldyBuLHQucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbigpe3ZhciBBPXRoaXMuYm9keUEsZT10aGlzLmJvZHlCLHQ9dGhpcy5kaXN0YW5jZUVxdWF0aW9uLG49LjUqdGhpcy5kaXN0YW5jZSxpPXQubmk7ZS5wb3NpdGlvbi52c3ViKEEucG9zaXRpb24saSksaS5ub3JtYWxpemUoKSxpLm11bHQobix0LnJpKSxpLm11bHQoLW4sdC5yail9fSx7Ii4uL2VxdWF0aW9ucy9Db250YWN0RXF1YXRpb24iOjE5LCIuL0NvbnN0cmFpbnQiOjEzfV0sMTU6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUsdCl7dmFyIHM9dm9pZCAwIT09KHQ9dHx8e30pLm1heEZvcmNlP3QubWF4Rm9yY2U6MWU2LGE9dC5waXZvdEE/dC5waXZvdEEuY2xvbmUoKTpuZXcgbyxCPXQucGl2b3RCP3QucGl2b3RCLmNsb25lKCk6bmV3IG87bi5jYWxsKHRoaXMsQSxhLGUsQixzKSwodGhpcy5heGlzQT10LmF4aXNBP3QuYXhpc0EuY2xvbmUoKTpuZXcgbygxLDAsMCkpLm5vcm1hbGl6ZSgpLCh0aGlzLmF4aXNCPXQuYXhpc0I/dC5heGlzQi5jbG9uZSgpOm5ldyBvKDEsMCwwKSkubm9ybWFsaXplKCk7dmFyIGM9dGhpcy5yb3RhdGlvbmFsRXF1YXRpb24xPW5ldyBpKEEsZSx0KSxnPXRoaXMucm90YXRpb25hbEVxdWF0aW9uMj1uZXcgaShBLGUsdCksRT10aGlzLm1vdG9yRXF1YXRpb249bmV3IHIoQSxlLHMpO0UuZW5hYmxlZD0hMSx0aGlzLmVxdWF0aW9ucy5wdXNoKGMsZyxFKX1lLmV4cG9ydHM9dDt2YXIgbj0oQSgiLi9Db25zdHJhaW50IiksQSgiLi9Qb2ludFRvUG9pbnRDb25zdHJhaW50IikpLGk9QSgiLi4vZXF1YXRpb25zL1JvdGF0aW9uYWxFcXVhdGlvbiIpLHI9QSgiLi4vZXF1YXRpb25zL1JvdGF0aW9uYWxNb3RvckVxdWF0aW9uIiksbz0oQSgiLi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiIpLEEoIi4uL21hdGgvVmVjMyIpKTt0LnByb3RvdHlwZT1uZXcgbix0LmNvbnN0cnVjdG9yPXQsdC5wcm90b3R5cGUuZW5hYmxlTW90b3I9ZnVuY3Rpb24oKXt0aGlzLm1vdG9yRXF1YXRpb24uZW5hYmxlZD0hMH0sdC5wcm90b3R5cGUuZGlzYWJsZU1vdG9yPWZ1bmN0aW9uKCl7dGhpcy5tb3RvckVxdWF0aW9uLmVuYWJsZWQ9ITF9LHQucHJvdG90eXBlLnNldE1vdG9yU3BlZWQ9ZnVuY3Rpb24oQSl7dGhpcy5tb3RvckVxdWF0aW9uLnRhcmdldFZlbG9jaXR5PUF9LHQucHJvdG90eXBlLnNldE1vdG9yTWF4Rm9yY2U9ZnVuY3Rpb24oQSl7dGhpcy5tb3RvckVxdWF0aW9uLm1heEZvcmNlPUEsdGhpcy5tb3RvckVxdWF0aW9uLm1pbkZvcmNlPS1BfTt2YXIgcz1uZXcgbyxhPW5ldyBvO3QucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbigpe3ZhciBBPXRoaXMuYm9keUEsZT10aGlzLmJvZHlCLHQ9dGhpcy5tb3RvckVxdWF0aW9uLGk9dGhpcy5yb3RhdGlvbmFsRXF1YXRpb24xLHI9dGhpcy5yb3RhdGlvbmFsRXF1YXRpb24yLG89cyxCPWEsYz10aGlzLmF4aXNBLGc9dGhpcy5heGlzQjtuLnByb3RvdHlwZS51cGRhdGUuY2FsbCh0aGlzKSxBLnF1YXRlcm5pb24udm11bHQoYyxvKSxlLnF1YXRlcm5pb24udm11bHQoZyxCKSxvLnRhbmdlbnRzKGkuYXhpc0Esci5heGlzQSksaS5heGlzQi5jb3B5KEIpLHIuYXhpc0IuY29weShCKSx0aGlzLm1vdG9yRXF1YXRpb24uZW5hYmxlZCYmKEEucXVhdGVybmlvbi52bXVsdCh0aGlzLmF4aXNBLHQuYXhpc0EpLGUucXVhdGVybmlvbi52bXVsdCh0aGlzLmF4aXNCLHQuYXhpc0IpKX19LHsiLi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiI6MTksIi4uL2VxdWF0aW9ucy9Sb3RhdGlvbmFsRXF1YXRpb24iOjIyLCIuLi9lcXVhdGlvbnMvUm90YXRpb25hbE1vdG9yRXF1YXRpb24iOjIzLCIuLi9tYXRoL1ZlYzMiOjMwLCIuL0NvbnN0cmFpbnQiOjEzLCIuL1BvaW50VG9Qb2ludENvbnN0cmFpbnQiOjE3fV0sMTY6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUsdCl7dmFyIG89dm9pZCAwIT09KHQ9dHx8e30pLm1heEZvcmNlP3QubWF4Rm9yY2U6MWU2LHM9bmV3IHIsYT1uZXcgcixCPW5ldyByO0EucG9zaXRpb24udmFkZChlLnBvc2l0aW9uLEIpLEIuc2NhbGUoLjUsQiksZS5wb2ludFRvTG9jYWxGcmFtZShCLGEpLEEucG9pbnRUb0xvY2FsRnJhbWUoQixzKSxuLmNhbGwodGhpcyxBLHMsZSxhLG8pO3ZhciBjPXRoaXMucm90YXRpb25hbEVxdWF0aW9uMT1uZXcgaShBLGUsdCksZz10aGlzLnJvdGF0aW9uYWxFcXVhdGlvbjI9bmV3IGkoQSxlLHQpLEU9dGhpcy5yb3RhdGlvbmFsRXF1YXRpb24zPW5ldyBpKEEsZSx0KTt0aGlzLmVxdWF0aW9ucy5wdXNoKGMsZyxFKX1lLmV4cG9ydHM9dDt2YXIgbj0oQSgiLi9Db25zdHJhaW50IiksQSgiLi9Qb2ludFRvUG9pbnRDb25zdHJhaW50IikpLGk9QSgiLi4vZXF1YXRpb25zL1JvdGF0aW9uYWxFcXVhdGlvbiIpLHI9KEEoIi4uL2VxdWF0aW9ucy9Sb3RhdGlvbmFsTW90b3JFcXVhdGlvbiIpLEEoIi4uL2VxdWF0aW9ucy9Db250YWN0RXF1YXRpb24iKSxBKCIuLi9tYXRoL1ZlYzMiKSk7dC5wcm90b3R5cGU9bmV3IG4sdC5jb25zdHJ1Y3Rvcj10LG5ldyByLG5ldyByLHQucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbigpe3ZhciBBPXRoaXMuYm9keUEsZT10aGlzLmJvZHlCLHQ9KHRoaXMubW90b3JFcXVhdGlvbix0aGlzLnJvdGF0aW9uYWxFcXVhdGlvbjEpLGk9dGhpcy5yb3RhdGlvbmFsRXF1YXRpb24yLG89dGhpcy5yb3RhdGlvbmFsRXF1YXRpb24zO24ucHJvdG90eXBlLnVwZGF0ZS5jYWxsKHRoaXMpLEEudmVjdG9yVG9Xb3JsZEZyYW1lKHIuVU5JVF9YLHQuYXhpc0EpLGUudmVjdG9yVG9Xb3JsZEZyYW1lKHIuVU5JVF9ZLHQuYXhpc0IpLEEudmVjdG9yVG9Xb3JsZEZyYW1lKHIuVU5JVF9ZLGkuYXhpc0EpLGUudmVjdG9yVG9Xb3JsZEZyYW1lKHIuVU5JVF9aLGkuYXhpc0IpLEEudmVjdG9yVG9Xb3JsZEZyYW1lKHIuVU5JVF9aLG8uYXhpc0EpLGUudmVjdG9yVG9Xb3JsZEZyYW1lKHIuVU5JVF9YLG8uYXhpc0IpfX0seyIuLi9lcXVhdGlvbnMvQ29udGFjdEVxdWF0aW9uIjoxOSwiLi4vZXF1YXRpb25zL1JvdGF0aW9uYWxFcXVhdGlvbiI6MjIsIi4uL2VxdWF0aW9ucy9Sb3RhdGlvbmFsTW90b3JFcXVhdGlvbiI6MjMsIi4uL21hdGgvVmVjMyI6MzAsIi4vQ29uc3RyYWludCI6MTMsIi4vUG9pbnRUb1BvaW50Q29uc3RyYWludCI6MTd9XSwxNzpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0LG8scyl7bi5jYWxsKHRoaXMsQSx0KSxzPXZvaWQgMCE9PXM/czoxZTYsdGhpcy5waXZvdEE9ZT9lLmNsb25lKCk6bmV3IHIsdGhpcy5waXZvdEI9bz9vLmNsb25lKCk6bmV3IHI7dmFyIGE9dGhpcy5lcXVhdGlvblg9bmV3IGkoQSx0KSxCPXRoaXMuZXF1YXRpb25ZPW5ldyBpKEEsdCksYz10aGlzLmVxdWF0aW9uWj1uZXcgaShBLHQpO3RoaXMuZXF1YXRpb25zLnB1c2goYSxCLGMpLGEubWluRm9yY2U9Qi5taW5Gb3JjZT1jLm1pbkZvcmNlPS1zLGEubWF4Rm9yY2U9Qi5tYXhGb3JjZT1jLm1heEZvcmNlPXMsYS5uaS5zZXQoMSwwLDApLEIubmkuc2V0KDAsMSwwKSxjLm5pLnNldCgwLDAsMSl9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi9Db25zdHJhaW50IiksaT1BKCIuLi9lcXVhdGlvbnMvQ29udGFjdEVxdWF0aW9uIikscj1BKCIuLi9tYXRoL1ZlYzMiKTt0LnByb3RvdHlwZT1uZXcgbix0LnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmJvZHlBLGU9dGhpcy5ib2R5Qix0PXRoaXMuZXF1YXRpb25YLG49dGhpcy5lcXVhdGlvblksaT10aGlzLmVxdWF0aW9uWjtBLnF1YXRlcm5pb24udm11bHQodGhpcy5waXZvdEEsdC5yaSksZS5xdWF0ZXJuaW9uLnZtdWx0KHRoaXMucGl2b3RCLHQucmopLG4ucmkuY29weSh0LnJpKSxuLnJqLmNvcHkodC5yaiksaS5yaS5jb3B5KHQucmkpLGkucmouY29weSh0LnJqKX19LHsiLi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiI6MTksIi4uL21hdGgvVmVjMyI6MzAsIi4vQ29uc3RyYWludCI6MTN9XSwxODpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXt2YXIgcj12b2lkIDAhPT0odD10fHx7fSkubWF4Rm9yY2U/dC5tYXhGb3JjZToxZTY7aS5jYWxsKHRoaXMsQSxlLC1yLHIpLHRoaXMuYXhpc0E9dC5heGlzQT90LmF4aXNBLmNsb25lKCk6bmV3IG4oMSwwLDApLHRoaXMuYXhpc0I9dC5heGlzQj90LmF4aXNCLmNsb25lKCk6bmV3IG4oMCwxLDApLHRoaXMuYW5nbGU9dm9pZCAwIT09dC5hbmdsZT90LmFuZ2xlOjB9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi4vbWF0aC9WZWMzIiksaT0oQSgiLi4vbWF0aC9NYXQzIiksQSgiLi9FcXVhdGlvbiIpKTt0LnByb3RvdHlwZT1uZXcgaSx0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10O3ZhciByPW5ldyBuLG89bmV3IG47dC5wcm90b3R5cGUuY29tcHV0ZUI9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5hLHQ9dGhpcy5iLG49dGhpcy5heGlzQSxpPXRoaXMuYXhpc0Iscz1yLGE9byxCPXRoaXMuamFjb2JpYW5FbGVtZW50QSxjPXRoaXMuamFjb2JpYW5FbGVtZW50QjtyZXR1cm4gbi5jcm9zcyhpLHMpLGkuY3Jvc3MobixhKSxCLnJvdGF0aW9uYWwuY29weShhKSxjLnJvdGF0aW9uYWwuY29weShzKSwtKE1hdGguY29zKHRoaXMuYW5nbGUpLW4uZG90KGkpKSplLXRoaXMuY29tcHV0ZUdXKCkqdC1BKnRoaXMuY29tcHV0ZUdpTWYoKX19LHsiLi4vbWF0aC9NYXQzIjoyNywiLi4vbWF0aC9WZWMzIjozMCwiLi9FcXVhdGlvbiI6MjB9XSwxOTpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXt0PXZvaWQgMCE9PXQ/dDoxZTYsbi5jYWxsKHRoaXMsQSxlLDAsdCksdGhpcy5yZXN0aXR1dGlvbj0wLHRoaXMucmk9bmV3IGksdGhpcy5yaj1uZXcgaSx0aGlzLm5pPW5ldyBpfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vRXF1YXRpb24iKSxpPUEoIi4uL21hdGgvVmVjMyIpO0EoIi4uL21hdGgvTWF0MyIpLHQucHJvdG90eXBlPW5ldyBuLHQucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQ7dmFyIHI9bmV3IGksbz1uZXcgaSxzPW5ldyBpO3QucHJvdG90eXBlLmNvbXB1dGVCPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuYSx0PXRoaXMuYixuPXRoaXMuYmksaT10aGlzLmJqLGE9dGhpcy5yaSxCPXRoaXMucmosYz1yLGc9byxFPW4udmVsb2NpdHksUT1uLmFuZ3VsYXJWZWxvY2l0eSx1PShuLmZvcmNlLG4udG9ycXVlLGkudmVsb2NpdHkpLGw9aS5hbmd1bGFyVmVsb2NpdHksaD0oaS5mb3JjZSxpLnRvcnF1ZSxzKSx3PXRoaXMuamFjb2JpYW5FbGVtZW50QSxDPXRoaXMuamFjb2JpYW5FbGVtZW50QixJPXRoaXMubmk7YS5jcm9zcyhJLGMpLEIuY3Jvc3MoSSxnKSxJLm5lZ2F0ZSh3LnNwYXRpYWwpLGMubmVnYXRlKHcucm90YXRpb25hbCksQy5zcGF0aWFsLmNvcHkoSSksQy5yb3RhdGlvbmFsLmNvcHkoZyksaC5jb3B5KGkucG9zaXRpb24pLGgudmFkZChCLGgpLGgudnN1YihuLnBvc2l0aW9uLGgpLGgudnN1YihhLGgpO3ZhciBNPUkuZG90KGgpLGQ9dGhpcy5yZXN0aXR1dGlvbisxO3JldHVybi1NKmUtKGQqdS5kb3QoSSktZCpFLmRvdChJKStsLmRvdChnKS1RLmRvdChjKSkqdC1BKnRoaXMuY29tcHV0ZUdpTWYoKX07dmFyIGE9bmV3IGksQj1uZXcgaSxjPW5ldyBpLGc9bmV3IGksRT1uZXcgaTt0LnByb3RvdHlwZS5nZXRJbXBhY3RWZWxvY2l0eUFsb25nTm9ybWFsPWZ1bmN0aW9uKCl7dmFyIEE9YSxlPUIsdD1jLG49ZyxpPUU7cmV0dXJuIHRoaXMuYmkucG9zaXRpb24udmFkZCh0aGlzLnJpLHQpLHRoaXMuYmoucG9zaXRpb24udmFkZCh0aGlzLnJqLG4pLHRoaXMuYmkuZ2V0VmVsb2NpdHlBdFdvcmxkUG9pbnQodCxBKSx0aGlzLmJqLmdldFZlbG9jaXR5QXRXb3JsZFBvaW50KG4sZSksQS52c3ViKGUsaSksdGhpcy5uaS5kb3QoaSl9fSx7Ii4uL21hdGgvTWF0MyI6MjcsIi4uL21hdGgvVmVjMyI6MzAsIi4vRXF1YXRpb24iOjIwfV0sMjA6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUsaSxyKXt0aGlzLmlkPXQuaWQrKyx0aGlzLm1pbkZvcmNlPXZvaWQgMD09PWk/LTFlNjppLHRoaXMubWF4Rm9yY2U9dm9pZCAwPT09cj8xZTY6cix0aGlzLmJpPUEsdGhpcy5iaj1lLHRoaXMuYT0wLHRoaXMuYj0wLHRoaXMuZXBzPTAsdGhpcy5qYWNvYmlhbkVsZW1lbnRBPW5ldyBuLHRoaXMuamFjb2JpYW5FbGVtZW50Qj1uZXcgbix0aGlzLmVuYWJsZWQ9ITAsdGhpcy5zZXRTcG9va1BhcmFtcygxZTcsNCwxLzYwKX1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuLi9tYXRoL0phY29iaWFuRWxlbWVudCIpLGk9QSgiLi4vbWF0aC9WZWMzIik7dC5wcm90b3R5cGUuY29uc3RydWN0b3I9dCx0LmlkPTAsdC5wcm90b3R5cGUuc2V0U3Bvb2tQYXJhbXM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPWUsaT1BLHI9dDt0aGlzLmE9NC8ociooMSs0Km4pKSx0aGlzLmI9NCpuLygxKzQqbiksdGhpcy5lcHM9NC8ocipyKmkqKDErNCpuKSl9LHQucHJvdG90eXBlLmNvbXB1dGVCPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10aGlzLmNvbXB1dGVHVygpO3JldHVybi10aGlzLmNvbXB1dGVHcSgpKkEtbiplLXRoaXMuY29tcHV0ZUdpTWYoKSp0fSx0LnByb3RvdHlwZS5jb21wdXRlR3E9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmphY29iaWFuRWxlbWVudEEsZT10aGlzLmphY29iaWFuRWxlbWVudEIsdD10aGlzLmJpLG49dGhpcy5iaixpPXQucG9zaXRpb24scj1uLnBvc2l0aW9uO3JldHVybiBBLnNwYXRpYWwuZG90KGkpK2Uuc3BhdGlhbC5kb3Qocil9O3ZhciByPW5ldyBpO3QucHJvdG90eXBlLmNvbXB1dGVHVz1mdW5jdGlvbigpe3ZhciBBPXRoaXMuamFjb2JpYW5FbGVtZW50QSxlPXRoaXMuamFjb2JpYW5FbGVtZW50Qix0PXRoaXMuYmksbj10aGlzLmJqLGk9dC52ZWxvY2l0eSxvPW4udmVsb2NpdHkscz10LmFuZ3VsYXJWZWxvY2l0eXx8cixhPW4uYW5ndWxhclZlbG9jaXR5fHxyO3JldHVybiBBLm11bHRpcGx5VmVjdG9ycyhpLHMpK2UubXVsdGlwbHlWZWN0b3JzKG8sYSl9LHQucHJvdG90eXBlLmNvbXB1dGVHV2xhbWJkYT1mdW5jdGlvbigpe3ZhciBBPXRoaXMuamFjb2JpYW5FbGVtZW50QSxlPXRoaXMuamFjb2JpYW5FbGVtZW50Qix0PXRoaXMuYmksbj10aGlzLmJqLGk9dC52bGFtYmRhLG89bi52bGFtYmRhLHM9dC53bGFtYmRhfHxyLGE9bi53bGFtYmRhfHxyO3JldHVybiBBLm11bHRpcGx5VmVjdG9ycyhpLHMpK2UubXVsdGlwbHlWZWN0b3JzKG8sYSl9O3ZhciBvPW5ldyBpLHM9bmV3IGksYT1uZXcgaSxCPW5ldyBpO3QucHJvdG90eXBlLmNvbXB1dGVHaU1mPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5qYWNvYmlhbkVsZW1lbnRBLGU9dGhpcy5qYWNvYmlhbkVsZW1lbnRCLHQ9dGhpcy5iaSxuPXRoaXMuYmosaT10LmZvcmNlLHI9dC50b3JxdWUsYz1uLmZvcmNlLGc9bi50b3JxdWUsRT10Lmludk1hc3NTb2x2ZSxRPW4uaW52TWFzc1NvbHZlO3JldHVybiB0LmludkluZXJ0aWFXb3JsZFNvbHZlP3QuaW52SW5lcnRpYVdvcmxkU29sdmUudm11bHQocixhKTphLnNldCgwLDAsMCksbi5pbnZJbmVydGlhV29ybGRTb2x2ZT9uLmludkluZXJ0aWFXb3JsZFNvbHZlLnZtdWx0KGcsQik6Qi5zZXQoMCwwLDApLGkubXVsdChFLG8pLGMubXVsdChRLHMpLEEubXVsdGlwbHlWZWN0b3JzKG8sYSkrZS5tdWx0aXBseVZlY3RvcnMocyxCKX07dmFyIGM9bmV3IGk7dC5wcm90b3R5cGUuY29tcHV0ZUdpTUd0PWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5qYWNvYmlhbkVsZW1lbnRBLGU9dGhpcy5qYWNvYmlhbkVsZW1lbnRCLHQ9dGhpcy5iaSxuPXRoaXMuYmosaT10Lmludk1hc3NTb2x2ZSxyPW4uaW52TWFzc1NvbHZlLG89dC5pbnZJbmVydGlhV29ybGRTb2x2ZSxzPW4uaW52SW5lcnRpYVdvcmxkU29sdmUsYT1pK3I7cmV0dXJuIG8mJihvLnZtdWx0KEEucm90YXRpb25hbCxjKSxhKz1jLmRvdChBLnJvdGF0aW9uYWwpKSxzJiYocy52bXVsdChlLnJvdGF0aW9uYWwsYyksYSs9Yy5kb3QoZS5yb3RhdGlvbmFsKSksYX07dmFyIGc9bmV3IGk7bmV3IGksbmV3IGksbmV3IGksbmV3IGksbmV3IGksdC5wcm90b3R5cGUuYWRkVG9XbGFtYmRhPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuamFjb2JpYW5FbGVtZW50QSx0PXRoaXMuamFjb2JpYW5FbGVtZW50QixuPXRoaXMuYmksaT10aGlzLmJqLHI9ZztlLnNwYXRpYWwubXVsdChuLmludk1hc3NTb2x2ZSpBLHIpLG4udmxhbWJkYS52YWRkKHIsbi52bGFtYmRhKSx0LnNwYXRpYWwubXVsdChpLmludk1hc3NTb2x2ZSpBLHIpLGkudmxhbWJkYS52YWRkKHIsaS52bGFtYmRhKSxuLmludkluZXJ0aWFXb3JsZFNvbHZlJiYobi5pbnZJbmVydGlhV29ybGRTb2x2ZS52bXVsdChlLnJvdGF0aW9uYWwsciksci5tdWx0KEEsciksbi53bGFtYmRhLnZhZGQocixuLndsYW1iZGEpKSxpLmludkluZXJ0aWFXb3JsZFNvbHZlJiYoaS5pbnZJbmVydGlhV29ybGRTb2x2ZS52bXVsdCh0LnJvdGF0aW9uYWwsciksci5tdWx0KEEsciksaS53bGFtYmRhLnZhZGQocixpLndsYW1iZGEpKX0sdC5wcm90b3R5cGUuY29tcHV0ZUM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb21wdXRlR2lNR3QoKSt0aGlzLmVwc319LHsiLi4vbWF0aC9KYWNvYmlhbkVsZW1lbnQiOjI2LCIuLi9tYXRoL1ZlYzMiOjMwfV0sMjE6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUsdCl7bi5jYWxsKHRoaXMsQSxlLC10LHQpLHRoaXMucmk9bmV3IGksdGhpcy5yaj1uZXcgaSx0aGlzLnQ9bmV3IGl9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi9FcXVhdGlvbiIpLGk9QSgiLi4vbWF0aC9WZWMzIik7QSgiLi4vbWF0aC9NYXQzIiksdC5wcm90b3R5cGU9bmV3IG4sdC5wcm90b3R5cGUuY29uc3RydWN0b3I9dDt2YXIgcj1uZXcgaSxvPW5ldyBpO3QucHJvdG90eXBlLmNvbXB1dGVCPWZ1bmN0aW9uKEEpe3ZhciBlPSh0aGlzLmEsdGhpcy5iKSx0PSh0aGlzLmJpLHRoaXMuYmosdGhpcy5yaSksbj10aGlzLnJqLGk9cixzPW8sYT10aGlzLnQ7dC5jcm9zcyhhLGkpLG4uY3Jvc3MoYSxzKTt2YXIgQj10aGlzLmphY29iaWFuRWxlbWVudEEsYz10aGlzLmphY29iaWFuRWxlbWVudEI7cmV0dXJuIGEubmVnYXRlKEIuc3BhdGlhbCksaS5uZWdhdGUoQi5yb3RhdGlvbmFsKSxjLnNwYXRpYWwuY29weShhKSxjLnJvdGF0aW9uYWwuY29weShzKSwtdGhpcy5jb21wdXRlR1coKSplLUEqdGhpcy5jb21wdXRlR2lNZigpfX0seyIuLi9tYXRoL01hdDMiOjI3LCIuLi9tYXRoL1ZlYzMiOjMwLCIuL0VxdWF0aW9uIjoyMH1dLDIyOltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSxlLHQpe3ZhciByPXZvaWQgMCE9PSh0PXR8fHt9KS5tYXhGb3JjZT90Lm1heEZvcmNlOjFlNjtpLmNhbGwodGhpcyxBLGUsLXIsciksdGhpcy5heGlzQT10LmF4aXNBP3QuYXhpc0EuY2xvbmUoKTpuZXcgbigxLDAsMCksdGhpcy5heGlzQj10LmF4aXNCP3QuYXhpc0IuY2xvbmUoKTpuZXcgbigwLDEsMCksdGhpcy5tYXhBbmdsZT1NYXRoLlBJLzJ9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi4vbWF0aC9WZWMzIiksaT0oQSgiLi4vbWF0aC9NYXQzIiksQSgiLi9FcXVhdGlvbiIpKTt0LnByb3RvdHlwZT1uZXcgaSx0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10O3ZhciByPW5ldyBuLG89bmV3IG47dC5wcm90b3R5cGUuY29tcHV0ZUI9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5hLHQ9dGhpcy5iLG49dGhpcy5heGlzQSxpPXRoaXMuYXhpc0Iscz1yLGE9byxCPXRoaXMuamFjb2JpYW5FbGVtZW50QSxjPXRoaXMuamFjb2JpYW5FbGVtZW50QjtyZXR1cm4gbi5jcm9zcyhpLHMpLGkuY3Jvc3MobixhKSxCLnJvdGF0aW9uYWwuY29weShhKSxjLnJvdGF0aW9uYWwuY29weShzKSwtKE1hdGguY29zKHRoaXMubWF4QW5nbGUpLW4uZG90KGkpKSplLXRoaXMuY29tcHV0ZUdXKCkqdC1BKnRoaXMuY29tcHV0ZUdpTWYoKX19LHsiLi4vbWF0aC9NYXQzIjoyNywiLi4vbWF0aC9WZWMzIjozMCwiLi9FcXVhdGlvbiI6MjB9XSwyMzpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXt0PXZvaWQgMCE9PXQ/dDoxZTYsaS5jYWxsKHRoaXMsQSxlLC10LHQpLHRoaXMuYXhpc0E9bmV3IG4sdGhpcy5heGlzQj1uZXcgbix0aGlzLnRhcmdldFZlbG9jaXR5PTB9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi4vbWF0aC9WZWMzIiksaT0oQSgiLi4vbWF0aC9NYXQzIiksQSgiLi9FcXVhdGlvbiIpKTt0LnByb3RvdHlwZT1uZXcgaSx0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10LHQucHJvdG90eXBlLmNvbXB1dGVCPWZ1bmN0aW9uKEEpe3ZhciBlPSh0aGlzLmEsdGhpcy5iKSx0PSh0aGlzLmJpLHRoaXMuYmosdGhpcy5heGlzQSksbj10aGlzLmF4aXNCLGk9dGhpcy5qYWNvYmlhbkVsZW1lbnRBLHI9dGhpcy5qYWNvYmlhbkVsZW1lbnRCO3JldHVybiBpLnJvdGF0aW9uYWwuY29weSh0KSxuLm5lZ2F0ZShyLnJvdGF0aW9uYWwpLC0odGhpcy5jb21wdXRlR1coKS10aGlzLnRhcmdldFZlbG9jaXR5KSplLUEqdGhpcy5jb21wdXRlR2lNZigpfX0seyIuLi9tYXRoL01hdDMiOjI3LCIuLi9tYXRoL1ZlYzMiOjMwLCIuL0VxdWF0aW9uIjoyMH1dLDI0OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSxlLGkpe2k9bi5kZWZhdWx0cyhpLHtmcmljdGlvbjouMyxyZXN0aXR1dGlvbjouMyxjb250YWN0RXF1YXRpb25TdGlmZm5lc3M6MWU3LGNvbnRhY3RFcXVhdGlvblJlbGF4YXRpb246MyxmcmljdGlvbkVxdWF0aW9uU3RpZmZuZXNzOjFlNyxmcmljdGlvbkVxdWF0aW9uUmVsYXhhdGlvbjozfSksdGhpcy5pZD10LmlkQ291bnRlcisrLHRoaXMubWF0ZXJpYWxzPVtBLGVdLHRoaXMuZnJpY3Rpb249aS5mcmljdGlvbix0aGlzLnJlc3RpdHV0aW9uPWkucmVzdGl0dXRpb24sdGhpcy5jb250YWN0RXF1YXRpb25TdGlmZm5lc3M9aS5jb250YWN0RXF1YXRpb25TdGlmZm5lc3MsdGhpcy5jb250YWN0RXF1YXRpb25SZWxheGF0aW9uPWkuY29udGFjdEVxdWF0aW9uUmVsYXhhdGlvbix0aGlzLmZyaWN0aW9uRXF1YXRpb25TdGlmZm5lc3M9aS5mcmljdGlvbkVxdWF0aW9uU3RpZmZuZXNzLHRoaXMuZnJpY3Rpb25FcXVhdGlvblJlbGF4YXRpb249aS5mcmljdGlvbkVxdWF0aW9uUmVsYXhhdGlvbn12YXIgbj1BKCIuLi91dGlscy9VdGlscyIpO2UuZXhwb3J0cz10LHQuaWRDb3VudGVyPTB9LHsiLi4vdXRpbHMvVXRpbHMiOjUzfV0sMjU6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXt2YXIgZT0iIjsic3RyaW5nIj09dHlwZW9mKEE9QXx8e30pPyhlPUEsQT17fSk6Im9iamVjdCI9PXR5cGVvZiBBJiYoZT0iIiksdGhpcy5uYW1lPWUsdGhpcy5pZD10LmlkQ291bnRlcisrLHRoaXMuZnJpY3Rpb249dm9pZCAwIT09QS5mcmljdGlvbj9BLmZyaWN0aW9uOi0xLHRoaXMucmVzdGl0dXRpb249dm9pZCAwIT09QS5yZXN0aXR1dGlvbj9BLnJlc3RpdHV0aW9uOi0xfWUuZXhwb3J0cz10LHQuaWRDb3VudGVyPTB9LHt9XSwyNjpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7dGhpcy5zcGF0aWFsPW5ldyBuLHRoaXMucm90YXRpb25hbD1uZXcgbn1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuL1ZlYzMiKTt0LnByb3RvdHlwZS5tdWx0aXBseUVsZW1lbnQ9ZnVuY3Rpb24oQSl7cmV0dXJuIEEuc3BhdGlhbC5kb3QodGhpcy5zcGF0aWFsKStBLnJvdGF0aW9uYWwuZG90KHRoaXMucm90YXRpb25hbCl9LHQucHJvdG90eXBlLm11bHRpcGx5VmVjdG9ycz1mdW5jdGlvbihBLGUpe3JldHVybiBBLmRvdCh0aGlzLnNwYXRpYWwpK2UuZG90KHRoaXMucm90YXRpb25hbCl9fSx7Ii4vVmVjMyI6MzB9XSwyNzpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEpe3RoaXMuZWxlbWVudHM9QXx8WzAsMCwwLDAsMCwwLDAsMCwwXX1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuL1ZlYzMiKTt0LnByb3RvdHlwZS5pZGVudGl0eT1mdW5jdGlvbigpe3ZhciBBPXRoaXMuZWxlbWVudHM7QVswXT0xLEFbMV09MCxBWzJdPTAsQVszXT0wLEFbNF09MSxBWzVdPTAsQVs2XT0wLEFbN109MCxBWzhdPTF9LHQucHJvdG90eXBlLnNldFplcm89ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmVsZW1lbnRzO0FbMF09MCxBWzFdPTAsQVsyXT0wLEFbM109MCxBWzRdPTAsQVs1XT0wLEFbNl09MCxBWzddPTAsQVs4XT0wfSx0LnByb3RvdHlwZS5zZXRUcmFjZT1mdW5jdGlvbihBKXt2YXIgZT10aGlzLmVsZW1lbnRzO2VbMF09QS54LGVbNF09QS55LGVbOF09QS56fSx0LnByb3RvdHlwZS5nZXRUcmFjZT1mdW5jdGlvbihBKXtBPUF8fG5ldyBuO3ZhciBlPXRoaXMuZWxlbWVudHM7QS54PWVbMF0sQS55PWVbNF0sQS56PWVbOF19LHQucHJvdG90eXBlLnZtdWx0PWZ1bmN0aW9uKEEsZSl7ZT1lfHxuZXcgbjt2YXIgdD10aGlzLmVsZW1lbnRzLGk9QS54LHI9QS55LG89QS56O3JldHVybiBlLng9dFswXSppK3RbMV0qcit0WzJdKm8sZS55PXRbM10qaSt0WzRdKnIrdFs1XSpvLGUuej10WzZdKmkrdFs3XSpyK3RbOF0qbyxlfSx0LnByb3RvdHlwZS5zbXVsdD1mdW5jdGlvbihBKXtmb3IodmFyIGU9MDtlPHRoaXMuZWxlbWVudHMubGVuZ3RoO2UrKyl0aGlzLmVsZW1lbnRzW2VdKj1BfSx0LnByb3RvdHlwZS5tbXVsdD1mdW5jdGlvbihBLGUpe2Zvcih2YXIgbj1lfHxuZXcgdCxpPTA7Mz5pO2krKylmb3IodmFyIHI9MDszPnI7cisrKXtmb3IodmFyIG89MCxzPTA7Mz5zO3MrKylvKz1BLmVsZW1lbnRzW2krMypzXSp0aGlzLmVsZW1lbnRzW3MrMypyXTtuLmVsZW1lbnRzW2krMypyXT1vfXJldHVybiBufSx0LnByb3RvdHlwZS5zY2FsZT1mdW5jdGlvbihBLGUpe2U9ZXx8bmV3IHQ7Zm9yKHZhciBuPXRoaXMuZWxlbWVudHMsaT1lLmVsZW1lbnRzLHI9MDszIT09cjtyKyspaVszKnIrMF09QS54Km5bMypyKzBdLGlbMypyKzFdPUEueSpuWzMqcisxXSxpWzMqcisyXT1BLnoqblszKnIrMl07cmV0dXJuIGV9LHQucHJvdG90eXBlLnNvbHZlPWZ1bmN0aW9uKEEsZSl7ZT1lfHxuZXcgbjtmb3IodmFyIHQ9W10saT0wOzEyPmk7aSsrKXQucHVzaCgwKTt2YXIgcjtmb3IoaT0wOzM+aTtpKyspZm9yKHI9MDszPnI7cisrKXRbaSs0KnJdPXRoaXMuZWxlbWVudHNbaSszKnJdO3RbM109QS54LHRbN109QS55LHRbMTFdPUEuejt2YXIgbyxzLGE9MyxCPWE7ZG97aWYoMD09PXRbKGk9Qi1hKSs0KmldKWZvcihyPWkrMTtCPnI7cisrKWlmKDAhPT10W2krNCpyXSl7bz00O2Rve3RbKHM9NC1vKSs0KmldKz10W3MrNCpyXX13aGlsZSgtLW8pO2JyZWFrfWlmKDAhPT10W2krNCppXSlmb3Iocj1pKzE7Qj5yO3IrKyl7dmFyIGM9dFtpKzQqcl0vdFtpKzQqaV07bz00O2Rve3RbKHM9NC1vKSs0KnJdPWk+PXM/MDp0W3MrNCpyXS10W3MrNCppXSpjfXdoaWxlKC0tbyl9fXdoaWxlKC0tYSk7aWYoZS56PXRbMTFdL3RbMTBdLGUueT0odFs3XS10WzZdKmUueikvdFs1XSxlLng9KHRbM10tdFsyXSplLnotdFsxXSplLnkpL3RbMF0saXNOYU4oZS54KXx8aXNOYU4oZS55KXx8aXNOYU4oZS56KXx8MS8wPT09ZS54fHwxLzA9PT1lLnl8fDEvMD09PWUueil0aHJvdyJDb3VsZCBub3Qgc29sdmUgZXF1YXRpb24hIEdvdCB4PVsiK2UudG9TdHJpbmcoKSsiXSwgYj1bIitBLnRvU3RyaW5nKCkrIl0sIEE9WyIrdGhpcy50b1N0cmluZygpKyJdIjtyZXR1cm4gZX0sdC5wcm90b3R5cGUuZT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/dGhpcy5lbGVtZW50c1tlKzMqQV06dm9pZCh0aGlzLmVsZW1lbnRzW2UrMypBXT10KX0sdC5wcm90b3R5cGUuY29weT1mdW5jdGlvbihBKXtmb3IodmFyIGU9MDtlPEEuZWxlbWVudHMubGVuZ3RoO2UrKyl0aGlzLmVsZW1lbnRzW2VdPUEuZWxlbWVudHNbZV07cmV0dXJuIHRoaXN9LHQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPSIiLGU9MDs5PmU7ZSsrKUErPXRoaXMuZWxlbWVudHNbZV0rIiwiO3JldHVybiBBfSx0LnByb3RvdHlwZS5yZXZlcnNlPWZ1bmN0aW9uKEEpe0E9QXx8bmV3IHQ7Zm9yKHZhciBlPVtdLG49MDsxOD5uO24rKyllLnB1c2goMCk7dmFyIGk7Zm9yKG49MDszPm47bisrKWZvcihpPTA7Mz5pO2krKyllW24rNippXT10aGlzLmVsZW1lbnRzW24rMyppXTtlWzNdPTEsZVs5XT0wLGVbMTVdPTAsZVs0XT0wLGVbMTBdPTEsZVsxNl09MCxlWzVdPTAsZVsxMV09MCxlWzE3XT0xO3ZhciByLG8scz0zLGE9cztkb3tpZigwPT09ZVsobj1hLXMpKzYqbl0pZm9yKGk9bisxO2E+aTtpKyspaWYoMCE9PWVbbis2KmldKXtyPTY7ZG97ZVsobz02LXIpKzYqbl0rPWVbbys2KmldfXdoaWxlKC0tcik7YnJlYWt9aWYoMCE9PWVbbis2Km5dKWZvcihpPW4rMTthPmk7aSsrKXt2YXIgQj1lW24rNippXS9lW24rNipuXTtyPTY7ZG97ZVsobz02LXIpKzYqaV09bj49bz8wOmVbbys2KmldLWVbbys2Km5dKkJ9d2hpbGUoLS1yKX19d2hpbGUoLS1zKTtuPTI7ZG97aT1uLTE7ZG97Qj1lW24rNippXS9lW24rNipuXSxyPTY7ZG97ZVsobz02LXIpKzYqaV09ZVtvKzYqaV0tZVtvKzYqbl0qQn13aGlsZSgtLXIpfXdoaWxlKGktLSl9d2hpbGUoLS1uKTtuPTI7ZG97Qj0xL2Vbbis2Km5dLHI9Njtkb3tlWyhvPTYtcikrNipuXT1lW28rNipuXSpCfXdoaWxlKC0tcil9d2hpbGUobi0tKTtuPTI7ZG97aT0yO2Rve2lmKG89ZVszK2krNipuXSxpc05hTihvKXx8MS8wPT09byl0aHJvdyJDb3VsZCBub3QgcmV2ZXJzZSEgQT1bIit0aGlzLnRvU3RyaW5nKCkrIl0iO0EuZShuLGksbyl9d2hpbGUoaS0tKX13aGlsZShuLS0pO3JldHVybiBBfSx0LnByb3RvdHlwZS5zZXRSb3RhdGlvbkZyb21RdWF0ZXJuaW9uPWZ1bmN0aW9uKEEpe3ZhciBlPUEueCx0PUEueSxuPUEueixpPUEudyxyPWUrZSxvPXQrdCxzPW4rbixhPWUqcixCPWUqbyxjPWUqcyxnPXQqbyxFPXQqcyxRPW4qcyx1PWkqcixsPWkqbyxoPWkqcyx3PXRoaXMuZWxlbWVudHM7cmV0dXJuIHdbMF09MS0oZytRKSx3WzFdPUItaCx3WzJdPWMrbCx3WzNdPUIraCx3WzRdPTEtKGErUSksd1s1XT1FLXUsd1s2XT1jLWwsd1s3XT1FK3Usd1s4XT0xLShhK2cpLHRoaXN9LHQucHJvdG90eXBlLnRyYW5zcG9zZT1mdW5jdGlvbihBKXtmb3IodmFyIGU9KEE9QXx8bmV3IHQpLmVsZW1lbnRzLG49dGhpcy5lbGVtZW50cyxpPTA7MyE9PWk7aSsrKWZvcih2YXIgcj0wOzMhPT1yO3IrKyllWzMqaStyXT1uWzMqcitpXTtyZXR1cm4gQX19LHsiLi9WZWMzIjozMH1dLDI4OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSxlLHQsbil7dGhpcy54PXZvaWQgMCE9PUE/QTowLHRoaXMueT12b2lkIDAhPT1lP2U6MCx0aGlzLno9dm9pZCAwIT09dD90OjAsdGhpcy53PXZvaWQgMCE9PW4/bjoxfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vVmVjMyIpO3QucHJvdG90eXBlLnNldD1mdW5jdGlvbihBLGUsdCxuKXt0aGlzLng9QSx0aGlzLnk9ZSx0aGlzLno9dCx0aGlzLnc9bn0sdC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy54KyIsIit0aGlzLnkrIiwiK3RoaXMueisiLCIrdGhpcy53fSx0LnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKCl7cmV0dXJuW3RoaXMueCx0aGlzLnksdGhpcy56LHRoaXMud119LHQucHJvdG90eXBlLnNldEZyb21BeGlzQW5nbGU9ZnVuY3Rpb24oQSxlKXt2YXIgdD1NYXRoLnNpbiguNSplKTt0aGlzLng9QS54KnQsdGhpcy55PUEueSp0LHRoaXMuej1BLnoqdCx0aGlzLnc9TWF0aC5jb3MoLjUqZSl9LHQucHJvdG90eXBlLnRvQXhpc0FuZ2xlPWZ1bmN0aW9uKEEpe0E9QXx8bmV3IG4sdGhpcy5ub3JtYWxpemUoKTt2YXIgZT0yKk1hdGguYWNvcyh0aGlzLncpLHQ9TWF0aC5zcXJ0KDEtdGhpcy53KnRoaXMudyk7cmV0dXJuLjAwMT50PyhBLng9dGhpcy54LEEueT10aGlzLnksQS56PXRoaXMueik6KEEueD10aGlzLngvdCxBLnk9dGhpcy55L3QsQS56PXRoaXMuei90KSxbQSxlXX07dmFyIGk9bmV3IG4scj1uZXcgbjt0LnByb3RvdHlwZS5zZXRGcm9tVmVjdG9ycz1mdW5jdGlvbihBLGUpe2lmKEEuaXNBbnRpcGFyYWxsZWxUbyhlKSl7dmFyIHQ9aSxuPXI7QS50YW5nZW50cyh0LG4pLHRoaXMuc2V0RnJvbUF4aXNBbmdsZSh0LE1hdGguUEkpfWVsc2V7dmFyIG89QS5jcm9zcyhlKTt0aGlzLng9by54LHRoaXMueT1vLnksdGhpcy56PW8ueix0aGlzLnc9TWF0aC5zcXJ0KE1hdGgucG93KEEubm9ybSgpLDIpKk1hdGgucG93KGUubm9ybSgpLDIpKStBLmRvdChlKSx0aGlzLm5vcm1hbGl6ZSgpfX07dmFyIG89bmV3IG4scz1uZXcgbixhPW5ldyBuO3QucHJvdG90eXBlLm11bHQ9ZnVuY3Rpb24oQSxlKXtlPWV8fG5ldyB0O3ZhciBuPXRoaXMudyxpPW8scj1zLEI9YTtyZXR1cm4gaS5zZXQodGhpcy54LHRoaXMueSx0aGlzLnopLHIuc2V0KEEueCxBLnksQS56KSxlLnc9bipBLnctaS5kb3QociksaS5jcm9zcyhyLEIpLGUueD1uKnIueCtBLncqaS54K0IueCxlLnk9bipyLnkrQS53KmkueStCLnksZS56PW4qci56K0EudyppLnorQi56LGV9LHQucHJvdG90eXBlLmludmVyc2U9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy54LG49dGhpcy55LGk9dGhpcy56LHI9dGhpcy53O0E9QXx8bmV3IHQsdGhpcy5jb25qdWdhdGUoQSk7dmFyIG89MS8oZSplK24qbitpKmkrcipyKTtyZXR1cm4gQS54Kj1vLEEueSo9byxBLnoqPW8sQS53Kj1vLEF9LHQucHJvdG90eXBlLmNvbmp1Z2F0ZT1mdW5jdGlvbihBKXtyZXR1cm4oQT1BfHxuZXcgdCkueD0tdGhpcy54LEEueT0tdGhpcy55LEEuej0tdGhpcy56LEEudz10aGlzLncsQX0sdC5wcm90b3R5cGUubm9ybWFsaXplPWZ1bmN0aW9uKCl7dmFyIEE9TWF0aC5zcXJ0KHRoaXMueCp0aGlzLngrdGhpcy55KnRoaXMueSt0aGlzLnoqdGhpcy56K3RoaXMudyp0aGlzLncpOzA9PT1BPyh0aGlzLng9MCx0aGlzLnk9MCx0aGlzLno9MCx0aGlzLnc9MCk6KEE9MS9BLHRoaXMueCo9QSx0aGlzLnkqPUEsdGhpcy56Kj1BLHRoaXMudyo9QSl9LHQucHJvdG90eXBlLm5vcm1hbGl6ZUZhc3Q9ZnVuY3Rpb24oKXt2YXIgQT0oMy0odGhpcy54KnRoaXMueCt0aGlzLnkqdGhpcy55K3RoaXMueip0aGlzLnordGhpcy53KnRoaXMudykpLzI7MD09PUE/KHRoaXMueD0wLHRoaXMueT0wLHRoaXMuej0wLHRoaXMudz0wKToodGhpcy54Kj1BLHRoaXMueSo9QSx0aGlzLnoqPUEsdGhpcy53Kj1BKX0sdC5wcm90b3R5cGUudm11bHQ9ZnVuY3Rpb24oQSxlKXtlPWV8fG5ldyBuO3ZhciB0PUEueCxpPUEueSxyPUEueixvPXRoaXMueCxzPXRoaXMueSxhPXRoaXMueixCPXRoaXMudyxjPUIqdCtzKnItYSppLGc9QippK2EqdC1vKnIsRT1CKnIrbyppLXMqdCxRPS1vKnQtcyppLWEqcjtyZXR1cm4gZS54PWMqQitRKi1vK2cqLWEtRSotcyxlLnk9ZypCK1EqLXMrRSotby1jKi1hLGUuej1FKkIrUSotYStjKi1zLWcqLW8sZX0sdC5wcm90b3R5cGUuY29weT1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy54PUEueCx0aGlzLnk9QS55LHRoaXMuej1BLnosdGhpcy53PUEudyx0aGlzfSx0LnByb3RvdHlwZS50b0V1bGVyPWZ1bmN0aW9uKEEsZSl7ZT1lfHwiWVpYIjt2YXIgdCxuLGkscj10aGlzLngsbz10aGlzLnkscz10aGlzLnosYT10aGlzLnc7c3dpdGNoKGUpe2Nhc2UiWVpYIjp2YXIgQj1yKm8rcyphO2lmKEI+LjQ5OSYmKHQ9MipNYXRoLmF0YW4yKHIsYSksbj1NYXRoLlBJLzIsaT0wKSwtLjQ5OT5CJiYodD0tMipNYXRoLmF0YW4yKHIsYSksbj0tTWF0aC5QSS8yLGk9MCksaXNOYU4odCkpe3ZhciBjPXIqcixnPW8qbyxFPXMqczt0PU1hdGguYXRhbjIoMipvKmEtMipyKnMsMS0yKmctMipFKSxuPU1hdGguYXNpbigyKkIpLGk9TWF0aC5hdGFuMigyKnIqYS0yKm8qcywxLTIqYy0yKkUpfWJyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJFdWxlciBvcmRlciAiK2UrIiBub3Qgc3VwcG9ydGVkIHlldC4iKX1BLnk9dCxBLno9bixBLng9aX0sdC5wcm90b3R5cGUuc2V0RnJvbUV1bGVyPWZ1bmN0aW9uKEEsZSx0LG4pe249bnx8IlhZWiI7dmFyIGk9TWF0aC5jb3MoQS8yKSxyPU1hdGguY29zKGUvMiksbz1NYXRoLmNvcyh0LzIpLHM9TWF0aC5zaW4oQS8yKSxhPU1hdGguc2luKGUvMiksQj1NYXRoLnNpbih0LzIpO3JldHVybiJYWVoiPT09bj8odGhpcy54PXMqcipvK2kqYSpCLHRoaXMueT1pKmEqby1zKnIqQix0aGlzLno9aSpyKkIrcyphKm8sdGhpcy53PWkqcipvLXMqYSpCKToiWVhaIj09PW4/KHRoaXMueD1zKnIqbytpKmEqQix0aGlzLnk9aSphKm8tcypyKkIsdGhpcy56PWkqcipCLXMqYSpvLHRoaXMudz1pKnIqbytzKmEqQik6IlpYWSI9PT1uPyh0aGlzLng9cypyKm8taSphKkIsdGhpcy55PWkqYSpvK3MqcipCLHRoaXMuej1pKnIqQitzKmEqbyx0aGlzLnc9aSpyKm8tcyphKkIpOiJaWVgiPT09bj8odGhpcy54PXMqcipvLWkqYSpCLHRoaXMueT1pKmEqbytzKnIqQix0aGlzLno9aSpyKkItcyphKm8sdGhpcy53PWkqcipvK3MqYSpCKToiWVpYIj09PW4/KHRoaXMueD1zKnIqbytpKmEqQix0aGlzLnk9aSphKm8rcypyKkIsdGhpcy56PWkqcipCLXMqYSpvLHRoaXMudz1pKnIqby1zKmEqQik6IlhaWSI9PT1uJiYodGhpcy54PXMqcipvLWkqYSpCLHRoaXMueT1pKmEqby1zKnIqQix0aGlzLno9aSpyKkIrcyphKm8sdGhpcy53PWkqcipvK3MqYSpCKSx0aGlzfSx0LnByb3RvdHlwZS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgdCh0aGlzLngsdGhpcy55LHRoaXMueix0aGlzLncpfX0seyIuL1ZlYzMiOjMwfV0sMjk6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXtBPUF8fHt9LHRoaXMucG9zaXRpb249bmV3IG4sQS5wb3NpdGlvbiYmdGhpcy5wb3NpdGlvbi5jb3B5KEEucG9zaXRpb24pLHRoaXMucXVhdGVybmlvbj1uZXcgaSxBLnF1YXRlcm5pb24mJnRoaXMucXVhdGVybmlvbi5jb3B5KEEucXVhdGVybmlvbil9dmFyIG49QSgiLi9WZWMzIiksaT1BKCIuL1F1YXRlcm5pb24iKTtlLmV4cG9ydHM9dDt2YXIgcj1uZXcgaTt0LnBvaW50VG9Mb2NhbEZyYW1lPWZ1bmN0aW9uKEEsZSx0LGkpe3JldHVybiBpPWl8fG5ldyBuLHQudnN1YihBLGkpLGUuY29uanVnYXRlKHIpLHIudm11bHQoaSxpKSxpfSx0LnByb3RvdHlwZS5wb2ludFRvTG9jYWw9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdC5wb2ludFRvTG9jYWxGcmFtZSh0aGlzLnBvc2l0aW9uLHRoaXMucXVhdGVybmlvbixBLGUpfSx0LnBvaW50VG9Xb3JsZEZyYW1lPWZ1bmN0aW9uKEEsZSx0LGkpe3JldHVybiBpPWl8fG5ldyBuLGUudm11bHQodCxpKSxpLnZhZGQoQSxpKSxpfSx0LnByb3RvdHlwZS5wb2ludFRvV29ybGQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdC5wb2ludFRvV29ybGRGcmFtZSh0aGlzLnBvc2l0aW9uLHRoaXMucXVhdGVybmlvbixBLGUpfSx0LnByb3RvdHlwZS52ZWN0b3JUb1dvcmxkRnJhbWU9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZT1lfHxuZXcgbix0aGlzLnF1YXRlcm5pb24udm11bHQoQSxlKSxlfSx0LnZlY3RvclRvV29ybGRGcmFtZT1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIEEudm11bHQoZSx0KSx0fSx0LnZlY3RvclRvTG9jYWxGcmFtZT1mdW5jdGlvbihBLGUsdCxpKXtyZXR1cm4gaT1pfHxuZXcgbixlLncqPS0xLGUudm11bHQodCxpKSxlLncqPS0xLGl9fSx7Ii4vUXVhdGVybmlvbiI6MjgsIi4vVmVjMyI6MzB9XSwzMDpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXt0aGlzLng9QXx8MCx0aGlzLnk9ZXx8MCx0aGlzLno9dHx8MH1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuL01hdDMiKTt0LlpFUk89bmV3IHQoMCwwLDApLHQuVU5JVF9YPW5ldyB0KDEsMCwwKSx0LlVOSVRfWT1uZXcgdCgwLDEsMCksdC5VTklUX1o9bmV3IHQoMCwwLDEpLHQucHJvdG90eXBlLmNyb3NzPWZ1bmN0aW9uKEEsZSl7dmFyIG49QS54LGk9QS55LHI9QS56LG89dGhpcy54LHM9dGhpcy55LGE9dGhpcy56O3JldHVybihlPWV8fG5ldyB0KS54PXMqci1hKmksZS55PWEqbi1vKnIsZS56PW8qaS1zKm4sZX0sdC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKEEsZSx0KXtyZXR1cm4gdGhpcy54PUEsdGhpcy55PWUsdGhpcy56PXQsdGhpc30sdC5wcm90b3R5cGUuc2V0WmVybz1mdW5jdGlvbigpe3RoaXMueD10aGlzLnk9dGhpcy56PTB9LHQucHJvdG90eXBlLnZhZGQ9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZT8oZS54PUEueCt0aGlzLngsZS55PUEueSt0aGlzLnksdm9pZChlLno9QS56K3RoaXMueikpOm5ldyB0KHRoaXMueCtBLngsdGhpcy55K0EueSx0aGlzLnorQS56KX0sdC5wcm90b3R5cGUudnN1Yj1mdW5jdGlvbihBLGUpe3JldHVybiBlPyhlLng9dGhpcy54LUEueCxlLnk9dGhpcy55LUEueSx2b2lkKGUuej10aGlzLnotQS56KSk6bmV3IHQodGhpcy54LUEueCx0aGlzLnktQS55LHRoaXMuei1BLnopfSx0LnByb3RvdHlwZS5jcm9zc21hdD1mdW5jdGlvbigpe3JldHVybiBuZXcgbihbMCwtdGhpcy56LHRoaXMueSx0aGlzLnosMCwtdGhpcy54LC10aGlzLnksdGhpcy54LDBdKX0sdC5wcm90b3R5cGUubm9ybWFsaXplPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy54LGU9dGhpcy55LHQ9dGhpcy56LG49TWF0aC5zcXJ0KEEqQStlKmUrdCp0KTtpZihuPjApe3ZhciBpPTEvbjt0aGlzLngqPWksdGhpcy55Kj1pLHRoaXMueio9aX1lbHNlIHRoaXMueD0wLHRoaXMueT0wLHRoaXMuej0wO3JldHVybiBufSx0LnByb3RvdHlwZS51bml0PWZ1bmN0aW9uKEEpe0E9QXx8bmV3IHQ7dmFyIGU9dGhpcy54LG49dGhpcy55LGk9dGhpcy56LHI9TWF0aC5zcXJ0KGUqZStuKm4raSppKTtyZXR1cm4gcj4wPyhyPTEvcixBLng9ZSpyLEEueT1uKnIsQS56PWkqcik6KEEueD0xLEEueT0wLEEuej0wKSxBfSx0LnByb3RvdHlwZS5ub3JtPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy54LGU9dGhpcy55LHQ9dGhpcy56O3JldHVybiBNYXRoLnNxcnQoQSpBK2UqZSt0KnQpfSx0LnByb3RvdHlwZS5sZW5ndGg9dC5wcm90b3R5cGUubm9ybSx0LnByb3RvdHlwZS5ub3JtMj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmRvdCh0aGlzKX0sdC5wcm90b3R5cGUubGVuZ3RoU3F1YXJlZD10LnByb3RvdHlwZS5ub3JtMix0LnByb3RvdHlwZS5kaXN0YW5jZVRvPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMueCx0PXRoaXMueSxuPXRoaXMueixpPUEueCxyPUEueSxvPUEuejtyZXR1cm4gTWF0aC5zcXJ0KChpLWUpKihpLWUpKyhyLXQpKihyLXQpKyhvLW4pKihvLW4pKX0sdC5wcm90b3R5cGUuZGlzdGFuY2VTcXVhcmVkPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMueCx0PXRoaXMueSxuPXRoaXMueixpPUEueCxyPUEueSxvPUEuejtyZXR1cm4oaS1lKSooaS1lKSsoci10KSooci10KSsoby1uKSooby1uKX0sdC5wcm90b3R5cGUubXVsdD1mdW5jdGlvbihBLGUpe2U9ZXx8bmV3IHQ7dmFyIG49dGhpcy54LGk9dGhpcy55LHI9dGhpcy56O3JldHVybiBlLng9QSpuLGUueT1BKmksZS56PUEqcixlfSx0LnByb3RvdHlwZS5zY2FsZT10LnByb3RvdHlwZS5tdWx0LHQucHJvdG90eXBlLmRvdD1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy54KkEueCt0aGlzLnkqQS55K3RoaXMueipBLnp9LHQucHJvdG90eXBlLmlzWmVybz1mdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy54JiYwPT09dGhpcy55JiYwPT09dGhpcy56fSx0LnByb3RvdHlwZS5uZWdhdGU9ZnVuY3Rpb24oQSl7cmV0dXJuKEE9QXx8bmV3IHQpLng9LXRoaXMueCxBLnk9LXRoaXMueSxBLno9LXRoaXMueixBfTt2YXIgaT1uZXcgdCxyPW5ldyB0O3QucHJvdG90eXBlLnRhbmdlbnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy5ub3JtKCk7aWYodD4wKXt2YXIgbj1pLG89MS90O24uc2V0KHRoaXMueCpvLHRoaXMueSpvLHRoaXMueipvKTt2YXIgcz1yO01hdGguYWJzKG4ueCk8Ljk/KHMuc2V0KDEsMCwwKSxuLmNyb3NzKHMsQSkpOihzLnNldCgwLDEsMCksbi5jcm9zcyhzLEEpKSxuLmNyb3NzKEEsZSl9ZWxzZSBBLnNldCgxLDAsMCksZS5zZXQoMCwxLDApfSx0LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLngrIiwiK3RoaXMueSsiLCIrdGhpcy56fSx0LnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKCl7cmV0dXJuW3RoaXMueCx0aGlzLnksdGhpcy56XX0sdC5wcm90b3R5cGUuY29weT1mdW5jdGlvbihBKXtyZXR1cm4gdGhpcy54PUEueCx0aGlzLnk9QS55LHRoaXMuej1BLnosdGhpc30sdC5wcm90b3R5cGUubGVycD1mdW5jdGlvbihBLGUsdCl7dmFyIG49dGhpcy54LGk9dGhpcy55LHI9dGhpcy56O3QueD1uKyhBLngtbikqZSx0Lnk9aSsoQS55LWkpKmUsdC56PXIrKEEuei1yKSplfSx0LnByb3RvdHlwZS5hbG1vc3RFcXVhbHM9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdm9pZCAwPT09ZSYmKGU9MWUtNiksIShNYXRoLmFicyh0aGlzLngtQS54KT5lfHxNYXRoLmFicyh0aGlzLnktQS55KT5lfHxNYXRoLmFicyh0aGlzLnotQS56KT5lKX0sdC5wcm90b3R5cGUuYWxtb3N0WmVybz1mdW5jdGlvbihBKXtyZXR1cm4gdm9pZCAwPT09QSYmKEE9MWUtNiksIShNYXRoLmFicyh0aGlzLngpPkF8fE1hdGguYWJzKHRoaXMueSk+QXx8TWF0aC5hYnModGhpcy56KT5BKX07dmFyIG89bmV3IHQ7dC5wcm90b3R5cGUuaXNBbnRpcGFyYWxsZWxUbz1mdW5jdGlvbihBLGUpe3JldHVybiB0aGlzLm5lZ2F0ZShvKSxvLmFsbW9zdEVxdWFscyhBLGUpfSx0LnByb3RvdHlwZS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgdCh0aGlzLngsdGhpcy55LHRoaXMueil9fSx7Ii4vTWF0MyI6Mjd9XSwzMTpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEpe0E9QXx8e30sbi5hcHBseSh0aGlzKSx0aGlzLmlkPXQuaWRDb3VudGVyKyssdGhpcy53b3JsZD1udWxsLHRoaXMucHJlU3RlcD1udWxsLHRoaXMucG9zdFN0ZXA9bnVsbCx0aGlzLnZsYW1iZGE9bmV3IGksdGhpcy5jb2xsaXNpb25GaWx0ZXJHcm91cD0ibnVtYmVyIj09dHlwZW9mIEEuY29sbGlzaW9uRmlsdGVyR3JvdXA/QS5jb2xsaXNpb25GaWx0ZXJHcm91cDoxLHRoaXMuY29sbGlzaW9uRmlsdGVyTWFzaz0ibnVtYmVyIj09dHlwZW9mIEEuY29sbGlzaW9uRmlsdGVyTWFzaz9BLmNvbGxpc2lvbkZpbHRlck1hc2s6MSx0aGlzLmNvbGxpc2lvblJlc3BvbnNlPSEwLHRoaXMucG9zaXRpb249bmV3IGksQS5wb3NpdGlvbiYmdGhpcy5wb3NpdGlvbi5jb3B5KEEucG9zaXRpb24pLHRoaXMucHJldmlvdXNQb3NpdGlvbj1uZXcgaSx0aGlzLmluaXRQb3NpdGlvbj1uZXcgaSx0aGlzLnZlbG9jaXR5PW5ldyBpLEEudmVsb2NpdHkmJnRoaXMudmVsb2NpdHkuY29weShBLnZlbG9jaXR5KSx0aGlzLmluaXRWZWxvY2l0eT1uZXcgaSx0aGlzLmZvcmNlPW5ldyBpO3ZhciBlPSJudW1iZXIiPT10eXBlb2YgQS5tYXNzP0EubWFzczowO3RoaXMubWFzcz1lLHRoaXMuaW52TWFzcz1lPjA/MS9lOjAsdGhpcy5tYXRlcmlhbD1BLm1hdGVyaWFsfHxudWxsLHRoaXMubGluZWFyRGFtcGluZz0ibnVtYmVyIj09dHlwZW9mIEEubGluZWFyRGFtcGluZz9BLmxpbmVhckRhbXBpbmc6LjAxLHRoaXMudHlwZT0wPj1lP3QuU1RBVElDOnQuRFlOQU1JQyx0eXBlb2YgQS50eXBlPT10eXBlb2YgdC5TVEFUSUMmJih0aGlzLnR5cGU9QS50eXBlKSx0aGlzLmFsbG93U2xlZXA9dm9pZCAwPT09QS5hbGxvd1NsZWVwfHxBLmFsbG93U2xlZXAsdGhpcy5zbGVlcFN0YXRlPTAsdGhpcy5zbGVlcFNwZWVkTGltaXQ9dm9pZCAwIT09QS5zbGVlcFNwZWVkTGltaXQ/QS5zbGVlcFNwZWVkTGltaXQ6LjEsdGhpcy5zbGVlcFRpbWVMaW1pdD12b2lkIDAhPT1BLnNsZWVwVGltZUxpbWl0P0Euc2xlZXBUaW1lTGltaXQ6MSx0aGlzLnRpbWVMYXN0U2xlZXB5PTAsdGhpcy5fd2FrZVVwQWZ0ZXJOYXJyb3dwaGFzZT0hMSx0aGlzLnRvcnF1ZT1uZXcgaSx0aGlzLnF1YXRlcm5pb249bmV3IG8sQS5xdWF0ZXJuaW9uJiZ0aGlzLnF1YXRlcm5pb24uY29weShBLnF1YXRlcm5pb24pLHRoaXMuaW5pdFF1YXRlcm5pb249bmV3IG8sdGhpcy5hbmd1bGFyVmVsb2NpdHk9bmV3IGksQS5hbmd1bGFyVmVsb2NpdHkmJnRoaXMuYW5ndWxhclZlbG9jaXR5LmNvcHkoQS5hbmd1bGFyVmVsb2NpdHkpLHRoaXMuaW5pdEFuZ3VsYXJWZWxvY2l0eT1uZXcgaSx0aGlzLmludGVycG9sYXRlZFBvc2l0aW9uPW5ldyBpLHRoaXMuaW50ZXJwb2xhdGVkUXVhdGVybmlvbj1uZXcgbyx0aGlzLnNoYXBlcz1bXSx0aGlzLnNoYXBlT2Zmc2V0cz1bXSx0aGlzLnNoYXBlT3JpZW50YXRpb25zPVtdLHRoaXMuaW5lcnRpYT1uZXcgaSx0aGlzLmludkluZXJ0aWE9bmV3IGksdGhpcy5pbnZJbmVydGlhV29ybGQ9bmV3IHIsdGhpcy5pbnZNYXNzU29sdmU9MCx0aGlzLmludkluZXJ0aWFTb2x2ZT1uZXcgaSx0aGlzLmludkluZXJ0aWFXb3JsZFNvbHZlPW5ldyByLHRoaXMuZml4ZWRSb3RhdGlvbj12b2lkIDAhPT1BLmZpeGVkUm90YXRpb24mJkEuZml4ZWRSb3RhdGlvbix0aGlzLmFuZ3VsYXJEYW1waW5nPXZvaWQgMCE9PUEuYW5ndWxhckRhbXBpbmc/QS5hbmd1bGFyRGFtcGluZzouMDEsdGhpcy5hYWJiPW5ldyBzLHRoaXMuYWFiYk5lZWRzVXBkYXRlPSEwLHRoaXMud2xhbWJkYT1uZXcgaSxBLnNoYXBlJiZ0aGlzLmFkZFNoYXBlKEEuc2hhcGUpLHRoaXMudXBkYXRlTWFzc1Byb3BlcnRpZXMoKX1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuLi91dGlscy9FdmVudFRhcmdldCIpLGk9KEEoIi4uL3NoYXBlcy9TaGFwZSIpLEEoIi4uL21hdGgvVmVjMyIpKSxyPUEoIi4uL21hdGgvTWF0MyIpLG89QSgiLi4vbWF0aC9RdWF0ZXJuaW9uIikscz0oQSgiLi4vbWF0ZXJpYWwvTWF0ZXJpYWwiKSxBKCIuLi9jb2xsaXNpb24vQUFCQiIpKSxhPUEoIi4uL3NoYXBlcy9Cb3giKTt0LnByb3RvdHlwZT1uZXcgbix0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10LHQuRFlOQU1JQz0xLHQuU1RBVElDPTIsdC5LSU5FTUFUSUM9NCx0LkFXQUtFPTAsdC5TTEVFUFk9MSx0LlNMRUVQSU5HPTIsdC5pZENvdW50ZXI9MCx0LnByb3RvdHlwZS53YWtlVXA9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLnNsZWVwU3RhdGU7dGhpcy5zbGVlcFN0YXRlPTAsQT09PXQuU0xFRVBJTkcmJnRoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToid2FrZXVwIn0pfSx0LnByb3RvdHlwZS5zbGVlcD1mdW5jdGlvbigpe3RoaXMuc2xlZXBTdGF0ZT10LlNMRUVQSU5HLHRoaXMudmVsb2NpdHkuc2V0KDAsMCwwKSx0aGlzLmFuZ3VsYXJWZWxvY2l0eS5zZXQoMCwwLDApfSx0LnNsZWVweUV2ZW50PXt0eXBlOiJzbGVlcHkifSx0LnNsZWVwRXZlbnQ9e3R5cGU6InNsZWVwIn0sdC5wcm90b3R5cGUuc2xlZXBUaWNrPWZ1bmN0aW9uKEEpe2lmKHRoaXMuYWxsb3dTbGVlcCl7dmFyIGU9dGhpcy5zbGVlcFN0YXRlLG49dGhpcy52ZWxvY2l0eS5ub3JtMigpK3RoaXMuYW5ndWxhclZlbG9jaXR5Lm5vcm0yKCksaT1NYXRoLnBvdyh0aGlzLnNsZWVwU3BlZWRMaW1pdCwyKTtlPT09dC5BV0FLRSYmaT5uPyh0aGlzLnNsZWVwU3RhdGU9dC5TTEVFUFksdGhpcy50aW1lTGFzdFNsZWVweT1BLHRoaXMuZGlzcGF0Y2hFdmVudCh0LnNsZWVweUV2ZW50KSk6ZT09PXQuU0xFRVBZJiZuPmk/dGhpcy53YWtlVXAoKTplPT09dC5TTEVFUFkmJkEtdGhpcy50aW1lTGFzdFNsZWVweT50aGlzLnNsZWVwVGltZUxpbWl0JiYodGhpcy5zbGVlcCgpLHRoaXMuZGlzcGF0Y2hFdmVudCh0LnNsZWVwRXZlbnQpKX19LHQucHJvdG90eXBlLnVwZGF0ZVNvbHZlTWFzc1Byb3BlcnRpZXM9ZnVuY3Rpb24oKXt0aGlzLnNsZWVwU3RhdGU9PT10LlNMRUVQSU5HfHx0aGlzLnR5cGU9PT10LktJTkVNQVRJQz8odGhpcy5pbnZNYXNzU29sdmU9MCx0aGlzLmludkluZXJ0aWFTb2x2ZS5zZXRaZXJvKCksdGhpcy5pbnZJbmVydGlhV29ybGRTb2x2ZS5zZXRaZXJvKCkpOih0aGlzLmludk1hc3NTb2x2ZT10aGlzLmludk1hc3MsdGhpcy5pbnZJbmVydGlhU29sdmUuY29weSh0aGlzLmludkluZXJ0aWEpLHRoaXMuaW52SW5lcnRpYVdvcmxkU29sdmUuY29weSh0aGlzLmludkluZXJ0aWFXb3JsZCkpfSx0LnByb3RvdHlwZS5wb2ludFRvTG9jYWxGcmFtZT1mdW5jdGlvbihBLGUpe3JldHVybiBlPWV8fG5ldyBpLEEudnN1Yih0aGlzLnBvc2l0aW9uLGUpLHRoaXMucXVhdGVybmlvbi5jb25qdWdhdGUoKS52bXVsdChlLGUpLGV9LHQucHJvdG90eXBlLnZlY3RvclRvTG9jYWxGcmFtZT1mdW5jdGlvbihBLGUpe3JldHVybiBlPWV8fG5ldyBpLHRoaXMucXVhdGVybmlvbi5jb25qdWdhdGUoKS52bXVsdChBLGUpLGV9LHQucHJvdG90eXBlLnBvaW50VG9Xb3JsZEZyYW1lPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGU9ZXx8bmV3IGksdGhpcy5xdWF0ZXJuaW9uLnZtdWx0KEEsZSksZS52YWRkKHRoaXMucG9zaXRpb24sZSksZX0sdC5wcm90b3R5cGUudmVjdG9yVG9Xb3JsZEZyYW1lPWZ1bmN0aW9uKEEsZSl7cmV0dXJuIGU9ZXx8bmV3IGksdGhpcy5xdWF0ZXJuaW9uLnZtdWx0KEEsZSksZX07dmFyIEI9bmV3IGksYz1uZXcgbzt0LnByb3RvdHlwZS5hZGRTaGFwZT1mdW5jdGlvbihBLGUsdCl7dmFyIG49bmV3IGkscj1uZXcgbztyZXR1cm4gZSYmbi5jb3B5KGUpLHQmJnIuY29weSh0KSx0aGlzLnNoYXBlcy5wdXNoKEEpLHRoaXMuc2hhcGVPZmZzZXRzLnB1c2gobiksdGhpcy5zaGFwZU9yaWVudGF0aW9ucy5wdXNoKHIpLHRoaXMudXBkYXRlTWFzc1Byb3BlcnRpZXMoKSx0aGlzLnVwZGF0ZUJvdW5kaW5nUmFkaXVzKCksdGhpcy5hYWJiTmVlZHNVcGRhdGU9ITAsdGhpc30sdC5wcm90b3R5cGUudXBkYXRlQm91bmRpbmdSYWRpdXM9ZnVuY3Rpb24oKXtmb3IodmFyIEE9dGhpcy5zaGFwZXMsZT10aGlzLnNoYXBlT2Zmc2V0cyx0PUEubGVuZ3RoLG49MCxpPTA7aSE9PXQ7aSsrKXt2YXIgcj1BW2ldO3IudXBkYXRlQm91bmRpbmdTcGhlcmVSYWRpdXMoKTt2YXIgbz1lW2ldLm5vcm0oKSxzPXIuYm91bmRpbmdTcGhlcmVSYWRpdXM7bytzPm4mJihuPW8rcyl9dGhpcy5ib3VuZGluZ1JhZGl1cz1ufTt2YXIgZz1uZXcgczt0LnByb3RvdHlwZS5jb21wdXRlQUFCQj1mdW5jdGlvbigpe2Zvcih2YXIgQT10aGlzLnNoYXBlcyxlPXRoaXMuc2hhcGVPZmZzZXRzLHQ9dGhpcy5zaGFwZU9yaWVudGF0aW9ucyxuPUEubGVuZ3RoLGk9QixyPWMsbz10aGlzLnF1YXRlcm5pb24scz10aGlzLmFhYmIsYT1nLEU9MDtFIT09bjtFKyspe3ZhciBRPUFbRV07dFtFXS5tdWx0KG8sciksci52bXVsdChlW0VdLGkpLGkudmFkZCh0aGlzLnBvc2l0aW9uLGkpLFEuY2FsY3VsYXRlV29ybGRBQUJCKGkscixhLmxvd2VyQm91bmQsYS51cHBlckJvdW5kKSwwPT09RT9zLmNvcHkoYSk6cy5leHRlbmQoYSl9dGhpcy5hYWJiTmVlZHNVcGRhdGU9ITF9O3ZhciBFPW5ldyByLFE9bmV3IHI7bmV3IHIsdC5wcm90b3R5cGUudXBkYXRlSW5lcnRpYVdvcmxkPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuaW52SW5lcnRpYTtpZihlLnghPT1lLnl8fGUueSE9PWUuenx8QSl7dmFyIHQ9RSxuPVE7dC5zZXRSb3RhdGlvbkZyb21RdWF0ZXJuaW9uKHRoaXMucXVhdGVybmlvbiksdC50cmFuc3Bvc2UobiksdC5zY2FsZShlLHQpLHQubW11bHQobix0aGlzLmludkluZXJ0aWFXb3JsZCl9fTt2YXIgdT1uZXcgaSxsPW5ldyBpO3QucHJvdG90eXBlLmFwcGx5Rm9yY2U9ZnVuY3Rpb24oQSxlKXtpZih0aGlzLnR5cGU9PT10LkRZTkFNSUMpe3ZhciBuPXU7ZS52c3ViKHRoaXMucG9zaXRpb24sbik7dmFyIGk9bDtuLmNyb3NzKEEsaSksdGhpcy5mb3JjZS52YWRkKEEsdGhpcy5mb3JjZSksdGhpcy50b3JxdWUudmFkZChpLHRoaXMudG9ycXVlKX19O3ZhciBoPW5ldyBpLHc9bmV3IGk7dC5wcm90b3R5cGUuYXBwbHlMb2NhbEZvcmNlPWZ1bmN0aW9uKEEsZSl7aWYodGhpcy50eXBlPT09dC5EWU5BTUlDKXt2YXIgbj1oLGk9dzt0aGlzLnZlY3RvclRvV29ybGRGcmFtZShBLG4pLHRoaXMucG9pbnRUb1dvcmxkRnJhbWUoZSxpKSx0aGlzLmFwcGx5Rm9yY2UobixpKX19O3ZhciBDPW5ldyBpLEk9bmV3IGksTT1uZXcgaTt0LnByb3RvdHlwZS5hcHBseUltcHVsc2U9ZnVuY3Rpb24oQSxlKXtpZih0aGlzLnR5cGU9PT10LkRZTkFNSUMpe3ZhciBuPUM7ZS52c3ViKHRoaXMucG9zaXRpb24sbik7dmFyIGk9STtpLmNvcHkoQSksaS5tdWx0KHRoaXMuaW52TWFzcyxpKSx0aGlzLnZlbG9jaXR5LnZhZGQoaSx0aGlzLnZlbG9jaXR5KTt2YXIgcj1NO24uY3Jvc3MoQSxyKSx0aGlzLmludkluZXJ0aWFXb3JsZC52bXVsdChyLHIpLHRoaXMuYW5ndWxhclZlbG9jaXR5LnZhZGQocix0aGlzLmFuZ3VsYXJWZWxvY2l0eSl9fTt2YXIgZD1uZXcgaSxwPW5ldyBpO3QucHJvdG90eXBlLmFwcGx5TG9jYWxJbXB1bHNlPWZ1bmN0aW9uKEEsZSl7aWYodGhpcy50eXBlPT09dC5EWU5BTUlDKXt2YXIgbj1kLGk9cDt0aGlzLnZlY3RvclRvV29ybGRGcmFtZShBLG4pLHRoaXMucG9pbnRUb1dvcmxkRnJhbWUoZSxpKSx0aGlzLmFwcGx5SW1wdWxzZShuLGkpfX07dmFyIG09bmV3IGk7dC5wcm90b3R5cGUudXBkYXRlTWFzc1Byb3BlcnRpZXM9ZnVuY3Rpb24oKXt2YXIgQT1tO3RoaXMuaW52TWFzcz10aGlzLm1hc3M+MD8xL3RoaXMubWFzczowO3ZhciBlPXRoaXMuaW5lcnRpYSx0PXRoaXMuZml4ZWRSb3RhdGlvbjt0aGlzLmNvbXB1dGVBQUJCKCksQS5zZXQoKHRoaXMuYWFiYi51cHBlckJvdW5kLngtdGhpcy5hYWJiLmxvd2VyQm91bmQueCkvMiwodGhpcy5hYWJiLnVwcGVyQm91bmQueS10aGlzLmFhYmIubG93ZXJCb3VuZC55KS8yLCh0aGlzLmFhYmIudXBwZXJCb3VuZC56LXRoaXMuYWFiYi5sb3dlckJvdW5kLnopLzIpLGEuY2FsY3VsYXRlSW5lcnRpYShBLHRoaXMubWFzcyxlKSx0aGlzLmludkluZXJ0aWEuc2V0KGUueD4wJiYhdD8xL2UueDowLGUueT4wJiYhdD8xL2UueTowLGUuej4wJiYhdD8xL2UuejowKSx0aGlzLnVwZGF0ZUluZXJ0aWFXb3JsZCghMCl9LHQucHJvdG90eXBlLmdldFZlbG9jaXR5QXRXb3JsZFBvaW50PWZ1bmN0aW9uKEEsZSl7dmFyIHQ9bmV3IGk7cmV0dXJuIEEudnN1Yih0aGlzLnBvc2l0aW9uLHQpLHRoaXMuYW5ndWxhclZlbG9jaXR5LmNyb3NzKHQsZSksdGhpcy52ZWxvY2l0eS52YWRkKGUsZSksZX19LHsiLi4vY29sbGlzaW9uL0FBQkIiOjMsIi4uL21hdGVyaWFsL01hdGVyaWFsIjoyNSwiLi4vbWF0aC9NYXQzIjoyNywiLi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi4vbWF0aC9WZWMzIjozMCwiLi4vc2hhcGVzL0JveCI6MzcsIi4uL3NoYXBlcy9TaGFwZSI6NDMsIi4uL3V0aWxzL0V2ZW50VGFyZ2V0Ijo0OX1dLDMyOltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSl7dGhpcy5jaGFzc2lzQm9keT1BLmNoYXNzaXNCb2R5LHRoaXMud2hlZWxJbmZvcz1bXSx0aGlzLnNsaWRpbmc9ITEsdGhpcy53b3JsZD1udWxsLHRoaXMuaW5kZXhSaWdodEF4aXM9dm9pZCAwIT09QS5pbmRleFJpZ2h0QXhpcz9BLmluZGV4UmlnaHRBeGlzOjEsdGhpcy5pbmRleEZvcndhcmRBeGlzPXZvaWQgMCE9PUEuaW5kZXhGb3J3YXJkQXhpcz9BLmluZGV4Rm9yd2FyZEF4aXM6MCx0aGlzLmluZGV4VXBBeGlzPXZvaWQgMCE9PUEuaW5kZXhVcEF4aXM/QS5pbmRleFVwQXhpczoyfWZ1bmN0aW9uIG4oQSxlLHQsbixyKXt2YXIgbz0wLHM9dCxhPUksQj1NLGM9ZDtyZXR1cm4gQS5nZXRWZWxvY2l0eUF0V29ybGRQb2ludChzLGEpLGUuZ2V0VmVsb2NpdHlBdFdvcmxkUG9pbnQocyxCKSxhLnZzdWIoQixjKSwobz0tbi5kb3QoYykqKDEvKGkoQSx0LG4pK2koZSx0LG4pKSkpPnImJihvPXIpLC1yPm8mJihvPS1yKSxvfWZ1bmN0aW9uIGkoQSxlLHQpe3ZhciBuPXAsaT1tLHI9RixvPUQ7cmV0dXJuIGUudnN1YihBLnBvc2l0aW9uLG4pLG4uY3Jvc3ModCxpKSxBLmludkluZXJ0aWFXb3JsZC52bXVsdChpLG8pLG8uY3Jvc3MobixyKSxBLmludk1hc3MrdC5kb3Qocil9ZnVuY3Rpb24gcihBLGUsdCxuLGkscil7aWYoaS5ub3JtMigpPjEuMSlyZXR1cm4gMDt2YXIgbz1ZLHM9ZixhPU47cmV0dXJuIEEuZ2V0VmVsb2NpdHlBdFdvcmxkUG9pbnQoZSxvKSx0LmdldFZlbG9jaXR5QXRXb3JsZFBvaW50KG4scyksby52c3ViKHMsYSksLS4yKmkuZG90KGEpKigxLyhBLmludk1hc3MrdC5pbnZNYXNzKSl9dmFyIG89KEEoIi4vQm9keSIpLEEoIi4uL21hdGgvVmVjMyIpKSxzPUEoIi4uL21hdGgvUXVhdGVybmlvbiIpLGE9KEEoIi4uL2NvbGxpc2lvbi9SYXljYXN0UmVzdWx0IiksQSgiLi4vY29sbGlzaW9uL1JheSIpKSxCPUEoIi4uL29iamVjdHMvV2hlZWxJbmZvIik7ZS5leHBvcnRzPXQ7dmFyIGM9KG5ldyBvLG5ldyBvLG5ldyBvLG5ldyBvKSxnPW5ldyBvLEU9bmV3IG87bmV3IGEsdC5wcm90b3R5cGUuYWRkV2hlZWw9ZnVuY3Rpb24oQSl7dmFyIGU9bmV3IEIoQT1BfHx7fSksdD10aGlzLndoZWVsSW5mb3MubGVuZ3RoO3JldHVybiB0aGlzLndoZWVsSW5mb3MucHVzaChlKSx0fSx0LnByb3RvdHlwZS5zZXRTdGVlcmluZ1ZhbHVlPWZ1bmN0aW9uKEEsZSl7dGhpcy53aGVlbEluZm9zW2VdLnN0ZWVyaW5nPUF9LG5ldyBvLHQucHJvdG90eXBlLmFwcGx5RW5naW5lRm9yY2U9ZnVuY3Rpb24oQSxlKXt0aGlzLndoZWVsSW5mb3NbZV0uZW5naW5lRm9yY2U9QX0sdC5wcm90b3R5cGUuc2V0QnJha2U9ZnVuY3Rpb24oQSxlKXt0aGlzLndoZWVsSW5mb3NbZV0uYnJha2U9QX0sdC5wcm90b3R5cGUuYWRkVG9Xb3JsZD1mdW5jdGlvbihBKXt0aGlzLmNvbnN0cmFpbnRzLEEuYWRkKHRoaXMuY2hhc3Npc0JvZHkpO3ZhciBlPXRoaXM7dGhpcy5wcmVTdGVwQ2FsbGJhY2s9ZnVuY3Rpb24oKXtlLnVwZGF0ZVZlaGljbGUoQS5kdCl9LEEuYWRkRXZlbnRMaXN0ZW5lcigicHJlU3RlcCIsdGhpcy5wcmVTdGVwQ2FsbGJhY2spLHRoaXMud29ybGQ9QX0sdC5wcm90b3R5cGUuZ2V0VmVoaWNsZUF4aXNXb3JsZD1mdW5jdGlvbihBLGUpe2Uuc2V0KDA9PT1BPzE6MCwxPT09QT8xOjAsMj09PUE/MTowKSx0aGlzLmNoYXNzaXNCb2R5LnZlY3RvclRvV29ybGRGcmFtZShlLGUpfSx0LnByb3RvdHlwZS51cGRhdGVWZWhpY2xlPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT10aGlzLndoZWVsSW5mb3MsdD1lLmxlbmd0aCxuPXRoaXMuY2hhc3Npc0JvZHksaT0wO3Q+aTtpKyspdGhpcy51cGRhdGVXaGVlbFRyYW5zZm9ybShpKTt0aGlzLmN1cnJlbnRWZWhpY2xlU3BlZWRLbUhvdXI9My42Km4udmVsb2NpdHkubm9ybSgpO3ZhciByPW5ldyBvO2Zvcih0aGlzLmdldFZlaGljbGVBeGlzV29ybGQodGhpcy5pbmRleEZvcndhcmRBeGlzLHIpLHIuZG90KG4udmVsb2NpdHkpPDAmJih0aGlzLmN1cnJlbnRWZWhpY2xlU3BlZWRLbUhvdXIqPS0xKSxpPTA7dD5pO2krKyl0aGlzLmNhc3RSYXkoZVtpXSk7dGhpcy51cGRhdGVTdXNwZW5zaW9uKEEpO3ZhciBzPW5ldyBvLGE9bmV3IG87Zm9yKGk9MDt0Pmk7aSsrKXt2YXIgQj0oUT1lW2ldKS5zdXNwZW5zaW9uRm9yY2U7Qj5RLm1heFN1c3BlbnNpb25Gb3JjZSYmKEI9US5tYXhTdXNwZW5zaW9uRm9yY2UpLFEucmF5Y2FzdFJlc3VsdC5oaXROb3JtYWxXb3JsZC5zY2FsZShCKkEscyksUS5yYXljYXN0UmVzdWx0LmhpdFBvaW50V29ybGQudnN1YihuLnBvc2l0aW9uLGEpLG4uYXBwbHlJbXB1bHNlKHMsUS5yYXljYXN0UmVzdWx0LmhpdFBvaW50V29ybGQpfXRoaXMudXBkYXRlRnJpY3Rpb24oQSk7dmFyIGM9bmV3IG8sZz1uZXcgbyxFPW5ldyBvO2ZvcihpPTA7dD5pO2krKyl7dmFyIFE9ZVtpXTtuLmdldFZlbG9jaXR5QXRXb3JsZFBvaW50KFEuY2hhc3Npc0Nvbm5lY3Rpb25Qb2ludFdvcmxkLEUpO3ZhciB1PTE7c3dpdGNoKHRoaXMuaW5kZXhVcEF4aXMpe2Nhc2UgMTp1PS0xfWlmKFEuaXNJbkNvbnRhY3Qpe3RoaXMuZ2V0VmVoaWNsZUF4aXNXb3JsZCh0aGlzLmluZGV4Rm9yd2FyZEF4aXMsZyk7dmFyIGw9Zy5kb3QoUS5yYXljYXN0UmVzdWx0LmhpdE5vcm1hbFdvcmxkKTtRLnJheWNhc3RSZXN1bHQuaGl0Tm9ybWFsV29ybGQuc2NhbGUobCxjKSxnLnZzdWIoYyxnKTt2YXIgaD1nLmRvdChFKTtRLmRlbHRhUm90YXRpb249dSpoKkEvUS5yYWRpdXN9IVEuc2xpZGluZyYmUS5pc0luQ29udGFjdHx8MD09PVEuZW5naW5lRm9yY2V8fCFRLnVzZUN1c3RvbVNsaWRpbmdSb3RhdGlvbmFsU3BlZWR8fChRLmRlbHRhUm90YXRpb249KFEuZW5naW5lRm9yY2U+MD8xOi0xKSpRLmN1c3RvbVNsaWRpbmdSb3RhdGlvbmFsU3BlZWQqQSksTWF0aC5hYnMoUS5icmFrZSk+TWF0aC5hYnMoUS5lbmdpbmVGb3JjZSkmJihRLmRlbHRhUm90YXRpb249MCksUS5yb3RhdGlvbis9US5kZWx0YVJvdGF0aW9uLFEuZGVsdGFSb3RhdGlvbio9Ljk5fX0sdC5wcm90b3R5cGUudXBkYXRlU3VzcGVuc2lvbj1mdW5jdGlvbigpe2Zvcih2YXIgQT10aGlzLmNoYXNzaXNCb2R5Lm1hc3MsZT10aGlzLndoZWVsSW5mb3MsdD1lLmxlbmd0aCxuPTA7dD5uO24rKyl7dmFyIGk9ZVtuXTtpZihpLmlzSW5Db250YWN0KXt2YXIgcixvPWkuc3VzcGVuc2lvblJlc3RMZW5ndGgtaS5zdXNwZW5zaW9uTGVuZ3RoO3I9aS5zdXNwZW5zaW9uU3RpZmZuZXNzKm8qaS5jbGlwcGVkSW52Q29udGFjdERvdFN1c3BlbnNpb247dmFyIHM9aS5zdXNwZW5zaW9uUmVsYXRpdmVWZWxvY2l0eTtyLT0oMD5zP2kuZGFtcGluZ0NvbXByZXNzaW9uOmkuZGFtcGluZ1JlbGF4YXRpb24pKnMsaS5zdXNwZW5zaW9uRm9yY2U9cipBLGkuc3VzcGVuc2lvbkZvcmNlPDAmJihpLnN1c3BlbnNpb25Gb3JjZT0wKX1lbHNlIGkuc3VzcGVuc2lvbkZvcmNlPTB9fSx0LnByb3RvdHlwZS5yZW1vdmVGcm9tV29ybGQ9ZnVuY3Rpb24oQSl7dGhpcy5jb25zdHJhaW50cyxBLnJlbW92ZSh0aGlzLmNoYXNzaXNCb2R5KSxBLnJlbW92ZUV2ZW50TGlzdGVuZXIoInByZVN0ZXAiLHRoaXMucHJlU3RlcENhbGxiYWNrKSx0aGlzLndvcmxkPW51bGx9O3ZhciBRPW5ldyBvLHU9bmV3IG87dC5wcm90b3R5cGUuY2FzdFJheT1mdW5jdGlvbihBKXt2YXIgZT1RLHQ9dTt0aGlzLnVwZGF0ZVdoZWVsVHJhbnNmb3JtV29ybGQoQSk7dmFyIG49dGhpcy5jaGFzc2lzQm9keSxpPS0xLHI9QS5zdXNwZW5zaW9uUmVzdExlbmd0aCtBLnJhZGl1cztBLmRpcmVjdGlvbldvcmxkLnNjYWxlKHIsZSk7dmFyIHM9QS5jaGFzc2lzQ29ubmVjdGlvblBvaW50V29ybGQ7cy52YWRkKGUsdCk7dmFyIGE9QS5yYXljYXN0UmVzdWx0O2EucmVzZXQoKTt2YXIgQj1uLmNvbGxpc2lvblJlc3BvbnNlO24uY29sbGlzaW9uUmVzcG9uc2U9ITEsdGhpcy53b3JsZC5yYXlUZXN0KHMsdCxhKSxuLmNvbGxpc2lvblJlc3BvbnNlPUI7dmFyIGM9YS5ib2R5O2lmKEEucmF5Y2FzdFJlc3VsdC5ncm91bmRPYmplY3Q9MCxjKXtpPWEuZGlzdGFuY2UsQS5yYXljYXN0UmVzdWx0LmhpdE5vcm1hbFdvcmxkPWEuaGl0Tm9ybWFsV29ybGQsQS5pc0luQ29udGFjdD0hMDt2YXIgZz1hLmRpc3RhbmNlO0Euc3VzcGVuc2lvbkxlbmd0aD1nLUEucmFkaXVzO3ZhciBFPUEuc3VzcGVuc2lvblJlc3RMZW5ndGgtQS5tYXhTdXNwZW5zaW9uVHJhdmVsLGw9QS5zdXNwZW5zaW9uUmVzdExlbmd0aCtBLm1heFN1c3BlbnNpb25UcmF2ZWw7QS5zdXNwZW5zaW9uTGVuZ3RoPEUmJihBLnN1c3BlbnNpb25MZW5ndGg9RSksQS5zdXNwZW5zaW9uTGVuZ3RoPmwmJihBLnN1c3BlbnNpb25MZW5ndGg9bCxBLnJheWNhc3RSZXN1bHQucmVzZXQoKSk7dmFyIGg9QS5yYXljYXN0UmVzdWx0LmhpdE5vcm1hbFdvcmxkLmRvdChBLmRpcmVjdGlvbldvcmxkKSx3PW5ldyBvO24uZ2V0VmVsb2NpdHlBdFdvcmxkUG9pbnQoQS5yYXljYXN0UmVzdWx0LmhpdFBvaW50V29ybGQsdyk7dmFyIEM9QS5yYXljYXN0UmVzdWx0LmhpdE5vcm1hbFdvcmxkLmRvdCh3KTtpZihoPj0tLjEpQS5zdXNwZW5zaW9uUmVsYXRpdmVWZWxvY2l0eT0wLEEuY2xpcHBlZEludkNvbnRhY3REb3RTdXNwZW5zaW9uPTEwO2Vsc2V7dmFyIEk9LTEvaDtBLnN1c3BlbnNpb25SZWxhdGl2ZVZlbG9jaXR5PUMqSSxBLmNsaXBwZWRJbnZDb250YWN0RG90U3VzcGVuc2lvbj1JfX1lbHNlIEEuc3VzcGVuc2lvbkxlbmd0aD1BLnN1c3BlbnNpb25SZXN0TGVuZ3RoKzAqQS5tYXhTdXNwZW5zaW9uVHJhdmVsLEEuc3VzcGVuc2lvblJlbGF0aXZlVmVsb2NpdHk9MCxBLmRpcmVjdGlvbldvcmxkLnNjYWxlKC0xLEEucmF5Y2FzdFJlc3VsdC5oaXROb3JtYWxXb3JsZCksQS5jbGlwcGVkSW52Q29udGFjdERvdFN1c3BlbnNpb249MTtyZXR1cm4gaX0sdC5wcm90b3R5cGUudXBkYXRlV2hlZWxUcmFuc2Zvcm1Xb3JsZD1mdW5jdGlvbihBKXtBLmlzSW5Db250YWN0PSExO3ZhciBlPXRoaXMuY2hhc3Npc0JvZHk7ZS5wb2ludFRvV29ybGRGcmFtZShBLmNoYXNzaXNDb25uZWN0aW9uUG9pbnRMb2NhbCxBLmNoYXNzaXNDb25uZWN0aW9uUG9pbnRXb3JsZCksZS52ZWN0b3JUb1dvcmxkRnJhbWUoQS5kaXJlY3Rpb25Mb2NhbCxBLmRpcmVjdGlvbldvcmxkKSxlLnZlY3RvclRvV29ybGRGcmFtZShBLmF4bGVMb2NhbCxBLmF4bGVXb3JsZCl9LHQucHJvdG90eXBlLnVwZGF0ZVdoZWVsVHJhbnNmb3JtPWZ1bmN0aW9uKEEpe3ZhciBlPWMsdD1nLG49RSxpPXRoaXMud2hlZWxJbmZvc1tBXTt0aGlzLnVwZGF0ZVdoZWVsVHJhbnNmb3JtV29ybGQoaSksaS5kaXJlY3Rpb25Mb2NhbC5zY2FsZSgtMSxlKSx0LmNvcHkoaS5heGxlTG9jYWwpLGUuY3Jvc3ModCxuKSxuLm5vcm1hbGl6ZSgpLHQubm9ybWFsaXplKCk7dmFyIHI9aS5zdGVlcmluZyxvPW5ldyBzO28uc2V0RnJvbUF4aXNBbmdsZShlLHIpO3ZhciBhPW5ldyBzO2Euc2V0RnJvbUF4aXNBbmdsZSh0LGkucm90YXRpb24pO3ZhciBCPWkud29ybGRUcmFuc2Zvcm0ucXVhdGVybmlvbjt0aGlzLmNoYXNzaXNCb2R5LnF1YXRlcm5pb24ubXVsdChvLEIpLEIubXVsdChhLEIpLEIubm9ybWFsaXplKCk7dmFyIFE9aS53b3JsZFRyYW5zZm9ybS5wb3NpdGlvbjtRLmNvcHkoaS5kaXJlY3Rpb25Xb3JsZCksUS5zY2FsZShpLnN1c3BlbnNpb25MZW5ndGgsUSksUS52YWRkKGkuY2hhc3Npc0Nvbm5lY3Rpb25Qb2ludFdvcmxkLFEpfTt2YXIgbD1bbmV3IG8oMSwwLDApLG5ldyBvKDAsMSwwKSxuZXcgbygwLDAsMSldO3QucHJvdG90eXBlLmdldFdoZWVsVHJhbnNmb3JtV29ybGQ9ZnVuY3Rpb24oQSl7cmV0dXJuIHRoaXMud2hlZWxJbmZvc1tBXS53b3JsZFRyYW5zZm9ybX07dmFyIGg9bmV3IG8sdz1bXSxDPVtdO3QucHJvdG90eXBlLnVwZGF0ZUZyaWN0aW9uPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1oLHQ9dGhpcy53aGVlbEluZm9zLGk9dC5sZW5ndGgscz10aGlzLmNoYXNzaXNCb2R5LGE9QyxCPXcsYz0wO2k+YztjKyspdT0oZj10W2NdKS5yYXljYXN0UmVzdWx0LmJvZHksZi5zaWRlSW1wdWxzZT0wLGYuZm9yd2FyZEltcHVsc2U9MCxhW2NdfHwoYVtjXT1uZXcgbyksQltjXXx8KEJbY109bmV3IG8pO2ZvcihjPTA7aT5jO2MrKylpZih1PShmPXRbY10pLnJheWNhc3RSZXN1bHQuYm9keSl7dmFyIGc9QltjXTt0aGlzLmdldFdoZWVsVHJhbnNmb3JtV29ybGQoYykudmVjdG9yVG9Xb3JsZEZyYW1lKGxbdGhpcy5pbmRleFJpZ2h0QXhpc10sZyk7dmFyIEU9Zi5yYXljYXN0UmVzdWx0LmhpdE5vcm1hbFdvcmxkLFE9Zy5kb3QoRSk7RS5zY2FsZShRLGUpLGcudnN1YihlLGcpLGcubm9ybWFsaXplKCksRS5jcm9zcyhnLGFbY10pLGFbY10ubm9ybWFsaXplKCksZi5zaWRlSW1wdWxzZT1yKHMsZi5yYXljYXN0UmVzdWx0LmhpdFBvaW50V29ybGQsdSxmLnJheWNhc3RSZXN1bHQuaGl0UG9pbnRXb3JsZCxnKSxmLnNpZGVJbXB1bHNlKj0xfWZvcih0aGlzLnNsaWRpbmc9ITEsYz0wO2k+YztjKyspe3ZhciB1PShmPXRbY10pLnJheWNhc3RSZXN1bHQuYm9keSxJPTA7aWYoZi5zbGlwSW5mbz0xLHUpe3ZhciBNPWYuYnJha2U/Zi5icmFrZTowO0k9bihzLHUsZi5yYXljYXN0UmVzdWx0LmhpdFBvaW50V29ybGQsYVtjXSxNKTt2YXIgZD1NLyhJKz1mLmVuZ2luZUZvcmNlKkEpO2Yuc2xpcEluZm8qPWR9aWYoZi5mb3J3YXJkSW1wdWxzZT0wLGYuc2tpZEluZm89MSx1KXtmLnNraWRJbmZvPTE7dmFyIHA9Zi5zdXNwZW5zaW9uRm9yY2UqQSpmLmZyaWN0aW9uU2xpcCxtPXAqcDtmLmZvcndhcmRJbXB1bHNlPUk7dmFyIEY9LjUqZi5mb3J3YXJkSW1wdWxzZSxEPTEqZi5zaWRlSW1wdWxzZSxZPUYqRitEKkQ7Zi5zbGlkaW5nPSExLFk+bSYmKHRoaXMuc2xpZGluZz0hMCxmLnNsaWRpbmc9ITAsZD1wL01hdGguc3FydChZKSxmLnNraWRJbmZvKj1kKX19aWYodGhpcy5zbGlkaW5nKWZvcihjPTA7aT5jO2MrKykwIT09KGY9dFtjXSkuc2lkZUltcHVsc2UmJmYuc2tpZEluZm88MSYmKGYuZm9yd2FyZEltcHVsc2UqPWYuc2tpZEluZm8sZi5zaWRlSW1wdWxzZSo9Zi5za2lkSW5mbyk7Zm9yKGM9MDtpPmM7YysrKXt2YXIgZj10W2NdLE49bmV3IG87aWYoTi5jb3B5KGYucmF5Y2FzdFJlc3VsdC5oaXRQb2ludFdvcmxkKSwwIT09Zi5mb3J3YXJkSW1wdWxzZSl7dmFyIFU9bmV3IG87YVtjXS5zY2FsZShmLmZvcndhcmRJbXB1bHNlLFUpLHMuYXBwbHlJbXB1bHNlKFUsTil9aWYoMCE9PWYuc2lkZUltcHVsc2Upe3U9Zi5yYXljYXN0UmVzdWx0LmJvZHk7dmFyIHk9bmV3IG87eS5jb3B5KGYucmF5Y2FzdFJlc3VsdC5oaXRQb2ludFdvcmxkKTt2YXIgVD1uZXcgbztCW2NdLnNjYWxlKGYuc2lkZUltcHVsc2UsVCkscy5wb2ludFRvTG9jYWxGcmFtZShOLE4pLE5bInh5eiJbdGhpcy5pbmRleFVwQXhpc11dKj1mLnJvbGxJbmZsdWVuY2Uscy5wb2ludFRvV29ybGRGcmFtZShOLE4pLHMuYXBwbHlJbXB1bHNlKFQsTiksVC5zY2FsZSgtMSxUKSx1LmFwcGx5SW1wdWxzZShULHkpfX19O3ZhciBJPW5ldyBvLE09bmV3IG8sZD1uZXcgbyxwPW5ldyBvLG09bmV3IG8sRj1uZXcgbyxEPW5ldyBvLFk9bmV3IG8sZj1uZXcgbyxOPW5ldyBvfSx7Ii4uL2NvbGxpc2lvbi9SYXkiOjksIi4uL2NvbGxpc2lvbi9SYXljYXN0UmVzdWx0IjoxMCwiLi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi4vbWF0aC9WZWMzIjozMCwiLi4vb2JqZWN0cy9XaGVlbEluZm8iOjM2LCIuL0JvZHkiOjMxfV0sMzM6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXtpZih0aGlzLndoZWVsQm9kaWVzPVtdLHRoaXMuY29vcmRpbmF0ZVN5c3RlbT12b2lkIDA9PT1BLmNvb3JkaW5hdGVTeXN0ZW0/bmV3IG8oMSwyLDMpOkEuY29vcmRpbmF0ZVN5c3RlbS5jbG9uZSgpLHRoaXMuY2hhc3Npc0JvZHk9QS5jaGFzc2lzQm9keSwhdGhpcy5jaGFzc2lzQm9keSl7dmFyIGU9bmV3IHIobmV3IG8oNSwyLC41KSk7dGhpcy5jaGFzc2lzQm9keT1uZXcgbigxLGUpfXRoaXMuY29uc3RyYWludHM9W10sdGhpcy53aGVlbEF4ZXM9W10sdGhpcy53aGVlbEZvcmNlcz1bXX12YXIgbj1BKCIuL0JvZHkiKSxpPUEoIi4uL3NoYXBlcy9TcGhlcmUiKSxyPUEoIi4uL3NoYXBlcy9Cb3giKSxvPUEoIi4uL21hdGgvVmVjMyIpLHM9QSgiLi4vY29uc3RyYWludHMvSGluZ2VDb25zdHJhaW50Iik7ZS5leHBvcnRzPXQsdC5wcm90b3R5cGUuYWRkV2hlZWw9ZnVuY3Rpb24oQSl7dmFyIGU9KEE9QXx8e30pLmJvZHk7ZXx8KGU9bmV3IG4oMSxuZXcgaSgxLjIpKSksdGhpcy53aGVlbEJvZGllcy5wdXNoKGUpLHRoaXMud2hlZWxGb3JjZXMucHVzaCgwKTt2YXIgdD0obmV3IG8sdm9pZCAwIT09QS5wb3NpdGlvbj9BLnBvc2l0aW9uLmNsb25lKCk6bmV3IG8pLHI9bmV3IG87dGhpcy5jaGFzc2lzQm9keS5wb2ludFRvV29ybGRGcmFtZSh0LHIpLGUucG9zaXRpb24uc2V0KHIueCxyLnksci56KTt2YXIgYT12b2lkIDAhPT1BLmF4aXM/QS5heGlzLmNsb25lKCk6bmV3IG8oMCwxLDApO3RoaXMud2hlZWxBeGVzLnB1c2goYSk7dmFyIEI9bmV3IHModGhpcy5jaGFzc2lzQm9keSxlLHtwaXZvdEE6dCxheGlzQTphLHBpdm90QjpvLlpFUk8sYXhpc0I6YSxjb2xsaWRlQ29ubmVjdGVkOiExfSk7cmV0dXJuIHRoaXMuY29uc3RyYWludHMucHVzaChCKSx0aGlzLndoZWVsQm9kaWVzLmxlbmd0aC0xfSx0LnByb3RvdHlwZS5zZXRTdGVlcmluZ1ZhbHVlPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy53aGVlbEF4ZXNbZV0sbj1NYXRoLmNvcyhBKSxpPU1hdGguc2luKEEpLHI9dC54LG89dC55O3RoaXMuY29uc3RyYWludHNbZV0uYXhpc0Euc2V0KG4qci1pKm8saSpyK24qbywwKX0sdC5wcm90b3R5cGUuc2V0TW90b3JTcGVlZD1mdW5jdGlvbihBLGUpe3ZhciB0PXRoaXMuY29uc3RyYWludHNbZV07dC5lbmFibGVNb3RvcigpLHQubW90b3JUYXJnZXRWZWxvY2l0eT1BfSx0LnByb3RvdHlwZS5kaXNhYmxlTW90b3I9ZnVuY3Rpb24oQSl7dGhpcy5jb25zdHJhaW50c1tBXS5kaXNhYmxlTW90b3IoKX07dmFyIGE9bmV3IG87dC5wcm90b3R5cGUuc2V0V2hlZWxGb3JjZT1mdW5jdGlvbihBLGUpe3RoaXMud2hlZWxGb3JjZXNbZV09QX0sdC5wcm90b3R5cGUuYXBwbHlXaGVlbEZvcmNlPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy53aGVlbEF4ZXNbZV0sbj10aGlzLndoZWVsQm9kaWVzW2VdLGk9bi50b3JxdWU7dC5zY2FsZShBLGEpLG4udmVjdG9yVG9Xb3JsZEZyYW1lKGEsYSksaS52YWRkKGEsaSl9LHQucHJvdG90eXBlLmFkZFRvV29ybGQ9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMuY29uc3RyYWludHMsdD10aGlzLndoZWVsQm9kaWVzLmNvbmNhdChbdGhpcy5jaGFzc2lzQm9keV0pLG49MDtuPHQubGVuZ3RoO24rKylBLmFkZCh0W25dKTtmb3Iobj0wO248ZS5sZW5ndGg7bisrKUEuYWRkQ29uc3RyYWludChlW25dKTtBLmFkZEV2ZW50TGlzdGVuZXIoInByZVN0ZXAiLHRoaXMuX3VwZGF0ZS5iaW5kKHRoaXMpKX0sdC5wcm90b3R5cGUuX3VwZGF0ZT1mdW5jdGlvbigpe2Zvcih2YXIgQT10aGlzLndoZWVsRm9yY2VzLGU9MDtlPEEubGVuZ3RoO2UrKyl0aGlzLmFwcGx5V2hlZWxGb3JjZShBW2VdLGUpfSx0LnByb3RvdHlwZS5yZW1vdmVGcm9tV29ybGQ9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMuY29uc3RyYWludHMsdD10aGlzLndoZWVsQm9kaWVzLmNvbmNhdChbdGhpcy5jaGFzc2lzQm9keV0pLG49MDtuPHQubGVuZ3RoO24rKylBLnJlbW92ZSh0W25dKTtmb3Iobj0wO248ZS5sZW5ndGg7bisrKUEucmVtb3ZlQ29uc3RyYWludChlW25dKX07dmFyIEI9bmV3IG87dC5wcm90b3R5cGUuZ2V0V2hlZWxTcGVlZD1mdW5jdGlvbihBKXt2YXIgZT10aGlzLndoZWVsQXhlc1tBXSx0PXRoaXMud2hlZWxCb2RpZXNbQV0uYW5ndWxhclZlbG9jaXR5O3JldHVybiB0aGlzLmNoYXNzaXNCb2R5LnZlY3RvclRvV29ybGRGcmFtZShlLEIpLHQuZG90KEIpfX0seyIuLi9jb25zdHJhaW50cy9IaW5nZUNvbnN0cmFpbnQiOjE1LCIuLi9tYXRoL1ZlYzMiOjMwLCIuLi9zaGFwZXMvQm94IjozNywiLi4vc2hhcGVzL1NwaGVyZSI6NDQsIi4vQm9keSI6MzF9XSwzNDpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7dGhpcy5wYXJ0aWNsZXM9W10sdGhpcy5kZW5zaXR5PTEsdGhpcy5zbW9vdGhpbmdSYWRpdXM9MSx0aGlzLnNwZWVkT2ZTb3VuZD0xLHRoaXMudmlzY29zaXR5PS4wMSx0aGlzLmVwcz0xZS02LHRoaXMucHJlc3N1cmVzPVtdLHRoaXMuZGVuc2l0aWVzPVtdLHRoaXMubmVpZ2hib3JzPVtdfWUuZXhwb3J0cz10O3ZhciBuPShBKCIuLi9zaGFwZXMvU2hhcGUiKSxBKCIuLi9tYXRoL1ZlYzMiKSk7QSgiLi4vbWF0aC9RdWF0ZXJuaW9uIiksQSgiLi4vc2hhcGVzL1BhcnRpY2xlIiksQSgiLi4vb2JqZWN0cy9Cb2R5IiksQSgiLi4vbWF0ZXJpYWwvTWF0ZXJpYWwiKSx0LnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oQSl7dGhpcy5wYXJ0aWNsZXMucHVzaChBKSx0aGlzLm5laWdoYm9ycy5sZW5ndGg8dGhpcy5wYXJ0aWNsZXMubGVuZ3RoJiZ0aGlzLm5laWdoYm9ycy5wdXNoKFtdKX0sdC5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMucGFydGljbGVzLmluZGV4T2YoQSk7LTEhPT1lJiYodGhpcy5wYXJ0aWNsZXMuc3BsaWNlKGUsMSksdGhpcy5uZWlnaGJvcnMubGVuZ3RoPnRoaXMucGFydGljbGVzLmxlbmd0aCYmdGhpcy5uZWlnaGJvcnMucG9wKCkpfTt2YXIgaT1uZXcgbjt0LnByb3RvdHlwZS5nZXROZWlnaGJvcnM9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9dGhpcy5wYXJ0aWNsZXMubGVuZ3RoLG49QS5pZCxyPXRoaXMuc21vb3RoaW5nUmFkaXVzKnRoaXMuc21vb3RoaW5nUmFkaXVzLG89aSxzPTA7cyE9PXQ7cysrKXt2YXIgYT10aGlzLnBhcnRpY2xlc1tzXTthLnBvc2l0aW9uLnZzdWIoQS5wb3NpdGlvbixvKSxuIT09YS5pZCYmby5ub3JtMigpPHImJmUucHVzaChhKX19O3ZhciByPW5ldyBuLG89bmV3IG4scz1uZXcgbixhPW5ldyBuLEI9bmV3IG4sYz1uZXcgbjt0LnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXtmb3IodmFyIEE9dGhpcy5wYXJ0aWNsZXMubGVuZ3RoLGU9cix0PXRoaXMuc3BlZWRPZlNvdW5kLG49dGhpcy5lcHMsaT0wO2khPT1BO2krKyl7dmFyIGc9dGhpcy5wYXJ0aWNsZXNbaV07KEY9dGhpcy5uZWlnaGJvcnNbaV0pLmxlbmd0aD0wLHRoaXMuZ2V0TmVpZ2hib3JzKGcsRiksRi5wdXNoKHRoaXMucGFydGljbGVzW2ldKTtmb3IodmFyIEU9Ri5sZW5ndGgsUT0wLHU9MDt1IT09RTt1Kyspe2cucG9zaXRpb24udnN1YihGW3VdLnBvc2l0aW9uLGUpO3ZhciBsPWUubm9ybSgpLGg9dGhpcy53KGwpO1ErPUZbdV0ubWFzcypofXRoaXMuZGVuc2l0aWVzW2ldPVEsdGhpcy5wcmVzc3VyZXNbaV09dCp0Kih0aGlzLmRlbnNpdGllc1tpXS10aGlzLmRlbnNpdHkpfXZhciB3PW8sQz1zLEk9YSxNPUIsZD1jO2ZvcihpPTA7aSE9PUE7aSsrKXt2YXIgcCxtLEYsRD10aGlzLnBhcnRpY2xlc1tpXTtmb3Iody5zZXQoMCwwLDApLEMuc2V0KDAsMCwwKSxFPShGPXRoaXMubmVpZ2hib3JzW2ldKS5sZW5ndGgsdT0wO3UhPT1FO3UrKyl7dmFyIFk9Rlt1XTtELnBvc2l0aW9uLnZzdWIoWS5wb3NpdGlvbixNKTt2YXIgZj1NLm5vcm0oKTtwPS1ZLm1hc3MqKHRoaXMucHJlc3N1cmVzW2ldLyh0aGlzLmRlbnNpdGllc1tpXSp0aGlzLmRlbnNpdGllc1tpXStuKSt0aGlzLnByZXNzdXJlc1t1XS8odGhpcy5kZW5zaXRpZXNbdV0qdGhpcy5kZW5zaXRpZXNbdV0rbikpLHRoaXMuZ3JhZHcoTSxJKSxJLm11bHQocCxJKSx3LnZhZGQoSSx3KSxZLnZlbG9jaXR5LnZzdWIoRC52ZWxvY2l0eSxkKSxkLm11bHQoMS8oMWUtNCt0aGlzLmRlbnNpdGllc1tpXSp0aGlzLmRlbnNpdGllc1t1XSkqdGhpcy52aXNjb3NpdHkqWS5tYXNzLGQpLG09dGhpcy5uYWJsYXcoZiksZC5tdWx0KG0sZCksQy52YWRkKGQsQyl9Qy5tdWx0KEQubWFzcyxDKSx3Lm11bHQoRC5tYXNzLHcpLEQuZm9yY2UudmFkZChDLEQuZm9yY2UpLEQuZm9yY2UudmFkZCh3LEQuZm9yY2UpfX0sdC5wcm90b3R5cGUudz1mdW5jdGlvbihBKXt2YXIgZT10aGlzLnNtb290aGluZ1JhZGl1cztyZXR1cm4gMzE1Lyg2NCpNYXRoLlBJKk1hdGgucG93KGUsOSkpKk1hdGgucG93KGUqZS1BKkEsMyl9LHQucHJvdG90eXBlLmdyYWR3PWZ1bmN0aW9uKEEsZSl7dmFyIHQ9QS5ub3JtKCksbj10aGlzLnNtb290aGluZ1JhZGl1cztBLm11bHQoOTQ1LygzMipNYXRoLlBJKk1hdGgucG93KG4sOSkpKk1hdGgucG93KG4qbi10KnQsMiksZSl9LHQucHJvdG90eXBlLm5hYmxhdz1mdW5jdGlvbihBKXt2YXIgZT10aGlzLnNtb290aGluZ1JhZGl1cztyZXR1cm4gOTQ1LygzMipNYXRoLlBJKk1hdGgucG93KGUsOSkpKihlKmUtQSpBKSooNypBKkEtMyplKmUpfX0seyIuLi9tYXRlcmlhbC9NYXRlcmlhbCI6MjUsIi4uL21hdGgvUXVhdGVybmlvbiI6MjgsIi4uL21hdGgvVmVjMyI6MzAsIi4uL29iamVjdHMvQm9keSI6MzEsIi4uL3NoYXBlcy9QYXJ0aWNsZSI6NDEsIi4uL3NoYXBlcy9TaGFwZSI6NDN9XSwzNTpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXt0PXR8fHt9LHRoaXMucmVzdExlbmd0aD0ibnVtYmVyIj09dHlwZW9mIHQucmVzdExlbmd0aD90LnJlc3RMZW5ndGg6MSx0aGlzLnN0aWZmbmVzcz10LnN0aWZmbmVzc3x8MTAwLHRoaXMuZGFtcGluZz10LmRhbXBpbmd8fDEsdGhpcy5ib2R5QT1BLHRoaXMuYm9keUI9ZSx0aGlzLmxvY2FsQW5jaG9yQT1uZXcgbix0aGlzLmxvY2FsQW5jaG9yQj1uZXcgbix0LmxvY2FsQW5jaG9yQSYmdGhpcy5sb2NhbEFuY2hvckEuY29weSh0LmxvY2FsQW5jaG9yQSksdC5sb2NhbEFuY2hvckImJnRoaXMubG9jYWxBbmNob3JCLmNvcHkodC5sb2NhbEFuY2hvckIpLHQud29ybGRBbmNob3JBJiZ0aGlzLnNldFdvcmxkQW5jaG9yQSh0LndvcmxkQW5jaG9yQSksdC53b3JsZEFuY2hvckImJnRoaXMuc2V0V29ybGRBbmNob3JCKHQud29ybGRBbmNob3JCKX12YXIgbj1BKCIuLi9tYXRoL1ZlYzMiKTtlLmV4cG9ydHM9dCx0LnByb3RvdHlwZS5zZXRXb3JsZEFuY2hvckE9ZnVuY3Rpb24oQSl7dGhpcy5ib2R5QS5wb2ludFRvTG9jYWxGcmFtZShBLHRoaXMubG9jYWxBbmNob3JBKX0sdC5wcm90b3R5cGUuc2V0V29ybGRBbmNob3JCPWZ1bmN0aW9uKEEpe3RoaXMuYm9keUIucG9pbnRUb0xvY2FsRnJhbWUoQSx0aGlzLmxvY2FsQW5jaG9yQil9LHQucHJvdG90eXBlLmdldFdvcmxkQW5jaG9yQT1mdW5jdGlvbihBKXt0aGlzLmJvZHlBLnBvaW50VG9Xb3JsZEZyYW1lKHRoaXMubG9jYWxBbmNob3JBLEEpfSx0LnByb3RvdHlwZS5nZXRXb3JsZEFuY2hvckI9ZnVuY3Rpb24oQSl7dGhpcy5ib2R5Qi5wb2ludFRvV29ybGRGcmFtZSh0aGlzLmxvY2FsQW5jaG9yQixBKX07dmFyIGk9bmV3IG4scj1uZXcgbixvPW5ldyBuLHM9bmV3IG4sYT1uZXcgbixCPW5ldyBuLGM9bmV3IG4sZz1uZXcgbixFPW5ldyBuLFE9bmV3IG4sdT1uZXcgbjt0LnByb3RvdHlwZS5hcHBseUZvcmNlPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5zdGlmZm5lc3MsZT10aGlzLmRhbXBpbmcsdD10aGlzLnJlc3RMZW5ndGgsbj10aGlzLmJvZHlBLGw9dGhpcy5ib2R5QixoPWksdz1yLEM9byxJPXMsTT11LGQ9YSxwPUIsbT1jLEY9ZyxEPUUsWT1RO3RoaXMuZ2V0V29ybGRBbmNob3JBKGQpLHRoaXMuZ2V0V29ybGRBbmNob3JCKHApLGQudnN1YihuLnBvc2l0aW9uLG0pLHAudnN1YihsLnBvc2l0aW9uLEYpLHAudnN1YihkLGgpO3ZhciBmPWgubm9ybSgpO3cuY29weShoKSx3Lm5vcm1hbGl6ZSgpLGwudmVsb2NpdHkudnN1YihuLnZlbG9jaXR5LEMpLGwuYW5ndWxhclZlbG9jaXR5LmNyb3NzKEYsTSksQy52YWRkKE0sQyksbi5hbmd1bGFyVmVsb2NpdHkuY3Jvc3MobSxNKSxDLnZzdWIoTSxDKSx3Lm11bHQoLUEqKGYtdCktZSpDLmRvdCh3KSxJKSxuLmZvcmNlLnZzdWIoSSxuLmZvcmNlKSxsLmZvcmNlLnZhZGQoSSxsLmZvcmNlKSxtLmNyb3NzKEksRCksRi5jcm9zcyhJLFkpLG4udG9ycXVlLnZzdWIoRCxuLnRvcnF1ZSksbC50b3JxdWUudmFkZChZLGwudG9ycXVlKX19LHsiLi4vbWF0aC9WZWMzIjozMH1dLDM2OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSl7QT1vLmRlZmF1bHRzKEEse2NoYXNzaXNDb25uZWN0aW9uUG9pbnRMb2NhbDpuZXcgbixjaGFzc2lzQ29ubmVjdGlvblBvaW50V29ybGQ6bmV3IG4sZGlyZWN0aW9uTG9jYWw6bmV3IG4sZGlyZWN0aW9uV29ybGQ6bmV3IG4sYXhsZUxvY2FsOm5ldyBuLGF4bGVXb3JsZDpuZXcgbixzdXNwZW5zaW9uUmVzdExlbmd0aDoxLHN1c3BlbnNpb25NYXhMZW5ndGg6MixyYWRpdXM6MSxzdXNwZW5zaW9uU3RpZmZuZXNzOjEwMCxkYW1waW5nQ29tcHJlc3Npb246MTAsZGFtcGluZ1JlbGF4YXRpb246MTAsZnJpY3Rpb25TbGlwOjFlNCxzdGVlcmluZzowLHJvdGF0aW9uOjAsZGVsdGFSb3RhdGlvbjowLHJvbGxJbmZsdWVuY2U6LjAxLG1heFN1c3BlbnNpb25Gb3JjZTpOdW1iZXIuTUFYX1ZBTFVFLGlzRnJvbnRXaGVlbDohMCxjbGlwcGVkSW52Q29udGFjdERvdFN1c3BlbnNpb246MSxzdXNwZW5zaW9uUmVsYXRpdmVWZWxvY2l0eTowLHN1c3BlbnNpb25Gb3JjZTowLHNraWRJbmZvOjAsc3VzcGVuc2lvbkxlbmd0aDowLG1heFN1c3BlbnNpb25UcmF2ZWw6MSx1c2VDdXN0b21TbGlkaW5nUm90YXRpb25hbFNwZWVkOiExLGN1c3RvbVNsaWRpbmdSb3RhdGlvbmFsU3BlZWQ6LS4xfSksdGhpcy5tYXhTdXNwZW5zaW9uVHJhdmVsPUEubWF4U3VzcGVuc2lvblRyYXZlbCx0aGlzLmN1c3RvbVNsaWRpbmdSb3RhdGlvbmFsU3BlZWQ9QS5jdXN0b21TbGlkaW5nUm90YXRpb25hbFNwZWVkLHRoaXMudXNlQ3VzdG9tU2xpZGluZ1JvdGF0aW9uYWxTcGVlZD1BLnVzZUN1c3RvbVNsaWRpbmdSb3RhdGlvbmFsU3BlZWQsdGhpcy5zbGlkaW5nPSExLHRoaXMuY2hhc3Npc0Nvbm5lY3Rpb25Qb2ludExvY2FsPUEuY2hhc3Npc0Nvbm5lY3Rpb25Qb2ludExvY2FsLmNsb25lKCksdGhpcy5jaGFzc2lzQ29ubmVjdGlvblBvaW50V29ybGQ9QS5jaGFzc2lzQ29ubmVjdGlvblBvaW50V29ybGQuY2xvbmUoKSx0aGlzLmRpcmVjdGlvbkxvY2FsPUEuZGlyZWN0aW9uTG9jYWwuY2xvbmUoKSx0aGlzLmRpcmVjdGlvbldvcmxkPUEuZGlyZWN0aW9uV29ybGQuY2xvbmUoKSx0aGlzLmF4bGVMb2NhbD1BLmF4bGVMb2NhbC5jbG9uZSgpLHRoaXMuYXhsZVdvcmxkPUEuYXhsZVdvcmxkLmNsb25lKCksdGhpcy5zdXNwZW5zaW9uUmVzdExlbmd0aD1BLnN1c3BlbnNpb25SZXN0TGVuZ3RoLHRoaXMuc3VzcGVuc2lvbk1heExlbmd0aD1BLnN1c3BlbnNpb25NYXhMZW5ndGgsdGhpcy5yYWRpdXM9QS5yYWRpdXMsdGhpcy5zdXNwZW5zaW9uU3RpZmZuZXNzPUEuc3VzcGVuc2lvblN0aWZmbmVzcyx0aGlzLmRhbXBpbmdDb21wcmVzc2lvbj1BLmRhbXBpbmdDb21wcmVzc2lvbix0aGlzLmRhbXBpbmdSZWxheGF0aW9uPUEuZGFtcGluZ1JlbGF4YXRpb24sdGhpcy5mcmljdGlvblNsaXA9QS5mcmljdGlvblNsaXAsdGhpcy5zdGVlcmluZz0wLHRoaXMucm90YXRpb249MCx0aGlzLmRlbHRhUm90YXRpb249MCx0aGlzLnJvbGxJbmZsdWVuY2U9QS5yb2xsSW5mbHVlbmNlLHRoaXMubWF4U3VzcGVuc2lvbkZvcmNlPUEubWF4U3VzcGVuc2lvbkZvcmNlLHRoaXMuZW5naW5lRm9yY2U9MCx0aGlzLmJyYWtlPTAsdGhpcy5pc0Zyb250V2hlZWw9QS5pc0Zyb250V2hlZWwsdGhpcy5jbGlwcGVkSW52Q29udGFjdERvdFN1c3BlbnNpb249MSx0aGlzLnN1c3BlbnNpb25SZWxhdGl2ZVZlbG9jaXR5PTAsdGhpcy5zdXNwZW5zaW9uRm9yY2U9MCx0aGlzLnNraWRJbmZvPTAsdGhpcy5zdXNwZW5zaW9uTGVuZ3RoPTAsdGhpcy5zaWRlSW1wdWxzZT0wLHRoaXMuZm9yd2FyZEltcHVsc2U9MCx0aGlzLnJheWNhc3RSZXN1bHQ9bmV3IHIsdGhpcy53b3JsZFRyYW5zZm9ybT1uZXcgaSx0aGlzLmlzSW5Db250YWN0PSExfXZhciBuPUEoIi4uL21hdGgvVmVjMyIpLGk9QSgiLi4vbWF0aC9UcmFuc2Zvcm0iKSxyPUEoIi4uL2NvbGxpc2lvbi9SYXljYXN0UmVzdWx0Iiksbz1BKCIuLi91dGlscy9VdGlscyIpO2UuZXhwb3J0cz10O3ZhciBzPW5ldyBuLGE9bmV3IG47cz1uZXcgbix0LnByb3RvdHlwZS51cGRhdGVXaGVlbD1mdW5jdGlvbihBKXt2YXIgZT10aGlzLnJheWNhc3RSZXN1bHQ7aWYodGhpcy5pc0luQ29udGFjdCl7dmFyIHQ9ZS5oaXROb3JtYWxXb3JsZC5kb3QoZS5kaXJlY3Rpb25Xb3JsZCk7ZS5oaXRQb2ludFdvcmxkLnZzdWIoQS5wb3NpdGlvbixhKSxBLmdldFZlbG9jaXR5QXRXb3JsZFBvaW50KGEscyk7dmFyIG49ZS5oaXROb3JtYWxXb3JsZC5kb3Qocyk7aWYodD49LS4xKXRoaXMuc3VzcGVuc2lvblJlbGF0aXZlVmVsb2NpdHk9MCx0aGlzLmNsaXBwZWRJbnZDb250YWN0RG90U3VzcGVuc2lvbj0xMDtlbHNle3ZhciBpPS0xL3Q7dGhpcy5zdXNwZW5zaW9uUmVsYXRpdmVWZWxvY2l0eT1uKmksdGhpcy5jbGlwcGVkSW52Q29udGFjdERvdFN1c3BlbnNpb249aX19ZWxzZSBlLnN1c3BlbnNpb25MZW5ndGg9dGhpcy5zdXNwZW5zaW9uUmVzdExlbmd0aCx0aGlzLnN1c3BlbnNpb25SZWxhdGl2ZVZlbG9jaXR5PTAsZS5kaXJlY3Rpb25Xb3JsZC5zY2FsZSgtMSxlLmhpdE5vcm1hbFdvcmxkKSx0aGlzLmNsaXBwZWRJbnZDb250YWN0RG90U3VzcGVuc2lvbj0xfX0seyIuLi9jb2xsaXNpb24vUmF5Y2FzdFJlc3VsdCI6MTAsIi4uL21hdGgvVHJhbnNmb3JtIjoyOSwiLi4vbWF0aC9WZWMzIjozMCwiLi4vdXRpbHMvVXRpbHMiOjUzfV0sMzc6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXtuLmNhbGwodGhpcyksdGhpcy50eXBlPW4udHlwZXMuQk9YLHRoaXMuaGFsZkV4dGVudHM9QSx0aGlzLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbj1udWxsLHRoaXMudXBkYXRlQ29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uKCksdGhpcy51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cygpfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vU2hhcGUiKSxpPUEoIi4uL21hdGgvVmVjMyIpLHI9QSgiLi9Db252ZXhQb2x5aGVkcm9uIik7dC5wcm90b3R5cGU9bmV3IG4sdC5wcm90b3R5cGUuY29uc3RydWN0b3I9dCx0LnByb3RvdHlwZS51cGRhdGVDb252ZXhQb2x5aGVkcm9uUmVwcmVzZW50YXRpb249ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmhhbGZFeHRlbnRzLngsZT10aGlzLmhhbGZFeHRlbnRzLnksdD10aGlzLmhhbGZFeHRlbnRzLnosbj1pLG89W25ldyBuKC1BLC1lLC10KSxuZXcgbihBLC1lLC10KSxuZXcgbihBLGUsLXQpLG5ldyBuKC1BLGUsLXQpLG5ldyBuKC1BLC1lLHQpLG5ldyBuKEEsLWUsdCksbmV3IG4oQSxlLHQpLG5ldyBuKC1BLGUsdCldLHM9KG5ldyBuKDAsMCwxKSxuZXcgbigwLDEsMCksbmV3IG4oMSwwLDApLG5ldyByKG8sW1szLDIsMSwwXSxbNCw1LDYsN10sWzUsNCwwLDFdLFsyLDMsNyw2XSxbMCw0LDcsM10sWzEsMiw2LDVdXSkpO3RoaXMuY29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uPXMscy5tYXRlcmlhbD10aGlzLm1hdGVyaWFsfSx0LnByb3RvdHlwZS5jYWxjdWxhdGVMb2NhbEluZXJ0aWE9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZT1lfHxuZXcgaSx0LmNhbGN1bGF0ZUluZXJ0aWEodGhpcy5oYWxmRXh0ZW50cyxBLGUpLGV9LHQuY2FsY3VsYXRlSW5lcnRpYT1mdW5jdGlvbihBLGUsdCl7dmFyIG49QTt0Lng9MS8xMiplKigyKm4ueSoyKm4ueSsyKm4ueioyKm4ueiksdC55PTEvMTIqZSooMipuLngqMipuLngrMipuLnoqMipuLnopLHQuej0xLzEyKmUqKDIqbi55KjIqbi55KzIqbi54KjIqbi54KX0sdC5wcm90b3R5cGUuZ2V0U2lkZU5vcm1hbHM9ZnVuY3Rpb24oQSxlKXt2YXIgdD1BLG49dGhpcy5oYWxmRXh0ZW50cztpZih0WzBdLnNldChuLngsMCwwKSx0WzFdLnNldCgwLG4ueSwwKSx0WzJdLnNldCgwLDAsbi56KSx0WzNdLnNldCgtbi54LDAsMCksdFs0XS5zZXQoMCwtbi55LDApLHRbNV0uc2V0KDAsMCwtbi56KSx2b2lkIDAhPT1lKWZvcih2YXIgaT0wO2khPT10Lmxlbmd0aDtpKyspZS52bXVsdCh0W2ldLHRbaV0pO3JldHVybiB0fSx0LnByb3RvdHlwZS52b2x1bWU9ZnVuY3Rpb24oKXtyZXR1cm4gOCp0aGlzLmhhbGZFeHRlbnRzLngqdGhpcy5oYWxmRXh0ZW50cy55KnRoaXMuaGFsZkV4dGVudHMuen0sdC5wcm90b3R5cGUudXBkYXRlQm91bmRpbmdTcGhlcmVSYWRpdXM9ZnVuY3Rpb24oKXt0aGlzLmJvdW5kaW5nU3BoZXJlUmFkaXVzPXRoaXMuaGFsZkV4dGVudHMubm9ybSgpfTt2YXIgbz1uZXcgaTtuZXcgaSx0LnByb3RvdHlwZS5mb3JFYWNoV29ybGRDb3JuZXI9ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgbj10aGlzLmhhbGZFeHRlbnRzLGk9W1tuLngsbi55LG4uel0sWy1uLngsbi55LG4uel0sWy1uLngsLW4ueSxuLnpdLFstbi54LC1uLnksLW4uel0sW24ueCwtbi55LC1uLnpdLFtuLngsbi55LC1uLnpdLFstbi54LG4ueSwtbi56XSxbbi54LC1uLnksbi56XV0scj0wO3I8aS5sZW5ndGg7cisrKW8uc2V0KGlbcl1bMF0saVtyXVsxXSxpW3JdWzJdKSxlLnZtdWx0KG8sbyksQS52YWRkKG8sbyksdChvLngsby55LG8ueil9O3ZhciBzPVtuZXcgaSxuZXcgaSxuZXcgaSxuZXcgaSxuZXcgaSxuZXcgaSxuZXcgaSxuZXcgaV07dC5wcm90b3R5cGUuY2FsY3VsYXRlV29ybGRBQUJCPWZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpPXRoaXMuaGFsZkV4dGVudHM7c1swXS5zZXQoaS54LGkueSxpLnopLHNbMV0uc2V0KC1pLngsaS55LGkueiksc1syXS5zZXQoLWkueCwtaS55LGkueiksc1szXS5zZXQoLWkueCwtaS55LC1pLnopLHNbNF0uc2V0KGkueCwtaS55LC1pLnopLHNbNV0uc2V0KGkueCxpLnksLWkueiksc1s2XS5zZXQoLWkueCxpLnksLWkueiksc1s3XS5zZXQoaS54LC1pLnksaS56KTt2YXIgcj1zWzBdO2Uudm11bHQocixyKSxBLnZhZGQocixyKSxuLmNvcHkociksdC5jb3B5KHIpO2Zvcih2YXIgbz0xOzg+bztvKyspe3I9c1tvXSxlLnZtdWx0KHIsciksQS52YWRkKHIscik7dmFyIGE9ci54LEI9ci55LGM9ci56O2E+bi54JiYobi54PWEpLEI+bi55JiYobi55PUIpLGM+bi56JiYobi56PWMpLGE8dC54JiYodC54PWEpLEI8dC55JiYodC55PUIpLGM8dC56JiYodC56PWMpfX19LHsiLi4vbWF0aC9WZWMzIjozMCwiLi9Db252ZXhQb2x5aGVkcm9uIjozOCwiLi9TaGFwZSI6NDN9XSwzODpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXtuLmNhbGwodGhpcyksdGhpcy50eXBlPW4udHlwZXMuQ09OVkVYUE9MWUhFRFJPTix0aGlzLnZlcnRpY2VzPUF8fFtdLHRoaXMud29ybGRWZXJ0aWNlcz1bXSx0aGlzLndvcmxkVmVydGljZXNOZWVkc1VwZGF0ZT0hMCx0aGlzLmZhY2VzPWV8fFtdLHRoaXMuZmFjZU5vcm1hbHM9W10sdGhpcy5jb21wdXRlTm9ybWFscygpLHRoaXMud29ybGRGYWNlTm9ybWFsc05lZWRzVXBkYXRlPSEwLHRoaXMud29ybGRGYWNlTm9ybWFscz1bXSx0aGlzLnVuaXF1ZUVkZ2VzPVtdLHRoaXMudW5pcXVlQXhlcz10P3Quc2xpY2UoKTpudWxsLHRoaXMuY29tcHV0ZUVkZ2VzKCksdGhpcy51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cygpfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vU2hhcGUiKSxpPUEoIi4uL21hdGgvVmVjMyIpLHI9KEEoIi4uL21hdGgvUXVhdGVybmlvbiIpLEEoIi4uL21hdGgvVHJhbnNmb3JtIikpO3QucHJvdG90eXBlPW5ldyBuLHQucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQ7dmFyIG89bmV3IGk7dC5wcm90b3R5cGUuY29tcHV0ZUVkZ2VzPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy5mYWNlcyxlPXRoaXMudmVydGljZXMsdD0oZS5sZW5ndGgsdGhpcy51bmlxdWVFZGdlcyk7dC5sZW5ndGg9MDtmb3IodmFyIG49byxpPTA7aSE9PUEubGVuZ3RoO2krKylmb3IodmFyIHI9QVtpXSxzPXIubGVuZ3RoLGE9MDthIT09czthKyspe3ZhciBCPShhKzEpJXM7ZVtyW2FdXS52c3ViKGVbcltCXV0sbiksbi5ub3JtYWxpemUoKTtmb3IodmFyIGM9ITEsZz0wO2chPT10Lmxlbmd0aDtnKyspaWYodFtnXS5hbG1vc3RFcXVhbHMobil8fHRbZ10uYWxtb3N0RXF1YWxzKG4pKXtjPSEwO2JyZWFrfWN8fHQucHVzaChuLmNsb25lKCkpfX0sdC5wcm90b3R5cGUuY29tcHV0ZU5vcm1hbHM9ZnVuY3Rpb24oKXt0aGlzLmZhY2VOb3JtYWxzLmxlbmd0aD10aGlzLmZhY2VzLmxlbmd0aDtmb3IodmFyIEE9MDtBPHRoaXMuZmFjZXMubGVuZ3RoO0ErKyl7Zm9yKHZhciBlPTA7ZTx0aGlzLmZhY2VzW0FdLmxlbmd0aDtlKyspaWYoIXRoaXMudmVydGljZXNbdGhpcy5mYWNlc1tBXVtlXV0pdGhyb3cgbmV3IEVycm9yKCJWZXJ0ZXggIit0aGlzLmZhY2VzW0FdW2VdKyIgbm90IGZvdW5kISIpO3ZhciB0PXRoaXMuZmFjZU5vcm1hbHNbQV18fG5ldyBpO3RoaXMuZ2V0RmFjZU5vcm1hbChBLHQpLHQubmVnYXRlKHQpLHRoaXMuZmFjZU5vcm1hbHNbQV09dDt2YXIgbj10aGlzLnZlcnRpY2VzW3RoaXMuZmFjZXNbQV1bMF1dO2lmKHQuZG90KG4pPDApZm9yKGNvbnNvbGUuZXJyb3IoIi5mYWNlTm9ybWFsc1siK0ErIl0gPSBWZWMzKCIrdC50b1N0cmluZygpKyIpIGxvb2tzIGxpa2UgaXQgcG9pbnRzIGludG8gdGhlIHNoYXBlPyBUaGUgdmVydGljZXMgZm9sbG93LiBNYWtlIHN1cmUgdGhleSBhcmUgb3JkZXJlZCBDQ1cgYXJvdW5kIHRoZSBub3JtYWwsIHVzaW5nIHRoZSByaWdodCBoYW5kIHJ1bGUuIiksZT0wO2U8dGhpcy5mYWNlc1tBXS5sZW5ndGg7ZSsrKWNvbnNvbGUud2FybigiLnZlcnRpY2VzWyIrdGhpcy5mYWNlc1tBXVtlXSsiXSA9IFZlYzMoIit0aGlzLnZlcnRpY2VzW3RoaXMuZmFjZXNbQV1bZV1dLnRvU3RyaW5nKCkrIikiKX19O3ZhciBzPW5ldyBpLGE9bmV3IGk7dC5jb21wdXRlTm9ybWFsPWZ1bmN0aW9uKEEsZSx0LG4pe2UudnN1YihBLGEpLHQudnN1YihlLHMpLHMuY3Jvc3MoYSxuKSxuLmlzWmVybygpfHxuLm5vcm1hbGl6ZSgpfSx0LnByb3RvdHlwZS5nZXRGYWNlTm9ybWFsPWZ1bmN0aW9uKEEsZSl7dmFyIG49dGhpcy5mYWNlc1tBXSxpPXRoaXMudmVydGljZXNbblswXV0scj10aGlzLnZlcnRpY2VzW25bMV1dLG89dGhpcy52ZXJ0aWNlc1tuWzJdXTtyZXR1cm4gdC5jb21wdXRlTm9ybWFsKGkscixvLGUpfTt2YXIgQj1uZXcgaTt0LnByb3RvdHlwZS5jbGlwQWdhaW5zdEh1bGw9ZnVuY3Rpb24oQSxlLHQsbixyLG8scyxhLGMpe2Zvcih2YXIgZz1CLEU9LTEsUT0tTnVtYmVyLk1BWF9WQUxVRSx1PTA7dTx0LmZhY2VzLmxlbmd0aDt1Kyspe2cuY29weSh0LmZhY2VOb3JtYWxzW3VdKSxyLnZtdWx0KGcsZyk7dmFyIGw9Zy5kb3Qobyk7bD5RJiYoUT1sLEU9dSl9Zm9yKHZhciBoPVtdLHc9dC5mYWNlc1tFXSxDPXcubGVuZ3RoLEk9MDtDPkk7SSsrKXt2YXIgTT10LnZlcnRpY2VzW3dbSV1dLGQ9bmV3IGk7ZC5jb3B5KE0pLHIudm11bHQoZCxkKSxuLnZhZGQoZCxkKSxoLnB1c2goZCl9RT49MCYmdGhpcy5jbGlwRmFjZUFnYWluc3RIdWxsKG8sQSxlLGgscyxhLGMpfTt2YXIgYz1uZXcgaSxnPW5ldyBpLEU9bmV3IGksUT1uZXcgaSx1PW5ldyBpLGw9bmV3IGk7dC5wcm90b3R5cGUuZmluZFNlcGFyYXRpbmdBeGlzPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8scyl7dmFyIGE9YyxCPWcsaD1FLHc9USxDPXUsST1sLE09TnVtYmVyLk1BWF9WQUxVRSxkPXRoaXM7aWYoZC51bmlxdWVBeGVzKWZvcih2YXIgcD0wO3AhPT1kLnVuaXF1ZUF4ZXMubGVuZ3RoO3ArKyl7aWYodC52bXVsdChkLnVuaXF1ZUF4ZXNbcF0sYSksITE9PT0oWT1kLnRlc3RTZXBBeGlzKGEsQSxlLHQsbixpKSkpcmV0dXJuITE7TT5ZJiYoTT1ZLHIuY29weShhKSl9ZWxzZXt2YXIgbT1vP28ubGVuZ3RoOmQuZmFjZXMubGVuZ3RoO2ZvcihwPTA7bT5wO3ArKyl7dmFyIEY9bz9vW3BdOnA7aWYoYS5jb3B5KGQuZmFjZU5vcm1hbHNbRl0pLHQudm11bHQoYSxhKSwhMT09PShZPWQudGVzdFNlcEF4aXMoYSxBLGUsdCxuLGkpKSlyZXR1cm4hMTtNPlkmJihNPVksci5jb3B5KGEpKX19aWYoQS51bmlxdWVBeGVzKWZvcihwPTA7cCE9PUEudW5pcXVlQXhlcy5sZW5ndGg7cCsrKXtpZihpLnZtdWx0KEEudW5pcXVlQXhlc1twXSxCKSwhMT09PShZPWQudGVzdFNlcEF4aXMoQixBLGUsdCxuLGkpKSlyZXR1cm4hMTtNPlkmJihNPVksci5jb3B5KEIpKX1lbHNle3ZhciBEPXM/cy5sZW5ndGg6QS5mYWNlcy5sZW5ndGg7Zm9yKHA9MDtEPnA7cCsrKXt2YXIgWTtpZihGPXM/c1twXTpwLEIuY29weShBLmZhY2VOb3JtYWxzW0ZdKSxpLnZtdWx0KEIsQiksITE9PT0oWT1kLnRlc3RTZXBBeGlzKEIsQSxlLHQsbixpKSkpcmV0dXJuITE7TT5ZJiYoTT1ZLHIuY29weShCKSl9fWZvcih2YXIgZj0wO2YhPT1kLnVuaXF1ZUVkZ2VzLmxlbmd0aDtmKyspe3Qudm11bHQoZC51bmlxdWVFZGdlc1tmXSx3KTtmb3IodmFyIE49MDtOIT09QS51bmlxdWVFZGdlcy5sZW5ndGg7TisrKWlmKGkudm11bHQoQS51bmlxdWVFZGdlc1tOXSxDKSx3LmNyb3NzKEMsSSksIUkuYWxtb3N0WmVybygpKXtJLm5vcm1hbGl6ZSgpO3ZhciBVPWQudGVzdFNlcEF4aXMoSSxBLGUsdCxuLGkpO2lmKCExPT09VSlyZXR1cm4hMTtNPlUmJihNPVUsci5jb3B5KEkpKX19cmV0dXJuIG4udnN1YihlLGgpLGguZG90KHIpPjAmJnIubmVnYXRlKHIpLCEwfTt2YXIgaD1bXSx3PVtdO3QucHJvdG90eXBlLnRlc3RTZXBBeGlzPWZ1bmN0aW9uKEEsZSxuLGkscixvKXt0LnByb2plY3QodGhpcyxBLG4saSxoKSx0LnByb2plY3QoZSxBLHIsbyx3KTt2YXIgcz1oWzBdLGE9aFsxXSxCPXdbMF0sYz13WzFdO2lmKGM+c3x8YT5CKXJldHVybiExO3ZhciBnPXMtYyxFPUItYTtyZXR1cm4gRT5nP2c6RX07dmFyIEM9bmV3IGksST1uZXcgaTt0LnByb3RvdHlwZS5jYWxjdWxhdGVMb2NhbEluZXJ0aWE9ZnVuY3Rpb24oQSxlKXt0aGlzLmNvbXB1dGVMb2NhbEFBQkIoQyxJKTt2YXIgdD1JLngtQy54LG49SS55LUMueSxpPUkuei1DLno7ZS54PTEvMTIqQSooMipuKjIqbisyKmkqMippKSxlLnk9MS8xMipBKigyKnQqMip0KzIqaSoyKmkpLGUuej0xLzEyKkEqKDIqbioyKm4rMip0KjIqdCl9LHQucHJvdG90eXBlLmdldFBsYW5lQ29uc3RhbnRPZkZhY2U9ZnVuY3Rpb24oQSl7dmFyIGU9dGhpcy5mYWNlc1tBXSx0PXRoaXMuZmFjZU5vcm1hbHNbQV0sbj10aGlzLnZlcnRpY2VzW2VbMF1dO3JldHVybi10LmRvdChuKX07dmFyIE09bmV3IGksZD1uZXcgaSxwPW5ldyBpLG09bmV3IGksRj1uZXcgaSxEPW5ldyBpLFk9bmV3IGksZj1uZXcgaTt0LnByb3RvdHlwZS5jbGlwRmFjZUFnYWluc3RIdWxsPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8pe2Zvcih2YXIgcz1NLGE9ZCxCPXAsYz1tLGc9RixFPUQsUT1ZLHU9ZixsPXRoaXMsaD1uLHc9W10sQz0tMSxJPU51bWJlci5NQVhfVkFMVUUsTj0wO048bC5mYWNlcy5sZW5ndGg7TisrKXtzLmNvcHkobC5mYWNlTm9ybWFsc1tOXSksdC52bXVsdChzLHMpO3ZhciBVPXMuZG90KEEpO0k+VSYmKEk9VSxDPU4pfWlmKCEoMD5DKSl7dmFyIHk9bC5mYWNlc1tDXTt5LmNvbm5lY3RlZEZhY2VzPVtdO2Zvcih2YXIgVD0wO1Q8bC5mYWNlcy5sZW5ndGg7VCsrKWZvcih2YXIgeD0wO3g8bC5mYWNlc1tUXS5sZW5ndGg7eCsrKS0xIT09eS5pbmRleE9mKGwuZmFjZXNbVF1beF0pJiZUIT09QyYmLTE9PT15LmNvbm5lY3RlZEZhY2VzLmluZGV4T2YoVCkmJnkuY29ubmVjdGVkRmFjZXMucHVzaChUKTtmb3IodmFyIFI9KGgubGVuZ3RoLHkubGVuZ3RoKSxHPTA7Uj5HO0crKyl7dmFyIFM9bC52ZXJ0aWNlc1t5W0ddXSxiPWwudmVydGljZXNbeVsoRysxKSVSXV07Uy52c3ViKGIsYSksQi5jb3B5KGEpLHQudm11bHQoQixCKSxlLnZhZGQoQixCKSxjLmNvcHkodGhpcy5mYWNlTm9ybWFsc1tDXSksdC52bXVsdChjLGMpLGUudmFkZChjLGMpLEIuY3Jvc3MoYyxnKSxnLm5lZ2F0ZShnKSxFLmNvcHkoUyksdC52bXVsdChFLEUpLGUudmFkZChFLEUpO3ZhciBIPShFLmRvdChnKSx5LmNvbm5lY3RlZEZhY2VzW0ddKTtRLmNvcHkodGhpcy5mYWNlTm9ybWFsc1tIXSk7dmFyIHY9dGhpcy5nZXRQbGFuZUNvbnN0YW50T2ZGYWNlKEgpO3UuY29weShRKSx0LnZtdWx0KHUsdSk7dmFyIGs9di11LmRvdChlKTtmb3IodGhpcy5jbGlwRmFjZUFnYWluc3RQbGFuZShoLHcsdSxrKTtoLmxlbmd0aDspaC5zaGlmdCgpO2Zvcig7dy5sZW5ndGg7KWgucHVzaCh3LnNoaWZ0KCkpfWZvcihRLmNvcHkodGhpcy5mYWNlTm9ybWFsc1tDXSksdj10aGlzLmdldFBsYW5lQ29uc3RhbnRPZkZhY2UoQyksdS5jb3B5KFEpLHQudm11bHQodSx1KSxrPXYtdS5kb3QoZSksVD0wO1Q8aC5sZW5ndGg7VCsrKXt2YXIgaj11LmRvdChoW1RdKStrO2lmKGk+PWomJihjb25zb2xlLmxvZygiY2xhbXBlZDogZGVwdGg9IitqKyIgdG8gbWluRGlzdD0iK2kpLGo9aSkscj49ail7dmFyIEo9aFtUXTtpZigwPj1qKXt2YXIgej17cG9pbnQ6Sixub3JtYWw6dSxkZXB0aDpqfTtvLnB1c2goeil9fX19fSx0LnByb3RvdHlwZS5jbGlwRmFjZUFnYWluc3RQbGFuZT1mdW5jdGlvbihBLGUsdCxuKXt2YXIgcixvLHM9QS5sZW5ndGg7aWYoMj5zKXJldHVybiBlO3ZhciBhPUFbQS5sZW5ndGgtMV0sQj1BWzBdO3I9dC5kb3QoYSkrbjtmb3IodmFyIGM9MDtzPmM7YysrKXtpZihCPUFbY10sbz10LmRvdChCKStuLDA+cilpZigwPm8pKGc9bmV3IGkpLmNvcHkoQiksZS5wdXNoKGcpO2Vsc2V7dmFyIGc9bmV3IGk7YS5sZXJwKEIsci8oci1vKSxnKSxlLnB1c2goZyl9ZWxzZSAwPm8mJihnPW5ldyBpLGEubGVycChCLHIvKHItbyksZyksZS5wdXNoKGcpLGUucHVzaChCKSk7YT1CLHI9b31yZXR1cm4gZX0sdC5wcm90b3R5cGUuY29tcHV0ZVdvcmxkVmVydGljZXM9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9dGhpcy52ZXJ0aWNlcy5sZW5ndGg7dGhpcy53b3JsZFZlcnRpY2VzLmxlbmd0aDx0Oyl0aGlzLndvcmxkVmVydGljZXMucHVzaChuZXcgaSk7Zm9yKHZhciBuPXRoaXMudmVydGljZXMscj10aGlzLndvcmxkVmVydGljZXMsbz0wO28hPT10O28rKyllLnZtdWx0KG5bb10scltvXSksQS52YWRkKHJbb10scltvXSk7dGhpcy53b3JsZFZlcnRpY2VzTmVlZHNVcGRhdGU9ITF9LG5ldyBpLHQucHJvdG90eXBlLmNvbXB1dGVMb2NhbEFBQkI9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLnZlcnRpY2VzLmxlbmd0aCxuPXRoaXMudmVydGljZXM7QS5zZXQoTnVtYmVyLk1BWF9WQUxVRSxOdW1iZXIuTUFYX1ZBTFVFLE51bWJlci5NQVhfVkFMVUUpLGUuc2V0KC1OdW1iZXIuTUFYX1ZBTFVFLC1OdW1iZXIuTUFYX1ZBTFVFLC1OdW1iZXIuTUFYX1ZBTFVFKTtmb3IodmFyIGk9MDt0Pmk7aSsrKXt2YXIgcj1uW2ldO3IueDxBLng/QS54PXIueDpyLng+ZS54JiYoZS54PXIueCksci55PEEueT9BLnk9ci55OnIueT5lLnkmJihlLnk9ci55KSxyLno8QS56P0Euej1yLno6ci56PmUueiYmKGUuej1yLnopfX0sdC5wcm90b3R5cGUuY29tcHV0ZVdvcmxkRmFjZU5vcm1hbHM9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMuZmFjZU5vcm1hbHMubGVuZ3RoO3RoaXMud29ybGRGYWNlTm9ybWFscy5sZW5ndGg8ZTspdGhpcy53b3JsZEZhY2VOb3JtYWxzLnB1c2gobmV3IGkpO2Zvcih2YXIgdD10aGlzLmZhY2VOb3JtYWxzLG49dGhpcy53b3JsZEZhY2VOb3JtYWxzLHI9MDtyIT09ZTtyKyspQS52bXVsdCh0W3JdLG5bcl0pO3RoaXMud29ybGRGYWNlTm9ybWFsc05lZWRzVXBkYXRlPSExfSx0LnByb3RvdHlwZS51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cz1mdW5jdGlvbigpe2Zvcih2YXIgQT0wLGU9dGhpcy52ZXJ0aWNlcyx0PTAsbj1lLmxlbmd0aDt0IT09bjt0Kyspe3ZhciBpPWVbdF0ubm9ybTIoKTtpPkEmJihBPWkpfXRoaXMuYm91bmRpbmdTcGhlcmVSYWRpdXM9TWF0aC5zcXJ0KEEpfTt2YXIgTj1uZXcgaTt0LnByb3RvdHlwZS5jYWxjdWxhdGVXb3JsZEFBQkI9ZnVuY3Rpb24oQSxlLHQsbil7Zm9yKHZhciBpLHIsbyxzLGEsQixjPXRoaXMudmVydGljZXMubGVuZ3RoLGc9dGhpcy52ZXJ0aWNlcyxFPTA7Yz5FO0UrKyl7Ti5jb3B5KGdbRV0pLGUudm11bHQoTixOKSxBLnZhZGQoTixOKTt2YXIgUT1OO1EueDxpfHx2b2lkIDA9PT1pP2k9US54OihRLng+c3x8dm9pZCAwPT09cykmJihzPVEueCksUS55PHJ8fHZvaWQgMD09PXI/cj1RLnk6KFEueT5hfHx2b2lkIDA9PT1hKSYmKGE9US55KSxRLno8b3x8dm9pZCAwPT09bz9vPVEuejooUS56PkJ8fHZvaWQgMD09PUIpJiYoQj1RLnopfXQuc2V0KGkscixvKSxuLnNldChzLGEsQil9LHQucHJvdG90eXBlLnZvbHVtZT1mdW5jdGlvbigpe3JldHVybiA0Kk1hdGguUEkqdGhpcy5ib3VuZGluZ1NwaGVyZVJhZGl1cy8zfSx0LnByb3RvdHlwZS5nZXRBdmVyYWdlUG9pbnRMb2NhbD1mdW5jdGlvbihBKXtBPUF8fG5ldyBpO2Zvcih2YXIgZT10aGlzLnZlcnRpY2VzLmxlbmd0aCx0PXRoaXMudmVydGljZXMsbj0wO2U+bjtuKyspQS52YWRkKHRbbl0sQSk7cmV0dXJuIEEubXVsdCgxL2UsQSksQX0sdC5wcm90b3R5cGUudHJhbnNmb3JtQWxsUG9pbnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9dGhpcy52ZXJ0aWNlcy5sZW5ndGgsbj10aGlzLnZlcnRpY2VzO2lmKGUpe2Zvcih2YXIgaT0wO3Q+aTtpKyspe3ZhciByPW5baV07ZS52bXVsdChyLHIpfWZvcihpPTA7aTx0aGlzLmZhY2VOb3JtYWxzLmxlbmd0aDtpKyspcj10aGlzLmZhY2VOb3JtYWxzW2ldLGUudm11bHQocixyKX1pZihBKWZvcihpPTA7dD5pO2krKykocj1uW2ldKS52YWRkKEEscil9O3ZhciBVPW5ldyBpLHk9bmV3IGksVD1uZXcgaTt0LnByb3RvdHlwZS5wb2ludElzSW5zaWRlPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMudmVydGljZXMubGVuZ3RoLHQ9dGhpcy52ZXJ0aWNlcyxuPXRoaXMuZmFjZXMsaT10aGlzLmZhY2VOb3JtYWxzLHI9dGhpcy5mYWNlcy5sZW5ndGgsbz1VO3RoaXMuZ2V0QXZlcmFnZVBvaW50TG9jYWwobyk7Zm9yKHZhciBzPTA7cj5zO3MrKyl7dGhpcy5mYWNlc1tzXS5sZW5ndGgsZT1pW3NdO3ZhciBhPXRbbltzXVswXV0sQj15O0EudnN1YihhLEIpO3ZhciBjPWUuZG90KEIpLGc9VDtvLnZzdWIoYSxnKTt2YXIgRT1lLmRvdChnKTtpZigwPmMmJkU+MHx8Yz4wJiYwPkUpcmV0dXJuITF9cmV0dXJuLTF9O3ZhciB4PShuZXcgaSxuZXcgaSksUj1uZXcgaTt0LnByb2plY3Q9ZnVuY3Rpb24oQSxlLHQsbixpKXt2YXIgbz1BLnZlcnRpY2VzLmxlbmd0aCxzPXgsYT0wLEI9MCxjPVIsZz1BLnZlcnRpY2VzO2Muc2V0WmVybygpLHIudmVjdG9yVG9Mb2NhbEZyYW1lKHQsbixlLHMpLHIucG9pbnRUb0xvY2FsRnJhbWUodCxuLGMsYyk7dmFyIEU9Yy5kb3Qocyk7Qj1hPWdbMF0uZG90KHMpO2Zvcih2YXIgUT0xO28+UTtRKyspe3ZhciB1PWdbUV0uZG90KHMpO3U+YSYmKGE9dSksQj51JiYoQj11KX1pZigoQi09RSk+KGEtPUUpKXt2YXIgbD1CO0I9YSxhPWx9aVswXT1hLGlbMV09Qn19LHsiLi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi4vbWF0aC9UcmFuc2Zvcm0iOjI5LCIuLi9tYXRoL1ZlYzMiOjMwLCIuL1NoYXBlIjo0M31dLDM5OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSxlLHQsbyl7dmFyIHM9byxhPVtdLEI9W10sYz1bXSxnPVtdLEU9W10sUT1NYXRoLmNvcyx1PU1hdGguc2luO2EucHVzaChuZXcgaShlKlEoMCksZSp1KDApLC41Ki10KSksZy5wdXNoKDApLGEucHVzaChuZXcgaShBKlEoMCksQSp1KDApLC41KnQpKSxFLnB1c2goMSk7Zm9yKHZhciBsPTA7cz5sO2wrKyl7dmFyIGg9MipNYXRoLlBJL3MqKGwrMSksdz0yKk1hdGguUEkvcyoobCsuNSk7cy0xPmw/KGEucHVzaChuZXcgaShlKlEoaCksZSp1KGgpLC41Ki10KSksZy5wdXNoKDIqbCsyKSxhLnB1c2gobmV3IGkoQSpRKGgpLEEqdShoKSwuNSp0KSksRS5wdXNoKDIqbCszKSxjLnB1c2goWzIqbCsyLDIqbCszLDIqbCsxLDIqbF0pKTpjLnB1c2goWzAsMSwyKmwrMSwyKmxdKSwocyUyPT0xfHxzLzI+bCkmJkIucHVzaChuZXcgaShRKHcpLHUodyksMCkpfWMucHVzaChFKSxCLnB1c2gobmV3IGkoMCwwLDEpKTt2YXIgQz1bXTtmb3IobD0wO2w8Zy5sZW5ndGg7bCsrKUMucHVzaChnW2cubGVuZ3RoLWwtMV0pO2MucHVzaChDKSx0aGlzLnR5cGU9bi50eXBlcy5DT05WRVhQT0xZSEVEUk9OLHIuY2FsbCh0aGlzLGEsYyxCKX1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuL1NoYXBlIiksaT1BKCIuLi9tYXRoL1ZlYzMiKSxyPShBKCIuLi9tYXRoL1F1YXRlcm5pb24iKSxBKCIuL0NvbnZleFBvbHloZWRyb24iKSk7dC5wcm90b3R5cGU9bmV3IHJ9LHsiLi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi4vbWF0aC9WZWMzIjozMCwiLi9Db252ZXhQb2x5aGVkcm9uIjozOCwiLi9TaGFwZSI6NDN9XSw0MDpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSl7ZT1vLmRlZmF1bHRzKGUse21heFZhbHVlOm51bGwsbWluVmFsdWU6bnVsbCxlbGVtZW50U2l6ZToxfSksdGhpcy5kYXRhPUEsdGhpcy5tYXhWYWx1ZT1lLm1heFZhbHVlLHRoaXMubWluVmFsdWU9ZS5taW5WYWx1ZSx0aGlzLmVsZW1lbnRTaXplPWUuZWxlbWVudFNpemUsbnVsbD09PWUubWluVmFsdWUmJnRoaXMudXBkYXRlTWluVmFsdWUoKSxudWxsPT09ZS5tYXhWYWx1ZSYmdGhpcy51cGRhdGVNYXhWYWx1ZSgpLHRoaXMuY2FjaGVFbmFibGVkPSEwLG4uY2FsbCh0aGlzKSx0aGlzLnBpbGxhckNvbnZleD1uZXcgaSx0aGlzLnBpbGxhck9mZnNldD1uZXcgcix0aGlzLnR5cGU9bi50eXBlcy5IRUlHSFRGSUVMRCx0aGlzLnVwZGF0ZUJvdW5kaW5nU3BoZXJlUmFkaXVzKCksdGhpcy5fY2FjaGVkUGlsbGFycz17fX12YXIgbj1BKCIuL1NoYXBlIiksaT1BKCIuL0NvbnZleFBvbHloZWRyb24iKSxyPUEoIi4uL21hdGgvVmVjMyIpLG89QSgiLi4vdXRpbHMvVXRpbHMiKTtlLmV4cG9ydHM9dCx0LnByb3RvdHlwZT1uZXcgbix0LnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXt0aGlzLl9jYWNoZWRQaWxsYXJzPXt9fSx0LnByb3RvdHlwZS51cGRhdGVNaW5WYWx1ZT1mdW5jdGlvbigpe2Zvcih2YXIgQT10aGlzLmRhdGEsZT1BWzBdWzBdLHQ9MDt0IT09QS5sZW5ndGg7dCsrKWZvcih2YXIgbj0wO24hPT1BW3RdLmxlbmd0aDtuKyspe3ZhciBpPUFbdF1bbl07ZT5pJiYoZT1pKX10aGlzLm1pblZhbHVlPWV9LHQucHJvdG90eXBlLnVwZGF0ZU1heFZhbHVlPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPXRoaXMuZGF0YSxlPUFbMF1bMF0sdD0wO3QhPT1BLmxlbmd0aDt0KyspZm9yKHZhciBuPTA7biE9PUFbdF0ubGVuZ3RoO24rKyl7dmFyIGk9QVt0XVtuXTtpPmUmJihlPWkpfXRoaXMubWF4VmFsdWU9ZX0sdC5wcm90b3R5cGUuc2V0SGVpZ2h0VmFsdWVBdEluZGV4PWZ1bmN0aW9uKEEsZSx0KXt0aGlzLmRhdGFbQV1bZV09dCx0aGlzLmNsZWFyQ2FjaGVkQ29udmV4VHJpYW5nbGVQaWxsYXIoQSxlLCExKSxBPjAmJih0aGlzLmNsZWFyQ2FjaGVkQ29udmV4VHJpYW5nbGVQaWxsYXIoQS0xLGUsITApLHRoaXMuY2xlYXJDYWNoZWRDb252ZXhUcmlhbmdsZVBpbGxhcihBLTEsZSwhMSkpLGU+MCYmKHRoaXMuY2xlYXJDYWNoZWRDb252ZXhUcmlhbmdsZVBpbGxhcihBLGUtMSwhMCksdGhpcy5jbGVhckNhY2hlZENvbnZleFRyaWFuZ2xlUGlsbGFyKEEsZS0xLCExKSksZT4wJiZBPjAmJnRoaXMuY2xlYXJDYWNoZWRDb252ZXhUcmlhbmdsZVBpbGxhcihBLTEsZS0xLCEwKX0sdC5wcm90b3R5cGUuZ2V0UmVjdE1pbk1heD1mdW5jdGlvbihBLGUsdCxuLGkpe2k9aXx8W107Zm9yKHZhciByPXRoaXMuZGF0YSxvPXRoaXMubWluVmFsdWUscz1BO3Q+PXM7cysrKWZvcih2YXIgYT1lO24+PWE7YSsrKXt2YXIgQj1yW3NdW2FdO0I+byYmKG89Qil9aVswXT10aGlzLm1pblZhbHVlLGlbMV09b30sdC5wcm90b3R5cGUuZ2V0SW5kZXhPZlBvc2l0aW9uPWZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpPXRoaXMuZWxlbWVudFNpemUscj10aGlzLmRhdGEsbz1NYXRoLmZsb29yKEEvaSkscz1NYXRoLmZsb29yKGUvaSk7cmV0dXJuIHRbMF09byx0WzFdPXMsbiYmKDA+byYmKG89MCksMD5zJiYocz0wKSxvPj1yLmxlbmd0aC0xJiYobz1yLmxlbmd0aC0xKSxzPj1yWzBdLmxlbmd0aC0xJiYocz1yWzBdLmxlbmd0aC0xKSksISgwPm98fDA+c3x8bz49ci5sZW5ndGgtMXx8cz49clswXS5sZW5ndGgtMSl9LHQucHJvdG90eXBlLmdldEhlaWdodEF0PWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1bXTt0aGlzLmdldEluZGV4T2ZQb3NpdGlvbihBLGUsbix0KTt2YXIgaT1bXTtyZXR1cm4gdGhpcy5nZXRSZWN0TWluTWF4KG5bMF0sblsxXSsxLG5bMF0sblsxXSsxLGkpLChpWzBdK2lbMV0pLzJ9LHQucHJvdG90eXBlLmdldENhY2hlQ29udmV4VHJpYW5nbGVQaWxsYXJLZXk9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBKyJfIitlKyJfIisodD8xOjApfSx0LnByb3RvdHlwZS5nZXRDYWNoZWRDb252ZXhUcmlhbmdsZVBpbGxhcj1mdW5jdGlvbihBLGUsdCl7cmV0dXJuIHRoaXMuX2NhY2hlZFBpbGxhcnNbdGhpcy5nZXRDYWNoZUNvbnZleFRyaWFuZ2xlUGlsbGFyS2V5KEEsZSx0KV19LHQucHJvdG90eXBlLnNldENhY2hlZENvbnZleFRyaWFuZ2xlUGlsbGFyPWZ1bmN0aW9uKEEsZSx0LG4saSl7dGhpcy5fY2FjaGVkUGlsbGFyc1t0aGlzLmdldENhY2hlQ29udmV4VHJpYW5nbGVQaWxsYXJLZXkoQSxlLHQpXT17Y29udmV4Om4sb2Zmc2V0Oml9fSx0LnByb3RvdHlwZS5jbGVhckNhY2hlZENvbnZleFRyaWFuZ2xlUGlsbGFyPWZ1bmN0aW9uKEEsZSx0KXtkZWxldGUgdGhpcy5fY2FjaGVkUGlsbGFyc1t0aGlzLmdldENhY2hlQ29udmV4VHJpYW5nbGVQaWxsYXJLZXkoQSxlLHQpXX0sdC5wcm90b3R5cGUuZ2V0Q29udmV4VHJpYW5nbGVQaWxsYXI9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXRoaXMucGlsbGFyQ29udmV4LG89dGhpcy5waWxsYXJPZmZzZXQ7aWYodGhpcy5jYWNoZUVuYWJsZWQpe2lmKHM9dGhpcy5nZXRDYWNoZWRDb252ZXhUcmlhbmdsZVBpbGxhcihBLGUsdCkpcmV0dXJuIHRoaXMucGlsbGFyQ29udmV4PXMuY29udmV4LHZvaWQodGhpcy5waWxsYXJPZmZzZXQ9cy5vZmZzZXQpO249bmV3IGksbz1uZXcgcix0aGlzLnBpbGxhckNvbnZleD1uLHRoaXMucGlsbGFyT2Zmc2V0PW99dmFyIHM9dGhpcy5kYXRhLGE9dGhpcy5lbGVtZW50U2l6ZSxCPW4uZmFjZXM7bi52ZXJ0aWNlcy5sZW5ndGg9Njtmb3IodmFyIGM9MDs2PmM7YysrKW4udmVydGljZXNbY118fChuLnZlcnRpY2VzW2NdPW5ldyByKTtmb3IoQi5sZW5ndGg9NSxjPTA7NT5jO2MrKylCW2NdfHwoQltjXT1bXSk7dmFyIGc9bi52ZXJ0aWNlcyxFPShNYXRoLm1pbihzW0FdW2VdLHNbQSsxXVtlXSxzW0FdW2UrMV0sc1tBKzFdW2UrMV0pLXRoaXMubWluVmFsdWUpLzIrdGhpcy5taW5WYWx1ZTt0PyhvLnNldCgoQSsuNzUpKmEsKGUrLjc1KSphLEUpLGdbMF0uc2V0KC4yNSphLC4yNSphLHNbQSsxXVtlKzFdLUUpLGdbMV0uc2V0KC0uNzUqYSwuMjUqYSxzW0FdW2UrMV0tRSksZ1syXS5zZXQoLjI1KmEsLS43NSphLHNbQSsxXVtlXS1FKSxnWzNdLnNldCguMjUqYSwuMjUqYSwtRS0xKSxnWzRdLnNldCgtLjc1KmEsLjI1KmEsLUUtMSksZ1s1XS5zZXQoLjI1KmEsLS43NSphLC1FLTEpLEJbMF1bMF09MCxCWzBdWzFdPTEsQlswXVsyXT0yLEJbMV1bMF09NSxCWzFdWzFdPTQsQlsxXVsyXT0zLEJbMl1bMF09MixCWzJdWzFdPTUsQlsyXVsyXT0zLEJbMl1bM109MCxCWzNdWzBdPTMsQlszXVsxXT00LEJbM11bMl09MSxCWzNdWzNdPTAsQls0XVswXT0xLEJbNF1bMV09NCxCWzRdWzJdPTUsQls0XVszXT0yKTooby5zZXQoKEErLjI1KSphLChlKy4yNSkqYSxFKSxnWzBdLnNldCgtLjI1KmEsLS4yNSphLHNbQV1bZV0tRSksZ1sxXS5zZXQoLjc1KmEsLS4yNSphLHNbQSsxXVtlXS1FKSxnWzJdLnNldCgtLjI1KmEsLjc1KmEsc1tBXVtlKzFdLUUpLGdbM10uc2V0KC0uMjUqYSwtLjI1KmEsLUUtMSksZ1s0XS5zZXQoLjc1KmEsLS4yNSphLC1FLTEpLGdbNV0uc2V0KC0uMjUqYSwuNzUqYSwtRS0xKSxCWzBdWzBdPTAsQlswXVsxXT0xLEJbMF1bMl09MixCWzFdWzBdPTUsQlsxXVsxXT00LEJbMV1bMl09MyxCWzJdWzBdPTAsQlsyXVsxXT0yLEJbMl1bMl09NSxCWzJdWzNdPTMsQlszXVswXT0xLEJbM11bMV09MCxCWzNdWzJdPTMsQlszXVszXT00LEJbNF1bMF09NCxCWzRdWzFdPTUsQls0XVsyXT0yLEJbNF1bM109MSksbi5jb21wdXRlTm9ybWFscygpLG4uY29tcHV0ZUVkZ2VzKCksbi51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cygpLHRoaXMuc2V0Q2FjaGVkQ29udmV4VHJpYW5nbGVQaWxsYXIoQSxlLHQsbixvKX0sdC5wcm90b3R5cGUuY2FsY3VsYXRlTG9jYWxJbmVydGlhPWZ1bmN0aW9uKEEsZSl7cmV0dXJuKGU9ZXx8bmV3IHIpLnNldCgwLDAsMCksZX0sdC5wcm90b3R5cGUudm9sdW1lPWZ1bmN0aW9uKCl7cmV0dXJuIE51bWJlci5NQVhfVkFMVUV9LHQucHJvdG90eXBlLmNhbGN1bGF0ZVdvcmxkQUFCQj1mdW5jdGlvbihBLGUsdCxuKXt0LnNldCgtTnVtYmVyLk1BWF9WQUxVRSwtTnVtYmVyLk1BWF9WQUxVRSwtTnVtYmVyLk1BWF9WQUxVRSksbi5zZXQoTnVtYmVyLk1BWF9WQUxVRSxOdW1iZXIuTUFYX1ZBTFVFLE51bWJlci5NQVhfVkFMVUUpfSx0LnByb3RvdHlwZS51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cz1mdW5jdGlvbigpe3ZhciBBPXRoaXMuZGF0YSxlPXRoaXMuZWxlbWVudFNpemU7dGhpcy5ib3VuZGluZ1NwaGVyZVJhZGl1cz1uZXcgcihBLmxlbmd0aCplLEFbMF0ubGVuZ3RoKmUsTWF0aC5tYXgoTWF0aC5hYnModGhpcy5tYXhWYWx1ZSksTWF0aC5hYnModGhpcy5taW5WYWx1ZSkpKS5ub3JtKCl9fSx7Ii4uL21hdGgvVmVjMyI6MzAsIi4uL3V0aWxzL1V0aWxzIjo1MywiLi9Db252ZXhQb2x5aGVkcm9uIjozOCwiLi9TaGFwZSI6NDN9XSw0MTpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7bi5jYWxsKHRoaXMpLHRoaXMudHlwZT1uLnR5cGVzLlBBUlRJQ0xFfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vU2hhcGUiKSxpPUEoIi4uL21hdGgvVmVjMyIpO3QucHJvdG90eXBlPW5ldyBuLHQucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQsdC5wcm90b3R5cGUuY2FsY3VsYXRlTG9jYWxJbmVydGlhPWZ1bmN0aW9uKEEsZSl7cmV0dXJuKGU9ZXx8bmV3IGkpLnNldCgwLDAsMCksZX0sdC5wcm90b3R5cGUudm9sdW1lPWZ1bmN0aW9uKCl7cmV0dXJuIDB9LHQucHJvdG90eXBlLnVwZGF0ZUJvdW5kaW5nU3BoZXJlUmFkaXVzPWZ1bmN0aW9uKCl7dGhpcy5ib3VuZGluZ1NwaGVyZVJhZGl1cz0wfSx0LnByb3RvdHlwZS5jYWxjdWxhdGVXb3JsZEFBQkI9ZnVuY3Rpb24oQSxlLHQsbil7dC5jb3B5KEEpLG4uY29weShBKX19LHsiLi4vbWF0aC9WZWMzIjozMCwiLi9TaGFwZSI6NDN9XSw0MjpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7bi5jYWxsKHRoaXMpLHRoaXMudHlwZT1uLnR5cGVzLlBMQU5FLHRoaXMud29ybGROb3JtYWw9bmV3IGksdGhpcy53b3JsZE5vcm1hbE5lZWRzVXBkYXRlPSEwLHRoaXMuYm91bmRpbmdTcGhlcmVSYWRpdXM9TnVtYmVyLk1BWF9WQUxVRX1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuL1NoYXBlIiksaT1BKCIuLi9tYXRoL1ZlYzMiKTt0LnByb3RvdHlwZT1uZXcgbix0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10LHQucHJvdG90eXBlLmNvbXB1dGVXb3JsZE5vcm1hbD1mdW5jdGlvbihBKXt2YXIgZT10aGlzLndvcmxkTm9ybWFsO2Uuc2V0KDAsMCwxKSxBLnZtdWx0KGUsZSksdGhpcy53b3JsZE5vcm1hbE5lZWRzVXBkYXRlPSExfSx0LnByb3RvdHlwZS5jYWxjdWxhdGVMb2NhbEluZXJ0aWE9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gZXx8bmV3IGl9LHQucHJvdG90eXBlLnZvbHVtZT1mdW5jdGlvbigpe3JldHVybiBOdW1iZXIuTUFYX1ZBTFVFfTt2YXIgcj1uZXcgaTt0LnByb3RvdHlwZS5jYWxjdWxhdGVXb3JsZEFBQkI9ZnVuY3Rpb24oQSxlLHQsbil7ci5zZXQoMCwwLDEpLGUudm11bHQocixyKTt2YXIgaT1OdW1iZXIuTUFYX1ZBTFVFO3Quc2V0KC1pLC1pLC1pKSxuLnNldChpLGksaSksMT09PXIueCYmKG4ueD1BLngpLDE9PT1yLnkmJihuLnk9QS55KSwxPT09ci56JiYobi56PUEueiksLTE9PT1yLngmJih0Lng9QS54KSwtMT09PXIueSYmKHQueT1BLnkpLC0xPT09ci56JiYodC56PUEueil9LHQucHJvdG90eXBlLnVwZGF0ZUJvdW5kaW5nU3BoZXJlUmFkaXVzPWZ1bmN0aW9uKCl7dGhpcy5ib3VuZGluZ1NwaGVyZVJhZGl1cz1OdW1iZXIuTUFYX1ZBTFVFfX0seyIuLi9tYXRoL1ZlYzMiOjMwLCIuL1NoYXBlIjo0M31dLDQzOltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXt0aGlzLmlkPXQuaWRDb3VudGVyKyssdGhpcy50eXBlPTAsdGhpcy5ib3VuZGluZ1NwaGVyZVJhZGl1cz0wLHRoaXMuY29sbGlzaW9uUmVzcG9uc2U9ITAsdGhpcy5tYXRlcmlhbD1udWxsfWUuZXhwb3J0cz10O3ZhciB0PUEoIi4vU2hhcGUiKTtBKCIuLi9tYXRoL1ZlYzMiKSxBKCIuLi9tYXRoL1F1YXRlcm5pb24iKSxBKCIuLi9tYXRlcmlhbC9NYXRlcmlhbCIpLHQucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQsdC5wcm90b3R5cGUudXBkYXRlQm91bmRpbmdTcGhlcmVSYWRpdXM9ZnVuY3Rpb24oKXt0aHJvdyJjb21wdXRlQm91bmRpbmdTcGhlcmVSYWRpdXMoKSBub3QgaW1wbGVtZW50ZWQgZm9yIHNoYXBlIHR5cGUgIit0aGlzLnR5cGV9LHQucHJvdG90eXBlLnZvbHVtZT1mdW5jdGlvbigpe3Rocm93InZvbHVtZSgpIG5vdCBpbXBsZW1lbnRlZCBmb3Igc2hhcGUgdHlwZSAiK3RoaXMudHlwZX0sdC5wcm90b3R5cGUuY2FsY3VsYXRlTG9jYWxJbmVydGlhPWZ1bmN0aW9uKCl7dGhyb3ciY2FsY3VsYXRlTG9jYWxJbmVydGlhKCkgbm90IGltcGxlbWVudGVkIGZvciBzaGFwZSB0eXBlICIrdGhpcy50eXBlfSx0LmlkQ291bnRlcj0wLHQudHlwZXM9e1NQSEVSRToxLFBMQU5FOjIsQk9YOjQsQ09NUE9VTkQ6OCxDT05WRVhQT0xZSEVEUk9OOjE2LEhFSUdIVEZJRUxEOjMyLFBBUlRJQ0xFOjY0LENZTElOREVSOjEyOCxUUklNRVNIOjI1Nn19LHsiLi4vbWF0ZXJpYWwvTWF0ZXJpYWwiOjI1LCIuLi9tYXRoL1F1YXRlcm5pb24iOjI4LCIuLi9tYXRoL1ZlYzMiOjMwLCIuL1NoYXBlIjo0M31dLDQ0OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSl7aWYobi5jYWxsKHRoaXMpLHRoaXMucmFkaXVzPXZvaWQgMCE9PUE/TnVtYmVyKEEpOjEsdGhpcy50eXBlPW4udHlwZXMuU1BIRVJFLHRoaXMucmFkaXVzPDApdGhyb3cgbmV3IEVycm9yKCJUaGUgc3BoZXJlIHJhZGl1cyBjYW5ub3QgYmUgbmVnYXRpdmUuIik7dGhpcy51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cygpfWUuZXhwb3J0cz10O3ZhciBuPUEoIi4vU2hhcGUiKSxpPUEoIi4uL21hdGgvVmVjMyIpO3QucHJvdG90eXBlPW5ldyBuLHQucHJvdG90eXBlLmNvbnN0cnVjdG9yPXQsdC5wcm90b3R5cGUuY2FsY3VsYXRlTG9jYWxJbmVydGlhPWZ1bmN0aW9uKEEsZSl7ZT1lfHxuZXcgaTt2YXIgdD0yKkEqdGhpcy5yYWRpdXMqdGhpcy5yYWRpdXMvNTtyZXR1cm4gZS54PXQsZS55PXQsZS56PXQsZX0sdC5wcm90b3R5cGUudm9sdW1lPWZ1bmN0aW9uKCl7cmV0dXJuIDQqTWF0aC5QSSp0aGlzLnJhZGl1cy8zfSx0LnByb3RvdHlwZS51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cz1mdW5jdGlvbigpe3RoaXMuYm91bmRpbmdTcGhlcmVSYWRpdXM9dGhpcy5yYWRpdXN9LHQucHJvdG90eXBlLmNhbGN1bGF0ZVdvcmxkQUFCQj1mdW5jdGlvbihBLGUsdCxuKXtmb3IodmFyIGk9dGhpcy5yYWRpdXMscj1bIngiLCJ5IiwieiJdLG89MDtvPHIubGVuZ3RoO28rKyl7dmFyIHM9cltvXTt0W3NdPUFbc10taSxuW3NdPUFbc10raX19fSx7Ii4uL21hdGgvVmVjMyI6MzAsIi4vU2hhcGUiOjQzfV0sNDU6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUpe24uY2FsbCh0aGlzKSx0aGlzLnR5cGU9bi50eXBlcy5UUklNRVNILHRoaXMudmVydGljZXM9bmV3IEZsb2F0MzJBcnJheShBKSx0aGlzLmluZGljZXM9bmV3IEludDE2QXJyYXkoZSksdGhpcy5ub3JtYWxzPW5ldyBGbG9hdDMyQXJyYXkoZS5sZW5ndGgpLHRoaXMuYWFiYj1uZXcgbyx0aGlzLmVkZ2VzPW51bGwsdGhpcy5zY2FsZT1uZXcgaSgxLDEsMSksdGhpcy50cmVlPW5ldyBzLHRoaXMudXBkYXRlRWRnZXMoKSx0aGlzLnVwZGF0ZU5vcm1hbHMoKSx0aGlzLnVwZGF0ZUFBQkIoKSx0aGlzLnVwZGF0ZUJvdW5kaW5nU3BoZXJlUmFkaXVzKCksdGhpcy51cGRhdGVUcmVlKCl9ZS5leHBvcnRzPXQ7dmFyIG49QSgiLi9TaGFwZSIpLGk9QSgiLi4vbWF0aC9WZWMzIikscj0oQSgiLi4vbWF0aC9RdWF0ZXJuaW9uIiksQSgiLi4vbWF0aC9UcmFuc2Zvcm0iKSksbz1BKCIuLi9jb2xsaXNpb24vQUFCQiIpLHM9QSgiLi4vdXRpbHMvT2N0cmVlIik7dC5wcm90b3R5cGU9bmV3IG4sdC5wcm90b3R5cGUuY29uc3RydWN0b3I9dDt2YXIgYT1uZXcgaTt0LnByb3RvdHlwZS51cGRhdGVUcmVlPWZ1bmN0aW9uKCl7dmFyIEE9dGhpcy50cmVlO0EucmVzZXQoKSxBLmFhYmIuY29weSh0aGlzLmFhYmIpO3ZhciBlPXRoaXMuc2NhbGU7QS5hYWJiLmxvd2VyQm91bmQueCo9MS9lLngsQS5hYWJiLmxvd2VyQm91bmQueSo9MS9lLnksQS5hYWJiLmxvd2VyQm91bmQueio9MS9lLnosQS5hYWJiLnVwcGVyQm91bmQueCo9MS9lLngsQS5hYWJiLnVwcGVyQm91bmQueSo9MS9lLnksQS5hYWJiLnVwcGVyQm91bmQueio9MS9lLno7Zm9yKHZhciB0PW5ldyBvLG49bmV3IGkscj1uZXcgaSxzPW5ldyBpLGE9W24scixzXSxCPTA7Qjx0aGlzLmluZGljZXMubGVuZ3RoLzM7QisrKXt2YXIgYz0zKkI7dGhpcy5fZ2V0VW5zY2FsZWRWZXJ0ZXgodGhpcy5pbmRpY2VzW2NdLG4pLHRoaXMuX2dldFVuc2NhbGVkVmVydGV4KHRoaXMuaW5kaWNlc1tjKzFdLHIpLHRoaXMuX2dldFVuc2NhbGVkVmVydGV4KHRoaXMuaW5kaWNlc1tjKzJdLHMpLHQuc2V0RnJvbVBvaW50cyhhKSxBLmluc2VydCh0LEIpfUEucmVtb3ZlRW1wdHlOb2RlcygpfTt2YXIgQj1uZXcgbzt0LnByb3RvdHlwZS5nZXRUcmlhbmdsZXNJbkFBQkI9ZnVuY3Rpb24oQSxlKXtCLmNvcHkoQSk7dmFyIHQ9dGhpcy5zY2FsZSxuPXQueCxpPXQueSxyPXQueixvPUIubG93ZXJCb3VuZCxzPUIudXBwZXJCb3VuZDtyZXR1cm4gby54Lz1uLG8ueS89aSxvLnovPXIscy54Lz1uLHMueS89aSxzLnovPXIsdGhpcy50cmVlLmFhYmJRdWVyeShCLGUpfSx0LnByb3RvdHlwZS5zZXRTY2FsZT1mdW5jdGlvbihBKXt2YXIgZT10aGlzLnNjYWxlLng9PT10aGlzLnNjYWxlLnk9PT10aGlzLnNjYWxlLnosdD1BLng9PT1BLnk9PT1BLno7ZSYmdHx8dGhpcy51cGRhdGVOb3JtYWxzKCksdGhpcy5zY2FsZS5jb3B5KEEpLHRoaXMudXBkYXRlQUFCQigpLHRoaXMudXBkYXRlQm91bmRpbmdTcGhlcmVSYWRpdXMoKX0sdC5wcm90b3R5cGUudXBkYXRlTm9ybWFscz1mdW5jdGlvbigpe2Zvcih2YXIgQT1hLGU9dGhpcy5ub3JtYWxzLG49MDtuPHRoaXMuaW5kaWNlcy5sZW5ndGgvMztuKyspe3ZhciBpPTMqbixyPXRoaXMuaW5kaWNlc1tpXSxvPXRoaXMuaW5kaWNlc1tpKzFdLHM9dGhpcy5pbmRpY2VzW2krMl07dGhpcy5nZXRWZXJ0ZXgocix1KSx0aGlzLmdldFZlcnRleChvLGwpLHRoaXMuZ2V0VmVydGV4KHMsaCksdC5jb21wdXRlTm9ybWFsKGwsdSxoLEEpLGVbaV09QS54LGVbaSsxXT1BLnksZVtpKzJdPUEuen19LHQucHJvdG90eXBlLnVwZGF0ZUVkZ2VzPWZ1bmN0aW9uKCl7Zm9yKHZhciBBPXt9LGU9ZnVuY3Rpb24oKXt2YXIgZT1yPmk/aSsiXyIrcjpyKyJfIitpO0FbZV09ITB9LHQ9MDt0PHRoaXMuaW5kaWNlcy5sZW5ndGgvMzt0Kyspe3ZhciBuPTMqdCxpPXRoaXMuaW5kaWNlc1tuXSxyPXRoaXMuaW5kaWNlc1tuKzFdO3RoaXMuaW5kaWNlc1tuKzJdLGUoKSxlKCksZSgpfXZhciBvPU9iamVjdC5rZXlzKEEpO2Zvcih0aGlzLmVkZ2VzPW5ldyBJbnQxNkFycmF5KDIqby5sZW5ndGgpLHQ9MDt0PG8ubGVuZ3RoO3QrKyl7dmFyIHM9b1t0XS5zcGxpdCgiXyIpO3RoaXMuZWRnZXNbMip0XT1wYXJzZUludChzWzBdLDEwKSx0aGlzLmVkZ2VzWzIqdCsxXT1wYXJzZUludChzWzFdLDEwKX19LHQucHJvdG90eXBlLmdldEVkZ2VWZXJ0ZXg9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPXRoaXMuZWRnZXNbMipBKyhlPzE6MCldO3RoaXMuZ2V0VmVydGV4KG4sdCl9O3ZhciBjPW5ldyBpLGc9bmV3IGk7dC5wcm90b3R5cGUuZ2V0RWRnZVZlY3Rvcj1mdW5jdGlvbihBLGUpe3ZhciB0PWMsbj1nO3RoaXMuZ2V0RWRnZVZlcnRleChBLDAsdCksdGhpcy5nZXRFZGdlVmVydGV4KEEsMSxuKSxuLnZzdWIodCxlKX07dmFyIEU9bmV3IGksUT1uZXcgaTt0LmNvbXB1dGVOb3JtYWw9ZnVuY3Rpb24oQSxlLHQsbil7ZS52c3ViKEEsUSksdC52c3ViKGUsRSksRS5jcm9zcyhRLG4pLG4uaXNaZXJvKCl8fG4ubm9ybWFsaXplKCl9O3ZhciB1PW5ldyBpLGw9bmV3IGksaD1uZXcgaTt0LnByb3RvdHlwZS5nZXRWZXJ0ZXg9ZnVuY3Rpb24oQSxlKXt2YXIgdD10aGlzLnNjYWxlO3JldHVybiB0aGlzLl9nZXRVbnNjYWxlZFZlcnRleChBLGUpLGUueCo9dC54LGUueSo9dC55LGUueio9dC56LGV9LHQucHJvdG90eXBlLl9nZXRVbnNjYWxlZFZlcnRleD1mdW5jdGlvbihBLGUpe3ZhciB0PTMqQSxuPXRoaXMudmVydGljZXM7cmV0dXJuIGUuc2V0KG5bdF0sblt0KzFdLG5bdCsyXSl9LHQucHJvdG90eXBlLmdldFdvcmxkVmVydGV4PWZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiB0aGlzLmdldFZlcnRleChBLG4pLHIucG9pbnRUb1dvcmxkRnJhbWUoZSx0LG4sbiksbn0sdC5wcm90b3R5cGUuZ2V0VHJpYW5nbGVWZXJ0aWNlcz1mdW5jdGlvbihBLGUsdCxuKXt2YXIgaT0zKkE7dGhpcy5nZXRWZXJ0ZXgodGhpcy5pbmRpY2VzW2ldLGUpLHRoaXMuZ2V0VmVydGV4KHRoaXMuaW5kaWNlc1tpKzFdLHQpLHRoaXMuZ2V0VmVydGV4KHRoaXMuaW5kaWNlc1tpKzJdLG4pfSx0LnByb3RvdHlwZS5nZXROb3JtYWw9ZnVuY3Rpb24oQSxlKXt2YXIgdD0zKkE7cmV0dXJuIGUuc2V0KHRoaXMubm9ybWFsc1t0XSx0aGlzLm5vcm1hbHNbdCsxXSx0aGlzLm5vcm1hbHNbdCsyXSl9O3ZhciB3PW5ldyBvO3QucHJvdG90eXBlLmNhbGN1bGF0ZUxvY2FsSW5lcnRpYT1mdW5jdGlvbihBLGUpe3RoaXMuY29tcHV0ZUxvY2FsQUFCQih3KTt2YXIgdD13LnVwcGVyQm91bmQueC13Lmxvd2VyQm91bmQueCxuPXcudXBwZXJCb3VuZC55LXcubG93ZXJCb3VuZC55LGk9dy51cHBlckJvdW5kLnotdy5sb3dlckJvdW5kLno7cmV0dXJuIGUuc2V0KDEvMTIqQSooMipuKjIqbisyKmkqMippKSwxLzEyKkEqKDIqdCoyKnQrMippKjIqaSksMS8xMipBKigyKm4qMipuKzIqdCoyKnQpKX07dmFyIEM9bmV3IGk7dC5wcm90b3R5cGUuY29tcHV0ZUxvY2FsQUFCQj1mdW5jdGlvbihBKXt2YXIgZT1BLmxvd2VyQm91bmQsdD1BLnVwcGVyQm91bmQsbj10aGlzLnZlcnRpY2VzLmxlbmd0aCxpPSh0aGlzLnZlcnRpY2VzLEMpO3RoaXMuZ2V0VmVydGV4KDAsaSksZS5jb3B5KGkpLHQuY29weShpKTtmb3IodmFyIHI9MDtyIT09bjtyKyspdGhpcy5nZXRWZXJ0ZXgocixpKSxpLng8ZS54P2UueD1pLng6aS54PnQueCYmKHQueD1pLngpLGkueTxlLnk/ZS55PWkueTppLnk+dC55JiYodC55PWkueSksaS56PGUuej9lLno9aS56Omkuej50LnomJih0Lno9aS56KX0sdC5wcm90b3R5cGUudXBkYXRlQUFCQj1mdW5jdGlvbigpe3RoaXMuY29tcHV0ZUxvY2FsQUFCQih0aGlzLmFhYmIpfSx0LnByb3RvdHlwZS51cGRhdGVCb3VuZGluZ1NwaGVyZVJhZGl1cz1mdW5jdGlvbigpe2Zvcih2YXIgQT0wLGU9dGhpcy52ZXJ0aWNlcyx0PW5ldyBpLG49MCxyPWUubGVuZ3RoLzM7biE9PXI7bisrKXt0aGlzLmdldFZlcnRleChuLHQpO3ZhciBvPXQubm9ybTIoKTtvPkEmJihBPW8pfXRoaXMuYm91bmRpbmdTcGhlcmVSYWRpdXM9TWF0aC5zcXJ0KEEpfTt2YXIgST0obmV3IGksbmV3IHIpLE09bmV3IG87dC5wcm90b3R5cGUuY2FsY3VsYXRlV29ybGRBQUJCPWZ1bmN0aW9uKEEsZSx0LG4pe3ZhciBpPUkscj1NO2kucG9zaXRpb249QSxpLnF1YXRlcm5pb249ZSx0aGlzLmFhYmIudG9Xb3JsZEZyYW1lKGksciksdC5jb3B5KHIubG93ZXJCb3VuZCksbi5jb3B5KHIudXBwZXJCb3VuZCl9LHQucHJvdG90eXBlLnZvbHVtZT1mdW5jdGlvbigpe3JldHVybiA0Kk1hdGguUEkqdGhpcy5ib3VuZGluZ1NwaGVyZVJhZGl1cy8zfSx0LmNyZWF0ZVRvcnVzPWZ1bmN0aW9uKEEsZSxuLGkscil7QT1BfHwxLGU9ZXx8LjUsbj1ufHw4LGk9aXx8NixyPXJ8fDIqTWF0aC5QSTtmb3IodmFyIG89W10scz1bXSxhPTA7bj49YTthKyspZm9yKHZhciBCPTA7aT49QjtCKyspe3ZhciBjPUIvaSpyLGc9YS9uKk1hdGguUEkqMixFPShBK2UqTWF0aC5jb3MoZykpKk1hdGguY29zKGMpLFE9KEErZSpNYXRoLmNvcyhnKSkqTWF0aC5zaW4oYyksdT1lKk1hdGguc2luKGcpO28ucHVzaChFLFEsdSl9Zm9yKGE9MTtuPj1hO2ErKylmb3IoQj0xO2k+PUI7QisrKXt2YXIgbD0oaSsxKSphK0ItMSxoPShpKzEpKihhLTEpK0ItMSx3PShpKzEpKihhLTEpK0IsQz0oaSsxKSphK0I7cy5wdXNoKGwsaCxDKSxzLnB1c2goaCx3LEMpfXJldHVybiBuZXcgdChvLHMpfX0seyIuLi9jb2xsaXNpb24vQUFCQiI6MywiLi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi4vbWF0aC9UcmFuc2Zvcm0iOjI5LCIuLi9tYXRoL1ZlYzMiOjMwLCIuLi91dGlscy9PY3RyZWUiOjUwLCIuL1NoYXBlIjo0M31dLDQ2OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXtuLmNhbGwodGhpcyksdGhpcy5pdGVyYXRpb25zPTEwLHRoaXMudG9sZXJhbmNlPTFlLTd9ZS5leHBvcnRzPXQ7dmFyIG49KEEoIi4uL21hdGgvVmVjMyIpLEEoIi4uL21hdGgvUXVhdGVybmlvbiIpLEEoIi4vU29sdmVyIikpO3QucHJvdG90eXBlPW5ldyBuO3ZhciBpPVtdLHI9W10sbz1bXTt0LnByb3RvdHlwZS5zb2x2ZT1mdW5jdGlvbihBLGUpe3ZhciB0LG4scyxhLEIsYz0wLGc9dGhpcy5pdGVyYXRpb25zLEU9dGhpcy50b2xlcmFuY2UqdGhpcy50b2xlcmFuY2UsUT10aGlzLmVxdWF0aW9ucyx1PVEubGVuZ3RoLGw9ZS5ib2RpZXMsaD1sLmxlbmd0aCx3PUE7aWYoMCE9PXUpZm9yKHZhciBDPTA7QyE9PWg7QysrKWxbQ10udXBkYXRlU29sdmVNYXNzUHJvcGVydGllcygpO3ZhciBJPXIsTT1vLGQ9aTtmb3IoSS5sZW5ndGg9dSxNLmxlbmd0aD11LGQubGVuZ3RoPXUsQz0wO0MhPT11O0MrKyl7dmFyIHA9UVtDXTtkW0NdPTAsTVtDXT1wLmNvbXB1dGVCKHcpLElbQ109MS9wLmNvbXB1dGVDKCl9aWYoMCE9PXUpe2ZvcihDPTA7QyE9PWg7QysrKXt2YXIgbT0oWT1sW0NdKS52bGFtYmRhLEY9WS53bGFtYmRhO20uc2V0KDAsMCwwKSxGJiZGLnNldCgwLDAsMCl9Zm9yKGM9MDtjIT09ZztjKyspe2E9MDtmb3IodmFyIEQ9MDtEIT09dTtEKyspcD1RW0RdLHQ9TVtEXSxuPUlbRF0sKEI9ZFtEXSkrKHM9bioodC1wLmNvbXB1dGVHV2xhbWJkYSgpLXAuZXBzKkIpKTxwLm1pbkZvcmNlP3M9cC5taW5Gb3JjZS1COkIrcz5wLm1heEZvcmNlJiYocz1wLm1heEZvcmNlLUIpLGRbRF0rPXMsYSs9cz4wP3M6LXMscC5hZGRUb1dsYW1iZGEocyk7aWYoRT5hKmEpYnJlYWt9Zm9yKEM9MDtDIT09aDtDKyspe3ZhciBZLGY9KFk9bFtDXSkudmVsb2NpdHksTj1ZLmFuZ3VsYXJWZWxvY2l0eTtmLnZhZGQoWS52bGFtYmRhLGYpLE4mJk4udmFkZChZLndsYW1iZGEsTil9fXJldHVybiBjfX0seyIuLi9tYXRoL1F1YXRlcm5pb24iOjI4LCIuLi9tYXRoL1ZlYzMiOjMwLCIuL1NvbHZlciI6NDd9XSw0NzpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7dGhpcy5lcXVhdGlvbnM9W119ZS5leHBvcnRzPXQsdC5wcm90b3R5cGUuc29sdmU9ZnVuY3Rpb24oKXtyZXR1cm4gMH0sdC5wcm90b3R5cGUuYWRkRXF1YXRpb249ZnVuY3Rpb24oQSl7QS5lbmFibGVkJiZ0aGlzLmVxdWF0aW9ucy5wdXNoKEEpfSx0LnByb3RvdHlwZS5yZW1vdmVFcXVhdGlvbj1mdW5jdGlvbihBKXt2YXIgZT10aGlzLmVxdWF0aW9ucyx0PWUuaW5kZXhPZihBKTstMSE9PXQmJmUuc3BsaWNlKHQsMSl9LHQucHJvdG90eXBlLnJlbW92ZUFsbEVxdWF0aW9ucz1mdW5jdGlvbigpe3RoaXMuZXF1YXRpb25zLmxlbmd0aD0wfX0se31dLDQ4OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoQSl7Zm9yKHMuY2FsbCh0aGlzKSx0aGlzLml0ZXJhdGlvbnM9MTAsdGhpcy50b2xlcmFuY2U9MWUtNyx0aGlzLnN1YnNvbHZlcj1BLHRoaXMubm9kZXM9W10sdGhpcy5ub2RlUG9vbD1bXTt0aGlzLm5vZGVQb29sLmxlbmd0aDwxMjg7KXRoaXMubm9kZVBvb2wucHVzaCh0aGlzLmNyZWF0ZU5vZGUoKSl9ZnVuY3Rpb24gbihBKXtmb3IodmFyIGU9QS5sZW5ndGgsdD0wO3QhPT1lO3QrKyl7dmFyIG49QVt0XTtpZighKG4udmlzaXRlZHx8bi5ib2R5LnR5cGUmRSkpcmV0dXJuIG59cmV0dXJuITF9ZnVuY3Rpb24gaShBLGUsdCxpKXtmb3IoUS5wdXNoKEEpLEEudmlzaXRlZD0hMCxlKEEsdCxpKTtRLmxlbmd0aDspZm9yKHZhciByLG89US5wb3AoKTtyPW4oby5jaGlsZHJlbik7KXIudmlzaXRlZD0hMCxlKHIsdCxpKSxRLnB1c2gocil9ZnVuY3Rpb24gcihBLGUsdCl7ZS5wdXNoKEEuYm9keSk7Zm9yKHZhciBuPUEuZXFzLmxlbmd0aCxpPTA7aSE9PW47aSsrKXt2YXIgcj1BLmVxc1tpXTstMT09PXQuaW5kZXhPZihyKSYmdC5wdXNoKHIpfX1mdW5jdGlvbiBvKEEsZSl7cmV0dXJuIGUuaWQtQS5pZH1lLmV4cG9ydHM9dDt2YXIgcz0oQSgiLi4vbWF0aC9WZWMzIiksQSgiLi4vbWF0aC9RdWF0ZXJuaW9uIiksQSgiLi9Tb2x2ZXIiKSksYT1BKCIuLi9vYmplY3RzL0JvZHkiKTt0LnByb3RvdHlwZT1uZXcgczt2YXIgQj1bXSxjPVtdLGc9e2JvZGllczpbXX0sRT1hLlNUQVRJQyxRPVtdO3QucHJvdG90eXBlLmNyZWF0ZU5vZGU9ZnVuY3Rpb24oKXtyZXR1cm57Ym9keTpudWxsLGNoaWxkcmVuOltdLGVxczpbXSx2aXNpdGVkOiExfX0sdC5wcm90b3R5cGUuc29sdmU9ZnVuY3Rpb24oQSxlKXtmb3IodmFyIHQ9QixzPXRoaXMubm9kZVBvb2wsYT1lLmJvZGllcyxFPXRoaXMuZXF1YXRpb25zLFE9RS5sZW5ndGgsdT1hLmxlbmd0aCxsPXRoaXMuc3Vic29sdmVyO3MubGVuZ3RoPHU7KXMucHVzaCh0aGlzLmNyZWF0ZU5vZGUoKSk7dC5sZW5ndGg9dTtmb3IodmFyIGg9MDt1Pmg7aCsrKXRbaF09c1toXTtmb3IoaD0wO2ghPT11O2grKyl7dmFyIHc9dFtoXTt3LmJvZHk9YVtoXSx3LmNoaWxkcmVuLmxlbmd0aD0wLHcuZXFzLmxlbmd0aD0wLHcudmlzaXRlZD0hMX1mb3IodmFyIEM9MDtDIT09UTtDKyspe3ZhciBJPUVbQ10sTT0oaD1hLmluZGV4T2YoSS5iaSksYS5pbmRleE9mKEkuYmopKSxkPXRbaF0scD10W01dO2QuY2hpbGRyZW4ucHVzaChwKSxkLmVxcy5wdXNoKEkpLHAuY2hpbGRyZW4ucHVzaChkKSxwLmVxcy5wdXNoKEkpfXZhciBtLEY9MCxEPWM7bC50b2xlcmFuY2U9dGhpcy50b2xlcmFuY2UsbC5pdGVyYXRpb25zPXRoaXMuaXRlcmF0aW9ucztmb3IodmFyIFk9ZzttPW4odCk7KXtELmxlbmd0aD0wLFkuYm9kaWVzLmxlbmd0aD0wLGkobSxyLFkuYm9kaWVzLEQpO3ZhciBmPUQubGVuZ3RoO2ZvcihEPUQuc29ydChvKSxoPTA7aCE9PWY7aCsrKWwuYWRkRXF1YXRpb24oRFtoXSk7bC5zb2x2ZShBLFkpLGwucmVtb3ZlQWxsRXF1YXRpb25zKCksRisrfXJldHVybiBGfX0seyIuLi9tYXRoL1F1YXRlcm5pb24iOjI4LCIuLi9tYXRoL1ZlYzMiOjMwLCIuLi9vYmplY3RzL0JvZHkiOjMxLCIuL1NvbHZlciI6NDd9XSw0OTpbZnVuY3Rpb24oQSxlKXt2YXIgdD1mdW5jdGlvbigpe307ZS5leHBvcnRzPXQsdC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOnQsYWRkRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbihBLGUpe3ZvaWQgMD09PXRoaXMuX2xpc3RlbmVycyYmKHRoaXMuX2xpc3RlbmVycz17fSk7dmFyIHQ9dGhpcy5fbGlzdGVuZXJzO3JldHVybiB2b2lkIDA9PT10W0FdJiYodFtBXT1bXSksLTE9PT10W0FdLmluZGV4T2YoZSkmJnRbQV0ucHVzaChlKSx0aGlzfSxoYXNFdmVudExpc3RlbmVyOmZ1bmN0aW9uKEEsZSl7aWYodm9pZCAwPT09dGhpcy5fbGlzdGVuZXJzKXJldHVybiExO3ZhciB0PXRoaXMuX2xpc3RlbmVycztyZXR1cm4gdm9pZCAwIT09dFtBXSYmLTEhPT10W0FdLmluZGV4T2YoZSl9LHJlbW92ZUV2ZW50TGlzdGVuZXI6ZnVuY3Rpb24oQSxlKXtpZih2b2lkIDA9PT10aGlzLl9saXN0ZW5lcnMpcmV0dXJuIHRoaXM7dmFyIHQ9dGhpcy5fbGlzdGVuZXJzO2lmKHZvaWQgMD09PXRbQV0pcmV0dXJuIHRoaXM7dmFyIG49dFtBXS5pbmRleE9mKGUpO3JldHVybi0xIT09biYmdFtBXS5zcGxpY2UobiwxKSx0aGlzfSxkaXNwYXRjaEV2ZW50OmZ1bmN0aW9uKEEpe2lmKHZvaWQgMD09PXRoaXMuX2xpc3RlbmVycylyZXR1cm4gdGhpczt2YXIgZT10aGlzLl9saXN0ZW5lcnNbQS50eXBlXTtpZih2b2lkIDAhPT1lKXtBLnRhcmdldD10aGlzO2Zvcih2YXIgdD0wLG49ZS5sZW5ndGg7bj50O3QrKyllW3RdLmNhbGwodGhpcyxBKX1yZXR1cm4gdGhpc319fSx7fV0sNTA6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXtBPUF8fHt9LHRoaXMucm9vdD1BLnJvb3R8fG51bGwsdGhpcy5hYWJiPUEuYWFiYj9BLmFhYmIuY2xvbmUoKTpuZXcgaSx0aGlzLmRhdGE9W10sdGhpcy5jaGlsZHJlbj1bXX1mdW5jdGlvbiBuKEEsZSl7KGU9ZXx8e30pLnJvb3Q9bnVsbCxlLmFhYmI9QSx0LmNhbGwodGhpcyxlKSx0aGlzLm1heERlcHRoPXZvaWQgMCE9PWUubWF4RGVwdGg/ZS5tYXhEZXB0aDo4fXZhciBpPUEoIi4uL2NvbGxpc2lvbi9BQUJCIikscj1BKCIuLi9tYXRoL1ZlYzMiKTtlLmV4cG9ydHM9bixuLnByb3RvdHlwZT1uZXcgdCx0LnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuY2hpbGRyZW4ubGVuZ3RoPXRoaXMuZGF0YS5sZW5ndGg9MH0sdC5wcm90b3R5cGUuaW5zZXJ0PWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10aGlzLmRhdGE7aWYodD10fHwwLCF0aGlzLmFhYmIuY29udGFpbnMoQSkpcmV0dXJuITE7dmFyIGk9dGhpcy5jaGlsZHJlbjtpZih0PCh0aGlzLm1heERlcHRofHx0aGlzLnJvb3QubWF4RGVwdGgpKXt2YXIgcj0hMTtpLmxlbmd0aHx8KHRoaXMuc3ViZGl2aWRlKCkscj0hMCk7Zm9yKHZhciBvPTA7OCE9PW87bysrKWlmKGlbb10uaW5zZXJ0KEEsZSx0KzEpKXJldHVybiEwO3ImJihpLmxlbmd0aD0wKX1yZXR1cm4gbi5wdXNoKGUpLCEwfTt2YXIgbz1uZXcgcjt0LnByb3RvdHlwZS5zdWJkaXZpZGU9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmFhYmIsZT1BLmxvd2VyQm91bmQsbj1BLnVwcGVyQm91bmQscz10aGlzLmNoaWxkcmVuO3MucHVzaChuZXcgdCh7YWFiYjpuZXcgaSh7bG93ZXJCb3VuZDpuZXcgcigwLDAsMCl9KX0pLG5ldyB0KHthYWJiOm5ldyBpKHtsb3dlckJvdW5kOm5ldyByKDEsMCwwKX0pfSksbmV3IHQoe2FhYmI6bmV3IGkoe2xvd2VyQm91bmQ6bmV3IHIoMSwxLDApfSl9KSxuZXcgdCh7YWFiYjpuZXcgaSh7bG93ZXJCb3VuZDpuZXcgcigxLDEsMSl9KX0pLG5ldyB0KHthYWJiOm5ldyBpKHtsb3dlckJvdW5kOm5ldyByKDAsMSwxKX0pfSksbmV3IHQoe2FhYmI6bmV3IGkoe2xvd2VyQm91bmQ6bmV3IHIoMCwwLDEpfSl9KSxuZXcgdCh7YWFiYjpuZXcgaSh7bG93ZXJCb3VuZDpuZXcgcigxLDAsMSl9KX0pLG5ldyB0KHthYWJiOm5ldyBpKHtsb3dlckJvdW5kOm5ldyByKDAsMSwwKX0pfSkpLG4udnN1YihlLG8pLG8uc2NhbGUoLjUsbyk7Zm9yKHZhciBhPXRoaXMucm9vdHx8dGhpcyxCPTA7OCE9PUI7QisrKXt2YXIgYz1zW0JdO2Mucm9vdD1hO3ZhciBnPWMuYWFiYi5sb3dlckJvdW5kO2cueCo9by54LGcueSo9by55LGcueio9by56LGcudmFkZChlLGcpLGcudmFkZChvLGMuYWFiYi51cHBlckJvdW5kKX19LHQucHJvdG90eXBlLmFhYmJRdWVyeT1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD0odGhpcy5kYXRhLHRoaXMuY2hpbGRyZW4sW3RoaXNdKTt0Lmxlbmd0aDspe3ZhciBuPXQucG9wKCk7bi5hYWJiLm92ZXJsYXBzKEEpJiZBcnJheS5wcm90b3R5cGUucHVzaC5hcHBseShlLG4uZGF0YSksQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkodCxuLmNoaWxkcmVuKX1yZXR1cm4gZX07dmFyIHM9bmV3IGk7dC5wcm90b3R5cGUucmF5UXVlcnk9ZnVuY3Rpb24oQSxlLHQpe3JldHVybiBBLmdldEFBQkIocykscy50b0xvY2FsRnJhbWUoZSxzKSx0aGlzLmFhYmJRdWVyeShzLHQpLHR9LHQucHJvdG90eXBlLnJlbW92ZUVtcHR5Tm9kZXM9ZnVuY3Rpb24oKXtmb3IodmFyIEE9W3RoaXNdO0EubGVuZ3RoOyl7Zm9yKHZhciBlPUEucG9wKCksdD1lLmNoaWxkcmVuLmxlbmd0aC0xO3Q+PTA7dC0tKWUuY2hpbGRyZW5bdF0uZGF0YS5sZW5ndGh8fGUuY2hpbGRyZW4uc3BsaWNlKHQsMSk7QXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoQSxlLmNoaWxkcmVuKX19fSx7Ii4uL2NvbGxpc2lvbi9BQUJCIjozLCIuLi9tYXRoL1ZlYzMiOjMwfV0sNTE6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdCgpe3RoaXMub2JqZWN0cz1bXSx0aGlzLnR5cGU9T2JqZWN0fWUuZXhwb3J0cz10LHQucHJvdG90eXBlLnJlbGVhc2U9ZnVuY3Rpb24oKXtmb3IodmFyIEE9YXJndW1lbnRzLmxlbmd0aCxlPTA7ZSE9PUE7ZSsrKXRoaXMub2JqZWN0cy5wdXNoKGFyZ3VtZW50c1tlXSl9LHQucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe3JldHVybiAwPT09dGhpcy5vYmplY3RzLmxlbmd0aD90aGlzLmNvbnN0cnVjdE9iamVjdCgpOnRoaXMub2JqZWN0cy5wb3AoKX0sdC5wcm90b3R5cGUuY29uc3RydWN0T2JqZWN0PWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJjb25zdHJ1Y3RPYmplY3QoKSBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBQb29sIHN1YmNsYXNzIHlldCEiKX19LHt9XSw1MjpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7dGhpcy5kYXRhPXtrZXlzOltdfX1lLmV4cG9ydHM9dCx0LnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oQSxlKXtpZihBPmUpe3ZhciB0PWU7ZT1BLEE9dH1yZXR1cm4gdGhpcy5kYXRhW0ErIi0iK2VdfSx0LnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oQSxlLHQpe2lmKEE+ZSl7dmFyIG49ZTtlPUEsQT1ufXZhciBpPUErIi0iK2U7dGhpcy5nZXQoQSxlKXx8dGhpcy5kYXRhLmtleXMucHVzaChpKSx0aGlzLmRhdGFbaV09dH0sdC5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXtmb3IodmFyIEE9dGhpcy5kYXRhLGU9QS5rZXlzO2UubGVuZ3RoPjA7KWRlbGV0ZSBBW2UucG9wKCldfX0se31dLDUzOltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXt9ZS5leHBvcnRzPXQsdC5kZWZhdWx0cz1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdCBpbiBBPUF8fHt9LGUpdCBpbiBBfHwoQVt0XT1lW3RdKTtyZXR1cm4gQX19LHt9XSw1NDpbZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7aS5jYWxsKHRoaXMpLHRoaXMudHlwZT1ufWUuZXhwb3J0cz10O3ZhciBuPUEoIi4uL21hdGgvVmVjMyIpLGk9QSgiLi9Qb29sIik7dC5wcm90b3R5cGU9bmV3IGksdC5wcm90b3R5cGUuY29uc3RydWN0T2JqZWN0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBufX0seyIuLi9tYXRoL1ZlYzMiOjMwLCIuL1Bvb2wiOjUxfV0sNTU6W2Z1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBKXt0aGlzLmNvbnRhY3RQb2ludFBvb2w9W10sdGhpcy5mcmljdGlvbkVxdWF0aW9uUG9vbD1bXSx0aGlzLnJlc3VsdD1bXSx0aGlzLmZyaWN0aW9uUmVzdWx0PVtdLHRoaXMudjNwb29sPW5ldyBjLHRoaXMud29ybGQ9QSx0aGlzLmN1cnJlbnRDb250YWN0TWF0ZXJpYWw9bnVsbCx0aGlzLmVuYWJsZUZyaWN0aW9uUmVkdWN0aW9uPSExfWZ1bmN0aW9uIG4oQSxlLHQpe2Zvcih2YXIgbj1udWxsLGk9QS5sZW5ndGgscj0wO3IhPT1pO3IrKyl7dmFyIG89QVtyXSxzPWo7QVsocisxKSVpXS52c3ViKG8scyk7dmFyIGE9SjtzLmNyb3NzKGUsYSk7dmFyIEI9ejt0LnZzdWIobyxCKTt2YXIgYz1hLmRvdChCKTtpZighKG51bGw9PT1ufHxjPjAmJiEwPT09bnx8MD49YyYmITE9PT1uKSlyZXR1cm4hMTtudWxsPT09biYmKG49Yz4wKX1yZXR1cm4hMH1lLmV4cG9ydHM9dDt2YXIgaT1BKCIuLi9jb2xsaXNpb24vQUFCQiIpLHI9QSgiLi4vc2hhcGVzL1NoYXBlIiksbz1BKCIuLi9jb2xsaXNpb24vUmF5Iikscz1BKCIuLi9tYXRoL1ZlYzMiKSxhPUEoIi4uL21hdGgvVHJhbnNmb3JtIiksQj0oQSgiLi4vc2hhcGVzL0NvbnZleFBvbHloZWRyb24iKSxBKCIuLi9tYXRoL1F1YXRlcm5pb24iKSksYz0oQSgiLi4vc29sdmVyL1NvbHZlciIpLEEoIi4uL3V0aWxzL1ZlYzNQb29sIikpLGc9QSgiLi4vZXF1YXRpb25zL0NvbnRhY3RFcXVhdGlvbiIpLEU9QSgiLi4vZXF1YXRpb25zL0ZyaWN0aW9uRXF1YXRpb24iKTt0LnByb3RvdHlwZS5jcmVhdGVDb250YWN0RXF1YXRpb249ZnVuY3Rpb24oQSxlLHQsbixpLHIpe3ZhciBvO3RoaXMuY29udGFjdFBvaW50UG9vbC5sZW5ndGg/KChvPXRoaXMuY29udGFjdFBvaW50UG9vbC5wb3AoKSkuYmk9QSxvLmJqPWUpOm89bmV3IGcoQSxlKSxvLmVuYWJsZWQ9QS5jb2xsaXNpb25SZXNwb25zZSYmZS5jb2xsaXNpb25SZXNwb25zZSYmdC5jb2xsaXNpb25SZXNwb25zZSYmbi5jb2xsaXNpb25SZXNwb25zZTt2YXIgcz10aGlzLmN1cnJlbnRDb250YWN0TWF0ZXJpYWw7by5yZXN0aXR1dGlvbj1zLnJlc3RpdHV0aW9uLG8uc2V0U3Bvb2tQYXJhbXMocy5jb250YWN0RXF1YXRpb25TdGlmZm5lc3Mscy5jb250YWN0RXF1YXRpb25SZWxheGF0aW9uLHRoaXMud29ybGQuZHQpO3ZhciBhPXQubWF0ZXJpYWx8fEEubWF0ZXJpYWwsQj1uLm1hdGVyaWFsfHxlLm1hdGVyaWFsO3JldHVybiBhJiZCJiZhLnJlc3RpdHV0aW9uPj0wJiZCLnJlc3RpdHV0aW9uPj0wJiYoby5yZXN0aXR1dGlvbj1hLnJlc3RpdHV0aW9uKkIucmVzdGl0dXRpb24pLG8uc2k9aXx8dCxvLnNqPXJ8fG4sb30sdC5wcm90b3R5cGUuY3JlYXRlRnJpY3Rpb25FcXVhdGlvbnNGcm9tQ29udGFjdD1mdW5jdGlvbihBLGUpe3ZhciB0PUEuYmksbj1BLmJqLGk9QS5zaSxyPUEuc2osbz10aGlzLndvcmxkLHM9dGhpcy5jdXJyZW50Q29udGFjdE1hdGVyaWFsLGE9cy5mcmljdGlvbixCPWkubWF0ZXJpYWx8fHQubWF0ZXJpYWwsYz1yLm1hdGVyaWFsfHxuLm1hdGVyaWFsO2lmKEImJmMmJkIuZnJpY3Rpb24+PTAmJmMuZnJpY3Rpb24+PTAmJihhPUIuZnJpY3Rpb24qYy5mcmljdGlvbiksYT4wKXt2YXIgZz1hKm8uZ3Jhdml0eS5sZW5ndGgoKSxRPXQuaW52TWFzcytuLmludk1hc3M7UT4wJiYoUT0xL1EpO3ZhciB1PXRoaXMuZnJpY3Rpb25FcXVhdGlvblBvb2wsbD11Lmxlbmd0aD91LnBvcCgpOm5ldyBFKHQsbixnKlEpLGg9dS5sZW5ndGg/dS5wb3AoKTpuZXcgRSh0LG4sZypRKTtyZXR1cm4gbC5iaT1oLmJpPXQsbC5iaj1oLmJqPW4sbC5taW5Gb3JjZT1oLm1pbkZvcmNlPS1nKlEsbC5tYXhGb3JjZT1oLm1heEZvcmNlPWcqUSxsLnJpLmNvcHkoQS5yaSksbC5yai5jb3B5KEEucmopLGgucmkuY29weShBLnJpKSxoLnJqLmNvcHkoQS5yaiksQS5uaS50YW5nZW50cyhsLnQsaC50KSxsLnNldFNwb29rUGFyYW1zKHMuZnJpY3Rpb25FcXVhdGlvblN0aWZmbmVzcyxzLmZyaWN0aW9uRXF1YXRpb25SZWxheGF0aW9uLG8uZHQpLGguc2V0U3Bvb2tQYXJhbXMocy5mcmljdGlvbkVxdWF0aW9uU3RpZmZuZXNzLHMuZnJpY3Rpb25FcXVhdGlvblJlbGF4YXRpb24sby5kdCksbC5lbmFibGVkPWguZW5hYmxlZD1BLmVuYWJsZWQsZS5wdXNoKGwsaCksITB9cmV0dXJuITF9O3ZhciBRPW5ldyBzLHU9bmV3IHMsbD1uZXcgczt0LnByb3RvdHlwZS5jcmVhdGVGcmljdGlvbkZyb21BdmVyYWdlPWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMucmVzdWx0W3RoaXMucmVzdWx0Lmxlbmd0aC0xXTtpZih0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoZSx0aGlzLmZyaWN0aW9uUmVzdWx0KSYmMSE9PUEpe3ZhciB0PXRoaXMuZnJpY3Rpb25SZXN1bHRbdGhpcy5mcmljdGlvblJlc3VsdC5sZW5ndGgtMl0sbj10aGlzLmZyaWN0aW9uUmVzdWx0W3RoaXMuZnJpY3Rpb25SZXN1bHQubGVuZ3RoLTFdO1Euc2V0WmVybygpLHUuc2V0WmVybygpLGwuc2V0WmVybygpO2Zvcih2YXIgaT1lLmJpLHI9KGUuYmosMCk7ciE9PUE7cisrKShlPXRoaXMucmVzdWx0W3RoaXMucmVzdWx0Lmxlbmd0aC0xLXJdKS5ib2R5QSE9PWk/KFEudmFkZChlLm5pLFEpLHUudmFkZChlLnJpLHUpLGwudmFkZChlLnJqLGwpKTooUS52c3ViKGUubmksUSksdS52YWRkKGUucmosdSksbC52YWRkKGUucmksbCkpO3ZhciBvPTEvQTt1LnNjYWxlKG8sdC5yaSksbC5zY2FsZShvLHQucmopLG4ucmkuY29weSh0LnJpKSxuLnJqLmNvcHkodC5yaiksUS5ub3JtYWxpemUoKSxRLnRhbmdlbnRzKHQudCxuLnQpfX07dmFyIGg9bmV3IHMsdz1uZXcgcyxDPW5ldyBCLEk9bmV3IEI7dC5wcm90b3R5cGUuZ2V0Q29udGFjdHM9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyl7dGhpcy5jb250YWN0UG9pbnRQb29sPWksdGhpcy5mcmljdGlvbkVxdWF0aW9uUG9vbD1vLHRoaXMucmVzdWx0PW4sdGhpcy5mcmljdGlvblJlc3VsdD1yO2Zvcih2YXIgcz1DLGE9SSxCPWgsYz13LGc9MCxFPUEubGVuZ3RoO2chPT1FO2crKyl7dmFyIFE9QVtnXSx1PWVbZ10sbD1udWxsO1EubWF0ZXJpYWwmJnUubWF0ZXJpYWwmJihsPXQuZ2V0Q29udGFjdE1hdGVyaWFsKFEubWF0ZXJpYWwsdS5tYXRlcmlhbCl8fG51bGwpO2Zvcih2YXIgTT0wO008US5zaGFwZXMubGVuZ3RoO00rKyl7US5xdWF0ZXJuaW9uLm11bHQoUS5zaGFwZU9yaWVudGF0aW9uc1tNXSxzKSxRLnF1YXRlcm5pb24udm11bHQoUS5zaGFwZU9mZnNldHNbTV0sQiksQi52YWRkKFEucG9zaXRpb24sQik7Zm9yKHZhciBkPVEuc2hhcGVzW01dLHA9MDtwPHUuc2hhcGVzLmxlbmd0aDtwKyspe3UucXVhdGVybmlvbi5tdWx0KHUuc2hhcGVPcmllbnRhdGlvbnNbcF0sYSksdS5xdWF0ZXJuaW9uLnZtdWx0KHUuc2hhcGVPZmZzZXRzW3BdLGMpLGMudmFkZCh1LnBvc2l0aW9uLGMpO3ZhciBtPXUuc2hhcGVzW3BdO2lmKCEoQi5kaXN0YW5jZVRvKGMpPmQuYm91bmRpbmdTcGhlcmVSYWRpdXMrbS5ib3VuZGluZ1NwaGVyZVJhZGl1cykpe3ZhciBGPW51bGw7ZC5tYXRlcmlhbCYmbS5tYXRlcmlhbCYmKEY9dC5nZXRDb250YWN0TWF0ZXJpYWwoZC5tYXRlcmlhbCxtLm1hdGVyaWFsKXx8bnVsbCksdGhpcy5jdXJyZW50Q29udGFjdE1hdGVyaWFsPUZ8fGx8fHQuZGVmYXVsdENvbnRhY3RNYXRlcmlhbDt2YXIgRD10aGlzW2QudHlwZXxtLnR5cGVdO0QmJihkLnR5cGU8bS50eXBlP0QuY2FsbCh0aGlzLGQsbSxCLGMscyxhLFEsdSxkLG0pOkQuY2FsbCh0aGlzLG0sZCxjLEIsYSxzLHUsUSxkLG0pKX19fX19LHQucHJvdG90eXBlW3IudHlwZXMuQk9YfHIudHlwZXMuQk9YXT10LnByb3RvdHlwZS5ib3hCb3g9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXtBLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbi5tYXRlcmlhbD1BLm1hdGVyaWFsLGUuY29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uLm1hdGVyaWFsPWUubWF0ZXJpYWwsQS5jb252ZXhQb2x5aGVkcm9uUmVwcmVzZW50YXRpb24uY29sbGlzaW9uUmVzcG9uc2U9QS5jb2xsaXNpb25SZXNwb25zZSxlLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbi5jb2xsaXNpb25SZXNwb25zZT1lLmNvbGxpc2lvblJlc3BvbnNlLHRoaXMuY29udmV4Q29udmV4KEEuY29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uLGUuY29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uLHQsbixpLHIsbyxzLEEsZSl9LHQucHJvdG90eXBlW3IudHlwZXMuQk9YfHIudHlwZXMuQ09OVkVYUE9MWUhFRFJPTl09dC5wcm90b3R5cGUuYm94Q29udmV4PWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8scyl7QS5jb252ZXhQb2x5aGVkcm9uUmVwcmVzZW50YXRpb24ubWF0ZXJpYWw9QS5tYXRlcmlhbCxBLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbi5jb2xsaXNpb25SZXNwb25zZT1BLmNvbGxpc2lvblJlc3BvbnNlLHRoaXMuY29udmV4Q29udmV4KEEuY29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uLGUsdCxuLGkscixvLHMsQSxlKX0sdC5wcm90b3R5cGVbci50eXBlcy5CT1h8ci50eXBlcy5QQVJUSUNMRV09dC5wcm90b3R5cGUuYm94UGFydGljbGU9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXtBLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbi5tYXRlcmlhbD1BLm1hdGVyaWFsLEEuY29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uLmNvbGxpc2lvblJlc3BvbnNlPUEuY29sbGlzaW9uUmVzcG9uc2UsdGhpcy5jb252ZXhQYXJ0aWNsZShBLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbixlLHQsbixpLHIsbyxzLEEsZSl9LHQucHJvdG90eXBlW3IudHlwZXMuU1BIRVJFXT10LnByb3RvdHlwZS5zcGhlcmVTcGhlcmU9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXt2YXIgYT10aGlzLmNyZWF0ZUNvbnRhY3RFcXVhdGlvbihvLHMsQSxlKTtuLnZzdWIodCxhLm5pKSxhLm5pLm5vcm1hbGl6ZSgpLGEucmkuY29weShhLm5pKSxhLnJqLmNvcHkoYS5uaSksYS5yaS5tdWx0KEEucmFkaXVzLGEucmkpLGEucmoubXVsdCgtZS5yYWRpdXMsYS5yaiksYS5yaS52YWRkKHQsYS5yaSksYS5yaS52c3ViKG8ucG9zaXRpb24sYS5yaSksYS5yai52YWRkKG4sYS5yaiksYS5yai52c3ViKHMucG9zaXRpb24sYS5yaiksdGhpcy5yZXN1bHQucHVzaChhKSx0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoYSx0aGlzLmZyaWN0aW9uUmVzdWx0KX07dmFyIE09bmV3IHMsZD1uZXcgcyxwPW5ldyBzO3QucHJvdG90eXBlW3IudHlwZXMuUExBTkV8ci50eXBlcy5UUklNRVNIXT10LnByb3RvdHlwZS5wbGFuZVRyaW1lc2g9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxCKXt2YXIgYz1uZXcgcyxnPU07Zy5zZXQoMCwwLDEpLGkudm11bHQoZyxnKTtmb3IodmFyIEU9MDtFPGUudmVydGljZXMubGVuZ3RoLzM7RSsrKXtlLmdldFZlcnRleChFLGMpO3ZhciBRPW5ldyBzO1EuY29weShjKSxhLnBvaW50VG9Xb3JsZEZyYW1lKG4scixRLGMpO3ZhciB1PWQ7aWYoYy52c3ViKHQsdSksMD49Zy5kb3QodSkpe3ZhciBsPXRoaXMuY3JlYXRlQ29udGFjdEVxdWF0aW9uKG8sQixBLGUpO2wubmkuY29weShnKTt2YXIgaD1wO2cuc2NhbGUodS5kb3QoZyksaCksYy52c3ViKGgsaCksbC5yaS5jb3B5KGgpLGwucmkudnN1YihvLnBvc2l0aW9uLGwucmkpLGwucmouY29weShjKSxsLnJqLnZzdWIoQi5wb3NpdGlvbixsLnJqKSx0aGlzLnJlc3VsdC5wdXNoKGwpLHRoaXMuY3JlYXRlRnJpY3Rpb25FcXVhdGlvbnNGcm9tQ29udGFjdChsLHRoaXMuZnJpY3Rpb25SZXN1bHQpfX19O3ZhciBtPW5ldyBzLEY9bmV3IHMsRD0obmV3IHMsbmV3IHMpLFk9bmV3IHMsZj1uZXcgcyxOPW5ldyBzLFU9bmV3IHMseT1uZXcgcyxUPW5ldyBzLHg9bmV3IHMsUj1uZXcgcyxHPW5ldyBzLFM9bmV3IHMsYj1uZXcgaSxIPVtdO3QucHJvdG90eXBlW3IudHlwZXMuU1BIRVJFfHIudHlwZXMuVFJJTUVTSF09dC5wcm90b3R5cGUuc3BoZXJlVHJpbWVzaD1mdW5jdGlvbihBLGUsdCxuLGkscixzLEIpe3ZhciBjPWYsZz1OLEU9VSxRPXksdT1ULGw9eCxoPWIsdz1ZLEM9RixJPUg7YS5wb2ludFRvTG9jYWxGcmFtZShuLHIsdCx1KTt2YXIgTT1BLnJhZGl1cztoLmxvd2VyQm91bmQuc2V0KHUueC1NLHUueS1NLHUuei1NKSxoLnVwcGVyQm91bmQuc2V0KHUueCtNLHUueStNLHUueitNKSxlLmdldFRyaWFuZ2xlc0luQUFCQihoLEkpO2Zvcih2YXIgZD1ELHA9QS5yYWRpdXMqQS5yYWRpdXMsdj0wO3Y8SS5sZW5ndGg7disrKWZvcih2YXIgaz0wOzM+aztrKyspZS5nZXRWZXJ0ZXgoZS5pbmRpY2VzWzMqSVt2XStrXSxkKSxkLnZzdWIodSxDKSxDLm5vcm0yKCk8PXAmJih3LmNvcHkoZCksYS5wb2ludFRvV29ybGRGcmFtZShuLHIsdyxkKSxkLnZzdWIodCxDKSwoej10aGlzLmNyZWF0ZUNvbnRhY3RFcXVhdGlvbihzLEIsQSxlKSkubmkuY29weShDKSx6Lm5pLm5vcm1hbGl6ZSgpLHoucmkuY29weSh6Lm5pKSx6LnJpLnNjYWxlKEEucmFkaXVzLHoucmkpLHoucmkudmFkZCh0LHoucmkpLHoucmkudnN1YihzLnBvc2l0aW9uLHoucmkpLHoucmouY29weShkKSx6LnJqLnZzdWIoQi5wb3NpdGlvbix6LnJqKSx0aGlzLnJlc3VsdC5wdXNoKHopLHRoaXMuY3JlYXRlRnJpY3Rpb25FcXVhdGlvbnNGcm9tQ29udGFjdCh6LHRoaXMuZnJpY3Rpb25SZXN1bHQpKTtmb3Iodj0wO3Y8SS5sZW5ndGg7disrKWZvcihrPTA7Mz5rO2srKyl7ZS5nZXRWZXJ0ZXgoZS5pbmRpY2VzWzMqSVt2XStrXSxjKSxlLmdldFZlcnRleChlLmluZGljZXNbMypJW3ZdKyhrKzEpJTNdLGcpLGcudnN1YihjLEUpLHUudnN1YihnLGwpO3ZhciBqPWwuZG90KEUpO3UudnN1YihjLGwpO3ZhciBKPWwuZG90KEUpO2lmKEo+MCYmMD5qJiYodS52c3ViKGMsbCksUS5jb3B5KEUpLFEubm9ybWFsaXplKCksSj1sLmRvdChRKSxRLnNjYWxlKEosbCksbC52YWRkKGMsbCksKEs9bC5kaXN0YW5jZVRvKHUpKTxBLnJhZGl1cykpe3ZhciB6PXRoaXMuY3JlYXRlQ29udGFjdEVxdWF0aW9uKHMsQixBLGUpO2wudnN1Yih1LHoubmkpLHoubmkubm9ybWFsaXplKCksei5uaS5zY2FsZShBLnJhZGl1cyx6LnJpKSxhLnBvaW50VG9Xb3JsZEZyYW1lKG4scixsLGwpLGwudnN1YihCLnBvc2l0aW9uLHoucmopLGEudmVjdG9yVG9Xb3JsZEZyYW1lKHIsei5uaSx6Lm5pKSxhLnZlY3RvclRvV29ybGRGcmFtZShyLHoucmksei5yaSksdGhpcy5yZXN1bHQucHVzaCh6KSx0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3Qoeix0aGlzLmZyaWN0aW9uUmVzdWx0KX19Zm9yKHZhciBMPVIsUD1HLE89UyxWPW0sVz0odj0wLEkubGVuZ3RoKTt2IT09Vzt2Kyspe2UuZ2V0VHJpYW5nbGVWZXJ0aWNlcyhJW3ZdLEwsUCxPKSxlLmdldE5vcm1hbChJW3ZdLFYpLHUudnN1YihMLGwpO3ZhciBLPWwuZG90KFYpO1Yuc2NhbGUoSyxsKSx1LnZzdWIobCxsKSxLPWwuZGlzdGFuY2VUbyh1KSxvLnBvaW50SW5UcmlhbmdsZShsLEwsUCxPKSYmSzxBLnJhZGl1cyYmKHo9dGhpcy5jcmVhdGVDb250YWN0RXF1YXRpb24ocyxCLEEsZSksbC52c3ViKHUsei5uaSksei5uaS5ub3JtYWxpemUoKSx6Lm5pLnNjYWxlKEEucmFkaXVzLHoucmkpLGEucG9pbnRUb1dvcmxkRnJhbWUobixyLGwsbCksbC52c3ViKEIucG9zaXRpb24sei5yaiksYS52ZWN0b3JUb1dvcmxkRnJhbWUocix6Lm5pLHoubmkpLGEudmVjdG9yVG9Xb3JsZEZyYW1lKHIsei5yaSx6LnJpKSx0aGlzLnJlc3VsdC5wdXNoKHopLHRoaXMuY3JlYXRlRnJpY3Rpb25FcXVhdGlvbnNGcm9tQ29udGFjdCh6LHRoaXMuZnJpY3Rpb25SZXN1bHQpKX1JLmxlbmd0aD0wfTt2YXIgdj1uZXcgcyxrPW5ldyBzO3QucHJvdG90eXBlW3IudHlwZXMuU1BIRVJFfHIudHlwZXMuUExBTkVdPXQucHJvdG90eXBlLnNwaGVyZVBsYW5lPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8scyl7dmFyIGE9dGhpcy5jcmVhdGVDb250YWN0RXF1YXRpb24obyxzLEEsZSk7aWYoYS5uaS5zZXQoMCwwLDEpLHIudm11bHQoYS5uaSxhLm5pKSxhLm5pLm5lZ2F0ZShhLm5pKSxhLm5pLm5vcm1hbGl6ZSgpLGEubmkubXVsdChBLnJhZGl1cyxhLnJpKSx0LnZzdWIobix2KSxhLm5pLm11bHQoYS5uaS5kb3Qodiksayksdi52c3ViKGssYS5yaiksLXYuZG90KGEubmkpPD1BLnJhZGl1cyl7dmFyIEI9YS5yaSxjPWEucmo7Qi52YWRkKHQsQiksQi52c3ViKG8ucG9zaXRpb24sQiksYy52YWRkKG4sYyksYy52c3ViKHMucG9zaXRpb24sYyksdGhpcy5yZXN1bHQucHVzaChhKSx0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoYSx0aGlzLmZyaWN0aW9uUmVzdWx0KX19O3ZhciBqPW5ldyBzLEo9bmV3IHMsej1uZXcgcyxMPW5ldyBzLFA9bmV3IHMsTz1uZXcgcyxWPW5ldyBzLFc9W25ldyBzLG5ldyBzLG5ldyBzLG5ldyBzLG5ldyBzLG5ldyBzXSxLPW5ldyBzLFg9bmV3IHMsWj1uZXcgcyxfPW5ldyBzO3QucHJvdG90eXBlW3IudHlwZXMuU1BIRVJFfHIudHlwZXMuQk9YXT10LnByb3RvdHlwZS5zcGhlcmVCb3g9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXt2YXIgYT10aGlzLnYzcG9vbCxCPVc7dC52c3ViKG4sTCksZS5nZXRTaWRlTm9ybWFscyhCLHIpO2Zvcih2YXIgYz1BLnJhZGl1cyxnPSExLEU9WCxRPVosdT1fLGw9bnVsbCxoPTAsdz0wLEM9MCxJPW51bGwsTT0wLGQ9Qi5sZW5ndGg7TSE9PWQmJiExPT09ZztNKyspe3ZhciBwPVA7cC5jb3B5KEJbTV0pO3ZhciBtPXAubm9ybSgpO3Aubm9ybWFsaXplKCk7dmFyIEY9TC5kb3QocCk7aWYobStjPkYmJkY+MCl7dmFyIEQ9TyxZPVY7RC5jb3B5KEJbKE0rMSklM10pLFkuY29weShCWyhNKzIpJTNdKTt2YXIgZj1ELm5vcm0oKSxOPVkubm9ybSgpO0Qubm9ybWFsaXplKCksWS5ub3JtYWxpemUoKTt2YXIgVT1MLmRvdChEKSx5PUwuZG90KFkpO2lmKGY+VSYmVT4tZiYmTj55JiZ5Pi1OKXt2YXIgVD1NYXRoLmFicyhGLW0tYyk7KG51bGw9PT1JfHxJPlQpJiYoST1ULHc9VSxDPXksbD1tLEUuY29weShwKSxRLmNvcHkoRCksdS5jb3B5KFkpLGgrKyl9fX1pZihoKXtnPSEwO3ZhciB4PXRoaXMuY3JlYXRlQ29udGFjdEVxdWF0aW9uKG8scyxBLGUpO0UubXVsdCgtYyx4LnJpKSx4Lm5pLmNvcHkoRSkseC5uaS5uZWdhdGUoeC5uaSksRS5tdWx0KGwsRSksUS5tdWx0KHcsUSksRS52YWRkKFEsRSksdS5tdWx0KEMsdSksRS52YWRkKHUseC5yaikseC5yaS52YWRkKHQseC5yaSkseC5yaS52c3ViKG8ucG9zaXRpb24seC5yaSkseC5yai52YWRkKG4seC5yaikseC5yai52c3ViKHMucG9zaXRpb24seC5yaiksdGhpcy5yZXN1bHQucHVzaCh4KSx0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoeCx0aGlzLmZyaWN0aW9uUmVzdWx0KX1mb3IodmFyIFI9YS5nZXQoKSxHPUssUz0wOzIhPT1TJiYhZztTKyspZm9yKHZhciBiPTA7MiE9PWImJiFnO2IrKylmb3IodmFyIEg9MDsyIT09SCYmIWc7SCsrKVIuc2V0KDAsMCwwKSxTP1IudmFkZChCWzBdLFIpOlIudnN1YihCWzBdLFIpLGI/Ui52YWRkKEJbMV0sUik6Ui52c3ViKEJbMV0sUiksSD9SLnZhZGQoQlsyXSxSKTpSLnZzdWIoQlsyXSxSKSxuLnZhZGQoUixHKSxHLnZzdWIodCxHKSxHLm5vcm0yKCk8YypjJiYoZz0hMCwoeD10aGlzLmNyZWF0ZUNvbnRhY3RFcXVhdGlvbihvLHMsQSxlKSkucmkuY29weShHKSx4LnJpLm5vcm1hbGl6ZSgpLHgubmkuY29weSh4LnJpKSx4LnJpLm11bHQoYyx4LnJpKSx4LnJqLmNvcHkoUikseC5yaS52YWRkKHQseC5yaSkseC5yaS52c3ViKG8ucG9zaXRpb24seC5yaSkseC5yai52YWRkKG4seC5yaikseC5yai52c3ViKHMucG9zaXRpb24seC5yaiksdGhpcy5yZXN1bHQucHVzaCh4KSx0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoeCx0aGlzLmZyaWN0aW9uUmVzdWx0KSk7YS5yZWxlYXNlKFIpLFI9bnVsbDt2YXIgdj1hLmdldCgpLGs9YS5nZXQoKSxqPSh4PWEuZ2V0KCksYS5nZXQoKSksSj0oVD1hLmdldCgpLEIubGVuZ3RoKTtmb3IoUz0wO1MhPT1KJiYhZztTKyspZm9yKGI9MDtiIT09SiYmIWc7YisrKWlmKFMlMyE9YiUzKXtCW2JdLmNyb3NzKEJbU10sdiksdi5ub3JtYWxpemUoKSxCW1NdLnZhZGQoQltiXSxrKSx4LmNvcHkodCkseC52c3ViKGsseCkseC52c3ViKG4seCk7dmFyIHo9eC5kb3Qodik7Zm9yKHYubXVsdCh6LGopLEg9MDtIPT09UyUzfHxIPT09YiUzOylIKys7VC5jb3B5KHQpLFQudnN1YihqLFQpLFQudnN1YihrLFQpLFQudnN1YihuLFQpO3ZhciBxPU1hdGguYWJzKHopLCQ9VC5ub3JtKCk7aWYocTxCW0hdLm5vcm0oKSYmYz4kKXtnPSEwO3ZhciBBQT10aGlzLmNyZWF0ZUNvbnRhY3RFcXVhdGlvbihvLHMsQSxlKTtrLnZhZGQoaixBQS5yaiksQUEucmouY29weShBQS5yaiksVC5uZWdhdGUoQUEubmkpLEFBLm5pLm5vcm1hbGl6ZSgpLEFBLnJpLmNvcHkoQUEucmopLEFBLnJpLnZhZGQobixBQS5yaSksQUEucmkudnN1Yih0LEFBLnJpKSxBQS5yaS5ub3JtYWxpemUoKSxBQS5yaS5tdWx0KGMsQUEucmkpLEFBLnJpLnZhZGQodCxBQS5yaSksQUEucmkudnN1YihvLnBvc2l0aW9uLEFBLnJpKSxBQS5yai52YWRkKG4sQUEucmopLEFBLnJqLnZzdWIocy5wb3NpdGlvbixBQS5yaiksdGhpcy5yZXN1bHQucHVzaChBQSksdGhpcy5jcmVhdGVGcmljdGlvbkVxdWF0aW9uc0Zyb21Db250YWN0KEFBLHRoaXMuZnJpY3Rpb25SZXN1bHQpfX1hLnJlbGVhc2UodixrLHgsaixUKX07dmFyIHE9bmV3IHMsJD1uZXcgcyxBQT1uZXcgcyxlQT1uZXcgcyx0QT1uZXcgcyxuQT1uZXcgcyxpQT1uZXcgcyxyQT1uZXcgcyxvQT1uZXcgcyxzQT1uZXcgczt0LnByb3RvdHlwZVtyLnR5cGVzLlNQSEVSRXxyLnR5cGVzLkNPTlZFWFBPTFlIRURST05dPXQucHJvdG90eXBlLnNwaGVyZUNvbnZleD1mdW5jdGlvbihBLGUsdCxpLHIsbyxzLGEpe3ZhciBCPXRoaXMudjNwb29sO3QudnN1YihpLHEpO2Zvcih2YXIgYz1lLmZhY2VOb3JtYWxzLGc9ZS5mYWNlcyxFPWUudmVydGljZXMsUT1BLnJhZGl1cyx1PTA7dSE9PUUubGVuZ3RoO3UrKyl7dmFyIGw9RVt1XSxoPXRBO28udm11bHQobCxoKSxpLnZhZGQoaCxoKTt2YXIgdz1lQTtpZihoLnZzdWIodCx3KSx3Lm5vcm0yKCk8USpRKXJldHVybiBDPSEwLCh4PXRoaXMuY3JlYXRlQ29udGFjdEVxdWF0aW9uKHMsYSxBLGUpKS5yaS5jb3B5KHcpLHgucmkubm9ybWFsaXplKCkseC5uaS5jb3B5KHgucmkpLHgucmkubXVsdChRLHgucmkpLGgudnN1YihpLHgucmopLHgucmkudmFkZCh0LHgucmkpLHgucmkudnN1YihzLnBvc2l0aW9uLHgucmkpLHgucmoudmFkZChpLHgucmopLHgucmoudnN1YihhLnBvc2l0aW9uLHgucmopLHRoaXMucmVzdWx0LnB1c2goeCksdm9pZCB0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoeCx0aGlzLmZyaWN0aW9uUmVzdWx0KX1mb3IodmFyIEM9ITEsST0odT0wLGcubGVuZ3RoKTt1IT09SSYmITE9PT1DO3UrKyl7dmFyIE09Y1t1XSxkPWdbdV0scD1uQTtvLnZtdWx0KE0scCk7dmFyIG09aUE7by52bXVsdChFW2RbMF1dLG0pLG0udmFkZChpLG0pO3ZhciBGPXJBO3AubXVsdCgtUSxGKSx0LnZhZGQoRixGKTt2YXIgRD1vQTtGLnZzdWIobSxEKTt2YXIgWT1ELmRvdChwKSxmPXNBO2lmKHQudnN1YihtLGYpLDA+WSYmZi5kb3QocCk+MCl7Zm9yKHZhciBOPVtdLFU9MCx5PWQubGVuZ3RoO1UhPT15O1UrKyl7dmFyIFQ9Qi5nZXQoKTtvLnZtdWx0KEVbZFtVXV0sVCksaS52YWRkKFQsVCksTi5wdXNoKFQpfWlmKG4oTixwLHQpKXtDPSEwO3ZhciB4PXRoaXMuY3JlYXRlQ29udGFjdEVxdWF0aW9uKHMsYSxBLGUpO3AubXVsdCgtUSx4LnJpKSxwLm5lZ2F0ZSh4Lm5pKTt2YXIgUj1CLmdldCgpO3AubXVsdCgtWSxSKTt2YXIgRz1CLmdldCgpO3AubXVsdCgtUSxHKSx0LnZzdWIoaSx4LnJqKSx4LnJqLnZhZGQoRyx4LnJqKSx4LnJqLnZhZGQoUix4LnJqKSx4LnJqLnZhZGQoaSx4LnJqKSx4LnJqLnZzdWIoYS5wb3NpdGlvbix4LnJqKSx4LnJpLnZhZGQodCx4LnJpKSx4LnJpLnZzdWIocy5wb3NpdGlvbix4LnJpKSxCLnJlbGVhc2UoUiksQi5yZWxlYXNlKEcpLHRoaXMucmVzdWx0LnB1c2goeCksdGhpcy5jcmVhdGVGcmljdGlvbkVxdWF0aW9uc0Zyb21Db250YWN0KHgsdGhpcy5mcmljdGlvblJlc3VsdCksVT0wO2Zvcih2YXIgUz1OLmxlbmd0aDtVIT09UztVKyspQi5yZWxlYXNlKE5bVV0pO3JldHVybn1mb3IoVT0wO1UhPT1kLmxlbmd0aDtVKyspe3ZhciBiPUIuZ2V0KCksSD1CLmdldCgpO28udm11bHQoRVtkWyhVKzEpJWQubGVuZ3RoXV0sYiksby52bXVsdChFW2RbKFUrMiklZC5sZW5ndGhdXSxIKSxpLnZhZGQoYixiKSxpLnZhZGQoSCxIKTt2YXIgdj0kO0gudnN1YihiLHYpO3ZhciBrPUFBO3YudW5pdChrKTt2YXIgaj1CLmdldCgpLEo9Qi5nZXQoKTt0LnZzdWIoYixKKTt2YXIgej1KLmRvdChrKTtrLm11bHQoeixqKSxqLnZhZGQoYixqKTt2YXIgTD1CLmdldCgpO2lmKGoudnN1Yih0LEwpLHo+MCYmeip6PHYubm9ybTIoKSYmTC5ub3JtMigpPFEqUSl7Zm9yKHg9dGhpcy5jcmVhdGVDb250YWN0RXF1YXRpb24ocyxhLEEsZSksai52c3ViKGkseC5yaiksai52c3ViKHQseC5uaSkseC5uaS5ub3JtYWxpemUoKSx4Lm5pLm11bHQoUSx4LnJpKSx4LnJqLnZhZGQoaSx4LnJqKSx4LnJqLnZzdWIoYS5wb3NpdGlvbix4LnJqKSx4LnJpLnZhZGQodCx4LnJpKSx4LnJpLnZzdWIocy5wb3NpdGlvbix4LnJpKSx0aGlzLnJlc3VsdC5wdXNoKHgpLHRoaXMuY3JlYXRlRnJpY3Rpb25FcXVhdGlvbnNGcm9tQ29udGFjdCh4LHRoaXMuZnJpY3Rpb25SZXN1bHQpLFU9MCxTPU4ubGVuZ3RoO1UhPT1TO1UrKylCLnJlbGVhc2UoTltVXSk7cmV0dXJuIEIucmVsZWFzZShiKSxCLnJlbGVhc2UoSCksQi5yZWxlYXNlKGopLEIucmVsZWFzZShMKSx2b2lkIEIucmVsZWFzZShKKX1CLnJlbGVhc2UoYiksQi5yZWxlYXNlKEgpLEIucmVsZWFzZShqKSxCLnJlbGVhc2UoTCksQi5yZWxlYXNlKEopfWZvcihVPTAsUz1OLmxlbmd0aDtVIT09UztVKyspQi5yZWxlYXNlKE5bVV0pfX19LG5ldyBzLG5ldyBzLHQucHJvdG90eXBlW3IudHlwZXMuUExBTkV8ci50eXBlcy5CT1hdPXQucHJvdG90eXBlLnBsYW5lQm94PWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8scyl7ZS5jb252ZXhQb2x5aGVkcm9uUmVwcmVzZW50YXRpb24ubWF0ZXJpYWw9ZS5tYXRlcmlhbCxlLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbi5jb2xsaXNpb25SZXNwb25zZT1lLmNvbGxpc2lvblJlc3BvbnNlLHRoaXMucGxhbmVDb252ZXgoQSxlLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbix0LG4saSxyLG8scyl9O3ZhciBhQT1uZXcgcyxCQT1uZXcgcyxjQT1uZXcgcyxnQT1uZXcgczt0LnByb3RvdHlwZVtyLnR5cGVzLlBMQU5FfHIudHlwZXMuQ09OVkVYUE9MWUhFRFJPTl09dC5wcm90b3R5cGUucGxhbmVDb252ZXg9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXt2YXIgYT1hQSxCPUJBO0Iuc2V0KDAsMCwxKSxpLnZtdWx0KEIsQik7Zm9yKHZhciBjPTAsZz1jQSxFPTA7RSE9PWUudmVydGljZXMubGVuZ3RoO0UrKylpZihhLmNvcHkoZS52ZXJ0aWNlc1tFXSksci52bXVsdChhLGEpLG4udmFkZChhLGEpLGEudnN1Yih0LGcpLDA+PUIuZG90KGcpKXt2YXIgUT10aGlzLmNyZWF0ZUNvbnRhY3RFcXVhdGlvbihvLHMsQSxlKSx1PWdBO0IubXVsdChCLmRvdChnKSx1KSxhLnZzdWIodSx1KSx1LnZzdWIodCxRLnJpKSxRLm5pLmNvcHkoQiksYS52c3ViKG4sUS5yaiksUS5yaS52YWRkKHQsUS5yaSksUS5yaS52c3ViKG8ucG9zaXRpb24sUS5yaSksUS5yai52YWRkKG4sUS5yaiksUS5yai52c3ViKHMucG9zaXRpb24sUS5yaiksdGhpcy5yZXN1bHQucHVzaChRKSxjKyssdGhpcy5lbmFibGVGcmljdGlvblJlZHVjdGlvbnx8dGhpcy5jcmVhdGVGcmljdGlvbkVxdWF0aW9uc0Zyb21Db250YWN0KFEsdGhpcy5mcmljdGlvblJlc3VsdCl9dGhpcy5lbmFibGVGcmljdGlvblJlZHVjdGlvbiYmYyYmdGhpcy5jcmVhdGVGcmljdGlvbkZyb21BdmVyYWdlKGMpfTt2YXIgRUE9bmV3IHMsUUE9bmV3IHM7dC5wcm90b3R5cGVbci50eXBlcy5DT05WRVhQT0xZSEVEUk9OXT10LnByb3RvdHlwZS5jb252ZXhDb252ZXg9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzLGEsQixjLGcpe3ZhciBFPUVBO2lmKCEodC5kaXN0YW5jZVRvKG4pPkEuYm91bmRpbmdTcGhlcmVSYWRpdXMrZS5ib3VuZGluZ1NwaGVyZVJhZGl1cykmJkEuZmluZFNlcGFyYXRpbmdBeGlzKGUsdCxpLG4scixFLGMsZykpe3ZhciBRPVtdLHU9UUE7QS5jbGlwQWdhaW5zdEh1bGwodCxpLGUsbixyLEUsLTEwMCwxMDAsUSk7Zm9yKHZhciBsPTAsaD0wO2ghPT1RLmxlbmd0aDtoKyspe3ZhciB3PXRoaXMuY3JlYXRlQ29udGFjdEVxdWF0aW9uKG8scyxBLGUsYSxCKSxDPXcucmksST13LnJqO0UubmVnYXRlKHcubmkpLFFbaF0ubm9ybWFsLm5lZ2F0ZSh1KSx1Lm11bHQoUVtoXS5kZXB0aCx1KSxRW2hdLnBvaW50LnZhZGQodSxDKSxJLmNvcHkoUVtoXS5wb2ludCksQy52c3ViKHQsQyksSS52c3ViKG4sSSksQy52YWRkKHQsQyksQy52c3ViKG8ucG9zaXRpb24sQyksSS52YWRkKG4sSSksSS52c3ViKHMucG9zaXRpb24sSSksdGhpcy5yZXN1bHQucHVzaCh3KSxsKyssdGhpcy5lbmFibGVGcmljdGlvblJlZHVjdGlvbnx8dGhpcy5jcmVhdGVGcmljdGlvbkVxdWF0aW9uc0Zyb21Db250YWN0KHcsdGhpcy5mcmljdGlvblJlc3VsdCl9dGhpcy5lbmFibGVGcmljdGlvblJlZHVjdGlvbiYmbCYmdGhpcy5jcmVhdGVGcmljdGlvbkZyb21BdmVyYWdlKGwpfX07dmFyIHVBPW5ldyBzLGxBPW5ldyBzLGhBPW5ldyBzO3QucHJvdG90eXBlW3IudHlwZXMuUExBTkV8ci50eXBlcy5QQVJUSUNMRV09dC5wcm90b3R5cGUucGxhbmVQYXJ0aWNsZT1mdW5jdGlvbihBLGUsdCxuLGkscixvLHMpe3ZhciBhPXVBO2Euc2V0KDAsMCwxKSxvLnF1YXRlcm5pb24udm11bHQoYSxhKTt2YXIgQj1sQTtpZihuLnZzdWIoby5wb3NpdGlvbixCKSwwPj1hLmRvdChCKSl7dmFyIGM9dGhpcy5jcmVhdGVDb250YWN0RXF1YXRpb24ocyxvLGUsQSk7Yy5uaS5jb3B5KGEpLGMubmkubmVnYXRlKGMubmkpLGMucmkuc2V0KDAsMCwwKTt2YXIgZz1oQTthLm11bHQoYS5kb3QobiksZyksbi52c3ViKGcsZyksYy5yai5jb3B5KGcpLHRoaXMucmVzdWx0LnB1c2goYyksdGhpcy5jcmVhdGVGcmljdGlvbkVxdWF0aW9uc0Zyb21Db250YWN0KGMsdGhpcy5mcmljdGlvblJlc3VsdCl9fTt2YXIgd0E9bmV3IHM7dC5wcm90b3R5cGVbci50eXBlcy5QQVJUSUNMRXxyLnR5cGVzLlNQSEVSRV09dC5wcm90b3R5cGUuc3BoZXJlUGFydGljbGU9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXt2YXIgYT13QTtpZihhLnNldCgwLDAsMSksbi52c3ViKHQsYSksYS5ub3JtMigpPD1BLnJhZGl1cypBLnJhZGl1cyl7dmFyIEI9dGhpcy5jcmVhdGVDb250YWN0RXF1YXRpb24ocyxvLGUsQSk7YS5ub3JtYWxpemUoKSxCLnJqLmNvcHkoYSksQi5yai5tdWx0KEEucmFkaXVzLEIucmopLEIubmkuY29weShhKSxCLm5pLm5lZ2F0ZShCLm5pKSxCLnJpLnNldCgwLDAsMCksdGhpcy5yZXN1bHQucHVzaChCKSx0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoQix0aGlzLmZyaWN0aW9uUmVzdWx0KX19O3ZhciBDQT1uZXcgQixJQT1uZXcgcyxNQT0obmV3IHMsbmV3IHMpLGRBPW5ldyBzLHBBPW5ldyBzO3QucHJvdG90eXBlW3IudHlwZXMuUEFSVElDTEV8ci50eXBlcy5DT05WRVhQT0xZSEVEUk9OXT10LnByb3RvdHlwZS5jb252ZXhQYXJ0aWNsZT1mdW5jdGlvbihBLGUsdCxuLGkscixvLHMpe3ZhciBhPS0xLEI9TUEsYz1wQSxnPW51bGwsRT1JQTtpZihFLmNvcHkobiksRS52c3ViKHQsRSksaS5jb25qdWdhdGUoQ0EpLENBLnZtdWx0KEUsRSksQS5wb2ludElzSW5zaWRlKEUpKXtBLndvcmxkVmVydGljZXNOZWVkc1VwZGF0ZSYmQS5jb21wdXRlV29ybGRWZXJ0aWNlcyh0LGkpLEEud29ybGRGYWNlTm9ybWFsc05lZWRzVXBkYXRlJiZBLmNvbXB1dGVXb3JsZEZhY2VOb3JtYWxzKGkpO2Zvcih2YXIgUT0wLHU9QS5mYWNlcy5sZW5ndGg7USE9PXU7USsrKXt2YXIgbD1bQS53b3JsZFZlcnRpY2VzW0EuZmFjZXNbUV1bMF1dXSxoPUEud29ybGRGYWNlTm9ybWFsc1tRXTtuLnZzdWIobFswXSxkQSk7dmFyIHc9LWguZG90KGRBKTsobnVsbD09PWd8fE1hdGguYWJzKHcpPE1hdGguYWJzKGcpKSYmKGc9dyxhPVEsQi5jb3B5KGgpKX1pZigtMSE9PWEpe3ZhciBDPXRoaXMuY3JlYXRlQ29udGFjdEVxdWF0aW9uKHMsbyxlLEEpO0IubXVsdChnLGMpLGMudmFkZChuLGMpLGMudnN1Yih0LGMpLEMucmouY29weShjKSxCLm5lZ2F0ZShDLm5pKSxDLnJpLnNldCgwLDAsMCk7dmFyIEk9Qy5yaSxNPUMucmo7SS52YWRkKG4sSSksSS52c3ViKHMucG9zaXRpb24sSSksTS52YWRkKHQsTSksTS52c3ViKG8ucG9zaXRpb24sTSksdGhpcy5yZXN1bHQucHVzaChDKSx0aGlzLmNyZWF0ZUZyaWN0aW9uRXF1YXRpb25zRnJvbUNvbnRhY3QoQyx0aGlzLmZyaWN0aW9uUmVzdWx0KX1lbHNlIGNvbnNvbGUud2FybigiUG9pbnQgZm91bmQgaW5zaWRlIGNvbnZleCwgYnV0IGRpZCBub3QgZmluZCBwZW5ldHJhdGluZyBmYWNlISIpfX0sdC5wcm90b3R5cGVbci50eXBlcy5CT1h8ci50eXBlcy5IRUlHSFRGSUVMRF09dC5wcm90b3R5cGUuYm94SGVpZ2h0ZmllbGQ9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXtBLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbi5tYXRlcmlhbD1BLm1hdGVyaWFsLEEuY29udmV4UG9seWhlZHJvblJlcHJlc2VudGF0aW9uLmNvbGxpc2lvblJlc3BvbnNlPUEuY29sbGlzaW9uUmVzcG9uc2UsdGhpcy5jb252ZXhIZWlnaHRmaWVsZChBLmNvbnZleFBvbHloZWRyb25SZXByZXNlbnRhdGlvbixlLHQsbixpLHIsbyxzKX07dmFyIG1BPW5ldyBzLEZBPW5ldyBzLERBPVswXTt0LnByb3RvdHlwZVtyLnR5cGVzLkNPTlZFWFBPTFlIRURST058ci50eXBlcy5IRUlHSFRGSUVMRF09dC5wcm90b3R5cGUuY29udmV4SGVpZ2h0ZmllbGQ9ZnVuY3Rpb24oQSxlLHQsbixpLHIsbyxzKXt2YXIgQj1lLmRhdGEsYz1lLmVsZW1lbnRTaXplLGc9QS5ib3VuZGluZ1NwaGVyZVJhZGl1cyxFPUZBLFE9REEsdT1tQTthLnBvaW50VG9Mb2NhbEZyYW1lKG4scix0LHUpO3ZhciBsPU1hdGguZmxvb3IoKHUueC1nKS9jKS0xLGg9TWF0aC5jZWlsKCh1LngrZykvYykrMSx3PU1hdGguZmxvb3IoKHUueS1nKS9jKS0xLEM9TWF0aC5jZWlsKCh1LnkrZykvYykrMTtpZighKDA+aHx8MD5DfHxsPkIubGVuZ3RofHx3PkJbMF0ubGVuZ3RoKSl7MD5sJiYobD0wKSwwPmgmJihoPTApLDA+dyYmKHc9MCksMD5DJiYoQz0wKSxsPj1CLmxlbmd0aCYmKGw9Qi5sZW5ndGgtMSksaD49Qi5sZW5ndGgmJihoPUIubGVuZ3RoLTEpLEM+PUJbMF0ubGVuZ3RoJiYoQz1CWzBdLmxlbmd0aC0xKSx3Pj1CWzBdLmxlbmd0aCYmKHc9QlswXS5sZW5ndGgtMSk7dmFyIEk9W107ZS5nZXRSZWN0TWluTWF4KGwsdyxoLEMsSSk7dmFyIE09SVswXSxkPUlbMV07aWYoISh1LnotZz5kfHx1LnorZzxNKSlmb3IodmFyIHA9bDtoPnA7cCsrKWZvcih2YXIgbT13O0M+bTttKyspZS5nZXRDb252ZXhUcmlhbmdsZVBpbGxhcihwLG0sITEpLGEucG9pbnRUb1dvcmxkRnJhbWUobixyLGUucGlsbGFyT2Zmc2V0LEUpLHQuZGlzdGFuY2VUbyhFKTxlLnBpbGxhckNvbnZleC5ib3VuZGluZ1NwaGVyZVJhZGl1cytBLmJvdW5kaW5nU3BoZXJlUmFkaXVzJiZ0aGlzLmNvbnZleENvbnZleChBLGUucGlsbGFyQ29udmV4LHQsRSxpLHIsbyxzLG51bGwsbnVsbCxRLG51bGwpLGUuZ2V0Q29udmV4VHJpYW5nbGVQaWxsYXIocCxtLCEwKSxhLnBvaW50VG9Xb3JsZEZyYW1lKG4scixlLnBpbGxhck9mZnNldCxFKSx0LmRpc3RhbmNlVG8oRSk8ZS5waWxsYXJDb252ZXguYm91bmRpbmdTcGhlcmVSYWRpdXMrQS5ib3VuZGluZ1NwaGVyZVJhZGl1cyYmdGhpcy5jb252ZXhDb252ZXgoQSxlLnBpbGxhckNvbnZleCx0LEUsaSxyLG8scyxudWxsLG51bGwsUSxudWxsKX19O3ZhciBZQT1uZXcgcyxmQT1uZXcgczt0LnByb3RvdHlwZVtyLnR5cGVzLlNQSEVSRXxyLnR5cGVzLkhFSUdIVEZJRUxEXT10LnByb3RvdHlwZS5zcGhlcmVIZWlnaHRmaWVsZD1mdW5jdGlvbihBLGUsdCxuLGkscixvLHMpe3ZhciBCPWUuZGF0YSxjPUEucmFkaXVzLGc9ZS5lbGVtZW50U2l6ZSxFPWZBLFE9WUE7YS5wb2ludFRvTG9jYWxGcmFtZShuLHIsdCxRKTt2YXIgdT1NYXRoLmZsb29yKChRLngtYykvZyktMSxsPU1hdGguY2VpbCgoUS54K2MpL2cpKzEsaD1NYXRoLmZsb29yKChRLnktYykvZyktMSx3PU1hdGguY2VpbCgoUS55K2MpL2cpKzE7aWYoISgwPmx8fDA+d3x8dT5CLmxlbmd0aHx8dz5CWzBdLmxlbmd0aCkpezA+dSYmKHU9MCksMD5sJiYobD0wKSwwPmgmJihoPTApLDA+dyYmKHc9MCksdT49Qi5sZW5ndGgmJih1PUIubGVuZ3RoLTEpLGw+PUIubGVuZ3RoJiYobD1CLmxlbmd0aC0xKSx3Pj1CWzBdLmxlbmd0aCYmKHc9QlswXS5sZW5ndGgtMSksaD49QlswXS5sZW5ndGgmJihoPUJbMF0ubGVuZ3RoLTEpO3ZhciBDPVtdO2UuZ2V0UmVjdE1pbk1heCh1LGgsbCx3LEMpO3ZhciBJPUNbMF0sTT1DWzFdO2lmKCEoUS56LWM+TXx8US56K2M8SSkpZm9yKHZhciBkPXRoaXMucmVzdWx0LHA9dTtsPnA7cCsrKWZvcih2YXIgbT1oO3c+bTttKyspe3ZhciBGPWQubGVuZ3RoO2lmKGUuZ2V0Q29udmV4VHJpYW5nbGVQaWxsYXIocCxtLCExKSxhLnBvaW50VG9Xb3JsZEZyYW1lKG4scixlLnBpbGxhck9mZnNldCxFKSx0LmRpc3RhbmNlVG8oRSk8ZS5waWxsYXJDb252ZXguYm91bmRpbmdTcGhlcmVSYWRpdXMrQS5ib3VuZGluZ1NwaGVyZVJhZGl1cyYmdGhpcy5zcGhlcmVDb252ZXgoQSxlLnBpbGxhckNvbnZleCx0LEUsaSxyLG8scyksZS5nZXRDb252ZXhUcmlhbmdsZVBpbGxhcihwLG0sITApLGEucG9pbnRUb1dvcmxkRnJhbWUobixyLGUucGlsbGFyT2Zmc2V0LEUpLHQuZGlzdGFuY2VUbyhFKTxlLnBpbGxhckNvbnZleC5ib3VuZGluZ1NwaGVyZVJhZGl1cytBLmJvdW5kaW5nU3BoZXJlUmFkaXVzJiZ0aGlzLnNwaGVyZUNvbnZleChBLGUucGlsbGFyQ29udmV4LHQsRSxpLHIsbyxzKSxkLmxlbmd0aC1GPjIpcmV0dXJufX19fSx7Ii4uL2NvbGxpc2lvbi9BQUJCIjozLCIuLi9jb2xsaXNpb24vUmF5Ijo5LCIuLi9lcXVhdGlvbnMvQ29udGFjdEVxdWF0aW9uIjoxOSwiLi4vZXF1YXRpb25zL0ZyaWN0aW9uRXF1YXRpb24iOjIxLCIuLi9tYXRoL1F1YXRlcm5pb24iOjI4LCIuLi9tYXRoL1RyYW5zZm9ybSI6MjksIi4uL21hdGgvVmVjMyI6MzAsIi4uL3NoYXBlcy9Db252ZXhQb2x5aGVkcm9uIjozOCwiLi4vc2hhcGVzL1NoYXBlIjo0MywiLi4vc29sdmVyL1NvbHZlciI6NDcsIi4uL3V0aWxzL1ZlYzNQb29sIjo1NH1dLDU2OltmdW5jdGlvbihBLGUpe2Z1bmN0aW9uIHQoKXthLmFwcGx5KHRoaXMpLHRoaXMuZHQ9LTEsdGhpcy5hbGxvd1NsZWVwPSExLHRoaXMuY29udGFjdHM9W10sdGhpcy5mcmljdGlvbkVxdWF0aW9ucz1bXSx0aGlzLnF1YXROb3JtYWxpemVTa2lwPTAsdGhpcy5xdWF0Tm9ybWFsaXplRmFzdD0hMSx0aGlzLnRpbWU9MCx0aGlzLnN0ZXBudW1iZXI9MCx0aGlzLmRlZmF1bHRfZHQ9MS82MCx0aGlzLm5leHRJZD0wLHRoaXMuZ3Jhdml0eT1uZXcgaSx0aGlzLmJyb2FkcGhhc2U9bmV3IHcsdGhpcy5ib2RpZXM9W10sdGhpcy5zb2x2ZXI9bmV3IG8sdGhpcy5jb25zdHJhaW50cz1bXSx0aGlzLm5hcnJvd3BoYXNlPW5ldyBzKHRoaXMpLHRoaXMuY29sbGlzaW9uTWF0cml4PW5ldyBCLHRoaXMuY29sbGlzaW9uTWF0cml4UHJldmlvdXM9bmV3IEIsdGhpcy5tYXRlcmlhbHM9W10sdGhpcy5jb250YWN0bWF0ZXJpYWxzPVtdLHRoaXMuY29udGFjdE1hdGVyaWFsVGFibGU9bmV3IFEsdGhpcy5kZWZhdWx0TWF0ZXJpYWw9bmV3IGMoImRlZmF1bHQiKSx0aGlzLmRlZmF1bHRDb250YWN0TWF0ZXJpYWw9bmV3IGcodGhpcy5kZWZhdWx0TWF0ZXJpYWwsdGhpcy5kZWZhdWx0TWF0ZXJpYWwse2ZyaWN0aW9uOi4zLHJlc3RpdHV0aW9uOjB9KSx0aGlzLmRvUHJvZmlsaW5nPSExLHRoaXMucHJvZmlsZT17c29sdmU6MCxtYWtlQ29udGFjdENvbnN0cmFpbnRzOjAsYnJvYWRwaGFzZTowLGludGVncmF0ZTowLG5hcnJvd3BoYXNlOjB9LHRoaXMuc3Vic3lzdGVtcz1bXSx0aGlzLmFkZEJvZHlFdmVudD17dHlwZToiYWRkQm9keSIsYm9keTpudWxsfSx0aGlzLnJlbW92ZUJvZHlFdmVudD17dHlwZToicmVtb3ZlQm9keSIsYm9keTpudWxsfX1lLmV4cG9ydHM9dDt2YXIgbj1BKCIuLi9zaGFwZXMvU2hhcGUiKSxpPUEoIi4uL21hdGgvVmVjMyIpLHI9QSgiLi4vbWF0aC9RdWF0ZXJuaW9uIiksbz1BKCIuLi9zb2x2ZXIvR1NTb2x2ZXIiKSxzPShBKCIuLi91dGlscy9WZWMzUG9vbCIpLEEoIi4uL2VxdWF0aW9ucy9Db250YWN0RXF1YXRpb24iKSxBKCIuLi9lcXVhdGlvbnMvRnJpY3Rpb25FcXVhdGlvbiIpLEEoIi4vTmFycm93cGhhc2UiKSksYT1BKCIuLi91dGlscy9FdmVudFRhcmdldCIpLEI9QSgiLi4vY29sbGlzaW9uL0FycmF5Q29sbGlzaW9uTWF0cml4IiksYz1BKCIuLi9tYXRlcmlhbC9NYXRlcmlhbCIpLGc9QSgiLi4vbWF0ZXJpYWwvQ29udGFjdE1hdGVyaWFsIiksRT1BKCIuLi9vYmplY3RzL0JvZHkiKSxRPUEoIi4uL3V0aWxzL1R1cGxlRGljdGlvbmFyeSIpLHU9QSgiLi4vY29sbGlzaW9uL1JheWNhc3RSZXN1bHQiKSxsPUEoIi4uL2NvbGxpc2lvbi9BQUJCIiksaD1BKCIuLi9jb2xsaXNpb24vUmF5Iiksdz1BKCIuLi9jb2xsaXNpb24vTmFpdmVCcm9hZHBoYXNlIik7dC5wcm90b3R5cGU9bmV3IGE7dmFyIEM9KG5ldyBsLG5ldyBoKTtpZih0LnByb3RvdHlwZS5nZXRDb250YWN0TWF0ZXJpYWw9ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdGhpcy5jb250YWN0TWF0ZXJpYWxUYWJsZS5nZXQoQS5pZCxlLmlkKX0sdC5wcm90b3R5cGUubnVtT2JqZWN0cz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmJvZGllcy5sZW5ndGh9LHQucHJvdG90eXBlLmNvbGxpc2lvbk1hdHJpeFRpY2s9ZnVuY3Rpb24oKXt2YXIgQT10aGlzLmNvbGxpc2lvbk1hdHJpeFByZXZpb3VzO3RoaXMuY29sbGlzaW9uTWF0cml4UHJldmlvdXM9dGhpcy5jb2xsaXNpb25NYXRyaXgsdGhpcy5jb2xsaXNpb25NYXRyaXg9QSx0aGlzLmNvbGxpc2lvbk1hdHJpeC5yZXNldCgpfSx0LnByb3RvdHlwZS5hZGQ9dC5wcm90b3R5cGUuYWRkQm9keT1mdW5jdGlvbihBKXstMT09PXRoaXMuYm9kaWVzLmluZGV4T2YoQSkmJihBLmluZGV4PXRoaXMuYm9kaWVzLmxlbmd0aCx0aGlzLmJvZGllcy5wdXNoKEEpLEEud29ybGQ9dGhpcyxBLmluaXRQb3NpdGlvbi5jb3B5KEEucG9zaXRpb24pLEEuaW5pdFZlbG9jaXR5LmNvcHkoQS52ZWxvY2l0eSksQS50aW1lTGFzdFNsZWVweT10aGlzLnRpbWUsQSBpbnN0YW5jZW9mIEUmJihBLmluaXRBbmd1bGFyVmVsb2NpdHkuY29weShBLmFuZ3VsYXJWZWxvY2l0eSksQS5pbml0UXVhdGVybmlvbi5jb3B5KEEucXVhdGVybmlvbikpLHRoaXMuY29sbGlzaW9uTWF0cml4LnNldE51bU9iamVjdHModGhpcy5ib2RpZXMubGVuZ3RoKSx0aGlzLmFkZEJvZHlFdmVudC5ib2R5PUEsdGhpcy5kaXNwYXRjaEV2ZW50KHRoaXMuYWRkQm9keUV2ZW50KSl9LHQucHJvdG90eXBlLmFkZENvbnN0cmFpbnQ9ZnVuY3Rpb24oQSl7dGhpcy5jb25zdHJhaW50cy5wdXNoKEEpfSx0LnByb3RvdHlwZS5yZW1vdmVDb25zdHJhaW50PWZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMuY29uc3RyYWludHMuaW5kZXhPZihBKTstMSE9PWUmJnRoaXMuY29uc3RyYWludHMuc3BsaWNlKGUsMSl9LHQucHJvdG90eXBlLnJheVRlc3Q9ZnVuY3Rpb24oQSxlLHQpe3QgaW5zdGFuY2VvZiB1P3RoaXMucmF5Y2FzdENsb3Nlc3QoQSxlLHtza2lwQmFja2ZhY2VzOiEwfSx0KTp0aGlzLnJheWNhc3RBbGwoQSxlLHtza2lwQmFja2ZhY2VzOiEwfSx0KX0sdC5wcm90b3R5cGUucmF5Y2FzdEFsbD1mdW5jdGlvbihBLGUsdCxuKXtyZXR1cm4gdC5tb2RlPWguQUxMLHQuZnJvbT1BLHQudG89ZSx0LmNhbGxiYWNrPW4sQy5pbnRlcnNlY3RXb3JsZCh0aGlzLHQpfSx0LnByb3RvdHlwZS5yYXljYXN0QW55PWZ1bmN0aW9uKEEsZSx0LG4pe3JldHVybiB0Lm1vZGU9aC5BTlksdC5mcm9tPUEsdC50bz1lLHQucmVzdWx0PW4sQy5pbnRlcnNlY3RXb3JsZCh0aGlzLHQpfSx0LnByb3RvdHlwZS5yYXljYXN0Q2xvc2VzdD1mdW5jdGlvbihBLGUsdCxuKXtyZXR1cm4gdC5tb2RlPWguQ0xPU0VTVCx0LmZyb209QSx0LnRvPWUsdC5yZXN1bHQ9bixDLmludGVyc2VjdFdvcmxkKHRoaXMsdCl9LHQucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihBKXtBLndvcmxkPW51bGw7dmFyIGU9dGhpcy5ib2RpZXMubGVuZ3RoLTEsdD10aGlzLmJvZGllcyxuPXQuaW5kZXhPZihBKTtpZigtMSE9PW4pe3Quc3BsaWNlKG4sMSk7Zm9yKHZhciBpPTA7aSE9PXQubGVuZ3RoO2krKyl0W2ldLmluZGV4PWk7dGhpcy5jb2xsaXNpb25NYXRyaXguc2V0TnVtT2JqZWN0cyhlKSx0aGlzLnJlbW92ZUJvZHlFdmVudC5ib2R5PUEsdGhpcy5kaXNwYXRjaEV2ZW50KHRoaXMucmVtb3ZlQm9keUV2ZW50KX19LHQucHJvdG90eXBlLnJlbW92ZUJvZHk9dC5wcm90b3R5cGUucmVtb3ZlLHQucHJvdG90eXBlLmFkZE1hdGVyaWFsPWZ1bmN0aW9uKEEpe3RoaXMubWF0ZXJpYWxzLnB1c2goQSl9LHQucHJvdG90eXBlLmFkZENvbnRhY3RNYXRlcmlhbD1mdW5jdGlvbihBKXt0aGlzLmNvbnRhY3RtYXRlcmlhbHMucHVzaChBKSx0aGlzLmNvbnRhY3RNYXRlcmlhbFRhYmxlLnNldChBLm1hdGVyaWFsc1swXS5pZCxBLm1hdGVyaWFsc1sxXS5pZCxBKX0sInVuZGVmaW5lZCI9PXR5cGVvZiBwZXJmb3JtYW5jZSYmKHBlcmZvcm1hbmNlPXt9KSwhcGVyZm9ybWFuY2Uubm93KXt2YXIgST1EYXRlLm5vdygpO3BlcmZvcm1hbmNlLnRpbWluZyYmcGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCYmKEk9cGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCkscGVyZm9ybWFuY2Uubm93PWZ1bmN0aW9uKCl7cmV0dXJuIERhdGUubm93KCktSX19dmFyIE09bmV3IGk7dC5wcm90b3R5cGUuc3RlcD1mdW5jdGlvbihBLGUsdCl7aWYodD10fHwxMCwwPT09KGU9ZXx8MCkpdGhpcy5pbnRlcm5hbFN0ZXAoQSksdGhpcy50aW1lKz1BO2Vsc2V7dmFyIG49TWF0aC5mbG9vcigodGhpcy50aW1lK2UpL0EpLU1hdGguZmxvb3IodGhpcy50aW1lL0EpO249TWF0aC5taW4obix0KTtmb3IodmFyIGk9cGVyZm9ybWFuY2Uubm93KCkscj0wO3IhPT1uJiYodGhpcy5pbnRlcm5hbFN0ZXAoQSksIShwZXJmb3JtYW5jZS5ub3coKS1pPjFlMypBKSk7cisrKTt0aGlzLnRpbWUrPWU7Zm9yKHZhciBvPXRoaXMudGltZSVBL0Escz1NLGE9dGhpcy5ib2RpZXMsQj0wO0IhPT1hLmxlbmd0aDtCKyspe3ZhciBjPWFbQl07Yy50eXBlIT09RS5TVEFUSUMmJmMuc2xlZXBTdGF0ZSE9PUUuU0xFRVBJTkc/KGMucG9zaXRpb24udnN1YihjLnByZXZpb3VzUG9zaXRpb24scykscy5zY2FsZShvLHMpLGMucG9zaXRpb24udmFkZChzLGMuaW50ZXJwb2xhdGVkUG9zaXRpb24pKTooYy5pbnRlcnBvbGF0ZWRQb3NpdGlvbi5jb3B5KGMucG9zaXRpb24pLGMuaW50ZXJwb2xhdGVkUXVhdGVybmlvbi5jb3B5KGMucXVhdGVybmlvbikpfX19O3ZhciBkPXt0eXBlOiJwb3N0U3RlcCJ9LHA9e3R5cGU6InByZVN0ZXAifSxtPXt0eXBlOiJjb2xsaWRlIixib2R5Om51bGwsY29udGFjdDpudWxsfSxGPVtdLEQ9W10sWT1bXSxmPVtdLE49KG5ldyBpLG5ldyBpLG5ldyBpLG5ldyBpLG5ldyBpLG5ldyBpLG5ldyBpLG5ldyBpLG5ldyBpLG5ldyByLG5ldyByKSxVPW5ldyByLHk9bmV3IGk7dC5wcm90b3R5cGUuaW50ZXJuYWxTdGVwPWZ1bmN0aW9uKEEpe3RoaXMuZHQ9QTt2YXIgZSx0PXRoaXMuY29udGFjdHMsaT1ZLHI9ZixvPXRoaXMubnVtT2JqZWN0cygpLHM9dGhpcy5ib2RpZXMsYT10aGlzLnNvbHZlcixCPXRoaXMuZ3Jhdml0eSxjPXRoaXMuZG9Qcm9maWxpbmcsZz10aGlzLnByb2ZpbGUsUT1FLkRZTkFNSUMsdT10aGlzLmNvbnN0cmFpbnRzLGw9RCxoPShCLm5vcm0oKSxCLngpLHc9Qi55LEM9Qi56LEk9MDtmb3IoYyYmKGU9cGVyZm9ybWFuY2Uubm93KCkpLEk9MDtJIT09bztJKyspaWYoKGo9c1tJXSkudHlwZSZRKXt2YXIgTT1qLmZvcmNlLFQ9ai5tYXNzO00ueCs9VCpoLE0ueSs9VCp3LE0ueis9VCpDfUk9MDtmb3IodmFyIHg9dGhpcy5zdWJzeXN0ZW1zLmxlbmd0aDtJIT09eDtJKyspdGhpcy5zdWJzeXN0ZW1zW0ldLnVwZGF0ZSgpO2MmJihlPXBlcmZvcm1hbmNlLm5vdygpKSxpLmxlbmd0aD0wLHIubGVuZ3RoPTAsdGhpcy5icm9hZHBoYXNlLmNvbGxpc2lvblBhaXJzKHRoaXMsaSxyKSxjJiYoZy5icm9hZHBoYXNlPXBlcmZvcm1hbmNlLm5vdygpLWUpO3ZhciBSPXUubGVuZ3RoO2ZvcihJPTA7SSE9PVI7SSsrKWlmKCEoej11W0ldKS5jb2xsaWRlQ29ubmVjdGVkKWZvcih2YXIgRz1pLmxlbmd0aC0xO0c+PTA7Ry09MSkoei5ib2R5QT09PWlbR10mJnouYm9keUI9PT1yW0ddfHx6LmJvZHlCPT09aVtHXSYmei5ib2R5QT09PXJbR10pJiYoaS5zcGxpY2UoRywxKSxyLnNwbGljZShHLDEpKTt0aGlzLmNvbGxpc2lvbk1hdHJpeFRpY2soKSxjJiYoZT1wZXJmb3JtYW5jZS5ub3coKSk7dmFyIFM9RixiPXQubGVuZ3RoO2ZvcihJPTA7SSE9PWI7SSsrKVMucHVzaCh0W0ldKTt0Lmxlbmd0aD0wO3ZhciBIPXRoaXMuZnJpY3Rpb25FcXVhdGlvbnMubGVuZ3RoO2ZvcihJPTA7SSE9PUg7SSsrKWwucHVzaCh0aGlzLmZyaWN0aW9uRXF1YXRpb25zW0ldKTtmb3IodGhpcy5mcmljdGlvbkVxdWF0aW9ucy5sZW5ndGg9MCx0aGlzLm5hcnJvd3BoYXNlLmdldENvbnRhY3RzKGkscix0aGlzLHQsUyx0aGlzLmZyaWN0aW9uRXF1YXRpb25zLGwpLGMmJihnLm5hcnJvd3BoYXNlPXBlcmZvcm1hbmNlLm5vdygpLWUpLGMmJihlPXBlcmZvcm1hbmNlLm5vdygpKSxJPTA7STx0aGlzLmZyaWN0aW9uRXF1YXRpb25zLmxlbmd0aDtJKyspYS5hZGRFcXVhdGlvbih0aGlzLmZyaWN0aW9uRXF1YXRpb25zW0ldKTtmb3IodmFyIHY9dC5sZW5ndGgsaz0wO2shPT12O2srKyl7dmFyIGo9KHo9dFtrXSkuYmksSj16LmJqO3ouc2ksei5zaiwoai5tYXRlcmlhbCYmSi5tYXRlcmlhbCYmdGhpcy5nZXRDb250YWN0TWF0ZXJpYWwoai5tYXRlcmlhbCxKLm1hdGVyaWFsKXx8dGhpcy5kZWZhdWx0Q29udGFjdE1hdGVyaWFsKS5mcmljdGlvbixqLm1hdGVyaWFsJiZKLm1hdGVyaWFsJiYoai5tYXRlcmlhbC5mcmljdGlvbj49MCYmSi5tYXRlcmlhbC5mcmljdGlvbj49MCYmKGoubWF0ZXJpYWwuZnJpY3Rpb24sSi5tYXRlcmlhbC5mcmljdGlvbiksai5tYXRlcmlhbC5yZXN0aXR1dGlvbj49MCYmSi5tYXRlcmlhbC5yZXN0aXR1dGlvbj49MCYmKHoucmVzdGl0dXRpb249ai5tYXRlcmlhbC5yZXN0aXR1dGlvbipKLm1hdGVyaWFsLnJlc3RpdHV0aW9uKSksYS5hZGRFcXVhdGlvbih6KSxqLmFsbG93U2xlZXAmJmoudHlwZT09PUUuRFlOQU1JQyYmai5zbGVlcFN0YXRlPT09RS5TTEVFUElORyYmSi5zbGVlcFN0YXRlPT09RS5BV0FLRSYmSi50eXBlIT09RS5TVEFUSUMmJkoudmVsb2NpdHkubm9ybTIoKStKLmFuZ3VsYXJWZWxvY2l0eS5ub3JtMigpPj0yKk1hdGgucG93KEouc2xlZXBTcGVlZExpbWl0LDIpJiYoai5fd2FrZVVwQWZ0ZXJOYXJyb3dwaGFzZT0hMCksSi5hbGxvd1NsZWVwJiZKLnR5cGU9PT1FLkRZTkFNSUMmJkouc2xlZXBTdGF0ZT09PUUuU0xFRVBJTkcmJmouc2xlZXBTdGF0ZT09PUUuQVdBS0UmJmoudHlwZSE9PUUuU1RBVElDJiZqLnZlbG9jaXR5Lm5vcm0yKCkrai5hbmd1bGFyVmVsb2NpdHkubm9ybTIoKT49MipNYXRoLnBvdyhqLnNsZWVwU3BlZWRMaW1pdCwyKSYmKEouX3dha2VVcEFmdGVyTmFycm93cGhhc2U9ITApLHRoaXMuY29sbGlzaW9uTWF0cml4LnNldChqLEosITApLHRoaXMuY29sbGlzaW9uTWF0cml4UHJldmlvdXMuZ2V0KGosSil8fChtLmJvZHk9SixtLmNvbnRhY3Q9eixqLmRpc3BhdGNoRXZlbnQobSksbS5ib2R5PWosSi5kaXNwYXRjaEV2ZW50KG0pKX1mb3IoYyYmKGcubWFrZUNvbnRhY3RDb25zdHJhaW50cz1wZXJmb3JtYW5jZS5ub3coKS1lLGU9cGVyZm9ybWFuY2Uubm93KCkpLEk9MDtJIT09bztJKyspKGo9c1tJXSkuX3dha2VVcEFmdGVyTmFycm93cGhhc2UmJihqLndha2VVcCgpLGouX3dha2VVcEFmdGVyTmFycm93cGhhc2U9ITEpO2ZvcihSPXUubGVuZ3RoLEk9MDtJIT09UjtJKyspe3ZhciB6Oyh6PXVbSV0pLnVwZGF0ZSgpLEc9MDtmb3IodmFyIEw9ei5lcXVhdGlvbnMubGVuZ3RoO0chPT1MO0crKyl7dmFyIFA9ei5lcXVhdGlvbnNbR107YS5hZGRFcXVhdGlvbihQKX19YS5zb2x2ZShBLHRoaXMpLGMmJihnLnNvbHZlPXBlcmZvcm1hbmNlLm5vdygpLWUpLGEucmVtb3ZlQWxsRXF1YXRpb25zKCk7dmFyIE89TWF0aC5wb3c7Zm9yKEk9MDtJIT09bztJKyspaWYoKGo9c1tJXSkudHlwZSZRKXt2YXIgVj1PKDEtai5saW5lYXJEYW1waW5nLEEpLFc9ai52ZWxvY2l0eTtXLm11bHQoVixXKTt2YXIgSz1qLmFuZ3VsYXJWZWxvY2l0eTtpZihLKXt2YXIgWD1PKDEtai5hbmd1bGFyRGFtcGluZyxBKTtLLm11bHQoWCxLKX19Zm9yKHRoaXMuZGlzcGF0Y2hFdmVudChwKSxJPTA7SSE9PW87SSsrKShqPXNbSV0pLnByZVN0ZXAmJmoucHJlU3RlcC5jYWxsKGopO2MmJihlPXBlcmZvcm1hbmNlLm5vdygpKTt2YXIgWj1OLF89VSxxPXRoaXMuc3RlcG51bWJlciwkPUUuRFlOQU1JQ3xFLktJTkVNQVRJQyxBQT1xJSh0aGlzLnF1YXROb3JtYWxpemVTa2lwKzEpPT0wLGVBPXRoaXMucXVhdE5vcm1hbGl6ZUZhc3QsdEE9LjUqQTtmb3Iobi50eXBlcy5QTEFORSxuLnR5cGVzLkNPTlZFWFBPTFlIRURST04sST0wO0khPT1vO0krKyl7dmFyIG5BPXNbSV0saUE9bkEuZm9yY2UsckE9bkEudG9ycXVlO2lmKG5BLnR5cGUmJCYmbkEuc2xlZXBTdGF0ZSE9PUUuU0xFRVBJTkcpe3ZhciBvQT1uQS52ZWxvY2l0eSxzQT1uQS5hbmd1bGFyVmVsb2NpdHksYUE9bkEucG9zaXRpb24sQkE9bkEucXVhdGVybmlvbixjQT1uQS5pbnZNYXNzLGdBPW5BLmludkluZXJ0aWFXb3JsZDtvQS54Kz1pQS54KmNBKkEsb0EueSs9aUEueSpjQSpBLG9BLnorPWlBLnoqY0EqQSxuQS5hbmd1bGFyVmVsb2NpdHkmJihnQS52bXVsdChyQSx5KSx5Lm11bHQoQSx5KSx5LnZhZGQoc0Esc0EpKSxhQS54Kz1vQS54KkEsYUEueSs9b0EueSpBLGFBLnorPW9BLnoqQSxuQS5hbmd1bGFyVmVsb2NpdHkmJihaLnNldChzQS54LHNBLnksc0EueiwwKSxaLm11bHQoQkEsXyksQkEueCs9dEEqXy54LEJBLnkrPXRBKl8ueSxCQS56Kz10QSpfLnosQkEudys9dEEqXy53LEFBJiYoZUE/QkEubm9ybWFsaXplRmFzdCgpOkJBLm5vcm1hbGl6ZSgpKSksbkEuYWFiYiYmKG5BLmFhYmJOZWVkc1VwZGF0ZT0hMCksbkEudXBkYXRlSW5lcnRpYVdvcmxkJiZuQS51cGRhdGVJbmVydGlhV29ybGQoKX19Zm9yKHRoaXMuY2xlYXJGb3JjZXMoKSx0aGlzLmJyb2FkcGhhc2UuZGlydHk9ITAsYyYmKGcuaW50ZWdyYXRlPXBlcmZvcm1hbmNlLm5vdygpLWUpLHRoaXMudGltZSs9QSx0aGlzLnN0ZXBudW1iZXIrPTEsdGhpcy5kaXNwYXRjaEV2ZW50KGQpLEk9MDtJIT09bztJKyspe3ZhciBFQT0oaj1zW0ldKS5wb3N0U3RlcDtFQSYmRUEuY2FsbChqKX1pZih0aGlzLmFsbG93U2xlZXApZm9yKEk9MDtJIT09bztJKyspc1tJXS5zbGVlcFRpY2sodGhpcy50aW1lKX0sdC5wcm90b3R5cGUuY2xlYXJGb3JjZXM9ZnVuY3Rpb24oKXtmb3IodmFyIEE9dGhpcy5ib2RpZXMsZT1BLmxlbmd0aCx0PTA7dCE9PWU7dCsrKXt2YXIgbj1BW3RdO24uZm9yY2Usbi50b3JxdWUsbi5mb3JjZS5zZXQoMCwwLDApLG4udG9ycXVlLnNldCgwLDAsMCl9fX0seyIuLi9jb2xsaXNpb24vQUFCQiI6MywiLi4vY29sbGlzaW9uL0FycmF5Q29sbGlzaW9uTWF0cml4Ijo0LCIuLi9jb2xsaXNpb24vTmFpdmVCcm9hZHBoYXNlIjo3LCIuLi9jb2xsaXNpb24vUmF5Ijo5LCIuLi9jb2xsaXNpb24vUmF5Y2FzdFJlc3VsdCI6MTAsIi4uL2VxdWF0aW9ucy9Db250YWN0RXF1YXRpb24iOjE5LCIuLi9lcXVhdGlvbnMvRnJpY3Rpb25FcXVhdGlvbiI6MjEsIi4uL21hdGVyaWFsL0NvbnRhY3RNYXRlcmlhbCI6MjQsIi4uL21hdGVyaWFsL01hdGVyaWFsIjoyNSwiLi4vbWF0aC9RdWF0ZXJuaW9uIjoyOCwiLi4vbWF0aC9WZWMzIjozMCwiLi4vb2JqZWN0cy9Cb2R5IjozMSwiLi4vc2hhcGVzL1NoYXBlIjo0MywiLi4vc29sdmVyL0dTU29sdmVyIjo0NiwiLi4vdXRpbHMvRXZlbnRUYXJnZXQiOjQ5LCIuLi91dGlscy9UdXBsZURpY3Rpb25hcnkiOjUyLCIuLi91dGlscy9WZWMzUG9vbCI6NTQsIi4vTmFycm93cGhhc2UiOjU1fV19LHt9LFsyXSkoMil9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLGUuZGVmYXVsdD0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFFQUFBQUJBQ0FZQUFBQ3FhWEhlQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzRUFBQTdCQWJpUmErMEFBQU44U1VSQlZIaGU3WnEvYXhSQkZNZm4vRkdKR0V1eGlDQVIwVDlDMGNKYXdkTkNTNk5pSVZxWVNnaFlhUkVyTVdxcGhTWVFhd1dEL2hIK0FLTWtoZHBZS0JhQ0lPdDdNKzl0NXZabTltWm4zdTJkM0h6Z1pXYnV5TDQzMzNtN08vdjJWQ2FUeVdReUdTbUtpbjBIRzJzNjFFcFJMTTZiemlWcVBVajdqVVpjZ09JRDlaajNZSkFMZDU0ck5mZllmT1JnWklKSU9zYVVWMzBDTUgvQTFreVhjWWpTdWhDaUFuZ25YK1VkdFJhZFU5UXh0Q2JFYUFSZ3hrQUlLUWYxNlYvSEw3SWZlbFRTbGhCaUFrUk5IdmxLYlpXZllDQnJSWWg5WUJ1bUs4TVdhbE80UUswc3U4Q21RSU5WWThRNm1NNDJLU1F5SUQ3OWZhdnZvWE9NT29LbmhFUUd4RTArbmxscVJVZ1Y0Qm0xYmZLSVdoRlNCZWp5MXJjeDhla3ZTdklwY1BFc2RkcEJOUDJSRkFGRXI4WjFmTjdNRnRIMFIxS3Vwc1g2SzZXbTk5S29DV053OVdlU1RvR295Y2NqbnY1SXJBQTYvVHNIZFgrb0REUDlrZFNVS3E4RHdYdUJNVXAvSlBVdVVBYUYyWUMyOFlVK2tBV2ZBWERQZ1lLekxZQWxFeXZBTkJnSG9qN2VnODRLOWlEUzQzNGhpci9xTjNXRHVMdE1IZk1NME1VTyt3R3VnWlV4eE5JMHJYQVZkQ0NJRlV3UDloTWNicFRLdlVKZyt1UEVyOStuQVhEN3ZGSTNUdExBNHVoTnBkNjhwWUdoOFdrUytnODlLdnNtWHNVVzR2UUpwWmJtYU9DaHV0c0w5YlAyVGFtWkt6UXdCRDgyRHhLZ25MaHZGVUtvUE5QM3NIQzVkN1dSMEltN3FQaGFBanRqdW01OEF1QXova1BzcEFUandsY2RQbkpZcWRlM2FDQ0FRM1RuWEdzRjBMYzJSOTFPaENsd0Rpay9WQitBSllSenJvUHZBb2ZJSk1BUVlPTGFiQ1I5TUM0L0RzSnZneHprSGoxcXhrNHdEQWJMWEhXd2orMTYxSndkWUlFVFo1cnZBM2FEY2FDRDRHQzI2bEU0TTJCNC9BTjZOQmoyRXlGYzJrN1FKd1FIbE1vMnNEcXhCZnlrQ2NCd2tGSVRkMkVMSWVoSFJvQTJFUmI0L3hOQW1Dd0F0Uk5MRm9EYWlTVUxRTzNFa2dXZ2RtTHhDZkFTLzJCeHMzdFZqMFhCT2dDWHY0WllTZTRyc2Jud0NZRDFOSHg2bjExK1lZSkVTd0VMbmZiRUFUeStMbEp3SlZsSzdJb2ZMSXM1aXlHSTl3c0haWDNRK3hMRVVmVjFySUxQWjFtR1E1cjRRUEFOMHY1ek5EQUVGVWFiWEFQS0ZlT01lUEFVUjI0OHExQW5PTDc2NnZNeENNNHNhL0o4RE5FZlU3bm9lVk1ESzFaOGVySTVKc01YS0NtVXgxcWNOejZLVldQMmQyUWp3MzVMTkt4Z3FxL0YyRWJ4RTUyUndtS25abFltazhsa01wbk1wS1BVUDVWejJxWUMrTXlMQUFBQUFFbEZUa1N1UW1DQyJ9LGZ1bmN0aW9uKEEsZSx0KXsoZnVuY3Rpb24oZSl7Y29uc3Qgbj10KDQwOSksaT10KDQxMSkscj10KDY3KSxvPXQoOTkpLHM9QT0+e3RyeXtyZXR1cm4gbmV3IFVSTChBLGxvY2F0aW9uLmhyZWYpfWNhdGNoKEEpe3JldHVybiBudWxsfX0sYT1BPT5uZXcgUHJvbWlzZSh0PT57Y29uc3Qgcj1bXSxhPU9iamVjdC5hc3NpZ24oe30sZS5TY3JhdGNofHx7fSxuKTthLmV4dGVuc2lvbnM9e3Vuc2FuZGJveGVkOiEwLGlzUGVuZ3Vpbk1vZDohMCxyZWdpc3RlcjpBPT57ci5wdXNoKEEpLHQocil9fSxhLnZtPUEsYS5yZW5kZXJlcj1BLnJ1bnRpbWUucmVuZGVyZXIsYS5jYW5GZXRjaD1hc3luYyBlPT57Y29uc3QgdD1zKGUpO3JldHVybiEhdCYmKCJibG9iOiI9PT10LnByb3RvY29sfHwiZGF0YToiPT09dC5wcm90b2NvbHx8QS5zZWN1cml0eU1hbmFnZXIuY2FuRmV0Y2godC5ocmVmKSl9LGEuY2FuT3BlbldpbmRvdz1hc3luYyBlPT57Y29uc3QgdD1zKGUpO3JldHVybiEhdCYmKCJqYXZhc2NyaXB0OiIhPT10LnByb3RvY29sJiZBLnNlY3VyaXR5TWFuYWdlci5jYW5PcGVuV2luZG93KHQuaHJlZikpfSxhLmNhblJlZGlyZWN0PWFzeW5jIGU9Pntjb25zdCB0PXMoZSk7cmV0dXJuISF0JiYoImphdmFzY3JpcHQ6IiE9PXQucHJvdG9jb2wmJkEuc2VjdXJpdHlNYW5hZ2VyLmNhblJlZGlyZWN0KHQuaHJlZikpfSxhLmZldGNoPWFzeW5jKEEsZSk9Pntjb25zdCB0PUEgaW5zdGFuY2VvZiBSZXF1ZXN0P0EudXJsOkE7aWYoIWF3YWl0IGEuY2FuRmV0Y2godCkpdGhyb3cgbmV3IEVycm9yKCJQZXJtaXNzaW9uIHRvIGZldGNoICIuY29uY2F0KHQsIiByZWplY3RlZC4iKSk7cmV0dXJuIGZldGNoKEEsZSl9LGEub3BlbldpbmRvdz1hc3luYyhBLGUpPT57aWYoIWF3YWl0IGEuY2FuT3BlbldpbmRvdyhBKSl0aHJvdyBuZXcgRXJyb3IoIlBlcm1pc3Npb24gdG8gb3BlbiB0YWIgIi5jb25jYXQoQSwiIHJlamVjdGVkLiIpKTtyZXR1cm4gd2luZG93Lm9wZW4oQSwiX2JsYW5rIixlKX0sYS5yZWRpcmVjdD1hc3luYyBBPT57aWYoIWF3YWl0IGEuY2FuUmVkaXJlY3QoQSkpdGhyb3cgbmV3IEVycm9yKCJQZXJtaXNzaW9uIHRvIHJlZGlyZWN0IHRvICIuY29uY2F0KEEsIiByZWplY3RlZC4iKSk7bG9jYXRpb24uaHJlZj1BfSxhLmNhblJlY29yZEF1ZGlvPWFzeW5jKCk9PkEuc2VjdXJpdHlNYW5hZ2VyLmNhblJlY29yZEF1ZGlvKCksYS5jYW5SZWNvcmRWaWRlbz1hc3luYygpPT5BLnNlY3VyaXR5TWFuYWdlci5jYW5SZWNvcmRWaWRlbygpLGEuY2FuUmVhZENsaXBib2FyZD1hc3luYygpPT5BLnNlY3VyaXR5TWFuYWdlci5jYW5SZWFkQ2xpcGJvYXJkKCksYS5jYW5Ob3RpZnk9YXN5bmMoKT0+QS5zZWN1cml0eU1hbmFnZXIuY2FuTm90aWZ5KCksYS5jYW5HZW9sb2NhdGU9YXN5bmMoKT0+QS5zZWN1cml0eU1hbmFnZXIuY2FuR2VvbG9jYXRlKCksYS5jYW5FbWJlZD1hc3luYyBlPT57Y29uc3QgdD1zKGUpO3JldHVybiEhdCYmQS5zZWN1cml0eU1hbmFnZXIuY2FuRW1iZWQodC5ocmVmKX0sYS5jYW5VbnNhbmRib3g9YXN5bmMoKT0+QS5zZWN1cml0eU1hbmFnZXIuY2FuVW5zYW5kYm94KCksYS5jYW5TY3JlZW5zaG90Q2FtZXJhPWFzeW5jKCk9PkEuc2VjdXJpdHlNYW5hZ2VyLmNhblNjcmVlbnNob3RDYW1lcmEoKSxhLmNhbkRvd25sb2FkPWFzeW5jKGUsdCk9Pntjb25zdCBuPXMoZSk7cmV0dXJuISFuJiYoImphdmFzY3JpcHQ6IiE9PW4ucHJvdG9jb2wmJkEuc2VjdXJpdHlNYW5hZ2VyLmNhbkRvd25sb2FkKGUsdCkpfSxhLmRvd25sb2FkPWFzeW5jKEEsZSk9PntpZighYXdhaXQgYS5jYW5Eb3dubG9hZChBLGUpKXRocm93IG5ldyBFcnJvcigiUGVybWlzc2lvbiB0byBkb3dubG9hZCAiLmNvbmNhdChlLCIgcmVqZWN0ZWQuIikpO2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO3QuaHJlZj1BLHQuZG93bmxvYWQ9ZSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpLHQuY2xpY2soKSx0LnJlbW92ZSgpfSxhLnRyYW5zbGF0ZT1vKEEpLGUuU2NyYXRjaD1hLGUuU2NyYXRjaEV4dGVuc2lvbnM9aShhKSxBLmVtaXQoIkNSRUFURV9VTlNBTkRCT1hFRF9FWFRFTlNJT05fQVBJIixhKX0pLEI9bmV3IHIoKEEsdCk9Pm5ldyBQcm9taXNlKChlLG4pPT57YSh0KS50aGVuKGUpO2NvbnN0IGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7aS5vbmVycm9yPSgpPT57bihuZXcgRXJyb3IoIkVycm9yIGluIHVuc2FuZGJveGVkIHNjcmlwdCAiLmNvbmNhdChBLCIuIENoZWNrIHRoZSBjb25zb2xlIGZvciBtb3JlIGluZm9ybWF0aW9uLiIpKSl9LGkuc3JjPUEsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpKX0pLnRoZW4oQT0+KGUuU2NyYXRjaC5leHRlbnNpb25zLnJlZ2lzdGVyPSgpPT57dGhyb3cgbmV3IEVycm9yKCJUb28gbGF0ZSB0byByZWdpc3RlciBuZXcgZXh0ZW5zaW9ucy4iKX0sQSkpLDEpO0EuZXhwb3J0cz17c2V0dXBVbnNhbmRib3hlZEV4dGVuc2lvbkFQSTphLGxvYWQ6KEEsZSk9PkIuZG8oQSxlKX19KS5jYWxsKHRoaXMsdCgxNSkpfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj17QXJndW1lbnRUeXBlOnQoMyksQXJndW1lbnRBbGlnbm1lbnQ6dCg2MyksQmxvY2tUeXBlOnQoMSksQmxvY2tTaGFwZTp0KDEwKSxOb3RjaFNoYXBlOnQoNDEwKSxUYXJnZXRUeXBlOnQoMTMpLENhc3Q6dCgyKSxDbG9uZTp0KDcpLENvbG9yOnQoOCl9O0EuZXhwb3J0cz1ufSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz17U1dJVENIOiJzd2l0Y2hDYXNlIixIRVhBR09OOiJoZXhhZ29uIixST1VORDoicm91bmQiLFNRVUFSRToic3F1YXJlIixMRUFGOiJsZWFmIixQTFVTOiJwbHVzIixPQ1RBR09OQUw6Im9jdGFnb25hbCIsQlVNUEVEOiJidW1wZWQiLElOREVOVEVEOiJpbmRlbnRlZCIsU0NSQVBQRUQ6InNjcmFwcGVkIixBUlJPVzoiYXJyb3ciLFRJQ0tFVDoidGlja2V0IixKSUdTQVc6ImppZ3NhdyIsSU5WRVJURUQ6ImludmVydGVkIixQSU5DRVI6InBpbmNlciJ9fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDMpLGk9dCgxKSx7YXJndW1lbnRJbmRleFRvSWQ6cixnZW5lcmF0ZUV4dGVuc2lvbklkOm99PXQoMTAwKSxzPUE9PntpZigiIj09PUF8fCIgIj09PUF8fCJ3Ij09PUEpcmV0dXJue3R5cGU6aS5DT01NQU5ELGFzeW5jOiJ3Ij09PUF9O2lmKCJyIj09PUF8fCJSIj09PUEpcmV0dXJue3R5cGU6aS5SRVBPUlRFUixhc3luYzoiUiI9PT1BfTtpZigiYiI9PT1BKXJldHVybnt0eXBlOmkuQk9PTEVBTixhc3luYzohMX07aWYoImgiPT09QSlyZXR1cm57dHlwZTppLkhBVCxhc3luYzohMX07dGhyb3cgbmV3IEVycm9yKCJVbmtub3duIFNjcmF0Y2hYIGJsb2NrIHR5cGU6ICIuY29uY2F0KEEpKX0sYT0oQSxlKT0+e2NvbnN0IHQ9e30saT0ic3RyaW5nIj09dHlwZW9mKHI9ZSl8fCJudW1iZXIiPT10eXBlb2Ygcnx8ImJvb2xlYW4iPT10eXBlb2Ygcjt2YXIgcjtpZihpJiYodC5kZWZhdWx0VmFsdWU9ZSksInMiPT09QSl0LnR5cGU9bi5TVFJJTkcsaXx8KHQuZGVmYXVsdFZhbHVlPSIiKTtlbHNlIGlmKCJuIj09PUEpdC50eXBlPW4uTlVNQkVSLGl8fCh0LmRlZmF1bHRWYWx1ZT0wKTtlbHNle2lmKCJtIiE9PUFbMF0pdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIFNjcmF0Y2hYIGFyZ3VtZW50IHR5cGU6ICIuY29uY2F0KEEpKTt7dC50eXBlPW4uU1RSSU5HO2NvbnN0IGU9QS5zcGxpdCgvXC58Oi8pWzFdO3QubWVudT1lfX1yZXR1cm4gdH0sQj0oQSxlLHQpPT5uPT57Y29uc3QgaT1bXTtmb3IobGV0IEE9MDtBPGU7QSsrKWkucHVzaChuW3IoQSldKTtyZXR1cm4gdD9uZXcgUHJvbWlzZShlPT57QSguLi5pLGUpfSk6QSguLi5pKX0sYz1uZXcgTWFwO0EuZXhwb3J0cz1BPT4oe3JlZ2lzdGVyOihlLHQsbik9Pntjb25zdCBpPSgoQSxlLHQpPT57Y29uc3Qgbj17aWQ6byhBKSxuYW1lOmUuZGlzcGxheU5hbWV8fEEsYmxvY2tzOltdLGNvbG9yMToiIzRhNGE1ZSIsY29sb3IyOiIjMzEzMjNmIixjb2xvcjM6IiMxOTFhMjEifSxpPXtnZXRJbmZvOigpPT5uLF9nZXRTdGF0dXM6dC5fZ2V0U3RhdHVzfTtlLnVybCYmKG4uZG9jc1VSST1lLnVybCk7Zm9yKGNvbnN0IEEgb2YgZS5ibG9ja3Mpe2lmKDE9PT1BLmxlbmd0aCl7bi5ibG9ja3MucHVzaCgiLS0tIik7Y29udGludWV9Y29uc3QgZT1BWzBdLG89QVsxXSxjPUFbMl0sZz1BLnNsaWNlKDMpO2xldCBFPSIiO2NvbnN0IFE9W10sdT1vLnNwbGl0KC8lKFtcdy46XSspL2cpO2ZvcihsZXQgQT0wO0E8dS5sZW5ndGg7QSsrKXtjb25zdCBlPXVbQV07aWYoQSUyPT0xKXthKGUpO2NvbnN0IHQ9TWF0aC5mbG9vcihBLzIpLnRvU3RyaW5nKCksbj1nW3RdLGk9cih0KTtRW2ldPWEoZSxuKSxFKz0iWyIuY29uY2F0KGksIl0iKX1lbHNlIEUrPWV9Y29uc3QgbD1zKGUpLGg9e29wY29kZTpjLGJsb2NrVHlwZTpsLnR5cGUsdGV4dDpFLGFyZ3VtZW50czpRfTtuLmJsb2Nrcy5wdXNoKGgpO2NvbnN0IHc9dFtjXSxDPVEubGVuZ3RoO2lbY109Qih3LEMsbC5hc3luYyl9Y29uc3QgYz1lLm1lbnVzO2lmKGMpe2NvbnN0IEE9e307Zm9yKGNvbnN0IGUgb2YgT2JqZWN0LmtleXMoYyl8fHt9KXtjb25zdCB0PXtpdGVtczpjW2VdfTtBW2VdPXR9bi5tZW51cz1BfXJldHVybiBpfSkoZSx0LG4pO2Muc2V0KGUsaSksQS5leHRlbnNpb25zLnJlZ2lzdGVyKGkpfSxnZXRTdGF0dXM6QT0+e2NvbnN0IGU9Yy5nZXQoQSk7cmV0dXJuIGU/ZS5fZ2V0U3RhdHVzKCk6e3N0YXR1czowLG1zZzoiZG9lcyBub3QgZXhpc3QifX19KX0sZnVuY3Rpb24oQSxlLHQpe0EuZXhwb3J0cz1mdW5jdGlvbigpe3JldHVybiB0KDEwMSkoJyFmdW5jdGlvbihlKXt2YXIgbj17fTtmdW5jdGlvbiB0KHIpe2lmKG5bcl0pcmV0dXJuIG5bcl0uZXhwb3J0czt2YXIgaT1uW3JdPXtpOnIsbDohMSxleHBvcnRzOnt9fTtyZXR1cm4gZVtyXS5jYWxsKGkuZXhwb3J0cyxpLGkuZXhwb3J0cyx0KSxpLmw9ITAsaS5leHBvcnRzfXQubT1lLHQuYz1uLHQuZD1mdW5jdGlvbihlLG4scil7dC5vKGUsbil8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLG4se2VudW1lcmFibGU6ITAsZ2V0OnJ9KX0sdC5yPWZ1bmN0aW9uKGUpeyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LHQudD1mdW5jdGlvbihlLG4pe2lmKDEmbiYmKGU9dChlKSksOCZuKXJldHVybiBlO2lmKDQmbiYmIm9iamVjdCI9PXR5cGVvZiBlJiZlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7dmFyIHI9T2JqZWN0LmNyZWF0ZShudWxsKTtpZih0LnIociksT2JqZWN0LmRlZmluZVByb3BlcnR5KHIsImRlZmF1bHQiLHtlbnVtZXJhYmxlOiEwLHZhbHVlOmV9KSwyJm4mJiJzdHJpbmciIT10eXBlb2YgZSlmb3IodmFyIGkgaW4gZSl0LmQocixpLGZ1bmN0aW9uKG4pe3JldHVybiBlW25dfS5iaW5kKG51bGwsaSkpO3JldHVybiByfSx0Lm49ZnVuY3Rpb24oZSl7dmFyIG49ZSYmZS5fX2VzTW9kdWxlP2Z1bmN0aW9uKCl7cmV0dXJuIGUuZGVmYXVsdH06ZnVuY3Rpb24oKXtyZXR1cm4gZX07cmV0dXJuIHQuZChuLCJhIixuKSxufSx0Lm89ZnVuY3Rpb24oZSxuKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbil9LHQucD0iIix0KHQucz0xMCl9KFtmdW5jdGlvbihlLG4sdCl7ZnVuY3Rpb24gcigpe310KDI1KS5taXhpbihyKSxyLnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihlLG4sdCl7dGhpcy5lbWl0KCJpdGVtIixlLG4sdCl9LHIucHJvdG90eXBlLmVuZD1mdW5jdGlvbigpe3RoaXMuZW1pdCgiZW5kIiksdGhpcy5yZW1vdmVBbGxMaXN0ZW5lcnMoKX0sci5wcm90b3R5cGUucGlwZT1mdW5jdGlvbihlKXt2YXIgbj10aGlzO2Z1bmN0aW9uIHQoKXtlLndyaXRlLmFwcGx5KGUsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKSl9ZnVuY3Rpb24gcigpeyFlLl9pc1N0ZGlvJiZlLmVuZCgpfXJldHVybiBuLmVtaXQoInVucGlwZSIsZSksZS5lbWl0KCJwaXBlIixuKSxuLm9uKCJpdGVtIix0KSxuLm9uKCJlbmQiLHIpLG4ud2hlbigidW5waXBlIiwoZnVuY3Rpb24oaSl7dmFyIGE9aT09PWV8fHZvaWQgMD09PWk7cmV0dXJuIGEmJihuLnJlbW92ZUxpc3RlbmVyKCJpdGVtIix0KSxuLnJlbW92ZUxpc3RlbmVyKCJlbmQiLHIpLGUuZW1pdCgidW5waXBlIikpLGF9KSksZX0sci5wcm90b3R5cGUudW5waXBlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVtaXQoInVucGlwZSIsZSksdGhpc30sci5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcihbIldhcm5pbmc6IC5mb3JtYXQoKSBpcyBkZXByZWNhdGVkIGluIE1pbmlsb2cgdjIhIFVzZSAucGlwZSgpIGluc3RlYWQuIEZvciBleGFtcGxlOiIsInZhciBNaW5pbG9nID0gcmVxdWlyZShcJ21pbmlsb2dcJyk7IiwiTWluaWxvZyIsIiAgLnBpcGUoTWluaWxvZy5iYWNrZW5kcy5jb25zb2xlLmZvcm1hdENsZWFuKSIsIiAgLnBpcGUoTWluaWxvZy5iYWNrZW5kcy5jb25zb2xlKTsiXS5qb2luKCJcXG4iKSl9LHIubWl4aW49ZnVuY3Rpb24oZSl7dmFyIG4sdD1yLnByb3RvdHlwZTtmb3IobiBpbiB0KXQuaGFzT3duUHJvcGVydHkobikmJihlLnByb3RvdHlwZVtuXT10W25dKX0sZS5leHBvcnRzPXJ9LGZ1bmN0aW9uKGUsbix0KXtjb25zdCByPXQoMjMpO3IuZW5hYmxlKCksZS5leHBvcnRzPXIoInZtIil9LGZ1bmN0aW9uKGUsbil7ZS5leHBvcnRzPXtBTkdMRToiYW5nbGUiLEJPT0xFQU46IkJvb2xlYW4iLENPTE9SOiJjb2xvciIsTlVNQkVSOiJudW1iZXIiLFNUUklORzoic3RyaW5nIixNQVRSSVg6Im1hdHJpeCIsTk9URToibm90ZSIsSU1BR0U6ImltYWdlIixQT0xZR09OOiJwb2x5Z29uIixDVVNUT006ImN1c3RvbSIsQ09TVFVNRToiY29zdHVtZSIsU09VTkQ6InNvdW5kIixWQVJJQUJMRToidmFyaWFibGUiLExJU1Q6Imxpc3QiLEJST0FEQ0FTVDoiYnJvYWRjYXN0IixTRVBFUkFUT1I6InNlcGVyYXRvciJ9fSxmdW5jdGlvbihlLG4pe2UuZXhwb3J0cz17Qk9PTEVBTjoiQm9vbGVhbiIsQlVUVE9OOiJidXR0b24iLExBQkVMOiJsYWJlbCIsQ09NTUFORDoiY29tbWFuZCIsQ09ORElUSU9OQUw6ImNvbmRpdGlvbmFsIixFVkVOVDoiZXZlbnQiLEhBVDoiaGF0IixMT09QOiJsb29wIixSRVBPUlRFUjoicmVwb3J0ZXIiLFhNTDoieG1sIn19LGZ1bmN0aW9uKGUsbil7Y2xhc3MgdHtzdGF0aWMgZ2V0IFJHQl9CTEFDSygpe3JldHVybntyOjAsZzowLGI6MH19c3RhdGljIGdldCBSR0JfV0hJVEUoKXtyZXR1cm57cjoyNTUsZzoyNTUsYjoyNTV9fXN0YXRpYyBkZWNpbWFsVG9IZXgoZSl7ZTwwJiYoZSs9MTY3NzcyMTYpO2xldCBuPU1hdGgucm91bmQoTnVtYmVyKGUpKS50b1N0cmluZygxNik7cmV0dXJuIG49IiMiLmNvbmNhdCgiMDAwMDAwIi5zdWJzdHIoMCw2LW4ubGVuZ3RoKSkuY29uY2F0KG4pLG59c3RhdGljIGRlY2ltYWxUb1JnYihlKXtjb25zdCBuPWU+PjI0JjI1NTtyZXR1cm57cjplPj4xNiYyNTUsZzplPj44JjI1NSxiOjI1NSZlLGE6bj4wP246MjU1fX1zdGF0aWMgaGV4VG9SZ2IoZSl7ZS5zdGFydHNXaXRoKCIjIikmJihlPWUuc3Vic3RyaW5nKDEpKSw4PT09ZS5sZW5ndGgmJihlPWUuc2xpY2UoMCw2KSk7Y29uc3Qgbj1wYXJzZUludChlLDE2KTtpZihpc05hTihuKSlyZXR1cm4gbnVsbDtpZig2PT09ZS5sZW5ndGgpcmV0dXJue3I6bj4+MTYmMjU1LGc6bj4+OCYyNTUsYjoyNTUmbn07aWYoMz09PWUubGVuZ3RoKXtjb25zdCBlPW4+PjgmMTUsdD1uPj40JjE1LHI9MTUmbjtyZXR1cm57cjplPDw0fGUsZzp0PDw0fHQsYjpyPDw0fHJ9fXJldHVybiBudWxsfXN0YXRpYyByZ2JUb0hleChlKXtyZXR1cm4gdC5kZWNpbWFsVG9IZXgodC5yZ2JUb0RlY2ltYWwoZSkpfXN0YXRpYyByZ2JUb0RlY2ltYWwoZSl7cmV0dXJuKGUucjw8MTYpKyhlLmc8PDgpK2UuYn1zdGF0aWMgaGV4VG9EZWNpbWFsKGUpe3JldHVybiB0LnJnYlRvRGVjaW1hbCh0LmhleFRvUmdiKGUpKX1zdGF0aWMgaHN2VG9SZ2IoZSl7bGV0IG49ZS5oJTM2MDtuPDAmJihuKz0zNjApO2NvbnN0IHQ9TWF0aC5tYXgoMCxNYXRoLm1pbihlLnMsMSkpLHI9TWF0aC5tYXgoMCxNYXRoLm1pbihlLnYsMSkpLGk9TWF0aC5mbG9vcihuLzYwKSxhPW4vNjAtaSxvPXIqKDEtdCkscz1yKigxLXQqYSksYz1yKigxLXQqKDEtYSkpO2xldCBsLHUsZDtzd2l0Y2goaSl7ZGVmYXVsdDpjYXNlIDA6bD1yLHU9YyxkPW87YnJlYWs7Y2FzZSAxOmw9cyx1PXIsZD1vO2JyZWFrO2Nhc2UgMjpsPW8sdT1yLGQ9YzticmVhaztjYXNlIDM6bD1vLHU9cyxkPXI7YnJlYWs7Y2FzZSA0Omw9Yyx1PW8sZD1yO2JyZWFrO2Nhc2UgNTpsPXIsdT1vLGQ9c31yZXR1cm57cjpNYXRoLmZsb29yKDI1NSpsKSxnOk1hdGguZmxvb3IoMjU1KnUpLGI6TWF0aC5mbG9vcigyNTUqZCl9fXN0YXRpYyByZ2JUb0hzdihlKXtjb25zdCBuPWUuci8yNTUsdD1lLmcvMjU1LHI9ZS5iLzI1NSxpPU1hdGgubWluKE1hdGgubWluKG4sdCksciksYT1NYXRoLm1heChNYXRoLm1heChuLHQpLHIpO2xldCBvPTAscz0wO2lmKGkhPT1hKXtvPTYwKigobj09PWk/Mzp0PT09aT81OjEpLShuPT09aT90LXI6dD09PWk/ci1uOm4tdCkvKGEtaSkpJTM2MCxzPShhLWkpL2F9cmV0dXJue2g6byxzOnMsdjphfX1zdGF0aWMgbWl4UmdiKGUsbix0KXtpZih0PD0wKXJldHVybiBlO2lmKHQ+PTEpcmV0dXJuIG47Y29uc3Qgcj0xLXQ7cmV0dXJue3I6ciplLnIrdCpuLnIsZzpyKmUuZyt0Km4uZyxiOnIqZS5iK3Qqbi5ifX19ZS5leHBvcnRzPXR9LGZ1bmN0aW9uKGUsbil7dmFyIHQ9e2JsYWNrOiIjMDAwIixyZWQ6IiNjMjM2MjEiLGdyZWVuOiIjMjViYzI2Iix5ZWxsb3c6IiNiYmJiMDAiLGJsdWU6IiM0OTJlZTEiLG1hZ2VudGE6IiNkMzM4ZDMiLGN5YW46IiMzM2JiYzgiLGdyYXk6IiM4MDgwODAiLHB1cnBsZToiIzcwOCJ9O2UuZXhwb3J0cz1mdW5jdGlvbihlLG4pe3JldHVybiBuPyJjb2xvcjogI2ZmZjsgYmFja2dyb3VuZDogIit0W2VdKyI7IjoiY29sb3I6ICIrdFtlXSsiOyJ9fSxmdW5jdGlvbihlLG4pe2UuZXhwb3J0cz17aXNXb3JrZXI6ITAsY2VudHJhbERpc3BhdGNoU2VydmljZTpzZWxmfX0sZnVuY3Rpb24oZSxuKXt2YXIgdD0ibG9uZyIscj0ic2hvcnQiLGk9Im51bWVyaWMiO2UuZXhwb3J0cz17bnVtYmVyOntkZWNpbWFsOntzdHlsZToiZGVjaW1hbCJ9LGludGVnZXI6e3N0eWxlOiJkZWNpbWFsIixtYXhpbXVtRnJhY3Rpb25EaWdpdHM6MH0sY3VycmVuY3k6e3N0eWxlOiJjdXJyZW5jeSIsY3VycmVuY3k6IlVTRCJ9LHBlcmNlbnQ6e3N0eWxlOiJwZXJjZW50In0sZGVmYXVsdDp7c3R5bGU6ImRlY2ltYWwifX0sZGF0ZTp7c2hvcnQ6e21vbnRoOmksZGF5OmkseWVhcjoiMi1kaWdpdCJ9LG1lZGl1bTp7bW9udGg6cixkYXk6aSx5ZWFyOml9LGxvbmc6e21vbnRoOnQsZGF5OmkseWVhcjppfSxmdWxsOnttb250aDp0LGRheTppLHllYXI6aSx3ZWVrZGF5OnR9LGRlZmF1bHQ6e21vbnRoOnIsZGF5OmkseWVhcjppfX0sdGltZTp7c2hvcnQ6e2hvdXI6aSxtaW51dGU6aX0sbWVkaXVtOntob3VyOmksbWludXRlOmksc2Vjb25kOml9LGxvbmc6e2hvdXI6aSxtaW51dGU6aSxzZWNvbmQ6aSx0aW1lWm9uZU5hbWU6cn0sZnVsbDp7aG91cjppLG1pbnV0ZTppLHNlY29uZDppLHRpbWVab25lTmFtZTpyfSxkZWZhdWx0Ontob3VyOmksbWludXRlOmksc2Vjb25kOml9fSxkdXJhdGlvbjp7ZGVmYXVsdDp7aG91cnM6e21pbmltdW1JbnRlZ2VyRGlnaXRzOjEsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjB9LG1pbnV0ZXM6e21pbmltdW1JbnRlZ2VyRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjB9LHNlY29uZHM6e21pbmltdW1JbnRlZ2VyRGlnaXRzOjIsbWF4aW11bUZyYWN0aW9uRGlnaXRzOjN9fX0scGFyc2VOdW1iZXJQYXR0ZXJuOmZ1bmN0aW9uKGUpe2lmKGUpe3ZhciBuPXt9LHQ9ZS5tYXRjaCgvXFxiW0EtWl17M31cXGIvaSkscj1lLnJlcGxhY2UoL1tewqRdL2csIiIpLmxlbmd0aDtpZighciYmdCYmKHI9MSkscj8obi5zdHlsZT0iY3VycmVuY3kiLG4uY3VycmVuY3lEaXNwbGF5PTE9PT1yPyJzeW1ib2wiOjI9PT1yPyJjb2RlIjoibmFtZSIsbi5jdXJyZW5jeT10P3RbMF0udG9VcHBlckNhc2UoKToiVVNEIik6ZS5pbmRleE9mKCIlIik+PTAmJihuLnN0eWxlPSJwZXJjZW50IiksIS9bQCMwXS8udGVzdChlKSlyZXR1cm4gbi5zdHlsZT9uOnZvaWQgMDtpZihuLnVzZUdyb3VwaW5nPWUuaW5kZXhPZigiLCIpPj0wLC9FXFwrP1tAIzBdKy9pLnRlc3QoZSl8fGUuaW5kZXhPZigiQCIpPj0wKXt2YXIgaT1lLnJlcGxhY2UoL0VcXCs/W0AjMF0rfFteQCMwXS9naSwiIik7bi5taW5pbXVtU2lnbmlmaWNhbnREaWdpdHM9TWF0aC5taW4oTWF0aC5tYXgoaS5yZXBsYWNlKC9bXkAwXS9nLCIiKS5sZW5ndGgsMSksMjEpLG4ubWF4aW11bVNpZ25pZmljYW50RGlnaXRzPU1hdGgubWluKE1hdGgubWF4KGkubGVuZ3RoLDEpLDIxKX1lbHNle2Zvcih2YXIgYT1lLnJlcGxhY2UoL1teIzAuXS9nLCIiKS5zcGxpdCgiLiIpLG89YVswXSxzPW8ubGVuZ3RoLTE7IjAiPT09b1tzXTspLS1zO24ubWluaW11bUludGVnZXJEaWdpdHM9TWF0aC5taW4oTWF0aC5tYXgoby5sZW5ndGgtMS1zLDEpLDIxKTt2YXIgYz1hWzFdfHwiIjtmb3Iocz0wOyIwIj09PWNbc107KSsrcztmb3Iobi5taW5pbXVtRnJhY3Rpb25EaWdpdHM9TWF0aC5taW4oTWF0aC5tYXgocywwKSwyMCk7IiMiPT09Y1tzXTspKytzO24ubWF4aW11bUZyYWN0aW9uRGlnaXRzPU1hdGgubWluKE1hdGgubWF4KHMsMCksMjApfXJldHVybiBufX0scGFyc2VEYXRlUGF0dGVybjpmdW5jdGlvbihlKXtpZihlKXtmb3IodmFyIG49e30sYT0wO2E8ZS5sZW5ndGg7KXtmb3IodmFyIG89ZVthXSxzPTE7ZVsrK2FdPT09bzspKytzO3N3aXRjaChvKXtjYXNlIkciOm4uZXJhPTU9PT1zPyJuYXJyb3ciOjQ9PT1zP3Q6cjticmVhaztjYXNlInkiOmNhc2UiWSI6bi55ZWFyPTI9PT1zPyIyLWRpZ2l0IjppO2JyZWFrO2Nhc2UiTSI6Y2FzZSJMIjpzPU1hdGgubWluKE1hdGgubWF4KHMtMSwwKSw0KSxuLm1vbnRoPVtpLCIyLWRpZ2l0IixyLHQsIm5hcnJvdyJdW3NdO2JyZWFrO2Nhc2UiRSI6Y2FzZSJlIjpjYXNlImMiOm4ud2Vla2RheT01PT09cz8ibmFycm93Ijo0PT09cz90OnI7YnJlYWs7Y2FzZSJkIjpjYXNlIkQiOm4uZGF5PTI9PT1zPyIyLWRpZ2l0IjppO2JyZWFrO2Nhc2UiaCI6Y2FzZSJLIjpuLmhvdXIxMj0hMCxuLmhvdXI9Mj09PXM/IjItZGlnaXQiOmk7YnJlYWs7Y2FzZSJIIjpjYXNlImsiOm4uaG91cjEyPSExLG4uaG91cj0yPT09cz8iMi1kaWdpdCI6aTticmVhaztjYXNlIm0iOm4ubWludXRlPTI9PT1zPyIyLWRpZ2l0IjppO2JyZWFrO2Nhc2UicyI6Y2FzZSJTIjpuLnNlY29uZD0yPT09cz8iMi1kaWdpdCI6aTticmVhaztjYXNlInoiOmNhc2UiWiI6Y2FzZSJ2IjpjYXNlIlYiOm4udGltZVpvbmVOYW1lPTE9PT1zP3I6dH19cmV0dXJuIE9iamVjdC5rZXlzKG4pLmxlbmd0aD9uOnZvaWQgMH19fX0sZnVuY3Rpb24oZSxuKXtlLmV4cG9ydHM9ZnVuY3Rpb24oZSxuKXtpZigic3RyaW5nIj09dHlwZW9mIGUmJm5bZV0pcmV0dXJuIGU7Zm9yKHZhciB0PVtdLmNvbmNhdChlfHxbXSkscj0wLGk9dC5sZW5ndGg7cjxpOysrcilmb3IodmFyIGE9dFtyXS5zcGxpdCgiLSIpO2EubGVuZ3RoOyl7dmFyIG89YS5qb2luKCItIik7aWYobltvXSlyZXR1cm4gbzthLnBvcCgpfX19LGZ1bmN0aW9uKGUsbix0KXsidXNlIHN0cmljdCI7dmFyIHI9Im9uZSIsaT0idHdvIixhPSJmZXciLG89Im1hbnkiLHM9Im90aGVyIixjPVtmdW5jdGlvbihlKXtyZXR1cm4gMT09PStlP3I6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDA8PW4mJm48PTE/cjpzfSxmdW5jdGlvbihlKXtyZXR1cm4gMD09PU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKXx8MT09PStlP3I6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDA9PT1uPyJ6ZXJvIjoxPT09bj9yOjI9PT1uP2k6Mzw9biUxMDAmJm4lMTAwPD0xMD9hOjExPD1uJTEwMCYmbiUxMDA8PTk5P286c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpLHQ9KGUrIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aDtyZXR1cm4gMT09PW4mJjA9PT10P3I6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIG4lMTA9PTEmJm4lMTAwIT0xMT9yOjI8PW4lMTAmJm4lMTA8PTQmJihuJTEwMDwxMnx8MTQ8biUxMDApP2E6biUxMD09MHx8NTw9biUxMCYmbiUxMDw9OXx8MTE8PW4lMTAwJiZuJTEwMDw9MTQ/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gbiUxMD09MSYmbiUxMDAhPTExJiZuJTEwMCE9NzEmJm4lMTAwIT05MT9yOm4lMTA9PTImJm4lMTAwIT0xMiYmbiUxMDAhPTcyJiZuJTEwMCE9OTI/aTooMzw9biUxMCYmbiUxMDw9NHx8biUxMD09OSkmJihuJTEwMDwxMHx8MTk8biUxMDApJiYobiUxMDA8NzB8fDc5PG4lMTAwKSYmKG4lMTAwPDkwfHw5OTxuJTEwMCk/YTowIT09biYmbiUxZTY9PTA/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj1NYXRoLmZsb29yKE1hdGguYWJzKCtlKSksdD0oZSsiLiIpLnNwbGl0KCIuIilbMV0ubGVuZ3RoLGk9KyhlKyIuIikuc3BsaXQoIi4iKVsxXTtyZXR1cm4gMD09PXQmJm4lMTA9PTEmJm4lMTAwIT0xMXx8aSUxMD09MSYmaSUxMDAhPTExP3I6MD09PXQmJjI8PW4lMTAmJm4lMTA8PTQmJihuJTEwMDwxMnx8MTQ8biUxMDApfHwyPD1pJTEwJiZpJTEwPD00JiYoaSUxMDA8MTJ8fDE0PGklMTAwKT9hOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKSx0PShlKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGg7cmV0dXJuIDE9PT1uJiYwPT09dD9yOjI8PW4mJm48PTQmJjA9PT10P2E6MCE9PXQ/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMD09PW4/Inplcm8iOjE9PT1uP3I6Mj09PW4/aTozPT09bj9hOjY9PT1uP286c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpLHQ9KygiIitlKS5yZXBsYWNlKC9eW14uXSouP3wwKyQvZywiIik7cmV0dXJuIDE9PT0rZXx8MCE9PXQmJigwPT09bnx8MT09PW4pP3I6c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpLHQ9KGUrIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aCxvPSsoZSsiLiIpLnNwbGl0KCIuIilbMV07cmV0dXJuIDA9PT10JiZuJTEwMD09MXx8byUxMDA9PTE/cjowPT09dCYmbiUxMDA9PTJ8fG8lMTAwPT0yP2k6MD09PXQmJjM8PW4lMTAwJiZuJTEwMDw9NHx8Mzw9byUxMDAmJm8lMTAwPD00P2E6c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpO3JldHVybiAwPT09bnx8MT09PW4/cjpzfSxmdW5jdGlvbihlKXt2YXIgbj1NYXRoLmZsb29yKE1hdGguYWJzKCtlKSksdD0oZSsiLiIpLnNwbGl0KCIuIilbMV0ubGVuZ3RoLGk9KyhlKyIuIikuc3BsaXQoIi4iKVsxXTtyZXR1cm4gMD09PXQmJigxPT09bnx8Mj09PW58fDM9PT1uKXx8MD09PXQmJm4lMTAhPTQmJm4lMTAhPTYmJm4lMTAhPTl8fDAhPT10JiZpJTEwIT00JiZpJTEwIT02JiZpJTEwIT05P3I6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDE9PT1uP3I6Mj09PW4/aTozPD1uJiZuPD02P2E6Nzw9biYmbjw9MTA/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMT09PW58fDExPT09bj9yOjI9PT1ufHwxMj09PW4/aTozPD1uJiZuPD0xMHx8MTM8PW4mJm48PTE5P2E6c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpLHQ9KGUrIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aDtyZXR1cm4gMD09PXQmJm4lMTA9PTE/cjowPT09dCYmbiUxMD09Mj9pOjAhPT10fHxuJTEwMCE9MCYmbiUxMDAhPTIwJiZuJTEwMCE9NDAmJm4lMTAwIT02MCYmbiUxMDAhPTgwPzAhPT10P286czphfSxmdW5jdGlvbihlKXt2YXIgbj1NYXRoLmZsb29yKE1hdGguYWJzKCtlKSksdD0oZSsiLiIpLnNwbGl0KCIuIilbMV0ubGVuZ3RoLGE9K2U7cmV0dXJuIDE9PT1uJiYwPT09dD9yOjI9PT1uJiYwPT09dD9pOjA9PT10JiYoYTwwfHwxMDxhKSYmYSUxMD09MD9vOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKSx0PSsoIiIrZSkucmVwbGFjZSgvXlteLl0qLj98MCskL2csIiIpO3JldHVybiAwPT09dCYmbiUxMD09MSYmbiUxMDAhPTExfHwwIT09dD9yOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPStlO3JldHVybiAxPT09bj9yOjI9PT1uP2k6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDA9PT1uPyJ6ZXJvIjoxPT09bj9yOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKSx0PStlO3JldHVybiAwPT09dD8iemVybyI6MCE9PW4mJjEhPT1ufHwwPT09dD9zOnJ9LGZ1bmN0aW9uKGUpe3ZhciBuPSsoZSsiLiIpLnNwbGl0KCIuIilbMV0sdD0rZTtyZXR1cm4gdCUxMD09MSYmKHQlMTAwPDExfHwxOTx0JTEwMCk/cjoyPD10JTEwJiZ0JTEwPD05JiYodCUxMDA8MTF8fDE5PHQlMTAwKT9hOjAhPT1uP286c30sZnVuY3Rpb24oZSl7dmFyIG49KGUrIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aCx0PSsoZSsiLiIpLnNwbGl0KCIuIilbMV0saT0rZTtyZXR1cm4gaSUxMD09MHx8MTE8PWklMTAwJiZpJTEwMDw9MTl8fDI9PT1uJiYxMTw9dCUxMDAmJnQlMTAwPD0xOT8iemVybyI6aSUxMD09MSYmaSUxMDAhPTExfHwyPT09biYmdCUxMD09MSYmdCUxMDAhPTExfHwyIT09biYmdCUxMD09MT9yOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKSx0PShlKyIuIikuc3BsaXQoIi4iKVsxXS5sZW5ndGgsaT0rKGUrIi4iKS5zcGxpdCgiLiIpWzFdO3JldHVybiAwPT09dCYmbiUxMD09MSYmbiUxMDAhPTExfHxpJTEwPT0xJiZpJTEwMCE9MTE/cjpzfSxmdW5jdGlvbihlKXt2YXIgbj1NYXRoLmZsb29yKE1hdGguYWJzKCtlKSksdD0oZSsiLiIpLnNwbGl0KCIuIilbMV0ubGVuZ3RoLGk9K2U7cmV0dXJuIDE9PT1uJiYwPT09dD9yOjAhPT10fHwwPT09aXx8MSE9PWkmJjE8PWklMTAwJiZpJTEwMDw9MTk/YTpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMT09PW4/cjowPT09bnx8Mjw9biUxMDAmJm4lMTAwPD0xMD9hOjExPD1uJTEwMCYmbiUxMDA8PTE5P286c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpLHQ9KGUrIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aDtyZXR1cm4gMT09PW4mJjA9PT10P3I6MD09PXQmJjI8PW4lMTAmJm4lMTA8PTQmJihuJTEwMDwxMnx8MTQ8biUxMDApP2E6MD09PXQmJjEhPT1uJiYwPD1uJTEwJiZuJTEwPD0xfHwwPT09dCYmNTw9biUxMCYmbiUxMDw9OXx8MD09PXQmJjEyPD1uJTEwMCYmbiUxMDA8PTE0P286c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpO3JldHVybiAwPD1uJiZuPD0xP3I6c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpLHQ9KGUrIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aDtyZXR1cm4gMD09PXQmJm4lMTA9PTEmJm4lMTAwIT0xMT9yOjA9PT10JiYyPD1uJTEwJiZuJTEwPD00JiYobiUxMDA8MTJ8fDE0PG4lMTAwKT9hOjA9PT10JiZuJTEwPT0wfHwwPT09dCYmNTw9biUxMCYmbiUxMDw9OXx8MD09PXQmJjExPD1uJTEwMCYmbiUxMDA8PTE0P286c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDA9PT1NYXRoLmZsb29yKE1hdGguYWJzKCtlKSl8fDE9PT1uP3I6Mjw9biYmbjw9MTA/YTpzfSxmdW5jdGlvbihlKXt2YXIgbj1NYXRoLmZsb29yKE1hdGguYWJzKCtlKSksdD0rKGUrIi4iKS5zcGxpdCgiLiIpWzFdLGk9K2U7cmV0dXJuIDA9PT1pfHwxPT09aXx8MD09PW4mJjE9PT10P3I6c30sZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5mbG9vcihNYXRoLmFicygrZSkpLHQ9KGUrIi4iKS5zcGxpdCgiLiIpWzFdLmxlbmd0aDtyZXR1cm4gMD09PXQmJm4lMTAwPT0xP3I6MD09PXQmJm4lMTAwPT0yP2k6MD09PXQmJjM8PW4lMTAwJiZuJTEwMDw9NHx8MCE9PXQ/YTpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMDw9biYmbjw9MXx8MTE8PW4mJm48PTk5P3I6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDE9PT1ufHw1PT09bnx8Nz09PW58fDg9PT1ufHw5PT09bnx8MTA9PT1uP3I6Mj09PW58fDM9PT1uP2k6ND09PW4/YTo2PT09bj9vOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKTtyZXR1cm4gbiUxMD09MXx8biUxMD09Mnx8biUxMD09NXx8biUxMD09N3x8biUxMD09OHx8biUxMDA9PTIwfHxuJTEwMD09NTB8fG4lMTAwPT03MHx8biUxMDA9PTgwP3I6biUxMD09M3x8biUxMD09NHx8biUxZTM9PTEwMHx8biUxZTM9PTIwMHx8biUxZTM9PTMwMHx8biUxZTM9PTQwMHx8biUxZTM9PTUwMHx8biUxZTM9PTYwMHx8biUxZTM9PTcwMHx8biUxZTM9PTgwMHx8biUxZTM9PTkwMD9hOjA9PT1ufHxuJTEwPT02fHxuJTEwMD09NDB8fG4lMTAwPT02MHx8biUxMDA9PTkwP286c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIG4lMTAhPTImJm4lMTAhPTN8fG4lMTAwPT0xMnx8biUxMDA9PTEzP3M6YX0sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDE9PT1ufHwzPT09bj9yOjI9PT1uP2k6ND09PW4/YTpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMD09PW58fDc9PT1ufHw4PT09bnx8OT09PW4/Inplcm8iOjE9PT1uP3I6Mj09PW4/aTozPT09bnx8ND09PW4/YTo1PT09bnx8Nj09PW4/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gbiUxMD09MSYmbiUxMDAhPTExP3I6biUxMD09MiYmbiUxMDAhPTEyP2k6biUxMD09MyYmbiUxMDAhPTEzP2E6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDE9PT1ufHwxMT09PW4/cjoyPT09bnx8MTI9PT1uP2k6Mz09PW58fDEzPT09bj9hOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPStlO3JldHVybiAxPT09bj9yOjI9PT1ufHwzPT09bj9pOjQ9PT1uP2E6Nj09PW4/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMT09PW58fDU9PT1uP3I6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDExPT09bnx8OD09PW58fDgwPT09bnx8ODAwPT09bj9vOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKTtyZXR1cm4gMT09PW4/cjowPT09bnx8Mjw9biUxMDAmJm4lMTAwPD0yMHx8biUxMDA9PTQwfHxuJTEwMD09NjB8fG4lMTAwPT04MD9vOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPStlO3JldHVybiBuJTEwPT02fHxuJTEwPT05fHxuJTEwPT0wJiYwIT09bj9vOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPU1hdGguZmxvb3IoTWF0aC5hYnMoK2UpKTtyZXR1cm4gbiUxMD09MSYmbiUxMDAhPTExP3I6biUxMD09MiYmbiUxMDAhPTEyP2k6biUxMCE9NyYmbiUxMCE9OHx8biUxMDA9PTE3fHxuJTEwMD09MTg/czpvfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMT09PW4/cjoyPT09bnx8Mz09PW4/aTo0PT09bj9hOnN9LGZ1bmN0aW9uKGUpe3ZhciBuPStlO3JldHVybiAxPD1uJiZuPD00P3I6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIDE9PT1ufHw1PT09bnx8Nzw9biYmbjw9OT9yOjI9PT1ufHwzPT09bj9pOjQ9PT1uP2E6Nj09PW4/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gMT09PW4/cjpuJTEwPT00JiZuJTEwMCE9MTQ/bzpzfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gbiUxMCE9MSYmbiUxMCE9Mnx8biUxMDA9PTExfHxuJTEwMD09MTI/czpyfSxmdW5jdGlvbihlKXt2YXIgbj0rZTtyZXR1cm4gbiUxMD09Nnx8biUxMD09OXx8MTA9PT1uP2E6c30sZnVuY3Rpb24oZSl7dmFyIG49K2U7cmV0dXJuIG4lMTA9PTMmJm4lMTAwIT0xMz9hOnN9XTtlLmV4cG9ydHM9e2FmOntjYXJkaW5hbDpjWzBdfSxhazp7Y2FyZGluYWw6Y1sxXX0sYW06e2NhcmRpbmFsOmNbMl19LGFyOntjYXJkaW5hbDpjWzNdfSxhcnM6e2NhcmRpbmFsOmNbM119LGFzOntjYXJkaW5hbDpjWzJdLG9yZGluYWw6Y1szNF19LGFzYTp7Y2FyZGluYWw6Y1swXX0sYXN0OntjYXJkaW5hbDpjWzRdfSxhejp7Y2FyZGluYWw6Y1swXSxvcmRpbmFsOmNbMzVdfSxiZTp7Y2FyZGluYWw6Y1s1XSxvcmRpbmFsOmNbMzZdfSxiZW06e2NhcmRpbmFsOmNbMF19LGJlejp7Y2FyZGluYWw6Y1swXX0sYmc6e2NhcmRpbmFsOmNbMF19LGJoOntjYXJkaW5hbDpjWzFdfSxibjp7Y2FyZGluYWw6Y1syXSxvcmRpbmFsOmNbMzRdfSxicjp7Y2FyZGluYWw6Y1s2XX0sYnJ4OntjYXJkaW5hbDpjWzBdfSxiczp7Y2FyZGluYWw6Y1s3XX0sY2E6e2NhcmRpbmFsOmNbNF0sb3JkaW5hbDpjWzM3XX0sY2U6e2NhcmRpbmFsOmNbMF19LGNnZzp7Y2FyZGluYWw6Y1swXX0sY2hyOntjYXJkaW5hbDpjWzBdfSxja2I6e2NhcmRpbmFsOmNbMF19LGNzOntjYXJkaW5hbDpjWzhdfSxjeTp7Y2FyZGluYWw6Y1s5XSxvcmRpbmFsOmNbMzhdfSxkYTp7Y2FyZGluYWw6Y1sxMF19LGRlOntjYXJkaW5hbDpjWzRdfSxkc2I6e2NhcmRpbmFsOmNbMTFdfSxkdjp7Y2FyZGluYWw6Y1swXX0sZWU6e2NhcmRpbmFsOmNbMF19LGVsOntjYXJkaW5hbDpjWzBdfSxlbjp7Y2FyZGluYWw6Y1s0XSxvcmRpbmFsOmNbMzldfSxlbzp7Y2FyZGluYWw6Y1swXX0sZXM6e2NhcmRpbmFsOmNbMF19LGV0OntjYXJkaW5hbDpjWzRdfSxldTp7Y2FyZGluYWw6Y1swXX0sZmE6e2NhcmRpbmFsOmNbMl19LGZmOntjYXJkaW5hbDpjWzEyXX0sZmk6e2NhcmRpbmFsOmNbNF19LGZpbDp7Y2FyZGluYWw6Y1sxM10sb3JkaW5hbDpjWzBdfSxmbzp7Y2FyZGluYWw6Y1swXX0sZnI6e2NhcmRpbmFsOmNbMTJdLG9yZGluYWw6Y1swXX0sZnVyOntjYXJkaW5hbDpjWzBdfSxmeTp7Y2FyZGluYWw6Y1s0XX0sZ2E6e2NhcmRpbmFsOmNbMTRdLG9yZGluYWw6Y1swXX0sZ2Q6e2NhcmRpbmFsOmNbMTVdLG9yZGluYWw6Y1s0MF19LGdsOntjYXJkaW5hbDpjWzRdfSxnc3c6e2NhcmRpbmFsOmNbMF19LGd1OntjYXJkaW5hbDpjWzJdLG9yZGluYWw6Y1s0MV19LGd1dzp7Y2FyZGluYWw6Y1sxXX0sZ3Y6e2NhcmRpbmFsOmNbMTZdfSxoYTp7Y2FyZGluYWw6Y1swXX0saGF3OntjYXJkaW5hbDpjWzBdfSxoZTp7Y2FyZGluYWw6Y1sxN119LGhpOntjYXJkaW5hbDpjWzJdLG9yZGluYWw6Y1s0MV19LGhyOntjYXJkaW5hbDpjWzddfSxoc2I6e2NhcmRpbmFsOmNbMTFdfSxodTp7Y2FyZGluYWw6Y1swXSxvcmRpbmFsOmNbNDJdfSxoeTp7Y2FyZGluYWw6Y1sxMl0sb3JkaW5hbDpjWzBdfSxpYTp7Y2FyZGluYWw6Y1s0XX0saW86e2NhcmRpbmFsOmNbNF19LGlzOntjYXJkaW5hbDpjWzE4XX0saXQ6e2NhcmRpbmFsOmNbNF0sb3JkaW5hbDpjWzQzXX0saXU6e2NhcmRpbmFsOmNbMTldfSxpdzp7Y2FyZGluYWw6Y1sxN119LGpnbzp7Y2FyZGluYWw6Y1swXX0samk6e2NhcmRpbmFsOmNbNF19LGptYzp7Y2FyZGluYWw6Y1swXX0sa2E6e2NhcmRpbmFsOmNbMF0sb3JkaW5hbDpjWzQ0XX0sa2FiOntjYXJkaW5hbDpjWzEyXX0sa2FqOntjYXJkaW5hbDpjWzBdfSxrY2c6e2NhcmRpbmFsOmNbMF19LGtrOntjYXJkaW5hbDpjWzBdLG9yZGluYWw6Y1s0NV19LGtrajp7Y2FyZGluYWw6Y1swXX0sa2w6e2NhcmRpbmFsOmNbMF19LGtuOntjYXJkaW5hbDpjWzJdfSxrczp7Y2FyZGluYWw6Y1swXX0sa3NiOntjYXJkaW5hbDpjWzBdfSxrc2g6e2NhcmRpbmFsOmNbMjBdfSxrdTp7Y2FyZGluYWw6Y1swXX0sa3c6e2NhcmRpbmFsOmNbMTldfSxreTp7Y2FyZGluYWw6Y1swXX0sbGFnOntjYXJkaW5hbDpjWzIxXX0sbGI6e2NhcmRpbmFsOmNbMF19LGxnOntjYXJkaW5hbDpjWzBdfSxsbjp7Y2FyZGluYWw6Y1sxXX0sbHQ6e2NhcmRpbmFsOmNbMjJdfSxsdjp7Y2FyZGluYWw6Y1syM119LG1hczp7Y2FyZGluYWw6Y1swXX0sbWc6e2NhcmRpbmFsOmNbMV19LG1nbzp7Y2FyZGluYWw6Y1swXX0sbWs6e2NhcmRpbmFsOmNbMjRdLG9yZGluYWw6Y1s0Nl19LG1sOntjYXJkaW5hbDpjWzBdfSxtbjp7Y2FyZGluYWw6Y1swXX0sbW86e2NhcmRpbmFsOmNbMjVdLG9yZGluYWw6Y1swXX0sbXI6e2NhcmRpbmFsOmNbMl0sb3JkaW5hbDpjWzQ3XX0sbXQ6e2NhcmRpbmFsOmNbMjZdfSxuYWg6e2NhcmRpbmFsOmNbMF19LG5hcTp7Y2FyZGluYWw6Y1sxOV19LG5iOntjYXJkaW5hbDpjWzBdfSxuZDp7Y2FyZGluYWw6Y1swXX0sbmU6e2NhcmRpbmFsOmNbMF0sb3JkaW5hbDpjWzQ4XX0sbmw6e2NhcmRpbmFsOmNbNF19LG5uOntjYXJkaW5hbDpjWzBdfSxubmg6e2NhcmRpbmFsOmNbMF19LG5vOntjYXJkaW5hbDpjWzBdfSxucjp7Y2FyZGluYWw6Y1swXX0sbnNvOntjYXJkaW5hbDpjWzFdfSxueTp7Y2FyZGluYWw6Y1swXX0sbnluOntjYXJkaW5hbDpjWzBdfSxvbTp7Y2FyZGluYWw6Y1swXX0sb3I6e2NhcmRpbmFsOmNbMF0sb3JkaW5hbDpjWzQ5XX0sb3M6e2NhcmRpbmFsOmNbMF19LHBhOntjYXJkaW5hbDpjWzFdfSxwYXA6e2NhcmRpbmFsOmNbMF19LHBsOntjYXJkaW5hbDpjWzI3XX0scHJnOntjYXJkaW5hbDpjWzIzXX0scHM6e2NhcmRpbmFsOmNbMF19LHB0OntjYXJkaW5hbDpjWzI4XX0sInB0LVBUIjp7Y2FyZGluYWw6Y1s0XX0scm06e2NhcmRpbmFsOmNbMF19LHJvOntjYXJkaW5hbDpjWzI1XSxvcmRpbmFsOmNbMF19LHJvZjp7Y2FyZGluYWw6Y1swXX0scnU6e2NhcmRpbmFsOmNbMjldfSxyd2s6e2NhcmRpbmFsOmNbMF19LHNhcTp7Y2FyZGluYWw6Y1swXX0sc2M6e2NhcmRpbmFsOmNbNF0sb3JkaW5hbDpjWzQzXX0sc2NuOntjYXJkaW5hbDpjWzRdLG9yZGluYWw6Y1s0M119LHNkOntjYXJkaW5hbDpjWzBdfSxzZGg6e2NhcmRpbmFsOmNbMF19LHNlOntjYXJkaW5hbDpjWzE5XX0sc2VoOntjYXJkaW5hbDpjWzBdfSxzaDp7Y2FyZGluYWw6Y1s3XX0sc2hpOntjYXJkaW5hbDpjWzMwXX0sc2k6e2NhcmRpbmFsOmNbMzFdfSxzazp7Y2FyZGluYWw6Y1s4XX0sc2w6e2NhcmRpbmFsOmNbMzJdfSxzbWE6e2NhcmRpbmFsOmNbMTldfSxzbWk6e2NhcmRpbmFsOmNbMTldfSxzbWo6e2NhcmRpbmFsOmNbMTldfSxzbW46e2NhcmRpbmFsOmNbMTldfSxzbXM6e2NhcmRpbmFsOmNbMTldfSxzbjp7Y2FyZGluYWw6Y1swXX0sc286e2NhcmRpbmFsOmNbMF19LHNxOntjYXJkaW5hbDpjWzBdLG9yZGluYWw6Y1s1MF19LHNyOntjYXJkaW5hbDpjWzddfSxzczp7Y2FyZGluYWw6Y1swXX0sc3N5OntjYXJkaW5hbDpjWzBdfSxzdDp7Y2FyZGluYWw6Y1swXX0sc3Y6e2NhcmRpbmFsOmNbNF0sb3JkaW5hbDpjWzUxXX0sc3c6e2NhcmRpbmFsOmNbNF19LHN5cjp7Y2FyZGluYWw6Y1swXX0sdGE6e2NhcmRpbmFsOmNbMF19LHRlOntjYXJkaW5hbDpjWzBdfSx0ZW86e2NhcmRpbmFsOmNbMF19LHRpOntjYXJkaW5hbDpjWzFdfSx0aWc6e2NhcmRpbmFsOmNbMF19LHRrOntjYXJkaW5hbDpjWzBdLG9yZGluYWw6Y1s1Ml19LHRsOntjYXJkaW5hbDpjWzEzXSxvcmRpbmFsOmNbMF19LHRuOntjYXJkaW5hbDpjWzBdfSx0cjp7Y2FyZGluYWw6Y1swXX0sdHM6e2NhcmRpbmFsOmNbMF19LHR6bTp7Y2FyZGluYWw6Y1szM119LHVnOntjYXJkaW5hbDpjWzBdfSx1azp7Y2FyZGluYWw6Y1syOV0sb3JkaW5hbDpjWzUzXX0sdXI6e2NhcmRpbmFsOmNbNF19LHV6OntjYXJkaW5hbDpjWzBdfSx2ZTp7Y2FyZGluYWw6Y1swXX0sdm86e2NhcmRpbmFsOmNbMF19LHZ1bjp7Y2FyZGluYWw6Y1swXX0sd2E6e2NhcmRpbmFsOmNbMV19LHdhZTp7Y2FyZGluYWw6Y1swXX0seGg6e2NhcmRpbmFsOmNbMF19LHhvZzp7Y2FyZGluYWw6Y1swXX0seWk6e2NhcmRpbmFsOmNbNF19LHp1OntjYXJkaW5hbDpjWzJdfSxsbzp7b3JkaW5hbDpjWzBdfSxtczp7b3JkaW5hbDpjWzBdfSx2aTp7b3JkaW5hbDpjWzBdfX19LGZ1bmN0aW9uKGUsbix0KXsoZnVuY3Rpb24oZSl7Y29uc3Qgbj10KDEyKSxyPXQoMTkpLGk9dCgyMSksYT10KDEpLHtpc1dvcmtlcjpvfT10KDYpLHM9dCgzMykobnVsbCk7ZS5TY3JhdGNoPWUuU2NyYXRjaHx8e30sT2JqZWN0LmFzc2lnbihlLlNjcmF0Y2gsbix7Y2FuRmV0Y2g6KCk9PlByb21pc2UucmVzb2x2ZSghMCksZmV0Y2g6ZnVuY3Rpb24oZSl7ZnVuY3Rpb24gbihuLHQpe3JldHVybiBlLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1yZXR1cm4gbi50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBlLnRvU3RyaW5nKCl9LG59KChlLG4pPT5mZXRjaChlLG4pKSxjYW5PcGVuV2luZG93OigpPT5Qcm9taXNlLnJlc29sdmUoITEpLG9wZW5XaW5kb3c6KCk9PlByb21pc2UucmVqZWN0KG5ldyBFcnJvcigiU2NyYXRjaC5vcGVuV2luZG93IG5vdCBzdXBwb3J0ZWQgaW4gc2FuZGJveGVkIGV4dGVuc2lvbnMiKSksY2FuUmVkaXJlY3Q6KCk9PlByb21pc2UucmVzb2x2ZSghMSkscmVkaXJlY3Q6KCk9PlByb21pc2UucmVqZWN0KG5ldyBFcnJvcigiU2NyYXRjaC5yZWRpcmVjdCBub3Qgc3VwcG9ydGVkIGluIHNhbmRib3hlZCBleHRlbnNpb25zIikpLGNhblJlY29yZEF1ZGlvOigpPT5Qcm9taXNlLnJlc29sdmUoITEpLGNhblJlY29yZFZpZGVvOigpPT5Qcm9taXNlLnJlc29sdmUoITEpLGNhblJlYWRDbGlwYm9hcmQ6KCk9PlByb21pc2UucmVzb2x2ZSghMSksY2FuTm90aWZ5OigpPT5Qcm9taXNlLnJlc29sdmUoITEpLGNhbkdlb2xvY2F0ZTooKT0+UHJvbWlzZS5yZXNvbHZlKCExKSxjYW5FbWJlZDooKT0+UHJvbWlzZS5yZXNvbHZlKCExKSxjYW5VbnNhbmRib3g6KCk9PlByb21pc2UucmVzb2x2ZSghMSksY2FuU2NyZWVuc2hvdENhbWVyYTooKT0+UHJvbWlzZS5yZXNvbHZlKCExKSxjYW5Eb3dubG9hZDooKT0+UHJvbWlzZS5yZXNvbHZlKCExKSxkb3dubG9hZDooKT0+UHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCJTY3JhdGNoLmRvd25sb2FkIG5vdCBzdXBwb3J0ZWQgaW4gc2FuZGJveGVkIGV4dGVuc2lvbnMiKSksdHJhbnNsYXRlOnN9KTtjb25zdCBjPW5ldyBjbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMubmV4dEV4dGVuc2lvbklkPTAsdGhpcy5pbml0aWFsUmVnaXN0cmF0aW9ucz1bXSx0aGlzLmZpcnN0UmVnaXN0cmF0aW9uUHJvbWlzZT1uZXcgUHJvbWlzZShlPT57dGhpcy5maXJzdFJlZ2lzdHJhdGlvbkNhbGxiYWNrPWV9KSxpLndhaXRGb3JDb25uZWN0aW9uLnRoZW4oKCk9PntpLmNhbGwoImV4dGVuc2lvbnMiLCJhbGxvY2F0ZVdvcmtlciIpLnRoZW4oYXN5bmMgZT0+e2NvbnN0W24sdF09ZTt0aGlzLndvcmtlcklkPW47dHJ5e2F3YWl0KGU9PntpZighbylyZXR1cm4gbmV3IFByb21pc2UoKG4sdCk9Pntjb25zdCByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO3Iub25sb2FkPSgpPT5uKCksci5vbmVycm9yPSgpPT57dChuZXcgRXJyb3IoIkVycm9yIGluIHNhbmRib3hlZCBzY3JpcHQ6ICIuY29uY2F0KGUsIi4gQ2hlY2sgdGhlIGNvbnNvbGUgZm9yIG1vcmUgaW5mb3JtYXRpb24uIikpKX0sci5zcmM9ZSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHIpfSk7aW1wb3J0U2NyaXB0cyhlKX0pKHQpLGF3YWl0IHRoaXMuZmlyc3RSZWdpc3RyYXRpb25Qcm9taXNlO2NvbnN0IGU9dGhpcy5pbml0aWFsUmVnaXN0cmF0aW9uczt0aGlzLmluaXRpYWxSZWdpc3RyYXRpb25zPW51bGwsUHJvbWlzZS5hbGwoZSkudGhlbigoKT0+aS5jYWxsKCJleHRlbnNpb25zIiwib25Xb3JrZXJJbml0IixuKSl9Y2F0Y2goZSl7YS5lcnJvcihlKSxpLmNhbGwoImV4dGVuc2lvbnMiLCJvbldvcmtlckluaXQiLG4sIiIuY29uY2F0KGUpKX19KX0pLHRoaXMuZXh0ZW5zaW9ucz1bXX1yZWdpc3RlcihlKXtjb25zdCBuPXRoaXMubmV4dEV4dGVuc2lvbklkKys7dGhpcy5leHRlbnNpb25zLnB1c2goZSk7Y29uc3QgdD0iZXh0ZW5zaW9uLiIuY29uY2F0KHRoaXMud29ya2VySWQsIi4iKS5jb25jYXQobikscj1pLnNldFNlcnZpY2UodCxlKS50aGVuKCgpPT5pLmNhbGwoImV4dGVuc2lvbnMiLCJyZWdpc3RlckV4dGVuc2lvblNlcnZpY2UiLHQpKTtyZXR1cm4gdGhpcy5pbml0aWFsUmVnaXN0cmF0aW9ucyYmKHRoaXMuZmlyc3RSZWdpc3RyYXRpb25DYWxsYmFjaygpLHRoaXMuaW5pdGlhbFJlZ2lzdHJhdGlvbnMucHVzaChyKSkscn19O2UuU2NyYXRjaC5leHRlbnNpb25zPXtyZWdpc3RlcjpjLnJlZ2lzdGVyLmJpbmQoYyl9LGUuU2NyYXRjaEV4dGVuc2lvbnM9cihlLlNjcmF0Y2gpfSkuY2FsbCh0aGlzLHQoMTEpKX0sZnVuY3Rpb24oZSxuKXt2YXIgdDt0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KCk7dHJ5e3Q9dHx8bmV3IEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9Y2F0Y2goZSl7Im9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJih0PXdpbmRvdyl9ZS5leHBvcnRzPXR9LGZ1bmN0aW9uKGUsbix0KXtjb25zdCByPXtBcmd1bWVudFR5cGU6dCgyKSxBcmd1bWVudEFsaWdubWVudDp0KDEzKSxCbG9ja1R5cGU6dCgzKSxCbG9ja1NoYXBlOnQoMTQpLE5vdGNoU2hhcGU6dCgxNSksVGFyZ2V0VHlwZTp0KDE2KSxDYXN0OnQoMTcpLENsb25lOnQoMTgpLENvbG9yOnQoNCl9O2UuZXhwb3J0cz1yfSxmdW5jdGlvbihlLG4pe2UuZXhwb3J0cz17REVGQVVMVDpudWxsLExFRlQ6IkxFRlQiLENFTlRFUjoiQ0VOVFJFIixSSUdIVDoiUklHSFQifX0sZnVuY3Rpb24oZSxuKXtlLmV4cG9ydHM9e0hFWEFHT05BTDoxLFJPVU5EOjIsU1FVQVJFOjMsTEVBRjo0LFBMVVM6NSxPQ1RBR09OQUw6NixCVU1QRUQ6NyxJTkRFTlRFRDo4LFNDUkFQUEVEOjksQVJST1c6MTAsVElDS0VUOjExfX0sZnVuY3Rpb24oZSxuKXtlLmV4cG9ydHM9e1NXSVRDSDoic3dpdGNoQ2FzZSIsSEVYQUdPTjoiaGV4YWdvbiIsUk9VTkQ6InJvdW5kIixTUVVBUkU6InNxdWFyZSIsTEVBRjoibGVhZiIsUExVUzoicGx1cyIsT0NUQUdPTkFMOiJvY3RhZ29uYWwiLEJVTVBFRDoiYnVtcGVkIixJTkRFTlRFRDoiaW5kZW50ZWQiLFNDUkFQUEVEOiJzY3JhcHBlZCIsQVJST1c6ImFycm93IixUSUNLRVQ6InRpY2tldCIsSklHU0FXOiJqaWdzYXciLElOVkVSVEVEOiJpbnZlcnRlZCIsUElOQ0VSOiJwaW5jZXIifX0sZnVuY3Rpb24oZSxuKXtlLmV4cG9ydHM9e1NQUklURToic3ByaXRlIixTVEFHRToic3RhZ2UifX0sZnVuY3Rpb24oZSxuLHQpe2NvbnN0IHI9dCg0KSxpPWU9PntpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuITE7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspe2NvbnN0IHQ9ZS5jaGFyQ29kZUF0KG4pO2lmKDQ4PT09dHx8OT09PXQpcmV0dXJuITF9cmV0dXJuITB9O2NsYXNzIGF7c3RhdGljIHRvTnVtYmVyKGUpe2lmKCJudW1iZXIiPT10eXBlb2YgZSlyZXR1cm4gTnVtYmVyLmlzTmFOKGUpPzA6ZTtjb25zdCBuPU51bWJlcihlKTtyZXR1cm4gTnVtYmVyLmlzTmFOKG4pPzA6bn1zdGF0aWMgdG9Cb29sZWFuKGUpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGU/ZToic3RyaW5nIj09dHlwZW9mIGU/IiIhPT1lJiYiMCIhPT1lJiYiZmFsc2UiIT09ZS50b0xvd2VyQ2FzZSgpOkJvb2xlYW4oZSl9c3RhdGljIHRvU3RyaW5nKGUpe3JldHVybiBTdHJpbmcoZSl9c3RhdGljIHRvUmdiQ29sb3JMaXN0KGUpe2NvbnN0IG49YS50b1JnYkNvbG9yT2JqZWN0KGUpO3JldHVybltuLnIsbi5nLG4uYl19c3RhdGljIHRvUmdiQ29sb3JPYmplY3QoZSl7bGV0IG47cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlJiYiIyI9PT1lLnN1YnN0cmluZygwLDEpPyhuPXIuaGV4VG9SZ2IoZSksbnx8KG49e3I6MCxnOjAsYjowLGE6MjU1fSkpOm49ci5kZWNpbWFsVG9SZ2IoYS50b051bWJlcihlKSksbn1zdGF0aWMgaXNXaGl0ZVNwYWNlKGUpe3JldHVybiBudWxsPT09ZXx8InN0cmluZyI9PXR5cGVvZiBlJiYwPT09ZS50cmltKCkubGVuZ3RofXN0YXRpYyBjb21wYXJlKGUsbil7bGV0IHQ9TnVtYmVyKGUpLHI9TnVtYmVyKG4pO2lmKDA9PT10JiZpKGUpP3Q9TmFOOjA9PT1yJiZpKG4pJiYocj1OYU4pLGlzTmFOKHQpfHxpc05hTihyKSl7Y29uc3QgdD1TdHJpbmcoZSkudG9Mb3dlckNhc2UoKSxyPVN0cmluZyhuKS50b0xvd2VyQ2FzZSgpO3JldHVybiB0PHI/LTE6dD5yPzE6MH1yZXR1cm4gdD09PTEvMCYmcj09PTEvMHx8dD09PS0xLzAmJnI9PT0tMS8wPzA6dC1yfXN0YXRpYyBpc0ludChlKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGU/ISFpc05hTihlKXx8ZT09PU1hdGguZmxvb3IoZSk6ImJvb2xlYW4iPT10eXBlb2YgZXx8InN0cmluZyI9PXR5cGVvZiBlJiZlLmluZGV4T2YoIi4iKTwwfXN0YXRpYyBnZXQgTElTVF9JTlZBTElEKCl7cmV0dXJuIklOVkFMSUQifXN0YXRpYyBnZXQgTElTVF9BTEwoKXtyZXR1cm4iQUxMIn1zdGF0aWMgdG9MaXN0SW5kZXgoZSxuLHQpe2lmKCJudW1iZXIiIT10eXBlb2YgZSl7aWYoImFsbCI9PT1lKXJldHVybiB0P2EuTElTVF9BTEw6YS5MSVNUX0lOVkFMSUQ7aWYoImxhc3QiPT09ZSlyZXR1cm4gbj4wP246YS5MSVNUX0lOVkFMSUQ7aWYoInJhbmRvbSI9PT1lfHwiYW55Ij09PWUpcmV0dXJuIG4+MD8xK01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSpuKTphLkxJU1RfSU5WQUxJRH1yZXR1cm4oZT1NYXRoLmZsb29yKGEudG9OdW1iZXIoZSkpKTwxfHxlPm4/YS5MSVNUX0lOVkFMSUQ6ZX19ZS5leHBvcnRzPWF9LGZ1bmN0aW9uKGUsbil7ZS5leHBvcnRzPWNsYXNze3N0YXRpYyBzaW1wbGUoZSl7cmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZSkpfX19LGZ1bmN0aW9uKGUsbix0KXtjb25zdCByPXQoMiksaT10KDMpLHthcmd1bWVudEluZGV4VG9JZDphLGdlbmVyYXRlRXh0ZW5zaW9uSWQ6b309dCgyMCkscz1lPT57aWYoIiI9PT1lfHwiICI9PT1lfHwidyI9PT1lKXJldHVybnt0eXBlOmkuQ09NTUFORCxhc3luYzoidyI9PT1lfTtpZigiciI9PT1lfHwiUiI9PT1lKXJldHVybnt0eXBlOmkuUkVQT1JURVIsYXN5bmM6IlIiPT09ZX07aWYoImIiPT09ZSlyZXR1cm57dHlwZTppLkJPT0xFQU4sYXN5bmM6ITF9O2lmKCJoIj09PWUpcmV0dXJue3R5cGU6aS5IQVQsYXN5bmM6ITF9O3Rocm93IG5ldyBFcnJvcigiVW5rbm93biBTY3JhdGNoWCBibG9jayB0eXBlOiAiLmNvbmNhdChlKSl9LGM9KGUsbik9Pntjb25zdCB0PXt9LGk9InN0cmluZyI9PXR5cGVvZihhPW4pfHwibnVtYmVyIj09dHlwZW9mIGF8fCJib29sZWFuIj09dHlwZW9mIGE7dmFyIGE7aWYoaSYmKHQuZGVmYXVsdFZhbHVlPW4pLCJzIj09PWUpdC50eXBlPXIuU1RSSU5HLGl8fCh0LmRlZmF1bHRWYWx1ZT0iIik7ZWxzZSBpZigibiI9PT1lKXQudHlwZT1yLk5VTUJFUixpfHwodC5kZWZhdWx0VmFsdWU9MCk7ZWxzZXtpZigibSIhPT1lWzBdKXRocm93IG5ldyBFcnJvcigiVW5rbm93biBTY3JhdGNoWCBhcmd1bWVudCB0eXBlOiAiLmNvbmNhdChlKSk7e3QudHlwZT1yLlNUUklORztjb25zdCBuPWUuc3BsaXQoL1xcLnw6LylbMV07dC5tZW51PW59fXJldHVybiB0fSxsPShlLG4sdCk9PnI9Pntjb25zdCBpPVtdO2ZvcihsZXQgZT0wO2U8bjtlKyspaS5wdXNoKHJbYShlKV0pO3JldHVybiB0P25ldyBQcm9taXNlKG49PntlKC4uLmksbil9KTplKC4uLmkpfSx1PW5ldyBNYXA7ZS5leHBvcnRzPWU9Pih7cmVnaXN0ZXI6KG4sdCxyKT0+e2NvbnN0IGk9KChlLG4sdCk9Pntjb25zdCByPXtpZDpvKGUpLG5hbWU6bi5kaXNwbGF5TmFtZXx8ZSxibG9ja3M6W10sY29sb3IxOiIjNGE0YTVlIixjb2xvcjI6IiMzMTMyM2YiLGNvbG9yMzoiIzE5MWEyMSJ9LGk9e2dldEluZm86KCk9PnIsX2dldFN0YXR1czp0Ll9nZXRTdGF0dXN9O24udXJsJiYoci5kb2NzVVJJPW4udXJsKTtmb3IoY29uc3QgZSBvZiBuLmJsb2Nrcyl7aWYoMT09PWUubGVuZ3RoKXtyLmJsb2Nrcy5wdXNoKCItLS0iKTtjb250aW51ZX1jb25zdCBuPWVbMF0sbz1lWzFdLHU9ZVsyXSxkPWUuc2xpY2UoMyk7bGV0IGY9IiI7Y29uc3QgaD1bXSxwPW8uc3BsaXQoLyUoW1xcdy46XSspL2cpO2ZvcihsZXQgZT0wO2U8cC5sZW5ndGg7ZSsrKXtjb25zdCBuPXBbZV07aWYoZSUyPT0xKXtjKG4pO2NvbnN0IHQ9TWF0aC5mbG9vcihlLzIpLnRvU3RyaW5nKCkscj1kW3RdLGk9YSh0KTtoW2ldPWMobixyKSxmKz0iWyIuY29uY2F0KGksIl0iKX1lbHNlIGYrPW59Y29uc3QgbT1zKG4pLGc9e29wY29kZTp1LGJsb2NrVHlwZTptLnR5cGUsdGV4dDpmLGFyZ3VtZW50czpofTtyLmJsb2Nrcy5wdXNoKGcpO2NvbnN0IHY9dFt1XSxiPWgubGVuZ3RoO2lbdV09bCh2LGIsbS5hc3luYyl9Y29uc3QgdT1uLm1lbnVzO2lmKHUpe2NvbnN0IGU9e307Zm9yKGNvbnN0IG4gb2YgT2JqZWN0LmtleXModSl8fHt9KXtjb25zdCB0PXtpdGVtczp1W25dfTtlW25dPXR9ci5tZW51cz1lfXJldHVybiBpfSkobix0LHIpO3Uuc2V0KG4saSksZS5leHRlbnNpb25zLnJlZ2lzdGVyKGkpfSxnZXRTdGF0dXM6ZT0+e2NvbnN0IG49dS5nZXQoZSk7cmV0dXJuIG4/bi5fZ2V0U3RhdHVzKCk6e3N0YXR1czowLG1zZzoiZG9lcyBub3QgZXhpc3QifX19KX0sZnVuY3Rpb24oZSxuKXtlLmV4cG9ydHM9e2dlbmVyYXRlRXh0ZW5zaW9uSWQ6ZT0+e2NvbnN0IG49ZS5yZXBsYWNlKC9bXmEtejAtOV0vZ2ksIiIpLnRvTG93ZXJDYXNlKCk7cmV0dXJuInNieCIuY29uY2F0KG4pfSxhcmd1bWVudEluZGV4VG9JZDplPT5lLnRvU3RyaW5nKCl9fSxmdW5jdGlvbihlLG4sdCl7Y29uc3Qgcj10KDIyKSxpPXQoMSkse2NlbnRyYWxEaXNwYXRjaFNlcnZpY2U6YX09dCg2KTtlLmV4cG9ydHM9bmV3IGNsYXNzIGV4dGVuZHMgcntjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5fY29ubmVjdGlvblByb21pc2U9bmV3IFByb21pc2UoZT0+e3RoaXMuX29uQ29ubmVjdD1lfSksdGhpcy5zZXJ2aWNlcz17fSx0aGlzLl9vbk1lc3NhZ2U9dGhpcy5fb25NZXNzYWdlLmJpbmQodGhpcyxhKSwidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJihzZWxmLm9ubWVzc2FnZT10aGlzLl9vbk1lc3NhZ2UpfWdldCB3YWl0Rm9yQ29ubmVjdGlvbigpe3JldHVybiB0aGlzLl9jb25uZWN0aW9uUHJvbWlzZX1zZXRTZXJ2aWNlKGUsbil7cmV0dXJuIHRoaXMuc2VydmljZXMuaGFzT3duUHJvcGVydHkoZSkmJmkud2FybigiV29ya2VyIGRpc3BhdGNoIHJlcGxhY2luZyBleGlzdGluZyBzZXJ2aWNlIHByb3ZpZGVyIGZvciAiLmNvbmNhdChlKSksdGhpcy5zZXJ2aWNlc1tlXT1uLHRoaXMud2FpdEZvckNvbm5lY3Rpb24udGhlbigoKT0+dGhpcy5fcmVtb3RlQ2FsbChhLCJkaXNwYXRjaCIsInNldFNlcnZpY2UiLGUpKX1fZ2V0U2VydmljZVByb3ZpZGVyKGUpe2NvbnN0IG49dGhpcy5zZXJ2aWNlc1tlXTtyZXR1cm57cHJvdmlkZXI6bnx8YSxpc1JlbW90ZTohbn19X29uRGlzcGF0Y2hNZXNzYWdlKGUsbil7bGV0IHQ7c3dpdGNoKG4ubWV0aG9kKXtjYXNlImhhbmRzaGFrZSI6dD10aGlzLl9vbkNvbm5lY3QoKTticmVhaztjYXNlInRlcm1pbmF0ZSI6c2V0VGltZW91dCgoKT0+c2VsZi5jbG9zZSgpLDApLHQ9UHJvbWlzZS5yZXNvbHZlKCk7YnJlYWs7ZGVmYXVsdDppLmVycm9yKCJXb3JrZXIgZGlzcGF0Y2ggcmVjZWl2ZWQgbWVzc2FnZSBmb3IgdW5rbm93biBtZXRob2Q6ICIuY29uY2F0KG4ubWV0aG9kKSl9cmV0dXJuIHR9fX0sZnVuY3Rpb24oZSxuLHQpe2NvbnN0IHI9dCgxKTtlLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmNhbGxiYWNrcz1bXSx0aGlzLm5leHRSZXNwb25zZUlkPTB9Y2FsbChlLG4pe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLHI9bmV3IEFycmF5KHQ+Mj90LTI6MCksaT0yO2k8dDtpKyspcltpLTJdPWFyZ3VtZW50c1tpXTtyZXR1cm4gdGhpcy50cmFuc2ZlckNhbGwoZSxuLG51bGwsLi4ucil9dHJhbnNmZXJDYWxsKGUsbix0KXt0cnl7Y29uc3R7cHJvdmlkZXI6byxpc1JlbW90ZTpzfT10aGlzLl9nZXRTZXJ2aWNlUHJvdmlkZXIoZSk7aWYobyl7Zm9yKHZhciByPWFyZ3VtZW50cy5sZW5ndGgsaT1uZXcgQXJyYXkocj4zP3ItMzowKSxhPTM7YTxyO2ErKylpW2EtM109YXJndW1lbnRzW2FdO2lmKHMpcmV0dXJuIHRoaXMuX3JlbW90ZVRyYW5zZmVyQ2FsbChvLGUsbix0LC4uLmkpO2NvbnN0IGM9b1tuXS5hcHBseShvLGkpO3JldHVybiBQcm9taXNlLnJlc29sdmUoYyl9cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcigiU2VydmljZSBub3QgZm91bmQ6ICIuY29uY2F0KGUpKSl9Y2F0Y2goZSl7cmV0dXJuIFByb21pc2UucmVqZWN0KGUpfX1faXNSZW1vdGVTZXJ2aWNlKGUpe3ZhciBuLHQ7cmV0dXJuIG51bGwhPT0obj1udWxsPT09KHQ9dGhpcy5fZ2V0U2VydmljZVByb3ZpZGVyKGUpKXx8dm9pZCAwPT09dD92b2lkIDA6dC5pc1JlbW90ZSkmJnZvaWQgMCE9PW4mJm59X3JlbW90ZUNhbGwoZSxuLHQpe2Zvcih2YXIgcj1hcmd1bWVudHMubGVuZ3RoLGk9bmV3IEFycmF5KHI+Mz9yLTM6MCksYT0zO2E8cjthKyspaVthLTNdPWFyZ3VtZW50c1thXTtyZXR1cm4gdGhpcy5fcmVtb3RlVHJhbnNmZXJDYWxsKGUsbix0LG51bGwsLi4uaSl9X3JlbW90ZVRyYW5zZmVyQ2FsbChlLG4sdCxyKXtmb3IodmFyIGk9YXJndW1lbnRzLmxlbmd0aCxhPW5ldyBBcnJheShpPjQ/aS00OjApLG89NDtvPGk7bysrKWFbby00XT1hcmd1bWVudHNbb107cmV0dXJuIG5ldyBQcm9taXNlKChpLG8pPT57Y29uc3Qgcz10aGlzLl9zdG9yZUNhbGxiYWNrcyhpLG8pO2EubGVuZ3RoPjAmJiJmdW5jdGlvbiI9PXR5cGVvZiBhW2EubGVuZ3RoLTFdLmZ1bmMmJihhLnBvcCgpLGEucG9wKCkpLHI/ZS5wb3N0TWVzc2FnZSh7c2VydmljZTpuLG1ldGhvZDp0LHJlc3BvbnNlSWQ6cyxhcmdzOmF9LHIpOmUucG9zdE1lc3NhZ2Uoe3NlcnZpY2U6bixtZXRob2Q6dCxyZXNwb25zZUlkOnMsYXJnczphfSl9KX1fc3RvcmVDYWxsYmFja3MoZSxuKXtjb25zdCB0PXRoaXMubmV4dFJlc3BvbnNlSWQrKztyZXR1cm4gdGhpcy5jYWxsYmFja3NbdF09W2Usbl0sdH1fZGVsaXZlclJlc3BvbnNlKGUsbil7dHJ5e2NvbnN0W3Qscl09dGhpcy5jYWxsYmFja3NbZV07ZGVsZXRlIHRoaXMuY2FsbGJhY2tzW2VdLG4uZXJyb3I/cihuLmVycm9yKTp0KG4ucmVzdWx0KX1jYXRjaChlKXtyLmVycm9yKCJEaXNwYXRjaCBjYWxsYmFjayBmYWlsZWQ6ICIuY29uY2F0KGUpKX19X29uTWVzc2FnZShlLG4pe2NvbnN0IHQ9bi5kYXRhO2xldCBpO3QuYXJncz10LmFyZ3N8fFtdLHQuc2VydmljZT9pPSJkaXNwYXRjaCI9PT10LnNlcnZpY2U/dGhpcy5fb25EaXNwYXRjaE1lc3NhZ2UoZSx0KTp0aGlzLmNhbGwodC5zZXJ2aWNlLHQubWV0aG9kLC4uLnQuYXJncyk6dm9pZCAwPT09dC5yZXNwb25zZUlkP3IuZXJyb3IoIkRpc3BhdGNoIGNhdWdodCBtYWxmb3JtZWQgbWVzc2FnZSBmcm9tIGEgd29ya2VyOiAiLmNvbmNhdChKU09OLnN0cmluZ2lmeShuKSkpOnRoaXMuX2RlbGl2ZXJSZXNwb25zZSh0LnJlc3BvbnNlSWQsdCksaSYmKHZvaWQgMD09PXQucmVzcG9uc2VJZD9yLmVycm9yKCJEaXNwYXRjaCBtZXNzYWdlIG1pc3NpbmcgcmVxdWlyZWQgcmVzcG9uc2UgSUQ6ICIuY29uY2F0KEpTT04uc3RyaW5naWZ5KG4pKSk6aS50aGVuKG49PmUucG9zdE1lc3NhZ2Uoe3Jlc3BvbnNlSWQ6dC5yZXNwb25zZUlkLHJlc3VsdDpufSksbj0+ZS5wb3N0TWVzc2FnZSh7cmVzcG9uc2VJZDp0LnJlc3BvbnNlSWQsZXJyb3I6IiIuY29uY2F0KG4pfSkpKX1fZ2V0U2VydmljZVByb3ZpZGVyKGUpe3Rocm93IG5ldyBFcnJvcigiQ291bGQgbm90IGdldCBwcm92aWRlciBmb3IgIi5jb25jYXQoZSwiOiBfZ2V0U2VydmljZVByb3ZpZGVyIG5vdCBpbXBsZW1lbnRlZCIpKX1fb25EaXNwYXRjaE1lc3NhZ2UoZSxuKXt0aHJvdyBuZXcgRXJyb3IoIlVuaW1wbGVtZW50ZWQgZGlzcGF0Y2ggbWVzc2FnZSBoYW5kbGVyIGNhbm5vdCBoYW5kbGUgIi5jb25jYXQobi5tZXRob2QsIiBtZXRob2QiKSl9fX0sZnVuY3Rpb24oZSxuLHQpe3ZhciByPXQoMjQpLGk9ci5lbmFibGUsYT1yLmRpc2FibGUsbz0idW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmL2Nocm9tZS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkscz10KDI3KTtpZihyLmRlZmF1bHRCYWNrZW5kPW8/cy5taW5pbG9nOnMsInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpe3RyeXtyLmVuYWJsZShKU09OLnBhcnNlKHdpbmRvdy5sb2NhbFN0b3JhZ2UubWluaWxvZ1NldHRpbmdzKSl9Y2F0Y2goZSl7fWlmKHdpbmRvdy5sb2NhdGlvbiYmd2luZG93LmxvY2F0aW9uLnNlYXJjaCl7dmFyIGM9UmVnRXhwKCJbPyZdbWluaWxvZz0oW14mXSopIikuZXhlYyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtjJiZyLmVuYWJsZShkZWNvZGVVUklDb21wb25lbnQoY1sxXSkpfX1yLmVuYWJsZT1mdW5jdGlvbigpe2kuY2FsbChyLCEwKTt0cnl7d2luZG93LmxvY2FsU3RvcmFnZS5taW5pbG9nU2V0dGluZ3M9SlNPTi5zdHJpbmdpZnkoITApfWNhdGNoKGUpe31yZXR1cm4gdGhpc30sci5kaXNhYmxlPWZ1bmN0aW9uKCl7YS5jYWxsKHIpO3RyeXtkZWxldGUgd2luZG93LmxvY2FsU3RvcmFnZS5taW5pbG9nU2V0dGluZ3N9Y2F0Y2goZSl7fXJldHVybiB0aGlzfSwoZS5leHBvcnRzPXIpLmJhY2tlbmRzPXthcnJheTp0KDMwKSxicm93c2VyOnIuZGVmYXVsdEJhY2tlbmQsbG9jYWxTdG9yYWdlOnQoMzEpLGpRdWVyeTp0KDMyKX19LGZ1bmN0aW9uKGUsbix0KXt2YXIgcj10KDApLGk9dCgyNiksYT1uZXcgcixvPUFycmF5LnByb3RvdHlwZS5zbGljZTsobj1lLmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24oKXtyZXR1cm4gYS53cml0ZShlLHZvaWQgMCxvLmNhbGwoYXJndW1lbnRzKSksdH07cmV0dXJuIHQuZGVidWc9ZnVuY3Rpb24oKXtyZXR1cm4gYS53cml0ZShlLCJkZWJ1ZyIsby5jYWxsKGFyZ3VtZW50cykpLHR9LHQuaW5mbz1mdW5jdGlvbigpe3JldHVybiBhLndyaXRlKGUsImluZm8iLG8uY2FsbChhcmd1bWVudHMpKSx0fSx0Lndhcm49ZnVuY3Rpb24oKXtyZXR1cm4gYS53cml0ZShlLCJ3YXJuIixvLmNhbGwoYXJndW1lbnRzKSksdH0sdC5lcnJvcj1mdW5jdGlvbigpe3JldHVybiBhLndyaXRlKGUsImVycm9yIixvLmNhbGwoYXJndW1lbnRzKSksdH0sdC5sb2c9dC5kZWJ1Zyx0LnN1Z2dlc3Q9bi5zdWdnZXN0LHQuZm9ybWF0PWEuZm9ybWF0LHR9KS5kZWZhdWx0QmFja2VuZD1uLmRlZmF1bHRGb3JtYXR0ZXI9bnVsbCxuLnBpcGU9ZnVuY3Rpb24oZSl7cmV0dXJuIGEucGlwZShlKX0sbi5lbmQ9bi51bnBpcGU9bi5kaXNhYmxlPWZ1bmN0aW9uKGUpe3JldHVybiBhLnVucGlwZShlKX0sbi5UcmFuc2Zvcm09cixuLkZpbHRlcj1pLG4uc3VnZ2VzdD1uZXcgaSxuLmVuYWJsZT1mdW5jdGlvbigpe3JldHVybiBuLmRlZmF1bHRGb3JtYXR0ZXI/YS5waXBlKG4uc3VnZ2VzdCkucGlwZShuLmRlZmF1bHRGb3JtYXR0ZXIpLnBpcGUobi5kZWZhdWx0QmFja2VuZCk6YS5waXBlKG4uc3VnZ2VzdCkucGlwZShuLmRlZmF1bHRCYWNrZW5kKX19LGZ1bmN0aW9uKGUsbil7ZnVuY3Rpb24gdCgpe3RoaXMuX2V2ZW50cz17fX10LnByb3RvdHlwZT17b246ZnVuY3Rpb24oZSxuKXt0aGlzLl9ldmVudHN8fCh0aGlzLl9ldmVudHM9e30pO3ZhciB0PXRoaXMuX2V2ZW50cztyZXR1cm4odFtlXXx8KHRbZV09W10pKS5wdXNoKG4pLHRoaXN9LHJlbW92ZUxpc3RlbmVyOmZ1bmN0aW9uKGUsbil7dmFyIHQscj10aGlzLl9ldmVudHNbZV18fFtdO2Zvcih0PXIubGVuZ3RoLTE7dD49MCYmclt0XTt0LS0pclt0XSE9PW4mJnJbdF0uY2IhPT1ufHxyLnNwbGljZSh0LDEpfSxyZW1vdmVBbGxMaXN0ZW5lcnM6ZnVuY3Rpb24oZSl7ZT90aGlzLl9ldmVudHNbZV0mJih0aGlzLl9ldmVudHNbZV09W10pOnRoaXMuX2V2ZW50cz17fX0sbGlzdGVuZXJzOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLl9ldmVudHMmJnRoaXMuX2V2ZW50c1tlXXx8W119LGVtaXQ6ZnVuY3Rpb24oZSl7dGhpcy5fZXZlbnRzfHwodGhpcy5fZXZlbnRzPXt9KTt2YXIgbix0PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxyPXRoaXMuX2V2ZW50c1tlXXx8W107Zm9yKG49ci5sZW5ndGgtMTtuPj0wJiZyW25dO24tLSlyW25dLmFwcGx5KHRoaXMsdCk7cmV0dXJuIHRoaXN9LHdoZW46ZnVuY3Rpb24oZSxuKXtyZXR1cm4gdGhpcy5vbmNlKGUsbiwhMCl9LG9uY2U6ZnVuY3Rpb24oZSxuLHQpe2lmKCFuKXJldHVybiB0aGlzO2Z1bmN0aW9uIHIoKXt0fHx0aGlzLnJlbW92ZUxpc3RlbmVyKGUsciksbi5hcHBseSh0aGlzLGFyZ3VtZW50cykmJnQmJnRoaXMucmVtb3ZlTGlzdGVuZXIoZSxyKX1yZXR1cm4gci5jYj1uLHRoaXMub24oZSxyKSx0aGlzfX0sdC5taXhpbj1mdW5jdGlvbihlKXt2YXIgbixyPXQucHJvdG90eXBlO2ZvcihuIGluIHIpci5oYXNPd25Qcm9wZXJ0eShuKSYmKGUucHJvdG90eXBlW25dPXJbbl0pfSxlLmV4cG9ydHM9dH0sZnVuY3Rpb24oZSxuLHQpe3ZhciByPXQoMCksaT17ZGVidWc6MSxpbmZvOjIsd2FybjozLGVycm9yOjR9O2Z1bmN0aW9uIGEoKXt0aGlzLmVuYWJsZWQ9ITAsdGhpcy5kZWZhdWx0UmVzdWx0PSEwLHRoaXMuY2xlYXIoKX1mdW5jdGlvbiBvKGUsbil7cmV0dXJuIGUubi50ZXN0P2Uubi50ZXN0KG4pOmUubj09bn1yLm1peGluKGEpLGEucHJvdG90eXBlLmFsbG93PWZ1bmN0aW9uKGUsbil7cmV0dXJuIHRoaXMuX3doaXRlLnB1c2goe246ZSxsOmlbbl19KSx0aGlzfSxhLnByb3RvdHlwZS5kZW55PWZ1bmN0aW9uKGUsbil7cmV0dXJuIHRoaXMuX2JsYWNrLnB1c2goe246ZSxsOmlbbl19KSx0aGlzfSxhLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLl93aGl0ZT1bXSx0aGlzLl9ibGFjaz1bXSx0aGlzfSxhLnByb3RvdHlwZS50ZXN0PWZ1bmN0aW9uKGUsbil7dmFyIHQscj1NYXRoLm1heCh0aGlzLl93aGl0ZS5sZW5ndGgsdGhpcy5fYmxhY2subGVuZ3RoKTtmb3IodD0wO3Q8cjt0Kyspe2lmKHRoaXMuX3doaXRlW3RdJiZvKHRoaXMuX3doaXRlW3RdLGUpJiZpW25dPj10aGlzLl93aGl0ZVt0XS5sKXJldHVybiEwO2lmKHRoaXMuX2JsYWNrW3RdJiZvKHRoaXMuX2JsYWNrW3RdLGUpJiZpW25dPD10aGlzLl9ibGFja1t0XS5sKXJldHVybiExfXJldHVybiB0aGlzLmRlZmF1bHRSZXN1bHR9LGEucHJvdG90eXBlLndyaXRlPWZ1bmN0aW9uKGUsbix0KXtpZighdGhpcy5lbmFibGVkfHx0aGlzLnRlc3QoZSxuKSlyZXR1cm4gdGhpcy5lbWl0KCJpdGVtIixlLG4sdCl9LGUuZXhwb3J0cz1hfSxmdW5jdGlvbihlLG4sdCl7dmFyIHI9dCgwKSxpPS9cXG4rJC8sYT1uZXcgcjthLndyaXRlPWZ1bmN0aW9uKGUsbix0KXt2YXIgcj10Lmxlbmd0aC0xO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmY29uc29sZS5sb2cpe2lmKGNvbnNvbGUubG9nLmFwcGx5KXJldHVybiBjb25zb2xlLmxvZy5hcHBseShjb25zb2xlLFtlLG5dLmNvbmNhdCh0KSk7aWYoSlNPTiYmSlNPTi5zdHJpbmdpZnkpe3Rbcl0mJiJzdHJpbmciPT10eXBlb2YgdFtyXSYmKHRbcl09dFtyXS5yZXBsYWNlKGksIiIpKTt0cnl7Zm9yKHI9MDtyPHQubGVuZ3RoO3IrKyl0W3JdPUpTT04uc3RyaW5naWZ5KHRbcl0pfWNhdGNoKGUpe31jb25zb2xlLmxvZyh0LmpvaW4oIiAiKSl9fX0sYS5mb3JtYXR0ZXJzPVsiY29sb3IiLCJtaW5pbG9nIl0sYS5jb2xvcj10KDI4KSxhLm1pbmlsb2c9dCgyOSksZS5leHBvcnRzPWF9LGZ1bmN0aW9uKGUsbix0KXt2YXIgcj10KDApLGk9dCg1KSxhPXtkZWJ1ZzpbImN5YW4iXSxpbmZvOlsicHVycGxlIl0sd2FybjpbInllbGxvdyIsITBdLGVycm9yOlsicmVkIiwhMF19LG89bmV3IHI7by53cml0ZT1mdW5jdGlvbihlLG4sdCl7Y29uc29sZS5sb2c7Y29uc29sZVtuXSYmY29uc29sZVtuXS5hcHBseSYmY29uc29sZVtuXS5hcHBseShjb25zb2xlLFsiJWMiK2UrIiAlYyIrbixpKCJncmF5IiksaS5hcHBseShpLGFbbl0pXS5jb25jYXQodCkpfSxvLnBpcGU9ZnVuY3Rpb24oKXt9LGUuZXhwb3J0cz1vfSxmdW5jdGlvbihlLG4sdCl7dmFyIHI9dCgwKSxpPXQoNSksYT17ZGVidWc6WyJncmF5Il0saW5mbzpbInB1cnBsZSJdLHdhcm46WyJ5ZWxsb3ciLCEwXSxlcnJvcjpbInJlZCIsITBdfSxvPW5ldyByO28ud3JpdGU9ZnVuY3Rpb24oZSxuLHQpe3ZhciByPWNvbnNvbGUubG9nOyJkZWJ1ZyIhPW4mJmNvbnNvbGVbbl0mJihyPWNvbnNvbGVbbl0pO3ZhciBvPTA7aWYoImluZm8iIT1uKXtmb3IoO288dC5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdFtvXTtvKyspO3IuYXBwbHkoY29uc29sZSxbIiVjIitlKyIgIit0LnNsaWNlKDAsbykuam9pbigiICIpLGkuYXBwbHkoaSxhW25dKV0uY29uY2F0KHQuc2xpY2UobykpKX1lbHNlIHIuYXBwbHkoY29uc29sZSxbIiVjIitlLGkuYXBwbHkoaSxhW25dKV0uY29uY2F0KHQpKX0sby5waXBlPWZ1bmN0aW9uKCl7fSxlLmV4cG9ydHM9b30sZnVuY3Rpb24oZSxuLHQpe3ZhciByPXQoMCksaT1bXSxhPW5ldyByO2Eud3JpdGU9ZnVuY3Rpb24oZSxuLHQpe2kucHVzaChbZSxuLHRdKX0sYS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gaX0sYS5lbXB0eT1mdW5jdGlvbigpe2k9W119LGUuZXhwb3J0cz1hfSxmdW5jdGlvbihlLG4sdCl7dmFyIHI9dCgwKSxpPSExLGE9bmV3IHI7YS53cml0ZT1mdW5jdGlvbihlLG4sdCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJiJ1bmRlZmluZWQiIT10eXBlb2YgSlNPTiYmSlNPTi5zdHJpbmdpZnkmJkpTT04ucGFyc2UpdHJ5e2l8fChpPXdpbmRvdy5sb2NhbFN0b3JhZ2UubWluaWxvZz9KU09OLnBhcnNlKHdpbmRvdy5sb2NhbFN0b3JhZ2UubWluaWxvZyk6W10pLGkucHVzaChbKG5ldyBEYXRlKS50b1N0cmluZygpLGUsbix0XSksd2luZG93LmxvY2FsU3RvcmFnZS5taW5pbG9nPUpTT04uc3RyaW5naWZ5KGkpfWNhdGNoKGUpe319LGUuZXhwb3J0cz1hfSxmdW5jdGlvbihlLG4sdCl7dmFyIHI9dCgwKSxpPShuZXcgRGF0ZSkudmFsdWVPZigpLnRvU3RyaW5nKDM2KTtmdW5jdGlvbiBhKGUpe3RoaXMudXJsPWUudXJsfHwiIix0aGlzLmNhY2hlPVtdLHRoaXMudGltZXI9bnVsbCx0aGlzLmludGVydmFsPWUuaW50ZXJ2YWx8fDNlNCx0aGlzLmVuYWJsZWQ9ITAsdGhpcy5qUXVlcnk9d2luZG93LmpRdWVyeSx0aGlzLmV4dHJhcz17fX1yLm1peGluKGEpLGEucHJvdG90eXBlLndyaXRlPWZ1bmN0aW9uKGUsbix0KXt0aGlzLnRpbWVyfHx0aGlzLmluaXQoKSx0aGlzLmNhY2hlLnB1c2goW2Usbl0uY29uY2F0KHQpKX0sYS5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbigpe2lmKHRoaXMuZW5hYmxlZCYmdGhpcy5qUXVlcnkpe3ZhciBlPXRoaXM7dGhpcy50aW1lcj1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3ZhciBuLHQscj1bXSxhPWUudXJsO2lmKDA9PWUuY2FjaGUubGVuZ3RoKXJldHVybiBlLmluaXQoKTtmb3Iobj0wO248ZS5jYWNoZS5sZW5ndGg7bisrKXRyeXtKU09OLnN0cmluZ2lmeShlLmNhY2hlW25dKSxyLnB1c2goZS5jYWNoZVtuXSl9Y2F0Y2goZSl7fWUualF1ZXJ5LmlzRW1wdHlPYmplY3QoZS5leHRyYXMpPyh0PUpTT04uc3RyaW5naWZ5KHtsb2dzOnJ9KSxhPWUudXJsKyI/Y2xpZW50X2lkPSIraSk6dD1KU09OLnN0cmluZ2lmeShlLmpRdWVyeS5leHRlbmQoe2xvZ3M6cn0sZS5leHRyYXMpKSxlLmpRdWVyeS5hamF4KGEse3R5cGU6IlBPU1QiLGNhY2hlOiExLHByb2Nlc3NEYXRhOiExLGRhdGE6dCxjb250ZW50VHlwZToiYXBwbGljYXRpb24vanNvbiIsdGltZW91dDoxZTR9KS5zdWNjZXNzKChmdW5jdGlvbihuLHQscil7bi5pbnRlcnZhbCYmKGUuaW50ZXJ2YWw9TWF0aC5tYXgoMWUzLG4uaW50ZXJ2YWwpKX0pKS5lcnJvcigoZnVuY3Rpb24oKXtlLmludGVydmFsPTNlNH0pKS5hbHdheXMoKGZ1bmN0aW9uKCl7ZS5pbml0KCl9KSksZS5jYWNoZT1bXX0pLHRoaXMuaW50ZXJ2YWwpfX0sYS5wcm90b3R5cGUuZW5kPWZ1bmN0aW9uKCl7fSxhLmpRdWVyeVdhaXQ9ZnVuY3Rpb24oZSl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih3aW5kb3cualF1ZXJ5fHx3aW5kb3cuJCkpcmV0dXJuIGUod2luZG93LmpRdWVyeXx8d2luZG93LiQpOyJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZzZXRUaW1lb3V0KChmdW5jdGlvbigpe2EualF1ZXJ5V2FpdChlKX0pLDIwMCl9LGUuZXhwb3J0cz1hfSxmdW5jdGlvbihlLG4sdCl7Y29uc3Qgcj10KDM0KTtlLmV4cG9ydHM9ZT0+e2NvbnN0IG49ci5uYW1lc3BhY2UoKSx0PShlLHQpPT57aWYoZSYmIm9iamVjdCI9PXR5cGVvZiBlKTtlbHNle2lmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBuZXcgRXJyb3IoInVuc3VwcG9ydGVkIGRhdGEgdHlwZSBpbiB0cmFuc2xhdGUoKSIpO2U9e2RlZmF1bHQ6ZX19cmV0dXJuIG4oZSx0KX0saT1lPT4iXyIuY29uY2F0KGUpLGE9KCk9PmU/ZS5nZXRMb2NhbGUoKToidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcj9uYXZpZ2F0b3IubGFuZ3VhZ2U6ImVuIjtsZXQgbz17fTtyZXR1cm4gdC5zZXR1cD1lPT57ZSYmKG89ZSksbi5zZXR1cCh7bG9jYWxlOmEoKSxtaXNzaW5nVHJhbnNsYXRpb246Imlnbm9yZSIsZ2VuZXJhdGVJZDppLHRyYW5zbGF0aW9uczpvfSl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJsYW5ndWFnZSIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLGdldDooKT0+YSgpfSksdC5zZXR1cCh7fSksZSYmZS5vbigiTE9DQUxFX0NIQU5HRUQiLCgpPT57dC5zZXR1cChudWxsKX0pLHR9fSxmdW5jdGlvbihlLG4sdCl7InVzZSBzdHJpY3QiO3ZhciByPXQoMzUpLGk9dCgzNiksYT10KDkpLG89dCg4KSxzPXQoNyk7ZnVuY3Rpb24gYyhlLG4pe3JldHVybiBPYmplY3Qua2V5cyhuKS5mb3JFYWNoKChmdW5jdGlvbih0KXtlW3RdPW5bdF19KSksZX1lLmV4cG9ydHM9ZnVuY3Rpb24gZSgpe3ZhciBuPWMoe30scyksdD0iZW4iLGw9e30sdT1mdW5jdGlvbihlKXtyZXR1cm4gZX0sZD1udWxsLGY9Indhcm5pbmciLGg9e307ZnVuY3Rpb24gcChlLG4sYSl7dmFyIG89InN0cmluZyI9PXR5cGVvZiBlP2U6ZS5kZWZhdWx0LHM9dihvLCJvYmplY3QiPT10eXBlb2YgZSYmZS5pZHx8dShvKSxhfHx0KTtyZXR1cm4ocy5mb3JtYXR8fChzLmZvcm1hdD1pKHIocy5tZXNzYWdlKSxhfHx0LGgpKSkobil9cC5yaWNoPWZ1bmN0aW9uKGUsbixhKXt2YXIgbz0ic3RyaW5nIj09dHlwZW9mIGU/ZTplLmRlZmF1bHQscz12KG8sIm9iamVjdCI9PXR5cGVvZiBlJiZlLmlkfHx1KG8pLGF8fHQpO3JldHVybihzLnRvUGFydHN8fChzLnRvUGFydHM9aS50b1BhcnRzKHIocy5tZXNzYWdlLHt0YWdzVHlwZTptfSksYXx8dCxoKSkpKG4pfTt2YXIgbT0iPD4iO2Z1bmN0aW9uIGcoZSxuKXt2YXIgdD1lWzJdO3JldHVybiBmdW5jdGlvbihlLG4pe3ZhciByPSJvYmplY3QiPT10eXBlb2YgdD9mdW5jdGlvbihlLG4pe3JldHVybiBPYmplY3Qua2V5cyhlKS5yZWR1Y2UoKGZ1bmN0aW9uKHQscil7cmV0dXJuIHRbcl09ZVtyXShuKSx0fSkse30pfSh0LG4pOnQ7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGU/ZShyKTplfX1mdW5jdGlvbiB2KGUsbix0KXt2YXIgcj1vKHQsbCl8fCJlbiIsaT1sW3JdfHwobFtyXT17fSksYT1pW25dO2lmKCJzdHJpbmciPT10eXBlb2YgYSYmKGE9aVtuXT17bWVzc2FnZTphfSksIWEpe3ZhciBzPVwnVHJhbnNsYXRpb24gZm9yICJcJytuK1wnIiBpbiAiXCcrcitcJyIgaXMgbWlzc2luZ1wnO2lmKCJ3YXJuaW5nIj09PWYpInVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlLndhcm4ocyk7ZWxzZSBpZigiaWdub3JlIiE9PWYpdGhyb3cgbmV3IEVycm9yKHMpO3ZhciBjPSJmdW5jdGlvbiI9PXR5cGVvZiBkP2QoZSxuLHIpfHxlOmR8fGU7YT1pW25dPXttZXNzYWdlOmN9fXJldHVybiBhfWZ1bmN0aW9uIGIoZSxuLHIsaSxzKXsib2JqZWN0Ij09dHlwZW9mIHImJiJvYmplY3QiIT10eXBlb2YgaSYmKHM9aSxpPXIscj0wKTt2YXIgYz1vKHN8fHQsYSksbD1jJiZhW2NdW2VdfHx5O3JldHVybiBpWyI9IisgK25dfHxpW2wobi1yKV18fGkub3RoZXJ9ZnVuY3Rpb24geSgpe3JldHVybiJvdGhlciJ9cmV0dXJuIGhbbV09ZyxwLnNldHVwPWZ1bmN0aW9uKGUpe3JldHVybihlPWV8fHt9KS5sb2NhbGUmJih0PWUubG9jYWxlKSwidHJhbnNsYXRpb25zImluIGUmJihsPWUudHJhbnNsYXRpb25zfHx7fSksZS5nZW5lcmF0ZUlkJiYodT1lLmdlbmVyYXRlSWQpLCJtaXNzaW5nUmVwbGFjZW1lbnQiaW4gZSYmKGQ9ZS5taXNzaW5nUmVwbGFjZW1lbnQpLGUubWlzc2luZ1RyYW5zbGF0aW9uJiYoZj1lLm1pc3NpbmdUcmFuc2xhdGlvbiksZS5mb3JtYXRzJiYoZS5mb3JtYXRzLm51bWJlciYmYyhuLm51bWJlcixlLmZvcm1hdHMubnVtYmVyKSxlLmZvcm1hdHMuZGF0ZSYmYyhuLmRhdGUsZS5mb3JtYXRzLmRhdGUpLGUuZm9ybWF0cy50aW1lJiZjKG4udGltZSxlLmZvcm1hdHMudGltZSkpLGUudHlwZXMmJigoaD1lLnR5cGVzKVttXT1nKSx7bG9jYWxlOnQsdHJhbnNsYXRpb25zOmwsZ2VuZXJhdGVJZDp1LG1pc3NpbmdSZXBsYWNlbWVudDpkLG1pc3NpbmdUcmFuc2xhdGlvbjpmLGZvcm1hdHM6bix0eXBlczpofX0scC5udW1iZXI9ZnVuY3Rpb24oZSxyLGkpe3ZhciBhPXImJm4ubnVtYmVyW3JdfHxuLnBhcnNlTnVtYmVyUGF0dGVybihyKXx8bi5udW1iZXIuZGVmYXVsdDtyZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KGl8fHQsYSkuZm9ybWF0KGUpfSxwLmRhdGU9ZnVuY3Rpb24oZSxyLGkpe3ZhciBhPXImJm4uZGF0ZVtyXXx8bi5wYXJzZURhdGVQYXR0ZXJuKHIpfHxuLmRhdGUuZGVmYXVsdDtyZXR1cm4gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoaXx8dCxhKS5mb3JtYXQoZSl9LHAudGltZT1mdW5jdGlvbihlLHIsaSl7dmFyIGE9ciYmbi50aW1lW3JdfHxuLnBhcnNlRGF0ZVBhdHRlcm4ocil8fG4udGltZS5kZWZhdWx0O3JldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChpfHx0LGEpLmZvcm1hdChlKX0scC5zZWxlY3Q9ZnVuY3Rpb24oZSxuKXtyZXR1cm4gbltlXXx8bi5vdGhlcn0scC5jdXN0b209ZnVuY3Rpb24oZSxuLHQscil7cmV0dXJuIGVbMV1pbiBoP2hbZVsxXV0oZSxuKSh0LHIpOnR9LHAucGx1cmFsPWIuYmluZChudWxsLCJjYXJkaW5hbCIpLHAuc2VsZWN0b3JkaW5hbD1iLmJpbmQobnVsbCwib3JkaW5hbCIpLHAubmFtZXNwYWNlPWUscH0oKX0sZnVuY3Rpb24oZSxuLHQpeyJ1c2Ugc3RyaWN0Ijt2YXIgcj1bIm51bWJlciIsImRhdGUiLCJ0aW1lIiwib3JkaW5hbCIsImR1cmF0aW9uIiwic3BlbGxvdXQiXSxpPVsicGx1cmFsIiwic2VsZWN0Iiwic2VsZWN0b3JkaW5hbCJdO2Z1bmN0aW9uIGEoZSxuKXt2YXIgdD1lLnBhdHRlcm4scj10Lmxlbmd0aCxpPVtdLGE9ZS5pbmRleCxzPW8oZSxuKTtmb3IocyYmaS5wdXNoKHMpLHMmJmUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsidGV4dCIsdC5zbGljZShhLGUuaW5kZXgpXSk7ZS5pbmRleDxyOyl7aWYoIn0iPT09dFtlLmluZGV4XSl7aWYoIW4pdGhyb3cgcChlKTticmVha31pZihuJiZlLnRhZ3NUeXBlJiYiPC8iPT09dC5zbGljZShlLmluZGV4LGUuaW5kZXgrIjwvIi5sZW5ndGgpKWJyZWFrO2kucHVzaChsKGUpKSxhPWUuaW5kZXgsKHM9byhlLG4pKSYmaS5wdXNoKHMpLHMmJmUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsidGV4dCIsdC5zbGljZShhLGUuaW5kZXgpXSl9cmV0dXJuIGl9ZnVuY3Rpb24gbyhlLG4pe2Zvcih2YXIgdD1lLnBhdHRlcm4scj10Lmxlbmd0aCxpPSJwbHVyYWwiPT09bnx8InNlbGVjdG9yZGluYWwiPT09bixhPSEhZS50YWdzVHlwZSxvPSJ7c3R5bGV9Ij09PW4sYz0iIjtlLmluZGV4PHI7KXt2YXIgbD10W2UuaW5kZXhdO2lmKCJ7Ij09PWx8fCJ9Ij09PWx8fGkmJiIjIj09PWx8fGEmJiI8Ij09PWx8fG8mJnMobC5jaGFyQ29kZUF0KDApKSlicmVhaztpZigiXCciPT09bClpZigiXCciPT09KGw9dFsrK2UuaW5kZXhdKSljKz1sLCsrZS5pbmRleDtlbHNlIGlmKCJ7Ij09PWx8fCJ9Ij09PWx8fGkmJiIjIj09PWx8fGEmJiI8Ij09PWx8fG8pZm9yKGMrPWw7KytlLmluZGV4PHI7KWlmKCJcJyI9PT0obD10W2UuaW5kZXhdKSYmIlwnIj09PXRbZS5pbmRleCsxXSljKz0iXCciLCsrZS5pbmRleDtlbHNle2lmKCJcJyI9PT1sKXsrK2UuaW5kZXg7YnJlYWt9Yys9bH1lbHNlIGMrPSJcJyI7ZWxzZSBjKz1sLCsrZS5pbmRleH1yZXR1cm4gY31mdW5jdGlvbiBzKGUpe3JldHVybiBlPj05JiZlPD0xM3x8MzI9PT1lfHwxMzM9PT1lfHwxNjA9PT1lfHw2MTU4PT09ZXx8ZT49ODE5MiYmZTw9ODIwNXx8ODIzMj09PWV8fDgyMzM9PT1lfHw4MjM5PT09ZXx8ODI4Nz09PWV8fDgyODg9PT1lfHwxMjI4OD09PWV8fDY1Mjc5PT09ZX1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgbj1lLnBhdHRlcm4sdD1uLmxlbmd0aCxyPWUuaW5kZXg7ZS5pbmRleDx0JiZzKG4uY2hhckNvZGVBdChlLmluZGV4KSk7KSsrZS5pbmRleDtyPGUuaW5kZXgmJmUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsic3BhY2UiLGUucGF0dGVybi5zbGljZShyLGUuaW5kZXgpXSl9ZnVuY3Rpb24gbChlKXt2YXIgbj1lLnBhdHRlcm47aWYoIiMiPT09bltlLmluZGV4XSlyZXR1cm4gZS50b2tlbnMmJmUudG9rZW5zLnB1c2goWyJzeW50YXgiLCIjIl0pLCsrZS5pbmRleCxbIiMiXTt2YXIgdD1mdW5jdGlvbihlKXt2YXIgbj1lLnRhZ3NUeXBlO2lmKCFufHwiPCIhPT1lLnBhdHRlcm5bZS5pbmRleF0pcmV0dXJuO2lmKCI8LyI9PT1lLnBhdHRlcm4uc2xpY2UoZS5pbmRleCxlLmluZGV4KyI8LyIubGVuZ3RoKSl0aHJvdyBwKGUsbnVsbCwiY2xvc2luZyB0YWcgd2l0aG91dCBtYXRjaGluZyBvcGVuaW5nIHRhZyIpO2UudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsic3ludGF4IiwiPCJdKTsrK2UuaW5kZXg7dmFyIHQ9dShlLCEwKTtpZighdCl0aHJvdyBwKGUsInBsYWNlaG9sZGVyIGlkIik7ZS50b2tlbnMmJmUudG9rZW5zLnB1c2goWyJpZCIsdF0pO2lmKGMoZSksIi8+Ij09PWUucGF0dGVybi5zbGljZShlLmluZGV4LGUuaW5kZXgrIi8+Ii5sZW5ndGgpKXJldHVybiBlLnRva2VucyYmZS50b2tlbnMucHVzaChbInN5bnRheCIsIi8+Il0pLGUuaW5kZXgrPSIvPiIubGVuZ3RoLFt0LG5dO2lmKCI+IiE9PWUucGF0dGVybltlLmluZGV4XSl0aHJvdyBwKGUsIj4iKTtlLnRva2VucyYmZS50b2tlbnMucHVzaChbInN5bnRheCIsIj4iXSk7KytlLmluZGV4O3ZhciByPWEoZSxuKSxpPWUuaW5kZXg7aWYoIjwvIiE9PWUucGF0dGVybi5zbGljZShlLmluZGV4LGUuaW5kZXgrIjwvIi5sZW5ndGgpKXRocm93IHAoZSwiPC8iK3QrIj4iKTtlLnRva2VucyYmZS50b2tlbnMucHVzaChbInN5bnRheCIsIjwvIl0pO2UuaW5kZXgrPSI8LyIubGVuZ3RoO3ZhciBvPXUoZSwhMCk7byYmZS50b2tlbnMmJmUudG9rZW5zLnB1c2goWyJpZCIsb10pO2lmKHQhPT1vKXRocm93IGUuaW5kZXg9aSxwKGUsIjwvIit0KyI+IiwiPC8iK28rIj4iKTtpZihjKGUpLCI+IiE9PWUucGF0dGVybltlLmluZGV4XSl0aHJvdyBwKGUsIj4iKTtlLnRva2VucyYmZS50b2tlbnMucHVzaChbInN5bnRheCIsIj4iXSk7cmV0dXJuKytlLmluZGV4LFt0LG4se2NoaWxkcmVuOnJ9XX0oZSk7aWYodClyZXR1cm4gdDtpZigieyIhPT1uW2UuaW5kZXhdKXRocm93IHAoZSwieyIpO2UudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsic3ludGF4IiwieyJdKSwrK2UuaW5kZXgsYyhlKTt2YXIgaT11KGUpO2lmKCFpKXRocm93IHAoZSwicGxhY2Vob2xkZXIgaWQiKTtlLnRva2VucyYmZS50b2tlbnMucHVzaChbImlkIixpXSksYyhlKTt2YXIgbz1uW2UuaW5kZXhdO2lmKCJ9Ij09PW8pcmV0dXJuIGUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsic3ludGF4IiwifSJdKSwrK2UuaW5kZXgsW2ldO2lmKCIsIiE9PW8pdGhyb3cgcChlLCIsIG9yIH0iKTtlLnRva2VucyYmZS50b2tlbnMucHVzaChbInN5bnRheCIsIiwiXSksKytlLmluZGV4LGMoZSk7dmFyIHMsbD11KGUpO2lmKCFsKXRocm93IHAoZSwicGxhY2Vob2xkZXIgdHlwZSIpO2lmKGUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsidHlwZSIsbF0pLGMoZSksIn0iPT09KG89bltlLmluZGV4XSkpe2lmKGUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsic3ludGF4IiwifSJdKSwicGx1cmFsIj09PWx8fCJzZWxlY3RvcmRpbmFsIj09PWx8fCJzZWxlY3QiPT09bCl0aHJvdyBwKGUsbCsiIHN1Yi1tZXNzYWdlcyIpO3JldHVybisrZS5pbmRleCxbaSxsXX1pZigiLCIhPT1vKXRocm93IHAoZSwiLCBvciB9Iik7aWYoZS50b2tlbnMmJmUudG9rZW5zLnB1c2goWyJzeW50YXgiLCIsIl0pLCsrZS5pbmRleCxjKGUpLCJwbHVyYWwiPT09bHx8InNlbGVjdG9yZGluYWwiPT09bCl7dmFyIGg9ZnVuY3Rpb24oZSl7dmFyIG49ZS5wYXR0ZXJuLHQ9bi5sZW5ndGgscj0wO2lmKCJvZmZzZXQ6Ij09PW4uc2xpY2UoZS5pbmRleCxlLmluZGV4KyJvZmZzZXQ6Ii5sZW5ndGgpKXtlLnRva2VucyYmZS50b2tlbnMucHVzaChbIm9mZnNldCIsIm9mZnNldCJdLFsic3ludGF4IiwiOiJdKSxlLmluZGV4Kz0ib2Zmc2V0OiIubGVuZ3RoLGMoZSk7Zm9yKHZhciBpPWUuaW5kZXg7ZS5pbmRleDx0JiYoKGE9bi5jaGFyQ29kZUF0KGUuaW5kZXgpKT49NDgmJmE8PTU3KTspKytlLmluZGV4O2lmKGk9PT1lLmluZGV4KXRocm93IHAoZSwib2Zmc2V0IG51bWJlciIpO2UudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsibnVtYmVyIixuLnNsaWNlKGksZS5pbmRleCldKSxyPStuLnNsaWNlKGksZS5pbmRleCl9dmFyIGE7cmV0dXJuIHJ9KGUpO2MoZSkscz1baSxsLGgsZihlLGwpXX1lbHNlIGlmKCJzZWxlY3QiPT09bClzPVtpLGwsZihlLGwpXTtlbHNlIGlmKHIuaW5kZXhPZihsKT49MClzPVtpLGwsZChlKV07ZWxzZXt2YXIgbT1lLmluZGV4LGc9ZChlKTtjKGUpLCJ7Ij09PW5bZS5pbmRleF0mJihlLmluZGV4PW0sZz1mKGUsbCkpLHM9W2ksbCxnXX1pZihjKGUpLCJ9IiE9PW5bZS5pbmRleF0pdGhyb3cgcChlLCJ9Iik7cmV0dXJuIGUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsic3ludGF4IiwifSJdKSwrK2UuaW5kZXgsc31mdW5jdGlvbiB1KGUsbil7Zm9yKHZhciB0PWUucGF0dGVybixyPXQubGVuZ3RoLGk9IiI7ZS5pbmRleDxyOyl7dmFyIGE9dFtlLmluZGV4XTtpZigieyI9PT1hfHwifSI9PT1hfHwiLCI9PT1hfHwiIyI9PT1hfHwiXCciPT09YXx8cyhhLmNoYXJDb2RlQXQoMCkpfHxuJiYoIjwiPT09YXx8Ij4iPT09YXx8Ii8iPT09YSkpYnJlYWs7aSs9YSwrK2UuaW5kZXh9cmV0dXJuIGl9ZnVuY3Rpb24gZChlKXt2YXIgbj1lLmluZGV4LHQ9byhlLCJ7c3R5bGV9Iik7aWYoIXQpdGhyb3cgcChlLCJwbGFjZWhvbGRlciBzdHlsZSBuYW1lIik7cmV0dXJuIGUudG9rZW5zJiZlLnRva2Vucy5wdXNoKFsic3R5bGUiLGUucGF0dGVybi5zbGljZShuLGUuaW5kZXgpXSksdH1mdW5jdGlvbiBmKGUsbil7Zm9yKHZhciB0PWUucGF0dGVybixyPXQubGVuZ3RoLGE9e307ZS5pbmRleDxyJiYifSIhPT10W2UuaW5kZXhdOyl7dmFyIG89dShlKTtpZighbyl0aHJvdyBwKGUsInN1Yi1tZXNzYWdlIHNlbGVjdG9yIik7ZS50b2tlbnMmJmUudG9rZW5zLnB1c2goWyJzZWxlY3RvciIsb10pLGMoZSksYVtvXT1oKGUsbiksYyhlKX1pZighYS5vdGhlciYmaS5pbmRleE9mKG4pPj0wKXRocm93IHAoZSxudWxsLG51bGwsXCcib3RoZXIiIHN1Yi1tZXNzYWdlIG11c3QgYmUgc3BlY2lmaWVkIGluIFwnK24pO3JldHVybiBhfWZ1bmN0aW9uIGgoZSxuKXtpZigieyIhPT1lLnBhdHRlcm5bZS5pbmRleF0pdGhyb3cgcChlLCJ7IHRvIHN0YXJ0IHN1Yi1tZXNzYWdlIik7ZS50b2tlbnMmJmUudG9rZW5zLnB1c2goWyJzeW50YXgiLCJ7Il0pLCsrZS5pbmRleDt2YXIgdD1hKGUsbik7aWYoIn0iIT09ZS5wYXR0ZXJuW2UuaW5kZXhdKXRocm93IHAoZSwifSB0byBlbmQgc3ViLW1lc3NhZ2UiKTtyZXR1cm4gZS50b2tlbnMmJmUudG9rZW5zLnB1c2goWyJzeW50YXgiLCJ9Il0pLCsrZS5pbmRleCx0fWZ1bmN0aW9uIHAoZSxuLHQscil7dmFyIGk9ZS5wYXR0ZXJuLGE9aS5zbGljZSgwLGUuaW5kZXgpLnNwbGl0KC9cXHI/XFxuLyksbz1lLmluZGV4LHM9YS5sZW5ndGgsYz1hLnNsaWNlKC0xKVswXS5sZW5ndGg7cmV0dXJuIHQ9dHx8KGUuaW5kZXg+PWkubGVuZ3RoPyJlbmQgb2YgbWVzc2FnZSBwYXR0ZXJuIjp1KGUpfHxpW2UuaW5kZXhdKSxyfHwocj1mdW5jdGlvbihlLG4pe3JldHVybiBlPyJFeHBlY3RlZCAiK2UrIiBidXQgZm91bmQgIituOiJVbmV4cGVjdGVkICIrbisiIGZvdW5kIn0obix0KSksbmV3IG0ocis9IiBpbiAiK2kucmVwbGFjZSgvXFxyP1xcbi9nLCJcXG4iKSxuLHQsbyxzLGMpfWZ1bmN0aW9uIG0oZSxuLHQscixpLGEpe0Vycm9yLmNhbGwodGhpcyxlKSx0aGlzLm5hbWU9IlN5bnRheEVycm9yIix0aGlzLm1lc3NhZ2U9ZSx0aGlzLmV4cGVjdGVkPW4sdGhpcy5mb3VuZD10LHRoaXMub2Zmc2V0PXIsdGhpcy5saW5lPWksdGhpcy5jb2x1bW49YX1uPWUuZXhwb3J0cz1mdW5jdGlvbihlLG4pe3JldHVybiBhKHtwYXR0ZXJuOlN0cmluZyhlKSxpbmRleDowLHRhZ3NUeXBlOm4mJm4udGFnc1R5cGV8fG51bGwsdG9rZW5zOm4mJm4udG9rZW5zfHxudWxsfSwiIil9LG0ucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKSxuLlN5bnRheEVycm9yPW19LGZ1bmN0aW9uKGUsbix0KXsidXNlIHN0cmljdCI7dmFyIHI9dCg3KSxpPXQoOCksYT10KDkpO2Z1bmN0aW9uIG8oZSxuLHQscixpKXt2YXIgYT1lLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGUsbix0LHIsaSl7aWYoInN0cmluZyI9PXR5cGVvZiBlKXt2YXIgYT1lO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBhfX12YXIgYyxsPWVbMF0sdT1lWzFdO2lmKG4mJiIjIj09PWVbMF0pe2w9blswXTt2YXIgZD1uWzJdLGg9KHIubnVtYmVyfHxmLm51bWJlcikoW2wsIm51bWJlciJdLHQpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gaChzKGwsZSktZCxlKX19InBsdXJhbCI9PT11fHwic2VsZWN0b3JkaW5hbCI9PT11PyhjPXt9LE9iamVjdC5rZXlzKGVbM10pLmZvckVhY2goKGZ1bmN0aW9uKG4pe2Nbbl09byhlWzNdW25dLGUsdCxyLGkpfSkpLGU9W2VbMF0sZVsxXSxlWzJdLGNdKTplWzJdJiYib2JqZWN0Ij09dHlwZW9mIGVbMl0mJihjPXt9LE9iamVjdC5rZXlzKGVbMl0pLmZvckVhY2goKGZ1bmN0aW9uKG4pe2Nbbl09byhlWzJdW25dLGUsdCxyLGkpfSkpLGU9W2VbMF0sZVsxXSxjXSk7dmFyIHA9dSYmKHJbdV18fGZbdV0pO2lmKHApe3ZhciBtPXAoZSx0KTtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIG0ocyhsLGUpLGUpfX1yZXR1cm4gaT9mdW5jdGlvbihlKXtyZXR1cm4gU3RyaW5nKHMobCxlKSl9OmZ1bmN0aW9uKGUpe3JldHVybiBzKGwsZSl9fShlLG4sdCxyLGkpfSkpO3JldHVybiBpPzE9PT1hLmxlbmd0aD9hWzBdOmZ1bmN0aW9uKGUpe2Zvcih2YXIgbj0iIix0PTA7dDxhLmxlbmd0aDsrK3Qpbis9YVt0XShlKTtyZXR1cm4gbn06ZnVuY3Rpb24oZSl7cmV0dXJuIGEucmVkdWNlKChmdW5jdGlvbihuLHQpe3JldHVybiBuLmNvbmNhdCh0KGUpKX0pLFtdKX19ZnVuY3Rpb24gcyhlLG4pe2lmKG4mJmUgaW4gbilyZXR1cm4gbltlXTtmb3IodmFyIHQ9ZS5zcGxpdCgiLiIpLHI9bixpPTAsYT10Lmxlbmd0aDtyJiZpPGE7KytpKXI9clt0W2ldXTtyZXR1cm4gcn1mdW5jdGlvbiBjKGUsbil7dmFyIHQ9ZVsyXSxpPXIubnVtYmVyW3RdfHxyLnBhcnNlTnVtYmVyUGF0dGVybih0KXx8ci5udW1iZXIuZGVmYXVsdDtyZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KG4saSkuZm9ybWF0fWZ1bmN0aW9uIGwoZSxuKXt2YXIgdD1lWzFdLGk9ZVsyXSxhPXJbdF1baV18fHIucGFyc2VEYXRlUGF0dGVybihpKXx8clt0XS5kZWZhdWx0O3JldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChuLGEpLmZvcm1hdH1mdW5jdGlvbiB1KGUsbil7dmFyIHQscj0ic2VsZWN0b3JkaW5hbCI9PT1lWzFdPyJvcmRpbmFsIjoiY2FyZGluYWwiLG89ZVsyXSxzPWVbM107aWYoSW50bC5QbHVyYWxSdWxlcyYmSW50bC5QbHVyYWxSdWxlcy5zdXBwb3J0ZWRMb2NhbGVzT2YobikubGVuZ3RoPjApdD1uZXcgSW50bC5QbHVyYWxSdWxlcyhuLHt0eXBlOnJ9KTtlbHNle3ZhciBjPWkobixhKSxsPWMmJmFbY11bcl18fGQ7dD17c2VsZWN0Omx9fXJldHVybiBmdW5jdGlvbihlLG4pe3JldHVybihzWyI9IisgK2VdfHxzW3Quc2VsZWN0KGUtbyldfHxzLm90aGVyKShuKX19ZnVuY3Rpb24gZCgpe3JldHVybiJvdGhlciJ9KG49ZS5leHBvcnRzPWZ1bmN0aW9uKGUsbix0KXtyZXR1cm4gbyhlLG51bGwsbnx8ImVuIix0fHx7fSwhMCl9KS50b1BhcnRzPWZ1bmN0aW9uKGUsbix0KXtyZXR1cm4gbyhlLG51bGwsbnx8ImVuIix0fHx7fSwhMSl9O3ZhciBmPXtudW1iZXI6YyxvcmRpbmFsOmMsc3BlbGxvdXQ6YyxkdXJhdGlvbjpmdW5jdGlvbihlLG4pe3ZhciB0PWVbMl0saT1yLmR1cmF0aW9uW3RdfHxyLmR1cmF0aW9uLmRlZmF1bHQsYT1uZXcgSW50bC5OdW1iZXJGb3JtYXQobixpLnNlY29uZHMpLmZvcm1hdCxvPW5ldyBJbnRsLk51bWJlckZvcm1hdChuLGkubWludXRlcykuZm9ybWF0LHM9bmV3IEludGwuTnVtYmVyRm9ybWF0KG4saS5ob3VycykuZm9ybWF0LGM9L15maSR8XmZpLXxeZGEvLnRlc3QoU3RyaW5nKG4pKT8iLiI6IjoiO3JldHVybiBmdW5jdGlvbihlLG4pe2lmKGU9K2UsIWlzRmluaXRlKGUpKXJldHVybiBhKGUpO3ZhciB0PX5+KGUvNjAvNjApLHI9fn4oZS82MCU2MCksaT0odD9zKE1hdGguYWJzKHQpKStjOiIiKStvKE1hdGguYWJzKHIpKStjK2EoTWF0aC5hYnMoZSU2MCkpO3JldHVybiBlPDA/cygtMSkucmVwbGFjZShzKDEpLGkpOml9fSxkYXRlOmwsdGltZTpsLHBsdXJhbDp1LHNlbGVjdG9yZGluYWw6dSxzZWxlY3Q6ZnVuY3Rpb24oZSxuKXt2YXIgdD1lWzJdO3JldHVybiBmdW5jdGlvbihlLG4pe3JldHVybih0W2VdfHx0Lm90aGVyKShuKX19fTtuLnR5cGVzPWZ9XSk7JyxudWxsKX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMjcpLGk9dCgyMikscj10KDE5KSxvPXQoNDcpLHM9dCg5KSx7TWFwOmF9PXQoMzQpLEI9dCg1KSxjPXQoMTEpLGc9dCgxMDIpLEU9dCg2Mik7QS5leHBvcnRzPWNsYXNzIGV4dGVuZHMgbntjb25zdHJ1Y3RvcihBLGUpe3N1cGVyKCksZXx8KGU9bmV3IGkoQSkpLHRoaXMucnVudGltZT1BLHRoaXMuaWQ9cygpLHRoaXMuYmxvY2tzPWUsdGhpcy52YXJpYWJsZXM9e30sdGhpcy5jb21tZW50cz17fSx0aGlzLl9jdXN0b21TdGF0ZT17fSx0aGlzLl9lZGdlQWN0aXZhdGVkSGF0VmFsdWVzPXt9LHRoaXMuZXh0ZW5zaW9uU3RvcmFnZT1FKCl9b25HcmVlbkZsYWcoKXt9Z2V0TmFtZSgpe3JldHVybiB0aGlzLmlkfXVwZGF0ZUVkZ2VBY3RpdmF0ZWRWYWx1ZShBLGUpe2NvbnN0IHQ9dGhpcy5fZWRnZUFjdGl2YXRlZEhhdFZhbHVlc1tBXTtyZXR1cm4gdGhpcy5fZWRnZUFjdGl2YXRlZEhhdFZhbHVlc1tBXT1lLHR9aGFzRWRnZUFjdGl2YXRlZFZhbHVlKEEpe3JldHVybiB0aGlzLl9lZGdlQWN0aXZhdGVkSGF0VmFsdWVzLmhhc093blByb3BlcnR5KEEpfWNsZWFyRWRnZUFjdGl2YXRlZFZhbHVlcygpe3RoaXMuX2VkZ2VBY3RpdmF0ZWRIYXRWYWx1ZXM9e319bG9va3VwT3JDcmVhdGVWYXJpYWJsZShBLGUpe2xldCB0PXRoaXMubG9va3VwVmFyaWFibGVCeUlkKEEpO2lmKHQpcmV0dXJuIHQ7aWYodD10aGlzLmxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZShlLHIuU0NBTEFSX1RZUEUpLHQpcmV0dXJuIHQ7Y29uc3Qgbj1uZXcgcihBLGUsci5TQ0FMQVJfVFlQRSwhMSk7cmV0dXJuIHRoaXMudmFyaWFibGVzW0FdPW4sbn1sb29rdXBCcm9hZGNhc3RNc2coQSxlKXtsZXQgdDtpZihBP3Q9dGhpcy5sb29rdXBWYXJpYWJsZUJ5SWQoQSk6ZT90PXRoaXMubG9va3VwQnJvYWRjYXN0QnlJbnB1dFZhbHVlKGUpOkIuZXJyb3IoIkNhbm5vdCBmaW5kIGJyb2FkY2FzdCBtZXNzYWdlIGlmIG5laXRoZXIgaWQgbm9yIG5hbWUgYXJlIHByb3ZpZGVkLiIpLHQpcmV0dXJuIGUmJnQubmFtZS50b0xvd2VyQ2FzZSgpIT09ZS50b0xvd2VyQ2FzZSgpJiZCLmVycm9yKCJGb3VuZCBicm9hZGNhc3QgbWVzc2FnZSB3aXRoIGlkOiAiLmNvbmNhdChBLCIsIGJ1dCIpKyJpdHMgbmFtZSwgIi5jb25jYXQodC5uYW1lLCIgZGlkIG5vdCBtYXRjaCBleHBlY3RlZCBuYW1lICIpLmNvbmNhdChlLCIuIikpLHQudHlwZSE9PXIuQlJPQURDQVNUX01FU1NBR0VfVFlQRSYmQi5lcnJvcigiRm91bmQgdmFyaWFibGUgd2l0aCBpZDogIi5jb25jYXQoQSwiLCBidXQgaXRzIHR5cGUgIikuY29uY2F0KHQudHlwZSkrImRpZCBub3QgbWF0Y2ggZXhwZWN0ZWQgdHlwZSAiLmNvbmNhdChyLkJST0FEQ0FTVF9NRVNTQUdFX1RZUEUpKSx0fWxvb2t1cEJyb2FkY2FzdEJ5SW5wdXRWYWx1ZShBKXtyZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLnZhcmlhYmxlcykuZmluZChlPT5lLnR5cGU9PT1yLkJST0FEQ0FTVF9NRVNTQUdFX1RZUEUmJmUubmFtZS50b0xvd2VyQ2FzZSgpPT09QS50b0xvd2VyQ2FzZSgpKX1sb29rdXBWYXJpYWJsZUJ5SWQoQSl7aWYodGhpcy52YXJpYWJsZXMuaGFzT3duUHJvcGVydHkoQSkpcmV0dXJuIHRoaXMudmFyaWFibGVzW0FdO2lmKHRoaXMucnVudGltZSYmIXRoaXMuaXNTdGFnZSl7Y29uc3QgZT10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtpZihlJiZlLnZhcmlhYmxlcy5oYXNPd25Qcm9wZXJ0eShBKSlyZXR1cm4gZS52YXJpYWJsZXNbQV19fWxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZShBLGUsdCl7aWYoInN0cmluZyIhPXR5cGVvZiBBKXJldHVybjsic3RyaW5nIiE9dHlwZW9mIGUmJihlPXIuU0NBTEFSX1RZUEUpLHQ9dHx8ITE7Y29uc3Qgbj1PYmplY3QudmFsdWVzKHRoaXMudmFyaWFibGVzKS5maW5kKHQ9PnQubmFtZT09PUEmJnQudHlwZT09PWUpO2lmKG4pcmV0dXJuIG47aWYoIXQmJnRoaXMucnVudGltZSYmIXRoaXMuaXNTdGFnZSl7Y29uc3QgdD10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKTtpZih0KXtjb25zdCBuPU9iamVjdC52YWx1ZXModC52YXJpYWJsZXMpLmZpbmQodD0+dC5uYW1lPT09QSYmdC50eXBlPT09ZSk7aWYobilyZXR1cm4gbn19cmV0dXJuIG51bGx9bG9va3VwT3JDcmVhdGVMaXN0KEEsZSl7bGV0IHQ9dGhpcy5sb29rdXBWYXJpYWJsZUJ5SWQoQSk7aWYodClyZXR1cm4gdDtpZih0PXRoaXMubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKGUsci5MSVNUX1RZUEUpLHQpcmV0dXJuIHQ7Y29uc3Qgbj1uZXcgcihBLGUsci5MSVNUX1RZUEUsITEpO3JldHVybiB0aGlzLnZhcmlhYmxlc1tBXT1uLG59Y3JlYXRlVmFyaWFibGUoQSxlLHQsbil7aWYoIXRoaXMudmFyaWFibGVzLmhhc093blByb3BlcnR5KEEpKXtjb25zdCBpPXRoaXMucnVudGltZS5uZXdWYXJpYWJsZUluc3RhbmNlKHQsQSxlLCExKTtuJiZ0aGlzLmlzU3RhZ2UmJnRoaXMucnVudGltZS5jYW5BZGRDbG91ZFZhcmlhYmxlKCkmJihpLmlzQ2xvdWQ9ITAsdGhpcy5ydW50aW1lLmFkZENsb3VkVmFyaWFibGUoKSx0aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLmNsb3VkLnJlcXVlc3RDcmVhdGVWYXJpYWJsZShpKSksdGhpcy52YXJpYWJsZXNbQV09aX19Y3JlYXRlQ29tbWVudChBLGUsdCxuLGkscixzLGEpe2lmKCF0aGlzLmNvbW1lbnRzLmhhc093blByb3BlcnR5KEEpKXtjb25zdCBjPW5ldyBvKEEsdCxuLGkscixzLGEpO2lmKGUpe2MuYmxvY2tJZD1lO2NvbnN0IHQ9dGhpcy5ibG9ja3MuZ2V0QmxvY2soZSk7dD90LmNvbW1lbnQ9QTpCLndhcm4oIkNvdWxkIG5vdCBmaW5kIGJsb2NrIHdpdGggaWQgIi5jb25jYXQoZSwiIGFzc29jaWF0ZWQgd2l0aCBjb21tZW50SWQ6ICIpLmNvbmNhdChBKSl9dGhpcy5jb21tZW50c1tBXT1jfX1yZW5hbWVWYXJpYWJsZShBLGUpe2lmKHRoaXMudmFyaWFibGVzLmhhc093blByb3BlcnR5KEEpKXtjb25zdCB0PXRoaXMudmFyaWFibGVzW0FdO2lmKHQuaWQ9PT1BKXtjb25zdCBuPXQubmFtZTtpZih0Lm5hbWU9ZSx0aGlzLnJ1bnRpbWUpe2lmKHQuaXNDbG91ZCYmdGhpcy5pc1N0YWdlJiZ0aGlzLnJ1bnRpbWUuaW9EZXZpY2VzLmNsb3VkLnJlcXVlc3RSZW5hbWVWYXJpYWJsZShuLGUpLHQudHlwZT09PXIuU0NBTEFSX1RZUEUpe2xldCBBPSExO3RoaXMucnVudGltZS50YXJnZXRzLmZvckVhY2godD0+e0E9dC5ibG9ja3MudXBkYXRlU2Vuc2luZ09mUmVmZXJlbmNlKG4sZSx0aGlzLmlzU3RhZ2U/Il9zdGFnZV8iOnRoaXMuZ2V0TmFtZSgpKXx8QX0pLEEmJnRoaXMucnVudGltZS5yZXF1ZXN0QmxvY2tzVXBkYXRlKCl9Y29uc3QgaT10aGlzLnJ1bnRpbWUubW9uaXRvckJsb2NrcztpLmNoYW5nZUJsb2NrKHtpZDpBLGVsZW1lbnQ6ImZpZWxkIixuYW1lOnQudHlwZT09PXIuTElTVF9UWVBFPyJMSVNUIjoiVkFSSUFCTEUiLHZhbHVlOkF9LHRoaXMucnVudGltZSk7Y29uc3Qgbz1pLmdldEJsb2NrKHQuaWQpO28mJnRoaXMucnVudGltZS5yZXF1ZXN0VXBkYXRlTW9uaXRvcihhKHtpZDpBLHBhcmFtczppLl9nZXRCbG9ja1BhcmFtcyhvKX0pKX19fX1kZWxldGVWYXJpYWJsZShBKXtpZih0aGlzLnZhcmlhYmxlcy5oYXNPd25Qcm9wZXJ0eShBKSl7Y29uc3QgZT10aGlzLnZhcmlhYmxlc1tBXS5uYW1lLHQ9dGhpcy52YXJpYWJsZXNbQV0uaXNDbG91ZDtkZWxldGUgdGhpcy52YXJpYWJsZXNbQV0sdGhpcy5ydW50aW1lJiYodCYmdGhpcy5pc1N0YWdlJiYodGhpcy5ydW50aW1lLmlvRGV2aWNlcy5jbG91ZC5yZXF1ZXN0RGVsZXRlVmFyaWFibGUoZSksdGhpcy5ydW50aW1lLnJlbW92ZUNsb3VkVmFyaWFibGUoKSksdGhpcy5ydW50aW1lLm1vbml0b3JCbG9ja3MuZGVsZXRlQmxvY2soQSksdGhpcy5ydW50aW1lLnJlcXVlc3RSZW1vdmVNb25pdG9yKEEpKX19ZGVsZXRlTW9uaXRvcnMoKXtsZXQgQTt0aGlzLnJ1bnRpbWUucmVxdWVzdFJlbW92ZU1vbml0b3JCeVRhcmdldElkKHRoaXMuaWQpLEE9dGhpcy5pc1N0YWdlP09iamVjdC5rZXlzKHRoaXMudmFyaWFibGVzKTpPYmplY3Qua2V5cyh0aGlzLnJ1bnRpbWUubW9uaXRvckJsb2Nrcy5fYmxvY2tzKS5maWx0ZXIoQT0+dGhpcy5ydW50aW1lLm1vbml0b3JCbG9ja3MuX2Jsb2Nrc1tBXS50YXJnZXRJZD09PXRoaXMuaWQpO2Zvcihjb25zdCBlIG9mIEEpdGhpcy5ydW50aW1lLm1vbml0b3JCbG9ja3MuZGVsZXRlQmxvY2soZSl9ZHVwbGljYXRlVmFyaWFibGUoQSxlKXtpZih0aGlzLnZhcmlhYmxlcy5oYXNPd25Qcm9wZXJ0eShBKSl7Y29uc3QgdD10aGlzLnZhcmlhYmxlc1tBXSxuPXRoaXMucnVudGltZS5uZXdWYXJpYWJsZUluc3RhbmNlKHQudHlwZSxlP0E6bnVsbCx0Lm5hbWUsdC5pc0Nsb3VkKTtyZXR1cm4gbi50eXBlPT09ci5MSVNUX1RZUEU/bi52YWx1ZT10LnZhbHVlLnNsaWNlKDApOm4udmFsdWU9dC52YWx1ZSxufXJldHVybiBudWxsfWR1cGxpY2F0ZVZhcmlhYmxlcyhBKXtsZXQgZTtyZXR1cm4gQSYmKGU9QS5nZXRBbGxWYXJpYWJsZUFuZExpc3RSZWZlcmVuY2VzKCkpLE9iamVjdC5rZXlzKHRoaXMudmFyaWFibGVzKS5yZWR1Y2UoKHQsbik9Pntjb25zdCBpPXRoaXMuZHVwbGljYXRlVmFyaWFibGUobiwhQSk7aWYodFtpLmlkXT1pLEEmJmUpe2NvbnN0IEE9ZVtuXTtBJiZ0aGlzLm1lcmdlVmFyaWFibGVzKG4saS5pZCxBKX1yZXR1cm4gdH0se30pfXBvc3RTcHJpdGVJbmZvKCl7fWdldEN1c3RvbVN0YXRlKEEpe3JldHVybiB0aGlzLl9jdXN0b21TdGF0ZVtBXX1zZXRDdXN0b21TdGF0ZShBLGUpe3RoaXMuX2N1c3RvbVN0YXRlW0FdPWV9ZGlzcG9zZSgpe3RoaXMuX2N1c3RvbVN0YXRlPXt9LHRoaXMucnVudGltZSYmdGhpcy5ydW50aW1lLnJlbW92ZUV4ZWN1dGFibGUodGhpcyl9Z2V0QWxsVmFyaWFibGVOYW1lc0luU2NvcGVCeVR5cGUoQSxlKXsic3RyaW5nIiE9dHlwZW9mIEEmJihBPXIuU0NBTEFSX1RZUEUpLGU9ZXx8ITE7Y29uc3QgdD1PYmplY3QudmFsdWVzKHRoaXMudmFyaWFibGVzKS5maWx0ZXIoZT0+ZS50eXBlPT09QSkubWFwKEE9PkEubmFtZSk7aWYoZXx8dGhpcy5pc1N0YWdlfHwhdGhpcy5ydW50aW1lKXJldHVybiB0O2NvbnN0IG49dGhpcy5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkuZ2V0QWxsVmFyaWFibGVOYW1lc0luU2NvcGVCeVR5cGUoQSk7cmV0dXJuIHQuY29uY2F0KG4pfW1lcmdlVmFyaWFibGVzKEEsZSx0LG4pe2NvbnN0IGk9dHx8dGhpcy5ibG9ja3MuZ2V0QWxsVmFyaWFibGVBbmRMaXN0UmVmZXJlbmNlcygpW0FdO2cudXBkYXRlVmFyaWFibGVJZGVudGlmaWVycyhpLGUsbil9c2hhcmVMb2NhbFZhcmlhYmxlVG9TdGFnZShBLGUpe2lmKCF0aGlzLnJ1bnRpbWUpcmV0dXJuO2NvbnN0IHQ9dGhpcy52YXJpYWJsZXNbQV07aWYoIXQpcmV0dXJuIHZvaWQgQi53YXJuKCJDYW5ub3Qgc2hhcmUgYSBsb2NhbCB2YXJpYWJsZSB0byB0aGUgc3RhZ2UgaWYgaXQncyBub3QgbG9jYWwuIik7Y29uc3Qgbj10aGlzLnJ1bnRpbWUuZ2V0VGFyZ2V0Rm9yU3RhZ2UoKSxpPSJTdGFnZVZhckZyb21Mb2NhbF8iLmNvbmNhdChBKTtsZXQgcj1uLmxvb2t1cFZhcmlhYmxlQnlJZChpKTtpZighcil7Y29uc3QgQT10Lm5hbWUsZT10LnR5cGUsbj0iU3RhZ2U6ICIuY29uY2F0KEEpO3I9dGhpcy5ydW50aW1lLmNyZWF0ZU5ld0dsb2JhbFZhcmlhYmxlKG4saSxlKX10aGlzLm1lcmdlVmFyaWFibGVzKEEsci5pZCxlLHIubmFtZSl9c2hhcmVMb2NhbFZhcmlhYmxlVG9TcHJpdGUoQSxlLHQpe2lmKCF0aGlzLnJ1bnRpbWUpcmV0dXJuO2lmKHRoaXMuaXNTdGFnZSlyZXR1cm47Y29uc3Qgbj10aGlzLnZhcmlhYmxlc1tBXTtpZighbilyZXR1cm4gdm9pZCBCLndhcm4oIlRyaWVkIHRvIGNhbGwgJ3NoYXJlTG9jYWxWYXJpYWJsZVRvU3ByaXRlJyB3aXRoIGEgbm9uLWxvY2FsIHZhcmlhYmxlLiIpO2NvbnN0IGk9bi5uYW1lLHI9bi50eXBlLG89ZS5sb29rdXBWYXJpYWJsZUJ5TmFtZUFuZFR5cGUoaSxyKTtsZXQgcztpZihvKXM9by5pZDtlbHNle2NvbnN0IEE9dGhpcy5ydW50aW1lLm5ld1ZhcmlhYmxlSW5zdGFuY2UocixudWxsLGkpO3M9QS5pZCxlLnZhcmlhYmxlc1tzXT1BfXRoaXMubWVyZ2VWYXJpYWJsZXMoQSxzLHQpfXJlc29sdmVWYXJpYWJsZVNoYXJpbmdDb25mbGljdHNXaXRoVGFyZ2V0KEEsZSl7aWYodGhpcy5pc1N0YWdlKXJldHVybjtjb25zdCB0PXRoaXMuYmxvY2tzLmdldEFsbFZhcmlhYmxlQW5kTGlzdFJlZmVyZW5jZXMoQSk7Zm9yKGNvbnN0IEEgaW4gdCl7aWYoIXRoaXMudmFyaWFibGVzW0FdKWNvbnRpbnVlO2NvbnN0IG49dFtBXTtlLmlzU3RhZ2U/dGhpcy5zaGFyZUxvY2FsVmFyaWFibGVUb1N0YWdlKEEsbik6dGhpcy5zaGFyZUxvY2FsVmFyaWFibGVUb1Nwcml0ZShBLGUsbil9fWZpeFVwVmFyaWFibGVSZWZlcmVuY2VzKCl7aWYoIXRoaXMucnVudGltZSlyZXR1cm47aWYodGhpcy5pc1N0YWdlKXJldHVybjtjb25zdCBBPXRoaXMucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpO2lmKCFBfHwhQS52YXJpYWJsZXMpcmV0dXJuO2NvbnN0IGU9KGUsdCxuKT0+e2lmKEEubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKHQsbikpe2NvbnN0IEE9Yy51bnVzZWROYW1lKCIiLmNvbmNhdCh0aGlzLmdldE5hbWUoKSwiOiAiKS5jb25jYXQodCksdGhpcy5nZXRBbGxWYXJpYWJsZU5hbWVzSW5TY29wZUJ5VHlwZShuKSk7cmV0dXJuIHRoaXMucmVuYW1lVmFyaWFibGUoZSxBKSxBfXJldHVybiBudWxsfSx0PXRoaXMuYmxvY2tzLmdldEFsbFZhcmlhYmxlQW5kTGlzdFJlZmVyZW5jZXMoKSxuPVtdO2lmKE9iamVjdC5rZXlzKHRoaXMudmFyaWFibGVzKS5sZW5ndGg+MClmb3IoY29uc3QgQSBpbiB0aGlzLnZhcmlhYmxlcyl0aGlzLnZhcmlhYmxlcy5oYXNPd25Qcm9wZXJ0eShBKSYmKHRbQV18fG4ucHVzaChBKSk7Y29uc3QgaT1PYmplY3QuY3JlYXRlKG51bGwpLHI9T2JqZWN0LmNyZWF0ZShudWxsKSxvPXt9LHM9QT0+e2NvbnN0IGU9b1tBXTtyZXR1cm4gZXx8KG9bQV09dGhpcy5ydW50aW1lLmdldEFsbFZhck5hbWVzT2ZUeXBlKEEpLG9bQV0pfTtmb3IoY29uc3QgbiBpbiB0KXtjb25zdCBvPXRbbl1bMF0sYT1vLnJlZmVyZW5jaW5nRmllbGQudmFsdWUsQj1vLnR5cGU7aWYodGhpcy5sb29rdXBWYXJpYWJsZUJ5SWQobikpe2lmKHRoaXMudmFyaWFibGVzLmhhc093blByb3BlcnR5KG4pKXtjb25zdCBBPWUobixhLEIpO0EmJnRbbl0ubWFwKGU9PihlLnJlZmVyZW5jaW5nRmllbGQudmFsdWU9QSxlKSl9fWVsc2V7Y29uc3QgZT1BLmxvb2t1cFZhcmlhYmxlQnlOYW1lQW5kVHlwZShhLEIpO2lmKGUpaVtuXXx8KGlbbl09ZS5pZCk7ZWxzZXtjb25zdCBlPXMoQiksdD1jLnVudXNlZE5hbWUoYSxlKTtBLmNyZWF0ZVZhcmlhYmxlKG4sdCxCKSxyW25dfHwocltuXT10KX19fWZvcihjb25zdCBBIGluIG4pe2NvbnN0IHQ9bltBXTtlKHQsdGhpcy52YXJpYWJsZXNbdF0ubmFtZSx0aGlzLnZhcmlhYmxlc1t0XS50eXBlKX1mb3IoY29uc3QgQSBpbiBpKXtjb25zdCBlPWlbQV0sbj10W0FdO3RoaXMubWVyZ2VWYXJpYWJsZXMoQSxlLG4pfWZvcihjb25zdCBBIGluIHIpe2NvbnN0IGU9cltBXTt0W0FdLm1hcChBPT4oQS5yZWZlcmVuY2luZ0ZpZWxkLnZhbHVlPWUsQSkpfX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3R7aW5saW5lU3ZnRm9udHM6bn09dCgzMSk7QS5leHBvcnRzPUE9PntpZigiSW1hZ2VWZWN0b3IiPT09QS5hc3NldFR5cGUubmFtZSl7Y29uc3QgZT1BLmRlY29kZVRleHQoKTtpZihlLm1hdGNoKCdmb250LWZhbWlseSg/IT0ibm9uZSIpJykpe2NvbnN0IEE9bihlKTtyZXR1cm4iZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsIi5jb25jYXQoZW5jb2RlVVJJQ29tcG9uZW50KEEpKX19cmV0dXJuIEEuZW5jb2RlRGF0YVVSSSgpfX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxMDMpLGk9dCgxMDYpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLl9jYW52YXM9QXx8ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIiksdGhpcy5fY29udGV4dD10aGlzLl9jYW52YXMuZ2V0Q29udGV4dCgiMmQiKSx0aGlzLl9tZWFzdXJlbWVudHM9e3g6MCx5OjAsd2lkdGg6MCxoZWlnaHQ6MH0sdGhpcy5fY2FjaGVkSW1hZ2U9bnVsbCx0aGlzLmxvYWRlZD0hMX1nZXQgY2FudmFzKCl7cmV0dXJuIHRoaXMuX2NhbnZhc31nZXQgc2l6ZSgpe3JldHVyblt0aGlzLl9tZWFzdXJlbWVudHMud2lkdGgsdGhpcy5fbWVhc3VyZW1lbnRzLmhlaWdodF19Z2V0IHZpZXdPZmZzZXQoKXtyZXR1cm5bdGhpcy5fbWVhc3VyZW1lbnRzLngsdGhpcy5fbWVhc3VyZW1lbnRzLnldfWxvYWRTdHJpbmcoQSxlKXt0aGlzLl9jYWNoZWRJbWFnZT1udWxsO2NvbnN0IHQ9bihBLGUpO3RoaXMuX3N2Z1RhZz10LHRoaXMuX21lYXN1cmVtZW50cz17d2lkdGg6dC52aWV3Qm94LmJhc2VWYWwud2lkdGgsaGVpZ2h0OnQudmlld0JveC5iYXNlVmFsLmhlaWdodCx4OnQudmlld0JveC5iYXNlVmFsLngseTp0LnZpZXdCb3guYmFzZVZhbC55fX1sb2FkU1ZHKEEsZSx0KXt0aGlzLmxvYWRTdHJpbmcoQSxlKSx0aGlzLl9jcmVhdGVTVkdJbWFnZSh0KX1fY3JlYXRlU1ZHSW1hZ2UoQSl7bnVsbD09PXRoaXMuX2NhY2hlZEltYWdlJiYodGhpcy5fY2FjaGVkSW1hZ2U9bmV3IEltYWdlKTtjb25zdCBlPXRoaXMuX2NhY2hlZEltYWdlO2Uub25sb2FkPSgpPT57dGhpcy5sb2FkZWQ9ITAsQSYmQSgpfTtjb25zdCB0PXRoaXMudG9TdHJpbmcoITApO2Uuc3JjPSJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCwiLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQodCkpLHRoaXMubG9hZGVkPSExfXRvU3RyaW5nKEEpe3JldHVybiBpKHRoaXMuX3N2Z1RhZyxBKX1kcmF3KEEpe2lmKCF0aGlzLmxvYWRlZCl0aHJvdyBuZXcgRXJyb3IoIlNWRyBpbWFnZSBoYXMgbm90IGZpbmlzaGVkIGxvYWRpbmciKTt0aGlzLl9kcmF3RnJvbUltYWdlKEEpfV9kcmF3RnJvbUltYWdlKEEpe2lmKG51bGw9PT10aGlzLl9jYWNoZWRJbWFnZSlyZXR1cm47Y29uc3QgZT1OdW1iZXIuaXNGaW5pdGUoQSk/QToxLHQ9dGhpcy5fbWVhc3VyZW1lbnRzO3RoaXMuX2NhbnZhcy53aWR0aD10LndpZHRoKmUsdGhpcy5fY2FudmFzLmhlaWdodD10LmhlaWdodCplLHRoaXMuX2NhbnZhcy53aWR0aDw9MHx8dGhpcy5fY2FudmFzLmhlaWdodDw9MHx8dGhpcy5fY2FjaGVkSW1hZ2UubmF0dXJhbFdpZHRoPD0wfHx0aGlzLl9jYWNoZWRJbWFnZS5uYXR1cmFsSGVpZ2h0PD0wfHwodGhpcy5fY29udGV4dC5jbGVhclJlY3QoMCwwLHRoaXMuX2NhbnZhcy53aWR0aCx0aGlzLl9jYW52YXMuaGVpZ2h0KSx0aGlzLl9jb250ZXh0LnNldFRyYW5zZm9ybShlLDAsMCxlLDAsMCksdGhpcy5fY29udGV4dC5kcmF3SW1hZ2UodGhpcy5fY2FjaGVkSW1hZ2UsMCwwKSl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0MTcpLGk9dCg3MCkscj10KDQxOCksbz1mdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5yb3VuZCgxZTQqQSkvMWU0fSxzPWZ1bmN0aW9uKEEpe2xldCBlPW4uaWRlbnRpdHkoKTtjb25zdCB0PUEuYXR0cmlidXRlcyYmQS5hdHRyaWJ1dGVzLnRyYW5zZm9ybSYmQS5hdHRyaWJ1dGVzLnRyYW5zZm9ybS52YWx1ZTtpZighdClyZXR1cm4gZTtjb25zdCBpPXQuc3BsaXQoL1wpXHMqL2cpO2Zvcihjb25zdCBBIG9mIGkpe2lmKCFBKWJyZWFrO2NvbnN0IHQ9QS5zcGxpdCgvXChccyovKSxpPXRbMF0udHJpbSgpLG89dFsxXS5zcGxpdCgvW1xzLF0rL2cpO2ZvcihsZXQgQT0wO0E8by5sZW5ndGg7QSsrKW9bQV09cGFyc2VGbG9hdChvW0FdKTtzd2l0Y2goaSl7Y2FzZSJtYXRyaXgiOmU9bi5jb21wb3NlKGUse2E6b1swXSxiOm9bMV0sYzpvWzJdLGQ6b1szXSxlOm9bNF0sZjpvWzVdfSk7YnJlYWs7Y2FzZSJyb3RhdGUiOmU9bi5jb21wb3NlKGUsbi5yb3RhdGVERUcob1swXSxvWzFdfHwwLG9bMl18fDApKTticmVhaztjYXNlInRyYW5zbGF0ZSI6ZT1uLmNvbXBvc2UoZSxuLnRyYW5zbGF0ZShvWzBdLG9bMV18fDApKTticmVhaztjYXNlInNjYWxlIjplPW4uY29tcG9zZShlLG4uc2NhbGUob1swXSxvWzFdfHxvWzBdKSk7YnJlYWs7Y2FzZSJza2V3WCI6ZT1uLmNvbXBvc2UoZSxuLnNrZXdERUcob1swXSwwKSk7YnJlYWs7Y2FzZSJza2V3WSI6ZT1uLmNvbXBvc2UoZSxuLnNrZXdERUcoMCxvWzBdKSk7YnJlYWs7ZGVmYXVsdDpyLmVycm9yKCJDb3VsZG4ndCBwYXJzZTogIi5jb25jYXQoaSkpfX1yZXR1cm4gZX0sYT1mdW5jdGlvbihBKXtjb25zdCBlPUEuYSx0PUEuYixuPUEuYyxpPUEuZCxyPWUqaS10Km47aWYoMCE9PWV8fDAhPT10KXtjb25zdCBBPU1hdGguc3FydChlKmUrdCp0KTtyZXR1cm57eDpBLHk6ci9BfX1pZigwIT09bnx8MCE9PWkpe2NvbnN0IEE9TWF0aC5zcXJ0KG4qbitpKmkpO3JldHVybnt4OnIvQSx5OkF9fXJldHVybnt4OjAseTowfX0sQj1mdW5jdGlvbihBLGUsdCxuKXt0PS10Kk1hdGguUEkvMTgwO2NvbnN0IGk9bi5hLHI9LW4uYyxvPS1uLmIscz1uLmQsYT1pKnMtcipvO2lmKDA9PT1hKXJldHVybiBudWxsO2NvbnN0IEI9TWF0aC5zaW4odCksYz1NYXRoLmNvcyh0KSxnPU1hdGguc2luKDIqdCksRT1jKmMvQS9BK0IqQi9lL2UsUT1nL0EvQS1nL2UvZSx1PUIqQi9BL0ErYypjL2UvZSxsPUUqcypzLVEqcypvK3UqbypvLGg9LTIqRSpyKnMrUSppKnMrUSpyKm8tMip1Kmkqbyx3PUUqcipyLVEqaSpyK3UqaSppLEM9TWF0aC5zcXJ0KDIpKk1hdGguc3FydCgobCt3LU1hdGguc3FydChsKmwraCpoLTIqbCp3K3cqdykpLygtaCpoKzQqbCp3KSksST0xL01hdGguc3FydChsK3ctMS9DL0MpO2xldCBNPShsLTEvQy9DKS8oMS9JL0ktMS9DL0MpO008MCYmTWF0aC5hYnMoTSk8MWUtOCYmKE09MCksTT1NYXRoLnNxcnQoTSksTWF0aC5hYnMoMS1NKTwxZS04JiYoTT0xKTtsZXQgZD1NYXRoLmFzaW4oTSk7TT1oLygxL0MvQy0xL0kvSSk7Y29uc3QgcD0tZDtyZXR1cm4gTWF0aC5hYnMoTWF0aC5zaW4oMipwKS1NKTxNYXRoLmFicyhNYXRoLnNpbigyKmQpLU0pJiYoZD1wKSx7cmFkaXVzWDpDKmEscmFkaXVzWTpJKmEscm90YXRpb246MTgwKi1kL01hdGguUEl9fSxjPVsiY2lyY2xlIiwiZWxsaXBzZSIsImltYWdlIiwibGluZSIsInBhdGgiLCJwb2x5Z29uIiwicG9seWxpbmUiLCJyZWN0IiwidGV4dCIsInVzZSJdLGc9WyJhIiwiZGVmcyIsImciLCJtYXJrZXIiLCJnbHlwaCIsIm1pc3NpbmctZ2x5cGgiLCJwYXR0ZXJuIiwic3ZnIiwic3dpdGNoIiwic3ltYm9sIl0sRT1mdW5jdGlvbihBLGUpe3JldHVybiBNYXRoLnNxcnQoKEEqQStlKmUpLzIpfSxRPWZ1bmN0aW9uKEEsZSx0LHIpe2NvbnN0IHM9ZnVuY3Rpb24oQSxlLG4scixvLHMpe2xldCBhLEI9aS5nZXQoQSxlKTtpZihudWxsPT09Qj9zPyhhPXMsLyVccyokLy50ZXN0KGEpJiYoQj1zLGE9cGFyc2VGbG9hdChCKSkpOmE9cj9udWxsOm4/IiI6MDphPW4/QjpwYXJzZUZsb2F0KEIpLC8lXHMqJC8udGVzdChCKSl7cmV0dXJuIGEvMTAwKihvPzE6dFsveHxed2lkdGgvLnRlc3QoZSk/IndpZHRoIjoiaGVpZ2h0Il0pfXJldHVybiBhfSxCPWZ1bmN0aW9uKEEsZSx0LG4saSxyLG8pe3JldHVybiBlPXMoQSxlfHwieCIsITEsbixpLHIpLHQ9cyhBLHR8fCJ5IiwhMSxuLGksbyksIW58fG51bGwhPT1lJiZudWxsIT09dD97eDplLHk6dH06bnVsbH07bGV0IGM9ZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGVmcyIpOzA9PT1jLmxlbmd0aD8oYz1pLmNyZWF0ZSgiZGVmcyIpLGUuYXBwZW5kQ2hpbGQoYykpOmM9Y1swXTtjb25zdCBnPWUuZ2V0RWxlbWVudEJ5SWQoQSk7aWYoIWcpcmV0dXJuO2NvbnN0IFE9InJhZGlhbGdyYWRpZW50Ij09PWcudGFnTmFtZS50b0xvd2VyQ2FzZSgpLHU9ZS5nZXRFbGVtZW50QnlJZChBKS5jbG9uZU5vZGUoITApO2xldCBsPW4udG9TdHJpbmcocik7bD1sLnN1YnN0cmluZyg4LGwubGVuZ3RoLTEpO2NvbnN0IGg9IiIuY29uY2F0KEEsIi0iKS5jb25jYXQobCk7aWYodS5zZXRBdHRyaWJ1dGUoImlkIixoKSxlLmdldEVsZW1lbnRCeUlkKGgpKXJldHVybiJ1cmwoIyIuY29uY2F0KGgsIikiKTtjb25zdCB3PSJ1c2VyU3BhY2VPblVzZSIhPT1zKHUsImdyYWRpZW50VW5pdHMiLCEwKTtsZXQgQyxJLE0sZDtpZihRKUM9Qih1LCJjeCIsImN5IiwhMSx3LCI1MCUiLCI1MCUiKSxNPXModSwiciIsITEsITEsdywiNTAlIiksZD1CKHUsImZ4IiwiZnkiLCEwLHcpO2Vsc2UgaWYoQz1CKHUsIngxIiwieTEiLCExLHcpLEk9Qih1LCJ4MiIsInkyIiwhMSx3LCIxIiksQy54PT09SS54JiZDLnk9PT1JLnkpe2NvbnN0IEE9dS5nZXRFbGVtZW50c0J5VGFnTmFtZSgic3RvcCIpO3JldHVybiBBLmxlbmd0aCYmQVtBLmxlbmd0aC0xXS5hdHRyaWJ1dGVzJiZBW0EubGVuZ3RoLTFdLmF0dHJpYnV0ZXNbInN0b3AtY29sb3IiXT9BW0EubGVuZ3RoLTFdLmF0dHJpYnV0ZXNbInN0b3AtY29sb3IiXS52YWx1ZTpudWxsfWlmKHcpe2NvbnN0IEE9bi5jb21wb3NlKG4udHJhbnNsYXRlKHQueCx0LnkpLG4uc2NhbGUodC53aWR0aCx0LmhlaWdodCkpO0M9bi5hcHBseVRvUG9pbnQoQSxDKSxJJiYoST1uLmFwcGx5VG9Qb2ludChBLEkpKSxNJiYoTT1FKHQud2lkdGgsdC5oZWlnaHQpKk0pLGQmJihkPW4uYXBwbHlUb1BvaW50KEEsZCkpfWlmKFEpe0M9bi5hcHBseVRvUG9pbnQocixDKTtjb25zdCBBPWEocik7TT1FKEEueCxBLnkpKk0sZCYmKGQ9bi5hcHBseVRvUG9pbnQocixkKSl9ZWxzZXtjb25zdCBBPShBLGUpPT5BLngqZS54K0EueSplLnksZT0oQSxlKT0+KHt4OkEqZS54LHk6QSplLnl9KSx0PShBLGUpPT4oe3g6QS54K2UueCx5OkEueStlLnl9KSxpPShBLGUpPT4oe3g6QS54LWUueCx5OkEueS1lLnl9KTtsZXQgbz1NYXRoLmFicyhDLngtSS54KTwxZS04P3QoQyx7eDoxLHk6KEMueC1JLngpLyhJLnktQy55KX0pOnQoQyx7eDooSS55LUMueSkvKEMueC1JLngpLHk6MX0pO289bi5hcHBseVRvUG9pbnQocixvKSxDPW4uYXBwbHlUb1BvaW50KHIsQyksST1uLmFwcGx5VG9Qb2ludChyLEkpO2NvbnN0IHM9aShvLEMpLGE9aShJLEMpLEI9TWF0aC5hYnMocy54KTwxZS04P3t4OjEseTotcy54L3MueX06e3g6LXMueS9zLngseToxfSxjPWUoQShhLEIpL0EoQixCKSxCKTtJPXt4OkMueCtjLngseTpDLnkrYy55fX1yZXR1cm4gUT8odS5zZXRBdHRyaWJ1dGUoImN4IixvKEMueCkpLHUuc2V0QXR0cmlidXRlKCJjeSIsbyhDLnkpKSx1LnNldEF0dHJpYnV0ZSgiciIsbyhNKSksZCYmKHUuc2V0QXR0cmlidXRlKCJmeCIsbyhkLngpKSx1LnNldEF0dHJpYnV0ZSgiZnkiLG8oZC55KSkpKToodS5zZXRBdHRyaWJ1dGUoIngxIixvKEMueCkpLHUuc2V0QXR0cmlidXRlKCJ5MSIsbyhDLnkpKSx1LnNldEF0dHJpYnV0ZSgieDIiLG8oSS54KSksdS5zZXRBdHRyaWJ1dGUoInkyIixvKEkueSkpKSx1LnNldEF0dHJpYnV0ZSgiZ3JhZGllbnRVbml0cyIsInVzZXJTcGFjZU9uVXNlIiksYy5hcHBlbmRDaGlsZCh1KSwidXJsKCMiLmNvbmNhdChoLCIpIil9LHU9KEEsZSk9Pntjb25zdCB0PUEmJkEubWF0Y2goL1woKD86WyInI10qKShbXiInKV0rKS8pLG49dCYmdFsxXTtyZXR1cm4gbiYmZT9uLnJlcGxhY2UoIiIuY29uY2F0KGUubG9jYXRpb24uaHJlZi5zcGxpdCgiIyIpWzBdLCIjIiksIiIpOm59LGw9T2JqZWN0LmNyZWF0ZShudWxsKTtsZXQgaD1udWxsLHc9bnVsbCxDPW51bGw7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXtjb25zdCByPW4uaWRlbnRpdHkoKSxJPShyLE0sZCxwLG0pPT57aWYoZnVuY3Rpb24oQSl7cmV0dXJuIEEudGFnTmFtZSYmZy5pbmNsdWRlcyhBLnRhZ05hbWUudG9Mb3dlckNhc2UoKSl9KHIpKXtyLmF0dHJpYnV0ZXNbInN0cm9rZS13aWR0aCJdJiYoZD1yLmF0dHJpYnV0ZXNbInN0cm9rZS13aWR0aCJdLnZhbHVlKSxyLmF0dHJpYnV0ZXMmJihyLmF0dHJpYnV0ZXMuZmlsbCYmKHA9ci5hdHRyaWJ1dGVzLmZpbGwudmFsdWUpLHIuYXR0cmlidXRlcy5zdHJva2UmJihtPXIuYXR0cmlidXRlcy5zdHJva2UudmFsdWUpKTtmb3IobGV0IEE9MDtBPHIuY2hpbGROb2Rlcy5sZW5ndGg7QSsrKUkoci5jaGlsZE5vZGVzW0FdLG4uY29tcG9zZShNLHMocikpLGQscCxtKTtyLnJlbW92ZUF0dHJpYnV0ZSgidHJhbnNmb3JtIiksci5yZW1vdmVBdHRyaWJ1dGUoInN0cm9rZS13aWR0aCIpLHIucmVtb3ZlQXR0cmlidXRlKCJmaWxsIiksci5yZW1vdmVBdHRyaWJ1dGUoInN0cm9rZSIpfWVsc2UgaWYoZnVuY3Rpb24oQSxlKXtyZXR1cm4hIUEuYXR0cmlidXRlcyYmKChlPUEuYXR0cmlidXRlc1sic3Ryb2tlLXdpZHRoIl0/TnVtYmVyKEEuYXR0cmlidXRlc1sic3Ryb2tlLXdpZHRoIl0udmFsdWUpOk51bWJlcihlKSkmJkEudGFnTmFtZSYmInBhdGgiPT09QS50YWdOYW1lLnRvTG93ZXJDYXNlKCkmJkEuYXR0cmlidXRlcy5kJiZBLmF0dHJpYnV0ZXMuZC52YWx1ZSl9KHIsZCkpe2lmKHIuYXR0cmlidXRlc1sic3Ryb2tlLXdpZHRoIl0mJihkPXIuYXR0cmlidXRlc1sic3Ryb2tlLXdpZHRoIl0udmFsdWUpLHIuYXR0cmlidXRlcy5maWxsJiYocD1yLmF0dHJpYnV0ZXMuZmlsbC52YWx1ZSksci5hdHRyaWJ1dGVzLnN0cm9rZSYmKG09ci5hdHRyaWJ1dGVzLnN0cm9rZS52YWx1ZSksTT1uLmNvbXBvc2UoTSxzKHIpKSxuLnRvU3RyaW5nKE0pPT09bi50b1N0cmluZyhuLmlkZW50aXR5KCkpKXJldHVybiByLnJlbW92ZUF0dHJpYnV0ZSgidHJhbnNmb3JtIiksci5zZXRBdHRyaWJ1dGUoInN0cm9rZS13aWR0aCIsZCkscCYmci5zZXRBdHRyaWJ1dGUoImZpbGwiLHApLHZvaWQobSYmci5zZXRBdHRyaWJ1dGUoInN0cm9rZSIsbSkpO2NvbnN0IGM9dShwLGUpLGc9dShtLGUpO2lmKGN8fGcpe2NvbnN0IG49dHx8KChBLGUpPT57Y29uc3QgdD1BLmF0dHJpYnV0ZXMuZC52YWx1ZTtpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobCx0KSlyZXR1cm4gbFt0XTtpZighaCl7Y29uc3QgQT1lLmRvY3VtZW50O2g9QS5jcmVhdGVFbGVtZW50KCJzcGFuIiksdz1BLmNyZWF0ZUVsZW1lbnROUyhpLnN2Zywic3ZnIiksQz1BLmNyZWF0ZUVsZW1lbnROUyhpLnN2ZywicGF0aCIpLGguY2xhc3NOYW1lPSJzY3JhdGNoLXN2Zy1yZW5kZXJlci1iYm94IixoLnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiIsaC5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGguc3R5bGUudG9wPSItMTAwMDBweCIsaC5zdHlsZS5sZWZ0PSItMTAwMDBweCIsaC5hcmlhSGlkZGVuPSEwLHcuYXBwZW5kQ2hpbGQoQyksaC5hcHBlbmRDaGlsZCh3KSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGgpfUMuc2V0QXR0cmlidXRlKCJkIix0KTtjb25zdCBuPXcuZ2V0QkJveCgpO3JldHVybiBsW3RdPW4sbn0pKHIsZSk7aWYoYyl7Y29uc3QgZT1RKGMsQSxuLE0pO2UmJihwPWUpfWlmKGcpe2NvbnN0IGU9UShnLEEsbixNKTtlJiYobT1lKX19ci5zZXRBdHRyaWJ1dGUoImQiLGZ1bmN0aW9uKEEsZSl7aWYoIWV8fG4udG9TdHJpbmcoZSk9PT1uLnRvU3RyaW5nKG4uaWRlbnRpdHkoKSkpcmV0dXJuIEE7Y29uc3QgdD1BJiZBLm1hdGNoKC9bbWxodmNzcXRhel1bXm1saHZjc3F0YXpdKi9naSk7bGV0IGkscixzLGM9ITEsZz17eDowLHk6MH0sRT17eDowLHk6MH0sUT0iIjtjb25zdCB1PWZ1bmN0aW9uKEEsZSl7bGV0IHQ9K2lbQV07cmV0dXJuIGMmJih0Kz1nW2VdKSx0fSxsPWZ1bmN0aW9uKEEpe3JldHVybnt4OnUoQSwieCIpLHk6dShBKzEsInkiKX19LGg9ZnVuY3Rpb24oQSl7Y29uc3QgdD1uLmFwcGx5VG9Qb2ludChlLEEpO3JldHVybiIiLmNvbmNhdChvKHQueCksIiAiKS5jb25jYXQobyh0LnkpLCIgIil9O2ZvcihsZXQgQT0wLG49dCYmdC5sZW5ndGg7QTxuO0ErKyl7Y29uc3Qgbj10W0FdLHc9blswXSxDPXcudG9Mb3dlckNhc2UoKTtpPW4ubWF0Y2goL1srLV0/KD86XGQqXC5cZCt8XGQrXC4/KSg/OltlRV1bKy1dP1xkKyk/L2cpO2NvbnN0IEk9aSYmaS5sZW5ndGg7c3dpdGNoKGM9dz09PUMsInoiIT09cnx8L1ttel0vLnRlc3QoQyl8fChRKz0iTSAiLmNvbmNhdChnLngsIiAiKS5jb25jYXQoZy55LCIgIikpLEMpe2Nhc2UibSI6Y2FzZSJsIjp7bGV0IEE9Im0iPT09Qztmb3IobGV0IGU9MDtlPEk7ZSs9MilRKz1BPyJNICI6IkwgIixnPWwoZSksUSs9aChnKSxBJiYoRT1nLEE9ITEpO3M9ZzticmVha31jYXNlImgiOmNhc2UidiI6e2NvbnN0IEE9ImgiPT09Qz8ieCI6InkiO2c9e3g6Zy54LHk6Zy55fTtmb3IobGV0IGU9MDtlPEk7ZSsrKWdbQV09dShlLEEpLFErPSJMICIuY29uY2F0KGgoZykpO3M9ZzticmVha31jYXNlImMiOmZvcihsZXQgQT0wO0E8STtBKz02KXtjb25zdCBlPWwoQSk7cz1sKEErMiksZz1sKEErNCksUSs9IkMgIi5jb25jYXQoaChlKSkuY29uY2F0KGgocykpLmNvbmNhdChoKGcpKX1icmVhaztjYXNlInMiOmZvcihsZXQgQT0wO0E8STtBKz00KXtjb25zdCBlPS9bY3NdLy50ZXN0KHIpP3t4OjIqZy54LXMueCx5OjIqZy55LXMueX06ZztzPWwoQSksZz1sKEErMiksUSs9IkMgIi5jb25jYXQoaChlKSkuY29uY2F0KGgocykpLmNvbmNhdChoKGcpKSxyPUN9YnJlYWs7Y2FzZSJxIjpmb3IobGV0IEE9MDtBPEk7QSs9NClzPWwoQSksZz1sKEErMiksUSs9IlEgIi5jb25jYXQoaChzKSkuY29uY2F0KGgoZykpO2JyZWFrO2Nhc2UidCI6Zm9yKGxldCBBPTA7QTxJO0ErPTIpcz0vW3F0XS8udGVzdChyKT97eDoyKmcueC1zLngseToyKmcueS1zLnl9OmcsZz1sKEEpLFErPSJRICIuY29uY2F0KGgocykpLmNvbmNhdChoKGcpKSxyPUM7YnJlYWs7Y2FzZSJhIjpmb3IobGV0IEE9MDtBPEk7QSs9Nyl7Zz1sKEErNSk7Y29uc3QgdD0raVtBXSxuPStpW0ErMV0scj0raVtBKzJdLHM9K2lbQSszXTtsZXQgYz0raVtBKzRdO2NvbnN0IEU9Qih0LG4scixlKSx1PWEoZSk7RT8oKHUueD4wJiZ1Lnk8MHx8dS54PDAmJnUueT4wKSYmKGNePTEpLFErPSJBICIuY29uY2F0KG8oTWF0aC5hYnMoRS5yYWRpdXNYKSksIiAiKSsiIi5jb25jYXQobyhNYXRoLmFicyhFLnJhZGl1c1kpKSwiICIpKyIiLmNvbmNhdChvKEUucm90YXRpb24pLCIgIikuY29uY2F0KHMsIiAiKSsiIi5jb25jYXQoYywiICIpLmNvbmNhdChoKGcpKSk6USs9IkwgIi5jb25jYXQoaChnKSl9YnJlYWs7Y2FzZSJ6IjpRKz0iWiAiLGc9RX1yPUN9cmV0dXJuIFF9KHIuYXR0cmlidXRlcy5kLnZhbHVlLE0pKSxyLnJlbW92ZUF0dHJpYnV0ZSgidHJhbnNmb3JtIik7Y29uc3QgST1hKE0pO3Iuc2V0QXR0cmlidXRlKCJzdHJva2Utd2lkdGgiLEUoSS54LEkueSkqZCkscCYmci5zZXRBdHRyaWJ1dGUoImZpbGwiLHApLG0mJnIuc2V0QXR0cmlidXRlKCJzdHJva2UiLG0pfWVsc2UoZnVuY3Rpb24oQSl7cmV0dXJuIEEudGFnTmFtZSYmYy5pbmNsdWRlcyhBLnRhZ05hbWUudG9Mb3dlckNhc2UoKSl9KShyKSYmKGQmJiFyLmF0dHJpYnV0ZXNbInN0cm9rZS13aWR0aCJdJiZyLnNldEF0dHJpYnV0ZSgic3Ryb2tlLXdpZHRoIixkKSxwJiYhci5hdHRyaWJ1dGVzLmZpbGwmJnIuc2V0QXR0cmlidXRlKCJmaWxsIixwKSxtJiYhci5hdHRyaWJ1dGVzLnN0cm9rZSYmci5zZXRBdHRyaWJ1dGUoInN0cm9rZSIsbSksTT1uLmNvbXBvc2UoTSxzKHIpKSxuLnRvU3RyaW5nKE0pPT09bi50b1N0cmluZyhuLmlkZW50aXR5KCkpP3IucmVtb3ZlQXR0cmlidXRlKCJ0cmFuc2Zvcm0iKTpyLnNldEF0dHJpYnV0ZSgidHJhbnNmb3JtIixuLnRvU3RyaW5nKE0pKSl9O0koQSxyLDEpfX0sZnVuY3Rpb24oQSxlLHQpe3dpbmRvdyxBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGU9e307ZnVuY3Rpb24gdChuKXtpZihlW25dKXJldHVybiBlW25dLmV4cG9ydHM7dmFyIGk9ZVtuXT17aTpuLGw6ITEsZXhwb3J0czp7fX07cmV0dXJuIEFbbl0uY2FsbChpLmV4cG9ydHMsaSxpLmV4cG9ydHMsdCksaS5sPSEwLGkuZXhwb3J0c31yZXR1cm4gdC5tPUEsdC5jPWUsdC5kPWZ1bmN0aW9uKEEsZSxuKXt0Lm8oQSxlKXx8T2JqZWN0LmRlZmluZVByb3BlcnR5KEEsZSx7ZW51bWVyYWJsZTohMCxnZXQ6bn0pfSx0LnI9ZnVuY3Rpb24oQSl7InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KEEsU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShBLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0sdC50PWZ1bmN0aW9uKEEsZSl7aWYoMSZlJiYoQT10KEEpKSw4JmUpcmV0dXJuIEE7aWYoNCZlJiYib2JqZWN0Ij09dHlwZW9mIEEmJkEmJkEuX19lc01vZHVsZSlyZXR1cm4gQTt2YXIgbj1PYmplY3QuY3JlYXRlKG51bGwpO2lmKHQucihuKSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6QX0pLDImZSYmInN0cmluZyIhPXR5cGVvZiBBKWZvcih2YXIgaSBpbiBBKXQuZChuLGksZnVuY3Rpb24oZSl7cmV0dXJuIEFbZV19LmJpbmQobnVsbCxpKSk7cmV0dXJuIG59LHQubj1mdW5jdGlvbihBKXt2YXIgZT1BJiZBLl9fZXNNb2R1bGU/ZnVuY3Rpb24oKXtyZXR1cm4gQS5kZWZhdWx0fTpmdW5jdGlvbigpe3JldHVybiBBfTtyZXR1cm4gdC5kKGUsImEiLGUpLGV9LHQubz1mdW5jdGlvbihBLGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoQSxlKX0sdC5wPSIiLHQodC5zPTApfShbZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKEEsZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/W0EuYSplWzBdK0EuYyplWzFdK0EuZSxBLmIqZVswXStBLmQqZVsxXStBLmZdOnt4OkEuYSplLngrQS5jKmUueStBLmUseTpBLmIqZS54K0EuZCplLnkrQS5mfX1mdW5jdGlvbiBpKEEsZSl7cmV0dXJuIGUubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gbihBLGUpfSkpfWZ1bmN0aW9uIHIoQSl7cmV0dXJue2E6cGFyc2VGbG9hdChBLmEpLGI6cGFyc2VGbG9hdChBLmIpLGM6cGFyc2VGbG9hdChBLmMpLGQ6cGFyc2VGbG9hdChBLmQpLGU6cGFyc2VGbG9hdChBLmUpLGY6cGFyc2VGbG9hdChBLmYpfX10LnIoZSk7dmFyIG89L15tYXRyaXhcKFxzKihbMC05XystLmVdKylccyosXHMqKFswLTlfKy0uZV0rKVxzKixccyooWzAtOV8rLS5lXSspXHMqLFxzKihbMC05XystLmVdKylccyosXHMqKFswLTlfKy0uZV0rKVxzKixccyooWzAtOV8rLS5lXSspXHMqXCkkL2k7ZnVuY3Rpb24gcyhBKXt2YXIgZT1BLm1hdGNoKG8pO2lmKG51bGw9PT1lfHxlLmxlbmd0aDw3KXRocm93IG5ldyBFcnJvcigiJyIrQSsiJyBpcyBub3QgYSBtYXRyaXgiKTtyZXR1cm57YTpwYXJzZUZsb2F0KGVbMV0pLGI6cGFyc2VGbG9hdChlWzJdKSxjOnBhcnNlRmxvYXQoZVszXSksZDpwYXJzZUZsb2F0KGVbNF0pLGU6cGFyc2VGbG9hdChlWzVdKSxmOnBhcnNlRmxvYXQoZVs2XSl9fWZ1bmN0aW9uIGEoKXtyZXR1cm57YToxLGM6MCxlOjAsYjowLGQ6MSxmOjB9fWZ1bmN0aW9uIEIoQSl7dmFyIGU9QS5hLHQ9QS5iLG49QS5jLGk9QS5kLHI9QS5lLG89QS5mLHM9ZSppLXQqbjtyZXR1cm57YTppL3MsYjp0Ly1zLGM6bi8tcyxkOmUvcyxlOihpKnItbipvKS8tcyxmOih0KnItZSpvKS9zfX12YXIgYz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihBKXtyZXR1cm4gdHlwZW9mIEF9OmZ1bmN0aW9uKEEpe3JldHVybiBBJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZBLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZBIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgQX0sZz1mdW5jdGlvbihBKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIEEmJiFpc05hTihBKSYmaXNGaW5pdGUoQSl9O2Z1bmN0aW9uIEUoQSl7cmV0dXJuIGZ1bmN0aW9uKEEpe3JldHVybiBudWxsIT1BJiYib2JqZWN0Ij09PSh2b2lkIDA9PT1BPyJ1bmRlZmluZWQiOmMoQSkpfShBKSYmQS5oYXNPd25Qcm9wZXJ0eSgiYSIpJiZnKEEuYSkmJkEuaGFzT3duUHJvcGVydHkoImIiKSYmZyhBLmIpJiZBLmhhc093blByb3BlcnR5KCJjIikmJmcoQS5jKSYmQS5oYXNPd25Qcm9wZXJ0eSgiZCIpJiZnKEEuZCkmJkEuaGFzT3duUHJvcGVydHkoImUiKSYmZyhBLmUpJiZBLmhhc093blByb3BlcnR5KCJmIikmJmcoQS5mKX1mdW5jdGlvbiBRKEEpe3JldHVybiB2b2lkIDA9PT1BfWZ1bmN0aW9uIHUoQSl7cmV0dXJue2E6MSxjOjAsZTpBLGI6MCxkOjEsZjphcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MH19ZnVuY3Rpb24gbCgpe2Zvcih2YXIgQT1hcmd1bWVudHMubGVuZ3RoLGU9QXJyYXkoQSksdD0wO3Q8QTt0KyspZVt0XT1hcmd1bWVudHNbdF07dmFyIG49ZnVuY3Rpb24oQSxlKXtyZXR1cm57YTpBLmEqZS5hK0EuYyplLmIsYzpBLmEqZS5jK0EuYyplLmQsZTpBLmEqZS5lK0EuYyplLmYrQS5lLGI6QS5iKmUuYStBLmQqZS5iLGQ6QS5iKmUuYytBLmQqZS5kLGY6QS5iKmUuZStBLmQqZS5mK0EuZn19O3N3aXRjaCgoZT1BcnJheS5pc0FycmF5KGVbMF0pP2VbMF06ZSkubGVuZ3RoKXtjYXNlIDA6dGhyb3cgbmV3IEVycm9yKCJubyBtYXRyaWNlcyBwcm92aWRlZCIpO2Nhc2UgMTpyZXR1cm4gZVswXTtjYXNlIDI6cmV0dXJuIG4oZVswXSxlWzFdKTtkZWZhdWx0OnZhciBpPWZ1bmN0aW9uKEEpe3JldHVybiBBcnJheS5pc0FycmF5KEEpP0E6QXJyYXkuZnJvbShBKX0oZSkscj1pWzBdLG89aVsxXSxzPWkuc2xpY2UoMiksYT1uKHIsbyk7cmV0dXJuIGwuYXBwbHkodm9pZCAwLFthXS5jb25jYXQoZnVuY3Rpb24oQSl7aWYoQXJyYXkuaXNBcnJheShBKSl7Zm9yKHZhciBlPTAsdD1BcnJheShBLmxlbmd0aCk7ZTxBLmxlbmd0aDtlKyspdFtlXT1BW2VdO3JldHVybiB0fXJldHVybiBBcnJheS5mcm9tKEEpfShzKSkpfX1mdW5jdGlvbiBoKCl7cmV0dXJuIGwuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9dmFyIHc9TWF0aC5jb3MsQz1NYXRoLnNpbixJPU1hdGguUEk7ZnVuY3Rpb24gTShBLGUsdCl7dmFyIG49dyhBKSxpPUMoQSkscj17YTpuLGM6LWksZTowLGI6aSxkOm4sZjowfTtyZXR1cm4gUShlKXx8USh0KT9yOmwoW3UoZSx0KSxyLHUoLWUsLXQpXSl9ZnVuY3Rpb24gZChBKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06dm9pZCAwLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOnZvaWQgMDtyZXR1cm4gTShBKkkvMTgwLGUsdCl9ZnVuY3Rpb24gcChBKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06dm9pZCAwO3JldHVybiBRKGUpJiYoZT1BKSx7YTpBLGM6MCxlOjAsYjowLGQ6ZSxmOjB9fWZ1bmN0aW9uIG0oQSxlKXtyZXR1cm57YToxLGM6QSxlOjAsYjplLGQ6MSxmOjB9fXZhciBGPU1hdGgudGFuO2Z1bmN0aW9uIEQoQSxlKXtyZXR1cm57YToxLGM6RihBKSxlOjAsYjpGKGUpLGQ6MSxmOjB9fWZ1bmN0aW9uIFkoQSxlKXtyZXR1cm4gRChBKk1hdGguUEkvMTgwLGUqTWF0aC5QSS8xODApfWZ1bmN0aW9uIGYoQSl7cmV0dXJuIFUoQSl9ZnVuY3Rpb24gTihBKXtyZXR1cm4gVShBKX1mdW5jdGlvbiBVKEEpe3JldHVybiJtYXRyaXgoIitBLmErIiwiK0EuYisiLCIrQS5jKyIsIitBLmQrIiwiK0EuZSsiLCIrQS5mKyIpIn10LmQoZSwiYXBwbHlUb1BvaW50IiwoZnVuY3Rpb24oKXtyZXR1cm4gbn0pKSx0LmQoZSwiYXBwbHlUb1BvaW50cyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KSksdC5kKGUsImZyb21PYmplY3QiLChmdW5jdGlvbigpe3JldHVybiByfSkpLHQuZChlLCJmcm9tU3RyaW5nIiwoZnVuY3Rpb24oKXtyZXR1cm4gc30pKSx0LmQoZSwiaWRlbnRpdHkiLChmdW5jdGlvbigpe3JldHVybiBhfSkpLHQuZChlLCJpbnZlcnNlIiwoZnVuY3Rpb24oKXtyZXR1cm4gQn0pKSx0LmQoZSwiaXNBZmZpbmVNYXRyaXgiLChmdW5jdGlvbigpe3JldHVybiBFfSkpLHQuZChlLCJyb3RhdGUiLChmdW5jdGlvbigpe3JldHVybiBNfSkpLHQuZChlLCJyb3RhdGVERUciLChmdW5jdGlvbigpe3JldHVybiBkfSkpLHQuZChlLCJzY2FsZSIsKGZ1bmN0aW9uKCl7cmV0dXJuIHB9KSksdC5kKGUsInNoZWFyIiwoZnVuY3Rpb24oKXtyZXR1cm4gbX0pKSx0LmQoZSwic2tldyIsKGZ1bmN0aW9uKCl7cmV0dXJuIER9KSksdC5kKGUsInNrZXdERUciLChmdW5jdGlvbigpe3JldHVybiBZfSkpLHQuZChlLCJ0b0NTUyIsKGZ1bmN0aW9uKCl7cmV0dXJuIGZ9KSksdC5kKGUsInRvU1ZHIiwoZnVuY3Rpb24oKXtyZXR1cm4gTn0pKSx0LmQoZSwidG9TdHJpbmciLChmdW5jdGlvbigpe3JldHVybiBVfSkpLHQuZChlLCJ0cmFuc2Zvcm0iLChmdW5jdGlvbigpe3JldHVybiBsfSkpLHQuZChlLCJjb21wb3NlIiwoZnVuY3Rpb24oKXtyZXR1cm4gaH0pKSx0LmQoZSwidHJhbnNsYXRlIiwoZnVuY3Rpb24oKXtyZXR1cm4gdX0pKX1dKX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0MTkpO24uZW5hYmxlKCksQS5leHBvcnRzPW4oInNjcmF0Y2gtc3ZnLXJlbmRlciIpfSxmdW5jdGlvbihBLGUpe2NvbnN0IHQ9InVuZGVmaW5lZCI9PXR5cGVvZiBkb2N1bWVudCxuPXQ/IhtbMG0iOiIiLGk9dD8iG1s5MG0iOiIiLHI9dD8iG1szNm0iOiIiLG89dD8iG1szM20iOiIiLHM9dD8iG1szMW0iOiIiLGE9IiIuY29uY2F0KHQ/IhtbMzRtIjoiIiwiZGVidWciKS5jb25jYXQobiksQj0iIi5jb25jYXQociwiaW5mbyIpLmNvbmNhdChuKSxjPSIiLmNvbmNhdChvLCJ3YXJuIikuY29uY2F0KG4pLGc9IiIuY29uY2F0KHMsImVycm9yIikuY29uY2F0KG4pLEU9ZnVuY3Rpb24oKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06IiI7Y29uc3QgZT1lPT5FKEE/IiIuY29uY2F0KEEsIiAiKS5jb25jYXQoZSk6ZSksdD1BP1siIi5jb25jYXQoaSkuY29uY2F0KEEpLmNvbmNhdChuKV06W107cmV0dXJuIGUuZGVidWc9ZS5sb2c9Y29uc29sZS5kZWJ1Zy5iaW5kKGNvbnNvbGUsLi4udCxhKSxlLmluZm89Y29uc29sZS5sb2cuYmluZChjb25zb2xlLC4uLnQsQiksZS53YXJuPWUud2FybmluZz1jb25zb2xlLndhcm4uYmluZChjb25zb2xlLC4uLnQsYyksZS5lcnJvcj1jb25zb2xlLmVycm9yLmJpbmQoY29uc29sZSwuLi50LGcpLGV9O0UuZW5hYmxlPUUuZGlzYWJsZT0oKT0+e30sQS5leHBvcnRzPUV9LGZ1bmN0aW9uKEEsZSl7bGV0IHQ9bnVsbDtBLmV4cG9ydHM9KCk9Pih0fHwodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKSx0LmNsYXNzTmFtZT0ic2NyYXRjaC1zdmctcmVuZGVyZXItc2FuZGJveCIsdC5zYW5kYm94PSJhbGxvdy1zYW1lLW9yaWdpbiIsdC5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLHQuc3R5bGUudG9wPSItMTAwMDBweCIsdC5zdHlsZS5sZWZ0PSItMTAwMDBweCIsdC5zdHlsZS53aWR0aD0iMCIsdC5zdHlsZS5oZWlnaHQ9IjAiLHQuc3R5bGUub3BhY2l0eT0iMCIsdC5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iLHQuc3R5bGUucG9pbnRlckV2ZW50cz0ibm9uZSIsdC50YWJJbmRleD0tMSx0LmFyaWFIaWRkZW49ITAsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KSx0LmNvbnRlbnREb2N1bWVudC5vcGVuKCksdC5jb250ZW50RG9jdW1lbnQud3JpdGUoJ1xuICAgICAgICA8IURPQ1RZUEUgaHRtbD5cbiAgICAgICAgPGh0bWw+XG4gICAgICAgICAgICA8aGVhZD5cbiAgICAgICAgICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+XG4gICAgICAgICAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1TZWN1cml0eS1Qb2xpY3kiIGNvbnRlbnQ9ImRlZmF1bHQtc3JjIFwnbm9uZVwnOyBzdHlsZS1zcmMgXCd1bnNhZmUtaW5saW5lXCcgZGF0YTo7IGZvbnQtc3JjIGRhdGE6OyBpbWctc3JjIGRhdGE6Ij5cbiAgICAgICAgICAgIDwvaGVhZD5cbiAgICAgICAgICAgIDxib2R5PjwvYm9keT5cbiAgICAgICAgPC9odG1sPlxuICAgICAgICAnKSx0LmNvbnRlbnREb2N1bWVudC5jbG9zZSgpKSx0LmNvbnRlbnREb2N1bWVudC5ib2R5KX0sZnVuY3Rpb24oQSxlLHQpe2xldCBuO0EuZXhwb3J0cz1mdW5jdGlvbigpe2lmKG4pcmV0dXJuIG47bj17IlNhbnMgU2VyaWYiOnQoNDIyKSxTZXJpZjp0KDQyMyksSGFuZHdyaXRpbmc6dCg0MjQpLE1hcmtlcjp0KDQyNSksQ3VybHk6dCg0MjYpLFBpeGVsOnQoNDI3KSxTY3JhdGNoOnQoNDI4KSxUZWNobm9sb2dpY2FsOnQoNDI5KSxCdWJibHk6dCg0MzApLCJCaXRzIGFuZCBCeXRlcyI6dCg0MzEpLFBsYXlmdWw6dCg0MzIpLEFyY2FkZTp0KDQzMyksQXJjaGl2bzp0KDQzNCksIkFyY2hpdm8gQmxhY2siOnQoNDM1KX07Zm9yKGNvbnN0IEEgaW4gbil7Y29uc3QgZT1uW0FdO25bQV09IkBmb250LWZhY2UgeyIrJ2ZvbnQtZmFtaWx5OiAiJy5jb25jYXQoQSwnIjtzcmM6IHVybCgiZGF0YTphcHBsaWNhdGlvbi94LWZvbnQtdHRmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCcpLmNvbmNhdChlLCciKTt9Jyl9aWYoIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzY3JhdGNoLWZvbnQtc3R5bGVzIikpe2NvbnN0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTtBLmlkPSJzY3JhdGNoLWZvbnQtc3R5bGVzIjtmb3IoY29uc3QgZSBpbiBuKUEudGV4dENvbnRlbnQrPW5bZV07ZG9jdW1lbnQuYm9keS5pbnNlcnRCZWZvcmUoQSxkb2N1bWVudC5ib2R5LmZpcnN0Q2hpbGQpfXJldHVybiBufX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9IkFBRUFBQUFTQVFBQUJBQWdSMFJGUnZEWDNlY0FBQUVzQUFBRndFZFFUMU12RUY0TkFBQUc3QUFBNnNaSFUxVkNSRGZxYWdBQThiUUFBQmFBVDFNdk1teDBoMkFBQVFnMEFBQUFZRlJVUmtHNFVSakRBQWJtQUFBQUFmOWpiV0Z3d3AvKzVBQUJDSlFBQUFvdVkzWjBJSCswRWtZQUJ0WWNBQUFCZEdad1oyMDZLSTU4QUFiWGtBQUFEVzFuWVhOd0FBQUFFQUFHMWhRQUFBQUlaMng1WmkwWUNpY0FBUkxFQUFUT1VHaGxZV1FRbEFIR0FBWGhGQUFBQURab2FHVmhETElVSndBRjRVd0FBQUFrYUcxMGVIdmxJVUVBQmVGd0FBQXluR3h2WTJFZDEvbTBBQVlVREFBQU1yeHRZWGh3RDVBUUF3QUdSc2dBQUFBZ2JtRnRaYVQxeWpFQUJrYm9BQUFHbEhCdmMzU3g5UWVxQUFaTmZBQUFpSlZ3Y21Wd05wcUpZQUFHNVFBQUFBRDlBQUVBQWdBT0FBQURXZ0FBQTZ3QUFnQ01BQ1FBUFFBQkFFUUFYUUFCQUlJQW1BQUJBSm9BdUFBQkFMb0JTUUFCQVZVQlZRQUJBVmNDQUFBQkFoY0NGd0FCQWlBQ0lBQUJBaWdDS0FBQkFqMENQUUFCQWtBQ1FBQUJBa0lDUlFBQkFrY0NTZ0FCQWt3Q2FRQUJBbTRDY1FBQkFuVURWUUFCQTJBRWhRQUJCS0lFcGdBQkJNRUV3UUFEQk1VRXh3QUJCTWtFekFBQkJNNEZFUUFCQlJVRkZRQUJCUmdGVmdBQkJWd0ZYQUFCQldNRlpBQUJCV1lGYVFBQkJXc0ZjQUFCQlhRRmRBQUJCWWNGbFFBQkJaY0c2d0FCQnU0RzdnQUJCdkVIRndBQkJ4b0hKZ0FCQjBBSFJBQUJCMGdIU0FBQkIxd0hjUUFCQjRVSGlBQURCNGtIcXdBQkI4UUgwd0FCQjlZSDJ3QUJCOThIM3dBQkIrTUg1QUFCQitrSDdBQUJCKzRIOWdBQkIva0grUUFCQ0FVSUJRQUJDQW9JQ3dBQkNBMElEZ0FCQ0JBSUVnQUJDQlVJRmdBQkNCc0lQQUFCQ0VZSVJ3QUJDRXdJVHdBQkNGRUlVZ0FCQ0ZRSVZRQUJDRmdJV1FBQkNGd0lYQUFCQ0Y0SVh3QUJDR1FJWndBQkNHa0lhUUFCQ0hRSWV3QUJDSDBJaFFBQkNJWUlqQUFDQ0kwSkRnQUJDUkFKRXdBQkNSWUpHUUFCQ1J3SkhBQUJDU29KTVFBQkNUTUpNd0FCQ1QwSlN3QUJDVTRKVHdBQkNWWUpWZ0FCQ1Z3Slh3QUJDV01KWXdBQkNXVUpaUUFCQ1c4SmJ3QUJDWElKY2dBQkNYUUplQUFCQ1hvSmZnQUJDWXdKalFBQkNaY0ptQUFCQ1p3Sm5BQUJDYXdKclFBQkNhOEpyd0FCQ2JFSnNRQUJDYk1Kc3dBQkNiY0p0d0FCQ2JvSnVnQUJDYndKdkFBQkNjTUp4UUFCQ2RZSjFnQUJDZDRKNWdBQkNlZ0o2UUFCQ2VzSjdBQUJDc2dLeUFBQkN0WUsxZ0FCQ3RnSzN3QUJDdUlLNHdBQkN1b0s2d0FCQ3U4Szd3QUJDNEFMZ0FBQkM0RUxpd0FEQzR3TGpBQUJDNDBMb0FBREM2RUxvZ0FCQzZNTHN3QURDN2dMM1FBREM5NEwzd0FCQytBTDRRQURDK0lMNGdBQkMrWUw2Z0FCQytzTDdBQURDKzBMN1FBQkMrNEw3Z0FEQys4TUJBQUJEQVlNRHdBQkRCSU1LUUFCREN3TUxRQUJEQzhNTVFBQkRESU1NZ0FERERvTVBBQUJERDRNUHdBQkRFQU1RUUFEREVJTVJnQUJERWNNUndBRERFZ01TQUFCREVzTVV3QURERlVNVlFBQkRGWU1WZ0FEREZjTVhBQUJER0FNWUFBQkRHTU1Zd0FCREdZTWN3QURESFFNZEFBQkRIVU1od0FERElnTWlBQUJESW9NaWdBQkRKQU1rUUFCQUJJQUJ3QWtBQ3dBTkFBMEFFSUFRZ0JLQUFFQUJ3RHpBUFFJaHdpSUNJa0lpZ2kvQUFFQUJBQUJBVk1BQVFBRUFBRUJBZ0FDQUFZQUNnQUJBVHNBQVFKM0FBRUFCQUFCQVMwQUFRQUVBQUVCSXdBQkFBUUFBQUFVQUFBQTJBQUFBUG9BQUFHNEFBSUFJQUlvQWlnQUFBdVdDNWtBQVF1Y0M3SUFCUXU0QzdzQUhBdkNDOFFBSUF2SUM4a0FJd3ZPQzlFQUpRdlVDOVVBS1F2WEM5Y0FLd3ZhQzlvQUxBdmRDOTBBTFF2aEMrRUFMZ3ZyQytzQUx3dndDL0FBTUF2M0Mvd0FNUXYvREFRQU53d0dEQTBBUFF3UURDWUFSUXdvRENrQVhBd3NEQzBBWGd3dkRERUFZQXd6RERrQVl3dzhERHdBYWd4SkRFa0Fhd3hPREU0QWJBeFZERndBYlF4Z0RHQUFkUXhtREcwQWRneHZESE1BZmd4MURIY0Fnd3g1RElBQWhneUNESWNBamdBQkFBOExzd3UwQzdVTHRndTNEQVlNREF3Y0REME1iUXh4REhZTWVneCtESU1BQWdBZkFWTUJWQUFBQk1FRXdRQUNCdXdHN0FBREJ1NEc4QUFFQnZzRy9RQUhCd2dIQ2dBS0J4Z0hHZ0FOQnlVSEpnQVFCMVlIVmdBU0I0VUhpQUFUQ3Q0SzNnQVhDNEVMbEFBWUM3d0x3UUFzQzhVTHh3QXlDOHNMelFBMUM5SUwwZ0E0QzlZTDFnQTVDOWdMMlFBNkM5c0wzQUE4Qzk0TDRBQStDK0lMNmdCQkMrd0w3d0JLQy9FTDlnQk9DLzBML2dCVURBQU1Ed0JXREJJTU1RQm1ERG9NT3dDR0RENE1TQUNJREVzTVRRQ1RERThNWWdDV0RHWU1od0NxQUFFQUxBdVZDNW9MbXd2VERBRU1BZ3dFREFZTUJ3d0pEQW9NQ3d3TURBME1IQXdlREI4TUlRd25EQ2dNS1F4WURHc01iUXh2REhBTWNReHlESFVNZGd4M0RIa01lZ3g4REgwTWZneC9ESUFNZ2d5RERJUU1oUXlHREljQUFRQUFBQW9BTkFCdUFBUkVSa3hVQUJwamVYSnNBQnBuY21WckFCcHNZWFJ1QUJvQUJBQUFBQUQvL3dBREFBQUFBUUFDQUFOclpYSnVBQlJ0WVhKckFCcHRhMjFyQUM0QUFBQUJBQUFBQUFBSUFBRUFBZ0FEQUFRQUJRQUdBQWNBQ0FBQUFBUUFDUUFLQUFzQURBQU5BQnh2N3BFZ2xzQysxTkZTMHdMVHl0V0MyQmJkOE42UTZNb0FBZ0FJQUFJQUNodW1BQUVEVmdBRUFBQUJwZy82QnFZUCtnaUdFQXdQOUJBTUZwWUpmQmRtRnJJV3BBYjBCNjRYWmdsb0ZySUpOQmF5Qjl3SVJoYjBEK29QNmhkbUZ0d0pjZ2lHQ0hRVzdoYnVGdTRJaGdpUUVDb1FNQWppRnBZV2xoYVdGcFlXbGhhV0ZxUVhaaGFrRnFRV3BCYWtGcklXc2hheUZySVdzaGF5RnJJVzNBazBGdTRXN2hhV0ZwWUpRaGRtRjJZWFpoZG1GcklKWGhheUZxUVdwQmFrRnFRV3BBbFlGMllKYUFsb0NXZ0pYZ2xvQ1dnV3NoYXlGcklXcEJiMEZ2UVc5QS9xRnU0VzNCYnVGdHdKY2dseUNYSVdsaGFrRnJJWEZCZEdGeUlYWUJjVUNYd0thQmNVQ1pJWFJncllGeFFKNUJkR0Z6UUtJZ3BvRnlJS2dncllDdDRYWUJjaUZ3NFhEZzNnQzFnTkRnMGtEWElONEEzbUZNb1VsZzYwRlFnVXZCU1dEcjRVeWhhTUZRZ1ZDQkRTRkpZVXloUzhEd1FWQ0JhTUZvd1VuQlNjRU13UXpCRE1FTXdVeWcvcUZ1NFA2aGJ1RCtvVzdoYmNGdTRQOUEvMEQvUVArZy82RUF3UCtnLzZFQXdRS2hBd0YyQVFSaGNpRnBZV3ZCYkdFTXdVbGhTV0VGd1VsaEJjRUdJVXZCUzhGSllXakJETUVOSVU1QkRZRVhJVTloU2NGUFlWQ0JVSUZRZ1dqQlRrRVl3U05oS2NGSllVeWhMV0V0WVU5aGFNRm93UzhCT2FGUWdUNkJaMkZvd1dqQmFNRkpZVWxoVUlGSndVb2hTOEZMd1V2QlRLRk9RVTloVUlGUklWRWhhTUZSSVZFaFVZRlhvVnlCWjJGb3dXbGhhV0ZwWVdsaGFXRnBZV2xoYVdGcFlXbGhhV0ZwWVdwQmFrRnFRV3BCYWtGcVFXcEJha0ZySVdzaGF5RnJJV3NoYXlGcklXdkJhOEZyd1d2QmE4RnNZV3hoYkdGc1lXeGhiY0Z1NFczQmJ1RnR3VzdoYjBGeUlYSWhjT0Z3NFhEaGNPRnc0WERoY09GdzRYRkJjVUZ4UVhGQmNVRnhRWEZCY1VGMFlYUmhkR0YwWVhSaGRHRnlJWEloY2lGeUlYWUJkZ0YyQVhZQmRnRjJBWFlCZGdGdzRYRGhjT0Z3NFhEaGNPRnc0WERoY09GdzRYRGhjT0Z3NFhEaGNPRnc0WERoY1VGeFFYRkJjVUZ5SVhJaGNpRnlJWE5CZEdGMFlYWUJkZ0YyWVhaaGRtRjJZWFpoZG1GMllYWmhkbUYyWVhaaGR3RjRZWGhoZUdGNFlYaGhlR0dMQVlzQml3R0xBWGpCZldGOVlYMWhpd0dMQVlzQml3R0xBWXNCaXdHTEFZc0Jpd0dMQVg0Qmd1R0xBWXRobGVHUXdaWGhsZUdWNFpiQm0rR2I0WnZobStHYjRaeUJvdUdpNGFMaG91R2k0YVBCcEdHbVFhcWhxMEcxb0FBUUdtQUFVQUNRQUtBQXNBRHdBUUFCRUFKQUFsQUNZQUp3QW9BQ2tBS2dBdUFDOEFNZ0F6QURRQU5RQTJBRGNBT1FBNkFEc0FQQUE5QUQ0QVJnQlpBRm9BWEFCZUFHTUFiUUI5QUlFQWdnQ0RBSVFBaFFDR0FJY0FpQUNKQUlvQWl3Q01BSTBBa2dDVUFKVUFsZ0NYQUpnQW1nQ2ZBS0FBdndEQkFNSUF4QURHQU1nQXlnRE1BTTRBMEFEUkFOSUExQURXQU5nQTJnRGNBUEFBOXdENkFQd0EvZ0QvQVFBQkFnRU5BUThCRVFFVEFTTUJKUUVuQVRVQk5nRTNBVGdCT1FFNkFUd0JQZ0ZDQVVRQlJnRlZBVm9CV3dGY0FWNEJYd0ZnQVdFQll3RmxBV2NCYUFGckFXd0JiZ0Z2QVhBQmNRRnlBWE1CZEFGMUFYY0JlQUY5QVg4QmdnR0VBWVlCaHdHSkFaTUJuUUdlQVo4QnBnR25BYWtCcWdHc0FhMEJyd0d6QWJrQnVnRzdBYndCdlFHK0FiOEJ3Z0hMQWRBQjR3SGxBZkVCOGdIM0Fma0IrZ0g3QWZ3Qi9RSCtBZjhDQUFJQkFnSUNBd0lGQWdZQ0J3SUpBZ29DQ3dJVEFoUUNJQUkvQWtBQ1JBSkhBa2tDVXdKVUFsWUNWd0pZQWxrQ1lBSmtBbVlDY0FKMUFuZ0NlUUo3QW4wQ2ZnSi9Bb0lDZ3dLRkFvY0NpUUtMQW8wQ2p3S1FBcEVDa3dLVkFwY0NtUUtiQXAwQ253S2pBcVFDcWdLc0FxMENyZ0t5QXJZQ3VRSzdBc1VDeUFMSkF0Y0MyUUxiQXQ4QzR3TGxBdWNDNndMdEF1OEM4UUx6QXZVQzlnTDNBdmtDK3dMOUF2OERBUU1EQXdVREJ3TUpBd3NERFFNUEF4RURFd01WQXhjREdRTWJBeDBESHdNaEF5TURLUU1yQXkwREx3TXhBek1ETlFNM0F6a0RPd005QXo4RFJRTkhBMGtEU3dOTkEwOERVQU5SQTFJRFV3TlVBMkFFeWdUTEJqNEdQd1pBQmtFR1FnWkRCa1FHUlFaR0JrY0dTQVpKQmtvR1N3Wk1CazBHZ0FhQkJvSUdnd2FFQm9VR2pnYVBCcEFHa1FhYUJwc0duQWFkQnA0R253YWdCcUVHb2dhakJyQUdzUWF5QnJNR3RBYTFCcllHdHdiZ0J1RUc0Z2JqQnVRRzVRYm1CdWNHNkFicEJ1b0hFd2NVQnhVSEZnY1hCeUFISVFjaUJ5TUlqUWlPQ0k4SWtBaVJDSklJa3dpVUNKVUlsZ2lYQ0pvSW13aWNDSjBJbmdpZkNLQUlvUWlpQ0tNSXBBaXZDTWNJeUFqS0NOUUkxUWpXQ05jSTJBalpDTm9JMndqY0NOMEkzZ2pnQ09FSTRnanRDTzRJN3dqd0NQRUk4Z2orQ1A4SkFBa0JDUUlKQXdrRUNRVUpCZ2tIQ1FnSkNRcW9DcXNLclFxdkNyRUxmd0FUQURmL3hBQTUvK3dBT3Yvc0FEei80Z0NmLytJQkkvL0VBU1gveEFFbi84UUJOZi9zQVRmLzRnRTUvK0lCK2Yvc0Fmdi83QUg5Lyt3Qi8vL2lBMC8vNGdOUi8rSURVLy9pQTJEL3hBQXVBQXdBRkFBUC84UUFFZi9FQUNJQUZBQWsvK3dBUUFBVUFHQUFGQUNDLyt3QWcvL3NBSVQvN0FDRi8rd0Fodi9zQUlmLzdBREMvK3dBeFAvc0FNYi83QUZDLyt3Q0IvL0VBZ3YveEFJUC84UUNSUC9zQXYzLzdBTC8vK3dEQWYvc0F3UC83QU1GLyt3REIvL3NBd24vN0FNTC8rd0REZi9zQXcvLzdBTVIvK3dERS8vc0NJMy80Z2lPLytJSWovL2lDSkQvNGdpUi8rSUlrdi9pQ0pQLzRnaVUvK0lJbGYvaUNKYi80Z2lYLytJSW1QL09DSm4vemdBTENPNy83QWp2Ly9ZSThQL3NDUEgvN0FqeS8rd0kvdi8yQ1FYLzlna0cvL1lKQi8vMkNRai85Z2tKLy9ZQUdnQnQvL1lDRS8vMkNKdi85Z2ljLy9ZSW5mLzJDSjcvOWdpZi8vWUlvUC8yQ0xELzlnaXgvL1lJc3YvMkNMUC85Z2kwLy9ZSTFQLzJDTlgvOWdqVy8vWUkxLy8yQ05qLzlnalovL1lJMnYvMkNOdi85Z2pjLy9ZSTNmLzJDTjcvOWdqZi8vWUk0di8yQUFzSTd2L3NDTy8vOWdqdy8rd0k4Zi9zQ1BMLzdBaisvL1lKQmYvc0NRYi83QWtILyt3SkNQL3NDUW4vN0FBRUFBVUFGQUFLQUJRQ0JnQVVBZ29BRkFBQ0FDMEFXZ0JOQUNnQUZBQXRBRElBTi8vc0FEbi85Z0E2Ly9ZQVBQL2lBSi8vNGdFai8rd0JKZi9zQVNmLzdBRTEvL1lCTi8vaUFUbi80Z0g1Ly9ZQisvLzJBZjMvOWdILy8rSURULy9pQTFILzRnTlQvK0lEWVAvc0FCUUFMUUJrQURmLzJBQTUvK0lBT3YvaUFEei8yQUNmLzlnQkkvL1lBU1gvMkFFbi85Z0JOZi9pQVRmLzJBRTUvOWdCK2YvaUFmdi80Z0g5LytJQi8vL1lBMC8vMkFOUi85Z0RVLy9ZQTJELzJBQURBQW4vOWdBNy8rd0k3Zi9zQUFVQUxRQnVDTU1BVUFqRUFGQUk3Ly9pQ1A3LzdBQUJBQzBBTWdBQ0FDSUFVQURwQUVZQUFnanYvOFFJL3YvRUFBSUk3Ly8yQ1A3LzlnQUZBQS8vOWdBUi8vWUNCLy8yQWd2LzlnSVAvL1lBRkFCdC8rd0JYUUFVQVdYLzlnRnMvL1lCY3YvaUFaWUFGQUlULyt3R2JBQVVCbTBBRkFadUFCUUdid0FVQm5BQUZBWnhBQlFHcUFBVUJ2NEFGQWIvQUJRSEFBQVVCd0VBRkFjQ0FCUUhBd0FVQUE4QlhRQUtBWllBQ2dac0FBb0diUUFLQm00QUNnWnZBQW9HY0FBS0JuRUFDZ2FvQUFvRy9nQUtCdjhBQ2djQUFBb0hBUUFLQndJQUNnY0RBQW9BRVFCdC8vWUJYUUFQQVpZQUR3SVQvL1lHYkFBUEJtMEFEd1p1QUE4R2J3QVBCbkFBRHdaeEFBOEdxQUFQQnY0QUR3Yi9BQThIQUFBUEJ3RUFEd2NDQUE4SEF3QVBBQVlCY3YvT0FYWC80Z0dBLytJQmsvL3NBaUQvNGdJLy8rd0FGUUFQLzg0QUVmL09BVjcvN0FGaC8rd0JZLy9pQVdqLzdBRnYvL1lCY1AvWUFYSC80Z0Z6Ly9ZQmQvL2lBWWYvOWdJSC84NENDLy9PQWcvL3pnSkEvK0lFeS8vaUJ1Zi83QWJvLyt3SEUvL2lCeFQvNGdBQkFYTC80Z0FlQUEvL3hBQVIvOFFCWFFBVUFWNy8yQUZoLzlnQlpmLzJBV2ovMkFGcy8vWUJqZi8yQVpZQUZBSUgvOFFDQy8vRUFnLy94QVpzQUJRR2JRQVVCbTRBRkFadkFCUUdjQUFVQm5FQUZBYW9BQlFHNS8vWUJ1ai8yQWIrQUJRRy93QVVCd0FBRkFjQkFCUUhBZ0FVQndNQUZBY1AvL1lIRVAvMkFHMEFFUC9PQVYwQUhnRjQvK3dCZlAvMkFYMy83QUdBLyt3QmhQLzJBWXYvN0FHTS8rd0Jqdi9zQVkvLzdBR1EvK3dCa2YvMkFaTC83QUdVLy9ZQmxmLzJBWllBSGdHWC8vWUJtUC9zQVpuLzlnR2EvL1lDQWYvT0FnTC96Z0lELzg0R1B2L3NCai8vN0FaQS8rd0dRZi9zQmtMLzdBWkQvK3dHUlAvc0JrWC83QVpzQUI0R2JRQWVCbTRBSGdadkFCNEdjQUFlQm5FQUhnWjYvK3dHZS8vc0Juei83QVo5Lyt3R2Z2L3NCbi8vN0FhRy8vWUdoLy8yQm9qLzlnYUovL1lHaXYvMkJvdi85Z2FNLy9ZR2pmLzJCcEwvOWdhVC8vWUdsUC8yQnBYLzlnYVcvL1lHbC8vMkJwai85Z2FaLy9ZR292L3NCcVAvN0Fhb0FCNEdxdi9zQnF2LzdBYXMvL1lHcmYvMkJxNy85Z2F2Ly9ZR3NQL3NCckgvN0FheS8rd0dzLy9zQnJULzdBYTEvK3dHdHYvc0JyZi83QWJRLy9ZRzBmLzJCdEwvOWdiVC8vWUcxUC8yQnRYLzlnYlcvL1lHMS8vMkJ1RC83QWJoLyt3RzR2L3NCdVAvN0Fiay8rd0c1Zi9zQnViLzdBYitBQjRHL3dBZUJ3QUFIZ2NCQUI0SEFnQWVCd01BSGdjTC8vWUhEUC8yQnczLzlnY08vL1lIRWYvMkJ4TC85Z2NiLy9ZSEhQLzJCeDMvOWdjZS8vWUhILy8yQUFVQUQvL3NBQkgvN0FJSC8rd0NDLy9zQWcvLzdBQVRBWGovN0FGOS8rd0JpLy9zQVk3LzdBR1AvK3dCa3Yvc0Faai83QVkrLyt3R1AvL3NCbnIvN0FaNy8rd0dvdi9zQnFQLzdBYXEvK3dHcS8vc0JyRC83QWF4Lyt3RzQvL3NCdVQvN0FBYkFBWC94QUFLLzhRQmVQLzJBWDMvOWdGLy8rd0JpZi9zQVl2LzlnR00vK3dCanYvMkFZLy85Z0dRLyt3Qmt2LzJBWmovOWdJRy84UUNDdi9FQmo3LzlnWS8vL1lHZXYvMkJudi85Z2FpLy9ZR28vLzJCcXIvOWdhci8vWUdzUC8yQnJILzlnYmovL1lHNVAvMkFBRUJoLy8yQURNQUQvL2lBQkQvN0FBUi8rSUJlUC9zQVgzLzdBR0EvK3dCaS8vc0FZNy83QUdQLyt3Qmt2L3NBWk1BRkFHWS8rd0NBZi9zQWdMLzdBSUQvK3dDQi8vaUFndi80Z0lQLytJR1B2L3NCai8vN0FaQS8rd0dRZi9zQmtMLzdBWkQvK3dHUlAvc0JrWC83QVo2Lyt3R2UvL3NCbnovN0FaOS8rd0dmdi9zQm4vLzdBYWkvK3dHby8vc0Jxci83QWFyLyt3R3NQL3NCckgvN0FheS8rd0dzLy9zQnJULzdBYTEvK3dHdHYvc0JyZi83QWJnLyt3RzRmL3NCdUwvN0Fiai8rd0c1UC9zQnVYLzdBYm0vK3dBQWdMdS8rd0M4UC9zQUJFQUJmL3NBQXIvN0FHcC8vWUJ3UC9zQWdiLzdBSUsvK3dDVnYvMkFtRC83QUtmLyt3Q29mL3NBcVgvN0FLbi8rd0N0UC9zQXJuLzlnSzcvL1lDdmYvMkF0My83QUE1QUEvLzJBQVIvOWdCblAvc0FhUC83QUdsLyt3QnAvL2lBYW4vN0FHdC8rd0JyLy9zQWJELzdBRzAvK3dCdS8vaUFiei80Z0crLyt3QncvL3NBY2IvN0FITi8rd0IxUC9zQWZILzdBSUgvOWdDQy8vWUFnLy8yQUpXLyt3Q1YvL3NBbDcvN0FKay8vWUNadi8yQW4vLzdBS0IvK3dDaWYvc0FwWC80Z0tYLytJQ21mL2lBcHYvN0FLZC8rd0Nxdi9zQXE3LzdBS3YvK3dDdWYvc0Fydi83QUs5Lyt3Q3hmL3NBc2YvN0FMVi8rd0MxLy9pQXRuLzRnTGIvK0lDNWYvc0F1Zi83QUx0Lyt3QzcvL3NBdkgvN0FMeS8rd0M5Ly9zQXZ2LzdBTDgvK3dGRi8vc0FBSUFJZ0FVQ08zLzRnQUJBWEQvMkFBRUFZRC80Z0dDLyt3QjdmL2lBbUgvOWdBSEFYRC91Z0Z5Lzg0QmRQL0VBWVQvN0FHOS85Z0k3Ly9zQ1A3LzJBQUJBWEQvNGdBRkFEdi83QUZ2Ly9ZQmNQL0VBWFAvN0FISS8vWUFCUUFQLytJQUVmL2lBZ2YvNGdJTC8rSUNELy9pQUFFQ1lmLzJBQm9BRC8rNkFCSC91Z0dqLytJQnFmL1lBYTMvNGdHMC8rSUJ6Zi9zQWRULzdBSHgvK3dDQi8rNkFndi91Z0lQLzdvQ1Z2L1lBbGYvN0FLdS8rSUNyLy9zQXJuLzJBSzcvOWdDdmYvWUF1bi8yQUxyLzlnQzhmL2lBdkwvN0FMNy8rSUMvUC9zQlJmLzdBQUJBc3IvN0FBQkFsci85Z0FtQUFYLzRnQUsvK0lCblAvaUFhSUFNZ0dsLytJQnUvL2lBY0QvMkFIRC8rSUIyLy9zQWVELzdBSGovK3dDQnYvaUFnci80Z0pnLzlnQ1pQL2lBbWIvNGdLSi8rSUNpdi9zQXBYLzRnS1cvK3dDbC8vc0Fwbi83QUtkLytJQ252L3NBcC8vMkFLZy8rd0NvZi9ZQXFMLzdBSzAvOWdDdGYvc0F0My8yQUxlLyt3QzdmL2lBdTcvNGdMdi8rSUM4UC9pQXZmLzRnTDQvK3dBQmdBRi8rSUFDdi9pQWdiLzRnSUsvK0lDN3Yvc0F2RC83QUFxQUFYL3NBQUsvN0FCblAvT0FhSUFNZ0dsLzg0QnUvK21BY0QveEFIRC84NEIyLy9ZQWVELzdBSGovOWdDQnYrd0Fnci9zQUpnLzhRQ1pQKzZBbWIvdWdLSi84NENpdi9ZQXBYL3BnS1cvOWdDbC8vT0Fwbi96Z0tkLzg0Q252L1lBcC8veEFLZy8rd0NvZi9FQXFMLzdBS2wvK0lDcHYvc0FxZi80Z0tvLyt3Q3RQL0VBclgvN0FMZC84UUMzdi9zQXUzL3BnTHUvOWdDNy8rbUF2RC8yQUwzLzg0QytQL1lBQmtBQmYrNkFBci91Z0hiLzg0QjRQL3NBZVAvemdJRy83b0NDdis2QWxILzdBSmwvK3dDWi8vc0FtLy83QUtLLzg0Q2x2L09BcGovN0FLYS8rd0Nudi9PQXFELzdBS2kvK3dDcHYvc0Fxai83QUsxLyt3QzN2L3NBdTcvdWdMdy83b0MrUC9PQUE0Qm5QL3NBYVgvN0FHNy8rSUJ3Ly9zQW1ULzlnSm0vL1lDaWYvc0FwWC80Z0tYLy9ZQ21mLzJBcDMvN0FMdC8rd0M3Ly9zQXZmLzdBQUdBYjMvNGdIby8rd0I3Zi9ZQWx2LzdBSmgvK3dDK2YvMkFDb0FCZi9pQUFyLzRnR2MvK3dCcGYvc0Fidi94QUhBLzlnQncvL3NBZHYvN0FIYy8vWUI0UC8yQWVQLzdBSDEvL1lDQnYvaUFnci80Z0pnLzlnQ1pQL2lBbWIvNGdLSi8rd0Npdi9zQXBYL3hBS1cvK3dDbC8vT0Fwbi96Z0tkLyt3Q252L3NBcC8vMkFLZy8vWUNvZi9ZQXFMLzlnSzAvOWdDdGYvMkF0ai85Z0xhLy9ZQzNQLzJBdDMvMkFMZS8vWUM3Zi9ZQXU3LzdBTHYvOWdDOFAvc0F2Zi83QUw0Lyt3QUV3QUYvODRBQ3YvT0Fkdi83QUhjLyt3QjQvL3NBZlgvN0FJRy84NENDdi9PQW9yLzdBS1cvK3dDbVAvc0Fwci83QUtlLyt3QzJQL3NBdHIvN0FMYy8rd0M3di9ZQXZELzJBTDQvK3dBS3dBRi8rSUFDdi9pQWFJQU1nRzcvK3dCdmYvc0FjRC8yQUhiLytJQjRQL3NBZVAvNGdJRy8rSUNDdi9pQWxILzlnSmcvOWdDWlAvc0FtWC85Z0ptLyt3Q1ovLzJBbS8vOWdLSy8rSUNsZi9zQXBiLzRnS1gvK3dDbVAvMkFwbi83QUthLy9ZQ252L2lBcC8vMkFLZy8rd0NvZi9ZQXFMLzdBS2wvODRDcHYvc0FxZi96Z0tvLyt3Q3RQL1lBclgvN0FMZC85Z0Mzdi9zQXUzLzJBTHUvODRDNy8vWUF2RC96Z0w0LytJQUFRRzkvK3dBQVFIb0FCNEFCZ0FGLy9ZQUN2LzJBZ2IvOWdJSy8vWUM3di9zQXZELzdBQURBYjMvNGdISS8vWUI3Zi8yQUFZQnZmL1lBZWovNGdIdC84UUNXLy9PQW1IL3pnTEsvK0lBQkFHOS8rSUI3Zi9pQWx2LzdBSmgvK0lBQkFHaUFHNEJ2Zi9pQWw4QUhnSmgvL1lBQWdHOS8rd0MrZi8yQUFFQ1d2L3NBQmdBRC8vWUFCSC8yQUdwLy9ZQnIvL3NBYnYvN0FHKy8rd0NCLy9ZQWd2LzJBSVAvOWdDVnYvMkFtVC85Z0ptLy9ZQ2YvL3NBcFgvN0FLWC8vWUNtZi8yQXB2LzdBS3EvK3dDdWYvMkFydi85Z0s5Ly9ZQ3hmL3NBdVgvN0FMbi8rd0FFd0FGLyt3QUN2L3NBYy8vOWdIYy8vWUIzdi8yQWZYLzlnSUcvK3dDQ3Yvc0FvRC85Z0tjLy9ZQ3EvLzJBc2IvOWdMWS8vWUMydi8yQXR6LzlnTG0vL1lDNlAvMkF1Ny83QUx3Lyt3QUt3QUYvOWdBQ3YvWUFaei80Z0dsLytJQnFmL3NBYS8vN0FHNy8rSUJ2di9zQWNELzdBSEQvK0lCMi8vc0FlUC83QUlHLzlnQ0N2L1lBbGIvN0FKZy8rd0NaUC9zQW1iLzdBSi8vK3dDaWYvaUFvci83QUtWLytJQ2x2L3NBcGYvN0FLWi8rd0NtLy9zQXAzLzRnS2UvK3dDbi8vc0FxSC83QUtxLyt3Q3RQL3NBcm4vN0FLNy8rd0N2Zi9zQXNYLzdBTGQvK3dDNWYvc0F1Zi83QUx0Lyt3QzcvL3NBdmYvNGdMNC8rd0FCUUhnLyt3Q29QL3NBcUwvN0FLMS8rd0Mzdi9zQUFJQm9nQnVBc29BRkFBREFDMEFNZ2p2LytJSS92L3NBQU1BTFFBOENPLy83QWorLy9ZQUFnQTcvK3dCbi8vMkFBSUFMQUFVQURzQU1nQUZBQ3dBRkFBN0FESURCQUFLQXg0QUNnTXdBQW9BQkFBSi8rSUFJZ0FVQ08zL3pnanYvL1lBQVFBaUFCUUFCZ0FKLyt3QUlnQVVDTzMvMkFqdi8rd0kvdi9zQ1FULzRnQUJBWWNBRkFBREFYRC91Z0Z5Lyt3QmRQL1lBQVFCY3YvaUFYWC85Z0dBLytJQ0lQLzJBQVFCWS8vMkFYUC83QUdBLytJQmgvL3NBQVlCWS8vMkFXLy85Z0Z3LytJQmMvL3NBWFQvOWdHSC8vWUFBUUZ3Lyt3QUFnanYvK3dJL3Yvc0FBVUpCZi8yQ1FiLzlna0gvL1lKQ1AvMkNRbi85Z0FCQ3F6LzlnQVNBQS8vNGdBUi8rSUNCLy9pQWd2LzRnSVAvK0lJamYvMkNJNy85Z2lQLy9ZSWtQLzJDSkgvOWdpUy8vWUlrLy8yQ0pULzlnaVYvL1lJbHYvMkNKZi85Z2lZLyt3SW1mL3NBQUlJNy8vaUNQNy8yQUFUQUEvL3NBQVIvN0FDQi8rd0Fndi9zQUlQLzdBSWpmL2lDSTcvNGdpUC8rSUlrUC9pQ0pILzRnaVMvK0lJay8vaUNKVC80Z2lWLytJSWx2L2lDSmYvNGdpWS85TUltZi9UQzMvLzlnQWdBQS8vN0FBUi8rd0NCLy9zQWd2LzdBSVAvK3dJamYvMkNJNy85Z2lQLy9ZSWtQLzJDSkgvOWdpUy8vWUlrLy8yQ0pULzlnaVYvL1lJbHYvMkNKZi85Z2lZLy9ZSW1mLzJDTzcvOWdqdy8vWUk4Zi8yQ1BMLzlnai8vL1lKQVAvMkNRSC85Z2tDLy9ZSkEvLzJDUVgvOWdrRy8vWUpCLy8yQ1FqLzlna0ovL1lBQVFrRS8vWUFGUUFGLyt3QUN2L3NBZ2IvN0FJSy8rd0k3di9zQ08vLzhRancvK3dJOGYvc0NQTC83QWorLy9ZSS8vLzJDUUQvOWdrQi8vWUpBdi8yQ1FQLzlna0YvK3dKQnYvc0NRZi83QWtJLyt3SkNmL3NDckQvN0FBVUFBLy83QUFSLyt3Q0IvL3NBZ3YvN0FJUC8rd0lqZi9zQ0k3LzdBaVAvK3dJa1Avc0NKSC83QWlTLyt3SWsvL3NDSlQvN0FpVi8rd0lsdi9zQ0pmLzdBaVkvK3dJbWYvc0Nxei85Z3QvLy9ZQUF3anQvL1lLclAvaUMzLy84UUFVQUEvLzJBQVIvOWdDQi8vWUFndi8yQUlQLzlnSWpmL3NDSTcvN0FpUC8rd0lrUC9zQ0pILzdBaVMvK3dJay8vc0NKVC83QWlWLyt3SWx2L3NDSmYvN0FpWS8rd0ltZi9zQ3F6LzdBdC8vL1lBQWdxcy8rd0xmLy9zQUJrSW0vLzJDSnovOWdpZC8vWUludi8yQ0ovLzlnaWcvL1lJc1AvMkNMSC85Z2l5Ly9ZSXMvLzJDTFQvOWdqVS8vWUkxZi8yQ05iLzlnalgvL1lJMlAvMkNObi85Z2phLy9ZSTIvLzJDTnovOWdqZC8vWUkzdi8yQ04vLzlnamkvL1lLclAvMkFBTUk3Zi8yQ3F6LzRndC8vK3dBQWdqREFEd0l4QUE4QUFjSXd3QThDTVFBUEFrRi8rd0pCdi9zQ1FmLzdBa0kvK3dKQ2Yvc0FCRUk3di9pQ08vLzlnancvK0lJOGYvaUNQTC80Z2orLyt3SS8vL3NDUUQvN0FrQi8rd0pBdi9zQ1FQLzdBa0UvL1lKQmYvaUNRYi80Z2tILytJSkNQL2lDUW4vNGdBQ0NNTUFIZ2pFQUI0QUtRaWIvL1lJblAvMkNKMy85Z2llLy9ZSW4vLzJDS0QvOWdpdy8vWUlzZi8yQ0xMLzlnaXovL1lJdFAvMkNNTUFXZ2pFQUZvSTFQLzJDTlgvOWdqVy8vWUkxLy8yQ05qLzlnalovL1lJMnYvMkNOdi85Z2pjLy9ZSTNmLzJDTjcvOWdqZi8vWUk0di8yQ083LzJBancvOWdJOGYvWUNQTC8yQWorLytJSS8vL2lDUUQvNGdrQi8rSUpBdi9pQ1FQLzRna0YvOWdKQnYvWUNRZi8yQWtJLzlnSkNmL1lBQkFJN3YvVENPLy80Z2p3LzlNSThmL1RDUEwvMHdqKy8rSUkvLy9zQ1FELzdBa0IvK3dKQXYvc0NRUC83QWtGLytJSkJ2L2lDUWYvNGdrSS8rSUpDZi9pQUFJNUZBQUVBQUE4OEVmZ0FGa0FVZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzhRQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlnQUFQL2kvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC91Z0FBQUFBQUFBQUFBQUQvMkFBQS83b0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBS0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1lBQUFBQUFBQUFBQUFBUC9pQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN1AvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMi8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVQUFBQUFBQUFBQUFBRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC94QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvN29BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBb0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yLyt3QUFBQUFBQUFBQUFBQS8rei85di9zLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1lBQUFBQUFBQS8rei83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFQLzIvL1lBQUFBQUFBQUFBQUFBLytJQUFBQUFBQUFBQUFBQS8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84NEFBUC9PQUFBQU1nQUEvK0wvNGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS85Z0FBQUFBLytJQUFQL1kvOFFBQUFBQUFBQUFBQUFBQUFEL3hBQUFBQUQvemdBQUFBQUFBQUFBQUFBQUFBQUEvOFFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC80dit3QUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRkFBQUFBQUFBQUFBQUJRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOWovN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvbkFBRC96Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOWdBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBLyt3QUFBQUEvODRBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzg0QUFBQUEvK3ovN1AvaS84Ny94UC9FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytJQUFQL09BQUFBQUFBQUFBRC80Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvT0FBRC94QUFBQUFBQUFBQUFBQUFBQUFBQS8rei83QUFBQUFELzl2L1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2kvN0FBQUFBQS83b0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC80Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3pnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9FQUFBQUFBQUFBQUFBQUFBQS84NEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL0UvK3dBQUFBQUFBRC91Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURJQUFBQUFBQUFBQUFBQS83b0FBUC9pLyt3QUFBQUFBQUFBQUFBQS8rei96Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXlBQUFBQUFBQUFCUUFBQUFBQUFBQUFBQUFBQUFBTWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUF5QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84UUFBQUFBQUFBQUFQL2kvOWovOXYrNi84VC8yQUFBQUFBQUFBQThBQUFBQVAvc0FBQUFBUC9PQUFEL3VnQUFBQW9BQUFBQUFBRC83UC9FQUJRQUFBQUFBQlFBQUFBQUFBQUFBQUFBQUFBQUFQL2kvK3dBQUFBQUFBQUFBQUFBLzdvQUZQKzZBQUFBQUFBQUFBQUFBUC9pQUFBQUFBQUFBQUQvNGdBQUFBQUFBUCs2QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvN0FBQVArd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBTWdBQUFBQUFBQUFVQUFBQUFBQUFBQUFBQUFBQUFDZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBLzg0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9ZLytJQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUEvOFFBQUFBQUFBQUFBQUFBLzg0QUFBQUFBQUQvN0FBQS8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvODRBQUFBQUFBQUFBQUFBQUFEL3VnQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUQvN1AvRUFBQUFBQUFBQUFELzJQK3cvODRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9FLzg3LzJQL3NBQUQvdWdBQUFBQUFBQUFBQUFELzdBQUFBQUFBQVAvWUFBQUFBQUFBQUFEL3pnQUEvN29BQVArNi84Ny8yQUFBQUFBQUFBQUEvK0wveEFBQUFCUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQVAvRS84NEFBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFELzdQL3NBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFBQUFQL2kvODRBQUFBQUFBQUFBUC9zLzg3LzJBQUFBQUFBQUFBQUFBRC96Z0FBQUFBQUFBQUEvK3dBQUFBQUFBRC85di8yLyt6Lzl2L1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFEL3pnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMi8rSUFBQUFBLzhRQUFBQUFBQUQvN0FBQUFBQUFBUC8yQUFELzRnQUEvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVJnQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUJHQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQThBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUR3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQVAvRS8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBRC94QUFBLzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rei83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFELzRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt6LzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvemdBQUFBQUFBQUFBQUFEL3pnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQS8rd0FBQUFBLyt3QUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUEvL2IvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBLzg3L3pnQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzdvQUFBQUFBQUFBQUFBQS8rTC91Z0FBLy9ZQUFQL09BQUQveFAvWUFBQUFBQUFBQUFBQUFQKzZBQUFBQUFBQUFBRC91Z0FBQUFELzdQL3MvODcvc1AvRS83b0FBQUFBQUFBQUFBQUFBQUQvN0FBQUFBRC80Z0FBLzdvQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rei80Z0FBQUFBQUFBQUEvN29BQVAvRUFBQUFBQUFBQUFBQUFBQVVBQUQvN1AvWUFBQUFBUC9zLzhRQUFQL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytML3hBQUFBQUQvcGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQVAvaUFBQUFBQUFBLytJQUFBQUEvOWovNGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFQL2kvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUEvODRBQUFBQUFBQUFBQUFBLyt6LzRnQUFBQUFBQUFBQUFBRC8yUC9pQUFBQUFBQUFBQUFBQVArNkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzg0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQVAvcy84NEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvbkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3pnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytJQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFQL0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBUC9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3pnQUFBQUQvOWdBQUFBQUFBUC9zQUFEL3pnQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUEvOFFBQUFBQS84NEFBQUFBLzdyL3NBQUEvOFQveFAvWS8rd0FBQUFBQUFBQUFBQUFBQUFBQVAvRUFBQUFBQUFBQUFEL3VnQUFBQUFBQUFBQUFBRC96Z0FBQUFBQUFBQUFBQUFBQUFBQS84Ny91Z0FBQUFBQUFQL0VBQUQveFAvRUFBQUFBQUFBQUFBQUFQKzZBQUQvMkFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vYi85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRnQUFBQUFBQUFBQUFBQUFBUC9ZQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFQL3MvODRBQUFBQUFBQUFBQUFBQUFELzJBQVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84Ny96Z0FBLyt3QUFQL0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBRkFBQUFBQUFBUC9zQUFEL3pnQUEvK0wvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzg3LzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL09BQUQvdWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRVlBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3ovOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUQvOXYvMkFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRnQUFBQUFBQUFBQUFBQUFBUC9PQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUEvODRBQUFBQUFBQUFBQUFBLzlqLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84VC8yQUFBQUFBQUFQL0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRkFBQUFBQUFBUC9zQUFELzJQLzIvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC80Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL09BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzR2L2lBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQVArNkFBQUFBQUFBQUFBQUFQL0VBQUFBQUFBQS8rd0FBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQS8rei8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS85Z0FBQUFBQUFBQUFBQUFBQUQvemdBQUFBQUFBQUFBQUFELzR2L2lBQUFBQUFBQUFBQUFBUC9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdQK3dBQUFBQUFBQUFBQUFBUC9ZLyt3QUFQL2kvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBLzhRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3hBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK0lBQUFBQUFBQUFBQUFBLy9ZQUFBQUEvL2IvNGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQThBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUhnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ2dBQUFBQUFBQUFBQUJHQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOWdBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84Ny83QUFBQUFBQUFBQUFBQUQveEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzM0QUFBQUFBQUFBQVAvT0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL2ZnQUFBQUFBQUFBQUFBQUFBUC9PQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvODRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQOStBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFEL3NBQUEvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBUC9zQUFBQUFBQUEvK3dBQUFBQUFBRC96Z0FBQUFBQUFBQUFBQUFBQUFBQUFBRC91Z0FBLzdvQUFBQWVBQUQvenYvT0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC96Z0FBQUFELzJBQUEvODcveEFBQUFBQUFBQUFBQUFBQUFQK3dBQUFBQVAvT0FBQUFBQUFBQUFELzJBQUFBQUQvdWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9pLzhULzdBQUFBQUQvNGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0NrQUFVQUJRQUFBQW9BQ2dBQkFBOEFFUUFDQUNRQUpBQUZBQ1lBS0FBR0FDNEFMd0FKQURJQU5BQUxBRGNBUFFBT0FFUUFSUUFWQUVnQVNRQVhBRXNBU3dBWkFGQUFVd0FhQUZVQVZRQWVBRmNBVndBZkFGa0FYQUFnQUcwQWJRQWtBSDBBZlFBbEFJSUFqUUFtQUpJQWtnQXlBSlFBbUFBekFKb0FvQUE0QUtJQXFBQS9BS29BclFCR0FMSUFzZ0JLQUxRQXVBQkxBTG9BdWdCUUFMOEF5QUJSQU1vQXlnQmJBTXdBekFCY0FNNEF6Z0JkQU5BQTBnQmVBTlFBM1FCaEFPY0E1d0JyQVBjQTl3QnNBUGtBK2dCdEFQd0EvQUJ2QVA0QkFBQndBUUlCQWdCekFRVUJCUUIwQVFjQkJ3QjFBUW9CQ2dCMkFRd0JGQUIzQVJZQkZnQ0FBUmdCR0FDQkFSb0JHZ0NDQVNNQktRQ0RBU3NCS3dDS0FTMEJMUUNMQVM4Qkx3Q01BVEVCTVFDTkFUTUJNd0NPQVRVQk9nQ1BBVHdCUEFDVkFUNEJQZ0NXQVVJQlJnQ1hBVlVCVlFDY0FWa0JYZ0NkQVdBQllRQ2pBV1VCYUFDbEFXd0JiQUNwQVc0QmJnQ3FBWEFCY1FDckFYTUJjd0N0QVhVQmVBQ3VBWG9CZXdDeUFYMEJmUUMwQVg4QmZ3QzFBWU1CZ3dDMkFZVUJoUUMzQVlrQmlRQzRBWXNCaXdDNUFZMEJqUUM2QVk4Qmp3QzdBWklCa2dDOEFaWUJsZ0M5QVpnQm1BQytBWndCbmdDL0FhTUJwd0RDQWFrQnFRREhBYXNCclFESUFhOEJzQURMQWJNQnN3RE5BYmNCdHdET0Fia0J2QURQQWI0QnZ3RFRBY0lCd3dEVkFjVUJ4d0RYQWNrQnlRRGFBY3dCendEYkFkTUIwd0RmQWRjQjF3RGdBZGtCMlFEaEFkc0Izd0RpQWVJQjR3RG5BZVVCNXdEcEFla0I2d0RzQWZFQjlRRHZBZmNDQXdEMEFnVUNCd0VCQWdrQ0N3RUVBaE1DRkFFSEFpQUNJQUVKQWtBQ1FBRUtBa01DUlFFTEFrY0NTZ0VPQWs0Q1RnRVNBbEFDVkFFVEFsWUNXZ0VZQWx3Q1hBRWRBbDRDWGdFZUFtRUNjQUVmQW5VQ2ZBRXZBbjhDZ1FFM0FvTUNqZ0U2QXBJQ2t3RkdBcFVDb0FGSUFxVUNxQUZVQXFvQ3F3RllBcTRDcndGYUFySUNzd0ZjQXJZQ3R3RmVBcmtDdkFGZ0FyNEN2Z0ZrQXNBQ3h3RmxBczhDM0FGdEF0OEM0QUY3QXVNQzZBRjlBdXNDOUFHREF2Z0MrQUdOQXZzREpBR09BeWtEUVFHNEEwTURRd0hSQTBVRFZBSFNBMkFEWVFIaUJNb0V5d0hrQmo0R1RRSG1CbG9HV3dIMkJtb0dld0g0Qm9BR2hRSUtCbzRHa1FJUUJwb0dvd0lVQnFZR3F3SWVCckFHd1FJa0JzZ0d6d0kyQnRnRzZ3SStCdkVHOHdKU0J2b0crZ0pWQnY0SEJ3SldCdzhIRUFKZ0J4TUhGd0ppQnlBSEpBSm5DSVlJaGdKc0NJMElsd0p0Q0pzSXBBSjRDTVVJekFLQ0NOUUkzZ0tLQ09JSTRnS1ZDTzRJN2dLV0NQQUkvUUtYQ1A4SkF3S2xDUVVKRFFLcUNxVUtwUUt6Q3FjS3B3SzBDcTRLcmdLMUFBSUIwZ0FGQUFVQUlRQUtBQW9BSVFBUEFBOEFQQUFRQUJBQU93QVJBQkVBUEFBa0FDUUFBd0FtQUNZQUt3QW5BQ2NBQkFBb0FDZ0FCUUF1QUM0QVF3QXZBQzhBS2dBeUFESUFCQUF6QURNQVZRQTBBRFFBQkFBM0FEY0FOQUE0QURnQUR3QTVBRG9BSndBN0FEc0FRd0E4QUR3QUd3QTlBRDBBUFFCRUFFUUFBZ0JKQUVrQVVBQkxBRXNBQWdCUUFGRUFBZ0JWQUZVQU9nQlhBRmNBTUFCWkFGb0FDd0JiQUZzQVJBQmNBRndBQ3dCdEFHMEFUZ0I5QUgwQVRRQ0NBSWNBQXdDSUFJZ0FCUUNKQUlrQUt3Q0tBSTBBQlFDU0FKSUFCQUNVQUpnQUJBQ2FBSm9BQkFDYkFKNEFEd0NmQUo4QUd3Q2dBS0FBVlFDaUFLY0FBZ0MvQUw4QUN3REJBTUVBQ3dEQ0FNSUFBd0REQU1NQUFnREVBTVFBQXdERkFNVUFBZ0RHQU1ZQUF3REhBTWNBQWdESUFNZ0FLd0RLQU1vQUt3RE1BTXdBS3dET0FNNEFLd0RRQU5BQUJBRFJBTkVBVVFEU0FOSUFCQURVQU5RQUJRRFdBTllBQlFEWUFOZ0FCUURhQU5vQUJRRGNBTndBQlFEbkFPY0FBZ0QzQVBjQVF3RDVBUGtBUkFENkFQb0FLZ0Q4QVB3QUtnRCtBUDRBS2dEL0FQOEFVUUVBQVFBQUtnRUNBUUlBS2dFRkFRVUFBZ0VIQVFjQUFnRUtBUW9BQWdFTUFRd0FBZ0VOQVEwQUJBRVBBUThBQkFFUkFSRUFCQUVUQVJNQUJRRVdBUllBT2dFWUFSZ0FPZ0VhQVJvQU9nRWpBU01BTkFFa0FTUUFNQUVsQVNVQU5BRW1BU1lBTUFFbkFTY0FOQUVvQVNnQU1BRXBBU2tBRHdFckFTc0FEd0V0QVMwQUR3RXZBUzhBRHdFeEFURUFEd0V6QVRNQUR3RTFBVFVBSndFMkFUWUFDd0UzQVRjQUd3RTRBVGdBQ3dFNUFUa0FHd0U2QVRvQVBRRThBVHdBUFFFK0FUNEFQUUZDQVVJQUF3RkRBVU1BQWdGRUFVUUFCUUZHQVVZQUJBRlZBVlVBQ1FGWkFWa0FDZ0ZhQVZvQUZ3RmJBVnNBRGdGY0FWd0FFQUZkQVYwQURBRmVBVjRBQ1FGZ0FXQUFWd0ZoQVdFQUNRRmxBV1VBRndGbUFXWUFDZ0ZuQVdjQVZnRm9BV2dBQ1FGc0FXd0FGd0Z1QVc0QVZBRndBWEFBVndGeEFYRUFEZ0Z6QVhNQVZnRjFBWFVBRUFGMkFYWUFDZ0YzQVhjQURnRjRBWGdBRlFGNkFYb0FGQUY3QVhzQUFRRjlBWDBBRlFGL0FYOEFUd0dEQVlNQUZBR0ZBWVVBQVFHSkFZa0FUd0dMQVlzQUdBR05BWTBBR0FHUEFZOEFXQUdTQVpJQUdBR1dBWllBREFHWUFaZ0FHQUdjQVp3QUpnR2RBWjBBSlFHZUFaNEFNUUdqQWFVQUpnR21BYVlBR1FHbkFhY0FId0dwQWFrQU13R3JBYXNBTWdHc0Fhd0FKUUd0QWEwQUVnR3ZBYThBR1FHd0FiQUFNZ0d6QWJNQUdRRzNBYmNBRFFHNUFia0FVd0c2QWJvQU1RRzdBYnNBSlFHOEFid0FId0crQWI0QUdRRy9BYjhBRWdIQ0FjSUFFZ0hEQWNNQUpnSEZBY1VBSmdIR0FjY0FEUUhKQWNrQVFnSE1BY3dBSGdITkFjMEFFUUhPQWM0QUhRSFBBYzhBR2dIVEFkTUFHZ0hYQWRjQUJnSFpBZGtBQmdIYkFkc0FIZ0hjQWR3QUhBSGRBZDBBQmdIZUFkNEFHZ0hmQWQ4QUVRSGlBZUlBRVFIakFlTUFKQUhsQWVVQUpBSG1BZWNBQmdIcEFla0FIUUhxQWVvQVVnSHJBZXNBSGdIeEFmSUFKQUh6QWZNQVVnSDBBZlFBR2dIMUFmVUFIQUgzQWZjQUpRSDRBZmdBSGdINUFma0FKd0g2QWZvQUN3SDdBZnNBSndIOEFmd0FDd0g5QWYwQUp3SCtBZjRBQ3dIL0FmOEFHd0lBQWdBQUN3SUJBZ01BT3dJRkFnWUFJUUlIQWdjQVBBSUpBZ29BSVFJTEFnc0FQQUlUQWhNQVRnSVVBaFFBVFFJZ0FpQUFFQUpBQWtBQURnSkRBa01BQWdKRUFrUUFBd0pGQWtVQUFnSkhBa2NBS1FKSUFrZ0FJZ0pKQWtrQUtBSktBa29BSUFKT0FrNEFIUUpRQWxBQURRSlJBbEVBT0FKU0FsSUFTd0pUQWxNQUpBSlVBbFFBTVFKV0FsWUFNd0pYQWxjQVNnSllBbGdBTXdKWkFsa0FTZ0phQWxvQVNRSmNBbHdBU1FKZUFsNEFNZ0poQW1FQUJnSmlBbUlBRFFKakFtTUFCZ0prQW1RQUh3SmxBbVVBT0FKbUFtWUFId0puQW1jQU9BSm9BbWtBSEFKcUFtb0FEUUpyQW1zQUJnSnNBbXdBRFFKdEFtMEFCZ0p1QW00QURRSnZBbThBT0FKd0FuQUFNUUoxQW5VQUVnSjJBbllBRVFKM0FuY0FTd0o0QW5nQUpBSjVBbmtBVXdKNkFub0FCZ0o3QW5zQVBnSjhBbndBU0FKL0FuOEFOd0tBQW9BQUx3S0JBb0VBTWdLREFvTUFOd0tFQW9RQUx3S0ZBb1VBR1FLR0FvWUFHZ0tIQW9jQUdRS0lBb2dBR2dLSkFva0FHUUtLQW9vQUdnS0xBb3NBRWdLTUFvd0FFUUtOQW8wQVBnS09BbzRBSGdLU0FwSUFCZ0tUQXBNQU1RS1ZBcFVBSlFLV0FwWUFIZ0tYQXBjQVJ3S1lBcGdBUmdLWkFwa0FSd0thQXBvQVJnS2JBcHNBTndLY0Fwd0FMd0tkQXAwQUVnS2VBcDRBRVFLZkFwOEFFZ0tnQXFBQUVRS2xBcVVBUlFLbUFxWUFIUUtuQXFjQVJRS29BcWdBSFFLcUFxb0FHUUtyQXFzQUdnS3VBcTRBRWdLdkFxOEFFUUt5QXJJQUVnS3pBck1BRVFLMkFyWUFFZ0szQXJjQUVRSzVBcmtBTXdLNkFyb0FRZ0s3QXJzQU13SzhBcndBUWdLK0FyNEFIUUxBQXNBQUhRTEJBc0VBRFFMQ0FzSUFCZ0xEQXNNQURRTEVBc1FBQmdMRkFzVUFHUUxHQXNZQUdnTEhBc2NBTWdMUEFzOEFEUUxRQXRBQUJnTFJBdEVBRFFMU0F0SUFCZ0xUQXRNQURRTFVBdFFBQmdMVkF0VUFEUUxXQXRZQUJnTFhBdGNBSHdMWUF0Z0FIQUxaQXRrQUh3TGFBdG9BSEFMYkF0c0FId0xjQXR3QUhBTGZBdDhBSlFMZ0F1QUFIZ0xqQXVNQVBnTGtBdVFBU0FMbEF1VUFOd0xtQXVZQUx3TG5BdWNBR1FMb0F1Z0FMd0xyQXVzQU5nTHNBdXdBTGdMdEF1MEFOZ0x1QXU0QUxnTHZBdThBRWdMd0F2QUFFUUx4QXZFQU5nTHlBdklBTGdMekF2TUFOZ0wwQXZRQUxnTDRBdmdBTGdMN0F2c0FFZ0w4QXZ3QUVRTDlBdjBBQXdMK0F2NEFBZ0wvQXY4QUF3TUFBd0FBQWdNQkF3RUFBd01DQXdJQUFnTURBd01BQXdNRUF3UUFBZ01GQXdVQUF3TUdBd1lBQWdNSEF3Y0FBd01JQXdnQUFnTUpBd2tBQXdNS0F3b0FBZ01MQXdzQUF3TU1Bd3dBQWdNTkF3MEFBd01PQXc0QUFnTVBBdzhBQXdNUUF4QUFBZ01SQXhFQUF3TVNBeElBQWdNVEF4TUFBd01VQXhRQUFnTVZBeFVBQlFNWEF4Y0FCUU1aQXhrQUJRTWJBeHNBQlFNZEF4MEFCUU1mQXg4QUJRTWhBeUVBQlFNakF5TUFCUU1wQXlrQUJBTXJBeXNBQkFNdEF5MEFCQU12QXk4QUJBTXhBekVBQkFNekF6TUFCQU0xQXpVQUJBTTNBemNBS1FNNEF6Z0FJZ001QXprQUtRTTZBem9BSWdNN0F6c0FLUU04QXp3QUlnTTlBejBBS1FNK0F6NEFJZ00vQXo4QUtRTkFBMEFBSWdOQkEwRUFEd05EQTBNQUR3TkZBMFVBS0FOR0EwWUFJQU5IQTBjQUtBTklBMGdBSUFOSkEwa0FLQU5LQTBvQUlBTkxBMHNBS0FOTUEwd0FJQU5OQTAwQUtBTk9BMDRBSUFOUEEwOEFHd05RQTFBQUN3TlJBMUVBR3dOU0ExSUFDd05UQTFNQUd3TlVBMVFBQ3dOZ0EyQUFOQU5oQTJFQU1BVEtCTXNBRGdZK0JqOEFGUVpBQmtVQUJ3WkdCazBBQ1FaYUJsc0FGQVpxQm1zQUFRWnNCbkVBREFaeUJua0FDZ1o2Qm5zQUdBYUFCb1VBRndhT0JwRUFEZ2FhQnFFQUVBYWlCcU1BRlFhbUJxY0FGQWFvQnFrQUFRYXFCcXNBR0Fhd0JyRUFGUWF5QnJjQUJ3YTRCcjhBQVFiQUJzRUFGQWJJQnM4QUFRYllCdDhBQVFiZ0J1RUFCd2JpQnVRQUZRYmxCdVlBQndibkJ1b0FDUWJyQnVzQUFRYnhCdk1BRkFiNkJ2b0FBUWIrQndNQURBY0VCd2NBQ2djUEJ4QUFHQWNUQnhZQURnY1hCeGNBVkFjZ0J5RUFGd2NpQnlNQUVBY2tCeVFBQVFpR0NJWUFVQWlOQ0pjQUZnaWJDS0FBSXdpaENLUUFDQWpGQ01ZQVRBakhDTWdBUUFqSkNNa0FQd2pLQ01vQVFBakxDTXdBUHdqVUNONEFDQWppQ09JQUNBanVDTzRBT1Fqd0NQSUFPUWp6Q1AwQUV3ai9DUU1BTFFrRkNRa0FMQWtLQ1EwQU5RcWxDcVVBUVFxbkNxY0FRUXF1Q3E0QVFRQUNBZ3dBQlFBRkFEb0FDZ0FLQURvQURBQU1BRDhBRHdBUEFDd0FFQUFRQURzQUVRQVJBQ3dBSkFBa0FBa0FKZ0FtQUFVQUtnQXFBQVVBTWdBeUFBVUFOQUEwQUFVQU53QTNBRElBT0FBNEFBd0FPUUE2QUNJQVBBQThBQmtBUFFBOUFEMEFRQUJBQUQ4QVJBQkVBQWNBUlFCRkFCUUFSZ0JJQUFFQVNRQkpBQnNBU2dCS0FDb0FTd0JMQUJRQVRnQlBBQlFBVUFCUkFBWUFVZ0JTQUFFQVV3QlRBQVlBVkFCVUFBRUFWUUJWQUFZQVZnQldBRGtBVndCWEFDZ0FXQUJZQUFZQVdRQmNBQkFBWFFCZEFEVUFZQUJnQUQ4QWJRQnRBRXdBZlFCOUFFc0FnZ0NIQUFrQWlBQ0lBRkVBaVFDSkFBVUFsQUNZQUFVQW1nQ2FBQVVBbXdDZUFBd0Fud0NmQUJrQW9nQ2lBQUVBb3dDb0FBY0FxUUN0QUFFQXRBQzRBQUVBdWdDNkFBRUF1d0MrQUFZQXZ3Qy9BQkFBd0FEQUFCUUF3UURCQUJBQXdnRENBQWtBd3dEREFBY0F4QURFQUFrQXhRREZBQWNBeGdER0FBa0F4d0RIQUFjQXlBRElBQVVBeVFESkFBRUF5Z0RLQUFVQXl3RExBQUVBekFETUFBVUF6UUROQUFFQXpnRE9BQVVBendEUEFBRUEwUURSQUFFQTB3RFRBQUVBMVFEVkFBRUExd0RYQUFFQTJRRFpBQUVBMndEYkFBRUEzUURkQUFFQTNnRGVBQVVBM3dEZkFDb0E0QURnQUFVQTRRRGhBQ29BNGdEaUFBVUE0d0RqQUNvQTVBRGtBQVVBNVFEbEFDb0E1d0RuQUJRQStBRDRBQlFBK1FENUFBWUErd0Q3QUJRQS9RRDlBQlFBL3dEL0FCUUJBUUVCQUJRQkJRRUZBQVlCQndFSEFBWUJEQUVNQUFZQkRRRU5BQVVCRGdFT0FBRUJEd0VQQUFVQkVBRVFBQUVCRVFFUkFBVUJFZ0VTQUFFQkV3RVRBQVVCRkFFVUFBRUJGZ0VXQUFZQkdBRVlBQVlCSEFFY0FEa0JJQUVnQURrQkl3RWpBRElCSkFFa0FDZ0JKUUVsQURJQkpnRW1BQ2dCSndFbkFESUJLQUVvQUNnQktRRXBBQXdCS2dFcUFBWUJLd0VyQUF3QkxBRXNBQVlCTFFFdEFBd0JMZ0V1QUFZQkx3RXZBQXdCTUFFd0FBWUJNUUV4QUF3Qk1nRXlBQVlCTXdFekFBd0JOQUUwQUFZQk5RRTFBQ0lCTmdFMkFCQUJOd0UzQUJrQk9BRTRBQkFCT1FFNUFCa0JPZ0U2QUQwQk93RTdBRFVCUEFFOEFEMEJQUUU5QURVQlBnRStBRDBCUHdFL0FEVUJRZ0ZDQUFrQlF3RkRBQWNCUkFGRUFGRUJSUUZGQUFjQlJnRkdBQVVCUndGSEFBRUJTUUZKQURrQlhRRmRBQThCWGdGZUFETUJZUUZoQURNQlpRRmxBRkFCYUFGb0FETUJiQUZzQUZBQmNRRnhBQ01CZHdGM0FDTUJlQUY0QUFzQmVRRjVBQ3NCZWdGNkFCSUJld0Y3QUNrQmZBRjhBQUlCZlFGOUFBc0Jmd0YvQUUwQmdRR0JBQ3NCZ3dHREFCSUJoUUdGQUNrQmhnR0dBQklCaUFHSUFCSUJpUUdKQUUwQml3R0xBQXNCakFHTUFFa0JqUUdOQUQ0QmpnR1BBQXNCa0FHUUFFa0JrUUdSQUFJQmtnR1NBQXNCbEFHVkFBSUJsZ0dXQUE4Qmx3R1hBQUlCbUFHWUFBc0JtUUdhQUFJQm5BR2NBQjhCbmdHZUFBNEJvd0dqQUI0QnBRR2xBQjhCcHdHbkFEQUJxUUdwQURFQnJRR3RBQjRCcndHdkFCZ0JzQUd3QUNFQnRBRzBBQjRCdHdHM0FBNEJ1Z0c2QUE0QnV3RzdBRTRCdkFHOEFEQUJ2Z0crQUJnQndBSEFBQ0FCd3dIREFCOEJ4Z0hHQUNFQnlRSEpBQjBCeXdITUFBTUJ6UUhOQUJjQnpnSE9BQW9CendIUEFCWUIwQUhRQUM4QjBRSFRBQU1CMUFIVUFCY0IxUUhXQUFNQjF3SFhBQW9CMkFIWkFBTUIyZ0hhQUFvQjJ3SGJBQndCM0FIY0FDNEIzUUhkQUFvQjNnSGVBQllCM3dIZkFBTUI0QUhnQUMwQjRRSGlBQU1CNHdIakFCd0I1QUhsQUFNQjVnSG1BQzhCNXdIbkFBTUI2UUhwQUFvQjZnSHFBRHdCNndIckFBTUI3QUhzQUFvQjhRSHhBQmNCOGdIeUFBTUI4d0h6QUR3QjlBSDBBQU1COVFIMUFDNEI5Z0gyQUFNQitBSDRBQU1CK1FINUFDSUIrZ0g2QUJBQit3SDdBQ0lCL0FIOEFCQUIvUUg5QUNJQi9nSCtBQkFCL3dIL0FCa0NBUUlEQURzQ0JnSUdBRG9DQndJSEFDd0NDZ0lLQURvQ0N3SUxBQ3dDRHdJUEFDd0NFd0lUQUV3Q0ZBSVVBRXNDUUFKQUFDTUNRd0pEQUFZQ1JBSkVBQWtDUlFKRkFBY0NSd0pIQUFVQ1NBSklBQUVDU1FKSkFBd0NTZ0pLQUFZQ1RnSk9BQW9DVHdKUEFBTUNVQUpRQUE0Q1VRSlJBRGNDVWdKU0FDY0NWUUpWQUFNQ1ZnSldBREVDVndKWEFCY0NXUUpaQUFNQ1hRSmRBQU1DWGdKZUFDRUNZQUpnQUNBQ1lnSmlBQTRDWXdKakFBb0NaQUprQUVnQ1pRSmxBRGNDWmdKbUFFZ0Nad0puQURjQ2FBSm9BQTRDYVFKcEFBb0NhZ0pxQUE0Q2F3SnJBQW9DYkFKc0FBNENiUUp0QUFvQ2JnSnVBQTRDYndKdkFEY0NjQUp3QUE0Q2NRSnhBQW9DZGdKMkFBTUNkd0ozQUNjQ2VBSjRBRHdDZWdKNkFBTUNld0o3QUNjQ2ZnSitBQU1DZndKL0FCZ0NnQUtBQUJZQ2dRS0JBQ0VDZ2dLQ0FDOENoQUtFQUFNQ2hnS0dBQU1DaHdLSEFDY0NpQUtJQUR3Q2lRS0pBQjhDaWdLS0FCd0NqQUtNQUFNQ2pnS09BQU1Da0FLUUFBTUNrUUtSQUE0Q2tnS1NBQW9Da3dLVEFBNENsQUtVQUFvQ2xRS1ZBRTRDbGdLV0FCd0Nsd0tYQUVjQ21BS1lBRVlDbVFLWkFFY0NtZ0thQUVZQ213S2JBQmdDbkFLY0FCWUNuUUtkQUI4Q25nS2VBQndDbndLZkFDQUNvQUtnQUMwQ29RS2hBQ0FDb2dLaUFDMENwQUtrQUFNQ3BRS2xBRVVDcGdLbUFFUUNwd0tuQUVVQ3FBS29BRVFDcWdLcUFCZ0Nxd0tyQUJZQ3JRS3RBQU1DcmdLdUFCNENyd0t2QUJjQ3NRS3hBQU1Dc3dLekFBTUN0QUswQUNBQ3RRSzFBQzBDdHdLM0FBTUN1UUs1QURFQ3VnSzZBQjBDdXdLN0FERUN2QUs4QUIwQ3ZRSzlBREVDdmdLK0FCMEN3QUxBQUFvQ3dRTEJBRU1Dd2dMQ0FCMEN3d0xEQUVNQ3hBTEVBQjBDeFFMRkFCZ0N4Z0xHQUJZQ3h3TEhBQ0VDeUFMSUFDOEN6QUxNQUFNQ3pnTE9BQU1DendMUEFBNEMwQUxRQUFvQzBRTFJBQTRDMGdMU0FBb0Mwd0xUQUE0QzFBTFVBQW9DMVFMVkFDRUMxZ0xXQUM4QzF3TFhBREFDMkFMWUFDNEMyUUxaQURBQzJnTGFBQzRDMndMYkFEQUMzQUxjQUM0QzNRTGRBQ0FDM2dMZUFDMEM0QUxnQUFNQzRnTGlBQU1DNHdMakFDY0M1UUxsQUJnQzVnTG1BQllDNXdMbkFCZ0M2QUxvQUJZQzZRTHBBRUlDNmdMcUFBb0M2d0xyQUVJQzdBTHNBQW9DN1FMdEFFRUM3Z0x1QUVBQzd3THZBRUVDOEFMd0FFQUM4UUx4QUI0QzhnTHlBQmNDOUFMMEFBTUM5UUwxQUE0QzlnTDJBQW9DOXdMM0FCOEMrQUw0QUJ3QytnTDZBQW9DK3dMN0FCNEMvQUw4QUJjQy9RTDlBQWtDL2dMK0FBY0Mvd0wvQUFrREFBTUFBQWNEQVFNQkFBa0RBZ01DQUFjREF3TURBQWtEQkFNRUFBY0RCUU1GQUFrREJnTUdBQWNEQndNSEFBa0RDQU1JQUFjRENRTUpBQWtEQ2dNS0FBY0RDd01MQUFrRERBTU1BQWNERFFNTkFBa0REZ01PQUFjRER3TVBBQWtERUFNUUFBY0RFUU1SQUFrREVnTVNBQWNERXdNVEFBa0RGQU1VQUFjREZnTVdBQUVER0FNWUFBRURHZ01hQUFFREhBTWNBQUVESGdNZUFBRURJQU1nQUFFRElnTWlBQUVESkFNa0FBRURLUU1wQUFVREtnTXFBQUVES3dNckFBVURMQU1zQUFFRExRTXRBQVVETGdNdUFBRURMd012QUFVRE1BTXdBQUVETVFNeEFBVURNZ015QUFFRE13TXpBQVVETkFNMEFBRUROUU0xQUFVRE5nTTJBQUVETndNM0FBVURPQU00QUFFRE9RTTVBQVVET2dNNkFBRURPd003QUFVRFBBTThBQUVEUFFNOUFBVURQZ00rQUFFRFB3TS9BQVVEUUFOQUFBRURRUU5CQUF3RFFnTkNBQVlEUXdOREFBd0RSQU5FQUFZRFJRTkZBQXdEUmdOR0FBWURSd05IQUF3RFNBTklBQVlEU1FOSkFBd0RTZ05LQUFZRFN3TkxBQXdEVEFOTUFBWURUUU5OQUF3RFRnTk9BQVlEVHdOUEFCa0RVQU5RQUJBRFVRTlJBQmtEVWdOU0FCQURVd05UQUJrRFZBTlVBQkFEWUFOZ0FESURZUU5oQUNnRXl3VExBQ01GRndVWEFCY0dQZ1kvQUFzR1FBWkZBQTBHVGdaUEFDc0dVQVpUQUNZR1dnWmJBQklHWEFaaEFCRUdhZ1pyQUNrR2JBWnhBQThHZWdaN0FBc0dmQVovQURZR2hnYU5BQUlHa2dhWkFBSUdvZ2FqQUFzR3BBYWtBQ1lHcFFhbEFDc0dwZ2FuQUJJR3FBYW9BQThHcVFhcEFDa0dxZ2FyQUFzR3JBYXZBQUlHc0FheEFBc0dzZ2EzQUEwR3dBYkJBQklHd2diSEFCRUcwQWJYQUFJRzRBYmlBQTBHNHdia0FBc0c1UWJtQUEwRzV3Ym9BRE1HOFFiekFCSUc5QWIxQUJFRy9nY0RBQThIQ3djT0FBSUhEd2NRQUQ0SEVRY1NBQUlIRXdjVUFDTUhHd2NmQUFJSWhnaUtBQnNJalFpWEFCVUltQWlaQUU4SW1naWFBQVFJbXdpZ0FBZ0lvUWl2QUFRSXNBaTBBQWdJdFFpM0FBUUl3d2pFQUVvSXhRalRBQVFJMUFqZkFBZ0k0QWpoQUFRSTRnamlBQWdJNHdqbUFBUUk1d2pzQUJvSTdnanVBRGdJOEFqeUFEZ0k4d2o5QUJNSS93a0RBQ1VKQlFrSkFDUUpDZ2tOQURRQUJBQUFBQUVBQ0FBQmFEWUFEQUFCYVhZQ2JnQUNBR1VBSkFBOUFBQUFSQUJkQUJvQWdnQ1lBRFFBbWdDNEFFc0F1Z0ZKQUdvQlZRRlZBUG9CVndJQUFQc0NGd0lYQWFVQ0lBSWdBYVlDUFFJOUFhY0NRZ0pGQWFnQ1J3SktBYXdDVEFKcEFiQUNiZ0p4QWM0Q2RRTlZBZElEWUFTRkFyTUVvZ1NtQTlrRXhRVEhBOTRFeVFUSkErRUV6QVRNQStJRXpnVVJBK01GRlFVVkJDY0ZHQVZXQkNnRlhBVmNCR2NGWXdWa0JHZ0Zad1ZwQkdvRmF3VndCRzBGZEFWMEJITUZod1dWQkhRRmx3YnJCSU1HOFFiNkJkZ0cvZ2NIQmVJSEN3Y1hCZXdIR3dja0Jma0hRQWRFQmdNSFNBZElCZ2dIWEFkeEJna0hpUWVyQmg4SHhBZlRCa0lIMWdmYkJsSUg1QWZrQmxnSDZRZnNCbGtIN2dmd0JsMEg4Z2YyQm1BSCtRZjVCbVVJQlFnRkJtWUlDZ2dMQm1jSURRZ09CbWtJRUFnU0Jtc0lGUWdXQm00SUd3ZzhCbkFJUmdoSEJwSUlUQWhQQnBRSVVRaFNCcGdJVlFoVkJwb0lXQWhaQnBzSVhBaGNCcDBJWGdoZkJwNElaQWhuQnFBSWFRaHBCcVFJZEFoN0JxVUlmUWlGQnEwSWl3a09CcllKRUFrVEJ6b0pGZ2taQno0SkhBa2NCMElKS2drdkIwTUpNUWt4QjBrSlBnbExCMG9KVGdsUEIxZ0pWZ2xXQjFvSlhBbGZCMXNKWXdsakIxOEpkQWw0QjJBSmVnbCtCMlVKakFtTkIyb0psd21ZQjJ3Sm5BbWNCMjRKckFtdEIyOEpyd212QjNFSnNRbXhCM0lKc3dtekIzTUp0d20zQjNRSnVnbTZCM1VKdkFtOEIzWUp3d25GQjNjSjFnbldCM29KM2dubUIzc0o2QW5wQjRRSjZ3bnNCNFlLeUFySUI0Z0sxZ3JXQjRrSzJBcmJCNG9LM3dyZkI0NEs0Z3JqQjQ4SzZncnJCNUVLN3dydkI1TUxnQXVBQjVRTWlBeUlCNVVNaWd5S0I1WU1rQXlRQjVjSG1GOVNIWElhNmhhT0d3Z1c2QnF1R3VvWmdnOUtIZGdhMGgwa0d2QmY0QjZlR3VRZWtocjJYMEFjRmg2ZUYrUWNyRXdvR3lBYnZCdVNIZVFicWhzZ1gyUWJ3aDNxSG93YlhCdklHN0FidGh2T1lBUWJtQnVlRzlRYzRsOHVHd2djMWhtbUhjWVlDQmdDWDFKZlVsOVNYMUpmVWw5U0dtd1craHNJR3dnYkNCc0lHWUlaZ2htQ0dZSVNMQnJ3WCtCZjRGL2dYK0JmNEIwd0hCWWNGaHdXSEJaTUtCNmVFem9idkJ1OEc3d2J2QnU4Rzd3VWZoYUlHeUFiSUJzZ0d5QWJPQnM0R3pnYk9CeXNHODVnQkdBRVlBUmdCR0FFSEt3YkNCc0lHd2diQ0JnSUc2UVlDRjlTRzd4ZlVodThEekliNEJycUhlUWE2aDNrR3VvZDVCcnFIZVFXamh1cUVpd1NJQnNJR3lBYkNCc2dHd2diSUJ2K0crWWJDQnNnR3E0YndocXVHOElhcmh2Q0R6Z2J3aHJxSGVvUFBodk9HWUliT0JtQ0d6Z1pnaHM0R3c0YitCbUNEMFFTc0E5S0cxd1BVQlBRRzhnYTBodXdEMVlQWEJyU0c3QWEwaHV3R3RJYnNCcndHODRQWWhOWUd2QWJ6aHF1R2tnWlpGL2dZQVJmNEdBRVgrQmdCQm0rRzdZZWtodlVEMmdQYmg2U0c5UWE5aHppR3ZZYzRnOTBFNDRhOWh6aUQzb1BnRjlBWHk1ZlFGOHVIQlliQ0J3V0d3Z2NGaHNJSEJZYkNCd1dHd2dQaGh2K0YrUVpwa3dvR0FoTUtCc2dHQUliSUJnQ0d5QVlBaHRLRDR3ZHRCdThHbXdVZmgwd0hLd1BrZytZRDU0UHBCZmtFaUFhY2hsMkdaUWRoRjlTRXpvYk1oclNHd2diSUJycVgrQVpnaDNZSENnZEpCcndHOGhmNEJ3V0hwNUhZRjlBVENnU3lCeXNHakFkdWhtQ1RDZ2VuaHlhR1dRZGhCbzhIcDVJSmh2YVlBUWNtZysyR1dRYkNCMkVHOGhmUUIwMlIyWVBxbUFFRDdBWmpnKzJFaUFVWUJvOEQ3d2VEaHNhR2FZZGhCbzhZQVFhUEJtbUd3Z1B3aHN5SGJRYTlobUNHWUlkd0JteUV4d1B3aHA0UU9JUHlGOVNIaFFkY2hzeUhTb2JDQlIrWDg0ZHVoMjZHbmdkSGgwa0d1cGY0QndXSHA0YTZsOUFRT0lTeUJ5c0VSNFJXZy9PRDlRUDJoUU1EK0FlbUEvbUZISWJ2Ri9PRTc0UDhoMmNHeUFkTUYveUhjd2R6QnhxSFpaSUpoUEtZQVFkNmh1WUhlUWF6QmdJRkU0ZHhnL3NFV0FkYkIxc0V3UWEyQnNnR3N3ZGloS0dHeUFaWkEveUhKUWM0aDZNR3pnYlhCZ1VEL2diemh4cUdBZ1AvaEFFRXk0WDVCbW1GK1FacGhma0dhWk1LQmdJRmtZZHVodGNIU1FidGhBS0VCQWRNRi9PR3VvYkNCc0lIYm9iSUIzTUYrUVFYaEFXSFhJUUhCQWlFQ2dUdmhBdUVEUVFPa0RpRzRZUVFCQkdFRXdhTUJzYUhUQWNyRjlTR2lwZlVob3FFRklRV0Jma0VGNGI4aEJrRUdvUWNCMTRHeUFWeUJ1a0hCd1ROQkIyRUh3UWdoQ0lFSTRRbEJDYUVLQWFlQnhxR25nYnlCRmFFOG9RcGhDc0hXQVR5aEN5RUxnUkFCUEtFTDRReEJES0VOQk1LQkpFVENnU1JCRFdFTndRNGhEb0VPNFE5QkZhSENnUldoM3FFUG9SQUJFR0VRd1pnaFIrSFRBUkVoRVlFUjRSSkJFcUVUQVJOaEU4RVVJUlNCRk9FVlFaZ2w5U0c3eGZVaHU4R213VWZoc0lHeUFTUGhzc0VqNGJMQlIrSFRCZnpsL3lHWWdUc2gyNkhjd2R1aDNNWCtCZ0JCMHdIS3dkTUJ5c0hwZ2F6RURpR0FoQTRoZ0lRT0lZQ0JGYUVXQVJaaEZzRkF3YTJCRnlFWGdSZmhHRUhLd2R4aDRVRzZvWm1oZytHRDRSaWhHUUVaWVJuQm1VRWFJUnFCR3VGSElSdEJHNllBUWNtaEhBRWNZUnpCSFNYMUlidkY5U0c3eGZVaHU4WDFJYnZGOVNHN3dSekJIU1gxSWJ2RjlTRzd4ZlVodThYMUlidkJITUVkSVNBaGYyR3dnYklCc0lHeUFiQ0JzZ0d3Z2JJQnNJR3lBYkNCc2dFZ0lYOWhtQ0d6Z1IyQkhlRWVRUjZsL2dZQVJmNEdBRVgrQmdCRi9nWUFSZjRHQUVFZVFSNmhxdUduZ2FyaHA0R3E0YWVCcXVHbmdSOEJIMkVmd1NBaHdXR3dnU0NCTUVFZ2dUQkJJSUV3UVNDQk1FRWc0U0ZCSWFHQWhNS0JnSVRDZ1lDQklnSGc0U0poNFVIV0FlRkI0VUhYSVZ5QnJNR3VvZDVCSXNHakFlRkI0VUVqSVNPQkkrWDg0U1JCcllFckFZYmhKS0dZSWQ2aHZJR3poZlFGOXFFbEFaWkIwd0UvUVNWaEpjRzZRU1loSm9IT0pIWUJKdUU1b1NkQko2SGc0ZHVoS0FUQ2dlRGh1OEd5WVppQm1JRTdJVHNoS0dFOFJmOGhLTUZ0d1NraDFnRXBnU25oTFVFdG9TNEJLa0Vxb1NzQksyRXJ3U3dsOVNHN3daZ2hzNFgrQmdCQndXR3dnY0Zoc0lIQlliQ0J3V0d3Z2NGaHNJWDFJYnZGOVNHN3dhYkJSK0VzZ2JwQnF1RzhJZDJCdklFczRjeEJMT0hNUVppQk95RXRRUzJoTGdHcTRid2hNY0V1WWE4QnZPWDFJYnZGOVNHN3diQ0JzZ0d3Z2JJQm1DR3pnWmdoczRYK0JnQkYvZ1lBUWVraHZVSHBJYjFCd1dHd2djRmhzSUV1d1M4aHJxSGVvUytCTCtFd1JmemhNS0V4QmZVaHU4RnR3VzRsL2dZQVJmNEdBRVgrQmdCRi9nWUFSTUtCZ0lFeFlaY0IxbUV4d1RJbDlTR3VvVEtCclNYMEFUamhPbUV5NFROQk02SEJZY0tCc0lFMEFUUmh1WUUwd2JwQjZTRzlSTUtCZ0lHN3dlRkI0VUhoUVo3aHdjRzZRZUZCc3NHeXdjbW1BRUc1Z2JwQnZDRThRVFVoejBFMWdiemhsa0hvd2RoRjY0R2U0VFhodVlFMlFZYmhOcUUyb1paQmxrRTNBY3JCTjJHcTRVVGgyRUhZUVRmQk44RTN3VGdoT0lHN3didkJPT0c1Z2JtQnVZRzVnVGxCT2FHd2dWeUJ2T0hQUVpwaGJvRTZBVHBoT3NFN0lUc2hQY0U5d1QzQk80WCtBVHZtQUVFOFFUeWh1WUU5QVQxaHVrRTl3VDNCUGlFK2dUN2hQMEUvb1VBQlFHRkF3YThCUVNIQzRVR0JRWUZCNFdSaHR1RkR3Vi9oUWtGU3dVS2hRd0ZEWVVQQlpTRkVJVlhCdU1IZVFiakJSSUZFNUlKaG1PSGhRVVZCdEVGRm9VWUJSbUhDNFViQlJ5R1k0ZDVCdGNIVEFjbEJyTUhwNGJwQnJxU29vVWVCbU9HbmdhNmhwNEd1UWJuaGZrR2FZY0hCcTZGSDRkZUJ6V0d5QWJJQjFhSE53VWhCU0tHdlljZkJTUUhlb1VsaHpXSENnY0tCd29HN1pIWmorZUc4NFVxQnN5R3pJZFdoNmVIQ2dhMkJTY0hOWWNGaGdDRzR3VW9oU29GS2dVcmhTMEZMb1V1aFRBRm1vVXhoVE1GTklVMkJUZUZPUVZTaFRxRlhRVmRCVHdGUFllcWhUOEZRSVZDQlVPRlJRVkZCWFVGUm9WSUJVbUhhZ1ZMQlV5RlRnVjhoVStGVVFlVUJZV0ZVb1ZVRUNDRmtZVlZoVmNGbW9WMUJWaUZXZ1ZiaFYwRlhvV0loV0FGWVlWakI0bUZaSVZtQldlRmFRVnFoV3dGYlliemhXOEZjSmV1QjJFRzVnVnlCdVNHNnBmWkJ2Q0ZjNGJtQlhVRmRvVjRCWWlGZVlWN0JZMEZmSVYrQnpvRmY0V0JCWUVGalFXTkJZS0ZoQVdFQllXRmhZV0hCWWlGaWdXTGhZMEZqb1dhaFpBSHFvV1JoWk1GbElXV0JaZUZtUVdhaDF5RzVJV2NCWjJGbndXZ2hiNkZvZ1dqaHVxRnBRV21oYWdGcVlXckJheUZyZ1d2aHNJR3lBYkNCc2dGc1FXeWhiUUZ0WVczQmJpRnVoZlpCcXVHOElhNmgzcUZ1NFc5QnJxSGVvVytoc1VGd0FYQmhjTUZ4SVpnaHM0SGRnYnlCY1lGeDRYSkJjcUZ6QVhOaGN3RnpZWFBCZENGMGdYVGgwa0c3WVhWQmRhR3ZBYnpoZGdGMllYYkJkeUYzZ1hmbC9nWUFSZjRHQUVYK0JnQkYvZ1lBUWVuaHVZSHA0Ym1CNlNHOVFYaEJlS0Y0UVhpaGVRRjVZYTloemlGNXdYb2hyMkhPSWE5aHppRjV3WG9sOUFYeTRYcUJldUY3UVh1aGZBRjhZY0Zoc0lIQlliQ0JmTUY5SWNGaHNJSEJZYkNCMTRITllYMkJmZUYrUVpwaGZxRi9BY3JCM0dIS3dkeGt3b0dBZ2JJQmdDRi9ZWC9Cc2dHQUlkNmw4dUdhWVlDQnU4RzBvZW5oNmVIcDRlbmg2ZUhwNGVuaDZlWDFKZlVoZ09HRDRZSUJnVUdCb1lJQnlhSEpvY21oeWFISm9jbWt3aVRDSVlKaGdzR0RJWU9CbGtHV1FaWkJsa0dXUVpaQmxrR1dRWVBoMXNHRVFZU2hoUUdGWVlYQmhpSFlRZGhCMkVIWVFkaEIyRUhZUWRoR0FFSEM0Wm1oaG9HRzRZZEVxS1NvcGdCR0FFWUFSZ0JHQUVZQVFhY2hoNkdJQVloaGlNR0pJYVBCbzhHandhUEJvOEdqd2FQQm84R2NRWW1CaWVHS1FacGhtbUdhWVpwaG1tR2FZWnBobW1HWlFZcWhpd0dMWVl2QmpDR01nWXpoNmVIcDRjbWh5YUdXUVpaQjJFSFlSZ0JHQUVHandhUEJtbUdhWVpVaGxTR1ZJWlVobFNHVklaVWhsU0dOUVkyaGpnR09ZWTdCbDhHUElZK0Jsa0dXUVpaQmxrR1dRWlpCbGtHV1FZL2hrRUdRb1pFQmtXR1NJWkhCa2lHYXdackJtc0dhd1pyQm1zR2F3WnJCa29HUzRaTkJrMEdUb1pRQmxHR1V3ZW5oNmVHVklaVWhsU0hwNFpVbDlTWDFJWldGOVNHVjRaWkJsa0dXUVpaQmxrR1dvWmNCbDJIV3daZkIyRUhZUWRoQjJFSFlRZGhCbUNHWUlkRWhtSUdqd2FQQm84R2p3WmpobU9HandhUEV3b1RDZ1psQm1hR2FBWnJCbXNHYXdacGhtc0diSVp1Qm0rR2NRWnloblFHZFlaM0JuaUdlZ2J0aG51R3pJYnNCc3lIcDRkTmhuMEdmb2FBQm9HR2d3YUVob1lHaDRhSkJvcUdsUWFNQnowSEJBZFdobzJIcDRlbmg2ZUhwNGVuaDZlSHA0ZW5oMkVIWVFkaEIyRUhZUWRoQjJFSFlRYVBCbzhHandhUEJvOEdqd2FQQm84SFlRZGhCMkVIWVFhUEJvOEdqd2FQQnBDR2tnYVRocFVHbG9hWUJwbUdtd2FjaHA0SEdvYWZocUVHb29ha0JxV0dwd2FvaHFvR3E0YXRCcTZIYlFhd0I0VUdzWWF6QjNZSGRnZDJCclNYK0JmNEI2ZUd0Z2EzaHJrR3VRZW5oNTBHdkFhNmgzWUd2QWE5aHI4WDg1RDNCc0NYMUliQ0JzT0hCWWJGQnNhSExJYk9CdGNZQVFiSUYveUd5WWJMQnN5R3pnYlBodGNHMFFiU2h0S0hLd2JVQnRXRzF3YlhCdHVHMXdiWWh0b0hPZ2JiaHQwRzNvYmdCdUdHNHdieUJ2SUc4Z2JzQnVTRzVnYm5odWVITllicEJ1a0c2b2JzQnUyRzg0YnZCdk9ZQVFid2h2SUc4NGIxQnppU0NaTEpod3VHOW9iNEJ2bUcrd2I4aHY0Ry80Y0JCemlIQkFjRUJ3UUhCQWNFQndRSEJBY0Nod1FIQkFjRUJ3V0hCWWNIQndvSENnY0tCd2lIQ2djS0J3dUhDNGNMaHd1SERRY05CdzBIRFFjTkJ3MEhEUWNOQncwSERvY1FCeE1IRXdjVEJ4R0hFd2VubUFFSHA0Y1hoeGVIRjRjWGh4ZUhGNGNYaHhTSEY0Y1dCeGVIR1FjWkJ4cUhIQWMzQnpjSE53Y2RoemNISHdjZ2gxeUhYSWRjaHlJSEk0ZGNoMXlIWElkY2gxeUhYSWRjaDF5SFhJZGNoMXlIWEpJSmh5VUhKb2NvQnowSFBRYzlCeW1TMjVMYmt0dUhMaExiaHkrSEt3Y3NrdHVTMjRjdUJ5K1lBUmdCR0FFWUFSZ0JHQUVZQVJnQkJ6RVlBUmdCQnpLSE5BYzBCelFITkFjMEJ6V0hOd2MzQnpjSE53YzNCemlIT0ljNGh6aUhPZ2M3aHowSHA1RUJoejZIUUFkQmgwTUhSSWRHQjBxSFI0ZEpGL2dYK0FkS2gwd0hUWWRQQjFDSFVnZFRoMVVIVm9kWUIxbUhXd2VtQjF5SFhnZGZoMkVIWW9ka0IyY0haWklKaDJjSGFJZHFCMnVIYlFkdWgzQUhmd2R4aDNNSGRKS3FGOVNYODRkMkIzZUhlUWQ2bDlrWUFRZW5oM3dIZllkL0I0Q0hnZ2VDQjRPSGhRZUdoNGdIaVllTEI0eUhqZ2VQaDVFSGtvZVVCNVdIbHdlWWg1b0htNGVkRXFFSG5vZWdCNkdIb3dla2g2WUhwNGVwQjZxSHJBZXRnQUJBVXIvSGdBQkFZNy9Jd0FCQVhjQUFBQUJBVUwvUEFBQkFBTC9VQUFCQVUvL0l3QUJBUzcvSXdBQkFJai9Jd0FCQVlUL0l3QUJBVkgvSXdBQkFJZi9Jd0FCQVFUL0VBQUJBUnIvSXdBQkFONy9Jd0FCQVhEL0hnQUJBUjcvRUFBQkFRVC9Jd0FCQVBQL0l3QUJBVkFBQUFBQkFZc0FBQUFCQVBML1FBQUJBVllBQUFBQkFQVC9RQUFCQVhYL0VBQUJBWHdBQUFBQkFYRC9QZ0FCQWcwQUFBQUJBaFFBQUFBQkFWOEFBQUFCQVVBQUFBQUJBaEVBQUFBQkFULy9Rd0FCQU44QUFBQUJBYnNBQUFBQkFVRC9SQUFCQVJFQUFBQUJBVXIrNlFBQkFSLys2UUFCQVZJQUFBQUJBcEFBQUFBQkFoY0FBQUFCQVYwQUFBQUJBbG9BQUFBQkFnZ0FBQUFCQVhnQUFBQUJBaUVBQUFBQkFTei9KZ0FCQVAvL05BQUJBbkgvRUFBQkFpLy9FQUFCQVprQUFBQUJBUHYvRUFBQkFZai9QZ0FCQVZQL1JBQUJBVkwvQmdBQkFSWC9Dd0FCQWRmL1BnQUJBYVQvUkFBQkFTLy9IZ0FCQVAvL0hnQUJBVnovUGdBQkFTZi9Rd0FCQVh2L1BnQUJBVVAvUkFBQkFpSC9CZ0FCQWJYL0N3QUJBWFAvSGdBQkFSei9IZ0FCQVJyL1BnQUJBUG4vUkFBQkFVMy9QZ0FCQVNIL1F3QUJBYm4vUGdBQkFYVC9SQUFCQVcvL1BnQUJBVWIvUXdBQkFmc0FBQUFCQVlZQUFBQUJBZnYvUGdBQkFZYi9SQUFCQVdYL0JnQUJBU2IvQ3dBQkFYbi9QZ0FCQVR2L1JBQUJBWFAvQmdBQkFUMy9Dd0FCQVluL1BnQUJBVmYvUkFBQkFXSC9QZ0FCQVRuL1F3QUJBZHovUGdBQkFaUC9SQUFCQVdFQUFBQUJBVGtBQUFBQkFRNy9QZ0FCQU4vL1JBQUJBUTMvTGdBQkFPTC9NUUFCQVV2L0xnQUJBU0gvTVFBQkFaNEFBQUFCQVVmL1BnQUJBUi8vUkFBQkFmUUFBQUFCQWdBQUFBQUJBZEFBQUFBQkFZSUFBQUFCQVd3QUFBQUJBVlFBQUFBQkFYVC9MZ0FCQVRuL01RQUJBVXIvUmdBQkFSLy9SZ0FCQUxIL1JnQUJBSXIvUmdBQkFZci9SZ0FCQVREL1JnQUJBWTcvUmdBQkFUMy9SZ0FCQVhEL1JnQUJBUzMvUmdBQkFaWUFBQUFCQVpiL1JnQUJBVjcvUmdBQkFTVC9SZ0FCQVRvQUFBQUJBTjcvRUFBQkFXNEFBQUFCQVREL0lRQUJBUW9BQUFBQkFYNEFBQUFCQVFqL0VBQUJBTlFBQUFBQkFZVC9FQUFCQWJQL0VBQUJBV0FBQUFBQkFUMy9uQUFCQVJNQUFBQUJBTHovRUFBQkFTWUFBQUFCQU1BQUFBQUJBVzhBQUFBQkFSMEFBQUFCQU8wQUFBQUJBS0lBQUFBQkFRTC8vd0FCQUlrQUFBQUJBaHIvUEFBQkFqTC9FQUFCQVNuL0VBQUJBd24vUEFBQkF5SC9FQUFCQW8vL0VBQUJBWm9BQUFBQkFZci9IZ0FCQS84QUFBQUJBOUVBQUFBQkEyQUFBQUFCQVUzL0VBQUJBU1gvakFBQkFQVC9VZ0FCQVhiL0VBQUJBYkgvbHdBQkFWNEFBQUFCQVN6L0xnQUJBTzcvTVFBQkFNY0FBQUFCQWVVQUFBQUJBZVgvRUFBQkFSei9NQUFCQU9VQUFBQUJBT0lBQUFBQkFVZ0FBQUFCQVN6L01BQUJBSkwvUEFBQkFZSC9FQUFCQVFmL0VRQUJBVHYvSXdBQkFMY0FBQUFCQVZqL0VBQUJBZHYvRUFBQkFVa0FBQUFCQWJFQUFBQUJBTlgvRUFBQkFMVUFBQUFCQUxYL0VBQUJBUFAvRUFBQkFNRC9od0FCQU1EL0VBQUJBUHNBQUFBQkFPNy9FQUFCQVJUL3FRQUJBUVgvRUFBQkFQSC9FUUFCQVNnQUFBQUJBU01BQUFBQkFVTUFBQUFCQVJqL0l3QUJBT0FBQUFBQkFOMEFBQUFCQXN3QUFBQUJBc1gvRUFBQkFzei9xUUFCQWlJQUFBQUJBVi8vRUFBQkFwRC85Z0FCQWt6L0VBQUJBYlFBQUFBQkFRTUFBQUFCQVQ3L0VBQUJBTTRCSHdBQkFJb0Fqd0FCQVFZQkh3QUJBRUlBandBQkFLc0FrQUFCQUZnQkh3QUJBTEVCSHdBQkFTei85Z0FCQVhqL0VBQUJBUFQvTXdBQkFPLy9FQUFCQVBrQUFBQUJBUlgvRUFBQkFRTC9FQUFCQVVRQUFBQUJBWG4vRUFBQkFiZ0FBQUFCQUk3L013QUJBT0wvYndBQkFYSUFBQUFCQVQ4QUFBQUJBVGIvaFFBQkFPY0FBQUFCQVA0QUFBQUJBTmNCSHdBQkFTVUJId0FCQU5FQkh3QUJBTjhCSHdBQkFLMEJId0FCQVFNQkh3QUJBUEVCSHdBQkFITUJId0FCQUFFQXRRQUJBTm9CSHdBQkFTWUJId0FCQVFBQkh3QUJBT01CSHdBQkFOc0JId0FCQUxjQkh3QUJBTzhCSHdBQkFTNEJId0FCQUxzQkh3QUJBUjRCSHdBQkFOTUJId0FCQU1BQkh3QUJBTG9CSHdBQkFLUUJId0FCQUtFQkh3QUJBRjBBcEFBQkFMWUJId0FCQU1VQkh3QUJBSUVCSHdBQkFGa0Fqd0FCQUpBQkh3QUJBVFVCSHdBQkFLb0JId0FCQUtVQkh3QUJBUHdCSHdBQkFLMEFqd0FCQVBJQWp3QUJBTGNBandBQkFGci9vQUFCQU1UL29BQUJBS3Ivb0FBQkFQei9vQUFCQUszL0VBQUJBTWIvRUFBQkFQTC9FQUFCQUxmL0VBQUJBVU1EQ3dBQkFOSUJId0FCQVRVQUFBQUJBUmovTVFBQkFNb0JId0FCQUxrQkh3QUJBSzhCSHdBQkFLWUJId0FCQUdnQkh3QUJBTUlBandBQkFNMEFtZ0FCQUlvQkh3QUJBR3dCSHdBQkFKSUJId0FCQVRVQWp3QUJBTTBBandBQkFOWUJId0FCQU1ZQkh3QUJBUFFBandBQkFKNEFqd0FCQUZnQWp3QUJBSDBBandBQkFNa0JId0FCQU0wQkh3QUJBS3NCSHdBQkFKNEJId0FCQUpvQWp3QUJBTE1BNndBQkFLb0Fqd0FCQU1RQkh3QUJBVUwvUmdBQkFVWC9SZ0FCQVVML1pRQUJBVVgvWlFBQkFSei9FQUFCQVZjQUFBQUJBVmYvUmdBQkFTZi9SZ0FCQVZmL1pRQUJBU2YvWlFBQkFWZi9FQUFCQVNmL0VBQUJBVmYvT0FBQkFTZi9PQUFCQVMzL09BQUJBU3ovT0FBQkFTMy9QZ0FCQVN6L1B3QUJBUzMvRUFBQkFTei9FQUFCQVFnQUFBQUJBWFAvUmdBQkFUei9SZ0FCQVhQL0VBQUJBWFAvUGdBQkFUei9QZ0FCQUxIL1FRQUJBSXIvUVFBQkFVLy9SZ0FCQVJqL1JnQUJBVS8vWkFBQkFSai9Yd0FCQVM3L1JnQUJBSWovUmdBQkFTNy9hd0FCQUlqL2FRQUJBUzcvT0FBQkFJai9PQUFCQWNYL1JnQUJBZDcvUmdBQkFZVC9SZ0FCQVR2L1JnQUJBWVQvWEFBQkFUdi9XZ0FCQVlUL09BQUJBVHYvT0FBQkFWSC9SZ0FCQUlmL1JnQUJBVkgvWVFBQkFJZi9ad0FCQVFUL1JnQUJBUFAvUmdBQkFSci9SZ0FCQU43L1JnQUJBUnIvYXdBQkFONy9aQUFCQVJyL09BQUJBTjcvTVFBQkFYRC9PQUFCQVMzL01RQUJBVFAvUmdBQkFRWC9SZ0FCQWRFQUFBQUJBZEgvUmdBQkFaUC9SZ0FCQVN6L1JnQUJBUFQvUmdBQkFQUUFBQUFCQUdiL0VBQUJBY0lBQUFBQkFhd0FBQUFCQWFjQUFBQUJBYW9BQUFBQkFoNEFBQUFCQWhrQUFBQUJBZzhBQUFBQkFnNEFBQUFCQWNZQUFBQUJBbHNBQUFBQkFsa0FBQUFCQW1RQUFBQUJBbGdBQUFBQkFtSUFBQUFCQWw0QUFBQUJBYm9BQUFBQkFkc0FBQUFCQWRRQUFBQUJBZElBQUFBQkFtNEFBQUFCQW13QUFBQUJBanNBQUFBQkFqd0FBQUFCQWtnQUFBQUJBbDhBQUFBQkFuY0FBQUFCQWNrQUFBQUJBbWtBQUFBQkFtY0FBQUFCQWo4QUFBQUJBa1FBQUFBQkFqSUFBQUFCQWs4QUFBQUJBMXdBQUFBQkExY0FBQUFCQTh3QUFBQUJBOVFBQUFBQkE3MEFBQUFCQThBQUFBQUJBOE1BQUFBQkJCd0FBQUFCQkJjQUFBQUJCTFlBQUFBQkJMVUFBQUFCQkxJQUFBQUJCTEVBQUFBQkJLa0FBQUFCQkNVQUFBQUJCRElBQUFBQkJNZ0FBQUFCQktNQUFBQUJCS3NBQUFBQkJKQUFBQUFCQkpnQUFBQUJBVEwvSGdBQkFVd0FBQUFCQTJNQUFBQUJBVHYvRUFBQkFYc0FBQUFCQVhrQUFBQUJBY2dBQUFBQkE4RUFBQUFCQUxFQUFBQUJBU1VBQUFBQkFUSC9FQUFCQWJrQUFBQUJBY2NBQUFBQkFZd0FBQUFCQVpNQUFBQUJBWlAvSGdBQkFkMEFBQUFCQWE0QUFBQUJBZGNBQUFBQkFiSUFBQUFCQStRQUFBQUJBTHYvb0FBQkFNUC9vQUFCQU1YL29BQUJBTEgvb0FBQkFMci9vQUFCQU1ZQUFBQUJBUi8vTUFBQkFONy9NQUFCQVlmL1BnQUJBVHovUXdBQkFVLy9QZ0FCQVJqL1F3QUJBUi8vUGdBQkFPNy9Rd0FCQVlFQUFBQUJBUThBQUFBQkFaMEFBQUFCQVhVQUFBQUJBVGdBQUFBQkFXLy9QQUFCQVlUL1BBQUJBV29BQUFBQkFlUUFBQUFCQWFBQUFBQUJBWndBQUFBQkFaLy9FQUFCQWNNQUFBQUJBYndBQUFBQkFUMEFBQUFCQWduL0JnQUJBYUwvQ3dBQkFpdi9CZ0FCQWJ6L0N3QUJBWFgvUGdBQkFUei9SQUFCQVg3L1BnQUJBVTcvUkFBQkFZNEFBQUFCQWNmL093QUJBV3NBQUFBQkFYRUFBQUFCQXdjQUFBQUJBUG9BQUFBQkFTNEFBQUFCQVpBQUFBQUJBamdBQUFBQkFZbi9WZ0FCQVhNQUFBQUJBWVFBQUFBQkFRUUFBQUFCQWVZQUFBQUJBUmtDeWdBQkFTMEFBQUFCQUxIL0hnQUJBVHovRUFBQkFZai9FQUFCQVN3QUFBQUJBTzRBQUFBQkFSNEFBQUFCQVF3QUFBQUJBSXdBQUFBQkFJei9IZ0FCQVE0QUFBQUJBS3dBQUFBQkFCSC9FQUFCQU5ZQUFBQUJBQnIvRUFBQkFGdi9vQUFCQUlqL01RQUJBQkVBandBQkFJei9RUUFCQUl6L1JnQUJBblVBQUFBQkFvRUFBQUFCQVBVQUFBQUJBVVVBQUFBQkFJai9FQUFCQWVUL0VBQUJBVGYvRUFBQkFTY0FBQUFCQUlnQUFBQUJBZDRBQUFBQkFSOEFBQUFCQVNyL0VBQUJBUmdBQUFBQkFUc0FBQUFCQUljQUFBQUJBUXIvRUFBQkFSLy9IZ0FCQVN6L0hnQUJBSS8vRUFBQkFVZi9FQUFCQUlyL0hnQUJBUzMvSGdBQkFUUUFBQUFCQVJML0hnQUJBUklBQUFBQkFYQUFBQUFCQVEwQUFBQUJBVGIvRUFBQkFUWUFBQUFCQVNrQUFBQUJBUGdBQUFBQkFQai9IZ0FCQU5nQUFBQUJBVXYvSXdBQkFVc0FBQUFCQVJmL1hRQUJBSnIvSGdBQkFKb0FBQUFCQUgzL1hRQUJBUllBQUFBQkFSYi9Jd0FCQVBmL0l3QUJBT0VBQUFBQkFYb0FBQUFCQVVML0l3QUJBVUwvWEFBQkFQd0FBQUFCQVAwQUFBQUJBVUwvZHdBQkFRZi9Jd0FCQVRFQUFBQUJBT2dBQUFBQkFPYi9FQUFCQU9iL0l3QUJBVEQvSGdBQkFRWUFBQUFCQVkwQUFBQUJBUVVBQUFBQkFQY0FBQUFCQVBNQUFBQUJBRm9CSHdBQkFESUJkQUFCQVFjQUFBQUJBWEgvS1FBQkFzYi9QZ0FCQVdmL093QUJBWFQvT3dBQkFTQUFBQUFCQVhqL1BnQUJBV2dBQUFBQkFjVUFBQUFCQVdYL1BnQUJBWWtBQUFBQkFUMy9FQUFCQWxmL1F3QUJBVFgvUXdBQkFUci9Rd0FCQVJzQUFBQUJBUy8vRUFBQkFPa0FBQUFCQVhZQUFBQUJBTXNBQUFBQkFjd0FBQUFCQVVJQUFBQUJBVE1BQUFBQkFQSUFBQUFCQU5VQUFBQUJBYWdBQUFBQkFVbi9Rd0FCQVNzQUFBQUJBUy8vUXdBQkFPUUJId0FCQU1NQkh3QUJBT1FBQUFBQkFVY0FBQUFCQVlnQUFBQUJBQUwvUEFBQkFSQUFBQUFCQVUwQUFBQUJBVC8vOWdBQkFVOEFBQUFCQVpnQUFBQUJBUndBQUFBQkFUd0FBQUFCQWdVQUFBQUJBTmtBQUFBQkFNd0FBQUFCQWQ0Q0lnQUJBZWtDSEFBQkFSci9FQUFCQVRjQUFBQUJBTTcvb0FBQkFMYi9vQUFCQUZqL29BQUJBVGYvb0FBQkFNMy9vQUFCQUZuL0VBQUJBSjcvb0FBQkFKRC9vQUFCQVBNQkh3QUJBVGNCSHdBQkFJMEJId0FCQUlBQkh3QUJBWDhDeWdBQkFPb0FBQUFCQVVVQ3l3QUJBT29DeWdBQkE2Z0JhUUFCQXVjQUFBQUJBbklBQUFBQkFJb0FBQUFCQVZFQUFBQUJBVUVBQUFBQkFUSUFBQUFCQUpnQ0Z3QUJBTWNCSHdBQkFZQUN5Z0FCQWpNQUFBQUVBQUFBQVFBSUFBRk0zZ0FNQUFGTkJBSVdBQUVCQXdBbkFDc0FMd0F5QURjQVJ3QkxBRThBVWdCWEFKUUFsUUNXQUpjQW1BQzBBTFVBdGdDM0FMZ0EwQURSQU9ZQTV3RDZBUHNBL0FEOUFQNEEvd0VBQVFFQkRRRU9BUThCRUFFUkFSSUJJd0VrQVNVQkpnRW9BVmdCV2dGa0FXVUJiQUZ3QVlzQm1BRzJBYmNCdXdIWEFta0NwQUxQQXRBQzZnTXBBeW9ES3dNc0F5MERMZ012QXpBRE1RTXlBek1ETkFNMUF6WURZQU5oQTZFRG9nT2pBNlFEcFFPbUE2NERyd1BHQThjRHlBUEpBOHdEelFQT0ErRUQ0Z1BqQStRRDd3UHdBL3NEL0FQOUEvNEQvd1FBQkFFRUFnUU5CQTRFTWdSVUJHVUVmUVNqQlAwRkhBVWdCU1FGS0FVc0JUUUZQZ1ZEQlcwRmp3VzBCYlVGdGdXM0JiZ0Z1UVc2QmJzRnZBVzlCY3dGelFYT0JjOEYwQVhSQmRJRjB3WFVCZFVGNEFYaEJlSUY0d1hrQmVVRjVnWG5CZlFGOVFYMkJmY0YrQVg1QmZvRit3WVNCaE1HRkFZVkJoWUdGd1lZQmhrR09BWTVCbUlHWXdaa0JtVUdaZ1puQm1nR2FRWjZCbnNHZkFaOUJuNEdmd2FBQm9FR2dnYURCb1FHaFFhcUJxc0d5QWJKQnNvR3l3Yk1CczBHemdiUEJ2Z0crUWI2QnlBSElRZENCMk1IWlFmZkIrUUg3Z2Z2Qi9BSUJRZ1JDQllJSHdoSENGRUlVZ2hrQ0dVSWdnaUlDSW9JaXdpTUNLRUlvd2kxQ0xjSXh3aklDTWtJeWdqTENOUUkxUWpXQ05jSTJBalpDTm9JMndqZUNPNEk4QWp4Q1BJSkxnbXRDYm9KdkFuZkNlRUo1Z25yQ3RZSzJRdktBUU1DWEFMYUEzWkFOQUx5QXhZZXhFQVdRRVpBQkVBMFFEUkFORUEwUURSQVJrQkdRRVpBUmtCR0Fsd0RGZ0xhSHNRRGRrQVdBM1pBRmdOMlFCWURka0FXUURSQVJrQTBRRVpBTkVCR0F2SkFCQUx5UUFSQUJBSUlBb1lDMmtBMFFEUUM4a0JHUUVZQzJrQTBBdkpBUmtCR0hzUkFORUJHQXhaQU5FQkdRRFJBUmtBMFFFWkFORUJHUURSQVJrQTBRRVpBTkVCR0F2SkFCQUpjQWx3REZnTjJBM1pBRmtBMFFFWkFORUJHUURSQVJnSmNBbHdERmtBMFFFWkFORUJHQXRvZXhFQTBRRVpBTkVCR1FEUkFSa0EwUUVZRGRnTHlIc1FDRGtBMEFoUUNHZ0lnQWlZQ0xBSXlBamdDUGdKRUFrb0NVQU1XQWxZQ1hBTVdBbHdERmdKY0F4WUNYQU1XQWx3REZnTGFIc1FDMmg3RUF0b2V4QUxhSHNRQzJoN0VBM1pBRmdOMlFCWURka0FXQTNaQUZrQTBRRVpBTkVCR1FEUkFSa0EwUUVZQzhrQUVBdkpBQkFMeVFBUUM4a0FFSHNSQUJBSmlBdFFDYUFKdUFzSUNkQUo2QW9CQVJrQkdRRVpBUmtCR1FFWUNoZ0tNQXBJQ3RnS1lBcDVBUmtCR0FxUUNxZ0t3QXJZQ3ZBTElBc0lDeUFMT0F0UUMyZ0xnQXVZQzdFQUVIc1FDOGdMNEEzWkFORUEwQTNZQy9nTUVBM1lEQ2tBV0F4QURGa0FXUUJZREhBTWlBeWdETGdNMEF6UURPZ002QTBBRFFBTkFBMEFEUUFOR0EwWURSZ05HQTBZRFJnTkdBMFlEUmdOTUEwd0RUQU5NUURRZXhBTlNBMWdEWGdOa0Eyb0RjQU4yQTNZRGZBQUJBZFFCWlFBQkFMOEJEUUFCQU0wQndRQUJBRmdCd1FBQkFTa0JEQUFCQU80QjlRQUJBUE1COVFBQkFLNEI5UUFCQVA4QjlRQUJBTGNCOVFBQkFNb0J3UUFCQU1ZQndRQUJBSDBCd1FBQkFNd0J3UUFCQVc0QlpRQUJBY29CWlFBQkFsNEJaUUFCQWx3QlpRQUJBbHNCWlFBQkFtVUJaUUFCQW1JQlpRQUJBYnNCWlFBQkFkRUJaUUFCQW0wQlpRQUJBam9CWlFBQkFqc0JaUUFCQWRJQlpRQUJBYzBCWlFBQkFtd0JaUUFCQW1zQlpRQUJBbWdCWlFBQkFtY0JaUUFCQWw4QlpRQUJBY3NCWlFBQkFjOEJaUUFCQVhjQlpRQUJBZHdCWlFBQkFhMEJaUUFCQU1ZQVFnQUJBUm9CWlFBQkF3WUJaUUFCQWVrQlpRQUJBUmtCWlFBQkFvSUJEUUFCQVVjQkRRQUJBVGNCRFFBQkExRUJEUUFCQWUwQkRRQUJBZ1FCRFFBQkFxUUJEUUFCQVNrQkh3QUJBVElCSHdBQkFPSUJId0FCQVVJQkh3QUJBT1lCSHdBQkFOa0JEUUFCQU13QkRRQUJBTTBBUWdBQkFGZ0FRZ0FCQUgwQVFnQUJBSTBCd1FBQkFRd0JaUUFCQUFBQlpRQUVBQUFBQVFBSUFBRkgzZ0FNQUFGSmZnSnVBQUlBWlFBa0FEMEFBQUJFQUYwQUdnQ0NBSmdBTkFDYUFMZ0FTd0M2QVVrQWFnRlZBVlVBK2dGWEFnQUErd0lYQWhjQnBRSWdBaUFCcGdJOUFqMEJwd0pBQWtBQnFBSkNBa1VCcVFKSEFrb0JyUUpNQW1rQnNRSnVBbkVCendKMUExVUIwd05nQklVQ3RBU2lCS1lEMmdURkJNY0Qzd1RKQk13RDRnVE9CUkVENWdVVkJSVUVLZ1VZQlZZRUt3VmNCVndFYWdWakJXUUVhd1ZuQldrRWJRVnJCWEFFY0FWMEJYUUVkZ1dIQlpVRWR3V1hCdXNFaGdieEJ2b0Yyd2IrQndjRjVRY0xCeGNGN3djYkJ5UUYvQWRBQjBRR0JnZElCMGdHQ3dkY0IzRUdEQWVKQjZzR0lnZkVCOU1HUlFmV0I5c0dWUWZrQitRR1d3ZnBCK3dHWEFmdUIvQUdZQWZ5Qi9ZR1l3ZjVCL2tHYUFnRkNBVUdhUWdLQ0FzR2FnZ05DQTRHYkFnUUNCSUdiZ2dWQ0JZR2NRZ2JDRHdHY3doR0NFY0dsUWhNQ0U4R2x3aFJDRklHbXdoVkNGVUduUWhZQ0ZrR25naGNDRndHb0FoZUNGOEdvUWhrQ0djR293aHBDR2tHcHdoMENIc0dxQWg5Q0lVR3NBaUxDUTRHdVFrUUNSTUhQUWtXQ1JrSFFRa2NDUndIUlFrcUNTOEhSZ2t4Q1RFSFRBaytDVXNIVFFsT0NVOEhXd2xXQ1ZZSFhRbGNDVjhIWGdsakNXTUhZZ2wwQ1hnSFl3bDZDWDRIYUFtTUNZMEhiUW1YQ1pnSGJ3bWNDWndIY1Ftc0NhMEhjZ212Q2E4SGRBbXhDYkVIZFFtekNiTUhkZ20zQ2JjSGR3bTZDYm9IZUFtOENid0hlUW5EQ2NVSGVnbldDZFlIZlFuZUNlWUhmZ25vQ2VrSGh3bnJDZXdIaVFySUNzZ0hpd3JXQ3RZSGpBcllDdDBIalFyZkN0OEhrd3JpQ3VNSGxBcnFDdXNIbGdydkN1OEhtQXVBQzRBSG1ReUlESWdIbWd5S0RJb0htd3lRREpBSG5BZWRPeUFlaENCOEd0WWdtanQ4RU5vYktpQ2dKSDRrcmlDbUkrZ2dyRHVPSlhvN2ppVjZJSUk3RGowaUpZWWZQaUNhSTdJY2RDRm1JRVpLVUNFMklXdzdPa3BvSkxvbGRDVjBJVUloY2lFOElYZzdzaUVrSlBBaFNDRitPdndoZUNFcUh5QVJUQmNpSU1vV09CWTRGamdQUEJMQUpLSVBRaUI4RmtvV1NoWktIRkFXVmhaV0ZsWVF2QlVNRDBnV1loWmlGbUlQVGh1RUQxUVdqQmFNRm93YjloR3lIM1FoVGhZK0ZqNFdQZzlhRXNZUFlBOW1TbEFXVUJaUUZsQVJXQmRrRjJRWFpCRmtIYVljQ0Jab0ZtZ1dhQTlzRXhvN3NoYVNGcElXa2h2OEUwUWhNQk00SG40UGNoNTRGa1FQZUNGbUdzUWF5aHJFR3NvUGZnK0VHc1FheWcrS0lUWVZEQlQwRDVBUGxocnVHdlFjUkErY0lKb2hiQlpLRmxBV0doWWdENklQcUErdUQ3UVEyaFlnRnJBV3Roc3FKTG9QdWcvQUh0SVB4aDdNRmx3Z29DVjBEOHdVK2cvU0Q5Z1haQ1N1SVVJWHJBL2VEK1FncGlGeUlLWWhjaUNtSVhJZ3BpRnlGaklXa2lDc0lYZ1dNaGFTRjFJZ3JDRjRGZkFWOWhadUZuUVdZaFpvSHo0WXdCdWNGbm9sZWlGSUc1d1dlaHZHRzh3Ynhodk1JSUloZmh2R0c4dzdEanI4RCtvZmdEc09PdndjQWh3SUQvQVA5aGFZRnA0UC9CQUNGb3dXa2owaUlYZ1JtaEdnRWJJVFJCQmNIR2djYmhBSUVBNGNhQnh1RUJRUUdoQWdFQ1lRTEJBeUZtSVdhQ0NDSVg0UU9DQk1IUndRUGgwdUVFUWZGQkJLT3lBZWhDQmVFRkFnbWh4MEd5bzdqaUNnSks0bGhpUG9JS3dRVmp1T0VPd2xlaFZPT3c0anNoRDRJSm9nY0NSNEVMd1FYQkJpRUdnUWJoQjBFSG9reGlGT0lXQWd1Q1RxRUlBZWtCQ0dKRHdYckJVd0kvUVl4aENNTzdJUWtqdXlJVWdreGhKNEdOZ2ZzQ1RxRWd3ZklCQ1lFSjRRcEJDcUVMQWNVQkRJRUxZa2NpQ0NJS0FRdkNSK0VNSVdKaERJRU00UTFCRHNPeUFnWGg2RUlGNGo3aUNhSHhRN2ZCRGFFT0FRNWlQaUkrZ2JLanVPRU93bGVpQjhPdzRROGhENElKb1NvaEQrRVFRUkNoRVFFUllSSENXQUhNNFJJaUZtRVNnWG1oRXVKRm9oYkJFME82QVJPaEZBR0pBa1RpUlVGNlk3c2lBNklTUktVQkZHRnlJWVFoRk1HTG83c2lRZUpCNFUxaEZTSUw0WWNpUkNTbEFSV0JGMkVWNFliQ0YrSlhRUlpDVjBFV29SY0JGMkVYd1JnaEdJRVk0UmxCR2FFYUFSbWhHZ0VhWVJyQkd5RTBRYW1pUjRGMlFjZEJHNEViNDdJQ0ZtTzQ0N3NqMGlJWGdXU2hIRUZsQVJ5aDAwRWlvU1NCSFFFZFlSM0JIaUY1b1I2Qkh1STl3WCtoSDBFZm9TQUJJR0lIQVNERHVPTzdJU0VoaCtFaGdTSGpVdUVpUWROQklxSkhJWGZCSXdFalljTWhJOEVrSWs4QlVTR0tJU1NCSk9IejRTVkNTb0lNUVNXaEpnSUJ4S1hDQWNFbVlTdEJlbUlId1hwaGE4RjZZY3lCSnNFbklYcGlCOFNsQTdEaEo0STdJWElpT3lGeUlXTEVwdUh4UVNmaC95RW9RU3RCallFclFrdWhLS0VwQVNpaEtRSUtBU2xoS2NJKzRZa0JLaUlYZ1NxQ1AwTzQ0U3JoSzBFNm9mTWg4Z0lLQVN1anRlRXNBU3hpQVdHSW9TekJMU0gvSWcwQkxZRXQ0UzVCTHFFdkFTOWg3ZUlTb1MvQk1DRXdnVERodUVFeG83amp1eUV4UVRHaE1nRXlZVExCYitFeklUT0JNK0UwUVRTaE5RTjI0VFZoTmNFMklWRWhpaUUyaEtiaE51RTNRZ1hpRTJJRklUZWpVY0U0QWtjaUZtRTRZVGpCT1NFNWdUbmhobUd0WVRwQ0NhSk9vajBCT3FPeUFoWmhPd0U3WVR2QlBDRTd3VHdoUElFODRUMUJQYUZqZ1dQaFBnRStZVDRCUG1FK3dUOGhQNEUvNGVlQlpFSUpvaGJCUUVGQW9VRUJRV0ZCd1VJaFFjRkNJVUtCUXVGRFFVT2haS0ZsQVVRQlJHSUtBbGREdU9PN0lVVEJSU0ZGZ1VYaFJZRkY0VVpCUnFGSEFVZGhaaUZtZ1VmQlNDRkh3VWdoU0lGSTRVbEJTYUlFd2o5RDBpSVhnVW9CU21GS3dVc2hTc0ZMSVV1QlMrRk1RVXloVFFGTllqc2hjaUZOd1U0aFRvRk80VTlEc09PdndoTUJhOElGNGhNQlQ2RlFBZ2FoVUdGV1lWRENCd0lGNGhNQ1RBRlJJZ1FDU29ISFFWR0IwS0YwWWtmaUNnRlI0VkpCVXFGVEFWTmlDc0hwQTdqakxRRlR3VlFoY29JQndWU0NGK0ZVNFZWQmR3RlZvVllEc09KSGdmOGlPeUpPb2ZqQ0RLSHQ0ZTNpRXFJU29WWmh4MElNUVZiRXA2RlhJVmVCVitGWVFWaWhXUUZaWTEraFdjRmFJMGtoV29GYTRXT0JZK0ZsWVhaQlppRm1nV2pCYVNGYlFWdWhYQUZjWWNEaHdVRmNBVnhoWE1GZGdWMGhYWUZkNFY1QlhxSlBBV0doWWdHendiUWp1T083SVY4QlgyRmZ3V0FoWUlGZzRXRkJZYUZpQVdKaFlzRmpJV2toWTRGajRlZUJaRUZrb1dVQnJ1R3ZRV1ZoZGtIc3dXWEJaaUZtZ1diaFowRzV3V2VoYUFGb1lXakJhU0ZwZ1duaGFrRnFvV3NCYTJGcndXd2hiSUZzNGNkQ0RLRnRRVzJpQ2FJV3dXNEJiNEZ1QVcrQmJtRnV3VzhoYjRIdzRXL2lGQ0dIZ1hCQmNLSVR3N0lDQjhGeEFncGpzT0lYNGd5aGNXR0tJZWhEMGlKWVlnbWhjY0pINGxkQitTSlBBbGVpRklJN0lYSWlGbUpQQWs4QmNvSDJnWWZpRXdGN2dnMEJlc0pPb2t3Q0VHRjdoS2FFcFdINlFmcENGNEZ5NFhMaVYwSkR3YUhCYzBGem9oY2hkQUYwWVhSaGRHSVhnaGVDUklPN0lYVEJkU0dFSVljaGRZR0hJWWNoaHlGMTRYWGlGbUlXWWhmaGRrRjJRaEJoZGtGMm9YY0NGNEpBQWhlQitrSHlBWGRoZDhJTW9YZ2lFcUlTb1h2aGUrRjRnWGpoZVVGNW9rd0JlZ0Y2WWxkQmVzRjdJWHVCZStGNzRYeWhmRUY4b1gwQmZXRjl3WDRoZm9GKzRYOUIwS0Yvb1graGdBR0FZam9CZ01HQklZRWhnWUdCNFlKQnFnR2xnYWZCZ3FHREFoR0VwUUlSZ1lOaGc4SEhRWVFoaElPN0lnWGlGSU4yNFlUaGhVR0ZvZENoaGdHR1k3c2twUUpYUTdqaGhzR0hJZmRDRXdJSHdqNkJoNE83SWdIQ0I4SUJ3N2ppVHdIejRmSUJoK0dJUVlpaGlRSVNvZ3ZpQytKQXdZbGhpY0dLSVlxQml1R0xRZ09oaTZJU29ZMkJqWUdOZ1l3QmpHSVhnWXpCajJJTllnMWlRTUdOSVkyQmplR09RaEtoanFJTW9oR0Jqd0dQWVk5aGo4R1FJWkNCa0lHUTRaRkJrYUdTQWxKaGttR1N3Wk1oazRHVDRaUkJsRUdVb1pVQmxXR1Z3WllobG9HVzRaaGhtR0dpSVpkQmw2R1lBWmhobU1HZVlaa2hwR0daZ1puaG1rR3BvYWNCbXFHcG9ac0JtMkdid2FtaG9pR21RWndobklHYzRaMUJuYUdlQVo1aURvR2V3bERobnlHZmdaL2g5V0dnUWFDaUY0R2hBYUZob2NKRHdoSkNRQUlFWWhOanM2U21naFFpRWtHaUlhS0JvdUdqUWFPaHBBSVFBYVJocWFJNkFhVEJwU0dsSWpvQnBZR2w0YVpCcGtHcG9hbWhwcUduQWFkaHA4R29JYWlCcWFHbzRhbEJxYUdxQWFwaHFtR3F3YXNocTRHcjRnUmg2RUlFWWVoQ0JHR3NRYXloclFJVFlhMWlFMkd0WWhOaHJXSVRZYTFpRTJIRkFhM0JyaUd1Z2dtaUZzSUpvaGJCcnVHdlFhK2hzQUd3WWJEQnNTR3hnYktpUzZHeDRiSkJzcUpMb2JLaVM2SUtBbGRCc3dHelliUEJ0Q0pLNGhRaVN1SVVJZ3BpRnlHMGdiVGlDbUlYSWdwaUZ5RzFRYldpUG9JVHdiWUJ0bUlLd2hlQ0NzSVhnZ3JDRjRHMndiY2h0NEczNGJoQnVLRzVBYmxodWNHNklicmh1b0c2NGJ0Q1Y2SVVnYnVodkFKWG9oU0J2ZUcrUWdnaUYrRzhZYnpCdlNHOWdiM2h2a0crb2I4RHNPT3Z3N0RqcjhPdzQ2L0J2Mkcvd2NBaHdJUFNJaGVCd09IQlFjR2h3Z0hDWWNMQnd5SVNvY09CdytIejRmSUJ4RUhFb2NVQnhXSEZ3Y1loeG9IRzRjZENES0hIUWd5aVM2SEhvY2dCeUdISXdja2gyeUhiSWR1QjI0SGJnZHVCMitIYjQ3SURzZ0hKZ2NuaHlrSEtvY3NCeTJITHdjdkJ6Q0hNSWN3aHpDSkhna2VCeklQYkkyUWh6T0hlZ2Q2QjN1SGU0ZDdoM3VIZlFkOUJ6VUhxSWMyaHpnTlRRYzVoenNIUEljK0J6NEhQNGMvaHorSFA0ZEJCMEVJSm9kQ2lCU0hSQWRGaDBjSFNJZEloNzJIdllkS0Iwb0hTZ2RLQjB1SFRRZE9oMUFIVVlkVEIxU0hWSWRXQjFZSFZnZFdCMWVIVjRmUkIxa0hXb2RjQjRrSGlRZUtoNHFIaW9lS2g0d0hqQWZGQjEySFh3MU5CMkNIWWdkamgyVUhtd2ViQjJhSFpvZWxoNldIYUFkb0IybUhhWWRyQjJzSHlZZkpoMnlIYklkdUIyNEhiZ2R1QjIrSGI0ZHhCM0tOb1FkMEIzV0hkd2VxQjNpSGVnZDZCM3VIZTRkN2gzdUhmUWQ5QjM2SGdBZUJoNE1IaEllSGg0WUhoNGVKQjRrSGlvZUtoNHFIaW9lTUI0d0hqWWVQQjVDSGtJZVNCNU9IbFFlV2g1Z0htWWViQ1RHSG13ZWNoNXlIbmdlZmg2RU95QWVpaDZXSHBBZWxoNmNIcHdnUUNCOEkrZ2VvaDZvSHE0ZXRCNjZIcm9ld0I3R0hzd2UwaDdZSHQ0ZTVCN3FIdkFlOEI3Mkh2WWUvQjhDSHdnZkRoOFVJRklmR2g4bUh5QWZKaDhzSHl3Zk1oODRIejRmUkI5S0gxQWZVQjlXSDF3ZllpRThIMmdmYmlGeUgyNGZkQ0FjSDNvZmdCK0dKTG9rcmlGQ0g0d2d5aCtTSDVnZi9oK2VINlFmcWlRTUg3QWZ0aCsySDdZZnRoKzhIN3dmdkIrOEg4SWZ3aC9DSDhJZnlCL0lIOGdmeUIvT0g4NGZ6aC9PSDlRZjFCL1VIOVFmMmgvYUgrQWY0Qi9tSCtZZjdCL3NIL0lnckIvNEgvNGdCQ0FLSUJBZ0ZqYWlJQnhLWENBaUlDZ2dMamFpSURRZ09pQkFJRVlnVENCU0lGZ2tjaU8rSUY0Z1pDQnFKSzRrcmlTdUlLWTdqanVPSlhvZ2NDQjJPNDQ3amlXR0pWQWdyQ0I4Sks0Z3JDQ0NJSWc3ZkNDT0lKUTdJQ0NhSUtBOUlpQ21JS3dnc2lFR0lRWWd1Q0MrSU1RZ3lpRFFJTlloQmlFR0lRWWczQ0RpSU9JN3NpRG9JTzRoQmlFR0lRQWhCaUQwSVFZZytpRUFJUVloQmlFTUlSSWhHQ0ZDSVVJaFFpRnlJUjRoSkNUd0pQQWhLaUV3SVRBaE5pRnlJVHdoZUNGbUlYZzdza3BvSVVJaGVDRklJWDRoVGlGVUlWb2hZQ0ZtSVd3aGNpRjRKWFFoZUNIcUlYNGhoQ0dLSVpBaGxpR2NJYUlocUNHdUliUWh1aUhBSWNZaHpDSFNJZDRoMkNIa0lkNGg1Q0hxU3lKTElpSHdTeUlqaUNPT0lmWWpsQ09VSWZ3am1pSUNJZ2dqaUNJT0loUWlHaUlnSWlZaUxDSXlJeTRpT0NKb0lqNGlSQ0pLSWxBaVZpSmNJbm9pWWlKb0ltNGloaUowSW5vaWVpS0dJb0FpaGlLR0lvWWlqQ0tTSXVBaXlDS1lJdUFpNENLZUl1QWl5Q0trSXJZaXFpS3dJcllpdkNMQ0lzZ2l6aUxVTnZ3aTJpTGdJdklpNWlMc0l2STI5aUw0SXY0MjlpTCtOdllqQkRiMk52WWkvamIyTnZZakJDTUtJeEFqSWlNV0l4d2pJaU1vSXk0ak5DTTZJMEFqUmlOTUkxSWpXQ05lSTJRamFpTndJM1lqZkNPQ0k0Z2pqaU9VSTVvam9DT21JNndqc2lPNEk3NGp4Q1BLSTlBajFpUGNJKzRqNGlQb080NDdqaVB1TzQ0ajlDUDZKQUFreGlRR0pGb2tEQ1FTSkJna0hpUWtKQ29rTUNRMkpEd2tRaVJJSkZva1RpUlVKRm9rWUNSbUpHd2tjaVI0Skg0a2hDU0tKSkFrbGlTY0pLSWtxQ1N1SkxSS1VDUzZPem9rd0NUR0pNd2swaVRZSk40azVDVGtKT29rOENUMkpQd2xBaVVJSlE0bEZDVWFKU0FsSmlVc0pUSWxPQ1UrSlVRbFNpVlFKVllsWENWaUpXZ2xialM4SlhRbGVpV0FKWVlsakNXU0paZzJ0QUFCQVVZRGxRQUJBZkVDeWdBQkFZUURsUUFCQVlrRGxRQUJBWXNDeWdBQkFSOEM1UUFCQVI4RE53QUJBYjhDR3dBQkFURUM1UUFCQVI4Q3JnQUJBVVlDelFBQkFYc0Rsd0FCQVIwQzZBQUJBV3dEclFBQkFUQURYUUFCQVNBQ3JnQUJBU0FDNkFBQkFaUURuQUFCQVM0QzdRQUJBWlFEbHdBQkFTNEM2QUFCQUxFRGxRQUJBSWdDNVFBQkFJZ0NyZ0FCQUxFRGx3QUJBWmdDNkFBQkFKSURyUUFCQUpNRHJRQUJBSWdEMndBQkFSb0RyUUFCQVhJRFhRQUJBVHNDcmdBQkFYSUQ1Z0FCQVRzRE53QUJBU01EbHdBQkFPNEM2QUFCQU5zQy9RQUJBVzRDMUFBQkFVY0R2Z0FCQVI4RHZnQUJBY01EclFBQkFiZ0MvZ0FCQVV3Q3lnQUJBVG9DeWdBQkFjZ0N5Z0FCQUlzRFJnQUJBUzRDeWdBQkFSZ0N5Z0FCQVNRRGtBQUJBVG9ESWdBQkFSb0RJZ0FCQVVvRElnQUJBSXNESWdBQkFUWURSZ0FCQVBRQytBQUJBUzBDL1FBQkFQSUMrQUFCQVZZQ0d3QUJBSXNDNEFBQkFUWUM0QUFCQVRFRElnQUJBVFlESWdBQkFaTURJZ0FCQVRjRHJRQUJBTEVEa0FBQkFkMEN5Z0FCQVh3Q3lnQUJBVDBEclFBQkFUNERyQUFCQVpRQ3lnQUJBWkVEckFBQkFWa0N5Z0FCQVhBQ3lnQUJBVW9DeWdBQkFab0N5Z0FCQVZRQ3lnQUJBZzBDeWdBQkFoUUN5Z0FCQVY4Q3lnQUJBYllDeWdBQkFVQUN5Z0FCQVVRQ3lnQUJBUzhDL1FBQkFRQUNHd0FCQVljQ0d3QUJBVk1DR3dBQkFWRUMvUUFCQVBvQ0d3QUJBUTRDR3dBQkFZd0NHd0FCQVNBQzRBQUJBTjhDL2dBQkFJZ0M0QUFCQWF3Q0d3QUJBYnNDR3dBQkFUc0MrQUFCQVJZQy9nQUJBUWdDL1FBQkFVQUNHd0FCQVJFRFhnQUJBT1VDdFFBQkFkY0RyUUFCQVpNQy9nQUJBZGNEa0FBQkFaTUM0QUFCQVNRRHJRQUJBY3NEclFBQkFlVUMvZ0FCQVlnRHJRQUJBVTBDL2dBQkFVSUNoQUFCQXBBQ3lnQUJBaGNDR3dBQkFWMEN5Z0FCQWxvQ3lnQUJBZ2dDR3dBQkFvRUN5Z0FCQWlFQ0d3QUJBU3dEV1FBQkFQOENtd0FCQVlnQzl3QUJBVDRDeWdBQkFVb0RyUUFCQVE4Qy9nQUJBaThDR3dBQkFaa0NHd0FCQVlnRG9nQUJBVk1DL1FBQkFTd0MrQUFCQVRVQ3lnQUJBVklDeWdBQkFSVUNHd0FCQWFRQ0d3QUJBVndDeWdBQkFTY0NHd0FCQUljQytBQUJBYlVDR3dBQkFZWUN5Z0FCQVBrQ0d3QUJBWFFDR3dBQkFVWUNHd0FCQWZzQ3lnQUJBWVlDR3dBQkFiZ0RyQUFCQVlrQy9RQUJBWGtDeWdBQkFYTUN5Z0FCQVZjQ0d3QUJBV0VDeWdBQkFVWURyQUFCQVVZRGtBQUJBUjhDNEFBQkFUQURyQUFCQVNBQy9RQUJBWDREa0FBQkFSNEM0QUFCQWJnRGtBQUJBWWtDNEFBQkFTOERrQUFCQVA4QzRBQUJBWWdEWFFBQkFVMENyZ0FCQVlnRGtBQUJBVTBDNEFBQkFZa0RoUUFCQVRFQzRBQUJBVUVEaFFBQkFQb0M0QUFCQVQ0RFhRQUJBVDREa0FBQkFRZ0M0QUFCQVQ0RHJRQUJBUWdDL2dBQkFXRURrQUFCQVRrQzRBQUJBTjhDR3dBQkFiUURrQUFCQVpBQzRBQUJBVXNDeWdBQkFURUN5Z0FCQVJBQ0d3QUJBY1lDK0FBQkFaNENHd0FCQWZRQ3lnQUJBYmtDR3dBQkFnQUN5Z0FCQWRBQ0d3QUJBWUlDeWdBQkFWUUNHd0FCQVRrQ0d3QUJBVVlEM1FBQkFSOERPQUFCQVVZRDBRQUJBUjhETEFBQkFVWUVEQUFCQVI4RFp3QUJBVVlFR2dBQkFSOERkUUFCQVVZRDhRQUJBUjhEVEFBQkFVWUVFd0FCQVI4RGJnQUJBVVlFR0FBQkFSOERjd0FCQVRBRDNRQUJBU0FET0FBQkFUQURsUUFCQVNBQzVRQUJBVEFEMFFBQkFTQURMQUFCQVRBRURBQUJBU0FEWndBQkFUQUVHZ0FCQVNBRGRRQUJBTEVEM1FBQkFJZ0RPQUFCQVlrRDNRQUJBVEVET0FBQkFZa0QwUUFCQVRFRExBQUJBWWtFREFBQkFURURad0FCQVlrRUdnQUJBVEVEZFFBQkFZNERyUUFCQVQwQy9nQUJBWTREM1FBQkFUMERPQUFCQVk0RGxRQUJBVDBDNVFBQkFYSUQzUUFCQVRzRE9BQUJBWllEclFBQkFWNEMvZ0FCQVpZRDNRQUJBVjRET0FBQkFaWURsUUFCQVY0QzVRQUJBWllDeWdBQkFWNENHd0FCQVNRRDNRQUJBUWdET0FBQkFTUURsUUFCQVFnQzVRQUJBVG9DK0FBQkFVSUN5Z0FCQVRVQytBQUJBWHNEVWdBQkFXNEN5Z0FCQVEwQ3lnQUJBYkFER3dBQkFUd0N5Z0FCQVJnQy9nQUJBSXdDK0FBQkFSb0MvZ0FCQWdRQ3lnQUJBYk1DR3dBQkFXQUN5Z0FCQVJNQ3lnQUJBU0VDeWdBQkFMd0MvZ0FCQVNZQ3lnQUJBTUFDL1FBQkFSMEMvUUFCQU8wQ2xBQUJBS0lDK0FBQkFYVUMrQUFCQVFJQytBQUJBSWtDeWdBQkEvWURyUUFCQThzQy9nQUJBMW9DL2dBQkFxQUM2QUFCQVpnQytBQUJBNUFDNkFBQkF2NEM2QUFCQVhJRCtRQUJBVHNEU2dBQkFYSUVHUUFCQVRzRGFnQUJBVVlEK1FBQkFVWUQ3d0FCQVI4RFNnQUJBY01EWFFBQkFiZ0NyZ0FCQWF3Q3lnQUJBWWtEWFFBQkFURUNyZ0FCQVNVRHJRQUJBUVVDL2dBQkEvWUN5Z0FCQThzQ0d3QUJBMW9DK0FBQkFaUURyUUFCQVM0Qy9nQUJBZVVDeWdBQkFVMEN5Z0FCQVlRRHJRQUJBVVlEclFBQkFSOEMvZ0FCQVI4QzdRQUJBVEFEclFBQkFTQUMvZ0FCQUxFRHJRQUJBSWdDN1FBQkFZa0RyUUFCQVRFQy9nQUJBWWtEbkFBQkFURUM3UUFCQVBRQy9nQUJBVDhEbkFBQkFQUUM3UUFCQVhJRHJRQUJBVHNDL2dBQkFYSURuQUFCQVRzQzdRQUJBUndDeWdBQkFPb0NHd0FCQVhjRHJRQUJBSWtEMndBQkFYWUN5Z0FCQWJFQytBQUJBVjRDeWdBQkFTOEMrQUFCQVVZRGx3QUJBUjhDNkFBQkFZa0QrUUFCQVlrRGx3QUJBVEVDNkFBQkFZa0Q3d0FCQVRFRFNnQUJBUWdDcmdBQkFNc0NsQUFCQWVVQytBQUJBUjBDK0FBQkFPVUN5Z0FCQVNBQytBQUJBUWdDR3dBQkFUY0MvUUFCQVRzQy9RQUJBTVlDK0FBQkFMY0MrQUFCQVZnQytBQUJBZHNDR3dBQkFiRUNHd0FCQVk0Q0d3QUJBTlVDK0FBQkFMVUNHd0FCQUlnQy9nQUJBTUFDR3dBQkFNQUNsQUFCQVFnREN3QUJBUHNDR3dBQkFSUUNHd0FCQU4wQytBQUJBUEVDR3dBQkFZa0MxUUFCQVNnQ0d3QUJBU01DL1FBQkFVTUNHd0FCQVJnQ0d3QUJBT0FDR3dBQkFUY0MvZ0FCQU4wQy9RQUJBdWdDK0FBQkFzd0MrQUFCQWlJQ2xBQUJBZFFDL1FBQkFwTUNsQUFCQWxZQy9RQUJBYWtDK0FBQkFZUUMrQUFCQVFNQ3lnQUJBVDRDR3dBQkFGa0M1d0FCQU0wQzZnQUJBSjhDWWdBQkFJb0NZZ0FCQUxvQ1lnQUJBUVlDWWdBQkFLd0NZZ0FCQUxBQ1lnQUJBSkFDNmdBQkFTd0MvUUFCQWE4Q3lnQUJBWGdDK0FBQkFZTUN5Z0FCQU84Q0d3QUJBUGtDeWdBQkFSVUMvZ0FCQVFJQy9RQUJBVVFDR3dBQkFQd0NHd0FCQU5VQ0d3QUJBWGtDR3dBQkFRMENHd0FCQVdzQ0d3QUJBYmdDR3dBQkFTWUNHd0FCQU9NQ0d3QUJBSTRDR3dBQkFPSUNHd0FCQVFRQ0d3QUJBT0VDR3dBQkFYSUNHd0FCQVQ4Q0d3QUJBZDRDR3dBQkFSa0NHd0FCQVRzQkRRQUJBVElDR3dBQkFUWUNHd0FCQVpBQ0d3QUJBVFlDbUFBQkFYQUNHd0FCQU9jQ0d3QUJBUDRDR3dBQkFOUUN5d0FCQVVNQ3l3QUJBTlVDeXdBQkFPd0N5d0FCQU1VQ3l3QUJBSzhDeXdBQkFRWUN5d0FCQUhNQ3l3QUJBRjhDeXdBQkFOOEN5d0FCQUdBQ3l3QUJBU29DeXdBQkFQd0N5d0FCQVA4Q3l3QUJBT01DeXdBQkFOQUN5d0FCQU04Q3l3QUJBTGNDeXdBQkFQQUN5d0FCQVRJQ3l3QUJBUjRDWWdBQkFOa0M1d0FCQUs0QzV3QUJBTHNDWWdBQkFMWUNZZ0FCQUpRQ1lnQUJBRjBDWWdBQkFGb0M1d0FCQVR3Q1lnQUJBSUVDWWdBQkFNMEJ3QUFCQU5rQ1lnQUJBRzBDcXdBQkFLa0NZZ0FCQUtVQ1lnQUJBTlVDNmdBQkFLMENZZ0FCQU1ZQzZBQUJBUElDWWdBQkFMY0NZZ0FCQUo4QTR3QUJBS2tBNHdBQkFOVUJhd0FCQUswQTR3QUJBUElBNHdBQkFMY0E0d0FCQVQ0QUFBQUJBTklDWWdBQkFLWUNHd0FCQU1vQ1lnQUJBTGtDWWdBQkFLOENZZ0FCQU1ZQzZnQUJBS1lDWWdBQkFLY0M2Z0FCQU1RQ1lnQUJBRm9DWWdBQkFHd0NZZ0FCQUZnQzV3QUJBSklDWWdBQkFUVUNZZ0FCQU5ZQ1lnQUJBTVlDWWdBQkFQUUM1d0FCQUo0Q1lnQUJBRmdDNmdBQkFIMENxd0FCQU1rQ1lnQUJBTWNDWWdBQkFNMENZZ0FCQUtzQ1lnQUJBSm9DWWdBQkFMTUNZZ0FCQUtvQ1lnQUJBTVFDNmdBQkFVZ0Rsd0FCQVhzRHJRQUJBUjBDL2dBQkFXd0Rsd0FCQVd3Q3lnQUJBU0FDNFFBQkFUQURtUUFCQVNBQzZnQUJBVEFEbkFBQkFTQUM3UUFCQVNvRGx3QUJBUUVEb1FBQkFaUURYUUFCQVM0Q3JnQUJBWGNEbHdBQkFJa0R4UUFCQVhjRGtBQUJBSWtEdmdBQkFYY0N5Z0FCQUxFRUdRQUJBSWdEYWdBQkFWY0RyUUFCQUlvRDJ3QUJBSk1EWFFBQkFJZ0Rpd0FCQWNzRGx3QUJBZVVDNkFBQkFZUURsd0FCQVRzQzZBQUJBWWtFSUFBQkFURURjUUFCQVlrRUJRQUJBVEVEVmdBQkFZa0RrQUFCQVRFQzRRQUJBWWtEbVFBQkFURUM2Z0FCQVQ4RHJRQUJBVTRDL2dBQkFVNEM2QUFCQVQ4RGx3QUJBUFFDNkFBQkFUOERYUUFCQVBRQ3JnQUJBUjBEclFBQkFQTUMvZ0FCQVIwRUJRQUJBUE1EVmdBQkFSMERsd0FCQVBNQzZBQUJBUm9EbHdBQkFLY0RYQUFCQVhJRGtBQUJBVHNDNEFBQkFYSURsUUFCQVRzQzVRQUJBWElFSUFBQkFUc0RjUUFCQVhJRUJRQUJBVHNEVmdBQkFUTURsUUFCQVFVQzVRQUJBVE1DeWdBQkFkY0Rsd0FCQVpNQzZBQUJBVEFEbHdBQkFRNEM2QUFCQVRBRGtBQUJBUTRDNEFBQkFTUURsd0FCQVFnQzZBQUJBU01EclFBQkFPNEMvZ0FCQVNNQ3lnQUJBS2NEV0FBQkFaTUROd0FCQVFnRE53QUJBUjhER0FBQkFOc0RvUUFCQWI0Q3lnQUJBY0lDeWdBQkFhWUN5Z0FCQWFnQ3lnQUJBYU1ES2dBQkFhWURLZ0FCQVJvRERBQUJBUm9EQndBQkFpRUN5Z0FCQWhFQ3lnQUJBY29DeWdBQkFsNEN5Z0FCQWx3Q3lnQUJBbHNDeWdBQkFtVURLZ0FCQW1JREtnQUJBSXNEREFBQkFJc0RCd0FCQUlzRFhBQUJBU2tDeWdBQkFib0N5Z0FCQWRzQ3lnQUJBZFFDeWdBQkFjc0RLZ0FCQVRFREJ3QUJBYnNDeWdBQkFkRUN5Z0FCQW0wQ3lnQUJBbXNDeWdBQkFqb0N5Z0FCQWpzQ3lnQUJBVFlEREFBQkFUWURCd0FCQVRZRFhBQUJBa2dDeWdBQkFsOEN5Z0FCQW5jREtnQUJBY2tDeWdBQkFta0N5Z0FCQWo4Q3lnQUJBa1FDeWdBQkFqSURLZ0FCQWs4REtnQUJBUm9DL1FBQkFJc0MvUUFCQVRFQy9RQUJBVFlDL1FBQkFUb0REQUFCQVRvREJ3QUJBVG9EWEFBQkF4SUNHd0FCQXcwQ0d3QUJBNHNDR3dBQkEzTUNHd0FCQTNnQ0d3QUJBM29DR3dBQkFVb0REQUFCQVVvREJ3QUJBVW9EWEFBQkE5TUNHd0FCQTgwQ0d3QUJCRzBDR3dBQkJHd0NHd0FCQkdrQ0d3QUJCR2dDR3dBQkJHQUNHd0FCQVpNRERBQUJBWk1EQndBQkFaTURYQUFCQTl3Q0d3QUJBK2tDR3dBQkJINENHd0FCQkZvQ0d3QUJCR0lDR3dBQkJFY0NHd0FCQkU4Q0d3QUJBVG9DN1FBQkFUb0NyZ0FCQVRvQy9RQUJBVG9DNVFBQkFVWURuQUFCQVVZRFhRQUJBVWdDeWdBQkF4a0NHd0FCQVVvQ0d3QUJBVW9DL1FBQkFVb0M1UUFCQWM4Q3lnQUJBM2NDR3dBQkFJc0M3UUFCQUlzQ3JnQUJBSXNEQ2dBQkFJc0M1UUFCQUlzRFhRQUJBTEVEbkFBQkFMRURYUUFCQVNBQ3lnQUJBU1VDeWdBQkFUWUM3UUFCQVRZQ3JnQUJBVFlEQ2dBQkFURUREQUFCQVRZQzVRQUJBVFlEWFFBQkFTUURuQUFCQVNRRFhRQUJBYmtDeWdBQkFaa0N5Z0FCQVpNQ0d3QUJBWk1DL1FBQkFaTUM1UUFCQWR3Q3lnQUJBYTBDeWdBQkFkY0N5Z0FCQWJJQ3lnQUJBNW9DR3dBQkFMc0E0d0FCQU1ZQTR3QUJBTEFBNHdBQkFMWUE0d0FCQU1ZQ0d3QUJBUXdDeWdBQkFUSUN5Z0FCQVI4QytBQUJBS2NDK0FBQkFZY0N5Z0FCQVI4Q3lnQUJBWUVDeWdBQkFROENHd0FCQVowQ0d3QUJBUWNDR3dBQkFSSUN5Z0FCQVhVQ0d3QUJBVG9EYXdBQkFUb0RpUUFCQUlzRGF3QUJBSXNEaVFBQkFUWURhd0FCQVRZRGlRQUJBSXNEdVFBQkFJc0R0d0FCQVRZRHVRQUJBVFlEdHdBQkFXOEN5Z0FCQVdvQ3lnQUJBZVFDeWdBQkFhQUNHd0FCQVp3Q3lnQUJBWjhDR3dBQkFjTUN5Z0FCQVQwQ3lnQUJBZ2tDeWdBQkFhSUNHd0FCQWlzQ3lnQUJBWFVDeWdBQkFUd0NHd0FCQVg0Q3lnQUJBVTRDK0FBQkFZNEN5Z0FCQWNjQ3lnQUJBV3NDeWdBQkFUY0N5Z0FCQXdZQ3lnQUJBUG9DeWdBQkFaMEN5Z0FCQWtVQ3lnQUJBWHNDeWdBQkFSMEN5Z0FCQWVrQ3lnQUJBU0VBQUFBQkFSa0FBQUFCQVRBQ3lnQUJBTEVDeWdBQkFKTUN5Z0FCQVlRQ3lnQUJBT2dDR3dBQkFUQUMrUUFCQVN3Q0d3QUJBUDhDR3dBQkFPNENHd0FCQVI0Q0d3QUJBUXdDR3dBQkFRNEMrQUFCQUt3Qy9RQUJBRmdCWGdBQkFOWUMvUUFCQUZnQTR3QUJBRmdDWXdBQkFGZ0NZZ0FCQUlnQ0d3QUJBblVDR3dBQkFvSUNHd0FCQVBVQ0d3QUJBVWNDR3dBQkFVNENHd0FCQVFVQ0d3QUJBVGNDK0FBQkFRc0MrQUFCQWVVQ0d3QUJBSW9DK0FBQkFQUUNHd0FCQVVnQy9RQUJBWU1BQUFBQkFTa0MvUUFCQVFvQ0d3QUJBUjhDR3dBQkFTQUNHd0FCQUlnQytBQUJBVHNDR3dBQkFQTUNHd0FCQVJNQ1B3QUJBUklERkFBQkFSSURFUUFCQVJJRElnQUJBUklDOUFBQkFSSURGd0FCQVJJQzBnQUJBUklDUHdBQkFSSURXd0FCQVJJRHFnQUJBUklEQ1FBQkFYNENQd0FCQVhBREZBQUJBUTBDUHdBQkFUa0RGQUFCQVRrQ1B3QUJBVGtESWdBQkFUa0MvUUFCQVNrRElnQUJBUE1ERVFBQkFQTUM5QUFCQVBNREZ3QUJBUE1DMGdBQkFPOENQd0FCQVVZQ1B3QUJBVVlERVFBQkFVWURJZ0FCQVVZQ1J3QUJBVVlDL1FBQkFUSUNQd0FCQVRJRElnQUJBSm9ERkFBQkFKb0RFUUFCQUpvRElnQUJBSm9DOUFBQkFKb0REQUFCQUpvREZ3QUJBSm9DMGdBQkFKb0NQd0FCQUpvRENRQUJBSDBESWdBQkFSY0NQd0FCQUgwREZBQUJBSDBDUHdBQkFPRUNQd0FCQVhvQ1B3QUJBVUlESWdBQkFVSURDUUFCQVVJREZRQUJBVUlDOUFBQkFVSURGd0FCQVVJREpnQUJBVUlDMWdBQkFVUUNRQUFCQVVJREZBQUJBVUlERFFBQkFZTUNQd0FCQVAwQ1B3QUJBVUlDUHdBQkFRY0RGQUFCQVFjREpnQUJBUWNDUHdBQkFPWURGQUFCQU9ZRElnQUJBVEVDUHdBQkFUQURGQUFCQVRBREVRQUJBVEFDOUFBQkFUQURGd0FCQVRBRElnQUJBVEFDMGdBQkFUQUNQd0FCQVRBRFd3QUJBVEFEQ1FBQkFRWUNQd0FCQVkwQ1B3QUJBWTBERkFBQkFZMERJZ0FCQVkwQzlBQUJBWTBERndBQkFRVUNQd0FCQVBjQ1B3QUJBUGNERkFBQkFQY0RJZ0FCQVBjQzlBQUJBUGNERndBQkFQTUNQd0FCQVBNREZBQUJBUE1ESWdBQkFQTUREQUFCQUZnQzNRQUJBdndCZEFBQkFPWUN5Z0FCQVNRQ3lnQUJBY3NBQUFBQkFYRUN5Z0FCQXNZQ3lnQUJBV2NDeWdBQkFYUUN5Z0FCQVFjQ3lnQUJBWGdDeWdBQkFXZ0N5Z0FCQWNzQ3lnQUJBV1VDeWdBQkFUMENHd0FCQWxjQ0d3QUJBVFVDR3dBQkFSc0RBQUFCQU9rQ0d3QUJBWGdDR3dBQkFNc0N5Z0FCQWN3Q0d3QUJBRllDK0FBQkFMRUMrQUFCQVRNQytBQUJBUElDR3dBQkFJc0NHd0FCQWFnQ0d3QUJBVWtDR3dBQkFTc0NHd0FCQVlNQ0d3QUJBUzhDR3dBQkFPUUNZZ0FCQU1NQ1lnQUJBT1FDeWdBQkFVY0N5Z0FCQVlnQ3lnQUJBSklDeWdBQkFNd0NHd0FCQVJBQytnQUJBVTBDR3dBQkFUOEMvUUFCQU9ZQUFBQUJBVVlEYndBQkFTOEN5Z0FCQVZjQ3lnQUJBWjRDeWdBQkFJa0MrQUFCQVRBQ0d3QUJBVG9DR3dBQkFma0NHd0FCQU5rQytBQUJBTXdDK0FBQkFkNEFCd0FCQWVrQUFRQUJBUm9DR3dBQkFUY0NHd0FCQUZrQmFBQUJBRm9CYUFBQkFGZ0JhQUFCQVR3QTR3QUJBTTBBNHdBQkFOa0E0d0FCQUo0QTR3QUJBRzBCTEFBQkFQTUN5d0FCQVRjQ1lnQUJBSTBDNXdBQkFJQUM1d0FCQVg4QUFBQUJBWVVDeWdBQkFVQUFBUUFCQVlVQUFBQUJBU1FBQUFBQkFEUUJhUUFCQWo0QlV3QUJBaU1CV1FBQkF1OEN5Z0FCQUlnQzZBQUJBVDhDeWdBQkFQY0N5Z0FCQVRZQ3lnQUJBT0wvL0FBQkFNa0N5d0FCQVlBQUFBQUVBQUFBQVFBSUFBRXFCQUFNQUFFcVpBVXlBQUlBMndBa0FEMEFBQUJFQUYwQUdnQ0NBSWNBTkFDSkFKRUFPZ0NUQUpnQVF3Q2JBSjhBU1FDaUFLY0FUZ0NwQUswQVZBQ3pBTGdBV1FDN0FMOEFYd0RCQU5FQVpBRFVBT2NBZFFEcUFPb0FpUURzQU93QWlnRHVBTzRBaXdEd0FQSUFqQUQxQVBVQWp3RDNBUGdBa0FENkFRRUFrZ0VFQVFvQW1nRU5BUklBb1FFVkFTWUFwd0VvQVQ4QXVRRklBVWtBMFFGVkFWVUEwd0ZYQVZzQTFBRmVBVjhBMlFGaUFXY0Eyd0ZwQVdvQTRRRnNBV3dBNHdGdUFXNEE1QUZ3QVhFQTVRRnpBWE1BNXdGMkFYY0E2QUYrQVg4QTZnR0VBWVFBN0FHTEFZc0E3UUdUQVpNQTdnR1lBWmdBN3dHYkFac0E4QUdmQWFJQThRR3BBYWtBOVFHckFhc0E5Z0d1QWE0QTl3RzFBYmNBK0FHNUFic0Erd0crQWI0QS9nSEpBY2tBL3dIT0FjNEJBQUhYQWRjQkFRSFpBZG9CQWdIY0Fkd0JCQUhlQWQ0QkJRSHBBZWtCQmdIdEFlNEJCd0h3QWZBQkNRSDFBZlVCQ2dINUFnQUJDd0lYQWhjQkV3SkNBa1VCRkFKTUFrd0JHQUpPQWs0QkdRS1RBcFFCR2dLWEFwY0JIQUtrQXFRQkhRS3BBcWtCSGdLNEFyd0JId0svQXNBQkpBTFBBdEFCSmdMWUF0Z0JLQUxhQXRvQktRTGNBdHdCS2dMcUF1b0JLd0w5QXlVQkxBTW5BellCVlFOQkEwUUJaUU5QQTFRQmFRTmdBMkVCYndOd0EzQUJjUU9QQTQ4QmNnT3FBNndCY3dPdUE3MEJkZ1BDQThrQmhnUFBBOUFCamdQVEE5MEJrQVBmQTk4Qm13UGhBK3dCbkFQdkEvQUJxQVAxQS9VQnFnUDNCQVFCcXdRS0JBNEJ1UVFVQkJRQnZnUVdCQmNCdndRY0JDQUJ3UVFvQkNnQnhnUXVCQzRCeHdReUJESUJ5QVExQkRVQnlRUThCRHdCeWdSR0JFWUJ5d1JVQkZRQnpBUldCRllCelFSWkJGc0J6Z1JsQkdVQjBRUnJCR3NCMGdSOUJIMEIwd1IvQklFQjFBU0VCSVVCMXdTakJLVUIyUVRHQk1ZQjNBVE1CTXdCM1FUYUJOc0IzZ1RoQk9FQjRBVG1CT1lCNFFUb0JPc0I0Z1Q5QlA0QjVnVUpCUXdCNkFVT0JRNEI3QVVZQlJnQjdRVWFCU2dCN2dVcUJUQUIvUVV6QlRVQ0JBVTVCVGtDQndVN0JUd0NDQVUrQlQ0Q0NnVkNCVWNDQ3dWSkJVb0NFUVZOQlZNQ0V3VldCVllDR2dWY0JWd0NHd1ZqQldNQ0hBVnBCV2tDSFFWc0JYQUNIZ1YwQlhRQ0l3V0lCWWdDSkFXTUJZd0NKUVdPQlpBQ0pnV2lCYUlDS1FXbUJhY0NLZ1dyQmRnQ0xBWGFCandDV2daR0JrMEN2UVpVQmxrQ3hRWmlCbWtDeXdaeUJvVUMwd2FPQnBFQzV3YXFCcXNDNndhNEJyOEM3UWJJQnM4QzlRYm5CdXNDL1FiMkJ2b0RBZ2NFQndjREJ3Y1RCeGNEQ3djZ0J5RURFQWRBQjBNREVnZElCMGdERmdkaUIyTURGd2RsQjJjREdRZlpCOWtESEFmZkI5OERIUWZrQitRREhnZnFCK3dESHdmdUIvQURJZ2Z5Qi9ZREpRZjVCL2tES2dnRkNBVURLd2dLQ0FzRExBZ05DQTRETGdnUUNCRURNQWdWQ0JZRE1nZ2JDQ0FETkFneENERURPZ2c1Q0RrRE93aEdDRWNEUEFoTkNFOERQZ2hSQ0ZJRFFRaFZDRlVEUXdoWUNGa0RSQWhjQ0Z3RFJnaGtDR2NEUndoMENIc0RTd2lBQ0lVRFV3aUxDSmNEV1FpYUNLRURaZ2lqQ0tNRGJnaWxDTFVEYndpM0NMNERnQWpBQ01zRGlBak5DTkVEbEFqVENOc0RtUWplQ040RG9namdDT0FEb3dqaUNPd0RwQWp1Q080RHJ3andDUTREc0FrUUNSTUR6d2tjQ1J3RDB3a3RDUzREMUFsT0NVNEQxZ2w2Q1hvRDF3bU1DWTBEMkFtWUNaZ0QyZ21jQ1p3RDJ3bXNDYTBEM0FtdkNhOEQzZ20zQ2JjRDN3bTZDYm9ENEFtOENid0Q0UW5XQ2RZRDRnbmZDZVlENHduckNlc0Q2d3JXQ3RZRDdBcllDdHNEN1FyZkN0OEQ4UXJpQ3VNRDhncnFDdW9EOUFydkN1OEQ5UXlJRElnRDlneVFESkFEOXdQNEV0b0ovQTBzRXFRTGRnbXVDYlFMQkJJVURKWU1uQkpLRElvU2RCTmNDMWdUWEEwc0Myb0xUQXQ4RFRJSnVnbkFDeFlKekF2V0NhZ01xQksyQzl3VE1ndTRESzRTSmhJbUM3NFM3QXVzRW9ZVGJndWdDN2dMeEF2S0VzZ0w0Z3VtQ2RnSnhnbmVDZElTMmhMYUV0b1MyaExhRXRvTkxBdDJDM1lMZGd0MkVoUVNGQklVRWhRU2RCTmNFMXdUWEJOY0Uxd0xmQXQ4QzN3TGZBc1dDOVlMMWd2V0M5WUwxZ3ZXREtnTDNBdmNDOXdMM0JLR0UyNFRiaE51RTI0VGJndmlDK0lMNGd2aUNkNEozaExhQzlZUzJndldFdG9MMWcwc0RLZ05MQXlvRFN3TXFBMHNES2dTcEJLMkMzWUwzQXQyQzl3TGRndmNDM1lMM0F0MkM5d0p0QXU0Q2JRTHVBbTBDN2dKdEF1NEN3UU1yaElVRWhRU0ZCSVVFaVlTRkF5V0RKd0x2aEpLRXV3U1NoTHNFa29TN0JKS0V1d1NkQktHRW5RU2hoSjBFb1lIOGhOY0UyNFRYQk51RTF3VGJnMHNDOFFOTEF2RURTd0x4QXRxQzhvTGFndktDMm9MeWd0cUM4b0xUQkxJQzB3U3lCTElDM3dMNGd0OEMrSUxmQXZpQzN3TDRndDhDK0lMZkF2aUNib0oyQXNXQ2Q0TEZnbk1DZElKekFuU0Njd0owZ3RxQzhvSCtBcFFCLzRJQkFyK0N3UVMyZ244QzNZSnpBc0VFMXdTRkF5Y0RJb1NkQk5jQzFnTFRBc1dDY0FTRkFzV0M5QUp4Z2dLRTI0TXhoTnVDM1lMYWhJVUVoUU1saExhQ2Z3TGRneUtDd1FUWEF0WURTd0xUQW5BQzlZTDNCTnVDNkFNcUFuZUNjWUwzQXZLRWlZU0pnbmVDYm9KMkFtNkNkZ0p1Z25ZQ3hZSjNnZ1FESW9MckJMYUM5WUxkZ3ZjRFN3TXFBc1dESzRTRkJJVUV0b0wxaExhQzlZTGRndmNFMXdUYmduZUNkNEozaEsyRXRvTDFoTGFDOVlTMmd2V0V0b0wxaExhQzlZUzJndldFdG9MMWhMYUM5WVMyZ3ZXRXRvTDFoTGFDOVlTMmd2V0MzWUwzQXQyQzl3TGRndmNDM1lMM0F0MkM5d0xkZ3ZjQzNZTDNBdDJDOXdTRkJJVUVpWVRYQk51RTF3VGJoTmNFMjRUWEJOdUUxd1RiaE5jRTI0VFhCTnVDM3dMNGd0OEMrSUxGZ25lQ3hZSjNnc1dDZDRMVEJMSUNCWUxmQkxhQzlZU0ZCTmNFMjRMZkF2aUMzd0w0Z3Q4QytJTGZBdmlDM3dMNGhMYUM5WVMyZ3ZXQ2JRTHVBeWNDNzRUWEJOdUUxd1RiZ20wQzdnU2RCS0dFdG9MMWhMYUM5WUxkZ3ZjQzNZTDNCSVVFaFFUWEJOdUUxd1RiZzBzQzhRTkxBdkVDM3dMNGd0OEMrSUxCQXl1Q2N3UzJndldDM1lMM0JOY0UyNFRYQk51RTF3VGJoTmNFMjRMRmduZUV0b05MQXlvRWtvTFRBdDhDM1lMM0Ewc0M4UUxGZ25lQ0NnSUhBdTRDQ0lTSmdnb0RSUUlMZ3ZpRFJRTkZBMFVFMXdJTkFnNkRISUlRQW1XQ0VZSVRBaFNDRmdKU0F5b0NGNE1xQkltRFN3TkxCTmNDN2dKdWduWUNHUUlhZ2h3Q0hZSWZBaUNDZElJaUFpT0NJNElsQWlhQ0tBSXBnaXNDTElJdUFpK0NNUUl5Z2pRQ05ZSTNBamlDT2dJN2dqMENQb0pTQWsyQ1FBSkJna01DWVFKRWdrWUNSNEpKQWtxQ1pBSk1BazJDVHdKUWdsSUNVNExnZ2xVQ1ZvSllBbG1DMEFKYkJLR0NYSUxvQW1vRXJZVE1ndTRDNzRMb0FsNENYNEpoQW1LREhJSmtBbVdDWndKb2duOENhZ0ovQW1vQ2Z3SnFBMHNES2dTcEJLMkVxUVN0aEtrRXJZU3BCSzJFcVFTdGd0MkM5d0xkZ3ZjQzNZTDNBdDJDOXdMZGd2Y0NhNFRNZ20wQzdnTEJBeXVDd1FNcmdzRURLNExCQXl1Q3dRTXJoSVVFaVlTRkF5Y0M3NE1uQXUrREp3THZoSktFdXdTU2hMc0Vrb1M3QkpLRXV3TWlndXNESW9MckJKMEVvWVNkQktHRW5RU2hoSjBFb1lUWEJOdUUxd1RiaE5jRTI0VFhCTnVDMWdMb0F0WUM2QU5MQXZFRFN3THhBMHNDOFFOTEF2RUMyb0x5Z3RxQzhvTGFndktDMm9MeWd0cUM4b0xUQkxJQzB3U3lBdE1Fc2dMVEJMSUMzd0w0Z3Q4QytJTGZBdmlDM3dMNGd0OEMrSU5NZ3VtRFRJTHBnbTZDZGdKdWduWUNjQUp4Z25BQ2NZTEZnbmVDY3dKMGduTUNkSUp6QW5TREs0U3lBbllDZDRMMWhMYUV0b0o1QW5xQ2Z3SjhBbjJDZndLVmdwV0NnSUtDQW9PQ2hRS0dnb2dDdVlLSmdyZ0Npd0tNZ280Q2o0S1JBeWNDa29LVUFwV0Nsd0tYQk51RTI0VGJoTnVFMjRUYmdwaUNtZ0tiZ3AwQ25vS2VncUFDb1lLakFxU0UyNFRiZ3FZRXRvS25ncWtDcW9Lc0FxMkNyd0t3Z3JJQ3M0S3pnclVDdG9LNEFybUV0b1MyZ3JzRXRvUzJncnlEU3dLK0FyK0N3UVNGQklVQ3dvTEVBc1dDeFlTcEFzY0N5SUxLQXN1QzBBTE5BczZDMEFMckF2V0VzZ01yZ3ljQzc0TFJndE1DMUlNbkF5Y0RKd1NTaE5jRTF3TFdBdGVDMlFUWEJOY0RUSU5EaEowRFN3TW5CSjBDMm9MY0EwVURSUVMyZ3QyRWhRTGZCSktFblFMZ2d1SUM0NExsQXUrQzc0THZoTHNDNW9Mb0F1NEM3Z0xwaEsyRXV3THJCS0dFb1lMc2d1NEM3NFNoZ3ZFQzhvTDBBdldDOXdTN0JLR0VpWUw0Z3ZvQys0TDlBdjBDL1FMOUF2MEMvUUw5QXYwQy9RTDlBdjBDL29NWUF4Z0RHQU1ZQXhnREdBTUFBd0FEQVlNQmd3R0RBWU1CZ3dHREFZTUJnd0dEQVlNREF3U0RCSU1FZ3dTREJJTUdBd1lJRndnWENCY0lGd2dYQ0JjSUZ3Z1hDQmNJRndNSGd3ZURGUU1WQXdrRENRTUpBd2tEQ1FNS2d3MkREWU1OZ3cyRERZTU5ndzJERFlNTmd3MkREWU1OZ3cyRERZTU1BdzJERHdNUEF3OEREd01RZ3hDREVJTVFneENERUlNU0F4SURFZ01TQXhPREU0TVRneE9ERTRNVGd4T0RFNE1UZ3hPREU0TVZBeGFERm9NV2d4YURGb01ZQXhtREdZTVpneG1ER1lNYkF4c0RHd01iQXh5REhnTWZneCtEUlFNaEF5S0Uxd01rQXlXRFJRUzJneWNES0lNcUF5dUV6SU10QXk2RE1BTXhnek1ETklNMkF6ZURPUU02Z3p3RFBZTS9BMENEUWdORGcwVURSb05JQTBtRWlZTkxBMHlEVGdOUGdBQkFwSUNHd0FCQWlJQ3lnQUJBellDeWdBQkFkWUN5Z0FCQWdvQy9RQUJBWFlDWWdBQkFmWUN5Z0FCQUJRQ0d3QUJBRmIvSXdBQkFESUFBQUFCQUI3L2h3QUJBQVQvSXdBQkFXRUM1d0FCQVFjQ1lnQUJBZjhDWWdBQkFVb0NZZ0FCQUl3QzV3QUJBU0VDWWdBQkF0c0MrQUFCQWpmLzl3QUJBa1FBUEFBQkFrRUFEZ0FCQU5rQ0ZBQUJBa1AvYUFBQkFkUUNHd0FCQVY4Q3l3QUJBWjRDeXdBQkFjOEN5d0FCQVYwQ3l3QUJBVVlDeXdBQkFjc0N5d0FCQWRrQ3l3QUJBTmtDeXdBQkFMQUN5d0FCQVk0Q3l3QUJBUEVDeXdBQkFrY0N5d0FCQWVzQ3l3QUJBZlVDeXdBQkFmSUN5d0FCQVlFQ3l3QUJBWThDeXdBQkFXRUN5d0FCQWRNQ3l3QUJBbGNDeXdBQkFWUUM1d0FCQVcwQzV3QUJBV2NDWWdBQkFXa0M1d0FCQWtnQ1lnQUJBWG9DWWdBQkFZSUNZZ0FCQU9VQ3F3QUJBWGNCSndBQkFDQUJId0FCQVVrQ1lnQUJBVzhDNmdBQkFWUUNZZ0FCQVdFQ1lnQUJBUWNBNHdBQkFYVUE0d0FCQVVrQTR3QUJBVzhCYXdBQkFXRUE0d0FCQURvQUFBQUJBVEFDWWdBQkFQNEM2Z0FCQVc0Q1lnQUJBRGdBbWdBQkFYVUNZZ0FCQUEwQkh3QUJBUjBDWWdBQkFWTUM2Z0FCQWdzQytBQUJBZndDeWdBQkFzTUN5Z0FCQTVrQ3lnQUJBazRDeWdBQkFnc0NHd0FCQWlvQ3lnQUJBYllDR3dBQkF4TUNHd0FCQWZzQ0d3QUJBcFFDeWdBQkFwZ0N5Z0FCQW40Q3lnQUJBbmtDeWdBQkFud0N5Z0FCQXdvQ3lnQUJBd1VDeWdBQkF2c0N5Z0FCQXZvQ3lnQUJBeXNDeWdBQkF6RUN5Z0FCQTc0Q3lnQUJBNzBDeWdBQkE4Y0N5Z0FCQThNQ3lnQUJBY3dDeWdBQkFjWUN5Z0FCQWxZQ3lnQUJBbmNDeWdBQkFuRUN5Z0FCQW1jQ3lnQUJBeThDeWdBQkEwVUN5Z0FCQStFQ3lnQUJBOThDeWdBQkE2OEN5Z0FCQXNJQ3lnQUJBMWdDeWdBQkEyOEN5Z0FCQTRjQ3lnQUJBaUFDeWdBQkFwTUN5Z0FCQXBzQ3lnQUJBb1FDeWdBQkFvZ0N5Z0FCQW9VQ3lnQUJBb01DeWdBQkF6UUN5Z0FCQXk0Q3lnQUJBODBDeWdBQkE4a0N5Z0FCQThFQ3lnQUJBOGdDeWdBQkE4QUN5Z0FCQWg0Q3lnQUJBbWdDeWdBQkF5MEN5Z0FCQXpBQ3lnQUJBdGdDeWdBQkFid0N5Z0FCQWNFQ3lnQUJBak1DeWdBQkF0WUN5Z0FCQXFvQ3lnQUJBMUFDeWdBQkF5RUN5Z0FCQVdjQTR3QUJBWG9BNHdBQkFWUUE0d0FCQUhJQUFBQUJBaDhDeWdBQkJIb0N5Z0FCQWxBQ3lnQUJBcTBDeWdBQkExWUN5Z0FCQWhJQ3lnQUJBMHNDeWdBQkFoa0N5Z0FCQXM0Q3lnQUJBS1FCWGdBQkFLUUNZd0FCQTJJQ0d3QUJBNWNDR3dBQkFsd0NHd0FCQWxFQ0d3QUJBZm9DR3dBQkE0TUNHd0FCQWVnQ0d3QUJBaklDR3dBQkFpc0MrQUFCQVpVQ0d3QUJBYndDR3dBQkFqVUMvUUFCQWd3Q0d3QUJBaWdDR3dBQkFqNENHd0FCQXFVQ2xBQUJBMEVDbEFBQkFnOENQd0FCQWdVQ1B3QUJBajBDUHdBQkFiRUNQd0FCQVpzQ1B3QUJBa0lDUHdBQkFsQUNQd0FCQU9ZQ1B3QUJBUHdDUHdBQkF1QUNQd0FCQWVNQ1B3QUJBbThDUHdBQkFma0NQd0FCQWJjQ1B3QUJBYmtDUHdBQkFrd0NQd0FCQWZnQ1B3QUJBd1VDUHdBQkFmWUNQd0FCQWRrQ1B3QUJBZEVDUHdBQkFLUUMzUUFCQXZ3QTF3QUJBQlFDeWdBQkFCTUN5Z0FCQTRJQ3lnQUJBQ2dDR3dBQkFRNEN5Z0FCQW1RQ3lnQUJBdE1DeWdBQkFkTUNHd0FCQWg4QytBQUJBd0VDR3dBQkFTa0MrQUFCQVJ3QytBQUJBaDhDR3dBQkFXRUJhQUFCQVdrQmFBQUJBSXdCYUFBQkFrZ0E0d0FCQVhZQTR3QUJBWUlBNHdBQkFTRUE0d0FCQU9VQkxBQUJBTUVDNXdBQkFLWUN5Z0FCQUJBQUFRQUJBS1lBQUFBQkFCUUFBQUFCQURRQzNRQUJBOWtDeWdBQkEyWUN5Z0FCQW1VQ3lnQUJBbE1DeWdBQkFZTUN5d0FCQXpBQ0d3QUZBQUFBQVFBSUFBRUcwZ0tFQUFFSUVnQU1BQklBSmdBNEFFb0EyQUQ4QUZ3QWJnQjhBSllBcUFDNkFNWUEyQURxQVB3QkRnRklBWW9BQWdBR0FBd0FBUURlQUFBQUFRSzdBQUFBQWdBR0FBd0FBUUVhQUFBQUFRSXQveGtBQWdBR0FBd0FBUUZLQUFBQUFRTm9BQUFBQWdBR0FBd0FBUUNnQUFBQUFRSUVBQUFBQXdBV0FCd0FDQUFCQTFNQUFBQURBQWdBRGdBVUFBRUFrQUFBQUFFQjlRQUFBQUVEVVFBQUFBSUFCZ0FNQUFFQW5nQUFBQUVCN1FBQUFBSUFCZ0FNQUFFQW5RQUFBQUVCN0FBQUFBSUFCZ0FrQUFFRHJnQUFBQUlBQmdBTUFBRUJMd0FBQUFFRGhRQUFBQUlBQmdBTUFBRUJpZ0FBQUFFRHN3QUFBQUlBQmdBTUFBRUEvd0FBQUFFREFRQUFBQUlBQmdBTUFBRUJNQUFBQUFFQ3ZnQUFBQWNBRUFBV0FCd0FJZ0FvQUM0QU5BQUJBcXdBamdBQkFNQUFqZ0FCQWpFQmtnQUJBYllBamdBQkFUd0JrZ0FCQWpIL2lRQUJBVHovaVFBSUFCSUFHQUFlQUNRQUtnQXdBRFlBUEFBQi9yMy9SUUFCQVQ3L1JRQUIvakFBcndBQkFBUCsxd0FCQWM4QXJ3QUIvcjBDRHdBQkFUNENEd0FCQUFNQ2NRQUNBQVlBREFBQkFOY0NIZ0FCQWt3QUFBQUZBQUFBQVFBSUFBRUsvQUFNQUFFTElnQWdBQUVBQ0FWbUIvRUlMUWhVQ1RBSlBRbHZDWElBQ0FBU0FFSUFKQUJVQURZQVFnQlVBR1lBQWdBR0FBd0FBUURBQVEwQUFRSzVBUTBBQWdBR0FBd0FBUUNJQVEwQUFRR1lBUTBBQWdBR0FCSUFBUU90QVdVQUFnQUdBQXdBQVFHSkFXVUFBUU95QVdVQUFnQUdBQXdBQVFFeEFRMEFBUUsvQVEwQUJ3QVFBQllBSEFBaUFDZ0FMZ0EwQUFFQ3F3RXNBQUVBd0FFc0FBRUNNUUl4QUFFQnRRRXNBQUVCUEFJeEFBRUNNUUFuQUFFQlBBQW5BQVVBQUFBQkFBZ0FBUXJVQUF3QUFReDBBRFFBQVFBU0JXWUgzd2ZqQi9FSVZBaUdDSWNJaUFpSkNJb0pNQWt6Q1QwSlpRbHZDWElNWXd5UkFCSUFKZ0E0QUVvQXVBRGNBRndBWWdCaUFId0FpQUNhQUtZQXVBREtBTndBN2dFb0FXb0FBZ0FHQUF3QUFRQ25BcFFBQVFJSUF2Z0FBZ0FHQUF3QUFRRWFBc29BQVFJdEFlTUFBZ0FHQUF3QUFRRkdBc29BQVFOakFzb0FBZ0FPQUJRQUF3QUlBQTRBRkFBQkFRRUMvUUFCQW1ZQy9RQUJBMUVDL1FBQ0FCSUFCZ0FCQWUwQy9RQUNBQVlBREFBQkFSOEMvUUFCQWV3Qy9RQUNBQVlBSkFBQkE2MEN5Z0FDQUFZQURBQUJBU29DeWdBQkE2QUN5Z0FDQUFZQURBQUJBWWtDeWdBQkE3SUN5Z0FDQUFZQURBQUJBUFlDR3dBQkF4RUNHd0FDQUFZQURBQUJBVEVDR3dBQkFyOENHd0FIQUJBQUZnQWNBQ0lBS0FBdUFEUUFBUUtyQWNzQUFRREFBY3NBQVFJeEFzOEFBUUcxQWNzQUFRRThBczhBQVFJeEFNWUFBUUU4QU1ZQUNBQVNBQmdBSGdBa0FDb0FNQUEyQUR3QUFmNjlBQmdBQVFFK0FCZ0FBZjR3QVlJQUFRQUQvNm9BQVFIUEFZSUFBZjY5QXVJQUFRRStBdUlBQVFBREEwUUFBZ0FHQUF3QUFRRFdBQU1BQVFKQkFoc0FCUUFBQUFFQUNBQUJFMVlBREFBQkU3WUFVQUFCQUNBQTh3RDBBbWtEb1FPaUE2TURwQU9sQTZZRHB3T29BNmtEekFQTkE4NEZaZ2ZqQi9FSUxRaFVDSVlJaHdpSUNJa0lpZ2kvQ1RBSlBRbHZDWElNWXd5UkFDQUFRZ0JVQUdBQXhnRFNBT1FBYkFCNEFJb0FsZ0NpQUxRQXhnRFNBT1FBOWdFSUFZb0JHZ0djQVN3Qk1nRkFBVlFCWUFGeUFYNEJpZ0djQWE0QjZBSXFBQUlBQmdBTUFBRUJUZ0xLQUFFQ2NBTEtBQUlBQmdBOEFBRUEvQUxvQUFJQlFnQUdBQUVFU1FJYkFBSUFFZ0FHQUFFREpnTEtBQUlBQmdBTUFBRUJjZ0xLQUFFREZBTG9BQUlBbGdBR0FBRUNEQUxvQUFJQUVnQUdBQUVFRmdMS0FBSUFCZ0FNQUFFQzlBTEtBQUVFQkFMb0FBSUFCZ0FNQUFFQ1B3SWJBQUVEY1FMb0FBSUFFZ0FHQUFFRS9RTEtBQUlBQmdBTUFBRUN5UUxLQUFFRWt3SWJBQUlBQmdBTUFBRUNNZ0w0QUFFRUl3SWJBQUlBQmdBTUFBRUJZUUtVQUFFRG5nTDRBQUlBQmdBTUFBRUNIQUxLQUFFRU9RTEtBQUlBQmdBTUFBRUEyQUw0QUFFQjV3TDRBQUlBT2dBY0FBTUFOQUFXQUFnQUFRUEZBdWdBQXdBbUFBZ0FEZ0FCQXVzQy9RQUJBNkVDK0FBQ0FCSUFCZ0FCQW1FQzZBQUNBQVlBREFBQkFZY0MvUUFCQWp3QytBQUNEUjRBQmdBQkFob0NQd0FDQUFZQUVnQUJCU0VDeWdBQ0FBWUFEQUFCQXYwQ3lnQUJCU1lDeWdBQ0FBWUFEQUFCQWtZQ0d3QUJBOVFDR3dBSEFCQUFGZ0FjQUNJQUtBQXVBRFFBQVFOUkFjc0FBUUZsQWNzQUFRTFdBczhBQVFKYUFjc0FBUUhoQXM4QUFRTFdBTVlBQVFIaEFNWUFDQUFTQUJnQUhnQWtBQ29BTUFBMkFEd0FBZjhSQUJnQUFRR1NBQmdBQWY2RUFZSUFBUUJYLzZvQUFRSWpBWUlBQWY4UkF1SUFBUUdTQXVJQUFRQlhBMFFBQWdBR0FBd0FBUUFnQUFNQUFRTklBaHNBQmdBUUFBRUFDZ0FBQUFFQURBQ1VBQUVCVEFMK0FBSUFGZ0lvQWlnQUFBdVdDNWtBQVF1Y0M3SUFCUXU0QzdzQUhBdkNDOFFBSUF2SUM4a0FJd3ZPQzlFQUpRdlVDOVVBS1F2WEM5Y0FLd3ZhQzlvQUxBdmRDOTBBTFF2aEMrRUFMZ3ZyQytzQUx3dndDL0FBTUF2M0Mvd0FNUXYvQy84QU53d1FEQkVBT0F3ekREa0FPZ3c4RER3QVFReEpERWtBUWd4T0RFNEFRd3gvREg4QVJBQUNBQjRDS0FJb0FBQUxsZ3VaQUFFTG5BdXlBQVVMdUF1N0FCd0x3Z3ZFQUNBTHlBdkpBQ01Memd2UkFDVUwxQXZWQUNrTDF3dlhBQ3NMMmd2YUFDd0wzUXZkQUMwTDRRdmhBQzRMNnd2ckFDOEw4QXZ3QURBTDl3djhBREVML3d3RUFEY01CZ3dOQUQwTUVnd21BRVVNS0F3cEFGb01MQXd0QUZ3TUx3d3hBRjRNUEF3OEFHRU1UZ3hPQUdJTVZReGNBR01NWUF4Z0FHc01aZ3h0QUd3TWJ3eHpBSFFNZFF4M0FIa01lUXlBQUh3TWdneUhBSVFBUlFBQUFhd0FBQUVXQUFBQkhBQUFBYXdBQUFHc0FBQUJRQUFBQWF3QUFBR3NBQUFCckFBQUFhd0FBQUVpQUFBQktBQUFBUzRBQUFHc0FBQUJOQUFBQVVBQUFBRkFBQUFCckFBQUFhd0FBQUZBQUFBQnJBQUFBYXdBQUFHc0FBQUJyQUFBQWF3QUFBR3NBQUFCckFBQUFVQUFBQUU2QUFBQnJBQUFBVUFBQUFGQUFBQUJyQUFBQWF3QUFBR3NBQUFCckFBQUFVQUFBQUdzQUFBQlJnQUFBVVlBQUFGWUFBQUJyQUFBQVhBQUFBRk1BQUFCckFBQUFWSUFBQUZZQUFBQnJBQUFBV29BQUFGZUFBQUJyQUFBQWF3QUFBR3NBQUFCWkFBQUFXb0FBQUZ3QUFBQmRnQUFBWHdBQUFHc0FBQUJyQUFBQVlJQUFBR0lBQUFCamdBQUFZNEFBQUdVQUFBQm1nQUFBYUFBQUFHbUFBQUJyQUFCLy9VQUFBQUJBQTBBQUFBQi82RUFBQUFCQUY4QUFBQUIvdElBQUFBQkFBTUFBQUFCQUFJQUFBQUJBQUVBQUFBQi8vNEFBQUFCL3dvQUFBQUJBQlVBQUFBQkFBWUFBQUFCLy8wQUFBQUIvL2NBQUFBQi8vc0FBQUFCLy84QUFBQUIvLzhBQ0FBQkFBQUFOUUFCQUFELzRnQUJBQUQvNWdBQkFBRC8yUUFCQUFELzFBQUIvdjBBQUFBQkFHVUFBQUFCQUNBQUFBQUJBQUFBQUFDS0FSWUJIQUVpQVdRQlpBRW9BUzRCTGdFMEFUb0JRQUZHQVV3QlVnRllBYjRCWGdHeUFXUUJyQUZxQVhBQmRnRjhBWUlCaUFHT0FaUUJtZ0dnQWFZQnJBSEVBYklCMEFHNEFiNEJ4QUhLQWNvQjZBSFFBZEFCMWdIY0FlSUI2QUh1QWZRQitnSUFBZ1lDQmdJTUFoSUNHQUphQWg0Q0pBTEdBaW9DTUFKT0FqWUNQQUpDQXNZQ3hnTEFBc1lDeGdMR0FrZ0N4Z0xHQXNZQ3hnTEdBc1lDeGdMR0FrNENpZ0xHQXNZQ1ZBTEdBc1lDV2dMR0FzWUNsZ0xHQXNZQ3hnTEdBbUFDWmdKc0FzWUN4Z0tvQW5JQ3hnTEdBc1lDeGdKNEFzWUN4Z0xHQXNZQ3hnTEdBc1lDZmdLRUFvb0NrQUtXQXNZQ25BS2lBcUlDeGdMR0FzWUNxQUxHQXNZQ3JnSzBBc1lDdWdMQUFzWUN4Z0xNQUFFQUF2OGpBQUgvOS84MEFBRUFELzgwQUFFQUEvOGJBQUVBQXY4d0FBRUFBdjhjQUFFQUFQOHFBQUgvb2Y4UkFBRUFYLzhSQUFIKzAvOUdBQUVBQXY5TEFBRUFCZjhkQUFFQUFQOGVBQUVBQXY4bUFBRUFBLzg1QUFFQUF2ODRBQUVBQXY4K0FBRUFBdjg5QUFFQUF2OUJBQUVBQS85a0FBRUFBdjlsQUFFQUEvOGhBQUVBQlA4YkFBRUFBUDhtQUFFQUEvOGNBQUVBQS85UEFBRUFBdjh4QUFFQUF2OGxBQUVBQS84UUFBRUFBdjhoQUFFQUFQOFFBQUVBQXY4UUFBRUFBLzhYQUFFQUF2OXZBQUVBRi84aUFBRUFDUDhRQUFFQUF2OGJBQUgvL2Y4c0FBRUFBUDhLQUFFQUF2NzNBQUVBQXY4T0FBSC8rZjhRQUFILy9mOFZBQUVBQXY4U0FBRUFFUUpzQUFFQUtBSnNBQUVBQWdKc0FBSC9xQUlvQUFFQUNnSU1BQUgvbkFJb0FBRUFDUUpzQUFFQUNnSWdBQUgvdkFJTUFBRUFDQUlnQUFFQUNBSnNBQUVBUGdKc0FBSCsvLzhjQUFFQUl2OGVBQUgvd1FJTUFBRUFVQUpzQUFFQVZnSnNBQUVBR3dJTUFBRUFHd0pzQUFFQUF3SnNBQUVBRUFKc0FBRUFCUUlNQUFFQUN3SnNBQUVBREFKc0FBSC8zZjdxQUFILzV3SnNBQUVBR0FKc0FBRUFCQUpzQUFFQUNnSnNBQUVBRFFKc0FBWUFFQUFCQUFvQUFRQUJBQXdBSEFBQkFESUFjQUFCQUFZTHN3dTBDN1VMdGd1M0REMEFBUUFKREFZTURBd2NERzBNY1F4MkRIb01mZ3lEQUFZQUFBQWFBQUFBSUFBQUFDWUFBQUFzQUFBQU1nQUFBRGdBQVFBRUFSTUFBUUFCQVNFQUFRQUFBUnNBQVFBQkFSOEFBUUFBQVY0QUFmLy9BTnNBQ1FBZ0FDQUFJQUFVQUJvQUlBQWdBQ0FBSUFBQkFGWUMyQUFCQUFzQzJBQUJBQW9DMkFBR0FCQUFBUUFLQUFJQUFRQU1BTkFBQVFHc0JoNEFBZ0FnQVZNQlZBQUFCTUVFd1FBQ0J1d0c3QUFEQnU0RzhBQUVCdnNHL1FBSEJ3Z0hDZ0FLQnhnSEdnQU5CeVVISmdBUUIxWUhWZ0FTQjRVSGlBQVRDdDRLM2dBWEM0RUxsQUFZQzd3THdRQXNDOFVMeHdBeUM4c0x6UUExQzlJTDBnQTRDOVlMMWdBNUM5Z0wyUUE2QzlzTDNBQThDOTRMNEFBK0MrSUw2Z0JCQyt3TDd3QktDL0VMOWdCT0MvMEwvZ0JVREFBTUR3QldEQklNTVFCbUREb01Pd0NHREQ0TVNBQ0lERXNNVFFDVERFOE1ZZ0NXREdZTWZnQ3FESUFNaHdEREFBSUFKQVRCQk1FQUFBYnVCdTRBQVFiN0J2MEFBZ2NJQndvQUJRY2FCeG9BQ0FjbEJ5WUFDUXJlQ3Q0QUN3dUJDNVFBREF1OEM4RUFJQXZGQzhjQUpndkxDODBBS1F2U0M5SUFMQXZXQzlZQUxRdllDOWtBTGd2YkM5d0FNQXZlQytBQU1ndmlDK0lBTlF2bUMrb0FOZ3ZzQys4QU93dnhDL1lBUHd2OUMvNEFSUXdBREFRQVJ3d0dEQThBVEF3U0RDa0FWZ3dzREMwQWJnd3ZEREVBY0F3NkREc0Fjd3crREVnQWRReExERTBBZ0F4UERGSUFnd3hWREZ3QWh3eGdER0FBand4bURHMEFrQXh2REhjQW1BeDVESUFBb1F5Q0RJY0FxUURMQUFBRFJnQUFBMTRBQUFNdUFBQUROQUFBQXpvQUFBTmtBQUFEWGdBQUEwQUFBQU5HQUFBRFJnQUFBMHdBQUFOU0FBQURXQUFBQTE0QUFBTmtBQUFEYWdBQUEzQUFBQU4yQUFBRGZBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFBT0NBQUFFYkFBQUJHd0FBQU9JQUFBRGpnQUFBNVFBQUFSbUFBQUVZQUFBQkdZQUFBUG9BQUFEbWdBQUJHQUFBQU9nQUFBRWJBQUFCR3dBQUFPbUFBQUVXZ0FBQkd3QUFBT3NBQUFEN2dBQUE3SUFBQVJzQUFBRWJBQUFCRm9BQUFPNEFBQUR2Z0FBQkd3QUFBUmFBQUFEeEFBQUJHd0FBQVBXQUFBRVdnQUFCRm9BQUFSYUFBQUViQUFBQkdBQUFBUnNBQUFFYkFBQUE4b0FBQVJzQUFBRDNBQUFBOVlBQUFQUUFBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVBXQUFBRWJBQUFBOXdBQUFQb0FBQUQ0Z0FBQStnQUFBUThBQUFFV2dBQUErZ0FBQVJnQUFBRWJBQUFCR3dBQUFSZ0FBQUVXZ0FBQkZvQUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFBKzRBQUFQdUFBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJnQUFBRDlBQUFCQXdBQUFQNkFBQUVIZ0FBQkFBQUFBUUdBQUFFREFBQUJBd0FBQVFTQUFBRUdBQUFCQjRBQUFRa0FBQUViQUFBQkNvQUFBUThBQUFFTUFBQUJEWUFBQVE4QUFBRVFnQUFCRWdBQUFST0FBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSYUFBQUVXZ0FBQkZRQUFBUnNBQUFFV2dBQUJHQUFBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkdZQUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFBUnNBQUFFYkFBQUJHd0FBQVJzQUFBRWJBQUFCR3dBQUFSc0FBQUViQUFBQkd3QUFmN2JBaHNBQVFDQUFoc0FBUUNCQWhzQUFRRWRBaHNBQVFFakFoc0FBUUVXQWhzQUFRRWNBaHNBQVFFdUFoc0FBUUVoQWhzQUFRRWtBaHNBQVFFdEFoc0FBUUVMQWhzQUFRQ0pBaHNBQWYvL0FXVUFBUUN2QVRFQUFmNlpBaHNBQWY3MEFoc0FBUUE2QWhzQUFmN0tBaHNBQVFBQkFua0FBZjdYQWhzQUFmLzlBWkFBQWYvK0FaQUFBZi9BQWhzQUFRQkJBaHNBQWYvL0FnOEFBZjZ1QW1zQUFmN2ZBaHNBQWYvK0Foc0FBZi85QWhzQUFmN3JBaHNBQVFBREFoc0FBUUFBQVpBQUFRQUVBWkFBQVFDTEFqOEFBUUVRQWo4QUFRRWZBajhBQVFFcUFqOEFBUUVwQWo4QUFRRWRBajhBQVFFbkFqOEFBUUVnQWo4QUFmLzlBZWtBQWY3cUFoc0FBZjd4QWhzQUFmN21BaHNBQWY3bkFoc0FBZi8vQXJ3QUFRQUFBZjhBQWYvL0FEOEFBZi8vQWhzQUFRQUJBaHNBQVFBQ0Foc0FBUUFBQWhzQXJ3RmdBV1lCYkFGeUFZUUJlQUYrQVlRQmlnR1FBWllCbkFHaUFhZ0JyZ0cwQWJvQndBSEdBY3dCMGdIWUFkNEI1QUhxQWVvQjhBSDJBZndEYWdJQ0FnZ0NEZ0lVQWhvQ0lBSW1BaXdDTWdJNEFqNENhQUowQXJ3Q2RBSkVBa29DVUFKV0Fsd0NnQUppQW1nQ2JnSjBBblFDZWdLQUFvWUNqQUtTQXBnQ25nS2tBcW9Dc0FLMkFyd0N3Z0xJQXNnRHVBTE9BdFFEeWdMYUJBd0MrQU8rQkF3RURBT1VBNVFEbEFMZ0F1WUR2Z1FNQXV3RURBUUdBdjRDOGdRTUJBd0VEQVFNQkF3QytBT3NCQXdFQmdNRUF2NEVEQU1FQkF3RENnUU1BN2dERUFRTUJBd0VEQU1XQXh3RElnTW9BeTRETkFNNkEwQURSZ05HQTB3RFVnTllBMTREWkFOcUEzQURkZ044QTRJRGlBUU1BNDREbEFRTUJBd0VCZ1FNQkF3RG1nUU1CQXdFREFRTUJBd0VEQU9nQTZZRHJBT3NBN0lEdUFPK0E4UUR5Z1BRQTlZRDNBUGlBK2dEN2dRTUJBd0Q5QVA2QkF3RUFBUU1CQVlFQmdRTUFBSCszUU00QUFFQWd3TU1BQUVCSkFNSEFBRUJQQU1IQUFFQkd3TUhBQUVCTlFNSEFBRUJLd05jQUFFQkRnTDlBQUVCT0FMOUFBRUFpUU1NQUFFQ2RnRlFBQUVBQUFMYkFBRUFBQUxvQUFIK21RTDlBQUgrOUFMOUFBRUFPZ0wrQUFFQUFnTDlBQUVBQXdMK0FBRUFBZ0xyQUFFQUJRTTNBQUgreWdMa0FBRUFBUUt3QUFFQUFRTktBQUVBQWdMN0FBSCsxd0wrQUFFQUFnTlBBQUVBQWdMdEFBRUFBUUxLQUFFQUFBTEtBQUVBQWdNSEFBRUFBZ05pQUFFQUFnUEJBQUgvd2dMK0FBRUFRd0wrQUFFQUFnTDZBQUVBQWdNRUFBRUFBZ09oQUFFQUFnTmNBQUVBQWdNUEFBRUFBd01LQUFFQUFnS2tBQUVBQXdMbkFBRUFBZ05hQUFILy93TGhBQUVBQUFNV0FBSCs0UUw2QUFFQUFnTXBBQUVBQUFMK0FBRUFBZ0xpQUFILy93THFBQUVBQlFMcUFBSCs3UUxrQUFFQUJRTGhBQUgrNkFNTUFBRUFBUUxmQUFFQUJRTCtBQUVBQXdNN0FBRUFBZ05LQUFFQUFnTk1BQUVBQXdPR0FBRUFBZ05EQUFFQUZRT2NBQUVBRGdPZUFBRUFMZ09lQUFFQUFBSndBQUVBQXdMS0FBRUFHUU5FQUFFQUVRTkVBQUVBRlFORUFBRUFCZ05FQUFFQUNBTkVBQUgvL3dORUFBSC95UU9jQUFFQVBnTkVBQUVBQXdNOEFBRUFCZ003QUFFQkxBTDBBQUVBalFMOUFBRUE3Z01YQUFFQlRBTVVBQUVCYVFNWEFBRUJMUU1VQUFFQkxBTUZBQUVCSUFNOUFBRUJMQU1BQUFFQklnTExBQUVBQWdMbEFBSC8vd0xLQUFIKzZBTkdBQUgrN0FMTkFBSCs4d0xsQUFIKzZBTU9BQUgrNlFNT0FBRUFEQU5FQUFFQUNnT1RBQUVBVUFORUFBRUFEZ05FQUFFQVZnTkVBQUVBSEFORUFBSC85d09jQUFFQUN3TkVBQUVBQ2dPZUFBRUFCQUx0QUFFQUJ3TkVBQUgvdWdPY0FBRUFDZ09XQUFIL3lnT2NBQUVBQ2dPY0FBRUFJQU9lQUFFQUR3TkVBQUVBRHYvQ0FBRUFHQU5FQUFILy93TjBBQUVBQ1FORUFBRUFDZ05FQUFZQUVBQUJBQW9BQXdBQkFBd0FHQUFCQUd3QWxnQUJBQVFMbFF1YUM1c0wwd0FCQUNnTUFRd0NEQVFNQmd3SERBa01DZ3dMREF3TURRd2NEQjRNSHd3aERDY01LQXdwREZnTWF3eHRERzhNY0F4eERISU1kUXgyREhjTWVReDZESHdNZlF4K0RIOE1nQXlDRElNTWhBeUZESVlNaHdBRUFBQUFFZ0FBQUJnQUFBQWVBQUFBSkFBQi81SUN5Z0FCQUNvQ2lnQUIvKzRDYlFBQkFMWUNHd0FvQUZJQVdBQmVBTGdBYWdEV0FHUUFkZ0M0QU5ZQXVBQnFBSUlBNGdDeUFIWUFqZ0J3QUhZQWZBQ0NBSUlBaUFDT0FKUUFtZ0NnQUtZQXJBQ3lBTllBdUFDK0FNUUF5Z0RRQU5ZQTNBRGlBT2dBQVFCcUE1d0FBUUI0QTU0QUFRQnFBNTRBQVFDMkEwUUFBUUNLQTBRQUFRQjNBMFFBQVFCMUEwUUFBUURUQTBRQUFRQnVBMFFBQVFCOEE1d0FBUUNDQTBRQUFRQjhBMFFBQVFCeEE1d0FBUUErQTVZQUFRQ0dBNXdBQVFBdUE1d0FBUURKQTBRQUFRQ0hBMFFBQVFCWC84SUFBUUJoQTBRQUFRQmxBMFFBQVFCVEEzUUFBUUIvQTBRQUFRQjRBMFFBQVFCN0EwUUFBUUJrQTBRQUFBQUJBQUFBQ2dIU0F5b0FCRVJHVEZRQUdtTjVjbXdBUm1keVpXc0FnR3hoZEc0QXJBQUVBQUFBQVAvL0FCRUFBQUFCQUFJQUJBQUhBQWdBQ1FBUUFCRUFFZ0FUQUJRQUZRQVdBQmNBR0FBWkFBb0FBVk5TUWlBQU1nQUEvLzhBRVFBQUFBRUFBZ0FGQUFjQUNBQUpBQkFBRVFBU0FCTUFGQUFWQUJZQUZ3QVlBQmtBQVAvL0FBRUFEd0FFQUFBQUFQLy9BQkVBQUFBQkFBSUFCZ0FIQUFnQUNRQVFBQkVBRWdBVEFCUUFGUUFXQUJjQUdBQVpBQ0lBQlVOQlZDQUFTazFCU0NBQWRFMVBUQ0FBbms1QlZpQUF5RkpQVFNBQThnQUEvLzhBRVFBQUFBRUFBZ0FEQUFjQUNBQUpBQkFBRVFBU0FCTUFGQUFWQUJZQUZ3QVlBQmtBQVAvL0FCSUFBQUFCQUFJQUF3QUhBQWdBQ1FBS0FCQUFFUUFTQUJNQUZBQVZBQllBRndBWUFCa0FBUC8vQUJJQUFBQUJBQUlBQXdBSEFBZ0FDUUFMQUJBQUVRQVNBQk1BRkFBVkFCWUFGd0FZQUJrQUFQLy9BQklBQUFBQkFBSUFBd0FIQUFnQUNRQU1BQkFBRVFBU0FCTUFGQUFWQUJZQUZ3QVlBQmtBQVAvL0FCSUFBQUFCQUFJQUF3QUhBQWdBQ1FBTkFCQUFFUUFTQUJNQUZBQVZBQllBRndBWUFCa0FBUC8vQUJJQUFBQUJBQUlBQXdBSEFBZ0FDUUFPQUJBQUVRQVNBQk1BRkFBVkFCWUFGd0FZQUJrQUdtRmhiSFFBbm1NeWMyTUFwbU5oYzJVQXJHTmpiWEFBc21OamJYQUF3R05qYlhBQXltTmpiWEFBMW1SdWIyMEE0bVp5WVdNQTZHeHVkVzBBOG14dlkyd0ErR3h2WTJ3QS9teHZZMndCQkd4dlkyd0JDbXh2WTJ3QkVHeHZZMndCRm01MWJYSUJIRzl1ZFcwQkltOXlaRzRCS0hCdWRXMEJMbkowYkcwQk5ITnRZM0FCT25OMVluTUJRSE4xY0hNQlJuUnVkVzBCVEhwbGNtOEJVZ0FBQUFJQUFBQUJBQUFBQVFBaEFBQUFBUUFqQUFBQUJRQUNBQU1BQmdBREFBWUFBQUFEQUFJQUF3QUdBQUFBQkFBQ0FBTUFCZ0FJQUFBQUJBQUNBQU1BQmdBSEFBQUFBUUFWQUFBQUF3QVdBQmNBR0FBQUFBRUFIUUFBQUFFQURRQUFBQUVBREFBQUFBRUFDZ0FBQUFFQUNRQUFBQUVBQ3dBQUFBRUFFUUFBQUFFQUZBQUFBQUVBSUFBQUFBRUFHd0FBQUFFQUhnQUFBQUVBSkFBQUFBRUFJZ0FBQUFFQUVnQUFBQUVBRXdBQUFBRUFId0FBQUFFQUpRQW1BRTRBWWdDQUFKb0JiZ0Z1QWNBSVZBbjRDaElLUkFwRUNtWUtpQXJXQ3ZZTEZnczJDMG9MdEF3a0RBSU1FQXdrRERJTWNBeHdESWdNMEF6eURRb05VQTJRRGRZUVVCTE9FeTRUUWdBQkFBQUFBUUFJQUFFQUJnUzFBQUVBQVFUSkFBTUFBQUFCQUFnQUFRQVFBQUVBQ0FBREI2a0hxZ2VyQUFFQUFRRUxBQVFBQUFBQkFBZ0FBUkxJQUFFQUNBQUJBQVFLQXdBQ0RESUFCZ0FBQUFJQUNnQWNBQU1BQUFBQkFQZ0FBUUJtQUFFQUFBQUVBQU1BQUFBQkFPWUFBZ0FVQUZRQUFRQUFBQVVBQWdBS0FpZ0NLQUFBQzVZTG1RQUJDNXNMdXdBRkM4SUx4QUFtQzhnTHlnQXBDODRMMFFBc0M5TUwxUUF3QzljTDJnQXpDOXdMM1FBM0RFNE1UZ0E1QUFJQUVBVEJCTUVBQUF1QkM1UUFBUXU4QzhFQUZRdkZDOGNBR3d2TEM4MEFIZ3ZTQzlJQUlRdldDOVlBSWd2YkM5c0FJd3hMREUwQUpBeHJER3NBSnd4d0RISUFLQXgyREhjQUt3eDhESHdBTFF4K0RINEFMZ3lBRElBQUx3eURESVlBTUFBQkFBQUFBUUFJQUFJQUpnQVFDQ29JTEFnckNDSUlJd2c4Q0RNRlp3ZzBDRFVJTmdnM0NEZ0lPUWc2Q0RzQUFRQVFBRXdBVFFEeEFlNEI4QU1vQkJrRU5RUnFCSDhFMndWT0JZSUZrQVdVQmRjQUJBQUFBQUVBQ0FBQkJsNEFGUUF3QURvQVJBQk9BR29BZkFDR0FKQUFtZ0MyQU1nQjJnTHNBLzRGRUFZaUJpd0dOZ1pBQmtvR1ZBQUJBQVFBeGdBQ0M2Y0FBUUFFQU5vQUFndW5BQUVBQkFEd0FBSUxwd0FEQUFnQUVBQVdBOGdBQXd1bkFVd0NSd0FDQzVzRHhnQUNDNmNBQWdBR0FBd0NTUUFDQzVzQk13QUNDNmNBQVFBRUFNY0FBZ3VuQUFFQUJBRGJBQUlMcHdBQkFBUUE4UUFDQzZjQUF3QUlBQkFBRmdQSkFBTUxwd0ZNQWtnQUFndWJBOGNBQWd1bkFBSUFCZ0FNQWtvQUFndWJBVFFBQWd1bkFCd0FPZ0JDQUVvQVVnQmFBR0lBYWdCeUFIb0FnZ0NLQUpJQW1nQ2lBS29Bc2dDNkFNSUF5Z0RTQU5vQTRnRHFBUElBK2dFQUFRWUJEQXJ6QUFNRXB3U29DdlVBQXdTbkJLa0s5QUFEQktjRXFncnlBQU1FcHdTckN2MEFBd1NvQktjSy93QURCS2dFcUFzQkFBTUVxQVNwQ3dBQUF3U29CS29LL2dBREJLZ0Vxd3NKQUFNRXFRU25Dd3NBQXdTcEJLZ0xEUUFEQktrRXFRc01BQU1FcVFTcUN3b0FBd1NwQktzTEF3QURCS29FcHdzRkFBTUVxZ1NvQ3djQUF3U3FCS2tMQmdBREJLb0VxZ3NFQUFNRXFnU3JDdmNBQXdTckJLY0srUUFEQktzRXFBcjdBQU1FcXdTcEN2b0FBd1NyQktvSytBQURCS3NFcXdyOEFBSUVxQXNJQUFJRXFRc0NBQUlFcWdyMkFBSUVxd0FjQURvQVFnQktBRklBV2dCaUFHb0FjZ0I2QUlJQWlnQ1NBSm9Bb2dDcUFMSUF1Z0RDQU1vQTBnRGFBT0lBNmdEeUFQb0JBQUVHQVF3TEt3QURCS2NFcHdzdEFBTUVwd1NvQ3k4QUF3U25CS2tMTGdBREJLY0VxZ3NzQUFNRXB3U3JDellBQXdTb0JLY0xPUUFEQktnRXFRczRBQU1FcUFTcUN6Y0FBd1NvQktzTFFRQURCS2tFcHd0REFBTUVxUVNvQzBVQUF3U3BCS2tMUkFBREJLa0VxZ3RDQUFNRXFRU3JDenNBQXdTcUJLY0xQUUFEQktvRXFBcy9BQU1FcWdTcEN6NEFBd1NxQktvTFBBQURCS29FcXdzeEFBTUVxd1NuQ3pNQUF3U3JCS2dMTlFBREJLc0VxUXMwQUFNRXF3U3FDeklBQXdTckJLc0xLZ0FDQktjTFFBQUNCS2tMT2dBQ0JLb0xNQUFDQktzQUhBQTZBRUlBU2dCU0FGb0FZZ0JxQUhJQWVnQ0NBSW9Ba2dDYUFLSUFxZ0N5QUxvQXdnREtBTklBMmdEaUFPb0E4Z0Q2QVFBQkJnRU1DMk1BQXdTbkJLY0xaUUFEQktjRXFBdG5BQU1FcHdTcEMyWUFBd1NuQktvTFpBQURCS2NFcXd0dkFBTUVxQVNuQzNFQUF3U29CS2dMY3dBREJLZ0VxUXR5QUFNRXFBU3FDM0FBQXdTb0JLc0xlZ0FEQktrRXB3dDhBQU1FcVFTb0MzMEFBd1NwQktvTGV3QURCS2tFcXd0MUFBTUVxZ1NuQzNjQUF3U3FCS2dMZVFBREJLb0VxUXQ0QUFNRXFnU3FDM1lBQXdTcUJLc0xhUUFEQktzRXB3dHJBQU1FcXdTb0MyMEFBd1NyQktrTGJBQURCS3NFcWd0cUFBTUVxd1NyQzJJQUFnU25DMjRBQWdTb0MzUUFBZ1NxQzJnQUFnU3JBQndBT2dCQ0FFb0FVZ0JhQUdJQWFnQnlBSG9BZ2dDS0FKSUFtZ0NpQUtvQXNnQzZBTUlBeWdEU0FOb0E0Z0RxQVBJQStnRUFBUVlCREF0SEFBTUVwd1NuQzBrQUF3U25CS2dMU3dBREJLY0VxUXRLQUFNRXB3U3FDMGdBQXdTbkJLc0xVd0FEQktnRXB3dFZBQU1FcUFTb0MxY0FBd1NvQktrTFZnQURCS2dFcWd0VUFBTUVxQVNyQzEwQUF3U3BCS2NMWHdBREJLa0VxQXRoQUFNRXFRU3BDMkFBQXdTcEJLb0xYZ0FEQktrRXF3dFlBQU1FcWdTbkMxb0FBd1NxQktnTFd3QURCS29FcVF0WkFBTUVxZ1NyQzAwQUF3U3JCS2NMVHdBREJLc0VxQXRSQUFNRXF3U3BDMUFBQXdTckJLb0xUZ0FEQktzRXF3dEdBQUlFcHd0U0FBSUVxQXRjQUFJRXFRdE1BQUlFcXdBY0FEb0FRZ0JLQUZJQVdnQmlBR29BY2dCNkFJSUFpZ0NTQUpvQW9nQ3FBTElBdWdEQ0FNb0EwZ0RhQU9JQTZnRHlBUG9CQUFFR0FRd0xEd0FEQktjRXB3c1JBQU1FcHdTb0N4TUFBd1NuQktrTEVnQURCS2NFcWdzUUFBTUVwd1NyQ3hrQUF3U29CS2NMR3dBREJLZ0VxQXNkQUFNRXFBU3BDeHdBQXdTb0JLb0xHZ0FEQktnRXF3c2xBQU1FcVFTbkN5Y0FBd1NwQktnTEtRQURCS2tFcVFzb0FBTUVxUVNxQ3lZQUF3U3BCS3NMSHdBREJLb0Vwd3NoQUFNRXFnU29DeU1BQXdTcUJLa0xJZ0FEQktvRXFnc2dBQU1FcWdTckN4UUFBd1NyQktjTEZRQURCS3NFcUFzWEFBTUVxd1NwQ3hZQUF3U3JCS29MRGdBQ0JLY0xHQUFDQktnTEpBQUNCS2tMSGdBQ0JLb0FBUUFFQ0NjQUFncnhBQUVBQkFncEFBSUs4UUFCQUFRSWxBQUNERWtBQVFBRUNLNEFBZ3hKQUFFQUJBakJBQUlNU1FBQkFBUUkrd0FDREVrQUFRQVZBQ1FBS0FBc0FESUFPQUJFQUVnQVRBQlNBRmdFcHdTb0JLa0VxZ1NyQ0NZSUtBaU5DS1VJdUFqekFBUUFBQUFCQUFnQUFRR1NBQU1BREFCdUFRQUFDQUFTQUJ3QUpnQXdBRG9BUkFCT0FGZ0hqZ0FFQzRnTGt3dUVCNDBBQkF1SUM1TUxnd2VRQUFRTGlBdVVDNFFIandBRUM0Z0xsQXVEQjRvQUJBdUxDNU1MaEFlSkFBUUxpd3VUQzRNSGpBQUVDNHNMbEF1RUI0c0FCQXVMQzVRTGd3QU1BQm9BSkFBdUFEZ0FRZ0JNQUZZQVlBQnFBSFFBZmdDSUI1WUFCQXVJQzVNTGhBZVZBQVFMaUF1VEM0TUhtQUFFQzRnTGxBdUVCNWNBQkF1SUM1UUxnd2VrQUFRTGdRdUlDNFFIb3dBRUM0RUxpQXVEQjZJQUJBdUJDNHNMaEFlaEFBUUxnUXVMQzRNSGtnQUVDNHNMa3d1RUI1RUFCQXVMQzVNTGd3ZVVBQVFMaXd1VUM0UUhrd0FFQzRzTGxBdURBQXdBR2dBa0FDNEFPQUJDQUV3QVZnQmdBR29BZEFCK0FJZ0huZ0FFQzRnTGt3dUVCNTBBQkF1SUM1TUxnd2VnQUFRTGlBdVVDNFFIbndBRUM0Z0xsQXVEQjZnQUJBdUJDNGdMaEFlbkFBUUxnUXVJQzRNSHBnQUVDNEVMaXd1RUI2VUFCQXVCQzRzTGd3ZWFBQVFMaXd1VEM0UUhtUUFFQzRzTGt3dURCNXdBQkF1TEM1UUxoQWViQUFRTGl3dVVDNE1BQVFBREFYMEJoUUdSQUFFQUFBQUJBQWdBQWdBS0FBSUlJZ2dqQUFFQUFnSHVBZkFBQVFBQUFBRUFDQUFDQUJZQUNBZ2JDSUFJSEFpQkNCMEloQWdlQ0lVQUFRQUlBTVlBeHdEYUFOc0E4QUR4QVRNQk5BQUJBQUFBQVFBSUFBSUFEZ0FFQVVnQlNRRWpBU1FBQVFBRUFSOEJJQU5nQTJFQUFRQUFBQUVBQ0FBQ0FBNEFCQWdmQ0lJSUlBaURBQUVBQkFEOEFQMEJCZ0VIQUFZQUFBQURBQXdBSUFBMEFBTUFBQUFDQUZJQVBBQUJBRklBQVFBQUFBNEFBd0FBQUFJQVhnQW9BQUVBWGdBQkFBQUFEd0FEQUFBQUFnQnFBQlFBQVFCcUFBRUFBQUFRQUFFQUFRQjVBQVFBQUFBQkFBZ0FBUUFJQUFFQURnQUJBQUVBVHdBQkFBUUJBUUFDQUhrQUJBQUFBQUVBQ0FBQkFBZ0FBUUFPQUFFQUFRQXZBQUVBQkFFQUFBSUFlUUFFQUFBQUFRQUlBQUVBQ0FBQkFBNEFBUUFCQ01jQUFRQUVDTXNBQWdCNUFBRUFBQUFCQUFnQUFRQUdCNmNBQVFBQkFjb0FBUUFBQUFFQUNBQUNBRElBRmdxT0NvOEsxQW90Q2k0S0x3b3dDakVLTWdvekNqUUtOUW8yQ3M0SjN3bmdDZUVKNGduakNlUUo1UW5tQUFFQUZnQUxBQXdBRGdBVEFCUUFGUUFXQUJjQUdBQVpBQm9BR3dBY0FDQUFTd0JPQUU4QVVBQlJBRk1BVmdCWEFBRUFBQUFCQUFnQUFnQWtBQThLbUFxWkN0VUhQUUI3QUhRQWRRSXFBaXNIUGdJc0FpMEhQd3JQQWhjQUFRQVBBQXNBREFBT0FCTUFGQUFWQUJZQUZ3QVlBQmtBR2dBYkFCd0FJQUJSQUFFQUFBQUJBQWdBQVFDMENmc0FBUUFBQUFFQUNBQUJBQVlDQkFBQkFBRUFFZ0FCQUFBQUFRQUlBQUVBa2dvRkFBWUFBQUFDQUFvQUlnQURBQUVBRWdBQkFFSUFBQUFCQUFBQUdRQUJBQUVDRmdBREFBRUFFZ0FCQUNvQUFBQUJBQUFBR2dBQ0FBRUtEZ29YQUFBQUFRQUFBQUVBQ0FBQkFBYi85Z0FDQUFFS0dBb2hBQUFBQmdBQUFBSUFDZ0FrQUFNQUFRQXNBQUVBRWdBQUFBRUFBQUFjQUFFQUFnQWtBRVFBQXdBQkFCSUFBUUFjQUFBQUFRQUFBQndBQWdBQkFCTUFIQUFBQUFFQUFnQXlBRklBQVFBQUFBRUFDQUFDQUE0QUJBQnNBSHdBYkFCOEFBRUFCQUFrQURJQVJBQlNBQUVBQUFBQkFBZ0FBUUFHLy9ZQUFnQUJDZmtLQWdBQUFBRUFBQUFCQUFnQUFnQXVBQlFKN3dud0NmRUo4Z256Q2ZRSjlRbjJDZmNKK0FuNUNmb0ord244Q2YwSi9nbi9DZ0FLQVFvQ0FBSUFBZ0FUQUJ3QUFBb0VDZzBBQ2dBQkFBQUFBUUFJQUFJQUxnQVVBQk1BRkFBVkFCWUFGd0FZQUJrQUdnQWJBQndLQkFvRkNnWUtCd29JQ2drS0Nnb0xDZ3dLRFFBQ0FBRUo3d29DQUFBQUFRQUFBQUVBQ0FBQ0FDNEFGQW9FQ2dVS0Jnb0hDZ2dLQ1FvS0Nnc0tEQW9OQ2ZrSitnbjdDZndKL1FuK0NmOEtBQW9CQ2dJQUFnQUNBQk1BSEFBQUNlOEorQUFLQUFFQUFBQUJBQWdBQWdFNkFKb0txUXQvQ3E0S3J3cXdDSTBJbWdpYkNLRUlwUWl2Q0xBSXRRaTRDTU1JeFFqSENNMEl6Z2pVQ09BSTRnampDT2NJN2dqekNQNEkvd2tFQ1FVSkNncW5DcWdLcFFxbUNxc01TZ3F4Q0pJSWpnaVFDSmNJa1FpVkNKZ0luZ2lzQ0tZSXFRaXFDTDRJdVFpN0NMd0lvZ2pUQ05rSTFRalhDTjRJMkFqY0NQZ0k5QWoyQ1BjSkJnamhDSk1JandpVUNKd0lud2lkQ0tNSXBBaXRDS2NJcXdpdUNLZ0lzZ2l4Q0xNSXR3aTJDTUlJd0FpNkNNRUl2UWkvQ01RSXhnaklDTW9JeVFqTENNd0l6d2pSQ05BSTBnamJDTllJMmdqZkNPUUk1Z2psQ09nSTZ3anFDT2tJOGdqd0NPOEkvUWo2Q1BVSS9BajVDUHNKQVFrSENRZ0pDd2tOQ1F3SWxnaVpDTjBJN0FrRENRQUpBZ2tKQ3F3S3JRcXFDUEVJN1F3K0REOE1RQXhCREVJTVF3eEVERVVNUmd4SERFZ01TUUFCQUpvQUJBQUpBQXNBREFBaUFDUUFKUUFtQUNjQUtBQXBBQ29BS3dBc0FDMEFMZ0F2QURBQU1RQXlBRE1BTkFBMUFEWUFOd0E0QURrQU9nQTdBRHdBUFFBK0FFQUFYZ0JnQUdNQWNRQ0JBSUlBZ3dDRUFJVUFoZ0NIQUlnQWlRQ0tBSXNBakFDTkFJNEFqd0NRQUpFQWtnQ1RBSlFBbFFDV0FKY0FtQUNhQUpzQW5BQ2RBSjRBbndDZ0FNSUF4QURHQU1nQXlnRE9BTkFBMGdEVUFOWUEyQURhQU53QTNnRGdBT1FBNWdEb0FPb0E3QUR1QVBBQThnRHpBUFVBOXdENkFQd0EvZ0VBQVFJQkJBRUdBUWdCQ3dFTkFROEJFUUVUQVJVQkZ3RVpBUnNCSFFFZkFTRUJJd0VsQVNjQktRRXJBUzBCTHdFeEFUTUJOUUUzQVRrQk9nRThBVDRCUWdGRUFVWUJTQUg1QWZzQi9RSC9BaE1DRkFJVkEyQUgyQXVCQzRJTGd3dUVDNFVMaGd1SEM0Z0xpUXVLQzRzTHB3QUJBQUFBQVFBSUFBSUJQQUNiQ3FrTGZ3cXVDcThLc0FxbkNxZ0lqUWlhQ0pzSW9RaWxDSzhJc0FpMUNMZ0l3d2pGQ01jSXpRak9DTlFJNEFqaUNPTUk1d2p1Q1BNSS9nai9DUVFKQlFrS0NxVUtwZ3FyREVvS3NRanRDSklJamdpUUNKY0lrUWlWQ0pnSW5naXNDS1lJcVFpcUNMNEl1UWk3Q0x3SW9nalRDTmtJMVFqWENONEkyQWpjQ1BnSTlBajJDUGNKQmdqaENRZ0lrd2lQQ0pRSW5BaWZDS0FJblFpakNLUUlyUWluQ0tzSXJnaW9DTElJc1FpMENMTUl0d2kyQ01JSXdBaTZDTUVJdndqRUNNWUl5QWpLQ01rSXl3ak1DTThJMFFqUUNOSUkyd2pXQ05vSTN3amtDT1lJNVFqb0NPc0k2Z2pwQ1BJSThBanZDUDBJK2dqMUNQd0krUWo3Q1FFSkJ3a0xDUTBKREFpV0NKa0kzUWpzQ1FNSkFBa0NDUWtLckFxdENxb0k4UXcrREQ4TVFBeEJERUlNUXd4RURFVU1SZ3hIREVnTVNRQUJBSnNBQkFBSkFBc0FEQUFpQUQ0QVFBQkVBRVVBUmdCSEFFZ0FTUUJLQUVzQVRBQk5BRTRBVHdCUUFGRUFVZ0JUQUZRQVZRQldBRmNBV0FCWkFGb0FXd0JjQUYwQVhnQmdBR01BY1FDQkFLRUFvZ0NqQUtRQXBRQ21BS2NBcUFDcEFLb0Fxd0NzQUswQXJnQ3ZBTEFBc1FDeUFMTUF0QUMxQUxZQXR3QzRBTG9BdXdDOEFMMEF2Z0MvQU1BQXdRRERBTVVBeHdESkFNc0F6UURQQU5FQTB3RFZBTmNBMlFEYkFOMEEzd0RoQU9NQTVRRG5BT2tBNndEdEFPOEE4UUQwQVBZQStBRDdBUDBBL3dFQkFRTUJCUUVIQVFrQkRBRU9BUkFCRWdFVUFSWUJHQUVhQVJ3QkhnRWdBU0lCSkFFbUFTZ0JLZ0VzQVM0Qk1BRXlBVFFCTmdFNEFUc0JQUUUvQVVNQlJRRkhBVWtCK2dIOEFmNENBQUlUQWhRQ0ZRTmhDNEVMZ2d1REM0UUxoUXVHQzRjTGlBdUpDNG9MaXd1bkFBRUFBQUFCQUFnQUFnQkNBQjRKN3dud0NmRUo4Z256Q2ZRSjlRbjJDZmNKK0FudkNmQUo4UW55Q2ZNSjlBbjFDZllKOXduNENlOEo4QW54Q2ZJSjh3bjBDZlVKOWduM0NmZ0FBZ0FEQUJNQUhBQUFDZmtLQWdBS0NnUUtEUUFVQUFFQUFBQUJBQWdBQVFBR0Fid0FBUUFCQ3RjQUFRQUFBQUVBQ0FBQkFBWUo4QUFCQUFFQUV3QUVBbEVCOUFBRkFBQUNpZ0pZQUFBQVN3S0tBbGdBQUFGZUFESUJRZ0FBQWdzR0FnUUZCQUlDQk9BQUF2OUFBQUFmQ0FBQUtRQVFBQUJIVDA5SEFVQUFBUC85QkMzKzJ3QUFCQzBCSlFBQUFBQUFBQUFBQWhnQ3lnQUFBQ0FBQkFBQUFBSUFBQUFEQUFBQUZBQURBQUVBQUFBVUFBUUtHZ0FBQVFvQkFBQUhBQW9BQUFBTkFINEJNQUV4QVdFQll3Ri9BWkVCa2dHZkFhRUJyZ0d3QWR3QjNRSHZBZkFCK1FIL0FoY0NHd0kyQWpjQ1dRSmRBcnNDdkFMRkFza0Mxd0xlQXZJQzh3TC9Bd3dESlFNbUEwRURSUU5pQTNjRGZnTi9BNG9EakFPaEE4NEQxZ1BoQS84RUFBUU1CQTBFVHdSUUJGd0VYd1NDQkpFRkV3VWRCU2NGTHhxOUdyNGNpQjIvSGVZZDlSNEJIajBlUHg1L0hvVWVteDZmSHZFZS94OFZIeDBmUlI5TkgxY2ZXUjliSDEwZmZSKzBIOFFmMHgvYkgrOGY5Qi8rSUFzZ1pDQnhJSDhnaVNDT0lKUWduQ0NzSUxVZ3Z5RHdJVjhoaENHSkxHMHNmeTMvTGtTbWM2WjlwcCtuRnFjaHA2Nm50S2UzcC9xbi82a3VxMXFyWmZzRy9nRCtMLzcvLy8zLy93QUFBQUFBRFFBZ0FLQUJNUUV5QVdJQlpBR0FBWklCa3dHZ0FhSUJyd0d4QWQwQjNnSHdBZkVCK2dJQUFoZ0NIQUkzQWpnQ1dnSmVBcndDdlFMR0Fzb0MyQUxmQXZNQzlBTUFBdzBESmdNbkEwSURSZ05qQTNvRGZ3T0VBNHdEamdPakE4OEQxd1B3QkFBRUFRUU5CQTRFVUFSUkJGMEVZQVNEQkpJRkZBVWVCU2dhc0JxK0hJQWRBQjNBSGVjZCt4NENIajRlUUI2QUhvWWVuQjZnSHZJZkFCOFlIeUFmU0I5UUgxa2ZXeDlkSDE4ZmdCKzJIOFlmMWgvZEgvSWY5aUFBSUF3Z1ppQjBJSUFnaWlDUUlKVWdvQ0N0SUxZZzhDRUFJWVFoaVN4Z0xHNHQ0QzRBcGtDbWRLWitwd0NuRjZjaXA3Q250YWYzcC91cExxc3dxMXY3QVA0QS9pRCsvLy84Ly84QUFmLzEvK1Avd2diNS84RUIvdi9CQWVML3J3SGhBS2NCM3dDYUFkMEdTd0hjQUUwQjIvOUlBZFVBQUFIUkJmVUIwQUFBQWMzL2dnSE1BQUFCeVFBQUFjTC9Vd0hCQUFBSWdQOENDSDhKQ1FoN0FBQUJTZ1g3L2MvOXp2M04vY3dBQUFEMkFPaitUUDJhL2tEOW1mMysvWmdBQVAzd0FBRDk2UUFBQXF3QUFQRkM4WC9zdytmc0FBRHVHUUFBNTZya0JPZW80M25ub2dBQTVGMEFBT2MrNXp6bk91YzQ1emJuTmVjMDV6UG5NdWN3NXkvbkx1Y3M1eXZuS2VjbzRpNEFBQUFBQUFEcHJRQUE1ckRwU2dBQTVwOEFBT1ptQUFEbDJPaWEydjBBQU40eUFBQUFBR1hoQUFCbGwyQmNBQUJnWlFBQUFBQmhGbUdFWG9NQUFBQUFEaklBQUFNN0FqOEFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRGdBQUFBQUFBQUFPQUFBQUFBQUFBQTRBQUFBT1FBQUFBQUFBQUE2Z0FBQUFBQUFBQUFBQUFBK0FBQUFBQUFBQUFBQUFBQUFBRVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRVNBQUFCRkFBQUFTNEFBQUUrQUFBQUFBQUFBQUFCUkFBQUFZNEFBQUFBQUFBQUFBQUFBWkFBQUFHVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHTUFqd0NVZ0FBQW1ZQUFBQUFBbW9BQUFLQUFBQUNrQUFBQUFBQUFBTklBQUFEYUFQd0FBQUVWQUFBQUFBRWtnQUFCYWdGckFBQUFBQUFBQVdzQmNBQUFBWEtBQUFBQUFBQUFVZ0JTUUVqQVNRSUtRUXFDQ1lJSndGS0FVc0VrZ0ZNQVUwQlRnRlBBVkFCVVFGU0N2RUxnd3VFQzRZTGlndUxDNHdMaUF1Q0M0RUV3UXVKQzRVTGh3eHJESElNZHd4K0RJUU1jQXh4REhZTWZBeUFESU1NaFF5R0NYWUpld2wzQ1h3RXdnVERDWGdKZlFsNUJNa0NQd0pBQk1vRXl3VE1Ba0VDVHdIMUFmWU1Ud3hRREZFTVVneFRBbk1DZEFKMUFuWUNkd0o0QW5rQ2VnSDNBZmdIeEFmRkI4WUh4d2ZJQjhrRTZBVHBCT29FNndrV0NUOEpGd2xBQ1JnSlFRa1pDVUlMNXd2bUMvQUw4UXZzQytvTDdndmZDK2tMM2d4L0MrSUw3UXZvQys4TVBBdnJERG9NT3d4MERHd01iUXh1REc4TWVBeHpESFVNWmd4NURIb01ad3hvREgwTWFReHFESUVNZ2d4N0RJY01Ed3dRREJFTDRBdmhBa1FDUlFndUNDOEgyQWdrQWY4Q0FBTlBBMUFEVVFOU0ExTURWQWZXQ0MwSDJnaCtCOXNJZndjbkJ5Z0hLUWNxQ3BzS25BY3JBZ0VDQWdJREJ5d0NCQUlGQWdZQ0J3SUlBZ2tDQ2dJTEJ5MENEQUlOQWc0S2hRcGJDb0VDRHdwUENyVUt0Z2N1Qnk4SE1BY3hCeklITXdJUUN0TUNFUUlTQnpRS29RcWdDcU1LUEFJVEFoUUtaZ0lWQ3VRSE5RcUVDajRLUFFvM0NsQUNGZ282Q2pzS1h3cGdDa2dLZWdwb0NqZ0tPUXBhQ21vS1B3cUFDc3dLZFFwVENrc0tkZ3FpQ2s0S1NncUNDazBLUWdwOEJ6WUt0QXEvQ3JjS3VncTVDcmdLdXdxOENyMEt2Z2MzQnpnSE9RYzZCenNIUEFjOUNRNENLZ0lyQno0Q0xBSXRCejhLMVFyU0NzOEttQXFaQWhjSzFBclJDczRLamdxUEIwVUhSZ2RIQWhnQ0dRZElCMGtDR2dkS0Iwc0t3d05WQWhzS3dBckVDc1VIVlFmVkNzWUt3UXJDQ3NjTWxBcmNDdDBKamdyZkN1QUNIQXJlQ1pjSzZ3cmlDYXNKaHdtQUNZOEpwd21vQ1lnSmdRbUpBaDBLNVFtUUFoNEhWd3J3Q1pFSmtnbUxDWUlKa3dyb0N1b0s3QXJ1QWg4Szd3bVVDdVlDSUFySUNZTUxnQW1ZQ1kwSmhnbC9BaUVKcVFtWkNab0pqQW1iQ2FvS3lRckxDdEFLelFyakN0c0s0UW1tQ2FVSmxnbUtDdGNLMkFyWkN0WUsyZ21WQ2FFSm9nbWpDYVFLNlFyS0N1Y0hXQWRaQ3UwS0tnb3JDaXdIV2dkYkNpUUtKUW9tQ2ljS0tBb3BBaUlDSXdJa0FpVUtJZ2ZYQjlrTWlnZHJCMndIYlFkdUIyOEhjQWR4Q0NVSU1nZ3dDQ0VJTVF5SURJc01qQXBzQ21zS1Z3cHdDbFFLYlFwa0NtTUtSUXBZQ25FS1pRcFdDbThLUndwZUNrd0tad3BSQ2tNS1JncU1Da1FIY2dwU0NsMEttZ3A1Q2xVS2JncDNDbmdLV1FweUNwSUtrd3FRQ3BFS2xncVhDcFFLbFFxRENsd0tkQXBKQ21rSjdncHpDbzBLZlFwaUNtRUtmd3BBQ2tFS2ZncDdDcDRLblFxR0NvY0tpQXFKQ3A4S2lncWtESlVNbGdrYUNVd0pHd2xOQ1J3SlRna2RDVThKSGdsUUNSOEpVUWtnQ1ZJSklRbFRDU0lKVkFrakNWVUpKQWxXQ1NVSlZ3a21DVmdKSndsWkNTZ0pXZ2twQ1ZzSktnbGNDU3NKWFFrc0NWNEpMUWxmQ1M0SllBa3ZDV0VKTUFsaUNYSU1WQXhqREdRTVpRcUxDck1KY3dreENXTUpNZ2xrQ1RNSlpRazBDV1lKTlFsbkNUWUphQWszQ1drSk9BbHFDVGtKYXdrNkNXd0pPd2x0Q1R3SmJnazlDVzhKUGdsd0NYUUpkUXhmREdBSDNBZzlCOTBJUGdmZUNEOEgzd2hBQitBSVFRZmhDRUlINGdoRENFUUlSUWZqQ0VZSDVBaEhCK1VJU0FmbUNFa0g1d2hLQitnSVN3ZnBDRXdINmdoTkIrc0lUZ2ZzQ0U4SDdRaFFCKzRJVVFmdkNGSUg4QWhUQi9FSVZBZnlDRlVIOHdoV0IvUUlWd2YxQ0ZnSDlnaFpCL2NJV2dmNENGc0grUWhjQi9vSVhRbUVDWVVIK3doZUIvd0lYd2Y5Q0dBSC9naGhCLzhJWWdnQUNHTUo1d2hrQ0dVSVpnaG5DR2dJYVFocUNHc0lBUWhzQ0FJSWJRZ0RDQVFJYmdnRkNHOElCZ2h3Q0FjSWNRZ0lDSElIZmdkL0I0QUhnUWVDQ0FrSWN3a1BDQW9JZEFnTENIVUpyQW10Q1p3SnJnbWRDYThKbmdtd0NaOEpzUW1nQ2JJSURBaDJDQTBJZHdnT0NIZ0lEd2g1Q0JBSWVnZ1JDQklJRXdnVURJNElld2dhQ0h3SkVBbm9DZWtJZlF0K0Nlb0o2d25zQ2UwTWp3eVFESkVNa2duZURJMEloZ2lKQ0lvSWh3aUlDSXNJakFlRkI0WUhod2VJQytRTDVRdmpERE1NTkF3MUREWU1Od3c0RERrTVlReGlBQUFBQWdCZUFBQUIrUUxLQUFNQUJ3QXFRQ2NBQUFBREFnQURaUUFDQVFFQ1ZRQUNBZ0ZkQkFFQkFnRk5BQUFIQmdVRUFBTUFBeEVGQmhVck14RWhFU1VoRVNGZUFadittQUUxL3NzQ3l2MDJNd0prQUFBQUFnQkUvL0lBelFMS0FBTUFEd0FmUUJ3QUFBQUJYUUFCQVlKTEFBSUNBMThBQXdPTEEwd2tJeEVRQkEwWUt6Y2pBek1ETkRZek1oWVZGQVlqSWlhdlN4bDloQ2dkR3lrcEd4MG8xQUgyL1hFbklDQW5KeUlpQUFJQVFRSElBV29DeWdBREFBY0FKRUFoQWdFQUFBRmRCUU1FQXdFQmdnQk1CQVFBQUFRSEJBY0dCUUFEQUFNUkJnMFZLeE1ESXdNaEF5TURyQlJERkFFcEZFTVVBc3IrL2dFQy92NEJBZ0FBQWdBWUFBQUNiUUxLQUJzQUh3QkhRRVFNQ2dJSUR4QU5Bd2NBQ0FkbURnWUNBQVVEQWdFQ0FBRmxDd0VKQ1lKTEJBRUNBb01DVEFBQUh4NGRIQUFiQUJzYUdSZ1hGaFVVRXhFUkVSRVJFUkVSRVJFTkhTc0JCek1WSXdjak55TUhJemNqTlRNM0l6VXpOek1ITXpjekJ6TVZCVE0zSXdIaUhJV1VLRklvZ1NaUUpYdUtIWUtRSjFNb2d5ZFFLSHoraG9FZGdRR3RrazNPenM3T1RaSk4wTkRRMEUyU2tnQUFBd0E0LzhZQ0NRTDNBQ0lBS1FBd0FFSkFQekFxSkNNYUdSWVZDUVVLQVFJaEJBSUFBUUpLQkFFQ0F3RURBZ0YrQUFFQUFBVUJBR2dHQVFVRkExMEFBd09FQlV3QUFBQWlBQ0lSRVJZVkVRY05HU3NYTlNZbUp6VVdGaGMxSmlZMU5EWTNOVE1WRmhZWEJ5WW1KeFVlQWhVVUJnY1ZBelVHQmhVVUZoTTJOalUwSmlmOU8yWWpKR3cwYUYxc1dVRTJXaWdoSTA0bVBsd3hhR05CTHk0cGRUTXdLemc2YUFJU0VHSVJHd0c3SUZOSVNsWUdWRk1DRkJGV0RSUUR1Qk10UVRWSFdncHNBZVNmQkNZZElpZiswZ1luSHlBa0VBQUFCUUFzLy9ZREtBTFVBQXNBRHdBWEFDTUFLd0NaUzdBWlVGaEFMQTBCQmc0QkNBVUdDR2dBQlFBQkNRVUJad3dCQkFRQVh3c0RDZ01BQUlwTEFBa0pBbDhIQVFJQ2d3Sk1HMEEwRFFFR0RnRUlCUVlJYUFBRkFBRUpCUUZuQ3dFREE0SkxEQUVFQkFCZkNnRUFBSXBMQUFJQ2cwc0FDUWtIWHdBSEI0c0hURmxBS3lVa0dSZ1JFQXdNQVFBcEp5UXJKU3NmSFJnakdTTVZFeEFYRVJjTUR3d1BEZzBIQlFBTEFRc1BEUlFyRXpJV0ZSUUdJeUltTlRRMkJRRWpBUVVpRlJRek1qVTBCVElXRlJRR0l5SW1OVFEyRnlJVkZETXlOVFRFVEZCTFVVcE9TQUlvL25SWkFZeitnVUZCUlFHRFRGQk1VRXRPU1ZCQlFVUUMxSFZxYW5kM2FtcDFDdjAyQXNwQWxaZVhsZFIxYW1wM2QycHFkVXFWbHBhVkFBQUFBd0F4Ly9ZQzRBTFZBQjhBS3dBMUFIMUFFaVlhQmdNQkJEVU9Cd01GQVJFQkFnVURTa3V3R1ZCWVFDTUhBUVFFQUY4R0FRQUFpa3NBQVFFQ1h3TUJBZ0tEU3dBRkJRSmZBd0VDQW9NQ1RCdEFJUWNCQkFRQVh3WUJBQUNLU3dBQkFRSmRBQUlDZzBzQUJRVURYd0FEQTRzRFRGbEFGeUVnQVFBek1TQXJJU3NWRXhBUEN3b0FId0VmQ0EwVUt3RXlGaFVVQmdjWE5qWTNNd1lHQnhjakp3WUdJeUltTlRRMk55WW1OVFEyRnlJR0ZSUVdGelkyTlRRbUF3WUdGUlFXTXpJMk53RXlVbU5TUGJFWUlBdHNEek1va29wT0xuRk5iWDVQUkNJd2FGVWxNaUlmTnpFdlR5ODBSem8zVVIwQzFWRktRRm9rcXg5UUxUNXpMbzVMSmk5cFhVeGRKeVpRTkVwVlZTWW1JVGtoSHpnbUlpait5eDA5THpNOUloa0FBUUJCQWNnQXJBTEtBQU1BR1VBV0FBQUFBVjBDQVFFQmdnQk1BQUFBQXdBREVRTU5GU3NUQXlNRHJCUkRGQUxLL3Y0QkFnQUFBQUFCQUNqL1lnRWFBc29BRFFBVFFCQUFBUUVBWFFBQUFJSUJUQllUQWcwV0t4TTBOamN6QmdZVkZCWVhJeVltS0VkTVgwWkhSMFZlVEVjQkVucmpXMTdpZDNUZ1hWamZBQUFCQUI3L1lnRVFBc29BRFFBVFFCQUFBQUFCWFFBQkFZSUFUQllUQWcwV0t3RVVCZ2NqTmpZMU5DWW5NeFlXQVJCSFRGNUVSMGRGWDB4SEFSSjUzMWhkNEhSMzRsNWI0d0FCQUNZQk1RSCtBdmdBRGdBalFDQU5EQXNLQ1FnSEJnVUVBd0lCRFFCSEFRRUFBSVFBVEFBQUFBNEFEZ0lORkNzQkJ6Y1hCeGNISndjbk55YzNGeWNCUmhTOUQ3TjBYVk5LWUhLeEVMb1ZBdmk4TldVUG1qS29xREthRDJVMXZBQUJBREFBYndJS0FsTUFDd0FtUUNNQUJRQUNCVlVFQVFBREFRRUNBQUZsQUFVRkFsMEFBZ1VDVFJFUkVSRVJFQVlOR2lzQk14VWpGU00xSXpVek5UTUJSc1RFVXNURVVnR0pVY25KVWNvQUFBRUFKdjkvQU1rQWRBQUlBQjlBSEFJQkFRQUFBVlVDQVFFQkFGMEFBQUVBVFFBQUFBZ0FDQlFERFJVck54Y0dCZ2NqTmpZM3dnY05NQmxORGh3SWRBczFmelk2aHpRQUFBRUFKUURmQVIwQk9RQURBQjVBR3dBQUFRRUFWUUFBQUFGZEFnRUJBQUZOQUFBQUF3QURFUU1ORlNzM05UTVZKZmpmV2xvQUFBQUFBUUJFLy9JQXpRQ0NBQXNBRTBBUUFBQUFBVjhBQVFHTEFVd2tJZ0lORmlzM05EWXpNaFlWRkFZaklpWkVLQndjS1NrY0hDZzdKeUFnSnljaUlnQUFBQUVBQ1FBQUFYZ0N5Z0FEQUJsQUZnSUJBUUdDU3dBQUFJTUFUQUFBQUFNQUF4RUREUlVyQVFFakFRRjQvdlpsQVFvQ3l2MDJBc29BQWdBdC8vWUNEd0xWQUEwQUdRQWZRQndBQXdNQlh3QUJBWXBMQUFJQ0FGOEFBQUNMQUV3a0pDVWpCQTBZS3dFVUJnWWpJaVkxTkRZMk16SVdCUlFXTXpJMk5UUW1JeUlHQWc4d2ExZDdkUzlxVjNwNC9vZzhTa2srUGtsS1BBRm1kS1JZdzYxMHBGZkJyb3lMaW8yTGk0c0FBQUFCQUZBQUFBRjBBc29BREFBYlFCZ0tDUVVEQUFFQlNnQUJBWUpMQUFBQWd3Qk1HaEFDRFJZcklTTVJORFkzQmdZSEJ5YzNNd0YwYVFJQ0RSd1NUamJNV0FIYUpqMGREaGdQUDBTZ0FBQUFBQUVBTGdBQUFnNEMxQUFiQUMxQUtnNEJBUUlOQVFNQkFnRUFBd05LQUFFQkFsOEFBZ0tLU3dBREF3QmRBQUFBZ3dCTUp5VW9FQVFOR0NzaElUVTNQZ0kxTkNZaklnWUhKelkyTXpJV0ZSUUdCZ2NIRlNFQ0R2NGd1RFpJSkQ4ME1VNHFPU3R1VEdWMkxsUTVoUUZiVXJzM1VVc3NOamdrSWtja05XaFhPV0pnTm9FRkFBRUFLLy8yQWdnQzFBQXFBRDlBUENVQkJBVWtBUU1FQXdFQ0F3OEJBUUlPQVFBQkJVb0FBd0FDQVFNQ1p3QUVCQVZmQUFVRmlrc0FBUUVBWHdBQUFJc0FUQ1VrSVNRbEtnWU5HaXNCRkFZSEZSWVdGUlFHQmlNaUppYzFGaFl6TWpZMU5DWWpJelV6TWpZMU5DWWpJZ1lISnpZMk16SVdBZkpTUTFWV08zdGdPV0lzTFdndVhFOWdZRUZDVzFJL096ZFJJelFvY0VwdmN3SWxTVllPQkFwWVJqNWhOeElWWUJjWVJUNDhPRmRFTnpBMUl4ZEpIaXRoQUFBQUFnQVVBQUFDS1FMTkFBb0FGQUF4UUM0UEFRUURCZ0VBQkFKS0JnVUNCQUlCQUFFRUFHVUFBd09DU3dBQkFZTUJUQXNMQ3hRTEZCRVNFUkVRQncwWkt5VWpGU00xSVRVQk14RXpJelUwTmpjakJnWUhBd0lwWTJmK3RRRkphV1BLQXdJRUNCZ0x2WjZlbmxRQjIvNHJ3aTlUSEJRcUVQN3VBQUFBQUFFQU8vLzJBZ1lDeWdBZUFFUkFRUndYQWdNQUZnb0NBZ01KQVFFQ0Ewb0dBUUFBQXdJQUEyY0FCUVVFWFFBRUJJSkxBQUlDQVY4QUFRR0xBVXdCQUJzYUdSZ1VFZzRNQndVQUhnRWVCdzBVS3dFeUZoVVVCaU1pSmljMUZoWXpNalkxTkNZaklnWUhKeE1oRlNFSE5qWUJHbXFDam9JNFlTSWtaeTlMV2xGWEhFVVZNUnNCYi83dEVCRTBBYnR1Wm5HQUZCTmhGUnBGU1VGRkNnVWRBVmxldXdNSEFBQUFBQUlBTWYvMkFoRUMwd0FmQUMwQVBrQTdDUUVCQUFvQkFnRVNBUVFGQTBvQUFnQUZCQUlGWndBQkFRQmZBQUFBaWtzR0FRUUVBMThBQXdPTEEwd2hJQ2NsSUMwaExTUW5KRFVIRFJnckV6UStBek15RmhjVkppWWpJZzRDQnpNMk5qTXlGaFVVQmlNaUppWVhNalkxTkNZaklnWUdGUlFXRmpFUksweDFVeFUxRVJNdEZrVmFOQmdEQmhaUVAxMXhmV3RGY1VMM09VZy9QeXRBSkNBK0FUQStlR3RUTHdNRldRWUdLa3BpT0NNeGMybHdna1NMZDB0UFAwb2tPQjBvVHpNQUFBQUJBQ2NBQUFJUUFzb0FCZ0FsUUNJRkFRQUJBVW9BQUFBQlhRQUJBWUpMQXdFQ0FvTUNUQUFBQUFZQUJoRVJCQTBXS3pNQklUVWhGUUdCQVIzK2lRSHAvdVFDYkY1TS9ZSUFBQUFBQXdBdC8vWUNEZ0xVQUJ3QUtBQTFBRFpBTXpNakZnY0VBd0lCU2dVQkFnSUFYd1FCQUFDS1N3QURBd0ZmQUFFQml3Rk1IaDBCQUMwckhTZ2VLQkFPQUJ3QkhBWU5GQ3NCTWhZV0ZSUUdCeDRDRlJRR0JpTWlKalUwTmpZM0ppWTFORFkyRnlJR0ZSUVdGelkyTlRRbUF4UVdNekkyTlRRbUp5Y0dCZ0VkUDJJNVRqY3FSeXM4YTBoMGZpaENKelJHT21JOE1rQkZNUzVDUUwxRVJrUkhUam9QUFVFQzFDZE5PRUJTSEJVMVJ6QThWekJsV3pCSk5CSWVWVUUzVFNkVE1TMHlOeFlVT2pFdE1mNDNNRUEvTWpGQUdRWWFSUUFBQWdBdC8vWUNEUUxUQUI4QUxRQS9RRHdLQVFFQ0NRRUFBUUpLRWdFRkFVa0FCUUFDQVFVQ1p3WUJCQVFEWHdBREE0cExBQUVCQUY4QUFBQ0xBRXdoSUNjbElDMGhMU1FuSlNVSERSZ3JBUlFPQXlNaUppYzFGaFl6TWo0Q055TUdCaU1pSmpVME5qTXlGaFluSWdZVkZCWXpNalkyTlRRbUpnSU5FU3RNZGxNVU54RVRMeFpGV2pRWUFnWVdUa0pjY0g1cVJYRkM5emxJUGo4c1FTTWZQd0daUFhsclV5OEVCVmtHQmlsS1lUZ2lNWE5vY1lKRWkzaE1Ua0JLSkRnZUtFNDBBQUlBUlAveUFNMENLQUFMQUJjQUgwQWNBQUVCQUY4QUFBQ05Td0FDQWdOZkFBTURpd05NSkNRa0lnUU5HQ3NUTkRZek1oWVZGQVlqSWlZUk5EWXpNaFlWRkFZaklpWkVLQndjS1NrY0hDZ29IQndwS1J3Y0tBSGZLU0FnS1NZaUl2NkNKeUFnSnljaUlnQUFBQUlBSC85L0FNd0NLQUFMQUJRQUlrQWZCQUVEQUFJREFtRUFBUUVBWHdBQUFJMEJUQXdNREJRTUZCWWtJZ1VORnlzVE5EWXpNaFlWRkFZaklpWVRGd1lHQnlNMk5qZENLQjBkS0NnZEhTaDZCdzB4R0U0T0hRY0IzeWtnSUNrbUlpTCt1d3MxZnpZNWlEUUFBQUVBTUFCdkFnc0NaUUFHQUFhekF3QUJNQ3NsSlRVbEZRVUZBZ3YrSlFIYi9wUUJiRy9ST08xWnJKZ0FBZ0EwQU5VQ0JnSHJBQU1BQndBdlFDd0FBQVFCQVFJQUFXVUFBZ01EQWxVQUFnSURYUVVCQXdJRFRRUUVBQUFFQndRSEJnVUFBd0FERVFZTkZTc1ROU0VWQlRVaEZUUUIwdjR1QWRJQm1sRlJ4VkpTQUFBQUFBRUFNQUJ2QWdzQ1pRQUdBQWF6QmdNQk1DczNKU1UxQlJVRk1BRnMvcFFCMi80bHlKaXNXZTA0MFFBQUFnQUovL0lCcFFMVUFCNEFLZ0E2UURjUEFRQUJEZ0VDQUFKS0JRRUNBQU1BQWdOK0FBQUFBVjhBQVFHS1N3QURBd1JmQUFRRWl3Uk1BQUFwSnlNaEFCNEFIaVVxQmcwV0t6YzFORFkzUGdJMU5DWWpJZ1lISnpZMk16SVdGUlFHQmdjT0FoVVZCelEyTXpJV0ZSUUdJeUltaXlVeEpDa1NPalV2VGlVbUsyWStZbXNjTlNRZ0lneHNKeDRjS0NnY0hpZlVIVGRIS0IwcEtSc3JMaGtTVUJjZVlGQXNQalFlR2lZbUdoU1pKeUFnSnljaUlnQUFBQUlBT1Arb0Ewc0N5Z0EvQUUwQWUwQVRGZ0VKQWtjSUFnTUpMd0VGQURBQkJnVUVTa3V3SEZCWVFDWUlBUU1CQVFBRkF3Qm5BQVVBQmdVR1l3QUVCQWRmQUFjSGdrc0FDUWtDWHdBQ0FvVUpUQnRBSkFBQ0FBa0RBZ2xuQ0FFREFRRUFCUU1BWndBRkFBWUZCbU1BQkFRSFh3QUhCNElFVEZsQURrdEpKU2NsSlNZb0pTVWtDZzBkS3dFVURnSWpJaVluSXdZR0l5SW1OVFEyTmpNeUZoY0hCaFFWRkJZek1qWTJOVFFtSmlNaUJnWVZGQll6TWpZM0ZRWUdJeUltSmpVMFBnSXpNaFlXQlJRV016STJOemNtSmlNaUJnWURTeFlzUWl3ck5nY0dFMFEwVUZjMllrTXRXUm9LQVNFVkhTY1ZTWDlSYjVsUG1aQThjeTRzYjBGNHFsbzdicDFqYWFSZC9nZ3hLall2QkFZTkpCUXdPeG9CWlM1WVNDc3ZJU0l1WjFWQ1pqb1BDc3NRRVFNeEh6RlJNbHArUWx5Z2FKQ2FHeEZNRXhkWXBYUmRuWFpCVnFDdVBqWlFRWGdFQlM1SUFBQUNBQUFBQUFLTkFzMEFCd0FSQURGQUxnMEJCQUlCU2dZQkJBQUFBUVFBWmdBQ0FvSkxCUU1DQVFHREFVd0lDQUFBQ0JFSUVRQUhBQWNSRVJFSERSY3JJU2NoQnlNQk13RURKeTRDSndZR0J3Y0NIRXorN0V4d0FROXdBUTdiU0FRT0RnUUlGQVpJenM0Q3pmMHpBU3pKQ3l3d0R4OUdFY2tBQUFBQUF3QmZBQUFDV3dMS0FCQUFHUUFpQURWQU1nY0JCUUlCU2dBQ0JnRUZCQUlGWlFBREF3QmRBQUFBZ2tzQUJBUUJYUUFCQVlNQlRCb2FHaUlhSVNJa0lTd2dCdzBaS3hNek1oWVZGQVlIRlI0Q0ZSUUdJeUVUTXpJMk5UUW1JeU1SRlRNeU5qVTBKaU5mMFlpTlF6NHFSU2lJZFA4QWJIZFVQMDFTYTROV1JVZGJBc3BRWWo1VUN3VUlKVVU0WW1vQm9EWTFOUy8rMmU1RU9ETS9BQUFBQUFFQVBQLzJBbGtDMUFBYkFEZEFOQmdCQUFNWkNRSUJBQW9CQWdFRFNnUUJBQUFEWHdBREE0cExBQUVCQWw4QUFnS0xBa3dCQUJZVURnd0hCUUFiQVJzRkRSUXJBU0lHRlJRV016STJOeFVHQmlNaUppWTFORFkyTXpJV0Z3Y21KZ0dRYW5sd2NpNVZMQ3BZT202UlIwK1lialpuS3lnalVBSjNrNEIva2hFT1hSQVBXNlZ2YktWZUZ4VmFFQmtBQUFJQVh3QUFBcUVDeWdBSkFCRUFIMEFjQUFJQ0FWMEFBUUdDU3dBREF3QmRBQUFBZ3dCTUlTVWhJZ1FOR0NzQkZBWWpJeEV6TWhZV0J6UW1JeU1STXlBQ29jZXp5TjF0b0ZoeGdubHFWd0VPQVd5MXR3TEtVSngxaDMvOTdBQUFBQUVBWHdBQUFmRUN5Z0FMQUNsQUpnQURBQVFGQXdSbEFBSUNBVjBBQVFHQ1N3QUZCUUJkQUFBQWd3Qk1FUkVSRVJFUUJnMGFLeUVoRVNFVklSVWhGU0VWSVFIeC9tNEJrdjdhQVJUKzdBRW1Bc3BjekZ2cUFBQUJBRjhBQUFIeEFzb0FDUUFqUUNBQUF3QUVBQU1FWlFBQ0FnRmRBQUVCZ2tzQUFBQ0RBRXdSRVJFUkVBVU5HU3N6SXhFaEZTRVZJUlVoeW1zQmt2N1pBUlQrN0FMS1hPbGNBQUFBQVFBOC8vWUNpd0xVQUNBQU8wQTREd0VEQWhBQkFBTWVBUVFGQWdFQkJBUktBQUFBQlFRQUJXVUFBd01DWHdBQ0FvcExBQVFFQVY4QUFRR0xBVXdUSmlVbEl4QUdEUm9yQVNFUkJnWWpJaVkxTkRZMk16SVdGd2NtSmlNaUJnWVZGQllXTXpJMk56VWpBWWtCQWpsM1RLU3ZWNloyTzJ3dUp5VmNNVTl6UFRKc1Z5czdHWmNCZ1A2Y0V4UENyWENsV2hnVFdoRVhRM3hVVUh4R0NRYkNBQUVBWHdBQUFvd0N5Z0FMQUNGQUhnQUVBQUVBQkFGbEJRRURBNEpMQWdFQUFJTUFUQkVSRVJFUkVBWU5HaXNoSXhFaEVTTVJNeEVoRVRNQ2pHeitxMnhzQVZWc0FVYit1Z0xLL3RnQktBQUFBUUFtQUFBQk93TEtBQXNBSUVBZEN3b0pDQVVFQXdJSUFBRUJTZ0FCQVlKTEFBQUFnd0JNRlJBQ0RSWXJJU0UxTnhFbk5TRVZCeEVYQVR2KzYxVlZBUlZVVkQ0WkFoc2FQajRhL2VVWkFBQUIvN1AvUEFESEFzb0FFQUFvUUNVRUFRRUNBd0VBQVFKS0FBRURBUUFCQUdNQUFnS0NBa3dCQUEwTUNBWUFFQUVRQkEwVUt4Y2lKaWMxRmhZek1qWTJOUkV6RVJRR0Fob25EaEFrRkJrc0cyeHR4QWNHV2dRR0ZETXdBcnI5UzNGb0FBQUFBUUJmQUFBQ2VBTEtBQTRBSUVBZERnZ0RBZ1FBQWdGS0F3RUNBb0pMQVFFQUFJTUFUQlVSRXhBRURSZ3JJU01EQnhFakVUTVJOalkzTnpNQkFuaDk2a1pzYkJrMkdjRjgvdThCU1RyKzhRTEsvcWNlUEIvZy9zZ0FBQUFCQUY4QUFBSDhBc29BQlFBZlFCd0FBQUNDU3dBQkFRSmVBd0VDQW9NQ1RBQUFBQVVBQlJFUkJBMFdLek1STXhFaEZWOXNBVEVDeXYyVFhRQUJBRjhBQUFNM0Fzb0FGd0FtUUNNVkN3SUFBUUZLQWdFQkFZSkxCUVFEQXdBQWd3Qk1BQUFBRndBWEVSTVJGd1lOR0NzaEF5TWVBaFVSSXhFekV6TVRNeEVqRVRRMk5qY2pBd0dXMkFRQ0F3SmltczBFMDVwcEF3TUJCTjRDWHhWRFR5WCtiUUxLL2NNQ1BmMDJBWmtqU2tJVy9hSUFBQUFCQUY4QUFBS3BBc29BRWdBZFFCb0NBUUFDQVVvREFRSUNna3NCQVFBQWd3Qk1GeEVXRUFRTkdDc2hJd0VqRmhZWEVTTVJNd0V6TGdJbkVUTUNxWVArbHdRQ0JRRmlnZ0ZvQXdFREFnRmtBa0VvWnpiK2hBTEsvY0lWUUVrZ0FZQUFBQUFBQWdBOC8vWUMxUUxWQUE4QUd3QWZRQndBQXdNQlh3QUJBWXBMQUFJQ0FGOEFBQUNMQUV3a0pTWWpCQTBZS3dFVUJnWWpJaVltTlRRMk5qTXlGaFlGRkJZek1qWTFOQ1lqSWdZQzFVcVVibkdVU0VpVWNtNlRTdjNaYW5GeWFHaHhjbW9CWm0rbFhGeW1iMjZsVzF1bGI0Q1VsSUNBa3BJQUFnQmZBQUFDTXdMS0FBc0FGQUF5UUM4QUJBQUJBZ1FCWlFZQkF3TUFYUVVCQUFDQ1N3QUNBb01DVEEwTUFRQVFEZ3dVRFJRS0NRZ0dBQXNCQ3djTkZDc0JNaFlWRkFZR0l5TVJJeEVYSXhFek1qWTFOQ1lCSjR5QU5YeHFUV3pBVkVGYlhWQUN5bkZsUEdoQi92RUN5bHYrK3oxSlFEOEFBZ0E4LzFZQzFRTFZBQlFBSUFBclFDZ0RBUUVEQVVvQUFBRUFoQUFFQkFKZkFBSUNpa3NBQXdNQlh3QUJBWXNCVENRbEprRVVCUTBaS3dFVUJnY1hJeWNpQmlNaUppWTFORFkyTXpJV0ZnVVVGak15TmpVMEppTWlCZ0xWWTJPcmxJZ0ZDd1Z4bEVoSWxISnVrMHI5MldweGNtaG9jWEpxQVdhQXRpUzJvUUZjcG05dXBWdGJwVytBbEpTQWdKS1NBQUFBQUFJQVh3QUFBbThDeWdBT0FCY0FPMEE0QndFQ0JRRktBQVVBQWdFRkFtVUhBUVFFQUYwR0FRQUFna3NEQVFFQmd3Rk1FQThCQUJNUkR4Y1FGdzBNQ3dvSkNBQU9BUTRJRFJRckFUSVdGUlFHQmdjVEl3TWpFU01SRnlNVk16STJOVFFtQVNlSmd5aEJJOGg4ckh4c3dWVmFVMHhRQXNwbWFEZExNQTMrd3dFaC90OEN5bHp6UHo1QU5nQUFBUUF5Ly9ZQitRTFVBQ2tBTGtBckd3RURBaHdIQWdFREJnRUFBUU5LQUFNREFsOEFBZ0tLU3dBQkFRQmZBQUFBaXdCTUpTd2xJZ1FOR0NzbEZBWWpJaVluTlJZV016STJOVFFtSmljdUFqVTBOak15RmhjSEppWWpJZ1lWRkJZV0Z4NENBZm1LZUR0bUpDaHNPRWhJSUVjNU5GSXVnR2c2WXkwaUtWVXRPejRlUWpZOFZTekJYMndURW1ZU0hUZ3ZJUzBuRmhRMlVEcFlaQmdUV1JFV05Db2hMU1VWR0RWTEFBQUFBQUVBRFFBQUFpVUN5Z0FIQUJ0QUdBTUJBUUVDWFFBQ0FvSkxBQUFBZ3dCTUVSRVJFQVFOR0NzaEl4RWpOU0VWSXdGUGJOWUNHTllDYlYxZEFBRUFXZi8yQW9rQ3lnQVJBQ0ZBSGdRREFnRUJna3NBQWdJQVh3QUFBSXNBVEFBQUFCRUFFU0lUSkFVTkZ5c0JFUlFHQmlNaUpqVVJNeEVVTXpJMk5SRUNpVDErWUlpTmJLNWFVUUxLL2pKS2QwV1Jkd0hNL2pteFlGSUJ4Z0FBQUFFQUFBQUFBbWNDeWdBTUFDRkFIZ2dCQUFFQlNnTUNBZ0VCZ2tzQUFBQ0RBRXdBQUFBTUFBd1JFUVFORmlzQkF5TURNeE1XRmhjMk5qY1RBbWY4Y1B0dm1RMFlCZ1lZRFprQ3l2MDJBc3IrUUNSV0l5TldKUUcvQUFBQUFRQUlBQUFEcEFMS0FDQUFKMEFrSEJNSEF3QUNBVW9GQkFNREFnS0NTd0VCQUFDREFFd0FBQUFnQUNBWUVSb1JCZzBZS3dFREl3TXVBaWNPQWdjREl3TXpFeFlXRnpZMk54TXpFeFlXRnpZMk54TURwTHh6ZmdjUERBSUJDZzRJZkhPN2Iya0tFd1VGRlF0M2JIc01GQVVFRkF0cEFzcjlOZ0c1R0R3MUN3czBQaHIrU2dMSy9sb3NYaVVtWWljQnB2NVlLR0lqSlY0c0FhWUFBUUFEQUFBQ1h3TEtBQXNBSUVBZEN3Z0ZBZ1FBQWdGS0F3RUNBb0pMQVFFQUFJTUFUQklTRWhBRURSZ3JJU01EQXlNVEF6TVRFek1EQWw5N3RyaHo3ZDU0cUtsejNnRXEvdFlCY3dGWC91OEJFZjZvQUFBQUFBRUFBQUFBQWtjQ3lnQUlBQnhBR1FZREFnRUFBVW9DQVFBQWdrc0FBUUdEQVV3U0VoRUREUmNyQVJNekF4RWpFUU16QVNTdmRPNXI3blVCZkFGTy9rdis2d0VSQWJrQUFBRUFJZ0FBQWhzQ3lnQUpBQ2xBSmdjQkFRSUNBUUFEQWtvQUFRRUNYUUFDQW9KTEFBTURBRjBBQUFDREFFd1NFUklRQkEwWUt5RWhOUUVoTlNFVkFTRUNHLzRIQVc3K25RSGwvcElCZDAwQ0lGMU4vZUFBQUFBQkFFMy9ZZ0V4QXNvQUJ3QWNRQmtBQXdBQUF3QmhBQUlDQVYwQUFRR0NBa3dSRVJFUUJBMFlLd1VqRVRNVkl4RXpBVEhrNUlLQ25nTm9VZjA2QUFBQUFRQUpBQUFCZUFMS0FBTUFHVUFXQWdFQkFZSkxBQUFBZ3dCTUFBQUFBd0FERVFNTkZTc1RBU01CYlFFTFpmNzJBc3I5TmdMS0FBQUJBQm4vWWdEOUFzb0FCd0FjUUJrQUFBQURBQU5oQUFFQkFsMEFBZ0tDQVV3UkVSRVFCQTBZS3hjekVTTTFNeEVqR1lHQjVPUk5Bc1pSL0pnQUFBQUFBUUFpQVFjQ0dnTFBBQVlBSjdFR1pFUkFIQVVCQVFBQlNnQUFBUUNEQXdJQ0FRRjBBQUFBQmdBR0VSRUVEUllyc1FZQVJCTVRNeE1qQXdNaTFEanNXYTJhQVFjQnlQNDRBVnIrcGdBQUFBQUIvLzcvWlFHMC82WUFBd0Fnc1Faa1JFQVZBQUVBQUFGVkFBRUJBRjBBQUFFQVRSRVFBZzBXSzdFR0FFUUZJVFVoQWJUK1NnRzJtMEVBQUFBQkFDZ0NYZ0VKQXY0QUN3QW1zUVprUkVBYkNnUUNBQUVCU2dJQkFRQUJnd0FBQUhRQUFBQUxBQXNWQXcwVks3RUdBRVFUSGdJWEZTTXVBaWMxb3d3a0p3OUhHRDAzRGdMK0ZqYzFFZ3dTT1RrU0NnQUNBQzMvOWdIdUFpVUFHd0FtQUhWQURoa0JCQUFZQVFNRUJnRUdCUU5LUzdBWlVGaEFId0FEQUFVR0F3VmxBQVFFQUY4SEFRQUFqVXNBQmdZQlh3SUJBUUdEQVV3YlFDTUFBd0FGQmdNRlpRQUVCQUJmQndFQUFJMUxBQUVCZzBzQUJnWUNYd0FDQW9zQ1RGbEFGUUVBSkNJZUhCWVVFUThMQ1FVRUFCc0JHd2dORkNzQk1oWVZFU01uSXdZR0l5SW1OVFEyTnpjMU5DWWpJZ1lISnpZMkV3Y0dCaFVVRmpNeU5qVUJKR1ZsU3hVRUkwMUVTV0I5Z0Z3Mk1TbE1JeUltWTVkSVhFY3lLRDVUQWlWWlgvNlRTeXdwVDFSVFZRUURIanN4R0JGTkZCdiszZ0lFTmk4cUprWkdBQUlBVS8vMkFqZ0MrQUFWQUNFQWYwdXdHVkJZUUFvRUFRUUFFUUVCQlFKS0cwQUtCQUVFQUJFQkFnVUNTbGxMc0JsUVdFQWRCZ0VEQTRSTEJ3RUVCQUJmQUFBQWpVc0FCUVVCWHdJQkFRR0xBVXdiUUNFR0FRTURoRXNIQVFRRUFGOEFBQUNOU3dBQ0FvTkxBQVVGQVY4QUFRR0xBVXhaUUJRWEZnQUFIaHdXSVJjaEFCVUFGUlFrSndnTkZ5c1RGUlFHQnpNMk5qTXlGaFVVQmlNaUppY2pCeU1SRXlJR0J4VVVGak15TmpVMHZRTUNCUmRPUG1GM2VHRStUUmNJRkU3MFRUd0JPMUZCUVFMNHR5QTlFQ0l1aklxTGpTMGZRZ0w0L3RaYlhnaGRZMlJldndBQUFBQUJBRFQvOWdIS0FpVUFHUUEzUURRS0FRSUJGZ3NDQXdJWEFRQURBMG9BQWdJQlh3QUJBWTFMQUFNREFGOEVBUUFBaXdCTUFRQVVFZzhOQ0FZQUdRRVpCUTBVS3dVaUpqVTBOall6TWhZWEJ5WW1JeUlWRkJZek1qWTNGUVlHQVN4d2lFSjBTaTFQR2lBY1BoMlNTRVlzUmgwZFJBcUZqMlI4T3hJTlZnb1J3RnhnRkJCY0VSQUFBZ0EwLy9ZQ0dRTDRBQlVBSWdDQ1M3QVpVRmhBQ2drQkJRRVNBUUFFQWtvYlFBb0pBUVVCRWdFREJBSktXVXV3R1ZCWVFCMEFBZ0tFU3dBRkJRRmZBQUVCalVzSEFRUUVBRjhEQmdJQUFJc0FUQnRBSVFBQ0FvUkxBQVVGQVY4QUFRR05Td0FEQTROTEJ3RUVCQUJmQmdFQUFJc0FURmxBRnhjV0FRQWVIQllpRnlJUkVBOE9Cd1VBRlFFVkNBMFVLd1VpSmpVME5qTXlGaGN6SmlZMU5UTVJJeWNqQmdZbk1qWTNOVFFtSXlJR0ZSUVdBUXhpZG5oaVBVNFlCZ0lHYWxNU0JSZE9KVTQvQVQxU1FVSkNDb3lLaTQ0dUlRNDJGTXI5Q0VnaU1GZFdXQkJmWkdoY1cySUFBQUFDQURULzlnSUxBaVVBRmdBZEFFTkFRQXNCQWdFTUFRTUNBa29BQlFBQkFnVUJaUWNCQkFRQVh3WUJBQUNOU3dBQ0FnTmZBQU1EaXdOTUdCY0JBQnNhRngwWUhSQU9DUWNGQkFBV0FSWUlEUlFyQVRJV0ZSVWhGaFl6TWpZM0ZRWUdJeUltSmpVME5qWVhJZ1lITXlZbUFTZHFldjZXQWxOTE5GRXJLVkk1VG5oRFBXMUpPVVVHL2dFN0FpV0RjVHBUV0JNVFdCTVJQbnBiVzM1RFVrcEVQMDhBQUFFQUVBQUFBWkFDL1FBV0FGeEFEdzRCQkFNUEJ3SUZCQVlCQUFVRFNrdXdKbEJZUUJzQUJBUURYd0FEQTRSTEFnRUFBQVZkQUFVRmhVc0FBUUdEQVV3YlFCa0FBd0FFQlFNRVp3SUJBQUFGWFFBRkJZVkxBQUVCZ3dGTVdVQUpFaVVsRVJFUUJnMGFLd0VqRVNNUkl6VTNOVFEyTXpJV0Z3Y21KaU1pRlJVekFWcUZhbHRiWDFVak9oUWJFU29XVDRVQnl2NDJBY295SVNKblZ3d0hVUVVKYVNNQUFnQTAveEFDR1FJbEFDQUFMUUNlUzdBWlVGaEFFZ01CQlFBWEFRUUdEUUVEQkF3QkFnTUVTaHRBRWdNQkJRRVhBUVFHRFFFREJBd0JBZ01FU2xsTHNCbFFXRUFpQ0FFRkJRQmZBUWNDQUFDTlN3QUdCZ1JmQUFRRWkwc0FBd01DWUFBQ0FvY0NUQnRBSmdBQkFZVkxDQUVGQlFCZkJ3RUFBSTFMQUFZR0JGOEFCQVNMU3dBREF3SmdBQUlDaHdKTVdVQVpJaUVCQUNnbUlTMGlMUndhRVE4S0NBWUZBQ0FCSUFrTkZDc0JNaFlYTXpjekVSUWpJaVluTlJZV016STJOVFUwTmpjakJnWWpJaVkxTkRZWElnWVZGQll6TWpZMU5UUW1BUTAwVkIwRkRGYjVPbUlwS21jNlFVa0NBUVFjVVRWbWMzTjhQME5EUVVwRlJnSWxLQ2xIL2Q3cEVCRmRGUlZMUkJJTktnc3FKNU9EZ3BkWVkxOWVZbEZjRkdoWkFBQUFBQUVBVXdBQUFpWUMrQUFXQUMxQUtnUUJBZ0FCU2dVQkJBU0VTd0FDQWdCZkFBQUFqVXNEQVFFQmd3Rk1BQUFBRmdBV0V5SVRKd1lOR0NzVEZSUUdCek0yTmpNeUZoVVJJeEUwSXlJR0ZSRWpFYjBFQWdjYVZ6TmZaV2x2VXo1cUF2akxHVElRS1NsZVovNmhBVkIrWkZ2KzhRTDRBQUFBQUFJQVRBQUFBTVVDNkFBTEFBOEFMVUFxQUFFQkFGOEVBUUFBaEVzRkFRTURoVXNBQWdLREFrd01EQUVBREE4TUR3NE5Cd1VBQ3dFTEJnMFVLeE15RmhVVUJpTWlKalUwTmhjUkl4R0pHQ1FrR0Jra0pFMXFBdWdjSVNBZEhTQWhITTM5NVFJYkFBQUFBdi9HL3hBQXhRTG9BQXNBR3dBM1FEUVFBUU1FRHdFQ0F3SktBQUVCQUY4QUFBQ0VTd0FFQklWTEFBTURBbUFGQVFJQ2h3Sk1EUXdZRnhRU0RCc05HeVFpQmcwV0t4TTBOak15RmhVVUJpTWlKZ01pSmljMUZoWXpNalkxRVRNUkZBWk1KQmtZSkNRWUdTUXlHaXNQRUNBVUlDbHFUUUtySVJ3Y0lTQWRIZnlGQndWVkJRVWpNUUpnL1p0TFd3QUFBUUJUQUFBQ0tRTDRBQklBS2tBbkR3NExCQVFCQUFGS0JBRURBNFJMQUFBQWhVc0NBUUVCZ3dGTUFBQUFFZ0FTRXhJWkJRMFhLeE1SRkFZSE16WTJOemN6QnhNakp3Y1ZJeEc4QkFFREN5Y1BwWHZaNTMyeVBta0MrUDZFRkRnV0R6RVFzZWYrelBFMHZRTDRBQUFBQUFFQVV3QUFBTDBDK0FBREFCTkFFQUFCQVlSTEFBQUFnd0JNRVJBQ0RSWXJNeU1STTcxcWFnTDRBQUFBQVFCVEFBQURaZ0lsQUNFQWRrdXdHVkJZUUFzWUFRSUFBVW9lQVFJQlNSdEFDeGdCQWdZQlNoNEJBZ0ZKV1V1d0dWQllRQllFQVFJQ0FGOEhCZ2dEQUFDTlN3VURBZ0VCZ3dGTUcwQWFBQVlHaFVzRUFRSUNBRjhIQ0FJQUFJMUxCUU1DQVFHREFVeFpRQmNCQUIwYkZ4WVZGQkVQRFF3SkJ3VUVBQ0VCSVFrTkZDc0JNaFlWRVNNUk5DTWlCaFVSSXhFMEl5SUdGUkVqRVRNWE16WTJNeklYTXpZMkFxOWJYR3BsU0Q1cFprdzVhbFFQQmhsVk1Id29DQnBjQWlWZWFQNmhBVkY5V1ZQKzNnRlJmV0pjL3ZBQ0cwZ3FLRmNzS3dBQUFBRUFVd0FBQWlZQ0pRQVRBRjVMc0JsUVdMVVFBUUlBQVVvYnRSQUJBZ1FCU2xsTHNCbFFXRUFUQUFJQ0FGOEVCUUlBQUkxTEF3RUJBWU1CVEJ0QUZ3QUVCSVZMQUFJQ0FGOEZBUUFBalVzREFRRUJnd0ZNV1VBUkFRQVBEZzBNQ1FjRkJBQVRBUk1HRFJRckFUSVdGUkVqRVRRaklnWVZFU01STXhjek5qWUJaRjVrYVc5U1AycFVEd1lhV3dJbFhtaitvUUZRZm1KYy92QUNHMGdxS0FBQ0FEVC85Z0l1QWlVQURRQVpBQjlBSEFBREF3RmZBQUVCalVzQUFnSUFYd0FBQUlzQVRDUWxKU0lFRFJnckFSUUdJeUltSmpVME5qTXlGaFlGRkJZek1qWTFOQ1lqSWdZQ0xvcDFTWEZCaUhaS2NVSCtjMFZMUzBWRlRFdEVBUTZHa2tGOVdvYVJRWHhhVzJabVcxeGpZd0FBQUFJQVUvOFFBamdDSlFBVkFDSUFna3V3R1ZCWVFBb1NBUVFBQ1FFQkJRSktHMEFLRWdFRUF3a0JBUVVDU2xsTHNCbFFXRUFkQndFRUJBQmZBd1lDQUFDTlN3QUZCUUZmQUFFQmkwc0FBZ0tIQWt3YlFDRUFBd09GU3djQkJBUUFYd1lCQUFDTlN3QUZCUUZmQUFFQmkwc0FBZ0tIQWt4WlFCY1hGZ0VBSGh3V0loY2lFUkFQRGdjRkFCVUJGUWdORkNzQk1oWVZGQVlqSWlZbkl4WVdGUlVqRVRNWE16WTJGeUlHQnhVVUZqTXlOalUwSmdGZ1luWjRZVDFPRndjQ0JXcFdEd1VYVFNaTFBnRThVRUpBUVFJbGpJdUpqeTBmRWpFVDNBTUxTQ0l3VjFaWkVGNWtiRmRZWmdBQUFnQTAveEFDR1FJbEFCVUFJZ0IvUzdBWlVGaEFDaEVCQlFFRUFRQUVBa29iUUFvUkFRVUNCQUVBQkFKS1dVdXdHVkJZUUIwQUJRVUJYd0lCQVFHTlN3Y0JCQVFBWHdBQUFJdExCZ0VEQTRjRFRCdEFJUUFDQW9WTEFBVUZBVjhBQVFHTlN3Y0JCQVFBWHdBQUFJdExCZ0VEQTRjRFRGbEFGQmNXQUFBZUhCWWlGeUlBRlFBVkZDUW5DQTBYS3dVMU5EWTNJd1lHSXlJbU5UUTJNeklXRnpNM014RURNalkzTlRRbUl5SUdGUlFXQWE4REF3WVhUejVnZDNsaFBrNFlCQTFXODB4QUFUNVJRa0ZCOE9VVExoSWlNSXlLaTQ0dkkwajg5UUU4VlZnU1lHTm9YRnRqQUFFQVV3QUFBWmdDSlFBUkFHWkxzQmxRV0VBTEFnRUJBQTREQWdJQkFrb2JRQXNDQVFNQURnTUNBZ0VDU2xsTHNCbFFXRUFTQUFFQkFGOERCQUlBQUkxTEFBSUNnd0pNRzBBV0FBTURoVXNBQVFFQVh3UUJBQUNOU3dBQ0FvTUNURmxBRHdFQURRd0xDZ1lFQUJFQkVRVU5GQ3NCTWhjSEppTWlCZ1lWRVNNUk14Y3pOallCWFNBYkN4b2NLVVlyYWxRT0JCbFVBaVVGWXdjb1N6WCs1QUliWUNzL0FBQUFBQUVBTWYvMkFia0NKUUFvQUM1QUt4c0JBd0ljQndJQkF3WUJBQUVEU2dBREF3SmZBQUlDalVzQUFRRUFYd0FBQUlzQVRDVXNKU0lFRFJnckpSUUdJeUltSnpVV0ZqTXlOalUwSmlZbkxnSTFORFl6TWhZWEJ5WW1JeUlWRkJZV0Z4NENBYmx6YURsUklpTmZMVHcxRkRjMU5FY21jVjB4Vnlrakkwb21ZaGM1TXpGSEpwaFFVaEFSWFJFYkppQVNIUjhVRkNvNkxFWkxGQkpSRHhVNUV4d2NGQk1wT2dBQUFBRUFFdi8yQVdZQ2xBQVhBRUJBUFEwQkFnUUNBUUFDQXdFQkFBTktBQU1FQTRNRkFRSUNCRjBBQkFTRlN3WUJBQUFCWHdBQkFZc0JUQUVBRkJNU0VSQVBEQXNIQlFBWEFSY0hEUlFySlRJM0ZRWUdJeUltSmpVUkl6VTNOek1WTXhVakVSUVdBUlV0SkJFNkhTeEpMRXRQSlVHYW1pdE1EVkFJQ3g1S1FnRXFNQ2h5ZVZIKzJDd3FBQUFBQVFCTy8vWUNJd0liQUJRQVRMVURBUUFEQVVwTHNCbFFXRUFUQlFRQ0FnS0ZTd0FEQXdCZ0FRRUFBSU1BVEJ0QUZ3VUVBZ0lDaFVzQUFBQ0RTd0FEQXdGZ0FBRUJpd0ZNV1VBTkFBQUFGQUFVSXhNa0VRWU5HQ3NCRVNNbkl3WUdJeUltTlJFekVSUVdNekkyTlJFQ0kxVVBCUnBjTTE5a2F6VTRVMEFDRy8zbFJ5b25YV2NCWWY2dlB6NWhYQUVSQUFBQUFBRUFBQUFBQWc0Q0d3QU5BQ0ZBSGdZQkFnQUJTZ0VCQUFDRlN3TUJBZ0tEQWt3QUFBQU5BQTBaRVFRTkZpc3pBek1URmhZWE16WTJOeE16QTh6TWNIQUtGZ1FFQkJnS2NIRE5BaHYreFNCTUdSbE5Id0U3L2VVQUFBQUFBUUFMQUFFREhBSWNBQ1lBSjBBa0hoSUZBd0FCQVVvREFnSUJBWVZMQlFRQ0FBQ0RBRXdBQUFBbUFDWWJHaEViQmcwWUt5VURMZ0luSXc0Q0J3TWpBek1URmhZWE16NENOeE16RXg0Q0Z6TStBamNUTXdNQ0RFMEhFZzRFQkFNT0VRaFFkcFZzUmdzVEJBUURDdzBHVm5SVUJnNExBZ1FDQ2c4SFNHdVhBUUVOR2tNOUVSRTlReHYrOUFJYi91OHFYeDBST1RnU0FTUCszUlEzTmhJUU9FQWRBUkg5NVFBQUFRQU9BQUFDRVFJYkFBc0FIMEFjQ1FZREF3SUFBVW9CQVFBQWhVc0RBUUlDZ3dKTUVoSVNFUVFOR0NzVEF6TVhOek1ERXlNbkJ5UE90M21BZ0hpM3dIaUppbmdCRXdFSXdzTCsrUDd0enM0QUFBQUFBUUFCL3hBQ0R3SWJBQm9BSjBBa0doTUZBd01BRWdFQ0F3SktBUUVBQUlWTEFBTURBbUFBQWdLSEFrd2xJeGtRQkEwWUt4TXpFeFlXRnpNMk5qY1RNd01HQmlNaUppYzFGaFl6TWpZM053RnljQTBVQkFRRkZRMXFjdWNkWVU0WkpBMEtJQkV1T0JBV0Fodit6aU5BSUJwR0pBRXgvWnhPV1FVRFZBSUVOU3M2QUFBQUFRQWpBQUFCdHdJYkFBa0FLVUFtQndFQkFnSUJBQU1DU2dBQkFRSmRBQUlDaFVzQUF3TUFYUUFBQUlNQVRCSVJFaEFFRFJncklTRTFBU0UxSVJVQklRRzMvbXdCRnY3N0FYdis4QUVZUXdHR1VrditnZ0FBQUFFQUdQOWlBVjRDeWdBZEFDeEFLUllCQVFJQlNnQUNBQUVGQWdGbkFBVUFBQVVBWXdBRUJBTmZBQU1EZ2dSTUd4RVZFUlVRQmcwYUt3VW1KalUxTkNZak5UWTJOVFUwTmpNVkJnWVZGUlFIRlJZVkZSUVdGd0ZlWjJRL1BEdy9aMlF3T0c1dU5qS2VBVWxPbFRJcVZnRXBNWlpPU2xNQkp5K1FaQklHRTJPVEx5WUJBQUVBNnY4VEFUMEM5d0FEQUJOQUVBQUFBSVJMQUFFQmh3Rk1FUkFDRFJZckV6TVJJK3BUVXdMMy9Cd0FBUUFpLzJJQmFBTEtBQjBBTWtBdkJ3RUVBd0ZLQUFNQUJBQURCR2NBQUFZQkJRQUZZd0FCQVFKZkFBSUNnZ0ZNQUFBQUhRQWRFUlVSR3hFSERSa3JGelUyTmpVMU5EYzFKalUxTkNZbk5SWVdGUlVVRmpNVklnWVZGUlFHSWpBNGJtNDJNbWhqUHp3OFAyZWVVd0VuTDVGa0VnWVNaSkl2SmdGVEFVbE9sVEVyVmlreWxrNUtBQUVBTUFFYUFnc0Jwd0FYQUR5eEJtUkVRREVIQVFJQkV3RURBQUpLRWdFQlNBWUJBMGNBQWdBREFsY0FBUUFBQXdFQVp3QUNBZ05mQUFNQ0EwOGtKQ1FpQkEwWUs3RUdBRVFCSmlZaklnWUhOVFl6TWhZWEZoWXpNalkzRlFZaklpWUJEU1V3Rmh3K0dEQkpIVG91SlRBVkhUNFlNVWdkT2dFNkVBc2lHVmcxRFJNUUN5SVpWellNQUFBQUFnQkUvMHNBelFJaUFBc0FEd0FjUUJrQUFnQURBZ05oQUFBQUFWOEFBUUdOQUV3UkVpUWlCQTBZS3hNVUJpTWlKalUwTmpNeUZnY3pFeVBOS1J3Y0tDZ2NIQ2xyVEJsK0Fkb29JQ0FvSmlJaXdQNExBQUFBQUFFQVZmLzJBZXdDMUFBZkFHNUFFUjRFQWdFQUVBVUNBZ0VYRVFJREFnTktTN0F5VUZoQUhBQUFBQUVDQUFGb0FBSUFBd1FDQTJjR0FRVUZna3NBQkFTREJFd2JRQ01HQVFVQUJZTUFCQU1FaEFBQUFBRUNBQUZvQUFJREF3SlhBQUlDQTE4QUF3SURUMWxBRGdBQUFCOEFIeEVWSXlVUkJ3MFpLd0VWRmhZWEJ5WW1JeUlWRkJZek1qWTNGUVlHQnhVak5TWW1OVFEyTmpjMUFXUW9SaG9nSEVBZGtrbEhMRUloSER3bFNWdHFNVmc4QXRSUEFSSU1WZ3NSd1dGYUVnNWJEZzhDWUdNTmY0VmNkRDRKVXdBQkFDSUFBQUljQXRNQUlBQklRRVVEQVFFQUJBRUNBUllCQlFRRFNnY0JBZ1lCQXdRQ0EyVUFBUUVBWHdnQkFBQ0tTd0FFQkFWZEFBVUZnd1ZNQVFBZEhCc2FGUlFURWc0TkRBc0lCZ0FnQVNBSkRSUXJBVElXRndjbUppTWlCaFVWTXhVakZSUUdCeUVWSVRVMk5qVTFJelV6TlRRMkFWQTNXaVFqSUVnbE1UakZ4U3dhQVhiK0JpczFYVjF6QXRNWEVWTU9GalE5ZlU5ZU96a1BYbGdOUEQ5ZlQ0UmZZZ0FDQURvQWZ3SUFBa01BSVFBdUFEMUFPZzBMQmdRRUF3QWZGQTREQkFJREhod1hGUVFCQWdOS0RBVUNBRWdkRmdJQlJ3QUNBQUVDQVdNQUF3TUFYd0FBQUkwRFRDUXBMeWdFRFJnckV6UTJOeWMzRnpZMk16SVhOeGNIRmhZVkZBWUhGd2NuQmdZaklpY0hKemNtSmpjVUZqTXlOalUwSmlNaUJnWmJFUTlCT0VBWE54NDVNVUUzUHc0U0VROCtOa0VYTmgwK0xrQTNRQThSVFVReU1rVkZNaUUySHdGaEhUWVhRalkvRHhFZ1B6VkNGamdkSGpjWFFEWS9EaEVnUHpaQUZ6Y2RNVVZGTVRKR0lEY0FBQUFBQVFBTEFBQUNMd0xLQUJZQU0wQXdDUUVCQ0FFQ0F3RUNaZ2NCQXdZQkJBVURCR1VLQVFBQWdrc0FCUVdEQlV3V0ZSUVRFUkVSRVJFUkVSRVJDdzBkS3dFVE13TXpGU01WTXhVakZTTTFJelV6TlNNMU13TXpBUjJrYnNWMGpvNk9abzZPam5IQ2J3RjlBVTMrakVkTlIzdDdSMDFIQVhRQUFnRHEveE1CUFFMM0FBTUFCd0FmUUJ3QUFRRUFYUUFBQUlSTEFBSUNBMTBBQXdPSEEwd1JFUkVRQkEwWUt4TXpFU01WTXhFajZsTlRVMU1DOS81KzRQNStBQUFDQURuLytnRzhBdjBBTWdCQUFGUkFFd3dCQVFBK055WWNEUU1HQXdFbEFRSURBMHBMc0NaUVdFQVZBQUVCQUY4QUFBQ0VTd0FEQXdKZkFBSUNpd0pNRzBBVEFBQUFBUU1BQVdjQUF3TUNYd0FDQW9zQ1RGbEFDU29vSXlFbEtBUU5GaXNUTkRZM0ppWTFORFl6TWhZWEJ5WW1JeUlHRlJRV0Z4WVdGUlFHQnhZV0ZSUUdJeUltSnpVV0ZqTXlOalUwSmlZbkppWTNGQllYRnpZMk5UUW1KaWNHQmtFdEhpSW5aMTQyVUNjZklrUXROaTAxUmt0V0toMGlKSE5tTjFJZ0lsNHNSRFFTTkROT1ZWVThTaEVWSkJrL09SZ25BWW92UFJBVU55ZzlSeFFRU3c0V0hSb2JKaG9jU2p3eVB4SVROQ1pHVGhJUVV4RWFLQnNTR3gwVUhVWk1JaklkQmd3cEh4Y25JeE1IS3dBQUFBQUNBSkVDZEFHNkF1QUFDd0FYQUNXeEJtUkVRQm9DQVFBQkFRQlhBZ0VBQUFGZkF3RUJBQUZQSkNRa0lnUU5HQ3V4QmdCRUV6UTJNeklXRlJRR0l5SW1OelEyTXpJV0ZSUUdJeUlta1I4V0ZpQWdGaFlmdng0WEZTQWdGUmNlQXFvZEdSa2RHeHNiR3gwWkdSMGJHeHNBQXdBeC8vWUREd0xVQUJNQUpRQStBR1d4Qm1SRVFGb3ZBUVlGT3pBQ0J3WThBUVFIQTBvQUFRQURCUUVEWndBRkFBWUhCUVpuQUFjS0FRUUNCd1JuQ1FFQ0FBQUNWd2tCQWdJQVh3Z0JBQUlBVHljbUZSUUJBRGszTXpFdUxDWStKejRmSFJRbEZTVUxDUUFUQVJNTERSUXJzUVlBUkFVaUxnSTFORDRDTXpJZUFoVVVEZ0luTWo0Q05UUXVBaU1pQmdZVkZCWVdOeUltTlRRMk5qTXlGd2NtSXlJR0ZSUVdNekkyTnhVR0JnR2dVSVpqTmpkaWhsQk1oV1U1Tm1PR1VEOXZWREF0VTNCQ1dZdFBUNHBwWkdNdlcwRkJPaDB5S3p0Qk9VSVhPUmtZTWdvMlk0WlFUNFpqTnpaamhsQlFobU0yT0M1VGNrUkFjVlV4VUl4YlY0MVRWbnRtUVdZNkhqOGFWVWxOVWcwS1FRb09BQUFBQUFJQUhRRjZBVDBDMGdBWkFDUUE5VUFPRndFRUFCWUJBd1FGQVFFR0EwcExzQlZRV0VBaEFBUUVBRjhIQVFBQXFrc0FCUVVEWHdBREE2MUxBQVlHQVY4Q0FRRUJzd0ZNRzB1d0ZsQllRQjhBQXdBRkJnTUZad0FFQkFCZkJ3RUFBS3BMQUFZR0FWOENBUUVCc3dGTUcwdXdJbEJZUUJ3QUF3QUZCZ01GWndBR0FnRUJCZ0ZqQUFRRUFGOEhBUUFBcWdSTUcwdXdKbEJZUUNJSEFRQUFCQU1BQkdjQUF3QUZCZ01GWndBR0FRRUdWd0FHQmdGZkFnRUJCZ0ZQRzBBcEFBRUdBZ1lCQW40SEFRQUFCQU1BQkdjQUF3QUZCZ01GWndBR0FRSUdWd0FHQmdKZkFBSUdBazlaV1ZsWlFCVUJBQ0lnSEJvVUVnOE5DUWNFQXdBWkFSa0lEeFFyRXpJVkZTTW5CZ1lqSWlZMU5EWTNOelUwSmlNaUJnY25OallYQndZR0ZSUVdNekkyTmJpRk5BMFVPaVV4TzFKUU5pY2VHak1aR1J4RVpEQTNKaHNXTHkwQzBuZmJMaGNkTWpRME5BTUNFaDRhRHd3MkRoSzJBZ0lmR0JnVkxpVUFBZ0FvQURVQjlRSGdBQVlBRFFBSXRRd0lCUUVDTUNzVE54Y0hGd2NuTnpjWEJ4Y0hKeWlzVEl1TFRLelVya3VMaTB1dUFSSFBLcXVySzg4Tnp5cXJxeXZQQUFBQkFEQUFmZ0lLQVlrQUJRQWxRQ0lBQUFFQWhBTUJBZ0VCQWxVREFRSUNBVjBBQVFJQlRRQUFBQVVBQlJFUkJBMFdLd0VSSXpVaE5RSUtVZjUzQVluKzlicFIvLzhBSlFEZkFSMEJPUUlHQUJBQUFBQUVBREgvOWdNUEF0UUFFd0FsQURNQVBBQnBzUVprUkVCZUxnRUdDQUZLREFjQ0JRWUNCZ1VDZmdBQkFBTUVBUU5uQUFRQUNRZ0VDV2NBQ0FBR0JRZ0daUXNCQWdBQUFsY0xBUUlDQUY4S0FRQUNBRThtSmhVVUFRQThPalkwSmpNbU16SXhNQzhwSng4ZEZDVVZKUXNKQUJNQkV3ME5GQ3V4QmdCRUJTSXVBalUwUGdJek1oNENGUlFPQWljeVBnSTFOQzRDSXlJR0JoVVVGaFluRVRNeUZoVVVCZ2NYSXljakZUVXpNalkxTkNZakl3R2dVSVpqTmpkaWhsQk1oV1U1Tm1PR1VEOXZWREF0VTNCQ1dZdFBUNG93Z1ZKTU1CNTBWMk0rTWljckp5d3hDalpqaGxCUGhtTTNObU9HVUZDR1l6WTRMbE55UkVCeFZURlFqRnRYalZOY0FiWkNRQzgzRE1Lc3JPc25JQ01nQUFBQi8vMEMrQUgzQTBNQUF3QWdzUVprUkVBVkFBRUFBQUZWQUFFQkFGMEFBQUVBVFJFUUFnMFdLN0VHQUVRQklUVWhBZmYrQmdINkF2aExBQUFDQURJQm1BRjVBdFFBQ3dBWEFEbXhCbVJFUUM0QUFRQURBZ0VEWndVQkFnQUFBbGNGQVFJQ0FGOEVBUUFDQUU4TkRBRUFFeEVNRncwWEJ3VUFDd0VMQmcwVUs3RUdBRVFUSWlZMU5EWXpNaFlWRkFZbk1qWTFOQ1lqSWdZVkZCYldTbHBhU2tsYVdrZ3JMUzhwTEM0dUFaaFlSa1pZV0VaR1dFVXhLQ2t4TVNrb01RQUNBREFBQUFJTEFsNEFDd0FQQURGQUxnUUJBQU1CQVFJQUFXVUFCUUFDQmdVQ1pRQUdCZ2RkQ0FFSEI0TUhUQXdNREE4TUR4SVJFUkVSRVJBSkRSc3JBVE1WSXhVak5TTTFNelV6QVRVaEZRRkd4TVJTeE1SUy91b0Iyd0dVVWNuSlVjcjlvbEpTQUFFQUdRR2dBVDBEVlFBWkFEQkFMUTRCQVFJTkFRTUJBZ0VBQXdOS0FBSUFBUU1DQVdjQUF3QUFBMVVBQXdNQVhRQUFBd0JORmlVb0VBUU1HQ3NCSVRVM1BnSTFOQ1lqSWdZSEp6WTJNeklXRlJRR0J3Y3pBVDMrM0hFbUp3OGlHaHN2R2lzZVNDNUFTems0U0x3Qm9ENXZKQzRrRlJ3ZEZ4UTJHaDgvT0RCTk5VTUFBQUVBRlFHWUFVWURWUUFtQUUxQVNpUUJCUUFqQVFRRkJnRURCQkVCQWdNUUFRRUNCVW9HQVFBQUJRUUFCV2NBQkFBREFnUURad0FDQVFFQ1Z3QUNBZ0ZmQUFFQ0FVOEJBQ0VmR3hrWUZoUVNEZ3dBSmdFbUJ3d1VLeE15RmhVVUJnY1ZGaFlWRkFZaklpWW5OUll6TWpVMEl5TTFNekkyTlRRbUl5SUdCeWMyTnF0RFN5b2lLaTlWV1NWQUhrUkFXMlk0TlRNcEl4MGRNUnNvSDBZRFZUMHlKalFLQkFnMkpqcElEaEJJSlVWQVBTVWNIQndVRWpVWEd3QUFBUUFvQWw0QkNRTCtBQXNBSnJFR1pFUkFHd2NCQWdBQkFVb0NBUUVBQVlNQUFBQjBBQUFBQ3dBTEZRTU5GU3V4QmdCRUFSVU9BZ2NqTlQ0Q053RUpEemM5R0VZUEppTU5BdjRLRWprNUVnd1NOVGNXQUFBQUFBRUFVLzhRQWljQ0d3QVpBRmkyQ2dNQ0FBUUJTa3V3R1ZCWVFCZ0dCUUlEQTRWTEFBUUVBRjhCQVFBQWcwc0FBZ0tIQWt3YlFCd0dCUUlEQTRWTEFBQUFnMHNBQkFRQlh3QUJBWXRMQUFJQ2h3Sk1XVUFPQUFBQUdRQVpJaEVYSkJFSERSa3JBUkVqSnlNR0JpTWlKaWNqRmhZVkZTTVJNeEVVTXpJMk5SRUNKMU1RQmhoS05DUTJFZ1FDQTJwcWIxSS9BaHY5NVVnb0toZ1ZFVUVsbkFNTC9xNThZVndCRVFBQUFBQUJBRGYvZ1FJckF2Z0FFZ0FwUUNZR0FRTUJBVW9BQXdFQUFRTUFmZ0lCQUFDQ0FBRUJCRjBBQkFTRUFVd21JeEVSRUFVTkdTc0ZJeEVqRVNNUkJnWWpJaVltTlRRMk5qTWhBaXRBWUVBUEpoSStYRE0zWkVFQkdIOERNL3pOQVpBRkJDNXNXMTl1TGdBQUFQLy9BRVFCR0FETkFhZ0RCd0FSQUFBQkpnQUpzUUFCdUFFbXNETXJBQUFBQUFFQUJmOFFBTklBQUFBVkFES3hCbVJFUUNjVEVBY0RBUUlHQVFBQkFrb0FBZ0VDZ3dBQkFBQUJWd0FCQVFCZ0FBQUJBRkFXSlNJRERSY3JzUVlBUkJjVUJpTWlKaWMxRmhZek1qWTFOQ1luTnpNSEZoYlNTRTBSSFFvTElBOGRJUzhwS2tRV0l6S0dNamdFQWo4Q0JCRVhHQmtGVXk0SktRQUFBQUFCQUNjQm9BRDlBMHdBREFBblFDUUxDZ1lEQUFFQlNnSUJBUUFBQVZVQ0FRRUJBRjBBQUFFQVRRQUFBQXdBREJFRERCVXJFeEVqRVRRMk53WUdCd2NuTi8xVUF3RUpHQXN4S1ljRFRQNVVBUU1ZTWhJSUZnZ2xOV01BQUFJQUh3RjZBVjBDMGdBTEFCY0FQa3V3SWxCWVFCSUFBZ0FBQWdCakFBTURBVjhBQVFHcUEwd2JRQmdBQVFBREFnRURad0FDQUFBQ1Z3QUNBZ0JmQUFBQ0FFOVp0aVFrSkNJRUR4Z3JBUlFHSXlJbU5UUTJNeklXQnhRV016STJOVFFtSXlJR0FWMVhTVVZaVmtwSFYvVW9MaXdwS1N3dEtRSW5VMXBaVkZOWVdGTTRPRGc0T0RZMkFBQUFBZ0FuQURVQjlBSGdBQVlBRFFBSXRRd0lCUUVDTUNzQkJ5YzNKemNYQndjbk55YzNGd0gwclV1TGkwdXQxYXhNaTR0TXJBRUV6eXVycXlyUERjOHJxNnNxendBRUFCNEFBQUw1QXNvQUF3QVFBQnNBSkFCa3NRWmtSRUJaRFF3SUF3VUFJUUVEQlJRQkJBWURTZ0FGQXdFRlZRSUJBQXNCQXdZQUEyVUpBUVlIQVFRQkJnUm1BQVVGQVYwTUNBb0RBUVVCVFJFUkJBUUFBQjBjRVJzUkd4b1pHQmNXRlJNU0JCQUVFQThPQUFNQUF4RU5EUlVyc1FZQVJETUJNd0VERVRRMk53WUdCd2NuTnpNUkFUVWpOUk16RVRNVkl4VW5NelUwTmpjR0JnZUhBYWhYL2xnK0FnSUlHUXN4S1lkUEFYSEJ3MVU5UGN4MUFRSUZIUXNDeXYwMkFSNEJBeGd5RWdnV0NDVTFZLzVVL3VKYU9nRWIvdTFDV3B4WkZUVVlEREVRQUFNQUZnQUFBdmdDeWdBREFCQUFLZ0Jpc1Faa1JFQlhEUXdJQXdVQUhnRUVCUjBCQXdRU0FRRUdCRW9BQlFBRUF3VUVhQUlCQUFrQkF3WUFBMlVBQmdFQkJsVUFCZ1lCWFFvSENBTUJCZ0ZORVJFRUJBQUFFU29SS2lrb0lpQWJHUVFRQkJBUERnQURBQU1SQ3cwVks3RUdBRVF6QVRNQkF4RTBOamNHQmdjSEp6Y3pFUk0xTno0Q05UUW1JeUlHQnljMk5qTXlGaFVVQmdjSE14VnlBYWhYL2xneEFnSUpHQXN5S0lkUDZIRWxLQTRoR3hvd0dpb2VTQzVBU3prNFNMd0N5djAyQVI0QkF4Z3lFZ2dXQ0NVMVkvNVUvdUkrYnlRdUpCVWNIUmNVTmhvZlB6Z3dUVFZEU1FBQUJBQVlBQUFERndMVEFDWUFLZ0ExQUQ0QS83RUdaRVJMc0J0UVdFQWZGd0VFQlJZQkF3UWdBUUlEQkFFQkNRTUJBQUV1QVFnS0JrbzdBUUVCU1J0QUh4Y0JCQVlXQVFNRUlBRUNBd1FCQVFrREFRQUJMZ0VJQ2daS093RUJBVWxaUzdBYlVGaEFOd1lCQlFBRUF3VUVad0FEQUFJSkF3Sm5BQWtCQndsVkFBRU9BUUFLQVFCbkRRRUtDd0VJQndvSVpnQUpDUWRkRUF3UEF3Y0pCMDBiUUQ0QUJnVUVCUVlFZmdBRkFBUURCUVJuQUFNQUFna0RBbWNBQ1FFSENWVUFBUTRCQUFvQkFHY05BUW9MQVFnSENnaG1BQWtKQjEwUURBOERCd2tIVFZsQUt5c3JKeWNCQURjMkt6VXJOVFF6TWpFd0x5MHNKeW9uS2lrb0d4a1VFZzRNQ3drSEJRQW1BU1lSRFJRcnNRWUFSQk1pSmljMUZqTXlOVFFqSXpVek1qWTFOQ1lqSWdZSEp6WTJNeklXRlJRR0J4VVdGaFVVQmdNQk13RWhOU00xRXpNUk14VWpGU2N6TlRRMk53WUdCNXNsUUI1RVFGdG1PRFV6S1NRY0hESWJLQjlHTUVSS0tpSXFMMVZFQWFoWS9sZ0JlOEhDVmowOXpIVUJBZ1VkQ3dFV0RoQklKVVZBUFNVY0hCd1VFalVYR3oweUpqUUtCQWcySmpwSS91b0N5djAyV2pvQkcvN3RRbHFjV1JVMUdBd3hFQUFBQVAvL0FCbi9RQUcxQWlJQkR3QWlBYjRDRk1BQUFBbXhBQUs0QWhTd015c0EvLzhBQUFBQUFvMERyUUltQUNRQUFBRUhBRU1BaVFDdkFBaXhBZ0d3cjdBekt3QUEvLzhBQUFBQUFvMERyUUltQUNRQUFBRUhBSFlBMlFDdkFBaXhBZ0d3cjdBekt3QUEvLzhBQUFBQUFvMERyUUltQUNRQUFBRUhBVW9BYWdDdkFBaXhBZ0d3cjdBekt3QUEvLzhBQUFBQUFvMERsQUltQUNRQUFBRUhBVkVBWUFDdkFBaXhBZ0d3cjdBekt3QUEvLzhBQUFBQUFvMERqd0ltQUNRQUFBRUhBR29BSUFDdkFBaXhBZ0t3cjdBekt3QUEvLzhBQUFBQUFvMERid0ltQUNRQUFBRUhBVThBckFBNEFBaXhBZ0t3T0xBekt3QUFBQUwvL3dBQUEwb0N5Z0FQQUJNQU9FQTFBQVVBQmdnRkJtVUFDQUFCQndnQlpRa0JCQVFEWFFBREE0SkxBQWNIQUYwQ0FRQUFnd0JNRXhJUkVSRVJFUkVSRVJBS0RSMHJJU0UxSXdjakFTRVZJUlVoRlNFVklTVXpFU01EU3Y1ODkyRnZBVTRCL2Y3b0FRYisrZ0VZL2E3T084N09Bc3BjekZ2cXp3RkFBQUQvL3dBOC94QUNXUUxVQWlZQUpnQUFBQWNBZWdFTEFBRC8vd0JmQUFBQjhRT3RBaVlBS0FBQUFRY0FRd0J6QUs4QUNMRUJBYkN2c0RNckFBRC8vd0JmQUFBQjhRT3RBaVlBS0FBQUFRY0FkZ0REQUs4QUNMRUJBYkN2c0RNckFBRC8vd0JmQUFBQjhRT3RBaVlBS0FBQUFRY0JTZ0JVQUs4QUNMRUJBYkN2c0RNckFBRC8vd0JmQUFBQjhRT1BBaVlBS0FBQUFRY0FhZ0FLQUs4QUNMRUJBckN2c0RNckFBRC8vd0FkQUFBQk93T3RBaVlBTEFBQUFRY0FRLy8xQUs4QUNMRUJBYkN2c0RNckFBRC8vd0FtQUFBQlRnT3RBaVlBTEFBQUFRY0FkZ0JGQUs4QUNMRUJBYkN2c0RNckFBRC8vLy85QUFBQmFBT3RBaVlBTEFBQUFRY0JTdi9WQUs4QUNMRUJBYkN2c0RNckFBRC8vd0FjQUFBQlJRT1BBaVlBTEFBQUFRY0FhditMQUs4QUNMRUJBckN2c0RNckFBQUFBZ0FjQUFBQ29RTEtBQTBBR1FBL1FEd0ZBUU1HQVFJSEF3SmxDUUVFQkFCZENBRUFBSUpMQUFjSEFWMEFBUUdEQVV3UERnRUFGaFFURWhFUURoa1BHUXdMQ2drSUJnQU5BUTBLRFJRckFUSVdGaFVVQmlNakVTTTFNeEVYSXhVekZTTVZNeUFSTkNZQlBHeWhXTWl6d2toSTBXV2dvRklCRG9RQ3lsQ2NjclczQVROY0FUdGI0RnpZQVE2SGZ3RC8vd0JmQUFBQ3FRT1VBaVlBTVFBQUFRY0JVUUNlQUs4QUNMRUJBYkN2c0RNckFBRC8vd0E4Ly9ZQzFRT3RBaVlBTWdBQUFRY0FRd0RNQUs4QUNMRUNBYkN2c0RNckFBRC8vd0E4Ly9ZQzFRT3RBaVlBTWdBQUFRY0FkZ0VjQUs4QUNMRUNBYkN2c0RNckFBRC8vd0E4Ly9ZQzFRT3RBaVlBTWdBQUFRY0JTZ0N0QUs4QUNMRUNBYkN2c0RNckFBRC8vd0E4Ly9ZQzFRT1VBaVlBTWdBQUFRY0JVUUNqQUs4QUNMRUNBYkN2c0RNckFBRC8vd0E4Ly9ZQzFRT1BBaVlBTWdBQUFRY0FhZ0JqQUs4QUNMRUNBckN2c0RNckFBQUFBUUJBQUlRQit3SStBQXNBQnJNRUFBRXdLd0VYQnhjSEp3Y25OeWMzRndIQk9xU2lPS1doT3FLak9xTUNQam1rcERtaW9qcWpvenFqQUFBQUF3QTgvOTBDMVFMc0FCZ0FJUUFxQUR4QU9SWVZFd01DQVNVa0hSd0VBd0lKQ0FZREFBTURTaFFCQVVnSEFRQkhBQUlDQVY4QUFRR0tTd0FEQXdCZkFBQUFpd0JNSnkwcUl3UU5HQ3NCRkFZR0l5SW5CeWMzSmlZMU5EWTJNeklXRnpjWEJ4WVdCUlFXRndFbUl5SUdCVFFuQVJZV016STJBdFZLbEc1clNDOUNNaTR0U0pSeU0xZ2tMVUl4THkvOTJSUVZBU293UjNKcUFiVXIvdGNYUGlWeWFBRm1iNlZjSzBRc1NER05XRzZsV3hjVFFTeEZNSTFZT1YwaUFhc2Zrb0IxUlA1VUVCR1VBQUQvL3dCWi8vWUNpUU90QWlZQU9BQUFBUWNBUXdDMUFLOEFDTEVCQWJDdnNETXJBQUQvL3dCWi8vWUNpUU90QWlZQU9BQUFBUWNBZGdFRkFLOEFDTEVCQWJDdnNETXJBQUQvL3dCWi8vWUNpUU90QWlZQU9BQUFBUWNCU2dDV0FLOEFDTEVCQWJDdnNETXJBQUQvL3dCWi8vWUNpUU9QQWlZQU9BQUFBUWNBYWdCTEFLOEFDTEVCQXJDdnNETXJBQUQvL3dBQUFBQUNSd090QWlZQVBBQUFBUWNBZGdDM0FLOEFDTEVCQWJDdnNETXJBQUFBQWdCZkFBQUNNd0xLQUEwQUZnQW5RQ1FBQXdBRkJBTUZaUUFFQUFBQkJBQmxBQUlDZ2tzQUFRR0RBVXdrSWlFUkVTTUdEUm9yQVJRR0JpTWpGU01STXhVek1oWUZNekkyTlRRbUl5TUNNelI3YWs5c2JGMk5mdjZZUVY5WlVGaFJBWHc4YUVHWEFzcDRjdTgvU1VBK0FBRUFVLy8yQW1VQy9RQTJBSWxMc0JsUVdFQUtFd0VCQWhJQkFBRUNTaHRBQ2hNQkFRSVNBUU1CQWtwWlM3QVpVRmhBRmdBQ0FnUmZBQVFFaEVzQUFRRUFYd01CQUFDTEFFd2JTN0FtVUZoQUdnQUNBZ1JmQUFRRWhFc0FBd09EU3dBQkFRQmZBQUFBaXdCTUcwQVlBQVFBQWdFRUFtY0FBd09EU3dBQkFRQmZBQUFBaXdCTVdWbEFDelF5TGkwcEp5UXZCUTBXS3dFVURnTVZGQllXRnhZV0ZSUUdJeUluTlJZV016STJOVFFtSnlZbU5UUStBelUwSmlNaUJnWVZFU01STkRZMk16SVdGZ0lrSENvcUhCQW9KVFU3YTF0Y05obE9Kakl2SnpjK0x4c3BLUnRGTlNNN0kybytha05FWnpzQ1ppTTBKeDhkRVEwV0hoZ2lTanRWVUNGYkVCb3BKU0V0SXljN0tCOHNJUjhsR2lZbUV5NG8vY0lDUUVSVEppSkRBUC8vQUMzLzlnSHVBdjRDSmdCRUFBQUFCZ0JEWWdBQUFQLy9BQzMvOWdIdUF2NENKZ0JFQUFBQUJ3QjJBTElBQVAvL0FDMy85Z0h1QXY0Q0pnQkVBQUFBQmdGS1F3QUFBUC8vQUMzLzlnSHVBdVVDSmdCRUFBQUFCZ0ZST2dBQUFQLy9BQzMvOWdIdUF1QUNKZ0JFQUFBQUJnQnErUUFBQVAvL0FDMy85Z0h1QXpjQ0pnQkVBQUFBQndGUEFJZ0FBQUFEQUMzLzlnTS9BaVVBTEFBekFENEFsa0FVS2lVQ0JnQWtBUVVHRXd3Q0FnRU5BUU1DQkVwTHNCdFFXRUFsQ1FFRkNnRUJBZ1VCWncwSUFnWUdBRjhIREFJQUFJMUxDd0VDQWdOZkJBRURBNHNEVEJ0QUtnQUtBUVVLVndrQkJRQUJBZ1VCWlEwSUFnWUdBRjhIREFJQUFJMUxDd0VDQWdOZkJBRURBNHNEVEZsQUl5NHRBUUE4T2pZME1UQXRNeTR6S1NjaUlCMGJGeFVSRHdvSUJnVUFMQUVzRGcwVUt3RXlGaFlWRlNFV0ZqTXlOamNWQmdZaklpWW5CZ1lqSWlZbU5UUTNOelUwSmlNaUJnY25Oall6TWhjMk5oY2lCZ2N6TkNZRkJ3WUdGUlFXTXpJMk5RSm1RbUkxL3FZQ1RVWXlVQ2twVHpkRWFpQW1XbEF3VGkzeFd6Z3ZKMHdpSVNaa05IZ3RIRk0zTjBJRjdUZisyMFZXUXk4bk9rNENKVHh0U1R4V1ZSTVRXQk1STnpZME9TTklPS1VIQXlRNExoZ1FUQlFiVUNZcVVraEdQMC9RQWdRMkx5b21Sa1lBQVAvL0FEVC9FQUhLQWlVQ0pnQkdBQUFBQndCNkFMUUFBUC8vQURULzlnSUxBdjRDSmdCSUFBQUFCZ0JEWkFBQUFQLy9BRFQvOWdJTEF2NENKZ0JJQUFBQUJ3QjJBTE1BQVAvL0FEVC85Z0lMQXY0Q0pnQklBQUFBQmdGS1JBQUFBUC8vQURULzlnSUxBdUFDSmdCSUFBQUFCZ0JxK2dBQUFQLy8vL01BQUFEVUF2NENKZ2dxQUFBQUJnQkR5d0FBQVAvL0FFTUFBQUVrQXY0Q0pnZ3FBQUFBQmdCMkd3QUFBUC8vLzlRQUFBRS9BdjRDSmdncUFBQUFCZ0ZLckFBQUFQLy8vL01BQUFFY0F1QUNKZ2dxQUFBQUJ3QnEvMklBQUFBQ0FEVC85Z0l1QXYwQUhnQXFBRFpBTXhVQkFnRUJTaDRjR3hvWkJnVUVBd2tCU0FBQkJBRUNBd0VDWndBREF3QmZBQUFBaXdCTUlCOG1KQjhxSUNvbEt3VU5GaXNURmhZWE54Y0hGaFlWRkFZaklpWW1OVFEyTXpJWE55WW1Kd2NuTnlZbkV5SUdGUlFXTXpJMk5UUW0yaUZCSEhJcFhrWlRpWFpKY2tDQWEya3RCQkU4SjN3cWFTZ3RmazFFUkUxTVJVY0MvUThrRkVNOE4wQzVlWTJSTzIxTmNZRTNBalJYSTBrOVBSc1gvdEZTVUVaWlhWZzVVd0FBLy84QVV3QUFBaVlDNVFJbUFGRUFBQUFHQVZGVkFBQUEvLzhBTlAvMkFpNEMvZ0ltQUZJQUFBQUdBRU4wQUFBQS8vOEFOUC8yQWk0Qy9nSW1BRklBQUFBSEFIWUF4QUFBLy84QU5QLzJBaTRDL2dJbUFGSUFBQUFHQVVwVkFBQUEvLzhBTlAvMkFpNEM1UUltQUZJQUFBQUdBVkZMQUFBQS8vOEFOUC8yQWk0QzRBSW1BRklBQUFBR0FHb0xBQUFBQUFNQU1BQjFBZ3NDU3dBTEFBOEFHd0JCUUQ0QUFRWUJBQUlCQUdjQUFnY0JBd1VDQTJVQUJRUUVCVmNBQlFVRVh3Z0JCQVVFVHhFUURBd0JBQmNWRUJzUkd3d1BEQThPRFFjRkFBc0JDd2tORkNzQklpWTFORFl6TWhZVkZBWUZOU0VWQnlJbU5UUTJNeklXRlJRR0FSMFpJeU1aR0NNai92c0IyKzRaSXlNWkdDTWpBY29lSXlRY0hDUWpIcEpSVWNNZklpUWNIQ1FpSHdBQUFBTUFOUC9lQWk0Q053QVdBQjhBSndBOFFEa1VFeEVEQWdFakloc2FCQU1DQ0FjRkF3QURBMG9TQVFGSUJnRUFSd0FDQWdGZkFBRUJqVXNBQXdNQVh3QUFBSXNBVENZdEtTSUVEUmdyQVJRR0l5SW5CeWMzSmlZMU5EWXpNaFlYTnhjSEZoWUZGQllYRXlZaklnWUZOQ2NERmpNeU5nSXVpblZGT0NVL0tTQWppSFlrUUJ3a1B5Z2VJLzV6Q1F2SUh5NUxSQUVnRXNnZUxFdEZBUTZHa2g0Mktqc2taa0dHa1JFUU15bzRKR05BSWpvV0FSMFVZMXhBTFA3bEVtWUEvLzhBVHYvMkFpTUMvZ0ltQUZnQUFBQUdBRU4rQUFBQS8vOEFUdi8yQWlNQy9nSW1BRmdBQUFBSEFIWUF6Z0FBLy84QVR2LzJBaU1DL2dJbUFGZ0FBQUFHQVVwZkFBQUEvLzhBVHYvMkFpTUM0QUltQUZnQUFBQUdBR29WQUFBQS8vOEFBZjhRQWc4Qy9nSW1BRndBQUFBSEFIWUFtd0FBQUFJQVUvOFFBamdDK0FBWUFDVUFOVUF5RWdFRUF3WUJBQVVDU2dBQ0FvUkxBQVFFQTE4QUF3T05Td0FGQlFCZkFBQUFpMHNBQVFHSEFVd2xKQ2NSRnlJR0RSb3JBUlFHSXlJbUp5TVdGaFVWSXhFekZSUUdCek0yTmpNeUZnYzBKaU1pQmdjVkZCWXpNallDT0haaVBrNFhCZ0VGYW1vREFRVVdUajVoZDIwL1JFdytBVHhRUXo4QkRvbVBMQjhOTlJEZkEraldFVEVOSWpDT2gxOWZWbGNTWG1SbEFBQUEvLzhBQWY4UUFnOEM0QUltQUZ3QUFBQUdBR3JpQUFBQS8vOEFBQUFBQW8wRFhRSW1BQ1FBQUFFSEFVd0FoQUN2QUFpeEFnR3dyN0F6S3dBQS8vOEFMZi8yQWU0Q3JnSW1BRVFBQUFBR0FVeGRBQUFBLy84QUFBQUFBbzBEbkFJbUFDUUFBQUVIQVUwQWZBQ3ZBQWl4QWdHd3I3QXpLd0FBLy84QUxmLzJBZTRDN1FJbUFFUUFBQUFHQVUxVkFBQUEvLzhBQVA4ZUFvMEN6UUltQUNRQUFBQUhBVkFCc1FBQS8vOEFMZjhlQWdRQ0pRSW1BRVFBQUFBSEFWQUJMUUFBLy84QVBQLzJBbGtEclFJbUFDWUFBQUVIQUhZQkRnQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QU5QLzJBY29DL2dJbUFFWUFBQUFIQUhZQXNBQUEvLzhBUFAvMkFsa0RyUUltQUNZQUFBRUhBVW9BbndDdkFBaXhBUUd3cjdBekt3QUEvLzhBTlAvMkFkUUMvZ0ltQUVZQUFBQUdBVXBCQUFBQS8vOEFQUC8yQWxrRGx3SW1BQ1lBQUFFSEFVNEJHUUN2QUFpeEFRR3dyN0F6S3dBQS8vOEFOUC8yQWNvQzZBSW1BRVlBQUFBSEFVNEF1d0FBLy84QVBQLzJBbGtEclFJbUFDWUFBQUVIQVVzQW5nQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QU5QLzJBZE1DL2dJbUFFWUFBQUFHQVV0QUFBQUEvLzhBWHdBQUFxRURyUUltQUNjQUFBRUhBVXNBandDdkFBaXhBZ0d3cjdBekt3QUEvLzhBTlAvMkFzVUMrQUltQUVjQUFBQUhBaWNCaGdBQS8vOEFIQUFBQXFFQ3lnSUdBSklBQUFBQ0FEVC85Z0psQXZnQUhnQXJBSjVMc0JsUVdFQUtDUUVKQVJzQkFBZ0NTaHRBQ2drQkNRRWJBUWNJQWtwWlM3QVpVRmhBSndVQkF3WUJBZ0VEQW1VQUJBU0VTd0FKQ1FGZkFBRUJoVXNMQVFnSUFGOEhDZ0lBQUlzQVRCdEFLd1VCQXdZQkFnRURBbVVBQkFTRVN3QUpDUUZmQUFFQmhVc0FCd2VEU3dzQkNBZ0FYd29CQUFDTEFFeFpRQjhnSHdFQUp5VWZLeUFyR2hrWUZ4WVZGQk1TRVJBUEJ3VUFIZ0VlREEwVUt3VWlKalUwTmpNeUZoY3pMZ0kxTlNNMU16VXpGVE1WSXhFakp5TUdCaWN5TmpjMU5DWWpJZ1lWRkJZQkRHSjJlR0U5VHhnR0FRUUR3OE5xVEV4VUVnUVhUaVJOUHdFOVVrRkNRZ3FLaDRxSkxpRUdJQ1VPTTB0V1ZrdjlxVWdpTUZkVVZSQmNZV1ZaV1YvLy93QmZBQUFCOFFOZEFpWUFLQUFBQVFjQlRBQnVBSzhBQ0xFQkFiQ3ZzRE1yQUFELy93QTAvL1lDQ3dLdUFpWUFTQUFBQUFZQlRGOEFBQUQvL3dCZkFBQUI4UU9jQWlZQUtBQUFBUWNCVFFCbUFLOEFDTEVCQWJDdnNETXJBQUQvL3dBMC8vWUNDd0x0QWlZQVNBQUFBQVlCVFZZQUFBRC8vd0JmQUFBQjhRT1hBaVlBS0FBQUFRY0JUZ0RPQUs4QUNMRUJBYkN2c0RNckFBRC8vd0EwLy9ZQ0N3TG9BaVlBU0FBQUFBY0JUZ0MrQUFELy93QmYveDRCOFFMS0FpWUFLQUFBQUFjQlVBRVhBQUFBQWdBMC94NENDd0lsQUNnQUx3Q0JRQk1sQVFVRUpoQUNBZ1VHQVFBQ0J3RUJBQVJLUzdBa1VGaEFLQUFIQUFRRkJ3UmxDQUVHQmdOZkFBTURqVXNBQlFVQ1h3QUNBb3RMQUFBQUFWOEFBUUdIQVV3YlFDVUFCd0FFQlFjRVpRQUFBQUVBQVdNSUFRWUdBMThBQXdPTlN3QUZCUUpmQUFJQ2l3Sk1XVUFSS2lrdExDa3ZLaThpRXlZbUpTSUpEUm9yQlJRV016STJOeFVHQmlNaUpqVTBOamNHSXlJbUpqVTBOall6TWhZVkZTRVdGak15TmpjVkJnWURJZ1lITXlZbUFZd1lFeEVaQ1E4ZkZEYzJLQnNkSkU1NFF6MXRTV3A2L3BZQ1UwczBVU3M4S1dVNVJRYitBVHR6RmhVRkFrRUVCalV1SWo4WEF6NTZXMXQrUTROeE9sTllFeE5ZTWo0Q0tVcEVQMDhBQVAvL0FGOEFBQUh4QTYwQ0pnQW9BQUFCQndGTEFGTUFyd0FJc1FFQnNLK3dNeXNBQVAvL0FEVC85Z0lMQXY0Q0pnQklBQUFBQmdGTFF3QUFBUC8vQUR6LzlnS0xBNjBDSmdBcUFBQUJCd0ZLQUxnQXJ3QUlzUUVCc0srd015c0FBUC8vQURUL0VBSVpBdjRDSmdCS0FBQUFCZ0ZLVWdBQUFQLy9BRHovOWdLTEE1d0NKZ0FxQUFBQkJ3Rk5BTWtBcndBSXNRRUJzSyt3TXlzQUFQLy9BRFQvRUFJWkF1MENKZ0JLQUFBQUJnRk5aQUFBQVAvL0FEei85Z0tMQTVjQ0pnQXFBQUFCQndGT0FUSUFyd0FJc1FFQnNLK3dNeXNBQVAvL0FEVC9FQUlaQXVnQ0pnQktBQUFBQndGT0FNd0FBUC8vQUR6L0l3S0xBdFFDSmdBcUFBQUFCd3lKQUpnQUFQLy9BRFQvRUFJWkF2NENKZ0JLQUFBQUJnSXBOUUFBQVAvL0FGOEFBQUtNQTYwQ0pnQXJBQUFCQndGS0FKc0Fyd0FJc1FFQnNLK3dNeXNBQVAvLy85VUFBQUltQTlzQ0pnQkxBQUFCQndGSy82MEEzUUFJc1FFQnNOMndNeXNBQUFBQ0FBQUFBQUxyQXNvQUV3QVhBRHRBT0FVREFnRUxCZ0lBQ2dFQVpRQUtBQWdIQ2dobEJBRUNBb0pMREFrQ0J3ZURCMHdBQUJjV0ZSUUFFd0FURVJFUkVSRVJFUkVSRFEwZEt6TVJJelV6TlRNVklUVXpGVE1WSXhFakVTRVJFU0UxSVY5Zlgyd0JWV3hmWDJ6K3F3RlYvcXNDQzA5d2NIQndULzMxQVViK3VnR2lhUUFCQUFjQUFBSW1BdmdBSGdCbXRRZ0JCQUlCU2t1d0psQllRQ0VIQVFBR0FRRUNBQUZsQ1FFSUNJUkxBQVFFQWw4QUFnS0ZTd1VCQXdPREEwd2JRQjhIQVFBR0FRRUNBQUZsQUFJQUJBTUNCR2NKQVFnSWhFc0ZBUU1EZ3dOTVdVQVJBQUFBSGdBZUVSRVRJaE1uRVJFS0RSd3JFeFV6RlNNVkZBWUhNelkyTXpJV0ZSRWpFVFFqSWdZVkZTTVJJelV6TmIzRHd3UUNCeHBYTkY5a2FXOVRQbXBNVEFMNFYwdEFHakFRS1NsZWFQNjRBVGwrWTF2NUFsWkxWd0FBQVAvLy8vUUFBQUZ1QTVRQ0pnQXNBQUFCQndGUi84d0Fyd0FJc1FFQnNLK3dNeXNBQVAvLy84b0FBQUZFQXVVQ0pnZ3FBQUFBQmdGUm9nQUFBUC8vQUJnQUFBRkxBMTBDSmdBc0FBQUJCd0ZNLy9BQXJ3QUlzUUVCc0srd015c0FBUC8vLys0QUFBRWhBcTRDSmdncUFBQUFCZ0ZNeGdBQUFQLy9BQThBQUFGY0E1d0NKZ0FzQUFBQkJ3Rk4vK2NBcndBSXNRRUJzSyt3TXlzQUFQLy8vK1lBQUFFekF1MENKZ2dxQUFBQUJnRk52Z0FBQVAvL0FDYi9IZ0U3QXNvQ0pnQXNBQUFBQmdGUVlnQUFBUC8vQUNEL0hnRFBBdWdDSmdCTUFBQUFCZ0ZRK0FBQUFQLy9BQ1lBQUFFN0E1Y0NKZ0FzQUFBQkJ3Rk9BRkFBcndBSXNRRUJzSyt3TXlzQUFQLy9BQ2IvUEFJcEFzb0FKZ0FzQUFBQUJ3QXRBV0lBQVAvL0FFei9FQUhWQXVnQUpnQk1BQUFBQndCTkFSQUFBUC8vLzdQL1BBRkpBNjBDSmdBdEFBQUJCd0ZLLzdZQXJ3QUlzUUVCc0srd015c0FBUC8vLzhiL0VBRS9BdjRDSmdnc0FBQUFCZ0ZLckFBQUFQLy9BRi8vSXdKNEFzb0NKZ0F1QUFBQUJneUpXUUFBQVAvL0FGUC9Jd0lwQXZnQ0pnQk9BQUFBQmd5SklRQUFBQUFCQUZNQUFBSXBBaHNBRWdBbVFDTU5CUVFCQkFBQ0FVb0VBd0lDQW9WTEFRRUFBSU1BVEFBQUFCSUFFaEVURWdVTkZ5c0JCeE1qSndjVkl4RXpGUlFHQnpNMk5qYzNBaHJQM255cFJHMXRBd0lDREJrTHN3SWI4ZjdXNkRPMUFodU1KVWdXRHg4TzB3QUFBUC8vQUU0QUFBSDhBNjBDSmdBdkFBQUJCd0IyQUNZQXJ3QUlzUUVCc0srd015c0FBUC8vQUVNQUFBRWtBOXNDSmdCUEFBQUJCd0IyQUJzQTNRQUlzUUVCc04yd015c0FBUC8vQUYvL0l3SDhBc29DSmdBdkFBQUFCZ3lKT0FBQUFQLy9BRVAvSXdET0F2Z0NKZ0JQQUFBQUJneUprZ0FBQVAvL0FGOEFBQUlGQXNvQ0pnQXZBQUFCQndJbkFNYi8wZ0FKc1FFQnVQL1NzRE1yQVAvL0FGTUFBQUZyQXZnQ0pnQlBBQUFBQmdJbkxBQUFBUC8vQUY4QUFBSDhBc29DSmdBdkFBQUJCd0ZPQVN2K3hRQUpzUUVCdVA3RnNETXJBUC8vQUZNQUFBRlhBdmdBSmdCUEFBQUJCd0ZPQUxmKzBBQUpzUUVCdVA3UXNETXJBQUFCQUFrQUFBSDhBc29BRFFBc1FDa0tDUWdIQkFNQ0FRZ0JBQUZLQUFBQWdrc0FBUUVDWGdNQkFnS0RBa3dBQUFBTkFBMFZGUVFORmlzek5RY25OeEV6RVRjWEJ4VWhGVjh0S1Zac2RTcWZBVEgxR2tjekFYWCt6RVZJWHRoZEFBQUIvL1lBQUFFYUF2Z0FDd0FtUUNNS0NRZ0hCQU1DQVFnQkFBRktBQUFBaEVzQ0FRRUJnd0ZNQUFBQUN3QUxGUU1ORlNzekVRY25OeEV6RVRjWEJ4Rk9MaXBZYWpjcllnRU9IVVk0QVluK3VpVkdRUDZ2QUFELy93QmZBQUFDcVFPdEFpWUFNUUFBQVFjQWRnRVhBSzhBQ0xFQkFiQ3ZzRE1yQUFELy93QlRBQUFDSmdMK0FpWUFVUUFBQUFjQWRnRE9BQUQvL3dCZi95TUNxUUxLQWlZQU1RQUFBQWNNaVFDTkFBRC8vd0JUL3lNQ0pnSWxBaVlBVVFBQUFBWU1pVVFBQUFELy93QmZBQUFDcVFPdEFpWUFNUUFBQVFjQlN3Q25BSzhBQ0xFQkFiQ3ZzRE1yQUFELy93QlRBQUFDSmdMK0FpWUFVUUFBQUFZQlMxNEFBQUQvL3dBQkFBQUNlUUxLQUNZQVVWTUFBQVlDQnZVQUFBQUFBUUJmL3p3Q3FRTEtBQjRBTmtBekNRRUNBd01CQVFJQ0FRQUJBMG9BQVFVQkFBRUFZd1FCQXdPQ1N3QUNBb01DVEFFQUd4b1RFaEVRQndVQUhnRWVCZzBVS3dVaUp6VVdGak15TmpjQkl4NENGUkVqRVRNQk15NENOUkV6RVJRR0FlRXpIeEVtRnlzK0FmNTJCQUVFQTJLQ0FXZ0RBUU1EWkczRURWZ0ZCUzA5QWtBTlJsWWsvb3dDeXYzckQwTlJKQUZPL1RwbllRQUJBRlAvRUFJbkFpVUFId0J0UUE0VkFRSUVCQUVCQXdNQkFBRURTa3V3R1ZCWVFCd0FBZ0lFWHdVQkJBU0ZTd0FEQTROTEFBRUJBRjhHQVFBQWh3Qk1HMEFnQUFRRWhVc0FBZ0lGWHdBRkJZMUxBQU1EZzBzQUFRRUFYd1lCQUFDSEFFeFpRQk1CQUJvWUZCTVNFUTRNQ0FZQUh3RWZCdzBVS3dVaUppYzFGaFl6TWpZMUVUUWpJZ1lWRVNNUk14Y3pOall6TWhZVkVSUUdBWTBYS0EwTkhSRWNKVzVUUDJwVUR3Y2FXVFJlWlVud0J3VlZCUVVqTVFHWmVtSmIvdThDRzBncUtGMW8vbFpMVy8vL0FEei85Z0xWQTEwQ0pnQXlBQUFCQndGTUFNY0Fyd0FJc1FJQnNLK3dNeXNBQVAvL0FEVC85Z0l1QXE0Q0pnQlNBQUFBQmdGTWJ3QUFBUC8vQUR6LzlnTFZBNXdDSmdBeUFBQUJCd0ZOQUw4QXJ3QUlzUUlCc0srd015c0FBUC8vQURULzlnSXVBdTBDSmdCU0FBQUFCZ0ZOWndBQUFQLy9BRHovOWdMVkE2MENKZ0F5QUFBQkJ3RlNBTjhBcndBSXNRSUNzSyt3TXlzQUFQLy9BRFQvOWdJdUF2NENKZ0JTQUFBQUJ3RlNBSWNBQUFBQ0FEei85Z055QXRVQUZ3QWpBTkJBQ2lFQkF3SWdBUVVFQWtwTHNCVlFXRUFqQUFNQUJBVURCR1VMQ0FJQ0FnQmZBUW9DQUFDS1N3a0JCUVVHWHdjQkJnYURCa3diUzdBWlVGaEFPQUFEQUFRRkF3UmxDd2dDQWdJQVh3b0JBQUNLU3dzSUFnSUNBVjBBQVFHQ1N3QUZCUVpmQndFR0JvTkxBQWtKQmw4SEFRWUdnd1pNRzBBekFBTUFCQVVEQkdVTEFRZ0lBRjhLQVFBQWlrc0FBZ0lCWFFBQkFZSkxBQVVGQmwwQUJnYURTd0FKQ1FkZkFBY0hpd2RNV1ZsQUh4a1lBUUFmSFJnakdTTVJEdzBNQ3dvSkNBY0dCUVFEQWdBWEFSY01EUlFyQVRJWElSVWhGU0VWSVJVaEZTRUdCaU1pSmlZMU5EWTJGeUlHRlJRV016STNFU1ltQVlBMkxnR08vdVFCQ2Y3M0FSeitkaFkyR1crUlIwZVBkSEJxYVhBNkxCUTFBdFVMWE14YjZsMEVCbHltYjIra1cxMlNnSUNVRWdJRENRZ0FBQU1BTS8vMkE0b0NKQUFnQUNjQU13Q3RTN0F0VUZoQUR4OEJCd1lTQ3dJQ0FRd0JBd0lEU2h0QUR4OEJCd2dTQ3dJQ0FRd0JBd0lEU2xsTHNDMVFXRUFrQUFjQUFRSUhBV1VNQ0FzREJnWUFYd1VLQWdBQWpVc0pBUUlDQTE4RUFRTURpd05NRzBBdkFBY0FBUUlIQVdVTEFRWUdBRjhGQ2dJQUFJMUxEQUVJQ0FCZkJRb0NBQUNOU3drQkFnSURYd1FCQXdPTEEweFpRQ01wS0NJaEFRQXZMU2d6S1RNbEpDRW5JaWNkR3hZVUVBNEpCd1VFQUNBQklBME5GQ3NCTWhZVkZTRVdGak15TmpjVkJnWWpJaVluQmdZaklpWW1OVFEyTXpJV0Z6WVhJZ1lITXpRbUJTSUdGUlFXTXpJMk5UUW1BcWRxZWY2YUFsQktORklxS1ZFNVEyZ2hJR1ZBU0hCQmhuVTlZeDlCZVRkRUJ2azYva1pKUVVOSlNFTkVBaVNDY1RwWFZCTVRXQk1STWpNeU0wRjlXb2FRTWpKa1VrZEdQMDRGWUY5ZlltRmVZbDhBQVAvL0FGOEFBQUp2QTYwQ0pnQTFBQUFCQndCMkFOSUFyd0FJc1FJQnNLK3dNeXNBQVAvL0FGTUFBQUdZQXY0Q0pnQlZBQUFBQndCMkFJY0FBUC8vQUYvL0l3SnZBc29DSmdBMUFBQUFCZ3lKV2dBQUFQLy9BRUgvSXdHWUFpVUNKZ0JWQUFBQUJneUprQUFBQVAvL0FGOEFBQUp2QTYwQ0pnQTFBQUFCQndGTEFHSUFyd0FJc1FJQnNLK3dNeXNBQVAvL0FEOEFBQUdxQXY0Q0pnQlZBQUFBQmdGTEZ3QUFBUC8vQURMLzlnSDVBNjBDSmdBMkFBQUJCd0IyQUxBQXJ3QUlzUUVCc0srd015c0FBUC8vQURILzlnRzVBdjRDSmdCV0FBQUFCd0IyQUlZQUFQLy9BREwvOWdINUE2MENKZ0EyQUFBQkJ3RktBRUVBcndBSXNRRUJzSyt3TXlzQUFQLy9BREgvOWdHNUF2NENKZ0JXQUFBQUJnRktGd0FBQVAvL0FETC9FQUg1QXRRQ0pnQTJBQUFBQndCNkFKd0FBUC8vQURIL0VBRzVBaVVDSmdCV0FBQUFCd0I2QUlvQUFQLy9BREwvOWdINUE2MENKZ0EyQUFBQkJ3RkxBRUFBcndBSXNRRUJzSyt3TXlzQUFQLy9BREgvOWdHNUF2NENKZ0JXQUFBQUJnRkxGZ0FBQVAvL0FBMy9Jd0lsQXNvQ0pnQTNBQUFBQmd5Skl3QUFBUC8vQUJML0l3Rm1BcFFDSmdCWEFBQUFCZ3lKNXdBQUFQLy9BQTBBQUFJbEE2MENKZ0EzQUFBQkJ3RkxBRHdBcndBSXNRRUJzSyt3TXlzQUFQLy9BQkwvOWdIMEF2Z0NKZ0JYQUFBQUJ3SW5BTFVBQUFBQkFBMEFBQUlsQXNvQUR3QXZRQ3dGQVFFR0FRQUhBUUJsQkFFQ0FnTmRBQU1EZ2tzSUFRY0hnd2RNQUFBQUR3QVBFUkVSRVJFUkVRa05HeXN6RVNNMU16VWpOU0VWSXhVekZTTVI0NDJOMWdJWTFveU1BVHRaMkY1ZTJGbit4UUFCQUJMLzlnRm1BcFFBSHdCSlFFWUZBUUVERmdFSEJoY0JDQWNEU2dBQ0F3S0RCUUVBQ2drQ0JnY0FCbVVFQVFFQkExMEFBd09GU3dBSEJ3aGZBQWdJaXdoTUFBQUFId0FmSkNNUkVSRVJFeEVSQ3cwZEt4TTFNelVqTlRjM014VXpGU01WTXhVakZSUVdNekkzRlFZR0l5SW1KalUxR2tOTFR5VkJtcHFQanlzakxTUVJPaDBzU1N3QkRVdHlNQ2h5ZVZGeVMyc3NLZzFRQ0FzZVNrSnRBQUFBLy84QVdmLzJBb2tEbEFJbUFEZ0FBQUVIQVZFQWpBQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QVR2LzJBaU1DNVFJbUFGZ0FBQUFHQVZGVkFBQUEvLzhBV2YvMkFva0RYUUltQURnQUFBRUhBVXdBc0FDdkFBaXhBUUd3cjdBekt3QUEvLzhBVHYvMkFpTUNyZ0ltQUZnQUFBQUdBVXg1QUFBQS8vOEFXZi8yQW9rRG5BSW1BRGdBQUFFSEFVMEFwd0N2QUFpeEFRR3dyN0F6S3dBQS8vOEFUdi8yQWlNQzdRSW1BRmdBQUFBR0FVMXhBQUFBLy84QVdmLzJBb2tENWdJbUFEZ0FBQUVIQVU4QTJnQ3ZBQWl4QVFLd3I3QXpLd0FBLy84QVR2LzJBaU1ETndJbUFGZ0FBQUFIQVU4QW93QUEvLzhBV2YvMkFva0RyUUltQURnQUFBRUhBVklBeUFDdkFBaXhBUUt3cjdBekt3QUEvLzhBVHYvMkFqY0MvZ0ltQUZnQUFBQUhBVklBa1FBQUFBRUFXZjhlQW9rQ3lnQWtBRnBBRGc4QkFnUUdBUUFDQndFQkFBTktTN0FrVUZoQUd3VUJBd09DU3dBRUJBSmZBQUlDaTBzQUFBQUJYd0FCQVljQlRCdEFHQUFBQUFFQUFXTUZBUU1EZ2tzQUJBUUNYd0FDQW9zQ1RGbEFDUk1pRXlVbElnWU5HaXNGRkJZek1qWTNGUVlHSXlJMU5EWTNCaU1pSmpVUk14RVVNekkyTlJFekVSUUdCd1lHQWRnWUV4RVpDQTRmRlcwZUZTTW9pSTFzcmxwUmF5MHVMU2xwSEJrRkFrRUVCbXdmT3hrSGtYY0J6UDQ1c1dCU0FjYitNajlySkRCR0FBRC8vd0JPL3g0Q0pnSWJBaVlBV0FBQUFBY0JVQUZQQUFELy93QUlBQUFEcEFPdEFpWUFPZ0FBQVFjQlNnRDdBSzhBQ0xFQkFiQ3ZzRE1yQUFELy93QUxBQUVESEFMK0FpWUFXZ0FBQUFjQlNnQzNBQUQvL3dBQUFBQUNSd090QWlZQVBBQUFBUWNCU2dCSUFLOEFDTEVCQWJDdnNETXJBQUQvL3dBQi94QUNEd0wrQWlZQVhBQUFBQVlCU2l3QUFBRC8vd0FBQUFBQ1J3T1BBaVlBUEFBQUFRY0Fhdi85QUs4QUNMRUJBckN2c0RNckFBRC8vd0FpQUFBQ0d3T3RBaVlBUFFBQUFRY0FkZ0MzQUs4QUNMRUJBYkN2c0RNckFBRC8vd0FqQUFBQnR3TCtBaVlBWFFBQUFBY0FkZ0NCQUFELy93QWlBQUFDR3dPWEFpWUFQUUFBQVFjQlRnRENBSzhBQ0xFQkFiQ3ZzRE1yQUFELy93QWpBQUFCdHdMb0FpWUFYUUFBQUFjQlRnQ01BQUQvL3dBaUFBQUNHd090QWlZQVBRQUFBUWNCU3dCR0FLOEFDTEVCQWJDdnNETXJBQUQvL3dBakFBQUJ0d0wrQWlZQVhRQUFBQVlCU3hFQUFBQUFBUUJUQUFBQmR3TDlBQThBUjBBS0RBRUFBZzBCQVFBQ1NrdXdKbEJZUUJFREFRQUFBbDhBQWdLRVN3QUJBWU1CVEJ0QUR3QUNBd0VBQVFJQVp3QUJBWU1CVEZsQURRRUFDZ2dGQkFBUEFROEVEUlFyQVNJR0ZSRWpFVFEyTXpJV0Z3Y21KZ0VOSnlscVkxSWtOeFFiRUNrQ3B6QTEvYjRDUkdkU0RRZFJCUW9BQUFBQUFRQmUveEFDQWdMVUFDTUFUa0JMQXdFQkFCOEVBZ0lCSGdFREFoVUJCUU1VQVFRRkJVb0FBZ1lCQXdVQ0EyVUFBUUVBWHdjQkFBQ0tTd0FGQlFSZkFBUUVod1JNQVFBZEhCa1hFeEVPRFF3TENBWUFJd0VqQ0EwVUt3RXlGaGNISmlZaklnWVZGVE1WSXhFVUJpTWlKelVXRmpNeU5qVVJJelUzTlRRMk5nR1RKRGNVR2hBbUZpY2tnSDVWVmlvZ0R4MFJKU2RpWWlsTkF0UU9DRkFGQ3l3ME8xSCtMMXRXQ2xZRUJTazRBY295SVRwRlR5RUFBQVFBQUFBQUFvOER2Z0FLQUJ3QUtBQXlBRnRBV0FFQkFRQXVGd3dEQ0FZQ1NnQUFBUUNEQ1FFQkFnR0RDd0VHQndnSEJnaCtBQUlBQndZQ0IyY0FDQUFFQXdnRVpnb0ZBZ01EZ3dOTUhoMExDd0FBS2lra0loMG9IaWdMSEFzY0d4b1pHQklRQUFvQUNoUU1EUlVyQVRVMk5qY3pGUTRDQndFVEpqVTBOak15RmhVVUJnY1RJeWNoQnhNeU5qVTBKaU1pQmhVVUZnTXpKeVltSnc0Q0J3RVRGVEFRZkFveE9SYitwdjRwUHpJd1F4WVMvbkpKL3VORzFSZ2RIaGNYSHh4VjRVa0lHUWNGRHc4RUEwVUpGa0FhQnc0ckt3Nzh1d0pxSERnME9Ua3pIU29OL1pXM3R3S0pHeG9hSEJ3YUdSeitqTHNVUlJvUkxpb0xBQVVBTGYvMkFlNER2Z0FLQUJZQUlnQStBRWtBeGtBT1BBRUtCanNCQ1FvcEFRd0xBMHBMc0JsUVdFQThEUUVCQUFHREFBQUNBSU1PQVFJUEFRUUZBZ1JuQUFVQUF3WUZBMmdBQ1FBTERBa0xaUUFLQ2daZkVBRUdCbzFMQUF3TUIxOElBUWNIZ3dkTUcwQkFEUUVCQUFHREFBQUNBSU1PQVFJUEFRUUZBZ1JuQUFVQUF3WUZBMmdBQ1FBTERBa0xaUUFLQ2daZkVBRUdCbzFMQUFjSGcwc0FEQXdJWHdBSUNJc0lURmxBTENRakdCY01Dd0FBUjBWQlB6azNOREl1TENnbkl6NGtQaDRjRnlJWUloSVFDeFlNRmdBS0FBb1ZFUTBWS3dFVkRnSUhJelUyTmpjSE1oWVZGQVlqSWlZMU5EWVhJZ1lWRkJZek1qWTFOQ1lITWhZVkVTTW5Jd1lHSXlJbU5UUTJOemMxTkNZaklnWUhKelkyRXdjR0JoVVVGak15TmpVQnlRczRRQlpLRlRBUUdERkNRakV5UGo0eUZ4NGNHUmNmSHhabFpVc1ZCQ05OUkVsZ2ZZQmNOakVwVENNaUptT1hTRnhITWlnK1V3TytCZ3drSkF3SUV6VVdqVGt5TkRvNU5ETTVOeHdaR1IwZEdSa2MxVmxmL3BOTExDbFBWRk5WQkFNZU96RVlFVTBVRy83ZUFnUTJMeW9tUmtZQUFQLy8vLzhBQUFOS0E2MENKZ0NJQUFBQkJ3QjJBWVFBcndBSXNRSUJzSyt3TXlzQUFQLy9BQzMvOWdNL0F2NENKZ0NvQUFBQUJ3QjJBVklBQVAvL0FEei8zUUxWQTYwQ0pnQ2FBQUFCQndCMkFSNEFyd0FJc1FNQnNLK3dNeXNBQVAvL0FEVC8zZ0l1QXY0Q0pnQzZBQUFBQndCMkFNVUFBUC8vQURML0l3SDVBdFFDSmdBMkFBQUFCZ3lKRGdBQUFQLy9BREgvSXdHNUFpVUNKZ0JXQUFBQUJneUovQUFBQUFBQkFDZ0NYZ0dUQXY0QUVnQXBzUVprUkVBZURna0VBd0FDQVVvREFRSUFBb01CQVFBQWRBQUFBQklBRWhZVkJBMFdLN0VHQUVRQkhnSVhGU01tSmljR0JnY2pOVDRDTndFV0RTMHdFMGthT2hvYk54cElFakFzRGdMK0ZqYzFFZ3dRTGhzYkxoQU1FelEzRmdBQkFDZ0NYZ0dUQXY0QUVnQXBzUVprUkVBZURna0VBd0lBQVVvQkFRQUNBSU1EQVFJQ2RBQUFBQklBRWhZVkJBMFdLN0VHQUVRVExnSW5OVE1XRmhjMk5qY3pGUTRDQjZRT0xEQVNTQm80R2hvNkdra1RNQzBOQWw0V05qUVREUkV1R3hzdkVBMFRNemNXQUFBQkFDZ0NYZ0ZiQXE0QUF3QW5zUVprUkVBY0FnRUJBQUFCVlFJQkFRRUFYUUFBQVFCTkFBQUFBd0FERVFNTkZTdXhCZ0JFQVJVaE5RRmIvczBDcmxCUUFBQUFBQUVBS0FKZUFYVUM3UUFOQUM2eEJtUkVRQ01FQXdJQkFnR0RBQUlBQUFKWEFBSUNBRjhBQUFJQVR3QUFBQTBBRFNJU0lnVU5GeXV4QmdCRUFRWUdJeUltSnpNV0ZqTXlOamNCZFFWWlMwNVNCRDhFTmkwbVBBVUM3VUJQVGtFcEZSY25BQUFCQUNnQ2JnQ2dBdWdBQ3dBb3NRWmtSRUFkQWdFQUFRRUFWd0lCQUFBQlh3QUJBQUZQQVFBSEJRQUxBUXNERFJRcnNRWUFSQk15RmhVVUJpTWlKalUwTm1VWUl5TVlHU1FrQXVnY0lTQWRIU0FoSEFBQ0FDZ0NYZ0VMQXpjQUN3QVdBRG14Qm1SRVFDNEFBUUFEQWdFRFp3VUJBZ0FBQWxjRkFRSUNBRjhFQVFBQ0FFOE5EQUVBRXhFTUZnMFdCd1VBQ3dFTEJnMFVLN0VHQUVRVElpWTFORFl6TWhZVkZBWW5NalkxTkNZaklnWVZGSmt6UGo0ek1FSkJNUmNlSGhjWEh3SmVPVFF5T2preU5EbzNIUmtaSEJ3Wk5nQUFBQUFCQUNqL0hnRFhBQkFBRkFBc3NRWmtSRUFoQndFQkFBRktFaEVHQXdCSUFBQUJBUUJYQUFBQUFWOEFBUUFCVHlVaUFnMFdLN0VHQUVRWEZCWXpNalkzRlFZR0l5SW1OVFEyTmpjWEJnWjVGeFFRR2drUEh4UTNOaDB0RnpVaUkzTVdGUVVDUVFRR05TNGROaTBQRUNBMkFBQUFBQUVBS0FKZUFhSUM1UUFUQURTeEJtUkVRQ2tBQVFRREFWY0NBUUFBQkFNQUJHY0FBUUVEWHdZRkFnTUJBMDhBQUFBVEFCTWlJaEVpSWdjTkdTdXhCZ0JFRXpZMk16SVdGak15TnpNR0JpTWlKaVlqSWdjb0JqNHhIVFF3RmljT09RWTlNUncwTUJjcERRSmVRRVljR3poQVJoc2NPQUFBQUFJQUtBSmVBYVlDL2dBTEFCY0FQYkVHWkVSQU1oTU5Cd0VFQUFFQlNnVURCQU1CQUFBQlZRVURCQU1CQVFCZEFnRUFBUUJOREF3QUFBd1hEQmNTRVFBTEFBc1ZCZzBWSzdFR0FFUUJGUTRDQnlNMVBnSTNJeFVPQWdjak5UNENOd0dtQ2pNNkZ6c09JU0FMUndveU9oYzdEaUVmQ3dMK0NoSTVPUklNRXpRM0Znb1NPVGtTREJNME54WUFBUUQ0QWw0QmpnTWlBQXNBTGJFR1pFUkFJZ2NCQWdFQUFVb0FBQUVCQUZVQUFBQUJYUUlCQVFBQlRRQUFBQXNBQ3hVRENCVXJzUVlBUkJNMVBnSTNNeFVPQWdmNENCSU9BMnNIR3lNU0FsNE9HRUZER2dzWFFFVWRBQUFEQUg0Q2RBSE9BMFlBQ1FBVkFDRUFUN0VHWkVSQVJBRUJBZ0VHQVFBQ0Frb0lCQWNEQWdBREFsY0dBUUVBQUFNQkFHVUlCQWNEQWdJRFh3VUJBd0lEVHhjV0N3b0FBQjBiRmlFWElSRVBDaFVMRlFBSkFBa1VDUWdWSzdFR0FFUUJGUVlHQnlNMU5qWTNCeklXRlJRR0l5SW1OVFEyTXpJV0ZSUUdJeUltTlRRMkFZNFFOQjB4Q2hnR2NoVWVIaFVXSGg3L0ZSNGVGUmNjSEFOR0NpQlNKQXdlVkNKbUdSMGJHeHNiSFJrWkhSc2JHeHNkR1FELy93QUdBQUFDa3dMdkFDWUFKQVlBQVFjQlUvOFMvODBBQ2JFQ0Fiai96YkF6S3dELy93QkVBWmNBelFJbkF3WUFlUUIvQUFpeEFBR3dmN0F6S3dBQS8vOEFBQUFBQWs4Qzd3QW1BQ2hlQUFFSEFWUC9DUC9OQUFteEFRRzQvODJ3TXlzQS8vOEFBQUFBQXVvQzd3QW1BQ3RlQUFFSEFWUC9DUC9OQUFteEFRRzQvODJ3TXlzQS8vOEFBQUFBQWNRQzd3QW5BQ3dBaVFBQUFRY0JVLzhJLzgwQUNiRUJBYmovemJBekt3QUFBUC8vQUFELzlnTUhBdThBSmdBeU1nQUJCd0ZUL3dqL3pRQUpzUUlCdVAvTnNETXJBUC8vQUFBQUFBTHNBdThBSndBOEFLVUFBQUVIQVZQL0NQL05BQW14QVFHNC84MndNeXNBQUFELy8vLzdBQUFESGdMdkFDWUJkVEVBQVFjQlUvOEQvODBBQ2JFQkFiai96YkF6S3dELy8vL28vL1lCV1FOR0FpWUJoUUFBQUFjQlZQOXFBQUQvL3dBQUFBQUNqUUxOQWdZQUpBQUEvLzhBWHdBQUFsc0N5Z0lHQUNVQUFBQUJBRjhBQUFJQUFzb0FCUUE3UzdBeVVGaEFFUUFBQUFKZEF3RUNBamhMQUFFQk9RRk1HMEFSQUFFQUFZUUFBQUFDWFFNQkFnSTRBRXhaUUFzQUFBQUZBQVVSRVFRSUZpc0JGU0VSSXhFQ0FQN0xiQUxLWGYyVEFzb0FBQUlBRmdBQUFrVUN5d0FGQUE0QVRFQUxDZ0VDQVFRQkFnQUNBa3BMc0RKUVdFQVNBd0VCQVRoTEJBRUNBZ0JlQUFBQU9RQk1HMEFQQkFFQ0FBQUNBR0lEQVFFQk9BRk1XVUFRQmdZQUFBWU9CZzRBQlFBRkVnVUlGU3NCRXhVaE5STVRBeVltSndZR0J3TUJaOTc5MGQvZGZBd1hCZ2NXQzM0Q3kvMTBQMEFDaS8yU0FYVWlVUndjVUNIK2lRQUEvLzhBWHdBQUFmRUN5Z0lHQUNnQUFQLy9BQ0lBQUFJYkFzb0NCZ0E5QUFELy93QmZBQUFDakFMS0FnWUFLd0FBQUFNQVBQLzJBdFVDMVFBUEFCc0FId0F2UUN3R0FRVUFCQUlGQkdVQUF3TUJYd0FCQVVCTEFBSUNBRjhBQUFBNUFFd2NIQndmSEI4VEpDVW1Jd2NJR1NzQkZBWUdJeUltSmpVME5qWXpNaFlXQlJRV016STJOVFFtSXlJR0JSVWhOUUxWU3BSdWNaUklTSlJ5YnBOSy9kbHFjWEpvYUhGeWFnRnEvdUFCWm0rbFhGeW1iMjZsVzF1bGI0Q1VsSUNBa3BKTlhGd0FBQUQvL3dBbUFBQUJPd0xLQWdZQUxBQUEvLzhBWHdBQUFuZ0N5Z0lHQUM0QUFBQUJBQUFBQUFKc0Fzb0FEQUE2dFFZQkFBSUJTa3V3TWxCWVFBMERBUUlDT0VzQkFRQUFPUUJNRzBBTkFRRUFBZ0NFQXdFQ0FqZ0NURmxBQ3dBQUFBd0FEQmdSQkFnV0t3RVRJd01tSmljR0JnY0RJeE1CYi8xd2x3MGNCd2NhRFpkdy9BTEsvVFlCdkNkYUlpSmJKdjVFQXNvQS8vOEFYd0FBQXpjQ3lnSUdBREFBQVAvL0FGOEFBQUtwQXNvQ0JnQXhBQUFBQXdBa0FBQUNDd0xLQUFNQUJ3QUxBR1ZMc0RKUVdFQWdBQUlIQVFNRUFnTmxCZ0VCQVFCZEFBQUFPRXNBQkFRRlhRZ0JCUVU1QlV3YlFCMEFBZ2NCQXdRQ0EyVUFCQWdCQlFRRllRWUJBUUVBWFFBQUFEZ0JURmxBR2dnSUJBUUFBQWdMQ0FzS0NRUUhCQWNHQlFBREFBTVJDUWdWS3hNMUlSVUJOU0VWQVRVaEZUZ0J2LzVwQVcvK1ZRSG5BbTVjWFA3Wlcxdit1VjFkQUFELy93QTgvL1lDMVFMVkFnWUFNZ0FBQUFFQVh3QUFBbjhDeWdBSEFENUxzREpRV0VBU0FBSUNBRjBBQUFBNFN3UURBZ0VCT1FGTUcwQVNCQU1DQVFJQmhBQUNBZ0JkQUFBQU9BSk1XVUFNQUFBQUJ3QUhFUkVSQlFnWEt6TVJJUkVqRVNFUlh3SWdhLzYzQXNyOU5nSnQvWk1BQVAvL0FGOEFBQUl6QXNvQ0JnQXpBQUFBQVFBbEFBQUNKZ0xLQUJJQVZVQVFDd01DQVFBTUFnSUNBUUVCQXdJRFNrdXdNbEJZUUJZQUFRRUFYUUFBQURoTEFBSUNBMTBFQVFNRE9RTk1HMEFUQUFJRUFRTUNBMkVBQVFFQVhRQUFBRGdCVEZsQURBQUFBQklBRWtOQkZBVUlGeXN6TlJNbk5TRVZJeUlpSmljWEF6WTJNek1WSmVqaUFkN3pFQ3dxRGVEckpVb20rVmNCSHY1WFhRRUIrZjdrQVFKZC8vOEFEUUFBQWlVQ3lnSUdBRGNBQVAvL0FBQUFBQUpIQXNvQ0JnQThBQUFBQXdBeC8vWURBd0xVQUJjQUh3QW5BR3BMc0RKUVdFQWhCQUVBQ3drQ0JnY0FCbWNJQVFjREFRRUNCd0ZuQ2dFRkJUaExBQUlDT1FKTUcwQWhCQUVBQ3drQ0JnY0FCbWNJQVFjREFRRUNCd0ZuQ2dFRkJRSmRBQUlDT1FKTVdVQWFJQ0FBQUNBbklDY2lJUjhlR1JnQUZ3QVhGeEVSRnhFTUNCa3JBUlVlQWhVVURnSUhGU00xTGdNMU5EWTJOelVWRGdJVkZCWVhFeEUyTmpVMEppWUJ6WFdIT2g1SGQxcG5XM2hGSFR1SGMweFlKMkZxWjIxZkoxa0MxRmdDU25aSU1GNU9NQUp1YmdJeVQxMHVSbmRMQWxpd0FpNU9NMU5oQkFGcC9wY0VZMUUwVGkzLy93QURBQUFDWHdMS0FnWUFPd0FBQUFFQU5RQUFBd1FDeWdBYkFFNUxzREpRV0VBWUJnRUVBZ0VBQVFRQVp3Z0hCUU1EQXpoTEFBRUJPUUZNRzBBWUJnRUVBZ0VBQVFRQVp3QUJBUU5kQ0FjRkF3TURPQUZNV1VBUUFBQUFHd0FiRVJFVEZSRVJGUWtJR3lzQkZSUU9BaU1WSXpVaUxnSTFOVE1WRkJZekVUTVJNalkxTlFNRUhrWjNXbVpiZDBVZGFXSnBabWhpQXNyck4yQklLTmpZS1VoZk51enFYRklCbVA1b1VscnNBQUFCQUNNQUFBTHRBdFVBSVFCV3Rod0dBZ0VDQVVwTHNESlFXRUFZQmdFQUFBTmZBQU1EUUVzRUFRSUNBVjBGQVFFQk9RRk1HMEFWQkFFQ0JRRUJBZ0ZoQmdFQUFBTmZBQU1EUUFCTVdVQVRBUUFiR2hrWUVoQUtDUWdIQUNFQklRY0lGQ3NCSWdZVkZCWVhGU0UxTXlZbU5UUTJOak15RmhZVkZBWUhNeFVoTlRZMk5UUW1BWWh1YkVSWS90bXpRbGRPbFdocWswNVdRN1ArMkZoR2JRSjRlMjVnbVR0YlhTK2liR0NPVFUyTllHMmlMMTFiT3B0ZmJuc0EvLzhBSEFBQUFVVURqd0ltQUN3QUFBRUhBR3IvaXdDdkFBaXhBUUt3cjdBekt3QUEvLzhBQUFBQUFrY0Rqd0ltQUR3QUFBRUhBR3IvL1FDdkFBaXhBUUt3cjdBekt3QUEvLzhBTlAvMkFsOERJZ0ltQVgwQUFBQUdBVk1XQUFBQS8vOEFLdi8yQWRVRElnSW1BWUVBQUFBR0FWUDJBQUFBLy84QVUvOFFBaVlESWdJbUFZTUFBQUFHQVZNbkFBQUEvLzhBVWYvMkFWa0RJZ0ltQVlVQUFBQUhBVlAvYUFBQS8vOEFUUC8yQWprRFJnSW1BWkVBQUFBR0FWUVZBQUFBQUFJQU5QLzJBbDhDSlFBakFEQUFnRXV3R1ZCWVFBc0pBUVlCSUJvQ0FBTUNTaHRBQ3drQkJnSWdHZ0lBQXdKS1dVdXdHVkJZUUJvQUJnWUJYd0lCQVFGRFN3Z0ZBZ01EQUdBRUJ3SUFBRGtBVEJ0QUhnQUNBanRMQUFZR0FWOEFBUUZEU3dnRkFnTURBR0FFQndJQUFEa0FURmxBR1NVa0FRQXNLaVF3SlRBZUhCWVZEZzBIQlFBakFTTUpDQlFyQlNJbU5UUTJNeklXRnpNMk5qY3pEZ0lWRlJRV016STJOeFVHQmlNaUppY2pCZ1luTWpZMU5UUW1JeUlHRlJRV0FRNWllSGhyTzA0WkJnVVFERlVIRFFnWUVRY1NCQWNrRUNnMERRZ1hUQ3BNUUR4UlEwRkFDb3lKaVpFcEtSRW9EeFpIVWliQUlCZ0VBVkFGQ0NRdUlqQlhXV0FHWG1OallGNWZBQUFDQUZQL0VBSldBdjBBRndBdUFFNUFTd2NCQlFZZEFRUUZFUUVCQkFOS0FBWUFCUVFHQldjSUFRTURBRjhIQVFBQVFrc0FCQVFCWHdBQkFUbExBQUlDUFFKTUdSZ0JBQ29vSnlVaEh4Z3VHUzRURWc4TkFCY0JGd2tJRkNzQk1oWVdGUlFHQnhVV0ZoVVVCaU1pSmljUkl4RTBOallYSWdZR0ZSRVdGak15TmpVMEppTWpOVE15TmpVMEpnRklSR3M4VFVoWlg0SnhOMUFmYWtCdlJDVStKaDlLTEZCSVdrWXdKa1pDU0FMOUsxUkFTRlVMQkFwZ1cyZHdFUkQrK1FNSFVXVXdWaHBDTy81akVSWklRVXBDVjBVNU9UZ0FBQUFCQUFUL0VBSVJBaHNBRndBaVFCOFJDZ0lBQVFGS0F3SUNBUUU3U3dBQUFEMEFUQUFBQUJjQUZ4VVZCQWdXS3dFRERnSVZJelEyTmpjRE14TWVBaGN6UGdJM0V3SVJ4eEFWREhFTkZ3N1dibWNLRmhFREJBTVFGQWxpQWh2OThTaGNWaUljVkYwcEFoWCs4eHBFUEJJUVBFSVpBUklBQUFBQ0FEUC85Z0l0QXZrQUlBQXRBRE5BTUFNQkFRQWJCQUlEQVFKS0FBRUJBRjhFQVFBQU9rc0FBd01DWHdBQ0Fqa0NUQUVBS1NjVUVnZ0dBQ0FCSUFVSUZDc0JNaFlYQnlZbUl5SUdGUlFXRnhZV0ZSUUdJeUltSmpVME5qWTNKaVkxTkRZVERnSVZGQll6TWpZMU5DWUJSa1ZqTEMwblZERXJKejVJVzEyTGRFbHhRVFpkT1RWRWJGZ2tUelpLUTBaTVB3TDVJQlpQRlIwbUdTRTFKekIxVlh4K05HUklRbDQvRVI5UE4wWkkvcUFKSzA4L1BVMVNUVDlSQUFFQUt2LzJBZFVDSlFBcEFFVkFRaUFCQkFNaEFRVUVGUUVBQlFzQkFRQU1BUUlCQlVvR0FRVUFBQUVGQUdVQUJBUURYd0FEQTBOTEFBRUJBbDhBQWdJNUFrd0FBQUFwQUNnbExDVWtJUWNJR1NzQkZTTWlCaFVVRmpNeU5qY1ZCZ1lqSWlZMU5EWTNOU1ltTlRRMk5qTXlGaGNISmlZakloVVVGak1CYzB0TlNFdEFPVnNpSVYwL2VuTkhOQzgzT0dJK09sc3BKQ05ITUhWT1JnRkJVU3NxS3lVYUVGb1JGRmxFUERvTkJRMCtNUzgvSUJVU1VROFZSU2dqQUFBQUFBRUFOUDlBQWRRQytBQW1BQ0pBSHhzVEFnRUNBVW9BQUFFQWhBQUJBUUpkQUFJQ09nRk1HaGtZRlJNRENCVXJCUlFHQnlNMk5qVTBKaVluSmlZMU5ENENOdzRDSXlNMUlSVU9BeFVVRmhZWEZoWUIxQ2daYVJvbkR6QXdZbVl2VW1rNkJpdzZISDhCZ21aN1BSUW1TVEpRUWlJc1VpQWlTeG9ORlJNSkVXaGpTSHB0WnpNQ0FnSlVTVldJYlZnbU56Y2JDaEE2QUFBQUFRQlQveEFDSmdJbEFCUUFpa3V3R1ZCWXRSRUJBZ0FCU2h1MUVRRUNCQUZLV1V1d0dWQllRQmNBQWdJQVh3UUZBZ0FBUTBzQUF3TTVTd0FCQVQwQlRCdExzREpRV0VBYkFBUUVPMHNBQWdJQVh3VUJBQUJEU3dBREF6bExBQUVCUFFGTUcwQWJBQUlDQUY4RkFRQUFRMHNBQXdNRVhRQUVCRHRMQUFFQlBRRk1XVmxBRVFFQUVBOE9EUW9JQlFRQUZBRVVCZ2dVS3dFeUZoVVJJeEUwSmlNaUJoVVJJeEV6RnpNMk5nRmtYbVJwTlRwU1AycFVEd1lhV3dJbFhtajlzUUpBUGtCaVhQN3dBaHRJS2lnQUFBTUFOUC8yQWlZQy9RQU5BQlFBR3dBM1FEUUFBd0FGQkFNRlpRWUJBZ0lCWHdBQkFVSkxCd0VFQkFCZkFBQUFPUUJNRmhVUERoa1lGUnNXR3hJUkRoUVBGQ1VqQ0FnV0t3RVVCZ1lqSWlZMU5EWTJNeklXSnlJR0J5RW1KZ015TmpjaEZoWUNKakp1V245NU1tMVpmM3Y2UmtJRUFSa0ZRa1pIUkFQKzVnSkFBWGw1clYzT3RYcXVYTXQ0Z0g1K2dQMmZob2lHaUFBQUFRQlIvL1lCV1FJYkFBOEFLVUFtQmdFQUFnY0JBUUFDU2dNQkFnSTdTd0FBQUFGZkFBRUJPUUZNQUFBQUR3QVBKU0lFQ0JZckV4RVVNekkyTnhVR0JpTWlKaVkxRWJwS0ZpOFFFVGtlTGtncUFoditoMVlJQlZBSUN4NUtRd0Y2QUFBQS8vOEFVd0FBQWlrQ0d3SUdBUGtBQUFBQi8vMy85Z0l5QXY0QUpnQ3BTN0FaVUZoQUVRa0JBQUVoRmdnQkJBSUFGd0VEQWdOS0cwQVJDUUVBQVNFV0NBRUVBZ0FYQVFRQ0EwcFpTN0FaVUZoQUdnQUNBQU1BQWdOK0FBQUFBVjhBQVFGQ1N3VUVBZ01ET1FOTUcwdXdNbEJZUUI0QUFnQUVBQUlFZmdBQUFBRmZBQUVCUWtzRkFRUUVPVXNBQXdNNUEwd2JRQ0FBQWdBRUFBSUVmZ1VCQkFNQUJBTjhBQUFBQVY4QUFRRkNTd0FEQXprRFRGbFpRQTBBQUFBbUFDWWtKaVVrQmdnWUt5TVRKeVltSXlJR0J6VTJOak15RmhZWEV4WVdNekkzRlFZR0l5SW1KeWNtSmljakJnWUhBd1BuR0JFcUtoRWFDdzBvRWpkRUxSV2lEUndURWcwTEpSRXNNUkZCRFJ3RkJBZ2JEM01DQzBJdUt3UUNWZ01GSmtzNS9qMG1IUVZRQlFnc0xyZ2lWUnNoU3lMKzlBRC8vd0JUL3hBQ0p3SWJBZ1lBZHdBQUFBRUFBUUFBQWdrQ0d3QVJBREsxQmdFQ0FBRktTN0F5VUZoQURBRUJBQUE3U3dBQ0Fqa0NUQnRBREFBQ0FBS0VBUUVBQURzQVRGbTFGQm9RQXdnWEt4TXpFeDRDRnpNK0FqVXpGQVlHQnlNQmJXc0lGQklGQkRZL0dtb2xYRk5yQWh2KzJ4WTZPUkk3aHA1aGFyYW5WQUFCQURQL1FBSFVBdmdBTkFCdlM3QXRVRmhBQ2dvQkFBRURBUVFEQWtvYlFBc0RBUVFEQVVvS0FRSUJTVmxMc0MxUVdFQVpBQVVFQllRQUF3QUVCUU1FWlFJQkFBQUJYUUFCQVRvQVRCdEFId0FDQVFBQUFuQUFCUVFGaEFBREFBUUZBd1JsQUFBQUFWNEFBUUU2QUV4WlFBa2NJU1VoRVR3R0NCb3JOelEyTnpVbUpqVTBOamN3QmdZakl6VWhGU01pQmdZVkZCWXpNeFVqSWdZVkZCWVdGeFlXRlJRR0J5TTJOalUwSmlZbkppWXpVam95T1ZKQUtUb1pHUUZvSFRoblFVVldVbFZaV2loSk1sQkFLQlpuR1NZUE1ERmphTkJKWHhNR0RVQTNRVU1SQXdOVVRpQkFNVEEwVFZFL01ESVlDaEE4S2l4U0lDSkxHd3dWRXdrUll3QUEvLzhBTlAvMkFpNENKUUlHQUZJQUFBQUJBQXovOWdLS0Foc0FHQUNwUzdBWlVGaEFEaEVCQWdVREFRQUNCQUVCQUFOS0cwQU9FUUVDQlFNQkFBSUVBUU1BQTBwWlM3QVpVRmhBR1FZRUFnSUNCVjBBQlFVN1N3Y0JBQUFCWHdNQkFRRTVBVXdiUzdBeVVGaEFIUVlFQWdJQ0JWMEFCUVU3U3dBREF6bExCd0VBQUFGZkFBRUJPUUZNRzBBZ0FBTUFBUUFEQVg0R0JBSUNBZ1ZkQUFVRk8wc0hBUUFBQVY4QUFRRTVBVXhaV1VBVkFRQVZGQk1TRUE4T0RRd0xDQVlBR0FFWUNBZ1VLeVV5TmpjVkJnWWpJaVkxRVNNUkl4RWpOVGNoRlNNUkZCWUNUQTRhQ1FzcUdUdEEwR3B1VEFJeWJCcExCd1ZRQmd0RFJnRkgvam9CeGk0blZmNi9IeHNBQUFJQVNmOFFBaTBDSlFBVEFDQUFOa0F6R0FFRUF3WUJBQVFDU2dVQkF3TUNYd0FDQWtOTEFBUUVBRjhBQUFBNVN3QUJBVDBCVEJVVUhCb1VJQlVnSXhjaUJnZ1hLd0VVQmlNaUppY2pGaFlWRlNNUk5EWXpNaFlXSnlJR0ZSVVdGak15TmpVMEpnSXRmbXdvU3h3R0FnUnJoSEZHYkQzeVJFTWFSaVZJUHo0QkRZaVBGeFFNVEN5TkFnT0lpa0Y5Wmx0ZW1CZ1hYMkZpWGdBQUFBRUFOUDlBQWRRQ0pRQWpBQ3RBS0FNQkFRQUVBUUlCQWtvQUFnRUNoQUFCQVFCZkF3RUFBRU1CVEFFQUZSUUlCZ0FqQVNNRUNCUXJBVElXRndjbUppTWlCaFVVRmhZWEZoWVZGQVlISXpZMk5UUW1KaWN1QWpVME5qWUJPaXBRSUNBZVB5RlBSaDVIUGxCQUtCWm5HU1lQTURFNlhEUkNkZ0lsRWc1VkN4QnBaemMrSVEwUk95c3RWQ0FpVFJ3TkZCUUpDelppVFd1RVBRQUFBQUlBTlAvMkFsMENHd0FRQUIwQUlVQWVCQUVDQWdGZEFBRUJPMHNBQXdNQVh3QUFBRGtBVENVbEVTVWpCUWdaS3lVVUJnWWpJaVkxTkRZMk15RVZJeFlXQlJRV016STJOVFFtSnlNaUJnSXZPWEpVY1l0SWhWc0JBWVVtTWY1eVJVeE1SU2dsSFYxYjhraHlRb3FEWlhzNFV5WnFOVkJtWUVvL2FDcFpBQUFBQVFBTi8vVUIwZ0liQUJVQU5VQXlGQUVBQkFrQkFRQUtBUUlCQTBvREFRQUFCRjBGQVFRRU8wc0FBUUVDWHdBQ0Fqa0NUQUFBQUJVQUZSUWxJeEVHQ0JnckFSVWpFUlFXTXpJMk54VUdCaU1pSmlZMUVTTTFOd0hTekRBbUZ5OFNFRHNnTDFBdmprMENHMVgrNERJcUNBVlBDQXNkU2tRQkppNG5BQUVBVFAvMkFqa0NHd0FXQUNSQUlRTUJBUUU3U3dBQ0FnQmdCQUVBQURrQVRBRUFFUkFMQ1FZRkFCWUJGZ1VJRkNzRklpWW1OUkV6RVJRV016STJOVFFtSnpNV0ZoVVVCZ0UzVzJjcGFrRkhTVWNSRDJvUUVZTUtSSE5JQVNiKzJsRllhbk5FY1QwOWNFbWNrd0FBQUFBQ0FEVC9FQUsxQWlRQUhRQW5BRFJBTVFFQkF3QWlDQUlCQXhjQkFnRURTZ1FCQXdNQVh3QUFBRU5MQUFFQk9Vc0FBZ0k5QWt3ZkhoNG5IeWNSRmlzRkNCY3JFeGNHQmhVVUZoWVhFVFEyTXpJV0ZoVVVCZ1lIRlNNMUxnSTFORFlGSWdZVkVUWTJOVFFtblZBbExTeEpLMXhOUUY0elRuNUpaVXQzUlRzQmRoMG9TbUkzQWlJMk1tcEVRMUVuQlFFY1hHQkNkMUJnZlVFRjZPZ0dPbmRnVW9rWkxUdis0d2RuWUZaaEFBQUFBQUgvOGY4UUFqRUNId0FrQUVGQVBpSUJCUUFoR2hjUENBVUdBZ1VRQVFNQ0Ewb0FCUVVBWHdFR0FnQUFPMHNBQWdJRFlBUUJBd005QTB3QkFCOGRHUmdVRWcwTEJ3WUFKQUVrQndnVUt4TXlGaFlYRnhNekF4Y1dGak15TmpjVkJnWWpJaVluSndNakV5Y21KaU1pQmdjMU5qWmlKaTRnRHp1VWI5WmVFU1FpRFJjTERpSVlRME1ZUWFoeDZVME9JeGtKRlFvT0l3SWZIVGdxbVFFVS9vbnJLaWNDQWxJRUJraENzdjdFQWFESktDY0RCRlFFQmdBQkFFei9FQUxWQXZjQUhnQXdRQzBkQVFJQkFBRktCZ0VGQlRwTEJBRUFBRHRMQXdFQkFUbExBQUlDUFFKTUFBQUFIZ0FlRkJFUkZoY0hDQmtyQVJFMk5qVTBKaWN6RmhZVkZBWUdCeFVqTlM0Q05SRXpFUlFXRmhjUkFiMVRZQklRWmhBUlM0Qk5aVTU1UldncVNqQUM5LzFXQjE1blEzbEdSSHRDWm4wN0JlZm5Bemg0WkFFTi92QkdVU1FFQXFzQUFBQUFBUUEzLy9ZQzd3SWJBQ3NBTkVBeENnRURCQUZLQUFRQ0F3SUVBMzRIQmdJQ0FqdExCUUVEQXdCZ0FRRUFBRGtBVEFBQUFDc0FLeU1USlJZbEpnZ0lHaXNCRmhZVkZBWUdJeUltSnlNR0JpTWlKaVkxTkRZM013WUdGUlFXTXpJMk5UVXpGUlFXTXpJMk5UUW1Kd0sxSGh3dFdrRTZSeEVGRUVjNlFWb3RIQjVxSHg0Mk1qRXFaQzB0TWpjZUh3SWJSNEJQVVhwRU1TMHRNVVI2VVUrQVIwV0NUbGxoUmptVmxUMUNZVmxOZzBVQUFBRC8vLy8yLy9ZQldRTGdBaVlCaFFBQUFBY0FhdjlsQUFELy93Qk0vL1lDT1FMZ0FpWUJrUUFBQUFZQWFoQUFBQUQvL3dBMC8vWUNMZ01pQWlZQVVnQUFBQVlCVXc0QUFBRC8vd0JNLy9ZQ09RTWlBaVlCa1FBQUFBWUJVeE1BQUFELy93QTMvL1lDN3dNaUFpWUJsUUFBQUFZQlUyOEFBQUQvL3dCZkFBQUI4UU9QQWlZQUtBQUFBUWNBYWdBS0FLOEFDTEVCQXJDdnNETXJBQUFBQVFBTi8vWUNzd0xLQUI4QWlFdXdHVkJZUUFvRUFRRUNBd0VBQVFKS0cwQUtCQUVCQWdNQkF3RUNTbGxMc0JsUVdFQWdBQWNBQWdFSEFtVUdBUVFFQlYwQUJRVW1Td0FCQVFCZkF3Z0NBQUF1QUV3YlFDUUFCd0FDQVFjQ1pRWUJCQVFGWFFBRkJTWkxBQU1ESjBzQUFRRUFYd2dCQUFBdUFFeFpRQmNCQUJvWUZ4WVZGQk1TRVJBUERRY0ZBQjhCSHdrSEZDc0ZJaVluTlJZek1qWTJOVFUwSmlNakVTTVJJelVoRlNNVk16SVdGUlVVQmdINEdDc1BJU29WS0JvMVA3SnJxZ0h0Mkxsb2NHVUtDQVpjRFE4cUswQTFNdjZpQW0xZFhiSmdXVU5sWkFELy93QmZBQUFDQUFPdEFpWUJZQUFBQVFjQWRnREtBSzhBQ0xFQkFiQ3ZzRE1yQUFBQUFRQTgvL1lDYmdMVkFCNEFSa0JER3dFQUJSd0JBUUFNQVFNQ0RRRUVBd1JLQUFFQUFnTUJBbVVHQVFBQUJWOEFCUVV0U3dBREF3UmZBQVFFTGdSTUFRQVpGeEVQQ2dnR0JRUURBQjRCSGdjSEZDc0JJZ1lISVJVaEZoWXpNalkzRlFZR0l5SW1KalUwTmpZek1oWVhCeVltQVpoaWZBb0JVUDZ1QlhWeE1Gc3ZMRjg2ZFpWSVVaMXlRR1lzS2laVEFuZHVhMXR6ZlJFT1hSQVBYS1Z1YmFaZEdSVmJFaG4vL3dBeS8vWUIrUUxVQWdZQU5nQUEvLzhBSmdBQUFUc0N5Z0lHQUN3QUFQLy9BQndBQUFGRkE0OENKZ0FzQUFBQkJ3QnEvNHNBcndBSXNRRUNzSyt3TXlzQUFQLy8vN1AvUEFESEFzb0NCZ0F0QUFBQUFnQUQvL1VEa3dMS0FDTUFMQURUUzdBVFVGaEFDZ1FCQVFjREFRQUJBa29iUzdBVlVGaEFDZ1FCQVFZREFRQUJBa29iUUFvRUFRRUdBd0VFQVFKS1dWbExzQk5RV0VBZ0FBTUFCd0VEQjJjQUJRVUNYUUFDQWlaTEJnRUJBUUJmQkFnQ0FBQXVBRXdiUzdBVlVGaEFLd0FEQUFjR0F3ZG5BQVVGQWwwQUFnSW1Td0FHQmdCZkJBZ0NBQUF1U3dBQkFRQmZCQWdDQUFBdUFFd2JRQ2dBQXdBSEJnTUhad0FGQlFKZEFBSUNKa3NBQmdZRVhRQUVCQ2RMQUFFQkFGOElBUUFBTGdCTVdWbEFGd0VBTENvbUpCd2JHaGdURVJBUENBWUFJd0VqQ1FjVUt4Y2lKaWMxRmhZek1qWTJOejRDTnlFUk16SVdGaFVVQmlNakVTTU9BZ2NPQWlVek1qWTFOQ1lqSTBZU0l3NE1HdzhiSUJRSkJ4Y2JEZ0ZyT21aNk5vS01ycVVKRlJZTERTaENBY2M2VkZOYldpd0xCd1ZaQkFjcFJpd21qNzlzL3RvMlhqdGhkQUp0UnArU05FSmNMMlk3UDBFekFBQUNBRjhBQUFPakFzb0FFd0FjQUROQU1BTUJBUWdCQlFjQkJXY0NBUUFBSmtzQUJ3Y0VYZ2tHQWdRRUp3Uk1BQUFjR2hZVUFCTUFFeEVsSVJFUkVRb0hHaXN6RVRNUklSRXpFVE15RmhZVkZBWWpJeEVoRVNVek1qWTFOQ1lqSTE5c0FSeHRPbVo2TllHTXIvN2tBWWs2VTFOYVdpd0N5djdZQVNqKzJqWmVPMkYwQVViK3VsczdQMEV6QUFFQURRQUFBck1DeWdBVEFDMUFLZ0FCQUFNQ0FRTmxCUUVBQUFaZEJ3RUdCaVpMQkFFQ0FpY0NUQUFBQUJNQUV4RVJJeE1oRVFnSEdpc0JGU01WTXpJV0ZSRWpOVFFtSXlNUkl4RWpOUUlPN01Ca2JXd3hPN2xzcVFMS1hySmZXZjcrOXpVeC9xTUNiRjRBLy84QVh3QUFBbm9EclFJbUFiTUFBQUVIQUhZQTdBQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QUMvLzJBbndEckFJbUFid0FBQUVIQWlZQUpnQ3ZBQWl4QVFHd3I3QXpLd0FBQUFFQVgvOCtBbjhDeWdBTEFDTkFJQUFCQUFHRUJRRURBeVpMQUFRRUFGNENBUUFBSndCTUVSRVJFUkVRQmdjYUt5RWpGU00xSXhFekVTRVJNd0ovM0d6WWJBRkphOExDQXNyOWxBSnNBQUQvL3dBQUFBQUNqUUxOQWdZQUpBQUFBQUlBWHdBQUFqMEN5Z0FOQUJZQU1VQXVBQUlBQlFRQ0JXVUFBUUVBWFFBQUFDWkxBQVFFQTEwR0FRTURKd05NQUFBV0ZCQU9BQTBBRENFUkVRY0hGeXN6RVNFVklSVXpNaFlXRlJRR0l5Y3pNalkxTkNZakkxOEJzUDY4WEdsNk0zNlBaVjFZVGxaZlRnTEtYY2syWFR4bGNGczdQMEV6Ly84QVh3QUFBbHNDeWdJR0FDVUFBUC8vQUY4QUFBSUFBc29DQmdGZ0FBQUFBZ0FHL3o0Q3N3TEtBQTRBRmdBelFEQURBUUVBQVZFQUJnWUZYUWdCQlFVbVN3Y0VBZ0FBQWwwQUFnSW5Ba3dBQUJZVkVBOEFEZ0FPRVJFUkVSRUpCeGtyQVJFekVTTTFJUlVqRVRNK0FqY1hJdzREQnlFQ1YxeG8vaUpuTnkxTU5RbjRuUVVkTERVZEFUMEN5djJVL3VEQ3dnRWdVTXZnY1Y0NWlZK0hOdi8vQUY4QUFBSHhBc29DQmdBb0FBQUFBUUFCQUFBRGJ3TEtBQkVBSlVBaUR3d0pCZ01GQXdBQlNnSUJBZ0FBSmtzRkJBSURBeWNEVEJJU0VoSVNFUVlIR2lzQkFUTUJFVE1SQVRNQkFTTUJFU01SQVNNQkZ2NzJkQUVGWmdFRmRQNzJBUlY1L3ZWbS92UjRBWEFCV3Y2bUFWcitwZ0ZhL3FmK2p3RnEvcFlCYXY2V0FBQUJBQ3IvOWdJckF0UUFLUUEvUUR3a0FRUUZJd0VEQkFNQkFnTU9BUUVDRFFFQUFRVktBQU1BQWdFREFtVUFCQVFGWHdBRkJTMUxBQUVCQUY4QUFBQXVBRXdsSkNFa0pTa0dCeG9yQVJRR0J4VVdGaFVVQmlNaUppYzFGaFl6TWpZMU5DWWpJelV6TWpZMU5DWWpJZ1lISnpZMk16SVdBaHBmVGx4aWs1RkJieTB1ZERKZlgzWm9YRlp3WlV4QVFGc3FNaTUrVW5WOUFpTkpWZ3NFQzFsSFhuWVNGVjhXR1VNK1BqcFlRRGd4TlNFYlNTQXJaQUFBQVFCZ0FBQUNzZ0xLQUJNQUYwQVVBUUVBQUNaTEF3RUNBaWNDVEJjUkZ4QUVCeGdyRXpNUkZBWUdCek1CTXhFakVUUTJOamNqQVNOZ1l3SURBZ1FCZG54akF3UUJCUDZKZkFMSy9vWWlVa1VPQWtIOU5nRjNKVlZGRHYyOEFBRC8vd0JnQUFBQ3NnT3NBaVlCc1FBQUFRY0NKZ0IzQUs4QUNMRUJBYkN2c0RNckFBQUFBUUJmQUFBQ2VnTEtBQW9BSDBBY0NnY0NBd0FDQVVvREFRSUNKa3NCQVFBQUp3Qk1FaEVTRUFRSEdDc2hJd0VSSXhFekVRRXpBUUo2Zi83UWJHd0JLbmYrMlFGcS9wWUN5djZtQVZyK3BnQUJBQVAvOVFKd0Fzb0FHd0JSUUFvUEFRTUJEZ0VBQXdKS1M3QVZVRmhBRmdBQkFRUmRBQVFFSmtzQUF3TUFYd0lCQUFBbkFFd2JRQm9BQVFFRVhRQUVCQ1pMQUFBQUowc0FBd01DWHdBQ0FpNENURm0zRnlVbkVSQUZCeGtySVNNUkl3NENCdzRDSXlJbUp6VVdGak15TmpZM1BnSTNJUUp3Yk5NSkZSVUxEU2hDTmhJa0RRd2JEeHNnRkFrSEZ4c05BWmtDYlVhZmtqUkNYQzhIQlZrRUJ5cEdLaVdRd0d3QUFBRC8vd0JmQUFBRE53TEtBZ1lBTUFBQS8vOEFYd0FBQW93Q3lnSUdBQ3NBQVAvL0FEei85Z0xWQXRVQ0JnQXlBQUQvL3dCZkFBQUNmd0xLQWdZQmJRQUEvLzhBWHdBQUFqTUN5Z0lHQURNQUFQLy9BRHovOWdKWkF0UUNCZ0FtQUFELy93QU5BQUFDSlFMS0FnWUFOd0FBQUFFQUMvLzJBbndDeWdBWkFDMUFLaFFPQ1FNQkFnZ0JBQUVDU2dRREFnSUNKa3NBQVFFQVlBQUFBQzRBVEFBQUFCa0FHUk1rSkFVSEZ5c0JBdzRDSXlJbUp6VVdNekkyTndFekV4WVdGek0yTmpjVEFuemlJRUZkU1JzMUZpdzBOVHdYL3ZaMXN3WVJCUVFGRHdhZUFzcitBMGRmTVFnSFpSTXdOUUlPL3BBTUpnOE5KZzRCY1AvL0FESC85Z01EQXRRQ0JnRnlBQUQvL3dBREFBQUNYd0xLQWdZQU93QUFBQUVBWC84K0F0d0N5Z0FMQUNsQUpnQUFBd0JTQkFFQ0FpWkxCZ1VDQXdNQlhnQUJBU2NCVEFBQUFBc0FDeEVSRVJFUkJ3Y1pLeVVSSXpVaEVUTVJJUkV6RVFMY2FQM3JiQUZKYTF2KzQ4SUN5djJVQW16OWtRQUJBRWdBQUFKa0Fzb0FFd0FwUUNZUkFRTUNBZ0VCQXdKS0FBTUFBUUFEQVdjRUFRSUNKa3NBQUFBbkFFd1RJeE1qRUFVSEdTc2hJeEVHQmlNaUpqVVJNeEVVRmpNeU5qY1JNd0prYkR0bk8yVnViRGxCTmxzNWJBRWdGUmhmV0FFZy92WTRPQlFVQVZJQUFBQUJBRjhBQUFPNUFzb0FDd0FmUUJ3RkF3SUJBU1pMQkFFQ0FnQmVBQUFBSndCTUVSRVJFUkVRQmdjYUt5RWhFVE1SSVJFekVTRVJNd081L0tac0FRcHRBUXRzQXNyOWxBSnMvWlFDYkFBQUFBRUFYLzgrQkFzQ3lnQVBBQzFBS2dBQUF3QlNCZ1FDQWdJbVN3Z0hCUU1EQXdGZUFBRUJKd0ZNQUFBQUR3QVBFUkVSRVJFUkVRa0hHeXNsRVNNMUlSRXpFU0VSTXhFaEVUTVJCQXRuL0x0c0FRVnRBUWRzVy83andnTEsvWlFDYlAyVUFtejlrUUFBQWdBR0FBQUNqUUxLQUEwQUZnQXhRQzRBQWdBRkJBSUZaUUFBQUFGZEFBRUJKa3NBQkFRRFhRWUJBd01uQTB3QUFCWVVFQTRBRFFBTUlSRVJCd2NYS3pNUkl6VWhFVE15RmhZVkZBWWpKek15TmpVMEppTWpyNmtCRldGa2VEVi9pbWxoVWxCWVdGTUNiVjMrMmpkZE8yRjBXenMvUVRNQUF3QmZBQUFEQ1FMS0FBc0FEd0FYQURaQU13QUJBQVlGQVFabEF3RUFBQ1pMQUFVRkFsNElCQWNEQWdJbkFrd01EQUFBRnhVU0VBd1BEQThPRFFBTEFBb2hFUWtIRmlzekVUTVJNeklXRmhVVUJpTWhFVE1SSlRNeU5UUW1JeU5mYkZ4amR6Vi9pZ0Z3YlAzQ1c2RldWbEFDeXY3YU4xMDdZWFFDeXYwMldudEJNZ0FBQWdCZkFBQUNVQUxLQUFzQUZBQXJRQ2dBQVFBRUF3RUVaUUFBQUNaTEFBTURBbDRGQVFJQ0p3Sk1BQUFVRWc0TUFBc0FDaUVSQmdjV0t6TVJNeEV6TWhZV0ZSUUdJeWN6TWpZMU5DWWpJMTlzY0dSNk40U0tkMjlTVlYxWFlnTEsvdG8zWFR0aGRGczdQMEV6QUFBQUFBRUFILy8yQWtVQzFBQWVBRVpBUXdRQkFBRURBUVVBRXdFREJCSUJBZ01FU2dBRkFBUURCUVJsQmdFQUFBRmZBQUVCTFVzQUF3TUNYd0FDQWk0Q1RBRUFIQnNhR1JjVkVBNElCZ0FlQVI0SEJ4UXJFeUlHQnljMk5qTXlGaFlWRkFZR0l5SW1KelVXRmpNeU5qY2hOU0VtSnZNeFZpUXBMVzA4YjVaTFM1bDFQbG9zTGxrd2Rub0UvckFCVHdoM0FuY1lFRmtWRjF1aGEzS3BYQThRWFE0UmUzVmRaWElBQUFJQVgvLzJBK1FDMVFBVkFDRUFpMHV3RlZCWVFCOEFCQUFCQmdRQlpRQUhCd05mQlFFREF5WkxBQVlHQUY4Q0FRQUFMZ0JNRzB1d0dWQllRQ01BQkFBQkJnUUJaUUFEQXlaTEFBY0hCVjhBQlFVdFN3QUdCZ0JmQWdFQUFDNEFUQnRBSndBRUFBRUdCQUZsQUFNREprc0FCd2NGWHdBRkJTMUxBQUlDSjBzQUJnWUFYd0FBQUM0QVRGbFpRQXNrSlNJUkVSRVRJd2dISENzQkZBWUdJeUltSmljakVTTVJNeEV6TmpZek1oWVdCUlFXTXpJMk5UUW1JeUlHQStSR2pHbGxpa29HbjJ4c29neWNrbW1OUi8zMlkybHNZbUZyYW1RQlptK2xYRk9YWnY2NkFzcisySXluVzZWdmdKU1VnSUNTa2dBQ0FBNEFBQUlvQXNvQURnQVhBRE5BTUFNQkF3VUJTZ0FGQmdFREFBVURaUUFFQkFGZEFBRUJKa3NDQVFBQUp3Qk1BQUFYRlJFUEFBNEFEaEVuRVFjSEZ5c0JBeU1UTGdJMU5EWXpNeEVqRVJFaklnWVZGQll6TXdFOXMzekpJMEVwaUlUU2JHTk5VMUJVWHdFaS90NEJPUXd1VUQ1aGFQMDJBU0lCVFRjOVBVTUFBUC8vQUMzLzlnSHVBaVVDQmdCRUFBQUFBZ0ExLy9ZQ0tnTDlBQjBBTEFBeFFDNG9Ed0lDQXdGS0JnRUFTQUFBQUFNQ0FBTm5CQUVDQWdGZkFBRUJMZ0ZNSHg0bEl4NHNIeXdjR2hVVEJRY1VLeE0wTmpjMk5qY1hEZ0lIRGdJSE16NENNeklXRlJRR0JpTWlKZ1V5TmpVMEppTWlCZ1lIRkI0Q05YT0NQbmczRHlKWFV4OHRRU1FEQmc0dlF5eG1iRDl4UzNLSUFRSTdTamhCS1VJdUNBMGhPZ0ZEc3NZYURCUUlYUVVORGdZSkwxbEpFeWdiZ201YmVUeXJWRTVnVFZvbEx3OHVWMFVvQUFNQVV3QUFBaU1DR3dBUUFCZ0FJUUF2UUN3REFRUURBVW9BQXdBRUJRTUVaUUFDQWdGZEFBRUJLRXNBQlFVQVhRQUFBQ2NBVENFaklTVWhLUVlIR2lzQkZBWUhGUllXRlJRR0l5TVJNeklXRmdjMEppTWpGVE15RnpRbUl5TVZNekkyQWhJNk1qUkphWGp2N3p0ZU4yd3lPSDl2ZWc5QlBubDdPMElCa2pFNUNnUUhPemxGV2dJYkdqdEFJaUdJb0NvbG9DVUFBQUFBQVFCVEFBQUJxUUliQUFVQUgwQWNBQUFBQWwwREFRSUNLRXNBQVFFbkFVd0FBQUFGQUFVUkVRUUhGaXNCRlNNUkl4RUJxZXhxQWh0Vi9qb0NHd0FBQUFJQUV2OURBa3NDR3dBTkFCUUFNMEF3QXdFQkFBRlJBQVlHQlYwSUFRVUZLRXNIQkFJQUFBSmRBQUlDSndKTUFBQVVFdzhPQUEwQURSRVJFUkVSQ1FjWkt3RVJNeEVqTlNFVkl4RXpOalkzRnlNT0FnY3pBZnhQWS82TVlpdEJRZ1RRZEFZZU1DRG9BaHYrT2Y3dnZiMEJFVnp3ZTFKQmlId3dBUC8vQURULzlnSUxBaVVDQmdCSUFBQUFBUUFCQUFBREVBSWJBQkVBTEVBcEVBMEtCd1FCQmdBREFVb0dCUVFEQXdNb1N3SUJBZ0FBSndCTUFBQUFFUUFSRWhJU0VoSUhCeGtyQVFNVEl3TVJJeEVESXhNRE14TVJNeEVUQXYzWDZuWGhZK0YxNnRkeDBtUFRBaHYrKy83cUFSSCs3d0VSL3U4QkZnRUYvdm9CQnY3NkFRWUFBQUFBQVFBaS8vWUIwZ0lsQUNrQVNrQkhKd0VGQUNZQkJBVUdBUU1FRXdFQ0F4SUJBUUlGU2dBRUFBTUNCQU5uQUFVRkFGOEdBUUFBTDBzQUFnSUJYd0FCQVM0QlRBRUFKQ0lmSFJ3YUZ4VVFEZ0FwQVNrSEJ4UXJFeklXRlJRR0J4VWVBaFVVQmdZaklpWW5OUllXTXpJMk5UUWpJelV6TWpZMU5DTWlCZ2NuTmpieFczVTRMeUEzSVROclV6eGlJU0pnTnp4VG1VUTVSbE4zSzBvb0l5eGpBaVZJUmpFNkRRUUpIek1wTFVrckVoRmNFQm9rTGxOUklpbEZFUkZRRWhRQUFRQlRBQUFDUmdJYkFCRUFIVUFhQkFNQ0FBQW9Td0lCQVFFbkFVd0FBQUFSQUJFV0VSWUZCeGNyRXhFVUJnWUhBVE1SSXhFME5qWTNBU01SdUFNREFnRVZnV1FDQXdIKzdZSUNHLzdhRHpnMERRR3UvZVVCSHhNNE5RNytVd0liQUFBQS8vOEFVd0FBQWtZQy9RSW1BZEVBQUFBR0FpWTJBQUFBQUFFQVV3QUFBaU1DR3dBS0FCOUFIQW9GQWdNQkFBRktBd0VBQUNoTEFnRUJBU2NCVEJFU0VoQUVCeGdyQVRNREV5TURFU01STXhFQm5IVGg5SHJzYW1vQ0cvNzkvdWdCRWY3dkFodisrZ0FBQVFBRi8vZ0NBd0liQUJFQVVVQUtDZ0VEQVFrQkFBTUNTa3V3SGxCWVFCWUFBUUVFWFFBRUJDaExBQU1EQUY4Q0FRQUFKd0JNRzBBYUFBRUJCRjBBQkFRb1N3QUFBQ2RMQUFNREFsOEFBZ0l1QWt4WnR4TWpJeEVRQlFjWkt5RWpFU01PQWlNaUp6VVdNekkyTmpjaEFnTnJtQTB0VER3bEZCRVFJREVqQ3dGZUFjYW15MTBLVVFWY3lxY0FBQUFBQVFCVEFBQUNzd0liQUJRQUowQWtFd29HQXdBREFVb0ZCQUlEQXloTEFnRUNBQUFuQUV3QUFBQVVBQlFSRmhZUkJnY1lLd0VSSXhFME5qY2pBeU1ESXhZV0ZSRWpFVE1URXdLellBTUNBNmhWcFFRQ0EyR1JuNklDRy8zbEFVQWJOeG4rVlFHckdUY2Uvc01DRy81akFaMEFBQUFCQUZNQUFBSXhBaHNBQ3dBblFDUUFBQUFEQWdBRFpRWUZBZ0VCS0VzRUFRSUNKd0pNQUFBQUN3QUxFUkVSRVJFSEJ4a3JFeFVoTlRNUkl6VWhGU01SdlFFS2Ftcis5bW9DRzl2Yi9lWHI2d0liQVAvL0FEVC85Z0l1QWlVQ0JnQlNBQUFBQVFCVEFBQUNKUUliQUFjQUlVQWVBQUVCQTEwRUFRTURLRXNDQVFBQUp3Qk1BQUFBQndBSEVSRVJCUWNYS3dFUkl4RWpFU01SQWlWcS9tb0NHLzNsQWNYK093SWJBQUQvL3dCVC94QUNPQUlsQWdZQVV3QUEvLzhBTlAvMkFjb0NKUUlHQUVZQUFBQUJBQlVBQUFIZEFoc0FCd0FiUUJnQ0FRQUFBMTBBQXdNb1N3QUJBU2NCVEJFUkVSQUVCeGdyQVNNUkl4RWpOU0VCM2JCcHJ3SElBY2IrT2dIR1ZRRC8vd0FCL3hBQ0R3SWJBZ1lBWEFBQUFBTUFNLzhRQXJzQytBQVNBQmtBSUFBbVFDTWJHaGtURVFvSEFRZ0FBUUZLQWdFQkFBR0RBQUFBS2dCTUFBQUFFZ0FTR0FNSEZTc0JGUllXRlJRR0J4VWpOUzRDTlRRMk56VVJCZ1lWRkJZWEV4RTJOalUwSmdHcWZwT1BnbVZVZTBPUGhWUlNVVlZqVTFGU0F2alhDNUY0ZDVJTDZla0hSM2RQZVpFSzEvN1ZDV1JUVTJRSkFYLytnUXBqVTFOaS8vOEFEZ0FBQWhFQ0d3SUdBRnNBQUFBQkFGUC9Rd0o0QWhzQUN3QWpRQ0FBQUFNQVVnUUJBZ0lvU3dVQkF3TUJYZ0FCQVNjQlRCRVJFUkVSRUFZSEdpc0ZJelVoRVRNUklSRXpFVE1DZUdUK1Ayb0JCR3BOdmIwQ0cvNDZBY2IrT1FBQUFBQUJBRVlBQUFJZkFoc0FFZ0F2UUN3R0FRQUJDd0VEQUFKS0FBQUFBd0lBQTJnRkJBSUJBU2hMQUFJQ0p3Sk1BQUFBRWdBU0l4RVRJZ1lIR0NzVEZSUXpNalkzTlRNUkl6VUdCaU1pSmpVMXNGd3dVQ2xxYWlwWVBGTmVBaHZGVlJzWDZQM2w2Um9oVmszS0FBQUJBRk1BQUFOREFoc0FDd0FsUUNJR0JRTURBUUVvU3dRQkFnSUFYZ0FBQUNjQVRBQUFBQXNBQ3hFUkVSRVJCd2NaS3dFUklSRXpFVE1STXhFekVRTkQvUkJxMldyWkFodjk1UUliL2pvQnh2NDZBY1lBQUFBQUFRQlQvMFFEa1FJYkFBOEFMVUFxQUFFQUFWSUlCd1VEQXdNb1N3WUVBZ0FBQWw0QUFnSW5Ba3dBQUFBUEFBOFJFUkVSRVJFUkNRY2JLd0VSTXhFak5TRVJNeEV6RVRNUk14RURRMDVsL1NkcTJXclpBaHYrT2Y3d3ZBSWIvam9CeHY0NkFjWUFBQUFDQUEwQUFBS01BaHNBREFBVkFEWkFNd0FBQndFRUJRQUVaUUFDQWdOZEJnRURBeWhMQUFVRkFWMEFBUUVuQVV3T0RRQUFFUThORlE0VkFBd0FEQkVrSVFnSEZ5c0JGVE15RmhVVUJpTWpFU00xQVNNVk16STJOVFFtQVNPSGMyOXBlUEtzQVpxRWh6WkNQZ0liMlU1TlRWb0J4bFgrMUo4bUxTc2hBQUFBQUFNQVV3QUFBc3dDR3dBS0FBNEFGd0EyUURNQUFRQUdCUUVHWlFNQkFBQW9Td0FGQlFKZUNBUUhBd0lDSndKTUN3c0FBQmNWRVE4TERnc09EUXdBQ2dBSklSRUpCeFlyTXhFekZUTXlGaFVVQmlNaEVUTVJKVE15TmpVMEppTWpVMnAzYm1wbWN3RXZhdjN4YmpWRFBUdHVBaHZaVGsxTldnSWIvZVZRSlM0cklnQUFBQUlBVXdBQUFpZ0NHd0FKQUJJQUkwQWdBQUFBQXdRQUEyVUFBZ0lvU3dBRUJBRmVBQUVCSndGTUlTTVJJeUFGQnhrckV6TXlGUlFHSXlNUk13RTBKaU1qRlRNeU5yMlAzR2wwK0dvQkFVQTZoNGswUkFGQ20wMWFBaHYraUNzaW9DWUFBQUFCQUIvLzlnRy9BaVVBSGdCR1FFTVVBUVFGRXdFREJBUUJBUUlEQVFBQkJFb0FBd0FDQVFNQ1pRQUVCQVZmQUFVRkwwc0FBUUVBWHdZQkFBQXVBRXdCQUJnV0VROE5EQXNLQ0FZQUhnRWVCd2NVS3hjaUppYzFGaFl6TWpZM0l6VXpKaVlqSWdZSEp6WTJNeklXRmhVVUJnYTFNRWNmSDBvc1JsTUY5L1lHUjBRZ1F4c2VIVlFzU25OQlEzZ0tEdzlZRFJOTVZGQk1SeEVMVVEwVU5udGxZWHc4QUFJQVUvLzJBeHdDSlFBVEFCOEFYMHV3R1ZCWVFCOEFCQUFCQmdRQlpRQUhCd05mQlFFREF5aExBQVlHQUY4Q0FRQUFMZ0JNRzBBbkFBUUFBUVlFQVdVQUF3TW9Td0FIQndWZkFBVUZMMHNBQWdJblN3QUdCZ0JmQUFBQUxnQk1XVUFMSkNVaUVSRVJFaUlJQnh3ckFSUUdJeUltSnlNVkl4RXpGVE0yTmpNeUZoWUZGQll6TWpZMU5DWWpJZ1lESElOd1pZRUpmV3BxZmd4L1prWnNQdjZKUDBkR1BqOUdSajhCRG9hU2ZIbnJBaHZiYjNaQmZGcGZZbUpmWDJCZ0FBSUFDd0FBQWVZQ0d3QU9BQmNBSzBBb0FnRURCQUZLQUFRQUF3QUVBMlVBQlFVQlhRQUJBU2hMQWdFQUFDY0FUQ0VqRVJFbkVBWUhHaXN6SXpjdUFqVTBOak16RVNNMUl5Y1VGak16TlNNaUJvTjRtQjgySTI1WjlHcDBka0E1Y1lNM01ONEpKVDh2VGxQOTVkS25LeXVtTGdELy93QTAvL1lDQ3dMZ0FpWUFTQUFBQUFZQWF2b0FBQUFBQVFBSC94QUNKd0w0QUNrQWkwQU9Id0VDQ1FRQkFRTURBUUFCQTBwTHNDWlFXRUFxQndFRkNBRUVDUVVFWlFBQ0FnbGZBQWtKS0VzQUJnWURYUUFEQXlkTEFBRUJBRjhLQVFBQUtnQk1HMEFvQndFRkNBRUVDUVVFWlFBSkFBSURDUUpuQUFZR0ExMEFBd01uU3dBQkFRQmZDZ0VBQUNvQVRGbEFHd0VBSkNJYkdoa1lGeFlWRkJNU0VSQU5Dd2NGQUNrQktRc0hGQ3NGSWlZbk5SWXpNalkxRVRRaklnWVZGU01SSXpVek5UTVZNeFVqRlJRR0J6TTJOak15RmhVUkZBWUJrUmNtRFJzZEdpUnVVejVyVEV4cXRiVURBZ1lhV0ROZlpVandCd1ZWQ1NJeEFZSjZZMXY1QWxkS1YxZEtRUmt4RUNrcFhtZitia3hiQUFBQS8vOEFVd0FBQWFrQy9nSW1BY3dBQUFBSEFIWUFsQUFBQUFFQU5QLzJBZFlDSlFBZUFFWkFRd3NCQWdFTUFRTUNHd0VGQkJ3QkFBVUVTZ0FEQUFRRkF3UmxBQUlDQVY4QUFRRXZTd0FGQlFCZkJnRUFBQzRBVEFFQUdSY1ZGQk1TRUE0SkJ3QWVBUjRIQnhRckJTSW1KalUwTmpZek1oWVhCeVltSXlJR0J6TVZJeFlXTXpJMk54VUdCZ0U1VFhaQ1JIWk1LbElnSHg1RUhVWklDUGIzQlVsR0xrZ2hIMFVLT1hwaFozdzRFUTVTQ3hCSlNsQlNUaElPVnc4UUFBQUEvLzhBTWYvMkFia0NKUUlHQUZZQUFQLy9BRXdBQUFERkF1Z0NCZ0JNQUFELy8vL3pBQUFCSEFMZ0FpWUlLZ0FBQUFjQWF2OWlBQUQvLy8vRy94QUF4UUxvQWdZQVRRQUFBQUlBQmYvNEF5Z0NHd0FaQUNJQWZFQUtFZ0VFQmhFQkFRUUNTa3V3SGxCWVFDRUFBQWtCQmdRQUJtVUFBZ0lGWFFnQkJRVW9Td2NCQkFRQlh3TUJBUUVuQVV3YlFDc0FBQWtCQmdRQUJtVUFBZ0lGWFFnQkJRVW9Td2NCQkFRQlhRQUJBU2RMQndFRUJBTmZBQU1ETGdOTVdVQVdHeG9BQUI0Y0dpSWJJZ0FaQUJra0l4RWtJUW9IR1NzQkZUTXlGaFVVQmlNakVTTU9BaU1pSnpVV0ZqTXlOalkzQVNNVk16STJOVFFtQWVWcmJtcG9kdEI2RGkxTE95WVVCeEVJSVRBa0N3R2VYbUUwUkQ4Q0c5bE9UVTFhQWNhbXpGd0tVUUlFWE11bi90U2ZKaTBySVFBQUFBQUNBRk1BQUFOR0Foc0FFZ0FiQURoQU5RVUJBQW9IQWdJSUFBSmxDUVlDQkFRb1N3QUlDQUZlQXdFQkFTY0JUQlFUQUFBWEZSTWJGQnNBRWdBU0VSRVJFU1FoQ3djYUt3RVZNeklXRlJRR0l5TTFJeFVqRVRNVk16VVRJeFV6TWpZMU5DWUNCR2x3YVdaMjB0cHJhOXpKWUdJMVF6NENHOXBOVFUxYTYrc0NHOXZiL3RTZkppMHJJUUFBLy84QUJ3QUFBaVlDK0FJR0FPa0FBUC8vQUZNQUFBSWpBdjRDSmdIVEFBQUFCd0IyQUxrQUFQLy9BQUgvRUFJUEF2MENKZ0JjQUFBQUJnSW02d0FBQUFBQkFGUC9SQUlzQWhzQUN3QWpRQ0FBQlFBRmhBTUJBUUVvU3dBQ0FnQmVCQUVBQUNjQVRCRVJFUkVSRUFZSEdpc2hJeEV6RVNFUk14RWpGU01CRDd4cUFRVnF1V1FDRy80NkFjYjk1YndBQUFFQVh3QUFBZ3dEWGdBSEFDVkFJZ1FCQXdJRGd3QUFBQUpkQUFJQ0prc0FBUUVuQVV3QUFBQUhBQWNSRVJFRkJ4Y3JBUlVoRVNNUklUVUNEUDYvYkFGTEExN3gvWk1DeXBRQUFBQUJBRk1BQUFHd0FyVUFCd0JHUzdBWFVGaEFGZ1FCQXdNbVN3QUFBQUpkQUFJQ0tFc0FBUUVuQVV3YlFCWUVBUU1DQTRNQUFBQUNYUUFDQWloTEFBRUJKd0ZNV1VBTUFBQUFCd0FIRVJFUkJRY1hLd0VWSXhFakVUTTFBYkR6YXZrQ3RlditOZ0libWdBQUFQLy9BQWdBQUFPa0E2MENKZ0E2QUFBQkJ3QkRBUm9BcndBSXNRRUJzSyt3TXlzQUFQLy9BQXNBQVFNY0F2NENKZ0JhQUFBQUJ3QkRBTmNBQVAvL0FBZ0FBQU9rQTYwQ0pnQTZBQUFCQndCMkFXb0Fyd0FJc1FFQnNLK3dNeXNBQVAvL0FBc0FBUU1jQXY0Q0pnQmFBQUFBQndCMkFTWUFBUC8vQUFnQUFBT2tBNDhDSmdBNkFBQUJCd0JxQUxBQXJ3QUlzUUVDc0srd015c0FBUC8vQUFzQUFRTWNBdUFDSmdCYUFBQUFCZ0JxYlFBQUFQLy9BQUFBQUFKSEE2MENKZ0E4QUFBQkJ3QkRBR2NBcndBSXNRRUJzSyt3TXlzQUFQLy9BQUgvRUFJUEF2NENKZ0JjQUFBQUJnQkRTd0FBQUFBQkFDZ0E0QUhNQVRnQUF3QWVRQnNBQUFFQkFGVUFBQUFCWFFJQkFRQUJUUUFBQUFNQUF4RUREUlVyTnpVaEZTZ0JwT0JZV0FBQUFBRUFLQURnQThBQk9BQURBQjVBR3dBQUFRRUFWUUFBQUFGZEFnRUJBQUZOQUFBQUF3QURFUU1ORlNzM05TRVZLQU9ZNEZoWUFBRC8vd0FvQU9BRHdBRTRBZ1lDQWdBQUFBTC8vdjhoQVozLzV3QURBQWNBS3JFR1pFUkFId0FCQUFBREFRQmxBQU1DQWdOVkFBTURBbDBBQWdNQ1RSRVJFUkFFRFJncnNRWUFSQVVoTlNFVklUVWhBWjMrWVFHZi9tRUJuMXBCeGtFQUFRQU1BZFVBcndMS0FBZ0FHVUFXQWdFQkFRQmRBQUFBZ2dGTUFBQUFDQUFJRkFNTkZTc1RKelkyTnpNR0JnY1NCZzR3R0UwT0d3Z0IxUXMwZ0RZNmh6UUFBQUFCQUF3QjFRQ3ZBc29BQ0FBWlFCWUFBQUFCWFFJQkFRR0NBRXdBQUFBSUFBZ1VBdzBWS3hNWEJnWUhJelkyTjZnSERUQVpUUTRjQ0FMS0N6Vi9Oam1JTkFBQS8vOEFILzkvQU1JQWRBRUhBZ1lBRS8ycUFBbXhBQUc0L2Fxd015c0FBQUFBQVFBTUFkVUFzQUxLQUFnQUdVQVdBQUFBQVYwQ0FRRUJnZ0JNQUFBQUNBQUlFd01ORlNzVEZoWVhJeVltSnpkK0NCd09UUmt3RGdjQ3lqU0lPVFovTlFzQUFBQUNBQXdCMVFGMEFzb0FDQUFSQUNSQUlRSUJBQUFCWFFVREJBTUJBWUlBVEFrSkFBQUpFUWtSRFF3QUNBQUlFd1lORlNzQkJnWUhJeWMyTmpjakJnWUhJeWMyTmpjQmRBNGNCMndIRGpBWmVBNGRCMnNHRGk4WkFzbzZoelFMTklBMk9vYzBDelNBTmdBQUFBQUNBQXdCMVFGMEFzb0FDUUFTQUNSQUlRSUJBQUFCWFFVREJBTUJBWUlBVEFvS0FBQUtFZ29TRHc0QUNRQUpGQVlORlNzQkZ3WUdCeU0rQWpjakZ3WUdCeU0yTmpjQmJRY09MeGxPQ2hNUkJWc0hEVEVZVFE0Y0J3TEtDelYvTmlaWFZTTUxOWDgyT1lnMEFQLy9BQi8vZndHSEFIUUJCd0lLQUJQOXFnQUpzUUFDdVAycXNETXJBQUFBQUFFQVFBQUFBY0lDK0FBTEFDQkFIUXNLQndZRkJBRUFDQUFCQVVvQUFRR0VTd0FBQUlNQVRCVVNBZzBXS3dFbkV5TVRCelVYSnpNSE53SENxQnB2R1o2ZUdXOGFxQUhiRC80V0Flb1BZQS9NekE4QUFBRUFPd0FBQWNjQytBQVZBQ2xBSmhVVUV4SVJEZzBNQ3dvSkNBY0dBd0lCRVFBQkFVb0FBUUdFU3dBQUFJTUFUQm9VQWcwV0t5VTNGU2NYSXpjSE5SY25Od2MxRnljekJ6Y1ZKeGNCSHFtcEdXOFpwcVlXRnFhbUdXOFpxYWtXK2c5ZkQ3bTVEMThQaG40UFh3KzV1UTlmRDM0QUFRQkVBT2dCTkFIeUFBc0FHRUFWQUFBQkFRQlhBQUFBQVY4QUFRQUJUeVFpQWcwV0t4TTBOak15RmhVVUJpTWlKa1JGTXpKR1JqSXpSUUZ0U0QwOVNFYytQdi8vQUVULzhnTG1BSUlBSmdBUkFBQUFKd0FSQVEwQUFBQUhBQkVDR1FBQUFBY0FMUC8yQkl3QzFBQUxBQThBRndBakFDOEFOd0EvQUxWTHNCbFFXRUF5RWdnUkF3WVVEQk1EQ2dVR0NtZ0FCUUFCQ3dVQlp4QUJCQVFBWHc4RERnTUFBSXBMRFFFTEN3SmZDUWNDQWdLREFrd2JRRG9TQ0JFREJoUU1Fd01LQlFZS2FBQUZBQUVMQlFGbkR3RURBNEpMRUFFRUJBQmZEZ0VBQUlwTEFBSUNnMHNOQVFzTEIxOEpBUWNIaXdkTVdVQTdPVGd4TUNVa0dSZ1JFQXdNQVFBOU96Zy9PVDgxTXpBM01UY3JLU1F2SlM4ZkhSZ2pHU01WRXhBWEVSY01Ed3dQRGcwSEJRQUxBUXNWRFJRckV6SVdGUlFHSXlJbU5UUTJCUUVqQVFVaUZSUXpNalUwQlRJV0ZSUUdJeUltTlRRMklUSVdGUlFHSXlJbU5UUTJCU0lWRkRNeU5UUWhJaFVVTXpJMU5NUk1VRXRSU2s1SUFpaitkRmtCalA2QlFVRkZBWU5NVUV4UVMwNUpBYlJNVUV0UlMwNUovdXhCUVVRQklFRkJSQUxVZFdwcWQzZHFhblVLL1RZQ3lrQ1ZsNWVWMUhWcWFuZDNhbXAxZFdwcWQzZHFhblZLbFphV2xaV1dscFVBQUFBQUFRQXBBY2dCRWdMS0FBTUFFMEFRQUFFQUFZUUFBQUNDQUV3UkVBSU5GaXNUTXdNanFtaWtSUUxLL3Y0QUFBQUFBZ0FwQWNnQnp3TEtBQU1BQndBa1FDRUZBd1FEQVFFQVhRSUJBQUNDQVV3RUJBQUFCQWNFQndZRkFBTUFBeEVHRFJVckV4TXpBeUVUTXdQbWdXaWovdjJCYUtRQnlBRUMvdjRCQXY3K0FBQUJBQ2dBTlFFZ0FlQUFCZ0FHc3dVQkFUQXJFemNYQnhjSEp5aXNUSXVMVEt3QkVjOHFxNnNyendBQUFBRUFKd0ExQVI4QjRBQUdBQWF6QXdBQk1Dc1RGeFVISnpjbmM2eXNUSXVMQWVEUERjOHJxNnNBQUFELy93QkUvL0lCd3dMS0FDWUFCQUFBQUFjQUJBRDJBQUFBQWY5QkFBQUJRQUxLQUFNQUdVQVdBZ0VCQVlKTEFBQUFnd0JNQUFBQUF3QURFUU1ORlNzQkFTTUJBVUQrV0ZjQnFBTEsvVFlDeXYvL0FEWUJId0ZtQW1nQlJ3QlJBQUFCSHltYUptWUFDYkVBQWJnQkg3QXpLd0FBQUFBQkFDVUFBQUlHQXNvQUVRQTNRRFFBQkFBRkFRUUZaUVlCQVFjQkFBZ0JBR1VBQXdNQ1hRQUNBb0pMQ1FFSUNJTUlUQUFBQUJFQUVSRVJFUkVSRVJFUkNnMGNLek0xSXpVekVTRVZJUlVoRlNFVk14VWpGWFpSVVFHUS90a0JGUDdzbUppQlNBSUJYT0pjWjBpQkFBQUFBUUFqQUFBQ0hRTFRBQ1lBV2tCWEF3RUJBQVFCQWdFWkFRY0dBMG9MQVFJS0FRTUVBZ05sQ1FFRUNBRUZCZ1FGWlFBQkFRQmZEQUVBQUlwTEFBWUdCMTBBQndlREIwd0JBQ01pSVNBZkhoMGNHQmNXRlJJUkVBOE9EUXdMQ0FZQUpnRW1EUTBVS3dFeUZoY0hKaVlqSWdZVkZUTVZJeFV6RlNNVUJnY2hGU0UxTmpZMUl6VXpOU00xTXpVME5nRlNPRm9qSkNCSUpqQTR3c0xDd3lRaUFYZitCaTh5WDE5ZlgyWUMweGNRVWc0VE16MU9SMGhJTmtFUlhsZ01SanhJU0VjL2FXNEFBQUFEQUZELzlnTUpBc29BQ3dBVUFDd0E1RUFPS2dFRUJTQUJCd0VoQVFJSEEwcExzQmxRV0VBdkFBVUpBUVlCQlFabEFBUUFBUWNFQVdjTUFRTURBRjBMQVFBQWdrc05BUW9LaFVzQUJ3Y0NZQWdCQWdLREFrd2JTN0FjVUZoQU13QUZDUUVHQVFVR1pRQUVBQUVIQkFGbkRBRURBd0JkQ3dFQUFJSkxEUUVLQ29WTEFBSUNnMHNBQndjSVlBQUlDSXNJVEJ0QU5nMEJDZ01GQXdvRmZnQUZDUUVHQVFVR1pRQUVBQUVIQkFGbkRBRURBd0JkQ3dFQUFJSkxBQUlDZzBzQUJ3Y0lZQUFJQ0lzSVRGbFpRQ1VWRlEwTUFRQVZMQlVzS1NnbEl4NGNHUmdYRmhBT0RCUU5GQW9KQ0FZQUN3RUxEZzBVS3hNeUZoVVVCZ1lqSXhFakVSY2pFVE15TmpVMEpnVVZNeFVqRlJRV016STJOeFVHQmlNaUpqVTFJelUzTitTSWVUSjNaeDVua0NrY1ZWUk1BVnAwZEJ3ZEVpY05EakVnTzBaTFR5SUN5bkZsUEdsQS92RUN5bHYrK3o1SVFEOW1iRTIvSXlZSUJFc0hERVZOeUN3b1pRQUFBQUFCQUJyLzlnSXdBdElBTHdCZ1FGMENBUUVBQXdFQ0FSb0JCZ1ViQVFjR0JFb3JBUU1CU1FvQkFnQURCQUlEWlFrQkJBZ0JCUVlFQldZQUFRRUFYd3NCQUFDS1N3QUdCZ2RmQUFjSGl3ZE1BUUF0TENRaklpRWZIUmdXRkJNU0VRc0tDUWdIQlFBdkFTOE1EUlFyQVRJWEJ5WW1JeUlITXhVakJoUVZGQlFYTXhVakZoWXpNalkzRlFZR0l5SW1KeU0xTXlZbU5UUTJOU00xTXpZMkFZQmhUeWdkUmlXUUllYnRBUUhPeGhCY1RDZExIeDVLTDNpT0ZreEVBUUVCUTBzVGtRTFNMRlVQR0s1SUNCQUtDQlFLUjAxVUVnMWNEUktHZDBjS0VRc0tFd1ZJZW80QUFBQUFCQUEzLy9vQzlnTFBBQmdBSEFBb0FEUUFhMEJvQ2dFQ0JSVUxBZ01DRmdFQUF3TktDd0VGQVFJQkJRSitBQVFJQmdnRUJuNEFBUUFDQXdFQ1p3QURDZ0VBQndNQVp3QUhBQWtJQndsbkFBZ0VCZ2hYQUFnSUJsOEFCZ2dHVHhrWkFRQXpNUzBySnlVaEh4a2NHUndiR2hNUkR3MElCZ0FZQVJnTUJoUXJFeUltTlRRMk5qTXlGaGNISmlZakloVVVNekkyTnhVR0JnRUJJd0VURkFZaklpWTFORFl6TWhZSEZCWXpNalkxTkNZaklnYmpTbUl1VHpFYk5CUVVFeW9UWDEwYk1STVNNd0dFL25SWkFZelBWa2hEV0ZaSVFWcnJJeXdwSlNVcExDTUJlMUZYUGt3aUN3azdCd3B0YXdvSVBBb0tBVS85TmdMSy9kcFNXRmhTVTFoWVV6STdPekl6T2pvQUFBSUFMUC8yQWM4QzFBQWdBQ2tBUVVBK0p4MFRFQThNQmdFRUFVb0FBUVFBQkFFQWZnQURBQVFCQXdSbkJRRUFBZ0lBVndVQkFBQUNYd0FDQUFKUEFRQWtJaGdXQ0FZRUF3QWdBU0FHQmhRckpUSTJOek1HQmlNaUppWTFOUVlHQnpVMk5qYzFORFl6TWhZVkZBWUhGUlFXRXpRaklnWVZGVFkyQVRnaE1BUkNCRTFSTGtzc0ZTOFlHUzRWUzFKQlRHNVlKRTA0SXhZNE9VUXVPRlplSkZCQllnY05CMFlIRGdma1JsWlFSMkdKSm9Fdk9RSDJWUzhtd1J4akFBQUFBQVFBVmdBQUE5SUN5Z0FWQUNFQUxRQXhBRjFBV2c0QkJRQURBUVFHQWtvQkFRQUZBSU1BQlFBSEJnVUhad3dCQmdzQkJBZ0dCR2NBQ0FJQ0NGVUFDQWdDWFEwSkNnTUVBZ2dDVFM0dUl5SVhGZ0FBTGpFdU1UQXZLU2NpTFNNdEhSc1dJUmNoQUJVQUZSRVlFUTRHRnlzekVUTUJNekF1QWpVUk14RWpBU013SGdJVkVTVWlKalUwTmpNeUZoVVVCaWN5TmpVMEppTWlCaFVVRmdjMUlSVldkd0V1QmdNREExNTAvczRFQXdNREFvQkRWbE5KUWxoVlJpa2tKQ2twSlNSZ0FSRUN5djNNSmp0Q0d3RjIvVFlDTnlnK1F4eitqb1paVTFOWldWTlRXVUE0TkRZME5EWTBPTVpNVEFBQUFBSUFFUUZxQXIwQ3lnQVVBQndBUTBCQUR3c0RBd0lGQVVvS0NBa0VBd1VDQlFLRUJnRUNBQVVGQUZVR0FRSUFBQVZkQndFRkFBVk5GUlVBQUJVY0ZSd2JHaGtZRnhZQUZBQVVGaEVTRVFzR0dDc0JFVE1URXpNUkl6VTBOamNqQXlNREl4WVdGUlVoRVNNMUlSVWpFUUZGWGw1aFcwQUNBUVJsTldBRUFRTCs5V1VCQ21ZQmFnRmcvdkVCRC82Z3pBZ3ZEUDd4QVE4UUtBYlJBU28yTnY3V0FBRC8vd0FqQUFBQzdRTFZBZ1lCZFFBQUFBSUFNdi92QWpnQ0Z3QVpBQ0lBU1VCR0lSc0NCUVFXRlE4REF3SUNTZ0FCQUFRRkFRUm5Cd0VGQUFJREJRSmxBQU1BQUFOWEFBTURBRjhHQVFBREFFOGFHZ0VBR2lJYUloOGRFeEVPRFFvSUFCa0JHUWdHRkNzRklpWW1OVFErQWpNeUZoWVZJUlVXRmpNeU5qY1hEZ0lUTlNZbUl5SUdCeFVCTlZWek95NUxYQzVKZGtUK2JCWk9MVWxXSWlNWE8xUlVFMHcwTWtjWEVVNStTRWhvUkNCRGZGV3VGeVU4TmhRbFBpVUJQb2NVSmlJWGlBQUFBQUFGQUIvLzl3TUhBc29BQXdBUUFDa0FOUUJDQUlwQURnME1DQU1GQUQwa0Z3TUhBd0pLUzdBYlVGaEFJd0FGQUFZREJRWm9DUUVEQXdCZEFnRUFBSUpMQ3dFSEJ3RmZDZ1FJQXdFQmd3Rk1HMEFuQUFVQUJnTUZCbWdKQVFNREFGMENBUUFBZ2tzSUFRRUJnMHNMQVFjSEJGOEtBUVFFaXdSTVdVQWlOellTRVFRRUFBQTJRamRDTVM4ZkhSRXBFaWtFRUFRUUR3NEFBd0FERVF3TkZTc3pBVE1CQXhFME5qY0dCZ2NISnpjekVRRWlKalUwTmpjbUpqVTBOall6TWhZVkZBWUhGaFlWRkFZRE5qWTFOQ1lqSWdZVkZCWVhNalkxTkNZbkp3WUdGUlFXZUFHb1dQNVhMd0lDQ0JrTE1TaUhUZ0Y1VEZBdElCMGpKMEVuT1ZJcEhpVXhWa1FhSWlBZEhTQWtHQ1VtS1NNTEhpQWxBc3I5TmdFZUFRTVlNaElJRmdnbE5XUCtWUDdaUWpncE5SRVRMU1lrTWhrMk55VXdFQkUxS1RoRkFRc0xIeGtYR3hzWEdCL1lJUm9iSXd3RURpVWJHaUVBQUFVQUZmLzNBeFVDMHdBbUFDb0FRd0JQQUZ3QTdrdXdHMUJZUUJ3WEFRUUZGZ0VEQkNBQkFnTUVBUW9KQXdFQUFWYytNUU1MQUFaS0cwQWNGd0VFQmhZQkF3UWdBUUlEQkFFS0NRTUJBQUZYUGpFREN3QUdTbGxMc0J0UVdFQTFBQWtBQ2dFSkNtZ0FBUXdCQUFzQkFHY0FCQVFGWHdZQkJRV0tTd0FDQWdOZkFBTURoVXNQQVFzTEIxOE9DQTBEQndlREIwd2JRRDBBQ1FBS0FRa0thQUFCREFFQUN3RUFad0FHQm9KTEFBUUVCVjhBQlFXS1N3QUNBZ05mQUFNRGhVc05BUWNIZzBzUEFRc0xDRjhPQVFnSWl3aE1XVUFyVVZBc0t5Y25BUUJRWEZGY1MwazVOeXRETEVNbktpY3FLU2diR1JRU0Rnd0xDUWNGQUNZQkpoQU5GQ3NUSWlZbk5SWXpNalUwSXlNMU16STJOVFFtSXlJR0J5YzJOak15RmhVVUJnY1ZGaFlWRkFZREFUTUJCU0ltTlRRMk55WW1OVFEyTmpNeUZoVVVCZ2NXRmhVVUJnTTJOalUwSmlNaUJoVVVGaGN5TmpVMEppY25CZ1lWRkJhWUpVQWVSRUJiWmpnMU15a2pIUjB4R3lnZlJqQkRTeW9pS2k5VlZ3R29WLzVZQVlwTVVDMGdIaUluUVNjNVVpa2VKVEZXUkJvaElCd2RJQ1FZSlNVcElnc2ZIeVVCRmc0UVNDVkZRRDBsSEJ3Y0ZCSTFGeHM5TWlZMENnUUlOaVk2U1A3cUFzcjlOZ2xDT0NrMUVSTXRKaVF5R1RZM0pUQVFFVFVwT0VVQkN3c2ZHUmNiR3hjWUg5Z2hHaHNqREFRT0pSc2FJUUFBQUFVQUovLzNBeGNDeWdBREFDSUFPd0JIQUZRQXdVQVpHaFVDQkFjVUFRa0VDQUVLQ1FjQkFnTlBOaWtEQ3dJRlNrdXdHMUJZUURVQUNRQUtBd2tLYUFBRERRRUNDd01DWndBR0JnQmRCUUVBQUlKTEFBUUVCMThBQndlTlN3OEJDd3NCWHc0SURBTUJBWU1CVEJ0QU9RQUpBQW9EQ1Fwb0FBTU5BUUlMQXdKbkFBWUdBRjBGQVFBQWdrc0FCQVFIWHdBSEI0MUxEQUVCQVlOTER3RUxDd2hmRGdFSUNJc0lURmxBS2tsSUpDTUZCQUFBU0ZSSlZFTkJNUzhqT3lRN0hod1pHQmNXRWhBTUNnUWlCU0lBQXdBREVSQU5GU3N6QVRNQkF5SW1KelVXRmpNeU5qVTBKaU1pQmdjbk56TVZJd2MyTmpNeUZoVVVCZ0VpSmpVME5qY21KalUwTmpZek1oWVZGQVlIRmhZVkZBWUROalkxTkNZaklnWVZGQllYTWpZMU5DWW5Kd1lHRlJRV21RR29WLzVZVFNGRkZobEZHaXN6TWk0V0pBNGxFUGExQ1FzZEVVTmFWd0dGUzFFdUh4MGlKMEVtT2xJcEhpVXhWa1FhSVNBZEhSOGtGeVlsS1NNS0h4OGtBc3I5TmdFVkRRMUxFQk1sS0NRbkJ3UVUwa0ZoQWdSRVFVWk8vdUpDT0NrMEVSTXVKaVF4R1RVM0pUQVFFVFVwT0VVQkN3c2ZHUmNiR3hjWkh0a2lHaHNqREFRT0pSc2FJZ0FBQlFBcS8vY0REUUxLQUFNQUNnQWlBQzRBT3dDYVFBd0pBUUlBTmgwUkF3Z0VBa3BMc0J0UVdFQXJDZ0VFQndnSEJBaCtBQVlBQndRR0IyZ0FBZ0lBWFFNQkFBQ0NTd3dCQ0FnQlh3c0ZDUU1CQVlNQlRCdEFMd29CQkFjSUJ3UUlmZ0FHQUFjRUJnZG9BQUlDQUYwREFRQUFna3NKQVFFQmcwc01BUWdJQlY4TEFRVUZpd1ZNV1VBa01DOE1Dd1FFQUFBdk96QTdLaWdZRmdzaURDSUVDZ1FLQ0FjR0JRQURBQU1SRFEwVkt6TUJNd0VERXlNMUlSVURBU0ltTlRRMk55WW1OVFEyTXpJV0ZSUUdCeFlXRlJRR0F6WTJOVFFtSXlJR0ZSUVdGekkyTlRRbUp5Y0dCaFVVRm04QnFGaitXR3VwMndFeHB3Ry9URkF0SUIwaVZEbzVVeW9lSlRGVlJCb2hJQjBkSUNRWUppVXBJd3NlSUNVQ3l2MDJBUjRCWjBVNC9veisyVUk0S1RVUkV5MG1OamsyTnlVd0VCRTFLVGhGQVFzTEh4a1hHeHNYR0IvWUlSb2JJd3dFRGlVYkdpRUFBQUVBVmdKZUFla0MvUUFPQUNaQUl3UURBZ0VDQVlNQUFnQUFBbGNBQWdJQVh3QUFBZ0JQQUFBQURnQU9JaE1pQlFjWEt3RUdCaU1pSmlZbk14WVdNekkyTndIcEIxeHBTVlFtQkdFRkxqVXROZ1VDL1V4VEpFYzBOeVFuTkFBQUFBRUF1QUpZQVQ4QytBQUpBQ0JBSFFZQkFnQUJBVW9BQUFBQlhRSUJBUUdFQUV3QUFBQUpBQWtVQXcwVkt3RVZCZ1lISXpVMk5qY0JQd29xRnp3S0V3UUMrQWtkVnlNTUhWY2dBUC8vLzdyL0l3QkYvOE1BQnd5Si93a0FBQUFBQUFFQXN3SmVBVDhDL2dBS0FENjJCd0VDQUFFQlNrdXdKRkJZUUF3QUFBQUJYUUlCQVFHRUFFd2JRQklDQVFFQUFBRlZBZ0VCQVFCZEFBQUJBRTFaUUFvQUFBQUtBQW9WQXcwVkt3RVZEZ0lISXpVMk5qY0JQd2NRREFObUNTd2JBdjRNRWpVM0Zna2RWeU1BQUFJQUNRR2dBVjREVHdBS0FCTUFOa0F6RHdFRUF3WUJBQVFDU2dBREJBRURWUVlGQWdRQ0FRQUJCQUJsQUFNREFWMEFBUU1CVFFzTEN4TUxFeEVTRVJFUUJ3d1pLd0VqRlNNMUl6VVRNeEV6SXpVME5qY0dCZ2NIQVY0OVdNRENWajJWQVFJRkhRdEtBZnBhV2pvQkcvN3RXUlUxR0F3eEVHNEFBQUFCQUNFQmx3RkpBMHdBSGdCQ1FEOGRBd0lFQVJ3UUFnTUVEd0VDQXdOS0JnRUZBQUFCQlFCbEFBRUFCQU1CQkdjQUF3SUNBMWNBQXdNQ1h3QUNBd0pQQUFBQUhnQWVKQ1VrSXhFSERCa3JBUlVqQnpZMk16SVdGUlFHSXlJbUp6VVdGak15TmpVMEppTWlCZ2NuTndFeHRnZ0xIUkZEV2xoVElVVVhHa1FhS3pNeExoWWtEaVlSQTB4QllRSUVSRUZHVGcwTlN4QVRKU2drSndjRUZOSUFBUUFjQWFBQlRBTk1BQVlBS2tBbkJRRUFBUUZLQXdFQ0FBS0VBQUVBQUFGVkFBRUJBRjBBQUFFQVRRQUFBQVlBQmhFUkJBd1dLeE1USXpVaEZRTk9xZHNCTUtZQm9BRm5SVGorakFBQUFBQURBQmdCbHdGT0ExVUFGd0FqQURBQU9VQTJKQjRTQmdRREFnRktCQUVBQlFFQ0F3QUNad0FEQVFFRFZ3QURBd0ZmQUFFREFVOFpHQUVBS3lrWUl4a2pEUXNBRndFWEJnd1VLeE15RmhVVUJnY1dGaFVVQmlNaUpqVTBOamNtSmpVME5oY2lCaFVVRmhjMk5qVTBKZ2NHQmhVVUZqTXlOalUwSmllME9WTXFIaVl3VlVWTFVTNGZIU0pVT1IwZkl4c2FJU0FxSGg4akppWWxLU01EVlRZM0pUQVFFVFVwT0VWQ09DazFFUk10SmpZNVBoc1hHQjhNQ3g4WkZ4dTREaVViR2lFaEdoc2pEQUFBQUFBV0FDbi9SUVBKQXVVQUJRQUpBQTBBRVFBWEFCc0FId0FyQURvQVNnQldBRjRBWWdCbUFHOEFjd0IzQUgwQWd3Q0hBSXNBandNaFM3QUtVRmhBRGtJQklCa3ZBUk1nTGdFV0d3TktHMHV3QzFCWVFBNUNBU0FaTHdFVElDNEJFQnNEU2h0QURrSUJJQmt2QVJNZ0xnRVdHd05LV1ZsTHNBcFFXRUNPTlFzQ0FRSU5BZ0Z3S1FFbElTWW1KWEFKQndVREJBQUtOQWd6QmpJRU1RZ0NBUUFDWlE4QkRSRU1EVlVBRVJRTUVWY1ZBUlFhR0E0RERCd1VER2NBR1RjQklCTVpJR2NlQVJ3ZEFSc1dIQnRsQUJZUUV4WlZIeGNDRXpZU0FoQWlFeEJuSkFFaUl3RWhKU0loWlM4dEt5Z0VKaWNuSmxVdkxTc29CQ1ltSjE0OE1Ec3VPaXc1S2pnSkp5WW5UaHRMc0F0UVdFQ0VOUXNDQVFJTkFnRndLUUVsSVNZbUpYQUpCd1VEQkFBS05BZ3pCaklFTVFnQ0FRQUNaUThCRFJFTURWVVZGQUlSR2hnT0F3d2NFUXhuQUJrM0FTQVRHU0JuSGdFY0hRRWJFQndiWlI4WEFoTVdOaElERUNJVEVHY2tBU0lqQVNFbElpRmxMeTByS0FRbUp5Y21WUzh0S3lnRUppWW5Yand3T3k0NkxEa3FPQWtuSmlkT0cwdXdEbEJZUUk0MUN3SUJBZzBDQVhBcEFTVWhKaVlsY0FrSEJRTUVBQW8wQ0RNR01nUXhDQUlCQUFKbER3RU5FUXdOVlFBUkZBd1JWeFVCRkJvWURnTU1IQlFNWndBWk53RWdFeGtnWng0QkhCMEJHeFljRzJVQUZoQVRGbFVmRndJVE5oSUNFQ0lURUdja0FTSWpBU0VsSWlGbEx5MHJLQVFtSnljbVZTOHRLeWdFSmlZblhqd3dPeTQ2TERrcU9Ba25KaWRPRzBDUU5Rc0NBUUlOQWdFTmZpa0JKU0VtSVNVbWZna0hCUU1FQUFvMENETUdNZ1F4Q0FJQkFBSmxEd0VORVF3TlZRQVJGQXdSVnhVQkZCb1lEZ01NSEJRTVp3QVpOd0VnRXhrZ1p4NEJIQjBCR3hZY0cyVUFGaEFURmxVZkZ3SVROaElDRUNJVEVHY2tBU0lqQVNFbElpRmxMeTByS0FRbUp5Y21WUzh0S3lnRUppWW5Yand3T3k0NkxEa3FPQWtuSmlkT1dWbFpRSk9NaklpSWhJUitmbmg0WjJjdExCSVNEZzRLQ2dZR0FBQ01qNHlQam8ySWk0aUxpb21FaDRTSGhvVitnMzZEZ29HQWYzaDllSDE4ZTNwNWQzWjFkSE55Y1hCbmIyZHVhbWhtWldSalltRmdYMTVjV1ZkVlUwOU5Ta2c5T3pjMk16RXNPaTA2S2lna0loOGVIUndiR2hrWUVoY1NGeFlWRkJNT0VRNFJFQThLRFFvTkRBc0dDUVlKQ0FjQUJRQUZFUkU5QmhZckFUVXpGU00xSVRVekZTRTFNeFVoTlRNVkJUVXpGU01WQlNNMU13VWpOVE1GRkFZaklpWTFORFl6TWhZRklpYzFGaFl6TWpZMU5UTVZGQVlCTXpJV0ZSUUdCeFVXRmhVVUJpTWpKeFFXTXpJMk5UUW1JeUlHQlRNeU5qVTBJeU1GSXpVekJTTTFNd1VWTXpJMk5UUW1Jd0VqTlRNRkl6VXpBVFV6RlRNVklUVXpOVE1WSVRVekZTRTFNeFV6TlRNVkF6V1VOZjdpaGY2OGhmNjhoUDZ0bEY0RGFqVTEvSlkyTmdGSFBrSkNQajVDUWo0Qk1oZ1BCeEFLRWhnOU52N01WRFUzRnhVV0hqVXVaZXNnSWlJZ0lDSWlJQUVuSUJjUkt4MytWRFkyQTJvMU5mNUNKQmdTRXhuK01qWTJBMm8xTmZ4Z05sNENlRjgxL2U2Ri9yeUUrb1VDcnphVVhqWTJOalkyTmw2VU5sNi9oSVNFNDBKUlVVSkRVRkRWQlRJQ0FoRVp4TUl5TFFFaElDa1lJQVFFQlJzaUp5eVBMVE16TFMwek13OFFFQisraFlXRk5rc1ZFaEFVL3ZLRWhJVCtycFJmTlRWZmxEVTFOVFUxTlFBQUFBTUFLZjlrQTc0QytBQURBQjhBS3dCRFFFQVJBUUVBRWdNQkF3SUJBa29DQVFOSEFBQUJBSU1BQVFJQmd3QURCQU9FQlFFQ0JBUUNWUVVCQWdJRVh3QUVBZ1JQQkFRcUtDUWlCQjhFSHlVdEJnWVdLd2tEQlRVME5qYzJOalUwSmlNaUJnY1hOall6TWhZVkZBWUhCZ1lWRlFjVUZqTXlOalUwSmlNaUJnSHpBY3YrTmY0MkFlb1VJU3NyWEZBcVdDSW9JVDRiSHg0YUlTWWdEU2dkR3lrcEd4MG9BdmorTnY0MkFjcDdGeGtkR2lJK01VTktIQlJYRVJZY0Z4MGlHaDQzSngyR0l4OGZJeVVlSGdBQUFQLy8vOGIvRUFFK0F2NENKZ2dzQUFBQUJnRkxxd0FBQVAvL0FBd0IxUUN2QXNvQ0JnSUdBQUFBQWdBSy8vWUNmQUw5QURRQVBnQlZRRkljQVFRQ0d3RUdCQUpLQ1FFQkJ3RUNCQUVDWndBRkFBUUdCUVJuQ3dFSUNBQmZDZ0VBQUVKTEFBWUdBMThBQXdNNUEwdzJOUUVBUERzMVBqWStMaTBwSnlBZUdSY1BEUWNHQlFRQU5BRTBEQWdVS3dFeUZoWVhNeFVqRmhZVkZBWUdJeUltSmpVME5qVTBKaU1pQmdjbk5qWXpNaFlWRkFZVkZCWXpNaEUwTkNjdUFqVTBOallYSWdZVkZCWVdGeVltQVROTmF6NE1SMEFCQVRwOVkweFVJUXNRRHd3WkNCZ1ZPUjh3S3d3dE5xa0JmWlpDSjFFK0p5Z3NabFlNVXdMOVJvRldWQW9iRFdXaFhqSlBMQ1JHRnhZUkNRVkdDeEF5S0NGTktTYzhBUlVKR2drQlBHQTZLMFlxVkNjaUl6a2pBV0ZvQUFBQUFRQUFBQUFDU1FMUUFCb0FsVXV3SjFCWVFBd0pBUUVBR0JVS0F3SUJBa29iUUF3SkFRRURHQlVLQXdJQkFrcFpTN0FNVUZoQUVRQUJBUUJmQXdFQUFEaExBQUlDT1FKTUcwdXdKMUJZUUJFQUFRRUFYd01CQUFCQVN3QUNBamtDVEJ0THNESlFXRUFWQUFNRE9Fc0FBUUVBWHdBQUFFQkxBQUlDT1FKTUcwQVZBQUlCQW9RQUF3TTRTd0FCQVFCZkFBQUFRQUZNV1ZsWnRoSVlKQ1lFQ0JnckFUNENOelkyTXpJWEZTWW1JeUlHQnc0REJ4RWpFUU16QVNJVkxTb1JGalFxSVJVR0VBZ1BHeE1MSlNzckVXM3FkUUYyTUdkYkhpWWtDVk1DQWhBZ0UwVllZQzMrOVFFUkFia0FBQUFBQWdBUC8vWURaUUliQUJnQUxnQkVRRUVYQVFBRUN3RUdCd0pLQUFjQUJnQUhCbjRGQXdJQUFBUmRDUUVFQkR0TENBRUdCZ0ZmQWdFQkFUa0JUQUFBS2lnbEpDRWZHaGtBR0FBWUZTVWxFUW9JR0NzQkZTTVdGaFVVQmlNaUppY2pCZ1lqSWlZMU5EWTNJelUzQlNFR0JoVVVGak15TmpVMU14VVVGak15TmpVMEpnTmxmQmNaWjJFN1JoRUZFVWM2WW1VZEY0WkxBaXIrZGhVZU56SXZMR1F1TFRJMkdBSWJWVFowTjNkNE1TMHRNWGgzTjNRMkxpZFZNbk0zVjBkR09WTlRQVUpIVmpkeUFBRC8vd0JmQUFBRE53T3RBaVlBTUFBQUFRY0FkZ0ZlQUs4QUNMRUJBYkN2c0RNckFBRC8vd0JUQUFBRFpnTCtBaVlBVUFBQUFBY0FkZ0Y1QUFELy93QUEvdWtDalFMTkFpWUFKQUFBQUFjQ1JnQ2lBQUQvL3dBdC91a0I3Z0lsQWlZQVJBQUFBQVlDUm1zQUFBQUFBZ0EwL3VrQkdQL0RBQXNBRndBNXNRWmtSRUF1QUFFQUF3SUJBMmNGQVFJQUFBSlhCUUVDQWdCZkJBRUFBZ0JQRFF3QkFCTVJEQmNORndjRkFBc0JDd1lORkN1eEJnQkVFeUltTlRRMk16SVdGUlFHSnpJMk5UUW1JeUlHRlJRV3BUSS9Qekl3UTBJeEZ4NGVGeGdlRy83cE9qTXpPam95TkRvNEhCa2FHeHNhR1J3QUFnQTgvL1lETkFMNEFCZ0FKQUFzUUNrWER3SURCQUZLQUFJQ2hFc0FCQVFCWHdBQkFZcExBQU1EQUY4QUFBQ0xBRXdrS0JVbUl3VU5HU3NCRkFZR0l5SW1KalUwTmpZek1oWVhOalkxTXhjR0JnY1dCUlFXTXpJMk5UUW1JeUlHQXRWS2xHNXhsRWhJbEhKVGZpa2tGbThIRFR3L0tmM1phWEp6WjJkeWMya0JabStsWEZ5bWIyNmxXell4RFVvekMwSmtHRlIxZ0pTVWdJQ1NrZ0FBQUFJQU5QLzJBcDBDYlFBV0FDSUFMMEFzREFFRUFSUUJBd1FDU2dBQ0FRS0RBQVFFQVY4QUFRR05Td0FEQXdCZkFBQUFpd0JNSkNrVUpTSUZEUmtyQVJRR0l5SW1KalUwTmpNeUZ6WTJOVE1YQmdZSEZoWUZGQll6TWpZMU5DWWpJZ1lDTG9wMVNYRkJpSFp1UkN3WmJRY05Qa1FQRWY1elJFeE1SRVZNVEVNQkRvYVNRWDFhaHBGRURVd3pDMFppRmg5TExGOWlZbDlmWUdBQUFBRUFXZi8yQTBrQytBQWNBQzVBS3dvQkFnTUNBVW9BQUFDRVN3VUVBZ0lDZ2tzQUF3TUJYd0FCQVlzQlRBQUFBQndBSENNVEtSUUdEUmdyQVJVMk5qVXpGdzRDQnhFVUJnWWpJaVkxRVRNUkZCWXpNalkxRVFLSkxSOXRCd2tuVFVNN2VtR0trR3hYV1Z0T0FzcGdDa3M1Q3pGVU9RdisyRXAzUlpGM0FjeitORlJZWDA0Qnl3QUJBRTcvOWdMaEFtNEFIZ0JkUUFzYkJRSURBZ2dCQUFNQ1NrdXdHVkJZUUJnR0FRVUNCWU1FQVFJQ2hVc0FBd01BWUFFQkFBQ0RBRXdiUUJ3R0FRVUNCWU1FQVFJQ2hVc0FBQUNEU3dBREF3RmdBQUVCaXdGTVdVQU9BQUFBSGdBZUV5TVRKQllIRFJrckFSY09BZ2NSSXljakJnWWpJaVkxRVRNUkZCWXpNalkxRVRNVk5qWTFBdG9IQ1NaTVExVVBCUnBiTTE5bGF6VTRVMEJxTEI0Q2Jnc3hWam9JL21aSEtpZGRad0ZnL3JBL1BtRmNBUkE2Q1UwNEFBSCtoUUpQLzBZRE9BQVRBQ2xBSmc4QkFRSU9CZ0lBQVFKS0FBQUJBSVFBQWdFQkFsY0FBZ0lCWHdBQkFnRlBJeVlVQXcwWEt3TVVCZ2NISXljMk5qVTBKaU1pQnpVMk16SVd1aTBrQlQ4SUpDWWdHQ0VWRmlvK1F3TFpKaXNKTUZJR0Z4WVdEd1k5Q0RBQS8vOEFYd0FBQWZFRHJRSW1BQ2dBQUFFSEFFTUFjd0N2QUFpeEFRR3dyN0F6S3dBQS8vOEFZQUFBQXJJRHJRSW1BYkVBQUFFSEFFTUExd0N2QUFpeEFRR3dyN0F6S3dBQS8vOEFOUC8yQWdzQy9nSW1BRWdBQUFBR0FFTmtBQUFBLy84QVV3QUFBa1lDL2dJbUFkRUFBQUFIQUVNQWxnQUFBQUVBR1AvOEE0a0N5Z0FsQUNoQUpTUVhEZ2tFQXdBQlNnSUJBZ0FBSmtzRkJBSURBeWNEVEFBQUFDVUFKUk1aSEJRR0J4Z3JGeVltQWljekhnSVhNelkyTnpjbUppY3pIZ01YTXpZU056TUdBZ2NqTGdJbkErMDRYanNFY0FZd1FCNEZCaGdPVmdrTUFuQURIU3cxSEFRNFF3RndBbUJkWXg4N01SQjRCRjdzQVFTQWVPRzlRaUJRS1BBMGFUTlJxSitPT0hRQkxiM1AvcFdVTW5wL04vNmVBQUFBQVFBU0FBQURGUUljQUNJQUtFQWxIaGNTQndRQUFnRktCUVFEQXdJQ0tFc0JBUUFBSndCTUFBQUFJZ0FpSEJRVUV3WUhHQ3NCQmdJSEl5WW1Kd2NqTGdJbk14NENGek0yTmpjM0ppWW5NeFlXRnpNMk5qY0RGUWRYV0dFY1BCSnlYeXRQTlFKcUJTWXpHZ01JSHcxRkRBNEJhZ1ZBS0FReVFnY0NISkwrL0lZemV6am1SSzNGWmw2b2lqRVpOeHVMTDJveWV1VmtWZVdKQUFBQUFnQUdBQUFDY0FMS0FCTUFIQUE1UURZREFRRUVBUUFGQVFCbEFBVUFDQWNGQ0dVQUFnSW1Td0FIQndaZUNRRUdCaWNHVEFBQUhCb1dGQUFUQUJJaEVSRVJFUkVLQnhvck14RWpOVE0xTXhVekZTTVZNeklXRmhVVUJpTW5NekkyTlRRbUl5T1hrWkZ0eE1SVWFIczFnSTlkVlZaVFcxeEhBaEJXWkdSV2JEZGRPMkp6V2p3L1FUSUFBQUFDQUFZQUFBSlRBb1FBRVFBYUFFQkFQUWtCQmdBR2d3QUNDZ0VIQ0FJSFpRUUJBUUVBWFFVQkFBQW9Td0FJQ0FOZUFBTURKd05NRXhJQUFCWVVFaG9UR2dBUkFCRVJFU01oRVJFTEJ4b3JFeFV6RlNNVk16SVZGQVlqSXhFak5UTTFFeU1WTXpJMk5UUW01NnVyaXVKcWVQTjRlT3lEaFRkR1FRS0VhVldGbWsxYUFjWlZhZjVybnlZdEt5RUFBQUFCQUYvLzlnT0RBdFFBSlFDa1M3QVpVRmhBRWhJQkJnTVRBUVFHSWdFSkFTTUJBQWtFU2h0QUVoSUJCZ01UQVFRR0lnRUpBU01CQWdrRVNsbExzQmxRV0VBaUJ3RUVDQUVCQ1FRQlpRQUdCZ05mQlFFREF5WkxBQWtKQUY4Q0NnSUFBQzRBVEJ0QUtnY0JCQWdCQVFrRUFXVUFBd01tU3dBR0JnVmZBQVVGTFVzQUFnSW5Td0FKQ1FCZkNnRUFBQzRBVEZsQUd3RUFJQjRjR3hvWkZ4VVFEZ3NLQ1FnSEJnVUVBQ1VCSlFzSEZDc0ZJaVltSnlNUkl4RXpFVE0rQWpNeUZoY0hKaVlqSWdZSElSVWhGaFl6TWpZM0ZRWUdBcWx0a0VzRmtXeHNsUXBXa21jNGFDb25KVk11WTNZTkFVYit1QVYwYmk5WExTdFpDbE9YWnY2NkFzcisyRnlKVFJvVldoRWJiV2hjY1lJUkRsMFFEd0FBQVFCVC8vWUMwd0lsQUNRQXBFdXdHVkJZUUJJUkFRWURFZ0VFQmlFQkNRRWlBUUFKQkVvYlFCSVJBUVlERWdFRUJpRUJDUUVpQVFJSkJFcFpTN0FaVUZoQUlnY0JCQWdCQVFrRUFXVUFCZ1lEWHdVQkF3TW9Td0FKQ1FCZkFnb0NBQUF1QUV3YlFDb0hBUVFJQVFFSkJBRmxBQU1ES0VzQUJnWUZYd0FGQlM5TEFBSUNKMHNBQ1FrQVh3b0JBQUF1QUV4WlFCc0JBQjhkR3hvWkdCWVVEdzBLQ1FnSEJnVUVBd0FrQVNRTEJ4UXJCU0ltSnlNVkl4RXpGVE0rQWpNeUZoY0hKaVlqSWdZSE14VWpGaFl6TWpZM0ZRWUdBanhyaXdtQWFtcUJDRVpyUXl4UUhSOGFRQjVGUmdmeThnUkxSU3hHSHg1RkNuWi82d0liMjFKbExoTU5VUXNRUjBoVlUwd1REVmdQRHdBQ0FBQUFBQUs1QXNzQUN3QVZBQ3BBSndBR0F3RUJBQVlCWmdjQkJRVW1Td1FDQWdBQUp3Qk1BQUFTRVFBTEFBc1JFUkVSRVFnSEdTc0JBU01ESXhFakVTTURJd0VYRGdJSEJ6TW5KaVlCbGdFamJuNUFZVUIvYlFFaU9nUVJGUWNlbmlBTEhBTEwvVFVCUlA2OEFVVCt2QUxMV1E4ek5oTkxVUjFLQUFBQUFBSUFBd0FBQWswQ0d3QUxBQlVBS2tBbkFBWURBUUVBQmdGbUJ3RUZCU2hMQkFJQ0FBQW5BRXdBQUJJUkFBc0FDeEVSRVJFUkNBY1pLd0VUSXljakZTTTFJd2NqRXhjakJnWUhCek1uSmlZQmFPVnFYREJlTWx0cDVFSUVCeFlKR1lNWkNoY0NHLzNsNHVMaTRnSWJReGc0RlVBL0Z6d0FBQUlBWHdBQUE3Y0N5d0FUQUJ3QU1rQXZDZ0VJQlFNQ0FRQUlBV1VMQ1FJSEJ5WkxCZ1FDQXdBQUp3Qk1BQUFaR0FBVEFCTVJFUkVSRVJFUkVSRU1CeDByQVFFakF5TVJJeEVqQXlNVEl4RWpFVE1STXhNWEJnWUhCek1uSmlZQ2xnRWhjSDAvWUQ5K2I0UzRiR3pkZVRvSEhBMGVtaDRNR3dMTC9UVUJSdjY2QVViK3VnRkcvcm9DeXY3WUFTbFpHMHNoVEZBZVNRQUFBZ0JUQUFBRExBSWJBQk1BSFFBeVFDOEtBUWdGQXdJQkFBZ0JaZ3NKQWdjSEtFc0dCQUlEQUFBbkFFd0FBQm9aQUJNQUV4RVJFUkVSRVJFUkVRd0hIU3NCRXlNbkl4VWpOU01ISXpjakZTTVJNeFV6TnhjakJnWUhCek1uSmlZQ1NPUnBYaTllTGw1cVk0OWpZN05lUWdRSEZ3a1dmaGNLRmdJYi9lWHI2K3ZyNitzQ0c5emNReFJBRmpNNUZ6c0FBZ0FPQUFBQzRRTEtBQjBBSUFBOFFEa2NBUUlHQlNBYkFnTUJCZ0pLQXdFQkJnQUdBUUIrQUFZR0JWMEhBUVVGSmtzRUFnSUFBQ2NBVEFBQUh4NEFIUUFkRkJFUkZCY0lCeGtyQVJVSEhnSVhGeU1uTGdJbkVTTVJEZ0lIQnlNM1BnSTNKelVGSVJjQ29NYzdTUzBTUlc1QURSNHdLMnNyTUJ3TlFIQkVFUzFJTzhNQnl2NjdvZ0xLUSt3SExsQTUzZElzTWhjQy9yY0JTUUlYTWl6UzNUaFFMd2ZzUTE3RkFBQUFBQUlBQndBQUFuSUNHd0FkQUNBQVBFQTVIQUVDQmdVZ0d3SURBUVlDU2dNQkFRWUFCZ0VBZmdBR0JnVmRCd0VGQlNoTEJBSUNBQUFuQUV3QUFCOGVBQjBBSFJRUkVSUVhDQWNaS3dFVkJ4NENGeGNqSnk0Q0p4VWpOUTRDQndjak56NENOeWMxQlNNWEFqcWNMamdpRHoxak9nc1lKaDlmSWlVWEREcGpQUThqT0M2Y0FYajJld0liTTY4SEp6MHBwWjBmSkJFQjh2SUJFQ1VmbmFVcFBTY0hyek5SaXdBQUFBSUFYd0FBQStrQ3lnQWpBQ1lBUlVCQ0lnRUNDZ2NtQVFnS0FnRUJDQU5LQUFnRkF3SUJBQWdCWndBS0NnZGRDd2tDQndjbVN3WUVBZ01BQUNjQVRBQUFKU1FBSXdBakVSRVJGQlFSRVJRWERBY2RLd0VWQng0Q0Z4Y2pKeTRDSnhFakVRNENCd2NqTnpZMk55TVJJeEV6RVNFbk5RVWhGd09veHp0S0xCSkZiRUVPSHpFcGJDc3dIZ3hBYjBjTEdSSEdiR3dCU0x3Qnl2NjhvZ0xLUSswR0xsQTUzZEl1TWhRQy9yZ0JTQUlXTXl2UzRDUXpELzY2QXNyKzJPVkRYc1lBQUFBQ0FGTUFBQU5UQWhzQUlnQWxBRVZBUWlFQkFnb0hKUUVJQ2dJQkFRZ0RTZ0FJQlFNQ0FRQUlBV2NBQ2dvSFhRc0pBZ2NIS0VzR0JBSURBQUFuQUV3QUFDUWpBQ0lBSWhFUkVSUVVFUkVURnd3SEhTc0JGUWNlQWhjWEl5Y21KaWNWSXpVT0FnY0hJemMyTmpjakZTTVJNeFVoSnpVRkl4Y0RHNXd2TnlJUFBXTTZFU2t1WHlFbUdBczdZajBJRXdxVVkyTUJBWllCZVBaN0Foc3pzQVluUFNtbG5TNGxBZkh4QVJBa0g1MmxGaVlMN0FJYjI2Z3pVWWdBQUFFQUcvOG1BaVVEV1FCVkFOVkxzQ0pRV0VBZlRRTUNBUUJTU2tjS0JBVUlBVVlCQndnUUFRWUhKUUVFQXdWS0pnRUVSeHRBSTAwQkFRbFNTa2NLQkFVSUFVWUJCd2dRQVFZSEpRRUVBd1ZLQXdFSkFVa21BUVJIV1V1d0lsQllRQ3dBQ0FFSEFRZ0hmZ2tLQWdBQUFRZ0FBV2NBQndBR0JRY0daZ0FEQUFRREJHRUFCUVVDWHdBQ0FpNENUQnRBTXdBSkFBRUFDUUYrQUFnQkJ3RUlCMzRLQVFBQUFRZ0FBV2NBQndBR0JRY0daZ0FEQUFRREJHRUFCUVVDWHdBQ0FpNENURmxBR3dFQVQwNUVRajQ4T3prMU15MG9JeDBZRmdnR0FGVUJWUXNIRkNzQk1oWVhGU1ltSXlJR0J4WVdGUlFHQnhVV0ZoVVVCZ2NPQWhVVUZqTXlOall6TWhZWEZTWW1JeUlHSXlJbUpqVTBOalkzTmpZMU5DWWpJelV6TWpZMU5DWWpJZ1lISnpZMk55WW1KelV6RmhZWFBnSUJzeEliQ0FZVUN4YzBGbFpjWUUxYVpJdVZOVFlUSVM4cVBqVWZLaThNQ2pRcEsxWkFSRThpSzJSVVlWZDVaVnhYY0dSTVFEdGZLak1tVnpjYVB4Vk1GemthRWl3MEExa0ZBajRDQkNvaERWNUJTVllNQkF0WFIxNXlBd0lORnhFVkd3TUNDd2hkQ1E4RkpUNG1LajRqQXdNOFFFQTNXRUE0TVRVaEcwa1pKUWdlUWhZTkVEVWFGeThnQUFBQUFRQU4velFCMGdLYkFGUUExVXV3SWxCWVFCOU1Bd0lCQUZGSlJna0VCUWdCUlFFSENBOEJCZ2NsQVFRREJVb21BUVJIRzBBalRBRUJDVkZKUmdrRUJRZ0JSUUVIQ0E4QkJnY2xBUVFEQlVvREFRa0JTU1lCQkVkWlM3QWlVRmhBTEFBSUFRY0JDQWQrQ1FvQ0FBQUJDQUFCWndBSEFBWUZCd1pvQUFNQUJBTUVZUUFGQlFKZkFBSUNMZ0pNRzBBekFBa0FBUUFKQVg0QUNBRUhBUWdIZmdvQkFBQUJDQUFCWndBSEFBWUZCd1pvQUFNQUJBTUVZUUFGQlFKZkFBSUNMZ0pNV1VBYkFRQk9UVU5CUGp3N09UVXpMU2dqSGhrWEJ3VUFWQUZVQ3djVUt3RXlGaGNWSmlNaUJnY1dGaFVVQmdjVkhnSVZGQVlHQnlJR0JoVVVGak15TmpNeUZoY1ZKaVlqSWdZaklpWW1OVFEyTmpjMk5qVTBKaU1qTlRNeU5qVTBJeUlHQnljMk5qY21KaWMxTXhZV0Z6NENBWW9TR2dnTkZ4WXZGRHBHT0M4Z055RXliRmN4TVJBaUxqVlJKU0ltQ0FvdEZpTmpPVHhFSFNWV1MwZFFUVTVDT1VaVGR5ZE9LQ01lT3lFVk14UktGelFjRXlzMUFwc0ZBajRGSXh3T1F6UXhPZzBFQ1I0ektDMUlLd0VORnc0WEZ3VUxDVlVLQ3dVa09pRW1QU1FCQVNZc0t5ZFJJaWxGRVJGUURCRUVHam9URFJBeEhCY3VId0FBLy84QU5RQUFBd1FDeWdJR0FYUUFBUC8vQUV6L0VBTFZBdmNDQmdHVUFBQUFBd0E4Ly9ZQzFRTFZBQThBRmdBZEFEZEFOQUFEQUFVRUF3VmxCZ0VDQWdGZkFBRUJMVXNIQVFRRUFGOEFBQUF1QUV3WUZ4RVFHeG9YSFJnZEZCTVFGaEVXSmlNSUJ4WXJBUlFHQmlNaUppWTFORFkyTXpJV0ZpVWlCZ2NoSmlZRE1qWTNJUllXQXRWS2xHNXhsRWhJbEhKdWswcit0V2RxQ2dHeUNtZG5hV29IL2tzSWFRRm1iNlZjWEtadmJxVmJXNldqZG1kbmR2M2FmWEJ3ZlFBQUFBTUFOUC8yQWk0Q0pRQU5BQlFBR3dBM1FEUUFBd0FGQkFNRlpRWUJBZ0lCWHdBQkFTOUxCd0VFQkFCZkFBQUFMZ0JNRmhVUERoa1lGUnNXR3hJUkRoUVBGQ1VpQ0FjV0t3RVVCaU1pSmlZMU5EWXpNaFlXSnlJR0J5RW1KZ015TmpjaEZoWUNMb3AxU1hGQmlIWktjVUgrUTBNSUFSMEhSa0ZFUlFYKzR3VkdBUTZHa2tGOVdvYVJRWHhsU1VoSVNmNkFVRTFOVUFBQUFRQUFBQUFDcFFMUUFCa0FVa0FMRmdFQUFoY0xBZ0VBQWtwTHNDZFFXRUFTQkFFQUFBSmZBd0VDQWlaTEFBRUJKd0ZNRzBBV0FBSUNKa3NFQVFBQUExOEFBd010U3dBQkFTY0JURmxBRHdFQUZCSUhCZ1VFQUJrQkdRVUhGQ3NCSWdZSEF5TURNeE1XRmhjMk5qYzNQZ0l6TWhZWEZTWW1Bbk1nSXhTbWVmMXZuUkFVQ0FnV0RsRVdLVG93RmlVTUN4a0NkencrL2dNQ3l2NDdMMHNtSjFJdi9VVlhLZ2dGVndRSEFBRUFBQUFBQWl3Q0lBQWFBR1pMc0MxUVdFQUxBd0VCQUJJRUFnSUJBa29iUUFzREFRRURFZ1FDQWdFQ1NsbExzQzFRV0VBU0FBRUJBRjhEQkFJQUFDaExBQUlDSndKTUcwQVdBQU1ES0VzQUFRRUFYd1FCQUFBb1N3QUNBaWNDVEZsQUR3RUFEZzBNQ3dnR0FCb0JHZ1VIRkNzQk1oWVhGU1ltSXlJR0J3TWpBek1URmhZWE16WTJOemMrQWdINkRCc0xDQk1KRmhvTWczL0tiM2NPRWdJRUF4QUxReEVpTVFJZ0JRUlNCQU1tSXY1OEFoditxeVkvRVJaRElzczBQQm9BQVAvL0FBQUFBQUtsQTYwQ0pnSmtBQUFCQnd1UEFtY0Fyd0FJc1FFQ3NLK3dNeXNBQVAvL0FBQUFBQUlzQXY0Q0pnSmxBQUFBQnd1UEFqY0FBQUFEQUR6L0VBVGVBdFVBRHdBYkFEWUFSVUJDSVFFQ0JEWUJBQUl2QVFjQUxnRUdCd1JLQUFNREFWOEFBUUV0U3dVQkJBUW9Td0FDQWdCZkFBQUFMa3NBQndjR1lBQUdCaW9HVENVakdSSWtKU1lqQ0FjY0t3RVVCZ1lqSWlZbU5UUTJOak15RmhZRkZCWXpNalkxTkNZaklnWWxNeE1XRmhjek5qWTNFek1EQmdZaklpWW5OUllXTXpJMk56Y0Nwa09KYVd1SlFVR0piR2lKUS80R1hXaHFXbHBwYVYwQ0pISnlEUk1GQkFVVkRXbHg1aDFpVGhra0RRc2ZFUzQ0RUJjQlptK2xYRnltYjI2bFcxdWxiNENVbElDQWtwSTEvczBpUUNBWlJ5TUJNdjJjVGxrRkExUUNCRFVyT2dBQUFQLy9BRFQvRUFSY0FpVUFKZ0JTQUFBQUJ3QmNBazBBQUFBQ0FEei94QUw5QXdVQUdBQXdBRFpBTXlzbEFnTUJId0VBQWdKS0FBRUFBd0lCQTJjQUFnQUFBbGNBQWdJQVh3UUJBQUlBVHdFQUtTY2RHdzRNQUJnQkdBVUhGQ3NGSWlZbkxnSTFORFkzTmpZek1oWVhGaFlWRkFZSEJnWW5Oall6TWhZWE5qWTFOQ1luQmdZaklpWW5CZ1lWRkJZQm5Sd2tCbDErUUkrTUJ5UWJHeVFIaVpHUWlBY21ZQWtqR1Jja0NsWlVWRllJSkJrWkpBbFZWbFk4R2gwTllwcGprOEVVSGhnWUhoVEJsSlRDRlIwYWxoWVNFaFlVaTIxc2pCTVhFeE1XRklwc2JZc0FBQUFDQURUL3l3SmxBa3dBRlFBcUFDNUFLeDBaQWdJQktDTUNBQU1DU2dBQkFBSURBUUpuQUFNQUFBTlhBQU1EQUY4QUFBTUFUeWtwS1NRRUJ4Z3JBUlFHQndZaklpY21KalUwTmpjMk5qTXlGaGNXRmdjMEppY0dJeUluQmdZVkZCWVhOall6TWhjMk5nSmxjMlVKTnpnSllIaHpad1FnR3hrZ0JXSjRiVFE0RFRJMEREZzBORGtJSFJvd0RqZzFBUTUwalJFeE1oR0xkWFNNRVJrVUZCb1FqSFJMWHhBcEtoQmZURXhoRHhRU0pnOWhBQUFEQUR6LzlnUFlCQlFBRVFBakFGd0Fma0I3RXhJQ0J3Sk1Md0lJQjBzd0Fnb0lQendDQ1FwYUFRWUpCVW9BQlFNQ0F3VUNmZ0FLQ0FrSUNnbCtBQUFBQXdVQUEyY0FBUThFQWdJSEFRSm5EQUVJQ0FkZkRRRUhCeTFMQ3dFSkNRWmZEaEFDQmdZdUJrd2xKQUFBV0ZaUVRrbEhRMEUrUFRvNE5ESXRLeVJjSlZ3ZkhRQVJBQkVpSWhJakVRY1lLd0UxTkRZek1oWVdNek1WSXlJbUppTWlCeGMxTmpZMU5DNENOVFEyTXpJV0ZSUUdBeUltSmpVME5qWXpNaFlYQnlZbUl5SUdGUlFXTXpJMk56VXpGUllXTXpJMk5UUW1JeUlHQnljMk5qTXlGaFlWRkFZR0l5SW1Kd1lHQVZkR015WkpVak1HQ0Q1WFFCc3dCQ0VkSGhBVUVCNGFIaVJHb0dCL1B6OTFVeWRPSGlnVk14MUxWV0ZpSERRWGJCYzBIMkZpVlV3ZE14VW5IVThtVTNVL1AzNWdOMVlrSkZZRGtCSkFNaDRkUnhzYk9LWWxDUm9NQ2drSERnMFZGaVVmS2p6OUFtR3JibXlnV0JvV1RnOFdqWCtEbHhZVDBOQVVGWmVEZjQwV0QwNFdHbGlnYkc2cllTRWdJQ0VBQUFNQU92LzJBMTREZXdBUkFDSUFWQUNIUUlRWkdBSUhBa1lzQWdnSFJTMENDZ2c3T0FJSkNsSUJCZ2tGU2hBQkJRTUNBd1VDZmdBS0NBa0lDZ2wrRHdFQUFBTUZBQU5uQUFFRUFRSUhBUUpuREFFSUNBZGZEUUVIQnk5TEN3RUpDUVpmRGhFQ0JnWXVCa3drSXhNU0FRQlFUa3BJUkVJL1BUbzVOalF4THlvb0kxUWtWQklpRXlJT0RRd0tDQVlFQXdBUkFSRVNCeFFyQVRJV0ZqTXpGU01pSmlZaklnY2pOVFEyRnpJV0ZSUUdCelUyTmpVMExnSTFOQU1pSmpVME5qTXlGaGNISmlZakloVVVGak15TmpjMU14VVdGak15TmpVMEl5SUhKelkyTXpJV0ZSUUdJeUltSndZR0FZb21TVkV6QndnK1ZrQWNNQU5JUm1FZkkwVTdIQjBQRkE5YWNIMTRaU1U2R1NZWEtCTndTVUFlTUJscUdUSWZRRVp4SkMwb0dUd2xaWGgrYnpoUkhCeFJBM3NkSFVnYkhEZ1NRREYxSlI4ck93b2xDUm9OQ2drSERRMHIvUENNaUl5UUV3OU9DdzNEV21NV0haYVVIUmhqV3NNWlR3OFRrSXlJakNnbUppZ0FBQUQvL3dBWS8vd0RpUU41QWlZQ1VBQUFBUWNIMUFDM0FLOEFDTEVCQWJDdnNETXJBQUQvL3dBU0FBQURGUUxMQWlZQ1VRQUFBUVlIMUc4QkFBaXhBUUd3QWJBekt3QUJBRHYvRUFKdUF0UUFHUUE2UURjREFRRUFEd1FDQWdFQ1NnQUJBUUJmQlFFQUFDMUxBQUlDQkY4QUJBUXVTd0FEQXlvRFRBRUFFeElSRUE0TUNBWUFHUUVaQmdjVUt3RXlGaGNISmlZaklnWVZGQll6TWpjUkl6VWlKaVkxTkRZMkFaNDRiQ3dvSlZVeGNINXdmVGt6Ykh5YlNGT2ZBdFFZRkZzUkdKS0FmNUVPL3E3bVhxVnNiS1ZlQUFFQU5QOFFBZFFDSlFBWkFEcEFOd01CQVFBUUJBSUNBUUpLQUFFQkFGOEZBUUFBTDBzQUFnSUVYd0FFQkM1TEFBTURLZ05NQVFBVUV4SVJEZ3dJQmdBWkFSa0dCeFFyQVRJV0Z3Y21KaU1pQmhVVUZqTXlOamNSSXpVbUpqVTBOallCT2lwU0hoOGRReDVOU1UxSkl6QVdhbnlHUkhZQ0pSSU9WUW9SWFdOaFd3c0ovcTNuQW9XTVozdzRBQUFBQUFFQU0vLytBaTRDZFFBVEFBYXpDZ0FCTUNzQkZ3Y1hCeWNIRndjbkJ5YzNKemNYTnljM0Z3Ry9QRnFOSTR0ampDS01XRDFZaXlHTllvd2lqQUoxSTV0UU9sQ3JVVHBRbVNLYlVUcFNyRkU3VWdBQUFBZ0FGUDlrQThrQ3VBQU5BQnNBS1FBM0FFVUFVd0JoQUc4QTJiRUdaRVJBemlBREFnRUNCQUlCQkg0aUN3a2hCd1VGQmd3R0JReCtKQk1SSXc4RkRRNFVEZzBVZmlZYkdTVVhCUlVXSEJZVkhING5Id0lkSGgyRUFBQUFBZ0VBQW1jSUFRUUtBUVlGQkFabkVBRU1FZ0VPRFF3T1p4Z0JGQm9CRmhVVUZtY0FIQjRlSEZjQUhCd2VYd0FlSEI1UFltSlVWRVpHT0RncUtod2NEZzRBQUdKdlltOXRhMmxvWm1SVVlWUmhYMTFiV2xoV1JsTkdVMUZQVFV4S1NEaEZPRVZEUVQ4K1BEb3FOeW8zTlRNeE1DNHNIQ2tjS1NjbEl5SWdIZzRiRGhzWkZ4VVVFaEFBRFFBTkloSWlLQWNYSzdFR0FFUUJOall6TWhZWEl5WW1JeUlHQnhjMk5qTXlGaGNqSmlZaklnWUhJVFkyTXpJV0Z5TW1KaU1pQmdjSE5qWXpNaFlYSXlZbUl5SUdCeUUyTmpNeUZoY2pKaVlqSWdZSEJUWTJNeklXRnlNbUppTWlCZ2NoTmpZek1oWVhJeVltSXlJR0J3VTJOak15RmhjakppWWpJZ1lIQVlNQ01qSXdOUU1uQXlVWkhpQUQ5Z0l5TWpBMUF5Y0RKUmtlSUFQOXFBSXlNakExQXljREpSa2VJQU44QWpJeU1EVURKd01sR1I0Z0F3TENBakl5TURVREp3TWxHUjRnQS8xTEFqSXlNRFVESndNbEdSNGdBd0lPQWpJeU1EVURKd01sR1I0Z0EvN0FBakl5TURVREp3TWxHUjRnQXdKWkt6UTFLaHdQRGgyTExETTFLaHdQRGgwc016VXFIQThPSGU0c016VXFIQThPSFN3ek5Tb2NEdzRkOUN3ek5Tb2NEdzRkTERNMUtod1BEaDJJTERNMUtod1BEaDBBQUFBQUNBQVUvMFFEcUFMWUFBZ0FFUUFhQUNNQUxBQTFBRDRBUndCWHNRWmtSRUJNRVFFQUFUYzFMQ3NvSnlNZkhoc1hGaE1OREE4REFEdzdNakVFQWdNRFNnUUJBUUFBQXdFQVpRVUJBd0lDQTFVRkFRTURBbDBBQWdNQ1RUOC9BQUEvUno5SFJFTUFDQUFJRXdZSEZTdXhCZ0JFQVFZR0J5TW5OalkzQlJZV0Z3Y25KaVluQlJjR0JnY25OelkyQlJZV0Z4VUhKaVluSlJZV0Z4VW1KaWMxQnhjV0ZoY0hKaVluSlJjSEJnWUhKelkyQlJjR0JnY2pOalkzQWhRS0V3VkVCUW9oRWY3YUZ6UVdNQWdVSnc4Q2lDSWtVQjB3QVNKVi9SVXBYaVFISmxnbUF2QW1XQ1lwWGlReUNCTW9EeUVXTlJiK2FqQUJJbFVuSWlSUUFTY0ZDaUVSTHdvVEJRTFlLVjRrQnlaWUptc2tVQjB3QVNKVkp3Z2hGalVXTUFnVEtQRUtFd1ZFQlFvaEVTOEtJUkV2Q2hNRlJPUUJJbFVuSWlSUUhSd3dDQlFuRHlFWE5FRUhKbGdtS1Y0a0FBQUFBZ0JmL3o0REpnT2lBQTRBSmdCTVFFa2dBUWdHQVVvREFRRUNBWU1BQWdvQkFBWUNBR2NBQ0FzQkNRZ0pZUWNCQmdZbVN3VUJCQVFuQkV3UER3RUFEeVlQSmlVa0l5SWJHaGtZRVJBTUN3a0hCUVFBRGdFT0RBY1VLd0VpSmlZbk14WVdNekkyTnpNR0JoTTNJeEUwTmpZM0l3RWpFVE1SRkFZR0J6TUJNeEV6QXdHR1NGUW1CR0VGTGpRc053VmlCbDF3VW1NREJBSUUvb2g4WXdJRUFRUUJkbngxVFFNREpFYzBOeVFuTkV4VC9EdkNBWGNlUzBrYS9iMEN5djZGSVVwRUZ3SkIvWlQrNEFBQUFnQlQvMFFDc2dMOUFBNEFJd0JNUUVrZUFRZ0dBVW9EQVFFQ0FZTUFBZ29CQUFZQ0FHY0FDQXNCQ1FnSllRY0JCZ1lvU3dVQkJBUW5CRXdQRHdFQUR5TVBJeUloSUI4YUdSZ1hFUkFNQ3drSEJRUUFEZ0VPREFjVUt3RWlKaVluTXhZV016STJOek1HQmhNM0l4RTBOalkzQVNNUk14RVVCZ2NCTXhFekF3RlJTRlFsQkdBRU1EUXNOZ1ZqQjF4TVAyUUNBZ0wrN0lGbEJRTUJGWUZzUVFKZUpFYzBOU1luTkV4VC9PYThBU0FWTmpJUS9sTUNHLzdrSVZNZUFhNytPZjd3QUFJQUZ3QUFBajBDeWdBVEFCc0FQa0E3QlFFQUJBRUJBZ0FCWlFBQ0NnRUhDQUlIWlFrQkJnWW1Td0FJQ0FOZUFBTURKd05NRlJRQUFCZ1dGQnNWR3dBVEFCTVJFU1VoRVJFTEJ4b3JFeFV6RlNNVk16SVdGaFVVQmlNakVTTTFNelVUSXhVek1qVTBKc3VmbjFGcWZ6aUdrTWhJU0wxUlY2dGNBc3BWWEhVMlhqdGxjQUlaWEZYK2Z1NTdRVElBQUFJQUJ3QUFBaWdDK0FBU0FCc0FQa0E3Q1FFR0FBYURCUUVBQkFFQkFnQUJaUUFDQ2dFSENBSUhaUUFJQ0FOZUFBTURKd05NRkJNQUFCY1ZFeHNVR3dBU0FCSVJFU1FoRVJFTEJ4b3JFeFV6RlNNVk16SVdGUlFHSXlNUkl6VXpOUk1qRlRNeU5qVTBKcjJmbjRsMGJtcDQ4MHhNN0lLRU4wWkJBdmgwVFBaT1RVMWFBamhNZFAzM255WXRLeUVBQUFJQVh3QUFBamNDeWdBUEFCMEFOa0F6RnhZVkZBUURCQVlEQWdBREJRUUNBUUFEU2dBREFBQUJBd0JsQUFRRUFsMEFBZ0ltU3dBQkFTY0JUQ2d5SVJFbkJRY1pLd0VVQmdjWEJ5Y0dJeU1SSXhFek1oWUZNekkyTnljM0Z6WTJOVFFqSXdJM0x6YzFPa012UDFCc3pZdUEvcFJKRUI0TkxqMDhGaG1uVndIME9XVWZSeTVaRFA3eEFzcHg3d0VDUGk1UUVESWxmd0FBQWdCVC94QUNPQUlsQUJzQUt3QjhRQmNOQVFRQ0tDY21KUVFGQkJvWEFnQUZHUmdDQVFBRVNrdXdHVkJZUUIwSEFRUUVBbDhEQVFJQ0tFc0FCUVVBWHdZQkFBQXVTd0FCQVNvQlRCdEFJUUFDQWloTEJ3RUVCQU5mQUFNREwwc0FCUVVBWHdZQkFBQXVTd0FCQVNvQlRGbEFGeDBjQVFBa0lod3JIU3NTRUF3TENna0FHd0ViQ0FjVUt3VWlKaWNqSGdJVkZTTVJNeGN6TmpZek1oWVZGQVlIRndjbkJnTWlCZ2NWRkJZek1qY25OeGMyTlRRQlh6MU9Gd2NCQXdOcVZoQUZGMDArWW5Zckp6UTdQQ0U3U3o0QlBGQVFFVHMvT2lNS0xSOEVJQ2NPMlFNTFNDSXdqSXRTZENKR0xrOExBZGhXV1JCZVpBVkxMMHN2WUw0QUFBRUFGd0FBQWdRQ3lnQU5BQzFBS2dVQkFRUUJBZ01CQW1VQUFBQUdYUWNCQmdZbVN3QURBeWNEVEFBQUFBMEFEUkVSRVJFUkVRZ0hHaXNCRlNFVk14VWpFU01SSXpVekVRSUUvc2ZMeTJ4SVNBTEtYZDVjL3MwQk0xd0JPd0FBQUFFQUJnQUFBYTBDR3dBTkFDMUFLZ1VCQVFRQkFnTUJBbVVBQUFBR1hRY0JCZ1lvU3dBREF5Y0RUQUFBQUEwQURSRVJFUkVSRVFnSEdpc0JGU01WTXhVakZTTTFJelV6TlFHdDg2YW1ha3BLQWh0WWtWTGc0RkxwQUFBQUFRQmYvd1lDZXdMS0FDRUFla0FTQ2dFQUJBTUJBUUFaQVFZQkdBRUZCZ1JLUzdBeVVGaEFJd0FFQndFQUFRUUFad0FEQXdKZEFBSUNKa3NBQVFFblN3QUdCZ1ZmQUFVRktnVk1HMEFnQUFRSEFRQUJCQUJuQUFZQUJRWUZZd0FEQXdKZEFBSUNKa3NBQVFFbkFVeFpRQlVCQUIwYkZoUU9EQWtJQndZRkJBQWhBU0VJQnhRckFTSUdCeEVqRVNFVklSVTJOak15RmhZVkZBWUdJeUltSnpVV0ZqTXlOalUwSmdFakZqUU9iQUdwL3NNVlBSMWdrVkJHZUVzeFFCOGZQU05WVjN3Qkt3VUMvdHdDeWwzckJBVkprR3BzajBjTURGOExESFZ0Y1hJQUFBQUFBUUJUL3dzQ0N3SWJBQjhBUjBCRUF3RUVBUndCQlFRUUFRTUZEd0VDQXdSS0FBRUFCQVVCQkdjQUFBQUdYUWNCQmdZb1N3QUZCU2RMQUFNREFsOEFBZ0lxQWt3QUFBQWZBQjhTTkNRbEl4RUlCeG9yQVJVakZUWTJNeklXRlJRR0JpTWlKelVXRmpNeU5qVTBKaU1pQmdjVkl4RUJzL1lSSXhKNWp6MW1QVVUwRmpvZ09rUlFWdzBnRDJvQ0cxaVJBZ1NKa1dGNU9SeGREUkJZWUY1ZUFnVFZBaHNBQUFBQUFRQUIvejREbWdMS0FCVUFPRUExRkJFT0N3Z0JCZ0FGQVVvQUFRSUJoQWdIQmdNRkJTWkxBQUFBQWw0RUF3SUNBaWNDVEFBQUFCVUFGUklTRWhJUkVSSUpCeHNyQVFFVE14RWpOU01CRVNNUkFTTUJBVE1CRVRNUkFRTmsvdmJQY1dnOC92Vm0vdlI0QVJYKzluUUJCV1lCQlFMSy9xZis3djdmd2dGcS9wWUJhdjZXQVhBQld2Nm1BVnIrcGdGYUFBQUFBQUVBQWY5RUF6VUNHd0FWQURoQU5SUVJEZ3NJQVFZQUJRRktBQUVDQVlRSUJ3WURCUVVvU3dBQUFBSmVCQU1DQWdJbkFrd0FBQUFWQUJVU0VoSVNFUkVTQ1FjYkt3RURGek1SSXpVakF4RWpFUU1qRXdNekV4RXpFUk1DL2RlamJHUTI0V1BoZGVyWGNkSmowd0liL3Z2Qy92QzhBUkgrN3dFUi91OEJGZ0VGL3ZvQkJ2NzZBUVlBQUFELy93QXEveDRDS3dMVUFpWUJzQUFBQUFjRFhnQzBBQUQvL3dBaS94NEIwZ0lsQWlZQjBBQUFBQWNEWGdDSUFBQUFBUUJmL3o0Q3B3TEtBQTRBTVVBdURRZ0JBd0FFQVVvQUFRSUJoQVlGQWdRRUprc0FBQUFDWGdNQkFnSW5Ba3dBQUFBT0FBNFJFaEVSRWdjSEdTc0JBUk16RVNNMUl3RVJJeEV6RVFFQ2JQN1o1M3RvUlA3UWJHd0JLZ0xLL3FiKzcvN2Z3Z0ZxL3BZQ3l2Nm1BVm9BQUFFQVUvOURBajRDR3dBT0FDNUFLd3NJQXdNRUFnRktBQVFHQVFVRUJXRURBUUlDS0VzQkFRQUFKd0JNQUFBQURnQU9FaElSRWhFSEJ4a3JCVFVqQXhFakVUTVJFek1ERnpNUkFkc3k3R3BxMzNUaHJHTzl2UUVSL3U4Q0cvNzZBUWIrL2NUKzd3QUFBUUJmQUFBQ2VnTEtBQk1BTFVBcUV3OE1DUWdEQWdjQUF3RktBQU1BQUFFREFHVUVBUUlDSmtzRkFRRUJKd0ZNRXhJVEVSTVFCZ2NhS3lVak5TY1JJeEV6RVRjMU14VTNNd0VWQVNNbkFVWStQV3hzUFQ2dmQvN2FBVFIvdFg2alNmNldBc3IrcGtldVpzditwd0wra2RnQUFBQUJBRk1BQUFJakFoc0FFd0F6UURBU0VRd0xDQVFCQndJRkFVb0dBUVVBQWdFRkFtVUVBUUFBS0VzREFRRUJKd0ZNQUFBQUV3QVRFUk1TRXhJSEJ4a3JBUlUzTXdNVkV5TW5GU00xSnhFakVUTVJOelVCTW1wMDN2RjZkMEl6YW1vekFlOVJmZjhBQnY3cmlsMnBPLzd2QWh2KytqeWVBQUFCQUJBQUFBSjBBc29BRWdBelFEQVBEQWtEQlFNQlNnSUJBQWdIQWdNRkFBTmxCQUVCQVNaTEJnRUZCU2NGVEFBQUFCSUFFaElTRWhFUkVSRUpCeHNyRXpVek5UTVZNeFVqRlFFekFRRWpBUkVqRVJCSmJGeGNBU3AzL3RrQk5YLyswR3dDSGwxUFQxMnVBVnIrcHY2UUFXcitsZ0llQUFBQkFBY0FBQUlqQXZnQUVnQTlRRG9MQ0FVREF3SUJTZ1lCQUFVQkFRSUFBV1VJQVFjSEExMEVBUU1ESjBzQUFnSW9Td1FCQXdNbkEwd0FBQUFTQUJJUkVSSVNFaEVSQ1FjYkt4TVZNeFVqRVJNekF4TWpBeEVqRVNNMU16VzlycTdmZE9IMGV1eHFURXdDK0ZkSy9yNEJCdjc5L3VnQkVmN3ZBbGRLVndBQUFBRUFCUUFBQXNJQ3lnQU1BQ3RBS0FzRUFRTUFBZ0ZLQUFJQ0ExMEZCQUlEQXlaTEFRRUFBQ2NBVEFBQUFBd0FEQkVSRWhJR0J4Z3JDUUlqQVJFakVTTTFJUkVCQXJUKzJRRTFmdjdQYktJQkRnRXFBc3IrcHY2UUFXcitsZ0pzWHY2bUFWb0FBQUFBQVFBTkFBQUNnUUliQUF3QUswQW9Dd1FCQXdBQ0FVb0FBZ0lEWFFVRUFnTURLRXNCQVFBQUp3Qk1BQUFBREFBTUVSRVNFZ1lIR0NzQkF4TWpBeEVqRVNNMUlSRVRBbTdoOUhidFphd0JFZUFDRy83OC91a0JFZjd2QWNkVS92b0JCZ0FBQUFFQVgvOCtBdlFDeWdBUEFEQkFMUUFFQUFFR0JBRmxBQVlJQVFjR0IyRUZBUU1ESmtzQ0FRQUFKd0JNQUFBQUR3QVBFUkVSRVJFUkVRa0hHeXNGTlNNUklSRWpFVE1SSVJFekVUTVJBb3hyL3Fwc2JBRldhMmpDd2dGRy9yb0N5djdZQVNqOWxmN2ZBQUFBQUFFQVUvOUVBcEVDR3dBUEFEQkFMUUFFQUFFR0JBRmxBQVlJQVFjR0IyRUZBUU1ES0VzQ0FRQUFKd0JNQUFBQUR3QVBFUkVSRVJFUkVRa0hHeXNGTlNNMUlSVWpFVE1WSVRVekVUTVJBaXhsL3ZacWFnRUthbUM4dk92ckFodmIyLzQ1L3ZBQUFBQUFBUUJmQUFBREx3TEtBQTBBTFVBcUFBRUFCUVFCQldVQUF3TUFYUUlCQUFBbVN3Y0dBZ1FFSndSTUFBQUFEUUFORVJFUkVSRVJDQWNhS3pNUk14RWhFU0VWSXhFakVTRVJYMndCVlFFUG8yeitxd0xLL3RnQktGNzlsQUZHL3JvQUFRQlRBQUFDM1FJYkFBMEFMVUFxQUFFQUJRUUJCV1VBQXdNQVhRSUJBQUFvU3djR0FnUUVKd1JNQUFBQURRQU5FUkVSRVJFUkNBY2FLek1STXhVaE5TRVZJeEVqTlNFVlUyb0JDZ0VXckdyKzlnSWIyOXRVL2pucjZ3QUJBRi8vQmdRTUFzb0FKQUIzUUJJQkFRTUFIUUVFQXhBQkFnUVBBUUVDQkVwTHNESlFXRUFrQUFBQUF3UUFBMmNBQlFVSFhRZ0JCd2NtU3dZQkJBUW5Td0FDQWdGZkFBRUJLZ0ZNRzBBaEFBQUFBd1FBQTJjQUFnQUJBZ0ZqQUFVRkIxMElBUWNISmtzR0FRUUVKd1JNV1VBUUFBQUFKQUFrRVJFVEpTVW1NZ2tIR3lzQkVUWTJNeklXRmhVVUJnWWpJaVluTlJZV016STJOVFFtSmlNaUJnY1JJeEVoRVNNUkFtZ1pPeHBjaTA5R2Qwc3lRQjhmUGlOU1dUcGtRQlEwRUd2K3ptd0N5djY2QkFKSmtHdHFqMGNNREY4TERIWnJVbVF0QkFUKzNnSnMvWlFDeWdBQUFRQlQvd3NEU0FJYkFDRUFTVUJHQVFFREFCb0JCQU1QQVFJRURnRUJBZ1JLQUFBQUF3UUFBMmNBQlFVSFhRZ0JCd2NvU3dZQkJBUW5Td0FDQWdGZkFBRUJLZ0ZNQUFBQUlRQWhFUkVUSXlRbUl3a0hHeXNCRlRZMk16SVdGaFVVQmdZaklpYzFGaFl6TWpZMU5DTWlCZ2NWSXhFakVTTVJBaE1OSGc5RmNrUTVZVHBCTkJZMkhqYyttUXNjQzJyc2FnSWI2QUVFT24xallYazVIRjBORUZoZ3ZBTUQxUUhHL2pvQ0d3QUFBQUFDQUR6LzF3TGpBdFVBTXdBL0FOMUFIQjBCQkFNZUFRWUVQU29DQlFjSkJBSUFCUkFCQWdBS0FRRUNCa3BMc0F4UVdFQW1BQUFBQVFBQll3QUVCQU5mQUFNRExVc0FCd2NHWHdBR0JpOUxBQVVGQWw4QUFnSXVBa3diUzdBT1VGaEFKQUFHQUFjRkJnZG5BQUFBQVFBQll3QUVCQU5mQUFNRExVc0FCUVVDWHdBQ0FpNENUQnRMc0JWUVdFQW1BQUFBQVFBQll3QUVCQU5mQUFNRExVc0FCd2NHWHdBR0JpOUxBQVVGQWw4QUFnSXVBa3diUUNRQUJnQUhCUVlIWndBQUFBRUFBV01BQkFRRFh3QURBeTFMQUFVRkFsOEFBZ0l1QWt4WldWbEFDeVVuSkNVbEpDUW1DQWNjS3dFVUJnWUhGaFl6TWpjVkJnWWpJaVluQmdZaklpWW1OVFEyTXpJV0Z3Y21KaU1pQmhVVUZqTXlOamNtSmpVME5qTXlGaFlITkNZaklnWVZGQllYTmpZQ3p5TTJIQTRpRlNVZkRpc1VMVTRqR1Q4Z2FaRkttYUVnUGhJY0RpOFlhMTU1WWdvVEJ5UXNhRkV6VlROb0tTZ29LaWdmS1RNQlMwSm9TeGNGQnd0YkJnWVpHQWtKV3FKcnI4a0xCMWdGQ1pXRGlvUUNBaXVFU254eEwycGNTVmRZUmtSc0l4MXdBQUlBTlAvaEFtSUNKUUF5QUQ0QWxVQWJBd0VCQUFRQkF3RTVBUUlISVJ3Q0JBSW9BUVlFSWdFRkJnWktTN0FYVUZoQUtRQURDUUVIQWdNSFp3QUJBUUJmQ0FFQUFDOUxBQUlDQmw4QUJnWXVTd0FFQkFWZkFBVUZMZ1ZNRzBBbUFBTUpBUWNDQXdkbkFBUUFCUVFGWXdBQkFRQmZDQUVBQUM5TEFBSUNCbDhBQmdZdUJreFpRQnMwTXdFQU16NDBQaXdxSmlRZ0hoY1ZEZ3dJQmdBeUFUSUtCeFFyQVRJV0Z3Y21KaU1pQmhVVUZqTXlOamNtSmpVME5qTXlGaFVVQmdjV0ZqTXlOeFVHQmlNaUppY0dCaU1pSmlZMU5EWTJGeUlHRlJRV0Z6WTJOVFFtQVNRY0xoQVhDeVFVU2pwRlNnMFVBeGtmVjBkQldUY2xDUm9PSGh3Tkl4UWtSaHdWTXlWUGJqbzFhK1VlSHlBV0hTUWNBaVVKQlZNREIybGZWV1FEQWg1UU4xbFhVMTFFWFJvRUJRZFFCQVVXRWdnTFNIeFBWWDlJenpNdkxFUVZFMFF3TERRQUFBRC8vd0E4L3g0Q1dRTFVBaVlBSmdBQUFBY0RYZ0VRQUFELy93QTAveDRCeWdJbEFpWUFSZ0FBQUFjRFhnRENBQUFBQVFBTS96NENKUUxLQUFzQUtrQW5BQVFHQVFVRUJXRURBUUVCQWwwQUFnSW1Td0FBQUNjQVRBQUFBQXNBQ3hFUkVSRVJCd2NaS3dVMUl4RWpOU0VWSXhFekVRRlBiTmNDR2RabndzSUNiRjVlL2ZQKzN3QUFBQUVBRmY5RUFkd0NHd0FMQUNwQUp3QUJBQUlCQW1FRUFRQUFCVjBHQVFVRktFc0FBd01uQTB3QUFBQUxBQXNSRVJFUkVRY0hHU3NCRlNNUk14RWpOU01SSXpVQjNLOWZaR1N2QWh0Vi9vNys4THdCeGxVQUFQLy9BQUFBQUFKSEFzb0NCZ0E4QUFBQUFRQUEveEFDRHdJYkFBOEFIVUFhRHdnQ0F3QUJBVW9DQVFFQktFc0FBQUFxQUV3WkVoQURCeGNyQlNNMUF6TVRGaFlYTXpZMk54TXpBd0U5YXROeGFRNFlCUVlGR1E1b2NOTHc3d0ljL3VnbFZoa1pWaVVCR1Aza0FBQUJBQUFBQUFKSEFzb0FFQUF4UUM0TENBVURBUUlCU2dRQkFRVUJBQVlCQUdZREFRSUNKa3NIQVFZR0p3Wk1BQUFBRUFBUUVSSVNFaEVSQ0FjYUt6TTFJelV6TlFNekV4TXpBeFV6RlNNVjdwZVg3bld2cjNUdWxwYWZYUlVCdWY2eUFVNytTeGxkbndBQUFBQUJBQUQvRUFJUEFoc0FGUUF2UUN3UUFRQUZBVW9FQVFBREFRRUNBQUZtQndZQ0JRVW9Td0FDQWlvQ1RBQUFBQlVBRlJFUkVSRVJFUWdIR2lzQkF6TVZJeFVqTlNNMU13TXpFeFlXRnpNMk5qY1RBZy9SaUlscWk0clNjV2NRRndZRkJ4Z1FaZ0liL2VWUW9LQlFBaHYrNmlsUEhoNVJLZ0VUQUFBQUFRQUQvejRDaUFMS0FBOEFMMEFzREFrR0F3UUVBZ0ZLQUFRR0FRVUVCV0VEQVFJQ0prc0JBUUFBSndCTUFBQUFEd0FQRWhJU0VoRUhCeGtyQlRVakF3TWpFd016RXhNekF4TXpFUUlnUExhNGMrM2VlS2lwYzk2eFo4TENBU3IrMWdGekFWZis3d0VSL3FqKzdmN2ZBQUVBRHY5REFqTUNHd0FQQUM5QUxBd0pCZ01FQkFJQlNnQUVCZ0VGQkFWaEF3RUNBaWhMQVFFQUFDY0FUQUFBQUE4QUR4SVNFaElSQndjWkt3VTFJeWNISXhNRE14YzNNd01YTXhFQnp6YUppbmpBdDNtQWdIaTNobHk5dmM3T0FSTUJDTUxDL3ZpLy91OEFBQUVBRFA4K0Exd0N5Z0FQQURGQUxnZ0JCd0FIaEFNQkFRRUNYUVVCQWdJbVN3WUJCQVFBWGdBQUFDY0FUQUFBQUE4QUR4RVJFUkVSRVJFSkJ4c3JCVFVoRVNNMUlSVWpFU0VSTXhFekVRTDEvZDNHQWczYkFVaHNhc0xDQW14ZVh2M3lBbXo5bGY3ZkFBQUFBQUVBRmY5RUF0Y0NHd0FQQURGQUxnZ0JCd1FIVWdNQkFRRUNYUVVCQWdJb1N3WUJCQVFBWGdBQUFDY0FUQUFBQUE4QUR4RVJFUkVSRVJFSkJ4c3JCVFVoRVNNMUlSVWpFVE1STXhFekVRSnovak9SQVorbC9XcGh2THdCeGxWVi9vOEJ4djQ1L3ZBQUFRQkkvejRDekFMS0FCY0FPRUExRmdFRkJBY0JBd1VDU2dBRkFBTUFCUU5uQUFBQUFRQUJZUWNHQWdRRUprc0FBZ0luQWt3QUFBQVhBQmNqRXlNUkVSRUlCeG9yQVJFekVTTTFJeEVHQmlNaUpqVVJNeEVVRmpNeU5qY1JBbVJvYUd3N1p6dGxibXc1UVRaYk9RTEsvWlgrMzhJQklCVVlYMWdCSVA3Mk9EZ1VGQUZTQUFBQUFBRUFSdjlEQW40Q0d3QVdBRGhBTlJVQkJRUUhBUU1GQWtvQUJRQURBQVVEYUFBQUFBRUFBV0VIQmdJRUJDaExBQUlDSndKTUFBQUFGZ0FXSWhNakVSRVJDQWNhS3dFUk14RWpOU00xQmdZaklpWTFOVE1WRkRNeU5qYzFBaDlmWldRcVdEeFRYbXBjTUZBcEFoditPZjd2dmVrYUlWWk55c1ZWR3hmb0FBQUFBUUJJQUFBQ1pBTEtBQmtBTzBBNEdCVUNCQVVHQXdJQ0JBSktBQVFBQWdFRUFtY0FCUUFCQUFVQlpRY0dBZ01ESmtzQUFBQW5BRXdBQUFBWkFCa1JFeE1SRlJFSUJ4b3JBUkVqRVFZR0J4VWpOU0ltTlJFekVSUVdNelV6RlRZMk54RUNaRzBpUVNNL2JYMXNPa1EvSTBRZkFzcjlOZ0VmRFJRRm1KTlZZUUVnL3ZZNE9LYWlCQk1MQVZRQUFBQUFBUUJHQUFBQ0dRSWJBQnNBUEVBNUdoY0NCQVVKQmdNREFnUUNTZ0FFQUFJQkJBSm9BQVVBQVFBRkFXVUhCZ0lEQXloTEFBQUFKd0JNQUFBQUd3QWJFUklUSXhVUkNBY2FLd0VSSXpVR0JnY1ZJelVHQmlNaUpqVTFNeFVVRnpVekZUWTJOelVDR1dvWk5CMDhCUW9GVTF4cVdUd2JOQnNDRy8zbDZSRWFCM2h3QVFGWFRjckZWQUtMaFFZV0VlZ0FBUUJmQUFBQ2V3TEtBQk1BS1VBbUFnRURBUkVCQWdNQ1NnQUJBQU1DQVFObkFBQUFKa3NFQVFJQ0p3Sk1FeU1USXhBRkJ4a3JFek1STmpZek1oWVZFU01STkNZaklnWUhFU05mYkR0ck4yUnZiRGxCTmx3NGJBTEsvdUFWR0Y5WS91QUJDamc0RkJUK3JnRC8vd0JUQUFBQ0pnTDRBZ1lBU3dBQUFBSUFFLy8yQXl3QzFRQWpBQ29BNTBBS0RBRUNBUTBCQXdJQ1NrdXdERkJZUUNZSUFRWUVBUUVDQmdGb0NnRUhCd0JmQ1FFQUFDMUxBQVVGS0VzQUFnSURYd0FEQXk0RFRCdExzQTVRV0VBcEFBVUhCZ2NGQm40SUFRWUVBUUVDQmdGb0NnRUhCd0JmQ1FFQUFDMUxBQUlDQTE4QUF3TXVBMHdiUzdBVlVGaEFKZ2dCQmdRQkFRSUdBV2dLQVFjSEFGOEpBUUFBTFVzQUJRVW9Td0FDQWdOZkFBTURMZ05NRzBBcEFBVUhCZ2NGQm40SUFRWUVBUUVDQmdGb0NnRUhCd0JmQ1FFQUFDMUxBQUlDQTE4QUF3TXVBMHhaV1ZsQUhTVWtBUUFvSnlRcUpTb2hIeHNhRlJNUkR3b0lCZ1VBSXdFakN3Y1VLd0V5RmhZVkZTRVdGak15TmpjVkJnWWpJaVluSXlJbU5UUTJOek1HQmhVVU16TTJOaGNpQmdjaE5DWUIrRytIUHYzNUIzUnhTSDBzTEhSWW9Lc0xHajVKQ2doV0F3ZzBFaE9qakZ0dkNBR1VXUUxWVzZKcUwzRjdJUkppRXh1eG1FRTNGeVlQQnlBUk1KaWlYbkJzWjNVQUFBSUFFUC8yQW5jQ0pBQWdBQ2NBaUVBS0N3RUNBUXdCQXdJQ1NrdXdERkJZUUNnQUJRY0dCZ1Z3Q0FFR0JBRUJBZ1lCYUFvQkJ3Y0FYd2tCQUFBdlN3QUNBZ05mQUFNRExnTk1HMEFwQUFVSEJnY0ZCbjRJQVFZRUFRRUNCZ0ZvQ2dFSEJ3QmZDUUVBQUM5TEFBSUNBMThBQXdNdUEweFpRQjBpSVFFQUpTUWhKeUluSGh3WUZ4TVNFQTRKQndVRUFDQUJJQXNIRkNzQk1oWVZGU0VXRmpNeU5qY1ZCZ1lqSWlZbklpWTFORGN6QmdZVkZETXpOallYSWdZSElUUW1BWkZyZS82U0FsSk1PRkVyS1ZNNmRKRUdSRWdQVUFVR01na1BoVjA2UmdVQkFqMENKSU53T2xkVUV4TllFeEdDZnpVNEp4c0pIQTh1ZEd4U1NFWkFUZ0FDQUJQL1BnTXNBdFVBSmdBdEFQNUFDd3dCQWdFVERRSURBZ0pLUzdBTVVGaEFLd0FFQXdTRUNRRUhCUUVCQWdjQmFBc0JDQWdBWHdvQkFBQXRTd0FHQmloTEFBSUNBMThBQXdNdUEwd2JTN0FPVUZoQUxnQUdDQWNJQmdkK0FBUURCSVFKQVFjRkFRRUNCd0ZvQ3dFSUNBQmZDZ0VBQUMxTEFBSUNBMThBQXdNdUEwd2JTN0FWVUZoQUt3QUVBd1NFQ1FFSEJRRUJBZ2NCYUFzQkNBZ0FYd29CQUFBdFN3QUdCaWhMQUFJQ0ExOEFBd011QTB3YlFDNEFCZ2dIQ0FZSGZnQUVBd1NFQ1FFSEJRRUJBZ2NCYUFzQkNBZ0FYd29CQUFBdFN3QUNBZ05mQUFNRExnTk1XVmxaUUI4b0p3RUFLeW9uTFNndEpDSWVIUmdXRWhFUUR3b0lCZ1VBSmdFbURBY1VLd0V5RmhZVkZTRVdGak15TmpjVkJnWUhGU00xSmlZbkl5SW1OVFEyTnpNR0JoVVVNek0yTmhjaUJnY2hOQ1lCK0crSFB2MzVCM1J4U0gwc0oyTkdhSUtLQ2hvK1NRb0lWZ01JTkJJUXA0dGJid2dCbEZZQzFWdWhhVEZ4ZXlFU1loQVpBN3E5RWF1SVFUY1hKZzhISUJFd21LSmVjR3huZFFBQUFBSUFFUDlFQW5jQ0pBQWpBQ29BaDBBTEhRRUZBQjRBQWdZRkFrcExzQXhRV0VBc0FBRUlBZ0lCY0FBSEJnZUVDUUVDQkFFQUJRSUFhQW9CQ0FnRFh3QURBeTlMQUFVRkJsOEFCZ1l1Qmt3YlFDMEFBUWdDQ0FFQ2ZnQUhCZ2VFQ1FFQ0JBRUFCUUlBYUFvQkNBZ0RYd0FEQXk5TEFBVUZCbDhBQmdZdUJreFpRQk1sSkNnbkpDb2xLaEVWSWhNaUpCUVRDd2NjS3dVbUppY2lKalUwTnpNR0JoVVVNek0yTmpNeUZoVVZJUllXTXpJMk54VUdCZ2NWSXhNaUJnY2hOQ1lCWTFocUJVUklEMUFGQmpJSkVZTmVhM3Yra2dKU1REaFJLeU5HTFdRdE9rWUZBUUk5QXhCOWJUVTRKeHNKSEE4dWNtNkRjRHBYVkJNVFdCQVFBclFDamtoR1FFNEEvLzhBSmdBQUFUc0N5Z0lHQUN3QUFQLy9BQUVBQUFOdkE2d0NKZ0d2QUFBQkJ3SW1BSndBcndBSXNRRUJzSyt3TXlzQUFQLy9BQUVBQUFNUUF2MENKZ0hQQUFBQUJnSW1hd0FBQUFBQkFGLy9CZ0tYQXNvQUl3QnNRQklmQVFNQUdnRUVBdzRCQWdRTkFRRUNCRXBMc0RKUVdFQWZBQUFBQXdRQUEyY0hCZ0lGQlNaTEFBUUVKMHNBQWdJQlh3QUJBU29CVEJ0QUhBQUFBQU1FQUFObkFBSUFBUUlCWXdjR0FnVUZKa3NBQkFRbkJFeFpRQThBQUFBakFDTVJFaVVsSmlFSUJ4b3JBUUV6TWhZV0ZSUUdCaU1pSmljMUZoWXpNalkxTkNZbUl5SUhFU01STXhFMk5qYzNBbkgrMUJOZ2oxQkpla3N3UVI4ZlB5Wk9ZRVJ4UVQwdGJHd1ZNQmpNQXNyK3NVU0paMjJPUmd3TVh3c01jWEJTWVNvTy91b0N5djZpR3p3YjdBQUFBUUJUL3dzQ0p3SWJBQjhBUFVBNkdRRUNCaFFCQXdJSUFRRURCd0VBQVFSS0FBWUFBZ01HQW1jRkFRUUVLRXNBQXdNblN3QUJBUUJmQUFBQUtnQk1FUklSRXlRbEl3Y0hHeXNsRkFZR0l5SW1KelVXRmpNeU5qVTBKaU1pQmdjVkl4RXpGVGN6Qng0Q0FpYy9aajBsTmhjV014ODVURmxWRmk0U2FXbmllZU5IYmo0Z1lYbzZEZzFhQ2hGWlgyQmJCZ1hOQWh2NStlOEJOM1lBQVFBRC96NEM1QUxLQUI4QWxrdXdFRkJZdGhNU0FnSUFBVW9iUUFvVEFRVUFFZ0VDQlFKS1dVdXdFRkJZUUJ3QUFRQUJVUUFEQXdaZEFBWUdKa3NGQVFBQUFsOEVBUUlDSndKTUcwdXdGVkJZUUIwQUFBQUJBQUZoQUFNREJsMEFCZ1ltU3dBRkJRSmZCQUVDQWljQ1RCdEFJUUFBQUFFQUFXRUFBd01HWFFBR0JpWkxBQUlDSjBzQUJRVUVYd0FFQkM0RVRGbFpRQW9YSlNjUkVSRVFCd2NiS3lVekF5TTNJeEVqRGdJSERnSWpJaVluTlJZV016STJOamMrQWpjaEFuQjBUSHBTYk5NSkZSVUxEU2hDTmhJa0RRd2JEeHNnRkFrSEZ4c05BWmxmL3QvQ0FtMUduNUkwUWx3dkJ3VlpCQWNxUmlvbGtNQnNBQUFBQVFBRi8wUUNiZ0liQUJVQW4wdXdMVkJZUUFzTkFRSUFBVW9PQVFBQlNSdEFDdzBCQWdVQlNnNEJBQUZKV1V1d0lsQllRQndBQVFBQlVRQURBd1pkQUFZR0tFc0ZBUUFBQWw4RUFRSUNKd0pNRzB1d0xWQllRQ0FBQVFBQlVRQURBd1pkQUFZR0tFc0FBZ0luU3dVQkFBQUVYd0FFQkM0RVRCdEFJUUFBQUFFQUFXRUFBd01HWFFBR0JpaExBQUlDSjBzQUJRVUVYd0FFQkM0RVRGbFpRQW9USXlNUkVSRVFCd2NiS3lVekF5TTNJeEVqRGdJaklpYzFGak15TmpZM0lRSUNiRUpwUDJxWURTNU1PeVFWRVJBZ01TTUxBVjFVL3ZDOEFjYW15MXdKVWdWYnlxY0FBQUVBWC84R0Fvd0N5Z0FZQUdSQUNna0JBUU1JQVFBQkFrcExzREpRV0VBZkFBVUFBZ01GQW1VSEJnSUVCQ1pMQUFNREowc0FBUUVBWHdBQUFDb0FUQnRBSEFBRkFBSURCUUpsQUFFQUFBRUFZd2NHQWdRRUprc0FBd01uQTB4WlFBOEFBQUFZQUJnUkVSRVRKU1FJQnhvckFSRVVCZ1lqSWlZbk5SWVdNekkyTlJFaEVTTVJNeEVoRVFLTVEzZFBMMElmSHo4bVUxZitxbXhzQVZZQ3l2MTBaNHRHREF4ZkRBeHZiZ0VFL3JvQ3l2N1lBU2dBQUFBQkFGUC9Dd0l4QWhzQUdBQTdRRGdKQVFFRENBRUFBUUpLQUFVQUFnTUZBbVVIQmdJRUJDaExBQU1ESjBzQUFRRUFYd0FBQUNvQVRBQUFBQmdBR0JFUkVSTWxKQWdIR2lzQkVSUUdCaU1pSmljMUZoWXpNalkzTlNFVkl4RXpGU0UxQWpFNFlEd2xOaGtYTmgwM1BBSCs5bXBxQVFvQ0cvMzVYblEzRGc1Y0N4RlNYOVByQWh2YjJ3QUFBQUVBWC84K0F3SUN5Z0FQQUNwQUp3QUdBQU1BQmdObEFBQUFBUUFCWVFjQkJRVW1Td1FCQWdJbkFrd1JFUkVSRVJFUkVBZ0hIQ3NsTXdNak55TVJJUkVqRVRNUklSRXpBb3gyVG5wU2EvNnFiR3dCVm10Zi90L0NBVWIrdWdMSy90Z0JLQUFCQUZQL1JBS2RBaHNBRHdBd1FDMEFBUUFHQXdFR1pRQURBQVFEQkdFQ0FRQUFLRXNJQndJRkJTY0ZUQUFBQUE4QUR4RVJFUkVSRVJFSkJ4c3JNeEV6RlNFMU14RXpBeU0zSXpVaEZWTnFBUXBxYkVKcFAycis5Z0liMjl2K09mN3d2T3ZyQUFBQUFBRUFTUDgrQW1RQ3lnQVhBREpBTHhVQkJRUUdBUU1GQWtvQUJRQURBZ1VEWndBQ0FBRUNBV0VHQVFRRUprc0FBQUFuQUV3VEl4TWpFUkVRQndjYkt5RWpGU01STXpVR0JpTWlKalVSTXhFVUZqTXlOamNSTXdKa1kyZGVPMmM3Wlc1c09VRTJXemxzd2dFaHdSVVlYMWdCSVA3Mk9EZ1VGQUZTQUFBQkFFYi9Rd0lmQWhzQUZnQTRRRFVWQVFVRUJ3RURCUUpLQUFVQUF3SUZBMmdBQWdBQkFnRmhCd1lDQkFRb1N3QUFBQ2NBVEFBQUFCWUFGaUlUSXhFUkVRZ0hHaXNCRVNNVkl4RXpOUVlHSXlJbU5UVXpGUlF6TWpZM05RSWZYV1ZZS2xnOFUxNXFYREJRS1FJYi9lVzlBUkdWR2lGV1RjckZWUnNYNkFBQUFBRUFYLzgrQTZzQ3lnQWJBREJBTFJrTEFRTURBUUZLQUFNQUJBTUVZUUlCQVFFbVN3Y0dCUU1BQUNjQVRBQUFBQnNBR3hFUkVSTVJGd2dIR2lzaEF5TWVBaFVSSXhFekV6TVRNeEV6QXlNM0l4RTBOalkzSXdNQmx0Z0VBZ01DWXByT0JOS2FkRXg3VTJrQ0JBRUUzZ0pmRzB0SkZ2NW1Bc3I5d3dJOS9aWCszOElCb0JoS1NCVDlvZ0FBQVFCVC8wUURId0liQUJnQU1FQXRGUXdJQXdZRUFVb0hBUVlBQUFZQVlRVUJCQVFvU3dNQ0FnRUJKd0ZNQUFBQUdBQVlFaEVXRmhFUkNBY2FLeVVESXpjakVUUTJOeU1ESXdNakZoWVZFU01STXhNVE14RURIMEpwUDJBREFnT29WYVVFQWdOaGtaK2lqbFQrOEx3QlFCczNHZjVWQWFzWk54Nyt3d0liL21NQm5mNDVBQUFBLy84QUpnQUFBVHNDeWdJR0FDd0FBUC8vQUFBQUFBS05BNndDSmdBa0FBQUJCd0ltQUNrQXJ3QUlzUUlCc0srd015c0FBUC8vQUMzLzlnSHVBdjBDSmdCRUFBQUFCZ0ltQWdBQUFQLy9BQUFBQUFLTkE0OENKZ0FrQUFBQkJ3QnFBQ0FBcndBSXNRSUNzSyt3TXlzQUFQLy9BQzMvOWdIdUF1QUNKZ0JFQUFBQUJnQnErUUFBQVAvLy8vOEFBQU5LQXNvQ0JnQ0lBQUQvL3dBdC8vWURQd0lsQWdZQXFBQUEvLzhBWHdBQUFmd0RyQUltQUNnQUFBRUhBaVlBRXdDdkFBaXhBUUd3cjdBekt3QUEvLzhBTlAvMkFnc0MvUUltQUVnQUFBQUdBaVlFQUFBQUFBSUFRZi8yQXIwQzFRQVhBQjRBUTBCQUJBRUFBUU1CQXdBQ1NnQURBQVVFQXdWbEJnRUFBQUZmQUFFQkxVc0hBUVFFQWw4QUFnSXVBa3daR0FFQUhCc1lIaGtlRlJRUURnZ0dBQmNCRndnSEZDc0JJZ1lITlRZMk16SVdGaFVVQmdZaklpWW1OVFVoSmlZRE1qWTNJUlFXQVdCTGZTd3NjMWR5bWs5TGttcHZpRDRDQ3doelcxeHlCLzVvVmdKNEloSmdGQjFjcFhCdnBWcGNwM0FqY0h6OTIzRnJaM1VBLy84QU1mLzJBZ2dDSlFJR0JDa0FBUC8vQUVILzlnSzlBNDhDSmdMQkFBQUJCd0JxQUVrQXJ3QUlzUUlDc0srd015c0FBUC8vQURILzlnSUlBdUFDSmdRcEFBQUFCZ0JxOGdBQUFQLy9BQUVBQUFOdkE0OENKZ0d2QUFBQkJ3QnFBSk1BcndBSXNRRUNzSyt3TXlzQUFQLy9BQUVBQUFNUUF1QUNKZ0hQQUFBQUJnQnFZUUFBQVAvL0FDci85Z0lyQTQ4Q0pnR3dBQUFCQndCcUFBUUFyd0FJc1FFQ3NLK3dNeXNBQVAvL0FDTC85Z0hTQXVBQ0pnSFFBQUFBQmdCcTBRQUFBQUFCQUNILzlnSVlBc29BR2dCQlFENEJBUVFGRndFQUJBMEJBZ01NQVFFQ0JFb0FBQUFEQWdBRFp3QUVCQVZkQmdFRkJTWkxBQUlDQVY4QUFRRXVBVXdBQUFBYUFCb1NJeVVsRWdjSEdTc0JGUWNXRmhVVUJnWWpJaVluTlJZV016STJOVFFqSXpVM0lUVUIrZXQrakVDQ1l6dHBMaTl3TVdCWTFrSGEvc29DeWsvaEJXZGhQMkUzRWhWZ0Z4aEdQWGRUMGwwQUFRQVMveEFCNXdJYkFCc0FRVUErQVFFREJCZ0NBZ0lERFFFQkFnd0JBQUVFU2dBQ0F3RURBZ0YrQUFNREJGMEZBUVFFS0VzQUFRRUFYd0FBQUNvQVRBQUFBQnNBR3hJa0pTZ0dCeGdyQVJVSEZoWVZGQVlHSXlJbUp6VVdGak15TmpVMEppTWpOVGNoTlFITjJtK0ZRWHRYTzJJbEptVTNVVmRtWWpyVi90TUNHMHJuQ25kb1IydytFeEZlRWhsVlJrdExTK0pXQVAvL0FHQUFBQUt5QTEwQ0pnR3hBQUFCQndGTUFOSUFyd0FJc1FFQnNLK3dNeXNBQVAvL0FGTUFBQUpHQXE0Q0pnSFJBQUFBQndGTUFKRUFBUC8vQUdBQUFBS3lBNDhDSmdHeEFBQUJCd0JxQUcwQXJ3QUlzUUVDc0srd015c0FBUC8vQUZNQUFBSkdBdUFDSmdIUkFBQUFCZ0JxTFFBQUFQLy9BRHovOWdMVkE0OENKZ0F5QUFBQkJ3QnFBR01BcndBSXNRSUNzSyt3TXlzQUFQLy9BRFQvOWdJdUF1QUNKZ0JTQUFBQUJnQnFDd0FBQVAvL0FEei85Z0xWQXRVQ0JnSmlBQUQvL3dBMC8vWUNMZ0lsQWdZQ1l3QUEvLzhBUFAvMkF0VURoUUltQW1JQUFBRUhBR29BWkFDbEFBaXhBd0t3cGJBekt3QUEvLzhBTlAvMkFpNEM0QUltQW1NQUFBQUdBR29LQUFBQS8vOEFILy8yQWtVRGhRSW1BY1lBQUFFSEFHci84Z0NsQUFpeEFRS3dwYkF6S3dBQS8vOEFILy8yQWI4QzRBSW1BZVlBQUFBR0FHcTFBQUFBLy84QUMvLzJBbndEWFFJbUFid0FBQUVIQVV3QWlBQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QUFmOFFBZzhDcmdJbUFGd0FBQUFHQVV4R0FBQUEvLzhBQy8vMkFud0Rqd0ltQWJ3QUFBRUhBR29BSXdDdkFBaXhBUUt3cjdBekt3QUEvLzhBQWY4UUFnOEM0QUltQUZ3QUFBQUdBR3JpQUFBQS8vOEFDLy8yQW53RHJRSW1BYndBQUFFSEFWSUFvQUN2QUFpeEFRS3dyN0F6S3dBQS8vOEFBZjhRQWc4Qy9nSW1BRndBQUFBR0FWSmVBQUFBLy84QVNBQUFBbVFEandJbUFjQUFBQUVIQUdvQUxnQ3ZBQWl4QVFLd3I3QXpLd0FBLy84QVJnQUFBaDhDNEFJbUFlQUFBQUFHQUdvTEFBQUFBQUVBWC84K0FnVUN5Z0FKQUNoQUpRQUJBQUlCQW1FQUFBQUVYUVVCQkFRbVN3QURBeWNEVEFBQUFBa0FDUkVSRVJFR0J4Z3JBUlVoRVRNUkl6VWpFUUlGL3Nabloyd0N5bDM5OHY3ZndnTEtBQUFBQUFFQVUvOUVBYWdDR3dBSkFDaEFKUUFCQUFJQkFtRUFBQUFFWFFVQkJBUW9Td0FEQXljRFRBQUFBQWtBQ1JFUkVSRUdCeGdyQVJVakVUTVJJelVqRVFHbzYxOWxaQUliVmY2Ty92QzhBaHYvL3dCZkFBQURDUU9QQWlZQnhBQUFBUWNBYWdDUUFLOEFDTEVEQXJDdnNETXJBQUQvL3dCVEFBQUN6QUxnQWlZQjVBQUFBQVlBYW1jQUFBRC8vd0FYL3k0Q0JBTEtBaVlDZXdBQUFBWURYMWdBQUFBQUFRQUcvekVCclFJYkFCd0FVa0JQQkFFQkFnTUJBQUVDU2dBSkF3SURDUUorQndFRUNBRURDUVFEWlFBQkNnRUFBUUJrQUFZR0JWMEFCUVVvU3dBQ0FpY0NUQUVBR2hrWUZ4WVZGQk1TRVJBUERnME1Dd2dHQUJ3QkhBc0hGQ3NYSWlZbk5SWVdNekkyTlRVak5TTTFNelVoRlNNVk14VWpGVE1WRkpnVUlnd0pHZzhXR21oS1NnRmQ4NmFtV3M4SEJWSURCaGtkUk9CUzZWaVJVcENSamdBQUFBQUJBQVAvTGdKL0Fzb0FHd0JHUUVNV0V4QU5CQVlFQkFFQkFnTUJBQUVEU2dBR0JBSUVCZ0orQUFFSEFRQUJBR1FGQVFRRUprc0RBUUlDSndKTUFRQVlGeFVVRWhFUERnd0xDQVlBR3dFYkNBY1VLd1VpSmljMUZoWXpNalkxTlNNREF5TVRBek1URXpNREV6TVZGQVlCK2hRbERBc2FFQmNjT2JhNGMrM2VlS2lwYzk2eVhUL1NDQVJXQkFVYklqd0JLdjdXQVhNQlYvN3ZBUkgrcVA3cm5FTlFBQUVBRHY4eEFpMENHd0FhQUVaQVF4WVRFQTBFQmdRRUFRRUNBd0VBQVFOS0FBWUVBZ1FHQW40QUFRY0JBQUVBWkFVQkJBUW9Td01CQWdJbkFrd0JBQmdYRlJRU0VROE9EQXNJQmdBYUFSb0lCeFFyQlNJbUp6VVdGak15TmpVMUl5Y0hJeE1ETXhjM013TVhNeFVVQWJFVUlnd0pHZzhYR1RpSmluakF0M21BZ0hpM2lGVFBCd1ZTQXdZWkhVVE96Z0VUQVFqQ3d2NzR3NUdPQUFFQUFnQUFBbDhDeWdBUkFDOUFMQVFCQUFFTkFRVUVBa29EQVFBSEFRUUZBQVJtQWdFQkFTWkxCZ0VGQlNjRlRCRVNFUkVSRWhFUUNBY2NLeE16QXpNVEV6TURNeFVqRXlNREF5TVRJenVWdm5pb3FIUytsNXZUZTdhNGROR1lBYVFCSnY3dUFSTCsybDMrdVFFcS90WUJSd0FBQVFBT0FBQUNFUUliQUJFQUwwQXNCQUVBQVEwQkJRUUNTZ01CQUFjQkJBVUFCR1lDQVFFQktFc0dBUVVGSndWTUVSSVJFUkVTRVJBSUJ4d3JFek1uTXhjM013Y3pGU01YSXljSEl6Y2pObnliZVlDQWVKeCtmcVY0aVlwNHBId0JQTi9Dd3Q5UTdNN083QUFBQWdBNUFBQUNGd0xLQUFzQUZBQXlRQzhBQVFBRUF3RUVaUUFDQWlaTEJnRURBd0JlQlFFQUFDY0FUQTBNQVFBUURnd1VEUlFLQ1FnR0FBc0JDd2NIRkNzaElpWTFORFkyTXpNUk14RW5NelVqSWdZVkZCWUJTSko5Tm5sa1gyekNWbFJaVmxOc1lUdGhPd0VtL1RaYjdqczhRRGNBQUFELy93QTAvL1lDR1FMNEFnWUFSd0FBQUFJQU9mLzJBelFDeWdBYkFDVUFaclVQQVFJQUFVcExzQ2RRV0VBY0JBRUJBQVlBQVFabkNBRUZCU1pMQndFQUFBSmZBd0VDQWk0Q1RCdEFJd0FCQkFZRUFRWitBQVFBQmdBRUJtY0lBUVVGSmtzSEFRQUFBbDhEQVFJQ0xnSk1XVUFTQUFBaklSNGNBQnNBR3lVa0l4TWlDUWNaS3dFUkZqTXlOalUxTXhVVUJpTWlKaWNHQmlNaUpqVTBOall6TXhFUkl5SUdGUlF6TWpZMUFnRUJaQzQxYTJ0ak9sTVdGMUkvY0hJNmZXUkJPMWRiZWowMkFzcjk2R0E0TjkzcVdHWXFKQ01xYkdkQVlqZ0JKdjUrT0VkM09DWUFBZ0F6Ly9ZRFBBTDRBQ0lBTGdCSlFFWWNBUVlFRUFFQ0FBSktDQUVGQkFXREFBRUdBQVlCQUg0SkFRWUdCRjhBQkFRdlN3Y0JBQUFDWHdNQkFnSXVBa3drSXdBQUtTY2pMaVF1QUNJQUlpUWtJeE1qQ2djWkt3RVJGQll6TWpZMU5UTVZGQVlqSWlZbkJnWWpJaVkxTkRZek1oWVhNeTRDTlRVRElnWVZGRE15TmpjMU5DWUNDaW83TXk5cmEyRkhSaFljV1VCcGZIVmRPMG9YQmdFREE0TkFQWDVLT3dFNUF2ajl6VGcvUEQ2T25XUmVMU2tsTW95S2k0NHVJUVlmSlE3Sy90VmtYNzFXV0JCZll3QUFBQUVBSFAvMkF6SUMxQUFxQUk5THNDMVFXRUFPS0FFR0FDY0JBZ1lHQVFRQ0Ewb2JRQTRvQVFZQUp3RUNCZ1lCQkFVRFNsbExzQzFRV0VBZkJRRUNBQVFCQWdSbEFBWUdBRjhIQVFBQUxVc0FBUUVEWHdBREF5NERUQnRBSmdBQ0JnVUdBZ1YrQUFVQUJBRUZCR1VBQmdZQVh3Y0JBQUF0U3dBQkFRTmZBQU1ETGdOTVdVQVZBUUFsSXg4ZEhCb1hGUklSRGd3QUtnRXFDQWNVS3dFeUZoVVVCZ2NWRmhZWEZoWXpNalkxTlRNVkZBWWpJaVluSmlNak5UTXlOalUwSmlNaUJnY25OallCQlcxNldrWlZXZ0VCTERrMU1XcHVZbUZ5QVFISFhGcGhXa1U2T0ZRaU5pbDNBdFJnVGtwWERRUUxWa2s4T3pjKzF1VmpZR1JyZ1ZORk56RTJJaGRJSHlvQUFBQUJBQ1AvOWdMc0FpVUFLZ0JNUUVrb0FRWUFKd0VDQmdjQkJBVURTZ0FDQmdVR0FnVitBQVVBQkFFRkJHVUFCZ1lBWHdjQkFBQXZTd0FCQVFOZkFBTURMZ05NQVFBbEl5QWVIUnNYRlJJUkR3MEFLZ0VxQ0FjVUt4TXlGaFlWRkFZSEZSWVdGeFlXTXpJMU5UTVZGQVlqSWlZbkppWWpJelV6TWpZMU5DTWlCZ2NuTmpiak9sczFOU3d6UFFFQkx6VmhhV2RqWUdzQ0FVbEVSejFDUzI4bVN5WWhLbG9DSlNBL0x6RTZEUVFLT1RJb0wzbU9uV1JmVDAweUxGRWlLVVVSRVZBU0ZBQUFBQUVBSFA4K0FuY0MxQUFpQUVsQVJpQUJCZ0FmQVFVR0JnRUVCUU5LQUFJREFvUUFCUUFFQVFVRVpRQUdCZ0JmQndFQUFDMUxBQUVCQTEwQUF3TW5BMHdCQUIwYkZ4VVVFaEFQRGcwTUN3QWlBU0lJQnhRckFUSVdGUlFHQnhVV0ZoVVZNeEVqTlNNMU5DTWpOVE15TmpVMEppTWlCZ2NuTmpZQkRYRitYVWhZWFd0b2JOcGdZV2hnU1Q0N1dpUTJLbm9DMUdCT1NsWU5CQXRZUm0zKzM4TE1lbE5GTnpFMkloZElIeW9BQUFBQUFRQW0vMFFDTGdJa0FDTUFSa0JESWdFR0FDRUJCUVlIQVFRRkEwb0FCUUFFQVFVRVpRQUJBQUlCQW1FQUJnWUFYd2NCQUFBdlN3QURBeWNEVEFFQUh4MGFHQmNWRWhFUUR3NE5BQ01CSXdnSEZDc1RNaFlXRlJRR0J4VWVBaFVWTXhFak5TTTFOQ1lqSXpVek1qWTFOQ01pQmdjbk51MDdYalkyTFI4MUlHRmtZMHBPVEVGR1UzWW9VQ1VrV0FJa0lFQXZNVGdOQlFnZk15bEQvdkM4bHl3c1VpRXBSaE1RVUNZQUFBRUFBdi8xQTQ4Q3lnQXBBSVpMc0MxUVdFQUtIZ0VBQVIwQkFnQUNTaHRBQ2g0QkFBRWRBUUlGQWtwWlM3QXRVRmhBSUFBQkF3QURBUUIrQUFNREJsMEhBUVlHSmtzRkFRQUFBbDhFQVFJQ0xnSk1HMEFxQUFFREFBTUJBSDRBQXdNR1hRY0JCZ1ltU3dBQUFBSmZCQUVDQWk1TEFBVUZBbDhFQVFJQ0xnSk1XVUFQQUFBQUtRQXBKU2NVSXhJakNBY2FLd0VSRmhZek1qVTFNeFVVQmlNaUppWTFFU01PQWdjT0FpTWlKaWMxRmhZek1qWTJOejRDTndKZEFUQXpaR3B2WHoxZE5zRUlGUlVMRFNoQ05oSWpEdzBhRUJzZ0ZBZ0lGaHdOQXNyOThUY3hkZGJsWTJBbVZrWUJ0RWFla2pSQ1hDOEhCVmtGQnlsSExDYU92MjBBQUFBQUFRQUYvL1lESXdJYkFCNEFOa0F6RndFQUFSWUJBZ0FDU2dBQkF3QURBUUIrQUFNREJsMEFCZ1lvU3dVQkFBQUNZQVFCQWdJdUFrd1RJeU1USXhJaUJ3Y2JLeVVVRmpNeU5UVXpGUlFHSXlJbU5SRWpEZ0lqSWljMUZqTXlOalkzSVFINExqVmVhbWRnWUc2T0RTNU1PeVFWRVJBZ01TTUxBVk83TnpWNWpwMWtYMTVsQVEybXkxd0pVZ1ZieXFjQUFRQmYvL1lEcHdMS0FCb0FXa3V3R1ZCWVFCd0dBUUVBQXdBQkEyVUlCd0lGQlNaTEFBQUFBbDhFQVFJQ0xnSk1HMEFnQmdFQkFBTUFBUU5sQ0FjQ0JRVW1Td0FFQkNkTEFBQUFBbDhBQWdJdUFreFpRQkFBQUFBYUFCb1JFUkVVSXhNakNRY2JLd0VSRkJZek1qWTFOVE1WRkFZaklpWW1OVFVoRVNNUk14RWhFUUo0TVRJeU1HcHVYanhkTmY2K2JHd0JRZ0xLL2ZNNE1qYysxdVZqWUNaV1I0Myt1Z0xLL3RnQktBQUFBQUFCQUZQLzlnTlFBaHNBR0FCb1M3QVpVRmhBSXdBREFRQUJBd0IrQUFBQUJRSUFCV1VJQndJQkFTaExBQUlDQkdBR0FRUUVMZ1JNRzBBbkFBTUJBQUVEQUg0QUFBQUZBZ0FGWlFnSEFnRUJLRXNBQmdZblN3QUNBZ1JnQUFRRUxnUk1XVUFRQUFBQUdBQVlFUk1qRWlNUkVRa0hHeXNURlNFMU14RVVGak15TlRVekZSUUdJeUltTlRVaEZTTVJ2UUVBYWk4elhtbG1ZVjl0L3dCcUFodmIyLzZnTnpWNWpwMWtYMTVrTStzQ0d3QUFBQUFCQUR6LzlnTExBdFFBSVFBelFEQVJBUU1DRWdFQUF3SktBQUFBQlFRQUJXVUFBd01DWHdBQ0FpMUxBQVFFQVY4QUFRRXVBVXdUSlNVbUpCQUdCeG9yQVNFVkZBWUdJeUltSmpVME5qWXpNaFlYQnlZbUl5SUdGUlFXRmpNeU5qWTFJd0doQVNvK2gzQnVtbEpWbzNWQmN5NG5KV003ZVh3eWFWRkpWU1M1QVhzd2FabFRXS1IwYnFWYkdSVmJFUnVYZkZCOFJqZGRPQUFBQUFBQkFEVC85Z0pXQWlVQUhRQXpRREFQQVFNQ0VBRUFBd0pLQUFBQUJRUUFCV1VBQXdNQ1h3QUNBaTlMQUFRRUFWOEFBUUV1QVV3U0pDVWtKQkFHQnhvckFTRVZGQVlHSXlJbU5UUTJNeklXRndjbUppTWlCaFVVRmpNeU5qVWpBVXdCQ2pWelg0bVNtcE02WVNnaUgxVXVaRnRSWEZSSW5nRXBKbEY1UTVPRGdwY1ZFMUlORjJ0WlZXcE9PZ0FBQUFBQkFBei85Z0orQXNvQUZnQXdRQzBBQWdBQkFBSUJmZ1FCQUFBRlhRWUJCUVVtU3dBQkFRTmZBQU1ETGdOTUFBQUFGZ0FXRkNNVEl4RUhCeGtyQVJVakVSUVdNekkyTlRVekZSUUdJeUltSmpVUkl6VUNJZGN5TXpJemFuQmVQVjgyMGdMS1h2NVFPREk0UHRibFkyQW1Wa1lCdEY0QUFBQUJBQlgvOWdKWUFoc0FGUUF3UUMwQUFnQUJBQUlCZmdRQkFBQUZYUVlCQlFVb1N3QUJBUU5mQUFNRExnTk1BQUFBRlFBVkV5TVRJeEVIQnhrckFSVWpFUlFXTXpJMk5UVXpGUlFHSXlJbU5SRWpOUUhYckM4MU1EQnBhR0ZmYjZ3Q0cxVCs5VGcxT1Q2UW5XUmZYbVFCRDFRQUFBRUFNdi8yQWpVQzFBQXFBRXBBUndNQkFRQUVBUUlCSXdFREFoa0JCQU1hQVFVRUJVb0FBZ0FEQkFJRFpRQUJBUUJmQmdFQUFDMUxBQVFFQlY4QUJRVXVCVXdCQUI0Y0Z4VVJEdzRNQ0FZQUtnRXFCd2NVS3dFeUZoY0hKaVlqSWdZVkZCWXpNeFVqSWdZVkZCWXpNalkzRlFZR0l5SW1OVFEyTnpVbUpqVTBOallCUVZGek1EWXBXanhDU21KdFdWdG9lRnhYUG5FdUxYQkdpNUZrVzAxY08zQUMxQ1lnVGhvZ05ESTNQMWM4UHo0OUdCVmlFeE54WGtsY0NnUUxWa2swVUM0QUFBRC8vd0FxLy9ZQjFRSWxBZ1lCZ1FBQUFBRUFBLzh1QXRFQ3lnQXJBT2RMc0JKUVdFQVNHZ0VGQXhrQkFnVUVBUUVDQXdFQUFRUktHMHV3RlZCWVFCSWFBUVVIR1FFQ0JRUUJBUUlEQVFBQkJFb2JRQklhQVFVSEdRRUNCUVFCQVFRREFRQUJCRXBaV1V1d0VsQllRQjhBQVFnQkFBRUFaQUFEQXdaZEFBWUdKa3NIQVFVRkFsOEVBUUlDSndKTUcwdXdGVkJZUUNZQUJ3TUZBd2NGZmdBQkNBRUFBUUJrQUFNREJsMEFCZ1ltU3dBRkJRSmZCQUVDQWljQ1RCdEFLZ0FIQXdVREJ3VitBQUVJQVFBQkFHUUFBd01HWFFBR0JpWkxBQUlDSjBzQUJRVUVYd0FFQkM0RVRGbFpRQmNCQUNnbkppVWVIQmNWRGcwTUN3Z0dBQ3NCS3drSEZDc0ZJaVluTlJZV016STJOVFVqRVNNT0FnY09BaU1pSmljMUZoWXpNalkyTno0Q055RVJNeFVVQmdKTUZDVU1DeGtRRngxcjB3a1ZGUXNOS0VJMkVpUU5EQnNQR3lBVUNRY1hHdzBCbVdFLzBnZ0VWZ1FGR3lJOEFtMUduNUkwUWx3dkJ3VlpCQWNxUmlvbGtNQnMvWk9jUTFBQUFBRUFCZjh4QWw0Q0d3QWdBSlpMc0I1UVdFQVNGUUVGQXhRQkFnVUVBUUVDQXdFQUFRUktHMEFTRlFFRkF4UUJBZ1VFQVFFRUF3RUFBUVJLV1V1d0hsQllRQjhBQVFnQkFBRUFaQUFEQXdaZEFBWUdLRXNIQVFVRkFsOEVBUUlDSndKTUcwQWpBQUVJQVFBQkFHUUFBd01HWFFBR0JpaExBQUlDSjBzSEFRVUZCRjhBQkFRdUJFeFpRQmNCQUI0ZEhCc1lGaE1SRGcwTUN3Z0dBQ0FCSUFrSEZDc0ZJaVluTlJZV016STJOVFVqRVNNT0FpTWlKelVXTXpJMk5qY2hFVE1WRkFIaUZDTUxDUmtQRnhwcW1BMHRURHdsRkJFUUlERWpDd0ZlVzg4SEJWSURCaGtkUkFIR3BzdGRDbEVGWE1xbi9qV1JqZ0QvL3dBQS8wWUNqUUxOQWlZQUpBQUFBQWNMb3dKNEFBRC8vd0F0LzBZQjdnSWxBaVlBUkFBQUFBY0xvd0pOQUFELy93QUFBQUFDalFQZEFpWUFKQUFBQVFjQ1N3SjFBS1VBQ0xFQ0FiQ2xzRE1yQUFELy93QXQvL1lCN2dNNEFpWUFSQUFBQUFjQ1N3SkxBQUQvL3dBQUFBQUNqUVBSQWlZQUpBQUFBUWNEVmdKdUFLVUFDTEVDQXJDbHNETXJBQUQvL3dBdC8vWUNOUU1zQWlZQVJBQUFBQWNEVmdKRUFBRC8vd0FBQUFBQ2pRUFJBaVlBSkFBQUFRY0RWd0pzQUtVQUNMRUNBckNsc0RNckFBRC8vd0FHLy9ZQjdnTXNBaVlBUkFBQUFBY0RWd0pGQUFELy93QUFBQUFDalFRTUFpWUFKQUFBQVFjRFdBSnFBS1VBQ0xFQ0FyQ2xzRE1yQUFELy93QXQvL1lDR1FObkFpWUFSQUFBQUFjRFdBSklBQUQvL3dBQUFBQUNqUVFhQWlZQUpBQUFBUWNEV1FKdEFLVUFDTEVDQXJDbHNETXJBQUQvL3dBdC8vWUI3Z04xQWlZQVJBQUFBQWNEV1FKRUFBRC8vd0FBLzBZQ2pRT3RBaVlBSkFBQUFDY0xvd0o1QUFBQkJ3RktBR29BcndBSXNRTUJzSyt3TXlzQUFQLy9BQzMvUmdIdUF2NENKZ0JFQUFBQUpnRktRd0FBQnd1akFrWUFBQUFBLy84QUFBQUFBbzBEOFFJbUFDUUFBQUVIQTFvQ2NnQ2xBQWl4QWdLd3BiQXpLd0FBLy84QUxmLzJBZTREVEFJbUFFUUFBQUFIQTFvQ1NBQUEvLzhBQUFBQUFvMEQ4UUltQUNRQUFBRUhBMXNDY1FDbEFBaXhBZ0t3cGJBekt3QUEvLzhBTGYvMkFlNERUQUltQUVRQUFBQUhBMXNDUndBQS8vOEFBQUFBQW8wRUV3SW1BQ1FBQUFFSEExd0NjUUNsQUFpeEFnS3dwYkF6S3dBQS8vOEFMZi8yQWU0RGJnSW1BRVFBQUFBSEExd0NTZ0FBLy84QUFBQUFBbzBFR0FJbUFDUUFBQUVIQTEwQ2J3Q2xBQWl4QWdLd3BiQXpLd0FBLy84QUxmLzJBZTREY3dJbUFFUUFBQUFIQTEwQ1J3QUEvLzhBQVA5R0FvMERuQUltQUNRQUFBQW5BVTBBZkFDdkFRY0xvd0o1QUFBQUNMRUNBYkN2c0RNckFBRC8vd0F0LzBZQjdnTHRBaVlBUkFBQUFDWUJUVlVBQUFjTG93STlBQUFBQVAvL0FGLy9SZ0h4QXNvQ0pnQW9BQUFBQnd1akFsc0FBUC8vQURUL1JnSUxBaVVDSmdCSUFBQUFCd3VqQWxvQUFQLy9BRjhBQUFIeEE5MENKZ0FvQUFBQkJ3SkxBbGdBcFFBSXNRRUJzS1d3TXlzQUFQLy9BRFQvOWdJTEF6Z0NKZ0JJQUFBQUJ3SkxBbGtBQVAvL0FGOEFBQUh4QTVRQ0pnQW9BQUFCQndGUkFFb0Fyd0FJc1FFQnNLK3dNeXNBQVAvL0FEVC85Z0lMQXVVQ0pnQklBQUFBQmdGUk93QUFBUC8vQUY4QUFBSkNBOUVDSmdBb0FBQUJCd05XQWxFQXBRQUlzUUVDc0tXd015c0FBUC8vQURULzlnSS9BeXdDSmdCSUFBQUFCd05XQWs0QUFQLy9BQk1BQUFIeEE5RUNKZ0FvQUFBQkJ3TlhBbElBcFFBSXNRRUNzS1d3TXlzQUFQLy9BQkgvOWdJTEF5d0NKZ0JJQUFBQUJ3TlhBbEFBQVAvL0FGOEFBQUloQkF3Q0pnQW9BQUFCQndOWUFsQUFwUUFJc1FFQ3NLV3dNeXNBQVAvL0FEVC85Z0liQTJjQ0pnQklBQUFBQndOWUFrb0FBUC8vQUY4QUFBSHhCQm9DSmdBb0FBQUJCd05aQWs4QXBRQUlzUUVDc0tXd015c0FBUC8vQURULzlnSUxBM1VDSmdCSUFBQUFCd05aQWtvQUFQLy9BRi8vUmdIeEE2MENKZ0FvQUFBQUp3dWpBbHNBQUFFSEFVb0FWQUN2QUFpeEFnR3dyN0F6S3dBQS8vOEFOUDlHQWdzQy9nSW1BRWdBQUFBbUFVcEVBQUFIQzZNQ1dnQUFBQUQvL3dBbUFBQUJPd1BkQWlZQUxBQUFBUWNDU3dIZkFLVUFDTEVCQWJDbHNETXJBQUQvL3dBN0FBQUEvQU00QWlZSUtnQUFBQWNDU3dHMkFBRC8vd0FtLzBZQk93TEtBaVlBTEFBQUFBY0xvd0hmQUFELy93Qk0vMFlBeFFMb0FpWUFUQUFBQUFjTG93RzRBQUQvL3dBOC8wWUMxUUxWQWlZQU1nQUFBQWNMb3dLNEFBRC8vd0EwLzBZQ0xnSWxBaVlBVWdBQUFBY0xvd0plQUFELy93QTgvL1lDMVFQZEFpWUFNZ0FBQVFjQ1N3SzNBS1VBQ0xFQ0FiQ2xzRE1yQUFELy93QTAvL1lDTGdNNEFpWUFVZ0FBQUFjQ1N3SmVBQUQvL3dBOC8vWUMxUVBSQWlZQU1nQUFBUWNEVmdLdkFLVUFDTEVDQXJDbHNETXJBQUQvL3dBMC8vWUNSd01zQWlZQVVnQUFBQWNEVmdKV0FBRC8vd0E4Ly9ZQzFRUFJBaVlBTWdBQUFRY0RWd0t2QUtVQUNMRUNBckNsc0RNckFBRC8vd0FZLy9ZQ0xnTXNBaVlBVWdBQUFBY0RWd0pYQUFELy93QTgvL1lDMVFRTUFpWUFNZ0FBQVFjRFdBS3VBS1VBQ0xFQ0FyQ2xzRE1yQUFELy93QTAvL1lDTGdObkFpWUFVZ0FBQUFjRFdBSldBQUQvL3dBOC8vWUMxUVFhQWlZQU1nQUFBUWNEV1FLdUFLVUFDTEVDQXJDbHNETXJBQUQvL3dBMC8vWUNMZ04xQWlZQVVnQUFBQWNEV1FKV0FBRC8vd0E4LzBZQzFRT3RBaVlBTWdBQUFDY0xvd0s0QUFBQkJ3RktBSzBBcndBSXNRTUJzSyt3TXlzQUFQLy9BRFQvUmdJdUF2NENKZ0JTQUFBQUp3dWpBbDRBQUFBR0FVcFZBQUFBLy84QVBQLzJBelFEclFJbUFrY0FBQUVIQUhZQkhBQ3ZBQWl4QWdHd3I3QXpLd0FBLy84QU5QLzJBcDBDL2dJbUFrZ0FBQUFIQUhZQXhBQUEvLzhBUFAvMkF6UURyUUltQWtjQUFBRUhBRU1BekFDdkFBaXhBZ0d3cjdBekt3QUEvLzhBTlAvMkFwMEMvZ0ltQWtnQUFBQUdBRU4wQUFBQS8vOEFQUC8yQXpRRDNRSW1Ba2NBQUFFSEFrc0N1d0NsQUFpeEFnR3dwYkF6S3dBQS8vOEFOUC8yQXAwRE9BSW1Ba2dBQUFBSEFrc0NZQUFBLy84QVBQLzJBelFEbEFJbUFrY0FBQUVIQVZFQW93Q3ZBQWl4QWdHd3I3QXpLd0FBLy84QU5QLzJBcDBDNVFJbUFrZ0FBQUFHQVZGTEFBQUEvLzhBUFA5R0F6UUMrQUltQWtjQUFBQUhDNk1DdGdBQS8vOEFOUDlHQXAwQ2JRSW1Ba2dBQUFBSEM2TUNYd0FBLy84QVdmOUdBb2tDeWdJbUFEZ0FBQUFIQzZNQ25nQUEvLzhBVHY5R0FpTUNHd0ltQUZnQUFBQUhDNk1DV3dBQS8vOEFXZi8yQW9rRDNRSW1BRGdBQUFFSEFrc0Ntd0NsQUFpeEFRR3dwYkF6S3dBQS8vOEFUdi8yQWlNRE9BSW1BRmdBQUFBSEFrc0NZZ0FBLy84QVdmLzJBMGtEclFJbUFra0FBQUVIQUhZQkJRQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QVR2LzJBdUVDL2dJbUFrb0FBQUFIQUhZQXpnQUEvLzhBV2YvMkEwa0RyUUltQWtrQUFBRUhBRU1BdFFDdkFBaXhBUUd3cjdBekt3QUEvLzhBVHYvMkF1RUMvZ0ltQWtvQUFBQUdBRU4rQUFBQS8vOEFXZi8yQTBrRDNRSW1Ba2tBQUFFSEFrc0NvUUNsQUFpeEFRR3dwYkF6S3dBQS8vOEFUdi8yQXVFRE9BSW1Ba29BQUFBSEFrc0NaUUFBLy84QVdmLzJBMGtEbEFJbUFra0FBQUVIQVZFQWpBQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QVR2LzJBdUVDNVFJbUFrb0FBQUFHQVZGVkFBQUEvLzhBV2Y5R0Ewa0MrQUltQWtrQUFBQUhDNk1Db2dBQS8vOEFUdjlHQXVFQ2JnSW1Ba29BQUFBSEM2TUNXd0FBLy84QUFQOUdBa2NDeWdJbUFEd0FBQUFIQzZNQ1VRQUEvLzhBQWY4UUFnOENHd0ltQUZ3QUFBRUhDNk1DeGYvNEFBbXhBUUc0Ly9pd015c0EvLzhBQUFBQUFrY0QzUUltQUR3QUFBRUhBa3NDVHdDbEFBaXhBUUd3cGJBekt3QUEvLzhBQWY4UUFnOERPQUltQUZ3QUFBQUhBa3NDTVFBQS8vOEFBQUFBQWtjRGxBSW1BRHdBQUFFSEFWRUFQZ0N2QUFpeEFRR3dyN0F6S3dBQS8vOEFBZjhRQWc4QzVRSW1BRndBQUFBR0FWRWlBQUFBLy84QU5QOWxBbVVDK0FJbUFOTUFBQUFHQUVKMUFBQUFBQUwrTndKZS8vRURMQUFKQUJvQU0wQXdCUUVFQUFBQkFRUWFFdzREQWdFRFNnQUFCQUNEQUFFRUFnUUJBbjREQVFJQ2dnQUVCSVFFVEJRV0VSUVRCUTBaS3dNMk5qY3pGUVlHQnlNWEl5WW1Kd1lHQnlNMU5qWTNNeFlXRjY4VEhCQmhGalliT1NnNkdUUWFHalFaT2hrNkYyNFhPaGtDeVJncklBb2RNeFZmRUNvWEZ5b1FEQnhGSWlKRkhBQUFBQUw5d1FKZS8zc0RMQUFKQUJvQVFVQStBd0VDQUFnQkFRSVhFZ3NEQXdFRFNnQUFBZ0NEQlFFQkFnTUNBUU4rQmdRQ0F3T0NBQUlDaEFKTUNnb0FBQW9hQ2hvVUV3OE9BQWtBQ1JRSERSVXJBU1ltSnpVekZoWVhGUWMxTmpZM014WVdGeFVqSmlZbkJnWUgvaWtjTmhaaEVCd1RLQms2RjI4WE9SazZHVFFhR2pRWkFyMFZNeDBLSUN3WERGOE1IRVFpSWtRY0RCQXFGeGNxRUFBQUFBQUMvamNDWHYvUkEyY0FFZ0FqQUhCQUVCRUJBZ0FKQVFVQ0lCc1dBd01CQTBwTHNBcFFXRUFjQUFFRkF3SUJjQVFCQXdPQ0JnRUFBQUlGQUFKbkJ3RUZCWVFGVEJ0QUhRQUJCUU1GQVFOK0JBRURBNElHQVFBQUFnVUFBbWNIQVFVRmhBVk1XVUFYRXhNQkFCTWpFeU1mSGhnWERnd0lCd0FTQVJJSURSUXJBeklXRlJRR0J3Y2pKelkxTkNNaUJnYzFOZ2NXRmhjVkl5WW1Kd1lHQnlNMU5qWTNrQzR6SkJvREx3VTdMUW9VQlF0REZ6b1pPaGswR2hvMEdUb1pPaGNEWnlJa0hSOEdKRDBISFJ3Q0FTOERlaUpGSEF3UUtoY1hLaEFNSEVVaUFBTCtPQUplLzM0RGRRQVZBQ1VBUTBCQUloMFpBd1lJQVVvQUFRQURBVmNBQkFJQkFBZ0VBR2NKQlFJREJ3RUdBd1poQ2dFSUNJUUlUQllXQUFBV0pSWWxJU0FiR2dBVkFCVWlJaElpSWdzTkdTc0RCZ1lqSWlZbUl5SUdCeU0yTmpNeUZoWXpNalkzQnhZV0Z4VWpKaWNHQmdjak5UWTJONElFTVN3Wkxpb1RGQlVHTWdVeEt4c3ZLaElURlFaQUZ6d2JOamMwR2pjYU5oaytGd04xTHo4V0Z4Y1hMejhYRmhjWGpDSkJIQXdnTGhjbkVBd2NRU0lBQUFBQUF2NDZBbDcvY2dOTUFBZ0FGZ0JBUUQwQkFRTUJCUUVBQXdKS0JnRUJBd0dEQUFBREJBTUFCSDRBQkFBQ0JBSmtCd1VDQXdPRUEwd0pDUUFBQ1JZSkZoUVNFQThOQ3dBSUFBZ1RDQTBWS3dNVkJnY2pOVFkyTnhjR0JpTWlKaWN6RmhZek1qWTN0aTA0TlJFZURvVUZUMHBMU3dRN0JERXJKellGQTB3S09pc01GeThkWVVCTlRFRXBIUjhuQUFBQUF2NDZBbDcvY2dOTUFBa0FGd0JBUUQwSUFRTUJBd0VBQXdKS0JnRUJBd0dEQUFBREJBTUFCSDRBQkFBQ0JBSmtCd1VDQXdPRUEwd0tDZ0FBQ2hjS0Z4VVRFUkFPREFBSkFBa1VDQTBWS3dFV0ZoY1ZJeVltSnpVRkJnWWpJaVluTXhZV016STJOLzY3RGgwUk5SazJGUUVVQlU5S1Mwc0VPd1F4S3lnMUJRTk1IUzhYREJRMkd3cGhRRTFNUVNrZEhpZ0FBQUwrT2dKZS8zSURiZ0FWQUNNQWNrQUtFd0VDQUFrQkJBSUNTa3V3REZCWVFCOEFBUVFGQWdGd0J3RUFBQUlFQUFKbkFBVUFBd1VEWXdnR0FnUUVoQVJNRzBBZ0FBRUVCUVFCQlg0SEFRQUFBZ1FBQW1jQUJRQURCUU5qQ0FZQ0JBU0VCRXhaUUJrV0ZnRUFGaU1XSXlFZkhSd2FHQkFPQ0FjQUZRRVZDUTBVS3dFeUZoVVVCZ2NISXljMk5qVTBKaU1pQmdjMU5qWVhCZ1lqSWlZbk14WVdNekkyTi83QkxERWpGd01zQlJzYkZ4TU1GQVVHRnI4RlQwcExTd1E3QkRFcktEVUZBMjRpSWh3ZUJoUXdCQThQRHd3Q0FTb0NBb05BVFV4QktSMGVLQUFBQUFMK09BSmUvMzREY3dBVkFDTUFkMHV3S1ZCWVFDSUtCUUlEQUFFQUF3Rm5BQVFDQVFBSEJBQm5BQWdBQmdnR1l3c0pBZ2NIaEFkTUcwQXRDd2tDQndBSUFBY0lmZ29GQWdNQUFRQURBV2NBQkFJQkFBY0VBR2NBQ0FZR0NGY0FDQWdHWHdBR0NBWlBXVUFhRmhZQUFCWWpGaU1oSHgwY0doZ0FGUUFWSWlJU0lpSU1EUmtyQXdZR0l5SW1KaU1pQmdjak5qWXpNaFlXTXpJMk54Y0dCaU1pSmljekZoWXpNalkzZ2dReExCa3ZLeElVRkFjeEJERXJHekFxRWhNVkJTWUVUVXRMVFFRN0JUSXFLRFFGQTNNdlBSWVhGeGN2UGhjV0ZoZVBQa2hJUGljWUdTWUFBQUFCQUJIL0hnQzdBQUFBRXdCRVFBb09BUUlBRFFFQkFnSktTN0FrVUZoQUVBQUFBZ0NEQUFJQ0FXQUFBUUVxQVV3YlFCVUFBQUlBZ3dBQ0FRRUNWd0FDQWdGZ0FBRUNBVkJadFNVbEV3TUhGeXNYTkNZbk14WVdGUlFHSXlJbUp6VVdGak15Tm1va0lrWWRORGd6RVNFTkNCa09FaGh6R3pnZ0Zqd3JMamNGQkVFQ0JCWUFBQUFBQVFBTC95NEExUUJkQUJFQUwwQXNCQUVCQWdNQkFBRUNTZ0FCQkFFQUFRQmpBQU1EQWwwQUFnSW5Ba3dCQUE0TkRBc0lCZ0FSQVJFRkJ4UXJGeUltSnpVV0ZqTXlOalUxSXpVekZSUUdVQlFtQ3dvYUVCY2RDbXhBMGdnRVZnUUZHeUk4WFp4RFVQLy9BQTMvRUFJbEFzb0NKZ0EzQUFBQUJ3QjZBTEVBQVAvL0FCTC9FQUZtQXBRQ0pnQlhBQUFBQmdCNmRnQUFBQUFDQUFmLzlnSTRBdmdBSFFBcEFKNUxzQmxRV0VBS0ZBRUpCd01CQUFnQ1NodEFDaFFCQ1FjREFRRUlBa3BaUzdBWlVGaEFKd1VCQXdZQkFnY0RBbVVBQkFTRVN3QUpDUWRmQUFjSGpVc0xBUWdJQUY4QkNnSUFBSXNBVEJ0QUt3VUJBd1lCQWdjREFtVUFCQVNFU3dBSkNRZGZBQWNIalVzQUFRR0RTd3NCQ0FnQVh3b0JBQUNMQUV4WlFCOGZIZ0VBSkNJZUtSOHBHUmNRRHc0TkRBc0tDUWdIQmdVQUhRRWREQTBVS3dVaUppY2pCeU1SSXpVek5UTVZNeFVqRlJRR0J6TTJOak15RmhVVUJpY3lOalUwSXlJR0J4VVVGZ0ZmUGswWENCUk9URXhxeE1RREFnVVhUajVoZDNoM1FVR0VTejRCT3dvdEgwSUNWMHRXVmtzWklEb1RJaTZIakl1TlYyUmV2RnRlQlYxakFBQURBQWtBQUFLM0Fzb0FIZ0FuQURBQWRyVVdBUWNFQVVwTHNBeFFXRUFtQUFFQUJBQUJjQUFFQUFjR0JBZGxCUUVBQUFKZEFBSUNna3NBQmdZRFhRZ0JBd09EQTB3YlFDY0FBUUFFQUFFRWZnQUVBQWNHQkFkbEJRRUFBQUpkQUFJQ2drc0FCZ1lEWFFnQkF3T0RBMHhaUUJRQUFEQXVLaWduSlNFZkFCNEFIVFVWSVFrTkZ5c3pFU01pQmhVVUZoY2pKaVkxTkRZek16SVdGUlFHQnhVZUFoVVVCaU1ETXpJMk5UUW1JeU1STXpJMk5UUW1JeU84R2lBZEJ3TmJCQWRKVWVxSWpFTTlLa1FvaDNXVWQxUkFUVk5yZzFkRVJsdDlBbThkRnhFY0J3b2dEa0pKVUdJK1ZBc0ZDQ1ZGT0dKcUFhQTJOVFV2L2V0RU9ETS9BQUQvL3dCZkFBQUNQUUxLQWdZQnFnQUFBQUlBVS8vMkFqZ0MrQUFYQUNNQWprdXdHVkJZUUFvT0FRWUVBd0VBQlFKS0cwQUtEZ0VHQkFNQkFRVUNTbGxMc0JsUVdFQWlBQU1EQWwwQUFnS0VTd0FHQmdSZkFBUUVqVXNJQVFVRkFGOEJCd0lBQUlzQVRCdEFKZ0FEQXdKZEFBSUNoRXNBQmdZRVh3QUVCSTFMQUFFQmcwc0lBUVVGQUY4SEFRQUFpd0JNV1VBWkdSZ0JBQjRjR0NNWkl4TVJDZ2tJQndZRkFCY0JGd2tORkNzRklpWW5Jd2NqRVNFVklSVVVCZ2N6TmpZek1oWVZGQVluTWpZMU5DTWlCZ2NWRkJZQlh6NU5Gd2dVVGdHdi9yc0RBZ1VYVGo1aGQzaDNRVUdFU3o0Qk93b3RIMElDK0ZWbElUOE5JaTZIakl1TlYyUmV2RnRlQlYxakFBQUFBQUlBV2YvMkFsRUN5Z0FOQUJjQU1rQXZBQUlBQkFNQ0JHVUFBUUdDU3dZQkF3TUFYd1VCQUFDTEFFd1BEZ0VBRkJJT0Z3OFhDQVlGQkFBTkFRMEhEUlFyQlNJbU5SRXpFVE15RmhZVkZBWW5NalUwSmlNakZSUVdBVmVJZG14NFpIazNmSUNPWFZkcVJRcDBhQUg0L3RvNFlEdGllVnVBUXpWMVJqMEFBQUFBQWdCUS8vWUNOZ0w0QUJJQUhRQTZRRGNKQVFRQ0FVb0FBUUdFU3dBRUJBSmZBQUlDalVzR0FRTURBRjhGQVFBQWl3Qk1GQk1CQUJnV0V4MFVIUTRNQlFRQUVnRVNCdzBVS3dVaUpqVVJNeFVVQmdjek5qWXpNaFlWRkFZbk1qVTBJeUlHRlJVVUZnRkdjb1JxQkFFRkZsQStZbmFEYllPRVRUNUpDb3lKQWUyM0lEd1JJaTZNaTR1TVY4SEFXMTRNWEdBQUFBRUFJUC8yQWowQzFBQWJBRGRBTkJFQkFnTVFCQUlCQWdNQkFBRURTZ0FDQWdOZkFBTURpa3NBQVFFQVh3UUJBQUNMQUV3QkFCVVREZ3dJQmdBYkFSc0ZEUlFyRnlJbUp6VVdGak15TmpVMEppTWlCZ2NuTmpZek1oWVdGUlFHQnZRNlZ5a3NVaTV0ZVhSd0xsQWlLQ3BzUVcyUVNVeVRDZzhRWFE0UmtvQi9reGtRV2hVWFc2VnZiYVZkQUFBQUFBRUFQUC8yQXJzRFlBQW9BRXhBU1FNQkFRQUVBUVVCSmdvQ0FnVVhDd0lEQWhnQkJBTUZTZ1lCQUFBQkJRQUJad0FDQWdWZkFBVUZpa3NBQXdNRVh3QUVCSXNFVEFFQUpDSWNHaFVURHcwSUJnQW9BU2dIRFJRckFUSVdGeFVtSmlNaUZSVUhKaVlqSWdZVkZCWXpNalkzRlFZR0l5SW1KalUwTmpZek1oWVhOVFFDZkJRaENnY2VFREFuSTA0dWFubHdjaTVWTENwWU9tNlJSMCtZYmh3M0dRTmdDQVZWQXdjeU1GZ1FHWk9BZjVJUkRsMFFEMXVsYjJ5bFhnY0dEWXdBQUFBQkFEVC85Z0l1QXYwQUpnQjVRQmdRQVFNQ0VRRUJBeGNLQWdRQkl4Z0NCUVFrQVFBRkJVcExzQ1pRV0VBZ0FBTURBbDhBQWdLRVN3QUVCQUZmQUFFQmpVc0FCUVVBWHdZQkFBQ0xBRXdiUUI0QUFnQURBUUlEWndBRUJBRmZBQUVCalVzQUJRVUFYd1lCQUFDTEFFeFpRQk1CQUNFZkhCb1ZFdzRNQ0FZQUpnRW1CdzBVS3dVaUpqVTBOall6TWhZWE5UUXpNaFlYRlNZbUl5SVZGUWNtSmlNaUZSUVdNekkyTnhVR0JnRXNjSWhDZEVvUUhnOStGQ0VLQngwUkx5QWNQaDJTU0VZc1JoMGRSQXFGajJSOE93TUNUSkVKQlZVREJ6SnVWQW9Sd0Z4Z0ZCQmNFUkQvL3dBY0FBQUNvUUxLQWdZQWtnQUFBQUlBQ1FBQUF2MEN5Z0FYQUI4QVcwdXdERkJZUUI0QUFRQUVBQUZ3QlFFQUFBSmRBQUlDZ2tzQUJBUURYUVlCQXdPREEwd2JRQjhBQVFBRUFBRUVmZ1VCQUFBQ1hRQUNBb0pMQUFRRUExMEdBUU1EZ3dOTVdVQVFBQUFmSFJvWUFCY0FGalVWSVFjTkZ5c3pFU01pQmhVVUZoY2pKaVkxTkRZek16SVdGaFVVQmlNbk15QVJOQ1lqSTdzYUh4NEhBMW9FQjBoUzltMmZXTWV6WEZnQkRZSjRhd0p2SFJjUkhBY0tJQTVDU1ZDY2NyVzNXd0VPaDM4QUFBQUFBZ0F4QUFBQ0R3TEtBQTBBRmdBNVFEWUFBUUFGQkFFRlp3QUNBZ05kQUFNRGdrc0hBUVFFQUYwR0FRQUFnd0JNRHc0QkFCSVFEaFlQRmd3TENna0lCZ0FOQVEwSURSUXJJU0ltTlRRMk5qTXpOU0UxSVJFbk16VWpJZ1lWRkJZQlFvK0NPSDlxVWY2OEFiRENWa1ZlWUZacllUcGpPOGxkL1RaYjdqVkVQVGdBQUFBQUFnQTAvL1lDR1FMNEFCZ0FKUUNPUzdBWlVGaEFDZ2tCQmdFVkFRQUZBa29iUUFvSkFRWUJGUUVFQlFKS1dVdXdHVkJZUUNJQUFnSURYUUFEQTRSTEFBWUdBVjhBQVFHTlN3Z0JCUVVBWHdRSEFnQUFpd0JNRzBBbUFBSUNBMTBBQXdPRVN3QUdCZ0ZmQUFFQmpVc0FCQVNEU3dnQkJRVUFYd2NCQUFDTEFFeFpRQmthR1FFQUlSOFpKUm9sRkJNU0VSQVBCd1VBR0FFWUNRMFVLd1VpSmpVME5qTXlGaGN6TGdJMU5TRTFJUkVqSnlNR0JpY3lOamMxTkNZaklnWVZGQllCREdKMmVHSTlUaGdHQVFRRC9yc0JyMU1TQlJkT0pVNC9BVDFTUVVKQ0NveUtpSTR1SVFZZ0pRMTRWZjBJU0NJd1YxWllFRnhrWjFwYllnQUEvLzhBTS84aUFpMENKUUVQQVlBQ1lBSWJ3QUFBQ2JFQUFyZ0NHN0F6S3dBQUFRQThBQUFCemdMS0FBc0FMMEFzQUFJQUFRQUNBV1VBQXdNRVhRQUVCSUpMQUFBQUJWMEdBUVVGZ3dWTUFBQUFDd0FMRVJFUkVSRUhEUmtyTXpVaE5TRTFJVFVoTlNFUlBBRW0vdXdCRlA3YUFaSmQ2bHZNWFAwMkFQLy9BRUgvOWdLOUF0VUNCZ0xCQUFBQUFRQXovL1lDTkFMVUFDb0FTa0JIQXdFQkFBUUJBZ0VrQVFNQ0dRRUVBeG9CQlFRRlNnQUNBQU1FQWdObEFBRUJBRjhHQVFBQWlrc0FCQVFGWHdBRkJZc0ZUQUVBSGh3WEZSRVBEZ3dJQmdBcUFTb0hEUlFyQVRJV0Z3Y21KaU1pQmhVVUZqTXpGU01pQmhVVUZqTXlOamNWQmdZaklpWW1OVFEyTnpVbUpqVTBOZ0UvVG5rdE1paFhQajVKWDJwV1hHcDFYbHcxZGk0dWNrWmtmVHBoWEVkWWZBTFVLeUJKR3lFMU1UaEFXRG8rUGtNZEZsOFZGalZkUFV0YUN3UUxVa3BRWkFBQUFBQUIvL1AvRUFIeEFzb0FGQUErUURzRUFRRUZBd0VBQVFKS0FBUUFCUUVFQldVQUF3TUNYUUFDQW9KTEFBRUJBRjhHQVFBQWh3Qk1BUUFSRUE4T0RRd0xDZ2NGQUJRQkZBY05GQ3NYSWlZbk5SWXpNalkxRVNFVklSVWhGU0VSRkFZeUZDQUxGQndkSHdHUy90a0JGUDdzVVBBSUJsY0tJU29ERkZ6cFhQNktWVTRBQUFBQkFEei85Z0xvQTJBQUxBQmJRRmdEQVFFQUJBRUhBU29LQWdJSEN3RUZBaGtCQXdRZUFRWURCa29JQVFBQUFRY0FBV2NBQlFBRUF3VUVaUUFDQWdkZkFBY0hpa3NBQXdNR1h3QUdCb3NHVEFFQUtTY2lJQjBjR3hvWEZROE5DQVlBTEFFc0NRMFVLd0V5RmhjVkppWWpJaFVWQnlZbUl5SUdCaFVVRmhZek1qWTNOU00xSVJFR0JpTWlKalUwTmpZek1oYzFOQUtxRkNBS0J4MFFNQ2NsWERGUGN6MHliRmNyT3htWEFRSTVkMHlrcjFlbWRrTTVBMkFJQlZVREJ6SXZXQkVYUTN4VVVIeEdDUWJDWGY2Y0V4UENyWENsV2c4UGpBQUFBZ0FBL3hBQ1VnTEtBQllBSVFBeVFDOGNFZ3dHQkFNQkFVb0NBUUVCZ2tzRkFRTURBRjhFQVFBQWh3Qk1HQmNCQUJjaEdDRVJFQWdIQUJZQkZnWU5GQ3NGSWlZMU5EWTNBek1URmhZWE5qWTNFek1ERmhVVUJpY3lOVFFtSndZR0ZSUVdBU2M3UUNZYzduQ0hEaHNIQnhzUGlYSHpSRUU3SWhBU0VoQVQ4RTA3TG5FNUFscituU1ZRSWlKUEp3RmkvYWFGVXpwT1VUZ1hSaU1rUkJZZUhBQUFBQUFCQUZQLzlnTm1BdmdBSWdDa1M3QWJVRmkxRUFFQkJBRktHN1VRQVFFR0FVcFpTN0FaVUZoQUhRQURBNFJMQUFFQkJGOEdBUVFFalVzQUJRVUFYd0lIQWdBQWl3Qk1HMHV3RzFCWVFDRUFBd09FU3dBQkFRUmZCZ0VFQkkxTEFBSUNnMHNBQlFVQVh3Y0JBQUNMQUV3YlFDVUFBd09FU3dBR0JvVkxBQUVCQkY4QUJBU05Td0FDQW9OTEFBVUZBRjhIQVFBQWl3Qk1XVmxBRlFFQUh4NGJHUlVURFF3TENnY0ZBQ0lCSWdnTkZDc0ZJaVkxTlRRaklnWVZFU01STXhVVUJ6TTJOak15RmhVVkZETXlOalVSTXhFVUJnS0hiM0JsVFRscWFnWUhHVkl4V0dCMVBUaHFjQXBnYlkxK1pGdis4UUw0eXpFcUtTbGVhSkNCUkU4Qk8vNi9lbW9BQUFBQkFGbi85Z0ZpQXNvQUR3QXJRQ2dNQVFJQkRRRUFBZ0pLQUFFQmdrc0FBZ0lBWHdNQkFBQ0xBRXdCQUFvSUJnVUFEd0VQQkEwVUt4Y2lKaVkxRVRNUkZETXlOamNWQmdiNUxrZ3FiVWtYTFE4UU9nb2ZTME1DSi8zaVdRZ0ZWd2dMQUFBQUFRQWdBQUFCUVFMS0FCTUFOMEEwRWhFQ0FRUUFCUXdMQ0FjRUFnRUNTZ1FCQUFNQkFRSUFBV1lHQVFVRmdrc0FBZ0tEQWt3QUFBQVRBQk1SRXhNUkV3Y05HU3NCRlFjVk14VWpGUmNWSVRVM05TTTFNelVuTlFFN1ZGcGFWUDdyVlZ0YlZRTEtQaHJaVytjWlBqNFo1MXZaR2o0QUFBQUFBUUJmQUFBQ2VBTFJBQm9BY0V1d0lsQllRQTREQVFFQUZBOE9Dd1FGQWdFQ1NodEFEZ01CQVFRVUR3NExCQVVDQVFKS1dVdXdJbEJZUUJNQUFRRUFYd1FGQWdBQWlrc0RBUUlDZ3dKTUcwQVhBQVFFZ2tzQUFRRUFYd1VCQUFDS1N3TUJBZ0tEQWt4WlFCRUJBQk1TRVJBTkRBZ0dBQm9CR2dZTkZDc0JNaFlYRlNZbUl5SUdCd2NCSXdNSEVTTVJNeEUyTmpjM05qWUNNUk1jQ2dnYUN3OGdGNWNCR0gzbFMyeHNHRGNaYnlnK0F0RUZCVlFDQXhJYnVQNXRBVXBFL3ZvQ3l2NmhIMElnaXpNbkFBQUFBQUVBVXdBQUFpa0MvZ0FlQUY1QUVRTUJBUUFFQVFJQkdSZ1ZEZ1FEQWdOS1M3QWtVRmhBRndBQkFRQmZCUUVBQUlSTEFBSUNoVXNFQVFNRGd3Tk1HMEFWQlFFQUFBRUNBQUZuQUFJQ2hVc0VBUU1EZ3dOTVdVQVJBUUFiR2hjV0ZCTUlCZ0FlQVI0R0RSUXJFeklXRnhVbUppTWlCaFVWRkFZSE16WTJOemN6QnhNakp3Y1ZJeEUwTnR3VkpRc0hIaEFXR2dNQ0F3b29ENlY3MmVkOXNqNXBSZ0wrQ2dSVkF3Y2JIKzhVT0JZUE1SQ3g1LzdNOFRTOUFtaE1TZ0FBQUFFQURnQUFBUW9DK0FBTEFDZEFKQU1CQVFRQkFBVUJBR1VBQWdLRVN3WUJCUVdEQlV3QUFBQUxBQXNSRVJFUkVRY05HU3N6RVNNMU14RXpFVE1WSXhGV1NFaHFTa29CVkZBQlZQNnNVUDZzQUFBQUFBSC8vZi8yQWpJQy9nQXJBTE5Mc0JsUVdFQVlFd3dDQUFFbUd4VVVFZ3NGQkFNQ0NnSUFIQUVEQWdOS0cwQVlFd3dDQUFFbUd4VVVFZ3NGQkFNQ0NnSUFIQUVFQWdOS1dVdXdHVkJZUUJvQUFnQURBQUlEZmdBQUFBRmZBQUVCaEVzRkJBSURBNHNEVEJ0THNDUlFXRUFlQUFJQUJBQUNCSDRBQUFBQlh3QUJBWVJMQlFFRUJJTkxBQU1EaXdOTUcwQWNBQUlBQkFBQ0JINEFBUUFBQWdFQVp3VUJCQVNEU3dBREE0c0RURmxaUUEwQUFBQXJBQ3NrS0NVbkJnMFlLeU1USndjbk55WW1JeUlHQnpVMk5qTXlGaGMzRndjVEZoWXpNamNWQmdZaklpWW5KeVltSnlNR0JnY0RBK2NVYUJWZkR5SWFFUm9MRFNnU1BVY1phQlZocGcwY0V4SU5DeVVSTERFUlFRMGNCUVFJR3c5ekFnczFIMFVjRkJBRUFsWURCUzR2SUVVZS9qTW1IUVZRQlFnc0xyZ2lWUnNoU3lMKzlBQUJBRm4vOWdPb0Fzb0FKQUIwUzdBWlVGaEFDaUVCQWdFYUFRQUNBa29iUUFvaEFRSUJHZ0VHQWdKS1dVdXdHVkJZUUJZRkF3SUJBWUpMQkFFQ0FnQmdCd1lJQXdBQWl3Qk1HMEFhQlFNQ0FRR0NTd0FHQm9OTEJBRUNBZ0JnQndnQ0FBQ0xBRXhaUUJjQkFCOGRHUmdYRmhNUkRnMEtDQVVFQUNRQkpBa05GQ3NGSWlZMUVUTVJGQll6TWpZMUVUTVJGQll6TWpZMUVUTVJJeWNqQmdZaklpWW5Jd1lHQVI5aFpXdzFPVkpGYkRZNlZVRnNWQkVHRzJFMVFsUVhCUjFqQ21ad0FmNytEME5FWUZvQnZ2NFBRMFJxWXdHci9UWlFMUzB4TURFd0FBSC84LzhRQXFrQ3lnQWVBRFZBTWdRQkFRUURBUUFCQWtvREFRSUNna3NBQkFTRFN3QUJBUUJmQlFFQUFJY0FUQUVBRlJRVEVnc0tCd1VBSGdFZUJnMFVLeGNpSmljMUZqTXlOalVSTXdFek5DWW1OUkV6RVNNQkl4NENGUkVVQmpBVUhnc1VIQjBmZ2dGb0F3UURaSVArbHdRQkJBTkw4QWdHVndvaEtnTVUvY0lMUWxFZ0FZRDlOZ0pCRVVGUEpQNDNWVTRBQUFELy93QlQveEFDSmdJbEFnWUJnd0FBLy84QVBQLzJBdFVDMVFJR0FtSUFBQUFDQUR6LzlnUHJBdFVBSGdBcUFGaEFDZzhCQkFFZEFRVUVBa3BMc0JsUVdFQVlCZ0VFQkFGZkFnRUJBWXBMQUFVRkFGOERBUUFBaXdCTUcwQWNCZ0VFQkFGZkFnRUJBWXBMQUFNRGcwc0FCUVVBWHdBQUFJc0FURmxBQ2lRbUloTWtKaU1IRFJzckFSUUdCaU1pSmlZMU5EWTJNeklXRnpZMk16SVdGUkVqRVRRaklnWUhGZ1VVRmpNeU5qVTBKaU1pQmdLNVI0NXBiSTFHUm81c1NuTW5JR1k3WTJkc2RERS9FakQ5OVdOcWEyRmhhbXBrQVdadnBWeGNwbTl1cFZzdkxDd3ZhblgrQ2dIeWh4MGJXWUtBbEpTQWdKS1NBQUFDQURUL0VBTVhBaVVBR2dBbUFETkFNQXdCQkFFWkFRVUVBa29HQVFRRUFWOENBUUVCalVzQUJRVUFYd0FBQUl0TEFBTURod05NSkNVaUV5TWxJZ2NOR3lzQkZBWWpJaVltTlRRMk16SVhOall6TWhZVkVTTVJOQ01pQnhZRkZCWXpNalkxTkNZaklnWUNGb052Um13K2duQnRRUnhQTGxKWWFsczlIaC8raXo5RlJFQkFSRVUvQVE2R2trRjlXb2FSU2lZa1htajlzUUpCZlNvK1dGdG1abHRjWTJNQUFBQUNBQWtBQUFLUEFzb0FHUUFpQUdKTHNBeFFXRUFoQUFFQUJRQUJjQUFGQUFNRUJRTmxCZ0VBQUFKZEFBSUNna3NIQVFRRWd3Uk1HMEFpQUFFQUJRQUJCWDRBQlFBREJBVURaUVlCQUFBQ1hRQUNBb0pMQndFRUJJTUVURmxBRVFBQUlpQWNHZ0FaQUJrbE5SVWhDQTBZS3pNUkl5SUdGUlFXRnlNbUpqVTBOak16TWhZVkZBWUdJeU1SRVRNeU5qVTBKaU1qdXhvZkhnY0RXZ1FIU0ZMaGpIODFmR3BOUWx0Y1QxVlZBbThkRnhFY0J3b2dEa0pKY1dVOGFFSCs4UUZxUFVsQVB3QUFBQUlBVS84UUFqZ0MvUUFrQURFQWhVQVNBd0VCQUFRQkFnRU9BUVVDR3dFREJnUktTN0FtVUZoQUpnQUJBUUJmQndFQUFJUkxDQUVGQlFKZkFBSUNqVXNBQmdZRFh3QURBNHRMQUFRRWh3Uk1HMEFrQndFQUFBRUNBQUZuQ0FFRkJRSmZBQUlDalVzQUJnWURYd0FEQTR0TEFBUUVod1JNV1VBWkppVUJBQzBySlRFbU1TRWdHUmNURVFnR0FDUUJKQWtORkNzVE1oWVhGU1ltSXlJR0ZSVVVCZ2N6TmpZek1oWVZGQVlqSWlZbkl4WVdGUlVqRVRRMkV5SUdCeFVVRmpNeU5qVTBKdDBVSlFzSEhCRVhHUVVCQmhkTlAyRjNkbUkrVGhjR0FnUnFSNjFMUGdFOFVFSkFRUUw5Q1FWVkF3Y2FIMEVUTVJNaU1JeUxpWThzSHhJeEU5c0RXRXhKL3RGV1dSQmVaR3hYV0dZQUFBSUFYLytjQW04Q3lnQVFBQmtBTzBBNER3RUFCUUZLQndFRUFRU0VBQU1BQmdVREJtVUFCUUFBQVFVQVpRQUNBb0pMQUFFQmd3Rk1BQUFaRnhNUkFCQUFFQ0VSRVJFSURSZ3JCUU1qRlNNUk14VXpNaFlWRkFZR0J4TUJNekkyTlRRbUl5TUI4Nng4Ykd4Y2lZTW9RU1BJL2x4YVUweFFWRlZrQVNHOUFzcGtabWczU3pBTi9zTUJlejgrUURZQUFBRUFMdi8yQWZZQzFBQW9BRGRBTkNZQkF3QWxFQUlCQXhFQkFnRURTZ0FEQXdCZkJBRUFBSXBMQUFFQkFsOEFBZ0tMQWt3QkFDTWhGUk1PREFBb0FTZ0ZEUlFyQVRJV0ZSUUdCZ2NHQmhVVUZqTXlOamNWQmdZaklpWTFORFkyTno0Q05UUW1JeUlHQnljMk5nRVNabjRzVWpsV1VFbEhPR3NvSldrOWQ0UXZWejAzUkI0K1BDcFBKaUVxWUFMVVlsZzZVRGNWSURneU1UY2VFV0lTRjJ0Zk9FczNGeFVsTFNJcU14WVJXUk1ZQUFBQUFBRUFLLy8yQWJVQ0pRQW5BRGRBTkNVQkF3QWtFUUlCQXhJQkFnRURTZ0FEQXdCZkJBRUFBSTFMQUFFQkFsOEFBZ0tMQWt3QkFDSWdGaFFQRFFBbkFTY0ZEUlFyRXpJV0ZSUUdCZ2NPQWhVVUZqTXlOamNWQmdZaklqVTBOamMrQWpVMEppTWlCZ2NuTmpiclhtd21TVFEwT0JRNFBDeGNJeUpUT05sVVN6STZHRFF3SVVRaklTbFZBaVZKUnkwNUtoUVZIaDBTSVNZWkVsb1JFcDlEUlJ3VEhCd1VHeDhWRDFFU0ZQLy9BQ1VBQUFJbUFzb0NCZ0Z2QUFBQUF2LzQveEFCcVFMK0FCZ0FJd0J0UUFvSUFRRURDUUVDQVFKS1M3QWtVRmhBSHdBRkFBTUJCUU5uQndFRUJBQmZCZ0VBQUlSTEFBRUJBbDhBQWdLSEFrd2JRQjBHQVFBSEFRUUZBQVJuQUFVQUF3RUZBMmNBQVFFQ1h3QUNBb2NDVEZsQUZ4b1pBUUFnSGhrakdpTVRFUTBMQmdRQUdBRVlDQTBVS3hNeUZSRVVNekkyTnhVR0JpTWlKaVkxRVNNaUpqVTBOallYSWdZVkZCWXpNelUwSm51UFNSY3VFUkU1SGk5SUtpZEVQUm81SmhRU0hCY2lGUUwrbVAxV1ZnZ0ZVQWdMSGtwREFsOUNNaHcwSUVvWUR4UVZFaHdpQUFBQUFRQVMveEFCWmdLVUFDQUFVa0JQRWdFREJSNEJCd01FQVFFQ0F3RUFBUVJLQUFRRkJJTUdBUU1EQlYwQUJRV0ZTd0FIQndKZkFBSUNpMHNBQVFFQVh3Z0JBQUNIQUV3QkFCMGJHUmdYRmhVVUVSQU1DZ2dHQUNBQklBa05GQ3NYSWlZbk5SWVdNekkxTlNNaUppWTFFU00xTnpjekZUTVZJeEVVTXpJM0ZSVHBGQ0lNQ1JvUE1CSXBSaXRMVHlWQm1wcE9MU1R3Q0FSU0F3WTJXeDVLUWdFcU1DaHllVkgrMkZZTnVvOEFBQUFCQUFrQUFBSS9Bc29BRXdCT1M3QU1VRmhBR1FBQkFBUUFBWEFEQVFBQUFsMEFBZ0tDU3dVQkJBU0RCRXdiUUJvQUFRQUVBQUVFZmdNQkFBQUNYUUFDQW9KTEJRRUVCSU1FVEZsQURRQUFBQk1BRXhFbEZTRUdEUmdyTXhFaklnWVZGQllYSXlZbU5UUTJNeUVWSXhIOVhCOGVCd05hQkFkSVVnR2MxZ0p0R3hjUkhBY0tJQTVDU1YzOWt3QUFBQUFCQUJMLzlnRm1BdjBBSXdCOFFCY0RBUUVBSUFRQ0FnRWZBUU1DRkFFRUF4VUJCUVFGU2t1d0psQllRQ0VBQVFFQVh3Y0JBQUNFU3dZQkF3TUNYUUFDQW9WTEFBUUVCVjhBQlFXTEJVd2JRQjhIQVFBQUFRSUFBV2NHQVFNREFsMEFBZ0tGU3dBRUJBVmZBQVVGaXdWTVdVQVZBUUFlSFJrWEV4RU9EUXdMQ0FZQUl3RWpDQTBVS3hNeUZoY1ZKaVlqSWdZVkZUTVZJeEVVRmpNeU54VUdCaU1pSmlZMUVTTTFOelUwTnYwWUxBMEtMQllnRzVxYUt5TXRKQkU2SFN4SkxFdExVZ0w5Q1FWVkF3Y2dJRWxSL3Rnc0tnMVFDQXNlU2tJQktqQW1QbEJQQUFBQkFBMy9FQUlsQXNvQUVRQTFRRElQQVFRQkVBRUFCQUpLQXdFQkFRSmRBQUlDZ2tzQUJBUUFYd1VCQUFDSEFFd0JBQTRNQ1FnSEJnVUVBQkVCRVFZTkZDc0ZJaVkxRVNNMUlSVWpFUlFXTXpJM0ZRWUJka2RNMWdJWTFoOGRIQlFaOEUxV0FycGRYZjFKS2lFS1Z3NEFBUUFpLy9VQzdBTEtBQ0VBTlVBeUhBWUNBZ0VCU2dRQkFnSUJYUVVCQVFHQ1N3WUJBQUFEWHdBREE0c0RUQUVBR3hvWkdCSVFDZ2tJQndBaEFTRUhEUlFySlRJMk5UUW1KelVoRlNNV0ZoVVVCZ1lqSWlZbU5UUTJOeU0xSVJVR0JoVVVGZ0dJYm10RVdBRW5za0ZYVHBSb2FwUk9WMEt6QVNoWVJtMVNlMjVnbVR0YlhTK2liR0NPVFUyTllHMmlMMTFiT3B0ZmJuc0FBQUFBQVFCWi8vWUNpUUxVQUJzQVhVQUtFZ0VEQVJFQkFnTUNTa3V3R1ZCWVFCY0FBd01CWHdRQkFRR0NTd0FDQWdCZkJRRUFBSXNBVEJ0QUd3QUJBWUpMQUFNREJGOEFCQVNLU3dBQ0FnQmZCUUVBQUlzQVRGbEFFUUVBRmhRUURna0hCUVFBR3dFYkJnMFVLd1VpSmpVUk14RVVNekkyTlJFMEppTWlCelUyTmpNeUZSRVVCZ1lCYm9pTmJLNWFVU0FjS1NFUU5oMk9QWDRLa1hjQnpQNDVzV0JTQVM4bUhoTllDZzZVL3J4S2QwVUFBQUFBQVFBQUFBQUNSd0xWQUJNQWFrdXdGVkJZUUEwUkFRTUFFQW9IQkFRQ0F3SktHMEFORVFFREFSQUtCd1FFQWdNQ1NsbExzQlZRV0VBU0FBTURBRjhCQkFJQUFJcExBQUlDZ3dKTUcwQVdBQUVCZ2tzQUF3TUFYd1FCQUFDS1N3QUNBb01DVEZsQUR3RUFEdzBKQ0FZRkFCTUJFd1VORkNzVE1oWVhFeE16QXhFakVRTW1KaU1pQnpVMk5rRXBOQlowcTNUcWJKSVFHUkFVRWdvaUF0VW9NUDcvQVU3K1MvN3JBUkVCTkNBVkNGWUVDUUFBQVFBRS94QUNNZ0lsQUNVQWZrdXdHVkJZUUJFREFRRUFIaGdSQkFRREFSQUJBZ01EU2h0QUVRTUJBUVFlR0JFRUJBTUJFQUVDQXdOS1dVdXdHVkJZUUJjQUFRRUFYd1FGQWdBQWpVc0FBd01DWUFBQ0FvY0NUQnRBR3dBRUJJVkxBQUVCQUY4RkFRQUFqVXNBQXdNQ1lBQUNBb2NDVEZsQUVRRUFHaGtWRXc0TUJ3VUFKUUVsQmcwVUt3RXlGaGNWSmlNaUJnY0RCZ1lqSWlZbk5SWVdNekkyTnpjRE14TVdGaGN6TmpZM056WTJBZklTSWd3TkVoTWJEcXNjWVZJV0pRMEtJQkF0T2hFVjJISnJEUllHQkFVWkRrVVROQUlsQ0FWUUJSMG0vaTlPV3dVRFZBSUVOQ3M3QWh2KzNpUkhJUmhNSjhVMU13QUJBQ0lBQUFJYkFzb0FFUUEzUURRR0FRRUNEd0VHQlFKS0F3RUFCd0VFQlFBRVpRQUJBUUpkQUFJQ2drc0FCUVVHWFFBR0JvTUdUQklSRVJFU0VSRVFDQTBjS3hNek55RTFJUlVITXhVakJ5RVZJVFUzSTBxNGp2NmRBZVdhY3F5YUFYZitCNlY5QVpuVVhVM2tWdVpkVGZZQUFBRUFJd0FBQWJjQ0d3QVJBRDFBT2dFQkJnY0tBUU1DQWtvRkFRQUVBUUVDQUFGbEFBWUdCMTBJQVFjSGhVc0FBZ0lEWFFBREE0TURUQUFBQUJFQUVSRVJFaEVSRVJJSkRSc3JBUlVITXhVakJ5RVZJVFUzSXpVek55RTFBYTlvWFpadkFSaitiSHRtbm1QKyt3SWJTNU5PblZKRHJFNk1VZ0FBQVAvL0FDSC85Z0lZQXNvQ0JnTEpBQUFBQVFBeS8vWUNLUUxLQUJ3QVJrQkRDUUVEQWc0QkJBRVpBUVVFR2dFQUJRUktBQUVBQkFVQkJHVUFBd01DWFFBQ0FvSkxBQVVGQUY4R0FRQUFpd0JNQVFBWEZSRVBEUXdMQ2dnSEFCd0JIQWNORkNzRklpWW1OVFEyTmpjbk5TRVZJUmNWSXlJR0ZSUVdNekkyTnhVR0JnRk5ZbjA4UUcxRDBRSEQvc3JFU0ZaaldsNHhjQzh1YXdvN1l6MUpZVE1EeWs5ZHdVMURSa0JJR0JkZ0ZSSUFBQUVBSS84UUFmVUNHd0FiQUVWQVFnZ0JBZ0VOQndJREFoZ0JCQU1aQVFBRUJFb0FBd0lFQWdNRWZnQUNBZ0ZkQUFFQmhVc0FCQVFBWHdVQkFBQ0hBRXdCQUJZVUVBNE1Dd29KQUJzQkd3WU5GQ3NGSWlZbU5UUTJOeWMxSVJVaEZ4VWpJZ1lWRkJZek1qWTNGUVlHQVNwVWRUNkhiZGtCclA3VDFEdGlabGhQTjJRbEpHUHdQV2xDYjNrSzUwcFc0a3RNVUVKVEdSSmRFUlFBQUFFQUl2OFFBZGNDR3dBbkFGSkFUeFFCQXdRUEFRSUZKQUVIQmlVQkFBY0VTZ0FGQUFJQkJRSm5BQUVBQmdjQkJtY0FBd01FWFFBRUJJVkxBQWNIQUY4SUFRQUFod0JNQVFBaUlCMGJGaFVURWhFUURnd0lCZ0FuQVNjSkRSUXJGeUltTlRRMk5qYzJOalUwSmlNak5UY2hOU0VWQnhZV0ZSUUdCZ2NHQmhVVU16STJOeFVHQnVOVWJTRlJTVTlBV0ZnOXJmNzVBWmk0WW5BdGFsNDRLR2MzVng4ZVhmQStSQ1E3SlFFQk1UYzNLMG1hVmttZkJWaFdORlkwQXdFWEZTNFlEVmtPRWdBQUFRQXFBQUFDQ2dMOUFCOEFkRUFQSEFFQkJ3OEJCQU1DU2gwQkJ3RkpTN0FtVUZoQUlBWUJBUVVCQWdNQkFtVUFCd2NBWHdnQkFBQ0VTd0FEQXdSZEFBUUVnd1JNRzBBZUNBRUFBQWNCQUFkbkJnRUJCUUVDQXdFQ1pRQURBd1JkQUFRRWd3Uk1XVUFYQVFBYUdCTVNFUkFPRFF3S0NRZ0hCZ0FmQVI4SkRSUXJBVElXRlJRR0J6TVZJd2NWSVJVaE5STWpOVE0yTmpVMEppTWlCZ2NuTmpZQkJtSnZGUmRianRVQlovNGcxYnYySEJVN01DNUhKRFlsYUFMOVoxVXBUQ2xPL1FWVFZBRUJUaWxKS0RFMkpTQkZJamNBQUFBQUFRQWgvL1lDRkFMS0FCd0FRVUErQkFFQkFnTUJBQUVDU2dBR0FBSUJCZ0psQlFFREF3UmRBQVFFZ2tzQUFRRUFYd2NCQUFDTEFFd0JBQmNWRkJNU0VSQVBEZ3dJQmdBY0FSd0lEUlFyRnlJbUp6VVdGak15TmpVMEppTWpFU00xSVJVaEZUTXlGaFlWRkFidU9tZ3JLM0F4V1Y5ZlNYMWRBZGIrOGlaTGRVT1JDaElWWUJZWlNVZEZRUUVJWGw2dk5HTkdhSUlBQUFBQkFDTC85Z0hTQWhzQUhBQkJRRDRFQVFFQ0F3RUFBUUpLQUFZQUFnRUdBbVVGQVFNREJGMEFCQVNGU3dBQkFRQmZCd0VBQUlzQVRBRUFGeFVVRXhJUkVBOE9EQWdHQUJ3QkhBZ05GQ3NYSWlZbk5SWVdNekkyTlRRbUl5TTFJelVoRlNNVk16SVdGUlFHQnQwNFl5QWlZalU5VWsxTFcwd0JpdDBaZDJvMGJRb1NFVndSR1N3MEx5dkJWVlZ2V1U0elZUSUFBUUFrLy9ZQnJnS1VBQ01BUUVBOUVnRUNCQU1CQVFJQ0FRQUJBMG9BQXdRRGd3VUJBZ0lFWFFBRUJJVkxBQUVCQUdBR0FRQUFpd0JNQVFBWkdCY1dGUlFSRUFjRkFDTUJJd2NORkNzWElpYzFGaFl6TWpZMU5DWW5KaVkxTlNNMU56Y3pGVE1WSXhVVUZoY2VBaFVVQnRKdFFTQmVMajg0TGpnckwxMWVKVUdXbGhRYUxFRWxjUW9pWFJFY0ppSWNKQmtVUDBOTE1DaHllVkZMSVI0S0VpazVLMHhWQUFBQUFnQlQveEFDS1FJbEFBOEFHUUJzUzdBWlVGaEFDd3dCQXdBVUJ3SUJBd0pLRzBBTERBRURBaFFIQWdFREFrcFpTN0FaVUZoQUV3VUJBd01BWHdJRUFnQUFqVXNBQVFHSEFVd2JRQmNBQWdLRlN3VUJBd01BWHdRQkFBQ05Td0FCQVljQlRGbEFFeEVRQVFBUUdSRVpDd29KQ0FBUEFROEdEUlFyQVRJV0ZSUUdCZ2NWSXhFekZ6TTJOaGNpQmhVVk5qWTFOQ1lCV2x0MFY2UnhhbFlQQlJkSklrYzdkNGhCQWlWNGNGcU9XUW5qQXd0SUlqQlhWMWpURDM5alFWQUFBUUIyQUFBQXpRTDRBQU1BR1VBV0FBQUFoRXNDQVFFQmd3Rk1BQUFBQXdBREVRTU5GU3N6RVRNUmRsY0MrUDBJQUFBQS8vOEFkZ0FBQWJRQytBQW1BNTBBQUFBSEE1MEE1d0FBQUFFQVBRQUFBY2NDK0FBVEFEVkFNZ2dCQUFjQkFRSUFBV1VHQVFJRkFRTUVBZ05sQ2dFSkNZUkxBQVFFZ3dSTUFBQUFFd0FURVJFUkVSRVJFUkVSQ3cwZEt3RVZNeFVqRlRNVkl4RWpFU00xTXpVak5UTTFBUzJhbXBxYVZwcWFtcG9DK1BaUFhWRCsrZ0VHVUYxUDl2Ly9BRVQvOGdETkFzb0NCZ0FFQUFELy93QmZBQUFFN2dPdEFDWUFKd0FBQUNjQVBRTFRBQUFCQndGTEF4a0Fyd0FJc1FNQnNLK3dNeXNBQVAvL0FGOEFBQVNVQXY0QUpnQW5BQUFBSndCZEF0MEFBQUFIQVVzQzdnQUEvLzhBTlAvMkJDTUMvZ0FtQUVjQUFBQW5BRjBDYkFBQUFBY0JTd0o5QUFELy93QmYvendDM3dMS0FDWUFMd0FBQUFjQUxRSVlBQUQvL3dCZi94QUMzUUxvQUNZQUx3QUFBQWNBVFFJWUFBRC8vd0JUL3hBQjFRTDRBQ1lBVHdBQUFBY0FUUUVRQUFELy93QmYvendEendMS0FDWUFNUUFBQUFjQUxRTUlBQUQvL3dCZi94QUR6UUxvQUNZQU1RQUFBQWNBVFFNSUFBRC8vd0JUL3hBRE93TG9BQ1lBVVFBQUFBY0FUUUoyQUFELy93QUFBQUFDalFPdEFpWUFKQUFBQVFjQlN3QnBBSzhBQ0xFQ0FiQ3ZzRE1yQUFELy93QXQvL1lCN2dMK0FpWUFSQUFBQUFZQlMwSUFBQUQvLy8vOEFBQUJad090QWlZQUxBQUFBUWNCUy8vVUFLOEFDTEVCQWJDdnNETXJBQUQvLy8vVEFBQUJQZ0wrQWlZSUtnQUFBQVlCUzZzQUFBRC8vd0E4Ly9ZQzFRT3RBaVlBTWdBQUFRY0JTd0NzQUs4QUNMRUNBYkN2c0RNckFBRC8vd0EwLy9ZQ0xnTCtBaVlBVWdBQUFBWUJTMVFBQUFELy93QlovL1lDaVFPdEFpWUFPQUFBQVFjQlN3Q1VBSzhBQ0xFQkFiQ3ZzRE1yQUFELy93Qk8vL1lDSXdMK0FpWUFXQUFBQUFZQlMxNEFBQUQvL3dCWi8vWUNpUVA1QWlZQU9BQUFBUWNIdUFGeUFLOEFDTEVCQTdDdnNETXJBQUQvL3dCTy8vWUNJd05LQWlZQVdBQUFBQWNIdUFFN0FBRC8vd0JaLy9ZQ2lRUVpBaVlBT0FBQUFRY0hnd0Z5QUs4QUNMRUJBN0N2c0RNckFBRC8vd0JPLy9ZQ0l3TnFBaVlBV0FBQUFBY0hnd0U3QUFELy93QlovL1lDaVFRZ0FpWUFPQUFBQVFjSHR3RnlBSzhBQ0xFQkE3Q3ZzRE1yQUFELy93Qk8vL1lDSXdOeEFpWUFXQUFBQUFjSHR3RTdBQUQvL3dCWi8vWUNpUVFaQWlZQU9BQUFBUWNIaEFGeUFLOEFDTEVCQTdDdnNETXJBQUQvL3dCTy8vWUNJd05xQWlZQVdBQUFBQWNIaEFFN0FBRC8vd0FBQUFBQ2pRUDVBaVlBSkFBQUFRY0h1QUZHQUs4QUNMRUNBN0N2c0RNckFBRC8vd0F0Ly9ZQjdnTktBaVlBUkFBQUFBY0h1QUVmQUFELy93QUFBQUFDalFQdkFpWUFKQUFBQUFjSHV3RkdBQUQvL3dBdC8vWUI3Z05LQWlZQVJBQUFBQWNIdWdFZkFBRC8vLy8vQUFBRFNnTmRBaVlBaUFBQUFRY0JUQUV2QUs4QUNMRUNBYkN2c0RNckFBRC8vd0F0Ly9ZRFB3S3VBaVlBcUFBQUFBY0JUQUQ5QUFBQUFRQTgvL1lDeXdMVUFDWUFXRUJWQ2dFQ0FRc0JCd0lYQVFNRUpBRUFBd1JLQUFjQUJnVUhCbVVJQVFVSkFRUURCUVJsQUFJQ0FWOEFBUUdLU3dBREF3QmZDZ0VBQUlzQVRBRUFJeUloSUI4ZUhSd2JHaGtZRlJNUERRZ0dBQ1lCSmdzTkZDc0ZJaVkxTkRZMk16SVdGd2NtSmlNaUJoVVVGak15TmpjMUl6VXpOU00xSVJVekZTTVZCZ1lCbHErclY2WjJPMnd1SnlWZU1YZUdkSUlwUEJtTmpaY0JBa0JBTlhJS3hLbHZwbHdZRTFvUkY1R0NncE1JQjBGT1JWdWdUb0VSRndBQUFBQUNBRFQvRUFKU0FpVUFKUUF4QU90THNCbFFXRUFTQXdFSkFCd0JDQW9SQVFVREVBRUVCUVJLRzBBU0F3RUpBUndCQ0FvUkFRVURFQUVFQlFSS1dVdXdGMUJZUUN3SEFRSUdBUU1GQWdObURBRUpDUUJmQVFzQ0FBQ05Td0FLQ2doZkFBZ0lnMHNBQlFVRVh3QUVCSWNFVEJ0THNCbFFXRUFxQUFvQUNBSUtDR2NIQVFJR0FRTUZBZ05tREFFSkNRQmZBUXNDQUFDTlN3QUZCUVJmQUFRRWh3Uk1HMEF1QUFvQUNBSUtDR2NIQVFJR0FRTUZBZ05tQUFFQmhVc01BUWtKQUY4TEFRQUFqVXNBQlFVRVh3QUVCSWNFVEZsWlFDRW5KZ0VBTENvbU1TY3hJUjhZRnhZVkZCSU9EQW9KQ0FjR0JRQWxBU1VORFJRckFUSVdGek0zTXhFekZTTUdCaU1pSmljMUZqTXlOeU0xTXpVME5qY2pCZ1lqSWlZMU5EWVhJZ1lWRkRNeU5qVTFOQ1lCRFRSVUhRVU1WamxDRUhkcE9tSXBWM1JsRjZHdkFnRUVIRkUxWm5OemZEOURoRXBGUmdJbEtDbEgvY3BJUVV3UUVWc3FPMGc5RUNjTktpZUpmWHVQV0Z0WXNrcFdEbUZXQUFELy93QTgvL1lDaXdPdEFpWUFLZ0FBQVFjQlN3QzJBSzhBQ0xFQkFiQ3ZzRE1yQUFELy93QTAveEFDR1FMK0FpWUFTZ0FBQUFZQlMxRUFBQUQvL3dCZkFBQUNlQU90QWlZQUxnQUFBUWNCU3dCNkFLOEFDTEVCQWJDdnNETXJBQUQvLy8vVkFBQUNLUVBiQWlZQVRnQUFBUWNCUy8rdEFOMEFDTEVCQWJEZHNETXJBQUQvL3dBOC94NEMxUUxWQWlZQU1nQUFBQWNCVUFFUUFBRC8vd0EwL3g0Q0xnSWxBaVlBVWdBQUFBY0JVQUMyQUFELy93QTgveDRDMVFOZEFpWUFNZ0FBQUNjQlRBREhBSzhCQndGUUFSZ0FBQUFJc1FJQnNLK3dNeXNBQVAvL0FEVC9IZ0l1QXE0Q0pnQlNBQUFBSmdGTWJ3QUFCd0ZRQUxZQUFBQUEvLzhBSWYvMkFoZ0RyUUltQTVRQUFBRUhBVXNBT2dDdkFBaXhBUUd3cjdBekt3QUEvLzhBRXY4UUFlY0MvZ0ltQXNvQUFBQUdBVXNkQUFBQS8vOEFYd0FBQk80Q3lnQW1BQ2NBQUFBSEFEMEMwd0FBLy84QVh3QUFCSlFDeWdBbUFDY0FBQUFIQUYwQzNRQUEvLzhBTlAvMkJDTUMrQUFtQUVjQUFBQUhBRjBDYkFBQS8vOEFQUC8yQW9zRHJRSW1BQ29BQUFFSEFIWUJKd0N2QUFpeEFRR3dyN0F6S3dBQS8vOEFOUDhRQWhrQy9nSW1BRW9BQUFBSEFIWUF3UUFBQUFFQVgvLzNBM0lDeWdBWUFHSkxzQnRRV0VBZ0FBRUFCZ01CQm1VQ0FRQUFna3NBQkFTRlN3QURBd1ZnQ0FjQ0JRV0xCVXdiUUNRQUFRQUdBd0VHWlFJQkFBQ0NTd0FFQklWTENBRUhCNE5MQUFNREJXQUFCUVdMQlV4WlFCQUFBQUFZQUJnVEl4TWlFUkVSQ1EwYkt6TVJNeEVoRVRNUkZETXlOalVSTXhFVUJpTWlKalUxSVJGZmJBRVdiRjB3TEd4aloyUmovdW9DeXY3WUFTajk3MmMzTkFGZS9xRlpiR05ja1A2NkFBQUFBZ0JmL3hBQ1pBTFZBQkFBR2dCVXR4VU5DQU1CQXdGS1M3QVpVRmhBRXdVQkF3TUFYd0lFQWdBQWlrc0FBUUdIQVV3YlFCY0FBZ0tDU3dVQkF3TUFYd1FCQUFDS1N3QUJBWWNCVEZsQUV4SVJBUUFSR2hJYURBc0tDUUFRQVJBR0RSUXJBVElXRmhVVUJnWUhGU01STXhjek5qWVhJZ1lWRVRZMk5UUW1BWTQrWVRkT3RKZHNWQklFSFY4eFhVNlZsMFFDMVRkdVZGdXhuRHJxQTd0Z0t6OWNlV2IreFQzSWQwOVAvLzhBWHdBQUFxa0RyUUltQURFQUFBRUhBRU1BeHdDdkFBaXhBUUd3cjdBekt3QUEvLzhBVXdBQUFpWUMvZ0ltQUZFQUFBQUdBRU4rQUFBQS8vOEFBQUFBQW8wRHJRSW1BQ1FBQUFFSEM0OENid0N2QUFpeEFnS3dyN0F6S3dBQS8vOEFMZi8yQWU0Qy9nSW1BRVFBQUFBSEM0OENTQUFBLy84QUFBQUFBbzBEbkFJbUFDUUFBQUVIQzVFQlJnQ3ZBQWl4QWdHd3I3QXpLd0FBLy84QUxmLzJBZTRDN1FJbUFFUUFBQUFIQzVFQkh3QUEvLzhBUXdBQUFmRURyUUltQUNnQUFBRUhDNDhDV1FDdkFBaXhBUUt3cjdBekt3QUEvLzhBTS8vMkFnc0MvZ0ltQUVnQUFBQUhDNDhDU1FBQS8vOEFYd0FBQWZFRG5BSW1BQ2dBQUFFSEM1RUJNQUN2QUFpeEFRR3dyN0F6S3dBQS8vOEFOUC8yQWdzQzdRSW1BRWdBQUFBSEM1RUJJQUFBLy8vL3hRQUFBVUFEclFJbUFDd0FBQUVIQzQ4QjJ3Q3ZBQWl4QVFLd3I3QXpLd0FBLy8vL213QUFBUllDL2dJbUNDb0FBQUFIQzQ4QnNRQUEvLzhBQ2dBQUFWY0RuQUltQUN3QUFBRUhDNUVBc1FDdkFBaXhBUUd3cjdBekt3QUEvLy8vNFFBQUFTNEM3UUltQ0NvQUFBQUhDNUVBaUFBQS8vOEFQUC8yQXRVRHJRSW1BRElBQUFFSEM0OENzZ0N2QUFpeEFnS3dyN0F6S3dBQS8vOEFOUC8yQWk0Qy9nSW1BRklBQUFBSEM0OENXZ0FBLy84QVBQLzJBdFVEbkFJbUFESUFBQUVIQzVFQmlRQ3ZBQWl4QWdHd3I3QXpLd0FBLy84QU5QLzJBaTRDN1FJbUFGSUFBQUFIQzVFQk1RQUEvLzhBVWdBQUFtOERyUUltQURVQUFBRUhDNDhDYUFDdkFBaXhBZ0t3cjdBekt3QUEvLzhBQndBQUFaZ0MvZ0ltQUZVQUFBQUhDNDhDSFFBQS8vOEFYd0FBQW04RG5BSW1BRFVBQUFFSEM1RUJQd0N2QUFpeEFnR3dyN0F6S3dBQS8vOEFUUUFBQVpvQzdRSW1BRlVBQUFBSEM1RUE5QUFBLy84QVdmLzJBb2tEclFJbUFEZ0FBQUVIQzQ4Q213Q3ZBQWl4QVFLd3I3QXpLd0FBLy84QVR2LzJBaU1DL2dJbUFGZ0FBQUFIQzQ4Q1pBQUEvLzhBV2YvMkFva0RuQUltQURnQUFBRUhDNUVCY2dDdkFBaXhBUUd3cjdBekt3QUEvLzhBVHYvMkFpTUM3UUltQUZnQUFBQUhDNUVCT3dBQUFBRUFKdjlNQWh3QzFBQXBBQ1ZBSWhnQkFBRUJTaUlYRFF3SkFRQUhBRWNBQUFBQlh3QUJBWW9BVEJ3YUZSTUNEUlFyRnpVK0F6VTBKaWNHQmdjblBnSTFOQ1lqSWdZSEp6WTJNeklXRmhVVUJnY2VBaFVVQmdZcmNwWlhKRGt3SlZBcUUxdDJPa004T21Fc01qbUFSVDVxUHpzeUlqa2paOXUwWWh3N1FVa3FPVU1ZRFJZS1VoY3JPU3N3TkI4ZFNTZ2pKVkZETjFBZEVUSklNMTJGWXdBQkFCdi9FQUhGQWlVQUpnQWxRQ0lXQVFBQkFVb2dGUXNLQndFQUJ3QkhBQUFBQVY4QUFRR05BRXdhR0JNUkFnMFVLeGMxTmpZMU5DWW5CZ1lISno0Q05UUW1JeUlHQnljMk5qTXlGaFlWRkFZSEZoWVZGQVlHRzZHZktDVWRReVVVVlYwa055NHJUQ1FpTEdBeU9WMDNMaWtzUEd6QThGc2laVkV2T1JRTUZBbE9GaXd6SUNzckZCSk5HUllqU2p3dlNSc1dUa0phZFVvQUFQLy9BRjhBQUFLTUE2MENKZ0FyQUFBQkJ3RkxBSmtBcndBSXNRRUJzSyt3TXlzQUFQLy8vOVFBQUFJbUE5c0NKZ0JMQUFBQkJ3RkwvNndBM1FBSXNRRUJzTjJ3TXlzQUFBQUJBRi8vRUFLU0F0VUFGQUJZdFJFQkF3SUJTa3V3R1ZCWVFCY0FBZ0lBWHdRRkFnQUFpa3NBQXdPRFN3QUJBWWNCVEJ0QUd3QUVCSUpMQUFJQ0FGOEZBUUFBaWtzQUF3T0RTd0FCQVljQlRGbEFFUUVBRUE4T0RRb0lCUVFBRkFFVUJnMFVLd0V5RmhVUkl4RTBKaU1pQmhVUkl4RXpGek0yTmdHZ2I0TnNTbEpvVjJ4VUVnUWlkZ0xWZW9iOU93SzZWMWgzYVA1bUFzdGNMemNBQUFBQUF3QTAvNWNEV1FMNEFDc0FPQUJEQUxaTHNCbFFXRUFSRXdFSEFrSWRCZ01HQ1NrREFnRUdBMG9iUUJFVEFRY0NRaDBHQXdZSktRTUNCUVlEU2xsTHNCbFFXRUFyQUFRQUNRWUVDV2NBQndjQ1h3QUNBbzFMQ3dnS0F3WUdBVjhGQVFFQmkwc0FBQUFEWFFBREE0UUFUQnRBTndBRUFBa0dCQWxuQUFjSEFsOEFBZ0tOU3dzSUNnTUdCZ1ZmQUFVRmcwc0xDQW9EQmdZQlh3QUJBWXRMQUFBQUExMEFBd09FQUV4WlFCazZPUzBzUUQ0NVF6cERORElzT0MwNEpTVVlKQ2dRREEwYUt3VW5OamNtSmljakJnWWpJaVkxTkRZek1oWVhNeTRDTlRVekVSUVhOallYRmhZVkZBWUdJeUluQmdZbE1qWTNOVFFtSXlJR0ZSUVdKVEkyTlRRbUl5SUdCeFlDUDFzSEVSSVNCQVVaVkU5bWVYaGlQVTRZQmdFRUEyb05JbDR4UDBNbVYwa29IZ1VIL3VST1B3RTlVa0ZDUWdHNU5Dd1pGeUl5RVJkcEJVNDdEUndMTHpTTGk0dU9MaUVHSUNRT3l2M2NNQjA1TFFFQlBDMGpPeVFHR0RpWFZsZ1FYMlJvWEZ0aUFSa1ZEQlFtSWdZQUFBQUNBRG4vOWdLREFzb0FIZ0FxQUR4QU9Sa0hBZ1VDQVVvQUFnQUZCQUlGWndNQkFRR0NTd2NCQkFRQVh3WUJBQUNMQUV3Z0h3RUFKaVFmS2lBcUZSUVJEd3dMQUI0QkhnZ05GQ3NGSWlZbU5UUTJOeVltTlRVekZSUVdNekkyTlRVekZSUUdCeFlXRlJRR0p6STJOVFFtSXlJR0ZSUVdBVnhZZzBoTFJ6czBiRWhOVDBkc05UdEZUNXVMWGxaV1hsNVZWZ283YjAxT1pSZ2FZa1JTVWtOVFUwTlNVa1ZpR2hkbFRuT0VYRkpKU1ZCUVNVbFNBQUFBQWdBeC8vWUNMUUw0QUI0QUtnQThRRGtaQndJRkFnRktBQUlBQlFRQ0JXY0RBUUVCaEVzSEFRUUVBRjhHQVFBQWl3Qk1JQjhCQUNZa0h5b2dLaFVVRVE4TUN3QWVBUjRJRFJRckJTSW1KalUwTmpjbUpqVTFNeFVVRmpNeU5qVTFNeFVVQmdjV0ZoVVVCaWN5TmpVMEppTWlCaFVVRmdFdFNYRkNRMEEwTDJvM1BUMDJhakEwUGtlTGMwcEhSMHRMUlVZS09uRlJVV2dZRTF0UGVIWk5SMGROZG5oUVdoUVlabEo1ZzFkWFQwNVdWazVQVndBQS8vOEFJdjh1QWh3Q3lnSW1BRDBBQUFBSEExOEJSd0FBLy84QUkvOHhBYmNDR3dJR0JYb0FBUC8vQUFBQUFBS05BNWNDSmdBa0FBQUJCd0ZPQU9RQXJ3QUlzUUlCc0srd015c0FBUC8vQUMzLzlnSHVBdWdDSmdCRUFBQUFCd0ZPQUwwQUFQLy9BRi8vRUFIeEFzb0NKZ0FvQUFBQUJ3QjZBTVVBQVAvL0FEVC9FQUlMQWlVQ0pnQklBQUFBQndCNkFNTUFBUC8vQUR6LzlnTFZBL2tDSmdBeUFBQUJCd2U0QVlrQXJ3QUlzUUlEc0srd015c0FBUC8vQURULzlnSXVBMG9DSmdCU0FBQUFCd2U0QVRFQUFQLy9BRHovOWdMVkEva0NKZ0F5QUFBQkJ3ZTVBWWtBcndBSXNRSUNzSyt3TXlzQUFQLy9BRFQvOWdJdUEwb0NKZ0JTQUFBQUJ3ZTVBVEVBQVAvL0FEei85Z0xWQTVjQ0pnQXlBQUFCQndGT0FTY0Fyd0FJc1FJQnNLK3dNeXNBQVAvL0FEVC85Z0l1QXVnQ0pnQlNBQUFBQndGT0FNOEFBUC8vQUR6LzlnTFZBKzhDSmdBeUFBQUFCd2U3QVlrQUFQLy9BRFQvOWdJdUEwb0NKZ0JTQUFBQUJ3ZTZBVEVBQVAvL0FBQUFBQUpIQTEwQ0pnQThBQUFCQndGTUFHSUFyd0FJc1FFQnNLK3dNeXNBQVAvL0FBSC9FQUlQQXE0Q0pnQmNBQUFBQmdGTVJnQUFBQUFDQUJELzRBR0dBdmdBRmdBaEFEbEFOZ2tCQkFFZkFRTUVGQUVDQWdNRFNnQUJBQVFEQVFSbkFBQUFoRXNGQVFNREFsOEFBZ0tMQWt3WUZ4NGNGeUVZSVNRaUZ3WU5GeXNYSnpZM0ppWTFFVE1STmpNeUZoVVVCaU1pSmljR0JqY3lOalUwSmlNaUJ4WVdWRVFpSkFJQmFoOG5RVUpJUlM1QkV3a1JueG9hSFJrZ0hRSWRJQ0JVTUJBbkZnSW4vZVVPUVRZM1J4NGFFQ2hLSEJVWUdCZ2hLQUFBQUFJQVUvL2dBdWtDSlFBbkFERUFuMHV3R1ZCWVFCWVNBUUFDR2dFSEJDOEJCZ2NsQVFFR0JFb0JBUUZIRzBBWEVnRUFBaG9CQndRdkFRWUhKUUVCQmdSS0FRRUJBVWxaUzdBWlVGaEFJQUFFQUFjR0JBZG5BQUFBQWw4REFRSUNoVXNJQVFZR0FWOEZBUUVCZ3dGTUcwQW9BQVFBQndZRUIyY0FBZ0tGU3dBQUFBTmZBQU1EalVzQUFRR0RTd2dCQmdZRlh3QUZCWXNGVEZsQUVTa29MaXdvTVNreEpDUWtFUk1wQ1EwYUt3VW5OalkzSmlZMU5UUWpJZ1lWRVNNUk14Y3pOall6TWhZVkZUWXpNaFlWRkFZaklpWW5CZ1kzTWpZMU5DTWlCeFlXQWJoRUVDUVRBd0ZzVVQxcVZBOEdHbG95WEdJZktFQkNTRVVzUWhRSkVKOGJHRFloSEFJZUlDQXBRaGtQSXhPSGZtSmMvdkFDRzBncUtGNW9nZzVGTlRsQ0hSb1JKa29jRlRBWUlTZ0FBQUFDQUJMLzRBR1FBcFFBSEFBbkFFdEFTQWtCQUFJUkFRY0VKUUVHQnhzQkFnVUdCRW9BQVFJQmd3QUVBQWNHQkFkbkF3RUFBQUpkQUFJQ2hVc0lBUVlHQldBQUJRV0xCVXdlSFNRaUhTY2VKeVFpRVJFVEZ3a05HaXNYSnpZM0ppWTFOU00xTnpjekZUTVZJeFUyTXpJV0ZSUUdJeUluQmpjeU5qVTBKaU1pQnhZV1hrUWlKQUlCUzA4bFFacWFIeWRBUTBsRVdpa1NtQnNaSFJrZ0hRRWVJQ0JVTUJFb0Z2Y3dLSEo1VWUwT1JUVTVRamNnTXh3VkdCZ1lJU2dBQUFBREFEVC85Z09WQXZnQUlRQXRBRGNBVUVCTkV3a0NCZ0VmQVFVR0Frb0FBZ0tFU3dnQkJnWUJYd01CQVFHTlN3c0hDZ01GQlFCZkJBa0NBQUNMQUV3dkxpTWlBUUF6TVM0M0x6Y3BKeUl0SXkwZUhCZ1dEdzRIQlFBaEFTRU1EUlFyQlNJbU5UUTJNeklXRnpNbUpqVTFNeFVVQmdjek5qWXpNaFlWRkFZaklpY0dCaWN5TmpVMEppTWlCaFVVRmlFeU5UUWpJZ1lWRkJZQkpYR0FlR0U5VGhjR0FRVnFBd0lGRjA0K1luZUVjSVU1SFdJN1EwUTlVRUJDUXdHOWg0Vk5QVUlLakl1S2ppNGlFRGdpdWJjaE9oSWlMb3lMaTR4ek96aFhaVjVmWDJoYlhXSEJ3RnhpWW1FQUFBTUFOUDhRQTVVQ0pRQWhBQ3NBTndCUVFFMGZBUVlGRXdrQ0FRWUNTZ3NIQ2dNRkJRQmZCQWtDQUFDTlN3Z0JCZ1lCWHdNQkFRR0xTd0FDQW9jQ1RDMHNJeUlCQURNeExEY3ROeWNsSWlzakt4NGNHQllQRGdjRkFDRUJJUXdORkNzQk1oWVZGQVlqSWlZbkl4WVdGUlVqTlRRMk55TUdCaU1pSmpVME5qTXlGelkyQlNJVkZETXlOalUwSmlFaUJoVVVGak15TmpVMEpnS2tjSUYzWWo1TkdBWUNCR29FQWdZV1R6MWhlSVJ2aFRvY1l2N0VoNFJPUEVFQk1rUkRQVkJBUWtNQ0pZdU1pbzR1SWhBNElzektJVG9TSWk2TWlvdU5jem81VjhIQVhXRmhZbVZlWDE5blhGMWhBQUFBQUFNQUFQKzFBbzBDK0FBUEFCZ0FHd0JHUUVNYUZSSU9Dd1VIQkFGS0FBRURBWVFLQ0FJSEFnRUFBd2NBWmdBRkJZUkxBQVFFZ2tzSkJnSURBNE1EVEJrWkFBQVpHeGtiRVJBQUR3QVBFaEVSRVJFUkN3MGFLeUVuSXdNakV5TUhJd0V6RnpjekJ4TUJNemNtSmljR0JnY1hKd2NDSEV5UVlreGlPRXh3QVE5d0ZDRk1SdFArVHpoT0J4RUVDQlFHamlvb3p2N25BUm5PQXMwMVlNbjkwUUVzNFJZM0VSOUdFY2wwZEFBQ0FEei90UUpaQXZnQUlBQXBBRXhBU1I4REFRTUZBeWNOQ0FRRUFBVVdFdzREQVFBRFNnQUNBUUtFQmdFRUJJUkxCd0VGQlFOZkFBTURpa3NBQUFBQlh3QUJBWXNCVENJaEFBQWhLU0lwQUNBQUlDY1NKU2tJRFJnckFRY1dGd2NtSmljREZqTXlOamNWQmdZaklpY0hJemNtSmpVME5qWXpNaGMzQnlJR0ZSUVdGeE1tQWpJVUlCc29EQmtPdENBbExsVXNLbGc2THlrYVRDSldWRStZYmlRakRsWnFlUzB1c0JRQytEa0tEVm9GQ3dYOStBZ1JEbDBRRHdsS1lTaXVlV3lsWGdVcGdaT0FVWGNpQWZvREFBQUFBQUlBTlA4d0Fld0MrQUFnQUNZQVNVQkdFeEVDQlFJakhSZ1VCQVFGSGdVQ0FBUURTZ0FCQUFHRUFBTURoRXNBQlFVQ1h3QUNBbzFMQUFRRUFGOEdBUUFBaXdCTUFRQW1KQnNaRUE4T0N3UURBQ0FCSUFjTkZDc0ZJaWNISXpjbUpqVTBOall6TWhjM013Y1dGd2NtSmljREZqTXlOamNWQmdZREZCY1RJeUlCTENza1NreFVNRGRDZEVvUkVFeExVQm9VSUFzWERJQVhIQ3hHSFIxRXZDQjBBcElLQ2Mvc0gzWlpaSHc3QWRUaEJ3cFdCQWdEL3BnSUZCQmNFUkFCRlZjdkFVWUFBQUFBQVFBT0FBQUIvQUxLQUEwQUxVQXFBd0VCQkFFQUJRRUFaUUFDQW9KTEFBVUZCbDRIQVFZR2d3Wk1BQUFBRFFBTkVSRVJFUkVSQ0EwYUt6TVJJelV6RVRNUk14VWpGU0VWWDFGUmJKcWFBVEVCUUZjQk0vN05WK05kQUFBQ0FBMy90UUlsQXZnQUVBQVRBRHBBTnhJUUJRSUVBQUlCU2dBQkFBR0VBQVFFaEVzSUJ3WURBZ0lEWFFVQkF3T0NTd0FBQUlNQVRCRVJFUk1SRXhFUkVSRVNFaEFKRFJzcklTTTFCeU1URVNNMUlUY3pCek1WSXdNUkZUY0JUMnhiU2FUV0FhOFdTUllnVFlsQWNyMEJWQUZrWFM0dVhmN2tBUnlFaEFBQUFBRUFNZjhRQWJrQ0pRQTZBRTFBU2g0QkF3SWZDZ0lCQXdrQkJBRTNBUVVFT0FFQUJRVktBQU1EQWw4QUFnS05Td0FCQVFSZkFBUUVpMHNBQlFVQVh3WUJBQUNIQUV3QkFEVXpMeTRqSVJ3YURnd0FPZ0U2QncwVUt3VWlKaVluSmlZbkppYzFGaFl6TWpZMU5DWW1KeTRDTlRRMk16SVdGd2NtSmlNaUZSUVdGaGNlQWhVVUJnY1dGeFlXTXpJMk54VUdCZ0ZqTjBZckR3b2tJQmdVSTE4dFBEVVVOelUwUnlaeFhURlhLU01qU2laaUZ6a3pNVWNtYVdBU0N3NHhKaEVuRFEwdjhDTkZOQ1VxQ3djTFhCRWJKaUFTSFI4VUZDbzZMRVpMRkJKUkR4VTVFeHdjRkJNcE9peE1VZ01jSkNzbEJ3VlZCZ2dBQVFBai94QUIxQUliQUJzQVFrQS9EZ0VDQXc4SkFnRUNHQUVFQVJrQkFBUUVTZ0FDQWdOZEFBTURoVXNBQVFHRFN3QUVCQUJmQlFFQUFJY0FUQUVBRmhRTkRBc0tDQVlBR3dFYkJnMFVLd1VpSmlZbkppWWpJelVCSVRVaEZRRVdGaGNXRmpNeU5qY1ZCZ1lCaFQxTkxBNE5NRGNxQVJiKyt3RjcvdXc2UFJBUE5DMFVIdzhPS1BBbFJqRXJLVU1CaGxKTC9uNExURGd2S1FVRlZRVUhBQUVBQWdBQUFha0MxQUFWQUMxQUtoTUJBZ0FTQ1FZREFRSUNTZ0FDQWdCZkF3RUFBSXBMQUFFQmd3Rk1BUUFRRGdnSEFCVUJGUVFORkNzVE1oWVZGQVlIRVNNUk5qWTFOQ1lqSWdZSEp6WTJ5R2w0WFdWclgxNDhQQ1pXSENjb1pnTFVhMWxPaGkvKzh3RkRIMncrTVR3ZEZGTVpJQUFBQUFFQUNRQUFBYUFDSlFBVkFDMUFLaE1CQWdBU0NRWURBUUlDU2dBQ0FnQmZBd0VBQUkxTEFBRUJnd0ZNQVFBUURnZ0hBQlVCRlFRTkZDc1RNaFlWRkFZSEZTTTFOalkxTkNZaklnWUhKelkyeUdsdlZtUnFYMWs3T1NaT0hDY29Yd0lsYTFsSmh6QmhsQjlyUHpZN0hSUk9HaUFBQXdBT0FBQUNXd0xLQUJRQUhRQXFBRWxBUmd3QkJ3UUJTZ0FFQUFjQkJBZGxDQUVCQ1FFQUJnRUFaUUFGQlFKZEFBSUNna3NBQmdZRFhRb0JBd09EQTB3QUFDb3BLQ2NtSkNBZUhSc1hGUUFVQUJNaEVSRUxEUmNyTXpVak5UTVJNeklXRlJRR0J4VWVBaFVVQmlNRE16STJOVFFtSXlNUk16STJOVFFtSXlNVk14VWpYMUZSMFlpTlF6NHFSU2lJZEpSM1ZEOU5VbXVEVmtWSFczeUtpcXRUQWN4UVlqNVVDd1VJSlVVNFltb0JvRFkxTlMvOTYwUTRNejlLVXdBQUFnQUgvL1lDMndMS0FCVUFIUUExUURJRUFnSUFDUW9IQXdVSUFBVmxBd0VCQVlKTEFBZ0lCbDhBQmdhTEJrd0FBQjBjR1JjQUZRQVZKQkVSRVJFUkVRc05HeXNUTlRNUk14RWhFVE1STXhVakZSUUdCaU1pSmpVMUZ4UXpNalkxTlNFSFVtd0JXV3RTVWoxK1lJaU5iSzVhVWY2bkFWdGNBUlArN1FFVC91MWNYMHAzUlpGM1hWaXhZRkpYQUFELy93QUFBQUFDYkFMS0FnWUJhQUFBQUFNQVgvKzFBZkVDK0FBVEFCY0FHd0JHUUVNS0FRY05BUWdKQndobEFBRUpBVkVBQkFTRVN3c0JCZ1lEWFFVQkF3T0NTd3dCQ1FrQVhRSUJBQUNEQUV3Ykdoa1lGeFlWRkJNU0VSRVJFUkVSRVJFUURnMGRLeUVqQnlNM0l4RWhOek1ITXhVakJ6TVZJd2N6QVRNM0l4RXpOeU1COGVBVFNoTm9BUjBNU2d3clFqUmtlenZJL3RwbU5Kb1VPMDlMU3dMS0xpNWN6RnZxQVVYTS9lL3FBQUFFQURUL01BSUxBdmdBSHdBbUFDc0FMd0J0UUdvRkFRWUFLZ0VIQmk0UUN3TURBaGtXRVFNRUF3UktBQVVFQllRTUNBSUhEUWtDQWdNSEFtWUFBUUdFU3dzQkJnWUFYd29CQUFDTlN3QURBd1JmQUFRRWl3Uk1MQ3duSnlFZ0FRQXNMeXd2Snlzbkt5UWpJQ1loSlJnWEZSTU9EQW9KQkFNQUh3RWZEZzBVS3dFeUZ6Y3pCeFlXRlJVakJ4WXpNalkzRlFZR0l5SW5CeU0zSmlZMU5EWTJGeUlHQnpNM0poYzBKaWNIQnhZWE53RW5GeFZLVEZJM1BkUTNIU1EwVVNzcFVqa3hLVWxNVXpNNlBXMUpPVVVHWXpFSGNSUVVKN0VDSUNnQ0pRUFc3Qnh4VGpxaENoTVRXQk1SRE5MdklYWlRXMzVEVWtwRWpRR09KRG9UY1U1SkszUUFBQUgvcy84OEFSc0N5Z0FZQURwQU53UUJBUUlEQVFBQkFrb0ZBUU1HQVFJQkF3SmxBQUVIQVFBQkFHTUFCQVNDQkV3QkFCVVVFeElSRUE4T0RRd0lCZ0FZQVJnSURSUXJGeUltSnpVV0ZqTXlOalkxRVNNMU14RXpFVE1WSXhFVUJnSWFKdzRRSkJRWkxCdFVWR3hVVkczRUJ3WmFCQVlVTXpBQkpGd0JPdjdHWFA3aGNXZ0FBQUFDLzhiL0VBRUpBdWdBQ3dBakFFbEFSaEFCQXdRUEFRSURBa29IQVFVSUFRUURCUVJsQUFFQkFGOEFBQUNFU3dBR0JvVkxBQU1EQW1BSkFRSUNod0pNRFF3Z0h4NGRIQnNhR1JnWEZCSU1JdzBqSkNJS0RSWXJFelEyTXpJV0ZSUUdJeUltQXlJbUp6VVdGak15TmpVUkl6VXpOVE1WTXhVakVSUUdUQ1FaR0NRa0dCa2tNaG9yRHhBZ0ZDQXBURXhxVEV4TkFxc2hIQndoSUIwZC9JVUhCVlVGQlNNeEFUaE8ydHBPL3NOTFd3QUFBQUFDQUR6L0VBTU9BdFFBSXdBeUFJQkFEeGdEQWdZRkRRRUNCQTRCQXdJRFNrdXdHVkJZUUNJSUFRVUZBRjhCQndJQUFJcExBQVlHQkY4QUJBU0xTd0FDQWdOZkFBTURod05NRzBBbUFBRUJna3NJQVFVRkFGOEhBUUFBaWtzQUJnWUVYd0FFQkl0TEFBSUNBMThBQXdPSEEweFpRQmtsSkFFQUt5a2tNaVV5SFJzU0VBc0pCZ1VBSXdFakNRMFVLd0V5Rmhjek56TVJGQll6TWpZM0ZRWUdJeUltTlRVME5qY2pCZ1lqSWlZbU5UUTJOaGNpQmhVVUZqTXlOalkxTlRRbUpnRmlTVzBjQkE5YklCd09HQW9MSWhSSFVBSUJCaDFxVGxxQ1JrYUVaMXBtWmx0T1Z5TWpWd0xVTml0WC9Pd3FJUVVGVndZSVRWWlNGeWdXTFRkWnBYSnlwRmhja29LRGp6WmlSSFpBWHpVQUFBQUNBRFQvRUFKL0FpVUFJQUF0QUo1THNCbFFXRUFTQXdFRkFCY0JCQVlOQVFJRURnRURBZ1JLRzBBU0F3RUZBUmNCQkFZTkFRSUVEZ0VEQWdSS1dVdXdHVkJZUUNJSUFRVUZBRjhCQndJQUFJMUxBQVlHQkY4QUJBU0xTd0FDQWdOZ0FBTURod05NRzBBbUFBRUJoVXNJQVFVRkFGOEhBUUFBalVzQUJnWUVYd0FFQkl0TEFBSUNBMkFBQXdPSEEweFpRQmtpSVFFQUtDWWhMU0l0SEJvUkR3c0pCZ1VBSUFFZ0NRMFVLd0V5Rmhjek56TVJGQll6TWpZM0ZRWWpJaVkxTlRRMk55TUdCaU1pSmpVME5oY2lCaFVVRmpNeU5qYzFOQ1lCRGo1T0dBUU5WaG9aRUJvSkdEUTlSd01EQmhkUFBtQjNlWGRDUVVGRVRFQUJQZ0lsTHlOSS9hQXhKQVlGVVJCTlhUWVVNUk1pTUl5S2k0NVhhRnhiWTFWWUVtQmpBQUFBQWdBS0FBQUNid0xLQUJJQUd3QkJRRDRIQVFJRkFVb0hBUVVFQVFJQkJRSmxDUUVHQmdCZENBRUFBSUpMQXdFQkFZTUJUQlFUQVFBWEZSTWJGQnNSRUE4T0RRd0xDZ2tJQUJJQkVnb05GQ3NCTWhZVkZBWUdCeE1qQXlNUkl4RWpOVE1SRnlNVk16STJOVFFtQVNlSmd5aEJJOGg4ckh4c1ZWWEJWVnBUVEZBQ3ltWm9OMHN3RGY3REFTSCszd0VoV2dGUFhQTS9Qa0EyQUFBQUFRQUhBQUFCbUFJbEFCY0FlMHV3R1ZCWVFBc1NDd0lEQmdGS0VRRUVTQnRBQ3hFQkJBVVNDd0lEQmdKS1dVdXdHVkJZUUJ3SUJ3SURBZ0VBQVFNQVpRQUdCZ1JmQlFFRUJJVkxBQUVCZ3dGTUcwQWdDQWNDQXdJQkFBRURBR1VBQkFTRlN3QUdCZ1ZmQUFVRmpVc0FBUUdEQVV4WlFCQUFBQUFYQUJjakpCRVJFUkVSQ1EwYkt3RVZJeFVqTlNNMU16VXpGek0yTmpNeUZ3Y21JeUlHQndFMmVXcE1URlFPQkJsVU55QWJDeG9jTmxZTEFUOVA4UEJQM0dBclB3VmpCMFkvQUFJQUFBQUFBa2NDeWdBUkFCUUFOVUF5QmdNQ0FRQUJTZ2tIQlFNRENBSUNBQUVEQUdZR0FRUUVna3NBQVFHREFVd0FBQlFUQUJFQUVSRVJFUkVTRWhFS0RSc3JBUlVqQnhFakVTY2pOVE1uTXhjek56TUhCemNqQWtCbmdHdUJaamxBZFQ3aVBuUkE0MFdLQWxSVTYvN3JBUkh2VkhaMmRuYlloQUFDQUFIL0VBSVBBaHNBSEFBbUFEbEFOaGdSQWdZRUVBRUZCZ0pLQ0FNQ0FRa0hBZ1FHQVFSbUFnRUFBSVZMQUFZR0JWOEFCUVdIQlV3akloRVVKU01SRVJFUkVBb05IU3NUTXhjek56TUhNeFVqQXdZR0l5SW1KelVXRmpNeU5qYzNBeU0xTXhNek5qWTNOeU1YRmhZQmNqK3ZQSEpCTjFXSUhXRk9HU1FOQ2lBUkxqZ1FGbk5jUE1JRUJSVU5FM2NVRFJRQ0c2eXNyRS8rbDA1WkJRTlVBZ1ExS3pvQklFLys5eHBHSkRZM0kwQUFBUC8vQUZELzlnSVJBaVVCRHdCRUFqNENHOEFBQUFteEFBSzRBaHV3TXlzQUFBSUFOUC8yQWhrQ0pRQVNBQjhBZmt1d0dWQllRQW9KQVFVQkR3RUFCQUpLRzBBS0NRRUZBZzhCQXdRQ1NsbExzQmxRV0VBWkFBVUZBVjhDQVFFQmpVc0hBUVFFQUY4REJnSUFBSXNBVEJ0QUlRQUNBb1ZMQUFVRkFWOEFBUUdOU3dBREE0TkxCd0VFQkFCZkJnRUFBSXNBVEZsQUZ4UVRBUUFiR1JNZkZCOE9EUXdMQndVQUVnRVNDQTBVS3dVaUpqVTBOak15Rmhjek56TVJJeWNqQmdZbk1qWTFOVFFtSXlJR0ZSUVdBUXhpZG5oaVBVNFlCQTVXVXhJRkYwNGxUa0E5VWtGQ1FncU1pb3VPTGlGRi9lVklJakJXVjFnUVgyUm9YRnhpQUFELy93QlQvL1lDT0FJbEFROEVJUUpzQWh2QUFBQUpzUUFDdUFJYnNETXJBQUFDQUZQLzlnSTRBdjBBSVFBc0FNdExzQmxRV0VBU0F3RUJBQVFCQWdFT0FRVUNHd0VEQmdSS0cwQVNBd0VCQUFRQkFnRU9BUVVDR3dFRUJnUktXVXV3R1ZCWVFDSUFBUUVBWHdjQkFBQ0VTd2dCQlFVQ1h3QUNBbzFMQUFZR0ExOEVBUU1EaXdOTUcwdXdKbEJZUUNZQUFRRUFYd2NCQUFDRVN3Z0JCUVVDWHdBQ0FvMUxBQVFFZzBzQUJnWURYd0FEQTRzRFRCdEFKQWNCQUFBQkFnQUJad2dCQlFVQ1h3QUNBbzFMQUFRRWcwc0FCZ1lEWHdBREE0c0RURmxaUUJraklnRUFLU2NpTENNc0hoMFpGeE1SQ0FZQUlRRWhDUTBVS3hNeUZoY1ZKaVlqSWdZSEZSUUdCek0yTmpNeUZoVVVCaU1pSmljakJ5TVJORFlUSWdZSEZCWXpNalkxTk53VkpRc0hIQkVYR0FFREFnVVhUajVoZDNoaFBrMFhDQlJPUnE1TlBBRTdVVUZCQXYwSkJWVURCeG9mS2g4NkZDSXVqSXFMalMwZlFnSm9URW4rMFZ4Z1lXUmtYcjhBQUFBQkFDRC85Z0cyQWlVQUdnQTNRRFFZQVFNQUZ3d0NBZ01MQVFFQ0Ewb0FBd01BWHdRQkFBQ05Td0FDQWdGZkFBRUJpd0ZNQVFBVkV4QU9DUWNBR2dFYUJRMFVLeE15RmhZVkZBWUdJeUltSnpVV0ZqTXlOalUwSXlJR0J5YzJOc0pLYlQxQ2Mwb3ZReDBlUkN0SlM1TWNRQm9nRzFZQ0pUaDVYMkovUGhBUlhCQVVaVjY2RHcxV0RSSUFBQUlBTVAvT0FmRUNKUUFrQUM0QVZVQlNBd0VCQUFRQkFnRU1BUVFDSng4Q0JRUVlBUU1GQlVvY0d3SURSd0FDQndFRUJRSUVad0FCQVFCZkJnRUFBSTFMQUFVRkExOEFBd09MQTB3bUpRRUFLaWdsTGlZdUZ4VVFEZ2dHQUNRQkpBZ05GQ3NCTWhZWEJ5WW1JeUlWRkJZWE5qWXpNaFlWRkFZR0l5SW5CZ1lISnpZMk55WTFORFkyRXlJSEZqTXlOalUwSmdFOUxrMGFJUm8vSFpVRUJDTldMMGxTTmxNdVpEMEtFZ2hGQ2hvUEtrTjFYa2czSlVnbk15RUNKUk1NVmdvUndCUW1FU0lsUmprMFFCNHRFeWtaSHg4NEdVTnFaSHc3L3BWRExTSWNGQjRBQUFJQU5QOFFBb29DK0FBa0FERUFWRUJSRkFFR0FnY0JBUVVpQVFRQkl3RUFCQVJLQUFNRGhFc0FCZ1lDWHdBQ0FvMUxDQUVGQlFGZkFBRUJpMHNBQkFRQVh3Y0JBQUNIQUV3bUpRRUFMU3NsTVNZeElCNGJHaElRREFvQUpBRWtDUTBVS3dVaUpqVTFORFkzSXdZR0l5SW1OVFEyTXpJV0Z6TXVBalUxTXhFVUZqTXlOamNWQmdFeU5qYzFOQ1lqSWdZVkZCWUNPVDlMQlFFR0YwNDlZWGg0WWoxT0dBWUJCQU5xSFJzU0hRb2EvclZPUHdFOVVrRkNRdkJOWFRjVE1oQWlMb3lLaTQ0dUlRWWdKQTdLL01NeEpBWUZVUkFCUFZaWUVGOWthRnhiWWdBQUFBSUFOUC8yQW44Qy9nQWhBQzRBeTB1d0dWQllRQklVQVFNQ0ZRRUJBd2tCQmdFZUFRQUZCRW9iUUJJVUFRTUNGUUVCQXdrQkJnRWVBUVFGQkVwWlM3QVpVRmhBSWdBREF3SmZBQUlDaEVzQUJnWUJYd0FCQVkxTENBRUZCUUJmQkFjQ0FBQ0xBRXdiUzdBa1VGaEFKZ0FEQXdKZkFBSUNoRXNBQmdZQlh3QUJBWTFMQUFRRWcwc0lBUVVGQUY4SEFRQUFpd0JNRzBBa0FBSUFBd0VDQTJjQUJnWUJYd0FCQVkxTEFBUUVnMHNJQVFVRkFGOEhBUUFBaXdCTVdWbEFHU01pQVFBcUtDSXVJeTRkSEJrWEVoQUhCUUFoQVNFSkRSUXJCU0ltTlRRMk16SVdGek11QWpVMU5ETXlGaGNWSmlZaklnWVZFU01uSXdZR0p6STJOelUwSmlNaUJoVVVGZ0VNWW5aNFlqMU9HQVlCQkFPSkZpWUxCeDBSRmh0VEVnVVhUaVZPUHdFOVVrRkNRZ3FNaW91T0xpRUdIeVVPT3BZS0JGVURCeHNnL1paSUlqQlhWbGdRWDJSb1hGdGkvLzhBTWYvMkFnZ0NKUUJIQUVnQ1BBQUF3QUJBQUFBQUFBSUFNZi8yQWdnQ0pRQVdBQjBBUGtBN0ZBRURBQk1CQWdNQ1NnQUNBQVFGQWdSbEFBTURBRjhHQVFBQWpVc0FCUVVCWHdBQkFZc0JUQUVBSEJvWUZ4RVBEUXdKQndBV0FSWUhEUlFyRXpJV0ZoVVVCZ1lqSWlZMU5TRW1KaU1pQmdjMU5qWVRJeFlXTXpJMi8wOTNRejF0U1dwNkFXb0NVMHMwVVNzcFV0UCtBVHMrT1VVQ0pUNTdXMXAvUW9Sd09sSlpFeE5ZRXhIK3NUOVBTZ0FBQVAvL0FDci85Z0hWQWlVQ0JnR0JBQUFBQWdBMC8vWUNOZ0lsQUJNQUp3QS9RRHdHQVFRRkFVb0FCUUFFQXdVRVp3Y0JBZ0lBWHdZQkFBQ05Td0FEQXdGZkFBRUJpd0ZNRlJRQkFDTWhJQjRhR0JRbkZTY1BEUUFUQVJNSURSUXJBVElXRlJRR0J4VWVBaFVVQmlNaUpqVTBOaGNpRlJRV016STJOVFFtSXlNMU16STJOVFFtQVU5bmJ6Z3dIemNqZkhhQ2pwYURyRmxTT1VsSVN5UVpSa3c0QWlWUFJUTTJEUVFGR3pNblIyQ1NoWVNVVmNObld5c3NLQ0pSSHl3Z0tBQUIvOGIvRUFFSkFoc0FGd0E5UURvRUFRRUNBd0VBQVFKS0JRRURCZ0VDQVFNQ1pRQUVCSVZMQUFFQkFHQUhBUUFBaHdCTUFRQVVFeElSRUE4T0RRd0xDQVlBRndFWENBMFVLeGNpSmljMUZoWXpNalkxRVNNMU16VXpGVE1WSXhFVUJob2FLdzhRSUJRZ0tVeE1ha3hNVGZBSEJWVUZCU014QVRoTzJ0cE8vc05MV3dBQ0FEUC9FQUovQXY0QUx3QThBSlZBRmdNQkFRQUVBUVVCS1FFR0JSSUJBd1FSQVFJREJVcExzQ1JRV0VBckFBRUJBRjhJQVFBQWhFc0pBUVlHQlY4QUJRV05Td0FIQndSZkFBUUVpMHNBQXdNQ1h3QUNBb2NDVEJ0QUtRZ0JBQUFCQlFBQlp3a0JCZ1lGWHdBRkJZMUxBQWNIQkY4QUJBU0xTd0FEQXdKZkFBSUNod0pNV1VBYk1UQUJBRGMxTUR3eFBDZ21JaUFXRkE4TkNBWUFMd0V2Q2cwVUt3RXlGaGNWSmlZaklnWVZFUlFHSXlJbUp6VVdGak15TmpVMU5EWTJOU01HQmlNaUpqVTBOak15RnpNbUpqVTFOQU1pQmhVVUZqTXlOalUxTkNZQ09CWW1Dd2NkRVJZYmUzODdZQ2twYURsQ1NBRUNBeHhTTldaemMyWnNPUVlDQm93L1JFTkNTVVZHQXY0S0JGVURCeHNnL1k5emRoQVJYUlVWUzBRU0NSd1pCQ29uazRPQ2wxRVVOQlkybHY3UFkxOWVZbEZjRkdoWkFBQUEvLzhBTlA4UUFoa0NKUUlHQUVvQUFBQUJBRFQvOWdJQkFpVUFIZ0JHUUVNREFRRUFCQUVFQVJBQkFnTVZBUVVDQkVvQUJBQURBZ1FEWlFBQkFRQmZCZ0VBQUkxTEFBSUNCVjhBQlFXTEJVd0JBQmtYRkJNU0VRNE1DQVlBSGdFZUJ3MFVLd0V5RmhjSEppWWpJZ1lWRkJZek1qWTNOU00xTXhFR0JpTWlKalUwTmpZQlNEVlhKU1FmUmlKU1cwbExIeXdaY05ndlpUeDFpRVo5QWlVU0ZGY1FFMTlnV21NR0JvTlAvdkFTRll1TFhYMC9BQUlBQVA4UkFnNENHd0FZQUNRQU1rQXZIeE1NQmdRREFRRktBZ0VCQVlWTEJRRURBd0JmQkFFQUFJY0FUQm9aQVFBWkpCb2tFaEVJQndBWUFSZ0dEUlFyQlNJbU5UUTJOd016RnhZV0Z6TTJOamMzTXdNV0ZoVVVCaWN5TmpVMEppY0dCaFVVRmdFRk9VSWxHOHB3WlF3ZEJnUUhIUTFsY000ZUlrTTREeFVTRWhNUkZlOUtPREZmTlFIRDdoMVBIaDFQSHU3K09qdGRLamRMVGhrY0ZVRWdJRUFVSFJvQUFBTC8vdi8yQWc4Q0pRQXZBRHNBUEVBNUhnSUNBUUFvRmdvREJBVUJBa29EQVFFQkFGOEVCZ0lBQUkxTEFBVUZBbDhBQWdLTEFrd0JBRGMxSWlBYUdSRVBCd1VBTHdFdkJ3MFVLd0V5RnhVbUppTWlCZ2NIRmhZVkZBWWpJaVkxTkRZM0p5WW1KeVlHQnpVMk5qTXlGaGNYRmhZWE16WTJOemMyTmdNR0JoVVVGak15TmpVMEpnSGNIUllHRVFjUkhCWnRJU0JET1RoQ0h4OXZFeHdSQ0E4R0Noc1BJakFiTmcwWkNnUUtHZzAyRnpDd0VSTVVFQkFVRmdJbENsRUNBeFFma3kxRUt6VkNRallzUkNxWEdSWUJBUVFDVUFRSElTVktFaWNTRUNvUlN5RWsvcVFYS2hZV0dCZ1dHQ3dBLy84QVVQOGpBaU1DR3dFUEFFc0NkZ0lid0FBQUNiRUFBYmdDRzdBekt3QUFBUUJUQUFBQ0pnTDlBQ0lBWWtBT0J3RUJBQWdCQWdFU0FRUUNBMHBMc0NaUVdFQWNBQUVCQUY4QUFBQ0VTd0FFQkFKZkFBSUNqVXNHQlFJREE0TURUQnRBR2dBQUFBRUNBQUZuQUFRRUFsOEFBZ0tOU3dZRkFnTURnd05NV1VBT0FBQUFJZ0FpSWhNcEpTTUhEUmtyTXhFME5qTXlGaGNWSmlZaklnWVZGUlFHQnpNMk5qTXlGaFVSSXhFMEl5SUdGUkZUUjBNVUpRc0hIQkVYR1FRQ0J4cFhNMTlsYVc5VFBnSm9URWtKQlZVREJ4b2ZTQmd2RFNrcFhXaitwQUZOZm1OYy92UUFBQUFCQUZQL0VBSW1BdjBBTGdDRFFCWURBUUVBQkFFQ0FRNEJCUUlkQVFRR0hBRURCQVZLUzdBbVVGaEFKUUFCQVFCZkJ3RUFBSVJMQUFVRkFsOEFBZ0tOU3dBR0JvTkxBQVFFQTE4QUF3T0hBMHdiUUNNSEFRQUFBUUlBQVdjQUJRVUNYd0FDQW8xTEFBWUdnMHNBQkFRRFh3QURBNGNEVEZsQUZRRUFLeW9uSlNFZkdoZ1RFUWdHQUM0QkxnZ05GQ3NUTWhZWEZTWW1JeUlHRlJVVUJnY3pOall6TWhZVkVSUUdJeUltSnpVV0ZqTXlOalVSTkNNaUJoVVJJeEUwTnQwVUpRc0hIQkVYR1FRQ0J4cFdOVjlrUWtjVUtBMEtIQkFYSEc5VFBtcEhBdjBKQlZVREJ4b2ZSUmt0RGlrcFhtZitTVVpTQ0FWV0JBWWNKUUdwZTJSYi92RUNhRXhKQUFBQ0FBY0FBQUVKQXVnQUN3QVhBRDlBUEFrSEFnVUVBUUlEQlFKbEFBRUJBRjhJQVFBQWhFc0FCZ2FGU3dBREE0TURUQXdNQVFBTUZ3d1hGaFVVRXhJUkVBOE9EUWNGQUFzQkN3b05GQ3NUTWhZVkZBWWpJaVkxTkRZVEZTTVZJelVqTlRNMU14V0pHQ1FrR0Jra0pKbE1ha3hNYWdMb0hDRWdIUjBnSVJ6K1dVN3o4MDdhMmdELy93QlIvL1lCV1FJYkFnWUJoUUFBQUFFQUh3QUFBUzBDR3dBTEFDWkFJd29KQ0FjRUF3SUJDQUFCQVVvQ0FRRUJoVXNBQUFDREFFd0FBQUFMQUFzVkF3MFZLd0VWQnhFWEZTRTFOeEVuTlFFdFVsTCs4bEpTQWhzNkdmNktHRG82R0FGMkdUb0FBQUFCQUFRQUFBR0hBdmdBSHdBN1FEZ1JBUVFDQVFFQkFBSktCUUVDQUFBQkFnQm5BQVFHQVFFSEJBRm5BQU1EaEVzSUFRY0hnd2RNQUFBQUh3QWZFaElqRkJJU0l3a05HeXN6RVNZbUl5SUdCeU0yTmpNeUZoY1JNeEVXRmpNeU5qY3pCZ1lqSWlZbkVaQUlFQWNYRndZNUJEMHhCdzBHYWdnUUNCWVlCemdGT3pFSERnY0Jhd01FSEJ4QVJ3TUJBVHYrbVFNRkhSdy9TQU1CL3NFQUFBQUFBdi8yQUFBQlp3TDRBQkVBSEFBK1FEc0tBUWNCQVVvQUFRQUhBd0VIWndrR0FnTUVBUUFGQXdCbkFBSUNoRXNJQVFVRmd3Vk1FeElBQUJnV0Vod1RIQUFSQUJFUkVSSWtJUW9OR1NzekVTTWlKalUwTmpNeUZ4RXpFVE1WSXhFRE16VTBKaU1pQmhVVUZwY29RRGt6T2g4VmFtWm1qQ0lVRnhNUUdRRW9PeTRyUHhJQkQvNTVTZjdZQVhFTUdCMFREUklQQUFFQVUvOFFBVUlDK0FBTkFDdEFLQXNCQWdFTUFRQUNBa29BQVFHRVN3QUNBZ0JmQXdFQUFJY0FUQUVBQ1FjRkJBQU5BUTBFRFJRckZ5SW1OUkV6RVJRek1qWTNGUWJ2U1ZOcFJoRWlEU0R3VFYwRFB2ekRWUVlGVVJBQUFRQlQveEFDakFMNEFCOEFVMEJRR0FFREJoa1BBZ0lEQkFFQkJBTUJBQUVFU2dBQ0F3UURBZ1IrQUFVRmhFc0FBd01HWFFBR0JvVkxBQVFFZzBzQUFRRUFYd2NCQUFDSEFFd0JBQmNXRlJRVEVoRVFEZ3dJQmdBZkFSOElEUlFyQlNJbUp6VVdGak15TmpVMEppTWpOVGNoRVNNUk14VWhGUWNXRmhVVUJnWUJlVHRpSlNWbU4xRlhabUk2MVA3S2Ftb0J0ZHAyZmtGNzhCTVJYaElaVlVaTFMwdmkvanNDK04xSzV3cDNhRWRzUGdELy93QlAvL1lEWWdJYkFROEFVQU8xQWh2QUFBQUpzUUFCdUFJYnNETXJBQUFCQUUvL0VBTmlBaHNBSkFBNFFEVUVBUUFEQVVvS0FRTUJTUVlFQWdJQ2hVc0ZBUU1EQUdBQkFRQUFpMHNJQVFjSGh3ZE1BQUFBSkFBa0V5SVRJaE1rSndrTkd5c0ZOVFEyTnlNR0JpTWlKeU1HQmlNaUpqVVJNeEVVTXpJMk5SRXpFUlF6TWpZMUVUTVJBdmdFQWdjWlV6QjhLUWNhWEROY1cycGxTRDVwWmt3NWF2RHBFREVPS2loWExDdGVhQUZmL3E5OVdWTUJJdjZ2ZldOYkFSRDg5UUFBQUFFQVUvOFFBMllDSlFBdEFKcExzQmxRV0VBVEpBRURBQXNCQWdRS0FRRUNBMG9xQVFNQlNSdEFFeVFCQXdjTEFRSUVDZ0VCQWdOS0tnRURBVWxaUzdBWlVGaEFId1VCQXdNQVh3Z0hDUU1BQUkxTEJnRUVCSU5MQUFJQ0FWOEFBUUdIQVV3YlFDTUFCd2VGU3dVQkF3TUFYd2dKQWdBQWpVc0dBUVFFZzBzQUFnSUJYd0FCQVljQlRGbEFHUUVBS1NjaklpRWdIUnNaR0JVVER3MElCZ0F0QVMwS0RSUXJBVElXRlJFVUJpTWlKaWMxRmhZek1qWTFFVFFqSWdZVkVTTVJOQ01pQmhVUkl4RXpGek0yTmpNeUZ6TTJOZ0t2VzF4Q1NCUW9EQWtkRUJZY1pVZythV1pNT1dwVUR3WVpWVEI4S0FnYVhBSWxYbWorU1VaU0NBVldCQVljSlFHbmZWbFQvdDRCVVgxaVhQN3dBaHRJS2loWExDc0FBZi9qL3hBQ0pnSWxBQjhBaEV1d0dWQllRQTRjQVFJQUV3RUVBUklCQXdRRFNodEFEaHdCQWdVVEFRUUJFZ0VEQkFOS1dVdXdHVkJZUUJ3QUFnSUFYd1VHQWdBQWpVc0FBUUdEU3dBRUJBTmdBQU1EaHdOTUcwQWdBQVVGaFVzQUFnSUFYd1lCQUFDTlN3QUJBWU5MQUFRRUEyQUFBd09IQTB4WlFCTUJBQnNhRnhVUURna0hCUVFBSHdFZkJ3MFVLd0V5RmhVUkl4RTBJeUlHRlJFVUJpTWlKaWMxRmhZek1qWTFFVE1YTXpZMkFXUmVaR2x2VWo5T1FoWW9EQW9jRHh3ZlZBOEdHbHNDSlY1by9xRUJVSDVpWFA2clcxQUlDRkVGQmlReEFtQklLaWdBQVFCVC94QUNsd0lsQUI4QVlVQU9HQUVDQkFZQkFBTUhBUUVBQTBwTHNCbFFXRUFiQUFJQ0JGOEZBUVFFaFVzQUF3T0RTd0FBQUFGZkFBRUJod0ZNRzBBZkFBUUVoVXNBQWdJRlh3QUZCWTFMQUFNRGcwc0FBQUFCWHdBQkFZY0JURmxBQ1NRUkV5UWxJZ1lOR2lzRkZCWXpNalkzRlFZR0l5SW1OUkUwSXlJR0ZSRWpFVE1YTXpZMk16SVdGUUltSGgwT0hRc05LaFpBVFc5U1AycFVEd1lhV3pOZVpFVXhKQVlGVVFnSVRWMEJsbjVpWFA3d0FodElLaWhlYUFBQUFRQlRBQUFDUHdJYkFCRUFJMEFnREFFQ0FBRktBUUVBQUlWTEJBTUNBZ0tEQWt3QUFBQVJBQkVSRmhFRkRSY3JNeEV6QVM0Q05SRXpFU01CSGdJVkVWT0JBUTRDQXdObGd2NzFBUU1DQWh2K1hnODNOUTBCR3YzbEFhRVBOamdSL3UwQS8vOEFOUC8yQWk0Q0pRSUdBbU1BQUFBQ0FEVC85Z01zQWlVQUZ3QWpBVWhMc0JsUVdFQUtBZ0VDQUE4QkJnVUNTaHRMc0I1UVdFQUtBZ0VDQVE4QkJnVUNTaHRMc0NKUVdFQUtBZ0VDQVE4QkJna0NTaHRBQ2dJQkNBRVBBUVlKQWtwWldWbExzQmxRV0VBakFBTUFCQVVEQkdVTENBSUNBZ0JmQVFvQ0FBQ05Td2tCQlFVR1h3Y0JCZ2FEQmt3YlM3QWVVRmhBT0FBREFBUUZBd1JsQ3dnQ0FnSUFYd29CQUFDTlN3c0lBZ0lDQVYwQUFRR0ZTd2tCQlFVR1hRQUdCb05MQ1FFRkJRZGZBQWNIaXdkTUcwdXdJbEJZUURZQUF3QUVCUU1FWlFzSUFnSUNBRjhLQVFBQWpVc0xDQUlDQWdGZEFBRUJoVXNBQlFVR1hRQUdCb05MQUFrSkIxOEFCd2VMQjB3YlFETUFBd0FFQlFNRVpRc0JDQWdBWHdvQkFBQ05Td0FDQWdGZEFBRUJoVXNBQlFVR1hRQUdCb05MQUFrSkIxOEFCd2VMQjB4WldWbEFIeGtZQVFBZkhSZ2pHU01TRUE0TkRBc0tDUWdIQmdVRUF3QVhBUmNNRFJRckFUSVhOU0VWSVJVekZTTVZJUlVoTlFZaklpWW1OVFEyRnlJR0ZSUVdNekkyTlRRbUFURlZPd0ZyL3Z2MTlRRUYvcFU3V0VoeFFZZDFRazFGUzB0RlJRSWxOaXhWaEZTWlZTdzJRWDFhaHBGWVkxeGJabVpiWEdNQUFBQUFBZ0ExLy9ZQzV3SWxBQlFBS1FCRFFFQUtBUVFGQVVvQUJRTUVBd1VFZmdnQkF3TUFYd2NCQUFDTlN3WUJCQVFCWHdJQkFRR0xBVXdXRlFFQUpTTWdIeHdhRlNrV0tROE5DQVlBRkFFVUNRMFVLd0V5RmhZVkZBWWpJaVluSXdZR0l5SW1OVFEyTmhjaUJoVVVGak15TmpVMU14VVVGak15TmpVMEpnR1FicHBQWmw4NlJ4RUZFVVk2WUdWUG1uRjZlVFl2TVNwa0xTMHdObmNDSlUrUVlXeURNUzB0TVlOc1lZOVFWMzVwVEU5R09YbDVQVUpQUzJsL0FQLy9BRFAvRUFLN0F2Z0NCZ0hkQUFELy93QVIvL1lCVmdJYkFROEFWUUdwQWh2QUFBQUpzUUFCdUFJYnNETXJBQUFCQUJILzlnRldBdmdBRVFCbVM3QVpVRmhBQ3c0REFnRUNBZ0VBQVFKS0cwQUxEZ01DQVFJQ0FRQURBa3BaUzdBWlVGaEFFZ0FDQW9STEFBRUJBRjhEQkFJQUFJc0FUQnRBRmdBQ0FvUkxBQU1EZzBzQUFRRUFYd1FCQUFDTEFFeFpRQThCQUEwTUN3b0dCQUFSQVJFRkRSUXJGeUluTnhZek1qWTJOUkV6RVNNbkl3WUdUQ0FiQ3hvY0tFY3JhbFFOQlJwU0NnVmpCeWhMTlFINS9RaGdMRDRBQUFFQUVmOFFBY1VDR3dBZ0FFSkFQdzRIQWdJRERRRUJBaDBCQkFFZUFRQUVCRW9BQXdPRlN3QUNBZ0ZmQUFFQmkwc0FCQVFBWUFVQkFBQ0hBRXdCQUJzWkZoVVJEd3dLQUNBQklBWU5GQ3NGSWlZMU5UUTJOeU1HQmlNaUp6Y1dNekkyTmpVUk14RVVGak15TmpjVkJnWUJkRDVLQkFJRUdsQTRJQnNMR2h3b1J5dHFIQnNTSFFrTExQQk5YVWtYTkJBclBRVmpCeWhMTlFFYy9hQXhKQVlGVVFnSUFBQUFBQUVBVS84UUFaZ0NKUUFSQUdaTHNCbFFXRUFMQWdFQkFBNERBZ0lCQWtvYlFBc0NBUU1BRGdNQ0FnRUNTbGxMc0JsUVdFQVNBQUVCQUY4REJBSUFBSTFMQUFJQ2h3Sk1HMEFXQUFNRGhVc0FBUUVBWHdRQkFBQ05Td0FDQW9jQ1RGbEFEd0VBRFF3TENnWUVBQkVCRVFVTkZDc0JNaGNISmlNaUJnWVZFU01STXhjek5qWUJYU0FiQ3hvY0tVWXJhbFFPQkJsVUFpVUZZd2NvU3pYOTlBTUxZQ3MvQUFBQUFBRUFVLzhRQVpnQ0pRQWNBSHhMc0JsUVdFQVFBZ0VCQUJrUEF3TUNBUkFCQXdJRFNodEFFQUlCQkFBWkR3TURBZ0VRQVFNQ0EwcFpTN0FaVUZoQUZ3QUJBUUJmQkFVQ0FBQ05Td0FDQWdOZkFBTURod05NRzBBYkFBUUVoVXNBQVFFQVh3VUJBQUNOU3dBQ0FnTmZBQU1EaHdOTVdVQVJBUUFZRnhRU0RRc0dCQUFjQVJ3R0RSUXJBVElYQnlZaklnWUdGUkVVTXpJMk54VUdCaU1pSmpVUk14Y3pOallCWFNBYkN4b2NLVVlyUlJFZERROGxHa2xUVkE0RUdWUUNKUVZqQnloTE5mNmZWUVlGVVFnSVRWMENZV0FyUHdBQUFBRUFVQUFBQVZZQ0pnQU9BQ3RBS0FNQkFRQUVBUUlCQWtvQUFRRUFYd01CQUFDTlN3QUNBb01DVEFFQUN3b0lCZ0FPQVE0RURSUXJFeklXRndjbUppTWlGUkVqRVRRMitCa3hGQXdPSXhsSGFWb0NKZ29HV1FRSldQNk9BWFZrVFFBQUFBQUJBQlAvRUFFWkFpWUFEd0FyUUNnTkFRSUFEQUVCQWdKS0FBSUNBRjhEQVFBQWpVc0FBUUdIQVV3QkFBb0lCUVFBRHdFUEJBMFVLeE15RmhVUkl4RTBKaU1pQmdjbk5qWnlUVnBwSWlVWkl3ME5GRElDSmsxay9ac0NZaXdzQ1FSWkJnb0FBZ0JWQUFBQ01RSWJBQTRBRndBelFEQUpBUUlFQVVvQUJBQUNBUVFDWlFBRkJRQmRBQUFBaFVzR0F3SUJBWU1CVEFBQUZ4VVJEd0FPQUE0UkZ5RUhEUmNyTXhFek1oWVZGQVlHQnhjakp5TVZFVE15TmpVMEppTWpWZlZhYkNJNElKdDRpSEp5T0VBeE40SUNHMUpPTGowbENlTFMwZ0VqS3lzaUxnQUFBUC8vQUZVQUFBSXhBaHNCUndSTkFBQUNHMEFBd0FBQUNiRUFBcmdDRzdBekt3QUFBQUFCQURIL0VBRzVBaVVBTlFCQ1FEOG9BUVVFS1JRQ0F3VUZBUUFEREFFQkFBMEJBZ0VGU2dBRkJRUmZBQVFFalVzQUF3TUFYd0FBQUl0TEFBRUJBbDhBQWdLSEFrd2xMQ1VsSkNJR0RSb3JKUlFHSXlJbkZSUVdNekkyTnhVR0JpTWlKalUxRmhZek1qWTFOQ1ltSnk0Q05UUTJNeklXRndjbUppTWlGUlFXRmhjZUFnRzVjMmNySHlJaUVCd05EaVFaUlZBalh5MDhOUlEzTlRSSEpuRmRNVmNwSXlOS0ptSVhPVE14UnlhWVVGSUdSUzBuQlFWT0J3aEtYTDRSR3lZZ0VoMGZGQlFxT2l4R1N4UVNVUThWT1JNY0hCUVRLVG9BQUFBQUFmL2oveEFCTFFMK0FCd0FXRUFQQXdFQkFCSUVBZ01CRVFFQ0F3TktTN0FrVUZoQUZnQUJBUUJmQkFFQUFJUkxBQU1EQWw4QUFnS0hBa3diUUJRRUFRQUFBUU1BQVdjQUF3TUNYd0FDQW9jQ1RGbEFEd0VBRmhRUERRZ0dBQndCSEFVTkZDc1RNaFlYRlNZbUl5SUdGUkVVQmlNaUppYzFGaFl6TWpZMUVUUTJOdU1ZSndzSUhnNGRIMDVDRmlnTUNod1BIQjhsUVFMK0NnWlJCQWNqTS8xcFcxQUlDRkVGQmlReEFwcEFTaDhBQUFBQUFmL2oveEFCTFFMK0FDUUFkMEFTRmdFRkJCY0JBd1VFQVFFQ0F3RUFBUVJLUzdBa1VGaEFJQVlCQXdjQkFnRURBbVVBQlFVRVh3QUVCSVJMQUFFQkFGOElBUUFBaHdCTUcwQWVBQVFBQlFNRUJXY0dBUU1IQVFJQkF3SmxBQUVCQUY4SUFRQUFod0JNV1VBWEFRQWhJQjhlR3hrVUVnNE5EQXNJQmdBa0FTUUpEUlFyRnlJbUp6VVdGak15TmpVUkl6VXpFVFEyTmpNeUZoY1ZKaVlqSWdZVkVUTVZJeEVVQmkwV0tBd0tIQThjSDB4TUpVRXFHQ2NMQ0I0T0hSOU1URTd3Q0FoUkJRWWtNUUU5VXdFS1FFb2ZDZ1pSQkFjak0vNzVVLzdEVzFBQUFBQUFBZi90L3hBQkxRSWxBQnNBTjBBMEN3RUJBaGdLQWdNQkdRRUFBd05LQUFFQkFsOEFBZ0tOU3dBREF3QmZCQUVBQUljQVRBRUFGaFFQRFFnR0FCc0JHd1VORkNzWElpWTFFVFFtSXlJR0J6VTJOak15RmhVUkZCWXpNalkzRlFZRzRrRk9IQm9OR3dnTEpoWThUUjhjRGgwS0RDbndUbHdCeFNzbEJ3UlJCZ3BIVy80NE1TUUdCVkVJQ0FBQy81ai9FQUV0QXY0QUhBQW5BSFZBQ2c4QkF3SVFBUUVEQWtwTHNDUlFXRUFoQkFFQkJ3RUZCZ0VGWndBREF3SmZBQUlDaEVzSkFRWUdBRjhJQVFBQWh3Qk1HMEFmQUFJQUF3RUNBMmNFQVFFSEFRVUdBUVZuQ1FFR0JnQmZDQUVBQUljQVRGbEFHeDRkQVFBaklSMG5IaWNhR1JnWEZCSU5Dd2NGQUJ3QkhBb05GQ3NYSWlZMU5EWXpNeEUwTmpZek1oWVhGU1ltSXlJR0ZSRXpGU01HQmljeU5qVTFJeUlHRlJRV0owTk1SRXdySlVFcUdDY0xDQjRPSFI5SlNRUlJTeGtkSmh3a0ZmQkRNelpFQWxWQVNoOEtCbEVFQnlNei9hNUpXMHhMSVNjVUZ4a1NHZ0QvL3dBWi80Y0JiUUlsQVE4QVZ3Ri9BaHZBQUFBSnNRQUJ1QUlic0RNckFBQUJBQkwvRUFGbUFwUUFGd0JBUUQwTkFRSUVBZ0VBQWdNQkFRQURTZ0FEQkFPREJRRUNBZ1JkQUFRRWhVc0dBUUFBQVY4QUFRR0hBVXdCQUJRVEVoRVFEd3dMQndVQUZ3RVhCdzBVS3dVeU54VUdCaU1pSmlZMUVTTTFOemN6RlRNVkl4RVVGZ0VWTFNRUk9oMHNTU3hMVHlWQm1wb3JtZzFRQ0FzZVNrSUNFREFvY25sUi9mSXNLZ0FBQUFJQUIvLzJBbTRDR3dBWEFCOEFiTFVQQVFZSkFVcExzQmxRV0VBZkJBSUNBQW9MQ0FNRkNRQUZaUU1CQVFHRlN3QUpDUVpnQndFR0JvTUdUQnRBSXdRQ0FnQUtDd2dEQlFrQUJXVURBUUVCaFVzQUJnYURTd0FKQ1FkZ0FBY0hpd2RNV1VBVkFBQWZIaHdhQUJjQUZ5UVJFUkVSRVJFUkRBMGNLemMxTXpVekZTRTFNeFV6RlNNVkl5Y2pCZ1lqSWlZMU5SY1VGak15TmpjaEIwZHJBUUJxUzB0VkR3VWFYRE5mWkdzMU9FOUJBLzhBK1UvVDA5UFRUL2xIS2lkZFp6OHZQejVZVkFBQUFRQWQvL1lDVFFJYkFDQUFOVUF5RndzQ0FRSUJTZ1VCQVFFQ1hRUUJBZ0tGU3dBREF3QmZCZ0VBQUlzQVRBRUFHeG9aR0JJUUNna0lCd0FnQVNBSERSUXJCU0ltSmpVME5qY2pOVE1WQmdZVkZCWXpNalkxTkNZbk5UTVZJeFlXRlJRR0FUUk1jMEU0TUgvek1rRkxUVTFNUkRIMGZqRTJpd284Y0V4TWFTTlZVUmx0VDA1YlcwOUlkQmhSVlNacVJuU0dBQUVBVC8vMkFpa0NKUUFjQUhCTHNCbFFXRUFLR2dFRUFCa0JBd1FDU2h0QUNob0JCQUlaQVFNRUFrcFpTN0FaVUZoQUZ3QUVCQUJmQWdVQ0FBQ05Td0FEQXdGZkFBRUJpd0ZNRzBBYkFBSUNoVXNBQkFRQVh3VUJBQUNOU3dBREF3RmZBQUVCaXdGTVdVQVJBUUFZRmhFUERBc0lCZ0FjQVJ3R0RSUXJBVElXRlJVVUJpTWlKalVSTXhFVUZqTXlOalUxTkNZaklnYzFOallCajB4T2NIMkFiV3BBUlVJL0hpSWRHdzhxQWlWTlc1QjFnbjk0QVM3KzAxbElTVmlMTHlRSlZnWUdBQUQvL3dBQUFBQUNEZ0liQVE4QVdRSU9BaHZBQUFBSnNRQUJ1QUlic0RNckFQLy9BQXYvL3dNY0Fob0JEd0JhQXljQ0c4QUFBQW14QUFHNEFodXdNeXNBLy84QUFBQUFBZzREQ3dFUEFGd0NEd0lid0FBQUNiRUFBYmdDRzdBekt3QUFBUUFBQUFBQjlnSWJBQWdBSTBBZ0J3UUJBd0FCQVVvREFnSUJBWVZMQUFBQWd3Qk1BQUFBQ0FBSUVoSUVEUllyQVFNVkl6VURNeGMzQWZiRmFzZDRoSU1DRy82OTJOZ0JRK2pvQUFFQUkvOFFBaVFDR3dBWEFFaEFSUXdCQWdNSEFRRUVGUUVGQVJZQkFBVUVTZ0FDQWdOZEFBTURoVXNBQkFRQlhRQUJBWU5MQUFVRkFGOEdBUUFBaHdCTUFRQVRFUTROQ3dvSkNBWUZBQmNCRndjTkZDc0ZJaVltTlRVaE5RRWhOU0VWQVNFVkZCWXpNalkzRlFZQjJpWTZJdjdMQVJiKyt3RjcvdkFCR0IwZERSMEpHL0FlU0Q1TVF3R0dVa3YrZ3BzeklRWUVUZzhBQWdBai82a0NJUUliQUJrQUl3QTdRRGdMQVFFQ0JnRUFBd0pLQVFFQVJ3QUVBQWNEQkFkbkFBRUJBbDBBQWdLRlN3WUJBd01BWFFVQkFBQ0RBRXdrSXlRaUVoRVNGQWdOSENzWEp6WTJOeU0xQVNFMUlSVUJNelkyTXpJV0ZSUUdJeU1HQmpjek1qWTFOQ1lqSWdielJnWU1CcUlCRnY3N0FYMys3VXdxV0Q0MVFsUmJXd2tTUkRrckloUVRHaTFYSEJBZERrTUJobEpKL29CUlRqOHZRRU1VS3BBYkZRNFdLUUFBLy84QUV2OFFBZWNDR3dJR0Fzb0FBQUFDLy9ML0VBSUdBaHNBSndBeUFGMUFXaFlCQXdRWEVRSUNBeXNlQ2dNRkJpVWhBZ0FGQkVvaUFRQkhBQUlEQVFNQ0FYNEFBUUFHQlFFR1p3QURBd1JkQUFRRWhVc0lBUVVGQUY4SEFRQUFod0JNS1NnQkFDNHNLRElwTWhVVUV4SVFEZ2dHQUNjQkp3a05GQ3NYSWlZbU5UUTJNeklXRnpZMU5DWWpJelUzSVRVaEZRY2VBaFVVQmdjV0ZoY0hKaVluQmdZbk1qWTNKaU1pQmhVVUZyd3lYVHRhVFQxc013ZHBZVGpWL3RNQnE5cEpiVDRURHc4aUVEME9JQTRsYUVvcVN4bFdWQ2tsUFBBZVFEVTVSU2ttRmh0TlRramZWa3JqQmpwa1JTVThHQTRqRWprUklRNGVJbFFYRlVRZUZCd2lBQUFBQVFBSkFBQUJvQUw5QUJVQVNVQU1Fd0VDQUJJSkJnTUJBZ0pLUzdBbVVGaEFFUUFDQWdCZkF3RUFBSVJMQUFFQmd3Rk1HMEFQQXdFQUFBSUJBQUpuQUFFQmd3Rk1XVUFOQVFBUURnZ0hBQlVCRlFRTkZDc1RNaFlWRkFZSEVTTVJOalkxTkNZaklnWUhKelkyeUdsdlZtUnFYMW83T1NaUEhDY29Yd0w5YTFsSmh6RCt4d0ZzSDJzL05qc2RGRThhSHdBQS8vOEFHZ0FBQWJFQy9RQkhCR0VCdWdBQXdBQkFBQUFBQUFFQUNmLzJBYUFDK0FBVkFDMUFLaEFOQkFNQkFnTUJBQUVDU2dBQ0FvUkxBQUVCQUdBREFRQUFpd0JNQVFBUERnZ0dBQlVCRlFRTkZDc1hJaVluTnhZV016STJOVFFtSnhFekVSWVdGUlFHeFRkZkppY2NUeVk1TzFwZmFtUldjUW9nR1U4VUhUczJQMnNmQVhIK3dpK0dTVnBzQUFBQUFBRUFOUDhSQWNvQ0pRQWFBRGRBTkFvQkFnRVlDd0lEQWhrQkFBTURTZ0FDQWdGZkFBRUJqVXNBQXdNQVh3UUJBQUNIQUV3QkFCWVVEdzBJQmdBYUFSb0ZEUlFyQlNJbU5UUTJOak15RmhjSEppWWpJZ1lWRkJZV016STJOeFVHQVN4OGZFUjBTQzFQR2lBYVBCMUlUaUpCTUNwREhUbnZ2TW1VcjB3U0RWWUtFWStrYm9VN0ZCQmRJQUQvL3dBOC8vWUMxUUxWQWlZQU1nQUFBQWNBZVFFQkFBRC8vd0JUQUFBQ0l3SWJBZ1lCeXdBQUFBSUFLLy8yQWkwQ0pRQVNBQ1lBUDBBOERBRUVBd0ZLQUFNQUJBVURCR2NIQVFJQ0FGOEdBUUFBalVzQUJRVUJYd0FCQVlzQlRCUVRBUUFqSVIwYkdoZ1RKaFFtQndVQUVnRVNDQTBVS3dFeUZoVVVCaU1pSmpVME5qYzFKaVkxTkRZWElnWVZGQll6TXhVaklnWVZGQll6TWpZMU5BRVloWkNVZ1hoMVNEQXZPSGhsT3o5TlJSZ2pTMGhOT1ZOVUFpV1NoWWVSV2tjN1BBd0VERGd4UjB0VklpTXFJVkVuS2k0bFhtWENBQUFBQVFBMC8vWUNYUUw5QUNzQWtFQWJBd0VCQUFRQkJ3RXBDZ0lDQndzQkJRSVhBUU1FSEFFR0F3WktTN0FtVUZoQUtBQUZBQVFEQlFSbEFBRUJBRjhJQVFBQWhFc0FBZ0lIWHdBSEI0MUxBQU1EQmw4QUJnYUxCa3diUUNZSUFRQUFBUWNBQVdjQUJRQUVBd1VFWlFBQ0FnZGZBQWNIalVzQUF3TUdYd0FHQm9zR1RGbEFGd0VBSnlVZ0hoc2FHUmdWRXc4TkNBWUFLd0VyQ1EwVUt3RXlGaGNWSmlZakloVVZCeVltSXlJR0ZSUVdNekkyTnpVak5UTVJCZ1lqSWlZMU5EWTJNeklXRnpVMEFoNFVJUW9ISFJFdkpCOUdJbEpiU1VzZkxCbHcyQzlsUEhXSVJuMVJHQ3dVQXYwSkJWVURCekoyVkJBVFgyQmFZd1lHZzAvKzhCSVZpNHRkZlQ4RUJFK1IvLzhBVXdBQUFqRUNHd0lHQWRZQUFBQUQvNkwvRUFFR0F1Z0FDd0FiQUNZQVMwQklCUUVEQ0FFR0J3TUdad2tCQUFBQlh3QUJBWVJMQUFRRWhVc0xBUWNIQW1BS0FRSUNod0pNSFJ3TkRBRUFJaUFjSmgwbUdSZ1hGaFVVRXhFTUd3MGJCd1VBQ3dFTERBMFVLeE1pSmpVME5qTXlGaFVVQmdNaUpqVTBOak16RVRNUk14VWpCZ1luTWpZMU5TTWlCaFVVRm9rWkpDUVpHQ1FrZFVCS1Fra21ha2xKQkU1SkZoc2lHU0VUQW00ZElDRWNIQ0VnSGZ5aVF6TTJSQUliL2VWSlcweExJQ1lXRnhrU0dnQUFBUC8vQUFiL0l3SGNBaHNCRHdCT0FpOENHOEFBQUFteEFBRzRBaHV3TXlzQUFBRUFVd0FBQWF3Q0d3QUZBQjlBSEFBQUFJVkxBQUVCQWw0REFRSUNnd0pNQUFBQUJRQUZFUkVFRFJZck14RXpFVE1WVTJydkFoditPbFVBQUFJQU5QOFFBb29DL2dBbEFESUFnVUFTSFFFREFoNEJBUU1SQVFZQkJBRUFCUVJLUzdBa1VGaEFKZ0FEQXdKZkFBSUNoRXNBQmdZQlh3QUJBWTFMQ0FFRkJRQmZBQUFBaTBzSEFRUUVod1JNRzBBa0FBSUFBd0VDQTJjQUJnWUJYd0FCQVkxTENBRUZCUUJmQUFBQWkwc0hBUVFFaHdSTVdVQVZKeVlBQUM0c0pqSW5NZ0FsQUNVbEtpUW5DUTBZS3dVMU5EWTNJd1lHSXlJbU5UUTJNeklXRnpNbUpqVTFORFkyTXpJV0Z4VW1KaU1pQmhVUkF6STJOelUwSmlNaUJoVVVGZ0d2QlFFR0YwNDlZWGg0WWo1TkdBWUNCaVEvS1J3cENnZ2VFeHNkOUU0L0FUMVNRa0ZCOE9ZUU1nNGlMb3lLaTQ0dUlRODBGU2RBU2g4S0JsRUVCeU16L0w0QlBGZFlFRjlrYUZ4Y1lnQUFBQUVBQ1FBQUFhQUMvUUFkQUdWQURCc0JCZ0FhRVFZREFRWUNTa3V3SmxCWVFCc0ZBUUVFQVFJREFRSmxBQVlHQUY4SEFRQUFoRXNBQXdPREEwd2JRQmtIQVFBQUJnRUFCbWNGQVFFRUFRSURBUUpsQUFNRGd3Tk1XVUFWQVFBWUZoQVBEZzBNQ3dvSkNBY0FIUUVkQ0EwVUt4TXlGaFVVQmdjVk14VWpGU00xSXpVek5UWTJOVFFtSXlJR0J5YzJOc2hwYjFSZmJHeHFXMXRhV0RzNUprOGNKeWhmQXYxcldVbUhNRXhRbloxUWZ4OXJQelk3SFJSUEdoOEFBUUFaQUFBQnNBTDlBQjBBWlVBTUF3RUJBQmdOQkFNQ0FRSktTN0FtVUZoQUd3WUJBZ1VCQXdRQ0EyVUFBUUVBWHdjQkFBQ0VTd0FFQklNRVRCdEFHUWNCQUFBQkFnQUJad1lCQWdVQkF3UUNBMlVBQkFTREJFeFpRQlVCQUJjV0ZSUVRFaEVRRHc0SUJnQWRBUjBJRFJRckV6SVdGd2NtSmlNaUJoVVVGaGNWTXhVakZTTTFJelV6TlNZbU5UUTI4amhmSnljYlVDVTVPMWhhVzF0cWJHeGZWWEFDL1I4YVR4UWRPelkvYXg5L1VKMmRVRXd2aGtsYWJBQURBRFQvOWdPcEF2Z0FHd0FvQUNzQThVdXdHVkJZUUF3VENRSUhBU2tZQWdBRUFrb2JTN0F0VUZoQURCTUpBZ2NES1JnQ0JRUUNTaHRBREJNSkFnY0RLUmdDQlFZQ1NsbFpTN0FaVUZoQUlBQUNBb1JMQ0FFSEJ3RmZBd0VCQVkxTENnWUNCQVFBWUFVSkFnQUFpd0JNRzB1d0xWQllRRFVBQWdLRVN3Z0JCd2NCWHdBQkFZMUxDQUVIQndOZEFBTURoVXNLQmdJRUJBVmVBQVVGZzBzS0JnSUVCQUJnQ1FFQUFJc0FUQnRBTUFBQ0FvUkxBQWNIQVY4QUFRR05Td0FJQ0FOZEFBTURoVXNBQkFRRlhnQUZCWU5MQ2dFR0JnQmZDUUVBQUlzQVRGbFpRQjBkSEFFQUt5b2tJaHdvSFNnWEZoVVVFaEVRRHdjRkFCc0JHd3NORkNzRklpWTFORFl6TWhZWE15NENOVFV6RlNFVkFTRVZJU2NqQmdZbk1qWTNOVFFtSXlJR0ZSUVdCUUVoQVF4aWRuaGlQVTRZQmdFRUEyb0JpZjd2QVJqK0hSSUZGMDRsVGo4QlBWSkJRa0lCTmdFUy91NEtqSXFMamk0aEJpQWtEc3JkUy82Q1VrZ2lNRmRXV0JCZlpHaGNXMklHQVlJQUFnQTAveEFEeXdMNEFESUFQd0ZCUzdBWlVGaEFHQ3NoQWdNR0xBOENBZ01VQVFRSkJBRUJCQU1CQUFFRlNodExzQnRRV0VBWUt5RUNBd2dzRHdJQ0F4UUJCQWtFQVFFRkF3RUFBUVZLRzBBWUt5RUNDZ2dzRHdJQ0F4UUJCQWtFQVFFRkF3RUFBUVZLV1ZsTHNCbFFXRUF4QUFJRENRTUNDWDRBQndlRVN3b0JBd01HWHdnQkJnYU5Td3dCQ1FrRVh3VUJCQVNEU3dBQkFRQmZDd0VBQUljQVRCdExzQnRRV0VBL0FBSURDUU1DQ1g0QUJ3ZUVTd29CQXdNR1h3QUdCbzFMQ2dFREF3aGRBQWdJaFVzQUJBU0RTd3dCQ1FrRlh3QUZCWXRMQUFFQkFGOExBUUFBaHdCTUcwQTlBQUlEQ1FNQ0NYNEFCd2VFU3dBS0NnWmZBQVlHalVzQUF3TUlYUUFJQ0lWTEFBUUVnMHNNQVFrSkJWOEFCUVdMU3dBQkFRQmZDd0VBQUljQVRGbFpRQ0UwTXdFQU96a3pQelEvS2lrb0p4OGRHUmNURWhFUURnd0lCZ0F5QVRJTkRSUXJCU0ltSnpVV0ZqTXlOalUwSmlNak5UY2hFU01uSXdZR0l5SW1OVFEyTXpJV0Z6TXVBalUxTXhVaEZRY1dGaFVVQmdZQk1qWTNOVFFtSXlJR0ZSUVdBcmc3WWlVbVpUZFJWMlppT3RUKzUxTVNCUmRPUG1KMmVHSTlUaGdHQVFRRGFnR1kybStGUVh2K0ZrNC9BVDFTUVVKQzhCTVJYaElaVlVaTFMwdmkvanRJSWpDTWlvdU9MaUVHSUNRT3l0MUs1d3AzYUVkc1BnRTlWbGdRWDJSb1hGdGlBQUFFQURUL3FRUVRBdmdBS2dBM0FEb0FSQUVWUzdBWlVGaEFFQndUQWdrQ09BWUNBQVVDU2dFQkFFY2JTN0F0VUZoQUVCd1RBZ2tFT0FZQ0FBVUNTZ0VCQVVjYlFCQWNFd0lKQkRnR0FnQUlBa29CQVFGSFdWbExzQmxRV0VBcEFBWUFEQVVHREdjQUF3T0VTd29CQ1FrQ1h3UUJBZ0tOU3dzTkNBTUZCUUJlQndFQ0FBQ0RBRXdiUzdBdFVGaEFQd0FHQUF3RkJneG5BQU1EaEVzS0FRa0pBbDhBQWdLTlN3b0JDUWtFWFFBRUJJVkxDdzBJQXdVRkFGNEhBUUFBZzBzTERRZ0RCUVVCWUFBQkFZc0JUQnRBT1FBR0FBd0ZCZ3huQUFNRGhFc0FDUWtDWHdBQ0FvMUxBQW9LQkYwQUJBU0ZTd3NCQlFVQVhnY0JBQUNEU3cwQkNBZ0JYd0FCQVlzQlRGbFpRQmtzSzBOQlBUczZPVE14S3pjc055UWlFaEVYSkNRVURnMGNLd1VuTmpZM0l5Y2pCZ1lqSWlZMU5EWXpNaFlYTXlZbU5UVXpGU0VWQVRNMk5qTXlGaFVVQmlNakJnWWxNalkzTlRRbUl5SUdGUlFXQlFFaEFUTXlOalUwSmlNaUJnTG1Sd1lNQnZFU0JSZE9QbUoyZUdJOVRoZ0dBZ1pxQVlyKzdVd3FXRDQxUWxOYlhBa1IvalpPUHdFOVVrRkNRZ0UyQVJMKzdnRVpPaXNpRlJNYUxWY2NFQjBPU0NJd2pJcUxqaTRoRURVVHl0MUovb0JSVGo4dlFFTVVLb3RXV0JCZlpHaGNXMklHQVlMK2lSc1ZEaFlwQUFBQ0FCSUFBQUxkQXBRQUl3QTNBTU5Mc0I1UVdFQUxFZ2NDQVFNVEFRWUJBa29iUUFzU0J3SUZBeE1CQmdFQ1NsbExzQmxRV0VBZkFBSURBb01IQlFJQkFRTmZCQUVEQTRWTENRRUdCZ0JkQ0FFQUFJTUFUQnRMc0I1UVdFQXFBQUlFQW9NSEJRSUJBUVJmQUFRRWpVc0hCUUlCQVFOZEFBTURoVXNKQVFZR0FGMElBUUFBZ3dCTUcwQW5BQUlFQW9NQUJRVUVYd0FFQkkxTEJ3RUJBUU5kQUFNRGhVc0pBUVlHQUYwSUFRQUFnd0JNV1ZsQUd5WWtBUUEwTXlRM0pqY1hGUkFPREFzS0NRWUZBQ01CSWdvTkZDc3pJaVltTlJFak5UYzNNeFVoTmpZek1oWVhCeVltSXlJVkZCWVdGeDRDRlJRR0l5Y3pNalkxTkNZbUp5NENOVFEyTnlNUkZCYitMVWtyUzA4bFFRRUhFeW9YTWxZcElpUktKbUVYT1RNeFJ5WjNhT252T3pjVU9EUTBTQ1VIQlpvckhrcENBU0F3S0hKNUJRVVVFbEVQRlRrVEhCc1RFeWs2TEU5TFZCNGZFaDBlRkJRcE9Td1BHd3orNFN3ckFBQUFBQUlBRXY4UUFqNEMvUUFyQURRQXBVQWVKQUVIQmlVQkJBY1hBUU1GTHdFSUF3MEJBZ2dHQVFFQ0JRRUFBUWRLUzdBbVVGaEFNd0FFQndVSEJBVitBQWNIQmw4QUJnYUVTd2tCQXdNRlhRQUZCWVZMQ2dFSUNBSmZBQUlDaTBzQUFRRUFYd0FBQUljQVRCdEFNUUFFQndVSEJBVitBQVlBQndRR0IyY0pBUU1EQlYwQUJRV0ZTd29CQ0FnQ1h3QUNBb3RMQUFFQkFGOEFBQUNIQUV4WlFCTXRMREV3TERRdE5DVWtFUk1VSlNRaUN3MGNLd1VVQmlNaUp6VVdGak15TmpVMUJnWWpJaVltTlJFak5UYzNNeFV6TlRRMk5qTXlGaGNWSmlZaklnWVZBekkyTnhFakVSUVdBYzFOUWpBYkN4d09IUjRST0J3c1NTeExUeVZCbkNWQ0toY3BDZ2dlRHgwZnVCUXFFSndyUlZ0UUVGRUZCaVF4VEFjS0hrcENBU293S0hKNU9VQktId29HVVFRSEl6TDkrZ2NGQVhMKzJDd3FBQUFDQUJMLzlnTklBcFFBTndCREFLaEFHQjhIQWdFRElBRUlBU2dCQ3doQkZRSUZDelVCQUFVRlNrdXdHVkJZUUNrQUFnTUNnd0FJQUFzRkNBdG5Cd1FDQVFFRFh3WUJBd09GU3cwS0FnVUZBRjhKREFJQUFJc0FUQnRBTkFBQ0JnS0RBQWdBQ3dVSUMyY0hCQUlCQVFaZkFBWUdqVXNIQkFJQkFRTmRBQU1EaFVzTkNnSUZCUUJmQ1F3Q0FBQ0xBRXhaUUNNNU9BRUFQejA0UXpsRE16RXNLaVFpSFJzVEVRNE5EQXNLQ1FZRkFEY0JOdzRORkNzWElpWW1OUkVqTlRjM014VXpGU01SRkJZek1qWTNKaVkxTkRZMk16SVdGd2NtSmlNaUZSUVdGelkyTXpJV0ZSUUdCaU1pSmljR0JpVXlOalUwSmlNaUJnY1dGdjR0U1N0TFR5VkJsNWNxSGlwS0lnc0xRM1pMTGswYUlCcy9ISllFQXlOU05FbFRObFF1UDJRaUxHWUJXeVl6SUNjbVF4NFNPd29lU2tJQktqQW9jbmxSL3RrdEtpUVpHVUltWkh3N0V3eFdDaEhBRVI4UEdDTkdPVFJBSGlnb0lpNVVJaHdVSGlJV0doNEFBQUFCQUJEL0VBTXNBdjBBTkFFQlM3QVpVRmhBR0NFQkNBY2lHZ0lKQ0NvWkFnSUpCQUVCQXdNQkFBRUZTaHRBR3lFQkNBY2lBUW9JR2dFSkNpb1pBZ0lKQkFFQkF3TUJBQUVHU2xsTHNCbFFXRUFwQUFnSUIxOEFCd2VFU3dZRUFnSUNDVjhLQVFrSmhVc0ZBUU1EZzBzQUFRRUFYd3NCQUFDSEFFd2JTN0FtVUZoQU5BQUlDQWRmQUFjSGhFc0dCQUlDQWdwZkFBb0tqVXNHQkFJQ0FnbGRBQWtKaFVzRkFRTURnMHNBQVFFQVh3c0JBQUNIQUV3YlFESUFCd0FJQ2djSVp3WUVBZ0lDQ2w4QUNncU5Td1lFQWdJQ0NWMEFDUW1GU3dVQkF3T0RTd0FCQVFCZkN3RUFBSWNBVEZsWlFCMEJBQzh0S1NnbUpCOGRHQmNXRlJRVEVoRU9EQWdHQURRQk5Bd05GQ3NGSWlZbk5SWVdNekkyTlJFMEl5SUdGUkVqRVNNUkl4RWpOVGMxTkRZek1oWVhCeVltSXlJVkZUTVhNelkyTXpJV0ZSRVVCZ0tUR0NjT0Rod1JIQ1Z1VWo5cWhHcGJXMTlWSXpvVUd4RXFGay9ZRHdjYVdEUmZaRW53QndWVkJRVWpNUUdaZW1KYi91OEJ5djQyQWNveUlTSm5Wd3dIVVFVSmFTTklLaWhkYVA1V1Mxc0FBQUVBVS8vMkFud0MrQUFzQUlaTHNCbFFXRUFQR3dFRkJCd0lBZ01GQXdFQUF3TktHMEFQR3dFRkJCd0lBZ01GQXdFQkF3TktXVXV3R1ZCWVFCd0FBZ0tFU3dBRkJRUmZBQVFFalVzQUF3TUFYd0VHQWdBQWl3Qk1HMEFnQUFJQ2hFc0FCUVVFWHdBRUJJMUxBQUVCZzBzQUF3TUFYd1lCQUFDTEFFeFpRQk1CQUNBZUdSY0xDUWNHQlFRQUxBRXNCdzBVS3dVaUppY1ZJeEV6RVJZek1qWTFOQ1ltSnk0Q05UUTJNeklXRndjbUppTWlCaFVVRmhZWEhnSVZGQVlCaGp4aUsycHFaR2hOUHhRMU5ETkhKRzVjTVZZb0l5SklKaTR4RnpneE1VVWxmUW9WRlNBQytQMkdOaVlmRXgwZkZCUXFPaXhHU3hRU1VROFZIeG9VSEIwVEV5ZzVLMUpTQUFJQVV3QUFBazBDK0FBSUFBc0FOa0F6QlFFRUFRa0JBd0lDU2dBQUFJUkxBQVFFQVYwQUFRR0ZTd0FDQWdOZUJRRURBNE1EVEFBQUN3b0FDQUFJRWhFUkJnMFhLek1STXhVaEZRRWhGU1VCSVZOcUFZais3d0VaL25BQkV2N3VBdmpkUy82Q1VrY0JnZ0FBQUFJQUFBQUFBZ1VDeWdBTUFCa0FUa0JMQ3dnREF3QUNHQlVRQXdVSEFrb0JBUUFDQndJQUIzNExDUWdEQndVQ0J3VjhDZ1FEQXdJQ2drc0dBUVVGZ3dWTURRMEFBQTBaRFJrWEZoUVRFaEVQRGdBTUFBd1NFUklSREEwWUt3RURJeWNISXdNekZ6Y3pGemNUQXlNbkJ5TURNeGMzTXhjM0FnVmtWRXROVW1OTlFVMVFTVVZNWkZSTFRWSmpUVUZOVUVsRkFzcitzUGo0QVZEMzkvajQvb2Irc1BuNUFWRDM5L2o0QUFBQ0FGTUFBQUlBQXNvQUJ3QVBBREJBTFFNQkFRSUVBZ0VFZmdBRUFBWUZCQVpsQUFJQ0FGMEFBQUNDU3djQkJRV0RCVXdSRVJFUkVSRVJFQWdOSENzVElSVWpOU01WSXhVaEZTTTFJeFVqVXdHdFlldGhBYTFoNjJFQ3l1K1VsT3p2bEpRQUFmL3MveEFDS1FJbEFDRUFoRXV3R1ZCWVFBNGZBUVVBSGdFQkJSQUJCQUVEU2h0QURoOEJCUUllQVFFRkVBRUVBUU5LV1V1d0dWQllRQndBQlFVQVh3SUdBZ0FBalVzQUFRRUVYd0FFQkl0TEFBTURod05NRzBBZ0FBSUNoVXNBQlFVQVh3WUJBQUNOU3dBQkFRUmZBQVFFaTBzQUF3T0hBMHhaUUJNQkFCd2FGUk1OREFzS0J3VUFJUUVoQncwVUt4TXlGaFVWRkRNeU5qVVJNeEVqTlRRM0l3WUdJeUltTlRVMEppTWlCZ2MxTmpZMVBreHVWRDVxYWdVR0dsWTFYMlFiR3c0ZUNBb29BaVZEVU1kK1kxd0JEL3oxN0NvaktTbGRhTlFpSFFZRFVnVUlBQUFBQUFILzdQOFFBbzBDSlFBdEFLQkxzQmxRV0VBV0t3RUdBQ29CQVFZY0FRVUJFZ0VEQlJNQkJBTUZTaHRBRmlzQkJnSXFBUUVHSEFFRkFSSUJBd1VUQVFRREJVcFpTN0FaVUZoQUlRQUdCZ0JmQWdjQ0FBQ05Td0FCQVFWZkFBVUZpMHNBQXdNRVlBQUVCSWNFVEJ0QUpRQUNBb1ZMQUFZR0FGOEhBUUFBalVzQUFRRUZYd0FGQll0TEFBTURCR0FBQkFTSEJFeFpRQlVCQUNnbUlSOFdGQkFPQ3dvSEJRQXRBUzBJRFJRckV6SVdGUlVVTXpJMk5SRXpFUlFXTXpJMk54VUdJeUltTlRVME5qY2pCZ1lqSWlZMU5UUW1JeUlHQnpVMk5qVStURzVVUG1vWUdSQWFDUmcwUEVZREFnWWFWalZmWkJzYkRoNElDaWdDSlVOUXgzNWpYQUVQL2FBeEpBWUZVUkJOWFRjYUxCSXBLVjFvMUNJZEJnTlNCUWdBLy84QU5nRWZBV1lDNXdGSEFFc0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QU5nRWZBV1lDNmdGSEJETUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy8vLzJnQ1BBSUFDM1FGSEFFMEFBQUVmS1pvbVpnQUpzUUFDdUFFZnNETXJBQUFBLy84QU5nRWZBUWtDYUFGSEFGVUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUN3RVpBTjRDWWdGSEJFWUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUN3Q1BBU1lDWWdGSEJFZ0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QU53RWZBVzBDWWdGSEJFNEFBQUVmS1pvbVpnQUpzUUFDdUFFZnNETXJBQUFBLy84QUJ3RWdBZ1VDWXdGSEFGb0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUFRQ1BBVmNDWWdGSEFGd0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QURBSFZBSzhDeWdJR0FnWUFBUC8vQUF3QjFRRjBBc29DQmdJS0FBRC8vd0FNQWRVQXJ3TEtBZ1lDQlFBQS8vOEFEQUhWQUxBQ3lnSUdBZ2dBQUFBQkFCNENQd0NQQXhnQURRQXFzUVprUkVBZkFBQUFBd0lBQTJjQUFnRUJBbGNBQWdJQlh3QUJBZ0ZQRkJFVUVBUU5HQ3V4QmdCRUV6SVdGUlFHSXpVeU5qVTBKaU1lTWo4L01oY2VIQmtER0Rrek5EazRHeGtaSEFBQUFBRUFIZ0kvQUk4REdBQU5BQ3F4Qm1SRVFCOEFBUUFDQXdFQ1p3QURBQUFEVndBREF3QmZBQUFEQUU4VUVSUVFCQTBZSzdFR0FFUVRJaVkxTkRZekZTSUdGUlFXTTQ4eFFFQXhGeDRjR1FJL09UUXpPVGNjR1JrY0FBQUFBUUFJQWMwQkZRTCtBQlFBT0xFR1pFUkFMUW9CQUFFVENRRURBZ0FDU2dNQkFnQUNoQUFCQUFBQlZ3QUJBUUJmQUFBQkFFOEFBQUFVQUJRbEpRUU5GaXV4QmdCRUV6VTJOVFFtSXlJR0J5YzJOak15RmhVVUJnY1ZUM1FqSWhneEZCa1hQaVpKU1RsQkFjMVpHa01aSkJBT1BBNFNSalFzUkJNMC8vOEFFd0hOQVNBQy9nQkhCSXdCS0FBQXdBQkFBQUFBLy84QUdBSWFBUVlERkFFUEFCOEFBQUhpSUFBQUNiRUFBYmdCNHJBekt3RC8vd0FZQWhvQkJnTVVBUThBSVFBQUFlSWdBQUFKc1FBQnVBSGlzRE1yQUFBQkFCRUNJUUVNQXc0QUJnQW5zUVprUkVBY0JRRUJBQUZLQUFBQkFJTURBZ0lCQVhRQUFBQUdBQVlSRVFRTkZpdXhCZ0JFRXpjekZ5TW5CeEZ0SUc0dFVWRUNJZTN0dHJZQUFBRC8vd0FLQWlFQkJRTU9BUThFa0FFV0JTL0FBQUFKc1FBQnVBVXZzRE1yQVAvL0FDZ0NWQUIrQXZzQUJndU5Vd0QvL3dBb0FsNEJDUUwrQWdZQWRnQUEvLzhBS0FKZUFRa0MvZ0lHQUVNQUFQLy9BQ2ovTVFCKy85Z0JCd3VOQUZQODNRQUpzUUFCdVB6ZHNETXJBQUFBLy84QUtQOWtBVnYvdEFNSEFVd0FBUDBHQUFteEFBRzQvUWF3TXlzQUFBRC8vd0FvL3pRQkNmL1VBQWNMbGdDa0FBQUFBUC8vQUNqL05BRUovOVFBQnd1WEFJd0FBQUFBQUFJQVJBQUFBUFlDR0FBQ0FBVUFMTEVHWkVSQUlRUUJBUUFCU2dBQUFRRUFWUUFBQUFGZEFnRUJBQUZOQXdNREJRTUZFUU1ORlN1eEJnQkVFeWN6QXpjWG5WbXlzbGxaQVkyTC9laUxpd0FBQVFCRUFZMEE5Z0lZQUFJQUVyRUdaRVMzQUFBQWRCRUJEUlVyc1FZQVJCTW5NNTFac2dHTml3QUFBUC8vQUNnQXdBQ1pBWmtCQndTS0FBcitnUUFKc1FBQnVQNkJzRE1yQUFBQS8vOEFLQURBQUprQm1RRUhCSXNBQ3Y2QkFBbXhBQUc0L29Hd015c0FBQUQvL3dBZUFONEE4QUYrQVFjTG5RQ0hBYTRBQ2JFQUFiZ0JyckF6S3dBQUFQLy9BQjRBM2dEd0FYNEJCd3VlQUljQnJnQUpzUUFCdUFHdXNETXJBQUFBLy84QUhnREtBUEFCa2dFSEM1OEFod0d1QUFteEFBRzRBYTZ3TXlzQUFBQUFBUUFlQVE4QS9BRk1BQU1BSUxFR1pFUkFGUUFCQUFBQlZRQUJBUUJkQUFBQkFFMFJFQUlORml1eEJnQkVFeU0xTS96ZTNnRVBQZi8vQUNnQ093RDBBd2NBQnd1OEFJNEFBQUFBLy84QUFBQ1FBVllDWWdGSEJEQUFBQUVmS1pvbVpnQUpzUUFDdUFFZnNETXJBQUFBLy84QU5nRWZBSHNDNXdGSEFFOEFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUlBRVpBUjhDYUFGSEFGWUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUNRRWZBVmdDWWdGSEFGc0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUVRRWZBUmtDNmdGSEJHSUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBQUFFQVRnQUFBVlFDc0FBRkFDeXhCbVJFUUNFREFRSUFBb1FBQVFBQUFWVUFBUUVBWFFBQUFRQk5BQUFBQlFBRkVSRUVEUllyc1FZQVJDRVJJelVoRVFFU3hBRUdBbTVDL1ZBQUFBQUJBRTRBQUFGVUFyQUFCd0F3c1Faa1JFQWxBQUlCQXdKVkFBRUFBQU1CQUdVQUFnSURYUVFCQXdJRFRRQUFBQWNBQnhFUkVRVU5GeXV4QmdCRUlSRWpOVE0xTXhFQkVzVEVRZ0hKUXFYOVVBQUFBQUFCQUU0QUFBRlVBckFBQndBd3NRWmtSRUFsQUFJQkF3SlZBQUVBQUFNQkFHVUFBZ0lEWFFRQkF3SURUUUFBQUFjQUJ4RVJFUVVORnl1eEJnQkVJUkVqTlRNUk14RUJFc1RFUWdGR1FnRW8vVkFBQUFBQkFFNEFBQUZVQXJBQUJ3QXdzUVprUkVBbEFBSUJBd0pWQUFFQUFBTUJBR1VBQWdJRFhRUUJBd0lEVFFBQUFBY0FCeEVSRVFVTkZ5dXhCZ0JFSVRVak5UTVJNeEVCRXNURVFxZENBY2Y5VUFBQUFBQUJBRTRBQUFGVUFyQUFCUUFtc1Faa1JFQWJBQUlCQW9NQUFRQUFBVlVBQVFFQVhnQUFBUUJPRVJFUUF3MFhLN0VHQUVRaElUVXpFVE1CVlA3NnhFSkNBbTRBQUFFQVRnQ21BVlFDRUFBRkFDYXhCbVJFUUJzQUFBRUFnd0FCQWdJQlZRQUJBUUplQUFJQkFrNFJFUkFERFJjcnNRWUFSQk16RVRNVklVNUN4UDc2QWhEKzJFSUFBUUJPQUtZQlZBSVFBQWNBS3JFR1pFUkFId0FBQVFNQVZRQUJBQUlEQVFKbEFBQUFBMTBBQXdBRFRSRVJFUkFFRFJncnNRWUFSQk16RlRNVkl4VWpUa0xFeEVJQ0VKUkNsQUFBLy84QUtQODVBWlAvMlFNSEFVc0FBUHpiQUFteEFBRzQvTnV3TXlzQUFBRC8vd0FvQWxZQnh3TWNBUWNDQkFBcUF6VUFDYkVBQXJnRE5iQXpLd0FBQVAvL0FBd0IxUUYwQXNvQ0JnSUtBQUFBQVFBby94QUJkdi91QUFZQUo3RUdaRVJBSEFNQkFnQUJTZ0VCQUFJQWd3TUJBZ0owQUFBQUJnQUdFaEVFRFJZcnNRWUFSQmNuTXhjM013ZTNqMDlZV1U2TzhONkdodDRBQVFBby94QUJkdi9zQUFZQUo3RUdaRVJBSEFVQkFRQUJTZ0FBQVFDREF3SUNBUUYwQUFBQUJnQUdFUkVFRFJZcnNRWUFSQmMzTXhjakp3Y29qakdQVDFoWjhOemNoSVFBQVFBby94QUJJd0FYQUFZQUJyTURBQUV3S3dVbk5UY1ZCeGNCSS92N282UHdhekZyUlQ0L0FBRUFLUDhRQVNNQUZ3QUdBQWF6QkFBQk1Dc1hOVGNuTlJjVktLT2orL0JGUGo5RmF6RUFBUC8vQUNnQkdRRUpBYmtEQndCREFBRCt1d0FKc1FBQnVQNjdzRE1yQUFBQS8vOEFLQUVaQWFZQnVRRkhBVklCenY2N3dBQkFBQUFKc1FBQ3VQNjdzRE1yQUFBQS8vOEFLQUVaQWFZQnVRTUhBVklBQVA2N0FBbXhBQUs0L3J1d015c0FBQUQvL3dBby96NEJvdi9GQXdjQlVRQUEvT0FBQ2JFQUFiajg0TEF6S3dBQUFQLy9BRVFBd2dETkF2Z0RCd0FkQUFBQTBBQUlzUUFDc05Dd015c0FBUUFvQVo4QXpnS3BBQVVBSnJFR1pFUkFHd0FDQVFLRUFBQUJBUUJWQUFBQUFWMEFBUUFCVFJFUkVBTU5GeXV4QmdCRUV6TVZJeFVqS0taeE5RS3BOZFVBQUFBQkFDZ0Jud0RPQXFrQUJRQXRzUVprUkVBaUFBQUJBSVFEQVFJQkFRSlZBd0VDQWdGZEFBRUNBVTBBQUFBRkFBVVJFUVFORml1eEJnQkVFeEVqTlNNMXpqVnhBcW4rOXRVMUFBQUFBUUFvQUFBQXpnRUtBQVVBTExFR1pFUkFJUUFBQVFDREFBRUNBZ0ZWQUFFQkFsNERBUUlCQWs0QUFBQUZBQVVSRVFRTkZpdXhCZ0JFTXhFekZUTVZLRFZ4QVFyVk5RQUFBUUFvQUFBQXpnRUtBQVVBSnJFR1pFUkFHd0FDQVFLREFBRUFBQUZWQUFFQkFGNEFBQUVBVGhFUkVBTU5GeXV4QmdCRU15TTFNelV6enFaeE5UWFZBQUVBS1A4d0FlYi8xUUFIQUVteEJtUkVTN0FNVUZoQUZ3TUJBUUlDQVc0QUFnQUFBbFVBQWdJQVhnQUFBZ0JPRzBBV0F3RUJBZ0dEQUFJQUFBSlZBQUlDQUY0QUFBSUFUbG0yRVJFUkVBUU5HQ3V4QmdCRUJTRTFNeFVoTlRNQjV2NUNPQUZOT2RDbFkyTUFBQUVBS1A4d0FlYi8xUUFGQUVheEJtUkVTN0FNVUZoQUZnQUJBZ0lCYmdBQ0FBQUNWUUFDQWdCZUFBQUNBRTRiUUJVQUFRSUJnd0FDQUFBQ1ZRQUNBZ0JlQUFBQ0FFNVp0UkVSRUFNTkZ5dXhCZ0JFQlNFMU14VWhBZWIrUWpnQmh0Q2xZd0FCQUNqL0VBSHVBRXNBQ1FBeHNRWmtSRUFtQWdFQ0FRQUJTZ1FEQWdCSUNRQUNBVWNBQUFFQkFGVUFBQUFCWFFBQkFBRk5FUlVDRFJZcnNRWUFSQVVuTlRjVkJ5RVZJUmNCSS92N2hBRlAvckdFOElVeGhUdEVQRVVBLy8vK2hRSlAvMFlET0FJR0Frc0FBQUFCQUJRQ0tnRFNBc29BQ1FBYVFCY0ZBQUlCQUFGS0FBRUFBWVFBQUFBNEFFd1VFd0lJRmlzVE5qWTNNeFVHQmdjakZCUW9ESFlXUWlOREFqWWhVU0lLSlZVY0FBRUFGUDhrQU5ML3hBQUpBQzYyQlFBQ0FBRUJTa3V3R1ZCWVFBc0FBUUFCZ3dBQUFEMEFUQnRBQ1FBQkFBR0RBQUFBZEZtMEZCTUNDQllyRndZR0J5TTFOalkzTTlJVUp3MTJGa01qUWtnaFVTSUtKVlVjQVAvL0FQTC9IZ0dKLzhVQ0JnYnRBQUQvL3dBZy8vWUJ0Z0lsQWdZRUpBQUEvLzhBTlAvMkFjb0NKUUltQUVZQUFBRUhBVTRBM1A1c0FBbXhBUUc0L215d015c0EvLzhBSVAvMkFiWUNKUUltQkNRQUFBRUhBVTRBUnY1ckFBbXhBUUc0L211d015c0EvLzhBSC85L0FNd0NLQUFHQUI0QUFBQURBREQvOWdJa0F2MEFIZ0FwQURRQVQwQk1JUUVGQkFNQkJ3QXpBUVlIQTBvQUJRQURBQVVEWndBQUFBY0dBQWRuQ0FFRUJBSmZBQUlDUWtzSkFRWUdBVjhBQVFFNUFVd3JLaUFmTVM4cU5DczBKU01mS1NBcEpTWW1KUW9JR0NzVEJnWVZOall6TWhZV0ZSUUdCaU1pSmlZMU5EWTJNeklXRlJRR0JpTWlOeUlIRmhZek1qWTFOQ1lETWpZMU5DWWpJZ1lIRnJRTURCaFpQRHhqUEVSeVJGcHVNa1orVTFWWk5WQXJWRlZMS3hWQUh5d3FLRWRGUjBVNk5VOFdDZ0lsSWxreklpNHlYME5WY1RkYXAzSi90R0ZIT2k0OEhMcElFQlFlRmhnZy9aMVVTejVIS1IvY0FBQUEvLy8vNkFBQUF0VUM3d0FuQWtBQWpBQUFBUWNCVS83dy84MEFDYkVCQWJqL3piQXpLd0FBQVAvL0FBQUFBQUpKQTQ4Q0pnSkFBQUFCQndCcS8vd0Fyd0FJc1FFQ3NLK3dNeXNBQVAvL0FEUC9FQUs3QXZnQ0JnSGRBQUFBQWYvNi94QUNnQUlpQURNQTJVdXdJbEJZUUJZZEFRTUVNU1VjRUFRR0F3b0VBZ0VDQXdFQUFRUktHMEFXSFFFREJURWxIQkFFQmdNS0JBSUJBZ01CQUFFRVNsbExzQ0pRV0VBa0FBWURBZ01HQW40QUF3TUVYd1VCQkFSRFN3QUNBamxMQUFFQkFHQUhBUUFBUFFCTUcwdXdNbEJZUUNnQUJnTUNBd1lDZmdBRkJUdExBQU1EQkY4QUJBUkRTd0FDQWpsTEFBRUJBR0FIQVFBQVBRQk1HMEFxQUFZREFnTUdBbjRBQWdFREFnRjhBQVVGTzBzQUF3TUVYd0FFQkVOTEFBRUJBR0FIQVFBQVBRQk1XVmxBRlFFQUx5MG5KaUFlR2hnU0VRZ0dBRE1CTXdnSUZDc0ZJaVluTlJZV016STFOU1ltTlRRMk53RWpQZ0kxTkNZaklnWUhKell6TWhZVkZBWUhBVE1PQWhVVUZqTXlOamNWRkFJRUZDTUxDUmtQTVVCS0NBbisrMllTSWhjdkl3MFRCeGdkTVU1WUJ3Z0JDMlVUSlJrdUtBd1lDUEFJQkZJREJqWmRDR2hySGowZC9yVWxaWGMvVFVJRkEwNE5hWFlmT2h3QlRTVm5lRDlTUEFVRHM0OEFBQUFDQUR3QUFBTEpBdFFBRWdBZUFGUzJDd2dDQVFNQlNrdXdNbEJZUUJjRkFRSUNBRjhFQVFBQVFFc0FBd01CWFFBQkFUa0JUQnRBRkFBREFBRURBV0VGQVFJQ0FGOEVBUUFBUUFKTVdVQVRGQk1CQUJvWUV4NFVIZ29KQUJJQkVnWUlGQ3NCTWhZV0ZSUUdCZ2NWSXpVdUFqVTBOallYSWdZVkZCWXpNalkxTkNZQmhHeVFTVDU1V214Y2VUdEhrWEJ1YUdodGJXZG1BdFJNaGxoUWYwOEtnb0lLVUg5UVY0Wk1YWEJkWFhGeFhWMXdBQUFDQURUL0VBSXVBaVVBRHdBYkFEUkFNUW9IQWdFREFVb0ZBUUlDQUY4RUFRQUFRMHNBQXdNQlhRQUJBVDBCVEJFUUFRQVhGUkFiRVJzSkNBQVBBUThHQ0JRckFUSVdGaFVVQmdjVkl6VW1KalUwTmhjaUJoVVVGak15TmpVMEpnRXlTbkZCYTExcVdIQ0lkRXRFUlV0TFJVVUNKVUI3V1hhTUQvRHdENHgyaFk5WVlWdGJaR1JiVzJFQUFBRUFQQUFBQWxrQzFBQVhBRlpBRGdNQkFRQUVBUUlCRVFFREFnTktTN0F5VUZoQUZnQUJBUUJmQkFFQUFFQkxBQUlDQTEwQUF3TTVBMHdiUUJNQUFnQURBZ05oQUFFQkFGOEVBUUFBUUFGTVdVQVBBUUFRRHc0TUNBWUFGd0VYQlFnVUt3RXlGaGNISmlZaklnWVZGQll6TXhVak5TWW1OVFEyTmdHSlBHY3RKU1pTTW01dmNuUWtiSWFKVEpRQzFCZ1VYQklaYTF4Y2ErbVNEcFY4VjROSkFBQUFBUUEwL3pNQjNBSWxBQ2dBTkVBeEdBRURBaGtFQWdFREF3RUFBUU5LQUFFRUFRQUJBR01BQXdNQ1h3QUNBa01EVEFFQUhSc1dGQWdHQUNnQktBVUlGQ3NGSWlZbk5SWVdNekkyTlRRbUp5NENOVFEyTmpNeUZoY0hKaVlqSWdZVkZCWVdGeFlXRlJRR0FTRWZQeHdjTXhveUxDNUNPbHMxUkhkTkxWTWdJUjVBSWxGSkhVYy9VRUJoelFZSFVRY0pJU0FnR2cwTE5XSk9aNFZBRWc1VkRBOXBaemM5SVE0U1NqUkhUZ0FBQUFBQkFGOEFBQUhyQXNvQUN3Q0dTN0FLVUZoQUlBQURCQVVFQTNBQUFnQUVBd0lFWlFBQkFRQmRBQUFBT0VzR0FRVUZPUVZNRzB1d01sQllRQ0VBQXdRRkJBTUZmZ0FDQUFRREFnUmxBQUVCQUYwQUFBQTRTd1lCQlFVNUJVd2JRQ0FBQXdRRkJBTUZmZ1lCQlFXQ0FBSUFCQU1DQkdVQUFRRUFYUUFBQURnQlRGbFpRQTRBQUFBTEFBc1JFUkVSRVFjSUdTc3pFU0VWSVJVaEZTTTFJeEZmQVl6KzN3RUxZcWtDeWx6cDJYMysxd0FBQUFBQkFGVC9FQUc4QWhzQUN3QldTN0FLVUZoQUh3QUVCUUFGQkhBQUF3QUZCQU1GWlFBQ0FnRmRBQUVCTzBzQUFBQTlBRXdiUUNBQUJBVUFCUVFBZmdBREFBVUVBd1ZsQUFJQ0FWMEFBUUU3U3dBQUFEMEFURmxBQ1JFUkVSRVJFQVlJR2lzWEl4RWhGU01WTXhVak5TTythZ0ZvL3Q5Z2YvQURDMVhHM0lnQUFBSC8rLy8yQWQwQzFBQXJBRVpBUXhNQkFnTVNBUVFDS0FFRkFTa0JBQVVFU2dBRUFBRUZCQUZsQUFJQ0ExOEFBd05BU3dBRkJRQmZCZ0VBQURrQVRBRUFKaVFlSFJjVkR3NElCd0FyQVNzSENCUXJCU0ltTlRRMk56Y2hOelkyTlRRbUl5SUdCeWMyTmpNeUZoVVVCZ2NISVFjR0JoVVVGak15TmpjVkJnWUJtanBLQndvay90TThCQW9aRXdnWUNSZ1RKeFZCUkFjS0dnRXRSUVVKR1JRUUdnZ0xJd284T1JFeUlIaktFQ1FSRlJVR0JWQUpCMEEzRVRBZ1d1a1FJeEVWRlFZRFVnUUlBQUFBQUFFQUwvOFFBZnNDL2dBckFEMUFPaE1CQVFJb0hoMGNFZ2tJQndnREFTa0JBQU1EU2dBQkFRSmZBQUlDUWtzQUF3TUFYd1FCQUFBOUFFd0JBQ1lrRnhVUkR3QXJBU3NGQ0JRckJTSW1OVFEyTnhNRk5STTJOalUwSmlNaUJ5YzJOak15RmhVVUJ3Y2xGUU1HQmhVVUZqTXlOamNWQmdZQmxrdEdEUXhsL3F4bkN3OFdFeFlZR1JBckcwQS9IMG9CVDNVT0N4MGlFQm9JRFNUd1JEc1pOU0lCRmtoREFRd2ROUlVURkF0UEJnbytNak5UdzBaQi9ya3BLQlVjSGdZRFVBUUlBQUFCLy9NQUFBSVFBdFVBSGdCUFFCSVVBUUFCRXc0TkRBc0pDQWNHQ1FJQUFrcExzREpRV0VBUkFBQUFBVjhBQVFGQVN3TUJBZ0k1QWt3YlFCRURBUUlBQW9RQUFBQUJYd0FCQVVBQVRGbEFDd0FBQUI0QUhpVXZCQWdXS3lFMk5qVTBKaWNISnpjbUp3Y25OeVlqSWdZSEp6WTJNeklXRmhVVUJnY0JZUjBpQVFHeEtNOE1HZUlwMUM5R05WTVlNQ1prU1d5VFN5QWRSNUZKRHgwTmFFWjVQeXFGUm4wZ0lCUlRIU0Zud0laTWxVY0FBQUFCLzdYL0VBSExBdjBBR2dBZlFCd1REdzROREFrSUJ3WUpBRWdCQVFBQVBRQk1BQUFBR2dBYUFnZ1VLd1UyTmpVMEppY0hKemNtSmljSEp6Y21KaWNuRmhZU0ZSUUdCd0VQSlN3RUE5d1k1UW9iRWRrWnhUYU5UU0tsNzRJcUpmQk90bVVaTWhsSVIwb2lRQnhIU1VGRFd4UmtIN0QrOHFwaXZFZ0FBZi82Ly9ZQ2dBSWlBQ29BN0V1d0dWQllRQkVMQVFBQktSOFRDZ1FEQUNBQkJBTURTaHRMc0NKUVdFQVJDd0VBQVNrZkV3b0VBd0FnQVFVREEwb2JRQkVMQVFBQ0tSOFRDZ1FEQUNBQkJRTURTbGxaUzdBWlVGaEFHQUFBQUFGZkFnRUJBVU5MQUFNREJHQUdCUUlFQkRrRVRCdExzQ0pRV0VBY0FBQUFBVjhDQVFFQlEwc0dBUVVGT1VzQUF3TUVZQUFFQkRrRVRCdExzREpRV0VBZ0FBSUNPMHNBQUFBQlh3QUJBVU5MQmdFRkJUbExBQU1EQkdBQUJBUTVCRXdiUUNNR0FRVURCQU1GQkg0QUFnSTdTd0FBQUFGZkFBRUJRMHNBQXdNRVlBQUVCRGtFVEZsWldVQU9BQUFBS2dBcUpTWVdKQ1lIQ0Jrck16NENOVFFtSXlJR0J5YzJNeklXRlJRR0J3RXpEZ0lWRkJZek1qWTNGUVlHSXlJbU5UUTJOd0ZBRWlJWEx5TU5Fd2NZSFRGT1dBY0lBUXRsRXlVWkxpZ01HQWdPSUJSTFdRZ0ovdnNsWlhjL1RVSUZBMDROYVhZZk9od0JUU1ZuZUQ5U1BBVURVQVVIYUhVZVBSMyt0UUFBQUFJQU5QOFFBaTBDSlFBa0FEUUFSa0JEQ2dFQkJnRktBQUlBQkFNQ0JHY0lBUVVGQUY4SEFRQUFRMHNBQmdZQlh3QUJBVGxMQUFNRFBRTk1KaVVCQURBdUpUUW1OQjhkRnhZUURnZ0dBQ1FCSkFrSUZDc0JNaFlXRlJRR0l5SW1KeU1lQWhjZUFoVVVCZ2NqTmpZMU5DWW1KeTRDTlRRMkZ5SUdCZ2NVRmhjV0ZqTXlOalUwSmdFL1JXdzlmbXcyUkNBR0J4MDNMejlKSHdZRVlBSUREQ1VvVG1Rd2lIOHZSaWNCQVFFaVNpMUlQejRDSlVGOVdvaVBHeHc3UUJvQ0FnMGpJUThXRGdZS0J3a0xCQUVDUVoyTnU3MVhPSHhuRFJVTEhodGZZV0pmQUFBQS8vOEFOUC8yQWNvQ0pRSUdBRVlBQVAvLy84Yi9FQURGQXVnQ0JnQk5BQUQvL3dBOC8vWUMxUUxWQWdZQ1lnQUEvLzhBTlAvMkFkWUNKUUlHQWV3QUFQLy9BQi8vOWdHL0FpVUNCZ0htQUFELy93QmZBQUFDTXdMS0FnWUFvQUFBLy84QVUvOFFBamdDK0FJR0FNQUFBUC8vQUR6LzlnSlpBdFFDQmdBbUFBQUFBUUJmQUFBRE53TEtBQmNBVUxjUkRRTURBd0FCU2t1d01sQllRQllBQXdBQ0FBTUNmZ0VCQUFBNFN3VUVBZ0lDT1FKTUcwQVdBQU1BQWdBREFuNEZCQUlDQWdCZEFRRUFBRGdDVEZsQURRQUFBQmNBRnhjUkV4RUdDQmdyTXhFekV6TVRNeEVqRVRRMk5qY2pBeU1ESXg0Q0ZSRmZqZG9FMzQ1cEFnTUNCTjlhMmdRQ0F3SUN5djZOQVhQOU5nR1RJazVIRi82UEFYSVlSbEFqL204QUFBRUFVLzhRQXA4Q0d3QVNBRmkzRGdzREF3TUFBVXBMc0RKUVdFQWFBQU1BQWdBREFuNEJBUUFBTzBzQUFnSTVTd1VCQkFROUJFd2JRQm9BQXdBQ0FBTUNmZ0FDQWdCZEFRRUFBRHRMQlFFRUJEMEVURmxBRFFBQUFCSUFFaFVSRWhFR0NCZ3JGeEV6RnpjekVTTVJORFkzQnlNbkZCWVZFVk9Hb0tXQlpBRUJuVkdaQWZBREMvejgvZVVCVHhZekZPN3RGalVZL2NnQUFnQUQveEFDTFFJbEFCb0FKd0JLUUVjbEFRY0lFZ0VEQndKS0JBRUJCUUVBQmdFQVpRQUlDQUpmQUFJQ1Ewc0tBUWNIQTE4QUF3TTVTd2tCQmdZOUJrd2NHd0FBSWlBYkp4d25BQm9BR2hFV0pTTVJFUXNJR2lzWE5TTTFNeEUwTmpNeUZoWVZGQVlqSWlZbkl4WVdGek1WSXhVVE1qWTFOQ1lqSWdZVkZSWVdTVVpHaEhGR2JEMStiQ2hMSEFZQ0F3RzZ1b1ZJUHo1SFJFTWFSdkJNVGdGcGlJcEJmVnFJanhjVUMwTXBUa3dCUFY5aFlsNWJYcGdZRi8vL0FDRC85Z0k5QXRRQ0JnTm9BQUQvL3dBOC8vWUNXUUxVQWlZQUpnQUFBQWNBZVFFR0FBRC8vd0FnLy9ZQ1BRTFVBaVlEYUFBQUFBWUFlV0lBQUFELy93QTgvMVlDMVFMVkFnWUFOQUFBLy84QU5QOFFBaGtDSlFJR0FGUUFBUC8vQUFnQUFBT2tBc29DQmdBNkFBRC8vd0FMQUFFREhBSWNBZ1lBV2dBQUFBSUFDZ0FBQWc0Q0hBQUhBQkFBTEVBcERRRUVBQUZLQUFRQUFnRUVBbVlBQUFDRlN3VURBZ0VCZ3dGTUFBQUpDQUFIQUFjUkVSRUdEUmNyTXhNekV5TW5Jd2MzTXljbUppY0dCZ2NLMG1IUlpqckdPRldQTkFVTUF3TUxCUUljL2VTWW1PaU9EaVlSRVNZT0FBSUFDQUFBQXBzQ0d3QVBBQk1BT0VBMUFBVUFCZ2dGQm1VQUNBQUJCd2dCWlFrQkJBUURYUUFEQTRWTEFBY0hBRjBDQVFBQWd3Qk1FeElSRVJFUkVSRVJFUkFLRFIwcklTRTFJd2NqQVNFVkl4VXpGU01WTXlVek5TTUNtLzdLcjBsbEFRSUJrZFhIeDlYK1FJb2dtSmdDRzA2T1RhU2E0d0FBQUFBREFESC85Z05EQWlVQUxBQTNBRDRBZ1VBVUlBRUZCaVlmQWdRRkNnRUJBQkVMQWdJQkJFcExzQnRRV0VBakNRRUVDZ0VBQVFRQVpRZ0JCUVVHWHdjQkJnYU5Td3NCQVFFQ1h3TUJBZ0tMQWt3YlFDZ0FCQWtBQkZVQUNRb0JBQUVKQUdVSUFRVUZCbDhIQVFZR2pVc0xBUUVCQWw4REFRSUNpd0pNV1VBU1BUczVPRFkwSlNRbElSUWtKU01oREEwZEt3RVVCd2NWRkJZek1qWTNGd1lHSXlJbUp3WUdJeUltSmpVMUlTWWpJZ1lITlRZMk16SVdGelkyTXpJV0ZnYzBKaU1pQmhVVk56WTJCU01VRmpNeU5nTkQ4bHM0THloTEl5RW1aRFE4VWhjZFZEZENZVFVCV2dTU01WQXBLRkEzUkdvZkpWeFFNRTR0YlRBbU9rNUZWa1Arc3V3M09EZENBWUtqQ1FNa055OFhFVXNWR2lZcEppbzhiVW83ckJRVFdCTVJOamMwT1NOSU55b21SVWN2QXdNMmZqOVBTQUFEQUFvQUFBSkdBaHNBRlFBZEFDWUFPMEE0QndvRkF3TUlBZ0lBQ1FNQVpRQUdCZ1JkQUFRRWhVc0FDUWtCWFFBQkFZTUJUQUFBSlNNaUlCMGJHaGdBRlFBVklSRVJKUkVMRFJrckFSVWpGaFlWRkFZakl6VWpOVE0xTXpJV0ZoVVVCeWMwSmlNakZUTXlGelFtSXlNVk16STJBa1pGRUJKcGVPOUpTZTg3WGpja1NESTRmMjk2RDBFK2VYczdRZ0UrU3c4cUcwVmE4MHZkR2pzME5SOUlJaUdJb0NvbG9DVUFBQUFBQVFBNy8va0I1d0lqQUJrQU4wQTBGZ0VBQXhjSkFnRUFDZ0VDQVFOS0JBRUFBQU5mQUFNRGpVc0FBUUVDWHdBQ0Fvc0NUQUVBRlJNT0RBY0ZBQmtCR1FVTkZDc0JJZ1lWRkJZek1qWTNGUVlHSXlJbU5UUTJOak15RndjbUpnRkZUVmRRVkNKRUpTSkdMb0IvUG5kVlYwc2pIVUVCMUdwZFhHb1BDMDhPQzVaL1VuMUdKRXdORkFBQUFBQUNBRllBQUFJY0Foc0FDQUFRQUI5QUhBQUNBZ0ZkQUFFQmhVc0FBd01BWFFBQUFJTUFUQ0VrSVNJRURSZ3JBUlFHSXlNUk16SVdCelFtSXlNUk16SUNISnlMbjdDQWxtVmZWMGs2eFFFU2lJb0NHNGVFWWx2K2dRQUFBQUlBSXdBQUFod0NHd0FNQUJnQVAwQThCUUVEQmdFQ0J3TUNaUWtCQkFRQVhRZ0JBQUNGU3dBSEJ3RmRBQUVCZ3dGTURnMEJBQlVURWhFUUR3MFlEaGdMQ2drSUJ3VUFEQUVNQ2cwVUt3RXlGaFVVQmlNak5TTTFNelVYSXhVekZTTVZNekkxTkNZQkJuK1huSXViTnplbVJYbDVOOFZmQWh1SGdvaUs1RTdwVHB0T2xzSmlXd0FCQUZZQUFBR1hBaHNBQ3dBcFFDWUFBd0FFQlFNRVpRQUNBZ0ZkQUFFQmhVc0FCUVVBWFFBQUFJTUFUQkVSRVJFUkVBWU5HaXNoSVJFaEZTTVZNeFVqRlRNQmwvNi9BVUhmMGRIZkFodE9qVTZrQUFBQkFDTC85Z0hTQWlVQUtRQktRRWNZQVFRRkZ3RURCQ01CQWdNRUFRRUNBd0VBQVFWS0FBTUFBZ0VEQW1jQUJBUUZYd0FGQlkxTEFBRUJBRjhHQVFBQWl3Qk1BUUFjR2hVVEVBNE5Dd2dHQUNrQktRY05GQ3NYSWlZbk54WVdNekkxTkNZakl6VXpNalUwSmlNaUJnYzFOall6TWhZV0ZSUUdCZ2NWRmhZVkZBYnhPbU1zSXloS0szZFRSamxFbVZNOE4yQWlJV0k4VTJzeklUY2dMemgxQ2hNVFVCQVNSU2tpVVZNdUpCb1FYQkFUSzBvc0tEVWZDQVVOT1RGR1NBQUNBRkwvTXdES0Foc0FBd0FQQUNsQUpnVUJBZ0FEQWdOakJBRUJBWVZMQUFBQWd3Qk1CUVFBQUFzSkJBOEZEd0FEQUFNUkJnMFZLeE1SSXhFVE1oWVZGQVlqSWlZMU5EYkRhalFaSkNRWkdDTWpBaHY5NVFJYi9aSWRJQ0VjSENFZ0hRQUFBUUF5Ly9ZQkV3SWJBQThBSzBBb0JBRUJBZ01CQUFFQ1NnQUNBb1ZMQUFFQkFHQURBUUFBaXdCTUFRQU1Dd2dHQUE4QkR3UU5GQ3NYSWlZbk5SWVdNekkyTlJFekVSUUdkUlFoRGhBZ0Rob29ZVmNLQndWT0JRVWdNZ0dEL29GWFR3QUFBQUVBVmdBQUFnTUNHd0FPQUNaQUl3ME1DUU1FQWdBQlNnRUJBQUNGU3dRREFnSUNnd0pNQUFBQURnQU9FaFVSQlEwWEt6TVJNeFUyTmpjM013Y1RJeWNIRlZaaUVSMEpuMi9VMm5HdExRSWI5UllpQ3JQcy90SHlKTTRBQVFBVkFBQUJvUUliQUEwQUxFQXBDZ2tJQndRREFnRUlBUUFCU2dBQUFJVkxBQUVCQWw0REFRSUNnd0pNQUFBQURRQU5GUlVFRFJZck16VUhKemNSTXhVM0Z3Y1ZNeFZYSFNWQ1lsUW1ldWl1RUQ0bkFSamdNRDlGbUU4QUFBQUFBUUJXQUFBQ2pnSWJBQlVBSjBBa0VBd0RBd0lBQVVvQkFRQUFoVXNGQkFNREFnS0RBa3dBQUFBVkFCVVdFUk1SQmcwWUt6TVJNeE16RXpNUkl4RTBORGNqQXlNREl4WVVGUkZXZzVZQ21vTmVBZ1dXVTVJRUFnSWIvbU1CbmYzbEFUVVlNQmYrYkFHVUdESWEvdEFBQUFFQVZnQUFBaUlDR3dBUkFCNUFHdzRGQWdJQUFVb0JBUUFBaFVzREFRSUNnd0pNRmhFV0VBUU5HQ3NUTXhFVUJnY3pBVE1SSXhFME5qY2pBU05XV2dJQkF3RURiMW9FQWdQKyszQUNHLzdkSEVRV0Fabjk1UUVnSUVFWC9tZ0FBQUlBTy8vNUFrUUNJd0FPQUJvQUgwQWNBQU1EQVY4QUFRR05Td0FDQWdCZkFBQUFpd0JNSkNRbUl3UU5HQ3NCRkFZR0l5SW1KalUwTmpZek1oWUZGQll6TWpZMU5DWWpJZ1lDUkR0MFZsaHpPVGwwV0lDRS9sMU1VbE5NVEZKU1RRRU9VMzFGUlg1VFUzeEZsMzVjYTJ0Y1hXbHBBQUFBQUFFQUkvLzVBYzRDSWdBYUFEZEFOQkVCQWdNUUJBSUJBZ01CQUFFRFNnQUNBZ05mQUFNRGpVc0FBUUVBWHdRQkFBQ0xBRXdCQUJVVERnd0lCZ0FhQVJvRkRSUXJGeUltSnpVV0ZqTXlOalUwSmlNaUJnY25Oall6TWhZVkZBWUd6UzVGSWlaQ0lrOVpWVkVpUUJ3akkxWXlnSUE4Y2djTERrOExEMnBkWEdrVERVc1JFNWQ5VW4xR0FBRC8vd0FTQUE4Q1FRSUpBWWNBVWdBY0FqMEFBTUFBUUFBQUFBQUpzUUFDdUFJOXNETXJBQUFBLy84QUh3QkZBazRCMndHSEFFWUFLUUlQQUFEQUFFQUFBQUFBQ2JFQUFiZ0NEN0F6S3dBQUFQLy9BQWdBRHdKaEFna0Jod0M2QUNvQ1BRQUF3QUJBQUFBQUFBbXhBQU80QWoyd015c0FBQUQvL3dBeC8vY0RpQUlsQVE4QkZBTzdBaHZBQUFBSnNRQUR1QUlic0RNckFBQUNBRG4vK1FIM0Foc0FIQUFvQURsQU5nOEVBZ1FDQVVvQUFnY0JCQVVDQkdjR0F3SUJBWVZMQUFVRkFHQUFBQUNMQUV3ZUhRQUFKQ0lkS0I0b0FCd0FIQ01ZS1FnTkZ5c0JGUlFHQnhZV0ZSUUdJeUltTlRRM0ppWTFOVE1WRkJZek1qWTFOUWNpQmhVVUZqTXlOalUwSmdIZUl5a3dOWFpxWlhsa0p5TmhNRFEwTVdVL096cy9QenM3QWh0R01VWVZFMHMzV0dOaldHd3FGRWd2UmtZdk9qb3ZSdnc0TXpRNU9UUXpPQUFBQUFFQU53RU5BajhDSkFBTkFDUkFJUU1CQVFJQmhBQUNBZ0JmQkFFQUFJMENUQUVBQ3dvSUJnUURBQTBCRFFVTkZDc0JNaFlWSXpRbUl5SUdGU00wTmdFOGVvbHZSMDVOU1c2RUFpU1dnVnhrWkZ5QWx3QUFBQUFCQURmLytBSS9BUTBBRFFBaFFCNEVBd0lCQWdHREFBSUNBRjhBQUFDTEFFd0FBQUFOQUEwaUVpSUZEUmNyQVFZR0l5SW1OVE1XRmpNeU5qVUNQd0dIZlgyR2JnRklUVTFJQVExL2xwWi9XMlJrV3dBQ0FGWUFBQUhJQWhzQUN3QVVBREpBTHdBRUFBRUNCQUZuQmdFREF3QmRCUUVBQUlWTEFBSUNnd0pNRFF3QkFCQU9EQlFORkFvSkNBWUFDd0VMQncwVUt4TXlGaFVVQmdZakl4VWpFUmNqRlRNeU5qVTBKdmR0WkNsaFV6TmltamdxUVVJNEFodFhUQzVRTWNrQ0cwNjNMREl0TEFBQUFBQUNBQlVBQUFIQkFoc0FEZ0FYQURoQU5RRUJBZ1FCU2djQkJBQUNBUVFDWlFBRkJRQmRBQUFBaFVzR0F3SUJBWU1CVEJBUEFBQVRFUThYRUJjQURnQU9FUkVuQ0EwWEt6TTNMZ0kxTkRZek14RWpOU01IRXpNMUl5SUdGUlFXRlpzYk1CNXJhS2RoVklpY1FFTTNPem5yQ2lRN0xVcFEvZVhYMXdFanFpVXJLeThBQUFBQ0FCVUFBQUhCQWhzQURnQVhBRHRBT0FjQkJRSUJTZ0FDQUFVRUFnVm5Bd0VCQVlWTEJ3RUVCQUJlQmdFQUFJTUFUQkFQQVFBVEVROFhFQmNOREFzS0NRZ0FEZ0VPQ0EwVUt5RWlKalUwTmpZM0p6TVhNelV6RVNjek5TTWlCaFVVRmdFYWFHc2VNQnViYjRoVVlhUkRRRHc1TzFCS0xqc2pDK3JXMXYzbFRhc3ZLeXNtQUFBQUFRQVZBQUFCdXdJYkFBY0FHMEFZQXdFQkFRSmRBQUlDaFVzQUFBQ0RBRXdSRVJFUUJBMFlLeUVqRVNNMUlSVWpBUmxob3dHbW9nSE1UMDhBQVFCUC8vZ0NGUUliQUJFQUlVQWVCQU1DQVFHRlN3QUNBZ0JmQUFBQWl3Qk1BQUFBRVFBUkloTWtCUTBYS3dFUkZBWUdJeUltTlJFekVSUXpNalkxRVFJVkwyUlJkMnRyZWo0NUFodit0VDFpT1hsaEFVbit0SUZFUFFGTUFBRC8vd0FtQUNjQ1N3SDZBWWNBVVFBbUFrMEFBTUFBUUFBQUFBQUpzUUFCdUFKTnNETXJBQUFBLy84QUZBQWtBdjRCK1FHSEFMNEM5UC9XQUFCQUFNQUFBQUFBQ2JFQUE3ai8xckF6S3dBQUFQLy9BQ2ovaFFKTkFwZ0Jod0JRQUNnQzZ3QUF3QUJBQUFBQUFBbXhBQUc0QXV1d015c0FBQUQvL3dBQUFBQUI1d0liQUVZQVdRQUFPMFZBQUFBQkFBb0FBQUxXQWhzQUtBQW5RQ1FpRWdZREF3QUJTZ0lCQWdBQWhVc0ZCQUlEQTRNRFRBQUFBQ2dBS0JFYkdoRUdEUmdyTXdNekV4WVdGek0rQWpjVE14TWVBaGN6UGdJM0V6TURJd011QXljakRnTUhBNUtJWWtBS0VnTUVBd29NQkU5cVRRVU1Dd0VFQWdvTkIwSmhpbTVIQlF3TUNBRUVBUWdNREFWS0Fodis3eXBnSEJJNE9CTUJJdjdlRlRZMkV4RTNRQjBCRWYzbEFRMFROVFlwQndjcE5qVVUvdlFBQUFELy93QWpBQUFCdHdJYkFnWUFYUUFBQUFFQUlmLzJBYjBDR3dBWkFFRkFQZ0VCQkFVV0FRQUVDd0VDQXdvQkFRSUVTZ0FBQUFNQ0FBTm5BQVFFQlYwR0FRVUZoVXNBQWdJQlh3QUJBWXNCVEFBQUFCa0FHUklrSkNRU0J3MFpLd0VWQnhZV0ZSUUdJeUluTlJZV016STJOVFFtSXlNMU55TTFBYWVvWlZseGQzQkVJMXd5UUV0TFVFR2c4d0liUkpRSFdVWkhZQ0pVRUJnc01pMHNSWTlNQUFFQUxmLzRBWjBDSWdBbUFEdEFPQkVCQVFJakd4b1FCd1lHQXdFa0FRQURBMG9BQVFFQ1h3QUNBbzFMQUFNREFGOEVBUUFBaXdCTUFRQWhIeFVURGd3QUpnRW1CUTBVS3hjaUpqVTBOamMxTmpZMU5DWWpJZ1lISnpZMk16SVdGUlFHQnhVR0JoVVVNekkyTnhVR0J2UmVhVXRNUWpZcUxDRS9JQm9rVVN0VlhFWkZTanBtS1ZjaUhsUUlSMFU0UkJNNkNpSWhHaDhTRGswUUVrazhOa01WUFFnbUlENFlEbE1PRXdBQkFCRC85Z0hzQWlNQUtBQXJRQ2diRlE0R0JBQUVGQWNDQVFBQ1NnQUVCSTFMQXdFQUFBRmZBZ0VCQVlzQlRDZ2xKU1VpQlEwWkt5VVdGak15TmpjVkJnWWpJaVltSndZR0l5SW1KelVXRmpNeU5qY21KalUwTmpZek1oWVdGUlFHQVQ4bE94SVRIUXNMSlJRWU1qb2xORkVtRXlVTUJ5RVBHRGttTWtBc1VEYzNVQ3hHbnpJb0JnUkxCd2NSTUM5RUxBY0hTd0lJSnpNMWJUb3dUQ3dzVERBN2NBQUFBQUFCQUZZQUFBR2pBaHNBQlFBZlFCd0FBQUFDWFFNQkFnS0ZTd0FCQVlNQlRBQUFBQVVBQlJFUkJBMFdLd0VWSXhFakVRR2o2MklDRzAvK05BSWJBQUFBQVFBS0FBQUI4UUliQUF3QUlVQWVDQUVCQUFGS0FBQUFoVXNEQWdJQkFZTUJUQUFBQUF3QURCRVJCQTBXS3pNVE14TWpBeVltSndZR0J3TUt3MkhEWlhVR0R3VUVEZ2QxQWh2OTVRRlNFalVXRmpZVC9yQUFBQUVBVmdBQUFnTUNHd0FIQUJ0QUdBQUJBUU5kQUFNRGhVc0NBUUFBZ3dCTUVSRVJFQVFOR0NzaEl4RWpFU01SSVFJRFllcGlBYTBCelA0MEFoc0FBUC8vQUZZQUFBSElBaHNDQmdVRUFBQUFBUUExQUFBQ1p3SWJBQmtBSzBBb0JnRUVBZ0VBQVFRQVp3Z0hCUU1EQTRWTEFBRUJnd0ZNQUFBQUdRQVpFUkVURkJFUkZBa05HeXNCRlJRR0JpTVZJelVpSmlZMU5UTVZGQll6RVRNUk1qWTFOUUpuSzJaYVhWbG1LMTlGUmwxRlJnSWJ0VGRhTnArZk5sazN0clJCT2dFdi90RTZQN1lBQVFBTy8vZ0I5Z0liQUJnQVVVQUtEUUVEQVF3QkFBTUNTa3V3SGxCWVFCWUFBUUVFWFFBRUJJVkxBQU1EQUY4Q0FRQUFnd0JNRzBBYUFBRUJCRjBBQkFTRlN3QUFBSU5MQUFNREFsOEFBZ0tMQWt4WnR4WWtKaEVRQlEwWkt5RWpFU01PQWdjR0JpTWlKelVXRmpNeU5qYytBamNoQWZaaWt3Y09FQWdSUGp3ZkhBNFlDeFlaRGdZUUZBb0JSZ0hNTTNWc0pWSkpDMDRHQnkxQkhIQ1FUUUFBQVAvL0FBQUJId0dvQXMwQlJ3QWtBQUFCSHltYUptWUFDYkVBQXJnQkg3QXpLd0FBQVAvLy8vOEJId0lqQXNzQlJ3Q0lBQUFCSHltYUptWUFDYkVBQXJnQkg3QXpLd0FBQVAvL0FENEJId0dJQXNzQlJ3QWxBQUFCSHltYUptWUFDYkVBQTdnQkg3QXpLd0FBQUFBREFBMEJId0dqQXNzQUZBQWRBQ1lBY2t1d0lsQllRQ1FHQWdJQURBa0tCUVFEQ0FBRFpRc0JCd2NCWFFBQkFhcExBQWdJQkYwQUJBU3VCRXdiUUNJQUFRc0JCd0FCQjJjR0FnSUFEQWtLQlFRRENBQURaUUFJQ0FSZEFBUUVyZ1JNV1VBZUhoNFZGUUFBSGlZZUpTRWZGUjBWSEJnV0FCUUFGQ1VSRkNFUkRROFpLeE0xTXpVek1oWVZGQWN6RlNNV0ZoVVVCaU1qTlRjVk16WTJOVFFtSXdjVk16STJOVFFtSXcweGlGaGNJRWs2RHhCWVRLWkdYUzBqTWpWR1ZUZ3RManNCNURXeUx6c3VHalVNSlJvNlFNV3hmQUloSFNBY3NZOHBJUjhtLy84QVBnRWZBYlVDeXdGSEFDY0FBQUVmS1pvbVpnQUpzUUFDdUFFZnNETXJBQUFBLy84QVBnRWZBVU1DeXdGSEFDZ0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUp3RWZBU3dDeXdGSEEzQUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUp3RVpBYWNDMFFGSEFDb0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QVBnRWZBYWdDeXdGSEFDc0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QUdRRWZBTTBDeXdGSEFDd0FBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy8vL3pnQ3BBSUVDeXdGSEFDMEFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QVBnRWZBWnNDeXdGSEFDNEFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QVBnRWZBVW9DeXdGSEFDOEFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QVBnRWZBaGNDeXdGSEFEQUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBLy84QVBnRWZBYnNDeXdGSEFERUFBQUVmS1pvbVpnQUpzUUFCdUFFZnNETXJBQUFBQUFFQVBnRWZBYm9DeXdBUkFENjJEd1lDQWdBQlNrdXdJbEJZUUE0QkFRQUFxa3NFQXdJQ0FxNENUQnRBRGdFQkFBQUNYUVFEQWdJQ3JnSk1XVUFNQUFBQUVRQVJFUllSQlE4WEt4TVJNeFVVQmdjekV6TVJJelUyTmpjakF6NUFBd0VDNmxSQUFRTUNBK29CSHdHczVoMUNFd0ZZL2xUa0lENFkvcVlBQUFELy93QW5BUmtCMXdMU0FVY0FNZ0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWxBUmtCb2dMTEFVY0Q4d0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QStBUjhCYmdMTEFVY0FNd0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QStBUjhCbFFMTEFVY0FOUUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QUlBUjhCWlFMTEFVY0FOd0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QTZBUmtCcGdMTEFVY0FPQUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QUZBUjhDWGdMTEFVY0FPZ0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QWRBUmtCUVFKb0FVY0FSQUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QTBBUmtCV0FKb0FVY0VJQUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWlBUmtCWFFKb0FVY0VJUUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWdBUmtDSHdKb0FVY0U3Z0FBQVI4cG1pWm1BQW14QUFPNEFSK3dNeXNBQUFELy93QTJBUmtCY1FMbkFVY0FSUUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWlBUmtCWFFMbkFVY0FSd0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWlBUmtCVkFKb0FVY0FTQUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWdBUmtCVWdKb0FVY0VLUUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWJBUmtCTVFKb0FVY0VLZ0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QVdBUmtCTHdKb0FVY0U5QUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QWlBSThCWFFKb0FVY0FTZ0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QTFBS1FBZ3dKaUFVY0U5UUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QTJBUjhCWndMbkFVY0FUZ0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QTJBUjhDTmdKb0FVY0FVQUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QTJBSThCWmdKb0FVY0JEQUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QWlBUmtCYXdKb0FVY0FVZ0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QVZBUmtCSFFKb0FVY0VKQUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QWtBY0FCZGdKb0FVY0ZBZ0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QWtBUm9CZGdIQUFVY0ZBd0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QTJBSThCY1FKb0FVY0FVd0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QU1BUmtBNlFLckFVY0FWd0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QXpBUmtCWkFKaUFVY0FXQUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QVpBVFlCZmdKUEFVY0ZDUUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QXpBUmtDTXdKaUFVY0VQQUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QUFBUjhCVmdKaUFVY0FXUUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QUtBUmtCUUFKbkFVY0ZFUUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QTJBSThCaFFMcUFVY0JmZ0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QURBSThCV0FKaUFVY0Jmd0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QWhBUmtCYWdMb0FVY0JnQUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWlBSThCd2dKb0FVY0JrZ0FBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy8vLzJBSThCYlFKbEFVY0Jrd0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QXgvNkFBZ0FGZUFVWUFUQUNnS1pvbVpnQUpzUUFDdVArZ3NETXJBUC8vQURiL29BRUpBT2tCUmdCVkFLQXBtaVptQUFteEFBRzQvNkN3TXlzQS8vOEFNLythQVdRQTR3RkdBRmdBb0NtYUptWUFDYkVBQWJqL29MQXpLd0QvL3dBQS82QUJWZ0RqQVVZQVdRQ2dLWm9tWmdBSnNRQUJ1UCtnc0RNckFQLy9BRGIvRUFHRkFXc0JSZ0YrQUtBcG1pWm1BQW14QUFLNC82Q3dNeXNBLy84QUEvOFFBVmdBNHdGR0FYOEFvQ21hSm1ZQUNiRUFBYmovb0xBekt3RC8vd0F2L3hBQmFnRHBBVVlCalFDZ0tab21aZ0FKc1FBQ3VQK2dzRE1yQVAvL0FDTC9FQUhDQU9rQlJnR1NBS0FwbWlabUFBbXhBQUs0LzZDd015c0EvLy8vOXY4UUFXMEE1Z0ZHQVpNQW9DbWFKbVlBQ2JFQUFiai9vTEF6S3dBQUFnQlAvL1lEZlFJbEFDY0FMZ0I1UUE4Z0FRZ0VEZ2NDQVFBSUFRSUJBMHBMc0JsUVdFQWlDZ0VKQUFBQkNRQm1BQWdJQkYwSEJnSUVCSVZMQlFFQkFRSmZBd0VDQW9zQ1RCdEFKZ29CQ1FBQUFRa0FaZ1lCQkFTRlN3QUlDQWRmQUFjSGpVc0ZBUUVCQWw4REFRSUNpd0pNV1VBU0tDZ29MaWd1SmlNVEloUWtKU0lRQ3cwZEt5VWhGaFl6TWpZM0ZRWUdJeUltSndZR0l5SW1KalVSTXhFVU16STJOUkV6RlRZMk16SVdGaFVuSmlZaklnWUhBMzMrbFFKVVN6UlJLeWxUT1VKa0loWlpSMDlqTDJwNlBqcHFHRVVyUldRM2FnRTdQemhGQnZkVFdCTVRXQk1STGpJb05qZGpRQUZKL3JTQlJEMEJUREFaSVR4dFN4US9UMHBFQUFBQy85Zi85Z0k0QXZnQU1BQThBTGxMc0JsUVdFQVdHZ0VHQkFvQkF3SW5BUWtES2dFS0NRWUJBQXNGU2h0QUZob0JCZ1FLQVFNQ0p3RUpBeW9CQ2drR0FRRUxCVXBaUzdBWlVGaEFMd0FHQ0FFRENRWURad0FGQllSTEFBSUNCRjhIQVFRRWdrc0FDZ29KWHdBSkNZMUxBQXNMQUY4QkFRQUFpd0JNRzBBekFBWUlBUU1KQmdObkFBVUZoRXNBQWdJRVh3Y0JCQVNDU3dBS0NnbGZBQWtKalVzQUFRR0RTd0FMQ3dCZkFBQUFpd0JNV1VBU096azBNaTh0RWhJaUVqSVNJeFFpREEwZEt3RVVCaU1pSmljakJ5TVJKaVlqSWdZSEl6WTJNeklXRnpVekZSWXpNalkzTXdZR0l5SW1KeFVVQmdjek5qWXpNaFlITkNNaUJnY1ZGQll6TWpZQ09IaGhQazBYQ0JST0Jna0ZGQllGT1FRM0xBVUxCV29OREJRVkJqa0VPQ3dHRFFZREFnVVhUajVoZDIyRVN6NEJPMUZCUVFFT2k0MHRIMElDZHdFREhSeEFSZ0VCTW1JRkd4MC9Sd01CQ1NBN0VpSXVoNHU4VzE0RlhXTmtBQUlBTlAvMkFwVUMrQUF2QUR3QXlrdXdHVkJZUUJRZUd3SUdCQ2tQQWdNQ0NRRUxBU3dCQUFvRVNodEFGQjRiQWdZRUtROENBd0lKQVFzQkxBRUpDZ1JLV1V1d0dWQllRREVBQmdnQkF3RUdBMmNBQlFXRVN3QUNBZ1JmQndFRUJJSkxBQXNMQVY4QUFRR05TdzBCQ2dvQVh3a01BZ0FBaXdCTUcwQTFBQVlJQVFNQkJnTm5BQVVGaEVzQUFnSUVYd2NCQkFTQ1N3QUxDd0ZmQUFFQmpVc0FDUW1EU3cwQkNnb0FYd3dCQUFDTEFFeFpRQ014TUFFQU9EWXdQREU4S3lvb0ppUWpJUjhkSEJvWUZoVVRFUWNGQUM4Qkx3NE5GQ3NGSWlZMU5EWXpNaFlYTXk0Q05UVW1KaU1pQmdjak5qWXpNaGMxTXhVV016STJOek1HQmlNaUp4RWpKeU1HQmljeU5qYzFOQ1lqSWdZVkZCWUJER0oyZUdJOVRoZ0dBUVFEQmd3SEZCVUdPUVE0TEE0TGFnc0tGQlVGT1FVMkxRa0xVeElGRjA0bFRqOEJQVkpCUWtJS2pJcUlqaTRoQmlBbERVb0NCQjBjUUVZRU5HUURIQncvUndQOXVrZ2lNRmRXV0JCY1pHZGFXMklBQUFILzhBQUFBWkFDL1FBd0FKbEFHUmNCQlFRWUVBSUdCUThCQXdZaURBSUlBaThCQWdFQUJVcExzQ1pRV0VBdUNRRUNBQUFCQWdCbkFBZ0tBUUVMQ0FGbkFBVUZCRjhBQkFTRVN3Y0JBd01HWFFBR0JvVkxEQUVMQzRNTFRCdEFMQUFFQUFVR0JBVm5DUUVDQUFBQkFnQm5BQWdLQVFFTENBRm5Cd0VEQXdaZEFBWUdoVXNNQVFzTGd3dE1XVUFXQUFBQU1BQXdMQ3NwS0NNUkVpVWxFaUlTSWcwTkhTc3pOU1lqSWdZSEl6WTJNeklYTlNNMU56VTBOak15RmhjSEppWWpJaFVWTXhVakZSWVdNekkyTnpNR0JpTWlKaWNWYXdzSUZCWUVPZ1E0TEFvSlcxdGZWU002RkJzUktoWlBoWVVHRFFjVEZnWTVCRGN0Qmc0Ry9RTWNIRDlIQTM4eUlTSm5Wd3dIVVFVSmFTTlJyZ0lFSEIwL1J3SUR6Z0FBQUFQLzdBQUFBODhDSlFBckFEUUFQZ0NkUUJrS0FRb0JPeXdZQndRTkJDY2tIZ0VFQUFnRFNoQUJDZ0ZKUzdBWlVGaEFLUXNCQkFBSUFBUUladzhCRFFZQkFBVU5BR2NNQVFvS0FWOERBZ0lCQVlWTERna0hBd1VGZ3dWTUcwQXRDd0VFQUFnQUJBaG5Ed0VOQmdFQUJRMEFad0FCQVlWTERBRUtDZ0pmQXdFQ0FvMUxEZ2tIQXdVRmd3Vk1XVUFlTlRVQUFEVStOVDQ1TnpNeU1DNEFLd0FyRXhNUkV4WWtKQk1VRUEwZEt6TTFCZ1lISXpZM05UTVhNelkyTXpJWE16WTJNeklXRlJVMk5qY3pCZ2NWSXpVbUppY1ZJelVtSmljVkV6VTBJeUlHQnhZV0JUVTBJeUlHRlJVV0ZsTVlFd001QzF4VUR3WVpWVEI4S0FnYVhETmJYQllXQkRrSllHbzFka0JwUG5VNDYyWkFQQWMzZEFHU1pVZytPbmIyQmg0VGFCamNTQ29vVnl3clhtaFRCaHdYYWhqRHV3RUxDZERmQ2cwRCtRRXNKWDFIUXdJTkwwdDlXRlFHQ0F3QUFBTC83QUFBQW8wQ0pRQWhBQ29Bbmt1d0dWQllRQkVlQVFZQUtDVWJGQkVPQ3dRSUJBRUNTaHRBRVI0QkJnVW9KUnNVRVE0TEJBZ0VBUUpLV1V1d0dWQllRQ01BQVFZRUJnRUVmZ0FFQWdZRUFud0lBUVlHQUY4RkJ3SUFBSTFMQXdFQ0FvTUNUQnRBSndBQkJnUUdBUVIrQUFRQ0JnUUNmQUFGQllWTENBRUdCZ0JmQndFQUFJMUxBd0VDQW9NQ1RGbEFHU01pQVFBaUtpTXFIUndZRnhNU0RRd0lCd0FoQVNFSkRSUXJBVElXRlJVMk5qY3pCZ1lIRlNNMUppWW5GU00xQmdZSEl6WTJOelV6RnpNMk5oY2lCZ2NXRmhjMU5BRmtYbVFYRkFNNUF6VXZhVUdFTzJvWkV3STVCRFl0VkE4R0dsc2RSa0VJUElNL0FpVmVhRlFGSGhjNlFBbkN3Z2dqQ2ZiNEJoMFdPa0FLMkVncUtGZElRd2dqQ2tKK0FBTC8xZjhRQWpnQ0pRQXVBRHNBb0VBVUVBRUxBeDBCQlFvaURRSUdBaTBCQWdFQUJFcExzQmxRV0VBdkJ3RUNBQUFCQWdCbkFBWUlBUUVKQmdGbkFBc0xBMThFQVFNRGhVc05BUW9LQlY4QUJRV0xTd3dCQ1FtSENVd2JRRE1IQVFJQUFBRUNBR2NBQmdnQkFRa0dBV2NBQXdPRlN3QUxDd1JmQUFRRWpVc05BUW9LQlY4QUJRV0xTd3dCQ1FtSENVeFpRQm93THdBQU5qUXZPekE3QUM0QUxpSVNLQ1FrRWlJU0l3NE5IU3NYTlNZbUl5SUdCeU0yTmpNeUZ4RXpGek0yTmpNeUZoVVVCaU1pSmljakZoWVZGUll6TWpZM013WUdJeUluRlJNeU5qVTBKaU1pQmdjVkZCWlRCZ3NGRkJZRk9RUTNMQXdMVmc4RkYwMC9Zblo0WVQ1TkZnY0JCUXNNRkJVR09RUTRMQXdMakVKQVFVTkxQZ0U4OEhJQ0Fod2NQMGNEQWtwSUlqQ01pNG1QTFI0Uk1CUktCaHdkUDBjRFFnRTliRmRZWmxaWkVGNWtBQUFCLzlVQUFBR1lBaVVBS3dDZlM3QVpVRmhBRkJnUkFnSUZId0VHQWlvQkFnRUFBMG9YQVFOSUcwQVVGd0VEQkJnUkFnSUZId0VHQWlvQkFnRUFCRXBaUzdBWlVGaEFKQWNCQWdBQUFRSUFad0FHQ0FFQkNRWUJad0FGQlFOZkJBRURBNFZMQ2dFSkNZTUpUQnRBS0FjQkFnQUFBUUlBWndBR0NBRUJDUVlCWndBREE0VkxBQVVGQkY4QUJBU05Td29CQ1FtRENVeFpRQklBQUFBckFDc2lFaVVqSkJRU0VpTUxEUjByTXpVbUppTWlCZ2NqTmpZek1oWVhOVE1YTXpZMk16SVhCeVlqSWdZR0ZSVVdNekkyTnpNR0JpTWlKeFZUQmdvR0V4WUZPZ1UzTEFVTUJWUU9CQmxVTnlBYkN4b2NLVVlyREF3VEZnWTRCRGN0REF2ZUFnSWNIRDlIQWdIdVlDcy9CV01IS0VzMUhnWWNIVDlIQTY0QUFBSC8xQUFBQVZZQ0pnQXBBRXRBU0JRQkJBTVZBUUlFR3cwQ0JRSW9BUUlCQUFSS0JnRUNBQUFCQWdCbkFBVUhBUUVJQlFGbkFBUUVBMThBQXdPTlN3a0JDQWlEQ0V3QUFBQXBBQ2tTRWlRbEpDSVNJd29OSENzek5TWW1JeUlHQnlNMk5qTXlGelUwTmpNeUZoY0hKaVlqSWhVVkZoWXpNalkzTXdZR0l5SW1KeFZRQlFvRkZCVUZPZ1E0TEFzSldrNFpNUlFNRGlNWlJ3Y05CeFFWQmprRU9Dd0hEZ2JlQWdJY0hEOUhBMGhrVFFvR1dRUUpXSFFDQkJ3ZFAwY0NBN0FBQUFBQi8vdi85Z0hwQWlVQU53Qm5RR1FmQVFVRUlBRUhCUmNCQmdjekFRTUNCQUVCQXdNQkFBRUdTZ0FIQlFZRkJ3WitBQVlDQlFZQ2ZBQUNBd1VDQTN3QUF3RUZBd0Y4QUFVRkJGOEFCQVNOU3dBQkFRQmZDQUVBQUlzQVRBRUFNVEF1TFNRaUhSc1VFeEVQQ0FZQU53RTNDUTBVS3hjaUppYzFGaFl6TWpZMU5DWW5KaVlqSWdZSEl6WTJOeVkxTkRZek1oWVhCeVltSXlJR0ZSUVdGaGNXRmhjMk5qY3pCZ2NXRlJRRzNqbFJJaU5mTFR3MU1rWVFQaHdkR2dVNUF5UWlFM0ZkTVZjcEl5TktKakF5RnprekZUQVNGeUVIT0FnM0QzTUtFQkZkRVJzbUlCc3NIQWNQSFJ3eFFBd2RMRVpMRkJKUkR4VWZHaE1kR3hNSUV3c0JGU1JmR3hra1VGSUFBQUFBQWYvay8vWUJaZ0tVQURNQVowQmtGUUVFQmgwQkNBTUZBUUlCTUNzQ0N3SXhBUUFMQlVvQUJRWUZnd2tCQXdBQkFnTUJad0FJQ2dFQ0N3Z0Nad2NCQkFRR1hRQUdCb1ZMQUFzTEFHQU1BUUFBaXdCTUFRQXZMU2NtSkNNaEh4d2JHaGtZRnhRVER3NE1Dd2tIQURNQk13ME5GQ3NYSWlZbU5UVW1KaU1pQmdjak5qWXpNaFlYTlNNMU56Y3pGVE1WSXhVV0ZqTXlOamN6QmdZaklpWW5GUlFXTXpJM0ZRWUcvaXhKTEFVSUJCUVdCVGtFTnkwRUNBVkxUeVZCbXBvSERnY1RGZ1k1QlRZdEJ3OEdLeU10SkJFNkNoNUtRbUVCQVIwY1FFY0JBWHN3S0hKNVVha0RCUjBjUDBnRUFpOHNLZzFRQ0FzQUFBQUJBQmtBQUFHOEFoc0FKQUN4UzdBdFVGaEFGQUVCQ0FraEFnSUFBUlVQQWdJRkZBRUVBd1JLRzBBVUFRRUlDU0VDQWdBQkZROENCZ1VVQVFRREJFcFpTN0F0VUZoQUtBY0JBUUFGQWdFRlp3QUFCZ0VDQXdBQ1p3QUlDQWxkQ2dFSkNZVkxBQU1EQkY0QUJBU0RCRXdiUURZQUFRY0FCd0VBZmdBR0JRSUZCZ0orQUFjQUJRWUhCV2NBQUFBQ0F3QUNad0FJQ0FsZENnRUpDWVZMQUFNREJGNEFCQVNEQkV4WlFCSUFBQUFrQUNRVEloRWtFUk1pRWlRTERSMHJBUlVIRmhZek1qWTNNd1lHSXlJbUp3Y2hGU0UxTnlZbUl5SUhJelkyTXpJV0Z6Y2hOUUd2Z0FrU0NoUVZCamtFT0M0VUtSUmlBUmorYkljS0ZBb21DamtFTnl3V0xCVmkvdnNDRzB1MUFnTWNIVDlIQ3dpS1VrTzlBd1E1UUVZTkNJcFNBQUQvL3dCVC8vWUNPQU1MQVE4QVNnSnNBaHZBQUFBSnNRQUN1QUlic0RNckFQLy9BRFlCSHdGdEFtSUJSd0hXQUFBQkh5bWFKbVlBQ2JFQUFiZ0JIN0F6S3dBQUFBQUNBQ0QvRUFJYUFoc0FGUUFoQUVKQVB3RUJBUUlTRVJBQ0JBTUJBa29HQVFNQkJBRURCSDRBQVFFQ1hRVUJBZ0tGU3dBRUJBQmZBQUFBaHdCTUZ4WUFBQjBiRmlFWElRQVZBQlVaS0FjTkZpc0JGUWNYRmhZVkZBWWpJaVltTlRRMk55YzFOeUUxRXlJR0ZSUVdNekkyTlRRbUFmamliVTVKaW5WSmNVRjJaMSs2L3VuYlNVWkZTMHBHUmdJYlM1UkNMM0ZXZElBNGJFNW9kZ28vSkhoVy9vTlNTVWxXVmtsSlVnQUFBUUFTLzdVRHBRTDRBRGtCQlV1d0cxQllRQmNWQVFJQkdoSUhBd0FDTVN3Q0NnQTRNZ0VEQndvRVNodEFGeFVCQmdFYUVnY0RBQUl4TEFJS0FEZ3lBUU1IQ2dSS1dVdXdHVkJZUUM0QUFRUUNCQUVDZmcwQkRBY01oQVVCQkFTRVN3Z0RBZ0FBQWw4R0FRSUNoVXNBQ2dvSFhRc0pBZ2NIZ3dkTUcwdXdHMUJZUURJQUFRUUNCQUVDZmcwQkRBc01oQVVCQkFTRVN3Z0RBZ0FBQWw4R0FRSUNoVXNKQVFjSGcwc0FDZ29MWHdBTEM0c0xUQnRBUFFBQkJBWUVBUVorRFFFTUN3eUVCUUVFQklSTENBTUNBQUFHWHdBR0JvMUxDQU1DQUFBQ1hRQUNBb1ZMQ1FFSEI0TkxBQW9LQzE4QUN3dUxDMHhaV1VBWUFBQUFPUUE1TmpRd0xpc3FJaE1tRWhVUkVSTVZEZzBkS3hjM0ppWTFFU00xTnpjekZUTVZJeEVVRndFUk14VTNNd01HQnpNMk5qTXlGaFVSSXhFMEl5SUdGUkVqRVFNV016STNGUVlHSXlJbUp3Y2tXeEFTUzA4bFFacWFBd0VJYW4xVzFnSUJCeGxZTTE5bGFXOVRQbXJjRGhFdEpCRTZIUk1sRUR4TGN4TThLUUVxTUNoeWVWSCsyQThOQVU0QkpKNmUvdkVOQ2lrcFhtZitvUUZRZm1SYi92RUJhUDdwQlExUUNBc0ZCa3dBQUFBQkFCOEFBQUV0QWhzQUV3QTNRRFFTRVE0TkJBTUVDQWNFQXdRQkFBSktCZ1VDQXdJQkFBRURBR1lBQkFTRlN3QUJBWU1CVEFBQUFCTUFFeE1SRXhNUkJ3MFpLd0VWSXhVWEZTRTFOelVqTlRNMUp6VWhGUWNWQVNkTVV2N3lVa3hNVWdFT1VnRkJUcUVZT2pvWW9VNkhHVG82R1ljQUFBQUJBQVQvOWdGWkFoc0FGd0EzUURRSUFRRUFDUUVDQVFKS0J3WUNCQU1CQUFFRUFHVUFCUVdGU3dBQkFRSmZBQUlDaXdKTUFBQUFGd0FYRVJFVUpTSVJDQTBhS3dFVkl4VVVNekkyTnhVR0JpTWlKaVkxTlNNMU16VXpGUUVuYlVvV0x4QVJPUjR1U0NwTlRXa0JRVTVSVmdnRlVBZ0xIa3BEVWs3YTJnQUFBQU1BQi84UUFtd0NKUUFjQUNNQUtnQ3NTN0FaVUZoQUNoa0JDQUFNQVFNS0Frb2JRQW9aQVFnSERBRURDZ0pLV1V1d0dWQllRQ29KQmdJQkN3VUNBZ29CQW1VTkFRZ0lBRjhIREFJQUFJMUxEZ0VLQ2dOZkFBTURpMHNBQkFTSEJFd2JRQzRKQmdJQkN3VUNBZ29CQW1VQUJ3ZUZTdzBCQ0FnQVh3d0JBQUNOU3c0QkNnb0RYd0FEQTR0TEFBUUVod1JNV1VBbkpTUWVIUUVBS0Nja0tpVXFJU0FkSXg0akdCY1dGUlFURWhFS0NBWUZCQU1BSEFFY0R3MFVLd0V5RmhjekZTTUdCaU1pSmljakZoWVZGU01SSXpVek5UTVhNelkyRnlJR0J5RW1KZ015TmpjaEZoWUJZRmh6Q3pZMUJuVmRQVTRYQndJRmFreE1WZzhGRjAwbVF6OEdBUWtJUURjOFFBWCs5QU0rQWlWemNVNThnUzBmRWpFVDNBSGpUdHBJSWpCWFJrZENTLzUvVzB0UVZnQUNBQWYvK0FKZkFoc0FGZ0FmQUVGQVBnWUVBZ0lKQndJQkNBSUJaUVVCQXdPRlN3c0JDQWdBWHdvQkFBQ0xBRXdZRndFQUhCc1hIeGdmRWhFUUR3NE5EQXNLQ1FnSEJnVUFGZ0VXREEwVUt3VWlKaVkxTlNNMU16VXpGVE0xTXhVekZTTVZGQVlHSnpJMk5UVWpGUlFXQVRGT1l6QkpTV3Z4YWtsSk1HVk1QVHJ4UEFnMlhqc3pUdFBUMDlOT05EaGVPRlpDTmpRME9UOEFBQUFDQUFmLzlnSmpBaHNBSkFBckFGaEFWUmNRQWdJREJBRUpDQUpLQndFSUFVa0hCQUlCQ2dFSUNRRUlaUVlCQWdJRFhRVUJBd09GU3d3QkNRa0FYd3NCQUFDTEFFd21KUUVBS1NnbEt5WXJJU0FmSGhzYUdSZ1VFdzhPRFF3SkNBQWtBU1FORFJRckJTSW1KalUwTlNNMU16WTJOeU0xTXhVR0JnY2hKaVluTlRNVkl4WVdGek1WSXhVVUJpY3lOalVoRmhZQk5FeHpRUzA0Q3pFaGYvTWxPQTBCSFEwNUpQUitJUzhNT0MyTGRrMU0vczhCU3dvOGNFd0RBazRyUVJsVlVSSkdNUzlKRVZGVkdrSXBUZ04waGxaYVRVMWFBQUFDQUZQL01RSTRBdmdBSlFBeEFLWkxzQmxRV0VBVUJBRUdBQ0VjRGdNREJ4VUJBZ01VQVFFQ0JFb2JRQmNFQVFZQUlRNENCQWNjQVFNRUZRRUNBeFFCQVFJRlNsbExzQmxRV0VBa0FBSUFBUUlCWXdnQkJRV0VTd2tCQmdZQVh3QUFBSTFMQUFjSEExOEVBUU1EaXdOTUcwQW9BQUlBQVFJQll3Z0JCUVdFU3drQkJnWUFYd0FBQUkxTEFBUUVnMHNBQndjRFh3QURBNHNEVEZsQUZpY21BQUF1TENZeEp6RUFKUUFsRkNRbEp5Y0tEUmtyRXhVVUJnY3pOall6TWhZVkZBWUhGUlFqSWlZbk5SWVdNekkyTlRVR0l5SW1KeU1ISXhFVElnWUhGUlFXTXpJMk5UUzlBd0lGRjA0K1lYY2tJSHdVSWd3SkdnNFhHaHNlUGswWENCUk85RTA4QVR0UlFVRUMrTGNnUFJBaUxveUtTbTBqZFk0SEJWSURCaGtkUVFjdEgwSUMrUDdXVzE0SVhXTmtYcjhBQUFJQU5QOHhBa2NDK0FBa0FERUEvRXV3R1ZCWVFCSUpBUWdCSVFFQUF4Z0JCUUFYQVFRRkJFb2JTN0FpVUZoQUVna0JDQUVoQVFZREdBRUZBQmNCQkFVRVNodEFFZ2tCQ0FFaEFRWUhHQUVGQUJjQkJBVUVTbGxaUzdBWlVGaEFKUUFGQUFRRkJHUUFBZ0tFU3dBSUNBRmZBQUVCalVzS0J3SURBd0JmQmdrQ0FBQ0xBRXdiUzdBaVVGaEFLUUFGQUFRRkJHUUFBZ0tFU3dBSUNBRmZBQUVCalVzQUJnYURTd29IQWdNREFGOEpBUUFBaXdCTUcwQXdBQU1JQndnREIzNEFCUUFFQlFSa0FBSUNoRXNBQ0FnQlh3QUJBWTFMQUFZR2cwc0tBUWNIQUY4SkFRQUFpd0JNV1ZsQUhTWWxBUUF0S3lVeEpqRWdIeHdhRlJNUkVBOE9Cd1VBSkFFa0N3MFVLd1VpSmpVME5qTXlGaGN6SmlZMU5UTVJNeFVVSXlJbUp6VVdGak15TmpVMUl5Y2pCZ1luTWpZM05UUW1JeUlHRlJRV0FReGlkbmhpUFU0WUJnSUdhaTU4RkNJTUNSa1BGeG9sRWdVWFRpVk9Qd0U5VWtGQ1FncU1pb3VPTGlFT05oVEsvVnlWamdjRlVnTUdHUjFFU0NJd1YxWllFRjlrYUZ4YllnQUFBUUFRL3pFQmtBTDlBQ1VBbEVBWEZ3RUZCQmdRQWdZRkR3RURCZ1FCQVFJREFRQUJCVXBMc0NaUVdFQXJBQWdEQWdNSUFuNEFBUWtCQUFFQVpBQUZCUVJmQUFRRWhFc0hBUU1EQmwwQUJnYUZTd0FDQW9NQ1RCdEFLUUFJQXdJRENBSitBQVFBQlFZRUJXY0FBUWtCQUFFQVpBY0JBd01HWFFBR0JvVkxBQUlDZ3dKTVdVQVpBUUFqSWlFZ0h4NGNHaFVURGcwTUN3Z0dBQ1VCSlFvTkZDc1hJaVluTlJZV016STJOVFVqRVNNMU56VTBOak15RmhjSEppWWpJaFVWTXhVakVUTVZGSVlVSWd3SkdnOFhHVHRiVzE5Vkl6b1VHeEVxRmsrRmhTN1BCd1ZTQXdZWkhVUUJ5akloSW1kWERBZFJCUWxwSTFIK2lwV09BQUFBQUFJQU5QOFFBd1lDSlFBeEFENEExa3V3R1ZCWVFCb0RBUWtBS0FFRkNnOEJCQWdlQVFjRURnRURCeDBCQmdNR1NodEFHZ01CQ1FFb0FRVUtEd0VFQ0I0QkJ3UU9BUU1ISFFFR0F3WktXVXV3R1ZCWVFESUFBZ0FGQ0FJRlpRQUVBQU1HQkFObkRBRUpDUUJmQVFzQ0FBQ05Td0FLQ2doZkFBZ0lpMHNBQndjR1lBQUdCb2NHVEJ0QU5nQUNBQVVJQWdWbEFBUUFBd1lFQTJjQUFRR0ZTd3dCQ1FrQVh3c0JBQUNOU3dBS0NnaGZBQWdJaTBzQUJ3Y0dZQUFHQm9jR1RGbEFJVE15QVFBNU56SStNejR0S3lJZ0d4a1hGaE1SREFvSUJ3WUZBREVCTVEwTkZDc0JNaFlYTXpjekVUTVZGQ01pSmljMUZoWXpNalkxTlNNVkZDTWlKaWMxRmhZek1qWTFOVFEyTnlNR0JpTWlKalUwTmhjaUJoVVVGak15TmpVMU5DWUJEVFJVSFFVTVZ1MThGQ01MQ1JrUEZ4cVIrVHBpS1Nwbk9rRkpBZ0VFSEZFMVpuTnpmRDlEUTBGS1JVWUNKU2dwUi81Z3NvOElCVklEQmhrZFpqUHBFQkZkRlJWTFJCSU5LZ3NxSjVPRGdwZFlZMTllWWxGY0ZHaFpBQUVBVS84eEFpd0MrQUFoQUVSQVFSNGRDd1FFQVFBVUFRTUVFd0VDQXdOS0FBRUFCQUFCQkg0QUF3QUNBd0prQndFR0JvUkxBQUFBaFVzRkFRUUVnd1JNQUFBQUlRQWhFeE1sSWhJWkNBMGFLeE1SRkFZSE16WTJOemN6QnhjekZSUWpJaVluTlJZV016STJOVFVqSndjVkl4RzhCQUVEQ3ljUHBYdlpxVUY4RkNJTUNSb1BGaG9rc2o1cEF2aitoQlE0Rmc4eEVMSG40WlNPQndWU0F3WVpIVVR4TkwwQytBQUFBQUFCQUN6L01RRHJBdmdBRWdBMVFESUpBUUlEQ0FFQkFnSktBQUFFQXdRQUEzNEFBZ0FCQWdGa0JRRUVCSVJMQUFNRGd3Tk1BQUFBRWdBU0V5VWlFUVlOR0NzVEVUTVZGQ01pSmljMUZoWXpNalkxTlNNUnZTNTlGQ0lNQ1JvUEZ4azdBdmo5VzVTT0J3VlNBd1laSFVRQytBQUFBQUVBVS84eEE1TUNKUUF3QUk1QUV4OEJBd2NFQVFFQ0F3RUFBUU5LSlFFREFVbExzQmxRV0VBbEFBb0RBZ01LQW40QUFRc0JBQUVBWkFVQkF3TUhYd2tJQWdjSGhVc0dCQUlDQW9NQ1RCdEFLUUFLQXdJRENnSitBQUVMQVFBQkFHUUFCd2VGU3dVQkF3TUlYd2tCQ0FpTlN3WUVBZ0lDZ3dKTVdVQWRBUUF1TFNvb0pDSWVIUndiR0JZVUV4QU9EQXNJQmdBd0FUQU1EUlFyQlNJbUp6VVdGak15TmpVMUl4RTBJeUlHRlJFakVUUWpJZ1lWRVNNUk14Y3pOall6TWhjek5qWXpNaFlWRVRNVkZBTVhGQ0lNQ1JvUEZ4azdaVWcrYVdaTU9XcFVEd1laVlRCOEtBZ2FYRE5iWEMzUEJ3VlNBd1laSFVRQlVYMVpVLzdlQVZGOVlseis4QUliU0Nvb1Z5d3JYbWorOUpTT0FBRUFVLzh4QWxRQ0pRQWlBSDFBRGhjQkF3VUVBUUVDQXdFQUFRTktTN0FaVUZoQUlnQUhBd0lEQndKK0FBRUlBUUFCQUdRQUF3TUZYd1lCQlFXRlN3UUJBZ0tEQWt3YlFDWUFCd01DQXdjQ2ZnQUJDQUVBQVFCa0FBVUZoVXNBQXdNR1h3QUdCbzFMQkFFQ0FvTUNURmxBRndFQUlCOGNHaFlWRkJNUURnd0xDQVlBSWdFaUNRMFVLd1VpSmljMUZoWXpNalkxTlNNUk5DTWlCaFVSSXhFekZ6TTJOak15RmhVUk14VVVBZGdVSXdzSkdROFhHanR2VWo5cVZBOEdHbHN6WG1RdXp3Y0ZVZ01HR1IxRUFWQitZbHorOEFJYlNDb29YbWorOUpTT0FBQUFBQUlBVS84UUFqZ0NKUUFsQURJQXFrdXdHVkJZUUJRaUFRWUFHUlFHQXdNSERRRUNBd3dCQVFJRVNodEFGQ0lCQmdVWkZBWURBd2NOQVFJRERBRUJBZ1JLV1V1d0dWQllRQ1VBQWdBQkJBSUJad2tCQmdZQVh3VUlBZ0FBalVzQUJ3Y0RYd0FEQTR0TEFBUUVod1JNRzBBcEFBSUFBUVFDQVdjQUJRV0ZTd2tCQmdZQVh3Z0JBQUNOU3dBSEJ3TmZBQU1EaTBzQUJBU0hCRXhaUUJzbkpnRUFMaXdtTWljeUlTQWZIaGNWRVE4S0NBQWxBU1VLRFJRckFUSVdGUlFHQnhVVUl5SW1KelVXRmpNeU5qVTFCaU1pSmljakZoWVZGU01STXhjek5qWVhJZ1lIRlJRV016STJOVFFtQVdCaWRpUWdmQlFpREFrYURoY2FHeDQ5VGhjSEFnVnFWZzhGRjAwbVN6NEJQRkJDUUVFQ0pZeUxTVzRqZFk0SEJWSURCaGtkUVFjdEh4SXhFOXdEQzBnaU1GZFdXUkJlWkd4WFdHWUFBQUFCQUN6L01RR1lBaVVBSUFDYVM3QVpVRmhBRXdJQkFRQWRBd0lDQVJJQkJBVVJBUU1FQkVvYlFCTUNBUVlBSFFNQ0FnRVNBUVFGRVFFREJBUktXVXV3R1ZCWVFDRUFBZ0VGQVFJRmZnQUVBQU1FQTJRQUFRRUFYd1lIQWdBQWpVc0FCUVdEQlV3YlFDVUFBZ0VGQVFJRmZnQUVBQU1FQTJRQUJnYUZTd0FCQVFCZkJ3RUFBSTFMQUFVRmd3Vk1XVUFWQVFBY0d4b1pGaFFQRFFzS0JnUUFJQUVnQ0EwVUt3RXlGd2NtSXlJR0JoVVZNeFVVSXlJbUp6VVdGak15TmpVMUl4RXpGek0yTmdGZElCc0xHaHdwUmlzdWZSUWlEQWthRHhjWk8xUU9CQmxVQWlVRll3Y29TelhKbEk0SEJWSURCaGtkUkFJYllDcy9BQUFCQURIL01RRzVBaVVBT1FCTVFFa0RBUUVBS1FRQ0JRRW9JaFFEQkFVYkFRTUVHZ0VDQXdWS0FBTUFBZ01DWXdBQkFRQmZCZ0VBQUkxTEFBVUZCRjhBQkFTTEJFd0JBQzBySmlRZkhSZ1dDQVlBT1FFNUJ3MFVLeE15RmhjSEppWWpJaFVVRmhZWEhnSVZGQVlIRlJRaklpWW5OUllXTXpJMk5UVUdCaU1pSmljMUZoWXpNalkxTkNZbUp5NENOVFEyL3pGWEtTTWpTaVppRnprek1VY21HaGg5RkNJTUNSb1BGeGtSSnhRNVVTSWpYeTA4TlJRM05UUkhKbkVDSlJRU1VROFZPUk1jSEJRVEtUb3NKamtVWm80SEJWSURCaGtkUVFNRUVCRmRFUnNtSUJJZEh4UVVLam9zUmtzQUFBQUIvK1AvRUFHcUF2NEFMUUNMUUJvREFRRUFCQUVDQVJNQkJBVWpBUWNFRWdFREJ5SUJCZ01HU2t1d0pGQllRQ1lBQWdBRkJBSUZaUUFFQUFNR0JBTm5BQUVCQUY4SUFRQUFoRXNBQndjR1h3QUdCb2NHVEJ0QUpBZ0JBQUFCQWdBQlp3QUNBQVVFQWdWbEFBUUFBd1lFQTJjQUJ3Y0dYd0FHQm9jR1RGbEFGd0VBSnlVZ0hoc2FGeFVRRGd3TENBWUFMUUV0Q1EwVUt4TXlGaGNWSmlZaklnWVZFVE1WRkNNaUppYzFGaFl6TWpZMU5TTVZGQVlqSWlZbk5SWVdNekkyTlJFME5qYmpHQ2NMQ0I0T0hSL3RmQlFpREFrYURoY2FrVTVDRmlnTUNod1BIQjhsUVFMK0NnWlJCQWNqTS80cHZJNEhCVklEQmhrZGNIRmJVQWdJVVFVR0pERUNta0JLSHdBQUFRQUEvekVDRGdJYkFCd0FQVUE2RWdFRkF3UUJBUUlEQVFBQkEwb0FBUVlCQUFFQVpBUUJBd09GU3dBRkJRSmRBQUlDZ3dKTUFRQWFHUmdYRGcwTUN3Z0dBQndCSEFjTkZDc0ZJaVluTlJZV016STJOVFVqQXpNVEZoWVhNelkyTnhNekF6TVZGQUZuRkNJTUNSb09GeHE3ekhCd0NoY0RCQVFZQ25Cd3I0VFBCd1ZTQXdZWkhVUUNHLzdGSUV3WkdVMGZBVHYrTjVPT0FBQUFBUUFPL3pFQ0NBSWJBQm9BUUVBOUdSWVRBUVFBQlFvQkFnTUpBUUVDQTBvQUFBVURCUUFEZmdBQ0FBRUNBV1FIQmdJRkJZVkxCQUVEQTRNRFRBQUFBQm9BR2hJU0V5VWlFZ2dOR2lzQkF4Y3pGUlFqSWlZbk5SWVdNekkyTlRVakp3Y2pFd016RnpjQ0NMZUdNSHdVSWd3SkdnNFhHaEtKaW5qQXQzbUFnQUliL3ZpL2xZNEhCVklEQmhrZFJNN09BUk1CQ01MQ0FBQUJBQ1AvTVFHM0Foc0FGZ0JBUUQwQkFRUUZFd0VEQUFvQkFnTUpBUUVDQkVvQUFnQUJBZ0ZqQUFRRUJWMEdBUVVGaFVzQUFBQURYUUFEQTRNRFRBQUFBQllBRmhJVEpTSVNCdzBaS3dFVkFTRVZGQ01pSmljMUZoWXpNalkxTlNFMUFTRTFBYS8rOEFFWWZCUWpDd2taRHhjYS9zZ0JGdjc3QWh0TC9vS1RqZ2NGVWdNR0dSMUVRd0dHVWdBQUFBQUNBQzMvTVFKK0FpVUFLd0EyQVJaTHNCTlFXRUFXR1FFRUJSZ0JBd1FHQVFFR0tBRUhBU2tCQUFjRlNodExzQmxRV0VBV0dRRUVCUmdCQXdRR0FRZ0dLQUVIQVNrQkFBY0ZTaHRBRmhrQkJBVVlBUU1FQmdFSUJpZ0JCd0lwQVFBSEJVcFpXVXV3RTFCWVFDZ0FBd0FKQmdNSlpRQUhDZ0VBQndCa0FBUUVCVjhBQlFXTlN3c0lBZ1lHQVY4Q0FRRUJnd0ZNRzB1d0dWQllRQzhBQmdrSUNRWUlmZ0FEQUFrR0F3bGxBQWNLQVFBSEFHUUFCQVFGWHdBRkJZMUxDd0VJQ0FGZkFnRUJBWU1CVEJ0QU13QUdDUWdKQmdoK0FBTUFDUVlEQ1dVQUJ3b0JBQWNBWkFBRUJBVmZBQVVGalVzQUFRR0RTd3NCQ0FnQ1h3QUNBb3NDVEZsWlFCOHRMQUVBTWpBc05pMDJKaVFoSUIwYkZoUVJEd3NKQlFRQUt3RXJEQTBVS3dVaUpqVTFJeWNqQmdZaklpWTFORFkzTnpVMEppTWlCZ2NuTmpZek1oWVZFVE1WRkJZek1qWTNGUVlHQVRJMk5UVUhCZ1lWRkJZQ09EVkRIUlVFSTAxRVNXQjlnRncyTVNsTUl5SW1ZelpsWlM0YUdnd2FDQXNuL3FnK1UwaGNSekxQUVV4Q1N5d3BUMVJUVlFRREhqc3hHQkZORkJ0WlgvN25reUljQmdOUEJnWUJGMFpHTHdJRU5pOHFKZ0FBQWdBMC96RUNxUUlsQUNJQUx3RDRTN0FaVUZoQUVnTUJCd0FaQVFVQ0R3RURCUkFCQkFNRVNodExzQjVRV0VBU0F3RUhBUmtCQlFJUEFRTUdFQUVFQXdSS0cwQVNBd0VIQVJrQkJRZ1BBUU1HRUFFRUF3UktXVmxMc0JsUVdFQWhBQU1BQkFNRVpBb0JCd2NBWHdFSkFnQUFqVXNJQVFJQ0JWOEdBUVVGZ3dWTUcwdXdIbEJZUUNrQUF3QUVBd1JrQUFFQmhVc0tBUWNIQUY4SkFRQUFqVXNBQlFXRFN3Z0JBZ0lHWHdBR0Jvc0dUQnRBTUFBQ0J3Z0hBZ2grQUFNQUJBTUVaQUFCQVlWTENnRUhCd0JmQ1FFQUFJMUxBQVVGZzBzQUNBZ0dYd0FHQm9zR1RGbFpRQjBrSXdFQUtpZ2pMeVF2SGh3WUZ4UVNEUXNJQndZRkFDSUJJZ3NORkNzQk1oWVhNemN6RVRNVkZCWXpNalkzRlFZR0l5SW1OVFVqSnlNR0JpTWlKalUwTmhjaUJoVVVGak15TmpVMU5DWUJEajFPR0FRT1ZpNGJHUXdhQ0F3bUZEVkRKUklGRjA0K1luWjRlRUZDUWtKT1FEMENKUzRoUmY0NWt5SWNCZ05QQmdaQlRFSklJakNNaW91T1YyaGNYR0pYV0JCZlpBQUFBZ0EwL3hBQ2Z3TCtBQzhBUEFDWlFCb2ZBUVFESUFFQ0JCUUJCd0lIQVFFR0xRRUZBUzRCQUFVR1NrdXdKRkJZUUNzQUJBUURYd0FEQTRSTEFBY0hBbDhBQWdLTlN3a0JCZ1lCWHdBQkFZdExBQVVGQUY4SUFRQUFod0JNRzBBcEFBTUFCQUlEQkdjQUJ3Y0NYd0FDQW8xTENRRUdCZ0ZmQUFFQmkwc0FCUVVBWHdnQkFBQ0hBRXhaUUJzeE1BRUFPRFl3UERFOEt5a2tJaDBiRWhBTUNnQXZBUzhLRFJRckJTSW1OVFUwTmpjakJnWWpJaVkxTkRZek1oWVhNeTRDTlRVME16SVdGeFVtSmlNaUJoVVJGQll6TWpZM0ZRWUJNalkzTlRRbUl5SUdGUlFXQWpNOVJ3VUJCaGRPUFdGNGVHSTlUaGdHQVFRRGlSWW1Dd2NkRVJZYkdoa1FHZ2tZL3I1T1B3RTlVa0ZDUXZCTlhUY1RNaEFpTG95S2k0NHVJUVlmSlE0Nmxnb0VWUU1IR3lEOVVURWtCZ1ZSRUFFOVZsZ1FYMlJvWEZ0aUFBQUFBZ0EwL3pFQ1V3SWxBQ1FBS3dCV1FGTVRBUU1DSWdFQUF4b0JCQUFiQVFVRUJFb0FCd0FDQXdjQ1pRQUVBQVVFQldNSkFRWUdBVjhBQVFHTlN3QURBd0JmQ0FFQUFJc0FUQ1lsQVFBcEtDVXJKaXNmSFJnV0VROE5EQWtIQUNRQkpBb05GQ3NGSWlZbU5UUTJOak15RmhVVklSWVdNekkyTnhVVUZqTXlOamNWQmdZaklpWTFOUVlHQXlJR0J6TW1KZ0U5VG5oRFBXMUphbnIrbGdKVFN6UlJLeHNaREJvSUN5Y1VOVU1VS3k4NVJRYitBVHNLUG5wYlczNURnM0U2VTFnVEU3RWlIQVlEVHdZR1FVeEFCQVFCM1VwRVAwOEFBUUFxL3pFQ05nSWxBRGNBWFVCYUdBRURBaGtCQkFNTkFRVUVMUUVHQlFRQkFRWTBBUWNCTlFFQUJ3ZEtBQVFBQlFZRUJXVUFCd2dCQUFjQVl3QURBd0pmQUFJQ2pVc0FCZ1lCWHdBQkFZc0JUQUVBTWpBcktTVWpJaUFkR3hZVUNBWUFOd0UzQ1EwVUt3VWlKalUxQmdZaklpWTFORFkzTlNZbU5UUTJOak15RmhjSEppWWpJaFVVRmpNekZTTWlCaFVVRmpNeU5qY1ZGQll6TWpZM0ZRWUdBZTgxUXhVdkhIcHpSelF2TnpoaVBqcGJLU1FqUnpCMVRrWTlTMDFJUzBBNVd5SWFHUXdhQ1F3bnowRk1RQVFFV1VROE9nMEZEVDR4THo4Z0ZSSlJEeFZGS0NOUkt5b3JKUm9RdENJY0JnTlBCZ1lBQUFBQkFDTC9NUUhTQWlVQU53QmRRRm9ZQVFRRkZ3RURCQ0VCQWdNRUFRRUNMUUVHQVRRQkJ3WTFBUUFIQjBvQUF3QUNBUU1DWndBSENBRUFCd0JqQUFRRUJWOEFCUVdOU3dBQkFRWmZBQVlHaXdaTUFRQXlNQ3NwSEJvVkV4QU9EUXNJQmdBM0FUY0pEUlFyRnlJbU5UVVdGak15TmpVMEl5TTFNekkyTlRRaklnWUhKelkyTXpJV0ZSUUdCeFVlQWhVVUJnWWpJaVluRlJRV016STJOeFVHQnBzMVJDSmdOenhUbVVRNVJsTjNLMG9vSXl4ak9sdDFPQzhnTnlFemExTWFNaFlaR2d3YkNBd256MEZNdHhBYUpDNVRVU0lwUlJFUlVCSVVTRVl4T2cwRUNSOHpLUzFKS3dRRVBTSWNCZ05QQmdZQUFnQXgvekVDd2dJbEFDVUFMQUJlUUZzVEFRTUVFZ0VDQXlJQkJnRWpBUUFHQkVvRUFRZ0JTUVVCQWdBSUJ3SUlaUUFHQ1FFQUJnQmtBQU1EQkY4QUJBU05Td29CQndjQlh3QUJBWXNCVENjbUFRQXFLU1lzSnl3Z0hoc2FGeFVRRGd3TENBWUFKUUVsQ3cwVUt3VWlKalVSQmdZaklpWTFOU0VtSmlNaUJnYzFOall6TWhZV0Z6TVJGQll6TWpZM0ZRWUdBVEkyTnlNV0ZnSjhOVU1PZ1dCcWVnRnFBbE5MTkZFcktWSTVTM1ZGQTFrYUdnd2FDQXNuL29VNVJRYitBVHZQUVV3QkdHdDFoSEE2VWxrVEUxZ1RFVHB6VlA2ZElod0dBMDhHQmdFWFNrUS9Ud0FBQUFJQVRQOHhBVTBDNkFBTEFCOEFURUJKRlFFREJSWUJCQU1DU2dBQ0JnVUdBZ1YrQUFNQUJBTUVaQUFCQVFCZkJ3RUFBSVJMQ0FFR0JvVkxBQVVGZ3dWTURBd0JBQXdmREI4ZUhSb1lFeEVPRFFjRkFBc0JDd2tORkNzVE1oWVZGQVlqSWlZMU5EWVhFVE1WRkJZek1qWTNGUVlHSXlJbU5UVWpFWWtZSkNRWUdTUWtUUzRaR2d3YkNBd25FelpET3dMb0hDRWdIUjBnSVJ6Ti9qbVRJaHdHQTA4R0JrRk1RZ0liQUFBQkFDRC9NUUcyQWlVQUpnQktRRWNrQVFVQUl4a0NCQVVLQVFFRUVRRUNBUklCQXdJRlNnQUNBQU1DQTJNQUJRVUFYd1lCQUFDTlN3QUVCQUZmQUFFQml3Rk1BUUFoSHgwYkZoUVBEUWtIQUNZQkpnY05GQ3NUTWhZV0ZSUUdCaU1pSnhVVUZqTXlOamNWQmdZaklpWTFOUllXTXpJMU5DTWlCZ2NuTmphOVNuQS9RWEZLSEJjWkdnd2FDUXduRkRWREhrUXJrcFFkUGhvZ0cxRUNKVHQ2WUdKOFBBTTRJaHdHQTA4R0JrRk10UkFVd0wwUERWWU5FZ0FBQUFILzQvOHhBUzBDL2dBbkFIRkFGQU1CQVFBZEJBSUVBUlVPQWdJRUZnRURBZ1JLUzdBa1VGaEFHd0FFQVFJQkJBSitBQUlBQXdJRFpBQUJBUUJmQlFFQUFJUUJUQnRBSVFBRUFRSUJCQUorQlFFQUFBRUVBQUZuQUFJREF3SlhBQUlDQTJBQUF3SURVRmxBRVFFQUlSOGFHQk1SQ0FZQUp3RW5CZzBVS3hNeUZoY1ZKaVlqSWdZVkVSUUdCeFVVRmpNeU5qY1ZCZ1lqSWlZMU5SWVdNekkyTlJFME5qYmpHQ2NMQ0I0T0hSOUdPQm9aRFJvSURDWVVOVU1LSEE4Y0h5VkJBdjRLQmxFRUJ5TXovazlWVHdVM0lod0dBMDhHQmtGTW1RVUdKREVCdEVCS0h3QUFBQUFCQUU3L01RS3lBaHNBSkFERlM3QVpVRmhBRGhNQkF3QUpBUUVEQ2dFQ0FRTktHMHV3SWxCWVFBNFRBUU1BQ1FFQkJBb0JBZ0VEU2h0QURoTUJBd1lKQVFFRUNnRUNBUU5LV1ZsTHNCbFFXRUFiQUFFQUFnRUNaQWdIQWdVRmhVc0dBUUFBQTJBRUFRTURnd05NRzB1d0lsQllRQjhBQVFBQ0FRSmtDQWNDQlFXRlN3QURBNE5MQmdFQUFBUmdBQVFFaXdSTUcwQW1BQUFGQmdVQUJuNEFBUUFDQVFKa0NBY0NCUVdGU3dBREE0TkxBQVlHQkdBQUJBU0xCRXhaV1VBUUFBQUFKQUFrSXhNa0V5VWpFUWtOR3lzQkVUTVZGQll6TWpZM0ZRWUdJeUltTlRVakp5TUdCaU1pSmpVUk14RVVGak15TmpVUkFpTXRHaG9NR2dnTEp4UTFReVlQQlJwY00xOWthelU0VTBBQ0cvNDVreUljQmdOUEJnWkJURUpIS2lkZFp3RmgvcTgvUG1GY0FSRUFBUUFpL3pFQjBnSWJBQ2tBV1VCV0ZBRURCQThCQWdVRUFRRUNId0VHQVNZQkJ3WW5BUUFIQmtvQUJRQUNBUVVDWndBSENBRUFCd0JqQUFNREJGMEFCQVNGU3dBQkFRWmZBQVlHaXdaTUFRQWtJaDBiRmhVVEVoRVFEZ3dJQmdBcEFTa0pEUlFyRnlJbU5UVVdGak15TmpVMEppTWpOVGNoTlNFVkJ4WVdGUlFHQmlNaUppY1ZGQll6TWpZM0ZRWUdtelZFSW1BM1BGTktUa1NnL3Y0QmpLUm1XRE5yVXhveUZoa2FEQnNJRENmUFFVeTZFQm9vTHkwbFJvbFZUNFlIVTBReVR5OEVCRDhpSEFZRFR3WUcvLzhBTmdFWkFYRUNhQUZIQkNJQUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLzhBSWdFWkFTb0NhQUZIQUVZQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBSHdFQkFVTUNhQUZIQkNVQUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLzhBSWdFWkFXc0M2Z0ZIQUxJQUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLzhBRmdFWkFTOENhQUZIQ0NZQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBQ2dFZkFRUUM2Z0ZIQUVrQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLy8vMmdDUEFLd0NZZ0ZIQkN3QUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBSWdDUEFWMENhQUZIQkM0QUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLzhBTkFDYUFXUUNZZ0ZIQkRJQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBQlFFZkFLd0MzUUZIQkRVQUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLzhBTlFFWkFPQUNZZ0ZIQkRZQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBRkFFZkFNUUNZZ0ZIQkRjQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBRkFFZkFNUUNZZ0ZIQldjQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLy8vd3dDUEFLb0MzUUZIQkdvQUFBRWZLWm9tWmdBSnNRQUR1QUVmc0RNckFBQUEvLzhBTmdDUEFORUM1d0ZIQkRvQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBSFFDakFKa0M1d0ZIQlhFQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBTmdFZkFSWUNZZ0ZIQkd3QUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBTmdDUEFqWUNhQUZIQkQ0QUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBTXdDUEFqTUNZZ0ZIQkQwQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLy8vN1FDUEFXWUNhQUZIQkQ4QUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBTmdDUEFhOENhQUZIQkVBQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBTmdFZkFYWUNZZ0ZIQkVFQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBSWdFWkFXc0NhQUZIQkVJQUFBRWZLWm9tWmdBSnNRQUR1QUVmc0RNckFBQUEvLzhBSVFDUEFjWUM1d0ZIQkVVQUFBRWZLWm9tWmdBSnNRQUR1QUVmc0RNckFBQUEvLzhBSUFDUEFSOENhQUZIQkU4QUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLy8vN1FDUEFNUUM2d0ZIQkZBQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBREFDUEFPa0Nxd0ZIQTRvQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBQlFFWkFaUUNZZ0ZIQkZZQUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLzhBRXdFWkFYOENZZ0ZIQkZjQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBTXdFYUFWb0NZZ0ZIQlFnQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBTXdFWkFXY0NhQUZIQkZnQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBQUFFZkFWWUNZZ0ZIQkZrQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBRndFZkFSMENZZ0ZIQUYwQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBRndDUEFXUUNZZ0ZIQkYwQUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBRndEckFXSUNZZ0ZIQkY0QUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLzhBREFDUEFUMENZZ0ZIQkY4QUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLzhBSWdFWkFXWUM2Z0ZIQVlRQUFBRWZLWm9tWmdBSnNRQUR1QUVmc0RNckFBQUEvLzhBWHdBQUFsc0Rsd0ltQUNVQUFBRUhBVTRBNWdDdkFBaXhBd0d3cjdBekt3QUEvLzhBVS8vMkFqZ0MrQUltQUVVQUFBQUhBVTRBL2dBQS8vOEFYLzlHQWxzQ3lnSW1BQ1VBQUFBSEM2TUNjQUFBLy84QVUvOUdBamdDK0FJbUFFVUFBQUFIQzZNQ2N3QUEvLzhBWC85bEFsc0N5Z0ltQUNVQUFBRUhBVXdBaHYwSEFBbXhBd0c0L1Fld015c0EvLzhBVS85bEFqZ0MrQUltQUVVQUFBRUhBVXdBaGYwSEFBbXhBZ0c0L1Fld015c0EvLzhBUFA4UUFsa0RyUUltQUNZQUFBQW5BSG9CQ3dBQUFRY0FkZ0VPQUs4QUNMRUNBYkN2c0RNckFBRC8vd0EwL3hBQnlnTCtBaVlBUmdBQUFDY0FlZ0MwQUFBQUJ3QjJBTEFBQVAvL0FGOEFBQUtoQTVjQ0pnQW5BQUFCQndGT0FRb0Fyd0FJc1FJQnNLK3dNeXNBQVAvL0FEVC85Z0laQXZnQ0pnQkhBQUFBQndGT0FLUUFBUC8vQUYvL1JnS2hBc29DSmdBbkFBQUFCd3VqQW9VQUFQLy9BRFQvUmdJWkF2Z0NKZ0JIQUFBQUJ3dWpBbFVBQVAvL0FGLy9aUUtoQXNvQ0pnQW5BQUFCQndGTUFLYjlCd0FKc1FJQnVQMEhzRE1yQVAvL0FEVC9aUUlaQXZnQ0pnQkhBQUFCQndGTUFITDlCd0FKc1FJQnVQMEhzRE1yQUFBQ0FGLy9FQUtoQXNvQUlBQW9BRGRBTkI0UUJ3TUJBZ1lCQUFFQ1NnQUVCQU5kQUFNRGdrc0FCUVVDWFFBQ0FvTkxBQUVCQUY4QUFBQ0hBRXdoTENFMkpTSUdEUm9yQlJRR0l5SW1KelVXRmpNeU5qVTBKaWMzSWlNakVUTXlGaFlWRkFZSEJ4WVdFelFtSXlNUk15QUJ2a2hNRVIwTEN5RU9IaUV3S0NnSkNzamRiYUJZbG9rWUlqSnlnbmxxVndFT2hqSTRCQUkvQWdRUkZ4Z1pCVk1DeWxDY2NweTBGVFVKS1FISmgzLzk3QUFBQUFBQ0FEVC9FQUlaQXZnQUt3QTRBSzVMc0JsUVdFQVVDUUVIQVJJQkFBWXFJUmNEQlFBZ0FRUUZCRW9iUUJRSkFRY0JFZ0VEQmlvaEZ3TUZBQ0FCQkFVRVNsbExzQmxRV0VBbkFBSUNoRXNBQndjQlh3QUJBWTFMQ1FFR0JnQmZBd2dDQUFDTFN3QUZCUVJmQUFRRWh3Uk1HMEFyQUFJQ2hFc0FCd2NCWHdBQkFZMUxBQU1EZzBzSkFRWUdBRjhJQVFBQWkwc0FCUVVFWHdBRUJJY0VURmxBR3kwc0FRQTBNaXc0TFRnbEl4NGNFUkFQRGdjRkFDc0JLd29ORkNzRklpWTFORFl6TWhZWE15WW1OVFV6RVNNbkl3WUdCd2NXRmhVVUJpTWlKaWMxRmhZek1qWTFOQ1luTnpjeU5qYzFOQ1lqSWdZVkZCWUJER0oyZUdJOVRoZ0dBZ1pxVXhJRkRpZ2JHQ0l6U1V3UkhRb0tJUThkSVRBb0pCTk9Qd0U5VWtGQ1FncU1pb3VPTGlFT05oVEsvUWhJRlNNTE13a3BKakk0QkFJL0FnUVJGeGdaQlVsWFZsZ1FYMlJvWEZ0aUFQLy9BRi8vT0FLaEFzb0NKZ0FuQUFBQUJ3dXNBVmNBQVAvL0FEVC9PQUlaQXZnQ0pnQkhBQUFBQnd1c0FTY0FBUC8vQUY4QUFBSHhCQ3NDSmdBb0FBQUJCd2UxQVRVQXVnQUlzUUVDc0xxd015c0FBUC8vQURULzlnSUxBM0VDSmdCSUFBQUFCd2UxQVI4QUFQLy9BRjhBQUFIeEJDc0NKZ0FvQUFBQkJ3ZTJBVElBdWdBSXNRRUNzTHF3TXlzQUFQLy9BRFQvOWdJTEEzRUNKZ0JJQUFBQUJ3ZTJBUjhBQVAvL0FGLy9PQUh4QXNvQ0pnQW9BQUFBQnd1c0FTMEFBUC8vQURUL09BSUxBaVVDSmdCSUFBQUFCd3VzQVN3QUFQLy9BRi8vUGdIeEFzb0NKZ0FvQUFBQUJnUzRTQUFBQVAvL0FEVC9RQUlMQWlVQ0pnQklBQUFCQndGUkFEdjg0Z0FKc1FJQnVQemlzRE1yQVAvL0FGLy9FQUh4QTV3Q0pnQW9BQUFBSndCNkFNVUFBQUVIQVUwQVpnQ3ZBQWl4QWdHd3I3QXpLd0FBLy84QU5QOFFBZ3NDN1FJbUFFZ0FBQUFtQVUxV0FBQUhBSG9Bd3dBQUFBRC8vd0JmQUFBQjhRT1hBaVlBS1FBQUFRY0JUZ0RJQUs4QUNMRUJBYkN2c0RNckFBRC8vd0FRQUFBQmtBT2hBaVlBU1FBQUFRY0JUZ0NvQUxrQUNMRUJBYkM1c0RNckFBRC8vd0E4Ly9ZQ2l3TmRBaVlBS2dBQUFRY0JUQURTQUs4QUNMRUJBYkN2c0RNckFBRC8vd0EwL3hBQ0dRS3VBaVlBU2dBQUFBWUJUR3dBQUFELy93QmZBQUFDakFPWEFpWUFLd0FBQVFjQlRnRVZBSzhBQ0xFQkFiQ3ZzRE1yQUFELy93QlFBQUFDSmdQRkFpWUFTd0FBQVFjQlRnQW9BTjBBQ0xFQkFiRGRzRE1yQUFELy93QmYvMFlDakFMS0FpWUFLd0FBQUFjTG93S2hBQUQvL3dCVC8wWUNKZ0w0QWlZQVN3QUFBQWNMb3dKcUFBRC8vd0JmQUFBQ2pBT1BBaVlBS3dBQUFRY0FhZ0JRQUs4QUNMRUJBckN2c0RNckFBRC8vLy8wQUFBQ0pnTzlBaVlBU3dBQUFRY0FhdjlqQU4wQUNMRUJBckRkc0RNckFBRC8vd0F0L3hBQ2pBTEtBaVlBS3dBQUFBWUFlaWdBQUFELy93QWYveEFDSmdMNEFpWUFTd0FBQUFZQWVob0FBQUQvL3dCZi96NENqQUxLQWlZQUt3QUFBQWNMclFGM0FBRC8vd0JUL3o0Q0pnTDRBaVlBU3dBQUFBY0xyUUU3QUFELy8vLzAvMElCYmdMS0FpWUFMQUFBQUFjTHJ3Q3hBQUQvLy8vTC8wSUJSUUxvQWlZQVRBQUFBUWNCVWYrai9PUUFDYkVDQWJqODVMQXpLd0QvL3dBZUFBQUJVQVFaQWlZQUxBQUFBUWNIZ3dDeEFLOEFDTEVCQTdDdnNETXJBQUQvLy8vMUFBQUJKd05xQWlZSUtnQUFBQWNIZ3dDSUFBRC8vd0JmQUFBQ2VBT3RBaVlBTGdBQUFRY0FkZ0RxQUs4QUNMRUJBYkN2c0RNckFBRC8vd0JGQUFBQ0tRUGJBaVlBVGdBQUFRY0FkZ0FkQU4wQUNMRUJBYkRkc0RNckFBRC8vd0JmLzBZQ2VBTEtBaVlBTGdBQUFBY0xvd0o5QUFELy93QlQvMFlDS1FMNEFpWUFUZ0FBQUFjTG93SkdBQUQvL3dCZi8yUUNlQUxLQWlZQUxnQUFBQWNMc0FGUEFBRC8vd0JULzE4Q0tRTDRBaVlBVGdBQUFRY0JUQUJ3L1FFQUNiRUJBYmo5QWJBekt3RC8vd0JmLzBZQi9BTEtBaVlBTHdBQUFBY0xvd0pjQUFELy93QksvMFlBd3dMNEFpWUFUd0FBQUFjTG93RzJBQUQvLy8vNS8wWUIvQU5kQWlZQUx3QUFBQ2NMb3dKY0FBQUJCd0ZNLzlFQXJ3QUlzUUlCc0srd015c0FBUC8vLys3L1JnRWhBNHNDSmdCUEFBQUFKd3VqQWJZQUFBRUhBVXoveGdEZEFBaXhBZ0d3M2JBekt3QUEvLzhBWC85ckFmd0N5Z0ltQUM4QUFBRUhBVXdBYlAwTkFBbXhBUUc0L1Eyd015c0EvLy8vN2Y5cEFTQUMrQUltQUU4QUFBRUhBVXoveGYwTEFBbXhBUUc0L1F1d015c0EvLzhBWC84NEFmd0N5Z0ltQUM4QUFBQUhDNndCTGdBQS8vLy8xUDg0QVQ4QytBSW1BRThBQUFFSEFVci9yUHphQUFteEFRRzQvTnF3TXlzQS8vOEFYd0FBQXpjRGx3SW1BREFBQUFFSEFVNEJhUUN2QUFpeEFRR3dyN0F6S3dBQS8vOEFVd0FBQTJZQzZBSW1BRkFBQUFBSEFVNEJoQUFBLy84QVgvOUdBemNDeWdJbUFEQUFBQUFIQzZNQzh3QUEvLzhBVS85R0EyWUNKUUltQUZBQUFBQUhDNk1EREFBQS8vOEFYd0FBQXFrRGx3SW1BREVBQUFFSEFVNEJJZ0N2QUFpeEFRR3dyN0F6S3dBQS8vOEFVd0FBQWlZQzZBSW1BRkVBQUFBSEFVNEEyUUFBLy84QVgvOUdBcWtDeWdJbUFERUFBQUFIQzZNQ3NnQUEvLzhBVS85R0FpWUNKUUltQUZFQUFBQUhDNk1DYVFBQS8vOEFYLzljQXFrQ3lnSW1BREVBQUFFSEFVd0F6L3orQUFteEFRRzQvUDZ3TXlzQS8vOEFVLzlhQWlZQ0pRSW1BRkVBQUFFSEFVd0Fmdno4QUFteEFRRzQvUHl3TXlzQS8vOEFYLzg0QXFrQ3lnSW1BREVBQUFBSEM2d0JoQUFBLy84QVUvODRBaVlDSlFJbUFGRUFBQUFIQzZ3Qk93QUEvLzhBUFAvMkF0VUVJQUltQURJQUFBRUhCN1FCaVFDdkFBaXhBZ0t3cjdBekt3QUEvLzhBTlAvMkFpNERjUUltQUZJQUFBQUhCN1FCTVFBQS8vOEFQUC8yQXRVRUJRSW1BRElBQUFFSEI3TUJpUUN2QUFpeEFnT3dyN0F6S3dBQS8vOEFOUC8yQWk0RFZnSW1BRklBQUFBSEI3TUJNUUFBLy84QVBQLzJBdFVFS3dJbUFESUFBQUVIQjdVQmZnQzZBQWl4QWdLd3VyQXpLd0FBLy84QU5QLzJBaTREY1FJbUFGSUFBQUFIQjdVQkt3QUEvLzhBUFAvMkF0VUVLd0ltQURJQUFBRUhCN1lCaEFDNkFBaXhBZ0t3dXJBekt3QUEvLzhBTlAvMkFpNERjUUltQUZJQUFBQUhCN1lCTEFBQS8vOEFYd0FBQWpNRHJRSW1BRE1BQUFFSEFIWUEwd0N2QUFpeEFnR3dyN0F6S3dBQS8vOEFVLzhRQWpnQy9nSW1BRk1BQUFBSEFIWUE0Z0FBLy84QVh3QUFBak1EbHdJbUFETUFBQUVIQVU0QTNnQ3ZBQWl4QWdHd3I3QXpLd0FBLy84QVUvOFFBamdDNkFJbUFGTUFBQUFIQVU0QTdRQUEvLzhBWHdBQUFtOERsd0ltQURVQUFBRUhBVTRBM1FDdkFBaXhBZ0d3cjdBekt3QUEvLzhBVXdBQUFaZ0M2QUltQUZVQUFBQUhBVTRBa2dBQS8vOEFYLzlHQW04Q3lnSW1BRFVBQUFBSEM2TUNmd0FBLy84QVNmOUdBWmdDSlFJbUFGVUFBQUFIQzZNQnRRQUEvLzhBWC85R0FtOERYUUltQURVQUFBQW5BVXdBZlFDdkFRY0xvd0ovQUFBQUNMRUNBYkN2c0RNckFBRC8vd0JKLzBZQm1BS3VBaVlBVlFBQUFDWUJURElBQUFjTG93RzFBQUFBQVAvL0FGLy9ZUUp2QXNvQ0pnQTFBQUFCQndGTUFKZjlBd0FKc1FJQnVQMERzRE1yQVAvL0FBNy9ad0dZQWlVQ0pnQlZBQUFCQndGTS8rYjlDUUFKc1FFQnVQMEpzRE1yQVAvL0FETC85Z0g1QTVjQ0pnQTJBQUFCQndGT0FMc0Fyd0FJc1FFQnNLK3dNeXNBQVAvL0FESC85Z0c1QXVnQ0pnQldBQUFBQndGT0FKRUFBUC8vQURML1JnSDVBdFFDSmdBMkFBQUFCd3VqQWpJQUFQLy9BREgvUmdHNUFpVUNKZ0JXQUFBQUJ3dWpBaUVBQVAvL0FETC85Z0g1QTYwQ0pnQTJBQUFCQndld0FSMEFyd0FJc1FFQ3NLK3dNeXNBQVAvL0FESC85Z0c1QXY0Q0pnQldBQUFBQndld0FQTUFBUC8vQURMLzlnSDVCQVVDSmdBMkFBQUJCd2V4QVIwQXJ3QUlzUUVDc0srd015c0FBUC8vQURILzlnRzVBMVlDSmdCV0FBQUFCd2V4QVBNQUFQLy9BREwvUmdINUE1Y0NKZ0EyQUFBQUp3Rk9BTHNBcndFSEM2TUNNZ0FBQUFpeEFRR3dyN0F6S3dBQS8vOEFNZjlHQWJrQzZBSW1BRllBQUFBbkFVNEFrUUFBQUFjTG93SWhBQUQvL3dBTkFBQUNKUU9YQWlZQU53QUFBUWNCVGdDNEFLOEFDTEVCQWJDdnNETXJBQUQvL3dBUy8vWUJaZ05jQWlZQVZ3QUFBUVlCVGtKMEFBaXhBUUd3ZExBeksvLy9BQTMvUmdJbEFzb0NKZ0EzQUFBQUJ3dWpBa2dBQVAvL0FCTC9SZ0ZtQXBRQ0pnQlhBQUFBQnd1akFnd0FBUC8vQUEzL2F3SWxBc29DSmdBM0FBQUJCd0ZNQUZmOURRQUpzUUVCdVAwTnNETXJBUC8vQUJML1pBRjRBcFFDSmdCWEFBQUFCd3V3QU40QUFQLy9BQTMvT0FJbEFzb0NKZ0EzQUFBQUJ3dXNBUm9BQVAvL0FCTC9NUUdXQXBRQ0pnQlhBQUFCQndGS0FBUDgwd0FKc1FFQnVQelRzRE1yQVAvL0FGbi85Z0tKQTQ4Q0pnQTRBQUFCQndCcUFFc0Fyd0FJc1FFQ3NLK3dNeXNBQVAvL0FFNy85Z0lqQXVBQ0pnQllBQUFBQmdCcUZRQUFBUC8vQUZuLzlnS0pBNVFDSmdBNEFBQUJCd0ZSQUl3QXJ3QUlzUUVCc0srd015c0FBUC8vQUU3LzlnSWpBdVVDSmdCWUFBQUFCZ0ZSVlFBQUFQLy9BRm4vT0FLSkFzb0NKZ0E0QUFBQUJ3dXNBWEFBQVAvL0FFNy9NUUlqQWhzQ0pnQllBQUFCQndGS0FGLzgwd0FKc1FFQnVQelRzRE1yQVAvL0FGbi85Z0tKQkNBQ0pnQTRBQUFCQndlMEFYSUFyd0FJc1FFQ3NLK3dNeXNBQVAvL0FFNy85Z0lqQTNFQ0pnQllBQUFBQndlMEFUc0FBUC8vQUZuLzlnS0pCQVVDSmdBNEFBQUJCd2V5QVhJQXJ3QUlzUUVEc0srd015c0FBUC8vQUU3LzlnSWpBMVlDSmdCWUFBQUFCd2V5QVRzQUFQLy9BQUFBQUFKbkE1UUNKZ0E1QUFBQkJ3RlJBRkFBcndBSXNRRUJzSyt3TXlzQUFQLy9BQUFBQUFJT0F1VUNKZ0JaQUFBQUJnRlJId0FBQVAvL0FBRC9SZ0puQXNvQ0pnQTVBQUFBQnd1akFtQUFBUC8vQUFEL1JnSU9BaHNDSmdCWkFBQUFCd3VqQWpRQUFQLy9BQWdBQUFPa0E1Y0NKZ0E2QUFBQkJ3Rk9BWFVBcndBSXNRRUJzSyt3TXlzQUFQLy9BQXNBQVFNY0F1Z0NKZ0JhQUFBQUJ3Rk9BVEVBQVAvL0FBai9SZ09rQXNvQ0pnQTZBQUFBQnd1akF2OEFBUC8vQUF2L1JnTWNBaHdDSmdCYUFBQUFCd3VqQXNFQUFQLy9BQU1BQUFKZkE1Y0NKZ0E3QUFBQkJ3Rk9BTThBcndBSXNRRUJzSyt3TXlzQUFQLy9BQTRBQUFJUkF1Z0NKZ0JiQUFBQUJ3Rk9BSzBBQVAvL0FBTUFBQUpmQTQ4Q0pnQTdBQUFCQndCcUFBb0Fyd0FJc1FFQ3NLK3dNeXNBQVAvL0FBNEFBQUlSQXVBQ0pnQmJBQUFBQmdCcTZBQUFBUC8vQUFBQUFBSkhBNWNDSmdBOEFBQUJCd0ZPQU1JQXJ3QUlzUUVCc0srd015c0FBUC8vQUFIL0VBSVBBdWdDSmdCY0FBQUFCd0ZPQUtZQUFQLy9BQ0lBQUFJYkE2MENKZ0E5QUFBQkJ3RktBRWNBcndBSXNRRUJzSyt3TXlzQUFQLy9BQ01BQUFHM0F2NENKZ0JkQUFBQUJnRktFZ0FBQVAvL0FDTC9SZ0liQXNvQ0pnQTlBQUFBQnd1akFsb0FBUC8vQUNQL1JnRzNBaHNDSmdCZEFBQUFCd3VqQWlJQUFQLy9BQ0wvWkFJYkFzb0NKZ0E5QUFBQUJ3dXdBUjhBQVAvL0FDUC9aQUczQWhzQ0pnQmRBQUFBQnd1d0FPNEFBUC8vQUZQL1pBSW1BdmdDSmdCTEFBQUFCd3V3QVRzQUFQLy9BQkwvOWdGbUExZ0NKZ0JYQUFBQkJnQnFoWGdBQ0xFQkFyQjRzRE1yLy84QUN3QUJBeHdETndJbUFGb0FBQUFIQVU4QS9BQUEvLzhBQWY4UUFnOEROd0ltQUZ3QUFBQUdBVTl3QUFBQS8vOEFMZi8yQWU0REdBSW1BRVFBQUFBSEJJb0E1d0FBLy84QVV3QUFBWGNEb1FJbUFVQUFBQUVIQVU0QWpBQzVBQWl4QVFHd3ViQXpLd0FBLy84QU5QLzJBbDhEREFJbUFYMEFBQUFIQnV3QXVnQUEvLzhBTlAvMkFsOEREQUltQVgwQUFBQUhCeVlBc0FBQS8vOEFOUC8yQWw4REJ3SW1BWDBBQUFBR0J2c2RBQUFBLy84QU5QLzJBbDhEQndJbUFYMEFBQUFHQndnakFBQUEvLzhBTlAvMkFsOERCd0ltQVgwQUFBQUdCdndYQUFBQS8vOEFOUC8yQWw4REJ3SW1BWDBBQUFBR0J3a2RBQUFBLy84QU5QLzJBbDhEWEFJbUFYMEFBQUFHQnYwWEFBQUEvLzhBTlAvMkFsOERYQUltQVgwQUFBQUdCd29NQUFBQS8vOEFBQUFBQW8wQzFBSW1BQ1FBQUFFR0J1ekZ5QUFKc1FJQnVQL0lzRE1yQUFBQS8vOEFBQUFBQW8wQzFBSW1BQ1FBQUFFR0J5YkN5QUFKc1FJQnVQL0lzRE1yQUFBQS8vOEFBZ0FBQXdVQzFBQW1BQ1I0QUFFSEJ2di9iZi9OQUFteEFnSzQvODJ3TXlzQS8vOEFBQUFBQXdrQzFBQW1BQ1I4QUFFSEJ3ai9jdi9OQUFteEFnSzQvODJ3TXlzQS8vOEFBZ0FBQXUwQzFRQW1BQ1JnQUFFSEJ2ei9Wdi9PQUFteEFnSzQvODZ3TXlzQS8vOEFBQUFBQXU4QzFBQW5Cd24vWGYvTkFRWUFKR0lBQUFteEFBSzQvODJ3TXlzQS8vLy82Z0FBQXVvREtnQW5CdjMvZFAvT0FRWUFKRjBBQUFteEFBSzQvODZ3TXlzQS8vLy82Z0FBQXUwREtnQW1BQ1JnQUFFSEJ3ci9kUC9PQUFteEFnSzQvODZ3TXlzQS8vOEFLdi8yQWRVRERBSW1BWUVBQUFBSEJ1d0FtZ0FBLy84QUt2LzJBZFVEREFJbUFZRUFBQUFIQnlZQWtBQUEvLzhBS3YvMkFkVURCd0ltQVlFQUFBQUdCdnY5QUFBQS8vOEFLdi8yQWRVREJ3SW1BWUVBQUFBR0J3Z0RBQUFBLy84QUt2LzJBZFVEQndJbUFZRUFBQUFHQnZ6M0FBQUEvLzhBS3YvMkFkVURCd0ltQVlFQUFBQUdCd245QUFBQS8vOEFBQUFBQWtrQzFBQW1BQ2hZQUFFR0J1eTV5QUFKc1FFQnVQL0lzRE1yQUFBQS8vOEFBQUFBQWtrQzFBQW1BQ2hZQUFFR0J5YXp5QUFKc1FFQnVQL0lzRE1yQUFBQS8vOEFBQUFBQXVJQzFBQW5BQ2dBOFFBQUFRY0crLzlyLzgwQUNiRUJBcmovemJBekt3QUFBUC8vQUFBQUFBTGRBdFFBSndBb0FPd0FBQUVIQndqL2N2L05BQW14QVFLNC84MndNeXNBQUFELy93QUFBQUFDMHdMVUFDY0FLQURpQUFBQkJ3YjgvMVQvelFBSnNRRUN1UC9Oc0RNckFBQUEvLy8vL1FBQUF0SUMxQUFuQUNnQTRRQUFBUWNIQ2Y5YS84MEFDYkVCQXJqL3piQXpLd0FBQVAvL0FGUC9FQUltQXd3Q0pnR0RBQUFBQndic0FNb0FBUC8vQUZQL0VBSW1Bd3dDSmdHREFBQUFCd2NtQU1FQUFQLy9BRlAvRUFJbUF3Y0NKZ0dEQUFBQUJnYjdMUUFBQVAvL0FGUC9FQUltQXdjQ0pnR0RBQUFBQmdjSU5BQUFBUC8vQUZQL0VBSW1Bd2NDSmdHREFBQUFCZ2I4SndBQUFQLy9BRlAvRUFJbUF3Y0NKZ0dEQUFBQUJnY0pMZ0FBQVAvL0FGUC9FQUltQTF3Q0pnR0RBQUFBQmdiOUp3QUFBUC8vQUZQL0VBSW1BMXdDSmdHREFBQUFCZ2NLSEFBQUFQLy9BQUFBQUFMZkF0UUFKZ0FyVXdBQkJnYnN1Y2dBQ2JFQkFiai95TEF6S3dBQUFQLy9BQUFBQUFMbEF0UUFKZ0FyV1FBQkJnY21zOGdBQ2JFQkFiai95TEF6S3dBQUFQLy9BQUFBQUFOMEF0UUFKd0FyQU9nQUFBRUhCdnYvYS8vTkFBbXhBUUs0Lzgyd015c0FBQUQvL3dBQUFBQURjZ0xVQUNjQUt3RG1BQUFCQndjSS8zTC96UUFKc1FFQ3VQL05zRE1yQUFBQS8vOEFDUUFBQTN3QzFBQW5BQ3NBOEFBQUFRY0cvUDlkLzgwQUNiRUJBcmovemJBekt3QUFBUC8vLy8wQUFBTnhBdFFBSndBckFPVUFBQUVIQnduL1d2L05BQW14QVFLNC84MndNeXNBQUFELy8vL25BQUFEZXdNcUFDY0FLd0R2QUFBQkJ3YjkvM0gvemdBSnNRRUN1UC9Pc0RNckFBQUEvLy8vNXdBQUEzY0RLZ0FuQUNzQTZ3QUFBUWNIQ3Y5eC84NEFDYkVCQXJqL3pyQXpLd0FBQVAvL0FGSC85Z0ZaQXd3Q0pnR0ZBQUFBQmdic0N3QUFBUC8vQUUvLzlnRlpBd3dDSmdHRkFBQUFCZ2NtQWdBQUFQLy9BQVAvOWdGWkF3Y0NKZ0dGQUFBQUJ3YjcvMjRBQVAvL0FBUC85Z0ZaQXdjQ0pnR0ZBQUFBQndjSS8zVUFBUC8vQUJULzlnRlpBd2NDSmdHRkFBQUFCd2I4LzJnQUFQLy9BQkwvOWdGWkF3Y0NKZ0dGQUFBQUJ3Y0ovMjhBQVAvLy85Ny85Z0ZaQTF3Q0pnR0ZBQUFBQndiOS8yZ0FBUC8vLzlQLzlnRlpBMXdDSmdHRkFBQUFCd2NLLzEwQUFQLy9BQUFBQUFHNUF0UUFKZ0FzZmdBQkJnYnN1Y2dBQ2JFQkFiai95TEF6S3dBQUFQLy9BQUFBQUFHekF0UUFKZ0FzZUFBQkJnY21zOGdBQ2JFQkFiai95TEF6S3dBQUFQLy9BQUFBQUFKUkF0UUFKd0FzQVJZQUFBRUhCdnYvYS8vTkFBbXhBUUs0Lzgyd015c0FBQUQvL3dBQUFBQUNRd0xVQUNjQUxBRUlBQUFCQndjSS8zTC96UUFKc1FFQ3VQL05zRE1yQUFBQS8vOEFDUUFBQW1RQzFBQW5BQ3dCS1FBQUFRY0cvUDlkLzgwQUNiRUJBcmovemJBekt3QUFBUC8vQUFBQUFBSmVBdFFBSndBc0FTTUFBQUVIQnduL1hmL05BQW14QVFLNC84MndNeXNBQUFELy8vL25BQUFDVlFNcUFDY0FMQUVhQUFBQkJ3YjkvM0gvemdBSnNRRUN1UC9Pc0RNckFBQUEvLy8vNXdBQUFsUURLZ0FuQUN3QkdRQUFBUWNIQ3Y5eC84NEFDYkVCQXJqL3pyQXpLd0FBQVAvL0FEVC85Z0l1QXd3Q0pnQlNBQUFBQndic0FMRUFBUC8vQURULzlnSXVBd3dDSmdCU0FBQUFCd2NtQUtnQUFQLy9BRFQvOWdJdUF3Y0NKZ0JTQUFBQUJnYjdGQUFBQVAvL0FEVC85Z0l1QXdjQ0pnQlNBQUFBQmdjSUd3QUFBUC8vQURULzlnSXVBd2NDSmdCU0FBQUFCZ2I4RGdBQUFQLy9BRFQvOWdJdUF3Y0NKZ0JTQUFBQUJnY0pGUUFBQVAvL0FBRC85Z01IQXRVQUpnQXlNZ0FCQmdic3VjZ0FDYkVDQWJqL3lMQXpLd0FBQVAvL0FBRC85Z01kQXRVQUpnQXlTQUFCQmdjbXM4Z0FDYkVDQWJqL3lMQXpLd0FBQVAvL0FBRC85Z081QXRVQUp3QXlBT1FBQUFFSEJ2di9hLy9OQUFteEFnSzQvODJ3TXlzQUFBRC8vd0FBLy9ZRHR3TFZBQ2NBTWdEaUFBQUJCd2NJLzNML3pRQUpzUUlDdVAvTnNETXJBQUFBLy84QUEvLzJBNFlDMVFBbkFESUFzUUFBQVFjRy9QOVgvODBBQ2JFQ0Fyai96YkF6S3dBQUFQLy9BQUQvOWdPSEF0VUFKd0F5QUxJQUFBRUhCd24vWGYvTkFBbXhBZ0s0Lzgyd015c0FBQUQvL3dCTS8vWUNPUU1NQWlZQmtRQUFBQWNHN0FDM0FBRC8vd0JNLy9ZQ09RTU1BaVlCa1FBQUFBY0hKZ0N0QUFELy93Qk0vL1lDT1FNSEFpWUJrUUFBQUFZRyt4a0FBQUQvL3dCTS8vWUNPUU1IQWlZQmtRQUFBQVlIQ0NBQUFBRC8vd0JNLy9ZQ09RTUhBaVlCa1FBQUFBWUcvQlFBQUFELy93Qk0vL1lDT1FNSEFpWUJrUUFBQUFZSENSb0FBQUQvL3dCTS8vWUNPUU5jQWlZQmtRQUFBQVlHL1JNQUFBRC8vd0JNLy9ZQ09RTmNBaVlCa1FBQUFBWUhDZ2tBQUFELy93QUFBQUFDMWdMVUFDWUhKclBJQVFjQVBBQ1BBQUFBQ2JFQUFiai95TEF6S3dELy93QUFBQUFEYkFMVUFDY0hDUDl5LzgwQkJ3QThBU1VBQUFBSnNRQUN1UC9Oc0RNckFBQUEvLzhBQUFBQUE0TUMxQUFuQnduL1hmL05BUWNBUEFFOEFBQUFDYkVBQXJqL3piQXpLd0FBQVAvLy8vc0FBQU9iQXlvQUpnY0toYzRCQndBOEFWUUFBQUFKc1FBQ3VQL09zRE1yQVAvL0FEZi85Z0x2QXd3Q0pnR1ZBQUFBQndic0FSTUFBUC8vQURmLzlnTHZBd3dDSmdHVkFBQUFCd2NtQVFvQUFQLy9BRGYvOWdMdkF3Y0NKZ0dWQUFBQUJnYjdkZ0FBQVAvL0FEZi85Z0x2QXdjQ0pnR1ZBQUFBQmdjSWZRQUFBUC8vQURmLzlnTHZBd2NDSmdHVkFBQUFCZ2I4Y0FBQUFQLy9BRGYvOWdMdkF3Y0NKZ0dWQUFBQUJnY0pkd0FBQVAvL0FEZi85Z0x2QTF3Q0pnR1ZBQUFBQmdiOWNBQUFBUC8vQURmLzlnTHZBMXdDSmdHVkFBQUFCZ2NLWlFBQUFQLy9BQUFBQUFNZUF0VUFKZ0YxTVFBQkJnYnN1Y2dBQ2JFQkFiai95TEF6S3dBQUFQLy9BQUFBQUFNdUF0VUFKZ0YxUVFBQkJnY21zOGdBQ2JFQkFiai95TEF6S3dBQUFQLy9BQUFBQUFQUEF0VUFKd0YxQU9JQUFBRUhCdnYvYS8vTkFBbXhBUUs0Lzgyd015c0FBQUQvL3dBQUFBQUR6QUxWQUNjQmRRRGZBQUFCQndjSS8zTC96UUFKc1FFQ3VQL05zRE1yQUFBQS8vOEFBQUFBQTZRQzFRQW5BWFVBdHdBQUFRY0cvUDlVLzgwQUNiRUJBcmovemJBekt3QUFBUC8vQUFBQUFBT3FBdFVBSndGMUFMMEFBQUVIQnduL1hmL05BQW14QVFLNC84MndNeXNBQUFELy8vL25BQUFEbHdNcUFDY0JkUUNxQUFBQkJ3YjkvM0gvemdBSnNRRUN1UC9Pc0RNckFBQUEvLy8vK3dBQUE3UURLZ0FuQVhVQXh3QUFBUVlIQ29YT0FBbXhBUUs0Lzg2d015c0EvLzhBTlAvMkFsOEMvUUltQVgwQUFBQUdCeG9OQUFBQS8vOEFOUC8yQWw4Qy9RSW1BWDBBQUFBR0J5VXZBQUFBLy84QUt2LzJBZFVDL1FJbUFZRUFBQUFHQnhydEFBQUEvLzhBS3YvMkFkVUMvUUltQVlFQUFBQUdCeVVQQUFBQS8vOEFVLzhRQWlZQy9RSW1BWU1BQUFBR0J4b2RBQUFBLy84QVUvOFFBaVlDL1FJbUFZTUFBQUFHQnlVL0FBQUEvLzhBSC8vMkFWa0MvUUltQVlVQUFBQUhCeHIvWGdBQS8vOEFVZi8yQVZrQy9RSW1BWVVBQUFBR0J5V0FBQUFBLy84QU5QLzJBaTRDL1FJbUFGSUFBQUFHQnhvRUFBQUEvLzhBTlAvMkFpNEMvUUltQUZJQUFBQUdCeVVtQUFBQS8vOEFUUC8yQWprQy9RSW1BWkVBQUFBR0J4b0pBQUFBLy84QVRQLzJBamtDL1FJbUFaRUFBQUFHQnlVckFBQUEvLzhBTi8vMkF1OEMvUUltQVpVQUFBQUdCeHBtQUFBQS8vOEFOLy8yQXU4Qy9RSW1BWlVBQUFBSEJ5VUFpQUFBLy84QU5QOGVBbDhEREFJbUFYMEFBQUFuQnV3QXVnQUFBQVlHN1JBQUFBRC8vd0EwL3g0Q1h3TU1BaVlCZlFBQUFDY0hKZ0N3QUFBQUJnYnRFQUFBQVAvL0FEVC9IZ0pmQXdjQ0pnRjlBQUFBSmdiN0hRQUFCZ2J0RUFELy93QTAveDRDWHdNSEFpWUJmUUFBQUNZSENDTUFBQVlHN1JBQS8vOEFOUDhlQWw4REJ3SW1BWDBBQUFBbUJ2d1hBQUFHQnUwUUFQLy9BRFQvSGdKZkF3Y0NKZ0Y5QUFBQUpnY0pIUUFBQmdidEVBRC8vd0EwL3g0Q1h3TmNBaVlCZlFBQUFDWUcvUmNBQUFZRzdSQUEvLzhBTlA4ZUFsOERYQUltQVgwQUFBQW1Cd29NQUFBR0J1MFFBUC8vQUFULzlnUGdBdFFBSmdBa0JBQUFKd0dGQW9jQUFBRUdCdXpDeUFBSnNRTUJ1UC9Jc0RNckFBQUEvLzhBQVAvMkE5c0MxQUFtQnlhNXlBQW1BQ1FBQUFFSEFZVUNnZ0FBQUFteEFBRzQvOGl3TXlzQUFBRC8vd0FBLy9ZRVVRTFVBQ2NHKy85ci84MEFKZ0FrZHdBQkJ3R0ZBdmdBQUFBSnNRQUN1UC9Oc0RNckFQLy9BQUQvOWdSWkF0UUFKd2NJLzNML3pRQW1BQ1IvQUFFSEFZVURBQUFBQUFteEFBSzQvODJ3TXlzQS8vOEFBUC8yQkVFQzFBQW5CdnovVlAvTkFDWUFKR2dBQVFjQmhRTG9BQUFBQ2JFQUFyai96YkF6S3dELy93QUEvL1lFUmdMVUFDY0hDZjlkLzgwQUpnQWtiQUFCQndHRkF1MEFBQUFKc1FBQ3VQL05zRE1yQVAvLy8rci85Z1JGQXlvQUp3YjkvM1QvemdBbUFDUnBBQUVIQVlVQzdBQUFBQW14QUFLNC84NndNeXNBLy8vLzZ2LzJCRWdES2dBbkJ3ci9kUC9PQUNZQUpHY0FBUWNCaFFMdkFBQUFDYkVBQXJqL3pyQXpLd0QvL3dCVC94QUNKZ01NQWlZQmd3QUFBQ2NHN0FES0FBQUFCd2J0LzIwQUFQLy9BRlAvRUFJbUF3d0NKZ0dEQUFBQUp3Y21BTUVBQUFBSEJ1My9iUUFBLy84QVUvOFFBaVlEQndJbUFZTUFBQUFtQnZzdEFBQUhCdTMvYlFBQUFBRC8vd0JUL3hBQ0pnTUhBaVlCZ3dBQUFDWUhDRFFBQUFjRzdmOXRBQUFBQVAvL0FGUC9FQUltQXdjQ0pnR0RBQUFBSmdiOEp3QUFCd2J0LzIwQUFBQUEvLzhBVS84UUFpWURCd0ltQVlNQUFBQW1Cd2t1QUFBSEJ1My9iUUFBQUFELy93QlQveEFDSmdOY0FpWUJnd0FBQUNZRy9TY0FBQWNHN2Y5dEFBQUFBUC8vQUZQL0VBSW1BMXdDSmdHREFBQUFKZ2NLSEFBQUJ3YnQvMjBBQUFBQS8vOEFBUC8yQktFQzFBQW1BQ3RjQUFBbUJ1eTV5QUVIQVlVRFNBQUFBQW14QVFHNC84aXdNeXNBQUFELy93QUEvL1lFbXdMVUFDWUFLMVlBQUNZSEpyUElBUWNCaFFOQ0FBQUFDYkVCQWJqL3lMQXpLd0FBQVAvL0FBRC85Z1U2QXRRQUp3QXJBUFVBQUFBbkJ2di9hLy9OQVFjQmhRUGhBQUFBQ2JFQkFyai96YkF6S3dBQUFQLy9BQUQvOWdVNkF0UUFKd0FyQVBVQUFBQW5Cd2ovY3YvTkFRY0JoUVBoQUFBQUNiRUJBcmovemJBekt3QUFBUC8vQUFuLzlnVTJBdFFBSndBckFQRUFBQUFuQnZ6L1hmL05BUWNCaFFQZEFBQUFDYkVCQXJqL3piQXpLd0FBQVAvLy8vMy85Z1V1QXRRQUp3QXJBT2tBQUFBbkJ3bi9Xdi9OQVFjQmhRUFZBQUFBQ2JFQkFyai96YkF6S3dBQUFQLy8vK2YvOWdVMUF5b0FKd0FyQVBBQUFBQW5CdjMvY2YvT0FRY0JoUVBjQUFBQUNiRUJBcmovenJBekt3QUFBUC8vLytmLzlnVXRBeW9BSndBckFPZ0FBQUFuQndyL2NmL09BUWNCaFFQVUFBQUFDYkVCQXJqL3pyQXpLd0FBQVAvL0FEZi9IZ0x2QXd3Q0pnR1ZBQUFBSndic0FSTUFBQUFHQnUxdkFBQUEvLzhBTi84ZUF1OEREQUltQVpVQUFBQW5CeVlCQ2dBQUFBWUc3VzhBQUFELy93QTMveDRDN3dNSEFpWUJsUUFBQUNZRyszWUFBQVlHN1c4QS8vOEFOLzhlQXU4REJ3SW1BWlVBQUFBbUJ3aDlBQUFHQnUxdkFQLy9BRGYvSGdMdkF3Y0NKZ0dWQUFBQUpnYjhjQUFBQmdidGJ3RC8vd0EzL3g0Qzd3TUhBaVlCbFFBQUFDWUhDVzhBQUFZRzdXOEEvLzhBTi84ZUF1OERYQUltQVpVQUFBQW1CdjF0QUFBR0J1MXZBUC8vQURmL0hnTHZBMXdDSmdHVkFBQUFKZ2NLWlFBQUJnYnRid0QvL3dBQS8vWUVxZ0xWQUNZQmRVSUFBQ1lHN0xuSUFRY0JoUU5SQUFBQUNiRUJBYmoveUxBekt3QUFBUC8vQUFELzlnUzNBdFVBSmdGMVRnQUFKd0dGQTE0QUFBRUdCeWF6eUFBSnNRSUJ1UC9Jc0RNckFBQUEvLzhBQVAvMkJVd0MxUUFuQVhVQTVBQUFBQ2NCaFFQekFBQUJCd2I3LzJ2L3pRQUpzUUlDdVAvTnNETXJBQUFBLy84QUFQLzJCVXdDMVFBbkFYVUE1QUFBQUNjQmhRUHpBQUFCQndjSS8zTC96UUFKc1FJQ3VQL05zRE1yQUFBQS8vLy8vLy8yQlNnQzFRQW5BWFVBdndBQUFDY0JoUVBQQUFBQkJ3YjgvMVAvelFBSnNRSUN1UC9Oc0RNckFBQUEvLzhBQVAvMkJUQUMxUUFuQVhVQXh3QUFBQ2NCaFFQWEFBQUJCd2NKLzEzL3pRQUpzUUlDdVAvTnNETXJBQUFBLy8vLzUvLzJCUlVES2dBbkFYVUFyUUFBQUNjQmhRTzhBQUFCQndiOS8zSC96Z0FKc1FJQ3VQL09zRE1yQUFBQS8vLy81Ly8yQlJ3REtnQW5BWFVBdEFBQUFDY0JoUVBEQUFBQkJ3Y0svM0gvemdBSnNRSUN1UC9Pc0RNckFBQUEvLzhBTlAvMkFsOEM3UUltQVgwQUFBQUdBVTF2QUFBQS8vOEFOUC8yQWw4Q3JnSW1BWDBBQUFBR0FVeDRBQUFBLy84QU5QOGVBbDhDL1FJbUFYMEFBQUFtQnhvTkFBQUdCdTBRQVAvL0FEVC9IZ0pmQWlVQ0pnRjlBQUFBQmdidEVBQUFBUC8vQURUL0hnSmZBdjBDSmdGOUFBQUFKZ2NsTHdBQUJnYnRFQUQvL3dBMC8vWUNYd0xsQWlZQmZRQUFBQVlCVVZRQUFBRC8vd0EwL3g0Q1h3TGxBaVlCZlFBQUFDWUJVVlFBQUFZRzdSQUEvLzhBQUFBQUFvMERuQUltQUNRQUFBRUhBVTBBZkFDdkFBaXhBZ0d3cjdBekt3QUEvLzhBQUFBQUFvMERYUUltQUNRQUFBRUhBVXdBaEFDdkFBaXhBZ0d3cjdBekt3QUEvLzhBQWdBQUFvOEM0Z0FtQUNRQ0FBRUhCeHIvUi8vbEFBbXhBZ0c0LytXd015c0EvLzhBQUFBQUFvMEM0Z0ltQUNRQUFBRUhCeVgvSi8vbEFBbXhBZ0c0LytXd015c0EvLzhBQVAvMkErY0N6UUFtQUNRQUFBQUhBWVVDamdBQUFBRUFSd0pVQUxzRERBQVBBREN4Qm1SRVFDVUFBZ0FCQUFJQlp3QUFBd01BVndBQUFBTmZCQUVEQUFOUEFBQUFEd0FQSkJJUkJRZ1hLN0VHQUVRVE5UWTJOU0ltTlRRMk16SVdGUlFHUnlFY0ZpQWVGeHNkTndKVUpnSWFFUmthR2hnbEhEVStBQUFBQVFEeS94NEJpZi9GQUE0QVZiRUdaRVMxQndFQkFBRktTN0FPVUZoQUZ3TUJBZ0FBQW00QUFBRUJBRmNBQUFBQllBQUJBQUZRRzBBV0F3RUNBQUtEQUFBQkFRQlhBQUFBQVdBQUFRQUJVRmxBQ3dBQUFBNEFEaVVpQkFnV0s3RUdBRVFGRlJRek1qWTNGUVlHSXlJbU5UVUJSU0lLRWdZSkl4VW9ManMxTEFRQlFRUUdMelJFLy84QVJ3SlVBTHNEREFJR0J1d0FBUC8vQUcwQ1hnSG5BdVVBQmdGUlJRQUFBd0IwQW1NQjJRTmRBQlVBSVFBdEFGR3hCbVJFUUVZQ0FRQUFCQU1BQkdjQUFRb0ZBZ01IQVFObkNRRUhCZ1lIVndrQkJ3Y0dYd3dJQ3dNR0J3WlBJeUlYRmdBQUtTY2lMU010SFJzV0lSY2hBQlVBRlNJaUVpSWlEUWdaSzdFR0FFUVROall6TWhZV016STJOek1HQmlNaUppWWpJZ1lIRnlJbU5UUTJNeklXRlJRR015SW1OVFEyTXpJV0ZSUUdkQVkwTUI0MUxSVVhGd2N4QlRNeEhEVXZGUmNYQmh3WEhSMFhGUjhmcUJVZUhoVVdIaDRDNmpRK0Z4Y1pGak0vRnhjWkZvY2FHeHdZR0J3Ykdob2JIQmdZSEJzYUFBRC8vd0JUL3hBQ0pnTDlBaVlCZ3dBQUFDWUhHaDBBQUFjRzdmOXRBQUFBQVAvL0FGUC9FQUltQWlVQ0pnR0RBQUFBQndidC8yMEFBUC8vQUZQL0VBSW1BdjBDSmdHREFBQUFKZ2NsUHdBQUJ3YnQvMjBBQUFBQS8vOEFVLzhRQWlZQzVRSW1BWU1BQUFBR0FWRmxBQUFBLy84QVUvOFFBaVlDNVFJbUFZTUFBQUFtQVZGbEFBQUhCdTMvYlFBQUFBRC8vLy9uQUFBQ1B3TEtBQ1lBS0U0QUFRY0hHdjhtLzgwQUNiRUJBYmovemJBekt3RC8vLy8wQUFBQ1BRTEtBQ1lBS0V3QUFRY0hKZjhKLzgwQUNiRUJBYmovemJBekt3RC8vLy94QUFBQzRRTEtBQ1lBSzFVQUFRY0hHdjh3LzgwQUNiRUJBYmovemJBekt3RC8vLy8xQUFBQzVBTEtBQ1lBSzFnQUFRY0hKZjhLLzgwQUNiRUJBYmovemJBekt3RC8vd0JmLy9ZRVJRTEtBQ1lBS3dBQUFBY0JoUUxzQUFBQUFnQ1ZBbFFCclFNSEFBOEFHUURFc1Faa1JFdXdHVkJZUUFvVEFRRUNHQUVEQUFKS0cwdXdIbEJZUUFvVEFRRUVHQUVEQUFKS0cwQUtFd0VCQkJnQkJRQUNTbGxaUzdBWlVGaEFIQVFCQWdBQkFBSUJad0FBQXdNQVZ3QUFBQU5mQndVR0F3TUFBMDhiUzdBZVVGaEFJUUFFQVFNRVZRQUNBQUVBQWdGbkFBQURBd0JYQUFBQUExOEhCUVlEQXdBRFR4dEFJZ0FDQUFFQUFnRm5BQUFGQXdCWEFBUUhBUVVEQkFWbEFBQUFBMThHQVFNQUEwOVpXVUFVRUJBQUFCQVpFQmtWRkFBUEFBOGtFaEVJQ0JjcnNRWUFSQk0xTmpZMUlpWTFORFl6TWhZVkZBWTNKaVluTlRNV0ZoY1ZsU0FiRngwZkZ4b2RPS29jT0JCcUJ4b0xBbFFtQWhvUkdCZ1pGeVFiTWo0R0lsTWdDaU5USFF3QUFBSUFyQUpVQWNnREJ3QVBBQmtBeExFR1pFUkxzQmxRV0VBS0ZnRUJBaEVCQXdBQ1NodExzQjVRV0VBS0ZnRUJCQkVCQXdBQ1NodEFDaFlCQVFRUkFRVUFBa3BaV1V1d0dWQllRQndFQVFJQUFRQUNBV2NBQUFNREFGY0FBQUFEWHdjRkJnTURBQU5QRzB1d0hsQllRQ0VBQkFFREJGVUFBZ0FCQUFJQlp3QUFBd01BVndBQUFBTmZCd1VHQXdNQUEwOGJRQ0lBQWdBQkFBSUJad0FBQlFNQVZ3QUVCd0VGQXdRRlpRQUFBQU5mQmdFREFBTlBXVmxBRkJBUUFBQVFHUkFaRlJRQUR3QVBKQklSQ0FnWEs3RUdBRVFUTlRZMk5TSW1OVFEyTXpJV0ZSUUdOelUyTmpjekZRWUdCNndnR3hjZEh4Y2FIVGhLQ2hvSWFoQTRIQUpVSmdJYUVSZ1lHUmNrR3pJK0Jnd2RVeU1LSUZNaUFBQUNBSFlDU1FIYkExd0FGUUFrQUV1eEJtUkVRRUFXQVFaSEFBWUhCb1FDQVFBQUJBTUFCR2NBQVFrRkFnTUlBUU5uQUFnSEJ3aFhBQWdJQjE4QUJ3Z0hUd0FBSUI0YkdoZ1hBQlVBRlNJaUVpSWlDZ2daSzdFR0FFUVROall6TWhZV016STJOek1HQmlNaUppWWpJZ1lIRnpVMk5qVWlKalUwTXpJV0ZSUUdkZ1UxTUI0MExoVVhGZ2N5QmpJeEhEVXZGUmNYQjBRZ0doWWVOQmtkTWdMcE5ENFhGeGtXTXo4WEZ4Z1hvQ01DRUFzVEZ5c2JHeWd5QUFBQS8vLy82Zi8yQVZrQzdRSW1BWVVBQUFBR0FVM0JBQUFBLy8vLzhmLzJBVmtDcmdJbUFZVUFBQUFHQVV6SkFBQUEvLy8vM1AvMkFWa0RDZ0ltQVlVQUFBQUhCeGovYWdBQS8vLy8yZi8yQVZrRENnSW1BWVVBQUFBSEJ4bi9ad0FBLy8vL3p2LzJBVmtDNVFJbUFZVUFBQUFHQVZHbUFBQUEvLy8vM3YvMkFWa0RYUUltQVlVQUFBQUhCdkQvYWdBQS8vOEFEd0FBQVZ3RG5BSW1BQ3dBQUFFSEFVMy81d0N2QUFpeEFRR3dyN0F6S3dBQS8vOEFGd0FBQVVvRFhRSW1BQ3dBQUFFSEFVei83d0N2QUFpeEFRR3dyN0F6S3dBQS8vLy81d0FBQWFvQ3lnQW1BQ3h2QUFFSEJ4ci9Kdi9OQUFteEFRRzQvODJ3TXlzQS8vLy81d0FBQWE4Q3lnQW1BQ3gwQUFFSEJ5WCsvUC9OQUFteEFRRzQvODJ3TXlzQUFBSUFqZ0pVQWFNREJ3QVBBQmtBdTdFR1pFUkxzQmxRV0VBS0V3RUNBUmdCQUFNQ1NodExzQjVRV0VBS0V3RUNCQmdCQUFNQ1NodEFDaE1CQWdRWUFRVURBa3BaV1V1d0dWQllRQnNFQVFFQUFnTUJBbWNBQXdBQUExY0FBd01BWHdZRkFnQURBRThiUzdBZVVGaEFJQUFFQWdBRVZRQUJBQUlEQVFKbkFBTUFBQU5YQUFNREFGOEdCUUlBQXdCUEcwQWhBQUVBQWdNQkFtY0FBd1VBQTFjQUJBWUJCUUFFQldVQUF3TUFYd0FBQXdCUFdWbEFEaEFRRUJrUUdSVVNGQ1FRQndnWks3RUdBRVFCSmlZMU5EWXpNaFlWRkFZakZCWVhGeVltSnpVekZoWVhGUUVDUERnZUdoWWZIUmNiSUc0Y054QnFCeG9MQWxRRVBqSWJKQmNaR0JnUkdnSWNJbE1nQ2lOVEhRd0FBZ0NqQWxRQndnTUhBQThBR1FDN3NRWmtSRXV3R1ZCWVFBb1dBUUlCRVFFQUF3SktHMHV3SGxCWVFBb1dBUUlFRVFFQUF3SktHMEFLRmdFQ0JCRUJCUU1DU2xsWlM3QVpVRmhBR3dRQkFRQUNBd0VDWndBREFBQURWd0FEQXdCZkJnVUNBQU1BVHh0THNCNVFXRUFnQUFRQ0FBUlZBQUVBQWdNQkFtY0FBd0FBQTFjQUF3TUFYd1lGQWdBREFFOGJRQ0VBQVFBQ0F3RUNad0FEQlFBRFZ3QUVCZ0VGQUFRRlpRQURBd0JmQUFBREFFOVpXVUFPRUJBUUdSQVpGUklVSkJBSENCa3JzUVlBUkFFbUpqVTBOak15RmhVVUJpTVVGaGNYTlRZMk56TVZCZ1lIQVJjOE9CNGFGeDRkRnh3ZkZRb2FDR29RTnh3Q1ZBUStNaHNrRnhrWUdCRWFBaHdNSFZNakNpQlRJZ0FDQUhZQ1NRSGJBMXdBRlFBa0FFdXhCbVJFUUVBV0FRaEhBQWdIQ0lRQ0FRQUFCQU1BQkdjQUFRa0ZBZ01HQVFObkFBWUhCd1pYQUFZR0IxOEFCd1lIVHdBQUpDTWhJQjBiQUJVQUZTSWlFaUlpQ2dnWks3RUdBRVFUTmpZek1oWVdNekkyTnpNR0JpTWlKaVlqSWdZSEZ5WW1OVFEyTXpJVkZBWWpGQllYZGdVMU1CNDBMaFVYRmdjeUJqSXhIRFV2RlJjWEI3YytNaDBZTlIwWEd4OEM2VFErRnhjWkZqTS9GeGNZRjZBRk1pZ2JHeXNYRXdzUUFnQUEvLzhBVFAvMkFqa0M3UUltQVpFQUFBQUdBVTFzQUFBQS8vOEFUUC8yQWprQ3JnSW1BWkVBQUFBR0FVeDFBQUFBLy84QVRQLzJBamtEQ2dJbUFaRUFBQUFHQnhnVkFBQUEvLzhBVFAvMkFqa0RDZ0ltQVpFQUFBQUdCeGtUQUFBQS8vOEFTZjhRQWkwRERBSW1BWTBBQUFBSEJ1d0F2UUFBLy84QVNmOFFBaTBEREFJbUFZMEFBQUFIQnlZQXRBQUEvLzhBVFAvMkFqa0M1UUltQVpFQUFBQUdBVkZSQUFBQS8vOEFUUC8yQWprRFhRSW1BWkVBQUFBR0J2QVZBQUFBLy84QUFBQUFBa2NEbkFJbUFEd0FBQUVIQVUwQVdRQ3ZBQWl4QVFHd3I3QXpLd0FBLy84QUFBQUFBa2NEWFFJbUFEd0FBQUVIQVV3QVlnQ3ZBQWl4QVFHd3I3QXpLd0FBLy8vLzV3QUFBdHdDeWdBbkFEd0FsUUFBQVFjSEd2OG0vODBBQ2JFQkFiai96YkF6S3dBQUFQLy8vL2tBQUFMcUFzb0FKd0E4QUtNQUFBRUhCeVgvRHYvTUFBbXhBUUc0Lzh5d015c0FBQUQvL3dBQUFBQUNqUUxVQUNZQU0xb0FBUVlISnJQSUFBbXhBZ0c0Lzhpd015c0FBQUFBQXdCeUFtTUIxZ01LQUFrQUZRQWhBR0N4Qm1SRVFBb0VBUUlCQ1FFQUFnSktTN0FpVUZoQUdnQUJBZ0FCVlFRQkFnQUFBbGNFQVFJQ0FGOEZBd0lBQWdCUEcwQWJCQUVDQUFNQ1Z3QUJBQUFEQVFCbEJBRUNBZ05mQlFFREFnTlBXVUFKSkNRa0poUVFCZ2dhSzdFR0FFUUJJeVltSnpVekZoWVhKelEyTXpJV0ZSUUdJeUltTnpRMk16SVdGUlFHSXlJbUFWc3hHemNRWndjYUMra2NGeFVlSGhVWEhQNGNGeFVlSGhVWEhBSnFJbFFnQ2lOVUhTTWRHUmtkSEJvYUhCMFpHUjBjR2hvQUFBQUFBd0J5QW1NQjFnTUtBQWtBRlFBaEFIZXhCbVJFUUFvR0FRTUFBUUVCQXdKS1M3QWlVRmhBSFFBQUF3RUFWUVVCQXdFQkExY0ZBUU1EQVY4SUJBY0NCZ1VCQXdGUEcwQWVCUUVEQVFJRFZ3QUFCZ0VCQWdBQlpRVUJBd01DWHdnRUJ3TUNBd0pQV1VBYUZ4WUxDZ0FBSFJzV0lSY2hFUThLRlFzVkFBa0FDUlFKQ0JVcnNRWUFSQk0xTmpZM014VUdCZ2NISWlZMU5EWXpNaFlWRkFZeklpWTFORFl6TWhZVkZBYnRDeG9IWnhBM0cza1hIQndYRlI0ZTZSY2NIQmNWSGg0Q2Fnd2RWQ01LSUZRaUJ4b2NIUmtaSFJ3YUdod2RHUmtkSEJvQUFBQUJBTUVDWGdGV0F2MEFDUUFuc1Faa1JFQWNDUVFDQUFFQlNnQUJBQUFCVlFBQkFRQmRBQUFCQUUwVUVBSUlGaXV4QmdCRUFTTW1KaWMxTXhZV0Z3RldNaHczRUdvSEdnb0NYaUpUSUFvalV4MEFBUC8vQURmL0hnTHZBdjBDSmdHVkFBQUFKZ2NhWmdBQUJnYnRid0QvL3dBMy94NEM3d0liQWlZQmxRQUFBQVlHN1c4QUFBRC8vd0EzL3g0Qzd3TDlBaVlCbFFBQUFDY0hKUUNJQUFBQUJnYnRid0FBQVAvL0FEZi85Z0x2QXVVQ0pnR1ZBQUFBQndGUkFLMEFBUC8vQURmL0hnTHZBdVVDSmdHVkFBQUFKd0ZSQUswQUFBQUdCdTF2QUFBQS8vLy84Zi8yQXlnQzFRQW1BREpUQUFFSEJ4ci9NUC9OQUFteEFnRzQvODJ3TXlzQS8vLy82Zi8yQXZrQzFRQW1BRElrQUFFSEJ5WCsvdi9OQUFteEFnRzQvODJ3TXlzQS8vLy82QUFBQXp3QzFRQW1BWFZQQUFFSEJ4ci9KLy9OQUFteEFRRzQvODJ3TXlzQS8vLy84UUFBQXhjQzFRQW1BWFVxQUFFSEJ5WC9Cdi9OQUFteEFRRzQvODJ3TXlzQS8vOEFJLy8yQkdnQzFRQW1BWFVBQUFBSEFZVUREd0FBQUFFQTZ3SmVBWUFDL1FBSkFDMnhCbVJFUUNJR0FRSUJBQUZLQUFBQkFRQlZBQUFBQVYwQ0FRRUFBVTBBQUFBSkFBa1VBd2dWSzdFR0FFUVROVFkyTnpNVkJnWUg2d3NZQ0dvUU54d0NYZ3dkVXlNS0lGTWlBQUFCQUUwQ1ZBREJBd3dBRHdBcXNRWmtSRUFmQUFFQUFnTUJBbWNBQXdBQUExY0FBd01BWHdBQUF3QlBFaFFrRUFRSUdDdXhCZ0JFRXlZbU5UUTJNeklXRlJRR0l4UVdGOEU5Tng0YUZ4NGZGeHdoQWxRRVBqVWNKUmdhR2hrUkdnSUFBQUFBQWYvci8zc0FGUUowQUFNQUhrQWJBQUFCQVFCVkFBQUFBVjBDQVFFQUFVMEFBQUFEQUFNUkF3MFZLd2NSTXhFVktvVUMrZjBIQUFBQi81UC9ld0J0QXJJQURnQWhRQjROREFzS0NRZ0hCZ1VFQXdJQkRRQklBUUVBQUhRQUFBQU9BQTRDRFJRckJ4RUhKemNuTnhjM0Z3Y1hCeWNSRlQ0YVVsSWFVMU1hVWxJYVBvVUNuRDRiVWxFYlUxTWJVVkliUHYxa0FBSC83UDk3QU5RQ3NnQUtBRFJBTVFVQkFRQUhCZ0lDQVFKS0JBTUNBRWdEQVFJQkFvUUFBQUVCQUZVQUFBQUJYUUFCQUFGTkFBQUFDZ0FLRmhFRURSWXJCeEV6SnpjWEJ5YzNJeEVVb1VBYmJHd2JRSG1GQXQ4OUcydHJHajM5U0FBQUFBQUIveXYvZXdBVUFySUFDZ0EwUURFRkFRQUJCQU1DQWdBQ1NnY0dBZ0ZJQXdFQ0FBS0VBQUVBQUFGVkFBRUJBRjBBQUFFQVRRQUFBQW9BQ2hZUkJBMFdLd2NSSXhjSEp6Y1hCek1SRlhsQkcyMXRHMEdpaFFLNFBScHJheHM5L1NFQUFBQUFBUUFvQVRnQ0ZBR05BQU1BSGtBYkFBQUJBUUJWQUFBQUFWMENBUUVBQVUwQUFBQURBQU1SQXcwVkt4TTFJUlVvQWV3Qk9GVlZBUC8vQUhiL0V3R3hBdmNBSmdCZmpBQUFCZ0JmZEFBQUFBQUNBQXdCMVFGMEFzb0FDQUFSQUNSQUlRSUJBQUFCWFFVREJBTUJBWUlBVEFrSkFBQUpFUWtSRFF3QUNBQUlFd1lORlNzQkZoWVhJeVltSnpjakZoWVhJeVltSnpjQlF3Y2NEazBaTUE0SFdnY2REazBaTHc0R0FzbzBoanMyZnpVTE5JWTdObjgxQ3dBQUFBQUIvK3ovZXdEVUFsb0FCUUFrUUNFREFRSUJBb1FBQUFFQkFGVUFBQUFCWFFBQkFBRk5BQUFBQlFBRkVSRUVEUllyQnhFekZTTVJGT2kvaFFMZkovMUlBQUFBQUFIL0xQOTdBQlFDV2dBRkFDUkFJUU1CQWdBQ2hBQUJBQUFCVlFBQkFRQmRBQUFCQUUwQUFBQUZBQVVSRVFRTkZpc0hFU00xTXhFVnYraUZBcmduL1NFQUFBQUFBZitNLzNzQWRBS3hBQWNBSmtBakJBRURBQU9FQUFFQUFBRlZBQUVCQUYwQ0FRQUJBRTBBQUFBSEFBY1JFUkVGRFJjckJ4RWpOVE1WSXhFVlgraGZoUUppMU5UOW5nQUFBZitNLzNzQWRBS3hBQXNBb0V1d0RGQllRQm9HQVFVQUJZUUFBUUFDQXdFQ1pRUUJBQUFEWFFBREE0VUFUQnRMc0E1UVdFQWZCZ0VGQUFXRUFBRUFBZ01CQW1VQUF3QUFBMVVBQXdNQVhRUUJBQU1BVFJ0THNCVlFXRUFhQmdFRkFBV0VBQUVBQWdNQkFtVUVBUUFBQTEwQUF3T0ZBRXdiUUI4R0FRVUFCWVFBQVFBQ0F3RUNaUUFEQUFBRFZRQURBd0JkQkFFQUF3Qk5XVmxaUUE0QUFBQUxBQXNSRVJFUkVRY05HU3NIRVNNMU14VWpGVE1WSXhFVlgrakJ3VitGQW1MVUo0Y20vWjRBQUFBQUFmK00vM3NBZEFLeEFBc0FvRXV3REZCWVFCb0dBUVVBQllRQUF3QUNBUU1DWlFRQkFBQUJYUUFCQVlVQVRCdExzQTVRV0VBZkJnRUZBQVdFQUFNQUFnRURBbVVBQVFBQUFWVUFBUUVBWFFRQkFBRUFUUnRMc0JWUVdFQWFCZ0VGQUFXRUFBTUFBZ0VEQW1VRUFRQUFBVjBBQVFHRkFFd2JRQjhHQVFVQUJZUUFBd0FDQVFNQ1pRQUJBQUFCVlFBQkFRQmRCQUVBQVFCTldWbFpRQTRBQUFBTEFBc1JFUkVSRVFjTkdTc0hFU00xTXpVak5UTVZJeEVWWDhIQjZGK0ZBbUltaHlmVS9aNEFBQUFBQXdBcEFjZ0NqQUxLQUFNQUJ3QUxBQzlBTEFnRkJ3TUdCUUVCQUYwRUFnSUFBSUlCVEFnSUJBUUFBQWdMQ0FzS0NRUUhCQWNHQlFBREFBTVJDUTBWS3dFVE13TWhFek1ETXhNekF3R2tnV2VqL2tDQmFLUjRnV2lqQWNnQkF2NytBUUwrL2dFQy92NEFBQUQvLy8vOUF2Z0I5d05EQWdZQWNRQUFBQVFBUlAvdkFNMEMyQUFMQUJjQUl3QXZBSVZMc0NsUVdFQXJBQVVLQVFRSEJRUm5DQUVBQUFGZkFBRUJpa3NKQVFJQ0ExOEFBd09GU3dBSEJ3WmZDd0VHQm9zR1RCdEFLUUFEQ1FFQ0JRTUNad0FGQ2dFRUJ3VUVad2dCQUFBQlh3QUJBWXBMQUFjSEJsOExBUVlHaXdaTVdVQWpKU1FaR0EwTUFRQXJLU1F2SlM4ZkhSZ2pHU01URVF3WERSY0hCUUFMQVFzTURSUXJFeUltTlRRMk16SVdGUlFHQnlJbU5UUTJNeklXRlJRR0J5SW1OVFEyTXpJV0ZSUUdCeUltTlRRMk16SVdGUlFHaUI0bUpoNGVKeWNlSGlZbUhoNG5KeDRlSmlZZUhpY25IaDRtSmg0ZUp5Y0NTaUlsSmlFaEppVWl5U0lsSmlFaEppVWl5U0lsSmlFaEppVWl5U0lsSmlFaEppVWlBQUFBQWYrTS8zc0FkQUt4QUE4QXJFdXdERkJZUUJ3SUFRY0FCNFFBQXdRQkFnRURBbVVHQVFBQUFWMEZBUUVCaFFCTUcwdXdEbEJZUUNJSUFRY0FCNFFBQXdRQkFnRURBbVVGQVFFQUFBRlZCUUVCQVFCZEJnRUFBUUJORzB1d0ZWQllRQndJQVFjQUI0UUFBd1FCQWdFREFtVUdBUUFBQVYwRkFRRUJoUUJNRzBBaUNBRUhBQWVFQUFNRUFRSUJBd0psQlFFQkFBQUJWUVVCQVFFQVhRWUJBQUVBVFZsWldVQVFBQUFBRHdBUEVSRVJFUkVSRVFrTkd5c0hFU00xTXpVak5UTVZJeFV6RlNNUkZWOWZYK2hmWDErRkFtSW1oeWNuaHliOW5nQUFBQUFDLzR6L2V3QjBBckVBQndBTEFLSkxzQXhRV0VBYUJnRURBQU9FQUFFQUJRUUJCV1VDQVFBQUJGMEFCQVNGQUV3YlM3QU9VRmhBSHdZQkF3QURoQUFCQUFVRUFRVmxBQVFBQUFSVkFBUUVBRjBDQVFBRUFFMGJTN0FWVUZoQUdnWUJBd0FEaEFBQkFBVUVBUVZsQWdFQUFBUmRBQVFFaFFCTUcwQWZCZ0VEQUFPRUFBRUFCUVFCQldVQUJBQUFCRlVBQkFRQVhRSUJBQVFBVFZsWldVQVFBQUFMQ2drSUFBY0FCeEVSRVFjTkZ5c0hFU00xTXhVakVRTXpOU01WWCtoZllwcWFoUUppMU5UOW5nS0lod0FBQWYrTC8zc0FkUUt4QUFVQUpVQWlCQUVDQVFBQlNnQUFBUUVBVlFBQUFBRmRBZ0VCQUFGTkFBQUFCUUFGRWdNTkZTc0hFU2N6QnhFVllPcGdoUUtEczdQOWZRQUIvNHYvZXdCMUFyUUFCZ0FkUUJvREFRQklBUUVBQWdDREF3RUNBblFBQUFBR0FBWVNFUVFORmlzSEVTTTNGeU1SRldCMWRXQ0ZBbUxYMS8yZUFBQUFBditMLzNzQWRRS3lBQVlBQ2dBY1FCa0tDUWdGQkFNQ0FRZ0FTQUVCQUFCMEFBQUFCZ0FHQWcwVUt3Y1JKemNYQnhFRE55Y0hGV0IxZFdBVlBqNCtoUUp6V1d0cldmMk5BcFUzTnpjQUFBQUIvNHovZXdCMEFyRUFEUUNuUzdBTVVGaEFHd2NCQmdBR2hBQURBQUlCQXdKbEJRRUFBQUZkQkFFQkFZVUFUQnRMc0E1UVdFQWhCd0VHQUFhRUFBTUFBZ0VEQW1VRUFRRUFBQUZWQkFFQkFRQmRCUUVBQVFCTkcwdXdGVkJZUUJzSEFRWUFCb1FBQXdBQ0FRTUNaUVVCQUFBQlhRUUJBUUdGQUV3YlFDRUhBUVlBQm9RQUF3QUNBUU1DWlFRQkFRQUFBVlVFQVFFQkFGMEZBUUFCQUUxWldWbEFEd0FBQUEwQURSRVJFUkVSRVFnTkdpc0hFU00xTXpVak5UTVZNeFVqRVJWZlgxK0pYMStGQW1JbWh5ZXVKdjJlQUFJQUV3R1hBVk1EVlFBTEFCVUFNVUF1QUFFQUF3SUJBMmNGQVFJQUFBSlhCUUVDQWdCZkJBRUFBZ0JQRFF3QkFCRVBEQlVORlFjRkFBc0JDd1lNRkNzVElpWTFORFl6TWhZVkZBWW5NalUwSXlJR0ZSUVdzazlRVEZOUVVVeFZTa29tSVNFQmwzVnJhblJ6YTJwMlM1V1VTa3RLU2dBQUFBSUFGUUdZQVZRRFZBQWNBQ2dBU2tCSEF3RUJBQVFCQWdFTEFRUUNBMG9HQVFBQUFRSUFBV2NBQWdjQkJBVUNCR2NBQlFNREJWY0FCUVVEWHdBREJRTlBIaDBCQUNRaUhTZ2VLQllVRUE0SUJnQWNBUndJREJRckV6SVdGeFVtSmlNaUJnWUhNelkyTXpJV0ZSUUdJeUltTlRRK0FoY2lCaFVVRmpNeU5qVTBKdklPSkFzTElCQTJQaG9EQkEwMEtEdEpWRVpIWGhNd1Znc25MQ2dwSXlvbUExUUVBMFFFQlNaQktCUWVSMEJFVW1CaUwxbElLdHdxRnlJN0tpa2pLQUFBQUFBQ0FCSUJtQUZRQTFZQUhBQW9BRXBBUnhNQkF3VU1BUUlEQ3dFQkFnTktCZ0VBQndFRUJRQUVad0FGQUFNQ0JRTm5BQUlCQVFKWEFBSUNBVjhBQVFJQlR4NGRBUUFrSWgwb0hpZ1lGaEFPQ1FjQUhBRWNDQXdVS3hNeUZoVVVEZ0lqSWlZbk5SWVdNekkyTmpjakJnWWpJaVkxTkRZWElnWVZGQll6TWpZMU5DYXNSbDRUTDFaRER5UUxDeDRVTmowYUFnUU5NaWMrU1ZSSUlTc2tKaWN0S0FOV1gySXZXa2tyQkFORkJBWW9RaWNUSDBkQlFWUkNLaWdpS2lrWUpUZ0FBQUQvL3dBZC81b0JRUURwQVVZQVJBQ2dLWm9tWmdBSnNRQUN1UCtnc0RNckFQLy9BQ0wvbWdGVUFPa0JSZ0JJQUtBcG1pWm1BQW14QUFLNC82Q3dNeXNBLy84QUl2K2FBV3NBNlFGR0FGSUFvQ21hSm1ZQUNiRUFBcmovb0xBekt3RC8vd0FKLzZBQldBRGpBVVlBV3dDZ0tab21aZ0FKc1FBQnVQK2dzRE1yQVAvL0FDRC9tZ0ZTQU9rQlJnUXBBS0FwbWlabUFBbXhBQUs0LzZDd015c0FBQUVBSUFBQUFob0MxQUFlQUZCQVRRSUJBUUFEQVFNQkFrb0FBd0FFQWdNRVpRVUJBZ2tCQmdjQ0JtY0FBUUVBWHdvQkFBQ0tTd0FIQndoZEFBZ0lnd2hNQVFBYUdSZ1hGaFVVRXhJUkVBOE9EUXdMQndVQUhnRWVDdzBVS3hNeUZ3Y21KaU1pQmhVVUZqTTFJUlVqRlRNVkl4VXpGU0UxSWlZMU5EYjRVejRrR0RNY09UOUNSQUVPcmFDZ3JmN3llSFJ3QXRRZ1R3MFBXMU5YVXNkUWQxQ0pVZHA2ZjNhTEFBTUFMLy9HQWpJQzl3QWxBQzRBTkFCS1FFY1lGUklEQndJd0xTY2dIQmtHQkFjaEJnTUJCQVVFQTBvSUJnSUFCUUNFQUFJQUJ3UUNCMmdBQkFBRkFBUUZad01CQVFHRUFVd0FBQ3NwQUNVQUpSVVpFeEVZRkFrTkdpc0ZOeVluQnlNM0ppWTFORFkzTnpNSE1oWVhOek1IRmhZWEJ5WW1Kd00yTmpjVkJnWUhCeWNUSmlZaklnY0RGaWNUQmdZVkZBRWZFaXdmRmtJYlBUMTlkaEpDRUJRcEVSRkNGQkVmRHljTEZRdGNKa2drSlUweEVoNWZDeGdMRUJGYUlGZExOejA2VndZTmFvWXBqMTk4cXhaWFVBTUNWV0lGRFFkV0JBb0UvajBCRUExWkR3OEJWYklCMHdJQ0EvNUZFMGNCZFJwd1RtSUFBQUFBQVFBeS8vWUNIUUxVQUMwQXFFdXdJbEJZUUJrREFRRUFGd1FDQWdFUUFRUUNJaGdOQXdVRUl3RUdCUVZLRzBBY0F3RUJBQVFCQXdFWEFRSURFQUVFQWlJWURRTUZCQ01CQmdVR1NsbExzQ0pRV0VBZkF3RUNBQVFGQWdSbkFBRUJBRjhIQVFBQWlrc0FCUVVHWUFBR0Jvc0dUQnRBSmdBQ0F3UURBZ1IrQUFNQUJBVURCR2NBQVFFQVh3Y0JBQUNLU3dBRkJRWmdBQVlHaXdaTVdVQVZBUUFuSlNBZkhCb1ZFdzhPQ0FZQUxRRXRDQTBVS3dFeUZoY0hKaVlqSWdZVkZCWVhFVE1YTXpZMk16SVdGd2NtSmlNaUJoVVZOalkzRlFZR0l5SW1KalUwTmpZQlhqVmhLU2dmU2l4YmFVQTZUUW9FRVRnbUN4ME5EQXdaQ0NnOEtrSWZKMUUxWklJK1JJWUMxQmNWVmhBWmw0Qm9paGdCV2owZkpRTURXUVFFUGpxYkFoQUxXUkFQV3FWd2JLVmVBQUVBVS8rU0EyWUNtZ0FtQUx4THNCbFFXRUFOSlNJY0F3SUFFUTRDQVFJQ1NodEFEU1VpSEFNQ0J4RU9BZ0VDQWtwWlM3QUtVRmhBSVFBSkFBQUpiZ0FFQVFTRUJRRUNBZ0JmQ0FjS0F3QUFqVXNHQXdJQkFZTUJUQnRMc0JsUVdFQWdBQWtBQ1lNQUJBRUVoQVVCQWdJQVh3Z0hDZ01BQUkxTEJnTUNBUUdEQVV3YlFDUUFDUUFKZ3dBRUFRU0VBQWNIaFVzRkFRSUNBRjhJQ2dJQUFJMUxCZ01DQVFHREFVeFpXVUFiQVFBa0l5RWZHeG9aR0JVVEVBOE5EQWtIQlFRQUpnRW1DdzBVS3dFeUZoVVJJeEUwSXlJR0ZSRWpOUWNqRXpVMEl5SUdGUkVqRVRNWE16WTJNeklYTnpNSE5nS3ZXMXhxWlVnK2FYWlB4V1pNT1dwVUR3WVpWVEJ2TEZkUFBTWUNKVjVvL3FFQlVYMVpVLzdla1A0QnB4aDlZbHorOEFJYlNDb29ScnVFRHdBQUFBQUZBQW9BQUFJeUFzb0FHd0FmQUNNQUp3QXJBRjFBV2g0QkF3UW9BUXNBQWtvT0J3VURBeElRQ0FNQ0FRTUNaaEVQQ1FNQkV3d0tBd0FMQVFCbEJnRUVCSUpMRkEwQ0N3dURDMHdBQUNzcUp5WWxKQ01pSVNBZEhBQWJBQnNhR1JnWEZoVVVFeEVSRVJFUkVSRVJFUlVOSFNzek5TTTFNelVqTlRNMU14Y3pOVE1WTXhVakZUTVZJeFVqSnlNVkF6TW5JeE16SnlNWE15Y2pGek1uSTFKSVNFaEllRnB1V0VoSVNFaDRXMjBESmlZRUIxWWNQSzg5QWxkWUJBTW0va05QUS9mMzkvZERUMFArL3Y0QjAzVCsrazlQVC85dEFBQURBRkgvOWdNMEFzb0FEUUFXQUQ4QXBVQVdHZ0VIQmhzQkJRY0dBUUlGTHdFSkFpNEJBUWtGU2t1d0dWQllRQ3dBQlFBQ0NRVUNaUXNCQkFRQVhRb0JBQUNDU3dBSEJ3WmZEQUVHQm8xTEFBa0pBVjBJQXdJQkFZTUJUQnRBTUFBRkFBSUpCUUpsQ3dFRUJBQmRDZ0VBQUlKTEFBY0hCbDhNQVFZR2pVc0RBUUVCZzBzQUNRa0lYd0FJQ0lzSVRGbEFJeGdYRHc0QkFETXhMU3NmSFJjL0dEOFNFQTRXRHhZTUN3b0pDQWNBRFFFTkRRMFVLeE15RmhVVUJnY1RJd01qRVNNUkZ5TVZNekkyTlRRbUJUSVdGd2NtSmlNaUJoVVVGaFlYSGdJVkZBWWpJaWMxRmhZek1qWTFOQ1ltSnk0Q05UUTI3M0JyUUNxUGNYdE5aWnczT1QwMk9RRjZLMFFnSWh3MEhTQWpEeWNsSXpjZldGeFNOQnBNSHl3bURpY21KVFlkV3dMS1pXaFJXQlQrd0FFaC90OEN5bHIxUHo1QU9Fc1ZFMDRRRXlBWkVoc2RGQk1xT2kxSldDQmRFUm9tSUJJY0hoVVZLam9yUkU0QUFBQUFCd0FLQUFBQ3FBTEtBQjhBSWdBbUFDb0FMZ0F4QURRQWFFQmxJZ0VEQkFGS0VBa0hCUVFERmhRU0NnUUNBUU1DWmhVVEVRc0VBUmdYRGd3RUFBMEJBR1VJQmdJRUJJSkxHUThDRFEyRERVd0FBRFF6TVRBdUxTd3JLaWtvSnlZbEpDTWhJQUFmQUI4ZUhSd2JHaGtZRnhZVkZCTVJFUkVSRVJFUkVSRWFEUjByTXljak5UTW5JelV6SnpNWE16Y3pGek0zTXdjekZTTUhNeFVqQnlNbkl3Y1RNeWNETXpjakZ6TW5JeGN6TnlNQk55TUZOeU9OTEZkTERUNHpLMW9uWmkxbkxXY2xXU2t5UFExS1ZTcHBMMjhzVVNZVXNEZ01UNUZXRFR1WE9RdFIvdndUSkFGQUVTUCtRMDlEOS9mMzkvZjNRMDlEL3Y3K0FkT0gvdWRQVDA5UFQvN29ob21KQUFBQUFBRUFEUUFBQWp3Q3lnQVRBRGhBTlJJQkJ3QUJTaEVCQUFGSkJRTUNBUVlCQUFjQkFHWUVBUUlDZ2tzSkNBSUhCNE1IVEFBQUFCTUFFeEVSRVJFUkVSRVJDZzBjS3pNUkl6VXpFVE1STXhNekF6TVZJeE1qQXdjUlhWQlFhQlhuYys2L29OZDN6RFFCUlVzQk92N0dBVHIreGt2K3V3RkZPUDd6QUFBQkFCTUFBQUlwQXNvQUZ3QTJRRE1XRlJRVEVoRVFEd2dIQmdVRUF3SUJFQU1BQVVvQ0FRQUFBVjBBQVFHQ1N3UUJBd09EQTB3QUFBQVhBQmNSRVJrRkRSY3JNelVISnpjMUJ5YzNOU00xSVJVakZUY1hCeFUzRndjVjZXd2xrV3Nta2RZQ0Z0VnVKWk50SnBPWVNqZGtZVW8zWk5KZFhaQk1PR1ZoU3pkbDJnQUFBQUFEQUJmL0VBTzBBdFFBR3dBdkFEd0Fza0FTRUFFQ0F3OEJBQUk2QVFFSktnRUVDQVJLUzdBWlVGaEFPZ0FBQWdVQ0FBVitBQVVBQ1FFRkNXY0FBZ0lEWHdBREE0cExBQUVCQkdBR0NnSUVCSU5MREFFSUNBUmZCZ29DQkFTRFN3c0JCd2VIQjB3YlFEY0FBQUlGQWdBRmZnQUZBQWtCQlFsbkFBSUNBMThBQXdPS1N3QUJBUVJlQ2dFRUJJTkxEQUVJQ0FaZkFBWUdpMHNMQVFjSGh3ZE1XVUFmTVRBY0hBQUFOelV3UERFOEhDOGNMeWdtSVI4QUd3QWFKU1loRVEwTkdDc3pFek1ETXpJMk5qVTBKaVlqSWdZSEp6WTJNeklXRmhVVUJnWWpCUk0yTmpNeUZoVVVCZ1lqSWlZbkl3WUdCd2NUTWpZMU5DWWpJZ1lIQnhZV0tIaG9aZ2hlZzBNNWFFWXJYeVFpSkhJN2FKZFJaclJ6QVZCU0VtQlVVMDRwVjBVZE1RMEVBd2tLSDVJcVBpTWdKekVNQ2dzbkFqbitJRmVVWGtKaE5oTVFVeElYVFl0ZGdicGs4QUdKVm1CVlFDNWFQQlFPRXpvdGpnRXlRRGNqSnpJM0x4Y1NBQUFDQUFqL0VBSVFBdFVBSmdBekFFTkFRQ0FVRXhJUERRWUNCQTRFQWdFQ0F3RUFBUU5LQUFRRUExOEFBd09LU3dBQ0FvTkxBQUVCQUY4RkFRQUFod0JNQVFBdUxCc1pFUkFJQmdBbUFTWUdEUlFyQlNJbUp6VVdGak15TmpVMEppY0hKd2NqRXhjM0ppWTFORFl6TWhZVkZBWUhIZ0lWRkFZRE5qWTFOQ1lqSWdZVkZCWVdBVzhSSlJNU0loQWNKUjh0Y0ZNN1daUlFUaThyVmtSRlRqc3lLakVWVjBNaUZoMFlGeDRORi9BRkJWY0lCeWttSDNobndJVjBBUStTaFZ5U05WdFZVa3RDbWxCYWdGd2xUbE1DVlVCdElDc21LVElZUlVrQUJBQUtBQUFDTWdMS0FCNEFJd0FyQURFQVlrQmZEQW9DQVEwSkFnSURBUUpsRGdnQ0F3OEhBZ1FRQXdSbEFCQUFCUVlRQldjU0FRc0xBRjBSQVFBQWdrc0FCZ2FEQmt3Z0h3RUFNQzR0TENjbUpTUWlJUjhqSUNNZEhCc2FHUmdYRmhVVUV4RVBEZzBNQmdVRUF3QWVBUjRURFJRckFUSVdGek1WSXhZV0ZSUUdCek1WSXdZR0l5TVZJeEVqTlRNMUl6VXpOUmNqRlRNbUZ5TVZNelkyTlRRSEl4VXpNallCQkdSeUUwVTdBUUVEQVQxTEYzZHRMV2RPVGs1T3FFRzlJVEhOelFFQ0Y3a29Oa2NDeWsxSE9nZ1FDQTBaQ2p0QVZOMEJjVHRRT3BSWVBEeDJVQW9WRFJKNVBSMEFBQUFBQXdBOC83QUNpd0wzQUJnQUh3QWxBRlJBVVEwSEFnTUNIUTRDQkFNbEhBSUlCeFFCQUFnRVNnQUVBQWNJQkFkbEFBTURBbDhBQWdLS1N3QUlDQUJmQlFFQUFJTkxDUUVHQmdGZEFBRUJoQVpNQUFBaklpRWdBQmdBR0JNUkZSRVdFUW9OR2lzRk5TWW1OVFEyTnpVekZSWVdGd2NtSmljVk14RUdCZ2NWQVJRV0Z4RUdCZ1VqRlRZMk53RnVsWjJmazBjNmFDMG5JMVl2MWpKbVB2NzNXMmRjWmdGMGF5SXpGbEJIQ3NDa21NRVNKeU1CRnhOYUVCY0I5LzZjRUJNQ1J3RzBiSk1QQWhzU2phL1JBUWtGQUFNQUFBQUFBbXdDeWdBWEFCNEFJZ0JFUUVFTUNnSUFEUWtDQVFJQUFXWU9DQUlDQndVQ0F3UUNBMlVQQVFzTGdrc0dBUVFFZ3dSTUFBQWlJU0FmSEJzQUZ3QVhGaFVVRXhFUkVSRVJFUkVSRVJBTkhTc0JFek1WSXhjekZTTVhJeWNqQnlNM0l6VXpOeU0xTXhNWEJnWUhNeVltRnlNSE13RnZYcFY5SEdGSlUzQlA3azl3VTBsZ0hIeVRYemtIR1E5ZURoby9peHJBQXNyKzlVTlBRK3JxNnVwRFQwTUJDMnNnVmlvclZjTlBBQUFBQUFFQUMvLzJBaUlDMUFBNkFGNUFXeHNCQlFZYUFRUUZOd0VMQVRnQkFBc0VTZ2NCQkFnQkF3SUVBMlVKQVFJS0FRRUxBZ0ZsQUFVRkJsOEFCZ2FLU3dBTEN3QmZEQUVBQUlzQVRBRUFOVE12TGkwc0p5WWxKQjhkR0JZUkVBOE9DUWdIQmdBNkFUb05EUlFyQlNJbU5UUTJOeU0xTXo0RE55RTFJVFkyTlRRbUl5SUdCeWMyTmpNeUZoVVVCZ2N6RlNNT0F3Y2hGU0VHQmhVVU16STJOeFVHQmdFamQzd0dCQzlWRURZN01Bcis4QUZ3Q1FrN1BTOVZKaDhxYmpobWR3WUhObGtQTmo0ekN3RWEvb2tKQnBBNGFpa2xjZ3BpWHhFaURrTVJIUmdSQmtNTkhoY3FNQmtSV3hRWVdGa1RKZzlERHgwWkV3VkREaHNVYVJ3UlhoSVpBQUFBQWdBOC83QUNXUUwzQUJzQUlnQnBRQk1hQVFBRklod0xCd1FEQmdFQURBRUNBUU5LUzdBTVVGaEFIQUFBQUlKTEFBRUJBbUFFQVFJQ2kwc0FBd01GWFFZQkJRV0VBMHdiUUJ3QUFBQ0tTd0FCQVFKZ0JBRUNBb3RMQUFNREJWMEdBUVVGaEFOTVdVQU9BQUFBR3dBYkVSRVZGaEVIRFJrckFSVVdGd2NtSmljUk5qWTNGUVlHQnhVak5TNENOVFEyTmpjMUZRWUdGUlFXRndHcVlrMG9IVVFtSmtrbEkwVXNSMk9EUVVTRVgxVmhXbHdDOXlRRkpsb09GZ1A5M2dJUkRGME5EZ0pJUndkZG9HcGxuV0VKSm9NUWpuSnlqZzRBQVFCTEFBQUI5QUxLQUJrQVJFQkJHQUVDQ0FBQlNnQUFBUWdCQUFoK0NRRUlDSUlBQkFVQkF3SUVBMmNHQVFJQkFRSlZCZ0VDQWdGZEJ3RUJBZ0ZOQUFBQUdRQVpFUklSRVNFUkVpSUtCaHdySVFNMU16STJOeU0xTXlZakl6VWhGU01XRnpNVkl3WUdCeE1CQmJvaFNGSUh3c0VVaGljQnFiUXNDWDk5QjJCUHdRRkZOUzQzUTJWRFF5WS9RMGxSRGY3SS8vLy9GQUdoQU93RGFBRUhBQTMrN2dCd0FBaXhBQUd3Y0xBekt3QUVBREgvOWdNUEF0UUFFd0FsQURBQU9RQllRRlVMQVFZRkFnVUdBbjRBQVFBREJBRURad0FFQUFnSEJBaG5BQWNBQlFZSEJXVUtBUUlBQUFKWENnRUNBZ0JmQ1FFQUFnQlBKaVlWRkFFQU9UY3pNU1l3SmpBdkxTa25IeDBVSlJVbEN3a0FFd0VUREFZVUt3VWlMZ0kxTkQ0Q016SWVBaFVVRGdJbk1qNENOVFF1QWlNaUJnWVZGQllXSnhFek1oWVZGQVlqSXhVMU16STJOVFFtSXlNQm9GQ0dZelkzWW9aUVRJVmxPVFpqaGxBL2IxUXdMVk53UWxtTFQwK0tLWlZTVEZZK1VrWW1MQ2dyUlFvMlk0WlFUNFpqTnpaamhsQlFobU0yT0M1VGNrUkFjVlV4VUl4YlY0MVRYQUcxUlVSRFRKM2NKU2tuSXdBQUFBQUVBQVgvL0FMS0Fzb0FCd0FMQUJNQU9BRHJRQk1QQVFZREZ3RUlCeW9ZQWdvSUtRRUVDZ1JLUzdBS1VGaEFPUVVCQXdZRGd3SUJBQUVIQVFBSGZnQUVDZ2tLQkFsK0N3RUdBQUVBQmdGbURBRUhBQWdLQndobkFBb0VDUXBYQUFvS0NWOEFDUW9KVHh0THNBdFFXRUF5QlFFREJnT0RBZ0VBQVFjQkFBZCtDd0VHQUFFQUJnRm1EQUVIQUFnS0J3aG5BQW9FQkFwWEFBb0tCRjhKQVFRS0JFOGJRRGtGQVFNR0E0TUNBUUFCQndFQUIzNEFCQW9KQ2dRSmZnc0JCZ0FCQUFZQlpnd0JCd0FJQ2djSVp3QUtCQWtLVndBS0NnbGZBQWtLQ1U5WldVQWJGUlFNREM0c0p5VWNHaFE0RlRnTUV3d1RFUkVSRVJFUURRWWFLd0VqSnlNSEl4TXpFeU1CTXdVbkppY0dCZ2NIQlRJV0Z3Y21KaU1pRlJRV0Z4WVdGUlFHSXlJbUp6VVdGak15TmpVMEppY21KalUwTmdGV1RpQjJJRTJDVENkV0FZbFcvbE1nQXdZQ0JRSWZBYzhjUEJrVUZqUVVNU0FtTml4TlJSdzhGQlk4R1NJbEdTMHlNRDRCY2x0YkFWajlOZ0xLd2xzSkdBc1NCVnFzREFzN0NBd2dGQk1ORXk4cExqVUtDa01MRGhBU0VCWVFFakFuS2pjQUFRQWVBQUFCY1FJYkFBa0FMa0FyQUFNQ0E0TUFBZ0FCQUFJQlpRQUFCQVFBVlFBQUFBUmRCUUVFQUFSTkFBQUFDUUFKRVJFUkVRWUdHQ3N6TlRNMUl6VXpOVE1SSHVqWTJHdFVuMVRVL2VVQUFBQUFBd0FYLy9nREVnTEtBQU1BRUFBM0FLWkFIQTBNQ0FNSkFDZ0JDQWtuQVFNSU1RRUdCeFVCQlFZVUFRRUZCa3BMc0I1UVdFQXFBQWtBQ0FNSkNHZ0FCd0FHQlFjR1p3c0JBd01BWFFJQkFBQ0NTd0FGQlFGZkRBUUtBd0VCZ3dGTUcwQXVBQWtBQ0FNSkNHZ0FCd0FHQlFjR1p3c0JBd01BWFFJQkFBQ0NTd29CQVFHRFN3QUZCUVJmREFFRUJJc0VURmxBSWhJUkJBUUFBQ3dxSlNNZkhSd2FHQllSTnhJM0JCQUVFQThPQUFNQUF4RU5EUlVyTXdFekFRTVJORFkzQmdZSEJ5YzNNeEVCSWlZbk5SWXpNalUwSXlNMU16STJOVFFtSXlJR0J5YzJOak15RmhVVUJnY1ZGaFlWRkFaMkFhaFkvbGMxQWdJSUdRc3hLSWRQQVhjbFFCNUVRRnRtT0RVektTTWNIVEliS0I5R01FUktLaUlxTDFVQ3l2MDJBUjRCQXhneUVnZ1dDQ1UxWS81VS90b09FRWdsUlVBOUpSd2NIQlFTTlJjYlBUSW1OQW9FQ0RZbU9rZ0FBQUFBQXdBVy8vZ0RQd0xUQUJrQUhRQkVBU1pMc0J0UVdFQWZEUUVBQVF3QkN3QTFBUW9MTkFFQ0F3SStBUWdKSVFFSENDQUJCUWNIU2h0QUh3MEJBQVFNQVFzQU5RRUtDelFCQWdNQ1BnRUlDU0VCQndnZ0FRVUhCMHBaUzdBYlVGaEFNZ0FMQUFvQ0N3cG9BQUlNQVFNSkFnTmxBQWtBQ0FjSkNHY0FBQUFCWHdRQkFRR0tTd0FIQndWZkRnWU5Bd1VGZ3dWTUcwdXdIbEJZUURZQUN3QUtBZ3NLYUFBQ0RBRURDUUlEWlFBSkFBZ0hDUWhuQUFRRWdrc0FBQUFCWHdBQkFZcExBQWNIQlY4T0JnMERCUVdEQlV3YlFEb0FDd0FLQWdzS2FBQUNEQUVEQ1FJRFpRQUpBQWdIQ1FobkFBUUVna3NBQUFBQlh3QUJBWXBMRFFFRkJZTkxBQWNIQmw4T0FRWUdpd1pNV1ZsQUpCOGVHaG9BQURrM01qQXNLaWtuSkNJZVJCOUVHaDBhSFJ3YkFCa0FHUllsS0E4TkZ5c1ROVGMrQWpVMEppTWlCZ2NuTmpZek1oWVZGQVlIQnpNVkF3RXpBUVVpSnpVV016STJOVFFqSXpVek1qWTFOQ1lqSWdZSEp6WTJNeklXRlJRR0J4VVdGaFVVQmhaeEpTZ1BJUnNiTUJrckhrZ3VRRXM1T0VpOGlBR29WLzVZQVloSk8wUkFMeXhsT1RZeUtpUWNIREljSng1SEwwUktLU01yTDFVQkhqNXZKQzRrRlJ3ZEZ4UTJHaDgvT0RCTk5VTkovdUlDeXYwMkNCNUlKU1FoUUQwbEhCd2NGQkkxRnhzOU1pWTBDZ1FJTmlZNlNBRC8vd0FnLy9ZQnRnSWxBZ1lFSkFBQUFBRUFCd0FBQWZ3Q3lnQVZBRHhBT1FVQkF3WUJBZ0VEQW1VSEFRRUlBUUFKQVFCbEFBUUVna3NBQ1FrS1hnc0JDZ3FEQ2t3QUFBQVZBQlVVRXhFUkVSRVJFUkVSRVF3TkhTc3pOU00xTXpVak5UTVJNeEV6RlNNVk14VWpGU0VWWDFoWVdGaHNwcWFtcGdFeDNrdFZTd0VCL3Y5TFZVdUJYUUFBQUFBQkFBY0FBQUVKQXZnQUV3QTFRRElGQVFNR0FRSUJBd0psQndFQkNBRUFDUUVBWlFBRUJJUkxDZ0VKQ1lNSlRBQUFBQk1BRXhFUkVSRVJFUkVSRVFzTkhTc3pOU00xTXpVak5UTVJNeEV6RlNNVk14VWpGVk5NVEV4TWFreE1URXoyUzFWTEFSZis2VXRWUy9ZQUFBQUFBZi8xQUFBQi9BTEtBQ0VBUVVBK0FRRUFBUk1CQWdVQ1NnY0JBUUFGQWdFRlp3QUFCZ0VDQXdBQ1p3a0JDQWlDU3dBREF3UmVBQVFFZ3dSTUFBQUFJUUFoRWhJakVSUVNFaU1LRFJ3ckV4RVdGak15TmpjekJnWWpJaVluRlNFVklSRW1KaU1pQmdjak5qWXpNaFlYRWQ4RkRBWVVGUVk1QkRnc0JRMEZBUjMrZHdZS0JoTVdCVG9GTnl3RkRBVUN5djZsQVFNY0hVQkhBZ0xFWFFGUUFnTWRIRUJIQXdFQkt3QUFBQUlBQ2dBQUFqTUN5Z0FQQUJ3QWEwdXdKRkJZUUNVQUJRQURCQVVEWlFBR0JnSmRBQUlDZ2tzSUFRQUFBVjBIQVFFQmhVc0pBUVFFZ3dSTUcwQWpCd0VCQ0FFQUJRRUFaUUFGQUFNRUJRTmxBQVlHQWwwQUFnS0NTd2tCQkFTREJFeFpRQlVBQUJ3Ykdoa1lGaElRQUE4QUR5VWhFUkVLRFJnck14RWpOVE0xTXpJV0ZSUUdCaU1qRlJFek1qWTFOQ1lqSXhVekZTTmZWVlhJaklBMWZHcE5RVnRkVUZWVWlJZ0J1VlM5ZFd0QmJVSDdBVlpBVUVaRFlsUUFBZ0JmL3hBQ2J3TEtBQmtBSWdCT1FFc0hBUUlHRVFFREFSSUJCQU1EU2dBR0FBSUJCZ0psQ0FFRkJRQmRCd0VBQUlKTEFBRUJnMHNBQXdNRVh3QUVCSWNFVEJzYUFRQWVIQm9pR3lJV0ZCQU9Dd29KQ0FBWkFSa0pEUlFyQVRJV0ZSUUdCZ2NUSXdNakVSUVdNekkzRlFZR0l5SW1OUkVYSXhVek1qWTFOQ1lCSjRtREtFRWp5SHlzZkI4ZEhCUUxJUlJJVU1GVldsTk1VQUxLWm1nM1N6QU4vc01CSWY2VktpRUtWd1lJVFZZREYxenpQejVBTmdBQUFBQUVBQzMvTUFIdUF2Z0FId0FrQUMwQU13Q2xTN0FiVUZoQUZoWU9BZ0VDSWcwQ0JnRXhNQnNEQ0FjQ0FRQUVCRW9iUUJZV0RnSUJBaUlOQWdZQk1UQWJBd2dIQWdFRkJBUktXVXV3RzFCWVFDZ0FBQVFBaEFBR0FBY0lCZ2RtQUFNRGhFc0FBUUVDWHdBQ0FvMUxBQWdJQkY4RkFRUUVnd1JNRzBBc0FBQUZBSVFBQmdBSENBWUhaZ0FEQTRSTEFBRUJBbDhBQWdLTlN3QUVCSU5MQUFnSUJWOEFCUVdMQlV4WlFBd1JRUlFVRkJJbE54QUpEUjByRnlNM0ppWTFORGMzSWlNaUJnY25Oall6TWhjM013Y1dGUkVqSnlNR0JnY1ROQ2NITndjSE1DSWpCelkyTlFjVUZ6Y0dCcTVHT2pSQjB5a0VCaWxNSXlJbVl6WVBEajFHUUdwTEZRUWhSenVmSFNJL0FVZ0NDRFU3VE9zaUxpd2swTXNNVGtTWEU0OFlFVTBVR3dIVTRDU0gvcE5MS1NrREFYQTdHblVDUlFLNUEwWkRQQzhVb1F3d0FBQUNBQkwvTUFHaEF2Z0FIUUFnQUZKQVR4QUlBZ0VESHhjVEF3WUJHQUlDQndZRFNnQUNBQUFDQUdFSkNBVURBUUVFWFFBRUJJUkxDUWdGQXdFQkExMEFBd09GU3dBR0JnZGZBQWNIaXdkTUhoNGVJQjRnSkNJU0VSRVRGUkFLRFJ3ckZ5TTNKaVkxRVNNMU56Y3pGVE0zTXdjVkl3TVdNekkzRlFZR0l5SW5FeFUzaTBaRUZCaExUeVZCVlQ5R1FCZHBGQ0F0SkJFNkhSOFpBVDNRN0JSQU1BRXFNQ2h5ZWQzZlQvNlRFUTFRQ0FzR0FjN1YxUUQvL3dCZi96NEM5QUxLQWdZQ2l3QUFBQUVBVS85REFuWUMrQUFhQURaQU13UUJCQUFCU2dBQkFBSUJBbUVIQVFZR2hFc0FCQVFBWHdBQUFJMUxCUUVEQTRNRFRBQUFBQm9BR2hNaUVSRVRKd2dOR2lzVEZSUUdCek0yTmpNeUZoVVJNeEVqTlNNUk5DTWlCaFVSSXhHOUJBSUhHbGN6WDJWUVpWUnZVejVxQXZqTEdUSVFLU2xlWi83MS91KzlBVkIrWkZ2KzhRTDRBQUFCQUYvL1BnS0hBc29BRWdBdlFDd1JDd1lGQkFVREFVb0dBUVVBQUFVQVlRUUJBd09DU3dJQkFRR0RBVXdBQUFBU0FCSVZFUk1SRVFjTkdTc2xFU00xSXdNSEVTTVJNeEUyTmpjM013RVRBb2RuSmVwR2JHd1pOaG5CZlA3djExLyszOElCU1RyKzhRTEsvcWNlUEIvZy9zait6UUFBQUFBQkFGUC9Rd0k1QXZnQUZnQXpRREFWRGdZRkJBVUVBVW9HQVFVQUFBVUFZUUFEQTRSTEFBUUVoVXNDQVFFQmd3Rk1BQUFBRmdBV0dSRVRFUkVIRFJrckpSRWpOU01uQnhVakVUTVJGQVlITXpZMk56Y3pCeGNDT1dVb3NqNXBhUVFCQXdzbkQ2VjcyYWhVL3UrOThUUzlBdmoraEJRNEZnOHhFTEhuNEFBQUFBRUFJdjgrQWhzQ3lnQUxBRFZBTWdnQkFRSURBUUFEQWtvRkFRUUFCSVFBQVFFQ1hRQUNBb0pMQUFNREFGMEFBQUNEQUV3QUFBQUxBQXNTRVJJUkJnMFlLd1UxSVRVQklUVWhGUUVoRVFHMC9tNEJidjZkQWVYK2tnRjN3c0pOQWlCZFRmM2cvdUVBQVFBai8wTUJ0d0liQUFzQU5VQXlDQUVCQWdNQkFBTUNTZ1VCQkFBRWhBQUJBUUpkQUFJQ2hVc0FBd01BWFFBQUFJTUFUQUFBQUFzQUN4SVJFaEVHRFJnckJUVWhOUUVoTlNFVkFTRVJBVkwrMFFFVy92c0JlLzd3QVJpOXZVTUJobEpML29MKzhRQUNBRHovOWdLaUF0UUFGQUFqQUdlMkNRTUNCUVFCU2t1d0dWQllRQmtIQVFRRUFGOEJCZ0lBQUlwTEFBVUZBbDhEQVFJQ2d3Sk1HMEFoQUFFQmdrc0hBUVFFQUY4R0FRQUFpa3NBQWdLRFN3QUZCUU5mQUFNRGl3Tk1XVUFYRmhVQkFCd2FGU01XSXc0TUNBY0dCUUFVQVJRSURSUXJBVElXRnpNM014RWpKeU1HQmlNaUppWTFORFkyRnlJR0ZSUVdNekkyTmpVMU5DWW1BV0pKYlJ3RUQxdFhGQVliYWs1YWdrWkdoR2RhWm1aYlRsY2pJMWNDMURZclYvMDJXQ3cyV2FWeWNxUllYSktDZzQ4MllrUjJRRjgxLy84QUFBQUFBaXdDSUFJR0FtVUFBQUFCQUFnQUFBUE1BdEVBS2dCeVM3QWlVRmhBRFFJQkFRQWtHdzhEQkFJQkFrb2JRQTBDQVFFRUpCc1BBd1FDQVFKS1dVdXdJbEJZUUJRQUFRRUFYUVVFQmdNQUFJSkxBd0VDQW9NQ1RCdEFHQVVCQkFTQ1N3QUJBUUJmQmdFQUFJcExBd0VDQW9NQ1RGbEFFd0VBSUI4WEZoVVVDZ2tHQkFBcUFTb0hEUlFyQVRJWEZTWWpJZ1lIQXlNRExnSW5EZ0lIQXlNRE14TVdGaGMyTmpjVE14TVdGaGMyTmpjVE5qWURsaUVWRHhJWkdndUljM3NIRHd3Q0FRb09DSHh6dTI5cENoTUZCUlVMZDJ4M0RCUUZCQk1MVEJBNkF0RUlWd1VqTC8zYkFia1lQRFVMQ3pRK0d2NUtBc3IrV2l4ZUpTWmlKd0dtL2xnb1lpTWxYaXdCTWo0OUFBQUFBQUVBQ3dBQUEwQUNKUUF4QUZkQURSMEJBd0FySGhJR0JBUURBa3BMc0JsUVdFQVVBQU1EQUYwQ0FRSUFBSVZMQmdVQ0JBU0RCRXdiUUJnQkFRQUFoVXNBQXdNQ1h3QUNBbzFMQmdVQ0JBU0RCRXhaUUE0QUFBQXhBREVUSlN3YUVRY05HU3N6QXpNVEZoWVhNejRDTnhNekV4NENGek0yTmpjM05qWXpNaFlYRlNZbUl5SUdCd01qQXk0Q0p5TU9BZ2NEb0pWc1Jnc1VBd1FEQ3cwR1ZuUlVCZzRMQWdRREVnb3NEVGN1RXg4S0JSRUlGaGtLWkhsTkJ4TVBBZ1FDRGhJSVVBSWIvdThxWUJ3U09EZ1RBU0wrM2hVMk5oTVpXaXk3TlRFSEJFNENBeDhsL25NQkRScElQZ3NMUGtrYS92UUFBQUFDQUFvQUFBSU9BaWdBSHdBckFIQkFEeVlhQWdRRkJnRURCQW9CQWdNRFNrdXdFMUJZUUJzQUJBQURBZ1FEWndjQkJRVUFYd0VHQWdBQWpVc0FBZ0tEQWt3YlFCOEFCQUFEQWdRRFp3QUJBWVZMQndFRkJRQmZCZ0VBQUkxTEFBSUNnd0pNV1VBWElTQUJBQ0FySVNzWkZ4WVVFaEVRRHdBZkFSOElEUlFyRXpJV0ZSUUdCeGNXRmhjek5qWTNFek1ESXljR0JpTTFNalkzSmlZMU5EWVhJZ1lWRkJZWE5qWTFOQ2E1T0VVNk5STUxGd1VFQkJjTGMzRFJkRjBVTmhnVUloRUxEa3MyRmhNT0RCc2VGd0lvUGpnM1V4b3hIVXdaR1UwZkFUdjk1Zk1FQTB3QkFoODRHanhBU2g0TkZpc2NEaXdmRlJvQUFBRUFYd0FBQWZZQ3lnQUhBQ05BSUFBQkFBSURBUUpsQUFBQWdrc0VBUU1EZ3dOTUFBQUFCd0FIRVJFUkJRMFhLek1STXhFaEZTRVJYMndCSy83VkFzcisyRnordWdBQUFBRUFVd0FBQWJJQ0d3QUhBQ05BSUFBQUFBRUNBQUZsQkFFREE0VkxBQUlDZ3dKTUFBQUFCd0FIRVJFUkJRMFhLeE1WTXhVakZTTVJ2ZlgxYWdJYjIxWHJBaHNBQWdBMC8vWUN0UUlrQUJrQUl3QXRRQ29IQmdJQ0FSb09BZ0FDQWtvQUFnSUJYd0FCQVkxTEF3RUFBSXNBVEFFQUlSOFRFUUFaQVJrRURSUXJCU0ltTlRRMk54Y0dCaFVVRmhZWEVUUTJNeklXRmhVVUJnWW5OalkxTkNZaklnWVZBV3lVcERzdVVDVXRMRWtyWEUxQVhqTlNsQzlLWWpjd0hTZ0tpWkJTaVRnMk1tcEVRbEFuQlFFYVhHQkNkMUJnZzBKWUJtWmdWbUV0T3dBQUFnQVFBRW9CUWdIcUFBTUFCd0FJdFFZRUFnQUNNQ3MzSnlVWEFTY2xGelFrQVE0ay92SWtBUTRrL0RXNU5mNlZOYmsxQUFJQUtBS0FBUllEcUFBREFBOEFMRUFwQkFFQkF3R0RBQUFDQUlRQUF3SUNBMWNBQXdNQ1h3QUNBd0pQQUFBT0RBZ0dBQU1BQXhFRkJoVXJBUkVqRVFjVUJpTWlKalUwTmpNeUZnRVdUekFoRmhnZ0lCZ1dJUU9vL3RnQktKTWRIUjBkSFJ3Y0FBQUFBZ0FvQWkwQlNnTk9BQXNBRHdBalFDQVBBUUFCQVVvT0RRSUFSd0FCQUFBQlZ3QUJBUUJmQUFBQkFFOGtJZ0lHRmlzVEZBWWpJaVkxTkRZek1oWVhCeWMzbHlFV0dDQWdHQlloczlFNDBRTVZIUjBkSFIwY0hEVFJOOUlBQUFBQUFnQW9BbDRCVUFOT0FBc0FEd0FpUUI4QUFRQUFBd0VBWndBREFnSURWUUFEQXdKZEFBSURBazBSRWlRaUJBWVlLeE1VQmlNaUpqVTBOak15RmhjaE5TSHpJQmNZSUNBWUZ5QmQvdGdCS0FNVkhSMGRIUjBjSE5SUEFBQUJBQ2dDVXdFeUF2a0FCUUJHUzdBTFVGaEFGd0FCQUFBQmJnQUFBZ0lBVlFBQUFBSmVBd0VDQUFKT0cwQVdBQUVBQVlNQUFBSUNBRlVBQUFBQ1hnTUJBZ0FDVGxsQUN3QUFBQVVBQlJFUkJBWVdLeE0xTXpVekZTalZOUUpUTlhHbUFBQUFBUUJHQWtnQm9BT0lBQVlBRTBBUUFnRUFBUUNEQUFFQmRCRVJFUU1HRnlzVEZ5TVZJelVqODYySFRJY0RpTDZDZ2dBQUFBRUFSZ0k2QWFBRGVnQUdBQk5BRUFBQkFBR0RBZ0VBQUhRUkVSRURCaGNyRXljek5UTVZNL090aDB5SEFqcStnb0lBQUFBQ0FFWUJTQURHQTJVQUF3QVBBQ1JBSVFBQkFBR0RBQUFDQUlNQUFnTURBbGNBQWdJRFh3QURBZ05QSkNNUkVBUUdHQ3NUSXdNekF6UTJNeklXRlJRR0l5SW1xRU1aZG53bEd4b21KaG9iSlFJYUFVditKeVVlSGlVa0lDQUFBQUFDQUVjQlVnREhBMjhBQ3dBUEFDWkFJd0FDQUFNQUFnTitBQU1EZ2dBQkFBQUJWd0FCQVFCZkFBQUJBRThSRWlRaUJBWVlLeE1VQmlNaUpqVTBOak15RmdjekV5UEhKaG9hSmlZYUdpWmlRaHAyQXlzbEhoNGxKQ0Fnc3Y2MUFQLy9BRWNBcUFESEFzVURCd2Q2QUFEL1ZnQUpzUUFDdVA5V3NETXJBQUFBQUFFQUtBSFFBWTRDeWdBSkFBYXpCUUVCTUNzVE5RVVZKeFVuTlNjVktBRm1telZoQWdyQWlUbzhjeFZ5Sm9jQUFBRUFLUC8vQVk0QlNRQUpBQWF6QWdBQk1Dc0ZKVFVYRlJjMUZ4VVhBWTcrbWpWaE5ac0Jpc0FVaHlSekZYSTgvLzhBS1A4dUFaUC96Z01IQVVvQUFQelFBQW14QUFHNC9OQ3dNeXNBQUFBQUFnQkJBRThBeXdJb0FBc0FGd0FjUUJrQUFnQURBZ05qQUFFQkFGOEFBQUNOQVV3a0pDUWlCQTBZS3hNME5qTXlGaFVVQmlNaUpoRTBOak15RmhVVUJpTWlKa0VuSFIwcEtSMGRKeWNkSFNrcEhSMG5BZDhwSUNBcEppSWkvdDRvSUNBb0ppSWlBQUFDQURJQXNnR1ZBY2tBQXdBSEFEQkFMUUFBQkFFQkF3QUJaUVVCQXdJQ0ExVUZBUU1EQWwwQUFnTUNUUVFFQUFBRUJ3UUhCZ1VBQXdBREVRWU5GU3NUTlNFZEFpRTFNZ0ZqL3AwQmVGRlJkRkpTQUFBQkFFc0E0Z0RJQXNvQUF3QVRRQkFBQUFBQlhRQUJBWUlBVEJFUUFnMFdLemNqQXpPdlN4bDk0Z0hvQUFFQVRBR0lBTUlDeWdBREFCbEFGZ0lCQVFFQVhRQUFBSUlCVEFBQUFBTUFBeEVERFJVckV3TXpBMlVaZGhvQmlBRkMvcjRBQUFBQUEvOXRBbGdBbndOcUFBb0FGZ0FpQUQ1QU93WUJBZ0VBQVVvQUFBRUFnd1lCQVFNQmd3Z0VCd01DQWdOZkJRRURBNElDVEJnWERBc0FBQjRjRnlJWUloSVFDeFlNRmdBS0FBb1VDUTBWS3dNMU5qWTNNeFVPQWdjSElpWTFORFl6TWhZVkZBWXpJaVkxTkRZek1oWVZGQVk1RnpjUmVRMHpPaGR0Rmg0ZUZoVWVIcWdWSGg0VkZoNGVBdGtNSEVjaUNoTXlNUkdCR1J3Ykdob2JIQmtaSEJzYUdoc2NHUUFBQS85aEFsZ0FrZ05xQUFvQUZnQWlBRDVBT3drREFnQUJBVW9HQVFFQUFZTUFBQUlBZ3dVQkF3TUNYd2dFQndNQ0FvSURUQmdYREFzQUFCNGNGeUlZSWhJUUN4WU1GZ0FLQUFvVUNRMFZLd01XRmhjVkl5NENKelVYTWhZVkZBWWpJaVkxTkRZek1oWVZGQVlqSWlZMU5EWW1FVGNYUnhjNk13MUFGUjRlRlJZZUh0TVdIaDRXRlI0ZUEyb2lSeHdNRVRFeUV3cW9HaHNjR1JrY0d4b2FHeHdaR1J3YkdnQUFBZjU3QWtzQUJRTUtBQW9BSkVBaEF3RUNBUUtFQUFBQkFRQlhBQUFBQVY4QUFRQUJUd0FBQUFvQUNpSVRCQVlXS3dFK0FqTXpGU01pQmdmK2V5RjBtRmdGQldta0tnSkxRMVVuVURVNkFBQUIvL3NDU3dHSEF3b0FDUUFuUUNRQUFRSUJoQU1CQUFJQ0FGY0RBUUFBQWw4QUFnQUNUd0VBQndZRUF3QUpBUWtFQmhRckVUSVdGeU1tSmlNak5Zck5NRThvcEd3RkF3cGNZemM0VUFBQUFBSCtmQUpmQUFBQzVnQU5BQ2hBSlEwQkFBSUFBUUVBQWtvQUFRQUJoQUFDQUFBQ1Z3QUNBZ0JmQUFBQ0FFOGlFaUlEQmhjckVTWW1JeUlHQnlNMk5qTXlGaGMwYVRrMU53ZzZDMTlIT21jeUFuMExFaUFiUjBBU0NnQUFBUUFBQW1BQmhBTG5BQTBBS0VBbEFBRUFBUTBCQWdBQ1NnQUJBQUdEQUFBQ0FnQlhBQUFBQWw4QUFnQUNUeUlTSWdNR0Z5c1JGaFl6TWpZM013WUdJeUltSnpSb09qVTRDRGtLWUVZNmFESUN5Z3NUSUJ0SFFCSUxBUC8vQURULzlnSmZBMnNDSmdGOUFBQUFCZ2VzY3dBQUFQLy9BRFQvOWdKZkEyc0NKZ0Y5QUFBQUJnZXRjd0FBQVAvL0FEVC85Z0pmQTJzQ0pnRjlBQUFBQmdldWN3QUFBUC8vQURULzlnSmZBMnNDSmdGOUFBQUFCZ2V2Y3dBQUFQLy9BRFQvOWdKZkE0a0NKZ0Y5QUFBQUJnZkRkUUFBQVAvL0FEVC85Z0pmQTRrQ0pnRjlBQUFBQmdmQ2NnQUFBUC8vQURULzlnSmZBNGtDSmdGOUFBQUFCZ2ZCY3dBQUFQLy9BRFQvOWdKZkE0a0NKZ0Y5QUFBQUJnZkFjd0FBQVAvLy8vVC85Z0ZaQTJzQ0pnR0ZBQUFBQmdlc3hRQUFBUC8vLy9ULzlnRlpBMnNDSmdHRkFBQUFCZ2V0eFFBQUFQLy8vL1QvOWdGWkEyc0NKZ0dGQUFBQUJnZXV4UUFBQVAvLy8vVC85Z0ZaQTJzQ0pnR0ZBQUFBQmdldnhRQUFBUC8vLy9ELzlnRlpBNGtDSmdHRkFBQUFCZ2ZEeHdBQUFQLy8vKzcvOWdGWkE0a0NKZ0dGQUFBQUJnZkN3d0FBQVAvLy8rLy85Z0ZaQTRrQ0pnR0ZBQUFBQmdmQnhBQUFBUC8vLysvLzlnRlpBNGtDSmdHRkFBQUFCZ2ZBeEFBQUFQLy9BRXovOWdJNUEyc0NKZ0dSQUFBQUJnZXNjQUFBQVAvL0FFei85Z0k1QTJzQ0pnR1JBQUFBQmdldGNBQUFBUC8vQUV6LzlnSTVBMnNDSmdHUkFBQUFCZ2V1Y0FBQUFQLy9BRXovOWdJNUEyc0NKZ0dSQUFBQUJnZXZjQUFBQVAvL0FFei85Z0k1QTRrQ0pnR1JBQUFBQmdmRGNnQUFBUC8vQUV6LzlnSTVBNGtDSmdHUkFBQUFCZ2ZDYndBQUFQLy9BRXovOWdJNUE0a0NKZ0dSQUFBQUJnZkJjQUFBQVAvL0FFei85Z0k1QTRrQ0pnR1JBQUFBQmdmQWNBQUFBUC8vLy9MLzlnRlpBN2tDSmdHRkFBQUFCZ2Uvd1FBQUFQLy8vL0wvOWdGWkE3a0NKZ0dGQUFBQUJnZSt3UUFBQVAvLy8rbi85Z0ZaQTdjQ0pnR0ZBQUFBQmdlOXdBQUFBUC8vLytyLzlnRlpBN2NDSmdHRkFBQUFCZ2U4d1FBQUFQLy9BRXovOWdJNUE3a0NKZ0dSQUFBQUJnZS9iQUFBQVAvL0FFei85Z0k1QTdrQ0pnR1JBQUFBQmdlK2JBQUFBUC8vQUV6LzlnSTVBN2NDSmdHUkFBQUFCZ2U5YkFBQUFQLy9BRXovOWdJNUE3Y0NKZ0dSQUFBQUJnZThiQUFBQUFBQkFHRC9QQUtFQXRRQUlnQm5RQTRZQVFNQ0JBRUJBd01CQUFFRFNrdXdHVkJZUUJrQUFRWUJBQUVBWXdBQ0FnUmZCUUVFQkNaTEFBTURKd05NRzBBZEFBRUdBUUFCQUdNQUJBUW1Td0FDQWdWZkFBVUZMVXNBQXdNbkEweFpRQk1CQUIwYkZ4WVZGQkFPQ0FZQUlnRWlCd2NVS3dVaUppYzFGaFl6TWpZMk5SRTBKaU1pQmdZVkVTTVJNeGN6TmpZek1oWVZFUlFHQWJnYUtBNFFKUllaTHgxSVUwVk5IMnhVRVFVZGNEdHRoWEhFQndaYUJBWVVNaTRCeDFaT05XRkIvbDhDeWx3dk4zUjYvaXh3WmdELy93QmYvendDcVFMS0FnWUJDd0FBQUFFQVdmLzJBbjBDMUFBakFIeTFHQUVFQXdGS1M3QVpVRmhBS2dBQkJBSUVBUUorQUFNREJWOEdBUVVGSmtzQUJBUUZYd1lCQlFVbVN3QUNBZ0JmQndFQUFDNEFUQnRBS0FBQkJBSUVBUUorQUFNREJsOEFCZ1l0U3dBRUJBVmRBQVVGSmtzQUFnSUFYd2NCQUFBdUFFeFpRQlVCQUIwYkZ4WVZGQkFPQ1FjRkJBQWpBU01JQnhRckJTSW1OVFV6RlJRek1qWTFOVFFtSXlJR0JoVVZJeEV6RnpNMk5qTXlGaFVWRkFZR0FXaUZpbXlvVjAxSFUwVk5JR3hVRWdVZGJ6dHRoVHg3Q3BGM0RRdXVZRkxRVms0MVlVRThBV1ZjTHpkMGV1cEtkMFVBQXdBdkFsSUJZUU5yQUE4QUdRQWRBTVpMc0JsUVdFQU9HQUVDQUJNQkF3RUdBUVlEQTBvYlFBNFlBUUlFRXdFREFRWUJCZ01EU2xsTHNCbFFXRUFmQUFJQkFBSlhDQVFIQXdBQUF3WUFBMlVKQVFZQUJRWUZZZ0FCQVVBQlRCdExzREpRV0VBZ0J3RUFBQUlCQUFKbkNBRUVBQU1HQkFObENRRUdBQVVHQldJQUFRRkFBVXdiUUN3QUFRSURBZ0VEZmdjQkFBQUNBUUFDWndnQkJBQURCZ1FEWlFrQkJnVUZCbFVKQVFZR0JWNEFCUVlGVGxsWlFCMGFHaEFRQVFBYUhSb2RIQnNRR1JBWkZSUUxDZ2dIQUE4QkR3b0lGQ3NUTWhZVkZBWUhOVFkyTlNJbU5UUTJGeFlXRnhVakppWW5OUmNWSVRWN0doMDNQU0FiRngwZnhnZ2FDakljT0JDaC9zNERheVFiTWowRkpnSWFFUmdZR1JjS0kxTWREQ0pUSUFyQ1RVMEFBQUFEQUM4Q1VnRm9BMnNBRHdBWkFCMEJBVXV3R1ZCWVFBb1dBUUVDRVFFREFBSktHMHV3SGxCWVFBb1dBUUVFRVFFREFBSktHMEFLRmdFQkJCRUJCUUFDU2xsWlM3QVpVRmhBSHdRQkFnQUJBQUlCWndBR0NnRUhCZ2RoQ1FVSUF3TURBRjhBQUFCQUEwd2JTN0FlVUZoQUpBQUVBUU1FVlFBQ0FBRUFBZ0ZuQUFZS0FRY0dCMkVKQlFnREF3TUFYd0FBQUVBRFRCdExzREpRV0VBbEFBSUFBUUFDQVdjQUJBa0JCUU1FQldVQUJnb0JCd1lIWVFnQkF3TUFYd0FBQUVBRFRCdEFLd0FDQUFFQUFnRm5BQVFKQVFVREJBVmxBQUFJQVFNR0FBTm5BQVlIQndaVkFBWUdCMTBLQVFjR0IwMVpXVmxBSEJvYUVCQUFBQm9kR2gwY0d4QVpFQmtWRkFBUEFBOGtFaEVMQ0JjckV6VTJOalVpSmpVME5qTXlGaFVVQmpjMU5qWTNNeFVHQmdjSE5TRVZUQ0FiRngwZkZ4a2VPRW9LR2docUVEZ2MxUUV5QXJnbUFob1JHQmdaRnlRYk1qNEdEQjFUSXdvZ1V5SndUVTBBQXdBdkFsSUJZUU5yQUE4QUdRQWRBUVZMc0JsUVdFQUtHQUVCQUJNQkF3SUNTaHRMc0I1UVdFQUtHQUVCQlJNQkF3SUNTaHRBQ2hnQkFRVVRBUVFDQWtwWldVdXdHVkJZUUI4SkJRZ0RBQUFCQWdBQlp3b0JCd0FHQndaaEJBRURBd0pmQUFJQ1FBTk1HMHV3SGxCWVFDUUpBUVVCQXdWVkNBRUFBQUVDQUFGbkNnRUhBQVlIQm1FRUFRTURBbDhBQWdKQUEwd2JTN0F5VUZoQUpRZ0JBQUFCQWdBQlp3a0JCUUFFQXdVRVpRb0JCd0FHQndaaEFBTURBbDhBQWdKQUEwd2JRQ3dJQVFBQUFRSUFBV2NKQVFVQUJBTUZCR1VBQWdBREJ3SURad29CQndZR0IxVUtBUWNIQmwwQUJnY0dUVmxaV1VBZkdob1FFQUVBR2gwYUhSd2JFQmtRR1JVVUN3b0pDQVlGQUE4QkR3c0lGQ3NUTWhZVkZBWWpGQllYRlNZbU5UUTJGeFlXRnhVakppWW5OUmNWSVRWMEZ4OGRGeHNnUERnZHpBZ1lDekljTnhDbC9zNERheGNaR0JnUkdnSW1CRDR5R3lRS0kxTWREQ0pUSUFyQ1RVMEFBQUFBQXdBdkFsSUJad05yQUE4QUdRQWRBUGRMc0JsUVdFQUtGZ0VDQVJFQkFBTUNTaHRMc0I1UVdFQUtGZ0VDQkJFQkFBTUNTaHRBQ2hZQkFnUVJBUVVEQWtwWldVdXdHVkJZUUI0RUFRRUFBZ01CQW1jQUJna0JCd1lIWVFnRkFnQUFBMThBQXdOQUFFd2JTN0FlVUZoQUl3QUVBZ0FFVlFBQkFBSURBUUpuQUFZSkFRY0dCMkVJQlFJQUFBTmZBQU1EUUFCTUcwdXdNbEJZUUNRQUFRQUNBd0VDWndBRUNBRUZBQVFGWlFBR0NRRUhCZ2RoQUFBQUExOEFBd05BQUV3YlFDb0FBUUFDQXdFQ1p3QUVDQUVGQUFRRlpRQURBQUFHQXdCbkFBWUhCd1pWQUFZR0IxMEpBUWNHQjAxWldWbEFGaG9hRUJBYUhSb2RIQnNRR1JBWkZSSVVKQkFLQ0JrckV5WW1OVFEyTXpJV0ZSUUdJeFFXRnhjMU5qWTNNeFVHQmdjSE5TRVZ2RHc0SGhvV0h4MFhHeUFWQ3hvSGFoQTNITlVCTWdLNEJENHlHeVFYR1JnWUVSb0NIQXdkVXlNS0lGTWljRTFOQUFBQy8zUUNYZ0RBQXY0QUN3QVhBRnBBQ2djQkF3QUJBUUVDQWtwTHNDUlFXRUFYQkFFQkFnR0VBQUFBaEVzRkFRSUNBMThBQXdPS0Frd2JRQmNBQUFNQWd3UUJBUUlCaEFVQkFnSURYd0FEQTRvQ1RGbEFFZzBNQUFBVEVRd1hEUmNBQ3dBTEZRWU5GU3NETlQ0Q056TVZEZ0lISnlJbU5UUTJNeklXRlJRR0dnOGpJZ3g2RGpVN0dJSVdIaDRXRlI4ZkFsNE1FalUzRmdvVU9UY1NGaHNhSEJrWkhCb2JBQUFDLzFNQ1hnQ3NBMVlBQ3dBZEFHWkFDeGtRQWdBQ0ZRRUVBQUpLUzdBa1VGaEFGZ1lCQkFBRWhBQUJCUUVBQkFFQVp3TUJBZ0tFQWt3YlFDQURBUUlCQUFFQ0FINEdBUVFBQklRQUFRSUFBVmNBQVFFQVh3VUJBQUVBVDFsQUZRd01BUUFNSFF3ZEdCY1NFUWNGQUFzQkN3Y05GQ3NSSWlZMU5EWXpNaFlWRkFZSExnSW5OVE1XRmhjMk56TVZEZ0lIRmg0ZUZoWWVIa2tPS3k0VFFCczRHVFkyUVJNdkt3MEM3QnNhSEJrWkhCb2JqaGcxTXhNTkVpOGFOaVVORXpNMUdBQUFBLzluQW1rQW1nTldBQXNBRndBYkFGOUxzQmxRV0VBWUJ3SUdBd0FEQVFFRkFBRm5BQVFFQlYwSUFRVUZnZ1JNRzBBZUJ3SUdBd0FEQVFFRkFBRm5DQUVGQkFRRlZRZ0JCUVVFWFFBRUJRUk5XVUFiR0JnTkRBRUFHQnNZR3hvWkV4RU1GdzBYQndVQUN3RUxDUTBVS3dNeUZoVVVCaU1pSmpVME5qTXlGaFVVQmlNaUpqVTBOaGNWSVRWZkZSOGZGUmNkSGRRV0hoNFdGUjRlVWY3TkExWVpIQm9iR3hvY0dSa2NHaHNiR2h3Wm9FMU5BQUFBQUFQL1R3SmRBTElEVmdBTEFCY0FMUUJIUUVRREFRRUxBZ29EQUFRQkFHY0FCUXdKQWdjRkIyTUFDQWdFWHdZQkJBU0NDRXdZR0EwTUFRQVlMUmd0S3lrbkpTTWlJQjRjR2hNUkRCY05Gd2NGQUFzQkN3ME5GQ3NESWlZMU5EWXpNaFlWRkFZeklpWTFORFl6TWhZVkZBWUZOall6TWhZV016STJOek1HQmlNaUppWWpJZ1lIWHhjZEhSY1ZIeCtvRlI0ZUZSWWVIdjdiQmpRdkhqUXVGQllYQnpJR016QWNNeThWRnhZSEF1d2JHaHdaR1J3YUd4c2FIQmtaSEJvYmp6UStGeGNaRmpNL0Z4Y1lGd0FBQUFBQy8xY0NYUUNxQTNFQUNnQWdBRVJBUVFZQkFnRUFBVW9BQUFFQWd3Z0JBUUlCZ3dBRENRY0NCUU1GWkFBR0JnSmZCQUVDQW9JR1RBc0xBQUFMSUFzZ0hod2FHQllWRXhFUERRQUtBQW9VQ2cwVkt3TTFOalkzTXhVT0FnY0hOall6TWhZV016STJOek1HQmlNaUppWWpJZ1lIUnhjMEUzb09NemtZcUFVeExSd3lMQk1WRWdjMUJURXVHakV0RkJVVEJnTHBEQncrSWdvVExTMFJqRFErRnhjWkZqTS9GeGNZRndBQUF2OW5BbWtBbWdOeEFBb0FEZ0JidGdrRUFnRUFBVXBMc0JsUVdFQVhBQUFCQUlNRUFRRUNBWU1GQVFNREFsMEFBZ0tDQTB3YlFCd0FBQUVBZ3dRQkFRSUJnd0FDQXdNQ1ZRQUNBZ05lQlFFREFnTk9XVUFTQ3dzQUFBc09DdzROREFBS0FBb1ZCZzBWS3hNdUFpYzFNeFlXRnhVSE5TRVZCQmc2TkE1NkVqZ1g1QUV6QXVBU01URVRDaUpISEF4M1RVMEFBQUwvWndKcEFKb0RjUUFLQUE0QVc3WUdBUUlCQUFGS1M3QVpVRmhBRndBQUFRQ0RCQUVCQWdHREJRRURBd0pkQUFJQ2dnTk1HMEFjQUFBQkFJTUVBUUVDQVlNQUFnTURBbFVBQWdJRFhnVUJBd0lEVGxsQUVnc0xBQUFMRGdzT0RRd0FDZ0FLRkFZTkZTc0ROVFkyTnpNVkRnSUhCelVoRlVvV09CSjdEelE2R0pVQk13TGdEQnhISWdvVE1URVNkMDFOQUFBRC8xTUNXQUN0QTNFQUVRQWRBQ2tBUVVBK0RRZ0RBd0lBQVVvQkFRQUNBSU1IQVFJRUFvTUpCUWdEQXdNRVh3WUJCQVNDQTB3ZkhoTVNBQUFsSXg0cEh5a1pGeElkRXgwQUVRQVJGaFFLRFJZckF5WW1KelV6RmhZWE5qWTNNeFVPQWdjSElpWTFORFl6TWhZVkZBWXpJaVkxTkRZek1oWVZGQVkwRlVnY1B4czVHUm81RzBBVEx5c05raFllSGhZVkhoNm9GUjRlRlJZZUhnTGVJa2djRFJFa0dob2tFUTBTTGpBV2hoa2NHeG9hR3h3WkdSd2JHaG9iSEJrQUFBQUQvMllDV0FDWkEwb0FBd0FQQUJzQU5VQXlCZ0VCQUFBQ0FRQmxCUUVEQXdKZkNBUUhBd0lDZ2dOTUVSQUZCQUFBRnhVUUd4RWJDd2tFRHdVUEFBTUFBeEVKRFJVckV4VWhOUmN5RmhVVUJpTWlKalUwTmpNeUZoVVVCaU1pSmpVME5wbit6VHNWSGg0VkZoNGUweFllSGhZVkhoNERTazVPaUJvYkhCa1pIQnNhR2hzY0dSa2NHeG9BQUFML1Z3SmRBS29EU2dBREFCa0FaRXV3REZCWVFCNEFBQWdCQVFJQUFXVUFBd2tIQWdVREJXTUFCZ1lDWHdRQkFnS0NCa3diUUI0QUFBZ0JBUUlBQVdVQUF3a0hBZ1VEQldNQUJnWUNYd1FCQWdLS0JreFpRQm9FQkFBQUJCa0VHUmNWRXhFUERnd0tDQVlBQXdBREVRb05GU3NETlNFVkJUWTJNeklXRmpNeU5qY3pCZ1lqSWlZbUl5SUdCNW9CTS82K0JURXRIRElzRXhVU0J6VUZNUzRhTVMwVUZSTUdBdnhPVHA4MFB4Z1hHUll6UHhnWEdSY0FBQUFBQXY5bUFsd0FtUU5LQUFNQUR3QXFRQ2NFQVFFQUFBSUJBR1VBQXdNQ1h3VUJBZ0tDQTB3RkJBQUFDd2tFRHdVUEFBTUFBeEVHRFJVckV4VWhOUmN5RmhVVUJpTWlKalUwTnBuK3paa1hJQ0FYRnlBZ0EwcE5UWHNjSGgwY0hCMGVIQUFBQUFML1pnTUFBSmtEN3dBREFBOEFNRUF0QkFFQkFBQUNBUUJsQlFFQ0F3TUNWd1VCQWdJRFh3QURBZ05QQlFRQUFBc0pCQThGRHdBREFBTVJCZzBWS3hNVklUVVhNaFlWRkFZaklpWTFORGFaL3MyYkZ5QWdGeGdnSUFQdlRrNThIQjRkSEJ3ZEhod0FCQUFwQWxZQmF3TzNBQWtBRndBakFDOEFtRUFLQmdFREFBRUJBUU1DU2t1d01sQllRQ2tBQUFNQWd3VUJBd0VEZ3dvQkFRUUJnd0FFQ3dFQ0J3UUNhQTBJREFNR0JnZGZDUUVIQnpnR1RCdEFMd0FBQXdDREJRRURBUU9EQ2dFQkJBR0RBQVFMQVFJSEJBSm9DUUVIQmdZSFZ3a0JCd2NHWUEwSURBTUdCd1pRV1VBbUpTUVpHQXNLQUFBcktTUXZKUzhmSFJnakdTTVZGQklRRGcwS0Z3c1hBQWtBQ1JRT0NCVXJFelUyTmpjekZRWUdCd2NpSmljekZoWXpNalkzTXdZR0J5SW1OVFEyTXpJV0ZSUUdNeUltTlRRMk16SVdGUlFHbUJFZERsMFZOaGtHU2swSFBRWXpLaVUzQ0Q0SFZLVVdIUjBXRmg0ZXFCWWRIUllWSHg4RFNBd1hMeDBLR3pZVWRFczlJeHNlSUR4TWZoc2FIQmtaSEJvYkd4b2NHUmtjR2hzQUFBQUVBQ2tDVmdGckE3Y0FDUUFYQUNNQUx3Q2FRQW9JQVFNQkF3RUFBd0pLUzdBeVVGaEFLUW9CQVFNQmd3c0ZBZ01BQTRNQUFBUUFnd0FFQUFJR0JBSm9DUUVIQndaZkRRZ01Bd1lHT0FkTUcwQXhDZ0VCQXdHREN3VUNBd0FEZ3dBQUJBQ0RBQVFBQWdZRUFtZ05DQXdEQmdjSEJsY05DQXdEQmdZSFlBa0JCd1lIVUZsQUppVWtHUmdLQ2dBQUt5a2tMeVV2SHgwWUl4a2pDaGNLRnhVVEVSQU9EQUFKQUFrVURnZ1ZLeE1XRmhjVkl5WW1KelVGQmdZaklpWW5NeFlXTXpJMk53Y3lGaFVVQmlNaUpqVTBOak15RmhVVUJpTWlKalUwTnJvT0hoRTJHVFlWQVE0SFZFbEtUUWM5QmpNcUpUY0l3aFllSGhZV0hSM1VGUjhmRlJZZEhRTzNIUzhYREJRMkd3cGJQRXhMUFNNYkhpQ2NHUndhR3hzYUhCa1pIQm9iR3hvY0dRQUFBQUFFQURFQ1ZnRmpBN2tBQ1FBTkFCa0FKUUNHdGdZQkFnQUJBVXBMc0RKUVdFQWpDQUVCQUFHREFBQURBSU1KQVFNQUFnUURBbVlIQVFVRkJGOExCZ29EQkFRNEJVd2JRQ3NJQVFFQUFZTUFBQU1BZ3drQkF3QUNCQU1DWmdzR0NnTUVCUVVFVndzR0NnTUVCQVZmQndFRkJBVlBXVUFpR3hvUERnb0tBQUFoSHhvbEd5VVZFdzRaRHhrS0RRb05EQXNBQ1FBSkZBd0lGU3NCRlFZR0J5TTFOalkzRnhVaE5SY3lGaFVVQmlNaUpqVTBOak15RmhVVUJpTWlKalUwTmdFeUZUVWFOUkVkRG83K3pqb1dIaDRXRmgwZDFCVWZIeFVXSFIwRHVRb2JOaFFMRnk4ZWpVMU5iQmtjR2hzYkdod1pHUndhR3hzYUhCa0FBQUFFQURFQ1ZnRmpBN2tBQ1FBTkFCa0FKUUNFdGdnREFnRUFBVXBMc0RKUVdFQWpBQUFCQUlNSUFRRUNBWU1BQWdrQkF3VUNBMllMQmdvREJBUUZYd2NCQlFVNEJFd2JRQ2tBQUFFQWd3Z0JBUUlCZ3dBQ0NRRURCUUlEWmdjQkJRUUVCVmNIQVFVRkJGOExCZ29EQkFVRVQxbEFJaHNhRHc0S0NnQUFJUjhhSlJzbEZSTU9HUThaQ2cwS0RRd0xBQWtBQ1JRTUNCVXJFeVltSnpVekZoWVhGUWMxSVJVSElpWTFORFl6TWhZVkZBWXpJaVkxTkRZek1oWVZGQWJCR2pVVlhRNGRFY1VCTXZnV0hSMFdGaDRlcUJZZEhSWVZIeDhEU2hRMkd3b2VMeGNMYTAxTmlSc2FIQmtaSEJvYkd4b2NHUmtjR2hzQUFBTUFLd0pNQVdrRGlRQVBBQmtBSndEYVM3QVpVRmhBQ2hZQkFnRVJBUUFEQWtvYlM3QWVVRmhBQ2hZQkFnUVJBUUFEQWtvYlFBb1dBUUlFRVFFRkF3SktXVmxMc0JsUVdFQWtCQUVCQUFJREFRSm5BQWdMQVFZSUJtTUtCUUlBQUFOZkFBTURRa3NKQVFjSE9BZE1HMHV3SGxCWVFDa0FCQUlBQkZVQUFRQUNBd0VDWndBSUN3RUdDQVpqQ2dVQ0FBQURYd0FEQTBKTENRRUhCemdIVEJ0QUtnQUJBQUlEQVFKbkFBUUtBUVVBQkFWbEFBZ0xBUVlJQm1NQUFBQURYd0FEQTBKTENRRUhCemdIVEZsWlFCb2JHaEFRSlNRaUlCNGRHaWNiSnhBWkVCa1ZFaFFrRUF3SUdTc1RKaVkxTkRZek1oWVZGQVlqRkJZWEZ6VTJOamN6RlFZR0J3Y2lKaWN6RmhZek1qWTNNd1lHdmpzNUhob1dIeDBYR3lBVkN4b0hhaEEzSEQxS1RRYytCeThySmpJSlBnZFNBdFlFUGpJYkpCY1pHQmdSR2dJY0RCMVRJd29nVXlLVVF6Z2VFeFFkTjBRQUFBQUFBd0FyQWt3QmFRT0pBQThBR1FBbkFOcExzQmxRV0VBS0V3RUNBUmdCQUFNQ1NodExzQjVRV0VBS0V3RUNCQmdCQUFNQ1NodEFDaE1CQWdRWUFRVURBa3BaV1V1d0dWQllRQ1FFQVFFQUFnTUJBbWNBQ0FzQkJnZ0dZd29GQWdBQUExOEFBd05DU3drQkJ3YzRCMHdiUzdBZVVGaEFLUUFFQWdBRVZRQUJBQUlEQVFKbkFBZ0xBUVlJQm1NS0JRSUFBQU5mQUFNRFFrc0pBUWNIT0FkTUcwQXFBQUVBQWdNQkFtY0FCQW9CQlFBRUJXVUFDQXNCQmdnR1l3QUFBQU5mQUFNRFFrc0pBUWNIT0FkTVdWbEFHaHNhRUJBbEpDSWdIaDBhSnhzbkVCa1FHUlVTRkNRUURBZ1pLeE1tSmpVME5qTXlGaFVVQmlNVUZoY1hKaVluTlRNV0ZoY1ZCeUltSnpNV0ZqTXlOamN6Qmdhek96Z2RHaGNlSFJjY0gyNGNOeEJxQ0JvS2kwcE5CejRITHlzbU1naytCMUlDMWdRK01oc2tGeGtZR0JFYUFod2lVeUFLSTFNZERKUkRPQjRURkIwM1JBQUFBQUFEQUNzQ1RBRnFBNGtBRHdBWkFDY0E0MHV3R1ZCWVFBb1dBUUVDRVFFREFBSktHMHV3SGxCWVFBb1dBUUVFRVFFREFBSktHMEFLRmdFQkJCRUJCUUFDU2xsWlM3QVpVRmhBSlFRQkFnQUJBQUlCWndBSURBRUdDQVpqQ3dVS0F3TURBRjhBQUFCQ1N3a0JCd2M0QjB3YlM3QWVVRmhBS2dBRUFRTUVWUUFDQUFFQUFnRm5BQWdNQVFZSUJtTUxCUW9EQXdNQVh3QUFBRUpMQ1FFSEJ6Z0hUQnRBS3dBQ0FBRUFBZ0ZuQUFRTEFRVURCQVZsQUFnTUFRWUlCbU1LQVFNREFGOEFBQUJDU3drQkJ3YzRCMHhaV1VBZ0d4b1FFQUFBSlNRaUlCNGRHaWNiSnhBWkVCa1ZGQUFQQUE4a0VoRU5DQmNyRXpVMk5qVWlKalUwTmpNeUZoVVVCamMxTmpZM014VUdCZ2NISWlZbk14WVdNekkyTnpNR0JrNGdHeGNkSHhjYUhUaEtDaG9JYWhBNEhEMUtUUWMrQnk4ckpqSUpQZ2RTQXRZbUFob1JHQmdaRnlRYk1qNEdEQjFUSXdvZ1V5S1VRemdlRXhRZE4wUUFBQUFBQXdBcEFrd0Jad09KQUE4QUdRQW5BT05Mc0JsUVdFQUtFd0VCQWhnQkF3QUNTaHRMc0I1UVdFQUtFd0VCQkJnQkF3QUNTaHRBQ2hNQkFRUVlBUVVBQWtwWldVdXdHVkJZUUNVRUFRSUFBUUFDQVdjQUNBd0JCZ2dHWXdzRkNnTURBd0JmQUFBQVFrc0pBUWNIT0FkTUcwdXdIbEJZUUNvQUJBRURCRlVBQWdBQkFBSUJad0FJREFFR0NBWmpDd1VLQXdNREFGOEFBQUJDU3drQkJ3YzRCMHdiUUNzQUFnQUJBQUlCWndBRUN3RUZBd1FGWlFBSURBRUdDQVpqQ2dFREF3QmZBQUFBUWtzSkFRY0hPQWRNV1ZsQUlCc2FFQkFBQUNVa0lpQWVIUm9uR3ljUUdSQVpGUlFBRHdBUEpCSVJEUWdYS3hNMU5qWTFJaVkxTkRZek1oWVZGQVkzSmlZbk5UTVdGaGNWQnlJbUp6TVdGak15TmpjekJnWS9IeHdYSFI0WEdoNDVxaHczRUdvSEdndVJTa3dIUFFndktpWXpDRDhJVWdMV0pnSWFFUmdZR1Jja0d6SStCaUpUSUFvalV4ME1sRU00SGhNVUhUZEVBQUFBQUFFQUF2LzFBOFFDeWdBakFJQkxzQlZRV0VBT0doY1VFUVFGQVFZREFRQUJBa29iUUE0YUZ4UVJCQVVCQmdNQkJBRUNTbGxMc0JWUVdFQVpBQVlHQWwwREFRSUNKa3NBQVFFQVhRVUVCd01BQUNjQVRCdEFIUUFHQmdKZEF3RUNBaVpMQlFFRUJDZExBQUVCQUY4SEFRQUFMZ0JNV1VBVkFRQWNHeGtZRmhVVEVoQVBDQVlBSXdFakNBY1VLeGNpSmljMUZoWXpNalkyTno0Q055RVRFek1ERXlNREF5TVRKeU1PQWdjT0FrWVNJdzhOR2hBYklCUUlDQlljRFFFWXFLbHozdTk3dHJoejdhS0RDQlVWQ3cwb1Fnc0hCVmtGQnlsSExDYU92MjMrN3dFUi9xaitqZ0VxL3RZQmMvbEducEkwUWx3dkFBQUFBUUFGLy9rRE1BSWJBQmtBZ0V1d0lsQllRQTRVRVE0TEF3VUJCZ0lCQUFFQ1NodEFEaFFSRGdzREJRRUdBZ0VFQVFKS1dVdXdJbEJZUUJrQUJnWUNYUU1CQWdJb1N3QUJBUUJkQlFRSEF3QUFKd0JNRzBBZEFBWUdBbDBEQVFJQ0tFc0ZBUVFFSjBzQUFRRUFYd2NCQUFBdUFFeFpRQlVCQUJZVkV4SVFEdzBNQ2drR0JBQVpBUmtJQnhRckZ5SW5OUll6TWpZMk55RVhOek1ERXlNbkJ5TVRKeU1PQWo0a0ZSRVFJREVqQ3dFSmdZQjR0OEI0aVlwNHYzeHdEUzVNQndsU0JWdktwOExDL3ZqKzdjN09BUk96cHN0Y0FBQUFBZ0JmQUFBRE5RTEtBQkFBR1FBNlFEY0lCUUlGQmdzQkF3VUNTZ0FGQUFNQ0JRTmxBQVlHQUYwQkFRQUFKa3NIQkFJQ0FpY0NUQUFBR1JjVEVRQVFBQkFqRWhNaENBY1lLek1STXpJV0Z6Y3pBeE1qQXdZR0l5TVJFVE15TmpVMEppTWpYOGlNZUFTSGMrUHZlOHdoYWt0TlFWdGRVRlZVQXNwc2F0YitxUDZPQVU4ZEkvN3hBV285U1VBL0FBQUFBZ0JUL3hBRE1RSWxBQnNBS0FCOFFCQURBUWNBRUEwS0F3WUhGZ0VEQmdOS1M3QVpVRmhBSHdBSEJ3QmRBZ0VDQUFBb1N3a0JCZ1lEWHdRQkF3TW5Td2dCQlFVcUJVd2JRQ2NDQVFBQUtFc0FCd2NCWHdBQkFTOUxBQU1ESjBzSkFRWUdCRjhBQkFRdVN3Z0JCUVVxQlV4WlFCWWRIQUFBSXlFY0tCMG9BQnNBR3lNU0V5UVJDZ2NaS3hjUk14Y3pOall6TWhZWE56TURFeU1uQmdZaklpWW5JeFlXRlJVVE1qWTFOQ1lqSWdZSEZSUVdVMVlQQlJkTlAxSnZFSDU0dDhGNWhnNXhWRDFPRndjQ0JZeENRRUZEU3o0QlBQQURDMGdpTUdSa3Z2NzQvdTNJYUdvdEh3MDNFdHdCUFd4WFdHWldXUkJlWkFBQ0FBNEFBQU5MQXNvQUZnQWZBRXBBUndFQkJnTUJTZ0FDQUFNR0FnTmxDd0VJQUFZRUNBWmxDUUVCQVFCZEFBQUFKa3NBQkFRRlhRb0hBZ1VGSndWTUdCY0FBQnNaRng4WUh3QVdBQllSRVJFUkVSRW5EQWNiS3pNVExnSTFORFl6SVJVaEZTRVZJUlVoRlNFUkl3TVRNelVqSWdZVkZCWU95U05CS1lpRUFmWCsyUUVWL3VzQkovNXhmN1BUWDJOTlUxQUJPUXd1VUQ1aGFGek1XK3BkQVNMKzNnRjc5RGM5UFVNQUF3QUwvL1lEUndJbEFDRUFLQUF4QUw1THNCbFFXRUFTRUFFSUF3Y0JBUVVlQVFZQkh3RUFCZ1JLRzBBU0VBRUlBd2NCQVFVZUFRWUJId0VDQmdSS1dVdXdHVkJZUUNvQUJ3QUZBUWNGWlF3QkNRQUJCZ2tCWlFvQkNBZ0RYd1FCQXdNb1N3QUdCZ0JmQWdzQ0FBQXVBRXdiUURZQUJ3QUZBUWNGWlF3QkNRQUJCZ2tCWlFBSUNBUmZBQVFFTDBzQUNnb0RYUUFEQXloTEFBSUNKMHNBQmdZQVh3c0JBQUF1QUV4WlFDRXFLUUVBTFNzcE1Tb3hKeVVqSWh3YUdCY1RFUThOQmdVRUF3QWhBU0VOQnhRckJTSW1KeU1ISXpjdUFqVTBOak16RlRZek1oWVdGUlVoRmhZek1qWTNGUVlHQXpNbUppTWlCZ2N6TlNNaUJoVVVGZ0o0YVlnT2NZVjRtQjgySTI1WjVUWmNRMlEzL3BVQ1ZFc3pVaXNwVTlQL0FUcy9PVVRhYW53M01FQUtiMjNTM2drbFB5OU9VelUvTzI1TE9sTllFeE5ZRXhFQlR6OVBTbWFtTGlJckt3QUFBUUJmQUFBQ2VnTEtBQklBSjBBa0VoRVFEdzRMQ2drSUJ3SUxBQUlCU2dNQkFnSW1Td0VCQUFBbkFFd1dFUklRQkFjWUt5RWpBUkVqRVRNUk55YzNGemN6QnhjSEp3Y0Nlbi8rMEd4c3BsazVWVTkzaFdFNVhXMEJhdjZXQXNyK3BzRllPVlJjbkdBNVc0QUFBUUJUQUFBQ0l3SWdBQklBS1VBbUVoRU1DUWdIQmdVQ0NRRUFBVW9CQVFCSUF3RUFBQ2hMQWdFQkFTY0JUQkVTRmhNRUJ4Z3JFemNYTnpNSEZ3Y25CeE1qQXhFakVUTVJOL1F6UVRSMGEwMHlTVWowZXV4cWFuMEI3akpDUFh0Tk1rcFQvdWdCRWY3dkFodisrcE1BQUFFQUEvOEdBK2dDeWdBNEFPbExzQlZRV0VBWExnRUNDQ0VSQWdZQ0lBRURCZ1FCQVFNREFRQUJCVW9iUUJjdUFRSUlJUkVDQmdJZ0FRTUdCQUVCQlFNQkFBRUZTbGxMc0JWUVdFQXBBQWdBQWdZSUFtY0FCQVFIWFFBSEJ5WkxBQVlHQTE4RkFRTURKMHNBQVFFQVh3a0JBQUFxQUV3YlM3QXlVRmhBTFFBSUFBSUdDQUpuQUFRRUIxMEFCd2NtU3dBREF5ZExBQVlHQlY4QUJRVXVTd0FCQVFCZkNRRUFBQ29BVEJ0QUtnQUlBQUlHQ0FKbkFBRUpBUUFCQUdNQUJBUUhYUUFIQnlaTEFBTURKMHNBQmdZRlh3QUZCUzRGVEZsWlFCa0JBREl2TFN3bEl4NGNGUlFURWhBTkNBWUFPQUU0Q2djVUt3VWlKaWMxRmhZek1qWTFOQ1ltSXlJR0J4RWpFU01PQWdjT0FpTWlKaWMxRmhZek1qWTJOejRDTnlFUk5qWXpNaFlXRlJRR0JnTGdNa0FmSHo0alZGYzdaMEVUTVJCc3BRa1ZGZ3NOS0VJMkVpTU9EQnNQR3lBVUNRY1hHdzRCYXhjNkdseU9VRVozK2d3TVh3c01kbXRTWkMwREJQN2RBbTFHbjVJMFFsd3ZCd1ZaQkFjcFJpd21qNzlzL3JvRUFrbVFhMnFQUndBQUFBQUJBQVgvQ3dNa0Foc0FMQUMyUzdBZVVGaEFGeU1CQWdnYUR3SUdBaGtCQXdZREFRRURBZ0VBQVFWS0cwQVhJd0VDQ0JvUEFnWUNHUUVEQmdNQkFRVUNBUUFCQlVwWlM3QWVVRmhBS1FBSUFBSUdDQUpuQUFRRUIxMEFCd2NvU3dBR0JnTmZCUUVEQXlkTEFBRUJBRjhKQVFBQUtnQk1HMEF0QUFnQUFnWUlBbWNBQkFRSFhRQUhCeWhMQUFNREowc0FCZ1lGWHdBRkJTNUxBQUVCQUY4SkFRQUFLZ0JNV1VBWkFRQW5KU0loSGh3WUZoTVNFUkFOQ3djRkFDd0JMQW9IRkNzRklpYzFGaFl6TWpZMU5DWWpJZ1lIRlNNUkl3NENJeUluTlJZV016STJOamNoRlRZMk16SVdGUlFHQmdKRlJUVVhPaUE2UkU5VURCb05hbm9PTFVzN0poUUhFUWdoTUNRTEFUOE9IaEI0akR4bTlSeGREUkJZWUY1ZUFnUFdBY2FtekZ3S1VRSUVYTXVuNkFFRWlaRmhlVGtBQUFBQkFGLy9CZ1F0QXNvQUtBQjdRQklBQVFVQUhBRUVBdzhCQWdRT0FRRUNCRXBMc0RKUVdFQW5BQWdBQlFNSUJXVUFBQUFEQkFBRFp3a0JCd2NtU3dZQkJBUW5Td0FDQWdGZkFBRUJLZ0ZNRzBBa0FBZ0FCUU1JQldVQUFBQURCQUFEWndBQ0FBRUNBV01KQVFjSEprc0dBUVFFSndSTVdVQU9LQ2NSRVJFUkVqVWxKakVLQngwckFUWTJNeklXRmhVVUJnWWpJaVluTlJZV016STJOVFFtSmlNaUJnY1JJeEVoRVNNUk14RWhFVE1DaUJjN0dWeU9VRVY0U3pGQUlCOCtJMVJYTzJkQkV6RVFiUDZ2Ykd3QlVXd0JoQVFDU1pCcmFvOUhEQXhmQ3d4MmExSmtMUU1FL3QwQlJ2NjZBc3IrMkFFb0FBQUFBQUVBVS84TEExVUNHd0FtQU8xTHNCQlFXRUFTSFFFQ0J4QUJBd0lFQVFFREF3RUFBUVJLRzB1d0hsQllRQklkQVFRSEVBRURBZ1FCQVFNREFRQUJCRW9iUUJJZEFRUUpFQUVEQWdRQkFRTURBUUFCQkVwWldVdXdFRkJZUUNJSkFRY0VBUUlEQndKbkNBRUdCaWhMQlFFREF5ZExBQUVCQUY4S0FRQUFLZ0JNRzB1d0hsQllRQ2NBQkFJSEJGVUpBUWNBQWdNSEFtY0lBUVlHS0VzRkFRTURKMHNBQVFFQVh3b0JBQUFxQUV3YlFDZ0FCd0FFQWdjRVpRQUpBQUlEQ1FKbkNBRUdCaWhMQlFFREF5ZExBQUVCQUY4S0FRQUFLZ0JNV1ZsQUd3RUFJUjhjR3hvWkdCY1dGUlFURWhFT0RBZ0dBQ1lCSmdzSEZDc0ZJaVluTlJZV016STJOVFFtSXlJR0J4VWpOU01WSXhFekZUTTFNeFUyTmpNeUZoVVVCZ1lDZGlVNkd4WTZJRHRFVUZNTUdnMXE3bXBxN21vT0hoQjRqRHhsOVE0T1hRMFFXR0JlWGdJRDF1dnJBaHZiMitnQkJJbVJZWGs1QUFBQUFBRUFYLzgrQXVjQ3lnQUxBQ3BBSndBRUJnRUZCQVZoQUFFQkExMEFBd01tU3dJQkFBQW5BRXdBQUFBTEFBc1JFUkVSRVFjSEdTc0ZOU01SSVJFakVTRVJNeEVDZjJ2K3Qyd0NJR2pDd2dKdC9aTUN5djJWL3Q4QUFBQUFBUUJULzBRQ2hBSWJBQXNBS2tBbkJnRUZBQUFGQUdFQUFnSUVYUUFFQkNoTEF3RUJBU2NCVEFBQUFBc0FDeEVSRVJFUkJ3Y1pLeVVSSXpVakVTTVJJeEVoRVFLRVpXVCthZ0hTVlA3d3ZBSEYvanNDRy80NUFBRUFYLzgrQXVJQ3lnQVhBRGhBTlE0QkFRUUpBUVVCQWtvQUJBQUJCUVFCWndBRkJ3RUdCUVpoQUFNREprc0NBUUFBSndCTUFBQUFGd0FYRXlNUkV5TVJDQWNhS3dVMUl4RTBKaU1pQmdjUkl4RXpFVFkyTXpJV0J3Y3pFUUo2YXpsQk5sdzRiR3c3YXpka2NBRUJhTUxDQVFvNE9CUVUvcTRDeXY3Z0ZSaGZXTUgrM3dBQUFBQUJBRlAvUkFLR0F2Z0FHZ0EyUURNUUFRRUVBVW9BQlFjQkJnVUdZUUFCQVFSZkFBUUVMMHNBQXdNQVhRSUJBQUFuQUV3QUFBQWFBQm9USnhFVEloRUlCeG9yQlRVakVUUWpJZ1lWRVNNUk14VVVCZ2N6TmpZek1oWVZFVE1SQWlGa2IxTSthbW9FQWdjYVZ6TmZaV0M4dkFGUWZtUmIvdkVDK01zWk1CSXBLVjVuL3ZYKzhBQUFBUUJXQWw0QjZnTEtBQTBBV2JZTUFRSUJCUUZLUzdBWlVGaEFHd1FDQWdBQkFRQnZCZ0VGQVFFRlZRWUJCUVVCWFFNQkFRVUJUUnRBR2dRQ0FnQUJBSVFHQVFVQkFRVlZCZ0VGQlFGZEF3RUJCUUZOV1VBT0FBQUFEUUFORVJFUkVSSUhCaGtyQVJVSEl5Y2pCeU1uSXdjakp6VUI2aWdUR0ZZWUV4aFdHQk1uQXNvWVZESXlNakpVR0FBQkFCRC8rZ0lnQXNvQUhnQkhRRVFVRXhJUkVBOE9EUW9KQ0FjR0JRNERBUVFEQWdJREFnRUFBZ05LQUFNQkFnRURBbjRBQVFHQ1N3QUNBZ0JnQkFFQUFJc0FUQUVBR2hrV0ZRd0xBQjRCSGdVTkZDc1hJaWNSQnpVM05RYzFOelV6RlRjVkJ4VTNGUWNSUGdJMU14UU9BczAwSVdob2FHaG53TURBd0ZOZ0tXVWtUNElHQmdGQUpFZ2pTaU5ISTdLT1FrZENTa0pIUXY3dkEwZDNTa1dBWlRvQUFBSUFYd0FBQXY4Q3lnQUZBQWtBS2tBbkF3RUFBSUpMQUFFQkFsNEdCQVVEQWdLREFrd0dCZ0FBQmdrR0NRZ0hBQVVBQlJFUkJ3MFdLeUVSTXhFaEZTRVJNeEVCWVd3Qk12MWdiQUxLL1pOZEFzcjlOZ0FBQUFBQkFGLy9Pd011QXNvQUlBQTJRRE1lRlJFREFnUUlBUUVDQndFQUFRTktBQUVBQUFFQVpBWUZBZ1FFZ2tzREFRSUNnd0pNQUFBQUlBQWdFUllYSlNNSERSa3JBUkVVQmlNaUppYzFGaFl6TWpjUk5EWTNJd01qQXlNV0ZoVVJJeEV6RXpNVEF5NWpWeG9wRGhBaEVtRUJCQU1FMjE3VUJBTUVZcGZOQTlNQ3l2MDJaR0VIQkZjRkJXd0JxaXhhS3YybkFsb3JXekgrWFFMSy9ic0NSUUFBQVFCWi8vWUNzd0xVQUNjQWtFdXdHVkJZUUJFYkdnUURCQU1FRHdFQ0F3NEJBUUlEU2h0QUVSc2FCQU1FQXdRUEFRSUREZ0VGQWdOS1dVdXdHVkJZUUI4QUF3UUNCQU1DZmdBRUJBQmZCZ0VBQUlwTEFBSUNBVjhGQVFFQml3Rk1HMEFqQUFNRUFnUURBbjRBQkFRQVh3WUJBQUNLU3dBRkJZTkxBQUlDQVY4QUFRR0xBVXhaUUJNQkFDTWlIeDBaRnhNUkRBb0FKd0VuQncwVUt3RXlGaGNIRmhZVkZBWUdJeUltSnpVV0ZqTXlOalUwSmlNak5UY21KaU1pQmhVUkl4RTBOallCYm1wOEZvUmFjelZ3V0RSY0tTaGVLbEZIVVZVNGp4SkVOMVpQYXo1N0F0UmRVSXNIWjE1QVlqZ1JGV0FXR0VZOU96OU1saVVtWUZMK09nSExUM2REQUFELy93QUIvLzBDamdMS0FROEFKQUtPQXNyQUFBQUpzUUFDdUFMS3NETXJBQUFCQUR6LzlnS2xBdEVBSkFBdFFDb1RBUUVDRWdFQUFRSktBUUVDU0FBQkFRSmZBQUlDaFVzQUFBQURYd0FEQTRzRFRDVWxKQ2dFRFJnckFSY09BaFVVRmhZek1qWTFOQ1lqSWdZSE5UWTJNeklXRlJRR0JpTWlKaVkxTkRZMkFVaFRUbWsxTGx0Q1hseFhSQlVzQ3hJd0kyK0VRb1puWFkxUVIzb0MwVElsWG9CYVJXdytiRkpWV0FVR1VBY0ppSGRPZ2s1U2ttRnZvbW9BQUFBQ0FBci85Z0p0QXNvQUZnQWdBQ3hBS1I0TUJnTURBUUZLQWdFQkFZSkxBQU1EQUdBRUFRQUFpd0JNQVFBYkdSSVJDQWNBRmdFV0JRMFVLeGNpSmpVME5qY0RNeE1XRmhjek5qWTNFek1ERGdJbkZCWXpNalkyTndZR216MUFlR0h0ZEtFUEdRa0ZCeDRLZVhEbEprVk5ZQllVRWljc0cwaGlDa0UxU0dRUUFhTCs0aHN6R1JsRkZRRVMvZzlSWkM1M0VoY1pRejRJT0FBQUFBQUNBRVlBQUFGRUFzb0FFUUFqQUVWQVFnQUJDQUVBQndFQVp3QUhBQVlGQndabkFBSUNBMTBBQXdPQ1N3QUZCUVJmQ1FFRUJJTUVUQk1TQVFBZUhCc1pGaFFTSXhNakRBb0pCd1FDQUJFQkVRb05GQ3NUSXpVek1qWTFOQ01qTlRNeUZoVVVCZ1lESXpVek1qWTFOQ01qTlRNeUZoVVVCZ1ovRlJBNFJtaEtVbFpXSjFkWUZRMDFSbUl6T1ZWT0pGSUJuQzB3TUZWTVRrUXFSeXYrWkMwcE0wOU1VRUVuUXlrQUFBQUFBUUF4QVFrQmtRTEpBQkVBSlVBaUFBTUVBUUFEQUdNQUFnSUJYUUFCQVlJQ1RBRUFFQTRMQ1FnR0FCRUJFUVVORkNzQklpWW1OVFEyTXpNVkl5SVZGQll6TXhVQlRtSitQWHQ4YVYramJsY1dBUWs2WmtObGVGNkxURlEzQUFBQUFRQmYvenNDaXdMS0FCY0FQa0E3QkFFQkF3TUJBQUVDU2dBRkFBSURCUUpsQUFFSEFRQUJBR01HQVFRRWdrc0FBd09EQTB3QkFCUVRFaEVRRHc0TkRBc0lCZ0FYQVJjSURSUXJCU0ltSnpVV0ZqTXlOalVSSVJFakVUTVJJUkV6RVJRR0FjSWFLZzRSSXhNeE4vNnNiR3dCVkd4cnhRY0VXd1FHT0VrQkx2NjZBc3IrMkFFby9WQjFhdi8vQUEzL0R3TWdBc29BSmdBM0FBQUJCd09VQVFqL0dRQUpzUUVCdVA4WnNETXJBQUFCQUM3LzlnSWlBdFFBSVFCSlFFWU5BUUlCRXhJT0NRZ0hCZ01DSGdFRUF4OEJBQVFFU2dBREFnUUNBd1IrQUFJQ0FWOEFBUUdLU3dBRUJBQmZCUUVBQUlzQVRBRUFIQm9XRkJFUUN3b0FJUUVoQmcwVUt3VWlKalUwTmpZM0p6VTNNaFlYQnlZbUl3Y1hGU01pQmhVVUZqTXlOamNWQmdZQlRJeVNPbVEvdytGUWNqVW5MMWt0aVBsTWFtUmJYVEZ0TVN4cUNuRmlRVlV2QjN0TWVCUVlVUlFTUzV4T1FUZzlReGdYWUJRVUFBSUFJUC8yQWRZQ3l3QVNBQjBBUVVBK0dBRUVBeEVCQWdRSUFRRUNCd0VBQVFSS0JnRUVBQUlCQkFKbUJRRURBNEpMQUFFQkFGOEFBQUNMQUV3VEV3QUFFeDBUSFFBU0FCSVRKU01IRFJjckFSRVVCaU1pSmljMUZoWXpNalkxTlNFMUFSTTFORFkyTnlNR0JnY0hBZFpSU1JvbkRRNGNEaUFsL3JVQlJnWUNBZ0lFQ0JnVHJRTEwvZWxoWFFjRldnUUdKekFwU3dHdS9tQi9Ja3RDRkJBcUd1NEFBd0FnLy9ZQ2VBTExBQllBSVFBc0FMTkxzQzFRV0VBVUhBRUVBdzBCQWdRakJBSUJDQ2dEQWdBQkJFb2JRQlFjQVFRRERRRUNCQ01FQWdFSUtBTUNCd0VFU2xsTHNDMVFXRUFxQ2dZQ0JBVUJBZ2dFQW1ZQUF3T0NTd3NCQ0FnQVh3Y0pBZ0FBaTBzQUFRRUFYd2NKQWdBQWl3Qk1HMEFuQ2dZQ0JBVUJBZ2dFQW1ZQUF3T0NTd3NCQ0FnSFhRQUhCNE5MQUFFQkFGOEpBUUFBaXdCTVdVQWhJaUlYRndFQUlpd2lMQ2NtRnlFWElSTVNFUkFQRGd3TENBWUFGZ0VXREEwVUt3VWlKaWMxRmhZek1qWTFOU0UxQVRNUk14VWpGUlFHQXpVME5qWTNJd1lHQndjRkZRWUdCeU0xUGdJM0FUd2FKdzBPSEE0Z0pmNjFBVVp3a3BKUkdRSUNBZ1FJR0JPdEFlb05LUmM5Qmc4TEF3b0hCVm9FQmljd0tVc0JydjVnV1I1aFhRRTFmeUpMUWhRUUtocnVod2tsVmlVS0V6azdHQUFBQVAvL0FBQUFBQVNxQXMwQUpnQWtBQUFBQndBa0FoMEFBQUFEQUFELzlnUlNBdFVBRXdBZkFDa0FwYllrQlFJSEJnRktTN0FaVUZoQUlRa0JCd2dCQkFVSEJHWUFCZ1lCWHdJQkFRR0NTd0FGQlFCZkF3RUFBSU1BVEJ0THNCNVFXRUFsQ1FFSENBRUVCUWNFWmdBR0JnRmZBZ0VCQVlKTEFBQUFnMHNBQlFVRFh3QURBNHNEVEJ0QUtRa0JCd2dCQkFVSEJHWUFBUUdDU3dBR0JnSmZBQUlDaWtzQUFBQ0RTd0FGQlFOZkFBTURpd05NV1ZsQUZ5QWdBQUFnS1NBcEhod1lGZ0FUQUJNbUl4RVJDZzBZS3pjSEl3RXpGelkyTXpJV0ZoVVVCZ1lqSWlZbk54UVdNekkyTlRRbUl5SUdCeWNtSmljT0FnY0h2a2wxQVF0NFN4K2JmMjJVU2txVWJuNmJIMTFxY1hKb2FIRnlhbmhJQnhZSEJRNE5CRWpOelFMTnpXTnlXNlZ2YjZWY2MyU1pnSlNVZ0lDU2tyM05GRVVjRVM4cURNd0FBQUlBQVAvMkJBSUN6UUFXQUNBQVpMVWNBUVlEQVVwTHNCbFFXRUFiQUFZQUFRUUdBV1lGQVFNRGdrc0FCQVFBWHdJSEFnQUFpd0JNRzBBZkFBWUFBUVFHQVdZRkFRTURna3NBQWdLRFN3QUVCQUJmQndFQUFJc0FURmxBRlFFQUdCY1NFUThOQ1FnSEJnVUVBQllCRmdnTkZDc0ZJaVluSnlFSEl3RXpFeDRDTXpJMUVUTVJGQVlHQVRNbkppWW5EZ0lIQXVWdGdpTUkvdk5KZFFFTGVMTVRLMEUxckd4QmYvMloyRWdIRmdjRkRnMEVDbUpoRk0wQ3pmNGFNVUlpdHdIQi9qSk9ka0lCTTgwVVJSd1JMeW9NQUFBQUFnQUFBQUFEamdMTkFCSUFIQUF4UUM0WEFRVUFCQUVCQWdKS0JnRUZBQUlCQlFKbUJBRUFBSUpMQXdFQkFZTUJUQk1URXh3VEhCRVJFUkVaQncwWkt3RWVBaGMrQWpjVE13TWpKeUVISXdFekV5Y21KaWNPQWdjSEFpd0lFaEFEQXc0UEJxRnUvSHhJL3ZCSmRRRUxlREJJQnhZSEJRNE5CRWdCQnhNOFBoUVNORFFSQWRuOU5zM05BczMrWE0wVVJSd1JMeW9NekFBREFBQUFBQU9VQXNvQUN3QVZBQ0FBTjBBMEVnRUJBQm9CQXdRQ1NnWUJBUWNCQkFNQkJHWUNBUUFBZ2tzSUJRSURBNE1EVEFBQUlCOE9EUUFMQUFzUkVSRVJFUWtOR1NzeEFUTVRNeE16QVNNREl3TVRCek1uSmlZbkRnSVhIZ0lYUGdJM055TUJDMzVweUd0di92NkNhTWx2c1NTT0lnY1dCd1VPRGZvSEZCVUdCUkFTQ0JtUEFzcit4UUU3L1RZQk9mN0hBZlZtWnhSRkhCRXZLdm9UUVVNWEV6WTVGa2dBQUFBQUFnQUEveEFEamdMTUFCNEFLQUJFUUVFakFRWUVHQTBDQXdJR0FRRURCUUVBQVFSS0J3RUdBQUlEQmdKbUJRRUVCSUpMQUFNRGcwc0FBUUVBWHdBQUFJY0FUQjhmSHlnZktCb1JFUlFrSWdnTkdpc0ZCZ1lqSWljMUZoWXpNalkzTnljaEJ5TUJNeE1lQWhjK0FqY1RNd0VuSmlZbkRnSUhCd0tHSTNSblBDOFhNeGt6T0JjU1JmN3VTSFVCQzNpcENCSVFBd01ORHdhaWJ2NGxTQWNXQndVT0RnTkpIV1J2RDJBS0NETTVMY2ZOQXN6K094TThQaFFTTkRRUkFkbitYODBVUlJ3Ukx5b016QUQvL3dBZy8vWUNQUUxVQWlZRGFBQUFBUVlBZVV3REFBaXhBUUd3QTdBekt3QUJBQkFBQUFKNEFzb0FGZ0EwUURFVEVnOEpCQVVEQVVvQ0FRQUlCd0lEQlFBRFpRUUJBUUdDU3dZQkJRV0RCVXdBQUFBV0FCWVRFaFVSRVJFUkNRMGJLeE0xTXpVekZUTVZJeFUyTmpjM013RUJJd01IRVNNUkVFOXNWbFlaTmhuQmZQN3ZBUmw5Nmtac0FoNWRUMDlkclI0OEgrRCt5UDV1QVVrNi92RUNIZ0FBQUFBQkFGOEFBQUo0QXNvQUZnQW5RQ1FXRlJJUkVBOE9DQU1DQVFzQUFRRktBZ0VCQVlKTEF3RUFBSU1BVEJZVkVSUUVEUmdySlRjbkJ4RWpFVE1STmpZM056TUJGemNYQnhjakp3Y0JER0pkUm14c0dUWVp3WHorNzJKa0xXZU5mV0ppZTB1RE92N3hBc3IrcHg0OEgrRCt5SXhOTzAvSmlrc0FBQUFBQVFBUUFBQUNlQUxLQUI0QU5VQXlIaDBhR1JnWEZoQURBZ0VMQUFFQlNnUUJBZ1VCQVFBQ0FXVUdBUU1EZ2tzSEFRQUFnd0JNRmhVUkVSRVJFUlFJRFJ3ckpUY25CeEVqRVNNMU16VXpGVE1WSXhVMk5qYzNNd0VYTnhjSEZ5TW5Cd0VNWWwxR2JFOVBiRlpXR1RZWndYeis3MkprTFdlTmZXSmllMHVET3Y3eEFoNWRUMDlkclI0OEgrRCt5SXhOTzAvSmlrc0FBQUFCQUY4QUFBSnBBc29BQ1FBb1FDVUlCd0lCQkFBQ0FVb0RBUUlDZ2tzQUFBQUJYUUFCQVlNQlRBQUFBQWtBQ1JFVEJBMFdLeE1WTnhFaEZTRVJCeEhMYXdFei9tRnJBc3I2Si81bFhBR2RKd0ZVQUFBQkFCVUFBQUg4QXNvQURRQXRRQ29EQVFFRUFRQUZBUUJsQUFJQ2drc0FCUVVHWGdjQkJnYURCa3dBQUFBTkFBMFJFUkVSRVJFSURSb3JNeEVqTlRNMU14VXpGU01SSVJWZlNrcHNaMmNCTVFJaVcwMU5XLzQ3WFFBQUFBTUFBUC8yQXc4QzFRQVZBQndBSXdCRlFFSUhBZ0lBQ1FvRkF3TUlBQU5sQ3dFR0JnRmZBQUVCaWtzTUFRZ0lCRjhBQkFTTEJFd2VIUmNXQUFBaElCMGpIaU1hR1JZY0Z4d0FGUUFWSXhFVEl4RU5EUmtyRVRVelBnSXpNaFlXRnpNVkl3NENJeUltSmljQklnWUhJU1ltQXpJMk55RVdGajRIVFk5cFpZNU9DRHc3QlU2UWFHdVFUQVVCVFdkcUNRR3hDV2huYW1rRy9rMEhhUUZFVW1HUFQwNlFZVkpsbGxOVGxtVUJOSGRyYTNmOTJvRnhjWUVBQUFELy93QTgvL1lEcmdMVkFDWUFNZ0FBQUFjQWNnSTFBQUQvL3dBOC8vWUUvZ0xWQUNZQU1nQUFBQWNBTWdJcEFBQUFBZ0FTQUFBQ013TEtBQk1BSEFBK1FEc0FDQUFDQUFnQ1pRTUJBQWtHQWdRRkFBUmxDZ0VIQndGZEFBRUJna3NBQlFXREJVd1ZGQUFBR0JZVUhCVWNBQk1BRXhFUkVTVWhFUXNOR2lzM05UTVJNeklXRlJRR0JpTWpGVE1WSXhVak5STWpFVE15TmpVMEpoSk55SXlBTlh4cVRXQmdiTUJVUVZ0ZFVHaGFBZ2h4WlR4b1FVMWFhR2dDQi83N1BVbEFQd0FBQUFJQUJRQUFBcEFDeWdBY0FDVUFRa0EvQUFRQkFnRUVBbjRIQVFVREFRRUVCUUZuQ1FFR0JnQmRDQUVBQUlKTEFBSUNnd0pNSGgwQkFDRWZIU1VlSlJzWkV4SU5Dd29KQ0FZQUhBRWNDZzBVS3dFeUZoVVVCZ1lqSXhFakVTTWlCaFVVRmhjakppWTFORFkyTXpNUkZ5TVJNekkyTlRRbUFZU01nRFY4YWsxc0V5Y2xCd05YQkFjaFNqc1J3RlJCVzExUUFzcHhaVHhvUWY3eEFSQW9IQkViQndrZUVTcEZLUUZoVy83N1BVbEFQd0FBQUFJQURnQUFBemtDMUFBaUFDc0Ewa3V3RTFCWVFBb0tBUUVDQ1FFREFRSktHMHV3R1ZCWVFBb0tBUUVDQ1FFSEFRSktHMEFLQ2dFQkJBa0JCd0VDU2xsWlM3QVRVRmhBSGdnQkF3VUpBZ0FHQXdCbkNnY0NBUUVDWHdRQkFnS0tTd0FHQm9NR1RCdExzQmxRV0VBb0NBRURCUWtDQUFZREFHY0FBUUVDWHdRQkFnS0tTd29CQndjQ1h3UUJBZ0tLU3dBR0JvTUdUQnRBSmdnQkF3VUpBZ0FHQXdCbkFBRUJBbDhBQWdLS1N3b0JCd2NFWFFBRUJJSkxBQVlHZ3daTVdWbEFIU1FqQVFBbkpTTXJKQ3NoSUI4ZEdCWVZFdzRNQndVQUlnRWlDdzBVS3dFaUpqVTFOQ01pQmdjMU5qWXpNaFlWRlJRV016TVJNeklXRlJRR0JpTWpFU01SRXlNUk16STJOVFFtQVRwY1lEY1JIQXdMS0JsS1JTMHhIc2lNZ0RWOGFrMXN3RlJCVzExUUFSQm9YbHhLQndOVEJnbE9UbDg3TlFGaGNXVThhRUgrOFFFUUFWLysrejFKUUQ4QUFBSUFQUDlRQXRZQzFRQWNBQ2dBT0VBMUZoUUNBQU1iR0JjVkFRVUNBQUpLSEFFQ1J3QUNBQUtFQUFRRUFWOEFBUUdLU3dBREF3QmZBQUFBaXdCTUpDVWJKa0lGRFJrckJUY25JZ1lqSWlZbU5UUTJOak15RmhZVkZBWUhGemNYQnhjakp3Y0RGQll6TWpZMU5DWWpJZ1lCYjJJekJRc0ZjWlJJU0pSeWJwTktZMk1uaFJ0clQ1UWtlZHRxY1hKb2FIRnlhbXduUEFGY3BtOXVwVnRicFcrQXRpUXBORU1xVkNvd0FoYUFsSlNBZ0pLU0FBSUFQUDh6QThBQzFRQW9BRFFBUVVBK0F3RURCUmtZRmhNRUJRSURBa29YQVFKSEFBSURBb1FBQVFBQUJRRUFad0FHQmdSZkFBUUVpa3NBQlFVRFh3QURBNHNEVENRbEprVVhFUm9IRFJzckFSUUdCeGMzTmpZMU5DWWpOVElXRlJRR0J3Y1hJeWNISnpjbklnWWpJaVltTlRRMk5qTXlGaFlGRkJZek1qWTFOQ1lqSWdZQzFXTmpLZnN0SXlNbFBrYzJPdkJhbENCekhteERCUXNGY1pSSVNKUnlicE5LL2RscWNYSm9hSEZ5YWdGbWdMWWtMS0VkT1NFZ0tqcEtOVHhOSkpwZ0pra3dSVThCWEtadmJxVmJXNlZ2Z0pTVWdJQ1NrZ0FCQUN3QUFBSklBc29BRXdBcFFDWUhBUUlEQVVvQUF3QUNBUU1DWlFBRUJBQmRBQUFBZ2tzQUFRR0RBVXdqSVJFV0lBVU5HU3NUTXpJV0ZSUUdCeE1qQXlNMU16STFOQ1lqSXl6TWpJWk9QOHQ2c0laam9WZFVXUUxLYUdkSlhoZit3d0VpV1h4RE5nQUFBQUFCQURvQUFBS0pBdFFBSVFBN1FEZ1BBUUlERGdFRkFnUUJBUVFEU2dZQkJBY0JBUUFFQVdVQUFnSURYd0FEQTRwTEFBVUZBRjBBQUFDREFFd1JFUkVtSkNnUkVBZ05IQ3NoSXpVaE5UYytBalUwSmlNaUJ5YzJOak15RmhVVUJnY0hGVE0xTXhVekZTTUNMV2YrZEtJclFDUXlNVWRIT3l0aVJseHBSMFo1OVdkY1hJbytsaWcvUFNRbUxqMUdKU3hRVUVCblBtb0VrSkJYQUFBQkFBRC85d0puQXRNQUZBQllTN0FiVUZoQUNoUVJEZ1lDQlFJQUFVb2JRQW9VRVE0R0FnVUNBUUZLV1V1d0cxQllRQTRFQVFJQUFJSkxBd0VDQW9NQ1RCdEFGZ0FBQUlKTEJBRUJBWUpMQUFJQ2cwc0FBd09EQTB4WnR4SVNFUmtRQlEwWkt3RXpBeGNXRmhjMk5qY1RNd01qSndjak53TXpFd0ZJUFlvTkRSZ0dCaGdObVhEOGNEUTBPbENwYjIwQzAvNWVKeVJXSXlOV0pRRy8vVGFVbmZRQjMvN0FBQUFCQUF2L0VBT2RBc29BTHdBMFFERXBIaElOQkFJREJnRUJBZ1VCQUFFRFNnVUVBZ01EZ2tzQUFnS0RTd0FCQVFCZkFBQUFod0JNR2hrUkhTUWlCZzBhS3lVR0JpTWlKelVXRmpNeU5qYzNBeTRDSnc0Q0J3TWpBek1URmhZWFBnSTNFek1USGdJWFBnSTNFek1DNGlPQVp6Z3NGalFaTXpzVUVIZ0ZEQXdDQWdzTEJYcDF1MnRxQ2hZR0F3d1JDRzlxZVFZTkRBTUNEQTBGYjJ3T2czc1BZQW9JTWpvd0Fia1NOelVSRVRRMEVmNDVBc3IrWEN4a0poaEJSUjRCbnY1R0ZqbzZGaFE1T3hRQnZnQUNBQVlBQUFJeEFzb0FGQUFkQUV0QVNBWUJCQWNCQXdBRUEyVUxBUWdBQVFJSUFXVUFCUVdDU3dBSkNRQmRDZ0VBQUlWTEFBSUNnd0pNRmhVQkFCd2FGUjBXSFJNU0VSQVBEZzBNQ3dvSkNBY0ZBQlFCRkF3TkZDc0JNaFlWRkFZakl4VWpFU00xTXpVekZUTVZJeFVUTWpZMU5DWWpJeFVCTW9KOWc0bGFiRmxaYkc1dVJsWmJUMU5WQWhscllsOTRkUUpQU3pBd1N6YityanRKUURyK0FBQUFBQUlBQmdBQUFqRUN5Z0FVQUIwQVBVQTZBQVlBQ1FnR0NXVUFDQW9CQndBSUIyVUVBUUFEQVFFQ0FBRmxBQVVGZ2tzQUFnS0RBa3dBQUIwYkZ4VUFGQUFUSVJFUkVSRVJFUXNOR3lzM0ZUTVZJeFVqTlNNMU14RXpGVE15RmhVVUJpTW5NekkyTlRRbUl5UExibTVzV1Zsc1o0SjlnNGxhUmxaYlQxTlZ3RFpMUHo5TEFrQmxiR0ZoZDFNNlNqNDhBQUVBS2Y4UUFvTUN5Z0FXQUNSQUlSWVBDd29IQmdVRUFRQUtBQUVCU2dJQkFRR0NTd0FBQUljQVRCc1ZFZ01ORnlzWEZ4VWhOVGNSSnpVaEZRY1JGQVlIRnpZMk54TXpBZWRSL3ZGU1VnRVBVUWtFQlJBckd0VjYvbVNXR3o4L0d3TUdHejgvRy83T0xtVWdBaWRaTGdHVC9Tc0FBUUF1Ly9ZQjlRTFVBQ2tBUDBBOEpBRUVCU01CQXdRREFRSUREZ0VCQWcwQkFBRUZTZ0FEQUFJQkF3SmxBQVFFQlY4QUJRV0tTd0FCQVFCZkFBQUFpd0JNSlNRaEpDVXBCZzBhS3dFVUJnY1ZGaFlWRkFZaklpWW5OUllXTXpJMk5UUW1JeU0xTXpJMk5UUW1JeUlHQnljMk5qTXlGZ0htVVVSUVZJZDJQMlVtS0dJcVRsaGtXMHBKWWxCRU9EQlJKaWd2YmtaZ2RBSWpSMWNOQXcxWVIyTndGQlJmRnhoQVFUMDdXRDA0TVRZZ0gwc2xLRjhBQUFJQUJmLzJBaElDMUFBZEFDZ0FQa0E3RlFFRUFoUUJBd1FDU2dnR0FnQUZBUUlFQUFKbkFBY0hBVjhBQVFHS1N3QUVCQU5mQUFNRGl3Tk1IeDRsSXg0b0h5Z1RKU01rSkJBSkRSb3JFek0xTkRZMk16SVdGUlFHSXlNVkZBWWpJaVluTlJZV016STJOVFVqSlRJMk5UUW1JeUlHRlJVV2tTdFVQVk5jYUZ3N1pWa1hMQTBRSVJJdU1aRUJOU3N2SmlBaEt3SGpOVFJXTWxkRlZsYS9jV1lHQlZ3RUJUWkh1MWNyS0IwcE16VXhBQUFBQUFFQU12LzJBaTBDMHdBaEFENUFPd2tCQVFBS0FRSUJBa29BQVFBQ0JRRUNad1lCQUFBRFh3QURBNHBMQUFVRkJGOEFCQVNMQkV3QkFCMGNHeG9WRXc0TUJ3VUFJUUVoQncwVUt3RWlCaFVVRmpNeU5qY1ZCZ1lqSWlZMU5EWTJNeklXRmhVVUJpTTFNalkxTkNZQkswZElQajRoTGhNVU95MWVianR2VFV0MlE2N0NoM2RIQW5wU1IwRklEZ3RTRFJCMGFVbHVQVU9KYWREWVdKcXNiWGtBQUFBQUFnQUkvL1lDMGdMVkFCRUFIUUJSUzdBeVVGaEFHQVFCQWdJQVhRVUJBQUNDU3dZQkF3TUJYd0FCQVlzQlRCdEFGZ1VCQUFRQkFnTUFBbWNHQVFNREFWOEFBUUdMQVV4WlFCVVRFZ0VBR1JjU0hSTWRFQThKQndBUkFSRUhEUlFyQVI0Q0ZSUUdCaU1pSmlZMU5EWTNJelVCTWpZMU5DWWpJZ1lWRkJZQmpHNlFTRW1UYjIrVFNUYzVwQUdBY1dkcWJYRnBhQUxWQVZ5a2JtNm1YRnltYjFXTk1GejlmcFIvZ3BDVWZuNlZBQUFCQUZ6L01RSFNBdFFBRmdCNFM3QVpVRmhBQ2dNQkFRQVRBUUlCQWtvYlFBb0RBUVVBRXdFQ0FRSktXVXV3R1ZCWVFCb0FCQU1FaEFBQ0FBTUVBZ05sQUFFQkFGOEZCZ0lBQUlvQlRCdEFIZ0FFQXdTRUFBSUFBd1FDQTJVQUJRV0NTd0FCQVFCZkJnRUFBSW9CVEZsQUV3RUFFaEVRRHc0TkRBc0lCUUFXQVJZSERSUXJBVElXRndjbUppTWlCaFVWTXhVakVTTVJNeGN6TmpZQmpCQW9EZzBOTEJGUVpldnJhbEVTQlJwbEF0UURBbUlDQWxsaVkxaitOZ09aWXk4K0FBQUFBZ0E1Ly9ZQ0lRTExBQjRBS3dBdVFDc2xEZ0lFQVFGS0F3RUJBUUpkQUFJQ2drc0ZBUVFFQUY4QUFBQ0xBRXdnSHg4cklDc2hFUjBsQmcwWUt3RVdGaFVVQmlNaUppWTFORFkyTnlZbU5UUTJOeU0xSVJVakloVVVGaFlETWpZMU5DWW5EZ0lWRkJZQloxdGZnblZHYkQ4M1dETXpLUmNUZ1FHNG5Ga1BLQk0vUmprNEowZ3VUUUhZTW5GWGJId3pZVVpCV0RVTklEVW1HaVlOV0ZnNkV4d2QvbUJLUlRwSUlnb29SRFJCU1AvL0FEbi8vd0loQXRRQkR3Z0RBbG9DeXNBQUFBbXhBQUs0QXNxd015c0EvLzhBSEFBQUFia0N5Z0VQQUM4Q0dBTEt3QUFBQ2JFQUFiZ0N5ckF6S3dBQUFRQmIvemdEQ3dMVUFDQUFaRUFMR2dZQ0FBSUhBUUVBQWtwTHNCbFFXRUFoQUFJQ0JGOEZBUVFFZ2tzQUFBQUJYd0FCQVl0TEFBTURCRjhGQVFRRWdnTk1HMEFmQUFJQ0JWOEFCUVdLU3dBQUFBRmZBQUVCaTBzQUF3TUVYUUFFQklJRFRGbEFDU01SRkNVbElnWU5HaXNsRkJZek1qWTNGUVlHSXlJbU5SRTBKaU1pQmdZVkF5TVJNeGN6TmpNeUZoVUNoQ1FpRkIwUUVTNFpVRXBIUzBSVkp3RnJVdzhIUVpOMWQ2SW9Ld1lHVmdjSVhFNEJNMVZWTjJCQS9aSURrbGRoZklNQUFBQUJBRnovTVFIU0F0UUFFZ0JrUzdBWlVGaEFDZ01CQVFBUEFRSUJBa29iUUFvREFRTUFEd0VDQVFKS1dVdXdHVkJZUUJJQUFnRUNoQUFCQVFCZkF3UUNBQUNLQVV3YlFCWUFBZ0VDaEFBREE0SkxBQUVCQUY4RUFRQUFpZ0ZNV1VBUEFRQU9EUXdMQ0FVQUVnRVNCUTBVS3dFeUZoY0hKaVlqSWdZVkVTTVJNeGN6TmpZQmpCQW9EZzBOTEJGUVpXcFJFZ1VhWlFMVUF3SmlBZ0paWXYxN0E1bGpMejRBQUFBQkFEZi85Z0pTQXNvQUdnQXhRQzRPQVFJQkR3RURBZ0pLQlFRQ0FRRUFYUUFBQUlKTEFBSUNBMThBQXdPTEEwd0FBQUFhQUJvbEpTRVJCZzBZS3hNMUlSVWpJZ1lHRlJRV016STJOeFVHQmlNaUppWTFORFkyTnpjQ0c0TmJnMFZ6YkN4V0xTdFpPR2VRU3k5UE1nSnVYRnhMZzFSMmhCQVFYQkFRVkpaa1NuSlVHZ0FCQUY4QUFBS0xBc29BQ1FBZlFCd0FBd0FCQUFNQlpnUUJBZ0tDU3dBQUFJTUFUQkVSRVJFUUJRMFpLeUVqRVNFUk14RWhFVE1DaTJ6K1FHd0JWR3dCUmdHRS90Z0JLQUFCQUYvL05RTDFBc29BRmdBbVFDTUNBUVFDQVVvQUJBQUZCQVZoQXdFQ0FvSkxBUUVBQUlNQVRCRVJGeEVXRUFZTkdpc2hJd0VqRmhZWEVTTVJNd0V6TGdJbkVUTVJNeEVqQW8xbi9wY0VBZ1VCWW9JQmFBTUJBd0lCWkV4b0FrRW9aemIraEFMSy9jSVZRRWtnQVlEOWp2N2RBQUgvL3YvMkFsa0MxQUFnQUVWQVFna0JBZ0VLQVFBQ0dRRUZCQm9CQmdVRVNnTUJBQWdIQWdRRkFBUmxBQUlDQVY4QUFRR0tTd0FGQlFaZkFBWUdpd1pNQUFBQUlBQWdKU0lSRWlVakVRa05HeXNETlRNK0FqTXlGaGNISmlZaklnWUhNeFVqRmhZek1qWTNGUVlHSXlJbUp3SkFCMU9TWnpabkt5Z2pVQzVoZGdxOHZBcHZaeTVWTENwWU9wbWdDd0UwV21HVFVoY1ZXaEFaZkcxYWFYZ1JEbDBRRDZ5U0FBRUFBdi8yQXI4QzFRQW5BRVJBUVI0QkJRUW5KaVVmRmhRR0FnVVZBUUVDQ1FFQUFRNEJBd0FGU2dBQ0FBRUFBZ0ZsQUFVRkJGOEFCQVNLU3dBQUFBTmZBQU1EaXdOTUpTZ2pFUk1sQmcwYUt4TUdCaFVVRmpNeU5qYzFJelVoRVFZR0l5SW1OUWMxTno0Q016SVdGd2NtSmlNaUJnY2xGYTRCQVhaNUtEMGFxUUVUTm5kSXA2dzZRaEJjbG1jNmF5NGxKMW92V25zWEFnQUJod2dTQ1lDVENnaXZYUDZ5RkJiQXZ3dEdERlIrUnhnVVdSTVdXMDVpUmdBQUFRQURBQUFDZUFMS0FCVUFKMEFrRlJJUkRnME1Dd1VDQVFBTEFnQUJTZ0VCQUFDQ1N3TUJBZ0tEQWt3VEZSVVRCQTBZS3hNMU54RXpFVFkyTnpjekFTVVZCeE1qQXdjUkl4RURYR3daTmhuQmZQN3pBUTNwOFgzcVJtd0JEMFlUQVdMK3B4NDhIK0QrelR4Rk5mNm5BVWs2L3ZFQklnQUFBd0FEQUFBREFnTEtBQk1BR2dBaUFDMUFLaUloRnhZVkV4SVBEZ3NLQ1FnRkJBRUFFUUlBQVVvQkFRQUFna3NEQVFJQ2d3Sk1FeFVURWdRTkdDc1ROeEV6RXpjUk14RTNGUWNSSXdNSEVTTVJCemNWTnljakZoWUJNeTRDSnpVSEExeUN3cUprV1ZtRHlwdGlYTDV6ZHdRQ0JRR0pBd0VEQWdGNkFWTVBBV2oreXhrQkhQNzBEa1lPL29nQlF4aisxUUVjRDI4TEVyNG9aLzdhRlVCSklCNFRBQUFEQUFNQUFBSjFBc29BRkFBYUFCOEFQMEE4SGgwV0ZSRVFEd2tJQndZTEJRUVVBUUVGQWtvR0FRVUFBUUFGQVdVQUJBUURYUUFEQTRKTEFnRUFBSU1BVEJ3Ykd4OGNIeXdsRVJFUUJ3MFpLeUVqQXlNUkl4RUhOVGMxTXpJV0Z6Y1ZCd1lHQnljM0ppWWpJeE15TndjVkFtOTdwWVJzWEZ6QWQ0TVJTMFFCUmo3aDhBeFVSRXhXbEF6MkFSSCs3d0duRFVVTzNVNU9Da1lKUTJBVnl5SXRKZjc2YmlKTUFBQUJBQVAvOWdJaEF0UUFMZ0EyUURNS0FRRUFMaTBoRnhZVkZBc0JBQW9EQVNBQkFnTURTZ0FCQVFCZkFBQUFpa3NBQXdNQ1h3QUNBb3NDVENVdEpTWUVEUmdyRXpjbUpqVTBOak15RmhjSEppWWpJZ1lWRkJZWEpSVUhGaFlWRkFZaklpWW5OUllXTXpJMk5UUW1KaWNtSndjRGVSOGpnR2c2WXkwaUtWVXRPejQwUEFFTG5Uazhpbmc3WmlRb2JEaElTQ0JIT1EwTTBnRnJHQnBJTTFoa0dCTlpFUlkwS2lzekdqUkdIeDFSUVY5c0V4Sm1FaDA0THlFdEp4WUZCU2tBQUFBQUFRQUxBQUFDL3dMS0FCb0FNRUF0QUFRREJnTUVCbjRBQmdBQkFBWUJaUUFEQXdWZEJ3RUZCWUpMQWdFQUFJTUFUQkVSSmhVaEVSRVFDQTBjS3lFakVTRVJJeEVqSWdZVkZCWVhJeVltTlRRMk5qTXpFU0VSTXdML2JQNnJiQ01vSkFjRFZ3UUhJVWs4alFGVmJBRkcvcm9DY1NjZEVSb0lDUjRTS1VVcC90Z0JLQUQvL3dBcS8vWUNLd0xVQWdZQnNBQUFBQUlBUFA4UUFvOEMxQUFpQURFQWZFQVBIQTBDQlFZRUFRRUNBd0VBQVFOS1M3QVpVRmhBSUFnQkJRQUNBUVVDWndBR0JnTmZCQUVEQTRwTEFBRUJBRjhIQVFBQWh3Qk1HMEFrQ0FFRkFBSUJCUUpuQUFRRWdrc0FCZ1lEWHdBREE0cExBQUVCQUY4SEFRQUFod0JNV1VBWkpDTUJBQ3dxSXpFa01SOGVHaGdTRUFjRkFDSUJJZ2tORkNzRklpWW5OUll6TWpZMU5UUTJOeU1HQmlNaUppWTFORFkyTXpJV0Z6TTNNeEVVQmdNeU5qWTFOVFFtSXlJR0ZSUVdGZ0ZZUUhrNGQ0SmVaZ0lDQkJ0bVQxNThQa1orVlUxZEh3VU5YNUtYUmxRa1lsbGNYaVpSOEJNWFpUUmJhQTRWTUJNc1BWaVpZVzJhVURZdVd2MXBrcEVCZDBCa055OTBjNGgwUjI4L0FBQUMvL2tBQUFKTUFzb0FGQUFmQUhhMURRRUhBZ0ZLUzdBbVVGaEFKZ29JQWdRRkFRRUdCQUZuQUFNRGdrc0FCd2NDWHdBQ0FvVkxDUUVHQmdCZUFBQUFnd0JNRzBBa0FBSUFCd1FDQjJjS0NBSUVCUUVCQmdRQlp3QURBNEpMQ1FFR0JnQmVBQUFBZ3dCTVdVQVhGUlVBQUJVZkZSNGFHQUFVQUJRUkVSTWtJUkVMRFJvckpSVWhFU01pSmpVME5qTXlGaGMxTXhFekZTTVZBelUwSmlNaUJoVVVGak1DVFA1YkwwQS9RRFFSSGd0c1oyZHNHeG9ZR0NFY1cxc0JORDR2TkRrTENkRCtwejNaQVJZUkt5SWFGUllaLy84QUFBQUFBaGtDeWdFUEFDNENlQUxLd0FBQUNiRUFBYmdDeXJBekt3RC8vd0FPQUFBQ0pnTEtBUThBTndJekFzckFBQUFKc1FBQnVBTEtzRE1yQUFBQy82My9OUUVhQXNvQUZBQWZBRmRBRkJJQkJBRWJBZ0lEQkFjRUFnQURBMG9GQVFCSFM3QVpVRmhBRndBREFBQURBR01BQWdLQ1N3QUJBUVJmQUFRRWl3Uk1HMEFWQUFFQUJBTUJCR2NBQXdBQUF3QmpBQUlDZ2dKTVdiY2pJeElrS1FVTkdTczNGQWNXRndjbUp3WUdJeUltTlRRMk16SVhFVE1ERkJZek1qWTNKaU1pQnQ0SEtCczlEeFFWUXk4OFNrUTJKaVZzNWhnWUd5WUdJQjRkSEFZbElERkVGeWNnSGlNOU56YzhFQUs0L09VVkdpWW5GUjRBQUFILzlQOFFBb2tDMUFBbEFJWkxzQmxRV0VBVEl3RUZBQ0liR0E4SUJRWUNCUkFCQXdJRFNodEFFeU1CQlFFaUd4Z1BDQVVHQWdVUUFRTUNBMHBaUzdBWlVGaEFHQUFGQlFCZkFRWUNBQUNLU3dBQ0FnTmZCQUVEQTRjRFRCdEFIQUFCQVlKTEFBVUZBRjhHQVFBQWlrc0FBZ0lEWHdRQkF3T0hBMHhaUUJNQkFDQWVHaGtVRWcwTEJ3WUFKUUVsQncwVUt4TXlGaFlYRnhNekF4TVdGak15TmpjVkJnWWpJaVltSnljREl3RURKaVlqSWdZSE5UWTJiQ2d4SVJCYnJuUDBoaFlpSEFrYURoRWtGaXczS0JaYzIzSUJIbkFUSFJvS0hCRVJKQUxVR3pjczNRRlIvai8rdVRZakJBTlRCZ2NqU3pybS9uTUIvUUVTTGkwRUJsUUdDUUFBQXdCZC94QUNWQUxLQUJFQUdnQWpBRHRBT0FjQkJnTUJTZ0FEQndFR0JRTUdaUUFFQkFCZEFBQUFna3NBQlFVQlhRQUJBWU5MQUFJQ2h3Sk1HeHNiSXhzaUlpUWhFU3NnQ0EwYUt4TXpNaFlWRkFZSEZSWVdGUlFHSXlNVkl4TXpNalkxTkNZakl4RVZNekkyTlRRbUkxM1dpNFJGUEVOUWpYYUliR3gxVUVWUFVHdUFVRXBOVlFMS1dGdy9Vd29FREV4UVpXbndBbzgyTmpZeS90YnhRVDAzUFAvL0FEei85Z1BZQXRRQ0Jna2dBQUQvL3dBQS94NENqUUxOQWlZQUpBQUFBQWNCVUFES0FBRC8vd0JmL3g0QjhRTEtBaVlBS0FBQUFBY0JVQUN0QUFELy93QW0veDRCT3dMS0FpWUFMQUFBQUFZQlVESUFBQUQvL3dCWi94NENpUUxLQWlZQU9BQUFBQWNCVUFEd0FBRC8vd0JmL3hBQi9BTEtBaVlBTHdBQUFBY0xwZ0U1QUFELy93QmYveEFDcVFMS0FpWUFNUUFBQUFjTHBnR0ZBQUFBQVFBNkFBQUJld0liQUFzQUwwQXNBQUlBQVFBQ0FXVUFBd01FWFFBRUJJVkxBQUFBQlYwR0FRVUZnd1ZNQUFBQUN3QUxFUkVSRVJFSERSa3JNelV6TlNNMU16VWpOU0VST3VEUzB1QUJRVTZrVG8xTy9lVUEvLzhBVXdBQUFMMENHd0lHQ0NvQUFQLy8vOGIvRUFDOUFoc0NCZ2dzQUFELy93QXovL1lDTFFMNUFnWUJnQUFBQUFJQU0vLzJBcmdDSmdBbEFDd0EwVXV3RlZCWVFBb2NBUVFHQ0FFQUJBSktHMEFLSEFFRUJnZ0JBQVVDU2xsTHNBeFFXRUFvQ1FFR0F3UUVCbkFBQ0FBREJnZ0RaUW9CQndjQ1h3QUNBbzFMQlFFRUJBQmdBUUVBQUlzQVRCdExzQlZRV0VBcENRRUdBd1FEQmdSK0FBZ0FBd1lJQTJVS0FRY0hBbDhBQWdLTlN3VUJCQVFBWUFFQkFBQ0xBRXdiUURNSkFRWURCQU1HQkg0QUNBQURCZ2dEWlFvQkJ3Y0NYd0FDQW8xTEFBUUVBRjhCQVFBQWkwc0FCUVVBWUFFQkFBQ0xBRXhaV1VBWEp5WUFBQ29wSml3bkxBQWxBQ1VrSWhNa0pDUUxEUm9ySlJZVkZBWWpJaVluQmdZaklpWTFORFl6TWhZVkZTRVdGak15TmpjV0ZqTXlOalUwSmljQklnWUhJU1ltQXFvT1FFRWZMQkFsU1RKNmo0UnliSGYra3dGVVRESlNMZ01nR2h3akJ3WCt4emxKQlFFREFUeXlIQ0kwU2hFUUVSQ09oWVdZaFhFNlUxb1ZGQlllSUNBT0dRMEJKRXRLUVZULy93QWkvL1lCMGdJbEFnWUIwQUFBQUFFQUl2LzJBdGtDSlFBNUFGdEFXRGNFQWdjQU5oSUxBd1FCQnhZTUFnSUdJd0VFQlNJQkF3UUZTZ0FCQUFJRkFRSm5BQVlBQlFRR0JXY0FCd2NBWHdnQkFBQ05Td0FFQkFOZkFBTURpd05NQVFBME1pOHRMQ29uSlNBZUVBNEpCd0E1QVRrSkRSUXJFeklXRnpjWEZoWXpNalkzRndZR0l5SW1Kd2NHQmdjVkhnSVZGQVlHSXlJbUp6VVdGak15TmpVMEl5TTFNekkyTlRRaklnWUhKelkyOFVwc0VtMFFEUndXRkNnUkZ4ZzhJQ3RDRkNjSk5DWWdOeUV6YTFNOFlpRWlZRGM4VTVsRU9VWlRkeXRLS0NNc1l3SWxNUzhkT1MwakVBdEpFUlUzUkFzaUtnb0VDUjh6S1MxSkt4SVJYQkFhSkM1VFVTSXBSUkVSVUJJVUFQLy9BREgvOWdJSUFpVUNCZ1FwQUFBQUFnQXgvL1lESUFJbEFDTUFLd0JRUUUwS0FRRUNLQ0FmR0JFUUNRUUlBd0VwR1FNREJBTURTZ0FEQUFRRkF3Um5BQUVCQWw4QUFnS05Td2NCQlFVQVh3WUJBQUNMQUV3bEpBRUFKQ3NsS3gwYkZoUU9EQWNGQUNNQkl3Z05GQ3NGSWlZMUpTWWpJZ1lITlRZMk16SVdGemNYRmhZek1qWTNGd1lHSXlJbUp3Y1VCZ1luTWpZMk5RVVdGZ0VYYkhvQmFSdUNORk1yS1ZNNllJZ1hiUkFOSEJZVUtCRVhHRHdnTEVFVUlEUnNWRGM3RnY3K0JUb0toSFZqZlJNVFdCTVJYVm9lT2kwakR3eEpFQlkzUkFsYWhrcFNObFl3UmpKRUFBQUFBQUVBVXdBQUFMMENHd0FEQUJOQUVBQUJBWVZMQUFBQWd3Qk1FUkFDRFJZck15TVJNNzFxYWdJYkFBRC8vd0FnL3g0QXp3SWJBaVlJS2dBQUFBWUJVUGdBQUFBQUFmL0cveEFBdlFJYkFBOEFLMEFvQkFFQkFnTUJBQUVDU2dBQ0FvVkxBQUVCQUdBREFRQUFod0JNQVFBTUN3Z0dBQThCRHdRTkZDc1hJaVluTlJZV016STJOUkV6RVJRR0dob3JEeEFnRkNBcGFrM3dCd1ZWQlFVak1RSmcvWnRMV3dBQUFBRUFCQUFBQWhzQytBQVRBQ3BBSndZRUFnSUpCd0lCQUFJQlpRVUJBd09FU3dnQkFBQ0RBRXdURWhFUkVSRVJFUkVSRUFvTkhTc3pJeEVqTlRNMU14VXpOVE1WTXhVakVTTVJJNzFxVDA5cXBtcE9UbXFtQWtoUVlHQmdZRkQ5dUFKSUFBQUJBQUFBQUFGM0F2MEFGd0JFUUJFSUFRRUFGeFlURWhFUUNRRUlBZ0VDU2t1d0psQllRQkFBQVFFQVh3QUFBSVJMQUFJQ2d3Sk1HMEFPQUFBQUFRSUFBV2NBQWdLREFreFp0UmNsSkFNTkZ5c1JOelUwTmpNeUZoY0hKaVlqSWdZVkZUY1hCeEVqRVFkVFkxSWtOeFFiRUNrV0p5bHBJNHhxTVFHQkxKZG5VZzBIVVFVS01EVmRPRUZLL200Qldob0FBQUFBQVFBTEFBQUJkd0w5QUJZQVZrQUtDQUVDQVFrQkFBSUNTa3V3SmxCWVFCb0RBUUFHQVFRRkFBUmxBQUlDQVY4QUFRR0VTd0FGQllNRlRCdEFHQUFCQUFJQUFRSm5Bd0VBQmdFRUJRQUVaUUFGQllNRlRGbEFDaEVSRVJJbEl4QUhEUnNyRXpNMU5EWXpNaFlYQnlZbUl5SUdGVE1WSXhFakVTTUxTR05TSkRjVUd4QXBGaWNwalkxcVNBSkRBV2RTRFFkUkJRb3ZOVkgrRGdIeUFBQUFBQU1BTS8vMkFqUUNKd0FOQUNBQUxBQXdRQzBhRGdJRkJBRktBQU1BQkFVREJHY0FBZ0lCWHdBQkFZMUxBQVVGQUY4QUFBQ0xBRXdrSkNjcEpTSUdEUm9yQVJRR0l5SW1KalUwTmpNeUZoWUhGQlUyTlRRbUl5SUdGUlFYTlRRMk16SVdCelFtSXlJR0ZSUVdNekkyQWpTTWRrcHpRb3A0UzNOQmtpUklTMHhHSXp3eU1UODdIeFlYSGhzYUZ4NEJFSWVUUW41YWhwRkJmZVVEQVRKYldtWmxXbHN5QWpFN09qSVpIQndaR1J3Y0FBQUEvLy8vMnY4UUFJQUJYZ0ZHQUUwQW9DbWFKbVlBQ2JFQUFyai9vTEF6S3dBQUFRQVUvL1lCV0FMOUFCMEFrVXV3R1ZCWVFCQVhBUU1FRmdrQ0F3SURBa29JQVFCSEcwQVFGd0VEQkJZSkFnTUNBd2dCQVFBRFNsbExzQmxRV0VBV0FBTURCRjhBQkFTRVN3QUNBZ0JmQVFFQUFJTUFUQnRMc0NaUVdFQWFBQU1EQkY4QUJBU0VTd0FBQUlOTEFBSUNBVjhBQVFHTEFVd2JRQmdBQkFBREFnUURad0FBQUlOTEFBSUNBVjhBQVFHTEFVeFpXYmNsSlNRa0VBVU5HU3NoSXljakJnWWpJaWMzRmhZek1qWTFFVFFtSXlJR0J5YzJOak15RmhVQldGSVBCaHBRT0IwZUN3c2VEVUZZSWlvVkpSQVdFRHdmVTFoZEx6Z0ZaQUlFVjA4QlRpc3ZCd1JRQndwTVhnQUIvOGIvRUFFSkFoc0FGd0E5UURvRUFRRUNBd0VBQVFKS0JRRURCZ0VDQVFNQ1pRQUVCQ2hMQUFFQkFHQUhBUUFBS2dCTUFRQVVFeElSRUE4T0RRd0xDQVlBRndFWENBY1VLeGNpSmljMUZoWXpNalkxRVNNMU16VXpGVE1WSXhFVUJob2FLdzhRSUJRZ0tVeE1ha3hNVGZBSEJWVUZCU014QVRoTzJ0cE8vc05MV3dBQy82TC9FQUVHQWhzQUR3QWFBRGhBTlFNQkFRWUJCQVVCQkdjQUFnSW9Td2dCQlFVQVlBY0JBQUFxQUV3UkVBRUFGaFFRR2hFYURRd0xDZ2tJQndVQUR3RVBDUWNVS3hjaUpqVTBOak16RVRNUk14VWpCZ1luTWpZMU5TTWlCaFVVRml4QVNrSkpKbXBKU1FST1NSWWJJaGtoRS9CRE16WkVBaHY5NVVsYlRFc2dKaFlYR1JJYUFBQUEvLy8vMmdDUEFIc0NZZ0ZIQ0N3QUFBRWZLWm9tWmdBSnNRQUJ1QUVmc0RNckFBQUEvLy8veHY4UUFMMENHd0lHQ0N3QUFQLy9BRGIvb0FCN0FPTUJSZ2dxQUtBcG1pWm1BQW14QUFHNC82Q3dNeXNBQUFFQVUvOHhBVTBDR3dBVEFEVkFNZ2tCQVFNS0FRSUJBa29BQUFRREJBQURmZ0FCQUFJQkFtUUZBUVFFS0VzQUF3TW5BMHdBQUFBVEFCTVRKU01SQmdjWUt4TVJNeFVVRmpNeU5qY1ZCZ1lqSWlZMU5TTVJ2UzRaR2d3YkNBd25FelpET3dJYi9qbVRJaHdHQTA4R0JrRk1RZ0liQUFBQUFBRUFCQUVmQUt3Q1l3QUxBQ3hBS1FBRUF3RUVWUVlGQWdNQ0FRQUJBd0JsQUFRRUFWMEFBUVFCVFFBQUFBc0FDeEVSRVJFUkJ3Y1pLeE1WSXhVak5TTTFNelV6RmF3eFJUSXlSUUhmTHBLU0xvU0UvLy8vd3dDUEFLb0NZZ0ZIQ0RRQUFBRWZLWm9tWmdBSnNRQUN1QUVmc0RNckFBQUEvLy8veS85Q0FVVUNHd0ltQ0NvQUFBRUhBVkgvby96a0FBbXhBUUc0L09Td015c0EvLzhBVHY5R0FNY0NHd0ltQ0NvQUFBQUhDNk1CdWdBQUFBSUFSZ0FBQVNJQ1ZBQVJBQ0lBUTBCQUFBTUFBZ0VEQW1jQUFRZ0JBQWNCQUdjQUJ3QUdCUWNHWndBRkJRUmZDUUVFQklNRVRCTVNBUUFlSEJzWkZoUVNJaE1pREFvSkJ3UUNBQkVCRVFvTkZDc1RJelV6TWpVMEppTWpOVE15RmhVVUJnWURJelV6TWpZMU5DTWpOVE15RmhVVUJvWWlHMTR4S3p0QVRVOGZSVU1YRVNndFdDZ3NSMHhEQVZFc1RDRWZTMGc2SWpzay9xOHRIeVU2UzBJN00wWUFBUUFyQUprQllRSW5BQklBU1V1d0tWQllRQk1BQXdRQkFBTUFZd0FDQWdGZEFBRUJoUUpNRzBBWkFBRUFBZ01CQW1jQUF3QUFBMWNBQXdNQVh3UUJBQU1BVDFsQUR3RUFFUThMQ1FnR0FCSUJFZ1VORkNzbElpWW1OVFEyTXpNVkl5SUdGUlFXTXpNVkFTMWRjak4yZUVoQVQxQmlUaENaTlZvM1cyMVpQenRGUXpNQUFRQlQveEFDSmdMNEFDRUFSRUJCRndFQ0JRUUJBUU1EQVFBQkEwb0FCQVNFU3dBQ0FnVmZBQVVGalVzQUF3T0RTd0FCQVFCZkJnRUFBSWNBVEFFQUhCb1RFaEVRRFFzSEJRQWhBU0VIRFJRckJTSW1KelVXTXpJMk5SRTBJeUlHRlJFakVUTVZGQVlITXpZMk16SVdGUkVVQmdHT0Zpc09IaDRkSkcxUlFXcHFCQUVHSEZZNldHUkk4QVlHVlFrbUxnR1RmMkZlL3ZFQytNRWVQZ3d0S0Y5bS9sTkdYQUFBQVFBUy94QURLQUtWQUMwQVowQmtFdzBDQWdRcEFRVUNBd0VBQ0FRQkFRQWVBUWNCSFFFR0J3WktBQU1FQTRNQUJRQUlBQVVJWndrQkFnSUVYUUFFQklWTENnRUFBQUZnQUFFQmkwc0FCd2NHWHdBR0JvY0dUQUVBS3lvb0ppSWdIQm9WRkJJUkVBOE1Dd2dHQUMwQkxRc05GQ3NsTWpZM0ZRWUdJeUltTlJFak5UYzNNeFVoRlFjV0ZoVVdCZ1lqSWljMUZoWXpNalkxTkNZakl6VTNJUkVVQVJJWUt4VVZPaUpJVkV0UkkwRUNTK2VJZEFGQWVsbHhVeTVpTGxwU1hYRTgzdjQ0VFFjR1VRZ0xURjRCS1RBbWRubEg3UWw4WTBadFBTUmZGeFJhUWtSUVRlVCsybFlBQUFBQkFDei9FQUlVQWlZQUlBQStRRHNHQVFFQURBc0hBZ0VGQWdFWUFRTUNHUUVFQXdSS0FBSUJBd0VDQTM0QUFRRUFYd0FBQUkxTEFBTURCRjhBQkFTSEJFd2tKU01WRXdVTkdTc2xKelUzTWhZWEJ5WW1Jd2NYRlNNaUJnWVZGQll6TWpZM0ZRWWpJaVkxTkRZQkZ0RGNUbkF5SURGVE80VCtRMDFjS0ZaYU1Xb3dWNEdHaW5uU2xrdHpGUnhQRnhSSXRrOGtRQ2xCVFJZWFhTbDVaMkp5QUFBQUFBSUFFdjhRQWNjQ0hBQVJBQnNBUGtBN0dBRUVBeEFCQWdRSUFRRUNCd0VBQVFSS0JRRURBNFZMQUFRRUFsMEFBZ0tEU3dBQkFRQmdBQUFBaHdCTUFBQVRFZ0FSQUJFVEpDTUdEUmNyQVJFVUJpTWlKaWMxRmpNeU5qVTFJVFVCQXpNMU5EWTJOeU1HQndISFRWUVhMaEFqSUNFcC9yUUJTK1htQWdJQ0JBMGxBaHo5bGtaY0JnWlZDU1l1UkVzQjBmNDVreUpMUWhRZk5RQUFBQU1BRXY4UUFtNENIQUFYQUNFQUxBQ3JTN0FiVUZoQUZCNEJCQU1TQVFJRUl3a0NBUWdvQ0FJQUFRUktHMEFVSGdFRUF4SUJBZ1FqQ1FJQkNDZ0lBZ2NCQkVwWlM3QWJVRmhBS2dBREE0VkxCZ0VFQkFKZENRVUNBZ0tEU3dvQkNBZ0FYd2NCQUFDSFN3QUJBUUJnQndFQUFJY0FUQnRBS0FBREE0VkxCZ0VFQkFKZENRVUNBZ0tEU3dvQkNBZ0hYUUFIQjRkTEFBRUJBR0FBQUFDSEFFeFpRQmdpSWdBQUlpd2lMQ2NtR1JnQUZ3QVhFUklUSlNRTERSa3JJUlVVQmdZaklpWW5OUllXTXpJMk5UVWhOUUV6RVRNVkpUTTFORFkyTnlNR0J3RVZCZ1lISXpVK0FqY0J4eUJIT2hZdUVCRWdFaUFwL3JRQlMycVAvaUxtQWdJQ0JBMGxBVUFOS1JjOUJnOExBejB6VVM4R0JsVUZCQ1l1UkVzQjBmNDVWVldUSWt0Q0ZCODEvbThLSlZjbkN4UTZQQmdBQVFCUkFBQUJoQUljQUFrQUkwQWdBQU1BQkFBREJHVUFBZ0lCWFFBQkFZVkxBQUFBZ3dCTUVSRVJFUkFGRFJrck15TVJJUlVqRlRNVkk2bFlBVFBiemMwQ0hFbXNTQUFBQVFBby8vY0JoZ0lsQUNZQUxrQXJHUUVEQWhvR0FnRURCUUVBQVFOS0FBTURBbDhBQWdLTlN3QUJBUUJmQUFBQWl3Qk1KU3NrSWdRTkdDc2xGQVlqSWljMUZoWXpNalkxTkNZbkxnSTFORFl6TWhZWEJ5WW1JeUlHRlJRV0Z4NENBWVpwV1Z4QUpGQXFNVFpDTkNFL0tHQlRLMDBtSGlROElDZ3lQRFlwUHlTUlNGSWRVeEFXS1NNbktCY05Kand2Ums0U0VVVVBFQ2NpSmlVWEVpZzZBQVFBTGYvMkEwUUNKZ0FsQURJQVBRQklBSlJBRlNNQ0FnWUFNU0lDQlFZbkFRa0ZFd3dDQ2drRVNrdXdHVkJZUUNVSEFRVUxBUWtLQlFsbENBRUdCZ0JmQVEwQ0FBQ05Td3dCQ2dvQ1h3UURBZ0lDZ3dKTUcwQXBCd0VGQ3dFSkNnVUpaUWdCQmdZQVh3RU5BZ0FBalVzQUFnS0RTd3dCQ2dvRFh3UUJBd09MQTB4WlFDRUJBRVpFUUQ0N09UVXpMeTBxS0NBZUhCb1hGUkVQQ3dvSEJRQWxBU1VPRFJRckFUSVhNVFkyTXpJV0ZSRWpKeU1HQmlNaUppY0dCaU1pSmpVME56YzFOQ01pQmdjbk5qWUZGVFkzTnpVMEppTWlCZ2NXQndjR0JoVVVGak15TmpVbEJ3WUdGUlFXTXpJMk5RRWlaak1tWXpabFpVc1ZCQ05OUkRaU0V5Uk9RMUZlOTJGb0pVMG5JeXRpQVFBNVdWdzJNU2RJSVFscFNWQlNNU3BBVUFGV1NGeEhNaWcrVXdJbU1CUWJXVi8razBzc0tTc3NMQ3RUVWFRR0F4MXhGaE5NRmhpL09oVURBeDQ3TVJZUEg0b0RBakkxS0NoSlF5OENCRFl2S2laR1JnQUFBQU1BTGYvMkEzOENKZ0FnQUN3QU53RGhTN0FlVUZoQUR4NENBZ1VBSFFFRUJRNEJCZ2dEU2h0QUR4NENBZ1VBSFFFRUJ3NEJCZ2dEU2xsTHNCNVFXRUFpQUFRQUNBWUVDR1VIQVFVRkFGOEJDZ0lBQUkxTENRRUdCZ0pmQXdFQ0Fvc0NUQnRMc0MxUVdFQXRBQVFBQ0FZRUNHVUFCUVVBWHdFS0FnQUFqVXNBQndjQVh3RUtBZ0FBalVzSkFRWUdBbDhEQVFJQ2l3Sk1HMEEzQUFRQUNBWUVDR1VBQlFVQVh3RUtBZ0FBalVzQUJ3Y0FYd0VLQWdBQWpVc0FCZ1lDWHdNQkFnS0xTd0FKQ1FKZkF3RUNBb3NDVEZsWlFCc0JBRFV6THkwcktTVWpHeGtYRlJJUURBb0ZBd0FnQVNBTERSUXJBVElYTmpNeUZoWVZGQVlqSWlZbkl3WWpJaVkxTkRjM05UUWpJZ1lISnpZMkFSUVdNekkyTlRRbUl5SUdCd2NHQmhVVUZqTXlOalVCSW5veFEzTkpja0dLZFVWdUlRRS9pVlpnOTJGb0pVMG5JeXRpQVFSRlMwdEZSVXhMUkcxSlVGSXhLa0JRQWlaRlJFRjhXb2FTT3psMFUxR2tCZ01kY1JZVFRCWVkvdWhiWm1aYlhHTmpaZ01DTWpVb0tFbERBQUFDQUMzLzlnTllBaVlBS0FBekFTdExzQlZRV0VBU0pnRUhBQ1VCQmdjV0FRRUlEd0VEQVFSS0cwdXdMVkJZUUJJbUFRY0NKUUVHQnhZQkFRZ1BBUU1CQkVvYlFCSW1BUWNDSlFFR0J4WUJBUWdQQVFNSkJFcFpXVXV3RlZCWVFDSUFCZ0FJQVFZSVpRQUhCd0JmQWdvQ0FBQ05Td2tCQVFFRFh3VUVBZ01EZ3dOTUcwdXdHVkJZUUNZQUJnQUlBUVlJWlFBQ0FvVkxBQWNIQUY4S0FRQUFqVXNKQVFFQkExOEZCQUlEQTRNRFRCdExzQzFRV0VBcUFBWUFDQUVHQ0dVQUFnS0ZTd0FIQndCZkNnRUFBSTFMQUFNRGcwc0pBUUVCQkY4RkFRUUVpd1JNRzBBMEFBWUFDQUVHQ0dVQUFnS0ZTd0FIQndCZkNnRUFBSTFMQUFFQkJGOEZBUVFFaTBzQUF3T0RTd0FKQ1FSZkJRRUVCSXNFVEZsWldVQWJBUUF4THlzcEl5RWZIUm9ZRkJJT0RRd0xDQVlBS0FFb0N3MFVLd0V5RmhVVkZCWXpNalkxRVRNUkl5Y2pCZ1lqSWlZbkJnWWpJaVkxTkRjM05UUWpJZ1lISnpZMkV3Y0dCaFVVRmpNeU5qVUJJbVJwTlRoU1FHcFREd1lhV3pvK1Z4VWdXa0ZSWHZkaGFDVk5KeU1yWXBkSlVGSXhLa0JRQWlaZVlaVkVRV0ZkQVJEOTVVY3FKeTh4THpGVFVhUUdBeDF4RmhOTUZoaiszZ01DTWpVb0tFbERBQUFBQUFJQUxmLzJBekVDSmdBakFDNEF2a3V3RlZCWVFBOFNBUUlERVFFQkFod0JBZ2NHQTBvYlFBOFNBUUlFRVFFQkFod0JBZ2NHQTBwWlM3QVZVRmhBSUFBQkFBWUhBUVpsQUFJQ0ExOEVBUU1EalVzQUJ3Y0FYd2dGQWdBQWl3Qk1HMHV3R1ZCWVFDUUFBUUFHQndFR1pRQUVCSVZMQUFJQ0ExOEFBd09OU3dBSEJ3QmZDQVVDQUFDTEFFd2JRQ2dBQVFBR0J3RUdaUUFFQklWTEFBSUNBMThBQXdPTlN3Z0JCUVdEU3dBSEJ3QmZBQUFBaXdCTVdWbEFFZ0FBTENvbUpBQWpBQ01iSlNJakpBa05HU3NoSnlNR0JpTWlKalUwTnpjMU5DTWlCZ2NuTmpZek1oWVZGUlFHQnhjMk5qY1RNd0VEQndZR0ZSUVdNekkyTlFHakZnUWxVRUJMWFBkaGFDVk5KeU1yWWpSa2FBSUJCQWdYRGFCMi92Q2NTVkJTTVNwQVVFNHVLbE5ScEFZREhYRVdFMHdXR0Y1aG54czNHUUVjT2hvQlQvM2xBUVFEQWpJMUtDaEpRd0FBQXdBdC8vWURNUUltQUI0QUtBQXpBTmRMc0JWUVdFQU9Fd0VDQXhJQkJBSUJBUWtJQTBvYlFBNFRBUUlGRWdFRUFnRUJDUWdEU2xsTHNCVlFXRUFvQUFRQUJ3Z0VCMlVBQVFBSUNRRUlaUUFDQWdOZkJRRURBNDFMQUFrSkFGOEtCZ0lBQUlzQVRCdExzQmxRV0VBc0FBUUFCd2dFQjJVQUFRQUlDUUVJWlFBRkJZVkxBQUlDQTE4QUF3T05Td0FKQ1FCZkNnWUNBQUNMQUV3YlFEQUFCQUFIQ0FRSFpRQUJBQWdKQVFobEFBVUZoVXNBQWdJRFh3QURBNDFMQ2dFR0JvTkxBQWtKQUY4QUFBQ0xBRXhaV1VBVkFBQXhMeXNwSlNRQUhnQWVFUk1sSWlRa0N3MGFLeUVuSXdZR0l5SW1OVFEyTnpjMU5DTWlCZ2NuTmpZek1oWVZGVE0zTXdFbk16WTJOemNqRlJRR0p3Y0dCaFVVRmpNeU5qVUJvaFVFSlZCQVMxeC9lMTVvSlUwbkl5dGlOR1JvYzFwMi92UTdCUW9iRFNGVUFtZEpUMU14S2tCUVRpNHFVMUZVVmdZRkdtd1dFMHdXR0Y1aERNRDk1Vm9jUUIxSFJ4eENsd1FGTXpnb0tFbERBQUFDQUMzL0RRTXhBaVlBTHdBNkFLZExzQlZRV0VBWEVnRUNBeEVCQVFJY0FRSUlCeW9CQmdBcEFRVUdCVW9iUUJjU0FRSUVFUUVCQWh3QkFnZ0hLZ0VHQUNrQkJRWUZTbGxMc0JWUVdFQW9BQUVBQndnQkIyVUFBZ0lEWHdRQkF3T05Td0FJQ0FCZkFBQUFpMHNBQmdZRlh3QUZCWWNGVEJ0QUxBQUJBQWNJQVFkbEFBUUVoVXNBQWdJRFh3QURBNDFMQUFnSUFGOEFBQUNMU3dBR0JnVmZBQVVGaHdWTVdVQU1KQ01rSXhzbElpTWtDUTBkS3dVbkl3WUdJeUltTlRRM056VTBJeUlHQnljMk5qTXlGaFVWRkFZSEZ6WTJOeE16QVFZR0l5SW1KelVXTXpJMk53TUhCZ1lWRkJZek1qWTFBYU1XQkNWUVFFdGM5MkZvSlUwbkl5dGlOR1JvQWdFRENCUU1wWGIrdVNCU1NSUWpFQlVqTEMwVEIwbFFVakVxUUZBUFhTNHFVMUdrQmdNZGNSWVRUQllZWG1HZkd6Y1pBUll6R3dGYi9YbzlTd1VGV0FreEtRRkVBd0l5TlNnb1NVUC8vd0FnLy9ZQnRnSWxBZ1lFeHdBQUFBRUFCd0FBQWlrQytBQWFBRGhBTlJFUURRWUVBZ0VCU2dnSEFnVUVBUUFCQlFCbEFBWUdoRXNBQVFHRlN3TUJBZ0tEQWt3QUFBQWFBQm9SRVJFVEVoa1JDUTBiS3dFVkl4VVVCZ2N6TmpZM056TUhFeU1uQnhVakVTTTFNelV6RlFGcnJ3UUJBd3NuRDZWNzJlZDlzajVwVEV4cEFxRksyeFE0Rmc4eEVMSG4vc3p4TkwwQ1YwcFhWd0FBQVFCVEFBQUNLUUw0QUJvQUswQW9HaGtXRlJRVEVnc0RBZ0VMQUFJQlNnQUJBWVJMQUFJQ2hVc0RBUUFBZ3dCTUZoa1JGQVFOR0NzM055Y0hGU01STXhFVUJnY3pOalkzTnpNSEZ6Y1hCeGNqSndmeVJ6OCthV2tFQVFNTEp3K2xlOWxFWVN4aWVIMUpSV1UzVlRTOUF2aitoQlE0Rmc4eEVMSG5XMHc0VGFCak5RQUFBUUFIQUFBQ0tRTDRBQ0lBT1VBMklpRWVIUndiR2hNREFnRUxBQVlCU2dRQkFnVUJBUVlDQVdVQUF3T0VTd0FHQm9WTEJ3RUFBSU1BVEJZWkVSRVJFUkVVQ0EwY0t6YzNKd2NWSXhFak5UTTFNeFV6RlNNVkZBWUhNelkyTnpjekJ4YzNGd2NYSXljSDhrYy9QbWxNVEdtdnJ3UUJBd3NuRDZWNzJVUmhMR0o0ZlVsRlpUZFZOTDBDVjBwWFYwcmJGRGdXRHpFUXNlZGJURGhOb0dNMUFBRUFVd0FBQVNjQytBQUhBQ0pBSHdZRkFnRUVBQUVCU2dJQkFRR0VTd0FBQUlNQVRBQUFBQWNBQnhNRERSVXJFeEUzRVNNUkJ4RzlhbXBxQXZqK3hDYitIZ0dNSmdHU0FBRUFFQUFBQVA4QytBQUxBQ0ZBSGdRQkFnVUJBUUFDQVdVQUF3T0VTd0FBQUlNQVRCRVJFUkVSRUFZTkdpc3pJeEVqTlRNMU14VXpGU085YWtORGFrSkNBbGhKVjFkSkFBTUFBUC8yQW9jQ0pRQVNBQmtBSUFCRlFFSUhBZ0lBQ1FvRkF3TUlBQU5sQ3dFR0JnRmZBQUVCalVzTUFRZ0lCRjhBQkFTTEJFd2JHaFFUQUFBZUhSb2dHeUFYRmhNWkZCa0FFZ0FTSWhFU0loRU5EUmtyTlRVek5qWXpNaFlYTXhVakJnWWpJaVltSnpjaUJnY2hKaVlETWpZM0lSWVdTd3lGYTJTSkRVWkZDWWR1UkcxREJ2dEJSQWdCSEFoRlFVUkZCdjdpQmtYdVRuRjRlSEZPZDRFNmJsRGZTMFpHUy82QVZVeE1WUUFBQXdBei8vWUN6UUltQUJ3QUp3QXpBSWRBQ2dvQkJRRVdBUU1FQWtwTHNCVlFXRUFpQ1FFRUFBTUdCQU5uQndFRkJRRmZBZ0VCQVkxTENnRUdCZ0JmQ0FFQUFJc0FUQnRBTEFrQkJBQURCZ1FEWndBRkJRRmZBZ0VCQVkxTEFBY0hBVjhDQVFFQmpVc0tBUVlHQUY4SUFRQUFpd0JNV1VBZktTZ2VIUUVBTHkwb015a3pJeUVkSng0bkZSTU9EQWdHQUJ3QkhBc05GQ3NGSWlZbU5UUTJNeklXRnpZMk16SVdGUlFHQmlNaUp4WVdGUlFHQmhNeU5UUW1JeUlHRlJRV0FUSTJOVFFtSXlJR0ZSUVdBUzFKY1VDRGVqZFZJQTQyS2o1RkhUZ3FGaEFCQVR4eHpqZ2RHaHNiRy83K1NVVkZTa2RIUmdwRGZsZUNsaU1kR2laTU95SStKd1lJRUFoT2QwTUJaRUVjSWlNYkhTVCs5R2RaVzJWaVhscG1BQUQvL3dBMC8vWUR2QUlsQUNZQVVnQUFBQWNBVWdHT0FBQUFBZ0FDL3hBQ09BSWxBQjBBS2dDRVFBb0ZBUWdCRWdFRENRSktTN0FaVUZoQUp3UUJBQW9IQWdVR0FBVmxDd0VJQ0FGZkFnRUJBWVZMQUFrSkExOEFBd09MU3dBR0JvY0dUQnRBS3dRQkFBb0hBZ1VHQUFWbEFBRUJoVXNMQVFnSUFsOEFBZ0tOU3dBSkNRTmZBQU1EaTBzQUJnYUhCa3haUUJnZkhnQUFKaVFlS2g4cUFCMEFIUkVSRnlRa0VSRU1EUnNyRnpVekVUTVhNelkyTXpJV0ZSUUdJeUltSnlNV0ZoVVZNeFVqRlNNMUV5SUdCeFVVRmpNeU5qVTBKZ0pSVmc4RkYwMC9Zblo0WVQxT0Z3Y0NCYSt2YXZSTFBnRThVRUpBUVpWS0FtWklJakNNaTRtUExSOFNNUk0zU2x0YkFtTldXUkJlWkd4WFdHWUFBZ0FGL3hBQ3FRSW1BQ2NBTXdEcFM3QVpVRmhBRUNRQkJ3QXNJUUlJQlJBS0FnRURBMG9iUUJBa0FRY0dMQ0VDQ0FVUUNnSUJBd05LV1V1d0NsQllRQ3dBQkFFQ0F3UndBQVVBQXdFRkEyY0tBUWNIQUY4R0NRSUFBSTFMQUFnSUFWOEFBUUdMU3dBQ0FvY0NUQnRMc0JsUVdFQXRBQVFCQWdFRUFuNEFCUUFEQVFVRFp3b0JCd2NBWHdZSkFnQUFqVXNBQ0FnQlh3QUJBWXRMQUFJQ2h3Sk1HMEF4QUFRQkFnRUVBbjRBQlFBREFRVURad0FHQm9WTENnRUhCd0JmQ1FFQUFJMUxBQWdJQVY4QUFRR0xTd0FDQW9jQ1RGbFpRQjBwS0FFQU1DNG9NeWt6SXlJZ0hoa1lFeEVQRGdnR0FDY0JKd3NORkNzQk1oWVZGQVlHSXlJbUp4WVdGUlVqRVNZaklnWVZGQllYSXlZbU5UUTJNeklYRVRNWE16WTJGeUlHRlJVV0ZqTXlOalUwQWRSamNqbHFTaXhISFFJQmFoSVRJQ0VGQlZrRUIwbFVFaEZYRHdZWlR5Qk1QaEpOSjBORUFpYVBpVlIrUmhZTklDNFdwUUVnQWlJZEVCa01DaDRUUDFJQ0FaUkpKUzVZV0Zpc0NocGlYc0FBQUFBQUFnQUYveEFEUWdJbUFDd0FPUUNFUzdBWlVGaEFFUm9MQWdBQkxoY0tBd1lBS3dFRUJnTktHMEFSR2dzQ0FBSXVGd29EQmdBckFRUUdBMHBaUzdBWlVGaEFIUWNCQUFBQlh3TUNBZ0VCalVzQUJnWUVYUUFFQklOTEFBVUZod1ZNRzBBaEFBSUNoVXNIQVFBQUFWOERBUUVCalVzQUJnWUVYUUFFQklOTEFBVUZod1ZNV1VBTEpEVVJSU1FaSlNZSURSd3JKUzRDTlRVMEl5SUdCelUyTmpNeUZoVVZGQllYRmhjUk14Y3pOall6TWhZVkZBWUdJeUltSnhVak5TWVRGUllXTXpJMk5qVTBJeUlHQVNOQ1RDQTNFQjBNQ3lnWlNrUTJRUVFFVnhBRkdGQTdZM0pGaDJRUkpoTnFKWThXS1JCRlV5YURURDRVR2tkalEycEtCZ1JUQlFsTlRuRk1WUllCQVFHN1NTVXVqWVJYZ1VjQkFlajBCZ0VVelFJQk5GbzV1VmdBQUFBQ0FEVC9FQUpxQWlVQUhRQXFBSmRMc0JsUVdFQUtFd0VKQWdZQkFRZ0NTaHRBQ2hNQkNRTUdBUUVJQWtwWlM3QVpVRmhBSndRQkFBb0hBZ1VHQUFWbEFBa0pBbDhEQVFJQ2pVc0xBUWdJQVY4QUFRR0xTd0FHQm9jR1RCdEFLd1FCQUFvSEFnVUdBQVZsQUFNRGhVc0FDUWtDWHdBQ0FvMUxDd0VJQ0FGZkFBRUJpMHNBQmdhSEJreFpRQmdmSGdBQUppUWVLaDhxQUIwQUhSRVJFUlFrSnhFTURSc3JGelV6TlRRMk55TUdCaU1pSmpVME5qTXlGaGN6TnpNUk14VWpGU00xSnpJMk56VTBKaU1pQmhVVUZ2eXpBd01HRjA4K1lIZDVZVDVPR0FRTlZsRlJhb2xNUUFFK1VVSkJRWlJKUUJNdUVpSXdqSXFMamk4alNQMmFTVnhjNEZWWUVtQmphRnhiWXdBQUFBSUFOUDhMQXZvQ0pRQW9BRFVBalVBWkZBRUhCQmdCQmdNbkJ3UURBQVlEQVFJRkFBUktBZ0VGUjB1d0dWQllRQ1VBQkFBREJnUURad0FIQndGZkFnRUJBWTFMQ1FFR0JnQmZBQUFBaTBzSUFRVUZod1ZNRzBBcEFBUUFBd1lFQTJjQUFnS0ZTd0FIQndGZkFBRUJqVXNKQVFZR0FGOEFBQUNMU3dnQkJRV0hCVXhaUUJZcUtRQUFNUzhwTlNvMUFDZ0FLQkVYRkNRcUNnMFpLd1UxQnljM05EWTNJd1lHSXlJbU5UUTJNeklXRnpNM014RTNOalkxTkNZakp6SVdGUlFHQndjUkF6STJOelUwSmlNaUJoVVVGZ0d2dGlyaEF3SUdGMDgrWUhkNVlUNU9HQVFOVm1VbEd5NHBBVVJRS2ltTzgweEFBVDVSUWtGQjhMRzJKK0FPSEF3aU1JeUtpNDR2STBqK1lHVWtOQ0FtS2psTE96UkZLSTcrNUFFOFZWZ1NZR05vWEZ0akFBQUFBQUVBSHdBQUFlZ0NIQUFUQUNsQUpnY0JBZ01CU2dBREFBSUJBd0psQUFRRUFGMEFBQUNGU3dBQkFZTUJUQ01oRVJZZ0JRMFpLeE16TWhZVkZBWUhGeU1uSXpVek1qWTFOQ01qSDlGaWNEMHdrM1dBYWw0MVBHdGtBaHhTVHoxTEVlTFZTeTRyVkFBQUFRQW4vM1VDVEFJbEFDSUFPa0EzRHdFQ0F3NEJCUUlFQVFFRUEwb0FCUUFBQlFCaEFBSUNBMThBQXdPTlN3WUJCQVFCWFFjQkFRR0RBVXdSRVJFbkpTY1JFQWdOSENzRkl6VWhOVGMyTmpVMEppTWlCZ2NuTmpZek1oWVZGQVlHQndjVk16VXpGVE1WSXdId1pmNmNoekpFS2g4Zk9SNDZJMVpCVDFzZk95bGUzV1piWEl1TFNJa3pVUzRoSmhvYVJoOHFVa1FwUTBNb1hnU09qbFlBQUFFQUFQK2pBZzRDZndBVUFERkFMZzBLQndRQkJRUUJBVW9BQWdJRVhRVUJCQVNEU3dBQUFBRmRBd0VCQVlVQVRBQUFBQlFBRkJrU0VoSUdEUmdyTXljSEl6Y0RNeGNUTXdNV0ZoY3pOalkzRXpNRHpCdzNPbEtSY0ZKc1BZb0tGUVFFQkJnS2NIRE5TcWY2QVg3bkFVditYaDlMR0JsTkh3RTcvZVVBQUFBQUFRQU0veEFERXdJY0FEVUFPRUExTGlJVUF3SUREZ2NDQVFJR0FRQUJBMG9GQkFJREE0VkxBQUlDZzBzQUFRRUFZQUFBQUljQVREVTBLU2dlSFJ3YkpDTUdEUllyQlE0Q0l5SW5OUllXTXpJMk56Y0RMZ01uSXc0REJ3TWpBek1URmhZWE16NENOeE16RXg0Q0Z6TStBamNUTXdKNUcwQlFNeWdlREI4UUxUY1JDVTRFRGc0TEFnTUNEQThPQkV0d21tdElEUklFQXdVTURBTlZjVkVJRFFvQkJBSUtEZ2xIYVFGZGFDb0pWUUlFT3p3ZUFRc1BORG92Q1FrdlBEWVEvdjBDSFA3eExtTWRHMEUxQ3dFaC91SVlQemdRRGpsR0l3RU5BQUlBQy84UUFqZ0MrQUFnQUMwQVJFQkJHZ0VJQndZQkFBa0NTZ1VCQXdZQkFnY0RBbVVBQkFTRVN3QUlDQWRmQUFjSGpVc0FDUWtBWHdBQUFJdExBQUVCaHdGTUxDb2tKeEVSRVJFUkZ5SUtEUjByQVJRR0l5SW1KeU1XRmhVVkl4RWpOVE0xTXhVekZTTVZGQVlITXpZMk16SVdCelFtSXlJR0J4VVVGak15TmdJNGRtSStUaGNHQVFWcVNFaHFyNjhEQVFVV1RqNWhkMjAvUkV3K0FUeFFRejhCRG9tUExCOE5OUkRmQTBoSlYxZEpOaEV4RFNJd2pvZGZYMVpYRWw1a1pRQUNBQXYvRUFJNEF2Z0FJQUF0QUV0QVNBNEJDQVViQVFZSkFrb0tCd0lEQWdFQUFRTUFaUUFFQklSTEFBZ0lCVjhBQlFXTlN3QUpDUVpmQUFZR2kwc0FBUUdIQVV3QUFDd3FKU01BSUFBZ0pDY1JFUkVSRVFzTkd5c0ZGU01WSXpVak5UTVJNeFVVQmdjek5qWXpNaFlWRkFZaklpWW5JeFlXRlJVQk5DWWpJZ1lIRlJRV016STJBV3l2YWtoSWFnTUJCUlpPUG1GM2RtSStUaGNHQVFVQkRqOUVURDRCUEZCRFAxTklWVlZJQTB2V0VURU5JakNPaVltUExCOE5OUkJDQVdOZlgxWlhFbDVrWlFBQkFGUC9FQUljQWh3QURRQWNRQmtJQUFJQUFRRktBZ0VCQVlWTEFBQUFod0JNR0JFUkF3MFhLeGNWSXhFekVSUUdCeGMyTnhNenZXcHFBZ1FFRGgrNWV3WHJBd3orM2lBNUdBRXhNd0V3QUFFQUQvOFFBZFFDSmdBcEFEOUFQQThCQWdNT0FRRUNHUUVBQVNRQkJRQWpBUVFGQlVvQUFRQUFCUUVBWlFBQ0FnTmZBQU1EalVzQUJRVUVYd0FFQkljRVRDVXNKU1FoSVFZTkdpc0ZOQ01qTlRNeU5qVTBKaU1pQmdjbk5qWXpNaFlXRlJRR0J4VVdGaFVVQmlNaUppYzFGaFl6TWpZQlo3dEpTRlZhUkRrcFN5VWpLMlJBT0YwM1FUOUhVWVovT1Y0cEsxOHJVbEVGa0ZNOVFUZzZHaGhOSENFb1ZFSkNYQkFHRG1CTWEzOFVGRjhYR0ZBQUFBQUMvLzMvRUFINkF1Y0FIUUFuQUQ1QU93Y0JBUUlHQVFBQkFrb0lCZ0lEQlFFQ0FRTUNad0FIQndSZkFBUUVoRXNBQVFFQVh3QUFBSWNBVEI4ZUpDSWVKeDhuSkNRUkV5VWlDUTBhS3hjVUJpTWlKaWMxRmhZek1qWTFFU00xTXpVME5qWXpNaFlWRkFZakl6Y3lOVFFtSXlJR0ZSWDlUMXdVTXc0Ukh4TXBLbjkvS1ZJOVZWcGxYam80V3lRaUlpdEZUVjRHQlZVRUJTMDJBZHhXTURSVk1sUklTbHRXVUI0bk1UY3RBQUFBQUFFQU0vOFFBaUlDSmdBZkFENUFPd2tCQVFBS0FRSUJBa29BQVFBQ0JRRUNad1lCQUFBRFh3QURBNDFMQUFVRkJGOEFCQVNIQkV3QkFCc2FHUmdVRWc0TUJ3VUFId0VmQncwVUt3RWlCaFVVRmpNeU5qY1hCZ1lqSWlZMU5EWXpNaFlWRkFZak5USTJOalUwQVNWRFJEODhIeXNSQVJNNUtsOXRnWFIxaGFxOVYyODBBYzVnVWt4UURndFlDdzU4ZFh1U3FLSG41bFJMcFlmekFBSUFOUDlqQXhRQytBQWZBQ3dCQlV1d0dWQllRQW9KQVFvQkhBRUFBd0pLRzB1d0lsQllRQW9KQVFvQkhBRUdBd0pLRzBBS0NRRUtBUndCQmdrQ1NsbFpTN0FaVUZoQUxRQUVDZ01LQkFOK0FBY0FCNFFBQWdLRVN3QUtDZ0ZmQUFFQmpVc01DUVVEQXdNQVhnZ0dDd01BQUlNQVRCdExzQ0pRV0VBNUFBUUtBd29FQTM0QUJ3QUhoQUFDQW9STEFBb0tBVjhBQVFHTlN3d0pCUU1EQXdaZUNBRUdCb05MREFrRkF3TURBR0FMQVFBQWl3Qk1HMEExQUFRS0F3b0VBMzRBQndBSGhBQUNBb1JMQUFvS0FWOEFBUUdOU3dVQkF3TUdYZ2dCQmdhRFN3d0JDUWtBWHdzQkFBQ0xBRXhaV1VBaElTQUJBQ2dtSUN3aExCc2FHUmdYRmhVVUV4SVJFQThPQndVQUh3RWZEUTBVS3dVaUpqVTBOak15RmhjekppWTFOVE1STXpjekJ6TVZJd2NqTnlNbkl3WUdKekkyTnpVMEppTWlCaFVVRmdFTVluWjRZajFPR0FZQ0JtbzJRRXcvZUpwQVRVQm5FZ1VYVGlWT1B3RTlVa0ZDUWdxTWlvdU9MaUVPTmhUSy9WeWNuRlNkblVnaU1GZFdXQkJmWkdoY1cySUFBQUFBQVFCVC8yTUJ1Z0w0QUEwQUxFQXBBQUFGQVFVQUFYNEFBd0lEaEFBRkJZUkxCZ0VCQVFKZUJBRUNBb01DVEJFUkVSRVJFUkFIRFJzckpUTUhNeFVqQnlNM0l4RXpFVE1CTkUwL2VKcEFUVUNBYWpqd25GU2RuUUw0L1Z3QUFBQUFBUUJULzJNRVZ3SWxBQ3NBcUV1d0dWQllRQXNpQVFjQUFVb29BUWNCU1J0QUN5SUJCd3NCU2lnQkJ3RkpXVXV3R1ZCWVFDb0FBZ2NCQndJQmZnQUZCQVdFQ1FFSEJ3QmZEQXNOQXdBQWpVc0RBUUVCQkY0S0NBWURCQVNEQkV3YlFDNEFBZ2NCQndJQmZnQUZCQVdFQUFzTGhVc0pBUWNIQUY4TURRSUFBSTFMQXdFQkFRUmVDZ2dHQXdRRWd3Uk1XVUFoQVFBbkpTRWdIeDRiR1JjV0V4RVBEZzBNQ3dvSkNBY0dCUVFBS3dFckRnMFVLd0V5RmhVUk16Y3pCek1WSXdjak55TVJOQ01pQmhVUkl4RTBJeUlHRlJFakVUTVhNelkyTXpJWE16WTJBcTliWEN4QVREOTRtajlPUUhSbFNENXBaa3c1YWxRUEJobFZNSHdvQ0JwY0FpVmVhUDcxbkp4VW5aMEJVWDFaVS83ZUFWRjlZbHorOEFJYlNDb29WeXdyQUFFQVUvOWpBeUlDSlFBZEFKQkxzQmxRV0xVYUFRY0FBVW9idFJvQkJ3a0JTbGxMc0JsUVdFQW5BQUlIQVFjQ0FYNEFCUVFGaEFBSEJ3QmZDUW9DQUFDTlN3TUJBUUVFWGdnR0FnUUVnd1JNRzBBckFBSUhBUWNDQVg0QUJRUUZoQUFKQ1lWTEFBY0hBRjhLQVFBQWpVc0RBUUVCQkY0SUJnSUVCSU1FVEZsQUd3RUFHUmdYRmhNUkR3NE5EQXNLQ1FnSEJnVUVBQjBCSFFzTkZDc0JNaFlWRVRNM013Y3pGU01ISXpjakVUUWpJZ1lWRVNNUk14Y3pOallCWkY1a04wQk1QM2lhUUUxQWZtOVNQMnBVRHdZYVd3SWxYbWorOVp5Y1ZKMmRBVkIrWWx6KzhBSWJTQ29vQUFBQUFRQlRBQUFDRVFLNUFCY0EyVXV3SWxCWVFBd0ZBUUlCRkF3R0F3TUNBa29iUUF3RkFRVUJGQXdHQXdNQ0FrcFpTN0FjVUZoQUl3QUFBSUpMQUFJQ0FWOEdCUUlCQVkxTEFBTURBVjhHQlFJQkFZMUxBQVFFZ3dSTUcwdXdJbEJZUUNNQUFBRUFnd0FDQWdGZkJnVUNBUUdOU3dBREF3RmZCZ1VDQVFHTlN3QUVCSU1FVEJ0THNDZFFXRUFnQUFBQkFJTUFBZ0lCWHdBQkFZMUxBQU1EQlY4R0FRVUZoVXNBQkFTREJFd2JRQ1lBQUFFQWd3QUZCWVZMQUFJQ0FWOEdBUUVCalVzQUF3TUJYd1lCQVFHTlN3QUVCSU1FVEZsWldVQUtFeEVWRVNNaEVBY05HeXNCTXdjV0ZoY0hKaVluQnlNM0JnWVZFU01STXhjek5qY0Jua295Rmk4V0NoazlIRHhNUEVCTWFsTU9CVDUxQXJtVUFRTURaQVFFQWJTd0NsVkUvdVFDSEY1aEJ3QUFBZ0JWLzJNQzhRSWJBQmdBSVFCTVFFa0pBUWNDQVVvQUFna0hDUUlIZmdBRkJBV0VBQWtBQndFSkIyVUFDZ29BWFFBQUFJVkxBd0VCQVFSZUN3Z0dBd1FFZ3dSTUFBQWhIeHNaQUJnQUdCRVJFUkVSRVJjaERBMGNLek1STXpJV0ZSUUdCZ2NYTXpjekJ6TVZJd2NqTnlNbkl4VVJNekkyTlRRbUl5TlY5VnBzSWpnZ1lUVkFURDk0bWtCTlFGR0ljbkk0UURFM2dnSWJVazR1UFNVSmpweWNWSjJkMHRJQkl5c3JJaTRBQUFBQ0FCTC85Z0xsQXVvQUpBQXZBSjFBRGhzQkFRZ1JBUVFCRWdFQ0JBTktTN0FaVUZoQUxRQUhDZ2dLQndoK0FBb0tBRjhMQVFBQWhFc0dBd0lCQVFoZkRBa0NDQWlGU3dBRUJBSmdCUUVDQW9NQ1RCdEFNUUFIQ2dnS0J3aCtBQW9LQUY4TEFRQUFoRXNHQXdJQkFRaGZEQWtDQ0FpRlN3QUNBb05MQUFRRUJXQUFCUVdMQlV4WlFDRW1KUUVBTENvbEx5WXZJQjhlSFJvWkZoUVBEUXNLQ1FnSEJRQWtBU1FORFJRckFUSVdGUlFHSXlNUkl4RWpFUlF6TWpZM0ZRWUdJeUltTlJFak5UYzNNeFV6TlRRMk5oY3lOalUwSmlNaUJoVVZBazVHVVYxWkhXcmhTeGdyRlJVNklraFVTMUVqUWVFa1NpTXNJeDRiSFNFQzZrMDlSbEgrTndISi90cFdCd1pSQ0F0TVhnRXBNQ1oyZVNBd1R5L09LQjBYSWlzdkpBQUFBZ0ErQUFBQjNnTFZBQjBBS1FBNFFEVWtHQmNXRlFZR0FnTUJTZ1VCQXdNQVh3UUJBQUNLU3dBQ0FnRmRBQUVCZ3dGTUh4NEJBQjRwSHlrUURnMExBQjBCSFFZTkZDc1RNaFlWRkFZSEZoWVZGQVlqSXpVek1qWTFOQ1luQnljM0ppWTFORFlYSWdZVkZCWVhOalkxTkNiK1dGZ3VJa0JBZFhhMXFVWkhNaWlWUjRjM1JtQlRKeWd2TGlVY0tnTFZXa2czVXlRdFdVRldhRmt4TmlvNkhKRkxoQ1ZTUDBWY1R5a2xKalFlSkRNaUl5b0FBZ0F6Ly9ZQ0tnTFdBQllBSWdBcFFDWVJFQUlCU0FBQkFBTUNBUU5uQkFFQ0FnQmZBQUFBaXdCTUdCY2VIQmNpR0NJVkpRVU5GaXNCRmhZVkZBWWpJaVltTlRRMk55WW1KemNXRmhjV0ZnTXlOalUwSmlNaUJoVVVGZ0hNTFRHRmVFbHhRSUIwUW1vc1NSdzlMeWhpZTB0RFJVcEhSMFFCMVNwbVJuMk1QWEpQZElJRExsODBLQm82SmlGRy9sTmdVRXBkV1ZKTVlBQUJBRlAvRUFHV0FpWUFGZ0IrUzdBWlVGaEFDd01CQVFBVEJBSUNBUUpLRzBBTEF3RUZBQk1FQWdJQkFrcFpTN0FaVUZoQUhBQUJBUUJmQlFZQ0FBQ05Td0FDQWdOZEFBTURnMHNBQkFTSEJFd2JRQ0FBQlFXRlN3QUJBUUJmQmdFQUFJMUxBQUlDQTEwQUF3T0RTd0FFQkljRVRGbEFFd0VBRWhFUUR3NE5EQXNJQmdBV0FSWUhEUlFyQVRJV0Z3Y21KaU1pQmhVVk14VWpGU01STXhjek5qWUJXdzBoRFFrTUh3MUJWOG5KYWxNT0JSdFFBaVlEQTJRREJGaFB5bEx3QXd4ZUx6a0EvLzhBS2dBQUFpUURDd0VQQldVQ1JBSWJ3QUFBQ2JFQUFyZ0NHN0F6S3dBQUFRQlQveEFBdlFJY0FBTUFFMEFRQUFFQmhVc0FBQUNIQUV3UkVBSU5GaXNYSXhFenZXcHE4QU1NQUFBQkFGUC9FQUtlQWlZQUh3QmhRQTRNQVFBQ0dRRUVBQm9CQlFRRFNrdXdHVkJZUUJzQUFBQUNYd01CQWdLRlN3QUVCQVZmQUFVRmkwc0FBUUdIQVV3YlFCOEFBZ0tGU3dBQUFBTmZBQU1EalVzQUJBUUZYd0FGQll0TEFBRUJod0ZNV1VBSkpTUWtFUk1qQmcwYUt5VTFOQ1lqSWdZVkVTTVJNeGN6TmpZek1oWVZGUlF6TWpZM0ZRWUdJeUltQWJ3Mk9rOUFhbE1QQmhwYk5WeGxQUkViRHc4ckZrMUZrcmhFUUY1Zi9mOERERWdySjJCbXlVb0ZCVk1JQmxZQUFBQUJBRlAvRUFHV0FpWUFFZ0JtUzdBWlVGaEFDd01CQVFBUEJBSUNBUUpLRzBBTEF3RURBQThFQWdJQkFrcFpTN0FaVUZoQUVnQUJBUUJmQXdRQ0FBQ05Td0FDQW9jQ1RCdEFGZ0FEQTRWTEFBRUJBRjhFQVFBQWpVc0FBZ0tIQWt4WlFBOEJBQTROREFzSUJnQVNBUklGRFJRckFUSVdGd2NtSmlNaUJoVVJJeEV6RnpNMk5nRmJEU0VOQ1F3ZkRVRlhhbE1PQlJ0UUFpWURBMlFEQkZoUC9mUURERjR2T1FBQkFCNy85Z0hSQWh3QUZ3QTFRRElVQVFRQkZRRUFCQUpLQXdFQkFRSmRBQUlDaFVzQUJBUUFYd1VCQUFDTEFFd0JBQklRREFvSkNBY0dBQmNCRndZTkZDc0ZJaVkxTkRZM0l6VWhGU01pQmhVVUZqTXlOamNWQmdZQkxYZURPamFGQWJOblhXMVJTU1pFSVI5SENvSjNUMndkVlZWblpsRmJGQkpjRVJFQUFBTC8rUDlTQVpBQytBQWRBQ2dBUTBCQUNnRUhBUmNCQlFBWUFRWUZBMG9BQVFrQkJ3TUJCMmNJQVFNRUFRQUZBd0JuQUFVQUJnVUdZd0FDQW9RQ1RCOGVKU01lS0I4b0pTTVJFUklrSVFvTkd5c1hFU01pSmpVME5qTXlGeEV6RVRNVkl4RVVGak15TmpjVkJnWWpJaVlESWdZVkZCWXpNelUwSnFRdFFEOCtOQ1FXYW1abUlpWVFHdzhOTHhWVVJ6VVhGeUFjSnhzRkFTMDhMalE0RlFFUC9tdzgvdFlwTEFVRVV3WUhXZ0lUR1JNWEdCQW9Jd0FCQUZQL1BBSmxBaVVBRndCVnRRd0JBUU1CU2t1d0dWQllRQmtBQlFBR0JRWmhBQUVCQTE4RUFRTURoVXNDQVFBQWd3Qk1HMEFkQUFVQUJnVUdZUUFEQTRWTEFBRUJCRjhBQkFTTlN3SUJBQUNEQUV4WlFBb1JFeVFSRXlJUUJ3MGJLeUVqRVRRaklnWVZFU01STXhjek5qWXpNaFlWRVRNUkl3SURSbTlTUDJwVUR3WWFXek5lWkQ5aUFWQitZbHorOEFJYlNDb29YbWorOC83cUFBQUFBUUFBLy9ZQjNnSWxBQjRBUlVCQ0NRRUNBUW9CQUFJWEFRVUVHQUVHQlFSS0F3RUFDQWNDQkFVQUJHVUFBZ0lCWHdBQkFZMUxBQVVGQmw4QUJnYUxCa3dBQUFBZUFCNGxJUkVSSlNNUkNRMGJLelUxTXo0Q016SVdGd2NtSmlNaUJ6TVZJeFl6TWpZM0ZRWUdJeUltSjBzSVJXMURMVThhSUJ3K0hYNFJ1NzBKaEN4R0hSMUVNV3VHQnZKTFVXY3dFZzFXQ2hHT1M2TVVFRndSRUhtREFBTUFBLzhRQW1VQ0pRQW5BQzRBTmdDdlM3QVpVRmhBSUFjQkJRQXhMeXdySnc0TkRBc0JBQXNHQlI4QkJBWVZBUU1FRkFFQ0F3VktHMEFnQndFRkFURXZMQ3NuRGcwTUN3RUFDd1lGSHdFRUJoVUJBd1FVQVFJREJVcFpTN0FaVUZoQUlRY0JCUVVBWHdFQkFBQ05Td0FHQmdSZkFBUUVpMHNBQXdNQ1lBQUNBb2NDVEJ0QUpRQUJBWVZMQndFRkJRQmZBQUFBalVzQUJnWUVYd0FFQkl0TEFBTURBbUFBQWdLSEFreFpRQkFwS0RReUtDNHBMaWtsSmhRakNBMFpLeE0zTmpZek1oWVhNemN6RlRjVkJ4RVVJeUltSnpVV0ZqTXlOalUxTkRZM0l3WUdJeUltSndjQklnWUhKU1ltRnpVRkZqTXlOalVETVFKelpEUlVIUVVNVmt4TStUcGlLU3BuT2tGSkFnRUVIRkUxV1c4Tk5RRWdPa0lGQVEwTFJWWCs3dzl6U2tVQkN3aUFraWdwUjdVTlJ3MysydWtRRVYwVkZVdEVFZzBxQ3lvbmNXWUpBUWxWVWk1QU9jRUNMNVJSWEFBQkFBTUFBQUl1QXZnQUdnQXJRQ2dhR1JZVUVSQVBEZ2NCQUFzQ0FRRktBQUFBaEVzQUFRR0ZTd01CQWdLREFrd1VGUmtTQkEwWUt4TTNFVE1SRkFZSE56WTJOemN6QnpjVkJ4Y2pKd2NIRlNNMUJ3TlFhUU1CQ3d3Z0RLVjd6dUhFdjMydEVETnBVQUVDRHdIbi9vUVNNUlVDRUNjTnNkc3FSeVQvNndNcnZjc1BBQUFDQUFNQUFBSnlBaVVBRmdBZEFGeEFGUVFCQkFBYkdoWVZFaEVPRFF3TEFRQU1BZ1FDU2t1d0dWQllRQk1GQVFRRUFGOEJBUUFBaFVzREFRSUNnd0pNRzBBWEFBQUFoVXNGQVFRRUFWOEFBUUdOU3dNQkFnS0RBa3haUUEwWUZ4Y2RHQjBURmlRU0JnMFlLeE0zRVRNWE16WTJNeklXRlRjVkJ4RWpFUVVWSXpVSEFTSUdCeVUxTkFOUVZBOEdHbHN6WG1STVRHbi9BR3BRQVV0T1FBTUJBQUVERGdFS1NDb29YV2NOUnczKzVnRUlLOTNMRGdFUldGTXNBWDRBQUFBQi8vd0FBQUdZQWlVQUdBQnJTN0FaVUZoQUV4Z1hGQk1TRVFzRUFRQUtBd0lCU2dvQkFFZ2JRQk1LQVFBQkdCY1VFeElSQ3dRQkFBb0RBZ0pLV1V1d0dWQllRQkVBQWdJQVh3RUJBQUNGU3dBREE0TURUQnRBRlFBQUFJVkxBQUlDQVY4QUFRR05Td0FEQTRNRFRGbTJGeU1rRWdRTkdDc0ROeEV6RnpNMk5qTXlGd2NtSXlJR0JnYzNGUWNWSXpVSEJGZFVEZ1FaVkRjZ0d3c2FIQ2RFTEFQYTJtcFhBUUlRQVFsZ0t6OEZZd2NsUnpJcFJ5amd6QkFBQUFFQUEvLzJBZUlDSlFBckFEWkFNd29CQVFBcktpQVdGUlFUQ3dFQUNnTUJId0VDQXdOS0FBRUJBRjhBQUFDTlN3QURBd0pmQUFJQ2l3Sk1KU3dsSmdRTkdDc1ROeVltTlRRMk16SVdGd2NtSmlNaUZSUVdGemNWQnhZV0ZSUUdJeUltSnpVV0ZqTXlOalUwSmlZbkJ3TnNIaUJ4WFRGWEtTTWpTaVppTlViUFpSMGZjMmc1VVNJalh5MDhOUk0wTWRjQkRSTVZOaWxHU3hRU1VROFZPUjBrR3lWR0VoUTJLRkJTRUJGZEVSc21JQklkSFJNbUFQLy9BRlAvRUFKV0F2MENCZ0YrQUFELy93QTYvL1lEWGdJbUFBWUpVZ0FBLy84QVZBQUFBclFDR3dFUEFkVURCd0lid0FBQUNiRUFBYmdDRzdBekt3QUFBUUF6Ly9ZQ0tnTDlBQ01BSzBBb0V3RUJBaElCQUFFQ1NnRUJBa2dBQWdBQkFBSUJad0FBQUFOZkFBTURpd05NSlNVa0tBUU5HQ3NCRnc0REZSUVdNekkyTlRRbUl5SUdCelUyTmpNeUZoVVVCZ1lqSWlZbU5UUVNBWDhrVVdVNEZVbEtRMGRCUFJNZUN3NG1HbUY0UFc5TFQzTStwZ0w5UUN4dWRHNHNYWEJZVEVsYkJ3UlJCUWQrY2s1eFBVVi9XSjBCQWdBQUFBQUMvL24vRUFJVUFod0FGUUFlQUN4QUtSd01CZ01EQVFGS0FnRUJBWVZMQUFNREFHQUVBUUFBaHdCTUFRQWFHQklSQ0FjQUZRRVZCUTBVS3hjaUpqVTBOamNETXhNV0ZoY3pOalkzRXpNREJnWW5GQll6TWpZM0JnWnZOa0J3WThKemRRb09CQU1HRHdoMWNkd21YR29YRHg4d0lFSlQ4RHczU1Z3UEFlWCt0UnMwR2h3MUdRRksvYnhrWkhrVEYwQlVDakgvL3dBdC94NEI3Z0lsQWlZQVJBQUFBQWNCVUFDZkFBRC8vd0EwL3g0Q0N3SWxBaVlBU0FBQUFBY0JVQUNzQUFELy93QW4veEFBOUFMNEFpWUFUd0FBQUFjTHBnQ01BQUQvL3dCVC94QUNKZ0lsQWlZQVVRQUFBQWNMcGdGRUFBRC8vd0FnL3g0QXp3TG9BaVlBVEFBQUFBWUJVUGdBQUFELy93Qk8veDRDSXdJYkFpWUFXQUFBQUFjQlVBQ3RBQUQvL3dBUUFBQUM5UUw5QUNZQVNRQUFBQWNBU1FGbEFBRC8vd0FRQUFBRGpnTDlBQ1lBU1FBQUFDY0FTUUZsQUFBQUJ3Qk1Bc2tBQVAvL0FCQUFBQU9HQXYwQUpnQkpBQUFBSndCSkFXVUFBQUFIQUU4Q3lRQUEvLzhBRUFBQUFpb0MvUUFtQUVrQUFBQUhBRXdCWlFBQS8vOEFFQUFBQWlJQy9RQW1BRWtBQUFBSEFFOEJaUUFBQUFFQVUvLzJBcWdDL1FBbUFNMUxzQmxRV0VBVUdRa0lBd1VDQndFQkJTTUJCd0VrQVFBSEJFb2JRQlFaQ1FnREJRSUhBUUVGSXdFSEFTUUJBd2NFU2xsTHNCbFFXRUFpQUFJQ0JGOEFCQVNFU3dZQkFRRUZYUUFGQllWTEFBY0hBRjhEQ0FJQUFJc0FUQnRMc0NaUVdFQW1BQUlDQkY4QUJBU0VTd1lCQVFFRlhRQUZCWVZMQUFNRGcwc0FCd2NBWHdnQkFBQ0xBRXdiUUNRQUJBQUNCUVFDWndZQkFRRUZYUUFGQllWTEFBTURnMHNBQndjQVh3Z0JBQUNMQUV4WldVQVhBUUFpSUIwY0d4b1hGUkVRRFFzR0JRQW1BU1lKRFJRckJTSW1KalVSSXpVM05TWW1JeUlHRlJFakVUUTJOak15RmhjVk14VWpFUlFXTXpJM0ZRWUdBa0FzU1N4TFRCQThKVHcyYWpsaVBsQjBHWnViTFNJdUloRTZDaDVLUWdFcU1DWmFGQms4TmYzS0FqaEdWaWszSzRCUi90Z3NLZzFRQ0FzQUFBQUFBUUF4Ly9ZRFNnTDhBRkFCVDB1d0dWQllRQmszSHdJQ0NVQTJOUmNFQlFKQktnUURBUVVyQXdJQUFRUktHMHV3SGxCWVFCdzNId0lDQ1RZWEFnUUNRRFVDQlFSQktnUURBUVVyQXdJQUFRVktHMEFjTng4Q0FnazJGd0lFQWtBMUFnb0VRU29FQXdFRkt3TUNBQUVGU2xsWlM3QVpVRmhBSlFBSkNRTmZBQU1EaEVzS0NBSUZCUUpmQkFFQ0FvMUxCZ0VCQVFCZkJ3c0NBQUNMQUV3YlM3QWVVRmhBTUFBSkNRTmZBQU1EaEVzS0NBSUZCUUpmQUFJQ2pVc0tDQUlGQlFSZEFBUUVoVXNHQVFFQkFGOEhDd0lBQUlzQVRCdExzQ2xRV0VBdEFBa0pBMThBQXdPRVN3QUtDZ0pmQUFJQ2pVc0lBUVVGQkYwQUJBU0ZTd1lCQVFFQVh3Y0xBZ0FBaXdCTUcwQXJBQU1BQ1FJRENXY0FDZ29DWHdBQ0FvMUxDQUVGQlFSZEFBUUVoVXNHQVFFQkFGOEhDd0lBQUlzQVRGbFpXVUFkQVFCRlF6czVORE12TFNnbUl5SWhJQjBiRmhRSUJnQlFBVkFNRFJRckZ5SW1KelVXRmpNeU5qVTBKaVluTGdJMU5EWXpNaGNtTlRRMk16SVdGeFV6RlNNUkZCWXpNalkzRlFZR0l5SW1KalVSSXpVM05TWW1JeUlHRlJRV0Z3Y21KaU1pRlJRV0ZoY2VBaFVVQnQ0NVVTSWpYeTA4TlJRMk5UUklKbkZkSGh3TmFGSkxZaGlhbWlzakZTd1FFVG9kTEVrc1Mwd09MU0F2TUJBWUl5TktKbUlYT1RJeVJ5WnpDaEFSWFJFYkppQVNIUjhVRkNvNkxFWkxCQjRkVEZRMks0QlIvdGdzS2djR1VBZ0xIa3BDQVNvd0psd1RGekFrRkNvVlVROFZPUk1jSEJNVEtqb3NVRklBQWdBQUFBQUNJd0pCQUFjQUVBQXhRQzRNQVFRQUFVb0dBUVFBQWdFRUFtWUFBQUJNU3dVREFnRUJUUUZNQ0FnQUFBZ1FDQkFBQndBSEVSRVJCd2tYS3pFVE14TWpKeU1ITnljbUppY0dCZ2NIMVh2VGNUUFlOdkl4Q0JJR0JoSUhNZ0pCL2IrWW1PMlVGVHNaR1RvWGt3QUFBUC8vQUFBQUFBSWpBeFFDSmdpTkFBQUFCZ3hCQXdBQUFQLy9BQUFBQUFJakF4RUNKZ2lOQUFBQkJnRk5TU1FBQ0xFQ0FiQWtzRE1yLy84QUFBQUFBaU1ESWdJbUNJMEFBQUVHQVVvM0pBQUlzUUlCc0NTd015di8vd0FBQUFBQ0l3TDBBaVlJalFBQUFBWU1QdWtBQUFELy93QUFBQUFDSXdNWEFpWUlqUUFBQUFZTVFPd0FBQUQvL3dBQUFBQUNJd0xTQWlZSWpRQUFBUVlCVEZFa0FBaXhBZ0d3SkxBeksvLy9BQUQvSGdJakFrRUNKZ2lOQUFBQUJ3RlFBVGtBQVAvL0FBQUFBQUlqQTFzQ0pnaU5BQUFCQmdGUGZDUUFDTEVDQXJBa3NETXIvLzhBQUFBQUFpTURxZ0ltQ0kwQUFBQW1ERWIyc0FFSERFRUFFQUNXQUJHeEFnSzQvN0N3TXl1eEJBR3dsckF6S3dBQUFQLy9BQUFBQUFJakF3a0NKZ2lOQUFBQkJnRlJMaVFBQ0xFQ0FiQWtzRE1yQUFMLy9nQUFBcklDUHdBUEFCTUFPRUExQUFRQUJRa0VCV1VBQ1FBQUJna0FaUWdCQXdNQ1hRQUNBa3hMQUFZR0FWMEhBUUVCVFFGTUV4SVJFUkVSRVJFUkVSQUtDUjBySlNNSEl3RWhGU01WTXhVakZUTVZJUkVqQnpNQmJidEJjd0VFQWJEZHpzN2QvcnNyYlppWGx3SS9VNWhUclZRQjZmc0FBUC8vLy80QUFBS3lBeFFDSmdpWUFBQUFCZ3hCYmdBQUFBQURBRWtBQUFIdEFqOEFEd0FYQUNBQVJFQkJCZ0VGQWdGS0J3RUNBQVVFQWdWbEFBTURBRjBHQVFBQVRFc0lBUVFFQVYwQUFRRk5BVXdaR0JFUUFRQWZIUmdnR1NBV0ZCQVhFUmNPREFBUEFROEpDUlFyRXpJV0ZSUUdCeFVXRmhVVUJpTWpFUmN5TmpVMEl5TVZGekkyTlRRbUl5TVYvM1pzT2k0elFYTml6Nzg3TTNaUFh6dzNPVUJaQWo5SVNUUkNDQU1LUEVGUlZRSS83eWtvVFo3L01Td25MN01BQUFBQkFDNy8rQUh1QWtjQUdnQTNRRFFYQVFBREdBa0NBUUFLQVFJQkEwb0VBUUFBQTE4QUF3TlFTd0FCQVFKZkFBSUNVUUpNQVFBVkV3MExCd1VBR2dFYUJRa1VLd0VpQmhVVUZqTXlOamNWQmlNaUppWTFORFkyTXpJV0Z3Y21KZ0ZJVTFwVldDWkdJMEphVzNjN1EzNVlLMVVuSVNCREFmRnhZV051RUE1YUdrcUdXRmFHU3hJVFV3OFQvLzhBTHYvNEFlNERGQUltQ0pzQUFBQUdERUV0QUFBQS8vOEFMdi80QWZJRElnSW1DSnNBQUFFR0FVdGZKQUFJc1FFQnNDU3dNeXYvL3dBdS94QUI3Z0pIQWlZSW13QUFBQWNBZWdET0FBRC8vd0F1Ly9nQjh3TWlBaVlJbXdBQUFRWUJTbUFrQUFpeEFRR3dKTEF6Sy8vL0FDNy8rQUh1QXYwQ0pnaWJBQUFBQnd3L0FMRUFBQUFDQUVrQUFBSWpBajhBQ0FBUUFCOUFIQUFDQWdGZEFBRUJURXNBQXdNQVhRQUFBRTBBVENFa0lTSUVDUmdyQVJRR0l5TVJNeklXQnpRbUl5TVJNeklDSTZPU3BiV01tV3hmWEV0QXhnRW5rNVFDUDQrTVpHTCthd0FBQUFJQURBQUFBaU1DUHdBTUFCZ0FOMEEwQmdFQkJ3RUFCQUVBWlFBRkJRSmRBQUlDVEVzQUJBUURYUWdCQXdOTkEwd0FBQmdYRmhVVUVnOE5BQXdBQ3lFUkVRa0pGeXN6TlNNMU16VXpNaFlWRkFZakp6TXlOVFFtSXlNVk14VWpTVDA5dFl5Wm81STlRTVpmWEV0b2FQWlArbytKazVSVnoyUmlwVThBQUFELy93QkpBQUFDSXdNaUFpWUlvUUFBQVFZQlMwa2tBQWl4QWdHd0pMQXpLLy8vQUF3QUFBSWpBajhDQmdpaUFBQUFBUUJKQUFBQm1BSS9BQXNBS1VBbUFBSUFBd1FDQTJVQUFRRUFYUUFBQUV4TEFBUUVCVjBBQlFWTkJVd1JFUkVSRVJBR0NSb3JFeUVWSXhVekZTTVZNeFVoU1FGUDU5alk1LzZ4QWo5VG1GT3VVd0QvL3dCSkFBQUJuUU1VQWlZSXBRQUFBQVlNUWVNQUFBRC8vd0JKQUFBQm5nTVJBaVlJcFFBQUFRWUJUU2trQUFpeEFRR3dKTEF6Sy8vL0FENEFBQUdwQXlJQ0pnaWxBQUFCQmdGTEZpUUFDTEVCQWJBa3NETXIvLzhBUHdBQUFhb0RJZ0ltQ0tVQUFBRUdBVW9YSkFBSXNRRUJzQ1N3TXl2Ly93QkpBQUFCbUFMMEFpWUlwUUFBQUFZTVBza0FBQUQvL3dCSkFBQUJtQU1NQWlZSXBRQUFBUWNCVGdDUkFDUUFDTEVCQWJBa3NETXJBQUQvL3dBOEFBQUJtQU1YQWlZSXBRQUFBQVlNUU13QUFBRC8vd0JKQUFBQm1BTFNBaVlJcFFBQUFRWUJUREVrQUFpeEFRR3dKTEF6Sy8vL0FFbi9IZ0dZQWo4Q0pnaWxBQUFBQmdGUWVBQUFBQUFCQUVrQUFBR1dBajhBQ1FBalFDQUFBZ0FEQkFJRFpRQUJBUUJkQUFBQVRFc0FCQVJOQkV3UkVSRVJFQVVKR1NzVElSVWpGVE1WSXhValNRRk41dGpZWndJL1U2NVU2Z0FCQUMvLytBSWFBa2NBSEFBN1FEZ01BUUlCRFFFRkFoZ0JBd1FBQVFBREJFb0FCUUFFQXdVRVpRQUNBZ0ZmQUFFQlVFc0FBd01BWHdBQUFGRUFUQkVUSkNNbElnWUpHaXNsQmdZaklpWTFORFkyTXpJWEJ5WWpJZ1lWRkJZek1qWTNOU00xTXdJYUxHazhoWlZGaDJObVRpTkZUR0JqWGwwYU14T0c2aHNSRXBhUlY0WkxKRklnZFYxbWJBZ0dqRk1BQUFELy93QXYvL2dDR2dNUkFpWUlzQUFBQVFZQlRYd2tBQWl4QVFHd0pMQXpLLy8vQUMvLytBSWFBeUlDSmdpd0FBQUJCZ0ZLYWlRQUNMRUJBYkFrc0RNci8vOEFMLzhqQWhvQ1J3SW1DTEFBQUFBR0RJbFZBQUFBLy84QUwvLzRBaG9DL1FJbUNMQUFBQUFIREQ4QXV3QUFBQUVBU1FBQUFob0NQd0FMQUNkQUpBQUVBQUVBQkFGbEJnVUNBd05NU3dJQkFBQk5BRXdBQUFBTEFBc1JFUkVSRVFjSkdTc0JFU01SSVJFakVUTVZJVFVDR21mKy9taG9BUUlDUC8zQkFRRC9BQUkvNmVrQUFBQUNBQWNBQUFKYUFqOEFFd0FYQUR0QU9Ba0hBZ1VLQkFJQUN3VUFaUXdCQ3dBQ0FRc0NaUWdCQmdaTVN3TUJBUUZOQVV3VUZCUVhGQmNXRlJNU0VSRVJFUkVSRVJFUURRa2RLd0VqRVNNMUl4VWpFU00xTXpVekZUTTFNeFV6QnpVakZRSmFRV3IrYVVGQmFmNXFRYXIvQWFiK1d2bjVBYVpLVDA5UFQ2VmJXd0FBQVAvL0FFa0FBQUlhQXlJQ0pnaTFBQUFCQmdGS1ZTUUFDTEVCQWJBa3NETXJBQUVBSWdBQUFSSUNQd0FMQUNaQUl3b0pDQWNFQXdJQkNBRUFBVW9BQUFCTVN3SUJBUUZOQVV3QUFBQUxBQXNWQXdrVkt6TTFOeEVuTlRNVkJ4RVhGU0pFUlBCRVJEc1VBYUVUUER3VC9sOFVPd0FBLy84QUlnQUFBVVVERkFJbUNMZ0FBQUFHREVHTEFBQUEvLy8vK1FBQUFVWURFUUltQ0xnQUFBRUdBVTNSSkFBSXNRRUJzQ1N3TXl2Ly8vL25BQUFCVWdNaUFpWUl1QUFBQVFZQlNyOGtBQWl4QVFHd0pMQXpLLy8vQUFRQUFBRXdBdlFDSmdpNEFBQUFCd3crLzNFQUFQLy9BQ0lBQUFFU0F3d0NKZ2k0QUFBQkJnRk9PU1FBQ0xFQkFiQWtzRE1yLy8vLzR3QUFBUklERndJbUNMZ0FBQUFIREVEL2N3QUEvLzhBSXY5ZEFlWUNQd0FtQ0xnQUFBQUhDTU1CTkFBQS8vOEFBUUFBQVRRQzBnSW1DTGdBQUFFR0FVelpKQUFJc1FFQnNDU3dNeXYvL3dBaS94NEJFZ0kvQWlZSXVBQUFBQVlCVUJzQUFBRC8vLy9kQUFBQlZ3TUpBaVlJdUFBQUFRWUJVYlVrQUFpeEFRR3dKTEF6S3dBQi83ei9YUUN5QWo4QURnQW9RQ1VEQVFFQ0FnRUFBUUpLQUFFREFRQUJBR1FBQWdKTUFrd0JBQXNLQndVQURnRU9CQWtVS3hjaUp6VVdGak15TmpVUk14RVVCZ01zR3c4ZER5c3BaMTJqQ1ZFREJURTJBaW45MzJkYS8vLy92UDlkQVRZRElnSW1DTU1BQUFFR0FVcWpKQUFJc1FFQnNDU3dNeXNBQVFCSkFBQUNEQUkvQUE0QUlFQWREQXNJQWdRQ0FBRktBUUVBQUV4TEF3RUNBazBDVEJNU0ZSQUVDUmdyRXpNUk5qWTNOek1IRXlNREJ4VWpTV2dNSFE2dWRkUFVkNmM5YUFJLy91OFJJeEhNKy82OEFRTXUxUUFBQVAvL0FFbi9Jd0lNQWo4Q0pnakZBQUFBQmd5SklBQUFBQUFCQUVrQUFBR3FBajhBQlFBZlFCd0RBUUlDVEVzQUFBQUJYZ0FCQVUwQlRBQUFBQVVBQlJFUkJBa1dLeE1STXhVaEViSDUvcDhDUC80V1ZRSS9BQUQvL3dCSkFBQUJxZ01VQWlZSXh3QUFBQWNNUWY5ekFBRC8vd0JKQUFBQnNRSS9BaVlJeHdBQUFRY0NKd0J5LzBZQUNiRUJBYmovUnJBekt3RC8vd0JKL3lNQnFnSS9BaVlJeHdBQUFBWU1pUUFBQUFELy93QkpBQUFCcWdJL0FpWUl4d0FBQVFjQlRnRDEvcHNBQ2JFQkFiaittN0F6S3dBQUFmL3VBQUFCcWdJL0FBMEFMRUFwREFzS0NRWUZCQU1JQWdFQlNnQUJBVXhMQXdFQ0FnQmVBQUFBVFFCTUFBQUFEUUFORlJFRUNSWXJKUlVoTlFjbk54RXpGVGNYQnhVQnF2NmVMeXRhYVhBdG5WZFgzQjlHT0FFRXprbEdZcnNBQVFCSkFBQUNxZ0kvQUJjQUpVQWlGUUVBQXdGS0JRUUNBd05NU3dJQkFnQUFUUUJNQUFBQUZ3QVhFUmNYRVFZSkdDc0JFU01STkRZMk55TURJd01qSGdJVkVTTVJNeE16RXdLcVlRRUNBUU9sWGFRREFRSUNYWTZoQXFJQ1AvM0JBVXdXTnk4TS9pd0IxUXN4T1JqK3VBSS8vam9CeGdBQUFRQkpBQUFDT1FJL0FCRUFKRUFoREFNQ0FBSUJTZ1FEQWdJQ1RFc0JBUUFBVFFCTUFBQUFFUUFSRVJZUkJRa1hLd0VSSXdFakZoWVZFU01STXdFekppWTFFUUk1Z2Y3c0JBSUVYWUlCRXdNQ0F3SS8vY0VCeFJsV0l2N01Bai8rUGhWUkpRRTNBUC8vQUVrQUFBSTVBeFFDSmdqT0FBQUFCZ3hCTWdBQUFQLy9BRWtBQUFJNUF5SUNKZ2pPQUFBQkJnRkxiQ1FBQ0xFQkFiQWtzRE1yLy84QVNmOGpBamtDUHdJbUNNNEFBQUFHRElsS0FBQUFBQUVBU2Y5Y0Fqa0NQd0FjQURSQU1SY09BZ0lERFFjQ0FRSUdBUUFCQTBvQUFRQUFBUUJqQlFRQ0F3Tk1Td0FDQWswQ1RBQUFBQndBSEJFWUpDTUdDUmdyQVJFVUJpTWlKelVXRmpNeU5qY0JJeFlXRlJFakVUTUJNeVltTlJFQ09WNVJNQm9QSGhBcEtBVCswZ1FDQkYyQUFSVURBZ01DUC8zUlhWY0tUd01GSmlrQnlSbFdJdjdNQWovK1dSWlJKUUViQVAvL0FFa0FBQUk1QXdrQ0pnak9BQUFCQmdGUlpDUUFDTEVCQWJBa3NETXJBQUlBTVAvNEFsUUNTQUFQQUJzQUgwQWNBQU1EQVY4QUFRRlFTd0FDQWdCZkFBQUFVUUJNSkNVbUl3UUpHQ3NCRkFZR0l5SW1KalUwTmpZek1oWVdCUlFXTXpJMk5UUW1JeUlHQWxRN2VWNWRlVHc4ZWwxZGVUditTVTlXVjAxUVZGWlBBU0JZaGtwS2hsbFloVXBLaGxoZmNuRmdZMjV4Ly84QU1QLzRBbFFERkFJbUNOUUFBQUFHREVFeUFBQUEvLzhBTVAvNEFsUURGUUltQ05RQUFBRUdBVTE2S0FBSXNRSUJzQ2l3TXl2Ly93QXcvL2dDVkFNbUFpWUkxQUFBQVFZQlNtZ29BQWl4QWdHd0tMQXpLLy8vQURELytBSlVBdlFDSmdqVUFBQUFCZ3crR0FBQUFQLy9BREQvK0FKVUF4Y0NKZ2pVQUFBQUJneEFHZ0FBQVAvL0FERC8rQUpVQXlZQ0pnalVBQUFCQndGU0FKc0FLQUFJc1FJQ3NDaXdNeXNBQVAvL0FERC8rQUpVQXRZQ0pnalVBQUFCQndGTUFJTUFLQUFJc1FJQnNDaXdNeXNBQUFBREFERC81QUpVQWwwQUdRQWlBQ3NBUEVBNUZ4WVVBd0lCSnlZZUhRUURBZ29KQndNQUF3TktGUUVCU0FnQkFFY0FBZ0lCWHdBQkFWQkxBQU1EQUY4QUFBQlJBRXduTFNzakJBa1lLd0VVQmdZaklpWW5CeWMzSmlZMU5EWTJNeklXRnpjWEJ4WVdCUlFXRnhNbUl5SUdCVFFtSndNV016STJBbFE3ZVY0cFJSMGlPQ01vS0R4NlhTbEhIU1UzSmlnbS9ra1BFZUFsTlZWUkFVc1JEOTBnTjFoT0FTQlloa29RRHpNbU1paDBTVmlGU2hFUE5TUTNKM05JS2tVYkFVTVljbDhyUWhuK3Z4ZHhBUC8vQURELzVBSlVBeFVDSmdqY0FBQUJCZ3hCTkFFQUNMRURBYkFCc0RNci8vOEFNUC80QWxRRERRSW1DTlFBQUFFR0FWRmZLQUFJc1FJQnNDaXdNeXNBQWdBdy8va0MyUUpIQUJnQUpBRUhRQW9qQVFNQ0lnRUZCQUpLUzdBZVVGaEFJd0FEQUFRRkF3UmxDd2dDQWdJQVh3RUtBZ0FBVUVzSkFRVUZCbDhIQVFZR1RRWk1HMHV3SjFCWVFDNEFBd0FFQlFNRVpRc0lBZ0lDQUY4S0FRQUFVRXNMQ0FJQ0FnRmRBQUVCVEVzSkFRVUZCbDhIQVFZR1RRWk1HMHV3TGxCWVFEZ0FBd0FFQlFNRVpRc0lBZ0lDQUY4S0FRQUFVRXNMQ0FJQ0FnRmRBQUVCVEVzSkFRVUZCbDBBQmdaTlN3a0JCUVVIWHdBSEIxRUhUQnRBTXdBREFBUUZBd1JsQ3dFSUNBQmZDZ0VBQUZCTEFBSUNBVjBBQVFGTVN3QUZCUVpkQUFZR1RVc0FDUWtIWHdBSEIxRUhURmxaV1VBZkdoa0JBQ0FlR1NRYUpCSVBEZzBNQ3dvSkNBY0dCUVFEQUJnQkdBd0pGQ3NCTWhZWElSVWpGVE1WSXhVekZTRUdCaU1pSmlZMU5EWTJGeUlHRlJRV016STJOeEVtQVR3VU1CUUJSZVRWMWVUK3VCRXdGVmwyUER0M1hGSk9UbEVaS1E0Y0FrY0VCRk9YVksxVUJBTktoVmxYaFVwV2IySmlid1lIQVljT0FBQUFBQUlBU1FBQUFkRUNQd0FLQUJJQUxVQXFBQU1BQVFJREFXY0FCQVFBWFFVQkFBQk1Td0FDQWswQ1RBRUFFaEFOQ3drSUJ3VUFDZ0VLQmdrVUt4TXlGaFVVQmlNakZTTVJFek15TmpVMEl5UDRiV3h0YzBCb2FEWTdSWEpFQWo5YVZWSnExQUkvL3Vrc09HQUFBQUlBU1FBQUFkTUNQd0FNQUJVQUowQWtBQU1BQlFRREJXY0FCQUFBQVFRQVp3QUNBa3hMQUFFQlRRRk1KQ0loRVJFaUJna2FLd0VVQmlNakZTTVJNeFV6TWhZRk16STJOVFFtSXlNQjAyeHpRbWxwU1cxci90ODJQRVU0UEVNQktGSnBiUUkvWjF5OExEZ3dNQUFBQUFBQ0FERC9kd0pVQWtnQUVnQWVBQ3RBS0FNQkFRTUJTZ0FBQVFDRUFBUUVBbDhBQWdKUVN3QURBd0ZmQUFFQlVRRk1KQ1VtSVJRRkNSa3JBUlFHQnhjakp5TWlKaVkxTkRZMk16SVdGZ1VVRmpNeU5qVTBKaU1pQmdKVVMxR0xpV3NOWFhrOFBIcGRYWGs3L2twT1ZsaE5VRlJXVHdFZ1lwSWZsb0ZLaGxsWWhVcEtobGhmYzNGaFkyNXlBQUlBU1FBQUFnY0NQd0FMQUJRQU5rQXpCQUVDQkFGS0FBUUFBZ0VFQW1VQUJRVUFYUVlCQUFCTVN3TUJBUUZOQVV3QkFCUVNEZ3dLQ1FnSEJnVUFDd0VMQndrVUt4TXlGUlFIRnlNbkl4VWpFUk16TWpZMU5DWWpJKy9rY0tSMWlWaG9hRUk0UGo4OVBBSS9wbkFyL3VUa0FqLys5aTB4TVNrQUFQLy9BRWtBQUFJSEF4UUNKZ2pqQUFBQUJneEI5d0FBQVAvL0FFa0FBQUlIQXlZQ0pnampBQUFCQmdGTExDZ0FDTEVDQWJBb3NETXIvLzhBU2Y4akFnY0NQd0ltQ09NQUFBQUdESWtiQUFBQUFBRUFLUC80QWFrQ1J3QXBBQzVBS3hzQkF3SWNCd0lCQXdZQkFBRURTZ0FEQXdKZkFBSUNVRXNBQVFFQVh3QUFBRkVBVENVc0pTSUVDUmdySlJRR0l5SW1KelVXRmpNeU5qVTBKaWN1QWpVME5qWXpNaFlYQnlZbUl5SUdGUlFXRmhjZUFnR3BiMmMzVVNNbldpd3hPMEk5TEVNbE5GdzZNRlFtSVNWR0lTdzBIRGtwTFVNbW9VcGZEdzllRXhVcEpDY25HUkVxUFRBelJ5VVZFRkFRRWlZaUdpQWFFUklxUEFBQUFQLy9BQ2ovK0FHcEF4UUNKZ2puQUFBQUJneEIxZ0FBQVAvL0FDai8rQUdwQXlJQ0pnam5BQUFCQmdGTEZpUUFDTEVCQWJBa3NETXIvLzhBS1A4UUFha0NSd0ltQ09jQUFBQUdBSHA2QUFBQS8vOEFLUC80QWFvRElnSW1DT2NBQUFFR0FVb1hKQUFJc1FFQnNDU3dNeXYvL3dBby95TUJxUUpIQWlZSTV3QUFBQVlNaWV3QUFBQUFBUUJELy9rQ053SklBQ1FBZ2t1d0hsQllRQkFrRlJRREFnTUpBUUVDQ0FFQUFRTktHMEFRSkJVVUF3SURDUUVCQWdnQkJBRURTbGxMc0I1UVdFQWVBQUlEQVFNQ0FYNEFBd01GWHdBRkJWQkxBQUVCQUY4RUFRQUFVUUJNRzBBaUFBSURBUU1DQVg0QUF3TUZYd0FGQlZCTEFBUUVUVXNBQVFFQVh3QUFBRkVBVEZsQUNTTVRKQ1FrSlFZSkdpc0JGaFlWRkFZaklpYzFGaFl6TWpZMU5DWWpJelUzSmlZaklnWVZFU01STkRZek1oWVhBWlZWVFcxblNqZ2FQU0l6UUR0UEhtVU1NaVk2UDJwMmExeG9FZ0ZCQjFCSFNXRVJXUXNLTENrc0wwTjFIQ0ZJUi82ZEFXZHFkazlKQUFBQUFRQU5BQUFCd0FJL0FBY0FJVUFlQWdFQUFBTmRCQUVEQTB4TEFBRUJUUUZNQUFBQUJ3QUhFUkVSQlFrWEt3RVZJeEVqRVNNMUFjQ21aNllDUDFmK0dBSG9Wd0FCQUEwQUFBSEFBajhBRHdBdlFDd0ZBUUVFQVFJREFRSmxCZ0VBQUFkZENBRUhCMHhMQUFNRFRRTk1BQUFBRHdBUEVSRVJFUkVSRVFrSkd5c0JGU01WTXhVakZTTTFJelV6TlNNMUFjQ21iVzFuYlcybUFqOVhzazdvNkU2eVYvLy9BQTBBQUFIQUF5SUNKZ2p1QUFBQkJnRkxDU1FBQ0xFQkFiQWtzRE1yLy84QURmOFFBY0FDUHdJbUNPNEFBQUFHQUhwL0FBQUEvLzhBRGY4akFjQUNQd0ltQ080QUFBQUdESW54QUFBQUFBRUFSUC80QWhzQ1B3QVBBQ0ZBSGdRREFnRUJURXNBQWdJQVh3QUFBRkVBVEFBQUFBOEFEeUlUSXdVSkZ5c0JFUlFHSXlJbU5SRXpFUlF6TWpVUkFodDZkSEY0YVlTQ0FqLytsbVozZEdnQmEvNmRqbzBCWlAvL0FFVC8rQUliQXhRQ0pnanpBQUFBQmd4QklRQUFBUC8vQUVULytBSWJBeEVDSmdqekFBQUJCZ0ZOWnlRQUNMRUJBYkFrc0RNci8vOEFSUC80QWhzRElnSW1DUE1BQUFFR0FVcFZKQUFJc1FFQnNDU3dNeXYvL3dCRS8vZ0NHd0wwQWlZSTh3QUFBQVlNUGdjQUFBRC8vd0JFLy9nQ0d3TVhBaVlJOHdBQUFBWU1RQW9BQUFELy93QkUvL2dDTFFNaUFpWUk4d0FBQVFjQlVnQ0hBQ1FBQ0xFQkFyQWtzRE1yQUFELy93QkUvL2dDR3dMU0FpWUk4d0FBQVFZQlRHOGtBQWl4QVFHd0pMQXpLd0FCQUVUL0hnSWJBajhBSXdBeVFDOFFBUUlFQmdFQUFnY0JBUUFEU2dBQUFBRUFBV01GQVFNRFRFc0FCQVFDWHdBQ0FsRUNUQklpRXlZbElnWUpHaXNGRkJZek1qWTNGUVlHSXlJbU5UUTJOd1lqSWlZMUVUTVJGRE15TlJFekVSUUhCZ1lCZWhnVEVSa0pEeDhWTmpZdEhDQWxjWGhwaElKb1JETXFjeFlWQlFKQkJBWTFMaVJDRndaMGFBRnIvcDJPalFGay9wWnVPajlGQVAvL0FFVC8rQUliQTFzQ0pnanpBQUFCQndGUEFKa0FKQUFJc1FFQ3NDU3dNeXNBQVAvL0FFVC8rQUliQXdrQ0pnanpBQUFCQmdGUlN5UUFDTEVCQWJBa3NETXJBQUVBQUFBQUFnd0NQd0FNQUNGQUhnWUJBZ0FCU2dFQkFBQk1Td01CQWdKTkFrd0FBQUFNQUF3WUVRUUpGaXN6QXpNVEZoWVhOalkzRXpNRHpNeHhkZ29QQmdRVENIWnh6UUkvL3BJZk5oWVhPUm9CYi8zQkFBQUJBQTRBQUFNTEFqOEFId0FuUUNRWUR3UURBQUVCU2dNQ0FnRUJURXNGQkFJQUFFMEFUQUFBQUI4QUh4a1lFUmdHQ1JncklRTW1KaWNHQmdjREl3TXpFeFlXRnpZMk54TXpFeFlXRno0Q054TXpBd0grV2djUEF3TU9CMXAwbDJWU0NCTUVCUkVLVm1OWENCTUZBZ29MQkZkbG1RRlVHa2NZR1VVWi9xb0NQLzY1SUZZZEgxRWtBVWIrdUI5Vkh4SXdMZzRCWGYzQi8vOEFEZ0FBQXdzREZBSW1DUDhBQUFBR0RFRjlBQUFBLy84QURnQUFBd3NESWdJbUNQOEFBQUVIQVVvQXJnQWtBQWl4QVFHd0pMQXpLd0FBLy84QURnQUFBd3NDOUFJbUNQOEFBQUFHREQ1akFBQUEvLzhBRGdBQUF3c0RGd0ltQ1A4QUFBQUdERUJtQUFBQUFBRUFBUUFBQWdrQ1B3QUxBQjlBSEFrR0F3TUFBUUZLQWdFQkFVeExBd0VBQUUwQVRCSVNFaEVFQ1JnckpRY2pFd016RnpjekF4TWpBUVNRYzhPMGNvT0RjN2ZGZDkvZkFTZ0JGOVRVL3VYKzNBQUFBQUVBQUFBQUFlMENQd0FJQUNOQUlBY0VBUU1BQVFGS0F3SUNBUUZNU3dBQUFFMEFUQUFBQUFnQUNCSVNCQWtXS3dFREZTTTFBek1URXdIdHdtbkNjWWFHQWovK29OL2JBV1QrL0FFRUFBRC8vd0FBQUFBQjdRTVVBaVlKQlFBQUFBWU1RZWNBQUFELy93QUFBQUFCN1FNaUFpWUpCUUFBQVFZQlNoc2tBQWl4QVFHd0pMQXpLLy8vQUFBQUFBSHRBdlFDSmdrRkFBQUFCZ3crelFBQUFQLy9BQUFBQUFIdEF4Y0NKZ2tGQUFBQUJneEEwQUFBQUFBQkFCc0FBQUhMQWo4QUNRQXZRQ3dHQVFBQkFRRURBZ0pLQUFBQUFWMEFBUUZNU3dBQ0FnTmRCQUVEQTAwRFRBQUFBQWtBQ1JJUkVnVUpGeXN6TlFFaE5TRVZBU0VWR3dFbi91TUJudjdhQVM1QkFhbFZRdjVZVlFBQS8vOEFHd0FBQWNzREZBSW1DUW9BQUFBR0RFSGpBQUFBLy84QUd3QUFBY3NESWdJbUNRb0FBQUVHQVVzWkpBQUlzUUVCc0NTd015di8vd0FiQUFBQnl3TU1BaVlKQ2dBQUFRY0JUZ0NVQUNRQUNMRUJBYkFrc0RNckFBRC8vd0F4QVI4QWdBTGRBVWNBVEFBQUFSOHBtaVptQUFteEFBSzRBUit3TXlzQUFBQUFBUUJCQVB3QkJnSEdBQXNBR0VBVkFBQUJBUUJYQUFBQUFWOEFBUUFCVHlRaUFnMFdLeE0wTmpNeUZoVVVCaU1pSmtFM0xDbzRPQ29zTndGaE5UQXdOVFV3TVAvL0FESUE2Z0w4QWY4Qmh3QXNBRElDSlFBQXdBQkFBQUFBQUFteEFBRzRBaVd3TXlzQUFBRC8vd0FmQUFBQnNRTEtBRWNBS1FJUUFBREFBRUFBQUFELy93QXhBQUFDQlFMS0FFY0FNd0prQUFEQUFFQUFBQUQvL3dCZkFBQUROd0xLQVE4QU1BT1dBc3JBQUFBSnNRQUJ1QUxLc0RNckFBQUJBQ1lBQUFFN0E2RUFDd0FnUUIwTENna0lCUVFEQWdnQUFRRktBQUVBQVlNQUFBQ0RBRXdWRUFJTkZpc2hJVFUzRVNjMUlSVUhFUmNCTy83clZWVUJGVlJVUGhrQzhobytQaHI5RGhrQUFBRUFDd0FBQkdjQ3lnQXNBQ3BBSnlnZUVRWUVBd0FCU2dJQkFnQUFna3NHQlFRREF3T0RBMHdBQUFBc0FDd2FFUm9aRVFjTkdTc3pFek1URmhZWFBnSTNFek1USGdJWFBnSTNFek1ESXdNdUFpY09BZ2NESXdNbUppY0dCZ2NEQzd0N2FRc1dCZ01NRUFsdmFYa0dEZ3dEQXdvTkJYQnJ2SFY2QlEwTUFnSUtEQVI2ZFdRTUZ3VUdGUXRwQXNyK1hDeGtKaGhCUlI0Qm52NUdGam82RmhRNU94UUJ2djAyQWNJU056VVJFVFEwRWY0NUFaNHdhQ1FtWkN6K1hBQUFBQUgvNnY4cEFvY0N5Z0FYQURKQUx4SUJCZ01SQVFVR0Frb0FBUUFFQXdFRVpRQUdBQVVHQldNQ0FRQUFKa3NBQXdNbkEwd2xJeEVSRVJFUkJ3Y2JLeGNSTXhFaEVUTVJJeEVoRVJRR0l5SW1KelVXRmpNeU5sdHNBVlJzYlA2c1VVVVhKUXNLSFJBYkh6MERCLzdYQVNuOU5nRkgvbjFRU3drRVZRTUhJZ0FBQWdBRy96NEZsd0xLQUIwQUpRQlBRRXdMQ0FVREJRQUJTZ0FBQUFVR0FBVmxDUUVIQmdkUkFBd01BVjBPQ3dJREFRRW1TdzBLQWdZR0ExMElCQUlEQXljRFRBQUFKU1FmSGdBZEFCMFpHQmNXRVJFUkVSSVNFaEVSRHdjZEt3RVJJUkV6RVFFekFRRWpBUkVqRVNFVk14RWpOU0VWSXhFelBnSTNGeU1PQXdjaEFsY0JKV3dCS25mKzJRRTFmLzdRYlA3YlhHaitJbWMzTFV3MUNmaWRCUjBzTlIwQlBRTEsvczRCTXY2bUFWcitwdjZRQVdyK2xnRkU1djdnd3NJQklGREw0SEZlT1ltUGh6WUFBd0FHL3pzQ3RRTEtBQmdBSUFBbkFFMUFTaHdOQWdjSUl3VUNDZ2NDU2dBSEFBb0FCd3BuQ3dZQ0JBQUVVZ0FJQ0FGZEFnRUJBU1pMQ1FNQ0FBQUZYZ0FGQlNjRlRBQUFKU1FpSVI0ZEdoa0FHQUFZRVJFUkZoY1JEQWNhS3hjUk16WTJOeVltTlJFekVSUVhOalkzSVJFekVTTTFJUlVUTmpZM05TTUdCZ01oTlFZSEJnWUdiQlVtRVVaS1pVMGNKQVVCUFZOcC9pTFJNbEV6ZmdVZGRnRVdjV0VQSXNVQklTSlNMQTVZU2dFZS92ZFZGVnZBV1AyUy90L0Z4UUlTQWhNUytrT1Yvc2JIS2dRcVR3QUFBQUVBQS84N0Fzd0N5Z0FmQUtKTHNCTlFXRUFLRWdFRUFoRUJBUVFDU2h0QUNoSUJCQVlSQVFFRUFrcFpTN0FUVUZoQUhRQUFCQUJSQUFJQ0JWMEFCUVVtU3djR0FnUUVBVjhEQVFFQkp3Rk1HMHV3RlZCWVFCNEhBUVlBQUFZQVlRQUNBZ1ZkQUFVRkprc0FCQVFCWHdNQkFRRW5BVXdiUUNJSEFRWUFBQVlBWVFBQ0FnVmRBQVVGSmtzQUFRRW5Td0FFQkFOZkFBTURMZ05NV1ZsQUR3QUFBQjhBSHhjbEp4RVJFUWdIR2lzbEVTTTFJeEVqRGdJSERnSWpJaVluTlJZV016STJOamMrQWpjaEVRTE1hR0RUQ1JVVkN3MG9RallTSkEwTUd3OGJJQlFKQnhjYkRRR1pXLzdneFFKdFJwK1NORUpjTHdjRldRUUhLa1lxSlpEQWJQMlJBQUFBQUFFQUgvOG5BaTBDeWdBaUFJZExzQ2RRV0VBU0ZBRURCQThCQWdVQkFRWUFBMG9BQVFaSEcwQVNGQUVEQkE4QkFnVUJBUVlCQTBvQUFRWkhXVXV3SjFCWVFCMEJBUUFBQmdBR1lRQURBd1JkQUFRRUprc0FCUVVDWFFBQ0FpY0NUQnRBSXdBQUFnRUJBSEFBQVFBR0FRWmlBQU1EQkYwQUJBUW1Td0FGQlFKZEFBSUNKd0pNV1VBS1ZTSVJFaVFoSXdjSEd5c1hOVFkyTXpJV016STJOVFFtSXlFMUFTRTFJUlVCTXpJV0ZoVVVCaU1pSmlNaUJrZ0tPallmUkRvNUxEUkcvdFVCZHY2WEFlNytpTEJVWHloY1dUdGpIUjlJMlZRSER3WWhHUjRkU0FJbVhFajkyaVpFTFQxUkJRc0FBQUVBSC84bkFpMEN5Z0FxQUtGTHNDZFFXRUFTR0FFRkJnOEJBZ2tCQVFvQUEwb0FBUXBIRzBBU0dBRUZCZzhCQWdrQkFRb0JBMG9BQVFwSFdVdXdKMUJZUUNjSEFRUUlBUU1KQkFObEFRRUFBQW9BQ21FQUJRVUdYUUFHQmlaTEFBa0pBbDBBQWdJbkFrd2JRQzBBQUFJQkFRQndCd0VFQ0FFRENRUURaUUFCQUFvQkNtSUFCUVVHWFFBR0JpWkxBQWtKQWwwQUFnSW5Ba3haUUJBcEpCOGRFUklSRVJFU0pDRWpDd2NkS3hjMU5qWXpNaFl6TWpZMU5DWWpJVFUzSXpVek55RTFJUlVITXhVakJ6TXlGaFlWRkFZaklpWWpJZ1pJQ2pvMkgwUTZPU3cwUnY3Vm9INjhtUDZYQWU2bmdMMlVzRlJmS0Z4Wk8yTWRIMGpaVkFjUEJpRVpIaDFJN0ZyZ1hFajBXdGdtUkMwOVVRVUxBUC8vQUN2LzlnSHlBdFFBUndBMkFpUUFBTUFBUUFBQUFBQUJBQ2ovOWdHRUFzb0FFZ0FuUUNRTUJnVUNBUVVCQUEwQkFnRUNTZ0FBQUNaTEFBRUJBbUFBQWdJdUFrd2xKQk1EQnhjck54RW5OU0VWQnhFVU16STJOeFVHQmlNaUpucFNBUTlSVGhVbkZCRTVIRXhZb1FIUEd6OC9HLzR6VmdnR1VnZ0xUQUFBQUFFQVdRQUFBb3dDeWdBYkFEbEFOaG9KQWdVREFVb0FCUU1FQXdVRWZnSUJBQWdIQWdNRkFBTm1BQUVCSmtzR0FRUUVKd1JNQUFBQUd3QWJFeUlWRVJFUkVRa0hHeXNUTlRNMU14VXpGU01WRmhZVkZTTTFOQ01pQmhVVkl6VTBOamMxbUtac3BLUndjbXl1VlZoc2RtOENGbHBhV2xwYkRvMXB0Nm02V1Y2c3QyNkpEbG9BQUFBQ0FEei85Z0xTQXNvQUVRQWdBQzFBS2g0YkR3TUVCQUFCU2dBRUFBTUFCQU4rQWdFQUFDWkxBQU1EQVY4QUFRRXVBVXdXSXhZbUVRVUhHU3NCRXpNREZoWVZGQVlqSWlZMU5EWTNBek1ERkJZek1qWTFOQ1luRlNNMUJnWUJpNjUwdTNGdnBLZW5wSEZ5dVhZdGFIRnhaMDlSYkZWUUFia0JFZjduRTNKVVpINStaRlJ6RWdFWi9oRStTa2svT0VRSWhJVUpSZ0FBQUFFQVBQLzJBOWdDMUFBNEFGTkFVQ2dMQWdJQkp3d0NCQUliR0FJREJEWUJBQU1FU2dBRUFnTUNCQU4rQmdFQ0FnRmZCd0VCQVMxTEJRRURBd0JmQ0FrQ0FBQXVBRXdCQURReUxDb2xJeDhkR2hrV0ZCQU9DUWNBT0FFNENnY1VLd1VpSmlZMU5EWTJNeklXRndjbUppTWlCaFVVRmpNeU5qYzFNeFVXRmpNeU5qVTBKaU1pQmdjbk5qWXpNaFlXRlJRR0JpTWlKaWNHQmdGYVlIOC9QM1ZUSjA0ZUtCVXpIVXRWWVdJY05CZHNGelFmWVdKVlRCMHpGU2NkVHlaVGRUOC9mbUEzVmlRa1ZncGhxMjVzb0ZnYUZrNFBGbzEvZzVjV0U5RFFGQldYZzMrTkZnOU9GaHBZb0d4dXEyRWhJQ0FoQUFBQy8rSUFBQUowQXRRQUZnQWZBRE5BTUFjQkFBRUdBUUlBQWtvQUFnQUZCQUlGWlFBQUFBRmZBQUVCTFVzQUJBUURYUUFEQXljRFRDUWhKQ01sSWdZSEdpc1ROQ1lqSWdZSEp6WTJNeklXRlJVek1oWVZGQVlqSXpjek1qWTFOQ1lqSTVvaUxCWW5FaHNXUENKV1dsNkxoWVNKeld4YVVGVmRVMDhDR1M0MkNRVlRDQXBSWm5kdVlXZHdXanBEUnk4QUFBQUFBd0FDQUFBRFJ3TEtBQXdBRUFBWkFEeEFPUUFDQUFjR0FnZGxBQUFBQVYwRUFRRUJKa3NBQmdZRFhRa0ZDQU1EQXljRFRBME5BQUFaRnhNUkRSQU5FQThPQUF3QUN5RVJFUW9IRnlzekVTTTFJUkV6TWhZVkZBWWpJUkV6RVNVek1qWTFOQ1lqSTYrdEFSbFppb1NFaUFGbGJQM1VWazlVV2xKTkFtNWMvdHh1WVdkd0FzcjlObG82UTBjdkFBQUFBZ0JmQUFBRExRTEtBQllBSHdBOVFEb0RBUUVIQVFRRkFRUmxBQVVBQ2drRkNtVUNBUUFBSmtzQUNRa0dYZ3NJQWdZR0p3Wk1BQUFmSFJrWEFCWUFGaEVrSVJFUkVSRVJEQWNjS3pNUk14VXpOVE1WTXhVakZUTXlGaFVVQmlNakVTTVJOek15TmpVMEppTWpYMnlQYk9qb1dZcUVnNG5Iai90VlQxUlpVazBDeWxwYVdsbHhibUZuY0FJWC9lbGFPa05ITHdBQUFBQUNBRHovOWdPOUF0VUFGZ0FpQUl0THNCVlFXRUFmQUFFQUJBY0JCR1VBQmdZQVh3SUJBQUF0U3dBSEJ3TmZCUUVEQXljRFRCdExzQmxRV0VBakFBRUFCQWNCQkdVQUFnSW1Td0FHQmdCZkFBQUFMVXNBQndjRFh3VUJBd01uQTB3YlFDY0FBUUFFQndFRVpRQUNBaVpMQUFZR0FGOEFBQUF0U3dBREF5ZExBQWNIQlY4QUJRVXVCVXhaV1VBTEpDVWpFUkVSRXlNSUJ4d3JFelEyTmpNeUZoWVhNeEV6RVNNUkl3NENJeUltSmlVMEppTWlCaFVVRmpNeU5qeEVpMmxlaFVzSnBteHNwQVZIaUdScGkwVUNBR0ZvWjJCZmFXaGdBV1p0cFYxTWlsMEJLUDAyQVVaa2wxVmRwVzU4bHBaOGZwV1dBQUFBQUFJQVh3QUFBK3dDelFBUEFCb0FORUF4RmdFQkFBRktDQUVCQmdFRUF3RUVaZ0lCQUFBbVN3a0hCUU1EQXljRFRBQUFFUkFBRHdBUEVSRVJFUkVSRVFvSEd5c3pFVE1SSVJNekFTTURJd01qRXlNUkFUTW5MZ0luRGdJSFgyd0JIM1o1QVJOc2MrSjBiWDM4QVg2a0l3WVNFZ1FFRVJNSEFzciswd0V3L1RNQlFmNi9BVUgrdndHZFhBOHdNQThPTURFUUFBQURBQUFBQUFLaUFzMEFBd0FPQUJJQU1VQXVBQUlHQVFRREFnUm1CUUVCQVNaTEFBTURBRjBBQUFBbkFFd1BEd0FBRHhJUEVoRVFDZ2tBQXdBREVRY0hGU3NCQVNFQkZ3NENCd2N6Snk0Q0F3Y2hKd0dPQVJUOVhnRVdQQVFRRVFVNHd6WUZFUkdIUUFHRlFBTE4vVE1DelZJUE1qQVFsSlFQTVRIK29LK3ZBQU1BRUFBQUF1UUN5Z0FWQUJnQUlRQkZRRUlQREFJR0JCQUxBZ2NHQWtvSkFRY0dDQVlIQ0g0QUNBSUJBQUVJQUdVQUJnWUVYUUFFQkNaTEJRTUNBUUVuQVV3YUdSNGRHU0VhSUJJV0ZoRVJFUkFLQnhzckpTTVZJelVqQnlNM05qWTNKelVoRlFjV0ZoY1hJd00zSVJNaUJnWUhJU1ltSXdKS29GK2dMbTFJRzFOUXhBSlN4bEJTSEVodC9aLyt3b1l1UENjUEFYSVdRMEtjbkp5YzNsZGRDdlU1T2ZVS1hGWGhBYUxNL3VrVEx5cytMd0FBQUFBREFGOEFBQVBzQXMwQUN3QVdBQm9BUDBBOEVnRUJBQUZLQmdFQkNnZ0NCQWNCQkdZQ0FRQUFKa3NBQndjRFhRa0ZBZ01ESndOTUZ4Y0FBQmNhRnhvWkdBME1BQXNBQ3hFUkVSRVJDd2NaS3pNUk14RWhFek1CSVJNakVRRXpKeTRDSnc0Q0R3SWhKMTlzQVI5MmVRRVQvVjU5L0FGK3BDTUdFaElFQkJFVEIwSlRBWWRTQXNyKzB3RXcvVE1CUWY2L0FaMWNEekF3RHc0d01SQzM1ZVVBQVFBTS8zNENyd0xMQUI0QVlFQUtGZ0VGQVJVQkFBVUNTa3V3SjFCWVFCd0FBZ0FDaEFNQkFRRUdYUUFHQmlaTEFBVUZBRjhFQVFBQUp3Qk1HMEFnQUFJRUFvUURBUUVCQmwwQUJnWW1Td0FBQUNkTEFBVUZCRjhBQkFRbkJFeFpRQW9USlNjUkVSUVFCd2NiS3lVakF5WW1KeU1SSXhFakJnWUhCdzRDSXlJbUp6VVdGak15TmpjVE13S3ZiMThPRkFjTGF3b0hGUTBkRWlZNExoZ2tEQW9ZRENFaUZhOXpBUUVoTVZFdS9hd0NWQzlqS0ZrN1dERUlCVmNFQmpzK0FmMEEvLzhBRmY4K0FwSUN5Z0JIQWI4QzhRQUF3QUJBQUFBQUFBSUFCdjgrQTM0Q3lnQVFBQmdBTlVBeUJBRUNBUUpSQndFQUFBWmRDUUVHQmlaTENBVUNBUUVEWFFBREF5Y0RUQUFBR0JjU0VRQVFBQkFSRVJFUkVSRUtCeG9yQVJVaEVUTVJJelVoRlNNUk16NENOeGNqRGdNSElRTisvdHBiYVA0aVp6Y3RURFVKK0owRkhTdzFIUUU5QXNwYi9lLys0TUxDQVNCUXkrQnhYam1KajRjMkFBQUJBQVAvOVFPVkFzb0FIUUJWUUFvUEFRTUJEZ0VBQXdKS1M3QVZVRmhBRndVQkFRRUVYUUFFQkNaTEFBTURBRjhDQVFBQUp3Qk1HMEFiQlFFQkFRUmRBQVFFSmtzQUFBQW5Td0FEQXdKZkFBSUNMZ0pNV1VBSkVSY2xKeEVRQmdjYUt5RWpFU01PQWdjT0FpTWlKaWMxRmhZek1qWTJOejRDTnlFVklRSndidEVKRlJVTERTaENOaElrRFF3YkR4c2dGQWtIRnhzTkFyNysyd0p0UnArU05FSmNMd2NGV1FRSEtrWXFKWkRBYkZzQUFBQUJBRjhBQUFSTEFzb0FHUUFzUUNrWEN3SUFBd0ZLQUFNREFWMENBUUVCSmtzR0JRUURBQUFuQUV3QUFBQVpBQmtSRVJNUkZ3Y0hHU3NoQXlNZUFoVVJJeEV6RXpNVElSVWhFU01STkRZMk55TURBWmJZQkFJREFtS2F6UVRUQWE3KzdHa0RBd0VFM2dKZkZVTlBKZjV0QXNyOXd3STlXLzJSQVpralNrSVcvYUlBQVAvL0FEei85Z0xWQXRVQ0pnQXlBQUFCQndBUkFRUUJMd0FKc1FJQnVBRXZzRE1yQUFBRUFEei85Z0xWQXRVQUR3QWJBQ2NBTXdCSlFFWUhBUVVMQmdvREJBSUZCR2NBQXdNQlh3QUJBUzFMQ1FFQ0FnQmZDQUVBQUM0QVRDa29IUndSRUFFQUx5MG9NeWt6SXlFY0p4MG5GeFVRR3hFYkNRY0FEd0VQREFjVUt3VWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTFOQ1lqSWdZVkZCWTNJaVkxTkRZek1oWVZGQVl6SWlZMU5EWXpNaFlWRkFZQmlYR1VTRWlVY202VFNrcVVibkpvYUhGeWFtb1JHUjhmR1JnaElhUVpJQ0FaR0NBZ0NseW1iMjZsVzF1bGIyK2xYRnlVZ0lDU2tvQ0FsTmdkSFI0ZEhSNGRIUjBkSGgwZEhoMGRBQUFBLy84QVBQLzJCUGtDMVFBbkNTNENKQUFBQUFZSkxnQUFBQUlBQnY4K0FyTURtQUFSQUJrQVAwQThEZ0VIQmdGS0FBVUdCWU1EQVFFQUFWRUFCd2NHWFFrQkJnWW1Td2dFQWdBQUFsMEFBZ0luQWt3QUFCa1lFeElBRVFBUkZSRVJFUkVSQ2djYUt3RVJNeEVqTlNFVkl4RXpQZ0kzTlRNVkZ5TU9Bd2NoQWxkY2FQNGlaemNyU3pRTFk1ZWRCUjBzTlIwQlBRTEsvWlQrNE1MQ0FTQk93dGh0NWM1ZU9ZbVBoellBQUFBQkFETC9FQUg1QXRRQUxBQTNRRFFhQVFNQ0d3UUNBUU1EQVFBQkEwb0FBd01DWHdBQ0FpMUxBQUVCQUY4RUFRQUFLZ0JNQVFBZkhSZ1dDQVlBTEFFc0JRY1VLeGNpSmljMUZoWXpNalkxTkNZbUp5NEROVFEyTmpNeUZoY0hKaVlqSWdZVkZCWVdGeDRDRlJRR0J2ZzhZaWdvWXpWSFZDdElMU0UvTkI4L2FrRkFZQ3NrS2tzcFBVc29SU3N4VmpWQWRQQWFGbVlhSVZKSkxrVTVIeGN4UGxRNlNtczZIQmhYR0JoT1JUSkVOQjRpU2w1QlUzUThBQUFBQUFFQUt2LzJCTUlDMUFBMUFJaEFHREFCQ2dFdkFRQUtEUW9IQXdVQUdnRUhCUmtCQXdjRlNrdXdHVkJZUUNNSkFRQUlBUVVIQUFWbEFBb0tBVjBMQWdJQkFTWkxBQWNIQTEwR0JBSURBeWNEVEJ0QUt3a0JBQWdCQlFjQUJXVUNBUUVCSmtzQUNnb0xYd0FMQ3kxTEJBRURBeWRMQUFjSEJsOEFCZ1l1Qmt4WlFCSTBNaTBySnlVa0pTUVJFaElTRVJNTUJ4MHJBUlFHQnpNUk14RUJNd0VCSXdFUkl4RWpGaFVVQmlNaUppYzFGaFl6TWpZMU5DWWpJelV6TWpZMU5DWWpJZ1lISnpZMk16SVdBaG9sSXRSc0FTcDMvdGtCTlgvKzBHeTZQcE9SUVc4dExuUXlYMTkyYUZ4V2NHVk1RRUJiS2pJdWZsSjFmUUlqTFVNV0FTMytwZ0ZhL3FiK2tBRnEvcFlCU0MxUlhuWVNGVjhXR1VNK1BqcFlRRGd4TlNFYlNTQXJaQUFBQVFCRkFBQUQ0UUxLQUNNQU1VQXVJUllDQkFNSEFnSUJCQUpLQmdFRUFnRUJBQVFCWndjRkFnTURKa3NBQUFBbkFFd1RJeFVqRXlRaUVBZ0hIQ3NoSXhFR0l5SW1Kd1lHSXlJbU5SRXpFUlFXTXpJMk55WTFFVE1SRkJZek1qWTNFVE1ENFd4MVhqQlFHa0YvTjJGcmJEaEJMMVUwQm13NFBURlROR3dCSXk4ZEhSc2ZYVm9CSC83NU9Ub1RFeGtjQVIvKytUbzVGQlFCVWdBQUFnQUcvelVEa3dMS0FERUFPUUQ3UzdBaVVGaEFFaUlCQmdVR0FRTUVFQUVDQXc4QkFRSUVTaHRBRWlJQkJnVUdBUU1FRUFFQ0F3OEJCd0lFU2xsTHNCQlFXRUF2QUFVR0FBVlhBQVFBQXdJRUEyY0FBZ2NCQVFJQll3QUxDd2xkQUFrSkprc01DZ2dOQkFBQUJsMEFCZ1luQmt3YlM3QWlVRmhBTUEwQkFBQUZCZ0FGWndBRUFBTUNCQU5uQUFJSEFRRUNBV01BQ3dzSlhRQUpDU1pMREFvQ0NBZ0dYUUFHQmljR1RCdEFOUTBCQUFBRkJnQUZad0FFQUFNQ0JBTm5BQWNCQ0FkVkFBSUFBUUlCWXdBTEN3bGRBQWtKSmtzTUNnSUlDQVpkQUFZR0p3Wk1XVmxBSVFFQU9UZ3pNaTh1TFN3b0p5WWxKQ01oSHh3YUdSY1VFZzRNQURFQk1RNEhGQ3NsTWhZVkZBWUhGUllXRlJRR0l5SW5OUllXTXpJMk5UUWpJelV6TWpVMEppTWlCeFVoRlNNUk16NENOeUVSTXpZMkFTTU9Bd2NoQXhFelJpRWRJQ2RJU2tRckZqVWRKUzFYSmlWVUhpQW9MZjI1YURVclNUVUxBWEJTRkMvKy82MEdIQ2d4SEFGRWF5Z21HeUlIQWdjaEhpWTJGRDRMRFJRVEtESWxEUklUSWNRQklGREc0SGo5a2djSUFnTTlpbzZGT0FBQUFBQUJBQTcvRUFLMUFzb0FIZ0E3UURnWkFRY0JHQUVHQndKS0FBVUFBQUVGQUdVRUFRSUNBMTBBQXdNbVN3QUJBU2RMQUFjSEJsOEFCZ1lxQmt3a0pTRVJFUkVSSWdnSEhDc2xOQ1lqSXhFakVTTTFJUlVqRlRNeUZoVVJGQVlqSWlZbk5SWXpNalkxQWtrMU9yUnNyQUgvNTcxb2FsRlpGeTBPSGlFbExQdzRMUDZnQW01Y1hMSmZXLzdGVVdZR0JWZ0pNVGdBQVFBTy8vWUNIZ0xLQUJJQUswQW9EUUVEQUE0QkJBTUNTZ0lCQUFBQlhRQUJBU1pMQUFNREJGOEFCQVF1QkV3a0l4RVJFUVVIR1NzM0VTTTFJUlVqRVJRV016STJOeFVHSXlJbTI4MENFTmMxS3hJaEVCNHhXV2ZXQVpoY1hQNWxTVGdHQkZvTWFnQUJBRi8vSVFMTUFzb0FKQUJ4dFIwQkJBWUJTa3V3SEZCWVFDUUFBUUFDQXdFQ1pRY0JCUVVtU3dBR0JnUmVBQVFFSjBzQUF3TUFYUWdCQUFBcUFFd2JRQ0VBQVFBQ0F3RUNaUUFEQ0FFQUF3QmhCd0VGQlNaTEFBWUdCRjRBQkFRbkJFeFpRQmNCQUJ3Ykdoa1lGeFlVRUEwS0NBY0ZBQ1FCSXdrSEZDc1hJaVkxTkRZeklSVWhJZ1lWRkRNaE1qWTFOQ1lqSVJFekVTRVJNeEVXRmhVVUJnWUh4VFF4TUM4Qk4vN2VGQThtQVJveFNqQTMvbHBzQVVac0p5Z2tWa3ZmTHljbkx6a1FEUnNsTFNNdkFzcjlrZ0p1L1hjVFJDb3NSeXNCQUFBQUFBRUFEdjg5QWg0Q3lnQVpBRDFBT2dZQkJBRVdBUVVFRndFQUJRTktBQVVHQVFBRkFHTURBUUVCQWwwQUFnSW1Td0FFQkNjRVRBRUFGQklQRFF3TENna0lCd0FaQVJrSEJ4UXJGeUltTlRRMk54RWpOU0VWSXhFaklnWVZGRE15TmpjVkJnYk9Na0JOTjlJQ0VOSkZMeXcxREJvS0RTTERPVFU3UndVQ1BGeGMvWklySFRZRkEwUUVCUUFBQVFBT0FBQURDQUxLQUJjQU4wQTBDd0VDQVJBQkJRSUNTZ0FDQUFVRUFnVm5Cd1lDQVFFQVhRTUJBQUFtU3dBRUJDY0VUQUFBQUJjQUZ5TVJFeU1SRVFnSEdpc1ROU0VWSXhVVUZqTXlOamNSTXhFakVRWUdJeUltTlRVT0FoRFNQVU16WHo1c2JFTnlObVJ0QW01Y1hLczVPaFFVQVZMOU5nRWpGeGhkV3NNQUFBQUFBUUJmQUFBQ2ZBTFVBQjhBTjBBMEJnRUJBQWNCQWdFT0FRUUNIUUVEQkFSS0FBSUFCQU1DQkdjQUFRRUFYd0FBQUMxTEJRRURBeWNEVEJNakV5VWxJZ1lIR2lzVE5EWXpNaFlYRlNZbUl5SUdGUlUyTmpNeUZoVVJJeEUwSmlNaUJnY1JJMTlyV3h3bkRnOGpGQzA0UUdzelpXNXNQa014V1Rwc0FmSjFiUVlFWFFRRk9rbE1GeGhkV3Y3aEFRYzVPaFFVL3E0QUFBQUJBRi8vSVFRSEFzb0FLQUI1dFNFQkJBWUJTa3V3SEZCWVFDWUFBUUFDQXdFQ1pRa0hBZ1VGSmtzSUFRWUdCRjRBQkFRblN3QURBd0JkQ2dFQUFDb0FUQnRBSXdBQkFBSURBUUpsQUFNS0FRQURBR0VKQndJRkJTWkxDQUVHQmdSZUFBUUVKd1JNV1VBYkFRQWdIeDRkSEJzYUdSZ1hGaFFRRFFvSUJ3VUFLQUVuQ3djVUt3VWlKalUwTmpNaEZTRWlCaFVVTXlFeU5qVTBKaU1oRVRNUklSRXpFU0VSTXhFV0ZoVVVCZ1lqQVh3ME1qQXZBYWorYmhNUkp3R2VNa2d3Ti8wZ2JBRUtiUUVMYkNZb0pGZEszeThuSnk4NUVBMGJKUzBqTHdMSy9aSUNidjJTQW03OWRoUkNLaXhJSy8vL0FEei85Z1QrQXRVQ0JnZnhBQUFBQlFBOC8vWUMxUUxWQUE4QUZBQVpBQjRBSXdBN1FEZ1hFd0lDQVNFZEFnQUVBa29EQmdJQ0JRY0NCQUFDQkdZQUFRRXRTd0FBQUM0QVRCb2FFQkFnSHhvZUdoNFdGUkFVRUJRbUl3Z0hGaXNCRkFZR0l5SW1KalUwTmpZek1oWVdCeVltSnhVaE16VUdCZ2NXRmhjMUlTTVZOallDMVVxVWJuR1VTRWlVY202VFNuUUpWRkwrL2E5UlZRb0hWVlFCQmJGVVZ3Rm1iNlZjWEtadmJxVmJXNlU2WFhJTDJ0b01jcmhrZWd6cTZneDZBQUFBQWYvWC94QUNLUUljQUJZQVFVQStCQUVCQlFNQkFBRUNTZ0FEQUFZRkF3WmxCQUVDQWloTEFBVUZKMHNBQVFFQVlBY0JBQUFxQUV3QkFCTVNFUkFQRGcwTUN3b0lCZ0FXQVJZSUJ4UXJGeUltSnpVV0ZqTXlOUkV6RlNFMU14RWpOU0VSRkFZZ0ZTWU9EaHNSUG1vQkJtcHEvdnBHOEFnRVZnUUdVUUpqMjl2OTVPNyt6VXRnQUFJQUV2OURCTEFDR3dBY0FDTUFUMEJNQ3dnRkF3VUFBVW9BQUFBRkJnQUZaUWtCQndZSFVRQU1EQUZkRGdzQ0F3RUJLRXNOQ2dJR0JnTmRDQVFDQXdNbkEwd0FBQ01pSGgwQUhBQWNHUmdYRmhFUkVSRVNFaElSRVE4SEhTc0JGVE0xTXhFVE13TVRJd01SSXpVakZUTVJJelVoRlNNUk16WTJOeGNqRGdJSE13SDg1R3JmZE9IMGV1eHE1RTlqL294aUswRkNCTkIwQmg0d0lPZ0NHOXpjL3ZvQkJ2NzkvdWdCRWY3djg1Lys3NzI5QVJGYzhIdFNRWWg4TUFBQUFBTUFFZjlEQWxjQ0hBQVlBQjRBSkFCTlFFb2JEUUlIQ0NFRkFnb0hBa29BQndBS0FBY0tad3NHQWdRQUJGSUFDQWdCWFFJQkFRRW9Td2tEQWdBQUJWNEFCUVVuQlV3QUFDTWlJQjhkSEJvWkFCZ0FHQkVSRVJjV0VRd0hHaXNYRVRNMk5qY21OVFV6RlJRV0Z6WTJOeUVSTXhFak5TRVZFelkzTlNNR0F6TTFCZ2NHRVZJUkd3eUFXaDhrRXhjREFTWk1ZUDU2b0VwSGNBaGgyRWxmRTcwQkVoY3pIQnFYc0tnc013bzlpa3IrT2Y3dXZiMEJ3Z015am1yKzk1b3lCVFFBQUFBQkFBWC9Rd0pZQWhzQUZRQm5RQW9OQVFRQ0RBRUJCQUpLUzdBZVVGaEFIUUFBQkFCUkFBSUNCVjBBQlFVb1N3Y0dBZ1FFQVY4REFRRUJKd0ZNRzBBaEFBQUVBRkVBQWdJRlhRQUZCU2hMQUFFQkowc0hCZ0lFQkFOZkFBTURMZ05NV1VBUEFBQUFGUUFWRXlNakVSRVJDQWNhS3lVUkl6VWpFU01PQWlNaUp6VVdNekkyTmpjaEVRSllZR0NZRFMxTVBDVVVFUkFnTVNNTEFWNVIvdks5QWNhbXkxMEtVUVZjeXFmK05nQUFBQU1BTS8vMkFna0RBQUFkQUNnQU5BQldRRk1oQVFVRUZBRUNCUmdCQmdNc0FRY0dCRW9BQVFnQkJBVUJCR2NBQlFBQ0F3VUNad0FEQ1FFR0J3TUdad0FIQUFBSFZ3QUhCd0JmQUFBSEFFOHFLUjhlTUM0cE5DbzBKU01lS0I4b0tDUWxJd29HR0NzbEZBWUdJeUltTlRRMk5qTXlGaFVVQmlNaUppY0dCeFlYTmpZek1oWURJZ1lIRmhZek1qVTBKZ01pQmdjV0ZqTXlOalUwSmdJSksxcEdnWXBLaDFwUFVHQkpLbEVrRndFQkJ5QmRLRnhqckM1SUdCeEtIVnNvUng1TkhoTkVNVHN4TTVnc1NpekZ1WFN5Wmt3MlFFVVBEVXBUTnk4UkZWVUIyem93REExREhpTCtMaFFRUEVJc0l5Z3JBQUFDQUJML0VBSkxBaHNBRFFBVEFEaEFOUU1CQVFJQmhBZ0JCUUFHQUFVR1pRY0VBZ0FDQWdCVkJ3UUNBQUFDWFFBQ0FBSk5BQUFURWc4T0FBMEFEUkVSRVJFUkNRWVpLd0VSTXhFakVTRVJJeEV6TmpZM0Z5TUdCZ2N6QWZ4UFkvNk1ZaXRCUWdUUWRBazdNT2dDRy81aC9wUUJHUDdvQVd4VTJuRlNXYkpDQUFJQU5QLzJBWjRDSlFBUEFCc0FJa0FmQUFFQUF3SUJBMmNBQWdBQUFsY0FBZ0lBWHdBQUFnQlBKQ1VtSXdRR0dDc0JGQVlHSXlJbUpqVTBOall6TWhZV0J4UVdNekkyTlRRbUl5SUdBWjR0VVRnMVVTNHNVamcwVWk3OUl5VWxJeU1tSlNJQkRtVjdPRFo2YUdWN056WjZaMnBYVjJwcVZWVUFBQUFCQURULzlnSkpBaVVBR2dBNlFEY0tBUUlCRndzQ0F3SVlBUUFEQTBvQUFRQUNBd0VDWndBREFBQURWd0FEQXdCZkJBRUFBd0JQQVFBVkV3OE5DQVlBR2dFYUJRWVVLd1VpSmpVME5qWXpNaFlYQnlZbUl5SUdGUlFXTXpJMk54VUdCZ0Y2bUs1U2ttRkJhaVVnS1ZvbmMydHBaRUJoS3laYUNvV1BaSHc3RWcxV0RnMWhYMXhnRkJCY0VSQUFBQUFCLzdnQUFBRmtBc29BQlFBbFFDSUFBQUVBaEFNQkFnRUJBbFVEQVFJQ0FWMEFBUUlCVFFBQUFBVUFCUkVSQkFZV0t3RURJeE1oTlFGa2ZXcHUvczBDeXYwMkFuVlZBQUFCQUZNQUFBTkRBaHNBQ3dBcVFDY0dCUU1EQVFJQmhBQUFBZ0lBVlFBQUFBSmRCQUVDQUFKTkFBQUFDd0FMRVJFUkVSRUhCaGtyTXhFaEVTTVJJeEVqRVNNUlV3THdhdGxxMlFJYi9lVUJ4djQ2QWNiK09nQUFBdi9TQUFBQ1VRTDRBQXdBRlFBNVFEWUdBUU1BQWdBREFtVUFBQWNCQkFVQUJHVUFCUUVCQlZVQUJRVUJYUUFCQlFGTkRnMEFBQkVQRFJVT0ZRQU1BQXdSSkNFSUJoY3JFeEV6TWhZVkZBWWpJeEVqTlFFakZUTXlOalUwSnVpSGMyOXBlUEtzQVpxRWh6ZENQZ0w0L2twT1RVMWFBcU5WL2ZlZkppMHJJUUFDQUFZQUFBSlRBdmtBRVFBYUFFTkFRQWtCQmdBR2d3VUJBQVFCQVFJQUFXVUFBZ29CQndnQ0IyVUFDQU1EQ0ZVQUNBZ0RYUUFEQ0FOTkV4SUFBQllVRWhvVEdnQVJBQkVSRVNNaEVSRUxCaG9yRXhVekZTTVZNeklWRkFZakl4RWpOVE0xRXlNVk16STJOVFFtNTZ1cml1SnFlUE40ZU95RGhUZEdRUUw1M2xXRm1rMWFBY1pWM3YzMm55WXRLeUVBQUFBQUFnQXYvL1lDT0FMNEFCTUFId0F0UUNvUkF3SUVBQUZLQWdFQUJBQ0RBQVFEQklNQUF3RUJBMWNBQXdNQlh3QUJBd0ZQSkNNWEp4RUZCaGtyQVJNekF4WVdGUlFHQmlNaUppWTFORFkzQXpNREZCWXpNalkxTkNZaklnWUJOWkp4dEZwWE9ITlhWM0k0VmxpeGNRRkhUVTlHU1V0TVNRSHlBUWIrNWhXQVcwbHdQejl3U1ZxQUZRRWIvZmxKWEZ4SlRGZGJBQUVBSWY4b0FkWUNIQUFqQUlkTHNDMVFXRUFTRmdFREJCRUJBZ1VCQVFZQUEwb0FBUVpIRzBBU0ZnRURCQkVCQWdVQkFRWUJBMG9BQVFaSFdVdXdMVkJZUUIwQkFRQUFCZ0FHWVFBREF3UmRBQVFFS0VzQUJRVUNYUUFDQWljQ1RCdEFJd0FBQWdFQkFIQUFBUUFHQVFaaUFBTURCRjBBQkFRb1N3QUZCUUpkQUFJQ0p3Sk1XVUFLVkNJUkVpVXhJd2NIR3lzWE5UWTJNeklXRmpNeU5qVTBKaVlqSXpVQklUVWhGUUV6TWhZVkZBWWpJaVlqSWdZeUJ5WWtHQ2N0SWlzOEVqTXc0Z0VYL3ZzQmdmN3RaSE5lVjFZNVVTRVVMdGhUQ1F3REF4b2dFaHNQUUFHSVZFWCtmVTVHUDBvRkNnQUFBQUFCQUNIL0tBSFdBaHdBS3dDaFM3QXRVRmhBRWhvQkJRWVJBUUlKQVFFS0FBTktBQUVLUnh0QUVob0JCUVlSQVFJSkFRRUtBUU5LQUFFS1IxbExzQzFRV0VBbkJ3RUVDQUVEQ1FRRFpRRUJBQUFLQUFwaEFBVUZCbDBBQmdZb1N3QUpDUUpkQUFJQ0p3Sk1HMEF0QUFBQ0FRRUFjQWNCQkFnQkF3a0VBMlVBQVFBS0FRcGlBQVVGQmwwQUJnWW9Td0FKQ1FKZEFBSUNKd0pNV1VBUUtpVWhIeEVTRVJFUkVpVXhJd3NISFNzWE5UWTJNeklXRmpNeU5qVTBKaVlqSXpVM0l6VXpOeUUxSVJVSE14VWpCek15RmhVVUJpTWlKaU1pQmpJSEppUVlKeTBpS3p3U016RGlmbUtYWlA3N0FZRnZYWkZ3WkhOZVYxWTVVU0VVTHRoVENRd0RBeG9nRWhzUFFMRktqVlJGbkVxZFRrWS9TZ1VLQUFBQS8vOEFLLy8yQWJNQ0pRQkhBRllCNUFBQXdBQkFBQUFBLy84QVVmLzJBVmtDR3dJR0FZVUFBQUFCQUU4QUFBSXJBaHdBSEFBNVFEWWJDUUlGQXdGS0FBVURCQU1GQkg0Q0FRQUlCd0lEQlFBRFpnQUJBU2hMQmdFRUJDY0VUQUFBQUJ3QUhCTWpGUkVSRVJFSkJ4c3JFelV6TlRNVk14VWpGUllXRlJVak5UUW1JeUlHRlJVak5UUTJOeldBaG1xR2hsZGtha0ZEUTBGcVlsVUJoRXROVFV0RUMybGhhMmRFUVVGRVoydGdhUXRGQUFBQUFBSUFIUC8yQWRBQytBQWZBQ3NBTmtBekpoa1FCZ1FEQVFGS0FBSUJBb01BQVFNQmd3VUJBd01BWHdRQkFBQXVBRXdoSUFFQUlDc2hLeFVVREFzQUh3RWZCZ2NVS3hjaUpqVTBOamN1QXpVekZCWVdGejRDTlRNT0FnY1dGaFVVQmdZbk1qWTFOQ1luQmdZVkZCYnZWbDA2T2kwNklBMXFFUzBxSmpNYmJnRW5TRE5FTWlsUVBDVXhLeXd4SkRBS1dFWTFZVUFyUjBOTk1UTklReXNzV25CT1VZVjFPVDlsTnl4S0xVMHJKaWxIS0RKQUlDZ3ZBQUFCQURyLzlnTmVBaVlBTVFCVFFGQWpDUUlDQVNJS0FnUUNHQlVDQXdRdkFRQURCRW9BQkFJREFnUURmZ1lCQWdJQlh3Y0JBUUV2U3dVQkF3TUFYd2dKQWdBQUxnQk1BUUF0S3ljbElSOGNHaGNXRXhFT0RBY0ZBREVCTVFvSEZDc0ZJaVkxTkRZek1oWVhCeVltSXlJVkZCWXpNalkzTlRNVkZoWXpNalkxTkNNaUJ5YzJOak15RmhVVUJpTWlKaWNHQmdFbmNIMTRaU1U2R1NZWEtCTndTVUFlTUJscUdUSWZRRVp4SkMwb0dUd2xaWGgrYnpoUkhCeFJDb3lJakpBVEQwNExEY05hWXhZZGxwUWRHR05hd3hsUER4T1FqSWlNS0NZbUtBQUFBQUlBQWdBQUFuNENKZ0FWQUI0QU0wQXdCd0VBQVFZQkFnQUNTZ0FDQUFRRkFnUmxBQUFBQVY4QUFRRXZTd0FGQlFOZEFBTURKd05NSVNNakl5VWlCZ2NhS3hNMEppTWlCZ2NuTmpZek1oWVZGVE15RlJRR0l5TWxOQ1lqSXhVek1qYXhIeWtXSlJFYkZqa2hVbGVHM1d4MDdRRmlQanFBZ3pjK0FYY3BNQWNGVVFjS1RHRTJtMDVhcUN3aHBpc0FBQU1BQ1FBQUF5Z0NIQUFMQUE4QUdBQThRRGtBQWdBSEJnSUhaUUFBQUFGZEJBRUJBU2hMQUFZR0ExMEpCUWdEQXdNbkEwd01EQUFBR0JZU0VBd1BEQThPRFFBTEFBb2hFUkVLQnhjck14RWpOU0VWTXpJVkZBWWpJUkV6RVNVek1qWTFOQ1lqSTdLcEFSTngzVzF6QVRScS9mUnNOejgrT21vQnlWUFptMDVhQWh6OTVFOHFMaXNqQUFBQUFnQlRBQUFERFFLQkFCWUFId0JHUUVNQUJRQUtDUVVLWlFJQkFBQUdYUXNJQWdZR0owc0hBUVFFQVYwREFRRUJLRXNBQ1FrR1hnc0lBZ1lHSndaTUFBQWZIUmtYQUJZQUZoRWtJUkVSRVJFUkRBY2NLek1STXhVek5UTVZNeFVqRlRNeUZoVVVCaU1qRVNNUk56TXlOalUwSmlNalUycVJhcmk0ZVhCc2JYUGZrZnQwTno4K08zRUNnV1ZsWlZLSFRVNU9XZ0hLL2paUEtpNHJJd0FBLy84QU5QLzJBdjBDSlFCSEFlY0RVQUFBd0FCQUFBQUFBQUlBVS8vMkF4b0NKZ0FmQUNvQXcwQU9Fd0VGQXhJQkJBVWNBUWdCQTBwTHNCQlFXRUFqQUFRSkFRRUlCQUZsQUFVRkExOEdBUU1ES0VzTEFRZ0lBRjBIQWdvREFBQW5BRXdiUzdBWlVGaEFLUUFKQkFFQkNYQUFCQUFCQ0FRQlpRQUZCUU5mQmdFREF5aExDd0VJQ0FCZEJ3SUtBd0FBSndCTUcwQXhBQWtFQVFFSmNBQUVBQUVJQkFGbEFBTURLRXNBQlFVR1h3QUdCaTlMQndFQ0FpZExDd0VJQ0FCZkNnRUFBQzRBVEZsWlFCOGhJQUVBSmlRZ0tpRXFHeG9YRlJBT0RBc0tDUWdIQmdVQUh3RWZEQWNVS3dVaUpqVTBOeU1WSXhFekZTRTFOQ01pQmdjbk5qWXpNaFlWRVNNbkl3WUdKekkyTlRVSEJnWVZGQllDQUV0Y0lyNXFhZ0gwYUNaTUp5UXNZalJrYUVzV0JDVlFIa0JQU0ZGUk1BcFNUellsOGdJYzJTRnhGaE5NRmhoZVlmNlpUaTRxVWtsRE1BTUNNalVvS0FBQUF3QUFBQUFDTXdJY0FBTUFEZ0FTQURkQU5Ba0JBZ0FCU2dBQ0JnRUVBd0lFWmdBQUFDaExBQU1EQVYwRkFRRUJKd0ZNRHc4QUFBOFNEeElSRUFVRUFBTUFBeEVIQnhVck1STXpFd0V6SnlZbUp5TU9BZzhDSVNmYmZOeitvWW9hQnhzSUF3VVFFUVUxTWdFcE1nSWMvZVFCR2tVVFJSc1FMQ29Pa1lPREFBQURBQWdBQUFKZ0Fod0FGUUFZQUNBQVRFQkpEd3dDQmdRWEVBc0RCd1lDU2dvQkJ3WUlCZ2NJZmdBSUFnRUFBUWdBWlFrQkJnWUVYUUFFQkNoTEJRTUNBUUVuQVV3YUdSWVdIUndaSUJvZkZoZ1dHQllXRVJFUkVBc0hHaXNsSXhVak5TTUhJemMyTmpjbk5TRVZCeFlXRnhjakFSYzNCd1lHQnlFbUppTUIzb0JUZ0NWZVBCWkFQSmdCN3BrM1FCbzhYdjY0ZW5xUk9qTVJBU2tRTkRseGNYRnhwVUZHQ3Jjdkw3Y0tRa1NtQWRDVmxkUUJIaW9wSUFBQUFBTUFVZ0FBQTJnQ0hBQUxBQmNBR3dCblM3QXRVRmhBSGdZQkFBb0lBZ01IQUFObUNRVUNBUUVvU3dBSEJ3SmRCQUVDQWljQ1RCdEFJd0FBQmdNQVZRQUdDZ2dDQXdjR0EyWUpCUUlCQVNoTEFBY0hBbDBFQVFJQ0p3Sk1XVUFZR0JnQUFCZ2JHQnNhR1JNU0FBc0FDeEVSRVJFUkN3Y1pLeE1WTXpjekV5RTNJeFVqRVFVakRnSUhCek1uTGdJSEJ5RW52UGhkZTl6OXpWN1hhZ0g5QXdVUUVRVVJmQk1FRUJGaE9nRXNQQUljNWVYOTVPYm1BaHhIRVN3cURTOHdEQ2d0M3B1YkFBQUFBUUFDL3hBQ01BSWNBQndBWUVBS0ZBRUZBUk1CQUFVQ1NrdXdJbEJZUUJ3REFRRUJCbDBBQmdZb1N3QUZCUUJmQkFFQUFDZExBQUlDS2dKTUcwQWdBd0VCQVFaZEFBWUdLRXNBQUFBblN3QUZCUVJmQUFRRUxrc0FBZ0lxQWt4WlFBb1RKU1lSRVJNUUJ3Y2JLeUVqSnlZbkl4TWpFeU1HQmdjSEJnWUhJaVluTlJZV016STJOeE16QWpCdlFCY0lDd1JxQkFrRkRRa1pGVFkyQ2g0TkNoRUlHQnNLam5EUlN5Mzl4d0k1R0RZaVVFbEdBUVVGVlFRRExCd0Jnd0QvL3dBUi8wTUNOZ0liQUVjQjN3S0pBQURBQUVBQUFBQUFBZ0FTLzBNQzVBSWNBQkVBR0FBMVFESUVBUUlCQWxFSUFRQUFCbDBKQVFZR0tFc0hCUUlCQVFOZEFBTURKd05NQUFBVkZCTVNBQkVBRHhFUkVSRVJFUW9IR2lzQkZTTVJNeEVqTlNFVkl4RXpOalkzTXpVRE14RWpEZ0lDNU9oUFkvNk1ZaXRCUWdUTzV1WnlCaDR3QWh4VC9vdis3NzI5QVJGYzhIc0IvamdCZFVHSWZBQUFBQUVBQmYvNEF2QUNIQUFWQUZ4QUNnMEJCQUFNQVFFRUFrcExzQjVRV0VBWUFnRUFBQVZkQmdFRkJTaExBQVFFQVY4REFRRUJKd0ZNRzBBY0FnRUFBQVZkQmdFRkJTaExBQUVCSjBzQUJBUURYd0FEQXk0RFRGbEFEZ0FBQUJVQUV5TWpFUkVSQndjWkt3RVZJeEVqRVNNT0FpTWlKelVXTXpJMk5qY3pOUUx3NkhDWURTMU1QQ1VVRVJBZ01TTUwrUUljVS80M0FjYW15MTBLVVFWY3lxY0JBQUFBQVFCVEFBQURuQUljQUJnQUxVQXFGUXdJQXdFQUFVb0FBQUFFWFFZRkFnUUVLRXNEQWdJQkFTY0JUQUFBQUJnQUZoRVdGaEVSQndjWkt3RVZJeEVqRVRRMk55TURJd01qRmhZVkVTTVJNeE1UTXljRG5PbGdBd0lEcUZXbEJBSURZWkdmb2hvQkFoeFQvamNCUUJzM0dmNVZBYXNaTng3K3d3SWIvbU1CblFFQUFBQUFBd0EwLy9ZQ0xnSWxBQTBBR1FBbEFENUFPd0FGQ0FFRUFnVUVad0FEQXdGZkFBRUJMMHNIQVFJQ0FGOEdBUUFBTGdCTUd4b1BEZ0VBSVI4YUpSc2xGUk1PR1E4WkNBWUFEUUVOQ1FjVUt3VWlKaVkxTkRZek1oWVdGUlFHSnpJMk5UUW1JeUlHRlJRV055SW1OVFEyTXpJV0ZSUUdBUzlKY1VHSWRrcHhRWXB6VGtoSVQwNUhSMUlZSVNFWUZ5SWlDa0Y5V29hUlFYeGFocEpYWmx0Y1kyTmNXMmFDSFNBaEhCd2hJQjBBQUFBRUFEUC85Z0pZQWlZQURRQVpBQ1VBTVFBdFFDb0dBUVFIQVFVQ0JBVm5BQU1EQVY4QUFRRXZTd0FDQWdCZkFBQUFMZ0JNSkNRa0pDUWxKU0lJQnh3ckFSUUdJeUltSmpVME5qTXlGaFlGRkJZek1qWTFOQ1lqSWdZWE5EWXpNaFlWRkFZaklpWTNORFl6TWhZVkZBWWpJaVlDV0pHRFVYdEZrSVJUZTBQK1AxTmNXMU5VVzFsVkpoNFlGeDRlRnhnZXBSNFlGeDhmRnhnZUFRNkNsa04rVjRLV1JIMVhXbVpuV1Z0bFlsY2ZIQndmSFJ3Y0hSOGNIQjhkSEJ3QUFQLy9BRFQvOWdQQ0FpVUFKd2xnQVpRQUFBQUdDV0FBQUFBQ0FCTC9Rd0pMQXVNQUVBQVhBRGxBTmdBRkJnV0RBd0VCQUFGUkFBY0hCbDBKQVFZR0tFc0lCQUlBQUFKZEFBSUNKd0pNQUFBWEZoSVJBQkFBRUJRUkVSRVJFUW9IR2lzQkVUTVJJelVoRlNNUk16WTJOelV6RlJjakRnSUhNd0g4VDJQK2pHSXJQa0VIWUhGMEJoNHdJT2dDRy80NS91Kzl2UUVSVitWMTNzaFNRWWg4TUFBQUFRQXMveEFCdVFJbUFDY0FMa0FyR1FFREFob0hBZ0VEQmdFQUFRTktBQU1EQWw4QUFnSXZTd0FCQVFCZkFBQUFLZ0JNSkNzbElnUUhHQ3NGRkFZaklpWW5OUllXTXpJMk5UUW1KeTRDTlRRMk16SVhCeVltSXlJR0ZSUVdGaGNlQWdHNWNHZzNXQ1ltWENnOFAwRkFMMGdvY1YxY1Z4OGVSeWMxT0JrNEx5eEpLaGRsZEJRVVZ4RWJQalk2UnlnY08wODdYMll5U3hRWFBpNGtMeXNlSERwUUFBQUJBQ0wvOWdRT0FpVUFOQUVUUzdBWlVGaEFHRElCQ3dBeEFRRUxEd3dKQXdZQkhnRUlCaDBCQkFnRlNodExzQzFRV0VBWU1nRUxBakVCQVFzUERBa0RCZ0VlQVFnR0hRRUVDQVZLRzBBWU1nRUxBakVCQVFzUERBa0RCZ0VlQVFnSkhRRUVDQVZLV1ZsTHNCbFFXRUFrQ2dFQkNRRUdDQUVHWndBTEN3QmRBd0lNQXdBQUtFc0FDQWdFWFFjRkFnUUVKd1JNRzB1d0xWQllRQ3dLQVFFSkFRWUlBUVpuQXdFQ0FpaExBQXNMQUY4TUFRQUFMMHNGQVFRRUowc0FDQWdIWHdBSEJ5NEhUQnRBTVFBR0NRRUdWUW9CQVFBSkNBRUpad01CQWdJb1N3QUxDd0JmREFFQUFDOUxCUUVFQkNkTEFBZ0lCMThBQndjdUIweFpXVUFmQVFBdkxTb29KeVVpSUJzWkV4SVJFQTROQ3dvSUJ3WUZBRFFCTkEwSEZDc1RNaFlWRkFjek5UTVJFek1ERXlNREVTTTFJeFlXRlJRR0JpTWlKaWMxRmhZek1qWTFOQ01qTlRNeU5qVTBJeUlHQnljMk52RmJkU1NoYXQ5MDRmUjY3R3FWRXhZemExTThZaUVpWURjOFU1bEVPVVpUZHl0S0tDTXNZd0lsU0VZMklOcisrZ0VHL3YzKzZBRVIvdS8xRUMwaExVa3JFaEZjRUJva0xsTlJJaWxGRVJGUUVoUUFBUUJFQUFBRGNnSWNBQ01BTmtBekJ3RUFBUkVNQWdNQUFrb0dBUUFFQVFNQ0FBTm9DQWNGQXdFQktFc0FBZ0luQWt3QUFBQWpBQ01qRXlNakVSTWpDUWNiS3dFVkZCWXpNalkzTlRNUkl6VUdCaU1pSndZR0l5SW1OVFV6RlJRV016STJOeVkxTlFJUExpMHJUQ2RxYWloWk5ta3FMV1U3VWx0cUx5d3JUU2NEQWh5L01TNGFHZXY5NU9nYklFVWRLRlpWeEw4eExob1lFeFhFQUFBQUFBSUFFZjg2QXgwQ0hBQXdBRFlBKzB1d0cxQllRQklpQVFZRkJRRURCQkFCQWdNUEFRRUNCRW9iUUJJaUFRWUZCUUVEQkJBQkFnTVBBUWNDQkVwWlM3QVFVRmhBTHdBRkJnQUZWd0FFQUFNQ0JBTm5BQUlIQVFFQ0FXTUFDd3NKWFFBSkNTaExEQW9JRFFRQUFBWmRBQVlHSndaTUcwdXdHMUJZUURBTkFRQUFCUVlBQldjQUJBQURBZ1FEWndBQ0J3RUJBZ0ZqQUFzTENWMEFDUWtvU3d3S0FnZ0lCbDBBQmdZbkJrd2JRRFVOQVFBQUJRWUFCV2NBQkFBREFnUURad0FIQVFnSFZRQUNBQUVDQVdNQUN3c0pYUUFKQ1NoTERBb0NDQWdHWFFBR0JpY0dURmxaUUNFQkFEWTFNakV1TFN3cktDY21KU1FqSVI4Y0doa1hGQklOQ3dBd0FUQU9CeFFySlRJV0ZSUUhGUllXRlJRR0l5SW1KelVXRmpNeU5qVTBJeU0xTXpJMU5DWWpJZ2NWSVJVakVUTTJOamNoRVRNMk5nTWpCZ1lITXdLaU1FTThIeVZEUnlBM0ZCUXpIQ01zVXlVa1R4MGRJeVgrSDJFcFBFQUhBVW8vRXkzcGh3a3pML0poSmlVekRRTUdIeDBsTWdrS093b05FaEluTHlNTUVRNGR2UUVQVis2Ri9qWUhDQUZuYkx4T0FBQUFBQUVBRnY4UUFxTUNIQUFpQUVsQVJnTUJCQUVkQVFVRUVRRURCUkFCQWdNRVNnQUJBQVFGQVFSbkJnRUFBQWRkQ0FFSEJ5aExBQVVGSjBzQUF3TUNYd0FDQWlvQ1RBQUFBQ0lBSWhFVEpTUWxJeEVKQnhzckFSVWpGVFkyTXpJV0ZSVVVCaU1pSmljMUZqTXlOalUxTkNZaklnWUhGU01SSXpVQjVyTWpXRGhiWWtsUEZpc09IaDRkSkRNek1VMGlhck1DSEZPdEZ5RmJYZXBHWEFZR1ZRa21MdE03TWh3VHpRSEpVd0FCQUJiLzlnSG1BaHdBRXdBclFDZ05BUU1BRGdFRUF3SktBZ0VBQUFGZEFBRUJLRXNBQXdNRVh3QUVCQzRFVENVakVSRVJCUWNaS3pjUkl6VWhGU01SRkJZek1qWTNGUVlHSXlJbXhhOEIwTGNwS1JNZ0VRNDBGRnRQb1FFb1UxUCs1allzQkFSVkJBWmVBQUFCQUZQL0lRSnNBaHdBSkFCeHRSMEJCQVlCU2t1d0hGQllRQ1FBQVFBQ0F3RUNaUWNCQlFVb1N3QUdCZ1JlQUFRRUowc0FBd01BWFFnQkFBQXFBRXdiUUNFQUFRQUNBd0VDWlFBRENBRUFBd0JoQndFRkJTaExBQVlHQkY0QUJBUW5CRXhaUUJjQkFCd2JHaGtZRnhZVUVRNEtDQWNGQUNRQkl3a0hGQ3NYSWlZMU5EWXpNeFVqSWdZVkZCWXpNekkxTkNZaklSRXpFU0VSTXhFV0ZoVVVCZ1lId3pVeE1TN3ExQlFRRWhUQ2VDdzQvcWxxQVFocUh4NGpVMHJmTHljbkx6a1FEUTBRV0NNckFoeitPQUhJL2hZU09pWXNSeXNCQUFBQUFRQVcvejBCNWdJY0FCa0FQVUE2QmdFRUFSWUJCUVFYQVFBRkEwb0FCUVlCQUFVQVl3TUJBUUVDWFFBQ0FpaExBQVFFSndSTUFRQVVFZzhOREFzS0NRZ0hBQmtCR1FjSEZDc1hJaVkxTkRZM0VTTTFJUlVqRVNNaUJoVVVNekkyTnhVR0JyNHlQMGMxc3dIUXN6c3dLelFNR3drTklzTTVOVGhIQndHWVUxUCtOeXNkTmdVRFJBUUZBQUFCQUJZQUFBSzVBaHdBRndBeFFDNElBUUVBRFFFRUFRSktBQUVBQkFNQkJHY0ZBUUFBQWwwR0FRSUNLRXNBQXdNbkEwd1JFeU1SRXlNUUJ3Y2JLd0VqRlJRV016STJOelV6RVNNMUJnWWpJaVkxTlNNMUlRSG1zeTh2TkZzdmFtb3VaMEJUWHJNQjBBSEpiREV1R2huci9lVG9HaUZXVlhGVEFBQUFBUUJUQUFBQ0pnTDlBQ01BTTBBd0JnRUJBQWNCQWdFUkFRUUNBMG9BQUFBQkFnQUJad0FFQkFKZkFBSUNLRXNGQVFNREp3Tk1FeU1US1NVaUJnY2FLeE0wTmpNeUZoY0hKaVlqSWdZVkZSUUdCek0yTmpNeUZoVVJJeEUwSmlNaUJoVVJJMU5XU3lJM0VoWVJKQlVpSUFNQ0JoeFZPbGxrYWpZM1VVRnFBbHhZU1FzSFVRVUlLU005RnpZTUxTaGZadjZyQVQ1RVFXQmUvdnNBQVFCVC95RURnQUljQUNjQWViVWhBUVFHQVVwTHNCeFFXRUFtQUFFQUFnTUJBbVVKQndJRkJTaExDQUVHQmdSZUFBUUVKMHNBQXdNQVhRb0JBQUFxQUV3YlFDTUFBUUFDQXdFQ1pRQURDZ0VBQXdCaENRY0NCUVVvU3dnQkJnWUVYZ0FFQkNjRVRGbEFHd0VBSUI4ZUhSd2JHaGtZRnhZVUVRNEtDQWNGQUNjQkpnc0hGQ3NGSWlZMU5EWXpJUlVoSWdZVkZCWXpJVEkxTkNZaklSRXpFVE1STXhFekVUTVJGaFVVQmdZakFVazFNVEV1QVduK3JCTVJFeFFCVDNjc09QMlhhdHBxMm1vN0pGUkszeThuSnk4NUVBME5FRmdqS3dJYy9qZ0J5UDQ0QWNqK0ZDWktMRWdyQVAvL0FEVC85Z084QWlVQ0JnaFVBQUFBQlFBMC8vWUNMZ0lsQUEwQUVnQVdBQm9BSHdCQ1FEOFZEZ0lDQUJzWkFnRUVBa29IQXdJQ0JRZ0NCQUVDQkdZR0FRQUFMMHNBQVFFdUFVd1hGeE1UQVFBZkhoY2FGeG9URmhNV0VoRUlCZ0FOQVEwSkJ4UXJBVElXRmhVVUJpTWlKaVkxTkRZWEJnWUhNek1tSnhVSEZoYzFGelkyTnlNQk1rcHhRWXAxU1hGQmlGTTNPZ1YydWd4b3ZRaHZSamM0QlhRQ0pVRjhXb2FTUVgxYWhwRlpDRXBCZ0JLU1RJMFNuNThLVDBZQUFBQUNBRFAvOWdJdEF2MEFIZ0FyQUJoQUZSY0JBVWdBQVFFQVh3QUFBQzRBVENjbEx3SUhGU3NCRnc0Q0ZSUVdGaGNXRmhVVUJnWWpJaVltTlRRMk55NENOVFEyTmdNT0FoVVVGak15TmpVMEpnSVVDMm1TVFI5QU1sNW5RSE5NU1hGQlpWSWVOeUpSdUVNbFJTNUxRa1pNU3dMOVd3d1NIQnNUR3g4WkwzWmVUR3MzTldkTVhIRVpFQ1V4SkRaREtmNm1DaXRKT0VSUFVFZEdVUC8vQUN6L2hRTS9BdFFBTHdrdUFmMEFqaHhxQUM4SkxnQVJBSTRjYWdBdkNTNEJnZ0dTSEdvQUx3a3VBUWNBamh4cUFDOEpMZ0NOQVpJY2FnQXZDUzRCZ3YrSkhHb0JEd2t1QUkzL2lSeHFBRHl4QUFPd2pyQXpLN0VEQTdDT3NETXJzUVlEdUFHU3NETXJzUWtEc0k2d015dXhEQU80QVpLd015dXhEd080LzRtd015dXhFZ080LzRtd015c0FBUC8vQUtZQ2F3R2JBeWNBQnd4ZUFTRUFBQUFBLy84QUNBRWZBYWdDWWdGSEFlTUFBQUVmS1pvbVpnQUpzUUFDdUFFZnNETXJBQUFBLy84QU5nRWZBV2NDWWdGSEFlVUFBQUVmS1pvbVpnQUpzUUFDdUFFZnNETXJBQUFBQUFFQVh3QUFBWndDeWdBSEFEcExzREpRV0VBVEFBTUFBQUVEQUdVQUFnSTRTd0FCQVRrQlRCdEFFd0FEQUFBQkF3QmxBQUVCQWwwQUFnSTRBVXhadGhFUkVSQUVDQmdyQVNNUkl4RXpFVE1Cbk5Gc2JORUJSdjY2QXNyKzJBQUFBQUVBR3dBQUFuTUN5Z0FMQUVwTHNESlFXRUFhQkFFQ0FRQUJBZ0IrQlFFQkFRTmRBQU1ET0VzQUFBQTVBRXdiUUJrRUFRSUJBQUVDQUg0QUFBQ0NCUUVCQVFOZEFBTURPQUZNV1VBSkVSRVJFUkVRQmdnYUt5RWpFU01WSXhFaEVTTTFJd0Y5YkpwY0FsaGNtZ0p1N1FGSi9yZnRBQUFBLy84QVlBQUFBcklDeWdJR0FiRUFBQUFCQUYvL0VBSjFBc29BR3dCbVFCY1lFZzBNQkFJREN3VUNBUUlFQVFBQkEwb1pBUUlCU1V1d01sQllRQmNFQVFNRE9Fc0FBZ0k1U3dBQkFRQmZCUUVBQUQwQVRCdEFGd0FDQWdOZEJBRURBemhMQUFFQkFGOEZBUUFBUFFCTVdVQVJBUUFYRmhFUUR3NEpCd0FiQVJzR0NCUXJCU0ltSmljMUZoWXpNalkzQXdjUkl4RXpFVFkyTnhNekFRRUdCZ0UvTTFoQkVTWm5PMVp1RStsTmJHd1JJaEhtZlA3MEFSQVZuL0FRRmdkYUVSbEFSQUZjUHY3eEFzcitwUlFyRkFFSS9zcitiSFI4Ly8vL3MvODhBTWNDeWdJR0FDMEFBQUFCQUZNQUFBRnRBaHdBQndCQ1M3QXlVRmhBRkFBQUFBRUNBQUZsQkFFREF6dExBQUlDT1FKTUcwQVVBQUFBQVFJQUFXVUFBZ0lEWFFRQkF3TTdBa3haUUF3QUFBQUhBQWNSRVJFRkNCY3JFeFV6RlNNVkl4RzlzTEJxQWh6Y1V1NENIQUFBQVFBVkFBQUNDUUw2QUFzQVNrdXdNbEJZUUJvRUFRSUJBQUVDQUg0RkFRRUJBMTBBQXdNNlN3QUFBRGtBVEJ0QUdRUUJBZ0VBQVFJQWZnQUFBSUlGQVFFQkExMEFBd002QVV4WlFBa1JFUkVSRVJBR0NCb3JJU01SSXhVak5TRVZJelVqQVVac2Fsc0I5RnRvQXFhZzlQU2dBUC8vQUZNQUFBSkdBaHNDQmdIUkFBQUFBZ0JTLy9ZQ1VBTDlBQlFBS3dBOVFEb0dBUVFGQVVvR0FRQUhBUUlGQUFKbkFBVUFCQU1GQkdjQUF3TUJYd0FCQVM0QlRCWVZBUUFuSlNRaUhod1ZLeFlyRGd3QUZBRVVDQWNVS3dFeUZoWVZGQWNWRmhZVkZBWWpJaVkxRVRRMk5oY2lCZ1lWRVJRV016STJOVFFtSXlNMU16STJOVFFtQVVWRmFqeVlXR0NHZVhpSFAyNUVKRDBtU1UxTVNGcEtNaWxJUTBZQy9TdFVRSkFZQkFwaFhHZHVibWNCVEZGbE1GVWNRenoreWtOS1NFSktSVlpGT1RrNEFBQUJBRDMvK0FKNkF0VUFTd0JIUUVRYUFRSURSeTRDQkFJQ1NpSVpFZzBNQlFGSUFBRURBWU1BQXdJRGd3QUNCQUtEQUFRQUFBUlhBQVFFQUY4RkFRQUVBRThCQUVOQ096b2ZIUmdXQUVzQlN3WUdGQ3NGSWk0Q05UUTJOejRDTnhjK0F6Y2VBek15TnhjT0FpTWlKaVluRGdJVkZCWVdGUlFHQmdjbk1qNENOVFFtSmpVME55SU9BaFVVRmhZek1qWTJOeGNIQmdZQmZ6aHlYemtiR1JzOU94WVpFVHhFT0EwQ0RoTVhDdzRXQ0JBdUtnb0pJU0FIQnhrVkRnODNWaThFQkIwakdSSVJEQTR2TUNGVGxtTUVMVHNaQ0tJU0tnZ3FVWFZMVVd3MEVpVWZDaE1NSGg4WEJBY21LaDhMRmdnVERDTXdFZ0VNR3hnY1BENGZLejhtQlJnS0ZTWWRLa0l5RmhnT0RpNWNUbUtLU0JRZURSVnRCQU1BQUFFQUFmK0VBcXdDemdCbEFMSkFJRWdCQmdWUEVRSUVBaWtCQXdRaElCZ0VCQUVEQXdFQUFRVktRVUE0QXdWSVM3QUpVRmhBTmdBRkJnY0ZiZ0FHQndhREFBUUNBd0lFQTM0QUF3RUNBd0Y4QUFFQUFnRUFmQWdCQUFDQ0FBY0NBZ2RYQUFjSEFtQUFBZ2NDVUJ0QU5RQUZCZ1dEQUFZSEJvTUFCQUlEQWdRRGZnQURBUUlEQVh3QUFRQUNBUUI4Q0FFQUFJSUFCd0lDQjFjQUJ3Y0NZQUFDQndKUVdVQVhBUUJXVkVWRFBUc25KUjBiRHcwSUJnQmxBV1VKQmhRckJTSW1KemNXRmpNeU5pY3VBaU1HQmdjV0ZoY1dCZ2NITGdJaklnWUdCeWMrQXpNeUZoYzNOalkxTkM0Q05UUStBemNlQWpNeU5qWTNGd1lHSXlJbUppY09BaFVVRmhjK0JETXlIZ0lYSGdJSEJnWUhEZ01CMWhNcEZEUVBHaE1qT0FJQkh6MHZOMFlnRGhFQ0FRSUNqd1VkSkE4T0lSd0ZEd1lpS3lvUEZpZ1ZCd2NTSmpJbUpUZzhMd2tUTmpRUEV5RWFDUkE5VXdVVFBUa1BDeDBVSEJjS0tUSXdJZ1VIS2pvK0d3b05CUUVCRnc4NlJTSU1mQTRRUlJNVmdZeGVaaWdCUFRjZU94a0pJQWV0QmgwWkV4Z0hFUWdsS0J3ZkZRZ0lKUjBhUzFaYUtoOUFPekloQkF3YkV4TVlDQTlBTlJVYUNRc25NeDBXUmk0Sklpa21HQU1NRnhRY1ZGSVlRM29zTURRWEJRQUFBZ0FnLy9nQ0hBTFFBQndBU1FCWVFGVVJFQUlCQURvNUFnSURBUUVGQWlNaUFnUUZCRW9oQVFVQlNRQUJBQU1BQVFOK0FBSURCUU1DQlg0QUJRUURCUVI4QmdFRUJJSUFBQUVEQUZjQUFBQURYd0FEQUFOUEhoMHRLeDFKSGtrakppTW1Cd1lZS3hNblBnUXpNaDRDTXpJMk5qY1hCZ1lqSWk0Q0l5SUdCaE1pSmlZbkJ5YzNOall6TWg0Q016STJOalUwSmlZMU5ENENOeGNHQmhVVUhnSVZGQVlHQnc0Q014TUNFeDhxTXgwYVBEdzJFeElwSWdrTlNFNE9DU28yTmhVa1BDbVdFUzBwQ1RFUWFBUUtBd01MRmlVZU1qUVNDZ3NrTXpBTURDSWlDQWtJRmpvMkpDNGZBZklJQ1RFOU9TWVdIUllYR2djU056Y1FGUkF0UGYzdUZSc0lLeEI4QlF3aUxpSXpVeTh0WFZFYUN5WXFJd2dSR2ljUkNUeFBUeHdtUkVJbEdSWUdBQUFBQWdBWS8vY0RTd0xWQUhJQWh3QjdRSGhRUUFJRkFpc3FBZ0VJWVY5ZUF3Y0JFQUVBQndSS1lBZ0hBd0JIQUFVQ0NRSUZDWDRBQ1FZQ0NRWjhBQVlJQWdZSWZBQUlBUUlJQVh3QUFRY0NBUWQ4QUFjQUFnY0FmQUFBQUlJQUF3UUNBMWNBQkFJQ0JGY0FCQVFDWHdvQkFnUUNUNEYvZVhocFoxeGFWVlJPVEVWRFBUc3VKaU1MQmhjckZ5NENJeUlHQnljK0FqTXlGaFlYTmpjK0F6VTBMZ0lqSWdZR0ZSUWVBaFVVRGdJSEp6NENOVFF1QWpVME5qWTNQZ0l6TWhZV0Z6NENNekllQWhVVkZCWXpNalkzRndZR0J4NENGUlFXTXpJMk54Y0hKelkyTlRRbUppTWlCZ2NPQWdjT0FoTXdOalkzTnlJbUpqVTFOQ1lqSWc0Q0Z4WUd5QVljSUE4WUlCY1FGalF3RUE0Z0hBZ1dGd29ZRmc0aE5Ea1lGUzBlSGlZZUd5Y2xDeEFLR2hNY0pSd2FJUW9OTEQwbUtVazBDeE00VERFakpoRUVDdzBMSWdzSk5Wb3lFU3doR1NVUElBY09qa1FDQng0d0dTVThCZ1FRSEJNWlBUM2JJallkaVJzY0NoWWNGQzRxR2dFQkJna0lHeFlZR0E4Yk55VVlIZ2tORkFraFBtWk9TMmRBSEJnb0dSVW9LQ3NZRVNnbkh3Z1NCaGtkRFJrbEpDa2NGQzhvQ2cwbklDdEdLQjFGTWhrbEpnNGVFQmtMQkJnWUxTWUJFQlFKZzVJVUNCRjBlZ2M2SzBNOEVBNEJHVXhRSUJnM01RRjBFQlVHUlJnaUR4Y2NLeHNzTXhjdFVBQUFBUUFMLzQ4Q0dRTUJBRllBaEVDQk5RRUdDQ1FqQWdJRUZBb0pBd01CQXdFQUF3UktOellDQ1VnQUNRZ0lDVzRBQndZS0JnY0tmZ0FLQlFZS0JYd0FCUVFHQlFSOEFBUUNCZ1FDZkFBQ0FRWUNBWHdBQVFNR0FRTjhBQWdBQmdjSUJtZ0FBd0FBQTFjQUF3TUFYd3NCQUFNQVR3RUFUa3hCUHo0OE1qQXVMQ1lsSVI4WUZnOE5Cd1VBVmdGV0RBWVVLeGNpSmljMEppTWlCZ2NuUGdJek1oWVZGQllYRmhZek1qNEROVFFtSXlJR0J5YzNQZ00xTkNZaklnWUdJeUltSmpVM0Z3WUdGUlFXTXpJMk16SVdGUlFPQXdjK0FqTXlIZ0lWRkE0Q3p4YzBGd2tXRGhvUERBOHNOeDBTR3dFQkF4d1hNRU1wRndoV1JpSXlDd3d2RmpjeUlDWTZEREF3RFNRaENFc1RCUWttTHlZd0lURXdIeTR3SXdRR0dod0pNRDRrRGpoZWRuRUhDam94RFFrVENod1ZEaFlQSGhJZUR5WkFTMHNmUlVzUUJnMUJBUm9zT2lFY0lRVUVEUk1KYkF3RkVRZ0xEUWNxTWlkQk15VVVBZ0VEQXg4dk14TnZrbFFqQUFFQUUvOFFBaE1EQVFBc0FJdEFHZ2tCQWdFS0FRTUNGUUVBQXlzQkJ3UWdBUVlISHdFRkJnWktTN0FjVUZoQUpnQURDQUVBQkFNQVpRQUVBQWNHQkFkbkFBSUNBVjhBQVFHRVN3QUdCZ1ZmQUFVRmh3Vk1HMEFrQUFFQUFnTUJBbWNBQXdnQkFBUURBR1VBQkFBSEJnUUhad0FHQmdWZkFBVUZod1ZNV1VBWEFRQXFLQ1FpSFJzWEZoUVNEZ3dIQlFBc0FTd0pEUlFyRXlJbU5UUTJNeklXRndjbUppTWlCaFVVRmpNekZRY1dGaFVVQmlNaUppYzFGaFl6TWpZMU5DWWpJelUzNW1kc1psQWtPQnNlRnlJV0t6YytTK2JaZjQyUmtENXFMREZ0TVdGWFpYVkExQUdRWGwxWVhnMEtTUWtLTkRJNE9VTFhCbWRrWm4wVUZHQVhHRTQ2T0VkUDBRQUFBQUFCQUJ2L0VBSDJBckFBTFFCWVFGVUpBUUlCQ2dFREFoVUJBQU1zQVFjRUlRRUdCeUFCQlFZR1NnQUJBQUlEQVFKbkFBTUlBUUFFQXdCbEFBUUFCd1lFQjJVQUJnWUZYd0FGQlljRlRBRUFLeWtsSXg0Y0Z4WVVFZzRNQndVQUxRRXRDUTBVS3hNaUpqVTBOak15RmhjSEppWWpJZ1lWRkJZek14VUhGaFlWRkFZR0l5SW1KelVXRmpNeU5qVTBKaU1qTlRma1ltZGhVaVU1R2gwV0l4Z29PRUUvd01oL2h6OTVWemhnS0MxZUxsZFNXMmRJdkFGVVZGWlRYd3dLUmdnSk5ERTJLMERBQVdSY1BGMDFFUTlkRXhKQU9EVS9TTGdBQUFBQUFRQUMvL2NEUXdMVUFKNEFoVUNDVUFFRUNKTlVVVTRqQlFZRVd3RUxERzV0QWdJQkVnRUtBZ1ZLQUFZRURBUUdESDRBREFzRURBdDhBQXNGQkFzRmZBQUlBQVFHQ0FSbkFBVUFCd0VGQjJjQUFRQUNDZ0VDWndBS0F3QUtWd0FEQUFBRFZ3QURBd0JmQ1EwQ0FBTUFUd0VBaW9pRWduZDFabVJNU2tFL09EY3pNU2NsR0JZUUR3a0hBSjRCbmc0R0ZDc1hJaTRDTlRRMk14WVdGUlFHQnc0Q0ZSUWVBak15TmpZM1BnSTNQZ0kzSmlZaklnWUdCdzRERlJRV016SStBalV6RmhZVkZBNENJeUltTlRRK0FqYzJOak15RmhjMk54Y0dCZ2NXRmhVVUJnWUhIZ01WRkE0Q0l5SW1KalUwTmpZM0Z6QU9BaFVVRmpNeU5qYzJOalUwSmlZbkJnWWpJaVkxTkRZek1oWVhQZ0kxTkNZbkRnTUhCZ1lIRGdLWk16d2VDakVpSkJzZ0Znd1pFZ1lVS3lRK1dVc3FGaW80S2dRZk5DSVZOaU05Y1ZzY0R6VTVKeVFiSTB0QUtROEZDQjg1VHpBME9pYzZPUk00bkZzb1F4d2FHZ2dJRUFjdkp6ZFNKd29sSmhvc1NGSW5IU0FNQ3kweERCMGxIUnNOR2pjYkVoY01FQVVPSUFZSUZDRUlFQmNGRkRFakNSUXhQQ2doRmdVUENCNWJmd2tlTGpJVUtEY0JKZzhnSEFNQkFRc1FCQmtjRkZHTFdDMVRXVElHSlMwVUNBWVlKQkFKSkRWR0tpa29MbEp0UHhFd0hDVlFSaXMwTkN0Sk9pZ0xJUzRMQ1F3R0VRSUdBeFJDS0M5SU5CSURGQ1E1S1NkUlJTb1pKQkFLTER3aUVSUWxNQnNkR0RrMUpGQTRIaDRNQWdjR0JRa1BCd1VCQ1RwV01oVXpFaHBPWTNWQkVTZ1JRR2crQUFMLy9QLzJCRG9DNWdDUkFLTUFma0I3VndFR0RENG9BZ2NGUFFFRUI0bGNHd01CQkI0QkFncHpFZ0lEQWdaS0FBb0JBZ0VLQW40QUNBQU1CZ2dNWndBR0FBVUhCZ1ZuQUFjQUJBRUhCR2NBQVFBQ0F3RUNad2tCQXdBQUExY0pBUU1EQUY4TERRSUFBd0JQQVFDZW5JU0NmWHgzZFdWalVVOUZRem80THkwWUZoQVBDUWNBa1FHUkRnWVVLeGNpTGdJMU5EWXpNaFlWRkFZSERnSVZGQjRDTXpJMk5qY0dCZ2NuTUQ0Q056YzJOamN3RGdNaklpWTFORDRDTlRRbUl5SUdCZ2NuTUQ0RE16SVdGaFVVQmdjR0JoVVVNekkrQXpjWERnTUhOalkzUGdNek1oWVZGQVlHQndZR0J3NERGVEFXTXpJK0F6Y3pEZ1FqSWlZMU5EWTNCd1lHQnc0REFUWTJOejRETlRRbUl5SUdCZ2NHQnBrNVFSd0hNU0lrR3lBV0RCa1NCeGN4S3poS1BTVS9VQmtPR2pGREtRc2dUejhmTWpvMEVoVVpGaHdXQkFrVlFVd2xEaDB3T2p3YUdSUUVCaEFRR2dvS01VTkxTQjRLSUMwaUlCUWxMaUFsWEdSaUt5SWxORzVYRXk4YUhDMGdFUVVURHlzd0xDRUhGQWNqTHpRekZTRTZLeVJ0QVFJQ0R6eFplUUlMRGgwY0kwNUZMQmNQQ2k5SUxSY3FDaWMyTHdrb055Y1BJQndEQVFFTER3UWFIUlpEZDAwWFFSd09HeWdwRGdSRGprMGNLU2tjR3hRTktDc2dCUUlGTGs4ekN5VTJOeVVWRndRS0hoY1hJQWdLSGpJOFB4d05Ja1JRWTBFTER3cEVnMnRBSXlFY1cySWxDQkVKUG5aalJBc1RHeWdzSkFnS0tERXRIVHRDS0h4RklnVUlCRE5yWFRrQm9nUU1EQTlBVFVrWkVSQVRRMGNrVUFBQUF2LzgvL1lEQlFMVkFENEFUd0JQUUV4RUFRWUZMUUVCQmhrQkFnRURTZ0FHQlFFRkJnRitBQVFBQlFZRUJXY0FBUUFDQXdFQ1p3QURBQUFEVndBREF3QmZCd0VBQXdCUEFRQTBNeVlsSkNNV0ZBOE5DUWNBUGdFK0NBWVVLeGNpTGdJMU5EWXpNaFlWRkFZaklnWVZGQllXTXpJMk5qY3VBalUwTmpZM05qWXpGUTREQndZR0J6NENOVFFuTnhZVkZBNENCdzRDTno0RE53WUdCdzRERlJRV0ZwazFQeDhLTVNJa0d5TVhIQmNSTWpJcVJUMGVMVG9jTzRadlFZQTNNMEV3TUNBRkVnY2hRQ2tGRWdVTUlVRTFIV0NEZkI1RFVHRTlHVG9YUFhCWU14c21DaUV5TVJFb055Y1BJQjhORHd3bkhqVmRPd28xUXg4NGJHUXBGeGNQQXp4cWtWa1BKdzhLSzBjMUlCRUJFUjRXT1RveERqcG9RdTg3Z29CeUt3VU9DQlZOWTJrd0pDWVNBQUFBQUFNQUMvLzJBeVlDMUFCT0FGd0FhUUJxUUdjY0FRUURLUjBDQWdSREFRRUNZRXc3Q2dRR0NnUktBQUlFQVFRQ0FYNEZBUU1JQVFRQ0F3Um5BQUVBQ2dZQkNtY01DUUlHQUFBR1Z3d0pBZ1lHQUY4SEN3SUFCZ0JQWGwwQkFHUmlYV2xlYVZsWFNrZy9QVEF1SUI0YkdSRVFDQVlBVGdGT0RRWVVLeGNpSmlZMU5EWXpNaFlYTmpZM05qWTNMZ00xTkQ0Q016SVhCeVlqSWc0Q0ZSUWVBaGMrQkRNeUZoVVVEZ0lIQndZR0J4WVdNekkyTmpjWE1BNERJeUltSndZR0FUWTNQZ0kxTkNZaklnNENBVEkyTnlZbUl5SUdGUlFXRm8waU95VTlKU1pVS1JBZ0V3UUpCRUpTS3c4MFczVkFMUzBFTFNrNlkwa29JREkzRnhzOVJFeFVMU3NtTDFWeFF4TVpSeWdoUEJnaFNFRVpFUk1sTmtRb0prVWdLMWNCUWtJOEh6OHNHUk1sUERJdy9uZ3NPUlVrU2lnYk5DUXpDaE1sR2lNZ0lCVWFTQ3NLRXdvREtqcytHVFZnU3lzSkVna3VUbUkxTERnZ0RRSThmWEZhTkNvZkpHZHNYQmt6UTFrZEVSZ21SQzBISVRFeElSa1NHQk1CUWh3MUcxZGxNQlljUkhHTi9vZ2NIUllpRmhzV0hBNEFBQUFBQXdCaEFBQUNxQUxLQUFjQUN3QVBBRFZBTWdBQUJ3VUNBZ1FBQW1VR0FRUUJBUVJWQmdFRUJBRmRDQU1DQVFRQlRRQUFEdzROREFzS0NRZ0FCd0FIRVJFUkNRWVhLek1SSVJFakVTTVJKek1SSXdFekVTTmhBa2V0N1hoRFF3R2FRME1DeXYwMkFwWDlhelVDWVAyZ0FtQUFBQUFCLy96LzlnTmVBdFFBbWdCK1FIdDZBUWNMZm50NFRRUUpCNFFZQWdFQ2xnRUZCRDBCREFVRlNnQUpCd0lIQ1FKK0FBc0FCd2tMQjJjQUFnQUJDQUlCWndBSUFBb0VDQXBuQUFRQUJRd0VCV2NBREFZQURGY0FCZ0FBQmxjQUJnWUFYd01OQWdBR0FFOEJBSkNPZG5ScmFXSmhYVnRSVDBOQk96bzBNaXdxRmhRUEN3Q2FBWm9PQmhRckJTSW1KalUwUGdJMU5DWW5JZ1lqSWlZMU5EWXpNaFlYUGdNMU5DY09Bd2NHQmdjT0FpTWlMZ0kxTkRZekZoWVZGQVlIRGdJVkZCNENNekkyTmpjMk5qYytBamNtSmlNaUJnWUhEZ01WRkJZek1qNENOVE1XRmhVVURnSWpJaVkxTkQ0Q056WTJNeklXRnpZM0Z3WUdCeFlXRlJRR0J4NENGUlFHQmhVVUZqTXlQZ00zRnc0REFuQWdKQThZSVJnR0FnSVFDd2dhRmdjTEdBc01MakFpTURFOEtDRVdCUThJSGx0L1ZUbEJIQWN4SWlRYklCWU1HUklJRmkwa1BsQkNLU0JYUGdRZk5DSVZOaU05Y1ZzY0R6dEFMU1FiSWt4QUtROEVDUjg1VHpBME9pMUJQeE00bkZzb1F4d2FHZ2dJRUFjNU9HOXRHaFVER1JrS0N3d2hJeUFXQWhBSEpETStDaGdqRVJ0RlJqMFZEaEFFQkFvT0RnWUxDQU1ZTGtNdFhpQWFUbU4xUVJFb0VVQm9QaVkxTGdrb053RW1EeUFjQXdFQkN4QUVHUndVUTMxWVE1aE1CaVV0RkFnR0dDUVFDU3hCVGlvcEtDNVNiVDhSTUJ3bFVFWXJORFFyVVVVeEN5RXVDd2tNQmhFQ0JnTVpUeWhBYUJvVUt5SUlIVXBFRmc0VUdpZ3BId1VKQ2pVOUxBQUFBUC8vQUI4QUFBR3hBc29CRHdBcEFoQUN5c0FBQUFteEFBRzRBc3F3TXlzQS8vOEFBQUFBQW8wRGJ3SUdBSWNBQUFBQ0FETC85Z0pHQXRVQUdnQWdBRDVBT3dzQkFnRWNHeGNTRVF3R0F3SVlBUUFEQTBvQUFRQUNBd0VDWndBREFBQURWd0FEQXdCZkJBRUFBd0JQQVFBVkV3OE5DUWNBR2dFYUJRWVVLd1VpSmlZMU5EWTJNeklXRndjbUl5SUdCeEVXTXpJMk54VUdCaWNSQmhVVUZnRitjSk5KVDVsdk1GMHdHbEJWSzBzZlBsY3BXQ292VnZCVEtRcGFwbkJzcGwwTUV6Z2lFeEg5emg4TkN6c0tDSG9CNUZPZVQzd0FBQUFEQUdFQUFBS29Bc29BQ3dBUEFCTUFQMEE4QWdFQUNRRUhBUUFIWlFBQkFBUUdBUVJsQ0FFR0F3TUdWUWdCQmdZRFhRb0ZBZ01HQTAwQUFCTVNFUkFQRGcwTUFBc0FDeEVSRVJFUkN3WVpLek1STXhFekVUTVJJeEVqRVNjekVTTUJNeEVqWWEzdHJhM3RlRU5EQVpwRFF3TEsvc1lCT3YwMkFWditwVFVDWVAyZ0FtQUFBQUFBQWdCaEFBQUNxUUxLQUFrQURRQW1RQ01OREFzS0NBTUdBZ0FCU2dFQkFBSUFnd1FEQWdJQ2RBQUFBQWtBQ1JFU0VRVUdGeXN6RVRNQkVUTVJJd0VSSlRVQkZXRk1BY2MxVGY0NkFkNytJZ0xLL2hZQjZ2MDJBZXYrRlRWaUFmNWpBQUFBQUFRQVlRQUFBbHdDeWdBTEFBOEFFd0FaQUQ5QVBCa1VBZ1VFQVVvQUFBWUJCQVVBQkdVQUJRQUJBd1VCWlFBREFnSURWUUFEQXdKZEJ3RUNBd0pOQUFBVEVoRVFEdzROREFBTEFBc2xJUWdHRmlzekVTRXlGaFVVQmdZakl4RW5NeEVqRXpNUkl4TTJOalUwSjJFQkE0QjRRbXc5WTNoRFEzaUxpOEVrTDFNQ3ltMWJQbDgyL3RFMUFtRCt6d0V4L3VBUlFEeHJIQUFBQlFBOS8xWURBQUxWQUJBQUd3QWlBQ2tBTHdCUFFFd2tJeUljR2hrVUV3Z0RCQ3dQQWdBREFrb0FBUUFFQXdFRVp3Z0JBd1lCQUFVREFHY0FCUUlDQlZVQUJRVUNYUWNCQWdVQ1RSSVJBQUF2TGlzcUdCWVJHeEliQUJBQUVDVVJDUVlXS3dVbkppWTFORFkyTXpJV0ZoVVVCZ2NYSlRJM0VTWW1JeUlIRVJZbE5qWTFOQ1luQVJFR0JoVVVGZ0V6SndZR0J3SGdhNXVkUzVOdGE1SkxXMG5VL29kTk54eEJKazQ0TndFSExTNHRMdjZOTGkwdEFXUjhpQTBvRDZxZ0NNT21iYVZjWEtWdWc2TW14TkFiQWtnTkR4Mzl1aHcvS1lOVlZZSXAvZ0FCL2ltQ1UxU0QvdmQrQkFjQkFBQUFCUUJoQUFBQ3V3TEtBQTBBRVFBVkFCd0FJUURjUzdBSlVGaEFDeHdXQWdZRkNBRUNCZ0pLRzB1d0NsQllRQXNjRmdJR0JRZ0JDUVlDU2h0QUN4d1dBZ1lGQ0FFQ0JnSktXVmxMc0FsUVdFQW1BQUFIQVFVR0FBVmxBQVlKQVFJRUJnSm5DQUVFQVFFRVZRZ0JCQVFCWFFvREFnRUVBVTBiUzdBS1VGaEFMQUFDQ1FRSkFuQUFBQWNCQlFZQUJXVUFCZ0FKQWdZSlp3Z0JCQUVCQkZVSUFRUUVBVjBLQXdJQkJBRk5HMEFtQUFBSEFRVUdBQVZsQUFZSkFRSUVCZ0puQ0FFRUFRRUVWUWdCQkFRQlhRb0RBZ0VFQVUxWldVQVlBQUFoSUI0ZEZSUVRFaEVRRHc0QURRQU5FUlloQ3dZWEt6TVJJVElXRlJRR0J4TWpBeU1SSnpNUkl4TXpFU01UTmpZMU5DWW5Fek1EQmdkaEFRT0FlRU05MzhPL0szaERRM2lMaThFa0x5b3BSRXF2SGg4Q3ltTmJRbDBYL3FvQlBmN0ROUUpnL3QwQkkvN3VFVHc4TnprTi9hc0JFd1lDQUFBQUFBSUFKZ0FBQWs4Q3lnQUpBQTBBTjBBMEJnRUFBUUVDQWtrQUFRVUJBQUlCQUdVRUFRSURBd0pWQkFFQ0FnTmRCZ0VEQWdOTkFBQU5EQXNLQUFrQUNSSVJFZ2NHRnlzek5RRWhOU0VWQVNFVkpUTUJJeVlCYnY2eUFnbittUUZkL2gxSkFXcEhOUUpnTlRYOW9EVTFBbUFBQUFBQUJBQWtBQUFDeXdMS0FBa0FEUUFWQUJzQU9FQTFHeElDQWdNQlNnQUFCUUVEQWdBRFpRUUJBZ0VCQWxVRUFRSUNBVjBHQVFFQ0FVMEFBQlVURUE0TkRBc0tBQWtBQ0NFSEJoVXJNeE16TWhZVkZBWUdJeWN6RXlNRE16STNFeVlqSXhNMk5qVTBKeVNYL1lHU1lidUh4RU9CUXdsVVcwZHhNVXRxc1VCREpRTEtqSkY4d204MUFtRDlvQ0lDR3lQOTZET2dYbUE0QUFBQ0FHRUFBQUlaQXNvQUJRQUpBQ3hBS1FBQUJBRUJBd0FCWlFBREFnSURWUUFEQXdKZEJRRUNBd0pOQUFBSkNBY0dBQVVBQlJFUkJnWVdLek1SSVJVaEVTY3pFU05oQWJqKzlYaERRd0xLTmYxck5RSmdBQUQvL3dBei8vWUNOQUxVQWdZRGNnQUEvLzhBWHdBQUFuZ0N5Z0lHQUM0QUFBQUNBQnovK1FKbEF0Z0FZUUJzQUhWQWNoOGVBZ01FQ0FFTEJXUThBZ29MVWxFQ0J3Z0VTZ0FCQUFRREFRUm5BQU1BQWdVREFtY0FCUUFMQ2dVTFp3MEJDZ0FHQ1FvR1p3QUpBQWdIQ1FobkFBY0FBQWRYQUFjSEFGOE1BUUFIQUU5allnRUFhV2hpYkdOc1dsaE9URVpFT2pnek1pMHJKaVFaRnhBT0FHRUJZUTRHRkNzWElpWW1OVFEyTmpjbUpqVTBOall6TWg0Q0ZSUUdCaU1pSmpVME5qY1hCZ1lWRkJZek1qWTFOQ1ltSXlJR0JoVVVGeDRDRlJRR0l5SW1KdzRERlJRV0ZqTXlQZ0kxTkNZaklnWUdGd2NtSmpVME5qWXpNaFlXRlJRT0FoTXlOVFFtSnlZaUJ4WVc0ajFaTUVWeFF3MGRPMlJBTUR3aURSZ3dKU0lrSXkwRkV5Y2FFeUl4SVM0VUwwc3JCaHMxSXh3UkV6a1ZJMEV6SGlBekhDaE5QeVlrR3gwOEpBY1NCQUlsUHlnbEl3c29SVmg3SUNVTENSY0hFQjhITkZ3N1BXaEZDZzQwS2l4VE5SNHVNaFFZT1NrcEhSMDhFZ29STUI4Y0dUY3pMRE1XTm1GREZ4RUJDUklQRUFvVUZRczJUbG92TlRVU0h6WklLQ1VuTmxvMEJCSWtFaWhDS0NNdERpMVBPaUVCalFvSURBSUNBUk1PQUFBQUF2LzgvL1lEVUFMWkFEZ0Fod0NPUUlzVUV3SUVBVEV3QWdNQ1pBRUtBM1lCQUFWV0FRY0xmRmtDQ0FkTUFRa0lCMHBvQVFBQlNRQUtBd1VEQ2dWK0FBc0FCd0FMQjM0QUFRQUVBZ0VFWndBQ0FBTUtBZ05uQUFVTUFRQUxCUUJuQUFjQUNBa0hDR2NBQ1FZR0NWY0FDUWtHWHcwQkJna0dUem81QVFDQ2dYSndVbEJLU1VOQk9ZYzZoeWdtSHgwYUdCRVBEQW9BT0FFNERnWVVLeE1pTGdJMU5ENERNekllQWpNeU5qY1hNQTRDSXlJdUFpTWlEZ0lWRkJZV016SStBelUwSmljM0ZoWVZGQTRDQXlJdUF6VTBOak1XRmhVVUJnY09BaFVVSGdJek1qWTJOemNHQmdjbk1ENENOejRDTnhjT0FnYzNOalkzUGdNek1oWVZGQWNXRGdJSEJ6QStBamNpQndjT0F0SWhKeEVGSERwY2dGTXpRQzR1SWlVakRSRVFJQzhlSmtSRFJpZzJiVmsyR1I4SkdESXNJeFFDQlE0UkRoa3pTbXN1T3lFUEJERWlKQnNnRmd3WkVnY1hMU2NzUmowZUlEaFNGZzhXTEVVd0hEZFJRZzBsSmhnUUhRVVJCUUlORlJ3UkRRcEhCUVFMQ3dKT0VCVVNBaE1nQXg5Z2lnRTFHaVVrQ2lGU1UwWXJEaEVPRWc0S0hDVWNHQ0VZTGs5bE5pWWxDeU0zUVR3V0NoZ1hCeDA4SVIxRVBpZit3UnNwS3lNSEtEY0JKZzhnSEFNQkFRc1FCQnNmRmpaZU8wRUhNUjBNR1NJY0JEcGxYeThLSkZwbE5RUUJCZ1VGSHlRYUVRa2VPQWNpSnlFR0Zod3FLZzREQ2xXRVRBQUFBQUgvL1AvMkJJSUMxUUI3QUVCQVBVaEhLZzhFQWdFQlNuSmJOaDBFQVVnQUFRSUJnd01CQWdBQUFsY0RBUUlDQUdBRkJBWURBQUlBVUFFQVptUk5TMFJDRkJJSEJRQjdBWHNIQmhRckZ5SW1OVFEyTXpJV0ZSUUdCd1lHRlJRV0ZqTXlQZ0kzUGdJM0Z3NEZCdzRFQno0RE56WTJOelkyTnhjT0F3Y09CQlVVTXpJMk5qY1hEZ0lqSWlZMU5ENEROejRFTnc0Q0J3WUdCd1lHSXlJbUpqVTBOalkzUGdNM0RnTUhEZ09DUGtnektDRVhLUzROQ0JJcEpUZGZWbGN2UDN4cEl4QUVHQ0FqSHhZREJCY2ZIeGdFR0RrL1Bod3NQU0k0Wmg0UkVUQTJNaElNSWlRZkZBZ1NPRDRiREJsQVFCb2lLQmttTENjTUR5ODBNQ01HRVZSNVJ6MVpJeDR6RkJZVUJoaEhSaEl3TUNRR0lWTlpVQjRvVVZkbkNrbzZLanNqRkJjb0JnRUxDUVlpSGoxbGZrQldsR29aQ2dvMVNFNUhNZ2dLT0U1VlVCd1lWV1prSnp4UEpEeFRFaEFZVTJOZ0pobEtWRkJCRUE0dVJpSUtJMGt5TjBnZFMxQkxQQkFWT1Q0NEtBWU1SSUJrVnBjMUxUMG1OQk1WWHBoc0hFWkRNZ2dZV210cEp6WjNhRUVBQUFBREFBa0FBQUt4QXNvQUlBQXBBRElBZjdVUEFRTUFBVXBMc0F4UVdFQW9DUUVFQXdjREJIQUZBUUFLQ0FJREJBQURad0FHQmdGZEFBRUJna3NBQndjQ1hRQUNBb01DVEJ0QUtRa0JCQU1IQXdRSGZnVUJBQW9JQWdNRUFBTm5BQVlHQVYwQUFRR0NTd0FIQndKZEFBSUNnd0pNV1VBWktpb0FBQ295S2pFdEt5a25JeUVBSUFBZ0lTd2hKUXNOR0NzM0ppWTFORFl6TXhFek1oWVZGQVlIRlI0Q0ZSUUdJeUVSSXlJR0ZSUVdGemN6TWpZMU5DWWpJeEVWTXpJMk5UUW1JeFFFQjBkUUZkR0lqVU0rS2tVb2lIVC9BQmdmSGdjRHQzZFVQMDFTYTROV1JVZGIzd3NoRGo5SEFTdFFZajVVQ3dVSUpVVTRZbW9CU2g0WEVSNEh3VFkxTlMvKzJlNUVPRE0vQUFBQUFBSC83djhwQWZBQ3lnQVpBRUZBUGdRQkFRSURBUUFCQWtvR0FRTUhBUUlCQXdKbEFBRUlBUUFCQUdNQUJRVUVYUUFFQklJRlRBRUFGaFVVRXhJUkVBOE9EUXdMQ0FZQUdRRVpDUTBVS3hjaUppYzFGaFl6TWpZMUVTTTFNeEVoRlNFVk14VWpFUlFHTXhZbENnb2NFUnNmY0hBQmtmN2F2cjVSMXdrRVZRTUhJaUFCWjFvQlJsdnJXdjZhVDB3QUFBSUFMLy8yQW8wQzFBQWJBREVBZzBBT0VRRUdCUWNCQndZWEFRUUhBMHBMc0JsUVdFQWhBQVlBQndRR0IyY0FCUVVCWHdJQkFRR0tTd2tCQkFRQVh3TUlBZ0FBaXdCTUcwQXBBQVlBQndRR0IyY0FBZ0tDU3dBRkJRRmZBQUVCaWtzQUF3T0RTd2tCQkFRQVh3Z0JBQUNMQUV4WlFCc2RIQUVBTFNzcUtDUWlIREVkTVJZVkZCTVBEUUFiQVJzS0RSUXJCU0ltSmpVME5qYzFKalUwTmpZek1oWVhNemN6RVNNbkl3NENKekkyTlRVMEppTWlCaFVVRmpNekZTTWlCaFVVRmdFNlVYaENYVjZpT1d0TFZYQWhBdzFnV1JZSEV6bFZKbXRtYTI1T1IxVm5JQ1JqYkdNS01sNUFSMXNNQXg2R05sTXdPU3RhL1RaYkdTOGRXSEo5YUc5bU9pdzZQVlk5UFVNOEFBQUFBZ0F2Ly9ZQ293TFVBQk1BS1FBL1FEd0dBUVVFQVVvQUJBQUZBZ1FGWndBREF3RmZBQUVCaWtzSEFRSUNBRjhHQVFBQWl3Qk1GUlFCQUNRaUlSOGJHUlFwRlNrTkN3QVRBUk1JRFJRckJTSW1OVFEyTnpVbU5UUTJNeklXRmhVVUJnWW5NalkxTkNZbklnWVZGQll6TXhVaklnWVZGQllXQVVlTGpWMWVvb0dHZEpkSlNwbDNkWEpzZFZCTVZXY2dKR05zTGs0S2NsNUhXd3dESG9aUGFsdWxibTZtWEZ5TWlJS1FBVHN1T0R0V1BUMHROaGdBQUFFQVN2LzJBbzBDeWdBbUFHbEFDZ1lCQXdJaUFRUURBa3BMc0JsUVdFQWJBQUlBQXdRQ0EyY0ZBUUVCZ2tzQUJBUUFYd1lIQWdBQWl3Qk1HMEFmQUFJQUF3UUNBMmNGQVFFQmdrc0FCZ2FEU3dBRUJBQmZCd0VBQUlzQVRGbEFGUUVBSVNBZkhoc1pGUk1TRUEwTUFDWUJKZ2dORkNzRklpWTFORFkzTlM0Q05UVXpGUlFXTXpNVkl5SUdGUlFXTXpJMk5SRXpFU01uSXc0Q0FUdHlmMTFkTjFNdWJHaHdHU05rYTFKSGFHcHJXUllHRWp0VkNtdGFUVjhOQXdvcFVFT05rMVZGVmtGRE56NXpmQUdOL1RaYkdTOGRBQUFBQUFRQUNmLzNBb0lDK0FBU0FCWUFJd0FyQUV0QVNDVVFDd01FQndGS0FBSUFCUUVDQldVQUFRQUhCQUVIWndBR0F3QUdWd0FFQUFNQUJBTmxBQVlHQUY4SUFRQUdBRThCQUNBZkdCY1dGUlFURHc0TkRBa0hBQklCRWdrR0ZDc1hJaVkxTkQ0Q016SVdGeE16QXlNM0JnWTNNeE1qQVRJK0FqVTBKaVlqSWdZSEF4TU9BaFVVRnBwQVVTSkNZMEEwUkF0Q3JhS3RGaWRTb2tPTVF2NmVMMUU4SVJNeExBUUtCSTVaSWowbUdBbGJYRUtEYlVFM0tBRTIvUWhsTkRvNkFwTDlhRDVpYnpJZ095WUJBZjVMQWFZV1ZYbE1ManNBQUFRQUNmLzJBZlFDSWdBWEFDSUFLQUF2QURWQU1pb29IQlFQQlFJREFVb0FBUUFEQWdFRFp3QUNBQUFDVndBQ0FnQmZCQUVBQWdCUEFRQWdIaElRQ1FjQUZ3RVhCUVlVS3hjaUpqVTBQZ0l6TWhZVkZBWUhCeFl6TWpZM0J3WUdBelkyTnpjbUlpTWlCZ2NYTmpZMU5DY0JFd1lHRlJRVzZHNXhLbE40VGtoZ2o1NG5IeTR0WGkwRkxGbEpIRFFYSlFRS0JCY3JGSHNrS1MvKzRrdzVRUllLYlYxQWZXYytQRDVDWkE2K0Nob1dQeE1VQVRRQ0NRV3hBUWdJanhBdEh5Y1MvbXdCYnltSFNDYzhBQVFBSUFBQUFWWURBUUFLQUJVQUdRQWRBRTFBU2dBQkFBTUNBUU5uQ1FFQ0NBRUFCQUlBWndBRUFBY0dCQWRsQUFZRkJRWlZBQVlHQlYwS0FRVUdCVTBXRmd3TEFRQWRIQnNhRmhrV0dSZ1hFUThMRlF3VkJ3VUFDZ0VLQ3dZVUt4TWlKalUwTmpNeUZSUUdKekkyTlRRaklnWVZGQllERXpNREp6TVRJL2dpTFRJdlREc2ZEeGtnRkJVVHpuR3VjbTVEWEVNQ1VDWWxLanhITXpjeUdCWWZHeEVRRWYxK0Foajk2REVCc2dBQUJQOXYveEFCVmdNQkFBb0FGUUFuQUMwQVYwQlVHZ0VGQnhrQkJBVUNTZ0FCQUFNQ0FRTm5DUUVDQ0FFQUJnSUFad0FHQUFjRkJnZGxBQVVFQkFWWEFBVUZCRjhLQVFRRkJFOFhGZ3dMQVFBdExDSWhIaHdXSnhjbkVROExGUXdWQndVQUNnRUtDd1lVS3hNaUpqVTBOak15RlJRR0p6STJOVFFqSWdZVkZCWUJJaVluTnhZV016STJOeE16QXc0RE56WTJOeE1qK0NJdE1pOU1PeDhQR1NBVUZSUCswUlFvRkFzT0hSRWJMZ3FJcm5rSEpUOWROQjQzRFdsQ0FsQW1KU284UnpNM01oZ1dIeHNSRUJIOGpnY0pOUVlJSXk4Q2YvM1BJRXBES2swVVFUd0I5UUFBQUFJQUJmOFFBZ01DR0FBVkFDRUFNVUF1R2hZS0JBUUNBd0ZLQkFFQ0F3S0VBUUVBQXdNQVZRRUJBQUFEWFFBREFBTk5BQUFjR3dBVkFCVVpGUVVHRmlzWE5EWTJOd0V6RXhZV0Z6UTJOamNUTXdNT0FoVVRNelkyTndNakZ4NEQwdzBYRC83L3QzNEhFUUlJQ1FOaU9jZ1BGZ3dQQkFJUkM2RkVid2thR3hUd0hGUmRLUUlTL3ZnT0pnb0NHUnNIQVFuOTlTbGJWeUlCTEF3MEhnRk42Qk0zT3pFQUF3QXgvL1lDL1FJWUFCMEFJUUEwQUZ0QVdCb0JCZ0VCU2dBRUN3Z0ZBd1FCQmdRQlpRQUdBQW9IQmdwbkRRRUpBZ0FKVndBSEFBSUFCd0psRFFFSkNRQmZEQUVBQ1FCUEpDSUJBQzR0S0NZaU5DUTBJU0FmSGhrWEVSQVBEZ3dMQ2drSUJ3QWRBUjBPQmhRckJTSW1OVFEyTnhNakF5TVRJemMzSVFjakF3WUdGUlFXTXpJM0J3WUdKVE1USXdFeU5qYzNJeUltTlRRM0V5TURCZ1lWRkJZQ0hUeFJDZ1E3aUdhdFpuTUVUd0o1QzJ3N0JRUVlFUm9YR2hRNy9rcERYRU1CU3c0ZUNnY0VNUjhKT2tFOEJRY3pDa1U3RkRVV0FRNytIUUhqRWlNMS92SVZIUXNTRHdwOEJ3ZzdBYkwrUlFJQ0pTb2NGeWNCRHY3cEZDc1hKaWdBQUFBQkFCOEFBQUl0QXZnQUhBQXlRQzhHQVFNQkFVb0FBQUVBZ3dVRUFnSURBb1FBQVFNREFWY0FBUUVEWHdBREFRTlBBQUFBSEFBY0poVW5FUVlHR0NzekV6TUhCZ1lITXpZMk16SVdGUlFIQXlNVE5qWTFOQ1lqSWdZSEF4OThhaU1FREFRSEhWa3dWRjRGTm1rMUFnSXVNbEJRRGlzQytOUWFMaEFvSjAxTUd5RCt1UUZIQ3hRSktTMWpYUDc2QUFBQkFCNEFBQUkzQXZnQUlnQnp0UTRCQndVQlNrdXdEMUJZUUNjQUFnRUJBbTRKQ0FJR0J3YUVBd0VCQkFFQUJRRUFaZ0FGQndjRlZ3QUZCUWRmQUFjRkIwOGJRQ1lBQWdFQ2d3a0lBZ1lIQm9RREFRRUVBUUFGQVFCbUFBVUhCd1ZYQUFVRkIxOEFCd1VIVDFsQUVRQUFBQ0lBSWlRV0poRVJFUkVSQ2dZY0t6TVRJemN6TnpNSE13Y2pCd1lHQnpNMk16SVdGUlFHQndNakV6WTFOQ01pQmdjSEhuUkpDMG9SYWhHN0M3d05CUXdGQmtWM1NGUUVBejVxUEFaWFVGWVRNZ0pZU1ZkWFNUMFlNQlJVUjBnT0poSCt3UUUySEJ0UFlGNytBQUFBQUFJQUdQLzJBYmtCa1FBb0FEUUFQMEE4Q0FFREJBa0JBZ01DU2dBREJBSUVBd0orQUFFQUJBTUJCR2NBQWdBQUFsY0FBZ0lBWHdVQkFBSUFUd0VBTVM4bEpDRWZFaEFBS0FFb0JnWVVLeGNpTGdJMU5EWTNCeWMrQWpjMk5qTXlGaFlWRkE0Q0J3WUdGUlFXTXpJMk5qY3pEZ0luUGdNMU5DTWlEZ0s5SmpFY0N3c0pMQThJSVNFR040ZERKU0VLRnpwbVR3Y0tEaEVkVGxJakZoOVJYQzA3VENzUkdoa3lMU1VLR3lrc0VCd2tGVFVOQ2lnbUIwRk9HaUVLRnpvNk1nOFBLQk1UR3l0TUx5cFZPWjhUUEVBMERCc3lTMDhBQUFJQUdQLzJBZHNCa1FBakFEc0FVMEJRQ0FFQ0JRa0JCQUluRndJREJBTktBQUlGQkFVQ0JINEFCQU1GQkFOOEFBRUFCUUlCQldjSEFRTUFBQU5YQndFREF3QmZCZ0VBQXdCUEpTUUJBRFkwTGl3a095VTdIQnNRRGdBakFTTUlCaFFyRnlJdUFqVTBOamNISnpjK0FqTXlGaFlWRkFZR0J6NENOek1VRGdJSEJnWW5NalkzSmlZMU5EWXpNaGMyTmpVMEppTWlCZ2NHRlJTN0pUQWNDd3NKTEE5UUhreFNKeXN1RXgwMElSQXZNQlFURmlwQUtoczhIUk1wRkFZSUloSU5CeUFyR2c0ZFRUY3JDaHNwTEJBY0pCVTFEVjhrUWlrZExCUWVWRm9sQkJjdUpnSW5NU2NER1I4U0ZoTUREQW9VR3dNeGJ5c2xFbDVxVXk0bkFBQUQvNnYrZXdKUkFZMEFNd0JHQUZVQVowQmtJUllDQkFZa0Z3c0RCUVJNQVFjQkEwb0FBd0lHQWdNR2ZnQUVCZ1VHQkFWK0FBSUFCZ1FDQm1jSkFRVUFBUWNGQVdjS0FRY0FBQWRYQ2dFSEJ3QmZDQUVBQndCUFNFYzFOQUVBUjFWSVZUNDhORVkxUmlrb0l5SWZIUkFPQURNQk13c0dGQ3NUSWlZbU5UUStBemMzRGdJaklpWW1OVFEyTndjbk5qWTNOall6TWhZVk56TURQZ0kzTXc0Q0J3Y3dEZ01UTWpZMk56WTJOVFFqSWc0RUZSUVdBekkyTmpjM0RnVVZGQllKSVNvVE5WTmZWeHdpQ0NRekhpUW1EUlVOUVEwak94MGpYam9wSnk1MnppZENMZ29VQlROVU5rNGFNa2RZZUNGQ09oWVFJQ0lWTURFdEl4VVNwU0kxTVJsUEJ5OUNSajBtSC81N0lpd1FJVVJCT1NzTlJ3a2ZHQ2s0RmhzM0VVQU5Ka1FpS0RzaEtFRCttQmM2TlEwTVAwa2NrekZIU0RFQmtEZFVMQ0pLSUNnclJWQk9PdzBPQi82Q0xVNHltZ1FaS0RNOFFDQWZGQUFBQUFBQkFEVC9MQUhLQWlVQUtBQktRRWNLQVFJQkZnc0NBd0luQVFBRElBRUZBQjhCQkFVRlNnQUZBQVFGQkdNQUFnSUJYd0FCQVkxTEFBTURBRjhHQVFBQWl3Qk1BUUFrSWgwYkZCSVBEUWdHQUNnQktBY05GQ3NGSWlZMU5EWTJNeklXRndjbUppTWlGUlFXTXpJMk54VTNGUlFHSXlJbUp6VVdGak15TmpVMUJnRXNjSWhDZEVvdFR4b2dIRDRka2toR0xFWWRBejlIRXlZTUN4a1FGeDBYQ29XUFpIdzdFZzFXQ2hIQVhHQVVFQjhDbGtSUUNBUldCQVVkSXpRREFBQUJBRlAvTVFKVkF2Z0FKUUJPUUVzYUFRTUdCQUVCQWdNQkFBRURTZ0FIQXdJREJ3SitBQUVJQVFBQkFHUUFCUVdFU3dBREF3WmZBQVlHalVzRUFRSUNnd0pNQVFBakloOGRGaFVVRXhBT0RBc0lCZ0FsQVNVSkRSUXJCU0ltSnpVV0ZqTXlOalUxSXhFMEl5SUdGUkVqRVRNVkZBWUhNelkyTXpJV0ZSRXpGUlFCMlJRakN3a1pEeGNhUEc5VFBtcHFCQUlIR2xjelgyVXZ6d2NGVWdNR0dSMUVBVkIrWkZ2KzhRTDR5eGt5RUNrcFhtZis5SlNPQUFBQUFBSUFOUDlxQXh3QytBQW1BRE1BbkV1d0dWQllRQmdtQWdJSEFUTVNBZ1lIRGdFQ0Joc0JCQUljQVFVRUJVb2JRQmdtQWdJSEFUTVNBZ1lIRGdFREJoc0JCQUljQVFVRUJVcFpTN0FaVUZoQUlnQUVBQVVFQldNQUFBQ0VTd0FIQndGZkFBRUJqVXNBQmdZQ1h3TUJBZ0tMQWt3YlFDWUFCQUFGQkFWakFBQUFoRXNBQndjQlh3QUJBWTFMQUFNRGcwc0FCZ1lDWHdBQ0Fvc0NURmxBQ3lVcEpTWVVKU0lRQ0EwY0t3RXpGVFl6TWhZV0ZSUUdJeUltSnlNSEl4RUdCaFVVRmpNeU5qY1ZCZ1lqSWlZbU5UUTJOeGNVRmpNeU5qVTBKaVlqSWdjQk9Hb21LSENET1hSb1BFd1dCeFZPU1ZOV1B4TXFGUkU1RzBScVBJdDVhanRPUGtZbFZFUXFKZ0w0MlFWS2ZrNkhrUzhmUkFHbUpaRnZabDhHQjFJRkNENThYWlhJS2ZSaFpHTmRPRll4QmdBQkFCQUFBQUdRQXYwQUhnQjdRQThUQVFZRkZBd0NCd1lMQVFRSEEwcExzQ1pRV0VBbUNna0NBd0lCQUFFREFHVUFCZ1lGWHdBRkJZUkxDQUVFQkFkZEFBY0hoVXNBQVFHREFVd2JRQ1FBQlFBR0J3VUdad29KQWdNQ0FRQUJBd0JsQ0FFRUJBZGRBQWNIaFVzQUFRR0RBVXhaUUJJQUFBQWVBQjRSRWlVbEVSRVJFUkVMRFIwckFSVWpFU01SSXpVek5TTTFOelUwTmpNeUZoY0hKaVlqSWhVVk14VWpGUUZQZW1wWldWdGJYMVVqT2hRYkVTb1dUNFdGQVZKSy92Z0JDRXA0TWlFaVoxY01CMUVGQ1dralVYZ0FBQUlBS3YvMkFnZ0NKZ0FjQURJQWhFQVBFd0VHQlFjQkJ3WUNTaGtCQkFGSlM3QVpVRmhBSVFBR0FBY0VCZ2RuQUFVRkFWOENBUUVCalVzSkFRUUVBRjhEQ0FJQUFJc0FUQnRBS1FBR0FBY0VCZ2RuQUFJQ2hVc0FCUVVCWHdBQkFZMUxBQU1EZzBzSkFRUUVBRjhJQVFBQWl3Qk1XVUFiSGgwQkFDNHNLeWtsSXgweUhqSVlGeFlWRUE0QUhBRWNDZzBVS3hjaUppWTFORFkzTlNZbU5UUTJOak15RmhZWE16Y3pFU01uSXdZR0p6STJOVFUwSmlNaUJoVVVGak16RlNNaUJoVVVGdTgxV2pZNlJqSTNPRk1wTmtNb0RRTU5WVTRXQmhSVkpWUkFSVTgwT1R4QkR4dENQa01LSVVRMU1rc01CUTQrTFRNL0hSa21GVXI5NUVzbE1GVmNWeHhoV1NZakpTVk5MQ2dvTFFBQS8vOEFLLy8yQWkwQ0pRSUdCR2NBQUFBQkFEdi85Z0lJQWh3QUpRQnFRQXNIQVFNQ0FVb2lBUVFCU1V1d0dWQllRQnNBQWdBREJBSURad1VCQVFHRlN3QUVCQUJmQmdjQ0FBQ0xBRXdiUUI4QUFnQURCQUlEWndVQkFRR0ZTd0FHQm9OTEFBUUVBRjhIQVFBQWl3Qk1XVUFWQVFBaElCOGVHeGtWRXhJUURRd0FKUUVsQ0EwVUt4Y2lKaVkxTkRZM05TWW1OVFV6RlJRV016TVZJeUlHRlJRV016STJOUkV6RVNNbkl3WUc4VE5TTURBNE1qZGlPMFVORXpzMk9EQlNSR1JQRmdVVlZBb2tSVEV5UmhFRkRrQS9jV2s4Tmswc0tDY3VYRmNCSHYza1N5VXdBQU1BQS8vMkFtc0NKUUFxQURBQU53Q3FTN0FaVUZoQUN3d0JDUU1uSVFJQUJ3SktHMEFMREFFSkJDY2hBZ0FIQWtwWlM3QVpVRmhBSndvRkFnSU1CZ0lCQndJQlpnNEJDUWtEWHdRQkF3T05TdzhMQWdjSEFGOElEUUlBQUlzQVRCdEFLd29GQWdJTUJnSUJCd0lCWmdBRUJJVkxEZ0VKQ1FOZkFBTURqVXNQQ3dJSEJ3QmZDQTBDQUFDTEFFeFpRQ2t5TVN3ckFRQTFOREUzTWpjdUxTc3dMREFsSXgwY0dSZ1hGaEVRQ2dnR0JRUURBQ29CS2hBTkZDc0ZJaVluSXpVek5qWXpNaFlYTXpZMk56TU9BaFVWTXhVakZSUVdNekkyTnhVR0JpTWlKaWNqQmdZRElnY2hKaVlETWpZM0lSWVdBUTVkZHdVeU13cDJZVHRPR1FZRkVBeFZCdzBJVWxJWUVRY1NCQWNrRUNnMERRZ1hUQ3R6RHdFTkJqNUdTVUFEL3ZBRFFBcUFmVVp6ZVNrcEVTZ1BGa2RTSmcxR2JTQVlCQUZRQlFna0xpSXdBZGVVU1V2K2dGQldVMU1BQUFNQUxmLzJBMWNDSmdBcEFEUUFPd0JuUUdRWURRSUNBeGtTREFNQkFpY0JDQXNEU2dBQkFBa0xBUWxsQUFZQUN3Z0dDMlVGQVFJQ0ExOEVBUU1EalVzT0NnMERDQWdBWHdjTUFnQUFpd0JNTmpVcktnRUFPVGcxT3pZN01DNHFOQ3MwSlNNZ0h4MGJGaFFSRHdvSUJnUUFLUUVwRHcwVUt4Y2lKalUwTnpjMU5DTWlCZ2NuTmpZek1oYzJOak15RmhjVkppWWpJZ1lISVJVVUJpTWlKaWNHQmljeU5qVTFCd1lHRlJRV0JUSTJOU0VXRnRsTFlmTmdaaVpMSmlJcllUTjVMQ0ZnUVRkVktTNVJNa3hUQWdGdGRtbytheDBtWVRVOVRVZFBUekFCcXo4OC92MEZTUXBUVWFRR0F5Wm9GQk5LRmhoVUtDd1NFMVVWRTF4U09uR0ZPam82T2xKSlF6QURBakkxS0NnRFZVRkxTd0FBQUFBQ0FEci82UUdBQWYwQUd3QW1BQjlBSENNZEd4b1RCUUVBQVVvQkFRRkhBQUFCQUlNQUFRRjBLaHNDRFJZckZ5YzNMZ0kxTlRRMk56Y3pGeFlXRlJRSEJ4UVdGak15TmpjWEp4VTNOalUwSnljT0F1Y2JCQ1JGTFFrWHFSWmdBd1FNeENNc0R4UW5JQlRPWkFjRVJoRU9BaGNORFEwbFJUeU5HQ0FRY284RUNBVUdDWlFjSkJFTkhCYmtlVW9GQkFJR2JRd1JHUUFBQUFJQUEvLzJBam9DSmdBZkFDVUFTRUJGRndFRkJCZ0JCZ1VDU2dBSkFBSUFDUUpsQXdFQUJ3RUVCUUFFWlFvQkNBZ0JYd0FCQVkxTEFBVUZCbDhBQmdhTEJrd2hJQ01pSUNVaEpSSWxJaEVVRWlRUUN3MGNLemN6TkRVME5qTXlGaGNoQmhVVUZTRVZJUllXTXpJMk54VUdCaU1pSmljakFTSUhNeVltQXpDRWNtbDNBdjZXQXdHYy9tMFFVRGt5VVM0cFZEaG1oaFU0QVNkaEh2VUtPUFVLQ29XWWZuTVpIQVlGUGpnMkVoVlZFeEpqWGdFZllpazVBQUFBQWdBUi8vWUM1QUlsQUN3QU13REtRQkltQVFnREZBRUVDQ2NCQ1FRVkFRVUpCRXBMc0NKUVdFQXFDd0VDQUFjR0FnTUlBQU5uQUFnQUNRVUlDV2NNQVFvS0FsOEFBZ0tOU3dBRUJBVmZBQVVGaXdWTUcwdXdKMUJZUUM4QUJ3TUFCMWNMQVFJQUJnRURDQUFEWndBSUFBa0ZDQWxuREFFS0NnSmZBQUlDalVzQUJBUUZYd0FGQllzRlRCdEFNQUFBQUFjREFBZG5Dd0VCQmdFRENBRURad0FJQUFrRkNBbG5EQUVLQ2dKZkFBSUNqVXNBQkFRRlh3QUZCWXNGVEZsWlFCWXVMVEV3TFRNdU15c3BKQ0VTSlNJVEloRWlEUTBkS3pjME5qTXlGaGMyTmpNeUZoVVZJUllXTXpJMk54VUdCaU1pSmljbUppTWlCaFVVRmpNeU54VUdCaU1pSmdFaUJnY3pKaVlSVTBjYU1Cd09nV0JxZXY2V0FsTkxORkVyS0ZNNWNwSUZHQ3NaSXlzakh5RVRDQjBhUkVVQjd6bEZCdjRCTzhFL1NnVUJiSFdEY1RwVFdCTVRXQk1SZzRBQkJCNGRHeUFKVEFNRlNRRk5Ta1EvVHdBQUFBQUJBQWdBQUFHUEF2MEFGd0JhUUFvT0FRVUVEd0VEQlFKS1M3QW1VRmhBSEFBRkJRUmZBQVFFaEVzQ0FRQUFBMTBHQVFNRGhVc0FBUUdEQVV3YlFCb0FCQUFGQXdRRlp3SUJBQUFEWFFZQkF3T0ZTd0FCQVlNQlRGbEFDaE1sSXhFUkVSQUhEUnNyQVNNUkl4RWpOVE0xTkRZek1oWVhCeVltSXlJR0ZSVXpBVldBYW1OalcxVWlQQllhRXlnV0xTS0FBY24rTndISlV5cGxVZ3NJVUFVSU5TNG9BQU1BTS84TEFoY0NKZ0FxQURjQVF3QzlTN0FaVUZoQUhDY0JCUU1hQVFJR0ZRRUlBVHNDQWdjSUNRVUNBQWNGU2dZQkFFY2JRQnduQVFVRUdnRUNCaFVCQ0FFN0FnSUhDQWtGQWdBSEJVb0dBUUJIV1V1d0dWQllRQ2dBQmdBQ0FRWUNad0FCQUFnSEFRaG5DUUVGQlFOZkJBRURBNDFMQ2dFSEJ3QmZBQUFBaHdCTUcwQXNBQVlBQWdFR0FtY0FBUUFJQndFSVp3QUVCSVZMQ1FFRkJRTmZBQU1EalVzS0FRY0hBRjhBQUFDSEFFeFpRQmc1T0N3clB6MDRRemxETWpBck55dzNFeVVxSkNzTERSa3JKUlFIRmhZWEJ5WW1Kd1lHSnlZbU5UUTJNeklXRnpZMU5UUTNJd1lHSXlJbU5UUTJOak15RnpNM013Y2lCZ2NHRmpNeU5qVTFOQ1lETWpZM0ppWWpJZ1lWRkJZQ0Z5NExFZ2RBQlEwSEhGQTVWR05XVFRWWEhRa0RBeDFVTm1Sdk1XQkdham9FQzFyc1IwTUJBa1JEVFVBK1p5ODZFQlJITEN3b01SQlpSeEFvRkJrTkhBc1VIQUVCT3pvNE94OGFKaU1hSlNVcktJaDdUSGhGVWtoUFhVNVVYbHBLRGxCYi9Zb1lFeFlpR2hZV0hRQUFBQUFCLy84QUFBR3hBdmdBTXdCRlFFSWRHZ0lGQXpNQ0FnY0JBa29BQmdRREJBWURmZ0FDQndBSEFnQitBQU1BQVFjREFXY0FCUUFIQWdVSGFBQUVCSVJMQUFBQWd3Qk1KQ2tpRXlZb0l4QUlEUndySVNNUkppWWpJZ1lWRkJZWEZoVVVJeUltSmpVME5qWXpNaFlYRVRNUkZqTXlOalUwSmljbU5UUTJNeklXRlJRR0l5SW1Kd0VPYWdvVENpSWFDQTBXSEJJbUdTVTVIZ2tWQzJvWEZCMFpDZ3dXRVEwYk5VRTFDeGNMQWJFQ0F5UVVEeDhPR1JBZUh6b3FLallaQXdJQkJ2N2VCU01VRVI0TUZoTVBFRUUrT2tJREFnQUFBQUFCQUFBQUFBR0xBdmdBTmdCbFFHSWRHZ0lIQlNnTkFnUURLUXdDQ2dJMUFRSUJBQVJLQUFjSkFRUUNCd1JuQ3dFQ0FBQUJBZ0JuQUFvTUFRRU5DZ0ZuQUFZR2hFc0FBd01GWHdnQkJRV0ZTdzRCRFEyRERVd0FBQUEyQURZeU1TOHVMU3NuSlJFakZCSVNKQ0lTSWc4TkhTc3pFU1lqSWdZSEl6WTJNeklYTlNZbUl5SUdCeU0yTmpNeUZoYzFNeEVXRmpNeU56TUdCaU1pSnhVV0ZqTXlOek1HQmlNaUppY1ZrQkVTRXhvSE9RTkFMeEVOQ0JJSkV4b0hPUU5BTHdnUEIyb0pFUWtuRFRvRlBpNFFFQWtSQ1NjTk9nVStMZ2dRQ0FFTUN4MGhRVVlIWmdVSEhTSkNSZ1FENi83cUJRYy9RMFVJWmdVSFAwTkdCUVRpQUFBQUF3QWRBQUFCZWdMNEFCRUFHQUFmQUNCQUhSMGNGaFVSQ3dnQ0NBQUJBVW9BQVFHRVN3QUFBSU1BVEJnUUFnMFdLeUVqTlNZbU5UUTJOelV6RlJZV0ZSUUdCeWNVRmhjMUJnWVhOQ1luRlRZMkFRRnFOa1JGTldvMlEwUTFwaUViR3lIaElSb2FJZG9RV1R3OFdSRFUxUkJaT3p4WUVLUWhOZzdLRGpVaUlqVU95UTQxQUFBQUFBSUFVLy8yQTY0Q0pnQXZBRGtBbFVBVUhoZ0NBZ1ltQVFFQ0tRRUtBUzBxQWdrS0JFcExzQmxRV0VBa0FBRUFDZ2tCQ21jRUFRSUNCbDhJQndJR0JvVkxEQUVKQ1FCZEJRTUxBd0FBZ3dCTUcwQXNBQUVBQ2drQkNtY0FCZ2FGU3dRQkFnSUhYd2dCQndlTlN3VUJBd09EU3d3QkNRa0FYd3NCQUFDTEFFeFpRQ0V4TUFFQU5UUXdPVEU1SXlFZEd4Y1dGUlFSRHcwTUNRY0ZCQUF2QVM4TkRSUXJCU0ltTlRRM05UUWpJZ1lWRVNNUk5DTWlCaFVSSXhFekZ6TTJOak15RnpNMk5qTXlGaFVWRmhZWEJ5WW1KeFFHSnpJMk5UVWlCaFVVRmdMVk5FV1laRVEvYW1OSFBHcFNFQVlYVlRCOEtBZ1pXVE5hWEJvbkR4TVJIZzVCVkJjVU1pRVZDamc0Y0FsdGdsWlcvdDRCVW54ZVgvN3ZBaHhJS1NsWEt5eGVhSVVEQ2dZOEJRZ0RVbFJHSWlnWElCWVNHUUFBQUFJQVUvLzJBbllDSmdBaUFDd0FpRUFURVFFQ0JCa0JBUUljQVFjQklCMENCZ2NFU2t1d0dWQllRQ0VBQVFBSEJnRUhad0FDQWdSZkJRRUVCSVZMQ1FFR0JnQmZBd2dDQUFDTEFFd2JRQ2tBQVFBSEJnRUhad0FFQklWTEFBSUNCVjhBQlFXTlN3QURBNE5MQ1FFR0JnQmZDQUVBQUlzQVRGbEFHeVFqQVFBb0p5TXNKQ3dXRkJBUERnMEtDQVVFQUNJQklnb05GQ3NGSWlZMU5EYzFOQ1lqSWdZVkVTTVJNeGN6TmpZek1oWVZGUllXRndjbUppY1VCaWN5TmpVMUlnWVZGQllCblRSRWx6VTRVa0JxVXc4R0dsczZXR1FhS0E0VEVSd1BRbE1YRXpJZ0ZBbzRPSEFKYTBSQVlGMys3d0ljU0Nvb1lHYUZBd29HUEFVSUExSlVSaUlvRnlBV0Voa0FBQUFDQUZQL0N3SmpBaVlBSkFBdkFIbEFGQmdCQWdRTkFRY0JLeUlDQmdja0FnSUFCZ1JLUzdBWlVGaEFJd0FCQUFjR0FRZG5BQUlDQkY4RkFRUUVoVXNBQXdPRFN3QUdCZ0JmQUFBQWh3Qk1HMEFuQUFFQUJ3WUJCMmNBQkFTRlN3QUNBZ1ZmQUFVRmpVc0FBd09EU3dBR0JnQmZBQUFBaHdCTVdVQUxJeW9rRVJNakpDUUlEUndyQlNZbkJnWWpJaVkxTkRZek1oY1JOQ01pQmhVUkl4RXpGek0yTmpNeUZoVVJGQWNXRnlVVUZqTXlOamNtSXlJR0FpY1BGUlJETUR4S1JUWW1KVzFTUUdwVER3Y2FXemxZWkFjcEcvN2VGaG9hSndjZ0h4d2Q5U1loSHlNOU56ZzdFQUZwZm1CZC91OENIRWdxS0dCbS9uc2tIek5FWkJNZUppZ1ZIUUFBQUFBQ0FDei82UUcwQWYwQUdnQXBBRGRBRGhJQkFBRUJTaDBjRXdJQkJRRklTN0FWVUZoQUN3QUJBQUdEQUFBQWd3Qk1HMEFKQUFFQUFZTUFBQUIwV2JVaEh4MENEUlVyQVJjSEZoWVhGaFlWRkFZR0J3Y2pMZ0luTlRZMk5UVTBKaWMzQnhFV0ZqTXlOalkxTkNZbkppWUJTdzhPQ2hvSUZpWXlUaWtZSGdFeFN5d09DUUlEcHkwc0t3VUdHQk1tRFJBVUFmMGNCeFlzRFNOQ0tDdFBVaTRiQ0JrYURCNEVIQ1dyRlNrVUhCTCsxaFlTSURvbExrb1dIU1FBQUFNQUxQL1NBYjhDRkFBaUFDc0FOZ0JHUUJ3YUdCY1ZCQUFCQVVvd0x5WWxKQnNJQndZRkFnRU1BVWdXQVFCSFM3QVZVRmhBQ3dBQkFBR0RBQUFBZ3dCTUcwQUpBQUVBQVlNQUFBQjBXYlkwTWhJUkFnMFVLd0VYQnhZV0Z6Y1hCeGNXRmhVVUJnWUhCeU1tSmljSEp6Y21KelUyTmpVMU5DWW5Od2NWTnlZbUp5WW1GelFtSndjV0ZqTXlOallCU3c4T0JBa0ZQQ1ZJQVJZbU1rNHBHQjRCTHlNc0pTVVZGUTRKQWdPbkxWOEJBd0VRRkZjTkNIUXBLZ1VHR0JNQi9Sd0hDUkVJWEJsdUFpTkNLQ3RQVWk0YkNCZ01ReGs1QmdZZUJCd2xxeFVwRkJ3UzRKSUNCUUlkSk04WkxCT3hGUkVnT2dBQ0FESC80d0lkQWpNQUl3QXJBRDlBUEJRVEVRc0VBQUVuSmlNS0JBTUdBd0FnSHgwREFnTURTaElCQVVnZUFRSkhBQUFBQVY4QUFRR05Td0FEQXdKZkFBSUNpd0pNTFNvbEpnUU5HQ3MzRmhZWEV5WW1JeUlHQnpVMk5qTXlGaGMzRndjV0ZoVVVCaU1pSmljSEp6Y21KaWNsTkNjREZqTXlOb3dFRFFyS0VDY1pLa2NoSDBZd0owRWFKRGtsSGlHR2VDUS9HaVk2SnhNZUJ3RitFc2NlTFVwRTVoVW5EUUVaQ3cwVUUxMFJFUk1STVNvMEpHUS9ncFlSRURRcU5oUTFJR0krSy83c0ZXY0FBUC8vQURQLy9nT0tBaXdCUndFVUFBQUNJa0FBd0FBQUNiRUFBN2dDSXJBekt3QUFBQUFFQUQzLzRRT1VBak1BS0FBd0FEZ0FQd0RYUzdBdFVGaEFKQm9aRnd3RUFnTTJMQklMQkFFQ055c25Bd2NKSlNRaUF3QUhCRW9ZQVFOSUl3RUFSeHRBSkJvWkZ3d0VBZ00yTEJJTEJBRUNOeXNuQXdjSkpTUWlBd0FJQkVvWUFRTklJd0VBUjFsTHNDMVFXRUFrQUFFQUNRY0JDV1VHQVFJQ0ExOEVBUU1EalVzTUNBc0RCd2NBWHdVS0FnQUFpd0JNRzBBdkFBRUFDUWNCQ1dVR0FRSUNBMThFQVFNRGpVc0xBUWNIQUY4RkNnSUFBSXRMREFFSUNBQmZCUW9DQUFDTEFFeFpRQ002T1RJeEFRQTlQRGsvT2o4eE9ESTRMeTBoSHhZVUVBNEpCd1VFQUNnQktBME5GQ3NGSWlZMU5TRW1KaU1pQmdjMU5qWXpNaFlYTmpZek1oYzNGd2NXRmhVVUJpTWlKd2NuTnlZbkJoTVVGeE1tSXlJR0V6STJOVFFuQXhZRk1qWTNJeFFXQVNCcWVRRm1BbEZKTlZFcUtWRTVRMmdoSUdWQVNEZ2VQQ01mSTRaMVFESWlQQ1lMQ2tGMkZzUWZNRWhEalVsQkVMOGQvcXc0UXdiNU9naUNjVHBYVkJNVFdCTVJNak15TXlBdEp6UWtaVUdHa0J3ekpqa05EMlFCR0ZBdUFTZ1ZZZjdoWUY5RUsvN2dEZ1ZIUmo5T0FBQUFCQUE5Ly9nRGxBSW1BQ0FBSndBdUFEVUFyMEFQREFFQ0F4SUxBZ2NDSHdFSUN3TktTN0F0VUZoQUxRQUhBQWtMQndsbEFBRUFDd2dCQzJVTkJnSUNBZ05mQkFFREE0MUxEd29PQXdnSUFGOEZEQUlBQUlzQVRCdEFPQUFIQUFrTEJ3bGxBQUVBQ3dnQkMyVU5CZ0lDQWdOZkJBRURBNDFMRGdFSUNBQmZCUXdDQUFDTFN3OEJDZ29BWHdVTUFnQUFpd0JNV1VBck1DOHBLQ0loQVFBek1pODFNRFVzS3lndUtTNGxKQ0VuSWljZEd4WVVFQTRKQndVRUFDQUJJQkFORkNzRklpWTFOU0VtSmlNaUJnYzFOall6TWhZWE5qWXpNaFlXRlJRR0l5SW1Kd1lCSWdZSElTWW1BekkyTnlFV0ZnVXlOamNqRkJZQklHcDVBV1lDVVVrMVVTb3BVVGxEYUNFZ1pVQkljVUNHZFQxaUlFRUJBVUJEQmdFVEJrTS9Ra0VHL3VzR1JQN0dPRU1HK1RvSWduRTZWMVFURTFnVEVUSXpNak5CZlZxR2tESXlaQUhYVFV0TFRmNkFUazVQVFFWSFJqOU9BQUFDQURQLzlnT0pBaVlBSkFBd0FFaEFSUW9CQWdFVkN3SURBaU1CQUFNRFNnY0JBZ0lCWHdRQkFRR05Td2tHQWdNREFGOEZDQUlBQUlzQVRDWWxBUUFzS2lVd0pqQWlJQnNaRkJJT0RBZ0dBQ1FCSkFvTkZDc0ZJaVltTlRRMk16SVdGd2NtSXlJR0ZSUVdNekkzSmpVME5qTXlGaFlWRkFZaklpY0dOekkyTlRRbUl5SUdGUlFXQVRGUGNUNktkQndyRVNFWUpVTklTRTFETlJ1RWVVMXdQWVI1YWtOQzhVcEVSVXBIUjBRS1IzNVNpbzhJQmxRS1kxNWJaREUrVVlLV1JIMVhncFpCUVZobldWdGxZbDVhWmdBQUFBTUFNLy9pQTRrQ1BRQXRBRFVBUFFCYVFGY2ZIaHdLQkFJQlBEc3hNQlVMQmdNQ0xDb3BKd1FBQXdOS0hRRUJTQ2dCQUVjR0FRSUNBVjhFQVFFQmpVc0pCd0lEQXdCZkJRZ0NBQUNMQUV3M05nRUFOajAzUFRReUppUWJHUlFTRGd3SUJnQXRBUzBLRFJRckJTSW1KalUwTmpNeUZoY0hKaU1pQmhVVUZqTXlOeVkxTkRZek1oYzNGd2NXRmhVVUJpTWlKd2NuTnlZbkJoTVVGeE1tSXlJR0V6STJOVFFuQXhZQk1VOXhQb3AwSENzUklSZ2xRMGhJVFVNMUc0UjVOaTBXUFJZckw0UjVPQzRWUGhjR0JVSmlIS3NaSUVkSGowcEVINnNhQ2tkK1VvcVBDQVpVQ21OZVcyUXhQbEdDbGhFb0l5a2tjMHlDbGhNbklpa0ZCVUVCR0ZVd0FUc0tZdjdpWjFsWU1QN0RDd0FBQUFFQVR3QUFBaXNDSEFBU0FDSkFId2tHQWdNQkFVb0FBd01CWFFBQkFZVkxBZ0VBQUlNQVRDSVZGUkVFRFJnck54VWpOVFEyTnpVekZSWVdGUlVqTlRRaklybHFZbFZxVjJScWhJUjBkSGhnYVF2UXp3dHBZWGgwaFFBQUFnQlcveEFDYmdJY0FCNEFKZ0JFUUVFY0FRSUdCZ0VBQXdjQkFRQURTZ0FHQUFJREJnSm5Cd0VGQlFSZEFBUUVoVXNBQXdPRFN3QUFBQUZmQUFFQmh3Rk1JQjhqSVI4bUlDWWhFU1VsSWdnTkdTc2xGUlF6TWpZM0ZRWUdJeUltTlRVMEppTWpGU01STXpJV0ZSUUdCeFlXQXlNVk16STJOVFFCOVQ4UUd3OFBLeFpPUlQxSlJXclZZVzA1THk4MTBtTmdORHcvamtvRkJWTUlCbFpHaVVwVzFRSWNUMDg1UkJNVFZRRkhyUzRyVkFBQUFRQlRBQUFCT1FJZ0FBd0FIa0FiQ0FBQ0FBRUJTZ3dCQVVnQUFRR0ZTd0FBQUlNQVRCRVVBZzBXS3dFR0JoVVJJeEV6RnpNMk5qY0JPVGhFYWxNT0JSYzhMUUcvQlZoRy91UUNIRjRvTXdjQUFBQUFBUUJUQUFBQ1ZRSW1BQjhBZDB1d0dWQllRQTRkSEFNREFRQVdDZ1FEQXdFQ1NodEFFUU1CQkFBZEhBSUJCQllLQkFNREFRTktXVXV3R1ZCWVFCUUNBUUVCQUY4RkJBWURBQUNOU3dBREE0TURUQnRBR0FBRUJJVkxBZ0VCQVFCZkJRWUNBQUNOU3dBREE0TURURmxBRXdFQUd4a1ZGQk1TRGd3SUJnQWZBUjhIRFJRckFUSVdGd2NtSmlNaUJnY21KaU1pQmdZVkVTTVJNeGN6TmpZek1oY1ZOallDR1EwaURRc0xMUlVYT1JvUUxSNGZPQ1JxVXc0RkcwMHZKUjRhUndJbUF3TmtBd1FORkE0UEowZzAvdVFDSEY0eU5ncytJU2dBQUFJQUFQLzJBZG9DSmdBZ0FDb0Fta3V3R1ZCWVFCVURBUUVBSFFzRUF3TUJEZ0VGQXhJUEFnWUZCRW9iUUJVREFRUUFIUXNFQXdNQkRnRUZBeElQQWdZRkJFcFpTN0FaVUZoQUh3QURBQVVHQXdWbkFBRUJBRjhFQndJQUFJMUxBQVlHQW1BQUFnS0xBa3diUUNNQUF3QUZCZ01GWndBRUJJVkxBQUVCQUY4SEFRQUFqVXNBQmdZQ1lBQUNBb3NDVEZsQUZRRUFLQ1lpSVJ3Ykdoa1dGQWdHQUNBQklBZ05GQ3NCTWhZWEJ5WW1JeUlHRlJVV0ZoY0hKaVluRkFZaklpWTFORGNSTXhjek5qWURJZ1lWRkJZek1qWTFBWjhOSUE0SkRCOE5RVmNaS1E4VEVSOE9RRWcwUlpkVERnVWJVTkV4SVJRVUZ4TUNKZ01EWkFNRVdFOUJBd29HUEFVSUExSlVPRGh3Q1FFOVhpODUvbmNnRmhJWklpZ0FBZ0FBLy9ZQ21BSW1BQzBBTndDclM3QVpVRmhBR0NzcUF3TUJBQ1FTQ2dRRUJBRVZBUWNFR1JZQ0NBY0VTaHRBR3dNQkJRQXJLZ0lCQlNRU0NnUUVCQUVWQVFjRUdSWUNDQWNGU2xsTHNCbFFXRUFoQUFRQUJ3Z0VCMmNDQVFFQkFGOEdCUWtEQUFDTlN3QUlDQU5nQUFNRGl3Tk1HMEFsQUFRQUJ3Z0VCMmNBQlFXRlN3SUJBUUVBWHdZSkFnQUFqVXNBQ0FnRFlBQURBNHNEVEZsQUdRRUFOVE12TGlrbkl5SWhJQjBiRGd3SUJnQXRBUzBLRFJRckFUSVdGd2NtSmlNaUJnY21KaU1pQmdZVkZSWVdGd2NtSmljVUJpTWlKalUwTnhFekZ6TTJOak15RnhVMk5nRWlCaFVVRmpNeU5qVUNYUTBoRFFvTExoUVhPUm9RTFI0Zk9DUVpLUThURVI4T1FFZzBSWmRURGdVYlRTOGxIaDFFL2w4eElSUVVGeE1DSmdNRFpBTUVEUlFPRHlkSU5FRURDZ1k4QlFnRFVsUTRPSEFKQVQxZU1qWUxQaU1tL25jZ0ZoSVpJaWdBQVFBV0FBQUJjQUltQUEwQVAwQU1EUWdDQWdBQlNnVUFBZ0JJUzdBaVVGaEFFQUFDQWdCZkFBQUFoVXNBQVFHREFVd2JRQTRBQUFBQ0FRQUNad0FCQVlNQlRGbTFJeE1oQXcwWEt4TVdNekkyTnhFakVRWUdJeUluRmxsV0pWZ3VhaEllRWxwVUFpWWFEQTc5MmdIQUF3TVpBQUFDQUEvLzlnSnFBaVlBR0FBa0FHMUFFQWtFQWdFQ0VBRUVBd0pLRHdvQ0FraExzQ0pRV0VBZUFBTUFCQVVEQkdjQUFRRUNYd0FDQW9WTEFBVUZBRjhHQVFBQWl3Qk1HMEFjQUFJQUFRTUNBV2NBQXdBRUJRTUVad0FGQlFCZkJnRUFBSXNBVEZsQUV3RUFJeUVkR3hNUkRRc0lCZ0FZQVJnSERSUXJCU0ltTlRVR0JpTWlKelVXTXpJMk54RTJNeklXRmhVVUJqYzBKaU1pQmhVVUZqTXlOZ0crV0djU0hoSmFWRmxXSlZjdkp6UXlTeWxiQXpBbEpTOHZKU015Q201Zi9RTURHVk1hREE3KytDUXNTaXhLWUtrbE1ESW1KVEl3QUFBQUFRQVQvL1lCYmdMK0FCb0FUVUFQRXdFREFoUUhBZ0VEQmdFQUFRTktTN0FrVUZoQUZRQURBd0pmQUFJQ2hFc0FBUUVBWHdBQUFJc0FUQnRBRXdBQ0FBTUJBZ05uQUFFQkFGOEFBQUNMQUV4WnRpVWtKU0lFRFJnck54UUdJeUltSnpVV0ZqTXlOalVSTkRNeUZoY1ZKaVlqSWdZVjlrWlBGaWdRRUJzUUhTR1dHU2dMREI0UUhTR1ZSRnNHQ0ZNRkJTVWxBY3liQ0FWVUJBWWxKUUFBQUFFQVQvLzJBaUlDSEFBVUFGcTFBd0VBQXdGS1M3QVpVRmhBSFFBQ0FvVkxCUUVFQkFCZkFRRUFBSU5MQUFNREFHQUJBUUFBZ3dCTUcwQWJBQUlDaFVzRkFRUUVBRjBBQUFDRFN3QURBd0ZnQUFFQml3Rk1XVUFOQUFBQUZBQVVJeE1rRVFZTkdDc0JFU01uSXdZR0l5SW1OUkV6RVJRV016STJOVFVDSWxNUEJocGJPbGxqYWpVNFVVRUJULzZ4UnlvbllHVUJZZjYyUkVGaFhVUUFBQUFDQUFULzlnSndBaHdBRndBZkFITzFEZ0VHQ1FGS1M3QVpVRmhBS0FRQ0FnQUtDQUlGQ1FBRlpRQUJBWVZMQUFNREJsOEhBUVlHZzBzQUNRa0dZQWNCQmdhREJrd2JRQ1lFQWdJQUNnZ0NCUWtBQldVQUFRR0ZTd0FEQXdaZEFBWUdnMHNBQ1FrSFlBQUhCNHNIVEZsQUVCOGVIQm9USkJFUkVSRVJFUkFMRFIwckV6TTFNeFVYTlRNVk14VWpGU01uSXdZR0l5SW1OVFVqRnhRV016STJOeWNFUzJyL2FrNU9VdzhHR2xzNldXTkx0VFU0UjBJSC9RRXI4ZkVCSlNWTTNrY3FKMkJsSkExRVFVcEhBUUFBQWdCUC8vWURXUUltQUFzQUxRQ1VTN0FaVUZpMktpUUNBZ1FCU2h1MktpUUNDQVFCU2xsTHNCbFFXRUFrQUFVQkJBRUZCSDRBQVFFQVhRY0RDZ01BQUlWTEJnRUVCQUpnQ1FnTEF3SUNpd0pNRzBBc0FBVUJCQUVGQkg0SEFRTURoVXNBQVFFQVh3b0JBQUNOU3dBSUNJTkxCZ0VFQkFKZ0NRc0NBZ0tMQWt4WlFCOE5EQUVBS1NjaklpRWdIUnNaR0JVVEVSQU1MUTB0QndVQUN3RUxEQTBVS3dFeUZoVVVCaU1pSmpVME5nTWlKalVSTXhFVU16STJOVFV6RlJRek1qWTFFVE1SSXljakJnWWpJaWNqQmdZQjFCc2xKUnNjSXlPelcxdHFZMFUrYW1SSE8ycFREd1lYVlRCNktnZ1pXUUltSENJaUhCd2lJaHo5MEY1bkFXSCt0SU5YVm1XVmZWOWZBUkg5NUVjcEtGWXNLZ0FBLy84QVUvLzJBMTBDSmdFUENkTURyQUljd0FBQUNiRUFBcmdDSExBekt3QUFBUUFULy9ZQ1dnSW1BQ0FBWFVBT0d3RUVBUm9CQUFRTUFRSUFBMHBMc0JsUVdFQVhBQVFFQVY4RkFRRUJoVXNBQUFBQ1h3TUJBZ0tEQWt3YlFCOEFBUUdGU3dBRUJBVmZBQVVGalVzQUFnS0RTd0FBQUFOZkFBTURpd05NV1VBSkpTVWtFUk1qQmcwYUt4TVZGQll6TWpZMUVUTVJJeWNqQmdZaklpWTFOVFFtSXlJR0J6VTJOak15RnZBMU9GSkJhbE1RQmhsY09WbGtIaDRPSEEwUUt4ZEJTZ0dMdVVSQllWMEJFZjNrUnlvbllHWFJKeUlGQlUwR0NFMEFBQUQvLy8veC94QUNNUUlmQWdZQmt3QUFBQUwvOGY4S0FwSUNJd0FpQUM0QXlVdXdJbEJZUUJJUEFRSURHUllPQndRRkJRSWFBUVlGQTBvYlFCSVBBUUlFR1JZT0J3UUZCUUlhQVFZRkEwcFpTN0FpVUZoQUlBQUZBQVlIQlFab0FBSUNBMThFQVFNRGpVc0FCd2NBWHdFSUFnQUFod0JNRzB1d0oxQllRQ1FBQlFBR0J3VUdhQUFFQklWTEFBSUNBMThBQXdPTlN3QUhCd0JmQVFnQ0FBQ0hBRXdiUUNnQUJRQUdCd1VHYUFBRUJJVkxBQUlDQTE4QUF3T05Td0FCQVlkTEFBY0hBRjhJQVFBQWh3Qk1XVmxBRndFQUxTc25KUjRjR0JjVEVRc0tCZ1VBSWdFaUNRMFVLd1VpSmljbkF5TVRKeVltSXlJR0J6VTJOak15RmhjWEV6TURGelkyTXpJV0ZSUUdKelFtSXlJR0ZSUVdNekkyQWYxQVRSNURyWEh0VkE0Z0ZRZ1pEUkVrRXpjeUZFR1didFZLRkRValFFNU1BeVFkSHlJa0hSd2w5a3BQc2Y2OEFhUFpJaHdEQkZNRkNEYzJyd0VWL291MEZocFBPVUJSangwakpCNGZKQ0lBQWYvcC94QUNOZ0lqQURBQkZrdXdJbEJZUUJNU0FRSURLeHdaRVFvRkFBSWtJd0lHQVFOS0cwdXdKMUJZUUJNU0FRSUVLeHdaRVFvRkFBSWtJd0lHQVFOS0cwQVdFZ0VDQkNzY0dSRUtCUUFDSXdFRkFTUUJCZ1VFU2xsWlM3QU9VRmhBSUFBQUFnRUJBSEFBQWdJRFh3UUJBd09OU3dVQkFRRUdZQWdIQWdZR2h3Wk1HMHV3SWxCWVFDRUFBQUlCQWdBQmZnQUNBZ05mQkFFREE0MUxCUUVCQVFaZ0NBY0NCZ2FIQmt3YlM3QW5VRmhBSlFBQUFnRUNBQUYrQUFRRWhVc0FBZ0lEWHdBREE0MUxCUUVCQVFaZ0NBY0NCZ2FIQmt3YlFEQUFBQUlCQWdBQmZnQUVCSVZMQUFJQ0ExOEFBd09OU3dBQkFRWmdDQWNDQmdhSFN3QUZCUVpnQ0FjQ0JnYUhCa3haV1ZsQUVBQUFBREFBTHlVa0ZDWVlFaEVKRFJzckJ6VXpGUlF6TWpZMk56Y25KaVlqSWdZSE5UWTJNeklXRnhjVE13TVhGaFl6TWpZM0ZRWUdJeUltSnljSERnSWpGejBSQnd3U0Q0QmFEU0VWQ0JnTkVTTVVOeklUUkpOdTBsd1FKaUFLRlEwUUloZzlQeGs3VXhjbU1pbnd3RU1lQ0JzZjh1a2lIQU1FVXdVSU5UaTBBUnIraGVFcExnSURVd1VHU2thaXJDODdIQUFBQUFJQUR2LzJBbmNDSEFBV0FDSUFiRUFORFFvSEF3UUNEZ1FDQlFRQ1NrdXdHVkJZUUJzQUJBQUZCZ1FGYUFNQkFnS0ZTd0FHQmdCZkFRY0NBQUNMQUV3YlFCOEFCQUFGQmdRRmFBTUJBZ0tGU3dBQkFZTkxBQVlHQUY4SEFRQUFpd0JNV1VBVkFRQWhIeHNaRWhBTUN3a0lCZ1VBRmdFV0NBMFVLd1VpSmljbkJ5TVRBek1YTnpNREZ6WTJNeklXRlJRR0p6UW1JeUlHRlJRV016STJBZlV6UUJkY2lYaTh0SHAvZ1hlek9oQTBKRHBIUkFNaEd4d2dJUnNhSWdvdUk0blFBUlFCQ01QRC92aFRHUnhJTlRsS2doc2dJUndjSWlBQUFBQUIvNFgvRUFJU0Fod0FDd0FqUUNBSkJnTURBZ0FCU2dFQkFBQ0ZTd0FDQW9OTEFBTURod05NRWhJU0VRUU5HQ3NUQXpNWE56TURFeU1uQVNQUXVYbUFnSGkwdm5tRC91ZDRBUTBCRDhQRC92ais3TW4rUndBQUF2K0YveEFDZUFJY0FCWUFJZ0JBUUQwSEJBRURBZ0FWQ0FJRkFnSktBQUlBQlFZQ0JXZ0JBUUFBaFVzQUJnWURYd0FEQTR0TEJ3RUVCSWNFVEFBQUlSOGJHUUFXQUJZa0pCSVNDQTBZS3djQkF6TVhOek1ERnpZMk16SVdGUlFHSXlJbUp5Y0JBVFFtSXlJR0ZSUVdNekkyZXdGTHVYbUFnSGkwT3hFekl6dEhSVDR5UVJaWC91Z0NNeUViSENBaEd4b2k4QUg5QVEvRHcvNzRVeGtjU0RVNVNpNGpndjVIQVdnYklDRWNIQ0lnQUFBQUFmOTYveEFDRWdJY0FCY0FaRUFKRWc4TUNRUUVBZ0ZLUzdBT1VGaEFIZ0FBQkFFQkFIQURBUUlDaFVzQUJBU0RTd0FCQVFWZ0JnRUZCWWNGVEJ0QUh3QUFCQUVFQUFGK0F3RUNBb1ZMQUFRRWcwc0FBUUVGWUFZQkJRV0hCVXhaUUE0QUFBQVhBQllTRWhVU0VRY05HU3NITlRNVkZETXlOamNUQXpNWE56TURFeU1uQXc0Q0k0WStEZ2dWR3RXOGVvRi9lTEs4ZVlLNUdpc3pKL0RBUXg0YUtRRlpBUkhHeHY3My91M0gvczhzT3g4QUFRQlAveEFDSWdJY0FDSUFQRUE1RVFFQ0JBY0JBUUlHQVFBQkEwb0FCUU1FQXdVRWZnQURBNFZMQUFRRUFtQUFBZ0tMU3dBQkFRQmZBQUFBaHdCTUV5TVRLQ1VpQmcwYUt3VVVCaU1pSmljMUZoWXpNalkxTlRRMk55TUdJeUltTlJFekVSUVdNekkyTlRVekFpSjdmenBpTEM1b09VVkRBd0VFTjNWWlkybzFPRkZCYWdad2VoQVJYUlFXU1VVS0V5Y1VWR0JsQVdIK3RrUkJZVjFRLy84QU5QLzJBaGtDSlFJR0JDRUFBUC8vQURiL29BRm1BV2dCUmdCTEFLQXBtaVptQUFteEFBRzQvNkN3TXlzQS8vOEFOditnQVdjQmFBRkdBRTRBb0NtYUptWUFDYkVBQWJqL29MQXpLd0QvL3dBMi82QUFld0ZvQVVZQVR3Q2dLWm9tWmdBSnNRQUJ1UCtnc0RNckFQLy9BRGIvb0FJMkFPa0JSZ0JRQUtBcG1pWm1BQW14QUFHNC82Q3dNeXNBLy84QU52K2dBV1lBNlFGR0FGRUFvQ21hSm1ZQUNiRUFBYmovb0xBekt3RC8vd0EyL3hBQmNRRHBBVVlBVXdDZ0tab21aZ0FKc1FBQ3VQK2dzRE1yQVAvL0FDRC9tZ0VmQU9rQlJnQldBS0FwbWlabUFBbXhBQUc0LzZDd015c0EvLzhBRFArYUFPa0JMQUZHQUZjQW9DbWFKbVlBQ2JFQUFiai9vTEF6S3dELy93QWhBSThCWXdKcEFVY0lZd0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QUFBUjhCNWdMTEFVY0E2QUFBQVI4cG1pWm1BQW14QUFLNEFSK3dNeXNBQUFELy93QWhBUmtDVFFKb0FVY0JGQUFBQVI4cG1pWm1BQW14QUFPNEFSK3dNeXNBQUFELy93QTJBSThCWmdMbkFVY0lQd0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy8vLy9BUjhCR1FMbkFVY0p1Z0FBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QURBUjhBL2dMbkFVY0VPQUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFELy93QU1BUmtCaHdKcEFVY0oxUUFBQVI4cG1pWm1BQW14QUFHNEFSK3dNeXNBQUFBQUFRRGJBbTRCWkFQcEFCVUFCck1MQUFFd0t3RVZCZ1lWRkJZV0ZSUUdCelUyTmpVdUFpYzBOZ0ZqSVIwZklFUkVJaDBCSHg4QlF3UHBPZ2NkRXhZdk1od3ZRUWM1QngwU0dDOHhIQzVEQUFBQ0FEYi85Z0lZQXRVQURRQVpBQjlBSEFBREF3RmZBQUVCTFVzQUFnSUFYd0FBQUM0QVRDUWtKU01FQnhnckFSUUdCaU1pSmpVME5qWXpNaFlGRkJZek1qWTFOQ1lqSWdZQ0dEQnFXSHQxTDJwWGVuaitpVHRLU2owOVNrbzdBV1owcEZqRHJYU2tWOEd1akl1S2pZdUxpd0FBQUFFQUZRQUFBVGtDeWdBTUFDRkFIZ2tJQkFNQkFBRktBQUFBSmtzQ0FRRUJKd0ZNQUFBQURBQU1HZ01IRlNzekVUUTJOd1lHQndjbk56TVIwQUlDRFJ3U1RqYk1XQUhhSmowZERoZ1BQMFNnL1RZQUFBRUFKUUFBQWdVQzFBQWJBRE5BTUEwQkFBRU1BUUlBQVFFREFnTktBQUFBQVY4QUFRRXRTd0FDQWdOZEJBRURBeWNEVEFBQUFCc0FHeWNsS0FVSEZ5c3pOVGMrQWpVMEppTWlCZ2NuTmpZek1oWVZGQVlHQndjVklSVWx1VFpISkQ4ek1VOHFPU3h1VEdWMkxsVTVoQUZhVXJzM1VVc3NOamdrSWtja05XaFhPV0pnTm9FRlhnQUJBQ3YvOWdJSUF0UUFLZ0EvUUR3bEFRUUZKQUVEQkFNQkFnTVBBUUVDRGdFQUFRVktBQU1BQWdFREFtY0FCQVFGWHdBRkJTMUxBQUVCQUY4QUFBQXVBRXdsSkNFa0pTb0dCeG9yQVJRR0J4VVdGaFVVQmdZaklpWW5OUllXTXpJMk5UUW1JeU0xTXpJMk5UUW1JeUlHQnljMk5qTXlGZ0h5VWtOVlZqdDdZRGxpTEMxb0xseFBZR0JCUWx0U1B6czNVU00wS0hCS2IzTUNKVWxXRGdRS1dFWStZVGNTRldBWEdFVStQRGhYUkRjd05TTVhTUjRyWVFBQUFBSUFGQUFBQWlrQ3pRQUtBQlFBTjBBMER3RUNBUU1CQUFJQ1NnY0ZBZ0lEQVFBRUFnQmxBQUVCSmtzR0FRUUVKd1JNQ3dzQUFBc1VDeFFBQ2dBS0VSRVNFUWdIR0NzaE5TRTFBVE1STXhVakZTYzFORFkzSXdZR0J3TUJYLzYxQVVscFkyTm5BZ0lFQ3h3THRaNVVBZHYrSzFxZStORXZSQmNUTGhEKzlnQUFBUUE3Ly9ZQ0J3TEtBQjRBUkVCQkhCY0NBd0FXQ2dJQ0F3a0JBUUlEU2dZQkFBQURBZ0FEWndBRkJRUmRBQVFFSmtzQUFnSUJYd0FCQVM0QlRBRUFHeG9aR0JRU0Rnd0hCUUFlQVI0SEJ4UXJBVElXRlJRR0l5SW1KelVXRmpNeU5qVTBKaU1pQmdjbkV5RVZJUWMyTmdFYmFvS1BnamhnSXlSbkwweFpVVmNjUlJVeEd3RnYvdTBRRVRVQnUyNW1jWUFVRTJFVkdrVkpRVVVLQlIwQldWNjdBd2NBQUFBQUFnQTIvL1lDRmdMVEFCOEFMUUErUURzSkFRRUFDZ0VDQVJJQkJBVURTZ0FDQUFVRUFnVm5BQUVCQUY4QUFBQXRTd1lCQkFRRFh3QURBeTREVENFZ0p5VWdMU0V0SkNja05RY0hHQ3NUTkQ0RE16SVdGeFVtSmlNaURnSUhNelkyTXpJV0ZSUUdJeUltSmhjeU5qVTBKaU1pQmdZVkZCWVdOaEVyVEhaVEZUUVJFeXdYUlZvMEdBTUdGMDgvWG5COGEwVnhRL2M2Uno4L0swQWtJRDRCTUQ1NGExTXZBd1ZaQmdZcVNtSTRJekZ6YVhDQ1JJdDNTMDgvU2lRNEhTaFBNd0FBQUFFQUNRQUFBZklDeWdBR0FDVkFJZ1VCQUFFQlNnQUFBQUZkQUFFQkprc0RBUUlDSndKTUFBQUFCZ0FHRVJFRUJ4WXJNd0VoTlNFVkFXTUJIZjZKQWVuKzVBSnNYa3o5Z2dBQUFBQURBRGYvOWdJWUF0UUFIQUFvQURVQU5VQXlNQlVIQXdNQ0FVb0FBZ0lCWHdBQkFTMUxCUUVEQXdCZkJBRUFBQzRBVENvcEFRQXBOU28xSkNJUERRQWNBUndHQnhRckJTSW1OVFEyTmpjbUpqVTBOall6TWhZV0ZSUUdCeDRDRlJRR0JnTTJOalUwSmlNaUJoVVVGaE15TmpVMEppY25CZ1lWRkJZQktuVitLRUluTTBjNllqMC9ZemxPT0NwSEt6dHJTQzVDUURReVFFVXZSRVpOT3c4OFFrVUtaVnN3U1RRU0hsVkJOMDBuSjAwNFFGSWNGVFZITUR4WE1BR3VGRG94TFRFeExUSTMvbzQvTWpGQUdRWWFSVEl3UUFBQUFBQUNBREgvOWdJUkF0TUFId0F0QUQ1QU94SUJBZ1VLQVFFQ0NRRUFBUU5LQUFVQUFnRUZBbWNHQVFRRUExOEFBd010U3dBQkFRQmZBQUFBTGdCTUlTQW5KU0F0SVMwa0p5VWxCd2NZS3dFVURnTWpJaVluTlJZV016SStBamNqQmdZaklpWTFORFl6TWhZV0p5SUdGUlFXTXpJMk5qVTBKaVlDRVJFclRIWlRGVFlSRXkwWFJWbzFHQUlHRjAxRFhHOStha1Z4UXZjNVNEMUFMRUVqSHo4Qm1UMTVhMU12QkFWWkJnWXBTbUU0SWpGemFIR0NSSXQ0VEU1QVNTUTNIaWhPTkFBQUFnQTAvL1lDSGdJbUFBd0FGZ0F0UUNvQUF3TUJYd0FCQVM5TEJRRUNBZ0JmQkFFQUFDNEFUQTROQVFBVUVnMFdEaFlJQmdBTUFRd0dCeFFyQlNJbUpqVTBOak15RmhVVUJpY3lOalUwSmlNaUZSUUJLRkpzTm45NGVYcDhlVVpDUkVXSUNrWitWWUNYbUgrQW1WaGdZV0ZldjhFQUFBQUFBUUFSQUFBQlJnSW1BQXdBTWJjS0NRVURBQUVCU2t1d0xWQllRQXNBQVFFb1N3QUFBQ2NBVEJ0QUN3QUJBUUJkQUFBQUp3Qk1XYlFhRUFJSEZpc2hJeEUwTmpjR0JnY0hKemN6QVVackF3SUtIaFJmTk50YUFURWxTUnNLSEE1R1JxQUFBQUVBS3dBQUFmOENKZ0FhQUMxQUtnMEJBUUlNQVFNQkFnRUFBd05LQUFFQkFsOEFBZ0l2U3dBREF3QmRBQUFBSndCTUp5UW9FQVFIR0NzaElUVTNQZ0kxTkNZaklnY25Oall6TWhZVkZBWUdCd2NWSVFILy9peTlORDRjTnpoVlVEWTBja1plYXlKRE1ub0JMMU9FSXpBc0hTa3ZRa2tzS0ZkS0xrUThJVllFQUFBQUFBRUFIZjlWQWVvQ0tRQW5BRHhBT1NNQkJBVWlBUU1FQWdFQ0F3MEJBUUlNQVFBQkJVb0FBd0FDQVFNQ1p3QUJBQUFCQUdNQUJBUUZYd0FGQlM4RVRDUWtJU1FsS0FZSEdpc0JGQWNWRmhZVkZBWWpJaVluTlJZV016STJOVFFtSXlNMU16STJOVFFtSXlJR0J5YzJNeklXQWRTUVZWR09lejFjS3lkZk1WRlZZbG82TzBsaVF6TXdTaW92V1lSaGRRRitpU0lEQ2xSS1pHOFZFMTRVRzBNL09qZFdPRUl3TXhzY1NFWmJBQUFBQWdBWC8xZ0NMQUltQUFvQUVnQjZRQW9PQVFRREJnRUFCQUpLUzdBZVVGaEFHQVlGQWdRRUFGMENBUUFBSjBzQUFRRURYUUFEQXlnQlRCdExzQzFRV0VBV0JnVUNCQUlCQUFFRUFHVUFBUUVEWFFBREF5Z0JUQnRBR3dBREJBRURWUVlGQWdRQ0FRQUJCQUJsQUFNREFWMEFBUU1CVFZsWlFBNExDd3NTQ3hJUkVoRVJFQWNIR1NzbEl4VWpOU0UxQVRNUk15TTFORGNqQmdjSEFpeG9hUDY3QVVabmFOQUdCQkVxcEJDNHVFWUIwUDQvc1ZGTEhqL3dBQUFCQURuL1ZRSUZBaHNBSFFCQlFENGJGZ0lEQUJVSkFnSURDQUVCQWdOS0JnRUFBQU1DQUFObkFBSUFBUUlCWXdBRkJRUmRBQVFFS0FWTUFRQWFHUmdYRXhFTkN3Y0ZBQjBCSFFjSEZDc0JNaFlWRkFZaklpYzFGaFl6TWpZMU5DWWpJZ1lISnhNaEZTRUhOallCR1dxQ2o0RjBTQzViTVUxWlZFNGNReUF1R3dGeS91d1FIVElCRFdsbmNYY29YaGNZUkVaQVF3a0pHUUZiWGJ3RkJnQUFBZ0EwLy9ZQ0ZRTFdBQmdBSmdBK1FEc0dBUUVBQndFQ0FRc0JCQVVEU2dBQ0FBVUVBZ1ZuQUFFQkFGOEFBQUF0U3dZQkJBUURYd0FEQXk0RFRCb1pJQjRaSmhvbUpDUWtJZ2NIR0NzVE5EWVhNaFlYRlNZaklnTXpOall6TWhZVkZBWWpJaVltRnpJMk5UUW1JeVlHQmhjVUZoWTBzcUFXTGhjb051QU1CaDVXTTJOdWUyMVNiemoyUFVWQlBDVkJLUUVoUGdFdjE5QUJCUVZXQ3Y3dExTNTFhVytFVDQyRVRreENTUUVqT1NBcVRqSUFBUUFYLzE4QitnSWJBQVlBSlVBaUJRRUFBUUZLQXdFQ0FBS0VBQUFBQVYwQUFRRW9BRXdBQUFBR0FBWVJFUVFIRmlzWEFTRTFJUlVCY2dFVC9wSUI0Lzdyb1FKZ1hFTDloZ0FBQUFNQUxmLzJBZzRDMUFBY0FDZ0FOQUEyUURNeUl4WUhCQU1DQVVvRkFRSUNBRjhFQVFBQUxVc0FBd01CWHdBQkFTNEJUQjRkQVFBdEt4MG9IaWdRRGdBY0FSd0dCeFFyQVRJV0ZoVVVCZ2NlQWhVVUJnWWpJaVkxTkRZMk55WW1OVFEyTmhjaUJoVVVGaGMyTmpVMEpnTVVGak15TmpVMEppY0dCZ0VkUDJJNVRqY3FSeXM4YTBoMGZpaENKelJHT21JOE1rQkZNUzVDUUwxRVJrUkhTRTg5UVFMVUowMDRRRkljRlRWSE1EeFhNR1ZiTUVrMEVoNVZRVGROSjFNeExUSTNGaFE2TVMweC9qY3dRRDh5THo4aUdrVUFBZ0FyLzFZQ0RnSW1BQm9BS0FBN1FEZ05BUVVFQndFQkFnWUJBQUVEU2dBRkFBSUJCUUpuQUFFQUFBRUFZd1lCQkFRRFh3QURBeThFVEJ3YklpQWJLQndvSlNVbElnY0hHQ3NsRkFZaklpWW5OUllXTXpJMk55TUdCaU1pSmpVME5qWXpNaFluSWdZVkZCWXpNalkyTlRRbUpnSU9xNm9jTUJVVk1oVnlmd2NFSFZRL1lXdzVhRWgwaHZnK1EwQTlKRUVwSUQzbjBjQUdCRmNGQjRPSk1TMXphRWx0UEtCSVVFZERSeDg0SkNwTU1BQUFBd0F0Ly9ZQ0R3TFZBQTBBRlFBZUFDaEFKUmtZRVJBRUF3SUJTZ0FDQWdGZkFBRUJMVXNBQXdNQVh3QUFBQzRBVENjbUpTTUVCeGdyQVJRR0JpTWlKalUwTmpZek1oWUZGQmMzSmlNaUJnVTBKd2NXRmpNeU5nSVBNR3RYZTNVdmFsZDZlUDZJQWZZZlVrbzhBUTBEK2c0NUwwaytBV1owcEZqRHJYU2tWOEd1SVJ6MlhZdUxMaVg2T0RpS0FBRC8vd0FoLy9ZQ0N3SW1BQVlKK2UwQS8vOEFQZ0FBQVhNQ0pnQUdDZm90QVAvL0FDNEFBQUlDQWlZQUJnbjdBd0QvL3dBay8xVUI4UUlwQUFZSi9BY0EvLzhBQ1A5WUFoMENKZ0FHQ2YzeEFQLy9BREgvVlFIOUFoc0FCZ24rK0FELy93QXAvL1lDQ2dMV0FBWUovL1VBLy84QUlmOWZBZ1FDR3dBR0NnQUtBUC8vQUNYLzlnSUdBdFFBQmdvQitBRC8vd0FnLzFZQ0F3SW1BQVlLQXZVQS8vOEFFLy8zQVZNQnRRTUhCejBBQVA1Z0FBbXhBQUs0L21Dd015c0FBQUQvL3dBbkFBQUEvUUdzQXdjQWV3QUEvbUFBQ2JFQUFiaitZTEF6S3dBQUFQLy9BQmtBQUFFOUFiVURCd0IwQUFEK1lBQUpzUUFCdVA1Z3NETXJBQUFBLy84QUZmLzRBVVlCdFFNSEFIVUFBUDVnQUFteEFBRzQvbUN3TXlzQUFBRC8vd0FKQUFBQlhnR3ZBd2NDS2dBQS9tQUFDYkVBQXJqK1lMQXpLd0FBQVAvL0FDSC85d0ZKQWF3REJ3SXJBQUQrWUFBSnNRQUJ1UDVnc0RNckFBQUEvLzhBRmYvNEFWUUJ0QU1IQno0QUFQNWdBQW14QUFLNC9tQ3dNeXNBQUFELy93QWNBQUFCVEFHc0F3Y0NMQUFBL21BQUNiRUFBYmorWUxBekt3QUFBUC8vQUJqLzl3Rk9BYlVEQndJdEFBRCtZQUFKc1FBRHVQNWdzRE1yQUFBQS8vOEFFdi80QVZBQnRnTUhCejhBQVA1Z0FBbXhBQUs0L21Dd015c0FBQUQvL3dBVEFSVUJVd0xUQXdjSFBRQUEvMzRBQ2JFQUFyai9mckF6S3dBQUFQLy9BQ2NCSGdEOUFzb0RCd0I3QUFEL2ZnQUpzUUFCdVA5K3NETXJBQUFBLy84QUdRRWVBVDBDMHdNSEFIUUFBUDkrQUFteEFBRzQvMzZ3TXlzQUFBRC8vd0FWQVJZQlJnTFRBd2NBZFFBQS8zNEFDYkVBQWJqL2ZyQXpLd0FBQVAvL0FBa0JIZ0ZlQXMwREJ3SXFBQUQvZmdBSnNRQUN1UDkrc0RNckFBQUEvLzhBSVFFVkFVa0N5Z01IQWlzQUFQOStBQW14QUFHNC8zNndNeXNBQUFELy93QVZBUllCVkFMU0F3Y0hQZ0FBLzM0QUNiRUFBcmovZnJBekt3QUFBUC8vQUJ3QkhnRk1Bc29EQndJc0FBRC9mZ0FKc1FBQnVQOStzRE1yQUFBQS8vOEFHQUVWQVU0QzB3TUhBaTBBQVA5K0FBbXhBQU80LzM2d015c0FBQUQvL3dBU0FSWUJVQUxVQXdjSFB3QUEvMzRBQ2JFQUFyai9mckF6S3dBQUFQLy9BQ2NBQUFKOUFzb0FKZ29aQUFBQUJ3SVdBVDBBQVAvL0FCUC8rQU5UQXRNQUpnb1lBQUFBSndJV0FXOEFBQUFIQ2hFQ0RRQUEvLzhBSi8vM0F5QUN5Z0FtQ2hrQUFBQW5BaFlCUEFBQUFBY0tFd0hYQUFELy93QVovL2NEU2dMVEFDWUtHZ0FBQUNjQ0ZnRjNBQUFBQndvVEFnRUFBUC8vQUJYLzl3TkhBdE1BSmdvYkFBQUFKd0lXQVc0QUFBQUhDaE1CL2dBQS8vOEFDZi8zQTBzQ3pRQW1DaHdBQUFBbkFoWUJjQUFBQUFjS0V3SUNBQUQvL3dBbi8vZ0RFd0xLQUNZS0dRQUFBQ2NDRmdFOUFBQUFCd29VQWI4QUFQLy9BQ0gvK0FNOUFzb0FKZ29kQUFBQUp3SVdBVzRBQUFBSENoUUI2UUFBLy84QUp3QUFBelVDeWdBbUNoa0FBQUFuQWhZQlBBQUFBQWNLRlFIcEFBRC8vd0FuLy9nRElnTEtBQ1lLR1FBQUFDY0NGZ0U4QUFBQUJ3b1hBZElBQVAvL0FDZi85d1FiQXNvQUpnb1pBQUFBSndJV0FUd0FBQUFuQ2c4Qm5BQUFBQWNLRGdMSUFBRC8vd0FULzNVQlV3RXpBd2NIUFFBQS9kNEFDYkVBQXJqOTNyQXpLd0FBQVAvL0FDZi9mZ0Q5QVNvREJ3QjdBQUQ5M2dBSnNRQUJ1UDNlc0RNckFBQUEvLzhBR2Y5K0FUMEJNd01IQUhRQUFQM2VBQW14QUFHNC9kNndNeXNBQUFELy93QVYvM1lCUmdFekF3Y0FkUUFBL2Q0QUNiRUFBYmo5M3JBekt3QUFBUC8vQUFuL2ZnRmVBUzBEQndJcUFBRDkzZ0FKc1FBQ3VQM2VzRE1yQUFBQS8vOEFJZjkxQVVrQktnTUhBaXNBQVAzZUFBbXhBQUc0L2Q2d015c0FBQUQvL3dBVi8zWUJWQUV5QXdjSFBnQUEvZDRBQ2JFQUFyajkzckF6S3dBQUFQLy9BQnovZmdGTUFTb0RCd0lzQUFEOTNnQUpzUUFCdVAzZXNETXJBQUFBLy84QUdQOTFBVTRCTXdNSEFpMEFBUDNlQUFteEFBTzQvZDZ3TXlzQUFBRC8vd0FTLzNZQlVBRTBBd2NIUHdBQS9kNEFDYkVBQXJqOTNyQXpLd0FBQVAvL0FBei9jUVJQQXZnQUp3QU5BUjBBQUFBbkFBMy81djVBQVFjQURRSlIva0FBRXJFQkFiaitRTEF6SzdFQ0FiaitRTEF6S3dBQUFBSUFOZ0FvQWl3Q0d3QUlBQXdBSlVBaUFBSUVBUUFDQUdFQUF3TUJYUUFCQVlVRFRBRUFEQXNLQ1FjRkFBZ0JDQVVORkNzbElpWTFORFl6SVJFbk14RWpBUXRsY0hOcEFScWdYbDRvY29hSWMvNE5UQUZjQUFBQ0FGZ0FLQUpPQWhzQUNBQU1BQ1JBSVFBQ0JBRUJBZ0ZoQUFNREFGMEFBQUNGQTB3QUFBd0xDZ2tBQ0FBSElRVU5GU3MzRVNFeUZoVVVCaU1uTXhFaldBRWFhSFJ3WnQ1ZVhpZ0I4M09JaG5KTUFWd0FBQUFBQVFCTS8ySUJMUUxLQUFzQUprQWpBQU1BQkFVREJHVUFCUUFBQlFCaEFBSUNBVjBBQVFHQ0Frd1JFUkVSRVJBR0RSb3JCU01STXhVakVUTVZJeEV6QVMzaDRZT0RnNE9lQTJoUC9zTk8vc0VBQUFBQUFRQVkvMklBL1FMS0FBc0FMRUFwQUFJQUFRQUNBV1VBQUFZQkJRQUZZUUFEQXdSZEFBUUVnZ05NQUFBQUN3QUxFUkVSRVJFSERSa3JGelV6RVNNMU14RWpOVE1SR29HRGc0SGpubEVCUEZBQk9sSDhtQUFBQUFFQUZQOFFBWHNBVVFBR0FDRkFIZ1VCQVFBQlNnQUFBUUNEQXdJQ0FRR0hBVXdBQUFBR0FBWVJFUVFORmlzWEV6TVRJeWNIRko4cW5rRnhkUEFCUWY2LzdPd0FBUUFTL3hBQmRBR1NBQWNBSWtBZkJnTUNBUUFCU2dBQUFBRmRBd0lDQVFHSEFVd0FBQUFIQUFjU0VRUU5GaXNYQVRNREV5TW5CeElCSUVLY2hVSmhadkFDZ3Y2bC90bms1QUFBQUFFQUZnSkZBa3NER0FBTEFCNUFHd1lGQVFNQlJ3QUFBUUVBVndBQUFBRmZBQUVBQVU4a0lnSU5GaXNUSnpZek1oY0hKaVlqSWdaQksyRzV1bUVxSm9GS1NZQUNSUmU4dkJkUVMwc0FBQUQvL3dBVy94QUNTd01ZQUNZS2hBQUFBQVlLUGdBQUFBQUFBUUE4QUFBQkt3TDRBQWtBSFVBYUNRWUZCQU1GQUFFQlNnQUJBWVJMQUFBQWd3Qk1GUkVDRFJZckFSTWpFd2MxRnljekJ3RVdGV2NXbnA0V1p4VUI3ZjRUQWUwTldnN016QUFBQUFFQWtRQUFBWVFDK0FBSkFCMUFHZ2NHQlFRQkJRRUFBVW9BQUFDRVN3QUJBWU1CVEJVU0FnMFdLeE0xSnpNSE54VW5FeU9tRldZVW9hRVVaZ0h0UDh6TURsb04vaE1BQUFVQUp2L25Bd2NDNGdBTEFCY0FJd0F2QURzQW5VdXdKRkJZUUM0SkFRY1FDQThEQmdFSEJtY0RBUUVFQVFBTEFRQmxEUUVMRWd3UkF3b0ZDd3BuRGdFRkJRSmRBQUlDaEFWTUcwQXpBQUlIQlFKVkNRRUhFQWdQQXdZQkJ3Wm5Bd0VCQkFFQUN3RUFaUTBCQ3hJTUVRTUtCUXNLWndBQ0FnVmREZ0VGQWdWTldVQXVNVEFsSkJrWURRd0FBRGMxTURzeE95c3BKQzhsTHg4ZEdDTVpJeE1SREJjTkZ3QUxBQXNSRVJFUkVSTU5HU3NGRVNFMUlSRXpFU0VWSVJFQklpWTFORFl6TWhZVkZBWWhJaVkxTkRZek1oWVZGQVlCSWlZMU5EWXpNaFlWRkFZaElpWTFORFl6TWhZVkZBWUJhLzY3QVVWWEFVWCt1Lzd2SFNZbUhSd2xKUUd2SENZbUhCd21KdjRaSFNZbUhSd2xKUUdwSFNVbEhSd2xKUmtCVTFZQlV2NnVWdjZ0QWlVZ0pDVWZIeVVrSUNBa0pSOGZKU1FnL2lvaEl5VWZIeVVqSVNFakpSOGZKU01oQUFBQUFBTUFTZ0FBQW1VQ3lnQURBQThBR3dCUFM3QWlVRmhBSFFBRUFBVUJCQVZuQUFBQWdrc0FBd01DWHdBQ0FvVkxBQUVCZ3dGTUcwQWJBQUlBQXdRQ0EyY0FCQUFGQVFRRlp3QUFBSUpMQUFFQmd3Rk1XVUFKSkNRa0l4RVFCZzBhS3dFekFTTVRORFl6TWhZVkZBWWpJaVlGTkRZek1oWVZGQVlqSWlZQ0lFWCtLVVFtSHhrWUh4OFlHUjhCWGg4WUdSOGZHUmdmQXNyOU5nSFJHeUFnR3hvaEliMGFJU0VhR3lFaEFBQURBRFFBTGdJSUFzTUFDd0FTQUI0QUxrQXJFQUVCQUJJUkR3NE5CUUlCREFFREFnTktBQUlBQXdJRFl3QUJBUUJmQUFBQWdnRk1KQ3NrSWdRTkdDc1RORFl6TWhZVkZBWWpJaVlETlNVbE5RVVZCVFEyTXpJV0ZSUUdJeUltMGgwV0Z4MGRGeFlkbmdGKy9vSUIxUDdLSGhVV0hoMFhGaDBDakJnZkh4Z1pIaDcrRkVHcXRVRGhLZmdaSFIwWkdSNGVBQUFBQWdBd0FSZ0J4QUxXQURFQVBRQ0RTN0FlVUZoQUxnQUVCUWNGQkFkK0FBRUdBZ1lCQW40QUFnZ0JBQUlBWXdBRkJRTmZBQU1EaWtzSkFRWUdCMThBQndlTkJrd2JRQ3dBQkFVSEJRUUhmZ0FCQmdJR0FRSitBQWNKQVFZQkJ3Wm5BQUlJQVFBQ0FHTUFCUVVEWHdBREE0b0ZURmxBR3pNeUFRQTVOekk5TXowbUpDQWVHUmNOQ3dnR0FERUJNUW9ORkNzVExnSTFORFl6TWhZWEZqTXlOalUwSmljbUpqVTBOak15RmhZVkZBWWpJaVluSmlZaklnWVZGQllYRmhZVkZBWUdOeUltTlRRMk16SVdGUlFHdEN3NkhoQU9DaFFOR3lRWkpBNElDUkJIUFNvMkdnNFFDaElIREJvVkhDWU9DUWdRR1RtdUZCb2FGQlFiR3dFWkFSb2lEUXdTRFF3Vkh5Y1VMaGtiT0JzMVB4Z2dEQW9UQ1FZSkR4MGVHREFaR0RjWkh6c210Qm9iR2hvYUdoc2FBQUVBaEFBMEFva0NPUUFRQUFhekN3RUJNQ3NsQmlZbkppWTNGd1lXRndFWEFSWVdOd0hIUlhjek15RWZJZzhPSXdHRUh2NThLVTRwVXg4aE16TjNSU0lwVGlrQmhCNytmQ01PRHdBTEFBLyszd1FEQkNrQURRQVJBQlVBR1FBMUFFQUFTd0JQQUZNQVZ3QmxBYUZBRUNBQkNBNEJTZ01DQWdCSVcxb0NGMGRMc0JkUVdFQmtBQUFCQUlNQUJ3WU9CUWR3QUE0SUJnNXVBQmNXRjRRQUFSZ0JBZ01CQW1VQUJSb0JCZ2NGQm1VTkRBSUlFQXNDQ1E4SUNXVUFEd0FLRVE4S1p3QVJHd0VTRXhFU1pRQVRIQUVVRlJNVVpRQVZIUUVXRnhVV1pSa0JCQVFEWFFBREE0SUVUQnRMc0I1UVdFQmxBQUFCQUlNQUJ3WU9CZ2NPZmdBT0NBWU9iZ0FYRmhlRUFBRVlBUUlEQVFKbEFBVWFBUVlIQlFabERRd0NDQkFMQWdrUENBbGxBQThBQ2hFUENtY0FFUnNCRWhNUkVtVUFFeHdCRkJVVEZHVUFGUjBCRmhjVkZtVVpBUVFFQTEwQUF3T0NCRXdiUUdZQUFBRUFnd0FIQmc0R0J3NStBQTRJQmc0SWZBQVhGaGVFQUFFWUFRSURBUUpsQUFVYUFRWUhCUVpsRFF3Q0NCQUxBZ2tQQ0FsbEFBOEFDaEVQQ21jQUVSc0JFaE1SRW1VQUV4d0JGQlVURkdVQUZSMEJGaGNWRm1VWkFRUUVBMTBBQXdPQ0JFeFpXVUJKVkZSUVVFeE1GaFlTRWc0T1pHSlVWMVJYVmxWUVUxQlRVbEZNVDB4UFRrMUtTVVZEUHowNU9EUXpNakV0S3lZbEpDSWVIQllaRmhrWUZ4SVZFaFVVRXc0UkRoRVRLaDRORmlzQk5EY1ZCaFVVRmhZVkZDTWlKZ2MxTXhVRk5TRVZCVFVoRlFVME5qTXlGaFVVQmdjaEZTRVdGaFVVQmlNaUpqVTBOeUUxSVNZM0ZCY3pOalUwSmlNaUJoVVVGak15TmpVMEp5TUdCVFVoRlFVMUlSVUZOVE1WQnhRSE5UWTFOQ1ltTlRRek1oWUIwSEEzRnhjdUdoOGJ0djdDQWNiOXNnTFcvbGNrR2hva0JBSUJ1LzVGQWdRa0dob2tCdjQzQWNrR0hRd3FEQk1PRGhNVERnNFREQ3NML3JZQzF2MnlBY2Ird3JZcmNEWVhGaTBiSHdPK1VCc2hFaHdOQ1F3U0p5T0lMQ3lFTEN5T0xDeEpHU1VsR1FjTkJpMEdEUWNhSkNRYURnd3REQTRSQ1FrUkRoTVRidzBVRXc0UkNRbUdMQ3lPTEN5RUxDeU5UeHdoRXhzTkNRd1NKeU1BQUFELy93QkUvL0lDcUFMVUFDWUFCQUFBQUFjQUlnRURBQUFBQlFBMS8rNEREd0xhQUFrQUZRQWhBQzBBTndBeVFDOEdCQUlDQndVQ0F3Z0NBMmNBQVFFQVh3QUFBSXBMQUFnSUNWOEFDUW1MQ1V3Mk5DUWtKQ1FrSkNRaUlnb05IU3NCTkRZek1oVVVJeUltQVRRMk16SVdGUlFHSXlJbUpUUTJNeklXRlJRR0l5SW1KVFEyTXpJV0ZSUUdJeUltQXpRMk16SVZGQ01pSmdGZEloOUNRaDhpL3Rnakh4OGpJeDhmSXdKV0l4OGZJeU1mSHlQKzB5TWZIeU1qSHg4akFTSWZRa0lmSWdLWkloOUJRU0grNlNJZ0lDSWdJQ0FnSWlBZ0lpQWdJQ0FpSUNBaUlDQWcvdTBpSDBGQklBQUZBRGIvN2dNVUF0b0FDd0FYQUNNQUx3QTVBREpBTHdBRUFBVUdCQVZuQXdFQkFRQmZBZ0VBQUlwTENBRUdCZ2RmQ1FFSEI0c0hURGcySkNRa0pDUWtKQ1FpQ2cwZEt4TTBOak15RmhVVUJpTWlKaVUwTmpNeUZoVVVCaU1pSmdFME5qTXlGaFVVQmlNaUpnRTBOak15RmhVVUJpTWlKaVUwTmpNeUZSUWpJaVkySWg4ZkpDUWZIeUlDV2lNZkh5TWpIeDhqL3M0akh4OGpJeDhmSS83WUloOGZKQ1FmSHlJQ1ZDSWZRa0lmSWdLWklDRWhJQ0VnSUNFZ0lTRWdJU0FnL3ZFaUh4OGlJU0FnL3VjaUh4OGlJU0FnSVNJZlFVRWdBQUFBQVFBZC8vMENHQUg0QUJjQU5VQXlGUlFURUE4T0JnTUVDUWdIQkFNQ0JnRUFBa29GQVFNQ0FRQUJBd0JsQUFRRUFWMEFBUUdEQVV3VUZCRVVGQkFHRFJvckpTTVhCeWNWSnpVSEp6Y2pOVE1uTnhjMU14VTNGd2N6QWhpcGVESjRSWGd3ZDZxcWVERjRSWGt4ZUtuWWVEQjNxZ0dwZURGNFJYa3dlS3FxZURCNUFBQUFBUUFBL3JNRDZQK2lBQWNBSmtBakJBTUNBRWNEQVFJQUFBSlZBd0VDQWdCZEFRRUFBZ0JOQUFBQUJ3QUhFeEVFRFJZckJSVWhCU2MzSXpVRDZQMkEvclliOC9aZU9MY3hoamdBQUFRQU52LzFBbU1DK0FBTEFCY0FJd0F2QUVsQVJnVUJBd29FQ1FNQ0J3TUNad2dCQUFBQlh3QUJBWVJMQUFjSEJsOExBUVlHaXdaTUpTUVpHQTBNQVFBcktTUXZKUzhmSFJnakdTTVRFUXdYRFJjSEJRQUxBUXNNRFJRckFTSW1OVFEyTXpJV0ZSUUdBeUltTlRRMk16SVdGUlFHSVNJbU5UUTJNeklXRlJRR0F5SW1OVFEyTXpJV0ZSUUdBVW9kSlNVZEhDVWw3aHdtSmh3Y0ppWUJqaDBsSlIwY0pTWDBIU1VsSFJ3bEpRSndJQ1FrSUNBa0pDRCt3U0FrSlI4ZkpTUWdJQ1FsSHg4bEpDRCt4Q0FrSlI4ZkpTUWdBQUFBQUFRQU5mL3VBdzhDMmdBSkFCVUFJUUFyQUMxQUtnUUJBZ1VCQXdZQ0EyY0FBUUVBWHdBQUFJcExBQVlHQjE4QUJ3ZUxCMHdpSkNRa0pDUWlJZ2dOSENzQk5EWXpNaFVVSXlJbUFUUTJNeklXRlJRR0l5SW1KVFEyTXpJV0ZSUUdJeUltQVRRMk16SVZGQ01pSmdGZEloOUNRaDhpL3Rnakh4OGpJeDhmSXdKV0l4OGZJeU1mSHlQKzBpSWZRa0lmSWdLWkloOUJRU0grNlNJZ0lDSWdJQ0FnSWlBZ0lpQWdJUDd0SWg5QlFTRC8vd0JFQUxNQXpRRkRBd2NBRVFBQUFNRUFDTEVBQWJEQnNETXIvLzhBSlFEZkFSMEJPUUlHQUJBQUFBQUJBR1QvSHdEUi8vSUFEQUJIUzdBaVVGaEFGQUFBQkFFREFnQURad0FDQWdGZkFBRUJod0ZNRzBBWkFBQUVBUU1DQUFObkFBSUJBUUpYQUFJQ0FWOEFBUUlCVDFsQURBQUFBQXdBREJFVUVRVU5GeXNYTlRJV0ZSUUdJelV5TmpVMFpERThQREVjSkRrck9ESXlOeW9oSGo4QS8vOEFIZi8wQWJjQzFBRVBDdVFCeGdMSXdBQUFDYkVBQTdnQ3lMQXpLd0QvL3dBVy94a0NTLy9zQVVjS2hBQUEvdnhBQU1BQUFBbXhBQUc0L3Z5d015c0FBQUFBQWdCNkFSUUJiQUxLQUFVQUVRQXlRQzhFQXdJQkJBSklBd0VBQVFDRUFBSUJBUUpYQUFJQ0FWOEVBUUVDQVU4SEJnQUFEUXNHRVFjUkFBVUFCUVVORkNzVEVUY1hCeEUzSWlZMU5EWXpNaFlWRkFaNjFSMjRoUlFhR2hRVkdob0JGQUU0ZmpKcy91aUNHaHNhR2hvYUd4b0FBQUFCQUQzL3JnRzNBU2NBQXdBR3N3SUFBVEFyQlFFM0FRR1AvcTRwQVZGU0FWSW4vcThBQUFBQUFRQTlBVkVCdHdMS0FBTUFCck1DQUFFd0t3RUJOd0VCai82dUtRRlJBVkVCVWlmK3J3QUFBQUVBZ1FFVUFYTUN5Z0FGQUJKQUR3VUVBd0lFQUVnQUFBQjBFQUVORlNzVEl4RTNGd2U3T3RRZXVBRVVBVGgrTW13QUFBQUJBREFCR0FIRUF0WUFNUUE0UURVQUJBVUJCUVFCZmdBQkFnVUJBbndBQWdZQkFBSUFZd0FGQlFOZkFBTURpZ1ZNQVFBbUpDQWVHUmNOQ3dnR0FERUJNUWNORkNzVExnSTFORFl6TWhZWEZqTXlOalUwSmljbUpqVTBOak15RmhZVkZBWWpJaVluSmlZaklnWVZGQllYRmhZVkZBWUd0Q3c2SGhBT0NoUU5HeVFaSkE0SUNSQkhQU28yR2c0UUNoSUhEQm9WSENZT0NRZ1FHVGtCR1FFYUlnME1FZzBNRlI4bkZDNFpHemdiTlQ4WUlBd0tFd2tHQ1E4ZEhoZ3dHUmczR1I4N0pnQUFBQUVBcHY4UEFYVUMrQUFIQUNOQUlBQUJBQUlEQVFKbEFBQUFoRXNFQVFNRGh3Tk1BQUFBQndBSEVSRVJCUTBYS3hjUk14RXpGU01ScGp5VGsvRUQ2ZjRtTmY0bUFBQUEvLzhBSnY4NUFmNEJBQU1IQUEwQUFQNElBQW14QUFHNC9naXdNeXNBQUFELy93QzIvL0lCUHdDQ0FBWUFFWElBQUFNQU52L3VBdzBDMmdBTEFCY0FJUUFqUUNBQUFRRUFYd0FBQUlwTEJBRUNBZ05mQlFFREE0c0RUQ0lrSkNRa0lnWU5HaXNCTkRZek1oWVZGQVlqSWlZQk5EWXpNaFlWRkFZaklpWWxORFl6TWhVVUl5SW1BVm9pSHg4a0pCOGZJdjdjSWg4ZkpDUWZIeUlDVkNJZlFrSWZJZ0taSWg4ZklpQWhJZjIySWg4ZklpRWdJQ0VpSDBGQklBQUFBUUNtQUFRQ1NBSmRBTWtFcEV1d0UxQllRRDF1QVFVR1dWZ0NCQVZNQVFNRWhqOCtBd0lETVJrQ0RRSXdKQUlCRGFZQkR3R3NGQk1ERWhIQ3ZBWURFeElEQVFBVENrb2pDZ0lQQVVsckFRZElHMHV3RlZCWVFEeHVBUVVKV1ZnQ0JBVk1BUU1FaGo4K0F3SURNUmtDRFFJd0pBSUJEYVlCRHdHc0ZCTURFaEhDdkFZREV4SURBUUFUQ2twckFRY2pDZ0lQQWtrYlM3QWlVRmhBUEc0QkJRbFpXQUlFQlV3QkNnU0dQejREQWdNeEdRSU5BakFrQWdFTnBnRVBBYXdVRXdNU0VjSzhCZ01URWdNQkFCTUtTbXNCQnlNS0FnOENTUnRMc0MxUVdFQThiZ0VGQ1ZsWUFnc0ZUQUVLQklZL1BnTUNBekVaQWcwT01DUUNBUTJtQVE4QnJCUVRBeElSd3J3R0F4TVNBd0VBRXdwS2F3RUhJd29DRHdKSkcwQS9iZ0VGQ1ZsWUFnc0ZUQUVLQklZL1BnTUNBekVaQWcwT01BRVFEU1FCQVJDbUFROEJyQlFUQXhJUndyd0dBeE1TQXdFQUV3dEthd0VISXdvQ0R3SkpXVmxaV1V1d0UxQllRRmNJQVFjR0I0TUpBUVlGQm9NTENnSUVCUU1GQkFOK0RnRUNBdzBEQWcxK0FBMEJBdzBCZkJBQkFROERBUTk4QUE4UkF3OFJmQUFSRWdNUkVud0FFaE1ERWhOOERBRURBQk1BQXhObkFBVUZoVXNBQUFDREFFd2JTN0FWVUZoQVh3QUlCd2lEQUFjR0I0TUFCZ2tHZ3dzS0FnUUZBd1VFQTM0T0FRSUREUU1DRFg0QURRRUREUUY4RUFFQkR3TUJEM3dBRHhFRER4RjhBQkVTQXhFU2ZBQVNFd01TRTN3TUFRTUFFd0FERTJjQUNRbU5Td0FGQllWTEFBQUFnd0JNRzB1d0cxQllRR1VBQ0FjSWd3QUhCZ2VEQUFZSkJvTUxBUVFGQ2dVRUNuNEFDZ01GQ2dOOERnRUNBdzBEQWcxK0FBMEJBdzBCZkJBQkFROERBUTk4QUE4UkF3OFJmQUFSRWdNUkVud0FFaE1ERWhOOERBRURBQk1BQXhObkFBa0pqVXNBQlFXRlN3QUFBSU1BVEJ0THNDSlFXRUJyQUFnSENJTUFCd1lIZ3dBR0NRYURDd0VFQlFvRkJBcCtBQW9NQlFvTWZBQU1Bd1VNQTN3T0FRSUREUU1DRFg0QURRRUREUUY4RUFFQkR3TUJEM3dBRHhFRER4RjhBQkVTQXhFU2ZBQVNFd01TRTN3QUF3QVRBQU1UWndBSkNZMUxBQVVGaFVzQUFBQ0RBRXdiUzdBbVVGaEFkd0FJQndpREFBY0dCNE1BQmdrR2d3QUxCUVFGQ3dSK0FBUUtCUVFLZkFBS0RBVUtESHdBREFNRkRBTjhBQUlERGdNQ0RuNEFEZzBERGcxOEFBMEJBdzBCZkJBQkFROERBUTk4QUE4UkF3OFJmQUFSRWdNUkVud0FFaE1ERWhOOEFBTUFFd0FERTJjQUNRbU5Td0FGQllWTEFBQUFnd0JNRzB1d0xWQllRSGNBQ0FjSWd3QUhCZ2VEQUFZSkJvTUFDUVVKZ3dBTEJRUUZDd1IrQUFRS0JRUUtmQUFLREFVS0RId0FEQU1GREFOOEFBSUREZ01DRG40QURnMEREZzE4QUEwQkF3MEJmQkFCQVE4REFROThBQThSQXc4UmZBQVJFZ01SRW53QUVoTURFaE44QUFNQUV3QURFMmNBQlFXRlN3QUFBSU1BVEJ0QWZRQUlCd2lEQUFjR0I0TUFCZ2tHZ3dBSkJRbURBQXNGQkFVTEJINEFCQW9GQkFwOEFBb01CUW9NZkFBTUF3VU1BM3dBQWdNT0F3SU9mZ0FPRFFNT0RYd0FEUkFERFJCOEFCQUJBeEFCZkFBQkR3TUJEM3dBRHhFRER4RjhBQkVTQXhFU2ZBQVNFd01TRTN3QUF3QVRBQU1UWndBRkJZVkxBQUFBZ3dCTVdWbFpXVmxaUUNMSXg4Ry9zckNsbzZHZ21aZVZsSXVKZm54NmVYSndLQ3NyS3kwY0xoc1FGQTBkS3pjaUppYzJOamN1QWpVME5qTXlGaGNXRmhjM0xnTTFORFl6TWhZWEhnSVhOeTRDTnpZek1oWVZGaFlYTnk0Q05UUTJNeklXRlJRV0Z6Y21KalUwTmpNeUZoY1dGaGMzSmlZMU5EWXpNaFlWRkJZWE55WW1OVFEyTXpJV0ZSUVdGejRDTXpJVkZBWUhOall6TWhZVkZBWUdCd2N5TmpZek1oWVZGQWNHQmdjSE1qWTJNeklXRlJRR0J3WUdCd2N5TmpZek1oWVZGQVlQQWpJMk5qTXlGUlFPQWdjSFBnTXpNaFlIQmdZSERnSUhCeFkyTmpNeUZSUUdCZ2NHSWlmWkRDTUVEeGdPQVE4T0Jnb0lCd0lHRFFjWUF3c05DQVlJQ0FnQ0FRZ0xCaEVFQ0FZQkF3d0VCUUVIQnhJQ0NRZ01CZ2tJQWdZUkJBME9CQWdEQVFJT0FSTUVDdzBFQlFJRENBd0NBd2tHQlFNQ0FnSU5Fd3NOR0EwVEdBb0tCQjBtRGhZTEhoMEhCZ3NsSFM4SUR3VWpLUXdLQmhRbEh4d0lGUkluSUFrTEJoZ3JSaFFOTFN3TERDRXhNUkFTQXg0bkpRd0xFZ0VCSlIwVEt5RUZEaGsyTUF3TUhTa1FKQ3dFQkJNTkVDSVlFejQ2REFZVERRa1hOUlF2QkNFcEpRa0dEUTRNQmlBZUF4c09LU1VKRkJBSEN5OExHd1ltS2c4VEN4SUxDeUljSEFzNEdoMExEZ2NZTVFFZUNpc1NGUTBPQ3drYkVCTUlJd29LRFF3SEJ3NENDQnNVRFFnZEZBTVlDZ0lHRnhNQkpRa0pCQWtRQ1FnUUF4Z05EQWNDQmc4SUJRZ0NJd29MQ1FJSkRnZ01KQThQREFZU0VROERIUUVMREFrRkJ3b1VBd0lKQ1FJVkJBb05EUWdRREFNSEFnQUFBUUFBLzJvRDZQK2lBQU1BSDBBY0FnRUJBQUFCVlFJQkFRRUFYUUFBQVFCTkFBQUFBd0FERVFNTkZTc0ZGU0UxQStqOEdGNDRPUC8vQUFuLzhnTmFBdFFBSndBaUFiVUFBQUFHQUNJQUFQLy9BQW4vOGdKN0F0UUFKZ0FpQUFBQUJ3QUVBYTRBQVAvL0FDWUFEZ0RKQVFNREJ3QVBBQUFBandBSXNRQUJzSSt3TXl2Ly93QkVBSUVBelFFUkF3Y0FFUUFBQUk4QUNMRUFBYkNQc0RNckFBSUFJd0VVQWRBQ3lnQUhBQk1BSjBBa0FBQUZBSVFEQVFFQkFsMEFBZ0tDU3dBRkJRUmZBQVFFalFWTUpDTVJFUkVRQmcwYUt3RWpFU00xSVJVakZ6UTJNeklXRlJRR0l5SW1BUmM3dVFHdHVVZ2FGQlFiR3hRVUdnRVVBWHc2T3FFYkdob2JHaG9hQUFBQUFBRUFJd0VVQWRBQ3lnQUhBQnRBR0FBQUFRQ0VBd0VCQVFKZEFBSUNnZ0ZNRVJFUkVBUU5HQ3NCSXhFak5TRVZJd0VYTzdrQnJia0JGQUY4T2pvQUFBQUNBRHdCVHdHM0Fzb0FBd0FIQUNsQUpnQUNCQUVCQWdGaEJRRURBd0JkQUFBQWdnTk1CQVFBQUFRSEJBY0dCUUFEQUFNUkJnMFZLeE1SSVJFQkVTRVJQQUY3L3I4QkJ3RlBBWHYraFFGQi92a0JCd0FGQURMLzd3TVhBdFlBQ3dBWEFDTUFMd0E3QUY5QVhCTVNFQThFQUFFWEZCRU9CQUlERmhVTkF3WUhBMG9GQVFNS0JBa0RBZ2NEQW1jSUFRQUFBVjhBQVFHS1N3QUhCd1pmQ3dFR0Jvc0dUREV3SlNRWkdBRUFOelV3T3pFN0t5a2tMeVV2SHgwWUl4a2pCd1VBQ3dFTERBMFVLd0VpSmpVME5qTXlGaFVVQmdFbkFRRTNBUUVYQVFFSEFRVWlKalUwTmpNeUZoVVVCaUVpSmpVME5qTXlGaFVVQmdFaUpqVTBOak15RmhVVUJnR2hIeHdjSHlBZEhmNjROZ0VxL3RVMkFTd0JMVGIrMUFFcU52N1Yvc3NhSXlNYUd5TWpBazhhSXlNYUd5TWovcTBmSEJ3ZklCMGRBbFFrSFIwa0pCMGRKUDJzTmdFdEFTMDMvdFFCS3piKzAvN1NOZ0V0Q2gwaUloNGVJaUlkSFNJaUhoNGlJaDMrelNRZEhDUWtIQjBrQUFBQUFRQUEvck1ENlAraUFBY0FIa0FiQndFQVJ3QUJBQUFCVlFBQkFRQmRBZ0VBQVFCTkVSRVJBdzBYS3dFbElUVWhGU01YQThyK3R2MkFBK2oyOC82enR6ZzRodi8vQUZqL2dRSk1BdmdBUndCNEFvTUFBTUFBUUFBQUFQLy9BQ0QvOGdHOEF0UUFSd0FpQWNVQUFNQUFRQUFBQVAvL0FERC9md0RkQWlnQVJ3QWVBUHdBQU1BQVFBQUFBQUFDQUhnQkZBRjhBc29BQlFBUkFFZExzQ1pRV0VBYUFBQUVBSVFBQWdJQlhRQUJBWUpMQUFRRUExOEFBd09OQkV3YlFCZ0FBQVFBaEFBREFBUUFBd1JuQUFJQ0FWMEFBUUdDQWt4WnR5UWpFUkVRQlEwWkt4TWpFU0VWSXhjME5qTXlGaFVVQmlNaUpySTZBUVRLVHhrVkZCc2JGQlVaQVJRQnRqcVRHeG9hR3hzWkdRQUJBSGdCRkFGOEFzb0FCUUFaUUJZQUFBSUFoQUFDQWdGZEFBRUJnZ0pNRVJFUUF3MFhLeE1qRVNFVkk3STZBUVRLQVJRQnRqb0FBQUlBaHdFVUFYa0N5Z0FGQUJFQU1rQXZCQU1DQVFRQ1NBTUJBQUVBaEFBQ0FRRUNWd0FDQWdGZkJBRUJBZ0ZQQndZQUFBMExCaEVIRVFBRkFBVUZEUlFyQVJFbk54Y1JKeUltTlRRMk16SVdGUlFHQVVDNUh0UytGUm9hRlJRYUdnRVVBUmhzTW43K3lJSWFHeG9hR2hvYkdnQUFBUUE5LzY0QnR3RW5BQU1BQnJNQ0FBRXdLeGNuQVJkbEtBRlJLVklvQVZFbkFBQUFBUUE5QVZFQnR3TEtBQU1BQnJNQ0FBRXdLeE1uQVJkbEtBRlJLUUZSS0FGUkp3QUFBUUNCQVJRQmN3TEtBQVVBR0VBVkJBTUNBUVFBU0FFQkFBQjBBQUFBQlFBRkFnMFVLd0VSSnpjWEVRRTZ1UjNWQVJRQkdHd3lmdjdJQUFBQUFRQXdBUmdCeEFMV0FERUFPRUExQUFJQkJRRUNCWDRBQlFRQkJRUjhBQVFHQVFBRUFHTUFBUUVEWHdBREE0b0JUQUVBTENvbkpSc1pGQklPREFBeEFURUhEUlFyQVFZbUpqVTBOamMyTmpVMEppTWlCZ2NHQmlNaUpqVTBOall6TWhZVkZBWUhCZ1lWRkJZek1qYzJOak15RmhVVUJnWUJRQzg0R1JBSUNRNG5IQlVaREFnUkNoRU9HellwUFVnUUNRZ09JeGtrR3cwVUN3MFFIVHNCR1FFbU94OFpOeGdaTUJnZUhROEpCZ2tUQ2d3Z0dEODFHemdiR1M0VUp4OFZEQTBTREEwaUdnQUJBTEwvRHdHQkF2Z0FCd0FqUUNBQUFRQUFBd0VBWlFBQ0FvUkxCQUVEQTRjRFRBQUFBQWNBQnhFUkVRVU5GeXNGRVNNMU14RXpFUUZGazVNODhRSGFOUUhhL0JjQUFBQUNBR1lBcFFIWEFoY0FEd0FmQUNwQUp3VUJBZ1FCQUFJQVl3QURBd0ZmQUFFQmhRTk1FUkFCQUJrWEVCOFJId2tIQUE4QkR3WU5GQ3NsSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMEppWWpJZ1lHRlJRV0ZnRWZNMVF5TWxRek0xTXlNbE16SURVZkh6VWdJVFVmSHpXbE1sUXpORk15TWxNME0xUXlSUjgxSVNBMUh4ODFJQ0UxSHdBQUFBQUVBRGIvN2dNVUF0b0FDd0FYQUNNQUxRQW5RQ1FEQVFFQkFGOENBUUFBaWtzR0FRUUVCVjhIQVFVRml3Vk1JaVFrSkNRa0pDSUlEUndyRXpRMk16SVdGUlFHSXlJbUpUUTJNeklXRlJRR0l5SW1BVFEyTXpJV0ZSUUdJeUltSlRRMk16SVZGQ01pSmpZaUh4OGtKQjhmSWdKYUl4OGZJeU1mSHlQOXBpSWZIeVFrSHg4aUFsUWlIMEpDSHlJQ21TSWZIeUlnSVNFZ0loOGZJaUFoSWYyMkloOGZJaUVnSUNFaUgwRkJJQUFBQUFFQVF3RFRBNmtCZFFBWEFHZExzQzFRV0VBY0JRRUJBQU1BQVFObkJnRUFBZ0lBVndZQkFBQUNYd1FCQWdBQ1R4dEFLZ0FCQlFNRkFRTitBQVFBQWdBRUFuNEFCUUFEQUFVRFp3WUJBQVFDQUZjR0FRQUFBbDhBQWdBQ1QxbEFFd0VBRkJJUUR3MExDQVlFQXdBWEFSY0hEUlFyQVRJMk56TUdCaU1pTGdJaklnWUhJelkyTXpJZUFnTHRPendMT2d0elR6ZDlnSGd4T2owS093eHpUamw5Zm5ZQkh6RWdUVkFhSWhveUgwMVFHaUlhQUFNQU52L3VBZUVDMmdBTEFCY0FJd0FwUUNZQUFnQURCQUlEWndBQkFRQmZBQUFBaWtzQUJBUUZYd0FGQllzRlRDUWtKQ1FrSWdZTkdpc0JORFl6TWhZVkZBWWpJaVlCTkRZek1oWVZGQVlqSWlZQk5EWXpNaFlWRkFZaklpWUJYaUlmSHlNakh4OGkvdGdpSHg4a0pCOGZJZ0VvSWg4Zkl5TWZIeUlDbVNJZkh5SWdJU0grNlNJZ0lDSWdJQ0QrN1NJZkh5SWhJQ0FBQWdBd0FSb0NDd0pXQUFzQUl3QS9RRHdUQVFRREh3RUZBZ0pLSGdFREFVa1NBUVZIQUFBQUFRTUFBV2NBQkFJRkJGY0FBd0FDQlFNQ1p3QUVCQVZmQUFVRUJVOGtKQ1FrSkNJR0RSb3JFelEyTXpJV0ZSUUdJeUltRnlZbUl5SUdCelUyTXpJV0Z4WVdNekkyTnhVR0l5SW01aDRXRmg4ZkZoWWVKeVV3Rmh3K0dEQkpIVG91SlRBVkhUNFlNVWdkT2dJWUlSMGRJU0FmSHIwUUN5SVpXRFVORXhBTElobFhOZ3dBQUFJQU1BQnNBZ3NCcHdBWEFDTUFQMEE4QndFQ0FSTUJBd0FDU2dZQkF3RkpFZ0VCU0FBQkFBQURBUUJuQUFJQUF3UUNBMmNBQkFVRkJGY0FCQVFGWHdBRkJBVlBKQ1FrSkNRaUJnMGFLd0VtSmlNaUJnYzFOak15RmhjV0ZqTXlOamNWQmlNaUpnYzBOak15RmhVVUJpTWlKZ0VOSlRBV0hENFlNRWtkT2k0bE1CVWRQaGd4U0IwNlZSNFdGaDhmRmhZZUFUb1FDeUlaV0RVTkV4QUxJaGxYTmd4N0loMGVJUjhnSHYvL0FEQUJHZ0lMQXBvQ0pnQmhBQUFCQndGUEFJbi9Zd0FKc1FFQ3VQOWpzRE1yQUFBQkFDWUFBQUlHQWh3QUJRQVpRQllBQVFFQ1hRQUNBb1ZMQUFBQWd3Qk1FUkVRQXcwWEt5RWpFU0UxSVFJR1QvNXZBZUFCelU4QUFBSUFRQUR0QWI0Qy9RQWVBQ3NBVEVBTUN3RUJBQ2tNQXdNREFRSktTN0FtVUZoQUVnQURBQUlEQW1NQUFRRUFYd0FBQUlRQlRCdEFHQUFBQUFFREFBRm5BQU1DQWdOWEFBTURBbDhBQWdNQ1QxbTJKU29sSndRTkdDc1RORFkzSmpVME5qTXlGaGNISmlZakloVVVGaGNlQWhVVUJpTWlKaVkzRkJZek1qWTFOQ1ltSndZR1FESWxUR3hTTGxZbUhTUkdKR1krTkRCTkxWcFFRbDh6Vmo5R0ppY2FRRGdjSkFHSktqOFRLa1ZGUkJNUVF4QVRSUjhtRXhNcE9DbEJVaXBITnlrN0tSd1hJeUFWQ1NvQUFBQURBRVQvN3dETkFzd0FDd0FYQUNNQUtVQW1BQUlBQXdRQ0EyY0FBUUVBWHdBQUFJSkxBQVFFQlY4QUJRV0xCVXdrSkNRa0pDSUdEUm9yRXpRMk16SVdGUlFHSXlJbUZUUTJNeklXRlJRR0l5SW1FVFEyTXpJV0ZSUUdJeUltUkNnY0hDa3BIQndvSmg0ZEtDZ2RIaVlvSEJ3cEtSd2NLQUtFS0NBZ0tDWWlJdjhsSVNFbEpTSWkvdjRuSUNBbkppTWpBQUQvL3dCSS8zOEE2d0IwQVE4QUR3RVIvL1BBQUFBSnNRQUJ1UC96c0RNckFQLy9BQzRBQUFHd0F2Z0JEd0lNQWZBQytNQUFBQW14QUFHNEF2aXdNeXNBLy84QVJmLzNBUElDb0FFUEFCNEJFUUlmd0FBQUNiRUFBcmdDSDdBekt3RC8vd0FtL3prQi9nTDRBaWNBRFFBQS9nZ0JCZ0FOQUFBQUNiRUFBYmorQ0xBekt3RC8vd0JFLy9JQjNnQ0NBQ2NBRVFFUkFBQUFCZ0FSQUFBQUFnQTIvL1VBdWdMVkFBc0FGd0FmUUJ3QUFRRUFYd0FBQUlwTEFBSUNBMThBQXdPTEEwd2tKQ1FpQkEwWUt4TTBOak15RmhVVUJpTWlKaEUwTmpNeUZoVVVCaU1pSmpZbUhCd21KaHdjSmlZY0hDWW1IQndtQXBFa0lDQWtKQ0FnL2N3bEh4OGxKQ0FnQUFBQUF3QTIvKzRERFFMYUFBc0FGUUFoQUNOQUlBTUJBUUVBWHdJQkFBQ0tTd0FFQkFWZkFBVUZpd1ZNSkNRaUpDUWlCZzBhS3hNME5qTXlGaFVVQmlNaUppVTBOak15RlJRaklpWUJORFl6TWhZVkZBWWpJaVkySWg4ZkpDUWZIeUlDVkNJZlFrSWZJdjdXSXg4Zkl5TWZIeU1DbVNBaElTQWhJQ0FoSUNGQlFTRDl0eUFoSVNBaElDQUFBQUFCQUJiL0VBSkwvK01BQ3dBWlFCWUxCd1lEQUVnQUFBQUJYd0FCQVljQlRDUWlBZzBXS3hjV0ZqTXlOamNYQmlNaUowQW1nVXBJZ1NZclg3dTVZaDFRUzB0UUY3eThBQUFCQUVBQTFnRlRBaE1BQWdBR3N3RUFBVEFyTnhFRlFBRVQxZ0U5bmdBQUFBSC9vZjhLQUY3L3h3QUxBQWF6Q1FVQk1Dc1hCeGNISndjbk55YzNGemRkTnpnbk9Ea2xPamNuTmpkZE9UY25PRG9sT2pZb056Y0FCZ0JBL3l3QXlnTjdBQXNBRndBakFDOEFPd0JIQUxOTHNCNVFXRUE2QUFFTUFRQURBUUJuQUFVT0FRUUhCUVJuQUFjUEFRWUpCd1puQUFzUkFRb0xDbU1OQVFJQ0ExOEFBd09DU3dBSkNRaGZFQUVJQ0lzSVRCdEFPQUFCREFFQUF3RUFad0FERFFFQ0JRTUNad0FGRGdFRUJ3VUVad0FIRHdFR0NRY0dad0FMRVFFS0N3cGpBQWtKQ0Y4UUFRZ0lpd2hNV1VBelBUd3hNQ1VrR1JnTkRBRUFRMEU4UnoxSE56VXdPekU3S3lra0x5VXZIeDBZSXhrakV4RU1GdzBYQndVQUN3RUxFZzBVS3hNaUpqVTBOak15RmhVVUJnY2lKalUwTmpNeUZoVVVCZ2NpSmpVME5qTXlGaFVVQmdjaUpqVTBOak15RmhVVUJnY2lKalUwTmpNeUZoVVVCZ2NpSmpVME5qTXlGaFVVQm9VZUp5Y2VIU2dvSFI0bkp4NGRLQ2dkSGljbkhoMG9LQjBlSnljZUhTZ29IUjRuSng0ZEtDZ2RIaWNuSGgwb0tBTHdJaU1tSUNBbUl5TEJJU1FtSUNBbUpDSENJU1VsSUNBbEpTSENJaVFsSUNBbEpDSzlJU1FsSVNFbEpDSENJaVFtSHg4bUpDSUFBQUFCQUVUK3ZRRVBBMUFBU3dBUlFBNHhNQXNEQUVnQUFBQjBHUUVORlNzM0ZCNERGUlFHQmdjMU5qWTFOQzRETlRRK0F6VTBMZ00xTkQ0RE5UUXVBelUwTmpZM0ZRWUdGUlFlQXhVVURnTVZGQjRERlJRT0E0UWNLaWtjTzF3ME8xQWNLU29jSENvcEhCd3BLaHdjS2lrY0hDa3FIRHRkTXp0UUhDb3BIQndxS1J3Y0tpa2NIQ29wSEFZVUd4Z2ZMQ0kwUHg4RFBRY3BJeGNkR0IwdEl5WXRHaE1YRkJZWUV4a3JKaVVxR1JNWkZ4TWNHUjRzSWpVK0hnUTlCeWtrRmgwWUhTMGpKaTBhRXhjVUZSZ1RHaXdsSlNvWUZCa0FBQUFFQURiL2dRS2ZBdmdBSmdBN0FFVUFTd0NqUUNjMU5DWUxDQVVHQ0FGSlNFUkRQejRURUE4TUNna0lLd0VIQ1NvQkJnY2ZHaGNVQkFRR0JVcExzQ2xRV0VBcEFBa0FCd1lKQjJnS0FRWUFCQU1HQkdjTEFRZ0lBVjhBQVFHQ1N3VUJBd01BWFFJQkFBQ0VBMHdiUUNjQUFRc0JDQWtCQ0djQUNRQUhCZ2tIYUFvQkJnQUVBd1lFWndVQkF3TUFYUUlCQUFDRUEweFpRQnc5UENnblFrQThSVDFGTHkwbk95ZzdIaDBjR3hrWUVpRVFEQTBYS3dFekZUTXlGelV6RlJZV0Z3Y21KaWNSTmpZM0ZRWUdCeEVqRVFZakF5TVJKaVkxTkRZMk54TXlOamMxQmdZbklpWTFKalkzTlE0Q0ZSUVdFeUlIRVJZek1qY1JKZ2NVRnhFR0JnRkJRZ0l2TGtJaFBSMGdHUzBWSFRrYUdqY2ZRaXd5QVVKNmtVUjVUamxIY1NzemJDNXVmZ0ZYUnp0Y05YMjFFaElLQ2lja0hPZGlLemNDK0RvRVBrY0ZEZ2xhQndzRS90TUZFUXVSQ1E4Ry91c0JEQVQrK0FFTERJbUpVWEpEQ3Y0RkR3MGdEUXdCVzJwWGFSSVFDanBmUVdoL0FaMEMvcjhCQXdFL0FxNXhHd0VtRTAwQS8vOEFOZjkvQU5nQWRBQkhBQThBL2dBQXdBQkFBQUFBQUFJQVF3RWRBZUFDK0FBTEFCY0FRYkVHWkVSQU5oVVBDUU1FQkFVQlNoSUdBZ0ZJQWdFQkJnRUZCQUVGWlFjQkJBQUFCRlVIQVFRRUFGMERBUUFFQUUwU0VoSVNFaElTRVFnSEhDdXhCZ0JFQVNjak55Y3pOeGN6QnhjakJ6Y3pKemNqSndjakZ3Y3pBUkpFaTBWRmkwUkRpMFpHaTBNdFlURXhZUzB0WWpFeFlnRWRkWGg1ZFhWNWVDcE9WRlZPVGxWVUFBQUJBSG9BS2dKL0FpOEFFQUFHc3djQUFUQXJOeWNCSmlZSEp6WVdGeFlXQnljMkppZVlIZ0dFS1U0cElrVjNNek1oSHlJUERpTXFIZ0dFSXc0UEloOGhNek4zUlNJcFRpa0FBQUQvL3dCRUFSZ0F6UUdvQWdZQWVRQUEvLzhBSnY4M0FNb0JWUU1IQ3BnQUFQNVRBQW14QUFHNC9sT3dNeXNBQUFELy93QWQvemNBd0FGVkF3Y0ttUUFBL2xNQUNiRUFBYmorVTdBekt3QUFBQUFCQUZEL1lnRXpBUmtBQlFBa1FDRUFBQUVBZ3dBQkFnSUJWUUFCQVFKZUF3RUNBUUpPQUFBQUJRQUZFUkVFRFJZckZ4RXpFVE1WVUVhZG5nRzMvb2MrQUFBQUFBRUFHZjlpQVB3QkdRQUZBQjVBR3dBQUFnQ0RBQUlCQVFKVkFBSUNBVjRBQVFJQlRoRVJFQU1ORnlzVE14RWpOVE8xUitPY0FSbitTVDRBQUFFQVVBRVRBVE1DeWdBRkFCbEFGZ0FBQWdDRUFBSUNBVjBBQVFHQ0Frd1JFUkFERFJjckV5TVJNeFVqbGtiam5RRVRBYmMrQUFBQUFRQVpBUk1BL0FMS0FBVUFIMEFjQXdFQ0FBS0VBQUFBQVYwQUFRR0NBRXdBQUFBRkFBVVJFUVFORmlzVEVTTTFNeEcxbk9NQkV3RjVQdjVKQUFBQS8vOEFLUDlpQWY4Q3lnQW5BQXNBNVFBQUFBWUFDd0FBLy84QUd2OWlBZklDeWdBbUFBejhBQUFIQUF3QTRnQUFBQUVBMHdEQkF4UUNBd0FaQUNKQUh3QUNBQU1BQWdObEFBQUJBUUJWQUFBQUFWMEFBUUFCVFRFMk1UTUVEUmdyQVJRZUFqTWhGU0VpTGdJMU5ENENNeUVWSVNJT0FnRUJLVVZZTHdFZS91STBhRlF6TWxWbk5RRWUvdUl2V0VVcEFXSXNMeE1ETUFZZFFqdzhRaDBHTUFNVEx3QUFBUURVQU1FREZRSURBQmtBS0VBbEFBSUFBUUFDQVdVQUFBTURBRlVBQUFBRFhRUUJBd0FEVFFBQUFCa0FGekUyTVFVTkZ5czNOU0V5UGdJMU5DNENJeUUxSVRJZUFoVVVEZ0lqMUFFZUwxaEZLU2xGV0MvKzRnRWVOR2hVTXpKVlp6WEJNQU1UTHl3c0x4TURNQVlkUWp3OFFoMEdBQUFBQVFBbUFPUUF5Z01DQUF3QUdFQVZBQUFCQVFCVkFBQUFBVjBBQVFBQlRSWVNBZ3dXS3hNME56TUdCaFVVRmhjakppWW1YRWd1TUM4dlNDMHZBZk9sYWplTlMwbU9PREtLQUFBQUFBRUFIUURrQU1BREFnQU5BQmhBRlFBQkFBQUJWUUFCQVFCZEFBQUJBRTBXRXdJTUZpc1RGQVlISXpZMk5UUW1Kek1XRnNBdkxFZ3dMUzR2U0M0dEFmVlRpVFU0amtwTGpEYzBqUC8vQUFrQTN3RXlBZmdDSmdBUUFBQUJCd0JxLzNqL0dBQUpzUUVDdVA4WXNETXJBUC8vQUNVQTN3RWRBVGtDQmdBUUFBRC8vd0FsQU44QkhRRTVBZ1lBRUFBQS8vOEFLQURnQ3ZBQk9BQW5BZ0lITUFBQUFDY0NBZ09ZQUFBQUJnSUNBQUQvL3dBb0FPQUhXQUU0QUNjQ0FnT1lBQUFBQmdJQ0FBRC8vd0FsQU44QkhRSUtBQ2NBRUFBQUFORUJCZ0FRQUFBQUNMRUFBYkRSc0RNckFBRC8vLy85QWNnQm1RTEtBQ2NLb1FDMEFBQUFCZ3FoQUFBQUFmLzlBY2dBNVFMS0FBTUFHVUFXQUFBQkFJUUNBUUVCZ2dGTUFBQUFBd0FERVFNTkZTc1RFeU1EWklGRm93TEsvdjRCQWdBQUFQLy9BQ2tCeUFNMEFzb0FKZ0lSQUFBQUp3SVJBTFlBQUFBbkFoRUJiQUFBQUFjQ0VRSWlBQUQvLy8vOUFjZ0NUUUxLQUNjS29RRm9BQUFBSndxaEFMUUFBQUFHQ3FFQUFQLy9BRDMvZndHbEFIUUFSd0lMQWNRQUFNQUFRQUFBQUFBQkFCai9mUUVwQWtNQUlRQXNRQ2tRQVFVQUFVb0FBQUFGQXdBRlp3QURBQVFEQkdNQUFnSUJYd0FCQVV3Q1RCWVJIUkVXRUFZSkdpc1RNalkxTlRRMk5qY1ZCZ1lWRlJRR0J4VVdGaFVWRkJZWEZTSW1KalUxTkNZbkdDczBJRTFGSmpJckxDd3JNU2RFVGlBM0tBRUhJU1oyS2pnY0FVd0JHaUp4THpJSEF3Z3ZMM1FpR0FKTEdqZ3RjU2NqQVFBQkFCdi9mUUVzQWtNQUlBQXNRQ2tRQVFBRkFVb0FCUUFBQWdVQVp3QUNBQUVDQVdNQUF3TUVYd0FFQkV3RFRCVVJIUkVXRUFZSkdpc2xCZ1lWRlJRR0JpTTFOalkxTlRRMk56VW1KalUxTkNZbk5USVdGUlVVRmpNQkxDZzNJRTVFSnpFc0t5c3NNaVpsVFRRcnVBRWpKM0V0T0JwTEFoZ2lkQzh2Q0FNSE1ERnhJaG9CVEQ5QWRpWWhBQUVBT2Y5OUFQTUNTQUFIQUJ4QUdRQUNBQU1DQTJFQUFRRUFYUUFBQUV3QlRCRVJFUkFFQ1JnckV6TVZJeEV6RlNNNXVtTmp1Z0pJU1AzRVJ3QUFBQUFCQUJmL2ZRRFJBa2dBQndBY1FCa0FBd0FDQXdKaEFBQUFBVjBBQVFGTUFFd1JFUkVRQkFrWUt4TWpOVE1SSXpVemVXSzZ1bUlDQUVqOU5VY0FBQUFBQWdBeC8vY0FxUUkvQUFNQUR3QWZRQndBQVFFQVhRQUFBRXhMQUFJQ0ExOEFBd05SQTB3a0l4RVFCQWtZS3hNekF5TUhORFl6TWhZVkZBWWpJaVl6ZEJCVEV5SWFHaUlpR2hvaUFqLytjNEVnSEJ3Z0hod2MvLzhBTWYvM0FYd0NQd0FuQ3FrQTB3QUFBQVlLcVFBQUFBSUFNdjkyQUtzQnZRQUxBQThBSWtBZkFBRUFBQU1CQUdjQUF3SUNBMVVBQXdNQ1hRQUNBd0pORVJJa0lnUUpHQ3NURkFZaklpWTFORFl6TWhZREl4TXpxeVFaR1NNaUdob2pCSFFSVXdHQ0lSb2FJUjhjSFAzVkFZd0FBUUFmQUNnQTlBR05BQVlBQnJNR0F3RXdLeE1IRndjbk5UZjBhR2hJalkwQlpZdUxKNndMcmdBQUFBQUJBQjBBS0FEeUFZMEFCZ0FHc3dZREFUQXJOemNuTnhjVkJ4MXFha21NakUrTGl5aXVDcTBBQVFBZi80RUE3d0pJQUEwQUUwQVFBQUVCQUYwQUFBQk1BVXdXRXdJSkZpczNORFkzTXdZR0ZSUVdGeU1tSmg4N08xbzdOemM2V1R3NjRXVzZTRXU3WVY2MlRFVzNBQUFBQVFBWC80RUE1d0pJQUEwQUUwQVFBQUFBQVYwQUFRRk1BRXdXRXdJSkZpczNGQVlISXpZMk5UUW1Kek1XRnVjNlBWZzVOalk2V1Q0NTRXUzRSRXkyWG1HN1MwcThBQUFBQWdBSy8vY0JhQUpIQUJzQUp3QXlRQzhOQVFBQkRBRUNBQUpLQUFJQUF3QUNBMzRBQUFBQlh3QUJBVkJMQUFNREJGOEFCQVJSQkV3a0l4a2tLUVVKR1NzM05EWTNQZ0kxTkNZaklnY25Oall6TWhZVkZBWUhCZ1lWRlNNSE5EWXpNaFlWRkFZaklpWjBIQ3dpSHdrdkpUMUdKU3BUTWxOY01ESWZIMVFPSWhzWkl5TVpHeUxMS3pzY0ZpSWRFU0lpSmtnV0dFdERNMFVoRkNjbERvRWdIQndnSGh3Y0FBQUFBZ0FXLzI0QmN3RzlBQXNBS0FBMVFESVpBUUlFR2dFREFnSktBQVFBQWdBRUFuNEFBUUFBQkFFQVp3QUNBd01DVndBQ0FnTmdBQU1DQTFBWkpTc2tJZ1VKR1NzQkZBWWpJaVkxTkRZek1oWUhGQVlIRGdJVkZCWXpNalkzRndZR0l5SW1OVFEyTnpZMk5UVXpBUmdpR3hrakl4a2JJaEFjS3lFZ0NqQWxIejhsSlNsVU1WTmNNRElnSGxJQmd4OGNIQjhmR3h1NExEb2NGaUVmRVI4aUVoSkpGeFpMUWpSRUlSWW1KUTRBQUFBQkFCVUF5d0hYQVY4QURRQW1RQ01FQXdJQkFnR0VBQUFDQWdCWEFBQUFBbDhBQWdBQ1R3QUFBQTBBRFNJU0lnVUdGeXMzTmpZek1oWVhJeVltSXlJR0J4VWJla3BWZUJZNUVsaEFORndXeTA5RlIwMG5MU2tyQUFBQS8vOEFjUUtTQWRBREJRQUhERjBCSVFBQUFBQUFBUUFXLy9ZQ1lnS1ZBQjRBa2t1d0cxQllRQTREQVFBQ0ZBRUdBQlVCQndZRFNodEFEZ01CQUFJVUFRWUFGUUVKQmdOS1dVdXdHMUJZUUNjREFRRUJCMThLQ1FJSEI0dExDQVVDQUFBQ1hRUUJBZ0tGU3dBR0JnZGdDZ2tDQndlTEIwd2JRQ1FJQlFJQUFBSmRCQUVDQW9WTEF3RUJBUWxkQ2dFSkNZTkxBQVlHQjJBQUJ3ZUxCMHhaUUJJQUFBQWVBQjRUSlNJUkVSRVJFeEVMRFIwckZ4RWpOVGMzTXhVek56TVZNeFVqRVJRek1qWTNGUVlHSXlJbU5SRWpFV0JLVUNOQmtTTkJtcHBMR0NzVkZUb2lTRldLQVFIS01DTjVlWGw1VS83YVZnY0dVUWdMVEY0QktmNDNBQUFCQURrQUFBTUFBc29BR2dBelFEQVZFZ0lFQUFGS0FnRUFBUVFCQUFSK0FBUUVBVjBBQVFHQ1N3WUZBZ01EZ3dOTUFBQUFHZ0FhRmhNUkVSUUhEUmtyTXpVME5qWTNOVE1WRmhZVkZ5TTFMZ0luRlNNMURnSVZGVGs4aG05bW41QUJhUUVzV0VKbVJsZ3JtbktZVUFmUHp3cWtzSjJiWVc4eEJmdjdCVEp1WUp3QUFBQUNBQW9BQUFJckFzb0FGZ0FmQUR4QU9Rb0JBZ1FCQVFBQ0FXVUZBUUFJQVFZSEFBWmxDd0VKQ1FOZEFBTURna3NBQndlREIwd1lGeHNaRng4WUh4RVJFUkVrSVJFUkVBd05IU3MzTXpVak5UTVJNeklXRlJRR0l5TVZNeFVqRlNNMUl3RWpGVE15TmpVMEpncFZWVlhJaFgrR2pFNmlvbXhWQVJWVVFWSmVUY3BXV2dGUWJHUmllRlpMZjM4QjhmWTNSajA4QUFBQUFBSUFWUUFBQXZBQ3lnQU9BQndBUEVBNUFBRUVCUVFCQlg0QUFnSUFYUVlCQUFDQ1N3QUVCSVZMQUFVRkExNEhDQUlEQTRNRFRBQUFIQm9XRlJNUkVBOEFEZ0FPSXhRaENRMFhLek1STXpJV0ZoVVJJeEUwSmlNakVSTXpFVE15TlJFekVSUUdCaU1qVmZoUFpDOWdTa1dMWFdDSWxtQXdhRlh4QXNvN2EwZisyUUVtVVUzOWhnSVUvanlmQWR2K0pFWnJQUUFFQUJYL3NRS3JBdFFBU0FCUkFGb0FaZ0J2UUd3b0FRUURLUUVBQkE4SkFna0FZRmhWU3hjRkN3bEhSRUU5T2dFR0Jnc0ZTZzBJQndNRkJnV0VBZ0VDQUF3T0NnTUpDd0FKWndBRUJBTmZBQU1EaWtzQUN3c0dYd0FHQm9zR1RGTlNBQUJsWTE5Y1VscFRXbEJPQUVnQVNFTkNRRDQ4T3kwckppUWtKQ1lQRFJjckZ6VW1KalUwTmpNeUZ6TTJOak15RnpNMk5qTXlGaFVWTmpVMEppWW5MZ0kxTkRZMk16SVdGd2NtSmlNaUJoVVVGaFlYSGdJVkZBWUhGU00xQmlNaUp4VWpOU1ltSnhVbkZCYzFOQ1lqSWdZM0lnWVZGaFlYTlRRWEZSWXpNamMxTkNZaklnWnlLekloSXpjUkF4QXVHa0VWQXc4d0ZpNHZReWxNTlM1U05EeHFSVFZqTWlRdlVpZzRSU1ZFTHpkVk1GUlFPeHNlSFJ3N0hqb2FhaThNRVFvSXF5SWZHam9lT3hrWkl4MFlHUjBrVDNvVk95WVpMQzBhRkM4YUZUQTVOQ0JESnpNbkZoSXhUencrVmk0WEZsWVRGVFV1SkN3aUV4YzFTenBJWVJSU1NBTUNSMHdEQ3dsajd5RVpCeVVrRFEwME1nY0xCRGhFVmlzQkJUc2xIUzBBQWdBU0FBQUNHZ0xLQUFNQUN3QW5RQ1FBQVFFQVhRQUFBSUpMQlFFREF3UmRBQVFFaFVzQUFnS0RBa3dSRVJFUkVSQUdEUm9yRXlFVklRRWpFU00xSVJVakVnSUkvZmdCT216T0Fnak9Bc3BjL1pJQnhseGNBQU1BRGYvM0F3SUMwZ0FxQURVQVJnQlZRRkpHUlVSREhSc0dDQUFlQWdJRENDb2tIQUVFQkFNbEFRVUVCRW9BQ0FBREJBZ0Rad0FHQmdGZkFBRUJpa3NKQVFBQUFsOEhBUUlDaFVzQUJBUUZYd0FGQllzRlRFQStJeVFsSkNnbElpUWxDZzBkS3pjbk55WTFOU01pSmpVME5qTXlGaFVoTWhZV0ZSUUdJeUltSnljSEp3Y1dGak15TmpjVkJpTWlKaWNETkNZaklnWVZGQll6TXdVV0ZqTXlOalVtSmlNaEZSUVhOeGMzcHlkYUN4aExYMHM4UGs0QkNVMWdMRFl4SVM0V0VsTk1WaE5iVFNBK0pqbEhaWDhlSFNVZUdTSWtLRElCaFE0Z0ZSb1NBVUpNL3V3RGIwUk5ZVEJLT0Voa1NVazdSbGxmTTFVMVFVNGRGaE5NVWtoRk9Ra0xYaE5VVHdHaUxETWZHeUlsNGhBZUxpQXVPV1lsSGx0TFJnQUFBQUVBTndBQUFrZ0RMd0FwQUQ1QU94TVJCd01GQWlBZEZoUUVCQVVDU2dNQkFRWUJCQUFCQkdVQUJRVUNYUUFDQW9KTEJ3RUFBQWhkQUFnSWd3aE1FU1lTTVJjUlFSY1FDUTBkS3pjekppWTFORFkzTlRNVk5qTXlGelV6RlJZWEZTWW5GU00xSmlNaUJ4VWpOUVlWRkJZV016TVZJVGUyU1dSeWJUNFFFUmdWUGlrb0tTZytFUkVYRlQ1MFJvTmJlZjN2WENpVWJuMmtHVzltQVFGbWJnZ1BYQThIeDlBQkE4NjlNNmxVZzB0Y0FBQUEvLzhBR3YvMUF1UUN5Z0VQQWlBREJ3TEt3QUFBQ2JFQUFiZ0N5ckF6S3dBQUFRQWwvK1VDUndKWkFCMEFJRUFkSFJvUkRRb0RCZ0FCQVVvT0FRRklBQUVBQVlNQUFBQjBIaFlDQmhZckJTWW1Kd1lHQnlNMk5qY21KaWMzRmhZWFBnSTNNdzRDQnhZV0Z3SU1PSmRTUFRVRVVBSkdUU2RMSHpwQmxFTW1MeFlCVndRbFB5MHZVQjhiVGNWaFViTlZZOUJlTEVjY09qdWlWaTFvWlNjNmZYWXZPMnN0QUFBQS8vOEFBZi8xQXJBQzFBRVBBQWtDNFFMS3dBQUFDYkVBQTdnQ3lyQXpLd0FBQVFBaEFBQUI3d0pGQUJBQUswQW9BQUlBQVFBQ0FXVURBUUFFQkFCVkF3RUFBQVJkQlFFRUFBUk5BQUFBRUFBUUZDRWpFUVlHR0Nzek5TRVJOQ1lqSXpVek1oWVdGUkV6RlNFQk0wVlhnWUZYWnl4TlJRRWFWa3hFTG10YS92TkZBQUFBQUFNQUJmLzBBWDBDMVFBTEFBOEFHd0I3UzdBVFVGaEFHQUFCQVFCZkJnTUNBQUNLU3dBRUJBSmdCUUVDQW9NQ1RCdExzQlZRV0VBY0FBRUJBRjhHQXdJQUFJcExBQUlDZzBzQUJBUUZZQUFGQllzRlRCdEFJQVlCQXdPQ1N3QUJBUUJmQUFBQWlrc0FBZ0tEU3dBRUJBVmdBQVVGaXdWTVdWbEFFQXdNR2hnVUVnd1BEQThUSkNJSERSY3JFelEyTXpJV0ZSUUdJeUltSlFFakFRTTBOak15RmhVVUJpTWlKZ1ltSEJ3bUpod2NKZ0YzL3VGWkFSOHFKUjBjSlNVY0hTVUNrU1FnSUNRa0lDQmQvVFlDeXYxdkpDQWdKQ1FoSVFBQUFBQUJBQUlBQUFHOUFrVUFCd0FtUUNNRUFRTUFBNFFBQVFBQUFWVUFBUUVBWFFJQkFBRUFUUUFBQUFjQUJ4RVJFUVVHRnlzaEVTRTFJUlVqRVFFaS91QUJ1MDBDQUVWRi9nQUFBQUQvL3dBai84VUJOUUJ1QXdjS3p3QUEvbFVBQ2JFQUFyaitWYkF6S3dBQUFBQUNBQ01CY0FFMUFoa0FBd0FIQUM5QUxBQUFCQUVCQWdBQlpRQUNBd01DVlFBQ0FnTmRCUUVEQWdOTkJBUUFBQVFIQkFjR0JRQURBQU1SQmd3Vkt4TTFJUlVGTlNFVkl3RVMvdTRCRWdIaE9EaHhPRGdBQUFBQUFRQUgvK2tCVFFKUUFCb0FGMEFVRnd3TEFRUUFTQUFCQUVjQUFBQjBGaFVCQmhRckZ6VStBelUxTkNZbkp6VVhGaFlWRlJRV0Z4Y2pKeFFHQndjMlJDVU9GaDFVaURFY0NnWTdVQ2dsR2hkU0h5OHJOQ2FUSVI4Skcwc3BEMGhBYlJRckZOQ3lKam9RQUFELy93QWovLzRCTlFBMkF3Y0swZ0FBL2xVQUNiRUFBYmorVmJBekt3QUFBQUFCQUNNQnFRRTFBZUVBQXdBWlFCWUFBQUFCWFFJQkFRR3JBVXdBQUFBREFBTVJBdzhWS3hNMUlSVWpBUklCcVRnNEFBQUFDUUFwLy9ZR0FRTFVBQXNBRHdBWEFDUUFNUUErQUVZQVRnQldBTkZMc0JsUVdFQTRGd29XQ0JVRkJob1FHUTRZQlF3RkJneG9BQVVBQVEwRkFXY1VBUVFFQUY4VEF4SURBQUNLU3hFUEFnME5BbDhMQ1FjREFnS0RBa3diUUVBWENoWUlGUVVHR2hBWkRoZ0ZEQVVHREdnQUJRQUJEUVVCWnhNQkF3T0NTeFFCQkFRQVh4SUJBQUNLU3dBQ0FvTkxFUThDRFEwSFh3c0pBZ2NIaXdkTVdVQkxVRTlJUjBBL016SW1KUmtZRVJBTURBRUFWRkpQVmxCV1RFcEhUa2hPUkVJL1JrQkdPVGN5UGpNK0xDb2xNU1l4SHgwWUpCa2tGUk1RRnhFWERBOE1EdzROQndVQUN3RUxHdzBVS3hNeUZoVVVCaU1pSmpVME5nVUJJd0VGSWhVVU16STFOQVV5RmhVVUJpTWlKaVkxTkRZaE1oWVZGQVlqSWlZbU5UUTJJVElXRlJRR0l5SW1KalUwTmdVaUZSUXpNalUwSVNJVkZETXlOVFFoSWhVVU16STFOTVJTVFU1UlMxQkxBaXYrZEZjQmpQNTlRVUZFQkZwUVRrNVFOa1VoVGYyQlVVNU9VVFZGSVV3QnRsRk9UbEUyUlNGTkFiWkJRVVA4NzBGQlJBRWpRVUZFQXRSN1pHeDFkbXRyZEFyOU5nTEtRNUtWbFpMUmZHTnNkVHBsUW10MGZHTnNkVHBsUW10MGZHTnNkVHBsUW10MFRaT1RrNU9UazVPVGs1T1RrLy8vQUNQL2p3RTFBS1VEQndyVkFBRCtWUUFKc1FBQnVQNVZzRE1yQUFBQUFBRUFJd0U2QVRVQ1VBQUxBQ3hBS1FBQ0FRVUNWUU1CQVFRQkFBVUJBR1VBQWdJRlhRWUJCUUlGVFFBQUFBc0FDeEVSRVJFUkJ3d1pLeE0xSXpVek5UTVZNeFVqRlk1cmF6eHJhd0U2YnpodmJ6aHYvLzhBSEFBQUFia0N5Z0JIQUM4Q0dBQUF3QUJBQUFBQUFBTUFHdjhRQW13Q3lnQUxBQThBRXdCSVFFVU5DQUlEQWdFQkFRVUdBa29EQVFFQlNRQUFCQUVCQWdBQlpRQUNBQVlGQWdabEFBVURBd1ZWQUFVRkExMEhBUU1GQTAwQUFCTVNFUkFQRGdBTEFBc1NFUlFJQmhjckZ6VUJBVFVoRlNFVEFTRVZBemNESXdNaE5TRWFBVDMrendJMi9wUDcvdFVCcmZFdCtFc09BZVQrVmZBL0FXSUI0amMzL25IK3NxWUJ5VEVCaWZ5eFBnQUEvLzhBU1AvM0FwY0MxUUVQQUNvQzB3TEx3QUFBQ2JFQUFiZ0N5N0F6S3dELy93QWNBQUFCdVFMS0FROEFMd0lZQXNyQUFBQUpzUUFCdUFMS3NETXJBUC8vQUFBQUFBSkhBc29CRHdBOEFrY0N5c0FBQUFteEFBRzRBc3F3TXlzQS8vOEFLUUFjQTZnQ3RRR0hBRFFDL3YvZ0FBQkFBTUFBQUFBQUNiRUFBcmovNExBekt3QUFBQUFFQUIzLzl3TEJBdElBR1FBZEFDZ0FRQUNTUUk4WEFRUUdGZ0VEQkFVQkFRZ3lBUXNLUFRNQ0RBcytBUVVNQmtvT0FRWUFCQUFHQkg0QUFRZ0NDQUVDZmdBRkRBa01CUWwrRFFFQUFBUURBQVJuQUFNQUJ3Z0RCMmNBQ0FBQ0NnZ0Nad0FLQUFzTUNndG5BQXdGQ1F4WEFBd01DVjhQQVFrTUNVOHFLUm9hQVFBN09UYzFNQzRwUUNwQUppUWdIaG9kR2gwY0d4UVNEdzBKQndRREFCa0JHUkFHRkNzVE1oVVZJeWNHQmlNaUpqVTBOamMzTlRRbUl5SUdCeWMyTmdVQkl3RUZCd1lHRlJRV016STJOUUVpSmpVME5qTXlGaGNISmlZakloVVVNekkyTnhVR0JyaUZOQTBVT2lVeE8xSlFOaWNlR2pNWkdSeEVBZi8rV0ZjQnFQNjhNRGNtR3hZdkxRRmlTRmxlU0I0MEV4Y1RLaEZXVXhzdkZoUXVBdEozMnk0WEhUSTBORFFEQWhJZUdnOE1OZzRTQ1AwMkFzcXVBZ0lmR0JnVkxpWDk4RlJaWEZNTUNUd0hDM0J0RFF0Q0N3c0FCQUFkLy9jQ29nTFNBQmtBSFFBb0FFNEFqVUNLRndFRUJoWUJBd1FGQVFFSVFnRU1DME13QWdvTUx3RUZDZ1pLRGdFR0FBUUFCZ1IrQUFFSUFnZ0JBbjRBQlFvSkNnVUpmZzBCQUFBRUF3QUVad0FEQUFjSUF3ZG5BQWdBQWdzSUFtY0FDd0FNQ2dzTVp3QUtCUWtLVndBS0NnbGZBQWtLQ1U4YUdnRUFSMFZBUGpReUxTc21KQ0FlR2gwYUhSd2JGQklQRFFrSEJBTUFHUUVaRHdZVUt4TXlGUlVqSndZR0l5SW1OVFEyTnpjMU5DWWpJZ1lISnpZMkJRRWpBUVVIQmdZVkZCWXpNalkxQVJRR0l5SW1KelVXRmpNeU5qVTBKaWNtSmpVME5qTXlGaGNISmlZaklnWVZGQllYRmhhNGhUUU5GRG9sTVR0U1VEWW5IaG96R1JrY1JBSHAvbGhYQWFqKzBqQTNKaHNXTHkwQnJVbEhJamdZR3o4ZElpRWlMakkxU2pzZk94d1dHRFViR3hra0xDMDVBdEozMnk0WEhUSTBORFFEQWhJZUdnOE1OZzRTQ1AwMkFzcXVBZ0lmR0JnVkxpWCtXREkyQ3dwQURROFdFUlFXRWhNc0xDNHRDdzA0Q2cwU0RoTVZFQkFwQUFBQUFBTUFLZi82QXcwQ3lnQURBQnNBTHdCd1FHME5BUVFCR0E0Q0JRUVpBUUlGSHdFQUNRUktEUW9DQ0FJSkFnZ0pmZ1lCQUFrSENRQUhmZ01MQWdFQUJBVUJCR2NBQlF3QkFnZ0ZBbWNBQ1FBSENWY0FDUWtIWHdBSENRZFBIQndGQkFBQUhDOGNMeXdxS0Nja0loNGRGaFFTRUFzSkJCc0ZHd0FEQUFNUkRnWVZLd0VCSXdFQklpWTFORFl6TWhZWEJ5WW1JeUlWRkRNeU5qY1ZCZ1lGRVNNbkl3WUdJeUltTlRVekZSUXpNalkxTlFLQy9saFlBYW4rb0VsWlgwZ2ROUk1YRXlvUlZsTWJMeFlVTGdJaVFRWUZFalVlUGtOUVBqQW1Bc3I5TmdMSy9xTlRXVnhVRFFrOEJ3dHdiUTRMUWdzTEhmNndMQmtaT2tIYjBVYzVOYW9BQUFELy93QXkvL1lEekFMVUFDWUFjZ0FBQUFjQUpnRnpBQUFBQWdBZ0FBQUNMZ0xLQUJzQUlnQkZRRUlOQ0FJREFpQWZGUTRFQkFNV0FnSUZCQU5LQUFFQ0FZTUFBZ0FEQkFJRFp3QUVBQVVHQkFWbkFBWUFBQVpWQUFZR0FGMEFBQVlBVFJFVkVSUVJHQkFIQmhzcklTRTFKaVkxTkRZM05UTVZGaGNISmlZbkVUWTJOeFVHQmdjVklRRVVGaGNSQmdZQ0x2NlBTMUpXUjBsRU1oUVhNQnNhT0JvYU9Cb0JLUDQyS2k4dktySU9iVjVlYXc1b1pBSVhOd29NQWY2N0FRMEtPZ3NOQVdzQlMwRlFEZ0U1RFZBQUFBUUFYd0FBQlhRQ3pRQUhBQk1BSFFBbUFOUkFFQ0VRQWdzS0V3MENEQXNLQVFBTkEwcExzQWxRV0VBdENBVUVEZ01GQVFBQmhBa0hCZ01DQUFvTEFncGxBQXNBREEwTERHVUFEUUFBRFZVQURRMEFYUUFBRFFCTkcwdXdDbEJZUURFQUFnWUNnd2dGQkE0REJRRUFBWVFKQndJR0FBb0xCZ3BsQUFzQURBMExER1VBRFFBQURWVUFEUTBBWFFBQURRQk5HMEF0Q0FVRURnTUZBUUFCaEFrSEJnTUNBQW9MQWdwbEFBc0FEQTBMREdVQURRQUFEVlVBRFEwQVhRQUFEUUJOV1ZsQUlBQUFKaVVkSEJzYUdSZ1hGaFVVRWhFUERnd0xDUWdBQndBSEVSRVJEd1lYS3lFbkl3Y2pFek1USVNNREF5TVRBek1YTnpNREFTTVJJUlVqRlRNVkl5VW1KaWNHQmdjSE13TXBMNzB1ZE1sMXhnSFZmRzF0ZEtDVGVHVmxkWi83KzJzQlMrREl5QUhyQlE0SEJ3NEZMcEhDd2dMTi9UTUJELzd4QVhFQldmLy8vcWoramdMS1crdGF0aFZGSVI5RUdzRC8vd0F5QUFBRFd3TFVBQ1lBY2dBQUFBY0FLUUZxQUFELy93Qk1BQUFBeFFMb0FnWUFUQUFBQUFNQUQvLzBBYWtDMUFBVEFCMEFLUUJDUUQ4RkFRSUFGQVFCQXdFQ0Frb0ZBUUVDQkFJQkJINEFBZ0lBWHdBQUFJcExBQVFFQTE4R0FRTURpd05NSHg0QUFDVWpIaWtmS1IwY0FCTUFFeWNIRFJVck53TUdCZ2NuTmpZek1oWVZGQVlHQndZR0ZSVW5OamMrQWpVMEppY0RJaVkxTkRZek1oWVZGQWFQRXhFa0V5VXdZVGxoYnhvMUtDUWtFUTBWSXlNTE95OGxIU1FrSFIwbEpkVUJvUVVPQ2tnWUcxMVNMRDgySFJzek14R2pFeEViS3lrWkxUTUQvVzBpSWlRZkh5UWlJZ0FDQUFULzlnTTVBdmdBSlFBeUFHdEFhQU1CQVF3QlNod0JEUUZKQ0FFR0JRYURBd0VCREFBTUFRQitDUWNDQlFvRUFnSUxCUUpsQUFzQURRd0xEV2NQQVF3QkFBeFhEd0VNREFCZkRnRUFEQUJQSnlZQkFDMHJKakluTWlFZkdCY1dGUlFURWhFUUR3NE5EQXNLQ1FnSEJnVUFKUUVsRUFZVUt3VWlKaWNqQnlNUkl4RWpFU00xTXpVekZUTTFNeFV6RlNNVkZBWUhNelkyTXpJV0ZSUUdKekkyTlRRbUl5SUdGUlVXRmdKZ09WQVlDQlJPbW1sT1RtbWFhcUdoQXdJRkdrODVaWE56Zno5R1JFRkxQUUU5Q2l3alJRSlYvYXNDVlVoYlcxdGJTQjRlUUJvcEw0dUZmNUpYWUZwY1hGNVhDVlplQUFBQUFBRUFHLzhRQWZnQzF3QWhBRlJBVVNBQkJnY0JBUVFGRndFQUJBd0JBZ01MQVFFQ0JVb0FCd0FHQlFjR1pRa0lBZ1VBQkFBRkJHVUFBQUFEQWdBRFp3QUNBUUVDVndBQ0FnRmZBQUVDQVU4QUFBQWhBQ0VSRVJFU0pDUWxFZ29HSENzQkZRY1dGaFVXQmdZaklpYzFGaFl6TWpZMU5DWWpJelUzSVRVek55RTFJUlVIQWR6a2duMEJRSHhhY2xVdlpDNWNVMk53UU0vKzUzR3EvdVVCcnNBQjFFZlVCR2xmUVdRNEkxOFdGRXcrT2o5TndscW9XMGU4QUFBQUJnQXMvL1lDZGdMVkFHQUFjZ0IvQUlVQWpnQ2dBTEpBcnpVYkZnOEVBZ0VjQVFNQ096WUNDd2VIaFlKK2ZYWlhTUWdNRFp1VldnY0VEd3dGU2dBR0JBb0VCZ3ArQUFVS0FRb0ZBWDRBQ3djTkJ3c05mZ0FKRHc0UENRNStBQWdBQ2dVSUNtY0FCQUFCQWdRQlp3QUNBQU1IQWdObkFBY0FEUXdIRFdnUkFRd0FEd2tNRDJjU0FRNEFBQTVYRWdFT0RnQmZFQUVBRGdCUGtJOTFjd0VBbXBhUG9KQ2dmSGR6ZjNWL2NYQnFhRkZRUWtBNk55OHRLaWtuSlNBZUdoZ1VFZ0JnQVdBVEJoUXJCU0ltSmpVME5qY21KalUwTmpZM055NENJeUlHRlJRV016STNGd1lHSXlJbU5UUTJOak15RmhZek1qWTJNeklXRmhVVUJnY0hOak15TWhjbUpqVTBOak15SGdJVkZBWUhGaFlWRkFZR0J5TStBalUwSndZR0J4WVdGUlFHQmhNMk5qVTBMZ0lqSWdZR0Z4UVdGeFlXQnpJeU55Y2lKaU1pQmdjSEZqYzJOeVltSndjM0RnSVZGQllXRXpJMk5UUW1Kd1lpSXlJbUp3WUdGUlFXQVJvc01oWUhCVEJJS2tFaEVRa2lKQXdQRHdzUENRb0JCQXNHSXlnWUlBd2FIQlFLQ0FRTEV3NE1BeE1MQXlJVkJ4SUtBUUV5UXl0SE1oc1NFUTBRR0I4S0pBa2hHdzhpWlQwSENoWXkxQVVHQ1JjdEpDZ2xDZ0VFQXl0aXh3a1JDQWdLRWdrUUd3d0dIM2wwSkNGYk1MTVFOREFNRFNtUUhSOEZBd2dTQ0JBbUZBSUNId29rT2lFVVdUVUlLU2tnS1JnRmtBVU9DaEVLQ0JNQ0VnRUJLUjRkSUFzWEZ4TVVEaEFERFNBUmlnTUJIUzhRUjFVblFsQW9IRFFYRGlRVkZpb2ZCd2NmS2hjYkZTVXlDemRZRVNFNkpBRytFeWtYSEVFNkpTaytJQkl5SFFNU3BnR3FBUUVCcHdNSEdGOFRGQVNlbWdraUlBWUhHeDcrNERRckRWWTVBUUVDTWxVWEt6UUFBZ0JmQUFBQ2J3TEtBQlVBSFFCS1FFY0lBUUVHRWc4TUNRUUNCQUpLQUFFR0JBWUJCSDRJQlFNREFnUUNoQUFBQUFjR0FBZGxBQVlCQkFaVkFBWUdCRjBBQkFZRVRRQUFIUnNZRmdBVkFCVVNFaElYSVFrR0dTc3pFVE15RmhVVUJnY1hOek1IRnlNbkJ5TTNKeU1SRVRNeU5UUW1JeU5md0l5R1RFRXlNbVZvYW1zNlBXTnhUWU5Xb1ZkVVRBTEthR2REWkJkUlVKaWtYbDZuZS83ZUFYdDhRellBQUFBQUFnQmlBQUFDa2dNUUFCTUFHZ0JIUUVRQUF3SURnd0FCQlFZRkFRWitCQUVDQ1FFQUNBSUFad0FJQUFVQkNBVm5BQVlIQndaVkFBWUdCMTBLQVFjR0IwMEFBQm9aRlJRQUV3QVRFUlVSRVJFUkVRc0dHeXNoRVNNUkl4RXpOVE1WTWhZVkZBWUdCeFVoRlFFMk5qVTBKaU1CRVdaSnIwbVNpVHA5WkFFNC9zaHJaR0J2QW9MK0hnSWhUMDlmYXo5aU9BSGJRZ0ZjQWtSUVNVY0FBd0JmLzI4Q2J3TnFBQmNBSUFBbUFGOUFYQWNDQWdVQUpDTWZBd1lGRFFFREJoQUJBUU1FU2dZRkJBTUVBRWdFQVFFREFnTUJBbjRBQWdLQ0J3RUFDQUVGQmdBRlpRQUdBd01HVlFBR0JnTmRBQU1HQTAwWkdBRUFHeG9ZSUJrZ0ZoVVVFeElSRHc0QUZ3RVhDUVlVS3dFeUZ6Y25Od1VIRmhVVUJnWUhFeU1EQXlNVEl4RWpFUmNqRlRNd01qTTNKaGMwSndjMk5nRW5MU1lOM0E4QkV4cUFLRUVqeUh5a1l6dG1UR3pCVlZvQ0JUZ2RmU2t4THlzQ3lnWTVORGxGYml1UU4wc3dEZjdEQVJQK1hBR3kvdDhDeWx6ejdRWjJQeHpSRERzQUFQLy9BQi8vOWdKRkF0UUNCZ0hHQUFBQUFnQXpBV1FDMkFMUkFDVUFPZ0JmUUZ3WEFRTUVOVEVwR0FRRkFRTURBUVlCQTBvRkFRUUNBd0lFQTM0S0NBY0RCZ0VBQVFZQWZnQUNBQU1CQWdObkFBRUdBQUZYQUFFQkFGOEpBUUFCQUU4bUpnRUFKam9tT2pRekxTd3JLaWduSEJvVkV3Z0dBQ1VCSlFzR0ZDc1RJaVluTlJZV016STJOVFFtSnk0Q05UUTJNeklXRndjbUppTWlGUlFXRnhZV0ZSUUdOeEV6RXhNekVTTTFORFkzSXdNakF5TVdGaFVWbVIwNEVSUTVIQ1VvSXlrYk1CNUNQUjAyRlJBVExobEFKaW8wTWt5RlhsNWhXMEFDQVFSbE5XQUVBUUlCWkFzSU53Z1BHQmtXR2c0S0dpZ2dMVElMQ2pJSkRTOFpGaEFTTENrME13WUJZUDd4QVEvK29NZ05MUTMrOFFFUEVDa0t6QUFBQUFULzh2LzNCQlVDSUFCT0FGd0FhZ0I0QUZKQVQyOWhVMG8rT0N3bUdRa0VDeEFLQkFNQUJBSktDUWNDQlEwTUFnc0VCUXRuQ2dnR0F3UUFBQVJYQ2dnR0F3UUVBRjhEQWdFREFBUUFUM2QxYVdkYldVNU1SVU1uSnljb0lTUWtKQ0FPQmgwckJTTWlKaWNHQmlNaUppY0dCaU1pSmljR0JpTWpOVE15TmpjdUFqVTBOak15RlJRR0JnY1dGak15TmpjdUFqVTBNeklWRkFZR0J4WVdNekkyTnk0Q05UUXpNaFVVQmdZSEZoWXpNd01VRmhZWFBnSTFOQ1lqSWdZRkZCWVdGejRDTlRRbUl5SUdCUlFXRmhjK0FqVTBKaU1pQmdRVkRqZFZJQ0ZXTmpkVklDRlhOalpXSUNGVE5BNE9Ja0lYSHlRT1FVR0REeVlnRmtVa0lrTVdJQ0lPZ29JUEpSOFhReVFpUVJZZ0lnMkRnZzhsSUJaQUl3NzZDUjRlSGgwSkh5VWxJUDFOQ1IwZUhoNEtJU1VsSHdGYUNSMGVIaDBKSUNRa0lBa1ZFeE1WRlJNVEZSVVRFaFk0RFFvaVZsb25jMjdoSjFkVkpBb1BEUW9pVmxvbjRlRW5XRllpQ2c4TkNpTldXU2ZoNFNkWVZpSUtEd0VVSTA5TkhoNU5UeU5TVUZCU0kwOU5IaDVOVHlOU1VGQlNJMDlOSGg1TlR5TlNVRkFBQUFBQUF3QVJBV29ERXdMS0FBY0FFd0FaQUZSQVVRb0VBZ0VGQWdJQUJnRUFaUUFHQUFjSUJnZGxDd0VJQXdNSVZRc0JDQWdEWFE4TURna05CUU1JQTAwVUZBZ0lBQUFVR1JRWkdCY1dGUWdUQ0JNU0VSQVBEZzBNQ3dvSkFBY0FCeEVSRVJBR0Z5c1RFU00xSVJVakVUTVJNeFVqRlRNVkl4VXpGVE1STXhFekZYWmxBUXBtaHMrUWhJU1FQVCtOQVdvQktqWTIvdFlCWURaYU5XVTJBV0QrMWpZQUFBQUJBQUQvYndKbkEyc0FGUUFwUUNZVkVnOEhCQVVCQUFGS0F3SUJBd0JJQXdFQUFRQ0RBQUVDQVlNQUFnSjBFaElSR3dRR0dDc0JKemNGQXhZV0Z6WTJOeE16QXlNbkJ5TVRBek1UQVdQWkVnRVBtd3NUQlFZWURabHcvSEFiUGp0WXYyK0FBdlk5T0ZIOTJpRkpIU05XSlFHLy9UWk0zUUU4QWgvK2l3QUFBQUlBTFA4UEF3NENod0JQQUYwQVEwQkFWRWc1Q0FRREFnRktBUUVBU0FBQ0JBTUVBZ04rQUFBQUJBSUFCR2NBQXdBQkJnTUJad0FHQlFVR1Z3QUdCZ1ZmQUFVR0JVOWNXaXdwS1NRbkxRY0dHaXNURnc0Q0ZSUVdGelkyTnpZMk16SVdGaFVVRGdJaklpWTFORFl6TWhZVkZBWUhCaFVVRmpNeVBnTTFOQzRDSXlJR0J3WUdCeDRERlJRR0l5SW1KalUwTmpjbUpqVTBQZ0lUTkNZbUp3WUdGUlFXRmpNeU51NFFLaklXRFF3b1dTbFNpeWMvVXlra1JtaEZVMXdxSmhnZUtob0RRQ2d6UWlnVEJnWVdMaWN1YWpRd1dpVVdOVEFmUXpZeFR5NGtHeGtoS1QxQUlpUTNHeFlZSmpZWEZoc0NoeFluVDJGQkhUUWFObHdqUmp4RGJrSTNjRjA0VTBNeU5oc1hJQnNEQ1FzcEtUUlFVMElMRGpjN0tqWXNLR1EySmtsSVNTZEFVakJUTmpKck1DdGNOVHhsVURmOUFTbFBVU3NzVWlNdlFpTWhBQUgvZ3dDdEFQZ0Jpd0FRQURXeEJtUkVRQ29PQVFBQkFVb05CZ1VFQXdVQlNBQUJBQUFCVndBQkFRQmZBZ0VBQVFCUEFRQUxDUUFRQVJBRERSUXJzUVlBUkRjaUppY0hKemNYRmhZek1qWTNGd1lHaEN0Q0ZHd1V3aEFOSEJZVUtCRVhHRHl0T0VRZVN6VTVMU01QREVrUUZ3QUFBUUJPQUFBQjBBS3dBQWdBS0VBbEJRRURBQUZLQUFBREFRQlZBZ0VCQVFOZEJBRURBeWNEVEFBQUFBZ0FDQklSRVFVSEZ5c2hBeU0xTXhNUk14RUJqcnlFczQxQ0FtNUMvaTBCMC8xUUFBQUJBRTRBQUFIUUFyQUFDUUFwUUNZR0FRSURBQUZLQUFBREFRQlZBZ0VCQVFOZEJBRURBeWNEVEFBQUFBa0FDUklSRWdVSEZ5c2hFU2NqTlRNWE5UTVJBWTZxbHE2U1FnSEVxa0tTa3YxUUFBRUFUZ0FBQWRBQ3NBQUpBQ2xBSmdZQkFnTUFBVW9BQUFNQkFGVUNBUUVCQTEwRUFRTURKd05NQUFBQUNRQUpFaEVTQlFjWEt5RTFBeU0xTXhNUk14RUJqcm1IczQxQ3l3R2pRdjYxQVV2OVVBQUFBQUVBVGdBQUFkQUNzQUFKQUNsQUpnWUJBZ01BQVVvQUFBTUJBRlVDQVFFQkExMEVBUU1ESndOTUFBQUFDUUFKRWhFU0JRY1hLeUVSQXlNMU14YzFNeEVCanJTTXJwSkNBV0lCREVMWTJQMVFBQUFBQUFFQUZBQUFBVEVDc0FBR0FDUkFJUU1CQWdFQUFVb0NBUUJJQUFBQUFWMENBUUVCSndGTUFBQUFCZ0FHRkFNSEZTc3pBemNURVRNUjd0by9tME1DbWhiK0lBSGcvVkFBQUFFQURnQUFBZEFDc0FBSUFCOUFIQWdEQVFNQkFBRktBZ0VBU0FBQUFBRmRBQUVCSndGTUVSUUNCeFlyTXdNM0V4TXpFU01SN3VBOW82QkNRZ0taRi80Z0FlRDlVQUhnQUFFQUZ3QUFBZEFDc0FBSEFDVkFJZ0VCQUFFQlNnQUJBQUdEQUFBQUFsNERBUUlDSndKTUFBQUFCd0FIRVJNRUJ4WXJNd00zRXpNUk14SHIxRC9GYzBJQ21oYjlrZ0p1L1ZBQUFBQUJBQXNBQUFIUUFyQUFDUUFkUUJvSkJBTUNBUVVCQUFGS0FBQUFBVjBBQVFFbkFVd1JGUUlIRmlzekF6Y1RFelV6RVNNUjd1TStxSjFDUWdLWUYvNFhBYXMvL1ZBQnNBQUJBQm9BQUFIUUFyQUFDUUFjUUJrSkJBTUJCQUVBQVVvQUFBQUJYUUFCQVNjQlRCRVZBZ2NXS3pNRE54TTNFVE1SSXpYdTFENjJnRUpDQXBvVi9jeDZBYnY5VUpnQUFBQUJBQm9BQUFIUUFyQUFDUUFjUUJrSkJBTUJCQUVBQVVvQUFBQUJYUUFCQVNjQlRCRVZBZ2NXS3pNRE54TVROVE1SSXhIdTFENmprMEpDQXBvVi9mNEJNTlA5VUFGQUFBQUJBQ0lBQUFFeEFyQUFCd0FsUUNJRUFnRURBUUFCU2dNQkFFZ0FBQUFCWFFJQkFRRW5BVXdBQUFBSEFBY1ZBd2NWS3pNUkp6Y1hOVE1SN3N3c29FTUJ4THN4a1pIOVVBQUJBQ1lBQUFIUUFyQUFDQUFqUUNBRkJBTUNBUVVCQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQ0FBSUZnTUhGU3NoRVFjbk54YzNNeEVCanFESUxadWdRZ0pWbHI0dmtwYjlVQUFBQVFBaUFBQUIwQUt3QUFnQUpFQWhCUUlDQVFBQlNnTUJBRWdBQUFBQlhRSUJBUUVuQVV3QUFBQUlBQWdXQXdjVkt5RURKemNYRXhFekVRR09xY01zMG01Q0FjYTRNc2IrMVFIeC9WQUFBQUFCQUNnQUFBSFFBckFBQ1FCTXRnUURBZ0VDQVVwTHNCNVFXRUFXQUFBQUFWMEFBUUVvU3dBQ0FnTmRCQUVEQXljRFRCdEFGQUFCQUFBREFRQmxBQUlDQTEwRUFRTURKd05NV1VBTUFBQUFDUUFKRVJNUkJRY1hLeUVSSXljM0Z6TTFNeEVCanJLME1LQ1dRZ0hKc3krZ3BmMVFBQUVBSmdBQUFkQUNzQUFKQUNWQUlnWURBUU1CQUFGS0JBRUFTQUFBQUFGZEFnRUJBU2NCVEFBQUFBa0FDUmNEQnhVcklUVURKemNYRnhFekVRR09vTWdvMVd0Q2N3Rkx2alRINHdHcS9WQUFBUUFtQUFBQjBBS3dBQWNBSWtBZkJBTUNBUVFCQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQndBSEZRTUhGU3NoRVFFM0FSRXpFUUdPL3BndUFUcENBUjRCWGk3KzFBRXkvVkFBQUFFQUVnQUFBVEVDc0FBSEFDVkFJZ1FDQVFNQkFBRktBd0VBU0FBQUFBRmRBZ0VCQVNjQlRBQUFBQWNBQnhVREJ4VXJNelVETnhNUk14SHUzRHlnUTNjQ0lSaitlQUdJL1ZBQUFBQUJBQklBQUFIUUFyQUFDQUFtUUNNRkF3SUJCQUVBQVVvRUFRQklBQUFBQVYwQ0FRRUJKd0ZNQUFBQUNBQUlGZ01IRlNzaEVRTUROeE1UTXhFQmpxRGNQS0NnUWdJQS9uZ0NJQmorZUFHSS9WQUFBQUFCQUJjQUFBSFFBckFBQ0FBZ1FCMEZBZ0lCQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQ0FBSUZnTUhGU3NoSndNM0V4Y1JNeEVCanFEWFB0Rm9RcUFCOVJ2K0Zta0NVLzFRQUFBQUFRQVNBQUFCMEFLd0FBa0FKMEFrQmdVREFnRUZBUUFCU2dRQkFFZ0FBQUFCWFFJQkFRRW5BVXdBQUFBSkFBa1hBd2NWS3lFUkF3TTNFeE0xTXhFQmpwdmhQcWlXUWdIRi9zb0NCeHIrZlFFc1YvMVFBQUFBQUFFQUV3QUFBZEFDc0FBSkFDMUFLZ01CQVFJQlNnUUJBa2dBQVFBQUF3RUFaUUFDQWdOZEJBRURBeWNEVEFBQUFBa0FDUkVURVFVSEZ5c2hOU01ETnhNekVUTVJBWTZ4eWp1OWcwS2xBZk1ZL2pjQnlmMVFBQUFCQUJJQUFBSFFBckFBQ1FBblFDUUdCUU1DQVFVQkFBRktCQUVBU0FBQUFBRmRBZ0VCQVNjQlRBQUFBQWtBQ1JjREJ4VXJJUkVIQXpjVE54RXpFUUdPbzlrOHRZdENBU1NrQWhnWS9rbUdBVEg5VUFBQkFCWUFBQUV4QXJBQUJ3QWxRQ0lFQWdFREFRQUJTZ01CQUVnQUFBQUJYUUlCQVFFbkFVd0FBQUFIQUFjVkF3Y1ZLek1SQXpjVEVUTVI3dGc0b0VNQkpBRnBJLzcyQVFyOVVBQUFBUUFhQUFBQjBBS3dBQWdBSmtBakJRTUNBUVFCQUFGS0JBRUFTQUFBQUFGZEFnRUJBU2NCVEFBQUFBZ0FDQllEQnhVcklSRURBemNURXpNUkFZNmkwalNnb0VJQ0wvN3lBV2ttL3ZZQkN2MVFBQUFBQVFBakFBQUIwQUt3QUFZQUpFQWhBd0VDQVFBQlNnSUJBRWdBQUFBQlhRSUJBUUVuQVV3QUFBQUdBQVlVQXdjVkt5RUJOd0VSTXhFQmp2NlZPZ0V4UWdLUElmM2FBaWI5VUFBQUFBRUFHZ0FBQWRBQ3NBQUpBQ2RBSkFZRkF3SUJCUUVBQVVvRUFRQklBQUFBQVYwQ0FRRUJKd0ZNQUFBQUNRQUpGd01IRlNzaEVRY0ROeE0zTlRNUkFZNmkwalNzbEVJQnhxUUJhU1grNEpPTi9WQUFBQUVBRmdBQUFkQUNzQUFKQUNWQUlnWURBUU1CQUFGS0JBRUFTQUFBQUFGZEFnRUJBU2NCVEFBQUFBa0FDUmNEQnhVcklUVW5BemNURnhFekVRR09yY3M2eFhsQ2hLMEJYU0wrcTNrQnp2MVFBQUFBQUFFQUp3QUFBZEFDc0FBSkFDMUFLZ01CQVFJQlNnUUJBa2dBQVFBQUF3RUFaUUFDQWdOZEJBRURBeWNEVEFBQUFBa0FDUkVURVFVSEZ5c2hFU01ETnhNekVUTVJBWTZvdnppdWdVSUJSZ0ZISS83WUFTajlVQUFCQUJRQUFBRXhBckFBQmdBYVFCY0dBUUlCQUFGS0FBQUFBVjBBQVFFbkFVd1JFZ0lIRmlzekp4TXpFU01SVXovYVEwTVdBcHI5VUFIZ0FBQUJBQmNBQUFIUUFyQUFCd0FkUUJvQkFRRUNBVW9BQUFBQ0FRQUNaUUFCQVNjQlRCRVJFZ01IRnlzekp4TXpFU01SSTFZLzFPVkNjeFlDbXYxUUFtNEFBUUFPQUFBQjBBS3dBQWdBSDBBY0NBTUJBd0VBQVVvQ0FRQklBQUFBQVYwQUFRRW5BVXdSRkFJSEZpc3pKeE1URVRNUkl3TkxQZUNnUWtLZ0Z3S1ovaUFCNFAxUUFlQUFBUUFhQUFBQjBBS3dBQWtBSUVBZENRZ0RBUVFCQUFGS0FnRUFTQUFBQUFGZEFBRUJKd0ZNRVJRQ0J4WXJNeWNURnpVekVTTVJKMWcrMUtCQ1FvQVdBcHFZbVAxUUFidDZBQUFBQUFFQUN3QUFBZEFDc0FBSkFDZEFKQVlFQXdJQkJRRUFBVW9GQVFCSUFBQUFBVjBDQVFFQkp3Rk1BQUFBQ1FBSkZ3TUhGU3NoTlFNREp4TVRFVE1SQVk2YnFqN2pvRUp5QVgvK0VCY0NtUDUzQVluOVVBQUFBQUFCQUJvQUFBSFFBckFBQ1FBZ1FCMEpDQU1CQkFFQUFVb0NBUUJJQUFBQUFWMEFBUUVuQVV3UkZBSUhGaXN6SnhNVEVUTVJJeEVuV0Q3VW9FSkNqeFlDbXY3eEFRLzlVQUVlOFFBQUFRQk9BQUFCMEFLd0FBZ0FMa0FyQndFQUFRRktBQUVCQWwwRUF3SUNBaWRMQUFBQUFsMEVBd0lDQWljQ1RBQUFBQWdBQ0JFUkVRVUhGeXN6TlRNVE14RWpFUU5PaEx4Q1FvMUNBbTc5VUFIVC9pMEFBUUJPQUFBQjBBS3dBQWtBTDBBc0NBTUNBQUVCU2dBQkFRSmRCQU1DQWdJblN3QUFBQUpkQkFNQ0FnSW5Ba3dBQUFBSkFBa1JFaEVGQnhjck16VXpFelV6RVNNUkEwNkZ1MEpDalVJQ0NHYjlVQUdLL25ZQUFBRUFUZ0FBQWRBQ3NBQUpBQzlBTEFnREFnQUJBVW9BQVFFQ1hRUURBZ0lDSjBzQUFBQUNYUVFEQWdJQ0p3Sk1BQUFBQ1FBSkVSSVJCUWNYS3pNMU16Y1JNeEVqTlFkT2xxcENRcEpDcWdIRS9WQ1NrZ0FBQUFBQkFFNEFBQUhRQXJBQUNRQXZRQ3dJQXdJQUFRRktBQUVCQWwwRUF3SUNBaWRMQUFBQUFsMEVBd0lDQWljQ1RBQUFBQWtBQ1JFU0VRVUhGeXN6TlRNVE5UTVJJeEVEVG91MVFrS01RZ0Z4L2YxUUFSdis1UUFBQVFBU0FBQUJNUUt3QUFjQUcwQVlCd0lCQXdFQUFVb0FBQUFCWFFBQkFTY0JUQkVUQWdjV0t6TW5FelV6RVNNUlRqemNRME1ZQWxKRy9WQUJzZ0FBQUFFQUZ3QUFBZEFDc0FBSUFCcEFGd2NCQWdFQUFVb0FBQUFCWFFBQkFTY0JUQkVUQWdjV0t6TW5FemN6RVNNUkIxVSsxNkJDUW1nYkFmV2cvVkFDVTJrQUFBQUFBUUFTQUFBQjBBS3dBQWdBSEVBWkNBTUNBUVFCQUFGS0FBQUFBVjBBQVFFbkFVd1JGQUlIRmlzekp4TVRFVE1SSXdOT1BOeWdRa0tnR0FJZy9uZ0NBUDFRQVlnQUFBQUFBUUFUQUFBQjBBS3dBQWtBUTdVQkFRSURBVXBMc0NaUVdFQVZBQU1EQUYwQUFBQW9Td0FCQVFKZEFBSUNKd0pNRzBBVEFBQUFBd0lBQTJVQUFRRUNYUUFDQWljQ1RGbTJFUkVSRWdRSEdDc3pKeE16TlRNUkl4RWpUanZWcGtKQ2R4Z0NFSWo5VUFIbUFBQUFBUUFTQUFBQjBBS3dBQWtBSFVBYUNRZ0RBZ0VGQVFBQlNnQUFBQUZkQUFFQkp3Rk1FUlFDQnhZck15Y1RFeEV6RVNNMUExQSs1cFpDUXBFYUFoUCt5QUc3L1ZCaEFTMEFBUUFTQUFBQjBBS3dBQWtBSFVBYUNRZ0RBZ0VGQVFBQlNnQUFBQUZkQUFFQkp3Rk1FUlFDQnhZck15Y1RGeEV6RVNNUkowNDgyYU5DUW9zWUFoaWtBU1Q5VUFFeGhnQUFBUUFpQUFBQk1RS3dBQWNBRzBBWUJ3SUJBd0VBQVVvQUFBQUJYUUFCQVNjQlRCRVRBZ2NXS3pNbk54RXpFU00xVGl6TVEwTXh1d0hFL1ZDUkFBQUFBQUVBSWdBQUFkQUNzQUFJQUJwQUZ3Y0JBZ0VBQVVvQUFBQUJYUUFCQVNjQlRCRVRBZ2NXS3pNbk54TXpFU01SQTA0c3c2bENRbTR5dUFIRy9WQUI4ZjdWQUFBQUFRQW1BQUFCMEFLd0FBZ0FJMEFnQlFRREFnRUZBUUFCU2dBQUFBRmRBZ0VCQVNjQlRBQUFBQWdBQ0JZREJ4VXJJU2NISnpjWEVUTVJBWTZnbXkzSW9FS1draSsrbGdKVi9WQUFBQUVBSmdBQUFkQUNzQUFKQUJ0QUdBZ0RBUU1CQUFGS0FBQUFBVjBBQVFFbkFVd1JGQUlIRmlzekp6Y1ROVE1SSXhFSFRpaklvRUpDYXpTK0FVdHovVkFCcXVNQUFRQW9BQUFCMEFLd0FBa0FLa0FuQkFNQ0F3QUJTZ0FCQUFBREFRQmxBQUlDQTEwRUFRTURKd05NQUFBQUNRQUpFUk1SQlFjWEt5RTFJd2NuTnpNUk14RUJqcGFnTUxTeVFxZWlMN1VCeC8xUUFBQUFBUUFtQUFBQjBBS3dBQWNBSWtBZkJBTUNBUVFCQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQndBSEZRTUhGU3NoRVFFbkFSRXpFUUdPL3NZdUFXaENBVEwrMUM0QlhnRWUvVkFBQUFFQUZnQUFBVEVDc0FBSEFCdEFHQWNDQVFNQkFBRktBQUFBQVYwQUFRRW5BVXdSRXdJSEZpc3pKeE1STXhFakVVNDQyRU5ESXdGcEFTVDlVQUVLQUFBQkFDTUFBQUhRQXJBQUJnQWFRQmNHQVFJQkFBRktBQUFBQVYwQUFRRW5BVXdSRWdJSEZpc3pKd0V6RVNNUlhUb0JhMEpDSVFLUC9WQUNKZ0FCQUJvQUFBSFFBckFBQ0FBY1FCa0lBd0lCQkFFQUFVb0FBQUFCWFFBQkFTY0JUQkVVQWdjV0t6TW5FeE1STXhFakEwNDAwcUpDUXFBbUFXbis4Z0l2L1ZBQkNnQUFBQUFCQUJZQUFBSFFBckFBQ1FBYlFCZ0lBd0VEQVFBQlNnQUFBQUZkQUFFQkp3Rk1FUlFDQnhZck15Y1ROelV6RVNNUkIxQTZ5NjFDUW5raUFWMnRoUDFRQWM1NUFBRUFHZ0FBQWRBQ3NBQUpBQjFBR2drSUF3SUJCUUVBQVVvQUFBQUJYUUFCQVNjQlRCRVVBZ2NXS3pNbkV4Y1JNeEVqTlNkT05OS2lRa0tVSlFGcHBBSEcvVkNOa3dBQUFBRUFKd0FBQWRBQ3NBQUpBQ05BSUFFQkFnTUJTZ0FBQUFNQ0FBTmxBQUVCQWwwQUFnSW5Ba3dSRVJFU0JBY1lLek1uRXpNUk14RWpFU05mT0wrb1FrS0JJd0ZsQVNqOVVBRkdBQUFCQUNVQUFBRXhBckFBQmdBaFFCNERBZ0VEQVFBQlNnQUFBQUZkQWdFQkFTY0JUQUFBQUFZQUJoUURCeFVyTXhFSEp6Y3pFZTZiTHNsREFsT09NN2o5VUFBQUFBRUFKd0FBQWRBQ3NBQUhBQ1JBSVFRREFnSUFBVW9BQVFBQUFnRUFaUU1CQWdJbkFrd0FBQUFIQUFjVEVRUUhGaXNoRVNNSEp6Y3pFUUdPbHFJdnRmUUNicUV3cy8xUUFBRUFMZ0FBQWRBQ3NBQUlBQ1pBSXdVREFnRUVBUUFCU2dRQkFFZ0FBQUFCWFFJQkFRRW5BVXdBQUFBSUFBZ1dBd2NWS3lFREJ5YzNFeEV6RVFHT3RZUW55WmRDQWpkeE1yaitLZ0hXL1ZBQUFRQWxBQUFCMEFLd0FBa0FKMEFrQmdRREFnRUZBUUFCU2dVQkFFZ0FBQUFCWFFJQkFRRW5BVXdBQUFBSkFBa1hBd2NWS3lFUkp3Y25OeGMxTXhFQmpxR2JMY21nUWdHK2w0OHl1SmFXL1ZBQUFBQUFBUUFsQUFBQjBBS3dBQWtBSjBBa0JnUURBZ0VGQVFBQlNnVUJBRWdBQUFBQlhRSUJBUUVuQVV3QUFBQUpBQWtYQXdjVkt5RTFBd2NuTnhNUk14RUJqcnFHS2NtZ1FuSUJ5M2d6dVA1ekFZMzlVQUFBQVFBbEFBQUIwQUt3QUFrQUowQWtCZ1FEQWdFRkFRQUJTZ1VCQUVnQUFBQUJYUUlCQVFFbkFVd0FBQUFKQUFrWEF3Y1ZLeUVSQXdjbk54TVJNeEVCanJDUEtzbWdRZ0VPQVRtQ003ais1d0VaL1ZBQUFRQWFBQUFCTVFLd0FBWUFJVUFlQXdJQkF3RUFBVW9BQUFBQlhRSUJBUUVuQVV3QUFBQUdBQVlVQXdjVkt6TUROeE1STXhIdTFENldRd0oyRnY1SEFkMzlVQUFCQUJvQUFBSFFBckFBQ0FBY1FCa0lBd0lCQkFFQUFVb0FBQUFCWFFBQkFTY0JUQkVVQWdjV0t6TUROeE1UTXhFakVlN1VQWmVnUWtJQ2RSaitRd0hnL1ZBQjRBQUFBQUFCQUJvQUFBSFFBckFBQndBbFFDSUJBUUFCQVVvQUFRQUJnd0FBQUFKZUF3RUNBaWNDVEFBQUFBY0FCeEVUQkFjV0t6TUROeE16RVRNUjd0USt5VzFDQW5ZVy9iWUNidjFRQUFBQUFRQWFBQUFCMEFLd0FBa0FIVUFhQ1FRREFnRUZBUUFCU2dBQUFBRmRBQUVCSndGTUVSVUNCeFlyTXdNM0V4TTFNeEVqRWU3VVBacWRRa0lDZFJqK09RR3JQLzFRQWJBQUFRQWFBQUFCMEFLd0FBa0FIRUFaQ1FRREFRUUJBQUZLQUFBQUFWMEFBUUVuQVV3UkZRSUhGaXN6QXpjVE54RXpFU00xN3RRK3RvQkNRZ0oyRnYzdmVnRzcvVkNZQUFBQUFRQWFBQUFCMEFLd0FBa0FIVUFhQ1FRREFnRUZBUUFCU2dBQUFBRmRBQUVCSndGTUVSVUNCeFlyTXdNM0V4TTFNeEVqRWU3VVBxT1RRa0lDZGhiK0lRRXcwLzFRQVVBQUFRQk9BQUFCMEFLd0FBZ0FTN1VCQVFFQ0FVcExzQ1pRV0VBV0FBQUFBVjBBQVFFb1N3QUNBZ05kQkFFREF5Y0RUQnRBRkFBQkFBQURBUUJsQUFJQ0ExMEVBUU1ESndOTVdVQU1BQUFBQ0FBSUVSRVNCUWNYS3lFUkJ5TTFNemN6RVFHT2ZjT21ta0lDVkc1Q2lQMVFBQUVBVGdBQUFkQUNzQUFJQUV1MUJRRURBQUZLUzdBbVVGaEFGZ0FBQUFGZEFBRUJLRXNBQWdJRFhRUUJBd01uQTB3YlFCUUFBUUFBQXdFQVpRQUNBZ05kQkFFREF5Y0RURmxBREFBQUFBZ0FDQklSRVFVSEZ5c2hBeU0xTXhNUk14RUJqcWFheW5aQ0FlWkMvcWdCNFAxUUFBQUFBUUJPQUFBQjBBS3dBQWtBVExZR0FRSURBQUZLUzdBbVVGaEFGZ0FBQUFGZEFBRUJLRXNBQWdJRFhRUUJBd01uQTB3YlFCUUFBUUFBQXdFQVpRQUNBZ05kQkFFREF5Y0RURmxBREFBQUFBa0FDUklSRWdVSEZ5c2hOUU1qTlRNVEVUTVJBWTZ0azd1RlFwY0JUMEwrL3dHSi9WQUFBQUFBQVFCT0FBQUIwQUt3QUFrQVRMWUdBUUlEQUFGS1M3QW1VRmhBRmdBQUFBRmRBQUVCS0VzQUFnSURYUVFCQXdNbkEwd2JRQlFBQVFBQUF3RUFaUUFDQWdOZEJBRURBeWNEVEZsQURBQUFBQWtBQ1JJUkVnVUhGeXNoRVNjak5UTVhFVE1SQVk2dWtxeVVRZ0V0dVVLYkFTUDlVQUFCQUI4QUFBRXhBckFBQndBaVFCOEVBd0lCQkFFQUFVb0FBQUFCWFFJQkFRRW5BVXdBQUFBSEFBY1ZBd2NWS3pNMUF6Y1RFVE1SN3M4NmxVT1RBWmNlL3R3QmpQMVFBQUFCQUJjQUFBSFFBckFBQ0FBalFDQUZCQU1DQVFVQkFBRktBQUFBQVYwQ0FRRUJKd0ZNQUFBQUNBQUlGZ01IRlNzaEVRTUROeE1UTXhFQmpxRFhPWmltUWdJQy9ud0JwaVArMHdHVy9WQUFBQUVBSHdBQUFkQUNzQUFJQUNGQUhnVURBZ01CQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQ0FBSUZnTUhGU3NoSndNM0V4Y1JNeEVCanFMTk9zaHRRcGNCa3g3K2VHTUNVLzFRQUFBQkFCd0FBQUhRQXJBQUNRQWtRQ0VHQlFRREFnRUdBUUFCU2dBQUFBRmRBZ0VCQVNjQlRBQUFBQWtBQ1JjREJ4VXJJUkVEQXpjVEV6VXpFUUdPb05JNW1hQkNBY1Qrd0FHYUl2N1lBVUJZL1ZBQUFBQUJBQjhBQUFIUUFyQUFDUUFxUUNjRUF3SUJBZ0ZLQUFFQUFBTUJBR1VBQWdJRFhRUUJBd01uQTB3QUFBQUpBQWtSRXhFRkJ4Y3JJVFVqQXpjVE14RXpFUUdPcXNVNnM0SkNwd0dESHY2aEFjZjlVQUFCQUI4QUFBSFFBckFBQ1FBa1FDRUdCUVFEQWdFR0FRQUJTZ0FBQUFGZEFnRUJBU2NCVEFBQUFBa0FDUmNEQnhVcklSRUhBemNUTnhFekVRR09tOVE2cW90Q0FUS3FBYUllL3JLWkFSMzlVQUFBQUFBQkFDVUFBQUV4QXJBQUJ3QWlRQjhFQXdJQkJBRUFBVW9BQUFBQlhRSUJBUUVuQVV3QUFBQUhBQWNWQXdjVkt6TVJKemNYRVRNUjdza3VtME1CSzhreG13RW0vVkFBQUFBQkFDY0FBQUhRQXJBQUNBQWpRQ0FGQkFNQ0FRVUJBQUZLQUFBQUFWMENBUUVCSndGTUFBQUFDQUFJRmdNSEZTc2hFUU1uTnhjVE14RUJqcURITDR5c1FnSXYvdkhMTUk4QkpQMVFBQUFBQUFFQUpRQUFBZEFDc0FBSUFDRkFIZ1VEQWdNQkFBRktBQUFBQVYwQ0FRRUJKd0ZNQUFBQUNBQUlGZ01IRlNzaEF5YzNGeGNSTXhFQmpxREpMZEpxUWdFeXlESFN5UUlnL1ZBQUFBQUJBQ1VBQUFIUUFyQUFDUUFrUUNFR0JRUURBZ0VHQVFBQlNnQUFBQUZkQWdFQkFTY0JUQUFBQUFrQUNSY0RCeFVySVJFSEp6Y1hOelV6RVFHT29Na3ZtcUJDQWMyZ3lTK1puNFg5VUFBQUFBRUFKUUFBQWRBQ3NBQUhBQ0pBSHdRREFnRUVBUUFCU2dBQUFBRmRBZ0VCQVNjQlRBQUFBQWNBQnhVREJ4VXJJVFVCTndFUk14RUJqdjZYTGdFN1FwQUJhVEgreFFIQi9WQUFBQUFCQUNJQUFBSFFBckFBQ1FBcVFDY0VBd0lCQWdGS0FBRUFBQU1CQUdVQUFnSURYUVFCQXdNbkEwd0FBQUFKQUFrUkV4RUZCeGNySVJFakp6Y1hNeEV6RVFHT3lLUXdrcXBDQVVhMkxhRUJLUDFRQUFBQkFDSUFBQUV4QXJBQUJnQWhRQjREQWdFREFRQUJTZ0FBQUFGZEFnRUJBU2NCVEFBQUFBWUFCaFFEQnhVck14RURKeE16RWU2UVBNeERBZ0wrcFJnQjhmMVFBQUVBSXdBQUFkQUNzQUFIQUNSQUlRUURBZ0lBQVVvQUFRQUFBZ0VBWlFNQkFnSW5Ba3dBQUFBSEFBY1RFUVFIRmlzaEVTTURKeE16RVFHT2RMdzd5T1VDYnY0NUdBSHgvVkFBQUFBQkFDSUFBQUhRQXJBQUNBQW1RQ01GQXdJQkJBRUFBVW9FQVFCSUFBQUFBVjBDQVFFQkp3Rk1BQUFBQ0FBSUZnTUhGU3NoQXdNbkV4TVJNeEVCanFhS1BNeWdRZ0h6L3JRWUFmSCtJQUhnL1ZBQUFBQUJBQ0lBQUFIUUFyQUFDUUFuUUNRR0JBTUNBUVVCQUFGS0JRRUFTQUFBQUFGZEFnRUJBU2NCVEFBQUFBa0FDUmNEQnhVcklSRW5BeWNURnpVekVRR09pNlU4eWFOQ0FiS0YvbkFZQWZHa3BQMVFBQUFCQUNJQUFBSFFBckVBQ1FBblFDUUdCQU1DQVFVQkFBRktCUUVBU0FBQUFBRmRBZ0VCQVNjQlRBQUFBQWtBQ1JjREJ4VXJJVFVEQXljVEV4RXpFUUdPb280OHpLQkNUUUd3L3FvWUFmTCtXd0drL1ZBQUFBQUFBUUFpQUFBQjBBS3dBQWtBSjBBa0JnUURBZ0VGQVFBQlNnVUJBRWdBQUFBQlhRSUJBUUVuQVV3QUFBQUpBQWtYQXdjVkt5RVJKd01uRXhNUk14RUJqcFdiUE15Z1FnRXE4LzZLR0FIeC92b0JCdjFRQUFBQUFBRUFKd0FBQVRFQ3NBQUdBQ0ZBSGdNQ0FRTUJBQUZLQUFBQUFWMENBUUVCSndGTUFBQUFCZ0FHRkFNSEZTc3pKemNYRVRNUjdzY3Rta08zTTQwQ1UvMVFBQUFBQVFBbEFBQUIwQUt3QUFnQUhFQVpDQU1DQVFRQkFBRktBQUFBQVYwQUFRRW5BVXdSRkFJSEZpc3pKemNYRXpNUkl4SHV5UzE5djBKQ3VESnpBam45VUFIZUFBQUJBQ2NBQUFIUUFyQUFCd0FtUUNNQ0FRSUFBUUZLQUFFQUFZTUFBQUFDWGdNQkFnSW5Ba3dBQUFBSEFBY1JFd1FIRmlzekp6Y1hNeEV6RWU3SExiaUNRcmN6cUFKdS9WQUFBQUFBQVFBbEFBQUIwQUt3QUFrQUhVQWFDUVFEQWdFRkFRQUJTZ0FBQUFGZEFBRUJKd0ZNRVJVQ0J4WXJNeWMzRnhNMU14RWpFZTdKTFlLNlFrSzRNbmtCNFY3OVVBR2hBQUFBQVFBbEFBQUIwQUt3QUFrQUhVQWFDUVFEQWdFRkFRQUJTZ0FBQUFGZEFBRUJKd0ZNRVJVQ0J4WXJNeWMzRnpjUk14RWpOZTdKTFp1aFFrSzRNbytYQWI3OVVKWUFBQUFBQVFBbEFBQUIwQUt3QUFrQUhVQWFDUVFEQWdFRkFRQUJTZ0FBQUFGZEFBRUJKd0ZNRVJVQ0J4WXJNeWMzRnhNUk14RWpFZTdKTFl1eFFrSzRNb0FCT0FFTy9WQUJHUUFBQVFBY0FBQUJNUUt3QUFjQUlrQWZCQU1DQVFRQkFBRktBQUFBQVYwQ0FRRUJKd0ZNQUFBQUJ3QUhGUU1IRlNzekVRTW5FelV6RWU2WU90SkRBZEgrMXg0Qm5FNzlVQUFBQVFBL0FBQUIwQUt3QUFnQUlVQWVCQU1CQXdFQUFVb0FBQUFCWFFJQkFRRW5BVXdBQUFBSUFBZ1dBd2NWS3lFUkJ3TW5FemN6RVFHT2JhZzZyYUpDQWxOai9yY2VBVlNYL1ZBQUFBRUFIQUFBQWRBQ3NBQUlBQ05BSUFVRUF3SUJCUUVBQVVvQUFBQUJYUUlCQVFFbkFVd0FBQUFJQUFnV0F3Y1ZLeUVEQXljVEV4RXpFUUdPcUpFNTBxQkNBYi8rNkNNQm12NVZBZmY5VUFBQUFRQS9BQUFCMEFLd0FBa0FUTFlFQXdJREFBRktTN0FtVUZoQUZnQUFBQUZkQUFFQktFc0FBZ0lEWFFRQkF3TW5BMHdiUUJRQUFRQUFBd0VBWlFBQ0FnTmRCQUVEQXljRFRGbEFEQUFBQUFrQUNSRVRFUVVIRnlzaEVTTURKeE16TlRNUkFZNXlvenExbWtJQjV2N0JIZ0ZqaVAxUUFBQUFBUUFjQUFBQjBBS3dBQWtBSkVBaEJnVUVBd0lCQmdFQUFVb0FBQUFCWFFJQkFRRW5BVXdBQUFBSkFBa1hBd2NWS3lFMUF3TW5FeE1STXhFQmpxU1ZPZEtnUWxnQmIvN2dJd0dhL3BnQnRQMVFBQUFBQVFBY0FBQUIwQUt3QUFrQUpFQWhCZ1VFQXdJQkJnRUFBVW9BQUFBQlhRSUJBUUVuQVV3QUFBQUpBQWtYQXdjVkt5RVJKd01uRXhjUk14RUJqcFNsT2RLZ1FnRWx3djdBSXdHWjBRRWUvVkFBQUFBQUFRQk9BQUFCMEFLd0FBZ0FLVUFtQVFFQkFnRktBQUVBQUFNQkFHVUFBZ0lEWFFRQkF3TW5BMHdBQUFBSUFBZ1JFUklGQnhjcklSRURJelV6RXpNUkFZNXIxYVdiUWdIZy9zZENBY2Y5VUFBQkFFNEFBQUhRQXJBQUNBQXBRQ1lGQVFNQUFVb0FBUUFBQXdFQVpRQUNBZ05kQkFFREF5Y0RUQUFBQUFnQUNCSVJFUVVIRnlzaEp5TTFNeGNSTXhFQmpyU01ycEpDcDBLSEFrNzlVQUFBQUFFQVRnQUFBZEFDc0FBSkFDcEFKd1lCQWdFQ0FVb0FBUUFBQXdFQVpRQUNBZ05kQkFFREF5Y0RUQUFBQUFrQUNSSVJFZ1VIRnlzaEVRY2pOVE1UTlRNUkFZNTF5Nk9kUWdHSjRrSUJNSmY5VUFBQUFBRUFUZ0FBQWRBQ3NBQUpBQ3BBSndZQkFnRUNBVW9BQVFBQUF3RUFaUUFDQWdOZEJBRURBeWNEVEFBQUFBa0FDUklSRWdVSEZ5c2hFUWNqTlRNM0VUTVJBWTZTcm95MFFnRkNtMEsvQVFqOVVBQUFBQUVBSlFBQUFURUNzQUFIQUNKQUh3UURBZ0VFQVFBQlNnQUFBQUZkQWdFQkFTY0JUQUFBQUFjQUJ4VURCeFVyTXhFSEp6Y1JNeEh1bXk3SlF3RkNtekhKQVEvOVVBQUFBQUVBUndBQUFkQUNzQUFJQUNGQUhnUURBUU1CQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQ0FBSUZnTUhGU3NoRVFjSEp6Y1RNeEVCam1xeExLZWdRZ0lneWJBd3B3RXkvVkFBQUFBQkFFY0FBQUhRQXJBQUNBQWpRQ0FGQkFNQ0FRVUJBQUZLQUFBQUFWMENBUUVCSndGTUFBQUFDQUFJRmdNSEZTc2hBd2NuTnhNUk14RUJqcTFzTHFlZ1FnRWZlVEc0L3ZBQ01mMVFBQUFBQUFFQVJ3QUFBZEFDc0FBSEFDSkFId1FEQWdFRUFRQUJTZ0FBQUFGZEFnRUJBU2NCVEFBQUFBY0FCeFVEQnhVcklSRUJKd0UxTXhFQmp2N2xMQUZIUWdIaS9zVXdBV2x3L1ZBQUFBQUJBRWNBQUFIUUFyQUFDUUFrUUNFR0JRUURBZ0VHQVFBQlNnQUFBQUZkQWdFQkFTY0JUQUFBQUFrQUNSY0RCeFVySVRVbkJ5YzNGeEV6RVFHT25uMHNwNkJDblpXTE1MaVdBYmY5VUFBQUFBRUFSd0FBQWRBQ3NBQUpBQ3BBSndRREFnTUFBVW9BQVFBQUF3RUFaUUFDQWdOZEJBRURBeWNEVEFBQUFBa0FDUkVURVFVSEZ5c2hFU01ISnpjekVUTVJBWTZOaml5Z3AwSUJScDh3c1FFby9WQUFBQUVBTXdBQUFURUNzQUFHQUNGQUhnTUNBUU1CQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQmdBR0ZBTUhGU3N6RVFjbkV6TVI3b1UydTBNQ010MGxBVGI5VUFBQUFRQWxBQUFCMEFLd0FBY0FKRUFoQkFNQ0FnQUJTZ0FCQUFBQ0FRQmxBd0VDQWljQ1RBQUFBQWNBQnhNUkJBY1dLeUVSSXdNbkV6TVJBWTZNcHphMzlBSnUvdWdrQVRiOVVBQUFBQUVBSlFBQUFkQUNzQUFJQUNaQUl3VURBZ0VFQVFBQlNnUUJBRWdBQUFBQlhRSUJBUUVuQVV3QUFBQUlBQWdXQXdjVkt5RURCeWNURXhFekVRR09yWVkyMHBkQ0FoekdKQUUyL2lvQjF2MVFBQUFBQUFFQUpRQUFBZEFDc0FBSkFDZEFKQVlFQXdJQkJRRUFBVW9GQVFCSUFBQUFBVjBDQVFFQkp3Rk1BQUFBQ1FBSkZ3TUhGU3NoRVNjSEp4TVhOVE1SQVk2VW56YkpvRUlCdm96MEpBRTJscGI5VUFBQUFBRUFKUUFBQWRBQ3NBQUpBQ2RBSkFZRUF3SUJCUUVBQVVvRkFRQklBQUFBQVYwQ0FRRUJKd0ZNQUFBQUNRQUpGd01IRlNzaE5RTUhKeE1URVRNUkFZNnVoVGJKb0VKeUFiRE1KQUUyL25NQmpmMVFBQUVBSlFBQUFkQUNzQUFKQUNkQUpBWUVBd0lCQlFFQUFVb0ZBUUJJQUFBQUFWMENBUUVCSndGTUFBQUFDUUFKRndNSEZTc2hFUU1ISnhNVEVUTVJBWTZranpiSm9FSUJEZ0VqMnlRQk52N25BUm45VUFBQUFBQUJBQnNBQUFFeEFyQUFCZ0FoUUI0REFnRURBUUFCU2dBQUFBRmRBZ0VCQVNjQlRBQUFBQVlBQmhRREJ4VXJNd00zRXhFekVlN1RONXhEQVdRbC92Y0NNUDFRQUFFQUd3QUFBZEFDc0FBSUFCeEFHUWdEQWdFRUFRQUJTZ0FBQUFGZEFBRUJKd0ZNRVJRQ0J4WXJNd00zRnhNekVTTVI5OXcza3FwQ1FnRmtKZTRDRmYxUUFkWUFBUUFiQUFBQjBBS3dBQWNBSmtBakFnRUNBQUVCU2dBQkFBR0RBQUFBQWw0REFRSUNKd0pNQUFBQUJ3QUhFUk1FQnhZck13TTNFek1STXhIdTB6ZkJlMElCWkNYK3VRSnUvVkFBQUFFQUd3QUFBZEFDc0FBSkFCMUFHZ2tFQXdJQkJRRUFBVW9BQUFBQlhRQUJBU2NCVEJFVkFnY1dLek1ETnhjVE5UTVJJeEh1MHphU3EwSkNBV1FsOVFHcWN2MVFBWTBBQUFFQUcvLy9BZEFDc0FBSkFCMUFHZ2tFQXdJQkJRRUFBVW9BQUFBQlhRQUJBU2NCVEJFVkFnY1dLeGNETnhNM0VUTVJJelh1MHplb2xFSkNBUUZsSmY3am5RR24vVkNvQUFFQUd3QUFBZEFDc0FBSkFCMUFHZ2tFQXdJQkJRRUFBVW9BQUFBQlhRQUJBU2NCVEJFVkFnY1dLek1ETnhNVEVUTVJJeEh1MHphY29VSkNBV1FsL3ZvQkh3RU8vVkFCR1FBQUFBQUJBQ1VBQUFFeEFyQUFCd0FpUUI4RUF3SUJCQUVBQVVvQUFBQUJYUUlCQVFFbkFVd0FBQUFIQUFjVkF3Y1ZLek1SQnljM05UTVI3cHN1eVVNQjJad3l5WGo5VUFBQUFBQUJBQ1VBQUFIUUFyQUFCZ0FoUUI0REFnRURBUUFCU2dBQUFBRmRBZ0VCQVNjQlRBQUFBQVlBQmhRREJ4VXJJUkVCSndFekVRR08vcjBtQVdsQ0Fsbis3eklCTnYxUUFBQUJBQ1VBQUFIUUFyQUFDQUFqUUNBRkJBTUNBUVVCQUFGS0FBQUFBVjBDQVFFQkp3Rk1BQUFBQ0FBSUZnTUhGU3NoQXdjbk54TVJNeEVCanNkd01yVzBRZ0hRaWkzYi9sd0NCdjFRQUFBQUFBRUFJZ0FBQWRBQ3NBQUpBRXkyQkFNQ0F3QUJTa3V3SmxCWVFCWUFBQUFCWFFBQkFTaExBQUlDQTEwRUFRTURKd05NRzBBVUFBRUFBQU1CQUdVQUFnSURYUVFCQXdNbkEweFpRQXdBQUFBSkFBa1JFeEVGQnhjcklSRWpCeWMzTXpVekVRR09uWjh3c2J0Q0FlYXdMY1dJL1ZBQUFRQWxBQUFCMEFLd0FBa0FKRUFoQmdVRUF3SUJCZ0VBQVVvQUFBQUJYUUlCQVFFbkFVd0FBQUFKQUFrWEF3Y1ZLeUUxQXdjbk54TVJNeEVCanJDUEtzbWdRb2tCT1lJenVQN25BWjc5VUFBQkFDVUFBQUhRQXJBQUNRQWtRQ0VHQlFRREFnRUdBUUFCU2dBQUFBRmRBZ0VCQVNjQlRBQUFBQWtBQ1JjREJ4VXJJUkVuQnljM0Z4RXpFUUdPb1pzdHlhQkNBVG1YanpLNGx3RWMvVkFBQUFFQUxRQUFBVEVDc0FBSEFDSkFId1FEQWdFRUFRQUJTZ0FBQUFGZEFnRUJBU2NCVEFBQUFBY0FCeFVEQnhVck16VW5OeGNSTXhIdXdTMlVRNWJCTXBRQnUvMVFBQUFBQUFFQUtnQUFBZEFDc0FBSUFDTkFJQVVFQXdJQkJRRUFBVW9BQUFBQlhRSUJBUUVuQVV3QUFBQUlBQWdXQXdjVkt5RVJBeWMzRnhNekVRR09uTWd1Z3JSQ0FnYitrY0V1ZkFHbS9WQUFBQUFBQVFBcUFBQUIwQUt3QUFZQUlVQWVBd0lCQXdFQUFVb0FBQUFCWFFJQkFRRW5BVXdBQUFBR0FBWVVBd2NWS3lFQk53RVJNeEVCanY2Y0xnRTJRZ0ZZTHY3V0FsVDlVQUFBQVFBcUFBQUIwQUt3QUFrQUpFQWhCZ1VFQXdJQkJnRUFBVW9BQUFBQlhRSUJBUUVuQVV3QUFBQUpBQWtYQXdjVkt5RVJBeWMzRnhNMU14RUJqcURFTG9hd1FnRzEvdWE5TG9FQk5YYjlVQUFCQUNvQUFBSFFBckFBQ1FBcVFDY0VBd0lCQWdGS0FBRUFBQU1CQUdVQUFnSURYUVFCQXdNbkEwd0FBQUFKQUFrUkV4RUZCeGNySVRVakp6Y1hNeEV6RVFHT3NMUXdvcEpDcDdJdG5RSEgvVkFBQUFBQkFDc0FBQUhRQXJBQUNRQWtRQ0VHQlFRREFnRUdBUUFCU2dBQUFBRmRBZ0VCQVNjQlRBQUFBQWtBQ1JjREJ4VXJJUkVISnpjWE54RXpFUUdPb01NdGxxQkNBUytYdlRLU2xRRW0vVkFBQUFFQVRnQUFBZEFDc0FBSUFDbEFKZ0VCQVFJQlNnQUJBQUFEQVFCbEFBSUNBMTBFQVFNREp3Tk1BQUFBQ0FBSUVSRVNCUWNYS3lFUkJ5TTFNeE16RVFHT2NjK25tVUlDSU5wQ0FTajlVQUFBQVFCT0FBQUIwQUt3QUFnQUtVQW1CUUVEQUFGS0FBRUFBQU1CQUdVQUFnSURYUVFCQXdNbkEwd0FBQUFJQUFnU0VSRUZCeGNySVFNak5UTVhFVE1SQVk2b21NQ0FRZ0ZHUXZnQ0lQMVFBQUFCQUU0QUFBSFFBckFBQ1FBcVFDY0dBUUlCQWdGS0FBRUFBQU1CQUdVQUFnSURYUVFCQXdNbkEwd0FBQUFKQUFrU0VSSUZCeGNySVJFSEl6VXpOelV6RVFHT2RzcXZrVUlCd254Q21ZLzlVQUFBQUFBQkFFNEFBQUhRQXJBQUNRQXFRQ2NHQVFJREFBRktBQUVBQUFNQkFHVUFBZ0lEWFFRQkF3TW5BMHdBQUFBSkFBa1NFUklGQnhjcklUVW5JelV6RnhFekVRR09yWk90azBLUHQwS2FBY0w5VUFBQUFQLy9BSWdCbXdIVkF1MEFKZ0ZOWUFBQlJ3Rk5BR0FFaUVBQXdBQUFDYkVCQWJnRWlMQXpLd0FBQXdBbS8vZ0NhQUpHQUI4QUt3QTBBSmxMc0I1UVdFQVNFZ1lDQWdRdkxob1RCQVVDSFFFQUJRTktHMEFTRWdZQ0FnUXZMaG9UQkFVQ0hRRURCUU5LV1V1d0hsQllRQ1FBQkFRQlh3QUJBVkJMQUFJQ0FGOERCZ0lBQUZGTEJ3RUZCUUJmQXdZQ0FBQlJBRXdiUUNFQUJBUUJYd0FCQVZCTEFBSUNBMTBBQXdOTlN3Y0JCUVVBWHdZQkFBQlJBRXhaUUJjdExBRUFMRFF0TkNjbEhCc1hGZzBMQUI4Qkh3Z0pGQ3NYSWlZMU5EWTNKaVkxTkRZek1oWVZGQVlIRnpZMk56TUdCZ2NYSXljR0JnTTJOalUwSmlNaUJoVVVGaE15TnljR0JoVVVGdXRkYUQ4N0lTRllUa2hWUHplRUVod0paUTB2SFhhQ09pWlVQaVlySlI4aEpSNGJTREtXSWkwNUNGbElPVXdnSUQ0b08wZERQakpGSElFWlBTVTJZaUp5T2g4akFXd1VMUjhjSVNJZEdpNyt6QzJVRXl3b0tUSC8vd0FVLy93QkhBSWhBUThCaFFGdEFoZkFBQUFKc1FBQnVBSVhzRE1yQVAvLy8yc0NkQUNVQXVBQUJ3QnEvdG9BQUFBQS8vLy94QUp1QUR3QzZBQUdBVTZjQVAvLy9nZ0NYdjdwQXY0QUJ3QkQvZUFBQUFBQS8vLytvd0plLzRRQy9nQUhBSGIrZXdBQUFBRC8vLzk3QWw0QStRTCtBQWNCVXY5VEFBQUFBUC8vLzB3Q1hnQzNBdjRBQndGSy95UUFBQUFBLy8vL1N3SmVBTFlDL2dBSEFVdi9Jd0FBQUFELy8vOWJBbDRBcUFMdEFBY0JUZjh6QUFBQUFQLy8vNUVDWGdCMEF6Y0FCd0ZQLzJrQUFBQUEvLy8rRGdKZS80Z0M1UUFIQVZIOTVnQUFBQUQvLy85bkFsNEFtZ0t1QUFjQlRQOC9BQUFBQUFBQi96QUMrZ0RSQTBvQUF3QWdzUVprUkVBVkFBQUJBUUJWQUFBQUFWMEFBUUFCVFJFUUFnMFdLN0VHQUVRRElSVWgwQUdoL2w4RFNsQUFBQUFCLzlVQ1ZBQXJBdnNBQXdBbnNRWmtSRUFjQWdFQkFBQUJWUUlCQVFFQVhRQUFBUUJOQUFBQUF3QURFUU1ORlN1eEJnQkVFeFVqTlN0V0F2dW5wd0FBQXYrRUFsUUFmQUw3QUFNQUJ3QTBzUVprUkVBcEJRTUVBd0VBQUFGVkJRTUVBd0VCQUYwQ0FRQUJBRTBFQkFBQUJBY0VCd1lGQUFNQUF4RUdEUlVyc1FZQVJBTVZJelV6RlNNMUoxWDRWUUw3cDZlbnB3QUFBQUw5NmdKZS8yVUMvZ0FLQUJVQVBiRUdaRVJBTWhRT0NRTUVBQUVCU2dVREJBTUJBQUFCVlFVREJBTUJBUUJkQWdFQUFRQk5Dd3NBQUFzVkN4VVFEd0FLQUFvVUJnMFZLN0VHQUVRREZoWVhGU011QWljMUl4WVdGeFVqTGdJbk5mRVFNUlU3Rmpvd0MwVVFNQlU2RnpneUNnTCtJbFljREJJNU9SSUtJbFljREJJNU9SSUtBQUFDLzE0Q1hnQ2hBMDhBQ3dBWkFFV3hCbVJFUURvSEJRSURBQUVBQXdGK0JnRUFBQUVFQUFGbkFBUUNBZ1JYQUFRRUFsOEFBZ1FDVHd3TUFRQU1HUXdaRnhVVEVoQU9Cd1VBQ3dFTENBMFVLN0VHQUVRUk1oWVZGQVlqSWlZMU5EWVhCZ1lqSWlZbk14WVdNekkyTnhZaElSWVlIeCs1QlZOTVRVNEVPd1UwTFNnNUJRTlBIQjRkSEJ3ZEhoeGlRRTlPUVNrY0hpY0FBQUgvV1FKZUFLWUM3UUFOQURLeEJtUkVRQ2NEQVFFQ0FZUUVBUUFDQWdCWEJBRUFBQUpmQUFJQUFrOEJBQXNLQ0FZRUF3QU5BUTBGRFJRcnNRWUFSQk15RmhjakppWWpJZ1lISXpZMkFrNVNCRDhFTmkwbVBBVkFCVmtDN1U1QktSVVhKMEJQQUFELy8vK3NBZFVBVHdMS0FBWUNCYUFBLy8vL3JnSFZBRkVDeWdBR0FnYWlBUC8vLzZ3QjFRQlFBc29BQmdJSW9BRC8vLyt3QWRVQVV3TEtBQVlDQnFRQS8vLy9oUDgwQUdYLzFBRUhBRVAvWFB6V0FBbXhBQUc0L05hd015c0FBQUQvLy8rYy96UUFmZi9VQVFjQWR2OTAvTllBQ2JFQUFiajgxckF6S3dBQUFBQUIvNmovSmdCWS8rUUFCd0Fxc1Faa1JFQWZBQUVBQWdGVkFBQUFBd0lBQTJVQUFRRUNYUUFDQVFKTkVSRVJFQVFOR0N1eEJnQkVCek0xTXhVak5TTllia0pDYmwxQnZrRUFBQUFBQWYrby95WUFXUC9rQUFjQUtyRUdaRVJBSHdBQ0F3RUNWUUFEQUFBQkF3QmxBQUlDQVYwQUFRSUJUUkVSRVJBRURSZ3JzUVlBUkJjakZTTTFNeFV6V0c1Q1FtNlpRYjVCQUFBQUFBSC9UZ0phQUxJRElnQUZBQ2F4Qm1SRVFCc0FBUUlCaEFBQUFnSUFWUUFBQUFKZEFBSUFBazBSRVJBRERSY3JzUVlBUkFNaEZTTTFJYklCWkVMKzNnTWl5SXdBQWYrZEFpWUFlQUw0QUFrQUdMRUdaRVJBRFFrQUFnQkhBQUFBZEJNQkRSVXJzUVlBUkFNMk5qVXpGdzRDQjJNeE5tMEhDaTlaU1FKdENFRkNDemRUTlFnQUFBQUIvOG4vR3dBNS8vSUFEQUFxc1Faa1JFQWZBQUVBQWdNQkFtY0FBd0FBQTFjQUF3TUFYd0FBQXdCUEV4RVVFQVFOR0N1eEJnQkVGeUltTlRRMk14VWlCaFVVTXpreVBqNHlGeDQxNVRrek1qazRHeGcwQUFBQUFmK1gvekFBYWYvUUFBY0FVN0VHWkVSTHNBeFFXRUFaQkFFREFBQURiZ0lCQUFFQkFGVUNBUUFBQVY0QUFRQUJUaHRBR0FRQkF3QURnd0lCQUFFQkFGVUNBUUFBQVY0QUFRQUJUbGxBREFBQUFBY0FCeEVSRVFVTkZ5dXhCZ0JFRnhVekZTTTFNelVoU05KSU1HUThQR1FBQUFBQi81Zi9NQUJwLzlBQUJ3QlJzUVprUkV1d0RGQllRQmdFQVFNQUFBTnZBQUVBQUFGVkFBRUJBRjBDQVFBQkFFMGJRQmNFQVFNQUE0UUFBUUFBQVZVQUFRRUFYUUlCQUFFQVRWbEFEQUFBQUFjQUJ4RVJFUVVORnl1eEJnQkVCelVqTlRNVkl4VWhTTkpJMEdROFBHUUFBZitYL3h3QWFmL2tBQXNBTkxFR1pFUkFLUUFCQUFRQlZRSUJBQVlGQWdNRUFBTmxBQUVCQkYwQUJBRUVUUUFBQUFzQUN4RVJFUkVSQncwWks3RUdBRVFITlRNMU14VXpGU01WSXpWcFNFSklTRUtlUEVaR1BFWkdBUC8vLzVIL1lnQnYvNThCQndTZy8zUCtVd0FKc1FBQnVQNVRzRE1yQUFBQUFBSC9RdjhSQUFBQUxRQU9BRGl4Qm1SRVFDMEVBUUVDQXdFQUFRSktBQUlCQW9NQUFRQUFBVmNBQVFFQVlBTUJBQUVBVUFFQURBc0lCZ0FPQVE0RURSUXJzUVlBUkFjaUppYzFGaFl6TWpZMU5UTVZGSHdVSXdzSkdROFhHbHp2Q1FSU0F3WVpIWkNOandBQUFBRUFBUDhSQUw0QUxRQU5BRGl4Qm1SRVFDMEtBUUlCQ3dFQUFnSktBQUVDQVlNQUFnQUFBbGNBQWdJQVlBTUJBQUlBVUFFQUNBWUVBd0FOQVEwRURSUXJzUVlBUkJjaU5UVXpGUlF6TWpZM0ZRWUdlM3RjTVE4WkNRc2s3NHlRa0RZR0ExSUVDUUFBQWY2VS8wYi9EZi9BQUFzQUo3RUdaRVJBSEFBQkFBQUJWd0FCQVFCZkFnRUFBUUJQQVFBSEJRQUxBUXNERFJRcnNRWUFSQVVpSmpVME5qTXlGaFVVQnY3UkdTUWtHUmtqSTdvZElDRWNIQ0VnSFFELy8vOXIvMHNBbFArM0FRY0FhdjdhL05jQUNiRUFBcmo4MTdBekt3QUFBUC8vLzVIL0hRQjAvL1lCQndGUC8ybjh2d0FKc1FBQ3VQeS9zRE1yQUFBQS8vLy9tLzhRQUdnQUFBQUdBSHFXQVAvLy82bi9IZ0JZQUJBQUJnRlFnUUQvLy8vVi96RUFLLy9ZQXdjTGpRQUEvTjBBQ2JFQUFiajgzYkF6S3dBQUFBQUIvMDcvSmdDeS85QUFCd0JKc1Faa1JFdXdERkJZUUJjREFRRUNBZ0Z2QUFBQ0FnQlZBQUFBQWwwQUFnQUNUUnRBRmdNQkFRSUJoQUFBQWdJQVZRQUFBQUpkQUFJQUFrMVp0aEVSRVJBRURSZ3JzUVlBUkFjaEZTTTFJeFVqc2dGa1F1QkNNS3B1YmdBQUFBQUIvMFAvVHdDKy84TUFGZ0E3c1Faa1JFQXdCUUVBQXdGS0J3WUVBd0lEQW9NRkFRTUFBQU5YQlFFREF3QmZBUUVBQXdCUEFBQUFGZ0FXSVJJaEVpSWlDQTBhSzdFR0FFUVhGQVlqSWljR0l5SW1OVE1VTXpJMk5UTVVNekkyTmI0K01EWWFHall4UERZM0dSOHdPQmtmUFRzNUl5TTZPa0lnSWtJZ0lnQUEvLy8vUy84NUFMYi8yUUVIQVV2L0kvemJBQW14QUFHNC9OdXdNeXNBQUFELy8vOUsvemdBdGYvWUFRY0JTdjhpL05vQUNiRUFBYmo4MnJBekt3QUFBUC8vLzFuL1BnQ20vODBCQndGTi96SDg0QUFKc1FBQnVQemdzRE1yQUFBQS8vLy9XZjg5QUtiL3pBTUhDNUVBQVB6ZkFBbXhBQUc0L04rd015c0FBQUQvLy85RC8wSUF2Zi9KQVFjQlVmOGIvT1FBQ2JFQUFiajg1TEF6S3dBQUFQLy8vMmYvWkFDYS83UUJCd0ZNL3ovOUJnQUpzUUFCdVAwR3NETXJBQUFBQUFIL0hmOWxBT1AvcGdBREFDQ3hCbVJFUUJVQUFRQUFBVlVBQVFFQVhRQUFBUUJORVJBQ0RSWXJzUVlBUkJjaE5TSGovam9CeHB0QkFBQUEvLy8vTWY4aEFORC81d0FIQWdUL013QUFBQUQvLy85SEFNOEF3UUZXQVFjQlVmOGYvbkVBQ2JFQUFiaitjYkF6S3dBQUFQLy8vekFBK1FEUkFVa0RCd3VNQUFEOS93QUpzUUFCdVAzL3NETXJBQUFBQUFIK2xRRHlBV3NCUXdBREFDYXhCbVJFUUJzQUFBRUJBRlVBQUFBQlhRSUJBUUFCVFFBQUFBTUFBeEVERFJVcnNRWUFSQ1UxSVJYK2xRTFc4bEZSQUFBQi8yWUFyQUNiQVpFQUF3QUdzd01CQVRBckp5VVhCWm9CQ3lyKzlQR2dSYUFBQUFBQi96Zi94Z0RKQXZjQUF3QWZzUVprUkVBVUFnRUJBQUdEQUFBQWRBQUFBQU1BQXhFRERSVXJzUVlBUkJNQkl3SEovc0JTQVVBQzkvelBBekVBQUFBQUFmL0oveHNBT2YveUFBMEFLckVHWkVSQUh3QUFBQU1DQUFObkFBSUJBUUpYQUFJQ0FWOEFBUUlCVHhRUkZCQUVEUmdyc1FZQVJBY3lGaFVVQmlNMU1qWTFOQ1lqTnpJK1BqSVlIUndaRGprek1qazNHeGtaR3dBQUFBQUIvMDcvSmdDeS85QUFCd0JKc1Faa1JFdXdERkJZUUJjREFRRUNBZ0Z1QUFJQUFBSlZBQUlDQUY0QUFBSUFUaHRBRmdNQkFRSUJnd0FDQUFBQ1ZRQUNBZ0JlQUFBQ0FFNVp0aEVSRVJBRURSZ3JzUVlBUkJjaE5UTVZNelV6c3Y2Y1F1QkMycXB1YmdBQUFBQUMvMFAvSEFDOS8rUUFBd0FIQUNxeEJtUkVRQjhBQVFBREFnRURaUUFDQUFBQ1ZRQUNBZ0JkQUFBQ0FFMFJFUkVRQkEwWUs3RUdBRVFYSVRVaEJTRTFJYjMraGdGNi9yNEJDdjcyNU1pVFhnQUFBQUFCLzBQL1R3QysvOE1BRmdBN3NRWmtSRUF3QlFFREFBRktCd1lFQXdJREFvUUJBUUFEQXdCWEFRRUFBQU5mQlFFREFBTlBBQUFBRmdBV0lSSWhFaUlpQ0EwYUs3RUdBRVFITkRZek1oYzJNeklXRlNNMEl5SUdGU00wSXlJR0ZiMCtNRFlhR2pZeFBEWTNHUjh3T0JrZnNUczVJeU02T2tJZ0lrSWdJZ0FBQUFIL21nSTdBR1lEQndBTEFBYXpCd0VCTUNzRE54YzNGd2NYQnljSEp6ZG1Lanc3S3p3OEt6czhLanNDM0NzOFBDczdQQ283T3lvOEFBQUFBQUgvd0FKQUFFQURZZ0FWQUNxeEJtUkVRQjhBQUFBQkF3QUJad0FEQWdJRFZ3QURBd0pmQUFJREFrOFJHQkVTQkEwWUs3RUdBRVFETkRZekZTSUdGUlFXRmhVVUJpTTFNalkxTkNZbVAwVTZIUjBjSFVRN0hSMGNIUU1RSXk4eUZnNE9KQzBhSXpBekZRNFFKaXdBQVAvLy96QUMrd0RQQThFQkJ3SUUveklEMmdBSnNRQUN1QVBhc0RNckFBQUEvLy8vVUFKZUFERUMvZ0FIQUVQL0tBQUFBQUQvLy8vUUFsNEFzUUwrQUFZQWRxZ0FBQUgvSmdKUUFOb0MrZ0FIQUVteEJtUkVTN0FNVUZoQUZ3TUJBUUlDQVc4QUFBSUNBRlVBQUFBQ1hRQUNBQUpORzBBV0F3RUJBZ0dFQUFBQ0FnQlZBQUFBQWwwQUFnQUNUVm0yRVJFUkVBUU5HQ3V4QmdCRUF5RVZJelVoRlNQYUFiUkMvdEJDQXZxcWJtNEEvLy8vTVA4aEFNLy81d0FIQWdUL01nQUFBQUQvLy8rRS96RUFmUC9ZQXdjTGpnQUEvTjBBQ2JFQUFyajgzYkF6S3dBQUFBQUIvNlAvRUFCZC84UUFCUUJHc1Faa1JFdXdDbEJZUUJZQUFRSUNBVzhBQUFJQ0FGVUFBQUFDWFFBQ0FBSk5HMEFWQUFFQ0FZUUFBQUlDQUZVQUFBQUNYUUFDQUFKTldiVVJFUkFERFJjcnNRWUFSQWN6RlNNMUkxMjZRbmc4dEhnQUFBQUFBZjlJQWpnQXR3TUVBQjBBVDdFR1pFUkFSQlVTQWdRREJnTUNBQUVDU2hRVEFnTklCUVFDQUVjQUJBRUFCRmNGQVFNQUFRQURBV2NBQkFRQVh3SUdBZ0FFQUU4QkFCc2FHQllRRGd3TENRY0FIUUVkQncwVUs3RUdBRVFUSWlZbkJ5YzNKaU1pQmdjak5qWXpNaFlYTnhjSEZqTXlOamN6QmdaS0V5TVJKUzRrRWc4WEZ3YzJCVGt3RWlFUElpNGlGaEVYRndjMUJqWUNYdzBKUFJ3N0NCd2RPa1lNQnprY053c2NIVGxIQUFBRC8wZ0NQQUMzQTZFQUN3QWhBQzBBWExFR1pFUkFVUW9CQUFBQkJRQUJad3NIQWdVQUF3SUZBMmNBQmdRQkFnZ0dBbWNNQVFnSkNRaFhEQUVJQ0FsZkFBa0lDVThqSWd3TUFRQXBKeUl0SXkwTUlRd2hIeDBiR1JjV0ZCSVFEZ2NGQUFzQkN3ME5GQ3V4QmdCRUVUSVdGUlFHSXlJbU5UUTJGd1lHSXlJbUppTWlCZ2NqTmpZek1oWVdNekkyTndjeUZoVVVCaU1pSmpVME5oWWVIaFlXSFIzTkJqWXhIRFV4RlJjWEJ6WUZPVEFlTlM4VkZ4Y0hnaFllSGhZV0hoNERvUmtjR2hvYUdod1pjamxISEJ3Y0hUcEdIQndjSFlvWUhCc2FHaHNjR0FBQUFBQUMvMWNDWFFDcUExd0FGUUFyQUZ5eEJtUkVRRkVGQVFNQUFRQURBV2NBQkFJTUFnQUpCQUJuQUFvSEJncFhDd0VKQUFjR0NRZG5BQW9LQmw4SURRSUdDZ1pQRnhZQkFDa29KaVFpSUI0ZEd4a1dLeGNyRXhJUURnd0tDQWNGQXdBVkFSVU9EUlFyc1FZQVJCTWlKaVlqSWdZSEl6WTJNeklXRmpNeU5qY3pCZ1lISWlZbUl5SUdCeU0yTmpNeUZoWXpNalkzTXdZR1Job3hMUlFWRXdZMUJURXRIRElzRXhVU0J6VUZNUzRhTVMwVUZSTUdOUVV4TFJ3eUxCTVZFZ2MxQlRFQzZoY1hHQmMwUGhjWEdSWXpQNHdYRnhnWE5ENFhGeGtXTXo4QUFBSC9VZjhsQUsvLzNRQUpBREN4Qm1SRVFDVUZBUUVBQVVvRUFRSUFTQWtHQWdGSEFBQUJBUUJWQUFBQUFWMEFBUUFCVFJRU0FnMFdLN0VHQUVRSE54VXpOUmNITlNNVnIzMWtmWDFrZjF3K1BseGNQajRBQUFBQi82WC9FQUJkLytjQUJnQWxzUVprUkVBYUF3RUFTQUVCQUFJQWd3TUJBZ0owQUFBQUJnQUdFaEVFRFJZcnNRWUFSQWMxSXpjWEl4VWdPMXhjTy9CNFgxOTRBQmorbXdBQUFXVUN5Z0FGQUFzQUR3QVhBQjhBSndBdkFEY0FQd0JIQUVzQVR3QlhBRjhBWndCdkFIY0Fmd0NIQUk4QWx3Q2RBS01BcHdRa3NRWmtSRXV3REZCWVFKMHZBUzBpSml3dGNBWUVBZ0EyQndNREFRa0FBV1UzQ0RVRk5BVUNEd2tDVlEwTEFnazVERGdEQ2c0SkNtY1JBUTg3RURvRERoTVBEbWNWQVJNOUZEd0RFaHNURW1jZEFSdEJIRUFER2g4YkdtY1lBUlkvR1Q0REZ4NFdGMlVoQVI5RElFSURIaU1mSG1jbEFTTkZKRVFESWkwakltY3JLUUluU0NwSEtFWUZKaXduSm1jeU1BSXNMaTRzVlRJd0Fpd3NMbDVMTTBveFNRVXVMQzVPRzB1d0VGQllRSjR2QVMwaUppSXRKbjRHQkFJQU5nY0RBd0VKQUFGbE53ZzFCVFFGQWc4SkFsVU5Dd0lKT1F3NEF3b09DUXBuRVFFUE94QTZBdzRURHc1bkZRRVRQUlE4QXhJYkV4Sm5IUUViUVJ4QUF4b2ZHeHBuR0FFV1B4aytBeGNlRmhkbElRRWZReUJDQXg0akh4NW5KUUVqUlNSRUF5SXRJeUpuS3lrQ0owZ3FSeWhHQlNZc0p5Wm5NakFDTEM0dUxGVXlNQUlzTEM1ZVN6TktNVWtGTGl3dVRodExzQmxRV0VDZUJnUUNBRFlIQXdNQkNRQUJaUUFKTndnMUJUUUZBZzhKQW1VTkFRczVERGdEQ2c0TENtY1JBUTg3RURvRERoTVBEbWNWQVJNOUZEd0RFaHNURW1jZEFSdEJIRUFER2g4YkdtY1lBUlkvR1Q0REZ4NFdGMlVoQVI5RElFSURIaU1mSG1jbEFTTkZKRVFESWlzakltY3BBU2RIS0VZREppb25KbWN2TFFJclNBRXFMQ3NxWnpJd0Fpd3VMaXhWTWpBQ0xDd3VYa3N6U2pGSkJTNHNMazRiUzdBYlVGaEFwVFVGTkFNQ0N3Z0xBZ2grQmdRQ0FEWUhBd01CQ1FBQlpRQUpOd0VJRHdrSVp3MEJDemtNT0FNS0Rnc0taeEVCRHpzUU9nTU9FdzhPWnhVQkV6MFVQQU1TR3hNU1p4MEJHMEVjUUFNYUh4c2FaeGdCRmo4WlBnTVhIaFlYWlNFQkgwTWdRZ01lSXg4ZVp5VUJJMFVrUkFNaUt5TWlaeWtCSjBjb1JnTW1LaWNtWnk4dEFpdElBU29zS3lwbk1qQUNMQzR1TEZVeU1BSXNMQzVlU3pOS01Va0ZMaXd1VGh0QXJEVUZOQU1DQ3dnTEFnaCtMd0V0S3lZckxTWitCZ1FDQURZSEF3TUJDUUFCWlFBSk53RUlEd2tJWncwQkN6a01PQU1LRGdzS1p4RUJEenNRT2dNT0V3OE9aeFVCRXowVVBBTVNHeE1TWngwQkcwRWNRQU1hSHhzYVp4Z0JGajhaUGdNWEhoWVhaU0VCSDBNZ1FnTWVJeDhlWnlVQkkwVWtSQU1pS3lNaVp5a0JKMGNvUmdNbUtpY21ad0FyU0FFcUxDc3Faekl3QWl3dUxpeFZNakFDTEN3dVhrc3pTakZKQlM0c0xrNVpXVmxaUU1ta3BKNmVtSmlSa0ltSWdZQjVlSEZ3YVdoaFlGbFlVVkJNVEVoSVFVQTVPREV3S1NnaElCa1lFUkFNREFZR0FBQ2twNlNucHFXZW81NmpvcUdnbjVpZG1KMmNtNXFabFpPUWw1R1hqWXVJajRtUGhZT0FoNEdIZlh0NGYzbC9kWE53ZDNGM2JXdG9iMmx2WldOZ1oyRm5YVnRZWDFsZlZWTlFWMUZYVEU5TVQwNU5TRXRJUzBwSlJVTkFSMEZIUFRzNFB6ay9OVE13TnpFM0xTc29MeWt2SlNNZ0p5RW5IUnNZSHhrZkZSTVFGeEVYREE4TUR3NE5CZ3NHQ3dvSkNBY0FCUUFGRVJGTURSWXJzUVlBUkFFMU14VWpGU0UxSXpVekZTVTFNeFVISWpVME16SVZGQmNpTlRRek1oVVVJeUkxTkRNeUZSUVhJalUwTXpJVkZDRWlOVFF6TWhVVUJTSTFORE15RlJRaElqVTBNeklWRkFjMU14VWhOVE1WSlNJMU5ETXlGUlFoSWpVME16SVZGQVVpTlRRek1oVVVJU0kxTkRNeUZSUUZJalUwTXpJVkZDRWlOVFF6TWhVVUJ5STFORE15RlJRaklqVTBNeklWRkJjaU5UUXpNaFVVRnpVek5UTVZJVFV6RlRNVk16VXpGZjZibkdZQ1gyZWMva3llVHhzYkd6c2JHeHZIR3hzYjJCc2JHLzZyR3hzYkFVNGJHeHYrVVJzYkc3ZzJBbDgxL2NFYkd4c0JuaHNiRy80K0d4c2JBWGtiR3h2K2ZCc2JHd0VmR3hzYlloc2JHOGNiR3hzN0d4c2JybWMxL1RZMlpucWVBaTZjTm1abU5weG1Oalp3R3hzYkd4QWJHeHNiR3hzYkd5NGJHeHNiR3hzYkcwWWJHeHNiR3hzYkc0bWRuWjJkTXhzYkd4c2JHeHNiVmhzYkd4c2JHeHNiUmhzYkd4c2JHeHNiTGhzYkd4c2JHeHNiRUJzYkd4dHdObWVkbldjMk5qWUFBZitzQWs0QVVBTVdBQklBTWJFR1pFUkFKaEVPQ3dVRUJRQUJBVW9DQVFFQUFBRlZBZ0VCQVFCZEFBQUJBRTBBQUFBU0FCSVpBdzBWSzdFR0FFUURIZ0lYRlE0Q0J5TTFOalkzSmlZbk5Va1ROamdZR0RnMkV3c1NMaHdjTEJRREZnb2FHQWRFQmhjYUNqTU1GdzRPRncweUFQLy8vOUFDVUFCQkF5a0JCZ1NMc2hFQUNMRUFBYkFSc0RNckFBQUFBdjllQWw0QW9RTk1BQTBBR1FCQ3NRWmtSRUEzQmdNQ0FRVUVCUUVFZmdBQUFBSUZBQUpuQUFVQkJBVlhBQVVGQkY4SEFRUUZCRThQRGdBQUZSTU9HUThaQUEwQURTSVNJZ2dORnl1eEJnQkVBelkyTXpJV0Z5TW1KaU1pQmdjWElpWTFORFl6TWhZVkZBYWlCVlJMVGswRU93UTFMU2c0QldVWElDQVhGeUFnQXIxQVQwNUJLUndlSjE4Y0hSMGRIUjBkSEFBQUFBQUIvNkgvSVFCZi85OEFDd0FHc3djQkFUQXJCemNYTnhjSEZ3Y25CeWMzWHlvek1TOHhNaW96TVM4eFN5b3lNUzh4TXlveU1TOHhBQUgvclA4UUFGRC8yQUFTQURDeEJtUkVRQ1VSRGdzRkJBVUJBQUZLQUFBQkFRQlZBQUFBQVYwQ0FRRUFBVTBBQUFBU0FCSVpBdzBWSzdFR0FFUVhMZ0luTlQ0Q056TVZCZ1lIRmhZWEZVVVROamdZR0RnMkV3c1NMaHdjTEJUd0Nob1lCMFFHRnhvS013d1hEZzRYRFRJQUFBQUFBZitzL3hBQVVQL1lBQklBTWJFR1pFUkFKaEVPQ3dVRUJRQUJBVW9DQVFFQUFBRlZBZ0VCQVFCZEFBQUJBRTBBQUFBU0FCSVpBdzBWSzdFR0FFUUhIZ0lYRlE0Q0J5TTFOalkzSmlZbk5Va1ROamdZR0RnMkV3c1NMaHdjTEJRb0Nob1lCMFFHRnhvS013d1hEZzRYRFRJQUFBQUMvMGovRUFERC85Z0FFZ0FsQUgyeEJtUkVTN0FUVUZoQURTRWNFeEVPQ3dVRUNBQUJBVW9iUUEwaEhCTVJEZ3NGQkFnQUFnRktXVXV3RTFCWVFCWUNCUUlCQUFBQlZRSUZBZ0VCQUYwRUF3SUFBUUJORzBBY0FBSUJBQUVDQUg0RkFRRUNBQUZWQlFFQkFRQmRCQU1DQUFFQVRWbEFFQUFBSlNRZUhSZ1hBQklBRWhrR0RSVXJzUVlBUkFjZUFoY1ZEZ0lISXpVMk5qY21KaWMxRno0Q056TWVBaGNWSXlZbUp3WUdCeU90RXpZNEdCZzROaE1MRWk0Y0hDd1VzZ29hR1FkRUJoWWFDek1OR3dvTEdRMHpLQW9hR0FkRUJoY2FDak1NRnc0T0Z3MHl1Uk5BUWhjWFFrQVREQkpDSEJ4QUZBRC8vLy9RQWxBQVFRTXBBUVlFaXJJUkFBaXhBQUd3RWJBekt3QUEvLzhBZWdKdUFQSUM2QUFHQVU1U0FBQUIvNWIvRUFCcS85b0FEZ0Fqc1Faa1JFQVlEZzBNQ3dvSkNBY0dCUVFEQWcwQVJ3QUFBSFFRQVEwVks3RUdBRVFITXdjM0Z3Y1hCeWNISnpjbk54Y2pSZzArRmtZek9COGZPRE5HRmo0bVJpSkNDakFxUUVBcU1BcENJZ0FBQUFBRC8wRC9FQUMvLytNQUV3QWZBQ3NBU3JFR1pFUkFQd0lCQlFBTUFRSUVBa29CQ0FJQUJnRUZCQUFGWndjQkJBSUNCRmNIQVFRRUFsOERBUUlFQWs4QkFDb29KQ0llSEJnV0R3MExDUVVEQUJNQkV3a05GQ3V4QmdCRUJ6SVhOak15RmhVVUJpTWlKd1lqSWlZMU5EWVhGQll6TWpZMU5DWWpJZ1lITkNZaklnWVZGQll6TWpaVE9Cc1pPVEU4UERFNEdodzNNVHc4bmg4Wkd4MGdHQmdnTlNBWUdDQWRHeGtmSFNjbk56SXlPQ2dvT0RJeU4ya2FIaDRhR2g0ZUdob2VIaG9hSGg0QUFBSC9vUUpVQUY4RER3QUhBRnl4Qm1SRVM3QVRVRmhBSGdBQ0F3TUNiZ0FBQVFFQWJ3UUJBd0VCQTFVRUFRTURBVjRBQVFNQlRodEFIQUFDQXdLREFBQUJBSVFFQVFNQkFRTlZCQUVEQXdGZUFBRURBVTVaUUF3QUFBQUhBQWNSRVJFRkRSY3JzUVlBUkJNSEl6Y2pOek1IWHlJekVuc2lNeElDekhoRGVFTUFBZjU4L3hjQmhmL1dBQTBBTWJFR1pFUkFKZ01CQVFJQmd3QUNBQUFDVndBQ0FnQmZCQUVBQWdCUEFRQUxDZ2dHQkFNQURRRU5CUTBVSzdFR0FFUVhJaVluTXhZV016STJOek1HQmdTVnlpbFBKSmw3YWFBcVR6UEs2V0ZlTXp3MU9tVmEvLy8rZkFKTEFZVURDZ01IQzljQUFBTTBBQW14QUFHNEF6U3dNeXNBQUFBQUFmN1VBbTRCTEFLa0FBTUFJTEVHWkVSQUZRQUJBQUFCVlFBQkFRQmRBQUFCQUUwUkVBSU5GaXV4QmdCRUFTRTFJUUVzL2FnQ1dBSnVOZ0QvLy83VS80QUJMUCsyQXdjTDJRQUEvUklBQ2JFQUFiajlFckF6S3dBQUFBQUIvbndDWHdHRkF1Y0FGd0Ewc1Faa1JFQXBBQVFCQUFSWEJnVUNBd0FCQUFNQlp3QUVCQUJmQWdFQUJBQlBBQUFBRndBWEl5SVNJeUlIRFJrcnNRWUFSQUVHQmlNaUxnSWpJZ1lISXpZMk16SWVBak15TmpjQmhRdGVSenRwWm1nNU5UY0lPZ3RmUnp0cFpXZzVOVGdIQXVkSFFCSVdFaUFiUjBBU0ZoSWdHd0FBQUFBQi9uc0Ntd0dFQTFvQURRQXlzUVprUkVBbkF3RUJBZ0dFQkFFQUFnSUFWd1FCQUFBQ1h3QUNBQUpQQVFBTENnZ0dCQU1BRFFFTkJRMFVLN0VHQUVRRE1oWVhJeVltSXlJR0J5TTJOZ09WeVNsUEpKbDdhYUFxVHpQTEExcGhYak04TlRwbFdnQUFBQUgra2Y4aUFaai80QUFHQUM2eEJtUkVRQ01EQVFFQUFVb0NBUUJJQkFFQlJ3QUFBUUVBVlFBQUFBRmRBQUVBQVUwVUVBSU5GaXV4QmdCRUJTRTFGd2MxSWY2UkFvZUFnUDE1WUVCZlgwQUFBZjhsQWxBQTJ3TGlBQWNBQnJNSEF3RXdLd01ISnpjWE54Y0hRblVra290MUpKSUNrVDlEVFVFL1EwMEFBQUFBQWY5bkFsSUFsQUxoQUFVQUtyRUdaRVJBSHdNQkFBRUJTZ0lCQUVjQUFRQUFBVlVBQVFFQVhRQUFBUUJORXhBQ0RSWXJzUVlBUkJNakJ5YzNNNVNQZWlTTW9RS1VRa05NQUFBQUFBSC9yQUpPQUZBREZnQVNBREN4Qm1SRVFDVVJEZ3NGQkFVQkFBRktBQUFCQVFCVkFBQUFBVjBDQVFFQUFVMEFBQUFTQUJJWkF3MFZLN0VHQUVRVExnSW5OVDRDTnpNVkJnWUhGaFlYRlVVVE5qZ1lHRGcyRXdzU0xod2NMQlFDVGdvYUdBZEVCaGNhQ2pNTUZ3NE9GdzB5QUFBQUF2OUkveEFBdy8vWUFCSUFKUUIrc1Faa1JFdXdFMUJZUUEwaEhCTVJEZ3NGQkFnQUFRRktHMEFOSVJ3VEVRNExCUVFJQUFNQlNsbExzQk5RV0VBWEJBTUZBd0VBQUFGVkJBTUZBd0VCQUYwQ0FRQUJBRTBiUUJ3RUFRTUJBQUVEQUg0RkFRRURBQUZWQlFFQkFRQmRBZ0VBQVFCTldVQVFBQUFsSkI0ZEdCY0FFZ0FTR1FZTkZTdXhCZ0JFQng0Q0Z4VU9BZ2NqTlRZMk55WW1KelVGRGdJSEl5NENKelV6RmhZWE5qWTNNNjBUTmpnWUdEZzJFd3NTTGh3Y0xCUUJld29iR0FkRUJSY2FDek1OR3dvTEdRMHpLQW9hR0FkRUJoY2FDak1NRnc0T0Z3MHlHUk5BUWhjWFFrQVREQkpDSEJ4QUZBQUFBUC8vL2I4Q2EvLy9Bdm9BSndGTS9xUUFUQUVIQVUzOWx3QU5BQkN4QUFHd1RMQXpLN0VCQWJBTnNETXJBQUgremdKdUFUSUN1Z0FEQUJoQUZRQUFBUUVBVlFBQUFBRmRBQUVBQVUwUkVBSUdGaXNCSVJVaC9zNENaUDJjQXJwTUFQLy9BQVFDYkFFM0Fyd0JCZ0ZNM0E0QUNMRUFBYkFPc0RNckFBRC8vLzdSQW13QUJBSzhBUWNCVFA2cEFBNEFDTEVBQWJBT3NETXJBQVAvT1FKMEFNZ0RLUUFMQUJVQUlRQzdzUVprUkV1d0UxQllRQW9TQVFVQkRRRURBQUpLRzBBS0VnRUZBZzBCQXdBQ1NsbExzQk5RV0VBZEFBVUFBd1ZYQWdFQkJnRUFBd0VBWndBRkJRTmZDQVFIQXdNRkEwOGJTN0FiVUZoQUlnQUNCUU1DVlFBRkFBTUZWd0FCQmdFQUF3RUFad0FGQlFOZkNBUUhBd01GQTA4YlFDTUFCUUFFQlZjQUFRWUJBQU1CQUdjQUFnY0JBd1FDQTJVQUJRVUVYd2dCQkFVRVQxbFpRQnNYRmd3TUFRQWRHeFloRnlFTUZRd1ZFUkFIQlFBTEFRc0pEUlFyc1FZQVJCTWlKalUwTmpNeUZoVVVCZ2MxTmpZM014VUdCZ2NISWlZMU5EWXpNaFlWRkFhVUZoMGRGaFVmSC9BTEZ3WnFFRFVjZmhZZEhSWVZIaDRDdkJzY0hSa1pIUndiUHd3ZVZDSUtJRklrQ1JzYkhSa1pIUnNiQUFBRC8wc0NkQUMxQXlrQUN3QVZBQ0VBdnJFR1pFUkxzQk5RV0VBS0ZBRUVBQThCQWdFQ1NodEFDaFFCQkFNUEFRSUJBa3BaUzdBVFVGaEFIZ2dCQkFFQ0JGY0hBd1lEQUFBQkFnQUJad2dCQkFRQ1h3VUJBZ1FDVHh0THNCdFFXRUFqQndFREJBSURWUWdCQkFFQ0JGY0dBUUFBQVFJQUFXY0lBUVFFQWw4RkFRSUVBazhiUUNRSUFRUUJCUVJYQmdFQUFBRUNBQUZuQndFREFBSUZBd0psQ0FFRUJBVmZBQVVFQlU5WldVQWJGeFlNREFFQUhSc1dJUmNoREJVTUZSRVFCd1VBQ3dFTENRMFVLN0VHQUVRVE1oWVZGQVlqSWlZMU5EWUhGaFlYRlNNbUppYzFCeklXRlJRR0l5SW1OVFEyZ1JVZkh4VVhIQnhVQnhjTE1odzFEeThXSGg0V0ZoMGRBeWtaSFJ3Ykd4d2RHUXdpVkI0TUpGSWdDajBaSFJzYkd4c2RHUUFBQUFIK1hBSmVBYUFDL2dBVEFDbXhCbVJFUUI0T0NRUURBQUlCU2dNQkFnQUNnd0VCQUFCMEFBQUFFd0FURmhVRURSWXJzUVlBUkJNZUFoY1ZJeVltSndZR0J5TTFQZ00zUGlSMGlFSkhXTE5PVTdWVlJ5aGtaVm9lQXY0Vk16WVhDeE11R3hzdEZBc09KaWtvRUFBQUFBQUIveVVDVUFEYkF1SUFCd0FHc3dRQUFUQXJBeWMzRnpjWEJ5ZEpraVIxaTVJa2RRSlFUVU0vUVUxRFB3QUFBQUFCLzJjQ1d3Q1VBdW9BQlFBcXNRWmtSRUFmQWdFQUFRRktBd0VCU0FBQkFBQUJWUUFCQVFCZEFBQUJBRTBURUFJTkZpdXhCZ0JFRXlNbk54Y3psS0dNSkhxUEFsdE1RMElBQUFBQUFmOE8veHNBOGdBQUFCOEFhYkVHWkVSQUN4QVBBZ0VBQWdFRUFRSktTN0FPVUZoQUh3QUFBUUVBYmdBQkFBUUNBUVJvQUFJREF3SlhBQUlDQTE4RkFRTUNBMDhiUUI0QUFBRUFnd0FCQUFRQ0FRUm9BQUlEQXdKWEFBSUNBMThGQVFNQ0EwOVpRQWtTSXlzakloQUdEUm9yc1FZQVJDTXpCell6TWg0Q016STJOVFFtSnpjV0ZoVVVCaU1pTGdJaklnWUhJNHBGTHg0Z0lDOG9LQmtYR2g4VUdDZ3lPelFsT1RBcUZpWXNEMFpwRUJVYUZSb1VGaGtHTUFvN0t6QTdGeDRYS2lFQUFBQUIvMndDV3dDWkF1b0FCUUFxc1Faa1JFQWZBd0VCQUFGS0FnRUFTQUFBQVFFQVZRQUFBQUZkQUFFQUFVMFRFQUlORml1eEJnQkVBek0zRndjamxJOTZKSXloQXFoQ1Ewd0FBQUFBQWYzWEFrWC8vd0xrQUE4QU1yRUdaRVJBSndJQkFBVUJCQUVBQkdVQUFRTURBVmNBQVFFRFh3QURBUU5QQUFBQUR3QVBJaElpRVFZTkdDdXhCZ0JFQVRVaEZoWXpNalkzTXdZR0l5SW1KLzNYQVMwRk15WWpOUVJCQlZCSE1VZ1RBcGROTHlNZ01rcFZLeWNBQWY5c0FsSUFtUUxoQUFVQUtyRUdaRVJBSHdJQkFRQUJTZ01CQVVjQUFBRUJBRlVBQUFBQlhRQUJBQUZORXhBQ0RSWXJzUVlBUkFNekZ3Y25JNVNoakNSNmp3TGhURU5DQUFBQUFBSCtrQUlYL3owRERBQVJBQ3l4Qm1SRVFDRUZBUUFCQVVvUERnUURBRWNBQVFBQUFWY0FBUUVBWHdBQUFRQlBKQ0VDRFJZcnNRWUFSQUUwSXlJSE5UWTJNeklXRlJRR0J5YzJOdjd0TEI0VERTQVVNVHM1TERJaUpRS1pMZ2REQkFVM0x5bEpIUThnTmdBQUFBSC94UDhzQURMLzFnQW5BRFN4Qm1SRVFDa1RBUUVDRWdFREFRSktBQUlBQVFNQ0FXY0FBd0FBQTFjQUF3TUFYd0FBQXdCUEh5UXVFQVFOR0N1eEJnQkVGeUkxTkRZMk5UUW1KalUwTmpZMU5DTWlCeWMyTmpNeUZSUUdCaFVVRmhZVkZBWUdGUlFXRnl4WEdob2FHaHNjR0JjVkJBb2hFRE1aR1JjWEZ4Y1VHTlFmQ3dzSEJBWUVDQXNLRFFvR0NBb2JCQWtlRUJBSUJnUUZDUXdMQ2dVRkJBUUJBQUFBQUFIL1JRSmJBTGdDM3dBUkFEYXhCbVJFUUNzQUF3QUJBMWNFQVFJRkFRQUJBZ0JuQUFNREFWOEFBUU1CVHdFQUR3NE1DZ2tJQlFNQUVRRVJCZzBVSzdFR0FFUVRJZ1lHSXlJbU5UVXpGak15TmpZek14V3lNMUpKSmpOR1NBTXdIRUJYUFFnQ2xoNGRNa0FTT0JzYlIvLy8vcHNDWGdGcUF2NEFKd0ZLL25NQUFBQUdBVXJYQUFBRS91a0NYZ0VaQXpzQUN3QVhBQ01BTHdCVnNRWmtSRUJLQUFFQUF3VUJBMmNKQVFJRUFBSlhCd0VGQ3dZS0F3UUFCUVJuQ1FFQ0FnQmZDQUVBQWdCUEpTUVpHQTBNQVFBcktTUXZKUzhmSFJnakdTTVRFUXdYRFJjSEJRQUxBUXNNRFJRcnNRWUFSQU1pSmpVME5qTXlGaFVVQmljeU5qVTBKaU1pQmhVVUZnY2lKalUwTmpNeUZoVVVCaUVpSmpVME5qTXlGaFVVQmdFelFFQXpNa0pCTXhrZUh4Z1pIaDNKRmgwZEZoY2VIZ0d4Rng0ZUZ4WWZId0plT3pRek96c3pORHMzSGhvWkh4OFpHaDRLR3h3ZEd4d2NIQnNiSEIwYkhCd2NHd0FBQUFQL0dBSllBT2dEU2dBWUFDTUFMZ0JWc1Faa1JFQktMQnNQQXdRRUJRRktBd0VDQndFRkJBSUZad29HQ1FNRUFBQUVWd29HQ1FNRUJBQmZBUWdDQUFRQVR5VWtHaGtCQUNzcEpDNGxMaDhkR1NNYUl4TVJEUXNIQlFBWUFSZ0xEUlFyc1FZQVJCTWlKaWNHQmlNaUpqVTBOak15RmhjMk5qTXlGaFVVQmdZbE1qY21KaU1pQmhVVUZoY3lOalUwSmlNaUJ4WVdjeVkzRnhZM0l6UkRRalVqT0JjVk5pYzBRUjQwL3Zzc0pSTW1HaDBpSWY0ZEl5UWRLaWNTS1FKWUtDRWNLa0UzTWtVbUloMHFRallnTnlJNlFpQWdKaHdhSmdJbUhCc2xRQ0FpQUFBQUFBSC9rUUpQQUc4RFRBQVJBREt4Qm1SRVFDY1FEUXdGQkFFR0FBRUJTZ0lCQVFBQUFWVUNBUUVCQUYwQUFBRUFUUUFBQUJFQUVSZ0REUlVyc1FZQVJCTVZOalkzRlFZR0J5TW1KaWMxRmhZWE5Sd1FMQmNqTXhFUUVUTWpHQ3dQQTB5VUNoZ0hLUmcxSEJ3MUdDa0hHQXFVQUFBQUEvOXFBbk1BbGdPR0FBc0FGd0FqQUMreEJtUkVRQ1FBQUFBQkFnQUJad1FCQWdNREFsY0VBUUlDQTE4RkFRTUNBMDhrSkNRa0pDSUdEUm9yc1FZQVJBTTBOak15RmhVVUJpTWlKZ2MwTmpNeUZoVVVCaU1pSmpjME5qTXlGaFVVQmlNaUpqVWVGeFlmSHhZWEhtRWVGaGNlSGhjV0hzTWRHQlllSGhZWUhRTk9IUnNjSEJ3Y0hJZ2VHeHdkR3h3Y0d4NGJIQjBiSEJ3QUFBQUFBdjhqL3dvQTJmL0lBQXNBRndBSXRSY1JDd1VDTUNzSEJ4Y0hKd2NuTnljM0Z6Y0ZCeGNISndjbk55YzNGemNnT1RrbU9Ec2tPemdtTnprQkhEZzVKems2SXpvNUp6YzZYRGs0SnprN0l6dzRKamc1SkRrNEp6azdJenc0SmpnNUFBQUFBQUgrRHY3M0FmTC92QUJEQUVPeEJtUkVRRGdFQWdJQUNnZ0NCZ0VBQm1jREFRRUZCUUZYQXdFQkFRVmZEQXNKQndRRkFRVlBBQUFBUXdCRFFENDZPQ1FrSXhRa0pDUWtKQTBOSFN1eEJnQkVBVDRETXpJZUF6TXlQZ016TWg0RE16SStBek15SGdJWEl5NENJeUlPQXlNaUxnTWpJZzRESXlJdUF5TWlCZ1lIL2c0Q0R4ODNLeUFySGhvZUZCZ2FGQmdwSkNRcUdCTWJGeFFlR2g4cklDZzJJQkFET1FVVElSb1dIeGtlTENNbUxCb1NHQlVWRnhNYUxDWWpMQjhaSGhjYklSTUQvdmNhUXo4cEd5a3BHeHNwS1JzYktTa2JHeWtwR3lVN1JTQWtQaVliS1NrYkd5a3BHeHNwS1JzYktTa2JLVDRoQUFBQUFmL0UvdzRBUFAvbkFBa0FKckVHWkVSQUd3a0JBQUVCU2dBQkFBQUJWUUFCQVFCZkFBQUJBRThURUFJTkZpdXhCZ0JFRnlJbU5UVXpGUlFXRnp3N1BVMFZGdkk3TDI5Z0hSc0RBQUwvYS84T0FKVC81d0FKQUJNQUxMRUdaRVJBSVJNSkFnQUJBVW9EQVFFQUFBRlZBd0VCQVFCZkFnRUFBUUJQRXhVVEVBUU5HQ3V4QmdCRUJ5SW1OVFV6RlJRV0Z4Y2lKalUxTXhVVUZoY2NPejVORmhXeE96MU9GUlh5T3k5dllCMGJBejQ3TDI5Z0hSc0RBQUgvbHY4UUFGa0FLQUFEQUJteEJtUkVRQTRBQUFFQWd3QUJBWFFSRUFJTkZpdXhCZ0JFTnpNREl4cytoVDRvL3VnQUFBQUIvNS8vRlFCWkFDZ0FEUUFmc1Faa1JFQVVBZ0VCQUFGS0FBQUJBSU1BQVFGMEpSQUNEUllyc1FZQVJEY3pCeFlWRkFZaklpWTFORFkzR3o1WENSOFhGeDhiRlNpM0RoVWNIUndkSEJ3Q0FBTC9NUUpqQU00RFF3QUxBQmdBSmJFR1pFUkFHZ01CQUFFQkFGVURBUUFBQVYwQ0FRRUFBVTBWRmhRVEJBMFlLN0VHQUVRRE5EWTNNd1lWRkJjakppWWxGQVlISXpZMk5UUW5NeFlXenhjWU9Dd3NPQmdYQVowWEdEZ1dGaXc0R0JjQzB4ODZGeTlCUHpFWE9oNGdPQmNYT2g1QU1SYzZBQVQrdVFKakFVWURRd0FMQUJnQUpBQXhBQyt4Qm1SRVFDUUhCQU1EQUFFQkFGVUhCQU1EQUFBQlhRWUZBZ01CQUFGTkZSWVVGaFVXRkJNSURSd3JzUVlBUkFFME5qY3pCaFVVRnlNbUppVVVCZ2NqTmpZMU5DY3pGaFlGTkRZM013WVZGQmNqSmlZbEZBWUhJelkyTlRRbk14WVcvcmtYR0Rnc0xEZ1lGd0tORnhnNEZoWXNPQmdYL2VzWEdEZ3NMRGdZRndHZEZ4ZzRGaFlzT0JnWEF0TWZPaGN2UVQ4eEZ6b2VJRGdYRnpvZVFERVhPaDhmT2hjdlFUOHhGem9lSURnWEZ6b2VRREVYT2dBQS8vLy9NZjhTQU03LzhnTUhDLzBBQVB5dkFBbXhBQUs0L0srd015c0FBQUQvLy8rVkFtZ0Fqd05JQVVjQmZmOStBbXdjelJtYUFBbXhBQUs0QW15d015c0FBQUQvLy8ra0FtZ0Fmd09jQVVjQVJmOS9BbXdjelJtYUFBbXhBQUs0QW15d015c0FBQUQvLy8rZkFnd0Fod09lQVVjQmZ2OTZBbXdjelJtYUFBbXhBQUs0QW15d015c0FBQUQvLy8rZkFtZ0Fjd05JQVVjRUtmK0pBbXdjelJtYUFBbXhBQUs0QW15d015c0FBQUQvLy8vQkFtd0FiZ09lQVVjQVNmKzZBbXdjelJtYUFBbXhBQUc0QW15d015c0FBQUQvLy8reEFtd0FZd09jQVVjSnUvK3hBbXdjelJtYUFBbXhBQUc0QW15d015c0FBQUQvLy85N0FpZ0FmQU5JQUdjQVV2K0JBbXdjelJtYUFVY0wrLytyQW9nY3pSbWFBQkt4QUFLNEFteXdNeXV4QWdHNEFvaXdNeXNBQVAvLy82UUNEQUIvQTBnQlJ3QlQvMzhDYkJ6Tkdab0FDYkVBQXJnQ2JMQXpLd0FBQVAvLy84QUNEQUJVQTU0QlJ3UlEvODBDYkJ6Tkdab0FDYkVBQWJnQ2JMQXpLd0FBQVAvLy8yOENLQUJ5QTBRQVp3QlkvM3dDYkJ6Tkdab0JSd3Y3LzU4Q2lCek5HWm9BRXJFQUFiZ0NiTEF6SzdFQkFiZ0NpTEF6S3dBQS8vLy9XUUpzQUxvRFJBRkhBRnIvVkFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9uUUpvQUdjRGtnRkhBS2IvaVFKc0hNMFptZ0FKc1FBRXVBSnNzRE1yQUFBQS8vLy9tQUpvQUh3RGtnRkhBTGovZ1FKc0hNMFptZ0FKc1FBRXVBSnNzRE1yQUFBQS8vLy9ud0pvQUhJRGtnRkhBTDcvZkFKc0hNMFptZ0FKc1FBRHVBSnNzRE1yQUFBQS8vLy9sd0hRQUdrQ2NBTUhDNTBBQUFLZ0FBbXhBQUc0QXFDd015c0FBQUQvLy83UEFjZ0JNZ0xLQUFjSE5QNm1BQUFBQUFBQi9xNy9Kd0ZSLzh3QUVRQW9zUVprUkVBZEFnRUFBUUNFQUFNQkFRTlhBQU1EQVY4QUFRTUJUeUlUSkJBRURSZ3JzUVlBUkFVakxnTWpJZ1lHQnlNMk5qTXlGaFlCVVVnRk0weFpLMFYxVEFaSENhNmJZcE5XMlJzaEVnY0tKQ2RTVXlCSUFBQUFBQUwvWGY4U0FLUC8rUUFYQUM4QVliRUdaRVJBVmdjQkFnRVRBUU1BQmdFRkF4OEJCZ1VyQVFjRUJVb3FBUVVCU1JJQkFVZ2VBUWRIQUFFQUFBTUJBR2NBQWdBREJRSURad0FHQkFjR1Z3QUZBQVFIQlFSbkFBWUdCMThBQndZSFR5UWtKQ1FrSkNRaUNBMGNLN0VHQUVRSEppWWpJZ1lITlRZek1oWVhGaFl6TWpZM0ZRWWpJaVlISmlZaklnWUhOVFl6TWhZWEZoWXpNalkzRlFZaklpWU1HU0lQRkNnUklqSVRLQ0FZSkE0VUtCRWpNUlFuSUJraUR4UW9FU0V6RXlnZ0dDUU9GQ2dSSXpFVUoxVUxCeGNSUUNRSURRb0lGaEZBSXdoMkNnZ1lFRUFrQ0EwTEJ4Y1FQeVFIQUFBQS8vLy9tZ0pvQUhzRG5nRkhBY3IvZ2dKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9xUUpzQUhvRFJBRkhBY3YvaEFKc0hNMFptZ0FKc1FBRHVBSnNzRE1yQUFBQS8vLy95d0pzQUdVRFJBRkhBY3ovcGdKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9pZ0lnQUlvRFJBRkhBYzMvZ2dKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9XUUpzQUxvRFJBRkhBYy8vV1FKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9wd0pvQUdvRFNBRkhBZEQvbUFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9zZ0pzQUlNRFJBRkhBZFAvalFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9oZ0pwQUd3RFJBRkhBZFQvaEFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9nUUpzQUpNRFJBRkhBZFgvWEFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9uZ0pzQUhVRFJBRkhBZGIvZVFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9tQUpvQUh3RFNBRkhBZGYvZ1FKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9vUUpzQUhNRFJBRkhBZGovZkFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9wQUlNQUg4RFNBRkhBZG4vZndKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9zd0pvQUdvRFNBRkhBZHIvbkFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9vd0pzQUhFRFJBRkhBZHYvbWdKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9sZ0pzQUg0RFJBRkhBZDcva0FKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9uUUlnQUpRRFJBRkhBZC8vZUFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9uQUpzQUhFRFJBRkhBZUQvZlFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9ZQUpzQUxNRFJBRkhBZUgvT3dKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9YZ0loQU5RRFJBRkhBZUwvT1FKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9tQUpvQUh3RFNBRkhBbVAvZ1FKc0hNMFptZ0FKc1FBRHVBSnNzRE1yQUFBQUFBSC9Od0pvQUs4RFJBQVdBSVd4Qm1SRVM3QXRVRmhBQ2hRQkJRSVZBUUFGQWtvYlFBb1VBUVVDRlFFREJRSktXVXV3TFZCWVFCc0FBUVFCQWdVQkFtVUFCUUFBQlZjQUJRVUFYd01HQWdBRkFFOGJRQ0lBQXdVQUJRTUFmZ0FCQkFFQ0JRRUNaUUFGQXdBRlZ3QUZCUUJmQmdFQUJRQlBXVUFUQVFBU0VBNE1Dd29KQ0FjRkFCWUJGZ2NIRkN1eEJnQkVBeUltTlRRMk15RVZJeFVqTlNNaUZSUXpNalkzRlFaWk1qNUJNd0VFVHkrSFFrQVVIdzBaQW1nMU9qb3pJclcxUzB3SkJpVU5BQUFBLy8vL25RSm9BR2NEU0FGSEFjbi9pUUpzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL29BSm9BSFFEU0FGSEFjNy9pUUpzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL29BSnNBSFlEUkFGSENWRC9mQUpzSE0wWm1nQUpzUUFCdUFKc3NETXJBQUFBLy8vL3JBSm9BSEFEbkFGSENWSC9ud0pzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL2ZBSnNBSVVEbkFGSENVci9lUUpzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL2NBSm9BTEVEU0FGSEFlZi9Td0pzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL2F3Sm9BS3NEU0FGSENWZi9SZ0pzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL2hnSnNBSTREUkFGSEFsZi9oUUpzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL2ZnSnNBSlVEUkFGSEFsdi9ld0pzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vL2JnSnNBTWdEUkFGSEFsMy9TUUpzSE0wWm1nQUpzUUFDdUFKc3NETXJBQUFBLy8vK2R2Ny9BQUQvdmdGSEI0WC8rd0lKUUFEQUFBQUpzUUFCdUFJSnNETXJBQUFBLy8vLysvNy9BWVgvdmdFUEI0VUFBQUlKd0FBQUNiRUFBYmdDQ2JBekt3RC8vLzU4L3g4QUFQK21Bd2NIaHdBQS9NQUFDYkVBQWJqOHdMQXpLd0FBQVAvL0FBRC9JQUdFLzZjQkR3ZUhBQUFDQnNBQUFBbXhBQUc0QWdhd015c0EvLzhBQi85TkFUci9uUUVIQVV6LzMvenZBQW14QUFHNC9PK3dNeXNBQUFELy8vN1YvMDBBQ1ArZEFRY0JUUDZ0L084QUNiRUFBYmo4NzdBekt3QUFBUC8vL3M3L1N3RXkvNWNEQnd2akFBRDgzUUFKc1FBQnVQemRzRE1yQUFBQUFBSC9PUUphQU1nRFBBQWxBR2F4Qm1SRVM3QXRVRmhBSFFjQkFnUUJBUUFDQVdjRkFRQURBd0JYQlFFQUFBTmZCZ0VEQUFOUEcwQW9BQWNBQkFFSEJHY0FBZ0FCQlFJQlp3QUFCZ01BVndBRkFBWURCUVpuQUFBQUExOEFBd0FEVDFsQUN5UVJGQ1FrRVJRaUNBMGNLN0VHQUVRVEZCWXpNalkxTkNZak5USVdGUlFHSXlJbU5UUW1JeUlHRlJRV014VWlKalUwTmpNeUZoc2ZHeHNkSFJreFFENDBNajRmSEJvZUhSa3lQajR6TWo4QzB4OGtJQmtYSURjOU1qQStPVEVlSXlBWUdDQTJQRE12UHpvQUFBQUIvNUVCL3dCM0F6c0FId0E1c1Faa1JFQXVDd0VCQUF3QkFnRUNTaDBjQWdKSEFBTUFBQUVEQUdjQUFRSUNBVmNBQVFFQ1h3QUNBUUpQSkNRa0lnUU5HQ3V4QmdCRUV6UW1JeUlHRlJRV016STNGUVlHSXlJbU5UUTJNeklXRlJRR0JnYzFOalk4SXhnWkd4c1RFZzBHRkFndU9VQXlNMEVZTXlrZEhBSzNLU1FnR0JvYkNEY0VCRHN4TWoxRFBpaE1PZzAyRVVvQS8vLytudjhjLzF6LzF3RUhDOWIrL2Z6SUFBbXhBQUc0L01pd015c0FBQUFBQXY1cEFHc0JsZ0ZMQUFzQUdBQWxzUVprUkVBYUF3RUFBUUVBVlFNQkFBQUJYUUlCQVFBQlRSVVdGQk1FRFJncnNRWUFSQ1UwTmpjekJoVVVGeU1tSmlVVUJnY2pOalkxTkNjekZoYithUmNZT0N3c09CZ1hBeTBYR0RnV0ZpdzRHQmZiSHpvWEwwRS9NUmM2SGlBNEZ4YzZIa0F4RnpvQUFnQ1RBb1VCdndMMEFBc0FGd0FkUUJvQ0FRQUJBUUJYQWdFQUFBRmZBd0VCQUFGUEpDUWtJZ1FKR0NzVE5EWXpNaFlWRkFZaklpWTNORFl6TWhZVkZBWWpJaWFUSHhZV0h4OFdGaC9DSGhjV0h4OFdGeDRDdkIwYkd4MGNHeHNjSFJzYkhSd2JHd0FCQUU4Q2d3REhBdjBBQ3dBZlFCd0FBUUFBQVZjQUFRRUFYd0lCQUFFQVR3RUFCd1VBQ3dFTEF3a1VLeE1pSmpVME5qTXlGaFVVQm9zWkl5TVpHU01qQW9NZElDRWNIQ0VnSFFBQUFRQndBbmNCYUFNWEFBc0FIa0FiQ2dRQ0FRQUJTZ0FBQVFDREFnRUJBWFFBQUFBTEFBc1ZBd2tWS3dFdUFpYzFNeDRDRnhVQkhCcENQaEtCRFNzdEVnSjNFemc0RkFrVk56VVREQUFBQUFBQkFOa0NkQUc2QXhRQUN3QWVRQnNIQVFJQUFRRktBZ0VCQUFHREFBQUFkQUFBQUFzQUN4VURDUlVyQVJVT0FnY2pOVDRDTndHNkRqZzlHRVlQSmlRTUF4UUtFam80RWd3U05UY1dBQUFBQUFJQW5nSjNBaThERndBS0FCVUFNMEF3RVF3R0FRUUJBQUZLQWdFQUFRRUFWUUlCQUFBQlhRVURCQU1CQUFGTkN3c0FBQXNWQ3hVUUR3QUtBQW9VQmdrVkt4TTFOalkzTXhVT0FnY3pOVFkyTnpNVkRnSUhuaFU1Rm5RUU9Ed1dmQlU1RlhRUE9Ed1hBbmNNR1ZJcENSZzROUklNR1ZJcENSZzROUklBQUFBQUFRQjJBblFCM3dNVUFCQUFJVUFlREFjREF3QUNBVW9EQVFJQUFvTUJBUUFBZEFBQUFCQUFFQlVVQkFrV0t3RVdGaGNWSXlZbkJnWUhJelUrQWpjQmFSTkNJVVk3TXhvNkdrY1NMQ29PQXhRZ1VTTU1LemdkTWhRTUVqVTNGZ0FBQVFCMkFuUUIzd01VQUJFQUlVQWVEZ2tCQXdBQkFVb0RBZ0lCQUFHREFBQUFkQUFBQUJFQUVSUVZCQWtXS3dFVkRnSUhJeVltSnpVekZoWVhOalkzQWQ4UkxTc05mUlJDSUVjYk9Cb2FPaHNERkFzVE5EZ1dJRklqQ3hVeEhSMHlGQUFBQUFFQWdRSnhBZFFEQlFBTkFDWkFJd1FEQWdFQ0FZTUFBZ0FBQWxjQUFnSUFYd0FBQWdCUEFBQUFEUUFOSWhJaUJRa1hLd0VHQmlNaUppY3pGaFl6TWpZM0FkUUhXa3BOVmdWQUJUZ3NKenNHQXdWRFVVNUdMQm9jS2dBQUFnQ29BbHdCa3dNOUFBc0FGd0FpUUI4QUFRQUNBd0VDWndBREFBQURWd0FEQXdCZkFBQURBRThrSkNRaUJBa1lLd0VVQmlNaUpqVTBOak15RmdjMEppTWlCaFVVRmpNeU5nR1RRek0xUUVFME1rUTlJUmdZSUI4WkdTQUN6VFU4UERRMFBUMDBHaDRlR2hvZUhnQUFBQUVBYXdKMkFlY0RBQUFWQUN4QUtRQUVBUUFFVndZRkFnTUFBUUFEQVdjQUJBUUFYd0lCQUFRQVR3QUFBQlVBRlNJaUVpSWlCd2taS3dFR0JpTWlKaVlqSWdZSEl6WTJNeklXRmpNeU5qY0I1d2RDTGh3eU1CY1JIZ1k3QmtJdkhESXdGeEVlQndNQVJVVWZJQjRoUlVVZ0h4OGdBQUFBQUFFQWhBSjhBYnNDeXdBREFCaEFGUUFBQVFFQVZRQUFBQUZkQUFFQUFVMFJFQUlKRmlzVElSVWhoQUUzL3NrQ3kwOEFBQUFCQUEzL0hnQzhBQkFBRXdBa1FDRUdBUUVBQVVvUkVBVURBRWdBQUFFQkFGY0FBQUFCWHdBQkFBRlBKU0VDQ1JZckZ4UXpNalkzRlFZR0l5SW1OVFEyTmpjWEJnWmZLeEFhQ0E0ZkZUWTNIaTBYTlNJamN5c0ZBa0VFQmpVdUhUWXREeEFnTmdBQS8vLy8vUUw0QWZjRFF3SUdBSEVBQVAvLy8wTUNYZ0M5QXVVQUJ3RlIveHNBQUFBQS8vLy91Z0lxQUVFQ3lnRUhBaWYvQXYvU0FBbXhBQUc0LzlLd015c0FBQUQvLy80OUFuVC9qUU5HQUFjQlZQMi9BQUFBQVAvLy85WC9IZ0JzLzhVQUJ3YnQvdU1BQUFBQUFBSCtNZ0kzLzZJQ3pRQVNBRnF4Qm1SRVM3QWJVRmhBSFFBQ0FRRUNiZ0FBQXdNQWJ3QUJBd01CVlFBQkFRTmVCQUVEQVFOT0cwQWJBQUlCQW9NQUFBTUFoQUFCQXdNQlZRQUJBUU5lQkFFREFRTk9XVUFNQUFBQUVnQVJJaVFpQlFjWEs3RUdBRVFCQmdZaklpWTFORFl6TXpZMk16SVZGQVlqL3BNREZ4Y2FGaFliM1FNWEZ6RVhHd0psRmhnZEdSc1hGeGMwR3hrQUFmNDNBbUgvcVFMbEFCSUFOckVHWkVSQUt3QUVBZ0VFVndVQkFBQUNBUUFDWndBRUJBRmZBd0VCQkFGUEFRQVFEZ3dMQ1FjRkJBQVNBUklHQnhRcnNRWUFSQU15RmhVVkl5WW1JeUlHQmlNak5UTXlOamJPTWtWR0FSMFZIRUZYUFFnSE0xSkpBdVV4UUJNaUZ4d2JTQjBkQUFBQi9xWUNXZjhuQXc0QUVRQVlzUVprUkVBTkR3NENBRWNBQUFCMElnRUhGU3V4QmdCRUFUUTJNeklXRlJRT0FoVVVGaGNWSmliK3BpUWZHUjRQRlE4ZEhUeEZBc3NlSlJZVkRRMEhDUW9OR2dnbkN6d0FBQUFBQWY2bUFsbi9Kd01PQUJFQUdMRUdaRVJBRFFRREFnQkhBQUFBZEM0QkJ4VXJzUVlBUkFNVUJnYzFOalkxTkM0Q05UUTJNeklXMlVZN0hSMFBGUThkR2g4a0Fzc3JQQXNuQ0JvTkNna0hEUTBWRmlVQUFmOUZBdmdBdUFOOEFCRUFOckVHWkVSQUt3QUJBd0lCVndVQkFBQURBZ0FEWndBQkFRSmZCQUVDQVFKUEFRQU9EUXdLQ0FZRUF3QVJBUkVHQnhRcnNRWUFSQU15RmhZek14VWpJaVltSXlJSEl6VTBOa0ltU1ZJekJnZzlWMEFjTUFOSVJnTjhIaDFIR3hzNEVrQXlBQUgrOHdJN0FRMENvd0FPQUZHeEJtUkVTN0FiVUZoQUdBSUJBQU1EQUc4QUFRTURBVlVBQVFFRFhRUUJBd0VEVFJ0QUZ3SUJBQU1BaEFBQkF3TUJWUUFCQVFOZEJBRURBUU5OV1VBTUFBQUFEZ0FPSXpJaEJRY1hLN0VHQUVRREJpTWlOVFF6SVRJV0ZSUWpJaWUyQXlrckxBSEJGeFlzS1FNQ2FTNHlOaDBaTWk0QS8vLy9zQUpvQUd3RFNBRkhBZXovbVFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9tUUpzQUhvRFJBRkhBZEgvZEFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy94d0pzQUUwRGtnRkhBZS8velFKc0hNMFptZ0FKc1FBRHVBSnNzRE1yQUFBQS8vLy9rd0lNQUlBRFJBRkhBZHova3dKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9jZ0pzQUpFRFJBRkhBZVAvYkFKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9ld0pzQUpnRFJBRkhBZVQvVmdKc0hNMFptZ0FKc1FBRHVBSnNzRE1yQUFBQS8vLy9xQUpzQUhzRFJBRkhBZVgvZ3dKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9XZ0pzQUxVRFJBRkhBbEgvVWdKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQUFBSC9VQUtTQUs4REJRQU1BQzZ4Qm1SRVFDTUVBd0lCQWdHREFBSUFBQUpYQUFJQ0FGOEFBQUlBVHdBQUFBd0FEQ0lTSWdVSEZ5dXhCZ0JFRXdZR0l5SW1Kek1XRmpNeU42OERVbHhjVHdOS0JDNHpXd29EQlRRL1BUWWpIMElBQUFIL2hRSnJBSG9ESndBVEFEcXhCbVJFUUM4REFRRURBVW9GQkFJQ0F3QUNWUUFEQUFFQUF3Rm9CUVFDQWdJQVhRQUFBZ0JOQUFBQUV3QVRJeE1qRVFZSEdDdXhCZ0JFRXdjak53WUdJeUltTlRVekZSUVdNekkyTnpkNk5FWVRDaDhYSmloSERRMFRId3dRQXllOFJRUUhLaThwSmhNUUNBYzZBQUFEL3kwQWV3RFNBdmdBRVFBWUFCOEFOTEVHWkVSQUtSb1pHQklRQ2djQkNBQUJBVW9DQVFFQUFBRlZBZ0VCQVFCZEFBQUJBRTBBQUFBUkFCRVlBd2NWSzdFR0FFUVRGUllXRlJRR0J4VWpOU1ltTlRRMk56VVZCZ1lWRkJZWE54VTJOalUwSmlOVldsaFhSbFJjVjFrdk5UVXZSaTgwTkFMNGlBaGRTMHRlQjVXVkJsOUxURjBIaU1NRlBqSXlRQVRxNmdVL01qSSsvLy8vaEFKb0FLUURTQUZIQWxYL1h3SnNITTBabWdBSnNRQUJ1QUpzc0RNckFBQUFBQUgvWXdJNEFKd0Nvd0FJQUVaTHNCMVFXRUFYQUFBQ0FnQnZBQUVDQWdGVkFBRUJBbDBEQVFJQkFrMGJRQllBQUFJQWhBQUJBZ0lCVlFBQkFRSmRBd0VDQVFKTldVQUxBQUFBQ0FBSUlpRUVCaFlyQXdZaklqVTBNeUVWUEFjcU1EZ0JBUUprTERZMVB3QUFBQUgvWXdKa0FKMEMwQUFKQUVaTHNCeFFXRUFYQUFFQUFBRnVBQUFDQWdCVkFBQUFBbDREQVFJQUFrNGJRQllBQVFBQmd3QUFBZ0lBVlFBQUFBSmVBd0VDQUFKT1dVQUxBQUFBQ1FBSUlSRUVCaFlyQXpVek5qTXlGUlFHSTUzWkJDd3hHU0FDWkQ4dE5Cb2UvLy85MXY3WEFpZ0RSQUF2QUR2K1l2OUZFdklBTHdBN0FPUC9SUkx5QUM4QU8vM1ZBSzhTOGdBdkFEdi9xUDdYRXZJQUx3QTdBWFFBcnhMeUFDOEFPLzVpQWc4UzhnQXZBRHNBNHdJUEV2SUJEd0E3LzZnQ2NSTHlBRWF4QUFHNC8wV3dNeXV4QVFHNC8wV3dNeXV4QWdHd3I3QXpLN0VEQWJqKzE3QXpLN0VFQWJDdnNETXJzUVVCdUFJUHNETXJzUVlCdUFJUHNETXJzUWNCdUFKeHNETXJBQUQvLy81TS90d0J0QU12QUtjQVBnRVcvbzhBQUVBQXdBQUFBQUdIQUQ0QkZnTjhBQURBQU1BQUFBQUFFckVBQWJqK2o3QXpLN0VCQWJnRGZMQXpLd0FBQUFyOWt2NkRBbTBEaUFBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBS3dBdkFKdXhCbVJFUUpBRUFRQURBUUVDQUFGbEFBVUFBZ1lGQW1VSUFRWVpDUmdEQndvR0IyVU1BUW9iRFJvREN3NEtDMlVRQVE0ZEVSd0REeElPRDJVV0ZBSVNFeE1TVlJZVUFoSVNFMTBYRlFJVEVoTk5JQ0FjSEJnWUZCUVFFQXdNTHk0dExDc3FLU2duSmlVa0lDTWdJeUloSEI4Y0h4NGRHQnNZR3hvWkZCY1VGeFlWRUJNUUV4SVJEQThNRHhJUkVSRVJFUkFlQnhzcnNRWUFSQk16RlNNVkl6VWpOVE0xTXdFMUlSVWhOU0VWQlRVaEZTRTFJUlVGTlNFVklUVWhGUVV6RVNNQk14RWpFek1SSXhtQ2dqZURnemY5ZVFFOUFtRUJQZnNsQVQwQ1lRRTkreVVCUFFKaEFUMytMVGc0L284NE9MZzRPQU1DT0lXRk9JYitJemc0T0RpNU9EZzRPTGs0T0RnNGVmN0RBVDMrd3dFOS9zTUEvLy8vbmdKb0FHNERTQUZIQkMvL2h3SnNITTBabWdBSnNRQUJ1QUpzc0RNckFBQUEvLy8veWdKc0FHWURSQUZIQkd6L3BRSnNITTBabWdBSnNRQUJ1QUpzc0RNckFBQUEvLy8vaWdKc0FJa0RSQUZIQlBuL1l3SnNITTBabWdBSnNRQUJ1QUpzc0RNckFBQUEvLy8vbXdKc0FIa0RSQUZIQkVIL2RnSnNITTBabWdBSnNRQUJ1QUpzc0RNckFBQUEvLy8vcndKc0FJVURSQUZIQkUzL2lRSnNITTBabWdBSnNRQUN1QUpzc0RNckFBQUEvLy8vblFKb0FHY0RTQUZIQUVUL2lRSnNITTBabWdBSnNRQUN1QUpzc0RNckFBQUEvLy8vV0FKb0FMb0RTQUZIQUtqL1JBSnNITTBabWdBSnNRQUR1QUpzc0RNckFBQUEvLy8vU1FKb0FNZ0RTQUZIQ0VmL05RSnNITTBabWdBSnNRQUR1QUpzc0RNckFBQUEvLy8vWndKb0FNTURTQUZIQ0VuL1V3SnNITTBabWdBSnNRQUN1QUpzc0RNckFBQUEvLy8vc3dJTUFHb0RTQUZIQUtuL25BSnNITTBabWdBSnNRQUN1QUpzc0RNckFBQUEvLy8vc3dKb0FHb0RTQUZIQUViL25BSnNITTBabWdBSnNRQUJ1QUpzc0RNckFBQUEvLy8vbGdKb0FIRURuQUZIQUVmL2Z3SnNITTBabWdBSnNRQUN1QUpzc0RNckFBQUEvLy8vb0FKb0FIUURTQUZIQUVqL2lRSnNITTBabWdBSnNRQUN1QUpzc0RNckFBQUEvLy8vbUFKb0FId0RuZ0ZIQUxML2dRSnNITTBabWdBSnNRQUN1QUpzc0RNckFBQUEvLy8rMVFKZUFUQUM3UUFtQVUyN0FBQUhBVTMrclFBQS8vLy9sZ0lNQUhFRFNBRkhBRXIvZndKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9vUUpzQUhRRG5BRkhBRXYvZkFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy83d0pzQUNZRGxnRkhBRXovelFKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9tUUpvQUhzRGpnRkhDR3ovZ2dKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy9zUUpzQUlVRG5BRkhBRTcvakFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy84Z0pzQUNJRG5BRkhBRS8velFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy80Z0pzQUdZRG5nRkhBVUQvdlFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9XZ0pzQUx3RFNBRkhBRkQvTlFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9vUUpzQUhRRFNBRkhBRkgvZkFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9tQUpvQUh3RFNBRkhBRkwvZ1FKc0hNMFptZ0FKc1FBQ3VBSnNzRE1yQUFBQS8vLy94ZjdxQUZqL3hnRkhBRlgvb1A3cUhNMFptZ0FKc1FBQnVQN3FzRE1yQUFBQS8vLy96d0pzQUdJRFNBRkhBRlgvcWdKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9xUUpzQUhjRFJBRkhDRnIvbXdKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9zd0pvQUdNRFNBRkhBRmIvblFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy92QUpvQUZVRGRBRkhBRmYvdEFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9ud0pvQUhJRFJBRkhBRmovZkFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9sQUpzQUlFRFJBRkhBRm4vbEFKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9sZ0pzQUg0RFJBRkhBRnYva0FKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vLy9yd0pzQUdVRFJBRkhBRjMvbndKc0hNMFptZ0FKc1FBQnVBSnNzRE1yQUFBQS8vOEFBQUVmQVpBQ3l3RkhBRGtBQUFFZktab21aZ0FKc1FBQnVBRWZzRE1yQUFBQUFBRUFzZjhqQVR6L3d3QUtBRDYyQmdFQ0FBRUJTa3V3RzFCWVFBd0NBUUVCQUYwQUFBQ0hBRXdiUUJJQ0FRRUFBQUZWQWdFQkFRQmRBQUFCQUUxWlFBb0FBQUFLQUFvVUF3MFZLd1VWQmdZSEl6VStBamNCUEFrc0d6c0hEdzBDUFFrZFZ5TU1FVFk0RlFBQS8vOEFYLy8yQXNVQzFBRVBCMm9EQVFMS3dBQUFDYkVBQXJnQ3lyQXpLd0FBQVFBeS94d0IrUUxVQUVFQWEwQVVMUUVDQlFBc0FRRUZIaFVDQXdFZkFRUURCRXBMc0NsUVdFQWdBQUFBQmw4QUJnYUtTd0FGQlFGZkFnRUJBWU5MQUFNREJGOEFCQVNIQkV3YlFCMEFBd0FFQXdSakFBQUFCbDhBQmdhS1N3QUZCUUZmQWdFQkFZTUJURmxBQ2kwc0pTWVJIQ01IRFJzckFRY21KaU1pQmhVVUZoWVhIZ0lWRkFZSEJpWW5GaFlYRmhZek1qWTNGUVlHSXlJbUppY21KaWNtSmljMUZoWXpNalkxTkNZbUp5NENOVFEyTmpNeUZnSHZKQzlTS0RsRUpVUXZOMVV3ZW1ZTEZnb01FQVVYTWlRUkl4RVFNaGc1UlNzU0R5SWlDaFFKTFdrNFFrc3BTQzh0VWpROGFrUTJZZ0tuVmhNVk5TNGtMQ0lURnpWTE9scG9CZ0VCQVFzWkREVWpDQXBYQ0Fna1FDb2pMUkVFQndWbkZSdzVNU012SkJNU01rNDhQbFl1RndBQUFRQWYveHNDSlFMS0FCd0FZMEFUQmdFQUFRY0JBZ1FBRUFFQ0JCRUJBd0lFU2t1d0xWQllRQnNBQUFBQlhRQUJBWUpMQlFFRUJJTkxBQUlDQTE4QUF3T0hBMHdiUUJnQUFnQURBZ05qQUFBQUFWMEFBUUdDU3dVQkJBU0RCRXhaUUEwQUFBQWNBQnNsSnhFU0JnMFlLek0xQVNFMUlSVUJGaFlYRmhZek1qWTNGUVlHSXlJbUppY3VBaU1mQVhiK2x3SHUvb1pBUmhzalJ5TVdMaE1UT2h3NFRqZ1ZFeUVySWtnQ0pseEkvZFFGUnpFOEtnY0pWd2dKSmo4bUlTY1NBQUFBQUFFQUxBQUFBa01DSmdBZ0FEVkFNaHNGQWdJQUFVb0dBUUFBQTE4QUF3T05Td1FCQWdJQlhRVUJBUUdEQVV3QkFCb1pHQmNSRHdrSUJ3WUFJQUVnQncwVUt3RWlCaFVVRnhVak5UTW1KalUwTmpZek1oWVdGUlFHQnpNVkl6VTJOalUwSmdFNFRGTjA0WWMxUUR0dlVFOXZPMEEyaU9JN08xUUIyMTFTckROTlNpSjRXRU5xUFQxclExZDRJa3BOR1hKVVVsMEFBQUFBQVFBckFBQUEvd0ljQUFzQUlFQWRDd29KQ0FVRUF3SUlBQUVCU2dBQkFZVkxBQUFBZ3dCTUZSQUNEUllyTXlNMU54RW5OVE1WQnhFWC85UStQdFE5UFRVU0FZNFJOallSL25JU0FBTUFVZ0FBQXdrQ0hBQUtBQTRBRndBMlFETUFBUUFHQlFFR1pRTUJBQUNGU3dBRkJRSmVDQVFIQXdJQ2d3Sk1Dd3NBQUJjVkVROExEZ3NPRFF3QUNnQUpJUkVKRFJZcklSRXpGVE15RmhVVUJpTWhFVE1STnpNeU5qVTBKaU1qQVZCcWZXMWxhWFArSldyK2NqYzdPamh5QWh6WVVFeFBXUUljL2VST0tpNHNKQUFBQUFJQVV2LzJBeE1DSlFBYkFDSUJIRXV3R1ZCWVFBb0xBUUlCREFFREFnSktHMHV3RzFCWVFBb0xBUUlCREFFRkFnSktHMEFLQ3dFQ0JBd0JCUUlDU2xsWlM3QVpVRmhBSXdrQkJ3UUJBUUlIQVdVTEFRZ0lBRjhHQ2dJQUFJMUxBQUlDQTE4RkFRTURpd05NRzB1d0cxQllRQ2NKQVFjRUFRRUNCd0ZsQ3dFSUNBQmZCZ29DQUFDTlN3QUZCWU5MQUFJQ0ExOEFBd09MQTB3YlM3QXRVRmhBTUFBQkJBY0JWUWtCQndBRUFnY0VaUUFHQm9WTEN3RUlDQUJmQ2dFQUFJMUxBQVVGZzBzQUFnSURYd0FEQTRzRFRCdEFNUUFKQUFFRUNRRmxBQWNBQkFJSEJHVUFCZ2FGU3dzQkNBZ0FYd29CQUFDTlN3QUZCWU5MQUFJQ0ExOEFBd09MQTB4WldWbEFIeDBjQVFBZ0h4d2lIU0laR0JjV0ZSUVRFaEFPQ1FjRkJBQWJBUnNNRFJRckFUSVdGUlVoRmhZek1qWTNGUVlHSXlJbUp5TVZJeEV6RlRNMk5oY2lCZ2N6SmlZQ0wycDYvcFlDVTBzMFVTc3BVamx3a0FpQmFtcUREb0ZoT1VVRy9nRTdBaVdEY1RwVFdCTVRXQk1SZlh2dUFoemNibmRTU2tRL1R3RC8vd0FwLy9ZRExBSW9BQzhBUmdIekFoN0FBQUVIQUVnQklRQUFBQW14QUFHNEFoNndNeXNBQUFJQVR2LzJBNjhDSmdBZEFDa0FkMHV3R1ZCWVFBb0JBUWNBRFFFRUJ3SktHMEFLQVFFSEF3MEJCQWNDU2xsTHNCbFFXRUFhQUFjSEFGMElCUU1EQUFDRlN3WUJCQVFCWUFJQkFRR0xBVXdiUUI0SUJRSURBNFZMQUFjSEFGOEFBQUNOU3dZQkJBUUJZQUlCQVFHTEFVeFpRQklBQUNnbUlpQUFIUUFkSXhNa0pTSUpEUmtyQVJVMk16SVdGaFVVQmlNaUppY0dCaU1pSmpVUk14RVVGak15TmpVUkV4UVdNekkyTlRRbUl5SUdBaUU4VjAxeFBZVjVRbWtoSFdOS1oyWnFOVDlFUjIxRlNrcEZSVXRHU0FJY0hpaEVmbGFCbHpjeU1UaGhaUUZnL3JkRVFsbGZBUmYrOGxwcGFsbGFhR1FBQUFBREFBRC9FQUpTQXNvQUN3QVBBQk1BUlVCQ0R3a0RBd0FCQ2dFRkJnSktDQUVCQVVrQUFBQUdCUUFHWlFRQkFRRUNYUUFDQWlaTEFBVUZBMTBIQVFNREtnTk1BQUFURWhFUURnMEFDd0FMRVJJUkNBY1hLeFUxSVFFVElUVWhGUUVCRlFFQkl3TURJU2NoQWEzKzFmditrd0kyL3M4QlBmNmZBUlpMK0pNQjVEbitWZkNtQVU0Qmp6YzMvaDcrbmo4QnlRRzYvbmYrT2o0QUFBQURBRi8vbmdJWkF5OEFJZ0FyQURRQW1VQVBEUW9DQ1FFVEFRc0lHd0VBQ2dOS1M3QU1VRmhBTHdRQkFnRUJBbTRNQndJRkFBQUZid0FJRFFFTENnZ0xaUUFKQ1FGZkF3RUJBWUpMQUFvS0FGMEdBUUFBZ3dCTUcwQXRCQUVDQVFLRERBY0NCUUFGaEFBSURRRUxDZ2dMWlFBSkNRRmZBd0VCQVlKTEFBb0tBRjBHQVFBQWd3Qk1XVUFlTEN3QUFDdzBMRE12TFNzcEpTTUFJZ0FpSVI0ZEhCSWhFUkVSRGcwWkt4YzFJeEV6TlRNVk16SVhOVE1WRmhZVkZBWUhGUjRDRlJRR0J4VWpOU0lqSXhVRE16STJOVFFtSXlNUkZUTXlOalUwSmlPK1gxOUJCaUlkUVQ5Qk9UUWtPeUpPUmtFSUNEVTBURWczUTBoQVdFazdQRTlpWWdMS1pXVURhSElSVDBVK1ZBc0ZDQ1ZGT0Uxa0VtdGlZZ0lDTmpVMUwvN1o3a1E0TXo4QUFBRUFLQURnQThBQjdBQVJBQ1pBSXdBQkFnR0RBQUlBQUFKVkFBSUNBRjREQVFBQ0FFNEJBQkFPQndVQUVRRVJCQTBVS3pjaUpqVTBOak15RmhVVUJoVVVGak1oRmZkdFlpNGRIaUVHSERRQ3hPQmdTVEV5Smg4T0dnZ2NJMWdBQUFJQUtQL0hBVE1DK3dBREFBY0FDTFVHQkFJQUFqQXJFeWMzRndNbk54ZFlNTUZLMnpEQlNnSHdKK1E0L1FRbjVEZ0FBQUFCQUNqL25nRXlBS2NBRUFBclFDZ0FBUUFDQXdFQ1pRQURBQUFEVlFBREF3QmRCQUVBQXdCTkFRQVBEUW9JQndVQUVBRVFCUVlVS3hjaUpqVTBOak16RlNNaUJoVVVNek1WdEVSSVNFUitmakF0WFg1aVJFRkJReXdxTGxrc0FBQUNBQ2ovSlFFeUFLY0FFQUFVQUR4QU9RQUJBQUlEQVFKbEFBTUdBUUFFQXdCbEFBUUZCUVJWQUFRRUJWMEhBUVVFQlUwUkVRRUFFUlFSRkJNU0R3MEtDQWNGQUJBQkVBZ0dGQ3NYSWlZMU5EWXpNeFVqSWdZVkZETXpGUVUxSVJXMFJFaElSSDUrTUMxZGZ2OEFBUUJpUkVGQlF5d3FMbGtzZVN3c0FBQUEvLzhBS0FHbkFUSUNzQU1IREpjQUFBSUpBQW14QUFHNEFnbXdNeXNBQUFELy93QW9BUzRCTWdLd0F3Y01tQUFBQWdrQUNiRUFBcmdDQ2JBekt3QUFBQUFCQUNnQnB3RXlBckFBRUFBb1FDVUFBZ0FCQUFJQlpRQUFBd01BVlFBQUFBTmRCQUVEQUFOTkFBQUFFQUFQSVNNaEJRWVhLeE0xTXpJMk5UUWpJelV6TWhZVkZBWWpLSDR3TFYxK2ZrUklTVU1CcHl3cUxsa3NSRUZCUXdBQUFBQUNBQ2dCTGdFeUFyQUFFQUFVQURsQU5nQUNBQUVBQWdGbEFBQUdBUU1FQUFObEFBUUZCUVJWQUFRRUJWMEhBUVVFQlUwUkVRQUFFUlFSRkJNU0FCQUFEeUVqSVFnR0Z5c1ROVE15TmpVMEl5TTFNeklXRlJRR0l3YzFJUlVvZmpBdFhYNStSRWhJUkg0QkFBR25MQ291V1N4RVFVRkRlU3dzQUFELy93QW8vNTRCTWdDbkFROE1sd0ZhQUVYQUFBQUlzUUFCc0VXd015c0FBUC8vQUNqL0pRRXlBS2NEQnd5Y0FBRDk5d0FKc1FBQ3VQMzNzRE1yQUFBQUFBSUFUZ0FBQVZRQ3NBQURBQThBTGtBckJBRUJBZ0dFQXdFQUFnSUFWd01CQUFBQ1h3VUJBZ0FDVHdVRUFBQUxDUVFQQlE4QUF3QURFUVlHRlNzaEVUTVJBeUltTlRRMk16SVdGUlFHQVJKQzBoWWVIaFlWSHg4Q3NQMVFBajhiSFIwYkd4MGRHd0FBQWdCT0FBQUJWQUt3QUFNQUR3QXhRQzRBQUFNQWd3UUJBUUlCaEFBREFnSURWd0FEQXdKZkJRRUNBd0pQQlFRQUFBc0pCQThGRHdBREFBTVJCZ1lWS3lFUk14RURJaVkxTkRZek1oWVZGQVlCRWtMU0ZoNGVGaFVmSHdLdy9WQUJzQndjSFJzYkhSd2NBQUFBQWdCT0FBQUJWQUt3QUFNQUR3QXhRQzRBQUFNQWd3UUJBUUlCaEFBREFnSURWd0FEQXdKZkJRRUNBd0pQQlFRQUFBc0pCQThGRHdBREFBTVJCZ1lWS3lFUk14RURJaVkxTkRZek1oWVZGQVlCRWtMU0ZoNGVGaFVmSHdLdy9WQUJJQndjSFJzYkhSd2NBQUFBQWdCT0FBQUJWQUt3QUFNQUR3QXhRQzRBQUFNQWd3UUJBUUlCaEFBREFnSURWd0FEQXdKZkJRRUNBd0pQQlFRQUFBc0pCQThGRHdBREFBTVJCZ1lWS3lFUk14RW5JaVkxTkRZek1oWVZGQVlCRWtMU0ZoNGVGaFVmSHdLdy9WQ1FIQndkR3hzZEhCd0FBQUFBQWdCT0FBQUJWQUt3QUFNQUR3QXRRQ29BQUFNQWd3QURBUUVEVndBREF3RmZCUUlFQXdFREFVOEZCQUFBQ3drRUR3VVBBQU1BQXhFR0JoVXJJUkV6RVNNaUpqVTBOak15RmhVVUJnRVNRdElXSGg0V0ZSOGZBckQ5VUJ3Y0hSc2JIUndjQUFJQVRnQUFBVlFDc0FBREFBOEFMa0FyQkFFQkFnR0VBd0VBQWdJQVZ3TUJBQUFDWHdVQkFnQUNUd1VFQUFBTENRUVBCUThBQXdBREVRWUdGU3N6RVRNUkV5SW1OVFEyTXpJV0ZSUUdUa0tRRlI4ZkZSWWVIZ0t3L1ZBQ1FCc2RIQndjSEIwYkFBQUFBZ0JPQUFBQlZBS3dBQU1BRHdBeFFDNEFBQU1BZ3dRQkFRSUJoQUFEQWdJRFZ3QURBd0pmQlFFQ0F3SlBCUVFBQUFzSkJBOEZEd0FEQUFNUkJnWVZLek1STXhFVElpWTFORFl6TWhZVkZBWk9RcEFWSHg4VkZoNGVBckQ5VUFHd0d4MGNIQndjSFJzQUFBQUFBZ0JPQUFBQlZBS3dBQU1BRHdBeFFDNEFBQU1BZ3dRQkFRSUJoQUFEQWdJRFZ3QURBd0pmQlFFQ0F3SlBCUVFBQUFzSkJBOEZEd0FEQUFNUkJnWVZLek1STXhFVElpWTFORFl6TWhZVkZBWk9RcEFWSHg4VkZoNGVBckQ5VUFFZ0d4MGNIQndjSFJzQUFBQUFBZ0JPQUFBQlZBS3dBQU1BRHdBeFFDNEFBQU1BZ3dRQkFRSUJoQUFEQWdJRFZ3QURBd0pmQlFFQ0F3SlBCUVFBQUFzSkJBOEZEd0FEQUFNUkJnWVZLek1STXhFM0lpWTFORFl6TWhZVkZBWk9RcEFWSHg4VkZoNGVBckQ5VUpBYkhSd2NIQndkR3dBQ0FFNEFBQUZVQXJBQUF3QVBBQzFBS2dBQUF3Q0RBQU1CQVFOWEFBTURBVjhGQWdRREFRTUJUd1VFQUFBTENRUVBCUThBQXdBREVRWUdGU3N6RVRNUk15SW1OVFEyTXpJV0ZSUUdUa0tRRlI4ZkZSWWVIZ0t3L1ZBYkhSd2NIQndkR3dELy93Qk9BQUFCVkFLd0FROEVxd0dpQXJEQUFBQUpzUUFCdUFLd3NETXJBUC8vQUU0QUFBRlVBckFCRHdTcUFhSUNzTUFBQUFteEFBRzRBckN3TXlzQUFBRUFUZ0FBQVZRQ3NBQUhBQ3BBSndBQUFRQ0RCQUVEQWdPRUFBRUNBZ0ZWQUFFQkFsMEFBZ0VDVFFBQUFBY0FCeEVSRVFVR0Z5c3pFVE1STXhVakVVNUN4TVFDc1A3WVF2NjZBUC8vQUU0QUFBRlVBckFCRHdTb0FhSUNzTUFBQUFteEFBRzRBckN3TXlzQUFBRUFUZ0FBQVZRQ3NBQUZBQ1JBSVFBQUFRQ0RBQUVDQWdGVkFBRUJBbDBEQVFJQkFrMEFBQUFGQUFVUkVRUUdGaXN6RVRNUk14Vk9Rc1FDc1AyU1FnQUJBQUFBQWdBQXpCckpRbDhQUFBVQUJ3UG9BQUFBQU5NT2VuOEFBQUFBMWVkRHZmMlMvbnNLOEFRckFBQUFCZ0FDQUFFQUFBQUFBQUVBQUFRdC90c0FBQXNZL1pMOWt3cndBQUVBQUFBQUFBQUFBQUFBQUFBQUFBeWdBbGdBWGdBQUFBQUJCQUFBQVFRQUFBRVNBRVFCcXdCQkFvWUFHQUk4QURnRFZBQXNBdUVBTVFEdEFFRUJPQUFvQVRnQUhnSWxBQ1lDUEFBd0FSRUFKZ0ZDQUNVQkVRQkVBWUFBQ1FJOEFDMENQQUJRQWp3QUxnSThBQ3NDUEFBVUFqd0FPd0k4QURFQ1BBQW5BandBTFFJOEFDMEJFUUJFQVJFQUh3SThBREFDUEFBMEFqd0FNQUcvQUFrRGdnQTRBbzRBQUFLUUFGOENlUUE4QXQwQVh3SXRBRjhDRUFCZkF0Y0FQQUxzQUY4QllnQW1BU0wvc3dKNEFGOENHQUJmQTVZQVh3TUlBRjhERVFBOEFtUUFYd01SQUR3Q2VRQmZBaVlBTWdJekFBMEM0Z0JaQW1jQUFBT3RBQWdDWWdBREFrY0FBQUkrQUNJQlNnQk5BWUFBQ1FGS0FCa0NQQUFpQWJMLy9nRXhBQ2dDUGdBdEFtd0FVd0hxQURRQ2JBQTBBandBTkFGbEFCQUNiQUEwQW5ZQVV3RVFBRXdCRVAvR0FpOEFVd0VRQUZNRHRRQlRBbllBVXdKaEFEUUNiQUJUQW13QU5BR3BBRk1CNUFBeEFYOEFFZ0oyQUU0Q0RnQUFBeWNBQ3dJZkFBNENEd0FCQWRzQUl3R0FBQmdDSndEcUFZQUFJZ0k4QURBQkJBQUFBUklBUkFJOEFGVUNQQUFpQWp3QU9nSThBQXNDSndEcUFma0FPUUpNQUpFRFFBQXhBVzBBSFFJY0FDZ0NQQUF3QVVJQUpRTkFBREVCOVAvOUFhd0FNZ0k4QURBQlp3QVpBV2NBRlFFeEFDZ0NlZ0JUQW84QU53RVJBRVFBMndBRkFXY0FKd0Y4QUI4Q0hBQW5Bd0lBSGdNaEFCWURJQUFZQWI4QUdRS09BQUFDamdBQUFvNEFBQUtPQUFBQ2pnQUFBbzRBQUFPRy8vOENlUUE4QWkwQVh3SXRBRjhDTFFCZkFpMEFYd0ZpQUIwQllnQW1BV0wvL1FGaUFCd0MzUUFjQXdnQVh3TVJBRHdERVFBOEF4RUFQQU1SQUR3REVRQThBandBUUFNUkFEd0M0Z0JaQXVJQVdRTGlBRmtDNGdCWkFrY0FBQUprQUY4Q2p3QlRBajRBTFFJK0FDMENQZ0F0QWo0QUxRSStBQzBDUGdBdEEzQUFMUUhxQURRQ1BBQTBBandBTkFJOEFEUUNQQUEwQVJELzh3RVFBRU1CRVAvVUFSRC84d0poQURRQ2RnQlRBbUVBTkFKaEFEUUNZUUEwQW1FQU5BSmhBRFFDUEFBd0FtRUFOQUoyQUU0Q2RnQk9BbllBVGdKMkFFNENEd0FCQW13QVV3SVBBQUVDamdBQUFqNEFMUUtPQUFBQ1BnQXRBbzRBQUFJK0FDMENlUUE4QWVvQU5BSjVBRHdCNmdBMEFua0FQQUhxQURRQ2VRQThBZW9BTkFMZEFGOENiQUEwQXQwQUhBSnlBRFFDTFFCZkFqd0FOQUl0QUY4Q1BBQTBBaTBBWHdJOEFEUUNMUUJmQWp3QU5BSXRBRjhDUEFBMEF0Y0FQQUpzQURRQzF3QThBbXdBTkFMWEFEd0NiQUEwQXRjQVBBSnNBRFFDN0FCZkFuYi8xUUxzQUFBQ2RnQUhBV0wvOUFFUS84b0JZZ0FZQVJELzdnRmlBQThCRVAvbUFXSUFKZ0VRQUNBQllnQW1Bb1FBSmdJZ0FFd0JJdit6QVJEL3hnSjRBRjhDTHdCVEFpOEFVd0lZQUU0QkVBQkRBaGdBWHdFUUFFTUNHQUJmQVJBQVV3SVlBRjhCS0FCVEFoZ0FDUUVRLy9ZRENBQmZBbllBVXdNSUFGOENkZ0JUQXdnQVh3SjJBRk1DeUFBQkF3Z0FYd0oyQUZNREVRQThBbUVBTkFNUkFEd0NZUUEwQXhFQVBBSmhBRFFEclFBOEE3c0FNd0o1QUY4QnFRQlRBbmtBWHdHcEFFRUNlUUJmQWFrQVB3SW1BRElCNUFBeEFpWUFNZ0hrQURFQ0pnQXlBZVFBTVFJbUFESUI1QUF4QWpNQURRRi9BQklDTXdBTkFYOEFFZ0l6QUEwQmZ3QVNBdUlBV1FKMkFFNEM0Z0JaQW5ZQVRnTGlBRmtDZGdCT0F1SUFXUUoyQUU0QzRnQlpBbllBVGdMaUFGa0NkZ0JPQTYwQUNBTW5BQXNDUndBQUFnOEFBUUpIQUFBQ1BnQWlBZHNBSXdJK0FDSUIyd0FqQWo0QUlnSGJBQ01CVndCVEFqd0FYZ0tQQUFBQ1BnQXRBNGIvL3dOd0FDMERFUUE4QW1FQU5BSW1BRElCNUFBeEFic0FLQUc3QUNnQmd3QW9BWjBBS0FESUFDZ0JNd0FvQVA4QUtBSEtBQ2dCemdBb0FrRUErQUpCQUg0Q2xBQUdBUkVBUkFLTEFBQURTZ0FBQWVvQUFBTkVBQUFDN0FBQUEwSC8rd0ZzLytnQ2pnQUFBcEFBWHdJWEFGOENYQUFXQWkwQVh3SStBQ0lDN0FCZkF4RUFQQUZpQUNZQ2VBQmZBbXdBQUFPV0FGOERDQUJmQWpBQUpBTVJBRHdDM3dCZkFtUUFYd0pCQUNVQ013QU5Ba2NBQUFNMUFERUNZZ0FEQXprQU5RTVBBQ01CWWdBY0FrY0FBQUp3QURRQitBQXFBbllBVXdGc0FGRUNiZ0JNQW5BQU5BS0FBRk1DRlFBRUFtQUFNd0g0QUNvQjZBQTBBbllBVXdKYUFEUUJiQUJSQWk4QVV3STAvLzBDZWdCVEFqRUFBUUhqQURNQ1lRQTBBcXNBREFKaEFFa0I2QUEwQW5RQU5BSHdBQTBDYmdCTUF1a0FOQUl6Ly9FRER3Qk1BeVlBTndGcy8vWUNiZ0JNQW1FQU5BSnVBRXdESmdBM0FpMEFYd0w0QUEwQ0Z3QmZBbzBBUEFJbUFESUJZZ0FtQVdJQUhBRWkvN01EdXdBREE4c0FYd0w0QUEwQ2VnQmZBbndBQ3dMZkFGOENqZ0FBQW00QVh3S1FBRjhDRndCZkFza0FCZ0l0QUY4RGNBQUJBbDRBS2dNUUFHQURFQUJnQW5vQVh3TFBBQU1EbGdCZkF1d0FYd01SQUR3QzN3QmZBbVFBWHdKNUFEd0NNd0FOQW53QUN3TTFBREVDWWdBREF2RUFYd0xEQUVnRUdRQmZCQ2NBWHdLK0FBWURhQUJmQW9FQVh3S0NBQjhFSVFCZkFvY0FEZ0krQUMwQ1hnQTFBbEFBVXdHK0FGTUNYUUFTQWp3QU5BTVNBQUVCL1FBaUFwb0FVd0thQUZNQ0xBQlRBbFlBQlFNSEFGTUNoQUJUQW1FQU5BSjRBRk1DYkFCVEFlb0FOQUh6QUJVQ0R3QUJBdThBTXdJZkFBNENpUUJUQW5JQVJnT1hBRk1Eb1FCVEFyd0FEUU1mQUZNQ1dBQlRBZk1BSHdOUUFGTUNPUUFMQWp3QU5BSjJBQWNCdmdCVEFmZ0FOQUhrQURFQkVBQk1BUkQvOHdFUS84WURXQUFGQTNjQVV3SjJBQWNDTEFCVEFnOEFBUUtBQUZNQ0lnQmZBY29BVXdPdEFBZ0RKd0FMQTYwQUNBTW5BQXNEclFBSUF5Y0FDd0pIQUFBQ0R3QUJBZlFBS0FQb0FDZ0Q2QUFvQVp2Ly9nQzdBQXdBdXdBTUFRUUFId0M3QUF3QmdBQU1BWUFBREFHOUFCOENBUUJBQWdFQU93RjRBRVFES2dCRUJMZ0FMQUQ5QUNrQnVnQXBBVWNBS0FGSEFDY0NDQUJFQUlML1FRR1pBRFlDUEFBbEFqd0FJd01xQUZBQ1BBQWFBeTBBTndJSUFDd0QvZ0JXQXdVQUVRTVBBQ01DYXdBeUEwOEFId05QQUJVRFR3QW5BMDhBS2dKQkFGWUI5QUM0QUFEL3VnSDBBTE1CWndBSkFXY0FJUUZuQUJ3Qlp3QVlBZlFBQUFQb0FBQUI5QUFBQStnQUFBRk5BQUFBK2dBQUFLY0FBQUk4QUFBQkVRQUFBTWdBQUFCa0FBQUFBQUFBQUFBQUFBUG9BQ2tENkFBcEFSRC94Z0M3QUF3Q2p3QUtBazBBQUFPQ0FBOERsZ0JmQTdVQVV3S09BQUFDUGdBdEFVMEFOQU1jQUR3Q2V3QTBBeXNBV1FLN0FFNEFBUDZGQWkwQVh3TVFBR0FDUEFBMEFwb0FVd09oQUJnRE1RQVNBcUlBQmdLQ0FBWURvZ0JmQXZjQVV3SzVBQUFDVUFBREE3Y0FYd013QUZNQzd3QU9BbnNBQndQeUFGOERXZ0JUQWxnQUd3SDlBQTBET1FBMUF3OEFUQU1TQUR3Q1lRQTBBcE1BQUFJZUFBQUNrd0FBQWg0QUFBVGhBRHdFWFFBMEF6a0FQQUtaQURRRUZBQThBNWdBT2dPaEFCZ0RNUUFTQW8wQU93SDFBRFFDWVFBekE5MEFGQU84QUJRRE9BQmZBcjBBVXdKdUFCY0NXQUFIQW1rQVh3SnNBRk1DR3dBWEFjTUFCZ0tqQUY4Q0tRQlRBNjBBQVFOSEFBRUNYZ0FxQWYwQUlnSzNBRjhDVFFCVEFub0FYd0lzQUZNQ2VnQVFBaThBQndMQkFBVUNoQUFOQXd3QVh3S3FBRk1ETlFCZkF1Z0FVd1EwQUY4RFp3QlRBd29BUEFLR0FEUUNlUUE4QWVvQU5BSXpBQXdCOFFBVkFrY0FBQUlQQUFBQ1J3QUFBZzhBQUFLWUFBTUNRZ0FPQTNJQURBTG9BQlVDM1FCSUFvd0FSZ0xEQUVnQ2JRQkdBc01BWHdKMkFGTURiZ0FUQXFnQUVBTnVBQk1DcUFBUUFXSUFKZ053QUFFREVnQUJBc3NBWHdKTEFGTUM4Z0FEQW5RQUJRTGxBRjhDZVFCVEF4SUFYd0t1QUZNQ3d3QklBbklBUmdPNEFGOERKUUJUQVdJQUpnS09BQUFDUGdBdEFvNEFBQUkrQUMwRGh2Ly9BM0FBTFFJdEFGOENQQUEwQXZvQVFRSThBREVDK2dCQkFqd0FNUU53QUFFREVnQUJBbDRBS2dIOUFDSUNTZ0FoQWdvQUVnTVFBR0FDbWdCVEF4QUFZQUthQUZNREVRQThBbUVBTkFNU0FEd0NZUUEwQXhJQVBBSmhBRFFDZ2dBZkFmTUFId0o4QUFzQ0R3QUJBbndBQ3dJUEFBRUNmQUFMQWc4QUFRTERBRWdDY2dCR0Foc0FYd0crQUZNRGFBQmZBeDhBVXdJYkFCY0J3d0FHQXBZQUF3SkNBQTRDWWdBQ0FoOEFEZ0p1QURrQ2JBQTBBNDBBT1FPS0FETURpd0FjQXpzQUl3S05BQndDUGdBbUErZ0FBZ054QUFVRC93QmZBNThBVXdNRUFEd0NpQUEwQXRnQURBS25BQlVDWGdBeUFmZ0FLZ0xuQUFNQ2N3QUZBbzRBQUFJK0FDMENqZ0FBQWo0QUxRS09BQUFDUGdBdEFvNEFBQUkrQUFZQ2pnQUFBajRBTFFLT0FBQUNQZ0F0QW80QUFBSStBQzBDamdBQUFqNEFMUUtPQUFBQ1BnQXRBbzRBQUFJK0FDMENqZ0FBQWo0QUxRS09BQUFDUGdBdEFpMEFYd0k4QURRQ0xRQmZBandBTkFJdEFGOENQQUEwQWkwQVh3SThBRFFDTFFBVEFqd0FFUUl0QUY4Q1BBQTBBaTBBWHdJOEFEUUNMUUJmQWp3QU5BRmlBQ1lCRUFBN0FXSUFKZ0VRQUV3REVRQThBbUVBTkFNUkFEd0NZUUEwQXhFQVBBSmhBRFFERVFBOEFtRUFHQU1SQUR3Q1lRQTBBeEVBUEFKaEFEUURFUUE4QW1FQU5BTWNBRHdDZXdBMEF4d0FQQUo3QURRREhBQThBbnNBTkFNY0FEd0Nld0EwQXh3QVBBSjdBRFFDNGdCWkFuWUFUZ0xpQUZrQ2RnQk9BeXNBV1FLN0FFNERLd0JaQXJzQVRnTXJBRmtDdXdCT0F5c0FXUUs3QUU0REt3QlpBcnNBVGdKSEFBQUNEd0FCQWtjQUFBSVBBQUVDUndBQUFnOEFBUUp5QURRQUFQNDNBQUQ5d1FBQS9qY0FBUDQ0QUFEK09nQUEvam9BQVA0NkFBRCtPQUROQUJFQTdRQUxBak1BRFFGL0FCSUNiQUFIQXUwQUNRSnVBRjhDYkFCVEFvTUFXUUpxQUZBQ2VRQWdBbmtBUEFINkFEUUMzUUFjQXprQUNRSnVBREVDYkFBMEFtQUFNd0l0QUR3QytnQkJBbDRBTXdJUS8vTUMxd0E4QWxJQUFBTzJBRk1CYkFCWkFXSUFJQUo0QUY4Q0x3QlRBUmNBRGdJMC8vMEVCd0JaQXdqLzh3SjJBRk1ERWdBOEJFUUFQQU5tQURRQ3dBQUpBbXdBVXdKNUFGOENKZ0F1QWVRQUt3SkJBQ1VCZC8vNEFYOEFFZ0pNQUFrQmZ3QVNBak1BRFFNUEFDSUM0Z0JaQWtjQUFBSTBBQVFDUGdBaUFkc0FJd0pLQUNFQ1NnQXlBZ29BSXdJS0FDSUNPZ0FxQWtZQUlRSDlBQ0lCMlFBa0Fsa0FVd0ZEQUhZQ0tnQjJBZ1FBUFFFU0FFUUZFUUJmQkxnQVh3UklBRFFET2dCZkF5Z0FYd0lnQUZNRUtnQmZCQmdBWHdPRkFGTUNqZ0FBQWo0QUxRRmkvL3dCRVAvVEF4RUFQQUpoQURRQzRnQlpBbllBVGdMaUFGa0NkZ0JPQXVJQVdRSjJBRTRDNGdCWkFuWUFUZ0xpQUZrQ2RnQk9BbzRBQUFJK0FDMENqZ0FBQWo0QUxRT0cvLzhEY0FBdEF0Y0FQQUpzQURRQzF3QThBbXdBTkFKNEFGOENMLy9WQXhFQVBBSmhBRFFERVFBOEFtRUFOQUpLQUNFQ0NnQVNCUkVBWHdTNEFGOEVTQUEwQXRjQVBBSnNBRFFEeWdCZkFwa0FYd01JQUY4Q2RnQlRBbzRBQUFJK0FDMENqZ0FBQWo0QUxRSXRBRU1DUEFBekFpMEFYd0k4QURRQll2L0ZBUkQvbXdGaUFBb0JFUC9oQXhFQVBBSmhBRFFERVFBOEFtRUFOQUo1QUZJQnFRQUhBbmtBWHdHcEFFMEM0Z0JaQW5ZQVRnTGlBRmtDZGdCT0FrOEFKZ0h6QUJzQzdBQmZBbmIvMUFMckFGOERZQUEwQXJzQU9RSmVBREVDUGdBaUFkc0FJd0tPQUFBQ1BnQXRBaTBBWHdJOEFEUURFUUE4QW1FQU5BTVJBRHdDWVFBMEF4RUFQQUpoQURRREVRQThBbUVBTkFKSEFBQUNEd0FCQVkwQUVBTHdBRk1CbHdBU0E4a0FOQVBKQURRQ2pnQUFBbmtBUEFIcUFEUUNHQUFPQWpNQURRSGtBREVCMndBakFja0FBZ0hFQUFrQ2tBQU9BdUlBQndKc0FBQUNMUUJmQWp3QU5BRWkvN01CRVAvR0F3RUFQQUpzQURRQ2VRQUtBYWtBQndKSEFBQUNEd0FCQWo0QVVBSnNBRFFDYkFCVEFtd0FVd0hxQUNBQ0dRQXdBbXdBTkFKc0FEUUNQQUF4QWp3QU1RSDRBQ29DWVFBMEFSRC94Z0pzQURNQ2JBQTBBa1VBTkFJT0FBQUNEdi8rQW5ZQVVBSjJBRk1DZGdCVEFSQUFCd0ZzQUZFQlRBQWZBWXNBQkFGdS8vWUJEd0JUQXE4QVV3TzFBRThEdFFCUEE3VUFVd0oyLytNQ2RnQlRBcElBVXdKaEFEUURZZ0EwQXh3QU5RTHZBRE1CcVFBUkFha0FFUUdwQUJFQnFRQlRBYWtBVXdGcEFGQUJhUUFUQWowQVZRSTlBRlVCNUFBeEFSRC80d0VRLytNQkVQL3RBUkQvbUFGL0FCa0Jmd0FTQW5ZQUJ3SnFBQjBDZGdCUEFnNEFBQU1uQUFzQ0R3QUFBZllBQUFIYkFDTUNLQUFqQWdvQUVnSUsvL0lCdWdBSkFib0FHZ0c2QUFrQjRnQTBBeEVBUEFKUUFGTUNZUUFyQWtVQU5BS0VBRk1CRVAraUFpOEFCZ0hBQUZNQ2JBQTBBYm9BQ1FHNkFCa0R6Z0EwQSs0QU5BUWFBRFFEQ0FBU0FpQUFFZ052QUJJRGZBQVFBcWNBVXdKeEFGTUNCUUFBQWxNQVV3SjgvK3dDZlAvc0Faa0FOZ0daQURZQXNmL2FBUlFBTmdFVUFBc0JGQUFMQVhRQU53SU1BQWNCVndBQkFMc0FEQUdBQUF3QXV3QU1BTHNBREFDdEFCNEFyUUFlQVNrQUNBRXBBQk1CSFFBWUFSMEFHQUVkQUJFQkhRQUtBS1lBS0FFeEFDZ0JNUUFvQUtZQUtBR0RBQ2dCTVFBb0FURUFLQUU1QUVRQk9RQkVBTUVBS0FEQkFDZ0JEZ0FlQVE0QUhnRU9BQjRCR2dBZUFSd0FLQUZXQUFBQXNRQTJBVHNBSUFGaEFBa0JId0FSQWFJQVRnR2lBRTRCb2dCT0FhSUFUZ0dpQUU0Qm9nQk9BYUlBVGdHN0FDZ0I3d0FvQVlBQURBR2VBQ2dCbmdBb0FVc0FLQUZMQUNnQk1RQW9BYzRBS0FIT0FDZ0J5Z0FvQVJFQVJBRDJBQ2dBOWdBb0FQWUFLQUQyQUNnQ0RnQW9BZzRBS0FJV0FDZ0FBUDZGQU9ZQUZBRG1BQlFDUVFEeUFlb0FJQUhxQURRQjZnQWdBUklBSHdKWEFEQUMyZi9vQWswQUFBTHZBRE1DaWYvNkF3VUFQQUpoQURRQ2JBQThBZWdBTkFJY0FGOEIzUUJVQWZILyt3SXJBQzhDVWYvekFnVC90UUtKLy9vQ1lRQTBBZW9BTkFFUS84WURFZ0E4QWZnQU5BSHpBQjhDWkFCZkFtd0FVd0o1QUR3RGxnQmZBdklBVXdKaEFBTUNlUUFnQW5rQVBBSjVBQ0FERVFBOEFtd0FOQU90QUFnREp3QUxBaGtBQ2dMVkFBZ0RjQUF4QWxBQUNnSUpBRHNDV0FCV0FsZ0FJd0hSQUZZQi9RQWlBUndBVWdGa0FESUNDUUJXQWNFQUZRTGtBRllDZUFCV0FuOEFPd0lKQUNNQ2JRQVNBbTBBSHdKdEFBZ0R1d0F4QWpBQU9RSjJBRGNDZGdBM0Fmd0FWZ0lYQUJVQ0Z3QVZBZEVBRlFKbEFFOENiUUFtQXg4QUZBSnRBQ2dCNXdBQUF0OEFDZ0hiQUNNQjZnQWhBYzRBTFFIOEFCQUJ3Z0JXQWZzQUNnSmFBRllCL0FCV0Fwd0FOUUpNQUE0QnFRQUFBa3YvL3dHckFENEJxd0FOQWQwQVBnRnFBRDRCYWdBbkFkZ0FKd0htQUQ0QTVnQVpBTHovemdHYkFENEJYUUErQWxVQVBnSDRBRDRCK0FBK0FmOEFKd0hHQUNVQmpRQStBWnNBUGdGdEFBZ0I0QUE2QW1RQUJRRjFBQjBCZFFBMEFaTUFJZ0k4QUNBQmt3QTJBWk1BSWdGMEFDSUJkQUFnQVVnQUd3RkdBQllCa3dBaUFMa0FOUUZzQURZQ2FRQTJBWmtBTmdHTUFDSUJQZ0FWQVprQUpBR1pBQ1FCa3dBMkFQa0FEQUdaQURNQmxBQVpBbWtBTXdGV0FBQUJTZ0FLQWFBQU5nRmFBQU1CakFBaEFlUUFJZ0Z1Ly9ZQXNRQXhBUlFBTmdHWkFETUJWZ0FBQWFBQU5nRmFBQU1CakFBdkFlUUFJZ0Z1Ly9ZRHJnQlBBbXovMXdKc0FEUUJaZi93QTdYLzdBSjUvK3dDYlAvVkFhbi8xUUZwLzlRQjVQLzdBWC8vNUFIYkFCa0NiQUJUQWFNQU5nSkVBQ0FEOUFBU0FVd0FId0ZzQUFRQ2JBQUhBbVlBQndKcUFBY0NiQUJUQW13QU5BRmxBQkFESFFBMEFpOEFVd0VRQUN3RHRRQlRBbllBVXdKc0FGTUJxUUFzQWVRQU1RSEIvK01DRGdBQUFoOEFEZ0hiQUNNQ1BnQXRBbXdBTkFKc0FEUUNQQUEwQWY4QUtnSDlBQ0lDcEFBeEFSQUFUQUhxQUNBQkVQL2pBbllBVGdIOUFDSUJrd0EyQVQ0QUlnRmRBQjhCakFBaUFVc0FGZ0RvQUFvQXNmL2FBWk1BSWdHWkFEUUFzUUFGQU8wQU5RRFlBQlFBMkFBVUFMSC93d0N3QURZQXNRQWRBU01BTmdKcEFEWUNhUUF6QVpuLzdRR1pBRFlCckFBMkFZd0FJZ0hvQUNFQk93QWdBTEgvN1FENUFBd0JtUUFGQVpFQUV3R09BRE1CbVFBekFWWUFBQUUxQUJjQk5RQVhBV1lBRndGVUFBd0Jod0FpQXBBQVh3SnNBRk1Da0FCZkFtd0FVd0tRQUY4Q2JBQlRBbmtBUEFIcUFEUUMzUUJmQW13QU5BTGRBRjhDYkFBMEF0MEFYd0pzQURRQzNRQmZBbXdBTkFMZEFGOENiQUEwQWkwQVh3SThBRFFDTFFCZkFqd0FOQUl0QUY4Q1BBQTBBaTBBWHdJOEFEUUNMUUJmQWp3QU5BSVFBRjhCWlFBUUF0Y0FQQUpzQURRQzdBQmZBbllBVUFMc0FGOENkZ0JUQXV3QVh3SjIvL1FDN0FBdEFuWUFId0xzQUY4Q2RnQlRBV0wvOUFFUS84c0JZZ0FlQVJELzlRSjRBRjhDTHdCRkFuZ0FYd0l2QUZNQ2VBQmZBaThBVXdJWUFGOEJFQUJLQWhqLytRRVEvKzRDR0FCZkFSRC83UUlZQUY4QkVQL1VBNVlBWHdPMUFGTURsZ0JmQTdVQVV3TUlBRjhDZGdCVEF3Z0FYd0oyQUZNRENBQmZBbllBVXdNSUFGOENkZ0JUQXhFQVBBSmhBRFFERVFBOEFtRUFOQU1SQUR3Q1lRQTBBeEVBUEFKaEFEUUNaQUJmQW13QVV3SmtBRjhDYkFCVEFua0FYd0dwQUZNQ2VRQmZBYWtBU1FKNUFGOEJxUUJKQW5rQVh3R3BBQTRDSmdBeUFlUUFNUUltQURJQjVBQXhBaVlBTWdIa0FERUNKZ0F5QWVRQU1RSW1BRElCNUFBeEFqTUFEUUYvQUJJQ013QU5BWDhBRWdJekFBMEJmd0FTQWpNQURRRi9BQklDNGdCWkFuWUFUZ0xpQUZrQ2RnQk9BdUlBV1FKMkFFNEM0Z0JaQW5ZQVRnTGlBRmtDZGdCT0FtY0FBQUlPQUFBQ1p3QUFBZzRBQUFPdEFBZ0RKd0FMQTYwQUNBTW5BQXNDWWdBREFoOEFEZ0ppQUFNQ0h3QU9Ba2NBQUFJUEFBRUNQZ0FpQWRzQUl3SStBQ0lCMndBakFqNEFJZ0hiQUNNQ2RnQlRBWDhBRWdNbkFBc0NEd0FCQWo0QUxRRlhBRk1DY0FBMEFuQUFOQUp3QURRQ2NBQTBBbkFBTkFKd0FEUUNjQUEwQW5BQU5BS09BQUFDamdBQUF3WUFBZ01LQUFBQzdnQUNBdkFBQUFMci8rb0M3di9xQWZnQUtnSDRBQ29CK0FBcUFmZ0FLZ0g0QUNvQitBQXFBb1VBQUFLRkFBQURIZ0FBQXhrQUFBTVBBQUFERHYvOUFuWUFVd0oyQUZNQ2RnQlRBbllBVXdKMkFGTUNkZ0JUQW5ZQVV3SjJBRk1EUHdBQUEwVUFBQVBVQUFBRDBnQUFBOXdBQ1FQUi8vMEQyLy9uQTlmLzV3RnNBRkVCYkFCUEFXd0FBd0ZzQUFNQmJBQVVBV3dBRWdGcy85NEJiUC9UQWVBQUFBSGFBQUFDZUFBQUFtb0FBQUtMQUFrQ2hRQUFBbnYvNXdKNy8rY0NZUUEwQW1FQU5BSmhBRFFDWVFBMEFtRUFOQUpoQURRRFF3QUFBMWtBQUFQMUFBQUQ4d0FBQThNQUF3UERBQUFDYmdCTUFtNEFUQUp1QUV3Q2JnQk1BbTRBVEFKdUFFd0NiZ0JNQW00QVRBTFdBQUFEYkFBQUE0TUFBQU9iLy9zREpnQTNBeVlBTndNbUFEY0RKZ0EzQXlZQU53TW1BRGNESmdBM0F5WUFOd05CQUFBRFVRQUFBL0VBQUFQdUFBQUR4Z0FBQTh3QUFBTzYvK2NEMS8vN0FuQUFOQUp3QURRQitBQXFBZmdBS2dKMkFGTUNkZ0JUQVd3QUh3RnNBRkVDWVFBMEFtRUFOQUp1QUV3Q2JnQk1BeVlBTndNbUFEY0NjQUEwQW5BQU5BSndBRFFDY0FBMEFuQUFOQUp3QURRQ2NBQTBBbkFBTkFQekFBUUQ3Z0FBQkdRQUFBUnNBQUFFVkFBQUJGa0FBQVJZLytvRVcvL3FBbllBVXdKMkFGTUNkZ0JUQW5ZQVV3SjJBRk1DZGdCVEFuWUFVd0oyQUZNRXRBQUFCSzRBQUFWTkFBQUZUUUFBQlVrQUNRVkIvLzBGU1AvbkJVRC81d01tQURjREpnQTNBeVlBTndNbUFEY0RKZ0EzQXlZQU53TW1BRGNESmdBM0JMMEFBQVRLQUFBRlh3QUFCVjhBQUFVNy8vOEZRd0FBQlNqLzV3VXYvK2NDY0FBMEFuQUFOQUp3QURRQ2NBQTBBbkFBTkFKd0FEUUNjQUEwQW80QUFBS09BQUFDa0FBQ0FvNEFBQVA2QUFBQkNBQkhBa0VBOGdFSUFFY0NWUUJ0QWtRQWRBSjJBRk1DZGdCVEFuWUFVd0oyQUZNQ2RnQlRBbnovNXdKNS8vUURRZi94QTBULzlRUllBRjhDUVFDVkFrRUFyQUpSQUhZQmJQL3BBV3ovOFFGcy85d0JiUC9aQVd6L3pnRnMvOTRCWWdBUEFXSUFGd0hRLytjQjFmL25Ba0VBamdKQkFLTUNVUUIyQW00QVRBSnVBRXdDYmdCTUFtNEFUQUpoQUVrQ1lRQkpBbTRBVEFKdUFFd0NSd0FBQWtjQUFBTGQvK2NDNnYvNUFyNEFBQUpCQUhJQ1FRQnlBa0VBd1FNbUFEY0RKZ0EzQXlZQU53TW1BRGNESmdBM0EyVC84UU0xLytrRFh2L29Bem4vOFFSN0FDTUNRUURyQVFnQVRRQUEvK3NBQVArVEFBRC83QUFBL3lzQ1BBQW9BaWNBZGdHQUFBd0FBUC9zQUFEL0xBQUEvNHdBQVArTUFBRC9qQURJQUFBQ2VBQXBBZlQvL1FFUkFFUUFBUCtNQUFEL2pBQUEvNHNBQVArTEFBRC9pd0FBLzR3Qlp3QVRBV2NBRlFGbkFCSUJkUUFkQVhRQUlnR01BQ0lCWVFBSkFYUUFJQUk4QUNBQ1JRQXZBandBTWdPMUFGTUNQQUFLQTFrQVVRS3lBQW9DUEFBTkFqd0FFd1BXQUJjQ1J3QUlBandBQ2dMYUFEd0NiQUFBQWl3QUN3SjVBRHdDUEFCTEFBRC9GQU5BQURFQzdBQUZBY1FBSGdOUEFCY0RtQUFXQWVvQUlBSVlBQWNCRUFBSEFoai85UUprQUFvQ2VRQmZBajRBTFFGL0FCSUREQUJmQW9JQVV3S1lBRjhDUXdCVEFqNEFJZ0hiQUNNREFRQThBaDRBQUFQSUFBZ0RPUUFMQWc0QUNnSWtBRjhCMHdCVEF1a0FOQUZTQUJBQlBnQW9BWElBS0FGNEFDZ0JXZ0FvQWVZQVJnSG1BRVlCRFFCR0FRMEFSd0VOQUVjQnRnQW9BYllBS0FHN0FDZ0JFUUJCQWNjQU1nRVNBRXNCRFFCTUFBRC9iUUFBLzJFQUFQNTdBQUQvK3dBQS9ud0FBQUFBQW5BQU5BSndBRFFDY0FBMEFuQUFOQUp3QURRQ2NBQTBBbkFBTkFKd0FEUUJiUC8wQVd6LzlBRnMvL1FCYlAvMEFXei84QUZzLys0QmJQL3ZBV3ovN3dKdUFFd0NiZ0JNQW00QVRBSnVBRXdDYmdCTUFtNEFUQUp1QUV3Q2JnQk1BV3ovOGdGcy8vSUJiUC9wQVd6LzZnSnVBRXdDYmdCTUFtNEFUQUp1QUV3QzNRQmdBd2dBWHdMVUFGa0JrQUF2QVpBQUx3R1FBQzhCa0FBdkFBRC9kQUFBLzFNQUFQOW5BQUQvVHdBQS8xY0FBUDluQUFEL1p3QUEvMU1BQVA5bUFBRC9Wd0FBLzJZQUFQOW1BQUFBS1FBQUFDa0FBQUF4QUFBQU1RR1VBQ3NCbEFBckFaUUFLd0dQQUNrRHh3QUNBejRBQlFNNEFGOERQd0JUQTRZQURnTjNBQXNDZWdCZkFpd0FVd1FRQUFNRFF3QUZCRlVBWHdOM0FGTUMvd0JmQXBvQVV3TDZBRjhDbkFCVEFrRUFWZ0k4QUJBREdnQmZBNDBBWHdMVkFGa0NqZ0FCQXVFQVBBSnRBQW9CZkFCR0FjUUFNUUxwQUY4RFVnQU5BbHNBTGdJd0FDQUNkZ0FnQktzQUFBU09BQUFFV2dBQUE0NEFBQU9VQUFBRGpnQUFBbmtBSUFKNEFCQUNlQUJmQW5nQUVBS0dBRjhDR0FBVkF4RUFBQU91QUR3Rk9nQThBbVFBRWdMQkFBVURhZ0FPQXhFQVBBTzlBRHdDVVFBc0FwZ0FPZ0pyQUFBRHB3QUxBbUlBQmdKaUFBWUNmZ0FwQWlZQUxnSWtBQVVDWmdBeUF3OEFDQUg0QUZ3Q1dnQTVBbG9BT1FJWUFCd0RJQUJiQWZnQVhBSnhBRGNDNlFCZkF4c0FYd0p0Ly80QzB3QUNBblVBQXdNR0FBTUNlQUFEQWlRQUF3TmRBQXNDWGdBcUF1a0FQQUpvLy9rQ2VBQUFBak1BRGdFNS82MENrLy8wQW9rQVhRUVVBRHdDamdBQUFpMEFYd0ZpQUNZQzRnQlpBaGdBWHdNSUFGOEIwUUE2QVJBQVV3RVEvOFlDWUFBekFxMEFNd0g5QUNJQzJRQWlBandBTVFNZ0FERUJFQUJUQVJBQUlBRVEvOFlDSFFBRUFWY0FBQUZYQUFzQ1lRQXpBTEgvMmdHckFCUUJFUC9HQVJEL29nQ3gvOW9CRVAvR0FMRUFOZ0VRQUZNQXNRQUVBTEgvd3dFUS84c0JFQUJPQVVZQVJnR1NBQ3NDZFFCVEEwd0FFZ0kwQUN3Q0dBQVNBbUFBRWdHbkFGRUJyQUFvQTVRQUxRT3pBQzBEcXdBdEF6RUFMUU14QUMwRE1RQXRBZW9BSUFJdkFBY0NMd0JUQWk4QUJ3RjVBRk1CRUFBUUFvY0FBQUt2QURNRDhBQTBBbXdBQWdMZEFBVURkZ0FGQW13QU5BTDRBRFFCN2dBZkFsZ0FKd0lLQUFBRElBQU1BbXdBQ3dKc0FBc0NIQUJUQWY0QUR3SUwvLzBDVkFBekF5WUFOQUhNQUZNRWFnQlRBelFBVXdJaEFGTURBd0JWQXU4QUVnSVBBRDRDWFFBekFhc0FVd0pFQUNvQkR3QlRBcklBVXdHckFGTUI4UUFlQVpMLytBS0VBRk1CNmdBQUFtd0FBd0l5QUFNQ2RRQURBYXYvL0FIa0FBTUNnQUJUQTVnQU9nTUhBRlFDVWdBekFoVC8rUUkrQUMwQ1BBQTBBUkFBSndKMkFGTUJFQUFnQW5ZQVRnTEpBQkFEMlFBUUE5a0FFQUoxQUJBQ2RRQVFBc0VBVXdOakFERUNJd0FBQWlNQUFBSWpBQUFDSXdBQUFpTUFBQUlqQUFBQ0l3QUFBaU1BQUFJakFBQUNJd0FBQWlNQUFBTGcvLzRDNFAvK0Foa0FTUUlLQUM0Q0NnQXVBZ29BTGdJS0FDNENDZ0F1QWdvQUxnSlJBRWtDVVFBTUFsRUFTUUpSQUF3QnhRQkpBY1VBU1FIRkFFa0J4UUErQWNVQVB3SEZBRWtCeFFCSkFjVUFQQUhGQUVrQnhRQkpBYThBU1FKV0FDOENWZ0F2QWxZQUx3SldBQzhDVmdBdkFtUUFTUUpnQUFjQ1pBQkpBVFFBSWdFMEFDSUJOUC81QVRULzV3RTBBQVFCTkFBaUFUVC80d0l1QUNJQk5BQUJBVFFBSWdFMC85MEErdis4QVByL3ZBSU1BRWtDREFCSkFjTUFTUUhEQUVrQnd3QkpBY01BU1FIREFFa0J3di91QXZRQVNRS0RBRWtDZ3dCSkFvTUFTUUtEQUVrQ2d3QkpBb01BU1FLREFEQUNnd0F3QW9NQU1BS0RBREFDZ3dBd0FvTUFNQUtEQURBQ2d3QXdBb01BTUFLREFEQUNnd0F3QXdZQU1BSDNBRWtCK1FCSkFvTUFNQUlOQUVrQ0RRQkpBZzBBU1FJTkFFa0J5d0FvQWNzQUtBSExBQ2dCeXdBb0Fjc0FLQUhMQUNnQ1lBQkRBYzBBRFFITkFBMEJ6UUFOQWMwQURRSE5BQTBDWUFCRUFtQUFSQUpnQUVRQ1lBQkVBbUFBUkFKZ0FFUUNZQUJFQW1BQVJBSmdBRVFDWUFCRUFtQUFSQUlNQUFBREdRQU9BeGtBRGdNWkFBNERHUUFPQXhrQURnSUtBQUVCN1FBQUFlMEFBQUh0QUFBQjdRQUFBZTBBQUFIbEFCc0I1UUFiQWVVQUd3SGxBQnNBc1FBeEFVY0FRUU11QURJQ0VBQWZBbVFBTVFPV0FGOEJZZ0FtQkhJQUN3TGkvK29GbHdBR0Fzb0FCZ0xoQUFNQ1FnQWZBa0lBSHdJa0FDc0JtQUFvQXVRQVdRTVBBRHdFRkFBOEFvLy80Z091QUFJRFhnQmZCQndBUEFQc0FGOENvZ0FBQXZVQUVBUHNBRjhDcndBTUF2RUFGUU9WQUFZRHJBQURCRnNBWHdNUkFEd0REd0E4QlRJQVBBTEpBQVlDSkFBeUJMNEFLZ1EvQUVVRGZnQUdBdllBRGdJc0FBNEMzQUJmQWl3QURnTm1BQTRDdndCZkJCZ0FYd1U2QUR3REVnQThBbm4vMXdTNEFCSUNhUUFSQW1rQUJRSTNBRE1DWFFBU0FkSUFOQUpwQURRQmxmKzRBNWNBVXdLQy85SUNnZ0FHQW1jQUx3SGRBQ0VCM1FBaEFlUUFLd0ZzQUZFQ2VRQlBBZGtBSEFPUUFEb0NyZ0FDQTNzQUNRTTdBRk1EVUFBMEEya0FVd0l6QUFBQ2FBQUlBMmdBVWdJd0FBSUNpUUFSQXZvQUVnTUZBQVVEc1FCVEFtRUFOQUtMQURNRDlRQTBBbDBBRWdIa0FDd0VFZ0FpQThVQVJBTC9BQkVDOGdBV0Fmc0FGZ0tDQUZNQit3QVdBd3dBRmdKMUFGTURsd0JUQS9BQU5BSmhBRFFDWUFBekEyb0FMQUpDQUtZQnh3QUlBWVlBTmdISEFGOENqZ0FiQXhBQVlBSjFBRjhCSXYrekFaY0FVd0lmQUJVQ21nQlRBbjBBVWdLZ0FEMEMzZ0FCQWk4QUlBTlJBQmdDU2dBTEFqUUFFd0lZQUJzRFJnQUNCQ0wvL0FMbi8vd0RRUUFMQXdrQVlRTm8vL3dDRUFBZkFvNEFBQUo0QURJRENRQmhBd29BWVFLUEFHRUREUUE5QXNvQVlRSjJBQ1lDMmdBa0FpZ0FZUUplQURNQ2VBQmZBbHNBSEFNNC8vd0VnLy84QXVjQUNRSVIvKzRDN0FBdkF0OEFMd0xzQUVvQ1F3QUpBZk1BQ1FGWEFDQUJWLzl2QWg4QUJRTUpBREVDZGdBZkFuTUFIZ0hPQUJnQjRBQVlBa1QvcXdIc0FEUUNkZ0JUQTA0QU5BRmNBQkFDV3dBcUFtRUFLd0piQURzQ2J3QURBNGdBTFFHZkFEb0NQUUFEQXhZQUVRRmVBQWdDYVFBekFiTC8vd0dMQUFBQmx3QWRBNndBVXdKMUFGTUNkUUJUQWNzQUxBSExBQ3dDVHdBeEE3c0FNd1BHQUQwRHhnQTlBN3dBTXdPOEFETUNlUUJQQWpZQVZnRk5BRk1DWlFCVEFlNEFBQUtwQUFBQnd3QVdBb1lBRHdGbEFCTUNkUUJQQW5VQUJBT3NBRThEckFCVEFxd0FFd0l6Ly9FQ1lmL3hBam4vNlFLRUFBNENJUCtGQW9UL2hRSWcvM29DZFFCUEFtd0FOQUdaQURZQmJBQTJBTEVBTmdKcEFEWUJtUUEyQVpNQU5nRTdBQ0FBK1FBTUFZUUFJUUhtQUFBQ2JRQWhBWmtBTmdFYS8vOEJBUUFEQWIwQURBSkJBTnNDVGdBMkFjOEFGUUlzQUNVQ1BBQXJBajhBRkFJOEFEc0NSUUEyQWdZQUNRSlBBRGNDUlFBeEFsSUFOQUdsQUJFQ0tRQXJBaDhBSFFJL0FCY0NOQUE1QWtFQU5BSVhBQmNDUEFBdEFrRUFLd0k4QUMwQ0xBQWhBaXdBUGdJc0FDNENMQUFrQWl3QUNBSXNBREVDTEFBcEFpd0FJUUlzQUNVQ0xBQWdBV2NBRXdGbkFDY0Jad0FaQVdjQUZRRm5BQWtCWndBaEFXY0FGUUZuQUJ3Qlp3QVlBV2NBRWdGbkFCTUJad0FuQVdjQUdRRm5BQlVCWndBSkFXY0FJUUZuQUJVQlp3QWNBV2NBR0FGbkFCSUJ2d0FuQTNRQUV3TTlBQ2NEY2dBWkEyVUFGUU5vQUFrREpRQW5BMUFBSVFOUUFDY0ROZ0FuQkM0QUp3Rm5BQk1CWndBbkFXY0FHUUZuQUJVQlp3QUpBV2NBSVFGbkFCVUJad0FjQVdjQUdBRm5BQklFWGdBTUFvUUFOZ0tFQUZnQlJnQk1BVVlBR0FHUEFCUUJoUUFTQW1FQUZnSmNBQllCdkFBOEFjQUFrUU10QUNZQ3J3QktBanNBTkFIMEFEQUM3Z0NFQkJJQUR3TENBRVFEUkFBMUEwb0FOZ0k0QUIwRDZBQUFBcG9BTmdORkFEVUJFUUJFQVVJQUpRRTFBR1FCeGdBZEFsd0FGZ0gwQUhvQjlBQTlBZlFBUFFIMEFJRUI5QUF3QWljQXBnSWxBQ1lCOUFDMkEwUUFOZ0x1QUtZRDZBQUFBM01BQ1FMQUFBa0JFUUFtQVJFQVJBSDBBQ01COUFBakFmUUFQQU5KQURJRDZBQUFBbzhBV0FIRkFDQUErd0F3QWZRQWVBSDBBSGdCOUFDSEFmUUFQUUgwQUQwQjlBQ0JBZlFBTUFJbkFMSUNQQUJtQTBvQU5nUG9BRU1DRndBMkFqc0FNQUk4QURBQ1BBQXdBa3NBSmdINEFFQUJFUUJFQVJFQVNBSGpBQzRCRVFCRkFpVUFKZ0lpQUVRQThBQTJBMFFBTmdKaEFCWUJjZ0JBQUFEL29RRUpBRUFCVXdCRUFzSUFOZ0QrQURVQ0l3QkRBdTRBZWdFUkFFUUE1d0FtQU9jQUhRRk1BRkFCVEFBWkFVd0FVQUZNQUJrQ0Z3QW9BaGNBR2dQb0FOTUQ2QURVQU9jQUpnRG5BQjBCUWdBSkFVSUFKUUZDQUNVTEdBQW9CNEFBS0FFK0FDVUI5UC85QVNELy9RTlpBQ2tDcC8vOUFjUUFQUUZFQUJnQlJRQWJBUW9BT1FFS0FCY0EyZ0F4QWEwQU1RRGFBRElCRWdBZkFSSUFIUUVGQUI4QkJRQVhBWDBBQ2dGOUFCWUI3UUFWQWtJQWNRRzNBQUFDV0FBQUFsZ0FBQUpZQUFBQ1dBQUFBbGdBQUFKWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFsZ0FBQUtEQUJZRFBRQTVBa3NBQ2dOQ0FGVUMxd0FWQWl3QUVnTVdBQTBDY1FBM0F2NEFHZ0plQUNVQzRRQUJBaFVBSVFHQ0FBVUIwd0FDQVZnQUl3RllBQ01CZndBSEFWZ0FJd0ZZQUNNR0t3QXBBVmdBSXdGWUFDTUNHQUFjQW13QUdnTFRBRWdDR0FBY0FrY0FBQU9vQUNrQzVRQWRBc1FBSFFOb0FDa0Q2QUF5QWtVQUlBVjFBRjhEZWdBeUFSQUFUQUhHQUE4RGJBQUVBaWtBR3dLUEFDd0NlZ0JmQXJVQVlnSlZBRjhDZ2dBZkF5QUFNd1FILy9JREhnQVJBbXNBQUFORUFDd0ErUCtEQWg0QVRnSWVBRTRDSGdCT0FoNEFUZ0YvQUJRQ0hnQU9BaDRBRndJZUFBc0NIZ0FhQWg0QUdnRi9BQ0lDSGdBbUFoNEFJZ0llQUNnQ0hnQW1BaDRBSmdGL0FCSUNIZ0FTQWg0QUZ3SWVBQklDSGdBVEFoNEFFZ0YvQUJZQ0hnQWFBaDRBSXdJZUFCb0NIZ0FXQWg0QUp3Ri9BQlFDSGdBWEFoNEFEZ0llQUJvQ0hnQUxBaDRBR2dJZUFFNENIZ0JPQWg0QVRnSWVBRTRCZndBU0FoNEFGd0llQUJJQ0hnQVRBaDRBRWdJZUFCSUJmd0FpQWg0QUlnSWVBQ1lDSGdBbUFoNEFLQUllQUNZQmZ3QVdBaDRBSXdJZUFCb0NIZ0FXQWg0QUdnSWVBQ2NCZndBbEFoNEFKd0llQUM0Q0hnQWxBaDRBSlFJZUFDVUJmd0FhQWg0QUdnSWVBQm9DSGdBYUFoNEFHZ0llQUJvQ0hnQk9BaDRBVGdJZUFFNENIZ0JPQVg4QUh3SWVBQmNDSGdBZkFoNEFIQUllQUI4Q0hnQWZBWDhBSlFJZUFDY0NIZ0FsQWg0QUpRSWVBQ1VDSGdBaUFYOEFJZ0llQUNNQ0hnQWlBaDRBSWdJZUFDSUNIZ0FpQVg4QUp3SWVBQ1VDSGdBbkFoNEFKUUllQUNVQ0hnQWxBWDhBSEFJZUFEOENIZ0FjQWg0QVB3SWVBQndDSGdBY0FoNEFUZ0llQUU0Q0hnQk9BaDRBVGdGL0FDVUNIZ0JIQWg0QVJ3SWVBRWNDSGdCSEFoNEFSd0YvQURNQ0hnQWxBaDRBSlFJZUFDVUNIZ0FsQWg0QUpRRi9BQnNDSGdBYkFoNEFHd0llQUJzQ0hnQWJBaDRBR3dGL0FDVUNIZ0FsQWg0QUpRSWVBQ0lDSGdBbEFoNEFKUUYvQUMwQ0hnQXFBaDRBS2dJZUFDb0NIZ0FxQWg0QUt3SWVBRTRDSGdCT0FoNEFUZ0llQUU0Q1RRQ0lBbTBBSmdGdEFCUUFBUDlyQUFEL3hBQUEvZ2dBQVA2akFBRC9ld0FBLzB3QUFQOUxBQUQvV3dBQS81RUFBUDRPQUFEL1p3QUEvekFBQVAvVkFBRC9oQUFBL2VvQUFQOWVBQUQvV1FBQS82d0FBUCt1QUFEL3JBQUEvN0FBQVArRUFBRC9uQUFBLzZnQUFQK29BQUQvVGdBQS81MEFBUC9KQUFEL2x3QUEvNWNBQVArWEFBRC9rUUFBLzBJQUFBQUFBQUQrbEFBQS8yc0FBUCtSQUFEL213QUEvNmtBQVAvVkFBRC9UZ0FBLzBNQUFQOUxBQUQvU2dBQS8xa0FBUDlaQUFEL1F3QUEvMmNBQVA4ZEFBRC9NUUFBLzBjQUFQOHdBQUQrbFFBQS8yWUFBUDgzQUFEL3lRQUEvMDRBQVA5REFBRC9Rd0FBLzVvQUFQL0FBQUQvTUFBQS8xQUFBUC9RQUFEL0pnQUEvekFBQVArRUFBRC9vd0FBLzBnQUFQOUlBQUQvVndBQS8xRUFBUCtsQUFEK213QUEvNndBQVAvUUFBRC9YZ0FBLzZFQUFQK3NBQUQvckFBQS8wZ0FBUC9RQUFBQWVnQUEvNVlBQVA5QUFBRC9vUUFBL253QUFQNThBQUQrMUFBQS90UUFBUDU4QUFEK2V3QUEvcEVBQVA4bEFBRC9ad0FBLzZ3QUFQOUlBQUQ5dndBQS9zNEFBQUFFQUFEKzBRQUEvemtBQVA5TEFBRCtYQUFBL3lVQUFQOW5BQUQvRGdBQS8yd0FBUDNYQUFEL2JBQUEvcEFBQVAvRUFBRC9SUUFBL3BzQUFQN3BBQUQvR0FBQS81RUFBUDlxQUFEL0l3QUEvZzRBQVAvRUFBRC9hd0FBLzVZQUFQK2ZBQUQvTVFBQS9ya0FBUDh4QUFEL2xRQUEvNlFBQVArZkFBRC9ud0FBLzhFQUFQK3hBQUQvZXdBQS82UUFBUC9BQUFEL2J3QUEvMWtBQVArZEFBRC9tQUFBLzU4QUFQK1hBQUQrendBQS9xNEFBUDlkQUFEL21nQUEvNmtBQVAvTEFBRC9pZ0FBLzFrQUFQK25BQUQvc2dBQS80WUFBUCtCQUFEL25nQUEvNWdBQVAraEFBRC9wQUFBLzdNQUFQK2pBQUQvbGdBQS81MEFBUCtjQUFEL1lBQUEvMTRBQVArWUFBRC9Od0FBLzUwQUFQK2dBQUQvb0FBQS82d0FBUDk4QUFEL2NBQUEvMnNBQVArR0FBRC9mZ0FBLzI0QUFBQUFBQUQrZGdBQS8vc0FBUDU4QUFBQUFBQUFBQWNBQVA3VkFBRCt6Z0FBL3prQUFQK1JBQUQrbmdBQS9ta0NVd0NUQVJBQVR3QUFBSEFBQUFEWkFrY0FuZ0pUQUhZQ1V3QjJBbElBZ1FJNUFLZ0FBQUJyQWtZQWhBRElBQTBCOVAvOUFBRC9Rd0FBLzdvQUFQNDlBQUQvMVFBQS9qSUFBUDQzQUFEK3BnQUEvcVlBQVA5RkFBRCs4d0FBLzdBQUFQK1pBQUQveHdBQS81TUFBUDl5QUFEL2V3QUEvNmdBQVA5YUFBRC9VQUFBLzRVQUFQOHRBQUQvaEFBQS8yTUFBUDlqQUFEOTFnQUEva3dBQVAyU0FBRC9uZ0FBLzhvQUFQK0tBQUQvbXdBQS82OEFBUCtkQUFEL1dBQUEvMGtBQVA5bkFBRC9zd0FBLzdNQUFQK1dBQUQvb0FBQS81Z0FBUDdWQUFEL2xnQUEvNkVBQVAvdkFBRC9tUUFBLzdFQUFQL3lBQUQvNGdBQS8xb0FBUCtoQUFEL21BQUEvOFVBQVAvUEFBRC9xUUFBLzdNQUFQKzhBQUQvbndBQS81UUFBUCtXQUFEL3J3R1FBQUFCOUFDeEF3RUFYd0lrQURJQ1FnQWZBbkFBTEFFcEFDc0RPUUJTQTBRQVVnTmNBQ2tENGdCT0Ftd0FBQUk4QUY4RDZBQW9BVnNBS0FGYUFDZ0JXZ0FvQVZvQUtBRmFBQ2dCV2dBb0FWb0FLQUZhQUNnQldnQW9BYUlBVGdCT0FFNEFUZ0JPQUU0QVRnQk9BRTRBVGdCT0FFNEFUZ0JPQUU0QUFBQUFBQUFBVkFBQUFGUUFBQUJVQUFBQVZBQUFBS3dBQUFEOEFBQUJwQUFBQW53QUFBT2NBQUFFdkFBQUJQUUFBQVU4QUFBRmhBQUFCZVFBQUFZMEFBQUdmQUFBQnJRQUFBYjBBQUFITEFBQUI2QUFBQWZ3QUFBSWRBQUFDVEFBQUFtc0FBQUtWQUFBQ3hnQUFBdGtBQUFNUEFBQURRQUFBQTFzQUFBTjJBQUFEZ1FBQUE1Y0FBQU9pQUFBRDBBQUFCQ1VBQUFSRUFBQUViQUFBQkpBQUFBU29BQUFFdmdBQUJORUFBQVQ1QUFBRkRRQUFCU0VBQUFVNkFBQUZVUUFBQldBQUFBVitBQUFGbHdBQUJiVUFBQVhUQUFBRitBQUFCaHNBQUFaR0FBQUdWUUFBQm0wQUFBYUVBQUFHcXdBQUJzRUFBQWJUQUFBRzZRQUFCdmtBQUFjSEFBQUhGd0FBQnlzQUFBYzZBQUFIVHdBQUI0b0FBQWZFQUFBSDVnQUFDQ0VBQUFoS0FBQUljd0FBQ0x3QUFBamFBQUFJOUFBQUNSZ0FBQWswQUFBSlB3QUFDWFlBQUFtZUFBQUp1d0FBQ2ZZQUFBb3dBQUFLV2dBQUNvUUFBQXFuQUFBS3pBQUFDdU1BQUFzTkFBQUxJZ0FBQzBNQUFBdFpBQUFMZWdBQUM0VUFBQXVuQUFBTHlnQUFDOG9BQUF2Z0FBQU1GQUFBREQ0QUFBeHlBQUFNa0FBQURLRUFBQXptQUFBTkFnQUFEVWdBQUEyaEFBQU5zZ0FBRGNNQUFBM0hBQUFPREFBQURoc0FBQTQ4QUFBT1ZnQUFEbmNBQUE2bUFBQU92QUFBRHVjQUFBOENBQUFQQ2dBQUR5a0FBQTlBQUFBUFl3QUFEM1FBQUErc0FBQVA1d0FBRUZVQUFCQmRBQUFRWmdBQUVHOEFBQkI0QUFBUWdRQUFFSW9BQUJDVEFBQVFzd0FBRUxrQUFCRENBQUFReXdBQUVOUUFBQkRkQUFBUTVnQUFFTzhBQUJENEFBQVJBUUFBRVNVQUFCRXVBQUFSTndBQUVVQUFBQkZKQUFBUlVnQUFFVnNBQUJGcUFBQVJuUUFBRWFZQUFCR3ZBQUFSdUFBQUVjRUFBQkhLQUFBUjVnQUFFaThBQUJJMUFBQVNPd0FBRWtFQUFCSkhBQUFTVFFBQUVsTUFBQktuQUFBU3JRQUFFck1BQUJLNUFBQVN2d0FBRXNVQUFCTExBQUFTMFFBQUV0Y0FBQkxkQUFBVERBQUFFeElBQUJNWUFBQVRIZ0FBRXlRQUFCTXFBQUFUTUFBQUUxY0FBQk9IQUFBVGpRQUFFNU1BQUJPWkFBQVRud0FBRTZVQUFCUFBBQUFUMVFBQUU5NEFBQlBrQUFBVDdRQUFFL01BQUJQNUFBQVQvd0FBRkFnQUFCUU9BQUFVRndBQUZCMEFBQlFtQUFBVUxBQUFGRFVBQUJRN0FBQVVSQUFBRkVvQUFCUk9BQUFVbEFBQUZKMEFBQlNqQUFBVXJBQUFGTElBQUJTN0FBQVV3UUFBRk1jQUFCVUxBQUFWRkFBQUZSb0FBQlVqQUFBVktRQUFGVElBQUJVNEFBQVZRUUFBRlVjQUFCVk5BQUFWVXdBQUZWd0FBQlZsQUFBVmhnQUFGYllBQUJXL0FBQVZ4UUFBRmM0QUFCWFVBQUFWM1FBQUZlTUFBQlhwQUFBVjd3QUFGZmdBQUJYK0FBQVdCQUFBRmcwQUFCWVRBQUFXR1FBQUZoOEFBQlk2QUFBV1F3QUFGa3dBQUJaU0FBQVdXQUFBRm1FQUFCWm5BQUFXY0FBQUZua0FBQmFSQUFBV3B3QUFGckFBQUJhMkFBQVd2QUFBRnNJQUFCYkxBQUFXMFFBQUZ0Y0FBQmI5QUFBWE1BQUFGemtBQUJjL0FBQVhTQUFBRjA0QUFCZFhBQUFYWFFBQUY2MEFBQmYvQUFBWUNBQUFHQTRBQUJnVUFBQVlHZ0FBR0NNQUFCZ3BBQUFZTWdBQUdEZ0FBQmhCQUFBWVJ3QUFHRTBBQUJoVEFBQVlYQUFBR0dJQUFCaG9BQUFZYmdBQUdIY0FBQmg5QUFBWWxRQUFHTDRBQUJqSEFBQVl6UUFBR05ZQUFCamNBQUFZNVFBQUdPc0FBQmowQUFBWStnQUFHUU1BQUJrSkFBQVpPd0FBR1VFQUFCbEtBQUFaVUFBQUdWa0FBQmxmQUFBWmFBQUFHWEVBQUJsM0FBQVpnQUFBR1lZQUFCbVBBQUFabFFBQUdiWUFBQm5rQUFBYUl3QUFHb29BQUJxVEFBQWFtUUFBR3FJQUFCcW9BQUFhcmdBQUdyUUFBQnJQQUFBYTZnQUFHdnNBQUJzVUFBQWJLUUFBRzBvQUFCdG5BQUFiaFFBQUc2Z0FBQnUvQUFBYjdRQUFHL1lBQUJ2OUFBQWNCZ0FBSEE4QUFCd1pBQUFjSWdBQUhDd0FBQncxQUFBY093QUFIRDhBQUJ4REFBQWNXZ0FBSEg0QUFCeUNBQUFjaGdBQUhJb0FBQnl3QUFBY3RBQUFITGdBQUJ6VkFBQWMyUUFBSE4wQUFCMEVBQUFkQ0FBQUhTRUFBQjBsQUFBZFNnQUFIVTRBQUIxU0FBQWRpd0FBSFk4QUFCMjNBQUFkNWdBQUhlOEFBQjM0QUFBZC9nQUFIZ1FBQUI0S0FBQWVFQUFBSGhZQUFCNVpBQUFlandBQUhxMEFBQjdjQUFBZkRBQUFIeklBQUI5bUFBQWZqQUFBSDZVQUFCK3BBQUFmOGdBQUgvWUFBQ0FTQUFBZ1V3QUFJRmNBQUNDVkFBQWd2QUFBSU9NQUFDRURBQUFoSWdBQUlUNEFBQ0ZxQUFBaG1BQUFJYjBBQUNIcUFBQWg4QUFBSWZZQUFDSDhBQUFpQWdBQUlnZ0FBQ0lSQUFBaVNnQUFJbE1BQUNKOUFBQWlnUUFBSW9VQUFDS09BQUFpa2dBQUl1Z0FBQ01MQUFBakpnQUFJeThBQUNNNEFBQWpUQUFBSTFBQUFDTnVBQUFqY2dBQUkzWUFBQ09XQUFBam1nQUFJN2NBQUNQbEFBQWovUUFBSkFZQUFDUWFBQUFrUlFBQUpFa0FBQ1JOQUFBa1VRQUFKRlVBQUNSWkFBQWtYUUFBSkdFQUFDU0RBQUFraHdBQUpJc0FBQ1NoQUFBa3ZBQUFKTkFBQUNUcUFBQWxDQUFBSlNrQUFDVkZBQUFsYndBQUphd0FBQ1hOQUFBbDBRQUFKZjhBQUNZbEFBQW1OUUFBSmxRQUFDWllBQUFtZGdBQUpxWUFBQ2EvQUFBbXhRQUFKdGtBQUNiOUFBQW5HZ0FBSnk4QUFDY3pBQUFuUlFBQUowa0FBQ2ROQUFBblhRQUFKMkVBQUNlRkFBQW5pUUFBSjU0QUFDZTVBQUFuendBQUora0FBQ2dKQUFBb0tnQUFLRU1BQUNoc0FBQW9uQUFBS0xrQUFDaS9BQUFvL3dBQUtRVUFBQ2t2QUFBcE13QUFLVGNBQUNrOUFBQXBRUUFBS1hzQUFDbWVBQUFwb2dBQUthZ0FBQ211QUFBcHdnQUFLZFVBQUNud0FBQXArUUFBS2Y4QUFDb0lBQUFxRGdBQUtoY0FBQ29kQUFBcUpnQUFLaXdBQUNvNkFBQXFTQUFBS2t3QUFDcGdBQUFxY1FBQUtvSUFBQ3FLQUFBcW13QUFLcllBQUNyUkFBQXEyUUFBS3U0QUFDc0xBQUFySEFBQUt5UUFBQ3VBQUFBcmpBQUFLNkFBQUN1ckFBQXJ0Z0FBSzd3QUFDdktBQUFyMHdBQUsrOEFBQ3doQUFBc2V3QUFMTFVBQUN6NEFBQXRLQUFBTFdRQUFDMk5BQUF0a1FBQUxiOEFBQzRWQUFBdWt3QUFMd0VBQUM5V0FBQXZiZ0FBTDRFQUFDK0dBQUF2b1FBQUw4QUFBQy9vQUFBdi9BQUFNQzhBQURBdkFBQXdMd0FBTUM4QUFEQXZBQUF3THdBQU1DOEFBREF2QUFBd0x3QUFNQzhBQURBdkFBQXdMd0FBTUM4QUFEQXZBQUF4WFFBQU1aRUFBREdYQUFBeG13QUFNZDBBQURJWkFBQXlUQUFBTWxVQUFESmJBQUF5WVFBQU1tY0FBREtJQUFBeXNBQUFNdGNBQURMNUFBQXpLQUFBTTBNQUFETk1BQUF6VlFBQU0xc0FBRE5oQUFBemlnQUFNN0VBQURQVUFBQXorQUFBTkQ0QUFEU0NBQUEwb2dBQU5NQUFBRFRtQUFBMUNnQUFOVFVBQURWZkFBQTFrQUFBTmI4QUFEWXdBQUEyb0FBQU5xUUFBRGFvQUFBMjBBQUFOdllBQURjaEFBQTNVZ0FBTjFzQUFEZGhBQUEzblFBQU42TUFBRGZXQUFBNEF3QUFPR0lBQURpK0FBQTR4d0FBT004QUFEanlBQUE1RmdBQU9Tc0FBRG0wQUFBNkNBQUFPanNBQURwc0FBQTZrQUFBT3JRQUFEcmFBQUE3R2dBQU96SUFBRHRKQUFBN2dnQUFPNndBQUR2UkFBQTc5QUFBTy9vQUFEd0FBQUE4SEFBQVBEWUFBRHhUQUFBOGNRQUFQSThBQUR5dkFBQTh5UUFBUE9JQUFEejlBQUE5RndBQVBTOEFBRDFHQUFBOWdBQUFQYXdBQUQ0UkFBQStaQUFBUG1vQUFENXdBQUEraGdBQVBwd0FBRDZnQUFBK3R3QUFQdElBQUQ3eEFBQS9EUUFBUHlnQUFEOURBQUEvWFFBQVAzOEFBRCtmQUFBL3d3QUFQK2NBQUVBQ0FBQkFCZ0FBUUdBQUFFQ2dBQUJCQWdBQVFVUUFBRUZJQUFCQlVRQUFRVmNBQUVHT0FBQkJ0UUFBUWZRQUFFSXVBQUJDWEFBQVFuOEFBRUtZQUFCQ3NnQUFRdEVBQUVMeEFBQkRGQUFBUXpZQUFFTTZBQUJEUXdBQVEwa0FBRU5TQUFCRFdBQUFRMXdBQUVOZ0FBQkRhUUFBUTI4QUFFT1pBQUJEblFBQVE2WUFBRU9zQUFCRHRRQUFRN3NBQUVQRUFBQkR5Z0FBUSs4QUFFUVZBQUJFSGdBQVJDUUFBRVF0QUFCRU13QUFSRHdBQUVSQ0FBQkVSZ0FBUkVvQUFFUlRBQUJFV1FBQVJHSUFBRVJvQUFCRWNRQUFSSGNBQUVTQUFBQkVoZ0FBUkk4QUFFU1ZBQUJFbmdBQVJLUUFBRVM1QUFCRXpRQUFSTllBQUVUY0FBQkU0Z0FBUlFzQUFFVTBBQUJGV3dBQVJYZ0FBRVdUQUFCRnNRQUFSYlVBQUVYcUFBQkdIZ0FBUm1FQUFFYVRBQUJHdndBQVJ1b0FBRWNyQUFCSFR3QUFSM3NBQUVlb0FBQkh6d0FBUi9NQUFFZ1JBQUJJTGdBQVNHQUFBRWhrQUFCSXZnQUFTUHdBQUVrQ0FBQkpDQUFBU1JFQUFFa1hBQUJKSUFBQVNTWUFBRWt2QUFCSk5RQUFTVDRBQUVsRUFBQkpUUUFBU1ZNQUFFbGVBQUJKWmdBQVNXOEFBRWwxQUFCSmZnQUFTWVFBQUVtTkFBQkprd0FBU1p3QUFFbWlBQUJKclFBQVNiVUFBRW03QUFCSndRQUFTY29BQUVuUUFBQkoyUUFBU2Q4QUFFbm9BQUJKN2dBQVNmY0FBRW45QUFCS0JnQUFTZ3dBQUVvVkFBQktHd0FBU2lZQUFFb3VBQUJLTndBQVNqMEFBRXBEQUFCS1NRQUFTazhBQUVwVkFBQktYZ0FBU21RQUFFcHRBQUJLY3dBQVNud0FBRXFDQUFCS2l3QUFTcEVBQUVxYUFBQktvQUFBU3FzQUFFcXpBQUJLdkFBQVNzSUFBRXJMQUFCSzBRQUFTdG9BQUVyZ0FBQks2UUFBU3U4QUFFcjFBQUJLK3dBQVN3RUFBRXNIQUFCTEVBQUFTeFlBQUVzZkFBQkxKUUFBU3k0QUFFczBBQUJMUFFBQVMwTUFBRXRNQUFCTFVnQUFTMWdBQUV0ZUFBQkxaQUFBUzIwQUFFdDJBQUJMZkFBQVM0VUFBRXVMQUFCTGtRQUFTN1VBQUV2ZEFBQk1GUUFBVEVRQUFFeG9BQUJNalFBQVRNWUFBRTBBQUFCTklnQUFUVHdBQUUxQ0FBQk5TQUFBVFkwQUFFM05BQUJOMFFBQVRoQUFBRTR3QUFCT1ZRQUFUbmtBQUU2cUFBQk81QUFBVHVnQUFFOFhBQUJQT0FBQVQzZ0FBRStBQUFCUGx3QUFUNXNBQUUvTkFBQlA3Z0FBVUNVQUFGQk9BQUJRa0FBQVVLa0FBRkRIQUFCUSt3QUFVU3NBQUZGQUFBQlJqd0FBVWNjQUFGSHRBQUJSOFFBQVVmVUFBRklyQUFCU1ZRQUFVb2NBQUZMTUFBQlM4QUFBVXgwQUFGTklBQUJUVEFBQVU0SUFBRk91QUFCVDBnQUFWQXNBQUZRbkFBQlVUZ0FBVkhzQUFGU29BQUJVNWdBQVZRTUFBRlVpQUFCVkpnQUFWVTRBQUZWMUFBQlZwd0FBVmQwQUFGWURBQUJXS0FBQVZsSUFBRmFDQUFCV2p3QUFWcFVBQUZheEFBQld0UUFBVnNBQUFGYklBQUJXMEFBQVZ0WUFBRmJjQUFCVzRnQUFWdWdBQUZidUFBQlc5QUFBVnYwQUFGY0RBQUJYREFBQVZ4SUFBRmNiQUFCWElRQUFWeW9BQUZjd0FBQlhPUUFBVno4QUFGZElBQUJYVGdBQVYxY0FBRmRkQUFCWFpnQUFWMndBQUZkMUFBQlhld0FBVjRFQUFGZUhBQUJYa0FBQVY1WUFBRmZJQUFCWUpnQUFXQzhBQUZnMUFBQllQZ0FBV0VjQUFGaE5BQUJZVXdBQVdGNEFBRmhtQUFCWWJ3QUFXSFVBQUZoN0FBQllnUUFBV0ljQUFGaVFBQUJZbGdBQVdNSUFBRmp0QUFCWTlnQUFXUHdBQUZrRkFBQlpDd0FBV1JRQUFGa2FBQUJaSXdBQVdTa0FBRmt5QUFCWk9BQUFXVUVBQUZsSEFBQlpVQUFBV1ZZQUFGbGZBQUJaWlFBQVdXNEFBRmwwQUFCWmZRQUFXWU1BQUZtTUFBQlprZ0FBV1pzQUFGbWhBQUJacWdBQVdiQUFBRm5ZQUFCWi93QUFXZ2dBQUZvUkFBQmFPUUFBV3BnQUFGckdBQUJhOUFBQVd2b0FBRnIrQUFCYkJ3QUFXdzBBQUZzVEFBQmJHUUFBV3lJQUFGc29BQUJiTVFBQVd6Y0FBRnRBQUFCYlJnQUFXMHdBQUZ0U0FBQmJXd0FBVzJFQUFGdUtBQUJiMWdBQVhBWUFBRnhCQUFCY2ZRQUFYS2dBQUZ6ZEFBQmREd0FBWFNZQUFGMUdBQUJkaEFBQVhhd0FBRjNLQUFCZDV3QUFYaGNBQUY0N0FBQmVQd0FBWG1jQUFGNm9BQUJleWdBQVh2Y0FBRjg4QUFCZmhRQUFYNndBQUYvZEFBQmYvQUFBWUNrQUFHQXhBQUJnYVFBQVlIRUFBR0RGQUFCZzZBQUFZU0VBQUdGYUFBQmhyZ0FBWWJRQUFHSGNBQUJoNEFBQVlnd0FBR0l0QUFCaWZRQUFZb0VBQUdLcUFBQmkxQUFBWXhBQUFHTVlBQUJqU2dBQVk0d0FBR091QUFCanNnQUFZOGdBQUdQd0FBQmtGUUFBWkN3QUFHUlpBQUJrWVFBQVpJb0FBR1RSQUFCbENnQUFaVG9BQUdWVEFBQmxWd0FBWmNRQUFHWHpBQUJsOXdBQVpmOEFBR1lvQUFCbVVnQUFabndBQUdheUFBQm15d0FBWnVRQUFHY0VBQUJuRFFBQVowUUFBR2R4QUFCbnFnQUFaODBBQUdnSEFBQm9Ed0FBYURJQUFHaGtBQUJvaVFBQWFMc0FBR2pEQUFCb3l3QUFhTk1BQUdqbUFBQnBEQUFBYVRjQUFHazdBQUJwZUFBQWFaMEFBR21qQUFCcHdRQUFhZVFBQUducUFBQnA3Z0FBYWhvQUFHcGRBQUJxWVFBQWFwRUFBR3FaQUFCcXFBQUFhdTBBQUdzY0FBQnJTd0FBYTZrQUFHd21BQUJzbmdBQWJQY0FBRzFHQUFCdG9BQUFiZ1VBQUc1SEFBQnVZZ0FBYm8wQUFHNm1BQUJ1NEFBQWJ5Z0FBRzh4QUFCdk9nQUFiME1BQUc5TUFBQnZWUUFBYjE0QUFHOW5BQUJ2Y0FBQWIza0FBRzk5QUFCdmdRQUFiNFVBQUcrSkFBQnZvQUFBYjdjQUFHL1dBQUJ2M0FBQWIrUUFBRy9zQUFCdi93QUFjQWNBQUhBTEFBQndEd0FBY0JNQUFIQWJBQUJ3SXdBQWNDZ0FBSEF0QUFCd1FRQUFjRXdBQUhCVUFBQndYQUFBY0dRQUFIQnNBQUJ3ZEFBQWNJSUFBSENIQUFCd2tBQUFjSmtBQUhDaUFBQndxd0FBY0xRQUFIREhBQUJ3M0FBQWNQRUFBSEVHQUFCeEZ3QUFjU2dBQUhFN0FBQnhRd0FBY1VzQUFIRlBBQUJ4WVFBQWNYTUFBSEY5QUFCeGh3QUFjWThBQUhHWUFBQnhvQUFBY2FnQUFIR3ZBQUJ4d0FBQWNkTUFBSEhsQUFCeDlRQUFjaEFBQUhJcEFBQnlRQUFBY2tRQUFISlZBQUJ5YXdBQWNtOEFBSEp6QUFCeWZBQUFjb1VBQUhLSkFBQnl4QUFBY3M0QUFITFhBQUJ5MndBQWN6Y0FBSE5rQUFCemh3QUFjN0FBQUhQY0FBQjBDUUFBZENrQUFIUmNBQUIwalFBQWRMb0FBSFRaQUFCMU5BQUFkVzBBQUhWeEFBQjFkUUFBZFhrQUFIVjlBQUIxZ1FBQWRZVUFBSFdKQUFCMWpRQUFkYlVBQUhYYkFBQjJDZ0FBZGc0QUFIWVVBQUIyR2dBQWRoNEFBSFlpQUFCMkpnQUFkaW9BQUhaRkFBQjJaQUFBZHJJQUFIYmRBQUIzQUFBQWR4Y0FBSGM1QUFCM1RnQUFkMzRBQUhlWEFBQjNzQUFBZDhjQUFIZmZBQUIzK3dBQWVCTUFBSGd4QUFCNFZBQUFlRjRBQUhob0FBQjRjZ0FBZUhvQUFIaW1BQUI0dkFBQWVORUFBSGp2QUFCNUVBQUFlVElBQUhsQkFBQjVXUUFBZVdNQUFIbHRBQUI1ZHdBQWVYd0FBSG1uQUFCNXF3QUFlYzhBQUhuNkFBQjZKQUFBZWpRQUFIcEtBQUI2V2dBQWVsNEFBSHA4QUFCNnBRQUFlcTRBQUhxM0FBQjZ3QUFBZXZnQUFIc0JBQUI3Q2dBQWV4TUFBSHNjQUFCN0pRQUFleTRBQUhzM0FBQjdRQUFBZTBrQUFIdFNBQUI3V3dBQWUzc0FBSHVFQUFCN2pRQUFlNVlBQUh1ZkFBQjdxQUFBZTdFQUFIdTZBQUI3d3dBQWU4d0FBSHZWQUFCNzNnQUFlK2NBQUh2d0FBQjcrUUFBZkFJQUFId0xBQUI4RkFBQWZCMEFBSHdtQUFCOEx3QUFmRGdBQUh4QkFBQjhTZ0FBZkZNQUFIeGNBQUI4WlFBQWZHNEFBSHgzQUFCOGdBQUFmSWtBQUh5U0FBQjhtd0FBZktRQUFIeXRBQUI4dGdBQWZMOEFBSHpJQUFCODBRQUFmTmtBQUh6aEFBQjg2UUFBZlBFQUFIejVBQUI5QVFBQWZRa0FBSDBSQUFCOUdRQUFmVm9BQUgyekFBQitFQUFBZmxnQUFINnNBQUIrOUFBQWYwWUFBSCtOQUFCL3ZnQUFnQUVBQUlBL0FBQ0FpQUFBZ0pBQUFJQ1pBQUNBeEFBQWdTOEFBSUZOQUFDQmJRQUFnYmtBQUlIZ0FBQ0NGZ0FBZ21NQUFJTEZBQUNEQlFBQWcyVUFBSU9RQUFDRHJRQUFnL0lBQUlRckFBQ0VlZ0FBaExrQUFJVDFBQUNGT0FBQWhWOEFBSVdGQUFDRnFRQUFoaFlBQUlaMkFBQ0d4d0FBaHYwQUFJYzdBQUNIZUFBQWg3SUFBSWZkQUFDSURBQUFpRVlBQUlpU0FBQ0l4Z0FBaU04QUFJallBQUNJNFFBQWlPb0FBSWp6QUFDSS9BQUFpUVVBQUlrT0FBQ0pGd0FBaVNBQUFJa3BBQUNKTWdBQWlUc0FBSWxFQUFDSlRRQUFpVllBQUlsZkFBQ0phQUFBaVhFQUFJbDZBQUNKZ3dBQWlZd0FBSW1WQUFDSm5nQUFpYWNBQUltd0FBQ0p1UUFBaWNJQUFJbkxBQUNKMUFBQWlkMEFBSW5tQUFDSjd3QUFpZmdBQUlvQkFBQ0tDZ0FBaWhNQUFJb2NBQUNLSWdBQWlpZ0FBSW91QUFDS053QUFpa0FBQUlwTEFBQ0tVd0FBaWx3QUFJcGlBQUNLYUFBQWltNEFBSXAzQUFDS2dBQUFpcTBBQUlzQkFBQ0xCd0FBaXcwQUFJc1dBQUNMSEFBQWl5VUFBSXNyQUFDTE1RQUFpemNBQUlzOUFBQ0xSZ0FBaTFFQUFJdFpBQUNMWWdBQWkyc0FBSXQwQUFDTGVnQUFpNE1BQUl1TUFBQ0xrZ0FBaTVnQUFJdWhBQUNMcWdBQWk3QUFBSXUyQUFDTHZBQUFpOElBQUl2SUFBQ0wwUUFBaTlvQUFJdmdBQUNMNlFBQWkvSUFBSXY0QUFDTC9nQUFqQVFBQUl3TkFBQ01Fd0FBakJrQUFJd2tBQUNNTHdBQWpEZ0FBSXhCQUFDTVJ3QUFqRkFBQUl4WkFBQ01Yd0FBakdVQUFJeHJBQUNNZEFBQWpIb0FBSXlBQUFDTWhnQUFqSThBQUl5WUFBQ01uZ0FBaktRQUFJeXRBQUNNc3dBQWpMd0FBSXpDQUFDTXl3QUFqTkVBQUl6YUFBQ000QUFBak9rQUFJenZBQUNNK0FBQWpQNEFBSTBIQUFDTkRRQUFqUk1BQUkwWkFBQ05KQUFBalN3QUFJMDFBQUNOUGdBQWpVY0FBSTFOQUFDTlV3QUFqVmtBQUkxaUFBQ05hQUFBalhFQUFJMTNBQUNOZ2dBQWpZb0FBSTJUQUFDTm13QUFqYUVBQUkybkFBQ05zQUFBamJZQUFJMjhBQUNOeFFBQWpjNEFBSTNVQUFDTjNRQUFqZU1BQUkzcEFBQ044Z0FBamZzQUFJNEJBQUNPQ2dBQWpoQUFBSTRaQUFDT0h3QUFqaVVBQUk0ckFBQ09OQUFBampvQUFJNUFBQUNPUmdBQWprOEFBSTVWQUFDT1hnQUFqbVFBQUk1dEFBQ09jd0FBam53QUFJNkNBQUNPaUFBQWpvNEFBSTZVQUFDT21nQUFqcUFBQUk2b0FBQ09yZ0FBanJRQUFJNjZBQUNPd3dBQWpza0FBSTdQQUFDTzFRQUFqdHNBQUk3aEFBQ081d0FBanUwQUFJN3pBQUNPL0FBQWp3VUFBSThPQUFDUEZ3QUFqeUFBQUk4cEFBQ1BNZ0FBanpzQUFJOUJBQUNQUndBQWowMEFBSTlUQUFDUFdRQUFqMThBQUk5b0FBQ1BjUUFBajNzQUFJK0ZBQUNQandBQWo1a0FBSStmQUFDUHBRQUFqNnNBQUkreEFBQ1B0d0FBajcwQUFJL0RBQUNQeVFBQWo5SUFBSS9iQUFDUDVRQUFqKzhBQUkvNUFBQ1FBd0FBa0EwQUFKQVhBQUNRSFFBQWtDTUFBSkFwQUFDUUx3QUFrRFVBQUpBN0FBQ1FRUUFBa0VjQUFKQlFBQUNRV1FBQWtHTUFBSkJ0QUFDUWR3QUFrSUVBQUpDTEFBQ1FsUUFBa0pzQUFKQ2hBQUNRcHdBQWtLMEFBSkN6QUFDUXVRQUFrTUlBQUpETEFBQ1ExUUFBa044QUFKRHBBQUNROHdBQWtQa0FBSkQvQUFDUkJRQUFrUXNBQUpFUkFBQ1JGd0FBa1IwQUFKRWpBQUNSTEFBQWtUWUFBSkZBQUFDUlNRQUFrVThBQUpGVkFBQ1JXd0FBa1dFQUFKRm5BQUNSYlFBQWtYTUFBSkY1QUFDUmdnQUFrWXNBQUpHVkFBQ1Jud0FBa2FrQUFKR3pBQUNSdlFBQWtjWUFBSkhNQUFDUjBnQUFrZGdBQUpIZUFBQ1I1QUFBa2VvQUFKSHdBQUNSOWdBQWtmd0FBSklDQUFDU0NBQUFrZzRBQUpJVUFBQ1NHZ0FBa2lJQUFKSXFBQUNTTVFBQWtqZ0FBSkkvQUFDU1JnQUFrazBBQUpKVUFBQ1NYd0FBa21vQUFKSjFBQUNTZ0FBQWtvc0FBSktXQUFDU29RQUFrcXdBQUpLMEFBQ1N2QUFBa3NRQUFKTE1BQUNTMUFBQWt0d0FBSkxrQUFDUzdBQUFrdmNBQUpNQ0FBQ1REZ0FBa3hvQUFKTW1BQUNUTWdBQWt6NEFBSk5LQUFDVFVnQUFrMW9BQUpOaEFBQ1RhQUFBazI4QUFKTjJBQUNUZlFBQWs0UUFBSk9QQUFDVG1nQUFrNllBQUpPeUFBQ1R2Z0FBazhvQUFKUFdBQUNUNGdBQWsrZ0FBSlB1QUFDVDlRQUFrL3NBQUpRQ0FBQ1VDQUFBbEE4QUFKUVlBQUNVSVFBQWxDb0FBSlF6QUFDVU9RQUFsRk1BQUpSMUFBQ1VlUUFBbEgwQUFKU3pBQUNVdXdBQWxNRUFBSlRKQUFDVXp3QUFsTmNBQUpUZ0FBQ1U2UUFBbFBJQUFKVDdBQUNWQVFBQWxVY0FBSldOQUFDVnZBQUFsY0lBQUpYSUFBQ1Z6Z0FBbGRRQUFKWGFBQUNWNEFBQWxla0FBSlh5QUFDVit3QUFsZ1FBQUpaSUFBQ1dqQUFBbHJzQUFKYkJBQUNXeHdBQWxzMEFBSmJUQUFDVzJRQUFsdDhBQUpibEFBQ1c2d0FBbHZRQUFKYjlBQUNYQndBQWx4RUFBSmNhQUFDWFRRQUFsNFVBQUplYUFBQ1hvUUFBbDZjQUFKZXZBQUNYdFFBQWw3MEFBSmZHQUFDWHp3QUFsOWdBQUpmaEFBQ1g1d0FBbC8wQUFKZ1dBQUNZSkFBQW1Ec0FBSmhVQUFDWWJRQUFtSHNBQUppQkFBQ1luQUFBbUswQUFKaStBQUNZMEFBQW1RTUFBSmsyQUFDWk5nQUFtVkVBQUpsVkFBQ1ptUUFBbWRFQUFKb0ZBQUNhRmdBQW1pWUFBSm82QUFDYWJ3QUFtbzBBQUpxK0FBQ2E3d0FBbXZjQUFKci9BQUNiQndBQW13OEFBSnNYQUFDYlFRQUFtMzhBQUp2TEFBQ2NGd0FBbkUwQUFKeWxBQUNjNkFBQW5RY0FBSjBvQUFDZGdnQUFuYmtBQUozMUFBQ2VLUUFBbmxZQUFKNlhBQUNlelFBQW52SUFBSjc1QUFDZk9BQUFuNThBQUorMEFBQ2dDQUFBb0lNQUFLQ0hBQUNncGdBQW9NSUFBS0R0QUFDaEhBQUFvVXNBQUtHY0FBQ2h5Z0FBb2M0QUFLSHdBQUNpRGdBQW9pNEFBS0pJQUFDaVlnQUFvcGNBQUtLYkFBQ2kzQUFBb3hrQUFLTlhBQUNqYVFBQW8zb0FBS09oQUFDanJnQUFvOGdBQUtQZ0FBQ2o5d0FBcEJBQUFLUWRBQUNrS2dBQXBFSUFBS1JhQUFDa1lnQUFwRzRBQUtSNkFBQ2tnZ0FBcEp3QUFLU3hBQUNrdkFBQXBNb0FBS1QwQUFDbEhnQUFwVElBQUtWR0FBQ2xYUUFBcFhRQUFLVjZBQUNsZ0FBQXBZWUFBS1dNQUFDbGtnQUFwWmdBQUtXZUFBQ2xwQUFBcGFvQUFLV3dBQUNsdGdBQXBid0FBS1hDQUFDbHlBQUFwYzRBQUtYVUFBQ2wyZ0FBcGVBQUFLWG1BQUNsN0FBQXBmSUFBS1g0QUFDbC9nQUFwZ1FBQUtZS0FBQ21FQUFBcGhZQUFLWWNBQUNtSWdBQXBpZ0FBS1l1QUFDbU5BQUFwbWdBQUtac0FBQ21wQUFBcHU0QUFLZEdBQUNub0FBQXAvWUFBS2dnQUFDb1VRQUFxSDhBQUtpekFBQ28zZ0FBcVFNQUFLa29BQUNwV0FBQXFYc0FBS21xQUFDcHd3QUFxZDBBQUtvbkFBQ3FjZ0FBcXJFQUFLcnZBQUNyUlFBQXE1c0FBS3Z6QUFDc1N3QUFySWtBQUt5L0FBQ3M0d0FBclNFQUFLMU1BQUN0b0FBQXJic0FBSzNYQUFDdU93QUFyb2tBQUs3SEFBQ3ZIZ0FBcnpVQUFLOUxBQUN2YlFBQXI0OEFBSyt5QUFDdjJ3QUFyL0VBQUxBWkFBQ3dXd0FBc0dNQUFMQ0tBQUN3c1FBQXNOd0FBTEQwQUFDeEZ3QUFzU0FBQUxGTUFBQ3hkUUFBc2NVQUFMSExBQUN5RlFBQXNrb0FBTEp3QUFDeW13QUFzczRBQUxMV0FBQ3k5d0FBc3hZQUFMTThBQUN6VVFBQXMyZ0FBTE9YQUFDem5RQUFzNk1BQUxQSUFBQ3o5UUFBdEVrQUFMUjJBQUMwclFBQXRNZ0FBTFR2QUFDMUdRQUF0VXdBQUxWMUFBQzFtUUFBdGJZQUFMWGtBQUMyRVFBQXRqb0FBTFptQUFDMmx3QUF0c01BQUxiTEFBQzIwd0FBdHdVQUFMY3ZBQUMzVUFBQXQySUFBTGQvQUFDM3FRQUF0OWdBQUxmMkFBQzRId0FBdUVrQUFMaDZBQUM0bXdBQXVKOEFBTGppQUFDNUZ3QUF1UjhBQUxrbkFBQzVWZ0FBdVpjQUFMbkFBQUM1eEFBQXVjb0FBTG5RQUFDNTFnQUF1ZHdBQUxuaUFBQzU2QUFBdWY0QUFMb0NBQUM2QmdBQXVnb0FBTHBnQUFDNlpBQUF1cVFBQUxxb0FBQzYzd0FBdXVvQUFMcndBQUM3Q1FBQXV5SUFBTHRIQUFDN2J3QUF1NXdBQUx1a0FBQzczd0FBdkFBQUFMd2pBQUM4TEFBQXZEQUFBTHc0QUFDOFZnQUF2R3NBQUx4MEFBQzhmUUFBdklNQUFMeXNBQUM4elFBQXZQY0FBTDB5QUFDOVd3QUF2WUlBQUwzUEFBQzk0UUFBdmdrQUFMNWpBQUMreEFBQXZ6VUFBTCtJQUFDLzVBQUF3RGtBQU1BOUFBREFZQUFBd0lFQUFNQ3BBQURBdXdBQXdNMEFBTUQ1QUFEQlFRQUF3VWNBQU1HR0FBREI1Z0FBd2pBQUFNSjBBQURDdndBQXd0a0FBTU1CQUFERElRQUF3MWdBQU1PSkFBRER2QUFBdzlBQUFNUCtBQURFS2dBQXhGRUFBTVN6QUFERXl3QUF4UlFBQU1WUEFBREZtZ0FBeGNZQUFNWVBBQURHUEFBQXhtSUFBTWFVQUFER25BQUF4cWNBQU1iWEFBREhBUUFBeHlFQUFNZFBBQURIZHdBQXg1OEFBTWYwQUFESUZRQUF5RVVBQU1oMEFBRElvZ0FBeUtZQUFNaXFBQURJc2dBQXlOZ0FBTWo5QUFESkF3QUF5UWtBQU1rUEFBREpGUUFBeVJzQUFNa2hBQURKSndBQXlTOEFBTWszQUFESlBRQUF5VU1BQU1tVEFBREtIUUFBeWpvQUFNcEFBQURLU0FBQXlsQUFBTXBXQUFES1hBQUF5bVFBQU1wcUFBREtjZ0FBeW44QUFNcUhBQURLcGdBQXlxd0FBTXJXQUFESytRQUF5djhBQU1zSEFBRExEUUFBeXhVQUFNc2JBQURMTWdBQXkxSUFBTXRhQUFETFhnQUF5M01BQU10NUFBRExnUUFBeTRrQUFNdVJBQURMbHdBQXk2QUFBTXVtQUFETHJnQUF5N1FBQU12R0FBREw2d0FBeS9NQUFNdjdBQURNQVFBQXpBY0FBTXdkQUFETVBnQUF6RVlBQU14YkFBRE1ZUUFBekdrQUFNeHhBQURNZHdBQXpIOEFBTXlGQUFETWl3QUF6Sk1BQU15WkFBRE1vUUFBekxnQUFNekFBQURNMXdBQXpOMEFBTXp0QUFETTh3QUF6UHdBQU0wQ0FBRE5Dd0FBelNNQUFNMUJBQUROV3dBQXpXRUFBTTFwQUFETmJ3QUF6WlFBQU0yY0FBRE51Z0FBemNBQUFNM0lBQUROMEFBQXpkWUFBTTNjQUFETjVRQUF6ZTRBQU00aEFBRE9LUUFBempFQUFNNlBBQURPcWdBQXpzWUFBTTdwQUFEUENBQUF6dzRBQU04V0FBRFBIQUFBejBjQUFNOU5BQURQVlFBQXoxc0FBTTlqQUFEUGFRQUF6NlVBQU0rMkFBRFB6Z0FBejlZQUFNL2NBQURQNGdBQXovZ0FBTS8rQUFEUUJnQUEwQTRBQU5BVUFBRFFHZ0FBMENNQUFOQXJBQURRVWdBQTBGc0FBTkJqQUFEUWVRQUEwSjhBQU5DbEFBRFFyZ0FBMExRQUFOQzZBQURRendBQTBPTUFBTkRwQUFEUThRQUEwUGNBQU5EOUFBRFJGQUFBMFJvQUFORWlBQURSS3dBQTBUUUFBTkZGQUFEUlR3QUEwVlVBQU5GYkFBRFJZd0FBMFhjQUFOR25BQURSeHdBQTBmb0FBTkl1QUFEU2NBQUEwcXdBQU5MeUFBRFMrQUFBMHhJQUFOTTBBQURUV2dBQTA1Y0FBTk84QUFEVDRBQUExQVlBQU5SRUFBRFVhUUFBMUlrQUFOUzNBQURVM3dBQTFSQUFBTlVXQUFEVk9BQUExV1VBQU5XR0FBRFZqd0FBMWNjQUFOWE5BQURWOGdBQTFpRUFBTlpyQUFEV2tnQUExdm9BQU5jZkFBRFhPUUFBMTNFQUFOZVVBQURYdFFBQTE5c0FBTmdYQUFEWUd3QUEyRWdBQU5ocUFBRFltZ0FBMk1zQUFOajNBQURaTkFBQTJWUUFBTmx6QUFEWmx3QUEyYWtBQU5tL0FBRFozd0FBMmdRQUFOb3BBQURhWmdBQTJxMEFBTnF6QUFEYXR3QUEydG9BQU5zSUFBRGJRQUFBMjJRQUFOdUhBQURicndBQTI3VUFBTndGQUFEY0pRQUEzRlFBQU55R0FBRGN0Z0FBM0x3QUFOemVBQURkQndBQTNTZ0FBTjFVQUFEZGhBQUEzWW9BQU4yc0FBRGQxUUFBM2o4QUFONW5BQURlelFBQTN2Z0FBTjhUQUFEZlNnQUEzMjBBQU4rTUFBRGZzd0FBMys0QUFOL3lBQURnSGdBQTRFVUFBT0JwQUFEZ2JnQUE0SGNBQU9DQUFBRGdtQUFBNExZQUFPQzZBQURnN0FBQTRQQUFBT0VKQUFEaEpnQUE0U29BQU9GWkFBRGhvQUFBNGhRQUFPSmZBQURpMmdBQTR6VUFBT040QUFEanJ3QUE1RG9BQU9UR0FBRGxFZ0FBNVhjQUFPV1VBQURtR3dBQTVpTUFBT1luQUFEbVVRQUE1bk1BQU9hTUFBRG1zZ0FBNXU0QUFPZERBQURuWUFBQTU0WUFBT2VjQUFEbm9BQUE1NlFBQU9nTEFBRG9pZ0FBNk80QUFPa3lBQURwVmdBQTZab0FBT25JQUFEcC9nQUE2alFBQU9wbkFBRHFrd0FBNnMwQUFPcjJBQURyTndBQTYxc0FBT3VUQUFEcnlRQUE3QWtBQU94Z0FBRHNrQUFBN0w4QUFPMExBQUR0UUFBQTdZVUFBTzJKQUFEdHZnQUE3aElBQU81WUFBRHVmZ0FBN3EwQUFPOEdBQUR2THdBQTc1QUFBTy9HQUFEd0JnQUE4Q2dBQVBCMkFBRHd1UUFBOFBzQUFQRXFBQUR4WndBQThab0FBUEdqQUFEeUNnQUE4bUFBQVBLVkFBRHkyZ0FBOHZFQUFQTWVBQUR6TXdBQTgyb0FBUE94QUFEMEJRQUE5Q0lBQVBSWkFBRDBnUUFBOUtrQUFQVGRBQUQxSXdBQTlTc0FBUFZiQUFEMVh3QUE5YlVBQVBZZkFBRDJWZ0FBOW13QUFQYVpBQUQyeGdBQTl1NEFBUGJ5QUFEMitnQUE5d0lBQVBjS0FBRDNFZ0FBOXhvQUFQY2lBQUQzS2dBQTl6SUFBUGM3QUFEM1JBQUE5MDBBQVBkV0FBRDNYd0FBOTJnQUFQZHhBQUQzaFFBQTk2SUFBUGUzQUFEMzJRQUErQWdBQVBnb0FBRDRVZ0FBK0lNQUFQaVdBQUQ0ekFBQStQMEFBUGtiQUFENU5BQUErVlVBQVBtQkFBRDVzQUFBK2RnQUFQb0ZBQUQ2R0FBQStrMEFBUHA2QUFENm5nQUErcUlBQVBxbUFBRDZxZ0FBK3E0QUFQcXlBQUQ2dGdBQStyb0FBUHErQUFENndnQUErc1lBQVByT0FBRDYxZ0FBK3Q0QUFQcm1BQUQ2N2dBQSt2WUFBUHIrQUFEN0JnQUErdzRBQVBzV0FBRDdIZ0FBK3lZQUFQc3VBQUQ3TmdBQSt6NEFBUHRHQUFEN1RnQUErMVlBQVB0ZUFBRDdaZ0FBKzJ3QUFQdDBBQUQ3ZkFBQSs0UUFBUHVNQUFEN2xBQUErNXdBQVB1a0FBRDdyQUFBKzdRQUFQdStBQUQ3eGdBQSs4NEFBUHZXQUFENzNnQUErK1lBQVB2dUFBRDc5Z0FBKy80QUFQd0dBQUQ4RGdBQS9Cd0FBUHd5QUFEOFNBQUEvRjBBQVB4ekFBRDhoQUFBL0pjQUFQeXJBQUQ4c1FBQS9NUUFBUHpXQUFEOUtnQUEvVlVBQVAxNkFBRDl4Z0FBL2RrQUFQNkxBQUQra1FBQS9zWUFBUDc5QUFEL0hnQUEvekVBQVA5bkFBRC9rd0FBLzVvQUFQK2VBQUQvdXdBQS84TUFBUC9NQUFELzZRQUEvL01BQVAvOUFBRUFDZ0FCQUR3QUFRQk9BQUVBVmdBQkFGb0FBUUI5QUFFQ0xRQUJBanNBQVFKQkFBRUNSd0FCQWs0QUFRSlZBQUVDY0FBQkFvQUFBUUtWQUFFQzNnQUJBdThBQVFMMUFBRUMrd0FCQXdFQUFRTWlBQUVETUFBQkEwMEFBUU5XQUFFRFh3QUJBMjRBQVFPZ0FBRURzZ0FCQTlZQUFRUUNBQUVFTHdBQkJGVUFBUVNBQUFFRXF3QUJCTFFBQVFUQ0FBRUU5Z0FCQlJzQUFRVWpBQUVGS3dBQkJUTUFBUVU4QUFFRlFnQUJCVjBBQVFXQUFBRUZrZ0FCQlpvQUFRV29BQUVHQndBQkJqMEFBUWFmQUFFR3BRQUJCc29BQVFiZEFBRUc0UUFCQnVrQUFRYnhBQUVIQWdBQkJ4RUFBUWNmQUFFSEx3QUJCelVBQVFjN0FBRUhXQUFCQjNZQUFRZUpBQUVIbkFBQkI2VUFBUWVwQUFFSHJRQUJCN1VBQVFlN0FBRUh4QUFCQjhvQUFRZllBQUVINGdBQkIrb0FBUWZ3QUFFSUZBQUJDRGNBQVFoSEFBRUlWd0FCQ0cwQUFRaHpBQUVJaWdBQkNKVUFBUWlmQUFFSXNRQUJDTU1BQVFqdEFBRUpHUUFCQ1RBQUFRazFBQUVKTlFBQkNUVUFBUWsxQUFFSk5RQUJDVFVBQVFrMUFBRUpOUUFCQ1RVQUFRazFBQUVKTlFBQkNUVUFBUWsxQUFFSmNBQUJDWkVBQVFtM0FBRUozQUFCQ2owQUFRcFRBQUVLbXdBQkNzZ0FBUXJRQUFFSzhnQUJDdm9BQVFzVEFBRUxTZ0FCQzEwQUFRdGxBQUVMZXdBQkM1WUFBUXVlQUFFTHF3QUJEQndBQVF3a0FBRU1PUUFCREQ4QUFReG1BQUVNYmdBQkRIWUFBUXgrQUFFTWlBQUJETjBBQVEwN0FBRU5mQUFCRFlJQUFRMndBQUVPQmdBQkRnd0FBUTRRQUFFT1FRQUJEbjhBQVE2dUFBRVBTZ0FCRDNRQUFRK2JBQUVQMHdBQkQ5Y0FBUkFhQUFFUWdnQUJFS3NBQVJETEFBRVJIQUFCRVRrQUFSRk5BQUVSWVFBQkVYWUFBUkdMQUFFUm5RQUJFYThBQVJIQ0FBRVIxQUFCRWVZQUFSSDRBQUVTQ2dBQkVoMEFBUkl4QUFFU1RnQUJFbUlBQVJKMUFBRVNpQUFCRXAwQUFSS3dBQUVTeGdBQkV0d0FBUkx4QUFFVEJBQUJFeGtBQVJNc0FBRVRRUUFCRTFZQUFSTnNBQUVUZXdBQkU0c0FBUk9kQUFFVHNBQUJFOFlBQVJQWkFBRVQ3Z0FCRkFRQUFSUWFBQUVVTUFBQkZFQUFBUlJSQUFFVVl3QUJGSDRBQVJTUUFBRVVvZ0FCRkxJQUFSVERBQUVVMWdBQkZPY0FBUlQ4QUFFVkR3QUJGUjhBQVJVdUFBRVZRQUFCRlZFQUFSVmpBQUVWZGdBQkZZY0FBUldaQUFFVnJRQUJGY0lBQVJYWEFBRVY3QUFCRmYwQUFSWVBBQUVXSWdBQkZqUUFBUlpHQUFFV1dBQUJGblFBQVJhUkFBRVdyd0FCRnN3QUFSYmVBQUVXOGdBQkZ3VUFBUmNhQUFFWEx3QUJGMFFBQVJkV0FBRVhhZ0FCRjMwQUFSZVJBQUVYcEFBQkY3a0FBUmZLQUFFWDNRQUJGL0lBQVJnSEFBRVlIUUFCR0RNQUFSaEVBQUVZVlFBQkdHZ0FBUmg2QUFFWWpBQUJHSjRBQVJpd0FBRVl3d0FCR05jQUFSajFBQUVaQ2dBQkdSOEFBUmt6QUFFWlJ3QUJHVndBQVJseEFBRVpnd0FCR1pZQUFSbXFBQUVadlFBQkdkRUFBUm5tQUFFWjl3QUJHZ29BQVJvZkFBRWFOQUFCR2trQUFScGZBQUVhY0FBQkdvRUFBUnFVQUFFYXBnQUJHcmdBQVJyTEFBRWEzUUFCR3U4QUFSc0RBQUViSUFBQkd6UUFBUnRJQUFFYldnQUJHMjRBQVJ1QUFBRWJsQUFCRzZrQUFSdTlBQUViMFFBQkcrVUFBUnY2QUFFY0R3QUJIQmtBQVJ4bkFBRWNid0FCSEhRQUFSeDRBQUVjZlFBQkhJSUFBUnlIQUFFY2pBQUJISkVBQVJ5V0FBRWNtd0FCSEtBQUFSeWxBQUVjdEFBQkhNUUFBUnphQUFFYy9BQUJIU0lBQVIwOEFBRWRRQUFCSFVRQUFSMUlBQUVkVEFBQkhWUUFBUjFjQUFFZGJ3QUJIWUlBQVIyVEFBRWRwQUFCSGJvQUFSM1hBQUVkOHdBQkhnb0FBUjRTQUFFZUxRQUJIa2NBQVI1Y0FBRWVaQUFCSG13QUFSNXdBQUVlZEFBQkhud0FBUjZYQUFFZXR3QUJIcjhBQVI3SEFBRWV6d0FCSHRjQUFSN2ZBQUVlNXdBQkh2WUFBUjc3QUFFZkF3QUJId3NBQVI4YkFBRWZKQUFCSHpRQUFSOUxBQUVmWmdBQkgzc0FBUitiQUFFZnFnQUJIOFlBQVIvT0FBRWYwd0FCSDljQUFSL3lBQUVmOXdBQkgvOEFBU0FZQUFFZ1JBQUJJSDBBQVNDMUFBRWd5d0FCSU53QUFTSlBBQUVpYkFBQkluTUFBU0taQUFFaXB3QUJJc1FBQVNMaEFBRWpIZ0FCSXlVQUFTTXBBQUVqUVFBQkkzTUFBU09UQUFFanJBQUJJN1FBQVNQREFBRWp5d0FCSSt3QUFTUUdBQUVrR2dBQkpDWUFBU1E1QUFFa1ZnQUJKSlFBQVNTZkFBRWtyQUFCSkxNQUFTUzZBQUVsQXdBQkpVMEFBU1ZwQUFFbGRRQUJKWWdBQVNXNkFBRWx6UUFCSmVnQUFTWDdBQUVtRmdBQkprQUFBU1pjQUFFbVlnQUJKcG9BQVNiVEFBRW04QUFCSnhjQUFTY3dBQUVuYmdBQko0RUFBU2VjQUFFbnFRQUJKNzBBQVNmYkFBRW9EZ0FCS0JZQUFTZ2ZBQUVvS0FBQktERUFBU2c2QUFFb1F3QUJLRXdBQVNoYUFBRW9Zd0FCS0d3QUFTaDZBQUVvZ3dBQktJd0FBU2lWQUFFb25nQUJLS1lBQVNpckFBRW94UUFCS1FFQUFTa0tBQUVwRXdBQktSd0FBU2tsQUFFcExnQUJLVGNBQVNsQUFBRXBTUUFCS1ZJQUFTbGJBQUVwWkFBQktXMEFBU2wyQUFFcGZ3QUJLWWdBQVNtUkFBRXBtZ0FCS2FNQUFTbXNBQUVwdFFBQktiNEFBU254QUFFcCtnQUJLZ01BQVNvTUFBRXFGUUFCS2g0QUFTb25BQUVxTUFBQktqa0FBU3BDQUFFcVN3QUJLa3NBQVNwVUFBRXFYQUFCS21RQUFTcHNBQUVxZEFBQktud0FBU3FFQUFFcXVBQUJLdDRBQVNybUFBRXJCQUFCS3g0QUFTc3hBQUVyUlFBQksxa0FBU3Q1QUFFcmtRQUJLNm9BQVN2QkFBRXIzUUFCSy9zQUFTd0lBQUVzSWdBQkxDWUFBU3dyQUFFc013QUJMRGdBQVN3OUFBRXNZd0FCTElBQUFTeVdBQUVzcXdBQkxNY0FBU3pvQUFFczhRQUJMUG9BQVMwREFBRXREQUFCTFJVQUFTMGVBQUV0SndBQkxUQUFBUzFJQUFFdFp3QUJMWTBBQVMyV0FBRXRzUUFCTGN3QUFTMzFBQUV1QlFBQkxsTUFBUzVjQUFFdVpRQUJMbTRBQVM1M0FBRXVnQUFCTG9rQUFTNlNBQUV1bXdBQkxxUUFBUzZ0QUFFdXRnQUJMcjhBQVM3SUFBRXUwUUFCTHRjQUFTN2dBQUV1NlFBQkx2SUFBUzc3QUFFdkJBQUJMdzBBQVM4V0FBRXZId0FCTHlnQUFTOHhBQUV2T2dBQkwwTUFBUzlNQUFFdlZRQUJMMTRBQVM5bkFBRXZjQUFCTDNrQUFTK0NBQUV2aXdBQkw2WUFBUyt1QUFFditRQUJNQ29BQVRCUUFBRXdZd0FCTUlRQUFURG1BQUV3OEFBQk1TMEFBVEZVQUFFeG5nQUJNYllBQVRIREFBRXgyd0FCTWZzQUFUSURBQUV5Q3dBQk1pTUFBVEpDQUFFeVNnQUJNbElBQVRKc0FBRXlod0FCTXFJQUFUSzlBQUV5MWdBQk12QUFBVE1MQUFFekpnQUJNMEFBQVROWkFBRXpZUUFCTTJrQUFUTjhBQUV6aEFBQk01UUFBRUFBQXl1QU1vQUdBRVlBQlVBQWdDWUFLb0Fpd0FBQVlrTmJRQUlBQWdBQUFBUkFOSUFBd0FCQkFrQUFBQmVBQUFBQXdBQkJBa0FBUUFhQUY0QUF3QUJCQWtBQWdBT0FIZ0FBd0FCQkFrQUF3QTBBSVlBQXdBQkJBa0FCQUFnQUxvQUF3QUJCQWtBQlFDUUFOb0FBd0FCQkFrQUJnQWVBV29BQXdBQkJBa0FCd0JFQVlnQUF3QUJCQWtBQ0FBcUFjd0FBd0FCQkFrQUNRQW9BZllBQXdBQkJBa0FDZ0JDQWg0QUF3QUJCQWtBQ3dBK0FtQUFBd0FCQkFrQURBQThBcDRBQXdBQkJBa0FEUUtXQXRvQUF3QUJCQWtBRGdBMEJYQUFBd0FCQkFrQUVBQVNCYVFBQXdBQkJBa0FFUUFNQmJZQVF3QnZBSEFBZVFCeUFHa0Fad0JvQUhRQUlBQXlBREFBTVFBMUFDQUFSd0J2QUc4QVp3QnNBR1VBSUFCSkFHNEFZd0F1QUNBQVFRQnNBR3dBSUFCU0FHa0Fad0JvQUhRQWN3QWdBRklBWlFCekFHVUFjZ0IyQUdVQVpBQXVBRTRBYndCMEFHOEFJQUJUQUdFQWJnQnpBQ0FBVFFCbEFHUUFVZ0JsQUdjQWRRQnNBR0VBY2dBeUFDNEFNQUF3QURBQU93QkhBRThBVHdCSEFEc0FUZ0J2QUhRQWJ3QlRBR0VBYmdCekFDMEFUUUJsQUdRQWFRQjFBRzBBVGdCdkFIUUFid0FnQUZNQVlRQnVBSE1BSUFCTkFHVUFaQUJwQUhVQWJRQldBR1VBY2dCekFHa0Fid0J1QUNBQU1nQXVBREFBTUFBd0FEc0FSd0JQQUU4QVJ3QTdBRzRBYndCMEFHOEFMUUJ6QUc4QWRRQnlBR01BWlFBNkFESUFNQUF4QURjQU1BQTVBREVBTlFBNkFEa0FNQUJsQUdZQU9RQTVBRE1BTXdBNEFEY0FZd0F3QURzQUlBQjBBSFFBWmdCaEFIVUFkQUJ2QUdnQWFRQnVBSFFBSUFBb0FIWUFNUUF1QURjQUtRQk9BRzhBZEFCdkFGTUFZUUJ1QUhNQUxRQk5BR1VBWkFCcEFIVUFiUUJPQUc4QWRBQnZBQ0FBYVFCekFDQUFZUUFnQUhRQWNnQmhBR1FBWlFCdEFHRUFjZ0JyQUNBQWJ3Qm1BQ0FBUndCdkFHOEFad0JzQUdVQUlBQkpBRzRBWXdBdUFFMEFid0J1QUc4QWRBQjVBSEFBWlFBZ0FFa0FiUUJoQUdjQWFRQnVBR2NBSUFCSkFHNEFZd0F1QUUwQWJ3QnVBRzhBZEFCNUFIQUFaUUFnQUVRQVpRQnpBR2tBWndCdUFDQUFWQUJsQUdFQWJRQkVBR1VBY3dCcEFHY0FiZ0JsQUdRQUlBQmlBSGtBSUFCTkFHOEFiZ0J2QUhRQWVRQndBR1VBSUFCa0FHVUFjd0JwQUdjQWJnQWdBSFFBWlFCaEFHMEFMZ0JvQUhRQWRBQndBRG9BTHdBdkFIY0Fkd0IzQUM0QVp3QnZBRzhBWndCc0FHVUFMZ0JqQUc4QWJRQXZBR2NBWlFCMEFDOEFiZ0J2QUhRQWJ3QXZBR2dBZEFCMEFIQUFPZ0F2QUM4QWR3QjNBSGNBTGdCdEFHOEFiZ0J2QUhRQWVRQndBR1VBTGdCakFHOEFiUUF2QUhNQWRBQjFBR1FBYVFCdkFGUUFhQUJwQUhNQUlBQkdBRzhBYmdCMEFDQUFVd0J2QUdZQWRBQjNBR0VBY2dCbEFDQUFhUUJ6QUNBQWJBQnBBR01BWlFCdUFITUFaUUJrQUNBQWRRQnVBR1FBWlFCeUFDQUFkQUJvQUdVQUlBQlRBRWtBVEFBZ0FFOEFjQUJsQUc0QUlBQkdBRzhBYmdCMEFDQUFUQUJwQUdNQVpRQnVBSE1BWlFBc0FDQUFWZ0JsQUhJQWN3QnBBRzhBYmdBZ0FERUFMZ0F4QUM0QUlBQlVBR2dBYVFCekFDQUFSZ0J2QUc0QWRBQWdBRk1BYndCbUFIUUFkd0JoQUhJQVpRQWdBR2tBY3dBZ0FHUUFhUUJ6QUhRQWNnQnBBR0lBZFFCMEFHVUFaQUFnQUc4QWJnQWdBR0VBYmdBZ0FDSUFRUUJUQUNBQVNRQlRBQ0lBSUFCQ0FFRUFVd0JKQUZNQUxBQWdBRmNBU1FCVUFFZ0FUd0JWQUZRQUlBQlhBRUVBVWdCU0FFRUFUZ0JVQUVrQVJRQlRBQ0FBVHdCU0FDQUFRd0JQQUU0QVJBQkpBRlFBU1FCUEFFNEFVd0FnQUU4QVJnQWdBRUVBVGdCWkFDQUFTd0JKQUU0QVJBQXNBQ0FBWlFCcEFIUUFhQUJsQUhJQUlBQmxBSGdBY0FCeUFHVUFjd0J6QUNBQWJ3QnlBQ0FBYVFCdEFIQUFiQUJwQUdVQVpBQXVBQ0FBVXdCbEFHVUFJQUIwQUdnQVpRQWdBRk1BU1FCTUFDQUFUd0J3QUdVQWJnQWdBRVlBYndCdUFIUUFJQUJNQUdrQVl3QmxBRzRBY3dCbEFDQUFaZ0J2QUhJQUlBQjBBR2dBWlFBZ0FITUFjQUJsQUdNQWFRQm1BR2tBWXdBZ0FHd0FZUUJ1QUdjQWRRQmhBR2NBWlFBc0FDQUFjQUJsQUhJQWJRQnBBSE1BY3dCcEFHOEFiZ0J6QUNBQVlRQnVBR1FBSUFCc0FHa0FiUUJwQUhRQVlRQjBBR2tBYndCdUFITUFJQUJuQUc4QWRnQmxBSElBYmdCcEFHNEFad0FnQUhrQWJ3QjFBSElBSUFCMUFITUFaUUFnQUc4QVpnQWdBSFFBYUFCcEFITUFJQUJHQUc4QWJnQjBBQ0FBVXdCdkFHWUFkQUIzQUdFQWNnQmxBQzRBYUFCMEFIUUFjQUE2QUM4QUx3QnpBR01BY2dCcEFIQUFkQUJ6QUM0QWN3QnBBR3dBTGdCdkFISUFad0F2QUU4QVJnQk1BRTRBYndCMEFHOEFJQUJUQUdFQWJnQnpBRTBBWlFCa0FHa0FkUUJ0QUFJQUFBQUFBQUQvbkFBeUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU1yZ0FBQVFJQkF3QURBQVFBQlFBR0FBY0FDQUFKQUFvQUN3QU1BQTBBRGdBUEFCQUFFUUFTQUJNQUZBQVZBQllBRndBWUFCa0FHZ0FiQUJ3QUhRQWVBQjhBSUFBaEFDSUFJd0FrQUNVQUpnQW5BQ2dBS1FBcUFDc0FMQUF0QUM0QUx3QXdBREVBTWdBekFEUUFOUUEyQURjQU9BQTVBRG9BT3dBOEFEMEFQZ0EvQUVBQVFRQkNBRU1BUkFCRkFFWUFSd0JJQUVrQVNnQkxBRXdBVFFCT0FFOEFVQUJSQUZJQVV3QlVBRlVBVmdCWEFGZ0FXUUJhQUZzQVhBQmRBRjRBWHdCZ0FHRUJCQUNqQUlRQWhRQzlBSllBNkFDR0FJNEFpd0NkQUtrQXBBRUZBSW9CQmdDREFKTUJCd0VJQUkwQkNRQ0lBTU1BM2dFS0FKNEFxZ0QxQVBRQTlnQ2lBSzBBeVFESEFLNEFZZ0JqQUpBQVpBRExBR1VBeUFES0FNOEF6QUROQU00QTZRQm1BTk1BMEFEUkFLOEFad0R3QUpFQTFnRFVBTlVBYUFEckFPMEFpUUJxQUdrQWF3QnRBR3dBYmdDZ0FHOEFjUUJ3QUhJQWN3QjFBSFFBZGdCM0FPb0FlQUI2QUhrQWV3QjlBSHdBdUFDaEFIOEFmZ0NBQUlFQTdBRHVBTG9CQ3dFTUFRMEJEZ0VQQVJBQS9RRCtBUkVCRWdFVEFSUUEvd0VBQVJVQkZnRVhBUUVCR0FFWkFSb0JHd0VjQVIwQkhnRWZBU0FCSVFFaUFTTUErQUQ1QVNRQkpRRW1BU2NCS0FFcEFTb0JLd0VzQVMwQkxnRXZBVEFCTVFFeUFUTUErZ0UwQVRVQk5nRTNBVGdCT1FFNkFUc0JQQUU5QVQ0QlB3RkFBVUVCUWdEaUFPTUJRd0ZFQVVVQlJnRkhBVWdCU1FGS0FVc0JUQUZOQVU0QlR3RlFBVkVBc0FDeEFWSUJVd0ZVQVZVQlZnRlhBVmdCV1FGYUFWc0Erd0Q4QU9RQTVRRmNBVjBCWGdGZkFXQUJZUUZpQVdNQlpBRmxBV1lCWndGb0FXa0JhZ0ZyQVd3QmJRRnVBVzhCY0FGeEFMc0JjZ0Z6QVhRQmRRRG1BT2NCZGdDbUFYY0JlQUY1QVhvQmV3RjhBWDBCZmdEWUFPRUEyZ0RiQU53QTNRRGdBTmtBM3dGL0FZQUJnUUdDQVlNQmhBR0ZBWVlCaHdHSUFZa0JpZ0dMQVl3QmpRR09BWThCa0FHUkFaSUJrd0dVQVpVQmxnR1hBWmdCbVFHYUFac0JuQUdkQVo0Qm53R2dBYUVCb2dHakFhUUJwUUdtQWFjQnFBR3BBYW9CcXdHc0FhMEJyZ0d2QWJBQnNRR3lBYk1CdEFHMUFiWUJ0d0NiQWJnQnVRRzZBYnNCdkFHOUFiNEJ2d0hBQWNFQndnSERBY1FCeFFIR0FjY0J5QUhKQWNvQnl3SE1BYzBCemdIUEFkQUIwUUhTQWRNQjFBSFZBZFlCMXdIWUFka0IyZ0hiQWR3QjNRSGVBZDhCNEFIaEFlSUI0d0hrQWVVQjVnSG5BZWdCNlFIcUFlc0I3QUh0QWU0Qjd3SHdBZkVCOGdIekFmUUI5UUgyQWZjQitBSDVBZm9CK3dIOEFmMEIvZ0gvQWdBQ0FRSUNBZ01DQkFJRkFnWUNCd0lJQWdrQ0NnSUxBZ3dDRFFJT0FnOENFQUlSQWhJQ0V3SVVBaFVDRmdJWEFoZ0NHUUlhQWhzQ0hBSWRBaDRDSHdJZ0FpRUNJZ0lqQWlRQ0pRSW1BaWNDS0FJcEFpb0NLd0N5QUxNQ0xBSXRBTFlBdHdERUFpNEF0QUMxQU1VQWdnRENBSWNBcXdER0FpOENNQUMrQUw4Q01RQzhBaklBOXdJekFqUUNOUUkyQWpjQ09BQ01BamtDT2dJN0Fqd0NQUUkrQWo4Q1FBSkJBa0lDUXdKRUFrVUNSZ0pIQWtnQ1NRSktBa3NDVEFKTkFrNENUd0pRQWxFQ1VnSlRBbFFDVlFKV0FsY0NXQUpaQWxvQ1d3SmNBbDBDWGdKZkFtQUNZUUppQW1NQ1pBSmxBbVlDWndKb0Fta0NhZ0pyQW13Q2JRSnVBbThDY0FKeEFuSUNjd0owQW5VQ2RnSjNBbmdDZVFKNkFuc0NmQUo5QW40Q2Z3S0FBb0VDZ2dLREFvUUNoUUtHQW9jQ2lBS0pBb29DaXdLTUFvMENqZ0tQQXBBQ2tRS1NBcE1DbEFLVkFwWUNsd0tZQXBrQ21nS2JBcHdDblFLZUFwOENvQUtoQXFJQ293S2tBcVVDcGdLbkFxZ0NxUUtxQXFzQ3JBS3RBcTRDcndLd0FyRUNzZ0t6QXJRQ3RRSzJBcmNDdUFLNUFyb0N1d0s4QXIwQ3ZnSy9Bc0FDd1FMQ0FzTUN4QUxGQXNZQ3h3TElBc2tDeWdMTEFzd0N6UUxPQXM4QzBBTFJBdElDMHdMVUF0VUMxZ0xYQXRnQzJRTGFBdHNDM0FMZEF0NEMzd0xnQXVFQzRnTGpBdVFDNVFMbUF1Y0M2QUxwQXVvQzZ3THNBdTBDN2dMdkF2QUM4UUx5QXZNQzlBTDFBdllDOXdMNEF2a0MrZ0w3QXZ3Qy9RTCtBdjhEQUFNQkF3SURBd01FQXdVREJnTUhBd2dEQ1FNS0F3c0REQU1OQXc0RER3TVFBeEVERWdNVEF4UURGUU1XQXhjREdBTVpBeG9ER3dNY0F4MERIZ01mQXlBRElRTWlBeU1ESkFNbEF5WURKd01vQXlrREtnTXJBeXdETFFNdUF5OERNQU14QXpJRE13TTBBelVETmdNM0F6Z0RPUU02QXpzRFBBTTlBejREUHdOQUEwRURRZ05EQTBRRFJRTkdBMGNEU0FOSkEwb0RTd05NQTAwRFRnTlBBMUFEVVFOU0ExTURWQU5WQTFZRFZ3TllBMWtEV2dOYkExd0RYUU5lQTE4RFlBTmhBMklEWXdOa0EyVURaZ05uQTJnRGFRTnFBMnNEYkFOdEEyNERid053QTNFRGNnTnpBM1FEZFFOMkEzY0RlQU41QTNvRGV3TjhBMzBEZmdOL0E0QURnUU9DQTRNRGhBT0ZBNFlEaHdPSUE0a0RpZ09MQTR3RGpRT09BNDhEa0FPUkE1SURrd09VQTVVRGxnT1hBNWdEbVFPYUE1c0RuQU9kQTU0RG53T2dBNkVEb2dPakE2UURwUU9tQTZjRHFBT3BBNm9EcXdPc0E2MERyZ092QTdBRHNRT3lBN01EdEFPMUE3WUR0d080QTdrRHVnTzdBN3dEdlFPK0E3OER3QVBCQThJRHd3UEVBOFVEeGdQSEE4Z0R5UVBLQThzRHpBUE5BODREendQUUE5RUQwZ1BUQTlRRDFRUFdBOWNEMkFQWkE5b0Qyd1BjQTkwRDNnUGZBK0FENFFQaUErTUQ1QVBsQStZRDV3UG9BK2tENmdQckErd0Q3UVB1QSs4RDhBUHhBL0lEOHdQMEEvVUQ5Z1AzQS9nRCtRUDZBL3NEL0FQOUEvNEQvd1FBQkFFRUFnUURCQVFFQlFRR0JBY0VDQVFKQkFvRUN3UU1CQTBFRGdRUEJCQUVFUVFTQkJNRUZBUVZCQllFRndRWUJCa0VHZ1FiQkJ3RUhRUWVCQjhFSUFRaEJDSUVJd1FrQkNVRUpnUW5CQ2dFS1FRcUJDc0VMQVF0QkM0RUx3UXdCREVFTWdRekJEUUVOUVEyQkRjRU9BUTVCRG9FT3dROEJEMEVQZ1EvQkVBRVFRUkNCRU1FUkFSRkJFWUVSd1JJQkVrRVNnUkxCRXdFVFFST0JFOEVVQVJSQkZJRVV3UlVCRlVFVmdSWEJGZ0VXUVJhQkZzRVhBUmRCRjRFWHdSZ0JHRUVZZ1JqQkdRRVpRUm1CR2NFYUFScEJHb0Vhd1JzQkcwRWJnUnZCSEFFY1FSeUJITUVkQVIxQkhZRWR3UjRCSGtFZWdSN0JId0VmUVIrQkg4RWdBU0JCSUlFZ3dTRUJJVUVoZ1NIQklnRWlRU0tCSXNFakFTTkJJNEVqd1NRQkpFRWtnU1RCSlFFbFFTV0JKY0VtQVNaQkpvRW13U2NCSjBFbmdTZkJLQUVvUVNpQktNRXBBU2xCS1lFcHdTb0JLa0VxZ1NyQkt3RXJRU3VCSzhFc0FTeEJMSUVzd1MwQkxVRXRnUzNCTGdFdVFTNkJMc0V2QVM5Qkw0RXZ3VEFCTUVFd2dUREJNUUV4UVRHQk1jRXlBVEpCTW9FeXdUTUJNMEV6Z1RQQk5BRTBRVFNCTk1FMUFUVkJOWUUxd1RZQk5rRTJnVGJCTndFM1FUZUJOOEU0QVRoQk9JRTR3VGtCT1VFNWdUbkJPZ0U2UVRxQk9zRTdBVHRCTzRFN3dUd0JQRUU4Z1R6QlBRRTlRVDJCUGNFK0FUNUJQb0Urd1Q4QlAwRS9nVC9CUUFGQVFVQ0JRTUZCQVVGQlFZRkJ3VUlCUWtGQ2dVTEJRd0ZEUVVPQlE4RkVBVVJCUklGRXdVVUJSVUZGZ1VYQlJnRkdRVWFCUnNGSEFVZEJSNEZId1VnQlNFRklnVWpCU1FGSlFVbUJTY0ZLQVVwQlNvRkt3VXNCUzBGTGdVdkJUQUZNUVV5QlRNRk5BVTFCVFlGTndVNEJUa0ZPZ1U3QlR3RlBRVStCVDhGUUFWQkJVSUZRd1ZFQlVVRlJnVkhCVWdGU1FWS0JVc0ZUQVZOQlU0RlR3VlFCVkVGVWdWVEJWUUZWUVZXQlZjRldBVlpCVm9GV3dWY0JWMEZYZ1ZmQldBRllRVmlCV01GWkFWbEJXWUZad1ZvQldrRmFnVnJCV3dGYlFWdUJXOEZjQVZ4QlhJRmN3VjBCWFVGZGdWM0JYZ0ZlUVY2QlhzRmZBVjlCWDRGZndXQUJZRUZnZ1dEQllRRmhRV0dCWWNGaUFXSkJZb0Zpd1dNQlkwRmpnV1BCWkFGa1FXU0JaTUZsQVdWQlpZRmx3V1lCWmtGbWdXYkJad0ZuUVdlQlo4Rm9BV2hCYUlGb3dXa0JhVUZwZ1duQmFnRnFRV3FCYXNGckFXdEJhNEZyd1d3QmJFRnNnV3pCYlFGdFFXMkJiY0Z1QVc1QmJvRnV3VzhCYjBGdmdXL0JjQUZ3UVhDQmNNRnhBWEZCY1lGeHdYSUJja0Z5Z1hMQmN3RnpRWE9CYzhGMEFYUkJkSUYwd1hVQmRVRjFnWFhCZGdGMlFYYUJkc0YzQVhkQmQ0RjN3WGdCZUVGNGdYakJlUUY1UVhtQmVjRjZBWHBCZW9GNndYc0JlMEY3Z1h2QmZBRjhRWHlCZk1GOUFYMUJmWUY5d1g0QmZrRitnWDdCZndGL1FYK0JmOEdBQVlCQmdJR0F3WUVCZ1VHQmdZSEJnZ0dDUVlLQmdzR0RBWU5CZzRHRHdZUUJoRUdFZ1lUQmhRR0ZRWVdCaGNHR0FZWkJob0dHd1ljQmgwR0hnWWZCaUFHSVFZaUJpTUdKQVlsQmlZR0p3WW9CaWtHS2dZckJpd0dMUVl1Qmk4R01BWXhCaklHTXdZMEJqVUdOZ1kzQmpnR09RWTZCanNHUEFZOUJqNEdQd1pBQmtFR1FnWkRCa1FHUlFaR0JrY0dTQVpKQmtvR1N3Wk1CazBHVGdaUEJsQUdVUVpTQmxNR1ZBWlZCbFlHVndaWUJsa0dXZ1piQmx3R1hRWmVCbDhHWUFaaEJtSUdZd1prQm1VR1pnWm5CbWdHYVFacUJtc0diQVp0Qm00R2J3WndCbkVHY2daekJuUUdkUVoyQm5jR2VBWjVCbm9HZXdaOEJuMEdmZ1ovQm9BR2dRYUNCb01HaEFhRkJvWUdod2FJQm9rR2lnYUxCb3dHalFhT0JvOEdrQWFSQnBJR2t3YVVCcFVHbGdhWEJwZ0dtUWFhQnBzR25BYWRCcDRHbndhZ0JxRUdvZ2FqQnFRR3BRYW1CcWNHcUFhcEJxb0dxd2FzQnEwR3JnYXZCckFHc1FheUJyTUd0QWExQnJZR3R3YTRCcmtHdWdhN0Jyd0d2UWErQnI4R3dBYkJCc0lHd3diRUJzVUd4Z2JIQnNnR3lRYktCc3NHekFiTkJzNEd6d2JRQnRFRzBnYlRCdFFHMVFiV0J0Y0cyQWJaQnRvRzJ3YmNCdDBHM2diZkJ1QUc0UWJpQnVNRzVBYmxCdVlHNXdib0J1a0c2Z2JyQnV3RzdRYnVCdThHOEFieEJ2SUc4d2IwQnZVRzlnYjNCdmdHK1FiNkJ2c0cvQWI5QnY0Ry93Y0FCd0VIQWdjREJ3UUhCUWNHQndjSENBY0pCd29IQ3djTUJ3MEhEZ2NQQnhBSEVRY1NCeE1IRkFjVkJ4WUhGd2NZQnhrSEdnY2JCeHdISFFjZUJ4OEhJQWNoQnlJSEl3Y2tCeVVISmdjbkJ5Z0hLUWNxQnlzSExBY3RCeTRITHdjd0J6RUhNZ2N6QnpRSE5RYzJCemNIT0FjNUJ6b0hPd2M4QnowSFBnYy9CMEFIUVFkQ0IwTUhSQWRGQjBZSFJ3ZElCMGtIU2dkTEIwd0hUUWRPQjA4SFVBZFJCMUlIVXdkVUIxVUhWZ2RYQjFnSFdRZGFCMXNIWEFkZEIxNEhYd2RnQjJFSFlnZGpCMlFIWlFkbUIyY0hhQWRwQjJvSGF3ZHNCMjBIYmdkdkIzQUhjUWR5QjNNSGRBZDFCM1lIZHdkNEIza0hlZ2Q3QjN3SGZRZCtCMzhIZ0FlQkI0SUhnd2VFQjRVSGhnZUhCNGdIaVFlS0I0c0hqQWVOQjQ0SGp3ZVFCNUVIa2dlVEI1UUhsUWVXQjVjSG1BZVpCNW9IbXdlY0I1MEhuZ2VmQjZBSG9RZWlCNk1IcEFlbEI2WUhwd2VvQjZrSHFnZXJCNndIclFldUI2OEhzQWV4QjdJSHN3ZTBCN1VIdGdlM0I3Z0h1UWU2QjdzSHZBZTlCNzRIdndmQUI4RUh3Z2ZEQjhRSHhRZkdCOGNIeUFmSkI4b0h5d2ZNQjgwSHpnZlBCOUFIMFFmU0I5TUgxQWZWQjlZSDF3ZllCOWtIMmdmYkI5d0gzUWZlQjk4SDRBZmhCK0lINHdma0IrVUg1Z2ZuQitnSDZRZnFCK3NIN0FmdEIrNEg3d2Z3Qi9FSDhnZnpCL1FIOVFmMkIvY0grQWY1Qi9vSCt3ZjhCLzBIL2dmL0NBQUlBUWdDQ0FNSUJBZ0ZDQVlJQndnSUNBa0lDZ2dMQ0F3SURRZ09DQThJRUFnUkNCSUlFd2dVQ0JVSUZnZ1hDQmdJR1FnYUNCc0lIQWdkQ0I0SUh3Z2dDQ0VJSWdnakNDUUlKUWdtQ0NjSUtBZ3BDQ29JS3dnc0NDMElMZ2d2Q0RBSU1RZ3lDRE1JTkFnMUNEWUlOd2c0Q0RrSU9nZzdDRHdJUFFnK0NEOElRQWhCQ0VJQTF3aERDRVFJUlFoR0NFY0lTQWhKQ0VvSVN3aE1DRTBJVGdoUENGQUlVUWhTQ0ZNSVZBaFZDRllJVndoWUNGa0lXZ2hiQ0Z3SVhRaGVDRjhJWUFoaENHSUlZd2hrQ0dVSVpnaG5DR2dJYVFocUNHc0liQWh0Q0c0SWJ3aHdDSEVJY2doekNIUUlkUWgyQ0hjSWVBaDVDSG9JZXdoOENIMElmZ2gvQ0lBSWdRaUNDSU1JaEFpRkNJWUlod2lJQ0lrSWlnaUxDSXdJalFpT0NJOElrQWlSQ0pJSWt3aVVDSlVJbGdpWENKZ0ltUWlhQ0pzSW5BaWRDSjRJbndpZ0NLRUlvZ2lqQ0tRSXBRaW1DS2NJcUFpcENLb0lxd2lzQ0swSXJnaXZDTEFJc1FpeUNMTUl0QWkxQ0xZSXR3aTRDTGtJdWdpN0NMd0l2UWkrQ0w4SXdBakJDTUlJd3dqRUNNVUl4Z2pIQ01nSXlRaktDTXNJekFqTkNNNEl6d2pRQ05FSTBnalRDTlFJMVFqV0NOY0kyQWpaQ05vSTJ3amNDTjBJM2dqZkNPQUk0UWppQ09NSTVBamxDT1lJNXdqb0NPa0k2Z2pyQ093STdRanVDTzhJOEFqeENQSUk4d2owQ1BVSTlnajNDUGdJK1FqNkNQc0kvQWo5Q1A0SS93a0FDUUVKQWdrRENRUUpCUWtHQ1FjSkNBa0pDUW9KQ3drTUNRMEpEZ2tQQ1JBSkVRa1NDUk1KRkFrVkNSWUpGd2tZQ1JrSkdna2JDUndKSFFrZUNSOEpJQWtoQ1NJSkl3a2tDU1VKSmdrbkNTZ0pLUWtxQ1NzSkxBa3RDUzRKTHdrd0NURUpNZ2t6Q1RRSk5RazJDVGNKT0FrNUNUb0pPd2s4Q1QwSlBnay9DVUFKUVFsQ0NVTUpSQWxGQ1VZSlJ3bElDVWtKU2dsTENVd0pUUWxPQ1U4SlVBbFJDVklKVXdsVUNWVUpWZ2xYQ1ZnSldRbGFDVnNKWEFsZENWNEpYd2xnQ1dFSllnbGpDV1FKWlFsbUNXY0phQWxwQ1dvSmF3bHNDVzBKYmdsdkNYQUpjUWx5Q1hNSmRBbDFDWFlKZHdsNENYa0plZ2w3Q1h3SmZRbCtDWDhKZ0FtQkNZSUpnd21FQ1lVSmhnbUhDWWdKaVFtS0NZc0pqQW1OQ1k0Smp3bVFDWkVKa2dtVENaUUpsUW1XQ1pjSm1BbVpDWm9KbXdtY0NaMEpuZ21mQ2FBSm9RbWlDYU1KcEFtbENhWUpwd21vQ2FrSnFnbXJDYXdKclFtdUNhOEpzQW14Q2JJSnN3bTBDYlVKdGdtM0NiZ0p1UW02Q2JzSnZBbTlDYjRKdnduQUNjRUp3Z25EQ2NRSnhRbkdDY2NKeUFuSkNjb0p5d25NQ2MwSnpnblBDZEFKMFFuU0NkTUoxQW5WQ2RZSjF3bllDZGtKMmduYkNkd0ozUW5lQ2Q4SjRBbmhDZUlKNHdua0NlVUo1Z25uQ2VnSjZRbnFDZXNKN0FudENlNEo3d253Q2ZFSjhnbnpDZlFKOVFuMkNmY0orQW41Q2ZvSit3bjhDZjBKL2duL0NnQUtBUW9DQ2dNS0JBb0ZDZ1lLQndvSUNna0tDZ29MQ2d3S0RRb09DZzhLRUFvUkNoSUtFd29VQ2hVS0Znb1hDaGdLR1FvYUNoc0tIQW9kQ2g0S0h3b2dDaUVLSWdvakNpUUtKUW9tQ2ljS0tBb3BDaW9LS3dvc0NpMEtMZ292Q2pBS01Rb3lDak1LTkFvMUNqWUtOd280Q2prS09nbzdDandLUFFvK0NqOEtRQXBCQ2tJS1F3cEVDa1VLUmdwSENrZ0tTUXBLQ2tzS1RBcE5DazRLVHdwUUNsRUtVZ3BUQ2xRS1ZRcFdDbGNLV0FwWkNsb0tXd3BjQ2wwS1hncGZDbUFLWVFwaUNtTUtaQXBsQ21ZS1p3cG9DbWtLYWdwckNtd0tiUXB1Q204S2NBcHhDbklLY3dwMENuVUtkZ3AzQ25nS2VRcDZDbnNLZkFwOUNuNEtmd3FBQ29FS2dncURDb1FLaFFxR0NvY0tpQXFKQ29vS2l3cU1DbzBLamdxUENwQUtrUXFTQ3BNS2xBcVZDcFlLbHdxWUNwa0ttZ3FiQ3B3S25RcWVDcDhLb0FxaENxSUtvd3FrQ3FVS3BncW5DcWdLcVFxcUNxc0tyQXF0Q3E0S3J3cXdDckVLc2dxekNyUUt0UXEyQ3JjS3VBcTVDcm9LdXdxOENyMEt2Z3EvQ3NBS3dRckNDc01LeEFyRkNzWUt4d3JJQ3NrS3lnckxDc3dLelFyT0NzOEswQXJSQ3RJSzB3clVDdFVLMWdyWEN0Z0syUXJhQ3RzSzNBcmRDdDRLM3dyZ0N1RUs0Z3JqQ3VRSzVRcm1DdWNLNkFycEN1b0s2d3JzQ3UwSzdncnZDdkFLOFFyeUN2TUs5QXIxQ3ZZSzl3cjRDdmtLK2dyN0N2d0svUXIrQ3Y4TEFBc0JDd0lMQXdzRUN3VUxCZ3NIQ3dnTENRc0tDd3NMREFzTkN3NExEd3NRQ3hFTEVnc1RDeFFMRlFzV0N4Y0xHQXNaQ3hvTEd3c2NDeDBMSGdzZkN5QUxJUXNpQ3lNTEpBc2xDeVlMSndzb0N5a0xLZ3NyQ3l3TExRc3VDeThMTUFzeEN6SUxNd3MwQ3pVTE5nczNDemdMT1FzNkN6c0xQQXM5Q3o0TFB3dEFDMEVMUWd0REMwUUxSUXRHQzBjTFNBdEpDMG9MU3d0TUMwMExUZ3RQQzFBTFVRdFNDMU1MVkF0VkMxWUxWd3RZQzFrTFdndGJDMXdMWFF0ZUMxOExZQXRoQzJJTFl3dGtDMlVMWmd0bkMyZ0xhUXRxQzJzTGJBdHRDMjRMYnd0d0MzRUxjZ3R6QzNRTGRRdDJDM2NMZUF0NUMzb0xld3Q4QzMwTGZndC9DNEFMZ1F1Q0M0TUxoQXVGQzRZTGh3dUlDNGtMaWd1TEM0d0xqUXVPQzQ4TGtBdVJDNUlMa3d1VUM1VUxsZ3VYQzVnTG1RdWFDNXNMbkF1ZEM1NExud3VnQzZFTG9ndWpDNlFMcFF1bUM2Y0xxQXVwQzZvTHF3dXNDNjBMcmd1dkM3QUxzUXV5QzdNTHRBdTFDN1lMdHd1NEM3a0x1Z3U3Qzd3THZRdStDNzhMd0F2QkM4SUx3d3ZFQzhVTHhndkhDOGdMeVF2S0M4c0x6QXZOQzg0THp3dlFDOUVMMGd2VEM5UUwxUXZXQzljTDJBdlpDOW9MMnd2Y0M5MEwzZ3ZmQytBTDRRdmlDK01MNUF2bEMrWUw1d3ZvQytrTDZndnJDK3dMN1F2dUMrOEw4QXZ4Qy9JTDh3djBDL1VMOWd2M0MvZ0wrUXY2Qy9zTC9BdjlDLzRML3d3QURBRU1BZ3dEREFRTUJRd0dEQWNNQ0F3SkRBb01Dd3dNREEwTURnd1BEQkFNRVF3U0RCTU1GQXdWREJZTUZ3d1lEQmtNR2d3YkRCd01IUXdlREI4TUlBd2hEQ0lNSXd3a0RDVU1KZ3duRENnTUtRd3FEQ3NNTEF3dERDNE1Md3d3RERFTU1nd3pERFFNTlF3MkREY01PQXc1RERvTU93dzhERDBNUGd3L0RFQU1RUXhDREVNTVJBeEZERVlNUnd4SURFa01TZ3hMREV3TVRReE9ERThNVUF4UkRGSU1Vd3hVREZVTVZneFhERmdNV1F4YURGc01YQXhkREY0TVh3eGdER0VNWWd4akRHUU1aUXhtREdjTWFBeHBER29NYXd4c0RHME1iZ3h2REhBTWNReHlESE1NZEF4MURIWU1kd3g0REhrTWVneDdESHdNZlF4K0RIOE1nQXlCRElJTWd3eUVESVVNaGd5SERJZ01pUXlLRElzTWpBeU5ESTRNand5UURKRU1rZ3lUREpRTWxReVdESmNNbUF5WkRKb01td3ljREowTW5neWZES0FNb1F5aURLTU1wQXlsREtZTXB3eW9ES2tNcWd5ckRLd01yUXl1REs4TXNBeXhETElNc3d5MERMVU10Z3kzRExnTXVReTZETHNNdkF5OURMNE12d3pBRE1FTXdnekRETVFNeFFST1ZVeE1Ba05TQjNWdWFUQXdRVEFIZFc1cE1EQkJSQWx2ZG1WeWMyTnZjbVVIZFc1cE1EQkNNZ2QxYm1rd01FSXpCM1Z1YVRBd1FqVUhkVzVwTURCQ09RZEJiV0ZqY205dUIyRnRZV055YjI0R1FXSnlaWFpsQm1GaWNtVjJaUWRCYjJkdmJtVnJCMkZ2WjI5dVpXc0xRMk5wY21OMWJXWnNaWGdMWTJOcGNtTjFiV1pzWlhnRVEyUnZkQVJqWkc5MEJrUmpZWEp2Ymdaa1kyRnliMjRHUkdOeWIyRjBCMFZ0WVdOeWIyNEhaVzFoWTNKdmJnWkZZbkpsZG1VR1pXSnlaWFpsQ2tWa2IzUmhZMk5sYm5RS1pXUnZkR0ZqWTJWdWRBZEZiMmR2Ym1WckIyVnZaMjl1WldzR1JXTmhjbTl1Qm1WallYSnZiZ3RIWTJseVkzVnRabXhsZUF0blkybHlZM1Z0Wm14bGVBUkhaRzkwQkdka2IzUUhkVzVwTURFeU1nZDFibWt3TVRJekMwaGphWEpqZFcxbWJHVjRDMmhqYVhKamRXMW1iR1Y0QkVoaVlYSUVhR0poY2daSmRHbHNaR1VHYVhScGJHUmxCMGx0WVdOeWIyNEhhVzFoWTNKdmJnWkpZbkpsZG1VR2FXSnlaWFpsQjBsdloyOXVaV3NIYVc5bmIyNWxhd0pKU2dKcGFndEtZMmx5WTNWdFpteGxlQXRxWTJseVkzVnRabXhsZUFkMWJta3dNVE0yQjNWdWFUQXhNemNNYTJkeVpXVnViR0Z1WkdsakJreGhZM1YwWlFac1lXTjFkR1VIZFc1cE1ERXpRZ2QxYm1rd01UTkRCa3hqWVhKdmJnWnNZMkZ5YjI0RVRHUnZkQVJzWkc5MEJrNWhZM1YwWlFadVlXTjFkR1VIZFc1cE1ERTBOUWQxYm1rd01UUTJCazVqWVhKdmJnWnVZMkZ5YjI0TGJtRndiM04wY205d2FHVURSVzVuQTJWdVp3ZFBiV0ZqY205dUIyOXRZV055YjI0R1QySnlaWFpsQm05aWNtVjJaUTFQYUhWdVoyRnlkVzFzWVhWMERXOW9kVzVuWVhKMWJXeGhkWFFHVW1GamRYUmxCbkpoWTNWMFpRZDFibWt3TVRVMkIzVnVhVEF4TlRjR1VtTmhjbTl1Qm5KallYSnZiZ1pUWVdOMWRHVUdjMkZqZFhSbEMxTmphWEpqZFcxbWJHVjRDM05qYVhKamRXMW1iR1Y0QjNWdWFUQXlNVUVIZFc1cE1ESXhRZ1pVWTJGeWIyNEdkR05oY205dUJGUmlZWElFZEdKaGNnWlZkR2xzWkdVR2RYUnBiR1JsQjFWdFlXTnliMjRIZFcxaFkzSnZiZ1pWWW5KbGRtVUdkV0p5WlhabEJWVnlhVzVuQlhWeWFXNW5EVlZvZFc1bllYSjFiV3hoZFhRTmRXaDFibWRoY25WdGJHRjFkQWRWYjJkdmJtVnJCM1Z2WjI5dVpXc0xWMk5wY21OMWJXWnNaWGdMZDJOcGNtTjFiV1pzWlhnTFdXTnBjbU4xYldac1pYZ0xlV05wY21OMWJXWnNaWGdHV21GamRYUmxCbnBoWTNWMFpRcGFaRzkwWVdOalpXNTBDbnBrYjNSaFkyTmxiblFGYkc5dVozTUtRWEpwYm1kaFkzVjBaUXBoY21sdVoyRmpkWFJsQjBGRllXTjFkR1VIWVdWaFkzVjBaUXRQYzJ4aGMyaGhZM1YwWlF0dmMyeGhjMmhoWTNWMFpRZDFibWt3TWpFNEIzVnVhVEF5TVRrRmRHOXViM01OWkdsbGNtVnphWE4wYjI1dmN3cEJiSEJvWVhSdmJtOXpDV0Z1YjNSbGJHVnBZUXhGY0hOcGJHOXVkRzl1YjNNSVJYUmhkRzl1YjNNSlNXOTBZWFJ2Ym05ekRFOXRhV055YjI1MGIyNXZjd3hWY0hOcGJHOXVkRzl1YjNNS1QyMWxaMkYwYjI1dmN4RnBiM1JoWkdsbGNtVnphWE4wYjI1dmN3VkJiSEJvWVFSQ1pYUmhCVWRoYlcxaEIzVnVhVEF6T1RRSFJYQnphV3h2YmdSYVpYUmhBMFYwWVFWVWFHVjBZUVJKYjNSaEJVdGhjSEJoQmt4aGJXSmtZUUpOZFFKT2RRSllhUWRQYldsamNtOXVBbEJwQTFKb2J3VlRhV2R0WVFOVVlYVUhWWEJ6YVd4dmJnTlFhR2tEUTJocEExQnphUWQxYm1rd00wRTVERWx2ZEdGa2FXVnlaWE5wY3c5VmNITnBiRzl1WkdsbGNtVnphWE1LWVd4d2FHRjBiMjV2Y3d4bGNITnBiRzl1ZEc5dWIzTUlaWFJoZEc5dWIzTUphVzkwWVhSdmJtOXpGSFZ3YzJsc2IyNWthV1Z5WlhOcGMzUnZibTl6QldGc2NHaGhCR0psZEdFRloyRnRiV0VGWkdWc2RHRUhaWEJ6YVd4dmJnUjZaWFJoQTJWMFlRVjBhR1YwWVFScGIzUmhCV3RoY0hCaEJteGhiV0prWVFkMWJta3dNMEpEQW01MUFuaHBCMjl0YVdOeWIyNERjbWh2Qm5OcFoyMWhNUVZ6YVdkdFlRTjBZWFVIZFhCemFXeHZiZ053YUdrRFkyaHBBM0J6YVFWdmJXVm5ZUXhwYjNSaFpHbGxjbVZ6YVhNUGRYQnphV3h2Ym1ScFpYSmxjMmx6REc5dGFXTnliMjUwYjI1dmN3eDFjSE5wYkc5dWRHOXViM01LYjIxbFoyRjBiMjV2Y3dsaFptbHBNVEF3TWpNSllXWnBhVEV3TURVeENXRm1hV2t4TURBMU1nbGhabWxwTVRBd05UTUpZV1pwYVRFd01EVTBDV0ZtYVdreE1EQTFOUWxoWm1scE1UQXdOVFlKWVdacGFURXdNRFUzQ1dGbWFXa3hNREExT0FsaFptbHBNVEF3TlRrSllXWnBhVEV3TURZd0NXRm1hV2t4TURBMk1RbGhabWxwTVRBd05qSUpZV1pwYVRFd01UUTFDV0ZtYVdreE1EQXhOd2xoWm1scE1UQXdNVGdKWVdacGFURXdNREU1Q1dGbWFXa3hNREF5TUFsaFptbHBNVEF3TWpFSllXWnBhVEV3TURJeUNXRm1hV2t4TURBeU5BbGhabWxwTVRBd01qVUpZV1pwYVRFd01ESTJDV0ZtYVdreE1EQXlOd2xoWm1scE1UQXdNamdKWVdacGFURXdNREk1Q1dGbWFXa3hNREF6TUFsaFptbHBNVEF3TXpFSllXWnBhVEV3TURNeUNXRm1hV2t4TURBek13bGhabWxwTVRBd016UUpZV1pwYVRFd01ETTFDV0ZtYVdreE1EQXpOZ2xoWm1scE1UQXdNemNKWVdacGFURXdNRE00Q1dGbWFXa3hNREF6T1FsaFptbHBNVEF3TkRBSllXWnBhVEV3TURReENXRm1hV2t4TURBME1nbGhabWxwTVRBd05ETUpZV1pwYVRFd01EUTBDV0ZtYVdreE1EQTBOUWxoWm1scE1UQXdORFlKWVdacGFURXdNRFEzQ1dGbWFXa3hNREEwT0FsaFptbHBNVEF3TkRrSllXWnBhVEV3TURZMUNXRm1hV2t4TURBMk5nbGhabWxwTVRBd05qY0pZV1pwYVRFd01EWTRDV0ZtYVdreE1EQTJPUWxoWm1scE1UQXdOekFKWVdacGFURXdNRGN5Q1dGbWFXa3hNREEzTXdsaFptbHBNVEF3TnpRSllXWnBhVEV3TURjMUNXRm1hV2t4TURBM05nbGhabWxwTVRBd056Y0pZV1pwYVRFd01EYzRDV0ZtYVdreE1EQTNPUWxoWm1scE1UQXdPREFKWVdacGFURXdNRGd4Q1dGbWFXa3hNREE0TWdsaFptbHBNVEF3T0RNSllXWnBhVEV3TURnMENXRm1hV2t4TURBNE5RbGhabWxwTVRBd09EWUpZV1pwYVRFd01EZzNDV0ZtYVdreE1EQTRPQWxoWm1scE1UQXdPRGtKWVdacGFURXdNRGt3Q1dGbWFXa3hNREE1TVFsaFptbHBNVEF3T1RJSllXWnBhVEV3TURrekNXRm1hV2t4TURBNU5BbGhabWxwTVRBd09UVUpZV1pwYVRFd01EazJDV0ZtYVdreE1EQTVOd2xoWm1scE1UQXdOekVKWVdacGFURXdNRGs1Q1dGbWFXa3hNREV3TUFsaFptbHBNVEF4TURFSllXWnBhVEV3TVRBeUNXRm1hV2t4TURFd013bGhabWxwTVRBeE1EUUpZV1pwYVRFd01UQTFDV0ZtYVdreE1ERXdOZ2xoWm1scE1UQXhNRGNKWVdacGFURXdNVEE0Q1dGbWFXa3hNREV3T1FsaFptbHBNVEF4TVRBSllXWnBhVEV3TVRrekNXRm1hV2t4TURBMU1BbGhabWxwTVRBd09UZ0dWMmR5WVhabEJuZG5jbUYyWlFaWFlXTjFkR1VHZDJGamRYUmxDVmRrYVdWeVpYTnBjd2wzWkdsbGNtVnphWE1HV1dkeVlYWmxCbmxuY21GMlpRbGhabWxwTURBeU1EZ05kVzVrWlhKelkyOXlaV1JpYkExeGRXOTBaWEpsZG1WeWMyVmtCbTFwYm5WMFpRWnpaV052Ym1RSlpYaGpiR0Z0WkdKc0NXNXpkWEJsY21sdmNnbGhabWxwTURnNU5ERUdjR1Z6WlhSaEJFVjFjbThKWVdacGFUWXhNalE0Q1dGbWFXazJNVEk0T1FsaFptbHBOakV6TlRJSGRXNXBNakV5TmdsbGMzUnBiV0YwWldRSmIyNWxaV2xuYUhSb0RIUm9jbVZsWldsbmFIUm9jd3RtYVhabFpXbG5hSFJvY3d4elpYWmxibVZwWjJoMGFITU5ZM2x5YVd4c2FXTmljbVYyWlJCallYSnZibU52YlcxaFlXTmpaVzUwQzJOdmJXMWhZV05qWlc1MEVXTnZiVzFoWVdOalpXNTBjbTkwWVhSbEIzVnVhVEl3TnpRSGRXNXBNakEzTlFkMWJta3lNRGMzQjNWdWFUSXdOemdIZFc1cE1qQXdNQWQxYm1reU1EQXhCM1Z1YVRJd01ESUhkVzVwTWpBd013ZDFibWt5TURBMEIzVnVhVEl3TURVSGRXNXBNakF3TmdkMWJta3lNREEzQjNWdWFUSXdNRGdIZFc1cE1qQXdPUWQxYm1reU1EQkJCM1Z1YVRJd01FSUhkVzVwUmtWR1JnZDFibWxHUmtaREIzVnVhVVpHUmtRSGRXNXBNREZHTUFkMWJta3dNa0pEQjNWdWFUQXpSREVIZFc1cE1ETkVNZ2QxYm1rd00wUTJCM1Z1YVRGRk0wVUhkVzVwTVVVelJnZDFibWt4UlRBd0IzVnVhVEZGTURFSGRXNXBNREpHTXdWUGFHOXliZ1Z2YUc5eWJnVlZhRzl5YmdWMWFHOXliZ1JvYjI5ckIzVnVhVEEwTURBSGRXNXBNRFF3UkFkMWJta3dORFV3QjNWdWFUQTBOVVFIZFc1cE1EUTJNQWQxYm1rd05EWXhCM1Z1YVRBME5qSUhkVzVwTURRMk13ZDFibWt3TkRZMEIzVnVhVEEwTmpVSGRXNXBNRFEyTmdkMWJta3dORFkzQjNWdWFUQTBOamdIZFc1cE1EUTJPUWQxYm1rd05EWkJCM1Z1YVRBME5rSUhkVzVwTURRMlF3ZDFibWt3TkRaRUIzVnVhVEEwTmtVSGRXNXBNRFEyUmdkMWJta3dORGN3QjNWdWFUQTBOekVIZFc1cE1EUTNNZ2QxYm1rd05EY3pCM1Z1YVRBME56UUhkVzVwTURRM05RZDFibWt3TkRjMkIzVnVhVEEwTnpjSGRXNXBNRFEzT0FkMWJta3dORGM1QjNWdWFUQTBOMEVIZFc1cE1EUTNRZ2QxYm1rd05EZERCM1Z1YVRBME4wUUhkVzVwTURRM1JRZDFibWt3TkRkR0IzVnVhVEEwT0RBSGRXNXBNRFE0TVFkMWJta3dORGd5QjNWdWFUQTBPRGdIZFc1cE1EUTRPUWQxYm1rd05EaEJCM1Z1YVRBME9FSUhkVzVwTURRNFF3ZDFibWt3TkRoRUIzVnVhVEEwT0VVSGRXNXBNRFE0UmdkMWJta3dORGt5QjNWdWFUQTBPVE1IZFc1cE1EUTVOQWQxYm1rd05EazFCM1Z1YVRBME9UWUhkVzVwTURRNU53ZDFibWt3TkRrNEIzVnVhVEEwT1RrSGRXNXBNRFE1UVFkMWJta3dORGxDQjNWdWFUQTBPVU1IZFc1cE1EUTVSQWQxYm1rd05EbEZCM1Z1YVRBME9VWUhkVzVwTURSQk1BZDFibWt3TkVFeEIzVnVhVEEwUVRJSGRXNXBNRFJCTXdkMWJta3dORUUwQjNWdWFUQTBRVFVIZFc1cE1EUkJOZ2QxYm1rd05FRTNCM1Z1YVRBMFFUZ0hkVzVwTURSQk9RZDFibWt3TkVGQkIzVnVhVEEwUVVJSGRXNXBNRFJCUXdkMWJta3dORUZFQjNWdWFUQTBRVVVIZFc1cE1EUkJSZ2QxYm1rd05FSXdCM1Z1YVRBMFFqRUhkVzVwTURSQ01nZDFibWt3TkVJekIzVnVhVEEwUWpRSGRXNXBNRFJDTlFkMWJta3dORUkyQjNWdWFUQTBRamNIZFc1cE1EUkNPQWQxYm1rd05FSTVCM1Z1YVRBMFFrRUhkVzVwTURSQ1FnZDFibWt3TkVKREIzVnVhVEEwUWtRSGRXNXBNRFJDUlFkMWJta3dORUpHQjNWdWFUQTBRekFIZFc1cE1EUkRNUWQxYm1rd05FTXlCM1Z1YVRBMFF6TUhkVzVwTURSRE5BZDFibWt3TkVNMUIzVnVhVEEwUXpZSGRXNXBNRFJETndkMWJta3dORU00QjNWdWFUQTBRemtIZFc1cE1EUkRRUWQxYm1rd05FTkNCM1Z1YVRBMFEwTUhkVzVwTURSRFJBZDFibWt3TkVORkIzVnVhVEEwUTBZSGRXNXBNRFJFTUFkMWJta3dORVF4QjNWdWFUQTBSRElIZFc1cE1EUkVNd2QxYm1rd05FUTBCM1Z1YVRBMFJEVUhkVzVwTURSRU5nZDFibWt3TkVRM0IzVnVhVEEwUkRnSGRXNXBNRFJFT1FkMWJta3dORVJCQjNWdWFUQTBSRUlIZFc1cE1EUkVRd2QxYm1rd05FUkVCM1Z1YVRBMFJFVUhkVzVwTURSRVJnZDFibWt3TkVVd0IzVnVhVEEwUlRFSGRXNXBNRFJGTWdkMWJta3dORVV6QjNWdWFUQTBSVFFIZFc1cE1EUkZOUWQxYm1rd05FVTJCM1Z1YVRBMFJUY0hkVzVwTURSRk9BZDFibWt3TkVVNUIzVnVhVEEwUlVFSGRXNXBNRFJGUWdkMWJta3dORVZEQjNWdWFUQTBSVVFIZFc1cE1EUkZSUWQxYm1rd05FVkdCM1Z1YVRBMFJqQUhkVzVwTURSR01RZDFibWt3TkVZeUIzVnVhVEEwUmpNSGRXNXBNRFJHTkFkMWJta3dORVkxQjNWdWFUQTBSallIZFc1cE1EUkdOd2QxYm1rd05FWTRCM1Z1YVRBMFJqa0hkVzVwTURSR1FRZDFibWt3TkVaQ0IzVnVhVEEwUmtNSGRXNXBNRFJHUkFkMWJta3dORVpGQjNWdWFUQTBSa1lIZFc1cE1EVXdNQWQxYm1rd05UQXhCM1Z1YVRBMU1ESUhkVzVwTURVd013ZDFibWt3TlRBMEIzVnVhVEExTURVSGRXNXBNRFV3TmdkMWJta3dOVEEzQjNWdWFUQTFNRGdIZFc1cE1EVXdPUWQxYm1rd05UQkJCM1Z1YVRBMU1FSUhkVzVwTURVd1F3ZDFibWt3TlRCRUIzVnVhVEExTUVVSGRXNXBNRFV3UmdkMWJta3dOVEV3QjNWdWFUQTFNVEVIZFc1cE1EVXhNZ2QxYm1rd05URXpCM1Z1YVRGRlFUQUhkVzVwTVVWQk1RZDFibWt4UlVFeUIzVnVhVEZGUVRNSGRXNXBNVVZCTkFkMWJta3hSVUUxQjNWdWFURkZRVFlIZFc1cE1VVkJOd2QxYm1reFJVRTRCM1Z1YVRGRlFUa0hkVzVwTVVWQlFRZDFibWt4UlVGQ0IzVnVhVEZGUVVNSGRXNXBNVVZCUkFkMWJta3hSVUZGQjNWdWFURkZRVVlIZFc1cE1VVkNNQWQxYm1reFJVSXhCM1Z1YVRGRlFqSUhkVzVwTVVWQ013ZDFibWt4UlVJMEIzVnVhVEZGUWpVSGRXNXBNVVZDTmdkMWJta3hSVUkzQjNWdWFURkZRamdIZFc1cE1VVkNPUWQxYm1reFJVSkJCM1Z1YVRGRlFrSUhkVzVwTVVWQ1F3ZDFibWt4UlVKRUIzVnVhVEZGUWtVSGRXNXBNVVZDUmdkMWJta3hSVU13QjNWdWFURkZRekVIZFc1cE1VVkRNZ2QxYm1reFJVTXpCM1Z1YVRGRlF6UUhkVzVwTVVWRE5RZDFibWt4UlVNMkIzVnVhVEZGUXpjSGRXNXBNVVZET0FkMWJta3hSVU01QjNWdWFURkZRMEVIZFc1cE1VVkRRZ2QxYm1reFJVTkRCM1Z1YVRGRlEwUUhkVzVwTVVWRFJRZDFibWt4UlVOR0IzVnVhVEZGUkRBSGRXNXBNVVZFTVFkMWJta3hSVVF5QjNWdWFURkZSRE1IZFc1cE1VVkVOQWQxYm1reFJVUTFCM1Z1YVRGRlJEWUhkVzVwTVVWRU53ZDFibWt4UlVRNEIzVnVhVEZGUkRrSGRXNXBNVVZFUVFkMWJta3hSVVJDQjNWdWFURkZSRU1IZFc1cE1VVkVSQWQxYm1reFJVUkZCM1Z1YVRGRlJFWUhkVzVwTVVWRk1BZDFibWt4UlVVeEIzVnVhVEZGUlRJSGRXNXBNVVZGTXdkMWJta3hSVVUwQjNWdWFURkZSVFVIZFc1cE1VVkZOZ2QxYm1reFJVVTNCM1Z1YVRGRlJUZ0hkVzVwTVVWRk9RZDFibWt4UlVWQkIzVnVhVEZGUlVJSGRXNXBNVVZGUXdkMWJta3hSVVZFQjNWdWFURkZSVVVIZFc1cE1VVkZSZ2QxYm1reFJVWXdCM1Z1YVRGRlJqRUhkVzVwTVVWR05BZDFibWt4UlVZMUIzVnVhVEZGUmpZSGRXNXBNVVZHTndkMWJta3hSVVk0QjNWdWFURkZSamtIZFc1cE1qQkJRaE5qYVhKamRXMW1iR1Y0WVdOMWRHVmpiMjFpRTJOcGNtTjFiV1pzWlhobmNtRjJaV052YldJU1kybHlZM1Z0Wm14bGVHaHZiMnRqYjIxaUUyTnBjbU4xYldac1pYaDBhV3hrWldOdmJXSU9ZbkpsZG1WaFkzVjBaV052YldJT1luSmxkbVZuY21GMlpXTnZiV0lOWW5KbGRtVm9iMjlyWTI5dFlnNWljbVYyWlhScGJHUmxZMjl0WWhCamVYSnBiR3hwWTJodmIydHNaV1owRVdONWNtbHNiR2xqWW1sbmFHOXZhMVZEQjNWdWFUQXhOaklIZFc1cE1ERTJNd2QxYm1rd01UZ3dCM1Z1YVRBeE9ERUhkVzVwTURFNE1nZDFibWt3TVRnekIzVnVhVEF4T0RRSGRXNXBNREU0TlFkMWJta3dNVGcyQjNWdWFUQXhPRGNIZFc1cE1ERTRPQWQxYm1rd01UZzVCM1Z1YVRBeE9FRUhkVzVwTURFNFFnZDFibWt3TVRoREIzVnVhVEF4T0VRSGRXNXBNREU0UlFkMWJta3dNVGhHQjNWdWFUQXhPVEFIZFc1cE1ERTVNUWQxYm1rd01Ua3pCM1Z1YVRBeE9UUUhkVzVwTURFNU5RZDFibWt3TVRrMkIzVnVhVEF4T1RjSGRXNXBNREU1T0FkMWJta3dNVGs1QjNWdWFUQXhPVUVIZFc1cE1ERTVRZ2QxYm1rd01UbERCM1Z1YVRBeE9VUUhkVzVwTURFNVJRZDFibWt3TVRsR0IzVnVhVEF4UVRJSGRXNXBNREZCTXdkMWJta3dNVUUwQjNWdWFUQXhRVFVIZFc1cE1ERkJOZ2QxYm1rd01VRTNCM1Z1YVRBeFFUZ0hkVzVwTURGQk9RZDFibWt3TVVGQkIzVnVhVEF4UVVJSGRXNXBNREZCUXdkMWJta3dNVUZFQjNWdWFUQXhRVVVIZFc1cE1ERkNNUWQxYm1rd01VSXlCM1Z1YVRBeFFqTUhkVzVwTURGQ05BZDFibWt3TVVJMUIzVnVhVEF4UWpZSGRXNXBNREZDTndkMWJta3dNVUk0QjNWdWFUQXhRamtIZFc1cE1ERkNRUWQxYm1rd01VSkNCM1Z1YVRBeFFrTUhkVzVwTURGQ1JBZDFibWt3TVVKRkIzVnVhVEF4UWtZSGRXNXBNREZETUFkMWJta3dNVU14QjNWdWFUQXhReklIZFc1cE1ERkRNd2QxYm1rd01VTTBCM1Z1YVRBeFF6VUhkVzVwTURGRE5nZDFibWt3TVVNM0IzVnVhVEF4UXpnSGRXNXBNREZET1FkMWJta3dNVU5CQjNWdWFUQXhRMElIZFc1cE1ERkRRd2QxYm1rd01VTkVCM1Z1YVRBeFEwVUhkVzVwTURGRFJnZDFibWt3TVVRd0IzVnVhVEF4UkRFSGRXNXBNREZFTWdkMWJta3dNVVF6QjNWdWFUQXhSRFFIZFc1cE1ERkVOUWQxYm1rd01VUTJCM1Z1YVRBeFJEY0hkVzVwTURGRU9BZDFibWt3TVVRNUIzVnVhVEF4UkVFSGRXNXBNREZFUWdkMWJta3dNVVJEQjNWdWFUQXhSRVVIZFc1cE1ERkVSZ2QxYm1rd01VVXdCM1Z1YVRBeFJURUhkVzVwTURGRk1nZDFibWt3TVVVekIzVnVhVEF4UlRRSGRXNXBNREZGTlFkMWJta3dNVVUyQjNWdWFUQXhSVGNIZFc1cE1ERkZPQWQxYm1rd01VVTVCM1Z1YVRBeFJVRUhkVzVwTURGRlFnZDFibWt3TVVWREIzVnVhVEF4UlVRSGRXNXBNREZGUlFkMWJta3dNVVZHQjNWdWFUQXhSakVIZFc1cE1ERkdNZ2QxYm1rd01VWXpCM1Z1YVRBeFJqUUhkVzVwTURGR05RZDFibWt3TVVZMkIzVnVhVEF4UmpjSGRXNXBNREZHT0FkMWJta3dNVVk1QjNWdWFUQXlNREFIZFc1cE1ESXdNUWQxYm1rd01qQXlCM1Z1YVRBeU1ETUhkVzVwTURJd05BZDFibWt3TWpBMUIzVnVhVEF5TURZSGRXNXBNREl3TndkMWJta3dNakE0QjNWdWFUQXlNRGtIZFc1cE1ESXdRUWQxYm1rd01qQkNCM1Z1YVRBeU1FTUhkVzVwTURJd1JBZDFibWt3TWpCRkIzVnVhVEF5TUVZSGRXNXBNREl4TUFkMWJta3dNakV4QjNWdWFUQXlNVElIZFc1cE1ESXhNd2QxYm1rd01qRTBCM1Z1YVRBeU1UVUhkVzVwTURJeE5nZDFibWt3TWpFM0IzVnVhVEF5TVVNSGRXNXBNREl4UkFkMWJta3dNakZGQjNWdWFUQXlNVVlIZFc1cE1ESXlNQWQxYm1rd01qSXhCM1Z1YVRBeU1qSUhkVzVwTURJeU13ZDFibWt3TWpJMEIzVnVhVEF5TWpVSGRXNXBNREl5TmdkMWJta3dNakkzQjNWdWFUQXlNamdIZFc1cE1ESXlPUWQxYm1rd01qSkJCM1Z1YVRBeU1rSUhkVzVwTURJeVF3ZDFibWt3TWpKRUIzVnVhVEF5TWtVSGRXNXBNREl5UmdkMWJta3dNak13QjNWdWFUQXlNekVIZFc1cE1ESXpNZ2QxYm1rd01qTXpCM1Z1YVRBeU16UUhkVzVwTURJek5RZDFibWt3TWpNMkIzVnVhVEF5TXpnSGRXNXBNREl6T1FkMWJta3dNak5CQjNWdWFUQXlNMElIZFc1cE1ESXpRd2QxYm1rd01qTkVCM1Z1YVRBeU0wVUhkVzVwTURJelJnZDFibWt3TWpRd0IzVnVhVEF5TkRFSGRXNXBNREkwTWdkMWJta3dNalF6QjNWdWFUQXlORFFIZFc1cE1ESTBOUWQxYm1rd01qUTJCM1Z1YVRBeU5EY0hkVzVwTURJME9BZDFibWt3TWpRNUIzVnVhVEF5TkVFSGRXNXBNREkwUWdkMWJta3dNalJEQjNWdWFUQXlORVFIZFc1cE1ESTBSUWQxYm1rd01qUkdCM1Z1YVRBeU5UQUhkVzVwTURJMU1RZDFibWt3TWpVeUIzVnVhVEF5TlRNSGRXNXBNREkxTkFkMWJta3dNalUxQjNWdWFUQXlOVFlIZFc1cE1ESTFOd2QxYm1rd01qVTRCM1Z1YVRBeU5Ua0hkVzVwTURJMVFnZDFibWt3TWpWRkIzVnVhVEF5TlVZSGRXNXBNREkyTUFkMWJta3dNall4QjNWdWFUQXlOaklIZFc1cE1ESTJNd2QxYm1rd01qWTBCM1Z1YVRBeU5qVUhkVzVwTURJMk5nZDFibWt3TWpZM0IzVnVhVEF5TmpnSmFXOTBZVXhoZEdsdUIzVnVhVEF5TmtFSGRXNXBNREkyUWdkMWJta3dNalpEQjNWdWFUQXlOa1FIZFc1cE1ESTJSUWQxYm1rd01qWkdCM1Z1YVRBeU56QUhkVzVwTURJM01RZDFibWt3TWpjeUIzVnVhVEF5TnpNSGRXNXBNREkzTkFkMWJta3dNamMxQjNWdWFUQXlOellMYjIxbFoyRmpiRzl6WldRSGRXNXBNREkzT0FkMWJta3dNamM1QjNWdWFUQXlOMEVIZFc1cE1ESTNRZ2QxYm1rd01qZERCM1Z1YVRBeU4wUUhkVzVwTURJM1JRZDFibWt3TWpkR0IzVnVhVEF5T0RBSGRXNXBNREk0TVFkMWJta3dNamd5QjNWdWFUQXlPRE1IZFc1cE1ESTROQWQxYm1rd01qZzFCM1Z1YVRBeU9EWUhkVzVwTURJNE53ZDFibWt3TWpnNEIzVnVhVEF5T0RrSGRXNXBNREk0UVFkMWJta3dNamhDQjNWdWFUQXlPRU1IZFc1cE1ESTRSQWQxYm1rd01qaEZCM1Z1YVRBeU9FWUhkVzVwTURJNU1BZDFibWt3TWpreEIzVnVhVEF5T1RJSGRXNXBNREk1TXdkMWJta3dNamswQjNWdWFUQXlPVFVOWjJ4dmRIUmhiSFIxY201bFpBZDFibWt3TWprM0IzVnVhVEF5T1RnSGRXNXBNREk1T1FkMWJta3dNamxCQjNWdWFUQXlPVUlIZFc1cE1ESTVRd2QxYm1rd01qbEVCM1Z1YVRBeU9VVUhkVzVwTURJNVJnZDFibWt3TWtFd0IzVnVhVEF5UVRFSGRXNXBNREpCTWdWa2VteHBad2QxYm1rd01rRTBDV1I2YkdsblkzVnliQVYwYzJ4cFp3ZDFibWt3TWtFM0NYUmpiR2xuWTNWeWJBZDFibWt3TWtFNUIzVnVhVEF5UVVFSGRXNXBNREpCUWdkMWJta3dNa0ZEQjNWdWFUQXlRVVFIZFc1cE1ESkJSUWQxYm1rd01rRkdCM1Z1YVRBeVFqQUhkVzVwTURKQ01RZDFibWt3TWtJeUIzVnVhVEF5UWpNSGRXNXBNREpDTkFkMWJta3dNa0kxQjNWdWFUQXlRallIZFc1cE1ESkNOd2QxYm1rd01rSTRCM1Z1YVRBeVFqa0hkVzVwTURKQ1FRZDFibWt3TWtKQ0IzVnVhVEF5UWtRSGRXNXBNREpDUlFkMWJta3dNa0pHQjNWdWFUQXlRekFIZFc1cE1ESkRNUWQxYm1rd01rTXlCM1Z1YVRBeVF6TUhkVzVwTURKRE5BZDFibWt3TWtNMUIzVnVhVEF5UXpnSGRXNXBNREpEUVFkMWJta3dNa05DQjNWdWFUQXlRME1IZFc1cE1ESkRSQWQxYm1rd01rTkZCM1Z1YVRBeVEwWUhkVzVwTURKRU1BZDFibWt3TWtReEIzVnVhVEF5UkRJSGRXNXBNREpFTXdkMWJta3dNa1EwQjNWdWFUQXlSRFVIZFc1cE1ESkVOZ2QxYm1rd01rUTNCM1Z1YVRBeVJFWUhkVzVwTURKRk1BZDFibWt3TWtVeEIzVnVhVEF5UlRJSGRXNXBNREpGTXdkMWJta3dNa1UwQjNWdWFUQXlSVFVIZFc1cE1ESkZOZ2QxYm1rd01rVTNCM1Z1YVRBeVJUZ0hkVzVwTURKRk9RZDFibWt3TWtWQkIzVnVhVEF5UlVJSGRXNXBNREpGUXdkMWJta3dNa1ZFQjNWdWFUQXlSVVVIZFc1cE1ESkZSZ2QxYm1rd01rWXdCM1Z1YVRBeVJqRUhkVzVwTURKR01nZDFibWt3TWtZMEIzVnVhVEF5UmpVSGRXNXBNREpHTmdkMWJta3dNa1kzQjNWdWFUQXlSamdIZFc1cE1ESkdPUWQxYm1rd01rWkJCM1Z1YVRBeVJrSUhkVzVwTURKR1F3ZDFibWt3TWtaRUIzVnVhVEF5UmtVSGRXNXBNREpHUmcxb2IyOXJZV0p2ZG1WamIyMWlCM1Z1YVRBek56UUhkVzVwTURNM05RZDFibWt3TXpkQkIzVnVhVEF6TjBJSGRXNXBNRE0zUXdkMWJta3dNemRFQjNWdWFUQXpOMFVIZFc1cE1ETkVNQWQxYm1rd00wUXpCM1Z1YVRBelJEUUVjR2hwTVFkMWJta3dNMFEzQjNWdWFUQXpSRGdIZFc1cE1ETkVPUWQxYm1rd00wUkJCM1Z1YVRBelJFSUhkVzVwTURORVF3ZDFibWt3TTBSRUIzVnVhVEF6UkVVSGRXNXBNRE5FUmdkMWJta3dNMFV3QjNWdWFUQXpSVEVIZFc1cE1ETkdNQWQxYm1rd00wWXhCM1Z1YVRBelJqSUhkVzVwTUROR013ZDFibWt3TTBZMEIzVnVhVEF6UmpVSGRXNXBNRE5HTmdkMWJta3dNMFkzQjNWdWFUQXpSamdIZFc1cE1ETkdPUWQxYm1rd00wWkJCM1Z1YVRBelJrSUhkVzVwTUROR1F3ZDFibWt3TTBaRUIzVnVhVEF6UmtVSGRXNXBNRE5HUmdkMWJta3dOVEZCQjNWdWFUQTFNVUlIZFc1cE1EVXhRd2QxYm1rd05URkVCM1Z1YVRGRU1EQUhkVzVwTVVRd01RZDFibWt4UkRBeUIzVnVhVEZFTURNSGRXNXBNVVF3TkFkMWJta3hSREExQjNWdWFURkVNRFlIZFc1cE1VUXdOd2QxYm1reFJEQTRCM1Z1YVRGRU1Ea0hkVzVwTVVRd1FRZDFibWt4UkRCQ0IzVnVhVEZFTUVNSGRXNXBNVVF3UkFkMWJta3hSREJGQjNWdWFURkVNRVlIZFc1cE1VUXhNQWQxYm1reFJERXhCM1Z1YVRGRU1USUhkVzVwTVVReE13ZDFibWt4UkRFMEIzVnVhVEZFTVRVSGRXNXBNVVF4TmdkMWJta3hSREUzQjNWdWFURkVNVGdIZFc1cE1VUXhPUWQxYm1reFJERkJCM1Z1YVRGRU1VSUhkVzVwTVVReFF3ZDFibWt4UkRGRUIzVnVhVEZFTVVVSGRXNXBNVVF4UmdkMWJta3hSREl3QjNWdWFURkVNakVIZFc1cE1VUXlNZ2QxYm1reFJESXpCM1Z1YVRGRU1qUUhkVzVwTVVReU5RZDFibWt4UkRJMkIzVnVhVEZFTWpjSGRXNXBNVVF5T0FkMWJta3hSREk1QjNWdWFURkVNa0VIZFc1cE1VUXlRZ2QxYm1reFJESkRCM1Z1YVRGRU1rUUhkVzVwTVVReVJRZDFibWt4UkRKR0IzVnVhVEZFTXpBSGRXNXBNVVF6TVFkMWJta3hSRE15QjNWdWFURkVNek1IZFc1cE1VUXpOQWQxYm1reFJETTFCM1Z1YVRGRU16WUhkVzVwTVVRek53ZDFibWt4UkRNNEIzVnVhVEZFTXprSGRXNXBNVVF6UVFkMWJta3hSRE5DQjNWdWFURkVNME1IZFc1cE1VUXpSQWQxYm1reFJETkZCM1Z1YVRGRU0wWUhkVzVwTVVRME1BZDFibWt4UkRReEIzVnVhVEZFTkRJSGRXNXBNVVEwTXdkMWJta3hSRFEwQjNWdWFURkVORFVIZFc1cE1VUTBOZ2QxYm1reFJEUTNCM1Z1YVRGRU5EZ0hkVzVwTVVRME9RZDFibWt4UkRSQkIzVnVhVEZFTkVJSGRXNXBNVVEwUXdkMWJta3hSRFJFQjNWdWFURkVORVVIZFc1cE1VUTBSZ2QxYm1reFJEVXdCM1Z1YVRGRU5URUhkVzVwTVVRMU1nZDFibWt4UkRVekIzVnVhVEZFTlRRSGRXNXBNVVExTlFkMWJta3hSRFUyQjNWdWFURkVOVGNIZFc1cE1VUTFPQWQxYm1reFJEVTVCM1Z1YVRGRU5VRUhkVzVwTVVRMVFnZDFibWt4UkRWREIzVnVhVEZFTlVRSGRXNXBNVVExUlFkMWJta3hSRFZHQjNWdWFURkVOakFIZFc1cE1VUTJNUWQxYm1reFJEWXlCM1Z1YVRGRU5qTUhkVzVwTVVRMk5BZDFibWt4UkRZMUIzVnVhVEZFTmpZSGRXNXBNVVEyTndkMWJta3hSRFk0QjNWdWFURkVOamtIZFc1cE1VUTJRUWQxYm1reFJEWkNCM1Z1YVRGRU5rTUhkVzVwTVVRMlJBZDFibWt4UkRaRkIzVnVhVEZFTmtZSGRXNXBNVVEzTUFkMWJta3hSRGN4QjNWdWFURkVOeklIZFc1cE1VUTNNd2QxYm1reFJEYzBCM1Z1YVRGRU56VUhkVzVwTVVRM05nZDFibWt4UkRjM0IzVnVhVEZFTnpnSGRXNXBNVVEzT1FkMWJta3hSRGRCQjNWdWFURkVOMElIZFc1cE1VUTNRd2QxYm1reFJEZEVCM1Z1YVRGRU4wVUhkVzVwTVVRM1JnZDFibWt4UkRnd0IzVnVhVEZFT0RFSGRXNXBNVVE0TWdkMWJta3hSRGd6QjNWdWFURkVPRFFIZFc1cE1VUTROUWQxYm1reFJEZzJCM1Z1YVRGRU9EY0hkVzVwTVVRNE9BZDFibWt4UkRnNUIzVnVhVEZFT0VFSGRXNXBNVVE0UWdkMWJta3hSRGhEQjNWdWFURkVPRVFIZFc1cE1VUTRSUWQxYm1reFJEaEdCM1Z1YVRGRU9UQUhkVzVwTVVRNU1RZDFibWt4UkRreUIzVnVhVEZFT1RNSGRXNXBNVVE1TkFkMWJta3hSRGsxQjNWdWFURkVPVFlIZFc1cE1VUTVOd2QxYm1reFJEazRCM1Z1YVRGRU9Ua0hkVzVwTVVRNVFRZDFibWt4UkRsQ0IzVnVhVEZFT1VNSGRXNXBNVVE1UkFkMWJta3hSRGxGQjNWdWFURkVPVVlIZFc1cE1VUkJNQWQxYm1reFJFRXhCM1Z1YVRGRVFUSUhkVzVwTVVSQk13ZDFibWt4UkVFMEIzVnVhVEZFUVRVSGRXNXBNVVJCTmdkMWJta3hSRUUzQjNWdWFURkVRVGdIZFc1cE1VUkJPUWQxYm1reFJFRkJCM1Z1YVRGRVFVSUhkVzVwTVVSQlF3ZDFibWt4UkVGRUIzVnVhVEZFUVVVSGRXNXBNVVJCUmdkMWJta3hSRUl3QjNWdWFURkVRakVIZFc1cE1VUkNNZ2QxYm1reFJFSXpCM1Z1YVRGRVFqUUhkVzVwTVVSQ05RZDFibWt4UkVJMkIzVnVhVEZFUWpjSGRXNXBNVVJDT0FkMWJta3hSRUk1QjNWdWFURkVRa0VIZFc1cE1VUkNRZ2QxYm1reFJFSkRCM1Z1YVRGRVFrUUhkVzVwTVVSQ1JRZDFibWt4UkVKR0IzVnVhVEZGTURJSGRXNXBNVVV3TXdkMWJta3hSVEEwQjNWdWFURkZNRFVIZFc1cE1VVXdOZ2QxYm1reFJUQTNCM1Z1YVRGRk1EZ0hkVzVwTVVVd09RZDFibWt4UlRCQkIzVnVhVEZGTUVJSGRXNXBNVVV3UXdkMWJta3hSVEJFQjNWdWFURkZNRVVIZFc1cE1VVXdSZ2QxYm1reFJURXdCM1Z1YVRGRk1URUhkVzVwTVVVeE1nZDFibWt4UlRFekIzVnVhVEZGTVRRSGRXNXBNVVV4TlFkMWJta3hSVEUyQjNWdWFURkZNVGNIZFc1cE1VVXhPQWQxYm1reFJURTVCM1Z1YVRGRk1VRUhkVzVwTVVVeFFnZDFibWt4UlRGREIzVnVhVEZGTVVRSGRXNXBNVVV4UlFkMWJta3hSVEZHQjNWdWFURkZNakFIZFc1cE1VVXlNUWQxYm1reFJUSXlCM1Z1YVRGRk1qTUhkVzVwTVVVeU5BZDFibWt4UlRJMUIzVnVhVEZGTWpZSGRXNXBNVVV5TndkMWJta3hSVEk0QjNWdWFURkZNamtIZFc1cE1VVXlRUWQxYm1reFJUSkNCM1Z1YVRGRk1rTUhkVzVwTVVVeVJBZDFibWt4UlRKRkIzVnVhVEZGTWtZSGRXNXBNVVV6TUFkMWJta3hSVE14QjNWdWFURkZNeklIZFc1cE1VVXpNd2QxYm1reFJUTTBCM1Z1YVRGRk16VUhkVzVwTVVVek5nZDFibWt4UlRNM0IzVnVhVEZGTXpnSGRXNXBNVVV6T1FkMWJta3hSVE5CQjNWdWFURkZNMElIZFc1cE1VVXpRd2QxYm1reFJUTkVCM1Z1YVRGRk5EQUhkVzVwTVVVME1RZDFibWt4UlRReUIzVnVhVEZGTkRNSGRXNXBNVVUwTkFkMWJta3hSVFExQjNWdWFURkZORFlIZFc1cE1VVTBOd2QxYm1reFJUUTRCM1Z1YVRGRk5Ea0hkVzVwTVVVMFFRZDFibWt4UlRSQ0IzVnVhVEZGTkVNSGRXNXBNVVUwUkFkMWJta3hSVFJGQjNWdWFURkZORVlIZFc1cE1VVTFNQWQxYm1reFJUVXhCM1Z1YVRGRk5USUhkVzVwTVVVMU13ZDFibWt4UlRVMEIzVnVhVEZGTlRVSGRXNXBNVVUxTmdkMWJta3hSVFUzQjNWdWFURkZOVGdIZFc1cE1VVTFPUWQxYm1reFJUVkJCM1Z1YVRGRk5VSUhkVzVwTVVVMVF3ZDFibWt4UlRWRUIzVnVhVEZGTlVVSGRXNXBNVVUxUmdkMWJta3hSVFl3QjNWdWFURkZOakVIZFc1cE1VVTJNZ2QxYm1reFJUWXpCM1Z1YVRGRk5qUUhkVzVwTVVVMk5RZDFibWt4UlRZMkIzVnVhVEZGTmpjSGRXNXBNVVUyT0FkMWJta3hSVFk1QjNWdWFURkZOa0VIZFc1cE1VVTJRZ2QxYm1reFJUWkRCM1Z1YVRGRk5rUUhkVzVwTVVVMlJRZDFibWt4UlRaR0IzVnVhVEZGTnpBSGRXNXBNVVUzTVFkMWJta3hSVGN5QjNWdWFURkZOek1IZFc1cE1VVTNOQWQxYm1reFJUYzFCM1Z1YVRGRk56WUhkVzVwTVVVM053ZDFibWt4UlRjNEIzVnVhVEZGTnprSGRXNXBNVVUzUVFkMWJta3hSVGRDQjNWdWFURkZOME1IZFc1cE1VVTNSQWQxYm1reFJUZEZCM1Z1YVRGRk4wWUhkVzVwTVVVNE5nZDFibWt4UlRnM0IzVnVhVEZGT0RnSGRXNXBNVVU0T1FkMWJta3hSVGhCQjNWdWFURkZPRUlIZFc1cE1VVTRRd2QxYm1reFJUaEVCM1Z1YVRGRk9FVUhkVzVwTVVVNFJnZDFibWt4UlRrd0IzVnVhVEZGT1RFSGRXNXBNVVU1TWdkMWJta3hSVGt6QjNWdWFURkZPVFFIZFc1cE1VVTVOUWQxYm1reFJUazJCM1Z1YVRGRk9UY0hkVzVwTVVVNU9BZDFibWt4UlRrNUIzVnVhVEZGT1VFSGRXNXBNVVU1UWdkMWJta3hSakF3QjNWdWFURkdNREVIZFc1cE1VWXdNZ2QxYm1reFJqQXpCM1Z1YVRGR01EUUhkVzVwTVVZd05RZDFibWt4UmpBMkIzVnVhVEZHTURjSGRXNXBNVVl3T0FkMWJta3hSakE1QjNWdWFURkdNRUVIZFc1cE1VWXdRZ2QxYm1reFJqQkRCM1Z1YVRGR01FUUhkVzVwTVVZd1JRZDFibWt4UmpCR0IzVnVhVEZHTVRBSGRXNXBNVVl4TVFkMWJta3hSakV5QjNWdWFURkdNVE1IZFc1cE1VWXhOQWQxYm1reFJqRTFCM1Z1YVRGR01UZ0hkVzVwTVVZeE9RZDFibWt4UmpGQkIzVnVhVEZHTVVJSGRXNXBNVVl4UXdkMWJta3hSakZFQjNWdWFURkdNakFIZFc1cE1VWXlNUWQxYm1reFJqSXlCM1Z1YVRGR01qTUhkVzVwTVVZeU5BZDFibWt4UmpJMUIzVnVhVEZHTWpZSGRXNXBNVVl5TndkMWJta3hSakk0QjNWdWFURkdNamtIZFc1cE1VWXlRUWQxYm1reFJqSkNCM1Z1YVRGR01rTUhkVzVwTVVZeVJBZDFibWt4UmpKRkIzVnVhVEZHTWtZSGRXNXBNVVl6TUFkMWJta3hSak14QjNWdWFURkdNeklIZFc1cE1VWXpNd2QxYm1reFJqTTBCM1Z1YVRGR016VUhkVzVwTVVZek5nZDFibWt4UmpNM0IzVnVhVEZHTXpnSGRXNXBNVVl6T1FkMWJta3hSak5CQjNWdWFURkdNMElIZFc1cE1VWXpRd2QxYm1reFJqTkVCM1Z1YVRGR00wVUhkVzVwTVVZelJnZDFibWt4UmpRd0IzVnVhVEZHTkRFSGRXNXBNVVkwTWdkMWJta3hSalF6QjNWdWFURkdORFFIZFc1cE1VWTBOUWQxYm1reFJqUTRCM1Z1YVRGR05Ea0hkVzVwTVVZMFFRZDFibWt4UmpSQ0IzVnVhVEZHTkVNSGRXNXBNVVkwUkFkMWJta3hSalV3QjNWdWFURkdOVEVIZFc1cE1VWTFNZ2QxYm1reFJqVXpCM1Z1YVRGR05UUUhkVzVwTVVZMU5RZDFibWt4UmpVMkIzVnVhVEZHTlRjSGRXNXBNVVkxT1FkMWJta3hSalZDQjNWdWFURkdOVVFIZFc1cE1VWTFSZ2QxYm1reFJqWXdCM1Z1YVRGR05qRUhkVzVwTVVZMk1nZDFibWt4UmpZekIzVnVhVEZHTmpRSGRXNXBNVVkyTlFkMWJta3hSalkyQjNWdWFURkdOamNIZFc1cE1VWTJPQWQxYm1reFJqWTVCM1Z1YVRGR05rRUhkVzVwTVVZMlFnZDFibWt4UmpaREIzVnVhVEZHTmtRSGRXNXBNVVkyUlFkMWJta3hSalpHQjNWdWFURkdOekFIZFc1cE1VWTNNUWQxYm1reFJqY3lCM1Z1YVRGR056TUhkVzVwTVVZM05BZDFibWt4UmpjMUIzVnVhVEZHTnpZSGRXNXBNVVkzTndkMWJta3hSamM0QjNWdWFURkdOemtIZFc1cE1VWTNRUWQxYm1reFJqZENCM1Z1YVRGR04wTUhkVzVwTVVZM1JBZDFibWt4Umpnd0IzVnVhVEZHT0RFSGRXNXBNVVk0TWdkMWJta3hSamd6QjNWdWFURkdPRFFIZFc1cE1VWTROUWQxYm1reFJqZzJCM1Z1YVRGR09EY0hkVzVwTVVZNE9BZDFibWt4UmpnNUIzVnVhVEZHT0VFSGRXNXBNVVk0UWdkMWJta3hSamhEQjNWdWFURkdPRVFIZFc1cE1VWTRSUWQxYm1reFJqaEdCM1Z1YVRGR09UQUhkVzVwTVVZNU1RZDFibWt4UmpreUIzVnVhVEZHT1RNSGRXNXBNVVk1TkFkMWJta3hSamsxQjNWdWFURkdPVFlIZFc1cE1VWTVOd2QxYm1reFJqazRCM1Z1YVRGR09Ua0hkVzVwTVVZNVFRZDFibWt4UmpsQ0IzVnVhVEZHT1VNSGRXNXBNVVk1UkFkMWJta3hSamxGQjNWdWFURkdPVVlIZFc1cE1VWkJNQWQxYm1reFJrRXhCM1Z1YVRGR1FUSUhkVzVwTVVaQk13ZDFibWt4UmtFMEIzVnVhVEZHUVRVSGRXNXBNVVpCTmdkMWJta3hSa0UzQjNWdWFURkdRVGdIZFc1cE1VWkJPUWQxYm1reFJrRkJCM1Z1YVRGR1FVSUhkVzVwTVVaQlF3ZDFibWt4UmtGRUIzVnVhVEZHUVVVSGRXNXBNVVpCUmdkMWJta3hSa0l3QjNWdWFURkdRakVIZFc1cE1VWkNNZ2QxYm1reFJrSXpCM1Z1YVRGR1FqUUhkVzVwTVVaQ05nZDFibWt4UmtJM0IzVnVhVEZHUWpnSGRXNXBNVVpDT1FkMWJta3hSa0pCQjNWdWFURkdRa0lIZFc1cE1VWkNRd2QxYm1reFJrSkVCM1Z1YVRGR1FrVUhkVzVwTVVaQ1JnZDFibWt4UmtNd0IzVnVhVEZHUXpFSGRXNXBNVVpETWdkMWJta3hSa016QjNWdWFURkdRelFIZFc1cE1VWkROZ2QxYm1reFJrTTNCM1Z1YVRGR1F6Z0hkVzVwTVVaRE9RZDFibWt4UmtOQkIzVnVhVEZHUTBJSGRXNXBNVVpEUXdkMWJta3hSa05FQjNWdWFURkdRMFVIZFc1cE1VWkRSZ2QxYm1reFJrUXdCM1Z1YVRGR1JERUhkVzVwTVVaRU1nZDFibWt4UmtRekIzVnVhVEZHUkRZSGRXNXBNVVpFTndkMWJta3hSa1E0QjNWdWFURkdSRGtIZFc1cE1VWkVRUWQxYm1reFJrUkNCM1Z1YVRGR1JFUUhkVzVwTVVaRVJRZDFibWt4UmtSR0IzVnVhVEZHUlRBSGRXNXBNVVpGTVFkMWJta3hSa1V5QjNWdWFURkdSVE1IZFc1cE1VWkZOQWQxYm1reFJrVTFCM1Z1YVRGR1JUWUhkVzVwTVVaRk53ZDFibWt4UmtVNEIzVnVhVEZHUlRrSGRXNXBNVVpGUVFkMWJta3hSa1ZDQjNWdWFURkdSVU1IZFc1cE1VWkZSQWQxYm1reFJrVkZCM1Z1YVRGR1JVWUhkVzVwTVVaR01nZDFibWt4UmtZekIzVnVhVEZHUmpRSGRXNXBNVVpHTmdkMWJta3hSa1kzQjNWdWFURkdSamdIZFc1cE1VWkdPUWQxYm1reFJrWkJCM1Z1YVRGR1JrSUhkVzVwTVVaR1F3ZDFibWt4UmtaRUIzVnVhVEZHUmtVSGRXNXBNakF3UXdkMWJta3lNREJFQjNWdWFUSXdNRVVIZFc1cE1qQXdSZ2QxYm1reU1ERXlCM1Z1YVRJd01UWUhkVzVwTWpBeFJnZDFibWt5TURKQkIzVnVhVEl3TWtJSGRXNXBNakF5UXdkMWJta3lNREpFQjNWdWFUSXdNa1VIZFc1cE1qQXlSZ2QxYm1reU1ETTBCM1Z1YVRJd00wVUhkVzVwTWpBMVJRZDFibWt5TURaQkIzVnVhVEl3TmtJSGRXNXBNakEyUXdkMWJta3lNRFpFQjNWdWFUSXdOa1VIZFc1cE1qQTJSZ2QxYm1reU1EY3dCM1Z1YVRJd056WUhkVzVwTWpBM09RZDFibWt5TURrd0IzVnVhVEl3T1RFSGRXNXBNakE1TWdkMWJta3lNRGt6QjNWdWFUSXdPVFFIZFc1cE1qQkJNQWQxYm1reU1FRXhCM1Z1YVRJd1FUSUhkVzVwTWpCQk5RZDFibWt5TUVFMkIzVnVhVEl3UVRnSGRXNXBNakJCT1FkMWJta3lNRUZFQjNWdWFUSXdRVVVIZFc1cE1qQkJSZ2QxYm1reU1FSXdCM1Z1YVRJd1FqRUhkVzVwTWpCQ01nZDFibWt5TUVJekIzVnVhVEl3UWpRSGRXNXBNakJDTlFkMWJta3lNRUk1QjNWdWFUSXdSakFIZFc1cE1qRXhOd2QxYm1reU1UUkVCM1Z1YVRJeE5FVUhkVzVwTWpFMU13ZDFibWt5TVRVMEIzVnVhVEl4T0RRSGRXNXBNa00yTUFkMWJta3lRell4QjNWdWFUSkROaklIZFc1cE1rTTJNd2QxYm1reVF6WTBCM1Z1YVRKRE5qVUhkVzVwTWtNMk5nZDFibWt5UXpZM0IzVnVhVEpETmpnSGRXNXBNa00yT1FkMWJta3lRelpCQjNWdWFUSkROa0lIZFc1cE1rTTJRd2QxYm1reVF6WkVCM1Z1YVRKRE56RUhkVzVwTWtNM01nZDFibWt5UXpjekIzVnVhVEpETnpRSGRXNXBNa00zTlFkMWJta3lRemMyQjNWdWFUSkROemNIZFc1cE1rVXhOd2QxYm1sQk56RTNCM1Z1YVVFM01UZ0hkVzVwUVRjeE9RZDFibWxCTnpGQkIzVnVhVUUzTVVJSGRXNXBRVGN4UXdkMWJtbEJOekZFQjNWdWFVRTNNVVVIZFc1cFFUY3hSZ2QxYm1sQk56SXdCM1Z1YVVFM01qRUhkVzVwUVRjNE9BZDFibWxCTnpnNUIzVnVhVUUzT0VFSGRXNXBRVGM0UWdkMWJtbEJOemhERFdScFpYSmxjMmx6WVdOMWRHVU5aR2xsY21WemFYTm5jbUYyWlFkMWJtbEdSVEl3QjNWdWFVWkZNakVIZFc1cFJrVXlNZ2QxYm1sR1JUSXpFM1Z1YVRBelFqRXdNekEwTURNeE16QXpNREFUZFc1cE1ETkNNVEF6TURRd016RXpNRE13TVJOMWJta3dNMEl4TURNd05EQXpNVFF3TXpBd0UzVnVhVEF6UWpFd016QTBNRE14TkRBek1ERVRkVzVwTUROQ01UQXpNRFl3TXpFek1ETXdNQk4xYm1rd00wSXhNRE13TmpBek1UTXdNekF4RTNWdWFUQXpRakV3TXpBMk1ETXhOREF6TURBVGRXNXBNRE5DTVRBek1EWXdNekUwTURNd01STjFibWt3TTBJNU1ETXdOREF6TVRNd016QXdFM1Z1YVRBelFqa3dNekEwTURNeE16QXpNREVUZFc1cE1ETkNPVEF6TURRd016RTBNRE13TUJOMWJta3dNMEk1TURNd05EQXpNVFF3TXpBeEUzVnVhVEF6UWprd016QTJNRE14TXpBek1EQVRkVzVwTUROQ09UQXpNRFl3TXpFek1ETXdNUk4xYm1rd00wSTVNRE13TmpBek1UUXdNekF3RTNWdWFUQXpRamt3TXpBMk1ETXhOREF6TURFVGRXNXBNRE5ETlRBek1EUXdNekV6TURNd01CTjFibWt3TTBNMU1ETXdOREF6TVRNd016QXhFM1Z1YVRBelF6VXdNekEwTURNeE5EQXpNREFUZFc1cE1ETkROVEF6TURRd016RTBNRE13TVJOMWJta3dNME0xTURNd05qQXpNVE13TXpBd0UzVnVhVEF6UXpVd016QTJNRE14TXpBek1ERVRkVzVwTURORE5UQXpNRFl3TXpFME1ETXdNQk4xYm1rd00wTTFNRE13TmpBek1UUXdNekF4RTNWdWFUQXpRamt3TXpBNE1ETXdOREF6TURBVGRXNXBNRE5DT1RBek1EZ3dNekEwTURNd01STjFibWt3TTBJNU1ETXdPREF6TURZd016QXdFM1Z1YVRBelFqa3dNekE0TURNd05qQXpNREVUZFc1cE1ETkROVEF6TURnd016QTBNRE13TUJOMWJta3dNME0xTURNd09EQXpNRFF3TXpBeEUzVnVhVEF6UXpVd016QTRNRE13TmpBek1EQVRkVzVwTURORE5UQXpNRGd3TXpBMk1ETXdNUWhGYm1jdVlXeDBNUWhGYm1jdVlXeDBNZ2hGYm1jdVlXeDBNd3QxYm1reFJrTkVNREpET1F0MWJta3hSa05GTURKRE9RdDFibWt4UmtSRU1ESkRPUXQxYm1reFJrUkZNREpET1Foa2IzUmhZM1YwWlFoallYSnZibVJ2ZEE1dFlXTnliMjVrYVdWeVpYTnBjdzEwYVd4a1pXUnBaWEpsYzJsekNuUnBiR1JsWVdOMWRHVUxiV0ZqY205dVozSmhkbVVMYldGamNtOXVZV04xZEdVTlpHbGxjbVZ6YVhOallYSnZiZzVrYVdWeVpYTnBjMjFoWTNKdmJndDBhV3hrWlcxaFkzSnZiZ2xrYjNSdFlXTnliMjROWkc5MGJXRmpjbTl1TG1OaGNBOTFibWt3TXpBeE1ETXdOakF6TURnUGRXNXBNRE13TURBek1EWXdNekE0RDNWdWFUQXpNREV3TXpBME1ETXdPQTkxYm1rd016QXdNRE13TkRBek1EZ0xkVzVwTVVaRVJUQXpNRFlMZFc1cE1VWkVSREF6TURZTGRXNXBNVVpEUlRBek1EWUxkVzVwTVVaRFJEQXpNRFlIZFc1cE1EVXhOQWQxYm1rd05URTFCM1Z1YVRBMU1UWUhkVzVwTURVeE53ZDFibWt3TlRFNEIzVnVhVEExTVRrSGRXNXBNRFV4UlFkMWJta3dOVEZHQjNWdWFUQTFNakFIZFc1cE1EVXlNUWQxYm1rd05USXlCM1Z1YVRBMU1qTUhkVzVwTURVeU5BZDFibWt3TlRJMUIzVnVhVEExTWpZSGRXNXBNRFV5Tnc5amVYSnBiR3hwWTE5dmRHMWhjbXNIZFc1cE1qQkNRUWQxYm1reFJVWkJCM1Z1YVRKRE5rVUhkVzVwTVVVNVJRZFVkWEp1WldSaEIzVnVhVEZGUmtNSGRXNXBNVVZHUlFkMWJtbEJOekl5QjNWdWFVRTNNalFIZFc1cFFUY3lOZ2QxYm1sQk56STRCM1Z1YVVFM01rRUhkVzVwUVRjeVF3ZDFibWxCTnpKRkIzVnVhVUUzTXpJSGRXNXBRVGN6TkFkMWJtbEJOek0yQjNWdWFVRTNNemdIZFc1cFFUY3pRUWQxYm1sQk56TkRCM1Z1YVVFM00wVUhkVzVwUVRjME1BZDFibWxCTnpReUIzVnVhVUUzTkRRSGRXNXBRVGMwTmdkMWJtbEJOelE0QjNWdWFVRTNORUVIZFc1cFFUYzBRd2QxYm1sQk56UkZCM1Z1YVVFM05UQUhkVzVwUVRjMU1nZDFibWxCTnpVMEIzVnVhVUUzTlRZSGRXNXBRVGMxT0FkMWJtbEJOelZCQjNWdWFVRTNOVU1IZFc1cFFUYzFSUWQxYm1sQk56WXdCM1Z1YVVFM05qUUhkVzVwUVRjMk5nZDFibWxCTnpZNEIzVnVhVUUzTmtFSGRXNXBRVGMyUXdkMWJtbEJOelpGQjNWdWFVRTNOemtIZFc1cFFUYzNRZ2QxYm1sQk56ZEVCM1Z1YVVFM04wVUhkVzVwUVRjNE1BZDFibWxCTnpneUIzVnVhVUUzT0RRSGRXNXBRVGM0TmdkMWJtbEJOemhFQjNWdWFVRTNPVEFIZFc1cFFUYzVNZ2QxYm1sQk4wRXdCM1Z1YVVFM1FUSUhkVzVwUVRkQk5BZDFibWxCTjBFMkIzVnVhVUUzUVRnSGRXNXBRVGRCUVFkMWJtbEJOMEZDQjNWdWFVRTNRVU1IZFc1cFFUZEJSQWQxYm1sQk4wSXdCM1Z1YVVFM1FqRUhkVzVwUVRkQ01nZDFibWxCTjBJekIzVnVhVUUzUWpRSGRXNXBRVGRDTmc5QmIyZHZibVZyTG14dlkyeE9RVllQUlc5bmIyNWxheTVzYjJOc1RrRldEMGx2WjI5dVpXc3ViRzlqYkU1QlZnOVZiMmR2Ym1WckxteHZZMnhPUVZZVVRHTnZiVzFoWVdOalpXNTBMbXh2WTJ4TlFVZ1VUbU52YlcxaFlXTmpaVzUwTG14dlkyeE5RVWdIVkhWeWJtVmtaUkJoWm1scE1UQXhNRE5rYjNSc1pYTnpFR0ZtYVdreE1ERXdOV1J2ZEd4bGMzTUtaR1ZzZEdGc1lYUnBiZ2QxYm1reVF6YzRCM1Z1YVRBeU5VTUhkVzVwTURJMVJBZDFibWt3TVVSRUIzVnVhVEF5TlVFT2FXOW5iMjVsYTJSdmRHeGxjM01IZFc1cE1ESXpOd2QxYm1reFJVWkNCM1Z1YVRGRk9VTUhkVzVwTVVVNVJBZDFibWt5UXpkQkNuTjFZbk5qY21sd2RHb0hkVzVwTWtNM09RNTFibWt3TWpRNVpHOTBiR1Z6Y3c1MWJta3dNamxFWkc5MGJHVnpjdzUxYm1rd01rSXlaRzkwYkdWemN3NTFibWt3TTBZelpHOTBiR1Z6Y3c1MWJta3hSRFl5Wkc5MGJHVnpjdzUxYm1reFJEazJaRzkwYkdWemN3NTFibWt4UkVFMFpHOTBiR1Z6Y3c1MWJta3hSRUU0Wkc5MGJHVnpjdzUxYm1reFJUSkVaRzkwYkdWemN3NTFibWt4UlVOQ1pHOTBiR1Z6Y3dkMWJtbEJOekl6QjNWdWFVRTNNalVIZFc1cFFUY3lOd2QxYm1sQk56STVCM1Z1YVVFM01rSUhkVzVwUVRjeVJBZDFibWxCTnpKR0IzVnVhVUUzTXpBSGRXNXBRVGN6TVFkMWJtbEJOek16QjNWdWFVRTNNelVIZFc1cFFUY3pOd2QxYm1sQk56TTVCM1Z1YVVFM00wSUhkVzVwUVRjelJBZDFibWxCTnpOR0IzVnVhVUUzTkRFSGRXNXBRVGMwTXdkMWJtbEJOelExQjNWdWFVRTNORGNIZFc1cFFUYzBPUWQxYm1sQk56UkNCM1Z1YVVFM05FUUhkVzVwUVRjMFJnZDFibWxCTnpVeEIzVnVhVUUzTlRNSGRXNXBRVGMxTlFkMWJtbEJOelUzQjNWdWFVRTNOVGtIZFc1cFFUYzFRZ2QxYm1sQk56VkVCM1Z1YVVFM05VWUhkVzVwUVRjMk1RZDFibWxCTnpZMUIzVnVhVUUzTmpjSGRXNXBRVGMyT1FkMWJtbEJOelpDQjNWdWFVRTNOa1FIZFc1cFFUYzJSZ2QxYm1sQk56Y3hCM1Z1YVVFM056SUhkVzVwUVRjM013ZDFibWxCTnpjMEIzVnVhVUUzTnpVSGRXNXBRVGMzTmdkMWJtbEJOemMzQjNWdWFVRTNOemdIZFc1cFFUYzNRUWQxYm1sQk56ZERCM1Z1YVVFM04wWUhkVzVwUVRjNE1RZDFibWxCTnpnekIzVnVhVUUzT0RVSGRXNXBRVGM0TndkMWJtbEJOemhGQjNWdWFVRTNPVEVIZFc1cFFUYzVNd2QxYm1sQk4wRXhCM1Z1YVVFM1FUTUhkVzVwUVRkQk5RZDFibWxCTjBFM0IzVnVhVUUzUVRrSGRXNXBRVGRDTlFkMWJtbEJOMEkzQjNWdWFVRTNSa0VIZFc1cE1VVkdSQWQxYm1reFJVWkdEMkZ2WjI5dVpXc3ViRzlqYkU1QlZnOWxiMmR2Ym1WckxteHZZMnhPUVZZVWJHTnZiVzFoWVdOalpXNTBMbXh2WTJ4TlFVZ1VibU52YlcxaFlXTmpaVzUwTG14dlkyeE5RVWdQYVc5bmIyNWxheTVzYjJOc1RrRldEM1Z2WjI5dVpXc3ViRzlqYkU1QlZnTm1YMllGWmw5bVgya0ZabDltWDJ3RFpsOXBBMlpmYkFkc2IyNW5jMTkwQTNOZmRBUmhMbk5qQ1dGaFkzVjBaUzV6WXdsaFluSmxkbVV1YzJNT1lXTnBjbU4xYldac1pYZ3VjMk1NWVdScFpYSmxjMmx6TG5OakNXRm5jbUYyWlM1ell3cGhiV0ZqY205dUxuTmpDbUZ2WjI5dVpXc3VjMk1JWVhKcGJtY3VjMk1OWVhKcGJtZGhZM1YwWlM1ell3bGhkR2xzWkdVdWMyTUZZV1V1YzJNS1lXVmhZM1YwWlM1ell3UmlMbk5qQkdNdWMyTUpZMkZqZFhSbExuTmpDV05qWVhKdmJpNXpZd3RqWTJWa2FXeHNZUzV6WXc1alkybHlZM1Z0Wm14bGVDNXpZd2RqWkc5MExuTmpCR1F1YzJNR1pYUm9Mbk5qQ1dSallYSnZiaTV6WXdsa1kzSnZZWFF1YzJNRVpTNXpZd2xsWVdOMWRHVXVjMk1KWldKeVpYWmxMbk5qQ1dWallYSnZiaTV6WXc1bFkybHlZM1Z0Wm14bGVDNXpZd3hsWkdsbGNtVnphWE11YzJNTlpXUnZkR0ZqWTJWdWRDNXpZd2xsWjNKaGRtVXVjMk1LWlcxaFkzSnZiaTV6WXdwbGIyZHZibVZyTG5OakJHWXVjMk1FWnk1ell3bG5ZbkpsZG1VdWMyTU9aMk5wY21OMWJXWnNaWGd1YzJNUFoyTnZiVzFoWVdOalpXNTBMbk5qQjJka2IzUXVjMk1FYUM1ell3ZG9ZbUZ5TG5OakRtaGphWEpqZFcxbWJHVjRMbk5qQkdrdWMyTUphV0ZqZFhSbExuTmpDV2xpY21WMlpTNXpZdzVwWTJseVkzVnRabXhsZUM1ell3eHBaR2xsY21WemFYTXVjMk1OYVdSdmRHRmpZMlZ1ZEM1ell3bHBaM0poZG1VdWMyTUZhV291YzJNS2FXMWhZM0p2Ymk1ell3cHBiMmR2Ym1WckxuTmpDV2wwYVd4a1pTNXpZd1JxTG5OakRtcGphWEpqZFcxbWJHVjRMbk5qQkdzdWMyTVBhMk52YlcxaFlXTmpaVzUwTG5OakJHd3VjMk1KYkdGamRYUmxMbk5qQ1d4allYSnZiaTV6WXc5c1kyOXRiV0ZoWTJObGJuUXVjMk1IYkdSdmRDNXpZd2xzYzJ4aGMyZ3VjMk1FYlM1ell3UnVMbk5qQ1c1aFkzVjBaUzV6WXdsdVkyRnliMjR1YzJNUGJtTnZiVzFoWVdOalpXNTBMbk5qQm1WdVp5NXpZd2x1ZEdsc1pHVXVjMk1FYnk1ell3bHZZV04xZEdVdWMyTUpiMkp5WlhabExuTmpEbTlqYVhKamRXMW1iR1Y0TG5OakRHOWthV1Z5WlhOcGN5NXpZd2x2WjNKaGRtVXVjMk1RYjJoMWJtZGhjblZ0YkdGMWRDNXpZd3B2YldGamNtOXVMbk5qQ1c5emJHRnphQzV6WXc1dmMyeGhjMmhoWTNWMFpTNXpZd2x2ZEdsc1pHVXVjMk1GYjJVdWMyTUVjQzV6WXdoMGFHOXliaTV6WXdSeExuTmpCSEl1YzJNSmNtRmpkWFJsTG5OakNYSmpZWEp2Ymk1ell3OXlZMjl0YldGaFkyTmxiblF1YzJNRWN5NXpZd2x6WVdOMWRHVXVjMk1KYzJOaGNtOXVMbk5qQzNOalpXUnBiR3hoTG5OakRuTmphWEpqZFcxbWJHVjRMbk5qRDNOamIyMXRZV0ZqWTJWdWRDNXpZdzFuWlhKdFlXNWtZbXh6TG5OakJIUXVjMk1IZEdKaGNpNXpZd2wwWTJGeWIyNHVjMk1MZEdObFpHbHNiR0V1YzJNUGRHTnZiVzFoWVdOalpXNTBMbk5qQkhVdWMyTUpkV0ZqZFhSbExuTmpDWFZpY21WMlpTNXpZdzUxWTJseVkzVnRabXhsZUM1ell3eDFaR2xsY21WemFYTXVjMk1KZFdkeVlYWmxMbk5qRUhWb2RXNW5ZWEoxYld4aGRYUXVjMk1LZFcxaFkzSnZiaTV6WXdwMWIyZHZibVZyTG5OakNIVnlhVzVuTG5OakNYVjBhV3hrWlM1ell3UjJMbk5qQkhjdWMyTUpkMkZqZFhSbExuTmpEbmRqYVhKamRXMW1iR1Y0TG5OakRIZGthV1Z5WlhOcGN5NXpZd2wzWjNKaGRtVXVjMk1FZUM1ell3UjVMbk5qQ1hsaFkzVjBaUzV6WXc1NVkybHlZM1Z0Wm14bGVDNXpZd3g1WkdsbGNtVnphWE11YzJNSmVXZHlZWFpsTG5OakJIb3VjMk1KZW1GamRYUmxMbk5qQ1hwallYSnZiaTV6WXcxNlpHOTBZV05qWlc1MExuTmpCM1Z1YVRJd056RUhkVzVwUVRjNFJnZDFibWxCTjBZM0IzVnVhVUUzUmtJSGRXNXBRVGRHUXdkMWJtbEJOMFpFQjNWdWFVRTNSa1VIZFc1cFFUZEdSZ2QxYm1rd05USTRCM1Z1YVRBMU1rRUhkVzVwTURVeVF3ZDFibWt3TlRKRkIzVnVhVUUyTkRBSGRXNXBRVFkwTWdkMWJtbEJOalEwQjNWdWFVRTJORFlIZFc1cFFUWTBPQWQxYm1sQk5qUkJCM1Z1YVVFMk5FTUhkVzVwUVRZMFJRZDFibWxCTmpVd0IzVnVhVUUyTlRJSGRXNXBRVFkxTkFkMWJtbEJOalUyQjNWdWFVRTJOVGdIZFc1cFFUWTFRUWQxYm1sQk5qVkRCM1Z1YVVFMk5VVUhkVzVwUVRZMk1BZDFibWxCTmpZeUIzVnVhVUUyTmpRSGRXNXBRVFkyTmdkMWJtbEJOalk0QjNWdWFVRTJOa0VIZFc1cFFUWTJRd2QxYm1sQk5qZ3dCM1Z1YVVFMk9ESUhkVzVwUVRZNE5BZDFibWxCTmpnMkIzVnVhVUUyT0RnSGRXNXBRVFk0UVFkMWJtbEJOamhEQjNWdWFVRTJPRVVIZFc1cFFUWTVNQWQxYm1sQk5qa3lCM1Z1YVVFMk9UUUhkVzVwUVRZNU5nZDFibWxCTmprNEIzVnVhVUUyT1VFSGRXNXBNRFV5T1FkMWJta3dOVEpDQjNWdWFUQTFNa1FIZFc1cE1EVXlSZ2QxYm1reFF6Z3dCM1Z1YVRGRE9ERUhkVzVwTVVNNE1nZDFibWt4UXpnekIzVnVhVEZET0RRSGRXNXBNVU00TlFkMWJta3hRemcyQjNWdWFURkRPRGNIZFc1cE1VTTRPQWQxYm1sQk5qUXhCM1Z1YVVFMk5ETUhkVzVwUVRZME5RZDFibWxCTmpRM0IzVnVhVUUyTkRrSGRXNXBRVFkwUWdkMWJtbEJOalJFQjNWdWFVRTJORVlIZFc1cFFUWTFNUWQxYm1sQk5qVXpCM1Z1YVVFMk5UVUhkVzVwUVRZMU53ZDFibWxCTmpVNUIzVnVhVUUyTlVJSGRXNXBRVFkxUkFkMWJtbEJOalZHQjNWdWFVRTJOakVIZFc1cFFUWTJNd2QxYm1sQk5qWTFCM1Z1YVVFMk5qY0hkVzVwUVRZMk9RZDFibWxCTmpaQ0IzVnVhVUUyTmtRSGRXNXBRVFk0TVFkMWJtbEJOamd6QjNWdWFVRTJPRFVIZFc1cFFUWTROd2QxYm1sQk5qZzVCM1Z1YVVFMk9FSUhkVzVwUVRZNFJBZDFibWxCTmpoR0IzVnVhVUUyT1RFSGRXNXBRVFk1TXdkMWJtbEJOamsxQjNWdWFVRTJPVGNIZFc1cFFUWTVPUWQxYm1sQk5qbENFV0ZtYVdreE1EQTJOaTVzYjJOc1UxSkNCM1Z1YVVFMk5rVUhkVzVwUVRZM1JnZDFibWxCTmpsREIzVnVhVUUyT1VRSGRXNXBNRE0zTUFkMWJta3dNemN5QjNWdWFUQXpOellIZFc1cE1ETkRSZ2QxYm1rd016ZEdCM1Z1YVRBek56RUhkVzVwTURNM013ZDFibWt3TXpjM0MzVnVhVEF6UkRBdVlXeDBDRU5tY21GcmRIVnlDRWhtY21GcmRIVnlDRWxtY21GcmRIVnlDRkptY21GcmRIVnlDRnBtY21GcmRIVnlCM1Z1YVVFM05qSUhkVzVwUVRjMk13ZDFibWt5TVRKREIzVnVhVEl4TUVJSGRXNXBNakV4TUFkMWJta3lNVEV5RGxCcFJHOTFZbXhsVTNSeWRXTnJCM1Z1YVRJeE1VSUhWSFZ5Ym1Wa1JnZDFibWt5TVRKQ0RVTkViM1ZpYkdWVGRISjFZMnNOU0VSdmRXSnNaVk4wY25WamF3MU9SRzkxWW14bFUzUnlkV05yRFZCRWIzVmliR1ZUZEhKMVkyc05VVVJ2ZFdKc1pWTjBjblZqYXcxU1JHOTFZbXhsVTNSeWRXTnJEVnBFYjNWaWJHVlRkSEoxWTJzVFNYUmhiR2xqUkVSdmRXSnNaVk4wY25WamF4RkhZVzF0WVVSdmRXSnNaVk4wY25WamF3ZDFibWt5TVRBM0IzVnVhVEl4TWtFSGRXNXBNakV6TUFkMWJta3lNVE14QjNWdWFUSXhNek1IZFc1cFFUYzVOZ2QxYm1sQk56azRCM1Z1YVVFM09VRUhkVzVwUVRjNVF3ZDFibWxCTnpsRkUwbDBZV3hwWTJSRWIzVmliR1ZUZEhKMVkyc1RTWFJoYkdsalpVUnZkV0pzWlZOMGNuVmpheE5KZEdGc2FXTnBSRzkxWW14bFUzUnlkV05yRTBsMFlXeHBZMnBFYjNWaWJHVlRkSEoxWTJzUloyRnRiV0ZFYjNWaWJHVlRkSEoxWTJzT2NHbEViM1ZpYkdWVGRISjFZMnNIZFc1cE1qRXdSUWQxYm1reU1UQkdCM05qY21sd2RHVUhjMk55YVhCMGJ3ZHpZM0pwY0hSbkIzVnVhVUUzT1RRSGRXNXBRVGM1TlFkMWJtbEJOemszQjNWdWFVRTNPVGtIZFc1cFFUYzVRZ2QxYm1sQk56bEVCM1Z1YVVFM09VWUhkVzVwUVVJek1BZDFibWxCUWpNeEIzVnVhVUZDTXpJSGRXNXBRVUl6TXdkMWJtbEJRak0wQjNWdWFVRkNNelVIZFc1cFFVSXpOZ2QxYm1sQlFqTTNCM1Z1YVVGQ016Z0hkVzVwUVVJek9RZDFibWxCUWpOQkIzVnVhVUZDTTBJSGRXNXBRVUl6UXdkMWJtbEJRak5FQjNWdWFVRkNNMFVIZFc1cFFVSXpSZ2QxYm1sQlFqUXdCM1Z1YVVGQ05ERUhkVzVwUVVJME1nZDFibWxCUWpRekIzVnVhVUZDTkRRSGRXNXBRVUkwTlFkMWJtbEJRalEyQjNWdWFVRkNORGNIZFc1cFFVSTBPQWQxYm1sQlFqUTVCM1Z1YVVGQ05FRUhkVzVwUVVJMFFnZDFibWxCUWpSREIzVnVhVUZDTkVRSGRXNXBRVUkwUlFkMWJtbEJRalJHQjNWdWFVRkNOVEFIZFc1cFFVSTFNUWQxYm1sQlFqVXlCM1Z1YVVGQ05UTUhkVzVwUVVJMU5BZDFibWxCUWpVMUIzVnVhVUZDTlRZSGRXNXBRVUkxTndkMWJtbEJRalU0QjNWdWFVRkNOVGtIZFc1cFFVSTFRUWQxYm1sQlFqWTBCM1Z1YVRJd09UVUhkVzVwTWpBNU5nZDFibWt5TURrM0IzVnVhVEl3T1RnSGRXNXBNakE1T1FkMWJta3lNRGxCQjNWdWFUSXdPVUlIZFc1cE1qQTVRd2QxYm1sQk56Y3dCM1Z1YVVFM1JqZ0hkVzVwUVRkR09RZDFibWxCUWpWREIzVnVhVUZDTlVRSGRXNXBRVUkxUlFkMWJtbEJRalZHQjNWdWFUSkZNa1lIZW1WeWJ5NXNaZ1p2Ym1VdWJHWUdkSGR2TG14bUNIUm9jbVZsTG14bUIyWnZkWEl1YkdZSFptbDJaUzVzWmdaemFYZ3ViR1lJYzJWMlpXNHViR1lJWldsbmFIUXViR1lIYm1sdVpTNXNaZ2g2WlhKdkxtOXpaZ2R2Ym1VdWIzTm1CM1IzYnk1dmMyWUpkR2h5WldVdWIzTm1DR1p2ZFhJdWIzTm1DR1pwZG1VdWIzTm1CM05wZUM1dmMyWUpjMlYyWlc0dWIzTm1DV1ZwWjJoMExtOXpaZ2h1YVc1bExtOXpaZ3A2WlhKdkxuTnNZWE5vQ1hwbGNtOHVkRzl6WmdodmJtVXVkRzl6WmdoMGQyOHVkRzl6WmdwMGFISmxaUzUwYjNObUNXWnZkWEl1ZEc5elpnbG1hWFpsTG5SdmMyWUljMmw0TG5SdmMyWUtjMlYyWlc0dWRHOXpaZ3BsYVdkb2RDNTBiM05tQ1c1cGJtVXVkRzl6WmdsNlpYSnZMbVJ1YjIwSWIyNWxMbVJ1YjIwSWRIZHZMbVJ1YjIwS2RHaHlaV1V1Wkc1dmJRbG1iM1Z5TG1SdWIyMEpabWwyWlM1a2JtOXRDSE5wZUM1a2JtOXRDbk5sZG1WdUxtUnViMjBLWldsbmFIUXVaRzV2YlFsdWFXNWxMbVJ1YjIwSmVtVnlieTV1ZFcxeUNHOXVaUzV1ZFcxeUNIUjNieTV1ZFcxeUNuUm9jbVZsTG01MWJYSUpabTkxY2k1dWRXMXlDV1pwZG1VdWJuVnRjZ2h6YVhndWJuVnRjZ3B6WlhabGJpNXVkVzF5Q21WcFoyaDBMbTUxYlhJSmJtbHVaUzV1ZFcxeUIzVnVhVEl4TlVZSGRXNXBNakU0T1FkMWJta3lNVFUxQjNWdWFUSXhOVFlIZFc1cE1qRTFOd2QxYm1reU1UVTRCM1Z1YVRJeE5Ua0hkVzVwTWpFMVFRZDFibWt5TVRVd0IzVnVhVEl4TlRFSGRXNXBNakUxTWdkMWJta3lNRGd3QjNWdWFUSXdPREVIZFc1cE1qQTRNZ2QxYm1reU1EZ3pCM1Z1YVRJd09EUUhkVzVwTWpBNE5RZDFibWt5TURnMkIzVnVhVEl3T0RjSGRXNXBNakE0T0FkMWJta3lNRGc1QjNWdWFUSXdORElIZFc1cE1qQTBRd2QxYm1reU1EUkVCM1Z1YVRJd05EVUhkVzVwTWpBME5nVmpZWEpsZEFkMWJta3lNRFF4QjNWdWFUSXdOREFIZFc1cE1qQTFNQWQxYm1reVJUTTJCM1Z1YVRKRk16Y0hkVzVwTWpBMVF3ZDFibWt5UlRFekIzVnVhVEpGTVRZSGRXNXBNa1V3T0E5a2IzZHVkMkZ5WkhOaGJtTnZjbUVIZFc1cE1rVXdSUWQxYm1reU1EUTVCM1Z1YVRKRk1rUUhkVzVwTWpBMU9RZDFibWt5TURVMUIzVnVhVEpGTVRBSGRXNXBNakExUWdkMWJta3lNRFU0QjNWdWFUSXdNamNIZFc1cE1qQTBNd2QxYm1reVJURXlCM1Z1YVRKRk1UZ0hkVzVwTWpBMU5BZDFibWt5UlRBMEIzVnVhVEpGTVVNSGRXNXBNa1V3UXdkMWJta3lSVEF5QjNWdWFUSkZNRGtIZFc1cE1rVXlNQWQxYm1reU1EUkZEbTl1WldSdmRHVnViR1ZoWkdWeUhHOXVaV1J2ZEc5MlpYSjBkMjlrYjNSemNIVnVZM1IxWVhScGIyNEhkVzVwTWtVeE9RZDFibWt5UlRCR0IzVnVhVEl3TkRjSGRXNXBNakEwT0FkMWJta3lSVE0wQjNWdWFUSkZNek1IZFc1cE1rVXdOd2QxYm1reVJUQTJCM1Z1YVRKRk1FSUhkVzVwTWpBelFnZDFibWt5UlRFeEVYSmxkbVZ5YzJWa2NHRnlZV2R5WVhCb0ZISmxkbVZ5YzJWa2NYVmxjM1JwYjI1dFlYSnJCM1Z1YVRJd05FWUhkVzVwTWtVd01RZDFibWt5UlRBd0IzVnVhVEpGTURVSGRXNXBNa1V4UkFkMWJta3lSVEJFQjNWdWFUSkZNRE1IZFc1cE1rVXdRUWQxYm1reVJUSXhCM1Z1YVRKRk16QVpjM0YxWVhKbFpHWnZkWEprYjNSd2RXNWpkSFZoZEdsdmJnZDFibWt5TURVekIzVnVhVEl3TlRZSGRXNXBNa1V4UlFkMWJta3lSVEZHQjNWdWFUSkZNVUlIZFc1cE1qQTBRUWQxYm1reVJUTTVCM1Z1YVRJd05VUUhkVzVwTWtVek1nZDFibWt5UlRNNEIzVnVhVEpGTXpVSGRXNXBNakExTVE1MGQyOWtiM1JsYm14bFlXUmxjZ2QxYm1reU1EVkJISFIzYjJSdmRITnZkbVZ5YjI1bFpHOTBjSFZ1WTNSMVlYUnBiMjRIZFc1cE1qQXpSZ2QxYm1reU1ESXpCM1Z1YVRKRk0wTUhkVzVwTWtVelJBZDFibWt5UlRORkIzVnVhVEpGTTBZSGRXNXBNa1UwTVFkMWJtbEJOamN6RFhWd2QyRnlaSE5oYm1OdmNtRUhkVzVwTWtVek1RZDFibWt5TURoRUIzVnVhVEl3T0VVVFluSmhZMnRvWVd4bVltOTBkRzl0YkdWbWRCUmljbUZqYTJoaGJHWmliM1IwYjIxeWFXZG9kQkJpY21GamEyaGhiR1owYjNCc1pXWjBFV0p5WVdOcmFHRnNablJ2Y0hKcFoyaDBGV3hsWm5Sa2IzVmliR1Z3WVhKbGJuUm9aWE5wY3haeWFXZG9kR1J2ZFdKc1pYQmhjbVZ1ZEdobGMybHpCM1Z1YVRKRk1qWUhkVzVwTWtVeU53ZDFibWt5TURkRUIzVnVhVEl3TjBVSGRXNXBNa1V4UVFkMWJta3lNREV3QjNWdWFUSXdNVEVIZFc1cE1rVXpRZ2QxYm1reVJUTkJCM1Z1YVRKRk5EQUhkVzVwTWpBek5nZDFibWt5TURNMUIzVnVhVEl3TlRjSGRXNXBNakF6TndkMWJta3lSVFF5REdKeVlXTmxiR1ZtZEM1ell3MWljbUZqWlhKcFoyaDBMbk5qRG1KeVlXTnJaWFJzWldaMExuTmpEMkp5WVdOclpYUnlhV2RvZEM1ell3bGxlR05zWVcwdWMyTU1aWGhqYkdGdFpHSnNMbk5qRFdWNFkyeGhiV1J2ZDI0dWMyTVFaM1ZwYkhOcGJtZHNiR1ZtZEM1ell4Rm5kV2xzYzJsdVoyeHlhV2RvZEM1ell3eHdZWEpsYm14bFpuUXVjMk1OY0dGeVpXNXlhV2RvZEM1ell3dHhkV1Z6ZEdsdmJpNXpZdzl4ZFdWemRHbHZibVJ2ZDI0dWMyTUhkVzVwUVRreVJRZDFibWxCTmpkRkIzVnVhVEl3TlVZSGRXNXBNakF5T0FkMWJta3lNREk1QjNWdWFUSXdOakVIZFc1cE1qQTJOQWQxYm1reU1EWXpCM1Z1YVRJd05qSUhkVzVwTWpBMk5nZDFibWt5TURZM0IzVnVhVEl3TmpnSGRXNXBNakEyT1FkMWJta3lNRFl3QjNWdWFUSXdRallIZFc1cE1qQkNRd2QxYm1reU1FSkVCM1Z1YVRJd1FVRUhkVzVwTWpCQ053ZDFibWt5TUVJNEIzVnVhVEl3UWtJSGRXNXBNakJDUlFkMWJta3lNVEkzQjNWdWFUSXhNelVIZFc1cE1qRTBRZ2QxYm1reU1UTTJCM1Z1YVRJd05USUhkVzVwTWpFek9BZDFibWt5TURoREIzVnVhVEl3TjBNSGRXNXBNakV6TndkMWJta3lNRGhDQjNWdWFUSXdOMElIZFc1cE1qQXpNUWQxYm1reU1EaEJCM1Z1YVRJd04wRVNjbVYyWlhKelpXUlRZVzV6VTJWeWFXWk1GWE4xYlcxaGRHbHZia1J2ZFdKc1pWTjBjblZqYXhCMGRYSnVaV1JUWVc1elUyVnlhV1pIRUhSMWNtNWxaRk5oYm5OVFpYSnBaa3dRZEhWeWJtVmtVMkZ1YzFObGNtbG1XUWhTYjNSaGRHVmtVUWQxYm1reU1UQXdCM1Z1YVRJeE1ERUhkVzVwTWpFd05nZDFibWt5TVRBekIzVnVhVEl4TURRSGRXNXBNakV6UWdkMWJta3lNVEE1QjNWdWFUSXhNemtIZFc1cE1qQXpSQWQxYm1reU1URTBCM1Z1YVRJeE1qVUhkVzVwTWpFMFF3eHdjbVZ6WTNKcGNIUnBiMjRIZFc1cE1qRTBRUWQxYm1reU1URkdCM1Z1YVRJeE1EZ0hkVzVwTWpFeU1CaHplVzFpYjJ4bWIzSnpZVzFoY21sMFlXNXpiM1Z5WTJVSGRXNXBNakV5TVFkMWJta3lNVEl6QzNkbGFXVnljM1J5WVhOekIzVnVhVEF5UkVVWGRXNXBNREpGTlY5MWJta3dNa1UxWDNWdWFUQXlSVGtYZFc1cE1ESkZOVjkxYm1rd01rVTFYM1Z1YVRBeVJUWVhkVzVwTURKRk5WOTFibWt3TWtVMVgzVnVhVEF5UlRnWGRXNXBNREpGTlY5MWJta3dNa1UxWDNWdWFUQXlSVGNQZFc1cE1ESkZOVjkxYm1rd01rVTVGM1Z1YVRBeVJUVmZkVzVwTURKRk9WOTFibWt3TWtVMUYzVnVhVEF5UlRWZmRXNXBNREpGT1Y5MWJta3dNa1U1RjNWdWFUQXlSVFZmZFc1cE1ESkZPVjkxYm1rd01rVTJGM1Z1YVRBeVJUVmZkVzVwTURKRk9WOTFibWt3TWtVNEYzVnVhVEF5UlRWZmRXNXBNREpGT1Y5MWJta3dNa1UzRDNWdWFUQXlSVFZmZFc1cE1ESkZOaGQxYm1rd01rVTFYM1Z1YVRBeVJUWmZkVzVwTURKRk5SZDFibWt3TWtVMVgzVnVhVEF5UlRaZmRXNXBNREpGT1JkMWJta3dNa1UxWDNWdWFUQXlSVFpmZFc1cE1ESkZOaGQxYm1rd01rVTFYM1Z1YVRBeVJUWmZkVzVwTURKRk9CZDFibWt3TWtVMVgzVnVhVEF5UlRaZmRXNXBNREpGTnc5MWJta3dNa1UxWDNWdWFUQXlSVGdYZFc1cE1ESkZOVjkxYm1rd01rVTRYM1Z1YVRBeVJUVVhkVzVwTURKRk5WOTFibWt3TWtVNFgzVnVhVEF5UlRrWGRXNXBNREpGTlY5MWJta3dNa1U0WDNWdWFUQXlSVFlYZFc1cE1ESkZOVjkxYm1rd01rVTRYM1Z1YVRBeVJUZ1hkVzVwTURKRk5WOTFibWt3TWtVNFgzVnVhVEF5UlRjUGRXNXBNREpGTlY5MWJta3dNa1UzRjNWdWFUQXlSVFZmZFc1cE1ESkZOMTkxYm1rd01rVTFGM1Z1YVRBeVJUVmZkVzVwTURKRk4xOTFibWt3TWtVNUYzVnVhVEF5UlRWZmRXNXBNREpGTjE5MWJta3dNa1UyRjNWdWFUQXlSVFZmZFc1cE1ESkZOMTkxYm1rd01rVTRGM1Z1YVRBeVJUVmZkVzVwTURKRk4xOTFibWt3TWtVM0QzVnVhVEF5UlRsZmRXNXBNREpGTlJkMWJta3dNa1U1WDNWdWFUQXlSVFZmZFc1cE1ESkZOUmQxYm1rd01rVTVYM1Z1YVRBeVJUVmZkVzVwTURKRk9SZDFibWt3TWtVNVgzVnVhVEF5UlRWZmRXNXBNREpGTmhkMWJta3dNa1U1WDNWdWFUQXlSVFZmZFc1cE1ESkZPQmQxYm1rd01rVTVYM1Z1YVRBeVJUVmZkVzVwTURKRk54ZDFibWt3TWtVNVgzVnVhVEF5UlRsZmRXNXBNREpGTlJkMWJta3dNa1U1WDNWdWFUQXlSVGxmZFc1cE1ESkZOaGQxYm1rd01rVTVYM1Z1YVRBeVJUbGZkVzVwTURKRk9CZDFibWt3TWtVNVgzVnVhVEF5UlRsZmRXNXBNREpGTnc5MWJta3dNa1U1WDNWdWFUQXlSVFlYZFc1cE1ESkZPVjkxYm1rd01rVTJYM1Z1YVRBeVJUVVhkVzVwTURKRk9WOTFibWt3TWtVMlgzVnVhVEF5UlRrWGRXNXBNREpGT1Y5MWJta3dNa1UyWDNWdWFUQXlSVFlYZFc1cE1ESkZPVjkxYm1rd01rVTJYM1Z1YVRBeVJUZ1hkVzVwTURKRk9WOTFibWt3TWtVMlgzVnVhVEF5UlRjUGRXNXBNREpGT1Y5MWJta3dNa1U0RjNWdWFUQXlSVGxmZFc1cE1ESkZPRjkxYm1rd01rVTFGM1Z1YVRBeVJUbGZkVzVwTURKRk9GOTFibWt3TWtVNUYzVnVhVEF5UlRsZmRXNXBNREpGT0Y5MWJta3dNa1UyRjNWdWFUQXlSVGxmZFc1cE1ESkZPRjkxYm1rd01rVTRGM1Z1YVRBeVJUbGZkVzVwTURKRk9GOTFibWt3TWtVM0QzVnVhVEF5UlRsZmRXNXBNREpGTnhkMWJta3dNa1U1WDNWdWFUQXlSVGRmZFc1cE1ESkZOUmQxYm1rd01rVTVYM1Z1YVRBeVJUZGZkVzVwTURKRk9SZDFibWt3TWtVNVgzVnVhVEF5UlRkZmRXNXBNREpGTmhkMWJta3dNa1U1WDNWdWFUQXlSVGRmZFc1cE1ESkZPQmQxYm1rd01rVTVYM1Z1YVRBeVJUZGZkVzVwTURKRk53OTFibWt3TWtVMlgzVnVhVEF5UlRVWGRXNXBNREpGTmw5MWJta3dNa1UxWDNWdWFUQXlSVFVYZFc1cE1ESkZObDkxYm1rd01rVTFYM1Z1YVRBeVJUa1hkVzVwTURKRk5sOTFibWt3TWtVMVgzVnVhVEF5UlRZWGRXNXBNREpGTmw5MWJta3dNa1UxWDNWdWFUQXlSVGdYZFc1cE1ESkZObDkxYm1rd01rVTFYM1Z1YVRBeVJUY1BkVzVwTURKRk5sOTFibWt3TWtVNUYzVnVhVEF5UlRaZmRXNXBNREpGT1Y5MWJta3dNa1UxRjNWdWFUQXlSVFpmZFc1cE1ESkZPVjkxYm1rd01rVTVGM1Z1YVRBeVJUWmZkVzVwTURKRk9WOTFibWt3TWtVMkYzVnVhVEF5UlRaZmRXNXBNREpGT1Y5MWJta3dNa1U0RjNWdWFUQXlSVFpmZFc1cE1ESkZPVjkxYm1rd01rVTNGM1Z1YVRBeVJUWmZkVzVwTURKRk5sOTFibWt3TWtVMUYzVnVhVEF5UlRaZmRXNXBNREpGTmw5MWJta3dNa1U1RjNWdWFUQXlSVFpmZFc1cE1ESkZObDkxYm1rd01rVTRGM1Z1YVRBeVJUWmZkVzVwTURKRk5sOTFibWt3TWtVM0QzVnVhVEF5UlRaZmRXNXBNREpGT0JkMWJta3dNa1UyWDNWdWFUQXlSVGhmZFc1cE1ESkZOUmQxYm1rd01rVTJYM1Z1YVRBeVJUaGZkVzVwTURKRk9SZDFibWt3TWtVMlgzVnVhVEF5UlRoZmRXNXBNREpGTmhkMWJta3dNa1UyWDNWdWFUQXlSVGhmZFc1cE1ESkZPQmQxYm1rd01rVTJYM1Z1YVRBeVJUaGZkVzVwTURKRk53OTFibWt3TWtVMlgzVnVhVEF5UlRjWGRXNXBNREpGTmw5MWJta3dNa1UzWDNWdWFUQXlSVFVYZFc1cE1ESkZObDkxYm1rd01rVTNYM1Z1YVRBeVJUa1hkVzVwTURKRk5sOTFibWt3TWtVM1gzVnVhVEF5UlRZWGRXNXBNREpGTmw5MWJta3dNa1UzWDNWdWFUQXlSVGdYZFc1cE1ESkZObDkxYm1rd01rVTNYM1Z1YVRBeVJUY1BkVzVwTURKRk9GOTFibWt3TWtVMUYzVnVhVEF5UlRoZmRXNXBNREpGTlY5MWJta3dNa1UxRjNWdWFUQXlSVGhmZFc1cE1ESkZOVjkxYm1rd01rVTVGM1Z1YVRBeVJUaGZkVzVwTURKRk5WOTFibWt3TWtVMkYzVnVhVEF5UlRoZmRXNXBNREpGTlY5MWJta3dNa1U0RjNWdWFUQXlSVGhmZFc1cE1ESkZOVjkxYm1rd01rVTNEM1Z1YVRBeVJUaGZkVzVwTURKRk9SZDFibWt3TWtVNFgzVnVhVEF5UlRsZmRXNXBNREpGTlJkMWJta3dNa1U0WDNWdWFUQXlSVGxmZFc1cE1ESkZPUmQxYm1rd01rVTRYM1Z1YVRBeVJUbGZkVzVwTURKRk5oZDFibWt3TWtVNFgzVnVhVEF5UlRsZmRXNXBNREpGT0JkMWJta3dNa1U0WDNWdWFUQXlSVGxmZFc1cE1ESkZOdzkxYm1rd01rVTRYM1Z1YVRBeVJUWVhkVzVwTURKRk9GOTFibWt3TWtVMlgzVnVhVEF5UlRVWGRXNXBNREpGT0Y5MWJta3dNa1UyWDNWdWFUQXlSVGtYZFc1cE1ESkZPRjkxYm1rd01rVTJYM1Z1YVRBeVJUWVhkVzVwTURKRk9GOTFibWt3TWtVMlgzVnVhVEF5UlRnWGRXNXBNREpGT0Y5MWJta3dNa1UyWDNWdWFUQXlSVGNYZFc1cE1ESkZPRjkxYm1rd01rVTRYM1Z1YVRBeVJUVVhkVzVwTURKRk9GOTFibWt3TWtVNFgzVnVhVEF5UlRrWGRXNXBNREpGT0Y5MWJta3dNa1U0WDNWdWFUQXlSVFlYZFc1cE1ESkZPRjkxYm1rd01rVTRYM1Z1YVRBeVJUY1BkVzVwTURKRk9GOTFibWt3TWtVM0YzVnVhVEF5UlRoZmRXNXBNREpGTjE5MWJta3dNa1UxRjNWdWFUQXlSVGhmZFc1cE1ESkZOMTkxYm1rd01rVTVGM1Z1YVRBeVJUaGZkVzVwTURKRk4xOTFibWt3TWtVMkYzVnVhVEF5UlRoZmRXNXBNREpGTjE5MWJta3dNa1U0RjNWdWFUQXlSVGhmZFc1cE1ESkZOMTkxYm1rd01rVTNEM1Z1YVRBeVJUZGZkVzVwTURKRk5SZDFibWt3TWtVM1gzVnVhVEF5UlRWZmRXNXBNREpGTlJkMWJta3dNa1UzWDNWdWFUQXlSVFZmZFc1cE1ESkZPUmQxYm1rd01rVTNYM1Z1YVRBeVJUVmZkVzVwTURKRk5oZDFibWt3TWtVM1gzVnVhVEF5UlRWZmRXNXBNREpGT0JkMWJta3dNa1UzWDNWdWFUQXlSVFZmZFc1cE1ESkZOdzkxYm1rd01rVTNYM1Z1YVRBeVJUa1hkVzVwTURKRk4xOTFibWt3TWtVNVgzVnVhVEF5UlRVWGRXNXBNREpGTjE5MWJta3dNa1U1WDNWdWFUQXlSVGtYZFc1cE1ESkZOMTkxYm1rd01rVTVYM1Z1YVRBeVJUWVhkVzVwTURKRk4xOTFibWt3TWtVNVgzVnVhVEF5UlRnWGRXNXBNREpGTjE5MWJta3dNa1U1WDNWdWFUQXlSVGNQZFc1cE1ESkZOMTkxYm1rd01rVTJGM1Z1YVRBeVJUZGZkVzVwTURKRk5sOTFibWt3TWtVMUYzVnVhVEF5UlRkZmRXNXBNREpGTmw5MWJta3dNa1U1RjNWdWFUQXlSVGRmZFc1cE1ESkZObDkxYm1rd01rVTJGM1Z1YVRBeVJUZGZkVzVwTURKRk5sOTFibWt3TWtVNEYzVnVhVEF5UlRkZmRXNXBNREpGTmw5MWJta3dNa1UzRDNWdWFUQXlSVGRmZFc1cE1ESkZPQmQxYm1rd01rVTNYM1Z1YVRBeVJUaGZkVzVwTURKRk5SZDFibWt3TWtVM1gzVnVhVEF5UlRoZmRXNXBNREpGT1JkMWJta3dNa1UzWDNWdWFUQXlSVGhmZFc1cE1ESkZOaGQxYm1rd01rVTNYM1Z1YVRBeVJUaGZkVzVwTURKRk9CZDFibWt3TWtVM1gzVnVhVEF5UlRoZmRXNXBNREpGTnhkMWJta3dNa1UzWDNWdWFUQXlSVGRmZFc1cE1ESkZOUmQxYm1rd01rVTNYM1Z1YVRBeVJUZGZkVzVwTURKRk9SZDFibWt3TWtVM1gzVnVhVEF5UlRkZmRXNXBNREpGTmhkMWJta3dNa1UzWDNWdWFUQXlSVGRmZFc1cE1ESkZPQWQxYm1sQlFqVkNER0Z0Y0dWeWMyRnVaQzV6WXdkMWJta3lNVEk1QjNWdWFUQXpNRGdIZFc1cE1ETXdOd2xuY21GMlpXTnZiV0lKWVdOMWRHVmpiMjFpQjNWdWFUQXpNRUlIZFc1cE1ETXdNZ2QxYm1rd016QkRCM1Z1YVRBek1EWUhkVzVwTURNd1FRbDBhV3hrWldOdmJXSUhkVzVwTURNd05BdHZkbVZ5YkdsdVpXTnRZZ2QxYm1rd016QkVCM1Z1YVRBek1FVUhkVzVwTURNd1JnZDFibWt3TXpFd0IzVnVhVEF6TVRFSGRXNXBNRE14TWdkMWJta3dNekV6QjNWdWFUQXpNVFFIZFc1cE1ETXhOUWQxYm1rd016RTJCM1Z1YVRBek1UY0hkVzVwTURNeE9BZDFibWt3TXpFNUIzVnVhVEF6TVVFSGRXNXBNRE14UWdkMWJta3dNekZEQjNWdWFUQXpNVVFIZFc1cE1ETXhSUWQxYm1rd016RkdCM1Z1YVRBek1qQVlhRzl2YTNCaGJHRjBZV3hwZW1Wa1ltVnNiM2RqYjIxaUZtaHZiMnR5WlhSeWIyWnNaWGhpWld4dmQyTnZiV0lNWkc5MFltVnNiM2RqYjIxaUIzVnVhVEF6TWpRSGRXNXBNRE15TlFkMWJta3dNekkzQjNWdWFUQXpNamdIZFc1cE1ETXlPUWQxYm1rd016SkJCM1Z1YVRBek1rSUhkVzVwTURNeVF3ZDFibWt3TXpKRUIzVnVhVEF6TWtVSGRXNXBNRE15UmdkMWJta3dNek13QjNWdWFUQXpNekVIZFc1cE1ETXpNZ2QxYm1rd016TXpCM1Z1YVRBek16UVdjM1J5YjJ0bGMyaHZjblJ2ZG1WeWJHRjVZMjl0WWhWemRISnZhMlZzYjI1bmIzWmxjbXhoZVdOdmJXSVZjMnhoYzJoemFHOXlkRzkyWlhKc1lYbGpiMjFpRkhOc1lYTm9iRzl1WjI5MlpYSnNZWGxqYjIxaUIzVnVhVEF6TXprSGRXNXBNRE16UVFkMWJta3dNek5DQjNWdWFUQXpNME1IZFc1cE1ETXpSQWQxYm1rd016TkZCM1Z1YVRBek0wWUhkVzVwTURNME1BZDFibWt3TXpReEIzVnVhVEF6TkRZSGRXNXBNRE0wTndkMWJta3dNelE0QjNWdWFUQXpORGtIZFc1cE1ETTBRUWQxYm1rd016UkNCM1Z1YVRBek5FTUhkVzVwTURNMFJBZDFibWt3TXpSRkIzVnVhVEF6TkVZSGRXNXBNRE0xTUFkMWJta3dNelV4QjNWdWFUQXpOVElIZFc1cE1ETTFNd2QxYm1rd016VTBCM1Z1YVRBek5UVUhkVzVwTURNMU5nZDFibWt3TXpVM0IzVnVhVEF6TlRnSGRXNXBNRE0xT1FkMWJta3dNelZCQjNWdWFUQXpOVUlIZFc1cE1ETTFRd2QxYm1rd016VkVCM1Z1YVRBek5VVUhkVzVwTURNMVJnZDFibWt3TXpZd0IzVnVhVEF6TmpFSGRXNXBNRE0yTWc5aFkzVjBaV2R5WVhabFlXTjFkR1VMWVdOMWRHVnRZV055YjI0SGRXNXBNVVJHUlFkMWJta3hSRVpHQzJKeVpYWmxiV0ZqY205dUdXTnZiV0pwYm1sdVoyTnZibXB2YVc1cGJtZHRZV055YjI0WFkyOXRZbWx1YVc1bmJXRmpjbTl1YkdWbWRHaGhiR1lZWTI5dFltbHVhVzVuYldGamNtOXVjbWxuYUhSb1lXeG1DMlJ2ZEhSbFpHRmpkWFJsQzJSdmRIUmxaR2R5WVhabEZXUnZkV0pzWldOcGNtTjFiV1pzWlhoaFltOTJaUTluY21GMlpXRmpkWFJsWjNKaGRtVUxaM0poZG1WdFlXTnliMjRIZFc1cE1VUkVNQWQxYm1reFJFTTBDMjFoWTNKdmJtSnlaWFpsQjNWdWFURkVRellMYjJkdmJtVnJZV0p2ZG1VS2MyNWhhMlZpWld4dmR3NXpkWE53Wlc1emFXOXViV0Z5YXdkMWJta3hRVUl3QjNWdWFURkJRakVIZFc1cE1VRkNNZ2QxYm1reFFVSXpCM1Z1YVRGQlFqUUhkVzVwTVVGQ05RZDFibWt4UVVJMkIzVnVhVEZCUWpjSGRXNXBNVUZDT0FkMWJta3hRVUk1QjNWdWFURkJRa0VIZFc1cE1VRkNRZ2QxYm1reFFVSkRCM1Z1YVRGQlFrUUhkVzVwTVVSRk53ZDFibWt4UkVVNEIzVnVhVEZFUlRrSGRXNXBNVVJGUVFkMWJta3hSRVZDQjNWdWFURkVSVU1IZFc1cE1VUkZSQWQxYm1reFJFVkZCM1Z1YVRGRVJVWUhkVzVwTVVSR01BZDFibWt4UkVZeEIzVnVhVEZFUmpJSGRXNXBNVVJHTXdkMWJta3hSRVkwQjNWdWFURkVSalVIZFc1cE1VUkdRZ2QxYm1reFJFWkRCM1Z1YVRGRVJrUUhkVzVwTWtSRk1BZDFibWt5UkVVeEIzVnVhVEpFUlRJSGRXNXBNa1JGTXdkMWJta3lSRVUwQjNWdWFUSkVSVFVIZFc1cE1rUkZOZ2QxYm1reVJFVTNCM1Z1YVRKRVJUZ0hkVzVwTWtSRk9RZDFibWt5UkVWQkIzVnVhVEpFUlVJSGRXNXBNa1JGUXdkMWJta3lSRVZFQjNWdWFUSkVSVVVIZFc1cE1rUkZSZ2QxYm1reVJFWXdCM1Z1YVRKRVJqRUhkVzVwTWtSR01nZDFibWt5UkVZekIzVnVhVEpFUmpRSGRXNXBNa1JHTlFkMWJta3lSRVkyQjNWdWFUSkVSamNIZFc1cE1rUkdPQWQxYm1reVJFWTVCM1Z1YVRKRVJrRUhkVzVwTWtSR1FnZDFibWt5UkVaREIzVnVhVEpFUmtRSGRXNXBNa1JHUlFkMWJta3lSRVpHQjNWdWFVWkZNREFIZFc1cFJrVXlOd2QxYm1sR1JUSTRCM1Z1YVVaRk1qa0hkVzVwUmtVeVFRZDFibWxHUlRKQ0IzVnVhVVpGTWtNSGRXNXBSa1V5UkFkMWNtRmliM1psQjNWellXSnZkbVVMZW1sbmVtRm5ZbVZzYjNjSGRXNXBNVUZDUlE5a2FXVnlaWE5wYzJOdmJXSXVjMk1RWkc5MFlXTmpaVzUwWTI5dFlpNXpZd3huY21GMlpXTnZiV0l1YzJNTVlXTjFkR1ZqYjIxaUxuTmpFMmgxYm1kaGNuVnRiR0YxZEdOdmJXSXVjMk1SWTJseVkzVnRabXhsZUdOdmJXSXVjMk1NWTJGeWIyNWpiMjFpTG5OakRHSnlaWFpsWTI5dFlpNXpZd3R5YVc1blkyOXRZaTV6WXd4MGFXeGtaV052YldJdWMyTU5iV0ZqY205dVkyOXRZaTV6WXcxdloyOXVaV3RqYjIxaUxuTmpERzkyWlhKelkyOXlaUzV6WXdkMWJta3dNelF5QjNWdWFUQXpORE1IZFc1cE1ETTBOQWQxYm1rd016UTFCM1Z1YVRBME9ETUhkVzVwTURRNE5BZDFibWt3TkRnMUIzVnVhVEEwT0RZSGRXNXBNRFE0TndkMWJtbEJOalpHQjNWdWFVRTJOelFIZFc1cFFUWTNOUWQxYm1sQk5qYzJCM1Z1YVVFMk56Y0hkVzVwUVRZM09BZDFibWxCTmpjNUIzVnVhVUUyTjBFSGRXNXBRVFkzUWdkMWJtbEJOamREQjNWdWFVRTJOMFFIZFc1cFFUWTVSUWQxYm1sQk5qbEdCM1Z1YVVaRk1rVUhkVzVwUmtVeVJnZDFibWxCTmpjd0IzVnVhVUUyTnpFSGRXNXBRVFkzTWdkMWJta3hSRVJDQjNWdWFURkVSRVVIZFc1cE1VUkVSZ2QxYm1reFJFVXhCM1Z1YVRGRVJUSUhkVzVwTURNMk13ZDFibWt4UkVRMEIzVnVhVEZFUkRVSGRXNXBNVVJFTmdkMWJta3hSRVEzQjNWdWFUQXpOamdIZFc1cE1ETTJPUWQxYm1rd016WTBCM1Z1YVRGRVJEa1RabXhoZEhSbGJtVmtiM0JsYm1GaFltOTJaUWQxYm1reFJFUkJCM1Z1YVRBek5rRUhkVzVwTURNMk5RZDFibWt4UkVRNEIzVnVhVEZFUkVNSGRXNXBNVVJFUkFkMWJta3hSRVUxQjNWdWFUQXpOa0lIZFc1cE1VUkZNQWQxYm1rd016WTJCM1Z1YVRGRVEwRUhkVzVwTURNMlF3ZDFibWt4UkVVekIzVnVhVEZFUlRRSGRXNXBNRE0yUkFkMWJta3dNelkzQjNWdWFUQXpOa1VIZFc1cE1ETTJSZ2QxYm1reFJFVTJCM1Z1YVRKRE4wUU1ZMjl0YldGaFkyTmxiblF5QjNWdWFUSkROekFIZFc1cE1rTTNSUWQxYm1reVF6ZEdCM1Z1YVVGQ05qVUhkVzVwUVRkQlJRZDFibWxCUWpZd0IzVnVhVUZDTmpFSGRXNXBRVUkyTWdkMWJtbEJRall6R1hOMWJXMWhkR2x2YmtSdmRXSnNaVk4wY25WamF5NXRhWElIZFc1cE1qQkNSZ2QxYm1reVJUUXpCM1Z1YVRKRk5EUUhkVzVwUVRjd01BZDFibWxCTnpBeEIzVnVhVUUzTURJSGRXNXBRVGN3TXdkMWJtbEJOekEwQjNWdWFVRTNNRFVIZFc1cFFUY3dOZ2QxYm1sQk56QTNCM1Z1YVVFM01EZ0hkVzVwUVRjd09RZDFibWxCTnpCQkIzVnVhVUUzTUVJSGRXNXBRVGN3UXdkMWJtbEJOekJFQjNWdWFVRTNNRVVIZFc1cFFUY3dSZ2QxYm1sQk56RXdCM1Z1YVVFM01URUhkVzVwUVRjeE1nZDFibWxCTnpFekIzVnVhVUUzTVRRSGRXNXBRVGN4TlFkMWJtbEJOekUyQUFBQUFBRUFBZi8vQUE4QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJ0QUcwQVZ3QlhBc29BQUFJYkFBRC9FQVF0L3RzQzFQLzJBaVgvOXY4UUJDMysyd0J0QUcwQVZ3QlhBc3IvOWdMNEFodi85djhRQkMzKzJ3TFYvL1lDL1FJbC8vYi9FQVF0L3RzQWJRQnRBRmNBVndJL0FBQUVMZjdiQWtqLytBUXQvdHNBYlFCdEFGY0FWd0kvQWo4QUFBQUFCQzMrMndJL0FrZi8rUC80QkMzKzJ3QlhBRmNBU2dCS0FXZ0E2ZitnL3hBRUxmN2JBV2dBNmYrYS94QUVMZjdiQUZjQVZ3QktBRW9CSHdRdC90c0JId1F0L3RzQWJRQnRBRmNBVndMS0FBQUM4QUliQUFEL0VBUXQvdHNDMWYvMkF2QUNKZi8yL3hBRUxmN2JBRWNBUndBMEFEUUJLdjkrQVdNQTQvK2cveEFFTGY3YkFUUC9kUUZqQU9uL212OFFCQzMrMndCSEFFY0FOQUEwQXNzQm9BTGlBbUlCSHdDUEJDMysyd0xpQVpjQzRnSm9BUmtBandRdC90dXdBQ3dnc0FCVldFVlpJQ0JMdUFBT1VVdXdCbE5hV0xBMEc3QW9XV0JtSUlwVldMQUNKV0c1Q0FBSUFHTmpJMkliSVNHd0FGbXdBRU1qUkxJQUFRQkRZRUl0c0FFc3NDQmdaaTJ3QWl3Z1pDQ3d3RkN3QkNaYXNpZ0JDME5GWTBXd0JrVllJYkFESlZsU1cxZ2hJeUViaWxnZ3NGQlFXQ0d3UUZrYklMQTRVRmdoc0RoWldTQ3hBUXREUldORllXU3dLRkJZSWJFQkMwTkZZMFVnc0RCUVdDR3dNRmtiSUxEQVVGZ2daaUNLaW1FZ3NBcFFXR0FiSUxBZ1VGZ2hzQXBnR3lDd05sQllJYkEyWUJ0Z1dWbFpHN0FDSmJBS1EyT3dBRkpZc0FCTHNBcFFXQ0d3Q2tNYlM3QWVVRmdoc0I1TFliZ1FBR093Q2tOanVBVUFZbGxaWkdGWnNBRXJXVmtqc0FCUVdHVlpXUzJ3QXl3Z1JTQ3dCQ1ZoWkNDd0JVTlFXTEFGSTBLd0JpTkNHeUVoV2JBQllDMndCQ3dqSVNNaElHU3hCV0pDSUxBR0kwS3dCa1ZZRzdFQkMwTkZZN0VCQzBPd0NXQkZZN0FES2lFZ3NBWkRJSW9naXJBQks3RXdCU1d3QkNaUldHQlFHMkZTV1ZnaldTRlpJTEJBVTFpd0FTc2JJYkJBV1NPd0FGQllaVmt0c0FVc3NBZERLN0lBQWdCRFlFSXRzQVlzc0FjalFpTWdzQUFqUW1Hd0FtSm1zQUZqc0FGZ3NBVXFMYkFITENBZ1JTQ3dERU5qdUFRQVlpQ3dBRkJZc0VCZ1dXYXdBV05nUkxBQllDMndDQ3l5Qnd3QVEwVkNLaUd5QUFFQVEyQkNMYkFKTExBQVF5TkVzZ0FCQUVOZ1FpMndDaXdnSUVVZ3NBRXJJN0FBUTdBRUpXQWdSWW9qWVNCa0lMQWdVRmdoc0FBYnNEQlFXTEFnRzdCQVdWa2pzQUJRV0dWWnNBTWxJMkZFUkxBQllDMndDeXdnSUVVZ3NBRXJJN0FBUTdBRUpXQWdSWW9qWVNCa3NDUlFXTEFBRzdCQVdTT3dBRkJZWlZtd0F5VWpZVVJFc0FGZ0xiQU1MQ0N3QUNOQ3Nnc0tBMFZZSVJzaklWa3FJUzJ3RFN5eEFnSkZzR1JoUkMyd0RpeXdBV0FnSUxBTlEwcXdBRkJZSUxBTkkwSlpzQTVEU3JBQVVsZ2dzQTRqUWxrdHNBOHNJTEFRWW1hd0FXTWd1QVFBWTRvalliQVBRMkFnaW1BZ3NBOGpRaU10c0JBc1MxUllzUVJrUkZra3NBMWxJM2d0c0JFc1MxRllTMU5Zc1FSa1JGa2JJVmtrc0JObEkzZ3RzQklzc1FBUVExVllzUkFRUTdBQllVS3dEeXRac0FCRHNBSWxRckVOQWlWQ3NRNENKVUt3QVJZaklMQURKVkJZc1FFQVEyQ3dCQ1ZDaW9vZ2lpTmhzQTRxSVNPd0FXRWdpaU5oc0E0cUlSdXhBUUJEWUxBQ0pVS3dBaVZoc0E0cUlWbXdEVU5Ic0E1RFIyQ3dBbUlnc0FCUVdMQkFZRmxtc0FGaklMQU1RMk80QkFCaUlMQUFVRml3UUdCWlpyQUJZMkN4QUFBVEkwU3dBVU93QUQ2eUFRRUJRMkJDTGJBVExBQ3hBQUpGVkZpd0VDTkNJRVd3RENOQ3NBc2pzQWxnUWlCZ3NBRmh0UklTQVFBUEFFSkNpbUN4RWdZcnNJa3JHeUpaTGJBVUxMRUFFeXN0c0JVc3NRRVRLeTJ3Rml5eEFoTXJMYkFYTExFREV5c3RzQmdzc1FRVEt5MndHU3l4QlJNckxiQWFMTEVHRXlzdHNCc3NzUWNUS3kyd0hDeXhDQk1yTGJBZExMRUpFeXN0c0Nrc0l5Q3dFR0ptc0FGanNBWmdTMVJZSXlBdXNBRmRHeUVoV1Myd0tpd2pJTEFRWW1hd0FXT3dGbUJMVkZnaklDNndBWEViSVNGWkxiQXJMQ01nc0JCaVpyQUJZN0FtWUV0VVdDTWdMckFCY2hzaElWa3RzQjRzQUxBTks3RUFBa1ZVV0xBUUkwSWdSYkFNSTBLd0N5T3dDV0JDSUdDd0FXRzFFaElCQUE4QVFrS0tZTEVTQml1d2lTc2JJbGt0c0I4c3NRQWVLeTJ3SUN5eEFSNHJMYkFoTExFQ0hpc3RzQ0lzc1FNZUt5MndJeXl4QkI0ckxiQWtMTEVGSGlzdHNDVXNzUVllS3kyd0ppeXhCeDRyTGJBbkxMRUlIaXN0c0Nnc3NRa2VLeTJ3TEN3Z1BMQUJZQzJ3TFN3Z1lMQVNZQ0JESTdBQllFT3dBaVZoc0FGZ3NDd3FJUzJ3TGl5d0xTdXdMU290c0M4c0lDQkhJQ0N3REVOanVBUUFZaUN3QUZCWXNFQmdXV2F3QVdOZ0kyRTRJeUNLVlZnZ1J5QWdzQXhEWTdnRUFHSWdzQUJRV0xCQVlGbG1zQUZqWUNOaE9Cc2hXUzJ3TUN3QXNRQUNSVlJZc1F3R1JVS3dBUmF3THlxeEJRRVZSVmd3V1JzaVdTMndNU3dBc0EwcnNRQUNSVlJZc1F3R1JVS3dBUmF3THlxeEJRRVZSVmd3V1JzaVdTMndNaXdnTmJBQllDMndNeXdBc1F3R1JVS3dBVVZqdUFRQVlpQ3dBRkJZc0VCZ1dXYXdBV093QVN1d0RFTmp1QVFBWWlDd0FGQllzRUJnV1dhd0FXT3dBU3V3QUJhMEFBQUFBQUJFUGlNNHNUSUJGU29oTGJBMExDQThJRWNnc0F4RFk3Z0VBR0lnc0FCUVdMQkFZRmxtc0FGallMQUFRMkU0TGJBMUxDNFhQQzJ3Tml3Z1BDQkhJTEFNUTJPNEJBQmlJTEFBVUZpd1FHQlpackFCWTJDd0FFTmhzQUZEWXpndHNEY3NzUUlBRmlVZ0xpQkhzQUFqUXJBQ0pVbUtpa2NqUnlOaElGaGlHeUZac0FFalFySTJBUUVWRkNvdHNEZ3NzQUFXc0JFalFyQUVKYkFFSlVjalJ5TmhzUW9BUXJBSlF5dGxpaTRqSUNBOGlqZ3RzRGtzc0FBV3NCRWpRckFFSmJBRUpTQXVSeU5ISTJFZ3NBUWpRckVLQUVLd0NVTXJJTEJnVUZnZ3NFQlJXTE1DSUFNZ0c3TUNKZ01hV1VKQ0l5Q3dDRU1naWlOSEkwY2pZU05HWUxBRVE3QUNZaUN3QUZCWXNFQmdXV2F3QVdOZ0lMQUJLeUNLaW1FZ3NBSkRZR1Fqc0FORFlXUlFXTEFDUTJFYnNBTkRZRm13QXlXd0FtSWdzQUJRV0xCQVlGbG1zQUZqWVNNZ0lMQUVKaU5HWVRnYkk3QUlRMGF3QWlXd0NFTkhJMGNqWVdBZ3NBUkRzQUppSUxBQVVGaXdRR0JaWnJBQlkyQWpJTEFCS3lPd0JFTmdzQUVyc0FVbFliQUZKYkFDWWlDd0FGQllzRUJnV1dhd0FXT3dCQ1poSUxBRUpXQmtJN0FESldCa1VGZ2hHeU1oV1NNZ0lMQUVKaU5HWVRoWkxiQTZMTEFBRnJBUkkwSWdJQ0N3QlNZZ0xrY2pSeU5oSXp3NExiQTdMTEFBRnJBUkkwSWdzQWdqUWlBZ0lFWWpSN0FCS3lOaE9DMndQQ3l3QUJhd0VTTkNzQU1sc0FJbFJ5TkhJMkd3QUZSWUxpQThJeUVic0FJbHNBSWxSeU5ISTJFZ3NBVWxzQVFsUnlOSEkyR3dCaVd3QlNWSnNBSWxZYmtJQUFnQVkyTWpJRmhpR3lGWlk3Z0VBR0lnc0FCUVdMQkFZRmxtc0FGallDTXVJeUFnUElvNEl5RlpMYkE5TExBQUZyQVJJMElnc0FoRElDNUhJMGNqWVNCZ3NDQmdackFDWWlDd0FGQllzRUJnV1dhd0FXTWpJQ0E4aWpndHNENHNJeUF1UnJBQ0pVYXdFVU5ZVUJ0U1dWZ2dQRmt1c1M0QkZDc3RzRDhzSXlBdVJyQUNKVWF3RVVOWVVodFFXVmdnUEZrdXNTNEJGQ3N0c0VBc0l5QXVSckFDSlVhd0VVTllVQnRTV1ZnZ1BGa2pJQzVHc0FJbFJyQVJRMWhTRzFCWldDQThXUzZ4TGdFVUt5MndRU3l3T0NzaklDNUdzQUlsUnJBUlExaFFHMUpaV0NBOFdTNnhMZ0VVS3kyd1FpeXdPU3VLSUNBOHNBUWpRb280SXlBdVJyQUNKVWF3RVVOWVVCdFNXVmdnUEZrdXNTNEJGQ3V3QkVNdXNDNHJMYkJETExBQUZyQUVKYkFFSmlBZ0lFWWpSMkd3Q2lOQ0xrY2pSeU5oc0FsREt5TWdQQ0F1SXppeExnRVVLeTJ3UkN5eENBUWxRckFBRnJBRUpiQUVKU0F1UnlOSEkyRWdzQVFqUXJFS0FFS3dDVU1ySUxCZ1VGZ2dzRUJSV0xNQ0lBTWdHN01DSmdNYVdVSkNJeUJIc0FSRHNBSmlJTEFBVUZpd1FHQlpackFCWTJBZ3NBRXJJSXFLWVNDd0FrTmdaQ093QTBOaFpGQllzQUpEWVJ1d0EwTmdXYkFESmJBQ1lpQ3dBRkJZc0VCZ1dXYXdBV05oc0FJbFJtRTRJeUE4SXpnYklTQWdSaU5Ic0FFckkyRTRJVm14TGdFVUt5MndSU3l4QURnckxyRXVBUlFyTGJCR0xMRUFPU3NoSXlBZ1BMQUVJMElqT0xFdUFSUXJzQVJETHJBdUt5MndSeXl3QUJVZ1I3QUFJMEt5QUFFQkZSUVRMckEwS2kyd1NDeXdBQlVnUjdBQUkwS3lBQUVCRlJRVExyQTBLaTJ3U1N5eEFBRVVFN0ExS2kyd1NpeXdOeW90c0Vzc3NBQVdSU01nTGlCR2lpTmhPTEV1QVJRckxiQk1MTEFJSTBLd1N5c3RzRTBzc2dBQVJDc3RzRTRzc2dBQlJDc3RzRThzc2dFQVJDc3RzRkFzc2dFQlJDc3RzRkVzc2dBQVJTc3RzRklzc2dBQlJTc3RzRk1zc2dFQVJTc3RzRlFzc2dFQlJTc3RzRlVzc3dBQUFFRXJMYkJXTExNQUFRQkJLeTJ3Vnl5ekFRQUFRU3N0c0Znc3N3RUJBRUVyTGJCWkxMTUFBQUZCS3kyd1dpeXpBQUVCUVNzdHNGc3Nzd0VBQVVFckxiQmNMTE1CQVFGQkt5MndYU3l5QUFCREt5MndYaXl5QUFGREt5MndYeXl5QVFCREt5MndZQ3l5QVFGREt5MndZU3l5QUFCR0t5MndZaXl5QUFGR0t5MndZeXl5QVFCR0t5MndaQ3l5QVFGR0t5MndaU3l6QUFBQVFpc3RzR1lzc3dBQkFFSXJMYkJuTExNQkFBQkNLeTJ3YUN5ekFRRUFRaXN0c0drc3N3QUFBVUlyTGJCcUxMTUFBUUZDS3kyd2F5eXpBUUFCUWlzdHNHd3Nzd0VCQVVJckxiQnRMTEVBT2lzdXNTNEJGQ3N0c0c0c3NRQTZLN0ErS3kyd2J5eXhBRG9yc0Q4ckxiQndMTEFBRnJFQU9pdXdRQ3N0c0hFc3NRRTZLN0ErS3kyd2NpeXhBVG9yc0Q4ckxiQnpMTEFBRnJFQk9pdXdRQ3N0c0hRc3NRQTdLeTZ4TGdFVUt5MndkU3l4QURzcnNENHJMYkIyTExFQU95dXdQeXN0c0hjc3NRQTdLN0JBS3kyd2VDeXhBVHNyc0Q0ckxiQjVMTEVCT3l1d1B5c3RzSG9zc1FFN0s3QkFLeTJ3ZXl5eEFEd3JMckV1QVJRckxiQjhMTEVBUEN1d1Bpc3RzSDBzc1FBOEs3QS9LeTJ3Zml5eEFEd3JzRUFyTGJCL0xMRUJQQ3V3UGlzdHNJQXNzUUU4SzdBL0t5MndnU3l4QVR3cnNFQXJMYkNDTExFQVBTc3VzUzRCRkNzdHNJTXNzUUE5SzdBK0t5MndoQ3l4QUQwcnNEOHJMYkNGTExFQVBTdXdRQ3N0c0lZc3NRRTlLN0ErS3kyd2h5eXhBVDByc0Q4ckxiQ0lMTEVCUFN1d1FDc3RzSWtzc3drRUFnTkZXQ0ViSXlGWlFpdXdDR1d3QXlSUWVMRUZBUlZGV0RCWkxRQUFBQUJMdUFESVVsaXhBUUdPV2JBQnVRZ0FDQUJqY0xFQUIwSkFDN1doalFCdlh3QkRMd2tBS3JFQUIwSkFGS2dJbEFpQUNIWURaZ1pXQmtvRU5nZ2tCd2tJS3JFQUIwSkFGTElHbmdhS0Juc0JiZ1JlQkZBQ1FBWXRCUWtJS3JFQUVFSkJDeXBBSlVBZ1FCM0FHY0FWd0JMQURjQUpRQUFKQUFrcXNRQVpRa0VMQUVBQVFBQkFBRUFBUUFCQUFFQUFRQUJBQUFrQUNTcXhBd0JFc1NRQmlGRllzRUNJV0xFRFpFU3hLQUdJVVZpNENBQ0lXTEVEQUVSWkc3RW5BWWhSV0xvSWdBQUJCRUNJWTFSWXNRTUFSRmxaV1ZsWlFCU3FDSllJZ2doNEEyZ0dXQVpNQkRnSUpnY0pEQ3E0QWYrRnNBU05zUUlBUkxNRlpBWUFSRVFBQUFBS2RIUm1ZWFYwYjJocGJuUWdkbVZ5YzJsdmJpQTlJREV1TndvS1lXUnFkWE4wTFhOMVltZHNlWEJvY3lBOUlEQUtaR1ZtWVhWc2RDMXpZM0pwY0hRZ1BTQnNZWFJ1Q21SM0xXTnNaV0Z5ZEhsd1pTMXpkSEp2Ym1jdGMzUmxiUzEzYVdSMGFDQTlJREFLWm1Gc2JHSmhZMnN0YzJOaGJHbHVaeUE5SURBS1ptRnNiR0poWTJzdGMyTnlhWEIwSUQwZ2JtOXVaUXBtWVd4c1ltRmpheTF6ZEdWdExYZHBaSFJvSUQwZ01BcG5aR2t0WTJ4bFlYSjBlWEJsTFhOMGNtOXVaeTF6ZEdWdExYZHBaSFJvSUQwZ01RcG5jbUY1TFhOMGNtOXVaeTF6ZEdWdExYZHBaSFJvSUQwZ01BcG9hVzUwYVc1bkxXeHBiV2wwSUQwZ01qQXdDbWhwYm5ScGJtY3RjbUZ1WjJVdGJXRjRJRDBnTlRBS2FHbHVkR2x1WnkxeVlXNW5aUzF0YVc0Z1BTQTRDbWhwYm5RdFkyOXRjRzl6YVhSbGN5QTlJREFLYVdkdWIzSmxMWEpsYzNSeWFXTjBhVzl1Y3lBOUlEQUthVzVqY21WaGMyVXRlQzFvWldsbmFIUWdQU0F4TkFweVpXWmxjbVZ1WTJVZ1BTQUtjbVZtWlhKbGJtTmxMV2x1WkdWNElEMGdNQXB6ZVcxaWIyd2dQU0F3Q2xSVVJrRXRhVzVtYnlBOUlERUtkMmx1Wkc5M2N5MWpiMjF3WVhScFltbHNhWFI1SUQwZ01RcDRMV2hsYVdkb2RDMXpibUZ3Y0dsdVp5MWxlR05sY0hScGIyNXpJRDBnQ21OdmJuUnliMnd0YVc1emRISjFZM1JwYjI1eklEMGdDZ29LQUE9PSJ9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPSJUMVJVVHdBT0FJQUFBd0JnUWtGVFJZc2VsTEVBQTBmNEFBQUFPa05HUmlDa3JzWWxBQUExY0FBQnNXRkVVMGxIM0RWcDhRQURTRFFBQUJ4NFIwUkZSbUhXWTc0QUFmMHdBQUFDdEVkUVQxUG9qemdWQUFJZU1BQUJLY2hIVTFWQ2JqdWszQUFCLytRQUFCNU1UMU12TWwrV210a0FBQUZRQUFBQVlHTnRZWEIyalRrZ0FBQU1EQUFBS1VSb1pXRmtFQWhxR1FBQUFPd0FBQUEyYUdobFlRdmFERVVBQUFFa0FBQUFKR2h0ZEhpUUlxSndBQUhtMUFBQUZscHRZWGh3QlpkUUFBQUFBVWdBQUFBR2JtRnRaZGJhNHM4QUFBR3dBQUFLV1hCdmMzVC91QUF5QUFBMVVBQUFBQ0FBQVFBQUFBSUFBRVJacTBaZkR6ejFBQU1ENkFBQUFBRFVrcE5QQUFBQUFOU1NrMC8vRVA2eENMc0Q2Z0FBQUFNQUFnQUFBQUFBQUFBQkFBQUVEUDZ4QUFBSTQvOFEveG9JdXdBQkFBQUFBQUFBQUFBQUFBQUFBQUFGbGdBQVVBQUZsd0FBQUFNQ0tnR1FBQVVBQUFLS0FsZ0FBQUJMQW9vQ1dBQUFBVjRBTWdFZEFBQUNCQVlEQlFRRkFnSUVJQUFDaHdJQUFBTUFBQUFBQUFBQUFFRkVRazhBUUFBZy8vOEMydjd5QUFBRURBRlBJQUFCbndBQUFBQUIyd0tlQUFBQUlBQURBQUFBR2dFK0FBRUFBQUFBQUFBQWNBQUFBQUVBQUFBQUFBRUFFQUJ3QUFFQUFBQUFBQUlBQndDQUFBRUFBQUFBQUFNQUp3Q0hBQUVBQUFBQUFBUUFFQUJ3QUFFQUFBQUFBQVVBT1FDdUFBRUFBQUFBQUFZQUZnRG5BQUVBQUFBQUFBY0FZQUQ5QUFFQUFBQUFBQWdBR2dGZEFBRUFBQUFBQUFrQUVRRjNBQUVBQUFBQUFBc0FHUUdJQUFFQUFBQUFBQTBCVGdHaEFBRUFBQUFBQUE0QUdnTHZBQU1BQVFRSkFBQUE0QU1KQUFNQUFRUUpBQUVBSUFQcEFBTUFBUVFKQUFJQURnUUpBQU1BQVFRSkFBTUFUZ1FYQUFNQUFRUUpBQVFBSUFQcEFBTUFBUVFKQUFVQWNnUmxBQU1BQVFRSkFBWUFMQVRYQUFNQUFRUUpBQWNBd0FVREFBTUFBUVFKQUFnQU5BWERBQU1BQVFRSkFBa0FJZ1gzQUFNQUFRUUpBQXNBTWdZWkFBTUFBUVFKQUEwQ25BWkxBQU1BQVFRSkFBNEFOQWpuUTI5d2VYSnBaMmgwSURJd01UUXNJREl3TVRVc0lESXdNVFlnUVdSdlltVWdVM2x6ZEdWdGN5QkpibU52Y25CdmNtRjBaV1FnS0doMGRIQTZMeTkzZDNjdVlXUnZZbVV1WTI5dEx5a3NJSGRwZEdnZ1VtVnpaWEoyWldRZ1JtOXVkQ0JPWVcxbElDZFRiM1Z5WTJVbkxsTnZkWEpqWlNCVFpYSnBaaUJRY205U1pXZDFiR0Z5TWk0d01EQTdRVVJDVHp0VGIzVnlZMlZUWlhKcFpsQnlieTFTWldkMWJHRnlPMEZFVDBKRlZtVnljMmx2YmlBeUxqQXdNRHRRVXlBeExqQTdhRzkwWTI5dWRpQXhOaTQyTGpVeE8yMWhhMlZ2ZEdZdWJHbGlNaTQxTGpZMU1qSXdVMjkxY21ObFUyVnlhV1pRY204dFVtVm5kV3hoY2xOdmRYSmpaU0JwY3lCaElIUnlZV1JsYldGeWF5QnZaaUJCWkc5aVpTQlRlWE4wWlcxeklFbHVZMjl5Y0c5eVlYUmxaQ0JwYmlCMGFHVWdWVzVwZEdWa0lGTjBZWFJsY3lCaGJtUXZiM0lnYjNSb1pYSWdZMjkxYm5SeWFXVnpMa0ZrYjJKbElGTjVjM1JsYlhNZ1NXNWpiM0p3YjNKaGRHVmtSbkpoYm1zZ1IzSnBaYWRvWVcxdFpYSm9kSFJ3T2k4dmQzZDNMbUZrYjJKbExtTnZiUzkwZVhCbFZHaHBjeUJHYjI1MElGTnZablIzWVhKbElHbHpJR3hwWTJWdWMyVmtJSFZ1WkdWeUlIUm9aU0JUU1V3Z1QzQmxiaUJHYjI1MElFeHBZMlZ1YzJVc0lGWmxjbk5wYjI0Z01TNHhMZzBLRFFwVWFHbHpJRVp2Ym5RZ1UyOW1kSGRoY21VZ2FYTWdaR2x6ZEhKcFluVjBaV1FnYjI0Z1lXNGdKMEZUSUVsVEp5QkNRVk5KVXl3Z1YwbFVTRTlWVkNCWFFWSlNRVTVVU1VWVElFOVNJRU5QVGtSSlZFbFBUbE1nVDBZZ1FVNVpJRXRKVGtRc0lHVnBkR2hsY2lCbGVIQnlaWE56SUc5eUlHbHRjR3hwWldRdUlGTmxaU0IwYUdVZ1UwbE1JRTl3Wlc0Z1JtOXVkQ0JNYVdObGJuTmxJR1p2Y2lCMGFHVWdjM0JsWTJsbWFXTWdiR0Z1WjNWaFoyVXNJSEJsY20xcGMzTnBiMjV6SUdGdVpDQnNhVzFwZEdGMGFXOXVjeUJuYjNabGNtNXBibWNnZVc5MWNpQjFjMlVnYjJZZ2RHaHBjeUJHYjI1MElGTnZablIzWVhKbExtaDBkSEE2THk5elkzSnBjSFJ6TG5OcGJDNXZjbWN2VDBaTUFFTUFid0J3QUhrQWNnQnBBR2NBYUFCMEFDQUFNZ0F3QURFQU5BQXNBQ0FBTWdBd0FERUFOUUFzQUNBQU1nQXdBREVBTmdBZ0FFRUFaQUJ2QUdJQVpRQWdBRk1BZVFCekFIUUFaUUJ0QUhNQUlBQkpBRzRBWXdCdkFISUFjQUJ2QUhJQVlRQjBBR1VBWkFBZ0FDZ0FhQUIwQUhRQWNBQTZBQzhBTHdCM0FIY0Fkd0F1QUdFQVpBQnZBR0lBWlFBdUFHTUFid0J0QUM4QUtRQXNBQ0FBZHdCcEFIUUFhQUFnQUZJQVpRQnpBR1VBY2dCMkFHVUFaQUFnQUVZQWJ3QnVBSFFBSUFCT0FHRUFiUUJsQUNBQUp3QlRBRzhBZFFCeUFHTUFaUUFuQUM0QVV3QnZBSFVBY2dCakFHVUFJQUJUQUdVQWNnQnBBR1lBSUFCUUFISUFid0JTQUdVQVp3QjFBR3dBWVFCeUFESUFMZ0F3QURBQU1BQTdBRUVBUkFCQ0FFOEFPd0JUQUc4QWRRQnlBR01BWlFCVEFHVUFjZ0JwQUdZQVVBQnlBRzhBTFFCU0FHVUFad0IxQUd3QVlRQnlBRHNBUVFCRUFFOEFRZ0JGQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF5QUM0QU1BQXdBREFBT3dCUUFGTUFJQUF4QUM0QU1BQTdBR2dBYndCMEFHTUFid0J1QUhZQUlBQXhBRFlBTGdBMkFDNEFOUUF4QURzQWJRQmhBR3NBWlFCdkFIUUFaZ0F1QUd3QWFRQmlBRElBTGdBMUFDNEFOZ0ExQURJQU1nQXdBRk1BYndCMUFISUFZd0JsQUZNQVpRQnlBR2tBWmdCUUFISUFid0F0QUZJQVpRQm5BSFVBYkFCaEFISUFVd0J2QUhVQWNnQmpBR1VBSUFCcEFITUFJQUJoQUNBQWRBQnlBR0VBWkFCbEFHMEFZUUJ5QUdzQUlBQnZBR1lBSUFCQkFHUUFid0JpQUdVQUlBQlRBSGtBY3dCMEFHVUFiUUJ6QUNBQVNRQnVBR01BYndCeUFIQUFid0J5QUdFQWRBQmxBR1FBSUFCcEFHNEFJQUIwQUdnQVpRQWdBRlVBYmdCcEFIUUFaUUJrQUNBQVV3QjBBR0VBZEFCbEFITUFJQUJoQUc0QVpBQXZBRzhBY2dBZ0FHOEFkQUJvQUdVQWNnQWdBR01BYndCMUFHNEFkQUJ5QUdrQVpRQnpBQzRBUVFCa0FHOEFZZ0JsQUNBQVV3QjVBSE1BZEFCbEFHMEFjd0FnQUVrQWJnQmpBRzhBY2dCd0FHOEFjZ0JoQUhRQVpRQmtBRVlBY2dCaEFHNEFhd0FnQUVjQWNnQnBBR1VBM3dCb0FHRUFiUUJ0QUdVQWNnQm9BSFFBZEFCd0FEb0FMd0F2QUhjQWR3QjNBQzRBWVFCa0FHOEFZZ0JsQUM0QVl3QnZBRzBBTHdCMEFIa0FjQUJsQUZRQWFBQnBBSE1BSUFCR0FHOEFiZ0IwQUNBQVV3QnZBR1lBZEFCM0FHRUFjZ0JsQUNBQWFRQnpBQ0FBYkFCcEFHTUFaUUJ1QUhNQVpRQmtBQ0FBZFFCdUFHUUFaUUJ5QUNBQWRBQm9BR1VBSUFCVEFFa0FUQUFnQUU4QWNBQmxBRzRBSUFCR0FHOEFiZ0IwQUNBQVRBQnBBR01BWlFCdUFITUFaUUFzQUNBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXhBQzRBRFFBS0FBMEFDZ0JVQUdnQWFRQnpBQ0FBUmdCdkFHNEFkQUFnQUZNQWJ3Qm1BSFFBZHdCaEFISUFaUUFnQUdrQWN3QWdBR1FBYVFCekFIUUFjZ0JwQUdJQWRRQjBBR1VBWkFBZ0FHOEFiZ0FnQUdFQWJnQWdBQ2NBUVFCVEFDQUFTUUJUQUNjQUlBQkNBRUVBVXdCSkFGTUFMQUFnQUZjQVNRQlVBRWdBVHdCVkFGUUFJQUJYQUVFQVVnQlNBRUVBVGdCVUFFa0FSUUJUQUNBQVR3QlNBQ0FBUXdCUEFFNEFSQUJKQUZRQVNRQlBBRTRBVXdBZ0FFOEFSZ0FnQUVFQVRnQlpBQ0FBU3dCSkFFNEFSQUFzQUNBQVpRQnBBSFFBYUFCbEFISUFJQUJsQUhnQWNBQnlBR1VBY3dCekFDQUFid0J5QUNBQWFRQnRBSEFBYkFCcEFHVUFaQUF1QUNBQVV3QmxBR1VBSUFCMEFHZ0FaUUFnQUZNQVNRQk1BQ0FBVHdCd0FHVUFiZ0FnQUVZQWJ3QnVBSFFBSUFCTUFHa0FZd0JsQUc0QWN3QmxBQ0FBWmdCdkFISUFJQUIwQUdnQVpRQWdBSE1BY0FCbEFHTUFhUUJtQUdrQVl3QWdBR3dBWVFCdUFHY0FkUUJoQUdjQVpRQXNBQ0FBY0FCbEFISUFiUUJwQUhNQWN3QnBBRzhBYmdCekFDQUFZUUJ1QUdRQUlBQnNBR2tBYlFCcEFIUUFZUUIwQUdrQWJ3QnVBSE1BSUFCbkFHOEFkZ0JsQUhJQWJnQnBBRzRBWndBZ0FIa0Fid0IxQUhJQUlBQjFBSE1BWlFBZ0FHOEFaZ0FnQUhRQWFBQnBBSE1BSUFCR0FHOEFiZ0IwQUNBQVV3QnZBR1lBZEFCM0FHRUFjZ0JsQUM0QWFBQjBBSFFBY0FBNkFDOEFMd0J6QUdNQWNnQnBBSEFBZEFCekFDNEFjd0JwQUd3QUxnQnZBSElBWndBdkFFOEFSZ0JNQUFBQUFBQUFCUUFBQUFNQUFBSWtBQUFBQkFBQURKd0FBUUFBQUFBQUxBQURBQUVBQUFJa0FBTUFDZ0FBREp3QUJnSDRBQUFBQ1FEM0FBRUFBQUFBQUFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBZDRCNVFJZkFwNEN1d0drQWVRQitnSDdBaE1DeGdIYUFmQUIyUUlQQWFVQnBnR25BYWdCcVFHcUFhc0JyQUd0QWE0QjJ3SGNBc3dDeXdMTkFlRUNIUUFDQUFNQUJBQUZBQVlBQndBSUFBa0FDZ0FMQUF3QURRQU9BQThBRUFBUkFCSUFFd0FVQUJVQUZnQVhBQmdBR1FBYUFCc0IvQUlSQWYwQzBRSDVBd1VBSEFBZEFCNEFId0FnQUNFQUlnQWpBQ1FBSlFBbUFDY0FLQUFwQUNvQUt3QXNBQzBBTGdBdkFEQUFNUUF5QURNQU5BQTFBZjRDRUFIL0F0TUFBQUE2QUVvQVRRQlhBSXdBbGdDL0FPY0E1Z0RvQU9vQTZRRDZBUDBCQndFR0FRZ0JDZ0VqQVNJQkpBRWxBVDhCUmdGRkFVZ0JTZ0ZKQVhNQmNnRjBBWFVDRkFLY0FwOENvQUlXQWZnQ0Z3RnJBaG9DR0FJYkF3WURDZ0xTQUV3QXB3TFdBdEFDemdMUEFxRUMxd0xZQXQwQzNnTjlBdGtDWkFKbEEyUUEvQUZiQWVJQjN3TFZBdG9Db2dMVUF0c0I3Z0h2QWQwQ3R3QTJBRGtBbFFDb0FWd0I4d0gwQWVnQjZRSG1BZWNDeVFMNUFZNEEyQUswQXFrQjdBSHRBWjRCbndJVkFmY0I2Z0hyQXJ3QU9BQllBRGNBV2dCV0FITUFkQUIxQUhJQWtnQ1VBQUFBa1FDOUFMNEF2QUV0QXdjRENRTUxBd3dERHdNTkF4QUREZ01UQXdnQUJBcDRBQUFCVEFFQUFBY0FUQUF2QUVBQVlBQitBTDhBeXdEWUFOOEE2d0Q0QVNzQk1RRkpBV1VCZndHUEFaSUJvUUd3QWR3QjV3SDVBaHNDTndKUkFsa0NZUUt3QXJNQ3VBSzhBcjhDeHdMTUF0MEM0d01FQXd3REd3TWtBeWtETGdNeEEzVURmZ09LQTR3RGtBT2hBNnNEc0FQQ0E4NEQxd1BaQTlzRDNRUGhCQThFTHdSZkJHTUVkUVNUQkpzRW93U3JCTE1FdHdTN0JNSUUwUVRaQk9NRTZRVHZCUE1kUXgxSkhVMGRVQjFTSFZnZFd4MmNIYUFkdXg0UEhpRWVKUjRySGpzZVB4NUpIbU1lYng2RkhvOGVreDZYSHA0ZStTQUhJQkFnRlNBYUlCNGdJaUFtSURBZ015QTZJRHdnUkNCSklIRWdlU0IvSUlrZ2ppQ2hJS1FncHlDcElLd2dyaUN5SUxVZ3VpQzlJTDhoRXlFWElTQWhJaUVtSVM0aFZDRmVJWk1obVNJQ0lnWWlEeUlTSWhVaUdpSWVJaXNpU0NKZ0ltVWxvQ1d6SmJjbHZTWEJKY1lseWlZUkptb25FeWRTTGp2N0JQLy9BQUFBSUFBd0FFRUFZUUNnQU1BQXpBRFpBT0FBN0FENUFTNEJOQUZNQVdnQmp3R1NBYUFCcndITkFlWUIrQUlZQWpjQ1VRSlpBbUVDc0FLeUFyY0N1d0srQXNZQ3lBTFlBdUVEQUFNR0F4c0RJd01tQXk0RE1RTjBBMzREaEFPTUE0NERrUU9qQTZ3RHNRUERBOWNEMlFQYkE5MEQ0UVFBQkJBRU1BUmlCSElFa0FTV0JLQUVxZ1N1QkxZRXVnVEFCTThFMUFUaUJPWUU3Z1R5SFVNZFJ4MU5IVThkVWgxV0hWc2RuQjJnSGJzZURCNGdIaVFlS2g0MkhqNGVRaDVhSG13ZWdCNk9IcEllbHg2ZUhxQWdCeUFRSUJJZ0dDQWNJQ0FnSlNBd0lESWdPU0E4SUVRZ1J5QndJSFFnZlNDQUlJMGdvU0NrSUtZZ3FTQ3JJSzRnc1NDMElMZ2d2U0MvSVJNaEZpRWdJU0loSmlFdUlWTWhXeUdRSVpZaUFpSUdJZzhpRVNJVkloa2lIaUlySWtnaVlDSmtKYUFsc2lXMkpid2x3Q1hHSmNrbUVDWnFKeE1uVWk0Nit3RC8vd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVA5V0FSQUFBQUFBQUFBQUFBQUFBQUQrOS85TC8wTC9QUC9YQUFBQUFBQkJBQUFBUVFBNEFBQUFBQUFBQUFBQUdBQUFBQVFBQUFBREFDWUFHUUFBLzk0QUFQKzhBQUFBQUFBQUFBRC91Lys2LzduL3VQKzEvOEgva2YrOEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURsUFFBQTVUa0FBT1U4QUFEbE91VG01T1hrM2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT0xZNGhnQUFPS3g0ZUlBQUFBQUFBQUFBQUFBNG96aXlPR3o1QWJpY09QOEFBRGhzQUFBNGJUaHNlSUM0Z0RoLytIKzRmM2gvT0g2NGZrQUFPSDE0ZlRoekFBQTRQemcrZUcyNGJMaGJlRm5BQUFBQU9EVzROWGd6d0FBNEtBQUFPQzQ0Szdnak9CeTRHcmRTZDA3M1RuZE5kMHozU1FBQU56bDNJN2I1TnVhMWdJQUFBQUJBVXdCYWdHS0FjZ0NBZ0pBQWxZQ2JnSjZBcEFDcUFNTUF4SURQQU51QUFBQUFBT1lBNW9EbkFPNkE3d0R2Z0FBQUFBQUFBQUFBQUFEdWdPOEFBQUR2QUFBQUFBRHVnUEVBOGdEMEFBQUE5b0FBQUFBQUFBQUFBQUFBOUlBQUFQY0FBQUQzZ1B1QS9ZRUdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUhnUWdCQ1lFTEFRMkJEd0VQZ1JJQkVvRVRBUlFCRlFFWGdSZ0JHWUVhQUFBQkdnQUFBUnFBQUFFYWdBQUFBQUFBQUFBQkdZRWJBUnVCSEFFY2dSOEJINEVqQVNlQktRRXJnU3dBQUFBQUFTdUFBQUFBQVZjQldJRlpnVnFCVzRBQUFBQUFBQUFBQUFBQUFBRlpBQUFCV1FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFWVUFBQUFBQUFBQlZJQUFBQUFBQUFBQUFBQUFBQUZTQVZPQUFBQUFBQUFCVTRBQUFWT0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVU2QUFBQUFBQUFBQUFBQUFVeUFBQUFBUUhlQWVVQ0h3S2VBcnNCcEFIa0Fmb0Ird0lUQXNZQjJnSHdBZGtDRHdHbEFhWUJwd0dvQWFrQnFnR3JBYXdCclFHdUFkc0IzQUxNQXNzQ3pRSGhBaDBBQWdBREFBUUFCUUFHQUFjQUNBQUpBQW9BQ3dBTUFBMEFEZ0FQQUJBQUVRQVNBQk1BRkFBVkFCWUFGd0FZQUJrQUdnQWJBZndDRVFIOUF0RUIrUU1GQUJ3QUhRQWVBQjhBSUFBaEFDSUFJd0FrQUNVQUpnQW5BQ2dBS1FBcUFDc0FMQUF0QUM0QUx3QXdBREVBTWdBekFEUUFOUUgrQWhBQi93TFRBcmNCM3dLZkFxQUNuUUtoQWhJQ0ZnTUtBaGdDWkFIdUF0VUI4UUlhQXdzQ25BTFFBaUlDSXdNR0F0Y0NGd0gzQXhBQ0lRSmxBZThDdlFLK0FyOEI0Z0EyQURjQU9BQTVBRG9BU2dCTUFFMEFWZ0JYQUZnQVdnQnlBSE1BZEFCMUFPTUFqQUNSQUpJQWxBQ1ZBSllDeUFDbkFMd0F2UUMrQUw4QTF3RGtBV3NBNWdEbkFPZ0E2UURxQVBvQS9BRDlBUVlCQndFSUFRb0JJZ0VqQVNRQkpRR1pBVDhCUlFGR0FVZ0JTUUZLQXNrQld3RnlBWE1CZEFGMUFZMEJtZ0dPQURzQTZ3QThBT3dBU3dEN0FFNEEvZ0JRQVFBQVVRRUJBRThBL3dCU0FRSUFVd0VEQUZzQkN3QmVBUTRBWEFFTUFGMEJEUUJaQVFrQWF3RWJBR2NCRndCb0FSZ0FhUUVaQUhBQklBQnVBUjRBZkFFc0FIWUJKZ0I0QVNjQWR3RXRBSDBCTHdCK0FUQUJNUUIvQVRJQWdRRTBBSUFCTXdDQ0FUVUFoZ0U1QUlrQlBBQ05BVUFBaWdFOUFVSUFsd0ZMQUpNQlJ3Q1lBVXdBcUFGY0FLa0JYUUNyQVY0QXFnRmZBSzhCWXdDekFXY0FzUUZsQUxBQlpBQzRBVzBBdHdGc0FOSUJpQURBQVhZQXhBRjZBTUVCZHdEQ0FYZ0F3d0Y1QU5RQmlnRFpBWThBMkFEZkFaVUE0UUdYQU9BQmxnRnFBS0VCVlFETUFZSUFRZ0R5QUhrQktRQ1pBVTBBeFFGN0FNa0Jmd0RHQVh3QXh3RjlBTWdCZmdCcUFSb0Fpd0UrQUxJQlpnQzVBVzRDaVFLUkFwWUNtQUwvQXY0RERBTVBBdzBERXdNSkF3NENpd0tTQXBjREZBTVdBeGdER2dNY0F4NERJQU1pQXpFREpBTW1BeWdETUFNdkE1d0RuZ05sQTVnRFpnTm5BMmdEYXdOdEE1QURYZ05mQTJBRFlRTmlBMk1EWkFOcEEyd0Rod09JQTRrRGlnT1JBMjREYndOd0EzRURjZ056QTNRRGRRTjJBM2NEZUFONUEzb0Rld044QTMwRGZnT0dBMzhEZ0FPQkE0SURnd09FQTRVRGl3T09BNHdEalFPUEE5RUVIQVBTQkIwRDB3UWVBOVFFSHdQVkJDQUQxZ1FoQTljRUlnUFlCQ01EMlFRa0E5b0VKUVBiQkNZRDNBUW5BOTBFS0FQZUJDa0Qzd1FxQStBRUt3UGhBK0lFTEFRdEErTUVMZ1BrQkM4RDVRUXdBK1lFTVFQbkJESUQ2QVF6QStrRU5BUHFCRFVENndRMkFvRUNnd0tFQW9vQ2pBS1BBcE1DbEFCVUFRUUFWUUVGQUd3QkhBQnhBU0VBYndFZkFJTUJOZ0NFQVRjQWhRRTRBSWNCT2dDSUFUc0FqZ0ZCQUk4QlF3Q1FBVVFBckFGZ0FLMEJZUUN1QVdJQXRBRm9BTFVCYVFDNkFYQUF1d0Z4QU5ZQmpBRFRBWWtBMVFHTEFOb0JrQURpQVpnQVNBRDRBRWtBK1FCREFQTUFSUUQxQUVZQTlnQkhBUGNBUkFEMEFEMEE3UUEvQU84QVFBRHdBRUVBOFFBK0FPNEFaQUVVQUdVQkZRQm1BUllBWHdFUEFHRUJFUUJpQVJJQVl3RVRBR0FCRUFCN0FTc0FlZ0VxQUo4QlV3Q2dBVlFBbWdGT0FKd0JVQUNkQVZFQW5nRlNBSnNCVHdDaUFWWUFwQUZZQUtVQldRQ21BVm9Bb3dGWEFNb0JnQURMQVlFQXpRR0RBTThCaFFEUUFZWUEwUUdIQU00QmhBRGNBWklBMndHUkFOMEJrd0RlQVpRQjlRSHpBZlFCOWdIbUFlY0I2Z0hvQWVrQjZ3SVVBaFVCK0FSQkFkMENJQUtJQWlvQ0t3S05BckVDcndLd0JEZ0NHUUxoQXVNQzVRTG5BdUlDNUFMbUF1Z0MzUUxIQXNvQzJnTHJBdmtCb1FHZUFaOEJvZ0dqQUF3QUFBQUFIS2dBQUFBQUFBQUNZZ0FBQUNBQUFBQWdBQUFBQVFBQUFDRUFBQUFoQUFBQjNnQUFBQ0lBQUFBaUFBQUI1UUFBQUNNQUFBQWpBQUFDSHdBQUFDUUFBQUFrQUFBQ25nQUFBQ1VBQUFBbEFBQUN1d0FBQUNZQUFBQW1BQUFCcEFBQUFDY0FBQUFuQUFBQjVBQUFBQ2dBQUFBcEFBQUIrZ0FBQUNvQUFBQXFBQUFDRXdBQUFDc0FBQUFyQUFBQ3hnQUFBQ3dBQUFBc0FBQUIyZ0FBQUMwQUFBQXRBQUFCOEFBQUFDNEFBQUF1QUFBQjJRQUFBQzhBQUFBdkFBQUNEd0FBQURBQUFBQTVBQUFCcFFBQUFEb0FBQUE3QUFBQjJ3QUFBRHdBQUFBOEFBQUN6QUFBQUQwQUFBQTlBQUFDeXdBQUFENEFBQUErQUFBQ3pRQUFBRDhBQUFBL0FBQUI0UUFBQUVBQUFBQkFBQUFDSFFBQUFFRUFBQUJhQUFBQUFnQUFBRnNBQUFCYkFBQUIvQUFBQUZ3QUFBQmNBQUFDRVFBQUFGMEFBQUJkQUFBQi9RQUFBRjRBQUFCZUFBQUMwUUFBQUY4QUFBQmZBQUFCK1FBQUFHQUFBQUJnQUFBREJRQUFBR0VBQUFCNkFBQUFIQUFBQUhzQUFBQjdBQUFCL2dBQUFId0FBQUI4QUFBQ0VBQUFBSDBBQUFCOUFBQUIvd0FBQUg0QUFBQitBQUFDMHdBQUFLQUFBQUNnQUFBQ3R3QUFBS0VBQUFDaEFBQUIzd0FBQUtJQUFBQ2pBQUFDbndBQUFLUUFBQUNrQUFBQ25RQUFBS1VBQUFDbEFBQUNvUUFBQUtZQUFBQ21BQUFDRWdBQUFLY0FBQUNuQUFBQ0ZnQUFBS2dBQUFDb0FBQURDZ0FBQUtrQUFBQ3BBQUFDR0FBQUFLb0FBQUNxQUFBQ1pBQUFBS3NBQUFDckFBQUI3Z0FBQUt3QUFBQ3NBQUFDMVFBQUFLMEFBQUN0QUFBQjhRQUFBSzRBQUFDdUFBQUNHZ0FBQUs4QUFBQ3ZBQUFEQ3dBQUFMQUFBQUN3QUFBQ25BQUFBTEVBQUFDeEFBQUMwQUFBQUxJQUFBQ3pBQUFDSWdBQUFMUUFBQUMwQUFBREJnQUFBTFVBQUFDMUFBQUMxd0FBQUxZQUFBQzJBQUFDRndBQUFMY0FBQUMzQUFBQjl3QUFBTGdBQUFDNEFBQURFQUFBQUxrQUFBQzVBQUFDSVFBQUFMb0FBQUM2QUFBQ1pRQUFBTHNBQUFDN0FBQUI3d0FBQUx3QUFBQytBQUFDdlFBQUFMOEFBQUMvQUFBQjRnQUFBTUFBQUFERUFBQUFOZ0FBQU1VQUFBREZBQUFBU2dBQUFNWUFBQURIQUFBQVRBQUFBTWdBQUFES0FBQUFWZ0FBQU1zQUFBRExBQUFBV2dBQUFNd0FBQURQQUFBQWNnQUFBTkFBQUFEUUFBQUE0d0FBQU5FQUFBRFJBQUFBakFBQUFOSUFBQURUQUFBQWtRQUFBTlFBQUFEV0FBQUFsQUFBQU5jQUFBRFhBQUFDeUFBQUFOZ0FBQURZQUFBQXB3QUFBTmtBQUFEY0FBQUF2QUFBQU4wQUFBRGRBQUFBMXdBQUFONEFBQURlQUFBQTVBQUFBTjhBQUFEZkFBQUJhd0FBQU9BQUFBRGtBQUFBNWdBQUFPVUFBQURsQUFBQStnQUFBT1lBQUFEbkFBQUEvQUFBQU9nQUFBRHFBQUFCQmdBQUFPc0FBQURyQUFBQkNnQUFBT3dBQUFEdkFBQUJJZ0FBQVBBQUFBRHdBQUFCbVFBQUFQRUFBQUR4QUFBQlB3QUFBUElBQUFEekFBQUJSUUFBQVBRQUFBRDJBQUFCU0FBQUFQY0FBQUQzQUFBQ3lRQUFBUGdBQUFENEFBQUJXd0FBQVBrQUFBRDhBQUFCY2dBQUFQMEFBQUQ5QUFBQmpRQUFBUDRBQUFEK0FBQUJtZ0FBQVA4QUFBRC9BQUFCamdBQUFRQUFBQUVBQUFBQU93QUFBUUVBQUFFQkFBQUE2d0FBQVFJQUFBRUNBQUFBUEFBQUFRTUFBQUVEQUFBQTdBQUFBUVFBQUFFRUFBQUFTd0FBQVFVQUFBRUZBQUFBK3dBQUFRWUFBQUVHQUFBQVRnQUFBUWNBQUFFSEFBQUEvZ0FBQVFnQUFBRUlBQUFBVUFBQUFRa0FBQUVKQUFBQkFBQUFBUW9BQUFFS0FBQUFVUUFBQVFzQUFBRUxBQUFCQVFBQUFRd0FBQUVNQUFBQVR3QUFBUTBBQUFFTkFBQUEvd0FBQVE0QUFBRU9BQUFBVWdBQUFROEFBQUVQQUFBQkFnQUFBUkFBQUFFUUFBQUFVd0FBQVJFQUFBRVJBQUFCQXdBQUFSSUFBQUVTQUFBQVd3QUFBUk1BQUFFVEFBQUJDd0FBQVJRQUFBRVVBQUFBWGdBQUFSVUFBQUVWQUFBQkRnQUFBUllBQUFFV0FBQUFYQUFBQVJjQUFBRVhBQUFCREFBQUFSZ0FBQUVZQUFBQVhRQUFBUmtBQUFFWkFBQUJEUUFBQVJvQUFBRWFBQUFBV1FBQUFSc0FBQUViQUFBQkNRQUFBUndBQUFFY0FBQUFhd0FBQVIwQUFBRWRBQUFCR3dBQUFSNEFBQUVlQUFBQVp3QUFBUjhBQUFFZkFBQUJGd0FBQVNBQUFBRWdBQUFBYUFBQUFTRUFBQUVoQUFBQkdBQUFBU0lBQUFFaUFBQUFhUUFBQVNNQUFBRWpBQUFCR1FBQUFTUUFBQUVrQUFBQWNBQUFBU1VBQUFFbEFBQUJJQUFBQVNZQUFBRW1BQUFBYmdBQUFTY0FBQUVuQUFBQkhnQUFBU2dBQUFFb0FBQUFmQUFBQVNrQUFBRXBBQUFCTEFBQUFTb0FBQUVxQUFBQWRnQUFBU3NBQUFFckFBQUJKZ0FBQVM0QUFBRXVBQUFBZUFBQUFTOEFBQUV2QUFBQkp3QUFBVEFBQUFFd0FBQUFkd0FBQVRFQUFBRXhBQUFCTFFBQUFUUUFBQUUwQUFBQWZRQUFBVFVBQUFFMUFBQUJMd0FBQVRZQUFBRTJBQUFBZmdBQUFUY0FBQUU0QUFBQk1BQUFBVGtBQUFFNUFBQUFmd0FBQVRvQUFBRTZBQUFCTWdBQUFUc0FBQUU3QUFBQWdRQUFBVHdBQUFFOEFBQUJOQUFBQVQwQUFBRTlBQUFBZ0FBQUFUNEFBQUUrQUFBQk13QUFBVDhBQUFFL0FBQUFnZ0FBQVVBQUFBRkFBQUFCTlFBQUFVRUFBQUZCQUFBQWhnQUFBVUlBQUFGQ0FBQUJPUUFBQVVNQUFBRkRBQUFBaVFBQUFVUUFBQUZFQUFBQlBBQUFBVVVBQUFGRkFBQUFqUUFBQVVZQUFBRkdBQUFCUUFBQUFVY0FBQUZIQUFBQWlnQUFBVWdBQUFGSUFBQUJQUUFBQVVrQUFBRkpBQUFCUWdBQUFVd0FBQUZNQUFBQWx3QUFBVTBBQUFGTkFBQUJTd0FBQVU0QUFBRk9BQUFBa3dBQUFVOEFBQUZQQUFBQlJ3QUFBVkFBQUFGUUFBQUFtQUFBQVZFQUFBRlJBQUFCVEFBQUFWSUFBQUZTQUFBQXFBQUFBVk1BQUFGVEFBQUJYQUFBQVZRQUFBRlVBQUFBcVFBQUFWVUFBQUZWQUFBQlhRQUFBVllBQUFGV0FBQUFxd0FBQVZjQUFBRlhBQUFCWGdBQUFWZ0FBQUZZQUFBQXFnQUFBVmtBQUFGWkFBQUJYd0FBQVZvQUFBRmFBQUFBcndBQUFWc0FBQUZiQUFBQll3QUFBVndBQUFGY0FBQUFzd0FBQVYwQUFBRmRBQUFCWndBQUFWNEFBQUZlQUFBQXNRQUFBVjhBQUFGZkFBQUJaUUFBQVdBQUFBRmdBQUFBc0FBQUFXRUFBQUZoQUFBQlpBQUFBV0lBQUFGaUFBQUF1QUFBQVdNQUFBRmpBQUFCYlFBQUFXUUFBQUZrQUFBQXR3QUFBV1VBQUFGbEFBQUJiQUFBQVdnQUFBRm9BQUFBMGdBQUFXa0FBQUZwQUFBQmlBQUFBV29BQUFGcUFBQUF3QUFBQVdzQUFBRnJBQUFCZGdBQUFXd0FBQUZzQUFBQXhBQUFBVzBBQUFGdEFBQUJlZ0FBQVc0QUFBRnVBQUFBd1FBQUFXOEFBQUZ2QUFBQmR3QUFBWEFBQUFGd0FBQUF3Z0FBQVhFQUFBRnhBQUFCZUFBQUFYSUFBQUZ5QUFBQXd3QUFBWE1BQUFGekFBQUJlUUFBQVhRQUFBRjBBQUFBMUFBQUFYVUFBQUYxQUFBQmlnQUFBWFlBQUFGMkFBQUEyUUFBQVhjQUFBRjNBQUFCandBQUFYZ0FBQUY0QUFBQTJBQUFBWGtBQUFGNUFBQUEzd0FBQVhvQUFBRjZBQUFCbFFBQUFYc0FBQUY3QUFBQTRRQUFBWHdBQUFGOEFBQUJsd0FBQVgwQUFBRjlBQUFBNEFBQUFYNEFBQUYrQUFBQmxnQUFBWDhBQUFGL0FBQUJhZ0FBQVk4QUFBR1BBQUFBNVFBQUFaSUFBQUdTQUFBQ29nQUFBYUFBQUFHZ0FBQUFvUUFBQWFFQUFBR2hBQUFCVlFBQUFhOEFBQUd2QUFBQXpBQUFBYkFBQUFHd0FBQUJnZ0FBQWMwQUFBSE5BQUFBUWdBQUFjNEFBQUhPQUFBQThnQUFBYzhBQUFIUEFBQUFlUUFBQWRBQUFBSFFBQUFCS1FBQUFkRUFBQUhSQUFBQW1RQUFBZElBQUFIU0FBQUJUUUFBQWRNQUFBSFRBQUFBeFFBQUFkUUFBQUhVQUFBQmV3QUFBZFVBQUFIVkFBQUF5UUFBQWRZQUFBSFdBQUFCZndBQUFkY0FBQUhYQUFBQXhnQUFBZGdBQUFIWUFBQUJmQUFBQWRrQUFBSFpBQUFBeHdBQUFkb0FBQUhhQUFBQmZRQUFBZHNBQUFIYkFBQUF5QUFBQWR3QUFBSGNBQUFCZmdBQUFlWUFBQUhtQUFBQWFnQUFBZWNBQUFIbkFBQUJHZ0FBQWZnQUFBSDRBQUFBaXdBQUFma0FBQUg1QUFBQlBnQUFBaGdBQUFJWUFBQUFzZ0FBQWhrQUFBSVpBQUFCWmdBQUFob0FBQUlhQUFBQXVRQUFBaHNBQUFJYkFBQUJiZ0FBQWpjQUFBSTNBQUFCTGdBQUFsRUFBQUpSQUFBQm5BQUFBbGtBQUFKWkFBQUJtd0FBQW1FQUFBSmhBQUFCblFBQUFyQUFBQUt3QUFBQ2h3QUFBcklBQUFLeUFBQUNpUUFBQXJNQUFBS3pBQUFDa1FBQUFyY0FBQUszQUFBQ2xnQUFBcmdBQUFLNEFBQUNtQUFBQXJzQUFBSzhBQUFDL0FBQUFyNEFBQUsrQUFBQy93QUFBcjhBQUFLL0FBQUMvZ0FBQXNZQUFBTEhBQUFEQndBQUFzZ0FBQUxNQUFBREFBQUFBdGdBQUFMWUFBQUREQUFBQXRrQUFBTFpBQUFERHdBQUF0b0FBQUxhQUFBRERRQUFBdHNBQUFMYkFBQURFd0FBQXR3QUFBTGNBQUFEQ1FBQUF0MEFBQUxkQUFBRERnQUFBdUVBQUFMaEFBQUNpd0FBQXVJQUFBTGlBQUFDa2dBQUF1TUFBQUxqQUFBQ2x3QUFBd0FBQUFNQUFBQURGQUFBQXdFQUFBTUJBQUFERmdBQUF3SUFBQU1DQUFBREdBQUFBd01BQUFNREFBQURHZ0FBQXdRQUFBTUVBQUFESEFBQUF3WUFBQU1HQUFBREhnQUFBd2NBQUFNSEFBQURJQUFBQXdnQUFBTUlBQUFESWdBQUF3a0FBQU1KQUFBRE1RQUFBd29BQUFNS0FBQURKQUFBQXdzQUFBTUxBQUFESmdBQUF3d0FBQU1NQUFBREtBQUFBeHNBQUFNYkFBQURNd0FBQXlNQUFBTWpBQUFETUFBQUF5UUFBQU1rQUFBREx3QUFBeVlBQUFNcEFBQURLZ0FBQXk0QUFBTXVBQUFETGdBQUF6RUFBQU14QUFBRE5BQUFBM1FBQUFOMUFBQURtZ0FBQTM0QUFBTitBQUFEbHdBQUE0UUFBQU9FQUFBRG5BQUFBNFVBQUFPRkFBQURuZ0FBQTRZQUFBT0dBQUFEWlFBQUE0Y0FBQU9IQUFBRG1BQUFBNGdBQUFPS0FBQURaZ0FBQTR3QUFBT01BQUFEYWdBQUE0NEFBQU9PQUFBRGF3QUFBNDhBQUFPUEFBQURiUUFBQTVBQUFBT1FBQUFEa0FBQUE1RUFBQU9oQUFBRFRRQUFBNk1BQUFPcEFBQURYZ0FBQTZvQUFBT3FBQUFEYVFBQUE2c0FBQU9yQUFBRGJBQUFBNndBQUFPdkFBQURod0FBQTdBQUFBT3dBQUFEa1FBQUE3RUFBQVBCQUFBRGJnQUFBOElBQUFQQ0FBQURoZ0FBQThNQUFBUEpBQUFEZndBQUE4b0FBQVBLQUFBRGl3QUFBOHNBQUFQTEFBQURqZ0FBQTh3QUFBUE5BQUFEakFBQUE4NEFBQVBPQUFBRGp3QUFBOWNBQUFQWEFBQURrZ0FBQTlrQUFBUFpBQUFEa3dBQUE5c0FBQVBiQUFBRGxBQUFBOTBBQUFQZEFBQURsUUFBQStFQUFBUGhBQUFEbGdBQUJBQUFBQVFQQUFBRHdRQUFCQkFBQUFRdkFBQURvUUFBQkRBQUFBUmZBQUFEN0FBQUJHSUFBQVJpQUFBRDBRQUFCR01BQUFSakFBQUVIQUFBQkhJQUFBUnlBQUFEMGdBQUJITUFBQVJ6QUFBRUhRQUFCSFFBQUFSMEFBQUQwd0FBQkhVQUFBUjFBQUFFSGdBQUJKQUFBQVNRQUFBRDFBQUFCSkVBQUFTUkFBQUVId0FBQkpJQUFBU1NBQUFEMVFBQUJKTUFBQVNUQUFBRUlBQUFCSllBQUFTV0FBQUQxZ0FBQkpjQUFBU1hBQUFFSVFBQUJKZ0FBQVNZQUFBRDF3QUFCSmtBQUFTWkFBQUVJZ0FBQkpvQUFBU2FBQUFEMkFBQUJKc0FBQVNiQUFBRUl3QUFCS0FBQUFTZ0FBQUQyUUFBQktFQUFBU2hBQUFFSkFBQUJLSUFBQVNpQUFBRDJnQUFCS01BQUFTakFBQUVKUUFBQktvQUFBU3FBQUFEMndBQUJLc0FBQVNyQUFBRUpnQUFCSzRBQUFTdUFBQUQzQUFBQks4QUFBU3ZBQUFFSndBQUJMQUFBQVN3QUFBRDNRQUFCTEVBQUFTeEFBQUVLQUFBQkxJQUFBU3lBQUFEM2dBQUJMTUFBQVN6QUFBRUtRQUFCTFlBQUFTMkFBQUQzd0FBQkxjQUFBUzNBQUFFS2dBQUJMb0FBQVM2QUFBRDRBQUFCTHNBQUFTN0FBQUVLd0FBQk1BQUFBVEJBQUFENFFBQUJNSUFBQVRDQUFBRUxBQUFCTThBQUFUUEFBQUVMUUFBQk5BQUFBVFFBQUFENHdBQUJORUFBQVRSQUFBRUxnQUFCTlFBQUFUVUFBQUQ1QUFBQk5VQUFBVFZBQUFFTHdBQUJOWUFBQVRXQUFBRDVRQUFCTmNBQUFUWEFBQUVNQUFBQk5nQUFBVFlBQUFENWdBQUJOa0FBQVRaQUFBRU1RQUFCT0lBQUFUaUFBQUQ1d0FBQk9NQUFBVGpBQUFFTWdBQUJPWUFBQVRtQUFBRDZBQUFCT2NBQUFUbkFBQUVNd0FBQk9nQUFBVG9BQUFENlFBQUJPa0FBQVRwQUFBRU5BQUFCTzRBQUFUdUFBQUQ2Z0FBQk84QUFBVHZBQUFFTlFBQUJQSUFBQVR5QUFBRDZ3QUFCUE1BQUFUekFBQUVOZ0FBSFVNQUFCMURBQUFDZ0FBQUhVY0FBQjFIQUFBQ2dRQUFIVWdBQUIxSkFBQUNnd0FBSFUwQUFCMU5BQUFDaGdBQUhVOEFBQjFQQUFBQ2lnQUFIVkFBQUIxUUFBQUNqQUFBSFZJQUFCMVNBQUFDamdBQUhWWUFBQjFXQUFBQ2p3QUFIVmNBQUIxWUFBQUNrd0FBSFZzQUFCMWJBQUFDbFFBQUhad0FBQjJjQUFBQ2dnQUFIYUFBQUIyZ0FBQUNoUUFBSGJzQUFCMjdBQUFDbVFBQUhnd0FBQjRNQUFBQVZBQUFIZzBBQUI0TkFBQUJCQUFBSGc0QUFCNE9BQUFBVlFBQUhnOEFBQjRQQUFBQkJRQUFIaUFBQUI0Z0FBQUFiQUFBSGlFQUFCNGhBQUFCSEFBQUhpUUFBQjRrQUFBQWNRQUFIaVVBQUI0bEFBQUJJUUFBSGlvQUFCNHFBQUFBYndBQUhpc0FBQjRyQUFBQkh3QUFIallBQUI0MkFBQUFnd0FBSGpjQUFCNDNBQUFCTmdBQUhqZ0FBQjQ0QUFBQWhBQUFIamtBQUI0NUFBQUJOd0FBSGpvQUFCNDZBQUFBaFFBQUhqc0FBQjQ3QUFBQk9BQUFIajRBQUI0K0FBQUFod0FBSGo4QUFCNC9BQUFCT2dBQUhrSUFBQjVDQUFBQWlBQUFIa01BQUI1REFBQUJPd0FBSGtRQUFCNUVBQUFBamdBQUhrVUFBQjVGQUFBQlFRQUFIa1lBQUI1R0FBQUFqd0FBSGtjQUFCNUhBQUFCUXdBQUhrZ0FBQjVJQUFBQWtBQUFIa2tBQUI1SkFBQUJSQUFBSGxvQUFCNWFBQUFBckFBQUhsc0FBQjViQUFBQllBQUFIbHdBQUI1Y0FBQUFyUUFBSGwwQUFCNWRBQUFCWVFBQUhsNEFBQjVlQUFBQXJnQUFIbDhBQUI1ZkFBQUJZZ0FBSG1BQUFCNWdBQUFBdEFBQUhtRUFBQjVoQUFBQmFBQUFIbUlBQUI1aUFBQUF0UUFBSG1NQUFCNWpBQUFCYVFBQUhtd0FBQjVzQUFBQXVnQUFIbTBBQUI1dEFBQUJjQUFBSG00QUFCNXVBQUFBdXdBQUhtOEFBQjV2QUFBQmNRQUFIb0FBQUI2QUFBQUExZ0FBSG9FQUFCNkJBQUFCakFBQUhvSUFBQjZDQUFBQTB3QUFIb01BQUI2REFBQUJpUUFBSG9RQUFCNkVBQUFBMVFBQUhvVUFBQjZGQUFBQml3QUFIbzRBQUI2T0FBQUEyZ0FBSG84QUFCNlBBQUFCa0FBQUhwSUFBQjZTQUFBQTRnQUFIcE1BQUI2VEFBQUJtQUFBSHBjQUFCNlhBQUFCYndBQUhwNEFBQjZlQUFBQXRnQUFIcUFBQUI2Z0FBQUFTQUFBSHFFQUFCNmhBQUFBK0FBQUhxSUFBQjZpQUFBQVNRQUFIcU1BQUI2akFBQUErUUFBSHFRQUFCNmtBQUFBUXdBQUhxVUFBQjZsQUFBQTh3QUFIcVlBQUI2bUFBQUFSUUFBSHFjQUFCNm5BQUFBOVFBQUhxZ0FBQjZvQUFBQVJnQUFIcWtBQUI2cEFBQUE5Z0FBSHFvQUFCNnFBQUFBUndBQUhxc0FBQjZyQUFBQTl3QUFIcXdBQUI2c0FBQUFSQUFBSHEwQUFCNnRBQUFBOUFBQUhxNEFBQjZ1QUFBQVBRQUFIcThBQUI2dkFBQUE3UUFBSHJBQUFCNndBQUFBUHdBQUhyRUFBQjZ4QUFBQTd3QUFIcklBQUI2eUFBQUFRQUFBSHJNQUFCNnpBQUFBOEFBQUhyUUFBQjYwQUFBQVFRQUFIclVBQUI2MUFBQUE4UUFBSHJZQUFCNjJBQUFBUGdBQUhyY0FBQjYzQUFBQTdnQUFIcmdBQUI2NEFBQUFaQUFBSHJrQUFCNjVBQUFCRkFBQUhyb0FBQjY2QUFBQVpRQUFIcnNBQUI2N0FBQUJGUUFBSHJ3QUFCNjhBQUFBWmdBQUhyMEFBQjY5QUFBQkZnQUFIcjRBQUI2K0FBQUFYd0FBSHI4QUFCNi9BQUFCRHdBQUhzQUFBQjdBQUFBQVlRQUFIc0VBQUI3QkFBQUJFUUFBSHNJQUFCN0NBQUFBWWdBQUhzTUFBQjdEQUFBQkVnQUFIc1FBQUI3RUFBQUFZd0FBSHNVQUFCN0ZBQUFCRXdBQUhzWUFBQjdHQUFBQVlBQUFIc2NBQUI3SEFBQUJFQUFBSHNnQUFCN0lBQUFBZXdBQUhza0FBQjdKQUFBQkt3QUFIc29BQUI3S0FBQUFlZ0FBSHNzQUFCN0xBQUFCS2dBQUhzd0FBQjdNQUFBQW53QUFIczBBQUI3TkFBQUJVd0FBSHM0QUFCN09BQUFBb0FBQUhzOEFBQjdQQUFBQlZBQUFIdEFBQUI3UUFBQUFtZ0FBSHRFQUFCN1JBQUFCVGdBQUh0SUFBQjdTQUFBQW5BQUFIdE1BQUI3VEFBQUJVQUFBSHRRQUFCN1VBQUFBblFBQUh0VUFBQjdWQUFBQlVRQUFIdFlBQUI3V0FBQUFuZ0FBSHRjQUFCN1hBQUFCVWdBQUh0Z0FBQjdZQUFBQW13QUFIdGtBQUI3WkFBQUJUd0FBSHRvQUFCN2FBQUFBb2dBQUh0c0FBQjdiQUFBQlZnQUFIdHdBQUI3Y0FBQUFwQUFBSHQwQUFCN2RBQUFCV0FBQUh0NEFBQjdlQUFBQXBRQUFIdDhBQUI3ZkFBQUJXUUFBSHVBQUFCN2dBQUFBcGdBQUh1RUFBQjdoQUFBQldnQUFIdUlBQUI3aUFBQUFvd0FBSHVNQUFCN2pBQUFCVndBQUh1UUFBQjdrQUFBQXlnQUFIdVVBQUI3bEFBQUJnQUFBSHVZQUFCN21BQUFBeXdBQUh1Y0FBQjduQUFBQmdRQUFIdWdBQUI3b0FBQUF6UUFBSHVrQUFCN3BBQUFCZ3dBQUh1b0FBQjdxQUFBQXp3QUFIdXNBQUI3ckFBQUJoUUFBSHV3QUFCN3NBQUFBMEFBQUh1MEFBQjd0QUFBQmhnQUFIdTRBQUI3dUFBQUEwUUFBSHU4QUFCN3ZBQUFCaHdBQUh2QUFBQjd3QUFBQXpnQUFIdkVBQUI3eEFBQUJoQUFBSHZJQUFCN3lBQUFBM0FBQUh2TUFBQjd6QUFBQmtnQUFIdlFBQUI3MEFBQUEyd0FBSHZVQUFCNzFBQUFCa1FBQUh2WUFBQjcyQUFBQTNRQUFIdmNBQUI3M0FBQUJrd0FBSHZnQUFCNzRBQUFBM2dBQUh2a0FBQjc1QUFBQmxBQUFJQWNBQUNBSEFBQUN1QUFBSUJBQUFDQVFBQUFCOGdBQUlCSUFBQ0FTQUFBQjlRQUFJQk1BQUNBVUFBQUI4d0FBSUJVQUFDQVZBQUFCOWdBQUlCZ0FBQ0FaQUFBQjVnQUFJQm9BQUNBYUFBQUI2Z0FBSUJ3QUFDQWRBQUFCNkFBQUlCNEFBQ0FlQUFBQjZ3QUFJQ0FBQUNBaEFBQUNGQUFBSUNJQUFDQWlBQUFCK0FBQUlDVUFBQ0FsQUFBRVFRQUFJQ1lBQUNBbUFBQUIzUUFBSURBQUFDQXdBQUFDdkFBQUlESUFBQ0F6QUFBQytnQUFJRGtBQUNBNkFBQUI3QUFBSUR3QUFDQThBQUFFUWdBQUlFUUFBQ0JFQUFBQ3RBQUFJRWNBQUNCSkFBQUVRd0FBSUhBQUFDQndBQUFDSUFBQUlIRUFBQ0J4QUFBQ2lBQUFJSFFBQUNCNUFBQUNKQUFBSUgwQUFDQitBQUFDS2dBQUlIOEFBQ0IvQUFBQ2pRQUFJSUFBQUNDSkFBQUNOQUFBSUkwQUFDQ09BQUFDUGdBQUlLRUFBQ0NoQUFBQ293QUFJS1FBQUNDa0FBQUNwQUFBSUtZQUFDQ25BQUFDcFFBQUlLa0FBQ0NwQUFBQ3B3QUFJS3NBQUNDc0FBQUNxQUFBSUs0QUFDQ3VBQUFDcWdBQUlMRUFBQ0N5QUFBQ3F3QUFJTFFBQUNDMUFBQUNyUUFBSUxnQUFDQzRBQUFDc1FBQUlMa0FBQ0M2QUFBQ3J3QUFJTDBBQUNDOUFBQUNzZ0FBSUw4QUFDQy9BQUFDc3dBQUlSTUFBQ0VUQUFBQzN3QUFJUllBQUNFV0FBQUVPQUFBSVJjQUFDRVhBQUFDR1FBQUlTQUFBQ0VnQUFBQ0hBQUFJU0lBQUNFaUFBQUNHd0FBSVNZQUFDRW1BQUFDM0FBQUlTNEFBQ0V1QUFBQzRBQUFJVk1BQUNGVUFBQUN3QUFBSVZzQUFDRmVBQUFDd2dBQUlaQUFBQ0dRQUFBQzRRQUFJWkVBQUNHUkFBQUM0d0FBSVpJQUFDR1NBQUFDNVFBQUlaTUFBQ0dUQUFBQzV3QUFJWllBQUNHV0FBQUM0Z0FBSVpjQUFDR1hBQUFDNUFBQUlaZ0FBQ0dZQUFBQzVnQUFJWmtBQUNHWkFBQUM2QUFBSWdJQUFDSUNBQUFDMkFBQUlnWUFBQ0lHQUFBQzJ3QUFJZzhBQUNJUEFBQUMzZ0FBSWhFQUFDSVJBQUFDM1FBQUloSUFBQ0lTQUFBQ3h3QUFJaFVBQUNJVkFBQUN0UUFBSWhrQUFDSVpBQUFDeWdBQUlob0FBQ0lhQUFBQzJnQUFJaDRBQUNJZUFBQUMxZ0FBSWlzQUFDSXJBQUFDMlFBQUlrZ0FBQ0pJQUFBQzFBQUFJbUFBQUNKZ0FBQUMwZ0FBSW1RQUFDSmxBQUFDemdBQUphQUFBQ1dnQUFBQzZRQUFKYklBQUNXekFBQUM3UUFBSmJZQUFDVzNBQUFDN3dBQUpid0FBQ1c5QUFBQzhRQUFKY0FBQUNYQkFBQUM4d0FBSmNZQUFDWEdBQUFDNmdBQUpja0FBQ1hKQUFBQzZ3QUFKY29BQUNYS0FBQUMrUUFBSmhBQUFDWVJBQUFDOVFBQUptb0FBQ1pxQUFBQytBQUFKeE1BQUNjVEFBQUM5d0FBSjFJQUFDZFNBQUFDN0FBQUxqb0FBQzQ3QUFBRVBBQUErd0FBQVBzQUFBQUJvUUFBK3dFQUFQc0NBQUFCbmdBQSt3TUFBUHNFQUFBQm9nQUI4UzhBQWZFdkFBQUVQZ0FCOFdvQUFmRnJBQUFFUHdBREFBQUFBQUFBLzdVQU1nQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFFQXdBQkFRRVhVMjkxY21ObFUyVnlhV1pRY204dFVtVm5kV3hoY2dBQkFRRXJIQVkzQUJ3R09BRWNCamtNQUJ3R09nUDdoUHZqSEFpNytuNEZIR0hKRHh4a0loSE5IUUFCaElrU0JMUUNBQUVBQ0FBT0FCVUFIQUFqQUNvQU1RQTRBRDhBUmdCTkFGUUFXd0JpQUdrQWNBQjJBSHdBaHdDUkFKY0FuUUNrQUtzQXNRQzRBTUlBeVFEUEFOWUEzUURrQU9zQThnRDVBUUFCQndFTkFSY0JIZ0VrQVM4Qk5nRkJBVVVCVEFGWEFWNEJaUUZ2QVhZQmZRR0VBWXNCa1FHY0FhTUJxUUd2QWJZQnVnSEJBY2dCendIV0FkMEI0d0hwQWZBQjl3SCtBZ1VDREFJVEFob0NKd0l1QWpVQ1BBSkRBa29DVVFKWUFsOENaQUpyQW5JQ2VRS0FBb2NDalFLVEFwb0NvUUtvQXE4Q3RRSzhBc01DemdMVkF0d0M0d0xwQXZBQzl3TCtBd1VEREFNUkF4NERKUU1yQXpJRE9RTkFBMGNEVGdOVkExd0RZUU5vQTI4RGRnTjlBNFFEaWdPUUE1c0RwQU9xQTdVRHZBUERBOGtEMEFQWEE5MEQ1d1B1QS9VRC9BUUNCQWtFRUFRWEJCNEVKUVFzQkRNRU9nUkJCRWdFVHdSV0JGMEVaQVJxQkhBRWV3U0ZCSXNFa1FTWUJKOEVwUVNzQkxZRXZRVERCTW9FMFFUWUJOOEU1Z1R0QlBRRSt3VUJCUXNGRWdVWUJTTUZLZ1UxQlRrRlFBVkxCVklGV1FWZ0JXVUZiQVZ6QlhvRmdBV0hCWklGbVFXbEJhc0ZzUVc0QmJ3Rnd3WEtCZEVGMkFYZkJlVUY2d1h5QmZrR0FBWUxCaElHR1FZZ0JpY0dOQVk3QmtJR1NRWlFCbGNHWGdabEJtd0djUVo0Qm44R2hnYU5CcFFHbWdhaEJxY0dyZ2ExQnJ3R3dnYkpCdEFHMndiaUJ1a0c3Z2IwQnZzSEFnY0pCeEFIRndjZUJ5TUhNQWMzQnowSFJBZExCMUlIV1FkZ0IyY0hiZ2R6QjNvSGdRZUlCNDhIbGdlY0I2SUhyUWUyQjd3SHh3Zk9COVVIMndmaUIra0g3d2Y1Q0FBSUJ3Z09DQlVJR0FnYkNCNElJUWdtQ0NzSU5RZzhDRUlJU0FoUUNGY0lYZ2hrQ0d3SWRBaDdDSWNJa0FpWUNLQUlxZ2l6Q0x3SXhBak9DTmdJNFFqcENQQUk5d2tBQ1FnSkVBa1hDU0FKS1FreENUa0pRQWxIQ1ZBSldBbGdDV2NKY0FsNUNZRUpqd21mQ2FZSnJRbTBDY1VKMXdub0Nmb0tCQW9SQ2hzS0pRbzJDa01LVVFwZ0NuQUtmUXFMQ3BJS21RcWZDcWdLc0FxNENzSUt5d3JVQ3R3SzVncndDdmtMQndzV0N5WUxOd3RDQzB3TFZndGhDMndMZHd1QUM0Z0xrQXVhQzZNTHJBdTBDNzRMeUF2UkM5OEw3Z3YrREE4TUdnd2tEQzBNTlF3OURFY01VQXhaREdFTWF3eDFESDRNakF5YkRLc012QXpIRE5FTTJnemlET29NOUF6OURRWU5EZzBZRFNJTkt3MDVEVWdOV0ExcERYUU5mZzJFRFlvTmtBMldEWndOb2cyb0RhNE50QTI2RGNBTnhnM01EZElOMkEzZURlUU42ZzN3RGZZTi9BNENEZ2dPRGc0VURob09JQTRtRGl3T01nNDREajRPUkE1S0RsQU9WZzVjRG1JT2FBNXVEblFPZWc2QURvWU9qQTZTRHBnT25nNmtEcW9Pc0E2MkRzRU96QTdURHRjTzNnN2tEdXNPN3c3ekR2b1BBUThJRHc4UEZnOGREeVFQS3c4eUR6a1BRQTlLRDFFUFdBOWlEMjRQZFE5K0Q0b1BrZytkRDZVUHJBKzNENzhQeGcvTkQ5UVAzUS9rRCtzUDlBLzdFQUlRQ1JBUUVCY1FIaEFuRUM0UU5SQThFRU1RU2hCUkVGZ1FYeEJtRUcwUWRCQjdFSUlRaVJDUUVKY1FvaENwRUxBUXR4QytFTVVRekJEVEVOb1E0UkRvRU84UTloRC9FUkFSRnhFakVTb1JOaEU5RVU0UlZSRmhFV2dSZFJGOEVZZ1JqeEdmRWFZUnRSRzhFY2NSemhIaEVlZ1I5Qkg3RWdJU0NSSVFFaGNTSGhJbEVpd1NOeEkrRWtVU1VCSmZFbW9TZVJLRUVwTVNuaEt0RXJnU3h4TFNFdUVTN0JMN0V3WVRGUk1nRXk4VE9oTkpFMVFUWXhOdUUzMFRnaE9HRTRzVGtoT1pFNTBUb0JPbEU2a1RyaE8wRTdZVHVCTzZFOEVUd3hQR0U4c1R6aFBWRTlnVDJ4UGVFK1VUN3hQN0ZBTVVEQlFZRkNRVU1CUS9GRWtVVGhSU0ZGY1VYQlJqRkdjVWFoUnZGSE1VZUJSK0ZJVVVoeFNKRkpBVWtoU1ZGSm9VblJTa0ZLY1VxaFN0RkxJVXVSVERGTThVMXhUZ0ZPd1UrQlVFRlJNVkhSVXVGVUlWU1JWUUZWY1ZYaFZsRld3VmRSV0NGWWtWa0JXVkZaNFZxeFcwRmNFVnlCWFBGZFlWM1JYa0Zlc1Y4aFg1RmdBV0J4WU9GaFVXSEJZakZpb1dNUlk0Rmo4V1JoWk5GbFFXV3haaUZta1djQlozRm40V2hSYU1GcE1XbWhhaEZxZ1dyeGEyRnIwV3hCYkxGdElXMlJiZ0Z1Y1c3aGIxRnZ3WEF4Y0tGeEVYR0JjZkZ5WVhMUmMwRnpzWFFoZEpGMUFYVnhkZUYyVVhiQmR6RjNvWGdSZUlGNDhYbGhlZEY2UVhxeGV5RjdrWHdCZkhGODRYMVJmY0YrTVg2aGZ4Ri9nWC94Z0dHQTBZRkJnYkdDSVlLUmd3R0RjWVBoaEZHRXdZVXhoYUdHRVlhQmh2R0hZWWZSaUVHSXNZa2hpWkdLQVlweGl1R0xVWXZCakRHTW9ZMFJqWUdOOFk1aGp0R1BRWSt4a0NHUWtaRUJrWEdSNFpKUmtzR1RNWk9obEJHVWdaVHhsV0dWMFpaQmxyR1hJWmVSbUFHWWNaamhtVkdad1pveG1xR2JFWnVCbS9HY1laelJuVUdkc1o1aG50R2ZrYUNCb1VHaHNhSWhvb0dpNGFOQm85R2tRYVN4cFNHbFlhV2hwZUdtSWFaaHBxR200YWNocDJHbm9hZmhxQ0dvWWFpaHFPR3BJYWxocWFHcDRhb2hxbUdxb2FyaHF5R3JZYXVockRHc3dhMmhyakd1OGErUnNDR3d3YkZoc2dHeW9iTkJzK0cwZ2JVaHRjRzJZYmNCdDZHNFFiakJ1V0c1c2JwaHV2RzdnYnhodlRHOXdiNVJ2dkcva2NBaHdMSEJrY0lod3VIRGdjUlJ4UEhGZ2NZaHhzSEhZY2dCeUtISlFjbmh5b0hMRWN2aHpJSE5FYzN4enBIUE1kQVIwSUhSSWRJQjBxSFRNZFBCMUtIVllkWUIxdEhYY2RnUjJMSFpVZG5oMnNIYllkdngzSUhkSWQyUjNqSGUwZDl4NEFIZ29lRkI0ZEhpY2VNQjQ1SGtNZVRSNVhIbUVlYWg1ekhuMGVpeDZVSHFBZXFoNjZIc1Flemg3WUh1SWU3QjcySHdBZkNoOFNIeHdmSmg4d0h6b2ZSQjlOSDFJZld4OWtIMjRmZUIrQ0g0d2ZsUitlSDZnZnNoL0FIOG9mMUIvZEgrY2Y4Ui83SUFVZ0R5QVlJQ0VnTHlBN0lFVWdUU0JkSUdjZ2NDQjZJSVFnamlDWUlLSWdyQ0MySUw0Z3lDRFNJTndnNWlEd0lQa2hBaUVRSVJ3aEpTRXVJVG9oU0NGU0lWd2haU0Z2SVhraGdpR0xJWmdob2lHb0liQWh1aUhDSWNraDBTSFpJZU1oNmlId0lmZ2gveUlISWhBaUZTSWFJaDhpS1NJdUlqUWlQQ0pDSWt3aVVpSllJbDRpWmlKMUlvY2lsQ0thSXFBaXJDS3pJcmtpdnlMSElzNGkxU0xiSXVNaTZ5THlJdnNqQ0NNVEl5SWpNQ003STBjalZDTmpJM01qZkNPRkk0NGptaU9uSTdVanhDUFFJOTBqNXlQeEkvc2tCU1FQSkJra0l5UXRKRGNrUVNSTEpGVWtYeVJwSkhNa2ZTU0hKSkVrbXlTbEpLOGt1U1RESk0wazF5VGhKT3NrOVNUL0pRa2xFeVVkSlNjbE1TVTdKVVVsVHlWWkpXTWxiU1YzSllFbGl5V1ZKWjhscVNXekpiMGx4eVhSSmRzbDVTWHZKZmttQXlZTkpoY21JU1lySmpVbVB5WkpKbE1tWFNabkpuRW1leWFGSm84bW1TYWpKcTBtdHliQkpzc216aWN1SjIwbmZVRnRZV055YjI1QlluSmxkbVYxYm1reFJVRkZkVzVwTVVWQ05uVnVhVEZGUWpCMWJta3hSVUl5ZFc1cE1VVkNOSFZ1YVRBeFEwUjFibWt4UlVFMGRXNXBNVVZCUTNWdWFURkZRVFoxYm1reFJVRTRkVzVwTVVWQlFYVnVhVEZGUVRCMWJta3hSVUV5UVc5bmIyNWxhME5oWTNWMFpVTmpZWEp2YmtOamFYSmpkVzFtYkdWNFEyUnZkR0ZqWTJWdWRFUmpZWEp2YmtSamNtOWhkSFZ1YVRGRk1FTjFibWt4UlRCRlJXTmhjbTl1UlcxaFkzSnZia1ZrYjNSaFkyTmxiblJGYjJkdmJtVnJSV0p5WlhabGRXNXBNVVZDUlhWdWFURkZReloxYm1reFJVTXdkVzVwTVVWRE1uVnVhVEZGUXpSMWJta3hSVUk0ZFc1cE1VVkNRWFZ1YVRGRlFrTkhZbkpsZG1WSFpHOTBZV05qWlc1MGRXNXBNREV5TWtkallYSnZia2RqYVhKamRXMW1iR1Y0ZFc1cE1VVXlNSFZ1YVRBd05EY3dNekF6U0dKaGNuVnVhVEZGTWtGSVkybHlZM1Z0Wm14bGVIVnVhVEZGTWpSSmJXRmpjbTl1U1dSdmRHRmpZMlZ1ZEVsdloyOXVaV3QxYm1rd01VTkdkVzVwTVVWRFFYVnVhVEZGUXpoSmRHbHNaR1ZLWTJseVkzVnRabXhsZUhWdWFUQXhNelpNWVdOMWRHVk1ZMkZ5YjI1MWJta3dNVE5DVEdSdmRIVnVhVEZGTXpaMWJta3hSVE00ZFc1cE1VVXpRWFZ1YVRGRk0wVjFibWt4UlRReVRtRmpkWFJsVG1OaGNtOXVkVzVwTURGR09IVnVhVEF4TkRWMWJta3hSVFEwZFc1cE1VVTBOblZ1YVRGRk5EaDFibWt3TVRSRlQyMWhZM0p2Yms5b2RXNW5ZWEoxYld4aGRYUjFibWt3TVVReGRXNXBNVVZFTUhWdWFURkZSRGgxYm1reFJVUXlkVzVwTVVWRU5IVnVhVEZGUkRaMWJta3hSVU5EZFc1cE1VVkRSVTlvYjNKdWRXNXBNVVZFUVhWdWFURkZSVEoxYm1reFJVUkRkVzVwTVVWRVJYVnVhVEZGUlRCU1lXTjFkR1ZTWTJGeWIyNTFibWt3TVRVMmRXNXBNVVUxUVhWdWFURkZOVU4xYm1reFJUVkZVMkZqZFhSbGRXNXBNREUxUlhWdWFUQXlNVGhUWTJseVkzVnRabXhsZUhWdWFURkZOakIxYm1reFJUWXlkVzVwTVVVNVJWUmpZWEp2Ym5WdWFUQXhOakoxYm1rd01qRkJkVzVwTVVVMlEzVnVhVEZGTmtWVmJXRmpjbTl1VlhKcGJtZFZhSFZ1WjJGeWRXMXNZWFYwVlc5bmIyNWxhMVZpY21WMlpYVnVhVEF4UkROMWJta3dNVVEzZFc1cE1ERkVPWFZ1YVRBeFJFSjFibWt3TVVRMWRXNXBNVVZGTkhWdWFURkZSVFpWYUc5eWJuVnVhVEZGUlRoMWJta3hSVVl3ZFc1cE1VVkZRWFZ1YVRGRlJVTjFibWt4UlVWRlZYUnBiR1JsVjJGamRYUmxWMk5wY21OMWJXWnNaWGhYWkdsbGNtVnphWE5YWjNKaGRtVlpZMmx5WTNWdFpteGxlSFZ1YVRGRk9FVjFibWt4UlVZMFdXZHlZWFpsZFc1cE1VVkdOblZ1YVRGRlJqaGFZV04xZEdWYVpHOTBZV05qWlc1MGRXNXBNVVU1TW5WdWFUQXhPRVpoYldGamNtOXVZV0p5WlhabGRXNXBNVVZCUm5WdWFURkZRamQxYm1reFJVSXhkVzVwTVVWQ00zVnVhVEZGUWpWMWJta3dNVU5GZFc1cE1VVkJOWFZ1YVRGRlFVUjFibWt4UlVFM2RXNXBNVVZCT1hWdWFURkZRVUoxYm1reFJVRXhkVzVwTVVWQk0yRnZaMjl1Wld0allXTjFkR1ZqWTJGeWIyNWpZMmx5WTNWdFpteGxlR05rYjNSaFkyTmxiblJrWTJGeWIyNWtZM0p2WVhSMWJta3hSVEJFZFc1cE1VVXdSbVZqWVhKdmJtVnRZV055YjI1bFpHOTBZV05qWlc1MFpXOW5iMjVsYTJWaWNtVjJaWFZ1YVRGRlFrWjFibWt4UlVNM2RXNXBNVVZETVhWdWFURkZRek4xYm1reFJVTTFkVzVwTVVWQ09YVnVhVEZGUWtKMWJta3hSVUpFWjJKeVpYWmxaMlJ2ZEdGalkyVnVkSFZ1YVRBeE1qTm5ZMkZ5YjI1blkybHlZM1Z0Wm14bGVIVnVhVEZGTWpGMWJta3dNRFkzTURNd00yaGlZWEoxYm1reFJUSkNhR05wY21OMWJXWnNaWGgxYm1reFJUSTFhVzFoWTNKdmJtbHZaMjl1Wld0cExuUnlhM1Z1YVRBeFJEQjFibWt4UlVOQ2RXNXBNVVZET1dsMGFXeGtaWFZ1YVRBeU16ZHFZMmx5WTNWdFpteGxlSFZ1YVRBeE16ZHJaM0psWlc1c1lXNWthV05zWVdOMWRHVnNZMkZ5YjI1MWJta3dNVE5EYkdSdmRIVnVhVEZGTXpkMWJta3hSVE01ZFc1cE1VVXpRblZ1YVRGRk0wWjFibWt4UlRRemJtRmpkWFJsYm1OaGNtOXVkVzVwTURGR09YVnVhVEF4TkRaMWJta3hSVFExYm1Gd2IzTjBjbTl3YUdWMWJta3hSVFEzZFc1cE1VVTBPWFZ1YVRBeE5FWnZiV0ZqY205dWIyaDFibWRoY25WdGJHRjFkSFZ1YVRBeFJESjFibWt4UlVReGRXNXBNVVZFT1hWdWFURkZSRE4xYm1reFJVUTFkVzVwTVVWRU4zVnVhVEZGUTBSMWJta3hSVU5HYjJodmNtNTFibWt4UlVSQ2RXNXBNVVZGTTNWdWFURkZSRVIxYm1reFJVUkdkVzVwTVVWRk1YSmhZM1YwWlhWdWFUQXhOVGR5WTJGeWIyNTFibWt4UlRWQ2RXNXBNVVUxUkhWdWFURkZOVVp6WVdOMWRHVjFibWt3TVRWR2RXNXBNREl4T1hOamFYSmpkVzFtYkdWNGRXNXBNVVUyTVhWdWFURkZOak5zYjI1bmMzUmpZWEp2Ym5WdWFUQXhOak4xYm1rd01qRkNkVzVwTVVVNU4zVnVhVEZGTmtSMWJta3hSVFpHZFcxaFkzSnZiblZ5YVc1bmRXaDFibWRoY25WdGJHRjFkSFZ2WjI5dVpXdDFZbkpsZG1WMWJta3dNVVEwZFc1cE1ERkVPSFZ1YVRBeFJFRjFibWt3TVVSRGRXNXBNREZFTm5WdWFURkZSVFYxYm1reFJVVTNkV2h2Y201MWJta3hSVVU1ZFc1cE1VVkdNWFZ1YVRGRlJVSjFibWt4UlVWRWRXNXBNVVZGUm5WMGFXeGtaWGRoWTNWMFpYZGphWEpqZFcxbWJHVjRkMlJwWlhKbGMybHpkMmR5WVhabGVXTnBjbU4xYldac1pYaDFibWt4UlRoR2RXNXBNVVZHTlhsbmNtRjJaWFZ1YVRGRlJqZDFibWt4UlVZNWVtRmpkWFJsZW1SdmRHRmpZMlZ1ZEhWdWFURkZPVE4xYm1rd01qVTVkVzVwTURJMU1YVnVhVEF5TmpGbVgybG1YMnhtWDNSbVgyWm1YMlpmYVdaZlpsOXNlbVZ5Ynk1emJHRnphSHBsY204dWJHWnZibVV1YkdaMGQyOHViR1owYUhKbFpTNXNabVp2ZFhJdWJHWm1hWFpsTG14bWMybDRMbXhtYzJWMlpXNHViR1psYVdkb2RDNXNabTVwYm1VdWJHWjZaWEp2TG14bWMyeGhjMmg2WlhKdkxuUnZjMlp2Ym1VdWRHOXpablIzYnk1MGIzTm1kR2h5WldVdWRHOXpabVp2ZFhJdWRHOXpabVpwZG1VdWRHOXpabk5wZUM1MGIzTm1jMlYyWlc0dWRHOXpabVZwWjJoMExuUnZjMlp1YVc1bExuUnZjMlo2WlhKdkxtOXpabTl1WlM1dmMyWjBkMjh1YjNObWRHaHlaV1V1YjNObVptOTFjaTV2YzJabWFYWmxMbTl6Wm5OcGVDNXZjMlp6WlhabGJpNXZjMlpsYVdkb2RDNXZjMlp1YVc1bExtOXpabnBsY204dVkyRndiMjVsTG1OaGNIUjNieTVqWVhCMGFISmxaUzVqWVhCbWIzVnlMbU5oY0dacGRtVXVZMkZ3YzJsNExtTmhjSE5sZG1WdUxtTmhjR1ZwWjJoMExtTmhjRzVwYm1VdVkyRndaWGhqYkdGdFpHOTNiaTVqWVhCeGRXVnpkR2x2Ym1SdmQyNHVZMkZ3ZFc1cE1EQkJSSFZ1YVRJd01UQjFibWt5TURFMVozVnBiSE5wYm1kc2JHVm1kQzVqWVhCbmRXbHNjMmx1WjJ4eWFXZG9kQzVqWVhCbmRXbHNiR1Z0YjNSc1pXWjBMbU5oY0dkMWFXeHNaVzF2ZEhKcFoyaDBMbU5oY0doNWNHaGxiaTVqWVhCelpuUm9lWEJvWlc0dVkyRndaVzVrWVhOb0xtTmhjR1Z0WkdGemFDNWpZWEJvYjNKcGVtOXVkR0ZzWW1GeUxtTmhjSEJoY21WdWJHVm1kQzVqWVhCd1lYSmxibkpwWjJoMExtTmhjR0p5WVdOclpYUnNaV1owTG1OaGNHSnlZV05yWlhSeWFXZG9kQzVqWVhCaWNtRmpaV3hsWm5RdVkyRndZbkpoWTJWeWFXZG9kQzVqWVhCMWJta3lNVEUzZFc1cE1qRXlNR0YwTG1OaGNIcGxjbTh1YzNWd2MyOXVaUzV6ZFhCemRIZHZMbk4xY0hOMGFISmxaUzV6ZFhCelptOTFjaTV6ZFhCelptbDJaUzV6ZFhCemMybDRMbk4xY0hOelpYWmxiaTV6ZFhCelpXbG5hSFF1YzNWd2MyNXBibVV1YzNWd2MzQmhjbVZ1YkdWbWRDNXpkWEJ6Y0dGeVpXNXlhV2RvZEM1emRYQnpZbkpoWTJ0bGRHeGxablF1YzNWd2MySnlZV05yWlhSeWFXZG9kQzV6ZFhCemNHVnlhVzlrTG5OMWNITmpiMjF0WVM1emRYQnpZMjlzYjI0dWMzVndjMmg1Y0dobGJpNXpkWEJ6Wlc1a1lYTm9Mbk4xY0hObGJXUmhjMmd1YzNWd2MzcGxjbTh1YzNWaWMyOXVaUzV6ZFdKemRIZHZMbk4xWW5OMGFISmxaUzV6ZFdKelptOTFjaTV6ZFdKelptbDJaUzV6ZFdKemMybDRMbk4xWW5OelpYWmxiaTV6ZFdKelpXbG5hSFF1YzNWaWMyNXBibVV1YzNWaWMzQmhjbVZ1YkdWbWRDNXpkV0p6Y0dGeVpXNXlhV2RvZEM1emRXSnpZbkpoWTJ0bGRHeGxablF1YzNWaWMySnlZV05yWlhSeWFXZG9kQzV6ZFdKemNHVnlhVzlrTG5OMVluTmpiMjF0WVM1emRXSnplbVZ5Ynk1a2JtOXRiMjVsTG1SdWIyMTBkMjh1Wkc1dmJYUm9jbVZsTG1SdWIyMW1iM1Z5TG1SdWIyMW1hWFpsTG1SdWIyMXphWGd1Wkc1dmJYTmxkbVZ1TG1SdWIyMWxhV2RvZEM1a2JtOXRibWx1WlM1a2JtOXRjR0Z5Wlc1c1pXWjBMbVJ1YjIxd1lYSmxibkpwWjJoMExtUnViMjFpY21GamEyVjBiR1ZtZEM1a2JtOXRZbkpoWTJ0bGRISnBaMmgwTG1SdWIyMXdaWEpwYjJRdVpHNXZiV052YlcxaExtUnViMjE2WlhKdkxtNTFiWEp2Ym1VdWJuVnRjblIzYnk1dWRXMXlkR2h5WldVdWJuVnRjbVp2ZFhJdWJuVnRjbVpwZG1VdWJuVnRjbk5wZUM1dWRXMXljMlYyWlc0dWJuVnRjbVZwWjJoMExtNTFiWEp1YVc1bExtNTFiWEp3WVhKbGJteGxablF1Ym5WdGNuQmhjbVZ1Y21sbmFIUXViblZ0Y21KeVlXTnJaWFJzWldaMExtNTFiWEppY21GamEyVjBjbWxuYUhRdWJuVnRjbkJsY21sdlpDNXVkVzF5WTI5dGJXRXViblZ0Y2tFdWMzVndjMEl1YzNWd2MwTXVjM1Z3YzBRdWMzVndjMFV1YzNWd2MwWXVjM1Z3YzBjdWMzVndjMGd1YzNWd2Mwa3VjM1Z3YzBvdWMzVndjMHN1YzNWd2Mwd3VjM1Z3YzAwdWMzVndjMDR1YzNWd2MwOHVjM1Z3YzFBdWMzVndjMUV1YzNWd2MxSXVjM1Z3YzFNdWMzVndjMVF1YzNWd2MxVXVjM1Z3YzFZdWMzVndjMWN1YzNWd2MxZ3VjM1Z3YzFrdWMzVndjMW91YzNWd2MyRXVjM1Z3YzJJdWMzVndjMk11YzNWd2MyUXVjM1Z3YzJVdWMzVndjMll1YzNWd2MyY3VjM1Z3YzJndWMzVndjMmt1YzNWd2Myb3VjM1Z3YzJzdWMzVndjMnd1YzNWd2MyMHVjM1Z3YzI0dWMzVndjMjh1YzNWd2MzQXVjM1Z3YzNFdWMzVndjM0l1YzNWd2MzTXVjM1Z3YzNRdWMzVndjM1V1YzNWd2MzWXVjM1Z3YzNjdWMzVndjM2d1YzNWd2Mza3VjM1Z3YzNvdWMzVndjMlZuY21GMlpTNXpkWEJ6WldGamRYUmxMbk4xY0hOMWJta3dNVGt5YkdseVlYVnVhVEl3UVRad1pYTmxkR0YxYm1reU1FRTVaRzl1WjBWMWNtOTFibWt5TUVGRmRXNXBNakJDTVhWdWFUSXdRakoxYm1reU1FSTBkVzVwTWpCQ05YVnVhVEl3UWpsMWJta3lNRUpCZFc1cE1qQkNPSFZ1YVRJd1FrUjFibWt5TUVKR2RXNXBNakl4TlhOc1lYTm9MbVp5WVdOMWJta3dNRUV3ZFc1cE1qQXdOM053WVdObExtWnlZV04xYm1rd01FRXdMbVp5WVdOMWJta3lNakU1YkdWemMyVnhkV0ZzWjNKbFlYUmxjbVZ4ZFdGc2JtOTBaWEYxWVd4aGNIQnliM2hsY1hWaGJHbHVabWx1YVhSNWRXNXBNREJDTlhCaGNuUnBZV3hrYVdabWFXNTBaV2R5WVd4eVlXUnBZMkZzZFc1cE1qSXdOblZ1YVRJeE1qWnpkVzF0WVhScGIyNXdjbTlrZFdOMGRXNXBNakV4TTJWemRHbHRZWFJsWkhWdWFUSXhPVEIxYm1reU1UazJZWEp5YjNkMWNIVnVhVEl4T1RkMWJta3lNVGt5ZFc1cE1qRTVPR0Z5Y205M1pHOTNiblZ1YVRJeE9UbDFibWt5TlVFd2RXNXBNalZETm5WdWFUSTFRemwxYm1reU56VXlkSEpwWVdkMWNIVnVhVEkxUWpOMWJta3lOVUkyZFc1cE1qVkNOM1J5YVdGblpHNTFibWt5TlVKRWRXNXBNalZETUhWdWFUSTFRekYxYm1reU5qRXdkVzVwTWpZeE1YVnVhVEkzTVROdGRYTnBZMkZzYm05MFpXeHZlbVZ1WjJWMWJta3lNRE15ZFc1cE1qQXpNM1Z1YVRBeVFrSjFibWt3TWtKRGRXNXBNREpDUm5WdWFUQXlRa1YxYm1rd01rTTRkVzVwTURKRE9YVnVhVEF5UTBGMWJta3dNa05DZFc1cE1ESkRRMk5oY205dUxtRnNkR052YlcxaFltVnNiM2RqYldJdVlXeDBkVzVwTURNd01HZHlZWFpsWTIxaUxtTmhjSFZ1YVRBek1ERmhZM1YwWldOdFlpNWpZWEIxYm1rd016QXlZMmx5WTNWdFpteGxlR050WWk1allYQjFibWt3TXpBemRHbHNaR1ZqYldJdVkyRndkVzVwTURNd05HMWhZM0p2Ym1OdFlpNWpZWEIxYm1rd016QTJZbkpsZG1WamJXSXVZMkZ3ZFc1cE1ETXdOMlJ2ZEdGalkyVnVkR050WWk1allYQjFibWt3TXpBNFpHbGxjbVZ6YVhOamJXSXVZMkZ3ZFc1cE1ETXdRWEpwYm1kamJXSXVZMkZ3ZFc1cE1ETXdRbWgxYm1kaGNuVnRiR0YxZEdOdFlpNWpZWEIxYm1rd016QkRZMkZ5YjI1amJXSXVZMkZ3ZFc1cE1ETXlOblZ1YVRBek1qZDFibWt3TXpJNGRXNXBNRE15T1hWdWFUQXpNa1YxYm1rd016STBkVzVwTURNeU0zVnVhVEF6TURsMWJta3dNekE1TG1OaGNIVnVhVEF6TVVKMWJta3dNek14ZFc1cE1ETXdPREF6TURGMWJta3dNekE0TURNd01TNWpZWEIxYm1rd016QTRNRE13TUhWdWFUQXpNRGd3TXpBd0xtTmhjSFZ1YVRBek1EZ3dNekEwZFc1cE1ETXdPREF6TURRdVkyRndkVzVwTURNd09EQXpNRU4xYm1rd016QTRNRE13UXk1allYQjFibWt3TXpBeU1ETXdNWFZ1YVRBek1ESXdNekF4TG1OaGNIVnVhVEF6TURJd016QXdkVzVwTURNd01qQXpNREF1WTJGd2RXNXBNRE13TWpBek1EbDFibWt3TXpBeU1ETXdPUzVqWVhCMWJta3dNekF5TURNd00zVnVhVEF6TURJd016QXpMbU5oY0hWdWFUQXpNRFl3TXpBeGRXNXBNRE13TmpBek1ERXVZMkZ3ZFc1cE1ETXdOakF6TURCMWJta3dNekEyTURNd01DNWpZWEIxYm1rd016QTJNRE13T1hWdWFUQXpNRFl3TXpBNUxtTmhjSFZ1YVRBek1EWXdNekF6ZFc1cE1ETXdOakF6TURNdVkyRndRV3h3YUdGQ1pYUmhSMkZ0YldGMWJta3dNemswUlhCemFXeHZibHBsZEdGRmRHRlVhR1YwWVVsdmRHRkxZWEJ3WVV4aGJXSmtZVTExVG5WWWFVOXRhV055YjI1UWFWSm9iMU5wWjIxaFZHRjFWWEJ6YVd4dmJsQm9hVU5vYVZCemFYVnVhVEF6UVRsQmJIQm9ZWFJ2Ym05elJYQnphV3h2Ym5SdmJtOXpSWFJoZEc5dWIzTkpiM1JoZEc5dWIzTkpiM1JoWkdsbGNtVnphWE5QYldsamNtOXVkRzl1YjNOVmNITnBiRzl1ZEc5dWIzTlZjSE5wYkc5dVpHbGxjbVZ6YVhOUGJXVm5ZWFJ2Ym05ellXeHdhR0ZpWlhSaFoyRnRiV0ZrWld4MFlXVndjMmxzYjI1NlpYUmhaWFJoZEdobGRHRnBiM1JoYTJGd2NHRnNZVzFpWkdGMWJta3dNMEpEYm5WNGFXOXRhV055YjI1d2FYSm9iM05wWjIxaGRHRjFkWEJ6YVd4dmJuQm9hV05vYVhCemFXOXRaV2RoZFc1cE1ETkRNbUZzY0doaGRHOXViM05sY0hOcGJHOXVkRzl1YjNObGRHRjBiMjV2YzJsdmRHRjBiMjV2YzJsdmRHRmthV1Z5WlhOcGMyOXRhV055YjI1MGIyNXZjM1Z3YzJsc2IyNTBiMjV2YzNWd2MybHNiMjVrYVdWeVpYTnBjMjl0WldkaGRHOXViM05wYjNSaFpHbGxjbVZ6YVhOMGIyNXZjM1Z3YzJsc2IyNWthV1Z5WlhOcGMzUnZibTl6ZFc1cE1ETkVOM1Z1YVRBelJEbDFibWt3TTBSQ2RXNXBNRE5FUkhWdWFUQXpSVEYxYm1rd016ZEZZVzV2ZEdWc1pXbGhZVzV2ZEdWc1pXbGhMbU5oY0hWdWFUQXpOelIxYm1rd016YzFkRzl1YjNOMGIyNXZjeTVqWVhCa2FXVnlaWE5wYzNSdmJtOXpkVzVwTURNd01TNW5kVzVwTURNd09EQXpNREV1WjNWdWFUQTBNVEIxYm1rd05ERXhkVzVwTURReE1uVnVhVEEwTVROMWJta3dOREUwZFc1cE1EUXhOWFZ1YVRBME1UWjFibWt3TkRFM2RXNXBNRFF4T0hWdWFUQTBNVGwxYm1rd05ERkJkVzVwTURReFFuVnVhVEEwTVVOMWJta3dOREZFZFc1cE1EUXhSWFZ1YVRBME1VWjFibWt3TkRJd2RXNXBNRFF5TVhWdWFUQTBNakoxYm1rd05ESXpkVzVwTURReU5IVnVhVEEwTWpWMWJta3dOREkyZFc1cE1EUXlOM1Z1YVRBME1qaDFibWt3TkRJNWRXNXBNRFF5UVhWdWFUQTBNa0oxYm1rd05ESkRkVzVwTURReVJIVnVhVEEwTWtWMWJta3dOREpHZFc1cE1EUXdNSFZ1YVRBME1ERjFibWt3TkRBeWRXNXBNRFF3TTNWdWFUQTBNRFIxYm1rd05EQTFkVzVwTURRd05uVnVhVEEwTURkMWJta3dOREE0ZFc1cE1EUXdPWFZ1YVRBME1FRjFibWt3TkRCQ2RXNXBNRFF3UTNWdWFUQTBNRVIxYm1rd05EQkZkVzVwTURRd1JuVnVhVEEwTmpKMWJta3dORGN5ZFc1cE1EUTNOSFZ1YVRBME9UQjFibWt3TkRreWRXNXBNRFE1Tm5WdWFUQTBPVGgxYm1rd05EbEJkVzVwTURSQk1IVnVhVEEwUVRKMWJta3dORUZCZFc1cE1EUkJSWFZ1YVRBMFFqQjFibWt3TkVJeWRXNXBNRFJDTm5WdWFUQTBRa0YxYm1rd05FTXdkVzVwTURSRE1YVnVhVEEwUkRCMWJta3dORVEwZFc1cE1EUkVOblZ1YVRBMFJEaDFibWt3TkVVeWRXNXBNRFJGTm5WdWFUQTBSVGgxYm1rd05FVkZkVzVwTURSR01uVnVhVEEwTXpCMWJta3dORE14ZFc1cE1EUXpNblZ1YVRBME16TjFibWt3TkRNMGRXNXBNRFF6TlhWdWFUQTBNeloxYm1rd05ETTNkVzVwTURRek9IVnVhVEEwTXpsMWJta3dORE5CZFc1cE1EUXpRblZ1YVRBME0wTjFibWt3TkRORWRXNXBNRFF6UlhWdWFUQTBNMFoxYm1rd05EUXdkVzVwTURRME1YVnVhVEEwTkRKMWJta3dORFF6ZFc1cE1EUTBOSFZ1YVRBME5EVjFibWt3TkRRMmRXNXBNRFEwTjNWdWFUQTBORGgxYm1rd05EUTVkVzVwTURRMFFYVnVhVEEwTkVKMWJta3dORFJEZFc1cE1EUTBSSFZ1YVRBME5FVjFibWt3TkRSR2RXNXBNRFExTUhWdWFUQTBOVEYxYm1rd05EVXlkVzVwTURRMU0zVnVhVEEwTlRSMWJta3dORFUxZFc1cE1EUTFOblZ1YVRBME5UZDFibWt3TkRVNGRXNXBNRFExT1hWdWFUQTBOVUYxYm1rd05EVkNkVzVwTURRMVEzVnVhVEEwTlVSMWJta3dORFZGZFc1cE1EUTFSblZ1YVRBME5qTjFibWt3TkRjemRXNXBNRFEzTlhWdWFUQTBPVEYxYm1rd05Ea3pkVzVwTURRNU4zVnVhVEEwT1RsMWJta3dORGxDZFc1cE1EUkJNWFZ1YVRBMFFUTjFibWt3TkVGQ2RXNXBNRFJCUm5WdWFUQTBRakYxYm1rd05FSXpkVzVwTURSQ04zVnVhVEEwUWtKMWJta3dORU15ZFc1cE1EUkRSblZ1YVRBMFJERjFibWt3TkVRMWRXNXBNRFJFTjNWdWFUQTBSRGwxYm1rd05FVXpkVzVwTURSRk4zVnVhVEEwUlRsMWJta3dORVZHZFc1cE1EUkdNM1Z1YVRBME16RXVjM0ppZFc1cE1qRXhObUp5WlhabFkyMWlMbU41Y21KeVpYWmxZMjFpTG1ONWNtTmhjSFIxY210cFkyUnpZMk50WW5WdWFUSkZNMEYxYm1reVJUTkNkVEZHTVRKR2RURkdNVFpCZFRGR01UWkNaWGhqYkdGdFpHSnNkVzVwTWpBME4zVnVhVEl3TkRoMWJta3lNRFE1UVM1elkwSXVjMk5ETG5OalJDNXpZMFV1YzJOR0xuTmpSeTV6WTBndWMyTkpMbk5qU2k1elkwc3VjMk5NTG5OalRTNXpZMDR1YzJOUExuTmpVQzV6WTFFdWMyTlNMbk5qVXk1elkxUXVjMk5WTG5OalZpNXpZMWN1YzJOWUxuTmpXUzV6WTFvdWMyTkJaM0poZG1VdWMyTkJZV04xZEdVdWMyTkJZMmx5WTNWdFpteGxlQzV6WTBGMGFXeGtaUzV6WTBGa2FXVnlaWE5wY3k1elkwRnRZV055YjI0dWMyTkJZbkpsZG1VdWMyTjFibWt4UlVGRkxuTmpkVzVwTVVWQ05pNXpZM1Z1YVRGRlFqQXVjMk4xYm1reFJVSXlMbk5qZFc1cE1VVkNOQzV6WTNWdWFUQXhRMFF1YzJOMWJta3hSVUUwTG5OamRXNXBNVVZCUXk1elkzVnVhVEZGUVRZdWMyTjFibWt4UlVFNExuTmpkVzVwTVVWQlFTNXpZM1Z1YVRGRlFUQXVjMk4xYm1reFJVRXlMbk5qUVhKcGJtY3VjMk5CYjJkdmJtVnJMbk5qUVVVdWMyTkRZMlZrYVd4c1lTNXpZME5oWTNWMFpTNXpZME5qWVhKdmJpNXpZME5qYVhKamRXMW1iR1Y0TG5OalEyUnZkR0ZqWTJWdWRDNXpZMFJqWVhKdmJpNXpZMFJqY205aGRDNXpZM1Z1YVRGRk1FTXVjMk4xYm1reFJUQkZMbk5qUldkeVlYWmxMbk5qUldGamRYUmxMbk5qUldOcGNtTjFiV1pzWlhndWMyTkZZMkZ5YjI0dWMyTkZaR2xsY21WemFYTXVjMk5GYldGamNtOXVMbk5qUldSdmRHRmpZMlZ1ZEM1elkwVnZaMjl1WldzdWMyTkZZbkpsZG1VdWMyTjFibWt4UlVKRkxuTmpkVzVwTVVWRE5pNXpZM1Z1YVRGRlF6QXVjMk4xYm1reFJVTXlMbk5qZFc1cE1VVkROQzV6WTNWdWFURkZRamd1YzJOMWJta3hSVUpCTG5OamRXNXBNVVZDUXk1elkwZGljbVYyWlM1elkwZGtiM1JoWTJObGJuUXVjMk4xYm1rd01USXlMbk5qUjJOaGNtOXVMbk5qUjJOcGNtTjFiV1pzWlhndWMyTjFibWt4UlRsRkxuTmpkVzVwTVVVeU1DNXpZM1Z1YVRBd05EY3dNekF6TG5OalNHSmhjaTV6WTNWdWFURkZNa0V1YzJOSVkybHlZM1Z0Wm14bGVDNXpZM1Z1YVRGRk1qUXVjMk5KWjNKaGRtVXVjMk5KWVdOMWRHVXVjMk5KWTJseVkzVnRabXhsZUM1elkwbGthV1Z5WlhOcGN5NXpZMGx0WVdOeWIyNHVjMk5KWkc5MFlXTmpaVzUwTG5OalNXOW5iMjVsYXk1elkzVnVhVEF4UTBZdWMyTjFibWt4UlVOQkxuTmpkVzVwTVVWRE9DNXpZMGwwYVd4a1pTNXpZMHBqYVhKamRXMW1iR1Y0TG5OamRXNXBNREV6Tmk1elkweGhZM1YwWlM1elkweGpZWEp2Ymk1elkzVnVhVEF4TTBJdWMyTk1aRzkwTG5OamRXNXBNVVV6Tmk1elkzVnVhVEZGTXpndWMyTjFibWt4UlROQkxuTmpUSE5zWVhOb0xuTmpkVzVwTVVVelJTNXpZM1Z1YVRGRk5ESXVjMk5PWVdOMWRHVXVjMk4xYm1rd01VWTRMbk5qVG1OaGNtOXVMbk5qVG5ScGJHUmxMbk5qZFc1cE1ERTBOUzV6WTNWdWFURkZORFF1YzJOMWJta3hSVFEyTG5OamRXNXBNVVUwT0M1elkwOW5jbUYyWlM1elkwOWhZM1YwWlM1elkzVnVhVEF4TkVVdWMyTlBZMmx5WTNWdFpteGxlQzV6WTA5MGFXeGtaUzV6WTA5a2FXVnlaWE5wY3k1elkwOXRZV055YjI0dWMyTlBhSFZ1WjJGeWRXMXNZWFYwTG5OamRXNXBNREZFTVM1elkzVnVhVEZGUkRBdWMyTjFibWt4UlVRNExuTmpkVzVwTVVWRU1pNXpZM1Z1YVRGRlJEUXVjMk4xYm1reFJVUTJMbk5qZFc1cE1VVkRReTV6WTNWdWFURkZRMFV1YzJOUGFHOXliaTV6WTNWdWFURkZSRUV1YzJOMWJta3hSVVV5TG5OamRXNXBNVVZFUXk1elkzVnVhVEZGUkVVdWMyTjFibWt4UlVVd0xuTmpUM05zWVhOb0xuTmpUMFV1YzJOU1lXTjFkR1V1YzJOU1kyRnliMjR1YzJOMWJta3dNVFUyTG5OamRXNXBNVVUxUVM1elkzVnVhVEZGTlVNdWMyTjFibWt4UlRWRkxuTmpVMkZqZFhSbExuTmpVMk5oY205dUxuTmpkVzVwTURFMVJTNXpZM1Z1YVRBeU1UZ3VjMk5UWTJseVkzVnRabXhsZUM1elkzVnVhVEZGTmpBdWMyTjFibWt4UlRZeUxuTmpWR05oY205dUxuTmpkVzVwTURFMk1pNXpZM1Z1YVRBeU1VRXVjMk4xYm1reFJUazNMbk5qZFc1cE1VVTJReTV6WTNWdWFURkZOa1V1YzJOVlozSmhkbVV1YzJOVllXTjFkR1V1YzJOVlkybHlZM1Z0Wm14bGVDNXpZMVZrYVdWeVpYTnBjeTV6WTFWdFlXTnliMjR1YzJOVmNtbHVaeTV6WTFWb2RXNW5ZWEoxYld4aGRYUXVjMk5WYjJkdmJtVnJMbk5qVldKeVpYWmxMbk5qZFc1cE1ERkVNeTV6WTNWdWFUQXhSRGN1YzJOMWJta3dNVVE1TG5OamRXNXBNREZFUWk1elkzVnVhVEF4UkRVdWMyTjFibWt4UlVVMExuTmpkVzVwTVVWRk5pNXpZMVZvYjNKdUxuTmpkVzVwTVVWRk9DNXpZM1Z1YVRGRlJqQXVjMk4xYm1reFJVVkJMbk5qZFc1cE1VVkZReTV6WTNWdWFURkZSVVV1YzJOVmRHbHNaR1V1YzJOWFlXTjFkR1V1YzJOWFkybHlZM1Z0Wm14bGVDNXpZMWRrYVdWeVpYTnBjeTV6WTFkbmNtRjJaUzV6WTFsaFkzVjBaUzV6WTFsa2FXVnlaWE5wY3k1elkxbGphWEpqZFcxbWJHVjRMbk5qZFc1cE1VVTRSUzV6WTNWdWFURkZSalF1YzJOWlozSmhkbVV1YzJOMWJta3hSVVkyTG5OamRXNXBNVVZHT0M1elkxcGhZM1YwWlM1elkxcGpZWEp2Ymk1elkxcGtiM1JoWTJObGJuUXVjMk4xYm1reFJUa3lMbk5qUlhSb0xuTmpWR2h2Y200dWMyTjFibWt3TVRoR0xuTmpRV3h3YUdFdWMyTkNaWFJoTG5OalIyRnRiV0V1YzJORVpXeDBZUzV6WTBWd2MybHNiMjR1YzJOYVpYUmhMbk5qUlhSaExuTmpWR2hsZEdFdWMyTkpiM1JoTG5OalMyRndjR0V1YzJOTVlXMWlaR0V1YzJOTmRTNXpZMDUxTG5OaldHa3VjMk5QYldsamNtOXVMbk5qVUdrdWMyTlNhRzh1YzJOVGFXZHRZUzV6WTFSaGRTNXpZMVZ3YzJsc2IyNHVjMk5RYUdrdWMyTkRhR2t1YzJOUWMya3VjMk5QYldWbllTNXpZMGx2ZEdGa2FXVnlaWE5wY3k1elkxVndjMmxzYjI1a2FXVnlaWE5wY3k1elkyZGxjbTFoYm1SaWJITXVjMk5tWDJrdWMyTm1YMnd1YzJOaGJYQmxjbk5oYm1RdWMyTjZaWEp2TG5OamIyNWxMbk5qZEhkdkxuTmpkR2h5WldVdWMyTm1iM1Z5TG5OalptbDJaUzV6WTNOcGVDNXpZM05sZG1WdUxuTmpaV2xuYUhRdWMyTnVhVzVsTG5OalpYaGpiR0Z0TG5OalpYaGpiR0Z0Wkc5M2JpNXpZM0YxWlhOMGFXOXVMbk5qY1hWbGMzUnBiMjVrYjNkdUxuTmpjWFZ2ZEdWemFXNW5iR1V1YzJOeGRXOTBaV1JpYkM1elkzRjFiM1JsYkdWbWRDNXpZM0YxYjNSbGNtbG5hSFF1YzJOeGRXOTBaV1JpYkd4bFpuUXVjMk54ZFc5MFpXUmliSEpwWjJoMExuTmphSGx3YUdWdUxuTmpaVzVrWVhOb0xuTmpaVzFrWVhOb0xuTmpjR0Z5Wlc1c1pXWjBMbk5qY0dGeVpXNXlhV2RvZEM1elkySnlZV05yWlhSc1pXWjBMbk5qWW5KaFkydGxkSEpwWjJoMExuTmpZbkpoWTJWc1pXWjBMbk5qWW5KaFkyVnlhV2RvZEM1elkzVnVhVEEwTVRBdWMyTjFibWt3TkRFeExuTmpkVzVwTURReE1pNXpZM1Z1YVRBME1UTXVjMk4xYm1rd05ERTBMbk5qZFc1cE1EUXhOUzV6WTNWdWFUQTBNVFl1YzJOMWJta3dOREUzTG5OamRXNXBNRFF4T0M1elkzVnVhVEEwTVRrdWMyTjFibWt3TkRGQkxuTmpkVzVwTURReFFpNXpZM1Z1YVRBME1VTXVjMk4xYm1rd05ERkVMbk5qZFc1cE1EUXhSUzV6WTNWdWFUQTBNVVl1YzJOMWJta3dOREl3TG5OamRXNXBNRFF5TVM1elkzVnVhVEEwTWpJdWMyTjFibWt3TkRJekxuTmpkVzVwTURReU5DNXpZM1Z1YVRBME1qVXVjMk4xYm1rd05ESTJMbk5qZFc1cE1EUXlOeTV6WTNWdWFUQTBNamd1YzJOMWJta3dOREk1TG5OamRXNXBNRFF5UVM1elkzVnVhVEEwTWtJdWMyTjFibWt3TkRKRExuTmpkVzVwTURReVJDNXpZM1Z1YVRBME1rVXVjMk4xYm1rd05ESkdMbk5qZFc1cE1EUXdNQzV6WTNWdWFUQTBNREV1YzJOMWJta3dOREF5TG5OamRXNXBNRFF3TXk1elkzVnVhVEEwTURRdWMyTjFibWt3TkRBMUxuTmpkVzVwTURRd05pNXpZM1Z1YVRBME1EY3VjMk4xYm1rd05EQTRMbk5qZFc1cE1EUXdPUzV6WTNWdWFUQTBNRUV1YzJOMWJta3dOREJDTG5OamRXNXBNRFF3UXk1elkzVnVhVEEwTUVRdWMyTjFibWt3TkRCRkxuTmpkVzVwTURRd1JpNXpZM1Z1YVRBME5qSXVjMk4xYm1rd05EY3lMbk5qZFc1cE1EUTNOQzV6WTNWdWFUQTBPVEF1YzJOMWJta3dORGt5TG5OamRXNXBNRFE1Tmk1elkzVnVhVEEwT1RndWMyTjFibWt3TkRsQkxuTmpkVzVwTURSQk1DNXpZM1Z1YVRBMFFUSXVjMk4xYm1rd05FRkJMbk5qZFc1cE1EUkJSUzV6WTNWdWFUQTBRakF1YzJOMWJta3dORUl5TG5OamRXNXBNRFJDTmk1elkzVnVhVEEwUWtFdWMyTjFibWt3TkVNd0xuTmpkVzVwTURSRE1TNXpZM1Z1YVRBMFJEQXVjMk4xYm1rd05FUTBMbk5qZFc1cE1EUkVOaTV6WTNWdWFUQTBSRGd1YzJOMWJta3dORVV5TG5OamRXNXBNRFJGTmk1elkzVnVhVEEwUlRndWMyTjFibWt3TkVWRkxuTmpkVzVwTURSR01pNXpZekV1TUZOdmRYSmpaU0JwY3lCaElIUnlZV1JsYldGeWF5QnZaaUJCWkc5aVpTQlRlWE4wWlcxeklFbHVZMjl5Y0c5eVlYUmxaQ0JwYmlCMGFHVWdWVzVwZEdWa0lGTjBZWFJsY3lCaGJtUXZiM0lnYjNSb1pYSWdZMjkxYm5SeWFXVnpMa052Y0hseWFXZG9kQ0F5TURFMElFRmtiMkpsSUZONWMzUmxiWE1nU1c1amIzSndiM0poZEdWa0xpQkJiR3dnVW1sbmFIUnpJRkpsYzJWeWRtVmtMbE52ZFhKalpTQlRaWEpwWmlCUWNtOENFd0lBQVFCU0FJOEExd0RwQVFzQlFnRjdBZGdCK0FJY0FvTUNvd0xDQXg4REtBTXVBemtEVUFOWEExc0RxQU8wQTh3RDV3UHhCQ0lFSndSN0JMOEV4d1ROQk9FRThRVCtCUjhGU0FWTUJid0dKQVk0Qm9FR2hRYWRCcUVHdmdiRkJ0Y0hRQWV2QjdrSHp3Zm1DRTBJVVFoZENJY0lvd2l4Q0xjSXZRamFDUEFKSndtUENhY0oxUW5uQ2YwS0VBb1VDaG9LYWdxaUNxZ0s5Z3NRQ3prTGFRdU1DNmNMcmd2U0Mrd0w5QXdEREV3TWtBeVVES0FNd0F6RERRRU5GZzBjRFNBTlFnMVZEVjROWXcyVERaZ05vdzNxRGdjT0R3NlZEcThQQXc4SEQ1Z1BwUSsvRUdnUWJCQjBFSGtRamhDWEVPb1JEUkVkRWJrUjJ4SHZFazhTYUJKNUVvMFNreEs2RXdZVG1CTzRFOEFVTFJSTEZIb1UwaFVWRlZvVmNSV2hGY1lWeXhYcEZlOFdLUlk3RmxvV21CYWlGcmNXdXhiU0Z1WVhXUmRwRjcwWHh4Z25HQzhZVVJob0dKa1luUmpDR1BrWkZSa2dHVUFaUkJsNUdYOFo0Um9GR2hrYUpSb3NHbTRhaFJxbkdyb2F2aHJER3RNYTJScmdHdVliUVJ0UkcyTWJ2QnZiRy9BYjlCdjdIQXNjRmh3ZUhFc2NWeHhrSEcwY2R4eUFISndjb0J5M0hNb2MwQnpWSE5vYzN4em9ITzhkS2gxeUhYZ2RreDJhSFo4ZHBoMnJIYkVkd2gzSUhjNGQxQjMwSGZvZUF4NE1IaDhlTHg0NEhqOGViaDZJSHBBZWxSNjRIdlFmQmg4a0h6QWZOeDlNSDFFZml4L0ZIOWtmNEIvbElBZ2dHU0FoSUVJZ1JTQktJRThnZmlDUklLUWd0eURDSU5JZzVpRDJJUDRoQmlFTklUMGhRU0ZISVU0aFlTRm9JWEVoZHlGK0lhNGh2U0hNSWRFaC9pSUxJamtpVWlKWElta2llaUovSW9raWtDS1ZJc0VpekNMWEl0MGk1aUwzSXZ3akJDTUpJekFqTmlNL0kwUWpUU05YSTJFalp5TnNJNUVqbUNPZkk4VWoyaVBvSkFna0ZTUWNKQ1FrS1NRc0pFNGtZU1J2Skgwa2h5U1FKSmtrb2lTb0pMa2syU1RjSk80azlDVC9KUWNsRHlVWEpSOGxKU1V0SlRFbFBDVkpKVkFsVmlWZEpXSWxhaVdJSlprbG9pV3NKYklsenlYVkpkc2w2eVh2SmZjbUF5WUpKaEVtR0NZZkppUW1LU1pFSmw4bWVpWi9KcGttclNheEpyWW12Q2JCSnRvbTdpY0hKd3NuRkNjZkp5WW5MU2RESjBrblV5ZGVKMlVuYlNkMUozb25nQ2VHSjVjbm5pZXpKOFFueVNmVkorQW43U2YzSi8wb0F5Z0lLQThvSkNnd0tFVW9UQ2hSS0dVb2JDaUFLSXdvbUNpa0tLc29zU2kzS01FbzFDam5LUG9wQXlrTUtSSXBHU2tmS1NRcE1TazRLVW9wWENsdUtZQXBpeW1XS1owcG95bXBLYm9weENuSktkQXA0Q253S2dBcUNpb1FLaGtxSWlvbktpOHFOaW85S2tRcVN5cFJLbGNxWFNwakttZ3FkU3FFS29rcW1DcWRLcUlxcUNxc0tyb3F5Q3JVS3RvcTRpcnJLdklxK3lzQkt3Y3JEU3NTS3g4ckp5czBLemtyUml0TEsxSXJXU3RnSzJjcmJpdDFLM29yZnl1TEs1Y3JvaXV1SzdVcndTdkdLODByMUN2Y0srUXI2U3Z1Sy9Rcitpd0FMQVlzQ3l3V0xDRXNMQ3czTEVJc1RTeFVMRjhzYVBkZVRCV3VwNWl5b3g5M29RVitnSUNDZWh0MWZadTJIL2RwQi9jU1dic2lKVUZiUDNnZWNZNmJmS2NicHB1Y3FwUWZuc3dGa0tDZGpKb2J6YWR6S2g5eUIyT0NZWDVzZ0FqN0cxcHNYbElhQy9jNjk2Y1Y5d2k0OXc3M0N2Y0x0L3NPK3dqN0NGLzdEL3NMK3dwZTl3LzNDQjczTi9lMEZmc2EreDBpKzB2N1ZQY2NLL2NiOXhyM0cvVDNTd3RnaTdoZXZGcjNMZlc0NS9jdFdyeE5IUk5YUUgwZEU1ZEFQaDBUVjBCaitGNEhFemRBa1BjdEJSTTNJRk1HRTFkQUtSMFRWNEQzV0FZVFc0Q2VJd1hEQmhOWGdJVklDZ3V4cUtXeHNHNm1aV1Z1Y0dabHFIR3hId3NWblhLMW9iV2l0YUlac2FDWG01MGFuM3FaZG5wNmdXOXZIbXR0Ykd4c2FnZ0w5NmY0ZkJYN0VTSWwreTM3TGVNdTl4dm15N2pTc0I5em5nVmhaMlJ2U3hzclM4ejNENGtmOTlNR2o1aU9uNklhOXcwNTBpTWVDL2VtZmhYM0NQY0czdmM1OXpyN0IrTDdCL3NJK3dVMCt6cjdPZmNFT1BjSkg3Z0VORnpROXhyM0c3clQ0dUc4US9zYit4cGFSalVmQzJoeWtwaHhIM3ZwQlU0R2hmc01CWE8xekhqTUcvY1A0c2p1Mmx5Kyt3U3pIMmlYQlUyaGFhZTZHc085cXNxbG9JYUFueDZkTWdYSEJwSDNBZ1dsWmxxZVVCdjdDRFpMTERETFcrVnJINng5QmM5MnJYZFlHbE5aYURzZUMzWDdGQVg3a3dhSjNvdmc3eHIzS0FhWUxRVzU5NEJkQm4wc0Jmc252Z29MZUNNRisyb0dpYzZMejlZYTl4QUdsajhGdC9kYlh3Wi9QUVg3RHdiSGk5Q056aDRMNEFQM2ZLNFZZRzJUbkd3ZmQvY0tCVTBHaGZzZ0JXMjUxWFRXRy9jZjdkUDNDdXBZeGZzWHZoOWptZ1ZEcDJLd3lSclZ4ckxYcXFTRmZhVWVvUHNGQmNnR2tmY1hCYXRnVlo5SUcvc1VLa1g3QnlYUVVQSmpIN0o3QmVCcXNXNUxHajVPWHkwZUN4VnRxMnlxYXFvSXAyOTZsWG9iZG5wOWQzbVhlckYySDdSMXRYUzJkUWdMOTJyQUZWMXBvTUNwbHJIaXJSK2drNitYcnBVSSt5NEhZMUo0ZjJrYkMvZGNmaFgzRmMzTzE4cGx1aWV3OThRS1I2UnpuTGNhdEt1bXlLT2loWUNoSHBzN0JiOEdqL0VGcFdCZ21sVWIrd1JOUjBKSHUyUFVjQis1ZWdYS2RhbDFZQnBlWjJ3L2JIR1Fsbk1lZU9JRlZBYVArd0lGY3J5M2ZzTWJDOG9kOTBiM0lGRWRDOXFCQlVRZEMvLy8xSUFBL3dBcmdBQUwrNFgzaWgwVG1IMGRFMWcrSFJPWVFSMEhFNmc2SFFzMEN2aGdUQW9MNXpzS0M3SDdmMlVINVlNRlc0eGFXaHA0QjROd2NvZHRHL3NYUE43M0x2Y3Y0dDczQjZ1cmhIdXBINXMxQmNjR2lQY1BCYVJhVkpaRUcvdEord3o3RWZzMyt6ajNEZnNROTBQVnlLQ214aDhMTDljZDkvRWR0UHV2TFFvTHMyUC9BQ3VBQVAvLzFJQUEvd0FzZ0FEL0FINkFBTGtMZXFHaWU3QWJ5S20rMkpqM2lBcGFmSGRzYWh0dGRxZWZjaDhMRlZZZDl4VkJucVFGQzFNSzkvNGQ5My8zTFZpK0U4VkhIUk9WWWdjMUNoT2w5K3NINHBZRkU4YTArNFFIRTQ1aUJ4T05jQW9UeGZjVENndGtCeThkQy9jT2k2TUs5NlRtRTY1OUhSTnVQaDBUcm1QM2ovZ05IYzdXR3Zla0JrZUxSSWxIOS80S1kvZVFCeE4yc3djODl5QUt6aDdhbFFVVHJ2ZGZIVW1MU2tVYSs2UUd5dmd2Q3RpVUJiTDdqd2NUdGpvZEMyS0w5eXdLOTMwZEU4ajROeGF6QnpLVkJZcStpOGJBR2hPYzl5WDNzZG1YQlJQTXN2dGNCeE9jWkFmVmdQc0wrNEFGRThqN0IvZUIyNVVGc3Z1VEJ4T29mQjBMSlFyLy85R0FBQXRKQ2p5QkJRdkg5MUFLN2dvVHJERUtFNXhLSFJQTTl3WUtDL0g3Q2dYVkJ2SDNDbk9nK3djMkJRNzNOQXJRZ2gzWmxBV3krNUFMeDR0T0N2Z3VkL2dESGZ0NStSd1RkSkFXRTNoRENoTzB0QWVIQ2hONHhBb0xwSWFqZ3FFZW1udDVrSGNiWjNSNFkzS1VkS2x4SDZoeGRWWnZiMXRrR1o1d0JkYTd5dHZpR2d1TlpSMEw5NHovQWZpQUFQY2NDbVN5RXAvNXh2dFo5MWtUaVBqWWhSVzFCaE1VOXliNGpkR1dCUk9Fc3Z0WkJ4TVVaQWZZZnlENzdnVVRpUHNSOSsvaWxnV3krNGhrQitLQSt4WDc3QVVUU0NiMzdRVVRHTnFWQlJPSXN2dUpCeE1ZWkFjVEtOT0M5ekg4andXekJ2Y2grQ29GQy9NS0VwcjZQdnQzOTNjVHhQa2xoQlcyQmhPSzl6MzVBOStYQlJQQ3RQdDNCeE9LWWdmbWZ2c1UvR0lGRThUN0tQaGo4SmNGdFB1a1lnZndmL3N0L0Y0RkU2VDdEL2hmQlJPTTU1WUZFOFMwKzZRSEU0eGlCeE9VM29IM1NQMEZCYllHOXpmNG1nVUw5MjczclJYYUIrS0w0STNmSHZHWDk1c0tCd3NEOTZuNFRoV2NuWW1GbmgrZFNRVnZrcGwzclJ1a201ZWxrQi9WZmtIRE1SdjdEUHNETGZzeSt5N2pMUGNkNmN1NDNxY2ZjcGdGV214WmNGSWJMVW5QOXhMM0ZNblA0QjhMTklRZEMvZWZCOWVXQmJMN1oyUUg0bjRGKzRnSCt5VllXUzBlQzR0TkNndVpDaFBJOXhBZEU4eTArM2tIRTV6dENoUEk5NVVkRTZoaUI0QWRDNHdLOXh0UUNndTVxZjhBUzRBQS8vL0lnQUQvQUV1QUFBdjNLUlVnNFZUM0RmY0g1Tkh3NDFxL0tMd2VFOWptd0tiRnVocmxTTXNpSXpoTklrYXVVTjljSGhQa0wxMWFXVU1hRTlqdytBRVZ5THl5eE1xdldFOVVkbVpQWFI0b3ZYSzZ2eG9UNVBjQS9IY1ZRVmZBMHMycnNjcXlIL2NFVjdCbVVScElYRlpFSGc2azZRcjNxTG4vQVAyQUFMb0s5M1hwU2UvNEtBb1Rya2tkRTIxaTk2Y0g5MVRXNStiY1U4ejdHWjRmRTI3M0E2SzN5OUlhNmp6UCt4OGUrN2IzaXdyM092ZWNGZkcvYWpBd1YyVDdEUjlYQnRxTDVJM2hIc0Q3d0JVVGJmY2V4MXd1TTAxYit4UWZUdmZLSGVIMEdnNjY5eFAzUlZuM2xCMEw1QjBUMkxZS0UrUldjMjVxWFJvVDJKMGRFK1NQSGZnVUhmZzNIZmVNcndjN21RV0t3SXJCd0JyNER3Y0xmSlg3SUdrZFd3ZGVpa3FLV1I1Qjl6WWRlUXIzSmdlMXZMR2R1UnZHb20wd0h6WUgrQklkV2g1QmZRVm45M3gzQ3VnSG5ZcWNpcG9ldWI2MG5MVWJ4YVZ4TGg4MEIvZ1NIVm9lUVgwRlovZDhkd3J5Qi9jUVhMNDZTMGxzVEZjZXpYdGtwMHdiQzM1YUNndHBCdnNYK3dlZWN2Y1YxUXV3OTFBS3lNa1R6UGM3SGZkL0I4NlZ3N2ZaR3BhSG1ZT2RIcGQrZm91Qkd4T2VtaDBUelBjR0NndC9uNkNCclJ2RHFhN0JsQjl6bGdWdWYzZDZiUnR3ZHBlWGRSOEw5Mkt6QmplWXR2Y0tCZmRkQmdzUzl4NW1DZ3VMUm9sSUhnczVDdmVqeHhYSXJBV3pvSkdZbXhxY2ZwaDRmWHFEZEhvZVcwOEZDN3lFb24xc0dtOTRlbVI1NVIyZ2hxZ2IxTEt0dVF2MXlOUGRINXlEZjVaMUczSjBlVnh6akh5TmZCOThkbXFFY1J0eGFwS2FkaCtObW95YW94cTZkSjF5ZFgrQWVvTWVPY2hEOVI0T2dJdTQ5MnU1OTFyM1JCMzNVZWRHN1BkNUN2ZUhCeFBxOTBITTI5UEtYTC83Q1owZkUrenRuN0creEJyYlE4UDdEQjc3bVFiM0t4MFQ3UGNzOTJZVjNibDRQRUJoY2lNZllBYkc5NW9LdGZ1SUZSUHE5d20rYUVGSFYyWDdCUjllQm9uUGk5SFlHZzczZVBkZENqU0JCV1Azb2JNSE5MTUswSTNQSHZjUUJndXIreFFGWHBhbWZjUWJwcUNQa1owZnN3ZExrMnIzQUhiU2FhcFhsaG51bkx2SHhocm1POEQ3SFI3N2l3WUxzYWltc0xGdXBXVmxibkZsWnFod3NSOE9GYUtoK3hqM1JBVnBCdnNZKzBTaWRmY1M5d1lGQy9jTEhmZmV2QlBZbngwVHVMTWRFOWlVSFF0R2tnb0wwdmpLWHdvTGZoWDNDT1BUOXlQM0RFSFcrd0VmRTloWFYzUmdZUitaOXkvbDZmZFZ1b1dyR0JQbys0MXYreHI3T1B0WUd2dEkzU1AzR3g2TnVCVTdXdHYzUVIrUUI2Mnh1cGUwRzlDNlh5SWpYMWhHSHc1OEN2ZXVCeE9uK0I0ZDNZdmY4UnIzMXdZVGMvY2JIUk5uNTViM3Z4MDZpemt6R3Z2WEJoTnIyNkFLRTJmbWxmZS9IVFdMTlRVYUMxVUtiVlFhQ3hYZXpMdmY0VTIwT0I4VDdIaDNpWWQzSDVIZEJmZE0wZnRxQm4zN1RaMS9CWStlb0k2Zkc4aXBhMVJRYVdkYkh4UDBmbjZOajMwZmhLNEZzSU9BbDNrYmVIMkFkWVlmV0pPM1pOZ2JEdmdESGZ0NStSd1RlcEFXRTN4RENoTzZ0QWVIQ2hOOHhBb0xjcEJ6bEhVZWZKdWRocDhicjZLZXM2U0NvbTJsSDI2bG9jQ25wN3V5R1hpbUJVQmJURHMwR2d2bDNySzN4UnJBYWI0MFJFeHFSNFllZkpPWWdwc2JuWmVXc3BRZmxiSUZqSlNVakpNYnVxZHdXRmh1WEZCU0h3djNpL3RWRlR4WnBjeXNscWFucVIrS21KbUttUnYzQ1FiVHAybGZVMUJlK3dFZkMvZVQ5K2dkTllrMkhpV0FCV0wzd3JRSEpkY2Q0NkFLOXkwR0N6b2RaQWMrSFF0U2kvYytIZmNTK0FvZEU2eGdIUlBNbnlVRnd3WVR2UGRySFJQYzk1b2RFN3ozYlIwVnhaS3VyNzRheFdLdTkyQUt4NEdpZ1c4YWRIeDZaWU1lRHVlQUJZMDFyeDBMZG43U1NjVm1kcWgyK0RUTWkzY0xGZmVZeC9QM1BQZFRHdmN6UHZEN0Yvc1NORG43RWZzTzRrSDJ2N2licmE0ZWVQc2ZQREg3U1ZBSXRmaFBGZkRDdjh2VnZFWDdOb0tMZzRxQ0huQnNhWDVmRzBGUnR2RWZEdmYwSGY4QnFJQUE5MXJXSGZkcC93QlFnQUFUckxjVzk3QzBCaTczTmdyZ0dyMEg0NkFLOTJjR0U4eW0reWdGeEFZVHJJVDNXZ1g4Y3dZVG5DMEtXUWMxaEIwTHVqZ0tDeEwvQUY2QUFQOEFVb0FBQy9zWEJseUFuS2FpazU2Y29SK0VvYVNIcGh2ejJNYjByNE9xZktNZjdRWUxZeDBPVG91NDl6dTU5NHIzNWgwVDdQZFJIY0dMdjhNYXRnYjNUTXpiNStzLzBQc3FIL3VDQnZjckhlWVdFK3pTOTVvS3VnYnd1VjVBUUdSWUtoOVBCZzVrQjgrRDl5ejd0d1ZXaTFHS1dSNDBnUVZqQnd2M0hQZVRGUXUzY3dvTGVRcjNJUWU1dnJTZXZCdkdvbTR2SHpZSCtCSWRXUjVDZmdWbjkzeDNDdWdIQzlxQzkwWDcvQVUraTBlSlRSNGxnQVZpQnd1WkJZcTlpczIzR2d1UkNzOGVDL2M5SGZkQjl6Qll2aE9wc2hZVHBmZUd0QVlUcWZlR0hSTlo2Z29UcXJUN2hRY1RtbUlIRTVuM2h3b1RxYVFLQzRzMDBSMExPTWhoMU1hc3BjSENIZ3ZuQTdJVzkzUzBCam1ZQmZmUEI0Nkk4WWpmSHZkNS9NSUZ2UWIzYmZqQ0JmdU4rQzBkTjRBRll2ZWt0aDM3V1FmN2FQeTYrM1Q0dWdYN1RXSUc1WUFGL01jSE1YNEZDM0Q3QlFYN1VRYUp6b3ZOd1JyRkI5Q0wwSTNRSHRtVUJiTDdrQWNMRmZlYXl2dWFCZzU2Z2NKZU5BcjNYYmozTy9WUWZoMFROY0lXOTQ4R0UxWDREUjNMenhxdEJzT3NmbWlWSHhPWnVQc3BCVitYcTN6Rkc2YXhqNUdjSDdNSE1wVmc5dzkzeDJXblNwWVpxcHlocUtiQ25MR1hwcGlpQ0ltWW1vcWFHN3FncWFTa2VhTnJqUjlYZzJSd1Z2c2JDQzVrYzRGT0czVUdFelBSaTlLTjBCN1lsQVVUTmJMN2ozQWRDeEtROTJMN1l2ak5FenFRRmhPY1dSMFRPb0FLRTFyM0JBb0wrM3I3Tis3L0FxNkFBQ1VLQWZjeTR3TzYrUWdWOFlBRmoveFVrQ1ZQR2xHQloyNXZIbktmQmFGdWRwUnlHMnR6Zm1hRkgyV1Zzb0N4RzkvZnZPK2ZINWEranNEM0JocjNNQWZpaStINEtSMzd1UWNMb0IzUkMvZEdmc3hLemZkUDk4UWRFcmprOTA3a051QTI0dmVHM2hOOGdQY2E5eFVWcVphdDRxMGVvSk90bDYyVkNJcURpNE9ER2wyU1k1bHFIbGxJZFlCbEcyQm1vNzhmRTdxQStDejdJaFhueTdqU3J4OTBuZ1ZoWjJOdjkvRUs5OVQzemdvaFRsTnRXMkFld25SWm9rMGJKVUZaUDNnZjk5OEtuWXliRzhpcGN5b2ZjUWRqZ1dGK2JJQUkreHRhYkdKU0dndi8vOUtBQVA4QUxZQUFZclFMeC91NkZXSnJwYmFybXF1c29SL1ZhcUYxYWhwb2NtdGRIZzRWWEhXcnk5S2t3YW0wSDdhcXNweXFHNkNmZ25PZkgxNzdnUVZqWFc5L2JodnUrSXNWOXk3M0NTZjdRUjhUMy90QlFFWkdYM2VudnBVZXhQZXhlSnRjY3dXZGRYYVNjaHRWVm14V1h4OWRWV1pBTnhvVHZ5N0FaY0svdDYyN3RSNFQzMXlUc0dqRkcrZjNGT0QzVi9kUyt3NzNHdnRmKzQ3N1V2dFkrNHI3Zy9jMit3MzNYY2JUbUtuRkgzNnBCWFpmV1lGT0cvdEEreXIxOTI4ZkU3LzNZZmNyOTFEM2NSNE9TUjFpQys0ZDkxOFdReDBPWndlQ0Nndjd4dmdQQmZzZ1pBYkhncE9CQmZ4TUIwR0FCUXV2QjBXWkJZcTlpZ3Y3aVBzZTZ2aTR0d0gzS3VBRHd2aVNGZUtCQlk3Nys1QWtVaHB6aW5OMWNoNXlvQVdmY1hpVGRCdHVkWDlvaFI5bGxMQ0JyUnZUMWFuVG5oK1d2WTIrOGhyM0ZBZlFpOUNOelI3YWxRV3krNWtIQzEvZSs0QUhaSXAyY2hvOXQyZlJ2clNlcmFVZWM2VUZlWEozZ25VYmFYYWh2aDhMZkpYN0lHa2RXd2RlOTRFZFEzNEZDL3VSK0RTNlhyS2FkL2VlcWhLbjBmY0t6eE5VOTdENGZCWDNJd2ZnYWF4QVAxZG9XSUVlZUk2WGdKOGJuNXVacVpBZmxiRUZqWmVWakpRYnVadDZUaDk1QjNLRWNJUjNoUWdUbkMxdGRXdGlHbGF5YmI2MW9wNnVyaDRUVkd1Um9YZXdHNmFmbGFxYUh4TTBmSmdGRTFTQmdvU0dnUnQ5aFpXZ0h4T2MrMDZqRmFTV29yNmVIcGlRb0pHaGtRZ25CM05vZjRKM0czRnltYTRmRG5SOWQzd2ZjYUo0ZFJwbmRuMWpneDdDK3h0a0IrSitCZnVJQi9zbFdGa3RIZ3YvQURlQUFQLy8wb0FBOVIzL0FRdUFBSTRLQzJLTDl5d0s0UGNDRXZjUzl3ZUg1NkQzQi9zRjkxd1R3Z0Q0TnhhekJ6S1ZCWXEraThiQUdoT1NnUGNsOTdIWmx3VVR3b0N5KzF3SEU1S0FaQWZWZ1BzTCs0QUZFOElBK3dmM2dkdVZCYkw3a3djVG9nQjhIUlBOQUs3NURpTUtEdGYzZUJXd3A1NnRzWjkwWW0rQ2MyMXlIa3FvZTZpbUdnc1ZvNEVGcUplZm5La2JwcUYvZjZBZkM3MFc5Mm16QmpDWUJmZ09CL2Z2L0VrRnF3WUw5OXdkMElzTDl4WDNpaDMzck9jVGJQY3hDaE9jMVIwVHJQYzlDaE9jMFBndkN0aVVCUk5zc3Z1UGNCMExUdmN1WXExVmxBaG9pWGR4Y1JweG9HMjhtWnFNalprZW5HNmJhcUJhckQrblpyTjNPWGxvWUhWTVZQczBHQ1NCQldJSGhaNjBoNmtiekt5YXZKa2Z3ZmRGQmNTY3M2SExHNjhHQzJoKzBFYlkrREozcVhjUy93QmNnQUQvQUVXQUFQLy91b0FBL3dCWWdBRDNaZEZLekJOVzJ2dElGWmVCM3AxeTk0QUZXS2E1Y2JJYkUxWEN1YTNjckI5Q2tKeGh3UnNUVnJPbm9xbWJIeE9tZ3FRRmhuOTdoMzRiYW9HY3lva2ZpZENVMUp2M1hJR1ZHQk5hTlhpUis3OEZOV2xtZDFnYlpXS2J6bTBmRTJhTjE1UGtsUGM2Z0pVWUUxWTJlSnI4QXdVTyt6bjNCRGozQ1I2NEJEUmMwUGNhOXh1NjArTGh2RVA3Ry9zYVdrWTFId3V1RnRvZDl4Z0hDNHoza2dwa3NoTDNIT1AzSS9kNSsybjNYaE5zdlFyM2o3TUhPcFVGaXJ1THU3Z2EyK1VGRTZ6M0Z2dDhTSUlGRTJ4ajkza0hFNnl6QjBpVSt6NzN1d1VUV3ZjYzl5M2xtQVVUYXJMN1hnY1RXbVFId1g3N2FmdUhCYk1IRTJ6UWk5Q016eDdjbFFXeSs0LzNXZ29WMkVtam9WcmpCYWQ3ZTVkN0czcDVmM1Iva0h1bGRoL0grems1Q2c0Z2k3eGE5eXYzaS9mckNoS2orRlVUV1BneDl5c1ZFNWozRWdvVHFJVDdLd1hHQmhPWTl4SWRFMWlTOXlzRkMvZStpN1JpOUIzM0ZiLzRmdWNUbkxJVzkzUzBCam1ZQmZmUEI0Nkk4WWpmSHZkNS9NSUZ2UWIzYmZqQ0JmdU5CeE5jOS9rS0U1dzNnQVVUWFBneUhST2N0QWNUYkMvWEhlS0w0bzNmSGhPYzk4Z0tFNno0SndwYUhSTlZ3UGNlOThvVkU1WEFTUjBUVmRCaStKb0hFelhRa3ZkR0JWSUdFMVhRS0IwVFZlRDNmd1lUV2VDaCt4TUZ4QVlUVmVDRTkwVUYvSVlHRTFQQUxRb0xGY2k0ck1HakgzcVlCV3h6Y0hwZUcwNWhyOWVJSC9kdEJvMlZqWmlZR3R0VXdUODFRa2NuSXNsTzZ4NFQ3SXIzdnhXeXEzUmZkSU4rYWgvN0NRYmFrN2FqcnhzT1FXZHphR0FhUk1sWjl5WDNPTjdoNHR4WXUvc0NIZ3YzVTM0VnI2aWlxWnNmZzZRRmhuMThoMzBiYkh5Ynk0a2ZpcytUMVpyM1c0R1ZHRFI1anZ2c0JTdU1wbUhKR3d1OHVxN0V4MXlzV2xwY2FGRlF1bXE4SDY0RWFYbW9wNmllcHF5dG5YQnViM2h1YWg4TGl6V3dDZ3RyZDNoZlpKd2xrR29mbGtRRnNBYVcwZ1dRckp6eHNocTNlSjVySGd0VkNteFVHZ3Y0QmgzM3BMcjNwUjMzN3dvVGJ2Z1c5OU1WdXZzdEI5M1RIWW5maStMd0d2dFIrOU1WOTZnRzRBb1R0dmZOQ2kxYzZRWXRpelAzRkFvTytJd0gxSmNGc3Z0b1pBZmxmd1g3M0FjTHR4YjNyclFHTFpZRnRRZjM0ZmdzQmZ0QkJ5VDNCaDMzcnJRSEw5Y2RDMW9kRTFWZzl4NzN5aFVUbFdCSkhSTlZhR0w0bWdjVE5XaVM5MFlGVWdZVFZXZ29IUk5WY1BkL0JoTlpjS0g3RXdYRUJoTlZjSVQzUlFYOGhnWUx0QWN2MXgzMzhSMjBDeFZtQjlpUkJmdTdCekY3Qlc3M2phZ0hNNXNGQzRzMENndjNPUGRtRmVDeGFraE5ZbDh0SDA0RzBZdk9qZEFlQzUxK3Z2ZEp0Zi8vMTRBQS93QW9nQUQza0wwTCswNSt5ZmMreWZjK3NCS3o0MGpaRS9Dejl3a1ZOOXhkN3Q3T3NNR3pIbmVqQldaWFludFFHMFppcnIyM3FiVDNFWkNWaTRtWUg4MEhpb0Y2aW9BYkUrZ3RZN0svdmJTbHVZNGZzMjBGYzZ1ZWdxRWJxSjJqcEIrdmNsaWFTQnY3Q2t0VVFsYXlYZDU2SHhQd01YeFdYVWthQzJjSHpQZFVIZnRROXhNZHpaa0Zyd3ZDaTdqM2FyajNYUGc0Q2hQczkvajNseFc0K3hVSHlOTUtpYytMME5nYSswRDdseFgzaVFiM08vY1o1L2RLOTBmN0NldjdPQi83bkFZVDNHUUgyb0VGalV1TFMwY2FPMTdiQmtPTFJZbElIanlCQlE0VzkxVUt5NHZRMlJvTFZmZzAwMFhQRXZjQzBVWDMweDMvQU4rQUFORVRtT2tXbFlIZGxZYjMwUVhBcU1TNXZ4dkZzR284aVIrQis3bCsrMU9WZ2QyZGcvaDVCZmNYaVZxM1BCc1RxRlJEWGtKbkh4Tm8yNFp5cjFZYkUxaHBkM3B5ZHgvM2t4MzdVUVVMRmZmQ3l2dkNCZzZMaStNZDl5L3A5eS9YRTZ4dkhSUE05NWtkRTd6M2ZoMFQzUGV0Q2hPODZ4ME9GZmNZeHZjWVVKdWsreGZxOTdZS0xBVjg5eGFlSFF1bmZQY0UrS0s1amgwU21majErM0QzY0JNWW1ma0lGUk9vemdvVEZQY3pIUk5JK3kvMytRVVRHT0tWQmJUN2x3Y0xpejBkQzJaM3FxcXFvS212c0o5dGJHeDJiR2NmWXdUQnZySEx6Rml2VlZWWVpFMUt2bWJCSHc2dVkybWZZUnRCWTFvdmhSKytnd1hSbEtXZ3B4dW1vNEJ0ckI5b3NxNTN0QnZWdEx6bmtCOVprd1ZGZ25CMmJ4dHhjcGFwYXg4TDl5UUs5eGIzd1IwVHVPOGRFOVQzRndvRkU3VGRIVUI5QldjSERtOEs5NiswQnkrV0JZa0w5MHNkRXAvM2ZmY0Q5MVlUR0ovNGtoVVRxTTRkRXh6M01nb1RTUGVWQ2d2UUNsa0xlY0ZzclVXYUdheWNvNmlrd0p5d2w2ZVpvUWlLbHBpS2x4dTZuNm1rcEhpamE0MGZYSUZuY2xYN0d3ZzBaMnQ5VHh0OEJndmxDdmV6SFFzOWk2LzRKTElTbGZkYysxWDNjOWYzVHhQbzkyYXZGVUNZOXdMM0krMzdJMFIrQldmM2lLOEhQNW43SC9kYjl5UDNSTWFXQmJMN1QyUUh6WDRGRTlnZyt4MHI5eC9JbGdXeSszTmtCOUNBOXhyN1dBVVQ2UHNtKzBsTGZ3Vm45MXdIRHNlRDkwNzhEWDV4ZjNaK2VSbWtjbm1VY3h0dWVvRjVmaDlOcW5xeHk2bXlxNkFlQ3pYN2c3bjNSOWhkZHZjNHMvZHJyWW0wZ1hjTDUvdU5GZDNEMXZkRnpoOExpVGNlTDRBRkN4NzdnZ2FKNFl2aTRScThCK0tnQ2hOUDNaVUZ0UHVhWWdjVFY5ejM2aDM3Z2ZkekhlR0w0bzNoSGhOUDNaVUZ0UHVuWWdjVHArbjNQZ28xaVRVZUxZQUZEb3ZramVFZTR3YjNKZUVtKzFEN1NqVWkreTRmUEFZTEZUVnpQMEluSHFCNEJlall1K24zQWhyM0FsdnBMdG9lZG5jRjFDZWpQelFhRGpTTFE0bEc5ejhkaXZlcUhZelBIdG1VQlF2UEN1b0w4UjI4Qnd2bnRzLzNYZ3BxVHh0UFo2eTVlaDhMdC9kaGZoMEw5M3l2Qm5rS0N5eCs5eGdLQ3paK3VQZFF0ZmMxekFHNjN2ZVI1QVAzam40Vjl3cno4ZmN1OXk0MjV2c2RNRXhhU0djZm8zZ0Z0SzY4cU1JYjRjZFBKcGNmKzlzR2gzNklkM1FhK3lQZFAvY05Ib200RlVoWXl0U3RsWjI4SC9kV0J2c2NRMWRNSGc1OGxmc3VUZ1ZvQjl2M2V4MzNUUW9MOXpVZEU4NzNPeDBUbmtvZEU4NzNCZ29MRlJQZ041Wm9xcjNCdGM3ZUdoUFEybEsxTEI1ZVl3YW1pQVhRZzZkN1VSb1Q0RDkxUW1NYVM2ZGV6SDBlU24xdlhrc2FFOUJqb1VJL0dsRnZlMGFESG5DSUJXTzRCK3JFdGRvZjNtSE93Um9UNEwydXF0K1dIZzRpK0NKUkJ2dTkvQ3dGVnZlaysxWGU5MVVIT01vVisyY0c5MmYzdVFVT0ZYTnc5eXI3US9zcSswU2pjUGRoOTBRRndBY0xqZ29TQy9laUNoS2oxd3NWUzhOcDJkM0V0OUc5YmExVHFCNExmWXlOZXg2RWJBV0htQXU2OXhQM1JWbTlDN0tjb0tpZXc1R2drcHVTbVFpSm1waUtuaHUzbnA2cHBIK2RiSk1mUzRacFpHMHpDRDV4ZEhWY0cyTUdDOFFkdnY4Q080QUE5eXNLQzUxM2Q1dHFHMVJ1V0QyQUh3NmY4UVgzRVBlWUNndWg5eFFGOXkzNEt3b0xFdjhBSFlBQTBRb0wxWnJBeHhyaWVhMU9aRzE2Y25qNEx4MlhtSTJYRzY2UGVGMGZDeFZESFF2M0xmanFGYkNwcHJDeWJhUm1aVzV5Wkdhb2NMRWZDeFZycG5TcXE2U2lxNnR5b210c2NIUnJIZ3YzTmdyaEdndCs5MVlkQ3p3SytDZ0w5MElLRWdzbEN2OEJCNEFBdUF2TTkxRDN4QjBMK0JRZFY0cFVpbFllTzMwRlovZU1yd2M3bVFXS3RvcTN0aHJOei9jdSs0d0Y5eHl2QmttWCt6ajNtZmNDK0RrSzFIbjdQL3RHQmZmeEJ3c1crQzdkKzlRR3NLZXZwNmVpQ1BjaDl3YTRzdGNhNEZUTSt3d3BLMW9oZ0I1M2xwMStvUnVvbTZDN21CK2R6Z1dQb0orTm5Cdkl0MmRFVEdSYk1qOGZWbDFYWDFWZUNBNzNhaDAwaVFzVnNZV1VvNU9qbEtJWnB0cWowTEFhcUhlaWJYcDdoNEI3SGd2SHlxZk53UjhMKzEvM0ZBdUxNdmNVQ21JTDh2YzZDZ3Q5QmZjM0NndW05eFFGOTYwRy9BLzgyd1ZuK0lzSEMvYy9DbUlIQzlTTDk5NEtDLzhBSTRBQUMvQWQ5eks4RmV2R0JhU2JsNTZjR3FGNm1YZDZlb0Z6ZVI1SU1nWGtRdWdLeGdyUm1RVUw5NElLOTBBVzkza2Q5eUFkRTV6M05Rb0xGYStucWE2dWI2bG5aMjV0YUdpb2JhOGZDNlB4QmZkNEJ2dlQvR2NGYXZoT0J3c0dpcjJLMEx2R0NndUJsZnNsZlFVTDk5Q0x1VjNLSGZkRzBybWl1dmNUOTBWVHcxZS9XYjFpdFBnREhmZHg2dmMydWFmMzBnci8vOGVBQVBmU0NndmtpK09ONEI3M1R3cjdxUGZ3SFNnYWN3WklhSjMzQ0Z3ZkM1OEtXaDVGZlFVTFZQY2xIUXU4RTViMzdBb1ROc0w3T0FVVGxpbC9CUk0yK0RJZEU1YTBCeE5XaHdvVG5zUUtDeFZuYm0xb2FLaHRyNitucWE2dWI2bG5IL3RkL0c0Vit4WDNKRFhnZ3g2dmxKNmFxaHFrZnAxUWxoNzdGNklGZTZPQnBLUWFySitqcjVjZUN5NzNCaDMzcnJRSEw5Y2Q0b3ZpamQ4ZUM5RDRMd3JabFFXeSs0bGtCOW1CQlkxS2kway9HbnNHVW11WTQyVWZDL3RRK0prVlI2aGN1M0VlQy9kcEN2ZWNIUXY3bFJhbW82Q25wM09mY0c5MGQyOXZvbmFuSHc3NGFiNGRDMkw4aEJYN0tvWTZlMkFlaDMrRmc0V0VkSjBZbjNGMWxYQWJiblorYjRJZmNZeW5iTWNieHE2Z3Jxd2Z2OFNTMVBjM0d2ZUdCNDczSEF2N0hnYUk1WmZFc3JlYm5aNldvNVdUaEJpdmJyRjVxNGtJL0VzSFZvcFdpbFVlUEgwRlovZUxyd2M3bVFXS3dZckF3QnI0RHdlUDl5SUxGZmNWMVBjVlFwNmsreGYzQnZlMkN2c0dCUXY3YUFmM1hoMExmdmRzSFF0UGxMWkg1eHZZSGJLekZkVTlwcDljN1FXcmZIeVplUnQ3ZUgxNGZKQjlvM01mRHFiM0F3WDNYUWI3c3Z3aEJXajRIQWNMK3gvM3crcVdCUXZaQ3Z0NVp3ZlJmZ1dNVzR4TlhScjdld2E0ak1tTXV4N1FtUVd2KzNpVEhRc3lDZzRUM0RvZEMxcTg3QjBMOTUzNExncEJtZ1dLdTRyS3dCcTNCcjZrZmwyYkgvZVlIY0FibnFTUmtKNGZyd2RDbDI3ZWRNdG5xVWVZR1FzVjl4WDR0L3NWYWdiUmd3WDhaUWRGZ3dVT0ZaR0ZCY3NHOXl2Mzl3VzArNTlGOTJnSERoWDNGcXdHUkpNRitHVUgwcE1GclBzV0J3NzNhZ3IvQWorQUFMb0tDK21BQldJSCsrSDhMZ1gzVmZlMENndjNkUGlVMjVZRnRQdHdZZ2ZkZi9zaysvY0ZDMUo1QlZCNWRubHRHbitQZUpka0hnc1M5dzNuOTdLN0MzMEZaL2Q4cndjTDl4ZGh3VFVlQ3hYM05LLzNDZmNLOXo0ZWNhSUYreUg3R0VqN0wvdExHdnRMenZzdjl5SDdHQjZsb2dYN0N2YytaL2NKOXpRYURvdXVDZ3V2QjBlWkJRdEJDaE91TVFvTEZXdWxkS3FycGFLcnEzR2lhMnh4ZEdzZUMvY1hpL2NSQ2d1NDkvWDNLL2NzSFFzZVBmZExDZ3RVYTJkVmd4OEwrRlQzZXhYN0ZVNVJRR1pubXE5bUh2ZXRCN1crc3BpcUc5Uy9RL3NVSC92Zis1Y1ZWWXBXaWxRZU8zMEZhQWNMK0FmNGZCVk1SR1ZVV2gvM1ZnY0xFcS9kVU54RDAvZGIzSWJXZ1pvTHVQZGhIUXNWSUlzZ2lDUWU5MU8wQnZzRm1BV0o0b3ZrNGhyM2hBZmppK1NONFI3M0JaZ0Z0UHRUQjQ0aWl5QWlHZzRHZmpYM1p3b1QxQUNUeFFVTDI2RzV3TUlhNmppLyt3ZEpTWHQ1Wmg2Uit3a0Z4d2FkNWdXU282T09wUnZNd0c1Q1RHZGpNaDluV2E4R0MvZlZGdmVvdEFZdmxnV0ozSXZlNlJxdUJzdXpkVktkSHd0Mzl4QUtDNnYzOHF3U3ZNcGJ5UGNNeGx2TkUrUzhDM0YrOXY4Qm00QUEvd0FyZ0FEM3d3b0xOdmQwQ2d1NmpMNk12aDYra0FVTGpUZUxORFFhQzJJSGN4ME8xSnl2c2NRYTBrZkFLa3hNZkhOakhvNzdEUVhCQnAzekJaS2dwSTZvRzhpemNGRllhMnRHSDJOZEJndTlDdmVRc3djOWxRV0pDL2RGOXdRVjk4cjRFUW9MbGdXSjRZc0xlZ3BiaWthS1dSNExaQWZhZ1FXTlI0dEdTUnJtWmhXd0J3dTgrSEc5Qy9jcWZoWDNaQW9MdmZqcnZRc1ZmbzEva25ZZWZwbWFoWm9icEtHZHBxUjNvbkdYSDZHcnBwMjBtb0NvR0VWMFRHSkZHZzczZGgzMzZnb0c5M3dLMFkzUUhndjNIUXByQy9mZEhVY2VQSUVGQzFhS1ZZcFdIang5QlF1eSs1QmtCOW1DQlkwTDl3d2RhSzRMWC9lUENndjlUUVN2b1o2M3NJRG9mUGNmSDM3M0hRVm1CbjM3SFFWOSt4K0FMbVlhWDZGNHJoNE85N1lkL0VzSEN5NGRFdmNlNmdzYTY3dXl5WmFaaW9lYkhwbE9CVmlXbjN1bkc2Q2NsYUdUSCtHR1BjY3ZHL3NDUGp3aUMvdVIrRE8vOXdTcjhxNFNxZEJHMGZjeXlSUDBDK09COTBYN3V2dEgrNk1zZndVT2Rmc1VCZnVTQm9uZWkrRHZHdmNwQnBndEJibjNnRjBHZlN3Rit5aStDZ3V2K0JEVDk0ZjNwUXJjT3Q4TE5ScGFCelNMQzRUM0t3WDhkUVlMdVBndXVRdnFIUTczbGE0R01Kb0Zpc0tLd2NBYTJ3ZFp0Ymg3dVJ2M0NlVHQ5eTczTHpmcElCOExlS09pZ0tRYnNLR2ZwSTBmc29CbG1sc2JDL3NvaTdWaDl6ZjNOUGNzWUxZTHJQZEh0Z0c4MWZjZjBBUDNXQXYzSXdIYTl5SUQ5eW9MOThvZDR1SWF2QWNMWS9lUHN3YzlsQVVMVHdaeCt4b3lnQVVMZG5lVmFSc0w5OVFkOXh2bTkxem05MXpuRTE2L0ZndTZCdGFpWGxaRlhXcEtkbmlNam5vZmVzTUZxWUo2b1hVYmQzdURkNElmQzdBZER2ZW1maFgzQ1BjRzN2YzV6SG5BYjdNZkMvZXlDbHdIQy9jVit3VE9aTEwzRXNJTEV2ZUI1NkwzWEF1RDkwWUYvTGdHQy9jZTkvc1ZXUWNMRXNYM0FQZmE5UXVLU1lwWkhndjN6b0hEOTU0S0N3VmRIUXV2QnpxWUJmaXc5K2NLQzdiM1FxMEJ0TkgzSGRVRDRnc2htUVg0ZHdjTCtDQWQ5ellMbFBjMkJWQUdDN2puOXkwTGl6SWRFdmNjNWd2eXEyQlVPVnhoTFh4MGk0OXhINE9xQmNCK2dLUm9HM1o3Z1hSK0h3djNiZnN1OXhiN1ZmdFcreTc3RnZ0dEM2ZGptR3BuOTVZZEMvZzJDbWl1YTZzU21BdVZCWW5QaXd2ZWZoVzd3S3YzRWJNZm90YVo4WkgzQXdqMUJveFlqRVpjR2xRSEM0QUY5MDRkQzdMN2ozQWREcFp0QlkyWW1JMllHNmlUZVcwZmlBdTlPQW9MOXlnZHRQdXVCd3NhWW5SM1lZQjlqSTE3SGd2NFBmZ3VIUXV0SXdWWW5LTi9DNkg3RkFYRkJndUUreXNGd3dZTGpFYUxSZ3NTOXdqZ0MzRmhnb1JySDFlQWxyOEZrS2VXeUtrYXJYdVljSEI2Zm1rZUM0S3NpSGIzaUt6cXJmZHZyWHgzRXREVTl4clU5emZVOXhyVUN3ZFlpbGlLV0I3N0RIVUZaL2ZkcndmN0RLRUZpcjZLdnI0YUMvY2dnWlVMdGZjd3Vsekc5OWE2OXhxMUVxN0o5eHJSK0V2SEU3LzRCZ3RpQitZN0NuVUhnMWhsaVdjYkpHYXQ5d1FmQzBzZEFRdktIZmRRQy84QkFJQUFDNC8zSWdVTHdaZ0ZzdnROWkFmWmZmc1ArL1A3RC9mMTNKY0ZzdnQ5Qy9nTEN2OEFhWUFBL3dBd2dBRDNiZVVEOTNnTDkxVDNGZmNIOXp6M1BQY1Yrd2o3VS90VSt4WDdEUHM4QzlDTUhRdUJkZ28wTlJwYUJ3dXcrRzJ3QWZjQ3hnT3pDL2YwQjRLUkJRdUwwTkFhc2djTG0vbjRGZmY4Q3Z3R0IxaUNCVzMzUHFrSFdKUUZDMTczendvSUMvZGZDdmRCOXpCWXZndjdaeFg0SEFyU3RLNjJDL2RYQ3ZlRjNndi9BRktBQUQvWEM2LzM2dmNDZ1hjTGFQZ0RDZ3YzQytYM0N3di9BQ1NBQUF2RS93RW5nQUQzbHdvUzl3RHE5NTNxQy9zZy9kWWlDZ3YzWlBlbHpRR3orWEFEcy9lbEZmbHd6ZjF3Qmc3M1pQZlJDdmx3K0E4SytYRE4vWEFHRHNXaXhoSUxPQW9TL3dBWGdBRDMwZ29MQmZmOUhSTno1NEFGalF1STY1akNuNitVbTVpWm1aVUw5eFFTNGZjYSt3RGVDMkswOStzZEM1UUZpY3lMQzdYM05Ma0xkQW9UbnNnS0N3UDRmWW9WbHBFRitKZ0hnSkw4VS91V0JYMEhDOFAzZlV3S0V1N205M0xuQ3dQcCtLUVZmNFFGL0pnSGw0WDRVdmVWQlprSEM0blJpOUxRR2c0R2llQ0xDL2RZWnJmNDNyY0J3cnI0NkxvRDhaSVYrTjRMcngxaTk2NEhDOXl2cW9CaHRCLzdwQWRmWkdwNVh4dHRVaFVMOXhlTHRIQjIrUXU0WXJRTFlnZlRmZnVZKzlJRnlnY0wrQWo0ZkJWT1NXWldXeDhMdVBmMTkrc0tDNHZoamVFZUMvOEFTWUFBQzR1NFhyejRYRXdLRWd1d21hMmpIbitpQlg5NGVJaDlHMlJ1cExZTFF2ZGR4UGNqeEFHbytHMEQrSXIzWFJYRUM3bS85d3l1SHFMV2xmQ1M5emtJOXg4R2pRdjR5QUhBekFQM0NndkJnOEVTK3pmMzJndjNkUXBvQnd1M1dVdWdUQnNMOTRFS3NnY0xSNHRHaVF2NERBcjM3ZUpHNUJQbzl6WUw5MVdMOTBJS0N4cWlpWldJbGg2U2c0T1FkeHRyZDNSZUMvdjErM2wyK254M0FldkdBK3Y3amhYR0MvdW0reGYvQUNlQUFQa1Yvd0FuZ0FBU0MyMldUcEZ2SHBWWFY1WUZrbXRpbEhBYkMvLy93NEFBL3dBOGdBQUxFcmprdS9jYWs5ODUzUXYzUkIzM1dPc0wvd0JUZ0FBTDk4b1ZOSXNMczZTY3I2TWVnNlFGaG4xNmgzNGJaQXYzcXgwMGl6U0pOaDRMRXZjZTZndjNWeFBNMEIwTDl5dDhzL2NCdFBmYnN2S3pFcW0rQzhTZEJjYWRvSjJwR3BlSG5uK3lIZ3QvdFFWa1ZBWnFob0poZmg1cGZ3VUxZZ2ZuZ0FXTk9vczVDNFVLNTVZRkMvZ1NIVmtlUlg0RkM3bDZIMnlBK0I0S0MxK0xKUW9MMFFIRDk1OEQ4UXZQb2F1MXlSb0w5MVBFK0JmRUN3SE83UVAzQ0FzQit5VDN0QU1ML3dBeGdBQUwvLy9jZ0FBTCszQ3c5ejRMdFB1dVlnY0xFdmNRNlF2cUUyajNIdmZvSFRTSk54NEx0bWV2RXY4QUlZQUEvd0JDZ0FBTHVCMzNmUXNXOTNtMEJpcVl3dmMzQmZkOEJnc1NrUGQ1QzBCOUJXY0wrQ1VkU2djTDlla0tDMTVVZ0dCWEgxTmFlVTZCK3dBTGdKRW5ZZ1Z2QjcrRkJmdG5Cd3Y3bmhYVEJvWDNWd1ZQQmc3bTl4TFJDZ3Y3eHZjRkhkYXZDN01IUHBRRmlkQ0xDN01IUHZmREhRc0IreXYzd2dQN0t3djR3ZmRkQVF2L0FFZUFBQXYvLzh5QUFBdGRpa3FLQy9jV0VzM0MzUGNWTjdKa3pndWsrVW9WOTJNZEM4ZjN2cmdCdWVUM2h1VUQ4Z3UrT0FvU0MweEVaRlZhSC9jNjkweTVCd3N3SFdTeUN4WEUvRzFTQnc2SjBZdlQxQm9MZDZWM3BYY1NDMzY0K05xNEFRdjNsWUtyaVhZTHRBY3dsUVdKQzJQNFRBY0x1RjY4V2dzeGxRV0owSXZOMEJxT0JndjNZYzMwNlBjR09kMzdQZ3ZCZzhINEF4MzdlZmtjQy91bSt6VDUrZ0dOOTlvREMvZmFIZDJCQlF2M1J2dEY5MFZadlJLajF3c0grRGtkQ3pXTE5QY1VDZzZOM3g3M1R3b0xtZ1d2KzNobkJ3dDg5eVFWbzRFRkM0djNhUW9MQi9mNUNndXVhUGNNSFFzZWxtMEZqUXYvQUdhQUFBdjNoM2VuZHd0aTk2UUhDLzhBUTRBQS8vL0xnQUFMbnZzcUJib0dsZmRWQlF2M2xZS3NpSGIzVUxPa0MvY011Z1hCQi9zTVhBVUxWb3BXaWxVZU8zMEZad3Y3Q2x3RlZnZjNDcmtGQy9kTkN2Z0VIUXNZdlkycG5hOGFwbnFZQzNNYWJGTjFKWUVlRGdFQUFRQUFJaGtBUWhrQXJnQUFxd0VBc0FBQXJRQUJodzRBcndBQmxnQUFpZ0FBc1FBQmx3Y0F0UUFBc2dFQm53QUF0QUFCb0JZQXVRQUF0Z0lCdHc4QWpBQUJ4d1FBdWdBQnpBTUF2Z0FBdXdBQjBBQUF2QUFBdndBQXZRQUIwUThBalFFQjRRWUF3QUFCNkFvQXhBQUF3UUlCOHhZQXhRRUNDZ1lBeHdBQ0VRRUFtZ0FBblFBQ0V3QUF5d0FBeUFFQXpRQUF5Z0FDRkE0QXpBQUNJd0FBa0FBQXpnQUNKQWNBMGdBQXp3RUNMQUFBMFFBQ0xSWUExZ0FBMHdJQ1JBWUFrUUFDU3dvQWtnQUNWZ1FBMXdBQ1d3UUEyd0FBMkFBQ1lBQUEyUUFBM0FBQTJnQUNZUThBa3dFQ2NRWUEzUUFDZUFVQWxRQUNmZ1VBNFFBQTNnSUNoQllBNGdFQ213WUE1QUFDb2dFQXB3QUFvZ0FDcEFnQUJ3QUFFUWtDclNrQUR3QUFEUUFBR3dFQWVRQUFBZ0FBWUFBQzF3QUFJQUFBZXdBQzJBQUFhQUFBQXdBQVFRQUFDQUFBYVFBQWR3QUFkUUVBYXdFQWFnQUFlQUFBRGdBQzJRRUFid0FBaVFBQk9nQUMyd0FBY2dBQWRBQUFRQUFBQ1FFQVBBQUFQZ0FBWEFBQVhnQUMzQTRBRUFBQVhRQUFQUUFBb0FBQUN3QUFjQUVBWmdBQWN3QUFxZ0FDNndBQXBRQUFtUUFDN0FBQUlRQUM3UUFBQkFBQzdrTUFpd0FBandBRE1qVUFvUUFBWndBQUJRQUFZUUVBWkFBRGFBQUJMQUFEYVE4QVl3QURlUVVBQmdBQWVnQUFuZ0FBbXdBQW93QUJSQUVCUUFNQURBQUFwZ0FBcUFBQW53QURmd0FBSGdBQUhRQUFId0FEZ0FFQW5BQUFQd0FEZ2dBQVh3QURnd0FBbHdBRGhDNEFmQUlBaUFBQWZ3QUFnd0FBZ0FFQWhBQUFoZ0FBZ2dBQWhRQURzd0VBaHdBRHRmOEV0U3dBN1FBRTR2OEY0bFFGbHdNQUFBRUFBRTBBQUZBQUFGZ0FBRm9BQUdRQUFKZ0FBSnNBQVA0QUFSTUFBVVVBQVZFQUFWUUFBYVFBQWNRQUFkRUFBZFFBQWVjQUFla0FBbWdBQW9RQUFwQUFBclFBQXJjQUF3WUFBd2tBQTIwQUEzQUFBM01BQTRvQUEvMEFCQVlBQkRNQUJENEFCSGdBQks4QUJMSUFCTFFBQk4wQUJQd0FCUlVBQlRBQUJVY0FCVlFBQllNQUJmY0FCaE1BQmlJQUJrUUFCa2NBQm9NQUJva0FCb3NBQnBZQUJwb0FCcWNBQnJVQUJzSUFCd2dBQnpjQUIxTUFCMm9BQjZvQUIrQUFDQ1FBQ0U0QUNKUUFDS3NBQ0xnQUNPMEFDUHNBQ1JrQUNWUUFDWU1BQ2FFQUNka0FDaFVBQ213QUN1SUFDdkVBQ3dRQUN4TUFDeWtBQzNFQUMzTUFDN01BQy9FQUMvb0FEQU1BREF3QURGb0FETElBREw0QURSUUFEWTRBRFpzQURhTUFEYkVBRGJvQURoNEFEa1FBRGt3QURxTUFEczRBRHVzQUR3OEFEeTRBRDB3QUQyY0FENE1BRDZrQUVHQUFFTElBRU9vQUVTc0FFVDBBRVd3QUVYMEFFWmtBRWFzQUVjWUFFZklBRWdZQUVpRUFFam9BRWxrQUVtSUFFcmdBRXQwQUV5UUFFMG9BRTRNQUU2OEFFL1FBRkI0QUZITUFGSVlBRktBQUZLa0FGT2NBRlBBQUZUZ0FGWFlBRmJ3QUZnRUFGa1VBRmx3QUZuTUFGbzRBRnFZQUZzd0FGdXdBRndVQUZ4c0FGemNBRjA4QUYzVUFGNDBBRjY4QUYrc0FHQXNBR0NrQUdGY0FHSWtBR01ZQUdQZ0FHVE1BR1hNQUdnRUFHc3NBR3V3QUd3OEFHekVBRzFzQUc0d0FHN2dBRzhrQUc5MEFIR1FBSEhVQUhJWUFISndBSExJQUhVWUFIWFFBSGNrQUhmTUFIaUlBSGs4QUhsZ0FIbUVBSG1vQUhuSUFIcWtBSHZBQUh2Y0FIM2dBSDdBQUgrNEFIL1lBSUVvQUlGSUFJSjhBSU9jQUlVb0FJVTBBSVZZQUlhNEFJYmNBSWpRQUlwUUFJdG9BSXVJQUl1b0FJMlFBSTJ3QUkzVUFJN1lBSTc4QUkvWUFKREVBSkRvQUpHOEFKTEVBSkxvQUpPd0FKUjhBSlZFQUpWTUFKY1VBSmpJQUprMEFKbWtBSnA0QUpzZ0FKdmNBSng4QUowTUFKMlVBSjVrQUo3c0FKL0VBS0RjQUtGa0FLSFVBS0xrQUtOVUFLUGNBS1RJQUtWWUFLWHNBS2EwQUtrOEFLbGNBS3JvQUtzY0FLdGtBS3VrQUt2d0FLenNBSzlzQUsvUUFMQTRBTEIwQUxDd0FMRUVBTEZnQUxIb0FMSmNBTExFQUxSQUFMU2tBTFRnQUxWNEFMVzRBTFlNQUxiSUFMYzRBTGVVQUxoRUFMbFFBTHFNQUx1c0FMMDRBTDR3QUw5c0FNRWdBTUg0QU1Mc0FNTU1BTVBnQU1STUFNUzBBTVVzQU1WOEFNWFlBTWNvQU1jd0FNZW9BTWhJQU1pd0FNa29BTW1BQU1vSUFNcXdBTXRJQU15MEFNMG9BTTNVQU01Z0FNNzBBTStFQU5CTUFORHNBTklvQU5LZ0FOTkFBTk9vQU5Rd0FOU1lBTlZFQU5XOEFOWklBTmNRQU5lWUFOZ2dBTmhrQU5pb0FOa0lBTmxjQU5uY0FOcE1BTnEwQU5yNEFOdFFBTnVZQU53Y0FOeGtBTnpJQU4ySUFOM29BTjQwQU41QUFONWNBTjlZQU45MEFPQlVBT0ZrQU9Pa0FPWElBT1pNQU9ia0FPZDRBT2dZQU9qc0FPbU1BT25ZQU9vMEFPd2dBT3hzQU96SUFPMDBBTzJrQU83c0FQR1VBUEtzQVBRb0FQVGdBUFc4QVBhRUFQZEFBUGRjQVBkOEFQZ2NBUGtBQVBuY0FQck1BUHJzQVB4WUFQME1BUDI0QVA4WUFRQXdBUUdVQVFLd0FRTjRBUVRJQVFUVUFRVDBBUVpRQVFac0FRZTBBUWxZQVFwb0FRcVVBUXJJQVF4OEFReWtBUXprQVE0Z0FRODRBUkJVQVJHc0FSSHNBUklvQVJOd0FST1FBUlJVQVJVY0FSWUlBUmdFQVJuc0FSbjBBUnRNQVJ6NEFSNXdBUitVQVNGZ0FTTGdBU1RVQVNhTUFTbm9BU3JrQVN0OEFTdTRBU3dBQVN4Z0FTeUFBU3pRQVMwVUFTMU1BUzJVQVM5Y0FUQmdBVERVQVRFUUFURTBBVEdVQVRHMEFUSUVBVEpNQVRLRUFUS29BVFIwQVRXTUFUWmtBVGFnQVRic0FUZFFBVGQ0QVRmSUFUZ1VBVGhNQVRpWUFUbkFBVHAwQVRxd0FUcllBVHM4QVR0a0FUdTBBVHdFQVR3OEFUeGtBVDFzQVQ0RUFUOVVBVUU4QVVJUUFVT2dBVVU4QVVYQUFVZTBBVWtZQVVsQUFVbUFBVW5RQVVwRUFVclFBVXM0QVV2c0FVeW9BVTA0QVUzRUFVNVlBVTZZQVU3Y0FVOEVBVTlBQVUrSUFVKzRBVS9zQVZBVUFWQlVBVkNVQVZEc0FWRkFBVkZNQVZGWUFWRmtBVkdrQVZHd0FWSHdBVkg4QVZJc0FWSzBBVkw4QVZNOEFWT0FBVlBZQVZRNEFWU0VBVlRVQVZVVUFWVlVBVldzQVZZQUFWWU1BVllZQVZab0FWWjBBVmFBQVZiRUFWY01BVmRrQVZmRUFWZ1FBVmhnQVZpa0FWakVBVmtZQVZsZ0FWdUVBVnpVQVY4Y0FXSWtBV004QVdWRUFXZFlBV29vQVd5UUFXK2tBVy9NQVcvMEFYRkVBWEYwQVhHd0FYSUlBWEpJQVhLSUFYSzBBWExnQVhNUUFYTThBWE5vQVhPVUFYUEFBWFB3QVhRZ0FYUllBWFNFQVhVWUFYVnNBWFhBQVhZUUFYWThBWFo0QVhiUUFYY01BWGRNQVhkNEFYZWtBWGZVQVhnQUFYZ29BWGhRQVhoNEFYaW9BWGpZQVhrUUFYazhBWGxvQVhtZ0FYbndBWG9zQVhyQUFYcmtBWHNJQVhzOEFYdGdBWHVRQVh1OEFYdm9BWHdRQVh3NEFYeG9BWHlRQVh6QUFYMHNBWDJFQVgzQUFYNE1BWDQ0QVg1a0FYNlVBWDdBQVg3c0FYOFlBWDlFQVg5MEFYK2tBWC9jQVlBSUFZQVFBWUFjQVlHa0FZT0FBWVVjQVlZd0FZaEVBWW5ZQVl2VUFZemNBWTFnQVk2b0FaQW9BWkVjQVpNVUFaU0FBWlZFQVphWUFaZjhBWm44QVp1c0FaeW9BWjRBQVo4TUFhQ29BYU1RQWFTZ0FhWHdBYVg0QWFlMEFha1FBYXI4QWFzZ0FhelVBYS9rQWJHY0FiS0FBYlBrQWJUa0FiVXdBYmRvQWJqa0FiandBYnB3QWJ2Y0FiMFFBYjdjQWNBOEFjSUFBY01NQWNTc0FjYmNBY2hzQWNtNEFjcEVBY3JNQWN1d0FjNXNBZEVrQWRNUUFkUlFBZGFRQWRqNEFkd2NBZDNVQWVDd0FlS3dBZVRzQWVkc0FlblVBZXU0QWU2OEFmRVlBZk5rQWZWUUFmZGdBZmxBQWZyY0FmMEVBZis4QWYvSUFmL1VBZi9nQWYvc0FmLzBBZ0FBQWdBTUFnRmNBZ0xZQWdRVUFnVVlBZ2FBQWdkWUFnaGdBZ21jQWdya0FnMk1BZzdzQWc5MEFnKzBBaENBQWhEb0FoRVlBaEZRQWhIY0FoSnNBaE1VQWhPNEFoUndBaFQwQWhYQUFoWHdBaFpFQWhha0FoaUVBaGlNQWhwUUFoeWNBaDA4QWgxZ0FoMjBBaDdRQWgvY0FpRzBBaVBJQWlTUUFpVjhBaVpFQWljc0FpZndBaWpRQWltVUFpcDRBaXJJQWlzOEFpeVVBaTFNQWkxb0FpMndBaTNjQWk0MEFpNklBaThjQWk5TUFpK29BaS80QWpFWUFqSFVBak0wQWpRQUFqUkFBalNrQWpUTUFqVUlBaldZQWpZY0FqWjRBamFFQWpiRUFqY0FBamM0QWpkMEFqZTBBamY0QWpnMEFqaVVBampnQWpqc0Fqa3dBamw0QWptNEFqb0FBanBnQWpxMEFqcnNBanRrQWp1WUFqdllBandJQWp4RUFqeUVBanpFQWowa0FqMkVBajNBQWozb0FqNFlBajVNQWo2RUFqNjhBajhBQWo4b0FqOWdBaitvQWovb0FrQW9Ba0JrQWtDb0FrRGNBa0VzQWtHY0FrSE1Ba0g0QWtJOEFrSndBa0trQWtMMEFrTmNBa09ZQWtSa0FrU01Ba1ZjQWtXRUFrWUFBa1pnQWtiWUFrZFVBa2VVQWtmWUFrZ1lBa2hjQWtpZ0FrbUVBa29FQWtxMEFrcmtBa3U0QWt2d0FrelVBazBzQWsxd0FrNFFBazZZQWs4RUFrOE1BazhZQWs4d0FrODhBazlJQWsrUUFsR01BbEc4QWxMNEFsUkFBbFJJQWxWTUFsZjRBbGhFQWxtVUFsbWNBbHE0QWxyQUFscmtBbDM4QWw0RUFtQjRBbURNQW1GSUFtS0FBbUxjQW1Nb0FtT1lBbVFNQW1Sc0FtVmtBbVhZQW1Ya0FtZ2tBbW1RQW11QUFtdU1BbXo4QW0wSUFtNmNBbTdnQW5Eb0FuSllBbkpnQW5Pd0FuWGtBblgwQW5lOEFubG9BbnJvQW52UUFueElBbjZjQW9DSUFvTFFBb0xjQW9Sa0FvU0FBb1NnQW9UQUFvVVVBb1dnQW9YQUFvWk1Bb2NNQW9jc0FvZTBBb2s0QW92Y0FvMHdBbzdBQXBBY0FwRjRBcEhzQXBJY0FwSk1BcEtRQXBNMEFwTjhBcFBBQXBRVUFwUk1BcFNZQXBVRUFwYmdBcGJvQXBiMEFwa3NBcGs0QXBvTUFwckFBcHJNQXB1Z0FwdXNBcHlvQXB5d0FwejRBcDFFQXA2RUFwNk1BcDYwQXA2OEFwN0lBcUhJQXFIUUFxTVVBcVFRQXFVQUFxWU1BcWdJQXFwZ0FxdTBBcTFzQXEvQUFyR1lBckc4QXJNY0FyVk1BclZ3QXJkWUFyZUlBcmU0QXJnb0FyZzBBcnBBQXJ6d0FyOU1Bcjl3QXIrVUFzQ0VBc0lFQXNVTUFzVVVBc2FZQXNlUUFzallBc3BVQXN0a0FzMkVBdEFvQXRJSUF0UFlBdFA4QXRWd0F0ZmNBdGxBQXRyY0F0c01BdHc0QXR6b0F0NVFBdC80QXVIVUF1S0lBdU1JQXVNUUF1UHNBdVFJQXVSa0F1WlVBdWdRQXVnY0F1b3NBdXBZQXVya0F1dVVBdXZZQXV4WUF1Mk1BdTZBQXZBVUF2RUVBdkU0QXZJMEF2TFVBdkw0QXZSWUF2U0VBdmQwQXZkOEF2Z2tBdmtzQXZuWUF2cUFBdnhjQXYzd0F2OE1Bd0RVQXdLVUF3U0FBd1M4QXdWRUF3ZWNBd2U4QXdsRUF3bUFBd25vQXdwVUF3cllBd3hzQXc1QUF3NzRBeEJBQXhDWUF4SElBeEtnQXhVZ0F4VW9BeGFNQXhkMEF4ajhBeHFjQXh2UUF4MW9BeDlNQXlDb0F5SklBeU13QXlSSUF5WWtBeWVrQXlnOEF5ajRBeWs4QXluNEF5b3dBeXEwQXlxOEF5czBBeXVrQXl1c0F5elVBeTBRQXk4UUF6SWNBekpjQXpLZ0F6TU1Bek5jQXpPd0F6WVlBemtnQXp1d0F6dlVBenhzQXoyQUF6NUlBejhJQXo4b0F6OHdBejlVQXovRUF6L1FBMENvQTBEOEEwRUlBMEVVQTBFZ0EwRW9BMEZZQTBGa0EwRndBMEhJQTBIUUEwTzBBMFBBQTBRRUEwUU1BMFFZQTBVY0EwVW9BMFV3QTBVOEEwVklBMFY4QTBXMEEwWG9BMGJvQTBlZ0EwZ0FBMGhFQTBrc0Ewb01BMHNFQTB1NEEwemtBMDJNQTAzQUEwNklBMDdBQTA4c0ExQXNBMURvQTFGTUExSXNBMU5FQTFOTUExVFlBMVVRQTFWWUExV1FBMVhnQTFhVUExYWNBMWM0QTFmUUExZjBBMWdVQTFnNEExa2tBMXBvQTFxVUExdklBMTBrQTExVUExMTBBMTJ3QTEzVUExOE1BMkJrQTJDUUEyRzRBMk1rQTJPWUEyUW9BMlNrQTJVY0EyV0lBMmZJQTJnNEEyalFBMnNjQTJ6WUEyejhBMjZNQTI2d0EyN1FBMjd3QTIrWUEzQVFBM0MwQTNHMEEzSTRBM0xZQTNOd0EzUk1BM1J3QTNZOEEzYUFBM2RzQTNmQUEzaXdBM21jQTNyTUEzdXdBMzBvQTMxTUEzODBBMzlZQTM5OEE0QUFBNENjQTRFRUE0R1FBNElRQTRLSUE0THdBNE5ZQTRQUUE0UThBNFRRQTRWY0E0WE1BNFl3QTRhc0E0Y1lBNGUwQTRnZ0E0aWtBNG1RQTRvVUE0cVVBNHN3QTR2Y0E0eThBNDFvQTQ1RUE0OG9BNUVnQTVRc0E1Uk1BNVVNQTVYWUE1YWtBNWVFQTVoY0E1aTBBNWtZQTVzVUE1dDRBNXZRQTV4SUE1eThBNTEwQTU3TUE1OThBNkJzQTZFc0E2SG9BNklNQTZJc0E2SlFBNkxzQTZNY0E2UFlBNlAwQTZZWUE2Wk1BNmJjQTZlUUE2aGtBNmtBQTZtNEE2cEFBNnJrQTZyd0E2c1FBNndJQTZ3c0E2MUFBNjVnQTY4SUE2OG9BNjlJQTdFc0E3Rk1BN0ZzQTdGMEE3R1lBN0wwQTdSTUE3UndBN1hJQTdkTUE3ZHdBN2hRQTdrMEE3b1VBN29jQTd2TUE3MXdBNzJRQTcyWUE3MmtBNzVBQTc1TUE3NVlBNzVrQThBc0E4QTRBOEJBQThGd0E4RjhBOEdJQThOUUE4T29BOFVFQThVTUE4WlFBOFpZQThaa0E4bG9BOGx3QTh2a0E4MzBBODZjQTg2a0E4OFVBOUJFQTlIMEE5Vk1BOVpVQTlkRUE5aVlBOXA4QTlzNEE5eThBOTVJQTk3UUErQzBBK0lVQStNNEErUmtBK1pFQStnc0EraHdBK2k0QStqb0Era29BK2w0QSttc0Erb0FBK3BVQStxb0ErdUlBK3hzQSsxY0ErNUlBKy9nQS9GOEEvR2NBL09FQS9PTUEvT1lBL1cwQS9YQUEvYWNBL2RnQS9kc0EvaGNBL2hvQS9tZ0EvbXNBL200QS9vUUEvdGNBL3RrQS91SUEvdVFBL3VjQS82d0EvNjRCQUFNQkFGd0JBSU1CQU1NQkFUNEJBY1lCQWhnQkFvZ0JBeFVCQTVvQkE2TUJBL1FCQkhZQkJIOEJCUGNCQlFnQkJRc0JCVFVCQlRnQkJiY0JCbG9CQnQ0QkJ1Y0JCdkFCQnlVQkI1QUJDRk1CQ0ZVQkNLUUJDT01CQ1RzQkNZa0JDY3NCQ25JQkN4d0JDNFlCQy9JQkMvVUJERjhCRFB3QkRYc0JEZFFCRGRjQkRpQUJEbEFCRGxJQkRxVUJEeDRCRDBzQkQyNEJEM0FCRDVZQkQ1MnZpNzM0emIwQjI4ZjMvTWNEMnhiNGRQa3gvSFFHOTRUN3NoWDdLUGVBQmZlOEJxdjhueFg3S2ZlRDl5bjNnZ1g3L1B4eEZmaHhCL2NxKzRJRit3cjdzUlgzS1BlQTl5ajdnQVVPL0FjT1FoMzRLUGR6aGdwUUhhYjNPZ3I0SHdwQ0NnNzFpL2N4SGZmVjl3RVRYUGNlOTlZVkU1d3FpelAzRkFvVFhHTDNxQWZnQ2hOc0xRcnFaaFd3QnhOYzVOTWRFMno0SFFvT0lRb09jb3NsQ3Y4QkQ0QUE5eU1LOXkvSFhibWgvd0JMZ0FBVDFRQnZDdmV3dEFjdWxnV0ozWXZnN2hvVDFnRDNMd1lUMVFDWkl3VzU5NHBkQmhQV0FIMHNCZnN2dmdvVDFZRDNmd1lUNVlDaCt4TUZ4QVlUMVlDRTkwVUYvSVlHRTgwQUxRb093Z3IzOVFvVDNQanc0eFVUdlBkTUNoUGNNQW9POTAzM09SMFM5eDdxOTlmcEUzYjNQQW9UdHZnZUhkMkwzL0VhOTljR0UzYWxDaE51MjZBSzVwVUZFM2EwKzY0dENnNzdmZmVqSGZjZTZnTXFDZzZMSFE3S2k3bGQ5QjMzSHViM1VQZDZFMmpqQ3JRSExKWUZpY21MeU1FYTd2Y0xCUk9vOXpQN3ZUbUJCUk5vWXZlVkJ4T2M5KzBLRTJ5MCszb0hFMXozengwVGFPS0w0WTNnSHVxV0JiVDdyaTBLRG9PTGx3cjNlZUFUWFBkL0hST2M5MHdkRTF6NE1nb1RQUGVaQ2hOY2Nnb085Nzczb3gzM0ZiLzRmb1lkRG9NZER2Y0hIZmdmQ3ZnZTl3SUQ5ekFnQ3J3S0h3NW9Ddkw3Yk1QM0tMcGV1UGpydmZlOUN2Y202ZmN1OXdJVHZ2aUkrMndWdEx1Vm9hMGZnSzhGZ210eGlIY2JFOTQ0VjhEcWlCLzNINkQzRWZjUzkxd2F2QXI3TC9zcyt4YjdieDRUdnZ0Zjl3djdDL2NjZEI3N0FOSXA5eE1lKyt6NHV4WDNLc2IzS2ZjZjl4L0UreW43S3ZzclV2c3AreC83SDFEM0tmY3JIZzY2Z1pzZEV2Y2U2dmQvN2hOdWZRb1RybHdLRTNZdENoTnV0UW9PTC9jNkNnSEEzL2VPS2gwT2k0dmpIZmN2NmZjdjF4UWNFN3h2SFJQYzk1a2RFN3ozZmgwVDNQZXRDaE84NngwT09SME8wWmwyK1FhOS8vL09nQUQzK2gyT0hSS2ErUjc3ZS9kN0U2VDMxNFFWdHdZVGl2ZG4rUVBpbHdVVG9yVDdld2NUd2w0SDVJSDdOL3h6QlJPayt6ejRkT3VVQmJqN3BRY1RsR0lIMW9JRkRrWWREcmVMdVYxTkNsMjVZclFTbGZkNSszbjVDZnVQOTNrVFVwVVdFMVQzZWJRR1BaYjNKL2Q4OXlEN2ZDK0FCV0wzcndjVG9iUUhOWlg3VVBmTTl6ajNrdU9XQlJOUnRQdDVCeE5KWWdmZ2Yvc1orMmdGRTFUN0ZQZHE0NVVGdFB1dFlnZjNaeDFNSFE2bUNnN2JIZmRTQ2hPNExCMFRlQ0FkRTdTRkhSTjQ5d01LRG5CK3hGWEhaUGVVQ2hMMjNEcmY5NC9sRXh0QXFSWVRLMEQzS29FRkU0MUFrODRGVmJhN2U3b2I5d25rOFBjdTl5ODM1aUZVV0hOV1d4LzNSdmZuQ2hOTFFQZ2xIZnhMQi9kTkNoTWJRRUI5QlJPS3dQZXNreFZtWXB1eVloLzNwZ2U0d2JLWXFodld2MGI3RlBzVlRrNUVIdzczdFFvQnRlTklIUTVtZnZkYkNoSzQ1ZmVQM3pyY0U0dUE0Z29USzREM21mdUpGUk1iZ1BjdmxRVVRUWUQzaEIwVGkwREJDZzdNSFJQMEpSMFQ3RUFLRHZ1T2kvZnVDaFBZOXduM1poWDNYaDFuOTVhdkJ6SDNEZ3I0RVFvVDFQc2U5N0VLcDNVWTkwY0tFN1QzM0FvSUU3ZzNnQVVUMkYvZUJ3N1BIZmRESFJQVkVHNGRFOVNvOXgwZEU3Um85dzBLRTlVUXJCMFQyR2g1SFJQU3FNb0hFOVNvZkpVRkU5aW8rRHNLRTlTb21nb09zUW9PeHgzNzIvdU43ZmtKZDZsMzl4YjNGQkxnOXh2N0Fkd1R1UGU1Q2hQVTl5RWRCUk8wZkpYN0s3RWREbEtMci9na3N2ZVU5NlVLMyszM2ZCUGM5d0FkRSt6M3BoMFQzSDJUQlE3N3hvdXYrVXYzcFFyZkU3QlRIUlBROTZZZEU3Qjlrd1VPOTcyTDl4NGQ5MnZmOTJ6ZkU5ejMwQjBUdklQYkJSUGNWQjBPall2M0hoMzNiOThUMlBjTENoTzRnOXdGRTlnbkNnNzNHQjBCdU9yM29lb0RKaDBPZHZmd0NvRjNFdmNKM1RuZzk0cmxFK2IzUVIwVDZ2ZHVIUlBtVmxoMFdGd2ZFOWFGeXdVVDVueVYreUJwSFE1Yys0T3UrQUFLT3R3VDdQY2I5MzRWOXh6THlOV3RybjVodXg3N29RZGVaR3A1WHhzN1VNYjNGeC8zNS91WkZmZ0dCeFBjanZjYkJSUHFlNVZIUmdXL1gxMmNXeHY3Q3pBayt5MzdKdDBvOXc3R3VhUENzaDh1QjFhS1ZJcFZIaTk4QldnSEUrejNsYTRHTzVrRmlzS0t3Y0VhRHZ0SmkvZTFIZmVjSFJPdzlBb1QwSDhLRTdDQTl3b0ZFOUNZSFE3N1B2Y2xIUUhCMi9kSTNBTXRIUTc3cTM2LytCUEFWc0lTNS9kL0NoUFE5MUlkRThqM2Znb1RzUGQxSFJQUWx4ME9SQW9PS0pwMitFNnlFb3Y0aFB0UzkxSVQ0UGVyaFJVVDBQYzIrRUhDbUFXeSsxSmtCOTE5K3dUNzFmc085OWJqbUFXeSs0WmtCOEdCOTByOFJBVU85OUFLWkFvT3pSM0tDaEtMK0pUN1Z6b0tEdmNBQ2c1Q0hmZ2MrVlFySGFuOFhJWUtRaDMzbWZsVUpCMzNJL3gxaGdwQ0hmZnMrYkE0SFVUOFhvWUt4NHRPQ3ZndWQ5REZvc2I0QXgzN2Vma2NFM21RRmhONlF3b1R1YlFIaHdvVGZzUUs5eWI1U1Y0S0UzazNIUk45blhSMW0yY2JFMzVPYTFnOWZ4OFRlZmVXL0dxR0NzZUxUZ3I0TG5mbDl3TDRBeDFEOWdvVGU1QVdFMzFEQ2hPN3RBZUhDaE45eEFvVGUvZHIrVk1qQ21uOGRJWUt4NHRPQ3ZndWQvUEtheDMzUlBsaEZmZkN5dnZDQnZkNC9NR0dDc2VMVGdyNExuZk95R3NkOTA3NXV6MEs5MC84NTRZS3g0dE9Ddmd1ZDlqSGF4MzMyZmxHRmVlMnp2ZGVDbXRQRzA5bnEvZnpIVWpuRzNEM0RSV2xkOW5iQmFHaGo1bWFHcDE1bVhwNmZINXRmUjdFL1VTR0NzZjNCUjNXVGdyNExuZk95UGdESGFmM0doTTlrQllUUDBNS0UxMjBCNGNLRXovRUN2ZE8rYnM5Q2hPOTl2NjZJZ3JiK0dlR0NzZUxUZ3I0TG5mWXgyc2Q5OW41UmhYbnR2VUtYWHBuYTA4YlQyU3J1SHdmYllINEtRcW05dzBWV3U4RnFYMThtSG9iZW5sOWVYeVBmYUYxSDlrN0Jkbjh6SVlLeDR1MFlrNEsrR2ZJOXhiTytBTWQ5dzI4RTV1UUZ2ZEZDaE9meEFyM3h2bWo5eGtLOTFUODhZWUt4NHRPQ3ZndWQ5akgxUGdqSFJOOGdKQVdFMzBBUXdvVHZJQzBCNGNLRTNzQXhBcjNOdm5WbmgwVGZJQllIUk42Z0pmM2RoMFRld0QzUUIwVGZJRDNDZ3JhL0dlR0NzZUxUZ3I0TG5mV3dXc2Q5MmI1ei9mVkN0cjhtNFlLUWgzM1dQazNYQjEwL01PR0NzZjNCUjNXVGdyNExuZjRBeDJtOXhvVHVwQVdFNzVEQ2hQYXRBZUhDaE8reEFyMzdQbXdPQjBUdXZzcy9qRWlDdHo0WjRZS1FoMzRXdmszWUFyM3Bmek9oZ3JIaTdSaVRncjVBTTc0QXgzM21QY1pIZmRZK1RjNUNwWUthL3k5aGdySGkwNEsrQzUzOTF6NEl4MFRlWkFXRTNwRENoTzV0QWVIQ2hOMnhBcjNWZmt3d2gwVGVWZ2RFM1dYOTNZZEUzYjNRQjBUZWZlRy9PeUdDc2YzQlIzV1RncjRMbmY0QXgybTl4b1R1cEFXRTc1RENoUGF0QWVIQ2hPK3hBb1R1dmZYKzRnaUN0ejRaNFlLeDR1MFlrNEsrTHZPK0FNZDl3ejNHUjMzeGZrNEZUSUs5d0Q4ZUlZS3g0dE9Ddmd1ZDgrdTl3V3crQU1kamJmenR4TjlnSkFXRTM2QVF3b1R2WUMwQjRjS0UzNkF4QW9UZllEMzIvazlGYTRkMlB5Qmhnckg5LzBLVGdyNExuZjRBeDMzYThzVHZ2ZnNDc0w3T0NsL0JXTDNKd2RmYldoWlZ4cVFDdmY2Q2gvbkJoUGV0QWVIQ2hPK3hBcjRLUGR6aGdyM0ZSMFRLRnlRRnZnR0NoT0lYRVdLU29wTUhqYUJCUk1vWFdMNGt3Y1RHRjJTOTBZRlVRWVRMRjMzYUIwVEtGNzNmZ1lUS2g2aCt4TUZ4UVlUS0Y2RTkwVUYvTEVHRXlnODk3Z0tFeWtjOXovMzBnV1NCZzZtKzNDdzl6eTlXN3Y0NjczM3ZRcjNsTWtUM1BnYnJoWDdIU256OTFqM1YvY0E4L2NhcTYyRWQ2OGZuL3NJQmNrR2gvY2xCYkpJUkpSVUcvdFcreVQ3Si90ZUh4TzgrMWIzRGZzZjkwdDhIdmQyQ2g4VDNMdGlwVmlUSHBHMkJkRFFtYTNKSDQvM0pRVk5CbmY3Q0FWNFpHR0RaUnNPcHZjNkN2Z2ZDa0lLUlBsYUpCME9wdmM2Q3JqQitCOEtRZ3I3RFBuVjk5VUtEcWIzT2dyNEh3cENDby81eVRnZERxYjNPZ3EvOXhUNEh3cjNLUGNhUWdwMytWRVZZaDM0QmgzL0FqK0FBSTRLeDhIMzZ4MzMxZmNCRTFiM0h2ZldGUk9XS29zejl4UUtFMVppOTZnSDRBb1RaaTBLNm1ZVnNBY1RWdVRUSFJObStCMEtpdmkyRlhOMkJSTmVRQjJ5SGZYM0JSM1c5ekVkcmZjYTl5MzNBUk10OXg3MzFoVVRUU3FMTS9jVUNoTXRZdmVvQitBS0V6VXRDdXBtRmJBSEV5M2sweDBUTmZnZENoT3Y4UHloSkFyMTk3Y0s5ekVkZ1BlYTBmY0JFNjMzSHZmV0ZSUE5Lb3N6OXhRS0U2MWk5NmdINEFvVHRTMEs2bVlWc0FjVHJlVFRIUk8xK0IwS0U2dUEvSWFJSFNFSzkzcjRGaXNkRGlFSzl4ejRGaVFkRGlFSzkzRDRoVGdkRG9vc0NzZkJXaDBUVk1EM0h2ZktGUk9Vd0VrZEUxVFFZdmlhQnhNMDBKTDNSZ1ZTQmhOVTBDZ2RFMVRnOTM4R0UxamdvZnNUQmNRR0UxVGdoUGRGQmZ5R0JoTlR3QzBLNHZpUjk5VUtEb29zQ3RiM0F2ZnJIVDMyQ2lkT0hSTlVrUGNlOThvVkU1U1FTUjBUVkpSaStKb0hFelNVa3ZkR0JWSUdFMVNVS0IwVFZKajNmd1lUV0ppaCt4TUZ4QVlUVkppRTkwVUYvSVlHRTFLUUxRb1RWV0RXK0JVakNnNktMQXJreXFvZHYvZ2p3QjJLTEFyTzl4VDM2eDJxOXhxSFRoMFRWS0QzSHZmS0ZST1VvRWtkRTFTb1l2aWFCeE0wcUpMM1JnVlNCaE5VcUNnZEUxU3c5MzhHRTFpd29mc1RCY1FHRTFTd2hQZEZCZnlHQmhOVHdDMEs5MVg0RFJWaUhZcjMvUXJRQ3ZlZzl5TUs5eURMWUU0ZEV6VkE5eDczeWhVVFZVQkpIUk8xa0dMNExBZGZiV2haVnhxUUN2ZjZDaC9ZQnBMM1JnVlNCblg3RkFYN2t3YUozb3ZnN3hvVE5VRDNLQWFZTFFXNTk0QmRCbjBzQmZzbnZnb1ROV0QzZndZVE9XQ2greE1GeEFZVE5XQ0U5MFVGL0lZR0V6TkFMUW9PaWl3S3ljaXFIYlA0aHowS0RpRUt3L2Y1WEIwT2lncjNjUGlGT0IzN0wvNUVKQW9oQ3ZmTjkvbGdDZzZLTEFyM2E4NzM2eDMzTmJtcC93QkxnQUQ0TUFxOFh2OEFTNEFBRTFUUTl4NzN5aFVUbE5CSkhSTlV5R0w0bWdjVE5NaVM5MFlGVWdZVFZNZ29IUk5VNFBkL0JoTlk0S0g3RXdYRUJoTlU0SVQzUlFYOGhnWVRVOUF0Q3NMMytUa0s5d2dLaWl3SzkwM0JnOEcxSFJOUzRDMEt2L2Z5d2gwVFZXQllIUk5VNEpmM2RoMFRVdUQzNmdxS0N2ZFkvTVlrQ29vc0N2Y216dmZySGZjR3ZJbE9IUk5Vb1BjZTk4b1ZFNVNnU1IwVFZLaGkrSm9IRXpTb2t2ZEdCVklHRTFTb0tCMFRWTEQzZndZVFdMQ2greE1GeEFZVFZMQ0U5MFVGL0lZR0UxUEFMUXIzT2ZmNkZmY3FIWW9zQ3NIRm9zYTFIUk5UNEMwS2ovZ0xYZ29UVldBM0hSTlY0SjEwZFp0bkd4TlQ0RTVyV0QxL0h3N0NDcnJJOS9VS0U5NzQ4T01WRTc3M1RBb1QzakFLL0FMNXdqMEtEc0lLdi9jVTk3MEs5em4zR3NMcEU5WDQ4T01WRTdYM1RBb1QzekFLKzJ6NVNCVmlIY0lLOTcwSzkxVHZ5ZWtUMnZqdzR4VVR1dmRNQ2hQZU1BcjdNUHMxS0FyQ0NyakI5L1VLRTliNDhPTVZFN2IzVEFvVDNqQUsrK0Q1elBmVkNnN0NDdmYxQ2hQYytQRGpGUk84OTB3S0U5d3dDdnRkK2NBNEhRN0NDdFhLOS9VS0U5NzQ4T01WRTc3M1RBb1QzakFLL0FYNVhzQWR3Z3F5eGFMRzkvVUtFOXY0OE9NVkU3djNUQW9UM3pBSy9DTDVSbDRLRTlzM0hSUGZyd3IzVEl1NVhTVUsvd0Q4Z0FDNjl3eTUvd0J1Z0FEaUhmY2Q3Q3ZxOTlicUxla1RlVUQzZmZmOEZhNkxyNjRhOTljR2FJdG5hQnA5KzljSExHZUlDdmV1QnhPNVFQZ2VIZG1MMitVYTk5Y0dFM2xBTUlzN2lUOGVMNEFGWXZldXRBY3YxeDJ2aTYrdUd2Y0J1ZnNCQm95dWk2K01yZWVXR0xRSEUzbUErNjVpQnVlQWpHaUxhSXhvR2Z2WEJoTjFRSXl1aTYrTXJ1YVZHQk42UVBmOUhlZUFqR2lMYUl4b0dmc0FYUVlUZVVEM0FBWm5pMmhuR2c3M1RmdDN6ZmMxcmdvUzl4N3FsTi8zZXVrVHVvQnZDZ2NUdTREM3JnWVQyNEMwQnhQYWdEQ1ZCWW5kaTkveEd2ZlhCaE82Z0tVS0U3YUEyNkFLNXBVRkU3cUF0UHV1TFFvVHU0RHovRW9WV0FvTzkwMzNPUjBTOXg3cTk5ZnBFM2IzUEFvVHR2Z2VIZDJMMy9FYTk5Y0dFM2FsQ2hOdTI2QUs1cFVGRTNhMCs2NHRDdmVsK0lVNEhRNzNUZmNGSGRhdUNoTDNIdXJvOXhycjZSTTZnUGM4Q2hOYWdQZ2VIZDJMMy9FYTk5Y0dFenFBcFFvVE5vRGJvQXJtbFFVVHU0QzArNjR0Q3ZlVC9NWWtDdnQ5OTZNZDl4N3FBeW9LOXdiNEZpc2REdnQ5OTZNZDl4N3FBeW9LK0JZRW5YSzFvYldpdGFJWnNhQ1htNTBhbjNxWmRucDZnVzl2SG10dGJHeHNhZ2dPKzMzM294MzNIdW9ES2dyTCtJVTRIUTc3ZlVzZDF2Y0NFcHYzQjVMcWt2Y0hFOGdxQ2hQMFMvZ1ZJd29PKzMxTEhlVEtBZmNlNmdNcUNpVDRJOEFkKzMxTEhjNzNGQkwzQy9jYSt3ZnFFOGdxQ2hQd3UvZ05GV0lkKzMzMy9RcE5DaEwzQXN0bjkvOGRFL0F2Z0FWaTl5VUhYMjFvV1ZjYWtBcjMrZ29mRTJqMHRBWTFIUTc3ZlVzZHg4RUI5eDdxQXlvS1IvaVI5OVVLRHZ0OTl3VWQxazBLRXZjTDl4cjdCK29UYUNvS0UvQzcvTVlrQ3Z0OVN4MzNKczczNngxMHZCUFFLZ29UNktmMytoWDNLaDM3ZlVzZHdjV2l4dmZySFJQb0tnb1QrUHNaK0F0ZUNoUG9OeDBUK0s4S2l4MzNQZmRQT0IwT3lvdTVYZlFkOXg3bTRPK085M29UYU9NS3RBY3NsZ1dKeVl2SXdScnU5d3NGRTZqM00vdTlPWUVGRTJoaTk1VUhFNXIzN1FvVGFyVDdlZ2NUV3ZmUEhSTnM0b3ZoamVBZTZwWUZ0UHV1TFFyM3FQeHdLQXFEaTVjSzkzbmdFMXozZngwVG5QZE1IUk5jK0RJS0V6ejNtUW9UWEhJS3UvZ1dKQjBPZzR1WEN2OEF4b0FBOStjZFZ1QVRYUGQvSFJPYzkwd2RFMXI0TWdvVE92ZVpDaE5hYnZzZUJmdDM5OG9kMzlJYTBQZzNDclQ3cjJJSDU0QUZFMXozVGgzMzZmZ1FzZ3FEaTVjS3F1L3Q0Qk5lOTM4ZEU1NzNUQjBUWHZneUNoTSs5NWtLRTE1eUN2ZDIvSEFvQ29PTDk2UWQ5dy8zSS84QXFJQUFKUXIzNngzM09mY2lQZUFUVGZkL0hST045MHdkRTAzNE1nb1RMZmVaQ2hOTmNnb1RYdmZmVzZrS0RvUDNCUjNXbHdxMTl4ckE0Qk12OTM4ZEUwLzNUQjBUTC9neUNoTWY5NWtLRXk5eUNoT3Y5MkQ4eGlRS2cvY0ZIZGIzcEIzL0FiS0FBQ1VLNU1yMzZ4MjE5eHJBNEJNdmdQZC9IUk5QZ1BkTUhSTXZnUGd5Q2hNZmdQZVpDaE12Z0hJS0U2K0E5MkQ4eGlJSys4WDZWY0FkZy9lM0NwY0thUGVhamVBVHJmZC9IUlBOOTB3ZEU2MzRNZ29UbmZlWkNoT3RjZ29UcXNmOHE0Z2RnNHVYQ3ZkNTRCTmMrQ0Q0WUJYN055NEYyZmZTSGVlVzk1c0tZZ2ZuOTVFZFlnY3RWZ1ZTQituQUJST2NSWXRGaVVZZUw0QUZFMXo0TWdvVFBQZVpDaE5jYnZzZUJmdDM5OG9kMzlJYW5nZjNOK2tGRHZlKzk2TWQ5eFcvK0g2R0hmZ0IrVW9rSFE3M3Z2Y0ZIZFpOQ2dIM0ZiLzNSL2NhOTBXR0hmZ1krNGdrQ29NZDk2UDVSaVFkRHZmT0hiM0I5N0VkRTZTQXNoWVRvb0QzaHJRR0U2U0E5NFlkRTFTQTZnb1RwUUMwKzRVSEU1VUFZZ2NUbElEM2h3b1RySUNrQ3ZkditjWDMxUW9PZ3gzNEFmbFVLeDBPOTg0ZHQ4V2l4dmV4SFJPcVFMSVdFNmxBOTRhMEJoT3FRUGVHSFJOYVFPb0tFNnFBdFB1RkJ4T2FnR0lIRTVwQTk0Y0tFNjVBcEFyM01may9YZ29UcWtBM0hST3VRSzhLOXowZHkrK1U5ekJZdmhPb2dMSVdFNlNBOTRhMEJoT29nUGVHSFJOWWdPb0tFNmtBdFB1RkJ4T1pBR0lIRTVpQTk0Y0tFNnFBcEFyNEt2c29LQXIzemgyNzl4VDNYd3FlOXhxZjl6Qll2aE9rUUxJV0U2SkE5NGEwQmhPa1FQZUdIUk5VUU9vS0U2U0F0UHVGQnhPVWdHSUhFNVJBOTRjS0U2MUFwQXIzM1BrNEZXSWQ5eGYzQlIzVzl4RUtyZmNha1Bjd1dMNFRWRUN5RmhOU1FQZUd0QVlUVkVEM2hoMFRMRURxQ2hOVWdMVDdoUWNUVElCaUJ4Tk1RUGVIQ2hQVlFLUUs5K3Y3aUNRSzl4ZjN0d3IzRVFwajk1cGE5ekJZdmhQVVFMSVdFOUpBOTRhMEJoUFVRUGVHSFJPc1FPb0tFOVNBdFB1RkJ4UE1nR0lIRTh4QTk0Y0tFOVZBcEFyM1h2dHRpQjMzQngzNEh3cjRIdmNDQS9jd0lBcThDaC9NeUNzZER2Y0hIZmdmQ3ZnZTl3SUQ5ekFnQ3J3S0gxeklKQjBPOXdjZHhNajRId3I0SHZjQ0EvY3dJQXE4Q2gvN0pQZE1QUW9POXdjZCtCOEsrQjczQWdQM01DQUt2QW9mblBkQU9CME85d2Nkc3NXaXh2ZTlDdmdlOXdJVDdQY3dJQXE4Q2g4VC9QdEl2VjRLRSt3M0hSUDhyd3IzQngzSDl3TDN2UXFuOWdxbTl3SVQwdmN3SUFxOENoOFQvdnNFeHlNS0R2Y0hIZFhLK0I4SytCNzNBZ1AzTUNBS3ZBb2YreXZWd0IzM0J4MzRId3I0SHZjQ0EvY3dJQXE4Q2g4cXVGWUs5d2NkdU1INEh3cjRIdmNDQS9jd0lBcThDaC83Qi9kTTk5VUtEdmNISGZnZkN2Z2U5d0lEOXpBZ0Nyd0tIL3NOcTF3ZER2TDNCUjNIOTFnZCtCOEs5eGIzR3ZjVzl3SUQ5ekFnQ3J3S0g1ejNRRGdkK3luK1JDUUs5d2NkK0I4SytCNzNBZ1AzTUNBS3ZBb2Y5eFNyWUFvTzl3Y2Q5MXpPOTcwSzkvMjhlL2NDRTlUM01DQUt2QW9mK3hhck9Rb1QrUGNJQ3ZjSEhmYyt3WVBCOTcwSytCNzNBaFBzOXpBZ0Nyd0tIL3NacEJYM0dNYjNHRkNicFBzWDZ2ZTJDaXdGRTl4ODl4YWVIUlBzV0IwVDNQZHRDdkwzQlIzSDkxZ2QrQjhLOXhiM0d2Y1c5d0lEOXpBZ0Nyd0tINHIrQ3lRSzl3Y2Q5eGZPK0I4SzkzSzg5dy8zQWdQM01DQUt2QW9mZDZ3Vjl5b2Q5d2NkOTcwSytCNzNBa3ZMRS9EM01DQUs5d05uNEZUR0h4UG93YU93dk00MkNtaDdkV2w5SGhQdzk5c0tEdmNISGZlOUN2Z2U5d0pMeXhQdzl6QWdDdmNEWitCVXhoOFQ2TUdqc0x6T05ncG9lM1ZwZlI0VDhQZmJDa2ZJSkIwTzh2Y0ZIY2YzV0IzM3ZRcjNGdmNhOXhiM0FrdkxFM1QzTUNBSzl3Tm40RlRHSHhOeXdhT3d2TTQyQ21oN2RXbDlIaE4wOTlzS0UveUsvZ3NrQ3ZjSEhmZTlDdmdlOXdKTHl4UHc5ekFnQ3ZjRForQlV4aDhUNk1HanNMek9OZ3BvZTNWcGZSNFQ4UGZiQ3MzSUt4ME85d2NkOXhmTzk3MEs5M0s4OXcvM0FrdkxFOXozTUNBSzl3Tm40RlRHSHhQYXdhT3d2TTQyQ21oN2RXbDlIaFBjOTlzS2Q2d1ZFL3ozS2gzM0J4Mnl4YUxHOTcwSytCNzNBa3ZMRSt6M01DQUs5d05uNEZUR0h4UHF3YU93dk00MkNtaDdkV2w5SGhQczk5c0tFL3o3VUwxZUNoUHNOeDBUL0s4SzhueTlhSGI1STcyUmQvZTlDdmdlOXdJVG5Qa2ErU1FWWWEwRkUyeE9RQVc1VlVpaVJ4djdML3NzK3hiN2J5ZW9QTGhSSDBZMnRta0ZFNnpMMmdWYnd0RnkwUnYzTC9jcjl4YjNjUEpzM0Z2RkgvdzkrNFlWOXlyRzl5bjNIOHE1YkZ5ckh2dk4vQk1GZWJ1RHhNUWE5MXI3d0JWS1c2eStheC8zemZnVUJaNVpsRkJRR3ZzclV2c3AreDhlRHZmaWZMMW92Vm4zUnZjZzVoMW92ZmU5Q3ZmUTZ2YzB1YXIvQUV1QUFQLy95SUFBL3dCTGdBQVRrOEQzTVBmakZmY3Z5L2NrOXo2cW9vbURwUjZOTTRzeU14cGFCektMTW9rMEhvTnhkWWxxRy9zOVMvY2w5eThmRXpYUStVYjdNUlVUVmRCMSt4UUYrNU1HaWQ2TDRPOGE5eWNHbUMwRnVmZUFYUVo5TEFYN0pyNEtFMVhnOTM4R0UxbmdvZnNUQmNRR0UxWGdoUGRGQmZ3Q0JoT1R3SlZXWDVCc0cvdEwreXo3RS90eSszUDNMUHNUOTBzZkUxWFFxN2FRbGNBZitCWUdFelhRa3ZkR0JRNjZnWnNkRXZjZTZ2ZC83aE51ZlFvVHJsd0tFM1l0Q2hOdXRRcTc5dzRrSFE2Nmdac2R4OEgzNngzM2YrNFRhMzBLRTZ0Y0NoTnpMUW9UYjdVS2J2ZUo5OVVLRHJxQm14MFM5eDdxMnUvRDdoTnRmUW9UclZ3S0UzVXRDaE52dFFyM1JmMXVLQXE2OXdVZHpKc2RFdmNlNnNmM0dyVHVFemVBZlFvVFY0QmNDaE03Z0MwS0U3ZUF0UXIzRWYzT0pBcTY5d1VkekpzZDVNcjM2eDNIOXhxMDdoTTN3SDBLRTFmQVhBb1RPOEF0Q2hPM3dMVUs5eEg5emlJSyswcjZWY0FkdXZ0RXl2S2JIUkwzSHVwNDk1cUQ3aE8yZ0gwS0U5YUFYQW9UdW9BdENoTzJnTFVLRTdVQWR2MnppQjB2OXpvS0FjRGY5NDRxSFgvNVdpUWREaS8zT2dxNHdRSEEzL2VPS2gwLytkWDMxUW9PTC90d3NQYzg5MWdkRXNEZjVyT215YW5nRS9yM2ZLNFZZRzJUbkd3ZmQvY0tCVTBHaGZzZ0JXMjUxSFRWRzRGRUJSUCtld29UK3BHNEJmY01sdHpROXdBYTZsakYreGUrSG1PYUJVT25ZckRKR3RYR3N0ZXFwSVY5cFI2Zyt3VUZ5QWFSOXhjRnEyQlZuMGdiK3hRcVJmc0hKZEJROG1NZnNuc0Y0R3F4YmtzYVBrNWZMUjRPTC9jNkNnSEEzOXJ2MGlvZDMvc3NLQW92OXpvS0FjRGY5NDRxSGNENXlUZ2REaS8zT2dxLzl4UUJ3Ti9MOXhxL0toMnYrVkVWWWgwdjl3VWR4L2RZSFFIQTM4WDNHc1VxSGFuN2dpUUs0WHk1YkNVSy93SkxnQUM5OStzZDl6VGU5d0RmRTN5M0Z2ZFVCb2p3aS9Qekd2Y0RCL2N2dThiM0VyU3Rob1N1SGp0bFgwZytHa1NzV2NoYkhxNXdCYlJyb0dsaEdoTzhUMkJlU0h0OGpwUjZIbm4zQ2dWWkJvWDdHUVZ2cTc1OHV4djNGTVRwM01wd3VrcS9IMmFvQldPcmRLWElHcytzdWMrcEhxVUhwMWxObTAwYiswVXpPZnROSHlBSEUzdzE5M1FLRG91TDk2SUt4OEVTbzlmM0wrbjNMOWNUcG04ZEU4YjNtUjBUcnZkK0hSUE85NjBLRTc3ckhVZjRrZmZWQ2c2TCszQ3c5MHZqSGI3M04xRHBnc254MXhQU0FQZVQ5K2dkTllrMkhoUFVBQ1dBQldJSEU5RUE5eGIzUmgzM0c3UUdFOUtBSmRjZDQ2QUs5eTBHRStLQTk1a2RFOXFBOTM0ZEUrb0E5NjBLRTlvQTZ4ME9pNHZqSGZjdjZTL3Y5eWZYRTZwdkhSUEs5NWtkRTdyM2ZoMFQydmV0Q2hPNjZ4MFRwdkg4Y0NnS2kvY0ZIZGJqSGZjYzl4cjdCK24zTDljVFUyOGRFMlAzbVIwVFcvZCtIUk5yOTYwS0UxdnJIUlBWdS96R0pBcUw5N2NLNHgzVTk1cjdTT24zTDljVDAyOGRFK1AzbVIwVDIvZCtIUlByOTYwS0U5dnJIUlBWT2Z5cmlCMDVIZmRwK0ZvckhRNDVIZmNCK0Zva0hRNDVIZmRLK01rNEhRNVVDczc0WXlNS0RsTUs1TXJrQ2hQR2dFY2RFNWFBWWdjMUNoT21nUGZyQitLV0JSUEhBTFQ3aEFjVGp3QmlCeE9PZ0hBS0U4YUE5eE1LbVBoeHdCMVRDc0N1OXdXdzkvNGQwcmZ6dDIvM0xWaStFOGZRUngwVGw5QmlCelVLRTZmUTkrc0g0cFlGRThlZ3RQdUVCeE9Qb0dJSEU0L1FjQW9UeDlEM0V3cjNPL2hORmE0ZERqa2R6UGhVVmdyM0QvdHd3L2NwK0JJSzl5REtxL2N0V0w0VDFvQ3krUWdWM29FRmpUYUxOVFFhK3dBSCswL3RPL2Nzbkp1Tmpac2VaV3h3WUZ3YVZMQnF4ckgzMVIyenBMTzlyUi9NdHJqVDl5RWFFOHlBOStvSDRwY0ZFK1VBdFB1RVlnY1Q1SUR4ZndYNzBnZjdSVkZLK3drcFM4SDNQeDdhQitHTDRZM2ZIdkdYOTVzS0J3NVRDc25JNUFvVHhvQkhIUk9XZ0dJSE5Rb1Rwb0QzNndmaWxnVVR4d0MwKzRRSEU0OEFZZ2NUam9Cd0NoUEdnUGNUQ3FMNDFUMEtEbE1LeDhIa0NoUENnRWNkRTVLQVlnYzFDaE9pZ1BmckIrS1dCUlBEQUxUN2hBY1Rpd0JpQnhPS2dIQUtFOEtBOXhNS3hmamZGWE4yQlJQR2dFQWRWQXFVK0pyM0RSMVRDdGIzQXBUQjkvNGRsUFlLK3dYM0xWaStFOEVRUngwVGtSQmlCelVLRTZFUTkrc0g0cFlGRThFZ3RQdUVCeE9KSUdJSEU0a1FjQW9Ud1JEM0V3b1R4Y0RPK0dNakN2dDI5NVlWYzNZRkU4TVFRQjFVQ3BUNG12Y0ZDbE1LMXZjQ3hjcjMvaDJVOWdyN0JmY3RXTDRUd3hCSEhST1RFR0lITlFvVG94RDM2d2ZpbGdVVHd5QzArNFFIRTRzZ1lnY1RpeEJ3Q2hQREVQY1RDaFBId003NFl5TUsrNXIzUE1BZDl3LzNCUjNIWmgzMy9oM2s5eHFYOXkxWXZoTmlRRWNkRTBwQVlnYzFDaE5TUVBmckIrS1dCUk5pZ0xUN2hBY1RSb0JpQnhOR1FIQUtFMkpBOXhNS0UrTkE5ekQ4ZUNRS1V3cjNKczczL2gzM1ZieUU5eTFZdmhPS1FQZHU5NjBWMmdjVHdrRGlpK0NOM3g0VGlrRHhsL2ViQ21JSEU1SkFOUW9Ub2tEMzZ3Y1Rpb0RpbGdXMCs0UmlCeE9LUVBGK0JmdlJCL3RGVVVyN0JTVkx3ZmMvSGhPUFFQY3ArRWdWOXlvZFVnb09VZ3IzQmZoa0pCME85dy8zQlIzSCtCSUs1ZmNhbHZjdFdMN1Z5eE5rZ0VjZEUxVEFZZ2MxQ3ZmQ0I5cVh4c1RnR3AyR25ZS2VIcForZm95Qkd4Tmt3UEFLRTJVQSt5MEdFMDBBWWdjVFRJQndDaE5rZ1BjVENoUG1nUGN4L0hna0NsSUs5Mkg0WkNzZER2Y1BmTkw0eXJyMzZBcjNKczczL2gzM1RyeUw5eTFZdnRYTEU1U0E5MjczclJYYUJ4UEVnT0tMNEkzZkhoT1VnUEdYOTVzS1lnY1RwTUExQ3ZmQ0I5cVh4c1RnR3AyR25ZS2VIcForZm95Qkd4T1V3UEFLRTVVQSt5MWlCaE9VZ1BGK0JmdlJCL3RGVVVyN0JTVkx3ZmMvSGhPZWdQY2krRWdWOXlvZDl3OTgwdmpLdXZmb0NzSEZvc2JrQ3RYTEU4cUFSeDBUcXNCaUJ6VUs5OElIMnBmR3hPQWFuWWFkZ3A0ZWxuNStqSUViRThyQThBb1R5d0Q3TFFZVG13QmlCeE9hZ0hBS0U4cUE5eE1LRTg2QWQvaFpYZ29UeW9BM0hSUE9nSzhLVXdyQnhhTEc1QW9UeFVCSEhST1ZRR0lITlFvVHBVRDM2d2ZpbGdVVHhZQzArNFFIRTQyQVlnY1RqVUJ3Q2hQRlFQY1RDaFBIUUhmNFdWNEtFOFZBTngwVHgwQ3ZDa1lkYi9kK0pCME9SaDJ4OSswNEhRN3pDdGIzQWhMMzZmWUt1ZmQzRThlQStTV0VGYllHRTQrQTl6MzVBOStYQlJQSGdMVDdkd2NUajRCaUIrWisreFQ4WWdVVHg0RDdLUGhqOEpjRnRQdWtZZ2Z3Zi9zdC9GNEZFNmVBK3cvNFh3VVRqNERubGdVVHg0QzArNlFIRTQrQVlnY1RsNERlZ2ZkSS9RVUZ0Z2IzTi9pYUJUYjNmU01LRGtZZDFmZCtLeDBPVEIzM0h2bHpKQjBPWlFyVzl3SVM5MFgzQjNicHFQZDUrM0wzQnhQQ0FQY2dIUk9UQVBjMUNoUERBTFQ3ZVFjVGt3RHRDaFBDQVBlVkhST2lBR0lIZ0IwVHpJRFArWHdqQ2c1TUhmZFQrZXc0SFE1bENzNzNGQkwzbytrMTl4cDQ5M2tUeFBjZ0hST1Y5elVLRThXMCsza0hFNVh0Q2hQRTk1VWRFNlJpQjRBZEU4cjNSL2wwRldJZHFQY0ZIZFpOQ280ZEV2ZVA5eHI3QnVtbzkza1RZdmNnSFJOTDl6VUtFMk8wKzNrSEUwdnRDaE5pOTVVZEUxSmlCNEFkRStUM0svdGZKQXBNSGZkcytYMHJIUTVsQ3ZjbXpoTDNvK21PdkhUM2VST1U5eUFkRTVYM05RcTArM250Q2hQRTl5Z2RFNVQzL1IwVHBJQWRFNXIzTWZsaEZmY3FIV1VLd2NXaXh2ZDlDaFBLOXlBZEU1djNOUW9UeTdUN2VRY1RtKzBLRThyM2xSMFRybUlIZ0IySytYSmVDaFBLTngwVHpwMTBkWnRuR3hPdVRtdFlQWDhmRHFZSys3ZjR5eVFkRGxhTDkySUt4OEVTbi9pVEUxVDRhdmRHRlJPVTl3a0tFNlNEKzBZRnlBWVRsUGNKSFJOY2svZEdCZndGK1ViMzFRb09Wb3YzWWdyTzl4UVM5Mi8zR2hOVStHcjNSaFVUbFBjSkNoT2tnL3RHQmNnR0U1VDNDUjBUWEpQM1JnWDdpZmpDRldJZFZ2Y0ZIZGIzWWdvUzkzRDNHaE1zK0dyM1JoVVRUUGNKQ2hOVWcvdEdCY2dHRTB6M0NSMFRySlAzUmdYN2lQd1JKQXF5SFpLTEpRci9BR3VBQUxyM3M3ci9BRmVBQUNVSzkrc2RMT3Yza3UwVCttOEtCeFAyOTdTMEJpcVdpcTJMcllxdEdjOEc5M25EN09yM0JUYlgrME1mTHdhbWk2ZU1waDdzbGdXMEJ4UDYrN1JpQmpNZDZsb1Z2Z2UxaTdhMUd0d0c5d3pCV1RFMVZVNzdDUjgzQnJDTHNLNGFEc0I4dmZld3V2ZVd4eEs2OFBmNTlDUHpFL1M2OTZvViswNzNCQ0QzUFBjdzl4UDNIZmR1OTNEN0dmY1ErelloUGw5SVdSNm5iUVc5dWN1cTFoc1QrUFBxUGZ0SWxoLzhWd1lUOUlkNGlHUnRHdmV0KzRjVit3QkQ3dld0alorUHBCLzM5QWI3V1lsSk5Qc0NHdzdiSGZkU0NoTzRMQjBUZUNBZEU3U0ZIUk40OXdNS0l2amVQZ3JiSGZkU0NoTzRMQjBUZUNBZEU3U0ZIUk40OXdNSysxbjQzaTRLMngzM2xIZjNVZ29UdkN3ZEUzd2dIUk82aFIwVGZQY0RDbVg0d0JXaW9RVVR2UHNZOTBRRmFRYjdHUHRFb25YM0V2Y0dCUTdiSGVMRm9zYjNVZ29UdGl3ZEUzWWdIUk8xaFIwVGR2Y0RDaE8rKytUNDZKMEtFN1pYQ2hPKzZSM2JIZmNBOXdZU3VPUmI5N2NkTWQ4NTNSTzVBQ3dkRTNrQUlCMFR1SUNGSFJONUFQY0RDaE8yQUU3NDhpc0tEdHNkOXdES0VyamtnL2VhUzk4NTNSTzZMQjBUZWlBZEU3bUZIUk42OXdNS0U3VDd0dmp5aUIzYkhlTE42SGYzVWdvVHZpd2RFMzRnSFJPOWhSMFRmdmNEQ3Z2SytYRVZFNzVZQ2c3YkhlSEg5MUlLRTd3c0hSTjhJQjBUdW9VZEUzejNBd29UdlBzeitOd1Y5eUlLTFBjRkhjbjNHQXJpemVoMzkrVWRFMTZBTEIwVFBvQWdIUk5lUUlVZEV6NkE5d01LKzhyNWNSVVQzNEJZQ3ZjRi9qMGtDdHNkNGNmM1Vnb1R2Q3dkRTN3Z0hSTzZoUjBUZlBjREN2dkQrVndWRTd6M0poM2JIZUhJOXl2T0Vyams5eWk4aE44NTNSTzFBQ3dkRTNVQUlCMFR0SUNGSFJOMUFQY0RDaE8rQVB0RytVNFZNZ3I3Q0hrOUNnN2JIZUhINWNGZmQ4UEI5MUlLRTdlQUxCMFRkNEFnSFJPM1FJVWRFM2VBOXdNS0U3ZUErelA0M0JYWUhXeUFCVStVdGtmbkcvczM5elNlSFJPNWdGZ2RFN2VBOTIwSzJ4M2V5dlIzOTFJS0U3NHNIUk4rSUIwVHZZVWRFMzczQXdvVHZ2dXUrWUY0Q3RzZDkxSUtFN2dzSFJONElCMFR0SVVkRTNqM0F3cjd0ZmkycUFvczl3VWR5ZmNZQ3ZlVWQvZmxIUlBkQUN3ZEU3MEFJQjBUM0lDRkhSTzlBUGNEQ21YNHdCV2lvUVVUM3dEN0dQZEVCV2tHK3hqN1JLSjE5eEwzQmdXSS9mTWtDdHNkOTFJS0U3Z3NIUk40SUIwVHRJVWRFM2ozQXdyNzhQbGJweDNiSGZkU0NwdThFN2dzSFJONElCMFR0SVVkRTNqM0F3cjd0ZmkyT1FvVHVzd0syeDMzWThHRHdmZFNDaE8yTEIwVGRpQWRFN1dGSFJOMjl3TUsrN1g0dHZjakhSTzIrQ3NkRTY3M3Z3b1R0dklLRTY2VzkzWWRFN2IzNmdvczl3VWR5ZmNZQ3ZmbEhSUGFMQjBUdWlBZEU5bUZIUk82OXdNS0U5NzdPL3RWSkFyYkhSSzQ1UGN4dkh2Zk9kMFR0Q3dkRTNRZ0hST3loUjBUZFBjRENoTzQrejM0eDNJZDJ4M0pzL2NQc3hLNDVKMjc5d2E3WmQ4NTNSTytnQ3dkRTM2QUlCMFR2a0NGSFJOK2dQY0RDaE83QVBzeitPd1Z4UjBzKzNERDl5dk5TOEQ0SkxuM1Vnbzh5aFBjdVBjRUZUaklZZFFlRTlyR3JLWEJ3aCtUWHFodHdJZ0lFN2xjY0dOZldScFVzR3JCdHZmVkhhMnFxcXlsSHhPOG9KeVZsSnVlZDZNWWZuNStnbnNiZG4rZnRCLzNad2YzRWxtN0lpVkJXVDk0SHZmZkNweU1tUnZOcDNNcUgzSUhZNEpoZm15QUNCUGMreHRhYkY1U0d2YzlVQlZkYWFEQXFaYXg0cTBmb0pPdmw2NlZDUHN1QjJOU2VIOXBHdzZOSGZnMEN2ZHNDdnNJKzNDdzl6L0wrQnE1QWJYajkwZkpBL2VwK0U0Vm5KMkpoWjRmblVrRmI1S1pkNjBicEp1WHBaQWYxWDVCd3pFYit3ejdBeTM3TXZzbjJ5NzNFb01mZ0VFRjkyTUszNURGdDZYWkdYS1lCVnBzV1hCU0d5MUp6L2NTOXhUSnorQWZEdmUxQ2dHMTQwZ2RZUGNhTGdyM3RRcmV5dlIzQWJYalNCMzdDdmU5ZUFyM3RRcjNsSGNCdGVOSUhmY0g4M29kOTdVSzhQY1VBYlhqMlBjYVNCMkk5eWNrQ29oKzkxc0tvSGNTdU9YM2o5ODYzUDhBV29BQTkrY2RFNG5RNGdvVEtkRDNtZnVKRlJNWjBQY3ZsUVVUVE5EM2hCMFRpckRCQ2hPSjBQZHYrVHl5Q21aK3hGWEdaWGFxZHZnMnhNcTU5eWQzcDNjU3VPWDNqOTg2M0RyZUU0M0E5MkQ0cmhVVGphRDNUZnNVQnJ0aVk1eFdHL3NMTUNMN0ovc2czU3YzRHNTNG9yMnhIeE10d0pKRkJSTWR3UGN2bFFVVFRjQ3ZCenFZQmZoOUJ4T09rTnk1T2dhUDl5Y0ZFNDJnZlpQN01GNEZhQWZnZ1FWSyswMEhSdnY3RmZjVnk4dlhIaE9Od0txdGZtTzVIL3ViQjJKbWEzcGdHeE9Ob0R0UXhQY1FIdzVtOXdVZHlmZGJDaEs0NWZYM0dwYkFDaFBGNERyN215UUtadnRFeXUvM1d3b1N1T1cwOTVwWHdBb1R4Y0Q3YWZ1QWlCM01IUlAwSlIwVDdFQUt0UGNhUGdyTUhSUDBKUjBUN0VBS1gvY2FMZ3JsQ3ZlVWQvZXpIUlA2SlIwVDlrQUs5eFR6ZWgzbEN0N0s5SGYzc3gwVC9TVWRFL3RBQ3ZzQzk3MTRDdVVLOXdEM0J2ZFhDbTMzdHgxUzNoUG9nQ1VkRStTQVFBb1Q4d0QyOXk0ckNnN2xDdmNBeXZkWENvcjNtbmZlRS9rbEhSUDFRQW9UOHZzWjl5NklIZVVLOFBjVTkxY0swUGNhc2Q0VDZ5VWRFL2RBQ28vM0p5UUtMZnR3dy9jcjloMzNWd3IzQ01ySjNoUDc5NUgzbndxenByQ3pxeCt3cDZDaW5ySnpuaGhnWm1WdzkvRUs5OVAzemdvaSt4QWlKZnNxK3pIakwvY2JtNXlNanB3ZVpXeHdYbHdhRS9lYStOSVZ5cnBZVW1tQWVWdjM4d3JDR3c3bEN1TE42SGYzc3gwVC9TVWRFL3RBQ3ZzdDk2MFZXQW9PekIwVDlDVWRFK3hBQ3ZzVTZhZ0tMZmNGSGNuMkhmZVVkL2RYQ3N2M0dyYmVFLzJBSlIwVCs0QkFDdmNVODJNZGlQM3pKQXJNSFJQMEpSMFQ3RUFLKzFEM2w2Y2R6QjEwdkJQMEpSMFQ3RUFLK3hUcE9Rb1Q4c3dLNVFyM1k4R0R3ZmV6SFJQMUpSMFQ4MEFLK3hUcDl5TWQrQ3NkRSt2M3Z3b1Q5ZklLRSsyVzkzWWRFL1AzNmdvdDl3VWR5ZllkOTFjS3pQY2F0ZDRUZXlVZEUvZEFDdjBaOTJnSzVRcjNWd3IzTXJ5dDNoUDJKUjBUN2tBS2VmY0RjaDNsQ3VMRm9zYjNzeDBUOVNVZEUvdEFDdnMyOXlTZENoUDFWd29UL1oxM2Q1dHFHeFA3Vkc1WVBZQWZEczhkOXduTjZIZjNReDBUMWNSdUhSUFZxdmNkSFJPMW12Y05DaFBWeEt3ZEU5bWFlUjBUMDZyS0J4UFZxbnlWQlJQWnF2ZzdDaFBWcXBvSyt5VDNxQlZZQ2c3UEhmY1g5eFFTcjkxUTNFUFRzZmNhcHR5RzFvR2FFOVNFYmgwVDFFcjNIUjBUdENyM0RRb1QxSVNzSFJQWUtua2RFOUpLeWdjVDFFcDhsUVVUMkVyNE93b1QxRXFhQ2hQVldvLzNJaVFLengwU3I5MVEzRVBUdysrMjNJYldnWm9UMVNodUhSUFV0UGNkSFJPMGRQY05DaFBWS0t3ZEU5aDBlUjBUMHJUS0J4UFV0SHlWQlJQWXRQZzdDaFBVdEpvS1h2ZFM5MWtkengzM0JjcjBkL2RESFJQVXhHNGRFOVNxOXgwZEU3U2E5dzBLRTlURXJCMFQySnA1SFJQU3Fzb0hFOVNxZkpVRkU5aXErRHNLRTlTcXBXdGZtRmdiSXo1UUloOFQxYXIzU3ZjUEZjbXZXa1JCWlZaTFRXaTkxTlN4dnNvZit3YjN1SGdLengzM3NuZjNReDBUMVlodUhSUFZWUGNkSFJPMU5QY05DaFBWaUt3ZEU5azBlUjBUMDFUS0J4UFZWSHlWQlJQWlZQZzdDaFBWVkpvSzl3N3VlaDNQSGZjZXloS3YzVkRjUTlOeDk1cG0zSWJXZ1pvVDFZUnVIUlBWU3ZjZEhSTzFLdmNOQ2hQVmhLd2RFOWtxZVIwVDAwcktCeFBWU255VkJSUFpTdmc3Q2hQVlNwb0tFOVVTK3hQM0tZZ2R6eDMzQ2NXaXh2ZERIUlBWUkc0ZEU5VXE5eDBkRTdVYTl3MEtFOVZFckIwVDJScDVIUlBUS3NvSEU5VXFmSlVGRTlrcStEc0tFOVVxcFd0Zm1GZ2JJejVRSWg4VDFhcjNTdmNQRmNtdldrUkJaVlpMVFdpOTFOU3h2c29mK3pEM0g1MEtFOVVxVndvVDFhcnBIWWlMci9mNTA5UzU5eWYzcFFyY090NDQzL2R6NEJQcGdPOEtFK3lBK0JjZEUvS0ErMHdHai9jbkJSUHNnUGdGSFJQcGdEa0dEb2o3ZDgzM05mZHBIV1QzQXZjczRCUHNnUGRDSFJQMGdQZW1IUlBzZ04wS0UrbUE5M3l2QmhQcWdIOGRFK3lBOXpjZEUrbUErMi84eXhWWUNnNnhDa1A0THpnZERvajNCUjNXOTJrZHRQY2F1K0FUN0lEM1FoMFQ5SUQzcGgwVDdJRGRDaFBxZ1BkOHJ3Wi9IUlBzZ1BjM0hSUHRnRVA5UnlRSzl5UUtFdmNENEJPd3BSMFQwSTczSEFVVHNHY0s5emI0c0Q0Szl5UUtFdmNENEJPd3BSMFQwSTczSEFVVHNHY0sxUGl3TGdyM0pBcjNxSGNTOXdQZ0U3aWxIUlBZanZjY0JSTzRad3IzaC9pU2VoMzNKQXIzRlBnbEN2Y2xDaE82OTJyNHhDc0tEdmNrQ3ZjVXloS1c5NXI3TnVEM0pRb1R1SFA0eElnZCs4YjMvUXF2WjczNFFIZXBkL2NXOXhRUzFNdFk5eHI3QU40VHpRRHZIUlBPQUR2OWJoV1FDdmY2Q2g4VHpJRGRyd1lUdElCRmdSMzNHQWVPOXh3RkU2eUEzUjBUemdENEJCMzNDUWRmYldoWlZ4b094eDMzSkFyeXl2UjNFdmNENEJPOHBSMFQzSTczSEFVVHZHY0tpdmxUZUFyNEN4MzRUbmVwZC9jVzk4RWRFOXp2SFJQcTl4Y0tCUlBhM1IxQWZRVm5CeFBjOXdyN1h5UUsrOGFMcnhMM0ErQjF2QlBBcFIyTzl4eG5DaE9nNnZpWmNoMzNKQXIyOTcwZDl3UGc5NXdLRTd4bkNscjR1cDBLRTdSWENoTzg2UjMzSkFvUzl3UGdFN0NsSFJQUWp2Y2NCUk93WndvTys5djdqZTc1Q0hlcGR4TDNBOTBUc1BjcENoUFFqdmNjQlJPd2ZKWDdMTEVkRHZ2Yis0M3UrUWgzcVhmM3FIY1M5d1BkRTdqM0tRb1QySTczSEFVVHVIeVYreXl4SGZjdTk3VjZIVktMci9na3N2ZVU5NlVLMzhIdlUvZDhFOXIzQUIwVDZ2ZW1IUlBjZlpNRjl6ajk3Q2dLWEl1ditDU3lqbmVwZC9lY0hlMzNmQlBNc3hiM2ZLOEdScGtGaXJPS3ZiUWF6YzczTGZ1TUJmY2Nyd1pLbC9zNTk1bjNBL2c1Q3RWNiswRDdSZ1gzRFFjVHJJNzNDQVVUbkh1Vit5NXBIVnNIWG9wS2lsa2VRWDBGRHZ2R2k2LzVTL2VsQ3Q4VHNGTWRFOUQzcGgwVHNIMlRCVE82SkIwTys2NkxyL2xMZDZkM29IY1M5dC8vQUZxQUFQZm5IUk9jVXgwVHpQZW1IUk9zZlpNRkU1ejNLSXl5Q3Z2R2k2LzVTM2VuZHhMeDd5emZFNmhUSFJQSTk2WWRFNmg5a3dVVHNLRDk3Q2dLKzRXTHIvZHQ5eFQzOHZlbEN0L1Q5eG9UMkZNZEUrajNwaDBUM0gyVEJmY3AvSG9rQ3ZnTEhmbExkNmQzRXR6M0d2c0EzeFBVVXgwVDVQZW1IUlBVZlpNRkU5aHEva0lrQ3ZnTEhmbExkNmQzN01vU2tQZWErMDczR3ZzQTN4UFpVeDBUNmZlbUhSUFpmWk1GRTlwcS9rSWlDaFBjK3lQNmo0Z2QrOGIzdHdxditVdDNwM2NTbmZlYSswSGZFOVJUSFJQazk2WWRFOVI5a3dVVDJQczMvaWVJSGZ2R2k2LzRTbmYzcWZlbEN0OFQyUGVsK0c0Vk9XQUY5eklIRStqM3BoMFQySDJUK3pCZUJmZTJIZnVVQnpsZ0JWTUgzYllGK3hNSCtEY2Q5NHl2Qnp1WkJZckFpc0hBR3ZjNUI5MjJCUTczdll2M0hoMzNhOS8zYk44VDNQZlFIUk84ZzlzRkU5eFVIYkxqTGdyM3ZmY0ZIZGIzSGgzM1Z2Y2Erd1hmOTJ6ZkUrdjMwQjBUMjRQYkJSUHJWQjBUN2VYOVJ5UUtqWXYzSGgzM2I5OFQyUGNMQ2hPNGc5d0ZFOWduQ2kvakxncjRDZ3IzQmNyMGQvZWNIZmR2M3hQZTl3c0tFNzZEM0FVVDNpY0srMGIzajNnS2pZdjNIaDMzYjk4VDJQY0xDaE80Zzl3RkU5Z25DbTdqUGdyNENncjNDY1dpeHZlY0hmZHYzeFBXOXdzS0U3YUQzQVVUMWljS0U5NzdnZTJkQ2hQV1Z3b1QzdWtkall2M0hoM083Ny9mRTlUM0N3b1R0SVBjQlJQVUp3b1QzSVA4OFNnSytBb0s5eGYzRlBlY0hiZjNHclRmRTlyM0N3b1R1b1BjQlJQYUp3b1Qza3Z3SkFyM1BQZ3NIYWwzOTYxM0VydjNFL2JnOTIvZkU4djRzdmg4RlUxSFpsVmFIeE9yZzl3RkU4c25DaE9mL0FQM1B1NGREbzMzQlIzVzl4NGR0UGNhdDk4VDZ2Y0xDaFBhZzl3RkUrb25DaFB1U1AxSEpBcU45N2NLOXg0ZGMvZWFlTjhUNnZjTENoUGFnOXdGRStvbkNoUGsrMXY5TElnZDl4Z2RBYmpxOTZIcUF5WWR1UGkwUGdyM0dCMEJ1T3Izb2VvREpoMWwrTFF1Q3ZjWUhlTE42SGNCdU9yM29lb0RKaDM3Sy9sSEZWZ0tEdmNZSGZlVWR3RzQ2dmVoNmdNbUhmY1MrSlo2SGZjWUhlTDN2UjI0NnZlaDZoUHNKaDBUL1BzMytMNmRDaFBzVndvVC9Pa2Q5eGdkOXdEM0JoSzQ2bTMzdHgxdTZoUFNKaDBUN1BUNHlDc0tEdmNZSGZjQXloSzQ2bzczbW8vcUUvUW1IUlBvK3hmNHlJZ2Q5eGdkQWJqcTk2SHFBeVlkTC9pcmZncjNHQjNleXZSM0FianE5NkhxQXlZZCt3ZjVWM2dLOXhnZEFianE5NkhxQXlZZCt4WDRqS2dLVlBjRkhjbjNiQjMzbEhjQnVPclA5eHJPNmdNbUhmY1MrSlpqSFl6OTh5UUs5eGdkQWJqcTk2SHFBeVlkKzFINU1hY2Q5eGdkRXJqcTk2SHFUYndUOENZZCt4WDRqRGtLRStqTUN2Y1lIZmRqd1lQQkVyanE5NkhxRSt3bUhmc1YrSXozSXgzNEt4MFQzUGUvQ2hQczhnb1QzSmIzZGgwVDdQZnFDbFQzQlIzSjkyd2RBYmpxei9jYXp1b0RKaDJNKzM4a0N2Y1lIUUc0NnZjNnZNSHFBeVlkZi9pZGNoMXFDZzVxQ2x2NHRDNEtWUGNGSGNuM2JCMFN1T3JSOXhyTTZuakxFM1QzZWgwVGNzR2pzTHpPTmdwcGZIVnNmaDY2WDAralRodjdDUHNGTlBzNkh4TjBwQjBUL0k3N2Z5UUthZ3JDK0xRK0N2Y1lIUks0NnZjMHZNZnFlTXNUK1BkNkhSUDB3YU93dk00MkNtbDhkV3grSHJwZlQ2Tk9HL3NJK3dVMCt6b2ZFL2lrSFhuNG5YSWQ5eGdkNHZlOUhianE5NkhxZU1zVDdQZDZIUlBxd2FPd3ZNNDJDbWw4ZFd4K0hycGZUNk5PRy9zSSt3VTArem9mRSt5a0hSUDgreno0dnAwS0UreFhDaFA4NlIxVWZyaHJkcWgyK0Z1NWZuY1N1T3Izb2VvVGx2ZW1maFgzQ1BjRzN2YzVIeE9PMlhMSVpMVWV1c1lGRXpacnBWMVNCYWhqWEpwYkcvc0krd1UwK3pwQ29WS3VZaDliVUFVVFZxeHhCUk9XdU1NRmE3TytlNzRiK3hyM2pCWDNHN3JUNHJPc2UyeWhIdnRyKzU4RmdxaUdyN1VhOXhyN1h4VmZhWjJ2ZEIvM2J2ZWlCWmRya1dKYkd2c2FXa1kxSGc3M25INjRYdllkRXJqcTk2SGhOZVAzaHQ0VHZmZW0rRTRWNHJ0Qit4djdHbHRJTkRWYjBmY2E5eHU3MHVFZitMYjc1eFVUZlhTZUJXUnRYV3ozOFFyMzFQZk9DaUZHUm1WT1l4N0tZa0d2U0J2N0Ivc0dOZnM2SHhPOSt6bjNCVGYzQ00zUnJNaTFIbEN1eUdqYkcrVE10TmF4SHhPNysxUDM1eFhMdVZoU2EzNTNYUGZ6Q3NNYkR2dEppL2UxSGZlY0hST3c5QW9UMEg4S0U3Q0E5d29GRTlDWUhmYy8rTEF1Q3Z0SmkvZTFIUkwzQmU4cTRCT285QW9UeUg4S0U2aUE5d29GRThpWUhST3c5ei83TFNnSyswbUw5N1VkOXdYSzlIZjNuQjBUdlBRS0U5eC9DaE84Z1BjS0JSUGNtQjNRK1ZONEN2dEo5d1VkMXZlMUhSTGw5eHI3QU9BVDFQUUtFK1IvQ2hQVWdQY0tCUlBrbUIwVDJQZTZDZzc3U2ZjRkhkYjN0UjMzSHNvUzVmY2Erd3IzbXZ1UTRCUFo5QW9UNlg4S0U5bUE5d29GRSttWUhSUGM5N29LRTlwWStiT0lIZnRKOTdjSzk3VWRFcXYzbXZ0RzRCUFU5QW9UNUg4S0U5U0E5d29GRStTWUhSUFlnZnRvaUIzN1B2Y2xIUUhCMi9kSTNBTXRIWC80NFM0Syt6NzNKUjNleXZSM0FjSGI5MGpjQXkwZE0vbUVlQXI3UHZmOEhmZHNIUkxCMi9jTnlZamNFL2ozU3pVVjkyTUtCUlAwOXdHVndzblJHc3BsdWlld0hteVdCVWVrYzV5M0dyU3Jwc2lqb29XQW9SNmJPd1cvQm8veEJhVmdZSnBWRy9zRVRVZENSN3RqMUhBZnVYb0Z5bldwZFdBYVhtZHNQMnh4a0paekhuamlCVlFHai9zQ0JSUDR1bk8yZnNDS0NBNzdQdmNsSFFIQjI3RHZ0dHdETFIzU0l5Z0srejczSlIzM2xIY0J3ZHYzU053RExSMzNMdmpEZWgzN1B2Y2xIZkQzRkJMQjI2YjNHcDdjRTlRdEhSUDhwL2p1SkFyN1B2Y0ZIY24zYkIwU3dkdW85eHFjM0JOMExSMFQvS243VWlRSys1aUxyL2o2N2dIMjN3UDI5MllWK0RjZDk1YXZCekdhQllyQWlzREFHdmR5Qi9jT2tjMmh0QjZVbTVlWm1aYW9kUmgxcGFDRHBCdXZvcDZsakIrd2dXV2NXeHRkV0gxY1h4OWZXWEJBK3lFYURuOSt1R3V2Wi9jYStNNjRFdmJmejdxQzA4ZmVkZHdUbW9EMjkyWVZFMXNBK0RjZDl6MEhpZEdLMGRFYTkzSUg4WXUybUxNZXc1MnVxczBiMUt4aVRGdDViMTFsSDF0a2QyTlpHa1N6YmMxbEhoT2NnTlZlbUhKb0dsbHdiRWg0ZG82VWNSNFRQSUJ6NVFWYUJoT2NnSS83Q3dWNnViZUF2UnYzQ01IRTRzdHdyaXJISHhPYkFGS3RkcHUwR3FxWXFiZXJIc0d5cTduQkd0cEV4Q1F4UVZwQ2FoNTVaSHRKSkJvTys2dCt2L2dUd0ZiQ3RPajNGWGNTNS9kL0N0TC9BRHlBQVAvL3c0QUE5K2NkRTl5QTkwWDNCQlgzeWdjVDJ3RDNITUQzZmdvVHZJRDNkUjBUM0lDWEhmY1ArUWl5Q3Z1cjkvd2R2MjkyK0VUQVZzSVM1L2QvQ3Y4QU5vQUF5UlBWOTFJZEU3UDNmZ29UcmZkMUhSTzFYOTc3Z0Fka2luWnlHa21yWjcrQ0hvQS85NE1kSHhQVnUyS2xXSk1la2JpN2piR2VwS3NaYzZVRmVYSjNnblViYVhhaHZoOE8rNnQrdi9nVHdGYkNFdWYzZndyLy8reUFBTzhUMFBkU0hSUEk5MzRLRTdEM2RSMFQwSmNkRThUZysza29DdnVyZnIvNEU4Qld3dmVUOXdZU2YvY0xmUGQvQ3Y4QUQ0QUE5d3NUMVBkU0hSUFM5MzRLRTdUM2RSMFQxSmNkRTluYitRQXJDZzc3cS9jRkhjbS8rQlBBVnNJUzUvZC9Ddi8vMW9BQTl4b1Q2UGRTSFJQazkzNEtFOWozZFIwVDZKY2RFK0twKzg4a0N2dXIrMFRLNzcvNEU4Qld3aExXOTVyN2lmZC9DaFBrOTFJZEUrTDNmZ29UMVBkMUhSUGtseDBUNkNYN3RJZ2RSQW8wK053K0NrUUsrMEg0M0M0S2RCMzNyL2RKSFJNWGdQaTVGaE5IZ0dJS0U0dUFKZ29UaDBEM0JCMFRKMENWTWdXSytMNTZIWFFkOXh2M0JuZ2RXdmUzSGYvL3hvQUE5N1FkRXhjZytMa1dFMGNnWWdvVGl5QW1DaE9IRVBjRUhSTW5FSlV5QlJPR3dINzQ4Q3NLRG5RZDl4dktlQjE0OTVyLy8rcUFBUGUwSFJNWFFQaTVGaE5IUUdJS0U0dEFKZ29UaHlEM0JCMFRKeUNWTWdVVGhvRDdrUGp3aUIxMEhlU3o5dyt6ZUIyUXUvY0d1LzhBQm9BQTk3UWRFeGVRK0xrV0UwZVFZZ29UaTVBbUNoT0hpUGNFSFJNbmlKVXlCUk9IWVBzUCtPb1Z4UjFFQ3Z0dytOTitDbmI3Y01QM0s5SlBzWFIycEhha2R2ZzB6SXQzZUIzM1k4ci8vOCtBQVBlMEhST0Z3UGdVOTU4S3JhU3NzYVlmRTRXZ3NvMEZFNkdnWWdvVHdxQW1DaFBCa1BjRUhST1JrSlV5QlJPSndNeVBCUk9Gd0ZwdllWeFdHZzUwSGZjR3plajNTUjBURjhENHVSWVRSOEJpQ2hPTHdDWUtFNGVnOXdRZEV5ZWdsVElGKzZINWJ4VllDZzUwSGZjQ3l2VDNTUjBURjhENHVSWVRSOEJpQ2hPTHdDWUtFNGVnOXdRZEV5ZWdsVElGKzMzNWYzZ0tkQjMwOXdKNEhXRDNCK0gzQi9nUkhmZTBIUk1YSVBpNUZoTkhJR0lLRTRzZ0pnb1RoeEQzQkIwVEpwQ1ZNZ1g3cVBrSjl6d2Q5eGpRRmFWNDN0UUZuNTJWbXA0YW8zbVllWGQ1Zld0N0hoT0hRSi83T3ZjdUNuUWQ5d2YzQnBiQmVCMWE5N2NkLy8vR2dBRDN0QjBURnBENHVSWVRScEJpQ2hPS2tDWUtFNGFJOXdRZEV5YUlsVElGRTRaZ2Z2amNLd3FCOTV3VmMzWUZFNGRRUUIxMEhmVDNBbmdkWVBjSDRmY0grQkVkOTdRZEV4Y2crTGtXRTBjZ1lnb1RpeUFtQ2hPSEVQY0VIUk1ta0pVeUJmdW8rUW4zUEIzM05MMFZvNkJjNmdXcmUzbVpkeHQ1ZVg1emVKVjhuM2tmRTRkQTl4RDdEL2N1Q25RZDl3ZjNCcnJLZUIxYTl3czE5NW8xOXd2Ly84YUFBUGUwSFJNWGlQaTVGaE5IaUdJS0U0dUlKZ29UaDRUM0JCMFRKNFNWTWdVVGgxQisrTndyQ2hPSElISDNOWWdkOTRrS3pmY2Evd0FWZ0FEM3RCMFRpMEQ0dVJZVG8wQmlDaFBGUUNZS0U4TWc5d1FkRTVNZ2xUSUZFOFBBSi90WEpBcDJmdEpOd1hnZDl5Rzgvd0FmZ0FEM3RCMFRlUGk1Rm1JS1p3ZlNmQVVUdUlqN3VRVmdYVnQxWFJ0VmNhcmlIL2N2QjVEM29CMzdKOVVLKzQwRit4aUt2VnZjR3hPMDl3UWRFM1NWTWdYN0hQakZjaDFIQ2c1SEN2czQrTnd1Q3ZlSkNzYjNHdjhBSElBQS93QlNnQUQzK3dyZy8vK3hnQURYM01zVGkwRDR1UllUbzBqM09oMzNyUWVNdXdYZGxjbkU0allLWDNGelZvQWVFOE1nOTdNS0U4VWdKZ29Ud3hEM0JCMFRrNUNWTWdVZysxY2tDa2NLUmZqY1BncDJmdEpOd1hnZDl4cTgvd0FtZ0FEL0FGS0FBUGY3Q3VELy83R0FBTmZjeXhONStMa1c5em9kOTYwSGpMc0YzWlhKeE9JMkNsOXhjMWFBSGhPMTk3TUtKZ29Ucy9jRUhSTnpsVElGK3lQNHhYSWRkQjMzQnNXaXhuVUs5L3NLNFAvL3NZQUExOXpMRXhiQStMa1dFMGJJOXpvZDk2MEhqTHNGM1pYSnhPSTJDbDl4YzFhQUhoT0dvUGV6Q2hPS29DWUtFNGFROXdRZEV5ZVFsVElGKzY3NDVwMEtFNGFnVndvVGg2Q2RkM2ViYWhzVEo1QlVibGc5Z0I4T2RCMzNCc1dpeHZjUUNoTVd3UGk1RmhOR3dHSUtFNHJBSmdvVGhxRDNCQjBUSjZDVk1nWDdyZmptblFvVGhzQlhDaE9Id0oxM2Q1dHFHeE1ub0ZSdVdEMkFIdzczMEFwa0N2czErTm91Q3ZmUUN2ZWhkMlFLbC9pOGVoMzMwQXIzRGZjR0VvdjNlSlgzQzBuM2NVcjNDNUQzU3hQcStKbUZGYkFHRS9YM0p2aEJ3WmdGc3Z0TFpBZlZmUzM3d3ZzRjk4UFZtQVd5KzNGa0I5Vi8rd1Q3eHlUM3g5bVhCYkw3ZUdRSHhJSDNOZnhFQmJBRzl4ZjM5d1VUNnFKSHF5N1grMVlJZ2ZqdUt3b085OUFLWkFvOCtObytDc29LRW92NGxQdFhPZ3IzTC9uTkxncktDdmNOOXdZUzl3ejNDOW4zVi90TDl3c1R6ZEFkRTU3M05mZzl3WllGRTg2disxY0hFNTVuQitKLyt3Lzc2QVVUemZzUjkrbmpsUVd3KzRRSEU2MUdDaFBOWkxWd3ZSNzN2Zm5oS3dvT3lncjNvWGNTaS9pVSsxZjM3QjBUbXZjMStEM0JsZ1VUeXEvN1Z3Y1RtbWNING4vN0Qvdm9CUlBNK3hIMzZlT1ZCYkQ3aEFjVHJFWUtFOHhrdFhDOUh2ZlMrYTk2SGNvSzl3YjNGQkwzYS9jYWEvZnNIUk9hOXpYNFBjR1dCUlBLci90WEJ4T2Fad2ZpZi9zUCsrZ0ZFOHo3RWZmcDQ1VUZzUHVFQnhPc1Jnb1R6R1MxY0wwZTkxTDUyaVFLTC91Vzl4VDdDL2NDK05DMVk3Tm5yeEwzMGZkWCswVDNHaE5pMEIwVFRQYzErRDNCbGdVVFpLLzdWd2NUVEdjSDRuLzdEL3ZvQlJOaSt4SDM2ZU9WQmJEN2hBY1RVa1lLRTJKa3RYQzlIaE9pOTh1Q0pBcktDaEtMK0pUN1Z6b0s5Mi81elQ0S3lnb1M5OEc4YWpvSzl6bjV0bklkeWdydjk3MGRpL2lVKzFmM1Z4UEswQjBUbWZjMStEM0JsZ1VUeWEvN1Z3Y1RtV2NING4vN0Qvdm9CUlBLK3hIMzZlT1ZCYkQ3aEFjVHFrWUtFOHBrdFhDOUhoUE9udm5YblFvVHlsY0tFODdwSGZjQUN2dHM4QzRLOTNBZDY4cjBkeEtvK0NZVG5yYjRieFVUcm9QN0tyK0hCUk9lOXljZEUxNlY5emNGVndZVG52ZERDdnU0OTV4NEN2ZHdIZmNHOXhRUzl6MzNHaE9VdHZodkZST2tnL3NxdjRjRkU1VDNKeDBUVkpYM053VlhCaE9jOTBNSyswajNCaVFLK3lqM0JSM1d0V0gzTi9jMDl5eGd0aEwzUlBjYUUweTIrRzhWRTFTRCt5cS9od1VUVFBjbkhSTXNsZmMzQlZjR0U4ejNRd3I3UWYwNkpBcFJmcmo0SWJuM2xYZXdkeEs0NnZlYzVoUGM5NXArRmZjbzRQY0U5MG4zSmxYM0JUVGhIeFBzOXg3UmViQUZFOXo3TEQxZnNWZXFWS1VaZDJxNmJiSnZxMndaK3haSm5XYjNJdFMyVzZoVm9FVVpyRzFmbkZjYit3VDdBVFg3TC9zMTlUWDNBeCtVdUJVNFc5RDNGUGNWdU5MaDNyMUwreGo3RTJCQk1SOE9XZmZ3Q3ZneEhSTGozVG5nOTRybEUrdjROL2QrRmZzVlRrNUVaMlNicjJRZTk2MEh0YjZ4bDZrYjFyOUcreFFmRS9YN01QeEtGVENhQllyQmlzSEFHdHdIV2JXNGU3a2I5d25rOFBjdTl5ODM1aUZXV1hWYVhSLzNRUGZuQ2hQcjk5b2QzSUVGL1RrSFZZcFdpbFFlTzMwRmFBY1Q3ZmVWQmc3Y0hWeCt4RlcvK0JuRUVyamw5NVBmRTdqM3ByY1ZQRS9LOXhIM0lNM0c5ODBkekxxa3hiTWZFM2hibHFacnV4dXZwcGl5b3g5M29RVitnSUNDZWh0MWZadTJIL2VHQjQ3M0cvZmhDaDhUdVBzczNUVDNDUjRPWC91TnVQZ0FDaFBzOTZhM0ZUeFB5dmNSOXgvTngvZk5IY201b3IreEg0cjdCWU5YZFdZSVhYRmFlV1ViYzNTTWtIUWZmYjRGdlgxL29tb2JkSHVBZEg4ZktKelZZZWNiM01pa3dyWWZ0YitYemZjdkd2ZURCeFBjanZjYkJSUHM5K0VLK3kzZE5mY0pIdzZZK0NvS2xuZjNpTEFTOXduZ045MzNldUFUemE4Vzk1V3ZCakwzRGdyM2RRZU5XSXhqUlJwWStDY2Q5M3l2QjBlQkhmY2RCeE90anZjWEJST2RlNVVGRTh0QmZnWDNXQW9UcTFkYmVFK0JJQWdUclRlQUJSUE5YOTczSkIwT2svZ3FDdmVhZDZsMzk2b0szeFBLZ0s4Vzk1V3ZCakwzRGdyNEVRb1R6SUQzSWgwRkU5S0FmWk1GRTZtQVoza0Zubk5pbEdNYitBY2RDQk9xZ0RlQUJSUEtnRi9lOXlRZERyTit2MlQzN2dyM1ovZC9DaE50QVBndThCVVRyUUE5dDJmUnZyV2VyYVFlZEtVRmVYRjNnblViYW5XaHZoLzN5dmdSQ2hOcWdQZCtDbEFHY1BzY0JmdHQ5N0VLcDNVWTkwY0tFMXNBOTl3S0NCTmRBRGVBQlJOdEFGL2U5eVFkWi9lV3J3Y3g5dzRLOTJYN2dBZGtpblp5R2c3QitDb0s5MEh1WExyM3FncmdOOTBUMG9EM0ZRcjNscThITWZjT0N2Z1JDaFBLUVBzZTk3RUtDQlBVUUtkMUJmZEhDbUJkZVZHQklIdUpHUHRpQmhQTWdQZkFIUWdUc1lDbWRRWDNieDMzc0IwVHNvQTNnQVVUMG9CZjN2Y2tIUTczMEl1ditCYjMraDMvLzg2QUFNRDNRKzVtc1BlcUN1QTMzZmQ2NEJPcW9QY1ZDdmVWcndjeTl3NEs5M1VIalZpTVkwVWFXUGduSGZkOHJ3ZEhnUjMzSFFlTzl4ZDdsVUYrQlJPc1lQZFlDbGRiZUUrQklIdUpHUHRpQmhPMG9QZkFIYVoxR1BkdkhSUFJvUGV3SFJQS29EZUFCUk9xb0YvZTl5UWREdmZMaTYvNEZ2ZjZIZi8vem9BQXdQZEM3eWp1OTZvSzNqamdOOTMzY2Q4VG9sRDNGUXIzbGE4SE12Y09DdmdSQ2hPeWtQY2lIWDJUWjNrRm5uTmlsR01iRTdRdytBY2RlNGtZKzJJR0U2eFE5OEFkcG5VWTkyOGRFOGxROTdBZEU4SlFONEFGRTZKUVg5NzNKQjBPOXdoK3kvZm1zL2R3cmhLbTRvTFQ5MGJOdnZkZkUvYjQ1bjRWcForT2txa2ZqN2NxbUd5cmNhaHlwUm01MEs3Vm91YlhtUml6KzE5akI5cCtlVHh2U21aTkdXUzFaN0ZqdDJpeGM2WjJvd2p4d3JtODBCcldWc0FvSGhQdUxVVlZNMWFlV0wxU0g0eUpqWXFNaVFnVDlpZFpXRWd4R2liaE92Y1I2OHV3dTdjZWxuNlhmNWQ5Q0dtc3FuL0FHeFB1L0FqNFhCVm11WU9xcnhyQXM3Tyt2TEZuVVZGZlgwMWdIb0tWZ3BhQ2x3amsrM1FWcldXclo2OWlDR2xsVlhoVEd4UDJLbFhUMUwyZXg5QzFIeFB1ckdXcVo3aFVDQTRqK0J3ZHRPZjNmdWdEOXhuMzFoWDNmc1BGeWNmRFVQdDkrM3RUVUU5TlU4WDNmQjczQ3ZmbEZTQWtNdnVNKzR2eU0vYjA4K1AzaS9lTUkrUWlIdzRqaTY4QjkyM2ZBK0Q0N1JWaUIvY1lsZ1g3L1BlTkN2c2lvd1dLdllxK3ZScjN0dmdDQ2lPTDNmaW91QUgzNmVVRHZQY0JDaU4rK0F3SzkvWGlSdVFUNlBjKytBRlJDaVAzVmNvUzk3emVPUGRRRTZENGVQZFZGY29IRThEZ0hTTis5NmNLZm13S0kzNjQ5OFRJRXJQbE1lZjNoT1FUNlBlVlp4MGppNVg0dnQwQnZ2Z3hBL2NabGZjdkNpTit0L2pidUJLMzk2a0t0MDhkSS9lVXgvZSt1QUdvNVBlRzVRUGhkM1VkSS9nY0hiUG45MzdvQTYrb0ZheDJyc0lGVmJMQWRjRWI5UFBqOTR2cGZOSnp2eCs0MFdtZmFsY0Z4V1JWbzFRYklDUXkrNHdxbTBPbFZ4Kzk5M0VWOTM3RHhjbXlzSEk3b0I3N1l2dmJCWVd4aUxuREd2Y0srN1lWWkdlaTFIVWY5MkgzMmdXUVo0NWZWeHI3ZTFOUVR4NE9KZmdjSGJMcjkzdnJBL2NiOTlZVjkzN0R4Y2ZId2xEN2ZmdDlWRkpQVDFQRDkzNGU5d24zNVJYN0FDSXkrNHo3amZRMTl3RDI4dUgzamZlTUpPUWdIdzc3Um91dkFmZE40QVBLK084VllnZjNEcFVGKy8zM254MzN0L2dDQ2l1TDNmaW91QUgzOE9VRHcvY0JDaVorOTk0ZCtBRlJDaUQzVmNvUzk4SGVPUGRRRTZENGZmZFZGY29IRThEZ0hTcCs5NmdkZm13S0xINjQ5OFRJRXI3bE1lZjNoT1FUNlBlZ1p4MzdFWXVWK0w3ZEFhZjRNUVAzQXBYM0x3b3NmcmY0MjdnU3ZQZXBDcnhQSFRmM2xQZ1ZIWGQxSFNYNEhCMnk2L2Q3NndPdnFCV3RkcTNCQlZhendYWEJHL2J5NGZlTjZuelRjcjhmdHM5cW4ydFpCY1JrVmFKVUcvc0FJakw3akNtYlE2VldIOEgzY3hYM2ZzUEZ4N0t2Y2p1Z0h2dGYrOWdGaGJDSXVNSWE5d2o3dGhWbFo2SFhkUi8zWC9mWEJaQm5qbUJYR3Z0OVZGSlBIZzRqZnJqNFlya0JyT2ozamVjRDk0LzRzQlg3QlNJMCsxUDdWUFE0OXdYM0JmTGU5MVQzVXlUaSt3VWYreEg3cWhYM1NNYS96Y3JJVnZ0SCswZE9XRXhKVUwzM1NCNE9JNHV2K0g1M3FYY1M5MnpnRTdEVitIVVZZZ2YzSXBjRis0WDNqUXI3SWFNRmlyMkt2cjBhOTBBSEU5Q085eU1GRTdCOWxRVU9JNHZkK0RDNUFmZmg1UU81OXdFZEkvc1orQXdLOS9UaVJ1UVQ2UGM5OTRsUkNpUFV5dmdpZHhMM3ZONDQ5MUFUMFBoNDFCWEtCeFBnNEIwait4bjNwd3I3R1d3S0kzNjQ5OFRJRXJQbE1lZjNoT1FUNlBlVlp4MGord3lWK0w3ZEFibjRNUVAzRlBzQzl5OEtJMzYzK051NEVyajNxUXE0VHgwajl4ekg5NzY0QWE3azk0YmxBK2Y3SUhVZFZYNjQrR0s1QWE3cTk3WHJBL2VvK0xBVit4SDdDRFg3VlB0VTl3ZzQ5eEgzRVBjSDN2ZFU5MVQ3QitIN0VCLzdKdnVxRmZkSTBiL1gxTkZXKzBmN1IwVllRajlGdmZkSUhnNzdQSXV2K0g1M3FYY1M5MWZnRTdESytIY1ZZZ2YzR0pVRis0WDNueDMzUUFjVDBJNzNJd1VUc0gyVkJRNHJpOTM0TUxrQjkrcmxBOEwzQVIwbSt4bjMzaDMzaVZFS0lOVEsrQ0ozRXZmQjNqajNVQlBRK0gzVUZjb0hFK0RnSFNyN0dmZW9IZnNaYkFvc2ZyajN4TWdTdnVVeDUvZUU1QlBvOTZCbkhmc1Ird3lWK0w3ZEFhZjRNUVAzQXZzQzl5OEtMSDYzK051NEVyejNxUXE4VHgwMzl4ejRGUjM3SUhVZEkzNjQrUEc0QWJQbjkzL29BL2NZOStnVjk0TEV4c25IdzAvN2dmdUxVMDVQVFZMSDk0d2U5d3YzNmhVZ0l6SDdrUHVhOHpEMjlQUG05NXIza0NQbEloOE9JNHV2QWZkdDN3UGcrUVVWWWdmM0dKWUYvQlQzalFyN0lxTUZpcjJLdnIwYTk4NzRBZ29qaTkzNHY3Z0I5K25sQTd3VytDL2QrK1VHdGJhMHRLV25DUGNxOXpLOHplTWE4bFBVK3hVbU1Wb2lnQjUybHAxL29SdW5uSjY4bUIrZDBBV1BuNXlNbUJ2VXVsUTNPMXM1S2lBZlgxcFpVbFpSQ0E0amZyajN2TDMzbDdnUzkvWGhSdVVUNlBjKytBNFZXYnNIOGIxU016TlZUQzE4ZUl5UWRoOSt2d1c5ZlgraGFodDBlNEYwZng4bm5OZGg3UnYzSE9UZjl3RGtXY3dsb0I4VDhONm91OG5UR3U1QXpmc0pNRDloTlhrZWI1U2VncUVicnBlZ3RwY2ZtYjhGanB5YmpKY2IyYmhmT1RoVldURWZEaVAzWXNvUzk3emZOL2RRRTZENGVQZGlGY29IRThBaitDNVFCdnU5L0RnRlZ2ZWsrMkxmOTJJSE44b1YrMmdHOTJqM3hBVU9JMzY0OTlySTl6emRBZmd3SGZmNkhmZHQ1QVAzZFg0Vjl5RG81UGNZOXh3eTF2c1dhbTJIZzIwZmwvZElCZmV1M2Z2YkJuYjd6cWVEQlpLcXE0K25HKzNIVWlNb1Zra3BlWGlOa1hjZmZjRUZ3SDErbW13YmRIaUFkSUlmTGFETFhQRWJEaU4rdVBmUnlCS3k1akRwOTRQa0UrajNsSDRWOXduajEvY205eEJCMlBzQkh4UFlWbGgxWUdJZm12YzA1TzczVTdtRnF4Z1Q2UHVNYi9zYiswRDdZUnI3Uzk0Zzl4b2VqYmdWUEZyZTkwUWZqNHVQanhxdHNicVh0QnZRdWwzN0Fmc0FYMVZGSHc0amk1WDQxZDBCdmZneEEvY1psUldWZ1FYZEJ2ZUMrUDRGdnZ3eE9mZnZCdzRqZnJmNDhyZ1N0OTVOMi9kZzFsWGdFK1MzOXpBVit3VGhVdmNNOXdqazAvUG1XOEludlI0VDJPZkJwTW05R3VaSXpTSWtOMHNsUHE1TjRGc2VFK1F2WFZwVlFob1QyUEQ0Q3hYTXZMVER5NjVWVkV0M1kwOWNIaWE5ZEw3QUdoUGs5d0Q4aUJWQlY4UFd6NnF6eTdNZjl3UlhyMk5PR2tOY1ZVVWVEaVAzb01mM3liZ0JxT1QzaHVZRDRua1Y5NWpIOC9kRTkxb2E5elk5OC9zWCt4STBOdnNVK3hIalAvVy90NXVycmg1MCt5STZLdnRCVWdpMCtGNFY5TUxCek5POVJmczFmb3QraW40ZWNXeHBmbDhiUVZHNDlCOE8rOFIrOTNJZGZxa0tEdnZFKzNUMzlnSFo5eHNEOTJtbzV3cjd4SDczSS9kdzkzSWQ5L0twQ3Z2L0JHMEtEdnZFOS9MM0l4TFo5eHY3R3ZjaUU2RDNLdmZ5cVFvVHdNcjcxZWNLOTd6NEpBcjNNdmNpRkhEM1Z4MzN3QmF6cXF1eXMyeXJZMk5zYTJOa3FtdXpIdzc3ejM3M0Z2akxkeExiOTF3S0UrRDNKWDczRVIwVDBLMEtEdnZQOS9yM0ZoTGI5eFV4L3dBeWdBQVR3UGNrK0h3VloyOXRhR2luYmErdnFLbXVybTZwWng4VG9QZGlIZnZQa1hiNHkvY1dFdHYzRlRIL0FES0FBQlBnOXlUNVBoVm5iMjFvYUtkdHI2K29xYTZ1YnFsbkh4UFE5MklkKzFCKzl4YjR5M2NTNFBkOEhSUGs5eWwrYXdvVDFQYzBIUlBNOXpNS0UrVDM5aDBPKzFEMysvZ1RIUlBnOTUvNGZmY2FIUlBJOSs0ZEU5RDM3eDBUNEVkMWEyRk5HZzc3VUpGMitNdjRFeDBUOFBlZitUNzNHaDBUNVBmdUhSUG85KzhkRS9CSGRXdGhUUm9PL0RuNWRYY0JzL0lENS9sMUZmZDVIZnVOK1hWM0FiUHkwUElENS9sMTl3OGQvQno1Z1hjQnNOd0tEdndjK1lGM0FidjREZ3I1SnU0ZER2dFIrWUYzQWJEM0U5ZmNDdmRmRnZkVEN2dFIrWUYzOStZSytTYVNIZndjbDNZQnUvZ09Dc2J1SFE3N1VaZDI5K1lLeHBJZCs5TzkrQ2tCcWZkNUEvZC92ZUVLRHZ2VHZmZ3BBYVgzZVFPOStGdmhIUTc3Q2IzNEtRR3ArRU1EOTMrOTRRcjRLL3RFNFFvTyt3bTkrQ2tCcGZoREE3MzRXK0VkaVBkRTRSME85MWtLOTFrSzkxa0tML2ZSQ3ZoRStBOEsrRVROL0VRR0R2ZThIU1AzMFFyNE9QZ1BDdmc0emZ3NEJnNzN2QjM3eFBlWjkzSWQ5NW1wQ2c3N3YvZHQ5M1VCdGZkeUEvY3Q5MjBWeHIrNXpzMVh1VkJRVjExSlNMOWR4aDhPTDBuTkFiUDRSQU96U1JYNFJNMzhSQVlPKzUzNWdIY0IyOXNEOXpUM3F2YzRIZnVkK1lCM0FmZEgyd1AzUi9lcTl6Z0srN0Q3TS9kckN2bWY5MnNLQWZMVUEvTDNNdmRGSGZ1dyt6UDNhd3I1bi9kckNnSDNKTlFEOTIzNEl2ZEVDdnVZK3pQM2NBcjNDZFJzd0JQZ3MvZVczZ3I3bVBzejkzQUs5eGpBYk5RVDBQZkU5NzdmSGZ2VDZ2Z3BBYW4zZVFQM2YrcmhDZzc3MCtyNEtRR2w5M2tEdmZpSTRSME8rd25xK0NrQnFmaERBL2QvNnVFSytDdjdST0VLRHZzSjZ2Z3BBYVg0UXdPOStJamhIWWozUk9FZER2ZThDdmU4Q2kvM3BjMEJzL2hFQTdQM3BSWDRSTTM4UkFZTzk3c2Q5N3NkKzUzN01mcEFBZHZiQS9jMDk4MzNPQjM3bmZzeCtrQUI5MGZiQS9kSDk4MzNPQXI3c1BzUTkyc0srWi8zYXdvQjh0UUQ4dmRWOTBVZCs3RDdFUGRyQ3ZtZjkyc0tBZmNrMUFQM2JmaEY5MFFLKzVqN0VQZHdDdmNKMUd6QUUrQ3o5N25lQ3Z1WSt4RDNjQXIzR01CczFCUFE5OFQzNGQ4ZCtDUWRqZnMwRmNZRzk1LzUrZ1ZRQmc3MzRSMzZmRkFHRHZna0hmZmMrelFWKzUvNStnVlFCdmVmL2ZvRkR2ZmhIZmhXVUFiRzl3d1YrRUpRL0VJSER2czUrWDkzRXZkTjBmLy95b0FBcnhQQTkzRDVmeFYyZllGeGVKRmprbDRmRTZDU1hHQ2dCYU5hWnFGMEczaDlmSGRudklmYmZ4KzZnMnBvQlYxZGFIQnZHbmViZjV1c25MZk1yQjZpdGFGaEJVcXNuVityRzV5Ymw1K25hS1ZkdWg5cHJycVRCZHFYdlkyeEdwOSttbmwyWTNaeVdSNWdkcEs2QlJQQWtiaVR0SjBhcFh5VmR4NE9MdmhLNHpUaUV2ZG80amZjRTFDeitIWVZjSmg3cmFhMGxKR3JIcitXQlh0SWcyaFVHbUdWK3hPYysyY2VwZ2FjOTJlVjl4SzJHaE9RdzRPdGU4NGU5MjRLRTZEM25SMFRZUGZqSFJOUWFYNTZjQjhPTHUvajk0N2pOT0lTOTJqaU45d1RxTFAzSkJWd21IcXRIaE93cHJTVmthc2Z2NWFCVndXRmI0QlBiUnBwbkgybXBwdVpyYW1BeDRhbkhvQy85MjRLRThoeFlZS0VheDlYZ0FXYnpaT3J3aHJCZzZ0N3pCNzNiZ29UMFBlZEhST3c5K01kYVg1NmNIQ1llNjBmRTZpbXRKU1JxeCsvbGdWN1NvTnFWaHBWazJxYlNSNVhsZ1dSYTJLVmNCdHBmbnB3SHc3N0JTYTUrVXE0RXJqUmN0ajNNZGR5MGhQazk0UDNkQlZOcUUyb3lCcW5tS2lpb0I2amRxdDR0WGdJMVdxL2MxTWFiMzVyZEhRZWI2Sm5ubWViQ0g3NzJSVVQ2UGNEeXRiWnIzNm5kcVFmRTlTOXFxbTJ4QnJlVkxJbHVSNUpxVk9yeUJxenE2L1RrWkdMaXBFZW9WNEZaWjZkZXFrYm9KdVZwWlVmeG9wR3ZpOGIrd3BVUWtab2xtdWtiUjhUNkZScmNXQlhHakhOWk9WZ0h0bG11SE5VR2wxcVpFS0Zob3VNaGg1MHVBV3dlWGljYmh0MmVvSnhnaDhUNUZEUVYrWWVEb1gvQW02QUFPSWRwUGZCeGRjVFVQZ1U5MGtWSW9zamlDWWUzUWFJOG92ejhocjNSZ2NUa1BmeEhSTnd0UHRiQi90ZSt4UW0rekQ3TGZjQyt3SDNVNG9mK0c3RkJ3NzM3UjMzQ2RUM1Y3Vm0vd0FxZ0FEL0FLR0FBTDBUL29EYzkrVVY5NmtkK3p6N0ZmY0w5MVVlV0JiNERRcjNWZmN1OXhyM2J2ZU1IUjc0Q1BzMkZUMVd3L2IyeGNUVW01MklncDRmbGtNRnRnYUo2Z1doWkd1UllCdjdBemMxK3dyN0M5czM5d2dmRS8yQXRiT1VucThmanVvRlh3YUFSQVVUL29DRGRYV0lmUnNPOXl0OHMvY0tyMmYzdUIzNE1CMnY5MFN4OXdTekVxbSs5M0hKOXhETzl3eTlFOS9BK0E1OEZmZFY5eTczR3ZkdTk0d2QrQTBLSDdNRSt6ejdGZmNMOTFYM3FSMGYreHozQ2hYM1RnWVR2OENzQjB1U0JlNmJCL2NVdXNYTjJGZThMQi83T21nR3g0VUZFOS9BKzhrSFQ0VUY5eS8zMGhYS3AyMVJWMjluUkI5eTkwUUdEdnNsOTlHcTB2OEFFSUFBMFFxYy93Qk5nQUQvQUJHQUFIcWN5S29TcWE3d3RzQzU0YTRUNzhETStKZ1Y4ZGJLNU9YV1RDVWxRRWt4TWtETjhSNW9GdnNQNUQvM0F2Y0E1OWYzRC9jUEx0UWdJUzVDK3c4ZTk4WTVGWE9PZzdTR29IdVljNUFacjVTWW9hQWFxVytnV3g0c0JoUDN3SHNIcUlnRit6Z0hib2dGZk8rYUIyK09CZEtaQjU2WWhIcU9INVJnQlhhUGxZYWtHNWFSakk2WUh4UHZ3UHNHOTB3VnBwaCtjbldBZVc0ZmZ0a0dEdmNLK0F1bmIvZ0VDdjhBNllBQS93QWRnQUJ1cUJLWXI4ck15ckRUcVBkb3pCTkg0UGZQK1RFVkV4dmdid2V0aUFYN2VRY1RoK0JraFFVVEYrQnY5Z2NUaCtDbkJ4TVg0UGVNQ2hOTDRQdE9CMmFIQlcvM0g2Y0habzhGOTNzSHNJNEZFeWZncHlvSEx2dGVLdmRlQmZ0UCs1NFZZcEFGOTN6R0I1TlVCYTBHaWQ4Ris1b0dpVGNGckFhVHdnWEcrM3dHWW9ZRmIvY25CdzdjK0FPbGVhbHRxdjhBNllBQS93QWRnQUI0cEJML0FCK0FBTGYvLzlTQUFNUG94MUQvQUNhQUFQOEFXNEFBcVBkb3pCTlZZUGVxK1RFVmJ3ZXRpQVVUTldEN2VRZGpoUVZ2OXdDbkIvZU1DaE5WWVBlK0Npc0hMdnRlS3ZkZUJST1ZZUHVKKzZnVmZIMk9rSDBmZ3NRRlpRYUlTQVY3cEsrRHJCdlV0N0hCc25halRhWWZFMHJnZEpVRmI1ZDRuYUVhb3FLYnFKYVZpWWlXSHBWVEJiQUdqc29GbW5ac2syc2JTV05tVjErcGRjQnhIeE9WWUtDQkJhcDltWHQ0R25OMWVXY2VEdmQ3K3kvM29SM3hrQjMzZXpyM29SMzNSSkFkUGFCMjkwamM5eGJkOTBWM0FhVDRjUVAzdVJhNkJxZjNTQVh4M0RFR24vY1dCZkhkTXZnZ0N2c3krQ0FLSXpubUJuZjdGZ1VrT3VZR2IvdElCYm9HcC9kSUJmY3lCcGZjRmZzeUJwLzNGZ1gzTWdZTyszNzROUGR4Q3ZrRFd3b08rMzc0UGZnc0N2bXd0eDMzclIwTyszNzRQZmR2Q3ZnOStEb0tFOUJ0SFJQZ0xqSUZEdnQrK0RUM1NRcjVJVXNLRS9CUENnNzdmdmlpeEFIM1hzd0RxL2lpOXhZSyszNzROUGNDQ3ZnMGFoMzdmdmcwOTNFZCtEU0JDdnQrK1lQMzlSMzRRL2N2SGZ0KytEVDNTaDM0bGxJZCszNzQyUGVGSGZnMGd3cjc5UGZROTlnZCtPblVDdnYwOTlEM3dRcjQ2ZFFkKy9EMzJ2ZkFDdmZhOXpBZCsvRDMydmVzSGZmYTl5NGQvQWo0TlBIMytCMzROQlgzRHdyOEZQZkM5OW9LK0ZTM0N2d0krRFR4OXhUeTkvZ2QrUm9WcHFHanA2ZDFvbkJ3ZFhSdmI2RnpwaC83ZWdUM0R3cjcrL2pBdlFHNTl5MER1ZmpBRmZjdHZmc3RCZzc3ZS9qQXZRRzU5NjBEdWZqQUZmZXR2ZnV0Qmc1aytNQzlBYm40YlFPNStNQVYrRzI5L0cwR0R2dCsrM0gzY1FwOVd3b08rMzc3YVBnc0N2Y3p0eDMzclIwTyszNzdhUGR2Q3Z0bytEb0tFOUJ0SFJQZ0xqSUZEdnQrKzNIM1NRcWJTd29UOEU4S0R2dCsrd1BFQWZkZXpBT3Ird1AzRmdyN2Z2dHg5d0lLKzNGcUhmdCsrM0gzY1IzN2NZRUsrMzczQnZmMUhmdGk5eThkKzM3N2NmZEtIZnNQVWgzN2ZsTDNoUjM3Y1lNSysvVDcxZmZZSFdQVUN2djArOVgzd1FwajFCMzc4UHZMOThBSys4djNNQjM3OFB2TDk2d2QrOHYzTGgzOENQdHg4ZmY0SGZ0eEZmY1BDdndVKytQMzJncjdVYmNLKzM2QzkzRUs5MXBiQ2c3N2ZvdjRMQXI0QjdjZDk2MGREdnQraS9kdkNoYjNjZ29UMEcwZEUrQXVNZ1VPKzM2Qzkwa0s5M2hMQ2hQd1R3b08rMzZMOXpKU3hCTDNYc3dUWUt2d0ZmYytCaE9nSnN3SEUyRHd5OFJMOTRsY0IvYzVDdnQrZ3ZjQ0NvSnFIZnQrZ3ZkeEhZS0JDdnQrb0hiMzJ2ZjFIWkgzTHgzN2ZvTDNTaDNrVWgzN2ZwZDI5emozaFIyQ2d3cjc5UHNCOTlnZDkwRFVDdnYwK3dIM3dRcjNRTlFkKy9Bbzk4QUtLUGN3SGZ2d0tQZXNIU2ozTGgzOENJTHg5L2dkZ2hYM0R3cjhGUHNQOTlvS29yY0srMzczaVBkeEN2aFhXd29PKzM3M2thajRCSGVsZHhMM01OSVRzTnI1QkxjZEU5RDNyUjBPKzM3M2tmZHZDdmVSK0RvS0U5QnRIUlBnTGpJRkR2dCs5NGozU1FyM01Bb1Q4RThLRHZ0KzkvYkU5NGwzQWZkZXpBT3I5L2IzRmdyN2Z2ZUk5d0lLOTRocUhmdCs5NGozY1IzM2lJRUsrMzc0MS9mMUhmZVg5eThkKzM3M2lQZEtIZmZxVWgzN2Z2Z3M5NFVkOTRpREN2djA5eVQzMkIzNFBkUUsrL1QzSlBmQkN2ZzkxQjM3OFBjdTk4QUs5eTczTUIzNzhQY3U5NndkOXk3M0xoMzhDUGVJOGZmNEhmZUlGZmNQQ3Z3VTl4YjMyZ3IzcUxjS21SMzNIZ3I3TnZnOXJXbi9BQ0tBQVAvLzNZQUFyMmYzdUIzL0FGaUFBSzRTay9jbzZQZEtFeTZUK0QwVjl5aXJCbEtUcU9BRjl5Z0dFMDZxTkZHRUJXejNTZ2NUanFvSFc1SDdJUGdSQlY4R0V4NzdHdndOVW9JRjk1UDNGQlg3RGdiSDkwRUZEdnRMOTVjZC93Q2xnQUNnZHF6L0FKU0FBUGRnSFJMazAvY2UwRmpWRTVhQXEvZzlGZmRJQnZjWXVzckJIeE9tZ01ObXNqR1ZIaE9uQU5lWnA3SzNHc1JhdFMwZSsxVUdFMXFBOXgwS0U1Y0E5ei8zOHhYTHEzVmFWMnR4UUI5czl5a0dyUHRLRlJPV2dPR3djVkZWWkc4OEgyWDNPZ1lPKzA3NE1xNzRCcTRTcmRyM2VmOEFLSUFBLy8vZGdBRC9BQ2lBQUJQdzk1bjRWUlUxVGNUM0ZQY1V6OFRmb1orSGdhQWZtVHdGdFFhSTdBV2hZVjZVWkJ2N0VpeEIreWI3Sk9VLzl4Y2ZFK2k3dUplZnNoK082d1ZoQm40L0JSUHdnSEp5aFhNYkR2c2E5NWNkOSsvM1lCMFM1TlQzV2RrVG5LdjRQUlgzUndiM0UrN1k5eG4zRmpMWit4QWYrMVFHRTJ6M0hRb1RuUGRLOS9NVjRjWk8rd1g3QkZCTk5oOVc5L0FHRHZ0Zzk1Y2Qvd0NoZ0FDdi93Q1ZnQUQzWUIwUzVOVHFyNXI0RUFyLy85bUFBUGdRQ3YvL3pZQUErREVLLy8vbmdBRDRNUW9UcmlEMzQvaXJGUk91Z0gxQUJmc3o5ellHRTY0ZzVnYVRXQVdyOXg5ckJvTlhCVEQzS2dZVHJ3RDNKZ1lUcmtDWlFBVVRyd0N6Qm9iM0FnWDcyUVlUZGlEM0hRb1Ryb0JyOStZSGtQY0NCUTc3Yi9nOTl3d2Qvd0NoZ0FDdi93Q1ZnQUQzWUIwUzVOVC9BR09BQVBlNEhXZXZscjlsc1JQY2dQZlgrWEVWRTkwQXN3YUg5d0lGKzlzR0Urd0E5MXdkOTFPckIwNlNCZmN5NmdlVVVnV3I5eVVHRTlvQWF3YURWd1VyOXlvR0U5MEE5eWNHRHZzdCtES3Uvd0NUZ0FEM2t3cjNUcTRTcmRyM0tmOEFmb0FBK0RBSzBWai9BQ2lBQUJQYStDUDRWeFVUdXZja0I3R1FCUlBjclB0RGFnY1QyczZFQmZzYUI0UjNlSWgwR3kxUHlQY1I5eEhNeHVJZkU5bWpvWWVDb1IrYVBRVzFCb2pzQlo5bVlwUlhHL3NiTXpUN0dQc2M1RGIzRng4VDJzRzVsNlM0SHc0MitEMzNEQjMvQUtHQUFLNy9BSmFBQVBjTUhRSGsxUGRYMUFQM2IvaGRGVktTQmZjeTkxZjdNZ2RTaEFWcjkwLzN6QXI3Si90WDl5Y0h4UGZnQ3ZkUEJ3Nzc5Zmc5OXd3ZDkrLzNEQjBCNU5RRDkyLzRQUlgzekFyNzZBZFNoQVZyQnc3NzhmZlIzZjhCbUlBQTl3d2RBZTdUQTZuMzBSWEJ2YTNBbngrWnNvNnQ0aHIzaEFmRmtnV3IrMWRyQjhpRUJZNzdaSXdzVlJwY2gzQjRkaDU5bWdXZ2VYeVdlUnQxZTNwd2h4OXdrNldBcGhzTyt6TDNseDMzN3ZlVENtdXJFdVRSOXdEM1FQczI5eW9UVnZlZitEMFY5MEFHRTVhckIxdVIreGozY0FVVFpmRDNDd1VUVGM2VUJSTlZxL3NxYXdlM2hQczIrMVFGOTFRSHgvZmdDdmRPcXdkUWtnWHdCeE9Xd2N2dit6cGRoUVVPKzJYM2x4MzM3L2NNSFJMazFQY2l4Uk80OTlmNHVCVjRNd1g3SXZmc0JzYVNCYXY3VVdzSHhJUUZFM2o3NkFkU2hBVVR1R3YzMndlUjl3OEZEb0w0UGF0cjl3d2Q5L3NkcjJmM3VCMzM3dmRnSFJML0FGZUFBUDhBSVlBQTk4M1RFMGVwK2Q4VmF3ZkZoUVVURjRyNzV3VVRoMDZDQlJNWGEvY3BCeE9IcXdjVEoxV1RCZmVyQi9jbSs5TUZvZ2IzSlBmV0JSTkwrNjhIVllRRmEvZE1xd2RSa2dYMzZBZkZrZ1dyK3hBSCt5SDd5QVVUUi9zaTk4Z0ZEdnNLK0QydlovZTRIZmZ0OTdnZFo2OW9yaExmcmZlTnJoTk9xdm5mRldvSHVvZVJoQVVUanZ2aUIxU0RCUk5XYS9jMHF3ZEVsQVgzdEFmM2xQdmpCYWY0RkFiRGt3VVRacXY3TkdzSDBJSUYrNUlIRTA3N2N2ZTdCUTc3SFBneXJ2Z0dyZ0d0MnZlRzJ3UDNCZmtPOTlRSzl3MzNjQlVtS0VEN0pmc243VUx4OHUzVzl5WDNKeWpVSlI4TysyWDRQZmNNSGY4QWZZQUFyZjhBdTRBQTkyQWRFdVRVOXlQVEU5ejREZmxpRmRoVXUvc0hIdnREQmhQczkxd2Q5MU9yQjA2U0JmY09uZ2NUM1BjandNZlRIL3RJNVJYVnJXeFFVV3BqT0I5dzkxQUdEdnNjOTdtNTJLeHJxL2dHcmhLdDJ2ZUcyeFBjOTkzM3VSV25xNUdab2grQnJRV0ZkM3FKZmh0YWFxaTdoeC9sbWRyVjl4WWE5eWNvMUNVbUtFRDdKUjRUdlBzVjEwUGlleDRUM0VTUHVWYmRHL3RzOStuMzFBb08reno0TmJkbjl3d2Qvd0NjZ0FDdGVaMy9BSnlBQVBkZ0hSTGsxUGNrMGhPWCtBajROUldnbW8yUm14K3JCMUdUZHRSOXduYXBZcFVaMnBpb3VMb2F6Rkd6Sng3N1R3WVRhL2RjSGZkUXF3ZFJrZ1gzTGFVSHZhQjZYNWNmRTZlZ1BBVVRsMTZYb255NEcvc3orQnNWeTZoeVdCOFRaMTlzWmtZZVgvY3hCZzc3bC9neXIvZ0Vyd0cweWZjbnl3UDNNdmhXRlc5NGtKUjJIMzdYQlY4R2h5NEZkYXU5Z0xrYjVzMjUwY1JzcVVLeUgyU2dCV0NpY3FDd0dxK3RvN3FlbkllRG14NllRd1czQnBEakJaOXRaNWRlR3pkTlhVTlJybW5GYkIrMmN3VzdjcVI4WXhwbGFuWlFIZzc3Vy9nOTl3d2Qvd0ZiZ0FDdUFmYzYxQVAzdy9oZEZVdVNCZmZzNmdlWU9RVzBCb2IzQ1FYNy9RYUcrd2tGdEFhWjNRWHArK3dHUzRRRmEvZGRCdzc3RGZneXdmOEJVNEFBOTJBZEV0elU5Mml1RTdqM2gvZ3lGZWZOd3ZjYUgvZGVCOE9SQmF2N01Hc0h6SVVGKzFvSEoyVmtSVXRqc08wZUU5ajNYUWZMa2dVVHVLdjdVV3NIdjRVRiszSUgrdzdPWE9vZUR2c3krYnV2OTQ0ZDkwem05eWdUalBkbStEb1ZyZ2IzRy9nUnc1TUZxL3NvYXdmQWd5ajdyUVVUVENQM3JnVVRITWFTQlJOTXEvdE1CeE1jYXdjVExMMkZCUTZzL3dNbWdBRDN1QjFuci9lT0hmZEt3UGRKd1BjbUV5ZjRRUGc2RmE0R0U0ZjNBZmdRQlJNUHc1UUZFMGVyK3lackI4S0RQdnVnTHZlZ3laTUZFeWVyKzBsckI4aUVML3VsUGZlbHc1SUZxL3RLQnhNUGF3Y1RGOENGOXdqOEV3V3RCdlQzeVFVTyswRDRQYTFwL3dBaWdBRC8vOTJBQVBndUhmZnYvd0FqZ0FCbzk1WUthNnNTbHZjbit5SDNVcVAzVWZzMDl5Z1RncUQzTXZoZEZWeVA1UGNoQlJNaW9PRDdIMVdGQlJPQ29HdjNVUWNURXFDckIxS1Mrd2ozVUFVVFFsRHk5eTdGa0FXcit5aHJCNzJHT3ZzU0JSTkVVRC8zRWNHUkJSTkNVS3Y3VWdjVFFWQnJCeE5JVU1XRTl2dENCUk5Da1BzQyt6eE9oZ1ZyOXljSER2dE4rRDMzREIzMzd2OEFKSUFBOTQ0ZDkxQncwNTMzSmhPUzk4djRQUldyQjBxU0JmY1VCeFBEOXZkbUJST0x4SlFGRTVPcit5WUhFNHRyQnhPbHZvUTIrenNGRTVRNDl6ekJrUVdyKzFCckI3NkZCUk9TOXdMN2FRWDdGQWRKaEFWckJ3NzdmL2c5cnZmd3JoTC9BQnFBQVA4QUo0QUEvLy9ZZ0FEL0FEbUFBUGRreEJQWTk4bjRzaFY2T1FYN1V3YjNndmYzQmFmN3lnZUcrd2tGRStpMUJoUFluZDBGOXo4Rys0TDc5d1Z2OTkwSGtmY0pCUTZaSGZ0aitETzU5NGU0RXREL0FEMkFBUC8vd29BQXovY3owUlBZOTNmNE14WFl5Y1gzQS9jR1Q3NUdaV3Q3Ym0wZjkxRUhmcEQ3QUcwRjkvd0svQWdIVzRJRmJ3Y1Q2UGFDa0xVRkU5aHRwcXArcnh2UTl6b1ZNR2h1WDI1eWw2QnhIdmREQjZLcHBaZW5HN2FyYnl3ZkR2dWsrRE8vOTR1dUFhblEvd0NHZ0FEL0FGQ0FBQVAzV1BsZUZabVdpb2lWSDVCdkJXU1NtbjJoRzU2V2xaK1BINzZFV0xKTEd6WStUQ0lqeUUzb3pybXR3NTBmZVpZRmEzWndlbDRiVGwrejN0KzFzOElmRHZ0cStETzUvLy9ZZ0FEL0FDaUFBUGVHdUJLbzB2YzB6Ly8vd1lBQS93QStnQUFUdU8vNDJoWG9ycWk5b2FWK2RLWWUrME1IZG5KMGdIQWJYV1NrNng4VGRQYzkremdWRTNqM0FwSUZwZ2RZbFFYNFF3ZUJrUHNEYlFYMy9BcjdGZ2VvY25DYlp4cy9TRlg3QlI4VHRQc0p6Vm5QczZxZXFxY2VEdmRtSGZkUStET3JIZndKK0QycDk0UzFZYmFGZC9jUDF4TFd6a2pQU00wVHd2ZGUrRnNWVUpVRjkzb0hFOHpqdFRJR2lzZVVzcHlqa0pPVWs1V1FsWUVZZForWmZaNGJvWnFjb1kwZm80UndtR29iRTZsclo0SndjaDluYUgxcGhFY0lFNUpWaFFVVHdtYkErM3NIV0lJRmJmZEdCdzc3aS9la3J2RFJ4YWYzR0tOenVIYW5FcDdGWXMxUXcvY1J6WDdJaEpVVDVpRDNPdmZIRlZScG03U2VrWm1abkIrSG1KcUpuQnZUQnJtY2VITnFaWEpDSHhQbFVQc1c5K01WWVo1c3JYb2VFK1RRYW5WK2RXOGFkWlowcG4wZUUrWWdYblo2ZFc4YVg3TnA4dmNIeU1QSXdtaXRPQjRUNk5CR0JtTi9scUdYajVXVGxSK0dtcDJKbmh2WXZiWExvSWFkZ3BvZnpMZ0dnWkVGRS9GUVFIQUZFK1ZRblhWcmxXUWJQbGxpU2gvM0ZOa1ZzYUZzWFZ4MGEyTmxkcW02dXFLcnNoOE8rMVQ0UGFsdHJmZUF3UkxRei9jaXp4TjQ5NVA1Z1JWZ1kzbGZhQi8zWWdlQmtQc0RiUVgzL0FvVHVQd0dCMXVDQlJONGJmYzJCeE80cVFkZGxBWDNUZ2VxcnFhWnB4dXltSFpWSHhONCt6RUhFN2hjZ3dVVGVHMzNOQWNUdUtrSFhwUUY5ejRIRTNqYWE2OVBIZzc4SS9nOXFmZTBkNlYzMitZU3h1dzN6eE80OXZmSENoUEUydndVRmFrSFhaUUY5NnNIZ1pIN0FXSUZid2UraFFYN1pnZGJnZ1Z0Qnc3OEwvZWUyUGdpZDZaMzNPWVN3K3c1enhPNDgvZkhDaFBVYXZ2aUZTdUphSGxzSG9xSWlZbUppSUdWR0o5NGU1TjNHM1I4Zm5TRkgzYVBvSGU3RzZ5cGxhZWpINjZ0a3JUcUd2ZWZCNENTK3dKaUJYTUh3SVVGRHZ0NitEMnA5NHYzbGdvUzBNL045ekFUMlBldkhkTUhzN1RyK3l3RjZLa0dYWlFwOXpUVDFjeVRCYXI3TUFjVHVHd0h2SVQ3Qi9zT0JmZlFCNEdRQlE3OEpQZzlxUUhRendQM3J4MzRRUWVCa0FVT21QZzlxZmVFd1lWM0V0ZlA5eDNPOXgzT0U5ejRZUG1CRldCamQxMW9IN2grYktCZ0cyRmxkMTVxSHhPOGc4YUFrU2RpQmZmOEN2dG1CMXVDQlczM05La0hYNVFGRTl6M1VRZWtxNm1jcEJ1dW1uaFNIL3N2QjF1Q0JXMzNOS2tIWHBRRjl6MEhrb3VSaXBFZXBLdXBuYVViclp0NFVoLzdMd2RiZ2dWdDl6V3BCMTJVQmZjOUI5cHNzRTRlRHZ0UStEMnBiYTMzZ01HRmR4TFd6L2NnenhOczk1YjVnUlZmWm5wZFp4OFRYSVRFK0FnZEU2eGNnd1VUYkczM05BY1RyS2tIWHBRRjkxRUhxSzJtbUtrYnJacDNWQi83TUFkYmdnVnQ5eldwQjE2VUJmYytCeE5zMm11dlRoNE85eDRLKzEvNEV3clh6L2N5MFJQczk4TDQyUlV3YUc1ZmNIU1dwRzRlOXo0SG82aWltS2tidDZ0dkxCOG0rNnNWVXBVRjl5Z0hiS1dvZmE4YjFjckY5d1AzQmsrK1NHSnJlR2x0SHhQY2c3cUJrU1ppQmZmOEN2ditCMWVCQlczM1JRY08rM0Q0RXdxcDBmYzN6eFBzNy9qYUZlV3ZxN2FvcG4xeXB4NzdPQWR4Ym5GOWJSdGhaNmZvSHhQYzkzdjNOUlVUN0grUlZWa0ZySEZ0bkdJYlEwbFYrd2o3Qk1aWHpyZXJvYStxSC9zMUIxR0JCVzMzUmFrSFdKVUZEdnZMK0QydDkyVGRoWGVsZHhMV3p4T1k5MXY0UFJXcEIxT1ZCUlBJOXk0SGxxbWNwS2FnajRZWWU1cVloSm9icEoyY3BoK29obldVZUJ0bVpHcFZkQjhUcUlMYytBZ2RYWU1GYlFjTys4UDRNNjczbks0U3JiSm54dmNMeGhQWTl5RDRNeFhpdXJmRHRuS3NSNk1mZHBJRldaeDltS0VhcHFDWXRaeWFoNFdaSHBWWkJiQUdqOUVGbTJ4dWxHWWJQMTFpVlY2cmJiMTRINnFBQmJsN25uMXhHbTV6ZlZ3ZUUraHplbytWZUIrQXdnVmpCbzFCQlJQWWQ2MnFnYk1iRHZ3TytEYSttM2YzZXJWaHQ0UjNFc2ZQUjlBVHBQY1UrSmNWOTBnSEUyTGl0VFFHRTFLTjV3VVRWRnNHZWpFRkUweFJoQVVUcEdiQSsxa0hWTEJ5dHJHcG5xU2NIaE5rZXFJRkU2Ui9lbnlIZmh0MmZabXJIdzc3WC9nend2Ly96NEFBL3dBcmdBRDNlN3AvZDZCM3BIY1N4OC8zSDg4VFIvZ08rRDBWcVFkZ2xRWDNwQWVGa1FVVGt5Ti9CUk9qY0FlMWd3WDdTd2R6Ym14NGJCdHhkWnJISHhPSDkxUUhoSkVGRTRza2dBVVRvMjhIdFlNRit6Y0hONjFweHJhem9yYXNIaE5IbFV3RkR2dVQrVkwzbGdwc3FoS0w5enU1OXhjVFdQZFUrRFlWOXdUM3JiT1NCYXI3RjJ3SHdJUkUrMVVGRTVnODkxUUZFemkra3dVVFdLcjdPMndIczRUM0R2dXRCUTQrL3dLK2dBRDN4Z3FMOXpPMjl5eTA5eElUVHZmMStEWVZwZ1lUanZEM3JRVVRIck9TQlJOT3F2c1NCeE1lYkFjVGpycUVUdnRCQlJOT1EvZEN1SkVGcXZzc2JBZTZoVVg3UTBuM1E3bVJCYXI3TXdjVEhtd0hFeTZ6aHZjQis2OEZwZ2JpOTNRRkR2dVMrRDMvQUNHQUFQLy8zb0FBcmY4QTg0QUE5OFlLa3ZjWSt4WDNLcC8zTi9zYTl3MFRVa0QzSC9oYkZSTlNnRjZUQlJPU2dNcmp5akpqaEFVVFVvQnQ5emVwQjF1VU1mY1VCUk5pUU4vMkJSTkdRTFNTQlJOUlFLcjdEV3dIczRVRkUwbEFUamhOM3dVVFJVQ3RrQVVUVVVDcSt5cHNCN2FGNHZzUUJSTlNRRGI3QlZ1REJXMzNHQWNPKzVUM29kZjMrZmVXQ215cUVvcjNRYkwzR1JPc3lQZWhGY1MzdC9Dd0gvUDNzYlNTQmFyN0dXd0h3b1JGKzE0RkU4dzQ5MTBGRTV6R2t3VVRyS3I3UVd3SHM0VDNEL3U4ZTJONWIzQjRHWVNTQloxMmVvOTdHM2g0ZzNhR0gyNm9lYTRlRHZ1NytEMnI5NDJxRXY4QUY0QUE5d3dkOS9zZC93QTFnQUQzTmY4QU5JQUFFOWlsK1hVVmhpa0ZFK2l4aUFVVDJKM1JCZmNWQnZ0Uis1UUZjdmVpQjVMM0FBVm1CbmcvQmZzZkJ2ZFA5NU1GcEFjTzkyWWQ5M1Q1cVJWYTJ3V3dkWHFUZnh0K2ZZRjdnWkY3cVhFZjAwMEZldnY3cXgzM1poMzNKdm1wRlo1ODFNa0ZxS1dSbTVVYW0zNlZmWUI2ZzJaMEhvVDhXcXNkKzZqNFFLLzNUYTRCc0xYM1ByVUQ5emo0WkJWYlpySy92N0MxdTd1d1lWZFhabVJiSDJjRTBNVzgyZGxSdmtaR1VWZzlQY1ZhMEI4T0pmYzZ2dmR6dndIaHhQZHN4QVAzSS9mZEZjMjh1TWJHdkY1SlNWcGRVRkJhdWMwZVVoWmhtV2VpY0I1bmRRVmVjSDU5ZVJwMm0zdWZuWnFZdUtVZW9iQUZkYWl3ZnJJYnNyQ1lvYWdmb1dZRlhxYVpmcDBibjV5Y241MSttVjZtSDJhaEJhS21tYSsxR3JWOXIzU21IckNoQmJpbG1KcWRHcDk2bTNkNWZYNWVjQjUxWmdXaWJtYVlaQnRrWm41MGJoOTFzQVc0Y1h5WWVSdDNlM3QzZVpoOHVIRWZyM1VGZEhCOVoyRWFEaU4rdS9qUnZWdTdFc1hjN3JWanRQRGRFN3IzSC9pSEZSUFd5N1d2eHBRZSszY0hFN3BLb21ldXh4cjNoL3Z4RlV4a1kweUJIdmQ0QjlOd3FXMVJHdnNrKzUwVnRmTUc5d2VYME5Qc0d0NWh6UHNidWg2RmpRVVR0dmVIQjVxS200bWNoNWRWR0ZhWHBIMmlHNTZkbGFHU0g0YmFSc1F4a3dqbVlqQUhJSVJBUGlvYUo4bFY5R1VlRTdxWWhnWDdpUWQwakhTTmNwQi93aGpBZ0hXWWNodDFmSUIzZ2grUE50aFE5WWtJRGlOZTl6OU15dmdodU9kM0VyYmk5d3EwRTd6M3RWNFZFM3ozQUFmZ2tzTzRwTmR6bUJoc1cxVnZVb2tJK0NFSG1ZcWFpSnFIbEdRWVZaaWVkYXNicFp1WXBKQWZmOU5Id0RlUUNPZGlMUWY3QTMwdEx2c2xHdnNuM0N2M0VJTWVFN3o3QUFmN0N2Z0VGZmNGdTlEUm1oNzhHZ2RFbTF6UDl3RWFEaU9MM2ZkZXZ2ZXJ1QkxsNTJqRkUraTA5N0FWOGdhTmdZeC9meG85WWp0RVl4NVgrRVBkKytVSHU3R213NHpjQ0pTTGxJcVVIdmMwdmdZVDhQczVCb1M1Z2JQRjkyVWRUcUptbTJFZk13WU9JNHU0WHY4QUxZQUEvd0IwZ0FDK3hMMzNycmYzd3dvUzkyVGZwdmRVRTdrQXZmYzJGZmN5Qm1hS1o0cGtIaWFCQldQM3VBY1RlUUN6QnlTV0JZcXlpcTZ3R3ZjNXZ2czV4UGM1dmZzakJoT3pnUGNTOTZmU2x3VVR1WUN5KzFRSEU3T0FaQWZVZ1BzTCs1MEZFN2tBK3dqM250YVZCYkw3aHdjVHRRQmtCOHlEOXhqN3F3WDdIRm4zTWxMN01nWU9JeWZ1OSs2Kzl6anVpM2NTOHZkYS8vK2tnQUQvQUZLQUFFUGNFOWp5OSswVkU5VDNCQWFBK3hTQSt3NkxTbTljR1lKN2YzNTVnSFNpR0tSMGRaTnlHMnA0ZVhDR0gyeVdzblRDRzdXNW1iU3hINzNCbTlpWjl5ZVY5d1FZOXhXK0JoUGkreEVHa3VXUHZhT3psSnVZbUp5V29YUVljcU9oZzZJYnJKK2RwbzhmcW9GbG9sUWJZRjE5WW1RZlkxOTJUb0FrQ0JQWSt3a0dEaVA3Qi9jblg3ZC9kdmo3dUlGM0VwL3A5eFQ0TVFySjk3Z2RFemYzQnZmR0ZmY050ZkhTdlI1Ui9Hd0ZhcnQxejk0YUU1ZjNFL3c1RmJBR0UxZVk4dVNTMEx5VjFCbWloM3IzNVFwYUJZbDdmWXA5RzlMNDJJNktqWXVPaWhtVFdRVldsS1Ivb3h1Z29aV2trUitCd0YyNlRaK1g3aGhtQm9BdkJZeUNnb3lDRzM5L2lvcUFIeE12bHVjRlpnWi9Kd1g3Rm1VMSt4ejdQUnI3SHNBaDRGc2VlL3NWQmJBR21mY0dCUk5Ybm9TZmg2R0tDSkc5RlhhUmVKWjVtOHo0cHhpZms2Q1BvWXdJRGlPTDNmY3R2YzIrOTJpNEVyVDNOL3NHNTJYSFVjVVQrTFQzZnhVVDhmUUdoMEppUWtsbUNGZjRROTM3NVFlM3JhVzlrTkFJOXpTOSt6UUdpcU9Jb0llZ0NQYzh2Z1lUOVB0RUJvaWlpS1NvOTJVZGJwQjBrbllmRS9oT1dBWVQ4dDBHbEhlVGRvOXlDQlA0SkFZT0k0di9BQzJBQVAvLzRvQUFkdmVPdmMrOS93QzhnQUQvQUN5QUFHT3pFdUM1OTRLNUU3dVY5LzhWMWtkQVdkYjdWZ1kyZ0FWajkzK3pCeU9ZQmZkVTl3WUhFM2YzQWZ1T0JjajNqdHE5UE0vYXZUejNTUWJmbHdVVHU3UDdmUWNUdDJNSDhuNEYrMGduQnhPN0tQZDlCZnMwWXdiV2dnWDdURUFIOXczbUZZMEdsMjJZYkpodENHTUc5NEQ3a1JXQ3BvQ29nYWdJcXpZRzl4c0VXQWFDb29HaWdxRUkyZ2I3SmtjVkw4L0pCcFYwbFhXVmRBZ09JNHU0OTJXMzl4cSs5d3E0RXZjQjREZmY5enYzRlJQMGxmaEVGZThHYm90dmJocGIrQ0lLQnhQNjk1NnpCdmdoSGZjODBkdnRsQis1dmx3RzdJQkN6ZnNiRy90Z1l3YmpnWXhsaTJhTVpSa1Q5aWNHOTFuM0NoWHZ1R1E4bEIvN093YU1zNHV5akxJSUUvcUorNU1WcUl1bnFCcjNPd1kxaG1KYkpCdDVCZzRqOTdLOTk2U3hFbi8zVGZzNS93Q1hnQUQvQU15QUFQY25FK2gvK1BRVkU5aTdnYS83bWdWTFdkSUdzL3U1QmJJRzBQZTVCYlFHdXZ1NUJhc0d3dmU1QmRXOVNnYTc5NWEvbVFXeCt5ZGxCOFY5V3Z1V0JWZ0dhUGR4QlJQb1l3WmIrM0VGV1Fadzk1cStsUVd4KzAwSDk2VDd5aFYyQnBqQkJlajdYeFY4N2dXdEJoUFkrMXNpRllEMEJhMEdEaU9MdlZuM0psUERXL2RyQ3Y4QkZvQUF4TGErRXJEazkwemZPZDA1OStjZE8vOEFUb0FBRTY4QXN4YjRPTDM4T0FZVFR3RDNVdXNWVG1DNDUrdTZ1TVNkb1lkdXN4LzdZUWRxYVhXRWN4c1RuaURqVnhVVG53RDNINU1Gc2dkTWxBWDRDZ2NUcmtERHZsTUdqdmNBQlJPdWdIK1IrelZ4QldVSDQ0TUZZZnRtV1BkbU1BZXpZMm1UYXhzcFJEajdDZnNFeXp6dUh4T3VJSyt5bDdpeEh3NGpmcmozWDczT3ZmZG91QktXOXlZdDZSUDA5ODErRmVqUHdkZVdINktIZWZmbENsa0ZpbitCaW9NYk1FelM5eGg1SC9keXZmdDNCb3FYaTVlWUdwV0xsWXlWSHZkM3ZmdHpCdmNlbmN6VjVodVNsb3VKbUIrYVZ3VlhtWjU4cEJ1Z29aZWtrUi9XZjAzQkxSc1QrUHNhTENuN00zUWZVVmtHRS9UQUJvcUJpNEdCR242TGY0eC9IaFA0VmxuRkJoUDAreTZrNVMzM0ZSc09JNHU0WHY4QUxZQUEvd0dzZ0FEM1FGdTdFcGJVOXcvZzl3LzMweDBUckpMNGJoWENCaE9jb2ZjUUJmY05CbzAvaXo0NUd2ZzRIVU1IK0RnZGE0cGJpbFllSm9FRlkvZTNCeE5Xc3djbWxnV0p5WXZHdEJyNE5oM1RCL2cySGNpTDA0M1RIdmNOQmhPbW9mc1FCY0lHRTU2RTkwQUYvR29HRGlPTHVQZGx0OCs5enIzUHVCTDNBZUUyMy9jODNqajNGQlA2Z0pYNGR4WHZCbldMZEhVYUoxbnZCb1dMaFlVYVdmZ2lDdmVlc3dmNElSMzNGTks1emFvZnlyMEdFL3NBV3dhTmw0eVltQnFWaXBXS2xCNFQvSUM2dlZBRzBHOUd0L3NDRy90Z1l3YmpnUVdNZG90MmRob1Qrb0FvQnZkWnp4WFh0M1Zkb0I4VC9RRDdMUWFoaTZLTW9oNzNPdnNuRlgyS2Y0cC9IaFA3QVBzNkJwK0xvcU1hOXpzR0UvMEFqSUtMZ1lFYUUvcUEreXI3TUJWNXovY3NCbDkzWW5OQ0d3NGord2YzNndwYnUvZDR0di8vMW9BQS93QXBnQUQzeExzU3JPbjNKYlc2NUJNM2dQZWI5NkFWNjRNRmpGQ01UMUVhWndlRGQzbUljeHNnU3ZIM1N2ZE8xUFR2cEtHR2Y2SWZuL3NOQmNjR2gvY2pZNmRqbUZlTkdlVmhNQWY3S0hzdyt4NzdUQm9UVjREN1crajdFZmNtZ2g0VGw0QWx0UWNUTDREeUI3cVF0cDI1cVFpMUI4aU14NHpHSHNHUUJSTTNnTEw3aHdjT0kzNjc5MkcreUwzM1pMd0I0TnozVE53RG92ZUVGZVFHZDI2RWJHZ2FMOEZKOXgzM0E5akI1NDhlbjRKOGxuVWJjblYrVm9BZmZsTUZobkowaVhNYlFXUzV4cmFXcXFLbEgvZXF2dnR4QnRMSUJmY3F2U3NHcmJHYXNMRWEzbEhJSVNwQVVEV0ZIbldUbklHZkc2R2xtY0NYSDVmQ0JZK2RtNDJhRzhldWFsRmllbVprWkIvN28xbjNhUVpEVGdYN0lRWU9JMzY0K05xNGlIY1N2ZW4zQzdRVDJQY2s5OVlWOXppODdkR2pIdnpQQjBTaVcrMzNPQnIzQy94SUZiVHdCdDJPek1DVjFRaWloM3IzNVFwYUJZbC9mb3ArRy9qYUI1ZVppb3FaSDVwWEJWZWFuWHlrRzZDaGw2U1JIMzdVVWNFd2pRZ1R1T1ZpTGdmN0ZYZzMreFA3VUJyN1VkdjdFZmNaZUI0T0k0SC9BRFdBQVA4QTlZQUF2dmNGdnVlOUVydjRIZnRINlMzcUxQZEVFL2k3K0ZrVkUvSDNhZ1pHZ21CZk9CczhXTEVHMTZsK1FhSWZ1dnNyQlYyWnEzeklHNnVnajVHZUg3SUhONVJjOXg1ejAzS3RXSm9aRS9Uc25iVEhrODhJRS9IZHZnWVQ4am9HaGJKNXFYQ2lDUGNZdmZ3YVdlUUdFL0hYdEdsUmt4LzdhZ1lPSTM2NCtNMjRBZmNJNFBkSzZRUDNiSDRWOXlMM0M5MzNJaCtlaEgyVmRodHljSDlaZ1l5QWpYZ2ZqMkVGWTJGVmMwb2Jnb0dNaklJZjk0bjRJUXJRK0NFS3VJeTNqTGdlNUpVRnMvdWVZd2ZqZ1FXTVZveFRSeG94V0FWU0IrVytCVVlITVZnRlVnZmx2Z1VuaWtlSlNSNS9ySytJclJzT0k0dTQ5OHozUUZ1N3pyMFNsdFgzRHVEM0QvZlRIUlBja3ZmNUZjTUdFNzZoOXhBRjl3ejNtQXBVQjFLS1VvcFRIaWFCQldQM3Q3TUhKcFVGaXNTS3hNTWF3Z2ZRaTlDTnp4NzNEUVlUMXFIN0VBWENCaE8raFBkQUJmeHFCczRFK0dxOS9Hb0dEaU9Mci9jQXZzNjk5N20wWjY4Uzl3emZOK0gzVmVNVDlaLzNtaFh2Qm5TTGRYVWFKMWp2Qm11S2JHd2FNbjBGWndjVDgvZWxyd1lxbW9xcmk2bUtxaG4zWkw0R0UvWDdaQWFoaTZHaUdwb0c5MWZVNC9iM0F6L1oreVlmKzM4R0UrMW5CK1I5Qll3NGl6YzRHbWtuQi9kTXJSVVQ5ZU9MNFkzZ0hyQUc5YjFXTERaYlQvc1BIM01HRGlPTHVQZWV0L2VLdUJMMjMyYTFZclhhdGJma1IrVVQ4b0NtK1BZVjJuMEZqRGlMTnpnYVd3YzNpemlLT2g0OGZRVm5CeFBxZ1BjVCt3ZTE5d2V2QnB1WmpJeVpIL3NKdGZjUEIvY0VvcmJTMmhyVFljdjdESjBlRStjQTc2R3p5YzRhMVdERU1hQWU5d05oSWdlTWYzNk1maHRpOG1Fa0JoUHpBUHNVQnZkalhoWGN1bUU4UUdOWk14OWdCdG1MMzQzZkhxMzd0aFVUOG9EM0FicGNOek5XWENnZlpRYUoyWXZZOXdNYUR2Y3RDdmN0Q3ZjdEN2d0hEaU1PL0dzTy9Hc085NVgzbmgwVHU4RDNjSElWRTNmQXd3cGMrRmNWRTd2QTl5U3NxYTZ1cW16N0kvc2piR3hvSGhOM3dHaHFxdmNqSHhPN3dNLzNaQlZEUmszN0p2c2wwRTNUMHMvSjl5WDNKa2ZKUkIvNEMveGhXd29PK09UM25oM04xUGNhMUJPNzhQZHdjaFVUWmdERENsejRWeFVUS3dEM0pLeXBycTZxYlBzait5TnNiR2dlRTJZQWFHcXE5eU1mRTd2d3ovZGtGVU5HVGZzbSt5WFFUZFBTejhuM0pmY21SOGxFSC9nTC9HRmJDdmVxKzJSYkNnNzNsWXYzTWxMRTZxajMvdmdiSGZjeDB2ZzZ6Qk9uOTRKeUZST3p3d3I3RS9rRXR4MFRhL2V0SGZlWi9MOFY5ejRHRTZjbXpBY1RaL0RMQnhPbnhFdjNpVndIRTJmN1VQdVVCUk9uOXlvSzk1V0wwZmRMcU9XdDk0TDRHeDMzS2RMM3Z2ZWhNOVFUNW9EM1luSVZFL0tBd3dvaytRUzNIUlByQVBldEhmZkgvU1Q0T2dvVDVvQnRIUlBuQUM0eUJRNzNsWXYzTWxMRTRhejNPTFAzSksxOGR4TDNvZEpVMVBmQnpCTzVnUGVMY2hVVHRZRERDbFgzTUFvVGVvQlBDdmZDL0JBVjl6NEdFN21BSnN3SEUzbUE4TXNIRTdtQXhFdjNpVndIRTNtQSsxRDdsQVVUdVlEM0tncjROUjJvNWEzM2d2Z2JIZmN2MHZobjBsVFVFNm1nOTJseUZSTjhvTU1LSS9rRXR4MFRxcUQzclIzNEJmeEFTd29UcWNCUENnNzROUjNSdkszM2I2MThkeExPOTZFejFQZ2EwbFRVRTV5ZzkzdHlGUk5iSU1NSyt4bjNrZmc2Q2hPY29HMGRFNTBnTGpJRkU3eWcrSzFBU3dvVHZNQlBDZzc0SFIzM2tham1yUGVDK0JzZDl5N1M5N0RLVzhqM0RNWmJ6Uk96a1Bkb2NoVVRlWkREQ2lQNUJMY2RFN1dROTYwZDk3bjh5K1FkRTdOZ3Rnb1R0WkJXYzI1cVhSb1RzMkNkSFJPemtJOGQrQjBkOTRpczY2eXVzL2Nrclh4M0V2ZVAwbFRVOTFIS1c4ajNETVpielJPOHlQZDdjaFVUZXNqRENsUDNNQW9UdlVoUEN2ZjgvQnprSFJPOHNMWUtFNzFJVm5OdWFsMGFFN3l3blIwVHZNaVBIZmdkSGZlSXJPdXN3TGZYMFlaM0Vzci9BRTZBQVAvLzI0QUFyZmNVMVBkT3lsdkk5d3pHVzgwVHZPVDNkWElWRTN0a3d3cUo5NGdWM3N5NzMrRk50RGdmRTd6a2VIZUpoM2Nma2QwRjkwelIrMm9HZmZ0Tm5YOEZqNTZnanA4YnlLbHJWRkJwWjFzZkU3MWtmbjZOajMwZmhLNEZzSU9BbDNrYmVIMkFkWVlmRTN0a1dKTzNaTmdiRTd6azkrTDdMK1FkRTd6WXRnb1R2T1JXYzI1cVhSb1R2TmlkSFJPODVJOGQrQjBkK0FtczkwSFJobmNTK0kzS1c4ajNETVpielJPMGdQZFBjaFVUYklERENuTDNseFdSaFFYTEJoTzBnUGNyOS9jRnRQdWZSZmRvQi9kay9IN2tIUk96QUxZS0U3U0FWbk51YWwwYUU3TUFuUjBUdElDUEhVTDN3Y1FCOTMvSUEvaUs5OEVWeFB0aTkyOU8rMi83WWxMM1l2dDB5UGQwQnc1Qzk4SEVBYWo0YlFQNGl2ZkIrQmtkUXZiNFVRRzIrRkVEK0ZQMkZiUzArMG4zU3ZkSjkwbGl0UHRKKzBuN1N2ZEpZbUwzU3Z0SiswcjdTclJpOTByM1NnVU9RdmRaOXgwRDk1M1BGZmZpQ3ZnYkJQZmlDdmVCK3pMNEdSMzd4UGVaOTNJZDk1bXBDZzczMWgzOGJWSUgrRzMzWFBnWkhVTGMrSVVCeFBnMUE4VDN4aFg0Ri90MXFjSDc3L2RYOSsvM1ZtM0IvQmY3ZFFVT1F0ejRoUUhFK0RVRCtHNzM5Ulg4Ri9kMWJWWDM3L3RXKysvN1Y2bFYrQmYzZFFVT1FvdkZBYWo0YlFQNGloYkYvRzFSQjV2M3h4WDRJdnRocWNINzlmZEQ5L1gzUTIzQi9DTDdZZ1VPUW92RkFhajRiUU9vRnZodHhmeHRCdmhkOTQwVnVnZjhJdmRpYlZYMzlmdEQrL1g3UTZsVkJRNUNpOFgzaU1VQjkzL0lBL2lLOThJVnhmdGk5MXBPKzFyN1lsSDNZdnRneVBkZ0IvZGkrOElWeGZ4dFVRY09Rdmc1eHdIajkvb0Q0L2VHRmJocDl4cjNhZmNhKzJtNHJmc245NE1GU3dZTzk5WWQrNWdIM1BjakJmZEh4UHNuQnRMM0VtcWNPdnNqQmZ1dlV2ZVBCanY3SXdYN1AxTDNId1pEK3hPc2U5ejNJd1VPUXZlZytCY0srQU1WeGgwT1F2Y1p4YkhGNGZnWEN2ZDhGY1lkOTRRRXhoME9RdmZyeEFINFI4a0RvL2ZyRmZndisweko5NFg4YlFZTzkwbjNMY3RMMnZkVjJrdkxFck85K1BHK0UxejQxZmN0RmUvUTJmTHZTTkV6U2sxcU5GTWZFNnpLV0U3RU5Cc21SejBrSjgxRjVNdklyZUhFSHhOY1RML0lVdUlibTlvVlVGakV6RmdmeHJ1dnBzd2J5cjVlU1ZObFlrc2ZFNno4R1h3VlRGaTR6Y094dE12SHZWTkp2aDlRV21od1Noc09veDFCZnJqMzNMbjNZN2tTcytqM29ld3Q2UlAwcy9kRkZmc00zRVgzQWZjMDl3SDNNZmVBOTBSRDh2c2RUbGQyWFY4ZW9XNEZxYXUybjdnYjRyWTkremNmaEl1RWhCcXdZbDJkV0J2N0NQc0ROL3NsSHhQNDkxNzdKUlZPVzhMbjl3ck15dHl4dVg1ZXNoLzdTSDFITVQwYkR2dUorMVB1K1k3dkV2Y1Yza3JlRStEM0hmZXZGUlBRbC9zemlWNXhHb2xFZTFOM2E0RjZmbjE1Z0hXaUdLUnpkWk4xRzJsNGVYQ0dIMnlWc25TK0c3aThsN2EwSDdPMnJ0WDNBQnFNbjR5emdmY2xDQlBnZi9jempibWxHbzNTbThPZnE1V2NtSm1kbHFGMEdIT2pvWUtpRzZ5ZW5hYVFINnFCWTZOWUcxdGVmMkJqSDJKZmFFRWdHb3AyaW1HVit5UUlEbDMzeEw4QnR2aVBBL2ZsSnhYM2Fmb0dCVHdHK3l2OWkvc085K0VGK3k5WDR3YjNML3dvQlE2dGk5MzQ1SGYzWlFyM0Q0dlQrTWE5QWRIczJ0RHMwTnJzQSsyRUNnNWcreGJkK0svMzNRb1MrRm5mRTlENFh2aC9GY2dHRTdDRDkwWUYvSGxlQnZlQS9BUDdodnZaQlUzNGxRZVQ5MmNGVGdadyt4VUYrL01HOTVEMzVQdGw5OThGOTdJR0R2YysreFlsQ3Y4Q3ZZQUErQllkOXhucTk5THFFOWozR2ZkSUZmZWRDdUtnQ3ZmT0JvMDFpelExR3Z0SEIvZWRDaE80OS9FZEU5aTAvVXNIRTdoaUIrWTdDZzc3SFg3SStTUzRBZHZmOTBiWUEvZkNmaFhWdjdHMHNSOXlzQVZ4YkdSdVZodFpZS1hTYmgvM0l2Y2MzUGNyOXlJYTl3VlZ5VE1sTERMN3V5dVhRS0ZSSG5KMGIzUnRkS1ptR0thZnBaK2pud2hFdE1Wcnp4djdIdmdaRmZlZHc4cS90cVpuTXZzVFYvc1Urd0w3RHg2QnVZWEUweG9POTFoL24vZkluZmZHbndHNTl4YjRWdmNVQS9kSTkrSVZpWW1OangvM1NBZVRqNU9Qa1I3SHc5ZXg0UnZkMTJkUnd4K1JoWStEZ3hyN1RBZUhpWW1ISHZ4SSszWVZoNUdIa1pNYTkwd0hqWTJOalI3NDBwTUc5MDc3TXZjcSsxajdXUHN5K3lyN1R2dE85ekw3S3ZkWTl3Ynh2OXZOSGxjR1IxTTVYekViTlQyeHlWVWZEc1Aza3RNQm4va0FBL2ZhK05zVis4YjdyZ1YxQi9mRys2K2xwZnVFOTQzMyszb0Y5ejNUK3owRysvdDU5NFQzalFVT3cvOEJ6SUFBOTJzS0FmOEFiNEFBdXdQNHEvaUhGZncwblh0N25QdzBCYThHa3ZmdDk0WDdudmNNK3d1K3Z2c005d3o3bnZlRjkrNlNCUTdEZHZrQkFmZTYwd1A1QS9lNUZmdXU5OGNGZFFiN3J2dkhwSEwzamZlRGV2djZCZnMrMC9jK0IzcjMrdmVOKzRNRkRzUC9BY3lBQVBkckNnSC9BZlNBQUxzRCtMRGdGWno0Tkh1Yi9EUjVCV2dIOSs2RSs1NzdoZnNNK3d5K1dQY005d3YzaGZlZWt2dnRCUTdEOTVMVEFaLzVBQVAzNG9jVjk4YjNyd1doQi92Rzk2NXhjZmVFKzQzNys1MEYrejFEOXowRzkvdWMrNFQ3alFVT3cvZ1FIZmRyQ2dIL0FmU0FBTHNEOXhIYkZmZzBlcHVhZXZnMUJXY0doUHZ1KzRYM252c005d3hZVi9jTSt3djNudnVHKys2RkJRN0RkdmtCQWZlNjB3T3c5N0lWOTY3N3h3V2hCdmV1OThkeXBmdU4rNFNjOS9zRjl6MUQrejBIblB2Nys0MzNoQVVPdy9nUUhmZHJDZ0gvQUcrQUFMc0Q5d3o0Z3hWNi9EV2JmUGcwbkFXdkIvdnVrZmVlOTRiM0RQY0xXTC83RFBzTSs0WDdub1QzN2dVTzl3aUwrT3dCd3ZqMkE4SVcrUGI0N1B6MkJnNzNKRlg1V0FHZitWZ0QrV3ozd0JYNzl2ZjIrL2I3OXZmMisvWUZEdnN5OXh1MDEvY3YxN1VCbzduWDl5N1l1QVAzYy9lUUZiYXRyYmUyYWExZ1lHbHBZRit0YWJZZlB3UTJSOURnNE0vUDRPRFFSelkyUmtZMkgySUU5d0xrNHZjQTlqTGord0w3QWpJeklQc0E1RFQzQWg4Tzk2MWh0ZmpzOXc0QndyWDQ5dmNQQSt3VytPejQ5dnpzQi8wZ1lSWDVOZ2J3OXpRRitQRDgrd2Y3TkNZRkRuVzJsL2V1Q2c1MXRydjNyZ3FTT0JYM1VmdmJCZndQQmc1MWl2aWxBZDJYOThnZERuV0srS1VCM2J2M3lCMDRoQlg3Mi90UkJmZ1BCdzUxK0g2V0FhWDRwZ1A0d1BoK0ZZU1dCZmdVQ2c1MStGcTZnSllTcGZpbUUyRDR3UGgrRllTV0JST2crQlFLaE44VisxTDMyd1g0RHdZT2RZcjRwUUg0ZlpiM3hoME9kWXI0cFFINFdicjN4aDNma2hYMzIvZFNCZndQQnc3M3l4MzQ2UHplQi8wWFh4WDVSdmsyL1VZR0R2ZkxIZmhlQjA3N0dsWDdHMS83SDJmcVlPVmI1VWxpR1BnVkNzVDNSTXYzUTlUM1B3amUvTjRHL1JkZkZmbEcrVGI3QXdhcTFLelRydE5rblJoa1BXUTlaendJL0tFR0RvdUgrYmtCeHZpaEE4YjM4Qlg0RlFyaTk1L3g5NXYzRC9lUlpKMFkrd1g3ZFNMN2RrRDdnR2ZxWU9WYjVRZ09LSDczUmZqZGR3SDNmN1QzRzhjRHJjY1ZXYk4wd2VyQXp2Y0RIdmdrQjZkMW8zbWdkd2k4WDVoZld4cGlnbVY5YXg2Z2dnV2xyNi9RMUJySWNjSlV1QjR4MUhTcGdNVUliUHpvQnBKNGQ0OXpHemxUWDA4ZkRuVlQrWWtCM2ZnMkEvaFA5OWtWK3l6N3Z2c3M5NzczTFBlNkJmZGwrN29WKzE3NERBVjlCdnRlL0F6M1h2d1JCWmtHRHZ2MytYVjNBZFQyQTh6NFIvY0RIUTc3UVBsMWR3SFU5dGIyQTh6NFIvY0RIZmM2KzdQM0F4ME8vQno1Z1hjQnNOd0tEdndjK1lGM0FidjREZ3I1SnU0ZER2eEo5L1FLcGI4RHBma2dGVXExWnRRZXN3ZGlkYXFxcXFLcHN4K3pCMEpoWkUwZkR2eEo5L1FLNUw4RHBmaTZGZE8yc016SllMSkRIMk1IczZKdGJHeDFiR0lmRHZ4OCtMejNXQUdrelFPbitMd1Z4d2FSOTFnRlF3WU85N3NLKzJENER4MzNJZmRKQS9jaCtOUXVDdnRnK0E4ZDEvZEpBL2VWK05RK0N2eDgrNTczVndHa3pRT2grQWtkKzJENER4M1c5MGtEOTVUNDFENEsrMkQ0RHgzM0lQZEpBL2NnK05RdUN2dGcrTGIzV2dHKzk3NEQ5OXI0dG5vZCsyRDR6OG9CeVBlcUErRDVkM2dLKzJENDAvZTlIYkwzMmhleStONmRDaE9nVndvVDRPa2QrMkQ0NlBjR0FhLzN0eDBEOThYNDZDc0tEdmU3Q3Z0ZytOUE5BYnozd2dPOCtXY1ZXQW9PKzJEMzlBcnF1L2NHdXdQM1hQamlGY1VkKzJENHUvZGhBZEQzc2dQUStNdCtDdnRnK09IM0ZBSDNHZmNhQS9kYytPRWtDdnRnKzNDdzdPUUI5MjdKQS9jbU5SVjdDcFBJQldZR0R2elgrSnIzY2dILy8vQ0FBUGZuSFFPcitYaXlDdmpROTFzQlRlOERUZmtSOTFrZCsyRDdjTU1CN2NzRDdmc1lGWkFLczZPMXRhWWZiZ1pWY0Z4U1Rob08rQThkK3hMM1NRUEMrTlErQ3Zsazl6RUIreFAzVmdQTytYMHJIUTc0RHgxUTkwa0RVUGpVTGdyNVpQY3hBVWozVmdOSStYMGtIUTc0dHZkYUFmc3A5NzREOXhMNHRub2QrV0QzSUFIN0tQZThBNXo1N0RnZER2alQ5NzBkK3pmMzJoZjdOL2plblFvVG9GY0tFK0RwSGZsbjk3MGQrMGozL0JmN1NQbHlYZ29Ub0RjZEUrQ3ZDdmpveWdIN0YvZWFBL3NYK09pSUhmbUt5dmdPSGZtS3dCMzQwODM0RGgzNVp4VllDZzc1YjhqMytSMzdKUG51UFFvTytPSDNGQUZJOXhvRCtPSDNhQXI1ZFBjVUFVajNHZ1A1ZEFSaUhmam85d1lCK3pqM3R4MEQ5UGpvS3dvTzkvOEsrd1Q1ZkNNS0R2ZjBDaUs3OXdhN0EvamlCTVVkK1dhdTl3V3dBU3UzODdjRCtXWUVyaDBPK0x2M1lRSDdCUGV5QS9zRStNdCtDdmxiOTBVQit3VDN2QVA3QlBsdFZncjR6OG9CK3gvM3FnUDdCL2wzZUFyNWJjRUIreC8zcWdQN0IvbjQ5OVVLRHZ1UDkxc0JaTzhEeVBzSktBcjdjTERzNUFHNXlRTnhOUlY3Q3BQSUJXWUdEdnR3d3dFcXl3TXEreGdWa0Fxem83VzFwaDl1QmxWd1hGSk9HZzc3bnZkWEFXck5BMmY0Q1IzN2Q4MzREaDA4RlZnS0R2dFY5d1lCK3pqM3R4MEQ5UHRWS3dvTzl3VWRBVWozR2dQN1gvZG9Ddmk5OTFZQnBMd0RlUGk5Y2gzNVlmYzVTTTRTcEx3VG9IajVZUlVUWVBjcUhmZ085M0lCMjhzRGhmZ09GZUNUek1Ya05ncGNibk5PZ1I0TyswVEtBZnNYOTVvRCt4ZjdSSWdkK01yM0FnSDdNdmNINGZjSEEvc3krUUgzUEIzM0dOQVZwWGplMUFXZm5aV2FuaHFqZVpoNWQzbDlhM3Nlbi9zNjl5NEs5LzhLK3o3NXMvY05IZmpLOXdJQit6TDNCK0gzQndQN012a0I5endkOXpTOUZhT2dYT29GcTN0NW1YY2JlWGwrYzNpVmZKOTVIL2NRK3cvM0xncjMvd3I3UHZtejl3VUsrTlQzQnJyS0V2czQ5d3MxOTVvMTl3c1Q2UFQ0MUNzS0U5Qng5eldJSGZsODl3TEZ5Z0g3UHZZS0Evc0UrWHdqQ3Z1YTl6ekFIZmpVOXdhV3dSTDdPUGUzSFJPdzlQalVLd3FCOTV3VmMzWUZFL0JBSGZsODl3S1V3Ukw3UHZZS0U3RDdCUGw4SXdyN2R2ZVdGWE4yQlJQd1FCMzRyUGVOQWZzbytBNEQreFg0cktnSytXRDNXZ0g3S1BnT0Evc1YrV0JjSFE3NHJQZU5BZnR3K0FRRCsxSDVVYWNkK1dEM1dnSDdoUGdZQS9jVitXQmdDZzc0clBlckFmYzh2QVA3RmZpc09Rck1DdmxnOTM5SXpoTDNPTHdUb1BzVitXQTVDdmVYMXhXVWJBVVRZTWFTcmFtMEdyMWpxRG1USG9GSUJjU0dwWUI1R2hPZ2UzeUNaWU1lRHZsTDk5a2RFNkQ3RmZpczl5TWRFMkQ0S3gzM3Z3b1RvUElLRTJDVzkxb2QrZXIzMlIwVG9Qc1krVmtWOXhqRzl4aFFtNlQ3RityM3Rnb3NCUk5nZlBjV25oMFRvRmdkRTJEM2JRcjQwc2YzK1IzNDBnVDNJZ3I1YjhmMytSMzVid1RudHM3M1hncHJUeHRQWjZ2Mzh4MUk1eHR3OXcwVnBYZloyd1dob1krWm1ocWRlWmw2ZW54K2JYMGVEdmpTeC9mNUhmc2srVklWOXlZZCtXL0g5L2tkK1c4RTU3YjFDbDE2WjJ0UEcwOWtxN2g4SDIyQitDa0twdmNORlZydkJhbDlmSmg2RzNwNWZYbDhqMzJoZFIvWk93VU8rTkxJOXl2T0FhUzhBM2o1UkJVeUN2c0llVDBLRHZsdnlQY1d6Z0drdkFONCtjejNHUW9PK05MSDVmZlpIUlBRK05JRTJCMXNnQVZQbExaSDV4c1RzUHMzOXpTZUhSUFFXQjBUc1BkdEN2bHZ4OVQzMlIwVHNQczMrZjZlSFJQUVdCMFRzSmYzZGgzM1FCMFQwUGNLQ2c3SGk3UmlUZ3I0QXgzN2Vma2NFNVNRRmhPWXhRcjRLUGR6aGdwUUhYWWREcTJMM2ZkbENpRUtEcVlLRHZkTjl5WUs5eDdxOTlmcEUyZjNIbWdkRHZKOHZmZW55dmVadlJLNjlNMjVYY1QzTXNOZXVNMzBFL21BOS9aOEZmY3Y5eXYzRnZkd3ZBcjdML3NzK3hiN2IvdDU5eXY3RGZjd0g3MEUreVpUOXluM0svY3F3L2NwOXliM0pzTDdLZnNxK3l0VSt5bjdKaC9sOTI0VnVQZEdYZ1lUOW9DQVVRWDdNZ1lUK1lDQXhRVmQrMGE1QmhQMmdKYkVCZmN5Qmc3N2ZmZWpIZmNlNmdNcUNnN0tpN2xkOUIzM0h1YjNVUGQ2RTFqakNyUUhMSllGaWNtTHlNRWE3dmNMQlJPWTl6UDd2VG1CQlJOWVl2ZVZCeE9jOSswS3RQdDY5ODhkRTJqaWkrR040QjdxbGdVVFdQZjlIUk5vTXgwT3hvdTBZdjhBTFlBQS8vL1NnQUM2K0FNZCszbjVIQk9JOThMNU5oVVRrUHRxL1FBNGZnVmk5M20wQnlxWTkwRDRqUVVUS1BjKy9JNEZFNGdvZndVVEtHTDNwUWNUaUxRSEUwZy9sUHRwK1FRRkRxa2Q5eGVMdFBqYnVHSzA5N0VkRTdLeUZoT3E5NGEwQmhPeTk0WWQ2Z3EwQnhPMCs0VmlCaE95OTRjSysvMzRoQVg3TG1JR0U5TFRnNU4vQmZ5L0J6Wi9CUTU0aTlrOTkwbjNGYzczQS9kSlB0Z1Mvd0FtZ0FENE14My9BRU9BQUpDNFhzUDNjY05ldUpENE14My9BRUtBQUJPcElQZ3k5NGdWdVBkVlhnWVRxTUNBVHdYN2NRWVRxU0NBeHdWZSsxVzRCaE9vd0piTkJmZHhCaE9xSVB2dTkvc1ZFN0lnaFB0SkJjQUdFNm9RbmZNRjkrc0dFN0VRblNNRndBWVRxUkNFOTBrRkU2a29tZjB4RlJOcEtKTDNTUVZYQmhPdEtIa2tCZndKQmhOdElIbnlCVllHRTYwZ2t2dEpCUTczQngzNEh3cjRIdmNDQS9jd0lBcThDaDhPOXptTHVWMGxDdjhDTzRBQStCWWQ5eDdxOThUcEUyejRyZmZkRlNUM0JoMzNyclFITDljZEUxejM4UjBUYkxUOVBHSUg1b0VGalRUM3pCMFRyUGdlSGVLTDVQRWFxUWZpb0FyM3dBYU5OWXMwTlJvT2FBcE1pOTM0TFBkSFdiMFMrRHZmRTlENFJmaCtGY2dHRTdDRDkwY0YvRnhuQnZkcSs4RDdkUHVvQlZMNGR3ZVQ5MmdGVGdadyt4WUYrOHNHOTIzM3BmdFA5NXdGOTV3R0RzRWRtUW9UbVBocHJBb085d1YvOTJvSzA3bjRCcm5NZHgwU3IrMzNTZUkxM3pmZ051SDNTZTBUdGxDdjkrb1Yrdy9jK3dQM1dvb2VFN2NRZEl0MWluVWVLNEFGWWdjVHRsRDNyUVlUZGxDMEJ5cVhCYUNLb3FFYTkxcmQ5d1AzRVBjTUovWDdTSXdmRTdvd2pKK0xuNTRhN0pjRkU3Y1F0UHV0WWdmcmdBV01kNHQzZHhvVHRsRDdSeWNoK3cwZjdZd1Y5d0hKMGZjTWpCNVVpMVJWR2xvSFdJdFdWaHI3QzB6Yzl3RWZFN2FROTU1cUZiNEh3WXZCak1FZTl3dktSZnNDK3dCTU92c0xpaCtLd1l2QnZCb09vZ3IzT29zbEN2OEEwSUFBdXZmVnVXSzBFdmZtNlJQWTVQaU9GYWI3UWI5SDl6NkJDRWVMUjRsSUhpK0FCV0wzcnJRSEw1WUZpYzZMejg4YTl6NlZ2cyttOTBHVzBSaVFxcFNacUkrbGpoaTBXUWMyZDJzemdSK0dZWHo3Rm5STSt3eC9HWk1IdkFjVDZPS2dDaFBZM0pVRnRQdVpZZ2NUNk4zM3F4MkRCL3NNbDNUS2ZQY1doclVZRTlqamdIZXJOeHRZWWdhbWlLZUhsSDJRYkJrTzl3K0wwL2pHdlFIUjdOclE3TkRhN0FQdGhBb08zWXUwWWs0S0VxYjNlZnQ1K1J3VG1LWVd4UXFWK0NoeEN2Z2UrMG1HQ3ZVc0NoTDNpR1lLRTFXQTk0ajN5aFVUbFlCSkhSTlZvR0w0bWdjVE5hQ1M5MFlGVWdZVFZhQW9IUk5Wd1BkL0JoTlp3S0g3RXdYRUJoTlZ3SVQzUlFYOGhnWVRVNEF0Q3Z1UjRYRUtEdmUyOXlZSzk0anE5OWZwRTJmM2lHZ2QrNUhoY1FvTyt4UDNveDMzaU9vRDk0Z3BDdnVSNFhFS0R2dDlTeDNXOXdJU20vY0hrdXFTOXdjVHlDb0tFL1JMK0JVakNnNzNQL2M2Q2dIM0NQY0IrQjczQWdQM2RTQUt2QW9mL0VUN2czRUtEdmM1YVFvUytDdnBxUGQ1RTVqNDhhd0srOHo0VVhFS0RtVUsxdmNDRXZkRjl3ZDI2YWozZWZ0eTl3Y1RrZ0QzSUIwVGt3RDNOUXEwKzNudENoUENBUGNvSFJPU0FQZjlIUk9pQUlBZEU1eUF6L2w4SXdvTzkwcUwwL2pHdlFIM0ZlemEwT3pRMnV3RDl6R0VDdnRWK0FseENnNjBDZzVtZnRENUVyZ1MzZjhBVllBQS8vK3VnQURjT3Y4QVVZQUEvd0RoZ0FEZWE5NFQwdmZBd3hWWVlKMnFaQi80TlFmM0FidksweDRUMU02eVdVQXlVVll2ZWgrV1V3VVQwdmNsa2JnK09obzBXbEFzSGhQaSszSDdnQlVUeXBlQjM1MTg5NE1GVXJYSWRNVWI4L0hTOXg3M0IwUEoreG1XSHhQVTl3U3B0ZWJPR3ZVOXlDZjdEakV0K3lrZWl2eDRCUTc3QmZnenp3SDNhODdjNkFQM1dQdElGWlNCMnAySDkwc0YzdmNlNlBkRjlmZmdIWGVOYzVSR0gydzNiVWhkTkc3M0YzTGlkOGdJOXd4a2E1cGpHMmR6ZVhOMUg1ZHRCWTZYbFl5Vkc2NmFiem1uSDZzcnJ5cWtJd2dPTm42NStTNnpFckxqYWMvM2UrTVQ2TEwzZGhYN0crTWo5eFAzSTk3M0ZmVDNDR2ZGK3g3cUhoUFlNY2hVcnIwYXU2K1kwbzBleTFJRmJxeWloSnNicDZHZnJCL0RZaitqUlJzcVBtZEVTTTFaMVZzZkUrajdGWFJLSWZzRUd2ZDErMVVWUEZIZzl3ajNBSy9ROWFrZjdVaWtWdnNER2lOZlFqY2VEcnNkRHZ0TSsxUE4vd01WZ0FEUUFiamY5M0xFQS9kWisxTVY5eVBQMGRUQ2FMTThueDlPbVFVNG4zYXZ1aHIzQisvM0pQYy85M3dlaDhINzQ1UUZQUWYzcFpRRiswVDdjL3NGKzBIN0FSbzlzbHJnZHg3b2RRWFdlWmw4K0RzZHZ4ME9MbjY0OThISDk4RzRFcnpjT3QzM2p0dzcyeFB5OTVWK0ZmY0I2OWIzdC9ldUx2UDdBL3NFS2l6N3VmdXM3emYzQUIrSCtWY1ZFL1RKeGpMN2FKSWYrNDhHRS9MM2dZNjN5OWNibXYwcUZSUHFSRS9nOTJ5RkgvZVBCaFB5KzRPSlkwMURHdzc3MFg3UUFmOEFZNEFBOTlNZEE2MGREa0YrM1A4QlBvQUErREFkUk00Uzc4OVIwaE9vK0VCK0ZhbXFvckthSDRPbEJZZUJlSWgyRzFCcDJ2Y21PaDhUeUttc3FhcXNwOE9PK0RvZGRaQWVhSWR2ZldOc1VsMUVOVmtzQ1BjWkJ4T283SEcxVW1oM2UzSjNIdmVUSGZ0VEJST3dmZnRIbElITmxZNjVrTUNPdkJtZ3NaK29vSzBJRTZqN2V2Y0FyMnUyR3c1RWZ0ejQzT0lCbi9pZkEvZjQ5eHNWK3hPc3NIYXpHNnFwcDYrYkg0R2tCWVo3ZjRoOEcyeDNuZEYwSC9zaytGa0Y1bTVjc2trYldXZHZZM01mb0dBRm1hS29sYXNidjZaNlJhUWZwejc3ZXZ4emtuN2ZoZmMvK0NjRkRxTWQrd1g0TTg4QjkvL29BL2R3aUJXOWpnWGo5eC90OTAzM0FQZmdIWE9OYkpOT0gydzVia2xjTkgzWWN1UnI5UWp5YkdteVhodHZhbnR4Y3grV2JRV05sSldObUJ1cW5YTk9vQit5K3dTeEpLbjdDZ2dPK3pyN1U4MzRYTmIvQVFhQUFNcjRNQXIvQUR1QUFCTEEyV3JYOTFmRUUrcjNhL3RURmZjaTBOSFV3V3UzTzVzZlM1Y0ZLcDUxc3NRYTBiN1A5eVdnb0lxSm54N1pWZ2NUMXZzTVljdkMzTnJOOXpZZkUrYVB4UHdQa0FWRUIvZHRsZ1V5YzBWVU54cEpzMHYwZHg0VDZ2c0VlRDFGTGhvcndsZmllUjdpZVFYV2U1ZDZjeHBzVVhVbmdSNE85d3dLRG9CKzBFYjNBUGZLMFVqT0V2ZEF1UGNxMUJPY3B2Z1ZGZmNsb0FVVFhJZ2poeU9CSkd1SmE0ZHpoZ2dUbkg2QWczOXpHbXlrZUsvR3JxM2hraDZTN0l6eWpQQUk5elVHaFNTRyt3VTVHamlxWTlIMzZSMTNuTTZKSHhPc2cvZWY5eFdIQlJPY2g5TUYrL0lHSTJWOVpGa2ZEazUrd3Zna3VSTC9BRWFBQU9FMy93QlVnQUQzbCtNVDJQZXl0UlZVWmFLd1l4K01ySTczRFk0YTl3Mk9zc25hRzhiYVUvczdKMlErTUI4VDZQdHQrM0lWbDRIZm5YcjNnQVZZc0w1eHdSdjE5d0RrOXp2M0xDN28rd1VmRTlqN0dqRXgrMGVLSDRyN1l3VU9nbjY1K0F2L0FFV0FBUGdSSGI0U3N1UDNvOTRUMlBlYnJCVkRTOWozR1I4VHVQY0R1TWZxbHg3bWJMTXZQaG9UMlBzVlUwczhIb2hkRmZjVTZQTDNGZGxjMnp1ekgvZHhlWWZhKzZxS0Jmc2ZpdnNITi9zOEd2c2o0aTMzR2g0Tyt3UiswUGZ4MFFIM1hOWURwdmdWRmZkVW53V0NKSUg3QWprYU9LdGowUGZwSFhhY3pvb2ZoL2VmOTFPSGg5TUYrM2tHSWxXQVlWWWZEazErd3ZnTHp4THMyVXJiOTVDOUU2aWVDaFBZN1IwVHFGTitVa0VhRHV2M0pSMFNzdVQzUnY4QVZJQUEvLyszZ0FETitEQUt4ZjhBdllBQTVCUHk5OEQ3VlJXVmhPQ2RndmM5QmZkV2tkejNGZmNLR2hQbTl5Z3I2dnRLa0I2Szl4c0ZVd2FJK3hzRisxcUlOZnNYK3d3YSt5YnJMZmRGaEI3N1RQZVJGZmNMeGR2M0hJNGVFK3FEL0M0RkUrYjdCcEZEenZjYkd2aFFpQlVUNnZzVFNVTDdEWVllaWZndUJSUG05d2VHMVVuN0dob08rd2o3VTlMNHJzOTEvd0FQZ0FBU2tQaUdFOUQ0T2Z0VEZhK25uYTZkSDRPbUJZWjhmWWQ2RzJGc3B1Rm9IMHYzTGdVVHNQZEo5OUdEbUVLUSt4ZjdsVnozR2dVVDBPSnJhck5WRzIxeWVYTjNINVpvQlpHY2xZNmlHN2lWZ2pTeUg4cjdJZnRaKysrU2Z0Q0M5eXIzdGJqN0pnVXdxS2xVekJzTzl3eCt2L2dPenhMMjJmYzIvd0JQZ0FELy83aUFBUDhBUVlBQS93QzhnQURERS9UMzdQdFVGWldFMVp5STl6OEY5emlhMS9QM1pScTRpNzZFd2g2WGdYdVRleHR1Ym5sa2NxUktwVVVmZ2ZzM1RrLzdCWUlJRSt5QytOSUZVZ2FEL05JRit3NlFYOExhMUpDOHl4cm1jNmxMYkc1NmNuajRMeDJYbUkyWEc2NlBlRjBmVTRoVFRocjdFZWRMOXl1SUhnNjdDZzc3Si90VHpmalRzUUczM3ZkMHhBUDNXZnRURmZjaTBOSFV4bTJyT2FFZlM1c0ZSNTVtdVBjQ0d2Y093TWplbHg3QVdRVjFvcG1Fb0J1cG5xQ3FpaCsxY0dHaVNCdjdKaXNtK3pEN0g4bFM1WFFmekhvRjFuaWFmWE1hYkZOMUpJRWVEclFLaXZpZFlRcTdIZmMyK0V4aENyOGQ5eXY0REdFSys5RiswQUgvQUdPQUFQZlRIUU90SFQvNHptRUsrOUYrMFBpdzl3WVNkdmNML3dBQmdBRDMweDJhOXdzVDBLMGRFK2pFK1BVckNnNzNEQXAwK0tCaENrMSt3dmdMenhMczJVcmI5NUM5RTZpZUNoUFk3UjBUcUZOK1VrRWE5eUw0SEdFS1RYN0MrQXZQOXdQM0JoTHMyVDczQ3lEYjl3bjNDNXU5RTVHZUNoUEY3UjBUa1ZOK1VrRWFFNnYzb3ZoREt3b091d3IzRHZqT1lRcjcwWDdRK0xic0VuN3gvd0FLZ0FEMzB4M1M4UlBZclIxWStOWExDaFA0OXg4ZFRYN0MrQXZQOXdyc0V1WHhMTmxLMi9jeDhZUzlFNG1lQ2hQRjdSMFRpVk4rVWtFYTl5YjRKQldtdEtTMWs1a0lxOENTbTU0YW4zNldlWGg3ZmtoekhvSnlmRnA3V2dnVHN2ZE9wQldvb2FDbnAzV2ZibkJ6ZDI5dm8zYW1IL2NmSGJIN2JkbjNFdEwzM2ZGRXpoTC9BSldBQVA4QVJJQUFVZE1UMVBlVCsyMFY5enpyNnZjMjFCK0Rvd1dIZVlLSmV4dElOZlgzRWtnZkUrU3FyS3FycmFyQmpmZzZIWFNRSG1tSGIzMWpiRkZjUWpOYUtnaU51SXk3dUJvVDFPeHd0VkpvZG50eWVCNzNreDM3VXdVVDJIejdSNVdCelpXTnVJNjlqcm9abzdhZ3E2S3hDUHNYdzlYN0hld2Jqd1kxVHlkakpodjdBemkyOXc1MUgycUZCUlBVK3hyaUpQY3RIZzR6ZjdoaHRmZ3R1Ukt5NC9lZTRoTjQ5M3I3VWhYZG5YbjNOd1h2bitIbjl5RWE5eThzNVBzSSt3bjdCU3o3TlI0VHVQc3I0VGYxZ2g1Kyt6d0Z1dmRwRlQ5TjFmY2w4N1RoNGRuSVBmc2tJMkU0TlI4Tyt6WDdVODM0bVA4QVVJQUFBYkhEOTQ3RUEvZFMrMU1WOXlQUDBkZkZhcWhDb1I5RG53VXJwMnEzMkJycnZMM25sQjdMa2MrUnFaMmYzUm1lMVdPUmZXSjlZM3AzWG9jWlRJUUYrd0dBS3pmN0tScjdKYzVlNTNNZXhYd0YxM2VZZnZnN0hmdFQvd0NhZ0FEQjkybi9BRFNBQUJML0FGdUFBTkVLLy8rM2dBRC9BRlNBQUJQUTJ2dElGWmVCM3AxKzk2Z0Zub3Vkako4ZTkzZCtCY29IRStEN2RZWUZFOUNPd28vUGtPejNmWUlZeWdmNzJuK2MrL2dGRG5MN1Nmb2pBZmhBMmdQRjk4MFY5OHYzRUtWV25rK1RTaG43ekNhaVNmZTY5dzBGakgrTGZuNGEreTVpK3dsdlJ4NjJlZ1czMThqM0ZmZEhHdmVYKzBEM2l2dXBvUjZGWnZjS2NmY0FQdEQ3QnhuN3hTd0ZEdnUxOS9MM0l4TGU5eHY3R3ZjaUU2RDNML2Z5cVFvVHdNcjcxZWNLKzhUMzdmZHlIZmZ0cVFvTys4VDRvdmR5SGZpaXFRb08rL2Y0UWZmSUFkVDJBOHo0Ui9jREhRNzc5L3NnOThnQjBmWUQ5MDMzTmhWbGtZSnpnM09DZEJsd1BITkdaaHB1bjNTcG5KdVBscHNlRHZ0ZytMSDNid0gzT2ZjYkEvYzUrTUZoQ3Z5dCtFYjNkZ0Z1OXdjRGJ2aFJjUW9PKzJENDd1d0JvUEgzTC9FRDkwTDR5TXNLOXg4ZCtMSDNid0ZvOXhzRGFQakJZUXI0N3V3QiswZng5eS94QTNINHlNc0s5eDhkeDR1MFlrNEsrQU1kKzNuNUhCT1VrQllUbU1VSytDajNjNFlLbWVrSzk3ZTk4dmRHendycDkzUDMwZ3IvLzlHQUFPNFRhb0MzRnZlaEJ2ZGt5dS90OXdFNTNQcytiR21KaUdnZjJvdmFqZGtlRTJzQTkzRUdFM01BOTVrZEUyc0FoUGRHQmZ4NEJoT21nR0lIY3gzM1VQZWhGYVFIamFLbGpLZ2I5eHV6V1M4ZkUycUFKbFpiK3hnZVNRWVRwb0QzckFwUUhYWWREdUtMdnZqTStBRUtrOGRQNHZjMHlmY2g2cDcvQUZLQUFQZmtIUk9WQUpiN1JoVVRtUURFQmhPVmdLYjNSZ1g0Y1FZVGxVQ2grMFlGRTVXQXhRYVE5M2tGRTZVQUpRYUo0UGVFQ3VhV0JST1hBTFQ4ZG1JSDVuOTUrNmRCKzBBayt3b1pWQWI0V2ZmSUZWb0hOWXMwaVRVZSs5WUdFOGNBNXZjQTFQZEpudmVyQ1BjZkJoT1hBSTAyaXpRekdnNGhDZzczZ2gwUytEUGpFMnozU0IwVHRNSDdSUVZhbWF4OHpCdXBzNCtSbmgrMEJ5V1ZWUGMweHdvVGJQY1dIUk8wb2gwVGJQZ29IVlY4dmZleHZ2ZWJ2Ukw0SGVrNjd4UG85NDk4RmZjeTdOejNDTjlaeS9zSW5oOFQ4UGM3Q2hQbzkyRUtEcWNLRHZmZkhiKzBFdmNlNllmazl6amtodWtUdWJRZEU5bUZDaE81OXdvZEU5bjNNaDBUdWZjS0hSUFpjeDBUdHZmMytUd1ZNd29PaVFvTzRuejNCU2tsQ3Y4Q1BJQUErQUVLOTRlKzl6anFFNmFVeVJWVXEzVzF6L2ZMQ2phTE5ETWFXZ2NUVmpXTE5mZDRDaE9POTRvS0U2WnRkNEp3Zng4T3FSMzNUZmNtQ3ZjZTZ2Zlg2Uk5uOXg1b0hRNzNCeDM0SHdyNEh2Y0NBL2N3SUFxOENoOE85eitMdVYxTkNsMjVFdmNlNnZmSjZoTmN0eGIzcmdZVG5QZ2VIZUtMNGVFYXZBZjRHZ3IzeFFhTk00c3pNeHBhQnhOc2tSMzNyclFITU5jZDRvdmlqZDhlNXBZRkUxeTAvVUlIRTJ6M1R4MW9DcWIzT2dyNEh3cENDZzdCSGNNZER2Y0pmL2MwWUxiNENiYi9BRWFBQUNVS0VxanA5MWJnTitEM1Yra1RmYWozNHhYN0grZ3c5ME1lbndZVHZYYUxkb3AySGlwK0JXSUhFN3YzcmdZVGU3UUhLcGdGaXFDTG9LQWFvQWIzUStqbzl4MzNIRExvKzBjZmRnYWhpNkdNb0I3c2xnVzBCeE45KzY1aUJ1eUFCWXgyaTNWMUduY0crMGN5TVBzZUgvZWsrMDhWK3g5azZlam9zK2ozSGg4VGU1d0dVNHRUVnhwVkIxaUxWMWNhRTMzZjl5OFZ3UWZBaThQQ0dwMEc5eDZ6TGk0dVpDMzdIeDk1QnIrTHY3NGFEcUlLOXpyb0hmZkQ2aE5PdHhiNDhRYWUrMFlGeEFhVjkza0ZKZmR6SFJObTRmZlNIUk5POXdvZEUyYm05ejRLTklrMUh2dS85M01kRTFiaGkrR040aDRUVHZkekNoT201L2MrQ2pXSk5SNHZnQVVPN0lzbEN2OEEzNEFBOTdrZEU4NmorUWdWRTliM2tBcjNyN1FITDljZEUrYUZDaFBPOXo4S0J4UG05NklkRTlhN2pMeU11eDdubFFVVHpyVDdwUWNPK0V2b0hmZUY2dmVHNlJOUHRSYjZVd1lUcDdRSExkY2Q0b3ZpamQ4ZUUwL3BsZ1cwKzZaaUJ4TlgzWUVGalRXTE5EVWFXZ2MwaXpTSk50SWQrRXpvSGZlRjZ2ZUc2Uk5QdFJiNkJRYWUrMFlGeFFhVjkza0ZKUGR6SFJObjRmZlNIUk5QNlpZRnRQdW1ZZ2NUVjkyQkJZMDJpelEwR2xvSE5ZczBpVFhTSGZjUDZRcjN2TDdzOTBaWnZmZStIZmM1NmZlTjdoTnBnUGMvRnZlYkJ2ZFYyK1gxOXdzcjJ2c3hiV3FKaUdzZkUyV0EySXZYamRZZTU1WUZFMnVBdFB3K0J4TnpnSVQ3UmdYRkJoT3JnS0gzRkFYM053YU5OSXMwc0FyM1VQZWhGYWtIalorZ2pLRWI5eGpCV3ljZkUybUFJa3BnK3cwZVRnWVRxNEQzckFyM3l1a0s5N3krOTNoM0hmZkNIZmQ5N3ZjSTZoTm5nTGNXOTVzRzkwM1U1UGNEOXdjeDJ2c3BibXVKaUdzZkUzT0ExNHZYamRZZUUyZUE4SmNGdFB1NFlnY1RxNEF6SFZvSE5Zc3owUjM0czJJVjk2KzBCaS9YSGVLTDRvM2ZIaE5uZ09lVzk1c0tZZ2NUcTRCekhmdjI5NkVWcVFlTm9LT01weHYzQTd4YkloOFRaNEFuVG1EN0F4NVFCaE9yZ0luaWkrUGpHZzZRNlFyM3ZMNzNlSGNkOStzZDk1WHVFM2EzRnZlbUJ2Z2lIV3BvaVlobkg5ZUwxNDNXSHZDWEJiVDd1QWNUcm1JSGN4MzNVZmVoRmFrSGphT21qS29iOXhtMVZ5c2ZFM1l1VjFUN0dSNUZCaE91OTZ3S2szeTk5NjI2OTZPOUFmZGd1ZmRyN2dPNHJCVnB5czk5MEJ2M1gvY0k5eGozYnZkdCt3ZjNHUHRmVTBTQ1pFY2ZoL3NsQmNrR24vY0tCWjJ2cnBLMEcvY2Qyeno3VkpJZisxMEdmZW9GWGZ1QXVRYVk2UVgzWGdiN1dvWTdPUHNaRzJGaGs1NWpIM2YzQ0FWTkJnNzRHM3k5YUNVSy93RVFnQUM2OTZVZEpRcG92UkwzSHVYM0p2TWs4dmdDOHhPdWdQa3BmQlgzTVBjWDl3ZjNmL2QrK3hqM0Ivc3ZIeE50Z1Bzbit4UDdCZnRoZngvN0p3WVRkb0RiaStMNEtSMzdxbUlIY3gxaTk2cTBCeStXQlluY2k5L3hHdmNtQmhPdWdQdHNrZmNXK3dyM0t4dTlCUHNVVlBjcDl5djNLc0wzS2ZjVTl4WEIreW43S3ZzclZmc3AreFVmRHJHQncxMGxDdmVsSGJuL0FSR0FBT0lkNCs3M2ZPb1RidmZrOS9FVkoxck0ydDIvdS9VZjB3YU5PSXM0K3dBYUU2NzhOL3Z4RllXZW80ZXhHOG1jb0x5Y0g3NzNKQVhmcUtPYTJodkdCaE4yUG9zejkzZ0tFNjYwKzZrSCt5MHhSdnNEUUxwRzluVWZWbnR3Wkc4OFcvc2VHRFdCQlE0aEN2ZDYrQllySFE2S0xBclc5d0wzNngwOTlnb25UaDBUVkpEM0h2ZktGUk9Va0VrZEUxU1VZdmlhQnhNMGxKTDNSZ1ZTQmhOVWxDZ2RFMVNZOTM4R0UxaVlvZnNUQmNRR0UxU1loUGRGQmZ5R0JoTlNrQzBLRTFWZzF2Z1ZJd29POVlzbEN2OEJJNEFBdmZMNEpoMzNKT3IzT1BmU0N2OEFDNEFBN2hQbWdKLzRmeFhGQmhQT2dLSDNGQVgzSWdhTk5JczAxZ29sZ0FWaTkxNEhpUEtMOC9JYXBBZU5vcVNNcUJ2M0ZibE1JQ0JWVENaNUg1aGtCZmREbHMzM0JQTWE5eEk1NmZzK2JHbUppR2tlMm92YWpka2VFOHVBOXpZR0U5T0FvdnNUQmNRR0U4K0FoUGRGQmZ5NEJnNTJIZmRsK1ZRa0hRNldmTDMzcmJyM283MFN1dTRvNy9kZHVCUDArQVY4RmRMUW1hM0pINC8zSlFWTkJuZjdDQVY0WTJLRFpSdjdKVDNZOTJDR0gvZFJCcGd0QmJqM2dGNEdmU3dGRSt6N1R3YjNXSkxoMXZjZ0c2NnNoSG11SDUvN0NnWEpCb2YzSlFXeVNFU1VWQnNUOVB0Vit4VDdKL3RlKzJMM0R2c2s5MXdmRGkvM09nb0J3Ti8zamlvZER2dDk5Nk1kOXg3cUF5b0tEdnQ5U3gzVzl3SVNtL2NIa3VxUzl3Y1R5Q29LRS9STCtCVWpDZzZMSFE3M3RuejNCU24zYWdyM3ZMNzNkZmdCQ3ZlSHZ2YzQ2dmR5N2hPWndKVEpGVkdrZUxqVDk4c0tOSXMwTlJwYUJ4TlR3RFNMTklrM0hqQ0FCUk0xd0dMM2dnZjRJaDExZEltSmN4L1hpOWVOMWg3bmxnVVRrOEQzaWdvVG1jQnRkNEp3Zng4VE04RDR0UGVNRmFvSGpKbWJqSndiOXhxMFZ5c3VXRlQ3R1I5bkJ2ZXNDdmdFaTdsZDkyb0s5N201WUwzM2VWOEtFdmNlNnZmRDZ2ZHk3aE13OFBpczk5MFZFMUR3SklzeWlUWWVNSUFGRXl4d1l2ZUNCL2RoemZUcDl3VTUzUHM5ZFhPS2lYTWYxNHZYamRVZUV6RHc4SmNGdFB1M1lnY1RNbkRtZ0FXTlA0czlQaHI3d3dZVE1YRFppOW1OMXg0VE1QRDNjd29UVW5CekhXTDNyZ2NUa1BENEhoM2lpK1R4R3BiM3d3Y1RLUERxYlJXckI0eVptNHVjRy9jWnRWb21NVlZUK3hjZmFBYjNyQXIzUDR1MFlybGRKUXIvQVNtQUFMM3MrQ1lkOXkvcDl6blhqT1VUbWFDZitIOFZ4UVlUTTZEckhWb0hOSXMxaVRZZUU1S2dKWUFGRXpLZ1l2ZkNCeE9Tb0xRSEV6S2dKZkVkcVFlT3JhMk1yUnZ6cjFVNkh4T1NvRU9LUjRsR0h2Yzd0QVlUVXFCQmxRWDNQd2YzRXpXNElGZGNpWVpqSHRpTDJZM1lIaE9Td1BjM0JoT1V3S0g3RXdYRkJoT1R3SVAzUlFYOHdnWU9pUXIzbnZsVUpCME9wd3I0SmZsVUt4ME9wM3ozQlBpaXVZNGR2N1FTOTBYazl4MzNjUHRWNUJNZG1ma0lGUk90emdvVEh2Y3pIUk5OK3kvMytRVVRIZUtWQmJUN2x3ZjM0cjhWTXdvTzl6bm9IZjhBY29BQTFmOEFjb0FBNmhOUCtXa1dFNmUwQnkrV0JZbmY5NFFLRTAvM0NoMFRaK2IzUGdvMGlUVWUrNy8zY3gwVFYrR0w0WTNpSGhOUDkzTUtFNmZuOXo0S05ZazFIaStBQlJOUFl2ZTlCNWo3YUFYSUJwajNhQVVPOGVrSzk2Mjl1ZmRDK3pQM00xbTkzN3IzdmgzM0h1c3M2aXpyOTB6L0FFdUFBUC8vOUlBQTdoTm1KUGNsRnZlY0J2ZGIxZXJyOURIZCt6RnJhSW1JYVIvRWk4ckNHaE5tS1BkTkJoTnFLS0Q3QVFYRkJoTm1HSVQzTXdYN2xBYW5pNlNNcEI3d2x3VzBCeE5tUlB1NEJoTmx4R0lINTRBRmpIR0xjWEFhKzJjR0UzS2toUHRDQmNRR0U2YWtvdmNRQmZjZkJtQ0xYMkFhK3dBSFNSMzNVZmVoRlpvSGphR2hqS01iOXhtN1Z6TWZFMllrTFUxYyt4QWVUZ1lUcHFUM3JBcTRDdG40MGZjRC8vKy9nQUQzK2gzLy85S0FBUDhBTFlBQUVwcjVQQk13bXZrSUZkYUM5MzM5QmdXM0J2Y20rR01GRTVDZXlaMjJtcVlJZ3B5aGhhTWJzNTZmcDVNZnNteWpYVU50WC9zNVdCNGkrK2NGRTFEN1BQaHo2NVFGdVB1bEJ3NzM5QjMvQWp5QUFQZVVIZmZySGZkbC93QlVnQUFUMkxjVzk3QzBCaTczVXgzajZ4cXdCK09nQ3ZlMEJwTDNXZ1ZTQm16N0tBWDhJZ1lUdVBkUEhmZjBIZjhCRUlBQXV2VDNXdFlkOTJuL0FGQ0FBQlBXdC9mVEZlbUJCaldFSFdMM3NMUUhMdmMyQ3VBYWxmY3R1dnN0Qjl5Z0N2ZG5CaFBtcHZzb0JjUUdFOWFFOTFvRi9ITUdFODczelFvdEJnNzM3SUhEVS84QU9ZQUEvLy9RZ0FEM1FRb1MrRFBqOStQL0FGR0FBUGZrSFJNMkFQZElIUk5YQU1IN1JRVmFtYXg4ekkrUGk0OGJFemFBb1BzOEJSTmJBTVVHa1Bkdyt3S1dWZmN5eHdvVE5nRDNGaDBUbWdDaUhSTTJBUGdvSFZYN2NMRDNQTDMzc2I3M203MFM5N3ZKcitrNjd4UDY5MHIzc2gyNWM3ZGlzaC8zR1pqYzEvVWEzMW5MK3dpZUhoUDg5enNLRS9yM1lRcVFCcVZrbUd0bitBa0s0SUhGVzduM25ncGR1UkwzSHVyMzd0d1RVd0MzRnZldXRBYjNTZ29UbVlEQSswWUZXcG1zZk15UWtZdVFHNkQ3UEFYRUJwSDNjUHNHbDFiM01uVFFYN0UrbkJtem5xYXZyTmlodlpxc25hZ0lpWnFiaVp3YnZLR3BwYVY0cFdtTkgwK0RZR2hPK3k0SSt3dGRjSHhERzJ3R0UxTUE1SXZramVBZTVwVUZ0UHV1QnhNMUFQZFBIZmREZ2NOZHVWMzFIZmNjOTBZdTl3Skl2VjI1RXY4QUY0QUE5OUlLOXpucUUxakFuL2gvRmNVR0V6TEFvZmNVQmZjM0JvMDBpelN3Q2hOU1FHTDNyclFIOTBvS0U1UkF2L3RHQlZxYXEzek1HNm0wajVHZUg3UUhKWlZVOXpWMTBGK3lQcHNac3A2bnI2ellvTDJickoyb0NJbVpuSW1iRzcyS29hcWxHcVY0cFdtTkhrK0RZR2hPK3k0SSt3dGRjSHhDRzIwR0UxRkE1SXZqamVFZTVwVUZFMUxBdFB3K0J3NzNVWXU1WFQwZDkyc0svd0VQZ0FDNjk2VWQ5eXNLOTlmcG85MFRVNEQzUEFvVGs0RDRIaDNkaTkveEd2ZlhCaE5UZ0M3M0JoMEhFMVBBOTJnR29mdEdCY1FHRXpQQWtmZHdCUk01Z0NEMzZRb1RVNEQzQ2gwVFdZRG5nQVdOT29zNU14cjcxd1lUVllEYm9Bb1RVNEQzY3dvVFdZQXpIUTZtKzNDdzl6ejNXQjM0SHdyM1pja0QrQnV1RmZzZEtmUDNXUGRYOXdEejl4cXJyWVIzcngrZit3Z0Z5UWFIOXlVRnNraEVsRlFiKzFiN0pQc24rMTc3Uy9jQit4djNPbkFmcUdLWmFXYjNxQXE0YzdkanNoK0trNUtMa3h2UzBKbXR5UitQOXlVRlRRWjMrd2dGZUdSaGcyVWJEcGtLRTVqNGFhd0tEcWlMSlFyL0FNR0FBTG4vQVZDQUFDVUtqaDMzZlFvVHpQaWo5NFFWdWZzckJ4UE85elAzM2VPWUJiVDdlZTBLRStUM0tCMFR6UGY5SFJQVTJvTDNOL3ZoQmZzclhmYzVCa2FMVFlsU0hpV0FCV0wzd3ZkVkNzV0x5TkFhRHRLTHRHTDNhZ3IvQWorQUFQZVhDaEtWOTNuM0NmOEJJb0FBLy83OWdBRDNlVmIvQUZLQUFQZmtIUk9HUUpVVzkzbTBCajJXQlJOSEFQY245M3ozSVB0OEJST0hBQytBQlJOSEFHSUhFMFpBOTJRR0U0WWdvZnRHQlJNbVFNVUdrUGR3SzVYN1VQZkxCUk9TZ1BjNDk1SUZFNGFBNDVZRnRQdDVZZ2ZnZi9zWisyZ0ZFNHBBK3hUM2F1T1ZCUk9HUUxUN3JXSUhFNHBBOTJjZDhNUWQ5MnNLL3dEZWdBRDN1UjJpM1JPbkFLUDVDQlVUcXdEM2tBb0hFNmVBOTJnR29mdEdCY1FHRTJlQWtmZHdCUk56QUNIMzZRb1Rwd0QzUHdvSEU3TUE5NklkRTZzQXU0eThqTHNlNTVVRkU2Y0F0UHVsQnc3eGk3bGRKUXIvQVNxQUFNZi9BTm1BQUNVSzkrc2Q5NTNxRTN5M0Z2ZXV0QVl3OFIyZkI1YTZyWSsyRy9TdlZEdFppbE9LVng4d2dBVmk5Nk1IRTd5MEJ6aVZCZmMvQi9jZE1Ma3dTVTUrZWxnZTQ0dmFqZFllNXBZRnRQdXVMUXBhQnhOOFNSME8rMzMzb3gzM0h1b0RLZ29POTRJZHY3UVM5N1Rrc2VPeDVCTnRBUGRJSFJPMUFNSDdSUVZhbWF4OHpCdXBzNCtSbmgrMEJ5V1ZWUGMweHdvVGJRRDNGaDBUdFFDaUhSTnZnRFdMTlBjVUN2Y2UrVHdWTXdvT3g0dTBZazRLK0YyMCtBTWRRZVQzT09RVG01QVdFNTMzUlFvVG5jUUtFNXYzMnZrOEZUTUsyZnhkaGdyM0ZSMFRLRXlRRmhOSVhQZ0dDaE9JVEVXS1NvcE1IamFCQlJNb1RXTDRrd2NUR0UyUzkwWUZVUVlUTEUzM2FCMFRLRTczZmdZVEtnNmgreE1GeFFZVEtFNkU5MFVGL0xFR0V5Z3M5N2dLRXlrTTl6LzMwZ1dTQmc2S0xBcS90UGZySFRuazl5NjVaK1IwL3dCTGdBRC8vOGlBQVA4QVM0QUFFMVdnOXg3M3loVVRsYUJKSFJOVnBHTDRtZ2NUTmFTUzkwWUZVZ1lUVmFRb0hSTlZxUGQvQmhOWnFLSDdFd1hFQmhOVnFJVDNSUVg4aGdZVFU2QXRDaE5WVVBkTTkvNFZNd29PeW55OTk3QzY5NkM5RXJyeFZzZjMrdlVpOUJQeTk5VjhGZmMxOXg3M0hmZHU5M3I3R1BjRysxVWZFK3hGUm5scFVSK0greThGeVFhaDl4a0ZtNnV0azdZYjl3N3FRdnRYbFI4VDh2eGVCb1o0aDNCbUd2dFQ5U0QzUEI2TnZSWDdBa3ZuOXdtcmpaNlBveC8zL0FiN1dJaENNL3NJR3c3MzN4M2t5aEwzSHVuMzRla1R2TFFkRTl5RkNoTzg5d29kRTl6M01oMFR2UGNLSFJQY2N4MzNYL2xod0IzM0J4M0g5d0wzdlFxbTlncW45d0lUMHZjd0lBcThDaDhUL3ZzRnh5TUtEcmdLcDN6M0JQaWl1WTRkNU1vU21majErM0QzY0JNY21ma0lGUk9zemdvVEd2Y3pIUk5NK3kvMytRVVRIT0tWQmJUN2x3ZjNRZVRBSGNNZDkybkhWZ3JiSGZkU0NoTzRMQjBUZUNBZEU3U0ZIUk40OXdNS0RrNSt1UGdndVJMQ3RtRGw5NXprRStqM3FYNFY5d1gzQU9iM05mYzFLOVg3QUNoSldUQnNINUQwbyt1d3FiR3J3cEhZbGN5VnNwQ2dvcG1ibExDVXUzQ1VHSFJmWklSa2hHU0ZHU3g5WFgxYlhnaFNWWFQ3RnZzZUd2dHczeTMzSGg0VDJQaE5CTmpDVGZzYSt4cFRTVUJBVWMzM0hQY1l4TW5XSHc0MGk3YjNTN0wzTzdabnJ4TDNDTi8zUnQ5SzR4UHF0eGIzalFiM0g4RE15c1psdWk2WUh4UHMyWnVwdWIwYXpsTzhKUjc3bUFZVDJxc0tFK3ozZ3ZnZ0ZjcXNjMU5RYW04K0gwY0d3b3pNakxvZWlmdHlGWnZSQnhQcTVMRnBURk5rYlRrZlFRWVQ3SXE5aXRDN0dnN21DZzVtaTdiNEdiWm5yeEwvQUJXQUFQZjZIZi8vem9BQTBRcjNvOStVMDFxOEU2ejNIZmhMRmRoNmVQc3RWL3NMUWlBWldBYVErMVVGRTlTNkJoUE9vdmNxQmZnQUJoUEZvdnNxQlJQR3VRYVI5MVVGRTZRNTl4TWQwNWtGRThTdi9CWUg5M2o3WmhWVUIxdUtSb3BaSHZ0eUJzajNCYnozRlpyM0p3anNCb3hZakVaY0dnN01IUlAwSlIwVDdFQUtEdmN1aTYvM1I3WDNGKzlhcnhMMzZkY1QyUGN0SFJQbzV4MFQyUGNiQ2hQb2t3b08rMEorOTlZSzkxYmJQK0VUNVBkWmZoWDNFOWJNMk1waXVEMmFIeFA0OTFBZEUrVDNlQjAvMEZ2b0hnNjBpNi80SjY4Qjl3amM5NURiQTFrS0RyU0xyL2ducitTMEV2Y0kzR3ZsOXk3bFdkc1Q4bGtLRSt6M3RQaWtGVjRkU1l1djkwcTE5eFR2V3EvM25CMFQyUGRSQ3NBYXN3YStvM3RkbXgvM21CM0JHNTZqa1pDZUg2OEhRcGR1M25UTFo2dEltUmtUNk0wS2JETUlQbkp6ZUZ3YmFBWVQyTHVNenZjYUNnNXZmdmNBTEsvNElMWm5yeEwzYkw3M0FOOFRyUGVRSFJOY1hZcEtpbG4zWmdxNGpNeU12UjdSbVFVVGJLLzhKQWNUblBlRENoT3NXNlYxdEI0Tzl4NkxyL2dqczJXeFo2OFM5d2E2K0JUY0U1ejMyN01WdlFZVHJQZEErQ0dIKzNjRit6UUhQMzBGWi9kNWR3ckNCeE9jOXdjSzBaa0ZyL3REQi9zcisvRDdMZmZ3QmZ0RFp3YlJld1g4Q0FkRmZBVm45MDJ2QjBlYkJmY3lCeFBNZ3ZkMUJRNm9pNi8zVTdiM1BhOEI5d2pnOTN2Z0EvZFJDc2thOTNzR1RZcElpbG9lUlg0RlovZDVyd2RGbVFXS3ZZckx1ZmNwSFYyS1NvcFpIa1YrQlE3M0dCMEJ1T3Izb2VvREpoME9vWXV2K0NDMlo2LzNuQjMzZGQ4VDJQZXJDcjJLeS9kN0N2ZHhCb3hZakVaY0dsUUhYWXBLaWxuM1pnb1R1UGNIQ3RHWkJSUFlyL3l1QnhPNHF3b09kdmZ3Q2hMM0NkMDU0UGVLNVJQczkwRWRFL1QzYmgwVDdGWllkRmhjSDRYTGZKWDdJR2tkRHZlMUNnRzE0MGdkRGorTHIvZXA5elpndGhLbzBmY1AzL2NQMFJQWXBQZk5GYmtHRTd5bjl3c0Y5dzBHakZpTVJsd2FWQWRkaWt1S1dSNDdmUVZuOTR5dkJ6dVpCWXE5aXN2M2V3cjNEUVlUektmN0N3VzVCaE84Zy9jMkJmeGlCZzdLQ2hLTCtKVDdWem9LRHZjWCs0T3U5MVAzYkIwU3N1RDNZZFJDMTBMVTkySGdFL1gzZlB1REZSUDU5NkN1Qml1YkJZckNpc2ZkR24raXFZR3NHL2NONGVqM05QYzFOZUw3RFI4VDlXdHZnbjkwSC9YMzV3b1Q4MzJUK3loZUJXZ0g0SUVGK3pzSGwzUnRsV29iK3cwMUx2czErelRoTlBjTkh4UDFxNmlVbHFFZk9ZcFBpbFVlTEh3Rjk0SDNnQlZ5ZHBDVWVSLzRFZ2VVbmFDUXBCdmx2a2o3Ry9zaFdFZ3hIL3RmRmpGWHp2Y2I5eUcvenVXa240YURuUi84RXdlQ2VYZUdjaHNPelIyYzk5a0s0UGR2M3dPMytFc1YwWDRGakZtTVNWNzNzQXI0YWdmNE5CMDNCb3E5aXRDNzl5RUtCdzVaaTYvM0tyLzNYYThCMHQvM1d1QUQ5M2NLOTNtdkIwV1lCWXE5aXN6M0h3cjdlR2NIMEpRS2RRZUljWE9KY3hzamQ2endINTJMblp3YTBaa0ZyL3RyQnc3M2tQZlpDdHYzVk52M1ZOc0R0eGI1bEs4R1Jaa0ZpcjJLeS9jZkN2dHZ2QjM3YTd3ZCszRDNGeDBPOTVIMzJRcmI5MVRiOTFUYkE3Y1crVlFHK0RRZE9mY1RIZEdaQmEvN2I3d2QrMnU4SGZ0d3F3b09rWXUxOTErNm9QYzJZUGdBSGZjUzRQZEY0eFBUOXlRVzk0TUc5eDdDenRqWFdOUDdHSEJ2aW9sd0h4UEx0b3krakxVZTBwa0ZFOWV2Kys4SEUrZUUrellGdVFZVDE2UDNDd1gzRUFhTVdJeEdYQnBVQi9nU0hWb2VPMzBGOXp2M1FoV3JCNDJnb295akc5T3dhMGhHWm1nN0gxSDNqZ3IzSm91dlo3WDNYN3IzSjYvM25CMzNOdVB0NEJPKytIRVc5M212QmtXWkJZcTlpc3YzSHdyN2Vhc0tFMzc4UldjVjkyd0c5eFBMemQzZFU4bjdFM04yaW9sMUg3YU12NHkwN0FyM01mZENGYXdIakpxWmpKc2IzYTV2UlVkaVprRWZYdmVPQ2llTHRmZGZ1dmNucndIM0NPRDNTdUlEdHhiM2dBYjNFOHJOMjl0Unpmc1JjV3lLaUc0ZnRveS9qTFhzQ3ZjeDkwSVZxd2VOb2FLTW5odmdyRzFDU0dGcVFSOUw5NDRLK3hCK3VQOEF1NEFBdlA4QXJZQUF1UkwzNytNMDRoUG85eTczYlJYM1ZwQUYreU9HVTF3eUczZDZqSTk3SDM3REJhcUVmcHB2RzNkN2ZubUVIMGVNeTFibUcvY3UzK2YzTi9jMUt1RDdEbFJKZTNGZ0g0NzdDd1hEQnA3dkJaYWZvWStyR3hQdzJNZG0reDZSSC90VmpnVU85MWQrdUd1djkxTzI5ejJ2YXJuM25CMzNCdVQzbGVnVHIvaXJmaFgzRE83azl6UDNNeWpwK3d6N0FpdzcreDUrSC9zSUJoTjN1SXpKakx2c0NtZjNlSzhIUnBrRmlyeUt6Y2thOXdZR0U2LzdMWS91TlBjSkc3Z0VOVjdSOXhuM0didlYzdDYyUGZzVit4UmlRRFlmRGtPTHIvYzV0SEdsOTFLMlo2OFN6K0QzUjk4VDF2Zmc5NTBWZEVnSFFtU2wxY2FzcXRBZjFnYU1XSXhHWEJyNzF2dWRGWWVZcG9Tbkc3bWNsYWVZSDcvMEJiMmtrSjY5RzdrR1hvcFBpbHozWmdvVHpyaU16WXk5SHRHWUJSTzJyL3VGQi9zUFUxSStUYkZVOFlNZlozeHFiWFpkYVQ4WVFYNEZEc3dkRS9RbEhSUHNRQXEwOXhvK0N1VUs5d0QzQnZkWENtMzN0eDFTM2hQb2dDVWRFK1NBUUFvVDh3RDI5eTRyQ2c1Rys0M2w5ek92OS8zRTM3a1M5d1BkT2VEM2E5OFQ5cTRXOTJpdkJscVhCWXEraXMyNEd2Y2ZCN0cxcVpXckc5V3dQZnM5K3plQ0xHbEdINGlFaDRXSGhYK1VHSjl6ZDVOekcyOTRmbktESDNPTXBXL0ZHN3VtbmF1bUg4dldvZmNaOXlRYTkzZE4xU1llRS9wWlczWmRZaC8zSy9kUnVmdFJrUGZuQ2hQMjk5b2QzSUVGU2o1ZDJQdmNCMTZLU29wWkhrRjlCUTdtQ3ZjcytMQXVDdnNJZnNmM1FydjNRYmtTdXVJMDR4UG85NlYrRmRqTXFlRzNIM09lQlZaZ1gzVk5HeFB3TTFDNDl4ZUdIL2VCaHdYQUJ4UG8rNENGQmZjWGtjTzQ1QnVwb29lQW9CK2NPUVcvQm8veEJhWmVXNWxTRy9zaUxVSDdTL3N4MkRUM0tSOE8rejczSlIwQndkdjNTTndETFIwTys4YUxyL2pHOThFZEUrRHZIUk9ROXhjSzNSMUFmUVZuQnc3N3hvdXYrTVQ0SlFvVDBLVWRqdmNjWndvVDZQZHErTVFyQ2c3NzIvdU43Zm1COXhRUzRQY2Ird0hjRStEM3VRb1QwUGNoSFh5Vit5dXhIUTczS1g3M0FDeTE5MSs2OXlDMlo2OFM5MnkrOXdEZjkwSGlFN2Yza0IwVGIvZlhDdHRSemZzUmMzQ0tpWEVmdFl5L2pMVWUwcGtGRTNldi9DVUhFNi8zZ3dvVHQxdWxkYlFlRTNmNERQZHpGYXNIalo2ZWpKd2I0S3h0UWtoaGFrRWZWUGVPQ3ZkWWk2OW50ZmRWdG1PNjl5NnY5NXdkOTNIZzkwRGlFNi8zcXdxOWlzdTVHcVQzY1hJSEUxLzMxd3JZVWNuN0VYUndpb2h4SDdpTXdveTNIdEdaQmEvN2VXY0gwWDRGRTYrTVhZeFJYeHI3Y1FhM2pNV011T3dLRTEvNFkvZENGYVFIalo2ZWpKd2IzNnh1UTBsa2JqOGZWUGVPQ29pTHIvZjUwOVM1RXZiY090NDQzL2R6NEJQbTd3b1Q4dmdYSFJQcSswd0dqL2NuQlJQeStBVWRFK1k1Qmc1Smk2LzNTclgzRk85YXIvZWNIUlBZOTFFS3dCcXpCcjZqZTEyYkgvZVlIY0VibnFPUmtKNGZyd2RDbDI3ZWRNdG5xMGlaR1JQb3pRcHNNd2crY25ONFhCdG9CaFBZdTR6Tzl4b0s5MW40c0M0S3RJdXYrQ2V2QWZjSTNQZVEyd05aQ3ZmWCtMQStDc29LNUxRUzl3cmw5d0gzVi9zcTVSUE4wQjBUbnZjMStEM0JsZ1VUenEvN1Z3Y1RubWNING4vN0Qvdm9CUlBOK3hIMzZlT1ZCYkQ3aEFjVHJVWUtFODFrdFhDOUh2ZFYrY0VWWGgycDk5a0s0UDhBVW9BQXl2ZlRIZDhEdHhiM2ZBYWErelFGdXdhYTl6UUY5NEN2QmphYkJZcThpOHU0OXlFS253cFpIa1YrQlE2TWk3WDNXcnIzTXJZUy93QWNnQUQvQUVLQUFQY1AzRHJmOXliL0FFQ0FBREFkLy8vaWdBRGpFK2lBOXh3Vzk0b0c5eDYrME5qWVdNdjdHR3h2aW9adEgvYzRCeFBxQVBjcEJoUHBBS0FvQlJQNkFMa0dodmNpQmZ0bnZ3YVA5eUwzZFFwbitBTUsrd1A3VGdlRSt6WUZ1UWFqOXdzRjl3Lzdmd2I0RWgxYUhqdDlCUlBrZ1BjNjkwSVZwUWVOb0tHTm9CdmNyMjlFU0dwck5oOU85NDRLMGdwRCtDTGwrREFLSlFwZXVCS0w5NFlUTVBoR0JNS0Q5MG44UkFXM0J2Y0E5OElGRTVDYXRwbW9vcTBJaUphV2lwY2J1NXFjcDZOMm0yK1FIMjJJZFg5MWRITnhkMWx5UkViN1hSZ1RVUHNPOTlYamxnVzArNFlIRHZzc2k2LzRJTFpuci9lY0hSUFF0eGIzZWE4R1JaZ0ZpcjJLelBkN0N2ZHNCcFAzUHdWY0JtejdGQVg3eFFZVHNJOEtTNHBaSGtWOUJRNzdLSXV2OTFPMnJQZEFZTFpuci9lY0hSUFV0L2QzRmRONkJsMktTNHBaSGtWOUJXZjNnNjhITzVrRmlyeUt6TGthblBjRHR2c0RCN3FNell5OEh2Y21CaFBrcXZzVkJib0dFOVNEOTBBRi9Bc0dFOHhuQjlGK0JZeGJqRTFkR2tNR0R2ZEUreXIvQU1HQUFQLy95WUFBL3dBMmdBRC8vOVNBQUsvM1I3WDNGKzlhcnhMMzZkZjNuTkphdkJNMkFQZWQrQzRLUVpvRmlydUt5c0FhdHdhK3BINWRteDhUVndEM21CM0FHNHozeWdvMmxtL2RkTXRucVVlWUdlY2RFellBOXhzS0V6b0Frd29PKzBMMy9CMzMxZ3IzRjhtTTJ6L2hFL0gzR2Z0bkZmZ2NDaFAwMHJTdXRycHl1R0N6SHhQeDhKakZ4YzhheW1LNFBab2VFL3IzVUIwVDhmZDRIUlAwUDlCYjZCNk9qb3VORy9lTkhRNWcreXIvQU1HQUFQLy95WUFBL3dBMmdBRC8vOVNBQUsvM1NyWDNGTzlhci9lY0hmZWEwVnE4RXpZQTkxRUt3QnF6QnI2amUxMmJIeE5YQVBlWUhjRWJqZmZLQ2pTV2I5MTB5MmVyU0prWnpRcHNNd2crY25ONFhCdG9CaE0yQUx1TXp2Y2FDZzY0aTYvM1NyWEE5elkwNzFQNEFCMzNFK0FUNDZuM3pSVzVCaFBMby9jTEJmY1JCb3hZakVaYzk3QUs5M212QjBXWkJZcTdpc3pDR3JNR3ZxUjdYWm9mOTVnZHdSdWVvNUdRbmgrdkIwR1hiOTUweTJlclNKa1pFOUhOQ20wekNENXhjM2hjRzJnR0U4WEFqTXVNdXg3Um1RVVR5Ni83N3djT3FZdXZaLzhBTFlBQS93QzFnQUMyOXoydjk1d2Q5M3ZnazlOWnZSTzg5MUVLeVJyM2V3Wk5pa2lLV2g1RmZnVm5CeE8rOXprR0U3MmgreW9GRTM2NkJwSDNVZ1VUZkRxV0JZcTlpc3U0OXlrZEU3ejM4aDBPK3dqMy9CM00rQnE1QWJYajl5VEpBL2VwK0U0Vm5KMkpoWjRmblVrRmI1S1pkNjBicEp1WHBaQWYxWDVCd3pFYit3ejdBeTM3TXZzZzFDLzNDWHdmcDJLWmFtYjNxQXE1YzdkaXNoL2x5N2plcHg5eW1BVmFiRmx3VWhzdFNjLzNFdmNVeWMvZ0h3NHkrNE91K1JUNE5Rb1Q0UGhJQk1DQ0JSUFE5elQ4TlFVeGlsQ0tXQjQ2ZlFWbzk1YXVCekNhQllxOWlzWGlHaFBvOXpENE5mZW5IUWNPTXZ1RHJ2ZGd0dmdkK0RVS0UrakFGdmMwQmphS1U0cGFIanA5QldqM2xxNEhNSm9GaXJ5S3hONGE5eSsyK3lFR0UvVDNJdmdROTZjZFpBZkFndmNuL0JRRit5Y0dEbGFMci9na3NoS1Y5MXo3VmZkenEvZVErMlQzVDFqVFdyd1Q0dmlkK3lvVmtmZFNNNWY3SHZkWkJSUFU5eVAzUk1hV0JiTDdUMlFIelg0Zyt4MHI5eC9JbGdXeSszTmtCOUNBOXhyN1dBVVQ2UHNtKzBsTGZ3Vm45MXl2QjBDWTl3TDNJKzM3STBSK0JXY0hFK0wzU0FZVDRhTDdLZ1VPV292L0FDMkFBUDhBaklBQXYvZGRyeExTMy9kYTRKUFRXcndUK1BkM0NnY1QvUGM1QmhQNm92c3FCUlA4dVFhUjkxSUZFL2c2bGdXS3ZZckx1TmtLKzNobkI5Q1VDblVIaUhGemlYTWJJM2VzOEIrZGk1MmNHdEdaQmEvN2F3Y09pSXV2K0JEVEV2YmNPdC8zYytBVDZQZENIWS8zSXQwS0U5ajNmSzhHZngwVDZQYzNIUTczTG91djkwZTE5eGZ2V3Eva3RCTDNhT1d5MTdMbEU5cjNMUjBUNnVjZEU5cjNHd29UNzVNSzl3YjRwQlZlSGZ2R2k2OEI5dDhEVXgyUDl5Sjlrd1VPMngzWHRCSzQ1RjNsOXliZk9kMC81Uk82QUN3ZEUzb0FJQjBUdVFDRkhSTjZBUGNEQ2hPMGdQczErTklWWGgyTkhSTjZnUGcwQ2hPNmdQZHNDdVVLMTdUM1Z3cG41ZmN1NVZMZUUvaUFKUjBUOUlCQUNoUHpBSXIzRGhWZUhkd2R0SXV2K0Nldjl3M0tFdmNJM0kzM21uL2JFL1JaQ2hQbzl5LzR4SWdkOXhnZDl3RDNCaEs0Nm0zM3R4MXU2aFBTSmgwVDdQVDR5Q3NLRHRJS3lncjNEY29TaS9pVS9BRDNtaTczN0IwVG1mYzErRDNCbGdVVHlhLzdWd2NUbVdjSDRuLzdEL3ZvQlJQTSt4SDM2ZU9WQmJEN2hBY1RyRVlLRTh4a3RYQzlIaFBLdy9uaGlCM0tDaEtMK0pUN1Z6b0s3dm5FZmdwT2ZyZ1N2K05qMHZkLzVCUFE5Nk4rRmZjYjVQVDNIZmNGWGM3N0hzOGZFN0JGckVXbnBScWdxSlh6bUI3aGw3ZVNvS0NhbXBXM2xMZHdsQmh6WG1DRFpvWlFnUm43TEhOY1psWWFVTHR3MkdnZUU5RDdCMlJSTmZzR0d2c2w3algzREI2UXVCVThVdEwzRS9HbnorK3hIL2NBV0tsVCt3RWEreFZSVGtNZUR2Z3BmdkV5dSsydzk1aXc0dkpHdUJMM1BMUDN2clRtMXZjLzFoTzd3TnQrRmIrdnFieWVINXk0ajdQa0d2ZVBCL2ZFL0lZRnJ2aFFCdHlUdktLdkhuQ2xtb0tpRzdDYm1xU1VIN1pwbjJoVloydGFlQjU3WG9ka054cjdqUWNUdDhEN3F2aHVCZnMzWWdiWmc2UmlCZnZsQnpxRFczTm5IcVZ4ZlpSekcyWjdmSE9DSHhPN3dGK3RlSzhlRTNmQStNeVlGZmUvdS91L0J2Y3IrQjhWd3FsZU5qZHZYVkpRY0xuZjRLdTR3Uit3QkRrOFRTSWgyRTdmM3RqSTlmUTh5VG9mRHZqSXRBSDdPK1gzTHVVRCtNZ0VYaDM1WmJRQit6L2s5emprQS9sbEJETUtEdnR3c0FHZ3lRTXY5N0lkdm0yOFdiVWZhd2F0WFp0blkvZ0pDdm8vOTlFS0hBVzMrQThLSEFXM3pSejZTUVlPSEFhSDk5RUtIQWlUK0E4S0hBaVR6UnozYlFZTzkrMGQvd0NnZ0FEL0FDcUFBR2ExOTFqVDl3cTlFLzJBK1RmMzVSWDdWZnNWK3d2N1BQczgreFgzRFBkVTkxUDNGZmNJOXp6M1BQY1Yrd2Y3VkI2OUZ2ZU1IZmdOQ3ZkVjl5NzNHdmR1SHZ3SCt6WVZmWFdPazNVZmY5SUZYd2FPTEFWNHI3T0N0aHYzQjl2Zjl3djNDamZoK3dNZkUvdUFZR3VGZFdRZmlTd0Z0Z2FYMHdXVW5wMk9teHZUeGxJZ0h4UDlnQ0JXVXowZUR2Y0srQU9rZXFsdHF2ZDlxZi8vNG9BQS93QWRnQUI0cEJMQXFmZG56TTNROXlENE1Rci8vOStBQVBneENoTW5nSm40Q3hYM0FLY0daSkVGOTBZSDYvdG9CWndHN2ZkdEJSTlRnUHROQjJlSEJXLzNIcWNIWm84Rjkzb0hzSThGcHlvSEx2dGZCUk1yZ0NyM1h3VXlid2FzaUFYN2VRZGtoUVVUaDZENEwvY0xGU1RSVitteHFaT2FvQjZJeWdWbkJvRlNCWW1CZ1ltQUcxQmV1T0RmdXJlL0h4Tkh3SmFWaW9pVkg1VlNCYThHanNvRm1uWnRrMnNiRTRlZ01VQlVLUjhPOXdyNEM2ZHZxRzc0QkFyL0FPaUFBUDhBSG9BQS8vL2lnQUQvQUIyQUFHNm9FdmY2SGY4QUhZQUE5MmpNOXdUTTl3WE9Fd253bGZnTEZmY0FCaE9COEtjSEV3bnc5NHdLRXlMdzk3NEtLZ2N2KzEwcTkxMEZNVzhHcllnRkV3bndpdnQ1QlJPQjhHU0ZCUk5COFBnMGJ4WDNHZ2Jqek1EbzhVMjVOaC83SUFZVEZQQnZCN1dHQmZ0NEIyR0dCUk5COFBjYjk0RVZ2cTFtT0QxcFpWa2ZidmVBQmc2SCtDUUtBL2RYSFE1ZGZ2Y1dFdHYzWEFyM1IvZGNDaFBJOXlWKzl4RWRFN0N0Q3ZlaC9VMzNFUjBUcUswS0R2ZFBmdmNXRXVEM2ZCMzNBdmQ4SFJQSmdQY3BmbXNLRTZtQTl6UWRFNW1BOXpNS0U4bUE5L1lkRTV5QTkwTDhibXNLRTVxQTl6UWRFNW1BOXpNS0U1eUE5L1lkRHR4Kzl4WVM0UGQ4SGZjUjkxd0tFOHIzS1g1ckNoT3E5elFkRTVyM013b1R5dmYySFJPYzkxTDhidmNSSFJPYXJRb08yMzczRmhMYjkxd0s5MHYzZkIwVHh2Y2xmdmNSSFJPeXJRcjNwUDFOYXdvVHF2YzBIUk9tOXpNS0U3TDM5aDBPTHdyMzhmZEZpd3BmSFhqeUhRSEY5a1VLRHNLTHVQaGYrRGdLRTlqSkNoTzQ5MVVkRTlqUDB3b1R1UGdhSFE0aUhRNUppN2ozYXJqbjl5MzM5Z3IzSTdlVytCQWQrQkVkK0JBS0U5ejNIUGVURmQ4S0U5NzNXQVlUN1o4akJSUHV3UVlUM29aSUNnNjZIZmdaQ2hQYytMalFGUk84OTAwZEU5dzBIUTQ3SFE0eEhRNldIUTZtSFdTTDk0Y2Q5K3QrSFp3S0RqOEtEbVFkRHNIeUhRSEY5d0QzMnZVRElSMzNWZnNjNnZzWkh3NTdIY0g3UzhQM0NibGV1UGh4dmZlQUhSUGMrRjM3U3hXeHRaU2RxaCtBcndXRmNIT0tmUnREWGJQWWh4LzNDNTczQWZIM09CcjNWZnNjNnZzWit4cjdIU0w3U3g0VHZQczg4eXozQ1hZZUU5d3FqczArOXdFYis3ZjRYaFgzQ0xqM0R2Y0s5d3UzK3c3N0NQc0lYL3NQK3d2N0NsNzNEL2NJSGc2YkNnNzRMUW9CeGQzM1k5NEQ5MjJ2RlNjZERuRWRQeDBPamY4QjlZQUE5MnNLOThNS0VxSDNpUHVJK00vN1h2ZGVFNGozdUlVVnRBWVRKUGRMK0kzWWxnVVRsTEw3WGw4SDA0VDdIUHY5K0NNS0UxQmtCODJEQlE1RkhRNXVDandkRHFnZERpOEs5K3I0NXlzZHBQd2Rpd292Q3ZkYStPY2tIZmNyL0RhTENpOEs5Nzc1VmpnZE8vd3lpd284Q3ZnZzk3MGRrUGRpKzJMNHpSTTVrQllUbWxrZEV6bUFDaE5aOThVZDcvamNYZ29UT1RjZEV6MmRkSFdiWnhzVG5rNXJXRDEvSHhNNTk0MzhLNHNLUEFyNE5mY0NFcEQzWWlmMkNoTXprQllUbFZrZEV6T0FDaE5UZEFvVGxjZ0tFenYzT1BqbUl3cGwvRFdMQ2p3SytFUEtpaDMzRnZqMEZmZkN5dnZDQnZkdi9JS0xDdk1keUlvZDl4djVXRDBLOTB2OHNvc0s4eDNIaWgzM3EvalpGZWUyenZkZUNtdFBHMDlucS9mekhVam5HM0QzRFJXbGQ5bmJCYUdoajVtYUdwMTVtWHA2Zkg1dGZSNjcvUVdMQ256M0JSM1dOaDM0S01nU2tQZGltdmNhRXgyUUZoTlBXUjBUSFlBS0V5MTBDaE5QeUFyM0cvbFlQUW9UbmZjTy9sWWlDc2o0T0lzSzh4M0hpaDMzcS9qWkZlZTI5UXBkZW1kclR4dFBaS3U0ZkI5dGdmZ3BDcWIzRFJWYTd3V3BmWHlZZWh0NmVYMTVmSTk5b1hVZjJUc0YwUHlOaXdyekhjajNGczRTa1BkaTdid1RPNUFXRTV0WkhSTTdnQW9UVzNRS0U1L0lDdmVZK1RiM0dRcjNTL3l5aXdyekhjZlV3WVBCRXBEM1l2dGkrTTBUUElDUUZoT2RBRmtkRXp5QWdBb1RYSUIwQ2hPYkFNZ0s5d2o1YUo0ZEV6eUFXQjBUT29DWDkzWWRFNXNBOTBBZEV6eUE5d29LMGZ3b2l3bzhDdmdtd1JLUTkyTDdZdmpORXpLUUZoT1VXUjBUTW9BS0UxTDNCQXIzT2ZsaTk5VUswUHhjaXdvdkN2Y3MrTXBjSFduOGhJc0tmUGNGSGRZMkhSS1E5MktiOXhvVEdwQVdFMDVaSFJNYWdBb1RLblFLRTA3SUN2ZSsrVlk0SFJPYTk3b2R4L2c0aXdvdkN2Z3UrTXBnQ3ZlYS9JK0xDandLK01IT0VwRDNZdmVEOXlnSzl5ejR5amtLbGdwZy9INkxDandLK0tQQmc4RVNrUGRpKzJMNHpSTTVrQllUbWxrZEV6bUFDaE5aZEFvVGxzZ0s5eXI0dzhJZEV6bFlIUk0xbC9kMkhST1c5MEFkRXpuM2V2eXRpd3A4OXdVZDFqWWRFcEQzWXByM0doTWFrQllUVGxrZEV4cUFDaE1xZEFvVFRzZ0tFNXIzdFB1SElnckkrRGlMQ2p3SytIek9FcEQzWXZQM0tBcjNudmpMRlRJSzUvdzVpd284Q3ZnZnJ2Y0ZzQktROTJKMXQvTzNFejJBa0JZVG5vQlpIUk05Z0lBS0UxMkFkQW9Ubm9ESUNoTTlnUGVzK05BVnJoM1EvRUtMQ256My9RbzJIUktROTJMM2JNc1RIcEFXRTA1WkhST2V0L3NOT0lBRlpQZENCMTl0YUZsWEdwQUtIeE11OS9vS0hxNnlCa3lVKzAzNGpRVlBCaE5PeUFyMzhmZEZpd3FOQ25qMy9CMzNWaDBCeGZiM2Zja0Q5LzZ2RmZzSE9kdjNNL2MwNk5uM0FxT29oWHVwSDV3ekJjY0dpUGNOQmF4T1M1RmZHL3MvK3hQN0VmczMremIzQlBzSjl6dUNINEJDOTJjS2tiakRqY0tZdktJWmovY05CVThHZXpNRmUybG9oV3diRG5qeUhRSEY5a1VLT2ZqckpCME9lUElkdzhFQnhmWkZDdnNXK1diMzFRb09lUElkQWNYMlJRcUgrVm80SFE1NDhoM0s5eFFCeGZidjl4cEZDbTM0NGhWaUhjS0x1UGhmdUYrMzBjR01DdmVmOVJQTXlRb1RyUGRWSFJQTXo5TUtFNno0R2gxZStJWVZjM1lGRTl4QUhiMGR3dmNGSGRiMzR3cXM5eHJ2OVJOcXlRb1RXdmRWSFJOcXo5TUtFMXI0R2gwVDd1LzhZeVFLd3ZlM0N2ZmpDbXozbXEvMUUrckpDaFBhOTFVZEUrclAwd29UMnZnYUhSUG1iUHhJaUIwaUhmZHg5K2tySFE0aUhlTDM2U1FkRGlJZDkxZjRXRGdkRG1NSzBjRk5IUk5Wb0gwZEU1V2dQaDBUVmFCaitGNEhFeldna1BjdEJSTTFrRk1HRTFXZ0tSMFRWY0QzV0FZVFdjRDNvQXJOK0dUMzFRb09Zd3JnOXdLTUNqYjNCL1MzWS9jSFUwb0tFMVZJZlIwVGxVZytIUk5WU0dQNFhnY1ROVWlROXkwRkV6VkVVd1lUVlVncEhSTlZVUGRZQmhOWlVKNGpCY01HRTFWUWhVZ0tFMWFneS9mb0l3b09Zd3J1eXFvS3FmZjJ3QjFqQ3RqM0ZJd0tvdmNhZFZBS0UxVlFmUjBUbFZBK0hSTlZVR1A0WGdjVE5WQ1E5eTBGRXpWSVV3WVRWVkFwSFJOVllQZFlCaE5aWUo0akJjTUdFMVZnaFVnS0UxZVE5MG4zNEJWaUhXRDMvUXIzZWdyM0c3ZGd5NGxLQ2hNcmtIMGRFMHVRUGgwVHExQmorQmNIWDIxb1dWY2FrQXIzK2dvZkV5dVFzUVlURzVDUTl5MEZFeHVJVXdZVEs1QXBIUk1yb1BkWUJoTXRvSjRqQmNNR0V5dWdoVWdLRG1NSzA4aXFDcVg0V2owS0RpSWR1ZmZNWEIwT21BcjNWL2hZT0IwVHE1RDN1aDBPSWgzM3hQZk1ZQW9PWXdyM2RjNU5IZi8vMG9BQXZCTlZpSDBkRTVXSVBoMFRWYUJqK0Y0SEV6V2drUGN0QlJNMWtGTUdFMVdnS1IwVFZjRDNXQVlUV2NDZUl3WERCaE5Wd0lWSUNyVDN6RGtLRTFlSTl3Z0tZd3IzVjhHRHdVMGRFMWJRZlIwVGx0QStIUk5XMEdQNFhnY1ROdENROXkwRkV6YklVd1lUVnRBcEhSTlc0UGRZQmhOYTRKNGpCY01HRTFYZ2hVZ0tzZmZGd2gwVFZ0QllIUk5WMEpmM2RoMFRWZUQzNmdxWUNoT3JrUGRPL0lVa0NtTUs5ekRPakFyenZIbFFDaE5WVUgwZEU1VlFQaDBUVlZCaitGNEhFelZRa1BjdEJSTTFTRk1HRTFWUUtSMFRWV0QzV0FZVFdXQ2VJd1hEQmhOWG9JVklDdmNyOTgwVjl5b2RZd3JMeGFMR1RSMFRWdEI5SFJPVzBENGRFMWJRWS9oZUJ4TTIwSkQzTFFVVE5zaFRCaE5XMENrZEUxYmc5MWdHRTFyZ25pTUZ3d1lUVitDRlNBcUI5OTVlQ2hOVzBEY2RFMWZRblhSMW0yY2JFMWZnVG10WVBYOGZEcm9keGNqNEdRb1Qzdmk0MEJVVHZ2ZE5IUlBlTkIzNyt2bGRQUW9PdWgzSzl4UVN4ZmIzQlBjYXVlWVQxZmk0MEJVVHRmZE5IUlBmTkIzN1lQampGV0lkdWgwU3hmYjNLKyswNWhQYStMalFGUk82OTAwZEU5NDBIZnNZK3l3b0Nyb2R3OEg0R1FvVDF2aTQwQlVUdHZkTkhSUGVOQjM3eXZsbjk5VUtEcm9kK0JrS0U5ejR1TkFWRTd6M1RSMFQzRFFkKzBiNVd6Z2REcVordUd1MytHbTlqQXIzRTl6azNCTjh3aGIzUXdhSTNvdmgzaHJnQi9jU3RMMzJxS1NKaUtVZVNtdG5VRTBhVGFwZndtVWVxM1lGRTd5dWQ1eHViUnBkWm1wVGdZQ05rWDRlZStZRldnYUcrd0VGZEtlNWY3TWI5d2k3Mzh5OWRiWlBzeDlxb2dWb29uZWR2eHJHcUxIRm9CNmpCNkplVkpoWUcvc3hQVVA3TUI4NUJ4TjhTWXRHaVVZZVBJRUZEcm9kNE1yNEdRb1Qzdmk0MEJVVHZ2ZE5IUlBlTkIzNzd2ajV3QjI2SGIzRm9zYjRHUW9UMi9pNDBCVVR1L2ROSFJQZk5CMzhDUGpoWGdvVDJ6Y2RFOSt2Q3ZjQ3VCMzNWYm5sdWVCTUNoTDNGdWIvQVE2QUFQOEFYWUFBTHVjVHRvRDNjZmU2RmFhTHBhWWE5Nk1HY0l0eGNCcUIrNk1ITUc0VkUzYUFQaDBUdG9EM05BcklpOG5OR3ZlakJraUxUWXBQOXo4ZGlkRDMzQjJtaTZXbUd1ZTVML2dtQ2djVHR3RDdqMlFHMllJRmNJeHdjQnI3by9nbUN2dVFCeE82Z0dRSDJvR01jWXR3akhBWkwxM25CbkNMY1hBYUR2Y08rM2ZOOXpXakNuenA5MVhtRTlhQWZSMFR0b0ErSFJQVmdHUDNqN01IRTlhQVB2ZkRIYzdXR3Zla0JrZUxSSWxIOS80S1kvZVFCeE82Z0xNSFBQY2dDczRlMnBVRkU5YUE5MThkU1l0S1JScjdwQWJLK0M4SzJKUUZzdnVQQnhQYWdEb2RFOVdBMS93SkZWZ0tEanNkOTRqNFdEZ2REdmNPOXdVZDFxTUswUGNhME9ZVFZvQjlIUk0yZ0Q0ZEUxYUFZL2VQK0EwZHp0WWE5NlFHUjR0RWlVZjMvZ3BqOTVBSEV6cUFzd2M4OXlBS3poN2FsUVVUVm9EM1h4MUppMHBGR3Z1a0JzcjRMd3JZbEFXeSs0OEhFOXVBT2gzM2QveUZKQW94SGZjRjkra3JIUTR4SFhiMzZTUWREakVkeXZoWU9CME8rNFdMTWgzZzl3SVNsL2NIbE9hVTl3Y1RrbjBkRTFJK0hST1NRUjBIRTZJNkhST2ZTZmZvSXdvTys0V0xNaDM0R3dvVG5IMGRFMXcrSFJPY1FSMEhFNnc2SFNMMzlzQWQrNFdMTWgzWTl4UVM5d2YzR3ZzRjVoT1NmUjBUVWo0ZEU1SkJIUWNUb2pvZEU1eTU5K0FWWWgzN2hmZjlDaklkRXVyTGRPWVRxdXNLRTZ3OGdRVmo5d3NIWDIxb1dWY2FrQXIzK2dvZkU2cnZCaFBLc3djOWxBV0owSUlkMlpRRnN2dVFCeE95OTFvSys0V0xNaDNSd1l3S0U1UjlIUk5VUGgwVGxFRWRCeE9zT2gxRytHVDMxUW9PKzRYM0JSM1dNaDBTOXdqM0d2c0c1aE5LZlIwVEtqNGRFMHBCSFFjVFVqb2RFOHk2L0lVa0N2dUZpeklkOXpET2pBcDh2Qk9VZlIwVFZENGRFNVJCSFFjVHBEb2RFNXFyOTgwVjl5b2QrNFdMTWgzTHhhTEdqQW9UbW4wZEUxbytIUk9hUVIwSEU2NDZIZnNhOTk1ZUNoT2FOeDBUbnAxMGRadG5HeE91VG10WVBYOGZEcFlkOXl2M1dUZ2REb3oza2dwa3NoTDNIT1BUNzI3M2VmdHA5MTRUYXIwSzk0K3pCenFWQllxN2k3dTRHdHZsQlJPcTl4YjdmRWlDQlJOcVkvZDVCeE9xc3dkSWxQcys5N3NGRTFuM0hQY3Q1WmdGRTJteSsxNEhFMWxrQjhGKysybjdod1d6QnhOczBJdlFqTThlM0pVRnN2dVBPaDMzbVB3dktBcGtpL2VISGZmcmZoMmNDcGIzNlNRZERtU0w5NGNkOSt0K0hmOEE4NEFBOStjZEUwNzNnQW9UanZkZEhSTk8rQjhkRXk3M2lCMFRUb2NkRTFaa0I5cUJCUk5POS9jSytCTDM1TElLWkl2M2h4MzM2MzRkc08rY0NoTk85M2o4THlnS1pJdjNoeDMzQlBjajQzNGQ5eS8zSWhORzk0QUtFNGIzWFIwVFJ2Z2ZIUk1tOTRnZEUwYUhIUk5LWkFmYWdRVVRSdmYzQ2hOWDk5RjNxUW9PWlBjRkhkYjNoeDMzNjM0ZHR2Y2FFeWIzZ0FvVFJ2ZGRIUk1tK0I4ZEV4YjNpQjBUSm9jZEV5cGtCOXFCQlJNbTkvY0tFNmYzWGZ5RkpBcGs5d1VkMXZlSEhmZnJUQXI0R3dxMjl4b1RKd0QzZ0FvVFJ3RDNYUjBUSndENEh4MFRGd0QzaUIwVEp3Q0hIUk1yQUdRSDJvRUZFeWNBOS9jS0U2ZUE5MTM4aFNJSys4WDU1OEFkWlBlM0N2ZUhIZmZyZmgxbzk1b1RwdmVBQ2hQRzkxMGRFNmI0SHgwVGx2ZUlIUk9taHgwVHFtUUgyb0VGRTZiMzl3b1RwY1A4YW9nZFpJdjNoeDMzNjM0ZEUwejRBdmdSRmZzZlFBWEVpOUNOMEI3WmxBV3krNUFIRTVSa0I5cUJCZmYzQ213SE8yQUZWQWZidGdWWGkxV0pWeDQ4Z1FVVFRQZ2ZIUk1zOTRnZEUweHcrd1VGKzFFR2ljNkx6Y0VhbWdmM0g5WUZEajhLOThUNDV5UWREdmR3OXdVZDFyTmpNaDBTOXhTOTl5LzNHdmNYNVJOR2dMMFc5MWl6QmtlV0JmZU9CNDZJMTRuUEh2ZFYvRlFGdlFiM1N2aFVCZnRUQnhNbWdJeEVpa2FLUjBXQ0dCTVdnR1AzaGJNSFBmY2dDczhlMlpRRnN2dElCL3RHL0VvRkU4dUErMUw0U2dYN1BHUUcxNEVGL0ZRSFBYOEY5L0w3aHlRS1pCMzNlL2puSkIwT1pCMzM3ZmpuS3gwTzFJdmFDdEhCRXZjUXUvZmV2QlBNbngwVHJMTWRFOXlVSGZjMytXTDMxUW9PMUl2YUNzdjN2UjMzRUx2MzNyd1QxcDhkRTdhekhSUGVsQjN0K054ZUNoUFdOeDBUM3E4Szl3c2Q5eTN2Mkx3VDFKOGRFN1N6SFJQY2xCMzRDL3N4S0FyVWk5b0syUGNVRXZjUXUrVDNHdmE4RTlxZkhSTzZzeDBUM3BRZDk2cjQzaFZpSGRUM0JSM1c5OTRLOXdEM0d1TzhFK3FmSFJQYXN4MFQ3cFFkOTczN2h5UUsxUGUzQ3ZmZUNxMzNtcTI4RStxZkhSUGFzeDBUN3BRZDl6RDdiSWdkd2ZJZEFjWDNBUGZhOVFNaEhmZFYreHpxK3hrZnp0TXJIUTdCOGgwQnhmY0E5OXIxQXlFZDkxWDdIT3I3R1I5STB5UWREc0h5SGNYSUFjWDNBUGZhOVFNaEhmZFYreHpxK3hrZit5WDNUVDBLRHNIeUhRSEY5d0QzMnZVRElSMzNWZnNjNnZzWkg1ejNTemdkRHNIeUhiM0Zvc2IzZ0IwVDdDRWQ5MVg3SE9yN0dSOFQvUHRJeUY0S0UrdzNIUlA4cndyQjhoM1M5d0lTeGZjQWhQWUtoZlVUMGlFZDkxWDdIT3I3R1I4VDdQc0UwaU1LRHNIeUhlREtBY1gzQVBmYTlRTWhIZmRWK3h6cSt4a2YreXZnd0IzQjhoMEJ4ZmNBOTlyMUF5RWQ5MVg3SE9yN0dSOHZ3MVlLd2ZJZHc4RUJ4ZmNBOTlyMUF5RWQ5MVg3SE9yN0dSLzdDUGRYOTlVS0RzSHlIUUhGOXdEMzJ2VURJUjMzVmZzYzZ2c1pIL3NWdGx3ZERzSDNCUjNKOTFZZEFjWDNBT3IzR3V6MUF5RWQ5MVg3SE9yN0dSK2M5MHM0SGZzcC9kWWtDc0h5SFFIRjl3RDMydlVESVIzM1Zmc2M2dnNaSC9jVnRtQUtEc0h5SGZkbnp2ZUFIU0s4RTlnaEhmZFYreHpxK3hrZit4VzJPUW9UOVBjSUNzSHlIZmRKd1lQQjk0QWRFK3doSGZkVit4enEreGtmK3htdkZmY1l4dmNZVUp1ayt4ZnE5N1lLTEFVVDNIejNGcDRkRSt4WUhSUGM5MjBLd2ZjRkhjbjNWaDBCeGZjQTZ2Y2E3UFVESVIzM1Zmc2M2dnNaSDRyOWtpUUt3ZklkOXlMT0FjWDNBUGRQdk9YMUF5RWQ5MVg3SE9yN0dSOTN0eFgzS2gzQjhoMzNnQjF3eXhQd0lSM2hjTTVodWg4VDZNbWd0Ny9VTmdwamRuUmZmaDRUOFBmYkhRN0I4aDMzZ0Ixd3l4UHdJUjNoY001aHVoOFQ2TW1ndDcvVU5ncGpkblJmZmg0VDhQZmJIVWZUSkIwT3dmY0ZIY24zVmgwU3hmY0E2dmNhN1BWd3l4TjBJUjNoY001aHVoOFRjc21ndDcvVU5ncGpkblJmZmg0VGRQZmJIUlA4aXYyU0pBckI4aDMzZ0Ixd3l4UHdJUjNoY001aHVoOFQ2TW1ndDcvVU5ncGpkblJmZmg0VDhQZmJIYzNUS3gwT3dmSWQ5eUxPRXNYM0FQZFB2T1gxY01zVDNDRWQ0WERPWWJvZkU5ckpvTGUvMURZS1kzWjBYMzRlRTl6MzJ4MTN0eFVUL1BjcUhjSHlIYjNGb3NiM2dCMXd5eFBzSVIzaGNNNWh1aDhUNnNtZ3Q3L1VOZ3BqZG5SZmZoNFQ3UGZiSFJQOCswbklYZ29UN0RjZEUveXZDc0h5SFFIRjl3RDMydlVEK09QNHFSVmlyRlpQQmJGYlQ1NVBHL3NhK3gwaSswczRwRXF6WEI5U1NyVnB3Y2tGWnJ2SGVNWWI5eHIzRy9UM1M5MXl6R1c2SC93RisxWVY5d2k0OXc3M0NzR3ljbVNsSHZ1YSs3NEZmYkdGdHJZYTl6ZjdneFZXWktTeGNSLzNtdmUvQlpobGtXQmhHdnNJWC9zUCt3c2VEdmVTZnJ4bnZGcjNMZlh4Q21lOUVzWDI5NS9uOXhtM245RUsvLy9KZ0FEUkNoT1R3UGM1OTZjVjl3Ni85d2ozSkthZmlZT2hIbzFGOThrS1pBZEZpMFNKUmg2RWRYZUpieHY3STFmM0NQY1BIeE0xMFBqbSt3NFZFMVhRZHlNRisya0dpYzZMejlZYTl3NEdsajhGdC9kYlh3Wi9QUVg3RFFiSGk5Q056aDRUVmVEM1Z3WVRXZUNmSXdYREJoTlY0SVQzTFFYNzFnWVRrOENWV1dXUGNCdjdNdnNkSnZ0UCsxRDNIU2YzTWg4VFZkQ21zWkNUdlIvMzZBWVROZENTOXkwRkRwc0tsUGNYSkIwT2dZSFlDdEhCakFyM1dPc1RXWUI5SFJNNWdENGRFMW1BdVFvVG1ZQmhIUk5WZ0RvZEUxdUF1UjFhOTVMMzFRb09nWUhZQ2hMM0hPYmc3NWJyRTFxQWZSMFRPb0ErSFJOYWdMa0tFNXFBWVIwVFZvQTZIUk5hZ0xrZEUxdUE5MHY5QVNnS2dmY0ZIY3pZQ2hMM0hPYXE5eHFxNnhNdHdIMGRFeDNBUGgwVExjQzVDaE5Od0dFZEV5dkFPaDBUcmNDNUhldjlWeVFLZ2ZjRkhjellDdmdiQ3FyM0dxcnJFeTNnZlIwVEhlQStIUk10NExrS0UwM2dZUjBUSytBNkhST3Q0TGtkNi8xWElncjdUZm5ud0IyQiswVEs4dGdLRXZjYzVtRDNtblRyRTYxQWZSMFRuVUErSFJPdFFMa0tFODFBWVIwVHEwQTZIUk90UUxrZEU2eUFYdjA4aUIzNExRb0J4ZDMzWTk0RDkyMnZGU2NkWmZqckpCME8rQzBLdzhFQnhkMzNZOTREOTIydkZTY2RRL2xtOTlVS0R2c1I5L3dkOTFZZEVzWGQ5eHZKbGQ0VDlQZHRyeFZvY3BLWWNSOTc2UVZPQm9YN0RBVVQvTFIweVhqS2lvQkNHUGRqQ2dVVDlQV1YxTWJsR3RwY3Z2c0VzeDVvbHdWTm9XbW51aHJEdmFyS3BhQ0dnSjhlblRJRnh3YVI5d0lGcFdaYW5sQWIrd2cyU3l3d3kxdmxheCtzZlFYUGRxMTNXQnBUV1dnN0hnNzRMUW9TeGQzWTc2bmVFK2ozYmE4Vkp4MFQrTy83TFNnSytDMEtBY1hkOTJQZUEvZHRyeFVuSGIzNVdqZ2REdmd0Q3NyM0ZCTEYzYmIzR3FuZUU5VDNiYThWSngwVC9LejQ0aFZpSGZzUjl3VWR5ZmRXSFFIRjNiVDNHcXZlQS9kdHJ4VW5IYXI3Z3lRS1VvdjMwUjNSd2V3ZDl4TDRDaDBUcG1BZEU4YWZKUVhEQmhPdTkyc2RFODczbWgwVHZ1b2RSZmhrOTlVS0RsTDdjTEQzUy9jK0hiRDNMa3JtaThuTDBRb1QwZ0QzZVBkZENoUFVBRFNCQldNSEU5RUE5dzMzUmgwVDBvRDNBN01HTkxNSzBJM1BIdmNRQmhQaWdKOGxCY01HRTlxQTkyc2RFK29BOTVvZEU5b0E5MjBkVW92M1BoMzNFTzhwK0FvZEU2WmdIUlBHbnlVRnd3WVR0dmRySFJQVzk1b2RFN2JxSFJPcTdmd3ZLQXBTaS9mUkhlRDNBdXdkalBjSGxlYVQ5d2VPMFFvVG9vQmdIUlBDZ0o4bEJjTUdFNnFBOTJzZEU4cUE5NW9kRTZxQTZoMFR0d0JJOStnakNnNVM5d1VkMXZjK0hmVDNHdnNGK0FvZEUxTmdIUk5qbnlVRnd3WVRXL2RySFJOcjk1b2RFMXZxSFJQVnVmeUZKQXBTOTdjSzl6NGR0UGVhKzBYNENoMFQwMkFkRStPZkpRWERCaFBiOTJzZEUrdjNtaDBUMitvZEU5VTIvR3FJSFQ4ZDkwZjRJQ3NkRGo4ZHpmZ2dKQjBPUHgzM0tmaVBPQjBPeDFVZDRQY0MrQWNLRThTQVFRb1RwSUF4Q2hPVWdFb2RFOFNBOXdZS0U4c0FtdmdmSXdvT3gxVWQ3c3JlSFhqNExjQWR4MVVkeXE3M0JiQVM5dzNucXJmenQ4cTdFOC9BUVFvVHI4QXhDaE9md0VvZEU4L0E5d1lLOXhQNENSV3VIUTQvSGJQNEVGWUt4L3RLdy9jRldnb1M5dzNuOXdUSjl3UzdFOWU4K0pJVjBvTUZqRWVMUmtZYU5BZjdMdVJIOXhzZWxwZU1tQnR1ZG5CbllocGVySEMrcmF5V3FxRWVnYUlGZzNwNmlvSWJhWE9mckt1ZnFMYW1IOE91dE1iM0VCb1R6ZmVkQjllWEJiTDdaMlFING44Ris0a0greVJZV0NrNFZiVDNJQjdFQnhQbHo0dlFqYzBlNDVZRnN2dVNCdzdIVlIzVHlONGRkUGlSUFFvT3gxVWQwY0gzTlIwVHhrRUtFNll4Q2hPV1NoMFR4dmNHQ3BUNG14VnpkZ1VUemtBZHgxVWQ0UGNDRXZjTjUySDJDb0M3RThTQVFRb1RwSUF4Q2hPVWdFb2RFOFNBOXdZS0U4c0FZZmhXOXcwZHgxVWQ0UGNDbE1INEJ3b1R3a0JCQ2hPaVFERUtFNUpBU2gwVHdrRDNCZ29UeVlDYStCOGpDdnQyOTVZVmMzWUZFOFpBUUIzSFZSM2c5d0w0QndvVHhJQkJDaE9rZ0RFS0U1U0FTaDBUeElEM0Jnb1R5d0JnK0ZiM0JRckhWUjNnOXdMRnl2Z0hDaFBHUUVFS0U2WkFNUW9UbGtCS0hSUEdRUGNHQ2hQTmdKcjRIeU1LKzVyM1BNQWR4L2VtQ3NuM0d1VzdFMlZCQ2hOVk1Rb1RUVW9kRTJYM0Jnb1Q1L2NWL0U0a0NzZFZIZmN3emhMM0RlZjNKcnptdXhQRlFRb1RwVEVLRTVWS0hSUEY5d1lLRTgveCtBUVY5eW9kVngwT1Z4M0UrQ0FrSFE2dzk2WUt1ZmNhOWJ2SXlSTmxBRUVLRTFXQU1RcjNmd2ZPbGNPMzJScVdoNW1EblI2WGZuNkxnUnNUVFlDYUhSTmxBUGNHQ2hQbkFQY0YvRTRrQ2xjZDl6MzRJQ3NkRHJCVkhmY3d6aEwzRGVmM0ZyejJ1OGpKRThVQVFRb1RwWUF4Q3ZkL0I4NlZ3N2ZaR3BhSG1ZT2RIcGQrZm91Qkd4T1ZnSm9kRThVQTl3WUtFODhBNGZnRUZmY3FIYkJWSGN2Rm9zYjNOUjNJeVJQTEFFRUtFNnVBTVFyM2Z3Zk9sY08zMlJxV2g1bURuUjZYZm42TGdSc1RtNENhSFJQTEFQY0dDaFBQQUVYNEZWNEtFOHNBTngwVHp3Q3ZDc2RWSGN2Rm9zYjNOUjBUeTBFS0U2c3hDaE9iU2gwVHkvY0dDaFBQVVBnVlhnb1R5emNkRTgrdkNrVWRSZmQvSkIwT1JSMlo5KzQ0SFE3M2pQOEIrSUFBOXh3S1pMTGc5d0lTOTVYMkNyajNXUk9IK05pRkZiVUdFeGYzSnZpTjBaWUZFNGV5KzFrSEV4ZGtCOWgvSVB2dUJST0greEgzNytLV0JiTDdpR1FING9EN0ZmdnNCUk5ISnZmdEJSTVgycFVGRTRleSs0a0hFeGRrQnhNdjA0TDNNZnlQQmJNRzl5SDRLZ1g3Qi9kK0l3b09SUjNKOTM4ckhRNDhIZVg1RHlRZERwd2RQQjMzSy9sK09CME9Zb3YzTEFyWTl4UVM5MjczR3ZzSDU2TDNYQlBDK0RjV3N3Y3lsUVdLdm92R3dCb1RrL2NsOTdIWmx3VVR3N0w3WEFjVGsyUUgxWUQ3Qy91QUJSUEMrd2YzZ2R1VkJiTDdrd2NUb253ZEU4ejNIUGtHRldJZFl2Y0ZIZGIzTEFvUzkyejNHdnNGNTZMM1hCTmkrRGNXc3djeWxRV0t2b3ZHd0JvVFMvY2w5N0habHdVVFk3TDdYQWNUUzJRSDFZRDdDL3VBQlJOaSt3ZjNnZHVWQmJMN2t3Y1RVbndkRStUM0d2dGZKQW84SGZkYytROHJIUTVpaS9jc0N2Y3d6aEwzZ2VkMnZJYjNYQlBFK0RjV3N3Y3lsUVdLdm92R3dCb1RsZmNsOTdIWmx3VVR4Ykw3WEFjVGxXUUgxWUQ3Qy91QUJSUEUrd2YzZ2R1VkJiTDdrd2NUcEh3ZEU4cjNCL2p6RmZjcUhXS0w5eXdLeThXaXh2ZDlIUlBLK0RjV3N3Y3lsUVdLdm92R3dCb1RtL2NsOTdIWmx3VVR5N0w3WEFjVG0yUUgxWUQ3Qy91QUJSUEsrd2YzZ2R1VkJiTDdrd2NUcm53ZFhma0VYZ29UeWpjZEU4NmRkSFdiWnhzVHJrNXJXRDEvSHc2b0hmdTErSGdrSFE0Z2k3eGE5eXYzaS9mckN0SEJFcVA0VlJOVStESDNLeFVUbFBjU0NoT2toUHNyQmNZR0U1VDNFaDBUWEpMM0t3WDc0UGp6OTlVS0RpQ0x2RnIzSy9lTDkrc0syUGNVRXZkTzl4b1RWUGd4OXlzVkU1VDNFZ29UcElUN0t3WEdCaE9VOXhJZEUxeVM5eXNGKzNENGJ4VmlIU0QzQlIzV3ZGcjNLL2VMOStzS0V2ZFY5eG9UTFBneDl5c1ZFMHozRWdvVFZJVDdLd1hHQmhOTTl4SWRFNnlTOXlzRisybjc5aVFLdlIxa2k3all1UGQzdDg3M2p3b3c1eS8vQUZ5QUFQOEExSUFBNnhQNXZRb0hFL1gzbGJNR09KVUZpcU9MbzZNYXdBYjNacm5mMStvL3lQc3VIeFB6UEFhZ2pKK2dHdDZWQmJJSEUvbjdsVjBLNW1RVnRBZXNpNnVzR3RBRzdybGtSVWRkV1NzZlF3YXBpNm1uR2c2VmZyejNjN2ozV3NnU3hlNzN1dk1sOFJQMHhmZDZGZnMyOFRyM0p2Y2Q5d1QzQi9kRzkwUDdCdmNBK3lRcVIyUlNZQjZtYmdXenNzU2p6UnNUK09EWFR2c2RseC84RndZVDlJaDhpR1oxR3ZlTSsxWVZORTNWMmFpTm40NmhIL2UzQnZzM1ZFOHZIZzR2Q3ZmeDkwV0xDbDhkbFFvT2RJdmRBYWY0bVFPbkZ2aVp0QWI3Y2ZpVUJVNEcrMy84bEFYNEpiUVYrK0FHOTBENEJRVU9JaDBPcUIwT094ME93WDY4OTJ2STkxMjlBY1h4d0xmM0pMZSs4UVAzM1g0Vjl4cjNHL1QzUy9kVSt4enIreG43R3ZzZElmdEsrMVQzSEN2M0d4KzhCUHNSWC9jUDl3ajNDTGYzRHZjUjl4SzArdzc3Q1BzSVl2c1AreElmMC9kREZiZjNJVjhHZ21NRit4SUdnck1GWC9zaHR3YVRzd1gzRkFZT01SME9waDE3aTdKa3MyTzNYLzhBTElBQUVwUDNYZnRkK013VEZQZWYrTDBWRTBqN1R2eUpRbjhGRTRoajkxMnlCem1ZOXliNEdRVVRGUGNqL0JzM2dBVms5NGdIRXlTekIwdVQrMHo0alFVT1B3b09aQjBPVEl2WTkwTE05ekhYRXJuS1djcU90dmRndUkzSldza1Q1Z0Q0Q1BkZEZiajNNbDRHZ21BRiswNEdncllGWVBzeXRnYVV2UVgzVGdZVDZRRDd3ZmUrRllYN01BVytCcHJiQmZlOUJwazdCYjRHaGZjd0JSUDJnSmo4dVJXUjl6QUZXQVo5UEFYNzF3WjgyZ1ZZQnBIN01BVU93ZklkQWNYM0FQZmE5UU1oSGZkVit4enEreGtmRHZHNEhmaGF2WE1LOTVEbkU2ejRjL2VkRlQ2TFJJbEg5ejhkaXREMzNCMFRuTkNMMFl6UEh0bVVCUk9zc3Z6bUJ4TmNaQWZaK0RNS1BoMFRyR1Azai9nTUhkTFhHcWdIMEl2UWpjNGU5NHdHalVhTFIwY2FEbnNkK3dXTDNUbjNUdmRvOStzS0V2Z0cvd0JQZ0FBVHFQZ1ErQ0lWeGdZVG1JVDNLd1g4SkdvRzkwcjdoL3RSKzIwRlUvZzVCeE5Za3ZkT0JVOEdFNWgwSXdYN2tBYjNTZmRxK3pEM1lBWDNhUVlPY1IwOEhRN0NmLzhBSzRBQStCQUt1UGU0dVA4QU1vQUEvd0FyZ0FBU3R1djNLZmZuSGZmN0N0dzYvd0JTZ0FEL0FKT0FBT3dUK29DMjk2c1ZKZEF1OTBTS0hoUDhnSHVMZklwOEhqaUFCV1VIRS9tQTk0K3hCamlXQlpxS201b2E5MFRRNlBMcU5lVDdNNDBmbW95YW1ocmVsZ1d4QnhQOGdQdVBaUWJlZ0FXTWZJdDhmQm9UK29EN01UTXhLeC9yalJYZnZNRHdqUjVoaTJCaUdtUUhZb3RnWUJvbldjempIL2Q3Y1JXMEI3U0x0SXkxSHU2OFZUWTBXMHNuaVIrS3VJdTNzUm9PYmdybGkvOEFMSUFBL3dDZmdBQzYvd0QrZ0FEL0FDdUFBR0swRXZmQjVoUFkzdmcwRmFMN0piaFI5eXFDQ0ZlTFY0bFk5ejhkaWIrTHY3NGE5eXFVdDhXajl5V1Z4QmlQb0pDVW9ZNmpqeGl5V3djL2UzQStnaCtJYjRBbWVWVWxnQm1QQjdJSEUralJpOUNOeng3UWxBVVQyTEw3ZlFjVDZHUUgwUGd6Q29jSEpaZDZ3WUR2aUtVWUU5amJnbm1sUUJ0Y1pBYWpoNStJa1lLUGRoa094SXZTK0U2OUV2OEFNb0FBL3dEdWdBRDdiT2pFemVETVN2OEE3b0FBLy8rTGdBRHBFK0gwOXlZVlVRYVMreVlGRTkzM2Y4OEdRcmhaOCtVYTl3REQ3ZmNCOXdIREtmc0FNVmtqUTE0ZVJ3Y1QwdmQrQnBUM0pnVlFCaFBkZDBBRktJNEczN3ZPNGU0YTl6VDdDZXY3SXZzaCt3a3IrelVuMERmY1d4NklCeFBoS1FZTys0V0xNaDNnOXdJU2wvY0hsT2FVOXdjVGtuMGRFMUkrSFJPU1FSMEhFNkk2SFJPZlNmZm9Jd29PbkIzMzdmSWRBY1hkOTJQZTdOMzNZOTREOTIydkZTY2QrR2tXSngwTzk3TzRIZmRxOTBZS0Uyc2c5eHoza3hYZkNoTnJvUGRZQmhOellKOGpCUk56b01FR0UydWdoa2dLK0tSa0ZUNGRZL2VRQnhPbklMTUhQWlFGaWRDQ0hkbVVCUk5ySUxMN2tQZGFDdmg5aS9lSEhlejNSZ29UVlpCOUhST1ZrTjhLRTFYUTkxZ0dFMW13bnlNRkUxblF3UVlUbGRDR1NBcjRwQlprQi9kZEhSTlZrUGdmSFJNMWtQZUlIUk5Ua0hEN0JRWDdVUWFKem92TndSckZCOUNMMEkzUUh0bVVCUk5Wa0xMN2tHUUgyb0VGRTVYUTkvY0tEc1IrL3dBN2dBRC8vOGFBQU12M25MTDNRYXdTcWQ5OTBQY295N0wzU0JPMytLQitGYU9kanBLb0g1QzNNNVp5cEhTaGRxQVpzY0NyeUovUnpwZ1lzdnRJWkFmT2YzdFJjMVZzWEJsc3EyMnBhYTl1cW5lZ2VwMEk1THV3c3NJYXlsdTJNemRPWGtKZm1WKzJXeDRUZXpoa1gxUkJHamJYU2ZjQzNzS3BzTEFlRTdlVGc1U0RsSUlJYTZxb2Y3b2IrOUw0RUJWdHI0U21weHF6cktxMXRLdHZYR0JvWmxocEhvS1VnNVNEbEFqVysxMFZFM3VsY3FSeHAzQUlkbXhnZldBYk9GM0V4SzJYdk1PcUh4TzNxR3luYWJWWkNBNzdHb0M0K0hXNUFiM2s5MVhsQS9jZjk2MFY5MWU1c3IrOXVHUDdWdnRpWG1KWlYxMno5Mk1lN2Zlc0ZTd3ZSUHRsKzNEblErcm81OVAzY1BkbEw5SXVIdzc3QTR1dCtFeXhBZmR1M0FQMCtKUVZaQWYzQlkwRis4SUhaWXRsaW1VZSt3NXlCV24zM0swSCt3K2pCWXF5aTdHeEd2ZVlCNC8zQ0g2VEJRNzdGNHZkK0VXNUFmZk00Z1BKRnZmOTNmdXdCcXFpcDZHaG9RajNIUGNhdHNIWkd0MWJ5L3NITHpwZ0tvVWVlSmFjZjZBYnBwdWV2SmdmbU1JRmpacVlpNVFieHJSaVJVZGZRVGM0SDJWbVltUmdaZ2dPK3htQXVQZDd2ZmRjdVJMMzJkMUk0UlBvOXozM3p4Vlp0Z2ZndGw1SFIxeFpQWUY4aTQxNkg0R3ZCYjUrZ0tKckczVjhnblorSHpDWnoyZmlHL2NPMmRYaDBHTEFNNThmRS9EUnBiTzh4QnJlU01Ja09FbGtRM3dlY0pTZGdxRWJyWmFpdHBjZmxLMEZqSmlXaTVNYnpiSnJTVXhmWkQwZkR2c3E5empJQWZlYzNBUDRSdmM0RmNneTkrRlNCL3VYKytvRlYvZC8rempjOXpnSE9zZ1YrMFVHOTBYM2ZnVU8reG1BdVBlUHlQY04zUUgydS9kSTRRUDNiSUFWOXc3ZTB2Y0M5d2c3eC9zSGNYS0lobklmbGZjVkJmZUkzZnUwQm5uN2w2V0RCWXltcFkyaEc5Ky9YRHhCWDFnNWZuMk1qbnNmZ2JJRnduMSttbTRiZFhpQWRZSWZPSjdDWWVjYkR2c2FnTGozaU1nU3ZPSTA1UGRiNFJQbzk0YUFGZkxaeHZjUzhVbktMQjhUMkY5ZmVXcG5INWozR05UUDl6cTBoYXNZRStqN2IzVDdDUHNjK3pzYSt6TFZNL2NMSG95NEZVdGd5UGNuSDQ2TGpvMGFvS20wa3F3YnhiSnFORFZvWlZBZkR2c1hpNVg0WGQwQnpmZ0RBL2NkbFJXVWdRWGNCdmRpK0ljRnZmd0RPZmZBQnc3N0ZZQzMrSGE1RXNQY1RkZjNQTlJUM1JQa3cvY1hGU25aWC9UdjJzbmkyR0syT3JJZUU5alh1NSs3c0JyVlVNUXZMMEZVTmtxb1dkRmtIaFBrUFdaallWSWFFOWpxOThVVnU3U3F1cjZvWW1GYWZXNWFaQjQxdFhpMHNSb1Q1T1g4SnhWUVhyakZ3YVNvdktnZjZtQ3BjVndhVTJWZ1VoNE8reHYzYnNqM2dMa0JyT0wzWGVFRDRuc1Y5MzI0NHZjbzl6Z2E5eGhJNC9zSSt3VTlReUFrMlU3b3Q3R1hwYWtlZVBzSVIwTDdLMTBJdGZnSUZkNjRzc0hJdEZuN0d4NkRpNE9ER25od2I0Tm1HMDVicU9BZkR2dXFmL2NURXZIM0Qvc0o5d01Ud1BjNGZ4V3RwcWV1ckhDcWFXaHdiR3BvcG0rdUh4T2crTkFFYUhaNVlIS1ZPSm43Q2grWU5nV3ZCcG5nQlpuM0NwWGVwQnEyZHAxcEhnNzdxdmhGOXhNUzhQY1Ard24zQXhQQTl6YjR4QlZwY0c5b2FxWnNyYTZtcXF5dWNLZG9IeE9nL05BRXJxQ2R0cVNCM24zM0NoOSs0QVZuQm4wMkJYMzdDb0U0Y2hwZ29IbXRIZzc3UW4vM0V4THU5dzhoeS9UQUU5RDNOWDhWcktlbnJxeHZxbXBwYjJ4cWFLZHZyUi8zUmZnUkZmY0EreGplUjR3ZVo0RjVmRzRhZEpkN3hIOGU5d1oyQlpaNmtubDhHblo2ZTNDS0hoT3dWWDBGVm9CNWZITWFnbzE3bDJjZWwyY0ZzQWFNc1FXbGpwS3draDZva1FVVDBNaWFwNjY4R2c3N1F2aEc5eE1TNThESzl3ODZ5eFBnOTZINHhSVnFiMjlvYXFkc3JLMm5xcXl1YjZkcEgvdEYvQkVWK3dEM0dEalBpaDZ2bFoyYXFCcWlmNXRTbHg3N0JxQUZnSnlFblpvYW9KeWJwb3dlRTlEQm1RWEFscDJhb3hxVWladC9yeDUvcndWbUJvcGxCWEdJaEdhRUhtNkZCUlBnVG54dmFGb2FEdnc1OTkzM3lBR3o4Z1BuK1JFVjkza2QrNDMzM2ZmSUFiUHkwUElENS9rUjl3OGQvQnozNi9mR0FiRDNRQW9PL0J6MzYvZkdBYnY0RGdyNHd1NGREdnRSOSt2M3hnR3c5eFBYOTBBSzkxOFc5MU1LKzFIMzYvZkc5K1lLK01LU0hmdTg5MFRNQWNEM1hnUEE5MFFWOTE3TSsxNEdEdnNNOTBUTUFjRDREUVBBOTBRVitBM00vQTBHRHZjaDkwVE1BY0Q1RXdQQTkwUVYrUlBNL1JNR0R2dVcreXY1akFIeDJBUDNSL2Q1RmZjU3Erdnc5eHdlY3FFRit4RW5UL3NWK3lzYSt5dkgreFgzRVNjZXBLRUZKZmNjYk92M0Vob08rNWI3Sy9tTUFmYzcyQVAzTy9kNUZmc1NheXNtK3h3ZXBIVUY5eEh2eC9jVjl5c2E5eXRQOXhYN0VlOGVjblVGOGZzY3FpdjdFaG9PKzUvN0Y3TDVGcklCOXhyU0EvY2E5eFlWTTRzemlEWWU5MEt5QmltWUJZblJpOUhRR3ZkYUI5R0wwbzNQSHUyWUJiTDdRZ2VPTllzeU5Sb08rNS83RjdMNUZySUI5eGpTQS9kZjk5d1Y0NHZqanVBZSswSmtCdTErQlkxRjk4a0srMW9IUll0RWlVY2VLWDRGWlBkQ0I0amhpK1RoR2c3MzRoMzNETkZwdlJQZ3dQZG1GUlBRMG9HcmMyTmNaMWhGR2hQZ1NiNXEyeDZ6c1FaMWpnVlZrbktWdUJvVDBNbWJ5YWdhd25LdldKZ2V2cGlrcjhJYUUrQ29lOG5JR3Jta2xjR1NIcUdPQmJGakJ6dFlha2tmUmE5WVhCb1QwR05yYzBTQkhnNzM0aDMzRUwxcDBSUFE5Nm4zakJVVDRFU1ZhNk96dXErKzBSb1QwTTFZckRzZVkyVUdvWWdGd1lTa2dWNGFFK0JOZTAxdUdsU2taNzUrSGxoK2NtZFVHaFBRYnB0TlRocGRjb0ZWaEI1MWlBVmxzd2ZidnF6Tkg5Rm52cm9hRStDenE2UFNsUjRPTHdyMzhmZEZpd3B4aTdqM2ViM1Q5eTMzOWdyM1Q5RUsvLy9MZ0FEL0FEU0FBUC8vejRBQTdCUFp3aGIzZndiM1ZiL20xK1JDei9zcWNXMkppVzRmeDR2SGpjY2VFOXozVFFZVDZwOGpCUlBzd2dZVDNJYjNMUVg4UVYwS1pBYytIZmRBOTJzVm5BZU5ucCtMcEJzVDJmY0hxMmRCT1Y5bSt3Z2ZXZ1lUM1BmSkhWOGRsUW9PbUl1OCtGZTgvLy9UZ0FEL0FDeUFBQktSMy9jWnhmY0c1cGJhRTlTVSt5a1Z3Z2FsOXlrRkU5YjRLd2FmK3lrRnd3YVI5MW9GRTl3d0Jvbk9pOC9LR3IwSHpZdlBqZEFlMnBVRnN2dzlCeE84WkFmY2dIcjdkVW43SGpRMEdWa0crQnozakJWWkIwNkxSNHBHSHZ1Z0JoUGMxOW5JOXlXZDkzZ0k5d1VHRTd5TVI0dEhTQm9PSWgwTzkxdUJ3bDczOGdvUzkvdmdFMnozU0FvVHRQZmtDcVd5ajVHY0g3TUhNWlZmOXczTEhSTnM5eHdkRTdTaENoTnNURnNkUFlFRkRqQit2UGR5dmZkaHZSTDM4dVk2N0JQbzkzMStGZmNlNGM3dHoyQzhLSndmRS9EM1J4MFQ2UGVMSFN5WjMybnNHdzZoSFE3M2tRckp0SXdLYStUM09PUnQ1eE5zZ1BjeENoT2NnTlVkRTZ5QTl6MEtFNXlBMFBndkN0aVVCUk5zZ0xMN2ozQWRFNnNBOTh2NHp4VXpDZzZKSFE2Z2Z2Y0FMRFFLK0Z2M3hRb1RrNWZJRlZXcGQ3SEc5OWNkUjR0R1JocGtCeE16OTEwZEUwdjNOQXJQaTlEUUdySUgwSXZRamRBZTJaUUZFMU95L0VrSEU0ZjNvUW9UazI1NWduS0FIdzQvQ2c0N0hRN0I4aDBCeGZjQTk5cjFBeUVkOTFYN0hPcjdHUjhPOXdHNEhmaGZ1RiszRXZjYzV2ZVg1aE9zd2hiM2o3TUdQcFFGaWREMzNCM1M5NW9LOTVRR2pFV0xSRVlhWkFkR2kwYUtSL2YrQ21QM2p3Y1RYTE1IUFBjZ0NzNGUycFVGRTZ5eS9POEhFMXh3SFE1N0hYanlIUUhGOWtVS0RuRWR5UjBPdzRHeVpMNjJ0ZmU4dFA4QU5JQUEvd0FyZ0FBU3NlYjNNOTQ1M1RuZTl6UG1FNzFBc2ZlbUZmc0MyVHYzTHg0VGZrQ2NCbjJMZklwOUhoTzh3RGgvQldUM2tMSUhFM3pBTjVjRm1ZdWFtUnFiQnZjdzJkMzNBUGNBUU56N014OTdCcHVMbTVvYTM1WUZzUWNUdmtEN2tHVUczb0FGakh5TGUzc2FlZ1lUdlVEN01rQTkrd01mOTRMN0tCWDdEWEhkemMrbzIvY0tINWdHWFl0ZFlScG1CMktMWVdFYTNmY1JGYkFIdFl1NXVScVlCdmNLcUR0SFNYRTUrdzBmZmdhMWk3VzBHZzV1Q3UvMzFCMzNIT2Iza3VZVGJNSVcrS0lHblBzcEJjTUdsUGRhQlRJRzkzd0swSTNRSHRxVkJiTDdqd2NUWEdRSDJJSUZqVWYzeVFwa0IvZmRIVVllKzQ3M1d4M1lsQVVUckxMN2oyUUgydmRVQ2p5QkJRNnZpLzhBTElBQS93Q3JnQUQzeHgwVDNLZjRraFhTZ2dYN0ZBZjdFZGhyOXdDMnQ1R1R0QjVMaTFDSlVmZitDa0VkWkFmWmdnV05SWklLZkFlRllXeUtiaHN6YTZiZEh4UHN0WXl5akxFZTJwVUZFOXl5KzRjSER2Zm85M2NkK2RzR0U2NnpCenYzSUFyT0h0dVZCUk5lc3Z1SFpBZk8rRE1LUm90R2lVZlhDdmZsOTNjZCtaSUduUHNwQmNJR2xmZGFCVElHaWM2THo4b2F2UWNUYnMyTDBJM1BIdHVWQlJOZXN2dUhaQWZPZ2dXTlI0dEdTQnBaQjA2TFI0bEcxd3EvK0FFZHZkSDM2d293SFJLbzAvY2M1L2RsN0JOcGdQY3lGdmQ3QnZkRjBOemM3elROK3gxeGI0cUlieDhUWllESGk4YU54UjdZbEFVVGE0Q3kvQXdIRTNPQWhmc3JCY01HRTZ1QW52RUY5eHY0QlFwSDkvNEs5ei8zYXhXZ0I0eWJtNHljRy9jSHVHazVIeE5wZ0RaVGF5SWVYUVlUcTREM3lSMzNnUGdCSGIzL0FMQ0FBUGNjQ2hMM0hPYjNWdXZxNXhObmdNSVc5M29HOXo3SjJ1VHBPODM3RlhGd2lvbHZIeE56Z01iNEZnb1RhNEJ3SFJPbmdQaHlZeFgza0xNR1BKUUZpZENDSGRxVUJiTDdrR1FIMlBnekNrYUxSb2xISGo2Q0Jmdkc5MndWbndlTW5KK01veHZudEdvekh4Tm5nRHRYYXl3ZVhnWVRwNENKMFl2UzBSb09ZSXU0OTMyOS93Q3dnQUQvQUN5QUFQZGhIZmRzN0JQc3doYjNnd2IzVThMczBPbEJ6L3NwYm0ySmlXd2Z4L2dXQ2hQY2NCMzNRUGRyRmFBSGpaK2hpNlViOXdhdFpUNUNZRjc3Q1I5VkJ2ZkpIV2QrdlBkd3VmZG52UkwzVWJiM1Nld3I2eFAwd2FRVmNjSElmOGdiOTBieDl2ZEo5MGduOXdEN1IxMUtoV3BPSDRqN0RRWEhCcHptQlptcHFaQ3JHeFA0OXdiT1Uvc3ZraC83UFFaLzJRVmcrMTIyQnBiWUJSUDA5ejhHK3phR1NGSDdBaHRuYUpHYmFCOTc0d1ZQQmc3M3gzNjhaN2ozWjdmM1liZG52UkwzSE9MM0VQRW04UGZDOFJPdWdQanRmaFgzR3ZjSzVQZGI5MXY3QytUN0dSOFRiWUQ3RS9zSU1mdEJnUi83RVFZVGRvREtpOUdOemg3WmxRV3krNHh3SFdQM2pMTUhQWlVGaWN5THpkWWE5eEFHRTY2QSswV1Q5d2t2OXhVYnZBVDdBRi8zRC9jSTl3ZTM5dy8zQVBjQXRmc1Ard2Y3Q0dIN0Qvc0FIdzVyZ3NGZS93QXNnQUQvQU1xQUFMajNhTGd3SFJMUjdQZFU1eE4yOTduM3VCVXpaYi9KeWJldjVCL0VCbzFLaTBvNUdoTzIvQUQ3dUJXRm5LQ0lyaHZGbXArNm14K3o5d0FGMDZTaWxNNGJ1Z1lUYmthTFNvbExIajczU3dyM2ZBclFqZEVlMlpRRkU3YXkrNGdIK3g0OFVESlNzRkxvZUI5ZWZIRm5jMFZvS2hoQWdRVU9JaDMzY2ZmcEt4ME9Zd3JnOXdLTUNqYjNCL1MzWS9jSFUwb0tFMVZJZlIwVGxVZytIUk5WU0dQNFhnY1ROVWlROXkwRkV6VkVVd1lUVlVncEhSTlZVUGRZQmhOWlVKNGpCY01HRTFWUWhVZ0tFMWFneS9mb0l3b09yWXU0OTNtOTFmY3IreXIzS3Zjc0hmY0k1L2NiMDVEckUrYUFwZmdpRmNNR0U4NkFuL0VGOXdmNEJRcElIalNCQldQM1N3ZUk0SXZoM3hxY0I0MmVuNHVqRy9jRHNWOHlORnRaTkgwZm1HUUY5eldVeE83ZUd2UkQyUHNyY1c2SmlXMGV5SXZIamNZZUU4c0E5eGtHRTlNQW55WUZ3Z1lUendDRjl5b0YvSFVHRHBVSzl6UDQ1eVFkRG1sK3ZQZHd1ZmRudlJMRjdDcnQ5emkzRS9UMzZYNFZ5Y21YcHNFZmovY01CVThHZXpNRmUybG9oV3diK3hCTXdQYzdoaC8zTGdhV1BnVzM5MTFmQm44OUJSUHMreXdHOXpTUzFMNzNDUnVucG9aOHFCK2NNUVhIQm9mM0RBV3RUMHVSWGhzVDlQczgrd2Y3RWZzMyt6NzNBZnNLOTBJZkR2Z3RDZ0hGM2ZkajNnUDNiYThWSngwT01SME8rNFdMTWgzZzl3SVNsL2NIbE9hVTl3Y1RrbjBkRTFJK0hST1NRUjBIRTZJNkhST2ZTZmZvSXdvT2xoME85MUYrOXdBc3VQZDl2ZmRBOThVSzkwdnNFN09BbDhnVlVLSjh0TXIzMXgxR2kwWkhHbVFIRTJ1QVBoMWo5Mk1IOTFQQjY5RHBRdEQ3S25sNGlZbDNIOGFMeDQzRkh0bVVCUk56Z0xMOFNRY1RwNEQzb1FvVHM0QnVlWUp5Z0I4VGM0RDRkUGRXRmFFSGpKYVdpNWdiOXdhdFpEMUVZVjc3Q2g5MkJ2ZkpIZmVsdUIzM2ZMaGZ2ZjhBc0lBQTl4d0tFdmNjNXZlVjV2ZEw3Uk5qd1BoNDk1MFZFNlBBUG90RWlrZjMvZ29UV2NCajkyQUg5MVBEN05Ib1FjLzdLM3AzaW9wNEg4YUx4WTNESHVLV0JSTmp3TEw3bDJRSDJZSUZqRStMVDFBYSs1VUd4NHZIamNZZTJKUUZzdnVQQnhObHdIQWRZL2VQQnhPandQZ01IZExYR3BmM2xRY1RVOERtZFJXaEI0eVZsb3VZRy9jSHJXZzNTRjVjK3dnZmR3YjN5UjNtdUIzM2ZyelI5eXY3S3ZjcTl5d2Q5eExtOXh2VGh1TVRjMENsK0NJVnd3WVRaMERxSFdRSFNRbzBnUVZqOTZLekJ6T1ZCWW5RaTgvUEdxQUhqYWluaktjYjVhWmRVeDhUcFVCS2lsV0pVUjczTHJNR1RKUUY5eUlIOGo2dEwxOWlpWWRuSHNlTHhvM0dIaE5sZ1BjWkJoTnBnSjRtQmNNR0UyZUFoZmNxQmZ4K0JnNkpIZmQ3K09ja0hRNmhIZmZ3K09jckhRNzNTeDNKdEJLZjkzMzdCT1QzR3ZkVyt6amtFeHlBbi9pU0ZST3NnTTRkRXgwQTl6SUtFMHlBOTVVS0UwcUE5N2pKRlRNS0R2UDMxQjMzSE9iL0FGcUFBTlQvQUZxQUFPWVRidmtoRmhPdXN3YzhsUVdKenZldUhjK0wwSTNRSHRxVkJiTDdqd2NUWG1RSDJJSUZqVWYzeVFwa0IvZmRIVVllKzQ3M1d4M1lsQVVUcnJMN2oyUUgydmRVQ2p5QkJSTnVZL2VVQjVqN1NRWEhCcGozU1FVT3JiZ2Q5M0c5cC9jc1dyei9BRG1BQVA4QUxJQUFNQjBTbzlUM0Ira3U1L2NzK0JBZC8vL3dnQURzRTJ4UTl4a1c5M29HOTB6SzROYmZPdFA3SFc5dWlvaHRIN0FIckl1c3F4b1RiS0QzTEFhZU5BWENCb2IzSEFYN2NBYWRpNXlNbkI3amxnV3krNW9IRTJ1UVpBZlpnZ1dNZVl0NWVScjdUUVlUZFZDRit5d0Z3d1lUclZDZjhnWDNDQVpyaTJwcUdpMEhSb3RHaVVmMy9ncjNRUGRwRlpZSGpKMmRqSjRiOXdheVkwY2ZFMnhRUEZWcCt3QWVYd1lUclZDSjBZdlJ6eG9PdndxTCtGMzEvLy9DZ0FEM2F3cGd0aEtoOTRnVE1LSDRraFhOZy9kZy9KQUZ0QVlUa1BjUytBeWF1NW1xbDU4WmhacWVoYUVic1p1ZnBaTWZzRytpWUUxeGEvc2pYUjQxKzQ4RkUxRDRJd29PTjR1NCtGdThXdmREakFyM1Fkc1QyTUlXOTVDekJqMzNqeDNSMHhxeUI4eUwwSTNPSHZlTUJoTzRrZmREQlZNR0U5aHcreElGKysxZENtUUhQaDBPTjR1NDkyZTMxZmREOS9ZSzkwVFlFOXk2OTVRVjVINEdVSXRJaVVnZVBJRUY5NFlLOTQ4ZHpzVWFtUGNSdC9zUkI4cUwwSTNQSHZkQ0JoUHNvL3NTQmNNR0U5eUY5ME1GL0Rwa0J0cUJCWTFLaTBwRkdqSUdEdmQyK3luM1YxUENWTU5kOS9JS0V2Zjc0UGVxMkJNYkFQZElDaE1yZ1Bma0NvOEdFNHVBbnZzZkJjSUdFeTJBa2ZkU0w1VmY5d3pMSFJNYkFQY2NIUk5OQUtFS0V4c0FURnNkUFlFRkRqRDMvQjI4OTNLOTkyRzlFdmVWeWFybU91d1QrdmNrOTdJZHVYTzNZYklmOXhLUzJjem9HczlndkNpY0hoUDg5MGNkRS9yM2l4MllNdFpuNVljSTk0MGREcHY3S2Y4QXc0QUEvLy9IZ0FEL0FEaUFBUC8vMFlBQU5BcjNYYmozTy9WUWZoMzNzZGdUR29EQ0Z2ZVBCaE1xZ1BnTkhjdlBHcTBHdzZ4K2FKVWZFMHJBdVBzcEJWK1hxM3pGRzVBR0U0ckFuZnNmQmNNR0UwekFrZmRTTHBaaDl3MTN4MlduU3BZWnFweWhxS2JDbkxHWHBwaWlDSW1ZbW9xYUc3cWdxYVNrZWFOcmpSOVhnMlJ3VnZzYkNDNWtjNEZPRzNVR0V4bUEwWXZTamRBZTJKUUZFeHFBOTVJZDNvSENYalFLOTEyNDl2Y3JNUFZMdkRBZEVxalQ5eHpuRTFqQXBmZ2lGY01HRXpMQW52RUY5eHIzbUFwa0Iwa0tQWUVGRTFKQTkzUWRpc3lMeTg4YXJBYkRySDVvbGg4VGxFQzIreWtGWDVpcmZNVWJwckdQa1p3ZnN3Y3lsVi8zRDNqSFpLZEtsaG1ybktHb3BzS2NzWmVtbUtJSWlaaWFpcGtidTZDcHBLUjVvMnVOSDFlRFpIQlYreHNJTG1WemdVMGJkNDRHRTFGQTBJdlJqTThlMlpRRkUxTEFzdndNQnc3M0RyZ2RYdjhBTFlBQS93RFNnQURaSGZlazVoT1hmUjBUVno0ZEU1ZGo5NC80RFIzTzFocjNwQVpIaTBTSlIvZitDbVAzUVFlZit5a0Z3d1lUTzVIM1VqbVVCWW5Qa1FyT0h0cVZCUk9YOTE4ZFNZdEtSUnI3cEFiSytDOEsySlFGc3Z1UEJ4T2I5MW9LZVB0d3NQYy91L2h4dlFIRjl2ZHR5UVAzL3E4Vit3YzUyL2N6OXpUbzJmY0NvNmlGZTZrZm5ETUZ4d2FJOXcwRnJFNUxrVjhiK3ovN0Uvc1IremY3Ti9jRyt3cjNQWVFmcDJPWWFtZjNxQXE1YzdkaHN4L0NqY0NYdTZLUDl3MFlUd1o3TXdWN2FXaUZiQnNPUEIwT1lvdTQ5eWU0OTZDMzk4TUs5MzBkRStUNGFmZFVGYmo3RkFjVHp2Y1o5NW5abHdVVDVyTDdYQWNUem1RSDFZRDdDL3VBQlJQayt3ZjNnZHVWQmJMN2t3Y1QxR1FIejRQM0h2dWRCZnNXWHZja0JsdUxXWXBmSGpTQkJXUDNvck1ITXBVRmlyaUx2Ym9hRG9lNEhmOEJ6SUFBOXljS0VwYjNYTzcvQVFLQUFQLy9Ib0FBOTExVi93Qk9nQUQvLzhXQUFQOEFPb0FBRTZrQWxoYjNYTE1HVHBRRkU2d0E5dzczUi9jRyswYy9nZ1ZqQnhPcEFQZElCaE9vZ0ovN0tRVVRhUUREQnBEM1VqbVQrelgzamdVVG1nRDNIdmRjMlpZRkU2b0FzdnRkQnhPYUFHUUgwWUQ3QVBzMkJST3BBQ0gzT05TVUJiTDdrbVFIMm9MM0svdUEreXI3YVRSL0JRNnZpLzhBTElBQS8vL1RnQUQvQUMyQUFQOEFxb0FBOThjZGpkc1RycWY0a2hYU2dnWDdGQWY3RWRocjl3QzJ0NUdUdEI1TGkxQ0pVZmYrQ21NSEU2MzNRZ2FnK3lrRnd3WVRiWkgzVWdVVGJqaVVCWW5QZ2gzWmxBWDNYeDFGa2dwOEI0VmhiSXB1R3pOcnB0MGZFN2ExakxLTXNSN2FsUVVUcnJMN2h3Y090ZmdCSGNmM08zNGQ5Mi9tRTNiQ0Z2ZVBCaE8yK0F3ZDBNOGFsd2VUc2FlT3JSdmtxVnRUSHhOMllvcGdpbU1lUElFRlkvZUhCeE91c3dkRWxBWDNId2YxT3JkQlUxUi9mVjhlMFl2SWpjVWUySlFGRTNiM2toMHhIUTczVzRIQ1h2ZnlDc20wRXZlQTVLM2d1T1FUYlFEM1NBb1R0UUQzNUFxbHNvK1JuQit6QnpHVlgvY055eDBUYlFEM0hCMFR0UUNoQ2hOdmdFeGJIVDJCQmZjVStNOFZNd29PUEFyNEhyUVNrUGRpSitUM09PUVRPNUFXRTUxWkhSTTdnQW9UVzNRS0U1M0lDaE03OTZuNHp4VXpDdFA4SG9zS2pRcGpDc20wRXZjUTVEN205eHUzYnVSaVNnb1RWc2g5SFJPV3lENGRFMWJJWS9oZUJ4TTJ5SkQzTFFVVE5zUlRCaE5XeUNrZEUxYlE5MWdHRTFyUW5pTUZ3d1lUVnRDRlNBb1RWeUQzTS9mUkZUTUtEcDkrdlBkenVQZGx2UkxGOFAvL3lJQUEvd0E2Z0FEM3dQRW04QlB5OTc1K0ZmY2o5dy8zQi9kRzkwNzdCdXo3UWg4VDdGQk5lM0JaSDRqN0dRWEhCcDMzQUFXWHBhZVJyeHZ2MjFUN0xwY2ZFL0w4SUFhSGZJZDBiQnI3TytzNjl5UWVqYndWTTFiUTRhbU1tNCtoSC9lL0J2czJUVTRtSGc3M2tRcjRHd3Izck9jVGJ2Y3hDaE9lMVIwVHJ2YzlDaE9lMFBndkN0aVVCUk51c3Z1UGNCMzNOUGowd0IzQjhoM1M5d0lTeGZjQWcvWUtodlVUMGlFZDkxWDdIT3I3R1I4VDdQc0YwaU1LRHI4Szkwc2Q3c29Tbi9kOTl3UDNWaE1jbi9pU0ZST3N6aDBUSHZjeUNoTk05NVVLOXc3dXdCM0pIZmRRMFZZS2ZKcjRiNWl5bUpTWjNwaVZtcmlmQnZ1TmxRZDhtdmh2bUxLWWxKbmVtSldhdUo4SSs0MlZDUjZnTjE4TUNZc01DOE1LNEF1MG1nd000SlVNRGZqd0ZjMFRBaE1DQUFFQVB3Q1lBSndBd3dER0FNd0E5QUVyQVZJQld3RmdBWWNCaXdHUUFiSUIwUUlpQWpvQ1V3S0tBcFlDcXdMREFza0MwUUxsQXg0RElnTW5BejhEWHdQSkE5NEQ4d1JDQkZrRWd3VFBCUEFGUHdWSEJVc0ZXZ1dNQlpBRmx3V21CZFVGMmdZL0JvRUdod2JJQnRNSEF3Y2ZCenNIZVFlSUI3Z0g2QWZ0Qi80SUJRZ3FDRXdJV1Foa0NMa0l2UWpEQ05VSkpRa3FDVndKbUFubENmY0taQXBwQ25jS21RcXpDcmdLeEFyUkN0WUszQXJ2Q3ZNSytBc0JDd1lMRmd0SUMyc0xkZ3UzQzdzTCt3eGFERjRNWnd4eERIVU04ZzFCRFVvTlR3MzVEZjRPQXc0YkRoOE9KQTU0RG9FT3hnN3BEdmNQUEE5Q0QyUVBpQSt0RDc0UDlBLzVELzhRU3hESUVNOFE1QkQwRVIwUlF4RmdFV1FSbFJHZEViZ1IzUkh0RWZvU0FCSWtFa0FTUnhMRkV0MFM4aE1jRTVBVG9ST25GQm9VSXhRcUZDOFVteFMrRk9VVStCVUVGUXdWTmhVOUZYTVZleFdnRmEwVjRoWUNGaVlXU2haU0ZsWVdYQmE5RnRJVzlCYjVGdjhYUVJkT0YxTVhYUmRqRjIwWGR4ZlFGL1VZQ2hnZkdEOFlSQmhPR0ZNWWxCaS9HTklZMXhqa0dPb1k5QmorR1FNWk54bEtHVkFaYkJsMUdZVVpqQm1UR2JzYUF4b2VHaVVhTEJwUEdsWWFYUnBnR25FYWxScWhHdVFhOFJyOEd3NGJFeHNmR3k4Yk5oczlHMDRiWGh0dkczWWJmeHVFRzZBYnFSdTFHKzRiOGh2M0hBMGNNaHc1SEVBY1NCeFBIRmNjYWh5aEhLNGN0aHkrSE5BYzR4ejJIUHNkRHgwakhUTWRPaDFDSFVjZFRCMThIWVFkaVIyNkhiNGQwUjNaSGQ4ZDZSMzNIZndlQ3g0NEhsNGVkaDZQSHFnZXVoN01IdEllM0I3aEh1Y2U3Qjd5SHZrZkFoOEZIeElmR1I4ZEh5TWZUQjlkSDJBZmFCOTFIM3NmaEIrTUg1TWZ1aC9FSDhrZjBSLzFJQUVnQlNBSklCQWdGQ0FhSURVZ09TQk1JRm9nYUNCMklJQWdoeUNOSUpRZ21pQzZJTTRnMHlEaElPd2c4aUQ2SVFJaENpRVNJUmNoR3lFNklVVWhUQ0ZUSVZvaFh5Rm9JWVloamlHZkliQWh1Q0c4SWRraDN5SGxJZXdoOWlJQ0lnNGlFeUlYSWg0aUpDSXBJalFpU1NKT0lta2lkU0tQSXBvaW9DS21JcXdpdHlMSkl0Y2k0aUx0SXZZaS9TTUVJeHdqS3lNekkwRWpTaU5RSTFRalhDTmlJMmdqZnlPV0k1MGpyQ1BCSThZajNDUHBJL01qL1NRRUpBa2tEaVFaSkM0a1F5UlhKRndrY0NTRUpKZ2tuaVNxSkxNa3V5VEJKTWNrMFNUa0pQY2xDaVVYSlIwbEppVXZKVFlsUFNWQ0pVa2xXeVZrSlhZbGlDV1BKWm9scFNXdUpiTWx1Q1hGSmNrbHppWFRKZU1sOENYM0pmNG1DQ1lTSmh3bUpDWXJKakFtTmlZOUprUW1TaVpRSmxZbVhDWmhKbXdtZUNaL0pvY21qQ2FhSnFVbXN5YTlKc0lteGliTEp0UW0zU2JtSnV3bThpYjRKdjBuQ0NjVkp5SW5MeWM4SjBrblVDZFhKMTRuWXlkcUozRW5kaWQ3SjRjbmt5ZWZKNnNudHlmREo4OG4yU2ZoSitnbjdTZjFKLzBvQWlnSUtBNG9GQ2dhS0I4b0tpZzFLRUFvUnloUUtGY29ZaWhuS0d6MzR4WDNLc2IzS2ZjZjl4L0UreW43S3ZzclV2c3AreC83SDFEM0tmY3JIdmRhOS9FVit5LzdMUHNXKzIvN2VmY3IrdzMzTVBjdjl5djNGdmR3QzRxTDkyUWQ5elc1cWY4QVM0QUEvLy9JZ0FEL0FFdUFBQk5WZ1BjZTk4b1ZFNVdBU1IwVFZhQmkrSm9IRXpXZ2t2ZEdCVklHRTFXZ0tCMFRWY0QzZndZVFdjQ2greE1GeEFZVFZjQ0U5MFVGL0lZR0UxT0FMUW9MRlNNZEN4V3JwS0tycTNLaWEyeHdkR3RycG5TcUgvZHpGcXFtb3F1cmNLSnNhM0owYTJ1a2RLc2ZDeUlLRHY4QUxvQUFDL2MzQ29qN3VRVmdYVnQxWFJ0VmNhcmlIL2N2QjVEM29CMzdKOVVLKzQwRit4aUt2VnZjR3d0OGxmc2dhUjFiQjE2S1NvcFpIa0gzTmgxNUN2Y21CN1crc3AyNUc4YWpiaThmTmdmNEVoMWFIa0Y5QldmM2ZIY0s2QWYzTngwTEZaaUpsNFNnSHBoOWZKRjhHM0oxZVhCeW4zU2xmeDkxYTNCNVlueVdiaGpSb3NxMDBSb09mQXIzcjdRSE5SMEw5eDRwQ2dzVnE2YWpyS3R3cEd0cWNISnJhcVp6ckIvN1poYXNwcU9zcTNDa2FtdHdjbXRxcG5Pckh3dUxMaDBMWWdjekhRc1ZwWGkwcjdLdXRMQVpwNldSbXBrYXBYaVhlSGw2Z1d4NEhtdGJibDF2WEFnT1BBb1NrUGRpKzJMNHpSTTBrQllUbUZrZEV6U0FDaE5VZEFvVG1NZ0tDN1A3bTJNSDg0SUZqRStNVGs4YWF3ZDlhR3VGWXh2N0xTMzNBUGRUOTFQeTl3RDNIclN3Z25ldkg1LzdCZ1hKQm9mM0pnV3JVMHlhT1J2N1lQc2QreWo3WGZ0ZTl4ejdLUGRkM3MraXI5QWZDMlFIMG9NRmpHVWROQWY3THVSSDl4VDNDT2pIOTAwZUM4V1RycWkwR3IxaXFmZGdDc1NHcFlGNEdudDhnbVdESGd2eXo4bmRINXlEZ0paMEczSjFlVng0akg2TWdCOTdkR2VFY2h0eVo1S2JkQitNbG95WW5ocTZkWjF5ZElDQWVvTWVPYzlOOGg0TC93QXNnQUQvLzlPQUFMZ0wzb0UzQ3ZzQUIvdFA3VHYzSmZjZDhkbjNaeDRMR3AyR25ZS2VIcForZm95QkczTjhkM3NmYjZSM2JSb0xkZ28xTlJvTC8vL1JnQUFsQ2dzVjl4WFY5eFZCbnFUN0YvY0g5N1lLK3djRkMvZFhFOGpRSFJPVTl6WDRQY0dXQlJQRXIvdFhCeE9VWndmaWYvc1ArK2dGRThqN0VmZnA0NVVGc1B1RUJ4T29SZ29UeUdTMWNMMGVDNEEzQ2d0OGl6WWRDeFZQbExoSTVSdmx1UFVLWG5wbmEwOGJVR1NydUh3ZkN4VnV1bSs1YTdzSXFuaDZsWGtiZDNsL2NYMlJmS2R4SDdSbXNtaTBad2dPOTNDTHMyTXlIUkwzRkwzNE9PVVRqcjBXOTFpekJrZVdCZmVPQjQ2STE0blBIdmRWL0ZRRnZRYjNTdmhVQmZ0VEJ4Tk9qRVNLUm9wSFJZSVlFeTVqOTRXekJ6MzNJQXJQSHRtVUJiTDdTQWY3UnZ4S0JST1crMUw0U2dYN1BHUUcxNEVGL0ZRSFBYOEZDNFZkRmNtNldGSnVnSFQzVGdyM0NKYk10OE1iQy9kcDk0TVZ4QWZRaTgrTnpSN2psZ1d5KzVJSEN3UDRHNjRWK3gwcDgvZFk5MWYzQVBQM0dxdXRoSGV2SDUvN0NBWEpCb2YzSlFXeVNFU1VWQnY3VnZzayt5ZjdYdnRpOXgzN0pQZGUwdENacmNrZmovY2xCVTBHZC9zSUJYaGtZWU5sR3d2M2ViUUdLcGpDOXpjRjkzd0d3dnM0S1g4RitESWRDM1orMGtuRlpuYW9kdmcwekl2M1NSMzRHQW9UUndCaUNoT0xBQ1lLRTRhQTl3UWRFeWFBbFRJRkN3UDMvcThWK3djNTIvY3o5elRvMmZjQ282aUZlNmtmbkRNRnh3YUk5dzBGckU1TGtWOGIrei83RS9zUit6ZjdQUGNOK3d6M1JjbkpsNlhCSDQvM0RRVlBCbnN6Qlh0cGFJVnNHd3RuQjhLRDkwbjhYWWQvZUZWdVZXRm5HWWFRQmFkd2RwVnhHMnh1Zkc2RUh3dDJmdmV2Q3Y4QTNZQUEvd0JTZ0FEMyt3cmcvLyt4Z0FEWDNNdjRHQW9UUnlEM09oMzNyUWVNdXdYZGxjbkU0allLWDNGelZvQWVFNGFBOTdNS0U0cUFKZ29UaGtEM0JCMFRKa0NWTWdVTDl5MEYvRXRkQ2d0R1d4MEwwMVhSQ3YvL3lvQUEvd0ExZ0FBTEZXT3BCOHluYlZwV2FtdFFnSUNNam9BZmc2OEZzWVI5bFhrYmZYMkZkNFFmVHBXNWFka2IxZE9zM2NOcXNFK1dId3UzTUIwTEpRcjQxQ1VLQy84QUxZQUEvLy9TZ0FDNjl6NjZDN2lYcWJLNkdzWlpza0ZNVm01TGd4NTlrcGlFbVJ1ZG01ZXBrQitTcndXTWxKT01raHU0cDNKY1hIQnlWQjhMdDU1S0Nnc1ZXYnNIOGI1WE5ERlpWU2w4ZUl5UWRSOSt2d1c5ZllDaGFSdDFlb0YwZng4bm5kZGg3UnYzRytUZTl3RGVXOGNrbng4VDhONm91OGZUR3VoQXkvc0pMejloTlhrZWI1U2VncUVicnBpZ3RwWWZtYjhGanAyYWpKZ2IyYmRoUWpaV1dqRWZEdmNQZk5MNHlycjNvd3JWeXhQS1J4MFRxMklITlFyM3dnZmFsOGJFNEJxZGhwMkNuaDZXZm42TWdSc1R5L0FLRTh6N0xRWVRuR0lIRTVwd0NoUEs5eE1LQy9jUGZHWWRDMU1LMXZjQzkvNGRsUFlLK3dYM0xWaStFOElnUngwVGtpQmlCelVLRTZJZzkrc0g0cFlGRThKQXRQdUVCeE9LUUdJSEU0b2djQW9Ud2lEM0V3b1R4NEFMVGdWb0I5cUNCWTFqakFzVnBYbnI3Z1dibkpHYWx4cWZlcGw0ZTNhQWJId2U2L3NKRmFWNTYrNEZtNXlSbXBjYW4zdVplSHAyZ0d4OEhnNTZucUI3ckJ2RHByN1lseDl3bFFWYWZYbHNiUnR3ZUtlZmRCOExQcFM5Uk9jYjU3M1MySlFmYlpZRlYzZG9Za2tiU1dpMHYzY2ZDN2Y0TGdwQW1nV2lCL2VROTZFRis3Z0hQM3dGWi9kNHJ3ZEZtUVdLdklyTTl4OEsrM2huQjlkOEJYUUgrNUQ3b0FYM3R3ZldtZ1d2KzNqM0Z4MEwwdjhCdm9BQS93QXNnQUQzd3dvTEZmY2tyS211cnFwcyt5UDdJMnhzYUdocXF2Y2pIcy8zWkJWRFJrMzdKdnNsMEUzVDBzL0o5eVgzSmtmSlJCOExzL3MwQlZ1WHAzdktHNnFqajVHZkg3UUhQcFJnOXloMDJtZXZVSmNaOXdTZnc5TFpHdmNDTWN6N0xSNzdyQVlMWkFZdkhRc1ZxWUlGdkpxZ3Fhc2JxYUJ3ZHFRZkMzY2RYYmxpdEFzVm5xVDdGL2NIQlZZZEJmc1ptQldob1Z2RkJhTjRlNUo5RzNsOWZucDdrWDJ6ZHg4TEZhOTdwcldtdFpPWkdhdkFrSnliR3FOOGxuaDFlbjg4Y1I2R2ZYeGFlMW9JRHZjNkhmZXRCNDczSVBjVUhRdGdpL2dnSGZjdDlmRUtDd0dMOTNqSzkzSEc5MHNEK0ptRkZiQUc5eWI0UWNHWUJiTDdTMlFIMVgwdCs4TDdCZmZEMVpnRnN2dHhaQWZWZi9zRSs4Y2s5OGZabHdXeSszaGtCOFNCOXpYOFJBV3dCdmNYOS9laVI2c3UxL3RXR1F1b2FRb0w2dmMxVGgwTGZKWDdMN0VkWEFkZWlrcUtXUjVCZlFVTGZJc2xDdjhBMllBQXV2OEJONEFBOTZRS0U5eHZDdmV3dEFjdWxnV0owNHZQMHhxL0J2ZGgyT24zQlBjSk50MzdQUi83b1FZVDdDMEs2aFlUM1BnYUNzY0c5d3pBVXlvdFcwcjdEUjlKQmc1TEhZNGRDL2NZSFJLNDZ2ZWg2bmpMRS9EM2VoMFQ2TUdqc0x6T05ncHBmSFZzZmg2NlgwK2pUaHY3Q1BzRk5QczZIeFB3cEIwTEZhK29xYTZ1YnFsbloyOXRhR2luYmE4ZjkxMzRiaFgzRmZzazRUYVRIbWVDZUh4c0duS1llY2FBSHZjWGRBV2JjNVZ5Y2hwcWQzTm5meDRMRmZjZzZPSDNGUGNaTXRQN0ZtbHRoNE50SDVmM1BnWDNyOTM3MndaMis4U25nd1dTcXF1UHFCdnJ4MVVuSzFkTUtYbDRqWkYzSDMzQkJjQjlmWnB0RzNSNGdIU0NIeTJneTF6eEd3NnpxcXV5czJ5clkyTnNhMk5rcW11ekh3dHZpLzhBTElBQStHSDNKd29TbHZkYysxejR2dnR5OTEwVHlKWVdFN1QzWExNR1RwVDNEdmRIOXdiN1J6K0NCV1AzazdNSFFKVDdOdmVPOXg3M1hObVdCUlBFc3Z0ZEJ4T2taQWZSZ1BzQSt6WUZFOUFoOXpqVWxBV3krNUprQjlxQzl5djdnUHNxKzJrMGZ3VU85eDU4Q2d2eGZnWDcwUWY3UlZGSyt3VWVDeFd4Z0tDNG9MaWt3eG1RbDVDYm1ScW5lWlY0ZFhsOVFYc2VobktCV0lSWUNBdHUreDRGKzNmM3loM2YwaHJRK0RjS3RQdXZZZ2ZuOTVFZEN6QWRqQW9Mc2dkTWxQdE4rSTBGVHdZTGVCMy9BTjJBQVA4QVVvQUFDd1dOTllzTGxSM0x1Um9MRlhOMzhmc29CZFVHOGZjb2M1LzdCeUlGRGthQkhRdVVDbFFIQzEwZHUyS2xXSk1mQy9mS2lBb0x5QjNiaTkzckdyd0czTEI4T3A0ZkN4V25lK2ozQ1FXZW80NmNsUnFpZTVsNGVYV0FaMzRlNHZzaUZhZDc2UGNKQlo2amo1eVZHcUo3bVhkNWRZQm5maDRPMWdlY3hLVzFzNm1YZ0JoN25wNkNvaHV6bnFXNkg2Ri9iWnB0RzFWU1d6dHFId3UzK3cwNGdBVms5NFlIQ3hYV3g3bmoxbDY1UUd0dWdYWnpINWJhd3N6M0FLQ0hxQmo3TllFMSt3LzdCeG9udzBYbUhveXNGVjF3dWZjQWloK2NvcUdUcEJ1MHAzUk1TM0Z1WkI4TzBYb0tDeFgzSmFEbDUvY1ZHdlpXelRNN1QxUS9RTUplMUtpamtwbWZIbjFBWFZrbGJBaXE5NXdWeXF1a3JyZWxaUzJEaTRLS2d4NS9lWGlHZGh0ZmFhTEtIdzczUHhWUEJwVDdQd1gzb000R010QlE5dzMzRFJyM0k5SDNCZmNTOXhQUit3WDdJL3NOVVBzTk1rWWVTUGVnQjVUM1B3VlBCblFvQmZzUmpnYnYwZGYyOXhJYTkxcjdIZmNBK3pIN01Qc2Qrd0Q3Vy9zVDJTTHRSUjZJK3hFSEMrTGJDZ3NWKzEwRzhQZTlCUTVBbFB0cCtRUUZUQVlMRlpFZEM3eUJ3MTI1OTU0S1hia1M5eDdxRTFPM0Z2ZXV0QWIzU2dvVG1jRDdSZ1ZhbWF4OHpCdXBzNCtSbmgrMEJ5V1ZWZmMxZE5CZnNUNmNHYk9lcHErczJLRzltcXlkcUFpSm1wdUpuQnU4b2FtbHBYaWxhWTBmVDROZ2FFNzdMZ2o3QzExd2ZFTWJiQVlUVStTTDVJM2dIdWFWQmJUN3JnY1ROV0lIY3gwTGl2Y0ZIZGIzWkIydDl4cUVUaDBUS3FEM0h2ZktGUk5Lb0VrZEV5cW9ZdmlhQnhNYXFKTDNSZ1ZTQmhNcXFDZ2RFeXF3OTM4R0V5eXdvZnNUQmNRR0V5cXdoUGRGQmZ5R0JoT3B3QzBLQ3hYN09nYmY5M2NGRGhMM0hPWUw5M0NMczJPOFd2Y3R1N2lZOTRrZFZzQmF2QktROTJMM1QrZjNITGFlMDFYVEUxRmdrQllUa2VEM1lyTUdRWmZnOXlrRjkwUUdFMUZvVW90WmlsNGVRNElGWS9oV0J4TXhhSkgzTFFWVEJoTlphSGdqQmZ0ckJvck9pODdYR3ZjUkJwWS9CYmIzVzJBR2Z6MEYreEFHeDR2UWpNNGVFMUZ3OTFrR0UxUnduaU1Gd3dZVGtmQ0Y5eTBGL0haa0JzNkIrNXI4VlVDQUJmZ2Q5MklWK3lvR0UxSmc5eVAzamdXU0JnNGxDbDI1QzVNZFhZb0xWTEpxd3ErMm1LeWpIbjZrQlg5M2Q0aCtHMlZ1cExZTGpCMk5DNHRHUnhvTGJlTnBza3VRQ0d5RGYzbHlHbTJNblhpM0c1NllqSTJhSDVKOWtudVNkcDFVb1cyeGVrZCtaMjExUzI4NEdFRi9CV2NIaHA2amhaNGJ3YU9YdnB3ZnJmTUZ1WnFrbUw0YnR3Wldpa3VLV3g1QmZRVUxmZ1dNV1l4Slhob0xONHU0OTkzM1EvZjJDdmRFMkJPNHdoYjNrTE1HUGZlUEhjN0ZHcjRIMEl2UWpjOGU5MElHRTlpait4SUZ3d1lUdUlYM1F3WDhPbDBLV0FkUWkwaUpTQjQ4Z1FVTDk1ZlhGWlJzQmNhU3JhbTBHcjFqcURtVEhvRklCY1NHcFlCNUdudDhnbVdESGd2M3BCMy9BYktBQUNVSzkrc2RDMkQzQlIzVzkzb0twL2NhY0ZBS0V5dFFmUjBUUzFBK0hSTXJVR1A0WGdjVEcxQ1E5eTBGRXh0SVV3WVRLMUFwSFJNcllQZFlCaE10WUo0akJjTUdFeXRnaFVnS0MyVUs5MzBLQzZWclg1aFlHeU0rVUNJZjkwcjNEeFhKcjFwRVFXVldTMDFvdmRUVXNiN0tId3VCZ2RnS0V2Y2M1dmRZNnhOYmZSMFRPejRkRTF1NUNoT2JZUjBUVnpvZEUxdTVIUXNUVFBlQUNoT005MTBkRTB6NEh4MFRMUGVJSFJOTWh4MFRWR1FIMm9FRkUwejM5d29MRmFhQ0JieVpuYW1wRzZhZWNIYWlId3ZzOXprVit3L1hWUEwzRE92UzkxZmZpc2g0MXg2VWdYK1FmQnR0ZEhkb2I1Vnp1eVlmalhXTGVuc2Erd2xMU1RsRFdyamxIZ3VQQ2txS0M0dmlqZUFlQzFYM0cyZWtYWlVJYVlsNGMzSWFjcDl0dXBlWWpJeVhIcGgxbUcrYlpxUldwRzZyZWtaOGJXbDRWVi83RFJneGdRVmpCNFdjc29lbEc4V3JtcmVYSDdqM0p3V3dtSzJidnh1bkJndTNpN1JpdVYxTkNsMjVZclFTbGZkNSszbjVDZnVQOTNrVGhRQ1ZGaE9HQVBkNXRBWTlsdmNuOTN3RkV5VUE5eUQ3ZkFVVGhRQXZnQVVUSlFCaTk2OEhFNFVBdEFjVFVJQTFsZnRROTh6M09QZVNCUk9FZ09PV0JiVDdlV0lINEgvN0dmdG9CUk9KQVBzVTkycmpsUVVUaFFDMCs2MWlCeE9LQVBkbkhUUUs5MmZaSFF2Ny9maUVCZnN1WWdiVGc1Ti9CZnkvQnpaL0JRdjNHeDNubGdXMCs2NzN6UXI3MXdZTFZvdjNZZ29Tbi9pVEUxajRhdmRHRlJPWTl3a0tFNmlEKzBZRnlBWVRtUGNKSFJOWWsvZEdCUXYzM3gwUzl4N3A5K0hwRTdpMEhSUFk5OU1LNllBRllnZjc0Znd1QmZkVkIvZlRDbk1kQ3prSzk2TFZGZGpOQmFXZ2tKdVhHcUo1bDNsOGVuOXZmQjVaTXdVT0ZXMEtDMDBkRTFlZ2ZSMFRsNkErSFJOWG9HUDRYZ2NUTjZDUTl5MEZFemVRVXdZVFY2QXBIUk5Yd1BkWUJoTmJ3UGVnQ2d1ZkNsa2VSWDRGQzc0ZEU1ejNOUXEwKzNudENoUEk5eWdkRTVqMy9SMFRxSUFkQy9sTkJHZDFlRjltbGk2YSt4OGZtUHNkQmJBR21mY2RCWm4zSDVib3NCcTNkWjVvSGd1NVhTVUsvd0VRZ0FDNjk2VWRqZ29MblhSMW0yY2JUbXRZUFg4ZkR0WUtMNEFGQzRpTDkya2Q5M1BnRTlyM1FoMFQ2dmVtSFJQYTNRb1QxdmQ4cndaL0hSUGE5emNkQ3hWOGZJZUNleCtJKzJVRnF3YWV3UVdidXAzQ3FCcWhnWnB4SGc2VkJZblBvQjBMWFg2OFd0RDRGYm9Tc3VQL0FQeUFBUDhBUllBQUU3ajNnWDRWemI2a3g2MGZFM2hNbHFWMXNCdXVxYUdxbXgrRHBBV0dmWHlIZlJ0dGZwekIyWnIzSVozM0V4OThsVDk0aGs4RnhIQmVwbEliSXZzRkxQczFIeE80K3pYak4vY0NIcDI4RlQ1WTAvY2s4clhoNGNTOFlUeWdINGI3R3dVeWlGQlBUeHNMOTB2M25CWHl0MTAzTzFsUit3QWZQZ2JxaStDTjR4NEx2NnFicXFvYXdWMjBSa2RTWkVaaW9HVzVjQjRMRlp5SW00YWVIcGw4Zlk5L0cyOTZkWEI0azNtZmZSK2llM3RtYUhOb2dCbVRid1hGbThyQjF4b084bnk5OTdDNjk2QzlFcnJ6SS9UNEovUWo4eFBxOS9iNURoVVQ3UGNod2ZzRit5K1JIL3duQmhQcTl5K1J3ZmNGOXlJYi9Pc0VFL0w3SmxYM0RmYzNpQi80S1FZVDZ2czNpRlg3RGZzbEcva2RCUHM5K3g3N0RQdDUrM3IzSGZzTTl6NzNQZmNkOXdQM2cvZUMreDczQS9zOEh3NzNOQXJNaTgzVkdxOEcwYTJEUnBzZkMrSWQ5eDdxQy9jVmZzTUJzdVAzWHRUM1lPTUQ5M1orRmM2K3J1Q2VIemlmdjJiUUcrM24xL2MzOXlRdzhmc3ZtaCtIWWdYM0IzYTZPUHNQR3ZzV1hWMVJUbVMwMzdTUzA0N1ZIb0tST0lFRmpqaVJVR0VhT0d4aVRFOWJ3UGNQOXhDNjNmY0hvQjZIdEFYN0wzd3dKZnNvR3ZzejZEL3BIZ3YzZVBzczl3MzdMZ3ZyQ2p5QkJXTUxCdDJnQ2d2QmZyejNjYmozWjcwU3hmQW04ZmZrOFNid0UrcjMzZmlWRlJQczl3eTFNZnNOa0IvNzVBWVQ2dmNOa0xmbDl3d2IvSEVFRS9MN0QyRHE5eEtISC9mbUJoUHEreEtIWWl6N0R4djRvd1Q3SnZzUktmdFMrMVAzRUNyM0ovY245dzdqOTF6M1hQc1A0L3NtSHc3Zk90d1R4YURpQ2hPVm9QZVorNGtWRTQyZzl5K1ZCUk9tb1BlRUhSUEZrTUVLQzMyVCt6QmVCV2dINElFRiszWUh1MkpobkZzYit3NHdKZnN0K3liZEovY095YmFsdXE0ZkM5bDh2djhBN1lBQS93QXNnQUJndHZmUXZRdjRaZmt4YktUOFpmMHhCUXY3YWYwQU4zNEZDL2Q1dEFZcW1NTDNOd1gzZkFZVE5NTDdPQVVUbENsL0JSTTArRElkRTVTMEJ4TlVod29UbU1RS0N4ckNCL2NIQ2d0MXltaTJPWjBaczUrbnNLelhvTHlhckoyb0NJbVltb3FaRzcyZ3FhV2xkcVZwalI5VWdtTnBUZnN1Q1BzSFhtbDRSUnQwQmd2N1RmeUlQMzRGQy9jYzk1Z1ZRb3RGaVVnZVBJRUZZL2VKQi9jNzl4bm45MHIzUi9zSjYvczRIL3VjQmdzdis0MzNBdmpRdFdPelo2OExGYWEwcExXVG1RaXJ3SktibmhxZmZwWjVlSHQrU0hNZWduSjhXbnRhQ1BkT3BCV29vYUNucDNXZmJuQnpkMjl2bzNhbUh3djNtK1lWbEd3RnhaS3VyNzRheFdLdTkyQUt4NEdpZ200YWRIeDdaWUllRHJHYW9haWR3cEtna3B1U21RaUptcGlLbmh1M25aNnBqQitrZnAxc2t4NUxobXBrQzlDQzkycjhaSGxqZW10NGRCbW5ibmlVY1J0c2VJQjNmaDlNckhtMTByQzkwYWtlQzFuM2xCMFM5eDRMUFIyOUMvOEFTSUFBQzFSK3VQZFh0dmRBdVJLNDVETGw5NnZsTXVRVDdQZW0rRTRWM0wxUCt3U1VIL3VyQnZjRWs3ekgzUnNUOHZ3dUJETlp6ZmNWaVIvM3JRYjdGWWxYU1RRYlhnVDNEdmNBMlBkQTl6LzdBZHo3RGZzTSt3RTYrei83UVBjQVB2Y05IdzczbWdyVkJ2Y00wanY3S3ZzblF6bjdFaDlJQmdzVjRxTFgxZThlZHA4Rkx6eGFMZnNDR3ZzQ3ZDM25QaDZnbmdWQjczVFg0Um9POXdnZGlBdjNBaDAzSGdzZSsxZ0dpZENMejhnYXZRZk9pOUNOeng3UWxBV3krM3hrQjlDQ0JmZWJIVWthV1FkTWkwZUtTQjc3V2ZkYkhjK1VCYkw3aUFjVHJtUUgzUGRVQ2pxQkJRN0JYelFLOTJXMzkySzRYN2NMOXc0ZHJ3dXovd0hSZ0FEM0p3b0xpK0tOM3g0TDl4TURzUGlxOTFZS0MvZ2xIZnhMK0NjZEJ3c1ZFOURmZ0s1c1dWVmhTRGdhRStBOHhHSHFIcml6Qm5DT0JVYVRiNXZGR2hQUTE2SFVzeHJMYjdoS21SN01tYWU0eXhvVDRMTjExTmNheGFlYjBKTWVwbzRGczE0SExGSmhQQjg0dFVoVkdoUFFXV2hzTjRBZURqNGQ5NFlLbFFXSnpZdlAxaHIzRmdhWU5BVzM5MlpmQm44OUJmc1hCc2VMMEkzT0hndjNWL2NvOXdyM2JQZHQreGozQ3Z0VUgvdTdCZ3NWbzZiN0t2ZEU5eXIzUTNPbSsySDdSQVZXQnd2M0cvZC9GZmNjeThmVnJLMS9ZN2tlKzZrSFlXWnNlMThiTzFESDl4Y2ZDMjhLOTY0TDkvNGQ5My8zTFZpK0N5MSs5aDBMK3pHTHIvZWY5MEJndG1ldjk1d2RFNmkzRnZlRHJ3WTdtUVdLdklyTTkzc0s5eVlHRThpcSt4VUZ1Z1lUcUlQM1FBWDhDd1lUbUk4S1M0cFpIa1Y5QlFzVm80aWlnNlFlb25KNGtYa2JZblp2YUhLV2NhWjJIN0J1YzBCVVhFZHBHWmxwQmV1djdPdjNEUm9PRld1a2RLdXFwcUtycTNDaWJHdHlkR3NlRG92M2Fnb0wrQ1Q4dFFXdStRSUc0SmdGQy9jYzkxMEtDeDdRbVFXdiszaXJDZ3RpQitWLyt5UDd3Z1VMRTh4QkNndWsrSzRWM2Z2Y0J2ZzVIZmQ4cndkNUN2Y0tCN20rdEo2OEc4YWliVEFmVFFmNEVoMVpIa0orQldmM2ZIY0swUWYzTngwTGMzeDNlaDl3cEhkdEdtQnpjMWwvSHN3SEMvZUpIVnE4QzMrZm9JR3RHOE9wcnNHVUgzT1hCVzEvZDNwdEczQjJsNWgxSHd2MytwbDIrUWxmQ2d1MUZ2ZUhyd1k1bWdXS3ZZck10eG9MenNlVTk4UUtDL2NIOXdIM0J3djNjQjBTcVBnbUU1aTIrRzhWRTZpRCt5cS9od1VUbVBjbkhSTllsZmMzQlZjR0U1ajNRd29MRnZndjNmdmpCclN4czdHbXBnajNMdmNvdDgvakd1OVQwZnNWSmpGYUlZQWVkNWFkZjZFYnA1eWV2SmdmbnRBRmo1NmNqSmdiMUxwWE9UMWVPU2NpSDJCZVdGWldWd2dPclBkS3Q5ZlJFcnIvQUU2QUFQLy8yNEFBcmZjVTFCUDA5MFFMWEpPdGJic2JDM1FLRTV6SUNndndIZVAzQUJYdFVhR2lTT1FGbzNsNmxYb2JkbnA4ZEhxWGVxUjdIL2NjK3dEb0NqUlZ0UGNnSHd1NGpNeU12UjRMbGdvT2NQc1VCZnZNQnZnTytOd0ZydnhyQnd2M04vc2pGZVd1eEw2YkgzQ1ZCV2gxYTNSUEcwOXRvcTkwSDIrQUJWaWJybExsR3d2NERQaDhGVTFIWmxWYUh3czNmcm40TGJrQnN1UDNudUlEOTVCK0ZmY0k5d1RyOXpYM0x5emsrd2o3Q2ZzRkxQczErelhzTi9jSUg1aTVGVDlOMWZjbDg3VGg0ZG5JUGZza0kyRTROUjhMV1YxNWFXd2FaS0Z5dDM4ZUM1b0Zpc0NLd01BYTkyZ0xwcUdpcDZaMW8zQndkWE53YjZGMHBoOE9kUW8vMXd1MGNIYjVDN2hpdFBkZkNndHpKUVg3a3diMzAvaG5CYXo4TWdjTEpVdkI5ejhmQzRrMkhpK0FCUXV2RnZlVnJ3WXk5dzRLOTIvM0pCMW5DeFgzUGliTThNdkVTL2VKWEFiM09RcjNCdnpxRmE4SFJZRWQ5eGdIanZjY0M4MU12L2drdVFzVk1ncjdDSTQ5Q2d1TXZld0tDN3lNem95K0h0WDRLaDNWZlFXTVdveEtWUnBqQmwxem9kaHhId3YvQUN5QUFGOU1DZ3RyQjhTRUJmdm9CMUtFQlF2N2QvZ3pydmVjcmdHbjBmZEowUVAzVWZsZUZjU3NZREl3YW1KU1VHdTA1dVNydHNZZnJnUTRQVTBpSXRoTjM5N1l5UFgwUE1rNkh3NjUyUW9Mc3dyUmpRdlpDdnQ0WndmUjkxUWQrMnYzRXgzUW1RV3YrM2dMMkIxc2dBVlBsTFpINXh0dzl3MFZwbmZWMlFXam81Q1ptaHFlZUpsN2VYeDlhM3dlRGxFZEV2Y2U2Z3Y3eG92M2hRb0w5NXdLRTdSbkNndjNPUjFpdEJJTC93QXJnQUJrc2d1OEV6YVFGaE9XV1IwVE5vQUtFMWIzeFIwTDl3UFlGZnRDaW5SdFVoNklob2VGaG9WNm1CaWZjSGFXY0J0dGQzMXZnaDl4aktaczBodThycHV1ckIrL3c1UFE5emdhOTQ4SEMvYytsaFg3RFFiM0RmZEJCUTczbHdvUzl4N3FDN2o0WUxmM3d3b0wvR1J5K1VvQiswYjRoQVA3SjNJVnd3b09GV3VsZEt1cXBhS3JxM0dpYkd0eGRHc2VEaFdWZ1FYZUJ2ZUMrT2NGdnZ3eE9mZnVCdzc0ZFVzS0M4SVc5NCt6Qmp5VkJhb0g5NnozMFFYN0RRY0w5MTc0VGRHV0JiTDdWbVFIem9EN0RQdWtCUXVYWVFXeXdnYXNrSlMxbUI2dGx3VUw5NFlLbEFXSkMvYys5L1RqbUFVTDkxTWQ0UXRuQjlKOEN4WDdOR2Y3Q2ZzSyt6NGVwWFFGOXlIM0dNNzNML2RMR3ZkTFNQY3YreUgzR0I1eGRBWDNDdnMrci9zSit6UWFEdnRRKzVRRjl5b0tmUGRZSFF2cHBNRE4wQnIzQkRMSyt4cy9RM3B5WGg2Uit4d0Z5UWFnOXdZRmxhaXBqNndiMzhWaE5EbGRWL3NBSDJkWXNnWUw0d29IQzdMN2oyUUgyNEVGYmdmN3JQdlVCZmNqQnd2M2tSMWFCeldMQy9kUEN2dXVDL2NUQTdENFJ2ZFdDZ3YxSGZkeDl3TC8vOENBQUNVS0MwMEtZclFMYmZzTkJmdHVCdmV4K0NFRnJ3Y0xGZmFMOW83eUh2dFRZZ2IzQlg0RmpUU0xNalFhKzRRSE00c3lpVFVlK3dWK0JXTDNVd2VJOUl2MjlCb085M20wQmlxWXd2YzNCZmQ4QmhNN3d2czRCUk9iS1g4RkV6djRNaDBUbTdRSEUxdUhDZ3Z4Q25NSzl5TzNsdmdRSGZnUkhmZ1FDdjhBcDRBQTVndDNvNktCcEJ1d29aNmxqUit5Z1dTYVhCdGRXSDFjWHg4TDk2c1c5NG16QmoyVkJZbkxpOHpSR3FjR3ZxNTdacGNmQzZ6M09MUDNKSzBTOTREU1ZOUVQ2UGNWQ3pDVkJZbmNpOTNyR3JVR3o3RjJVcHdmQzRJRjkzUWRDOG1NeVl6SEhzaVJCUXRmOTRFZEMxc2YrMG9HQytlV0JiUUxWUjMzTlIwTDk2c0t2SXJOQ3hLNDVQZFMzem5kQzJ3ZERvRUY5L2NLWkFmMzNSMUhIZ3UwQnlXV0JZa0xGV3dkQ3hLNDVUSG5DL3Q0Qm9qdG1zS3VyNldtc3AyNWpyZE9HSEdlbjN5a0c2YWRuS0dRSDhoSHNqUlNVbjFnV3g0TCs3ajMwUXIzZlBnUEN2ZDh6ZnQ4Qmc0NkhRN0VWY1psOTVRS0MvY1YvLyttZ0FEL0FES0FBQXYza3hWSkNndkhsUGVJQ2w1OFpBc1M5eEMrV1BjeEN6cVNIb0ZJQlF2M0VMTlVRQ1pRVmZzQ2RIQ05rMndmZnJvRnYzMkFvbWNiZFhxQWRINGZJNTNrWC9jR0d3dTlXZmRHOTgzMzNRb0xld3FSdVF0dEN2ZkFGbTBLQ3dHaytOc0RwQmI0MjdVRys1UDVEQVZOQnZ1ZS9Rd0YrR2V6RmZ3a0J2ZGgrSGtGRGg1RmZnVm45M2gzQ3NJSEN3VjdDZ3NFSXgwT3IvZ1EwNEYzQ3owZHVndi9BQytBQUF0TXNjeHAzaHNUdVlDTStGc1Z5cnBZVW0xL2RWdjM4d3JER3c2WDkxb2R2NEFGaGF1MWdhVWJyWm1jcHFaOW5Ha2ZDOUgzd3EwU3dmZWhNOVFUNE1FTC93QXBnQUQ1cS84QUtZQUFFZ3VzOS9DdEFialU5eHJVQS9jS0MvZWgwZnRYQnI2NkJRdm1sUVgzL1IwTGl6WDN3Z29MZlpQN0xWNEZDNEJDOTRNZEM1WDRTeFhJZmdWVUIvc1N0RkQzR3JDdWtKT3VIbDZLVVlwZEhrVjlCV2NMOThJS1l2ZXZ0QWN2bGdXSjMvZUVDdWVXQlFzVDdMMEtDL2dnSGZjdDliam45eTMzOWdvTHVSckNCN3FNMEl5K0hndjMyQXJQaXdzUzk2UHBxUGQ1Qy9zYUJwRDNIQVVMNERiL0FGbUFBQXYzSFBlNkZXUUhDNHZRenhvTEZiQWRDMmNINEhtR0puMHVlVkVaZkZoOWIzRndDSjU1ZVpoeEczVitmWE9BSHd1TDR1SWF2QWZoOTlJZEM2LzRUbmVwZHd0ajk1Q3pCejBMOUg0Ri9FNEhDeDl0bFFVTGR2Y0ZIY24zcndvTHRQeUFZZ2ZqZm9MN1FYejdFbkFnR1h4VGQxNTFhZ2lhZDNpVGNoc0xCaE4yTFFvVGJndGtrUVgzUndmcisya0ZuUWJ0OTI0RkN3ZFppbGlLV1I3N0lYTUZaL2dIcndjTEJvcTlpdEc3R2c2M2pBb0wzNEVGK3pFSCt5L2daL2NQdk1DU2xyMGVPb3M4aVQ4ZUw0QUZZZ3YzRllzeUhRdTRIZmhndHd2M3VCMzROZ29MZHFwMitFUEUrREVkQy9zVjk2YlNsQVd5KzMwSEM2Ny8vOTJBQVA4QUlvQUFDNDRLWXJRTEJrUWRDNVgzVUFWT0JndUwwWTNRSGdzRnRQdXZDeE8wcFIwVDFJNzNIQVVMTklzMGlUY2VNSUFGWXZldXRBY3Y4UjMzUndjTFhmZEJDZ3Y3R0JWVXNHckJ0NitacmFRZWY2SUZmM2Q0aUg0YlkyNmt0Z3VlSXdYREJoTlh3SVZJQ2d0a0I5Wi9oUHNwZmlkMVBobUFibjFsZTI0SWwzbDZrblViQ3lVSy93RzhnQUQzM1FvTDkrZ0s1QW9MdWdyM2YrNExkNmQzRXZZTDl3VWR5Vm9LRXZjTjV3djRDd3I0TUIzL0FEQ0FBUGR0NVFQM2RRdjNsaDJFYkFYNEhBclN0SzYyQzk1TzJ2ZGgxbFhmRStRTEV2Y0ozampnTjkzM2NRdTMrQzRLUnBrRmlndUo0NHZqNGhvT2cvdEdCY1VHQ3dHbCtLWURwY0lWa244RitKZ0drcGY3bHZoU0JYMEdDOUpKeFdaMnFIYjROTXlMZDNnZEN4cFVCL2Z5SFdjTEJvanJtY1NmcjVTYWw1aVlsUXVDQlkxampHeFVHZ3VNeS9jVUhRc0hoUW9MK3doK3pQZ2F1UXNGYVFiN0Z3djdSTXIzQlF0aUJ4TkluTmlBKzhmOHlUaUFCZmhXOTVJViswWUdDL2NzK09vVnNhbW1zTEp0cEdWbWJYSmtacWx3c0I4TDl3ZjdneUlLQy90ZytPaktBZEQzbWdQUStPaUlIZnU0OTZYTkFiUDNmQU96OTZVVjkzek4rM3dHRGhLNjl3RUwrMDRIWm9jRmIvY2Vwd2RuandYM2V3ZXZqZ1duQzZpWG41eXBHNmFoZ0g2Z0h3dXcrRzJ3QWVIR0ErRUwrTWdCOXhyTUEvY2FDNGsxSGkrQUJRdGd0bVN5Q3g5c2xnVUx2UGdJQ3ZkbXZmY2g1Z3YvQUNLQUFHbXQvLy9lZ0FEL0FDR0FBR3lxRWd2NXZSV21vWjZtcG5XZGNIQjJlWEJ3b0hpbUh3djNUd3I3V1FmN2FQeTYrM1Q0dWdYN1RXSUdDNHRGUmhvTEJoT1dnS0Q3SHdVVGx3QzVCaE5iQUpIM1VBdkN5ZmNwc3g2bjlKajNGcEwzVUFqM05nYU5DNnNIVXBJRjkrZ0h4SklGcS90UGF3ZkVoQVVMOS9BZE14b0xCbytZanAraEd2Y09PZElMV0gxY1h4LzMzQW9MOXpTYWR2aE9zZ3YzYnMwQnN3di9BRXlBQUF1RkNoTzQ5d29kRTlnTEZmS3UzZUhocmpra0pHZzVOVFZvM2ZJZUN4Vnpkdkg3Q2dYVkJ2SDNDbk9nK3djMkJRdXo5MTI1OXp5NUV2OEFPNEFBL3dBM2dBQUw5L0lkWi9kMkIvY1R5czNiQzRuUDk2NGRDNHUyK0NDdkFmY0lDL2RzQWRIcEEvYzRDN3RWUnFOR0d3dGdYWGxSZ1NBTDkwWlp2UXZhQ2hMM0VMc0xjWTZiZXFjYnBwMmNxcFFmbjlBRmtKOExrZ1dyKzAvM1hCMExlNVZKU0FXOFptQ2RZUnY3R3k0aSt6RUxzYXFtc3JOc3BXVm1iSEZqWktwd3NCOEx1UGhmOTBRZEM3ajdKd1ZmbWFsOHhoc0xsblViY25WOVZud2ZmUXNCdS9jVDEvZ09DZ3NIOTZZZEMxMjVZclFMbGdXSjRJdmk0QnE4OTdRS0MvZEFIUTczSzFxOEM1RDRBaDBMdEFjK2xmdGU5Ly8zTy9kZDdKZ0ZDL2Y0Q3ZkQjdoTDNDZUEzM1F1NkN2ZlY5d0VMKzRPdTkvY2RDMHdiS1V2Tjl3NktId3U0OTJDMzl6bjFVTGNMSC90S0J2Y0psOHUyQy9pNnMvY1Bzd0VMOTcwSzkvYnBDMXE4akFvTGpVajN5UW9Mci9nV3dGYkNDeldMTklrM0hndXRuSytxcFF2Ly82MkFBQXR2QjhDRkJRdjdjTVAzT0FzZVBZSUZDL2w4OXdJQit6NzJDZ01MOS9jZGdYY1N1T1gzazk4TDk1UWRZclFTQ3dlUDl5TjlsUVVPQjkyQkJRdXBiZjhBSG9BQS8vL2hnQUNxQ3dhTVpSMWtCMGFMUm9vTDkzbTBCalNZOVBkWEJmZGZCZ3NTOXczbllQWUtnYnNMK0JnZEVndjNsaDBPamZnc0hRdTQ5ODNJOXpMZEFRdTQ5Nis5OTQyNEVndjdidmN1K3hyM1ZndjNFd1AzUXdzRHMvZHVGUXYvQURPQUFBdjNITUFIQzlMNHlycjM2QXIzL2gwTDk2U3A5d1c1OTRlNGhYY1NDL3lZQm9TQTk1YjhVd1daQmd2TCt3VEMrdzI4K3d1NGp4Z0xpOFdOeEI3aGxnV3krNWdIQzhXeHhRRzh2dmZndlFQM3NRc1RGd0Q0dVJZTEVzWDI5N2ptQytTTDVJM2hIZ3Z1eW93S0M0ZVlvWWFuR3d1SjQ0dms3Um9MQlUrVXRnc0J1dmNCQ3dhbTkwVUZYQVp3KzBVRkN3ZjNJTm9GeEFmN0lEd0ZDd2MzaXppSk9oNHpnUVZqQy9zZjkvM1prZ1czKzRnSEMzNzNJd0hhOXlMM012Y2lDL2NHRW5mM0M1ZmdoUGNMQ3dhTXBvdW1qS2JabEJpeUMrV0FCZnpIQnpGK0JRNFRidmNlOThvVkMvZ2VDa2puR3d1TDkvZ0tDd2FOTklzME5Sb0xxQUgzTU5JRDJndjdFZklkQ3hiM2VLOEdDNHZSamM4ZUMvLy94SUFBQy84QUpZQUFDMkw0aGdjTGdnV05Sb3RGUnhwa0J3czR5Ri9VeHJDZTJkd2VDN0lTaS9kOWQ5Mms5MDBMOS9zZDl3d2RDd2ZoOTlJZDU1WUZDL2RFSGZlZjlRdjNCZW1aQmJMN2ZHUUhDeFgzY2dvTCt3VmtCUXNBQUFBQ2dBQlFBT2tBQUFLWUFBVUNkUUFzQW5jQUx3TEdBQ3dDV3dBc0FrTUFMQUtxQUM4REZRQXNBWE1BTEFGMi85VUNtd0FzQWxRQUxBT0dBQ2NDM3dBbkFzTUFMd0pOQUN3Q3d3QXZBb3NBTEFJQUFDZ0NYQUFVQXRjQUp3S2lBQThEd2dBUEFvZ0FDZ0o1QUE4Q0p3QVVBZjBBTFFKQkFCa0I2QUFxQWpjQUxRSCtBQzBCWWdBaUFnWUFKQUpaQUJrQktnQWRBUlgvclFJakFCa0JLZ0FaQTRVQUlnSmVBQ0lDSlFBdEFrY0FJd0l0QUMwQnB3QWlBYklBTHdGRkFBa0NSd0FaQWZrQUFBTDhBQUFDRGdBS0FnQUFBQUhJQUIwQ21BQUZBcGdBQlFLWUFBVUNtQUFGQXBnQUJRS1lBQVVDbUFBRkFwZ0FCUUtZQUFVQ21BQUZBcGdBQlFLWUFBVUNtQUFGQXBnQUJRS1lBQVVDbUFBRkFwZ0FCUUtZQUFVQ21BQUZBcGdBQlFLWUFBVUNtQUFGQTVnQUJRSjNBQzhDZHdBdkFuY0FMd0ozQUM4Q2R3QXZBc1lBTEFMR0FDd0N4Z0FzQXNZQUxBSmJBQ3dDV3dBc0Fsc0FMQUpiQUN3Q1d3QXNBbHNBTEFKYkFDd0NXd0FzQWxzQUxBSmJBQ3dDV3dBc0Fsc0FMQUpiQUN3Q1d3QXNBbHNBTEFKYkFDd0NXd0FzQXFvQUx3S3FBQzhDcWdBdkFxb0FMd0txQUM4Q3FnQXZBcW9BTHdNVUFCNERGUUFzQXhVQUxBTVZBQ3dCY3dBc0FYTUFMQUZ6QUNVQmN3QVFBWE1BSXdGekFDd0Jjd0FzQVhNQUxBRnpBQ3dCY3dBc0FYTUFCUUYyLzlVQ213QXNBbFFBTEFKVUFDd0NWQUFzQWxRQUxBSlVBQ3dDVkFBbEFsUUFMQUpVQUN3RGhnQW5BNFlBSndMZkFDY0Mzd0FuQXQ4QUp3TGZBQ2NDM3dBbkF0OEFKd0xmQUNjQzN3QW5Bc01BTHdMREFDOEN3d0F2QXNNQUx3TERBQzhDd3dBdkFzTUFMd0xEQUM4Q3d3QXZBc01BTHdMREFDOEN3d0F2QXNNQUx3TERBQzhDd3dBdkFzTUFMd0xEQUM4Q3d3QXZBc01BTHdMREFDOEN3d0F2QXNNQUx3TERBQzhEcWdBdkFvc0FMQUtMQUN3Q2l3QXNBb3NBTEFLTEFDd0Npd0FzQWdBQUtBSUFBQ2dDQUFBb0FnQUFLQUlBQUNnQ0FBQW9BZ0FBS0FLeUFDd0NYQUFVQWx3QUZBSmNBQlFDWEFBVUFsd0FGQUxYQUNjQzF3QW5BdGNBSndMWEFDY0Mxd0FuQXRjQUp3TFhBQ2NDMXdBbkF0Y0FKd0xYQUNjQzF3QW5BdGNBSndMWEFDY0Mxd0FuQXRjQUp3TFhBQ2NDMXdBbkF0Y0FKd0xYQUNjQzF3QW5BdGNBSndMWEFDY0Mxd0FuQThJQUR3UENBQThEd2dBUEE4SUFEd0o1QUE4Q2VRQVBBbmtBRHdKNUFBOENlUUFQQW5rQUR3SjVBQThDZVFBUEFpY0FGQUluQUJRQ0p3QVVBaWNBRkFMR0FDd0NZd0FzQXBFQUx3SDlBQzBCL1FBdEFmMEFMUUg5QUMwQi9RQXRBZjBBTFFIOUFDMEIvUUF0QWYwQUxRSDlBQzBCL1FBdEFmMEFMUUg5QUMwQi9RQXRBZjBBTFFIOUFDVUIvUUF0QWYwQUxRSDlBQzBCL1FBdEFmMEFMUUg5QUMwRERnQXRBZWdBS2dIb0FDb0I2QUFxQWVnQUtnSG9BQ29DV1FBdEFqY0FMUUkzQUMwQ053QXRBZjRBTFFIK0FDMEIvZ0F0QWY0QUxRSCtBQzBCL2dBdEFmNEFMUUgrQUMwQi9nQXRBZjRBTFFIK0FDMEIvZ0F0QWY0QUxRSCtBQzBCL2dBdEFmNEFMUUgrQUMwQ0JnQWtBZ1lBSkFJR0FDUUNCZ0FrQWdZQUpBSUdBQ1FDQmdBa0Fsa0FHUUpaQUJrQ1dRQVpBbGtBR1FFcUFCQUJLZ0FkQVNvQUF3RXEvK3dCS2dBTEFTb0FIUUVxQUIwQktnQUtBU29BSFFFcUFCMEJLdi95QVNvQUhRRVYvNjBCRmYrdEFpTUFHUUl0QUNJQktnQVpBVUlBR1FFcUFCa0Jhd0FaQVNvQUdRRXFBQVVCS2dBU0FTb0FHUU9GQUNJRGhRQWlBbDRBSWdKZUFDSUNYZ0FpQWw0QUlnSmVBQ0lDWGdBaUF3UUFFZ0plQUNJQ1hnQWlBaVVBTFFJbEFDMENKUUF0QWlVQUxRSWxBQzBDSlFBdEFpVUFMUUlsQUMwQ0pRQXRBaVVBTFFJbEFDMENKUUF0QWlVQUxRSWxBQzBDSlFBdEFpVUFMUUlsQUMwQ0pRQXRBaVVBTFFJbEFDMENKUUF0QWlVQUxRSWxBQzBEWkFBdEFhY0FJZ0duQUNJQnB3QWlBYWNBSWdHbkFDSUJwd0FnQWJJQUx3R3lBQzhCc2dBdkFiSUFMd0d5QUM4QnNnQXZBYklBTHdGWUFCa0NVQUFaQVVVQUNRRkZBQWtCUlFBSkFVWC85QUZGQUFrQlJRQUpBa2NBR1FKSEFCa0NSd0FaQWtjQUdRSkhBQmtDUndBWkFrY0FHUUpIQUJrQ1J3QVpBa2NBR1FKSEFCa0NSd0FaQWtjQUdRSkhBQmtDUndBWkFrY0FHUUpIQUJrQ1J3QVpBa2NBR1FKSEFCa0NSd0FaQWtjQUdRSkhBQmtDL0FBQUF2d0FBQUw4QUFBQy9BQUFBZ0FBQUFJQUFBQUNBQUFBQWdBQUFBSUFBQUFDQUFBQUFnQUFBQUlBQUFBQnlBQWRBY2dBSFFISUFCMEJ5QUFkQWlJQUxRSXFBQVlDQndBdkFpMEFMUUl3QUMwQ2FRQWlBbVFBSWdLRUFDSUNrZ0FpQTVnQUlnT1RBQ0lDMEFBYkFmUUFLUUgwQUVvQjlBQXNBZlFBTEFIMEFCZ0I5QUFtQWZRQUtBSDBBRE1COUFBc0FmUUFIUUgwQUNRQjlnQW5BYW9BUHdIOEFETUI5d0FrQWZFQUhRSDdBQ2tCL1FBekFkOEFIQUg5QURFQ0NBQXVBZllBSkFIMEFDRUI5QUJKQWZRQUt3SDBBQ3NCOUFBWUFmUUFKZ0gwQUNnQjlBQXVBZlFBTFFIMEFDTUNKZ0FqQWJRQVB3SDhBRFFCOXdBa0FmRUFIUUg3QUNrQi9RQXpBZDhBSEFIOUFERUNDQUF1QWZRQUtBSDBBRW9COUFBc0FmUUFMQUgwQUJnQjlBQW1BZlFBSndIMEFESUI5QUFzQWZRQUhRRXNBRThCTEFBR0FTd0FUd0VzQUFZRGhBQlBBU0VBVUFFaEFGQUJJUUJRQWFBQVFnR2dBRUlCb0FCQ0FMY0FLQUZqQUNnQTFBQWxBTlFBRWdHZkFDVUJud0FTQU5RQUVnR2ZBQklCSFFBZUFSMEFHZ0huQUI0QjV3QWFBVGdBS0FFNEFDZ0JPQUFvQWdBQUtBTXNBQ2dCOUFBb0F5d0FLQUVzQUU4Qk1RQXFBZ0FBS0FGVEFGQUJVd0FaQVVBQVpBRkFBQjBCV0FBb0FWZ0FIZ0VkQUI0QkhRQWFBZWNBSGdIbkFCb0JPQUFvQVRnQUtBSUFBQ2dETEFBb0F5d0FLQUZUQUZBQlV3QVpBVUFBWkFGQUFCMEJXQUFvQVZnQUhnRktBQUlBK3dCZ0FVb0FBZ0Q3QUdBQnR3QVVBZjhBS0FIL0FDZ0I2d0F0QWxZQUdRTHpBQjRDOHdBZUFjc0FIZ0xTQUF3Q3JRQWVBME1BSXdOREFDTUNEZ0FaQVhJQUxRRnlBRUlCY2dBd0FYSUFMUUZ5QUNBQmNnQXZBWElBTVFGeUFEZ0JjZ0F4QVhJQUtRRDhBRFVBL0FBbEFRQUFWZ0VBQUNnQTZBQkRBTndBSXdEb0FFTUE5UUF1QVhVQUxnSTFBQzRCY2dBdEFYSUFRZ0Z5QURBQmNnQXRBWElBSUFGeUFDOEJjZ0F4QVhJQU9BRnlBREVCY2dBcEFQd0FOUUQ4QUNVQkFBQldBUUFBS0FEb0FFTUEzQUFqQVhJQUxRRnlBRUlCY2dBd0FYSUFMUUZ5QUNBQmNnQXZBWElBTVFGeUFEZ0JjZ0F4QVhJQUtRRDhBRFVBL0FBbEFRQUFWZ0VBQUNnQTZBQkRBTndBSXdGeUFDMEJjZ0JDQVhJQU1BRnlBQzBCY2dBZ0FYSUFMd0Z5QURFQmNnQTRBWElBTVFGeUFDa0EvQUExQVB3QUpRRUFBRllCQUFBb0FPZ0FRd0RjQUNNQlh3QWNBWGtBSEFHNkFBZ0JwUUFnQWFJQUlnSFdBQ0FCa0FBZ0FZRUFJQUhEQUNJQ0J3QWdBUHNBSUFELy8rRUJ2Z0FnQVlzQUlBSlRBQm9CNWdBZEFkUUFJZ0dMQUNBQjFBQWlBYlFBSUFGWkFCMEJsUUFSQWVNQUhRRytBQTBDZlFBTkFiQUFDd0dqQUEwQmNRQVJBVjhBSEFHTkFCQUJUQUFlQVlZQUhRRmZBQjRBNXdBV0FXVUFFd0djQUJBQXpRQVZBTUgvd1FGMkFCQUF6QUFRQW1rQUZ3R2dBQmNCZVFBY0FaRUFGd0dBQUI0QkpRQVhBUzBBSVFEaUFBY0JrUUFTQVYwQUFBSVBBQUFCWGdBSEFWei8vUUUxQUJFQlh3QWVBVjhBSGdGSUFDVUI5Z0FkQWZRQU13SDBBQ3NCOUFBakFmVC85UUgwLytnQjlBQVVBZlFBSXdIMEFBQUI5QUFLQWZULzlBSDBBQ1VCOUFBTEFmUUFCd0gwQUFvQjlBQWhBZlFBRndIMEFESUI5QUF3QWZRQUdnSDBBQWNCOUFBVUFmUUFHd0NNLzA0QWpQOU9BSXovVGdEcEFBQUI5QUFBQUlVQUFBQ0ZBQUFEWFFCRkJLd0FSUU5kQUVNRFhRQTdBMTBBVGdOZEFFRURYUUE5QTEwQVFBTmRBRHdEWFFBL0ExMEFWUUlUQUIwQ0V3QWRBaE1BS3dJVEFCMEJMQUJQQWhNQUhRSVRBRGtDRXdBNUFoTUFIUUlUQUIwQ0V3QWRBaE1BV0FJVEFCMENFd0F4QWhNQU1RSVRBQmdERVFBb0Fqa0FUd0lTQUNnQlovK3dBaTRBS3dKK0FCa0Mxd0FtQWpFQUZBTUdBQ2dCMHdBZkF5QUFMZ0tVQUJRQ2xBQm5BcFFBSlFLVUFGVUNsQUFVQXBRQVZRS1VBQ1VDbEFCbkF0QUFOd0xzQUJRQnZnQVlBM1VBTndKR0FCb0NSZ0FhQWtZQVVnSkdBRklDUmdBYUFrWUFHZ0pHQUNvQ1JnQXFBeUFBTndNZ0FEY0NYQUE3QWZrQUlnSkdBRklBK1FCQkFiQUFRUURVQUNVQTFBQVNBS2NBR2dDbkFCb0FkQUFXQVpBQVJRR1FBSTBCa0FCTUFIUUFGZ0dRQUVzQmtBQ01BWkFBTXdHUUFEMEJrQUFuQVpBQUpBR1FBRVVCa0FBeEFaQUFYd0dRQUVVQmtBQ0ZBWkFBYVFBWi8rOEFBUC9DQVpBQVlnQUEvNElBQVArQkFBRC94UUFBLzcwQUFQOXJBQUQvYkFBQS8xMEFBUDlNQUFEL2ZRQUEvMmtBQVA5cEFBRC9jQUFBLzcwQUFQKzlBQUQvWEFBQS8xWUFBUCtYQUFEL29BQUEvNUFBQVArUUFBRC9kUUFBLzNVQUFQK3RBQUQvdlFBQS81OEFBUC9jQUFEL2FRQUEvMXdBQVArOUFBRC94Z0FBLzhZQUFQLzJBQUQvZlFBQS8ySUFBUDlXQUFEL1lnQUEvMVlBQVA5Y0FBRC9WZ0FBLzF3QUFQOVdBQUQvYkFBQS8yd0FBUDhrQUFEL0VBQUEvMndBQVA5c0FBRC9YUUFBLzEwQUFQOXdBQUQvY0FBQS8zQUFBUDl3QUFEL2NBQUEvM0FBQVA5ZEFBRC9YUUtZQUFVQ2RRQXNBakFBTEFKK0FCa0NXd0FzQWljQUZBTVZBQ3dDd3dBdkFYTUFMQUtiQUN3Q2x3QUZBNFlBSndMZkFDY0NTUUFqQXNNQUx3TUJBQ3dDVFFBc0FoMEFGQUpjQUJRQ2VRQVBBczBBSkFLSUFBb0RBZ0FKQXRjQUpnS3VBQnNDeHYvM0EzNy85d0hkLy9jQmN3QVFBd2YvOXdNQi8vY0NlUUFQQXhMLzh3SXVBQ2NDTndCUEFlc0FBQUlIQUNjQm9nQW9BYVFBTFFJbUFCY0Ivd0F4QVI4QVlnSVNBQmNDRlFBVUFqa0FUd0hyQUFBQnRnQW9BZ2dBSndKUkFCTUNId0JGQWxNQUp3SHNBQk1DSGdBWEFyd0FKd0hvQUFVQzFBQVhBdDBBSndISkFDd0NMZ0FuQWFJQUtBSW1BQmNCSHdCaUFSLy82d0lJQUNjQ0hnQVhBaDRBRndMZEFDY0JILy96QWg0QUZ3S0NBQThDQkFBbkFic0FKZ0dkQUU4Q1F3QXFBVHNBQ3dFc0FFOEJMQUJQQVBrQVFRRDVBRVlCa0FDbEFFUC80d0dRQUJVQUFQL2RBQUQvVFFLWUFBVUNhZ0FzQW5VQUxBSXdBQ3dDc3dBRkFsc0FMQU9XQUFJQ0pnQWVBeDBBTEFNZEFDd0NqUUFzQXJNQUNRT0dBQ2NERlFBc0FzTUFMd01IQUN3Q1RRQXNBbmNBTHdKY0FCUUNlQUFPQXRFQUhRS0lBQW9EQWdBc0FyMEFHQVFUQUNvRUZBQXFBdGNBRkFPU0FDd0NZUUFzQW1RQUtRUGpBQ3dDZ2dBQUFsc0FMQUpiQUN3Q3hnQVVBakFBTEFKbkFDOENBQUFvQVhNQUxBRnpBQkFCZHYvVkEzNEFDUVBNQUN3REJ3QVVBbzBBTEFNZEFDd0NlQUFPQXdFQUxBTENBQlFDd3dBdkFxb0FEd0l3QUN3Q01BQXNBN1FBQWdJbUFCNENzUUFzQXdzQUZBTVpBQ3dDZHdBdkFua0FEd0o1QUE4Q293QUtBc0VBR0FMQ0FDd0Jjd0FzQTVZQUFnS1lBQVVEbUFBRkFsc0FMQUtiQUM4REhRQXNBc01BTHdMREFDOENlQUFPQW5nQURnSDlBQzBDSHdBM0FnVUFMQUcvQUN3Q053QVRBZjRBTFFMMkFBOEJyZ0FqQW9VQUxBS0ZBQ3dDR2dBc0FrQUFFQUxtQUN3Q2VRQXNBaVVBTFFKeUFDd0NSd0FqQWVnQUtnSVFBQmtDQUFBQUF0OEFKd0lPQUFvQ2JRQXNBaW9BQ2dOWUFDd0RXUUFzQW1JQUhnTHVBQ3dCK0FBc0FlQUFLUU1mQUN3Q0ZBQUtBZjRBTFFIK0FDMENGd0FlQWI4QUxBSG9BQzhCc2dBdkFTb0FIUUVxLyt3QkZmK3RBdkVBRUFNZ0FDd0NXUUFaQWhvQUxBS0ZBQ3dDQUFBQUFub0FMQUpkQUJrQ0pRQXRBaFFBQUFIRUFDd0J5QUFzQXd3QUR3R3VBQ01DTVFBc0Fva0FIZ0o2QUN3QjZBQXFBZ01BQUFJREFBQUNKd0FLQWlzQUNnSlpBQmtDOWdBUEFTb0FHUUg5QUMwRERnQXRBZjRBTFFJSEFDOENoUUFzQWlVQUxRSWxBQzBDQUFBQUFnQUFBQUlmQURRRDhRQUtBQUQvV1FBQS8xVUFBUCtrQmdjQUtBampBQ2dDOHdBZUF0SUFEZ0xTQUFvQ1dBQlBBaTRBVUFNWEFFSUNyUUJDQXF3QVVBSk5BQVVDVVFBM0Fra0FPZ0tUQURjQ01RQTNBaG9BTndKdUFEb0MxZ0EzQVdzQU53Rm8vK2tDWFFBM0FqVUFOd000QURJQ3BRQXlBcElBT2dJZkFEY0NrZ0E2QWxJQU53SGZBREFDSXdBYUFwZ0FNUUplQUJZRFZBQVVBa0FBQ3dJekFCRUI4UUFZQWswQUJRSk5BQVVDVFFBRkFrMEFCUUpOQUFVQ1RRQUZBazBBQlFKTkFBVUNUUUFGQWswQUJRSk5BQVVDVFFBRkFrMEFCUUpOQUFVQ1RRQUZBazBBQlFKTkFBVUNUUUFGQWswQUJRSk5BQVVDVFFBRkFrMEFCUU00QUFVQ1NRQTZBa2tBT2dKSkFEb0NTUUE2QWtrQU9nS1RBRGNDa3dBM0FwTUFOd0tUQURjQ01RQTNBakVBTndJeEFEY0NNUUEzQWpFQU53SXhBRGNDTVFBM0FqRUFOd0l4QURjQ01RQTNBakVBTndJeEFEY0NNUUEzQWpFQU53SXhBRGNDTVFBM0FqRUFOd0p1QURvQ2JnQTZBbTRBT2dKdUFEb0NiZ0E2QW5jQU53SnVBRG9DYmdBNkFzb0FKZ0xXQURjQzFnQTNBdFlBTndGckFEY0Jhd0EzQVdzQUlnRnJBQXdCYXdBZkFXc0FOd0ZyQURjQmF3QXJBV3NBTndGckFEY0Jhd0FDQVdqLzZRSmRBRGNDTlFBM0FqVUFOd0kxQURjQ05RQTNBalVBTndJMUFDQUNOUUEzQWpVQU53TTRBRElET0FBeUFxVUFNZ0tsQURJQ3BRQXlBcVVBTWdLbEFESUNwUUF5QXFVQU1nS2xBRElDa2dBNkFwSUFPZ0tTQURvQ2tnQTZBcElBT2dLU0FEb0NrZ0E2QXBJQU9nS1NBRG9Da2dBNkFwSUFPZ0tTQURvQ2tnQTZBcElBT2dLU0FEb0NrZ0E2QXBJQU9nS1NBRG9Da2dBNkFwSUFPZ0tTQURvQ2tnQTZBcElBT2dOYUFEb0NVZ0EzQWxJQU53SlNBRGNDVWdBM0FsSUFOd0pTQURjQjN3QXdBZDhBTUFIZkFEQUIzd0F3QWQ4QU1BSGZBREFCM3dBd0FpTUFHZ0lqQUJvQ0l3QWFBaU1BR2dJakFCb0NJd0FhQXBnQU1RS1lBREVDbUFBeEFwZ0FNUUtZQURFQ21BQXhBcGdBTVFLWUFERUNtQUF4QXBnQU1RS1lBREVDbUFBeEFwZ0FNUUtZQURFQ21BQXhBcGdBTVFLQkFERUNnUUF4QW9FQU1RS0JBREVDZ1FBeEFvRUFNUUtZQURFRFZBQVVBMVFBRkFOVUFCUURWQUFVQWpNQUVRSXpBQkVDTXdBUkFqTUFFUUl6QUJFQ013QVJBak1BRVFJekFCRUI4UUFZQWZFQUdBSHhBQmdCOFFBWUFwTUFOd0kxQURjQ1pnQTZBazBBQlFKUkFEY0NDQUEzQWtVQUhBSXhBRGNCOFFBWUF0WUFOd0tTQURvQmF3QTNBbDBBTndKTUFBZ0RPQUF5QXFVQU1nSWRBQ3NDa2dBNkFzSUFOd0lmQURjQjZ3QVpBaU1BR2dJekFCRUNrd0FyQWtBQUN3SzJBQk1DbFFBdkFXc0FEQUl6QUJFRHRRQXdBM3NBTndSRkFEY0NsUUFlQWRZQU1nSHRBRjhCMlFBNUFkY0FPUUhHQUIwQjF3QXlBZFlBTVFIWkFFSUIyd0E0QWRVQUlRRkdBR1lCUmdCbEFhNEFWQUd1QUZ3QXR3QW9BV01BS0FEVUFDVUExQUFTQVo4QUpRR2ZBQklCTkFBMUFlUUFOUUxwQURVQldnQm1BVm9BSWdGUkFJTUJVUUFnQVVvQU5RRktBQ2NDVFFBRkFrSUFOd0pSQURjQ0NBQTNBbWtBQXdJeEFEY0RJd0FEQWdFQUpnTGRBRGNDM1FBM0Frc0FOd0p4QUF3RE9BQXlBdFlBTndLU0FEb0N5UUEzQWg4QU53SkpBRG9DSXdBYUFrSUFGQUtVQUNZQ1FBQUxBc0FBTndLQUFCd0RzQUEwQTYwQU5BS1FBQm9EU0FBM0FqRUFOd0k0QURJRGp3QTNBanovK3dJeEFEY0NNUUEzQW40QUdnSUlBRGNDT2dBNkFkOEFNQUZyQURjQmF3QU1BV2ovNlFNWkFBd0RiUUEzQXJjQUdnSkxBRGNDM1FBM0FrSUFGQUxFQURjQ2ZnQVZBcElBT2dKY0FCWUNDQUEzQWdnQUx3TStBQU1DQVFBbUFtd0FOd0t2QUJvQzFnQTNBa2tBT2dJekFCRUNNd0FSQWxnQUN3S0FBQndDaGdBM0FXc0FOd01qQUFNQ1RRQUZBemdBQlFJeEFEY0NjQUE2QXQwQU53S1NBRG9Da2dBNkFrSUFGQUFVQUFBQUFRQUFBQXdBQUFBQUFnNEFBZ0JWQUFJQURRQUJBQThBTlFBQkFFc0FUQUFCQUYwQVhRQUJBRzBBYlFBQ0FIZ0FlQUFCQUtFQW9RQUJBS2NBcUFBQkFNTUF3d0FCQU13QXpBQUJBT1VBNVFBQkFQc0EvQUFCQVFJQkFnQUNBUTBCRFFBQkFSa0JHUUFDQVIwQkhRQUNBU2NCSndBQ0FTMEJMZ0FCQVRNQk13QUNBVlVCVlFBQkFWc0JYQUFCQVd3QmJBQUNBWGtCZVFBQkFZSUJnZ0FCQVpvQm5RQUJBWjRCb3dBQ0F3Y0RCd0FCQXd3RERBQUJBeElERWdBREF4UURUQUFEQTI0RGJnQUJBM0lEY2dBQkEzUURkQUFCQTNZRGRnQUJBM3dEZkFBQkEzNERmZ0FCQTRFRGdRQUJBNFVEaFFBQkE1TURrd0FCQTVVRGxRQUJBNThEb0FBREE2RURvUUFCQTZRRHBBQUJBNllEcHdBQkE2a0RxUUFCQTZzRHF3QUJBNjhEcndBQkE3UUR0QUFCQTdjRHVBQUJBN3dEdkFBQkE3NER3QUFCQTlJRDBnQUJBOXdEM1FBQkEra0Q2UUFCQSt3RDdBQUJBKzhEN3dBQkEvRUQ4Z0FCQS9RRDlBQUJBL1lEOWdBQkEvb0QrZ0FCQS84RC93QUJCQUlFQXdBQkJBY0VCd0FCQkFrRUN3QUJCQkFFRUFBQkJCMEVIUUFCQkNjRUtBQUJCRFFFTkFBQkJEa0VPZ0FEQkVZRVVRQUJCRk1FWHdBQkJIWUVkZ0FCQk5JRTB3QUJCTzRFN2dBQkJQY0U5d0FCQlJBRkVBQUJCVklGVWdBQkJWUUZWQUFCQlZZRlZnQUJCVjhGWHdBQkJXSUZZd0FCQldjRlp3QUJCV2tGYXdBQkJYMEZmUUFCQllnRmlBQUJBQUlBR3dNU0F4SUFBUU1VQXhRQUFRTVdBeFlBQVFNWUF4Z0FBUU1hQXhvQUFRTWNBeHdBQVFNZUF4NEFBUU1nQXlBQUFRTWlBeUlBQVFNa0F5UUFBUU1tQXlZQUFRTW9BeWdBQVFNeEF6RUFBUU0xQXpVQUFRTTNBemNBQVFNNUF6a0FBUU03QXpzQUFRTTlBejBBQVFNL0F6OEFBUU5CQTBFQUFRTkRBME1BQVFORkEwVUFBUU5IQTBjQUFRTkpBMGtBQVFOTEEwc0FBUU9mQTZBQUFRUTVCRGtBQVFBQkFBQUFDZ0cwQ1dJQUJFUkdURlFBR21ONWNtd0FTR2R5WldzQXVHeGhkRzRBNWdBRUFBQUFBUC8vQUJJQUFBQUlBQkFBR0FBZ0FDZ0FNQUE0QUVZQVRnQldBRjRBWmdCdUFIWUFmZ0NHQUk0QUVBQUNUVXRFSUFBOFUxSkNJQUJFQUFELy93QVRBQUVBQ1FBUkFCa0FJUUFwQURFQU9RQkFBRWNBVHdCWEFGOEFad0J2QUhjQWZ3Q0hBSThBQVAvL0FBRUFRUUFBLy84QUV3QUNBQW9BRWdBYUFDSUFLZ0F5QURvQVFnQklBRkFBV0FCZ0FHZ0FjQUI0QUlBQWlBQ1FBQVFBQUFBQS8vOEFFZ0FEQUFzQUV3QWJBQ01BS3dBekFEc0FTUUJSQUZrQVlRQnBBSEVBZVFDQkFJa0FrUUFXQUFOQldrVWdBRUJEVWxRZ0FHeFVVa3NnQUpnQUFQLy9BQklBQkFBTUFCUUFIQUFrQUN3QU5BQThBRW9BVWdCYUFHSUFhZ0J5QUhvQWdnQ0tBSklBQVAvL0FCTUFCUUFOQUJVQUhRQWxBQzBBTlFBOUFFTUFTd0JUQUZzQVl3QnJBSE1BZXdDREFJc0Frd0FBLy84QUV3QUdBQTRBRmdBZUFDWUFMZ0EyQUQ0QVJBQk1BRlFBWEFCa0FHd0FkQUI4QUlRQWpBQ1VBQUQvL3dBVEFBY0FEd0FYQUI4QUp3QXZBRGNBUHdCRkFFMEFWUUJkQUdVQWJRQjFBSDBBaFFDTkFKVUFsbUZoYkhRRGhtRmhiSFFEam1GaGJIUURsbUZoYkhRRG5tRmhiSFFEcG1GaGJIUURybUZoYkhRRHRtRmhiSFFEdm1NeWMyTUR4bU15YzJNRDBHTXljMk1EMm1NeWMyTUQ1R015YzJNRDdtTXljMk1EK0dNeWMyTUVBbU15YzJNRURHTmhjMlVFRm1OaGMyVUVIR05oYzJVRUltTmhjMlVFS0dOaGMyVUVMbU5oYzJVRU5HTmhjMlVFT21OaGMyVUVRR05qYlhBRVJtTmpiWEFFVG1OamJYQUVWbU5qYlhBRVhtTmpiWEFFWm1OamJYQUVibU5qYlhBRWRtTmpiWEFFZm1SdWIyMEVobVJ1YjIwRWpHUnViMjBFa21SdWIyMEVtR1J1YjIwRW5tUnViMjBFcEdSdWIyMEVxbVJ1YjIwRXNHWnlZV01FdG1aeVlXTUV3R1p5WVdNRXltWnlZV01FMUdaeVlXTUUzbVp5WVdNRTZHWnlZV01FOG1aeVlXTUUvR3hwWjJFRkJteHBaMkVGREd4cFoyRUZFbXhwWjJFRkdHeHBaMkVGSG14cFoyRUZKR3hwWjJFRktteHBaMkVGTUd4dWRXMEZObXh1ZFcwRlBHeHVkVzBGUW14dWRXMEZTR3h1ZFcwRlRteHVkVzBGVkd4dWRXMEZXbXh1ZFcwRllHeHZZMndGWm14dlkyd0ZiR3h2WTJ3RmRHeHZZMndGZkd4dlkyd0ZnbXh2WTJ3RmlHNTFiWElGam01MWJYSUZsRzUxYlhJRm1tNTFiWElGb0c1MWJYSUZwbTUxYlhJRnJHNTFiWElGc201MWJYSUZ1Rzl1ZFcwRnZtOXVkVzBGeEc5dWRXMEZ5bTl1ZFcwRjBHOXVkVzBGMW05dWRXMEYzRzl1ZFcwRjRtOXVkVzBGNkc5eVpHNEY3bTl5Wkc0RjlHOXlaRzRGK205eVpHNEdBRzl5Wkc0R0JtOXlaRzRHREc5eVpHNEdFbTl5Wkc0R0dIQnVkVzBHSG5CdWRXMEdKSEJ1ZFcwR0tuQnVkVzBHTUhCdWRXMEdObkJ1ZFcwR1BIQnVkVzBHUW5CdWRXMEdTSE5wYm1ZR1RuTnBibVlHVkhOcGJtWUdXbk5wYm1ZR1lITnBibVlHWm5OcGJtWUdiSE5wYm1ZR2NuTnBibVlHZUhOdFkzQUdmbk50WTNBR2huTnRZM0FHam5OdFkzQUdsbk50WTNBR25uTnRZM0FHcG5OdFkzQUdybk50WTNBR3RuTjFZbk1Hdm5OMVluTUd4SE4xWW5NR3luTjFZbk1HMEhOMVluTUcxbk4xWW5NRzNITjFZbk1HNG5OMVluTUc2SE4xY0hNRzduTjFjSE1HK25OMWNITUhCbk4xY0hNSEVuTjFjSE1ISG5OMWNITUhLbk4xY0hNSE5uTjFjSE1IUW5SdWRXMEhUblJ1ZFcwSFZIUnVkVzBIV25SdWRXMEhZSFJ1ZFcwSFpuUnVkVzBIYkhSdWRXMEhjblJ1ZFcwSGVIcGxjbThIZm5wbGNtOEhoSHBsY204SGlucGxjbThIa0hwbGNtOEhsbnBsY204SG5IcGxjbThIb25wbGNtOEhxQUFBQUFJQUFBQUJBQUFBQWdBQUFBRUFBQUFDQUFBQUFRQUFBQUlBQUFBQkFBQUFBZ0FBQUFFQUFBQUNBQUFBQVFBQUFBSUFBQUFCQUFBQUFnQUFBQUVBQUFBREFBZ0FDUUFLQUFBQUF3QUlBQWtBQ2dBQUFBTUFDQUFKQUFvQUFBQURBQWdBQ1FBS0FBQUFBd0FJQUFrQUNnQUFBQU1BQ0FBSkFBb0FBQUFEQUFnQUNRQUtBQUFBQXdBSUFBa0FDZ0FBQUFFQUJ3QUFBQUVBQndBQUFBRUFCd0FBQUFFQUJ3QUFBQUVBQndBQUFBRUFCd0FBQUFFQUJ3QUFBQUVBQndBQUFBSUFCUUFHQUFBQUFnQUZBQVlBQUFBQ0FBVUFCZ0FBQUFJQUJRQUdBQUFBQWdBRkFBWUFBQUFDQUFVQUJnQUFBQUlBQlFBR0FBQUFBZ0FGQUFZQUFBQUJBQTBBQUFBQkFBMEFBQUFCQUEwQUFBQUJBQTBBQUFBQkFBMEFBQUFCQUEwQUFBQUJBQTBBQUFBQkFBMEFBQUFEQUF3QURnQVBBQUFBQXdBTUFBNEFEd0FBQUFNQURBQU9BQThBQUFBREFBd0FEZ0FQQUFBQUF3QU1BQTRBRHdBQUFBTUFEQUFPQUE4QUFBQURBQXdBRGdBUEFBQUFBd0FNQUE0QUR3QUFBQUVBR2dBQUFBRUFHZ0FBQUFFQUdnQUFBQUVBR2dBQUFBRUFHZ0FBQUFFQUdnQUFBQUVBR2dBQUFBRUFHZ0FBQUFFQUdBQUFBQUVBR0FBQUFBRUFHQUFBQUFFQUdBQUFBQUVBR0FBQUFBRUFHQUFBQUFFQUdBQUFBQUVBR0FBQUFBRUFBd0FBQUFJQUF3QUVBQUFBQWdBREFBUUFBQUFCQUFJQUFBQUJBQUlBQUFBQkFBSUFBQUFCQUF3QUFBQUJBQXdBQUFBQkFBd0FBQUFCQUF3QUFBQUJBQXdBQUFBQkFBd0FBQUFCQUF3QUFBQUJBQXdBQUFBQkFCWUFBQUFCQUJZQUFBQUJBQllBQUFBQkFCWUFBQUFCQUJZQUFBQUJBQllBQUFBQkFCWUFBQUFCQUJZQUFBQUJBQkFBQUFBQkFCQUFBQUFCQUJBQUFBQUJBQkFBQUFBQkFCQUFBQUFCQUJBQUFBQUJBQkFBQUFBQkFCQUFBQUFCQUJjQUFBQUJBQmNBQUFBQkFCY0FBQUFCQUJjQUFBQUJBQmNBQUFBQkFCY0FBQUFCQUJjQUFBQUJBQmNBQUFBQkFCUUFBQUFCQUJRQUFBQUJBQlFBQUFBQkFCUUFBQUFCQUJRQUFBQUJBQlFBQUFBQkFCUUFBQUFCQUJRQUFBQUNBQWtBQ3dBQUFBSUFDUUFMQUFBQUFnQUpBQXNBQUFBQ0FBa0FDd0FBQUFJQUNRQUxBQUFBQWdBSkFBc0FBQUFDQUFrQUN3QUFBQUlBQ1FBTEFBQUFBUUFVQUFBQUFRQVVBQUFBQVFBVUFBQUFBUUFVQUFBQUFRQVVBQUFBQVFBVUFBQUFBUUFVQUFBQUFRQVVBQUFBQkFBUUFCRUFFZ0FUQUFBQUJBQVFBQkVBRWdBVEFBQUFCQUFRQUJFQUVnQVRBQUFBQkFBUUFCRUFFZ0FUQUFBQUJBQVFBQkVBRWdBVEFBQUFCQUFRQUJFQUVnQVRBQUFBQkFBUUFCRUFFZ0FUQUFBQUJBQVFBQkVBRWdBVEFBQUFBUUFWQUFBQUFRQVZBQUFBQVFBVkFBQUFBUUFWQUFBQUFRQVZBQUFBQVFBVkFBQUFBUUFWQUFBQUFRQVZBQUFBQVFBWkFBQUFBUUFaQUFBQUFRQVpBQUFBQVFBWkFBQUFBUUFaQUFBQUFRQVpBQUFBQVFBWkFBQUFBUUFaQUJ3QU9nQkNBRW9BVWdCYUFHSUFhZ0IwQUh3QWhBQ01BSlFBbkFDa0FLd0F0QURBQU1nQTBBRFlBT0FBNkFEd0FQZ0JBQUVJQVJBQkdBQUJBQUFBQVFsWUFBTUFBQUFCRGlRQUFRQUFBQUVBMWdBQkFBQUFBUURVQUFFQUFBQUJBTklBQkFBQUFBRUEwQUFHQUFBQUFnRnlBWVFBQVFBQUFBRUJqQUFCQUFBQUFRSEVBQUVBQUFBQkJDNEFBUUFBQUFFRUxBQUJBQUFBQVFSU0FBRUFBQUFCQnRJQUFRQUFBQUVHOEFBQkFBQUFBUWNPQUFZQUFBQURCd3dISGdjd0FBRUFBQUFCQnpnQUFRQUFBQUVIYmdBQkFBQUFBUWRzQUFFQUFBQUJCNG9BQVFBQUFBRUhrQUFCQUFBQUFRZXVBQUVBQUFBQkI5UUFBUUFBQUFFSCtnQUJBQUFBQVFnZ0FBRUFBQUFCQ0VZQUJBQUFBQUVJUkFBQkFBQUFBUkIyQUFFUXJnRUVBQUVRcmdFYkFBRVFzQUJLQUFFUXNBQU5BQ0FBS2dBMEFENEFTQUJTQUZ3QVpnQndBSUlBakFDV0FLQUFBUUFFQUVzQUFnTXNBQUVBQkFCZEFBSURMQUFCQUFRQWJRQUNBeG9BQVFBRUFIZ0FBZ01zQUFFQUJBRERBQUlETEFBQkFBUUErd0FDQXl3QUFRQUVBUUlBQWdNb0FBRUFCQUVOQUFJRExBQUNBQVlBREFFZEFBSURHZ0VaQUFJREt3QUJBQVFCSndBQ0F5d0FBUUFFQVRNQUFnTW9BQUVBQkFGc0FBSURLQUFCQUFRQmVRQUNBeXdBQXdBQkVDUUFBUkJlQUFBQUFRQUFBQnNBQXdBQkVHWUFBUkJNQUFBQUFRQUFBQnNBQWhCdUFCMEJ6d0hRQWRFQjBnSFRBZFFCMVFIV0FkY0IyQUhnQWVNQ0FBSUJBZ0lDQXdJRUFnVUNCZ0lIQWdnQ0NRSUtBZ3NDREFJTkFnNENIZ09aQUFJUWFBRTJCRVlFUndSSUJFa0VTZ1JMQkV3RVRRUk9CRThFVUFSUkJGSUVVd1JVQkZVRVZnUlhCRmdFV1FSYUJGc0VYQVJkQkY0RVh3UmdCR0VFWWdSakJHUUVaUVJtQkdjRWFBUnBCR29FYXdSc0JHMEViZ1J2QkhBRWNRUnlCSE1FZEFSMUJIWUVkd1I0QkhrRWVnUjdCSHdFZlFSK0JIOEVnQVNCQklJRWd3U0VCSVVFaGdTSEJJZ0VpUVNLQklzRWpBU05CSTRFandTUUJKRUVrZ1NUQkpRRWxRU1hCSmdFbVFTYUJKc0VuQVNkQko0RW53U2dCS0VFb2dTakJLUUVwUVNtQktjRXFBU3BCS29FcXdTc0JLMEVyZ1N2QkxBRXNRU3lCTE1FdEFTMkJMVUV0d1M0QkxrRXVnUzdCTHdFdlFTK0JMOEV3QVRCQk1JRXd3VEVCTVVFeGdUSEJNZ0V5UVRLQk1zRXpBVE5CTTRFendUUUJORUUwZ1RUQk5RRTFRVFdCTmNFMkFUWkJOb0Uyd1RjQk4wRTNnVGZCT0FFbGdUaEJPSUU0d1RsQk9ZRTV3VG9CT2tFNmdUckJPd0U3UVR1Qk84RThBVHhCUElFOHdUMEJQVUU5Z1QzQlBnRStRVDZCUHNFL0FUOUJQNEUvd1VBQlFFRkFnVURCUVFGQlFVR0JRY0ZDQVVKQlFvRkN3VU1CUTBGRGdVUEJSQUZFUVVTQlJNRkZBVVZCUllGRndVWUJSa0ZHZ1ViQlJ3RkhRVWVCUjhGSUFVaEJTSUZJd1VrQlNVRkpnVW5CU2dGRVFVVkJSY0ZHUVVwQlI4RkpBVXFCU2dGVEFWTkJVNEZUd1ZRQlZFRlVnVlRCVlFGVlFWV0JWY0ZXQVZaQlZvRld3VmNCVjBGWGdWZkJXQUZZUVZpQldNRlpBVmxCV1lGWndWb0JXa0ZhZ1ZyQld3RmJRVnVCVzhGY0FWeEJYSUZjd1YwQlhVRmRnVjNCWGdGZVFWNkJYc0ZmQVY5Qlg0RmZ3V0FCWUVGZ2dXREJZUUZoUVdHQlljRmlBV0pCWW9GaXdXTUJZMEZqZ1dQQlpBRmtRV1NCWk1GbEFXVkJaWUFBUTRTQTRvQUFnNFdBQlFGTGdVNUJUb0ZPd1U4QlQwRlBnVS9CVUFGUVFWQ0JVTUZSQVZGQlVZRlJ3VklCVWtGU2dWTEFBSU9GQUZCQkVZRVJ3UklCRWtFU2dSTEJFd0VUUVJPQkU4RVVBUlJCRklFVXdSVUJGVUVWZ1JYQkZnRVdRUmFCRnNFWEFSZEJGNEVYd1JnQkdFRVlnUmpCR1FFWlFSbUJHY0VhQVJwQkdvRWF3UnNCRzBFYmdSdkJIQUVjUVJ5QkhNRWRBUjFCSFlFZHdSNEJIa0VlZ1I3Qkh3RWZRUitCSDhFZ0FTQkJJSUVnd1NFQklVRWhnU0hCSWdFaVFTS0JJc0VqQVNOQkk0RWp3U1FCSkVFa2dTVEJKUUVsUVNYQkpnRW1RU2FCSnNFbkFTZEJKNEVud1NnQktFRW93U2lCS1FFcFFTbUJLY0VUZ1JQQktnRXFRUlFCS29FcXdTc0JLMEVyZ1N2QkxBRXNRU3lCTE1FdEFTMkJMVUV0d1M0QkxrRXVnUzdCTHdFdlFTK0JMOEV3QVRCQk1JRXd3VEVCTVVFeGdUSEJNZ0V5UVRLQk1zRXpBVE5CTTRFendUUUJORUUwZ1RUQk5RRTFnVFZCTmNFMkFUWkJOb0Uyd1RjQk4wRTNnVGZCT0FFV0FVckJPRUU0Z1RqQk9RRTVRVG1CT2NFNkFUcEJPb0U2d1RzQk8wRTdnVHZCUEFFOFFUeUJQTUU5QVQxQlBZRTl3VDRCUGtFK2dUN0JQd0UvUVQrQlA4RkFBVUJCUUlGQXdVRUJRVUZCZ1VIQlFnRkNRVUtCUXNGREFVTkJRNEZEd1VRQlN3RkxRVVJCUklGRXdVVUJSVUZGZ1VYQlJnRkdRVWFCUnNGSEFVZEJSNEZId1VnQlNFRklnVWpCU1FGSlFVbUJTY0ZLQVVpQlJFRkZRVVhCUmtGS1FVZkJTUUZLZ1VvQlNrRktnVk1CVTBGVGdWUEJWQUZVUVZTQlZNRlZBVlZCVllGVndWWUJWa0ZXZ1ZiQlZ3RlhRVmVCVjhGWUFWaEJXSUZZd1ZrQldVRlpnVm5CV2dGYVFWcUJXc0ZiQVZ0Qlc0RmJ3VndCWEVGY2dWekJYUUZkUVYyQlhjRmVBVjVCWG9GZXdWOEJYMEZmZ1YvQllBRmdRV0NCWU1GaEFXRkJZWUZod1dJQllrRmlnV0xCWTBGakFXT0JZOEZrQVdSQlpJRmt3V1VCWlVGbGdWTkFBSUx0QUFRQWxRQ1ZRSldBbGNDV0FKWkFsb0NXd0pjQWwwQ1lnSmpBbDRDWHdKZ0FtRUFBZ3VPQUJBQ1JBSkZBa1lDUndKSUFra0NTZ0pMQWt3Q1RRSlNBbE1DVGdKUEFsQUNVUUFCQzM0QXB3QURBQUVMZmdBQkM0Z0FBQUFCQUFBQUd3QURBQUVMZmdBQkM0NEFBQUFCQUFBQUd3QURBQUlMa0F1R0FBRUxmQUFBQUFFQUFBQWJBQUlMaEFBY0FvQUNnUUtDQW9NQ2hBS0ZBb1lDaHdLSUFva0NpZ0tMQW93Q2pRS09BbzhDa0FLUkFwSUNrd0tVQXBVQ2xnS1hBcGdDbVFLYUFwc0FBUXRXQW1RQUFncm1BQkFDSUFJaEFpSUNJd0lrQWlVQ0pnSW5BaWdDS1FJdUFpOENLZ0lyQWl3Q0xRQUNDelFBQkFJd0FqRUNNZ0l6QUFJS3NnQVFBalFDTlFJMkFqY0NPQUk1QWpvQ093SThBajBDUWdKREFqNENQd0pBQWtFQUFnc01BQlFCcFFHbUFhY0JxQUdwQWFvQnF3R3NBYTBCcmdHN0Fid0J2UUcrQWI4QndBSEJBY0lCd3dIRUFBSUs3Z0FVQWJzQnZBRzlBYjRCdndIQUFjRUJ3Z0hEQWNRQnhRSEdBY2NCeUFISkFjb0J5d0hNQWMwQnpnQUNDdEFBRkFHd0FiRUJzZ0d6QWJRQnRRRzJBYmNCdUFHNUFjVUJ4Z0hIQWNnQnlRSEtBY3NCekFITkFjNEFBZ3F5QUJRQnBRR21BYWNCcUFHcEFhb0Jxd0dzQWEwQnJnR3dBYkVCc2dHekFiUUJ0UUcyQWJjQnVBRzVBQUVLamdBS0FBRUtrQUFCQUFnQUJnQU9BQllBSGdBa0FDb0FNQUdpQUFNQUlRQWtBYU1BQXdBaEFDY0JvUUFDQUNFQm5nQUNBQ1FCbndBQ0FDY0JvQUFDQUM4QUFncFlBbWNFWUFSaEJHSUVZd1JrQkdVRVpnUm5CR2dFYVFScUJHc0ViQVJ0Qkc0RWJ3UndCSEVFY2dSekJIUUVkUVIyQkhjRWVBUjVCSG9FZXdSOEJIMEVmZ1IvQklBRWdRU0NCSU1FaEFTRkJJWUVod1NJQklrRWlnU0xCSXdFalFTT0JJOEVrQVNSQkpJRWt3U1VCSlVFbHdTWUJKa0VtZ1NiQkp3RW5RU2VCSjhFb0FTaEJLSUVvd1NrQktVRXBnU25CS2dFcVFTcUJLc0VyQVN0Qks0RXJ3U3dCTEVFc2dTekJMUUV0Z1MxQkxjRXVBUzVCTG9FdXdTOEJMMEV2Z1MvQk1BRXdRVENCTU1FeEFURkJNWUV4d1RJQk1rRXlnVExCTXdFelFUT0JNOEUwQVRSQk5JRTB3VFVCTlVFMWdUWEJOZ0UyUVRhQk5zRTNBVGRCTjRFM3dUZ0JKWUU0UVRpQk9NRTVRVG1CT2NFNkFUcEJPb0U2d1RzQk8wRTdnVHZCUEFFOFFUeUJQTUU5QVQxQlBZRTl3VDRCUGtFK2dUN0JQd0UvUVQrQlA4RkFBVUJCUUlGQXdVRUJRVUZCZ1VIQlFnRkNRVUtCUXNGREFVTkJRNEZEd1VRQkdBRVlRUmlCR01FWkFSbEJHWUVad1JvQkdrRWFnUnJCR3dFYlFSdUJHOEVjQVJ4QkhJRWN3UjBCSFVFZGdSM0JIZ0VlUVI2QkhzRWZBUjlCSDRFZndTQ0JJTUVoQVNGQklZRWh3U0lCSWtFaWdTTEJJd0VqUVNPQkk4RWtBU1JCSklFa3dTVUJKVUVsd1NZQkprRW1nU2JCSndFblFTZUJKOEVvQVNoQktNRW9nU2tCS1VFcGdTbkJFNEVUd1NvQktrRVVBU3FCS3NFckFTdEJLNEVyd1N3QkxFRXNnU3pCTFFFdGdTMUJMY0V1QVM1QkxvRXV3UzhCTDBFdmdTL0JNQUV3UVRDQk1NRXhBVEZCTVlFeHdUSUJNa0V5Z1RMQk13RXpRVE9CTThFMEFUUkJOSUUwd1RVQk5ZRTFRVFhCTmdFMlFUYUJOc0UzQVRkQk40RTN3VGdCRmdGS3dUaEJPSUU0d1RrQk9VRTVnVG5CT2dFNlFUcUJPc0U3QVR0Qk80RTd3VHdCUEVFOGdUekJQUUU5UVQyQlBjRStBVDVCUG9FK3dUOEJQMEUvZ1QvQlFBRkFRVUNCUU1GQkFVRkJRWUZCd1VJQlFrRkNnVUxCUXdGRFFVT0JROEZFQVVzQlMwRkxnSEdBY2NCeUFISkFjb0J5d0hNQWMwQnpnSEZBY1lCeHdISUFja0J5Z0hMQWN3QnpRSE9BakFGT1FVN0JUMEZQZ1UvQlVBRlFRVkNBZ0FDQVFJQ0FnTUNCUUlJQWg0RU9RUTZCUkVGRWdVVEJSUUZGUVVXQlJjRkdBVVpCUm9GR3dVY0JSMEZIZ1VmQlNBRklRVWlCU01GSkFVbEJTWUZKd1VvQlJFRkZRVVhCUmtGS1FVZkJTUUZLZ1VvQlJFRkVnVVRCUlFGRlFVV0JSY0ZHQVVaQlJvRkd3VWNCUjBGSGdVZkJTQUZJUVVpQlNNRkpBVWxCU1lGSndVb0JTSUZFUVVWQlJjRkdRVXBCUjhGSkFVcUJTZ0ZLUVVxQTVrRlRBVk5CVTRGVHdWUUJWRUZVZ1ZUQlZRRlZRVldCVmNGV0FWWkJWb0ZXd1ZjQlYwRlhnVmZCV0FGWVFWaUJXTUZaQVZsQldZRlp3Vm9CV2tGYWdWckJXd0ZiUVZ1Qlc4RmNBVnhCWElGY3dWMEJYVUZkZ1YzQlhnRmVRVjZCWHNGZkFWOUJYNEZmd1dBQllFRmdnV0RCWVFGaFFXR0JZY0ZpQVdKQllvRml3V01CWTBGamdXUEJaQUZrUVdTQlpNRmxBV1ZCWllGVEFWT0JVOEZVQVZSQlZJRlV3VlVCVlVGVmdWWEJWZ0ZXUVZhQlZzRlhBVmRCVjRGWHdWZ0JXRUZZZ1ZqQldRRlpRVm1CV2NGYUFWcEJXb0Zhd1ZzQlcwRmJnVnZCWEFGY1FWeUJYTUZkQVYxQlhZRmR3VjRCWGtGZWdWN0JYd0ZmUVYrQlg4RmdBV0JCWUlGZ3dXRUJZVUZoZ1dIQllnRmlRV0tCWXNGalFXTUJZNEZqd1dRQlpFRmtnV1RCWlFGbFFXV0JVMEFBUVlBQUU4QXBBQ3FBTEFBdGdDOEFNSUF5QURPQU5RQTJnRGdBT1lBN0FEeUFQZ0EvZ0VFQVFvQkVBRVdBUndCSWdFb0FTNEJOQUU2QVVBQlJnRk1BVklCV0FGZUFXUUJhZ0Z3QVhnQmZnR0VBWW9Ca0FHV0Fad0JvZ0dvQWE0QnRBRzZBY0FCeGdITUFkSUIyQUhlQWVRQjZnSCtBaEFDSWdJMEFrWUNXQUpxQW53Q2pnS2dBcVlDc0FLNkFzQUN4Z0xPQXRZQzNnTHNBdm9EQ0FNV0F4d0RJZ0FDQkVZQ1pnQUNCRWNDWndBQ0JFZ0NhQUFDQkVrQ2FRQUNCRW9DYWdBQ0JFc0Nhd0FDQkV3Q2JBQUNCRTBDYlFBQ0JFNENiZ0FDQkU4Q2J3QUNCRkFDY0FBQ0JGRUNjUUFDQkZJQ2NnQUNCRk1DY3dBQ0JGUUNkQUFDQkZVQ2RRQUNCRllDZGdBQ0JGY0Nkd0FDQkZnQ2VBQUNCRmtDZVFBQ0JGb0NlZ0FDQkZzQ2V3QUNCRndDZkFBQ0JGMENmUUFDQkY0Q2ZnQUNCRjhDZndBQ0JFWUNnQUFDQkVjQ2dRQUNCRWdDZ2dBQ0JFa0Nnd0FDQkVvQ2hBQUNCRXNDaFFBQ0JFd0NoZ0FDQkUwQ2h3QURBU2dFVGdLSUFBSUVUd0tKQUFJRVVBS0tBQUlFVVFLTEFBSUVVZ0tNQUFJRVV3S05BQUlFVkFLT0FBSUVWUUtQQUFJRVZnS1FBQUlFVndLUkFBSUVXQUtTQUFJRVdRS1RBQUlFV2dLVUFBSUVXd0tWQUFJRVhBS1dBQUlFWFFLWEFBSUVYZ0tZQUFJRVh3S1pBQUlFZ0FLYUFBSUVnUUtiQUFrRkx3SlVBa1FDSUFJMEFiQUJ1d0hQQWE4QUNBVXdBbFVDUlFJaEFqVUJzUUc4QWRBQUNBVXhBbFlDUmdJaUFqWUJzZ0c5QWRFQUNBVXlBbGNDUndJakFqY0Jzd0crQWRJQUNBVXpBbGdDU0FJa0FqZ0J0QUcvQWRNQUNBVTBBbGtDU1FJbEFqa0J0UUhBQWRRQUNBVTFBbG9DU2dJbUFqb0J0Z0hCQWRVQUNBVTJBbHNDU3dJbkFqc0J0d0hDQWRZQUNBVTNBbHdDVEFJb0Fqd0J1QUhEQWRjQUNBVTRBbDBDVFFJcEFqMEJ1UUhFQWRnQUFnSEZBYm9BQkFKaUFsSUNMZ0pDQUFRQ1l3SlRBaThDUXdBQ0JUb0I0QUFDQlR3QjR3QURCVU1DTVFJRUFBTUZSQUl5QWdZQUF3VkZBak1DQndBR0JVWUNYZ0pPQWlvQ1BnSUpBQVlGUndKZkFrOENLd0kvQWdvQUJnVklBbUFDVUFJc0FrQUNDd0FHQlVrQ1lRSlJBaTBDUVFJTUFBSUZTZ0lOQUFJRlN3SU9BQUlFTndWTkFBSURIZ0FkQXJrQ1JBSkZBa1lDUndKSUFra0NTZ0pMQWt3Q1RRSk9BazhDVUFKUkFsSUNVd0s2QXhVREZ3TVpBeHNESFFNZkF5RURJd01sQXljREtRQUJBQUVBSkFBQkFBSURIZ01mQUFFQUFRUHRBQUVBRFFBQ0FBWUFDQUFLQUJZQUhBQWZBQ0FBSWdBa0FDY0FMd0F3QUFJQUNRQUNBQnNBQUFBMkFMVUFHZ0MzQU9VQW1nTk5BMjBBeVFPaEErc0E2Z1JHQkpVQk5RU1hCT01CaFFUbEJTb0IwZ1ZNQlpZQ0dBQUJBQXNERkFNV0F4Z0RHZ01jQXg0RElBTWlBeVFESmdNb0FBRUFDd01WQXhjREdRTWJBeDBESHdNaEF5TURKUU1uQXlrQUFnQUpBYVVCcmdBQUFkOEIzd0FLQWVJQjRnQUxBZXdCOFFBTUFmTUI5QUFTQWZZQjlnQVVBZm9CL3dBVkFoMENIUUFiQTVnRG1BQWNBQUlBQkFBQ0FCc0FBQUEyQU9VQUdnTk5BMjBBeWdPaEErc0E2d0FDQUFFQnBRR3VBQUFBQVFBVUFhUUIzZ0hmQWVFQjRnSGtBZVVCNWdIbkFlZ0I2UUh3QWZNQjlBSDZBZnNCL0FIOUFmNEIvd0FDQUFZQUhBQTFBQUFBNWdGQkFCb0JRd0diQUhZQm5nR2ZBTThEYmdPUkFORUQ3QVEzQVBVQUFnQURBYVVCcmdBQUFka0IyZ0FLQWZvQi9RQU1BQUVBQVFJUEFBSUFBUUpVQWwwQUFBQUJBQUlBQVFLM0FBSUFBZ0pFQWxNQUFBSzBBcllBRUFBQ0FBRUNWQUpqQUFBQUFnQUJBa1FDVFFBQUFBRUFBZ0s1QXJvQUFnQUNBQndBTlFBQUFRWUJCd0FhQUFJQUFRQUNBQnNBQUFBQkFBUUIyd0h3QWZNQjlBQUNBQUlCc0FHNUFBQUJ4UUhPQUFvQUFnQUNBYVVCcmdBQUFiQUJ1UUFLQUFJQUFnR2xBYTRBQUFHN0FjUUFDZ0FDQUFFQnV3SE9BQUFBQVFBQ0FhVUJzQUFCQUFFQUlRQUNBQlFBTmdFRkFBQUJDQUZCQU5BQlF3R2JBUW9CbmdHZkFXTUJwQUdrQVdVQnNRRzVBV1lCdXdIRUFXOEIyd0hiQVhrQjNnSGVBWG9CNFFIaEFYc0I1QUhwQVh3QjdBSHZBWUlCOFFIeEFZWUI5Z0gyQVljQ0hRSWRBWWdESGdNZkFZa0RUUU9SQVlzRG1BT1lBZEFEb1FQc0FkRUQ3Z1EzQWgwQUFnQUxBQUlBTlFBQUFRWUJCd0EwQWFVQnJnQTJBYkFCc0FCQUFka0IyZ0JCQWQ4QjN3QkRBZUlCNGdCRUFmQUI4QUJGQWZNQjlBQkdBZm9CL3dCSUErMEQ3UUJPQUFFQUhRQUJBbFFDVlFKV0FsY0NXQUpaQWxvQ1d3SmNBbDBDWGdKZkFtQUNZUUppQW1NQ3R3TVVBeFlER0FNYUF4d0RIZ01nQXlJREpBTW1BeWdBQVFBQUFBb0F2QUorQUFSRVJreFVBQnBqZVhKc0FDeG5jbVZyQUZKc1lYUnVBR1FBQkFBQUFBRC8vd0FFQUFBQUNBQVFBQmdBQ2dBQlUxSkNJQUFZQUFELy93QUVBQUVBQ1FBUkFCa0FBUC8vQUFRQUFnQUtBQklBR2dBRUFBQUFBUC8vQUFRQUF3QUxBQk1BR3dBV0FBTkJXa1VnQUNSRFVsUWdBREpVVWtzZ0FFQUFBUC8vQUFRQUJBQU1BQlFBSEFBQS8vOEFCQUFGQUEwQUZRQWRBQUQvL3dBRUFBWUFEZ0FXQUI0QUFQLy9BQVFBQndBUEFCY0FId0FnYTJWeWJnRENhMlZ5YmdESWEyVnliZ0RPYTJWeWJnRFVhMlZ5YmdEYWEyVnliZ0RnYTJWeWJnRG1hMlZ5YmdEc2JXRnlhd0R5YldGeWF3RUNiV0Z5YXdFU2JXRnlhd0VpYldGeWF3RXliV0Z5YXdGQ2JXRnlhd0ZTYldGeWF3RmliV3R0YXdGeWJXdHRhd0Y0Yld0dGF3RitiV3R0YXdHRWJXdHRhd0dLYld0dGF3R1FiV3R0YXdHV2JXdHRhd0djYzJsNlpRR2ljMmw2WlFHbWMybDZaUUdxYzJsNlpRR3VjMmw2WlFHeWMybDZaUUcyYzJsNlpRRzZjMmw2WlFHK0FBQUFBUUFIQUFBQUFRQUhBQUFBQVFBSEFBQUFBUUFIQUFBQUFRQUhBQUFBQVFBSEFBQUFBUUFIQUFBQUFRQUhBQUFBQmdBQUFBRUFBZ0FEQUFRQUJRQUFBQVlBQUFBQkFBSUFBd0FFQUFVQUFBQUdBQUFBQVFBQ0FBTUFCQUFGQUFBQUJnQUFBQUVBQWdBREFBUUFCUUFBQUFZQUFBQUJBQUlBQXdBRUFBVUFBQUFHQUFBQUFRQUNBQU1BQkFBRkFBQUFCZ0FBQUFFQUFnQURBQVFBQlFBQUFBWUFBQUFCQUFJQUF3QUVBQVVBQUFBQkFBWUFBQUFCQUFZQUFBQUJBQVlBQUFBQkFBWUFBQUFCQUFZQUFBQUJBQVlBQUFBQkFBWUFBQUFCQUFZQWlBQUFBSVFBQUFDQUFBQUFmQUFBQUhnQUFBQjBBQUFBY0FBQUFHd0FBQUFJQUJJQUdnQWlBQ29BTWdBNkFFSUFTZ0FFQUFBQUFRQmdBQVFBQUFBQkFwNEFCQUFBQUFFRmhnQUVBQUFBQVFYZ0FBUUFBQUFCQ0pZQUJBQUFBQUVJMkFBR0FRQUFBUWxxQUFJQUFBQU1DZ0FnNGk4Q1B1SlBabDdrY1ZDQzdwTVFvcFN5R01Dd0FHUUFBQUFBQUFBQUFBQUJ4NmJINGdBQkFBd0FmZ0FjQUFBQkFnQUFBUUlBQUFFQ0FBQUJBZ0FBQVFJQUFBRUNBQUFCQWdBQUFRSUFBQUVDQUFBQkFnQUFBUUlBQUFFQ0FBQUJBZ0FBQVFJQUFBRUNBQUFCQWdBQUFRSUFBQUVDQUFBQkFnQUFBUUlBQUFFQ0FBQUJBZ0FBQVFJQUFBRUNBQUFCQWdBQUFRSUFBQUVDQUFBQkFnQkhBSllBbkFDaUFLZ0FyZ0MwQUxvQXdBREdBTXdBMGdEWUFONEE1QUNpQU9vQThBRDJBUHdCQWdFSUFRNEJGQUVhQVNBQkpnQ1dBU3dCTWdFNEFUNEFvZ0NpQVVRQkNBRUlBVW9CVUFGV0FRZ0JYQUZpQVdnQmJnRjBBWG9CZEFHQUFZWUJqQUNpQVpJQWxnR1lBSzRCbmdHa0FRZ0FvZ0VnQWFvQnNBRzJBYndCd2dFSUFSb0FvZ0VPQVE0QW9nQUJBQUFCK3dBQkFQVUIrd0FCQUlRQzRnQUJBUklCK3dBQkFZNEM0Z0FCQVJRQit3QUJBU1lDN2dBQkFRTUIrd0FCQUlvQzRnQUJBSmtDd3dBQkFKZ0N3d0FCQUpZQzRnQUJBSkFDNGdBQkFjUUIrd0FCQVRZQit3QUJBVEFCK3dBQkFTMEIrd0FCQVBJQit3QUJBT0lCK3dBQkFLSUNmZ0FCQVJzQit3QUJBUWdCK3dBQkFZZ0Ird0FCQVEwQit3QUJBUThCK3dBQkFPOEIrd0FCQVpFQit3QUJBUWtCK3dBQkFKUUIrd0FCQUpvQjl3QUJBY2NCK3dBQkFROEM0Z0FCQVAwQjl3QUJBU0FCK3dBQkFNZ0MzZ0FCQU1nQ3lRQUJBUjhCK3dBQkFPVUIrd0FCQVJVQit3QUJBSkVCK3dBQkFTa0Ird0FCQVJnQjhRQUJBVzRCK3dBQkFQd0Ird0FCQVA0Qit3QUJBWHNCK3dBQkFVSUIrd0FCQVRnQit3QUJBUUFCK3dBQkFYZ0I4UUFCQU9RQit3QUJBWU1CK3dBQnhpN0daQUFCQUF3QWNnQVpBQUFCS0FBQUFTZ0FBQUVvQUFBQktBQUFBU2dBQUFFb0FBQUJLQUFBQVNnQUFBRW9BQUFCS0FBQUFTZ0FBQUVvQUFBQktBQUFBU2dBQUFFb0FBQUJLQUFBQVNnQUFBRW9BQUFCS0FBQUFTZ0FBQUVvQUFBQktBQUFBU2dBQUFFb0FBQUJLQUJnQU1nQXpnRFVBTm9BNEFEbUFPd0E4Z0Q0QVA0QkJBRUtBUkFCRmdFY0FSWUJJZ0VvQVM0Qk5BRTZBVUFCUmdGTUFWSUF5QUZZQU9BQStBRmVBUllCWkFFMEFXb0E0QURJQU9ZQTRBRndBWFlCZkFFV0FZSUJpQUdPQVpRQm1nR2dBUVFCRmdHbUFhWUJGZ0dzQWF3QnNnRzRBYjRCdUFIRUFjb0IwQUhXQWR3QjFnSGlBZWdCN2dIMEFmb0NBQUlHQWd3Q0VnSVlBaDRDSkFJcUFqQUI5QUkyQWd3Q1BBRytBa0lDU0FKT0FoSUNWQUphQW1BQ1pnSnNBbklCNkFKNEFBRUFBQUt6QUFFQlFnS3pBQUVCTEFLekFBRUJjd0t6QUFFQlNnS3pBQUVCUmdLekFBRUJTd0t6QUFFQmV3S3pBQUVCaWdLekFBRUF1UUt6QUFFQXhRS3pBQUVCWkFLekFBRUF3UUt6QUFFQmF3S3pBQUVCWVFLekFBRUJKUUt6QUFFQk13S3pBQUVCQWdLekFBRUJMZ0t6QUFFQmZRS3pBQUVCWFFLekFBRUI5UUt6QUFFQlJBS3pBQUVCVUFLekFBRUJIQUt6QUFFQ1dnS3pBQUVCWUFLekFBRUNCUUt6QUFFQmZBS3pBQUVCeXdLekFBRUJqZ0t6QUFFQll3S3pBQUVCV3dLekFBRUJoQUt6QUFFQlZRS3pBQUVCeVFLekFBRUJEQUt6QUFFQnBnS3pBQUVCVXdLekFBRUJIQUk4QUFFQldBSThBQUVCTkFJOEFBRUJNQUk4QUFFQlhRSThBQUVCYXdJOEFBRUF0Z0k4QUFFQXZRSThBQUVCU2dJOEFBRUJUZ0k4QUFFQlNBSThBQUVCRkFJOEFBRUJOUUk4QUFFQklBSThBQUVBK1FJOEFBRUJFUUk4QUFFQlh3SThBQUVCUFFJOEFBRUJ2d0k4QUFFQkh3SThBQUVCTFFJOEFBRUEvd0k4QUFFQ0VnSTRBQUVCMmdJOEFBRUJYZ0k4QUFFQmtnSThBQUVCYndJOEFBRUJVQUk4QUFFQmNRSThBQUVCTWdJOEFBRUJyQUl5QUFFQS9BSThBQUVCaEFJOEFBRUJRd0k4QUFFQktnSThBQUhFT01RK0FBRUFEQUFTQUFFQUFBQWFBQWtBR2dBZ0FDWUFMQUF5QURnQVBnQkVBRW9BQVFBQUFBQUFBUUY3QUFBQUFRRHpBQUFBQVFFdUFBQUFBUUVUQUFBQUFRRFhBQUFBQVFEQ0FBQUFBUUZlQUFBQUFRRGlBQUFBQVFFUkFBQUFBY1B5eEFJQUFRQU1BQ1lBQmdBQUFOSUFBQURTQUFBQTBnQUFBTklBQUFEU0FBQUEwZ0JiQUw0QXhBREtBTkFBMWdEY0FPSUE0Z0RvQU80QTlBRDZBUUFCQmdEb0FRd0JFZ0VZQVI0QkpBRXFBTDRCTUFFMkFUd0ErZ0ZDQVVnQlRnRlVBVm9CWUFGbUFXd0JjZ0Y0QVg0QmhBRkNBWW9Ca0FHV0Fad0JvZ0dvQWE0QnRBRzZBY0FCeGdFR0FSNEJ6QUhTQWRnQlFnR29BZDRCNUFIcUFmQUF2Z0gyQWZ3QkRBSUNBZ2dDRGdJVUFob0NJQUltQWl3Q01nSTRBajRDUkFKS0FsQUNWZ0pjQW1JQ2FBSnVBblFDZWdLQUFvWUNqQUp1QXBJQUFRQUEvK29BQVFFNC8rb0FBUUZMLytvQUFRRjYvK29BQVFGTS8rb0FBUUZmLytvQUFRQzQvK29BQVFHSy8rb0FBUUM1LytvQUFRQmYvMXdBQVFGcy8rb0FBUUZHLytvQUFRRjQvK29BQVFGaC8rb0FBUUZrLytvQUFRRDEvK29BQVFFdS8rb0FBUUYyLytvQUFRRmEvK29BQVFIei8rb0FBUUU4LytvQUFRRWIvK29BQVFEMC8rb0FBUUVULytvQUFRRWYvK29BQVFFYy8rb0FBUUNmLytvQUFRRUkvdzRBQVFFNi8rb0FBUUNjLytvQUFRQTIvd1VBQVFFei8rb0FBUUNZLytvQUFRSEwvK29BQVFFNS8rb0FBUUNpL3dVQUFRR3Mvd1VBQVFDay8rb0FBUURhLytvQUFRREMvK29BQVFFcy8rb0FBUUQrLytvQUFRR0UvK29BQVFEOS8rb0FBUUI4L3dJQUFRRHgvK29BQVFGSi8rb0FBUUYzLytvQUFRQ1YvK29BQVFGcC8vSUFBUUQvLytvQUFRRXAvK29BQVFELy93SUFBUURyLytrQUFRQ1AvK29BQVFFUS8rNEFBUUUzLys0QUFRRmQvKzRBQVFFMS8rNEFBUUZGLys0QUFRQzAvKzRBQVFGcy8rNEFBUUZyLys0QUFRQzIvKzRBQVFCbC8zZ0FBUUZQLys0QUFRRXcvKzRBQVFGYS8rNEFBUUZILys0QUFRQzEvKzRBQVFGTC8rNEFBUURrLys0QUFRRVIvKzRBQVFGVy8rNEFBUUU1Lys0QUFRRzcvKzRBQVFFVC8rNEFBUUVaLys0QUFRRC8vKzRBQVFFeC8rNEFBY0hBd2NZQUFRQU1BQklBQVFBQUFCUUFCZ0FVQUJvQUlBQW1BQ3dBTWdBQkFBQUIzZ0FCQWZnQ2tnQUJBa2dDcHdBQkFZa0I0QUFCQWNVQjF3QUJBY3NDR1FBQkFnNENKQUFCd1l6QmtnQUJBQXdBRWdBQkFBQUFLQUFRQUNnQUxnQTBBRG9BUUFCR0FFd0FVZ0JZQUY0QVpBQnFBSEFBZGdCOEFJSUFBUUFBQUFBQUFRSXdBQUFBQVFIaEFBQUFBUURoQUFBQUFRRzhBQUFBQVFIRUFBQUFBUUcvQUFBQUFRRllBQUFBQVFDN0FBQUFBUUZmQUFBQUFRSHVBQUFBQVFDOEFBQUFBUUhzQUFBQUFRRzRBQUFBQVFEWUFBQUFBUUdYQUFBQUFRR2JBQUFBQWI1c3dSd0FBUUFNQUg0QUhBQUFBSG9BQUFCNkFBQUFlZ0FBQUhvQUFBQjZBQUFBZWdBQUFIb0FBQUI2QUFBQWVnQUFBSG9BQUFCNkFBQUFlZ0FBQUhvQUFBQjZBQUFBZWdBQUFIb0FBQUI2QUFBQWVnQUFBSG9BQUFCNkFBQUFlZ0FBQUhvQUFBQjZBQUFBZWdBQUFIb0FBQUI2QUFBQWVnQUFBSG9BQXdBT0FCUUFHZ0FCQUFBQit3QUJBQUFDM2dBQkFBQUN3d0FCQUFBQ3FnQUJ3SWdBQkFBQUFOa0J2QUhHQWdBQ1JnSk1BbElDV0FKZUFvQUNoZ0tNQXVZQy9BTWFBeXdEUmdOc0E0b0RrQU9XQTV3RG9nT29BNjREdEFPNkE4QUR4Z1BNQTlJRDJBUGVBK1FGYWdWd0JYWUZmQVdDQllnRmpnV1VCWm9Gb0FXbUJhd0ZzZ1c0QmI0RnhBWEtCZEFGMWdYY0JlSUY2QVh1QmZRRitnWUFCZ1lHREFZU0JoZ0dIZ1lrQmlvR01BWTJCandHUWdaSUJrNEdaQVo2QnBBR3BnYTRCc29HM0FidUJ3QUhFZ2NrQnpZSGFBZUNCNXdIdmdwRUNuWUtrQXFtQ3VnSy9nc29DMW9MNUF3YURDQU1YZ3h3RElZTW9BemFEUkFORmcwY0RUSU5PQTArRFlnTnpnNG9EbElPYUE2Q0RwZ09xZzdBRHRZTzRBOEdEd3dQT2c5Y0QyWVBjQTkrRDRnUDBnLzRFQ0lSb0JIbUVpUVNYaEtRRXFZU3VCTFNFdGdTL2hNWUV4NFROQk5LRTFBVFZoTmNFMklUYUJOdUUzUVRlaE9BRTZvVHNCTzJFK3dUOGhQNEUvNFVCQlFLRkJRVUdoUkVGRW9VVUJTaUZMUVV1aFRBRk1ZVXpCVFdGTndVNGhUb0ZPNFU5QlQ2RlFBVkJoVU1GU29WTUJVMkZUd1ZRaFZJRlZJVmlCV2VGY1FWemhZUUZoNFdKQll1RmpRV1FoWlFGbG9XWkJaeUZvQVdpaGFRRnBZV29CYXFGclFXdmhiRUZzNFcxQUFDQUJmLzRnTmYvKzBBRGdBWC84NEFHZi9pQUN2LzlnQXovL1lBVFAvT0Faci85Z0d4LyswQnN2L3NBYlAvOWdHMy8vVUJ1Zi8yQWZuLzZnSVAvK3NDRWYvc0FCRUFLLy9ZQURQLzRRQk0vMzRCSlAvL0Fab0FDUUdrLy9RQnN2LzJBYlAvOVFHMC8rQUJ0Zi9yQWJjQUNnSDQvK3dCK2YrSEFnLy93d0lSQUFvQ0hmL3FBaDcvOVFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTVC8vd0FJQUJmLzlnQVovK3dBVFArU0FiVC82d0g1LzNJQ0QvL05BaEVBQ2dJZUFBa0FBUUVrQUFBQUFRRWtBQUFBRmdBQi85a0FLLys2QURQL3VnQk0vMnNBNmYvUUFPci94QUVrQUFBQkpRQWRBYVQvMWdHeC8rd0Jzdi9pQWJQLzZ3RzAvNjhCdGYvaEFiY0FDZ0c1Lyt3QitQL1hBZm4vWHdJUC82WUNFUUFLQWgzL3pBSWUvOWdBQlFEcC85QUE2di8rQVNRQUFBRWxBQ2dCSmdBQkFBY0FLLy9pQVNVQUFRR3ovL1lCdFAvWEFibi83QUg0LzlnQ0h2LzJBQVFBNmYvR0FPci8vZ0VpLyswQkpQL3RBQVlBNmdBQ0FRb0FBZ0VpQUR3QkpBQUJBU1VBVmdGS0FBRUFDUUFYLzdFQnNmLzJBYkwvOWdHei8vVUJ0Ly9yQWNmLzlnSGFBQ1lCM0FBb0FoSC85UUFIQUJmL3VnQXIvK3dBTXdBRkFaci85UUcwLy9VQnQvL3JBY3dBQ1FBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFCaEFCWC8wQUFYLzhjQUdQL0hBQnIveHdDMy85QUF1UC9RQUxuLzBBQzYvOUFBdS8vUUFOUC94d0RVLzhjQTFmL0hBTmIveHdEWC84Y0EyUC9IQU5uL3h3RGEvOGNBMi8vSEFOei94d0RkLzhjQTN2L0hBZVQvdkFIbC83d0I1Z0FBQWVjQUFRSG9BQUFCNlFBQkFoUC94Z0lhLzhZQ0cvLy9BaHovL3dJZy83MENJZis5QWlML3ZRSWovNzBDSlArOUFpWC92UUltLzcwQ0ovKzlBaWovdlFJcC83MENaUC9IQW1YL3h3Sm0vOFlDWi8vR0Ftai94d0pwLzhZQ2F2L0dBbXYveGdKcy84Y0NiZi9HQW03L3hnSncvOFlDY2YvR0FuTC94Z0p6LzhZQ2RQL0hBblgveGdKMi84Y0NkLy9HQW5qL3h3SjUvOUVDZXYvSEFudi8wUUo4LzlFQ2ZmL0dBbjcvMFFKLy84WUNnUC9IQW9IL3hnS0MvOGNDZy8vSEFvVC94d0tGLzhZQ2h2L0hBb2YveGdLSS84WUNpdi9HQW92L3hnS00vOFlDamYvR0FvNy94d0tQLzhjQ2tQL0hBcEgveGdLUy84Y0NrLy9IQXBUL3h3S1YvOUVDbHYvUkFwZi94Z0tZLzhjQ21mL0dBcHIveHdLYi84Y0VQLy8vQkVELy93QUJBU1FBQUFBQkFTUUFBQUFCQVNULy93QUJBU1QvL3dBQkFTVC8vd0FCQVNULy93QUJBU1QvL3dBQkFTVC8vd0FCQVNULy93QUJBU1QvL3dBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFCQVNRQUFBQUJBU1FBQUFBQkFTUUFBQUFGQU9uLzBBRHEvLzRCSkFBQUFTVUFLQUVtQUFFQUJRRHAvOUFBNnYvK0FTUUFBQUVsQUNnQkpnQUJBQVVBNmYvUUFPci8vZ0VrQUFBQkpRQW9BU1lBQVFBRkFPbi8wQURxLy80QkpBQUFBU1VBS0FFbUFBRUFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFCQURwLzhZQTZ2LytBU0wvN1FFay8rMEFEQUFYLzhRQUdmL0VBRXovc0FHYS8rd0JzZi90QWJMLzlRR3ovK3dCdC8vaEFmbi9jd0lQLytFQ0VmL3JBaDRBRXdBR0FERUFBUUF5QUFFQmlRQUJBWW9BQVFHTEFBRUJqQUFCQUFZQTZnQUNBUW9BQWdFaUFEd0JKQUFCQVNVQVZnRktBQUVBQ0FBWC85Z0FLLy9qQWJILzlnSEcvL1lCeVAvMUFjei82d0hPLy9ZQitmL3NBS0VBQXdBQ0FBVUFBZ0FHQUFJQUJ3QUNBQWtBQWdBS0FBSUFDd0FCQUF3QUFnQU5BQUlBRGdBQ0FBOEFBZ0FSQUFJQUV3QUNBQlVBQWdBV0FBSUFGd0FEQUJnQUF3QWFBQU1BR3dBQ0FCMEFFUUFqQUJFQUpnQVJBQ2NBRVFCU0FBSUFVd0FDQUZRQUFnQlZBQUlBVmdBQ0FGY0FBZ0JZQUFJQVdRQUNBRm9BQWdCYkFBSUFYQUFDQUYwQUFnQmVBQUlBWHdBQ0FHQUFBZ0JoQUFJQVlnQUNBR01BQWdCa0FBSUFaUUFDQUdZQUFnQnVBQUlBYndBQ0FIQUFBZ0J4QUFJQWNnQUNBSE1BQWdCMEFBSUFkUUFDQUhZQUFnQjNBQUlBZUFBQ0FIa0FBZ0I2QUFJQWV3QUNBSHdBQWdCOUFBRUFmZ0FDQUg4QUFnQ0FBQUlBZ1FBQ0FJSUFBZ0NEQUFJQWhBQUNBSVVBQWdDR0FBSUFod0FDQUlnQUFnQ0pBQUlBaWdBQ0FJc0FBZ0NNQUFJQWpRQUNBSTRBQWdDUEFBSUFrQUFDQUtrQUFnQ3FBQUlBcXdBQ0FLd0FBZ0N0QUFJQXJnQUNBTGNBQWdDNEFBSUF1UUFDQUxvQUFnQzdBQUlBdkFBQ0FMMEFBZ0MrQUFJQXZ3QUNBTUFBQWdEQkFBSUF3Z0FDQU1NQUFnREVBQUlBeFFBQ0FNWUFBZ0RIQUFJQXlBQUNBTWtBQWdES0FBSUF5d0FDQU13QUFnRE5BQUlBemdBQ0FNOEFBZ0RRQUFJQTBRQUNBTklBQWdEVEFBTUExQUFEQU5VQUF3RFdBQU1BMXdBREFOZ0FBd0RaQUFNQTJnQURBTnNBQXdEY0FBTUEzUUFEQU40QUF3RGZBQUlBNEFBQ0FPRUFBZ0RpQUFJQTR3QUNBT1FBQWdFZUFCRUJId0FSQVNBQUVRRWhBQkVCTUFBUkFUSUFFUUV6QUJFQk5BQVJBVFVBRVFFMkFCRUJOd0FSQVRnQUVRRTVBQkVCNUFBZkFlVUFId0htQUJVQjV3QUNBZWdBRlFIcEFBSUIrd0FmQWYwQUh3SC9BQjhDQ2dBZkFnd0FId0lPQUI4Q0VRQXBBaHNBTVFJY0FERUVQd0F4QkVBQU1RQU1BQmYvMkFBWi8rRUFLLy8zQUV6LzJBR2EvKzBCc2YvMkFiTC83QUd6Ly9ZQnlQLzJBY24vN0FINS83b0NELy9oQUFZQTZnQUNBUW9BQWdFaUFEd0JKQUFCQVNVQVZnRktBQUVBQlFBWC83b0J0UC9qQWJYLzlnRzMvK3dEWC8vRUFCQUFGLy9ZQUN2LzdBRzAvK3dCdGYvMkFiZi83QUc1Lyt3QitQL2pBcHoveGdLZS8rMENuLy9zQXFILzlnS3AvL1lDci8vUUExLy83QU9ELytJRDAvL2lBQVVBRi8vckFDdi83QUcwLyt3QitQL3RBMkgvN0FBS0FCZi80UUFyLy9ZQVRQLzFBYVFBRkFHMEFBb0IrZi9qQWgwQUV3S2MvK3dEVWdBS0EyRUFFd0FNQUJmLzlnQXIvL1lBVFAvMUFhUUFDZ0cxLy9ZQnQvLzFBYm4vN0FINS8rSUNELy9zQXA3LzlnS2kvK01EZy8vMkFDSUFLLy9pQURQLzdBQk0vNjhCcFAvZ0FiTC82d0d6LytzQnRQL01BYlgvMXdHNS8rd0IrUC9pQWZuL2ZnSVAvN29DRVFBVEFoMy8xd0lmLyt3Q252L3NBcC8vNGdLZy8rd0NvUUFMQXFML3NBS3AvK0lDenYvWUFzLy82d0xRLyt3RFlmL3JBMlQvNndOKy84MERnUC9zQTRQLzlRUEEvK3NENVArd0EvRC96UVFMLzljRUVmL2hBQTBBRi8vWUFCbi80Z0FyLy9ZQVRQL0RBYlgvNGdHMy8rd0IrZitkQWcvL3V3S2UvL1lDb3YvT0EyTC80Z05qLyt3RDhQL3NBQUVCK2YvaUFBOEFLLy9zQVpyLzdBSEcvKzBCeC8vMkFjei80Z0hPLyt3QitQL1BBaEgvNGdLYy84WUNuLy9zQXFILzlnS3AvKzBDci8vWkE0UC83QVFVLy9ZQUJBQXIvL1lCK1Avc0FoSC83QUt2Lyt3QUJRQXIvL1lCbXYvMkFmbi85Z0lSLyt3Q3IvLzJBQVlCcEFBVEFja0FDZ0lQQUJRQ0VmL2lBaDBBRXdLYy8rd0FEZ0hILy9VQnlQLzBBY24vMWdISy8rb0IrZittQWcvLzJBS2NBQlFDb3YvWEFzNy83UUxQLyswQzBQL3RBMzcvOVFQdy8rc0VDLy8yQUEwQUsvLzJBWnIvOWdIRy8rd0J5UC9zQWNuLzdBSEsvK3dCelAvMUFjNy83UUg1LzhVQ0QvL3RBaEgvN0FLYy8rMENvdi9zQUFFQUYvL05BQUVDRC8rd0FBVUFGLy9FQUJuLzdBQXIvL1lBTS8vMkFFei80QUFCQkJNQUtBQUJCQk1BS0FBU0FCZi80UUFaLzlnQnNmL1pBYkwveGdHei84OEJ0UC8yQWJYLzR3RzMvN3NCdWYvdEFjYi85Z0hILy9ZQnlQL3NBY24vMlFISy8rTUJ6UC9zQWVML3NRTmYvK3dEWXYvWUFCRUFGLzlwQUN2LzdBR2EvK3dCcy8vckFiVC91Z0cxLyt3QnQvL3NBYm4vNndIRi8rSUJ6UC90QWM3L3p3TmYvNjREWS8rZ0E0UC94Z1BHLyt3RUVmL3NCQlFBQkFBV0FCY0FDZ0FyLyt3QU0vLzFBRXovdVFHYUFBb0JwUC85QWJUL3pnRzNBQk1CdWYvMkFjWC80Z0hHLyt3QngvL3FBY2ovNFFISi82WUJ5di9xQWM3LzRnSGYvOWdCNHYrSUFnLy9yZ0lkLy8wQ0gvL3NCQkgvNndBS0FCZi9uQUcwLytJQnRmL3NBYmYvMkFHNS8rd0J6UC8yQWhIL3JnTmYvOE1EZ3dBZEJCUUFYQUFGQUN2LzlnQk0vL3NCdGYvMkFjbi82d0g1LzdBQUJnQVgvL1lBR2YvMUFFei9yd05TQUFrRFh3QUtBMkwvOVFBRkFCZi83UUJNLzljQnNmL3RBYlQvN1FJUC85b0FCQUd4Ly9ZQnQvLzFBYm4vOWdIRy8vWUFCUUd4LytNQnMvLzJBYmYvN1FHNS8rMEJ5di90QUFVQnMvLzJBYlQvNHdHMy8vWUJ1Zi8yQWM3LzdBQUNBYmNBRXdISy8vWUFDUUcwLzgwQnR3QVRBY1gvN0FIRy8rTUJ4Ly9aQWNqLzJRSEovNllCeXYvWEFjNy83QUFCQWN3QUV3QUxBYkwvOWdHei8rd0J0UC9PQWJYLzZ3RzUvK3dCeGYvckFjZi83QUhJLyt3QnlmL3NBY3IvN0FITy8rSUFDQUd4Lyt3QnN2L3RBYmYvNFFHNS8rd0J4Ly9zQWNqLzdBSEsvKzBCelAvWkFBSUJ0UC90QWM3LzdRQUNBYmYvNGdITS8rTUFBd0czLytJQnVmLzJBY3ovN1FBQ0FiVC8yQUhKLzdzQUVnR3gvK3dCc3Yvc0FiUC85Z0czLy9VQnVmLzJBZm4vNmdJUC8rc0NFZi9zQTFMLzlnTmUvL1lEWC8vc0EyTC80Z05qLzg0RGIvLzJBM2ovOWdPQS8rSURnLy8xQTVuLzdBQUpBYm4vOWdINC8rd0NIZ0FLQTEvLzlnTmgvK0lEWS8vc0E0RC8yQU9ELytFRG1QL3NBQW9CdWYvckFmai96Z0llLyt3RFVnQUtBMkgvekFOay8vWURjZi8yQTREL3hBT0QvODBEbVAvREFGOEJzUC8vQWJILzRnR3kvK3NCcy8vckFiVC80UUcxLytzQnR2L3JBYmovOVFHNS8rd0J1di8vQWN2LzZ3SE4vL1VCMmYvaEFkci80UUhiLy9ZQjNQLzJBZDMvNFFIdC8vVUI3Ly8xQWZELy93SHkvLzhCOC8vL0FmVC8vd0gxLy84Qjl2Ly9BZmYvOWdINS84UUIrdi8vQWZ6Ly93SCsvLzhDQWYvMUFnUC85UUlFLy84Q0J2Ly9BZ2YvL3dJSS8vOENDZi8vQWd2Ly93SU4vLzhDRC8vZ0FoNy85Z0kwLzlZQ05mL1dBamIvMWdJMy85WUNPUC9XQWpuLzFnSTYvOVlDTy8vV0Fqei8xZ0k5LzlZQ2J3QWVBb2tBSGdMSy8vWURUZi9YQTA3LzlnTlAvL1lEVVAvWEExSC85Z05ULy9ZRFZQL3NBMVgvOWdOVy8vWURWLy9YQTF2LzdBTmMvL1lEWGYvMkEyTC85Z05wLy9ZRGJ2LzBBM0QvNndOMC8vVURkLy8xQTNyLzZ3TjgvL1FEZi8vMEE0SC82d09DLy9RRGcvL3JBNFQvNndPRi8vUURodi8wQTRmLzlBT0ovL1VEalAvMEE0My82d09PLytzRGovLzBBNUgvNndPVC8vUURsUC8wQTVmLzlnT1kvL1lFUFAvL0JEMy8vd0FSQWJULzZ3SDUvM0lDRC8vTkFoRUFDZ0llQUFrRFVnQUpBMTcvOWdOZkFBb0RZdi9zQTJQLzlnTmsvL1lEY2Yvc0EzUC83QU40Lyt3RGZ2L1lBNE1BRkFPWEFBb0FEd0d4Lyt3QnN2LzFBYlAvN0FHMy8rRUIrZjl6QWcvLzRRSVIvK3NDSGdBVEExTC85UU5lLytBRFgvLzBBMkwvMXdOai8rRURmdi8xQTVuLzJBQU9BYlAvOWdHMC85Y0J1Zi9zQWZqLzJBSWUvL1lEVWdBS0ExLy85Z05oLzh3RGNmLzJBMzcvOWdPQS83QURnLy9OQTVmLzlnT1kvOFFBREFHMC85WUJ0d0FVQWZuL25BTmgvK0VEWlAvWUEyLy85Z045LytFRGZ2K3dBNEQveEFPRC8rRURsLy9zQTVqLzdBQUZBMi8vK3dONC8vWURnUC9ZQTRQLzZ3T1kvK3dBQkFONC8vWURnUC9zQTRQLzdBT1kvK3dBQmdHMC84VURjZi8xQTNYLzlnTjRBQW9EZ1ArNkE1ai8yQUFCQTM3Lyt3QUpBYlQvNGdHMy8rc0J6di8yQTFJQUNnTmYvOWNEWWdBS0EzSC85Z040Ly9ZRGZ2LzJBQVlCelAvOUEzWC85Z040QUFVRGdQL0VBNFAvNEFPWS84NEFBUU9BLy9ZQUJRSEovK0VCekFBS0EzSC85Z040LzlnRGZ2L3NBQVVCdC8vWkEzSC85Z040LytJRGdQLzJBNWNBRkFBQkJCTUFBUUFCQkJNQUV3QUJCQk1BQ3dBQkJCTUFDd0FCQkJNQUV3QUJCQk1BQ3dBQkJCTUFDd0FCQkJNQUN3QUJCQk1BQ3dBS0FiVC82d0g1LzNJQ0QvL05BaEVBQ2dJZUFBa0R3UC9zQThZQUNnUHcvOFFFQy8vMUJCUUFDZ0FCQkJNQUFRQUJCQk1BT2dBTkFiSC83QUd5Ly9VQnMvL3NBYmYvNFFINS8zTUNELy9oQWhILzZ3SWVBQk1Ed1AvMUE4bi85UVBULzljRDVQL1hBL0QvNFFBQkJCTUFFd0FCQkJNQUN3QUJCQk1BQ3dBQkJCTUFDd0FCQkJNQUN3QUNBOUgvNndQVC84TUFBUVFUQUFFQUNnR3gvK3dCc3Yvc0FiZi85UUc1Ly9ZQitmL1hBZy8vN0FQRy8vWUQwZi9zQTlQLzRnUUwvL1lBQVFRVEFBc0FBUVFUQUFzQUZBR3gvK3dCc3YvMUFiUC83QUcwLzlnQnRmLzFBYm4vN0FINS83a0NELy9nQWgzLzlRTzEvL1lEd1Avc0E4Yi85Z1B0Ly9VRDhQL2lBL3ovNndRTC8rRUVFZi9pQkJNQURnUVUvL1lFSFAvckFBUUQwZi9FQTlQL3J3UDgvK3dFSFAvckFBRUVFd0FUQUFFRUV3QUxBQUVFRXdBNkFBRUVFd0FMQUFJRDBmLzBBOVAvMXdBQkJCTUFPZ0FCQkJNQUFRQUJCQk1BQVFBQkJCTUFFd0FCQkJNQUV3QUJCQk1BRXdBQkJCTUFIUUFCQkJNQUhRQUJCQk1BRXdBSEFiZi8yQU8xLytJRDBmKzVBOVAvaHdQdC8rc0QvUC9zQkJ6LzRBQUJCQk1BQ3dBQkJCTUFFd0FCQkJNQUN3QUJCQk1BT2dBQkJCTUFPZ0FDQWJmLzdBUVVBQW9BRFFHeC8vWUJzdi8yQWJQLzlnRzMvK0lCdWYvMkFjYi85Z0hILy9ZQnlQLzFBY3IvOWdITS8vWUIrZi9ZQWhILzZ3UHcvL1lBQlFIa0FBSUI1UUFDQWVZQUFnSG9BQUlFRXdBd0FBa0J0UC8yQWNqLzlnSEovL1lCeXYvMkFjd0FDUUhPLy9ZQitmL2hBZy8vOWdQdy8vWUFBZ1A4Ly9ZRUhQL3JBQkFCcFAvMEFiSC85Z0d6Lyt3QnRQL3FBYlgvOVFHMy8rSUJ1UUFLQWNuLzFnSEsvL1VCK2YvQ0FnLy96Z0lkLy9FRDhQL1hCQXYvNndRUi8vWUVGQUFVQUFNRVcvL1pCRjMvN0FSMi85a0FBUVIyLzRrQUFnUmQvL1lFZHYrbkFBRUVkdjkxQUFNRVcvL09CRjMvemdSMi83b0FBd1VqLy9ZRkp2L3RCU2YvMkFBQ0JTWC82d1VuLy9ZQUFnVVdBQlFGSmYvV0FBTUZGZ0FUQlNNQUZBVW0vL1lBQXdVaS8rb0ZKdi9oQlNmLzZ3QUNCUllBRkFVbC85WUFBUVVsLytzQUFRRWtBQUFBQWdWci8vWUZjUUFVQUFJRmZ2L2hCWS8vNFFBQ0JYei85UVYrLzg0QUFnVjgvL1lGZnYvc0FBRUZhLy8yQUFJRmZQL09CWDcvdVFBQkJYNy80UUFEQldELzdBVjgvOE1GZnYrUkFBS3JYQUFFQUFDdkdxK0VBQklBWkFBQS8rTC82UC94Lyt6Lzl2L3MvK0wvMlAvTy8vYi83UC8yLyt6LzdmLzIvK1AvN1AvMi8rei85di8yLyt6LzR2L2pBRDBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvcy8vTC8rLy8yLy9iLzdQL2kvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvai8rei85di9zLy9iLzl2L3MvK0wvNHdBOUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvaS8rai83UC8yLzg3Lzl2L3MvL2IvN1Avc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83UC95Ly9iLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzdFQUFBQUEvL1lBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRnQUFBQUQvdXYvcy8vYi94QUFBQUFBQUFBQUEvK0lBQ3YvMi8rdi85di9ZLyt6LzZ3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvci8vWC8yUC8yLy9VQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzEvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3MvL1lBQUFBQS8vWUFBUC8yLyt2LzdBQXpBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zLytMLzR2L3JBQUFBQVAvcy8vYi85di8yLy9iLzl2LzIvK3ovOVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vYi85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvdXYvaUFBQUFBQUFBQUFEL3pQKzYvK3dBUmdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQW9BQUFBS0FBQUFBQUFBLy9iLzEvL09BQUFBQUFBQUFBRC96UC9ZLyt2LzdQL08vL1lBQUFBQUFBQUFBQUFBQUFyLzRRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9XLytFQUFBQUEvK0wvOWYvMkFCVC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS81di85Z0FBQUFvQUhnQVUvNGovOVFBQUFCOEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ2dBS0FBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQUFCUUFBQUFBLzhML3NBQUsvL2IvN0FBQUFBQUFDZ0FBQUFBQUFBQUEvOE1BQUFBQUFBQUFBQUFBLytJQUN2LzJBQlFBRkFBVEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3pBQUFBQUFBQVArNkFCUUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQKzQvL1lBQUFBQS8vWUFDZ0FBQUFBQUFBQUEvK0lBQVAvci8rdi82LyttQUFELzRnQUtBQlFBQ3YrSUFBQUFBQUFWQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt6LzlmL3JBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBS0FBQUFIZi9YLzhULzlRQVUvK3YvMS8vVC8rTC80Zi8xQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3hBQUFBQUFBQUFBVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3hBQUEvK3dBQUFBQUFBRC96Z0FBQUFBQUhnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFQLzJBQUQvN0FBQUFBQUFBQUFBLytILzRnQUFBQUQvMS8vMUFBQUFBQUFBQUFELzRmL2kvK3NBQUFBQS8vYi80UUFBQUFBQUFBQUFBQUQvNHYvNi8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt2LzdQL20vK3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvaEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ25XUUFCQUFBcWhxcW5BQVdBRndBQUFBSy8rTC85di9zLzgzLzdBQVUvK3ovNGYvcS8vYi80dit3Lyt3QUVnQVMvL1VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCUC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFvQUFBQUFBQUFBQVAvMUFCTUFBQUFBQUFEL3d2LzIvL1lBQ2dBSy8rei85di9zQUFuLzdBQUsvL2IvN0FBVEFBb0FGQUFLLzV2LzlnQUtBQlFBRkFBVS80Z0FId0FVQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1hBQk1BRS8vMi8vWUFFd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMWdBSy83b0FBQUFBQUFBQUFBQUFBQUFBQ2dBQUFBb0FBQUFBLzdvQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvc1AvaUFBQUFBQUFBQUFEL3pBQkdBQUFBQUFBQUFBQUFBQUFBQUFELzRmL3EvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvZ0FCTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rdi85UC9FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUCtTLyt3QUFQL05BQUQveEFBZS85ai91d0FBLyt3QUFBQUEvK3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85dit2QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1gvK0wvNndBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzV6LzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOElBQVAvcy8rd0FGUC9zQUFELzlnQUFBQW9BQUFBQUFBQUFBUC8xQUJNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUsvNXYvOWdBS0FCUUFGQUFVLzRnQUh3QVVBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQS8rei85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvelFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzY3L3VRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvbS8rdy8rTC91ditsLzgzLzEvL1cvOWNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS82WC91di9zLzhUL3J3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtBQUFBQ2dBQUFBRC91Z0FBQUFBQUFBQUEvOHovNHYvMUFBRC85Zi9zLzhUL3hBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQK3cvK0lBQUFBQUFBQUFBUC9NQUVZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBSy8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMWdBQUFBRC85di9PQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt6LzlnQVUvODRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9NLytJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvN24vNGYvMi85ai94UC9oLy9YLzRmL2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvRC8rc0FBUC9pLzg0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzR2L1kvN3YvdS8rNkFBb0FDdi9ZQUFBQUFQK0lBQUFBQVAvc0FBRC85Z0FBQUFELzl2K3dBQXIveFArNS8rSC8xLy9FLzlqL1lRQUFBQUFBQUFBQUFBRC9hZ0FuQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84NEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvemdBQUFBQUFBQUFBQUFEL3NQL1AvK0wvNi8rbS84VC94UCt4Lzg4QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvNlgvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvci8vYi8yUCt4LytzQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzl2LzJBQUFBQUFBS0FBQUFBQUFBLytMLzR2KzYvODcvOWdBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9pQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC90Ly9iLzJBQUEvOC8vN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQk1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rci80UUFLLyt6LzRmL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8wLytzQUZQLzIvK3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtOdEFBRUFBQ2lCS0trQUJzQVRnQUEvL2IvOXYvaS8vYi82Ly8yQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3d3QUFBQUFBQUFBQUFBRC94UC9ELy9iLzl2LzIvOFQvNHYvRC84UC85di8yLyt2LzR2L3IvKzBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRQLzIvLzMvL2YvMi8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXIvNGdBQUFBQUFBQUFBQUFBQUN2L2lBQUFBQVAvMkFBci85di9zLytJQUFBQUFBQUFBQUFBQUFBRC8vQUFBLy96Ly9BQUFBQUQvOWdBSy8vWC85di8yQUFvQUNRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytML3NmL3JBQUQvMlArd0FBRC93Lyt4QUFBQUFBQkgvOFAvemYrbS83RUFBQUFULytILzZ3QUEvKzBBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUFBQUFBQS8rSUFBQUFkLytzQVhQLzEvK3NBSGYrdy83QUFFLy9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8xLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMkFBQUFBQUFBQUFBQUFELzdQL1lBQUFBQVAvdC8rd0FBUC9oLzlnQUFBQUFBQUFBQVAvWEFBRC80QUFBLytELzRBQUFBQUFBQUFBQS85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBVUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85di8yLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQVAvckFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQ2ovNHYrbkFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBUC8xQUFELzl2LzJBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3JBQUFBQUFBQUFBQUFBQUFBQUFELzl2LzIvN24vNHYvcy8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURRQUFBQUFBQUFBQVAvMS8rTC80di9oLytFQUFQL2lBQUFBQ3YvMkFBQUFBQUFBQUFELzRmLzNBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQ1FBQUFBVUFCUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt6LzdBQUFBQUFBQ2Yvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVcvL1gvN1AvWC84VC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL2IvOXYvMUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOXYvMUFBRC85Z0FBQUR3QUFQLzJBQUFBQUFBQUFBRC85di8yLy9ZQUFQL2FBQUFBQUFBQS8vYi83QUFBLyt6LzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzIvL1lBQUFBQS8vYi85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQVAvMkFBRC85Z0FBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMEFBQUFCOEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vYi85di9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytzQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNGYvMUFBQUFBUC9yQUVjQUFQL2hBQW9BQ2dBQUFBQUFBUC9oLytFQUN2L3RBQk1BRXdBU0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNnQUEvL1lBQUFBSy8vWUFBUC9zQUFBQUFBQUpBQUFBQUFBQUFBQUFBQUFBLyt6LzRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQk1BRWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNHdBQUFCOEFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytzQUFBQUEvK3NBQVAvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvcy84VC8yUUFBLytzQUFBQUFBQUFBQUFBQUFBRC85Zi9zLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQ29BQUFBQUFBQUFBUC9zLyt2LzR2L1kvOWdBQUFBQUFBQUFBUC8xQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC91LzlyLzVQL3IvL1VBQUFBQUFBQUFBQUFBQUFBQUFQL2kvK3ovNHYvc0FBQUFBQUFBQUFELzdQL3VBQUFBQUFBQUFBQUFBUC8xQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUI4QUFQL08vL1lBQUFBQUFBQUFBQUFBQUFBQUFQK2wvK3ovMmYvckFBRC93Ly8xQUFBQUFBQUFBQUQvN0FBQS84UUFBQUFBQUFBQUFBQVVBQjRBQUFBQUFBQUFBQUFBQUJRQUFBQUEvL1lBQUFBQUFBRC8xZ0FULzlnQUFBQWRBQUFBQVArNEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVS8vVUFGQUFVQUFyLzlnQVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDa0FBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8xLyt3QUFBQUFBQUQvOWdBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOWdBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBRC91Z0FBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBRC82Ly8xQUFBQUFBQUFBQlFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOWNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvVy8rSUFBUC84QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9MLzgwQUFBQUFBQUFBQVAvMi8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3p3QUtBQUQvOWdBQUFEUUFBUC9QQUFBQUFQL3JBQUQvNHYvWS84OEFBUCtWQUFBQUFQL3MvKzMvdy8vMi84UC93Ly8yLy9iLzRnQUEvK0wvNHYvaUFBQUFBQUFLQUFvQUFBQUtBQW9BQ2dBQUFBQUFBQUFBLyt3QUFBQUFBQUQvN0FBQS8rUC83Z0FBQUFBQUFQL0UvL1lBQUFBQS8rd0FBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBLy9mLzl2LzMvL2IvOXdBQUFBQUFBQUFBQUFELzl2L3NBRDRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvUEFBQUFBUC9zQUFBQUFQLzJBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1kvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUEvN0gvMmdBQS8rd0FBUC9aQUFBQUFBQUEvKzBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNmV29BQkFBQW1RS1psZ0FaQUU4QUFQL1lBQXIvMkFBSy85Z0FDdi90Ly9ZQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUEvL1lBQVAvMi85Z0FBUC8yLyt6LzJQLzIvK3ovNHYvaS85ai83UC9pLyt6LzdQL2kvOWovOXYvcy8rei80di9pLyszLzl2L2ovOXIvMmYvaS85bi92UC9qLzluL3h2L2EvOUQvOXYvWi85ci94di9HLzlyLzJRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFELzl2L3MvK3dBQVAvMi8rei85Z0FBQUFBQUFBQUEvL2IvOXYvcy8rd0FBUC8yQUFELzJmL2ovL2IvNC8reS8rUC94UC9PLzlqL3ovL3MvN3ovei8rbi83TC92UC9PLy9iLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9iLzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt6LzlRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBLzdzQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvenYvWS83SC85Z0FBQUFBQUFBQVRBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUEvK3ovN0FBQS8rd0FBQUFBQUFEL3cvL2lBQUQvN0FBaEFCSUFBQUFBLyt3QUlQL3MvL1lBQ2dBZkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84VUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvaVFBQUFBQUFBQUFBQUFBQUFQL1hBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQVAvWC8vYi85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytMLzJQL0YvK3ovN1Avcy8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtRQUFBQUFBQUFBQUFCWUFBUC8yQUFBQUFBQUEvL1gvOXYvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQKzQvL2IvdVAvMi83ai85Z0FBLzlnQUFBQUFBQUQvNGYvWS8vYi85Z0FBLzlmLzl2LzFBQUQvOWdBQS8rSC8yUC9yLy9iLzl2L3MvK2NBQVAvMkFBRC96di9FLzgvLzZ3QUFBQUFBRkFBQS85Z0FBQUFBQUFBQUFBQUFBQUFBQVArUkFBQUFBQUFBQUFBQUFBQUFBQUFBS2Yvcy8vYi80Zi9zLzliL3pRQVUvK0wvN1AvaUFCUC80ditiQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFLQUFBQUFQLzEvL1lBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUQvOWYvMkFBQUFBQUFBQUFBQUFBQUFBQUQvN1Avcy8rei80Ly8yQUFBQUZRQVRBQlAvOVFBQUFBRC8yZ0FBQUFBQUV3QUEvNjhBQUFBQUFBQUFBQUFBLy9ZQUFBQXpBQUFBQUFBQUFBQUFBUC9yQUFBQUFBQUFBQUFBQUFBQS83RC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3pnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVArNUFBRC91UUFBLzdrQUFBQUsvK0VBQUFBQUFBRC80Zi9pQUFBQUFBQUEvK0lBQVAvMUFBQUFBQUFBLytILzR2LzFBQUFBQUFBQS8vWUFBQUFBQUFELzF2L0UvK0VBQUFBQUFBQUFBQUFBLytJQUFBQUFBQUFBQUFBQUFBQUFBUDkxQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC85QUFELzYvL3JBQUFBQUFBZS8rei85Zi9zQUI3LzdBQUFBQUQvL2Yrd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytJQUFBQUEvKzMvNGdBQUFBQUFBQUFBLytJQUFBQUFBQUQvN1FBQS8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9mLzdmL3QvK1AvNHdBQS8rTC80di9zLytNQUFQL3QvL2Yvc2YvUC8rei80Z0FBLyswQUFBQUFBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzZ3QUFBQUFBQVAvaUFBRC85Z0FBQUFELzR2LzJBQUQvOWdBQS8rdi80Z0FBLy9ZQUFBQUFBQUFBQUFBQUFBRC85Z0FBLyt6LzJmL1pBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFDZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rMEFBUC90LytQLzdmL3NBQUFBQVAvdEFBRC83Zi90LzdIL3ovL3RBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBRmdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3pRQUEvODBBQVAvTi8zTUFBUC9OLzY3L2t2LzEvODcveHYrNS81TC96dis1LzlqL3J2K2MvNUwvOWYvTy85ai91Zi9HQUFELzRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNGdBQUFBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBQUFJUUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdQL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUsvL2IvemYvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9xLytIL3cvL3kvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK0wvNndBQUFBQUFBQUFBQUFrQUFBQUFBQUFBQVAvV0FBQUFFd0FBQUFBQUFBQUFBQUFBQVAvckFBQUFBUC8yQUJ3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Zi9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOWYvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vYi85di9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzYvLzFBQUQvN1FBQUFBQUFBUC9PLytNQUFBQUFBQUQvNHdBQUFBQUFBQUFBQUFBQUFQL3NBRkVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNVQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rei82di9pQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvT0FBQUFBQUFBQUFBQUFBQUEvK3NBQUFBQUFBQUFBQUFBQUFBQUFBQUtBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVUvL2IvNGdBQ2JpSUFCQUFBa0lLUzlnQVpBRjRBQUFBSy82WC93Ly8yLzluL3p2K20vL3YvMXYvcy8rci96di9OLy9YLzR2L2kvKzcvNHYvRS80Zi9pUCtTLzVMLzdQK2MvNmIvYXY5MC81TC9wUC8xLytyL3NQL00vOFQvNnYvaC8rTC8yZi8yLyt2LzRmLzIvOVlBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVLzYvL3pmL2ovOWovc1AvMC83ci8xZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBUC9zQUFELzlnQUEvK0gvOXYvckFBRC80Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zLyt6LzRnQUEvL1lBQVAvMkFBQUFCUUFBQUFBQUFQL2hBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1VBSWYvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFELzlnQUFBQUQvOXYvMi8rd0FBQUFBQUFBQUt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC82QUFBQUFELzdQL2kvK3ovNi8vaS85Z0FBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQS8vYi83QUFBLy9ZQUFBQUFBQUQvNHYvWUFBRC83QUFBLy9iLzRRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzFBQUQvN0FBQS8vWUFGZi8xLyszLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9JQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBUC9zQUFELzF3QUEvOWNBQVAvc0FBQUFBQUFBQUFBQUFQL3NBQlFBQ3dBVUFBQUFBQUFBQUFBQUFBQUFBQW9BQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDZ0FBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3VBQUFBQW9BQVAvMkFBQUFBUC9XLzhUL3V2L0UvOWYvMkFBQS84Ny8xdi9zQUFELzJBQWRBQlVBSGdBVS8rb0FDZ0FVQUIwQUV3QVVBQndBQVAvMkFBQUFBQUFVQUFELzdQL1kvODBBQUFBQUFBb0FBUC9nQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzgwQUFQL0VBQUFBQUFBbkFBQUFBQUFBLzY3L3VmK3YvK0QvemYrYy8vYi9yLzkxLyt2Ly9mL2gvN0QvMXYvdC82WUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvd2dBQUFCTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL0QvMy8vOVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vRUFBUC9zQUFELzdQL3MvK3NBQUFBQUFBQUFBQUFBLytzQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9YLzdBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUEvK0lBQVAvMi8vYi91Zi9zLzlmL3p2L0QvK3IvNGYvaUFBQUFBUCt3QUFBQUFBQUFBQUQvN0FBQUFBQUFFZ0FBQUFBQUV2LzEvOWdBQVAvaUFBRC80di9PLytJQUFBQUEvK3NBQUFBQS85Y0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVVBQUFBQVAvc0FBQUFBUC9pQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC8yQUFBLy9iLzZBQUsvK0gvMkFBQUFBQUFBQUFBQUFBQUFBQUtBQW9BQ2dBQS8rd0FBUC9qQUFBQUFQLzJBQUFBQUFBQS84Ny85UUFLQUFBQUFBQUEvOWdBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUQvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBa0FBQUFBQUFBQUFBQTBBQUQvOWdBQS84Ny82Ly9pQUFBQUFQL1BBQUQvMlAvaS8vWUFBQUFVLytMLzdRQUEvL1VBQUFBQUFBQUFGUC9pQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRnQUFBQUFBRlAvci8rSUFBUC9pQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8xLyt3QUFBQUFBQUQvOHYvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC96Zi9nQUFBQUFQL2gvOE1BQUFBQUFBQUFBUC8xLy9BQUFBQUFBQUFBQUFBQUFBRC96di9OQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQKzVBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzEvL3FBQUQvNi8vTkFBRC93d0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVArUkFBb0FGQUFBLytJQUZBQWUvN0QveFArNS84Ny94UC9YLytML3NmKzYvODhBQVArN0FCNEFIZ0FBQUFEL3VnQUFBQUFBQ2dBQUFBQUFDdi9ZLytJQUZBQUFBQW9BQVAvWC84VC9yLy9zLyt3QUN2L3MvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvdWdBQS82WUFBUC9ZQUNmLzRmL3UvK0wvWC8rdS81di94UCs2LzJIL3hQOXEvMzcvNHYvVy84ei9uUCttLzluL3BBQUFBQUFBQVAvWUFCUUFBQUFBQUFyLzJQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUCtiQUJRQUh2L3NBQjRBS1Avc0FCNEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS83ci9pZi9zQUFBQUFBQUFBQjhBQUFBQUFBQUFGQUFBQUFBQUFBQUFBQUQvcGdBQUFBQUFBUC9PQUFBQUFQK3cvN0QvcGYrNS83ci91di9aLzdIL3NmL1BBQUQvcUFBQUFBb0FBQUFBLzdvQUFBQUFBQlFBQUFBQUFBci80Zi9PQUFBQUFBQUwvODcvenYrbS82Ly83UC9aQUFELzR2L05BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvNjhBQVArd0FBRC8yQUFBLzlqLzQvL2kvNUwveFArbC83di93LytkLzd2L25BQUEvOWovMXYvTi82Yi9wdi9qLzV3QUFBQUFBQUQveFFBQUFBQUFBQUFBLzhYLzJRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC9zQUFBQUFELzJBQUFBQUQvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvT0FBRC80Z0FBQUFBQUFBQUFBQUFBQUFBQUFBRC80d0FBQUFBQUFBQUEvK0wvN1Avcy8rZ0FBUC8xLytJQUFQLzJBQUFBQVAvcy8rc0FBQUFBQUFBQUFQL3MvL2IvOWYvMkFBRC85Z0FBQUFBQUFQL2kvK01BQUFBQUFBQUFBUC9yQUFELzdBQUFBQUFBQUFBQUFBRC85di8xLy9iLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQUUFBLyt6LzdQL3FBQUQvOWdBQUFBRC80d0FBLyt3QUFBQUFBQUFBQVAvcy8rc0FBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rei85di8yQUFBQUFQL3NBQUQvOVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9MLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtBQUQvemdBQS8vWUFBUCt3QUFELzRnQUEvK3ovOXYvc0FBQUFBUC8yQUFBQUFBQUEvOFQvenYvaS85ai85di9ZLytQL2t2L0UvOWovemdBQUFBQUFBQUFBLzlnQUFQLzJBQUQvN0FBQS8rTC82d0FBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCWUFBUC90QUFBQUFBQUFBQUQvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3ovNndBQ1hDd0FCQUFBaHg2SS9BQVZBR3NBQVAvMi8rei83UC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBRC85Ly8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOWdBQS8vWUFBUC8xLzlqLzlmL0UvK3ovN1AvMi84VC82d0F6Ly9iLzlmL3MvK3ovOVAvckFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK0gvenYvaUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSy8vVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJBQUFBQUFBQVAvWUFBQUFBQUFBQUFBQUFQL3MvOFFBQUFBQUFBQUFBQUFBQUFBQUFQL1lBQUQvMkFBQS85Zi94UC8yLyt6LzRRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9iLzdQL3MvK3dBQVAvWS84VC83UCt3Lyt2LzdQL08vNmIvemdBOUFBRC85Z0FBLytQLzEvL08vL1lBQUFBQS85Y0FBUC8yQUFELzdBQUsvL1gvN1Avci8rTC83Zi9qLytMLzl2L3IvL2IvOXYvcy8rei85di8xLy9YLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8xQUFBQUFBQUEvL1lBQUFBZUFBQUFBQUFLQUFBQUNnQW9BQlVBS1FBQUFBRC83QUFBQUJRQUFBQUFBQUQvOWdBQUFBQUFBUC9zQUFBQUFBQVVBQXdBRlFBQUFCVUFGUUFVQUFBQUZRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUV3QVZBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFQL3NBQUQveEFBQS83b0FBQUFBLzdyL2t2KzZBQllBQUFBQS8rTUFBUC9ZQUFELzRnQUEvK0wvdXYvMi8vYi83QUFBQUFELzlmL1kvN3NBQVAvUC84WC96Z0FBLzg0QUFBQUEvK3dBQVAvMi8vYi85Z0FBQUFELzQvLzIvL2IvOXYvaS8rei85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBci96ZitsLzgwQUFQKzUvLzMvNi8vTy84Ny83QUFVLytJQUFBQW4vL2IvNi8vMC8vYi80dis0QUFyLzZ3QUtBQUFBQUFBQUFBQUFBUC8xLzl3QUZBQUEvNjRBQ2dBVEFBQUFBQUFBLy9YLzFnQUsvOWYvOWYvMUFBQUFBQUFBQUFyLzZ3QUtBQUFBQ2dBQUFBRC84UC9yQUFqLzlQLzFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS85Zi94UC9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLLy9RQUNnQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUJULzF3QUEvN29BQ2dBQUFBRC8xd0FBQUJ6LzlnQUEvL1VBQVAvckFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRi8rdi85UUFKQUFBQUFBQUFBQk1BQUFBQUFBQUFBQUFBQUFrQUFBQUFBQUFBQUFBQUFBQUFBUC9pQUFBQUFBQUEvL1VBQVAveC8rd0FBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVArSS8yci9kQUFBQUFBQUFQL1pBQUQvNFFBQUFBQUFBQUFBLzRnQUFBQUFBQUFBQVAvaS8rTC9rditTQUFEL25QK1MvNlFBQVAvRUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQS82WUFBUC8xLytILzZ3QUFBQUFBQUFBQS8rd0FBQUFBQUFBQUN2LzIvL2IvMmYrbS8rei93Ly9zLyt6LzdQL1gvL1gvN3YvRS8rRC9uUC9ELzd2L2t2LzIvODMvOXYvRC8rei85UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFGUC9qLzdELzRmK20vODBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBRC85UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL0VBQVAvMUFBQUFBQUFBLy9ZQUFBQUEvK3YvNS8vMkFBQUFBQUFBQUFELzZ3QUEvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC8rLy94QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRlFBQUFBRC8yUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzFBQUFBQUFBQS8vWUFBUC8yQUFBQUFBQUFBQUQvOWdBQS8rd0FBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBLytnQUFQL3MvOWovN0FBQS8rei80Z0FBQUFBQUFQL2hBQUFBQUFBQUFBQUFBUC9pLy9iL3p2LzJBQUFBQUFBQUFBQUFBQUFBQUFELzdQLzIvL2IvOXYvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK1AvOGdBQS8rc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUCt2QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVQUIwQUV3QW5BQUFBQVAvTkFBQUFDdit1QUFBQUFBQUFBQjBBQUFBQUFBQUFBUC9XQUFBQUhnQVUvNjhBQ2dBVUFCd0FBQUFVQUFBQUFBQUEvOVlBQUFBQUFBQUFBQUFBQUJRQUFBQUEvK3dBQUFBQUFBQUFBQUFBLytyLy9mL3JBQUQvc0FBQUFBRC85Z0FBLzhULzYvL09BQXYvenYvaEFBRC83UC9ZLzljQUFBQUtBQUFBQVAvMi8rdi85Zi9PQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9nQUFELzR2L1kvNmIvNGdBSi8rMy85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3VnQUFBQUQvNFFBQUFCUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvckFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQS84UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9ZLyt3QUFQL09BQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84Ny85UUEwQUFBQUFBQUEvL1lBQVAvT0FBQUFBQUFBLytNQUFBQUFBQUFBQUFBSy8rd0FBUC8yLzlnQUFBQUtBQUFBQVAvMkFBQUFBQUFBLyszLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVQUFELzJQL28vK3dBQ3YvWkFBQUFBQUFBQUFBQUFBQUFBQW9BQUFBQUFBRC83UC8yQUFELzRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rTC83QUFVLy9VQUFrc29BQVFBQUgxV2ZuUUFFUUI1QUFELzR2L3kvL1lBRlAvai8rei85di8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvcHYvTy82di91Zis2LzhUL3VnQWUvN3Ivc1AvRi81My8yZi9ZLzhUL3NmL1AvNmovdXYrY0FCUUFDdi9oLzdyL3pQL1cvOFQvemYvRkFBdi8yUC9PLzdELzR2L1kvNi8vMmYvai84VC94ZittLzZiLzQvK20vK0wvNHYvaS81TC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzdBQUFBQUEvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOVlBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBb0FCUUFBQUFBQUFBQUFQL3NBQUFBQUFBVi8vc0FBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBQUFBQUFVQUJRQUNnQUtBQlVBRlFBVkFCVUFLUUFWQUFvQUhnQWVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOXYvMkFBQUFBQUFBQUFBQUFBQUFBQW9BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2kvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84d0FBQUFBQUFBQUFBQUZBQUFBQUFBQUFBQUFBUC9FQUFBQUFBQUovL1lBQUFBQUFBRC9ydi9pQUFBQUNnQUFBQUQvOUFBQS8vWUFBQUFBQUFBQUFBQUpBQUQvOWYvMUFBci83QUFBQUFELzl2L1hBQUFBQUFBQS8vWC85dis0QUFBQUFQL3IvOXdBRkFBVUFBQUFDZ0FLQUFBQUp3QVQvODcvL1FBQUFBRC82Ly9yLzg3LzlmL2gvL1FBRXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUEvK3dBQUFBQUFBQUFDZ0FBQUFBQUFQL2kvNmIvNGdBQUFBQUFBQUFBLy9ZQUFBQUEvK3NBQUFBQS8vWUFBUC8yQUFBQUFQL2pBQUFBQUFBQS8rd0FBUC9zQUFELzl2LzIvODRBQUFBQS8vWC85Zi9PLyt6LzYvL3RBQUQvemdBOS8rUC82Ly9FQUFELzEvLzIvK3ovc1AvMi8vYi8xLy9zLy9YLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85UUFBQUFELzR2L3UvOFQvN0FBQS8yci9wUC8xQUFBQUFBQUFBQUFBQUFBQS84UUFBUC9oQUFBQUFBQUEvOW4vNndBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOWdBQUFBQUFBQUFBQUFELzR2K0kvNUwva3YrYy82Yi9kQUFBLzVJQUFBQUFBQUQvaHdBQUFBQUFBQUFBQUFELzRRQUFBQUFBQUFBSy8vYi84Zi8yLzluL3cvKzcvNTMvcHYvNy8vYi83UC9zLyt2L3hQL08vK0wvZi8vaS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVQvL3YvNC8vTi84WC9wLyt3LzRrQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUN3QVVBQUFBQUFBQUFBQUFLQUFLQUFBQUFBQUFBQlFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzl2LzIvKzBBQUFBQUFBQUFBUC8yQUFBQUFBQUEvL2IvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvdEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMkFBS0FBQUFBQUFBQUFBQUFBQUEvODcvMkFBQUFBQUFBQUFBQUFBQUFBQVRBQlAvN0FBQUFBQUFBQUFBQUFELzlnQUEvL1lBQUFBQUFBRC80Z0FBQUFBQUFQLzIvK3ovdVFBQUFBQUFBUC9zLyswQUFBQUFBQUFBQVAvc0FEUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8xQUFBQUFBQUEvOFQvNHYvMi8rd0FDdi9zLyt6L3ovL0ZBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1AvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvc0FBQS8vYi85di8yLy9iLzJQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzg0QUFBQVUvL2IvOXYvWi84Ly8yUUFBLzdzQUFBQUFBQUFBQUFBQUFBRC83UC8yLytJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytzQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC94Ly9ILzhRQUFBQUFBQUFBQS8vYi82Ly9zQUFELzhmL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQ082d0FCQUFBZFFwMmFnQVhBRllBQVAvNy8vdi8rLy83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMS8vWUFDdi8xLy9ELzJQL1AvL1gvOWdBVUFCTUFDZi8yLyt6LzR2L2lBRkQvMlAvWS8rd0FDZ0FLLy9iLzl2L3MvL2IvN1AvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vci80di9zLytJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVUvK0wvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9vQUFBQUFBQUFBQUFBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBRlFBQUFBQUFBQUFBQUFELzdmL2lBQUQvOXYvMkFBQUFBQUFBQUFELzdQL3QvK3dBQ3Yvcy8rei85di9yLzlqLzR2LzIvK3ovOXYvMS85ai83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL0lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC8xd0FBLy9ZQUFBQUFBQUFBQUFBQS84My82Ly8yQUFBQUFQL09BQUFBQUFBZS84MEFBQUFBLy9VQUFQL3MvOWovNFAvcy8vWC91UUFBQUFBQUFQL20vOWovNGdBTi8rei80di9zLytMLzR2L2lBQUQvN0FBQS8vWC8yUC9zLy9iLzl2LzIvK0wvNi8vcy8rei83UC9yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvaEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFELzRnQUEvL1gvOXYvMkFBb0FBUC9oLytJQUFBQUFBQUFBRWdBQUFBQUFBUC8yQUFBQUFQL3NBQUQvNGdBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQVAvMkFCUC83QUFBLyt2LzYvL0UvODcvOXYvcy8vVUFBQUFBLytzQUFBQUFBQUFBQUFBQUFBQUFBUCt3QUFBQUFQL3MvK29BRXYvT0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCUUFBQUFBQUFBQUFBQVVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdmL3MvN0QvenYrYy81VC83UUFBQUFBQUFBQUEvK01BQVA5Mi8ydi8yLy8yLzRuLzdRQUFBQUQvN2Yvc0FBQUFBUC9zQUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFELzl2L28vOWYvNFFBQUFBQUFBQUFBLyszLzRmL3RBQUFBQUFBQUFBQUFBQUFBLzhZQUFBQUEvK3dBQVAvQy8rTUFBUC8yLzM3L3J2KzUvNXovblArVS80ci94Zi9oLytJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJ2K3kvN0wvc2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL2NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vYi85di8yLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzEvLzIvK3dBQVAvMkFBQUFBQUFBLytILzZ3QUFBQUFBQVAvV0FBQUFBQUFlLzdvQUFQLzJBQUQvOXYvaS8rci80UC9yLyt2L3hBQUFBQUFBQVAvMC8rei82d0FLLy9ULzlQLzEvK3YvNi8vci8vWC82d0FBLyt2LzRmL3MvL1lBQUFBQS8vWC82Ly8yLy9YLzl2L3JBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85di9FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9oQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1kvK2dBQ3YvMi8rei80di9aQUFELzJBQUtBQW9BQVAvcy85ai96di8xQURUL3UvL1kvK0lBRkFBVS8vWUFBUC90Ly9ZQUFQL09BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBb0FBQUFBQUFELzdQL2pBQUFBQVAvMkFBQUFBQUFLLy9ZQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL2IvN1Avai8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFVLzhYLzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC95QUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQW9BQVAvcy8rSC80Zi9PLzg0QUNnQUEvK3ovOWdBQUFBQUFBUCs1LzljQUFBQUsvOFFBQ2dBQUFBRC85Ly8yQUFBQUFBQUFBQlFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUQvOXYvMS8rei83QUFBLy9YLzlnQUEvK0wvN0FBQUFBQUFBQUFBQUFBQUFQLzIvOWdBQUFBQS8vYi85di9xLytJQUFBQUEvOWovNHYvMC8vWC80Zi9pLyt2LzYvL3IvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN1AvWS85ai96Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUZBQVRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUZBQUFBQUFBQUFBQUFCTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN1AvMkFBRC85di9pLytMLzRnQUEvK3dBQUFBQUFBRC85di8yLyt2LzdBQXovOWovNHYvMkFBQUFBUC9zLy9iLzdBQUEvK3ovMXdBQUFBQUFBQUFBLyszLzlnQUFBQUFBQVAvMi8vYi83UC9zQUFBQUFBQUFBQUFBQVAvMi8vWUFBQUFBQUFBQUFBQUFBQUFBQVAvMkFBRC85Z0FBQUFBQUFBQUEvL1lBQVAvMkFBQUFBQUFBQUFBQUFBQUEvL1gvOWdBQUFBQUFBQUFBQUFELzlnQUFBQUFBQVAvcy8rei83UC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVArNkFBRC85Z0FLLy9ZQUFBQUFBQW4vci8vTy85Yi83QUFBLzY4QUhRQVRBQ2Yvc0FBQUFBRC82d0FBQUFEL3UvL1dBQUFBQVArdUFBQUFBQUFBLzlmLzlmL1hBQjcvdXYvT0FBRC82di9ZLzlnQUFQL3FBQUFBQVAvTkFBQUFBQUFBQUFELzR2L0VBQUFBQVAvWS8rQUFBQUFBQUFBQUhQL3NBQUFBQUFBZEFCVUFIZ0FVQUFvQUZBQVVBQlFBQ2dBQUFBQUFBQUFBQUFBQUFBQUEvLzMvN1FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvN29BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOFFBQUFBQUFBQUFBQUFUQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS83RC83UC9pLy9iLzdQLzJBQUQvOXYrdy85ai85di9zLy9iL3BRQUEvL1lBRlArdi8rMy85Z0FBLyt6LzdQL1kvOEwvNHYvaS82OEFBQUFBQUFELzEvL3IvOWNBQ3YvaC85ai82Ly9oLyt2LzRmL2kvOWovOWYvaS85Zi83UC9zLyt2LzlmL2kvK0gvOWYvci8rei80UUFBLy9FQUFBQUEvL1lBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOUFBQUFBRC85Z0FBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3ovdVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvd3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL2IvKy8vMkFBQUFBQUFBQUFBQUFBQUNMSXdBQkFBQWJHWnQvQUFYQUZZQUFQK1MvL2IvMlAvcy8vYi85dis1LzlqL3IvL3IvK3ovenYrNS83ci81Ly9PLzlqLzJQL0UvOWovaC8vaS8rTC91di9PLzhULzJQL0VBQlQvemY5MEFCUUFIZ0FkLzlqL2Z2L2YvOHovMkFBSy85Zi80Zis1LytMLzdQKzcvNmIvMmYvci85ai9mUC9OQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVArYy8rTC85ditKQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvNllBQVAvTy85a0FBQUFBLzdEL3hmK2kvOWovN1ArNy82Yi9zUC9FLzdIL3UvKzcvN0QveGYrZC85bi8yUCt4Lzd2L3NmL1AvNmdBQVArNi81d0FGQUFBQUFyLzRmK20vOWIvemYvRkFBdi96di9ZLzYvLzJmL2ovNmYvcHYvai8rTC80ditTLzhNQUFBQUFBQUFBQUFBZEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84UC8yUC8yLzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzl2L2kvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNndBQUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBb0FBUC9zQUFBQUFQLzJBQUQvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCUC85di8yLy9iLzl2LzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBS0FBRC85Z0FBLzg4QUFBQUFBQUQvOWdBQUFBRC8rd0FBQUFBQUFBQUEvK3ovOWdBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQS8rTC85Z0FBLzVJQUZ2L09BQUFBQUFBQUFBQUFBUC9ZLy9ZQUFQL3QvK0wvN2Yvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9PLzZmL3NQL08vNTBBQVAvcy84VC8yUC9ZLytQL3hQL1kvK3ovNi8vci8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJQLzFBQUQvOXYvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vYi85Z0FBLy9ZQUFBQUEvK3dBQUFBQUFBQUFBQUFLQUFBQUFQL3NBQUQvNHYrbUFEMy80Z0FBLytzQUFBQUFBQUQvNndBQS8vWUFBQUFBLytQLzl2L3NBQUQvOXYvMS84Ny83QUFBQUFBQUFBQUFBQUQveFArNi83RC96dit3QUFELzR2L1gvK3YvN1FBQS84Ny80d0FBLzlmLzdQLzIvK3ovOXYvMS8rdi85di8yLy9YLzlnQUFBQUFBQUFBQS8vVUFBQUFBQUFELzRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3hBQXpBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQVAvcy8vWUFBQUFBQUFBQUFQL3JBQUFBQUFBQUFBQUFBQUFBLzlqL3hQL0UvL2IvdWdBQS8rc0FBQUFBQUFBQUFQL3JBQUFBQVAvMEFBQUFBUC8xLy9VQUFQL3MvL1VBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQ29BQUFBVkFDQUFQUUFBQUFELzdRQU1BQXdBQVAvcy8vWUFBUC9zLy9iLzlnQUEvL2YvN0FBQUFBei83UC8yLyt3QUFBQUFBRWdBQUFBQUFGSUFVZ0JIQUFBQUFBQUFBQUFBQUFCUi8rd0FBUC9zQUJZQURmL3NBQUFBQUFBTEFCVUFBQUFBQUFBQUFBQUFBQUFBUFFBK0FENEFQZ0EwQUVnQUFBQWdBRDRBS2dBK0FENEFOQUErLyt3QVBRQVZBQUFBRndBMEFENEFQdi8yQUFBQUFQLzJBQlVBRlFBQUFBRC83QUFBQUFBQUFQL2lBQUQvOXYvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMi8vWUFBQUFBLytNQUFBQUFBQW9BQUFBQUFBQUFBQUFBQUFBQUFQK21BRFQvNndBQS8rd0FBQUFBQUFELzZ3QUFBQUFBQUFBQS8rei85di8yQUFBQUFQLzIvOWdBQUFBQUFBQUFBQUFBQUFEL3p2L0UvN3IvNHYrNkFBRC83UC9yLyt6LzdRQUEvOWYvN0FBQS8rTC85di8yLy9iLzl2L3MvK3ovN0FBQUFBRC85Z0FBQUFELzlnQUFBQUFBTkFBQUFCNEFOQUEwQUFBQUFBQUFBQjhBSHdBQS8vRUFBQUFBLy9ZQUNnQUtBQUFBQVAvaUFBQUFGZi9pQUFBQUFBQUFBQUFBV3dBQS8rd0FaZ0J2QUZBQUhnQUFBQUFBQUFBQUFHVUFBQUFVQUFBQUh3QVdBQUQvN1FBQUFCNEFGZi90QUFBQUFBQUFBQUFBQUFBNUFENEFTQUJJQUVnQVNBQUFBQ0VBVWdBMEFGc0FVZ0JJQUZFQUFBQkhBQlAvOWdBWC8vWUFXZ0ErQUFBQUFBQUFBQUFBS1FBcEFBQUFBQUFBQUFBQUFBQUEvK0lBQVAvc0FBRC85Z0FBQUJjQUFQLzJBQUFBQUFBQUFBVUFDZ0FBQUFBQUFBQUFBQUQvOVFBQUFBQUFBQUFBQUFvQUFBQUEvOWNBSGdBQUFBb0FBUC9zQUFBQUFQLzFBQUQvOWYvckFBRC83UUFBQUFzQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3MvOWovdXdBQS85Z0FBQUEwQUFBQUFBQUFBQUFBQUFBQUFBRC8yUUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9pQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy92LysvL2kvK0lBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQVAvWUFBQUFBUCtTQUJiL3p2LzJBQUFBQUFBQUFBRC96di8yQUFELzQvL2lBQUQvOFFBQUFBRC85di8yQUFBQUFBQUFBQUFBQUFBQUFBRC94UCt3LzdyL3V2K21BQUQvN1AvTy83di96Ly9qLzdyL3hmL3MvOWovN1AvMUFBQUFBUC8xQUFBQUFBQUEvL1lBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC84Zi94QUFBQUFBQUFBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBcEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rMEFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3ovN1Avc0FBRC82d0FBQUFBQUFBQUFBQUFBQVAvakFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCUUFBQUFBQUFBQUhnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBd0FBQUFBQUNnQUtRQVVBQUFBQUFBQUFBQUFBQUFWQUFBQUFQL3RBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFGUUFlQUFBQUFBQUxBQUFBQUFBQUFCNEFGUUFWQUJVQUZRQVZBQUFBRkFBQUFBQUFBQUFBQUJRQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQVAvc0FBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzIvL1VBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUQvOWdBQUFDa0FBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFQLzJBQUFBQUFBQS8rRUFBQUFBQUFBQUFBQUFBQUFBQVAvMS8vWUFBUC8xQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUNRQUFBQUFBQUFBQS8vYi85di8yLy9ZQUFBQUFBQUFBQUFBQUFCUUFBQUFBQUFELzJBQUtBQUFBQUFBQUFBQUFBQUFBLyt6LzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUQvNndBQUFBQUFBQUFBQUFELzF3QUFBQUFBQUFBS0FBQUFBQUFBQUFBQUFBQUEvK0lBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlmL3p2KzZBQUQvdWdBQS8rc0FBQUFBQUFBQUFBQUFBQUQvOWYvc0FBRC85UUFBQUFELzlRQUtBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rd0FBUC8yQUFELzlnQUFBQUFBQUFBQUFBQUFBUC8yLy9iLzlnQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUEvK3dBQUFBQS8rd0FId0FBQUFBQUFQLzJBQUFBQUFBQS8vVUFBUC8yLy9ZQUFQL3NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvcy8rTC8yUC9pLzlrQUFBQUEvK3ovN0FBQUFBRC83QUFBLy9iLzlmLzFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC93Ly9zQUFBQUFQL2lBQUQvOVFBQS8vWUFBQUFBQUFELzl2LzJBQk1BQUFBS0FBb0FBUC8yLzZVQUFQLzIvK3dBQVAvaUFBQUFBQUFVQUFEL3VQL1lBQjhBQUFBQS82Ly85UC94QUFBQUFBQUEvL1gvNmdBSy8vWUFBUC9PQUFELzdBQUEvOElBQUFBQUFBQUFBQUFBQUFBQUFQL1kvODRBQ3YvT0FBRC80Z0FBQUJNQUZBQVVBQUFBSFFBQS8rSUFBUC8xLyt6LzlmL3IvOFQvOWYvV0FBQUFBQUFBQUFBQUFBQUEvL2IvOWdBQUFBRC83QUFBQUFELyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC91UUFvLyt3QUFBQUFBQUFBQUFBQS8rc0FBQUFBQUFELzl2LzIvL1lBQUFBQS8vYi85di9ZQUFBQUFBQUFBQUFBQUFBQS8rTC94UCtuLy9YL3VnQUEvK0wvNi8vMkFBQUFBUC9pLyt3QUFQL2kvL2IvOWYvcy8vYi85UUFBLy9ZQUFQLzEvL1lBQUFBQS8vWUFBQUFUQUFBQUFBQUEvL1VBQ2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1FBQUFBb0FBQUFBQUFBQUFBQUFBQlQvN0FBQUFBQUFBQUFBQUJNQUNnQUEvK0lBSndBQUFBb0FBQUFBQUFBQUFBQUFBQUFBQVAvMkFBb0FBQUFBQUFBQUFBQUFBQUFBQ1FBQUFBQUFBQUFBQUFBQUFBQUEvK0wvMkFBSy85Z0FBUC8yQUFrQUFBQVRBQUFBQUFBZEFBQUFBQUFKQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBUC9aQUFBQUFBQUEvL2NBQVAvM0FBRC85Z0FBQUFBQUFQL3MvK3dBQVAvMkFBQUFBQUFBLyswQUFBQUFBQUFBQVAvMkFBQUFBUCt4QUJZQUFBQUFBQUFBQUFBQUFBRC83QUFBQUFELzl2LzJBQUQvOWdBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBRC80Zis3Lzd2LzR2K3hBQUQvNHYvaS8rTC83UC90LzlqLzdQLzIvK3ovN1AvMkFBQUFBUC90QUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFDSFdZQUJBQUFZNWhrc0FBUEFId0FBUCs1Lyt2LzJQL3IvLzMvNi8vWS84Ny84UC9zLyt6LzdQLzJBQW9BQ2dBSi82WC82Ly8xLzl3QUZBQVVBQWovcmdBS0FBci80Z0FuQUJQL3B2L08vODcvOVAvMS8vWC82Ly8wLzlZQUN2L3QvK0lBQ3YvWC8vWC85Zis0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3MvODcvelFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFvQUFBQUFBQUFBQVAvT0FCVUFBQUFBLzhRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUFBQUFBQUFBRC85di83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9iLzR2L1BBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC80di8yQUFBQUFBQUFBQUFBQUFBQUFBRC80Ly9zQUFBQUFBQUFBQUFBQUFBQUFBRC96Ly8yLzgvLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS82Ly94UCtJLzRuLzdQL3RBQUQvNHYvdC85ai9wdi9ZQUFEL3h2L1ovOC8vblArYy84WUFBUDkxLzNYL2RQK0wvM1VBQVA5MEFBQUFBQUFBLytNQUFQK3kvK1Avc3YvUS84WC91Z0FBLytQLzR3QUEvK0wvN1ArSkFBRC9pUUFBLzYvL3hmL3MvK0wvMlArbS84WC80dittLzlqL3hRQU0vOWovN2Yvai84Ly9zUDkvLzlyL3NQK3YvNi8vZi8vWS8rei83UUFNLzd6LzJ2L0UvK1AvN1AvakFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytzQUFBQUFBQUFBQUFBQS8rei8yUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzgvK3ovN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOW4vN1AvWi8rd0FBQUFLQUFBQUFBQUFBQUFBQ2dBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNi8vckFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yLyt6Lzl2L3MvOWovenYvWUFBRC85Z0FBQUFBQUFBQUEvL2IvOXYvakFBQUFBUC9zLy9iLzlnQUFBQUQvOXYvMy84WUFLdi8yLytML3p2L3NBQUFBQVAvcy8vWUFBQUFBQUFBQUFQL2kvL2IvNGdBQS8vWC80di9zQUFELzJQL3MvOWovN1Avc0FBQUFBQUFBLy9iLzlnQUFBQUQvOXYvMkFBQUFBQUFBQUFELzlnQUFBQUQvOWdBQUFBRC83UC9zLyszLzlnQUFBQUFBQVAvMi8vYi83QUFBLy9ZQUFBQUFBQUQvOXYvMi8vYi83UC8yLytQLzdmL2ovK1AvN2YvMi8vYi80Ly90Ly9iLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSy8vWUFBUC9qLytJQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvdEFBQUFBUC9zLzg3L3hRQUEvL1lBQUFBQUFBQUFBQUFKQUFELzdmL1cvOWIvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS83c0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvMi84VUFBUC9FQUFELzdBQUFBQUFBQUFBQUFBb0FBQUFBQUFrQUFBQUFBQW9BQUFBS0FBQUFBQUFBQUFBQUFBQUEvK3NBQUFBQUFBQUFBQUFBQUFvQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC83UC9oQUFyL3V2LzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzYvL3MvK0wvNi8vTy8rTC91Lyt4QUFBQUFQL3NBQUQvOXYvMi8rei85Zi9QQUFBQUFQL1cvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOWYvcVAvUEFBQUFBQUFBLy9ZQUFBQUEvKzMvMmYvTy8rTC80Ly9qLzlvQUFQL3MvK3ovc2YvUEFBQUFBUC9PQUFvQUFBQUEvL1gvN0FBQUFBQUFBQUFBQUFyLzkvLzJBQUFBQUFBQS84OEFBQUFBQUFBQUFBQUEvK0VBQUFBQS8vYi85d0FBLytNQUFQL1BBQUFBQVAvckFBRC83QUFBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdQL3MvL2IvOWYvVy8vYi82Ly9FLyt3QUFBQUFBQUFBQUFBQUFBQUFBUC9pQUFELzdQLzIvOWIvOXYrOC83c0FBQUFBQUFBQUNnQUFBQUQvOXYvMi85QUFBQUFBLzlqLzIvL3VBQUFBQUFBQUFBQUFBQUFBQUFELzRmK3kvOWdBQUFBQS8rUC83UUFKLyszLzdQL1AvN0gveGYvaS8rUC94Z0FBQUFELzl2KzcvOWovdS8vWS85WUFDZ0FBQUFyLzl2LzJBQW9BQ3YvMkFBQUFDZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzliLzJmLzJBQUFBQUFBQUFBRC80d0FBLzlELzR3QUEvK0wvNGdBQUFBRC85Z0FBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFQLzIvOVlBQUFBQS84Yi83UC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOXYvakFBQUFBUC90LyswQUFQL3NBQUQvOXYvdEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyswQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNC8vakFBRC83UC90QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNGdBQUFDRUFBQUFBLy9ZQUFBQUFBQUFBQUFBQS8rTC83UC8yLyt3QUNnQUEvOWIvMkFBQS8rMEFBUC9zQUFBQUFBQUFBQUFBQUFBQS85Z0FBQUFBLytzQUFQL3NBQUQvNGYvMS8vWUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFCTUFBQUFBQUFBQUFBQUEvK3dBQVAvaUFBci83UC9zLytMLzdQL3MvK3dBWnYvcy8vYi83UC9OQUFBQUFQL3NBQUFBQUFBQUFBQUFDZ0FBLyt3QVpnQUFBQUFBQVAvcy8rei83UC9pLytJQUFBQUFBQUQvN0FBQUFBQUFBUC9FQUFBQUFQL1hBQUFBQUFBQUFBQUFBQUFBQUFBQUhRQUFBQUFBQVAvMi8vWUFBUC9YLy9ZQUFQL3EvL1lBQVAvc0FCMy83UC9aLyswQUFQL2tBQUFBQUFBQS8rei83UC9aLzlrQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlnQUFBQUEvODBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNi8vUS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvWi8rei8yZi9zLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJ3QUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBbC8rVC81QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzljQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzgwQUFBQUEvL3YvMlAvMi84Ny9zZ0FBLy9iLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3hBQUFBQUQvN1FBQUFBQUFBQUFBQUFBQUFBQUEvOFgvdXdBQUFBRC8yZi9QLyszL3hmL3QvN1AvbnYvUS8rSC94di9qQUFELzlnQUEvN0wvdS8reS83di8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK01BQUFBQUFBQUFBQUFBQUFELzJQL2FBQUFBQUFBQUFBRC83Zi9RQUFEL3ZQL3RBQUQvemYvTkFBQUFBUC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy9iLzlRQUEvK3dBQUFBQUFBRC9uUC8xLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvcy8rd0FBUC9aLy9iLzJmL0UvK0lBQVAvaC8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzR3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8rSUFBUC9aLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWc4c0FBUUFBRjRPWGxRQUJ3Q0JBQUQvZmYrdkFCMy80Ly9oLzdqLzJQLzIvMzMvNC8vaC8rei85djk5Ly9iLzQvLzJBQjMvKy8vaC84NEFNUC8yLzlqLzRmLzIvNXIvei8vai8xYi9Wdi8yQUIzLzRmL3MvN24vNGYvcy8rei80di9FLzRELzR2LzIvK3ovaVAvTi83QUFFLy9zLyt6L3p2L3JBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC9rUUFBQUI3LzdQL1lBQUQveFFBQS81SC83UC9GQUFBQUFQK1JBQUQvN0FBQUFCNEFBUC9ZLzhRQUZBQUEvOFgvMkFBQS83TC8xLy9qLzNNQUFBQUFBQjRBQUFBQUFBRC8yQUFBLytMLzR2L04vN2ovN2YvdC8rei9mZ0FBLzdBQUZQL3IvK3dBQVAvcy8vWUFGQUFVQUJVQUN2LzJBQlgvOWdBVUFBb0FGUUFVLy9iLzdmL1kvOXIvOWdBVS8rTC80di9zQUJULzdQL2kvK1AvN0FBVUFCUC85di9FQUFvQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL2h3QUFBQlQvMlArNkFBRC9wLy9ZLzRmLzJQK25BQUQvMlArSEFBRC8yQUFBQUJRQUFQKzYvN29BRlAvWS82Zi9zUC9ZLzU3L3NmL08vMHdBQUFBQUFCUUFBQUFBQUFEL3NBQUEvK0gvdXYrYi81RC94Zi9aLzlmL2lBQUEvNXdBRS8vRS85Y0FBUC9OQUFBQUZQL3RBQUQvN0FBQUFBQUFBQUFBLytJQUFQL3QvK1AvMlAvRS84OEFBQUFBLzlqL25QL1kvKzBBQUFBQUFBRC83QUFUQUFELzdQKzcvK3ovMkFBSy85ai85di9ZLzdMLy9mL3MvL2IvN1AvMi8rTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRkFBVS84UC80Z0FBQUFELzlnQUFBQlQvNi8vMkFBQUFBQUFVQUNELzZ3QUEvOFAvMXdBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFCUUFBQUFBLzhNQUNnQUFBQUFBQVAvc0FBQUFBUC9zQUJULzlnQUEvK3dBQUFBQUFBRC83QUFVQUFBQUFBQUFBQUFBQVAvaS83a0FBQUFBLzhJQUFBQVUvK3ovdWYvaUFBQUFBQUFBQUFEL3pnQVVBQUFBQUFBQS8rSUFBQUFBQUFBQUFBQUEvK3dBQ2dBQUFBRC82LytTQUFBQUZ2L3JBQUFBQUFBQUFCYi80Z0FBQUFEL2RQL08vNllBRlArdy84Ny9wdittQUJULzR2K1NBQVQva2dBVS82Yi83UCs2QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC9od0FBQUJULzl2L1lBQUQvNi8vMi80Zi85di9yQUFELzl2K0gvK3ovOWdBQUFCUUFBUC9ZLzlnQUUvLzIvK3YvN1AvMi81d0FBQUFBLzFZQUFBQUFBQlFBQUFBQUFBRC83QUFBQUFBQUFBQUEvL3NBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQVAvdEFBQUFFd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC85Z0FBQUFBQUFBQUEvL1lBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBLy9ZQUFBQUFBQUFBQVAvMi8vVUFBQUFBQUFELzlRQUFBQUFBQUFBQUFBQUFBQUFBLyswQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBRC85Ly8yLy9ZQUFBQUEvKzMvOWdBQUFBQUFBQUFBQUFBQUFQLzEvL1VBQUFBQUFBQUFBQUFBQUFELzlmLzFBQUFBQUFBQUFBRC83UUFBQUFBQUFBQUEvL1VBQUFBQUFBQUFBUC9yLytzQUFQL2pBQUFBQVAvMUFBQUFBQUFBLyswQUFBQUFBQUQvN1AvMi8vWUFBQUFBLy9VQUFBQUFBQUQvOWYvMUFBQUFBQUFBQUFELzlRQUFBQUFBQUFBQS8rMy85di8yLyt6LzJBQkgvL2IvN2YvMi8rei85Z0FBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUNnQVUvK3dBQUFBS0FBQUFGUC9zQUFBQUFBQUFBQUQvN0FBQUFBQUFFd0FUQUFvQUFBQUEvOUFBQUFBQS8rc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvL1lBRkFBS0FBb0FBUC8yQUFyLzlnQUFBQW9BQ2dBS0FBQUFBQUFBQUJ3QUFBQUFBQUFBQUFBQUFBb0FBQUFBQUFBQUFBQUFBQUFBQVAvWUFBQUFBUC9zQUFBQUV3QUFBQUFBQUFBQUFCUUFBQUFBQUFBQUFBQUEvK0wvOVFBQUFBRC80di9pLy9VQUFQL3NBQUQvN1AvMUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBK0FBQUFBQUFBQUFBQUFBQVQvK3dBRXdBS0FBRUFIQU1TQXhRREZnTVlBeG9ESEFNZUF5QURJZ01rQXlZREtBTXhBelVETndNNUF6c0RQUU0vQTBFRFF3TkZBMGNEU1FOTEE1OERvQVE1QUFFQVJ3QWNBQjBBSGdBZkFDQUFJUUFpQUNNQUpBQWxBQ1lBSndBb0FDa0FLZ0FyQUN3QUxRQXVBQzhBTUFBeEFESUFNd0EwQURVQSt3RDhBUTBCTFFFdUFWVUJXd0ZjQVhrQmdnR2FBWnNCbkFHZEF3Y0REQU51QTNJRGRBTjJBM3dEZmdPQkE0VURrd09WQSt3RDd3UHhBL0lEOUFQMkEvb0Qvd1FDQkFNRUJ3UUpCQW9FQ3dRUUJCMEVKd1FvQkRRQUFRQVpBeFVERndNWkF4c0RIUU1mQXlFREl3TWxBeWNES1FNeUF6WURPQU02QXp3RFBnTkFBMElEUkFOR0EwZ0RTZ05NQkRvQUFRQmdBQUlBQXdBRUFBVUFCZ0FIQUFnQUNRQUtBQXNBREFBTkFBOEFFQUFSQUJJQUV3QVVBQlVBRmdBWEFCZ0FHUUFhQUJzQVN3Qk1BRjBBZUFDaEFLY0FxQUREQU13QTVRT2hBNlFEcGdPbkE2a0Rxd092QTdRRHR3TzRBN3dEdmdPL0E4QUQwZ1BjQTkwRDZRUkdCRWNFU0FSSkJFb0VTd1JNQkUwRVRnUlBCRkFFVVFSVEJGUUVWUVJXQkZjRVdBUlpCRm9FV3dSY0JGMEVYZ1JmQkhZRTBnVFRCTzRFOXdVUUJWSUZWQVZXQlY4RllnVmpCV2NGYVFWcUJXc0ZmUVdJQUFFQUFRTXJBQUVBQ1FBRUFCUUFGUUFlQUM0QUx3UklCRmdFV1FBQkFBWURLZ010QXk0REx3TXdBelFBQWdBVUFBSUFEUUFBQUE4QUVRQU1BQk1BTlFBUEFLRUFvUUF5QU13QXpBQXpBT1VBNVFBMEFQd0EvQUExQVMwQkxRQTJBVlVCVlFBM0FZSUJnZ0E0QVpvQm5RQTVBMjREYmdBOUEzSURjZ0ErQTNRRGRBQS9BNFVEaFFCQUJFWUVVUUJCQkZNRVZRQk5CRmNFWHdCUUJQY0U5d0JaQlJBRkVBQmFBQUVBQVFNekFBRUFCZ0FRQUJZQUtnQXdCRlFFV2dBQkFBRURMQUFCQUJBQUFnQUdBQW9BRUFBV0FCd0FJQUFrQUNvQU1BRXRCRVlFU2dST0JGUUVXZ0FCQUFNREdBTWdBeUlBQVFEWkFBRUFBd0FIQUFrQUNnQU9BQThBRVFBVkFCWUFGd0FZQUJrQUdnQWhBQ3dBTXdCdUFHOEFjQUJ4QUhJQWN3QjBBSFVBZGdCM0FIZ0FlUUI2QUhzQWZBQ0FBSWNBaUFDSkFJb0Fpd0NNQUkwQWpnQ1BBSkFBdHdDNEFMa0F1Z0M3QUx3QXZRQytBTDhBd0FEQkFNSUF3d0RFQU1VQXhnREhBTWdBeVFES0FNc0F6QUROQU00QXp3RFFBTkVBMGdEVEFOUUExUURXQU5jQTJBRFpBTm9BMndEY0FOMEEzZ0RrQVRrQmFnRnJBV3dCbVFHaEFhUUJzUUd5QWJRQnRRRzNBYmtCeFFIR0FjY0J5QUhKQWN3QnpnSGZBZUVCNGdIa0FlVUIrQUg1QWc4Q0VRSWRBaDRDSHdLZUFwOENvQUtoQXFJQ3FRS3ZBckFDemdMUEF0QUMyZ05PQTFJRFZnTlpBMTBEWVFOaUEyTURid054QTNNRGRRTjNBM2dEZXdOL0E0TURwQU9uQTZrRHFnT3JBNndEclFPdUE3QURzUU96QTdRRHRRTzJBN2dEdVFPOEE4QUR3d1BFQThZRHh3UElBOGtEekFQTkE4NER6d1BRQTlFRDB3UFVBOVVEMWdQWUE5a0QzQVBkQTk0RDRBUGhBK0lENXdQcUErc0VEZ1FSQkJNRUZBUWNCQjRFUndSTEJGVUVXd1VQQlJJRkZnVWFCU0VGSlFVbUJTY0ZMQVZjQldBRmJnVnhCWFFGZHdWOEJZc0FBUUFTQUFNQUJ3Tk9BMklEc1FPMUE4TUR4Z1BKQkVjRVN3VVNCU1lGWEFWZ0JXNEZjUVYwQUFFQUZnQVJBQmNBR1FEa0ExWURYUU5oQTJNRHpBUFJBK0FFVlFSYkJGMEZEd1VhQlNFRkpRVW5CWGNGZkFXTEFBRUFHd0ZyQVprQnBBRzBBYlVCdVFISkFjb0J6Z0hmQWVBQitBSVJBaDBDSGdLZkFxSURVZ052QTNFRGR3TjRBNE1FRGdRUkJCUUVIZ0FCQUJrQUFRQXNBRE1Cc1FHeUFiY0J4UUhHQWNjQnlBSE1BZUVCNGdIakFma0NEd0lmQXFBQ3J3TnpBM1VEZXdOL0JCd0VMUUFDQUJNRG9RT3dBQUFEc2dPMEFCQUR0Z1BDQUJNRHhBUEZBQ0FEeHdQSUFDSUR5Z1BMQUNRRHpRUFFBQ1lEMGdQZkFDb0Q0UVBzQURnRUxnUXVBRVFGVEFWYkFFVUZYUVZmQUZVRllRVnRBRmdGYndWd0FHVUZjZ1Z6QUdjRmRRVjJBR2tGZUFWN0FHc0ZmUVdLQUc4RmpBV1dBSDBBQWdBWkEwMERUUUFBQTA4RFVRQUJBMU1EVlFBRUExY0RYQUFIQTE0RFh3QU5BMlFEYWdBUEEyMERiUUFXQSswRDdRQVhBKzhEOGdBWUEvUUVEUUFjQkE4RUVBQTJCQklFRXdBNEJCVUVHd0E2QkIwRUhRQkJCQjhFSVFCQ0JDTUVMQUJGQkM4RU53QlBCUkVGRVFCWUJSTUZGUUJaQlJjRkZ3QmNCUmtGR1FCZEJSc0ZIZ0JlQlNBRklBQmlCU0lGSXdCakJTa0ZLUUJsQUFJQUd3QUNBQUlBQUFBRUFBWUFBUUEyQUdZQUJBQ29BS2dBTlFEakFPTUFOZ05nQTJBQU53TnJBMndBT0FOdUEyNEFPZ053QTNBQU93TnlBM0lBUEFOMEEzUUFQUU4yQTNZQVBnTjVBM29BUHdOOEEzNEFRUU9BQTRJQVJBT0VBNFVBUndPSEE1RUFTUU9UQTVNQVZBUkdCRVlBVlFSSUJFa0FWZ1JnQkhVQVdBUjNCSDhBYmdVT0JRNEFkd1VZQlJnQWVBVWZCUjhBZVFVa0JTUUFlZ1VxQlNvQWV3QUNBQkFBQ0FBUUFBQUFFZ0FXQUFrQVp3Q0JBQTRBZ3dDbkFDa0FxUUMxQUU0QXR3RFNBRnNBNVFEbEFIY0VTZ1JLQUhnRVRBUlVBSGtFVmdSYUFJSUVkZ1IyQUljRWdBU1ZBSWdFbHdTc0FKNEVyZ1Q5QUxRRkVBVVFBUVFGS3dVdEFRVUFBZ0FQQUJnQUdBQUFBQm9BS3dBQkFDMEFNQUFUQU5NQTRnQVhBT1lCTkFBbkFUWUJRUUIyQVVNQlZBQ0NBVnNCYWdDVUFXd0JnUUNrQVlnQmlBQzZBWm9CbXdDN0FaNEJvd0M5QkZ3RVhBRERCRjRFWHdERUJQNEZEUURHQUFJQUR3QXhBRElBQUFBMEFEVUFBZ0dKQVpnQUJBR3pBYk1BRkFHNEFiZ0FGUUhOQWMwQUZnSFpBZDBBRndIc0FmQUFIQUh5QWZjQUlRSDZBZ1FBSndJR0FnNEFNZ0lZQWhrQU93TEdBczBBUFFMU0F0VUFSUVE4QkQ0QVNRQUJBQTRCc0FHMkFib0J5d0hrQWVVQjVnSG5BZWdCNlFIcUFlc0NFd0lhQUFJQUVRQUhBQWNBRGdOT0EwNEFBZ05pQTJJQUJBT3hBN0VBREFPMUE3VUFDZ1BEQThNQUJnUEdBOFlBQ0FQSkE4a0FFQVJIQkVjQUFRUkxCRXNBRHdVU0JSSUFBd1VtQlNZQUJRVmNCVndBRFFWZ0JXQUFDd1Z1Qlc0QUJ3VnhCWEVBQ1FWMEJYUUFFUUFDQVhNQUFnQUNBQUVBQXdBREFBSUFCQUFFQUFVQUJRQUhBQUlBQ0FBSUFBVUFDUUFLQUFJQUN3QUxBQU1BREFBTkFBSUFEZ0FQQUFRQUVBQVFBQVVBRVFBUkFBSUFFZ0FTQUFVQUV3QVRBQUlBRlFBVkFBWUFGZ0FXQUFjQUdBQVlBQWdBR2dBYUFBa0FHd0FiQUFvQUhBQWNBRmdBSFFBZEFBd0FIZ0FnQUYwQUlRQWhBQXNBSWdBaUFGa0FJd0FqQUF3QUpBQWtBRm9BSmdBbkFBd0FLQUFwQUZ3QUtnQXFBRjBBTEFBc0FGMEFMUUF0QUZ3QUxnQXVBRjRBTUFBd0FBMEFNUUF5QUE0QU5BQTBBQThBTlFBMUFGOEFOZ0JMQUFFQVRRQlJBQVVBVWdCbUFBSUFad0J0QUFVQWJnQjhBQUlBZlFCOUFBTUFmZ0NHQUFJQWh3Q1FBQVFBa1FDb0FBVUFxUUN1QUFJQXR3QzdBQVlBdkFEU0FBY0Ewd0RXQUFnQTF3RGVBQWtBM3dEaUFBb0E0d0RrQUFJQTVRRGxBQVVBNWdEOEFGZ0EvUUVXQUYwQkZ3RWRBRmtCSGdFaEFBd0JJZ0VqQUZvQkpBRW1BRnNCSndFb0FGb0JLUUVwQUZzQktnRXJBRm9CTEFFc0FGc0JMUUV0QUZ3Qk1BRXdBQXdCTVFFeEFGd0JNZ0U1QUF3Qk9nRkJBRndCUXdGRUFGd0JSUUZjQUYwQlhRRmlBRndCWXdGcEFGNEJhZ0ZyQUFzQmNnR0lBQTBCaVFHTUFBNEJqUUdVQUE4QmxRR1lBRjhCbVFHWkFGMEJtd0diQUYwQm5nR2pBQXNCdGdHMkFEY0J1QUc0QURRQnl3SExBRGNCelFITkFEUUIyUUhhQUJBQjJ3SGNBRElCM1FIZEFCQUI1QUhsQUJNQjVnSG1BQlFCNXdIbkFGVUI2QUhvQUJRQjZRSHBBRlVCN0FIc0FHQUI3UUh0QUdFQjdnSHVBR0FCN3dIdkFHRUI4QUh3QURVQjhnSDJBRFVCOXdIM0FCSUIrZ0g2QURZQit3SDdBQkVCL0FIOEFEWUIvUUg5QUJFQi9nSCtBRFlCL3dIL0FCRUNBQUlBQUdBQ0FRSUJBR0VDQWdJQ0FHQUNBd0lEQUdFQ0JBSUVBRFVDQmdJSUFEVUNDUUlKQURZQ0NnSUtBQkVDQ3dJTEFEWUNEQUlNQUJFQ0RRSU5BRFlDRGdJT0FCRUNFd0lUQUJVQ0dBSVpBRE1DR2dJYUFCVUNHd0ljQUZjQ0lBSXBBQmdDTkFJOUFCWUNaQUpsQUZZQ2FBSm9BRllDYkFKc0FGWUNid0p2QUJrQ2RBSjBBRllDZGdKMkFGWUNlQUo0QUZZQ2VRSjVBQmNDZWdKNkFGWUNld0o4QUJjQ2ZnSitBQmNDZ0FLQUFGWUNnZ0tFQUZZQ2lRS0pBQmtDamdLT0FGWUNrQUtRQUZZQ2tnS1VBRllDbFFLV0FCY0NtZ0tiQUZZQ3lnTEtBQklEVFFOTkFDSURUZ05QQUNNRFVBTlFBQ0lEVVFOUkFDTURVd05UQUNNRFZBTlVBQ1VEVlFOV0FDTURWd05YQUNJRFdBTlpBQ1FEV3dOYkFDVURYQU5kQUNNRFlBTmdBQ1lEYVFOcEFDTURiQU5zQUNZRGJnTnVBREFEY0FOd0FDZ0RjZ055QUNjRGRnTjJBQ2tEZVFONUFDb0RlZ042QUNnRGZBTjhBREFEZndOL0FEQURnUU9CQUNzRGdnT0NBREFEaEFPRUFDc0RoUU9IQURBRGlBT0lBQ2NEaWdPS0FDa0Rpd09MQURFRGpBT01BREFEalFPT0FDc0Rqd09QQURBRGtBT1FBREVEa1FPUkFDc0Rrd09VQURBRGxRT1ZBQ29Eb1FPaEFFQURvZ09rQUVNRHBRT2xBRUVEcGdPbUFFTURwd09uQUVRRHFRT3JBRU1EckFPc0FFRURyUU91QUVNRHJ3T3ZBRXNEc0FPeEFFTURzZ095QUVzRHN3T3pBRUlEdEFPMEFEb0R0Z08yQUVRRHR3TzNBRU1EdUFPNEFEa0R1UU82QUVNRHV3TzdBRUlEdkFPOUFFTUR2d08vQUVNRHdRUENBRU1Ed3dQREFFSUR4QVBFQUVNRHhRUEZBRXNEeHdQSUFFTUR5Z1BLQUVFRHl3UExBRU1EekFQTUFFSUR6UVBPQUVNRHp3UFBBRG9EMEFQUUFFTUQwZ1BTQUVzRDFBUFZBRU1EMWdQV0FFUUQyQVBZQUVNRDJRUFpBRUlEMmdQYUFFTUQyd1BiQUVzRDNBUGRBRHNEM2dQZUFFUUQzd1BmQURrRDRBUGhBRU1ENGdQaUFFUUQ0d1BqQUVBRDVRUGxBRU1ENWdQbUFFc0Q1d1BuQUVNRDZBUHBBRXNENmdQckFEb0Q3QVBzQUdJRDdnUHZBRlFEOFFQeEFGSUQ4Z1B5QUVnRDh3UHpBR01EOUFQMkFGUUQ5d1AzQUV3RCtBUDVBRlFEK2dQNkFGSUQrd1A3QUZRRC9RUDlBRklEL2dQK0FFWUQvd1AvQUQwRUFBUUFBRklFQVFRQkFFZ0VBZ1FDQUZRRUF3UURBRHdFQkFRRkFGUUVCZ1FHQUVZRUJ3UUlBRlFFQ1FRSkFHTUVDZ1FLQUZRRURBUU5BRklFRGdRT0FFVUVEd1FQQUZRRUVBUVFBRklFRWdRVEFGTUVGUVFWQUV3RUZnUVdBRlFFRndRWEFFVUVHQVFaQUZRRUdnUWFBRDBFR3dRYkFGUUVIUVFkQUZJRUhnUWVBRWNFSHdRZ0FGUUVJUVFoQUVnRUlnUWlBR01FSXdRakFGUUVKQVFrQUVZRUpRUWxBRlFFSmdRbUFGSUVKd1FvQUVjRUtRUXBBRWdFS2dRcUFEd0VLd1FyQUVVRUxBUXNBRWdFTFFRdEFFVUVMZ1F2QUdJRU1BUXhBRklFTWdReUFGUUVNd1EwQUZJRU5RUTJBRDBFUEFROUFEVUVQZ1ErQURNRVB3UkFBRmNFUmdSR0FCb0VSd1JIQUJzRVNRUkxBQnNFVFFST0FCc0VUd1JQQUJ3RVVBUlJBQnNFVWdSVEFCMEVWUVJWQUJzRVZ3UlhBQnNFV1FSWkFCNEVXZ1JhQUI4RVhBUmNBQ0FFWGdSZUFDRUVZQVIxQUJvRWZBU1FBQnNFbVFTbkFCc0VxQVNvQUJ3RXFRU3hBQnNFc2dTN0FCMEUxQVRaQUJzRTRRVG1BQjRFNXdUOUFCOEUvZ1VCQUNBRkFnVUpBQ0VGRGdVUEFCc0ZFUVVSQUN3RkVnVVRBQzBGRkFVVUFDd0ZGUVVWQUMwRkZ3VVhBQzBGR0FVWUFEZ0ZHUVVhQUMwRkd3VWJBQ3dGSEFVZEFDNEZId1VmQURnRklBVWhBQzBGSkFVa0FDOEZLUVVwQUMwRktnVXFBQzhGVEFWTUFFa0ZUUVZQQUU4RlVBVlFBRTBGVVFWUkFFOEZVZ1ZTQUZFRlZBVldBRThGVndWWEFFMEZXQVZaQUU4RldnVmFBRkFGV3dWY0FFOEZYUVZkQUZBRlhnVmVBRTRGWHdWZkFFb0ZZUVZoQUZFRllnVmlBRThGWXdWakFENEZaQVZsQUU4RlpnVm1BRTRGWndWb0FFOEZhZ1ZxQUU4RmJBVnRBRThGYmdWdUFFNEZid1Z2QUU4RmNBVndBRkFGY2dWekFFOEZkUVYxQUUwRmRnVjJBRThGZHdWM0FFNEZlQVY1QUU4RmVnVjZBRW9GZXdWN0FFOEZmUVY5QUZBRmZ3V0FBRThGZ1FXQkFGRUZnd1dEQUU4RmhBV0VBRTRGaFFXRkFFOEZoZ1dHQUZBRmh3V0lBRDhGaVFXSkFGRUZpZ1dLQUQ0Rml3V01BRThGalFXTkFGRUZqZ1dPQUVrRmtBV1FBRThGa1FXUkFGQUZrZ1dTQUU4Rmt3V1VBRkFGbFFXV0FFb0FBZ0FWQUJFQUVRQUNBQmNBRndBUUFCa0FHUUFTQU9RQTVBQU1BMTBEWFFBSUEyRURZUUFFQTJNRFl3QUdBOHdEekFBT0E5RUQwUUFVQStBRDRBQUtCRlVFVlFBREJGc0VXd0FSQkYwRVhRQVRCUThGRHdBTkJSb0ZHZ0FCQlNFRklRQUpCU1VGSlFBRkJTY0ZKd0FIQlhjRmR3QVBCWHdGZkFBVkJZc0Zpd0FMQUFJQk5nQUNBQUlBRkFBREFBTUFGUUFFQUFRQVRBQUZBQWNBRlFBSUFBZ0FUQUFKQUFvQUZRQUxBQXNBRmdBTUFBMEFGUUFPQUE4QVN3QVFBQkFBVEFBUkFCRUFGUUFTQUJJQVRBQVRBQk1BRlFBVUFCUUFGd0FWQUJVQUdBQVdBQllBR1FBWUFCZ0FHZ0FhQUJvQUd3QWJBQnNBSEFBY0FCd0FVZ0FkQUIwQVRRQWVBQ0FBSUFBaEFDRUFVd0FpQUNJQUhRQWpBQ01BVFFBa0FDUUFWQUFsQUNVQVZRQW1BQ2NBVFFBb0FDa0FId0FxQUNvQUlBQXNBQ3dBSUFBdEFDMEFId0F1QUM0QVZnQXZBQzhBSVFBd0FEQUFWd0F4QURJQUlnQTBBRFFBSXdBMUFEVUFXQUEyQUVzQUZBQk5BRkVBVEFCU0FHWUFGUUJuQUcwQVRBQnVBSHdBRlFCOUFIMEFGZ0IrQUlZQUZRQ0hBSkFBU3dDUkFLZ0FUQUNwQUs0QUZRQ3ZBTFVBRndDM0FMc0FHQUM4QU5JQUdRRFRBTllBR2dEWEFONEFHd0RmQU9JQUhBRGpBT1FBRlFEbEFPVUFUQURtQVB3QVVnRDlBUllBSUFFWEFSMEFIUUVlQVNFQVRRRWlBU01BVkFFa0FTWUFIZ0VuQVNnQVZBRXBBU2tBSGdFcUFTc0FWQUVzQVN3QUhnRXRBUzBBSHdFdUFTOEFWUUV3QVRBQVRRRXhBVEVBSHdFeUFUa0FUUUU2QVVFQUh3RkRBVVFBSHdGRkFWd0FJQUZkQVdJQUh3RmpBV2tBVmdGcUFXc0FVd0ZzQVhFQUlRRnlBWWdBVndHSkFZd0FJZ0dOQVpRQUl3R1ZBWmdBV0FHWkFaa0FJQUdiQVpzQUlBR2VBYU1BVXdHd0FiQUFFUUcyQWJZQURnRzRBYmdBQ3dHNkFib0FFUUhMQWNzQURnSE5BYzBBQ3dIWkFkb0FKUUhiQWR3QUpBSGRBZDBBSlFIa0FlVUFKd0htQWVZQUtBSG5BZWNBS1FIb0FlZ0FLQUhwQWVrQUtRSHNBZXdBV1FIdEFlMEFQQUh1QWU0QVdRSHZBZThBUEFId0FmQUFEQUh5QWZZQURBSDNBZmNBRFFINkFmb0FXZ0g3QWZzQUpnSDhBZndBV2dIOUFmMEFKZ0grQWY0QVdnSC9BZjhBSmdJQUFnQUFXUUlCQWdFQVBBSUNBZ0lBV1FJREFnTUFQQUlFQWdRQURBSUdBZ2dBREFJSkFna0FXZ0lLQWdvQUpnSUxBZ3NBV2dJTUFnd0FKZ0lOQWcwQVdnSU9BZzRBSmdJVEFoTUFLZ0lZQWhrQUNnSWFBaG9BS2dJYkFod0FFQUlnQWlrQU5nSTBBajBBS3dKa0FtVUFMUUpvQW1nQUxRSnNBbXdBTFFKdkFtOEFMQUowQW5RQUxRSjJBbllBTFFKNEFuZ0FMUUo1QW5rQUR3SjZBbm9BTFFKN0Fud0FEd0orQW40QUR3S0FBb0FBTFFLQ0FvUUFMUUtKQW9rQUxBS09BbzRBTFFLUUFwQUFMUUtTQXBRQUxRS1ZBcFlBRHdLYUFwc0FMUUxLQXNvQURRTk5BMDBBQVFOT0EwOEFOQU5RQTFBQUFRTlJBMUVBTkFOVEExTUFOQU5VQTFRQUFnTlZBMVlBTkFOWEExY0FBUU5ZQTFrQU5RTmJBMXNBQWdOY0ExMEFOQU5nQTJBQUF3TnBBMmtBTkFOc0Eyd0FBd051QTI0QUJBTndBM0FBQlFOeUEzSUFPZ04wQTNRQU93TjJBM1lBQmdOM0EzY0FPd041QTNrQUNBTjZBM29BQlFOOEEzd0FCQU4vQTM4QUJBT0JBNEVBQ1FPQ0E0SUFCQU9FQTRRQUNRT0ZBNGNBQkFPSUE0Z0FPZ09KQTRrQU93T0tBNG9BQmdPTEE0c0FCd09NQTR3QUJBT05BNDRBQ1FPUEE0OEFCQU9RQTVBQUJ3T1JBNUVBQ1FPVEE1UUFCQU9WQTVVQUNBT2lBNlFBV3dPbUE2WUFXd09wQTZzQVd3T3RBNjRBV3dPdkE2OEFQd093QTdFQVd3T3lBN0lBUHdPekE3TUFQZ08wQTdRQVFBTzNBN2NBV3dPNEE3Z0FQUU81QTdvQVd3TzdBN3NBUGdPOEE3MEFXd08vQTc4QVd3UEJBOElBV3dQREE4TUFQZ1BFQThRQVd3UEZBOFVBUHdQSEE4Z0FXd1BMQThzQVd3UE1BOHdBUGdQTkE4NEFXd1BQQTg4QVFBUFFBOUFBV3dQU0E5SUFQd1BVQTlVQVd3UFlBOWdBV3dQWkE5a0FQZ1BhQTlvQVd3UGJBOXNBUHdQY0E5MEFRUVBmQTk4QVBRUGdBK0VBV3dQbEErVUFXd1BtQStZQVB3UG5BK2NBV3dQb0Era0FQd1BxQStzQVFBUCtBLzRBUXdQL0EvOEFSQVFEQkFNQVFnUUdCQVlBUXdRYUJCb0FSQVFlQkI0QVJRUWtCQ1FBUXdRbkJDZ0FSUVFxQkNvQVFnUTFCRFlBUkFROEJEMEFEQVErQkQ0QUNnUS9CRUFBRUFSR0JFWUFMZ1JIQkVjQVRnUklCRWdBVUFSSkJFc0FUZ1JNQkV3QVVBUk5CRTRBVGdSUUJGRUFUZ1JTQkZNQVR3UlVCRlFBVUFSVkJGVUFUZ1JXQkZZQVVBUlhCRmNBVGdSWUJGZ0FMd1JaQkZrQU1BUmFCRm9BTVFSY0JGd0FVUVJlQkY0QU1nUmZCRjhBTXdSZ0JIVUFMZ1IzQkhzQVVBUjhCSkFBVGdTUkJKVUFVQVNYQkpnQVVBU1pCS2NBVGdTcEJMRUFUZ1N5QkxzQVR3UzhCTk1BVUFUVUJOa0FUZ1RhQk9BQUx3VGhCT1lBTUFUbkJQMEFNUVQrQlFFQVVRVUNCUWtBTWdVS0JRMEFNd1VPQlE4QVRnVVFCUkFBVUFVUkJSRUFFZ1VTQlJNQU53VVVCUlFBRWdVVkJSVUFOd1VYQlJjQU53VVlCUmdBRXdVWkJSb0FOd1ViQlJzQUVnVWNCUjBBT0FVZkJSOEFFd1VnQlNFQU53VWtCU1FBT1FVcEJTa0FOd1VxQlNvQU9RVXJCU3NBTHdWYUJWb0FTQVZkQlYwQVNBVmVCVjRBUndWZkJWOEFTUVZqQldNQVJnVm1CV1lBUndWdUJXNEFSd1Z3QlhBQVNBVjNCWGNBUndWNkJYb0FTUVY5QlgwQVNBV0VCWVFBUndXR0JZWUFTQVdIQllnQVNnV0tCWW9BUmdXUkJaRUFTQVdUQlpRQVNBV1ZCWllBU1FBQ0FCb0Jhd0ZyQUJRQm1RR1pBQXdCcEFHa0FBRUJ0QUcwQUJJQnRRRzFBQThCdVFHNUFCa0J5UUhKQUJNQnlnSEtBQkFCemdIT0FCb0Izd0hmQUEwQjRBSGdBQTRCK0FINEFBWUNFUUlSQUFRQ0hRSWRBQUlDSGdJZUFBTUNud0tmQUFjQ29nS2lBQkVEYndOdkFBVURjUU54QUFrRGR3TjNBQmNEZUFONEFCZ0Rnd09EQUFnRURnUU9BQW9FRVFRUkFBc0VGQVFVQUJZRUhnUWVBQlVBQWdFbEFBSUFBZ0FhQUFNQUF3QWhBQVFBQkFBaUFBVUFCd0FoQUFnQUNBQWlBQWtBQ2dBaEFBc0FDd0FNQUF3QURRQWhBQTRBRHdCTUFCQUFFQUFpQUJFQUVRQWhBQklBRWdBaUFCTUFFd0FoQUJVQUZRQU5BQllBRmdBT0FCZ0FHQUFQQUJvQUdnQVFBQnNBR3dBakFCd0FIQUE2QUIwQUhRQWNBQjRBSUFBUkFDRUFJUUE3QUNJQUlnQWJBQ01BSXdBY0FDUUFKQUE0QUNVQUpRQW1BQ1lBSndBY0FDZ0FLUUJOQUNvQUtnQVJBQ3dBTEFBUkFDMEFMUUJOQUM4QUx3QW5BREFBTUFBOEFERUFNZ0FvQURRQU5BQXBBRFlBU3dBYUFFMEFVUUFpQUZJQVpnQWhBR2NBYlFBaUFHNEFmQUFoQUgwQWZRQU1BSDRBaGdBaEFJY0FrQUJNQUpFQXFBQWlBS2tBcmdBaEFMY0F1d0FOQUx3QTBnQU9BTk1BMWdBUEFOY0EzZ0FRQU44QTRnQWpBT01BNUFBaEFPVUE1UUFpQU9ZQS9BQTZBUDBCRmdBUkFSY0JIUUFiQVI0QklRQWNBU0lCSXdBNEFTY0JLQUE0QVNvQkt3QTRBUzBCTFFCTkFTNEJMd0FtQVRBQk1BQWNBVEVCTVFCTkFUSUJPUUFjQVRvQlFRQk5BVU1CUkFCTkFVVUJYQUFSQVYwQllnQk5BV29CYXdBN0FXd0JjUUFuQVhJQmlBQThBWWtCakFBb0FZMEJsQUFwQVprQm1RQVJBWnNCbXdBUkFaNEJvd0E3QWJBQnNBQXRBYllCdGdBV0FiZ0J1QUF1QWJvQnVnQXRBY3NCeXdBV0FjMEJ6UUF1QWRrQjJnQVNBZHNCM0FCSEFkMEIzUUFTQWVRQjVRQXFBZVlCNWdBR0FlY0I1d0FyQWVnQjZBQUdBZWtCNlFBckFlb0I2d0FzQWV3QjdBQVRBZTRCN2dBVEFmQUI4QUFVQWZJQjlnQVVBZmNCOXdBRkFmb0IrZ0JCQWZzQit3QVZBZndCL0FCQkFmMEIvUUFWQWY0Qi9nQkJBZjhCL3dBVkFnQUNBQUFUQWdJQ0FnQVRBZ1FDQkFBVUFnWUNDQUFVQWdrQ0NRQkJBZ29DQ2dBVkFnc0NDd0JCQWd3Q0RBQVZBZzBDRFFCQkFnNENEZ0FWQWhNQ0V3QXpBaG9DR2dBekFoc0NIQUEzQWlBQ0tRQTFBalFDUFFBNUFtUUNaUUEyQW1ZQ1p3QkNBbWdDYUFBMkFta0Nhd0JDQW13Q2JBQTJBbTBDYmdCQ0FtOENid0FIQW5BQ2N3QkNBblFDZEFBMkFuVUNkUUJDQW5ZQ2RnQTJBbmNDZHdCQ0FuZ0NlQUEyQW5rQ2VRQTBBbm9DZWdBMkFuc0NmQUEwQW4wQ2ZRQkNBbjRDZmdBMEFuOENmd0JDQW9BQ2dBQTJBb0VDZ1FCQ0FvSUNoQUEyQW9VQ2hRQkNBb1lDaGdCSUFvY0NpQUJDQW9rQ2lRQUhBb29DalFCQ0FvNENqZ0EyQW84Q2p3QklBcEFDa0FBMkFwRUNrUUJDQXBJQ2xBQTJBcFVDbGdBMEFwY0Nsd0JDQXBnQ21BQklBcGtDbVFCQ0Fwb0Ntd0EyQXJzQ3hRQStBc1lDeHdBL0FzZ0N5QUE5QXNrQ3lRQS9Bc29DeWdBRkFzc0N5d0JBQXN3Q3pBQS9BczBDelFBOUF0SUMwZ0JBQXRNQzB3QS9BdFFDMUFCQUF0VUMxUUEvQTAwRFRRQVpBMDREVHdBZ0ExQURVQUFaQTFFRFVRQWdBMU1EVXdBZ0ExUURWQUFCQTFVRFZnQWdBMWNEVndBWkExZ0RXUUJLQTFzRFd3QUJBMXdEWFFBZ0EyQURZQUFDQTJrRGFRQWdBMndEYkFBQ0EyNERiZ0FMQTNBRGNBQURBM0lEY2dBdkEzUURkQUJMQTNZRGRnQXdBM2NEZHdCTEEzb0RlZ0FEQTN3RGZBQUxBMzhEZndBTEE0RURnUUFFQTRJRGdnQUxBNFFEaEFBRUE0VURod0FMQTRnRGlBQXZBNGtEaVFCTEE0b0RpZ0F3QTRzRGl3QXhBNHdEakFBTEE0MERqZ0FFQTQ4RGp3QUxBNUFEa0FBeEE1RURrUUFFQTVNRGxBQUxBNkVEb1FBWEE2SURwQUFkQTZZRHBnQWRBNmNEcHdBZkE2a0Rxd0FkQTYwRHJnQWRBNjhEcndBZUE3QURzUUFkQTdJRHNnQWVBN01Ec3dBSUE3WUR0Z0FmQTdjRHR3QWRBN2tEdWdBZEE3c0R1d0FJQTd3RHZRQWRBNzhEdndBZEE4RUR3Z0FkQThNRHd3QUlBOFFEeEFBZEE4VUR4UUFlQThjRHlBQWRBOHNEeXdBZEE4d0R6QUFJQTgwRHpnQWRBOUFEMEFBZEE5SUQwZ0FlQTlRRDFRQWRBOVlEMWdBZkE5Z0QyQUFkQTlrRDJRQUlBOW9EMmdBZEE5c0Qyd0FlQTl3RDNRQUpBOTREM2dBZkErQUQ0UUFkQStJRDRnQWZBK01ENHdBWEErVUQ1UUFkQStZRDVnQWVBK2NENXdBZEErZ0Q2UUFlQSt3RDdBQkRBKzREN3dCSkEvRUQ4UUFLQS9JRDhnQkdBL1FEOWdCSkEvY0Q5d0F5QS9nRCtRQkpBL29EK2dBS0Evc0Qrd0JKQS8wRC9RQUtBLzhEL3dBa0JBQUVBQUFLQkFFRUFRQkdCQUlFQWdCSkJBTUVBd0JFQkFRRUJRQkpCQWNFQ0FCSkJBb0VDZ0JKQkF3RURRQUtCQTRFRGdBWUJBOEVEd0JKQkJBRUVBQUtCQklFRXdCRkJCVUVGUUF5QkJZRUZnQkpCQmNFRndBWUJCZ0VHUUJKQkJvRUdnQWtCQnNFR3dCSkJCMEVIUUFLQkI0RUhnQWxCQjhFSUFCSkJDRUVJUUJHQkNNRUl3QkpCQ1VFSlFCSkJDWUVKZ0FLQkNjRUtBQWxCQ2tFS1FCR0JDb0VLZ0JFQkNzRUt3QVlCQ3dFTEFCR0JDMEVMUUFZQkM0RUx3QkRCREFFTVFBS0JESUVNZ0JKQkRNRU5BQUtCRFVFTmdBa0JEd0VQUUFVQkQ4RVFBQTNBQUlBR0FBQkFBRUFEUUFzQUN3QUJBQXpBRE1BRkFHeEFiRUFBUUd5QWJJQUVRRzNBYmNBQ1FIRkFjVUFGd0hHQWNZQUFnSEhBY2NBRWdISUFjZ0FFQUhNQWN3QUNnSGhBZUVBQlFIaUFlSUFCZ0hqQWVNQUJ3SDVBZmtBRXdJUEFnOEFEQUtnQXFBQURnS3ZBcThBQ0FOekEzTUFHQU4xQTNVQUR3TjdBM3NBRlFOL0EzOEFDd1FjQkJ3QUZnUXRCQzBBQXdBQ0FSRUFBZ0FDQUFVQUF3QURBRFFBQkFBRUFBWUFCUUFIQURRQUNBQUlBQVlBQ1FBS0FEUUFDd0FMQURVQURBQU5BRFFBRGdBUEFEWUFFQUFRQUFZQUVRQVJBRFFBRWdBU0FBWUFFd0FUQURRQUZBQVVBRW9BRlFBVkFCUUFGZ0FXQUJVQUdBQVlBQWNBR2dBYUFCWUFIQUFjQUJjQUhRQWRBRGNBSGdBZ0FCZ0FJUUFoQURzQUlnQWlBQWdBSXdBakFEY0FKUUFsQURBQUpnQW5BRGNBS0FBcEFFVUFLZ0FxQUJnQUxBQXNBQmdBTFFBdEFFVUFMZ0F1QUR3QUx3QXZBQWtBTUFBd0FCa0FNUUF5QUJvQU5BQTBBQnNBTlFBMUFEMEFOZ0JMQUFVQVRRQlJBQVlBVWdCbUFEUUFad0J0QUFZQWJnQjhBRFFBZlFCOUFEVUFmZ0NHQURRQWh3Q1FBRFlBa1FDb0FBWUFxUUN1QURRQXJ3QzFBRW9BdHdDN0FCUUF2QURTQUJVQTB3RFdBQWNBMXdEZUFCWUE0d0RrQURRQTVRRGxBQVlBNWdEOEFCY0EvUUVXQUJnQkZ3RWRBQWdCSGdFaEFEY0JKQUVtQUVRQktRRXBBRVFCTEFFc0FFUUJMUUV0QUVVQkxnRXZBREFCTUFFd0FEY0JNUUV4QUVVQk1nRTVBRGNCT2dGQkFFVUJRd0ZFQUVVQlJRRmNBQmdCWFFGaUFFVUJZd0ZwQUR3QmFnRnJBRHNCYkFGeEFBa0JjZ0dJQUJrQmlRR01BQm9CalFHVUFCc0JsUUdZQUQwQm1RR1pBQmdCbXdHYkFCZ0JuZ0dqQURzQnNBR3dBRXNCdGdHMkFDa0J1QUc0QUIwQnVnRzZBRXNCeXdITEFDa0J6UUhOQUIwQjJRSGFBREVCMndIY0FCd0IzUUhkQURFQjVBSGxBQ1VCNWdIbUFDWUI1d0huQUNjQjZBSG9BQ1lCNlFIcEFDY0I2Z0hyQUVrQjdBSHNBQ0VCN1FIdEFEb0I3Z0h1QUNFQjd3SHZBRG9COEFId0FDSUI4Z0gyQUNJQjl3SDNBQ01CK2dINkFFZ0Ird0g3QURnQi9BSDhBRWdCL1FIOUFEZ0IvZ0grQUVnQi93SC9BRGdDQUFJQUFDRUNBUUlCQURvQ0FnSUNBQ0VDQXdJREFEb0NCQUlFQUNJQ0JnSUlBQ0lDQ1FJSkFFZ0NDZ0lLQURnQ0N3SUxBRWdDREFJTUFEZ0NEUUlOQUVnQ0RnSU9BRGdDRXdJVEFDZ0NHZ0lhQUNnQ0d3SWNBQzhDSUFJcEFDMENOQUk5QUVZQ1pBSmxBQzRDWmdKbkFDb0NhQUpvQUM0Q2FRSnJBQ29DYkFKc0FDNENiUUp1QUNvQ2J3SnZBRGtDY0FKekFDb0NkQUowQUM0Q2RRSjFBQ29DZGdKMkFDNENkd0ozQUNvQ2VBSjRBQzRDZVFKNUFDd0NlZ0o2QUM0Q2V3SjhBQ3dDZlFKOUFDb0NmZ0orQUN3Q2Z3Si9BQ29DZ0FLQUFDNENnUUtCQUNvQ2dnS0VBQzRDaFFLRkFDb0NoZ0tHQUNzQ2h3S0lBQ29DaVFLSkFEa0NpZ0tOQUNvQ2pnS09BQzRDandLUEFDc0NrQUtRQUM0Q2tRS1JBQ29Da2dLVUFDNENsUUtXQUN3Q2x3S1hBQ29DbUFLWUFDc0NtUUtaQUNvQ21nS2JBQzRDdXdMRkFCOEN4Z0xIQUNRQ3lBTElBQ0FDeVFMSkFDUUN5Z0xLQUNNQ3l3TExBQjRDekFMTUFDUUN6UUxOQUNBQzBnTFNBQjRDMHdMVEFDUUMxQUxVQUI0QzFRTFZBQ1FEVFFOTkFBTURVQU5RQUFNRFZBTlVBQVFEVndOWEFBTURXd05iQUFRRFlBTmdBQkFEYkFOc0FCQURiZ051QUJFRGNBTndBQklEY2dOeUFFMERkQU4wQUVNRGRnTjJBRTREZHdOM0FFTURlZ042QUJJRGZBTjhBQkVEZndOL0FCRURnUU9CQUJNRGdnT0NBQkVEaEFPRUFCTURoUU9IQUJFRGlBT0lBRTBEaVFPSkFFTURpZ09LQUU0RGl3T0xBRXdEakFPTUFCRURqUU9PQUJNRGp3T1BBQkVEa0FPUUFFd0RrUU9SQUJNRGt3T1VBQkVEb1FPaEFBRURwUU9sQUQ0RHJBT3NBRDREcndPdkFBSURzZ095QUFJRHN3T3pBQW9EdXdPN0FBb0R3d1BEQUFvRHhRUEZBQUlEeWdQS0FENER6QVBNQUFvRDBnUFNBQUlEMlFQWkFBb0Qyd1BiQUFJRDNBUGRBQXNENHdQakFBRUQ1Z1BtQUFJRDZBUHBBQUlEN0FQc0FBd0Q3Z1B2QUVFRDhRUHhBQTBEOGdQeUFFSUQ5QVAyQUVFRDl3UDNBRDhEK0FQNUFFRUQrZ1A2QUEwRCt3UDdBRUVEL1FQOUFBMEQvZ1ArQURNRC93UC9BQTRFQUFRQUFBMEVBUVFCQUVJRUFnUUNBRUVFQXdRREFESUVCQVFGQUVFRUJnUUdBRE1FQndRSUFFRUVDZ1FLQUVFRURBUU5BQTBFRGdRT0FFY0VEd1FQQUVFRUVBUVFBQTBFRWdRVEFFQUVGUVFWQUQ4RUZnUVdBRUVFRndRWEFFY0VHQVFaQUVFRUdnUWFBQTRFR3dRYkFFRUVIUVFkQUEwRUhnUWVBQThFSHdRZ0FFRUVJUVFoQUVJRUl3UWpBRUVFSkFRa0FETUVKUVFsQUVFRUpnUW1BQTBFSndRb0FBOEVLUVFwQUVJRUtnUXFBRElFS3dRckFFY0VMQVFzQUVJRUxRUXRBRWNFTGdRdkFBd0VNQVF4QUEwRU1nUXlBRUVFTXdRMEFBMEVOUVEyQUE0RVBBUTlBQ0lFUHdSQUFDOEFBZ0JvQTZJRG93QVdBNlFEcEFBSUE2VURwUUFDQTZZRHBnQUtBNmNEcHdBTUE2Z0RxQUFXQTZrRHFnQUVBNnNEcXdBTUE2d0RyZ0FFQTY4RHJ3QU9BN0FEc0FBRUE3SURzZ0FHQTdNRHN3QUlBN1FEdEFBU0E3WUR0Z0FNQTdjRHR3QUNBN2dEdVFBRUE3b0R1Z0FDQTdzRHV3QVFBN3dEdkFBRUE3MER2UUFRQTc0RHZ3QU9BOEFEd0FBRUE4RUR3Z0FLQThRRHhBQUlBOFVEeFFBR0E4Y0R5QUFFQThvRHl3QVFBODBEelFBTUE4NER6Z0FFQTg4RHp3QVNBOUFEMEFBRUE5SUQwZ0FPQTlNRDB3QVNBOVFEMVFBSUE5WUQxZ0FNQTljRDF3QVdBOWdEMlFBTUE5b0QyZ0FDQTlzRDJ3QUdBOXdEM1FBVUE5NEQzZ0FNQTk4RDN3QUNBK0VENFFBRUErSUQ0Z0FNQStRRDVRQUtBK1lENWdBT0ErY0Q1d0FFQStnRDZRQU9BK29ENndBU0Erd0Q3QUFZQkM0RUxnQVlCVXdGVEFBQkJVMEZUZ0FYQlU4RlR3QUpCVkFGVUFBREJWRUZVUUFMQlZJRlVnQU5CVk1GVXdBWEJWUUZWUUFGQlZZRlZnQU5CVmNGV1FBRkJWb0ZXZ0FQQlZzRld3QUZCVjBGWFFBSEJWNEZYZ0FKQlY4Rlh3QVRCV0VGWVFBTkJXSUZZZ0FEQldNRlpBQUZCV1VGWlFBREJXWUZaZ0FSQldjRlp3QUZCV2dGYUFBUkJXa0ZhZ0FQQldzRmF3QUZCV3dGYlFBTEJXOEZid0FKQlhBRmNBQUhCWElGY3dBRkJYVUZkZ0FSQlhnRmVBQU5CWGtGZVFBRkJYb0ZlZ0FUQlhzRmV3QUZCWDBGZlFBUEJYNEZmZ0FUQlg4RmdBQUpCWUVGZ1FBTkJZSUZnZ0FYQllNRmhBQU5CWVVGaFFBREJZWUZoZ0FIQlljRmlBQVZCWWtGaVFBTkJZb0ZpZ0FEQll3RmpBQUZCWTBGalFBTkJZNEZqZ0FCQlk4RmtBQUxCWkVGa1FBUEJaSUZrZ0FGQlpNRmxBQVBCWlVGbGdBVEFBSUJHQUFCQUFFQVRRR2tBYVFBU1FHd0FiQUFId0d4QWJFQVBRR3lBYklBUGdHekFiTUFLd0cwQWJRQUp3RzFBYlVBUEFHMkFiWUFHQUczQWJjQUtnRzRBYmdBT2dHNUFia0FLUUc2QWJvQUh3SExBY3NBR0FITUFjd0FYUUhOQWMwQU9nSE9BYzRBWEFIWkFkb0FSQUhiQWR3QVZ3SGRBZDBBUkFIa0FlVUFGQUhtQWVZQUZRSG5BZWNBRmdIb0FlZ0FGUUhwQWVrQUZnSHNBZXdBRHdIdEFlMEFSUUh1QWU0QUR3SHZBZThBUlFId0FmQUFFQUh5QWZZQUVBSDNBZmNBRXdINEFmZ0FKUUg1QWZrQVB3SDZBZm9BRVFIN0Fmc0FFZ0g4QWZ3QUVRSDlBZjBBRWdIK0FmNEFFUUgvQWY4QUVnSUFBZ0FBRHdJQkFnRUFSUUlDQWdJQUR3SURBZ01BUlFJRUFnUUFFQUlHQWdnQUVBSUpBZ2tBRVFJS0Fnb0FFZ0lMQWdzQUVRSU1BZ3dBRWdJTkFnMEFFUUlPQWc0QUVnSVBBZzhBVEFJUkFoRUFJd0lUQWhNQUZ3SVlBaGtBRGdJYUFob0FGd0liQWh3QUhnSWRBaDBBU2dJZUFoNEFVZ0lnQWlrQUhBSTBBajBBUmdKa0FtVUFIUUptQW1jQUdRSm9BbWdBSFFKcEFtc0FHUUpzQW13QUhRSnRBbTRBR1FKdkFtOEFPd0p3QW5NQUdRSjBBblFBSFFKMUFuVUFHUUoyQW5ZQUhRSjNBbmNBR1FKNEFuZ0FIUUo1QW5rQUd3SjZBbm9BSFFKN0Fud0FHd0o5QW4wQUdRSitBbjRBR3dKL0FuOEFHUUtBQW9BQUhRS0JBb0VBR1FLQ0FvUUFIUUtGQW9VQUdRS0dBb1lBR2dLSEFvZ0FHUUtKQW9rQU93S0tBbzBBR1FLT0FvNEFIUUtQQW84QUdnS1FBcEFBSFFLUkFwRUFHUUtTQXBRQUhRS1ZBcFlBR3dLWEFwY0FHUUtZQXBnQUdnS1pBcGtBR1FLYUFwc0FIUUxLQXNvQUV3T2hBNkVBQVFPaUE2UUFCQU9sQTZVQVFBT21BNllBQkFPbkE2Y0FVd09vQTZnQVZnT3BBNnNBQkFPc0E2d0FRQU90QTY0QUJBT3ZBNjhBQlFPd0E3RUFCQU95QTdJQUJRT3pBN01BQXdPMEE3UUFCZ08xQTdVQUlBTzJBN1lBVXdPM0E3Y0FCQU80QTdnQUFnTzVBN29BQkFPN0E3c0FBd084QTcwQUJBTytBNzRBVmdPL0E3OEFCQVBBQThBQVNBUEJBOElBQkFQREE4TUFBd1BFQThRQUJBUEZBOFVBQlFQR0E4WUFXQVBIQThnQUJBUEpBOGtBTndQS0E4b0FRQVBMQThzQUJBUE1BOHdBQXdQTkE4NEFCQVBQQTg4QUJnUFFBOUFBQkFQUkE5RUFJZ1BTQTlJQUJRUFRBOU1BSVFQVUE5VUFCQVBXQTlZQVV3UFhBOWNBVmdQWUE5Z0FCQVBaQTlrQUF3UGFBOW9BQkFQYkE5c0FCUVBjQTkwQUJ3UGVBOTRBVXdQZkE5OEFBZ1BnQStFQUJBUGlBK0lBVXdQakErTUFBUVBrQStRQVJ3UGxBK1VBQkFQbUErWUFCUVBuQStjQUJBUG9BK2tBQlFQcUErc0FCZ1BzQSt3QUNBUHRBKzBBSkFQdUErOEFRZ1B3QS9BQVN3UHhBL0VBQ2dQeUEvSUFRd1B6QS9NQU5nUDBBL1lBUWdQM0EvY0FRUVA0QS9rQVFnUDZBL29BQ2dQN0Evc0FRZ1A4QS93QUpnUDlBLzBBQ2dQK0EvNEFDd1AvQS84QURBUUFCQUFBQ2dRQkJBRUFRd1FDQkFJQVFnUURCQU1BQ1FRRUJBVUFRZ1FHQkFZQUN3UUhCQWdBUWdRSkJBa0FOZ1FLQkFvQVFnUUxCQXNBVGdRTUJBMEFDZ1FPQkE0QVd3UVBCQThBUWdRUUJCQUFDZ1FSQkJFQU9BUVVCQlFBS0FRVkJCVUFRUVFXQkJZQVFnUVhCQmNBV3dRWUJCa0FRZ1FhQkJvQURBUWJCQnNBUWdRY0JCd0FMQVFkQkIwQUNnUWVCQjRBRFFRZkJDQUFRZ1FoQkNFQVF3UWlCQ0lBTmdRakJDTUFRZ1FrQkNRQUN3UWxCQ1VBUWdRbUJDWUFDZ1FuQkNnQURRUXBCQ2tBUXdRcUJDb0FDUVFyQkNzQVd3UXNCQ3dBUXdRdEJDMEFXd1F1QkM4QUNBUXdCREVBQ2dReUJESUFRZ1F6QkRRQUNnUTFCRFlBREFROEJEMEFFQVErQkQ0QURnUS9CRUFBSGdWTUJVd0FMUVZOQlU4QVZBVlFCVkFBVHdWUkJWRUFWQVZTQlZJQVZRVlRCVk1BV1FWVUJWWUFWQVZYQlZjQVR3VllCVmtBVkFWYUJWb0FNQVZiQlZ3QVZBVmRCVjBBTUFWZUJWNEFMd1ZmQlY4QU1RVmdCV0FBTXdWaEJXRUFWUVZpQldJQVZBVmpCV01BTGdWa0JXVUFWQVZtQldZQUx3Vm5CV2dBVkFWcEJXa0FXUVZxQldvQVZBVnJCV3NBVVFWc0JXMEFWQVZ1Qlc0QUx3VnZCVzhBVkFWd0JYQUFNQVZ4QlhFQVdnVnlCWE1BVkFWMEJYUUFPUVYxQlhVQVR3VjJCWFlBVkFWM0JYY0FMd1Y0QlhrQVZBVjZCWG9BTVFWN0JYc0FWQVY4Qlh3QU5RVjlCWDBBTUFWK0JYNEFOQVYvQllBQVZBV0JCWUVBVlFXQ0JZSUFXUVdEQllNQVZBV0VCWVFBTHdXRkJZVUFWQVdHQllZQU1BV0hCWWdBTWdXSkJZa0FWUVdLQllvQUxnV0xCWXdBVkFXTkJZMEFWUVdPQlk0QUxRV1BCWThBVUFXUUJaQUFWQVdSQlpFQU1BV1NCWklBVkFXVEJaUUFNQVdWQlpZQU1RQUNBRThEVFFOTkFBc0RUd05QQUJFRFVBTlFBQXNEVVFOUkFBMERVd05UQUE4RFZBTlVBQlFEVlFOVkFBOERWd05YQUFzRFdBTlpBQThEV2dOYUFBMERXd05iQUJRRFhBTmNBQThEWGdOZUFBMERYd05mQUJFRFpBTmtBQk1EWlFObEFBc0RaZ05tQUEwRFp3TnBBQThEYWdOcUFCUURiUU50QUJNRDd3UHZBQU1EOEFQd0FBRUQ4UVB4QUFVRDhnUHlBQW9EOUFQMUFBRUQ5Z1AyQUFvRDl3UDVBQUVEK2dQNkFBVUQrd1A3QUFFRC9BUDhBQVVEL1FQOUFBSUQvZ1ArQUFNRC93UC9BQWdFQUFRQUFBVUVBUVFCQUFvRUFnUUZBQUVFQmdRR0FBUUVCd1FIQUFFRUNBUUlBQVFFQ1FRS0FBVUVDd1FMQUFFRURBUU5BQVVFRHdRUEFBTUVFQVFRQUFJRUVnUVRBQVlFRlFRV0FBUUVGd1FYQUFjRUdBUVlBQW9FR1FRWkFBRUVHZ1FhQUFnRUd3UWJBQUVFSFFRZEFBVUVId1FnQUFNRUlRUWhBQW9FSXdRa0FBb0VKUVFsQUFFRUpnUW1BQUlFSndRb0FBa0VLUVFwQUFvRUtnUXFBQUVFS3dRckFBY0VMQVFzQUFvRUx3UXhBQVVFTWdReUFBRUVNd1EwQUFVRU5RUTJBQWdGRVFVUkFBd0ZFd1VUQUJJRkZBVVVBQXdGRlFVVkFBNEZGd1VYQUJBRkdRVVpBQkFGR3dVYkFBd0ZIQVVkQUJBRkhnVWVBQTRGSUFVZ0FCQUZJZ1VpQUE0Rkl3VWpBQklGS1FVcEFCQUFBZ0QrQUFFQUFRQmtBYVFCcEFBN0FiQUJzQUF6QWJFQnNRQVRBYklCc2dBdUFiTUJzd0FzQWJRQnRBQVNBYlVCdFFBb0FiWUJ0Z0E2QWJjQnR3QVVBYmdCdUFCZUFia0J1UUExQWJvQnVnQXpBY1lCeGdBM0FjY0J4d0F2QWNnQnlBQXRBY2tCeVFBcEFjb0J5Z0FSQWNzQnl3QTZBY3dCekFBcUFjMEJ6UUJlQWM0QnpnQTJBZGtCMmdBREFkMEIzUUFEQWVRQjVRQVpBZVlCNWdBTUFlY0I1d0FnQWVnQjZBQU1BZWtCNlFBZ0Fld0I3QUF5QWU0QjdnQXlBZkFCOEFBZUFmSUI5Z0FlQWZjQjl3QkxBZmdCK0FBMEFma0IrUUFWQWZvQitnQktBZnNCK3dBZkFmd0IvQUJLQWYwQi9RQWZBZjRCL2dCS0FmOEIvd0FmQWdBQ0FBQXlBZ0lDQWdBeUFnUUNCQUFlQWdZQ0NBQWVBZ2tDQ1FCS0Fnb0NDZ0FmQWdzQ0N3QktBZ3dDREFBZkFnMENEUUJLQWc0Q0RnQWZBZzhDRHdBckFoRUNFUUFuQWhNQ0V3QWhBaGdDR1FCSkFob0NHZ0FoQWhzQ0hBQWxBaDBDSFFBOEFoNENIZ0JwQWlBQ0tRQU9BalFDUFFBaUFtUUNaUUFrQW1ZQ1p3QWpBbWdDYUFBa0Fta0Nhd0FqQW13Q2JBQWtBbTBDYmdBakFtOENid0FQQW5BQ2N3QWpBblFDZEFBa0FuVUNkUUFqQW5ZQ2RnQWtBbmNDZHdBakFuZ0NlQUFrQW5rQ2VRQU5Bbm9DZWdBa0Fuc0NmQUFOQW4wQ2ZRQWpBbjRDZmdBTkFuOENmd0FqQW9BQ2dBQWtBb0VDZ1FBakFvSUNoQUFrQW9VQ2hRQWpBb1lDaGdBeEFvY0NpQUFqQW9rQ2lRQVBBb29DalFBakFvNENqZ0FrQW84Q2p3QXhBcEFDa0FBa0FwRUNrUUFqQXBJQ2xBQWtBcFVDbGdBTkFwY0Nsd0FqQXBnQ21BQXhBcGtDbVFBakFwb0Ntd0FrQXNvQ3lnQkxBMDBEVFFBK0EwNERUd0EvQTFBRFVBQStBMUVEVVFBL0ExSURVZ0JqQTFNRFV3QS9BMVFEVkFCQkExVURWZ0EvQTFjRFZ3QStBMWdEV1FCQUExc0RXd0JCQTF3RFhRQS9BMTREWGdCb0ExOERYd0JPQTJBRFlBQkNBMkVEWVFCTUEySURZZ0JuQTJNRFl3Qk5BMlFEWkFCZkEya0RhUUEvQTJ3RGJBQkNBMjREYmdCREEyOERid0JSQTNBRGNBQkVBM0VEY1FCVEEzSURjZ0JkQTNNRGN3QmxBM1FEZEFCaUEzVURkUUJWQTNZRGRnQkZBM2NEZHdCaUEzZ0RlQUJxQTNrRGVRQkhBM29EZWdCRUEzc0Rld0JXQTN3RGZBQkRBMzBEZlFCZ0EzNERmZ0JoQTM4RGZ3QkRBNEFEZ0FCVUE0RURnUUJJQTRJRGdnQkRBNE1EZ3dCU0E0UURoQUJJQTRVRGh3QkRBNGdEaUFCZEE0a0RpUUJpQTRvRGlnQkZBNHNEaXdCR0E0d0RqQUJEQTQwRGpnQklBNDhEandCREE1QURrQUJHQTVFRGtRQklBNU1EbEFCREE1VURsUUJIQTVnRG1BQlBBNWtEbVFCUUE2RURvUUFHQTZJRHBBQUlBNllEcGdBSUE2Y0Rwd0FLQTZrRHF3QUlBNjBEcmdBSUE2OERyd0E5QTdBRHNRQUlBN0lEc2dBOUE3TURzd0FIQTdZRHRnQUtBN2NEdHdBSUE3a0R1Z0FJQTdzRHV3QUhBN3dEdlFBSUE3OER2d0FJQThFRHdnQUlBOE1Ed3dBSEE4UUR4QUFJQThVRHhRQTlBOFlEeGdBbUE4Y0R5QUFJQThzRHl3QUlBOHdEekFBSEE4MER6Z0FJQTlBRDBBQUlBOUlEMGdBOUE5UUQxUUFJQTlZRDFnQUtBOWdEMkFBSUE5a0QyUUFIQTlvRDJnQUlBOXNEMndBOUE5d0QzUUFKQTk0RDNnQUtBK0FENFFBSUErSUQ0Z0FLQStNRDR3QUdBK1VENVFBSUErWUQ1Z0E5QStjRDV3QUlBK2dENlFBOUErd0Q3QUE0QSswRDdRQWFBL0FEOEFBRUEvRUQ4UUE1QS9JRDhnQWRBL2NEOXdBQ0Evb0QrZ0E1QS93RC9BQWJBLzBEL1FBNUEvNEQvZ0FGQS84RC93QVdCQUFFQUFBNUJBRUVBUUFkQkFNRUF3QUJCQVlFQmdBRkJBc0VDd0FYQkF3RURRQTVCQTRFRGdBTEJCQUVFQUE1QkJFRUVRQVFCQklFRXdBd0JCVUVGUUFDQkJjRUZ3QUxCQm9FR2dBV0JCd0VIQUFjQkIwRUhRQTVCQjRFSGdBWUJDRUVJUUFkQkNRRUpBQUZCQ1lFSmdBNUJDY0VLQUFZQkNrRUtRQWRCQ29FS2dBQkJDc0VLd0FMQkN3RUxBQWRCQzBFTFFBTEJDNEVMd0E0QkRBRU1RQTVCRE1FTkFBNUJEVUVOZ0FXQkR3RVBRQWVCRDRFUGdCSkJEOEVRQUFsQlJFRkVRQlhCUlFGRkFCWEJSWUZGZ0JtQlJnRkdBQllCUnNGR3dCWEJSOEZId0JZQlNNRkl3QmNCU1FGSkFCWkJTVUZKUUJhQlNjRkp3QmJCU29GS2dCWkFBSUFMd0FDQUFJQUNnQUVBQVFBREFBRkFBVUFEZ0FHQUFZQUVBQTJBRXNBQ2dCTUFFd0FFQUJOQUZFQURBQlNBRlVBRGdCV0FHWUFFQUNvQUtnQUVBRGpBT01BRGdOZ0EyQUFBUU5yQTJ3QUFRTnVBMjRBQXdOd0EzQUFCZ055QTNJQUJBTjBBM1FBQlFOMkEzWUFBd041QTNrQUF3TjZBM29BQmdOOEEzd0FCd045QTMwQUNBTitBMzRBQndPQUE0QUFDQU9CQTRFQUNRT0NBNElBQndPRUE0UUFDUU9GQTRVQUJ3T0hBNGNBQXdPSUE0Z0FCQU9KQTRrQUJRT0tBNHNBQXdPTUE0d0FCd09OQTQ0QUNRT1BBNDhBQndPUUE1QUFBd09SQTVFQUNRT1RBNU1BQndSR0JFWUFDd1JJQkVnQURRUkpCRWtBRHdSZ0JIVUFDd1IzQkhzQURRUjhCSDhBRHdVT0JRNEFEd1VrQlNRQUFnVXFCU29BQWdBQ0FSNEFBUUFCQURNQUFnQUNBRklBQXdBREFGTUFCQUFFQUZZQUJRQUhBRk1BQ0FBSUFGWUFDUUFLQUZNQUN3QUxBRlFBREFBTkFGTUFEZ0FQQUZVQUVBQVFBRllBRVFBUkFGTUFFZ0FTQUZZQUV3QVRBRk1BRlFBVkFGY0FGZ0FXQUZnQUZ3QVhBR01BR0FBWUFGa0FHUUFaQUhRQUdnQWFBRm9BR3dBYkFIQUFIQUFjQUZzQUhRQWRBSElBSGdBZ0FGMEFJZ0FpQUhFQUl3QWpBSElBSlFBbEFGd0FKZ0FuQUhJQUtnQXFBRjBBS3dBckFHUUFMQUFzQUYwQUxnQXVBSE1BTHdBdkFGNEFNQUF3QUY4QU1RQXlBR0FBTXdBekFIVUFOQUEwQUdFQU5nQkxBRklBVEFCTUFHNEFUUUJSQUZZQVVnQm1BRk1BWndCdEFGWUFiZ0I4QUZNQWZRQjlBRlFBZmdDR0FGTUFod0NRQUZVQWtRQ29BRllBcVFDdUFGTUF0d0M3QUZjQXZBRFNBRmdBMHdEV0FGa0Exd0RlQUZvQTN3RGlBSEFBNHdEa0FGTUE1UURsQUZZQTVnRDhBRnNBL1FFV0FGMEJGd0VkQUhFQkhnRWhBSElCTGdFdkFGd0JNQUV3QUhJQk1nRTVBSElCUlFGY0FGMEJZd0ZwQUhNQmJBRnhBRjRCY2dHSUFGOEJpUUdNQUdBQmpRR1VBR0VCbVFHWkFGMEJtZ0dhQUdVQm13R2JBRjBCcEFHa0FDSUJzQUd3QUI4QnNRR3hBQzRCc2dHeUFEY0Jzd0d6QURZQnRBRzBBQ3dCdFFHMUFDc0J0Z0cyQUJzQnR3RzNBRTRCdUFHNEFCWUJ1UUc1QUMwQnVnRzZBQjhCeHdISEFGRUJ5QUhJQUZBQnlRSEpBRTBCeWdIS0FFd0J5d0hMQUJzQnpBSE1BRThCelFITkFCWUIyUUhhQUJRQjJ3SGNBQk1CM1FIZEFCUUI1QUhsQUVnQjVnSG1BRDBCNXdIbkFENEI2QUhvQUQwQjZRSHBBRDRCN0FIc0FHSUI3UUh0QUJjQjdnSHVBR0lCN3dIdkFCY0I4QUh3QUJnQjhnSDJBQmdCOXdIM0FCb0IrQUg0QUNnQitRSDVBRGdCK2dINkFCa0Ird0g3QUR3Qi9BSDhBQmtCL1FIOUFEd0IvZ0grQUJrQi93SC9BRHdDQUFJQUFHSUNBUUlCQUJjQ0FnSUNBR0lDQXdJREFCY0NCQUlFQUJnQ0JnSUlBQmdDQ1FJSkFCa0NDZ0lLQUR3Q0N3SUxBQmtDREFJTUFEd0NEUUlOQUJrQ0RnSU9BRHdDRHdJUEFESUNFUUlSQUNZQ0V3SVRBRDhDR0FJWkFCVUNHZ0lhQUQ4Q0d3SWNBQjRDSFFJZEFDUUNIZ0llQUNVQ0lBSXBBRUlDTkFJOUFCd0NaQUpsQUVRQ1pnSm5BRUFDYUFKb0FFUUNhUUpyQUVBQ2JBSnNBRVFDYlFKdUFFQUNid0p2QUVNQ2NBSnpBRUFDZEFKMEFFUUNkUUoxQUVBQ2RnSjJBRVFDZHdKM0FFQUNlQUo0QUVRQ2VRSjVBQjBDZWdKNkFFUUNld0o4QUIwQ2ZRSjlBRUFDZmdKK0FCMENmd0ovQUVBQ2dBS0FBRVFDZ1FLQkFFQUNnZ0tFQUVRQ2hRS0ZBRUFDaGdLR0FFRUNod0tJQUVBQ2lRS0pBRU1DaWdLTkFFQUNqZ0tPQUVRQ2p3S1BBRUVDa0FLUUFFUUNrUUtSQUVBQ2tnS1VBRVFDbFFLV0FCMENsd0tYQUVBQ21BS1lBRUVDbVFLWkFFQUNtZ0tiQUVRQ3lnTEtBQm9EVFFOTkFBa0RUZ05QQUVvRFVBTlFBQWtEVVFOUkFFb0RVZ05TQUVjRFV3TlRBRW9EVkFOVUFBb0RWUU5XQUVvRFZ3TlhBQWtEV0FOWkFEc0RXd05iQUFvRFhBTmRBRW9EWHdOZkFFWURZQU5nQUVzRFlRTmhBQ0VEWWdOaUFFVURaQU5rQUNBRGFRTnBBRW9EYkFOc0FFc0RiZ051QUFzRGJ3TnZBQ2NEY0FOd0FBNERjUU54QUNvRGNnTnlBQXdEY3dOekFEa0RkQU4wQUEwRGRRTjFBRFVEZGdOMkFBOERkd04zQUEwRGVBTjRBRWtEZVFONUFCRURlZ042QUE0RGZBTjhBQXNEZlFOOUFDOERmZ04rQURFRGZ3Ti9BQXNEZ0FPQUFEUURnUU9CQUJJRGdnT0NBQXNEZ3dPREFDa0RoQU9FQUJJRGhRT0hBQXNEaUFPSUFBd0RpUU9KQUEwRGlnT0tBQThEaXdPTEFCQURqQU9NQUFzRGpRT09BQklEandPUEFBc0RrQU9RQUJBRGtRT1JBQklEa3dPVUFBc0RsUU9WQUJFRGx3T1hBREFEbUFPWUFDTUVQQVE5QUJnRVBnUStBQlVFUHdSQUFCNEVSZ1JHQUdZRVJ3UkhBSFlFU0FSSUFHZ0VTUVJMQUhZRVRBUk1BR2dFVFFST0FIWUVUd1JQQUdjRVVBUlJBSFlFVWdSVEFIY0VWQVJVQUdnRVZRUlZBSFlFVmdSV0FHZ0VWd1JYQUhZRVdRUlpBR2tFV2dSYUFHb0VXd1JiQUcwRVhBUmNBR3NFWFFSZEFIZ0VYZ1JlQUd3RVlBUjFBR1lFZGdSMkFHOEVkd1I3QUdnRWZBU1FBSFlFa1FTVkFHZ0Vsd1NZQUdnRW1RU25BSFlFcUFTb0FHY0VxUVN4QUhZRXNnUzdBSGNFdkFUVEFHZ0UxQVRaQUhZRTRRVG1BR2tFNXdUOUFHb0UvZ1VCQUdzRkFnVUpBR3dGRGdVUEFIWUZFQVVRQUdnRkVRVVJBQUVGRWdVVEFBSUZGQVVVQUFFRkZRVVZBQUlGRndVWEFBSUZHQVVZQUFRRkdRVWFBQUlGR3dVYkFBRUZIQVVkQUFNRkh3VWZBQVFGSUFVaEFBSUZJZ1VpQUFnRkpBVWtBQVVGSlFVbEFEb0ZKZ1VtQUFZRkp3VW5BQWNGS1FVcEFBSUZLZ1VxQUFVQUFnQTZBQWdBQ0FBQkFBa0FDZ0FEQUFzQUN3QUZBQXdBREFBSEFBMEFEUUFKQUE0QURnQURBQThBRHdBTEFCQUFFQUFOQUJJQUVnQU5BQk1BRXdBUEFCUUFGQUFSQUJVQUZRQVRBQllBRmdBVkFHY0FiUUFCQUc0QWZBQURBSDBBZlFBRkFINEFmZ0FIQUg4QWdRQUpBSU1BaGdBSkFJY0FpQUFEQUlrQWtBQUxBSkVBcHdBTkFLa0FyZ0FQQUs4QXRRQVJBTGNBdXdBVEFMd0EwZ0FWQU9VQTVRQU5CRXdFVEFBQ0JFMEVUZ0FFQkU4RVR3QUdCRkFFVUFBSUJGRUVVUUFLQkZJRVVnQUVCRk1FVXdBTUJGUUVWQUFPQkZZRVZnQU9CRmNFVndBUUJGZ0VXQUFTQkZrRVdRQVVCRm9FV2dBV0JKRUVsUUFDQkpjRW1BQUNCSmtFcHdBRUJLZ0VxQUFHQktrRXFRQUlCS29FckFBS0JLNEVzUUFLQkxJRXN3QUVCTFFFdXdBTUJMd0UwZ0FPQk5RRTJRQVFCTm9FNEFBU0JPRUU1Z0FVQk9jRS9RQVdCUkFGRUFBT0JTc0ZLd0FTQlN3RkxBQURCUzBGTFFBS0FBSUE2Z0FCQUFFQVZRQUNBQUlBQlFBREFBTUFCZ0FFQUFRQUJ3QUZBQWNBQmdBSUFBZ0FCd0FKQUFvQUJnQUxBQXNBUGdBTUFBMEFCZ0FPQUE4QVF3QVFBQkFBQndBUkFCRUFCZ0FTQUJJQUJ3QVRBQk1BQmdBVUFCUUFOQUFWQUJVQUNBQVdBQllBQ1FBWEFCY0FGd0FZQUJnQUNnQVpBQmtBR0FBYUFCb0FDd0FiQUJzQURBQWNBQndBSkFBZEFCMEFVd0FlQUNBQUtBQWhBQ0VBSlFBaUFDSUFKZ0FqQUNNQVV3QWtBQ1FBTlFBbEFDVUFOZ0FtQUNjQVV3QW9BQ2tBTndBcUFDb0FLQUFyQUNzQUhBQXNBQ3dBS0FBdEFDMEFOd0F1QUM0QUtRQXZBQzhBS2dBd0FEQUFLd0F4QURJQUxBQXpBRE1BUEFBMEFEUUFMUUExQURVQU9BQTJBRXNBQlFCTUFFd0FGZ0JOQUZFQUJ3QlNBR1lBQmdCbkFHMEFCd0J1QUh3QUJnQjlBSDBBUGdCK0FJWUFCZ0NIQUpBQVF3Q1JBS2dBQndDcEFLNEFCZ0N2QUxVQU5BQzNBTHNBQ0FDOEFOSUFDUURUQU5ZQUNnRFhBTjRBQ3dEZkFPSUFEQURqQU9RQUJnRGxBT1VBQndEbUFQd0FKQUQ5QVJZQUtBRVhBUjBBSmdFZUFTRUFVd0VpQVNNQU5RRWtBU1lBSndFbkFTZ0FOUUVwQVNrQUp3RXFBU3NBTlFFc0FTd0FKd0V0QVMwQU53RXVBUzhBTmdFd0FUQUFVd0V4QVRFQU53RXlBVGtBVXdFNkFVRUFOd0ZEQVVRQU53RkZBVndBS0FGZEFXSUFOd0ZqQVdrQUtRRnFBV3NBSlFGc0FYRUFLZ0Z5QVlnQUt3R0pBWXdBTEFHTkFaUUFMUUdWQVpnQU9BR1pBWmtBS0FHYUFab0FUUUdiQVpzQUtBR2VBYU1BSlFHa0FhUUFWQUd3QWJBQU1BR3hBYkVBR3dHeUFiSUFId0d6QWJNQUhnRzBBYlFBTWdHMUFiVUFNUUcyQWJZQUx3RzNBYmNBVEFHNEFiZ0FMZ0c1QWJrQU13RzZBYm9BTUFITEFjc0FMd0hOQWMwQUxnSFpBZG9BRFFIYkFkd0FPUUhkQWQwQURRSGtBZVVBUkFIbUFlWUFSUUhuQWVjQVJnSG9BZWdBUlFIcEFla0FSZ0hzQWV3QURnSHRBZTBBT2dIdUFlNEFEZ0h2QWU4QU9nSHdBZkFBRHdIeUFmWUFEd0gzQWZjQU93SDRBZmdBUVFINUFma0FJQUg2QWZvQUVBSDdBZnNBRVFIOEFmd0FFQUg5QWYwQUVRSCtBZjRBRUFIL0FmOEFFUUlBQWdBQURnSUJBZ0VBT2dJQ0FnSUFEZ0lEQWdNQU9nSUVBZ1FBRHdJR0FnZ0FEd0lKQWdrQUVBSUtBZ29BRVFJTEFnc0FFQUlNQWd3QUVRSU5BZzBBRUFJT0FnNEFFUUlQQWc4QUhRSVJBaEVBU3dJVEFoTUFSd0lZQWhrQVB3SWFBaG9BUndJYkFod0FRQUlkQWgwQUdRSWVBaDRBR2dJZ0Fpa0FGQUkwQWowQUVnSmtBbVVBU2dKbUFtY0FTQUpvQW1nQVNnSnBBbXNBU0FKc0Ftd0FTZ0p0QW00QVNBSnZBbThBRlFKd0FuTUFTQUowQW5RQVNnSjFBblVBU0FKMkFuWUFTZ0ozQW5jQVNBSjRBbmdBU2dKNUFua0FFd0o2QW5vQVNnSjdBbndBRXdKOUFuMEFTQUorQW40QUV3Si9BbjhBU0FLQUFvQUFTZ0tCQW9FQVNBS0NBb1FBU2dLRkFvVUFTQUtHQW9ZQVNRS0hBb2dBU0FLSkFva0FGUUtLQW8wQVNBS09BbzRBU2dLUEFvOEFTUUtRQXBBQVNnS1JBcEVBU0FLU0FwUUFTZ0tWQXBZQUV3S1hBcGNBU0FLWUFwZ0FTUUtaQXBrQVNBS2FBcHNBU2dMS0Fzb0FPd1E4QkQwQUR3UStCRDRBUHdRL0JFQUFRQVJHQkVZQVBRUkhCRWNBVGdSSUJFZ0FJUVJKQkVzQVRnUk1CRXdBSVFSTkJFNEFUZ1JQQkU4QVR3UlFCRkVBVGdSU0JGTUFVZ1JVQkZRQUlRUlZCRlVBVGdSV0JGWUFJUVJYQkZjQVRnUllCRmdBVUFSWkJGa0FVUVJhQkZvQUFRUmJCRnNBQkFSY0JGd0FBZ1JkQkYwQUl3UmVCRjRBQXdSZkJGOEFRZ1JnQkhVQVBRUjJCSFlBSWdSM0JIc0FJUVI4QkpBQVRnU1JCSlVBSVFTWEJKZ0FJUVNaQktjQVRnU29CS2dBVHdTcEJMRUFUZ1N5QkxzQVVnUzhCTk1BSVFUVUJOa0FUZ1RhQk9BQVVBVGhCT1lBVVFUbkJQMEFBUVQrQlFFQUFnVUNCUWtBQXdVS0JRMEFRZ1VPQlE4QVRnVVFCUkFBSVFVckJTc0FVQUFDQUVNQUdnQWFBQUlBR3dBYkFBUUFIQUFjQUFZQUhRQWRBQWNBSGdBZUFBZ0FId0FmQUJJQUlBQWdBQW9BSVFBaEFBc0FJZ0FpQUF3QUl3QWpBQTBBSkFBa0FBNEFKUUFsQUJBQUpnQW1BQkVBSndBbkFCSUFLQUFwQUEwQUtnQXJBQWNBTFFBdEFCTUFMZ0F1QUJRQUx3QXZBQlVBTUFBd0FCWUExd0RlQUFJQTN3RGlBQVFBNWdEN0FBWUEvQUQ4QUFvQS9RRUJBQWdCQWdFQ0FBa0JBd0VGQUJJQkJnRVdBQW9CRndFZEFBd0JIZ0VoQUEwQklnRWpBQTRCSkFFbUFBOEJKd0VvQUE0QktRRXBBQThCS2dFckFBNEJMQUVzQUE4QkxRRXRBQTRCTGdFdkFCQUJNQUV4QUJFQk1nRXlBQklCTXdFekFBa0JOQUUwQUJJQk5nRTVBQklCT2dGQkFBMEJRd0ZFQUEwQlJRRlVBQWNCV3dGYkFBY0JYQUZjQUFvQlhRRmlBQk1CWXdGcEFCUUJhZ0ZxQUFzQmJBRnhBQlVCY2dHQkFCWUJpQUdJQUJZQm1nR2JBQWNCbmdHZUFBNEJud0dmQUJJQm9BR2dBQlVCb1FHaEFBc0JvZ0dpQUE0Qm93R2pBQklFWEFSY0FBRUVYZ1JlQUFNRVh3UmZBQVVFL2dVQkFBRUZBZ1VKQUFNRkNnVU5BQVVBQWdEYUFBRUFBUUF3QUFJQUFnQUJBQU1BQXdCTEFBUUFCQUFEQUFVQUJ3QkxBQWdBQ0FBREFBa0FDZ0JMQUFzQUN3QkFBQXdBRFFCTEFBNEFEd0FDQUJBQUVBQURBQkVBRVFCTEFCSUFFZ0FEQUJNQUV3QkxBQlFBRkFBRUFCVUFGUUE2QUJZQUZnQUZBQmNBRndBK0FCZ0FHQUE3QUJrQUdRQk9BQm9BR2dBOEFCc0FHd0FHQUJ3QUhBQUhBQjBBSFFCTUFCNEFJQUFOQUNFQUlRQUlBQ0lBSWdBSkFDTUFJd0JNQUNRQUpBQUtBQ1VBSlFBTEFDWUFKd0JNQUNnQUtRQU1BQ29BS2dBTkFDc0FLd0F1QUN3QUxBQU5BQzBBTFFBTUFDNEFMZ0FPQUM4QUx3QVBBREFBTUFBUUFERUFNZ0FSQURNQU13QTBBRFFBTkFBU0FEVUFOUUFUQURZQVN3QUJBRXdBVEFBa0FFMEFVUUFEQUZJQVpnQkxBR2NBYlFBREFHNEFmQUJMQUgwQWZRQkFBSDRBaGdCTEFJY0FrQUFDQUpFQXFBQURBS2tBcmdCTEFLOEF0UUFFQUxjQXV3QTZBTHdBMGdBRkFOTUExZ0E3QU5jQTNnQThBTjhBNGdBR0FPTUE1QUJMQU9VQTVRQURBT1lBL0FBSEFQMEJGZ0FOQVJjQkhRQUpBUjRCSVFCTUFTSUJJd0FLQVNRQkpnQTVBU2NCS0FBS0FTa0JLUUE1QVNvQkt3QUtBU3dCTEFBNUFTMEJMUUFNQVM0Qkx3QUxBVEFCTUFCTUFURUJNUUFNQVRJQk9RQk1BVG9CUVFBTUFVTUJSQUFNQVVVQlhBQU5BVjBCWWdBTUFXTUJhUUFPQVdvQmF3QUlBV3dCY1FBUEFYSUJpQUFRQVlrQmpBQVJBWTBCbEFBU0FaVUJtQUFUQVprQm1RQU5BWm9CbWdCS0Fac0Jtd0FOQVo0Qm93QUlBYVFCcEFBbEFiQUJzQUFqQWJFQnNRQXRBYklCc2dBeUFiTUJzd0F4QWJRQnRBQXJBYlVCdFFBcUFiWUJ0Z0FlQWJjQnR3QklBYmdCdUFBWEFia0J1UUFzQWJvQnVnQWpBY1lCeGdCVkFjY0J4d0JTQWNnQnlBQlJBY2tCeVFCUUFjb0J5Z0JQQWNzQnl3QWVBY3dCekFCSkFjMEJ6UUFYQWM0QnpnQkhBZGtCMmdBVkFkc0IzQUFVQWQwQjNRQVZBZDRCM2dCVEFlRUI0UUJVQWVRQjVRQkJBZVlCNWdBOUFlY0I1d0FkQWVnQjZBQTlBZWtCNlFBZEFld0I3QUFZQWUwQjdRQVpBZTRCN2dBWUFlOEI3d0FaQWZBQjhBQWFBZklCOWdBYUFmY0I5d0FjQWZnQitBQXBBZmtCK1FBekFmb0IrZ0FiQWZzQit3Qk5BZndCL0FBYkFmMEIvUUJOQWY0Qi9nQWJBZjhCL3dCTkFnQUNBQUFZQWdFQ0FRQVpBZ0lDQWdBWUFnTUNBd0FaQWdRQ0JBQWFBZ1lDQ0FBYUFna0NDUUFiQWdvQ0NnQk5BZ3NDQ3dBYkFnd0NEQUJOQWcwQ0RRQWJBZzRDRGdCTkFnOENEd0F2QWhFQ0VRQW9BaE1DRXdCQ0FoZ0NHUUFXQWhvQ0dnQkNBaHNDSEFBaUFoMENIUUFtQWg0Q0hnQW5BaUFDS1FCRkFqUUNQUUFmQW1RQ1pRQkdBbVlDWndCREFtZ0NhQUJHQW1rQ2F3QkRBbXdDYkFCR0FtMENiZ0JEQW04Q2J3QWhBbkFDY3dCREFuUUNkQUJHQW5VQ2RRQkRBbllDZGdCR0FuY0Nkd0JEQW5nQ2VBQkdBbmtDZVFBZ0Fub0NlZ0JHQW5zQ2ZBQWdBbjBDZlFCREFuNENmZ0FnQW44Q2Z3QkRBb0FDZ0FCR0FvRUNnUUJEQW9JQ2hBQkdBb1VDaFFCREFvWUNoZ0JFQW9jQ2lBQkRBb2tDaVFBaEFvb0NqUUJEQW80Q2pnQkdBbzhDandCRUFwQUNrQUJHQXBFQ2tRQkRBcElDbEFCR0FwVUNsZ0FnQXBjQ2x3QkRBcGdDbUFCRUFwa0NtUUJEQXBvQ213QkdBc29DeWdBY0JEd0VQUUFhQkQ0RVBnQVdCRDhFUUFBaUJFWUVSZ0ExQkVnRVNBQTJCRXdFVEFBMkJGUUVWQUEyQkZZRVZnQTJCRmdFV0FBM0JGb0VXZ0EvQkdBRWRRQTFCSFlFZGdBNEJIY0Vld0EyQkpFRWxRQTJCSmNFbUFBMkJMd0Uwd0EyQk5vRTRBQTNCT2NFL1FBL0JSQUZFQUEyQlNzRkt3QTNBQUlBTGdBMUFEVUFBUUdWQVpnQUFRR3pBYk1BQlFHNEFiZ0FCUUhOQWMwQUJRSFpBZG9BQXdIYkFkd0FBZ0hkQWQwQUF3SHNBZXdBQndIdEFlMEFDQUh1QWU0QUJ3SHZBZThBQ0FId0FmQUFDUUh5QWZZQUNRSDNBZmNBRFFINkFmb0FDd0g3QWZzQURBSDhBZndBQ3dIOUFmMEFEQUgrQWY0QUN3SC9BZjhBREFJQUFnQUFCd0lCQWdFQUNBSUNBZ0lBQndJREFnTUFDQUlFQWdRQUNRSUdBZ2dBQ1FJSkFna0FDd0lLQWdvQURBSUxBZ3NBQ3dJTUFnd0FEQUlOQWcwQUN3SU9BZzRBREFJWUFoa0FCQUxHQXNjQURnTElBc2dBQ2dMSkFza0FEZ0xLQXNvQURRTExBc3NBQmdMTUFzd0FDZ0xOQXMwQURnTFNBdElBQmdMVEF0TUFEZ0xVQXRVQUJnUThCRDBBQ1FRK0JENEFCQUFDQVZNQUFnQUNBQUVBQXdBREFBSUFCQUFFQUQ4QUJRQUhBQUlBQ0FBSUFEOEFDUUFLQUFJQUN3QUxBQU1BREFBTkFBSUFEZ0FQQUFRQUVBQVFBRDhBRVFBUkFBSUFFZ0FTQUQ4QUV3QVRBQUlBRkFBVUFHOEFGUUFWQUFVQUZnQVdBQVlBRndBWEFCOEFHQUFZQUFjQUdRQVpBQ0FBR2dBYUFBZ0FHd0FiQUhBQUhBQWNBQWtBSFFBZEFBc0FIZ0FnQUF3QUlRQWhBRndBSWdBaUFBb0FJd0FqQUFzQUpRQWxBRUFBSmdBbkFBc0FLQUFwQUhrQUtnQXFBQXdBS3dBckFDOEFMQUFzQUF3QUxRQXRBSGtBTGdBdUFBMEFMd0F2QUE0QU1BQXdBRUVBTVFBeUFBOEFNd0F6QUhVQU5BQTBBQkFBTlFBMUFFSUFOZ0JMQUFFQVRBQk1BQjRBVFFCUkFEOEFVZ0JtQUFJQVp3QnRBRDhBYmdCOEFBSUFmUUI5QUFNQWZnQ0dBQUlBaHdDUUFBUUFrUUNvQUQ4QXFRQ3VBQUlBcndDMUFHOEF0d0M3QUFVQXZBRFNBQVlBMHdEV0FBY0Exd0RlQUFnQTN3RGlBSEFBNHdEa0FBSUE1UURsQUQ4QTVnRDhBQWtBL1FFV0FBd0JGd0VkQUFvQkhnRWhBQXNCSkFFbUFIZ0JLUUVwQUhnQkxBRXNBSGdCTFFFdEFIa0JMZ0V2QUVBQk1BRXdBQXNCTVFFeEFIa0JNZ0U1QUFzQk9nRkJBSGtCUXdGRUFIa0JSUUZjQUF3QlhRRmlBSGtCWXdGcEFBMEJhZ0ZyQUZ3QmJBRnhBQTRCY2dHSUFFRUJpUUdNQUE4QmpRR1VBQkFCbFFHWUFFSUJtUUdaQUF3Qm1nR2FBREFCbXdHYkFBd0JuZ0dqQUZ3QnBBR2tBQ0VCc0FHd0FFY0JzUUd4QUNnQnNnR3lBRk1Cc3dHekFDd0J0QUcwQUNVQnRRRzFBQ01CdGdHMkFCY0J0d0czQUNrQnVBRzRBRU1CdVFHNUFDY0J1Z0c2QUVjQnhRSEZBRlVCeGdIR0FGRUJ4d0hIQUZRQnlBSElBQzBCeVFISkFDWUJ5Z0hLQUNRQnl3SExBQmNCekFITUFDb0J6UUhOQUVNQnpnSE9BRkFCMlFIYUFCRUIyd0hjQUhvQjNRSGRBQkVCM2dIZUFITUI0Z0hpQUhRQjVBSGxBRVVCNWdIbUFCVUI1d0huQUJZQjZBSG9BQlVCNlFIcEFCWUI3QUhzQUJJQjdRSHRBSEVCN2dIdUFCSUI3d0h2QUhFQjhBSHdBQk1COGdIMkFCTUI5d0gzQUY4QitBSDRBR0lCK1FINUFDNEIrZ0g2QUVRQit3SDdBQlFCL0FIOEFFUUIvUUg5QUJRQi9nSCtBRVFCL3dIL0FCUUNBQUlBQUJJQ0FRSUJBSEVDQWdJQ0FCSUNBd0lEQUhFQ0JBSUVBQk1DQmdJSUFCTUNDUUlKQUVRQ0NnSUtBQlFDQ3dJTEFFUUNEQUlNQUJRQ0RRSU5BRVFDRGdJT0FCUUNEd0lQQUNzQ0VRSVJBRXNDRXdJVEFFWUNHZ0lhQUVZQ0hRSWRBQ0lDSHdJZkFIc0NJQUlwQUdFQ05BSTlBQmdDWkFKbEFCMENaZ0puQUJrQ2FBSm9BQjBDYVFKckFCa0NiQUpzQUIwQ2JRSnVBQmtDYndKdkFCd0NjQUp6QUJrQ2RBSjBBQjBDZFFKMUFCa0NkZ0oyQUIwQ2R3SjNBQmtDZUFKNEFCMENlUUo1QUJzQ2VnSjZBQjBDZXdKOEFCc0NmUUo5QUJrQ2ZnSitBQnNDZndKL0FCa0NnQUtBQUIwQ2dRS0JBQmtDZ2dLRUFCMENoUUtGQUJrQ2hnS0dBQm9DaHdLSUFCa0NpUUtKQUJ3Q2lnS05BQmtDamdLT0FCMENqd0tQQUJvQ2tBS1FBQjBDa1FLUkFCa0NrZ0tVQUIwQ2xRS1dBQnNDbHdLWEFCa0NtQUtZQUJvQ21RS1pBQmtDbWdLYkFCMENuQUtjQUdRQ25nS2VBR1VDbndLZkFHTUNyd0t2QUdjQ3V3TEZBRjBDeGdMSEFHQUN5QUxJQUY0Q3lRTEpBR0FDeWdMS0FGOEN6QUxNQUdBQ3pRTE5BRjRDMHdMVEFHQUMxUUxWQUdBRFRRTk5BRmNEVGdOUEFGa0RVQU5RQUZjRFVRTlJBRmtEVWdOU0FIWURVd05UQUZrRFZBTlVBRHNEVlFOV0FGa0RWd05YQUZjRFdBTlpBRm9EV3dOYkFEc0RYQU5kQUZrRFh3TmZBRW9EWUFOZ0FETURZUU5oQUVnRFlnTmlBRFFEWXdOakFFa0RhUU5wQUZrRGJBTnNBRE1EYmdOdUFEd0RjQU53QUQwRGNRTnhBRTBEZEFOMEFGc0Rkd04zQUZzRGVBTjRBR1lEZWdONkFEMERmQU44QUR3RGZ3Ti9BRHdEZ0FPQUFGSURnUU9CQUQ0RGdnT0NBRHdEZ3dPREFFd0RoQU9FQUQ0RGhRT0hBRHdEaVFPSkFGc0RqQU9NQUR3RGpRT09BRDREandPUEFEd0RrUU9SQUQ0RGt3T1VBRHdEb1FPaEFGWURvZ09rQUZnRHBnT21BRmdEcHdPbkFESURxUU9yQUZnRHJRT3VBRmdEcndPdkFEWURzQU94QUZnRHNnT3lBRFlEc3dPekFEVUR0QU8wQUdrRHRnTzJBRElEdHdPM0FGZ0R1QU80QUdnRHVRTzZBRmdEdXdPN0FEVUR2QU85QUZnRHZ3Ty9BRmdEd1FQQ0FGZ0R3d1BEQURVRHhBUEVBRmdEeFFQRkFEWUR4Z1BHQUhJRHh3UElBRmdEeXdQTEFGZ0R6QVBNQURVRHpRUE9BRmdEendQUEFHa0QwQVBRQUZnRDBnUFNBRFlEMHdQVEFHc0QxQVBWQUZnRDFnUFdBRElEMkFQWUFGZ0QyUVBaQURVRDJnUGFBRmdEMndQYkFEWUQzQVBkQURFRDNnUGVBRElEM3dQZkFHZ0Q0QVBoQUZnRDRnUGlBRElENHdQakFGWUQ1UVBsQUZnRDVnUG1BRFlENXdQbkFGZ0Q2QVBwQURZRDZnUHJBR2tEN0FQc0FEY0Q3Z1B2QUhjRDhBUHdBR3dEOFFQeEFEZ0Q4Z1B5QUc0RDlBUDJBSGNEK0FQNUFIY0QrZ1A2QURnRCt3UDdBSGNEL1FQOUFEZ0Qvd1AvQURrRUFBUUFBRGdFQVFRQkFHNEVBZ1FDQUhjRUJBUUZBSGNFQndRSUFIY0VDZ1FLQUhjRURBUU5BRGdFRGdRT0FHMEVEd1FQQUhjRUVBUVFBRGdFRVFRUkFFNEVFZ1FUQUdvRUZBUVVBRThFRmdRV0FIY0VGd1FYQUcwRUdBUVpBSGNFR2dRYUFEa0VHd1FiQUhjRUhRUWRBRGdFSGdRZUFEb0VId1FnQUhjRUlRUWhBRzRFSXdRakFIY0VKUVFsQUhjRUpnUW1BRGdFSndRb0FEb0VLUVFwQUc0RUt3UXJBRzBFTEFRc0FHNEVMUVF0QUcwRUxnUXZBRGNFTUFReEFEZ0VNZ1F5QUhjRU13UTBBRGdFTlFRMkFEa0VQQVE5QUJNQUFnQUxBYkFCc0FBR0FiWUJ0Z0FGQWJvQnVnQUdBY3NCeXdBRkFlWUI1Z0FCQWVjQjV3QUNBZWdCNkFBQkFla0I2UUFDQWVvQjZ3QURBaE1DRXdBRUFob0NHZ0FFQUFJQlZBQUNBQUlBRGdBREFBTUFQUUFFQUFRQUVBQUZBQWNBUFFBSUFBZ0FFQUFKQUFvQVBRQUxBQXNBRHdBTUFBMEFQUUFRQUJBQUVBQVJBQkVBUFFBU0FCSUFFQUFUQUJNQVBRQVVBQlFBRVFBVkFCVUFFZ0FXQUJZQUV3QVhBQmNBYlFBWUFCZ0FWZ0FaQUJrQWJnQWFBQm9BYUFBYkFCc0FQZ0FjQUJ3QUZBQWVBQ0FBR0FBaEFDRUFWd0FpQUNJQUZRQWtBQ1FBZlFBbEFDVUFXQUFvQUNrQUZ3QXFBQ29BR0FBckFDc0FMUUFzQUN3QUdBQXRBQzBBRndBdUFDNEFHUUF2QUM4QVB3QXdBREFBV1FBeEFESUFRQUF6QURNQVZBQTBBRFFBUVFBMUFEVUFHZ0EyQUVzQURnQk1BRXdBSGdCTkFGRUFFQUJTQUdZQVBRQm5BRzBBRUFCdUFId0FQUUI5QUgwQUR3QitBSVlBUFFDUkFLZ0FFQUNwQUs0QVBRQ3ZBTFVBRVFDM0FMc0FFZ0M4QU5JQUV3RFRBTllBVmdEWEFONEFhQURmQU9JQVBnRGpBT1FBUFFEbEFPVUFFQURtQVB3QUZBRDlBUllBR0FFWEFSMEFGUUVpQVNNQWZRRWtBU1lBRmdFbkFTZ0FmUUVwQVNrQUZnRXFBU3NBZlFFc0FTd0FGZ0V0QVMwQUZ3RXVBUzhBV0FFeEFURUFGd0U2QVVFQUZ3RkRBVVFBRndGRkFWd0FHQUZkQVdJQUZ3RmpBV2tBR1FGcUFXc0FWd0ZzQVhFQVB3RnlBWWdBV1FHSkFZd0FRQUdOQVpRQVFRR1ZBWmdBR2dHWkFaa0FHQUdhQVpvQU1RR2JBWnNBR0FHZUFhTUFWd0drQWFRQVNBR3dBYkFBWEFHeEFiRUFYd0d5QWJJQVlBR3pBYk1BVWdHMEFiUUFLUUcxQWJVQUp3RzJBYllBSFFHM0FiY0FVQUc0QWJnQVFnRzVBYmtBWGdHNkFib0FYQUhGQWNVQU5RSEdBY1lBTEFISEFjY0FNd0hJQWNnQU1nSEpBY2tBS2dIS0Fjb0FLQUhMQWNzQUhRSE1BY3dBVVFITkFjMEFRZ0hPQWM0QUt3SFpBZG9BR3dIZEFkMEFHd0hlQWQ0QVRBSGZBZDhBVFFIaEFlRUFUd0hpQWVJQUxnSG1BZVlBUmdIbkFlY0Fmd0hvQWVnQVJnSHBBZWtBZndIcUFlc0FXd0hzQWV3QUhBSHRBZTBBUXdIdUFlNEFIQUh2QWU4QVF3SHdBZkFBUkFIeUFmWUFSQUgzQWZjQVdnSDRBZmdBU2dINUFma0FVd0g2QWZvQVJRSDdBZnNBZmdIOEFmd0FSUUg5QWYwQWZnSCtBZjRBUlFIL0FmOEFmZ0lBQWdBQUhBSUJBZ0VBUXdJQ0FnSUFIQUlEQWdNQVF3SUVBZ1FBUkFJR0FnZ0FSQUlKQWdrQVJRSUtBZ29BZmdJTEFnc0FSUUlNQWd3QWZnSU5BZzBBUlFJT0FnNEFmZ0lQQWc4QU1BSWRBaDBBU1FJZkFoOEFUZ0lnQWlrQWRnSTBBajBBY3dKa0FtVUFlQUptQW1jQWRBSm9BbWdBZUFKcEFtc0FkQUpzQW13QWVBSnRBbTRBZEFKdkFtOEFkd0p3QW5NQWRBSjBBblFBZUFKMUFuVUFkQUoyQW5ZQWVBSjNBbmNBZEFKNEFuZ0FlQUo1QW5rQWRRSjZBbm9BZUFKN0Fud0FkUUo5QW4wQWRBSitBbjRBZFFKL0FuOEFkQUtBQW9BQWVBS0JBb0VBZEFLQ0FvUUFlQUtGQW9VQWRBS0dBb1lBZ0FLSEFvZ0FkQUtKQW9rQWR3S0tBbzBBZEFLT0FvNEFlQUtQQW84QWdBS1FBcEFBZUFLUkFwRUFkQUtTQXBRQWVBS1ZBcFlBZFFLWEFwY0FkQUtZQXBnQWdBS1pBcGtBZEFLYUFwc0FlQUtjQXB3QWVRS2VBcDRBZWdLaUFxSUFld0t2QXE4QWZBTElBc2dBY2dMS0Fzb0FXZ0xOQXMwQWNnTk5BMDBBQ1FOT0EwOEFPd05RQTFBQUNRTlJBMUVBT3dOU0ExSUFSd05UQTFNQU93TlVBMVFBQ2dOVkExWUFPd05YQTFjQUNRTmJBMXNBQ2dOY0ExMEFPd05mQTE4QUlRTmdBMkFBWndOaUEySUFhUU5wQTJrQU93TnNBMndBWndOdUEyNEFDd053QTNBQVBBTnlBM0lBREFOMEEzUUFEUU4zQTNjQURRTjZBM29BUEFOOEEzd0FDd04rQTM0QUx3Ti9BMzhBQ3dPQkE0RUFWUU9DQTRJQUN3T0RBNE1BU3dPRUE0UUFWUU9GQTRjQUN3T0lBNGdBREFPSkE0a0FEUU9NQTR3QUN3T05BNDRBVlFPUEE0OEFDd09SQTVFQVZRT1RBNVFBQ3dPaEE2RUFBUU9pQTZRQU5nT2xBNlVBQWdPbUE2WUFOZ09uQTZjQVpBT3BBNnNBTmdPc0E2d0FBZ090QTY0QU5nT3ZBNjhBQkFPd0E3RUFOZ095QTdJQUJBT3pBN01BQXdPMEE3UUFZZ08xQTdVQWFnTzJBN1lBWkFPM0E3Y0FOZ080QTdnQVlRTzVBN29BTmdPN0E3c0FBd084QTcwQU5nTy9BNzhBTmdQQUE4QUFJZ1BCQThJQU5nUERBOE1BQXdQRUE4UUFOZ1BGQThVQUJBUEdBOFlBSUFQSEE4Z0FOZ1BKQThrQWJBUEtBOG9BQWdQTEE4c0FOZ1BNQTh3QUF3UE5BODRBTmdQUEE4OEFZZ1BRQTlBQU5nUFJBOUVBYndQU0E5SUFCQVBUQTlNQWF3UFVBOVVBTmdQV0E5WUFaQVBZQTlnQU5nUFpBOWtBQXdQYUE5b0FOZ1BiQTlzQUJBUGNBOTBBWXdQZUE5NEFaQVBmQTk4QVlRUGdBK0VBTmdQaUErSUFaQVBqQStNQUFRUGtBK1FBSHdQbEErVUFOZ1BtQStZQUJBUG5BK2NBTmdQb0Era0FCQVBxQStzQVlnUHNBK3dBQlFQdEErMEFjQVB1QSs4QUNBUHdBL0FBSkFQeEEvRUFCd1B5QS9JQU9nUDBBL1lBQ0FQM0EvY0FCZ1A0QS9rQUNBUDZBL29BQndQN0Evc0FDQVA4QS93QUpnUDlBLzBBQndQK0EvNEFaZ1AvQS84QU9BUUFCQUFBQndRQkJBRUFPZ1FDQkFJQUNBUURCQU1BWlFRRUJBVUFDQVFHQkFZQVpnUUhCQWdBQ0FRS0JBb0FDQVFMQkFzQU5BUU1CQTBBQndRUEJBOEFDQVFRQkJBQUJ3UVJCQkVBSlFRU0JCTUFOd1FVQkJRQVhRUVZCQlVBQmdRV0JCWUFDQVFZQkJrQUNBUWFCQm9BT0FRYkJCc0FDQVFjQkJ3QWNRUWRCQjBBQndRZUJCNEFPUVFmQkNBQUNBUWhCQ0VBT2dRakJDTUFDQVFrQkNRQVpnUWxCQ1VBQ0FRbUJDWUFCd1FuQkNnQU9RUXBCQ2tBT2dRcUJDb0FaUVFzQkN3QU9nUXVCQzhBQlFRd0JERUFCd1F5QkRJQUNBUXpCRFFBQndRMUJEWUFPQVEzQkRjQUl3UThCRDBBUkFBQkFBQUFDQUFBQUFRQURnQUNhV1JsYjNKdmJXNEFBa1JHVEZRQURteGhkRzRBRGdBR0FBQUFBQUFCQUFJQUNBQU1BQUgvV3dBQkFBQUFBQUFBQUFFQUFRQUJBQUFBQVFBQUhHUUFBQUFVQUFBQUFBQUFIRnd3Z2h4WUJna3Foa2lHOXcwQkJ3S2dnaHhKTUlJY1JRSUJBVEVMTUFrR0JTc09Bd0lhQlFBd1lRWUtLd1lCQkFHQ053SUJCS0JUTUZFd0xBWUtLd1lCQkFHQ053SUJIS0llZ0J3QVBBQThBRHdBVHdCaUFITUFid0JzQUdVQWRBQmxBRDRBUGdBK01DRXdDUVlGS3c0REFob0ZBQVFVb0ZMOFhVVm9GU2tGUHBRbmZEQUoyckFScmxHZ2dnc0hNSUlGVmpDQ0JENmdBd0lCQWdJUUdSb3l5M1djbDdqUHJCR04xUkovU1RBTkJna3Foa2lHOXcwQkFRc0ZBRENCeWpFTE1Ba0dBMVVFQmhNQ1ZWTXhGekFWQmdOVkJBb1REbFpsY21sVGFXZHVMQ0JKYm1NdU1SOHdIUVlEVlFRTEV4WldaWEpwVTJsbmJpQlVjblZ6ZENCT1pYUjNiM0pyTVRvd09BWURWUVFMRXpFb1l5a2dNakF3TmlCV1pYSnBVMmxuYml3Z1NXNWpMaUF0SUVadmNpQmhkWFJvYjNKcGVtVmtJSFZ6WlNCdmJteDVNVVV3UXdZRFZRUURFenhXWlhKcFUybG5iaUJEYkdGemN5QXpJRkIxWW14cFl5QlFjbWx0WVhKNUlFTmxjblJwWm1sallYUnBiMjRnUVhWMGFHOXlhWFI1SUMwZ1J6VXdIaGNOTVRRd016QTBNREF3TURBd1doY05NalF3TXpBek1qTTFPVFU1V2pDQmtURUxNQWtHQTFVRUJoTUNWVk14SFRBYkJnTlZCQW9URkZONWJXRnVkR1ZqSUVOdmNuQnZjbUYwYVc5dU1SOHdIUVlEVlFRTEV4WlRlVzFoYm5SbFl5QlVjblZ6ZENCT1pYUjNiM0pyTVVJd1FBWURWUVFERXpsVGVXMWhiblJsWXlCRGJHRnpjeUF6SUVWNGRHVnVaR1ZrSUZaaGJHbGtZWFJwYjI0Z1EyOWtaU0JUYVdkdWFXNW5JRU5CSUMwZ1J6SXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEUUdBTHU3YUtOQ0ZoakR5YlgzU0o3aVBia3grdzdKaGg0MDhla0lGT05nM3lsUDM2bHlDdEgzdzMxcHRuREhTV1RZTTk4M09vRExMNTRmMXhJYmFjQzJVbjRvZXZybW1GOG44QW0xdHdWMkxnUWZDQzZYdlFvOXFqcXAxeDh4cHlRa0RROHRpS3Mvcm9NT2g3V1hvUzJXL0NqZ1hCNGlvMUdVbnY4MjBuektSTVJkRStORnJQQzQ2QXR4d01FbmN6RGN1RU9EUHNDanZFbUYzdHVydmkzTTR1bVlVdEYzL0lsUk1mM3NKZ2pOdHdvZVFyb20zS0lxTmpvcm50L0NtUkZwZkJYa3BwM0JrVWU2NS9vWnZONmZaS0JYd0F0SHJqMlZoTmFZZzIzUjZHUGN1K0RYb0xnbEpqaHJLV3RoamZncDlPNnNUNTY2MFdvOGNGRWZlSURBZ01CQUFHamdnRnRNSUlCYVRBU0JnTlZIUk1CQWY4RUNEQUdBUUgvQWdFQU1DOEdBMVVkSHdRb01DWXdKS0Fpb0NDR0htaDBkSEE2THk5ekxuTjViV05pTG1OdmJTOXdZMkV6TFdjMUxtTnliREFXQmdOVkhTVUJBZjhFRERBS0JnZ3JCZ0VGQlFjREF6QU9CZ05WSFE4QkFmOEVCQU1DQVFZd0xnWUlLd1lCQlFVSEFRRUVJakFnTUI0R0NDc0dBUVVGQnpBQmhoSm9kSFJ3T2k4dmN5NXplVzFqWkM1amIyMHdYd1lEVlIwZ0JGZ3dWakJVQmdSVkhTQUFNRXd3SXdZSUt3WUJCUVVIQWdFV0YyaDBkSEJ6T2k4dlpDNXplVzFqWWk1amIyMHZZM0J6TUNVR0NDc0dBUVVGQndJQ01Ca2FGMmgwZEhCek9pOHZaQzV6ZVcxallpNWpiMjB2Y25CaE1Da0dBMVVkRVFRaU1DQ2tIakFjTVJvd0dBWURWUVFERXhGVGVXMWhiblJsWTFCTFNTMHhMVFl5T1RBZEJnTlZIUTRFRmdRVUZtYmVTalRqVUtjUmhnT3hiS25Hck0xWmJwc3dId1lEVlIwakJCZ3dGb0FVZjlObHA4TGQ3THZ3TUFuelF6bjZBcTh6TVRNd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFEOWJHZlA2RTlWMU9DcGE3cDlhb0V5cEhjWE1sTzdlRmY3MUVHNmtHNlZrZzFRWVdNUUxLS0dGdzA1MDVmK0pmUDdWN1R5NmNaOVdBaWFQRmlxSS9yQ2pKeUxPUytJNGpnQ21Pb1pmbmVVK3FONWtTVUYwUVNIOUI4aUVGOW9kWlRDQ3l5WlBPZFlFSjZTQnNVdEp3eU9MZmdJeUdDZTNxd3Z6R0hLMnBPNW5CbTg0cGxpTjRQRitYYVJneHFqbFVGL2c2THJpajVsWXRyV2dxSGJ4b3ZFY2lFRnlmbEtYbXdvMm1ZMVE5d0hyUE9md0ltcmxOWXhqTm9vYXNkbG5abCtYR3Urb0lKM3dMN3BzenRtVWhRRHhXUEY5eVh3aXRRZGRBc2JtQzcrcms1UC9KeGlPTXpaK1Z6VHh3NjhFd1lUeFZyUG9oNE0yK05NS01keHVMRzB3Z2dXcE1JSUVrYUFEQWdFQ0FoQmVlMURKK1RDZHNGc2pTUGFLS1lRbE1BMEdDU3FHU0liM0RRRUJDd1VBTUlHUk1Rc3dDUVlEVlFRR0V3SlZVekVkTUJzR0ExVUVDaE1VVTNsdFlXNTBaV01nUTI5eWNHOXlZWFJwYjI0eEh6QWRCZ05WQkFzVEZsTjViV0Z1ZEdWaklGUnlkWE4wSUU1bGRIZHZjbXN4UWpCQUJnTlZCQU1UT1ZONWJXRnVkR1ZqSUVOc1lYTnpJRE1nUlhoMFpXNWtaV1FnVm1Gc2FXUmhkR2x2YmlCRGIyUmxJRk5wWjI1cGJtY2dRMEVnTFNCSE1qQWVGdzB4TlRBMU1UUXdNREF3TURCYUZ3MHhOekExTURjeU16VTVOVGxhTUlIME1STXdFUVlMS3dZQkJBR0NOendDQVFNVEFsVlRNUmt3RndZTEt3WUJCQUdDTnp3Q0FRSVVDRVJsYkdGM1lYSmxNUjB3R3dZRFZRUVBFeFJRY21sMllYUmxJRTl5WjJGdWFYcGhkR2x2YmpFUU1BNEdBMVVFQlJNSE1qYzBPREV5T1RFTE1Ba0dBMVVFQmhNQ1ZWTXhFekFSQmdOVkJBZ01Da05oYkdsbWIzSnVhV0V4RVRBUEJnTlZCQWNNQ0ZOaGJpQktiM05sTVNNd0lRWURWUVFLREJwQlpHOWlaU0JUZVhOMFpXMXpJRWx1WTI5eWNHOXlZWFJsWkRFU01CQUdBMVVFQ3d3SlZIbHdaU0JHYjI1ME1TTXdJUVlEVlFRREZCcEJaRzlpWlNCVGVYTjBaVzF6SUVsdVkyOXljRzl5WVhSbFpEQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQUpVcjlDKzNmaWxtTUVpVFJpLzljRDRQaDM3RUovMmdEaHY1QU4zNm5TbENBcWJ0MjhobDZVSlhldFdXWU1qSGRHQWN2SFUxU043VTM1VW1wYTY1WG12aTRtbmF0Rkdvc09JcWgrd0ZrankzWG5pOEhPSlVOSUFkUzlNWENYQzZsbkd3dk1Vb3pEaEkxRXFYOWUyVzlra3ZvYnNDcytvWGF6K3pLQktQVVNLRDRjTHJ2S1pRNGxXWHU5MXA2di9NQzlOUkV6c2I2R3JtbEVmcVpxTDZrYVBLMjNXK2xrWVdWZ3RuYTN6dU9RSWVuaFFxRUdoRmN0WU41N3ZveVMrSzMwZDdnVVBwdWc0WkNsUmhON1plaXVNMHlYV0cvZm9LUUt1R29lcnN1RGRGMWNnWFJrcGZDVjNnWkNVUkNZNHFKYzd5UWJTT3NWWUczTE45N3Vmd2c1a0NBd0VBQWFPQ0FaWXdnZ0dTTUM0R0ExVWRFUVFuTUNXZ0l3WUlLd1lCQlFVSENBT2dGekFWREJOVlV5MUVaV3hoZDJGeVpTMHlOelE0TVRJNU1Ba0dBMVVkRXdRQ01BQXdaZ1lEVlIwZ0JGOHdYVEJiQmd0Z2hrZ0JodmhGQVFjWEJqQk1NQ01HQ0NzR0FRVUZCd0lCRmhkb2RIUndjem92TDJRdWMzbHRZMkl1WTI5dEwyTndjekFsQmdnckJnRUZCUWNDQWpBWkRCZG9kSFJ3Y3pvdkwyUXVjM2x0WTJJdVkyOXRMM0p3WVRBckJnTlZIUjhFSkRBaU1DQ2dIcUFjaGhwb2RIUndPaTh2YzNjdWMzbHRZMkl1WTI5dEwzTjNMbU55YkRBV0JnTlZIU1VCQWY4RUREQUtCZ2dyQmdFRkJRY0RBekFPQmdOVkhROEJBZjhFQkFNQ0I0QXdIUVlEVlIwT0JCWUVGTEJ0MVJvb1JXSXlpTkh1YVBCNC9ZaFJOTXJWTUZnR0NDc0dBUVVGQndFQkJFd3dTakFmQmdnckJnRUZCUWN3QVlZVGFIUjBjRG92TDNOM0xuTjViV05rTG1OdmJUQW5CZ2dyQmdFRkJRY3dBb1liYUhSMGNEb3ZMM04zTVM1emVXMWpZaTVqYjIwdmMzY3VZM0owTUI4R0ExVWRJd1FZTUJhQUZCWm0za28wNDFDbkVZWURzV3lweHF6TldXNmJNQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUJhb3ZVdEFpTExUZkVkbm1YMFNUcENWdkhOdk4xa29wL1lVZ1paQ29VdE5FMm5xWDczZ2c0SHBRb3NGcEdSRGo2Sy9wNi9uaHlTUmZSS1pZcndTOHdHT2JtVG9rK1l4T1NJVEp2SmQxU05aRURSbFpkOXU3UloxTkZuOUJXeDZ0c255SnhaN2pZTS9DcCsvVmFrUnlSOVprMDBVQWJmbVRhbTVWbUJTZElFS3V0TWl4WFFrdDljNzhOa01HbnZhSWJZRzRSUVN6dll5eDFJTENab3Uwc0E0NDdFaGNaZzdPa3BXTHl2M3Qvb0Z1d01UeGN2WHBlOFArMDZCaDRVbUc5bFBvcmtJSDRaYlNDdEVMcGZQcXZ6UHZmcDRWd2YrZmUvY3Rka3FLOTdYcWI0ZXFSVkcvckdubUpIM1lYMzFmL25oajZOMll5azdxYWZ5Q0ZNTlVUVk1ZSVF3ekNDRUw4Q0FRRXdnYVl3Z1pFeEN6QUpCZ05WQkFZVEFsVlRNUjB3R3dZRFZRUUtFeFJUZVcxaGJuUmxZeUJEYjNKd2IzSmhkR2x2YmpFZk1CMEdBMVVFQ3hNV1UzbHRZVzUwWldNZ1ZISjFjM1FnVG1WMGQyOXlhekZDTUVBR0ExVUVBeE01VTNsdFlXNTBaV01nUTJ4aGMzTWdNeUJGZUhSbGJtUmxaQ0JXWVd4cFpHRjBhVzl1SUVOdlpHVWdVMmxuYm1sdVp5QkRRU0F0SUVjeUFoQmVlMURKK1RDZHNGc2pTUGFLS1lRbE1Ba0dCU3NPQXdJYUJRQ2dnYkl3R1FZSktvWklodmNOQVFrRE1Rd0dDaXNHQVFRQmdqY0NBUVF3SEFZS0t3WUJCQUdDTndJQkN6RU9NQXdHQ2lzR0FRUUJnamNDQVJVd0l3WUpLb1pJaHZjTkFRa0VNUllFRklLak5LU01ldjM0eXVPazluNE90QzdxZ0FZd01GSUdDaXNHQVFRQmdqY0NBUXd4UkRCQ29FQ0FQZ0JCQUdRQWJ3QmlBR1VBSUFCVUFIa0FjQUJsQUNBQVRBQnBBR0lBY2dCaEFISUFlUUFnQUdZQWJ3QnVBSFFBSUFCbUFHRUFiUUJwQUd3QWVRQXVNQTBHQ1NxR1NJYjNEUUVCQVFVQUJJSUJBR3hqMVdTUEwwS3RtZ045V1V5KzVkejh1Q2xTM2dVSE9iMW15VkdZc1VCamQ3SDg4T1VodFVrejhVNVhUVEJNUHd6YlMvSVZPdXpWdlhWZzJoRjNqZ2ZtL0t1M3QvL0VUdE9TbDhhSWhLQlo1Wm53dkhvbld5dlg3NTkxeXE2eEhqcGVSZ3hKZW0vaU5JeGxqcWt4elh5bWU4RG1MWm9pWWJmRkZpaTNWdlkxcEgxV2UvSVAwWCtiTGVjaHVLOUFIWHRyczhiZWFPaGUzakhwQWhodHhQS3IxSWNSNExid09mSGFOaTQ4NXk4YTRVcjZoWDBmMCszSUlCQW53TWdFdldEKzk5RFBJTzdGTnhIaEo2MFdxK0tEa2d6K0VjWVpuajVmNUJ2R1lOdDVmS0tuRDNjaFMvZUVRWXU0ZldybEQ0RUdqbmIvVmZiTVFXRFc1ZEIyR3ZXaGdnNDhNSUlPT0FZS0t3WUJCQUdDTndNREFUR0NEaWd3Z2c0a0Jna3Foa2lHOXcwQkJ3S2dnZzRWTUlJT0VRSUJBekVOTUFzR0NXQ0dTQUZsQXdRQ0FUQ0NBUTRHQ3lxR1NJYjNEUUVKRUFFRW9JSCtCSUg3TUlINEFnRUJCZ3RnaGtnQmh2aEZBUWNYQXpBeE1BMEdDV0NHU0FGbEF3UUNBUVVBQkNDY2QzUXlzRXpMaHVLQnRHWmhiZGJXVW1BbFVlcGhRMDYrQVJMUkIvMW1wd0lVQVY0UW05b1Q2cnpMdWcrS0JvODU2aFE0bG44WUR6SXdNVGN3TVRBMU1UYzFPRE15V2pBREFnRWVvSUdHcElHRE1JR0FNUXN3Q1FZRFZRUUdFd0pWVXpFZE1Cc0dBMVVFQ2hNVVUzbHRZVzUwWldNZ1EyOXljRzl5WVhScGIyNHhIekFkQmdOVkJBc1RGbE41YldGdWRHVmpJRlJ5ZFhOMElFNWxkSGR2Y21zeE1UQXZCZ05WQkFNVEtGTjViV0Z1ZEdWaklGTklRVEkxTmlCVWFXMWxVM1JoYlhCcGJtY2dVMmxuYm1WeUlDMGdSekdnZ2dxTE1JSUZPRENDQkNDZ0F3SUJBZ0lRZXdXeDFFbG9VVVQzeVluU25CbWRFakFOQmdrcWhraUc5dzBCQVFzRkFEQ0J2VEVMTUFrR0ExVUVCaE1DVlZNeEZ6QVZCZ05WQkFvVERsWmxjbWxUYVdkdUxDQkpibU11TVI4d0hRWURWUVFMRXhaV1pYSnBVMmxuYmlCVWNuVnpkQ0JPWlhSM2IzSnJNVG93T0FZRFZRUUxFekVvWXlrZ01qQXdPQ0JXWlhKcFUybG5iaXdnU1c1akxpQXRJRVp2Y2lCaGRYUm9iM0pwZW1Wa0lIVnpaU0J2Ym14NU1UZ3dOZ1lEVlFRREV5OVdaWEpwVTJsbmJpQlZibWwyWlhKellXd2dVbTl2ZENCRFpYSjBhV1pwWTJGMGFXOXVJRUYxZEdodmNtbDBlVEFlRncweE5qQXhNVEl3TURBd01EQmFGdzB6TVRBeE1URXlNelU1TlRsYU1IY3hDekFKQmdOVkJBWVRBbFZUTVIwd0d3WURWUVFLRXhSVGVXMWhiblJsWXlCRGIzSndiM0poZEdsdmJqRWZNQjBHQTFVRUN4TVdVM2x0WVc1MFpXTWdWSEoxYzNRZ1RtVjBkMjl5YXpFb01DWUdBMVVFQXhNZlUzbHRZVzUwWldNZ1UwaEJNalUySUZScGJXVlRkR0Z0Y0dsdVp5QkRRVENDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMdFpuVmxWVDUyTWNsMGFnYUxyVmZPd0FhMDhjYXd5andWcmhwb25BREtYYWszSlpCUkxLYnZDMlNtNUx1eGpzK0hQUHd0V2tQaGlHMzdycGdmaTNuOWViVUE0MUpFRzUwRjhlUnpMeTYwYnY5aVZrZlB3N216NHJaWTVMbi9CSjdoNE9jV0VwZTN0cjRlT3pvM0hiZXJTbUxVNkh4NDVuY1AwbXFqMGhPSEUwWHh4eGdZcHREL2tndzBtdzNzSVBrMzVDcmN6U2YvS085VDFzcHRMNFlpWkd2WEE2VE1VMXQvSGdOdVI3djY4a2xkeWQvVE5xTXorQ2ZXVE43NlZpR3JGM1BTeFM5VE82QW1SWDdXRWVUV0tlS3daTW84andUSkJHMWtPcVQ2eHpQbldLKyszMk9UVkhXMFJPcEwyazhtYzQwanV1MU1PMURhWGhuakZvVGNDQXdFQUFhT0NBWGN3Z2dGek1BNEdBMVVkRHdFQi93UUVBd0lCQmpBU0JnTlZIUk1CQWY4RUNEQUdBUUgvQWdFQU1HWUdBMVVkSUFSZk1GMHdXd1lMWUlaSUFZYjRSUUVIRndNd1REQWpCZ2dyQmdFRkJRY0NBUllYYUhSMGNITTZMeTlrTG5ONWJXTmlMbU52YlM5amNITXdKUVlJS3dZQkJRVUhBZ0l3R1JvWGFIUjBjSE02THk5a0xuTjViV05pTG1OdmJTOXljR0V3TGdZSUt3WUJCUVVIQVFFRUlqQWdNQjRHQ0NzR0FRVUZCekFCaGhKb2RIUndPaTh2Y3k1emVXMWpaQzVqYjIwd05nWURWUjBmQkM4d0xUQXJvQ21nSjRZbGFIUjBjRG92TDNNdWMzbHRZMkl1WTI5dEwzVnVhWFpsY25OaGJDMXliMjkwTG1OeWJEQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0RDREFvQmdOVkhSRUVJVEFmcEIwd0d6RVpNQmNHQTFVRUF4TVFWR2x0WlZOMFlXMXdMVEl3TkRndE16QWRCZ05WSFE0RUZnUVVyMlBXeXFOT2hYTGdwN3hCOHltaU9IK0FkV0l3SHdZRFZSMGpCQmd3Rm9BVXRuZjZhVWhIbjFNUzFjTHFCekoyQjlHWEJ4a3dEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBSFhxc0MzVk5CbGNNa1grRHVIVVQ2WjR3Vy9YNnQzY1QvT2h5SUdJOTZlUEZlWkFLYTNtWGZTaTJWWmtoSEV3S3QwZVlSZG1JRllHbUJtTlhYSHkrSmU4Q2YwY2tVZko0dWlOQS92TWtDL1dDbXhPTSt6V3RKUElUSkJqU0RsQUljVGQxbTZKbUR5MW1KZm9xUWEzQ2NtUFUxZEJrQy9oSGsxTzNNb1FlR3hDYnZDMnhmaGhYRkwxVHZacmpmZEtlcjd6emYwRDE5bjJBNmdQNDFQM0NuWHN4blV1cW1hRkJKbTMrQVpYNGNZTzl1aXYydXliR0IrcXVlTTZBTC9PaXBUTEFkdWV4emk3RDFLcjBlT1VBMkFLVGFEK0oyMFVNdncvbDBEaHY1bUoyK1E1RkwzYTVOUEQ2aXRhczVWWVZRUjl4NXJzSXdPTmhTclMvNjZwWVlFd2dnVkxNSUlFTTZBREFnRUNBaEJVODMyaGNXZFJ2R3FOQ3RKMHNvc1RNQTBHQ1NxR1NJYjNEUUVCQ3dVQU1IY3hDekFKQmdOVkJBWVRBbFZUTVIwd0d3WURWUVFLRXhSVGVXMWhiblJsWXlCRGIzSndiM0poZEdsdmJqRWZNQjBHQTFVRUN4TVdVM2x0WVc1MFpXTWdWSEoxYzNRZ1RtVjBkMjl5YXpFb01DWUdBMVVFQXhNZlUzbHRZVzUwWldNZ1UwaEJNalUySUZScGJXVlRkR0Z0Y0dsdVp5QkRRVEFlRncweE5qQXhNVEl3TURBd01EQmFGdzB5TnpBME1URXlNelU1TlRsYU1JR0FNUXN3Q1FZRFZRUUdFd0pWVXpFZE1Cc0dBMVVFQ2hNVVUzbHRZVzUwWldNZ1EyOXljRzl5WVhScGIyNHhIekFkQmdOVkJBc1RGbE41YldGdWRHVmpJRlJ5ZFhOMElFNWxkSGR2Y21zeE1UQXZCZ05WQkFNVEtGTjViV0Z1ZEdWaklGTklRVEkxTmlCVWFXMWxVM1JoYlhCcGJtY2dVMmxuYm1WeUlDMGdSekV3Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRQ2YrOStQSDZmUG5qNGF5K3RvcmM4bkhPNkJWYW1IQ0ZqbGdVMEpGT0R0MFBQVUR6OGh0aDRPTk5UeGFBcHZmWStKMmZMcXA5Z2xPS1NNTnNydUtNOHorSFU5MkozUGt0MVc0L2F3ZVZSbXRVV0NRMFRTYXJHckY2TEQ1ZThBNmlmeko0Z09oenoyYnJ5cDdQYTdMbXAzQmlLOStyaC93eVFIOXorN1RMRC9ROHVUeWhLcWxTUUFrTElyTnFMUzNkS3owWmt5M2MvMHpITVdTWU4vSk92dGVFYlQ3bDlzUW1VYlo0M3dKaG9PWG9kdVdvK2dnbjV1bjgwbTNyMWg3MFJlUll1b2xOTWNCREtoLzZTbm9xcDNBZHNxM2c5TWtqYkdhYXhjaElDdEpmWHRNTU5vSFJmYkNrMmFOSGhaQVp0ckFvVTQ0aWR4b2hSVU1HQ1RJRWdqQWdNQkFBR2pnZ0hITUlJQnd6QU1CZ05WSFJNQkFmOEVBakFBTUdZR0ExVWRJQVJmTUYwd1d3WUxZSVpJQVliNFJRRUhGd013VERBakJnZ3JCZ0VGQlFjQ0FSWVhhSFIwY0hNNkx5OWtMbk41YldOaUxtTnZiUzlqY0hNd0pRWUlLd1lCQlFVSEFnSXdHUm9YYUhSMGNITTZMeTlrTG5ONWJXTmlMbU52YlM5eWNHRXdRQVlEVlIwZkJEa3dOekExb0RPZ01ZWXZhSFIwY0RvdkwzUnpMV055YkM1M2N5NXplVzFoYm5SbFl5NWpiMjB2YzJoaE1qVTJMWFJ6Y3kxallTNWpjbXd3RmdZRFZSMGxBUUgvQkF3d0NnWUlLd1lCQlFVSEF3Z3dEZ1lEVlIwUEFRSC9CQVFEQWdlQU1IY0dDQ3NHQVFVRkJ3RUJCR3N3YVRBcUJnZ3JCZ0VGQlFjd0FZWWVhSFIwY0RvdkwzUnpMVzlqYzNBdWQzTXVjM2x0WVc1MFpXTXVZMjl0TURzR0NDc0dBUVVGQnpBQ2hpOW9kSFJ3T2k4dmRITXRZV2xoTG5kekxuTjViV0Z1ZEdWakxtTnZiUzl6YUdFeU5UWXRkSE56TFdOaExtTmxjakFvQmdOVkhSRUVJVEFmcEIwd0d6RVpNQmNHQTFVRUF4TVFWR2x0WlZOMFlXMXdMVEl3TkRndE5EQWRCZ05WSFE0RUZnUVU3V3Rnenp0WStENHl6TCtrNkt2bzZxSlFRbjh3SHdZRFZSMGpCQmd3Rm9BVXIyUFd5cU5PaFhMZ3A3eEI4eW1pT0grQWRXSXdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBS0tOWGwwZDdrN1NrLzFQNWZSdHB2Q0pSVlc3Q01xckpLRVdKTWxQRjhHZjlOMENtc0pId0tuY2lJbDN3WWFHOGRWSmx2UDdIcGpXeVIwMUk0aVppbUxoZGFoTmVLYzk3Q1NBRlo1bzFEcWt3a3pjY1d5V25ZNGVEQzVzVWdHZVZwQS9vbDZTemJiYVFSb2tnNkY2bzEvK2pUdHZPZEUvUVY5V0hDY001WHdGMkdjMmlPV3d3c01FbzFwV3VCSUVqdFNjSkdzYlpyUytvQnJodGMzczQwU2tzVHpua3ZOWTNkL29zVmhMY0V2T2tBRE0zS1BSMG01MUZsUkVBdThiVkVSajZMVnd5TGxIbWx0RnhHNTJtaGl4OXhBenlBdFI5VldNL1NFZVFZOU9QcEJkZ0FISXZDUitobWdVRlJRME5YUkp0NGRTS2RhV1hxS2pGdFN3MDNzeGdnSmFNSUlDVmdJQkFUQ0JpekIzTVFzd0NRWURWUVFHRXdKVlV6RWRNQnNHQTFVRUNoTVVVM2x0WVc1MFpXTWdRMjl5Y0c5eVlYUnBiMjR4SHpBZEJnTlZCQXNURmxONWJXRnVkR1ZqSUZSeWRYTjBJRTVsZEhkdmNtc3hLREFtQmdOVkJBTVRIMU41YldGdWRHVmpJRk5JUVRJMU5pQlVhVzFsVTNSaGJYQnBibWNnUTBFQ0VGVHpmYUZ4WjFHOGFvMEswblN5aXhNd0N3WUpZSVpJQVdVREJBSUJvSUdrTUJvR0NTcUdTSWIzRFFFSkF6RU5CZ3NxaGtpRzl3MEJDUkFCQkRBY0Jna3Foa2lHOXcwQkNRVXhEeGNOTVRjd01UQTFNVGMxT0RNeVdqQXZCZ2txaGtpRzl3MEJDUVF4SWdRZ25ZcE9ZV3ZyQW5nMllISm9VWjFwdDExbVZ6bGVKVXhlQlZRVFNtNDQ5OVl3TndZTEtvWklodmNOQVFrUUFpOHhLREFtTUNRd0lnUWdndFZXMjl0ZHJWK2dlN1lISnFiWWJuTUxXN2NwaUZ1MjNrL3lkU2tDTFB3d0N3WUpLb1pJaHZjTkFRRUJCSUlCQUl2YmlhNGg5QXQxM1hjUmpZT3kvZDVpVEZ4Ulo4cGVXYUgwRlVuYkJNM0U4a0I0dTd1RitxUElKSlFqZ2xzQ2JwZXI2RzBwQ3Y0TzUrQXBkZ3ZmcURaT25mRWZnWVUzQnpBQXB6bmNQZE5QV0wySWpIaHUyaEsxZ2V2K2k1SEtvUTJJamxjMVNYRXpmZlNCYVl6T05FMFlTZHdxR293RzQ5NVVKdTF0OFRZUkFUNnlqVncrZEhRN2VESERLeWtpelJqNjh1elBBdUh3WitEeFhhbXJ4RWpxSGI1VVZOdlBLUU0yek4xMXBFWmN5VkhNU0hUcmdBYVM2N2YvSjFRYWRpSllwdkpDSGhjTkpvNEYwdFFkWTRnNU9BVTM5eGx6cFByd2tHN2RCUUhDU1JoV2NTeVB6eU9LcllGU2pyM3l3Rnl4NWxObHF2QWxoODVBVVpPb25yRT0ifSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz0iQUFFQUFBQVJBUUFBQkFBUVJGTkpSd0FBQUFFQUFIVFlBQUFBQ0VaR1ZFMWZsSWd6QUFDWXdBQUFBQnhIUkVWR0FQc0FKQUFBZE9BQUFBQW9SMUJQVSs1WDhrY0FBSFU0QUFBamhrZFRWVUs0LzdqK0FBQjFDQUFBQURCUFV5OHloeTFXVlFBQUFaZ0FBQUJnWTIxaGNHV2tGUjRBQUFVb0FBQUNRbWRoYzNBQUFBQVFBQUIwMEFBQUFBaG5iSGxtYWpENmdRQUFDUkFBQUdLMGFHVmhaUGxsek1zQUFBRWNBQUFBTm1ob1pXRUg1QU9mQUFBQlZBQUFBQ1JvYlhSNGxqQWdFd0FBQWZnQUFBTXdiRzlqWVdTVFRHb0FBQWQwQUFBQm1tMWhlSEFCRXdCWkFBQUJlQUFBQUNCdVlXMWxQMFVTdUFBQWE4UUFBQWRLY0c5emRKK2xuYk1BQUhNUUFBQUJ2M0J5WlhCb0JveUZBQUFIYkFBQUFBY0FBUUFBQUFFQUFDZEFxQ3BmRHp6MUFBc0Q2QUFBQUFETEJjVG9BQUFBQU1zRnhPai9wUDV3QkpjRHBnQUFBQWdBQWdBQUFBQUFBQUFCQUFBRHB2NXZBQUFFcy8ray83QUVsd0FCQUFBQUFBQUFBQUFBQUFBQUFBQUF6QUFCQUFBQXpBQldBQVVBQUFBQUFBSUFBQUFCQUFFQUFBQkFBQUFBQUFBQUFBSUJpUUdRQUFVQUFBSzhBb29BQUFDTUFyd0NpZ0FBQWQwQU1nRDZBQUFDQUFBQUFBQUFBQUFBZ0FBQUowQUFBRW9BQUFBQUFBQUFBSEI1Y25NQVFBQWcrd0lEcGY1dkFBQURwZ0dSSUFBQkVRQUFBQUFCU3dHMkFBQUFJQUFDQWZRQUFBQUFBQUFCVFFBQUFPSUFBQURwQURRQlJBQTFBbE1BSlFJYkFCd0Mzd0FqQVZJQUx3QzZBRGdCRWdBbkFPNEFGQUc2QURnQnhnQWZBTGYvM1FJaEFFQUE0Z0F5QWVzQUZ3S0VBRFlCVWdBUkFqZ0FFUUlNQUNnQ0lBQVpBa0lBSlFKRkFETUI1Z0FkQWxnQU9BSDRBQjhBOVFBL0FQUUFIUUhaQUI0Q1dnQk9BZGtBSGdHNEFDSUNEQUFzQXJZQUpnSzRBRkFDNGdBd0F2VUFUUUoyQUZJQ1dnQk1BdmtBTUFMUkFFMEE5QUJUQWQwQUNRS0VBRllDRndCVkExMEFUQU1OQUZRREx3QXhBcDhBU3dNT0FERUN0UUJOQW5NQUtBS0YvL01DcmdCRkFxQUFEQVFYQUVNQ2d3QUFBbFVBRXdLRUFCa0JiQUE1QWVFQUhBRmpBQkFCdkFBdEF0VUFZZ0ZrQUVzQndRQW9BY1FBT3dHK0FDZ0IyUUFyQWRrQUp3RTZBQUlCMGdBTEFlZ0FRUURJQUVBQXlmK2tBZGdBUGdEdUFFRUNuQUEvQWR3QU9nSHFBQ3NCMXdBMUFjOEFMQUdPQURJQnRBQVpBV2IvL3dIS0FDMEJ3UUFNQXFBQU53R0RBQnNCdXYvK0FiZ0FGd0ZMQUJvQXlRQStBU1FBSEFJdUFDc0ExZ0F3QVlvQUx3TFZBQ01DS1FBb0FkSUFKZ0hoQUVRQzJRQTJBV3NBTFFLYUFCOEN6QUE0QVdFQUtRR3pBRGdCZGdCSkFwMEFPUUs4QUNBQTdBQTVBWUFBTFFFakFDd0Nsd0FoQWE0QUhRSzJBQ1lDdGdBbUFyWUFKZ0syQUNZQ3RnQW1BcllBSmdQWkFBUUM0QUF3QW5ZQVVnSjJBRklDZGdCU0FuWUFVZ0QwQUFzQTlQLzZBUFQvMFFEMC85Y0REUUJVQXk4QU1RTXZBREVETHdBeEF5OEFNUU12QURFREhRQXlBcTRBUlFLdUFFVUNyZ0JGQXE0QVJRSkVBRGdCd1FBb0FjRUFLQUhCQUNnQndRQW9BY0VBS0FIQkFDZ0RFd0FvQWIwQUtBSFpBQ2NCMlFBbkFka0FKd0haQUNjQXlQLzRBTWovM1FESS83NEF5UCs4QWR3QU9nSHFBQ3NCNmdBckFlb0FLd0hxQUNzQjZnQXJBaDBBTlFJM0FDTUJ5Z0F0QWNvQUxRSEtBQzBCeWdBdEFici8vZ0RJQUVJRXN3QXhBeVFBS3dKVkFCTUJ2Z0JCQVlNQUxBRkxBRUlCMndBN0FwTUFRQU1IQUVNQXV3QXJBTDBBTUFDMy85MEJTZ0FxQVVvQU1BRlMvOTBCcGdBZ0FYNEFUQUxwQURJQnBRQVpBYUFBSUFML0FDTUM0d0E2QXhvQU9BSWFBRFFCdndBN0FaNEFRZ0grQUFJQ0ZnQUNBQUFBQXdBQUFBTUFBQUFjQUFFQUFBQUFBVHdBQXdBQkFBQUFIQUFFQVNBQUFBQkVBRUFBQlFBRUFINEFvd0NsQUtzQXJnQ3hBTGdBdXdEUEFOWUEzQUR2QVB3QS93RXhBVk1CZUFMSEF0b0MzQ0FVSUJvZ0hpQWdJQ0lnSmlBNklLd2hJaUllSW1BaVpmc0MvLzhBQUFBZ0FLRUFwUUNuQUs0QXNBQzBBTG9BdndEUkFOZ0Ezd0R4QVA4Qk1RRlNBWGdDeGdMYUF0d2dFeUFZSUJ3Z0lDQWlJQ1lnT1NDc0lTSWlIaUpnSW1UN0FmLy8vK1Avd2YvQS83Ly92Zis4LzdyL3VmKzIvN1gvdFAreS83SC9yLzkrLzE3L092M3QvZHY5MnVDazRLSGdvT0NmNEo3Z20rQ0o0Qmpmbzk2bzNtZmVaQVhKQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFZQUFBRUFBQUFBQUFBQUFRSUFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFBQXdRRkJnY0lDUW9MREEwT0R4QVJFaE1VRlJZWEdCa2FHeHdkSGg4Z0lTSWpKQ1VtSnlncEtpc3NMUzR2TURFeU16UTFOamM0T1RvN1BEMCtQMEJCUWtORVJVWkhTRWxLUzB4TlRrOVFVVkpUVkZWV1YxaFpXbHRjWFY1ZllHRUFlbnQ5ZjRhTGtKT1NsSmFWbDVtYm1weWRuNTZnb2FLa282V25wcXVxcksyL2JHTmtac0J3a1d0b3hXNW54M3lNeG0zSXlXVnZBQUFBQUFCcGN3Q1lxWFZpQUFBQUFBQnFkTUVBZG5tS3NMRzN1THk5dWJxb0FLNnlBTVRDdzhyTEFIRzd2Z0I0Z0hlQmZvT0VoWUtJaVFDSGpvK05yN08yQUFBQXRYSUFBTFFBQUxnQi80V3dCSTBBQUFBQUFBQUFBQUFBQUFBb0FGZ0ExQUZDQVpJQjVBSUFBaUFDUGdLV0Fzb0M2QU1JQXhvRE9BTm9BNDREeWdRT0JGd0VwQVRnQlE0RlpBV1lCYllGNWdZY0Jrb0dmZ2E0QndnSFRBZVNCOFFIK2doS0NKQUl6QWtLQ1NRSlNBbUVDYVlKNkFvbUNsUUtrQXJhQ3pBTGRndWdDOUlNQUF4WURKWU14Z3o2RFNvTlNnMkNEYTROeWczcURpd09iQTZlRHVJUEhBOW9ENllQM0JBS0VFSVFqQkMyRVF3UlNCRnVFYVFSNGhJV0VsUVNuQkxPRXZnVFNCT0lFOVFVQWhSQUZGd1VvQlRLRlBJVlNCV2NGZmdXVUJad0ZySVc1QmMwRjVBWHNCZjZHQmdZWUJpZ0dMSVkzQmo2R1VJWmZCbmFHallhbUJzQ0cyQWJ4QndlSEhJYzFCMDBIWndkL2g0eUhtSWVtaDdPSHk0ZmRCKzJJQUFnVWlDWUlQZ2hSQ0dNSWR3aUtDSjBJczRqSmlPR0krd2tSaVNtSlJBbFlpVzBKZ1FtV2lhc0p1QW5FaWRLSjM0bjNpZ2NLRmdvbWlqa0tTSXBVaW1pS2U0cU5pcUdLdElyT0N0U0s4SXNHaXhpTElZc3JpelNMUDR0SUMxQ0xWZ3RkQzJTTGI0dDZpNGVMbEl1WkM2T0xyZ3U0aTlLTDZBdjVEQThNSEl3ckRENk1Wb0FBQUFDQURULzRnQ3VBc0lBRFFBWEFBQVRQZ0V6TWhVQ0J3NEJJeUkxTmhNMk1oWVVCaUltTlRSYUFSb1FHd0lOQVIwT0dRNElDeDhpS3lVcUFxY01EeFQrMlpRTER4U1Qvc1VDR0Nvakd3OHdBQUlBTlFIbkFRc0N2d0FRQUI0QUFCTTBKelEyTXpJVkZCWU9BZ2NHSWpVM05EWXpGeFlkQVJRR0l5Y21OVHNHR3hJZ0FRRUNCUVVKTTRzY0N3NFJIUXNORVFKT0tDWVBGSE1HSFF3WEN3Y0xGYVVQRFFJRkVLUVBEZ0lGRVFBQUFBSUFKZi8zQWlrQi9nQk5BRlVBQUFFSEZqTXlGUlFqSWlZakJnY0dJeUkxTkRZM0JnY0dCdzRCSXlJMU5EWTNCd1ltTkQ0Q01qYzJOdzRCSmpVMFBnRTNQZ016TWhVVUJnYzJOelkzUGdFekZoY0dCeFlWRkNjaUpnYzJOelkzQmdjR0FhOFNBeVZrT1I4NEF4QVlCaXNRSmdWQVVCZ09BaDBMRnlRRERqd1pEaHNZSmdnYUNDMC9GQzVPRGdRU0JSd01GeFlDT2pzSEN3RWNEUlVCQ0F4dlFnNGszRjhzQmd3M1FoQUJVM01CRXgwSlZrd1ZDQkI3SWdVTVRrZ0xEUThiY2dzQ0Jnd1JEQVVDQVZFZ0N3SUpDZ2dLQ3dNVFRpQU5FQjFNQndrRE56a0pEUUVOSjFBRERSd0RBNFVNQXloT0FRdzhBQUFBQXdBYy96OEIrUU1jQURVQVBBQkhBQUFUTnpRMk1oY1ZNaGNXRGdFbkppY0dCeDRFRnhZVkZBNEJCd1lIQmdjVUJpSW5OamNpSnlZMU5EWXlGeFlYRXk0Qk5EWUhGQmMwTnc0QkV6WTNOalUwSmljbUp3YjhBUm9YQWxSQ0JSd2hDQ1V4QWdFRlBoVTBGZzhiSnk4aktEQUNBUm9ZQWdJQ2lFMEVLaFVGUFZnRVNsRmNHVmtDSVRxSUtTSkJJaGt1SUFJQ25XMEhDd1J6UlFvUkF3VW5ETEphQXlBTUlSZ1NJQzhhTEJnS0N3aVFTUWdLQlpoTE9nSUNCaElETEFnQkJTWktkVnFHUER0UW5nZEkvaG9DRGhvdUdUUVRKQStjQUFBQUFBVUFJLy9EQXI0Q2p3QUhBQThBSEFBbUFERUFBQkkyTWhZVUJpSW1OaFl5TmpRbUlnWWxOaklYQmdjR0J3WWlKellBRXpJV0ZBWWpJaVkxTkI0Qk1qWTBKaUlPQVJRVkkzRmpQbWRzUHo4aFB6UWdUQ2dCd0FnM0FsdDZiSDRMTUFROEFURnhMazFqT3ljeVB5RXRLeVExSEFRQ09VUXRXbHN2SWljelB5YzBWUkFRcExPZ3RSQVBZZ0c4L3VneldGQTJJNEtRSmk4K0ppQWRFUVVBQUFBQkFDOEFCd0U1QW5ZQU9BQUFOaFl5TmpJVkZBWUhGaGNPQVNNaUp5WTFMZ0UxTkRjbU5UUTNKalEzUGdFeUZ3WVVGeklWRkFZaUJnY0dGUlFXRnhZVkZBWWlKdzRCY2pJNE1pdFFJZ0VIQVI4SEZnSUpKekU2SWpVSkR3SWdHZ0lPQ1RZWUd4SU1GeGtQS0NFUUJSWWI2aUljRFJNakJCZG9DZzBHYmljS01SNHpLQkVrTmgwZlJTY0ZDQUVtUWh3UkNoTUNCQWdlRUJFQ0JBb1FEd0VESmdBQUFBRUFPQUd2QUljQ293QVBBQUFUTmpjMk16SVhCaFVVQmlNbkpqVTBSd0lkQndVVEFnOGJDd29RQW9vU0JnRVJaR1VORFFFRUQyUUFBUUFuLzZ3QkVnTU9BQk1BQUJNR0ZSUVhGaFVVQmlNaUp5WTFORGMyTWhVVTEzR29CQ0VMRFFhc2RRazFBdisyeHZQREJBUUpFQWpJKzgyOERnZ0RBQUVBRlAreEFNVURIQUFPQUFBVEp6UTJNaGNXRUFjT0FTSW5OaEFaQVNzU0EyMXlBeUFaQTNFREJnRUpEQVhNL2ovSkJnb0V5d0c5QUFBQUFBRUFPQUd0QVlZQzNnQTdBQUFTTmpJVkZBWVZQZ00zTmpJVURnRUhGaGNXRlJRaklpWW5KaWNYRkFZbU5TWW5EZ01pSmpjK0FUY21KeVkwTmpJZUF4YzBKamJQRUJ3R0F4a1JIQXNhSXlWVEN3WWpUeE1PUnhZQ0FRa1RGUWdEQnlvWkpCVU5CeGhZRDBnNkRCWVRGaHdVSUFZREFRTFBEeWNQTmdNQ0ZnMFVCaEFQR3pjTkJSczlDaGNtSFFNRFhRY0tBUVZOSVFjc0dSY1JDUmRKRFRnYUJBMFJDQkFORmdRRkh4Y0FBQUFBQVFBZkFDTUJwUUhiQUNFQUFCTVhKalUwTmpJVkZCWVZOamN5RkE4QkJnY0dCdzRCSmpVM0lpTUhJalUwTnpaM05BSWlJd0laZ0J3WEMySXhBZ1FCSHlVR0FRUklQeWtZQVE4Q2VEb01FQWtnZ0I4REVTVUxBdzRGYnpnS0RRRU1xd01SSFFZREFBQUIvOTMvQVFDQUFGOEFFQUFBRnpRdUFUYzJNeklWRkFjR0lpWTBOelpBQmdNQkFpWWdiUXdXRkF4WEZna2pIQTRmWDZSVENBb1BDa01BQUFBQkFFQUE3UUhoQVM0QUVnQUFFeGN5TmpNeUZSUU9BU0l1QVNNaU5UUTNOb0hBUWprR0gwVmJORU5tQ0J3bEVRRXFCd3NRRmhnREFRY0xFUkVJQUFBQUFRQXkvK0lBckFCR0FBY0FBQlltTkRZeUZoUUdYQ29zTGlBckhoc21JeG9uSXdBQUFRQVgvMzBCMGdNR0FBOEFBQUUyTXpJSEJnSUhCaU1pTlRRM05oSUJqUWtzRWdKRDJGa0xLaElDV2RnQzh4TUppdjNDcGhJRkFRS21BajRBQWdBMi8rb0NVd0sxQUF3QUhRQUFFejRCTXpJV0ZSUU9BU0ltRUJNeVBnRTBMZ0VqSWdZSEJoVVVIZ0tESEYwOGRxVlBtTVZ4MlVwM1BVRnlQaXhERVNJU0hEMENaQ1F0ejQxY3AyeXhBV2IrSEdPVGpZVmFQQzliWWpoM1RUNEFBUUFSQUFVQkJ3S21BQllBQUJNeUZSUUREZ0VqSWljbU5CSTFOQ01pQndZaUp6UTJyVm9XQVNJSEZ3TUJEaUVYTUEweUFuVUNwdHBrL3JnS0VRb1hhQUVVUklzcURRMGFSUUFBQUFFQUVmLzVBaVlDcHdBbkFBQWxIZ0VWRkFjR0J5SW1JZ2NPQVFjR0lqVTBOamMyTnpZMU5DTWlCd1ltTlRRMk1oWVZGQWN5QWNZL0lRTU9GQVh5WWlBRkdna1pOak1uY1NkMmJrRkNEaUNNZVY3ellFOE1CUTBGQnhZREtnWUVHUWNURXlBckMyOHVqb3BiSWdZT0VCY29TMG5KM1FBQUFBRUFLUC84QWRjQ2x3QXZBQUFTTmpJV0ZSUUhIZ0VWRkFZaklpWW5KalUwTmpJWEZqTXlOalUwSmlNaUJ3WW1ORGMyTlRRbUl5SUhCaUluSmpWQ3EzMVhoa0ZibTFzdllpUUVKQllITmxRNVlFczBJU0VOSHcvUVBqRlVRZ1lRQ3hZQ1h6ZzhQV1ZYQzAwNFZvQXRKZ1FGQ2hRR1BrdERNME1TQmc0Y0IyVmpJaUVqQkFNSERnQUJBQmtBQkFJQkFwVUFNd0FBQVRjME5qSVZGQVlVRnpJK0FSY1dGUlFIQmlZakZoUVdEZ0VIQmlJMU5DY21Jd2NpTlRRM1BnRTNOamN5RmdjT0FRY1hKZ0ZLQ0NJakNRVUJJaG9RSVJzYU1BWUhBUUVGQlE4ckNBVWVtWHdCTUNNVUZCa1REZ1FnUGdmcEJRR1g0UW9PQ0JPNFpTUURBUUVDRVJnRUJRR1lKaGtJRXdRS0NHMktBZ01hQWdPT3F4NGNBUTRKUS9BV0FqNEFBQUFCQUNVQUFnSWFBb3dBTWdBQUFTY2lCeFlVQno0QkhnSVZGQVlqSWlZblBnRXpNaGNlQVRNeU5qVTBJeUlqQnlJbVBnRTFNQ2MwTmpzQk1oY3lGZ1lCeCtNaEZnb1pSbXhNVFRHaWhGQnhEZ0VoQnhjRUMySS9YV3Z2Q0Fod0R4TUxGUUliTmo5V2RCc1FGUUpYQkFFc2MwZ0hBZzhoUUN0WWgwSkNDeElMTVRWcVIyRUZEaDZmTGk0YkN3UVpHQUFDQURQLytRSXJBbzhBR2dBbUFBQVNCaFFYUGdFek1oWVVEZ0VpSnlZMU5ENEJNeklWRkFjR0l5SURNajRCTlRRbUl5SUdCeGF2TmhJM3RFWXFSV1NLZmpCY1VKUlhJUmdPRDBFUUlXaFpIeGc2cHlZcUFlcWVqVEJFZzBodWF6d25TWXBmdllBWEVRa0YvZGt0VVNrY0lJZ3pLQUFBQUFBQkFCMEFCd0hJQXBFQUhRQUFFelEyTWpZeUZoVVVCd01HSXlJMU5EYzJOejRCUHdFMk5UUWpJZ1lpSFNFMW0yRlpLY1FKSlJjRFJHUUJGQVFNSG13amkwMENXaElTRXpNMkpGTCthQk1QQmdhWnZBTWtCeGc5SnpvUUFBTUFPQUFFQWl3Q3JRQWRBQ2tBTndBQUFUSWVBUlFHQndZSEhnWVhGaFVVQmlNaU5UUTJOeVkwTmhNbUp5WW5EZ0VVRmpJMk5BRVdGeFlYTmpjMk5UUW1JeUlHQVZBallsY3JLVUZpQml3VkxCa2pGUXNUa21uZFNVbVpzY2swWWhzR01VRlloMm4rckFJdEl6bUJKanFDTFZCdEFxMGFPMFZHSXpnOUJCa05HeEliRncwWUdpdzljQ3hVTTFpdGdmM3NMallQQkNCU1JDZ2NNQUZrT3lNYUhsZ2pOaXdpTGs0QUFBQUNBQjhBQUFHcEFwTUFGZ0FpQUFBbE5qVTBKalVHSXlJbU5UUTJNaFlYRmhVVUJ3WWpJaE0wSmlzQklnWVVGak15TmdGV0RRRmZhemhCZDVweEFnWU9BaWdZQ2xvc0JDcE5MeUU2ZHc5UG1CUlRGMTlFUlYyWVVFaHBRODl0RXdIMElWS1BaeTk5QUFJQVB3QXFBTFVCb1FBSEFCQUFBRDRCTWhZVUJpSW1FeklXRkFZaUpqVTBQeXdtSERJa0dEb1hKU1FyR1Y0aUVpVWZFd0ZrRnlvaElSUW9BQUlBSGYrU0FMRUJ0QUFJQUI0QUFCTXlGaFVVQmlJMU5BTWlOVFEzUGdROUFUUTJNeFlWRkFjR0J3YUZFeGsyUEE4VEVCUVlDQVVDR2dzWkdCdzJCZ0cwR0F3VkdoMDIvZDRZRUFNRkdCb1FJd2N2Q2d3RERtOG5MUXNDQUFBQUFBRUFIZ0FlQWJrQ0Z3QWpBQUFCRkFZSEJoVVVId0VlQXhjV0Z4WVVCaU1pSnk0RU5ENEVOell5QVljVlJMd2dEUXc3R3pRVE5DNFBIQk1JQkRSb09IWVdKSU1kSmhVUklUZ0NCZ29XTG9JT0RoZ0pDak1XSndzZERnVU9HQUlRUGk1dUZBb2pXeGtqRVEwWEFBSUFUZ0N3QWhBQnBnQU9BQnNBQUJNR0l5Y21OVFErQVRjeUZBY09BUWNGTWhVVUJ3WWpCeUkxTkRaK0JRWVZFSWZQSFNNZEdQa2lBV01aSFE0THVNTWpBVk1CQlFnUkd4UURCQ3dPREFGd0JBNFNFQWdERncwYkFBQUFBUUFlQUJVQnVRSU9BQ0VBQURjME5qYzJOVFF2QVM0Qkp5WTBOak15SGdNWEZoY1dGQTRFQndZaVVCVkR2U0FOVG05T0R4d1RFRkk2SlQ0TUxESURKb29VSmhVU0lEZ21DaFl5amc0T0dBbENSeGNGRGhnaUl4Y3pDeVl0QXdvbGNSRWpFUTBYQUFBQ0FDSUFEQUdYQXJnQUhBQWxBQUFUQmlJbU5EYzJNeklYRmhRT0FnY09BU3NCSmljK0F6UW1JaE1lQVJRR0l5STBObFlJRXhrTlFuQ0pIdzQ4U0Q4Q0FSME1DQkVCQXo1Rk9UYVBRUkVhTUJvbktBSnNCaEFUQ0Njc0UwVm5WV1FpRGhBRUVTNXFUMkJDR1AzZ0FoVW5JRGtsQUFJQUxQOWFBZXdCM1FBdEFEY0FBQk0rQVRJZUFSUUdJaWNHSXlJME5qTXlGaFFXTXpJMk5UUW1JeUlPQVJRZUFUTXlOell6TWhVVUJpTWlKaEFYTWo0Qk55WWpJZ1lVWWh0amZHRXZMMlFTSlVZM1VqZ1dMQm9SQ3c5bU9qSlNLeUpWUHljeENRWU5YaVZvZXIwVUpCMEZEUThlS3dGVlBFeHJqVzVFTzFDVmJ5VlRTUndYWDhSa2xKTnNTQThDQ2hFVWhBRC9qMFZWQndsWlVRQUFBQUFDQUNiLzd3S1ZBczBBSGdBckFBQWxCaU1pSnk0Qkp5WWlCdzRCQndZblBnYzNOakllQXdJbUlnWUhCZ2MyTWhjdUFnS1ZFQjRJQ0JZVkJXM2FWZ2tWQlNRZEF3d0pFaEVlSUM4YlBwSmhNaDRjdmp4WVVoZ3JDMlRLWGdRV0Z3VVdBakszSFFRSkthTWNIUlVZYUVsd1VXVklTaGN6Y0xhNHdBSXlOMVpBZDJVTEJnOXdWUUFBQXdCUS8vVUNqUUxIQUJBQUh3QXRBQUEzQXpRaE1oWVZGQVlISGdFVUJ3WWpJaE0yTXpJek1qWTFOQ1lpQnh3QkZnVTBKd1lqSWljV0ZSWXlQZ0pZQ0FFRGVxVllOMFZsTjJyY3VFRStTeU1qTlplZ3dqd0RBYXU4WUZZY0d3TTZkMTFkT3o0Q1NVQmNWamxtRGhWUWdERmRBWEFZWHl0QVN4WVNSWi9EVnlnY0EzZDdEUThnUUFBQUFBQUJBREQvK2dMU0FzRUFId0FBQVE0QkxnSW5KaUlPQVJVVUZqSTNQZ0lXRnc0QklpWTFORDRDTXpJQ2hROFdGUWdYQXpPaGpWYVY5MTBQSXhrWEZTdkovckE0WTVWWG13STFEZ3dLQmlFRVAyZW9XM0NPUlFzcUVnSUdWRjJPaDFTZGVVZ0FBZ0JOLy9jQ3hnTEhBQk1BSVFBQUJRY2lKeVkxTkJJMU5EWXpNaFlWRkE0QkJ3WVROQ1lqSWdjVUFoUVhGak15TmdFSVUwWVZEUkNZVjZQWE0xWTVjdTJ2aTBSZUVBRTRRS0xSQmdNVENoSnhBVzltS1RLNGswcCtXeUEvQVdxQnJ5MVIvcjE3R2d1ZUFBQUFBUUJTLy9nQ1dnTE9BRFlBQUFFWE1oY09BU01uSWdjR0ZSY1VCeFl6TnpJV0ZSUWpKd1lIQmdjV01qNEJNaFlWRkE0Rkt3RUdJeUkxSmpVUU56WTNOZ0ZObWswZEF5UWkyRkk0Q3dFQkxrcDNSQlJoNHdFQkFnZEFPRHlrVVI0TkNnOExFd3NKRHNRM3BRSVNGV1UvQXM0REVod1NBd1U0YVMwZElRZ0JEZ2dtQnhnNmVUNEVBZ29MRXd3SkJRTUNBUUVKTGwxVUFSVzRJUVVFQUFBQUFBRUFUUC93QWxJQzBBQXZBQUFCRnpJZkFSWVhCaU1sSWdjV0ZUWXpNaFVVSXlJbkppSUhEZ1VIQmdjR0l5SW5QQUVTTkNjME56NEJNd0c3TFJzUEd4VVFDRHIrOXlzOEFuSk1reTRRRTB4d1JRSUdBd0lEQlFRR0VBVUVEUkFTQkRFMll4b0N6Z0VEQkFNTUtnZ0ViYm9LSFNVRENRZ2hqekFVSEJJS0VBZ0NDQXRvQVZPdU5oZ0tDd0VBQVFBdy8vSUMxZ0xLQUNnQUFBRWlOVFEyTWg0QkZSUUdJQ1kxTkRZek1oWVhCaUl1QWlNaUJoVVVGak15TnpZMUppSUhEZ0VCb3ppS2prQVRyUDY5dCthclM0WVBEaG9sSms0cmhjT3plSWs1TmdnYUVpNTRBVEVURmhrSURnMjBxcDZMd084K01Rd01JaVBqbW5xS1ZVNTVCd0VDRGdBQUFRQk4vL2NDZmdMRUFDY0FBQUUyTXpJWEZoUUNCd1lpSnlZMU55WWlCd1lWQmlJbkpqUVNOell6TWhjV0ZBWVZOaklYTmpRQ013OGZEQW9IQ1FFWUhnZ0dCbGJVY3dnWkh3a0RHUUVOSUFvSkF3eDV6azhEQXF3WUJtM1Uvcm93RUFNMU4rUUlGY1plRkFVeHNnR2JJQlVFSEZheEloUUhKWkFBQUFFQVUvL3VBS01DeWdBTEFBQVRBZ2NHSWljbU5SSStBVEtqQ2dFUEZ3Z1hBZ29VSEFMQS9qeitFQVVQS1FIaHBCb0FBQUFCQUFuLy9RR1ZBc0FBRlFBQUFSUVNGUlFHSXlJbUp6WXlIZ0l5TmpRbU5EWXlBWDhXVkc1Q2NoWVpKUjhaUDJjckZCUWhBcnhML3NaUGRYWTRMeFVaSGhsYXF2eDNJQUFCQUZiLzhBS0VBc3dBSlFBQUV4Y1VCejRFTWhjT0FRY2VBUmNXRndZaUxnSW5EZ0VIRkFjR0l5WTFFell6TXA0REExaUpTamNwSkJFcGxYSTFYeDlYVEJGQlhFNWtLZ2hCRXdVU0x3SUVEQ0VMQXNMck1pOGpZVmROTGcxbmxVMGJZekNGT1JwbmZuY01BeDhHcVhNU0htc0NJeFlBQUFBQkFGWC83Z0lRQXRFQUV3QUFFd01VRnhZek56SVZGQ01pSmljbU5STTJNektmQlFZOE1kSXgwak9nRVFVRkdoQWJBcW4rUldkY0JBUWNJUW9MYXZBQllCUUFBQUVBVFAvNEF3b0MzZ0FzQUFBVE5DYzBNaDRDTWo0Q01oVVdGQTRDRlFZaklpY21FRGNPQXlJdUFTY1dGQWNHQndZaklpY3dYUkU2WUZoWkpsVlRZVHNKQWdFR0R4b0xDZ1lERkVsRVZrcGZjeElGQVFFRkVDSUpDQUdPb29ZVmI0UnZkWXQxRUh2Q2VUZkRFUlVHZXdGT3N4QjFjMTFzdVJkVXRTU2dneFVEQUFBQUFBRUFWUC9lQXJvQ3lnQW1BQUFsRXpZeUZ4WVZBeFFWQmlNbkxnZ25KaWNXRUFjR0l4QW5OaklYRmhjV0VnSnNDUkFrQ2djSUloWU1DZ3NTQmhVSWFSeGJHazFCQlFZTU53UVRKQkVhSUdxOVRnSnNFQWFGVnY0eEZCSVdBZ1VGRndvaURha3FpQ0ZpUElQKzFxa1NBaldERWdvUUlHcis4Z0FBQUFBQ0FESC83QUwvQXJBQUR3QVpBQUFBRmhRR0J3WWdKalUwTmpjMk16SVhBUlFXTXpJMkVDWWlCZ0xBUDBZNGMvN3B4anN5YUk2TWJQM25rM3FOcTZ6Mm93STFnYXlXTEZxMW5WcVFMRnhUL3QrQm1xMEJDWjZoQUFBQUFBSUFTLy93QW9VQ3hBQWRBQ1lBQUJNMEp6UTJOell6TWhZVUJpTWlKd1lWRnhRSERnTWpCaXNCSmpVM0ZqNEJOQ1lpQnhaWURUUXJWbWVGbWNTTlNFOEZBUUVGREFVS0FnWUlFUUpHU2N5TWtNbE5CUUZDbkhjZkxnd1dkZktTSGpCU01SZ2FCd1lEQWdKTFBMb3hBWDIyV2k1QkFBQUFBQUlBTWYvbEF0b0N4d0FhQUM4QUFBRVVCeFlYSGdJVkJpSW1Md0VHSXlJbU5UUStBVE15Rng0QkF4YzJFQ1lqSWc0QkZCNENNamN1QVNjMk16SUMybmtXRUFjd0Vnd2lQaE1kVTNXUnFrV05XcEp4TjBQQ0lsYWxpajl1UEJzNFpwdEFWeHdIQ3cwckFZbkxhaGdRQ1JVVUVBVWFGaDh5dFlWZ3NubE9KbjMremlaVEFTNlFaWk9BWGxFdkkxY2dGUWdBQUFBQ0FFMy82QUxDQXNzQUtBQTNBQUEzRnhRR0lpY21OQkkzTkRNeUZ4NEJGQTRCQndZSEZoY2VBVE15UGdFV0ZSUWpJaWNtSnlZbkJnRTBKaU1pQnhRR0ZCYzJOelkzTnBZREhCZ0xEUTBCMW5Ga05FSXdTakJQWVRCc0lHSTBCU0FXRTFWallpc3BaVmdCQVp1WGRFay9DZ0dVVVZjck5jQ1hIeFlEYTh3QkFrdFFMeGhYYTFZNUZTUU1HMmNmTVFVQ0N3NGlUQ0FpVlJZSkFSTlVWUkJQd1VnUkN4Z1pKUzRBQUFBQUFRQW8vK0VDU0FMU0FERUFBQkkyTWg0Q0Z4WUdJaVluSmlNaUJoVVVIZ1VWRkFZaklpWTFORFl5SGdFWEZqTXlOalUwTGdRME5ySmFXRTFSTkFNQkdSOFBCeWFBVjI4eVVXRmhVVEtkZDF5d0doa1dIQXRNWGtKK1JHWjNaa1F2QXJvWUN4bzJKUThQRHc5TlNrY29PU0FhSUN4UE4xQndUaWtMRXc4YUJ6QlJSQzQ5R3lJa1VHOVRBQUFCLy9QLzdnS1dBc3NBR1FBQUF6UWhNaFlYQmlNaUppSVZGQU1HSXlZMUV6UW5KaUlHSXlJTkFWaFArQVFDVVJkc1RRb1ZLUUVGQWhWRGpoMDNBcHN3RFF3dENoSFgvbFlQTEQwQnNFNDFBZ3NBQUFBQkFFWC82QUo4QXNzQUhnQUFFellYRmdjR0ZCNENNekkyRUNjMk1oY1dGUlFIRGdFaUxnRW5KalUwWXlBWURBTWVFU2xZUDFpRlJ4VWhDVkJPSm55SFhUVVJIUUswRlFrRUVzYVZiWGRKMXdFdmtSSURjN2lYaWtGVE9WYzZaSGV3QUFBQUFRQU0vK2dDb1FMTEFCc0FBQk0yTXpJWEZoSVdGelkzUGdJek1oY09CQ01pSnk0Q0RBa2hDZ2dpV0ZzNE56OGFOa1FrRGhBYU9qZy9WekZFV0M4d1B3S3ZHQVJML3ZEc1VSRHJZY0NFQ0Jtc3k4ZUU1bmlMeHdBQUFBQUJBRVAvNmdQYUFzb0FPd0FBRXc0QkJ3WVVIZ0l6TWo0RE56WXlGeDRFTWpZM05oQW5OaklXRnhZVURnSWpMZ0luSmljR0J3WUhJaWNtSnlZMU5CTTJNcm9ERXdVUEN4Z3ZJQzVIS0IwYkRCc2NCd1lORnlWS1lUNE9HUmdaS2g0R0N4dzdhVVV1U1N3U0doSXFIVWQ4VUNnakNRTTJHaDhDeHhxQUtYdWdXVTh1WkoyZ21Cd1NBekQ5akdKQldrdUdBUjFRRWtJelhKYVlnMDBCS3pzd1JXdVRPSWNCT2pSZUtET25BUU1QQUFFQUFQL21Bb3NDelFBb0FBQUJCZ2NlQVJjT0FTTWlMZ0VuRGdRaklpYzJOelkzTGdJME5qTXlIZ0VYUGdNek1nSkFXWFE5dXlBQkhoQWhaWDRORVRnM1FsQW9Dd1pESjIxTk00NURIeEFaVEd3cEdrRW5PaDhJQXNtdnJsbmhLQXNQYzdvUkZGbFVWRE1CVGk2RGVrS2VVeDhPWDVzcUtvQk1Pd0FCQUJQLzdBSllBc2dBSGdBQUFUNEVOell6TWhjT0F5TWlKejRCTnk0Qk5UUTJNaDREQVZBS0t4Z25HaElmTHdrUkpuQmRaeUFORHhORkdZdVZHQjRXSHkxaUFVQWFjRHRZSnhZbUJSYnMvczhHS2JNeGxlQTdDZzhpUjFtRUFBQUJBQm4vNlFKeUFzTUFIZ0FBRXlVeUZoVVVCd1lEQmdjV015VXlGd1lqQlNJMU5EYzJBRGNFSXlJMU5IRUJzeGtjQkhUU1pEZ3BQUUVzUWlzR1ZQNkdoUWhKQVVkTy91K2RLd0s0Q3cwSkJnZXQvdnQ5U2dNSEJETUxJUWtMYmdHSWR3c1lJQUFBQUFFQU9mKy9BVmdDdmdBZEFBQVhNamN5QndZSEJpTWlOVFFTTnpZM05qY3lGUlFIQmlNaUJ4WUNGUlM0TUZZUUFnSWFZMzBYSVJJQkVpYWRGaG9NREZvckFUSWNGeFFZQXcwT2FBSGZlQTRLRmdRTUVBc0VDeDc5eVI4d0FBQUFBQUVBSFArWkFjZ0RGUUFQQUFBVEpqYzJNaGNXQUJjVUJ3WWlKeVlBSEFFTURoZ0dNd0VqSHc0T0dBTWYvdDBEQUFjSEJ3YWMvWWROQndZSEJVMENlUUFCQUJELzRnRWpBdFlBSkFBQVB3RXlGeVlESWdZaUl5STBOell5TmpzQk1oNENGeFlWRWhFVUJpWWpCeUkzTmpjMlNJRVhDZ0lWR0c0Y0F4NFdCeUZvRkNBRkJRa0ZBZ1laR3lReWZSTUJBUlFJRUFRQ1FBSlJEeWNKQXc4Q0FnTURCUWorZmY2N0Nnc0NBZzRSQ3dRQUFRQXRBWkFCandNQkFCb0FBQk1HSWpVME56NENOell5RnhZWEZoUUhCaU1pSnk0Qkp3NEJaUWd3QXhRZ0tpY05IZ2dhT2xNU0Nnc05CaGxuRWhzdkFiWU9EQU1FSllSdUl3d0xPMjJnRlFZREREZkhKaW04QUFFQVl2K0RBbkwvc1FBUEFBQVhGakkyTnpJVkZBNEJCd1lnTlRRMmgwdWd3eTBRRVJrN3B2NzdHRThLQ1FFSUF4Y0NBd2NWQ2c4QUFRQkxBaHdCT0FLN0FCRUFBQUVXRlJRR0l5SW5KaWNtTkRjMk16SVhGZ0VyRFJVUkJnTlNaUWNGQ1JrSEJtUUNUd1VKQng0Q0hWRUdEQXNTQTA4QUFBSUFLUC80QWRzQitRQWNBQ2tBQUFFSEZCY1dNekkzTmhjR0l5SW5MZ0VuQmdjR0lpWTBQZ0V6TWhjV0JBWVVGak15TmpVMEp5WWlCZ0YzQlJRTUZRWUxGUTRIUHlzT0N3b0RRVDBmVWkweVlEbFNHeGYrL1E0ZkdUWmtIaFJCTlFFZ2MxY2VGQU1HRENNa0cxRVBmQnNPVDVpbmMwUTZjV0ZMTnN4WU9TVVlTd0FBQUFJQU8vLzZBWjBDNVFBYUFDb0FBQk0yTXpJWEZoVStCamMyTXpJV0ZBNEJJaVkwRWpRVE1qYzJOVFFtSXlJR0J3WVZGQmNXUnd3Z0J3Y0NBUkVFRUFrUURBZ1BGRXBhTG1CL1ZRNk5KeDgvT0RNZExBd1hKaEVDenhZQ05mTUJFQVFQQlFzRkF3VjdtSWxtWG5rQlI0LzloQ1ZKaGtodk9TOVpiVndWQ2dBQUFRQW8vLzhCcUFIMUFCOEFBQUVHSWk0Q0l3NENGQll6TWpjMk56WXpNaGNVQmlJbU5UUTNQZ0V5RmdHTEV5WVhEaVVjSjBBZVBUUThKQThOSUJvSkVZZWVXeklaVm1wQkFYY1RJU2NoQkdkOGJVOHFFaElxQlNWNVpWQm5aekpCUndBQUFBSUFLLy8rQWJNREtBQWRBQ3NBQUFFQ0VCY0dJaWNtSnc0QkJ3WWpJaVkwUGdFek1oWVhQZ0kzTmpNeUFpWWlCd1lWRkJZek1qNEJOVFFCc3lZYkZCNEtGUVFZRnh3elJqVXZJMVkvSmtBTUFnUUZCZ3NtRFhJcVJSNDdIaDBxVUN3RElmNm8vdHVTRkFSS1Z5WWdIenhqbTQxbklCc2JjRmN0WVA2REZTZE5raTlkYm84NUd3QUNBQ2NBQXdIQ0FlNEFHZ0FsQUFBM0JoVVVGakkyTnpZek1oY09BU01pSmpRK0FUSVdGUlFHSXlJM01qNEJOQ1lqSWdZSEZtNENTV1EvRGlRZUN3OEtnMk5HWlQxemQwbWJWeGNzTDBvZktod3lWUklzeXhRSFBFSWNFQzBHTVZGWm1wRm5NUzlYY1NZOFFqWXBpa29KQUFBQUFBRUFBdi81QVhVREJRQTJBQUFYSWhFMEp5TWlMZ0luSmpVME16SVhQZ1kzTmpJV0Z3WWpJaWN1QVNJR0J3WVZIQUVWTnpJVkZBNEJCd1lVRmhRR2hoSUJGQTRRR1E4SUR6NGJGZ0VCQWdNSERCUU5GMnN6RkE4VUJ3Y1NIVElaQnc5Vk1qQkpEZ0lLRlFjQkw0QWJBUUVFQXdZUEV3SVVQeU15SENNU0NSRTFQeElDTUNJU0RoNXpCUm9MQ0JjUENnSUZIRnZGYUN3QUFnQUwveWtCblFIMEFCc0FLQUFBRXpJWEhnRVhGaFFHSWljMk1oWXlOamMyTlRRbkRnRWlKalErQVE0QkZCWXpNalkxTkNZaklnYnFXeU1UR0FRR2NkbElGQzlUWGo0UEdRTWJaSDQ3S0ZvNURDRWdQMkk5TGlBeEFmUktKMFk5WGUyTlJoUXBLeWRGWlE5Z1VtdHhrSWxpeEU1UFlMMWdJVk04QUFFQVFRQUpBZ3NDNWdBa0FBQTNFelFuTmpNV0ZSUUhOak15SGdFWEZqTXlOellYRkFZaklpNERJeUlPQWlNaVFRa0dFaVVQQ1M5NUt5OE1CQW91QVJJb0JUNGFMQzhMQlJZYUlEVWVLeFlqendIQU5CTVFhNmd5dHYxYmdrR2NCZ3dHQ3lGYmdvRmJpNmlMQUFJQVFBQUtBSWdDNmdBTkFCd0FBQk1HRkJjR0l5STFQQUUyTnpZeUF6UTNOaklYQmhVd0Z4UUdJaWNtZ2dFRERoZ2VBUU1ITURrVUJ4UVhCUUliRnd3RkF1QVhPQjRRTUFJYUZRNFkvZ3pFSGdzTFZXVGRIeGtHZ2dBQUF2K2svd2NBalFMcUFBc0FKUUFBRXdZakpqVTBOVFl6TWhjV0F6SVJOQ1kxTkRNeUZRY1VGeFlVRGdJaklpWTFORDRCRm5zQ0p5QUJJUk1KQzQ5Y0N5Z1hBUVVORFNCRU1Cd3NFaE1nQW9FY0FsVUtDaG9FS3Z4L0FUeE01QklxR2h3YlBMaVFhV1U1RHd3T0RRRURBQUVBUHYvOEFka0M3QUF1QUFBVEZoUU9BUWMrQVRjMkZ4WUhEZ0lIRmhjV0Z4WVhCaUl1QVNjbUl5SUdGUlFIQmlNaUp5WTJOeEkxTkRZeWpBRUJCZ0VtYWl0RUhRc0VDa2RnSEVrc0V4SXVOaFEwTXlVVEt6a2JKZ1FPRUFVR0ZnRUZDeE1iQXVaR1JVVERPUnB0SnowWUNRZ1ZQRXdnQ2tnaElWY2ZGREpJSkZjakUzZzZFd0lKT0k0QmEyVXZJQUFBQUFBQkFFRUFCd0QvQXU0QUdnQUFFelFuTmpNeUZ4WVZGQWNHRlJRek1EY3lGd1lpTGdFME5qYzJYQnNOSUFZSEdRWU1TU1VKQmdOdlBBOENDQkFDVm1NaUV3RVplRUZXbGthOUJ3Z2tRMlZDVDBxV0FBQUJBRDhBQXdMRUFmVUFPd0FBRXpJVkZBWVZQZ0kzTmpNeUZoYzJNeklXRlFjVU16Y3lGdzRCSXlJdUFUVTNOQ1lqSWdJSEJnY2lKeTRDSXlJSEJnY0dCd1lqSnlZMU5tb0xBUW9WRmcwZ0tqVTFBUmxyTGlZRFFUa0ZCUW8yR2pNekJBSUxGeUkvQnhFYUNBY0pBUmdxSEJJZEZ3WURGUllQRGdzQnRZUVZYQUp4VWpzUUtXcFl0VjVCbUpZSkFROFJXMlVrV1N4US91T0FFZ0VETlBPUVBtSE5NQlVTQXFmM0VnQUFBUUE2QUFRQjFnSHRBQ1lBQUNVR0l5SXVBeU1pQmdjR0J3WWlKeVluSmljMk1oY1dFaGMrQlRNeUhnTUIxaElYS3lvSEFoTWFJekVLSEJvU0dna1ZCZ0lDRlI0SkJRRUJCUThNR2lBNEl5OHJCQUVmSEJOY2hJUmNmazNYR2drRFhPRndJUTRESy83MkZCVmVQVkl4STFWK2dtd0FBQUFBQWdBckFBQUJ3d0h0QUFnQUZnQUFFaklXRkFZaUpqVTBGZ1lVSGdJek1qWTBKaU1pQnBEQWMzN0NXRkVOQ2hnd0lVTmJVendrTmdIdG5NZUtiV09CRGs1RE56VWZicHlUTWdBQUFBSUFOZjhuQWE0QjhnQVVBQ0lBQURjV0Z3WWpJaWNtQWpRMk56WXpNaFlWRkFZakloTWlCd1lWRkJjV016STJOVFFtZFFNUkV4b0ZCZ0ViRWhZdGVVdGdjR005WFZVY0dBRlpJRHBFT3g5UmxCTUJKd0VVazJ3dllhUnRWb0lCczFoTGhEQVhFMTFEWTM0QUFBSUFMUDhXQVp3QjVnQWFBQ2dBQUFBZUFSUUdGQmNHSXlJbkpqVTNOQ2NHQndZaklpWTBQZ0l5RnpRbUlnWUhCaFVVTXpJMk56WUJlaGNEQ0JBT0d3a0lCd0lHTTBJZUprQXlGU3hPZEE0MVJqSU5HVFFzUWhBaEFaVjhhazlwbmkwV0JENVlnbFkraHlFUVdJaG5XelowRmk4MktsRThoa1F6WkFBQkFESUFBZ0dMQWZrQUh3QUFOeGNVQmlJbkpnSW5OaklYSGdFWE5qYytBVElXRlJRR0lpNENJeUlIQnAwREdSa05GaGNDRHlFTkJBUUREaVFVUVVzL0dCMFFCaFFSTFNBeFlqa1dFUVIwQVZvWERnUWR4aGxVU1NreFF4c0tDeFliRmxGNUFBQUFBQUVBR1FBQkFaa0I4UUFyQUFBQkxnRWlCaFFlQXhVVUJpTWlKalUwTXpJWEZqTXlOelkxTkM0RE5UUTJNeklXRlJRaklpNEJBVFlKTWtwQlBWZFlQVzlPTHBVc0RSVkFReVFhTUQxWFdEMXVVVGRaS1JFTEFRR1FGeG9zU2lzV0dUa3VRMFl5SXhvUUx3d1hNeDhtRmhvOUx6MU1PVFlrREI4QUFBQUIvLzhBQ0FGbUF0a0FNQUFBRXlJbk5ENEJOejRCTnpZM05qSVhGaFVIRmpNM01oVVVCd1lpSmlJSEJoUWVBak15TmpJV0ZSUUdJeUluSmljR1BDMFFHeUFrQXdFQkF4VUpGUWdEQmdJSlNFNGNEU00zR0FRREF3MHNJaEV1R1JOVkhtNGJDQVFRQWFNV0VCSUZBaHRWSGs4U0NBSklENVlCQXhnaUJnTUpBUjA1VlhaVkd3c0hGU2ZRUEpJREFBQUJBQzMvL3dHaUFmWUFJQUFBRXdZVkZCY1dNamMyTlRRbkxnRTJNeklYRmhVVUJ3WWpJaWNtTlRRK0FoYU5HamNnV1JzZ0pCQUZFaFU5RXdZa00yNDZLVTBVRGhRWkFkVXhZWkpYTXk4NlpvQTlIUm9NZmlNalcxdDlLMUtsU0V3WEZBUUFBUUFNQUFFQnZRSDBBQmdBQUJNMk16SVhGaGNXRno0Qk16SVhCZ2NHQndZaUxnSW5KZ3dKSGcwSkhCc3pMQlY1TWc4UGN6SUtEQTBjRHdjTEEyWUI0Uk1HVFU2UFUzcjRCNWY1T2dnSkRBd2NCYjhBQVFBM0FBWUNkd0gvQURnQUFDVU9BU0ltTlJBek1oY0dCd1lVRmpNeVBnSTNKalU4QVRZM05qTXlGUlFHRlJRV01qWTFOQzRFSnlZbk5qTWVBUlFHSXlJbUFVZ1FXMnM3VHdvUEF3c1dKaU1TSWhRV0F3OENCUW9zSlF0WVRTUVZCUlVGR2dJZEJSa1ZQVWhGU1ROYmRDNUFhMThCREFNUUxWaUdsUzR6UWdjNlBBTWZIaFVxY0JSTUR5NlNXRFkrUVJRckRDNERNd1VWTE1lalhUa0FBQUVBR3dBQkFhOEI3UUFvQUFBVE5qTXlGeFlYTmpjMk1oY09BZ2NlQVJjV016SVhCaU1pSnk0Qkp3NERJaWMrQVRjdUFSc1JHZ29LRlVNc1BoZ2RDUlEyTUFzY0p5TXVLUlVJQ3lwR1Job0pGd2dkRkNJWkN4QS9Dekk3QWRZWEJZWndVcFVOQTBGd1hoWWpLUlllQ0NJM0ZRa1dERHdqRXdNaGNoVk9od0FBQWYvKy93a0JoZ0hzQURZQUFBRTBNeklYSEFFU0ZSUUdJaWMyTXhZWEZqTXlOalUwSnc0RUJ3WWlMZ1k5QVRZek1oVUhGQll6TWo0Q056WUJLaTRKQ1J4WTAxMFNIUXNZUnk5R09nVUJEQVlQRUEwV1F5Z2JGUXdIQXdFS0dpUUdOaDBXSWhJTUFnTUJwRWdDREdyK3drOStZRVFXQVE0cVdHZ1ptd010RGlZUUN4UVNKaXBCTms0MEtEd1JHbUYvdURCWFRqUlBBQUFCQUJjQUN3R25BZTBBSHdBQU56WXlGUlFIQmlJR0lqVTBQd0UrQWpVMEl5SUdJalUwTmpNeUZSUU9BWlNaZWhjU2NhMDdQend0T0RkRklYOUF0VUZ6VTVORURSMFZCQU1ORVJnNVBTNC9XQjRwR0JZY0hVY3ZnNmdBQUFFQUd2L1hBVDRDemdBcEFBQTNNall5RmhRR0l5SXVBeWNtTkRjK0FUMEJORDRCTXpJV0JnY0dCdzREQnhZWEhnUHJDaU1XRURVY01EVVREQ0lmRGc0bEhoOUFPaEFLRHc5RERna0NDaVlaTlEwQ0JBZ2lEUlVTSUJrNVdsNWJGUWtnQ1JWR0lCeGNVeDRiSEFJR01TQnBPRDBQSURZSldFeEJBQUFCQUQ3L2xnQ05BdTRBRGdBQUV6UTJNaFlWRWhjVUJpTW5KaWNtUGhJVkVoTURGUWNPRGdFREF0TU1EdzROL1RkWUVRc0VCeEZZQUFFQUhQL0JBUWdDeFFBdkFBQVRGRE15RlJRSEJnY09BaU1pSmpRMkhnRXlQZ0UzTmpVbk5EY3VBVFV3TnpRaklnNEJKalUwTmpNeUZSUUhCck1uTGdrakNBTU9MU2tWUEJFVEhCUVdEQVFIQVNnaUtna2hCaHdTRUQwZFJRTUZBZXRnSFFvSUhwQTViVWNVSkEwREJ4SWpFUjgxUWxrdERGOHRaU29HQVF3UUZSWlJDQjg0QUFBQkFDc0E2QUlDQWFVQUdRQUFBVFl6TWhZVkZBWWpJaVlqSWdjR0lpWTBOejRCTXpJV01qWUJ5d01WQ1JaR09pTnVKVGcwQ0I4T0JDTk9OaVIxT3hrQmtSUVBEejFUVTFRT0ZROEhPVUZaS1FBQUFBQUNBREQvRHdDcUFlOEFEUUFYQUFBWERnRWpJalVTTno0Qk16SVZCZ01HSWlZME5qSVdGUlNFQVJvUUd3SU5BUjBPR1E0SUN4OGlLeVVxMWd3UEZBRW5sQXNQRkpNQk93SVlLaU1iRHpBQUFBSUFMLys1QVdjQ1lnQXNBRGdBQUFFVUl5SW5CZ2MyTnpZeUZBWUhGaFFWRGdFaklqVW1ORGNpSXlJbU5UUTNQZ0UzUGdFM05qSVZCZ2NlQVFjR0ZCNENGejRCTnc0QkFVNG5HUkFQQVJ3ZkJ6ZFlJZ0lCR1FvVkFnRUJBa2c3S0JFN0pnSUNBUUkzQkFFV050a0NBd29lRmdNTkFoNHZBWnNVRU84MUVCa0hGemNNVkNNREN3c09JRHNaV2tCVVVDSXdCeGhWRGhVVlZDb0lINndLRlNNdkpBTk4weVFLY0FBQUFBQUJBQ01BQlFLekFwZ0FPUUFBQVNjVUZ6WXpNaFl5TnpZek1oVVVCd1lqSWlZaURnRWlOVFEyTnlZMUJnY0dOVFEzTmpjK0FUSVdGeFFIQmlJbkxnRWpJZ2MzTWhVVUJnR1JneE1qRHgyZVNSUUtLUlVDTmxNcG5rNVlUVFozS0JaQUl6dWdDREFaVTMxeUdpSUxHUVVTVXpOcEZVbFpFZ0Z2QWxDQkIxb2pFZzBFQlZwbk9qb1FEVThUajFzRENRNGVJQXBsUnlVclpGQVVDQU1NUEYvTkFoWUxFUUFBQUFBQkFDai84d0lJQXJnQVFBQUFFd2NpTGdFMU5ETXlOeTRDTlRRM05qSVhIZ0VYUGdFM05qSVdGQWNHQnpjeUZSUWlKd1lITnpJV0ZSUWpKd01HSXlJbU5UWTFCeUkxTkRZekZ6STNKc2RqRkJRVUdTdEJFa2tZRmdVU0J5QmNHaGFXSGdjaUVRSWdlaTVCWERNVURaSU5FM3BEQ1FNWkN4UUlTMkFQRFcwUkVBRUJhd1FDRFE0WEFpYXRLZ1VSQmdFTU50Z3RKTjgzRGhFTUJUMjBBaDBaQXg0YUJ4TUxIUUgvQUJZUURFMnVBaDhMRHdZQkFnQUFBZ0FtLzQwQnNnSzFBQzRBT3dBQUFSUWlEZ0lWRkJjV0ZSUUdCeFlWRkFZSEJpSW1OVFEzUGdFMU5DY21KeVkxTkRjMk55NEJORDRCTXpJWEZnTTJOVFF2QVNZbkRnRVZGQllCWmkwek9TU0dnMHcwSEk0N0JoVVRFVFJ1VUNJaVVEY3BQeWMwVEdFckZnc0RjSGd0RXhzUGNpUjJBcEFQQ0JJbkd5c3lOVXdwU1JrY0pqK1ZGd0laQ0F3R0Yzb3VMQllKQ2hnektDMGlLQlpDUkQ0ZEZ3aitTUzgrSWhZS0RRVkpLQW9ZTGdBQ0FFUUNMQUdnQW9JQUNBQVNBQUFUTWhZVkZBWWlOVFFXTmpJV0ZSUUdJeUkxa0Ewa00wclpNUzBsUHhjdEFvRVJEUjBhRno0akpCVU9HUm9XQUFBQUF3QTJBRTBDb2dLZUFBY0FFUUFxQUFBMkpqUTJNaFlRQmdFVUZqSTJOQ1lqSWdZRk5oWVZGQVlqSWlZME5qTXlGaFVVQmlJbUl5SUdGQll5MmFQRytxeTIvbmVPMnFlRllucXVBVjhLSDFBZE0xRk9MUmRKRGhRbUR4NDJMMGROcS9hd3JQOEFwUUVKWkh5QjM2R3JxUWdORGhZZVFtNWRKeFFIQ3laUFJ5Z0FBQUFBQWdBdEFiMEJSZ0tUQUJVQUh3QUFFd2NVTXpJM05oVVVCaU1pSndZaklpWTBOak15Rmc0QkZCWXlOamN1QVNQcEFTY0RFQ1FwRHk4VUxDNGRKMEVxRXo1dExCSWxNQXNMRmdvQ1hTTkxCQWtaREE4N1JpdFhWQ1FFT1RBaFVTVURFUUFBQUFJQUh3QkpBbmNCN0FBYkFEY0FBQ1VXRkFZaklpNEdOVFErQVRJWEZoVVVCdzRCRlJRV0J4WVVCaU1pSnk0REp5WTFORDRCTWhjV0ZSUUhEZ0VWRkJZQ2FBOGNFdzFQTVJveUVUOFFkcGtpQ0FNUUliYkd0dzhjRXdnRU5GTXJWaHdFZHBraUNBSVFJTGJMaHdVT0dCMGFEeWNQT1E0RUZGMVlFUVVFQ3djUGRoSWtheVlGRGhnQ0VDNG1VeGtFQkJSZFdCQUVCQXNJRDNjU0k0SUFBQUFFQURnQUlnS1lBcGNBQ0FBVUFDOEFQQUFBRXpRMklCWVFCaU1nSlRJMk5DWWpJZ1lIQmhRV1B3RTBOaklXRlJRSEhnSVVCaUl1QVNjVkZBNENCd1lpSmpjSEZCYytBVFUwSXlJR0J4WTRqZ0VRd3IrZC92d0JDWFM0c0dvL1h4czJlZ2dFUjFwSGFRUlRLQTRLSDNZZ0FnSUVBd1FWRVRVQkFWVXdQUmdzQlFFQlVveTVzZjcwdUNTdjQ1Y3lLMWJ5aElIc0R4WXNNRUFkQWprU0dRY05VQXNxQ2d3UUNnVUpETVVzRXdnT0pSZ3BDd0VOQUFBQUFnQXBBYlFCUFFLekFBZ0FFQUFBRWpZeUZoUUdJaVkxSGdFeU5qUW1JZ1lwWDJ0S2JYUXpSQmc2T0NRN0t3SmNWejFtWEQ0c0VpYzRPaWc2QUFBQUFBSUFPQUJaQVhrQjN3QWdBRE1BQUQ4QkJpSW1OVFErQVRjbk5ETXlGaFVVQnpZeUZoUU9CU01HSXlJbUJ6Y1dGeFlWRkNjaUl3Y2lKaWNtTlRRM01yY0pReHdXSmtrSkFTRU5FUU05RlJZSER3OFhFQmdGQXg0TkdGWDBGZ29ERmdjSTBSY21DZ1FXQ2VOS0JSVU5DZ2dFQVRaSUR3d3VMd2dVRWdjRkF3TUJBbkFUU3djQkdBY0ZEd0VIQWhVSEJnNEJBQUFCQUVrQ0hBRlNBcndBRHdBQUVqNEJNaFlWRkE0QkJ3WWlKalUwTjNHSEhCc2pGNGdpQ0JvbUJnSlVWUk1MQ0FZUVZ4b0dEQWdFQmdBQUFBQUJBRG4rY0FLRUFmVUFMZ0FBRXhBek1qWTNOalUwTmhZWEZoY2VBUmNXRkFZbkxnRW5CaU1pSmpVR0FnY0dJeUluTkRVM05qYzJOell5RmhYbVdTazZEQlFaR3dRUkFRRXhOQklVRFQ4NkNTNWhTVlVYRnhVREVSNEdGQXdKRmkwRkl4b0JtUDZvWkV1R1Voa1BEZ3cwdERkdEZ3a2VDZ1VkWVVXOGptSmova2hoRVJvREE5V0pWdVM5RUE0TkFBQUJBQ0QvVGdLYkFqSUFLd0FBQVJNVUJ3WWpJaVkxRUNjaUJ4d0JFaFFIQmlNaUpqVTNQQUVqQmlNaUpqVTBOamMyTXpJWEhnRVZGQ01DSEFnQkFoWVNEd1k2TFF3RUFSa0lGZ01ESENwYmpFcEFkcDVLZWcwTUZnSUEvZ2REWWhRU0NBSGJ2Z1FSZFA3UHF6a1ZDdzZjTkdnSlkxVkVYeGNxQ2dFVENCTUFBQUVBT1FFbUFMTUJpZ0FIQUFBU0pqUTJNaFlVQm1NcUxDNGdLd0VtR3lZakdpY2pBQUVBTGY5SkFUZ0Fjd0FjQUFBWE1oWVZGQVlpSnpRMk16SVdNalkxTkNNaUJ3WTFORFl6TWhVVUJ1MGhLbU9LSGg0U0J6RTZKUjBCRHlKaklCQkdFeDRnTWpReENSSW5IUm9xQWdVTEtYY0ZEbW9BQUFJQUxBSENBUGNDaXdBSEFBOEFBQkltTkRZeUZoUUdKaFl5TmpRbUlnWmpOelpXUHp4cklqVXNLaThxQWNJb1RWUXVXMEE4RnlnOEdqb0FBQUlBSVFCVEFua0I5Z0FZQURBQUFCTW1ORFl6TWg0R0ZSUU9BU0ltTno0Qk5UUW1OeVkwTmpNeUhnTVhGaFVVRGdFaUpqYytBVFUwSmpBUEhCTU5UekVhTWhFL0VIYVpKQlFWSDc3RXN3OGNFeFZqT0NaQ0dnUjJtU1FVRlIrK3pBRzRCUTRZSFJvUEp3ODVEZ1FVWFZnZENRNS9FaVZuSndVT0dDMHJJMEFYQkFRVVhWZ2RDUTUvRWlSL0FBQUFBQUlBSGY5S0FaSUI5Z0FjQUNVQUFBVTJNaFlVQndZaklpY21ORDRDTno0Qk93RVdGdzRERkJZeUF5NEJORFl6TWhRR0FWNElFeGtOUW5DSkh3NDhTRDhDQVIwTUNCRUJBejVGT1RhUFFSRWFNQm9uS0dvR0VCTUlKeXdUUldkVlpDSU9FQVFSTG1wUFlFSVlBaUFDRlNjZ09TVUFBd0FtLys4Q2xRT2FBQjRBS3dBOUFBQWxCaU1pSnlZbkppY21JZ2NPQVFjR0l5SW5QZ0UzTmpjMk16SWVBd0FHQndZSE5qSVhMZ1EzRmhVVUJpTWlKeVluSmpRM05qTXlGeFlDbFJBZUNBZ1dEd1lGYmRwV0NSVUZGQmtKQ3dNYUZURmdQazFGWVRJZUhQNnVVaGdyQzJUS1hnUVdGeWM4VXcwVkVRWURVbVVIQlFrWkJ3WmtCUllDTW44NEhRUUpLYU1jRUFnWTVXWGxVVE53dHJqQUFtbFdRSGRsQ3dZUGNGVmlONVlGQ1FjZUFoMVJCZ3dMRWdOUEFBQURBQ2IvN3dLVkE2VUFIZ0FyQURzQUFDVUdJeUluSmljbUp5WWlCdzRCQndZaklpYytBVGMyTnpZek1oNERBQVlIQmdjMk1oY3VCVDRCTWhZVkZBNEJCd1lpSmpVME53S1ZFQjRJQ0JZUEJnVnQybFlKRlFVVUdRa0xBeG9WTVdBK1RVVmhNaDRjL3E1U0dDc0xaTXBlQkJZWEp6eVNoeHdiSXhlSUlnZ2FKZ1lGRmdJeWZ6Z2RCQWtwb3h3UUNCamxaZVZSTTNDMnVNQUNhVlpBZDJVTEJnOXdWV0kzcFZVVEN3Z0dFRmNhQmd3SUJBWUFBQUFBQXdBbS8rOENsUU54QUI0QUt3QkFBQUFsQmlNaUp5WW5KaWNtSWdjT0FRY0dJeUluUGdFM05qYzJNekllQXdBR0J3WUhOaklYTGdVMk1oNENGeFlWRkFZaUppY09BaUluTnpZQ2xSQWVDQWdXRHdZRmJkcFdDUlVGRkJrSkN3TWFGVEZnUGsxRllUSWVIUDZ1VWhnckMyVEtYZ1FXRnljOGd6NUpMeHNpREFNbEprOFNEREkwT2dFQ0JnVVdBakovT0IwRUNTbWpIQkFJR09WbDVWRXpjTGE0d0FKcFZrQjNaUXNHRDNCVllqZStHeGNjSmdrREF3WUxVUWdITGhrR0JBUUFBQU1BSnYvdkFwVURjZ0FlQUNzQVJ3QUFKUVlqSWljbUp5WW5KaUlIRGdFSEJpTWlKejRCTnpZM05qTXlIZ01BQmdjR0J6WXlGeTRFSndZaU5UUTNOak15RmpJMk56WTNOak15TXhZUEFRWWpJaVlqSWdLVkVCNElDQllQQmdWdDJsWUpGUVVVR1FrTEF4b1ZNV0ErVFVWaE1oNGMvcTVTR0NzTFpNcGVCQllYSnp5VUN6b0VRRGdnVmhRTkJBZ0xDUjBDQWh3Q0F5eE5HbE1ORmdVV0FqSi9PQjBFQ1NtakhCQUlHT1ZsNVZFemNMYTR3QUpwVmtCM1pRc0dEM0JWWWpkekRRMEZCa3cwREFZTUZoQUJFZ2xhTWdBQUJBQW0vKzhDbFFOZUFCNEFLd0EwQUQ0QUFDVUdJeUluSmljbUp5WWlCdzRCQndZaklpYytBVGMyTnpZek1oNERBQVlIQmdjMk1oY3VCQ2N5RmhVVUJpSTFOQlkyTWhZVkZBWWpJalVDbFJBZUNBZ1dEd1lGYmRwV0NSVUZGQmtKQ3dNYUZURmdQazFGWVRJZUhQNnVVaGdyQzJUS1hnUVdGeWM4aVEwa00wclpNUzBsUHhjdEJSWUNNbjg0SFFRSkthTWNFQWdZNVdYbFVUTnd0cmpBQW1sV1FIZGxDd1lQY0ZWaU44VVJEUjBhRno0akpCVU9HUm9XQUFBRUFDYi83d0tWQTU4QUhnQXJBRGNBUUFBQUpRWWpJaWNtSnlZbkppSUhEZ0VIQmlNaUp6NEJOelkzTmpNeUhnTUFCZ2NHQnpZeUZ5NEVFeDRCRlJRR0l5SW1OVFEyQmhZeU5qUW1Kd1lWQXBVUUhnZ0lGZzhHQlczYVZna1ZCUlFaQ1FzREdoVXhZRDVOUldFeUhoeitybElZS3d0a3lsNEVGaGNuUEFRZE9rczBJRUZWQ3hRZ0hSVVBMUVVXQWpKL09CMEVDU21qSEJBSUdPVmw1VkV6Y0xhNHdBSnBWa0IzWlFzR0QzQlZZamNCQndNZkdESkZJaGt5UW5ZV0xDSWJBaDhxQUFBQUFBSUFCQUFMQTdNQ3l3QTFBRG9BQUFFVUJ6WWxNaGNXRlJRSERnRUhJalUzSWdZaUp3WUhCaUltTkRjK0FqYzJNaVV5RnhZVkZBY0dCd1lqRmhjMk16SVZGQ01pQlNVRERnRUNTQVVUQVRVWURBUVlSZndxTGdNb3NrY1JYaklJSVJZRk9xNmpVUkZ3QVNVYUN3TVlVank4SHhFRVNIVlNHQzc5N3dFSENUYTlBVmtHL3dFR0Z3Z0dFQUlHQVFJMW5Bd0JlVkVNR0JBSFNmZllWeElRRndnRkR3VUxBUU5ralFrbEYwY0xBVGs5K1FBQUFBRUFNUDhuQXRJQ3dRQTZBQUFsRGdFSERnRUhNaFlWRkFZaUp6UTJNeklXTWpZMEppTWlCd1kxTkRjdUFUVTBQZ0l6TWhjT0FTNENKeVlpRGdFVkZCWXlOejRDRmdMU0tjRjBBeFFFSXpoamloNGVFZ2N4T2lVY0VRRVBJaWgxbERoamxWZWJNdzhXRlFnWEF6T2hqVmFWOTEwUEl4a1hxMUZkQXdZZ0NSOGZNalF4Q1JJbkhTc1pBZ1VMSnlRTGpIeFVuWGxJakE0TUNnWWhCRDlucUZ0d2prVUxLaElDQUFJQVV2LzRBbG9Eb2dBeUFFUUFBQUVpQndZVkZ4UUhGak0zTWhVVUl5Y09BUWNXTWpjMk1oWVVCdzRGSWdZaklqVW1OUkEzUGdFekZ6SVhEZ0VqSnhZVkZBWWpJaWNtSnlZME56WXpNaGNXQVRCU09Bc0JBUzVLaDBoaDR3RURCMEJXY0ZKUkhnZ0ZDZzhMRXdzVHlEZWxBaElLVDVDYVRSMERKQ0pERFJVUkJnTlNaUWNGQ1JrSEJtUUNqZ1U0YVMwZElRZ0JGaVlIR0xNK0JBY0ZDeDhHQXdVREFnRUJDUzVkVkFFVnVCQWFBeEljRXFzRkNRY2VBaDFSQmd3TEVnTlBBQUFDQUZMLytBSmFBNllBTWdCQ0FBQUJJZ2NHRlJjVUJ4WXpOeklWRkNNbkRnRUhGakkzTmpJV0ZBY09CU0lHSXlJMUpqVVFOejRCTXhjeUZ3NEJJeVkrQVRJV0ZSUU9BUWNHSWlZMU5EY0JNRkk0Q3dFQkxrcUhTR0hqQVFNSFFGWndVbEVlQ0FVS0R3c1RDeFBJTjZVQ0VncFBrSnBOSFFNa0l2eUhIQnNqRjRnaUNCb21CZ0tPQlRocExSMGhDQUVXSmdjWXN6NEVCd1VMSHdZREJRTUNBUUVKTGwxVUFSVzRFQm9ERWh3U3MxVVRDd2dHRUZjYUJnd0lCQVlBQUFBQ0FGTC8rQUphQTNnQU1nQkhBQUFCSWdjR0ZSY1VCeFl6TnpJVkZDTW5EZ0VIRmpJM05qSVdGQWNPQlNJR0l5STFKalVRTno0Qk14Y3lGdzRCSXlRMk1oNENGeFlWRkFZaUppY09BaUluTnpZQk1GSTRDd0VCTGtxSFNHSGpBUU1IUUZad1VsRWVDQVVLRHdzVEN4UElONlVDRWdwUGtKcE5IUU1rSXY3MVBra3ZHeUlNQXlVbVR4SU1NalE2QVFJR0FvNEZPR2t0SFNFSUFSWW1CeGl6UGdRSEJRc2ZCZ01GQXdJQkFRa3VYVlFCRmJnUUdnTVNIQkxTR3hjY0pna0RBd1lMVVFnSExoa0dCQVFBQUFBQUF3QlMvL2dDV2dOZ0FESUFPd0JGQUFBQklnY0dGUmNVQnhZek56SVZGQ01uRGdFSEZqSTNOaklXRkFjT0JTSUdJeUkxSmpVUU56NEJNeGN5Rnc0Qkl5VXlGaFVVQmlJMU5CWTJNaFlWRkFZaklqVUJNRkk0Q3dFQkxrcUhTR0hqQVFNSFFGWndVbEVlQ0FVS0R3c1RDeFBJTjZVQ0VncFBrSnBOSFFNa0l2N29EU1F6U3RreExTVS9GeTBDamdVNGFTMGRJUWdCRmlZSEdMTStCQWNGQ3g4R0F3VURBZ0VCQ1M1ZFZBRVZ1QkFhQXhJY0V0UVJEUjBhRno0akpCVU9HUm9XQUFJQUMvL3VBUGdEb0FBTUFCNEFBQk15RndJSEJpSW5KalVTTnpRM0ZoVVVCaU1pSnlZbkpqUTNOak15RnhaL0RoWUtBUThYQ0JjQ0JwQU5GUkVHQTFKbEJ3VUpHUWNHWkFMS0N2NDgvaEFGRHlrQjRWNWdhZ1VKQng0Q0hWRUdEQXNTQTA4QUFBQUFBdi82Lys0QkF3T2lBQXdBSEFBQUV6SVhBZ2NHSWljbU5SSTNOQ1krQVRJV0ZSUU9BUWNHSWlZMU5EZC9EaFlLQVE4WENCY0NCam1ISEJzakY0Z2lDQm9tQmdMS0N2NDgvaEFGRHlrQjRWNWdjRlVUQ3dnR0VGY2FCZ3dJQkFZQUF2L1IvKzRCS2dONUFBd0FJUUFBRXpJWEFnY0dJaWNtTlJJM05DWTJNaDRDRnhZVkZBWWlKaWNPQWlJbk56Wi9EaFlLQVE4WENCY0NCak0rU1M4Yklnd0RKU1pQRWd3eU5Eb0JBZ1lDeWdyK1BQNFFCUThwQWVGZVlKUWJGeHdtQ1FNREJndFJDQWN1R1FZRUJBQUFBQVAvMS8vdUFUTURZUUFNQUJVQUh3QUFFeklYQWdjR0lpY21OUkkzTkNjeUZoVVVCaUkxTkJZMk1oWVZGQVlqSWpWL0RoWUtBUThYQ0JjQ0JqZ05KRE5LMlRFdEpUOFhMUUxLQ3Y0OC9oQUZEeWtCNFY1Z2xoRU5IUm9YUGlNa0ZRNFpHaFlBQUFBQUFnQlUvOTRDdWdOcEFDVUFRUUFBSlJRVkJnY2lMZ1luSmljV0VBY0dJeEFuTmpNeUZ4WVNGelFTTlRZeUZ4WVZBUVlpTlRRM05qTXlGakkyTnpZM05qTXlNeFlQQVFZaklpWWpJZ0t5SEJ3R0VBc1NCaFVJYWtodWFBVUdERGNFRXhVZ09tcTlid2tRSkFvSC9td0xPZ1JBT0NCV0ZBMEVDQXNKSFFJQ0hBSURMRTBhVXcwV0doUVNFd01IQlJjS0lnMnJiS05nZy83V3FSSUNOWU1TT21yKzhyWnJBWjFrRUFhRlZnRVpEUTBGQmt3MERBWU1GaEFCRWdsYU1nQUFBd0F4Lyt3Qy93T1NBQThBR1FBckFBQUFCZ2NHSXlJbU5UUStBVE15Rng0QkJSUVdNekkyRUNZaUJnRVdGUlFHSXlJbkppY21ORGMyTXpJWEZnTC9Samh6aHBIR1o1NWVqR3cwUC8xMGszcU5xNnoyb3dGMkRSVVJCZ05TWlFjRkNSa0hCbVFCQ0pZc1dyV2RkNnhQVXlpQmVJR2FyUUVKbnFFQlVnVUpCeDRDSFZFR0RBc1NBMDhBQUFBREFESC83QUwvQTVFQUR3QVpBQ2tBQUFBR0J3WWpJaVkxTkQ0Qk16SVhIZ0VGRkJZek1qWVFKaUlHRWo0Qk1oWVZGQTRCQndZaUpqVTBOd0wvUmpoemhwSEdaNTVlakd3MFAvMTBrM3FOcTZ6Mm84T0hIQnNqRjRnaUNCb21CZ0VJbGl4YXRaMTNyRTlUS0lGNGdacXRBUW1lb1FGVlZSTUxDQVlRVnhvR0RBZ0VCZ0FEQURILzdBTC9BMllBRHdBWkFDNEFBQUFHQndZaklpWTFORDRCTXpJWEhnRUZGQll6TWpZUUppSUdFall5SGdJWEZoVVVCaUltSnc0Q0lpYzNOZ0wvUmpoemhwSEdaNTVlakd3MFAvMTBrM3FOcTZ6Mm84SStTUzhiSWd3REpTWlBFZ3d5TkRvQkFnWUJDSllzV3JXZGQ2eFBVeWlCZUlHYXJRRUpucUVCZHhzWEhDWUpBd01HQzFFSUJ5NFpCZ1FFQUFBQUF3QXgvK3dDL3dOZkFBOEFHUUExQUFBQUJnY0dJeUltTlRRK0FUTXlGeDRCQlJRV016STJFQ1lpQmhNR0lqVTBOell6TWhZeU5qYzJOell6TWpNV0R3RUdJeUltSXlJQy8wWTRjNGFSeG1lZVhveHNORC85ZEpONmphdXM5cU93Q3pvRVFEZ2dWaFFOQkFnTENSMENBaHdDQXl4TkdsTU5GZ0VJbGl4YXRaMTNyRTlUS0lGNGdacXRBUW1lb1FFa0RRMEZCa3cwREFZTUZoQUJFZ2xhTWdBQUFBQUVBREgvN0FML0EwWUFEd0FaQUNJQUxBQUFBQVlIQmlNaUpqVTBQZ0V6TWhjZUFRVVVGak15TmhBbUlnWVRNaFlWRkFZaU5UUVdOaklXRlJRR0l5STFBdjlHT0hPR2tjWm5ubDZNYkRRLy9YU1RlbzJyclBhanZRMGtNMHJaTVMwbFB4Y3RBUWlXTEZxMW5YZXNUMU1vZ1hpQm1xMEJDWjZoQVhFUkRSMGFGejRqSkJVT0dSb1dBQUFBQUFNQU12L3NBdjBDK2dBbkFERUFQUUFBQVJZVkZBNEJJaWNPQWdjR0lpWTBOeVkxTkRjMk56WTNQZ0V6TWhjK0FqYzJNaFlVRGdFa0RnRVZGQmMyRWpjbUV6WTFOQ2NHQWdjV016STJBb2wwZWJpbVB3VVREd2tUR2hjK2Z4NENEQnNUTVlwTlpWOEZHQk1NR1J3WEh6TCtzNHBLWUR6dlFrckdDbFZBNmpzOElIREZBbkZpaEYrcVlSd0dHUk1LRlJFVlNGV2JTVThESDBJR1AwWThCaDhZRFJzUkVpZzNKR1d2UzRJOFRnRlBVeTMrc0NFa2JFNVMvcmhNRDR3QUFBSUFSZi9vQW53RG5BQWVBREFBQUJNMkZ4WUhCaFFYSGdFek1qWVFKell5RnhZVkZBY09BU0l1QVNjbU5UUWxGaFVVQmlNaUp5WW5KalEzTmpNeUZ4WmpJQmdNQXg0bUZGZy9XSVZIRlNFSlVFNG1mSWRkTlJFZEFWNE5GUkVHQTFKbEJ3VUpHUWNHWkFLMEZRa0VFc2JSYlR0SjF3RXZrUklEYzdpWGlrRlRPVmM2Wkhldzh3VUpCeDRDSFZFR0RBc1NBMDhBQUFBQUFnQkYvK2dDZkFPbEFCNEFMZ0FBRXpZWEZnY0dGQmNlQVRNeU5oQW5OaklYRmhVVUJ3NEJJaTRCSnlZMU5CSStBVElXRlJRT0FRY0dJaVkxTkRkaklCZ01BeDRtRkZnL1dJVkhGU0VKVUU0bWZJZGROUkVkeG9jY0d5TVhpQ0lJR2lZR0FyUVZDUVFTeHRGdE8wblhBUytSRWdOenVKZUtRVk01Vnpwa2Q3QUJBRlVUQ3dnR0VGY2FCZ3dJQkFZQUFnQkYvK2dDZkFOMEFCNEFNd0FBRXpZWEZnY0dGQmNlQVRNeU5oQW5OaklYRmhVVUJ3NEJJaTRCSnlZMU5CSTJNaDRDRnhZVkZBWWlKaWNPQWlJbk56WmpJQmdNQXg0bUZGZy9XSVZIRlNFSlVFNG1mSWRkTlJFZHJENUpMeHNpREFNbEprOFNEREkwT2dFQ0JnSzBGUWtFRXNiUmJUdEoxd0V2a1JJRGM3aVhpa0ZUT1ZjNlpIZXdBUndiRnh3bUNRTURCZ3RSQ0FjdUdRWUVCQUFBQUFNQVJmL29BbndEVndBZUFDY0FNUUFBRXpZWEZnY0dGQmNlQVRNeU5oQW5OaklYRmhVVUJ3NEJJaTRCSnlZMU5CTXlGaFVVQmlJMU5CWTJNaFlWRkFZaklqVmpJQmdNQXg0bUZGZy9XSVZIRlNFSlVFNG1mSWRkTlJFZHRnMGtNMHJaTVMwbFB4Y3RBclFWQ1FRU3h0RnRPMG5YQVMrUkVnTnp1SmVLUVZNNVZ6cGtkN0FCR1JFTkhSb1hQaU1rRlE0WkdoWUFBQUFBQVFBNC81Y0NKQUxSQURJQUFEYzBGeFl6TWpVMEp5WW5KalUwTno0Qk5DWWpJZzRCQWdjR0l5Y21KellUTkRjMk1oWVZGQWNlQVJVVUJ3WUhCaUl1QWJ4YUVRYXFwaHNHQWhJeVVrUXVRVklQRFFZREhSTVJBUVVPVFRtMFhGOUdYQ2dyYWlsVEdoVWtKd3NDZDI4S0FSVUZCUThMSG1sb04ybVUvbXBISFFVS0ZHb0JobzlZUUdCQWdsVVZWVDlETERFTkJRUVJBQUFEQUNqLytBSGJBc0FBSEFBcEFEc0FBQUVIRkJjV016STNOaGNHSXlJbkxnRW5CZ2NHSWlZMFBnRXpNaGNXQkFZVUZqTXlOalUwSnlZaUJqY1dGUlFHSXlJbkppY21ORGMyTXpJWEZnRjNCUlFNRlFZTEZRNEhQeXNPQ3dvRFFUMGZVaTB5WURsU0d4ZisvUTRmR1Raa0hoUkJOZVVORlJFR0ExSmxCd1VKR1FjR1pBRWdjMWNlRkFNR0RDTWtHMUVQZkJzT1Q1aW5jMFE2Y1dGTE5zeFlPU1VZUzkwRkNRY2VBaDFSQmd3TEVnTlBBQUFEQUNqLytBSGJBcnNBSEFBcEFEa0FBQUVIRkJjV016STNOaGNHSXlJbkxnRW5CZ2NHSWlZMFBnRXpNaGNXQkFZVUZqTXlOalUwSnlZaUJqNENNaFlWRkE0QkJ3WWlKalUwTndGM0JSUU1GUVlMRlE0SFB5c09Dd29EUVQwZlVpMHlZRGxTR3hmKy9RNGZHVFprSGhSQk5RU0hIQnNqRjRnaUNCb21CZ0VnYzFjZUZBTUdEQ01rRzFFUGZCc09UNWluYzBRNmNXRkxOc3hZT1NVWVM5eFZFd3NJQmhCWEdnWU1DQVFHQUFBQUFBTUFLUC80QWRzQ293QWNBQ2tBUGdBQUFRY1VGeFl6TWpjMkZ3WWpJaWN1QVNjR0J3WWlKalErQVRNeUZ4WUVCaFFXTXpJMk5UUW5KaUlHRWpZeUhnSVhGaFVVQmlJbUp3NENJaWMzTmdGM0JSUU1GUVlMRlE0SFB5c09Dd29EUVQwZlVpMHlZRGxTR3hmKy9RNGZHVFprSGhSQk5RMCtTUzhiSWd3REpTWlBFZ3d5TkRvQkFnWUJJSE5YSGhRREJnd2pKQnRSRDN3YkRrK1lwM05FT25GaFN6Yk1XRGtsR0VzQkVSc1hIQ1lKQXdNR0MxRUlCeTRaQmdRRUFBQUFBQU1BS1AvNEFkc0NuUUFjQUNrQVJRQUFBUWNVRnhZek1qYzJGd1lqSWljdUFTY0dCd1lpSmpRK0FUTXlGeFlFQmhRV016STJOVFFuSmlJR053WWlOVFEzTmpNeUZqSTJOelkzTmpNeU14WVBBUVlqSWlZaklnRjNCUlFNRlFZTEZRNEhQeXNPQ3dvRFFUMGZVaTB5WURsU0d4ZisvUTRmR1Raa0hoUkJOUVlMT2dSQU9DQldGQTBFQ0FzSkhRSUNIQUlETEUwYVV3MFdBU0J6Vng0VUF3WU1JeVFiVVE5OEd3NVBtS2R6UkRweFlVczJ6Rmc1SlJoTHZ3ME5CUVpNTkF3R0RCWVFBUklKV2pJQUFBUUFLUC80QWRzQ2lRQWNBQ2tBTWdBOEFBQUJCeFFYRmpNeU56WVhCaU1pSnk0Qkp3WUhCaUltTkQ0Qk16SVhGZ1FHRkJZek1qWTFOQ2NtSWdZVE1oWVZGQVlpTlRRV05qSVdGUlFHSXlJMUFYY0ZGQXdWQmdzVkRnYy9LdzRMQ2dOQlBSOVNMVEpnT1ZJYkYvNzlEaDhaTm1RZUZFRTFDdzBrTTByWk1TMGxQeGN0QVNCelZ4NFVBd1lNSXlRYlVROThHdzVQbUtkelJEcHhZVXMyekZnNUpSaExBUkVSRFIwYUZ6NGpKQlVPR1JvV0FBUUFLUC80QWRzQzF3QWNBQ2tBTlFBK0FBQUJCeFFYRmpNeU56WVhCaU1pSnk0Qkp3WUhCaUltTkQ0Qk16SVhGZ1FHRkJZek1qWTFOQ2NtSWdZVEhnRVZGQVlqSWlZMU5EWUdGakkyTkNZbkJoVUJkd1VVREJVR0N4VU9CejhyRGdzS0EwRTlIMUl0TW1BNVVoc1gvdjBPSHhrMlpCNFVRVFdLSFRwTE5DQkJWUXNVSUIwVkR5MEJJSE5YSGhRREJnd2pKQnRSRDN3YkRrK1lwM05FT25GaFN6Yk1XRGtsR0VzQllBTWZHREpGSWhreVFuWVdMQ0liQWg4cUFBQUFBQU1BS1AvNEF2d0IrUUF3QUQwQVNBQUFKUVlWRkJZeU5qYzJNeklYRGdFaklpWW5CaU1pSnlZME5qY0dCd1lpSmpRK0FUSWVBUlFIUGdFek1oWVZGQVlqSWlRR0ZCWXpNalkxTkNjbUlnWUZNajRCTkNZaklnWUhGZ0dvQWtsa1B3NGtIZ3NQQ29Oak1WNExDd29RQmdjREFVRTlIMUl0TW1CdlBBNENENFZQTkVtYlZ4ZityQTRmR1Raa0hoUkJOUUZrTDBvZktod3lWUklyeXhRSFBFSWNFQzBHTVZGTFBJb0dCeTlFSFh3YkRrK1lwM05KWUUwaGRKZ3hMMWR4UkdGTE5zeFlPU1VZUzRzOFFqWXBpa29KQUFBQUFRQW8veThCcUFIMUFEa0FBQmNpTlRRM0xnRTFORGMrQVRJV0Z3WWlMZ0lqRGdJVUZqTXlOelkzTmpNeUZ4UUdCdzRCQnpJV0ZSUUdJaWMwTmpNeUZqSTJOQ1lqcmhZZlFrMHlHVlpxUVJjVEpoY09KUnduUUI0OU5Ed2tEdzBnR2drUmNFY0RFZ1VpTlZ1SUhoNFNCekU2SXlBUlRBa2tId2hqU1dkbk1rRkhOeE1oSnlFRVozeHRUeW9TRWlvRklHNE5CaUFKSGlBeU5ERUpFaWNkS2hvQUFBQURBQ2NBQXdIQ0FzQUFHZ0FsQURjQUFEY0dGUlFXTWpZM05qTXlGdzRCSXlJbU5ENEJNaFlWRkFZaklqY3lQZ0UwSmlNaUJnY1dFeFlWRkFZaklpY21KeVkwTnpZek1oY1diZ0pKWkQ4T0pCNExEd3FEWTBabFBYTjNTWnRYRnl3dlNoOHFIREpWRWl6Y0RSVVJCZ05TWlFjRkNSa0hCbVRMRkFjOFFod1FMUVl4VVZtYWtXY3hMMWR4Smp4Q05pbUtTZ2tCYUFVSkJ4NENIVkVHREFzU0EwOEFBQU1BSndBREFjSUN2Z0FhQUNVQU5RQUFOd1lWRkJZeU5qYzJNeklYRGdFaklpWTBQZ0V5RmhVVUJpTWlOekkrQVRRbUl5SUdCeFlDUGdFeUZoVVVEZ0VIQmlJbU5UUTNiZ0pKWkQ4T0pCNExEd3FEWTBabFBYTjNTWnRYRnl3dlNoOHFIREpWRWl3RWh4d2JJeGVJSWdnYUpnYkxGQWM4UWh3UUxRWXhVVm1ha1djeEwxZHhKanhDTmltS1Nna0JhbFVUQ3dnR0VGY2FCZ3dJQkFZQUFBQURBQ2NBQXdIQ0FxRUFHZ0FsQURvQUFEY0dGUlFXTWpZM05qTXlGdzRCSXlJbU5ENEJNaFlWRkFZaklqY3lQZ0UwSmlNaUJnY1dFall5SGdJWEZoVVVCaUltSnc0Q0lpYzNObTRDU1dRL0RpUWVDdzhLZzJOR1pUMXpkMG1iVnhjc0wwb2ZLaHd5VlJJc0VENUpMeHNpREFNbEprOFNEREkwT2dFQ0Jzc1VCenhDSEJBdEJqRlJXWnFSWnpFdlYzRW1QRUkyS1lwS0NRR2FHeGNjSmdrREF3WUxVUWdITGhrR0JBUUFCQUFuQUFNQndnSi9BQm9BSlFBdUFEZ0FBRGNHRlJRV01qWTNOak15Rnc0Qkl5SW1ORDRCTWhZVkZBWWpJamN5UGdFMEppTWlCZ2NXRXpJV0ZSUUdJalUwRmpZeUZoVVVCaU1pTlc0Q1NXUS9EaVFlQ3c4S2cyTkdaVDF6ZDBtYlZ4Y3NMMG9mS2h3eVZSSXNDQTBrTTByWk1TMGxQeGN0eXhRSFBFSWNFQzBHTVZGWm1wRm5NUzlYY1NZOFFqWXBpa29KQVpJUkRSMGFGejRqSkJVT0dSb1dBQUFDLy9nQUNnRGxBcnNBRFFBZkFBQVRGeFFHSWljbU5ENENGaGNHTnhZVkZBWWpJaWNtSnlZME56WXpNaGNXZ3dJYkZ3d0ZCd1lQRnhNRlZRMFZFUVlEVW1VSEJRa1pCd1prQVIvZEh4a0dnc2hiR1JZRENWWE1CUWtISGdJZFVRWU1DeElEVHdBQUFBTC8zUUFLQU9ZQ3ZBQU5BQjBBQUJNWEZBWWlKeVkwUGdJV0Z3WW1QZ0V5RmhVVURnRUhCaUltTlRRM2d3SWJGd3dGQndZUEZ4TUZmb2NjR3lNWGlDSUlHaVlHQVIvZEh4a0dnc2hiR1JZRENWWFJWUk1MQ0FZUVZ4b0dEQWdFQmdBQUFBQUMvNzRBQ2dFWEFwY0FEUUFpQUFBVEZ4UUdJaWNtTkQ0Q0ZoY0dKall5SGdJWEZoVVVCaUltSnc0Q0lpYzNOb01DR3hjTUJRY0dEeGNUQlc0K1NTOGJJZ3dESlNaUEVnd3lORG9CQWdZQkg5MGZHUWFDeUZzWkZnTUpWZmtiRnh3bUNRTURCZ3RSQ0FjdUdRWUVCQUFBQS8rOEFBb0JHQUtDQUEwQUZnQWdBQUFURnhRR0lpY21ORDRDRmhjR0p6SVdGUlFHSWpVMEZqWXlGaFVVQmlNaU5ZTUNHeGNNQlFjR0R4Y1RCWHNOSkROSzJURXRKVDhYTFFFZjNSOFpCb0xJV3hrV0F3bFYvaEVOSFJvWFBpTWtGUTRaR2hZQUFBQUNBRG9BQkFIV0FxUUFKZ0JDQUFBbEJpTWlMZ01qSWdZSEJnY0dJaWNtSnlZbk5qSVhGaElYUGdVek1oNERBUVlpTlRRM05qTXlGakkyTnpZM05qTXlNeFlQQVFZaklpWWpJZ0hXRWhjcktnY0NFeG9qTVFvY0doSWFDUlVHQWdJVkhna0ZBUUVGRHd3YUlEZ2pMeXNFQVIvKzFnczZCRUE0SUZZVURRUUlDd2tkQWdJY0FnTXNUUnBURFJZY0UxeUVoRngrVGRjYUNRTmM0WEFoRGdNci92WVVGVjQ5VWpFalZYNkNiQUlSRFEwRkJrdzBEQVlNRmhBQkVnbGFNZ0FEQUNzQUFBSERBcnNBQ0FBV0FDZ0FBQkl5RmhRR0lpWTFOQllHRkI0Q016STJOQ1lqSWdZM0ZoVVVCaU1pSnlZbkpqUTNOak15RnhhUXdITit3bGhSRFFvWU1DRkRXMU04SkRiQ0RSVVJCZ05TWlFjRkNSa0hCbVFCN1p6SGltMWpnUTVPUXpjMUgyNmNreks5QlFrSEhnSWRVUVlNQ3hJRFR3QUFBd0FyQUFBQnd3SzhBQWdBRmdBbUFBQVNNaFlVQmlJbU5UUVdCaFFlQWpNeU5qUW1JeUlHSmo0Qk1oWVZGQTRCQndZaUpqVTBONURBYzM3Q1dGRU5DaGd3SVVOYlV6d2tOZ3VISEJzakY0Z2lDQm9tQmdIdG5NZUtiV09CRGs1RE56VWZicHlUTXNKVkV3c0lCaEJYR2dZTUNBUUdBQUFBQXdBckFBQUJ3d0thQUFnQUZnQXJBQUFTTWhZVUJpSW1OVFFXQmhRZUFqTXlOalFtSXlJR0pqWXlIZ0lYRmhVVUJpSW1KdzRDSWljM05wREFjMzdDV0ZFTkNoZ3dJVU5iVXp3a05nYytTUzhiSWd3REpTWlBFZ3d5TkRvQkFnWUI3WnpIaW0xamdRNU9RemMxSDI2Y2t6THRHeGNjSmdrREF3WUxVUWdITGhrR0JBUUFBd0FyQUFBQnd3S2RBQWdBRmdBeUFBQVNNaFlVQmlJbU5UUVdCaFFlQWpNeU5qUW1JeUlHSndZaU5UUTNOak15RmpJMk56WTNOak15TXhZUEFRWWpJaVlqSXBEQWMzN0NXRkVOQ2hnd0lVTmJVendrTmd3TE9nUkFPQ0JXRkEwRUNBc0pIUUlDSEFJRExFMGFVdzBXQWUyY3g0cHRZNEVPVGtNM05SOXVuSk15cEEwTkJRWk1OQXdHREJZUUFSSUpXaklBQUFRQUt3QUFBY01DZ2dBSUFCWUFId0FwQUFBU01oWVVCaUltTlRRV0JoUWVBak15TmpRbUl5SUdKeklXRlJRR0lqVTBGall5RmhVVUJpTWlOWkRBYzM3Q1dGRU5DaGd3SVVOYlV6d2tOZ2NOSkROSzJURXRKVDhYTFFIdG5NZUtiV09CRGs1RE56VWZicHlUTXU4UkRSMGFGejRqSkJVT0dSb1dBQUFEQURVQVJ3SG1BYjRBREFBVUFCMEFBQk1GTWhVVUJ3WWpCeUkxTkRZV05qSVdGQVlpSmhNeUZoUUdJaVkxTkdvQll4a2REZ3U0d3lOM0xDWWNNaVFZT2hjbEpDc1pBUnNFRGhJUUNBTVhEUnVnSWhJbEh4TUJaQmNxSVNFVUtBQURBQ1AveFFJWEFnRUFJZ0FyQURNQUFBRVVCeFlVQmlNaUp3NENCd1lpSmpRK0FUY3VBVFUwTmpNeUZ6NENOell5RmdjaUJoVVVGelkzSmdNV01qNEJOQ2NHQWdFMFNxMTNKU1FGRmhBS0ZSb1VFeXdCS1NhUWJVSTZCQkVOQ0JFWEUrQlphRFpuZHlsNEUwWmpTakp2QWVBVk5FQzZnd3NISGhZTUdSQVRIamtCSUVZNGRJY2ZCUllRQ1JNVVVHZGNTaUNLa1JMK3Z3TWpVRzh1aGdBQUFnQXQvLzhCb2dLMUFDQUFNZ0FBRXdZVkZCY1dNamMyTlRRbkxnRTJNeklYRmhVVUJ3WWpJaWNtTlRRK0FoWTNGaFVVQmlNaUp5WW5KalEzTmpNeUZ4YU5HamNnV1JzZ0pCQUZFaFU5RXdZa00yNDZLVTBVRGhRWnZRMFZFUVlEVW1VSEJRa1pCd1prQWRVeFlaSlhNeTg2Wm9BOUhSb01maU1qVzF0OUsxS2xTRXdYRkFSdEJRa0hIZ0lkVVFZTUN4SURUd0FBQUFBQ0FDMy8vd0dpQXJ3QUlBQXdBQUFUQmhVVUZ4WXlOelkxTkNjdUFUWXpNaGNXRlJRSEJpTWlKeVkxTkQ0Q0ZqNENNaFlWRkE0QkJ3WWlKalUwTjQwYU55QlpHeUFrRUFVU0ZUMFRCaVF6YmpvcFRSUU9GQmtTaHh3Ykl4ZUlJZ2dhSmdZQjFURmhrbGN6THpwbWdEMGRHZ3grSXlOYlczMHJVcVZJVEJjVUJIaFZFd3NJQmhCWEdnWU1DQVFHQUFBQ0FDMy8vd0dpQXB3QUlBQTFBQUFUQmhVVUZ4WXlOelkxTkNjdUFUWXpNaGNXRlJRSEJpTWlKeVkxTkQ0Q0ZqNEJNaDRDRnhZVkZBWWlKaWNPQWlJbk56YU5HamNnV1JzZ0pCQUZFaFU5RXdZa00yNDZLVTBVRGhRWkdENUpMeHNpREFNbEprOFNEREkwT2dFQ0JnSFZNV0dTVnpNdk9tYUFQUjBhREg0akkxdGJmU3RTcFVoTUZ4UUVwUnNYSENZSkF3TUdDMUVJQnk0WkJnUUVBQUFBQXdBdC8vOEJvZ0tDQUNBQUtRQXpBQUFUQmhVVUZ4WXlOelkxTkNjdUFUWXpNaGNXRlJRSEJpTWlKeVkxTkQ0Q0ZqY3lGaFVVQmlJMU5CWTJNaFlWRkFZaklqV05HamNnV1JzZ0pCQUZFaFU5RXdZa00yNDZLVTBVRGhRWkRnMGtNMHJaTVMwbFB4Y3RBZFV4WVpKWE15ODZab0E5SFJvTWZpTWpXMXQ5SzFLbFNFd1hGQVNsRVEwZEdoYytJeVFWRGhrYUZnQUFBQUFELy83L0NRR01Bb0lBTmdBL0FFa0FBQUUwTXpJWEhBRVNGUlFHSWljMk14WVhGak15TmpVMEp3NEVCd1lpTGdZOUFUWXpNaFVIRkJZek1qNENOellETWhZVkZBWWlOVFFXTmpJV0ZSUUdJeUkxQVNvdUNRa2NXTk5kRWgwTEdFY3ZSam9GQVF3R0R4QU5Ga01vR3hVTUJ3TUJDaG9rQmpZZEZpSVNEQUlEcmcwa00wclpNUzBsUHhjdEFhUklBZ3hxL3NKUGZtQkVGZ0VPS2xob0dac0RMUTRtRUFzVUVpWXFRVFpPTkNnOEVScGhmN2d3VjA0MFR3RUFFUTBkR2hjK0l5UVZEaGthRmdBQUFBQUJBRUlBQ2dDSUFlTUFEUUFBTnpRM05qSVhCaFVYRkFZaUp5WkNGQWNVRndVQ0d4Y01CZmJFSGdzTFZXVGRIeGtHZ2dBQUFnQXgvK3dFbHdMT0FFUUFUUUFBQVJjeUZ3NEJJeWNpQndZVkZ4UUhGak0zTWhjV0Z4UWpKd1lIQmdjV01qNEJNaFlWRkE0Rkt3RUdJeUkxSnc0Qkl5SW1OVFEyTnpZek1oWVhOamMyTnpZQkZCWWdOaEFtSWdZRGlwcE5IUU1rSXRoU09Bc0JBUzVLZDBRTkJnRmg0d0VCQWdkQU9EeWtVUjROQ2c4TEV3c0tEY1EzcFFJcWkxS1J4anN5YUk1V2hpY0NDQlZsUC8wWmt3RURnNFh4b3dMT0F4SWNFZ01GT0drdEhTRUlBUWtHQnlZSEdEcDVQZ1FDQ2dzVERBa0ZBd0lCQVFrdVdVbEt0WjFha0N4Y1NFVW5XaUVGQlA1dWdacWtBUlNjb1FBREFDc0FBQU1OQWU0QUl3QXhBRHdBQUNVR0ZSUVdNalkzTmpNeUZ3NEJJaWNHSXlJbU5UUTJNeklXRno0Qk1oWVZGQVlqSWlRR0ZCNENNekkyTkNZaklnWUZNajRCTkNZaklnWUhGZ0c1QWtsa1B3MGxIZ3NQQ29QT0lEaCtXVmhsWUVkY0VoMWpkRW1iVnhmK293MEtHREFoUTF0VFBDUTJBVzR2U2g4cUhESlZFaXpMRkFjOFFod1FMUVl4VVdKbGJXT0JuRmxKU0ZzeEwxZHhmVTVETnpVZmJweVRNcVk4UWpZcGlrb0pBQU1BRS8vc0FsZ0RWQUFjQUNVQUx3QUFBVFkzUGdNeUZ3NERJeUluUGdFM0xnRTFORFl5SGdNRE1oWVZGQVlpTlRRV05qSVdGUlFHSXlJMUFWQkdHaE1iSkNZZkVTWndYV2NnRFE4VFJSbUxsUmdlRmg4dFlrTU5KRE5LMlRFdEpUOFhMUUZBdGp3cktDc1FCUmJzL3M4R0tiTXhsZUE3Q2c4aVIxbUVBZEVSRFIwYUZ6NGpKQlVPR1JvV0FBQUFBQUVBUVFJakFab0NuQUFVQUFBU05qSWVBaGNXRlJRR0lpWW5EZ0lpSnpjMm1ENUpMeHNpREFNbEprOFNEREkwT2dFQ0JnS0JHeGNjSmdrREF3WUxVUWdITGhrR0JBUUFBQUVBTEFJYUFXQUNwUUFXQUFBQk16SVVCdzRDSWk0Qkp6UTJNaDRCRnpZM05qYzJBVklJQmdFT1FUby9MeXNSTHg4aUl3Y0pFQ0lXREFLbEJBTU1UaW9wT1FrRkVDQXZCZ2tTSlJRTUFBQUFBZ0JDQWdjQklnSzRBQXNBRkFBQUV4NEJGUlFHSXlJbU5UUTJCaFl5TmpRbUp3WVZ5eDA2U3pRZ1FWVUxGQ0FkRlE4dEFyZ0RIeGd5UlNJWk1rSjJGaXdpR3dJZktnQUFBUUE3QWlRQnFRS2FBQnNBQUJNR0lqVTBOell6TWhZeU5qYzJOell6TWpNV0R3RUdJeUltSXlLQUN6b0VRRGdnVmhRTkJBZ0xDUjBDQWh3Q0F5eE5HbE1ORmdJekRRMEZCa3cwREFZTUZoQUJFZ2xhTWdBQUFBRUFRQUR0QWxJQkxnQVRBQUFCTWhVVURnRWlMZ0VqSWpVME56WXlGakkrQVFJekgxeDRSRmlBQmh3bEVTYXZVVjR6QVM0UUZoZ0RBUWNMRVJFSUJ3RUtBQUFBQVFCREFPMEN3QUV1QUJNQUFBRXlGUlFPQVNJdUFTTWlOVFEzTmpJV01qNEJBcUVmY1pOVWJKZ0ZIQ1VSSWVac2ZETUJMaEFXR0FNQkJ3c1JFUWdIQVFvQUFBQUJBQ3NCNlFDS0FyOEFDd0FBRXhRaklqVTBKaWMwTmpJV2lpUWNIUUliSlI4Q00wb1ZIM0lORHhSaEFBRUFNQUhuQUpBQ3Z3QVBBQUFURkFZVkZDTW5KalUwTmpVME14Y1drQm9lRmhJYUh4VVNBcU1jYlJZZEJRa1BIRzBiRndVSUFBQUFBZi9kL3dFQWdBQmZBQkFBQUJjMExnRTNOak15RlJRSEJpSW1ORGMyUUFZREFRSW1JRzBNRmhRTVZ4WUpJeHdPSDEra1V3Z0tEd3BEQUFBQUFnQXFBZWNCR2dLL0FBc0FHd0FBRXhRaklqVTBKaWMwTmpJV1BnRXpGeFlWRkJZVkZBWWpKeVkwSm9ra0hCMENHeVVmTVJ3TERSSWFIUXNNRWhvQ00wb1ZIM0lORHhSaFZBMENCUkFiYlJ3UERnSUZMRzBBQUFJQU1BSG5BU0FDdndBTEFCc0FBQk1pTlRRMk1oWVZEZ0VWRkNjVUJoVVVJeWNtTlRRMk5UUXpGeGJsSkI4bEd3SWRjUm9lRmhJYUh4VVNBZWxLSzJFVUR3MXlIeFc2SEcwV0hRVUpEeHh0R3hjRkNBQUFBQUFDLzkzL0FRRWJBRjhBRUFBaEFBQVhOQzRCTnpZek1oVVVCd1lpSmpRM05qYzBMZ0UzTmpNeUZSUUhCaUltTkRjMlFBWURBUUltSUcwTUZoUU1WNXNHQXdFQ0ppQnREQllVREZjV0NTTWNEaDlmcEZNSUNnOEtRNE1KSXh3T0gxK2tVd2dLRHdwREFBRUFJUC9MQVlnQ013QWhBQUFURng0QkZ4WVZGQVlqSWlNbkZBY1VCaUluTmpVaUJpWTFORGMyTXljMk56WXk1UUlUVnhnZkZCSUNBWG9MSUJ3Q0N6b3hIQ1F1TndRQ0VSSVpBaStXQVFVQkJCWUpGUW5Wc1FjTEJkVEFDdzRORndjSmh3WUZCZ0FBQVFCTUFRTUJNQUhDQUFjQUFCSTJNaFlVQmlJbVRGVk5Ra0pZU2dHSU9rSlFMVGtBQXdBeS85MEN0QUJKQUFjQUR3QVhBQUFXSmpRMk1oWVVCaFltTkRZeUZoUUdOaVkwTmpJV0ZBWmNLaXd1SUN2aEtpd3VJQ3ZkS2l3dUlDc2VHeVlqR2ljakJSc21JeG9uSXdnYkppTWFKeU1BQUFBQUFRQVpBRndCZ1FIc0FCc0FBQ1VXRkFZaklpNEdOVFErQVRJWEZoVVVCdzRCRlJRV0FYSVBIQk1OVHpFYU1oRS9FSGFaSWdvRUR5TzR4SWNGRGhnZEdnOG5EemtPQkJSZFdCTUdCUXNIRUhRU0pXWUFBUUFnQUZNQmlBSGpBQm9BQUJNbU5EWXpNaDRHRlJRT0FTSW5KalEzUGdFMU5DWXZEeHdURFU4eEdqSVJQeEIybVNJSUFoQWpzOFVCdUFVT0dCMGFEeWNQT1E0RUZGMVlFd1lSQ0JCd0VpVnBBQUFBQVFBai8va0Mzd0xBQUVjQUFDVUhJaWNlQVRNeU56NERGaGNPQVNJbUp5WTBOanNCSmpRM0RnRWpKeVkxTkRjK0FUTXlGaGNPQVM0Q0p5WWpJZ1lIUGdFM01oUUhCZ1FIQmhRWEJETXlGUlFIQmdISDB4b1lIWDFZU3pNM0lnOFpGeFVzcXQrY0drQWpFZ0VDQlJRTUJoUVFWQjZ4aVZCYUdROFdGUWdYQXpOSldZc2NOZmtmSXgwWi91SW9CQVVCTWdNWkhRNjFCUUZCU2lBaEp4SVNBZ1pXVzE5Y0JSb2JEek1wQkFJRkJoRVpDb2FvUjBVT0RBb0dJUVEvaTJvREJRUXFEUXdCQWg0NkdnTU5FUkFIQUFJQU9nRmxBcDRDbGdBYUFEc0FBQUV5RmhRT0F5TUdGQllHQndZaklpY21ORGNpTlRRMk16SVRCaUkxTkRjMk16SVhQZ0V6TWhFVUJ5SWpJaWNtSnlZbkRnSWlMZ0VuQmdFMUN4TVNJQndvQndnQkFRSUREeGNEQXdockRBckFvQUl2RXdNU0t6WXBLUTgxRndNQ0RnVUNBUUlLQ0NBZ0h4Z2FDZ2tDZ3hNT0JnUUJBbG92SWhjUEh4b1hZMW9iQ0F6Kyt4QVVmM01SYVZJcC92a2ZCUTRHUEdjMEMwUXNKamdNVGdBREFEZ0F2d0xmQVprQUZBQWlBQzBBQUFFeUZoVVVJeUl1QVNjR0l5SW1OVFEyTXpJWE5nVXlGajRFTnlZaUJoVVVCVEkxTkNZaklnY2VBZ0pLUVZSc0tGU0JCNGxTS0RSSUxGQnFaUDdDRUJFaEVTQVJId2hVVFNrQjlrazBKMXhkSldZc0FaazhSRm9iUUFOTEpoMHNOeXhObXdNSkJBOElFQVFlSHc0Z0hEVWZOVHNXTFFvQUFRQTBBRlVCNUFJeEFEa0FBQ1VlQVFZbkppSUhEZ0lIQmlNdUFUYzJOdzRDSmpVMFB3RW1KeTRCTnpJV016WTNOak15RmhRT0FRY3lOaDRCRGdNbUl3WUhGZ0c2RGdvTURrSlZGUVViRncwZURnMFJDQXM5RlZVaEQ3aENlR0VRRVJJRGFKa0RJa1lURFE4T1B4SUZJeE1QQWd3Y0VpY0RNZzl0K2dNVkVnSUpBUWNuSVJFbEFoY0xERk1DQ0FNUUNSb0VYUUlGQVNjQkJnUTFieE1NRTFzWkFnSVJEZ2dEQVFGS0ZBSUFBQUFDQURzQWVBRi9BZVlBRWdBaUFBQWxJaVkwUGdJeUZoUUhCZ2NXRnhZVkZBWUZGakl4TWhjV0ZSUUhCaUl1QVRjMEFWOHQ0VXR6RXhJVkNGaENDejJMRC83cVdxOFZDUU1YTzNWWkpRSHpMU3BDU3c4U0VnbEdMUU1KRXhzS0QwUURGUWNHRUFFQkF3NFJGUUFDQUVJQVpBRnJBYzBBRndBbEFBQTNJalUwTnpZM0p5WTFORGMyTXpJZUF3Y09BUWNHQnpjeUhnRVVCaU1ISWljbU5UUnFJbll4QzZBU0FnUVBCVFNTSFFNS0lJWWNDQnZRR2h3TUNoSEZOd3dHdkJzWE5CWUhYUWtQQkFVUUZsc1JGZ29ZUHhNRkpBWUNFd3dSQ0F3SEN4WUFBQUVBQXYvNUFiNERCUUExQUFBWEloRTBKeU1pTGdJbkpqVTBNeklYTmpjMk16SVhCaUluSmlNaUJnYzNNaGNHRlJjVUJpSW5BelEyTndZSEJnY0dGQllVQm9ZU0FSUU9FQmtQQ0E4K0d4WUdMeWxUYlNRUEhRVWVRelE0QWRneEFRVUNIQllNQndNTkhEQjREZ0lLRlFjQk1YOGFBUUVFQXdZUEV3S29PakYwRWdKU2RHY0lHRWR3K0J3Y0JnRVFIR0ZBQXdFQ0JSdGF4MmdzQUFFQUF2LzVBaWNEQlFCRUFBQVhJaEUwSnlNaUxnSW5KalUwTXpJWE5qYzJOell5RnpZek1qTVdGUlFIQmhVVU16Y3lGd1lpSmljbU5UUVNOQ2N1QVNJR0J3WVVGemN5RlJRT0FRY0dGQllVQm9ZU0FSUU9FQmtQQ0E4K0d4WUZCdzQzSG1ncEN5QUZCUmtIREVjbENRWURlRDRDQVJzQkVFUkZLUWNLQWxVeU1Fa09BZ29WQndFdmdCc0JBUVFEQmc4VEFvd2dTQlFMSXdzWmRrSlhtMFc1Qndna1drMFVKekVCRzBBUUp5Y2pIaTFTR3dnWER3b0NCUnhieFdnc0FBQUFIQUZXQUFFQUFBQUFBQUFBWVFERUFBRUFBQUFBQUFFQUJ3RTJBQUVBQUFBQUFBSUFCd0ZPQUFFQUFBQUFBQU1BSUFHWUFBRUFBQUFBQUFRQUR3SFpBQUVBQUFBQUFBVUFEUUlGQUFFQUFBQUFBQVlBRHdJekFBRUFBQUFBQUFjQVBnTEJBQUVBQUFBQUFBZ0FDZ01XQUFFQUFBQUFBQWtBQ2dNM0FBRUFBQUFBQUFzQUhBTjhBQUVBQUFBQUFBd0FIQVBUQUFFQUFBQUFBQTBBa0FVU0FBRUFBQUFBQUE0QUdnWFpBQU1BQVFRSkFBQUF3Z0FBQUFNQUFRUUpBQUVBRGdFbUFBTUFBUVFKQUFJQURnRStBQU1BQVFRSkFBTUFRQUZXQUFNQUFRUUpBQVFBSGdHNUFBTUFBUVFKQUFVQUdnSHBBQU1BQVFRSkFBWUFIZ0lUQUFNQUFRUUpBQWNBZkFKREFBTUFBUVFKQUFnQUZBTUFBQU1BQVFRSkFBa0FGQU1oQUFNQUFRUUpBQXNBT0FOQ0FBTUFBUVFKQUF3QU9BT1pBQU1BQVFRSkFBMEJJQVB3QUFNQUFRUUpBQTRBTkFXakFFTUFid0J3QUhrQWNnQnBBR2NBYUFCMEFDQUFLQUJqQUNrQUlBQXlBREFBTVFBeEFDd0FJQUJCQUdRQWJRQnBBSGdBSUFCRUFHVUFjd0JwQUdjQWJnQnpBQ0FBS0FCb0FIUUFkQUJ3QURvQUx3QXZBSGNBZHdCM0FDNEFZUUJrQUcwQWFRQjRBR1FBWlFCekFHa0Fad0J1QUhNQUxnQmpBRzhBYlFBdkFDa0FJQUIzQUdrQWRBQm9BQ0FBVWdCbEFITUFaUUJ5QUhZQVpRQmtBQ0FBUmdCdkFHNEFkQUFnQUU0QVlRQnRBR1VBSUFCSUFHRUFiZ0JrQUd3QVpRQmxBQzRBQUVOdmNIbHlhV2RvZENBb1l5a2dNakF4TVN3Z1FXUnRhWGdnUkdWemFXZHVjeUFvYUhSMGNEb3ZMM2QzZHk1aFpHMXBlR1JsYzJsbmJuTXVZMjl0THlrZ2QybDBhQ0JTWlhObGNuWmxaQ0JHYjI1MElFNWhiV1VnU0dGdVpHeGxaUzRBQUVnQVlRQnVBR1FBYkFCbEFHVUFBRWhoYm1Sc1pXVUFBRklBWlFCbkFIVUFiQUJoQUhJQUFGSmxaM1ZzWVhJQUFFb0Fid0JsQUZBQWNnQnBBRzRBWXdCbEFEb0FJQUJJQUdFQWJnQmtBR3dBWlFCbEFDQUFVZ0JsQUdjQWRRQnNBR0VBY2dBNkFDQUFNZ0F3QURFQU1RQUFTbTlsVUhKcGJtTmxPaUJJWVc1a2JHVmxJRkpsWjNWc1lYSTZJREl3TVRFQUFFZ0FZUUJ1QUdRQWJBQmxBR1VBSUFCU0FHVUFad0IxQUd3QVlRQnlBQUJJWVc1a2JHVmxJRkpsWjNWc1lYSUFBRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFBd0FERUFBRlpsY25OcGIyNGdNUzR3TURFQUFFZ0FZUUJ1QUdRQWJBQmxBR1VBTFFCU0FHVUFad0IxQUd3QVlRQnlBQUJJWVc1a2JHVmxMVkpsWjNWc1lYSUFBRWdBWVFCdUFHUUFiQUJsQUdVQUlBQnBBSE1BSUFCaEFDQUFkQUJ5QUdFQVpBQmxBRzBBWVFCeUFHc0FJQUJ2QUdZQUlBQkJBR1FBYlFCcEFIZ0FJQUJFQUdVQWN3QnBBR2NBYmdCekFDQUFLQUIzQUhjQWR3QXVBR0VBWkFCdEFHa0FlQUJrQUdVQWN3QnBBR2NBYmdCekFDNEFZd0J2QUcwQUtRQUFTR0Z1Wkd4bFpTQnBjeUJoSUhSeVlXUmxiV0Z5YXlCdlppQkJaRzFwZUNCRVpYTnBaMjV6SUNoM2QzY3VZV1J0YVhoa1pYTnBaMjV6TG1OdmJTa0FBRW9BYndCbEFDQUFVQUJ5QUdrQWJnQmpBR1VBQUVwdlpTQlFjbWx1WTJVQUFFb0Fid0JsQUNBQVVBQnlBR2tBYmdCakFHVUFBRXB2WlNCUWNtbHVZMlVBQUdnQWRBQjBBSEFBT2dBdkFDOEFkd0IzQUhjQUxnQmhBR1FBYlFCcEFIZ0FaQUJsQUhNQWFRQm5BRzRBY3dBdUFHTUFid0J0QUM4QUFHaDBkSEE2THk5M2QzY3VZV1J0YVhoa1pYTnBaMjV6TG1OdmJTOEFBR2dBZEFCMEFIQUFPZ0F2QUM4QWR3QjNBSGNBTGdCaEFHUUFiUUJwQUhnQVpBQmxBSE1BYVFCbkFHNEFjd0F1QUdNQWJ3QnRBQzhBQUdoMGRIQTZMeTkzZDNjdVlXUnRhWGhrWlhOcFoyNXpMbU52YlM4QUFGUUFhQUJwQUhNQUlBQkdBRzhBYmdCMEFDQUFVd0J2QUdZQWRBQjNBR0VBY2dCbEFDQUFhUUJ6QUNBQWJBQnBBR01BWlFCdUFITUFaUUJrQUNBQWRRQnVBR1FBWlFCeUFDQUFkQUJvQUdVQUlBQlRBRWtBVEFBZ0FFOEFjQUJsQUc0QUlBQkdBRzhBYmdCMEFDQUFUQUJwQUdNQVpRQnVBSE1BWlFBc0FDQUFWZ0JsQUhJQWN3QnBBRzhBYmdBZ0FERUFMZ0F4QUM0QUlBQlVBR2dBYVFCekFDQUFiQUJwQUdNQVpRQnVBSE1BWlFBZ0FHa0Fjd0FnQUdFQWRnQmhBR2tBYkFCaEFHSUFiQUJsQUNBQWR3QnBBSFFBYUFBZ0FHRUFJQUJHQUVFQVVRQWdBR0VBZEFBNkFDQUFhQUIwQUhRQWNBQTZBQzhBTHdCekFHTUFjZ0JwQUhBQWRBQnpBQzRBY3dCcEFHd0FMZ0J2QUhJQVp3QXZBRThBUmdCTUFBQlVhR2x6SUVadmJuUWdVMjltZEhkaGNtVWdhWE1nYkdsalpXNXpaV1FnZFc1a1pYSWdkR2hsSUZOSlRDQlBjR1Z1SUVadmJuUWdUR2xqWlc1elpTd2dWbVZ5YzJsdmJpQXhMakV1SUZSb2FYTWdiR2xqWlc1elpTQnBjeUJoZG1GcGJHRmliR1VnZDJsMGFDQmhJRVpCVVNCaGREb2dhSFIwY0RvdkwzTmpjbWx3ZEhNdWMybHNMbTl5Wnk5UFJrd0FBR2dBZEFCMEFIQUFPZ0F2QUM4QWN3QmpBSElBYVFCd0FIUUFjd0F1QUhNQWFRQnNBQzRBYndCeUFHY0FMd0JQQUVZQVRBQUFhSFIwY0RvdkwzTmpjbWx3ZEhNdWMybHNMbTl5Wnk5UFJrd0FBQUFBQWdBQUFBQUFBUCsxQURJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRE1BQUFBQVFBQ0FBTUFCQUFGQUFZQUJ3QUlBQWtBQ2dBTEFBd0FEUUFPQUE4QUVBQVJBQklBRXdBVUFCVUFGZ0FYQUJnQUdRQWFBQnNBSEFBZEFCNEFId0FnQUNFQUlnQWpBQ1FBSlFBbUFDY0FLQUFwQUNvQUt3QXNBQzBBTGdBdkFEQUFNUUF5QURNQU5BQTFBRFlBTndBNEFEa0FPZ0E3QUR3QVBRQStBRDhBUUFCQkFFSUFRd0JFQUVVQVJnQkhBRWdBU1FCS0FFc0FUQUJOQUU0QVR3QlFBRkVBVWdCVEFGUUFWUUJXQUZjQVdBQlpBRm9BV3dCY0FGMEFYZ0JmQUdBQVlRQ2pBSVFBaFFDV0FJWUFqZ0NMQUowQXFRQ0tBSU1Ba3dDTkFKY0FpQUREQU40QW5nQ3FBS0lBclFESkFNY0FyZ0JpQUdNQWtBQmtBTXNBWlFESUFNb0F6d0RNQU0wQXpnQm1BTk1BMEFEUkFLOEFad0NSQU5ZQTFBRFZBR2dBaVFCcUFHa0Fhd0J0QUd3QWJnQ2dBRzhBY1FCd0FISUFjd0IxQUhRQWRnQjNBSGdBZWdCNUFIc0FmUUI4QUxnQW9RQi9BSDRBZ0FDQkFMb0Exd0N3QUxFQXV3RFlBT0VBM1FEWkFMSUFzd0MyQUxjQXhBQzBBTFVBeFFDQ0FJY0Fxd0MrQUw4QkFnQ01BSklBandDVUFKVUF3QURCQkVWMWNtOEFBQUVBQWYvL0FBOEFBQUFCQUFBQUFBQUJBQUFBRGdBQUFCZ0FJQUFBQUFJQUFRQUJBTXNBQVFBRUFBQUFBZ0FBQUFFQUFBQUJBQUFBQVFBQUFBb0FMQUF1QUFKRVJreFVBQTVzWVhSdUFCZ0FCQUFBQUFELy93QUFBQVFBQUFBQS8vOEFBQUFBQUFBQUFRQUFBQW9BTUFBK0FBSkVSa3hVQUE1c1lYUnVBQm9BQkFBQUFBRC8vd0FCQUFBQUJBQUFBQUQvL3dBQkFBQUFBV3RsY200QUNBQUFBQUVBQUFBQkFBUUFBZ0FBQUFFQUNBQUJJc3dBQkFBQUFHb0EzZ0QwQVFZQkZBRldBZVFDTmdKSUFrNENwQUwyQTRRRHVnUEFCQVlFR0FSaUJHd0VuZ1RNQk40RStBVUdCUmdGTGdXOEJoNEdhQWIrQjN3SVdnaUVDUFlKY0FudUNud0xMZ3VrREJvTXRBMGlEWmdOdGc0UUQwSVB6QkNHRVFnUmloS01FeElUbkJRS0ZDd1V2aFU4RlpZV0VCYldGMWdYb2hnTUdHb1kwQmplR1JnWlFoblFHbFlhNUJ1Q0cvd2NIaHljSFRvZHdCNFNIbndlNWg4d0h6b2ZRQjlPSDFnZmNoOTRINDRnV0NCZUlHZ2djaUQ4SVFZaERDRW1JV1Foc2lId0FrZ2lQaUpRSWw0aWFDSjJJcHdpcWdBRkFCSC9qd0NmQUFjQW9BQW1BS0VBS0FDKy8zd0FCQUFVLyt3QUZmL3ZBQmIvOVFBYS8rRUFBd0EzLyt3QU9mLzBBRHovN1FBUUFCSC9vd0FTLzc4QUkvL2pBQ1QvOEFBdC83SUFSUC91QUViLzhRQkgvK2tBU1AvdEFFci85UUJTLy9nQVUvLzFBRlQvOWdCOC83WUFvQUFoQUtFQUpRQWpBQXYvN2dBVC8rMEFGUC91QUJmLzVRQVovK3dBR3YveUFCdi84Z0FjLytRQUpmL3pBQ2IvNmdBby8vVUFLdi9wQURMLzZBQTAvK2dBT1Avc0FEci84UUE3QUFZQVJmLzFBRWIvN2dCSC8vSUFTUC91QUVuLzd3QksvKzhBVVAvMkFGSC84Z0JTLyswQVZQL3dBRlgvOFFCWC8rb0FXUC9xQUZuLzVBQmEvKzBBWFAvckFGNy82UUNFQUFrQUZBQWsvKzhBTGYreEFEY0FLd0E3QUFzQVBRQVNBRVQvNlFCRy8rd0FSLy9rQUVqLzVnQksvL0FBVXYveUFGUC83d0JVLy9BQVZ3QVhBRnNBQmdCOC83SUFuZ0FqQUo4QUZBQ2dBQ0VBb1FBZkFBUUFGUC9uQUJYLzZBQVcvKzBBR3YvWUFBRUFUUUFJQUJVQUZQL2JBQlgvMlFBVy8rQUFHUC95QUJyL3l3QWIvKzBBTGYrN0FERC8rQUEyLys0QU4vK3lBRG4vNUFBNy84d0FQUCs2QUQzLzR3QkovK1lBVHYvNEFGYi85UUJaLy9VQVcvLzNBRjMvMFFCOC85OEFGQUFGLzQ4QUN2K2pBQlQvNFFBWC8rb0FHdi9wQUJ6L3pnQW0vL01BS3YveUFETC83Z0EwLytzQU4vKzRBRGovN0FBNS84Z0FQUC9RQUVuLzhRQlovOThBdWYraUFMci9vUUM4LzQ4QXZmK1BBQ01BRXY4bEFCUC83Z0FWLy9RQUYvL3dBQmovOFFBWi8rSUFHLy95QUNULzRRQW0vK2NBSi8vMEFDci82UUF0LzhnQU12L3FBRFQvN0FBNi8vVUFSUC9UQUViLzFRQkgvOWtBU1AvU0FFci8xd0JRLzkwQVVmL2xBRkwvMkFCVC85WUFWUC9WQUZYLzZnQlcvOTBBV1AvZ0FGbi84Z0JhLzlzQVcvL3RBRnovNUFCZC8rb0FmUC9FQUpILzdBQU5BQXovN3dBUi8ra0FFdi9qQUJYLzdnQWEvL1VBTi8vdEFEdi84d0E4Ly9BQVBmL3dBRC8vN1FCQS8rWUFZUC91QUh6LzhnQUJBQkwvN3dBUkFBci84d0FPLy9VQUVQL2hBQlVBQ0FBWC8rd0FIUC94QUNELzZ3QXkvL1lBTlAvMUFEZi83d0E0Ly9VQU9mL3ZBRHovN2dBLy8rVUFiUC8xQUhILzRRQjhBQXNBQkFBTS8vVUFFdi9yQUQvLzlRQkEvL0lBRWdBSy8vUUFEUC93QUJILzhBQVMvK2dBRlAvMUFCWC85QUFXLy9VQUd2L3hBQzMvOVFBMy8vUUFPZi8xQUR6LzdnQTkvL1VBUC8vckFFRC83Z0JnLy9BQWJQLzBBSHovOWdBQ0FCTC83UUJBLy9ZQURBQUsvK1FBRFAvMUFCTC84UUFVLytvQUd2L2hBRGYvNHdBNS8rNEFQUC9rQUQvLzRBQkEvK1lBWVAvdEFHei80UUFMQUFiLzdnQU8vKzRBRVAvakFCSC94d0FTLzg0QUlQLzFBQ1QvOUFBdC85Z0FZLy93QUhILzlBQjgvOVVBQkFBUS8rY0FFdi91QUNELzlnQngvK2NBQmdBTS8vWUFFdi96QURmLzhRQTgvL01BUC8vdUFFRC85UUFEQURmL3R3QTUvKzRBUFAvWkFBUUFGUC9qQUJYLzVRQVcvK29BR3YvVkFBVUFDdi93QURmL3R3QTUvK2NBUFAvVUFMci81UUFqQUFyLzlBQU4vL0VBRlAveEFCci84QUFpLy9ZQU4vL2FBRGovK1FBNS8rd0FQUC9jQUQvLzRnQkYvL2tBUnYvN0FFai8rd0JKLy9NQVN2LzdBRXYvK2dCTS8vb0FUZi82QUU3Lyt3QlAvL2tBVVAvN0FGSC8rZ0JTLy9zQVZQLzdBRlgvK1FCWC8vY0FXUC81QUZuLzhRQmEvL2tBVy8vN0FGei8rUUNSLy9zQXVmL3NBTHIvOEFERi8rc0FHQUFTLyswQUxmLzdBRGYvNGdBNy8ra0FQUC80QUQzLytRQS8vL1VBUVAvdEFFbi8rQUJOLy9zQVR2LzdBRkgvK3dCVi8vc0FWdi81QUZmLytBQlovL2tBVy8vNEFGei8rd0JkLy9NQVlQLzJBSHovK3dDUi8vc0FvQUFYQUtFQUZRQVNBQTMvOHdBbS8vc0FLdi82QURMLytRQTAvL2tBTnYvNUFEZi8zQUE0Ly9zQU9mLzdBRHIvK2dBNy85NEFQUC82QUQvLzh3QkovL2NBVi8vNEFGbi85Z0JiLy9nQW9BQVRBQ1VBRFAvdUFCSC8yd0FTLzk0QUZmL3FBQ0wvOVFBay8vc0FMZi9nQURmLzJRQTUvL29BTy8vZkFEei84QUE5LytZQVAvL3ZBRUQvNVFCRS8vWUFSZi82QUViLytBQkgvL2tBU1AvM0FFci8rUUJMLy9vQVRQLzVBRTMvK2dCTy8vZ0FULy82QUZELytnQlIvL3NBVXYvNkFGUC85d0JVLy9rQVZ2LzZBRnIvK2dCZy8rNEFmUC9kQUpILytBQ2dBQWtBb1FBR0FCOEFFUC9yQUJmLzlRQWMvL0lBSnYvcEFDci82UUF5LytZQU5QL21BRGIvK2dBNC8vWUFPdi8wQUVYLytRQkcvL2tBUi8vNkFFai8rUUJKLy9BQVN2LzRBRS8vK0FCUS8vZ0FVZi8xQUZMLzl3QlQvL3NBVlAvNkFGWC84Z0JYLyswQVdQL3lBRm4vNGdCYS8vUUFXLy8yQUZ6LzdnQ1IvL3NBci8vNEFEY0FDZi8xQUEwQUZ3QVEvK01BRWYvRUFCTC94QUFWLy9FQUZ2L3lBQmovOWdBWi8vRUFHLy93QUIzLzV3QWovK0lBSlAvZEFDYi8zd0FuLy9nQUt2L2dBQzMvZVFBeS8rRUFOUC9sQURYLyt3QTIvK1lBT1AvM0FEci83d0JFLzcwQVJmLzRBRWIveEFCSC84Y0FTUCsvQUVuLzhRQksvOGNBUy8vNkFFNy85d0JQLy9ZQVVQL0lBRkgvMEFCUy84c0FVLys4QUZUL3hRQlYvOWtBVnYvUEFGZi83d0JZLzlVQVdmL25BRnIveGdCYi85OEFYUC9SQUYzLzJ3QnIvL1lBZlArR0FKSC8zd0NlQUJNQXIvL0lBTUwvOHdERC8vRUF4UUFMQUFvQUVmL3hBQkwvNndBMy8vWUFPLy9xQUR6LytRQTkvL1VBUVAvMUFFbi8rUUI4Ly9zQW9BQUpBQndBRXYvekFFVC85UUJGLy9jQVJ2LzBBRWYvOWdCSS8vTUFTdi8yQUV2LytRQk0vL2tBVGYvNUFFNy8rUUJQLy9nQVVQLzVBRkgvK1FCUy8vWUFVLy8yQUZULzlnQlYvL2dBVnYvM0FGai85d0JaLy9vQVd2LzNBRnYvK1FCYy8vY0FYZi81QUpILytRQ2dBQW9Bb1FBTkFCNEFFUC80QUJMLzlRQkUvL1FBUmYvM0FFYi85QUJILy9ZQVNQL3lBRW4vK3dCSy8vVUFTLy81QUV6LytBQk4vL2dBVHYvNUFFLy8rQUJRLy9nQVVmLzRBRkwvOVFCVC8vWUFWUC8yQUZYLytBQlcvL2NBV1AvMkFGbi8rUUJhLy9jQVcvLzRBRnovOXdCZC8vZ0FrZi81QUtBQUN3Q2hBQTBBSHdBUi8vY0FFdi9yQUR2Lyt3QkUvL2dBUmYvNEFFYi8rQUJILy9rQVNQLzRBRXIvK1FCTC8va0FUUC81QUUzLytRQk8vL2tBVC8vNEFGRC8rQUJSLy9rQVV2LzVBRlAvOWdCVS8va0FWZi80QUZiLytBQlkvL29BV2YvN0FGci8rQUJiLy9vQVhQLzNBRjMvK1FCOC8vc0FrZi81QUtBQUJnQ2hBQWNBSXdBUS85c0FGUUFTQUJmLzhBQWMvL0FBSnYvZEFDci8zUUF5Lzk0QU5QL2dBRGIvK3dBNC8vTUFPdi8wQUVBQUNBQkUvL29BUmYvMEFFYi83Z0JILy9RQVNQL3RBRW4vNmdCSy8rNEFTLy82QUUvLzhBQlEvL29BVWYvMUFGTC83QUJVLy9FQVZmL3hBRmYvMndCWS8rRUFXZi9YQUZyLzZnQmMvK0VBWUFBTEFHdi84Z0NoQUJFQXd2L2xBQ3dBQ2Yvd0FBci9vd0FOLzZJQUVQK3JBQlQvNVFBVkFBc0FGLy9IQUJyLzZnQWMvN1lBSXYveUFDYi80Z0FxLytBQU12L1hBRFQvMFFBMy80WUFPUC9ZQURuL3F3QTYvL1lBUFAvREFELy91QUJGLy9FQVJ2LzFBRWYvK2dCSS8vVUFTZi9pQUVyLzlnQkwvL2tBVC8vd0FGSC8rQUJTLy9JQVZQLzRBRlgvOUFCWC82VUFXUC9tQUZuL3JnQmEvL1VBWFAvbEFHdi80Z0J4LzVZQXVmK2tBTHIvcEFEQy84VUF3Ly9zQU1YL29RQWRBQkwvOGdCRS8vVUFSZi80QUViLzlRQkgvL2NBU1AvMEFFbi8rd0JLLy9ZQVMvLzVBRXovK1FCTi8va0FUdi81QUUvLytBQlEvL2tBVWYvNUFGTC85Z0JULy9jQVZQLzJBRlgvK1FCVy8vY0FXUC8zQUZuLytnQmEvL2dBVy8vNUFGei85d0JkLy9nQWtmLzVBS0FBQ2dDaEFBd0FIUUFTLy9ZQVJQLzFBRVgvK0FCRy8vUUFSLy8zQUVqLzh3QkovL3NBU3YvMkFFdi8rUUJNLy9rQVRmLzVBRTcvK1FCUC8vZ0FVUC81QUZILytRQlMvL1lBVS8vM0FGVC85Z0JWLy9rQVZ2LzNBRmovOXdCWi8vb0FXdi80QUZ2LytRQmMvL2NBWGYvNUFKSC8rUUNnQUF3QW9RQU9BQ1lBRFAvdUFCSC82QUFTLytJQUZmL3RBQnIvOGdBaS8vSUFMZi93QURmLzBBQTUvL2dBTy8vZ0FEei82UUE5LytnQVAvL3NBRUQvNHdCRS8vZ0FSZi83QUViLytnQkgvL29BU1AvNUFFci8rZ0JMLy9vQVRQLzZBRTMvK2dCTy8va0FULy83QUZELyt3QlIvL3NBVXYvN0FGUC8rQUJVLy9vQVZmLzdBRmIvK3dCYS8vb0FYUC83QUdELzdRQjgvK3dBa2YvNEFLQUFBd0FiQUJELzh3QVIvOU1BRXYvU0FCWC84d0FqLy9ZQUpQLzVBQzMvcWdBNy8rc0FQZi8xQUVULzd3QkcvL0lBUi8vMEFFai83d0JLLy9RQVRQLzdBRTcvK3dCUS8va0FVdi8xQUZQLzhRQlUvL0lBVnYvNkFGci85d0I4LzdJQWtmLzVBSjhBR0FDZ0FEZ0FvUUEwQUIwQUxmLzJBRGYvMlFBNS8va0FPLy8zQUR6LzhBQS8vKzRBUlAvNUFFWC8rZ0JHLy9rQVIvLzZBRWovOXdCSy8va0FTLy82QUV6LytnQk4vL3NBVHYvNkFFLy8rZ0JRLy9zQVVmLzdBRkwvK2dCVC8va0FWUC81QUZYLyt3QlcvL3NBV3YvNUFGei8rZ0NSLy9vQW9BQUlBS0VBQ1FBSEFCVUFJQUEzLzk0QVFBQU5BR0FBRlFDZkFBb0FvQUFoQUtFQUhnQVdBQkwvOUFBNy8vY0FTZi8zQUV2Lyt3Qk0vL3NBVHYvN0FFLy8rZ0JRLy9vQVVmLzVBRlAvK3dCVi8va0FWLy8yQUZqLyt3QlovL1VBV3YvN0FGdi85d0JjLy9nQVhmLzRBSkgvK2dDZkFCRUFvQUFlQUtFQUp3Qk1BQW4vN1FBTkFCc0FFUCszQUJIL3ZBQVMvOEVBRS8vd0FCZi85Z0FaLzlNQUcvL3ZBQnovOUFBZC83c0FJZ0FQQUNQL3VnQWsvOHNBSnYvSEFDZi85d0FxLzhvQUsvLzdBQzMvbmdBeS84Z0FNLy82QURULzJRQTEvL3NBTnYvNUFEci8rQUEvQUFrQVFBQWdBRVQvY3dCRi8rVUFSdjl6QUVmL2RBQkkvM0VBU2YvT0FFci9kQUJMLytRQVRQL3RBRTcvM3dCUC8vZ0FVUDl6QUZIL2RRQlMvM1FBVS85d0FGVC9jd0JWLzRjQVZ2OTZBRmYvendCWS8zWUFXZitoQUZyL2NBQmIvNDBBWFA5eUFGMy9nQUJnQUJFQWEvL2tBSHovcWdDUi84OEFrditWQUpQL2dnQ1UvNFlBbGYrQkFKZi9sZ0NhLzQ4QW5QOStBSjRBTUFDZy8vVUFvZi9pQUtML253Q2ovNjhBcGYrRkFLYi9oUUNxLzh3QXJQK0dBSy8vbkFEQy83MEF3Ly9BQU1VQUhRQWlBQXovOWdBUi8rTUFFdi9nQUJYLzlnQWsvL3NBTGYvcUFEdi82Z0E5Ly9nQVJQLzFBRVgvK1FCRy8vWUFSLy8zQUVqLzlRQksvL2NBUy8vNkFFei85d0JOLy9vQVR2LzRBRS8vK1FCUS8va0FVZi82QUZMLytBQlQvL1FBVlAvMkFGWC8rd0JXLy9rQVdQLzdBRnIvK0FCYy8vb0FmUC9tQUpILzl3Q2YvLzBBb0FBY0FLRUFId0F1QUFuLzlnQU5BQlFBRVAvaEFCSC95d0FTLzhzQUdmL3VBQjMvNlFBai8rQUFKUC9zQUNiLzdnQW4vL3NBS3Yvd0FDMy95UUF5Ly9NQU5QLzBBRHIvK3dCQUFCVUFSUC9SQUViLzBnQkgvOVVBU1AvT0FFbi8rZ0JLLzlRQVR2LzdBRkQvMXdCUi85a0FVdi9UQUZQLzFBQlUvOVVBVmYvakFGYi8xUUJYLy9nQVdQL1dBRm4vOHdCYS85WUFXLy9zQUZ6LzJRQmQvK2dBZlArOEFKSC80Z0NlQUJVQW53QUpBS0FBSEFDaEFDa0FyLy9aQU1MLzZ3QWdBQkgvNXdBUy8rRUFKUC82QUMzLzdnQTcvL01BUGYvNkFFVC84d0JGLy9nQVJ2LzBBRWYvOVFCSS8vTUFTdi8xQUV2LytBQk0vL2dBVGYvNkFFNy85Z0JQLy9jQVVQLzJBRkgvK0FCUy8vWUFVLy95QUZULzlRQlYvL2tBVnYvMkFGai8rUUJhLy9VQVhQLzRBRjMvK3dCOC8ra0FrZi8wQUtBQUd3Q2hBQnNBSUFBSy8vWUFFUC9jQUJVQUdRQVgvK3dBSFAvcEFDYi80d0FxLytJQU12L2lBRFQvNUFBNC8rMEFPdi8wQUVBQUVBQkYvL01BUnYvMkFFZi8rZ0JJLy9ZQVNmL29BRXIvOXdCTC8vc0FULy93QUZILyt3QlMvL1FBVlAvNEFGWC85d0JYLzlnQVdQL3FBRm4vMGdCYS8vTUFYUC9xQUdBQURnQnIvL1VBd3Yva0FFQUFDZi9zQUEwQUlRQVEvOFFBRWYrekFCTC92Z0FULy9BQUYvL3pBQmovOVFBWi8rRUFHLy96QUIzLzFRQWovODBBSlAvYkFDYi8yZ0FuLy9VQUtQLzZBQ3IvMmdBci8va0FMZit5QURMLzNnQXovL2tBTlAva0FEWC8rUUEyLy9vQU92LzNBRUFBRXdCRS82b0FSZi83QUViL3JnQkgvN1VBU1ArbUFFbi85QUJLLzdRQVMvLzdBRTcvK1FCUC8vb0FVUCsyQUZIL3ZRQlMvN1lBVS8rdkFGVC9zUUJWLzg4QVZ2K3BBRmYvOEFCWS83WUFXZi9oQUZyL3VBQmIvOVlBWFArNkFGMy96Z0JnQUFzQWEvL3JBSHovb1FDUi85a0Frdit3QUpyL3NBQ2VBQndBb0FBUkFLRUFJUUNqLzhJQXF2L0pBSy8vdXdEQy85a0F3Ly91QUNFQUNmLzJBQkQvNlFBWC8rNEFIUC90QUNiLzd3QXEvKzhBTXYvc0FEVC83QUE0Ly9jQU92LzdBRVgvK1FCRy8va0FSLy83QUVqLytnQkovKzRBU3YvNUFFdi8rZ0JPLy9zQVQvLzRBRkQvK1FCUi8vWUFVdi80QUZULytnQlYvL01BVi8vckFGai84d0JaLytFQVd2LzJBRnYvK1FCYy8vQUFhLy93QUpILyt3Q2hBQklBSWdBVC8rc0FGdi8xQUJmLzVRQVkvL1FBR2YvaUFCdi83UUFjLytRQUp2L2ZBQ3IvNEFBdC8rOEFNdi9nQURULzRnQTNBQm9BT3YvMkFFVC84d0JHLytZQVIvL3JBRWovNVFCSi8vVUFTdi9uQUZELzh3QlIvKzhBVXYvbUFGVC82QUJWLys4QVZ2L3dBRmYvN3dCWS8rTUFXZi9uQUZyLzVRQmMvK1VBWHYvdEFKNEFEZ0NoQUE0QUd3QUsvOElBRS8veUFCVC8zd0FYLytRQUdmLzBBQnIvNUFBYy85a0FKZi8yQUNiLzd3QXEvKzRBTXYvc0FEVC82d0EzLzhJQU9QL3BBRG4vendBNi8vTUFQUC9ZQUVYLzlRQkovK3dBVC8vMEFGWC85Z0JYLytJQVdQL3dBRm4vM3dCYS8vVUFYUC93QUxyL3ZBQUlBQ01BQ0FBMy80SUFPZi9oQUR6L3hBQS8vK2tBUUFBTEFHQUFFZ0RGLy9nQUpBQUsvL2dBRFAvdEFBMy85QUFSLy9ZQUV2L29BQ0wvN0FBay8vb0FKZi8yQUNmLzl3QW8vL2dBS2YvMkFDdi8rQUFzLy9ZQUxmLzRBQzcvOWdBdi8vWUFNUC8wQURILzlRQXovL1VBTmYvNEFEYi85d0EzLzNFQU9QLzRBRG4vMWdBNi8vb0FPLy9TQUR6L3RBQTkvK2tBUC8vZkFFRC81Z0JKLy93QVlQL3NBSHovOGdDNS8rY0F1di90QU1YLzZRQWZBQXovOWdBUS8rVUFFdi8wQUNMLzd3QWwvL29BSnYvNUFDci8rUUFzLy9vQUx2LzdBQy8vK3dBdy8vZ0FNZi82QURMLytRQXovL3NBTlAvNUFEYi8rUUEzLzJrQU9QLzBBRG4vMkFBNi8vZ0FPLy9lQUR6L3NRQTkvL2dBUC8vZEFFRC84QUJXLy93QVdQLzhBRnYvK2dCZy8vUUF1Zi8yQU1YLzdnQVdBQkQvOXdBbC8vb0FKdi82QUNmLytnQW8vL29BS2YvNUFDci8rZ0FyLy9vQUxQLzVBQzcvK1FBdi8va0FNUC81QURILytRQXkvL2tBTS8vNUFEVC8rUUExLy9vQU9QLzRBRHIvK2dBOS8vc0FvQUFWQUtFQUdRQWVBQXovOVFBUS8rc0FFdi8wQUNMLzdnQWwvL2dBSi8vNkFDai8rZ0FwLy9vQUsvLzdBQ3ovK1FBdS8vZ0FMLy80QURELzl3QXgvL2dBTXYvN0FEUC8rQUEwLy9zQU5mLzZBRGYvYUFBNC8vUUFPZi9WQURyLytnQTcvK3NBUFArekFEMy8rZ0EvLzl3QVFQL3dBRW4vL0FCZy8vVUF4Zi90QURFQUJRQWhBQW9BRndBTUFCVUFEUUE2QUJELzN3QVIvKzRBRXYvbEFCMy84Z0FpQUM0QUkvL3ZBQ1QvOVFBbEFBWUFKdi82QUNyLyt3QXQvK0VBTUFBSEFETUFDZ0EzQUdNQU9RQkNBRHNBTXdBOEFFRUFQUUF3QUQ4QUdBQkFBRUVBUlAvdEFFYi83UUJILy9FQVNQL29BRXIvOEFCTUFBd0FVUC93QUZMLzhBQlQvKzRBVlAvdEFGYi85d0JZLy9zQVd2LzFBRjhBRndCZ0FEc0FmUC9oQUo0QVV3Q2ZBQU1Bb0FBVUFLRUFRZ0N2Ly9zQXVRQXJBTG9BRGdEQy8rOEF4UUEyQUNBQURmLzFBQ0wvN2dBbC8vWUFKdi83QUNmLytBQW8vL2dBS2YvNEFDci8rd0FyLy9nQUxQLzRBQzcvOXdBdi8vY0FNUC8yQURILzl3QXkvL29BTS8vM0FEVC8rUUExLy9nQU52LzdBRGYvWFFBNC8vRUFPZi9TQURyLytBQTgvN2NBUGYvNkFELy8xQUJKLy9VQVYvLzhBRm4vK1FDNS8rd0F1di95QU1YLzV3QVNBQVFBRGdBSy8vWUFEZi95QUE4QUJ3QVJBQklBSFFBS0FCNEFBUUFqQUJRQU4vK0NBRG4vM1FBOC84UUFQLy9pQUZuLyt3QzUvK1lBdXYvdEFMc0FCd0MrQUFjQXhmL2xBQm9BRXYvMEFDVC8rd0FsLy9rQUp2LzdBQ2YvK2dBby8vb0FLZi82QUNyLyt3QXIvL29BTFAvNkFDNy8rUUF2Ly9rQU1QLzRBREgvK1FBeS8vb0FNLy81QURULyt3QTEvL29BTnYvN0FEZi80d0E0Ly9ZQU92LzdBRHYvK3dBOC8vc0FQZi8yQUtFQUJ3QVhBQ1gvK1FBbS8vc0FKLy82QUNqLytnQXAvL29BS3YvN0FDdi8rd0FzLy9vQUx2LzVBQy8vK2dBdy8vZ0FNZi81QURMLytnQXovL2tBTlAvNkFEWC8rZ0EyLy9zQU4vLzNBRGovOUFBNS8va0FPdi82QUR6Lzl3QTkvL3NBR1FBUS85b0FKZi82QUNiLzZRQXEvK29BTXYvcUFEVC82Z0EzLzVBQU9QL3dBRG4vNmdBNi8vUUFQUC9jQUQvLzdBQkUvL3dBUnYvd0FFZi85Z0JJLys4QVN2L3hBRS8vL0FCUy8rOEFWUC96QUZiLytnQlkvL01BV3Yvd0FNTC82UURGLys4QUF3QkFBQVVBWUFBSkFISC80d0FPQUFRQURnQVBBQWdBRVFBYUFDTUFFd0EzLzRrQU9QLzZBRG4vM2dBOC84Z0FQLy9qQUVBQUR3QmdBQk1BdXdBSUFMNEFDQURGLy9JQUNnQVEvL2dBSmYvN0FEVC8rd0EzLzJ3QU9QLzNBRG4vMXdBOC83Z0FQLy9iQUxuLytBREYvK3dBSXdBTS8rMEFEZi8zQUJMLzZnQWkvK3dBSlAvN0FDWC85UUFuLy9jQUtQLzNBQ24vOWdBci8vZ0FMUC8yQUM3LzlnQXYvL1lBTVAvekFESC85QUF6Ly9VQU5mLzNBRGIvK0FBMy8xMEFPUC8xQURuLzB3QTYvL29BTy8vV0FEei9zQUE5Lys4QVAvL1dBRUQvNXdCSi8vUUFXZi84QUYzLytBQmcvK3dBZlAvNEFMbi83UUM2Ly9NQXhmL3FBQ0VBRFAvdUFCTC82d0FpLyswQUpQLzdBQ1gvOVFBbi8vY0FLUC8zQUNuLzlnQXIvL2tBTFAvMkFDNy85UUF2Ly9VQU1QLzBBREgvOUFBei8vVUFOZi80QURiLytRQTMvMTRBT1AvMUFEbi8xQUE2Ly9vQU8vL1dBRHovc3dBOS8rOEFQLy9YQUVELzV3QkovL2NBWGYvNkFHRC83QUI4Ly9nQXVmL3dBTHIvOXdERi8rc0FJd0FOLy9ZQUR3QUpBQ0wvN1FBbC8vWUFKdi82QUNmLytBQW8vL2dBS2YvNEFDci8rZ0FyLy9nQUxQLzRBQzcvOXdBdi8vY0FNUC8yQURILzl3QXkvL2tBTS8vM0FEVC8rUUExLy9nQU52LzZBRGYvV1FBNC8vRUFPZi9SQURyLzl3QTgvN1FBUGYvNEFELy8xQUJKLy9NQVYvLzhBRm4vK1FDNS8rNEF1di8wQUxzQUNRQytBQWtBeGYvcEFDY0FEUC91QUEwQUJRQVEvOHNBRWYvSEFCTC8xQUFpLyt3QUkvL3lBQ1QvOGdBbC8vb0FKLy80QUNqLytRQXAvL1lBSy8vNEFDei8rQUF0LzZBQUx2LzRBQy8vK0FBdy8vWUFNZi8zQURQLytBQTEvL2tBTnYvNkFEZi9rZ0E1Ly9RQU8vKzFBRHovMndBOS85UUFQLy91QUVELzR3QkUvL1FBUnYvM0FFZi8rd0JJLys4QVN2LzZBRkwvL0FCVC8va0FWUC81QUdELzdRQjgvN3NBSGdBTS8vVUFFUC95QUJMLzlBQWkvKzhBSmYvNEFDZi8rZ0FvLy9rQUtmLzVBQ3YvK3dBcy8va0FMdi80QUMvLytBQXcvL2NBTWYvM0FETC8rd0F6Ly9nQU5QLzdBRFgvK1FBMy8yVUFPUC8xQURuLzFnQTYvL29BTy8vdEFEei9zUUE5Ly9vQVAvL2NBRUQvOFFCSi8vc0FZUC8yQU1YLzdnQUlBQkQvNEFBMy81Y0FPUC82QURuLzdnQTgvK0FBUC8vdEFNTC83Z0RGLy9VQUh3QU0vKzRBRWYvM0FCTC82QUFpLys0QUpQLzZBQ1gvOXdBbi8vZ0FLUC80QUNuLzl3QXIvL2dBTFAvM0FDMy8rUUF1Ly9jQUwvLzNBREQvOWdBeC8vWUFNLy8zQURYLytBQTIvL2tBTi85cUFEai8rQUE1LzkwQU92LzZBRHYvMVFBOC83OEFQZi9yQUQvLzRnQkEvK2NBWVAvdEFIei84d0RGLy9NQUp3QU0vL0VBRFFBUEFCRC82UUFSLytFQUV2L1pBQjMvK0FBaS8vTUFJLy92QUNULzhnQW4vL3NBS2YvNUFDdi8rd0FzLy9zQUxmL1BBQzcvK3dBdi8vc0FNUC81QURILyt3QTEvL3NBTi8rWEFEbi8rd0E3LzlVQVBQL3VBRDMvNWdBLy8vVUFRUC9zQUVULzhBQkcvL01BUi8vMkFFai83QUJLLy9ZQVVQLzdBRkwvOXdCVC8vTUFWUC96QUZiLy9BQmEvL29BWVAveUFIei96Z0FoQUF6LzhRQU4vL1lBRXYvd0FDTC83UUFsLy9ZQUovLzRBQ2ovK0FBcC8vZ0FLLy81QUN6Lzl3QXUvL1lBTC8vMkFERC85UUF4Ly9ZQU0vLzJBRFgvK0FBMi8vc0FOLzlnQURqLzlBQTUvOVlBT3YvNkFEdi80QUE4LzdZQVBmLzBBRC8vMWdCQS8rMEFTZi8zQUZuLyt3QmQvL3NBWVAvd0FMbi83UUM2Ly9RQXhmL29BQlFBQkFBVUFBd0FDQUFQQUE4QUVQL3BBQkVBR0FBZEFCSUFIZ0FCQUNNQUd3QW0vL2dBS3YvMkFETC84Z0EwLy9JQU4vK2VBRG4vNHdBOC85OEFQLy93QUVBQURRQmdBQTBBdXdBUEFMNEFEd0FhQUJELytBQWkvL0FBSmYvNEFDYi8rZ0FuLy9vQUtQLzZBQ24vK2dBcS8vb0FLLy82QUN6LytnQXUvL2tBTC8vNUFERC8rQUF4Ly9rQU12LzVBRFAvK1FBMC8va0FOZi82QURmL2NRQTQvL1FBT2YvWUFEci8rUUE4LzhJQVBmLzdBRC8vNEFERi8rOEFHZ0FRLytVQUl2L3lBQ1gvOXdBbS8va0FKLy82QUNqLytRQXAvL29BS3YvNUFDdi8rZ0FzLy9rQUx2LzRBQy8vK0FBdy8vY0FNZi80QURMLytBQXovL2dBTlAvNEFEWC8rUUEzLzJ3QU9QL3lBRG4vMWdBNi8vZ0FPLy83QUR6L3hBQS8vOThBeGYvdkFCSUFDLy8yQUJQLzlBQVgvK2NBR2YveEFCei81Z0FtLyswQUt2L3RBREwvNndBMC8rc0FPUC8wQURzQUZnQkovL1lBVi8vdkFGai84d0JaLytvQVhQL3pBRjcvN3dCOEFBMEFBZ0NnQUJFQW9RQVRBQUVBRFAvMkFBTUFOLysrQUR6LzdnQk5BQ1VBQWdBWC8vRUFHdi94QUFZQUxmL3VBRGYvNEFBNy8rc0FQUC9zQUQzLzZnQjgvK3NBQVFBWi8vSUFCUUFVLytJQUZmL1JBQmIvNEFBYS85c0FULy9qQURJQUpQL3BBQ1gvNndBbS8rd0FKLy9yQUNqLzZ3QXAvK3dBS3YvdEFDdi82d0FzLyt3QUxmL2RBQzcvNndBdi8rc0FNUC9yQURILzdnQXkvKzBBTS8vdEFEVC83UUExLyswQU52L3VBRGYvc0FBNC8rd0FPZi9qQURyLzdBQTcvK3dBUFAvZEFEMy81QUJFLytnQVJmL3JBRWIvNkFCSC8rZ0FTUC9uQUVuLzlBQktBQVlBUy8vckFFei82UUJPLytzQVQvL3FBRkQvNlFCUi8rd0FVdi9wQUZULzV3QlYvKzBBVnYvbUFGZi84UUJZLytzQVdmL3hBRnIvNlFCYi8vQUFYZi9zQUh6LzRBQUJBQXdBQ0FBQ0FBd0FPQUEvQURJQUFnQU1BQjRBUHdBTkFDSUFDdi8yQUF6LzlnQU4vL0lBRXYveUFDWC85UUFuLy9nQUtQLzNBQ24vK0FBci8va0FMUC8yQUM3LzlnQXYvL1VBTVAvMEFESC85UUF5Ly9vQU0vLzFBRFQvK2dBMS8vZ0FOLy9hQURqLzhRQTUvK2dBT3YvNUFEdi81Z0E4LytJQVBmLzNBRC8vN0FCSi8vY0FWLy81QUZuLytBQmIvL3NBWGYvNUFMbi85Z0M2Ly9nQXhmLzFBQUlBRFFBWkFNVUFCd0FCQU1VQUZnQUdBQTBBSWdBaUFBa0FRQUFyQUdBQUhBQzVBQTRBeFFBUUFBOEFCQUFUQUFVQU1nQUtBREFBRFFBVUFDSUFEZ0JGQUJrQVN3QVpBRTRBRlFCUEFBY0FYd0FxQUdBQUJ3QnJBQWNBdVFBbkFMb0FPQURGQUNBQUV3QUVBQlFBQlFBeUFBb0FMQUFNQUE4QURRQXNBQ0lBUEFBL0FCc0FRQUFrQUVVQUdnQkxBQmtBVEFBVUFFMEFHUUJPQUJVQVR3QUhBRjhBTEFCZ0FDNEF1UUExQUxvQUx3REZBRklBRHdBUi82SUFKUC91QUMzL3N3QkUvK2tBUnYvc0FFZi8zd0JJLytZQVN2L3dBRkwvOGdCVC8vQUFWUC93QUh6L3NBQ2ZBQTRBb0FBdEFLRUFMZ0FUQUJIL29RQVMvN29BSS8vVkFDVC82d0FtLy9VQUt2LzNBQzMvc3dCRS8rVUFSdi9wQUVmLzJ3QkkvK0lBU3Yvc0FGTC83Z0JULyt3QVZQL3RBSHovclFDZ0FCMEFvUUFtQU1MLzlBQUVBQkgvandDZkFBc0FvQUFxQUtFQUtBQURBQkgvandDZ0FCb0FvUUFrQUFJQUJmK0NBRTBBQ0FBREFEZi91d0E1Ly9BQVBQL25BQWtBTGYvd0FEZi90d0E1LytzQU8vL2NBRHovemdBOS8vWUFTZi8wQUYzLzd3QjgvKzRBQXdBWC8vWUFHdi8yQUJ6LzhBQUlBQ1QvOXdBdC82OEFOd0FLQUVmLzlnQjgvOFFBbndBVkFLQUFOQUNoQURRQUFnQVNBQVVBQmdBQUFBa0FDd0FDQUEwQUhRQUZBQ0FBSUFBV0FDTUFQd0FYQUVRQVlBQTBBR0lBWWdCUkFHUUFaQUJTQUdzQWJBQlRBSEVBY1FCVkFIVUFkUUJXQUlJQWdnQlhBSVFBaFFCWUFKRUFrUUJhQUpVQWxRQmJBSjRBb1FCY0FMa0F2Z0JnQU1JQXhRQm1BQUFBQUFBQkFBQUFBTW1KYnpFQUFBQUF5d1ZVR3dBQUFBRExCY1RtIn0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9IkFBRUFBQUFOQUlBQUF3QlFSa1pVVFhIdHhjRUFBSzVjQUFBQUhFOVRMektFS0tiMkFBQUJXQUFBQUdCamJXRnc3TnVqWHdBQUJRd0FBQUlxWjJGemNQLy9BQU1BQUs1VUFBQUFDR2RzZVdZK081TC9BQUFJNUFBQW5TeG9aV0ZrK3RhNHN3QUFBTndBQUFBMmFHaGxZUVoyQWNVQUFBRVVBQUFBSkdodGRIakFqeEdFQUFBQnVBQUFBMVJyWlhKdUNLNEdrUUFBcGhBQUFBR1NiRzlqWVh5dHBFZ0FBQWM0QUFBQnJHMWhlSEFCSGdDdUFBQUJPQUFBQUNCdVlXMWx3YlNFMEFBQXA2UUFBQVRSY0c5emRQTXpQa0VBQUt4NEFBQUIyUUFCQUFBQUFnQUFUN0NYckY4UFBQVUFDd1BvQUFBQUFNdzU4NXdBQUFBQXpEbUJKUDc0L28wRVN3U0JBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBTXcvcmNBQUFQYS92aitYZ1JMQUFFQUFBQUFBQUFBQUFBQUFBQUFBQURWQUFFQUFBRFZBS3NBQndBQUFBQUFBZ0FBQUFFQUFRQUFBRUFBQUFBQUFBQUFBd0loQVpBQUJRQUVBb29DV0FBQUFFc0NpZ0pZQUFBQlhnQXlBVUVBQUFJQUNBWUFBQUFDQUFNQUFBQURBQUFBQUFBQUFBQUFBQUFBY0hseWN3QkFBQTBpRWdNdy9yY0FBQVBvQUFBQUFBQUJBQUFBQUFJWEF4OEFBQUFnQUFFQk9BQUFBQUFBQUFGTkFBQUFBQUFBQWFrQUFBR3BBQUFCZlAvM0FkUUJCZ05MQUI0Q1dRQUZBOW9BVUFMU0FCWUJCQUVaQVJjQURnRzEvMjRDT0FDYkFmc0FLZ0VxLy9BQ1ZnQnNBUFgvK2dKQi83a0Nwd0F3QVpyLy93SXIvL0FDWC8vL0FuQUFLZ0psLy9ZQ1VBQVNBaTcvL3dLYy8vOENaUUJxQVYwQVF3RmRBRXNDUkFBbUFrRUFHQUx6QUQwQ1JBQmhBemtBREFJKy85OENVLy83QWtjQUtRSmNBQWNDRmdBRUFiTC80Z0tKQUF3Q1Z2L1BBWG4vN2dJNy8vRUNUZi9qQWQzLy93SzkvK2NDZ1AvckFyRUFLZ0pvLytRQzNnQkZBbEQvN0FJeS8rNENBQUEvQXJjQU5nSU5BRlFERHdBNEFtTC8yd0gxLy84Q093QUhBaUwvd0FKQkFLSUNLLy9rQWlVQWVRTkwvNjRCSkFESUFpSUFEQUljQUFJQnh3QVhBaWdBQkFIc0FBc0J2Z0F3QWlqL3JRSlovL2dCUy8vd0FYRCsrQUhtLytvQk1QL3lBd24vNFFLVy8rOENGZ0FlQWxiL2pRSksvL0VCbC8vM0FnVC8zd0crQUNVQ2FBQVBBZ2NBSVFMUEFBRUIzZi91QWc0QUpnSVEvL2NDQkFBeEFhOEFEUUpRQUE0QjJnQkRBWHdBS2dIMUFBd0NUZi9kQWZYL3lRSCtBTWdEYlFCVEF1Y0FPUVBYQURBQjJnQjdBVXNBd2dEMUFETUJuZi9LQVUwQWx3TU1BQXdDUkFBVEFqNy8zd0krLzk4Q1B2L2ZBajcvM3dJKy85OENQdi9mQTFmLzNRSkgvOWdDRmdBRUFoWUFCQUlXQUFRQ0ZnQUVBVjMvN2dGZC8rNEJYZi91QVYzLzdnS2wvOHdDZ1AvckFva0FLZ0tKQUNvQ2lRQXFBb2tBS2dLSkFDb0NmUUFXQW9rQUtRS0pBRFlDaVFBMkFva0FOZ0tKQURZQjlmLy9BMHYvNGdMUy8va0NJZ0FNQWlJQURBSTdBQXdDS0FBTUFpSUFEQUlRQUF3RE1BQUtBYmovc2dIVUFBc0IxQUFMQWRRQUN3SFVBQXNCTGYvM0FTMy85Z0V0Ly9ZQkxmLzJBcVVBRVFLTS8rOENDZ0FlQWdvQUhnSUtBQjRDQ2dBZUFnb0FIZ0ozQURVQ0NnQWNBbWdBRHdKb0FBOENhQUFQQW1nQUR3Sk5BQ1lDSFA5Z0FrMEFKZ1BMQUNrRFJRQWNBa3IvN2dJVy85OEI5Zi8vQWpzQUJRSVEvL2dCemdBU0FiZ0FlZ0c0QU9BQ0RRQjdBUFVBZ2dIZ0FIc0IxLysvQVlzQWZnSFVBUWdDZHdBMUF2QUFOQUQ1QUdJQStRQ0NBU3IvOGdIVUFHUUIyZ0RmQWNjQUJBR1UvKzRCUXYrdUFiSUFjUUxNLy9rQnRRQkJBZVlBRFFKQi83a0NqUCtMQWpJQXJBSldBR3dBQUFBREFBQUFBd0FBQUJ3QUFRQUFBQUFCSkFBREFBRUFBQUFjQUFRQkNBQUFBRDRBSUFBRUFCNEFBQUFOQUg0QW93Q2xBS2tBcXdDdUFMQUF0QUM0QUxzQS93RlRBV0VCZUFGK0FaSUN4d0xkSUJRZ0dpQWVJQ0lnSmlBNklFUWdyQ0VpSWhMLy93QUFBQUFBRFFBZ0FLRUFwUUNvQUtzQXJnQ3dBTFFBdHdDNkFMOEJVZ0ZnQVhnQmZRR1NBc1lDMkNBVElCZ2dIQ0FnSUNZZ09TQkVJS3doSWlJUy8vOEFBLy8zLytYL3cvL0MvOEQvdi8rOS83ei91ZiszLzdiL3MvOWgvMVgvUC84Ny95ajk5ZjNsNExEZ3JlQ3M0S3ZncU9DVzRJM2dKdCt4M3NJQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJCZ0FBQXdBQUFBQUFBQUFCQWdBQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUZCZ2NJQ1FvTERBME9EeEFSRWhNVUZSWVhHQmthR3h3ZEhoOGdJU0lqSkNVbUp5Z3BLaXNzTFM0dk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVVpIU0VsS1MweE5UazlRVVZKVFZGVldWMWhaV2x0Y1hWNWZZR0ZpWXdCM2VIcDhoSW1QbEpPVmw1YVltcHliblo2Z242R2lwS2FscDZtb3JheXVyOHRzWldZQXpRQ1NhMm5UYldnQWVZc0FBQUFBWndBQUFBQUFBQUJ3QUptcmNtUUFBTG9BQUdweHpnQnpkb2l6dE1QRXlNbkZ4cW9Bc3JmUjBzL1FBQURNYnNmS0FIVjlkSDU3Z0lHQ2Y0YUhBSVdOam93QXU4RUF2YjYvYjhMQXZBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVdBQ2VBVjRCNEFLWUF4d0RRZ040QTdJRUlBU1lCTklGQ0FVdUJXNEZ6QVlXQm5BR3lnYzJCNlFIK2doRUNLNEpDQWsrQ1l3SjBnb2NDbllLMkF0aUM3Z01LQXlFRE5BTk5nMk1EZVlPV2c2S0Rzb1BOZytHRC9nUVRCQ09FTjRSVGhHd0VnWVNTaEtXRXRJVE9CT3dGQUFVVmhTc0ZQQVZTaFdTRmNvVjhCWkFGcG9XMUJjNkY0Z1gyaGhFR0tZWTZCazBHWjRaM0JwTUdxWWE3aHRRRzZBYjFCd2FISDRjeGgwS0hXb2R2QjRhSG1BZTBCOE9INElmdmlBVUlJSWhCaUdJSWJ3aWFDTDRJKzRrS0NSS0pISWt4aVVNSlhvbDJpWk9KcjRuU2lmZ0tHSW84Q21HS2hvcW5pc2VLN29zVEN5Y0xPWXRUQzJvTGdvdW5pOEFMMXd2MURCV01NUXhJREdLTWZZeVhqTGlNMXd6eGpRNk5MNDFMaldZTmlBMnNEY3VON1k0TURpc09SZzVnRG9FT240Nnpqc1lPMzQ3Mmp4Z1BQbzlZajNFUGtJK3lqOUFQNVEvK2tCaVFNUkJSRUc2UWpKQ3FFTXlRN3BFT0VURVJVQkZ1a1pTUnRSSE1rZHdSNnhINmtnR1NFWklta2ppU1I1SlNrbUNTYXhKMUVvS1NsNUt1RXNFUzJwTDRFd01URlJNbmt6bVRUQk42azVrVHBZQUF2LzMvNG9DV3dNeEFDWUFOd0FBQVFjV0Z4WUdCd1lIQmdjMUJnY09BZ2MxQndZaklpWTNQZ0kzTmpjK0FUYzJNeklIRkFFakRnRWpJaVluSmpZM05qTXlGZ2NVQWt3QkF3UUZBUWNWRUNVR1NGUVpFaVlTQWhnL0p6UUxEeXdiSWpBRkpJMHJJaUE1QS82RkFSSlBLeVF6QVFFcEhpNGxKeklCQXVnREVBUURCZ2NnRkM4TEFXdXhOQ1U3RWdFQkl4OFpNMmd6UGxnS1E3b1JEaVVTL09Jb0tpQWRIekVJREJZWERBQUFBQUFDQVFZQjN3TE1BeXdBRlFBckFBQUJGVDRCTXpJV0J3WUhEZ0lQQVFZaklqYzJOellITnlZM1BnRXpNaFlYRGdJSEJnYzFCd1lqSWlZQ0NnbEZLQ0FzQWdJSEJCd1ZGeHNZSlMwTUJBUUI5Z0VLQWdSZU1Sb21CQUlRRmdNUkJURVlJeFFWQXNBQk5Ea3FKQllUR0RRYkhCOGlPaGt5SDM4RElpWk9jVEV1RGlFakJ5a0lBVGtnSEFBQUFBSUFIdi9yQTg0REZRQjlBSU1BQUFFV056WVhGaDBCRmdjT0FTY2lKaU1pQmlJR0l5SW5Cd1lqSWlZM05UWTNKaU1pQndZckFRY0dCd1lqSWpjMk53Y0dCd1ltTnpRM1BnSS9BVFkzQmlNaUp6TW1OeU0yUHdFMk56NEJNeklXQndZSE53YzNOamMyTnhVK0FUTXlGeFlIQmdjR0J4OEJGaGNXRnhZSEZnY09BUWNpSXdjR0p3WUhCZ2N5SlFjMlB3SUN5ZzRVSFFrREZRRUNPU29HR1FZSEdRd1hCeFVlTHhzWkZCZ0VCUVlTRHhBZ0VCMGtGU1lPR3lBbkJBMFdIZ2dVRUJRQkt3d1RDUkVmRENnY0hESVlBUmNzQVVsUkZDZ1lIVmtxSmpBQ0FnOEJQMTBNQVJZR0dYYzhGaEFsQVFJVUNTa2hEaDhQQWcwU0Z3MENBU1ljQVFFQkZyRVJCaEVLSmY3clNXSXVGeHNCTlFRQ0Fnb0RGUkVWR0NBckJBRUJBUUppRnhnWUFSd2VBZ0lCSHpFdEdDVXJQQVlFQVFFUkRSb2VDZ2tEQXdjbmJBUU9GaUFrRXl4akt5NDFLaU1hSHdGY0dSb0NJeG9CUHo0RUNSOFRGeVU2QkFRS0R3UUlEeUljSFI0dkNBRUNEaGdIRWhWTmdSY0lNVGNBQUFFQUJmODdBekFEblFCYUFBQUJQZ0V6TWhZSEJnYzFEZ0VIRnpJZUF4OEJJeFlWRkE0QkJ4VUdCdzREQndZZUF3NENEd0VPQVE4QkRnRWpJaWMwTmpVM0xnRTNQZ0U3QVRJV016STNJelkzTkM0RE56UTNQZ1EvQVQ0QkFoTVdYeTRqTFFFQ0J3UXBJaDhKRVJRTEZRRUpBUTBZSlEwRlJ5RmpQREFDQVNBdUxoOEVNSFJOR2dZUEF5RU9RUjBjRFFFWlBqd0NBMEUrSGdRUkJTZ2JBV3NCSmpjMUpBTUpEem83VVRNZ0RRUUZBMkFiSWhjVkVBd0NCRDhlQlFVTkJ4RUJDQTBKQnc0ZEZncy9FQVlDQVJ3ZkRTQWlKemxBV1dVYUh3WVlCQ3NpTWg0Q0JnR0JDRVF1TlNrQkNCc1BCQlFoTGt3dUdSMHhVREFuRUFnMUVRMEFBQUFBQXdCUS82d0VTd05GQUZrQWJ3QjlBQUFsTnljSEJnOENNd1lqSWljbU56NEJOelkzTmo4Qkp3WWpJaVluTlQ0Qk56TTNNak0yTXpJWEZnY1dGeFUvQVRZM05pY21OejRCTXpJV0J6Y09BZzhDRnpZek1oY1dEZ0VIQmdjR0p5SW1JeTRCSnpZM05EY2xOelkzQnlJSElnWWpEd0lPQkJZWEZqWUJCd1lIRlFZVkJoY3lOamNIQmdIMkNRWW9rQzRaRkFFdUtpUUhGQUlCT3lvT0VSWStsd1FzS2pKTUJ3V0VWZ01EQXdFN0pCOGJOUTRSQXgwcFFoTUZDQVVCR1dBeU5EZ1BBUjlpVDBKSkRnWWJGMGRGS1FaT01qVnlFQTRDQ3dJK1F3Y0NEd2NCT2dNRUJTb0VDZ0lSQXdvREVRME5IUTRNQmdzZFlmNndBaUFyQVFRSEwwOEtGaFNzRWdjbGlpWVNGUjBiQlJNWlVDUUtFeHd5ZmdrVU95NGhZblFOQVJZTkdDc1lJUm9nSzBjU0JSRU1BU2NzTGlzQk1tdEZOejBNQ0FrOEtHeHpKQ01SQXdNQ0RERTFJQmtDRFFrSEJoVU1BZ01IQWdrSUNoWVNGaFVKRjFFQmlRRWZEUU1DQVJJTk5TNEdCUUFEQUJiL2tBTW5BeUVBUFFCTUFGZ0FBQVVYTmpNeUZ3NEJJeUl1QVNjR0l5SW5MZ0UzTmpjalBnSTNQZ0UzTmpNeUZnY09BUWNVQmhVR0hnRVhQZ0l6TWhjeU5qSVdGUVlIQmdjV0Z5VW5EZ0lWQmhZek1qWXpMZ0lCTmlZaklnWUhGQmMrQWdKMkJ4Z0pDd0VFYlMwWkhSVUhnR0lLREZaV0JBTWhBUmxoVHp3R2UxTThVVHBLQXdPR2h3SUJDUkFEQ1NNZEZBY0ZDaVFlRndRVlAwTURELzdkQ2hZVkVRRWlHZ1loRVFNVUVBRXVBZ3dKR0ZFRkJCQTZLUW9EQmdjWVNoMHZDRThDRFVwQU0wb3RYam9vZjdzckpESTFQYkZSQXd3REhEbENGQWdwRkFRWUNnZ1JIR3M2QlNmU0F4WVdIUTBaR3dNS0l6QUJ6Z2tLVGlNUkN4QWlKd0FBQUFBQkFSa0NCd0h5QTBJQUZRQUFBUlUrQVRNeUZnY1VCdzRDRHdFR0l5STNOamMyQVRFSlJTZ2dLd0lKQXhzVkZ4d1pKQ3NMQXdRQkF0VUJORG9wSkJNWUZ6TWJIQ0VoT1JBNkh3QUFBUUFPLzJJQ3F3TkVBQ0VBQURjK0JETXlGell6TWhZSEJnY09BZ2NHQndZWEZoVU9BUWNpTGdFM05pTWtZV0ZpVFJzUkRDNC9JQzRCQWlSeW9vMHFFZ01DQmdNQ0dDQW5MdzBEQTh0NXpZUmVLQTAyR1JJWEZFaVc0NUU5UERBNEd4SVdFd05EWUQ1REFBQUFBZjl1LzFJQ0lRTk5BQ1FBQUFjelBnTTNQZ0V6TWhZSEZBY0dCd1lIQmdJSERnWW1Kd1lqSWlZM05sNEJXcFppUHc0TVV5d2xMd01EQWcwR0F4cXhaeFFjS3lFb0lCOFlDQjRhRXhVQkJFZzd0OVBWYWtGUU5qTU9FQkF4R2d1RS9yVnlGaDh2SHlRVERnTUtFaFVRS1FBQUFBQUJBSnNBMWdOd0Exa0FTQUFBQVNNMk16SWVBUWNPQVFjR0J4WVhGZ2NHSXlJbkppY1BBUVlWQmdjR0l5SW1OelkvQVFjdUFUYzJQd0VuSmljbU56NEJNeklYTmpNeUZoYzJOell6TWhZSEJnYzFCZ2MyTndMS0FROGZHVFFzQXdSWEs2TXlYamNDQVFNWklpUW9Od2dJQXhNTkpESXJQQVVFSkFvOUhqZ0NCSUlXSER3Q09BWUNGQXNGQ0I4NktVTUlTMXdYSGhJWEF3RUlNaG9yTFFLeUFRZ2FFeFlxQnljWFkxZ0pBeEVhR2lzVUZBa0JSZzRrTVNVZk14Z09BUlFSR3pvTENoVUJFU2tQRmdrOE1DbHlaUnNVRVEwTUFVdzhFZ2NBQVFBcUFKTUNkUUxLQUUwQUFBRUhEZ0lIQmdjR0l5SW1OelkzUGdFL0FTY21JeVluSmk4QkppY21OelEzTmpJZUFSY1dGelkzSmpjK0FSYzJGZ2NYSGdJVkJnY0dCd1lITWpZek5qY2pOaFlIQmdjR0R3RWlCd1lCY0FJZExSZ1REQkVlRmh3akFRSVNCQXdDRGdVRkFnWUNCd1lRSlJJTUFUVUlFaEVyRkFvZ1B4a0NCQnRVS0NRdUR3a0JCQU1SUEM4SkFna0JEUUZWRXdFZU9BRUNLeHBTUUFFREZnRk1Ba1JIRVFVQ0NBd2ZHeGNoQ0JjREdnRUJCQWNFRHdrVER4QUxGUklDQXdZQ0F3SnRPQWtXSGlVQ0JSZ2NEQUlIQlFFZVJUWU1DQXdCQ0FNREZSQVFFd0lXRUFFSEFBQUFBLy93LzFVQkJBQmtBQjBBSHdBakFBQTNOaFlYRmhVVUJ3WUhCaU1pSnlZM05UWTNGVGNuSXljWEp5WTFQZ0VQQVRjbkZDT0tKVUVSQXdJUE4wMURJUllGREFVa0N3Z0JFZ0VDQlFKSU5BVUlBUUpnQkNRaUJnNEpEaXduU3hZUEZnRU1LQUVPQ2hJRUJ3NFBKU3VEQWdJQkFRQUJBR3dBK0FLU0FhOEFJQUFBSlNJR0xnSTNOajhCTmpjak5qTXlGell6TmhZSEJnYzNCZ2MxQmdjR0l5SUJHZ1F4TERBZEFRSStGQjU4QVJoREtoVVNGVEpGQVFJdEFRb1VIQTFMYXhyNkFnRUdGQkFhRndKQkVBSUJCUUlpSFNBa0FRUUtBUXdFR0FBQUFBQUIvL3IvakFEWUFFTUFGQUFBRnlNbU56NEJOellYTWhjVUZ4WVZEZ0VIQmk4QklnRW5Bd0ZWTEJzZUFnSUZGd0pFS1I4WUQyMFVJU05KQ2dVSUFRSUNGeDRpUHd3SUJBSUFBQUFBQWYrNS96RURPZ05MQUNVQUFBRTJOejRCTnpNZUFSY0dCd1lIRmdjR0J3WUhCZ2NDQnpVR0l5SW1OelkzUGdJM05qY0I5anNmQWp3MkJqQTRDQU1sQlFJRklEdGFDaFpNb2VGbUN3d1ZJZ0VDR1M1MlZVaUJPd0tKVkNJWUtnb0RIU2NXSlFRQ0h5SXdZZ3dZVThiKzdtVUJEQ1ljSVI5THBXMWFubEVBQUFBQ0FERC9xQU1CQXg4QUtRQTdBQUFCUGdFek1oY2VBUWNHQnpZek1nY09BUWNPQWljR0J3WVBBZ1lWQndZaklpWW5KamMyTno0Qk53NEJCekl6TnpZM05qYzJKd2NtQndZSEFTY2prVUlsSFJzTEF3TUJJeFJNQlFSUE55bDJXZzhURWhNYUJRRUNJQWswSkVJTUVRTUJEaVpnL2o1MENnRUZCSE5jUUFJQ0RBVUZDaGNmQXA4eFR3ME5EQXNNRHcxOVU5SkxTNGRFQXdNR0JRRUVBUUVCQ1JrZEdqczhLRGljeWhkYi9tQUJocWgzUEJnTUJnY0JGaWtBQUFILy8vK1FBajhESEFBdEFBQUJNaFlYQmdjZUFRY1VEd0VPQVE4QkRnRVBBUVlIRlFZaklpWTNORDRCUHdFVk5qY3VBVGMrQWpjK0FnSHVJeTBCQnlFQkN3RURNd3RFRUJZTFl4TVNMeVljTlJvbEFRZ1BBZzlQYlNjcUFRRXNSZ3NXVmtvREhDTWhHQzBHSVFzSENVa1JZeHNsRTZNaUoyUTRBaWNZRlFzYUlBWXJBZEhrQmlZVUdpSWRDQTlWTUFBQUFBQUIvL0QvbndMdUF5Y0FQUUFBQVNNT0FTTWlKamMyTnhVK0FUTXlGZ2NPQXdjR0R3RTJNeklXQnc0QkJ3NEJJeUkzTkRZMU5DWTNOajhCUGdFM1BnWTNEZ01CcGdFT1dqQW5Md0VCREZTcWNVcHdCQUltU0RVcU82c21PUmRLUkFFQ0xpQVluVktmQXdjUUFRSmxJd3BkR1FwSElEd2hKeFFERkNJT0VnSWlIeVliR2c0WUFYTjlVVDhrVTFrN0tqeUZIUVVhSENCUkZSUWFLUVVVQkFrZkRTdGVId2xYRlFrOEhUb3BOelFiRXh3S0ZRQUIvLy8vcndMdkF5VUFPZ0FBRXlZM05qYytBamNPQWlNaU56WTNQZ0UvQVRZM01oWUhCZ2NHRHdFZUFRY0dCdzRCSXlJbU56NEJNeklYTWhZek1qYytBVGMyS3dFaTlCb0NBajRRZUZnUUlrNHVEUzhEQWlzT0pSa2hhRDQwUmdNRE5TOWdJRFV3QWdWZ09PQmlSVVVDQVVFZ0N3c0xMQWd1VENKTUFRSWtFRWtCSGdnVktEQVBXbE1rQ0JjTk9UUUpBeXdGRENjQlFqWkJVRGc4RkFZNkxXVjdSMUVzS0NWRUJnVWpEMG9ZR1FBQUFBQUNBQ3Iva0FMWEF5c0FQQUJIQUFBRkRnRWpJaWMwTmpVdUFUYytBVDhCQnlJR0p5SW1OelkzUGdFM05qTXlGd2NXRlE0Q0R3RU9BUWNXTXpJMk16SUhEZ1FIQmc4QkJnY1RKd1lIRkRNeU5qYytBUUZ0RkQwaE9CVU9CaXdCQXpjV0ZpUUpKd292T2dJQlUzV2xmQ2MwVWdnRER3RWhLd1lsQ0J3SkJBY1JPQVlJQWdJUklSMDRFZ0kwSmhNTEJBZS9CQXdKU1JRTVNoRXZNRGdFTFFNR0RBc0ZlaHNvQWdVQlBpVW9WbmlRVWhzN0NRMFVFVEkxQ2xFUlFSTUJFQmN1TlJVRUFRTUdiVklxRVFIbEJwY1dDaFVFSDNRQUFBQUIvL2IvdVFMekF3Z0FUQUFBQVQ0Qk16SVdCeFFHRlFZV0ZRNENJeUltSXdZUEFoYytBVE15SGdJSEJnY09BU01pTGdFM1BnRXpNaFl6TWpZM1BnSTFOaU1pQmlNaUppY21QZ0UzSmpVMFBnRTNKalUrQVFHb0Y4WXRIaU1CQVFFQ0NFdE9LQW9zRGhzdUxCMElEVThzTGtFZ0RRRUNPRC9tYURSUlBBSUNOQzRQU3hFblJDWUJEd3dDSUJGN0hoZ3hDaEZHZVJFQ0NBNENBUUpOQXZNQkZBY0lBUVlCQlJRRktqVVFCQ00xTXpBRkVCUWJMaThaTDJaeGZCRXhKaUl6RGlneEF4Y1lDaUVvRnc4WmZhWWhBZ0lFREJBREFnWW1KQUFBQWdBUy83WUN5d01aQUNnQU53QUFBU00yTXpJV0J4UUhOUVlWQmhZVkJnYzFCZzhCTlFZSEZ6WXpNaFlIRkFjT0FRY3VBVGMyTnhJREZ6WTNOaVkxTkRjbUl5SUdCd1lDVmdFU0Rob21BUUlHQVNBQ0xCTXhHSUtHQjBGR05Fc0VDVGJGZGx4YUJBTWp0d2d3WFFJQkVBWUlCQ1ZpQWdJREZBVVNEUUlHQVF3RERCb0hFQmNCQmhjTUFUdTVCekpXUHhvWWpKVUNCMXRNUEdBQmwvM0RBbFFsQ3hrSENRZ0NaaXNXQUFILy8vK2hBeElERndBdkFBQUJOeTRCTHdFaUpqVStBVGMrQXo4Qk5qTXlGd2NXQndZSE13NENCdzRGSXlJbU56NEJOellTTndHeElTbWJIQkVORVFORk1ESmxNV0lHRUM4SkxBY09PZ01DSWdGTXE4ZEFCeVVOSGhRZUVDTXpBUUUzQmpQMFRBSW5JZ01DQVFRVURpSkxBd01NQ0JFQkFnY3FIUk1ySFNKRHlmdElCeVlNR1FrSUd4MFRPZ2s1QVhKT0FBQUQvLy8vb3dNZkF5a0FJd0F3QUVRQUFBRXlIZ0lYTWo0Qk16SVdCd1lISGdFSERnTUhCaU1pTnpZM0l6Y21OejRCTXdNMk5UWW5CdzRCQndZV016SVRKeVlqSWdZSEJoY1ZOamMyTnpZMU5pY3VBUUpoRVJZaEZnVUVDZ2NCSlNBR0ZkNGRHZ1lNU2x4WUlVUXB3QmdXcVFGTk93c08zRy9IQmdVZUhoZzNBd0l4SGluR0F3UVJHa29HQkFzUkVUb21CUUVHQVFZREtRTUxIQmNDQVVFd200TVlWeXc2YUVRckJRaXluRjRwWGtab3BmMWtEZ29mT2dvTE1SQVpKUUgzQkJKUUxCd1VFQThMS0M0SEJBVVdBd3NBQUFJQWF2K3FBdWtER2dBc0FEa0FBQVVIRGdFaklpWTNORGNWTnpZM0JpY3VBVGMyTno0QkZ6SVdNeDRGQnhRSEJoWVhGZ2NVQndZQ0V6WTBKelVtQmdjVUZ4WTJOd0ZMQVJaSkl4NGxBUkFOYUV4S0pqeEJBd01qUnVWeEFnc0RGUmdzR2h3TkFRZ0lCQXNRQVFZNTJrQUtFakpyQXhRZFV4c2ZBUmtkR0JrVEhnRVBpRk1TQmdoVlBqbytmYUVMQVFJQ0J3a05GQTBLRUJjTkN3NFVDQmFrL3JZQjVBNGFCUUlHYXlzWkJRbzRQZ0FBQUFJQVF3Qk5BYzRDQWdBU0FDRUFBQUUxRGdFaklpWTNOajhCRlRZek1oWUhGQThCRlE0Qkl5STNOamMyTXpJV0J3WUJ1UlpSS3lvMUFRSUpBeTVpTERzQkRuNFFhalZQQlFSQ1J6Z2FJQUVDQVprQkd4NGRIQkVUQmdFL0lCc1JFOThFTWtFbkpTNHhFUkVNQUFJQVN3QUtBZEFDRFFBUkFESUFBQUUzRGdFaklpWTNORGNWUGdFeUZnY0dEd0VYSGdFVkJ3WUhCaU1pSmpjMFBnTS9BUVlqSWk4Qk15WTNQZ0V6TWhZQnVnRVdVaW9yTlFJUEZrOVdPd0VDQzM0QkNoTUNCVUpQUXhRb0FRWU1DUk1GRndnRkNRZ0pBUVVCQWxZMEZoMEJvd0ViSGg0ZERSc0JIeUVoSEJRUHVBRUVGUWtrSnpKTEVoTUVDeEFNRmdZZEF3d0xGQW9uS2d3QUFBRUFKZ0E2QXZ3Q1hnQXNBQUFCTnpZek1oWUhGQWNHQnpVR0R3RUdGUVllQVJjVkRnRUhMZ1FuUGdFM05DYytBamNIUGdNQ1hCRVlEQ1JIQWc0RFFsZWZiUUVCUm5FZ0FTY1hEMmxyY2xNTUFSWUJCUVVzVEFnQkk0WlFjd0pXQkFRcUhnNFRMU01CSnpRa0FnUVFNRVFkQmhjbEJBVVNGeWRHTGdRaENnb0lGQ01uQlFFUVFTVXRBQUFBQWdBWUFKSUNvQUlhQUJ3QU1RQUFOeU1HSXlJbU56NEZOejRCTXpJV0J3NElFelkzSGdFSERnRXJBU0ltSXdZaklpWTNQZ0UzYWdFR0NTQWlBZ0ViTmpOWE5qQWxlUkFkSGdFQkZTZ3ZRanRQTzA3dmhFOHRMd0VDU3o0ZEJSVUVMb0krU1FFQlRVdVRBUjhXRlNFVkRRa0RBZ0lMRmhFVUloZ1NEQWNGQXdRQlp4MENCU0VWSFN3Qk5CMGFIeWNRQUFBQUFBRUFQUUJCQXp3Q2VnQTVBQUFCTnljdUFTY3VCamMyTndjMk55TTJNeklYSXhjV0J3NEJCeFFIQmdjM0JnYzFCZ2NpQmlNR0JBY25KamMwTnpZbFBnSTNBZkJBTGdjMURnVWRFUnNRRUFnQkFsZ0JDQ3NCSkJzN0t3RUt3QVFCR1FZQkFoQUJGU2d1YXdJRUFqeituVVVEQkFFcU9nRVZCUVVIQXdFaUVDQUZKUWtERWdzU0R4SVNDVEU1QVFNUkNpMEluajhMR0EwR0JCd2VBUjBXQVE4UkFRbFZBd3NRQ1F3cE5VVUJBUUlCQUFBQUFBSUFZZitkQXQwRFB3QXZBRDhBQUFFV0ZRNEVCdzRCSXlJdUFUYytBejhCRGdFSERnRUhOUVlqSWlZM1BnRTNQZ0V6TWhZSERnRUhIZ0VCRGdFaklpWTNQZ016TWhZSEJnTGNBUUpDVzF0REF3TlZKeEFQQVFFQ1RWMVlDUUlGUVNrT0hSQXdHUmd3QWdJMEhEK3ZSRE5OQWdFTEFRRVAva1ljU3lFWkhnRUJIeXNmQ3lBeUFRSUNmd2NOTFdkYVVVSVJKRFVSRHc4c2ZtMTRKQklET2hrSkZ3Z0JGQ2dsSm1BVk1FUWxKd3N4Q2dZZi9XWW9LUmtYSFNrUkJ4Z1NDZ0FBQUFBQ0FBei9vQVBFQXd3QVVnQmNBQUFsSmpjR0l5SW1OelkzUGdFek1oY1dGUlFITXdZVkZCY1dCd1lIQmhVR0Z6NEJOelltSXlJSERnRUhEZ0VIQmhZWEhnRVZCaFVHRmhVT0FTTWlKamMyRWpjK0FUTXlGeFlIRGdFSERnRWpJaVkzTmljWE5qY2pOeVluSWdZQnZnUUVNQ0F5TkFJRlVEaWpOaW9SQVFNQkNBMExBUUlnS2dFcFBUNEVCRTFDSGk5TmVGUWhRZ01DT0Q4ZkZBSUJEd0ZZT1ZkOEJBYkVoMXJDV0hOTkx3WUVhbWtyZFRRcE1BRUNYUWNwUlFFa0Nna3JWSU1PRkNFeExFbGZQR0VoQVFJRkJBNEhEQVVYSERZZExSTVZFeGh3T1UxcER4bFZWeU4rTmpCQ0NBUVFEUW9HQ0NBR0ZpSlZWM1VCU214SlRFSW9abHZmY1M4eklSOEtZd1VTUVNBTUFrd0FBQUFDLzkvL3VBTE5Bd1FBS2dBekFBQUJOell6TWhZSEZBY1dGd1lDRHdFR0J3WWpJaVkzTkRZL0FRNEJEd0VPQVFjR0l5SW1OejRCTnhJM0F3YzNOajhCSndjR0FnZ1pNQmNpTXdFVEhnWWtqQ29LQ3dRaE1CMHhBUm9FRGhRb0VoTVVMZ2hZVEJjakFRSXlFK3oya0ZOZUl4Z2RDRFVRQXVVS0ZSMFlEeGNRSTE3K2Iyb1dIZ29lRnhRSlFSUXZCUk1NREFzRkJuc2VIU0ZzSUFHQ3hQNTFpZ053UTFNRVBoNEFBQUFBQS8vNy84QUMrZ01OQUNZQU9RQktBQUFYSWlZbkJpTWlKamMyTnlZMU5EY1NOejRCTXpJWE14NEJCdzRCQnhZZkFSWU9BeU1pSnpZek56NEZOelltSXlJR0R3RUdFek1PQVFjM1BnTTNOaVluQmlNaXpSVUxDeWdySlM4QkF3OEJBNVNlTW9OQVB5NENJVE1DQTRsYUF5QVlHQVE3WG81TENnOFZHQWNISEI0aEdoTUJBUlVURFQwVEZ4L3lBU0VpRmpzYkl6RWJBUUVaRVFnTkd6RUxBUnN0SmlFWkFnVUdDQUdQcXpjNkhCVlZLa0tNTkFNUkRnNVNhV0ZDWWdJQkFnY01FeGtrRlJJUERBRXhRd0huSFRnM0ZRa1BHeU1VQ2hRSkJ3QUFBQUFCQUNuL3hRTVNBdndBUGdBQUpUTUdJeUltTnpZU05qYzJNeklYSXg0QkJ3WUhEZ0VqSWlZM05EWTNOaU1HRHdFT0FnY09BaFl6TWpZek1oWUhEZ0VWQmhZVkZBNEZBYjhCYzJOWmFBVUhqYlpSVjFJTEZnRkJQd0lGTGhaVkpob1lBUTBCQVJVWUNoQVRGaXdiTnpzRUtob2RRaGdUSndFQkRBRVpCQWtJRFFrUEFqMVRZSU1CQzdBZEtRSUpSRFpBVGlRcUZSUUdKQXdkQWdVSUNnNG1Iang5U2ljbkRoRUlJUWNKRHdVRUNRa0lDZ1lMQUFBQUFnQUgvN01DMEFNQkFCd0FNQUFBQVE0Qkl5SW5CaU1pSmpjMVBnSTNQZ1EzTmpNeUZ4WUhCZ0VITnpZM0l6WTNOaVluRGdJUEFnNENBcG83KzNNUUZ5VTdLRHNDRmsrR0VRRU5DQTRRQ1RCT2NXOHdCUVArTnc0NGx6QUJJUU1DTFRJUUdCWUhMU2tEQ0F3QlBIN1dCRGs4S2dobnZPOGpCQ1VWSUJnSkxJZzdVa1QrNWpFZVVXSTZNU284SlJveU5BNVpYdzRXSHdBQkFBVC90Z0xqQXdZQVJBQUFBVE1lQVFjT0FRY09BUThCQmc4QkZqSTJNeklWRkFjR0J6TU9CQWNPQVFjR016STNGaFVVQmhVR0Z4WVZEZ0VITXdZaklpTUdOelEzTmhJM1BnRTNOak15QXE4Qkdoa0NBbGM2T2pBU0JpVVFEQk1rUUFvUkJDcEtBUTBUQncwVkZSZytBUUZjR2tJT0JBSVZBZ0ZJS0FGYlJnTUhxQVFDSElCMERCb1h3R2NSQXdJQkdSUXFWd2tPRlJZSEt5WWFDQWtLQWdoV0dBTUVBd0lDQVIxZ0V4QUlCZzBDRHdRUkNnSUVFVUFPRndKRUF3YVRBUU9tRVdZTFJRQUFBQUFCLytML3hRSy9Bd2NBT1FBQU53Y09BU01pSmpjME56WVNOejRCTno0Q056NEJNeklXQnc0QkJ6TUdJeUltSXlJSEJnYzNNeklXQndZSERnUVBBUVlIRGdLUUFRODlJQjBrQVFrUnloa3hMUjhiTlNJZEVXNFZIeUFDQW1JK0FTZ1VFQXNCQ2hVbk0yZ0ZGaGdCQWhRVER3Y1dTRUFtTWdRQ0NBd0hBUjhpR3hrSUZpd0JvajFoUGhBT0R3UUNBUklnR0M5eEZnd01LMFlyQ0JzU0Zna0lGQkFSRHdaR1Vna0NGUjhBQVFBTS83OERHd0w4QURzQUFBRVdCd1lIRGdFaklpWTNKeVlqSWdZSEJnY0dGak15Tmo4Qkp3WWpCaWN1QWpVK0FUTXlCdzRCQnc0REl5SW1OellTTno0Qk56WXpNZ0wzSkFNREloSkJJaGNlQVFVUEd6YXVJeUlCQXo0b05tME9Bd1VXRWhZZEJoY0xBb1pDYWdVQ01SOGFRMmFCUVc5ZEJRV1phMGRxVnlVd1V3TFJJMEUzUWlJakVnNFdGb3hDUWhrb0trRVpCQWdMQVJzRkN3c0lLVFZRS0dRaEd6ZEFLRnRhY1FFZVlEMDhGZ29BQWYvUC82NERSZ01TQUU0QUFDVVBBZ1lIRGdFaklpWTNORGMrQmo4QlBnRXpNZ2NVQnpNR0J6SVdNekkyTXpJWE56UTNGVFkzTmpjMk54NEJCd1lQQVFJRERnTUhOUTRCSWlZM05qYytBVGNQQVE0QkFSY0tUQmNjQ0E1REl4NGxBUVlaTGpNZ09oWkVDQjROZGpVMkF3b0JSbDBDQ0FFVVRSWU9Cd29DVFJVcE5Ca2pIQ01CQWdrZnNYa0tHaFFaQ0F3eE1pQUJBZ1lWaEFNZEVRNC82dzJBTHpnTUdoMFlGZ1VTUFd4cVEyb25lUTQxTGtFa0NSWitsUUVSQVJJQ0FnR3lKRWNTQ1FFQkZCTVBFRGordi83U0dSb0VEaEFCRHhNVUZRME9QKzBIQndnSEZRQUFBQUgvN3YvUUFqc0RDZ0FiQUFBQkl3WUNCdzRESXlJM05qYzJFalkzUGdJM05qTXlGZ2NHQWlnQlY5UVpEUzAwSVJCV0FnRWlISVZ4SnhZdktSQVhLaFViQVFJQ3FxbitiREFrTVJJR0t4aENNUUQvekRjZkZCQWFKUmNXRlFBQUFBSC84ZitmQXlzREdnQXBBQUFCUGdFM1BnRXpNaFlIQmdjT0J3Y0dJeUltTno0Qk16SVhEZ0VIRmpNeVB3RWpOellCdWgxVERobHNMaDRpQVFJT0UwWXVTejFYVW1nMkdUZENRUU1EVURzaEJnTVBBZ2NJREJnTEFRaHlBWm8zdng0dVBod2NGU0lsakZ5SVhtNUxRaElNTkQ0OFpoc1FSeEVLRWdjR2dRQUFBZi9qLzdFQzVnTWZBRVlBQUFFMk16SVhQZ0V6TWhZSEJnOEJEZ0lITlFjR0J6VUhGejRDTXpJZkFSWUhEZ0VIRGdFSEZ4NEJId0VXRlE0Qkl5NENKdzhCQmdjR0l5SW1OelkvQVRZM1BnSUJRUk1YQndrVk5FRW9Nd0VDQ3hjSERoRUdGVlFMQlFVa2VWd1ZDeG9KRHdJQkV3NU9sVmdCTVVNR0J3Y0JKU01VV2w0Y0hoRXJJQnNqR3lrS0JrRVBNVm9MTGlJQ3lCOERJUm9WR1JRU0dnY1RIZ2dCSG5RUUFRWUlFbEU0RFFRRUloYzBERkpQRXdzRmR6MHlLZ29UR0FKWVZ3RXNIVXdqRUJFUk9Jb2VicjRZYlVNQUFBQUFBZi8vLzhZQ1Z3TDlBRFlBQURjMEp6TW1OVFlTTnpZM0J6NEJNeklXQndZSE5RNENCd1lWQmhjeU5qTXlGeFFHQndZV0ZRWUhCaU1pQmlNaUppc0JCaU1pSmdzS0FRTUJ1azFXQlFFT2J6SWhKZ0VDQWg1eHJEa0JBUU1SWkJrVUZBRUJBU0VDRUN4aUNpZ01DVUFZRHdnUkhpSUZGeFlJQ1NFQlVXNkRDUUVmTUJvYkVBY0JTNnZyV2dJQ0JBVWFDZ0lHQVE4bURSRVhQd0lDQVJvQUFBTC81Ly9OQTNFREJRQkpBRXdBQUFFeUZ4WU9BUWNVQndZSEZ6NENOeU0yTXpJV0J4UUhBZ01PQVNNaUpqYytBVFUvQVQ0SE55Y09BZzhCQmlNaU5TNEROU2NPQVNNaUpqYzJFejRCTnpZWEp4UUIxQ01jQkFJSUR3RURKUWd4UDJndUFTUXVIQ0VCQVpDSERrSWtIU1FCQVFFU0FRRUVCZ2NJQ1FnS0JBb2ZLUk1UQ2lBR0l3UUdBZ0VKUUZoS0h5a0JCTGNlWENVMm5BSUM2ZzhVRkF3T0RBWkFXUVUrVEdRYkV4Z1pDZ1grVFA3L0d4OFZFd0VHQVVVQ0Fnb05FUk1WRlJZS0JDSWlDUVlEQkFzUUVRTUxEZ09YWlJrWFFBRnhQSTBsVGhBREF3QUFBQUgvNi8vV0EwMEM2QUExQUFBVE16NEJNeklYRmdjR0J4YytBVGMrQVRNeUZnY1VCd1lVQmdjR0FnWUhCaU1HSnk0Qk5pY09BZzhCRGdFaklpWTNORGMyRXMwQkpYQXpGeE1iQlFJRENBbGtFUjkyTWhVYUFRZ0lEQllxbEhjV1F5RUlIUmdKQ3dvcU9CVVFFUkZISVJNWEFRY1hpd0gyVFlNUGYxQXhGd0lRbUNVNlF3NE1CUTRJS0RzZE9mN3IxUWtpQVFRQ2c0QWlWV0lkRWhNZUlnNE1DUXRUQVR3QUFBSUFLdit5QXhRREN3QWFBQ1VBQUFFMk16SVhOak15RnhRZkFSWUhCZ0lIQmlNaUpqYzJOeFUrQVFNMkVqY0FEd0VXRnpjMkFZRkpUUjRhSlNsQUpBY0VDQUlHZUV5bXEydGlCQWVMSkc0WFZZWU0vdmt5QXdrY0VoY0N3VE1LSVQwQ0hCY2hKMmIrLzJQVmVsT1A0QUUyZlAyb1ZBRWdldjd4cFJNK0RRMFFBQUFBQUFMLzVQK3RBd2NER1FBbEFETUFBQUVPQVNNaUp3WUhOUVlqSWlZM05EY1ZOamMrQVRjK0FUYytCak15RmdjT0FRVVhQZ0kzTkRZMUJnOEJEZ0VDZkMyQ09qMGxMeHM2WlNzNUFnSndZQ2NmSWtsQU5nWWtEQjBQRnhRTFFVOEVCRkgrdUFVOFZTVURBVDRwRGcwMUFTSTVSaXhoV2dGb0tDVURDZ0h4bkVFdEtsdzlIUU1UQmc0RUNBSmFTMDNFTXdjTllITkFBZ2dDVkVNWEYxTUFBQUFEQUVYL1h3T0JBMElBTFFBdkFFZ0FBQUVHQnhjVUZoVUdCdzRCRlJRV0J3NEJJeUluSWk4QkJpTWlKamMyTno0Q056WXpNaGMzTmpNeUZnY09BUU12QVJVMk56WW5CaU1pSndZSERnRUhCaGNtTno0Qk16SVhOZ0xYUjFrS0FRTTFBUU1JQVFFcUhDVVRBd3dRTUNWWGZnVURIaGxWaGtsaFBBNEdGaVJMVkU4RkJGemFBU2htQmdJRU9qd1NCeTBqTm5NREF6a0NBUU5ITGlzZElnRURZRWtRQWdjQ01Sa0NCZ0VQTUEwZklpRTdMZzVvWFRwVFdLdVhHeTBCQmk1ZVZsalovdXdDeWdHZGN4NGJJZ0lqS1R2QVJEOGFJdzgwTWhnc0FBQUFBQUwvN1AvSkF2OEREQUFwQUQ4QUFCY0dJeUltUHdFMkdnRTNQZ0V6TWhZSERnSUhGelVlQWdjT0FTTWlKaWNHSXlJdUFpY0dCd0VIRGdJUEFSYzNQZ0kzTkRZM05DWWpJZ2N6cHhSS0pqY0JBd1dpMkVBbWxoUkJQd0lFV1pwV0N3WTRHd0VCTWhjS0dRd1NEaG9pRGhjT09nc0JKUVFQRXdzRU1BWWZLQjhxRWhVQkRBMFhIUUVHTVI0WkRETUJQQUU4SWhFaVJ6dElwb3dYRndFTFpFUWJHaWNZQlFVdlBVc1RhQlVDRVFNWEhoUUdXd1VVRkJFdUpRZ2pDZ2tSSHdBQUFBQUIvKzcveFFNREF3b0FPZ0FBRnlNaUpqYytBVE15RmpNeU56WTNOaWN1QVRjME56NEJOell6TWhjZUJSOEJGZ2NPQVFjR0J5WWpJZ1lIQmg0Q0J3NEVtQTVHVmdJQ01DTVRXUlFXRDJFQ0FTb3lNd01JR21rK2RGMGNMd2NQQ1E0R0R3SUpEd0lCTFJzQ1l5SU1PaklEQVNVdEpBSUNIME5haGp0Qkx5STRFZ1lmSlJnbUxsRTBGQjFXZGg0M0J3RUZCUW9FRGdFSUV4SVlKUUk2RFFJb054QXJLRWNvSFV0V1J5OEFBUUEvLzdFQy93TVBBQ3NBQUJjR0l5SW1OelkzTmpjK0FUYzJOd1lqSWlZM1BnRTNQZ0V6TWhZSEJnY09Bd2NPQVE4QkRnUHFLelFqS1FFQ0V5QXFNaDgzQ1FVU0NTQW5BUUluS3p6OFZSd3VBUUljRGhjUElCY1BQd1V6RTFzNFJ3OUFHeHNaSmtwamRFQmtFUWtDR3hnak1oOGlReVFWRkJBSUtTY2hBd2dHQ1Y0a3FHZDdBQUVBTnYvUUEzWURGUUF5QUFBQk1oWUhEZ0lIQmpNeUVqYytBek15RnpZek1oWUhGUTRCQWdjT0FTTWlKamMwTnlNT0FTTWlKamMrQXpjMkFha1pJZ0lCV1dJSkFnOGV5V0VSRGlBZkVRNFFJQ1lYR2dFRGFLRTRDRThwSHhnQ0Fnb0ZaU1pSWFFRRExFODhMRDhDL3ljYUdabTlRUmNCQzVFYkZpZ1JDQ0FaR0FnVXgvNjNsQ1F2R2g0R0RDUW5XRTQ3anB4b1NIUUFBUUJVLzlFREhRTDlBQ1FBQUFFVkZnY0dCeFk3QVRZL0FUWXpNaFlIQmdjR0FBOEJEZ0lqSWlZM05oSTNQZ0V6TWdGWUNnVUZHQW9SQlM2bUZTZENLRU1DQXpKTS91dzdCeFlpT0J3N0tRSVhVZzhGUWlBakF0VUNIMEZzZUJOUTVoNHRKQ2dvTEZ6K2drb0pIU01mTEI1ekFjeFFIQ2NBQVFBNC85UUVCd01RQUVRQUFBRUdEd0V6RGdFSERnTUhCaU1pSmk4QkJ3WUhNeU1pSnpZVE54VStBVE15RmdjVUJ3NEJCdzRCQndZek1qYzJOell6TWhZSEJoUUhGeEl6TWhZek5qYzJNeklFQndNRkNRRWVZdzBkYVVOcU5pMDZIQ3dJQ2k1VEp3RU1UUWNXVnlJY1VpVVNGd0VDQ0JrRkFSQUJBZ2NGQmlZOEZ4Z2tMZ0lCQVFpaUl3SUhBeFFQUHp4VkFzSUpCdzhobHhJcG5XS0FNaXNiR0Vja1NRUTJ2d0VRYXdGTVNoVVFCQW95WnlBRlBRc0xCVGRBRVVZc0F3MERBd0UxQVFNTEt3QUFBZi9iLzY4RFlRTWZBRklBQUNVbkRnSUhOd1lqSWljWEpqYytBVGMrQno4Qk5qY3VBVGMyTnlZMVBnRXpNaDRFRkJVWE55WTFQZ0V6TWhZSEZBYzNEZ0VITlE0QkJ4NEJCeFFIQmlZSEZoVU9BU01pSnlZQk53a1dTVG9pQVM0cUZSVUJHQUlCSkF3Q0F3UUlDeE1ZSmhZMlJBd1JEQU1DQ3dFQldDSUpEUWdGQWdFQ2lnSURqa0VuTkFJSUFTVGRCZzlFRXdNcUF3SUtMZ1VCQVI4VkVoRTFqQUlZWUQ0VUFSWUdBUTBoSEVBS0FRTUVDZ3dYR3l3Wk0wRUpSRTB1TDBJQ0JoNUdEUndiS2hzc0IwQ1NDZ1V4VXgwZEN4VUJOTVlHQVExUUV5bmpQQXNVRkFFTUFnVUxEZ1l0QUFBQUFmLy8vNmNDNGdNTkFETUFBQUVYRmhjL0FUWTNCell6TWhZSERnSUhEZ0lIRnpJZUFSVVVCek1HSXlJbU56WTNOajhCQmlNaU56UTNOamMrQVRNeUFZMERCQWtKTEdzL0FSY2NGeDBCQWo5dkNSeVBXQ2tJQWdZRURnRS9WQzlDQVFJRkcyUllBZ1FjQkFRT0VnZFlKU0lDdGhjaVl3azFneWtCQ2hNV0pHSitEQ2E3Z2t3R0N4SUlEUTQ0SlJzTUNUV0hkZ0V0Q2hhZlVDcE9BQUFBQUFFQUIvKzNBdUFERlFBNkFBQWxGeklXQnc0Q0l5SXVCRGMrQWo4QlBnRS9BVFkzQmlNaUxnSTNQZ0l6TWhjakZoY0hGeDREQnhRSERnUUhGQUZ4Yng0YkFRTnNtRlVmRmprWklRMEJBUlVUSlExRDVUa0ZEQm8zS3hrak1CZ0JBbmlZUWhrTUFSa01CQkFPQ0JJRkFRSVBWMlpqUWdHQkRCUVRNVWNmQVFRTEV5RVhIQzRZS3c5TTBEd0dEU29MQXdzZEZpeExKUUVIRUJjRUJBSU5HQk1HRGoyS2RHWk1FQXNBQUFBQi84RC9TQUxjQTFnQU53QUFBUWNHRHdFR0J3WUNCell6TWhZSEJnY21JeUlHSXlJdUFUYzJOellTTnpZM1BnRXpNaDRCTnpJMk16SVdCdzRESXdjR0J6Y0hBaE1aTUJJUkR5WWZhUjR3TVM0OEFnUmRGaHdvbkNFYklDSUJBelVoM3pFakJRdFpLUk0zSlFJSE1Bc2pKd0VCRVI0VkVTWXpDQUVVQXJzTlRDa3VKMVpJL3V4RkJ5NGJOeG9ERlFNWEZpd1pWZ0lOaldjSEh4NExDd0VDRXlBVEdRb0NBd01JQVJJQUFRQ2kvdjhCMkFPQkFDc0FBQUVWSGdFZkFSWVNCeFlWRGdFaklpY21BaThCTGdRbk15WTFOamNtTno0Qk16SVdCeFFIRkJZVkFZb0RCQUVFQkQ0Q0FRSTlIeGdESlVnUkNnSUtCZ3NNQ0FFRUFnNEpBUUU0SkRGVUFRVUNBd0lCRTA0Sk56cjk3SndJRGlzMkVJQUNFMUlyQ1RBWUp5RVFDUklWRWg4Ukl5UTFJUWdLQXdnQkFBSC81UDg2QXZ3RGJ3QTlBQUFCUHdFMFB3RUdJeUluTGdnMU5qY0hOanNCTWpZek1oWUhCZ2NHSHdFVkFnTUdCelVPQWdjMUJpTWlKek1tTlQ0Q1B3RTJOd0hBRWlRREFoc2RLQ3NJSGhBWURSRUlDUU1DT1FGSFdTZ2ljeFloSWdFQ0JRRVRFcDdiRFFnT0VSd1BRM0oyRXdFREFUZEJIQndzVGdJc01sOENCZzBGQlFFREFnTURCUWNJREFjZkt3RVlDUkVXRHc0S0RnNEIvdGIrS0JzWkFTVW9LUWNCR1NjSUJoUWNDZ01FTXFvQUFBRUFlUUdSQW5ZRFpRQXVBQUFCTXdZaklpWWlCaU1pSmpjMk56WTNQZ0kvQVRZek1oY25GZ2NVQnhVSEZoY1dCd1lISWljME5qY21Md0VHQVZzQk9DNERDUVFJQWlvNUFRRVVtWVVDQkFZQ0FqNDBNaE1CQXdFY0FnNENEd0VFUURzTkJnRUNHZzQyQWU0ZEFRRWtIUkllbFZnQ0F3UUJBU3NqQVFnSEZCY0lEa3RsU0IxQkRCOEhHd2tZUFNBNUFBSC9ydjlSQXlBQUd3QWlBQUFsSXg0QkJ3NEJCdzRCSXlJbkl5SUVCeTRCTno0Qk55WTFQZ0V6TWg0QkZUWXpNZ0x1QVJjY0FnSXVLZzA3RWdZT2lVRCs4SU1rS0FFQk5Db0NBaWszS0hKUU1pVjNBd1lvR1JzdENRSU9BZ2tEQnh3UEZTd1FEZ1VjR0FZSEFnSUFBQUFCQU1nQ213R2FBM2dBRlFBQUV6YytBVE15RndZSERnRWpJaThCSmpVbkxnRW5GY2dCQWtFclZBOElEQWdYSHhRU0F3Z0pEVE1EQXlNQktTczBEMEF6SndvTUF3UVNFemdGQVFBQUFnQU0vOUVDVlFIbEFDSUFNd0FBQVJZWEZoVVVNell6TWdjR0FnY09BU01pSmo4Qkp3NEJJeUltTno0Qk56NEJNeklETWo0SFB3RU9BUWNHRmdIUFFnb0NDZzRCSHdJSVd3UURNeUFjSmdFRENCTm5RRU5IQkFJdElUblpTQWZsQ1JJU0RSQUpFQVVRQVE5SGNRUUJIZ0hqRFJVR0J3b0NRVEgrNVEwWUd4TVFDZ1ViSlRFNUtvQXhTb1grWmdVT0N4a05JQW9qQWlBY1R4NFBHd0FBQUFJQUF2L09Ba3NETGdBeUFEMEFBQmN6QmlNaUpqYzJOellTTmpNeUZ6NEJNaFlIRkE0RUR3RUdCeGMzTmpNeUZnY09BaU1pSnhRT0JqY0dCejRDTnpZbUl5SnRBUWNMS3k4Q0FnODNrcFFwQkEwTUppZ2FBUVlGREFZUkFoZEhSQVlOUUVRek5BSURYNDgvTGpBRkJRMEhFZ1lXa2hjS0ZqWkhBd0VMQ3g4eEFTa2pIQm1XQVRUaEJSc2VJQm9KRXcwV0NSa0RJbk40QlFjbkx5NUdybjh4Qnd3SkNnVUlBZ2pBS3pJVU5WUVREUnNBQUFFQUYvL0tBakFCN1FBa0FBQUJGZ2NPQVFjT0FnY0dCd1lWQmhZek1qWXpNaFlIRkFjT0FTTWlKamMrQXpNeUFmczFBZ0lzRndnYkZCTnBPQUlCS0NJRUVRTWNIZ0VQS0lsQ04wWURCRXB5bmxBYUFlb0ZMaDAyQVJBVEJRTU5lUVlFRnlVQkVnOE5EekUxVUVWRWpuTkpBQUFBQWdBRS84WURGUU1kQURRQVF3QUFBVGMyTXpJV0J6WS9BVDRCTnpZeUZnY0dGUVlXRlJRSEJnSUdCdzRCSXlJdUF6VW1OVFErQVRVT0FTTWlKamMrQXdNWEZqTXlOajhDSmlNaUJnY0dBUnNCSENNY0tBRVFFU0loWWlJY1BDb0JBd0VTQWlxZWd4Z0hReVlIRXhJUENRWUNBaG9xSGtaT0F3SXBSR29NQWdrTEVoWVZGd2NQRGlFM0FnSUJsd0VRSUJvYktVdEpyQndQSHhNU0FRc2ZCd1FFWHY3NzVGTWFKUU1GQmdVQ0JRWUNEQklISHhrck5oMWhhbUgreXdJRUhTZ3NFd2xESkJFQUFBQUFBZ0FMLzhrQ0p3SHBBQ29BTXdBQUpSVU9BUWNlQVRNeU5qTXlGeDRET3dFeUhnSUhEZ0VqSWlZM1BnRTNQZ0V6TWdjR0J6VU9BU2MySXlJR0J6TXlOZ0ZzRFhjbUFSa01FbHNVRlJJREJRWUVCQUVCQlFVREFRS2pXbDVNQXdSQ0wwaU9ZRzRGQWdzZlFWQUJFeUU2RlFRbVY1RUJCaGdERVJNZ0VBb0xCQUVFQmcwSkp6RkNQenVJTlZCWFlSc25BVTlGZmdsQk1FOEFBQUFBQVFBdy81OEMzd01SQURVQUFCYzFQZ0UzTGdJbkl5SW1OejRCTnlNM05qOEJQZ0V6TWdjT0FTTWlKdzRCQnpZM0ZnY0dCdzRCRHdFT0FnY0dJeUltTnpZNEEwWURBaGdKRHdRTURnRUJJQjRCY0I5bUVUR0pObllEQWpRZ0Z3WURXQ29WTXdnQkFpRWJNVFVjRWxoREN5Z3NHQjhCQWhZQ0dmRU5BZ3dXQ1JFTUV5UUtJbFYvRlRkQllTSXhHeDVxR3dRQ0J3MG1GeUFaRFFZaXZva0VNaDRXRFFBQy82Myt2UUpRQWM0QU53QkdBQUFCSGdJWFBnRTNIZ0lHRlFZQ0R3RU9BU01pSnhjbkpqYytBVE15RmpNeVB3RStBemNuQmlNaUppTXVBVGMrQVRjK0FUTXlBemMySmlNaUJnY0dGak15UGdJQnVBd01DZ1FJTWhBVUVnSUZCVzR0RkVTd1h5NG9BUWc2QWdJaEdBZ3VFQjB5RlJvd0xoa1VDQzFTQkI0T0xDa0RBelFwTllJN0lTMEJBUndLSldRQkFRNEpIak1hSmdIRkJSTWpDUXdlQVFJVEVDY0dVUDd4UlI1bGRnc0JCQjhyR0NrU0Z3b01KemtpSGdZc0FRRkZOemgrTUQ1Qi92b0RDQXhoRndrSkd4MHpBQUgvK1AvUUFuUURLUUEvQUFBQkJ3NEJCelkzRlRjak5qTXlGZ2NHQndZSEZCY0dJeUltTHdFMkpqVTJOdzRCQnc0QklnY3pCd1lqSWlZM05qYzJFajhCSmpVK0FUTXlGaGNHQndZSEFYOFVBeUlHR0JjVEFVaENKVVFDQWg4aEF3SUxNeUk5Q0FZQkFRSVRPazBsRFFzVkRRRUpMU2tuTmdFQ0JUN0lRemdCQWt3dUlDd0JGbFVaUndHV0pRZEhFUkVYQVJRL095WWdTa3RDR3hBM0xCVU5EUzhJS1RBYlB6d2hEd2dESEM4aURReWJBV0pRUkFZS0pDb1lGU21IS0k0QUFBQUMvL0Qvb2dJRUFzNEFHUUFuQUFBVE5UNEJNaFlIRkFjMUFnY09Bd2NHSXlJbU56WTNOaElCRGdFaUpqYytBVGMyTXpJZUFkc05QMEFwQVFHU0pCTW1HUjRKRENJYkpnRUJEaE9RQVdBQ1JrZ21BUUV6TFJZQ0doMEdBYkVCRnhrWUZRWUVBZjdvYlRFdkFRUU1GQ0VmRlI1RUFSWUJNU0F3R2hRV0xBd0NFaEVBQUFBQy92ais0QUluQXRVQUpBQXdBQUEzTmpjMk56WXpNaFVHRmdjQ0J3WWpJaVkzUGdFek1oYzFIZ0lmQVRZL0FUWTNOamNUUGdFek1oWUhEZ0VqSWlhUExSNG9PaHdoR3dFaUF2K3dNamxFWFFJQk5pUVBJQXNJQlFJUkNnZ1hHU2RBSHZZQlJ5UWhMZ0lDUENFa09NVm5LRFljRkE0YkZ4Mzk1RXNXUFM0YVNnOEJDQkFZQmc4Q0J4Y2pRMnhDQWVnaU96QWdKekFyQUFILzZ2K3RBamNETlFCRkFBQUJOaklXQndZVkJ4Y1dCeDBCRGdJSFB3RTJNeklXRlFZSE13Y09BUWNVRnlNV0Z4WVhGZ2NPQVNNaUp4VW1Kd2MzQmlNaU56UStBVDhCSmpjMk56WTNQZ0UzUGdFQll4MVFPZ0VCRVFrT0FRRTZhU1lsTGtZWUdTb1Vkd0VZVUNRQ0JnRUlHajRTREFFQklpQVRHanBJU0FFVk1Ea0NFQ1FTQWhrQ0Fod1hIQTFIRFJkb0F4a2NOeWNDQkI4TkZBb0ZBZzlNaFRvSUNnOGdHaHhIRFRZYUNBY0RCZ29jR0JFVEdTa0tBU0JtbEFFZ09nb2ZTaTRJRWlVaUhnY01JbzBnTnNzQUFBQUFBZi95LzdVQ0xRTXVBQ2NBQUJjT0FTTWlOelF1QWpjMFB3RVNFelErQkRNeUZ4UUdGUVlXQnhRSE53SUREZ09WR0R3VUZ3RUxEZ3dCQ1NDc3dBd0xGUlFkRHcwUEFRRWZBUUlCb0pJTUh4QVpIUk1iRmdvS0FRZ0pCeFpNQVlvQS93RVFEaFFPQ2dRQkJRRU5MZzhEQmdIKytmN01HVWtnSlFBQUFBSC80Zis4QTBzQ0JBQk1BQUFUTno0Qk1oWVhOak15RnpZM0ZoY2pGZ2NHQWdjR0l5SW1JeUlIQmlNaUpqYzBOelkzSnc0QkR3RUdJeUluRlNZM05qY0hEZ0VITlE0RUl5SW1OelEzTmhJM1BnUXpNdHNIQmkwNEtnTlpQU1lVUWtGREhnRWVBZ050SlE0UEJBOEREQVVXS0I4dEFRazFhQWdYYXdnTk0wRW5DZ01CQWhzRElUVWxCUlFYSmp3bklDd0JBaEtHRmdjU0Nnd01CZ0lCc2dNU0ZoNGVRU0kwRUFJYklDUkcvdUU2RVFRUUZ5RWFEUTkyc3dVWGpRb1JWQ1FCRUFZZlRRTVdSRUFCQmlrakpoY01EZ0lFTWdFUE9BMGhGQlFKQUFBQUFmL3YvN3NDMXdIaUFENEFBQk0yTXpJWE5qTXlCeFFIUGdFek1oWUhCZ2MxQmdjR0l5SW1OelEvQVQ0SU5UUWpJZzREQnc0QkpnWUhEZ0VqSWk0Q056WVN2aVlMQXdjbEZ5RUNBaXFzUWpvekF3UkRDaGxsYXhZY0FRWTZCUkVJRFFjSkJRVURFQThxT2lwTkVBc1JDQWtFQno4bEN4c2dGZ0VEc0FHRUx3VU9MQXNJSmo4Mk1VNTZBUThxbnc0T0JBeHJDUjhQR1EwVUN3NEtCUlFlUkRSb0ZRNE1BUWdMRVJVRUNCSU1Nd0ZLQUFBQUFnQWUvOFVDVGdIbEFCd0FNQUFBRXpZek1oWXpOak15TmpNeUZnY09BUWNHQnlJaklpNEROejRCRnljR0t3RU9BZ2NVSGdNNkFUTXlQZ0hoRHhFR0ZBY2lQUWtuQ0U1SEJBUnJVa05lQWdVakowQWhHQUlFZk00R0doQUdBa1l3QWdFRUJBa0VEUU1yUUJ3QnFnZ0RNZ1JPUTFQSFFTOEVBZzRhTmlkYTNhTUZCd001UFIwRkNBUURBVHRMQUFBQUF2K04vcklDbGdINUFDNEFQd0FBQVJjK0FUTXlGZ2NHQnc0R0J3WWpJaWNPQXdjR0l5SW1OejRCTnpZM0l6WTNJejRCTnpZM05oYzJCd1lQQVE0QkJ6TU9BUWNXRno0QkFTc1lNRzlLT2pBREF4TVBFaWNpTnpoTktpUWdQUWtLS3hrb0V5Z21JQjhDQVNZMEp3RUJLdzRCQ0NrTVBSa2N2UUo3QVFFVEF3c0VBUWNjQmdrRlFuSUJuQVkzTEVJME1pOGxLMUExUnpJd0VBMDFFMVF5UXhrVkxCa2RWV0JJQWtjZUVVOFlkaHdZZVM2QUFRRWdCaElIQ3pFTUNSQXhoZ0FBQUFMLzhmNjhBcUlCMXdBb0FETUFBQk0rQVRNeUZ6WXpNaFlIQmhVR0FnYzJNeklXQnc0QkJ6TUdJeUltTno0QlB3RUdJeUltTno0QkZ6WTNEZ0VIQmdjR016TEhONGd5T2dWU0ZCZ3RBUU5Jcmk0eUdSQVBBUUpmTndFZ0ZEbEtBZ01YR2hRWFpqOHlBd1Y1ZUVvalJqc2xEd0VDSEJzQmZ5UXdNalluRndVQ2lmN1dhQlVQRFNadUZ3azdLekU4S0NFa01qUm55ZkVtY1FnZ05Cb1VGd0FCLy9mL3ZnSU9BZ1VBSHdBQUV6YytBVE15QnhRSFBnRXpNaFVVQnhZSERnRUhCZ01PQVNNaUpqYytBb0k1RmtBY0dRSUdIM01kRVFrWkFnSTVNV3B2RVdBcUdSd0JBVE5TQVNGK0pTZ2FCaElaTWcwSURnVWNIVHNNSVA3a0tEc1lHQmx6bmdBQUFBSC8zLytrQWpNQitRQXRBQUFGQmlNaUpqYytBVE15RmpNeU5qc0JNamNtSnk0Q056WTNQZ0V6TWhZSERnRUhEZ01IRmdjR0J3WUhBV05lZjBaaEFnRVhFQUlKQWhNZERDS1hEdzBtSEI4WkFRSU5DZE5uTHg0Q0FTOG9KaWdHQ2dwdEJBTVpBa2taUXpZdEZCb0JNeVlRRWcwV0xCOGZGa0ZtSmgwWkxBc0hDUVVIQTFaWExEQWZMZ0FBQVFBbC82c0NaZ00vQUQ4QUFBRWpCZzhCQmc4Qk5qY2VBd2NPQVE4QkJnOEJCZ0lIRGdJSExnRTNOamMyTnlJR0J5NEJOelkzSXo0QlB3RTJNemMyTno0Q056WXpNaFlIRkFKZ0FSZ1VSd3NGRWlnbkJTRVVFZ0VDSVJjWlVoa0lETWduQnd3VUJ4NHlBUUlDSzNBaEhBNFBFd0VDTXdFdEp5QVBCQThOUDBJT0RpSVZDaEFhTGdFQzRpNGRhZzBFRVFrRUFRTURFQTRXS1FFR0V3RUhGZjU2TXdrSEJnTURHQklLQlpQMURBRUNHQklvRmdzUkNBUURJSjVJRmdvSkRBMHFIUXdBQUFBQkFBLy8wd0x2QWZjQUx3QUFOelkzTmpNeUZnY0dCd1lIUGdJL0FqWTdBVEkyTXpJV0J4UUhCZ0lITlFZaklpWTNORGNuQmlNaUpqYzJOUk1hcXlvckh5a0JBZzFDVHpaY0t5b3hLUTRxRFJRNkN4Y2xBZ1F3cGhNd1NTRXFBUWdHWTFBMlJ3SUNRNlRQSVNJYUZSVkxxaDVSTkRkRE14b1JIeElJQjByK3R5RUJNUmtVQ3dzR1J6TXhCZ1VBQUFBQkFDSC92UUtYQWhjQUtnQUFBUTRCQno0Qk56WTNOak15RmdjVUJ4WVZCZ2NDQnc0Qkl5SW5KaWNWSmpVMk56NEJQd0UrQVRNeUZnRXVBeFFFRERNRVJTSlBWQklYQVFvWkFpWFlIeXlBTGhnT1JoQUNBem9LRkFnS0FqTXNIU01Cdng2NE1oTlNCbkFwWEEwT0NSSVVGUmdqL3V3a01GZ05DVE1CQnhNNXJobERGQjRpUEJrQUFRQUIvOVFEUXdJRUFFRUFBQUVIRGdJVkZETXlOamMxTkRjK0FUTXlGaGMxRmhVR0FnY09BU01pTnpRM0p3NEJJeUkzTmpjK0FqYytBVE15RmdjVUJnYzJQd0UyUHdFMk16SVZCd1lDSWhvQkNRVUNDbjBDQVFJdEl5OHREd0VEblQ0ZFhpNkNCZ01KSklaTVF3SVBKQkV4TFFVS0tCTWtIQUlGQVVjekNoa0hFU01NR3dJQkFYTlFBaEFOQmdLT0hna0VBaUVzRmlvQkF3Y3YvdXBRSVNlVUJSc0NUWE0xUGswamRYRU1EeEpRTEFjZkNFc1NBd2dCQWdVUUJRVUFBZi91LzdzQ1h3SDZBRFVBQUFFK0FUTXlGZ2NPQVFjV0J3NEJCeFFYRGdFaklpWXZBUThCRGdNSE5RWWpJaVkxUGdNM0pqUW5KamMrQVRNeUZ4NEJBWXNYYnhJWkl3RUJpVFVCQWdFS0FRUUJRaU1mRHdjRU94OERFUXdXRFJzWUZ5SUNORHBiRVFnR0lRRUNXeUVsR1E0a0FZNFhWU0lhR0pJcURTVWNhZ3doQ1JRWElUMGtPeDhERXdzUEJnRUpJZzBlVUR0WUVoSldFUW9ZS3pjWENUa0FBQUFCQUNiK3ZRS2lBYzRBUFFBQUV5WTNQZ0V6TWhZWERnRUhQZ0kzTmpNeUZqTXlOell6TWhZSEJnY0dEd0VXQnhRSERnSUhCaU1pSmpjMlB3RTJQd0VuQmlNaUpqYytBVGMwWndFQkFTUWFJa0lNQW1BRUtVZEhGandkQ0Q4TUN3UWJFUmtsQVFFa2E1TVVKZ0VNTFRnUkNCODlJRGtCQWk0VUtSQVJCVFlpSlRjREFqc0NBWFVHQmg0ZExTTWR0U3dYWFhZYVZ3NERFQndWRXhkajhTQWJJeEFWSURzZ0YwMHpJU0U3R3owVkdnWWFMek1xeXlZUkFBQUFBQUgvOS8rNEFtMEIvZ0F1QUFBbEZ6WXpNaFlIQmc4QkJnY2lKamMrQkRjMUpqVW1KeTRETno0Q056SVdNekkyTXpJSERnRUhCZ0VpQXhFWkt6NEJBUlVpeUdvMUlRSUNPbEJRT0FFQkVRWU9KUkFNQVFLRm9rNElEUlVDQ2dJV0FnSXdJbzVpQ1FVbElSY2dCaUlCRkJ3bFZFaEFOQTBDQWdFREJBWUpCUTROTEVZakJDMEJIaUJURm5rQUFRQXgvMndDeEFNL0FFb0FBQUUrQVRNeUZnY0dCek1ISWdjT0FnY09BUWNXRlJRR0R3RUdCek1HQndZZUFnY0dCelVITXdZaklpY3VBVGMyUHdFSE56NEJOelluSWlZM1BnRTdBVFkzSXhVaUxnRTNQZ0VCeUJCWExTbytBUUk5QVJFRUJTSWJFUk14UUQwTkd3RUJCQ1FCSWdJQkpTNGxBUUlHQmdFeFJEd2dJa1lCQWpRRkFoVVZMUUVDRWcxRUFRRXpGQWZKRFFvQkF3RUJBeUVERHc4aEpoUWdHd1VCSEZCVUdEOHpFd2NHQXlnT0NDRkFQQjBYTGlBc0ZSQUxBZ2dzRWhOcElDVkxDQU1iRzB3V0ZRb2REUThWSWwwQktqTVdMallBQUFBQkFBMy9lQUl3QTNzQUpnQUFBVDRDTno0Qk16SUhCaDRDRlFZSE5RWUhBZ01IRGdRaklpYzJKamMwTnhVU0V3RkpEZ3dYRGhrK0ZCVUJBUTBRRFFJR0FpT2F1Z3dDRkF3VkdBNEZFZ0VqQVFLRWx3TERKeDRxRGhnakdRb0tBUW9MRGhJQkJXSCtSLzdVRHdNY0RCUUlCQk0yRVFNR0FRRUhBWTBBQVFBTy8yUUNhQU5DQUU4QUFBVU9BU01pSmpjMk53YzNOamMyTkRVK0F6Y21OejRFUHdFbU56UTJOVFF2QVQwQkp5NEJOelEvQVRZek1oWXpIZ0lIQmc4QkJnY1VGeklXRlFZSE13WWpCZ2MyTWg0QkJ3NEJBUXdTWXlJcVBRRUNPZ0ViS0FRQkFqUlVVQzRzQVFFR0N3Z1NBeFlCQVFnSUVCa25NQUVGQ0RKT0J5QUpMVGdSQWdNWkR6OENFd3hJQWhZQkdoeThGQU1DQndjQ0FpSmlFeWNvRXgwZkFRY2lPd2trQ1N4S01TQUxIQzRNR1I4VEpnY3ZCd1lLR3dZT0RRc0JBUllDSGhzSURRZ3hCQXBCU0NnOEl4WmNJaFlLSGdnTURnMHRTQVlpUkNRclBBQUFBQUVBUXdFTEFob0IrZ0FsQUFBQkxnSWpJZ2NPQWlNaUpqYytBVGNqTnpZek1oY1dGelkvQVRZek1nY0dCdzRCSXlJQlBRa2FIaEFEQ0FjeklRd1dJUUVDTkNnQktEVWNOZ1VESUJ3Y0tob1BGd0lCUENvMUhBMEJFUUlnSFFJRktSVXNFeDVGR1JjZE5SNG1BUTBpRHlFaktDY2hBQUFBQUFJQUt2OXBBbzRERUFBbUFEY0FBQmMzSmljbU5qYzJOelkzRlRZM1BnSTNGVGMyTXpJV0J3NENCd1lIRGdFSEJpTWlOelFCTXo0Qk16SVdGeFlHQndZaklpWTNORGtCQXdRRkFRY1ZFQ1VHU0ZRWkVpWVNBaGcvSnpRTER5d2JJakFGSkkwcklpQTVBd0Y3QVJKUEt5UXpBUUVwSGk0bEp6SUJUZ01RQkFNR0J5QVVMd3NCYTdFMEpUc1NBUUVqSHhremFETStXQXBEdWhFT0pSSURIaWdxSUIwZk1RZ01GaGNNQUFBQkFBei9ad0luQW9NQVRBQUFBVGMrQlRNZUFnY1VEZ0VQQVI0QkZ6SVdCdzRCSXlJbkRnTUhEZ01IQmhVR0ZqTXlOak15RmdjVUJ3WUhGQllWQmlNaUp3WWpJalUyUHdFMFB3RW1OejRCTnpZQmZSVURFZ2NQQ2cwSENTb1pBUThjQXpVRUd3WWJIQUlCSWhNSEJBY1NIQTRTSlRZaUR3a0NBU2toQlJBRUhCMEJEejEwQVVBekNBY05DQW9CQ0FNSUJUY0ZCcVJ6TFFJK0ZBTVNCZ3dGQlFZSURSQUlFeG9ET1FFREFTd1RHU29DRVJjTkJBVUpIQ1VYRWdZREZ5WUJFZzRORDB3V0FRa0NWd01IRXc4WkRRWVhGQ2hYWXVBdlRnQUFBZi9kLzVRRFZRTlpBRjRBQUFFbkZoVU9BUThCSWlNSEZoVUdCd1lyQXdZVkJ6VUdCeGMyTXpJWEp4WVZEZ0VISmlNaUJpTWlKek1tTnpZME55WTNOamMyTndZaklpY3pMZ0UzTmpjSE5qYytCRE15RmdjT0FTTWlKelFtTndZSFBnUXpNZ0p2QVJ3Q01pZ1FBUVFFQVFOekV5UUJCdzhGQ2l3cFNqUXFUU2tCSVFFdElSUWNOdTAwSlJzQk9nSUJBUVFCQTRNMkxDUVpEaDRCRlI0QkFoZ0JRV01WTVU1WmVrUlBjZ1FCUGlnM0d6Z0JlVk1IS0JNZ0dRd2ZBYzRCRXhjU0xBOEdBUVFJTHdRQkJRTVhBWFU4QkFVVEFSZ1dFU0lKQkRjSUV5Z0NCd0VLQmpZVElLOENBZ1FUREJBUkFSa2VRM2lDWFR4T1NTZ3RLQWdkREZleEFnNEdDQVFBQWYvSi82Y0M0Z01OQUZrQUFEY0dJeUltTno0QlB3RWlKek11QVRjK0FUOEJOamMrQVRNeUh3RWVBaGMvQVRZM0J6WXpNaFlIRGdJUEFSNEJCdzRCSXlJbkJ6NEJNeklIRGdFUEFRWUhGekllQVJVVUJ6TUdJeUltTnpRK0J6Y2pCZ3doSndFQ2lGc3FJaHdCSVNrQkFTVWpLUW9WQjFnbEl3TURBZ1FGQVFrc2F6OEJHUm9ZSEFFQ1AyNEpIamMyQVFKU09SWVVRaEZEREVNQ0FVMDlYRElMQ1FJR0JBNEJQMVF1UHdFRUJ3Y05DUkFKRVFSN0FSa1JJU0lGTndJRkZ3d0xIUWdKaTFjclRpc1hEeTA2RHdrMWd5a0JDaE1XSldGL0N5Z0VHQThXSXdOWkFRWWVGaTBKQkZFV0JRc1NDQTBPT0NjZUJRMFFEaE1PRnd3WUJRQUFBQUFDQU1nQ1hRSnVBeGtBRGdBZkFBQVRJeVkzUGdFek1oWUhEZ0VqSWljM0l5WTNQZ0V6TWg4QkZnY09BU01pSitzQ0lRSUNYU1liSEFJQlZpUUVEdGdDSUFJQ1h5Z0ZEZzRWQWdKWkpnY0xBbUlSR3lWQUlCUWpQd0lNRXlFc1RnVUdHQndxU3dNQUFBWUFVLy8vQTdFQzhnQVpBRGNBWlFCcEFHMEFjZ0FBQVJVQ0lTSW1JeUltSnhVbU56WTNQZ0UzTmpNeUZoY1dCd1lCTWhZek1qNENOelkxTmlZbk5TY09BU01pSmlNaUJnYzFCaFVHRmdFZUFRY1VCeGNPQVNNaUp3WVBBUTRDRlFZV016NEJOeDRCQnhRSE53WVBBUVluSWlZM05EY1ZQZ0V6TWhjbkZBOENGemNuRnpZMUlnT0RadjV4QnhzSVdKd1hCZ0lFSXhsaU1ybGxjcFE2S2dNRS9mMENDd05EaVdkS0RRVURJU2dJRFRJdkNUUU5YdGtXQ1FOMkFVNGNId0VDQkFwQUlCZ3dFeEVFQXhFSkFTQWNBeUlJRlIwQkF3RVZHUTh6TWp4V0F3a2RwVXdpWFFRQmJRVUlCRlVHRVFNQlh3SCtvUUZpUGdFaU1VSnRRbzBkWlN0QkxsTkcvcmNCUW1KdExSUVVNMWtWQWdjV0VRYkJhZ0VXRmtKUkFZa0ZGQk1EQ2dFdEx4Z0xGUWdHRmhFTEV4QUJEZ0VCRFE0RkNBRVlDQWdaQVVBMURSa0JVSDFKQmdRQjVRY0dCVEFJRUFNQUFBQUFBZ0E1QUNzRE5BSmpBRElBWlFBQUFUYzJNeklXQnhRSEZBNEJCek1IRGdNSEJoVUdIZ0VYQmlNaUxnSW5ORFkzTkNZMVBnZy9BVFlsTnpZek1oWUhCZ2NPQnc4QkRnUVZCaDRCRnc0QkJ5NEVKekkrQVRVMkp6WS9BVDREQVhNSkNRY1NId0VMREJzSEFRd1BPQ0l4RmdFQkl6WU9CVHdXTmpvcUF3OEJBUUVEQmdVSkJRd0ZEUUVOYXdIZkNoQUhGU01CQWdvQkNoWVFKUkF0Q3hjWUF4Y1FFd3NCS2o4UEFoc09DRUErUWkwREFRY0pBZ01LUUJBSFp5cFJBalFEQXlFWkVCTUtEeFFIQ0Fzb0dCOE1BZ1FPS3p3WEt4RWlRU29DR3cwQ0NnTUZDUW9JQ2dZTEJBc0JDMTVqQXdRbUlCUVZEUmtaRkJrTUdRWU1EQUlLQ0FzS0JCSXpSQnNhS3dRRUVSa29TVEFTR1FrSkNDVTFEUVZSSFRRQUFBQUFCd0F3LzZVRUNnTVpBRGdBWEFDUEFKY0FvZ0NtQUtvQUFBRTJOelkzSXpjK0NETXlGZ2NHQnc0QkR3RXpCZ2NHSXlJbkxnRW5MZ00zTkRZM1BnZzNQZ0kzSWdjT0FnY0dGeU1YRmpNeVB3RWpOajhCSXo0RE56WW1KeUlHSXlJbUl5SVRGUVlIRnhZWE5SWUhCZ2N6QmlNaUx3RXpKeU1uSmk4QkRnRWpJaVluTmpjME53YytBVDhCUGdFek1oY25IZ0VIRGdFUEFSYzBKalVuSWhNSEJnYzJOeU0rQVRjMEF5Y0hGeWMzSndjQk5pSS9FeEFCUFFZcUN5SU5IQkVaRnd5TXRRa0RGQ0JhV3hrQk5MVmhZb0kzQnpjSEF4RUlCd0VGQVFFRkNRWVFCeE1GRlFFVFBTN3ZBZ0U2ZjJvRUF6WUJCaXhTUW1ZVUFVc1VKZ0VqSFM4V0F3TXNLUWNQQkFnY0IyMUZIU2NXQmdJYUFRRW5BUW9FRmdvQ0FRWUNDZ2NJRHhGSUh4b2xBd01SRGdFQkJRRUJMcjFJS1JnQkh4UUNBMFNsQkF3REJBRm5CRHMxSUE0Qkd6c0JkdzBCQlFZSEFnZ0NTaDhuRnd3ZkF4VUZFUVFMQXdZQng2TkJPRnByVEJVdEtCWXRDQ29UQnlzV0lnNEhKdzBLRlJvU0h3NGpDU1FDSUVjc0JnRVphcUJOVEM4Rkp4MEdFeFFqSUI5QlRUTkFiaUFFQWY2NUFROEpJUWdDQVI0WUZ3NENEd0lMRFFnTkZSMHNHUmNoS0JFckFRTU5Bd0ZZalFvQkV6TWxLR0dkQ1FNQkF3RUdBVHNCTGxBR0NnMHpHQlQreUJrVkNRZ0lBZ1lBQUFBQUFnQjdBaTBDVVFOdkFCTUFJZ0FBRXpZM05qY3lGeFlIQmdjR0l5SW5KamMrQVRjWEp6STNCZ2NtSXdZSEJoWXpNamI4THlNZEpGa2JUZ01GV0VaK2FTa2dBd0kvS0xFQkFnTWhHaDRPR1FJQkZ4QWZPQU5FRlFRTkJRNHBURTgrTWlzWkxpNWZFSGtFQ0FjQ0F4Z1pEaEFzQUFBQkFNSUNsZ0hFQTJRQUVnQUFBVE0yTXpJV0J3WUhCaU1pTlRZM0ZUYytBUUZSQVE4WEh5MEJBaDUrUVNJQ0N3Y09Wd05kQnhjVkdDRnBGeEVRQVFjcldnQUFBQUlBTXdDNkFSTUJid0FUQUJZQUFEY2pKamMrQVRNeUh3RVdNeGNXQnc0Qkl5SW5OeWNXWFFJb0FnTnRMd3dTQVFFQkJCb0NBbU1zQ0ErUUJBSEFGU0VzVFFZQkFRTVlIU3RLQTZrQkFRQUFBZi9LL3N3QlhRQTNBRGdBQUFNakxnRTNORFkxUGdJek1oY2pGaGMyT3dFK0FUYzBKeU1pTGdFM05qY1ZQZ0V6TWdjVUR3RVhEd0VXSHdFZUF3Y0dCd1lqSWc0Q0VSVUJDQW9TSnhzTkR3RUNEZ01KQmo5SUFRd1NIaW9sQVFJTkVqb2FFUUlHQmdZUERoZ1NKQlFQRndnQkJJbEVZaVArMHdJYUdRWVpBaFlhRlE4RENnRURGdzhKQ1FVV0ZCTVlBUncwRWdrTUJ3WUpGZ1VGRFFjSEVSWVFVMFlqQUFBQUFnQ1hBaGNCN2dOb0FCOEFMUUFBQVRZM016SVdCdzRCQnc0Qkl5b0NMZ1VuTXljbU56NEJOeU0yRnpVME53WUhKaU1HQndZek1qWUJNQzQ4R2g0Y0FnTkVOU0ZVSUFFTUF3c0ZDUVVIQlFJQkJRUUNBbHNwQVF3M0J4UVdDUlFqQVFJVUVqVURPQndVSmg0dWRUQWRIUUVCQXdRR0NBVUpDdzh1a2hnR2dBSUREQW9FQWlvVEZDOEFBQUFDQUF3QVVnTXhBbkFBSXdCSUFBQUJOeWN1QWpjK0FUTXlGeFFlQkFjT0FSVUhEZ0lQQVE0QkJ6UW1OelkzSlRjbkxnSTNQZ0V6TWhjZUFRY0dEd0VkQVFZUEFRWUhOUVlqSWljdUFTYzJQd0UyQVNFbkdnVkZJUUVDVlN3ZkhCa1VIQk1PQVFFWEFRY3pMaUFRSzlvbkFnRVA4Z0Z6SXhjQlFCc0JBa3dqSEJVU1N3SUJEZ2NRYUFza1B6NE5DZ1VCR1FFR0JRa3VBU2dQSGdaSU5CZ2dZU29CSkI0eEtTd1FDeUlCRVNrNEV3Z0VDRkFFQXh3R1VsZ0NEQndCUUMwVkgxRWpGSWNoRUJFTEJBZFVGd0lJSHdFZUJRZ1VCQXdGRHpVQUFnQVQvMkFDandNQ0FDOEFQd0FBTnlZMVBnUTNQZ0V6TWg0QkJ3NEREd0UrQVRjK0FUY1ZOak15RmdjT0FRY09BU01pSmpjK0FUY3VBUUUrQVRNeUZnY09BeU1pSmpjMkZBRUNRbHRiUXdNRFZTY1FEd0VCQWsxZFdBa0NCVUVwRGgwUU1Ca1lNQUlDTkJ3L3IwUXpUUUlCQ3dFQkR3RzZIRXNoR1I0QkFSOHJId3NnTWdFQ0lBY05MV2RhVVVJUkpEVVJEdzhzZm0xNEpCSURPaGtKRndnQkZDZ2xKbUFWTUVRbEp3c3hDZ1lmQXBvb0tSa1hIU2tSQnhnU0NnQUFBLy9mLzdnREZBUVpBQ29BTXdCSkFBQUJOell6TWhZSEZBY1dGd1lDRHdFR0J3WWpJaVkzTkRZL0FRNEJEd0VPQVFjR0l5SW1OejRCTnhJM0F3YzNOajhCSndjR0V6YytBVE15RndZSERnRWpJaThCSmpVbkxnRW5GUUlJR1RBWElqTUJFeDRHSkl3cUNnc0VJVEFkTVFFYUJBNFVLQklURkM0SVdFd1hJd0VDTWhQczlwQlRYaU1ZSFFnMUVMTUJBa0VyVkE4SURBZ1hIeFFTQXdnSkRUTURBdVVLRlIwWUR4Y1FJMTcrYjJvV0hnb2VGeFFKUVJRdkJSTU1EQXNGQm5zZUhTRnNJQUdDeFA1MWlnTndRMU1FUGg0Q1FnRXBLelFQUURNbkNnd0RCQklUT0FVQkFBUC8zLys0QTFRRUx3QXFBRE1BUmdBQUFUYzJNeklXQnhRSEZoY0dBZzhCQmdjR0l5SW1OelEyUHdFT0FROEJEZ0VIQmlNaUpqYytBVGNTTndNSE56WS9BU2NIQmdFek5qTXlGZ2NHQndZaklqVTJOeFUzUGdFQ0NCa3dGeUl6QVJNZUJpU01LZ29MQkNFd0hURUJHZ1FPRkNnU0V4UXVDRmhNRnlNQkFqSVQ3UGFRVTE0akdCMElOUkFCVWdFUEZ4OHRBUUllZmtFaUFnc0hEbGNDNVFvVkhSZ1BGeEFqWHY1dmFoWWVDaDRYRkFsQkZDOEZFd3dNQ3dVR2V4NGRJV3dnQVlMRS9uV0tBM0JEVXdRK0hnS21CeGNWR0NGcEZ4RVFBUWNyV2dBQUEvL2YvN2dEZkFSZkFDb0FNd0JhQUFBQk56WXpNaFlIRkFjV0Z3WUNEd0VHQndZaklpWTNORFkvQVE0QkR3RU9BUWNHSXlJbU56NEJOeEkzQXdjM05qOEJKd2NHRXdZaklpWTNORGMyTno0Qk55TTJNeklYRkFZUEFSWUhCZ2NXQnc0Qkl5SW5OamMwTHdFR0FnZ1pNQmNpTXdFVEhnWWtqQ29LQ3dRaE1CMHhBUm9FRGhRb0VoTVVMZ2hZVEJjakFRSXlFK3oya0ZOZUl4Z2RDRFVROFVZOERSRUJGb2h1QWdjQ0FVUXNEQWtRQ0FnQkFnRUlBd0VDTGk0T0JBUUhDUWs0QXVVS0ZSMFlEeGNRSTE3K2Iyb1dIZ29lRnhRSlFSUXZCUk1NREFzRkJuc2VIU0ZzSUFHQ3hQNTFpZ053UTFNRVBoNEJ1VElLQ1E4Y2hGVUNCQUkzQ1FRY0RBME1HeGt5RlJVZlBnZ0xFQnNiRnprQUFBUC8zLys0QTI4RDNnQXFBRE1BWWdBQUFUYzJNeklXQnhRSEZoY0dBZzhCQmdjR0l5SW1OelEyUHdFT0FROEJEZ0VIQmlNaUpqYytBVGNTTndNSE56WS9BU2NIQmdFdUFTTWlEd0VHSXlJbkZ5WTNQZ0UvQWlNMk16SVdCeFFHRlJRZkFSWVhOajhCSXpZek1oVUdCdzRCSXlJQ0NCa3dGeUl6QVJNZUJpU01LZ29MQkNFd0hURUJHZ1FPRkNnU0V4UXVDRmhNRnlNQkFqSVQ3UGFRVTE0akdCMElOUkFCSndjb0VBUUlJQ3dTQkFJQkhRRUJPU2tHSEFFckd4RVdBUU1DQWdZSUhCVUpBU3NYQ1FJNEppZ1RDZ0xsQ2hVZEdBOFhFQ05lL205cUZoNEtIaGNVQ1VFVUx3VVREQXdMQlFaN0hoMGhiQ0FCZ3NUK2RZb0RjRU5UQkQ0ZUFiQUJKZ0lXSVFFQkV4RVlQeGNDRWhnUUVRSUhBUU1FREJVTUJRZ0dJZzhjSmg4WEFBQUFBQVQvMy8rNEEzd0QzZ0FxQURNQVFnQlRBQUFCTnpZek1oWUhGQWNXRndZQ0R3RUdCd1lqSWlZM05EWS9BUTRCRHdFT0FRY0dJeUltTno0Qk54STNBd2MzTmo4Qkp3Y0dFeU1tTno0Qk16SVdCdzRCSXlJbk55TW1OejRCTXpJZkFSWUhEZ0VqSWljQ0NCa3dGeUl6QVJNZUJpU01LZ29MQkNFd0hURUJHZ1FPRkNnU0V4UXVDRmhNRnlNQkFqSVQ3UGFRVTE0akdCMElOUkJxQWlFQ0FsMG1HeHdDQVZZa0JBN1lBaUFDQWw4b0JRNE9GUUlDV1NZSEN3TGxDaFVkR0E4WEVDTmUvbTlxRmg0S0hoY1VDVUVVTHdVVERBd0xCUVo3SGgwaGJDQUJnc1QrZFlvRGNFTlRCRDRlQWFVUkd5VkFJQlFqUHdJTUV5RXNUZ1lGR0J3cVN3TUFCUC9mLzdnRHpBUlRBQ29BTXdCSkFGZ0FBQUUzTmpNeUZnY1VCeFlYQmdJUEFRWUhCaU1pSmpjME5qOEJEZ0VQQVE0QkJ3WWpJaVkzUGdFM0VqY0RCemMyUHdFbkJ3WVROamMrQVJjV0J3WUhEZ0VuSmljdUFTY21OejRCRnljM0JnY21JeUltSXc0QkZ4WTJBZ2daTUJjaU13RVRIZ1lrakNvS0N3UWhNQjB4QVJvRURoUW9FaE1VTGdoWVRCY2pBUUl5RSt6MmtGTmVJeGdkQ0RVUXNESllKV3drVGdNRldDZDhOQ2tsQ1NNRklBTUJKL0lCQlNFYURBNEREUUlTREE4ZFZRTGxDaFVkR0E4WEVDTmUvbTlxRmg0S0hoY1VDVUVVTHdVVERBd0xCUVo3SGgwaGJDQUJnc1QrZFlvRGNFTlRCRDRlQW9ZcURCQUZFU2xNVHo0Y0dBTURCZ01aQlJrdUpFcEtCQWdIQWdJQkVpb01FUzhBQUFBQy85My91QVEyQXhVQVhBQmxBQUFCTXg0QkJ3NEJCdzRCQnpVSEJnOEJGak15TmpNeUZSUUdCd1lITXc0RUJ3WUhCak15TnhZSEZBWVZGQllWRGdFSE13WWpJaWNHSXlJbU56UTJQd0VPQVE4QkRnRUhCaU1pSmpjK0FUY1NOd2MzTmpNeUZoYzJNeklCQnpjMlB3RW5Cd1lFQWdFYkdBSUNWem84TGhBQ0xROEtFUk1TUUFvU0F3RXRTQUVPRkFZTkZCVlZBUUZiR2tJUkFnUVZBVWNwQVZsSkZUb2FHQjR3QVJvRURoUW9FeElVTGdoWVRCY2tBUUkwRXV6MkFSazBFeDB4QnF4ckVQMldWRjhqR0IwSk5Cb0RFUUVZRlNsWENSQVVGZ0VETVNVYUNBa0tBUWNDVlJrREJRSUNBUUZ2SWc4SUJnOEVEd01HRkFRUlFBNFlCQW9YRkFsQkZDOEZFd3dNQ3dVR2V4OGNJWEFjQVlMRUFRb1ZHaFEvL2thS0EzQkRVd1ErTWdBQUFBQUIvOWoralFNVkF2d0Fad0FBQXlNdUFUYytBVFUrQWpNeUZ5TVhOanNCUGdFM05pY2pJaTRDTnpZM0xnRTNQZ00zTmpNeUZ5TVdCd1lIRGdFaklpWTNORFkzTmlNaUR3RXpEZ0lIRGdJV016STJNekllQVJVT0FSVUdGaFVPQVE4Qk5RY2VBUjhCSGdFSEJnY0dJeUlCQVJBV0FRRUlEQkFuSEFzUkFROEtCUU0vUndFQ0RoVVZJQ0lSQVFJclAwRUVCVlo3aWp4WVVRb1lBb01GQlMwWFZTWWFHQUVOQVFFVkRCVVRBaE1XTEJzM093UXFHaHhFRndvWEdBRU1BUmtDdVZFSkRBOHFEQXdpSHdFRmlFTmpKZjZVQWhzYUJoa0JGeGNXRHc0Q0F4Y1BDUWtEQ1JNUEpTc1RTMHhrejU5MUZTa0NFbkU5VVNVcEZSUUdKQXdkQndnS0RpWWVQSDFLSnljRURnd0hJZ2dKRHdValV3SVBBUklDRGdJRUN4NGVVMFVqQUFBQUFBSUFCUCsyQXVNRUhBQkVBRm9BQUFFekhnRUhEZ0VIRGdFUEFRWVBBUll5TmpNeUZSUUhCZ2N6RGdRSERnRUhCak15TnhZVkZBWVZCaGNXRlE0QkJ6TUdJeUlqQmpjME56WVNOejRCTnpZek1pYzNQZ0V6TWhjR0J3NEJJeUl2QVNZMUp5NEJKeFVDcndFYUdRSUNWem82TUJJR0pSQU1FeVJBQ2hFRUtrb0JEUk1IRFJVVkdENEJBVndhUWc0RUFoVUNBVWdvQVZ0R0F3ZW9CQUljZ0hRTUdoZkFaeEdlQVFKQksxUVBDQXdJRng4VUVnTUlDUTB6QXdNQ0FSa1VLbGNKRGhVV0J5c21HZ2dKQ2dJSVZoZ0RCQU1DQWdFZFlCTVFDQVlOQWc4RUVRb0NCQkZBRGhjQ1JBTUdrd0VEcGhGbUMwWEJBU2tyTkE5QU15Y0tEQU1FRWhNNEJRRUFBQUlBQlArMkF3QUVJQUJFQUZjQUFBRXpIZ0VIRGdFSERnRVBBUVlQQVJZeU5qTXlGUlFIQmdjekRnUUhEZ0VIQmpNeU54WVZGQVlWQmhjV0ZRNEJCek1HSXlJakJqYzBOellTTno0Qk56WXpNZ016TmpNeUZnY0dCd1lqSWpVMk54VTNQZ0VDcndFYUdRSUNWem82TUJJR0pSQU1FeVJBQ2hFRUtrb0JEUk1IRFJVVkdENEJBVndhUWc0RUFoVUNBVWdvQVZ0R0F3ZW9CQUljZ0hRTUdoZkFaeEVDQVE4WEh5MEJBaDUrUVNJQ0N3Y09Wd01DQVJrVUtsY0pEaFVXQnlzbUdnZ0pDZ0lJVmhnREJBTUNBZ0VkWUJNUUNBWU5BZzhFRVFvQ0JCRkFEaGNDUkFNR2t3RURwaEZtQzBVQkV3Y1hGUmdoYVJjUkVBRUhLMW9BQUFBQ0FBVC90Z05HQkdvQVJBQnJBQUFCTXg0QkJ3NEJCdzRCRHdFR0R3RVdNall6TWhVVUJ3WUhNdzRFQnc0QkJ3WXpNamNXRlJRR0ZRWVhGaFVPQVFjekJpTWlJd1kzTkRjMkVqYytBVGMyTXpJbkJpTWlKamMwTnpZM1BnRTNJell6TWhjVUJnOEJGZ2NHQnhZSERnRWpJaWMyTnpRdkFRWUNyd0VhR1FJQ1Z6bzZNQklHSlJBTUV5UkFDaEVFS2tvQkRSTUhEUlVWR0Q0QkFWd2FRZzRFQWhVQ0FVZ29BVnRHQXdlb0JBSWNnSFFNR2hmQVp4RkZSandORVFFV2lHNENCd0lCUkN3TUNSQUlDQUVDQVFnREFRSXVMZzRFQkFjSkNUZ0RBZ0VaRkNwWENRNFZGZ2NySmhvSUNRb0NDRllZQXdRREFnSUJIV0FURUFnR0RRSVBCQkVLQWdRUlFBNFhBa1FEQnBNQkE2WVJaZ3RGUURJS0NROGNoRlVDQkFJM0NRUWNEUXdNR3hreUZSVWZQZ2dMRUJzYkZ6a0FBQUFEQUFUL3RnTkpBOW9BUkFCVEFHUUFBQUV6SGdFSERnRUhEZ0VQQVFZUEFSWXlOak15RlJRSEJnY3pEZ1FIRGdFSEJqTXlOeFlWRkFZVkJoY1dGUTRCQnpNR0l5SWpCamMwTnpZU056NEJOell6TWljakpqYytBVE15RmdjT0FTTWlKemNqSmpjK0FUTXlId0VXQnc0Qkl5SW5BcThCR2hrQ0FsYzZPakFTQmlVUURCTWtRQW9SQkNwS0FRMFRCdzBWRlJnK0FRRmNHa0lPQkFJVkFnRklLQUZiUmdNSHFBUUNISUIwREJvWHdHY1J5UUloQWdKZEpoc2NBZ0ZXSkFRTzJBSWdBZ0pmS0FVT0RoVUNBbGttQ0FvREFnRVpGQ3BYQ1E0VkZnY3JKaG9JQ1FvQ0NGWVlBd1FEQWdJQkhXQVRFQWdHRFFJUEJCRUtBZ1FSUUE0WEFrUURCcE1CQTZZUlpndEZIUkViSlVBZ0ZDTS9BZ3dUSVN4T0JnVVlIQ3BMQXdBQUF2L3UvOUFDcGdRbkFCc0FNUUFBQVNNR0FnY09BeU1pTnpZM05oSTJOejRDTnpZek1oWUhCZ00zUGdFek1oY0dCdzRCSXlJdkFTWTFKeTRCSnhVQ0tBRlgxQmtOTFRRaEVGWUNBU0ljaFhFbkZpOHBFQmNxRlJzQkFtUUJBa0VyVkE4SURBZ1hIeFFTQXdnSkRUTURBcXFwL213d0pERVNCaXNZUWpFQS84dzNIeFFRR2lVWEZoVUJDZ0VwS3pRUFFETW5DZ3dEQkJJVE9BVUJBQUFBQUFMLzd2L1FBdW9FS1FBYkFDNEFBQUVqQmdJSERnTWpJamMyTnpZU05qYytBamMyTXpJV0J3WVRNell6TWhZSEJnY0dJeUkxTmpjVk56NEJBaWdCVjlRWkRTMDBJUkJXQWdFaUhJVnhKeFl2S1JBWEtoVWJBUUkvQVE4WEh5MEJBaDUrUVNJQ0N3Y09Wd0txcWY1c01DUXhFZ1lyR0VJeEFQL01OeDhVRUJvbEZ4WVZBVm9IRnhVWUlXa1hFUkFCQnl0YUFBQUMvKzcvMEFMckJFOEFHd0JDQUFBQkl3WUNCdzRESXlJM05qYzJFalkzUGdJM05qTXlGZ2NHSndZaklpWTNORGMyTno0Qk55TTJNeklYRkFZUEFSWUhCZ2NXQnc0Qkl5SW5OamMwTHdFR0FpZ0JWOVFaRFMwMElSQldBZ0VpSElWeEp4WXZLUkFYS2hVYkFRSkpSandORVFFV2lHNENCd0lCUkN3TUNSQUlDQUVDQVFnREFRSXVMZzRFQkFjSkNUZ0NxcW4rYkRBa01SSUdLeGhDTVFEL3pEY2ZGQkFhSlJjV0ZXTXlDZ2tQSElSVkFnUUNOd2tFSEF3TkRCc1pNaFVWSHo0SUNoRWJHeGM1QUFBRC8rNy8wQU1CQTlzQUd3QXFBRHNBQUFFakJnSUhEZ01qSWpjMk56WVNOamMrQWpjMk16SVdCd1luSXlZM1BnRXpNaFlIRGdFaklpYzNJeVkzUGdFek1oOEJGZ2NPQVNNaUp3SW9BVmZVR1EwdE5DRVFWZ0lCSWh5RmNTY1dMeWtRRnlvVkd3RUN1Z0loQWdKZEpoc2NBZ0ZXSkFRTzJBSWdBZ0pmS0FVT0RoVUNBbGttQ0FvQ3FxbitiREFrTVJJR0t4aENNUUQvekRjZkZCQWFKUmNXRlZ3Ukd5VkFJQlFqUHdJTUV5RXNUZ1VHR0J3cVN3TUFBdi9NLzdNRENnTUJBQ2NBUGdBQVB3RWlKamMyUHdFK0FUTTNJelkzUGdNek1oY1dCd1lIRGdFaklpY0dJeUltTnpZM0ppTUZCejRCTnpZbUp3WVBBUjRCQndZSE53NEJEd0VPQVJvQkl5d0JBajhURG1KSURRRTVJUVVpTEVrZmJuSXdCUU11T3YxekVoUWtQU2c2QVEweE9pUUJGdzV5cWdVQ0xESWNFaFFmSXdFQ0xBRUhTUkFOQWhidUFoWVFHeGNDSHpNWVgwWUpYaW9YaURwVlNHWisxZ1E1UHlwU2dBSmlNVG1xVlNwQkpDMHRMUWdlRkNBakFRSWZBeUVNTkFBQUFBTC82Ly9XQTAwRHZRQTFBR1FBQUJNelBnRXpNaGNXQndZSEZ6NEJOejRCTXpJV0J4UUhCaFFHQndZQ0JnY0dJd1luTGdFMkp3NENEd0VPQVNNaUpqYzBOellTQVM0Qkl5SVBBUVlqSWljWEpqYytBVDhDSXpZek1oWUhGQVlWRkI4QkZoYzJQd0VqTmpNeUZRWUhEZ0VqSXMwQkpYQXpGeE1iQlFJRENBbGtFUjkyTWhVYUFRZ0lEQllxbEhjV1F5RUlIUmdKQ3dvcU9CVVFFUkZISVJNWEFRY1hpd0h5QnlnUUJBZ2dMQklFQWdFZEFRRTVLUVljQVNzYkVSWUJBd0lDQmdnY0ZRa0JLeGNKQWpnbUtCTUtBZlpOZ3c5L1VERVhBaENZSlRwRERnd0ZEZ2dvT3gwNS91dlZDU0lCQkFLRGdDSlZZaDBTRXg0aURnd0pDMU1CUEFGK0FTWUNGaUVCQVJNUkdEOFhBaElZRUJFQ0J3RURCQXdWREFVSUJpSVBIQ1lmRndBQUF3QXEvN0lET1FRWkFCb0FKUUE3QUFBQk5qTXlGell6TWhjVUh3RVdCd1lDQndZaklpWTNOamNWUGdFRE5oSTNBQThCRmhjM05nRTNQZ0V6TWhjR0J3NEJJeUl2QVNZMUp5NEJKeFVCZ1VsTkhob2xLVUFrQndRSUFnWjRUS2FyYTJJRUI0c2tiaGRWaGd6KytUSURDUndTRndFekFRSkJLMVFQQ0F3SUZ4OFVFZ01JQ1EwekF3TEJNd29oUFFJY0Z5RW5adjcvWTlWNlU0L2dBVFo4L2FoVUFTQjYvdkdsRXo0TkRSQURoQUVwS3pRUFFETW5DZ3dEQkJJVE9BVUJBQUFBQUFNQUt2K3lBNG9FS0FBYUFDVUFPQUFBQVRZek1oYzJNeklYRkI4QkZnY0dBZ2NHSXlJbU56WTNGVDRCQXpZU053QVBBUllYTnpZQk16WXpNaFlIQmdjR0l5STFOamNWTno0QkFZRkpUUjRhSlNsQUpBY0VDQUlHZUV5bXEydGlCQWVMSkc0WFZZWU0vdmt5QXdrY0VoY0I0d0VQRng4dEFRSWVma0VpQWdzSERsY0N3VE1LSVQwQ0hCY2hKMmIrLzJQVmVsT1A0QUUyZlAyb1ZBRWdldjd4cFJNK0RRMFFBK0VIRnhVWUlXa1hFUkFCQnl0YUFBQURBQ3Ivc2dONkJHRUFHZ0FsQUV3QUFBRTJNeklYTmpNeUZ4UWZBUllIQmdJSEJpTWlKamMyTnhVK0FRTTJFamNBRHdFV0Z6YzJBUVlqSWlZM05EYzJOejRCTnlNMk16SVhGQVlQQVJZSEJnY1dCdzRCSXlJbk5qYzBMd0VHQVlGSlRSNGFKU2xBSkFjRUNBSUdlRXltcTJ0aUJBZUxKRzRYVllZTS92a3lBd2tjRWhjQlNrWThEUkVCRm9odUFnY0NBVVFzREFrUUNBZ0JBZ0VJQXdFQ0xpNE9CQU1JQ1FrNEFzRXpDaUU5QWh3WElTZG0vdjlqMVhwVGorQUJObno5cUZRQklIcis4YVVUUGcwTkVBTDlNZ29KRHh5RVZRSUVBamNKQkJ3TURRd2JHVElWRlI4K0NBb1JHeHNYT1FBREFDci9zZ04yQStRQUdnQWxBRlFBQUFFMk16SVhOak15RnhRZkFSWUhCZ0lIQmlNaUpqYzJOeFUrQVFNMkVqY0FEd0VXRnpjMkFTNEJJeUlQQVFZaklpY1hKamMrQVQ4Q0l6WXpNaFlIRkFZVkZCOEJGaGMyUHdFak5qTXlGUVlIRGdFaklnR0JTVTBlR2lVcFFDUUhCQWdDQm5oTXBxdHJZZ1FIaXlSdUYxV0dEUDc1TWdNSkhCSVhBWWtIS0JBRUNDQXNFZ1FDQVIwQkFUa3BCaHdCS3hzUkZnRURBZ0lHQ0J3VkNRRXJGd2tDT0NZb0V3b0N3VE1LSVQwQ0hCY2hKMmIrLzJQVmVsT1A0QUUyZlAyb1ZBRWdldjd4cFJNK0RRMFFBdmdCSmdJV0lRRUJFeEVZUHhjQ0VoZ1FFUUlIQVFNRURCVU1CUWdHSWc4Y0poOFhBQUFBQUFRQUt2K3lBNDBENmdBYUFDVUFOQUJGQUFBQk5qTXlGell6TWhjVUh3RVdCd1lDQndZaklpWTNOamNWUGdFRE5oSTNBQThCRmhjM05oTWpKamMrQVRNeUZnY09BU01pSnpjakpqYytBVE15SHdFV0J3NEJJeUluQVlGSlRSNGFKU2xBSkFjRUNBSUdlRXltcTJ0aUJBZUxKRzRYVllZTS92a3lBd2tjRWhmV0FpRUNBbDBtR3h3Q0FWWWtCQTdZQWlBQ0FsOG9CUTRPRlFJQ1dTWUlDZ0xCTXdvaFBRSWNGeUVuWnY3L1k5VjZVNC9nQVRaOC9haFVBU0I2L3ZHbEV6NE5EUkFDOHhFYkpVQWdGQ00vQWd3VElTeE9CZ1VZSENwTEF3QUJBQllBalFNUUFuVUFQQUFBQVRNMk16SWVBUWNPQVFjV0JoY09BU01pSmljVkppY0hCZzhCRGdRaklpY3VBVGMwTndjMk55NEJKeTRCTnhVMlB3RWpOak15RmhjMk53SnZBVGdWRFNBbUFRR2lRZ2NKRFFOUExpWVdFQVFGRmdjbEZnUWFFeU11SFRNQkVBOEJEZ0dZWGdzR0RCWVdBUVVNRWdGR095ZGxCaTR0QWxRaEJSZ1ZFMzRrSHFvRUVoRWFOUUVRRFE4REd4QURGd3dSQ1JJRUNna01HUUdWTHc5S0R3VVBEQUVSREF3a015UWVGUUFBQXdBcC8zZ0RRZ05YQURBQU53QkRBQUFCTmpNeUZ6WTdBVFkzSXpjMk16SUhCaFUxQmdjR0J4Y1dCd1lDQndZaklpY0hCaU1pTnpZM0ZUY21OelkzRlQ0QkZ3WUhGelkzQmdNK0FUY25EZ0VIRmhjM05nR0JTVTBlR2lRdEN4ZENBd1lhQ0JrQkFRUW1BaElLQ0FJR2VFeW1xalFzTWd3T0VnSUNJZ2MrQlFlS0pXNVBleThJakpSaGd6ZHVKd2dadlRRT0NSRVhBc0V6Q2lBbUlBRUdJUUlGQVJRcUZoY3NJU2RtL3Y5ajFSSTlEeHNmTEFFSk4yS040Z0UzZkkyanFRUy93UTcrRWphdlhRVWcrVDhQQkEwUUFBQUNBRGIvMEFOMkJBWUFNZ0JJQUFBQk1oWUhEZ0lIQmpNeUVqYytBek15RnpZek1oWUhGUTRCQWdjT0FTTWlKamMwTnlNT0FTTWlKamMrQXpjMlB3RStBVE15RndZSERnRWpJaThCSmpVbkxnRW5GUUdwR1NJQ0FWbGlDUUlQSHNsaEVRNGdIeEVPRUNBbUZ4b0JBMmloT0FoUEtSOFlBZ0lLQldVbVVWMEVBeXhQUEN3L3lBRUNRU3RVRHdnTUNCY2ZGQklEQ0FrTk13TUMveWNhR1ptOVFSY0JDNUViRmlnUkNDQVpHQWdVeC82M2xDUXZHaDRHRENRbldFNDdqcHhvU0hTeUFTa3JOQTlBTXljS0RBTUVFaE00QlFFQUFBQUNBRGIvMEFOMkEvSUFNZ0JGQUFBQk1oWUhEZ0lIQmpNeUVqYytBek15RnpZek1oWUhGUTRCQWdjT0FTTWlKamMwTnlNT0FTTWlKamMrQXpjMkpUTTJNeklXQndZSEJpTWlOVFkzRlRjK0FRR3BHU0lDQVZsaUNRSVBIc2xoRVE0Z0h4RU9FQ0FtRnhvQkEyaWhPQWhQS1I4WUFnSUtCV1VtVVYwRUF5eFBQQ3cvQVZvQkR4Y2ZMUUVDSG41QklnSUxCdzVYQXY4bkdobVp2VUVYQVF1Ukd4WW9FUWdnR1JnSUZNZit0NVFrTHhvZUJnd2tKMWhPTzQ2Y2FFaDA3QWNYRlJnaGFSY1JFQUVISzFvQUFBQUFBZ0EyLzlBRGlnUnFBRElBV1FBQUFUSVdCdzRDQndZek1oSTNQZ016TWhjMk16SVdCeFVPQVFJSERnRWpJaVkzTkRjakRnRWpJaVkzUGdNM05pVUdJeUltTnpRM05qYytBVGNqTmpNeUZ4UUdEd0VXQndZSEZnY09BU01pSnpZM05DOEJCZ0dwR1NJQ0FWbGlDUUlQSHNsaEVRNGdIeEVPRUNBbUZ4b0JBMmloT0FoUEtSOFlBZ0lLQldVbVVWMEVBeXhQUEN3L0FTOUdQQTBSQVJhSWJnSUhBZ0ZFTEF3SkVBZ0lBUUlCQ0FNQkFpNHVEZ1FEQ0FrSk9BTC9KeG9abWIxQkZ3RUxrUnNXS0JFSUlCa1lDQlRIL3JlVUpDOGFIZ1lNSkNkWVRqdU9uR2hJZEVjeUNna1BISVJWQWdRQ053a0VIQTBNREJzWk1oVVZIejRJQ3hBYkd4YzVBQUFBQXdBMi85QURoQVB6QURJQVFRQlNBQUFCTWhZSERnSUhCak15RWpjK0F6TXlGell6TWhZSEZRNEJBZ2NPQVNNaUpqYzBOeU1PQVNNaUpqYytBemMyTnlNbU56NEJNeklXQnc0Qkl5SW5OeU1tTno0Qk16SWZBUllIRGdFaklpY0JxUmtpQWdGWllna0NEeDdKWVJFT0lCOFJEaEFnSmhjYUFRTm9vVGdJVHlrZkdBSUNDZ1ZsSmxGZEJBTXNUendzUDZJQ0lRSUNYU1liSEFJQlZpUUVEdGdDSUFJQ1h5Z0ZEZzRWQWdKWkpnY0xBdjhuR2htWnZVRVhBUXVSR3hZb0VRZ2dHUmdJRk1mK3Q1UWtMeG9lQmd3a0oxaE9PNDZjYUVoMFBSRWJKVUFnRkNNL0Fnd1RJU3hPQlFZWUhDcExBd0FBQUFMLy8vK25BdUlEOGdBekFFWUFBQUVYRmhjL0FUWTNCell6TWhZSERnSUhEZ0lIRnpJZUFSVVVCek1HSXlJbU56WTNOajhCQmlNaU56UTNOamMrQVRNeUV6TTJNeklXQndZSEJpTWlOVFkzRlRjK0FRR05Bd1FKQ1N4clB3RVhIQmNkQVFJL2J3a2NqMWdwQ0FJR0JBNEJQMVF2UWdFQ0JSdGtXQUlFSEFRRURoSUhXQ1VpdlFFUEZ4OHRBUUllZmtFaUFnc0hEbGNDdGhjaVl3azFneWtCQ2hNV0pHSitEQ2E3Z2t3R0N4SUlEUTQ0SlJzTUNUV0hkZ0V0Q2hhZlVDcE9BUW9IRnhVWUlXa1hFUkFCQnl0YUFBQUFBdi9pL3ZBRFVBTnBBRG9BVGdBQUFUTTJOeFUzTlQ0QlB3RTJNeklYTlJRR0ZRWUhGaFVPQWdjM05qTXlGZ2NPQVFjR0l5SUdJeUluQmdjR0l5SW1OelkzUGdFU055TStBUk1uQmlNaUppTU9BUThCRnhZWE1oWXpNajRCQWNNQkJnSUVBalF3QmlJUE9oUUJBU0VEQVNJNkRpd1lHbVpjQXdWOFpsbHlGbGdWRHhabVVRc1ZGeU1CQWhJdmdLRXJBUTA1a2djQkJBbytEZzB2RmtnSEVBTUVId2swVmlrQzd3OENBUVlGRmpFVEFRUXpBUUVFQVJVdUVnSVNNMGdWQWdOUVIxVy9Qak1GQXExeEVDVWVIQ0YyK0FFZFZCaDEvcU1GQVJrSVB4YUNDeHNHQWxwcUFBSC8rZitKQXpJREdBQlpBQUFYQmlNaUpqYzBOelkvQVRZL0FRYzJNeklYTnlNM1BnRXpNaDhCSGdRSERnRVBBUllIRGdJaklpWTNOamNIUGdFekZoYzJOelluSmpjMk55TXlOek0rQVRjME5qYzJKaWN6SXlJR0J6VUhCZzhCQmc4QkJzRXlRU1l2QWdRK1RpY3ZPajBCSkRnVUZ4SUJIUnBPSVFnT0V4WVhKaE1PQVFSRUxRa3RCQVJpcDFvcU5BTUNDd0VkTnlrY0MxTUVBeFU2QXdKQUFRRUJBVFU5RHdjQkFSUU5BUVVsWkNnQkNoSVZOeG9SU0VVeUtpa01GRm1wVjF4dWRnRXpEaEFiRngwQ0JBVUhFaGdxSEVTRUpBczFVVlMxZnpRdUdoOEJKaHdHQmxGWEp5WVhLaWdZQVIxRE9nUVlCd3NKQVdjM0FRSUxIVFdITnlxK0FBQUFBQU1BRFAvUkFtSUM4QUFpQURNQVNRQUFBUllYRmhVVU16WXpNZ2NHQWdjT0FTTWlKajhCSnc0Qkl5SW1OejRCTno0Qk16SURNajRIUHdFT0FRY0dGaE0zUGdFek1oY0dCdzRCSXlJdkFTWTFKeTRCSnhVQnowSUtBZ29PQVI4Q0NGc0VBek1nSENZQkF3Z1RaMEJEUndRQ0xTRTUyVWdINVFrU0VnMFFDUkFGRUFFUFIzRUVBUjdMQVFKQksxUVBDQXdJRng4VUVnTUlDUTB6QXdIakRSVUdCd29DUVRIKzVRMFlHeE1RQ2dVYkpURTVLb0F4U29YK1pnVU9DeGtOSUFvakFpQWNUeDRQR3dKUUFTa3JOQTlBTXljS0RBTUVFaE00QlFFQUFBQUFBd0FNLzlFQ3FRTHVBQ0lBTXdCR0FBQUJGaGNXRlJRek5qTXlCd1lDQnc0Qkl5SW1Qd0VuRGdFaklpWTNQZ0UzUGdFek1nTXlQZ2MvQVE0QkJ3WVdBVE0yTXpJV0J3WUhCaU1pTlRZM0ZUYytBUUhQUWdvQ0NnNEJId0lJV3dRRE15QWNKZ0VEQ0JOblFFTkhCQUl0SVRuWlNBZmxDUklTRFJBSkVBVVFBUTlIY1FRQkhnRnhBUThYSHkwQkFoNStRU0lDQ3djT1Z3SGpEUlVHQndvQ1FUSCs1UTBZR3hNUUNnVWJKVEU1S29BeFNvWCtaZ1VPQ3hrTklBb2pBaUFjVHg0UEd3S2NCeGNWR0NGcEZ4RVFBUWNyV2dBREFBei8wUUxKQTFjQUlnQXpBRm9BQUFFV0Z4WVZGRE0yTXpJSEJnSUhEZ0VqSWlZL0FTY09BU01pSmpjK0FUYytBVE15QXpJK0J6OEJEZ0VIQmhZQkJpTWlKamMwTnpZM1BnRTNJell6TWhjVUJnOEJGZ2NHQnhZSERnRWpJaWMyTnpRdkFRWUJ6MElLQWdvT0FSOENDRnNFQXpNZ0hDWUJBd2dUWjBCRFJ3UUNMU0U1MlVnSDVRa1NFZzBRQ1JBRkVBRVBSM0VFQVI0QkNFWThEUkVCRm9odUFnY0NBVVFzREFrUUNBZ0JBZ0VJQXdFQ0xpNE9CQU1JQ1FrNEFlTU5GUVlIQ2dKQk1mN2xEUmdiRXhBS0JSc2xNVGtxZ0RGS2hmNW1CUTRMR1EwZ0NpTUNJQnhQSGc4YkFlZ3lDZ2tQSElSVkFnUUNOd2tFSEF3TkRCc1pNaFVWSHo0SUN4QWJHeGM1QUFBQUFBTUFEUC9SQXM4REJBQWlBRE1BWWdBQUFSWVhGaFVVTXpZek1nY0dBZ2NPQVNNaUpqOEJKdzRCSXlJbU56NEJOejRCTXpJRE1qNEhQd0VPQVFjR0ZnRXVBU01pRHdFR0l5SW5GeVkzUGdFL0FpTTJNeklXQnhRR0ZSUWZBUllYTmo4Qkl6WXpNaFVHQnc0Qkl5SUJ6MElLQWdvT0FSOENDRnNFQXpNZ0hDWUJBd2dUWjBCRFJ3UUNMU0U1MlVnSDVRa1NFZzBRQ1JBRkVBRVBSM0VFQVI0QlVRY29FQVFJSUN3U0JBSUJIUUVCT1NrR0hBRXJHeEVXQVFNQ0FnWUlIQlVKQVNzWENRSTRKaWdUQ2dIakRSVUdCd29DUVRIKzVRMFlHeE1RQ2dVYkpURTVLb0F4U29YK1pnVU9DeGtOSUFvakFpQWNUeDRQR3dJTkFTWUNGaUVCQVJNUkdEOFhBaElZRUJFQ0J3RURCQXdWREFVSUJpSVBIQ1lmRndBQUFBUUFEUC9SQXNJQzNRQWlBRE1BUWdCVEFBQUJGaGNXRlJRek5qTXlCd1lDQnc0Qkl5SW1Qd0VuRGdFaklpWTNQZ0UzUGdFek1nTXlQZ2MvQVE0QkJ3WVdFeU1tTno0Qk16SVdCdzRCSXlJbk55TW1OejRCTXpJZkFSWUhEZ0VqSWljQnowSUtBZ29PQVI4Q0NGc0VBek1nSENZQkF3Z1RaMEJEUndRQ0xTRTUyVWdINVFrU0VnMFFDUkFGRUFFUFIzRUVBUjU2QWlFQ0FsMG1HeHdDQVZZa0JBN1lBaUFDQWw4b0JRNE9GUUlDV1NZSEN3SGpEUlVHQndvQ1FUSCs1UTBZR3hNUUNnVWJKVEU1S29BeFNvWCtaZ1VPQ3hrTklBb2pBaUFjVHg0UEd3SGJFUnNsUUNBVUl6OENEQk1oTEU0RkJoZ2NLa3NEQUFBQUFBUUFEUC9SQXdNRFZnQWlBRE1BU1FCWUFBQUJGaGNXRlJRek5qTXlCd1lDQnc0Qkl5SW1Qd0VuRGdFaklpWTNQZ0UzUGdFek1nTXlQZ2MvQVE0QkJ3WVdFelkzUGdFWEZnY0dCdzRCSnlZbkxnRW5KamMrQVJjbk53WUhKaU1pSmlNT0FSY1dOZ0hQUWdvQ0NnNEJId0lJV3dRRE15QWNKZ0VEQ0JOblFFTkhCQUl0SVRuWlNBZmxDUklTRFJBSkVBVVFBUTlIY1FRQkhyRXlXQ1ZzSkU0REJWZ25mRFFwSlFrakJTQURBU2Z5QVFVaEdnd09BdzBDRWd3UEhWVUI0dzBWQmdjS0FrRXgvdVVOR0JzVEVBb0ZHeVV4T1NxQU1VcUYvbVlGRGdzWkRTQUtJd0lnSEU4ZUR4c0N3Q29NRUFVUktVeFBQaHdZQXdNR0F4a0ZHUzRrU2tvRUNBY0NBZ0VTS2d3Ukx3QUFBd0FLLzdrRFp3SGxBRHdBU0FCU0FBQWxGUTRCQng0Qk16STJNeklYSGdJN0FUSWVBZ2NPQVNNaUpqOEJEZ0VqSWlZM1BnRTNQZ0V6TWhjV0J4UXpOak15RnpZek1oWUhCZ2NPQVFVeVBnSS9BUTRCQndZV0pTY21JeUlITXpJMk53S3VEWGNtQVJvTUZGa1RGUkVFQ0FVRkFRRUZCQU1CQXFGYlJtQURBaGhzUEVSSEJBSXVJVG5aU0NRaUhnRUtEZ0VIQ2xWZ01Ed0RBZ3djUmYzbUZDVWhFd3dPUjNBRUFSNEI0d1FLQlQwMUJDWlpBb0FCQmhjREVoSWdFUXdNQVFRR0Rna25NREFiRXgwcE1Ub3JmekJLaFE0TkZnb0NCelFzTkI0bFRFaFhHelVtSFNBY1VCMFBHOWdGQW5KUEdRQUFBQUgvc3Y2MUFqQUI3UUJWQUFBREl5WTNORDRCTlJVK0F6TXlId0UyTXo0Qk56WW5JeUltTnpZM0ZUY3VBVGMrQWpNeUZnY09BUWNPQWdjT0F3Y09BUlVHRmpNeU5qTXlGZ2NVQnc0QkR3RWVBUmNqRng0Q0J3WUhCaU1pS2dFakF3RUNDZ2dWSEJNSkVBNElCemcvQVFFTUV5b3lBUUlhRENjc0FnVjR4MnMzTUFFQ0xCY0pHaFVUSkRrb0R3MEJBUUVwSVFRUkJCd2RBUThrZUQ4VkRDVU5BUW9WRkJBQkEzazRXeHordXdRckF3WUpBZ0VVRHhvSkRRMENBeFVOQ0FnUUdSZ2ZBUkFQVERWYnVIc1pIUjAxQWhBVEJRTUZIVElaR1FJR0FoY2xBUklQRFE4dU5BUWdBUXdEQXdjTEdSSklQeDRBQUFBQUF3QUwvOGtDVkFNZ0FDb0FNd0JKQUFBbEZRNEJCeDRCTXpJMk16SVhIZ003QVRJZUFnY09BU01pSmpjK0FUYytBVE15QndZSE5RNEJKellqSWdZSE16STJFemMrQVRNeUZ3WUhEZ0VqSWk4QkpqVW5MZ0VuRlFGc0RYY21BUmtNRWxzVUZSSURCUVlFQkFFQkJRVURBUUtqV2w1TUF3UkNMMGlPWUc0RkFnc2ZRVkFCRXlFNkZRUW1WeDRCQWtFclZBOElEQWdYSHhRU0F3Z0pEVE1Ea1FFR0dBTVJFeUFRQ2dzRUFRUUdEUWtuTVVJL080ZzFVRmRoR3ljQlQwVitDVUV3VHdHekFTa3JOQTlBTXljS0RBTUVFaE00QlFFQUF3QUwvOGtDaWdNSkFDb0FNd0JHQUFBbEZRNEJCeDRCTXpJMk16SVhIZ003QVRJZUFnY09BU01pSmpjK0FUYytBVE15QndZSE5RNEJKellqSWdZSE16STJFek0yTXpJV0J3WUhCaU1pTlRZM0ZUYytBUUZzRFhjbUFSa01FbHNVRlJJREJRWUVCQUVCQlFVREFRS2pXbDVNQXdSQ0wwaU9ZRzRGQWdzZlFWQUJFeUU2RlFRbVY3TUJEeGNmTFFFQ0huNUJJZ0lMQnc1WGtRRUdHQU1SRXlBUUNnc0VBUVFHRFFrbk1VSS9PNGcxVUZkaEd5Y0JUMFYrQ1VFd1R3SHFCeGNWR0NGcEZ4RVFBUWNyV2dBQUFBTUFDLy9KQXJJRFRRQXFBRE1BV2dBQUpSVU9BUWNlQVRNeU5qTXlGeDRET3dFeUhnSUhEZ0VqSWlZM1BnRTNQZ0V6TWdjR0J6VU9BU2MySXlJR0J6TXlOaE1HSXlJbU56UTNOamMrQVRjak5qTXlGeFFHRHdFV0J3WUhGZ2NPQVNNaUp6WTNOQzhCQmdGc0RYY21BUmtNRWxzVUZSSURCUVlFQkFFQkJRVURBUUtqV2w1TUF3UkNMMGlPWUc0RkFnc2ZRVkFCRXlFNkZRUW1WMUpHUEEwUkFSYUliZ0lIQWdGRUxBd0pFQWdJQVFJQkNBTUJBaTR1RGdRRENBa0pPSkVCQmhnREVSTWdFQW9MQkFFRUJnMEpKekZDUHp1SU5WQlhZUnNuQVU5RmZnbEJNRThCRVRJS0NROGNoRlVDQkFJM0NRUWNEQTBNR3hreUZSVWZQZ2dMRUJzYkZ6a0FBQVFBQy8vSkFyWUMzQUFxQURNQVFnQlRBQUFsRlE0QkJ4NEJNekkyTXpJWEhnTTdBVEllQWdjT0FTTWlKamMrQVRjK0FUTXlCd1lITlE0Qkp6WWpJZ1lITXpJMkF5TW1OejRCTXpJV0J3NEJJeUluTnlNbU56NEJNeklmQVJZSERnRWpJaWNCYkExM0pnRVpEQkpiRkJVU0F3VUdCQVFCQVFVRkF3RUNvMXBlVEFNRVFpOUlqbUJ1QlFJTEgwRlFBUk1oT2hVRUpsY3hBaUVDQWwwbUd4d0NBVllrQkE3WUFpQUNBbDhvQlE0T0ZRSUNXU1lIQzVFQkJoZ0RFUk1nRUFvTEJBRUVCZzBKSnpGQ1B6dUlOVkJYWVJzbkFVOUZmZ2xCTUU4QkRSRWJKVUFnRkNNL0Fnd1RJU3hPQmdVWUhDcExBd0FDLy9mL3B3SVpBeEFBSEFBeUFBQVROVDRCTXpJV0J4UUhOUWNDQnc0Q0lnWUhCaU1pSmpjME56WVNFemMrQVRNeUZ3WUhEZ0VqSWk4QkpqVW5MZ0VuRmVVTlB5RWZLUUVCRlljWkNCVVhGUmdLQ0I4Z09nSVVISW1WQVFKQksxUVBDQXdJRng4VUVnTUlDUTB6QXdHeEFSY1pHQlVHQkFFcC92eE9LU3dKQ1E4VUtpQVhHMGNCQ3dGR0FTa3JOQTlBTXljS0RBTUVFaE00QlFFQUFBQUFBdi8yLzZjQ093THdBQnNBTGdBQUV6VStBVElXQnhRSE5RY0dCdzRDSWdZSEJpTWlKamMwTnpZU0FUTTJNeklXQndZSEJpTWlOVFkzRlRjK0FlUU9QMEFwQVFFV2RDc0pGUllWR0FvSUh5RTZBaFVjaUFFWEFROFhIeTBCQWg1K1FTSUNDd2NPVndHeEFSY1pHQlVHQkFFcDFYMHBMQWtKRHhRcUlCY2JSd0VMQVhRSEZ4VVlJV2tYRVJBQkJ5dGFBQUFBQUFMLzl2K25BbDBEVUFBY0FFTUFBQk0xUGdFek1oWUhGQWMxQndZSERnSWlCZ2NHSXlJbU56UTNOaEkzQmlNaUpqYzBOelkzUGdFM0l6WXpNaGNVQmc4QkZnY0dCeFlIRGdFaklpYzJOelF2QVFia0RqNGhJQ2tCQVJaMEt3a1ZGaFVZQ2dnZklUb0NGUnlJc0VZOERSRUJGb2h1QWdjQ0FVUXNEQWtRQ0FnQkFnRUlBd0VDTGk0T0JBTUlDUWs0QWJFQkZ4a1lGUVlFQVNuVmZTa3NDUWtQRkNvZ0Z4dEhBUXUzTWdvSkR4eUVWUUlFQWpjSkJCd05EQXdiR1RJVkZSOCtDQXNRR3hzWE9RQUFBQVAvOXYrbkFuZ0M4UUFiQUNvQU93QUFFelUrQVRNeUZnY1VCelVIQWdjT0FTWUdCd1lqSWlZM05EYzJFamNqSmpjK0FUTXlGZ2NPQVNNaUp6Y2pKamMrQVRNeUh3RVdCdzRCSXlJbjVBMC9JUjhwQVFFVmhSc0tIQmdoQ3drZUlUb0NGQ0NGUkFJaEFnSmRKaHNjQWdGV0pBUU8yQUlnQWdKZktBVU9EaFVDQWxrbUJ3c0JzUUVYR1JjVkJ3UUJLZjhBVWpJc0FnZ1NGQ29nRnh0TUFRYkZFUnNsUUNBVUl6OENEQk1oTEU0RkJoZ2NLa3NEQUFBREFCSC9jUU1EQXM4QVBRQlFBRllBQUFFM0ppY0dCeVkxTmo4Qk5qOEJKamMyTng0Q0Z3WUhCaFU3QVRjMk16SVdCd1lISng0QkJ3WUhEZ0VISWlZM0ppY1ZKamMrQVRjMlB3RStBZ00yTnlNR0J3NERCd1lYTlJjV016STJBemNpQnpNMkFmUUdIeEJtSndNQlBnWUdFeEJiQVFJMUV5TTNFUUVDQVFJSkUxOHJIRDhCQWxrUkpnNEZERmxNLzJNTlB3RWpIeFFEQklKWlhsb1JCeFlUWUdrUkN5c1dLR1JqUlFJRElBWUxGeTV0QndFSkFRUUVBYUlIT1JFdUFRSUREamdGQ0F3TU9TSVlEUUVMRmdZQ0FRRUJDejB5SERNaUNUOWVZOXhPUTFVQ05nNFRNQUVvTWs2YUtpY1FBZ0VEQXY2NFozOENBd1lqTlUwcUtTMEJDQW95QVpBTERBRUFBQUFBQXYvdi83c0Mxd0xkQUQ0QWJRQUFFell6TWhjMk16SUhGQWMrQVRNeUZnY0dCelVHQndZaklpWTNORDhCUGdnMU5DTWlEZ01IRGdFbUJnY09BU01pTGdJM05oSWxMZ0VqSWc4QkJpTWlKeGNtTno0QlB3SWpOak15RmdjVUJoVVVId0VXRnpZL0FTTTJNeklWQmdjT0FTTWl2aVlMQXdjbEZ5RUNBaXFzUWpvekF3UkRDaGxsYXhZY0FRWTZCUkVJRFFjSkJRVURFQThxT2lwTkVBc1JDQWtFQno4bEN4c2dGZ0VEc0FGaEJ5Z1FCQWdnTEJJRUFnRWRBUUU1S1FZY0FTc2JFUllCQXdJQ0JnZ2NGUWtCS3hjSkFqZ21LQk1LQVlRdkJRNHNDd2dtUHpZeFRub0JEeXFmRGc0RURHc0pIdzhaRFJRTERnb0ZGQjVFTkdnVkRnd0JDQXNSRlFRSUVnd3pBVXJQQVNZQ0ZpRUJBUk1SR0Q4WEFoSVlFQkVDQndFREJBd1ZEQVVJQmlJUEhDWWZGd0FBQUFBREFCNy94UUpsQXhFQUhBQXdBRVlBQUJNMk16SVdNell6TWpZek1oWUhEZ0VIQmdjaUl5SXVBemMrQVJjbkJpc0JEZ0lIRkI0RE9nRXpNajRCRXpjK0FUTXlGd1lIRGdFaklpOEJKalVuTGdFbkZlRVBFUVlVQnlJOUNTY0lUa2NFQkd0U1ExNENCU01uUUNFWUFnUjh6Z1lhRUFZQ1JqQUNBUVFFQ1FRTkF5dEFIQ2dCQWtFclZBOElEQWdYSHhRU0F3Z0pEVE1EQWFvSUF6SUVUa05UeDBFdkJBSU9HalluV3QyakJRY0RPVDBkQlFnRUF3RTdTd0lDQVNrck5BOUFNeWNLREFNRUVoTTRCUUVBQUFBQUF3QWUvOFVDakFNQUFCd0FNQUJEQUFBVE5qTXlGak0yTXpJMk16SVdCdzRCQndZSElpTWlMZ00zUGdFWEp3WXJBUTRDQnhRZUF6b0JNekkrQVJNek5qTXlGZ2NHQndZaklqVTJOeFUzUGdIaER4RUdGQWNpUFFrbkNFNUhCQVJyVWtOZUFnVWpKMEFoR0FJRWZNNEdHaEFHQWtZd0FnRUVCQWtFRFFNclFCeXVBUThYSHkwQkFoNStRU0lDQ3djT1Z3R3FDQU15QkU1RFU4ZEJMd1FDRGhvMkoxcmRvd1VIQXprOUhRVUlCQU1CTzBzQ1B3Y1hGUmdoYVJjUkVBRUhLMW9BQUFNQUh2L0ZBcTBEV2dBY0FEQUFWd0FBRXpZek1oWXpOak15TmpNeUZnY09BUWNHQnlJaklpNEROejRCRnljR0t3RU9BZ2NVSGdNNkFUTXlQZ0VUQmlNaUpqYzBOelkzUGdFM0l6WXpNaGNVQmc4QkZnY0dCeFlIRGdFaklpYzJOelF2QVFiaER4RUdGQWNpUFFrbkNFNUhCQVJyVWtOZUFnVWpKMEFoR0FJRWZNNEdHaEFHQWtZd0FnRUVCQWtFRFFNclFCeEdSandORVFFV2lHNENCd0lCUkN3TUNSQUlDQUVDQVFnREFRSXVMZzRFQXdnSkNUZ0JxZ2dETWdST1ExUEhRUzhFQWc0YU5pZGEzYU1GQndNNVBSMEZDQVFEQVR0TEFYd3lDZ2tQSElSVkFnUUNOd2tFSEEwTURCc1pNaFVWSHo0SUN4QWJHeGM1QUFNQUh2L0ZBcklDN3dBY0FEQUFYd0FBRXpZek1oWXpOak15TmpNeUZnY09BUWNHQnlJaklpNEROejRCRnljR0t3RU9BZ2NVSGdNNkFUTXlQZ0VUTGdFaklnOEJCaU1pSnhjbU56NEJQd0lqTmpNeUZnY1VCaFVVSHdFV0Z6WS9BU00yTXpJVkJnY09BU01pNFE4UkJoUUhJajBKSndoT1J3UUVhMUpEWGdJRkl5ZEFJUmdDQkh6T0Job1FCZ0pHTUFJQkJBUUpCQTBESzBBY2pnY29FQVFJSUN3U0JBSUJIUUVCT1NrR0hBRXJHeEVXQVFNQ0FnWUlIQlVKQVNzWENRSTRKaWdUQ2dHcUNBTXlCRTVEVThkQkx3UUNEaG8ySjFyZG93VUhBems5SFFVSUJBTUJPMHNCaVFFbUFoWWhBUUVURVJnL0Z3SVNHQkFSQWdjQkF3UU1GUXdGQ0FZaUR4d21IeGNBQUFBQUJBQWUvOFVDekFMeEFCd0FNQUEvQUZBQUFCTTJNeklXTXpZek1qWXpNaFlIRGdFSEJnY2lJeUl1QXpjK0FSY25CaXNCRGdJSEZCNERPZ0V6TWo0QkF5TW1OejRCTXpJV0J3NEJJeUluTnlNbU56NEJNeklmQVJZSERnRWpJaWZoRHhFR0ZBY2lQUWtuQ0U1SEJBUnJVa05lQWdVakowQWhHQUlFZk00R0doQUdBa1l3QWdFRUJBa0VEUU1yUUJ3aUFpRUNBbDBtR3h3Q0FWWWtCQTdZQWlBQ0FsOG9CUTRPRlFJQ1dTWUhDd0dxQ0FNeUJFNURVOGRCTHdRQ0RobzJKMXJkb3dVSEF6azlIUVVJQkFNQk8wc0JnQkViSlVBZ0ZDTS9BZ3dUSVN4T0JRWVlIQ3BMQXdBQUFBQURBRFVBVGdLcUFtWUFHZ0FvQURVQUFCTTNJaVkzTmo4QlBnRXpNaGMyTXpJV0J3NEJCd1lqSWlZaklqY25KamMrQVRNeUZnY09BU01pQXk0Qk56NEJOeFlIRGdFSElub0NIeWdCQWg4WkNaR1ZNaGtXR1Q5U0FRSTFNR0tISllVZERlNEJIUUlDVHlFVEd3RUJTaDhNV3hZVUFnRkJJeWNDQWpvY0JnRUNBaG9URlJJQ01Sc0JCUjRkRkM4VkZnUGtBZzRZSURZY0VoNDIvbW9CRkJBa1B3UU9IaDg2QlFBREFCei9rZ0p2QWcwQU1BQTNBRU1BQUJNMk16SVdNell6TWpZek1oYzJOeU16TmpNZUFoVUdCeFVHQnhZSERnTWlKd2NHSXlJbU56WS9BU1kzUGdFWE5DY0hNalkzQndZSEJoYzJOeWNHQnpVRzRROFBCeFFJSWowSkpBZ2lIQTg0QVFFQkFSSVJEd01lQkF3UEF3TTNXWWFTSmpZSEJ3Z0xBUUVRRUNnRUJIejdCYnM4ZXdudEJnRUJCaGg5QndNZVhnR3FDQU15QkFraURnRUJBdzhRRHhrR0R3c2dNVGlIZWxJSU5RY05DdzRZR0NnK1dkeVZBUS9LZkRnMEZnc1BIaHVNQndJUEFTa0FBQUFDQUEvLzB3THZBeU1BTHdCRkFBQTNOamMyTXpJV0J3WUhCZ2MrQWo4Q05qc0JNall6TWhZSEZBY0dBZ2MxQmlNaUpqYzBOeWNHSXlJbU56WTFBVGMrQVRNeUZ3WUhEZ0VqSWk4QkpqVW5MZ0VuRlJNYXF5b3JIeWtCQWcxQ1R6WmNLeW94S1E0cURSUTZDeGNsQWdRd3BoTXdTU0VxQVFnR1kxQTJSd0lDQWFFQkFrRXJWQThJREFnWEh4UVNBd2dKRFRNRFE2VFBJU0lhRlJWTHFoNVJORGRETXhvUkh4SUlCMHIrdHlFQk1Sa1VDd3NHUnpNeEJnVUNpZ0VwS3pRUFFETW5DZ3dEQkJJVE9BVUJBQUFBQWdBUC85TUM3d01NQUM4QVFnQUFOelkzTmpNeUZnY0dCd1lIUGdJL0FqWTdBVEkyTXpJV0J4UUhCZ0lITlFZaklpWTNORGNuQmlNaUpqYzJOUUV6TmpNeUZnY0dCd1lqSWpVMk54VTNQZ0VUR3FzcUt4OHBBUUlOUWs4MlhDc3FNU2tPS2cwVU9nc1hKUUlFTUtZVE1Fa2hLZ0VJQm1OUU5rY0NBZ0krQVE4WEh5MEJBaDUrUVNJQ0N3Y09WME9renlFaUdoVVZTNm9lVVRRM1F6TWFFUjhTQ0FkSy9yY2hBVEVaRkFzTEJrY3pNUVlGQXNFSEZ4VVlJV2tYRVJBQkJ5dGFBQUlBRC8vVEF3a0RWZ0F2QUZZQUFEYzJOell6TWhZSEJnY0dCejRDUHdJMk93RXlOak15RmdjVUJ3WUNCelVHSXlJbU56UTNKd1lqSWlZM05qVUJCaU1pSmpjME56WTNQZ0UzSXpZek1oY1VCZzhCRmdjR0J4WUhEZ0VqSWljMk56UXZBUVlUR3FzcUt4OHBBUUlOUWs4MlhDc3FNU2tPS2cwVU9nc1hKUUlFTUtZVE1Fa2hLZ0VJQm1OUU5rY0NBZ0g2Ump3TkVRRVdpRzRDQndJQlJDd01DUkFJQ0FFQ0FRZ0RBUUl1TGc0RUJBY0pDVGhEcE04aElob1ZGVXVxSGxFME4wTXpHaEVmRWdnSFN2NjNJUUV4R1JRTEN3WkhNekVHQlFIdU1nb0pEeHlFVlFJRUFqY0pCQndOREF3YkdUSVZGUjgrQ0FvUkd4c1hPUUFBQUFBREFBLy8wd01KQXZjQUx3QStBRThBQURjMk56WXpNaFlIQmdjR0J6NENQd0kyT3dFeU5qTXlGZ2NVQndZQ0J6VUdJeUltTnpRM0p3WWpJaVkzTmpVQkl5WTNQZ0V6TWhZSERnRWpJaWMzSXlZM1BnRXpNaDhCRmdjT0FTTWlKeE1hcXlvckh5a0JBZzFDVHpaY0t5b3hLUTRxRFJRNkN4Y2xBZ1F3cGhNd1NTRXFBUWdHWTFBMlJ3SUNBWE1DSVFJQ1hTWWJIQUlCVmlRRUR0Z0NJQUlDWHlnRkRnNFZBZ0paSmdnS1E2VFBJU0lhRlJWTHFoNVJORGRETXhvUkh4SUlCMHIrdHlFQk1Sa1VDd3NHUnpNeEJnVUIvQkViSlVBZ0ZDTS9BZ3dUSVN4T0JRWVlIQ3BMQXdBQUFBSUFKdjY5QXFJQzBBQTlBRkFBQUJNbU56NEJNeklXRnc0QkJ6NENOell6TWhZek1qYzJNeklXQndZSEJnOEJGZ2NVQnc0Q0J3WWpJaVkzTmo4Qk5qOEJKd1lqSWlZM1BnRTNOQUV6TmpNeUZnY0dCd1lqSWpVMk54VTNQZ0ZuQVFFQkpCb2lRZ3dDWUFRcFIwY1dQQjBJUHd3TEJCc1JHU1VCQVNScmt4UW1BUXd0T0JFSUh6MGdPUUVDTGhRcEVCRUZOaUlsTndNQ093SUJyQUVQRng4dEFRSWVma0VpQWdzSERsY0JkUVlHSGgwdEl4MjFMQmRkZGhwWERnTVFIQlVURjJQeElCc2pFQlVnT3lBWFRUTWhJVHNiUFJVYUJob3ZNeXJMSmhFQld3Y1hGUmdoYVJjUkVBRUhLMW9BQUFML1lQN1FBa3dETGdCREFFNEFBQmNWRHdFV0ZRWVBBVGNHSXlJbkZ5WTFORGNWTnlZMU5qY1ZOajhCUGdFL0FUWVNNeklYUGdFeUZnY0dEd0VHQnhjM05oY3lGZ2NPQWlNaUp3NEJEd0kxQmhNekJnYytBVGMySmlNaVNnRUhBUUpVQmdFdEZTMFpBUUVSQmdnQ0NDTTZFZ2daQmhkYTRqb0VEQXduS0JvQkFpNFlQRTRHREVjK016UUNBMmliUkRJdUJCRUVDaEFhcndFWkNpVnVCQUVMREI3Q0FnUU9Bd1VqSXdRQkNSOEJBZ2dQRndFSUNnOFJDd0VwWlI0Tk13d3I2d0dUQlJzZUh4a2tRaUpoaWdVSEtRSXZMa1dzZkM0SUxBZ1ZMUUZEQVVBck1pRjBHdzBiQUFBQUF3QW0vcjBDdUFMSEFEMEFUQUJkQUFBVEpqYytBVE15RmhjT0FRYytBamMyTXpJV016STNOak15RmdjR0J3WVBBUllIRkFjT0FnY0dJeUltTnpZL0FUWS9BU2NHSXlJbU56NEJOelEzSXlZM1BnRXpNaFlIRGdFaklpYzNJeVkzUGdFek1oOEJGZ2NPQVNNaUoyY0JBUUVrR2lKQ0RBSmdCQ2xIUnhZOEhRZy9EQXNFR3hFWkpRRUJKR3VURkNZQkRDMDRFUWdmUFNBNUFRSXVGQ2tRRVFVMklpVTNBd0k3QXMwQ0lRSUNYU1liSEFJQlZpUUVEdGdDSUFJQ1h5Z0ZEZzRWQWdKWkpnY0xBWFVHQmg0ZExTTWR0U3dYWFhZYVZ3NERFQndWRXhkajhTQWJJeEFWSURzZ0YwMHpJU0U3R3owVkdnWWFMek1xeXlZUm9oRWJKVUFnRkNNL0Fnd1RJU3hPQlFZWUhDcExBd0FBQWdBcC83SUVTd01MQUZJQVhRQUFBVE1lQVFjT0FRY09BUWMxQndZUEFSWXpNall6TWhVVUJ3WUhNdzREQnc0QkJ3WXpNamNXRlJRR0ZRWVdGUTRCQnpNR0l5b0NMZ1FuQmlNaUpqYzJOeFUrQVRNeUZ6WXpNaGMyTXpJQk5oSTNBQThCRmhjM05nUVhBUm9aQWdKWE9qb3dFUVlwRFFzUkV4SkFDaElFTEVrQkVCUUlHQm9aUFFFQlhCcENEd1FCRmdGSUtRRlpTQUljREJ3UkdoSVVDRHBQYTJJRUI0dEh0VnNlR2lVb09TZVRXUkQ5UTFXR0RQNzVNZ01KSEJJWEF3SUJHUlFxVndrT0ZSWUJDREFoR2dnSkNnSUlWaGdEQmdJREFTQmVFdzhJQmc0Q0R3UUhGQVFSUUE4WEFRSUVCd2tHSTNwVGorQUJiWm9LSVRVdy9VRlVBU0I2L3ZHbEV6NE5EUkFBQUFBREFCei94Z05wQWVrQU93Qk9BRmtBQUNVVkRnRUhIZ0V6TWpZek1oY2VBanNCTWg0Q0J3NEJJeUluQmdjaUxnUTNQZ0l6TWhZek5qTXlOak15RnpZek1nY0dCelVPQVNVbkJpc0JEZ0lIRkI0Q09nRXpNajRCSlNjbUl5SVBBVEkyTnpZQ3JnNTRKUUlaQ3hOY0V4UVNCQWdGQmdFQkJRUURBUUtqV2xzcE9GUWdIRHdmSlE0Q0EwcHFLd1lVQnlFK0NTWUlXaVpmWlc0RkFnc2VRdjUyQnhnUkJnSS9PQUlEQkFvRkRnTXJRQndCUFFRS0JEUXhDaWRZQVFHUkFRWVlBeEVUSUJBTkRBRUVCZzBKSnpFaUlRUUJCaEVkTVNGQXFYd0RNZ1E1UFdFYkp3RlBSUzRGQndNeFF5QUdDQVFDTzB0NkJBSllHazRiQVFBQy8rNy94UU53QkcwQU9nQmhBQUFYSXlJbU56NEJNeklXTXpJM05qYzJKeTRCTnpRM1BnRTNOak15Rng0Rkh3RVdCdzRCQndZSEppTWlCZ2NHSGdJSERnUUJJelk3QWpJV0J3WUhOUVlQQVFZaklpY1hKalUyTnlZbkpqYzJOeklYRkFZVkZoOEJOcGdPUmxZQ0FqQWpFMWtVRmc5aEFnRXFNak1EQ0JwcFBuUmRIQzhIRHdrT0JnOENDUThDQVMwYkFtTWlERG95QXdFbExTUUNBaDlEV29ZQjhBRWxJUW9KSENjQkFRMXRXd3dvS0NFTkFRSUNGUVlHREFJQ0t5Z0pBd0VTQ2pZN1FTOGlPQklHSHlVWUppNVJOQlFkVm5ZZU53Y0JCUVVLQkE0QkNCTVNHQ1VDT2cwQ0tEY1FLeWhIS0IxTFZrY3ZCR2NURnhRUUVnRnBQUWtkR0FFR0F4RVFCb015RlM4R0ZnVVZBUmttR1RZQUF2L2YvNlFESlFOWkFDMEFWQUFBQlFZaklpWTNQZ0V6TWhZek1qWTdBVEkzSmljdUFqYzJOejRCTXpJV0J3NEJCdzREQnhZSEJnY0dCd0VqTmpzQ01oWUhCZ2MxQmc4QkJpTWlKeGNtTlRZM0ppY21OelkzTWhjVUJoVVdId0UyQVdOZWYwWmhBZ0VYRUFJSkFoTWREQ0tYRHcwbUhCOFpBUUlOQ2RObkx4NENBUzhvSmlnR0NncHRCQU1aQWtrQkZ3RWxJUW9KSENjQkFRMXRXd3dvS0NFTkFRSUNGUVlHREFJQ0t5Z0pBd0VTQ2pZWlF6WXRGQm9CTXlZUUVnMFdMQjhmRmtGbUpoMFpMQXNIQ1FVSEExWlhMREFmTGdNbkV4Y1VFQklCYVQwSkhSZ0JCZ01SRUFhRE1oVXZCaFlGRlFFWkpoazJBQUFELy8vL3B3TCtBK0FBTXdCQ0FGRUFBQUVYRmhjL0FUWTNCell6TWhZSERnSUhEZ0lIRnpJZUFSVVVCek1HSXlJbU56WTNOajhCQmlNaU56UTNOamMrQVRNeUx3RW1OejRCTXpJV0J3NEJJeUluTnlZM1BnRXpNaGNXQnc0Qkl5SW5BWTBEQkFrSkxHcy9BUmNjRngwQkFqMTBCaHVSVnlrSUFnWUVEZ0ZBVXk5Q0FRSUZHMlJZQWdRY0JBUU9FZ2RZSlNJTkFpRUNBbHdrSEIwQkFsWWtBdzdXSVFJQ1hpY1FEeGdCQWxnbkNnVUN0aGNpWXdrMWd5a0JDaE1WSlYrRkNDVzlnVXdHQ3hJSURRNDRKUnNNQ1RXSGRnRXRDaGFmVUNwT1NBRVFIQ0ZFSUJValB3SU1GQ0FyVHdjYUhDdEtBUUFBQXdBRi83Y0RoQVNCQURnQVBBQmtBQUFsRnpZSERnRUhCaU1pSnk0Qk56WTNQZ0UvQVRZM05qY1ZOelkzQmlNaUp5NEJOelkzUGdFek1oY2pGaGNISHdFV0J3NERCdzRCRnlNVk14TWpOaGMyRmdjVUJ6VUdEd0VHQndZbkpqOEJOU1kxSmpjMk56WVhGQTRCRlRVR0ZSWWZBVFlCY1c0N0FnSkFLV0NSTkNvckxnSUNBd2djSlEwMWltMDJCUXdaTlN3eExSSVZBUUlnTXF4VUdnd0JHQXdFRVJRZ0N3dzlZajR6T0NTSENRbjhBU29uSUMwQkRtMWNDaVlSTXhRREZnRUxEUUVDTGlnSkFRSUNBdzRNS0lFTUFTZ2ZSQXdvQmdZa0t4WU1HaWNxRHp5QlpEa0NCZzRwQ3d3RkhSTWZHeTQwQVFjUUZ3UUZEejR4Ym5aRU5UbzJGQXNEekJZREFoZ1dEaE1CYWp3SEd3SUpIUmtRQ0FVN1F6VVNMUWNDRndJRkNBSUJCZ1lXSkIwcEFBQUFBQUwvK1ArNEF4Z0RkZ0F2QUZVQUFDVVhOak15RmdjR0R3RUdJeUluSmpVK0FqYytBU2NtSnlZbkxnRTNQZ0UzTmpjeUZ4NENOellXQnc0QkJ3WVRJellYTmhZSEZBYzFCZ2NpQndZSEJpY21Qd0VtTlNZM05qYzJGeFFHRlFZVkZoOEJOZ0VoQXhJWkt6NEJBUlloNVU1TUJnSUNTa1EzS3lZRUVRWUxGQmdZQVFJdUptK3lDUVFDQmhFTkRnMEJBakVpZytjQktpY2dMZ0VQWm1JQkVDSVFNaGNERndRT0RBRUNMU1lNQWdJQkVnb3VZZ2tGSlNFWElBWWpGd2NTSjJJOExDSW5EUU1FQlFNRUZBOFZNeEUyQ2hFS0N3Z0NBaEFRSUZNV2NBSjJGd01DR1JVTUZnRmpSQW9ZQWdjYkZoUU5PMFF0R3kwR0JCa0JEQUVJQlJRc0dUQUFBUUFTLzVFQytnTW9BRDRBQUJjMVBnRTNKaWNtS3dFaUpqYzBQd0UyUHdFK0FUYytBVE15Rng0QkJ4UUhEZ0VIRGdFSEZCYzJOeFlWQmc4QkRnTVBBUTRDQndZaklpWTNOaGtDYXdjRkJBd0tEQkE3QWlNM1NBb2JGMnNwTHFzNU9BVUNIZ0VDRXprdExLY0NBbXNwRXdFS0NRb2NNUnNrTkF0clN3c25LQjRwQWdJV0FoVGpJUVVLQkNjYkZBMEVCUWtXUTZJa0tGVXdGQmdNQ1FZckpRd01kU1FEQmlNQ0RBa0hFaEVUR2hNSENBd1Ywb2dFTGlrYkRnQUJBSG9CelFJV0F5TUFKZ0FBQVFZaklpWTNORGMyTno0Qk55TTJNeklYRkFZUEFSWUhCZ2NXQnc0Qkl5SW5OamMwTHdFR0FScEdQQTBSQVJhSWJnSUhBZ0ZFTEF3SkVBZ0lBUUlCQ0FNQkFpNHVEZ1FFQndrSk9BSC9NZ29KRHh5RVZRSUVBamNKQkJ3TURRd2JHVElWRlI4K0NBc1FHeHNYT1FBQUFRRGdBaE1DUXdOWkFDWUFBQUVqTmpzQ01oWUhCZ2MxQmc4QkJpTWlKeGNtTlRZM0ppY21OelkzTWhjVUJoVVdId0UyQWFnQkpTRUtDUnduQVFFTmJWc01LQ2doRFFFQ0FoVUdCZ3dDQWlzb0NRTUJFZ28yQXhnVEZ4UVFFZ0ZwUFFrZEdBRUdBeEVRQm9NeUZTOEdGZ1VWQVJrbUdUWUFBUUI3QW1vQ2pBT05BQ1lBQUJNbU5qYzJNeklYRmhjR0J4WVhNamMyTnpZM0J6WXpNaFlYQmdjR0J3WWpJaVluTXlZM05vOEdLaXdZR1NzeEVRRUNBd2dST1JZTENTVVJBUnNYRWhvRUQxa3VPelk0Ulc0VkFRb0JBd01nSkRZTUJ4NFVJUndGRUF3TEJ3Z2pEQUVNRkJGRkt5NFRFVE15SENNWkFBRUFnZ0pXQVdJRERBQU9BQUFUSmpjK0FUTXlGZ2NPQVNNaUx3R3BKd0lDY1NzWkp3RUNZeXdGRWc0Q1hoTWhLVkVuR2lwTEJBSUFBZ0I3QWlzQ1VRTnlBQlVBSkFBQUV6WTNQZ0VYRmdjR0J3NEJKeVluTGdFbkpqYytBUmNuTndZSEppTWlKaU1PQVJjV05zUXlXQ1ZzSkU0REJWZ25mRFFwSlFrakJTQURBU2Z5QVFVaEdnd09BdzBDRWd3UEhWVURKeW9NRUFVUktVeFBQaHdZQXdNR0F4a0ZHUzRrU2tvRUNBY0NBZ0VTS2d3Ukx3QUFBQUFCLzcvK21RR1pBRlVBTmdBQUZ3WVdQd0UrQVQ4Qk5qTXlGZ2NVRHdFR0J6VUdCelVIQmlNaUp5NEJOelEzUGdFL0FUWTNOak15RmdjT0FRYzJOUWNPQVFjT0FYRUxHQklSRGs0UkZTZ0hIaWtDRXhRUUN4Z3VBMDlWU3pvU0VnSUZFMFJLSGs4Z0tDZ1RHUUVCT1NNRERRNGtDQVk0blJZVUFRRUVMZ1VHQ3g0VkV4MFFGQXNCR0JnQkF5Y2NDVElmRGhKTVNSc0tHU3duRGhJZlVSWUJBZ1lIRXdRREZnQUJBSDRDZWdJQ0F6Z0FMd0FBQVM0Qkl5SVBBUVlqSWljWEpqYytBVGMyTVRjak5qTXlGZ2NVQmhVVUh3RVdGelkvQVNNMk16SVZCZ2NPQVNNaUFVa0hLQkFFQ0NBc0VnUUNBUjBCQVRrcEJod0JLeHNSRmdFREFnSUdDQndWQ1FFckZ3a0NPQ1lvRXdvQ2pBRW1BaFloQVFFVEVSZy9Gd0lTR0JBUkFnY0JBd1FNRlF3RkNBWWlEeHdtSHhjQUFBQUNBUWdCM3dMTUF5d0FFZ0FrQUFBQkZUNEJNeklXQndZUEFRWWpJamMwTno0QkJ5YytBVE15RmhjR0J6VUhCaU1pSmpjMEFnb0pSU2dnTEFJRlVCc1lKU1lEQWdRSDl3Z0VYakVhSmdRT016RVlJeEVVQVFMQUFUUTVLaVJPWGg4aUt3a0dHV09PU0U1eE1TNHNYZ0U1SUJRVkNRQUFBQUFCQURVQkFRS3FBYW9BR2dBQUV6Y2lKamMyUHdFK0FUTXlGell6TWhZSERnRUhCaU1pSmlNaWVnSWZLQUVDSHhrSmtaVXlHUllaUDFJQkFqVXdZb2NsaFIwTkFRSUNHaE1WRWdJeEd3RUZIaDBVTHhVV0F3QUFBUUEwQVBJRE9RR3dBQ0lBQUQ4Qkl5SW1OelkvQVQ0RVB3RStBVE0yTXpJV0J3WUhCZ2NPQXdjT0FYd0ZDUjhsQVFJZUdnSVdHRE1lSWhzZjlqSWJNVFZFQVFJdERCQVhaclpTWnh0YjhnSVlFaFVTQkJBWURnMEZCUVFEQ3dnZEdSb2pCQXNRRmdzQ0F3RUZBQUFBQUFFQVlnRzJBWEFDL1FBWUFBQUJEZ0VIRGdFaklqOEJQZ0UvQVNNM1BnUXpNZ2NVQVdrRExBMGFVaUUrQXdNSklUYzBBUTBGRlFvU0VRa1hBUUxKQnFNT0tqSk1FaDhyTlRJTEJCTUhDd1FaQ3dBQUFBRUFnZ0hnQVk0RE1RQVhBQUFUUGdFM05DYzFQZ0V6TWhZSERnRVBBUTRDSXlJMU5vb2FGd0lCR2xNakhDWUJBVGhLS1JFUUdnNFdCd0lYUVcwRUFRTURMRFVqSGlCUVR5Y1FEZ3dkR0FBQUF2L3kvMVVCQmdCaEFCNEFJQUFBTnhjV0Z3WVZCd1lIRGdFaklpWTNOajhCSndZaklpNEJOVDRCTXpJWE54Y0g3d01MQ0FFQ0J6OGdUaUlVSmdFQk1Rc0tBUUVDQ2dnQ1ZEWW9LQVFXQVVRR0ZRZ0JCQ01zTFNFcUVoSU9QZzBNQVE0WUNpb3FKQU1lQVFBQUF3QmtBYllDT3dNUEFCWUFNUUExQUFBQk5RWVdCZ2NPQVNNaUpqYytBVDhCTmpNeUJ4UUhCamNYRGdFSE5RNEJJeUltTnpRK0FUYzJOejRETXpJSEZBWVhOUWNYQVRBQ0F3Z0xHa1llSENBQ0FUVk9MaUllR0FFSEl2RUJEUW9MRHp3ZkdpUUJDQXNCQ3p3RkdnOGFEUndCQXdJQkFRSWtBUVlHRGdzakp5a2xKVUJLTGh3WkJCYzhWUUVsWEJNQkZ4b1VFd2NURndRbk5nVWJEUXdlQWdzREFnSUJBQUFBQWdEZkFlOEN2UU11QUJ3QVBBQUFBU00rQVRjMk16SVdCeFFHRlRjR0J3WVBBVE1QQVRNR0l5SW1OelFuTlRZM05UUStBVGNWTmpjMk16SVdCeFFIRlE0Q0J3NERJaVkzTkFHdkFTVWRFejAvSENJQkFnRTFBUWtwSlFFVUlBRWRIdzBQQWNFWkFnRUNBUU1HSWtNZEpRRUxBeHdYR1FnYkVSb2FFUUVDS1Q1b0hFTWpJUVFOQXdGU0FRb2xJaEFhR2cwTkNUTUNSQzhJQVFZR0JBRUhBUzRXRkE0UEFoVXJGaFVHR2cwTURRMEVBQUFBQWdBRS8xUUJ4d0NoQUJnQU1RQUFKUlUrQVRNeUZnY09BUWNPQmlNaU56UTNQZ0VITnlZM1BnRXpNaGNIRnhVSEZ3NEJCelVIQmlNaUpqYzBBUVlMUXljaEt3SURMQ2NDRWdZUUNRNE9DQ1FEQVFRSDlnRUtBZ1JkTVQ0R0VRRUJBUThnQWpFWUpROFRBVFVCTkRrcEpESlBMZ01WQmhBRkNRTXJDUVlZWkpFRElpVk9jbDRiQWdJQ0FSaE5CQUU1SUJRVkNRQUFBQUFCLys3L2VBSXpBM3NBUlFBQUV6Y2lKamMyUHdFMk56WS9BVDRDTno0Qk16SUhCaDRDRlFZSE5RWVBBVEkyTXpJV0J3WUhCZ2MxQmdjR0J6VUhEZ1FqSWljMkpqVTJOUlUyTnlJbUt3RTVBU0lxQVFJL0V4VnZFUmNlRFE0V0RoaytGQllCQVEwUERRSUdDU2NpQmh3RUwwUUNBaU1JR1R0TlVXd01BaFFNRlJnT0JSSUJJZ0pDU2djaUJ5RUJWUUlhRXg0WUFqRVNOajFSSkNNb0RoZ2pHUXNKQVFvTERoSUJGNGR5QXljZUhDTUNEQUVjQnQydkFROERIQXdVQ0FRVU5oRUdBZ0dHOGdFQUFBQUIvNjcvY0FJb0Ezc0FUd0FBTlFZaklpWTNOamMyTnlJbk15NEJOelkvQWo0RE56NEJNeklWSGdFMkZnY0dCdzRCQnpjZUFRY09BUWNpSndZSFBnRXpNaFlIRGdFSEJnY0dCelVIRkE0RUl5SW5OaVkvQVFZRkRCOGlBUVM5SWdjWUZnRWVJd0VEaEJraENSY05HQThhT3hRV0FnNE9Dd0VEQXdndkVDMHdNQUlCU2o0a0JTa1lEMDhQR3h3QkFrYzRMak05SlFzVUJoUVBGd3dMQ2dFZ0FVUWZjZ0VmRmtzWVd4Y0NCaHNSTmg4R1l4bFFLVEFPR2lRYkNnZ0JDd3dWQ1JpYk1RUURJQlljTEFNSWJqWUNEQllSR3o0UUNRZDlRZ0VRQVJzSUZnZ0lBeE02RTZRQ0FBQUFBQUVBY1FEL0FlRUNJd0FaQUFBQkZnY0dEd0VHQnhRR0J3NEJJeUltTno0Qk5UNEJNeklXTXdHMkt3SUNOQUVJQ0FNREFVY3hRMlVDQVJJV2hFc0xMZ3NDR0Jva05pSUJFQWNES3c0V0dTMHFDelFEUlVZTEFBQUQvL24vamdLNEFFRUFEd0FlQUMwQUFCY2pKamMrQVRNeUZ4WUhEZ0VqSWljM0pqYytBVE15RmdjT0FTTWlMd0VsTlNZM1BnRXpNaFlIRGdFaklpWWdBU1lEQW0wckZnNGVBUU5qTEFRUStTc0NBbXdySUNZQkFtTXJCUkFQQVFvZUFnRk1JQlFlQVFGSEhnUVNiUlFoS1ZBSElSZ3JTQUlTRVIwalJpTVdKVDhDQWhrQ0RCWVpNQmNRR2k4REFBQUJBRUVBS3dJUUFtTUFNZ0FBQVRjMk16SVdCd1lIRGcwVkJoNEJGdzRCQnk0Rkp6SStBVFUySnpZL0FUNERBYllMRUFZVkpBRUJEQUVLRkJNaEZTZ1JLQWdWRVJNTEFTbEFFQUljRGdnd01Ud3ZJUU1CQndrQ0F3bEJFQWhuSzFBQ1hBTUVKaUFTRncwWkdSUVhEeFlLRkFRS0NRb0tCQkV5UmhzYUt3UUVEZzhlSjBFb0Voa0pDUWdqTncwR1VCNHpBQUFBQVFBTkFGSUI3Z0p3QUN3QUFBRTNKeTRCSnhjbU5UNEJOeFUyTXpJWEhnRUhCZ2MzQnhVR0J6Y0dCemNHQnpNSERnRUhOQ1kzTkRjMk53RWlKeG9HVUE4QkJnSXpLUlVSSWhnWVV3SUNBZ0VWQVEwQkR4d0JLaThCQ2l2YUp3SUJHeWkvQVNnUEhnZGJGZ0VRRHh4S0ZnRUtLaG1hSmd3R0FSNEdHU1FCR3hNQkZRb0NDRkFFQWhvR0VTSXpSd0FBQWYrNS96RURPZ05MQUN3QUFBRTFOejRCTnhVM1BnRTNNeDRCRndZSEJnY1dCd1lIQmdjR0J3SUhOUVlqSWlZM05qYytBamMyUHdFMkFqOEJBZ1FDQ0FJOE5nWXdPQWdESlFVQ0JTQTdXZ29XVEtIaFpnc01GU0lCQWhrdWRsVklnVHNrS2dMckFRSUNCUU1DQ1JncUNnTWRKeFlsQkFJZklqQmlEQmhUeHY3dVpRRU1KaHdoSDB1bGJWcWVVVEEvQUFBQUFBTC9pLy9DQXpNREdRQ0JBSVlBQUFFeUhnTVZEZ01IQmc4QkJqTXlQZ0UzUGdNek1oWUhCZ2MzQmlNaUp5NEJKemNPQVNNdUFUYzJQd0UyTndZakJ3WWpJaVkzTkQ0SFB3RStBVGMrQVRjMk16SUhEZ0VqSWlZakJ4Y2pGaGNqRmpNeU5qTXlGUVlXTWhVVUJ4WUhEZ0VqSWljckFTSUdJeUluQmdjK0FqY1dGek15RmhjbkZUTVdBbXNCQ2dRR0FnRXRURTR1RXdsQUJrY05IaThPQng0VUlSSVRHQUVEQVFGaW1GNGxPRVlFQVJHQklSUWNBUUxNSlJBb0R3VWlNQVVaS1FFSERBMFZEeGtQR0FVcEJBa1FLR3BzWUhXR0F3SjlRZ0lJQW5VQkFRc0dBUWdLQ0VZVUtnRVZGUUVOQWdGWE5CY1VIQkVLS2dvT0dCMFRFVWs1R0RBbEFRRVBHd01CQVFFekFRSURDQVVYSkJZUEJ3TUJDbzRJRVFRRkZnME1EdzROQkFGL0hSZGNPeFlCQ2dRVEN5b2NCVGRPQlFRRkR4SUdDd29IQndVR0F3VUJDQUVGQTJKM0t5bytLVWtCT2dnQ0FRTUdDeFVNQlFNREZoSWtLd1lCQWk0b0F4RUxBZ01UQXdZREFnRUFBQU1BckFJRkFzWURJQUFtQUU4QVV3QUFFd1lqSWpVME56NEROeUlIS3dFaUpqYytBVE15RmhjR0J6TU9BaU1pSmlNaUR3RUdKVElmQVJRV0ZRWVBBUVlIRnpZek1oVUdCd1lqSWlZbk5qY25EZ0VqSWljT0FTTWlKamMyTnpZWEp4VVc3eElSSUF3Tkd3c1VEd0VIQmdRT0RBRUJkRW9MRkFFSEF3RUdEUllUQVFNQkNnVUpVZ0VOQ1E4Q0FRRUlBUUlPQ1ZVMUZ6UTBDU1VIRHdFT0RnZ1hGUkFWQlJzbEh3MFFBUUZGUFZjREFRSVpGQThFRmhvNEZDSVhBUWdKRnl3S0JnY0JBaGdWQVFZT2lOVURCUUVDQVFJR0V3b2dCRjhQbFZZUkNna2xHUVVWQ1NRM0tBY0dGbnRtQkFRREFRQUFBQUFCQUd3QStBS1NBYTBBSHdBQVB3RWlKamMyUHdFMk55TTJNeklYTmpNeUZnY0dCemNHQnpVR0l5SW1Jd2E2QlNZdEFRSStGQjU4QVJoREtoVVNGVE5FQVFJdEFRb1VXb1VjYkJvRCtnSVdFUm9YQWtFUUFnRUZJQjBnSkFFRUNnRW9CQUlBQUFBQkFBQUJqZ0FCQUVBQmdBQUdBQUFBREFCWS8vOEFEQUJaQURJQUpnQU0vOG9BSndBTS85a0FLUUFNLzZvQUtRQTBBQ2NBS2dBTS8rRUFLd0E1QUM4QUxBQU0vOG9BTFFBTS8vQUFMZ0FNLytrQU1BQU0vOUVBTVFBTS83a0FNUUErLy9BQU1nQU0vOGtBTkFBTS82c0FOQUFzQUJnQU5BQTEvOWtBTkFBMy8vRUFOUUFNLzhrQU5nQU0vK0VBTndBTS85a0FOd0FtQUJjQU53QXNBQjhBT1FBbS85RUFPUUF0LytnQU9RQkcvNm9BT1FCSS8rQUFPUUJKLzlrQU9RQksvN2tBT1FCTS84RUFPUUJOLzlrQU9RQk8vK2dBT1FCVC84RUFPUUJVLzdrQU9RQmEvNm9BT1FCZS84RUFPZ0FNLzlFQU9nQW8vOWtBT3dBTUFCZ0FQQUFtLzlFQVJnQU0vNW9BUndBTS81TUFTQUFNLzRNQVNnQU0vNU1BU3dBTUFDY0FUQUFNLzNzQVRRQU0vNE1BVUFBTS80c0FVZ0FNLzVNQVV3QU0vNXdBVkFBTS8zc0FWQUJWLytrQVZRQU0vNklBVmdBTS83SUFWd0FNLzdvQVdBQU0vNE1BV1FBTUFBZ0FXZ0FNLzdJQVd3QU0vOUVBWEFBTS84RUFYUUFNLzhrQVhnQlIvL2dBWHdBTS84SUFBQUFBQUI0QmJnQUJBQUFBQUFBQUFEY0FjQUFCQUFBQUFBQUJBQWNBdUFBQkFBQUFBQUFDQUFjQTBBQUJBQUFBQUFBREFCa0JEQUFCQUFBQUFBQUVBQWNCTmdBQkFBQUFBQUFGQUEwQldnQUJBQUFBQUFBR0FBY0JlQUFCQUFBQUFBQUhBQ1lCemdBQkFBQUFBQUFJQUFzQ0RRQUJBQUFBQUFBSkFBc0NNUUFCQUFBQUFBQUtBRGNDclFBQkFBQUFBQUFMQUE0REF3QUJBQUFBQUFBTUFBNERNQUFCQUFBQUFBQU5BQU1EUndBQkFBQUFBQUFTQUFjRFd3QURBQUVFQ1FBQUFHNEFBQUFEQUFFRUNRQUJBQTRBcUFBREFBRUVDUUFDQUE0QXdBQURBQUVFQ1FBREFESUEyQUFEQUFFRUNRQUVBQTRCSmdBREFBRUVDUUFGQUJvQlBnQURBQUVFQ1FBR0FBNEJhQUFEQUFFRUNRQUhBRXdCZ0FBREFBRUVDUUFJQUJZQjlRQURBQUVFQ1FBSkFCWUNHUUFEQUFFRUNRQUtBRzRDUFFBREFBRUVDUUFMQUJ3QzVRQURBQUVFQ1FBTUFCd0RFZ0FEQUFFRUNRQU5BQVlEUHdBREFBRUVDUUFTQUE0RFN3QkRBRzhBY0FCNUFISUFhUUJuQUdnQWRBQWdBQ2dBWXdBcEFDQUFNZ0F3QURFQU1RQWdBR0lBZVFBZ0FGUUFlUUJzQUdVQWNnQWdBRVlBYVFCdUFHTUFhd0F1QUNBQVFRQnNBR3dBSUFCeUFHa0Fad0JvQUhRQWN3QWdBSElBWlFCekFHVUFjZ0IyQUdVQVpBQXVBQUJEYjNCNWNtbG5hSFFnS0dNcElESXdNVEVnWW5rZ1ZIbHNaWElnUm1sdVkyc3VJRUZzYkNCeWFXZG9kSE1nY21WelpYSjJaV1F1QUFCTEFHNEFaUUIzQUdFQWRnQmxBQUJMYm1WM1lYWmxBQUJTQUdVQVp3QjFBR3dBWVFCeUFBQlNaV2QxYkdGeUFBQlVBSGtBYkFCbEFISUFSZ0JwQUc0QVl3QnJBRG9BSUFCTEFHNEFaUUIzQUdFQWRnQmxBRG9BSUFBeUFEQUFNUUF4QUFCVWVXeGxja1pwYm1Ock9pQkxibVYzWVhabE9pQXlNREV4QUFCTEFHNEFaUUIzQUdFQWRnQmxBQUJMYm1WM1lYWmxBQUJXQUdVQWNnQnpBR2tBYndCdUFDQUFNZ0F1QURBQU1BQXdBQUJXWlhKemFXOXVJREl1TURBd0FBQkxBRzRBWlFCM0FHRUFkZ0JsQUFCTGJtVjNZWFpsQUFCTEFHNEFaUUIzQUdFQWRnQmxBQ0FBYVFCekFDQUFZUUFnQUhRQWNnQmhBR1FBWlFCdEFHRUFjZ0JyQUNBQWJ3Qm1BQ0FBVkFCNUFHd0FaUUJ5QUNBQVJnQnBBRzRBWXdCckFDNEFBRXR1WlhkaGRtVWdhWE1nWVNCMGNtRmtaVzFoY21zZ2IyWWdWSGxzWlhJZ1JtbHVZMnN1QUFCVUFIa0FiQUJsQUhJQUlBQkdBR2tBYmdCakFHc0FBRlI1YkdWeUlFWnBibU5yQUFCVUFIa0FiQUJsQUhJQUlBQkdBR2tBYmdCakFHc0FBRlI1YkdWeUlFWnBibU5yQUFCREFHOEFjQUI1QUhJQWFRQm5BR2dBZEFBZ0FDZ0FZd0FwQUNBQU1nQXdBREVBTVFBZ0FHSUFlUUFnQUZRQWVRQnNBR1VBY2dBZ0FFWUFhUUJ1QUdNQWF3QXVBQ0FBUVFCc0FHd0FJQUJ5QUdrQVp3Qm9BSFFBY3dBZ0FISUFaUUJ6QUdVQWNnQjJBR1VBWkFBdUFBQkRiM0I1Y21sbmFIUWdLR01wSURJd01URWdZbmtnVkhsc1pYSWdSbWx1WTJzdUlFRnNiQ0J5YVdkb2RITWdjbVZ6WlhKMlpXUXVBQUIzQUhjQWR3QXVBSE1BZFFCeUFITUFiQUI1QUM0QVl3QnZBRzBBQUhkM2R5NXpkWEp6YkhrdVkyOXRBQUIzQUhjQWR3QXVBSE1BZFFCeUFITUFiQUI1QUM0QVl3QnZBRzBBQUhkM2R5NXpkWEp6YkhrdVkyOXRBQUJQQUVZQVRBQUFUMFpNQUFCTEFHNEFaUUIzQUdFQWRnQmxBQUJMYm1WM1lYWmxBQUFBQUFBQ0FBQUFBQUFBLzdVQU1nQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBTlVBQUFBQkFBSUJBZ0VEQUFNQUJBQUZBQVlBQndBSUFBa0FDZ0FMQUF3QURRQU9BQThBRUFBUkFCSUFFd0FVQUJVQUZnQVhBQmdBR1FBYUFCc0FIQUFkQUI0QUh3QWdBQ0VBSWdBakFDUUFKUUFtQUNjQUtBQXBBQ29BS3dBc0FDMEFMZ0F2QURBQU1RQXlBRE1BTkFBMUFEWUFOd0E0QURrQU9nQTdBRHdBUFFBK0FEOEFRQUJCQUVJQVF3QkVBRVVBUmdCSEFFZ0FTUUJLQUVzQVRBQk5BRTRBVHdCUUFGRUFVZ0JUQUZRQVZRQldBRmNBV0FCWkFGb0FXd0JjQUYwQVhnQmZBR0FBWVFDakFJUUFoUUNXQUk0QWl3Q3BBSW9BZ3dDTkFNTUEzZ0NlQUtvQW9nQ3RBTWtBeHdDdUFHSUFZd0NRQUdRQXl3QmxBTWdBeWdEUEFNd0F6UURPQU9rQVpnRFRBTkFBMFFDdkFHY0E4QUNSQU5ZQTFBRFZBR2dBNndEdEFJa0FhZ0JwQUdzQWJRQnNBRzRBb0FCdkFIRUFjQUJ5QUhNQWRRQjBBSFlBZHdEcUFIZ0FlZ0I1QUhzQWZRQjhBTGdBb1FCL0FINEFnQUNCQU93QTdnQzZBTEFBc1FEa0FPVUF1d0RtQU9jQXBnRFlBT0VBMndEY0FOMEE0QURaQU44QXNnQ3pBTFlBdHdERUFMUUF0UURGQUlJQXdnQ0hBS3NBdmdDL0FMd0JCQUNNQU84RVRsVk1UQUpEVWdSRmRYSnZBQUFBQUFBQUFmLy9BQUlBQUFBQkFBQUFBTmw2VVFBQUFBQUF6RG56bkFBQUFBRE1PWUVrIn0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9IkFBRUFBQUFPQUlBQUF3QmdUMU12TW9DME5WSUFBQUZvQUFBQVlHTnRZWENxRnRXSkFBQUYwQUFBQTBoamRuUWdCRzhCSGdBQUNvUUFBQUFnWm5CbmJaSkIydm9BQUFrWUFBQUJZV2RoYzNBQUFBQVFBQU12Z0FBQUFBaG5iSGxtc2VvaTZRQUFEckFBQXhab2FHVmhaUHRnRFBJQUFBRHNBQUFBTm1ob1pXRUhVZ0t3QUFBQkpBQUFBQ1JvYlhSNDREdjhpUUFBQWNnQUFBUUliRzlqWVFIcVhmUUFBQXFrQUFBRURHMWhlSEFER0FqSUFBQUJTQUFBQUNCdVlXMWxmZHcyTWdBREpSZ0FBQWRvY0c5emRENzJWUVVBQXl5QUFBQURBSEJ5WlhCb0JveUZBQUFLZkFBQUFBY0FBUUFBQUFFQUFBTnQyKzVmRHp6MUFBc0VBQUFBQUFETVd3Y2NBQUFBQU14dXdvNy9adjV4QkJFRDJBQUFBQWtBQWdBQkFBQUFBQUFCQUFBRDJQNXhBQUFFRS85bS95a0VFUUFCQUFBQUFBQUFBQUFBQUFBQUFBQUJBZ0FCQUFBQkFnUVZBQVFEUGdBRUFBRUFBQUFBQUFvQUFBSUFBWE1BQXdBQkFBTUJyQUdRQUFVQUFBTE5BcG9BQUFDUEFzMENtZ0FBQWVnQU13RUFBQUFDQUFBQUFBQUFBQUFBZ0FBQUwxZ0FJRW9VQUFBQUFBQUFBRVJKVGxJQVFBQWcrd0lEMlA1eEFBQUQyQUdQQUFBQUFRQUFBQUFBQUFBQUFBQUFJQUFBQVdZQUFBTFUvKzRCN0FBZUFsTC85Z0RhLyt3Q0RnQUpBYXdBR1FHNC8yWUIzUC9OQXBQL29nSG0vOE1DYmYvc0FkY0FIQUp4QUJRQ1lBQVVBUGNBRkFKeUFDZ0JQQUFvQVU4QUh3Q3lBRGdCcndBSkFjb0FGQUZtQUFBQXR3QUFBUW9BRGdJWi8vVUJqZ0FVQW5BQUNnSWxBQjhBZXdBT0FOZ0FIZ0R0Ly9VQ0J3QWZBZFFBQ1FDbUFCTUJyd0FKQUk0QUVRRU9BQUVDWlFBb0FVci85d0lzQUFrQ0lBQVVBaXIvNmdJNUFESUNWUUFmQWpZQU13Sk1BQ2tDVGdBVUFKQUFFd0NtQUJNQlRmLzNBYllBQ2dGTkFCUUIzdi8vQXhvQUhnTHYvOHNDMC8rM0FuVUFIZ0xVLys0Q2x2KzlBaTcvNGdNQUFBQUMxUDk2QVNMLzFRSUJBQUFDV1Avc0FsTC85Z013LytFQzVQK2tBdlFBSGdKdy85NEM1Z0F0QW16L3h3SU9BQWtDRVAvREFvUC96Z0lpLzQwRE1QK0pBbWIvZXdHNC8yWUNiZi9zQUs4QUp3RDYvK3dBcGYvZ0FYTUFDZ0lwLy84QmZnQm9BZGNBSXdIMy83d0Izd0FrQWdvQUtRSFJBQ1FCY2YvL0FnRUFKQUhiLzhZQTl2LzVBT0wvcEFHVy85c0Eydi93QXFuLzN3SVAvL01CNXdBZUFmdi8xd0lIQUI4QnV2L3NBYXdBR1FGTy84MENCLy94QWNyLzdnSnQvOUlCMVAvREFkei96UUhYQUJ3QTN3QW9BTVFBTmdEa0FCUUJod0FWQXUvL3l3THYvOHNDZFFBZUFwYi92UUxrLzZRQzlBQWVBb1AvemdIWEFDTUIxd0FqQWRjQUl3SFhBQ01CMXdBakFkY0FJd0hmQUNRQjBRQWtBZEVBSkFIUkFDUUIwUUFrQVBiLytRRDIvL2tBOXYvT0FQYi8rUUlQLy9NQjV3QWVBZWNBSGdIbkFCNEI1d0FlQWVjQUhnSUgvL0VDQi8veEFnZi84UUlILy9FQklRQVhBT2NBRkFIRkFCUUIyZi94QVc0QUtBRFRBQklDRFFBcEFuMy8vd0orQUJrQ2ZnQVpBeDMvL3dGK0FHZ0JmZ0EzQWJZQUNnT00vNjBDOUFBZUFhOEFDUUd2QUFrQnJ3QUpBZDcvOWdINkFBb0NNUUFmQVU0QUNnRkRBQW9EQndBakFlY0FIZ0hlQUFrQXQvLzJBYmdBQ1FHdi82NEJod0FWQVhJQUZBRnlBQWtCbVFBUkFXWUFBQUx2LzhzQzcvL0xBdlFBSGdRVEFDUURNUUFlQWE4QUNRSTlBQWtCSkFBZkFROEFDZ0NVQUI4QWdBQUtBYThBQ1FGSi8vZ0IzUC9OQWJqL1pnSW9BRE1DTnYvK0FQQUFGZ0R3QUFrQi8vLy9BZ2ovL3dFNkFCUUFvUUFlQUlBQUNnRVBBQW9DY0FBS0F1Ly95d0tXLzcwQzcvL0xBcGIvdlFLVy83MEJJdi9WQVNMLzFRRWkvOVVCSXYvVkF2UUFIZ0wwQUI0QzlBQWVBb1AvemdLRC84NENnLy9PQVBiLytRRitBQjhCZmdBUEFYNEFKZ0YrQUNNQmZnQ01BWDRBWHdGK0FFc0JmZ0FtQVg0QVNBRitBQjhDUlFBUEFhOEFDUURpLzZRREkvL1ZBZGovK1FIYi84WUJJdi9SQVBiL3ZRSUJBQUFBNHYra0FYNEFnQUdXLzlzQmx2L2JBbXoveHdHNi8rd0NVdi8yQVVuLzhBTGsvNlFDRC8vekFtei94d0pzLzhjQnV2L3NBQUFBQXdBQUFBTUFBQUFjQUFFQUFBQUFBa0lBQXdBQkFBQUFIQUFFQWlZQUFBQkVBRUFBQlFBRUFINEEvd0VwQVRVQk9BRkVBVlFCV1FGaEFYZ0JmZ0dTQWpjQ3h3TGRJQlFnR2lBZUlDSWdKaUF3SURvZ1JDQ3NJU0lpQWlJU0lrZ2lZQ0psSmNyMncvc0MvLzhBQUFBZ0FLQUJKd0V4QVRjQlB3RlNBVllCWUFGNEFYMEJrZ0kzQXNZQzJDQVRJQmdnSENBZ0lDWWdNQ0E1SUVRZ3JDRWlJZ0lpRWlKSUltQWlaQ1hLOXNQN0FmLy8vL1lBQVAvS0FBRC93QUFBQUFBQUFQNmwvMDcranY4Zy9yY0FBQUFBNEtvQUFBQUFBQURna09DaDRKRGdnK0FjMzMzZXFONEMzbXZlUXQ1QzJ2b0tNd1hLQUFFQUFBQkNBQUFBL2dBQUFRUUJEZ0VTQUFBQUFBQUFBQUFBQUFFT0FSQUFBQUVZQVJ3QklBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUMzQUxBQWx3Q1lBT3dBcUFBVEFKa0FvUUNlQUtzQXRBQ3hBTzBBblFEa0FKWUFwUUFTQUJFQW9BQ3BBSnNBemdEb0FBOEFyQUMxQUE0QURRQVFBSzhBdUFEVUFOSUF1UUIxQUhZQW93QjNBTllBZUFEVEFOVUEyZ0RYQU5nQTJRQUJBSGtBM1FEYkFOd0F1Z0I2QUJVQXBBRGdBTjRBM3dCN0FBY0FDUUNjQUgwQWZBQitBSUFBZndDQkFLMEFnZ0NFQUlNQWhRQ0dBSWdBaHdDSkFJb0FBZ0NMQUkwQWpBQ09BSkFBandEREFLNEFrZ0NSQUpNQWxBQUlBQW9BeFFEaEFPOEE4QUQwQVBVQSt3RDhBQU1BQkFEOUFQNEF1d0M4QVA4QStRRDZBUUFCQVFEaUFPc0E1UURtQU9jQTZnRGpBT2tBd1FEQ0FNOEF2d0RBQU5BQWxRRE5BSm9BQUFFR0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJZWEdCa2FHeHdkSGg4Z0lTSWpKQ1VtSnlncEtpc3NMUzR2TURFeU16UTFOamM0T1RvN1BEMCtQMEJCUWtORVJVWkhTRWxLUzB4TlRrOVFVVkpUVkZWV1YxaFpXbHRjWFY1ZllHRmlZMlJsWm1kb2FXcHJiRzF1YjNCeGNuTjBBSFYyZDNoNWVudDhmWDUvZ0lHQ2c0U0Zob2VJaVlxTGpJMk9qNUNSa3BPVWxaYVhtSm1hbTV5ZG5wK2dvYUtqcEFDbHBxZW9xYW9BQUFBQXE2d0FyYTZ2c0xFQXNyTUF0TFcydDdpNXVydTh2YjYvd01IQ3c4VEZ4c2ZJeWNyTHpNM096OURSMHRQVTFkYlgyTm5hMjl3QTNkN2Y0T0hpNCtUbDV1Zm82ZXJyc0FBc1M3QUpVRml4QVFHT1diZ0IvNFd3UkIyeENRTmZYaTJ3QVN3Z0lFVnBSTEFCWUMyd0FpeXdBU29oTGJBRExDQkdzQU1sUmxKWUkxa2dpaUNLU1dTS0lFWWdhR0Zrc0FRbFJpQm9ZV1JTV0NObGlsa3ZJTEFBVTFocElMQUFWRmdoc0VCWkcya2dzQUJVV0NHd1FHVlpXVG90c0FRc0lFYXdCQ1ZHVWxnamlsa2dSaUJxWVdTd0JDVkdJR3BoWkZKWUk0cFpMLzB0c0FVc1N5Q3dBeVpRV0ZGWXNJQkVHN0JBUkZrYklTRWdSYkRBVUZpd3dFUWJJVmxaTGJBR0xDQWdSV2xFc0FGZ0lDQkZmV2tZUkxBQllDMndCeXl3QmlvdHNBZ3NTeUN3QXlaVFdMQkFHN0FBV1lxS0lMQURKbE5ZSXlHd2dJcUtHNG9qV1NDd0F5WlRXQ01oc01DS2lodUtJMWtnc0FNbVUxZ2pJYmdCQUlxS0c0b2pXU0N3QXlaVFdDTWh1QUZBaW9vYmlpTlpJTEFESmxOWXNBTWxSYmdCZ0ZCWUl5RzRBWUFqSVJ1d0F5VkZJeUVqSVZrYklWbEVMYkFKTEV0VFdFVkVHeUVoV1MwQUFBQzRBZitGc0FTTkFBQVZBRHNBTHdBMkFEUUFQZ0JFQUVvQUFBQWUvcWtBQndJTkFBQUMvUUFBQUFBQUFBQUFBQUFBQUFZWUFBQUw4QUFBRU9nQUFCTndBQUFUaUFBQUU2QUFBQk80QUFBVDBBQUFHNEFBQUNFWUFBQWhNQUFBSVVnQUFDalVBQUF2WEFBQU1Rd0FBRGtrQUFBOFpBQUFQNmdBQUVGSUFBQkNWQUFBUmVnQUFFWG9BQUJJTUFBQVNkUUFBRThBQUFCVUZBQUFYUndBQUdUVUFBQmxyQUFBYUVBQUFHcmtBQUJ1eUFBQWNPd0FBSEdnQUFCeXJBQUFjMEFBQUhXQUFBQjd6QUFBZnNRQUFJWWNBQUNOZEFBQWt2QUFBSm1JQUFDZ1ZBQUFwU0FBQUtzOEFBQ3kzQUFBcytBQUFMVUlBQUMzUkFBQXVRZ0FBTHNnQUFEQS9BQUF5dVFBQU5MY0FBRGE3QUFBNGpRQUFPZk1BQUR1bUFBQTlKUUFBUUJjQUFFSWJBQUJDN1FBQVJHNEFBRWFLQUFCSG5nQUFTYUFBQUV0TkFBQk5PQUFBVHNVQUFGRFNBQUJTdlFBQVZJNEFBRldTQUFCVzZRQUFXRjhBQUZxT0FBQmNjZ0FBWGQwQUFGOWFBQUJmOGdBQVlJRUFBR0VjQUFCaHF3QUFZZk1BQUdJaEFBQmpnZ0FBWlA4QUFHWGpBQUJuWWdBQWFGc0FBR21LQUFCcmV3QUFiTlFBQUcxb0FBQnVlQUFBYjhVQUFIQkZBQUJ4M0FBQWN6TUFBSFJaQUFCMXZ3QUFkd0lBQUhnVkFBQjVQd0FBZWxFQUFIdElBQUI4UGdBQWZab0FBSDdLQUFDQXZnQUFnY0FBQUlLR0FBQ0MvUUFBZzcwQUFJUVdBQUNFSEFBQWhsZ0FBSWg0QUFDSWZnQUFpSVFBQUlpS0FBQ0lrQUFBaUpZQUFJaWNBQUNJb2dBQWlLZ0FBSWl1QUFDS1R3QUFpMzhBQUl1RkFBQ0xpd0FBaTVFQUFJdVhBQUNMblFBQWk2TUFBSXVwQUFDTHJ3QUFpN1VBQUl1N0FBQ0x3UUFBaThjQUFJdk5BQUNMMHdBQWk5a0FBSXZmQUFDTDVRQUFpK3NBQUl4MEFBQ015QUFBamRjQUFJOUJBQUNRdUFBQWtPb0FBSkl5QUFDVHlBQUFsZndBQUpnZUFBQ1ppUUFBbWJnQUFKbnVBQUNhaXdBQW5TRUFBSjltQUFDZ0lRQUFvUHdBQUtIS0FBQ2pNUUFBcEVRQUFLWVJBQUNuRVFBQXArQUFBS25pQUFDcldBQUFxMTBBQUt0aUFBQ3J0d0FBclVVQUFLMUxBQUN1UEFBQXJ5MEFBSzgxQUFDdk5RQUFyenNBQUs5QkFBQ3ZSd0FBc2c0QUFMT3pBQUN6OWdBQXRFQUFBTFNZQUFDMDdnQUF0UjBBQUxWTUFBQzEwd0FBdG9RQUFMYUtBQUMya0FBQXR6NEFBTGlNQUFDNUNRQUF1WVVBQUxzR0FBQzhQZ0FBdk9ZQUFMMEVBQUM5TVFBQXZZY0FBTDJMQUFDOWtRQUF2WmNBQUwyZEFBQzlvd0FBdmFrQUFMMnZBQUM5dFFBQXZic0FBTDNCQUFDOXh3QUF2YzBBQUwzVEFBQzkyUUFBdmQ4QUFMM2xBQUMrV2dBQXZxNEFBTDhEQUFDL1BRQUF2NUFBQUwrdEFBQy8vd0FBd0ZrQUFNQ3ZBQURBN1FBQXdUZ0FBTUo2QUFEQ3ZRQUF3N01BQU1PNUFBRER2d0FBeFJnQUFNVWVBQURGSkFBQXhTb0FBTVV3QUFERldnQUF4V0FBQU1Wa0FBREZhZ0FBeFhBQUFNVjJBQURGZkFBQXhZSUFBTVdJQUFERmpnQUF4WlFBQU1XYUFBQy8rNy82UUxEQXZNQlZBSWRBQUEzTkRZM05qWTFOaVkxTkRZM05EUTNOalkxTmpZM05DWTNOaVkzSmdZSEJnWUhCZ1lITmljbUpqVTJGak15TmhjeUZqTVdOak0ySmljbUppY21KaWMwSmpVMkpqVTBKalVtSmljbU5DYzBOQ2NtTmljbUppY21KaWNtSXlZbUp5WW1KeVlqSmlZbkppWTNOaFkzTWpZM05oWVhGallYTWhZWE5oY3lOaGN5RmpNV05qTTJGaGNXTmpjMkZqTXlOak15RmpNeU5oY1dGaGNXRmhjV05oY1dGeFlXRnhjV0ZoY1dGaGNXRnhZV0Z4WVdGeFlXRnhZeEZoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZnY1VGaGNXRlJZV0J3WUdGUVlVQndZR0J3WUdCd1lHQndjR0JnY0dCd1lHQndZSEJnWUhCZ1lIQmdjR0JnY0dJZ2NHQndZR0J3WUhCZ1lIQmdZSEJnWUhCZ1lIQmlZSEJoUWpCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCd1lqSWlZakppSW5Jd1ltSnlZaUl5Y2lJaWNtSmljbUlpY21KeWNtSmpjMkZqTTJOak1XRmpjeU5qYzJOamNXQmhjV0ZSWVZGaFlYRkJjV0ZoY1dCaGNXRmhjV05qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5EYzJOell6TmpZM0ZqYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOelFtTlRRMk5TWTJKeVluSmlZbkppWW5KaWNtSmljbUppY21KaWNtSmljbUppY21OQ2NtSmljbUppY21KeWNtSmljbUppTW1JZ2NtSmdjaUJnY0dKZ2NHQmdjR0JnY0dCZ2NHRmdjR0JoY0dGaFVHQmdjR0ZBY1ZGQVlWQmhRVkZCWVhGaFlYTmpZM01oWTNNallYRmdZVkZnWVhGaFVHSmdjR0JnY0dKZ2NXRm5FQ0FRSURBUUlDQVFJQkFRRUJBUUVCQWdJQkJnd0hCd3dIRFJrTkFRRUJCUVlNQlFVTEJnUUhCQXNYRFFJREFnTUJBZ0VDQWdJQkFRRUJBd0VEQWdFREFRSUNDQVFDQlFNSkJBWUtCUVFHQXdjREJ3Y0RBZ2NCQWdvRkJRY0ZCQWtHQlF3SEJRY0ZDQWdJRUFrQ0NnUUlEUWNPSGcwT0hROERDd1FGQ2dVS0ZBc01GdzBJRUFrREJ3UUZFQWNGQmdjREFnc0VCUU1DQXdNREJ3SU5CZ2NCQVFjQ0FnZ0hCUVVGQXdNRkFnUUNBZ1VMQXdJQ0FnWUdBZ1FCQWdRSkJnSURBUUlFQVFFQkFnSUNCd1FIQXdZQ0FnUUVCd01FQmdNRkFnVUNBUWtJQXdVREJ3SUJCZ1FLQ0FVSkFRb0lCQU1HQkFRR0JBY0hBd2NFQWdvQkJRa0ZDUkVKQmd3TUNRUUpGUXNMRlEwRUNBc0tBd2dFQlE0R0N3MElCQVVKQXc4RkNBVUZDZ1lHREFVTERSRU5DZ1lDQ2djS0N3a0ZJQWtGQndNTUFWc0JBUUVFQVFRQ0FnRUJBUUlCQVFJQkNnSUhGQW9ORkFnUER3Y0xBd0lNQmdRTURRVUlBUXdDQ0FNSURRWUpCd0lGQXdVRUFnWU5BZ01DQlFjSkFnUUZBd2NCQWdJRUFRRURCUVlCQWdRQ0FnWUNBZ1FDQXdjQ0FnTUNBd1VDQWdNQ0J3SUNDZ1FMQ0FVR0J3d0lEQW9GQ0FRSUdRWVJIdzhGQndVRkNnUUpCZ0lLQlFJQ0JRSUZBUUlDQ0FFQkFRRUZBUUVCQWdFQkFRRUNBdzBkRHdVSUJRVUpCUUlDQlFFQkJnNGJEQVVJQlFZTkJnSUdLd1VJQkFZSkJRTUdBd1VLQlFnZ0VBa1JDZ2dTQ1FnUENBNGxFUUVDQVFFQkFnSUVBUXdFQ0E4TEF3RUNBUUlCQkJJbEVCSVNDd2dPQ3dNR0FnUUZBZ1FHQXdNSEJRa1dDd1VMQlFzR0FnWUlCUUlFQWdjRkJRTUZBd0lHQmdNQ0FnTUZCZ0VCQVFFQkFRRUJBZ0VEQVFJQ0FRSURBUVFCQXdFQkFRRUJBUUlEQWdJQ0FnSUJBUUlDQWdJREJBVUJBZ29DQlFNREJRSURBZ2dKQndvREFnc0VBdzBOQkFrSUJRTUZCUWtJQkFrUkNBUUtCUTBPQmdFSEFnb0ZGRElTQXdjQ0F3a0RDQU1DQWdVREJROEdEQU1JQkFRR0NBY0ZDZ2tEQmdJSUFRSUxEQU1FQXdrQkJnTUlCd01JQVFrR0FnSUVBZ0lDQWdjREFnY0JBZ1lDQXdVREJBY0RBd0VCQXdFQ0FnSUNBd0VCQWdNREFRRUJBZ0VCQXdFQkFnSUJBUVFGQmdZSUJRSUNBUUlCQVFJREFRTUQyUWNQQ0F3SUN3SVhJUThKQkFjTUJ3WUxCUVFJQVFJRkFnTUVBZ1FIQXdNREFRWUVBZ2dKQkFRQ0FRY0JCZ29LQlFJRUFRVUNCQU1DQlFrRkVSWUZEUkFKQ3hrTkhCZ0VDQVFGQndRTkJnTVFFQTRNQlFnSkFnMEVCUWdFQlF3RkF3WUNCQVlEQkFnRkNRVUNCQVlFRHdjRkJBUUpCQVVEQVFJQ0FnRUJBZ0lCQVFFQkNBRUJCUUVCQWdnQ0JnY0VDQmdIQmdZQkNSRUlBd2NEQ3dNR0F3NFNDdzRjRGc0Y0RRSUdBZ0VCQXdJTkJ3RUVCZ0lKQVFRREFnRUNBUUVCQXhVcEFBQUNBQjRBQXdITkF5UUJIQUg5QUFBQkZnWVZGQllWQmhRSEJnWUhCakVHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZVUJ3WUdCd1lIQmdZSEJnWUhCZ1lqQmlZSElnWW5JaWNtSmljbUppY21KaWNtSmljbUppY21KaWNtQmljbUppY21KaWNtSmljbUppY21KaWNtTmljbkppWW5KalFuSmlZbkpqWTNOalkzTmpRM05qWTNOalkzTmpZM05qWTNOalkzTmpjMk5qYzJOamMyTmpjV0ZoY1dGak1XTmpNV0ZoY1dGaGMySnlZbUp5WW1KeVltSnljbUppY21KaWNtSmljbUppY21KaWNtSmljbUppY21KeVltSnlZMkp6Y3lGaGNXRmhjV0Z4WVhGaFlYRnhZV0Z4WVdGeFlVRnhZVUZ4WVdGeFlVRnhZVUZ4WVVGeFlYRmhZWEZoWVhGaFlIRmhZWEZoWVhGaFlYRmhZWEZCWVZGZ1lWRmhZWEZoVVdGaFVXRmhVR0JnY1VGQWNuSmlZbkppWTFKaVluSmlZbkppWW5KaWNtSmljbUlpY21KaWNtSnlZbkppWW5KaVluSmdZaklnWUhCd1lIQmhRSEJoWUhGQVlWRmhZWEZoWVhGalkzTmpZM05qWTNORFluSmlZakpnWUhCaFlXQmdjbUppY21KamMyTnpZMkZoWVhGaFlWQmdZSEJnWUhCZ1lIQmlNR0ppY21CaWNtSmljbUlpY21KaWNtSmljbUppY21KaWNHQmdjR0JnY0dCZ2NHRkJVR0JoY1VGaFVXRmhjV0Z4WVVGeFlXRnhZV0Z4WVVGeFlXRnhZV0Z4WVdGeFl5RnhZekZoWTNOallYTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qVTJORGMwTmpVMU5EWTNOQ1lCeUFFQkFRSUJBUUlDQkFRSUFRSUJBZ1VDQWdJQ0JnZ0VBZ0lDQWdVQ0JBSURDZ1VEQmdJS0JRc01CZ1FIQXdNTUJRVUhBd0lLQ1JFSUJRb0dDQTRHQmdvRkF3Y0RBZ1FEQndJQkFnTURDd1FEQWdVQ0FnRUJBd0lDQkFFQkJnSUVBZ0VCQVFNQ0F3VURBZ0VEQlFFSEJnUUlBd0lHQmdJQ0JBSUNCZ0lIQXdrV0NBZ1JDUklOREFzRkFnUUtCUVFHQXdVSkJRa1RDUUVCQWdjREFnVURCQVlFQmdJREJBSUpCQWtPQ0FrRkFnY0RBd01FQXdVSUJRWUVDUlVFQWdFQkNBVUdBd3dJQkEwSUNBUUZDd01LQ0JRRkRRWUVDQUVIQVFrTEJBUUJDQUlHQVFVQ0JnUUNCd01DQWdZQkJRZ0NBZ0VDQWdZQ0FnTUNBUUlDQlFFQkFRRUJBUU1DQVFFQlF3SUJBZ01DQXdRREFnVUNBd1FDQ0FRQ0NBTUVBUUlDQWdJSkJBd0RCQWdEQ0E4RkJRUUVDd1FERHdrRUJ3RUVBUUVCQWc4RUJna0ZEaE1KQmd3REF3SURDUWtERGdZRkRRSUJBZ0lEQmdNRkF3VUdBUUVKQ2hnV0VRTUJCUU1EQkFVSkNnVU1CZ2dGQXdnRkJBa0NBZ1VDQ0FJQkJBSUNCd3NFQWdFQ0F3VURBZ1VDQlFZREFnTUJBZ0VEQWdVRkFRSUZBUW9DQ1FjQ0N3Y0RDQUVEQ0FRRUNBTUZDUUlFQmdJR0JRVU5CUWdNQndJS0FnY0RBUVFJQkFVRkFnTUVBZ0lEQWdRREFRUUNBUUVDQVFFQkJRd0JBZ2dKQXdrR0F3VUpCUTRLQndrQ0FnVUhCUU1GQXdvS0JRSUhBZ0lFQXdZRUFRVUhCUVFHQWdRRENBUUNBZ01CQWdFREFRSUNBd0lDQkFNQ0JBTUZCQUlDQkFJQ0F3SUdBUUVDQlFJSkJnSURCUUlDQmdNRUJRVUhCZ0lWQ2hVTkF3Y0NCeElJR1NZUUNBc0dDZ1VDRGc0SUN3WURDQVVFQXdnQ0FnRUNCZ0lKRFFnRUJBSUdCd0lFQWdFQkFnRUJBUUlDQXdZQ0NBVUhEUWdIRGdjSURRWU1Bd1lDQ0FrRkN4VUlDUUlDQlFZREF3TUNBd2NFQmdJSENnY0VDZ1VaQkFJSkJBSUdCd1lDQXdnREJ3a0tDQW9IQlFjQ0FnUURBUTBMQ0FZRUFRZ0NBZ1FFQWdjR0NnWUVEQWtGQXdjQkN4QUlCQVlGQncwR0NCSUpBd1lFQkFnRURBY0ZCUW9MQXdJTkJ3VUxEQVlGREFVUEF3WURDd0VCQ3hJS0JRMEZDZ2NGRndVRUNBVUhBZ01HQWdRQ0JRRUJBd0lEQmdFQkFRSUNDUVlHQ0FnQ0JnY0ZCUWNFRVJzTEJBb0VDUVFGQWdZRUFnY0NEaGdMQXdRQkF3Y0ZEQXdKQWdJSUJBY0lDeEVIQWdFRENBY0ZDZ1VWRXdjTERnVUVCUUlGQVFJQkFRRUJBUVFDQlFFSUJBSU5FZ3NLQXdJTEZ3c0VCd1FLRXdvRkNnVUdEZ2dUTGhRSEVBUVZGd2dNQVFnREFnVUZBZ3NJQkFjQ0FnTUhBd1FIQWdZRkFRVUJCUUlEQVFFSEFRUUZBZ1FGQWdZSUJRb0dCQVlIQWdNRkFnZ0NBZ2tDRFJFSkJRc0dDd3NSQ0FRSUFBQUFBQUgvOXYvdUFsSUM0QUczQUFBQkJnWUhCZ1lIQmdZSEJnWUhCaFFIQmdjR0JnY0dCaFVHQmdjR0ZnY0dCZ2NHRmhVR0JnY0dCZ2NHQmhjMk5qYzJOelkzTmpZWEZoWVhGZ2NHQndZR0J3WUdCd1lHSXdZSEJoWVhGQlFYRmhZWEZnWVhGZ1lYRmhRVkZoVVdGaGNXRmhjVUZoY1dNaGNXRmhjV0ZoY1dGaGNXRmhjV05qY3lGamN5TmpNeUZqTXlOak0yTWpNMk5qYzJOamMyTnpZMk56WTJOelkyTnpZME56WTNOalEzTmpZM05qWTNOalEzTmpZM05qWTNOalEzTmpZM0ZnWVZGaFlWRkJZVkZnWVhGaFlYRmdZWEZoWVhGQllWRkFZWEZCWVhGaFFYRmdZWEZnWUhGQVlIQmhRSEppWW5KakVtSmljbUlpY21KaWNtSnlZbUp5WUdKeVltQndZR0J3WUdCd1lpSXdZR0l5WUdJd1lHQndZR0J3WUdKeVkyTnpZMk56WTJOell5TnpZM05qWTNOalkzTkNZM05EYzJOamMyTmpjME5pY25KaVkxSWdZSEJnWUhCZ1lIQmdZSEppSW5KaVluSmlZbk5qWTNOalkzTmpZM05qWTNOalkzTmljMEpqVTBOamMySmpjME5qYzJKaWMySmljMkppY25KaVluSmpRbkppWW5KaVluSmlZbkppWW5KaVluSmlZbklpY21JaWNtSnlZR05UWTJOeFkyTXpNMk1qYzJGak1XRmpjV0ZoY3lOeFkyRnhZMk14WTJNek15TmdFMEFnWURBZ29HQkFnRkNnZ0ZDUUlGQWdZRUFnUUNBZ0lCQVFFQkJnSUNBd0VCQXdJQ0FnRUNCUUlHQ0FRSkNCUVBBd1FGQkFFQ0FnWUtEQVFJQlFZTUJnZ0JBUXNEQWdFQkFRRUZBZ01CQVFRQkFnTUJBUUVCQkFNQkJnTUVBZ0VKQ0FZRUJRVUpCQUlJQXdFSUV3c0ZDd1VGQndRQ0JnTUVCd1VEQ0FRRUNBVU1GUWtQQ1FJSEJBSUNBd0VCQWdVQ0JBRUJBUVVDQWdFREFnSUJBZ0lDQWdVQkFRRUJBUWdGQWdFQ0FRRUJBUUVDQVFFQkFRRUNBUUlDQVFJQkFRSUVBUUlFQVFFQ0FnTUhDQTBHQ3dNRUJBTUhCQVFHQkFVS0F3Y0VDQkFKR1RjYkVTSVNDQkVLQlFnRkJBWUVEQU1DQ2hJTENSTUxFU1VVQ2drRUJBZ0VBd2NFQ2dFQkJnWUNCUUlFQmdFQ0FRTUNBd0VCQWdFQ0FnRUJBUVVJQXdnRUFnZ0JBZzRPQ1FZQkFRSUVBZ1FFQXdVTUJnUUdBZ1FGQlEwTkJnWVFCZ01CQVFNQkFRSUJCQUVCQVFJQkFnRUJBUUVCQVFFQkFRSURCQUlDQXdJQ0JRSURCQUlDQ0FJRUJnSU5DZ2NFQXdvREN3WUNCZ1FKQWdFc0JRZ0ZFaFVNQ0JFR0F3Z0VDZ2NQRndzRUJ3RUZEQVVUQkFrQzNRTUNBZ1lJQkFJR0Fnc0pCUWdFQWdVR0RBd0dDd1FDREFRQ0FnY0NDZ1lGQ0FZREJRNEZDUklKRVNRUkFnY0RCUWdKRGdJSEFRY1NDQTBFQmdvREJnTUZDQVFGQWdZRUJnd0dCZ3dGQ1JNSUN3SUNDUVFFQlFjREJRa0RCUVVSSUE0RUNRVUxBUWdFQVFJRUFnSUVBUUlCQVFFQ0FRRUJBZ0VDQVFFQkFRRUVCZ3NOQkFrRkF3Y0NCQWdFQ2dZRUNnTUZCZ01QRkFzRkJ3VUVDUVFGQ0FZRkRnZ0lFd2tJRVFJRkRBVUlEQWdLQ0FVSERnY0VDQVVLRXdrSERRY0ZDZ1VHQ2dVRkN3Y0dEQVVLREFjT0lBd0ZEZ1VNRGdNQkJBSUZBZ0lDQWdJQkFnRUNBZ0VDQVFFQkFRSUNCUUlEQXdFQkFRRUJBd0VCQVFNQ0FnRUJBZ01DQ1FZQ0FnUUNBZ2NFQndFREJnSUVBd1VWQ3dRR0JBc0xBd3NGQXdjREZUd1hGd29TQ2dZQ0JRTUNBd01CQ0E0RENnRUNBd01GREFVRUJnTURBUUlDQmdJSkNRVUVDQVlVRVFNR0FnVUlCQW9SQ0FVTEJRVVRCUTRKQlFnUkJSY0RDQU1GQ0FNRkF3SUNCZ01DQkFJREJRSUNBZ0lFQXdNSUJRRUVBUVlCQkFRQ0FRTUJBUUVCQVFFQkF3RUJBUUlCQXdFQkFRRUNBUUFBQUFILzdBQUxBT2NDbXdEaEFBQVRCZ1lIQmdjR0JnY0dCZ2NtSWljbUppYzJOamMyTmpjMk5qYzJOamMyTnpRME56WTJOelFuTmlZMU5DWTFKalluSmlZbkpqWW5KaVluSmlZbkppWTNOaGNXTmhjV0ZoY3lOak15RmpNMk5oY1dGaGNXTmhjV0JnY0dCaFVVRmdjVkZoWVZGQVlIRkJRSE5qYzJOelkyTXhZV0Z4WUhCZ2NHQndZR0J3WUdJd1lHRlFZV0ZRWUdGUVlHQnhZSEJoVUdCZ2NHRkJVV0JoY1VGaFVXRkJjV0ZoY1dGaGNXTWhVV0JnY0dKeVlHQnlJbUJ5SUdJeU1pQmlNR0JnY0dKaU1pSnpZMk56WTJNellVTnpZMk56WTJOelkyTnpVMUppWW5OQ1kxTmlZMU5pWW5Ud0lHQWdvRkNBRUNEZzRKQmdFQkN3UURCUXNHQkFZQ0JBWUZEQkVJQlFzQkFRRUJBZ0lDQWdFQ0FRRUNBUUVCQWdJSkJRMHJEQU1GQVFNS0J3VURCUXdGQkFjRkF3VUVEQm9RQlFrRkJ3d0ZBZ1FCQWdFQkFRRUNBZ0VCRHdjVUR3TUVCUVFDQWdFR0RBa0lDZ2NMQlFnQkFRRUNBZ0lDQkFFQkFRRUJBd0lCQVFFQkFRRUNBUUlDRGdjRkRBWUlBZ0VHQWhFTERRWUNCQVlFQlFzRkZRUUhCUVlGQWdNR0F3b0ZBUWdGQ1FFQkNnRUNCZ0lKQlFJQkFnRUNCUUlDQVFJQkFnRUJQZ0VDQWdjREF3TUJCdzhEQ2dFTkRBVUVCQVVEQVFJQ0JnSUpCd1VGQlE4TEJRVUpCUVFLQ0FRREN4c09DUjBOQlEwSUNRMEVBd1VEQ2c4TEFRUUdBd0lGQWdJQkFnRUNBZ0VGQWdFREFRRUNBd29UQ3dzVkRSRWZFUmdHREFVRkNRUUhEQWNLQndrT0FnY0lFZ2dOQkFjSkJnWUZDQVFGQWdnR0JBVUlCQXNTREE4SkJSRUVEUU1LRlFzRkNBVUxFQWNEQmdNSURnVUdDUVVFQ1FVSEFRa0RBZ1FEQVFNQkFRRUNBUUVDQVFFQkJ3WUdBd1VEQmdFQkFRSUNDQVVKQkFrRkVBMFhNQmtGQ1FZSENBTU9FUWdBLy84QUNmL2pBZ0VEeHdJbUFFa0FBQUFIQU9zQVpnRHMvLzhBR2YvZ0Fhd0Myd0ltQUdrQUFBQUdBT3N6QUFBQS8vLy9adi9rQW84RDJBSW1BRThBQUFBSEFLQUFaZ0QyLy8vL3pmNXhBZ01DMlFJbUFHOEFBQUFHQUtCUzl3QUFBQUwvb3YvcUFwTUMrd0YrQXEwQUFCTTNOalkzTmpJM05qWTNOalkzTmpZM05qWTNOaFkzTmpZM05qYzJOamMyTmpjMk1qTXlGak0yTmhjV05oY1dGaGNXRnhZV0Z6SVdGeFlXRnhZV0Z4WVZGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGZ1lWRmhZVkJnWVhGZ1lWRkJZSEJoWUhGQVlIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCd1lHQndZR0J3WUdCd1lHQndZR0J3WW1GUVlHQndZR0J3WUdCd1lpSnlZaUp5WW1KeVlpSnlZbUp5WTFKaVlqSmlZbkppY21KaWNtSmljVUhnSVhGaGNXRmhVR0ppTW1CZ2NHSWlNR0JnY2lCaWMwTnpZM05qWTNOalkzTmpZM05qUTNOalkzTmlZM05qWTNORGMyTmpVbUpqYzBOalUwSmpVME5pY21KamMwTmpjMk5EY21KalVtTmpVMEppYzBOQ2NtSmljbUpqVW1OalVtSnlZbUp6UW1OeVkySnlZbU55WTBKeVkwSnlZbUp5WW1KeVltSnlZbkppWW5KaWNtSmljbUppY21KamMyRmhjV05qTXlNamNXTWhjV05oY3lGak1XTWhjeU5oY3lGak0yRmpNeU5qTXlGaGNXTmhjR0JnY0dCZ2NHQndZVUJ3WUhCaFFIQmdjVUZnY0dGaFVCTmpZM05qWTNOalkzTmpZM05qWXpOalkzTmpjMk56WTJOemMyTkRjMk5UWTJOVFltSnlZMkp5WW1KelFtTlRZbU5TWW1OVFEyTlNZbUp5WW1KeVltSnlZbUp5WW1KeVluSmlZbkpnWW5KaVluSmlZbkppWW5KaVlqSmlZSEJpWUhCZ1lIQmdZSEpnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEZBWUhCZ1lIQmdZSEJoVVVGaFVXQmhVVUZBY1VCaFVVQmhjVUZoVUdGQlUyTXpZMk56WTNOalkzTmpJM05qSXpOall6RmpZWEZoWVhGaFlYRmhRSEZBY0dCZ2NHQmdjR0JnY2lKaWNpSmlNbUppY21KamMyTnpZME56WTNOallYRmdZSEJnWVZCaFV5TmpjMk5qYzJOVFltTlRRMkp6UW1KeVltSnlZbUp3WWlCd1lIQmlJSEJnY0dCd1lHRlFZR0J3WUdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZWEZoWVhGaFlYRmhZWE5qYWhFQVFLQkFjQ0FnUUdBZ1FFQkFVSkJRd0VBZ1lEQWdRRkJBb0JCQTBGQndVREF3Z0RCUWNGRUJFSURRWURCQWdGRHdnRENBSUlEZ1VMRGdVTkNBTU5Cd1lEQXdjQ0JRWUNCUU1DQ0FVQ0FnWUJBZ0lCQVFFQkFnSUJBUUVDQVFJQ0FRSUZBZ1VDQWdJQ0JnRUNBZ1FDQXdJQ0NBTUNBZ0lDQmdNRkJ3UUZDUVFHQWd3SEJRZ1VEZ2NQQ0E0ZkNRc0ZBZ1VJQkFVTUJRc1NEQTBEQ0FVRUJ3VUlBd3NGQXdrTkNRSUNBd0lPQ0FRREJBUUREeHdPQ3hnTUN4Z01DaE1IQndrRUNnSUNDQWNDQWdVQ0FnRUJBd0VCQVFFQkF3RUJBZ1FCQWdFQkF3RUJBUVFDQWdFQ0F3RUlBUUlEQVFFQkFnRUJBUUlCQkFFQkFRRUJBZ0lCQVFFRUF3TUNDQUVKQVFJSUJRSU9Cd1VOQXdNSUJRd0VDUVFDQ1FvRkF3b0NDQVVFQlFzRkFnb0NCUWtHQlJRSkJRb0ZCZzBHQmdzRkJnc0ZEQVVDQkFjRUJRc0ZFU0VSQWdzR0FnWUREQWdCQVFRQkFRRUNBUVFDQXdFQkdSQVFCQVlGQkFJRUFnSUZBZ1VCQVFNREFRc0ZBUVFDQVFFREFRRUdBZ1FCQmdFQ0FnSUJBZ0VCQVFNQkFRSUJBUUVCQVFFQ0F3SUJBZ0VHQndVRkJRTUlBZ2NHQWdRR0JBMExCUVFHQkFRSEJSQWhEZ1FHQXd3SUJBUUhBd29NQmd3R0JBSUdBd1VKQlFJR0FnSURCUVVDQXdVREFnTUNCZ0VCQVFFQkFnRUNBZ29DQ0FRQ0VRd0hEQWdDQmdNSkRnZ0tFUWdHREFNRENRSUlDQUlDQWdFRUJBVUVCZ2NJRVFnRkNRVUZDUVVDQmdJQkFRRUVBUWNCRFFNRENBVUNCZ0lEQWdNRkNBVUdEQVVDQkFFQ0FRTUJBZ0VDQkFrRUNSSUxFUU1MQkFJR0Jnc0dCQU1DQXdJQ0JRSUJCUUlIQVFJRENRVUVCd1FJRVFZRENBTVFGUXNPQndjT0J3VUhCUVVKQlFnUEFpOE9DQW9GQ2dFSEJ3UUJCd0lDQlFNR0FnRUZBUUVDQkFJREFRSUNBZ0VEQVFFREFRRUJBd0VCQVFJQ0FnSUNBZ0lFQWdnREJBY0NBZ2tCQndVQ0FnUUNDUVlGQ2dnRkRBZ0ZCUXdGQmc4SEN3Y0ZCdzBIREFVREJBa0ZEaVVSQlFrRkNCRUtFUVlFQmdRTEJnTURCUU1HQkFVS0JRTUhBd1VJQlFZR0JBZ0lCUWdCQVFnSUJBVUZCQUlDQVFFQ0JnSUNBd0lDQlFNSUFnUURBUUlGQlFNRkF3UUhBd01MQkFRYUhob0RHaG9NQlFJSUFnSUhBZ0VCQVFFQ0J3WUVCUVFJQmdRTUNBUUZEQWNEQmdNREJnSUZEQVVEQndNSUJBb1VDd3dIQ0FJTEJRVUlCUWdRQ2c0Z0RnVUhCUVVRQmdnTkNnUUdCQWNQQ1FZU0JRUUdBZ1VOQmdzREJBNFFBZ2NEQkFnRkF3a0ZCUXNHQlE4SENBRUJCUUlCQXdjQ0JnUUNCZ0lDQWdJR0FRVUJBUU1HQXdJREJnUUVBUUVDQXdJQkFnUUJBd0VCQVFFQ0FRSUJBd0VCQWdJSkNBVUVCZ1FQRXdJR0F4RUVCZ29HQ0FNRUVBZ0dCUUwrU1FvU0JRWUhCQUlFQWdRSEFna0JCZ1FCRXc4RUNBZ09DQThGQ0FRSkF3TUZCQVVLQkF3YkRRTUhBd01HQXhBTEJRY05CUU1HQXdRSEJRVUlCQU1GQXdNR0JRSUlBZ01DQWdVQkFnRUJBZ1lDQXdNQ0FnSUJBUUVEQWdJQ0FRSUVBUUlDQmdNQkNRTURCQUlDQWdJRkRRVURCUU1EQndFREJBSUZCZ1VEQndRT0F3SUhCQVFIQkJRa0ZBVUxCeEFOQlFJSUF3d0xCd2NLQWdJTEJBUUdBZ0VCQkFFQkFRRUNBUWdDQ3c4TENnd0lDd1VSQ3dVRkFnSUNCUUVCQVFJRUFnTUVDd0lSQWdnRkFRa0NBd2tFQmdrRkRBUUNDd3NFQVFJQkF3WUdCUTBJQkFnREJBY0VCQWdFQXdRQ0FnRURBUVlCQkFJR0N3b0NBUVFJQkFjVEJ3VUpCQWNIQWdjR0FnTUVBd0VHQWdFQkFnVUNBZ0VFQWdNQ0FnSUNBZ0VDQXdrQUFBTC93LzZ6QWRNQ3BnRitBZlVBQUJNVUJnY0dCeHdEQmdZSE1qWTNOalkzTmpZM05qWTNOalkzTmpRM05qWTNOalkzRmpZM05qYzJOamN5RmpjMkZoY1dNaGNXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZaUZ4WVdGeFlXRnhZVUZ4WVhGZ1lYRkJRSEJnWUhCaFFIQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dJZ2NHQmlNbUJpY2lKaWNtSmljbUppY21KaU1tSmljbUppY21KaWNXQmhjV0ZoVVVCaFVHRkJjV0ZoY0dGaFVVQmhVV0JoVVVGaGNXRmhjV0ZoY1VGQmNYRmhZWEZoWVhGaFlYRmhZVkJnWWpJaVlISWdZakJpWWpCZ1lIQmlJakJnWUhCaUlIQmlJSEJnWW5OalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOamMxTkRRM05DWTNORFkxTkNZMU5EWTFORFluTkNZM05EWW5KalUwTmpVbUppY21KalUyTmpjME56VTBOalUySmpjME5qVTBOaWMwSmpVME5qVTJKalUwTmljbU5qVW1OU1ltTlRZbUp6UXVBalUwTmpVdUF5Y25KaVluSmlZbkppWW5KaUluSmljbUJpTW1KaWMyRmpjMk5qYzJGRE0yTmpjMkZoY1dOak1XTmhNbUppY21KaWNtSmljbUppY21JaWNtQmlNaUpnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dJZ2NHRkFjR0JnY0dCZ2NHQmdjR0ZnY0dCaGNVRmhjV0ZoY1dNaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dNellXTnpZMk56WTJOelkyTnpZM05qWTNOalkzTmlZM056WTJKeVltTnlZbWpnWUNCd0lCQVFFRkF3TUxEd2NEQndNQ0JnSUVCd01JQVFnQkFRSUdBZ1FHQXdRSUJnb0hBZ2NERFFVRUF3Z0RGaFVLQ0FNRkFnSUVCQU1FQWdFSUFnSURBZ0VHQVFFQ0JRSUJBd0lDQVFNQkFnTUJBUUVCQWdRQkJ3NERCUU1GQkFFRkRRVUdEZ1VEQkFNQ0J3TU5Cd1VGQ1FVRkNBUUxCUUlEQ2dVUEJ3UUpFQWdIQWdFS0JRTU1CZ0lPQ2djQkFRRUJBd0VCQWdFQ0FRRURBUU1DQXdFQ0FnSUJBZ0VCQXdNRkNRTU1CUU1GQkFvSkJBMEhCdzBIQlFrRkJBWURCZzBGQ0E4SUNSSUlBd1VFQ1FjRUJRa0ZCQVFDQ1FZQ0JnTUNCd0lHQ0FjQkJBSURBd0VDQXdFREFRRUJBZ0lDQVFFRUFnRURBUUlCQVFVQ0FnRUJBZ0VCQWdFQ0FRRUJBUUVCQVFRQkFnRUNBUUVDQVFFQkFRSUZCQW9DQlFNS0JnUUxBZ0lDQ0FNSUJnY0VBd0lFQVFZTkJ3VUpCZ3dCQ1EwR0JSUUZFQjhPQ3duc0JnZ0VDZ1VFQWdRQ0NnWUNDUUVDRFE0SEJRY0RBdzBFQ1FFQ0NBTUNBZ1lDQlFnRkNnVUNCd0lDQ0FFSkN3SURBUUVCQWdFQ0FnSUJBZ0lIQVFJSUFnUURBZ1FIQXdnUkNBTUZCQVVNQlE0T0JBd0hEUVFDQ3dvRERBY0VBZ1FDQ0FZQ0FnTUVDQUlDQWdJRkFnRUJBUUlCQWdVQ3BBVUZCQmtYQlNJdE1pMGhCUWdEREE0R0FnVUVBZ1lEQWdVQ0J3TUJCQU1CQWdJREFRTUJBZ0lDQlFJQkFRRURBUUVCQnc4SUJ3UUdCZ0lEQlFVSUFRRUxCd0lHQXdJSkFRSUpBd01GQlFVRkJ4RUZEaGNRQndnR0JCRUlCd2dESlNVSUNnY0xBZ0lJRFFVRkJRSUNBd0lCQkFJRUJBSUNBZ0lGQVFJQkJRTUZBZ01GQmdRRUFRY0JBZ2dFQWdvUUF3Y09DQVVKQlFRSUJRd2dEd1VOQlFvTUJ3Z0NBZ3dEQWdNWUJnc1pDd2dGQkFVSUJRd0pEUVVHQ0FVRENBSUtBUVVFQVFFQkFnRUNBUU1CQVFFREFnSUJBd0VDQlFJS0JRSUhBd0lHQWdJRkFnVU9CQU1HQXdVRUF4UUpGUWtLRWdrSERBY0ZEQVVEQmdRR0RRa0pFZ3NIREFnSUF3TUZBd01JQlFRS0JBVUZCUWNFRVFZT0J3d1NDQVVMQlFVSEJBTUdBd0lHQXdVTkJ3SUxCZ3dGQWcwR0Jnc0ZEUXNIQXhnZEdRUURCZ01SS2l3a0F3WUJBd0lEQmdJRkFnRUNBUUlFQkFFREJBVUZBUUVCQWdFQkFnRUJBUUlDQVFFQ0FRUCszd29IQlEwSEJBSUZBZ1VCQVFRQkFnRUJBUUVDQWdnQ0FRUURBZ0lEQWdNR0JBb0NBZ29CQ0FJQkNROE1FU1FUQncwR0NoTUtDUlFIQWdnQ0JRZ0RCd0VFQndRSURnWUNCQUlEQndJSEJBRUZBd0VCQmdjQ0NBb0dCQWNGRGhFR0N3WUdCd2NJRlFnZUZTc1VDeFFMQkFjQUFQLy8vK3ovOHdKb0E4Y0NKZ0JRQUFBQUJ3RHJBRklBN1AvL0FCei8vZ0cvQXIwQ0pnQndBQUFBQmdEck0rSUFBQUFEQUJULzVBSmtBdllBNWdJREFwVUFBQUVHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCd1lHQndZR0J3WUdCd1lIQmdZSEJnWUhCaFFIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ2NHQmdjR0JnY0dCZ2NHRlFZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lIQmdZSEJoVUdCZ2NpSmljbU1TWW5KalkzTmpZMU5qWTNKalkzTmpZM05qWTNOalkzTmpZM05qYzJOamMyTmpjMkpqYzJKamMyTmpjMk5qYzJOamMyTXpZeU56WTJOelkyTnpZMk56WTJOelkxTmpZM05qWTNOamMyTmpjMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkzTmpRM05qWTNOaklYRmhRWEZoY1dGaGNXTWhjV01nTVdOamMyRmpNV01qWTJOelkzTmpZM05qWVhGZ1lWRkFZWEZoVVdCaGNpQmlNaUpnY21JaU1tQmdjbUJpTUdKZ2NHQmdjaUppTTJOelkyTnpZM05qWTNOalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTnpZMk56WTJKeVltSnlZbklpWW5KaUluSWlZaklnWUhCZ1lIQmdjR0J3WUhCZ1lYRmhZWEZoWVhGalkzTmpjMk56WTJOU1lHQndZR0p5WTJOelkzTmpZWEZoWVhGQVlYRmdZVkZBWVZCaU1HQmdjR0lnY0dCeUlHSXlZMEp5WW1KeVltSnlZMkp5WTBKelFtTlRVMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk56WTJOellXTnpZMk56SVdOeklXRnhZMkZ4WVdGeGNXRmhjV0ZoY1dGaGNXRnhZR0J4UVVCd1lIQmlJSEJnWUhCaFFIQmdZSEJpSUhCZ1lIQmdjR0loVUdCZ2NHQmdFR0JnY0dCaFVXQmhVR0ZSWVdCeFFHRlFZWEZCWVZGaFlYRmhZWEJoWVhGZ1lYRmhjV0ZoY1dGaGNXTWhjV05nY0dJaU1HSmdjR0JpTWlKaWMwTmpjMk5qYzJGamMyTmpjMkZqYzJOaWMwTmpjbU5qVTBKaWMySmpVMkpqVTJKaWNtTkNjR0JnY0dCZ2NHQmdjR0JnY0dKaWMyRmpjMk5qYzJOamMyTmljMkZqYzJOamMyTnpZMk56WTJOellXTXpJeUFoOEJBd0lFQndRSEF3SUNBZ0lDQXdNR0FRa0ZCQUlIQXdVSUJRb01CdzBIQWdJQ0JnRUNBd0lGQ2dZRUNBVUZBUUlHQlFJREJRSUVBZ1VDQWdVQkFnZ0hCUVVDQ0FRREJ3TUVBd0VHQVFJQ0JnTUVCZ0lHREFZRUF3VUVBUVVDQVFRSkRBZ0xEQUVJQ2dNQkF3UUlCZ0lHQVFJQ0FnZ0NCQUlJQkFVSEJnUUVCUUVDQXdrQ0JRSUJDUUVDQVFRQ0JnWURCd2dFQkFFRUFnRUlDQU1DQWdJQ0JRSUdCQUlIQWdZQ0FnY0RCQU1EQXdJQ0JBSUdBZ1lDQXdJSkJBSUNBZ01EQVFRRkFnZ0hCQW9JQndJRUFRRUZCZ0lJQVFrREJRWUZCd0lDQlFWWkNCQUlDaElJQWdnS0NRSUlCd1VLQlFZRUJRUURBZ1FHQVFVQ0J4QUpDQkVGQlE0SERpMFVDUVVEREJZTEF3Z0VDQUVDQWdRQkFnTUVBd2dFQXdzWkN3Y0RCUWNFQ2dFQ0JnNEZCQVFGQWdnRUF3TUVBZ0VDQWdJQkJ3SUlBZ1VLQlFZUkJnTUdBd2dYQ1FjTkJROEtCQUVFQWdNQ0FnTUlCUWNFQWd3WEJnUUdCQU1DQkFVUkJRc0lBZ01IQkFzT0JRd0dCUVlCQVFFQ0FRRUZBUVlCQkFnSkJSQVFCZzRDQ2dFSUFRSUVCQU1HQVFFREFRSUVBUUlCQXdFSEFRSURDd01EQkFNREJ3TUtCQU1JQkFVS0JRWUpCQU1HQWdvTUJnY09CUU1FQlEwQ0F3SUVBd0VDQVFFREJnRURBZ0VFQVFNQ0FRTUdBd2dCQmdJQ0NBRUJCdzRJQmdRR0F3VUVBZ1VEL3RzQkFRRUJBZ0VCQWdFQkFnSUNBZ0lCQWdFQkF3RUJBd0lCQWdJREFnVVBDZ2NGQWdRSUJBa0dBaEFkRGhRcUhRZ1JEZ3NUQVFRRUJBVUZDQWNFQXdnRUN3TUNDUUlCQVFFQkFnSUJBUUVCQVFFQkFnTURCQVlEQWdZQ0JBWUNBZ1lEREJJRUJ3SUJCZ1VDQWdJQ0FnUUJCZ0lCQXdFQ0J3Z0NDZ1VDQWdNRUV3Z0dEQUxMQlFrREJRY0ZDQVVDQWdZREFnVUNDQUVMQ3dJSERBWUlEd2dXRkFzYUN3TUhBZ2NEQWdNR0Fna1NDd2dOQ0FrSEF3Z0xCUWNGQkFjRUNBVUNDQVVDQ0FNSERBVUlEQWNGRUFnSUF3SUpDd0lGQ2dVSkNRUVBIQTBIQ2dzSkJBb0JCQW9EREFRRUFnRU1CUVVKQVFFR0RnVUZCUU1GQndNTUJ3SUxFZ2dLRVFjUENBY0dBd1VKQlFjREFRb0NBZ0lJQXdvTEJRc05Cd29JQWhBT0JnTUhBd1VIQkFrSUJBa0RCUVlFQlFzRkJ3WUdBd0lFQ2dVSUJna0dBZ2tSQ0FNR0JBY0JBZ2dGQXhBUkNSWVZDd1VFQmdZQ0RBSUdBUUVHQWdNRUJRZ0JBLzFVQXdRQkFRRUJBZ0lCQVFjRkRBY0tDQUVDQmdNVUZRY0tCd29DQkFFQkFnSUJBUUVCQWdFQkFRRUNBUUVNQkFVTEJRb0REQVlFRUJVTEJ3TURDUVVJQkFJSERBZ0RDZ1FHRGdnR0NRc0NBZzRHQndVSEJRUUVCUUlEQVFJRkFnSURCUTRXQlFZRUJnc09CUVFHQXdRREFnSUhCUUlJQkFjRENRWUVCQUlHQVFJR0JnSUxCd01FQkFjSEF3TUhBd3dIQXdNR0Fnb0tBd01GQWdVQkF3VUNBUU1EQWdRSEJBWURBZ1lKQkFnQkJBc0xDUU1DQmdJSkJBSUZEQWdDQlFJQ0JBSUdBUUVEQVFFQkFRRUNBUUVCQVFFQkFRSUJCZ01OQWdnQ0J3RUNCd2NEQ0FjT0Z3d0VDQVFJQWdvQkJRb0ZDUUlCQ0FFQ0NnSUlFUWdHQWdvQkJ3VUNDQkVDdGdVS0JRVUlCUWNIQXdvR0NoQUpBZ1lFRkJRSURRZ0xDZ1FFQmdRUURRY0hEd2tPQWdZR0FnTUZBZ0lCQlFFRUNRRURBZ0VDQXdjREF3SUVBZ01EQVFFQkJRSUZBUUlKRGcwSkVRb0tGQUlGQ0FVTEJnVURDZ1VGQmdZUEN3VUNDUVVEQlFRR0JnUUNCZ0lLQXdvS0FRRUpBd0lEQmdVQ0JnUUhBUUVHQXdJVENnc1NDZ01LQlFNQ0FBQUVBQlQvNUFKREF2WUE0Z0YrQWFnQ09nQUFBUVlHQndZR0J3WUhCZ1lIQmdjR0ZnY0dCZ2NHQmdjR0JnY0dCd1lHQndZR0J3WVVCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lVQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdjR0JnY0dCZ2NHQmdjR01RWUdCeUltSnlZeEp5WTJOelkzTmpZM0pqWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmlZM05qYzJOamMyTmpjMk5qYzJNell5TnpZMk56WTJOelkyTnpZMk56WTNOamMyTmpjMk5qYzJOelkyTnpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalEzTmpZM05qSVhGallYRmhZWEZqSVhGaklERmdZSEJoWVZGQVlWRkJZVkZCUUhGQlFXRmhjV05qYzJOak1XQmhVVUZnY0dCZ2NpSmlNbUJpTUdGeFlHRlJZV0Z4WVdGeFlXRnhRR0Z3WUdCd1lHQndZaUJ3WUdKelEyTnpjMk5EYzJOamMySmpjbUJpTW1JeUlHQndZR0J3WWlCd1lHSXlZbUp5WTBKeVkwSnlZbU5UWTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WW1OellXRmpZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY1dOaGNYTmhjeU5oY3pORFluSmlZbkpqUTFCZ1lCQmdZSEJnWVZGZ1lWQmhVV0ZnY1VCaFVHRnhRV0ZSWVdGeFlXRndZV0Z4WUdGeFlYRmhZWEZoWVhGaklYRmpZSEJpSWpCaVlIQmdZaklpWW5ORFkzTmpZM05oWTNOalkzTmhZM05qWW5ORFkzSmpZMU5DWW5OaVkxTmlZMU5pWW5KalFuQmdZSEJnWUhCZ1lIQmdZSEJpWW5OaFkzTmpZM05qWTNOalluTmhZM05qWTNOamMyTmpjMk5qYzJGak15TWdJY0FRTUNCQWNFQndZQkF3SUVBd2NCQVFrRkJBSUhBd1VJQlFvTUNBd0hBZ0lDQmdFQ0F3SUdDZ1VGQndVRkFRSUdCUU1DQXdJQ0JBSUZBZ0lGQWdJSEFRWUZCZ0lIQkFRR0F3UUZCUUlCQWdZRENBUUdEQVlDQkFJRkF3RUZBZ0VFQ1F3SUN3NEhDUU1DQXdRSUJRSUdBZ0lDQWdnQkJRSUlCQVVIQmdRQkFnWUJBZ01IQkFVQ0FRZ0NBUVFDQmdZREJ3Z0VCQUlEQWdFSUJ3UUNBZ0lDQlFJRkJRSUdBUU1IQWdjREFnTUNCUUlDQWdJR0JRWUNBd0lJQlFJQ0FnTUNBUVVGQWdjSEJRVUlCUWNDQkFFQkJRWUNDUU1CRFFZRUNBSUJCUVVVQWdVQkFRSUJBZ0VCQVFFSUZnc0VCZ1FHQWdJQkFRTUJCZ3dGQ1JNSkJBRUJBUUVIQXdvQkFnOFNDQVlCRVNVUkNSTUlCd2NFQXdnRENBVUpBZ0lEQ0FFQ0JBTUxGZ3NPQ2d3SEJBUUlCUWdSQ0FRSUJBUUJBd0lCQkFJQ0FRUUlBd1FLQlFrQ0Fna0pDQUlGQWdRR0F3TUZCQUlHQXdNR0FnSUNBZ0VDQVFJREFRRUNBd2tWRkJRN0FnUUNCZ0lCQkFFQ0JBVUdBd0lHQWdVRUVBVURCZ1FQQ0FrUERBZ1ZCQUlCQXdFQkJnYiszQUVCQVFFQ0FRRUNBUUVDQWdJQ0FnRUNBUUVEQVFFREFnRUNBZ01DQlE4S0J3VUNCQWdFQ1FZQ0VCME9GQ29kQ0JFT0N4TUJCQVFFQlFVSUJ3UURDQVFMQXdJSkFnRUJBUUVDQWdFQkFRRUJBUUVDQXdNRUJnTUNCZ0lFQmdJQ0JnTU1FZ1FIQWdFR0JRSUNBZ0lDQkFFR0FnRURBUUlIQ0FJS0JRSUNBd1FUQ0FZTUFzc0ZDUU1GQndVSkJnSUdBd1lEQmdJQkN3c0NCd3dHQ0E4SUZoUUxHZ3NEQndJSEF3SURCZ0lKRWdzSURRZ0pCd01JQ3dVRUJnSUVCd1FJQlFJSUJRSUlBZ0VIREFVSURBY0ZFQWdJQlFrTEFnVUtCUXdLRHh3TkJBZ0ZDd2tFQ3dRS0F3d0VCQU1NQlFVSUF3WU9CUVVGQXdVSEF3d0hBZ3NTQ0FvUkJ3MEZCUWNHQXdVSkJRY0RBUXdDQWdnRENnc0ZDdzBIQ2dnQ0VBNEdBd2NEQlFjRUNRZ0VDd0VIQ0FVTEJRWUVBd2dEQXdjRUNRb0pCZ0lKRVFnREJnUUhBUUlJQlFNUUVRa1FFUW9MQlFRR0JnSU1BZ29DQWdrRUJRZ0JBLzZzRXhVS0J3c0ZBd1VEQmhNSUJRZ0ZCUk1WRkFZQkFRSUJBd01PQlFVVEJ3b0JBZ1VCQVJNUkF3WUNCQW9EQlFJQkJna0ZCUUVFQlFRQ0FnRUNCQUVCQXdVSEJBUUpCQVlFQnhRSkRSZ0xBZ1VCQWdFQkFRSUNBZ0VEQVFjQ0J3Y0REZ2NGQkE0R0FnRUJBZ1lDQndNQkJRMEVCUVVGQXdjRUJBZ0NCZ3NGQlFrRkJBa0ZBd1lFQ0FVQ0JRb0ZBUUVCQVdVQ0JBSUpBUUVHQkFJSUJRc0dBZ1VGQWc0UkN3RUNBUU1DQWdFQ0ZTc1dCdzBHQmcwR0JBZ0J6UVVLQlFVSUJRY0hBd29HQ2hBSkFnWUVGQlFJRFFnTENnUUVCZ1FRRFFjSER3a09BZ1lHQWdNRkFnSUJCUUVFQ1FFREFnRUNBd2NEQXdJRUFnTURBUUVCQlFJRkFRSUpEZzBKRVFvS0ZBSUZDQVVMQmdVRENnVUZCZ1lQQ3dVQ0NRVURCUVFHQmdRQ0JnSUtBd29LQVFFSkF3SURCZ1VDQmdRSEFRRUdBd0lUQ2dzU0NnTUtCUU1DQUFBQUFRQVVBWHdBK0FMa0FKRUFBQk1HQmdjR0JoVVdCaFVHRlJZV0J4UUdGUVlYRkJZVkZoWVhGaFlYQmhZWEZnWVhGaGNXRmhjV0ZoY1dNaGNXTmdjR0lpTUdKZ2NHQmlNaUppYzBOamMyTmpjMkZqYzJOamMyRmpjMk5pYzBOamNtTmpVMEppYzJKalUySmpVMkppY21OQ2NHQmdjR0JnY0dCZ2NHQmdjR0ppYzJGamMyTmpjMk5qYzJOaWMyRmpjMk5qYzJOelkyTnpZMk56WVdNekl5b2dFQkFRRUNBUUVDQVFFQ0FnSUNBZ0VDQVFFREFRRURBZ0VDQWdNQ0JROEtCd1VDQkFnRUNRWUNFQjBPRkNvZENCRU9DeE1CQkFRRUJRVUlCd1FEQ0FRTEF3SUpBZ0VCQVFFQ0FnRUJBUUVCQVFFQ0F3TUVCZ01DQmdJRUJnSUNCZ01NRWdRSEFnRUdCUUlDQWdJQ0JBRUdBZ0VEQVFJSENBSUtCUUlDQXdRVENBWU1BdUFGQ2dVRkNBVUhCd01LQmdvUUNRSUdCQlFVQ0EwSUN3b0VCQVlFRUEwSEJ3OEpEZ0lHQmdJREJRSUNBUVVCQkFrQkF3SUJBZ01IQXdNQ0JBSURBd0VCQVFVQ0JRRUNDUTROQ1JFS0NoUUNCUWdGQ3dZRkF3b0ZCUVlHRHdzRkFna0ZBd1VFQmdZRUFnWUNDZ01LQ2dFQkNRTUNBd1lGQWdZRUJ3RUJCZ01DRXdvTEVnb0RDZ1VEQWdBQUJBQW8vK1FDVkFMMkFPTUIvUUtZQXNJQUFBRUdCZ2NHQmdjR0J3WUdCd1lIQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZVUJ3WUdCd2NHQmdjR0JnY0dCZ2NHQndjR0JnY0dCZ2NHQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJqRUdCZ2NpSmljbUZTSW5KaVlqTmpZM05qWTNOalkzSmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOaVkzTmpRM05qWTNOalkzTmpZM05qTTJNamMyTmpjMk5qYzJOamMyTmpjMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56YzJOamMyTmpjMk5qYzJKamMyTmpjMk1oY1dOaGNXRmhjV01oY1dNZ1VXTmhjeUZoY1dNaGNXRmhjV0ZnY0dCZ2NHRkFjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHSWdjR0JnY0dKZ2NHQmljaUppY21CaWNtSmpjR0ppY21KaWNtSnlZbUp6WTJOelkyTnpZMk56WUdGeFlXRnhZWEZoWVhNaFlYRmpJWEZoWTNNalkzTmpjMk5qYzJOell4SmlZbkppWW5KaVlqQmlZakJnWUhCaUlIQmdZbkpqWW5KaVkzTmpZM05qWTNOakkzTmpZM05qWTNOelkzTmpRM0ppWW5KaVlIQmdZSEJoUUhCZ2NHQndZR0J3WUdCd1lHQndZR0J3WUdKeVkyTlRRbUp5WW5KaVluSmpRMU5DWTNOaFlqRmdZWEZoWVhGaFlYRmhZWEZqWTNOalkzTmpZM05qWTNOalkzTmpJM05qWTNOak0yTmpNeUZoYzJNaGNXRmhjV0ZoY1dGaGNXRmhVV0ZBY0dCZ2NHQmdjR0ZBY0dCZ2NHQmdVV0JnY0dGaFVVQmhVVUZoVVVCaFVVQmhZV0Z4WTJOelkyTXhZR0ZSUVdGUVlHQnlJbUl5WUdJd1lHRnhRR0Z4WVdGeFlYRmhZWEZnWVZCZ1lIQmdZSEJpSUhCZ1luTmpZM056WTBOelkyTnpZbU55WUdJeVlqSWdZSEJnWUhCaUlIQmdZakppWW5KalluSmpRbkpqVTJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJKamMyRmhZMkJ3WUdCd1lHQndZR0J3WUhCZ1lIQmdZSEJnWUhGallYRnpZWE1qWVhNelEySnpRbUp5WTBKd1lHQWkwQkF3SURCd1VIQmdJQ0FnUURCd2dHQkFJSEJBUUlCUWNLQlFnTEJ3SURBZ1lCQWdRQ0V3VUlCUVlCQWdRRkF3TUZDUVFDQWdZQkFnWUJCZ1lHQWdjRUJBVURCQVlGQWdFQ0JnTUZCQUlHRGdZQ0F3SUZBZ0VGQWdFRUNnd0hDd2tDQ1FFQ0FRa0RBZ0lCQlFjR0FnVUNBZ0lDQ0FFRUF3a0VCQWNHQkFFQ0JnSUNBd2NEQkFFQkNBRUNCQUlHQmdNSENBUURBd01DQWdnSEF3SUNBZ0lFQWdZR0FnWUJBZ1FDQWdjRUFnTUNBZ1FDQWdJQ0FnWUNCZ0VFQWdnRkFnTUNCZ1FGQWdjSUJRVUhCUWNCQWdRQ0FRVUhBZ2dEQVF3SEJRZ0NBUVVFL3JZRUNnVURCUVFGQ1FNR0J3VUVBd0lCQVFJRkFnWUZBUVFFQWdNR0F3SUZBd1VTQ0FvSEF3Y09Cd2NKQkFJRkJRTUhBd2NFQVFrRkFRTUZBZ2NHQWdZQ0J3Y0JBZ2dEQXdZRUJBa0ZEQUVDQWdjRUNBTU5BZ1FHQ0FRREJnUUZCd2dHRGdVRkJnVUhBd1FDQWdJRkFnSUlBZ1lIQ0FvQ0FnZ0tCQWtEQWdVR0JRTUNBUVFEQWdJR0JRSUZBd1VIQWdVRkJRVUVCUVlMQXdRREFnRUNCaDBQQlFnRkJ3RUxCUVlDQkFRQ0F3RUNDUU1CQmd3SEF3Y0dCUVlGQVFFQ0F3SUJBUUlDQ1FVQkFRSUJBUUlCQWdRQ0F3SUVBZ2NFQndNQkJRVUNBd0VCQkFZQ0NRWUNBd1VDQ0FvS0JBSURDUU1KQ1FNTkJnUU9Cd2tCQVFJQkFnRUNCQUVDQlFvRkNBRUNCd0lHQmdFMUFnVUJBUUlCQXdJQkFRRUNDQllLQlFjRUJRTUNBUUlCQmcwRkNSSUtBd0VCQVFFQkNBTUpBdzRVQndFR0VTUVNDUklKQndjREJBZ0VBZ2dGQ0FJQ0Fna0JBZ1FEQ3hZTURRb0xDQVVFQndVSUVRZ0VCd1FFQVFNREFRSUVBZ1FFQ1FRRUNRUUtBZ0lLQ0FnQ0JRSUVCZ1FEQkFVQ0JRTURCZ0lDQWdJQkFnSUNBd0VCQWdNSkZCUVVPd0lFQWdVQ0FRVUNBUVFGQndJQ0JRTUVCQkVGQXdZRUVBY0lEdzBIRmdRREF3RUJBUVVHQXNzRkNRTUZCd1VKQmdJR0F3WURDd2tMQWdjTUJnZ1BDQTRUQ1FzYUN3TUhBZ2NEQWdNR0FpWUlEUWdKQndNSUN3VUhCUThJQlFJSUJRSUtBUWNNQlFnTUJ3VVFDQWtFQ1FzQ0JRb0ZDUWtFRHh3TkJBZ0ZDd2tFQ3dRS0F3d0VCUUVCQlFNR0JRVUpBUUVHRGdVRkJRTUZCd01NQndJTEVnZ0tFUWNOQlFVSEJnTUZDUVVIQXdFS0FnSUNDQU1LQ3dVTERRY0tDQUlRRGdZREJ3TUZCd1FKQ0FRTEFRVUdCQVVMQlFZRUF3WURBZ01IQkFVSUJna0dBZ2tSQ0FNR0JBb0lCUU1RRVFrUUVRb0xCUVFHQmdJTUFnb0NBZ2tFQlFnQkE1Y0JBZ0VEQWdJQkF3a0NDeEFOQmcwRkNnY0RDd01DQndZREFnWURBZ1FDQlFnRUJnRUNBZ0lFQVFFQkFnRUNBUVVCQVFrREF3RUZBZ1VGQWcwR0RBMEdCQUVDQWdNQkF3WUZCQTRIQlFnRUJnTUhCZ01HQVFJQkFRTUJCUVFGQ1FnUUNRb0lEd1VIQXdNRkJRRUhBd0VFQVFFR0FRUUNBUUlIQlFzV0JBTURBZ0lCQWdRQ0FnWUNBZ1lCQ3cwSkNoVUlCUWdFREFnSEF3a0ZCd0VDQ2djSUJBY0ZCQU1IQWdrREFnY05Cd01JQVFVTEJRVUlCUVVHRXg0SUNnZ0dCUTRJQ3drS0FnVUNDZ0lGQlFRQ0JnRUJCQUlFQVFFRkF3UUhBd0VFQWdJSkFnRURBUUlCQXdNQkFRRUZBZ0lIQ2dVRkNnVUxCUUlJRlFnSUJBTUZDUVVKQWdFREJRTUlCY0VURlFvSEN3VURCUU1HRXdnRkNBVUZFeFVVQmdFQkFnRURBdzRGQlJNSENnRUNCUUVCQ2hBS0F3WUNCQW9EQlFNR0NRVUZBUVFGQkFJQ0FRSUVBUUVEQlFjRUJBa0VCZ1FIRkFrTkdBc0NCUUVDQVFFQkFnSUNBUU1CQndJSEJ3TU9Cd1VLRGdJQkFRSUdBZ2NEQVFVTkJBVUZCUU1IQkFRSUFnWUxCUVVKQlFRSkJRTUdCQWdGQWdVS0JRRUJBUUZsQWdRQ0NRRUJCZ1FDQ0FVTEJnSUZCUUlPRVFzQkFnRURBZ0lCQWhVckZnY05CZ1lOQmdRSUFBQUJBQ2dCY3dFcUF1MEJHUUFBRXhZMkZ6SVdGeFl5RnhZV0Z4WVdCd1lHQndZVUJ3WUdCd1lHQndZR0J3WUdCd1lHQndZaUJ3WUdCd1ltQndZR0p5SW1KeVlHSnlZbU53WW1KeVltSnlZbkppWW5OalkzTmpZM05qWTNOZ1lYRmhZWEZoY1dGaGN5RmhjV01oY1dGamN5TmpjMk56WTJOelkzTmpFbUppY21KaWNtSmlNR0ppTUdCZ2NHSWdjR0JpY21OaWNtSmpjMk5qYzJOamMyTWpjMk5qYzJOamMzTmpjMk5EY21KaWNtSmdjR0JnY0dGQWNHQndZSEJnWUhCZ1lIQmdZSEJnWUhCZ1luSmpZMU5DWW5KaWNtSmljbU5EVTBKamMyRmlNV0JoY1dGaGNXRmhjV0ZoY1dOamMyTmpjMk5qYzJOamMyTmpjMk1qYzJOamMyTXpZMk16SVdGell5RnhZV0Z4WVdGeFlXRnhZV0ZSWVVCd1lHQndZR0J3WVVCd1lHQndZRzRRUUtCUU1GQkFVSkF3WUhCUVFEQWdFQkFnVUNCZ1VCQkFRQ0F3WURBZ1VEQlJJSUNnY0RCdzRIQndrRUFnVUZBd2NEQndRQkNRVUJBd1VDQndZQ0JnSUhCd0VDQ0FNREJnUUVDUVVNQVFJQ0J3UUlBdzBDQkFZSUJBTUdCQVVIQ0FZT0JRVUdCUWNEQkFJQ0FnVUNBZ2dDQmdjSUNnSUNDQW9FQ1FNQ0JRWUZBd0lCQkFNQ0FnWUZBZ1VEQlFjQ0JRVUZCUVFGQmdzREJBTUNBUUlHSFE4RkNBVUhBUXNGQmdJRUJBSURBUUlKQXdFR0RBY0RCd1lGQmdVQkFRSURBZ0VCQWdJSkJRRUJBZ0VCQWdFQ0JBSURBZ1FDQndRSEF3RUZCUUlEQVFFRUJnSUpCZ0lEQlFJSUNnb0VBZ01KQXdrSkF3MEdCQTRIQ1FFQkFnRUNBUUlFQVFJRkNnVUlBUUlIQWdZR0FqVUJBZ0VEQWdJQkF3a0NDeEFOQmcwRkNnY0RDd01DQndZREFnWURBZ1FDQlFnRUJnRUNBZ0lFQVFFQkFnRUNBUVVCQVFrREF3RUZBZ1VGQWcwR0RBMEdCQUVDQWdNQkF3WUZCQTRIQlFnRUJnTUhCZ01HQVFJQkFRTUJCUVFGQ1FnUUNRb0lEd1VIQXdNRkJRRUhBd0VFQVFFR0FRUUNBUUlIQlFzV0JBTURBZ0lCQWdRQ0FnWUNBZ1lCQ3cwSkNoVUlCUWdFREFnSEF3a0ZCd0VDQ2djSUJBY0ZCQU1IQWdrREFnY05Cd01JQVFVTEJRVUlCUVVHRXg0SUNnZ0dCUTRJQ3drS0FnVUNDZ0lGQlFRQ0JnRUJCQUlFQVFFRkF3UUhBd0VFQWdJSkFnRURBUUlCQXdNQkFRRUZBZ0lIQ2dVRkNnVUxCUUlJRlFnSUJBTUZDUVVKQWdFREJRTUlCUUFBQVFBZkFYZ0JPQUxvQVI4QUFCTVdOamMyRmpNV05qYzJOelkyTnpZMkZ4WUdGUlFHRnhZR0Z4UUdGd1lpSXlJbUJ5WWlJeVlHSXlZR0l3WW1CeUlHSXdZMEl6WTJOelkyTnpZM05qWTNOalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk56WTJKeVltSnlZbUp5SW1KeVlHSnlZbUl5SUdCd1lHQndZSEJnWUhCZ2NHQmhjV0ZoY1dGeFkyTnpZM05qYzJOalVtQmdjR0JpY21OamMyTnpZMkZ4WVdGeFFHRnhZV0ZSUVVCeFFVQndZaUZRWUdCd1lHQndZSElnWW5KaWNtSmljbUppY21OaWNtTkRVbUlpYzFOalkzTmpVMk5qYzJOamMyTmpjMk56WXlOelkzTmhZM05qWXpNellXRnhZeUZ4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WUdCeFFVQndZVUJ3WWlCd1lHQndZR0J3WWlCd1lWQmdZSEJpSUhCZ2NHQmdjR0Jwa0lFQWdLRWdnRUZnVUtCUVVMQkFZRUJRUURBUVFHQVFFRkFnWVJDQWtRQlFZT0J3NHRGQWtGQXdzV0N3UUlCQWdEQXdFQ0FRSURCQU1JQlFJTUdBc0hBd1VIQlFrQkFnWU5CZ1FGQlFJSEJBSUNBZ1lCQWdJQ0FRY0NBd1VDQlFrRkJ4RUZCQVlEQ0JjSUJ3NEZEd29DQVFJR0FRSUNBd0lJQlFzRERCY0dCZ01GQXdJRUJoRUZDd2dDQWdZRkNnNEZEUVVGQmdFQkFRRUJBUUVGQWdVQkJBZ0pCUkFRQmc0Q0NBTUlBUUlFQkFNR0FRRURBUUVCQkFJQkJnWUJBZ1FLQXdNRkF3WUdDQU1DQ1FjRkNnVUdDUVVMQ1FzSENBMEZBd1FGQXdjREFnTUNCQU1CQWdFQ0FnUUNBUU1DQVFNQ0F3SUJBd1lEQkFJQkJ3UUJCZ3NPQ0FZQ0FRWUJDQVFDQlFNQnBBSUVBUUVCQWdRQkF3WUZEUVlLQ0FFQ0JnTVVGZ1lKQmdJTEFnTUJBUUlDQVFJQkFnSUJBUU1CQWdvRUFnVUxCQW9EREFjRUR4WUxDQUVEQ2dRSUJRSUhDd2dFQ3dJSERRZ0VCd1VNQWc0SEJ3VUhCUUlDQXdZQ0F3RUJBZ0lIQWdJREJBMFlBZ1lERFFJRkRnVUZCZ01HQVFJRkJRWUVCUVlEQ2dVRUF3SUdBUUlHQlFJTUJ3SUZCUWNIQXdJSEF3TUZBd0lIQXdNR0Fna0JDZ01DQlFFQ0JRRURBUVFEQXdRQ0F3Z0RCd0lDQndnRkNRUUxDd2dFQ2dRRUJRSUZDd2dDQmdJRUF3WUJCQUVCQVFFQkF3RUJBUUVDQVFVREJBWUVBZ1lEQndJQkJ3Y0RCUVlFRGhjTUJRZ0RCUVFDQ0FJRkN3UUdBUUlMQWdnQ0N4RUpCZ0VKQVFnRkF3Z1JBQUFDQURqLytnQ0ZBdWtBU1FDUkFBQVRGZ1lIQmhRSEJoUUhCZ1lWRkJZWEZnWVhGaFFYQmhZSEppSW5KZ1lqSmlZbk5qWTNOaVkxSmpZMUppWTNORFkzTkNZMU5EWTFOQ1kxTmpZMUpqWW5KalkxSmpVMkZoY1dOZ015TWhjV0ZoY1dOaGNXQmhVVUZoVUhCaFlWRkJZSEZRWVhGZ1lWRmhZVkZSWVdCd1ltSXlJR0l5SW1KeVltTlNZMk5UWW1OVFkyTlRRbU56WW1OVGMwTmljME5qVW1ONE1DQXdVQkFRSUJBUUlDQVFJR0F3RUJBZ0lDQlFrRkNBTUNDQXdJQVFFQkFRSUJBZ0VCQVFJQ0F3TURBUUlDQVFJREFnVVBFZ29JRURZRENBUUVDUVVKQ0FJRkJRUUJBUUlCQVFJQ0FnRUJBZ0VEQVFVS0JnY0xCUWNNQndJREFRTUJBUUVEQWdFQkFRRUNBZ01GQkFMZkRpQU1DaFFJQ1JnTEF3VURBd2dFRVMwVUJSQURDUU1DQVFFREFnRUNBZ1VSQlFZVEJnTUdBeElOQndVTUJRTUdCQVVKQmdVSUJRZ1BDQWtYRFFnREFnb0VCQVlDQVFIK2FRSUJBd0lHQWdRTklCSUlDZ2tQQ2hNSkNoVUxEaEFhQkFRRkNRY0RFQWdOQ0FJRUFnTUJCUXNHQmd3SEJRd0hEaUVQRVI4VUJ3d0NIUXNVRFFrQ0Fnc0hBQUFBQUFFQUNRRVlBYVVCWkFCZEFBQUJGaFFWRkJZSEJpTUdKaWNpQmlNbUppY21CaU1pSmlNaUJpTW1JeVlHSXlNR0JpY21CaU1tQmdjR0JnY2lKaU1pQmlNR0p5WW1KeVltTnpZMk14WTJGeFlXTXpJMk16SVdNekkyTXpJV056WTJOekkyTnpJMk16WVdNelkyQVp3SUFRSUZDQWNMQlFVTEJnd1hEUVVJQlFNSEFnSUlBZ3NCQndnRERRME1DQTBNQnhBVUNnWU1CZ1FJQkFRSEJSY1ZBZ0VCQVFNQ0F3UUZDeGNOREJZTkJRa0ZDeE1LQlFvR0VpZ1VDaEVJQnc4R0NCSUdDQUVDQ2c0QlpBMGJDQVVKQXdRQkJBRUNBUVFCQVFJQkFRRUJBd0VCQVFFRUFRSUJBUUlCQVFJQ0FnWU5Cd1VZQlFFRkJBTUJBUVFCQWdFREFnRUNBUUVCQWdJQ0F3SUFBQUFCQUJRQVhRRzFBaE1CTUFBQUV3WVdGeFlXRnhZVUZ4WVdGeFlYRmhZWEZoY1dGaGNXRmhjMk56WTJOelkzTmpZM05qWTNOalkzTmpZM05qUTNOalkxTmpZM05EWTNOaVkzTmpZM05oWVhGaFFYRmhZWEZoWVhCZ1lYQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ2NIQmdZSEJnY0dJZ2NHRkFjR0JnY1dGeFlXRnhZV0Z4WVdGeFlYRmhZWEZoWVhGak1XRmhjV0ZoY1dGaGNXRmhjR0JnY0dCZ2NHQmljbUppY21KaWNtSmljbUppY25KaVluSmlZbkppY0dCd1lHQndZR0J3WUdCd1lHQndjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0ZBY0dJaWNtSmljbUppY21KaWNtSmljbUpqVTJGamMyTmpjMk5qTTJOamMyTmpVMk5qYzJOelkyTnpZMk16WTJOelkyTnpZMk55WW1KeVltSnlZMUppWW5KaVluSmlZbkppWW5KaVluSmljbU5TWW1KeVkyTnpZM05qWTNOalkzTWhaN0FRWUNBUUVDQndFQ0J3TUVBZ2NHQWdZREJBb0VCZ3NHRFFRRkJBTUdCd0lDQkFNSUFnVUdCUVVCQVFZQ0JnTUhCQVFFQWdjQkFRWUZCUVFEQkFnQkN3a0NDQWtHQVFVQkFnWURBZ1lEQ2dZRUJRTUNCd2NFQndRY0NRZ0VCQVlHQWdFRkFnb0pCUW9DQ0FNQkJRZ0NCQVFEQXdnRkNRVUNCZ01IQVFnTEJRTUdBZ1FHQkFNTUF3SUpCUW9JQlFVRkF3VURBZ2tKQlFJSUFnVUNBUWNGRFFZR0NBVVFGd1lEQlFnRUFnTURBZ1FDQmdFQ0NBWUVBd0lHQXdZQ0FnWURBZ2NEQVFNREFRUUNCd1lEQkFZRUFnWUNDQVFDQlFRQ0F3Z0VCUUlGQmdVREJRSURCZ1VIQkFZRUFnZ0RCUkFKQWdVRkJ3Y0RCZ01DQlFzSEFnWUNBd29GQndjSEF3SUdBZ1lJQXdZTUJ3Y0RBZ01HQndRSEFnRUtCUVFEQ0FrR0FnY0RCUVVDRUFnT0J3TUhBd3NCQWdRS0JRWUVDUWtFRGdVR0RRZ0tFZ2dHREFJSEJBY0ZBZ1VCQmdjSEF3a0NDQU1DQndVQ0JnRUJDQWNDQkFVRENnRUJDZ3NCQVFVQ0JRSUJCd01FQWdjQ0JBTUZBZ01DQWdNREJBZ0RBd0VCQ0FRREJ3SWJDUWNGQkFnR0FRY0JBUXNNQlFzRENRRUNCZ1VGQVFZQ0F3WUZDZ1VEQkFJSUJna0ZBZ1FDQXdZQ0F3Z0ZCUVlFRGdnRUJBVUNBUVlDREFzRkJRWUZCd0VDQ1FjTkJ3VU1CaGdXQ0FNRkNBVUNCUUlEQlFRSEF3SUlDd1lDQlFjREJ3WUNDZ01DQ2dVREN3SUNDUUlDQXdJQ0JnTUNBUUlLQVFJSEJRSURCZ1VDQWdJQ0NBSUNCQU1IQWdnREF3VUNBZ29CQ1E0SEFnWUtCUU1KQWdJRkRRVURCZ1FGQndVSUFRa0lBd0lGQWdvSUJRa1NDQWNEQkFNSUNRRUVBd0lHQlFVRUJnTUxCQUlEQWdJQUFBQUFBZ0FBLytBQXdRTWFBS2tBelFBQUV3WUdCd2NHQndZR0J3WUdCd2NHRkFjR0ZRWVVCd1lHQndZR0J4VVdCZ2NHQmhjV0ZoVVhGQllYRmdZSEJoWUhCaFlIQmdZVkJoUUhGQVlIQmhRSEJqSVZCeFFHRlJRV0J3WW1Cd1lHSnlZMkp6VTBKalUxSmljbU5pY21ORGMwSmpVbU5EYzBOeVkyTnpRbU5UVTJOalUwSmljMEppY21OU1kwSnlZbUp5WW1KeVluSmlZMU5qSTNOakkzRmpZek5oWXpOall6RmpJM01qWXpOaFl6TmhZM01qWXpGall6TWhZREZoWUhCaFFIQmdZSEJpSUhCaU1HSnlJbUl5WWlKeVltSnlZbU56WTJOelkzTmpiQkF3TUJCZ2dEQWdRQ0FnSUNCUUlDQXdRQ0FnSUJBUUVCQVFJQkFRRUJBUUVCQVFFQkF3RUJBUUlEQVFFQkFnRUJBZ0VCQWdJQkFRRURBZ1VHQlFnUUN3SUlBZ0VDQVFFQkFRSUJBUUVDQkFNQ0FRSUJBZ1lDQWdFQkJBRUNCQVVHQndZQ0JBSUhBUW9GQlFzQ0JoRUlCQVVEQkFjRkJBZ0ZBd1VEQXdZREJ3SUNBZ2NDQ2dVQ0JRdEdCUWNEQXdJSUFRSUtBd0lOQmdvRkJRY0ZCQU1CQWdNQ0JRRUJCQVFDQkFzYUdnTVdDUUVCQ2drREF3VURBZ2dEQ2dJR0JBd0dFQkFKQncwRkJSQUlJQkFnQ2dzVkN3a1VDd3dHQndNT0dnMEtFQWtLQXdJRkNBVUZCd1FKRWdrSURBZ0xBUXNGQndRSURRY0NBZ0VDQmdJY01oNFVEQUVDRGcwREJBY0ZDeHdMQ0E0SkRpVVFGUWdHQ2dZRUN3VVFCUXNGRGlBTENBUUNCQWNIQ1FVS0V3a1RFUWdDQ0FJR0JRVUJBUU1FQWdFQkFRSUJBUUlDQWdRQkFRSUJBUUg5TGc4WUVnZ0ZBZ2dFQWdnQkJnSUJCQWNDQkFjQ0NBc09DQVlFQ2drS0JBQUNBQTRCcWdFR0F1QUFUUUNiQUFBVEZoWVVCZ2NHRmhVVUJoUVVGUlFHRlJRV0ZCWVZIQU1IQmdZSEJpTW1CaU1tSmljbUpqYzBKaWMwTmpVbU5qVW1KalUwTmljbUpqVTBOaWNtSmljbU5qVW1OalUyTmpNNkFoWVhOall5TWpNeUZqTVdGZ2NHRmdjR0JnY0dGaFVVQmdjR0ZoVVVCZ2NXQmhVVUZoVUdCaFVXQmdjR0JnY2lKaU1HSnlZbUp5WThBalUwTmpRMk5UUW1OVFFtTkRRMU5EWW5MZ0kyYUFJQkF3SURBd0VDQVFFQkFRRURBZzhJQ1FJSUJRVUNBd0VEQVFFREFRRUJBUUVCQWdFQkFnRUNCUUlGQWc0UUN3UVBEd3hGQVEwUERnUUxFUWtGQVFJREFnRUZBUUlCQVFJQkFRRUJBUUVEQVFFREFRTUNCUVlIQWdrQ0ZnSURBUUVCQVFFQ0FRTURBZ0lCQVFMWUF3OFNFd2NMRlFzR0JRVUdCZ1FHQXdJUEVoTUZDZ29KREF3S0Vna0hBZ0lCQVFVREVBVUdGUWdFQndNR0F3SUlFQWdQRHhBRkN3VUxFUWdMRXcwS0JBSUxBd01GQXdRRUJBUURDQU1EQ2dRQ0ZSTUxDQkVMQlFzRkVBOFBDQkFJQ1FFQkF3Y0VDQlVHQlJBREJRRUJBZ0lIQ1JJS0RBd0pDZ29GRXhJUEFnTUdCQVlHQlFVR0N4VUxCeE1TRHdBQy8vVUFKZ0lqQXNVQmxBSFFBQUFCRkFZSEJoWUhCZ1lIQmdZSERnTVZGall6RmpZek1qWTNNamMyTWpjMk5qYzJOamMwTkRjMkpqVTJKamMyTmpjMk56WTBOell5RnpJMk16SVdNekkyRndZR0J3WVVCd1lHQndZV0J3WUdCd1lHQndZR0ZSWTJNeklXTnpZMk56WVhGaklYQmdZSEJnWUhCZ1lqSmljaUJpY2lCaU1pSmlNR0JpY0dCZ2NHQmdjR0JnY0dGQWNHQmdjR0JnY3lOamMyTWpNMkZqYzJOaGNXRmhjR0pnY2lCaWNpSmdjaUJpY2lCaU1tQmlNaUpnY0dCZ2NHRlFZVUJ4UU9BZ2NHQmdjVUJoVVVGZ2NtSmdjMk56WTJOelkyTnpZMk56UStBamMySmpVMk5qYzJOamNtQmlNaklnWWpKZ1lqSmdZakJpSUhCZ1lIQmhRSEJnWUhCaFlIQmdZSEJnWUhCaFFIQmdZVkZCWUhKaVlITmpVMkpqYzJOamMyTmpjMk5qYzJOamNtQmdjR0J3WUdCd1lHSnlZMk56WTJOelkyTnpZV056WTJOelEyTnpZMk56WTJOelkyTnlZR0J3WUdCeUltQnlJSEJpSUhCaUlIQmdZbkpqWTNOaFUySmpjMkpqYzBKamN5TmpNeU5qYzJNamMzTWpZek5qWTNORDRDTlRZMk56WTJOelltTnpZV016STJNeklXTXpJMkZ5WUdJeUlHQndZR0J3WUdCd1lHQndZR0J3WUhCZ1lIQmdZWEJnWUhGalkzTmpZM05qSTNOalkzTkRZM05qWTNOelkyTnpZMk56WTJOeVlHQVRNQ0FRWUJBUUlGQWdJSEJRSUZCUVFGQ3dnTENRa0tCZ0lJQlFvUkNBVUNBZ0VEQWdFREFRVUJBUUVGQVFJQ0F3SUVDQU1FQlFJQ0J3TUREQVVCQWdFRkFRSUVBd1VCQWdJRkFnSURBZ0lEQlF3SENCQUlDQThJQ1FvRUJnSUNDQU1DQVFJS0N3VUlBd2NNQlFrR0FnVUZBd1VLQlFRQkFnb0VBd0lCQWdRQ0FnTUNCUWdDQ2hFSUNnWUVEdzRJQ1JJSUFnY0NCeGdPQWdjREJnNEpBd1VGQ1FFQ0FnMEZCUWNFQlFFREF3RUJBd01EQVFJQkFRRUJBUkVpRndJQ0FnSUNBZ0VDQWdFQkFnSURBUVFCQkFFQ0F3WUNBZ2NEREFNVEJRa0NBd2dDQWdrUUNBSUNBUUVCQVFJQkFRRUJBZ1lEQWdVQ0JnSUJBZ0lDRVNnVUJRZ0JBZ2NDQWdVSEFnSUNBZ1FIQkFVSUJDRWVEQWdFQ1JBSUFRVUNCZ0VDQWdNREpqb2RCUVVLQlFJQ0JBSUNBZ0lEQXdJS0ZRd0VCZ1FDQmdNRkNBSUdCUVVJQkFRSUJRSUZBUWNHQVFJSUFRTUJBd29EQWhJVENnVUlCUXdDQ1FRSUJBRURBZ01CQmdJQ0FRSUdBd0lFQndVS0F3SUZDd1VGQ1JZSUJ3SVBIUkVDQXdJQ0F3SUNBd0lDQWdJREJRSUVBZ0lEQVFJQ0FRMGVEQVVJQlFzWEN3VUVCZ0VCQVFRQ0JRSUZBZ1VCQWdJR0FnMFhBcjBMQkFJTUNBSUVCZ0lMRXdvRkVSVVRCZ0lEQVFFQ0FRRUJBZ1VOQndRWkF3SVBBZ2NGQWd3R0FnUUZBdzBFQndZRUFnRUJBUUlFREFJQ0NBTUNCUXNIQ2dNQ0JCWUdCQm9GQkFZRkFnUUNBZ0VEQWdFQkFRTU1GUXdFQmdRQ0FRSUJBZ0VDQWdFREFRSUtCUkVZQ1FVSUJRd05CZ1VNQmdzV0RRTUNBUVVCQVFFRUF4TVpGQXNEQVFJQkF3RURBUUlCQVFFQkR4NFBDZ0VFQndVRERoQVBCQWdPQ0FRSEJBVUtCQWNGQVFRSUJRWUdCQWdGQ1FFQ0F3ME9EUUlIQXdJSkRBY0xGZ3NEQVFRQkFnRUNBZ0VDQ0FNRUJ3UURCZ1FGQndVTEZBc0lEd2dPQ3dVRkNnVUVDQVlFQkFJSEJBd0ZBdzRKQlEwUkNBVU1CUThnRUFFQ0FRVUhCQUVCQWdjRUJRZ0ZEUW9GQncwSEJRSUZGQzhTQ1JJSUJ3MEZCUWdGQ3d3R0F3SUNBUUlCQVFFQ0FRRUNBUUVFQkFVQkJRc0JDQVFDQ0FRQkJ3VUVBZ1FCQWdFQkFnVU1DQUlORHcwRERCa01CZ2tGRFFrQ0JRWUNBZ1BVQVFNQ0FnY09DQWdRQ0FnUUNBZ1FDQWdKQmcwRUJRb0NCd2NFQVFJQ0FRTUJBZ1FKR2drRUJRUUhDd1lTQ0E0RkR3b0ZDaElMQVFJQUFRQVUvL2dCaEFMeEFjTUFBQk1XQmdjVUJoVVVCaFVVRmdjV01oY1dGaGNXRmhjV05oYzJKamMyTmpjMk5qYzJOelEyRnhZR0J3WUdCd1lHQndZR0J3WUdCd1lWQmdZSEJnY0dCaWNtSmljbUppY21KaWNtSmljbUppY21KaWNpSmljbUppTUdKaU1pQndZR0J3WUdCd1lVQndZV0J4UUdGUlFHRnhRV0Z4WVdGeFlXRnhZV0Z6WVdGeFl5RnhZMkZ4WVhGaklYRmhZWEZoY1dGaGNXRnhZV0Z4Y1dGaGNXRmhjV0Z4WVdGeFFIRkJZSEZBWUhCZ1lIQmdZSEJnY0dCd1lHQndZVUJ3WUdCd1lHQndZSEJnWW5GUlFVRnlJR0p6WTBOVFkwTlRZMk56UW1KeVluSmlZbkppWWpCZ1lIQmdjR0JnY0hCZ1lIQmdZbk5qYzJOalUyTmpjMkpqYzJOeVkyTlRRM05DWTNORFkzTmpRMU5pWW5ORFkxTkNZM01oVVdGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGeFlXRnhZWEZqWTNOakkzTmpZM05qWTNOalkzTmpRM05qYzJOamMySmpjMk5DY21OaWNtTmljbUp5WW1KeVltSXlZaUp5SW1JeUlpQndZakJnWWpCZ1luSWljbUppY21KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVluSmlZMU5EWTFOQ1kxTkRZM05pWTNORFkzTmpVMk5EYzJOamMzTmpjMk5qYzJOelkyTnpZM05qWXpOaGN5TmhjME5EY21OU1kySnpZMEp6WTJNeFlXNVFJQkFRRUNCQU1DQ0FJSER3Z0lEZ2dGQ1FVSEFRSUlBd0VEQmdZRUJBc0ZBZ1lEQWdNREFnTURBd0VCQWdNQkFRSUVBZ0VDQXdRSUFnRUJBdzRDQXdRREFnY0NCQVlEQXdjREJRZ0ZEQU1DREFjREVBMFFFUWdGQVFJSUFRVUJBUUVDQWdJQkJBSUJBZ0VDQWdZQkJRWUVCUWtGQ2dZQ0NRNEtIdzRGQ3dZWEVnNEZBd1lJQmdNQkJ3UUJBZ0VDQVFRREFRSUJBZ0lDQVFFQ0JRUUNBd0lGQkFjQkFnY0NCZ0lFRGdjS0NBVUtBd2dUQ3dJTEhBd0JBUUVCQVFJQkJRWUhEUW9GQndRRkRBWU5BZ01GQWdrR0F3SUNCQVVCQVFFREFRSUJBZ0VCQWdFQ0FnSUNBZ0lCQVFRQ0FRSUNCUWdFQlFVSUFRSUdBZ0lDQmdJRkNnZ0NCZ0lGQ1FNSEJBNEhCUWNHQ1FrR0Nnb0RCUWNFQlFnREJBRURBUUVCQVFJREFRSUZCQUVCQlFFQkFnWUNBd01HQlFJSEVRa0RCd1VFQ0FVTUFRb0hBZzRLQlFZSUF3Y0ZCd1lLQlFNSEJBUUVDUVVDQXdJSUFnRUdBd0lFQVFJREFnSUVBUUVCQVFJQkFnUUJCZ0lCQlFVREJ3VUNCd01GREFjTURBUUdBdzRMQXdvSEFnSUJBZ0lDQVFFRUFnZ1JBdWdHRFFjREJ3VURCd0lGQ1FVQ0FRVUtCUVVMQWdFQ0FnVUJBZ29GQWdZTkF3MEVCd1FEQ1JNS0NCVUtDaE1JQndVRkF3Z0VBd2dJRUFjRENBOExBZzRGQXhFZkVnUUtCUVVIQlFJRUFnSUNBd0lDQVFNQkFRWUhCUUlIQkFJSUJRSU9DZ1lGQ3dZTEZ3b0RCUU1NQkFJREJnRURCQU1DQlFFQ0FRSUJBUUVGQXdJQkFnSUdCd1VDQWdRR0NRTUNDUXNNQmdRSEJBc1NCQWNEQkFnR0RBZ0RCUU1NR1FzRkJ3UUxCZzBDQkFZRENnUUNCUWdGQ2dRQ0F3RUNBZ0liQ0E0RkJnVU1DQVVGQ0FRREJRTUVDQVVFQVFNQ0FnRUNBUWNDQlFVRUNBVU5EQUlFQkFRQ0VnTUZDQVVNQndNSUV3a0lBd2tDQWhJRkF3WURCUXNGQWdjREZCUUxCUWtGQkFvRENRZ1NDQXNFQWdZSEJBVUhCUWdQQ0FNRkJBY0ZBZ2dDQmdFQkFRRUNCQWNGQXdNSUJRVUlCd1lIQXdzT0JBWUVDQkFIQ0JFSUNBUUNDZ0lDQXdZRkNnTUdBd0lCQWdFQ0F3RUJBUUVDQWdVQ0F3VUdCZ0lGQ0FJRkJBUUNCUUlLQVFJSkNBTUlFZ1VLQlFRSUJBUUhCQU1HQkFRSEJBTUdCQW9FQkFRQ0NnUUNDZ1lEQmdRQ0F3TURCQU1FQXdFQ0FnSUVBUVlOQkFnRkJBWURCUW9GQndJQ0JnQUFBQVFBQ3YvbEFtWUM5QUhVQWpFQ3ZRTVNBQUFCQmhZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lWQmdjR0JnY0dCZ2NHQmdjR0JnY0dCd1lIQmlJSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmhRSEJnWUhCZ1lIQmdZSEJ3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lIQmdZSEJnWUhCaFFIQmdZSEJnWUhCaFlIQmlZbkppWWpKZ1lqSWdZbkpqWTNOakkxTmpNMk5EYzJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpRM05pWTNOalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTkRjMk5qYzJOamMyTnpZeU56WTNOalkzTmpZM05qWTNOalkzTmpZbk5qWTNORFkzTmlZM05qYzJOamMyTlRZMk56WTJOelkyTnpZMk5TWUdCd1lHQndZR0J3WWlCd1lHQndZR0J3WW1Kd1lXRlJRVUJ3WUdCd1lHQndZR0J3WVZCZ2NHQmdjR01nY0dCZ2NHQmdjR0JnY0dJZ2NHQmdjR0JnY2lKaWNpSmljbUp5WW1KeVluSmlZbkppYzBKaWNtTlNZbUp5WW5KalFuTkNZMU5EWTNORFkzTkRZM05qWTNOaVkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzRmpZM05qWTNOall6TmhZWEZoWVhGaFlYRmpJWEZoWVhGaGNXRnpJV0Z4WVdGeFl5RnhZV016WXlOelkyTnpZeU56WVdOelkyRnpZMk56WTJOelkyTnpZMk56WW1OellXRnhZV0Z4WVdGeFlXQlNZR0J3WUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0ZBY0dCZ2NVQmhjV0ZoY1dGaGNYRmhZWEZnWXpGaFkzTmpjMk5qYzJOamMyTmpjM05qWTNOalkzTmpjMk5qYzJOamMyTmpjMk5qVTBKaWNtSmljbU5DY21KeVltSnlZbUFRWUdCd1lIQmdZakJpSUhKaVluSmlZbkppWW5KZ1luSmlZSE5DWW5KaVluSmljbUppY21KaWNtSmljbUppY21OamMwSmpjME5qYzJOamMySmpjMk56WTJOell6TmpZM05qWTNOalkzTmpjMk5qYzJOelkyTnpZMk56WTJNell5TnhZV0Z4WVdGeFlXRnhZVUZ4WVdGeFlXRlJRV0J4UUdGUVlVQndZR0J3WUdCd1lIQmhZSEJnWUhCZ1lEQmlJSEJnWUhCZ1lIQmdjR0ZBY0dGZ2NHQmhVVUZoVVdGQ01XRmhVV0ZoY1dGaGNXRmhjV0ZqYzJOamMyTkRjMk5qYzJOamMyTkRjMk5qVW1OalUySmljbU5qVW1KaWNtTkNjbUppY21KaU1pSmdjR0Fqd0NBUUVDQmdJRkFnRUdBZ0lIQ0FJRkF3SUNCQUlHQVFJRkJBVUJBZ0lDQ3dVRkJnZ0RCZ2dEQmdFSUNBUUNBUWNDQVFJREFnSURBUVVEQWdJQ0FnWUJCQUlDQkFNQ0JBY0RDUUlGQXdVSEJRY0JBUUlFQkFNSUJRVUtCUVFCQWdVRUJ3Z0dBUWNDQWdJQ0NBTUNCZ0lEQWdVS0V3c0RCZ01GQndVRENBUUNCZ1FHQWdjQkJ3SUZBd0lJQXdVQ0FRSURCQUlGQXdVSkJRSUVBZ0lHQWdVQ0FnSUNBd1FFQkFJRkFRRUtCUU1LQVFJREJRSUhBd01HQXdRR0F3TUZBd0lDQndRQ0JBVUNBUVFIQVFFRUFnWUVBUVVCQWdRREFna0ZBZ1VFQWdNQ0JBTUJCUUVCQndFRUJnSUdCUVFDQWdNQ0F3WUNBd0lGQXdNREJRSUxHQXNEQmdJRUJ3UUVEZ1FKSFEwQ0FRRUVBZ0lDQkFJREJnTUhDd1lEQmdVSkFnSUZDd1VIQndVREJnSUlCUU1FQ0FVRkJ3VUZDd1lFQmdVSUJBUUNBd1VGQkF3R0FnUUZBZ1FGQVFFRUFRRUJBZ1FDQWdFREFRTUdBZ01CQWdVQ0FnSUdBZ2dCQVFjRkF3WUpDd0lOQkFVSUF3a0JBZ2dGQWdnYUNBUUZCQVVFQkFZQ0FnSUVBeElPQXdJREJRTUhCUVFLQlFJRUNBVUxCUU1EQ3dVSEJ3TUlBd0lDQndVTkJRTUVCd0lFQlFNRkFnVUJDd1FLREFZREJnUUVDQU1JRFA2SUNCVUdDUVlGQkFRR0JRSUhBZ2NDQlFFRkFnSUJBUUlCQWdFQkJnTUJBUUVJQXdJQ0J3RUJCdzBFQ1FFSkJ3SUVBd0lFQXdJTEF3SUNCd2NCQWdFRkFRSUhBZ0lHQkFJQkFRTUNBZ0VDQVFFRUFRSUVBZ2dRQVZrREJRUUhCZ1FSQXdRR0FnNExCUVlMQlFNR0JBb0NBZ1FEQXdZQ0FnRUNCZ0lDQVFJQ0NBSUNBZ0lDQmdFQkF3RUJBZ01DQVFFQkJRRUJBZ0lIQWdJRUF3UUNBUUlHQWdVSUJRb0VBd1VEQkFrRUJ3UUZCd1VKQWdJRkNnVUtEZ1VJRWdjRkJnTUZBUUlHQWdFQ0FRRUNBUUlCQlFJQ0JRSUZDQVlCQVFZTEJRSUVSd2NEQVFRSUJBTURBUWNEQWdFQkFRRUJCQU1CQVFNREF3UUNBZ1VGQWdjQ0JSUUVCd3NFQXdFRkFRSURDQUlDQWdFQ0FRSUJBUUVCQVFFRUFRY0JBZ0lDQ0FNREF3NEZCd0xRQXdZQ0JRY0VCd2NDQkFjRERRWUVDd0lDQkFnRUNnUUNCd0VCQndNREJRSU9EQWNNRFFVTUNnVU1BUW9JQndJS0FRRUNCd1FIQVFJSkFRSURDUU1KQkFJREJ3TUdCQUlRREFZUEF3Y0VCdzRJQ3dNQ0F3Y0NDQkFIQ0F3SEF3Y0NDUVlKRHdZR0NnWUNCd1FIRUFnRkRBVUpDQVFDQndNQkFnRUNBd1FGQ0FNSkFRb0tBZ0lJQXdVRUJRZ0JBZ0lIQWdRSEJRY1BDQVFJQkFRR0JBc0NBZ0lJQXdVSkF3VUdCUVFDQ3dvRkNnTURDQUlGQ2dVRkRBVUZDZ1lGREFVQ0J3SUtBd0lIQ0FRRkJRb0NDQU1LQVFJSUFnSUlCQU1NQmdNS0FnTUJCZ0VFQmdJSEF3RUlBUWNKQkFrQkNBVURCQWtGQ1FzRUNnTUNBZ2tDQWdNQkJRd0dBd0lDQXdJQ0F3SUZBZ1VGQ3djRURBY01Dd1lIQ3dZR0RnY0pBd29JQkFnRkJ3RUZDZ1lJQ1FNQ0F3SUdBZ0lDQWdJQ0FRRUJBUUVDQkFRQ0F3VUNDUW9GQndNRkJnUUtCQVlLQlFvSUJRa0ZCUW9GQ0JRS0JnY0ZDQUlDRHcwSENRSUJEd2NGQkFrRkNRTUJCZ2NEQlFJQkFRRUJBUU1CQVFFQkFRSUNBd0lDQVFJQ0FRSUZBUUlEQWcwRkF3Z0VBZ1FGQWdVQkFnTUVBZ0lDQWdNQkF3RUJBUVVCQndnREF3UUZBZ2NEQlFjQ0JRSUVBZ0lDQWdVQ0FnTUNCQWtOQWdFQkFRTURBd01GQndJSUFna09CQWNPQ0FnUUNRZ1BDQWtUQ0F3YUN3UUpBd2tGQXdJSEFnb0dBUVFCQndrQ0JRUUNCZ1FDRFFJR0FnZ0xBd2dEQlFZQ0NnY0REUXNHQlEwR0NBb0dCZ2tFQXdZQ0JRWUlEd2dDRFAwOEFnTUNDUUlEQkFFQkFRTUJBZ0VDQVFNQ0JRRUJBd1VCQkFRREJnSURDQWdEQndNRkNBWUZEd2NJREFVSUVBb0pFd2dEQndRREJ3TUlBd0lLQlF3SUF3a0hBd0VDQlFJRkNRVUtBZ0lCQWdFREFRTUJBUU1DQVFJQkFnRUJBZ1FTQ0FZSEJ3a0hBd2dSQ1FRT0JRb01Cd1VLQlFzWENnWU1CZ2NNQmhZUUJ3SUNCdzRGQXdRQkx3VUJBdzBDQlFNQ0VRb0pFd29KRkFvR0N3Y0ZDZ1VEREJFU0N3VUtCUVVHQkFJRkFnSUJBUUlNQ0FnREFnVUZBd1lOQndRSEJBVUlCQThQQmc0YUN3c0VBZ29SQ0FvRkF3VUtCQWtFQWdFQ0FBQUFBUUFmLzlzQ1RnTDFBcW9BQUFFV0JnY0dCZ2NHRlFZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQndZR0J3WUdCd1lVQndZR0J3WUhCZ1luSmpZM05qUTNOalUyTlRjbU5qVW1KaWMySnlZdkFpWWlKeVluSmlNbUppY21CaU1HSmdjR0JpTUdCZ2NHQndZSEJnWUhCZ2NHQmdjR0J3WVdGUVlVRnhZV0Z4WVhGaFFYRmhjV014WVdGeFlXRnhZMk16WVdNelkyTnpZMk56WTJNekl4RmdZWEZBWVZGQllIQmljbUl5WW1KeVltSnlZSElpSUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCZ2NHRmdjR0JnY0dGZ2NHRkJVR0ZBY1VGaGNVQmhVR0ZBY1ZGZ1lYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmpJWEZqYzJNamMyTmpjMk5UWTJOelkxTmpZM05qUTNOalF6TmpZbkppY21OaWMySmpVR0poVUdCd1lHQndZR0J3WUdCd1lHQndZbUl5WW1KeVltSnlZbUp5WTNOamMyTmpjMk5qY1dOamMyTmpNMk5qTTJOak1XRmpNeU5qYzJOamMyTlRZbU56YzJOamNXRmhjV0ZoY1dGaGNHRkFjR0JnY0dNUVlIQmdjR0JnY0dJZ2NHSmdjR0ZoY1dGaGNXRkJjV0ZoY1dCaGNXRlJZV0Z4WVdGeFlXRnhZV016STJOelkyRnhRR0J3WUdCd1lIQmdZSEJnY0dCZ2NHSXdZR0J3WUdKellVTnpZMk56WTNOakkzTmpjMk56WTJOVFFtTlNZbUp3WUhCZ1lIQmdjSEJnWUhCZ2NHQmdjR0lnY0dCd1lHQndZR0l3WWlCd1lpQnlJR0p5WW1JeVltSnlJbkppWW5KZ1luSmlZbkpqTW1KaWNtSmljbUppY21KaWNtSmljbUppY21OU1kySnpZbUp5WTJOU1ltSnpRMk5UUTBKelFtTlRZME56WTJOelkyTnpZM05qWTNOamMyTnpZMk56WTJOelkyTnpZMk5UWTNKZ1luSmlJbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5ORFkxTmlZM05EWTNOalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTnpZV014WVdGeFlYRmhZWEZoWVhGeFlYRmhjV0ZqYzJOell6TmpZM05qYzJOamNCNWdVR0JBTUpCQVlDQVFRQkJRSURCUVFDQmdRSEJBZ0RBUWNDQlFNQ0F3SUZBUUlHQWdjSEFnWUVBZ1VDQVFFRUFRSUNBZ0VDQVFFQ0FnSUlHQXNDQWdjR0RBUUVCZ1FKQkFFSkF3SUNCQVFFQ1FVRkJRWUNCUXNHQ2dFRUJ3SUJBZ1FDQVFFRUFnSURCUWdCQ3dFSENnd0tCUXNWREF3SkJnVUhBd1VJQlFRSEJRc0hBd3dEQVFFQkJBSUxDUWdEQkFRREJBa0ZDd29EQndJRUNBVVBDd1lLQkFvREFna0RBZ2tCQWdzRkJBZ0JBUUlGQWdRQ0FRTUJBUUlCQVFFQkJRRUJCUVVDQXdRREJnUUNBZ1VFQXdnRUJBa0RDd2NGSFJVTEJRUUVDUVVNRWhBSkNBY0NBZ2dCQlFRSUF3SUVBZ1FCQXdJRENRSUdBZ1FCQWdZRkFnSUZBZ0lDQlFVQkJRY0VBZ1lCQWdjREFnY0JBZ2dGQ0FVR0NnTUVCUVFGQndNRkRBY0ZEUVVGQ1FjWEhBNERCQUlKQ0FFQkJ3SUJCUXNGQkFvREF3VUlBd01DQkFrRENBZ0dCd2tIRGdVRkRRWU9EZ2dDQ0FJQ0F3TUhBZ1lEQVFFQkFRVUNBd0lFQkFJQ0J3Z0RCd1VNRFFZR0RRVUlCUVVMQlFNR0VRNElDd1FJRmdvRkJnZ1NDUXdIQkFNQ0FnUUNCZ1lIQVFFRUF3VURBZ1FDQWdFQ0NnSUVBd0lJQWc4SUJRSUpCZ3NEQWdjREFnb0VCQVlFQ3dFQ0FnY0RCZ2tGQlFjRURBWUVEUklIQndZREJ3TUxCZ0lKQVFJTEFRY0RBZ1lJQWdZR0F3SUdBZ0lCQWdFQ0FRSUVBZ1FCQWdFREFRRUNBUUVCQWdVQ0JnUURDQUlDQndVRUJ3VUdBZ1VGQXdvRkJ3SUJBZ1FDQ2dNS0J3VUlCUW9MQlFVSkJRVUhCQVFEQlFJRkFnTUZBZ1FFQWdVR0FnSURBUUVEQWdJSEFna0VBZ0lDQlFZRkNRZ0ZCUVlDQWdzRkF3Y0VCQVlGREFZRENBUUlGd1lTRkFrSUJRZ0pBd1FIQlFzSEJBd0VDZzhLQ3dJSEFRUURBd2dHQndRRUF0WUZCZ0lGQ2dVSkFRSUdBZ01GQXdZTEJRTUdCUW9GQ1FNQ0NnUUpCQUlHQWdZQ0FnSUVBd3dGQWdVREJRWUZBd2NFQ0FRRUN4WUtBZ0lEQndRTEJBZ1FDUkVIQVFjREJ3SUNBZ0lCQXdFQkFnUUNCZ1FEQndZREJ3NElDQU1GQndRRENBMEZBdzhPQlFzT0JnZ0lDZ1VDQ3dFRUJ3RUJBZ2dEQWdFQkFRRUNBZ0VCQVFRQ0NoWU5DZ01DQlFzRkJBTUZCQUVCQWdNQkFnTUJBZ01DQlFZREJBUUVBd0VGQXdFR0F3RUlCZ1VKQVFJQ0JBTUpDZ1FIQndNREJnSUZDUVVEQ0FNSUNRZ09Dd1lDRHc0R0NBc0lEQVlEQXdjREF3Z0RCQVVDQWdJRkJRTUJBZ01DQkFJR0VBc0lBUWdEQWdnQ0FnVUdEZ2NJRHdNTUNRTUdEUWdJQVFFR0FnTUVBZ2NFQWdNSkF3UUlBZ0VLQ3dnREN3WUNDUVFFQndNRUJnTUdBd1FFQlFFREFnTUVBUUVCQWdFQ0JnUUNCUUlHQkFnQkFRb0VDUU1IQmdNSEJ3TURCUVFGQkFJRkJ3SUlCZ1FFQkFNSEFnSUNBd01CQ1JFSUJRZ0ZEQW9GRFFVQ0FnVUVEQVVDQ1FVTEVBY0pDd0lCQWdJQkFRTUVCZ2NDQXdRQ0F3UUtCZ1FFQWdRRUFnTUNCQUlDQkFRSkFRSUJCUUlFQlFrQkNBTUZCZ1FLQlFRSEJBd1ZDdzBGQVFZRENBSU5Cd01DQndZSUFnSUhBUVlDQWdRQ0FnSUJBUUVCQVFFQkFRSUJBZ0lCQVFFRUFRRUZBZ0lHQXdrRENBWUREdzBHQXdjRUF3WUVBd1lEQ2dVS0NRTUdDd1VKQndNREJnTUZDZ1VGQ3dVRkNBUUtCQUlLQmdNSEJnSUhDQVVIQlFRRUJ3UURCZ1FHQVFFQ0JRSUhBZ01CQ1FFQkFnUUJBZ01DQWdJQ0FRUUVBZ01DQlF3RkNnWURGeWNSQkFvQ0N3WUNBZ1VFQlFrRkRnUURCUU1DQ0FNSENBUUZCQUlDQmdJQ0FnSUNBd0lIQkFJRUFRSUNBUVlFQWdFRkFnSUNCQUlGQXdRS0NBSUlBUVFDQ0FFREFnWUVCQVFDQUFBQkFBNEJxZ0JyQXVBQVRRQUFFeFlXRkFZSEJoWVZGQVlVRkJVVUJoVVVGaFFXRlJ3REJ3WUdCd1lqSmdZakppWW5KaVkzTkNZbk5EWTFKalkxSmlZMU5EWW5KaVkxTkRZbkppWW5KalkxSmpZMU5qWXpPZ0lXYUFJQkF3SURBd0VDQVFFQkFRRURBZzhJQ1FJSUJRVUNBd0VEQVFFREFRRUJBUUVCQWdFQkFnRUNCUUlGQWc0UUN3UVBEd3dDMkFNUEVoTUhDeFVMQmdVRkJnWUVCZ01DRHhJVEJRb0tDUXdNQ2hJSkJ3SUNBUUVGQXhBRkJoVUlCQWNEQmdNQ0NCQUlEdzhRQlFzRkN4RUlDeE1OQ2dRQ0N3TURCUU1FQUFBQkFCNy95UUQzQXhBQTNnQUFFeFFXRlFZR0J3WUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ2NHQmdjR0JnY0dGQWNHQmdjR0JoVVVGQmNVRmhVV0ZCY1dGaGNXRmhjV0ZoY1dGeFlXRnhZV0Z4WVdGeFlVRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlYRmhZSEJpWW5KZ1luSmlZbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KalVtSmljbUppY21KaWNtTkNjbU5TWW5KaVluSmpZbkp5WW5OVFFtTlNZMUppWTNOalkzTkRZMU5qWTNORFkzTmpZM05qWTNOalUySmpjMk5qYzJKak0yTmpjMk5EVTJOamMyTmpjMk5qYzJOelkyTnpZMk56WTJOelkyTnpZMk4vUURBaE1HQkFRRUJRVURBd01DQWdVQ0F3SU1Cd2NEQmdFRUFnRUNBUUlDQWdJQkFnSUJBZ2tCQXdJQ0FRTUNBd01DQWdjQ0FnRUNBZ0lDQmdNQ0F3SUZBUVlDQWdJREFnSUJBZ1FJQlFNR0FnUURCQWtDQ0FzRkJSTUZDQVVDQkFFQ0FnSUNDQWNGQkFZREF3SUVBUVVEQWdVQ0JRUUJBUUlCQWdJR0FnSUNCQUlCQWdnQ0JBSUJBZ0lDQXdFQkFnRUJBZ0VCQVFNQ0F3RUJBUUlFQVFJREJRSUNCZ01CQkFRQ0FnZ0VBd1lDQVFVRkF3b1FCZ2dCQXdnRUJRSUNBd29FQXdnRUNBVUZBdm9GQ2dVSERRY0dDQVVJQlFNREJBTUhBd1VFQWhJWURBVU1DQU1LQXdZRUJ3OEhDQThJQ0E0SEV5ME9EeGNJQkFnRkNSSUpDQXNHQ2h3SkNCRUtDUUlGREFVSUVBa0VCd1FIQkFJS0JnSUNCQU1EQ0FRSkVRZ0ZDQVFKQXdVTENRSUNBUUVCQVFjRUJBUUZBd01FQXdrUkNBZ01CUVVLQlFVSUJRUUlCQVlFQkFjREF3WUNCUWdGQkFvRkNBY0lBd2tUQ3drSUJRNE9DaEVNQndRRkNRZ1NDUWNOQ0FRSEJBZ1NDZ01JQXdZS0JRd0dCQW9IQndRQ0N3TUNDUVFJRHdnR0JBSUxBUUVKQ0FVU0Rna0lBUVVKQlFVREF3UUpCUU1GQkFvRUFnQUIvL1gveVFET0F4QUE0UUFBRXhZV0Z4WVdGeFlXRnhZV0Z4WVdGeGNXRmhjV0Z4WUdGeFlVRnhZV0Z4WUdGeFlHRnhZR0Z4WVZGaFlYRmhRWEZoWUhGaFlYRkJjV0ZoVVdCZ2NVQndZR0J4UVdCeFFIQmhZVkJoWUhCZ1lIRkFZVkJoWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmlZSEJnWW5KalkzTmpjMk5qYzJOelkzTmpZM05qWTNOalEzTmpZM05qYzJOamMyTlRZMk56WTJOelkyTnpZME56WTJOelkwTlRRbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVkyTndVRkJBTUxCd1FFQ1FJSUFRSUVDQU1JQmhBRURBWUdBUUVFQVFjSEFnTUJBUVlCQVFVQkFRTUVBZ0lFQWdFRUFnTURBZ0VCQWdFQkFRRUJBZ0VCQVFJQ0FRTUNBZ1VKQWdJQkFRRUVBUUVDQmdJQ0FRSUNBUUlFQWdFQ0JnSUNCQUVGQVFNREJ3SUhCd1FGQWdJQ0FRSUVCZ01LRWdVR0N3Y0NDQVFGQWdNR0Fnc0dBZ01CQkFJQ0FnRUhBUVlEQWdVRkFnSUNBZ0lJQWdJRUF3SURBUUVCQVFJQkFRZ0NBUUlDQVFFQkFnTUNBUUlCQWdFREFRWURCZ2dHQ0FNQkJnSUNBZ1FDQlFVRUFnUUNCeElDQVFNQkF4QUNCQU1MQlFNRkNRUUpBUUVGQ1FVSkNRNEtFQW9KQXdJRkJBRU5Ed2dIQkFJSkFRSUdCQUlJQndzR0JBMEtCZ01JQVF3U0NBb0ZDQTBIQ1JJSUNRVUVCd01PQndVR0NBd0RBZ3dJQkJBVENRSUdBd0lHQXdrS0JBVUlCUUlHQXdNSEF3Z0JBZ1FJQkFVSUJRVUtCUVVNQlFzUkJ3VUVBd01GQWdZRUFnWUJBUUVDQWdrTEJRZ0VCQWdDRWhNSUJ3TUVBZ0lHQWdvRUFna0hCQkFSQlF3RkJ3UUtFUWdKSEFvR0N3Z0pFZ2tGQ0FRSUZ3Y1dMUk1IRGdnSUR3Z0hEd2NFQmdNRUJ3SUlEQVVNR0FvS0JBSUdCd01FQXdNRkNBVURCZ0lLRFFjRkNnVUFBUUFmQVNZQi9RTHFBVTRBQUFFR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmhjV05qYzJORGMyTWpjM05qWTNORFkzTmpZM05qWTNOalkzTmpjMk5qY3lGaGNXRmhjV0ZoY1dGQmNXRkJjV0ZoY1dGQmNXRkFjR0ppTW1CZ2NHQmdjR0JnY0dCZ2NHQmdjR0Z4WVdGeFlXRnhZWEZoVVdGeFlXRnpZV0Z4WVVGeFkyRnhZV0Z4WVdGeFlHSndZR0J3WUdCd1lHQndZR0J3WWlCd1ltQndZR0p5WW1KeVltSnlZbkppWW5KaVluSmpRbkppY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0ZBY0dCZ2NHQmdjR0JoVUdCaWNtSmljbUppY21KaWNtSWljbUlpY21KamMwTmpjMk5EYzJOamMyTmpjMk5qYzJOamMyTmpjMk56WTJOelluSmdZSEJpSUhCaVlqQmdZSEJnWUhCaUlIQmdZSEJnWW5KalluSmlZbk5pWTFOalkzTkNZM05qWTFOalkzTmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZM05qYzBKaWNtTkNjbUppY21KeVltSnpZMk56WTJOell5TnhZV0FXQUJDUVVDQlFJREJBSUVBUVVGQlFFSEJRa0ZCUUlIQWdVRkJBd0NCQVVHQWdrRkFnd0tCUUlGQXdvTUF3RUZCQVVFQlFNREFRZ0RCQUVGQXdJREFnSUNCQUlFREFjSkdBc0ZDd1VJRGdjRENRVU1GUW9TQ2dVQkFnSUpBZ1lDQ2dZRkJRb0VCQVFDQ1FJSUF3RUVCQUlOQ1FRREF3VUNCUU1EQlFJRUNBVUVCZ0lGQVFFRkJBTUtCZ1VGQkFNREJnSUpDZ1FLQWdNRUFna0JCdzRGQlFJQ0F3SUVBUUVCQXdFRUF3SUdBUUVDQVFFREFRSURDZ3dGQ3dZRkNRc0dBd1VEQkFnRkJRWUNEQVFCREFVSEFRa0hCQVFIQlFZRkF3WUVBZ2tFQWdRSURBUUREZ1lGREFZRUJnTU5CZ1FFQ1FVR0RBY05DQU1JRHdnSERRZ0JCQUVCQWdFQkFRRURBUUVCQVFRREF3VUVDUVlNQndVTEJBSUZEd1lMREFVSEZBY0dFd1VGQWc4REFRRUNCd1FFQkFJR0FnWVRDd2NOQ0FzbkRnMFJBdU1KRWdrRUNBVUlCZ1FLRXdvS0R3c1JFd2NDQmdJRkFnSUVCUWtDQmdFREF3SUhBZ0lMQ2dVQ0JBRVNEQVFFQVFvRkJnZ0NCd3NIQ0FRQ0NnY0RBZ01GQXdZRUNBUUVBd01CQXdJQ0FnRUNBZ0lDQVFJRkJ3Z09FQVlCQVFJSEFnVUVCd0VGQXdRR0JRRUZBZ01DQVFRQkFRTUNBZ01GQWdVTUFRTUNBZ0lIQWdRSEJRUURBZ2NDQ1FFREJ3WUJCUTBIQmdzR0hCWUdDZ1lDQlFJTEJnTU1CUUlJQlFRSEJBUVFCQUlGQXdjSEJBc0lCUVFLQkFVTEJRY0VCZ2dEQXdjREJRSUtBd0lEQVFJQ0F3SUtBZ01HQlFNSEF3RUdCd0lFQndJRkFnSUdBZ0lJQXdJRUJnZ0VBeEVKQWdFQkFRSUVBUUVCQVFFQkFRUUJBZ1lDQWdjQ0J4SUxCUW9GQndJQ0NCQUlBd1lDQmdrRkFna0NBUVVDQndRQ0F3RUNBd1FEQlFRQ0FnUUNBZ01DQXdvVUdRNEZCd1FNRlFzTUJnVVFDQVlCQWdJRkFnTUJBUUVBQUFBQUFRQUpBRklCeXdJTUFNQUFBQk1XTmpjMk5qYzJOamMyTXpZeU56WTJGeFlHRlFZV0ZSUUdGd1ltSndZbUl5SUdJeUltSnlJR0l5SW1Jd1ltSXlJR0l3WW1Cd1lVRnhZVUZSWVdGeFlVRnhZV0Z4WVdGd1ltQndZR0p6WTJOelUwTmpjMk5EVTJOaWNtQmlNaUlnY0dCZ2NHSWdjR0JnY21OaWNtSmljbUpqYzJGaGNXTmhjV0ZoY3lGaGN5RmhjV05oY3lNaGNXTmpNMkppYzBOaWMwSmpVME5qVW1OaWNtSmljbUp6WTJOelkyTXpZV054WVVCeFFHQnhZR0ZSUUdCd1lHQnhRSEJnWUhCaFFIRkFiL0JoTUhFeVFVQmdrRkNnc0hDd1VJRHdnQ0JBRUNBUUVRRXdzTURBWUZDZ2dGQ2dVQ0N3RUtBZ0lKQmdVQ0J3UUZDd1VDQVFFQkFnRUJBUUVDQVFNSkF3Y1BDQXNmQ3dFR0FRRUJBUUVFQWhZMEZ3a1JDQU1HQXdRSEF3Z1BDQVFCQVFVQkFRRUNBd1VJQlFVTEJ3ME9Cd1VNQlFvR0F3VUxCd1VOQlFjVUNBSUJBUUVCQWdFQkFRRUVBUUlDQVFrZUN3a0NBZ01HQWdjQ0JBRUJBUUVCQWdJQkFRRUJBUU1CQVFGTUFnTUJBd0VFQWdJQkF3RUJBZ1lDQmcwSEJRZ0dCQk1FQkFJQkFRSUJBUUVCQVFNQkFnRUNBaElqRkFVTEJRTUdBd01IQXdjSEJ3MFhEQVFCQVFFSEJSVVRDUThJRUFnSURnZ1FJUklDQ0FJQkFnRUNBUUlIQWdVS0JROGFCd3NIQWdJRUFRRUJBUUVDQWdFQkFnRUJBUUVCQVFNSUR3Y0NCZ1VFQmdNREJRTUpGUWdTRVFrUEVnUURBZ0VDQVFFQ0NBOEVCUWdGQkFRRENBd0lCUXNGQ0FRRkN3WVBEQVVGQ3dBQkFCUC90d0NTQUY4QU9BQUFGelkyTnpZME56WW1OeVlHSWlZbkppWW5KaVluSmlZM05qWTNOalkzTmpZWEZoY1dGaGNXRmdjR0ZBY1VCZ2NHQmdjR0JnY0dCaU1HUWdRT0NBWUJCQUlCQnhFUUR3UUZCQU1DQVFJQ0JRRUZCUVFJQkFJRkVnc09FZ2tMQlFRREFRRUJBd0VDQXdJRUZnd0NCd0lPTXdZRkFnY0NBUWNMQndFQ0F3WUNCQVVDQXdVRUVBa0xEQUlEQkFJREF3RUJDZ1VNQ3dnU0R3VUxCQUlJQkFjSUJRa1BCUUVDQVFBQkFBa0JHQUdsQVdRQVhRQUFBUllVRlJRV0J3WWpCaVluSWdZakppWW5KZ1lqSWlZaklnWWpKaU1tQmlNakJnWW5KZ1lqSmdZSEJnWUhJaVlqSWdZakJpY21KaWNtSmpjMk5qTVdOaGNXRmpNeU5qTXlGak15TmpNeUZqYzJOamN5TmpjeU5qTTJGak0yTmdHY0NBRUNCUWdIQ3dVRkN3WU1GdzBGQ0FVREJ3SUNDQUlMQVFjSUF3ME5EQWdOREFjUUZBb0dEQVlFQ0FRRUJ3VVhGUUlCQVFFREFnTUVCUXNYRFF3V0RRVUpCUXNUQ2dVS0JoSW9GQW9SQ0FjUEJnZ1NCZ2dCQWdvT0FXUU5Hd2dGQ1FNRUFRUUJBZ0VFQVFFQ0FRRUJBUU1CQVFFQkJBRUNBUUVDQVFFQ0FnSUdEUWNGR0FVQkJRUURBUUVFQVFJQkF3SUJBZ0VCQVFJQ0FnTUNBQUFBQVFBUi8va0FlUUJoQUN3QUFEYzJGaGNXRmhjV0ZoY1dCaFVVQndZR0J3WUdCd1lHQndZbkppWW5KaVluSmlZM05qWTNOall6TmpZM05rY0NFd1FGQmdVREJBRUJBUU1DQVFJQ0J3TUpCd1FKREFJR0F3VUhCQVlKQ0FFRUFna0JBUUlJQXdkZkFnVUJBZ1lHQmdZREFnNERCd1VEQndJQ0J3SUZCZ0lDQWdFRkFnUUNCUW9jRHdNRkF3Y0VBUUVCQXdBQUFBRUFBZi8zQVNFQzhBREFBQUFYQmljaUJnY0dJZ2NpQmljMk5qYzJORGMyTnpZMk56WTBOelkwTnpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOaVkzTmlZM05qVTJOamMyTkRjMk5qYzJOelkyTnpZMk56WTBOelkxTmpZMU5qUTNOalEzTWpVMk1qTTJOaGNHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dGQWNHQmdjR0ZBY0dCZ2NHQmdjR0ZRWUdCd1lHQndZR1JRZ0ZCQVVEQWhVREJRZ0VBZ1VCQWdJQkJBSUVBZ0lDQXdJR0FRSUNBUVVNQndjUEJRTUNBUUlDQWdNREFRSUJBZ2dIQkFNSUF3SURBZ0VCQVFNQkFRVUNCUUlCQVFFREFRRUNBUUlDQWdFQ0JBRUVBd0VDQVFRQ0N3WVdCQVVQQkFFQ0FRTUlCQVFCQWdJREFnTUNBUU1HQWdJR0FnUURBZ0lGQWdJRkFnSUVBZ0lEQWdJQkFnRURBZ0lEQWdJRUFnSURBUU1DQWdVREJBSURBZ1FCQVFNQ0F3RUVBd0lDQXdJRUFnTUNBZ1FDQWdRQ0JBTUNBUUVCQVFRTUJ3VUZDUVVJQ1FVSEJBVUxCUVlGQXc4SENBY0VGQ1lTRXlNVURBVUNCUW9GQ2d3R0Jnb0ZHQnNPRGhRSkNBZ0VBd1lEQmdRQ0N3Y0lFd2dFQndNQ0JnTU5CQVVJQlFRSkJRY0ZBZ2tFQ0FJQ0N3UUNDUWtFQVFNQkFRWUtCUU1LRXdnSUJ3UUZDUVVOQkFJTEV3b0hEd2dQQ0FVSURnZ0hEd2dJRGdrR0RBVUZDd2NFQ2dVSER3Y0dEUWNGQ3dNS0J3TU9Ed2NGRGdVTEJnTUZDd1VLQndRTERBWUdEUWNNQWdjUEJ3WU5DQW9WQUFBQUFBSUFLUC9sQWtjQytRRDhBaVVBQUFFV0ZoY1hGaklYRmhZWEZqTVdGaGNXRmhjV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlVRnhZWEZoWVZGQlFIQmhRSEJnWUhCd1lHQndZR0J3Y0dCZ2NHQmdjR0JnY0dCd1lXQndZR0J3WUhCaFVHQmdjR0JnY2lCZ2NHQndZSEJnWUhCaUlIQmlZbkppWW5KaVluSmlZbkppWW5KaVluSmljbUppY21KeVkySnlZbUp5WW5KalluSmpRbkppWTFKelEwSnlZMEp5WW1KelFuSmljbkppWW5KalkzTkRRM056WTJOelkyTnpZMk56WTBOeVkyTnpZME56WTJOelkzTmpZM05qWTNOalkzTmpZM05qYzJOamMyTmpjMk1qYzJOelkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZWEZqWVhGaFlYRmhZSEJnWUhCZ2NHQmdjR0l3WUdCd1lVQndZSEJqRUdCZ2NHRmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjVUZBY0dCaGNVRmhVV0JoY1dGaGNXRkJjV0ZCY1hGaFlYRmdZWEZoUVhGaFlYRmhZWEZ4WVdGeFlXRnhZV056WVdOelkyTnpZeU56WXlOelkyTnpZMk56WTJOell6TmpZM05qWTNOalkzTmpRM05qVTJOamMyTmpjMkpqYzJOamNtTnlZMk5UUW1OelkyTnlZbUp5WW1KelEyTlRZbkppWW5OQ1luSmljbUppY21OQ2NtSnlZMEp5Y21KaWNHQmdjR0JnY0dCZ2NHQmdjR0ZnY0dGeFlXRnhZV0Z4WVdGeFl5TnpZMk56WWlOelkyTnpZbUp5WTJKeVlHQndZR0l6WW5OalkzTmhZM05qTTJGaGNXRnhZV0J3WUdCd1lXQndZR0J3WUhJaVlIQmlZbkpqUWpKalluSmlZbkpqVW1KaWNtTmpVMEpqVTBKamMySmpjQmdRb0hCUTRKQlFJSkJBSUpBUVlHQWdVUkJRTUVCQWNFQWdRQkJRRUJBd1lEQkFJQ0FnSUNBZ0lDQWdFRkFRRUNBd0lCQlFFQkJnSUJBUUlCQWdnRkFnSURCQUlLQ2dVRUFnWUJBUU1IQWdRRUJnb0tCUVFIQWdNR0FnSUlEd1lMSEE0UEN3WVBEd1lNRGdjSEJnSUpBd0lJQXdJSkJnTVBEUVVNQlFvS0JnRUJCd1FEQVFJRkFnRURBUUVDQXdJRUFRRUNBZ0lEQWdFQkFnRUJBd0VCQXdJQkFnSUJBZ0lEQWdFRUFnVUJBUUlDQXdJRUFnTUZCQVVIQlFNSEJRSUdBZ1FEQWdZREFnVUNCZ01DQndnTUJBTUdBd01GQkFrQkFnTUdBd01GQXdZTEJnWVpDZ2tIQWdRSEJBUUhYUXdJQXdnQ0JnVUNCZ1FFQ3dJRUFnUUNCZ1VHQWdVQkFRVUpBd0lDQWdJRkFnSURBZ0lDQWdFQ0FRRUNBd0lDQVFFQ0FRSUJBUUlGQVFZRUNBTUZBUUVIQWdrR0JBSUZBd2dHQndNSUJ3TU5Ed1FJQmdJTkNBSUpBd0lIQXdJSEJBSUtCQUlJRUFnR0F3UUNBUUlGQWdZRkFnWUJDQVFFQWdZSkFRRUJBUUVDQVFFQkFRTURBUUlEQVFFQ0FRUUlBUUVDQWdJQkFRRUJCaEFDQWdJR0FRUURCZ0lXQ3hRTUNRSURDUVVEQndRQkJRTUJBUUVCQWdNR0JBSUlBd01KQlFZTkNnUUVCUVVKQVFFREFRSUNBd0lDQVFJTkdBZ0NDQVVEQXdNRkJnSUpBd3dGQmdzR0NnVURCUUVDQmdJSEFRRUxGQWNJQmdNR0FnZ0ZCQWtCQ0FFQkJ3VUNCUWNEQVFFQ0FnRUJCQUlDQXVNSEJRSUtCd0lGQXdFR0JBTUNCQWtGQkFnRkNRVURCUUlMQkFJSERnZ01CUU1HRWdnSUV3a0tFd29VRVFzVENoUWpFd2NJQkE4SkJBc0RCd01EQmdNUUNnUURCd3NGRUJRS0NBVUhBZ0VDQlFRR0JnY0VEUVFFQ0FVRUF3SUNCQWNEQlFjRUJnRUNCUUlDQndNRkFnSUhBZ0VIQkFFSEJ3TU5DQWdNQndzUEJRTUNDQTRJQXdnTUJnTUtCUU1KQWdFTUFnY0NDQVVDQlE0SUJnb0pCaFFMREFZTEZRb0dDZ1VTQlFrRkF3WURCQTBHQkFnREJRY0RCUVVFQXdVRkNBUUhDd1FFRFFVRkRRVUNCUUlHQXdJSEJBSUdBZ1lCQndZS0F3SUVBZ0lEQWdRQ0FRSUNBZ0lFQWdNR0F3SUZBd01CQVFJRkF3SUNRd2NJQXdjRENnUURDQWtKQlFNRkFna0NEQVlNQlFvREFRa1NDd1VIQlFRSUJRY1BDQWdSQ0FRR0JBVUlCUlUyR2djUENBa1NDQU1GQXdJR0F3b0NBUkFIRWdVSUFRSUdCQUlOQmdRRUJRTUlCUWNDQndFQkJnSUJCQUlDQndFQ0JBRUhBUVlFQWdnQkFnY05DQWNKQVFFREJ3SU9Cd1VHQmdJTUFRNE1BZzRWQ3dVS0JRY0xCZ29CRUJZS0FnVUVCUWdGQ0FrQkRBa0dBZ1lERWhJUURBWUhEUWN0SVFRRkF3Z0VBZ2dEQlFNQ0V3UU5BZ0VCQWdRRUFna0VBUXdFQWdRSUJSSUtEZ3NEQ1FFQ0NBSUNBd0lCQndNSkFRTUNCUVlGQlFNR0FnY01DZ1VCQ2cwRUN3TUNBUUlJQVFZQkRRMEpGZzBNQ0FJSEFnRUhCd0lHQWdFQkFRRUVCUUlHQVFJSEJnSU5BUTRIQlFRR0JRTUhBd3dQQlF3S0JRQUIvL2YvN0FGb0F2UUJEQUFBRXdZV0J3WVZCaFFIRkFZVkZoWVZGQVlIRkFZVkJoUVZGQllWRkFZVkZCWVZCZ1lWRkJZSEJoVUdGaFVVRmhVVUJoY0dCak1HQmdjR0Z4UVdGUllVRnhZR0Z4WVdGeFlXRnhZV0Z4WVdGeFkyRnhZV0Z4WVdGeFlXRndZbUJ3WUdJeUltQnlJR0l5SW1CeUlHSnlJbUl5WUdKeVltSnpRMk56WXpOalkzTmpjMk5qTTJOamMyTmpjMk5qY21OalUySmpVMkpqYzJKamMySmpVME5qVTJKalUwTmpVbUpqVW1ORFVtSmljbUpqYzBOaThDSmpZMU5DWW5KaVluSmpZbkp5WW1OelFpSnpVMU5pWTFCZ1lIQmdjR0JnY0dCZ2NHQmlNaUJpY2lKaWNtSnlZMkp6WTBOeFkzTWpZM05qWTNOalkzTmpZM05qWTNOalkzTmlZM05oWTNNall6TmpjV05qYzJGdTRDQXdFSEFnRUJBUUlDQVFFQ0FRRUJBUVFDQWdJQkFnRURCUUVEQWdFRkFRSUNBZ0VDQlFFQ0J3Z0dCd2NDQWdjQ0NBY0VBd1VCQ1JBSEJBY0VBd2tCQ1FrRkJBd0lCZzBHREJVUEZDY1REaG9NQ0JNTEFna0ZCUWNEQndNTEJnTUlCQXdDQ1FJQkJRUUNDQVFDQmdZQ0FRWUJBUVFCQWdNQkFRSUJBZ0VCQWdFREFRRUJBUUVEQVFFQkFnSUVBd01CQWdFQ0FRSUJBZ0VDQVFFQkFnTUlBUUVLQkFnVUN3WU1CZ29JQlFNSEFna0NBZ1FCQWdFQ0FRTVJEUWdSQ0EwR0JBa0dCQUlEQVFNRUF3SUpBZ0lDQXdjUENRUUlCQVlKQ1JFRkFnWUM4d1FHQkF3SUNoZ01FUXNGQlFvRkNSRUlDQklJRlNBTkNBMEhCQVVGQXdZRUNCRUpDQTRJQ0FRRUN3WUZDd1VMRXdvSkFnNGdEQXNNREFRQ0J3d0ZEZzBGRkJNSkNRWUNBZ0VDQmdRQ0JBRUVBUWNEQWdNQ0FnRUZCd0VCQVFNQ0FRSUNBUU1CQXdFQ0FRRUNCQVVGQWdZREF3SUtBUVFEQXdJQkJ3UURDUVVEQWdZQ0F3VURFUkFIQ2dRRUN3WURCUWdGQlFnRkNSRUpCUWdGQlFrRkJRb0ZCZ3dLQWdRRkN4SUxCQUlHRUFnT0d3c0lBZ0lSQlFvSUNRVWxEQTBmRGdVQ0FRb0dCd3NEQWdNQkFRUUJBZ2NEQmdRQ0NnUURDZ0lEQVFVQ0JBUUNCZ2NGQVFjQ0F3WUNDUkFLQmdvRkFRSUJBUU1CQWdVQ0FRRUFBQUFBQVFBSi8rUUNHUU1FQW9RQUFEY1dOaGNXRmpNeU5qTXlGak0yTnpJV016WTJGell5TXpJMk16WTNOaFl6TmpZM05qWTNOamMyTmpjMk5qYzJORGMyTmpjMk5qYzJOalUySmpjME5qY1dCaFVXRmhjV0ZoY1dCaFVXQmhjV0ZoVUdGaFVVRmhVVUJoY1dGaFVXRmdjbUppY21KeVluSmlZbkppSW5JaVluSWdZbkppWUhCaUlIQmdZSEJnWUhCZ1lIQmdZSEJnWW5OaVkxSmpZM05qWTNOalkzTmpZM05qSTFOalkzTmpZM05qUTNOalkzTmpZM05qUTNOalkzTmpjMk5qYzJNVFkyTnpZMk56WTJOelkyTnpZMk56WTNOalkzTmpZM05qWTNOalkzTmpZM05pWTNOamMyTmpjMk5qYzJOVFkyTnpZMkp5WW1KeVltSnlZbUp5WW1KeVltSnlZR0J3WUdCd1ltQndZR0J3WWlCd1lqQmlZSEJ3WWlCd1lHQndZR0J3WUhCd1lHQndZR0J3WUdCd1lVQndZR0Z4WVVGeFlXRnhZV0Z4WVdGeklXTnpJMk54WTNNalkzTmpZM05qTTJOamMyTnpZMk56WW5OQ1luSmlZbkpnWW5KaVlqQmdjR0JnY0dGaGNXTmpNMk5oY1VCZ2NHQndZR0J3WW1OelkyTnpZM05qWTNOalkzTmpNM0ZqWXpGaFlYRmhZWEZoWVhCaFlWRmhZWEZoY1dGZ2NVQmdjR0JnY0dCd1lIQmdZSEJnWUhCZ2NHQmdjR0lnY0dCaWNtSmljbUp5WW1KeVltSnlZbUp5WTJKeVkwSnlZbUp5WW1OemMyTkRjMkpqVTJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOelkyTnpZMk56WTNOak0yTmpjMk1qYzJOak0yRmpjMkZqYzJOaGNXRmpNV0ZoY1dOaGNXRmhjV0ZoY1dGaGNXSWhjV0ZoY1dGeFlXRnhZV0Z4WVdGeFFXQndZV0J3WVdCd1lVQndZR0ZRWVdCd1lHQndZSEJnWUhCaVlWQmlNR01nY0dCZ2NHQndZR0J3WXhCZ1lIQmdZSEJnWUhCZ1lIQmlNR0JnY0dCZ2NHQmdjVUJnY0dCZ2NXQmdjVUZoY1dCaGNHRnNJRkRBWURCZ1FGREFZSUR3Z0lCUU1IQkFRSUJRTVRCUVVLQmdjRUNRUUNDd2NEQkFZQ0JnWURCUU1KQndJQkFRRUJBUUlEQXdNRUFRSUJBZ0VMQWdFQ0FnSUNBZ0lCQlFJQ0FnSUJBUUVCQVFFREFnRUNDUTBIRFE4SENRVVlDQmcxR0FVSkJRVUlCQWdMQnc4TkNBUUZCUW9iREFrVkNRTUdCQVVNQmdJRkFRRUJBUVFFQWdJQ0FnTURCQUlDQkFJQ0FnSUVBUUlFQWdNRUFnZ0JCd1FGQ0FJQ0NRUUpCZ0lDRGd3R0FnWUNDUlVKQXdZREJ3RUNDUU1EQlFJREJ3SUNBUUlFQ0FNSUFRRUVBd0lCQWdVQ0FnTUVCQUlDQVFJQ0N3WUZDZ1VHQ3djR0RBWUxCQUlKRHdnSkVRZ0ZCZ0lFQmdRRENBTUpCUVVGQWdzTEF3RUZDUVVMQXdJR0JBb0VBd0lIQXdJQ0F3SUZBUUlCQWdFQkFnY0VCUVFDRGhRTkJnd0dCUW9GRFFNSUZBb0ZDZ1VIQXdZR0F3WURBd2NDQWdJQ0F3SUZCQU1PQ0FVTEJ3MEZCUUlDQWdJQ0RBMElCQW9GQ0FRSEJnZ09DQk1QQWdFRkFnRUVBUUVEQWdNQ0NBZ1JBUWNEQkFnRUJRY0ZDQTBJQVFJRUJnTURBZ01DQVFNQkFRRUJEQUVIQmdVS0JRb0VBZ1lJQlFnSkJ3OElGemtWQXdnRUJ3SUZEZ1lEQlFJQkFRSUhBUUVFQWdJQkFRTUdBUUVEQVFRQkFnUUNBd0VDQWdNQkF3TUNBUVVDQWdJQ0FnWUNCZ01EQWdjREJnTUpBd1VMRFFnRkJROENDUVFDQlFrRkJRY0VCZ3NHRWlBT0JoTUlBd1VFRGdrRUJRd0ZEQU1DQ2dJQ0NCQUZCUUVDQXdnQ0JRSUVCQUlCQWdFQkFRRURBZ0lEQWdNQkFRVUJBZ1FFQVFJQ0JRSUhBZ1FEQWdjQ0NRRUlBUUVDQndRSkF3TUlBd3NGRFFZREJRTUpBUUlPRUFnSkF4SWNEZ1lNQmdVS0JnRUJBUU1CQVFFQkF3SUNBUU1EQmpjQ0FnRUJBZ0lCQWdFQkFRTUNBUUVCQVFNQkJRSUJBZ0VDQkFjREJRUVBEQWNDQmdNQ0J3SUlFd2dMQ2dNRENBTUlEZ3NDQ0FVRUNBVUlFUWtLQWdFUUR3Z0tCd01SSGdnRkNRVUdDd1VEQndNTkV3a0JCQU1HQWdVRkF3TUJBd01EQVFFQkFRRUNBd0lCQVFFRENRSUNBd0lCQWdFQ0FnSUxGd3dMR2dzUkl3c0RCQU1HREFZTEFRWUpCQU1GQlFnR0F3VUdCQVFIQWdzQkFna0dCQVFEQWdNRENRUURBZ2tLQlFNREF3a1FDQUlHQXdnQkF3Y0RBd2NEQXdVRUFnWURCUWNGQ2dRQ0J3UUVDUVVMQ1FVSUF4RWdGUW9XQ1FjSkJRVUlCUUlJQXdNSUFnSUJBUUVDQWdJRUFnUUJBUUVEQVFJQ0JBUUNBZ2dHQVFJRkFnZ0NBZ1FIQ2dZQ0FnMEhDUVVLQlEwSUF3Z0tDZ1FJQXdZTkNBd0xCUkVZQ1FFQkFnRUJBUU1EQWdVQ0JRWUVBd2NEQXdzR0NBb0pFd29FQ2dJQ0FRRUNBd0lEQXdnRkVoTUpEUWtEQlFJRkJRSUVCQVVKQVFJaUZRY09Cd3NDQlFJRUFnVUVDZ1VDQWdFR0FnSUZBZ1VNQXdRRkF3UUtCUWdDQlFVSUNRVURBd1lDQ3dJR0J3UUlCUWNCQVFRR0JBSUJBZ0lDQkFZRkJ3VUtCQWNOQ0FRRkFnSUhBZ1lDQWdVSEF3TUdBZ3NSREFzUkRBVUhBZ0lFQ3dVSUF3UURCd0lJQmdRREF3SUNCZ0lDQXdJR0JRSUNCZ0lHQWdRQkFRVUJBZ1VCQXdJQkFRRUJBUU1DQWdFRkFRRUJBUUVCQWdFREFRSUJBUVVEQWdnQ0FnY0tCZ2dDQXc4RkJBY0dDd2dGQ2dVRkR3a0lEQW9HQXdNRkJRSU1CUUlGQ2dVQ0JnSUVCUU1MQ2dFSUF3a0JBUTBJQVFJS0JBVURBZ1VDQndjSEJnSUZBZ1VDQVFrS0JnZ09GQW9HRFFjSURnZ0ZDUVVGQndRSEJ3VU1GUXNNQ0FNS0R3QUFBQUFCQUJULzJ3SUdBeWNDaUFBQUV4WVdGeFlXRnhZV0Z4WVdGeFkyTnpZM05qWTNOalkzTmpZM05qVTJNamMyTmpjMk5qTXlOak15RmpjV01oY1dNeFlXRnhZV0Z4WVdGeFkyRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRlJRV0ZSWUhGQVlWRkJZVkJoWUhCZ1lIQndZR0J3WUdCd1lHQndZR0J4WVdGeFlYRmhjV0ZoY1dGaGNXRnhZV0Z4WVVGeFlVRnhZWEZoUVhGZ1lWRmdZSEJoVUdCZ2NHQmdjR0J3WUdCd1lHQndZR0J3WVVCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZaUJ3WUdCd1lHQndZbkJpWW5KaU1tSXlZbUp5WW1KeVltTlNZbUl5WW1KeWNtSmljbUppY21OalVtSmpVME5qVTBKalVtTkRjMEpqYzBORGMyRmpjMk5oY1dCaFVVRmhVV0ZCY1dCaGNXRmhjV0ZoY1dNaGNXRmhjV01oY1dGaGNXRmhjV0ZoY1dGaGMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMySmpjMk5qYzJNelkyTnpZMk56WW1OelkyTnpZMk56UTJOVFkwTlNZbUp5WTBKeVltSnlZbkppWW5KaWNtSWljbUppY2lKaWNtSmljbUpnY0dCZ2NHQmhjV0ZoY3lGaGNXRmpjMk5qYzJOalUySmljbUpqYzJGeFlXRnhZWEZoWVhGZ1lIQmdZaklpWW5KaUluSmlJbkppWW5KaVkzTmpZM05qWTNOalkzTmpZM0ppWW5KalluSmpZMU5qWTNOaVkzTkRZM05qWTNOalkzTmpZekZoWVhGaFlYRmhZWEJnWUhCaFlIQmdZbkppSW5KalUyRmhjMk5qYzJKaWNtQmdjR0JnY0dCaFVVRnhZM014WTNNalkzTmpZM05qWTNOamMyTmpjMk5qYzJOalUwTkRjMU5EWW5KaVluSmlZbkppWW5KaVluSmlZbkppSW5KZ1lIQmlJSEJnWW5CZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhGQVlIQndZR0J3WUdCd1lHQndZR0J3WW5OaVkzSmpZbk5DWTFKalluSmljbU5pY21OQ2NtTkNjbUpqVW1OQ2NtSmpZMk5UUTJOVFkyTnpRME55NEhBZ0lCQXdFQ0FnTUhDUVlJQ1FnSkJnb0dCUU1FQlFZRUF3b05Cd01EQndJR0NBZ0VCZ01KRkFvRUNBVUdCZ3dHQXdVSkJRUU1CUWdGQWdVSEF3c1VDd2dGQkFNSUFnRUdBUUVCQVFJQkFnRUJBUVVCQkFJR0F3b0VCUWdGQ3c0R0JRZ0RBZ2NEQndZSENBc0VBd2dGQkFRSEFnZ0NBUUVFQWdNQkJRRURBZ0lCQWdJQ0FRSUNBZ0lEQlFJRUFnTUdBZ2NFQWdvQkJ3SUNBd2dEQ2dJQ0FnY0RDeGtOQlF3RkF3VURBZ2NEQmdzR0NoQUpEUlFLRVFNS0F3Z0ZCUWdDQ3dRQ0NRWUtDUW9GRVFVS0FRWUNBZ01DQXdFQkJBRUNBZ0lDQWdJTEJRSUZDQU1CQWdJQkFnUUJBUUVEQWdNRkF3Y0VBZ29OQlFjRUFnVUtCQU1FQXd3R0JRVU1CZ1VNQndZUEJRb01CUW9PQmdrSkJBSUZBd3NCQVFrRUFna0NBd2dFQXdVQkFnRUNBUUVDQWdVQ0FnSUJCQUVCQWdJSEJBb0NCd0VDRHdrRUJRUURCZ1VJQmdVREJ3TU1HUThIQ1FnSURRSUJCUU1DQmdNRkV3Z0VCd01KQVFJSkJRWUxBZ3NFQlFjQ0JnTURDUUlEQVFnUUZnc0dFQWdDQndJQ0N3TUlDQVVDQndFQkJBSUNCUUlEQndJREJRSUJDUUlDQVFJRUFnSUJBUVFCQkFRQkJBc0RDQXdJQ0E0SUNBWUZCQWtDQXdjQ0FRVUNBZ0VEQlJZS0NnUUJDQW9RQmdNS0FRSUdBZ2dZQ3drUEF3VUVFeEFVSEFZSEJRd0ZBZ2NEQkFnRkRBTUlBd0lJQkFRQkFRRUZCQUlGQXdJQ0JBb0ZBZ29NQlJBSkJRc0hBd29HQlFRR0F3VUxCZ0lIQlFrUkN3UUhCQW9FQWdvTEJnVUtDQUlCQmdRRUFnSUNBZ0lEQWdJRkFnc0NBUUVCQVFJQkFnSUNBUUVDQVFFQ0F3RUJBUU1CQWdJREFnRUNBUUVDQVFFREp3SVJDQVFHQkFjTUJ3MElBZ1FFQlFZQ0J3VURBd01DQWdFQ0JBRURBZ0VDQVFJQkFRSUNBd0lEQXdJQkFnRUNBZ1VDQlFFQ0FnY0RBdzhHQlFnRUF3VURCUVVDQmhRSkRBZ0VEUVVGQndVREJnTVlIUXNEQlFJV0NBd0lBZ2NFQ1E4R0JBY0ZBd1FCQkFFQ0JBWURBd2dHQWdvTEJBa0ZBZ1lEQ1FZRkNRUU9DQVFKQXdJU0V3MElCZ2NLQlFRSEJnc0NCZ0lDQmdZRENnSUNCZ0lCQWdJQ0FnUUNCUVFCQVFFQkJRd0ZBZ0lDQVFNQkFRSUNBZ0VDQlFJREFnRUNCUUlIQlFFQ0NBSUNDUUVEQVF3R0J3Y01CZ1lDQlJBSEN3WURDQTRMQlFnRUF3Y0RCZ3NGQXdZQ0Jnc0dCUUVCQVFNRER4d1BCdzBJQlF3RkNRY0VBZ1lEQWdRQ0JnRUpCZ1VHQWdVRUFnSUZBZ1FEQWdJRUFnTUJBUUlEQXdRQ0FnVUVBZ1FCQWdFQ0FnUUJBUVFEQWdjRkNnZ0VCZ01EQmdNRUNBVUZEZ2tMQXdJSUVRY0lFQWdHQ2dVRkNnUUlBUWNFQVFZRkFnSUJBUUlDQVFFQkFRSUVCQUlHQWdjWkRnVUlCUU1DQVFFQ0FnUUNCZ0VCQlFzQ0JRRUhCd0lCQ1FJRkF3SUhCUWdjQmdFRkF3SUJBUUlDQkE0SERSSU1CUWdFQXdZREF3WUVBd2NDQlFnRkJnSURDQThGQ0FNQ0VRd0ZBZ2tCQlFZRkFnY0NBZ1lCQlFNQ0JBSUVCd01JQ1FRRUNBVUdDQUVGQVFRRUNRSUNBZ1FGQlFZR0JRRUVCZ2NFQ0JrRkZ3a0tBUUlDQkFJQkJRSURDQU1MQXdzRUFnd1NEZ1VEQmdVTEJ3d09LUkVJRUFnSEJ3UUhBZ0lIQmdRR0JBTUhBUVVDQVFFQkFRSUJBZ0VCQkFrREJBUUNCZ0VDQndzRkRCY0tCUWdEREFRR0JBVUpCUVVKQlFVU0JRa0pDZ0lGQ3dJQ0F3Z0NDeGtMQkFvR0RRUUZCUUlGQ2dZRkJnSUtCd01GRWhNVEJnUUhCUVVHQWdnQkFnQUFBQUwvNnYvMEFnd0Mrd0YyQWV3QUFBRVdCZ2NHQmdjR0JnY1VGaFVVQmdjR0ZoVUdCZ2NVRkFjR0ZoVUdGUllXRlJRR0J4UVVCd1lXQnpZMk56STNOalkzTnpZMk56WTJOelkyTnpZMk56WTNOalkzSmhjV0JnY0dGQlVHRkFjV0JoVUdCZ2NVQndZR0J3WUdCd1lXRlJRR0Z3WUdCeVltSnlZbUp5WW1KeVltSnlZMEp5WW5KaVluSmdZbkJoWVZGQllIRlJRR0ZSUUdGeFlXRnhZVkZoWVhGaklYRmpZWEZoWVhGaFlYTWhjV0loY2lCZ2NpSWdjaUJpTUdKaU1HQmlNaUpnY2lCaU1HSmlNR0JnY21CaU1tQmdjR0lnY0dKeVkrQWljMk56WTJOelkyTnpZME56WTJOelltTnpZMk5UWW1OVFkyTlNZMkp5WWlKeVlqSWlZaklnWW5JaUlIQmdZakJnWUhJakVpQmlNR0JnY2lJZ2NHQmdjbUppY21KaWNtSWpjME56WTJOelkyTnpZMk56WTJOVFkzTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WXhOakUyTnpZMk56WTNOalkzTmpZbk5qWTNOalkzTmpZM05qWTNOamMzTmpZM05qWTNOalEzRmhZWEZqSVhGaFlYRmpJWEZqWXpGak0yQXpZbU5UWTJOU1kyTlRZM05qWTNKalEzTmpZM05pY21KaWNtSmljMEppYzBKeVltSnlZMkp3WWlCd1lpQndjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHRkFjR0JnY0hCaFlIQmhRSEJoWUhCZ1lIQmdjR0JnY0dCZ2NXTWhjMk1qTTJGaGN5TmpNeU5qTXlGamNtTmdHWEF3TUJBd0VDQVFJQkFRSUJBUUVCQVFFQkFRRUVBUUlDQVFFQ0FnSVBDd1VJQXdnSEFnZ0VCQUlDQ0FJREFRSUZCQUlEQWdFQkFnRUtCQVVCQVFFQ0FRSUNBZ0VCQVFRQkFnRUNBUUVIQlFFRkFnVURBZ1lCQWdJREFnSUJBUU1DQXdjREJ3a0dDd1lDQVFFQ0FRSUNBZ2NFQndRSEJBa0NBUWNCQWd3S0F3OFdDd2NEQVFnQkhqVVhCZ3NGQXdZQ0JBY0ZBZ1lEQlFrRkJRb0ZCUXNGQXdVRERBUUNEZ3NHQXdjREN3b0JBZ01EQVFRSUNoZ01CZzRGQmdFSEJRSUJBUUVCQVFFQkFnRUJBZ0VMRmdzS0FRc1pDQXdaREFnVENRZ0xBZ29CQWd3REJRTURCd01EQndJTEZRc0VBd0lDQkFJREJnSUdDQVVDQndjRUJRRUNBZ1FHQmdrR0N3VUZDQVFHQXdJQ0F3SURBZ0lDQmdJRkJRSUdCd0lFQWdFQ0JRTUVCZ1VCQWdFR0JnUUNCUU1EQmdNQ0JBTUtBUWdHQWdFQ0FnUUJBZ3NIQlFzRkFnVUpCQWNQQ2dvQkFna0NERllCQVFFRUFnSUJCUUVCQWdFQkFRTUJBZ0lCQWdFQkFnRURBZ0VGQWdFQ0FRVUlBUUVGQVFFSENRVURBd1VDQndJQ0JRVUVDUVFDQXdnREF3VUNDQVlEQXdFSEJnSUVCd0VCQkFFR0FRRUVCZ0lJQmdVREFRUUZBZ3dTQ3dNR0F3b09CZzBsRVJBTUJnc1ZDZ0VDQXVZR0RRWVBIUTRIRFFjRkNnVUpFZ3NGQndVR0RnY0lEd2dIQVFNU0JRTUhBd2dSQ0FnVENCVXBGQUVDQVFFRUJBSUpBZ1lFQlFzR0J3Y0RDZ3dGQ2dRREJnSUxBUkVPQ0FVSkJRY1JCZ3dDQWhFT0NBb0VBd2NFQnhjTENBWUZDaE1MQkFJRUFRa0ZCZ1lDQXdZQ0NRRUNCUVFDQ0FNSUJnSUJBZ0lJRHdnRkRBZ1VEUThIQ0E4RkJnVUVDUU1EQlFNSkFRVUJBUWNCQkFJTEJBVUZCUVFDQVFJQkFRRUNBUUVDQVFFQkFRRUJBZ0VDQVFFQkF3TUVBd01EQkFFR0NBNElCUXdJQmdNQ0NnZ0xDQTBKQ3hNSkJRd0ZDd0VCRGhRSkF3RUNBZ0lCQWdFQkFnRUJBZ0VCQVFFQ0NnSUdEd2dFQmdRSkF3WUdDZ1FDQ2dnRkJnSUNBZ2NGQWdVSkVRd0lCdzRGQ2dJQ0FnWUNCUVlDQkFjRkRRWUVDZ29FQmdNRkFnb0hCUTBGQlFFRkJRd0dBd2tGQlFvRkJBY0VEQXdJREFFQ0F3Y0NCUWtEQVFZQ0FnRUNCQUVDQVFNQ0FRVCtZd1FKQkFVS0JRZ0NBUndYQXd3QkJ3Z0ZDQkFJRmhZREJ3TURCZ01OR3drS0JBMEZBd29VQ0FnQkNRSUtDd2dFQkFZRERBUUNDUWtGRFFzRkNBMElCUWtGQ2d3R0JnTUNEUWtGQ3dzREFnUUlBZ2tCQVFRR0JBOEdDd0lDQmcwR0FnSUNBZ0VCQXdFREFnVUlBQUVBTXYvTUFoc0RBUUpTQUFBQkZnWVZCZ1lWRkFjV0JnY0dGZ2NHQmdjR0ZBY0dCZ2NHRkFjR0ZBY0dCZ2NHRmdjR0JnY21OaWMwSnlZbUp5WTJKelFtSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUl3WUdCd1ltQnlJR0l5SW1Jd1lHQndZR0J3WUdCd1lVRnhRR0ZSUVdGUlFHRlFZWEZCWVZCaFlWRkFZSEJoUUhCaFlWRkJZVkZnWVhOalkzTmpZM05qYzJOamMyTmpjMk56WTJOell5TnpZMk56WVdOekkzTmhZekZqSVhGaFlYRmhZWEZoWVhGaFFYRmhZWEZoUVhGaFlYRmhZWEZoUVhGZ1lYRmhZSEZCUVZGaFlWQmhZVkJoUUhCaFFIQmdZSEJnWUhCakVHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCd1lHQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lqSWlZakppWW5KaVluSmlZbkppY21KaWNtSmljR0JnY0dCZ2NHRmhVR0JnY0dCeVkyTlNZbUp6UTNORFkzTmpRM05EWTFOaVkxTmpZM05pWTNORFkzTkRZM05qUTNGZ1lWRkJjV0ZoY1dGaGNXRkJjV0ZoY1dGaGNXTWhjV0ZoY1dGaGNXRmhjV01oY1dOak15RmpNMk5qYzJOamMyTnpZek5qWS9BalkyTnpZMk56WTNOalkzTmpZM05qWTFOalEzTkRRbkpqWW5KalFuSmlZbkppWW5KaVluSmlZbkppWW5KaVlqSWdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmlJSEJnWUhCZ1lIQmdZSEJnWUhKaVluSmljaUJ3WUdCd1lHSnlZMk56WW1OelkyTnpZMk56WTBOelEyTlNZMk5UUW1OelEyTlRRbU5UVTBOQ2NtSmpjMU5EWTFOalEzTmhZekZoY1dGak0yRmpNeU5oY1dNekkyTXpJV016WVVNekkyTXpZV016YzJOak1XTmpNM0ZqWXpGall6TmpZM05oWTNOalkzTmpJM01qWXpOakkzTmhZQ0JRVURCQU1DQVFJQkFRRUJBUU1CQVFFQkF3RUNBUUlCQVFJQkFRRUJBUU1IQkFFQkFnRUJBZ1VDQWdRQ0FnRUNCZ0lDQWdJQ0JBY0lCd3NKQlFvSUNCWUpCUW9GRFJZTEJBWUVDUU1CQlFjRkJ3MEpCZzBJQkFFQkFRRUJBUUVCQkFNQkFRRUVBd0VCQVFNRUF3SUpCZ0lIQXdVS0FnSUZBdzBEQ2dzRkF3WURBd2NDQmhFR0RBSU1DUVVNRWdnREJnVUZDUVVJRVF3S0Fna0JBUW9DQlFNRUFRUUNBd0VGQVFJQ0JnRUJCQUVFQVFFR0FnUUNBZ1FEQVFZSUJnTUZBZ0VHQWdJREJnTUNCd1FJQmdrRUJBWUhCUVVMQmdZTkJnWUdBd1VDQ3dZRkNBd0dEdzRJQmc4RkF3Y0RDd2dIQkFVQ0F3VUZBUVlEQkFNRENBa0ZCUVFDQWdJREFRVUVBZ1lEQkFFQkFRRUNBUUVDQWdNQkFRRUNBUUVCQVFJQkFRRUJCZ2dFQWdNR0FnRUNBUUlFQVFJQ0FnVUNCUUlCQlFZQ0NRd0lCUW9GQkFnQ0F3Z0dCUWtGQnc4SUNCRUpDZ0VHQlFRTEJRb05Bd1VDQmdvRkJnRUJBd0lFQ3dRRUF3RUJBZ01DQVFRQkFnWURBd2NGQlFrRkNBRUJDQWNGQlFjSEJRd0dCZzBGQlFnRkJBa0VBZ2NDQ2dJQkJRUUNDd2dFQXdRQ0FnUUNDUVVFQ0E4SUNCRVNDd2tIQXdRUEF3WUZBUUVCQVFFQkFRRUJBUUlCQWdFQkFnRUNCZ0VCQVFFQkFRTUVCUU1IQ3dzRkFnVUdBd1VKQ0E0UUJBZ0VCQVlEQ3dJREJ3UURCZ01MQ1FVQ0NRY0REUUlIQWdvS0NBb0dCUVFIQkJZWkN3VUpCQVFHQkFnUUJ3Y0ZBd0VEQmdJUkdnNEVDQXdHQXdNSEJBWUxCZ2NPQndVS0JRZ05Cd2NOQndJRkJBTUdBd1FOQVFVTEJnUUlCUXNIRHdzRkJnb0ZCUXNGRHdnR0JRY0dCZ01GQkFVQ0FRSUNBZ0lCQVFFQkFRRUJBUUVEQWdJQkFnSURBaEVYREFjTUJRVUtCUVFIQXd3TkJRc0dEQWNFQlFvRkFnWUREUXdGQlFjRkN4TUtBUVlEQndVREJRTUNBd0VCQWdJRkFRUUVBZ0VCQVFJQkFRRUJBUUVEQVFRQ0F3RUJBUUVGQ2dJSEFnRUdBZ0VHQXdJREJ3SUZEQVlJQkFJS0NRUUhDUW9FQ1FVSURna1BDd1lIRWdVTkNnWUtCQUlIQmdJS0N3TUNCZ0VCQXdNQ0FnUURBZ1VDQlFNSEFnSUVBd0lDQndJREJRSURBZ0lEQVFJQ0FRTUNBZ1lCQWdFQ0FRRUJBd1FCQVFJSUFRTUdCUWdIQmdvQ0F3a0ZCUWNGQmdNQ0RoRUpCZ0VEQ1FVRkNRVVdEQWdOQmhNU0NnVUpCUWdOQ0FVTkNBVUlCZ0lLQlFNRkF3VU1BZ1VSQ0FjSUJRd0lBd2NFQndvRUFRY0NCQVlFQ2dFSEJRUUVEUU1DQVFFQkFRSUNBZ0VFQVFJQkFnTUJBZ0lEQWdVR0FnSUNCUTRJRFFJQ0JnUUlEd2tPQndVRUNnVUpFZ2dOQmdRTUNBUUxFd29FQ0FRREJ3TURBZ0VGQkFJQ0JBTUNBZ0VDQWdRQ0FnSURBZ0lCQndFQkJRSUlCd01DQXdJQ0JRSUZCd0lDQXdJQ0FnTURBZ0VCQXdJTkVBZ0tGZ3NEQ1FNTEZBd0dEUVlGREFVREJ3TUtFZ2tHRFFZSkVBc25EUXNIQ3hJTkRBTUlBZ2tDQWdJRUF3RURBZ0VCQVFJRUFRSUJBUUlCQVFJQ0FRRUJCQUlEQVFJQkFRRUJBUUVGQWdJQkFRTUNBZ1FCQUFBQUFnQWYvOThDTmdNa0FlUUNUZ0FBQVJZVUZRWVVCeFFHRlFZV0J3WUdCeFFHRlJRR0J3WUdCeFFXQndZV0J4WUdCeVltTlNZMk5TWW5KaWNtSmljbUppY21KaWNtSmljbUppY21KaWNtSnlZbUp5WW1KeVltQndZSEJnWW5CZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHRlFZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lIQmdjR0JnY1VGZ2NHRkFjR0JnY0dCaGNXRmhjV0ZoY1dGeFlXRnpZMk56WTJOelkwTnpZM05qWTNOamMyTlRZMk56YzJOamMyTmljMk5qYzJOamMyTmpjMk1qYzJOamMyRmpjeU5qTTJGak1XTWhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1hGZ1lYRmhjR0ZoVVZGQlFIQmhRSEJoVUdCZ2NHQmdjR0JnY0dCd2NHQndZR0J3WUdCd1lHQndZR0J3WW1Cd1lHQndZaUJ3WUdCd1lHQndZR0J3WUdJeVlHSnlZbUp5WW1KeVltSnlZaUl5WW1KeVkwSnlZbUp5WW1KeVltSnlZbUp5WW1KeVluSmlZbkpqSW5KalVtSmljMkppY21KaWNtSmljbUp5Y21OaWNtTkNjbUpqVW1OU1kySnlZME56UTJOVFFtTnpjMk56WTJOelEzTmpZM05pWTNOalkzTmpZM05qWTNOalkzTmpRWE5qYzJOamMyTmpjMk56STJOelkyTnpZME56WTNOalkzTmpZM05qWTNOalkzTmpZM05qSTNOak1XRmhjV05oY1dGaGNXRmhjV0ZoY1dOelkzTmpZM05qVTJORGMyTkRjMk5qYzJOamNETmpZM05qWTNOalkzTmpZM05pWTFOalkxSmlZbk5EWW5KaVluSmlZbkppWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHQndZR0J3WUdCd1lHQndZR0J3WUdGd1lXRnhZV0Z4WXpGaFlYRmhZWEZ4WTJNelkyTnpZMk56WTJOelkyTnpZMk56WTNBZ2NGQVFFRUFRRUNBUVFDQWdNQkFRSUJBZ0lCQWdVQkNBUUVBUUVCQWdNQ0FnRUZBZ0lDQWdVR0FnSUdBZ0lCQWdRS0JRc0NCZ3NGQXdVRUNCSUxCZ2dEQmdRQ0J3UUNCUVVGRGdZSUFRSUVCZ01KQWdRSEFnVURCUUlDQVFJQ0F3SUJBUUlFQlFJQ0FnSUNCZ0lDQWdJRUFnSUJBUUlCQVFFREFRRUNBUUVCQVFRQkFnRURBZ0lFQmd3RkJRUURBd1FEQkFJRUJRSUZBd01JQmdJR0FnY0RBZ0VFQXdJSENBZ0RDUVVLQWdJRENBUUpFUWtKQ1FRRUJ3TUlFUWdJRHdZREJ3UUZDQU1EQkFNREJ3SUZDQVlERFFVQ0FRSUdBZ0VCQXdjQkFnRUJBZ1FGQXdFRUFRSUNBZ0VIQ1FZRUFnSUVBZ0lDQWdRR0FnZ1JDQWNDQVFJSEJBY0NBZ01HQkFVSEJRa1BDZ01IQWdVVkJBUUtCUXNIQWdZSUJRSUhBZ3NSQ1FvQkNnUUNDQVVDQWdZREFnWURDUUVDQmdVRkNRUUhBUUVIQlFVR0FnUUNBZ01DQWdRQ0JRRURBUUVCQVFFQ0FnRUJBUUVCQWdJQkFRTUJCUUlCQWdJQ0F3SUVBUUVCQlFJQ0F3RUJBd0VDQlFVRkF3TUdCQVFCQ0FvSUNnSUZCQUlGQ0FRSkFROEZBd1VGQ1FRREJRb0ZCQVlGRGd3R0N3Y0ZCdzBEQlFRS0J3SUpCQUlKQkFJREJRUU1EUWtDQlFZREJBY0JCUUVFQkFJREJBSmlBd01CQ0FRQ0J3Z0RCZ2dCQVFFQkFRRUJBUUVCQ0FrSERRY0ZDQkFJQlE4RENRa0ZCUWdFREFjRUF3UUNCd1FIQ1FVRkRBUUtBZ1lCQVFNREFnSUJBUUVDQWdVREF3WUhCd1VFQlFrQ0RRVUZFUWtDQWdzS0F3Y05CZ1lMQkFNSEFRZ0JBUVlLQXlRSERnY0lEUWNJREFVS0V3a0lEd2dOQ0FZSERBVUZDQVVGREFRRkVBY0dBZ0VDQndNSUFnSUdCd29GQXdjRUF3VUREUXdFQXdVREFnWUNCZ3dGQndjRENBVUNBZ0lFQXdNREFnSUZBUVVFQWdJR0FnVUdCUVlEQVFNRUFnZ0NBd1VGQndRREJRTUNCd01GQndZQ0JnUUtEQVlGQ1FVSURna0hEUVlMRUFnRkF3WURBd2NDREFnRkJRY0VCUW9GRGc0RkJBWUVCQW9PSEE4RURRY0hEQWNFQlFRTEJnUUlCQk1NQndRRENRUUpDQUVCQ0FFQ0JRNEZBZ1FDQmdJQkFnSUNCUUlEQVFFQ0FRSUJBZ0VEQWdJQ0FnRUVBZ0lDQWdRSkFnb05DQU1IQkE4SUNRVUxDZ2NPQnlFSER3Y0ZDd1VNQXdrRUFnb0hBZ2tEQWhBUUN3WUVBZ1FDQWdZQ0JRWUVEQTRIQmdFQkFnVURCZ0VDQXdJREJRTUVBUUlCQXdFQkFRRUdBZ1VCQVFJSkFnRUNDd1FFQXdFR0FnSUdBUUlEQlFNQ0JnSUdBZ0VFQlFRR0JRb0NCd01HRFFVRUJnUUZEQVlHRUFnTUJBMEVCd1VGREFnSUFnSUZDd2dNQ1FnYkRRUUhCQUlIQlF3TURBWUxCZ1lJQlFrRkJ3TUNBd2tGQWdVREJnTUNCUXNEQ1FRQkNna0lCZ1lHRWdjSkFnVUNCUVVDQmdFQkJ3VUNBZ0lFQWdJQ0JnSUNCQUlGQWdNRkFnTUJBUUVDQVFFSkFRRUlBUUlEQndNS0FRTUJBZ29GQ2dNSUF3SUlCQUlEQ0FNRkNRVDlSd1VDQWd3SUJCQVFCaE1mRHdZTUJRWU1CUVFHQkFVSkJCQVBCUXdHQXdRR0FnRUJBZ01EQWdJR0FnUUlBZ0lGQWdNRUJRa0VDdzRHRFFZSkF3SUdDQWdHRGdnS0V3Z1BIQWtUQ0FjSEJnUUJDZ0VDQXdFQ0F3SUJBd1lDQXdVQ0FnTUJCUUlCQ1FVQUFBQUFBUUF6QUFBQ1RBTVFBYWdBQUFFV0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCaFVHQmdjR01nY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dGQWNHQmdjR0ZRWVVCd1lHQndZVUJ3WUdCd1lHQndZR0J3WUdCd1lVQndZSEJnWUhCZ1lIQmdZSEJnWVZGZ1lYRkJZSEZoWVhGaFlYRmhZWEZqSVhGaGNXRmhjV0ZoY1dNUllXRndZR0Z3WW1JeUlHSXlJbUl5SUdJeVltSXlJR0J3WWlJeU1tSWlNbUJpTWpJaVlqSWdZakJnWW5KalkzTmpZek5qSTNOalkzTmpZM05qYzJOamMyTkRjMk5UWTJOelkwTnpZbU56WW1OelltTnpZMkp6WTJOelkyTnpZMk56YzJOelkyTnpZMk56WTJOelkyTnpZM05qWTNOalkzTmpZMU5qWTNOalEzTmpZM05EWTNOalkzTmpZM05qWTNOalkzTmpZbkppWW5KZ1luSmlZbkJnWUhCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZeEJnWUhCZ1lIQmdZSEJpWW5KalluSmlZMUpqWTFOQ1luSmpZbkppWW5KalkxTkRZMU5pWTNOall6RmhZWEZqSVhGaFlYRmhZWEZoWVhGaFlYRmhZekZqYzJGak0yTnpZMk56WXpNakl6TWpZek1oWXpOaFl6TmpZM01oWTNOalkzTmpJM05oWTNOalkzTmpZM0Frb0NCQUlFQ1FRQ0FnSUNCUUlEQmdVSUFRRUhBZ0lDQXdFRUNRTUVBd01EQXdrSUJBWUJBUWNDQWdjRUFnSUVBZ01CQWdRRUFnSUJBZ1VCQXdVREJRVUJBd1lDQXdFR0FRSUNBd0VDQWdJQ0F3RUVBUU1DQVFFQ0JnTUNBZ0lDQVFNQkFRSUhBUVFEQWdJRkFRUUNBZ0lHQXdVRkJRb0ZCUU1DQ3dVR0JRSUZBZ01GQXdRR0JRTUlBd01HQXdNR0F3WU5CZzBnQ3dzSEh3Z0hDd1VMQXdnR0RBa0ZCUW9GQVFRQ0NRRUJDZ0lCQmdZQ0JBb0ZEZ2dJQVFJRkFnTUNCQUlCQVFNQkFRTUJBUVVCQVFJR0FRWU1CQUlFQlFJSEJRWURBZ0lGQXdZRkFnSUJBZ2NCQWdRQ0F3a0VBd1lGQkFJQ0FRSUZBUVlEQWdnRUJBSUJBd1lEQkFZQ0FnUURBZ1lDQ0FvRURSOE9DQXNHQ2hNTEdBNFpEQXdXQ3dVSkJBVUdCUVVMQlFVQ0FnSUVBZ2dEQVFJREJ3SUNBZ0lLQVFFRkFRSUJBZ0VDQWdFQ0FnSUJBUUVDQVFFQkFnUURBd0VIQ1FVSkF3SUZCd1VLQ2dRQ0JRUUlCQVVGRGdnWUVBb0NBZ1VJQ2hZTEVCRUlGd2dLRkFvQ0J3SUlBd0lEQlFNRUNRUUhEZ2dFQndRSUF3SUZDUVlIRVFnQzhRVUlCQWNOQndNSEFnTU1CUWdRQ0FvREFnc0ZBd2NDQWdvTkJ3TUlCQWdCQVJBTkNBb0JDUWdEREFrRUFnY0NCQWNEQ3dVQ0JBWUNCd0lDQlFzR0NBUUhBZ0lGQ1FnR0F3SU5DQVVGQndVR0N3WUZCd1VJQmdNRkJnSUhBdzRIQkFRT0JRUUlCQTRNQlFRQkJRRUVBZ0lEQXdJRkFnSUNBZ01DQkFJQkF3RUVBZ2tDQXdNRkFRSUJBd0lCQWdJQkFRRUJBd0VEQVFJRUJBUUNBZ0lKQVFVQ0FRTUZBd29MQndJQ0JBY0NCd1FHQ3dVREJnTUhBZ0lFQmdJT0NBUUdDUVVGQ1FjRkNnSUpFUWdNQlFjR0NnWUxDZ1VEQndRSkJ3VUlCQWNSQ0FrU0Nnb0JBUVVGQlFjREFna0dBZ29OQmdnQkFnVU5CUWdKQlFRSUJRa1VEQVVFQVFJR0FnSUdBZ0VDQWdNQ0FnSUNDQVVDQlFJREJ3TUlFZ2tJQlFJQ0N3TUxBd1lDQnc0SUJRb0ZDZ2dDQ1I0UEJnd0ZCd3dGQlFjRUZpZ1VCZ3dGREFNQ0RRVUNCUXNGQ0FFQ0R3UUhBZ0lKQXdjSUFRSUNBZ1FCQVFFQkFnTUNBUUVDQVFJQkF3RUJBd0VCQVFFQkFRRURBZ0VCQXdFQkFRVUJBZ01DQUFNQUtmL3RBaTRDN1FFekFhb0NGUUFBQVJZV0Z4WVhGaFlYRmhZWEZoY1dGQmNXRmhjV0ZoY1dGaGNXQmhVVUZnY1VCZ2NHQmdjR0JnY0dGQWNHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NIQmlJSEJnWUhCZ1lIQmdjR0JnY0dJZ2NHSmlNaUJpY2lKaU1pSWljbUppY21KaWNtSmljbUlpY21KZ2MySmljbkppWW5KalFuSmpVbUp5WW5KalFuSmpZbkpqVW1ORFUyTkRjMk56WW1OelkyTnpZMk56WTBOelkyTnpZM05qWTNOalkzTmpZM05qWTNOalkzSmljbUppY21KaWNtSnlZbUp5WXhKaVluSmpVbU5TWW1KeVltSnlZbUp5WW1KeVkyTnpZMk56WTBOVFkySnpZMk56WTJOemMyTmpjMk56WTJOelkyTXhZMk16WXlOelkyTnpZWE1oWXpGallYTWhjV05oY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXRkJjV0ZoY1dCaGNXRmdjV0JnY0dGQWNHQmdjR0JnOENCZ2NHQmhNbUppY21KaWNtQmlNbUp5SUdKeUltSXdZR0J3Y0dCZ2NIQmdjR0lnY0dCZ2NHQmdjR0JoVUdGaFVIRkJZWEZnWVhGaGNXRmhjV01oY1dGaGNXRmhjV0Z4WVdOelkyTnpZMk56WTJOelkyTnpZMk56WXlOelkyTnpZMkZ6WTJOelkzTmpZM05EYzJKalUwTmpVMk5EYzJOQ2NtSnlZbUF5WW1KeVltQnlZR0J3WUdCd1lIQmdZSEJpTUhCZ1lIQmdZSEJ3WVZCZ1lIQmdZSEJ3WVdGeFlVRnhZVUZ4WVVGeFlYRmhZWEZoWVhGaFlYRmhZWEZqYzJOamMyTWpjMkZqYzJOamMyTWpjMk5qYzJOamMyTmpjMk5qYzJOalVtTkNjbUppY21KeVluSWlZQmt3SUpBd2dEQ0FzRUJBY0VDd2dKQVF3TkJ3Y0VBUWdHQWdJQkFnSUNBUUlDQWdVREFnZ0NCZ0VCQWdjREF3VUNBZ2NEQndVRUNnSUNEUVVFQWdnRUFna0RBZzBEQkFrRkJRc0dDd0VDQXdzSEJ3b0ZDUk1JQnc0SUJ3MElDeFlJQWdVRUF3b0ZBZ2dDQ1FzSUFnVUNDZ1lEQWdNQ0FnVUJBUVlDQVFJQ0F3UUJBZ2NIQWdJQkFnVUJCd01CQ2djRkF3SUtDQVVKQmdVRkN3VUlEd2NJQWdVTUJnVU1Cd1lHQlEwRkN3VURBd29JQkFVREFnUUJBZ01DQWdJQkFnVUNBUUVCQlFZR0FnWUtCZ1VIQkFvRkNRUVBCZ0lJQXdnSUJRUUZBZ1VNQmdZTUJoWVZCUXNGRVI4UkJRWUhBZ0lFQlFNSUR3WU5DUWdDQ0FRSkRBVUNCQUVDQkFJRkFRRUZBUUVCQWdJQ0JBVUVBZ0VCQWdnQkNBMElEUW9KQlE0ZkVRY01Cd2dNQlFzSUJRVUlCQWNFQkFrRUJnb0VFUTBhQ3hJSUFnWUNBZ1FGQlFJSUJBTUdBUU1CQkFFQkFnSUhBZ3NLQlFRRkF3a0hBZ3NLQlEwSkVnb0lBd1lFQmd3RkF3UUNDd1VDQndnRENBSUJCUWdFQ0FRREFRWURCd1FDQVFJQkF3SUNBUUVDQlFJREF3d3lFQTBJQmc0RkJRd0ZCZ3NGQ2cwRkNBTUlBeFFIRHdZRUJnSVBDUVFDQWdFQ0FRUURBZ0VCQVFVQkNBRUZBUWtFQXdRUEJ3Y09Cd2dTQ1EwS0JRb0dCQWtGQ1FZQ0JRa0dCd0lDRWhBR0NnUUNDQVVCQWdFQ0FnTUJBd1VKQlFrSUJRWUVCUUYxQXdNQ0J3TUdCUUlDQXdJSEJ3VUJBUWNPQ0FnQkFnMExCUVVWQ0FVUENBUUhCQWNMQncwSEF3Z0dBZ2dFQVFNRkF3TUhBZ0lGQWdVR0FnVUVBUVlFQWdrQkFnVURBZ2NCQWdJQ0FnSURBZ0VCQVFFQkF3SUNBZ0VDQVFVQkFRRUVCQVVEQWdjSEJ3TUhBZ0lQQ0FzQ0NRTUdDd1VIQXdJTUJnWUpCZ1FGQXdnR0N3WUNEQXdHQkFnRkNRWUNDUUlDREFRQ0F3SUhCQUlIQWdJQ0JnSURCQVVHQVFNRkFnSUVBZ01DQWdRRENBUUNBZ1VDQndFSkN3VURCUUlGREFZRUNBVUlGZ2tGQ2dVRkJBRU9CZ1VLRlFvSURnVUxCUXNIQ2dNQ0JRSUZCQUVDQWdFQkFnSUVBUUlDQXdVQ0F3RUJBUUVCQWdVQ0JRWUJBd01DQnc0SEFnWUNCQTRGQ0FVQ0JnOEdCdzhJQlFzR0RCVUxCUW9GQ0F3SUJ3NEhDUWdFQlFrT0FUUUZCZ0lHQVFJREFRRUNBUUVCQVFRQkJBVU5CdzRFQWdnQkJRd0VDQkFJQ0JVSUJRb0hGZ2NOQndvUkJoRURDQVFDQkFJREFRSUVBd0lIQXdZQkFnRUNBUUlEQWdJRUFRZ0JBUVlGQWdjQkF3c0NCZ1VCQlFjRUJ3c0ZEUWtIQlE0RkFnTUdBZ2dPQmhRZENRVUZDQXYramdrSUF3SUdCUUVGQWdJREFnUUVBZ01DQkFvRUNnTURBd0lLQndNRUF3VUZEUVVMRVE0SkJnMEdDd1lDQ3dRQ0NnRU1DUU1HQ1FVRkNRTUNCQUVCQVFFREFnRUNBd0VCQWdZQ0F3RUlDQVFJQlFJS0NRVUZFQWtUSkE0S0hnY01EUVVLQlFJRkJnQUFBQUFDQUJULzhnSW1BdU1CZEFLYkFBQTNOalkzRmhZWEZqTVdGaGNXTnhZeU5qWXpOakl6TmpZM05qYzJOamMyTmpjMk5qYzJOamMyTmpjMk56WTJOelkyTnpZMk56WTJOVFkyTnpZMk56WTJOelkzTmpZM05qVTJOelltTnpZME5UUTJKd1lHQndjR0JnY0dCZ2NHQmdjR0JnY0dCd1lHQndZakJpWUhCZ1lIQmdZbklpWWpKZ1lqSmlZbkppSW5KaVluSmlJbkppWW5KaVluSmlZbkppWW5KaUkxSmlZbkppY21KaWNtSmpVME5qYzBKamMzTmpZM05pWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpjMk5qYzJOamMyTmpjMkZqYzJOamMyRmpNeU5oY1dNaGNXRmhjV0ZoY1dOaGNXRkJjV01oY1dGaGNXTXhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhRWEZoY1dCaGNXRmdjV0JnY0dGZ2NHRmhVR0JnY0dGQWNHRkJVR0JnY0dCZ2NHQmdjR0ZnY0dCZ2NHRmdjR0J3WUdCd1lHQndZSEJnY0dCd1lHQndZSEJnWUhCZ2NHQmdjR0JnY0dJZ2NHQmdjR0JnY0dCZ2NHSWdjR0JpTWlKaWNtSmljbUppY21NU1ltSnlZbUp5WTJKelkyQVNZbUp5WW1KeVltSnlZMUppWW5KaVluSmljbUppY21KaWNtQmlNR0ppTUdCd1lHSXdZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lWQmdjR0ZnY1dCaFVXQmhjVUZoY1dGaGNXRmhjV0ZCY1dGZ2NXRmhjV0ZoY3lGaGNXRmhjV05oYzJOamMyTWpjMkZqYzJGamMyTmpjMk56WTJOelkyTnpZMk56WTJOelkwTnpZMk56WTJOU1kyTlRRbU5UUTJKeVltSnlZMUppWW5KaVluSmlZbkpnWUhCZ2NHQmdjR0JnY0dCd1lIQmdZSEJnWVhGaFVXRmhjV05qYzJOamMySnlZaUp3WW1Cd1ltSnpRMk56WXlGeFl5RnhZV0Z4WVdGeFlXQnhRR0ZRWUdCd1lHQndZR0J3WUdKeUluSmpFbUppY21KaWNtSnlZbUp5WW1OelkzTmpZM05qYzJOamMyTmpjMk5qYzJOelkzTmhZek1oUXpNaFlYRmhjV0ZqTTJKa3NJRWdzRUJBVUlBUVlKQXdVR0Fnc01DZ0lEQndNSURRZ0dDUXNHQWdzRkFnb0JBUU1IQXdZRkF3OElBd2NEQ1FJRENBWUNCUU1EQXdFQ0JBSUVCd01HQXdNRkFnRURBUVFCQVFNQkFnZ0NBZ1VDQ0FVTEFRSUtEUVlEQlFNR0JoWWtFUXNCQkFjRUJ3MEhDUklMQXdVREF3Y0NCQVlFQlFvRkJBa0RCZ0lCQ0FFQkF3Y0RCUWdDQmdZRUJ3SUxBZ1FIQVFJQ0FRSUVBZ0VCQWdNQkFRSURBZ0VFQVFJRENRRURBZ0lFQlFNRkJBUUNEQVVJQmdNRkJnUUhCUXdHQndrVkN3a0hBd1VJQkJJZ0Vnd1VDZ2tIQWdRSUJRVUpCQWdDQWdrQkN3TUNDd2dDQmdFREF3UUNBZ0lIQWdZREFRSURBZ0lHQWdFQ0FnRUZBUUVDQkFNRkFRRUJBUUVDQVFFQkFRRUJCQWNDQWdJREFnSUNBUVVCQVFjREJBWUJBUVlFQlFrRkJRY0VDZ3NEQ0FjSEF3Y0VDZ1lDQXdNVUVBSUhBZ1VMQmdJSEF3TUZBZ1VNQmdVTEJRTUlCUWdLQ3dnSkJBa01Cd2dLQlF3S0JRSUNCZ0VCQWdJREFRRmJBd01DQ0FZREFnWURDd1VIQXdnQkFnc0NBd2dGQlFnREJRWUVCQWdFREFNRUJnVUNDQU1LRkFnRkJRSUhBd0lEQ0FJSURBY0RDd01CQWdFRUFnSURBZ0lCQVFJQ0FRSUJBZ0lDQWdZQ0FRRUJCUUlLQndNRkRRWUZCd1VOQndNTEN3VU1HZ3dEQmdJR0JRSUhCUUlGQmdRRkNBZ1NDQVFKQWdZSEFnTUZBZ0lDQVFRQkFRSUNBd0VDQVFJRUFRRURDQUlGQ0FVTkdBOElDUVVJQXdRQ0FnUUhBZ2NDQ0FJQ0F3RUNBd0lGQkFjRkNCWUdFZ1lEQmdzREJ3SUZFQVVDQ0FFS0F3Y0hCd1VJQWcwR0FnSUZBZ0VDQVFNSUFnTUlDd2dFQmdVSURRY0JDZzBDQndNRUJ3SURCUUlFQWdJREFRTUJBZ1VDQndNRENBTURCd01JREFnRENBd0RCZ3NHQ1FJS0J3VVVDd2NDQWdRQ1ZRUUNBUWtSQ0FrREF3RURBZ0VCQWdFQ0F3TUJCUWNCQVFnQkFnY0NBUUlEQWdZQkFnd01Bd2dEQ3djRENRVURDZ0VDQndNQ0JRZ0ZDQkVKQ3d3RkNBVUVCd3dGQ2cwRkRna0ZDQXNGRGdrRkN3VUdBd2NCQVFjSUJBSUdBZ1FERFFzRkJRRUJBUUVDQWdJQkFnSUJBUUVEQVFJQ0FRRUNCZ0VHQWdFREJnTUZCd1VDQ2dVSUFRd05CUW9CQWhBRkJRb0VBd1lFQ0JRSkZ3Y09DQVlFQWdrS0JRc1NDZ0VJQXdRSUJRVUhBZ2dIQmdZRkFnTUVBd1lDQlFNQ0FnUURBd0VCQVFJQ0F3RUNCQVFCQWdZQ0FnTUNCd0VCQndJQkJ3RUtCQUlLQndRREJBSUNEQVVMQXdJR0R3Y0hEQVVGQ2dVSUF3NE5DQWdTQ2dzWURnY09CZ2NEQWdNRkJBVUpCUXdFQWc4TEJRVU1CUVFIQlFzREFROExCZ3NDQVFjSUNCQUlDQWNFRFFjQ0NBVUVBZ1FEQ2dRQ0JBSVBCZ0lCQVFJR0FnRUJBUU1CQWdNQ0FnVUNBUUVDQWdJQkFnUURCQVFDQXdZS0JRVUpBd1VLQmdJS0FoTUdCQUlMQmdJQ0JnSUhBUU1HQWdVQ0FRZ0JBZ0lDQWdJQkFRSUJBUU1CQVFNQ0F3SUZDZ2dDQlFJRkJnSURCd01ORFFjS0ZBc0NCZ01KQXdjS0NRTUNCUVVDQ0FJQ0F3Y0VCdzhIQmd3R0JRY0RCQVVFQ1FZRUJRWUZCZ0lEQWdFR0FnVUJCUU1CQVFVQkFRVUJBUUlCQWdJRUJBZ0VBZ1FDQXdzQ0F3b0VBd1FFQkFnREJBY0VDUVlEQWdjRUJ3d0ZCUVFGQXdnR0NnY0RDZ1VGQ3dJQkF3TUNBd1lCQVFVRkFnWUhDQVlGQ0FVS0Z3c0lBd1VGQkFFRkFnTURCdzhSQVFJRUJBSUNBUU1GQkFJRkFRRUNDQVFDQndRRkRRUUNBd2tDRFFFQ0NBRUNBUUVCQVFJQkFnUUJCZ01EQmdRR0JRTURBZ1lVQ0JJREJRa0VDUWdGQ0FVRkJ3VUVDQUlCQWdVQkFnRUJCQUlFQmdNRUJRNEFBQUlBRS8vNUFINEJUZ0FxQUZJQUFEYzJGaGNXRnhZV0Z4VVdCZ2NHQmdjR0JnY0dCZ2NHSnlZbUp5WW1KeVltTnpZMk56WTJNelkyTnpZM0ZoWUhCaFFIQndZR0J3WUdCd1lqQmdZbklpWWpKaVluSmlZbkppWTNOamMyTmpjMk56WTJTQUlUQkFzR0FnVUJBUU1DQVFFQ0FnZ0NDZ1lFQ2d3Q0JRUUZCd01IQ0FjQ0JBSUpBUUVDQndNSE13UUhBd01CQ3djQkFRa0JBZ2dGQlFnREJRWUdBd01CQXdNQkJRSUNCZ01DQ1FRSEF4RWFYd0lGQVFRS0JnWURFd1FHQWdNSEFnSUhBZ1VHQWdJQ0FRVUNCQUlGQ2h3UEF3VURCd1FCQVFFRDV3OFlFUWtGQWc0REF3RURBZ0VDQVFFQkJBWUJBZ1FIQWdnTERnc0hCQXNEQkFNRUJBQUFBZ0FULzdjQWtnRk9BRGdBWGdBQUZ6WTJOelkwTnpZbU55WUdJaVluSmlZbkppWW5KaVkzTmpZM05qWTNOallYRmhjV0ZoY1dGZ2NHRkFjVUJnY0dCZ2NHQmdjR0JpTUdFeFlXQndZR0J3WUdCd1lpQndZakJpY2lKaU1tSmljbUppY21KamMyTnpZMk56WTNOalpDQkE0SUJnRUVBZ0VIRVJBUEJBVUVBd0lCQWdJRkFRVUZCQWdFQWdVU0N3NFNDUXNGQkFNQkFRRURBUUlEQWdRV0RBSUhBZzVBQlFZQ0F3RUJDQUVDQ1FRQ0RBY0xCQVVHQndNREFRSUVBUVVDQWdVRkFnZ0ZCd01RR3pNR0JRSUhBZ0VIQ3djQkFnTUdBZ1FGQWdNRkJCQUpDd3dDQXdRQ0F3TUJBUW9GREFzSUVnOEZDd1FDQ0FRSENBVUpEd1VCQWdFQmp3OFlFUWtGQWdnRUFnZ0JCZ0lCQkFZQkFnUUhBZ2dMRGdvSUJBc0RCQU1FQkFBQUFBQUIvL2NBZUFFNUFkOEF2UUFBRXhjV0Z4WVdGeFlXTXhZWEZoY1dGeFlVTXhZV0Z4WVdGeFlXRnhZV0Z4WUdGeFlIQmhZSEJoWVZCZ2NtSmljbUppY21KaWNtSnlZbUp5WW1KeVltSnlZbUp5WWlKeVlHSnlZbUp5WW1KeVlpSnlZbUp5WW1KeVl4SmlZbkpqWTNOalkzTmpZM05qYzJOamMyTmpjMk5qYzJOamMyTmpjMk16WTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOamNXQmhjV0ZoVUdCZ2NHQmdjR0JnY0dCd1lqQmlJSEJpSUhCZ1lIQmdZSEJnWUhCZ1lIQndZR0J3WUdCeFlXRjNnS0RBVUNDQU1KQVFJSEN3NEpDd1FKQVFVSEFnVUZBZ1VWQndJR0F3TUNBUU1DQXdJQkF3TUVBZ29IQlFRSkJBTUpCQklSQ3dJQ0Jnb0dEQXdIQmcwSENRUUJCZ01DQWdZREN3WURCZ1FDQ1FFQ0RBUUVDZ0lNQWdJRkFnZ0VBd01IQkEwSUJBY0VCUVlFQmd3R0JnZ0VCQVlFQ2dFSkFRc0lCUVlNQndnRUJBVU5CZ01IQWdjTUJ3Z0lDZ01CQVFNQkJBRUNCZ01NQ2dVRUJ3Z0RCd01DQ3dJQkRnWURCUVlFQndNQ0N3TUNDd3NLQlFvS0F3TUlCUUVpQlFVRUFnSUNCQUlGQkFjREJ3SUVBUU1EQVFJQ0FRSU1Bd0VCQWdJT0FnUUhDUVlDREFZRENnRUZCUUlEQmdJRkJnSU1DQWNDQVFJS0FnZ0dCQVVGQlFjQkJRRUJBUVVDQmdFQ0JBSUVBd0lHQXdFRkFRSUNCd0lDQkFJQ0FnVUNCZ1lDQkFJQ0JBSUVDQVFEQlFJQ0JBSUdCUUVHQlFJRUJ3TUVBZ0lDQndNREF3SUZDQU1HQWdFRkFnd0xCZzBXQkFJQkFRWURBZ0lDQXdRQkJRRUZCQUlDQWdFRkFRRUdBUUVGQmdZRUJRY0NBZ01DQUFJQUNnRFBBYXdCc3dCSEFLRUFBQUVHQmhVV0ZoVUdGaFVtQmdjbUppTW1KaWNHSmlNR0lpY2pJaVlqSWdZbkpnWWpKaUluSWlZaklpWWpCaU1pSXdZR0J5WTJKellXTXpNV05qY1dOamMyRmpNeU5qYzJGZ2NXQmhVVUZnY0dCeVltSnlJR0l5WUdJeVlHSnlJbUl3WUdKeUltQndZR0l3WUdCeVltSnlZbUp5WTBKeVkwTnhZME14WTJNeklXTXhZMk16SVdOekkyTXpNeU5qTTJGamMyTWhjeUZqTVdOak1XRmpNeU5qY1dOZ0dzQWdNQkFRRUVCUU1EQlFzRkJnMEdEQVVDRXk4YkV3WUpCUWdXQ3dnREFnVU5Cd3NWQ3dnQ0FnMElDZ1lJRGdnSkJBUVhMUmNOSFVNZ0RTRUxFUjhSRGhrT0JnTUxBZ0VEQlFZRUJRWUZBZ1lEQ2dFQkN4NE9GQllMQ2hNSkR4NFJFU0VSRHg4UEF3SUNBZ0lDQVFFQ0Fnd0JEQXdGQlF3RkN4OFFBd1lHQ0FvRkZSQVJDUWdKQmdRSUJBUUdBd1FHQkE0YURoSVJDUVVGQWE4R0NRb0hCZ1FNQmdRQ0JBUUVBUUVCQVFJQ0FRSUJBUUlEQWdFQkFnRURBZ1FDRGlBUUJRY0NBUUVCQWdFQkFnUUNBUU9lQkFzRkRoQUdBd1FCQWdFQkFnRURBUUVCQVFFQkF3RUJBUUVHQkFNSkJRTUdCUU1IQlEwSEJRTURBd01DQVFNQ0FnRUJBUU1CQVFFREFRTUNCQUVCQVFVQUFRQVVBSGdCVndIZ0FLOEFBQk0yTnlZbUp5WW1KeVluSnlZbUp5WW5KaVluSmlJbkppSW5KeVluSmlZbkppWW5KaVkzSmpZbk5pWTNGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmpJWEZoY1dGeFlXRnhZV0Z4WVdGeFlXRnhZWEZoWVhGeFlYQmdZSEJnY0dCd1lIQmdjR0JnY0dCZ2NIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdjR0JnY0dCZ2NHSnlZMk5TWTJOU1kzTmlZM05qYzJOamMyTlRZMk56WTBNelkzTmpjMk56YzJOamMyTnpZMzRBa0lBd3NFQ2dzRUNRRU9Dd01DRFFjREJ3UUxBZ0VNQXdJS0N3TUhDZ1VLQndFQ0JBRUJBd0VDQXdRSkJnRU5EQVVGQndNR0N3WUVCUU1MQ3dnRUNBVUtCQUlKQXdjR0JBZ0VDUXNIQkFZRUF3a0RCd2NNQmdNS0RBSUdDd01LQVE4RUNRSUxBZ01HQWdzSEFnc0lCQUlIREFjR0RBWU5DZ1VJQWdFUEVRZ0lCZ1lLQWdVSEF3a0NBd01EQVFRREFRTURCQWdHRlFZS0F3Z0JDUUVJQmc4R0VRZ0xBd2dDQlFnS0JBRXBBd1FDQndJSEJnSUVBUWNHQVFFRkJBSUVBUVVCQlFFRkFnSURBd0lGQVFJRUZnUVBDd1FLQlFJQ0FRRUlDQU1FQXdNREJ3SUNBZ0lGQndRQ0JRSUlBZ1FDQkFRQ0JRSUZDQVFDQkFJQ0JBSUZBd1lGQWdVSEFnY0NBUVFCQ1FFR0FnVUNBZ0VDQmdVQkJRUURBUVVGQlFRR0JBWUtBZ1VCQVFnS0JRWUVCUVlEQWdVQ0F3VUpCZ1FLQmdNT0F3SU9BZ0lDQXd3Q0JBRUJBd0VFQVFRRUJ3TUhCUVVEQWdJRUFnWUNBQUFDLy8vLzRnSFZBdmdCMlFJRkFBQVRCaFlYQmpZVkZnWVZGQllIQmlZbklpWWpKaVluSmpjMk5qYzJOamMyTkRjMk56WTJOelFtTnpZMkp5WW1OVFltTnpZMk56WW1OellXRnhZV0Z4WVdGeFlYTmhZM05qWTNOelkyTnpZMk56WTJOelkwTnpZMk56WTJOelkyTnpZM05qWTNOalkzTmpZMU5pWTFKaVluSmlZbkppWW5KaWNtSmljbUlpY21JaWNtSmlNbUppY21KaWNtQmljaUppTWlEZ0lIQmlJSEJnWUhCZ1lIQmlNR0JnY0dCaFVHRmhjV0ZoY1dGaGNXRnhZV0Z4WVdGeFlXTnpJME16STJOelkyTnpZMk56WTNOalluSmlZbkppWW5KaVluSmdZSEJnY0dCZ2NHRnpJMk56STJGeFlHQndZR0J5WUdKeVluSmlZbk5qWTNOamMyTmpjMkZqYzJOamMyRmhjV0ZoY1dGeFlYRmhZWEZoWVhCaFlIQmdZVkJnWUhCakVHSXdZR0J3WUdCd1lHQndZbUl5SUdKeUltSXlJbkppWW5KaVluSmlZbkppWW5KalFuSmlZbkpqUW5KaVkzTmpRMU5qWTNOalEzTmpjMk56WTJOelkyTnpZM05qWTNOall6TWhZekZqWXpNeFkyRnhZV016STJGeFkyTXhZMk14WVdGeFlXRnhZV0Z4WVdGeFlYRmhZWEZoVVdGeFlXRnhZV0Z4WVdGeFlXQndZR0J3WVdGUlFHRlJZR0ZRWVVCeFFHRlFZV0J3WUhCZ1lIQmlJSEJnWUhCZ1lIQmdZSEJpSUhCZ1lqQmljaUJnY2lKaU1pSWdjaUJpTWlKaU1tQmhjV0ZCY1dGaGNXRmhVVUJnY0dCZ2NHQmdjR0JnY0dKaWNtSnlZbU56WTJOelEyTnpZMk56WTJOelkydkFzS0J3RUpDQU1EQVFnVENRVUxCUTRpRHdFREFRUUNBZ01CQWdJRkF3RUNBUUVCQVFFQkFRRUJBUUlCQlFFQ0FnVUdCZ01EQmdNRkVnUUtDd1lLQkFzYUNoSUhEQVVLQkFJQ0JnVUNBZ2dLQXdJQ0FRSUJBZ0VFQkFRQ0FRRUJCQU1CQkFFSUNBSUdBd1FNQmdNSUJRMElCd01DQXd3RkF3Y0RBd2NEQkFVRENCUUpCQWNFQ1JFVUVnVUlCQU1IQndRQ0FRSUNBd0lGQWdJRUFnRURBUU1DQXdRQ0JBa0lDQVFHQ0FNUkhnMEtBZ1VGQWdjQ0FRSUNBZ1VFQXdRQkFRUUNDUVVEQXdVRUJRa0ZDUWtJRHdNRENRZ0xBd2NEQ1FRSkJRVUlCZ3NFQWdvRUJRa0JBUUVDQXdRSUJnVUZDQVVIREFjSUR3WUVCUVFHQmdjQ0FnRUNBZ01CQVFJQ0F3SUNCZ1FGQmdNR0FRRURDQVVEQndRSUR3a0ZDQVVGQ2dVTEN3Y01CUW9MQlFJR0F3UUhBZ2NCQ1FjQ0FnRUJCUUVCQVFNQkFnSUVDQVlFQ1FNQ0N3Y0ZDUUlGQ3djR0NnZ0dEZ2dHRFFZaEVCOFBCUWdFQkFjRUN3RUNDQU1DQXdZREJnZ0ZCUXdEQlFRQ0RRVUNCQUlIQXdRQ0F3SUdBUUlDQkFJR0F3SUJBd0VCQVFJQkFRRUJBd0lEQWdRRUJnVURCUUlDQkFnRkJ3a0lBd29GQkFnRUF3Y0REeE1NQndRRkJnUUVDQU1EQmdNRUJ3VUlFQXdEQWdJRUFRRUNBZ0lJQ1FZRkNRVUlEUVlORGdnTUNBTUlCUVFJQlFZQ0F3UUVCUkVNREJjQktSWTNGUVVDQlE0TUJnVUhBd3dGQWdFQkFRVUtDd01KQlFJSEF3TUhCQTBPQXdZREF3WUVCZ2tJQlFrRkNSSUdCUWNGQlFzREFnY0NBZ2NDQXdRQkF3RUJBd0VCQVFRSUJ3Z0ZDQU1DQXdjQ0FnY0NDdzBHQXdnQ0JRY0VBd2dPQmdNRUN3VU9EQVlIRVFZVElnc0RDUUlDQmdRQ0JBTUdBZ0lCQWdFQkF3RUJBUUVDQVFFQ0FRSUJBd1VEQkFJREJnY0NCUU1MQmc0SUJRY0ZCaGdGQXdRREJnTUNCZ1VGQXdJQ0FRSUtCZ0VDQXdJS0FRRURCd1FJQ3dnSkJ3VUtCUXdHQWdNRkFRRUNBZ0VFQWdnSUV3NEJCQXNDQ0FrRkJBZ0NCQUVCQlFNRENRZ0pFQWdRQkFnQ0FRRUJBZ0lIQVFJRkF3TUVCUWdJQ1FRREJnTUVEZ1lJRGdVS0FnRUZDd01LQ0FZQ0FRSUNBZ0lFQVFJQ0FRRURCQUlHQWdRQkFnRUVBZ01EQXdvQ0Fnc0xCUWdQQ0F3WUVRTUlBd01HQkFRR0F3Z0lCd01GQkFJSEJnSUVBUUlDQWdJREFnRUNBUUVCQVFJQ0FRSUJBd0VCQWdFQ0FnTUVBd0lGQWdJS0JRTUlBd2dCQlFRRENBUU1DQVFEQndVZUpoTUtFd3NMQVFFREJnTUlBZ0lHRGdVRkJ3UUlFUWdHQlFnSEJBWUJCUWNFQlFvREFnUUJBZ0VCQWdJQ0FnRUJBUUlDQVFQWkF3TUVBZ01FQWdzREJnNEdEZ3NFQWdRQ0JBVUJBUVlIQ0FrRUVBZ0dDQUlEQkFNREJRVUZCQUlDQVFBQUFBQUNBQjcvN3dNR0F2MEM0d05nQUFBQkJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJ3WW1JeVltSnlZbUp5WW5KaVluSmlZbkppWW5KaWNtSmpVbUppYzJKaWNtTnpZbU5UUTJOU1kwTnpZMk56UTNOaVkzTmpjME5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5EYzJOamMyTmpjMk5qYzJOamMyTmpjMk5oY1dGeFlXRnhZV0Z4WVdGeFlXRnhZWEZnWUhCaFFIQmdZSEJoUUhCZ1lIRkFZVkJoUUhCZ1lWQmhZVkJnWUhGQllIQmhZVkJnWVZGQllYRmhZWEZoWTNOalkzTmpZM05qWTNOamMyTmpjMk5qYzJOalUyTmpjMk5qVTJOamMyTmpVME5qVTJKeVkwSnlZMkp5WTJKeVltSnlZbUp5WW1KeVltSnlZMEp5WW1KeWNtSmljbUppY2lKaWNtSmljbUppY21JaWNtSmljbUJpY21JeUlIQmlZSEJnWUhJZ2NHQmdjR0lnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0J3WUdCd1lHQndZVUJ3WUhGZ1lWQmhZSEZBWUhCZ1lIQmhZWEZnWVhGQllWRmhRWEZCWVZGaFFYRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV0Z4WVhGaFlYRmhZWEZoY1dGaGNXTXhZV0Z4WVdGeFlXRnhZM05qYzJOell6TmpJM05qWTNOalkzTmpjMk56WVhGaFlYRmhZWEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWWpCaVlqQmlZbkppWW5KaVluSmljbUppY21KaWNtSnlZbkppWW5KaVluSmljbUppY21KaWNtQmljbUp5WW1KeVltSnlZbkppWW5KaVluSmlZbkpqWW5KaVluSmlZMUpqWW5KalluSmpZMU5pWTFOamNtTmpVMk5EYzJOalUyTmpjMk5qYzJOamMyTmpjMk5qYzJOelkyTnpZM05qWTNOalkzTmpZM05qYzJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOellXTXpZMkZ6SVdGeFlXRnhZV0Z4WVdGeFlYRmhZWEZoWVhGaGNXRmhjV0Z4WVdGeFlXRnhZV0Z4WVdGUllXRnhZV0Z4WVdCd1lHQndZR0J4WUdGUVlXRlFZV0ZRWVVGUVlHQndZR0J3WUdCd1lHQndZVUJ3WUdCd1lHQndZSEJnWUhCZ1lIQmdjR0JnY0dCZ2NpSWljR0ppY21KaWNtSmljbUppY21OamMyTmpjMkpnYzJOamMyTnpZMk56WTJOelkyTnpZMk5UWTJOeVkyTnpZMk56WTJOelltTlRZbU5TWTBKeVkxSmlZbkppSW5KaVluSmlZakJnWUhCZ1lIQmlJSEJnWUhCaU1IQmdZSEJnY0dCZ2NHQmdjSEJnWUhCZ1lIQmhRSEJnWUhCZ1lWRkJZWEZoWVhGaFlYRmhZWEZoWVhGeFlXRnhZeUZ4WVdGeFlXRnpZMkFoWUpBZ0lIQmdNR0FRSUNCd01EQkFJSEF3SUNCQU1EQmdVUEZnNE1EQXNGQ3hBSUNRUUNDQUVMQmdNQ0JBSUhBZ0lFQVFJQ0F3TURBUUVCQVFFRUF3TUNBZ0VEQWdJQkFRTUNBZ1lDQWdJQ0FnUUNCZ1lDQWdRQkFRUUNCd0lDQWdZRUN3b0ZDUUlIQndNTEF3SU1Bd0lGQndRTkNRa0tGZzBRRFFZQ0FnVUJBUUlHQWdzUkJRa0ZBZ2NDQVFFQ0F3RUJBUUVDQVFFREFRRUNBZ0lDQWdFQkFRTUJBUVFFQVFZTUNBWU5Cd1FGQXdJRkFnTUZBZ2NEQWdJQkJBTUNBUUlDQVFJQkFnTUVBZ0lHQWdJQ0JBRURBUUVHQVFFQ0JnSUVCZ1VGQWdJR0NnWUxBZ3NJQWhBRUJnVUhEUWNGQmdVRUNnUURCUVVOQ0FVRENBTUZDUVVLQmdRS0JRZ0RCUWtDQndRREJRSUlBZ0lGRHdZSUJRTUtCd01EQ1FNREJBSUZCUUlDQ1FRR0J3TU1DQVFJQXdJREFnSUNBZ1FDQlFJQkFRRUJBUUlDQlFFREFRTUNBZ0VCQWdFQkFRTUJBZ0lGQXdFQ0FRSUVDUVVHQWdJSkJnSUZDQVFHQlFZRUN3WUNCZ1lMQ1FjS0FRVUpCQU1KQmcwR0Fob2NEZ0lJQ1FZRkJ3TUJBd1VDQkFjREJRWUhDdzBCQXdJQkFRSUNCd1lEQkFjQ0F3d0dDZ0lCQ1FnRkJBWUVEaW9VQ1JNRkJBb0VBZ3NGQkFjRkRBb0lCZ01HQ2dVVkVSUVJBZ1FDQWdNQ0JnTUNCQUlDQXdJREJBRVREd0VDQVFrRUF3SURBZ1FDQWdVQ0FnTUJBZ0VDQXdRQ0FnTUNBUUVDQVFFQ0FnRUNBZ1FCQWdFQkFRTUdCQUlJQlFRQ0F3SUhCQUlFQndjRUNBWUtCUVlFRGd3R0F3b0ZCUVVEQ0FZUEJBVUtCUUlFQkFZRkFnb1hDd2NZQlFVU0J3d0JBUXNlREFZTkNBOExCd2NKQlFJSEF3d0tDeFVMQXdnRUJ3a0RCUUVKQ0FJREFnb0lCUVFHQlFVREFnVURCUW9GQXdNQkFRUUNBUUlCQVFNQkFnTUNBUUVGQWdFQkFRUUVBd0lEQVFZQkFnUUNBd2dGQmdJQ0F3TUNDQUlEQmdVRkJRZ1BEZ1lLQlFvTUJ3a0hBd0lHQkFJRUFnSUNBUUlFQVFJQlp3WUxCZ1FEQmdFQkJnUUJDZ1lFQlFJSUFRb0NCd0VGQVFFQ0FRRUJBZ0VCQVFFRkJRSUNCQU1CQmdRQkJ3OEhEQTRNQ2dJQ0NRTUNBZ1lDQndNSENRVUREQW9LQndJRkFRRUdCZ0lCQWdNQkFRRUNCUUVEQWdFQkFnTUNBd1lDQWdFQ0FnTUNDQVFEQVFnRkFnY1FDQWtVQ3dVRkFRWUlBUUlLQlFVSUF3SURCUVFGQmdJSkFRSUNCQUlEQmdJSUR3UURBZ0VCQWdRR0FRSUlBUXNJQlFNS0Jnd0ZCQWtCQ1FJQ0V4Z0tCZ2NFRGhFS0JnSUZDd1VGQmdVRUNRUU1CQU1JQWdzRUJnb0ZBd2NGQWdZRUN3UURCUUlFQXdRQ0NRRUNBZ1lDQmdrQ0F3RUJBd01DQWdJQkF3SUJBZ01DQkFNQkFRTUJBZ2NFQVFJRUJBSUVCZ1FOQ0FZQkJ3c1ZDUVVOQndjTkJ3Z1FDQVVLQlFRR0FnMEtCUVVLQlFZTkJ3VUpCUUlHQXdVSUJRVU9Cd2NPQndFQkFnRUJBZ0lJQlFVSkF3VUlCQXdFQVFnRUNnZ0VDZ0VDQmd3R0F3WUVDaEVMRHlJT0JRa0ZFQXdLQmdNSEF3RUxBZ0lGQ3dZSEJ3VURCQUlHQ2dRRkFnRUlCZ0lHQWdRQ0F3WUZCUUlEQWdFQkFnSUZBZ0VEQVFFQkFRSUNBUUVCQVFJQkFRSUJBZ01CQWdZREJnSUNCZ1VDQXdRREFnVUNBZ1VDQXdjRENRWURGZ2dKRVFvRkNBVUZDZ1VGQmdRR0F3WU5Cd1lNQlFnUkNoVWJEQVlPQ0FJR0JBSUhBZ1FGQXdnTUJnb0hBZ1VEQ3dRQ0F3VUNCZ3NIQ0FNQ0NBWUNCZ1FEQ0FFR0F3WUVBZ1FEQlFjREJBSUJBZ0lCQWdNQ0FRVUZBd0VDQXdNR0FRSUVBUUlCQWdRQ0JRWUJBZ2NCQXdJR0F3Y0dBd2dGQXdVSEF3Z0JBUWNGQXdJRkFnY0RBUUVCQWdFQkFRSUJBUUVEQkFZQkFnSUlCQThQRHhFQ0JBSUNCZ0lHQXdJRUFnSUhBZ3dCQVJjV0FnY0NDd29GQWdrRkNRVUZDUVVGQlFZRUJnVUlFZ2tHQkFJSkJ3SURDd1VNQmdJRkN3WVBEUVVHQlFNSEF3b0JBZzBJQlFzTEJRSUZBd29JQXdVS0JRUUdCZ29GQmdJTEN3VURCUU1EQlFJR0Fna0NBd1lEQVFJQ0JBRUJBd29FQWdRQ0FnRUJBZ0lCQVFJREFRTUNBUUlEQWdJQkFRVURCUW9FQkFZRkJRZ0NCQU1GQ2dJRkFnMEhCQVFIQkFrQ0FRUUtCUXdYRFFnYURnZ1JDUVFKQkFVSEJBTUZBd3NCQVFJTUJRWU1CUVFGQXdnVUNBWUxCd2tFQWdVSUJRZ1JDQW9FQkFrRkJBb0VBd1FFQXdNRkJ3RUJBUWNEQlFNQ0FnUUNBd1lGQlJRSUNBMEhCZ3NrQmcwR0NBTUZBd0lHQXdJTURBVUlBUUVSR3dzSUNRVU9CZ0lHRGdnS0ZBb0xCUU1GQ2dRTUF3c0NBZ2tCQndJQkJnVUJDZ2NGQWdFR0FnSUdBZ2NKQndZQ0Nnd0lDUU1EQmdJS0NBRUJDQVFDQXdZREJna0ZDaGdJQmc0RkNBWUdCZ3NGQlFZQ0FnVUNDQWNEQVFrQkJBa0NBZ0lDQXdnQUF2L0wvL01EUVFMMkFsQUN3d0FBQVFZaUJ3WUdCd2NHQmdjR0JnY1dCaFVVRnhRV0Z4WVdGeFlXRnhjVUZoY1dGaGNXRmhjV0ZoY1dGaGNXRnhZV0Z4Y1dGaGNXRmhjV0ZoY1dGaGNXRnhZVUZ4WVdGeFlXRnhZWEZ4WVVGeFlVRnhZV0Z4WVdGeFlYRmhZWEZoY1dGeFl5RnhZV0Z4WVdGeFkyRndZVUl5SW1JeVlHQndZaUJ5SUdJeUlHQndZbUJ5SUdJd1lHQnlJbUJ3WUdKeUltSXlJR0l5WUdKeUluTmpZM05qWTNOamMyTnpZMk56WXlOellXTnpZMk56STJOelkzTmpZbkpqWW5KalFuSmpRbkppWW5KaVluSmlZbkppSWpKaVlqSWdZakJnWWpJeVlIQmlZbkpnY0hCaUlqSWlZSEJnWUhCZ1lIRkJZVkZBWVhGaGNHRmhVR0JoY1dGaGNXRmhjV0ZoY1dGaGNXRmdjR0ppTUdJZ2NpQmlNbUJnY2lKaWNtQmljaUppTWlCaU1pTkNNR0JpTWlKaU1pQmlNR0JpTW1OamMyTnpZM05qWTNOalkzTmpZM05qWTNOalkzTmlZM05qWW5OalkzTmpZM05qWTNOalkzTmpZM05pWTNOelkyTnpZMk56WTJOelkySnpZMk56WTJOVFltSnpZMk56WTJOelkzTmpZM05qUTNOalkzTmpZM05qWTNOaVkzTkRZM05qWTNOalluSmlZbkJpWW5KaUluSWlZSEJnWUhCZ2NHRkFjR0JnY0dGQmNVQmhjVUZoY1dGeFlXRnhZV0Z4WTJOelkyTnpZMk56WTJOelltSnlZR0J3WUdCd2NtQnpZM05qTTJOamMyTmpjMk5oY1dGaGNXRmhVR0J3WUdCd1lHQndZekJnWUhCaUlIQmlJSEJnWW5KaVluSmlZbkppWW5KaVluSmlZbkppWTNOalkzTmlZM05qWTNOalkzTmpZM05qWTNOalkzTmhZek1qWTNOaFl6TWpZek1oWXpOaFl6TWhZek1qWVhGall6TXpZMk56WVdOelkyTnpZMk56WVhOaFlISnlZbUp5WW1KeVltSnlZbkppY21NU1luQmdZVkJnWUhCZ1lIQmdZSEJ3WUhCZ1lIQmdZVkJnWUhCaFFIQmdZSEJnWUhCZ1lIQmdZSEJoUUhCZ1lIQmdZSEZqWVhGaFlYRmpZWE1oWXpNall6TWhZek1qWTNOalkzTmlZbk5EUW5KaVluSmlZMU5pWW5KaVluSnlZbUp6UW1BandDQmdJRENBUUtCd3NJQWdVREFRTUNBd0VDQVFJR0FnSUVBZ0VDQlFVQ0JRUUJBd0lDQXdNREJRSUVBUVVDQkFJR0FRSUNCZ01EQmdRRUF3SUNCQVVDQkFJQ0F3SUZCUUlGQVFJRUFnWUdBZ2tHQ0FnRkNBSU5CQWNFQWdVTkJRVUhCUVFKQkFrQ0F3Z0ZDUlVMQnc4SUR3MElCQVVDQ3hZS0Jnd0dEaG9OQmd3R0NoSUpCUWNGQXdZRERoTUlEd29GQmdRSER3Z0ZDZ3dJQlFrRkF3WUNDd01DQndNQ0JRVUNDQU1CQkFFR0FRRUVBUU1CQWdVQ0F3TUNCdzBIREFvR0J3MEhBZ2dFRVIwVUN3WUhDd1lERVJBTUNBOEhDQXdIQ0JBR0FnY0JBUU1DQVFRREFRRUJCQUlJQlFVUUJnY0ZBd2NTQndNSUFRb0hCQVVKQlFRSEJSZ2tFUW9VQ2dzVUNnUUhCUVFIQkFzQkJRa0ZDQTBHQlFvRkF3c0ZEQWtDREFFTEFRa1BCUXNHQkFNSEF3WUlCd0lJQkFVQkFRSUZBUWtJQWdJQ0FRUUdCUUlEQWdNRUFRSUNBZ2NDQXdJQ0FnSUhBZ0lDQkFFRkJRUUNBd0VDQWdJREFRUURBZ01GQWdNQ0JnRUVDQVFDQWdJQ0JBRUNBUUlDQVFzSkJnSUZBUUlOQkFzVkNnc2VFUWdTQ0FvU0NCRVJDZ0lKQkFNRUFRRUJCZ0lDQndRR0F3VURCZzRHQlFnS0J3SUhBZ0lCQWdVTkJnc0hBd1FGQWcwSkJBRUZCd0VJQndNREJBVUVCZ1FMRHdnRURBTUNBZ2NGQkFjRUN3RUpCQUlKQlFJRkJnVUVCQVVIQ2dVRkNRTUdEUVVEQndJQ0FnRUJBUUlCQXdFQkFRRUREUVVDQWdNSEN3VUZCd1VQRHdZRkN3VURCd1FQSWcwSUR3Z0pFZ3dFQmdNSUVRZ05IdzREQ3dRVURRZ0VCUW9GREJZTEJBZ0ZCZ2tEREgwSkF3WURBUUlCQWdJQ0FRUUVCQVVIQndrREFnVUNBZ0VDQkFnQ0NnY0JCd1FEQVFNQ0FRRUJBUWNEQXdJREFRZ01Cd0lHQWdJQ0FRUUNBd0lCQ3hnTUNBNEhCeEVKQnc0SEJ3c0hCUW9GREJnTkRoOElBZ3dGQVFZQkFRRURBUU1CQWdFRENRTUZBd2NDOHc0Q0JRVUZDQVlPQlFVR0F3d0hBZ1FLQncwSUJnMEZEZ2tGRFFnRkFnZ1FCZ2tTQ0EwTUJRWUtCUXNLQndVRER3WUxCZ2tJQXdjS0NBa1NDUWdIQXdjQ0N3c0dDUXNFQlFVS0NBY0VCd1lEQkFZRURBZ0VEZ1VFQ1FNRkF3Y0NCd0VDQlFJQ0FnRUJBUVFGQWdJQkJBRUJBUUlDQVFFQkFRSUJBUUVCQVFFREFRSUJBUU1CQmd3Q0FnTUdCQUVFQndJQ0JnSUNBZ2NCQVFRRkFnVUNCZ01HRFFnS0FnSUhDUVVNQlFJRkN3VU1DUVVIQWdJREFRTUJBUUVCQVFFQ0FRSUNBd0VDQVFFREFRa1ZEQU1HQkFVSEJRa0pEUW9GQ0JFSEJBc0VCQVlFQmdFQ0F3b0ZBZ0VGQmdJQkFnTUJBd0VDQVFFREFRSUNBUUVDQXdFQkFna0JBZ2dCQndFSkJnSUdBd0lDQWdJRUNnUUlDZ1VJQVFFQ0NnVU5Ed2dNQWdJS0dRc0ZDZ2dNQlFRRUJ3UU1Bd1VEQlFnRkRBZ0ZCUXdJQlJJSUF3TUZCUWdGQlFnRkJ3WURCd2tFQ1FVS0JRSUlFQWdGQ0FRRkJ3VUVCd1FDQmdNVUVRd0dEUVFGQXdNQ0JRTURBUUVCQWdjQ0JRY0hBZ0VJQndJTEVnMEVDQVFFRGdVREJRa0dCQVVHQkFRQ0FnSUVCZ0lFQWdJR0FoQU9CUWNEQWdFREFnWUNBZ2tMQ1FZQ0FnSUJBZ0VDQVFFUkJRZ09DaEVEQXdVRkF3Z0RDUVVEQWdjQkJBRUJBZ0lCQ0FJRkJBTUhEZ2dIRGdjSUV3c0xFUWtFQ0FVRUNBTUZDd1VDQlFJR0F3SUNCUUlDQkFFQkFRSUJBUUVCQXdFQkFRRUNBUUVCQWdFQkFRRUNCUVFCQVFFQkFRUUMreFVJRUFnREJnSUhEQVVFQmcwSURRa0NCQVFCQWdVQ0F3Y0ZBd29FQ3hNRERROEhDQUlCQXdjREF3Y0RDdzhFQXdnQ0Z5Y1FCUW9GQlFnRUJBY0ZDQk1KQkFNQ0FRVUJBUUlCQWdJQkFRRUNCUVVWSWhJQ0J3SU1DZ1VDQ3dJSUNBVUlFQVVKQkFjREJna0FBQUFBQS8rMy8vRUN1Z01DQWJjQ1NBTFNBQUFESmlZbkppWW5KalluSmpZM05qYzJOamMyTmpjMkpqYzJOellXTnpZMk56WVdOelkzTmpJM05qWTNGakkzTWhjeUZqTVdGaGN5TmhjeUZoY3lGeFlXTXhZek5oWVhNall6TWhZM0ZqWXpNaFlYTWhZek1qWXpNaFl6RmpZekZoWVhGaklYRmpJWEZoWUhGaFlYRmhZWEZ4WVVGeFlXRnhZVUZ4WVVGeFlXRnhZV0Z4WVdCd1lXRlFZR0J3WUdCd1lIQmdjR0pnY0dCZ2NHQmdjR0JnY0dJZ2NHQmdjV0ZoY1dGaGNXRmhjV0Z4WVdGeFlXRndZV0Z4WUdGUllHQndZR0J3WVVGUVlVQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhKZ1lIQmlJSEJnWUhCaUlIQmdZaklnY0dKaWNtSmljbUpnY0dKZ2NpQmlNaUpnY0dCaWNtTmpjMk5qYzJOelkyTnpZMk56WTJOVFkwTnpZbU56UTJOVFFtTlRRMkp6UW1OeVltSnlZbUp6WXlOellXTnpZeU56WTJOVFFtTlRRMk5UWW1OVFEyTnpZbU5TWUdKeVlpSnlZbUp5SW1Cd1lHQndZR0J3WUdJd1lHQndZR0J3WUdCd1lHRnhZV0Z4WVZGamN5TmpjMk5qYzJOaWNtSmlNR0JnY0dCZ2NtTkNjbU5qYzJOamMyTmpjMkZoY1dOaGNXTWhjV0ZoY1VGaFVVQmhjV0JnY0dCZ2NHQmdjR0pnY0dCaU1pSmljaUJpY21KaGNXQmpNV0Z4WVdOeFkyTXhZWE1oWXpNall6TWhZek5oWXpNall6RmpZekZqWTNGamMyTnpZV056WTJOelkyTnpZMk56WXlOVFkyTnpZMk56WTFOamMyTmpjMk56WW1OelkySnlZbUp5WW1KeVltSnlZbUp5WW5KaVluQmlZbkJpWW5KaUlqSmdZakpnWWpKaU1tSWlNaUJpY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjVUJoVUdGQWNVQmdjSEZnWVZGaFlURmhZWE1qWVhNaFl6TmhZek1qWXpOaFEzTmhZM0ZoWTNGeFkzTmpNMk5oYzJOamMyTmpjMk5qYzJNamMyTmpjMk5qYzJOamMyTmpjM05qYzJOamMySmljbU5DY21KaWNtSnlZbUp5WW1KeUltSnlZbUp5WW1JeVlpSnlZR0p5WW1KeVlpSnlZbUl5SUdJeUltSXlJbUJ5SW1JeUlHSndZSEJnWUhCZ1lYRkJRWEZoUVZGaFlYRmpJcUF3Z0VBZ1VEQXdJQkJBSUNBZ1VDQWdJQ0JBSUdBUUlKQWdvQ0Fna0dBd29GQWdzSUJBZ0VCQVVGQmcwSURBNEVDQVFJRGdnR0RRVU5EUWNJQkFVS0JnNEVEaVFTRFJJSURSMExDUW9GQkFrRkNRUURBd1lEQXdvREN3VUNCZ3dHQ0JFR0NBb0NBZ2NDQlFjREFnSUNCUVlCQ0FJQ0NBRURBUUlFQWdJREFRSURBUU1DQlFZRUJBUUNCQUlHQmdZQ0FRTUhBZ01FQXdRSUJRZ0RBUWNOQkFVUEJRMElCZ1FJQWd3Q0FnY0NBZ0lDQWdVQkFRRUJCQU1DQXdFQkJBSUNCUUlDQkFRRkRnZ0lBZ1FHQWdJRUF3WUlCUXNQQkFRRkJBTUhBd1VLQlFNSkJnVUlDQk1GQlJVSUN4WUxIRE1jQ1JFSUNBNEhFaU1TQncwSUJRb0REUWtGQ1FNRUFnRUJBUUVDQkFFQkFnSUJCQU1DQVFRQkRCRUlEQThJQXcwSUNRTUJDUThHQVFFQkFRRUJBZ0VCQVFJRkJBY0lCUU1IQXc0SkJRUUlCQVVJQXdVR0JRTUZCQUVHQWdJRUF3Y0tBZ0VFQXdjT0VnZ1BDQVVFQXdJR0FRZ01CUVlKQWdRREJRVUVBUVVDQWdZREJBTUVDQkFGQlFjRUJRTUNCUUVCQXdFQkFRVUVBZ1FEQlFZSURRZ0VCUVlFQXdnRkJnc0ZDQWo3Q3dFQkJBb0ZDUUlMQndJRkJnNFpDZ1FIQWdNR0JBb0RBZ2dNQlF3R0FnNEpCUWtFREFFRkJBSUhEd1VJQ3dNQ0FRSUdBZ1FEQWdJQkFnSURBZ0VCQVFNQ0FRRUJBUUlEQWdRQkJnc0NBd1VEQWdVRER3TU9FUWNFQndJTEZRc0xGd3NRRkFzSEFRTUtBUWNMQkFvVENnTUZBZ01FQWdFQ0FRSUNBZ0VDQVFFREFRRUJBd0lEQkFZVUJRY0ZCQWdFQWdZRUJ3SUNBd1lEREFNSUN3Z0RCUU1VQ1FjS0NBWUtCUVFJQkFnTkJnb1VDZ2NEQVFNSkFnWUdBZ0lFQWdJREFnVUNBZ01EQWdJREJBWUJCd0lDRGdRREJRTUhEd1VFQlFJSUJBSUxCQUlLQndJTkNnTUlEZ2dHRFFjR0RRWURCd1FJRFFZRUJnRUxBd0lGRFFRUkRBVUhCQUVCQWdFQkFnWUZCQWdDR2dVSUJBWUdCUWNKQlJVWkNnOE5CQWtDQlFFQ0N3SUNEQU1HQVFJSEFnSUhBUUVFQkFFQkFRTUJBZ0VEQVFFQ0FRRUNBZ0lCQVFJQ0FRRUJBUUVCQVFNQkFRSUJBd0lDQVFJQkFnTUZBZ1lDQlFJS0J3UUhCUW9JQmdJS0JnSUxCQUlIQXdFRUF3UURDUUlGREFrS0FnSVJEZ2dMQndRSUFnZ0lCd0VCQndVREFnWURBd1VEQndFSUF3VUZBd0lHQlFJQ0JRVUZBd0lHQXdFSEFna0hCd01IQlJJMUV3Y01Cd01IQXdvSUJRVUtCUVVJQlFjTkJnY0NBd1VDQWdRQ0JBWURDUWNHQVFRQ0FnSUNBd0lDQWdFQkFRSUJBUUVEQVFJRUFRSUJBUUlEQWdFRUF3TUhBd3NNQmcwTENnSUNCQWdFQlFvSEJRZ0ZGU29XRGhzT0JnNEhCQWNGQ1JZTERnOElDUUVIQndJQ0FRRUVBZ3NaREFNR0F3TUhBd1lMQmdzWEN5WkRJQVVCQWdRQ0FRUUJBZ0VCQVFJQkFRRUNDUU1HQWdVRkFnTUdBdzBqRXdZUUJ3Y0RFQUlGQVFNUEN3Z01CUTBGQVFvRkJRMERBUWtDQ1JBSUFnTURBZ1VCQWdNQkF3SUNBd0lERGdrRkRBTUZDZ1lGQ3dZRUF3UUZCUU1HQVFFQkFnSUJBZ0lDREhrQkFRRUNBUUlCQXdJQ0FnRUJBZ0VCQVFFQkFRTUJBZ0lDQVFRRUFnVUtCQWNKQmdJR0Fnc0NCd2tJQkFvQ0NBTUlCd01JQkFjR0JBZ0ZDUWdGQXdZQkNRa0ZBZ1FDQWdVQ0NRSUlCZ1lDQWdJQkJRRUJBZ0lDQWdJQ0F3RUhFUVlLRlFnSEJnTUxGZ3dHQ3dZRUNBRUlDd1VIRGdnUEVoTUlBUUwra2dFREFRSUJBZ0VCQVFJR0FnSUNBZ0lDQXdFQkFRSUJBd0VDQWdJQ0JnUUZDZ1VFQWdJSkFnZ0tCUVFJQXdVSUJRc09CZzBiREFvTkJ3Y0VBUWNCQWdvRUFnUUNCUWdGQXdFQ0FnRUJBZ01CQlFFQkFnRUNBUUlCQXdFQkFRSUJBZ0VDQXdFQkFoMU9KZ29VQ1FVSkJSbzJGd0lBQUFBQUFRQWUvN29DaEFNSUFuMEFBQUUyRkFjR0JnY1VGZ2NVQmdjR0JnY0dCZ2NHRmdjR0JnY0dCZ2NHRmhVR0JnY0dGZ2NHQmdjVUJ3WXhCZ2NHQmdjR0JnY0dCaU1HQndZR0J3WUdJd1luSmlZbkppWW5KakVtSmljbUppY21KaWNtSmljbUppY21KalUyTmpjMk5EYzJOamMyTmpjMk56WTJOelkyRnhZV0Z4WUdCd1lHQndZaUJ3WUdKeVluSmlZM05oWVhGaFlYRmhZWEZoWTNOalkzTmpZMU5qUW5KaVluSmljbUJnY0dCZ2NHQndZR0ZSWWlGeFFXRnhZV0Z4WVdGeFlXTnpjMk5qYzJOamMyTmpjMk5qYzJOelkyTnpZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1Jd1ltSXlZR0J3WUdCd1lHQndZR0J3WUdCd1lHSXdZR0J3WUdCd1lHQndZR0J3WUdCd1lXQndZR0ZSUVdGUlFHQndZR0ZSWVVGeFlHRlJZV0Z4WVVGeFlXQndZVUZSUUdGUllXQndZR0ZSWUdGUlFYRmhVV0ZoY1dGeFlVRnhZV0Z4WVVGeFlXRnhZV0Z4WXlGeFlXRnhZWEZoWVhGeFlXRnhZV056WTJOelkyTnhZMk56WXlOelkyTnpZMk56WVdOelkzTmpZM05qWTNOelkyTnpZV056WTJOelkyTnpjMk5qYzJGaGNXRnhZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lpQndZR0J3WWlCd1lHSXdZbUp5WW1KeVlpSnljbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WTBKeVkwSnlZbUp5WW1KeVkwSnlZME5TWW1OelkwTnpRMk5UWW1OVGMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOelkyTlRZM05qUTNOalkzTmpZM05qYzJNVFkyTnpZMk56WTJOelkyTnpZMkZ6WTJOelkyTnpJMk16SVdGeFkyTXpJWEZoWTNGaGNXTmhjV01oY1dOaGNXRmhjV0Z4WVdGeFlXRnhZV016STJOelkyTnpZMk56WTJOelkyTnpZME56WTBBbjBIQVFFRUFRRUJBZ0VDQWdFQ0FnRUJBUUVCQWdJRkJBSURBUUVDQVFVQkFRRUNBZ0VJQlFVREJnUUVDUVFIQmdJSUF3b0hCUVFSQmdvTEF3WURBZ2NEQ2c0RUJRSUZBUUlCQWdRQkFnSUNBUUlDQVFNQ0JRRUZDQVFIQndNRUN3WU9DQXNmRGdRREFRRUJBd0lGQkFJSUJCRVdEUVFDQVFFREJRUUNBZ1VEQWdNQ0JBVUlCQVFDQWdJQkFnTUdBZ1VIRFIwR0JBUUVCUVFCQWdFQ0FRTUJBd1lGQXdNRkNCTVBFUVFIQkFvREFnUUdBd1VLQlFVREJ3SUNBd1FEQVFNQ0F3c0dCUXNGQWdVQ0FnWUREdzBHQlFrRkRRa0VFUndPQXdjRENnZ0ZCUWdHQWdnREVoRUtCUWtFQXdjREF3VUZBZ2NGQVFVQ0FnTUNCQWNFQkFjRUFRTUJBd0VCQVFFQkFnRUNBd0VDQXdFQkFRRUJBUUVDQVFNQkF3RUJBZ1VEQXdRQ0FRUUNBZ0lEQWdJQ0NBSUJDd0VDQmdNQkFnVUNCUVVFQmdVS0F3a0ZCd1lIQ0FzSEN3MENDZ1lGQkFnRUJBZ0ZEeEFKQ0FJQ0RRY0ZCZ1FFQ1FRU0FnTURCd0lCQXdZQ0JRVUNCZ0lCQXdRRkF3b0RBZ2tFQXdZRUJ3MEdCZ1lFQlFzRkJ3c0ZCdzRJQ2dvRkN3Z0VCUVVEQkFjRUNSWUxDQjRKQkFjRUJRZ0ZEdzhOQ2dvSURnOElCdzRGQ3dFQ0J3SUNEQVlEQlFVQ0FnTUJBZ01DQWdFREFRTUNBUU1DQVFFQkFRSUJBUUVCQWdFQkFRSUNBUU1GQXdJSEFnTUNBUUVDQWdJREFnTURBUUlCQVFVQkJRSURBd1VCQXdnRENSUUlDQWNLQ2c0SUJRb0VBd1lDQXdVREJ3a0ZDUlFLQkFzSEJRY0ZCZzRIRFFjRUJ3b01CUUVIQkFNSEF3Y0NBZ2dEQVFJREFnWURDUVVDQlFZRENna0VCUVlGQXdvRkJRSUJBd0lDQWdVQ0FnSUZBd1lDRFFVT0R3d0hEQVVGQ3dVTEhBc05Cd0lFQndRQ0JRTVNGQXNOQlFNQ0JnTU5CZ1FGQ1FZS0Fnb0RCd01GQkFRR0F3VURCQU1EQkFJQ0JBTURBUU1DQWdJQ0JRWUVCZ0lGQWdJR0F3a0pCUU1FQkFZT0JBUUtCUW9FQWdVS0F3VUhBUUlDQWdNQ0F3UUhDQlVNQ1JNSkJ3Y0RBZ0lGQXdJTURnY1BCd0VIQWdNRUFnWURBZ1VFQkFRQ0JBVUZDQWNOQlFZQkFnVUNBZ2dGQWdzRkNnd0VDQUlLQVFNSUJRY01CZ1lJQmdvS0JRWUNCQUlIQVFJQ0JRSUZDUVVJQlE0S0JRa1dDZ1VLQXdZTUJnWU1CUUlFQXdJREFna0xCQU1GQXdZR0F3b0ZBd0VDQVFFQkFRSUJBd0lMQ2dVQ0JBTUNCUUlEQmdVQ0FnTURBZ0lGQWdRSkJRZ09Cd1VGQkFzRkJBTUhBd29NQlFjTENRY1FEQWdGQWdjUENBVUhCUWdMQ2dVS0NBUUdBd2dPQ0FrQkFRc0pCUW9SREFJR0RnZ0VDQWNPQ0FNR0F3TUdBd2tGQWdnREFnVUJBZ01DQXdNREJnSUZBZ0lDQWdJQ0FRUURCQVFHQ0FZQkFnSUNCQUlIQ0FVRkFRRUhCZ01JQXdRR0JCTUNCd01GQVFFRUFnSU1DUVVNQWdnQ0FnWUNBZ01JREFjR0RRWU1HUXNMQ0FVSkVRb09EQWNGRFFVRkJ3TUdBUUVEQVFFQkFnVUVBZ01DQkFFQkFRWUhCQVFGQlFvUUJ3Y0xCd1FDQVFJREFnZ0hCQWNPQlFJRkF3VUxCUVFGQXc0SEFnc0RBZ3NDQWdRSUJBVUhCQkFZRWdnUEJnTUZBd2dNQkE0SkJnUUtGQXNJRkFzSkJnUURDd1VGQndVSUJBTURDQU1NQXdvQkFna0RCd0lDQlEwSUNBd0pBUVlGQ0FjRUFnVURBZ1VDQWdZQ0FRUURCZ1VGQWdFQkFnRUJBUU1DQWdJRUJ3SUNBUUVGQVFVQkFRSUdBZ1FEQ2dNQ0JBUUNCd2tIQVFzVUN3b0NBZ2NGQkFzR0JBUUlBd1FGQUFBQUFBTC83di9wQXNNQzh3RThBZkFBQUJNbUppY21KaWMwSmpVMkpqVTBKalVtSmljbU5DYzBOQ2NtTmljbUppY21KaWNtSXlZbUp5WW1KeVlqSmlZbkppWTNOaFkzTWpZM05oWVhGallYTWhZWE5oY3lOaGN5RmpNV05qTTJGaGNXTmpjMkZqTXlOak15RmpNeU5oY1dGaGNXRmhjV05oY1dGeFlXRnhjV0ZoY1dGaGNXRnhZV0Z4WVdGeFlXRnhZeEZoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZnY1VGaGNXRlJZV0J3WUdGUVlVQndZR0J3WUdCd1lHQndjR0JnY0dCd1lHQndZSEJnWUhCZ1lIQmdjR0JnY0dJZ2NHQndZR0J3WUhCZ1lIQmdZSEJnWUhCZ1lIQmlZSEJoUWpCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCd1lqSWlZakppSW5Jd1ltSnlZaUl5Y2lJaWNtSmljbUlpY21KeWNtSmpjMkZqTTJOak1XRmpjeU5qYzJOak0wTmpjMk5qVTJKalUwTmpjME5EYzJOalUyTmpjMEpqYzJORFEyTlNZbUZ4WVdGeFlHRnhZVkZoVVdGaGNVRnhZV0Z4WUdGeFlXRnhZMk56WTJOelkyTnpZMk56WTJOelkyTnpZME56WTNOak0yTmpjV056WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTNOQ1kxTkRZMUpqWW5KaWNtSmljbUppY21KeVltSnlZbUp5WW1KeVltSnlZbUp5WTBKeVltSnlZbUp5WW5KeVltSnlZbUl5WWlCeVltQnlJR0J3WW1Cd1lHQndZR0J3WUdCd1lXQndZR0Z3WVdGUVlHQndZVUJ4VVVCaFVHRkJVVUZoY1dGaGNXRnhZV2Z3TUJBZ0VDQWdJQkFRRUJBd0VEQWdFREFRSUNDQVFDQlFNSkJBWUtCUVFHQXdjREJ3Y0RBZ2NCQWdvRkJRY0ZCQWtHQlF3SEJRY0ZDQWdJRUFrQ0NnUUlEUWNPSGcwT0hROERDd1FGQ2dVS0ZBc01GdzBJRUFrREJ3UUZFQWNGQmdjREFnc0VCUU1DQXdNREJ3SU5CZ2NCQVFjQ0FnZ0hCUVVGQXdNRkFnUUNBZ1VMQXdJQ0FnWUdBZ1FCQWdRSkJnSURBUUlFQVFFQkFnSUNCd1FIQXdZQ0FnUUVCd01FQmdNRkFnVUNBUWtJQXdVREJ3SUJCZ1FLQ0FVSkFRb0lCQU1HQkFRR0JBY0hBd2NFQWdvQkJRa0ZDUkVKQmd3TUNRUUpGUXNMRlEwRUNBc0tBd2dFQlE0R0N3MElCQVVKQXc4RkNBVUZDZ1lHREFVTERSRU5DZ1lDQ2djS0N3a0ZJQWtGQndNTUFRSUNBUUlEQVFJQ0FRSUJBUUVCQVFFQkFRRUNBVUFDQmdFQkFRRUVBUVFDQWdFQkFRSUJBUUlCQ2dJSEZBb05GQWdQRHdjTEF3SU1CZ1FNRFFVSUFRd0NDQU1JRFFZSkJ3SUZBd1VFQWdZTkFnTUNCUWNKQWdRRkF3Y0JBZ0lFQVFFREJRWUJBZ1FDQWdZQ0FnUUNBd2NDQWdNQ0F3VUNBZ01DQndJQ0NnUUxDQVVHQnd3SURBb0ZDQVFJR1FZUkh3OEZCd1VGQ2dRSkJnSUtCUUlDQlFJRkFRSUNDQUVCQVFFRkFRRUJBZ0VCQVFFRUFRSUNBZ0lCd2hJU0N3Z09Dd01HQWdRRkFnUUdBd01IQlFrV0N3VUxCUXNHQWdZSUJRSUVBZ2NGQlFNRkF3SUdCZ01DQWdNRkJnRUJBUUVCQVFFQkFnRURBUUlDQVFJREFRUUJBd0VCQVFFQkFRSURBZ0lDQWdJQkFRSUNBZ0lEQkFVQkFnb0NCUU1EQlFJREFnZ0pCd29EQWdzRUF3ME5CQWtJQlFNRkJRa0lCQWtSQ0FRS0JRME9CZ0VIQWdvRkZESVNBd2NDQXdrRENBTUNBZ1VEQlE4R0RBTUlCQVFHQ0FjRkNna0RCZ0lJQVFJTERBTUVBd2tCQmdNSUJ3TUlBUWtHQWdJRUFnSUNBZ2NEQWdjQkFnWUNBd1VEQkFjREF3RUJBd0VDQWdJQ0F3RUJBZ01EQVFFQkFnRUJBd0VCQWdJQkFRUUZCZ1lJQlFJQ0FRSUJBUUlEQVFNREJRZ0VCZ2tGQXdZREJRb0ZDQ0FRQ1JFS0NCSUpDQThJQnhrY0d3Z1hMbDBWS1JNSER3Z01DQXNDRnlFUENRUUhEQWNHQ3dVRUNBRUNCUUlEQkFJRUJ3TURBd0VHQkFJSUNRUUVBZ0VIQVFZS0NnVUNCQUVGQWdRREFnVUpCUkVXQlEwUUNRc1pEUndZQkFnRUJRY0VEUVlERUJBT0RBVUlDUUlOQkFVSUJBVU1CUU1HQWdRR0F3UUlCUWtGQWdRR0JBOEhCUVFFQ1FRRkF3RUNBZ0lCQVFJQ0FRRUJBUWdCQVFVQkFRSUlBZ1lIQkFnWUJ3WUdBUWtSQ0FNSEF3c0RCZ01PRWdzT0hBNE9GeElLQ1FnTkFBQUIvNzMvNFFKNEF2MENZd0FBQVJZR0J3WUdGUVlXRlJRR0J3WUdCd1lHRnhRR0J3WUdCd1lHQndjR0JnYzJKaWNtSnlZbUp5WTJKelFtTlNZMkp5WTJKeVluSmlZbkppWW5KaVluSmljbUJpY21CaWNtSmljbUppY21KZ2NpQmdjR0JnY0dCZ2NHSmdjR0JnY0dCZ2NXQmdjR0ZnY1VCaFVHRmhVR0JnY1dCaFVXQnhRR0J4WTJGeklXTnpNeUZqYzJOamMyTmpjMk5EYzJOamMyTkRjMkZUWTNOalkzTmlZM05qWTNOalkzTmhZekZnWUhCaFFIQmdZSEJnWUhCZ1lWQmhRSEJnWVZGQVlWQmhZVkJoY1dGaFVVQmhjR0ppY21KaWNtSnlZMEp5WW1KeVkwSnlZbUp5WW1KeVltSXlZbUp5WUdJeU1HQmljR0JoY1VGQmNXRmhVVUJnY0dGaGNXTWhjV0Z4WVdGeFlYRmpZWEZoWVhNaklYTWhZekZqWXpOakkzTmpZM05oWTNOalkzTmpZM05qWTNOalkzTmpZM05qUTNOalkzTmpZM05qYzJOamMyTkRjMkpqYzJOelkyTnpZR0Z4UVhGZ1lYRmhVV0ZCY1dGaGNVQmdjV0JoVVdCaGNVRmhjV0JoY1dGaGNXRmhjV0ZnY0dKZ2NpSmljbUJpY21KZ2NpQmlNbUJpY2lKaU1tQmlNaUppY2lKaU1HSmdjR0JnY0dCaU1HQmdjR0JpTWlCaU1HQmdjR0JnY0dCZ2NHSWdjR0JpYzJOelkyTnpZMk56WTJOelkyTnpZM05qWTNOalUySmljMEpqVW1OaWNtTmljMEpqVW1OamMwTmpVMEppY21OaWNtSmljbU5qVTBOQ2NtTkRVbUppY21KaWMwTkNjbUppY21KaWNtSmljbUppY21KaWNtSmljbUp5WW1KellXRnhZMkZ6SXlNekkyTnpZV056WVdNekkyTXhZV016WVdNekkwTXhZMkZ6TTJGaGNXTXhZV016STJNeklXTXpJMk14Y1dOamN5RmpjMkZqTXlOaGN5RmpNeU5qTXlGamMyRmpjeU5qTTJOelkyTnpZMk56WTJOell6QW5BQkFRSUVCQUVDQXdJREFnSUNCZ0lDQVFJREFnRUJBZ1VCQkFjQ0J3SUZBZ1FDQVFJQkFRTUJBZ0VEQVFFRUFnSUVBUVVGQXdNSUF3a0RDQVFDRGd3RkF3WUNCd29GQ3hjTEJRb0ZGQ1VVQ0JJTEN3VUZEZ29GQVFjQkFnUUJBUU1DQWdFQkFRRUJBZ0lCQVFJQkJSQUpFQnNPRFFrWENBWU9Cd2NDQVFZQkJnRUNCZ1FHQVFRQkFRRUZBUUVDQlFNQ0F3SUZBUVFDQndJQ0FRRUJBUUlEQXdFQ0FRRUJBUUlCQVFFQkFRRURBUWdFQVFNQ0FnVURBUUlFQVFFQkFnVUVBZ1FHQlFzQkFRUU9CZ1VLQml3VUZRd0JBd0VCQVFNQ0FRRU5Bd2NDQWdVSUNnWUNFQXNEQmdNREJnVUVCd1VFQndRRkRRY1NKaE1JRFFjTEZRZ0ZEZ1VJQkFNQkFnRUZBd0lCQkFFQ0FnUUJBZ0lEQWdFREFRVUNBZ0lIQVFFREJBTURBUTBDQWdRQ0FnSUVBZ0VCQWdFQkFRRUNBZ0VDQWdFREFRRURBd0lDQVFJQkJBSUZDd2dRRXdnTkd3a0VCZ1VGQ3dVV0lnOEZCZ1FEQmdNRkN3Y05Cd1VEQ3dRVklRNEZDUVVKRVFZSENRZ0hCZ01IREFZR0N3Y0lEd2tMQmdJTkJ3UUNBUWNHQWdZSUJBSURBZ0lHQWdRREJnSUJBd0lEQVFJQ0FRRUJBZ0VEQWdFQkFRUUNBZ0VDQVFZQkFRRUJBUUVDQVFFQkFRSUNCZ01DQlFJRUNBSUpCd0lLQmdJTkNRVVFCQVVLQWdVU0NBOGdEZzRNQnc4UkNRUUVCUW9CQWdNR0Fnb0tBd1FMQkFrQ0RRUUZLZ29FQWdRSUJRa0ZCUWtGQmdvRkF3WUNGUTRMQlFRRkF3b0JBUVFIQlFZTEJRTUdBd1VKQmdRTEJRTUhCQkFIQlFZRkJBa0NEQWNEQkFzQyt3VUhCUXdIQkFVTEJnWU9CdzRiRFFrVUNBUUlCQXNaRGdnTkJoRUZEUUlTRmdzSUNRa0hBd1FIQkFNR0F3TUpCQVlHQlFzQ0F3WURBZ2dEQXdVRUF3VUVBZ0lHQVFFQkFnRUNBZ0VCQVFFQkFRTUhCQUlDQWdNQkFnVUdCUU1DQWdzVUN4RWhFQU1GQXdNSEF3Z01CZ3dGQWhJVERCZ05CUUlDQWdVQ0F3SUtCUWdFQXdrR0F3OExCUW9KQWcwQkF3b0RCd01IQWdJR0RnVURCUUlJQVFnT0NBZ1FDUWdQQ0EwWERBc0RBZ1FJQlFzVERBa0dBd2dOQndjSUNSNE9EeDRQQmdnRUFnWURDZzREQndNTERBVUdEQVVMQlFNRkJRUUhBZ0lHQWdFQkFRRUJGQ1lUQmcwSEJRd0ZCQWdGRlNRVUNBSUZBZ1lCQWdrRUFnSUNBUUlCQVFJQkF3RUJBUUVCQWdFRkFnSUZDZ2dDQXdnRENBc0dBZ1lEQlFrRkNBTUNBd1lFQ3dNSUJ3UURCUVFLQXdJRkNRb0ZBZ2NGQWdVR0F3Y0VDZ0VHRGdjR0RBWUdEQVVFREFVUkVRZ0VCZ01IQXdJS0NRVUhEQWNHRFFZRkF3RUNBUUVDQWdFQkFRRUJBUUVCQVFJQ0FRRUJBZ0VIQWdJQkFRSUNBUUlDQWdFQkFRRUNBZ0lCQkFRQkFnSUNEd01KQlFRSkJ3VUNCZ1FDQlFNR0Jna0VBaEFCQ3hRS0NBVUVEaHNRQ3dRQ0NBd0hEaDBMQlFzRUNCSUxDUk1JQ1JJSkN4VUxDaU1PQmd3R0JRd0ZCUTBGQncwRkJRZ0ZCUW9EQlFZRkJnTUNDUUVDQndZQ0JBSUNBd1lIQXdFQkF3SUJBZ0VCQVFJQ0FnUUNBUVFCQkFJQkFRSUJBUUVEQVFFQkFnTUNBUUVCQWdFQkFRSUJBUUVCQWdFQ0FnSUNCUU1EQkFNQkJRSUNBQUFCLytMLzdBSjhBdXdDSUFBQUFSWVdGeFlXQndZR0J4UVVGUlFXQnhRR0ZRWVdGUVlHQndZR0J3WUdGUlFXRlJRVUJ4UVVCeVltSnlZbUp5WTBOU1ltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVlpSnlZbUl5WUdJeVltSXlZR0p5WW1KeUlISWdZSEJpTWlKZ2NHQmdjR0JnY0dGQWNVQmhVR0ZoVUdCZ2NHQmhVR0ZBY1VGaGNHRmhVVUJoVVVCaGNXRmhVR0ZoVVdGQlVXTmpNV056WTJNelkyTXpZV056WTJOell5TnpZMk56WTJOemMyTmpjMk5qYzJOamMyTlRZMk54WVVGeFlHQndZR0J3WVVCeFFHQndZVUJ3WVdGUlFHRnhZV0Z4WVdGeFlVRlJZVUZSWUhGQVlWRkJZWEZBWVhGQllWRmhRWEZoWUhCalFuSmlZbkppWW5KaVkxSmpVbUppY21KaWNtSmljbUppY21KaWNtQmljaUppTW1CZ2NpQmlNR0JnY2lCd1lHQnhRR0Z4WVVGUllXRnhZR0Z4WUdGUllXRnhZVUZ4WVdGeFlYRmhZWEZoWVhGaFlYRmhZWEZ4WVhGaklYRmhZWEZoWVhGaFlYQmdZSEJpWWpCaVlIQmlJSEJnWWpJZ1lqSmlZbkppSW5CZ1lIQmlJbkpqWW5OalkzTmpFMk5qYzNOamMyTnpZMk56WTJOelkwSnpRbU5UUW1KeVkySnlZbUp6UTJOelVtSmpVME5qVTJKalUwTkNjMkpqVTBOalUySmpVMk5qVTJORGMySmljbU5pYzBKalUwTmljMEppYzJKaWMwTkNjbUppY21KeVltSnlZakppWW5KZ1luSmljbUppY21KaWNtRmhjV05oY1dGaGNXTWhjV0ZoY1hGaFlYRmhZWE16WTJPd0l5RmpNMkZqYzJOamNXTmpjV05qTVdOak0yTWpjMk5qYzJOamMyTmpjMk1qY3lOZ0oyQWdFQkFRRUNBZ2dCQWdFQ0FRRUJBUUlDQVFFQkFnRUJBUXdEQWdFRUFRRUNCd01EQXdJQ0FRUUZFUWdKRWdnRUJRTURCd1FHRGdrSUFnSUpFd2dNSFJBR0N3WVBEd1VIQkFrQ0JBWUVDQTRJQnc4RkFnSURBUUVCQVFFQkF3RUJBUUVCQXdFQkFRRUZBUUlCQnhBSkRRZ0ZCZ01HRFFZSURnZ0VDQVFHQ1FNSEN3VUNCUUlIQWdZQ0JBTUNCQWtEQWdRQkJnVUJBZ0VCQVFFQkFRRUJBUUlDQVFFQkFRRUJBUUVFQVFFQkFRRUJCQUVCQVFJQkFRRUNCd1VCQWdZREFnVURBUUlCQWdNQ0FnSURCd1VFQWdvREJRc0ZBd2NEQkFVQ0JBZ0ZCQWdGQ0JBSkVSQUlFUWdCQVFFQkFnRUJBUUVDQWdFRUFRRURBUVlDQWdJQkFRSUNCZ1FDQkFJQ0F3UUlCd2dDQmdNTkRRWURDUVVHQ0FJTkVRZ0tCUU1KQlFNT0Vna1BJQThSSVJFSUVBa0hEUVlGQ3djR0RBTUdBUUVJQmdNTENnTUNFd1VHQndJRENBUURCZ1FHQVFFQ0FRRUJBUUVEQVFJQkFRSUJBUUlCQVFFQ0FRRUJBd0VGQmdjQkJBSUJBUVFDQXdFQkFnRUJBUUlDQXdRRUJ3Y0tBUU1HQXdZQkFnRUtCUThGQkF3RUF4VUhDUkVGQlFnRUNSTUtBd2NFRWc0Y0RodzRHeWtKRVFnUUR3Z1BCZ3dJQndzREFnZ0xCUUVLQVFVRUFnVU5DQXNWQ3dNRkF3UUhCUVVHQWdJR0F1b0hEUWNNRmdrTUhBNEhEQU1JRGdrQ0JnTUNCd01GRFFZU0pBOEtBUUVMQXdJRENRVUNCd0lMRWdvRkVBWUZCd1VNR1EwUERBWUxFZ2dKREFnRENnWUNCQUVDQVFFREFnSUJCQUVFQWdFQ0FRTUJBUU1CQVFJREFnSUNBZ0lIQXdJR0F3TUlBd1FGQlFjSEJBVUtCUXdUQ0FRTEFnUUtCZ1VMQlFnUENBd0hBd2tRQ0FRREFRSUJBUUlEQVFJQkFRTUJBZ0lDRGdZQ0F3SVNDQTRJRHdrRkNSSUxDQU1PQ2dJQ0RRVU1GZ3NJRWdnRkJ3VUNCUVFJRkFnRENRUUNFQVlEQ3dVSEN3Y0ZDd1VJRVFzUUR3SUhBZ1VMQndRS0JRTUhBd01HQWdVUEFnRUpBd2dTQ0FjS0JnZ0JBZ01JQlFjRUJnc0ZEQklJQmd3R0FRUUJBUUlCQWdFQkFRRUJBZ0VEQWdNRENBd0hCdzRIQlFzRkNCTUZDUVVEQmdzR0NCQUlCUWtGQXdnQ0J3SURCd1VFQlFRQ0F3SUlCQUlCQWdjR0JBSUVBZ1FDQkFzREF3UUJBd0VCQkFFQkFnSUJBUUVCQXdJQkFRRUNCd01CQndFQ0NRWUJBZzRHQlFZQ0Fna0VCQWNFQmc4UUJBVURDd2dFQkFnRUNBOElCUW9GRlFVSEF3TUdBd2tVQ3dzVUNRY0RBZ01IQXdRSEJBVUlCUXNaQ1FzQ0Fnc1BCZ1VJQkFzVkN3Z09DQVVIQWdRSUJRTUdCQW9MQ2c0RkJ3SUNBZ2NCQVFJRUFna0NBZ01EREFRQkFRSUJBUUVDQWdJQkFnRUJBZ1FDQkFZQkFRTUJBUUVCQVFFQkFRRUJBZ01CQWdFQ0FnVUNBUUVCQVFJQ0F3SUVBQUFBQUFFQUFQNndBdDBER0FRVUFBQUJGZ1lYRmdZVkZCWUhGQVlWQmhZSEJoWVZGQVlWRkJZWEZoY1VCZ2NVQmhVR0ZCVUdGUlFXRlFZR0J4UUdGUWNHRmdjR0JnY1dGZ2NtSmljbUppY21KeVltSnlZbUp5WTBKeVltSnlZbkppWW5KaVluSmlZdkFpWW5KaVluSmlZbkppY21KaWNtSmljbUppY21CaWNtSmljbUlpTUdKaU1HQmdjR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUhCd1lXQnhRR0J3WUdCeFFHRlFZR0Z4WVVGeFFWQmdZVkZoWVhGaFFYRmhZWEZoWVhGaFlYRmhZWEZoWVZGaFlYRmhjV01oY1dGaGNXTWhjV0ZoY1dGaGNXTmpjMk5qYzJOamMyTmpjMk5qYzJOelkzTmpZM05qYzJNamMyTnpZM05pWTNOalkzTmljbUppY21KaU1pQmlNR0ppTUhCZ1lIQmdZSEJnY0dCZ2NHRlFZR0J3WUdCd1lHQndZR0p5STJOVFkwTnpRMk5UVTBOaWMwSmpVMkpqYzJGaGNXTmhjeUZqTVdNaGMyRmpjMkZ4WVdGeFl5TXhZMk16SVdOelkzTmhZM01qWXpNaFlYRmhVVUJoVVZGQVlWQmhZVkJoUVhCaFlYRmhVV0JoVVdGaFVHRmdjV0JoVVdCZ2NWRkFZSEJnWVZCZ1lIQmdZSEJnWVhCZ1lIQmdjR0JnY0dKZ2NHQmlNR0lnY0dJZ2NHQmdjR0JnY0dCZ2NHQmdjR0lnY0dCaWNtSWlNbUppY21KaWNtSnlZbUJ5WW1KeVltSnlZbUp5WW1KeVltSnlZbkppWW5KaVluSmlZbkppWW5KaWNtSmljbUppY21KaWNtSmpVMkpqVTBOalUyTkRjMk5qYzJOamMyTmpjMk5qYzJGamMyTWpNMkZ6SVhGaFlYRmhZWEZoWVhGaFlYRmhVV0JoVVdGZ2NHQmdjR0J3WUdCd1lHQndZaUp5SUdKeVltSnlZbUp5WW1KeVluTmlZMU5EWTNOalkzTmpZM05oWVhGaFlYRmhZWEZBWUhJaWNtTkNjbUppY0dCZ2NXRkRjV0ZoY1dGaGNXTnpZM05qWTNOalluSmlZbkppWW5KaWNtSmlNbUp5WUhCZ1lIQmpVR0JnY0dGeFlXRnhZV0Z4WVdGeFlYRnhZVkZoWVhGaFlYRmhjV0ZoY1dGaGNXRmhjV01oY1dGaGN5TmpjeU5qTVdGaGNXTWpNV01qYzJOamMyTmpjMk5qY1dOamMyRmpjMk5qYzJNamMyTmpjMk5qYzJOVFkyTnpZMk56WTBOelkyTnpZVk5qWTNOQ1kzTnlZMk5TWW1KelUwSmpjM05pWTFOalkzTmpRbkppWTNORFluQmdZSEJnY0dCZ2NHQmdjR0JnY0dCd1lHQndZR0J3WUhCZ1lIQmlJSEJpTUdCZ2NHSnlZbUp5WWlKeVluSmdZbkppWW5KaVluSmdZbkppSW5KaWNtSmljbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkpqWW5KaVluSmlZbkppWW5KaVluSmpZbk5DWW5KamMyTkRjMk5qYzJOamMyTkRjMk5qYzJOamMyTnpZME56WW1OelkyTnpZbU56WTJOelkyTnpZM05qWTNOalkzTmpZM05qWTNOamMyTmpjMkZqYzJOamMyTnpZMk56WTJOelkyTnpZM05oWXpOalkzTmpZek1oWVhNallYRmpJWEZoY1dGaGNXRmhjV0ZoY1dGak1XRmhjV014WVdGeGNXRmhjV0ZoY1dGaGMyTmpjMk5qYzJOamMzTmpZM05qWTNOalkzTmpZM05qUTNOalkxTmpRM05qWUMwd1VCQVFJQkJBSUNBUUVDQXdFREFRRUJBZ0VCQWdFQkFRRUNBUUVCQVFNQkFRSUNBUU1GQ2dNQ0JBSUNDQWNEQWdFQ0FRSUdBUUlHQXdRRUF3a0VDQUlDQXdZRUNnZ0dCUU1HQXdNSEFoZ1BCdzBIQXdjRUJBWUZBd2tGQkFnRkN4Z01DZ0lDQlF3RkRBb0ZDZ1VMRmdvRUF3SUdDUVlJQVFJREFRSUVBd1VEQlFJRUFnSUJBZ0lGQlFFQkFRRUJBUU1CQWdJQ0F3SUNCQU1EQlFJQ0FnSUNCUU1GQkFVSUNBTUNBd1VEQWdZRENBOElCUXNHSHowZUJ3c0ZCUXdHQlFvRkJRa0ZCZ1VKQ0FnUUJ3WURBZ1FCQmdJS0FRSUJBZ0lHQVFNR0N4WUxDQk1LQmd3SUJRZ0ZFZzRjRHdrUkNRMEREUXNHQ1FnREFnTUtCUU1HQkFJR0JRVURBUUlCQWdFQ0FRRUNDUklMQlFvRkJRc0ZDUkFJRHg4S0ZCSUdDd1lIRkFvRkNBY0RCQVFORmd3RUFnVUpCUWdPQ0FVQkFnRUNBUUVCQVFFQ0FRSUJBZ0VCQWdJQ0FnRUJBUUVCQVFFQkF3SUZBd0lFQVFVS0JRb0dDUkFKQ0FJQ0NRUURBd1lEQmdNQ0Jnd0hCUW9HQnhNSkJ3OElDQkFKRVNFVkNCUUlCZ3dHQmcwR0N3MEZEQVlIRHdnRkN3TUJDQUlGQ3dZS0FnSUpBUWtDQWdvREFnSUZBZ2NHQVFVRkJ3a0ZBZ0lDQWdFQ0JBRUJBUUlCQVFRQ0JRSUhBd0lDQXdZSkJBSUxBZ1VTQndvRUNRd0hCUU1MQndNRkN3SUNBZ0lGQXdJQkF3RUJDZ1lEQ0FNRkF3TUxCUVVEQlFVS0JRUUhBd1FHQkFVRUF3d0RBUVFGQXdVSUF3TUdCUUlJQXdVSEJRd0lBUUVHQ1FFREJBVU5CZ01IQWdVRUFRVURBZ0VGRHd3SENBVUdCUUlMQlFJSEFnVUhCZ01JQlFJRkNBUUtDQTRhQ0FnQkFRRUZCZ0VDQWdJRUFnSUNBZ1FJQndVRENRUU9EQWdIQ1FzTEJRc0lCZ2tCQWdRSUJRZ0dBd01KQlFRSEJBa1RDd1VNQmdvUkNnMFFCZ3dEQWdVTEJRWUpCUVlMQlFVSEJBUUhBd1lKQ0F3SkJBa0pBd0lDQlFJRUFRVUVBZ1VGQmdFQ0FRRUJBUUVDQVFFQkF3UUJBZ1VDQWdFQkFnRUZBZ2tHQkFVR0JBUUNBZ1VDQWdRQ0N3Y0hBd0lIQVFJTERRTUZCUUlIQXdvR0R5RVNGQklGREFZR0N3WUlEUU1HQWd3Q0FnY0tCUWdEQWdVRkFnb0JBd1VEREFVSkJRa1dDUU1GQXdjRkF3UUpCQWdCQWdnQkFRTUZBd01KQWdRRUFnSUJBd1FCQVFFQkJRSUJBUUVEQWdFREFnRUJBUUVCQXdJQkFnRUVBZ1VCQVFJR0FnVUJBZ0lFQWdJREFRUUVBUU1DQWdJQ0JRVUNCUU1EQ2dNQ0JBSUpBUUVFQkFJR0NBVURBZ2dVQ3cwTEJnd0JEQUlDQlF3RkN4WU1DeGdJQWdZREJBZ0VDZ1FEQ0FNQ0JnSUdEUWNDQlFRQ0N3VUlBd2NGQWd3RUJRTUdEUWNDQXdRR0NRVUNBd0lHQlFNTENBSUNBZ01DQVFJQkFnTUNBZ0lEQXdJQ0FRTURHQWNHQXc0SEJBc1pEUU1HQXdnTkNRc0ZBd2dSQ0FVS0Jna0tBd1lFQ3dJQ0Jnd0dCQWdDQmdNRkNBVUVDZ01MQVFnRENBSUNCUWdEQXdZREJBZ0VDZzBKQVFJREJ3SUdBZ0lGQ3dVSkNBWUpCZ2tEQWdRSkJRZ0tBd1VEQndNREJBUUxEZ0VKQXdJQkFnRUVBUUVCQVFFQ0FRRUJBUUVCQWdJREFnVUJDUk1MQkFRRENSWUtDd2NFQkFVRENBUU5EQmtOQmd3SUJnd0dDd0VDR1RrZEF3WUNEQU1FQmdRRkN3Y0dEQVVGQ2dVSURnY0dEUWNFQ0FVRUJ3VUNCUUlFQXdZQ0FnUUNBZ0lEQ0FNQ0F3RUhCQWtDQXdJQ0F3UUNCUUlDQkFNQkJBWUdCZzRIQmdRTUFRa0VEZ01FQ2dVTEdRMGZHZ01EQWdFQ0FnRUJBd0VFQXdJRkF3VUJCZ2tFQlFNRUF3SUZDZ1lEQ1FNQ0JnTUlBd2tSQ3dNRkF3d0ZDd1lJRUFnT0NnVURCZ01CQVFFQ0FRSURBd0lDQWdFQkFnSUJBUUlDQkFJQkFnRUNBUUVOQ2dNRkF5OFFFZ2tEQmdNSEJBVUVDUVVLQlFnUkNRNGVEZzBSQkFzQkFRNGlEdzhQSFE0SUR3Z05Fd3NGQ3dZREJBTUZDQVVNQ2dNTEJBVUJBUVlDQWdFREFRSUlBd0lFQWdNSEJBSUVBZ0lCQVFJQ0FRRURBUUlCQVFFRkFRSUJCQVlGQXdRREFRSUJCQWtFQlFNQ0JBRUdBd0lIQmdJQ0JRSUtCUVFCQndvVkN3VUhCUU1JQkE0SkJBY0RBZ01HQlFRSUF3NE1CUU1GQXdJR0FnWUdCUU1DQXdRQ0FnY0RBZ0VGQ1FRRkJnUUNDQVFJQlFvREFnUUhCZ2NRQ0FRSUJBWUNBZ1VDQWdFQkFRRURBZ0lDQWdNQkJSRU1BZ2dEQlFrRkNRWUNBd1lCQVFFQkFRTUNCUXdIQkFrREJnSUlBUUlEQWdNRkJBd0hBUVlJQXdNSUFRTUVBZ01DQ0FJS0R3d0ZDZ1lFQ3dNS0JnTUJBUUlCQVFNUEN3b0JCQVFGRnhNRkNBVUZDQVFJRGdnTEN3b0xBUVFHQlEwTEJBUUVCQVVDQXdJQ0FnRUJBUUlCQWdFQkFRRUJBd0VCQVFJRUFRTUNBZ0VDQkFRQ0F3RUJBUUVCQXdFQ0FnSUZBd1VJQXdnQkNRUUNBZ2NDQlFNQ0NBY0ZEUUVQREFrSEN3Y1hCd0lDQlFvRkRnWUpCd3NNQWdFREJ3UURCUVVNQlFNTUdBME1DZ1VHQXdRRUFnSURBZ0lGQWdrRUJBUUNBZ0lCQndZQ0F3SUJBZ1FGQ0FJQ0FnRUNBUUVCQVFRQkFRRURBZ0VEQVFJR0FRRUVBUU1CQVFNQ0JnSUVBZ1VNQmdJRUFnVUZBZ01LQlFvR0FnZ0JBUU1QQlFVSkJRb1RDQWdRQ0FjSEJBTUdCU1l0QkFZRURSSUlCUXdGQkFZRUF3Y0NDQUVDQ0FVRkJRSUhBZ0lHRFFVSEJnSURDd1VFQlFJSUF3SUdBZ0lHQXdrSEJBZ0VBZ1VGQWdRQ0NBRUJCUUlDQXdZQkF3RUdCQUlFQVFFREFRTUJBUUVCQVFJQ0JBSUNBd0lDQVFFQkFnRURBZ01GQXdFRUJRUUVDQWNIQWdZQ0F3RUhDZ2NDQlFFREJnWUZBd0lIQ0FRV0RBVURBd1VEQWdjQ0FnWUNCQWNGQ2dJQ0JBY0ZCQWtBQUFBQi8zci95Z0xaQXVRQzN3QUFBUVlHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lXQndZVUZ4UVVGeFlXRnhZR0Z4WTJGelkyTXpJV0Z4WTJNeFlXRnpJMk56SVdOellXTXpJMkZ6SVdNekkyTXpZV016STJNellXTXpZMk56WTNOamMyRmpjME5DY21ORFVtSmljMkpqVW1KeVltSnlZMEp5WTFKalFuSmlZbkppY21KaWNtSmljbUpqVTJKaWNtSmljbUp5WW1JeVltSnpZWE1qYzJOamMyRmpjMkZqTXlOekkyTXpNeU5oY3lOak0yTWhjR0J3WUdCd1lHQndZVUl3WUdCd1lHRlFZV0ZRWUdCd1lIQmhVR0ZoVVVCaGNVRmhVVUZBY1VCaFVHRmhVVkJoWVZGaFFYRkJZVkJoWUhGQVlIQmdZSEJoY1dGaFVVQmhjVUZoVVdGQmNXRkJjV0ZoY1dOaFVXRmhjV0Z4WVdGeFlYRmdZakJpWUhCZ1lIQmlZaklnWUhCZ1luSmlJbk5qYzJOamMyTmpjMk5qYzJOamMyTnpZMk56WTJOelkwTlRZbUp5WW1OVFkwSnpRbUp5WTBOVFEyTlNZbUp5WWlJd1ltSXlZR0J3WW1Jd1ltSXlJR0l3WWlCeUlHSXlJbUl5TW1KaWNtQmlNaUpnY1VCaGNXQmhjVUJoY1VGaFVVQmhVV0ZoY1dGaGNXQmhVV0ZoY1dGQmNXSWhVV0ZoY1dGeFlXRnhZV0Z4WVhGaFlYRmhZVkJpSWpJaVlqSmlZSElnWWpCZ1lIQmdZSEJnWWpJaUlIQmdZakJpWWpCZ1luTmpZM05qTTJOamMyTmpjMk5qYzJGamMyTmpjMkpqYzJKalUwTmpVMEpqYzJKaWMwSmpVME5pYzBKalUyTkNjaUJnY2lKaWNtQmljbUppY21JaWNtSmljbUppY21KaWNtSmpjMkpqYzJKamNtTmljMk5qYzJOamMyTmpjMk5qYzJNamN5TmpNV0ZoY1dGaGNXRmhjV0ZoY1dGZ2NHQmdjR0JnY0dKaWNtTmpjMk56SUdGUllXRnhZMk56WTJOelkySnlZbUp5WW1KeUlpQndZSEJnWUhCZ1lIQmdZSEJnY0dGUlFXRlJZWEZCUVhGaFlYRmhZWEZoWVhGaFlYRmhZek1qY1dGak15TmpjeU5qYzJOamNtTmpjMEpqVTBOalVtSmpVMEpqVW1KalUySWpVMkppY21OaWNuSmljbU5pY21KaWNtSnlZbUp5WW1KeVluSmlZbkppWW5KaVkzRmhZWEZoY1dOaGNXRmhjV05qTVdOak15RmpjMk1nRUZDZ29DQ0FjRkFnWUNBZ1FEQXd3REF3TUJCZ0VDQkFFQkFRRUJBZ0VCQXhJRUJnMElCQWtGQ1JJSUJRWUVCUXdGQXdZQ0R3Z0ZCQW9FQ0JBSUJnd0dDQTRJQWdZREF3Y0RCQVlFRFFJUUJRd0lCUUVCQVFJQkFRSUJBZ0VFQVFFQkJ3SUJBd0VDQXdRQ0F3SUNBUUlEQWdFREFRTUZCUVFFQWdVREFnRUJCUVlMQlFzV0RRa09Cd3NOQ3dzUEJRa0ZGd1VJQkFnQ0FnZ1BDQVFEQ0E4SUJRZ0ZCd0lJQVFJQkF3RUJBUU1CQmdRQ0FRSUNBUVFCQXdFQ0FRUUJBUUlCQXdFRUFRRUZBUUVGQWdVQkFRRUVBUUlDQVFRQ0JBTUVCZ1VLQlFvR0FnY01BZ29HRGlFUkNoVUxDQk1LRGhvT0NSUUpBd1lDQVFvQkJnSUlBUUVIQVFJRkNnVVFCZ01CQWdFQkFnTUJBd0VCQVFFQkFRRUJBUVFKQlFzVENRb0tCUWtSQ1FvVUN3MElCUVVOQ0FZT0JnUUhCQVVJQkJRSUVBa0lEZ2dIRHdnQkFnSUJBUUVCQWdFQkJBTUVCQUlFQWdFREFRRUNCUUlGQkFNR0JRVUpCQVVGQWhJS0F3WURCUXNGREFVRkN3VVRMaHdEQmdJSkVnZ0lFUWtMQkFFRUNRVUVCQU1EQmdNSEVBa0JDZ1VIQXdjSkJnVUxCUU1GQWdZQ0FnSUpCQVVCQVFNQ0FnSUNBUUlCQVFJQ0FnRUNFaVVURVNjVENBd0hCUTRHQlFjREJBWUZBZ2dDQWdFQkFnTUJBd1VCQkFFRUFRSUJCUUlFQlFFREFnTUNDUVFEREJFREFRc0NCUWNEQ1EwRkJRY0ZDQVFCQVFFQ0FRUUNDUTBJQ0NBRkNnRUZBUWNGQVFFREJnc1ZCZ0lGQWdJQkF3Z1JCUWtUQ3dFTUF3VUVBZ01DQkFFQkJRSUNBUU1CQVFFQ0FRRUdBd01HQWdNSEJRUUhBd2tDQVFNSURBMEZCdzRJQnc0SER4b05BZ1FCQWdJQkF3RUNBd0VCQVFRQkFRSUJBZ0lDQXdFQkFRSUJCUW9EQ3dVSUJBSUlBUVFFQWdJSkF3TUdBdzhaRFFrSEJ3NEhCUWNGQ3hnTUVDRU9CUXNGQmdNQ3p3NEhCUUlOQlFJRkFnTUdBUWtOQ2dzQ0FRMEVCUXdRQ2c0ZUVSQWVFQTRoRVFJRkJRSURBd0VCQWdJREFRSUJBUUVEQWdJQkF3SUJBZ0lCQVFFRUFRTUJBd0lEQVFFSUVBZ0RDQU1DQmdNREJ3SUZDQWNNQmdZS0JSQUJCQWtFRFFzRkRna0VCd1lGQ0FVS0FRRUdBd0lLRGdjSEF3SUZBZ2NFQkFNQkFnTUJBUUVCQWdJQ0FnSUJBUUVDREFJRUNRTURDUVFHQWdzSkJRVUpCUVFKQlFZTkJpRWlDQVFEQlFNSER3b09HdzRIREFZRkRBWUZDZ1lQQ2cwR0JBWUVDUThGQ2d3RkJRZ0VEQWNFRFEwRkRna0ZDUVlFQmdJS0NRUUpEUUlFQXdNSUFRTURCZ1FIQkFnQkFnUUVDd0VCQVFFQkFnRUJBUU1DQWdRQ0FRTUZBZ01DQWdRQ0FRTUNBUUlFQXdnSUJRa0lCZ3dIREFjRENSTUxCZ1FFQlJFSUNCQUlFeWdTQnd3SEF3SUJBZ0VDQVFJQkFnRUJBZ0VCQVFJQkFRSUJBUUlDQVFNSUFnSUpCUW9UQ1FNR0JBUUhCUWtQQ0FnSkJRa1BCZ2NLQlFVSEJRd0JDd2tEQlFZRkJ3UURBZ0lMQ2dJR0F3TUZDQU1CQWdZRUFnSUNBZ0lFQWdJQkFnRURBUUVCQlFJR0NBUUhCd2dDQmdjRkFnWUNDUUVDQ0JNS0NRTUZCZ01DQkEwR0ZTNFVDZ1lEQ0JBRkJ3VUhDQU1DQ3d3R0FnRUVBUUVCQWdFREF3TUJBZ2NCQlFnRkJRd0ZEaGNMQ3dJRUF3OENBZ2NFQlJFR0FnY0RBd1lEQlFRQ0NBSUNBUWNEQWdrRkJBY0hDdzhGQ0JNSEFnWUNDdzBDQWdNRkRoZ0lEQUlJQXdzVUJBSUtCZ1VFQmdRR0JoUUxCZ1FKQVFFREJ3SUdBZ2dDQWdrR0JRb0RDd0VDRFFRR0VBTUlBZ1FHQXdNR0FnTUJBZ0lEQVFFQ0FnRUJBZ0VCQVFJREFnY0pCUVFHQlFJSUF3Z1NDQVVNQmcwY0RRc0NCdzhHQndJQ0VBa0NDQXdHQWdZREZnNEZEQVVKQWdJSUFRSUJBZ0lEQWdRREJBTUVCQVFCQVFJQkFRTUJBZ0VCQXdNQ0F3QUIvOVgvN1FGVkF1QUJLUUFBQVJZR0J3WUdCd1lIQmlJSEJnWUhCaFlIQmhZSEZBWVZCZ1lWRkJZVkZBWVZGQllIQmdZSEJoWVhGaFFYRkJZVkJoY1VGaFVYRmdZWEZCWVZGaFFYRkJZVkZoUVhGQmNXRkJjV0ZoY1dGaGNXRnhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNHSmdjbUppY21KaWNtSmljaUppY21KaU1pQmlNR0JnY0dJd1ltSXdZR0J5SW1Cd1ltSXlJR0l3WW1JeUlHSXdZR0l5SUdKeVkyTnpZMk56WVdOellXTnpZMk56WTJNemMyTmpjMk5qYzJNVFkzTmpZbk5qWTNOalExTmlZMU5pWTFOalkxSmpZMU5DWTFORFkxTmlZMU5EWW5OQ1luSmpVbUppY21OU1kzTmpZM05pWTFKalluTkNZbk5EWW5OQ1luSmpRMUppWW5OaVluSmpRbkppWW5KaVluSmlZbkppWW5KaUluSmlZbk5oWXpNall6TmpJM0ZqWXpNaFlYRmpZM05oWTNOamMyTWdFTkNBNEZDd29HQXdvSEF3SUxDZ0VCQVFFSEFRRUJBUUlCQVFJQkFRUUJBUVVDQVFFQkFnSURBZ0VCQWdJQ0FRSUJBZ0lCQVFJREFRWUJBZ1lFQ0FzS0JnY0VBZ1lMQkFjTkJnY09Bd0VSQlFnT0NBUUhCQTBYRFFRR0JBc0NBZ01LQkFVSkJRTUlDd1VDRGdrRkF3Y0ZEZ29HQkFjRUJRc0dCQWtFQmc0S0F3a0NBZ2dGQkFnRUJRTUNCZ01DQkFZRkJ3SUJEZ2NIQXdNRUFna0dBZ2NEQVFJQkFnRUJBUUlDQVFNQ0F3RUNBUUlDQVFFQkFnRURBUUVDQWdFSEFRRUNBZ1FCQkFFQkFRSUJBUUVDQVFFRUFnTUJBZ1VEQXdjRUJnMEZCQVFDQ2dVREJRNEJCQW9GQlFrRkNSVUpCQW9EQkFjRURCb1BFU01SQkFvSUVRTGdCd2tDQmdvREFnUUdBZ2NKQWdJSkJCRWxFd1lNQlFjTkJnY0tCUWdXQ0FVTUJnVUpCUWtXQ3dVTEJRVUxCUk1YQnc0SURnNGNEZ01GQkFVTUJRZ0VBZ1FJQkFRSUJRc0dDQU1DQ1FRQ0J3SUlCZ29FQkFNQ0F3UUZBUWNEQWdRSEJ3RUZBZ0lDQVFJQkFnRUNBZ0VCQWdFQkFnRUJBd0VDQXdFQkFRTUJBZ0VDQVFFRUFRUUZBd0lDQXdJRkFRRUZBUUVDQXdJREF3a0ZCUUlDQXdJSkJ3VUpBUUlNR2c0R0RRWURCZ01IQWdJRUJ3UUxDd1VEQndJRkNBUUVCd1FGQmdNRkNRVUtCZ1FGQkFNS0NBa0ZDUVlGQ0FRTEZBb0lEQWdIRGdnSUVnb0ZDQVFJRHdvSkZna0pCUUlEQmdNREJ3SUZDUVlCQXdJSkFRWUNCd1VEQWdFQkFRSUNBUUVFQWdNQkF3RUNBUUFCQUFEL3lnSUJBdUFDRXdBQUFRWUhCZ2NHTVFZR0J3WUdCd1lHQndZR0J3WUdCd1lIQmhZWEZCUVhGaFlYRmhZWEZoUVhGaFlYRmhZWEZoUVhGaFlYRmdZVkZoWVZCaFlIRkFjR0ZBY0dCZ2NHRkFjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQndZR0J3WW1Cd1ltQnlJR0l3WW1CeUlHSXdZbUJ3WW1CeUlHSXdZR0p5WUdKeVluSmlZbkppWW5KaWNtSmljbUppY21KaWNtSmljbUppY21KaWNtTkNjbUppY21OQ2MwSmpVME5qVTJORGMySmpVMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOelkzTmhZWEZoWVhGaFlYRmpZWEZoWVhGaFlYRmhZVkZoY1dCZ2NHQmdjR0ZBY0dGQWNHQndZeEJpTUdKZ2NHTkFjR0JnY0dCZ2NHSWdjR0JpTW1KaU1tSmljbUpqYzJOamMyTmpjMk56WTJGeFlXQndZbUp5SUdCd1lqQmdZSEJnWUhCaFlYRmhZM05qWTNOalkzTmpZM0ppWW5KaVluSmlZbkppWW5KaVluSmlZSEJnWUhCZ1lIQmdjR0ZBY0dCZ2NHRkFjR0JnY0dCZ2NHQmdjR0JnY0dGaGNXRkJjV0JoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjeUZqTXlOak0yRmpNMk14WTJOellXTnpZM05qWTNOalkzTmpZM05qVTJKamMyTmpjMkpqYzJOamMyTnpZbU5UUTJKeVkwSnlZbUp6UTJOelVtTkNjMEppY21ORFVtTmpVbU5qVW1KaWMySnlZMEp5WW5KZ1luSmlZMUppWW5KaVluSmljbUppY21KaWNtSmljbUlpY21CaWNtSmpVMEZqTTJNamN5TmpjMk5qYzJOamMyTWpjeU5qY3pOakkzTmpZM05qWTNNaFkzTWpZek5nSUJGQWtKQVFrQ0JRSU1Cd1FGQWdJQ0FRSUJBUUVDQVFFQ0FRSUJBZ01CQWdFQkFRSURBZ0VCQVFFQkFRUUJBZ0lDQkFFQkFRVUJBUUVEQVFFQkFnWUNCUUlDQWdRQ0FnWUNCUWdGQ2djRUJnSURDQVVLQXdJRUVBSUhEd2dFQndRRkN3UUVBd1FFQ0FRVUpCSU1CZ0lEQ0FVRUJBSUdBZ1FGQWdRRENBVURBZ1lDQWdNQ0JBVUVBUUlCQVFFQ0F3RUNBZ0VDQVFFREFRRURBZ1VHQWdJR0FnSUZBd1VNQkFrUkJ3VUVDQWNFQmdzTERRb1BDUVVLQndJRkF3SUNCQU1MQkFJSkJRWUVBZ0VDQVFFQkFnSUdBUWNDQmdVQ0J3SUJDUUVJQndJR0RBZ0hCZ1FLQWdJR0NnVUhBZ0lGQkFJQ0J3Y0pBZ0lLQmdVTkJRVUtBZ2dGQlFFS0FnY0JBZ01DQkFJQkFnTUlDQlFJQndnRkFnWUNEeE1GQndZREJBa0VBZ1VEQ2dRQ0JBb0VDUk1MQXdZRUJ3Y0ZCQVFHQWdJREFnSUNBUU1DQkFNQ0JBSUJBUUlCQWdJQ0FRRUVBZ0lCQXdJSUJnd0NCUUlGQmdRRENBTUtFd29FQndVSEN3Z1RCZ1FKQlFnSUJRUUdDQThJQWdVQ0FnRUNBd1VCQVFZR0FnSUJBUUVFQVFRQkFnTURBZ0VDQVFVQkFRRUJBUUlCQVFFQkFRRUJCQUlCQVFFQkFRUUhBZ0VDQWdNQ0JBTU9CZ1lIQkFnRUFnWUREZ3NGQmhVS0JBa0VBd2dJQXdVTUNRZ1ZDd1lOQlFVTEJnZ1BDZ2NDQWhNT0NRVU1HZzBFQ0FVRkNBVUVDQVVSQXQ4TUNRWUJDUUlEQWdrR0JRZ0NBZ01LQlFZTkNBZ0REQm9PR2tJZUVDUVRCUXdGQmdzSEN4Y01CUWNGQmdzRkJRNEdDQThKRFJnTkRRd0dCQWNDQndNREJRSURCZ0lFQlFNS0FnSURCZ01EQlFRQ0J3SUZCZ01EQVFJQkFRWUJBUVFCQWdFQ0FRRUNBUUlCQVFFQ0F3VUJBUUVFQWdNREFnVUNCd1VDQlFRTUJ3VUVDQVVGQ0FVTEZBb0NCZ01DQmdNRkNRVUpHUXNFQ0FJREJnTUVCZ01MQXdJRENBUUtEQWNGQ0FVRkNBUUtEd29MQ3dVREFnSUJBUUlDQWdJQ0JRSUNCZ0VCQlFFQkFnY0NDQVlDQ2dNRkJRMEdDZ3NGQ2dVRkN3VUxCUUlMQWdvSkNRRUJDQUVCQmdJQkFnUUNCQUVFQVFFR0NBWURDUkFRREJBSUNnUUNCd0lFQWdRRkNRZ0NDUUVCQWdnQ0JRTUZDQW9MQ2djR0JBSUNCd1VDQkFJYUlCUUpCUU1FQ0FVRENBSUhBd0VDQkFRQkF3TUJCQUlGQndnSEJnWUVBZ01HQXdRSUJRUUZCQXNKQmdVVkNBVUdCQXNaQ2dNRkF3Y0tBd1FIQlJNWUJnVUlCUUVHQWdJREJBVUJBUUVDQVFJQ0F3RUNBUVFEQmdVREJBTUNCZ01JQkFVREFnZ05CUVlOQndRSkJRc0lDeFlNRVNJU0Jnb0ZCUW9GQlFvRkZBc1RDZ2NPQ0FVTEJRWUpCZzRPQ0FVTUJRWUlBd1VEQmdZS0FRRUpBUUVIRGdjSUVnZ0hCd1FKQWdFQkFRY0ZBZ0lCQVFFQkFRRUZCUUVCQWdNQkFRRUJBUU1CQVFFQ0FRRUJBZ01CQVFFQkFRRUNBUUFBQWYvcy93d0RKUUxzQXV3QUFBRUdCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjSEJpSUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dGUlkyTXhZV0Z4WTJNeklXRnhZWEZoWVhGaFlYRmhRWEZoUVhGaFlYRmhjV0ZoY1dGaFVXQmdjR0ZnY0dCZ2NIQmhRSEJnWUhCZ1lIQmdjR0JnY0dCZ2NHQmdjR0J3WVdCd1lHQndZR0ZSUVdGeFlXRnhZV0Z4WUdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4Y1dNaGNXTWhjV0ZqYzJOelkwTnpZMkp5WW1KeVkxSmlZbkppWW5KZ1luQmdZSEZBWVZGQllYRmhZWE5qYzJOamMySmpjeUZCVVVCaFVHRkFjR0JnY0dKaWNtSnlZMEp5WTJOelkyTnpZMk56WTJOelkzTmpZM05oWVhGaFlYRmhZWEZoWVhGaGNVQmdjR0ZBY0dCZ2NHQmdjR0JnY0dCd1lpQndZaklpWW5KaUlqSmlZbkppSW5KaU1tSmljbUppY21JaWNtSmljbU5TWTBKeVltSnlZbUp5WW1KeVkwSnlZbUp5WTBKeVltSnlZMEp5WW1OVFEyTlRRbUp5WTNOalkzTmpZM05pWTNOalkzTmpZM05qWTNOalkzTmlZbkppWW5KaUkxSmlZbkppWW5KaVluSWlZbkJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ2NHQmdjR0JnY0dGaFVVRmhjV0JoVVVGaFVXRmhVVUJoY1VGaFVXRmhjV0Z4WVdGeFlYRnhZV0Z4WVdGeFlpSXdZakJnWUhCZ1lISWlZSElnWUhCZ1lIQmdZSEJnWUhCaUlIQmdZbk5EWTNOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTkRjMk5qYzJORFUySmpjME5EYzBOalUySmpVMk5qYzJOalUySmljME5qMENOQ1kxTmpZMU5pWW5ORFFuSmlZbk5EUW5KaVluSmpRbkppY21KeVltSnlZbUp5WW1OellXTnpNV05oY1dGamN5TXpZMkZ4WTJGd1lHQndZSEJnWUhCZ1lIQmdZSEJnY0dCd1lHQndZV0J3WUdCd1lXQndZR0J4VUhCZ1lIRkJZWEZCWVZCaFlYRmdZWE5qYzJOamMyTnpJMk16WTJOelkyTnpZMk56WTJOelkyTnpZM05qVTJORGMyTmpjMk5qYzJOamMyTmpjMk5EYzJOamMyTmpjMk5qVW1NU1luSmlZbkpnWW5OaFl6RmpZWE1qWXpGamMzTWpZek1oWUM0QVFSQ0FVTUJRWU9DQVFIQlFjRUJBTUdBd0lHQXdvSUJRUUZBZ01FQXdJR0Fna0hCQUVNRWdrSEFnSUZCQW9JQlF3TUNBUU5CUU1IQXdNRkF3TUdBZzRJRHdnRUJnUUlFQWdMRXdzS0FRTVBCZ2dLQXdNQkJRSUhBZ1FGQXdJREFnRUNBUUlCQVFFQkFRTUJBd0VCQVFFREFRTUNCQU1CQWdFQ0FnSURCd1FFQVFJQkFnRUVBZ0lFQ0FRQ0FnSUVBZ0VDQVFFRkJRTUdCZ0VJRGdZRUNBVURCZ01UQ1FjRUNRMElDaWtORFFrR0FRY0hBZ0lCQWdnQ0FnSUZCQU1EQ0FNT0Vna0ZBd0lFREFZSEF3RUNBZ1VDQmdVQkFRSUNCd2dMQ3dVSEF3b0JCZ0VDQWdZQ0F3RUZDZ1FDQmdnSENBY05EUWdDQkFJR0JBSUdCZ01FQVFNQ0JBRUNCQUlDQXdJS0J3TU1CZ1VMQmhrV0JRZ0ZCUWtFQlFnRUJna0ZDUVFPREFjS0F3SURCZ0lDQmdJSUNRRUdBZ0lGQkFJR0JBSUdBUUlHQXdjQ0JnSUNBZ0lDQmdFQ0FRRUJBZ1VFQXdFQkJBRUJBZ01DQWdJREFnRUNBUUlCQVFJQ0FnZ0lCUUlEQVFJSkJRSURCZ01PRmcwTEZnc0pEZ1lJQmdNRUJBSUlCUVVDQmdJSEJRTUVDQVVKQkFVSUFnSUJBUVFFQWdFQkFnRUJBZ0VDQVFFRUFnTUhBd2dXQkFVRkF3Y0RBd2NEQkFvRkNnVUVDUVVGQndVR0RBWUhEQVlOR1EwT0dBd0hEUVlGQ3dVRUJRY0JDUVVEQ0FRQ0FnVUNBZ1VEQWc0RkFnUUNBZ0VCQXdFQkFRUUJBUUlCQVFFQkFRSUNBUWNCQWdJQkFnRURBZ0VCQWdFQkFRSUNBUUlEQndrREJRWUNCUWdGQWdnQ0FnMEdGQkVqRGdnTkNBZ0tFQjRPRHhvTEFnSURDUU1MQlFJTUNBUUtCZ1FKQXdjQkJRSUJBZ0VDQVFJQkFRRUJBUU1CQVFFQkFRRUJBUUVEQWdVR0F3OE1BZ2NERXdrRkJBWUNCUVFKRVFvRkNRVU9EQVlKQ3dVR0JBb0NBd0lGQkFNSUJBWUVBZ1lDQWdVQkFnSURCZ0VDQXdnRUJnRUlBZ01LRmdVREVBVVZLaFFJRlFrSkRob01EZ1lkTWdMb0NRTURBZ1VDQWdVQ0FnSUNCUUVCQVFJQkFRRUNCQVlEQWdFQ0FnWUVBZ1VEQ1FjQ0VSSUlDQU1EQlFjTEJ3VU9EQVlHQ1FVQ0JRSUNCd0lDQlFJSkJBTUhBUU1CQWdNSUFna0RCUTBGQ0E4SEJnTUNCUVlDQndrRUJnb0VDQVVEQmdJRUNRVUZDQVFEQndJUEF3Z0RBd1lDQ2hFSURRNERCd01GQ2djTEdBd0lCQVVKQkFVSEJBVU1Cd3dZQ3dVS0JRY0VBZ0lHQXcwTUJRd0dCQVVKQmdFQ0FnSUdBZ1VEQWdRQ0FnVUZDUWtJQlFJTEZCSUxCUVFIQWdJS0JBRUVBZ0lCQXdNUUNBWUxCUUlOQXdZREJBRUhBZ1VEQ3d3QkNnVUZDZ1FGQ2dRR0JBSUNCZ0lEQWdnRkF3OFhCZ1VMQlFVQ0JBY0dBUVFDQXdRQkFRa0pBZ1lDQ0FVRENSRUlDZ01EQ2dVS0JRSUVCd1FGQ0FJSkRBSUZCUUlCQlFFQkFRRUJBUUVCQmdnSUJRWURBZ0lCQWdjQ0NBRUZBZ0VEQXdFREJRSUtCd1FJQXdJRkN3WUxCd1VNQmdVRUNnWU9HUkVEQndNRUNBVVJFQkVrRVEwRkJBa0hCQVlNQmdVSkJRUUtCUU1HQkFZT0J3NFVDUWdCQlFNQ0NnSUNCQU1DQ0FJREJnVUZDQVFJQWdJRUFRRUlCZ0lDQVFJR0FnTURDQU1IQkFVSEJBVVBDQTRUQ2d3QkFRSUlBd1FIQXdVS0JRUUdCQWNSQ1FrTkJnWUZBZ0lHQWdZQ0FnUUREZ0VCQWdFQkFnRUJBUUlCQVFJQkFnTUJBUUlDQVFFQkJBUUdCZ01IQVFZSEFnVURBZ0lEQWdJREFRY05CZ0lHQkFZY0NRVUxCd2tVQ2hRb0Znc1RDZ1VKQlFRTUJRVUpCUWdRQ3cwUUJna1JDUTBQQXdjRUJRb0ZEeDRPQlFrRkJRY0VCUWtGQXdZRkJBY0VCZ1FKQlFVQ0FnUUpCQUlDQlFZQ0FRRUNBUUVEQVFFQkFnRUJBZ01HQWdVQkF3TUJCd2dEQndZRUNRUVFBd3dFQWdZT0J3TUdBd1FHQkF3S0JBOFhCd3dIQkFrRkNRRUNCd2NFR3pBVEF3Z0NCQUlMREFZQ0JRSUlFd2tFQ1FVTUZBa01DZ1VFQmdnQkJRd0ZCQVVFQWdVQkN3Z0VDUVVEQndVQ0F3VUVDQVlEQlFzRkN3c0JCUU1DQlFNSUNBSUJCQUVDQVFFQkF3RUFBQUFBQWYvMi8rNENVZ0xnQVg4QUFCTVVGQmNXRmhjV0JoY1dCaGNXRkJVV0ZSWVdGeFlXRnhRV0Z4WXlGeFlXRnhZV0Z4WVdGeFlXRnhZMk56SVdOekkyTXpJV016STJNell5TXpZMk56WTJOelkzTmpZM05qWTNOalkzTmpRM05qYzJORGMyTmpjMk5qYzJORGMyTmpjMk5qYzJORGMyTmpjV0JoVVdGaFVVRmhVV0JoY1dGaGNXQmhjV0ZoY1VGaFVVQmhjVUZoY1dGQmNXQmhjV0JnY1VCZ2NHRkFjbUppY21NU1ltSnlZaUp5WW1KeVluSmlZbkpnWW5KaVlIQmdZSEJnWUhCaUlqQmdZakpnWWpCZ1lIQmdZSEJnWW5KalkzTmpZM05qWTNOakkzTmpjMk5qYzJOamMwSmpjME56WTJOelkyTnpRMkp5Y21KalUwTnpZME56WW5OQ1kxTkRZM05pWTNORFkzTmlZbk5pWW5OaVluSnlZbUp5WTBKeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeUluSmlJbkppY21CalUyTmpjV05qTXpOakkzTmhZekZoWTNGaFlYTWpjV05oY1dOak1XTmpNek1qWVhCZ1lIQmdZSEJnWUhCZ1lIQmhRSEJnY0dCZ2NHQmhVR0JnY0dGZ2NHQmdjR0ZoVUdCZ2NHQmdjR0JoY1VCZ2NHRnFjQkFRVUNBd0VCQkFFQ0F3RUJBUUVFQXdFR0F3UUNBUWtJQmdRRkJRa0VBZ2dEQVFnVEN3VUxCUVVIQkFJR0F3UUhCUU1JQkFRSUJRd1ZDUThKQWdjRUFnSURBUUVDQlFJRUFRRUJCUUlDQVFNQ0FnRUNBZ0lDQlFFQkFRRUJDQVVDQVFJQkFRRUJBUUlCQVFFQkFRSUJBZ0lCQWdFQkFnUUJBZ1FCQVFJQ0F3Y0lEUVlMQXdRRUF3Y0VCQVlFQlFvREJ3UUlFQWtaTnhzUkloSUlFUW9GQ0FVRUJnUU1Bd0lLRWdzSkV3c1JKUlFLQ1FRRUNBUURCd1FLQVFFR0JnSUZBZ1FHQVFJQkF3SURBUUVDQVFJQ0FRRUJBUUVDQXdFQkF3RUJBZ0VFQVFFQkFnRUNBUUVCQVFFQkFRRUJBZ01FQWdJREFnSUZBZ01FQWdJSUFnUUdBZzBLQndRRENnTUxCZ0lHQkFrQ0FTd0ZDQVVTRlF3SUVRWURDQVFLQnc4WEN3UUhBUVVNQlJNRUNRTUNCZ01DQ2dZRUNBVUtDQVVKQWdVQ0JnUUNCQUlDQWdFQkFRRUdBZ0lEQVFFREFnSUNBUUlGQWdFQkFnRUJSQVlNQlFrVENBc0NBZ2tFQkFVSEF3VUpBd1VGRVNBT0JBa0ZDd0VJQkFFQ0JBSUNCQUVDQVFFQkFnRUJBUUlCQWdFQkFRRUJCQVlMRFFRSkJRTUhBZ1FJQkFvR0JBb0RCUVlERHhRTEJRY0ZCQWtFQlFnR0JRNElDQk1KQ0JFQ0JRd0ZDQXdJQ2dnRkJ3NEhCQWdGQ1JRSkJ3MEhCUW9GQmdvRkJRc0hCZ3dGQ2d3SERpQU1CUTRGREE0REFRUUNCUUlDQWdJQ0FRSUJBZ0lCQWdFQkFRRUNBZ1VDQXdNQkFRRUJBUU1CQVFFREFnSUJBUUlEQWdrR0FnSUVBZ0lIQkFjQkF3WUNCQU1GRlFzRUJnUUxDd01MQlFNSEF4VThGeGNLRWdvSkN3a1ZDeFFSQXdZQ0JRZ0VDaEVJQlFzRkJSTUZEZ2tGQ0JFRkZ3TUlBd1VJQXdVREFnSUdBd0lFQWdNRkFnSUNBZ1FEQXdnRkFRUUJCZ0VFQkFJQkF3RUJBUUVCQVFFREFRRUJBZ0VEQVFFQkFRSUJBd01DQWdZSUJBSUdBZ3NKQlFnRUFnVUdEQXdHQ3dRQ0RBUUNBZ2NDQ2dZRkNBWURCUTRGQ1JJSkVTUVJFQndNQmd3QUFBQUFBZi9oQUFrRFV3TUNBczBBQUFFV0ZBWUdKd1lHQndZR0J3WUdCd1lpQndZR0J3WUhCZ1lIQmhVR0JnY0dGQWNWRkFZWEZCWVZGQllWRkFZVkZCWVZGaFlIRkJZSEJnWUhCaFlYRmdZWEZoWVhGZ1lYQnhZR0ZSVVVGeFlHRnhZV0Z4WVdNeFlXRnhZV0Z4WXlGeFlXRnhZWEZnWUhCZ1lqQmlZaklnWWpKZ1lIQmlZSEJnWUhJaVlqQmdZaklnWW5KalkzTmpJM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkxTmlZbk5EWTFOalluTkNZbkppWW5KaVluTkRRbkpqWW5KalluSmlZMUpqWTFKaVluTkRZbkppWW5CZ1lIQmdZSEJnWUhCZ1lIQmdjR0J3WUdCd1lXRlFZR0J3WUdCd1lIQmhRSEJoWUhCaFFIQmdZSEJnWUhEZ01WQmdZSEJnWW5KaWNtTkNjbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WTBKeVltSnljbUppY21KaWNtSmljbUppY21KaWNtSmljbUp5WW1OU1ltSnlZbUp5WXhKaVluSmlZbkppY21KaWNtQndZR0J3WVVCeFFHQnhZSEZRWVdCeFFHRlJZR0J3WUdCd1lHQndZVUJ4WVVGeFFHRnhRVUZ4WVVGeFlXRnhZV0Z4WVdGeFlXRlJZWEZoWVhGaFlYRmhZWEZoY1dGaGNYRmdZVkJpSWpJaVlIQmdZSElpWUhJZ1lIQmlJSElnWWpKZ1luSmpZM05qWTNOalkzTmpJM05qYzJOamMySnpZbU5UUTBOelkyTnpZbU5UUTJOU1kyTlRRbU5UWW1KeVltSnpRMk5TWW1OVFltTlNZMk56WTJOelEySnlZbUp5WTJKeVltSnlZbUp5WW5KaVluSmlZbkppWW5KaVluSmdZbk5oWXpNall6TmpNM01qWVhOall6TmpJM01oWXpNalkzTWpJM05qWTNNall6TWhZWE1oWXpGallYTWpZWEJnY0dCZ2NHQndjR0JnY0dCaGNXRmhjV0ZoY1dCaGNXRmhjV0Z4WVdGUllXRnhZV0Z4WVdGeFlYRmhZWEZoWVhGaFlYRmhZWE5qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOamMyTkRjMk5qYzJOamMyTnpZbU56WTJOelkwTnpZME56WTFOalluTkNjbUppY21KaWNtTWpjMk5qYzJOelkyTnpZeU56WTJOemNXTmpNMk5qYzJOamMyTXhZM05qSTNBeWtFQXdVQ0FnWURDUUVDQlFNQ0JnSUJBZ1FFQndjQ0JBSURBUUVCQVFFQ0FRRUJBZ0lCQVFJQkFnSUhBUUVGQVFJQ0FRRUNBZ0lDQVFFQkFnRUdBUUVHQkFJSUFnRUNCZ0lGQ1FRQ0JnTVFEQWNPQ3dFSkJBUUpCUVVKQlFVS0JRb1JCUlFvRkFzU0Nnc1RDZzRiRVFRSkJBSUdCQVFGQXd3TUJ3UUlCQWtDQWd3SEJBY0ZBd1FGQXdJQkFnRURBZ01CQVFFQ0FnSUNBZ0lCQVFJQkFRRUJBUU1DQVFFREFnSUJBUUVCQVFFR0FRVUVBZ0lGQWdRSEJBZ1NBZ01FQmdRQ0JnSUJCQUVHQWdJQ0FnY0ZBUUVEQVFFRUFRSUlBZ01HQlFFREFnRUJBUUVCQkFVR0FRRUJBUVFCQVFJQ0JnTUZDUVlFQXdFSERBWUhEZ1VGQVFFQkFnY0NBd0VGQlFJQ0F3TUNCd01GQlFNQ0F3SURBd01EQkFnRUFnRUNCUVlDQVFJQkFRRUVBZ2NGQ3dVQkFnRUJBUUlCQWdJQkFnRUVBUWtCQWdNQ0F3TUJBUU1DQVFFQkFRUUVBZ2NFQkFJQ0FnSUJCQU1KQ0FvREFnb0dBZ0lJQXdJTEJ3NEhDUVFFRWhRTURpQVJDaE1MQ3hZTUJ3NEhCdzRJQlEwR0JnY0RDZ3NEREJrTEJRa0NBZ0lCQkFRQ0FRRUJBUUVDQVFJQkFRRUJBUUVDQWdFREFnRUNBUUlCQWdFQ0FRRUJBUUVCQVFFQkFnRUJBZ0lCQXdJQ0FnSURCd1VRQ0FJTUJRUUhCQXdDQWdRSUFnSVVDUVVIQkFnRURBZ1FCZ2dRQ0FVSUJRNFVDQVVIQkFjUEJ3c1lEQWNOQ0FVTUJRTUdBd29VQ3dNSEFnVURDUUVDQ0FVVEJBRUNCUU1DQVFVQ0FnRUNCUUVCQ1F3SUFRUUZBUVFFQXdJREFnSUNBZ1VCQWdVREFnUUNBZ1lEQWdNRUF3RUNBUUlCQlFVQ0FnTUNCQU1DQWdJQkFRRUJBZ1FEQVFJSEFnSURBUU1CQkFFQkFRTUNBUUlGQVFZRUJBSUdEQVlHREFnQ0J3d0dCUW9GQnc0RkNnVUtGZ3NQQ2djTENRUUNDQkFJQkFnRkZCME1CZ1lQQndNQ0FRY0dBZ01DQWdJSEFnRURBd0lIQWdJRkFROEhBZ29GQndvREJRTVBJUkVNRFJvTEJRY0ZCUWtGQXdjREJRd0ZFU2NSQmcwRkJnWUdCUTBKQ3hnTEJ3d0lDUllKRUFZSEJCUU5CQWNDQVFRSEFnUUNBZ0lDQkFnQ0FRRUdCQU1FQndnQ0FnSURBUUlCQVFNQkFRRUNBUUVCQWdFRUFnUUZBZ0lFQWdrSEF3SUNBZ01DQVFVRkFnUUZBZ1FEQkFNR0F3TUdBZ2dQQ0FVTEJRb1FDUVlUQ0FzWkRBc1hDd1VMQndnT0N3TVhCd3NWRGdnQ0FnY01CZ2dQQ0JRbkV3RU1CUVFJQlFrVENSTW1Gd01JQ1FnQ0NnVUZDd1VGQ2dVRkNnVVpFQVFHQWdjQ0Fnd0dBd3NWQ2hRekZnUU9EZ3dDQkJBRUJBNEJDUVFGQ0FRRkNBUUlCQVVNQmdzVEN3a0dBdzBnRGhBY0VBd0ZBd0lJQkJNQ0JnTUlDUVVGQ1FVRkNnY01EQVlHRGdZSEF3Y0NBUTRVQ1FJR0Fnd01CQUlMQXdNRkNnZ09BUUVOQ0FrRURSVUxDUUlDQ1FZZUNRSUNDaDBOQXhjRUJSQUlEaEFKQkFrRUF3a0dCZ29HQlFzR0Vnc0ZGQ01SQ1F3R0NRTUNEUVlGQ3dVSUF3SUZBUUlCQkFJREJBSUhCQWtJQVFNQkFRRUJBZ0VCQVFJQkFnRURBUUlCQ3dNQkJRb0ZCUWdIQ0FJTkJ3TUZCZ2tLQXdjREJ3MEdDQUVDREFnRUJBa0RDUVFDQnhJSEVpY05CQWdGQkFjSUNDTUxDUWNEQ0FvSEJ4VUpEUmtNQ0E4SUNSNExCQWNGQkFrQ0JBY0hFZ1FDQVFJQkF3RUNBZ0VDQVFVSUFRRUNBUUVDQWdFQkFRTUNBUUVCQkFFQkFnRUJBZ0lDQVFNR0F3TUNBUVFDRUFvQ0JSRTBGUWdSQ0FRSUJBY0NBaE1jQ3dVS0N3SUJDQk1JQkFnRkF3a0ZDd2NJRFFnRkRRY0lFd2tHQ3dVRENBVUVDUVVORFFjSERRY1FFZ2dGQ0FVRkNBUVVFZ2NHQkFrUkNRd0tBd29CQ3dJQ0JRZ0ZCUWdGQ0FNQ0RBSU9Ed2dGQmd3S0FnWUJBd2tDQVFJQkFnSUJBd0VDQWdNQkFnTUJBUUVEQWdFQ0FRVUJBZ0lDQUFIL3BQL2NBd1FDMkFKWEFBQVRCZ1lIQmhRSEZBY1dGZ2NHRmdjR0JoVTJKamMyTnpZM05qYzJOamMyTmpjMk5qYzJGamMyTmpjMk5qYzJOamNXTmpjMk5qTTJOelkyTnpZMk16WTJNellXRnhZV0Z4WVdGeFlYRmhZWEZoWVhGaklYRmhjV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZWEZoWUhGQVlWQmhZVkJnWUhGUllVRnhZR0ZSUVdCd1lHQndZR0J3WVdCeFFVRnhZVUZ4WVdGeFlXRnhZeU56WTJOelEyTnpZbU56WTJKelFtSnlZMUppWUhCZ1lIQmhRSEJnWVhGamMyTWpjMk5oY0dCZ2NHQmdjR0JpY21JaWNtSWljbU5qVTBKamMyTmpjMk1qYzNOakl6TWpZWE1oWVhGallYRmhZWEZoWVhGZ1lYRmhZSEJnWUhCaFFIQmdZSEJnWUhCZ1lYQmdZSEJnWUhJaVluSmdZbkppWW5KaVluSmlZbkppY21KeVlHSnlZbUp5WW1KeVltTlRRbUp5WW1OU1kyTnpZbU5UWTJOVFFtSnpRbUp6UW1OU1kyTlRRbU5UUW1OU1kyTlNZMk56UTBOelkyTlRZbk5EUW5KalVtTmljbUppY21KeVltSnlZbkppWW5KaVluSmlZbkppWWpKZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCd1lHQndZR0J3WUdCd1lHQndZV0ZSWUdGeFFYRmhRVkZnWVZGaFlYRmhjV0JoY1dGaGNVRmhjVUJoY1VGaFVVQmhVVUJoVUdCaFVVRmhVV0ZCY1dGeFlXQnhZV0Z4WVdGeFlXQnlZaUJ5SWlCd1lHQndZR0J3WUdCeVlHSXdZaUl5WUdCeVlHQndZR0J3WUdKelkzTmpZM05qWTNOalkzTmpZM05qWTNOamMyTmpjMk5EVTBKamMyTkRVMk5UWTJOelFuTkRRbkppWW5KalkxSmpRbk5EUW5KaWNtSmljbUppY21KaWNtSmljbUppY21KaWNtSmljbUppY21JaWMwQmljMkZqYzJNak15RmpNeU5oY3lGamMyRmpmTkJRWUZBUUVFQVFFQkF3RUNBUU1LQVFFSUFna0lCQVFIQWdJRkJnSUNDQVFMQVFFSkJBUURCUU1DQmdFRUJnUUlBUUlJQWdnQkFRb0JBZ2NEQWdRUUFnSUZBd29MQmd3TURRa0dCQWNDQkFrRUNRWU1BZ2dOQ0FFR0FnSUZBZ0lEQWdNR0FnUUVCZ0VDQXdFQ0FRRUJBUUVCQXdFQ0FRTUNCQXNDQVFJQkFnUURCUWNGQWd3RkN5RUxCUWtHQ0FJQkFRRUNCZ0VGQWdjSUJ3c0pBd0lIQWdnRUJRVUhCZ2dEQmd3R0FnTUNCZ3NHQ0FzSUF3Y0NDUUVCQmdRQ0FRRUtCUVFDQVFrRkN3VUZDUVVGQndRRkNBTU5CQU1EQVFFREFRRUJBd0VDQWdFQkFRUURBZ1FCQVFZRkFRb0NBZ3NEQXdJT0JRWU1CUWdNQmdjTUJnUUhCUUlHQ0FJSEF3RUZCQUlDQXdJQkJnRUJBUUlDQXdFQkFRRUNBUUVCQVFFQkFRRUdBUUlCQlFJQkFRRUJBUUVEQndFQkJnSUNDQUlDQndNSkRBa1FDQVVKQlFrS0JRVUhBeGdUQncwSEN3a0ZCQWNHQlFNQ0NBRUJEd01JQkFNSUJRTUpEQVVGQ2dFQkFnRUJBZ0lCQXdJQkF3RURBUU1CQWdFRUFnVUJBUUVDQVFFQkFnRUJBZ1FDQWdZQkJBVURDQTBHQXdJRENBUUJDUk1GQkFrRkNBd0dBd2NGQlFRQ0F3b0NCUWNGQlFrRERoc09DQkFJQ1FvSERBVUVCQU1GQ0FRQ0FRSUVDZ0lDQVFNREFnRUNBZ0lCQndFQkF3RUNCZ0VDQWdFQkFRRUZBZ01DQWdJQkFnSUJBZ1FDQWdJRUJSQUpDUklJQ1JJSkVnOEhDZ0VDRkFnS0dnc1lNUnNPR3c0S0VRa0tCUVVDMUJJT0JnVUlCQWNJQlFZRENCZ0xCUWNGQndFQkNRVUlDZ2NFQkFNQ0JRWUVBd1lEQmdFQkF3RUNBZ01DQWdJRUFRUUNBZ01GQVFRQ0FRSUNBUVFCQVFJQkFnSUVBd0lDQkFVR0FnSUJBZ1FDQmdJSkFRVUtCQVFFQXdJRUJBSUlBd1FIQlFjTkR3Z0ZDUWdFQ2hZTENoSUxFUVVJQlJJbEV4dzRIZ3dOQ0JJb0ZBb1NDUXdKQmdZREFnUUlBd0lEQWdVSUNBNEZCZ3NJQXdjREJoVUlCUWtGQ0FNRkJRSUZCQUlHQXdJTEdBc0JBUVFDQXdvQ0NRVUVEZ1lEQWdFQ0FRRUlBUXdKQlFVSEJRZ1hDQW9CQ2dNQkFRSUJBZ0VDQ0FJSUJ3d0tEQVVEQ2hJSURBSUNCUWtFQ0FjREJnTUJDQVVEQ0FRQkNBUUJBZ0VCQVFFQkF3RUJBUUlEQmdFRUJnVUVDQUVCQndRQ0F3Z0VBZ2dEQmdFRUJBY0NDQklLQlFrRkJBY0ZCQVlFRVJnUkNBNEdDUlVMQXdZRERnc0ZCUTRDRGlBUkF3Y0VCQVVEREF3RkN3UUlCQWdJQkFrSUF3c0NBZ1VEQndzR0N3VUNCUUlHQVFJQkF3TUZBd2dEQmdVREFnVUNCd0lDQmdNQkNnTUlCZ0lIQlFJS0NRVUdEUVVEQndRSkZRa0RDQUlIQXdvQkFRSUtCQklERUEwR0J3MEhEUXNGQkFjRkF3Y0RBd2NEQ1FzSEF3WURCZzhJRGhRSUNnSURCQVFDQ0FJSUNBVUlCZ0VCQVFFQkFnSUJBUUVCQWdJQ0F3RUJBZ0VDQVFFQkJBSUNBd01PQndVR0JRTUlBd1FIQlFJRkF3WUtCUW9FQ0E0TURpRVJCUWNGQ3g4T0NRSUVGZ3NZRlFVSUJBZ1JDUTRkRUFnT0NBa1FDQXdSQmc0R0JBWURDZ0VDQlFjRkF3TURCZ2NFQkFZREJBY0RCQUlGQWdRSEFnRUJBUUVCQWdFQkJBSUFBQUlBSHYvMkF0VUM5QUVuQXFBQUFBRVdOak15RmpNeU5qTTJNaGNXTmhjV0ZoY1dGaGNXRnhZV0Z4WTJGeFkyRnhZV0Z4WVdGeFlXRnhZV0Z4WVVGeFlXRnhZV0Z4WVdGeFFXRnhZV0Z4WVdGeFlXRnhZV0Z4WVhGaGNXQmdjVUZBY0hGQlFIQmdZSEJoWUhCZ1lIQmhZSEJnWUhCZ2NHQmdjR0JnY0dGQWNHQmdjR0JnY0dCd1lHSXdZR0J3WUdCd1lHQndjR0JnY0dCZ2NHSWdjR0JpTW1KaWNtSmljbUlpY21KaWNtTmlNbkppWW5KaVlqSmljbUppY21KaWNtSnlZbkppY21KaWNtSmljbUppY21KaWNtSmljbUppY21KaWNtSmljbUl5WTBKeVltSnlZMkp5WW1OU1ltSnlZbU56UTBOelltTnpZME56WTFOalkxTmpRM05qWTNOalUySmpjMk56WTNOalkzTnpZeE5qYzJORGMyTlRZMk56WTJOelkxTmpZM05qY3lOamMyTmpjMk5ETTJOelkyTnpZMkZ5WW1Cd1lpQndZR0J3WUdCd1lHQndZbUJ3WUdCd2NHRmdjR0JnY0dCd1lHQndZSEJnWVZGQVlIQmdZSEJnWVZGaFlYRmhRWEZoWVhGaFlYRmhZWEZqSVZGaFlYRmhZWEZoWVhGaFlYRmpNWEZoWVhGaFlYRmhZWEZqWVhGaFlYRmhZWEZoY1dGaGNXRmhjV05qTVdOak0yTmpjMk5qYzJGamMyTmpjMk5ETTJOelkyTnpZMk56WTJOelkyTnpZMU5qUTNOalkzTmpZM05pWTNOalEzTmpZM05qUTFOalkzTmlZM05qWTNOaVkxTmlZbkpqWW5KalFuSmpZMUpqUW5KaVluSmpZbkppWW5KaVluSmlZbkppWW5KalVpSmljbUp5WWpKZ1lIQmlJSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmhZWEZoWVhGaFlWRmhZWEZoWVhOalkzTmpZM05qYzJOamMyTmpjMk5pY21KaWNtSnlZR0J3WWlCd1lHRnhZV0Z3WUdKaVluSmlZbkpqWTNOalkzTmpZM05qWTNGaFlYRmpZWEZqTVdGaGNXQmdjR0JnY0dCZ2NHQmdjR0JpTWlKaWNtSmljbU5DY21KaWNtSnlZbU5TWTJOVFFtTlNZM05qUTNOalkzTmpZM05qWTNOakkzSmlZQk1nVUhCUVFIQkFNSEF3VU9CUW9IQkFzTEJRVUtCUWdFQkFZRUJnSUNDZ1FDRUJFSUJBY0RDd0VDQ1FNQ0NnRUlCd1FHRFFjSkNnVUpBZ2NDQWdJR0F3SUVBZ01KQXdNREFnRUNBUUVDQXdFQkF3SUJBUUVCQWdFQkFRRUNCd01JQ2dNSEJRZ0lCQVlCQlFJQ0F3WURCQWdIQVFFT0N3VURCZ1FLQWdFS0Nnc0dBd2dGQ2dzRkNCa1BEdzBHQkFjRkF3Y0RDQTBJQ2dFQ0RBWUNBZ2tCQVFNSURoc05CZ3dHQkFnTUF3UUhBZ1lDQlFVREFnVUNCQVlGQ0FFQ0FnTUNCQUlDQWdVQ0FnTUNBZ0lDQVFJQkFnTURBd0VCQWdNQ0FRWUNBd01CQXdFQ0FRRUJBZ0VDQXdFQkJBSUZBUUVEQWdVRkFnWUdBUWNJQVFFRkNRY0pDUWtGQndNRkJnTUhCQUlLQWdrRkNSSUxDUTkzQ0E0TER5RU9CQWNDQ3hZTUJRUUJCd0lCQXdVRENRZ0JBUVVLQkJBR0JBWUZFUWNCQVFJQkFnRUJBUU1CQkFJREFRSURBZ0lCQWdNTEF3VUNDQWNEQmdnRkJnY0NCUXNFQ0FNS0JnTUNDQWdEQkFZRUJnSUJCUVVFQndZQ0JnUUNDQUlDQmdNTURRa0lCUU1GRUFVTUNnVUlBd0VJQ0FNSUFRMENCQVVEQmdNQkNRWURCZ0lDQndZQkJBRUJBZ1FDQmdFQkJnSURBZ0VCQVFFQkFRRUJBUUlCQVFFQkJBRUJBZ0lHQWdNQkJRSUlCZ1VHQVFFR0FnRUhBUUlDQlFJSkN3VUlCd2NDRGhJVERRNGhEd1FIQkFNR0JBVUlBd1VLQlFNR0F3VURBZ0VCQWdFRkFnWUNCUWdGQXdjRUV3Z0hCQWdFQ3dJRkJ3TURBZ0lCQWdJQkJnSUhCd2dMQmdNR0FnUUNCQUlNQkFJSkNRY0JCUUlCQlFFRUFnSUNDUUlDQlFzSEJRa0ZEQVlDQ0FJRUJRSUlBZ1FGREFZRkJRUVFEQWNHRGdnS0V3VUhCd1VGQVFZREFnY0NBUUlCQXdJQ0F3WUJCUU1CRVJ3UUJ4QUlDaElLQWdrQzhnRUNBZ0lCQWdRQkFRUUJBZ0lFQWdJQ0FnSUNCUUVCQlFFQkNBZ0ZBZ1lDQlFNQ0JnSUNCUUlCQlFnRUJnc0hDQWtGQlFRQ0NRUUNCQXNGQlFrRkJoQUlEd1lJQlE0aUVCY3RGZ3dEQndNSUN3Y0RCZ1FDQmdRREJnTUlFUWtXRXdVSkJRc0lCUVlDQVFRQkFnTUdBZ1FHQmdJSkJ3UUNCQUlEQXdFSEJnVUNBZ0lDQlFFQkFRRUZBZ0VCQVFFQkFnVUNBUUlFQVFNQkFRSUJBZ1FKQmdNSEJBTUVCZ0lFQXdJRkFnUUdBZ01EQWdRSUJBZ0RBZ01KQkFZSUJBVUhDQW9FQ2dVREJRUUZDUVVIQndNTkRBVVJJaElEQndNWUdnc0VCZ0lMQVFrQ0FRUUhCQUlHQXdnRkJ3UUNCZ1FQQWdNR0F3c0xBd1lHQXdJSEF3a0JBZ2NOQmdjQkJ3c0ZBZ1FIQWdRREFnWUNBZ01GQndJQ0FqWURCZ0lDQlFFREFnVUlCQVlCQVFrQkFRSUZBZ2NHQVFFR0N3VVREUW9UQ1Nrc0JRNENDQXdGRFJnTkRSa05EQndJQ0FRQ0JRZ0ZCQWNDQXdjQ0NBRUlCZ01GQ0FNR0FRSURDQU1HQ2dZQkFnZ0ZBZ0lGQVFrQkFRTUdBZ1VFQWdRQ0FnRUJBZ0VCQlFFQkFRSUZBZ01FQWdZQ0FnTUZBZ1VEQmdJQ0JnSUZBZ0VLQkFJTEJBTUtBd1lEQWdVSUJRY01CUWdGQWcwS0JRc0ZBZ01KQkFNSEF3Z1FDQVVIQkEwTUFnb01Cd2dQQ0E4S0JRWUVBZ3NIQWhFTEJ3b0NBZ2tCQVFvRUFnSUlBUWtNQmdrQkJnRUZCUVlDQWdJQkFnRUNBZ0VCQVFJSEF3SUJBZ1VJQ0FvTkNBc2RDQWtEQWdNTEF3SUdBUU1FQXdJRUF3Y0JBZ1FDQlFzR0J3NEdCQWdFREFJQ0JRSUNBZ29LQlFVTUJRb0JBUVFCQndJQkNBNEpCUW9EQ3dNQ0JRVUNBZ1FDQmdFQ0JnWUNBZ3NtRFJRV0JnRUZBZ2dFQWdNR0NnUUZCUVlGQXdJR0JBTUxDQklOQmdVTEJRWUxCUkFMQ1FJQ0JBSUNGQXNGQWdVQkFnSUZBUUFBQXYvZS8rc0NjQUx2QVgwQ0lnQUFFeFlHQndZR0J4UUdCd1lHQndZR0J3WVZCZ1lIQmdZSE5qSTNOalkxTmpZM05qWTNOamMyTmpjMk5qYzJOamMyRmpjMk5qYzJOamNXTmpNeUZqTVdOaGN5TWhjV0ZoY1dGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVVGeFlXRnhZR0Z4WVdGUllXRlJRR0ZSUVdGUlFIQmdZSEJnWUhCaFFIRmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0J3WUdCd1lHQndZR0J3WUdCd1lpSXdZR0p5WW1KeVluSmljbUppY21KaWNtSmljbUp5WW1KeVltSnlZbUp4WVdGeFFXRlJZVUZ4WVdGeFlXRnhZWEZoY1dGaGNXQmdjaUlnY2lCaU1HSmdjR0JnY0dJZ2NHQmdjR0lpTUdCZ2NHQmdjaUJpYzJORGMzTmpZM05qWTNOalkzTmpjMk56WTBOelFtTlNZMk5UUW1KelEySnpZbU5TWW1OU1ltTnpZMk56WTJOelltSnlZMUpqWTFKaVluSmpZbkppYzBOalUwSmpjMk5pY21OVFltSnlZbU5TWW1KeVltSnlZbUp5WUdKeUltSnlZbUp5WVdOekkyTXpZMk56STJNeFkyTnpZMk14WTNOak0yTmhjaUJnY0dKZ2NHQmdjR0JnY0hCaUlIQmdZSEJnWUhCZ2NHQmdjSEJnWUhCZ1lIRkFZVkJoWVZCaklWQmdZVkJoWVZCZ1lIQmhZVkZoWVhGaFlYRmhZWEZoWVhGaGNXRmhjV0ZoY1dGaGNYRmpJWEZoWVhGall6TWhZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qUTFOaWMyTnpZMk56WTJOelltSnpZbU5TWTJKelFtSnlZbUp5WW1KeVltSnlZbkppWW5KaVluSmlZbkppWW5KalVtSmljR0p1WUNBd0lEQmdNREFnSUNBZ01IQXdVQ0F3RURCUUVIQXdFRUNnb05DUWNFQWdZREJnWUNBd1lEQXdZQ0N3UUNBd1lFQ1JJSUNoTUpCQWdGREJjT0Jna0ZBd2NEQ2dNREJRTURCZ0lIQXdFQ0JnTUdEUVVGQXdJRUFnSURCd01IQWdFREFRRUJBUUVCQWdRQ0FRVUJBUUlDQkFJQ0JBRURBUVVDQWdJRUFnUUhCUVlDQWdRQkFnSUZBZ3NLQkFVRkJBd0ZCd2tJQlFRSEN3Y0ZDQVFGQ0FRRkRnY0xFd2dPRWdrSUF3WUVCQWtGQlFZRkJnWUNEQUlJQ1FRSkJRTURCZ01CQmdRQ0FnSUJBd0lCQWdJREJnOFBDQmNIQlFvRkFnY0VBZ2NDQ1E4SUJ3MEhCdzRIREJnT0F3Z0VDQXNJQlEwR0JBZ0VBZ0lJQXdjQ0F3WUNCZzRJQWdVSEFRWUJBUUVDQWdFQkFRRURBUUVCQWdFQkFnRUNBUUVDQ0FJRUFRRUJBUUVCQVFFQ0FRSUJBUUVHQVFNQ0JBRUNBd0lCQWdNQkFRd1FDQW9GQWdRS0JRTUlBd1FOQ0FNR0F4QWtFUU1HQWhJVENBVUxCd2tJQ0FVT0c4QUpGQXNDQndJT0NBUUlFZ2dLQ2dNQ0NBSUNDZ01DRlEwS0ZBZ0lCQU1DQkFJQ0F3RUJBd0lEQXdFQkFRSUJBUUlCQVFJS0J3TUZDUVVDQkFNSkJBVUVBZzBRQ0FNSUJBc0lDUVVFQndRTUVRa0ZDd1VQR3dvRUNBUUdCUUlOQ1FRQ0JRTUVCd0VCQWdFRkFnSUpBZ0lCQWdRQkFRRUNBZ1FCQVFFQ0FRSUJBUUVDQWdJQ0FnVURBUVVCQVFNR0F3Y0NBZ2NLQWdJS0V3THZDQWNDQWcwQ0JBWUVBd2NDQndzSENRRUhCZ01HRGdnR0Fna0ZCUVVSQ0FRREFnUURCQUlDQWdZQ0FnSUNCd0VCQVFJQ0FnSUZBUVVDQWdJQ0FnRURBZ1FDQWdNQ0FnTUVDQUVDQXdjRUNSRUlEQVFDQ0FjREJ3d0hGQmdPQXdjRUF3Z0VCUVVFQncwR0JRc0ZCUWNFQ2d3RkNnUUVCUVFEQ1FJRUNBUU1CUVFGQ3dVR0RRWUlCQU1FQXdJQ0JnSUpEQU1HQXdNSkF3VUZCUUlDQWdRQ0FnRUNBZ01CQVFFQkFnTUlCZ1FEQkFJQ0FnSUNBZ0lFQVFFRkFRY0dBd2dIQXdRRkF4Y3dHQWtEQWdVUENBVUtCUU1JQXdRR0NBSUZCQWNNQkFJQkFRRUNBZ0lEQWdJQ0FnZ0NBUUlCQWdJQkFRTUVDUVFDQ0FNR0FnSURBZ1VPQXdVR0N3RUxEZ2NIRGdZSkVRZ0ZDZ1VGRFFjREZBRUhGQWdJRHdZRUJRTUlBUUlMR2dzWEhnWU5Cd1lMQlFrVUNBZ0RCQWtFQlFrRUVpQVdEZ1VDQ1FRSkFRSURCZ01FQlFJSUF3TUVBUUVEQVFFQkFnMERBUUlEQWdJQkFRSUJBUUlCQWdJQ0FVY0hBZ0VCQVFZRUFnVUdCUVVKQVFjREFnWUNBUklMQ1JJSkNBWUdCUVlGQ0FRRkFnTUZBd3dCRHc0SUJBZ0ZCZ3dGQmc0SUJ3NEZEQWNFQlFnRUFnVUJDQWNEQWdJTUJ3UUNBd0lGQlFFQkF3RUNBZ0VCQWdjR0FnWUNCZ01CREFrRkF3Y0VCQWNDQXdjQ0NnUUZEUVFHQWdJSEFnY05DQVFIQWc4WUR3UUlCUW9TQmdNRkF3MFZDdzRIQ3dRQ0RBWUNBd1FFQ0FVQ0NnRUZCQUVCQlFBQUFBTUFMZjcwQXZZQzhRSEZBcWNDemdBQUpSWVdGeFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGZ1lYRmhZZkFoWVdGeFlXRnhZV056WTJOelkyTnpZMk56WTNOalkzTmpjMk5DY21KZ2NpQmdjR0pnY0dCd1lIQmhVVUZ4WXpGalkzTmpNMkZBY0dCZ2NHQmljbUppY21KaWNtTmpjMkpqYzJOamMyTmpjMk1qYzJOamMyRmpjMkZoY1dOQmNXRmhjV0ZCY1dGaFVVQmhVVUJnY0dCd1lHQndZaUJ3WUdCd1lHQndZR0J3WUdJeUkwQndZbUp5WW1Kd1ltSnlZbkppWW5KaVluSmljbUp5WW1KeVluSmpRbkppWW5KaVluSmlZbklnWUhJaVlqQmdZSEJnWWpJaWNtSnlZbUp5WW1KeVlpSnlZbUp5WW1KeVltSnlZbUp5WW1KeVkyTlNZbkppWW5KaVluSmlZMU5pWTNOQ1luSmpjMk5qYzJOalUyTkRjMk5qYzJOelkyTnpZMk56WTJOelkyTnpZMk56YzJGamMyTnpZM05qWTNOamMyTWpjMk56WTJOelkyTnpZV056WTJOell5TXpZMkZ6SVdGeFlXRnhZeUZ4Y1dGaGMyRmhjV05oY1dGaGNXRnhZV0Z4WVdGeFlXRnhZWEZoUVhGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXRnhZR0ZSUVdGUVlXRlJRR0J4UVVCd1lHQndZR0ZRWVVCd1lIQmhRSEJnWUhCZ1lIQmdZWEJnWUhCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0J3WUdKell5TnpZM05qWTNOamMzTmpZM05qWTNOalkzTmpZMU5pWTNOalkzTmpjMk5qYzJORGMySmpjMk5qYzJOamMwTmpVMU5qWTFOaVkxTmpRbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkpqUW5KaVluSmlZbkppY21KaU1tSWdjbUpnY0dCZ2NHQmdjR0l3WW1Cd1lHQndZaUJ3WUdCd1lHQndZVkJnWUhCZ1lIQmdjR0loVUdCZ2NHRkFjR0ZBY0dCZ2NHQmdjVUJoVVVCZ2NVQmdjR0ZCVUdGaGNHRmhjWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWTNOalkzTmpZM056WTJOelkyTnpZeU56WTJGeFlYRmhZWEZoWVhGaFlYRmhjV0ZoYzJOaWNHQmdjR0JnY0dCZ2NHQmhVR0ZnY1dGaGNXTmpjMk1qYzJNamNtSmljbUpqVW1KaWNtSmdIUkFRUUNCQUVCQWdFQ0FnSUNCQUlDQmdJRUJRUUZBUUVDQ0FVSkNRUUtCUVlKQkFVVENnUUdCUVFJQkFZTEJna0dCd3dGQlFNRUJ3Z2pFUUlKQWdjREFRZ0NDZ1lHQmdnSEJRa0RCZ0VNQWdJQkFnUU9DQUlIQXdnSkJBVUJBUUVCQVFJRUFnRUZBZ1FHQXdVTEJRWU5CZzRUREFvQkN3a0RBUUVCQWdRRkJRWUNDZ1lDQndJQ0JnZ0ZDQU1GQmdvQ0NRRUJDZ0VKRmdvUUNRVUlEQVlNQXdrR0JRVURBd2NDQlFFSEF3TUdBUUlCQ0FJQkF3WUdBd2dGQlFjRUJBWUVCUWtGRUJvTUZoVUlCQWNQQndNRkF3Z0JBZ2tDQWdnTUNBWU9DQWNHQlF3SkJRWUJCUVFDQXdJSEFRRUNCQUVDQVFNQkFnSUJCQUVCQVFFQkFoQUxCd29IQWdJSUFnRUlBUUlEQmdjTUJBWU1CQVlDQ2dFR0NnTUhCQVFHREFjRUJnY0dEQVlIRGdZSUF3SURCZ0lFQndJSERBZ0ZCZ1VJRVFnRUNBTUtCQVlDRGhFS0JBY0NCQWNFQXdnREJnVUNCZ0lIQ1FJRkJ3UUNDZ2NDQWdJQ0JBSUVCUU1DQkFJQ0JBSURDQU1CQXdZQ0F3RURBUUVDQWdVQ0F3SUZBUVlDQkFFRkF3RUZCd1FDQmdFSEJRTUVBd2dDQWdRSUJRTUtCUVFIQlFvRUFnZ1JDZ2tIQlFZRUFnY0VDQUlDRWdvREFnRUlCd2NCQXdFRUJRSURDd1VHQlFJRUFnRURBUUlDQWdNQkFRRUVBZ0VDQVFJQkF3RUNBUUVCQWdFQ0FnTUNCUVFEQWdjRUJBSUJDUW9DQndJQ0NBSUpBZ1VGREFZSUJRY0tDQVVKQWdjS0JRZ1VCZ1FKQlE0RUF3Y0ZBdzRDQlFVQ0JRWUZCQWdGQ2d3SEJBTUlBUWNCQlFJR0FnRURBZ1lDQWdnQ0FnUUJBUUVCQVFFQ0FRRUJBUU1CQXdJQ0FnSUNBZ1lFQWdJRUFRTURBZ2NGQWdNRUF3TUdBd0lDQVFZSUJBRUdDd1VJQmdNUkV3VVFEd01FQWdrSEF3UUZBZ29OQXdjSEF3V1dDQklGQWdFQ0FRUUJBUUVDQWdJSUVnMEtEZ2dFQ0FVS0VBY0NDd1FCQWdVREJ3c1BCQVFJQlFrTEJBWUVCZzRIQnd3SEJ3c0dDaE1LQmdNQkJRc0ZEQWtEQlFRRENBSUNBUUlCQkFJQ0FRSUNCd1FHQlFVVENBY0hDeElKQ2dnQ0FRSUZBUUVFQWd3RkNnSUpDQWdCQ2dNSkFoY0lCQVlDQlFFQkFRSUJBd1FIQ0E4TUJRb0ZCd3dHQndNQkFnRUJBZ0VDQVFFQkFRTUdBUUVLQlFRREJnTUVCd1FGRUFjTEVRY0tBZ2dFQWdZQ0JBY0VCUVFDQXdNQkFRSUNBUUVEQWdRQ0JRRUlBd2dGQ3dnRkJRVUNEd01IQXd3TkJnb0VBd2tGREFzRERCVUtCUXNGQkFFQ0FRSUJBZ1FJQkFFQ0FnSUNBd0VFQVFJQ0FRVUtDQWNMQmdZTUJRd09DQWNEQVE0SUJ3NEhEQW9GQ0E0R0J3SUNGaG9NSEJvTkdBd0lEQWNIRGdnWkt4UU9EUWtHQXdrR0Fnb0hBd1lIQkFnSkFRNERBZ0lJQVFRRUFnRUNCQU1JQWdFRUFnUUNBZ1FDQXdFQkFnTUJBUUVCQWdJQkFnRUNBUUVGQXdFQ0FRY0RBUVFEQVFRQ0FnUUNCZ1FDQlFJSENBTUxCd1FFQWc0TkF3VURBd3NGQlF3RkJRa0hCdzBJQ0JVTENRc1RHUXdLRVFvRENnTUNDUVVKRHdnSUVBZ0lBUUVNQkFJTEFnY0NBUXNCQWdrTEJRTUZCUWtHQkFVRkNBUURCZ29GQkFnRkJBY0RDUVFDQnc0R0JnSUNCQUVCQVR3SEFSSUxDQUVCRFF3SkJ3RUNCUTRGQmdRRkNnTUNCZ3dIQXdZREJRb0hFQWdLRUFnSEJRSUhEUWNGQ2dJTUJ3UVFCUWNGQndzR0R4OFBDdzhIRHc4RkJRWUZCZ0lDRFFnRENBVUNCQU1CQlFRQ0FnY0NBZ0VDQkFFQkF3TUNBUUVDQVFRQ0J3RUNBUUVHQWdRQ0F3a0RBZ0lDQ0FFS0JRTURDQUlKQVFrQkNnSUNCQVVFQ2dnRUN4QUpDeGdMQkFrQ0NRa0ZCUWtGRGhvTERSd0tFQlFKRWdrTkJRWUxCUThIQlFNSUF3Z0VBZzBKQlFFSEFnVVBCUWNCQWdzTEF3SUJCUUlFQVFVQkFnUU5BZ1FDQ0FZRkJRY0VGeFVGQ3dNQ0Jrb0ZCd29DQ1FRRUJnUU1BZ0VHREFVSUJRSUJBUUVCQVFFRUN4VUxDQUVDQ2hFSEFnZ0FBQUwveC84bEF0Y0MzUUlwQXF3QUFDVUdGaGNXRmhjV0ZoY1dCaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGQmNXRmhjV0ZCVVdCd1lXQnhRR0ZRY0dGQWNHQmhVR0JoVVdGaGNVQmhjV0ZCY1dGaGNXRmhjeUZqTTJGak15TmpjMk56WTNOalkzTmlZbkppY21KeVluSmlZbkpnWUhCZ1lYRmhZM05qWTNGZ2NHQmdjR0JnY2lKeVltSnlZbUp5WW1OVFkyTnpZM05qWTNOaFlYRmhZWEZnWVhGaGNXRkJjV0ZoVVdGQmNHRmhVR0JnY0dCZ2NHQmdjR0J3WUdJeUlHSXlZR0p5WW1KeVltSnlZaUp5WW1KeVltSnlZbkppWW5KaVluSmlZM056WTJOelkyTlRZME56WTJOelEyTlRRbU5UUW1KeVkxSmljbUppY21KaWNtSmljbUJpY2lKaU1tSmljbUlpY21KZ2NHRmhjV0JoY1VGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoVUdJZ2NHQmdjR0pnY2lCZ2NHSWdjaUJpTW1CaU1HQmdjR0JpY21OamMyTmpjMk5qYzJOemMyTmpjMk5pYzBKaWNtTnpRMk5UWW1OVFFtSnlZMEp6UW1KelEwSnlZME5UUTJOVFFtTnpRMk56WTJOVFFuSmlZbkpqWW5KaVluSmpZbkpqUW5KalkxSmlZbkpqUW5KaVluSmlZbkppWW5KaVluSmlJbkppWW5KeVkzTmhZWE1oWXpNall6TWpZWE1qWXpNaFlYRmpZWEZqYzJGamMyTmpjV05qTVdGak0yTmpNeUZoY3lOaGN5RmhjV0ZoY1dGaGNXRkJjV0Z4WVhGaFlYRmhZWEZoWUhGaFlWRmhZWEZoWVhGaFlYQmhZSEZoY1dGQmNXRmhVV0JoVUdGZ2NHQmdjVUJnY0dGZ2NHQmdjR0ZBY0dCZ2NHQmdjR0JnY0dCaFVHQmdjR0J3WUdCd1lHQndZaUJ3WUdCd1ltSnhZV0Z4WVdGeFlXTXpNeU5qYzJOamMyTmpjMk5oYzJOamMyTmpjMk5qYzJNalUyTmpjMk5EYzJOamMyTmpjMkpqVTBOQ2NuSmlZbk5pY21OQ2NtSmljbUlqVW1KaWNtSmljbUppY21CaWNtSWljbUlpY21KZ2NHSmdjR0l3WUdCd1lHQndZR0J3WVVCd1lIQmdZVkZBWUhCaFlWQmhZVkZSUVVGeFlHRnhZV0Z4WUJsd0VJQkFRSUJBSUhCQW9CQVFJSUF3Z0JBUWdDQWdVR0JRTURBZ0lDQVFNQkFRRUJBUUlCQWdNQ0FnRURBUUVCQVFFQkFRTURBdzRJQ0JJT0NRRUJCZ2NEQ0JFRUNnc01Bd01NQWdJQkFRRURBUU1FQkFZR0JBOGNDd01GQ1FRR0JBd0ZBZ3NCQmdNQ0NnTURCUVlFREFZREJBUUNCZ0VGQWdnTUF3MEdCZzhJRGhBSUNnRUJDUVVGQWdFREFRRUJBUUVKQXdVV0RBVU5CUVFJQlFjSUNnWURCZzBGQkFjRENSTUxDZ1VDQmdrRkJRb0hCUVVEQ0FNREJnSURCUUVCQVFNRUFRSUNBUUVEQWdJQkFRTUVCQWNGQ0FjSURna0ZEUVVPSEE0Q0JnTU9FZ2dGREFVTEZnd0JBZ0lHQVFNRUFnTUNBZ1FNQlFRRkJRY0pCUWtFQ0FZQ0N4d05FaElKQkFrRkN4ME9CQWNFQ0FRQ0N4VUtDd2NEQWd3RkNRNElDUUVCQ3dnUERRTUNBUUlCQkFJR0F3TUJBd0VDQVFJQ0FRRUJBUU1CQWdFQ0FnSUNBd0lDQVFFQkF3RUNBUUVDQWdNQkFRSUNBUUVDQlFJQ0JnSUZCd1VGQndRRURBWU5Bd0lMRHdFRUNnZ0RCd1VFQ0FVRkRRWUdEUVlNR2cwWU5Sc1dHQTBhRFFnU0NBY0tCUWdOQ1FjUkNBVUtCUXNHQWdJSEJBVUhBd2dIQWdnQkNRWUVCQU1FQWdJREFnSUVBZ01HQWdVQ0FnUUNBZ0lFQVFRQ0NRTUVBUUVDQVFNQkFnRUJBZ0VDQVFNQkFRUUZBZ1VEQndJQ0FnZ0RBZ0lDQWdRSUNBVUdEd0lFQkFnRUF3Y0dCQVFKQkFnUjNRNFRDQThOQndnS0NBMFJJeEFGQ1FVUUNRVUhFUVlDQ0FNQ0FRSUNBd0VEQWdJQ0FnSUNCQUVCQWdNQkFnRUNBZ0lDQWdFQ0FRRUJBd0lEQWdNRkF3TVFCQWNIQnc4UUNBc2JDQXNMQndrUUNRNFpEUWdEQ3dzSUF3RUJBUU1CQVFFSUFRRUJCQUVDQWdFQkFRVUNBZ1lDQWdmM0JBVUNBd1VCQkFRREJRSUJBd1lEQmdNQkF3SUJBd2dGQXdRQ0F3Z0VBd1VEQWdnRER3OEpHdzBFQndRUUNCQUpDQXNMQ1E4R0JRc0dBZ1lERUJNSEJnY0RBZ1FCQVFFQkJRSUlCUWdDQXdnRkJSUUZCd1VIQmdnQ0F3VUNCZ2tHQ1JzR0FRSUJCUUlCQlFJR0F3SUpCQUVDQVFJREJ3d0hCUTRIQkFZRURBa0NDQUVCQWdJQ0JBY0hBZ0VLQndZR0FnTUhCUVFNQlFZTEJBVU1CUWdQQmdJRkFnSUNBZ0lCQVFFQkFRSUJBZ0VDQndFRkNBTUVDd1FFQmdNSUJRY0VBd1VKQ1JRVEpCRURCUU1HRUFnVEl4SURCd01DQmdNSEN3Y0pCZ29JQlFnRkJRc0VCd3NIQWdFQkFRSUNBZ0lCQVFRQ0NCUUtIa01aQWdzQ0JBVUNCQVFEQXdVREJRSUNCZ0VEQ1FFRUJBUUVBUUlCQVFJQ0FnRUJBUUlEQXdNRENBWUZDQTRGQlFJQkJnTUpEU29SQlF3REJBZ0ZGZzRFQlFRRkVBVUpEUWNMRWdzQ0J3TUZDUVVJRUFrQ0JnTUZEQVVFQndRS0F3SUhDQU1FQXd3TUNBVU1CUW9UQ2c4YkRnc0RBZ1VKQlFVS0JBTUZBZ0lEQXdFREFnSUVBUUlDQlFFQkJRY0dBZ0VCQWdFQkFRRUZBUUlHQVFFQkFRSUJBUU1CQWdJQkFRRUJBZ0VDQVFJQkFRSUJCUUVDQmdJQkNBWUlBZ1lCQVFJR0FnSUZCQUVDQkFNREF3Y0ZBZ1VIQXdVRkJRd0tCd2tGQkFjREJRZ0ZCZ3dGQndZRkNRUUNDUU1CQ3d3SURRZ0VDd3NGQ0F3R0F3Y0RBd2NFQlF3R0NBc0NBZ0lFQXdJQ0FRRUNBUUVCUHdNR0FnTUVBZ0lCQXdRQ0F3RUZBZ0lDQndJRkF3SUNCd01EQlFNTUFRa0NBZ1FIQXdvSEF3c0dCQWdXQ3dVV0FoQUhFUVVIQmdZT0JRSUdBd3NCQmd3RkJRc0ZDQUlDQlFFQkFRUUNBUUlGQWdJQkFRSUNCQUlEQ2dRQ0JRTUVDUVFhRVFrVkNnZ1JCUXNEQWd3Z0R4SUZDd1VOQmdFVEdBNEhBQUFBQVFBSi8rTUNBUU1SQW4wQUFBRVdCZ2NHRmdjR0JnY0dCZ2NHRkFjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NpTmljbUpqVW1OQ2MwTkNjbUppY21KaWNtSmljbUppY21OQ2NtTkNjbUp5WW1KeVltSnlZR0p5WW1KeVlpSnlZbUp5WW1Kd1ltSXlZbUp5SW1Cd1lHQndZR0J3WUdCd1lXQndZR0J3WVdGeFlHRlJZR0ZRWVhGaFFYRmhZWEZoUVhGaGNXRnhZV0Z4WVdGeFlXRnhZeUZ4WVdGeFkyRnhZMkZ4WVdGeFlYRmpZWEZoWVhGak1XRmhjV01oY1dGaGNXTmhjV01oY1dGaGNXRmhjV0Z4WVdGUllXRnhZV0ZRWVdGUVlHQndZR0J3WUdCd1lHQndZV0J3WUdCd1lHQndZR0J3WUdCd1lHQndjR0J3WUdCd1lHQndZR0J3WUdCd1lHSndZaUppWW5KaVluSmlZbkppWW5KaUluSmlZbkppWW5KaWNtSWljbUppY21KeVluSmlZbkppWW5KalluSmlZMUpqWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZek5oWXpOaklYRmhjV0ZoY1dGaGNXRmhjV0ZoVVdCd1lVRlFZR0J3WUdCd1lHQndZbUp5WWlKeVlVSnlZMEp6UTJOelkyTnpZV013WUdCd1lHRnhZMk56WTJOelltSnlZbU5TWW1KeVltSXlJSEJ3WUdCd1lHQndZR0J3WUdCd1lHQnhRV0J4UVVGeFlWRmhRWEZoWVhGaFlYRmhZM05qSTNOalkzTmpJM05qWXpOalkzTmpZM056WTNOalkzTmpjMk5qYzBKalUwTmpVMU5EWW5KaVluSmlZMUppSW5KaWNtSmlNbUppY21KaWNtSWljbUppTW1NU1ltSnlZakppY21CaWNtSnlZbUp5WTBKeVltSnlZbUp5Y21KaWNtSmljbUp5WW1KeVltSnlZaU5TWW1KeVkwTlNZbU56WTJOelkzTmpZM05qVTJOelkzTmpZM05qWTNOalkzTmpZM05qWTNOaFkzTmpZek5oWXpNallYTWhjV05oY1dGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVhGalkzTmpZM05qWTNOalkzTmpZM0Fmc0dCUUVDQVFFQkFRTUJCQUlCQWdJQ0FnRUJBUUVDQWdJRUFnUUJBZ1VDQVFFQkFRRUJBUVFDQWdRQ0FnVUNBd0lCQWdJREFnd0dDUVVFQkE0RkJBWUNCUW9GQlFnRUJnd0ZBd2NDQkFVQ0JRMEZEUTRJQ0E0R0Jnd0VCd1VDQlFFQkFnTUJBd0VDQVFFQkFnUUJCQUlCQWdJQ0FnSUdCZ0VDQlFNQ0JRRUlEQWNKQndJRkNBUUdCQUlDQ0FVRUN3WUxDd2NDQWdNSEFnNElBd2NDQlFVQkJRa0VCUU1DQlFZQ0NoSUlEUTBGQndFRUF3SUJBUUVCQVFFQkF3SURBd0lGQ0FVRkF3SUdBUUVJQWdJSkFnRUNCQU1JQXdFRkJBSUpEZ1lPREFZRkNRWUdEZ2dGRXdnTUd3MERDUXNMQWdjSUJRUUlCUWdGQWdjRkFnSUZBd01GQWdRR0JRSUJDQUVDQkFJREFnSUVBd1VDQVFZQ0FnTURBZ1FEQWdNQ0F3Z0NCQWdFQkFjRkF3a0RBd1lFQndjSUR3a0RBZ2NEQmhBRkRRSUpCZ0lHQWdJSEFRSUJBZ0lDQXdjREJRTUdCQUVHQXdRWUF3b0NBZ2dCQ1FFQkFnSUdCUTBMQ1FJSEJRVUxBaElNQ2dVSkJBVUVCQVFGQXdrRUF3a0ZCUWNLQ0FFQ0RRY0VCQWNFQndRQ0FRUUJBUUVEQXdZQ0JBZ0ZDUXNIQ1JFT0NCWUlCUXNIQkFrR0J3OEpCZzRHQXdjRERCSUxBZ1FDQmdJQ0JnRURBUVFCQVFVREJBTUhBd0VLQVFzQ0Fnd0xCZzRHQlFVSUFnb0RBZ3dKRFFjS0Jnb0ZCUWdFREFnRUJ3UU1BZ01GQlFRSUFna0xBd1VEQndJREFnSUJBZ0lDQWdNQkJRVUNBUUVCQWdJRUFnVURBZ1FDQlFJREJnc0dBd0lHQlFJSUFnTUZDUVFMQ3djS0RBWUVCd1VGQ1FVRkJ3UUdDQVFJQXc0RkJRMEZDd29DQnd3SEJRUUVCZ1lFQXdzUEdRWUpDZ1lEQ3dVQ0JBTUhBZ01ERVFJTUJRY1BCdzBjRFFZTEJnVU1CUW9VQ3dVTUJnVUtCUW9VQ3dzRkFRa0ZCQVlFQkFjRUF3Y0RCQWNGQlFzRkF3WUVDZ0lDQlFnRUJBVUNEQVFJQWdJQ0JRSUVBUUVDQlFFQ0FRSURBZ0lEQVFFQ0FRSUJBd0lCQ0FVSEJ3UUtDZ1lJQkFJRUJnSVBDQVVGQ0FVSUFnSU1EeEFMQkFNRUF3TUdBZ1VJQmdNRENRUUNCUVVDQ0FVSUFnUUJBUVFDQWdFQkFRRUNBZ0VEQXdFQkFRRUNCQUVCQVFNQkFRRUNCUUVCQlFFRkJ3WUtFUWdNQWdvQ0FnUUxCUWdRQ3dnQ0FnVU5CZ3dHQlFzV0NBY0RBZ29FQWdvR0Fnb0JBUUlKQXdjQkFRWUNBZ2NIQlFjRkFnSUZBZ1FGQXdJRkFRSUVBZ0VDQWdFRUFRSUNBd0lGQVFFSUFnSUdBZ0lCQXdFSUJ3SUhCQUlGQndZRUF3Z0RCd0VDQndRQ0JnUUNDeFFJQkFjRUJ3OElCQWNGQkFvRUFnUURBd1FEQlFRQ0F3VUJBUUVDQ1FRTEJ3UUhCd0lJQ1FRRUJnTVREZ29GQWdzRkJRTUZCQUVHQVFJQkFRVUJCd0VCQ0FrRUJRVUZBd29DQmdZSEJnTUVCQWdLQXdRQ0F3SVJHQTRPQmdVRUF3SUVCUVVGQkFJQkNBb0VBd29FQkFZRUFnZ0VBZ2dFQ0FrSkNRUUZCUUlIQndRSkR3VUdCZ0lDQWdFRUFnSUNBZ1FFQkFRQ0FnSUdDeGNGQ0FVTEJnUUpCUVVKQmdRSkJSSU1FUXNJRUFnR0FRSUxBUVlGQWdJRkJBSURBUUlFQVFNQ0F3UUJBZ01FQVFJQkFnWUNBZ1lDQkFFQkFnUUNBd2NGQ0FnRkFnZ01CZ1VGQWdrREF3a0VDZ0VOQ2dVRUNBUUhDUWNHRFFjU0JnVUpCUWdDQ0FZTERBWURBZ2dEQXdnQ0FnUUtBZ01HQWdNQkFRRURBUUVDQVFJQkFRRUZBUUlGQWdVQ0FRTUhCQUlEQWdNREFnUUJBd0VDQXd3RUNBb0ZBd1VEQndVQkFBQUFBZi9ELy9VQ09nTU9BV2dBQUFFV0J3WVdCeFFIQmhVR0ZoVUdCZ2NHQmdjR0ZCVUdGZ2NVQmdjR0JoVVVGZ2NtTkRVMEppY21OQ2NtSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUl5SUdCd1lHQndZR0J3WVVCd1lHQnhRVUJ4WUdGUllIRkFZSEJnWUhCZ1lIRkFZSEJoUUhCZ1lIQmdjR0ZCY1VGeFlHRnhZV0Z4WVVGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WXlGd1lpQndZR0J3WUhJZ2NHQmdjR0JnY0dCZ2NHQmljME5qYzJOamMyTmpjMk56WTNOamMyTmpVMk5UUTJOVFltTnpZMk55WW1KeVkyTlNjbUpqVW1OalVtSmljbU5pY21KaWNtSmljbUppY21OaWNtQmdjaUppY2lCZ2NqQmdZbkJnY0dCZ2NHQmdjSEJnWUhCZ1lIQmhVR0JnY21OalVtSmpVbU5pY21KaWNtSmljbUppY21KalVtTmljbUppYzJKak1tSmljMkpqY3lGeFlXRnhZWEZoWVhGakVXRmhjV01oY1dOaGMyRmpNeU5oYzJOak0yRmpNek5oWTNOakkzTWhZek5qTXlNamN5TmpNMkZoY3lNaGNXTnpZMk56WTJOelkzTmpZQ09BSUNBd0VCQWdJQkFRRUNBUUVEQVFFREFRRUNBUUVDQVFrRkJBSUJBUUlEQkFRQ0F3SUJBZ0lCQmdjRkJRUU1DQkFKQlFjRUJ4QUhDQXdHQWdJQ0FRRUJBUUVDQXdFQkFRTUJBZ0lCQVFFQkJBSUJBZ0VEQVFRQ0FnRUJBZ0VCQVFJQkFRRUJCQUVDQXdNQ0FRTUZFUWtJSEE0TUNBRUZCUUlJRHdrU0Z3VUtCd3dIRWlvVURCY0xDeFVNQ2dVTUN3WUxGQXNHQkFRQ0NnSUNBUUlDQVFFQkFnUUNBZ0VDQXdJREFRRUJBUUVCQVFFQkFRRUVBZ0lEQkFNQkF3Y0JCQWNRQ0FnT0NBc1VDUXNNQ1FJSUJ3d0hBd2dMQXdnR0JnUUNBZ0lGQVFJRkJRRUJCQUVEQWdFQ0FRUUVCUUlDQWdNQ0FRRUJBUUlCQVFRQkFRRUNDUVVEQ2dRRkNBVUtCQWtIQkE0Q0JBTUNCZ01PRHdjSkFnSURCd01GQ2dVRkRBY3FEaHNQQ3hvTUJBWUVDZ1VPSGc0R0N3WUlFZ29MRndrT0VBa0ZBd01IQWdZRkFnUUM4UVVKQmdRQ0JBZ0lCUVlNQmdjT0J3Y01Cd1lMQlJJWEN3Z1JDQWdTQ0FrWEJRRUxBZ1lOQ0FVS0JRY0lEZzRHQ3dVQ0N3WUNEaGNLQ3dnRkF3RUNBUU1CQVFJRUFnVUxCUVVIQlFnUEJnVU1CUVVJQlFzS0NSSUlDUkVKQmdVRkRCME5CdzBJQlE0SEZCRUxHQTBLQlJBYkRBVUpCUVVMQlFNR0F3WU1CUVVNQlFnSUJBVUdBUVlGQndFQ0FRSUJCUUlCQVFJRkJ3TUNCQU1DQndJSEJ3TUlDUU1MRkFzRUF3WUVFQXNLRVE0S0RRWUZCQVFHQXdVSEJBVUxCZ3NKQlJVRkN3VUtFUWdKRXdrSUdRZ1RKQlFQSGc0SkRRWVZIeEFDQkFFQ0FRTUJBd01GQ0FJSEJRVU5EZ2NPRUJrTUF3Z0VDUVFFQ1FFQ0NnVUZCd1FIRFFjREJ3UVNLQklJRGdjTEFnSUVCd1VEQ0FNSkF3c2RFZ01GQVFnQ0J3TUdBZ1VFQWdnQ0F3SUJBUVVCQVFFQ0FnTUJBUUVCQVFFQkFRRUNBZ0VEQVFFQkFnUUdBd01DQVFFQkF3VUNCd0FBQUFBQi84Ny80Z0tuQXdNQjRnQUFFeFlHQndZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lWQmdZVkJoUUhGQVlIQmdZSEJnWVZCaFVHRmhVR0JnY0dGaGNXRkJVR0ZoVVVCaFVVRmhjV0JoY1dGaFVXQmhVVUZoY1VCaGNVRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV01oY1dGaGNXRmpjMk5qY3lOak15TmpNMk5qYzJOamMySmpjMkpqYzJKamMySmpVbUpqVTJKalUwTmljMEppYzJKalUwTmpVMEpqVTBOaWNtTlNZbUp5WTJOVFFtSnpRbU5TWTJOVFFtSnlZbkppWW5KaUluSmlZbkppWW5KaVluTmpJM01qWXpNell5TnpJMk56WVdNeFkyTXpZMk56WVdOelkyTnhZMkZ4WTJGd1lHQndZSEJnWUhCaUlIQmdjR0J3WUdCeFlVRnhZV0J4WVdGeFlHRnhRV0Z4WVZGaFlWRkFZWEZoWVZGQVlWQmhZSEJoY1hGaFlWRkJZVkZoUVhGZ1lWRkFZVkJoWVZCZ1lIRkFZSEJoUUhCZ2NHQmdjR0JnY0dCd1lIQmdZSEJnWUhCaUlIQmdZSEJnWUhCZ1luSmlZbkppWW5KaWNtSmljbUppY21KaWNtSnlZbUp5WW1KeVltSnlZbkppYzJKaWNtTmpVbU5EYzBOalUyTkRVMk5qVW1OalUySmpjMkppY21KalVtTmpVMEppY21KaWMwSnlZMkp5WW1OU1kyTlNZbU5UUW1OU1kySnlZMkp5WW1KelltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVl5TXpJMk56WTJOelkyTnpJMk16WVdOelkyTnpZMk16WXlOellVTnpZMitBRU5Cd01HQ1FRREJBc0ZDUVFDQWdzQ0JBTUVBZ0VCQVFFQkFRRUNBZ0lCQVFJREFRSURBUUVCQVFFREFRRUJBUUVDQVFJQ0FRRUJBZ0VDQXdVRUJ3VUZBZ0VHRVFrRUJRSUpCQUlEREFVSENnY01HdzRJREFjRER3WUdDQVVMRlFzTEVnZ0dBd0lEQVFFQkFRRUJBZ0VDQVFFQ0FRTUJBUU1EQXdNREJBTUVBZ0VCQVFFQ0FRSUNBZ01IQXdjQ0FnY0NDQkVJQkFnRkJRNENDUkVMQXdVRERRSUdBd1VMQlFzV0NnZ0JBaEVlRFFVTEJRc1REUWtPQndzS0JRSUlBdzBDQ3hFSUNRVUNGQWtMQ0FnREJRTUJBUUVCQVFRQ0FnRUJBUUVDQWdJRUFRRUNBUUVDQVFJREFnTUNBZ0VCQWdFQkFRSUJBUUVCQVFJQ0FnRUNBd01DQVFJRkNBWUtBd3NGQlFnREF3WURGaWNURFJrTUVoOFZCZzRJQndzR0VBTUNDZ01OQ2dVRkJ3UUtBd0VDQWdJREF3UUVBUWNEQkFVQkJnSUNBUUVDQWdFQkF3RUNBUUVCQVFFQkFRRUJBZ1FDQWdFQkFRTUJBUUlGQVFFQkF3TUNBZ01EQWdJQ0NBVUJCQVFEQndNREN3VUhDQVVEQmdRQ0JBSUZDZ01GQ2dRS0ZBc0tFd2tGQ1FVRkNBVUtFZ29LQmdJRkNRVUxBaE1mQXdNSUNnVUVCZ1VEQWdRSEJBVUZBZ0lHQXdvQ0Fna0RBUU1JQWdNRkF3VUxCZ3NDQWdvRUF3WUVCZ3dHQ3hZTEN4a0xEd2NFQXdZRUJnNEhDUk1MQ1JNS0JRb0ZCZ3dJQlFnSEN3NEhEQlFLQ0E4SUJ3VUNDQThJQWdZQkJBSUNBUUlDQXdFQkFRSUJBZ0lEQVFJQ0FnTUVCQXNTRGdvREFnc2RDdzBZREE4Y0N3NGVFUUlJQWdVS0JnY0tBd1VJQkFVSkJRZ01Cd29IQ3hvTkNBUUNEUWNGREFNQ0F3Y0RCUmtJQ1FjRkNBSUNBZ2tJQWdJQ0FnSURDQU1DQWdFQkF3RUNBUUVDQWdVQ0FRRUJBUU1CQVFRQ0F3TUNCUVVDQkFFSENBVUlBZ3dKQ0FzTENnUUpFZ29JRFFnU0Vnb0lFQWdGQ2dVS0JRa1NDZ3NYREFRR0JBUUhCUWdVQ2dvSUN3WUNBZ2tCQVFRSEJSRXJFZ01IQkFNR0F3Z0xDQWtCQWdNS0JBZ0RDQWNGQkFZQ0J3WUlDQUlJQWdJRkFnRUJDQVVEQWdJQ0Fna0NBUUlDQVFNQ0JRSUNCQUlNRHdZRkJRUU5BZ0lHQWdNR0F3Z0RBUTRGQ2dZSUN3Y0ZDUVVKR3c0RUJ3VUZCd1FDQndNRkJBSUlFUWtJQ3dVRUJnUUNCZ01MRWdrTEV3b0tCQW9JQlFZTkJnVUxCUWdRQ0F3TEJRc1dDd3NJQkFRQ0FnUUdBZ0lDQXdRR0JBWURBZ0lHQXdJRkFnb0JBUUVCQVFJQkFRSUJBUUVDQkFJQ0FnRUJBd0VCQkFFQUFBQUFBZitOLytvQzZnTDFBZjBBQUJNV0JnY0dCd1lHQndZR0J3WUdCd1lpQndZR0J4UVdGUllXRnhZV0ZSWVVGeFlXRnhZV0Z4WVhGaFFYRmhZWEZoWVhGZ1lYRmhZWEJoWVZGaFlYRmhZWEZoWVhGaFlYRmhZWEZoY1dGaGNXRmhjV0ZoY1dGaGMyTmpjMk5qYzJOamMyTmpjMk56WTJOeVkyTnpZMk56WW1OelkzTmlZM05qWTNOalkzTmpjMk5qYzJOamMyTmpjMk5qVTJOamMyTnpZMk56WTJOelkxTmpVMk5qYzJORGMyTmpjMk5UWTJOelkwTnpZMkp5WW1KeVltSnlZbkppWW5CaVluSmlZbkpqWTNGalkzTmhZek5qTVdOak1XRnpZV056WVdNeFkyTXhZMk16SVdOekkyTXhZMk16WXpNaFl6TWpZek1qWTNNeFl5RnhZaUJ3WUdCd1lIQmdZSEJpSUhCZ1lIQmdjR0JnY0dCZ2NHQmdjR0ZBY0dCZ2NHSWdjR0J3WUdCd1lHQndjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCd1lHQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCaFFIQmdZSEJnWUhCZ1lIQmhRSEJnWUhCZ1lIQmdjbUppY21KaWNtTkNjbUppY21KaWNtSmljbUppY21KaWNtSmljbUppY21KaWNtSmljbUppY25KaVluSmpZbkpqUW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KaWNtSmljbUppY21KeVltSnlZbUp5WWpKZ1luSmlZbkppWW5KalkzTmpZWEZoWVhOakkzTmpZek5oWXpOalkzRmpZM01qWXpGall6TmhZek56SXlOL0lDQ1FNSUNBc1lDd2NIQWdvRkF3Z0NBUVlGQVFFQkFRSUJBUUVCQVFNQ0FRRUJBd0lDQXdFREFnRURBUUVCQVFFREFRRUNBZ0lCQVFFQ0FnZ0pBZ1lEQlFJQ0JnSUNBd0lEQmdNSEFRUUJBZ0lHQXdJQkF3SURCQVFCQXdJQkJBUUlCUUVFQWdZQkFnVUJBUUlFQndFQkJ3SUJBd0lCQlFVQ0F3SUNCQUlDQWdJQ0F3UUlBd3NDQXdJQkJBTUNCQVVDQXdJRUFRVUJBZ1FDQXdFQ0FRSUVBUUVEQVFNSEF3WUVBZ1lDQndzR0JRa0ZDUWdDQ3hNSkRBTUJFQVVDQndJSkJRVUpCd1FKQkFNTkJRNExCUVlQQ1FJR0F3Y0dBd1FJQlFrRkJRc0ZBZ1lFRXdRSEFnSUlBUU1JQkEwQ0JRWUNDQUVCQXdZRkNBVUhBd0lMQlFVSkNBUUdBUUlGQWdNREFRWUJCdzBHQmdnRkJnSUJBZ2NJQWdRSUJRWUNBZ0lGQWdRQkFRSUJBZ01FQXdVREJRd0ZBZ0VDQXdRQ0JRUUZCd1VDQWdJQ0FnSUVDUVFDQkFJQ0F3RURCUVFGQVFNR0FnWUNBZ1FJQlFVQkJnUUNBZ0VDQXdjRUF3SUNCQUlDQVFFREFRSURBZ1FKQlFVREFnTURBUVVHQkFRSUJBRUNBUVVCQWdRRUJRb0NBUUVDQVFJRUFRUURBUVFCQWdRQ0FnY0hBd0VDQXdFQkFRSUZBZ01CQWdVQ0FRUUJBZ2NDQ0E0SUNBUUtCQUlDQndJSUJRY0NBZ1VGQWdrQ0FnVUtCQThLQndnTkJoQWVDZ2dPQ0FVSkJRVUhCQWtOQndVTEJRZ0JBZzhVQ0JVSURnY0M5UVVFQWdVREJRd0hCUUVCQ0FRQ0JRRUxEQVFEQlFNS0VBZ0RCUU1EQndJRkN3WUZEQVVNQ3dVSkJBa1VDUU1HQWdRSkJBVUtCd2NDQWdnV0Nna1BDQmd0RVFVSUJRZ0ZBd1lFQkFrRkJnc0hEZ2tFQlFnRkJBMEdBd1lEQmd3R0F3WUNCd2NMQ2dVRUJnSU1Cd0lGQXdJRUJnc0NBZ29CQVFzRUFnb0RCQWNFQXdZRUF3a0VBd3dJQlFrSEN3TUtBZ0lMQlFVS0JBb0dCUTBGQ2dRQ0RCRUpEZ2NGQ2dVREJnSUZEZ29FQ2dNTEJnUUhBZ0lDQXdFSEFnSUJBZ29EQkFJQ0FRRUJCQUlDQWdNQ0JRRUNBZ0lFQkFRQ0FnRUJBZ0VDQVFJQkFRUUdBd0lEQWdVQkFnUUNCZ0VDQWdJRUJRUUNBUVlIQXdnS0JRVURBZ0lFQWdnQ0NnSUxGUXNNRGdjTEF3WURDd3NGQmcwSEN3UUNBd2dFQ0FFQ0F3WUVCUVlGREFZTEZ3d0VCZ01FQ0FVSUNnZ1BDZ0lIQXdNR0F3Z1JDZ1lNQmdNRkJBWUxCZ2NDQWdZTUJnd0lBd2tTQndjREFna0lCUU1IQWdNRUJBa0ZCQWdGQlFzRkJRb0ZDQThJQ1JVSkRBWUVDUWNDQ0JJSkNSRUpCQVlFQ1FVREN4MEtIZ01IQWdRSUF3Y0RBZ2tJQlE0SkJRWUhCUkFTQ0FNSkFnSUhBZ1VHQlFrTUJnc0tCQWdEQlF3SEZBd0lCZ1FGQlFJQ0FRSUVCUUVCQlFVQ0JnTUNDd0lCQWdFQkFRTUJBUUlCQXdFQkFRRUJBUVVDQVFFQkF3RURBZ0FCLzRuL3pBUHVBdjhDL0FBQUFSUUdCd1l4QmhRakJpSUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWVZCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhGZ1lIQmhRSEJnWUhCZ1lIQmhZSEJoWUhCZ1lIQmdZSEJnWUhCZ1lIQmhVR0JnY0dCZ2NHQndZR0J3WUdCd1lIQmdjR0ZBY0dCZ2NVQmhVR0ZBY0dCaWNtSnpRMEp5WTBKeVltSnlZbUp5WW1KeVltTlNZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbkpqUW5KaVluSmlZbkpqUW5KalluSmljbUppY0dCd1lHQndZR0J3WUdCd1lIQmdZSEJnWUhCZ1lIQmhRSEJoUVZCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHRkFjR0JnY0dKaFVIQmdZSEJnWUhCZ1lIQmdZSEJqRUdCZ2NHQmdjR0ppY21KamNtSmljbUpqY21KaWMwSmljbUppY21KaWNtTkNjbUpqVTJKalVtSmljbUppY21KaWNtSnlZbUp5WW1KeVltSnlZbUp5WW1KeVkySnlZbUp5WW1KeVkwSnlZMEp5WW1KeVltSnlZbUp5WW1KeVltSnlZaUp5WWlKeVkwSnlZbUp5WW1OellXTnpjMk56WVdNeFlXRnpJM05qWXpGall6TmpZM01oWTNOaFl6TmpZek1oWTNNall6TWpZek1qWVhGaFl6TWpZWEZnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnY1dGaGNXQmhVV0Z4WVdGeFlYRmhZWEZoWVhGaGNXRnhZV0Z4WVhGaFFYRmhRWEZoWVhGaFFYRmhZWEZoWVhGaGNXRkJjV0ZSWVdGelkyTnpZMk56WTJOelkyTnpZMk56WTNOalkzTmpZM05qWTNOaVkzTmpZM05oVTJOamMyTmpjMk5qYzJOelkyTnpZMk55WTJOeVkyTnpjMkpqYzJKamMyTnpZMk56WTJOelkyTnpZMk56WTJOeVkyTnpZMk56WTJGeFlHQnhZSEZoWVhGaGNXRnhZV0Z4WVdGeGNXRmhjV0ZCY1dGaGNXRnhZR0Z4WVdGeFlXRnhZV0Z4WVdGeFlVRnhZV0Z4WVdGeFlXRnhZMk56WTJOelkyTlRZM05qYzJOamMyTnpjMk5qYzJKamMyTmpjbU5qYzJKamMyTmpjMk5EYzJKamMyTkRjMk5qYzJORGMyTmpjMk5qYzJOamMyTmljbUppY21KeVlpSnlZbkppWW5KaVluSmlJM05oWTNGalkzRmpZek1oWXpOaFkzTmhZek1oWXpGamN5TmhjMk5oY1dOak15RmpNMk5oWVdGeFkyRnpZV0ErNFRCd3NJQWdNR0JBUUdCUW9YQ3dnT0J3Z05DQU1GQXdNSkJnTUNCQUVDQkFFQkJnc0RCUUlFQkFRRkFRVUNBZ0lCQVFFRkFRSURBUUVGQVFFQ0J3SURDQVVCQVFFQkF3RUNBZ1VEQmdNQ0FRTUZCd0lDQVFJQ0FnSUJBZ0lFQkFNQ0FRSUdGZ1FHQXdJRUFRSUNBZ0lGQXdFQ0F3RUNBUUVCQWdJQ0JBSUNCUXNJQWdRQ0FnUURCQUlCQVFFRUFnSUNBZ1FDQVFFQkFnSUNCUVVDQkFZTkJnSUJBZ01FQWdFRkFnTUNBZ1VCQWdFQ0JBSUhCQUVDQVFRQ0FnRUNBUVFDQXdVREFnSUNBd0lCQWdVRUFnUUNBZ0VFQWdFQ0FRTUNCZ0VDQWdJQ0FnRUhBZ0lDQXdRQ0FnRUNBUVFKRndnQ0JRRUNBd0lGQkFJRkFRSUNBUUVCQVFJSEJBRUJBZ0lCQXdJRUF3RUNBZ0lEQWdNQkFRTUNBZ0lDQVFJQ0FRRUJBUUlCQXdJQkFRSUJBZ0VDQkFJSEFRd0hCZ1VEQlFrQkFRWURBZ1VLQlFZQ0FnMElCQWtCQ0FnRUJ3UUJCQW9ISHdzSUJBb0dBd2NEQmdvTEV3b0tEUWNJRFFjRUNBTUtCQUlFQ0FRRkNBVUZDQVVGREFRR0JBVU9DQVFGQ0FVQ0NBTUlFZ2tNRWdnTUNnVU1EUVlGQndVRkJnTUJBZ01CQVFRQ0FnSURBUUlEQWdJREFnUUNBd0lDQVFJRUFRRUZCZ0VDQXdFQkFRRUZBZ0lCQWdRQ0FnRUZCd0VDQlFRQ0JBTUVBUUlCQWdVREFnTUNBZ1VDQXdJRENRTURCQU1GQWdFRkF3VUVBZ0VDQWdRQ0FnRUNCQVFGQVFJREFnSUJCUUlCQkFJREJRRUJCUUVCQVFRREJ3SURBUUlDQXdJQ0FRSUJBUVFDQmdJRUJ3VUhBZ01FQVFJSEFRWUNBZ0lEQVFVQ0JnTUNBZ0lEQVFFQkFRRUJBd0VDQWdFQkFRRUVBZ01HQkFJRUFnSUJBUUlDQWdNQ0FnVUNCQUlEQ1FVQ0FnTUNBUVFDQWdJQ0J3RUNCUUVHQlFVREJBRUNCUVFFQVFJQkFnSUJBUUlCQVFFRUFRRUJBUUlEQWdFQ0JRUUNCZ1FDQVFFQ0FRRUJBZ1lEQ1FFRENBTUVDQWNOQndZT0NBc0tBUUlHQkFNSUFna0NBUVFIQXdVT0JnZ1BDd29JQlFnRUNROEhGeHNRREFVQ0NBOEdEaFlYRlFnRkJ3UUNDUUw2Q2djREJRTURBUUVDQWdJRkNBVUZCZ1FFQmdJR0N3Y0ZFUW9GRGdjRkJRSUtBZ0VOR2hBRURRWUhFZ2dGQmdVREJRTURCQVFLQ1FRSEFnSUZBd0lGRHdjTEZnc0RCUU1DQlFNSUJ3c1ZDdzROQlFrR0ZCc09DQThJQ0FVSUJRWUxCaE1XQ2djQkF3VUtCUVFHQ2dRREJnMEhEQWdGQ1JNS0RoWU5Cd29IQXdZREN3TUNCd3dIRUJBSUZDVVRCUWNGQ0JRSkNSSUZDQVFLRVFnSkV3a0xCd0lDQmdRR0JRZ1FCd0lJRFJ3UEFnWURCZ3dLQlFnRUNBVUZDQVVGQ0FVSUNBTUxDQU1DQ1FRREJRUUVDQVVFQ0FNSUR3Z0ZCZ1FMQWdJR0RnWUVCZ2tEQWcwR0FnTUdBd2tCQWd3R0JRUUNCd0lJRFFjSERBWUxDZ2NEQnc4SEFnRUNBZ2NDQ0JFSURBMEdDeGdNQlFvSEJ3a0VFUjRRQkFnRkJBVUdBd1lFRENFUUJ3OEpDQlFMQ2drR0R3Z0pFd3NGQ0FVRkNRWUZDd1VMQmdNQ0JRUUlHZ2tLQlFJSkFnRUpBUUVFQ2dRRUFnRURBd0lEQkFNRUFnY0NCQUlCQkFVQ0NnSUZBd0VCQmdFQ0FRRUJBUUVDQVFJQkFRRUNBUUVCQXdFQkFnSUJBZ0lEQWdFQ0JRSUZBZ0lGQndVSkNRVUdDQVFIQ1FZRENBSU1CUkFjRkEwR0F3Z0xDaElMRHdJRkJnVUhEZ2NMQkFjTkJnOElDUWtJRGdVSEJnSUVCd1VDQmdNREJnUUZEZ1lMQVFjSUJBa0ZDd2tFQWdzRkN4a01CQVlDQ0FzSEJBZ0RCUVlEQ3dVSURnZ0dDd2NIQWdNRERnSU1BUWtGQWdNRUF3SUdCQWtJQlFZREJBTUNCZ1VDQkFZRERBZ0RBZ2NEQVFZSENCSUtBZ2NFQXdnRUF3Z0RBd1lCQlFvRkRoRUtDZ1FDQWdjRUNRNE5DQVVKQ3dvT0NCRUlCZzBIREFjREFnVUtCUUlHQXdnRUJBY0RCUXNGQ3hZTEJRc0ZCdzRJQndvR0NCb0xCdzBKRGhrTEFROEdCdzRIQmdZQ0NnUUlCUklRQndzS0hnOE9Cd29KQkFzSkJBVUdCUWdDQXdRR0JBTUlCQVVIQkFVSEJRb0lCQVFIQXdvTEJ4SVBDQU1FQkFzR0JRTUNBZ1FCQkFJQkJBSURBZ0lEQWdRR0JBRUJBUUVCQVFJQ0FnRUJBUUVCQWdFREFnSUJBUUVDQVFFQkFRRUJBUUVDQWdJQUFmOTcvOXNDNGdMdUFwY0FBQk1HQmdjR0JnY0dCZ2NHQmdjR0ZoY1dGQmNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGelkyTnpjMk5EYzJOamMyTmpjMk5qYzJOamMyTmpjMk56YzJOamMyTnpZMk56WTJOelkyTnpZMk56WW5OQ2NtSmljbUppY21KeVlpSnpZMk56STJNekkyTXpZV056WTJOellXRnpZV056WTJOell5TXpZV056WXpGZ1lIQmdZSEJnWUhCZ1lIQmdjR0JnY0dCZ2NHQmdjR0l3WUdCd1lHQndZVUl3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lXRnhZV0Z4Y1dGaGNXRmhjV0ZCY1dGaGNXRmhjV0ZoY1dGeFlYRmhZWEZoWVhGaFlYRmhZWEZoY1dGaGNXTWhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNVSmdjaUJpTWpJZ1lqSWlZaklnWW5KZ1lIQmlZSElnY0dCZ2NHSmdjaUJnY0dKaWMyTmpVMk5qYzJOelkyTnpZMk55WTBKeVltSnlZbUp5WW1KeVltSnlZbkppY21KeVltSnlZbUp5WW1KeVltSnlZbkppWW5KaWNtSmljbUp3WUdCd1lHQndZR0J3WUdCd1lIQmhRSEJnY0dCZ2NHQmdjR0ZRWUdCd1lHQndZSEJnWVhGaFlYRmhjV0ZoY1dGaGNHSmdjR0JpTWlKaU1pQmdjSEJpWWpCaVlqSWdZSEJnWUhJaVlISWdZSEJpSWpCaVlqQmlJSEJnWW5ORFkzTmpJM05qSTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOelkyTnpZMk56WTJOelkzTmpZMU5qWTNOalkzTmpZM05qWTNOalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOejRETnpZMk55WW1KeVkwSnlZbUp5WW1KeVkwSnlZbUp5WW5KaVluSnlZMEl5WW1KeVkxSmlZbkpqUW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KaUluSmljbUpqVTJOamMyRmpjeU5qTXlGak15TmpNeUZqTVdOak1XTmpNek1qWXpNell5RnpZV3p3RU1DQVVJQndzR0JBTUZBZ1lHQWdZQ0FnY0NBZ01DQkFnRUFnWUNCQVFDQ2djREJ3UURDUVVEQlFRRENBTUZCZ1FIQXdRREJBSUhCUUlDQmdJRUFRSUdBUUlJQndRREJnTUZBZzRGQXdFR0FRa0dBZ1VDQWdJREFnUURBZ1FFQkFRTkNnY1hDUTBHRHdzREJSWU1CUXdIQlFzRkNoTUxCUWtHRUM0VUN4VUxCUWtGQ2hRTUNoZ09DZ1VDQndNREJ3UU5Dd1VEQndRRENBVU1CZ29FQXdVSEFnMEJCZ1FDQmcwRkNRRUVDUU1MQmdRQ0JRSUZCZ01DQlFNQ0F3SUNCd0lFQ0FNREJRTUdDd1FIQWdVQ0FnUUJCZ1FDQlFJRkFnSUJBd0lCQkFJRkJnUUlCUVlGQ0FzRkJ3RUNCZ0lDQVFJSEF3SUdBUVFDQndZQ0JBY0NBd0VDQ0FZRENBVUhEQVFLQXdJTkRRVUZCZ1FMQndVSEF3SUxCZ01IQndJSEFnRUdCZ0lOQkFVTEJSSUVCZ01DQmdNSkV3c0pBd1VGR2dZVUZRb1ZDZ1FLQkFJSEFnMEtCUWNEQ3hRSkJBTUlBUUVDQmdJRUFnY0ZBd01KQWdRQ0FRWUJBUWdJQWdZREFnTUlCUWNGQWdJSEFnVUJBUU1HQWdRQ0NBRUlBUUlDQmdzREFnUUZBZ2dPQmdVREFRMElCQUlGQWdRSUJRTUdBZ1lFQkFNQ0F3SUdDQVFEQ1FJS0JBNERBd1lFQ0JBQ0JnUUVEQWtFQXdjREJRc0dDd1lPQndjTkNBZ1RDUThhRVFzREFnTUdBd1FJQkFvREFnb0xCUWdPQ0FVQ0NBUUNDUUlDQXdVRENnSUNCZ3NGQkFVRUJBVURBd1VEQ3dnSEF3UUZBZ01GQXdjQ0J3SUhCUUVHQ0FVSENnWUhBUUlHQ3dVRkF3UUhBd2dEQWdJQ0FnUUVBUWdCQVFvTkRRWUdEZ2tFRFFVR0FRUUdBZ1VIQXdjQkNBSUNDQVFFQXdJSUJ3RUpEUVVHQlFNQ0NBSUlDd1FDQVFJSkJnRUtHUXNMRXdvT0NnVURCZ1VPRHdVSEFRb0NDQkVJQmhBR0Fnc0ZCdzRIQlF3RkN4WUxCd2tGQ3dVTEJpY0VDZ1VIQmdMcENBWUJBd1lDQkFZQ0F3WUVEQVlFQ0FnQ0JBWURDUVlFQmdzRkJRa0ZDUVFDRFFvRkNnVUZDd1VGQ3dVRkJnVUVDZ1VHQ0FJQ0JBSUpBZ1VDQXdRRkJ3VUNCZ01DQ2dnRUF3WUVCUVlRQmdFQkNRRUxDZ1FJQlFJQ0J3SUVCZ0lQQndnSUJ3WURBd01DQXdRRUJBZ0JBUUVDQVFJQkFRRUJBZ0VDQlFNQkFRSUJBUUVCQVFJRUJBSUNBZ0lGQlFJQ0FnSURBd0lIQWdVRUFnTUJBZ2NFQWdJQ0JBTUVBZ0lLQlE0TUJnUUhCZ0lJQkFJSUFnSUZBZ0lIQXdVSkJRUUhCQWNMQlFnSkFnSUpBUWNMQlFNTEJRY0RBUUlGQXd3SUJRUUlCUW9HQ2dZSkNnVUhBZ0lDQmdRQ0JnSUxBZ0lIQWdNSUN3WUZDQWNGQkFZQ0NRa0ZEQVVQQ1FnRkFnZ0ZBZ0lCQWdNRkFnSUNBZ2NEQWdVQ0FRY0JBUU1EQVFvQ0FRSUJBUU1CQVFJQkFRSUJBd0lDQWdJQkFRTUJCQUlDQ1FJQ0JRb0lCQVlJQkFFQ0JnUUhCZ01LQ0FVRkN3Z0hCZ01HQXdJSkR3UUlCd01GRVFZSUJ3UURDQVFJQXdFRUJnWURBd29CQlFNQ0F3WUhCd01EQndNTUV3b01BZ0lSREFnREFnVUdCZzRJQ0FjRUNRRUtCd01DQ1FNSUNnZ1FCUUVHQVFRQkFnTUNBd0lHQlFRQ0FRSUJBZ0lDQWdFQkFRTUJBZ0VCQVFFREFRRUNBZ1FCQWdVREJRUUNCUUVGQVFJRUFRSUNBUUlGQWdJQ0FnSUNBd0lDQWdVRkFnSUVBZ0lDQmdNR0FnZ0JBUXNFQWdvSUJRb0pCZ2dEQWdjTUNBVUVCZ2tFQ3dVQ0FnY0NBd0lDRFFFTER3c0xCZzhiRFFrUENBc0NBUVFIQkFVSkJRa0NBUWtFQWdZSkF3WUNEQWdDQ0E0SEJ3UUVCd01JQWdFSUNRVUNCZ0lMQ0FVTERna0NDUVVFQkFJQ0FnVUpCQU1EQlFJQkFnSUJBd0lEQXdFREFnSUJBUVFDQXdBQUFBSC9adi9rQW84Qyt3SDVBQUFURmdZSEJnWUhCZ1lIQmlJSEJpSUhCakVHQmdjR0JnY0dCZ2NXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXRnhZV0Z4WVhGaFlYRmhRWEZoWVhGaFlYRmpjMk5qYzJOamMyTmpjMk5qYzJOalUyTmpjMk5qYzJOamMzTmpZM05qWTNOalkzTmpRbkppY21KaWNtSmljbUpqYzJGamNXTmpjeUZqYzJGak0yRmpNV05qY3lOak15RmpNV05oYzJNak1XTmpNeU5qTVdOak0yTmhjR0JnY0dCZ2NHSWdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCd1lHQndZaUJ3WUdGUVlHQndZR0J4WUdGUlFXRnhZR0Z4WVdGeFFHRnhRV0ZSWUdGUlFXRnhZR0ZSUUdGeFlXRnhZWEZoWVhGaklYRmhZWEZoWVhGaFlYRmpZWEZpWUhJZ2NHQmdjR0ppY2lKaU1pQmlNaUppTUdCaU1tQmljaUppTW1CaWNtSmljbUlpY21KaU1HSmlNaUJpYzJOamMyTmpjMk56WTJOelkzTmpZM05qUTFOQ1kxSmpZM05qWTNOalEzTmlZM05TWTJOVFFtTnpZbU5UWW1OVFEySnpRbU5TWTBKeVltSnlZbkppWW5KaVluSmlZbkppY21OQ2NtSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVluSmlZbkppWW5KalFuSmlZbkppWW5KaWNtSmljbUppY21KaWNtSWljbUlqVTBOaklXTXpJeU16STJNekkyTXhZMk56YzJOamMyTWpjMk5qYzJGamN5TmpNeU5qTTJOamMyRnJZREFRSUNCZ0lDQlFJREJnSUlBd0VKREFjRUNnZ0NCd0lCQVFjRUJnTUNBZ01DQndFQkFnVUNCQVFDQkFJQ0JBSUJCZ0lDQWdjQkNBVUVCQWNFRGdrRENRTUVDUVVDQkFJRUNBSURCQVVHQkFZTEJnY0tCZzBFQkFVQkJnTUNBZ0lGQ0FrQ0JRVUZCQTBEQ0FVQ0Fnc0ZBeE1HQWdZRERRc0ZBZ3NDQlFnRkJRY0VDQThJQ2hBR0JRc0ZCQXdGQlFjRUJnVUVDeHNQQWdjRkJBZ0ZDZ1FDQ2dJQ0JBZ0VDQThJQkFnRkNBNElBd1lEQncwSEJ3TUVCd01DRVFZREFnb0lCQUlEQWdnQ0FnUUNDQkFJQWdNQ0NBWUdCUUlEQWdFRUJBTUNBZ0lHQWdJREFnRUVBUUVCQWdFQkFRTUNBd1FCQVFFQkFRRUNCQUVFQWdJRUJnTUNDd1lFRFI0UENRUURDUUVDQXdZQ0J3UUZCd1VMR0FzS0JnSURCd1FHQXdJSUR3Z05HdzREQndNRkJ3UUdDZ1lGRFFZR0N3VUxBUUVDQ0FFTEJnVUhCZ01MQkFRSkJRUUdCZ3dDQWdJQkFRUUNBd0VCQVFJQ0FRRUJBZ0lFQWdJQ0FRRUNBUUlDQlFNRUFnWUJBZ0lHQXdJRUFna0NDZ0lKQWdVQ0FnTUhBZ1FHQlFjRUFnWUhBZ0lGQWdVRUFnSUhBd1VDQmdFQkFnWUNDQUVEQ2dZRUJ3VUlCZ2dFQXdzSkJnUUlCQWNGQWc0TkNBb0pBd0lZQXdzSEJRd0lCQTBoQ2hNSkVRZ0ZDQVFGQndRSERnY0RCd01EQndJRkJ3UUZDZ0w3QmdZQ0FnSUJBZ01DQVFJR0FnZ0dCQUlJQlFJSkFRSUxFZ2dMQndJQkJ3SUpBd0lFQ2dVSUF3SUlBZ1FHQlFFSUFnUUVDZ0lCQ1E0RkJRWUZCUWtEQ0FVRkNnVUNCZ0lGQkFNSEFnSUlCZ1FIRGdnR0RnY05Bd2NDQXdrREFRb0VDQTBDQ0FJRkJnTUVCUUlHQlFVSUJBRUJCUUVCQVFNQ0FRSUJBUUVCQWdFRUF3SUJBUUlCQVFFREJRUURBZ0lCQWdVQkJRSUJBZ0lDQXdjREFnSUNBd3NFQWdFQ0JBc0hCUU1DQlFRQ0R3Z0VBZ3dLQlFNRUF3a0VBZ1FDQ1JBSUFnVUNCZzBJQndRSUFnb0pCUUlFQXdNR0JBb1JDUWdRQ2c4T0JnVUlCUVFIQlFZTUJnVU5CUVVLQmdVTkJnVUpCUlFtRmdnTEJ3b0ZCd0VIQlFJR0J3VURBZ0VEQVFJTkF3RUNBUU1CQVFRQkFRTUJBUUlCQVFJQ0FRRUJBZ1lDQWdFQkFnRUJBd1VJQkFNRkFRSUlBd0lEQWdJRUJBWUVBZ2tEQmc4SUNBNElCQVVFQWdzRkRRd0lJUVVJQkEwYURnd0NBZ1VOQXdNS0JRTUdCQVFJQWdVSEJBWUZDQVlDQXdZREFnUUNDUUlIQXdJTEJBVUZBd2NGQXdVT0J3Z0RBd3dGQXdNSEF3b0VBZ1FKQlFvQkJ3TUNBZ1VEQ0FFQkF3UUNBZ1lDQWdRQ0F3RURCd0lDQVFNRUFRVUZCQU1CQVFJQkFRSUNBZ01DQVFJQkJBRUJBUUVCQVFFREFRSUJBQUgvN1AvekFtZ0RLd0lMQUFBQkJnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjV0JnY0dCZ2NHRmdjR0ZnY0dCZ2NHQmhVR0ZBY0dCZ2NHQmdjR0J3WVVCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WVdCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhGak15TmpNeUZqTXlOamN5TmhjV05qTXlGak15TmhjeUZqTVdOak15RmpjMk5qYzJOamMyTmpjMk56WTJOelkyTnpZMk56WTJOelkzTmpZM05qWTNOaGNXQmhVV0Z3WVdGUlFHRlJRV0J4UUdGeFlXRnhZeEZnWVhGaFlIQmlZakppWW5KaVluSmlZbkppWWpCZ1lIQmlNR0ppY2lCeUlHQndZbUJ3WWpCaVlIQmdjbUJnY0dCZ2NHSWdjR0JnY2lJZ2NHQmdjR0pnY0dCZ2NtQmlNaUpnY21OamMyTnpZMk56WTBOelkzTmpZM05qWTNOalEzTmpZM05qUTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalEzTmpjMk5qYzJOelkyTnpZMk56WTJOelkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qUTNOalkzTmpZM05qWTNOalkzTmpZM0pnWUhKZ1lISmljbUppY0dKaU1HTkNNR0pnY0dCZ2NHSWlNR0JnY0dCZ2NHSWdjR0JnY0dCd1lIQmdZSEJnWUhCZ1lIQndZR0l5WW1KeVltSnlZMkp6UW1OU1ltSnlZbUp5WW1KeVltSnlZMEp5WW1KeVltSnpZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV056WVdNeFkyTnpJV056WTJOemMyTmpjMk16STJOeklXTnpZM05qWTNOakV5TWpjeU5qTTJNak0yRmpNeU5nSVBBd0lDQlFJREFnRUlDd1VDQWdJRUJ3WUJBd0lCQVFFR0FnSUZBUUVDQWdJREF3VUJCd3dIQVFJQkNBZ0ZBUVlCQVFNRkF3VUJBZ2NHQXdRQkFnZ0tCUVVGQWdvTEJRSUVBZ0lKQXdVRkFnSUJBZ0lHQXdNRUFnVURCUUVCQVFJQ0JBRUNCUWtFQmdNRkNnVU9HUXdFQlFJRUJnSUZDd2NHQ2dZRkNnWUhFUVlFQ0FZSEdBc0dEQVVIQ3dRRkJBWUNBUUlEQWdJQ0FnZ0lBd1lFQWdNQ0NRY0hCQVVDQlFJQkFRTUJBZ0VDQVFFREFnTUNBUUlCQkFJSUFRSUdDZ1VDQndJR0RnWVFDZ2NGQ2djRENBd0dCUVVLRGgwT0NSSUxDd0VEQmdRRkNBa0xCUWdPQ0FnT0NBZ09DQVVIQlFzWURBZ05DQWdSQ0FjSUJBUUpCQXNHQVFrQ0F3VURCUUVFQWdRQ0FRSUVBd1VCQkFFQkJRRUhCUVFDQmdRRENBSUlEQWNEQmdNRkN3Y0ZBUUVHQXd3R0JnTUNBUUlDQWdJRkJ3VUVBZ0lFQWdJREFnVUdBd0lEQWdJQkFRRURBZ0lDQWdNQ0JnVUNBZ0VCQWdjREFRTUNBd1lDQ2hNTEJ3MEZEQUlEQndNSkR3a0pBZ2tLQlFRR0JBb0VBZ1FHQkEwTEJRc0dBZ1FIQkFVQ0JRSUNBd1FDQmdJRkNRVUdBZ0VGQmdNREFRTUJBUUVCQWdJREFnRUJBUUVDQWdNR0F3RUJBZ0VDQWdjQ0JnWUJCUUlCQWdJQ0NRc0VCQWNEQ3hFTEJRb0REQVlFQnc0SUF3VUVCaEFKRHd3WURnY0lDaEFIQlFnRUNRZ0lHQVlMQndnREJnc0ZEUmdOQXhBRkJRc0MvZ2dFQXdRREN3SUNFaFVMQXdjRENCSUlCQVlFQXdjQ0J3TUJCd0lDQXdVREJ3SUJDZ0lDQ3h3TkF3Y0NEaElJQXdJSUFnRUdEQWNJQmdJTURnY0dCd1FURVFnTEJnVVBHQXNFQndJQ0FnSUNCUUlHQ2dZR0R3WUZCZ1VJQlFjRUFnTUdCUVlJQkFJQ0FnRUJBZ0VCQVFJQ0FRTUJBZ0VCQVFFQkFRTUJBZ0lDQlFrTEFnSUZDQVVEQlFJSkR3VUxDd1VIQlJRZ0RBb0NCUXNGQ0FVTEZnb0ZDUVVKRXdzS0VnZ0hEQVVOQ2hrTUJnc0dBZ0lDQlFJQkF3RUNBZ1FHQXdFQ0FRRURBZ0VDQVFFQkFRSUVBUUVCQVFJQ0FRRUJBZ0VDQVFFREFRRUNBZ0lCQVFFQkF3RUJBUUVEQmdRQ0NRUUVEZ1VIQWdJR0JBY0RBZ1FIQkFZQ0FnVURBZ2dDQWdnTEJRVU1CUVVIQmdnVkN3VU1DQXNVQ3drQ0FnUUdEaGtMRHdjREJ3UUVCZ1VLRmdzS0JBTUZCQU1IQkFjTUJRUUZCQU1HQWdNRkFnUUlCQVFKQkE0SkJRSUhBd2NPQ0FJRkJBc01Cd0lFQVFFR0FRSUJBUU1DQXdNREFnUUJBUUVDQWdNQ0JRSUlCUU1JQWdRUEJnWUZCUVVGQ1FNSkVBZ1JIeEVQQXdrVklRNEdDUVVJRGdjRkJ3UUpHQXdFQmdRSkR3Z09IZzRFQ0FNSUR3Y0hDUVlFQWdJSkFRSUNCZ0lNQlFNREJnUUZDQU1CQWdFQkFnRUNBUUVCQVFJQkFRSUNBZ01EQVFFQkFnSUJBUUVDQVFJQkFRRUJBQUFBQUFFQUovKzhBTThESFFEZUFBQVRGZ1lIQmhRSEJpWUhCZ1lIQmlZSEJoUUhCaFlWRmdZVkJoWVZCaFlYRkJZVkZBWVZCaFFWQmhVVUZnY1VGQWNHQmhVR0ZCVVdCaGNVRmhVVUZCY1dGeFlXRlJRV0Z4UVdGUlFHRlJRV0ZSWUdGeFlHRlJRV0J6WXpNall6RmpZekZqWVhGQllWQmhZSEJnWWpCaVlIQmdZSEJnWUhCZ1luSmpRM05EWTFOQ1kzTkRZbk5EUTNKalkxTkRRMU5qWTFOQ1luTkNjMkpqVW1OaWNtSmpVMkpqVW1KaWMySmpVMElqVTJKalUwTmpVbU5qYzJORFUxTmlZbk5DWTFKalkxTkRZMUpqWTFKalluSmpZbk5pWTNOamN5RmpjeU56WTJNeFkyTnpZeXNBTUNBUUVDQkF3RkJRY0VCUWdGQlFFQkFRRUNBUUVEQVFFREFnRUNBUUVDQVFJQ0FRRUNBZ0VEQXdFQkFRRUJBUU1CQVFJQ0FRUUNEd01FQ0FRSEN3WUdEQVFCQVFNQ0RBNElDQkVJQlFvRkJRb0ZDeE1LQWdFQkFnRURBUUVCQWdFREF3RUJBUUlDQVFFQkFnRUNBZ0lCQVFNQ0FRSURBUUlCQVFFQkFRSUJBZ0lCQVFFQ0FRRUJBUUVLQXhVTkJnMEdDZzRFQmdVSkJnTUZCd01kQlE0RkRBVUNBZ0VCQVFVQkFnRUNCQWNIQ0F3TENnVUNDZ2dEREFrRkJnd0ZCdzBIQlFjRUJ3UURCZ1FEQ0FNR0RBY09IUTRaTHhrSERnZ0lEd2dKREFNTUJRZ0pCQWtUQ1FnUkNSTW5GQWdQQ0FvRUFnNFNDd01EQVFNQkFRTU1BUUlKQ1FNSEFRRUNBUUVDQVFFQ0FRSUVBZ1VLQ1FzSUJRUUlCQVlNQ1FJSkJRMFJDQXNNQ0EwZkRBNFpEUW9GQlFZRUR5QVBBd2NFREFNQ0VoVU9Dd3dHREFFSENBTUZDd1lNQ1FVSUZnZ2REQlVMQXdjREF3WURFQXdHREFZRER3Z0hCZ3dFQ1JBR0NRRUNBUU1DQWdFQ0FRSUFBZi9zLy9jQkN3THdBTDRBQUJjbUppY21KeVltSnlZMUppWW5KaVluSmpRbkppWW5KalluSmlZbkppWW5KaWNtSmljbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW5KalFuSmlZbkppWW5KaWNtSWpVMkZoY3lNaGNXTmhjV0ZCY1dGQmNXRmhVV0Z4WVZGaFlYRmhZWEZnWVhGaFlWRmhRWEZoWVhGaFlYRmhZWEZnWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaGNXRmhjV0ZCY1dGaGNXRmhjV0ZoY1dGaGNXRmdjVUppTW1JaWNtSmlNR3lRTUVBd1VFQWdJQ0JBSUVBZ0VDQVFRQkJRTUNBUUVCQlFNQ0JBUUNCZ0VDQXdJR0F3SURBZ0lEQVFJQkFnSUNBZ0lGQWdJRkFnSUZBZ0lEQWdVRUFnVUlCQUlDQWdJQ0FRSUtCZ1VCQlE0RkJSY0RCd1FDQWdFRUFRRUJBd0lFQmdFQkFnSUJBd0VCQVFNQ0FRSUVBZ01DQVFFQkFnRUJBUUVEQWdRSEFnVUhCQVlDQWdFREFnTUJBZ1FCQVFVUEJ3Y01CUUlCQXdJQkJRRUVBUUlDQXdJQ0FRSUJBUUlCQlFJSkJBSVdBZ01GQkFZQ0NoVUtEd3dIRHdjTUFnY05CZ1lNQlFvSEF3d0xCUU1HQXcwT0JRY1BDQTBHQ2dzRkRRMEhEd2NGQ2dRSEN3VUZEQVlKRGdnSUR3Y0lEZ2dGQ0FVU0R3Y1ZFd3NHQWdVSkJRUUhBeGNUREFJS0FRRUJCQVFEQkFrRUJ3UUNDd0lDQ3dJSkJnb0pCQVVJQlFrR0FnTUdBZ01IQkFnVENBd0VBZ2tDQVFNR0F3UUlBdzRVQ0JRYkRnOEtCZ1lNQXd3S0JRc0dBaFFqRXhJbUZBb0VDUWNEQ3dVQ0NRc0ZCQWNGQkFnRkJRa0ZCUWNGQ3dFQkFRRUNBZ0FBQUFBQi8rRC92QUNJQXgwQTNnQUFBeFl5RnhZV016WVdGeFl6RmpZekZoY1dCaGNHRkJjR0ZoY0dGaFVHRmhVVUZoVVVCaFVHRkJVV0J4WUdGeFFXRlFZV0ZRWUdGUlVHQmdjV0JnY0dCZ2NXQmhVR0ZnY0dCeFlVQnhRR0ZSUVdGUllVRndZV0Z4UVVGUVlXRlJRR0ZSUVdGUlFXQndZbUp5WW1KeVltSnlZR0p5SW1KeVkyTlRRbU56WVdGellXTXpZV016STJCelkyTnpRbU5UWW1OVFkyTlRRbU5UUTBOelEyTlRRMk56WTJOelltTnpRMk5UWW1OVFltSnpRbUp5WTBKelEySnlZeU5UUW1OU1ltTlRZMk56WTBOU1kyTlNZbUp6Y21OQ2NtQmljbUppY21CaWNtTmljMkpnRUdCd1VDQndNTEJnTVBDUWNNQncwTkN3b0RBd0VDQVFFQ0FnRUNBUUlDQVFFQkFRSURBUU1CQWdFQ0FRRUNBZ0VCQVFJREFRRUNBZ0VCQVFJQ0FRRUJBUUVCQXdFQkFRSUtGQW9GQ2dVRkNnVUlFZ2dJRFFnR0F3SUNCQXdDQ2dzRENRY0RDUWNCQWdNQkFRUUJBUU1CQVFJQkFRSURBUUVCQVFJQ0FRRUJBUUlCQVFFQkFRSUJBUUlDQVFNQkFRSUJBd0VCQWdFRkJRa0ZBd2NFQmcwREJBRUNBUU1ESFFFQ0FRSUJBZ0lEQVFJQkJBc1FCUWdNQWdzSUJnd0dBaEFNQmcwR0F3TUhBd3NWREFzS0VCWUlCUWtFRGdzRkF3Z0VFQVlNQlJRVkNnb0RBZzRIQXc4Z0R3b0NCd2NFRFJrT0RCOE5DQXdGRGhFSUNna0NDUXdHQkFnRUJRZ0VFQW9GQWdRQ0FRSUJBUUlCQVFJQkFRRUpDUVVNQlFJREFRRUNBd0VEQWdJSUVnZ0lCQUlRRHdnVUp4TUpFUWdKRXdrRUNRVUlEQU1HQ2dVSUR3Z0lEZ2NaTHhrT0hRNEhEQVlEQ0FNRUJnTUtBUVFIQlFjTkJ3VU1CZ1VKQXd3SUFRc0ZBaWNIQndRQ0FRSUJCUUVCQVFJTUJBRUhEZ0FBQUFFQUNnR3dBWElDOGdDOUFBQVRCak1HQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHTXdZR0J3WUdCd1lHQndZR0J3WW1Cd1lpSnlZR0l5WUdJeVluTmpZM05qWTNOalkzTmpZM05qUTNOalkzTmpZM05qWTNOalkzTmpZM05qUTNOalkzTmpZM05qWTNOalkzTmhjV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlYRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGeFlXRnhZWEJpWWpCZ1lqSmlZbkppWW5KaVluSmlZbkpqWW5KaVkxSmpRbkppWW5KaVluSmpRbkpqUW5KeVltSnlZbkJnWUh0UWNCQkFJQ0FnSUJCUUVCQWdZQ0JRTUNCQU1DQmdFQ0F3RUNBUUVDRGdJQ0FRSUNEUUlDQndNSkJRTUtCd01MQVFZRkFnUUZBd1FGQWdVTEJnUUJCZ2tEQndjRkJRUUZCZ0VCQlFVQ0NBSUVBUUVFQXdFR0F3SUdBZ0VJQkFRRUFnUUNCZ1FDQWdRREFnUUNCQWNFQXdZQ0FnUURCQUlHQVFRRkFnTUhCQU1EQWdJSUF3UUNCUWdFQmdJQkJRTUxDd1VPRndJQ0FRSUZBd0lDQWdFRUFRRURBUVlCQlFNQ0FnRUNCUUlIQVFZR0JnTUhCZ0lGQWdKeEN3Y0hBd0lIQXdnREFRVUpCUWdLQlFjRkF3c0RCd0lHQlFJRkZBZ0NCZ01EQWdFQ0FRTUJBd01FQWdzSEJRTUpCQU1MQXdnUkNRY0JBZ3NLQmcwTUJnWU5DQWtEQWd3R0JBc0dBZ2NEQWdrQ0Fnd0VBdzBNQWdJSUNBWUVCZ1FNQndNRUJ3UUVCZ01JREFZR0J3UURDQVFKQWdzQkNBa0ZCZ3NIQ1FRRUJRd0dDQVVIQ3djSUNRb0RBUVFCQkFFQ0JnUU5DQVVGQkFJSkFRSUhBZ0lMQWdJT0JnTUVCZ1FIQkFJTEF3SUtDd3NGRGdnREJ3VUFBZi8vLy9nQ0tnQkZBR1VBQUNVV0ZoY1dGaFVVRmdjR0l3WW1KeUlHSXlZbUp5WUdJeUltSXlJR0l5SW1Cd2NtQmlNakJnWW5KZ1lqSWlZakJnWUhCZ1lISWlZaklnWWpCaWNtSmljbUpqYzJOak1XTmhjV0ZqTXlOak15RmpNeU5qTXlGamMyTmpjeU5qY3lOak0yRmpNMk5nSWRCZ0VCQWdJQkF3Z0xDQTRIQ0E0SEVTQVFCd3dIQkFnRUFnc0RBZ1VFQ3dNTEJCQVRFQXNTRVFnRUJnTUpHdzRJRHdnR0N3VUZDZ1VoSEFJQkFnRUVBZ1VFQmhBZkVSRWVFQWdNQncwYkRnWU9CeG8yR3d3WERRa1NDUXNZQnd3QkFnNFVSUUlGQWdVYUNRVUpBd1FCQkFFQ0FRUUJBUUlCQVFJQkFRSURBUUVCQVFRQ0FRSUJBUUlCQVFJQ0FnWU5Cd1lYQlFFRkJBTUJBUVFCQWdFREFnRUNBUUVCQWdJQ0F3TUFBUUJvQWtvQkZnTGlBRGtBQUJNMEZ4WVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWUhGQVlIQmdjaUppY21KaU1tSmpVbUppY2lKaWNtSmljbUp5WW1KeVltTlNZMk56YUFDd29QQWdrRERRc0hCUXdHQkFZREF3VUVEd1lDRFFVRUNBd0VBd2dKQlFFR0RSTUxBd1lCQmdJQ0JRWUVCUVFCQlFFSEFnc0Mxd3NCRXdrRkNBSUtDUVVJREFZREJnTURDQVFGQmdNRkJBRUZBZ2NEQlFZREF3UUlFZ2dFQVFNRkFnVUVBd1FDQkFNRUJnb0ZDQUFBQUFJQUkvL3NBZUVDQWdGekFlSUFBQ0UyTmpjMk5qYzJOamMzTmpZM05qWTNCZ1lIQmdZSEJnWUhCZ2NHQmdjR0JnY0dCZ2NHQmdjR0ppY21KaWNtSmljbkppWW5KaU1tSmljbUppY21KaWNtSmljbUp5WW1OU1kzTmlZMU5qUTNOakUyTkRjMk56WTJOelkyTnpZMk56WTJOelkyTnpZM05qWTNOaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYTkNjbUppY21OQ2NtSmljbU5qVW1KeVkySnlZbUp5WW1KeVluSmlZbkp5WWlKeVltSnlZbUJ5SUdCd1lHQndZaUJ3WUdCd1lHQndZSEJnY0dGZ2NHQmhjV0ZoY1dGaGMyTmpjMk1qYzJOamMySmdjR0JoVUdOaFVHQmljbVBnSTNNaGNXTWhjV0Z4WVdCd1lHQndZR0J3WUdCd1lHQnlJR0p3WUdKeVlpSnlZbUp5WTBKeVltTlRZMk56WTBOelkyTnpZMk56WXlOelkyRnhZMk56SVdOekkyTXpJV0Z4WVdGeFlXRnhZV0Z4WVhGaFlYRmhZWEZoWVhGaGNXRkJVV0JoVVVGZ2NHQmhVR0JnY0dCaFVVRmhVVUZCY1dGaGNXRmhjV014WVdGeFkyTXhZV0ZRWW1CeUltQnlJR0J3WUdJeUlpSnpZM05qWTNOalkzTmpjMk5qYzJOelkzTmpZM05qWTNOaVluSmpRbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KZ1lqSmlZbkpnY2lCZ2NpSWdjR0JnY0dCd1lHQndZR0J3WUdCd1lHQndZR0J3WVdGUlFHRnhRV0Z4WVdGeFlXRnhZV0Z4WVdGeFkyRnpZMkFUd0NCd0VHQkFRQkJRTUlBZ01DQVFFQkRBb0NCZ29JRGdvR0NRUUVCUUlGQ1FRRkNRUU9CZ1VMRndnSENRVUtCZ01NQkFjQ0J3RUlBd01DQ3dVQ0JRSUJBZ0lEQVFFQ0FRRUJBUU1CQlFRQkNRWUVCZ0VIQ2dZS0JRSUtBd0lKQ0FNUkVRUUpCQXNYQ1FzREFnUUpCUWNIQWdNSUJRa05DQU1HQlFZQkFnRUVBUUVDQVFNQkF3RUJBUUVCQkFFR0JBSUZCQWdGQXhRS0F3SUpCUWdFREFVRkRnVURCUUlEQmdJRUNnVUdDd1VIQmdRREF3RUJBZ01GQWdZSENRd0ZEUVlEQndJQ0JRZ0ZCQlFMQkFjQ0NnSVBCZ1FDQ0FvRkNBNEZDUUlEQkFNREFnUUJBUUlHQXdJRUFnY0tCUU1IQXdVT0N3a05CUWdOQWdFQkFRSUdCQVFJQWdZTkN3SUdBZzhQQmdRRkJnNG1FUU1MQlFVSUJBY09DQWdFQlFRTkF3UURBd3NHQlFZRkJ3TUNBZ1FDQkFFQkFRRUJBUUVDQWdVRUFnUUJBZ0VDQWdJSEJBa0VDZ2dFQndNQkRRTURCQVVEQlFRRUNRVVZMeGNLRVY0RUJna0xCUVFJQkFZR0NBY0RDQU1HQkFzSUF3UURBUU1CQWdFQkFRUUJBd1VDQWdFQ0F3NElDZ1lFQ0FnRUF3VURDd0lDQkFnRENRSUVCZ0lEQmdJQ0JRTUlBZ1FNQWdjREFnVUlBZ01EQWdJRkFRRUJBUUVEQWdVSkJnUUhCQVVCQVFnRUFnUUdBdzBSQndNQ0J3WUJCUWNFQ3dJUUJRVUtCZ3NKQndNTUJBa0pCUWdDQkFJQ0FnVUNBZ1lDQlFNQkFnSUNBZ0lEQmdjQ0N3UUVBdzRMQmdNTEV3c0ZDZ1VEQkFNSUR3TUZBd29CQ2dzRkNnUUNEUVlEQVFnRUJ3UUVBd3NGQ0FFQ0JnUUNDQU1DQ2dnQ0JBSUNBZ0lDQWdJQ0F3SUZBZ0VDQlFNRkRRWUNCZ0lQRGdRSUJnd0lCQUlHQkFjQ0FnVUdBd1lEQlFjRkN3VUVCQWdHQkFJSkJnRUVBZ0lCQVFFRUFnRURBUUVCQWdZREJRZ0dDUWdFQ0FZREFna09DQVFDQWdVQ0F3WUNBd1lCQkFzRUVRWURBUUlGQmdJRkJnRUNDQXNJQmdNREFRRUNDQVVKQlFZR0FnSUVBZ0lGQXdNSUFnSUNCUUVCQVFNREZBa0RDQVFJRVFrSER3Z0hBd0lJQ0FVQ0FnSUdBZ0VFQVFJRUF3RUJBUU1DQWdFREFnY0NCUU1EQ1FzSUV3Z0tCd1VFREFZS0F3WU1CUkFpRVF3WERBZ1JDQkVnRUFnT0NBTUlCUWdPQ0FNR0FnTURBZ1VGQXdJRUFnZ0JBd2dCQVFFQkFRRUNCRDhDQkFZSUJBSUdBZ1VHQXdvQ0JnTUhBZ3NKQXdnQ0FRa0dCd1VJQXdJR0F3WU9CZ1FIQWdVTkJ3Z0VBd2dCQWdJRUFnVUNBZ01CQWdFRUFRSUJBd0lGQVFNSkJBb0RBZ2tKQlFVT0NBWU5CZ1VOQlFVTUJRTUlCQTRjREFjTEJnY0RBUVlEQVFJQkFnSUxBQUFBQXYrOC8vSUI0d0tVQVM0Q0R3QUFFeFlHQndZV0J4UUhCaFFIRkJZSEZnWUhCaFFWQmdZVkZnWVhGZ1lYTmpZM05qWTNOamMyTWpjMk56WTBOelkyTlRJMk56WTNOalkzTmpZM05oWTNOallYRmhZWEZqTVdGeFlXRnhZVUZ4WVdGeFlXRnhZWEZoY1dGaGNXRmhjV0Z4WVdGeFlHRlJRV0J4UUdCd1lHQndZV0ZRWUdCd1lVQndZSEJnY0dCZ2NHQmdjR0JnY0dCZ2NpQmdjR0JnY0dCZ2NHQmlNR0ppTWlCaWNtSmljbUppY21KeVluSmlZbkppY21KaWNXRmhjVUZRWW1JeUltQnlJR0p5SUdKelEyTnpZM05qYzJOelkzTmpZM05qWTNOalEzTmpZMU5DWTFOaUkxTmpRbk5UUW1OVFEyTlRRbU5UWTJOelluSmlZbkpqWTFOQ1kxTlNZbU5TWTJOVFFtSnpRMEp5WW1KelluSmlZbkpqVW1JaWNtSmljbUlpY21KamMyRmpjMkZqYzJGak15TmhjV01oY3lGeFlXRnhZMkV3WUdGUllXRnhZMk56WTJOelkxSmpRbkppWW5KaVluSWdZSEJnWUhCZ1lIQmdZSEJnWVZGQllYRmhZWEZoWVhGaFlYRmhZWEZqWVhGaFlYTWpZWE1oWXpOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpRM05qWW5OQ1kxTmlZbkpqWW5KeVkwSnlZbUp5WTBKeVluSmlZbkppWW5KaWNtSWljR0J3WUdCd1lIQmdZSEJnWUhCZ2NHQmdjR01RWUhCZ1lIQmdZSEJoWUhCZ1lWQmhZWE1qWTNOalkzTmpjMk5qYzJOamMyTmpjMk5oY1dGaGNXRmhjV0ZoY1dGaGNXRnhZV0J3WUdCd1lHSnlZbUp5WW1KeVkyTlRRbU56WTJOelkyRnhZVW9nSUdBZ0lCQWdJRUFRRUNBUVlCQWdFQ0FRTUJBUUlCQmdJQ0FnUURCd01GQXdJS0N3Y0JDZ01GQkFNSkFnNEpCUXdKQlFnQ0Fna1NEQXNTQ0FnQkJnTUhBZ0lGQWdrR0FnSUlCQVVDQWdJQ0FnSUNCQUVEQWdFREFRSUJBZ0VCQVFFQ0FRRUJBUU1DQVFFRkJRTUVBZ0lDQmdNQkFnTUNCd1FDQlFjRUJRa0dDQk1LQ3hBSEF3WUVDQkVJQlEwSEJnY0ZDd2NMQVFNSUJBZ0ZDQUlGQXdZQkJna0dHaVlYQ1JVTkJBY0JCZ01GQlFrREJnUURDQW9KQlFNSEFnSUNBUUVCQWdFQ0FRRUJBUUVDQVFJQ0FnWUJBUUVDQVFRQkFnUUJBUUVFQlFFSEFnSUZDZ29JQXd3ZURnUUpBd0lJQWdFSEJRTUxDQTRNQmdzWERBUUhCUW9FQlFjRUVTSlNBUU1CQ1FnTkNnSUZCd0lGQXdFR0N3TUVDUU1EQ1FJTENnUUhFd1VGQXdJQkFna0NBd1VFQ2dNRkF3b0REUThIQXdVQ0Rnb0VBd2NDQkFVQ0JBWUNDQUVDQ0FFQ0JRY0ZCUWdEQlFFQ0FnUUNBUUVDQVFFRUFRUUJBUUVEQVFRQkFRSUNBd0VHQ0FJRkFnc0VBZ1VNQlFjRER3TUZCZ1FIQXdzR0JBUUhBZ3NDQlFJQ0NnZ0NDd2tGQXdjRUJnRUJCUUVCQVFJRkFnSUNDZ0lFQmdvR0FnWUlCUWdCQVFVT0NBSUdCQU1JQWdVS0F3SUJBZ1VGQWdNQ0FRd0dCeFlNQlEwRkJRc0NBUUlCQVFZREFnTUNCUU1DakJBT0NBZ09DQU1JRGlBUUJnNEpBeFVGQ3hVS0NCQUlEUWtGQWdZREJRTUNBZ2NFQmdVSkFnd0tCZ0lCQ1FFQ0NRSUZBUWtIQWdNQ0FnUUJBUUlDQXdJS0JRY0dBUWdDQWdZQkFnb0dCUVVNQlFRRkF3b0ZCZ1VJQkFJTkJBZ0dBaElMQndjTkNBVUxCZ1VLQlFrREFnY1FDQVFJQkJFU0RBY0RCd01JQWdFREJ3SUZCUU1GQXdNR0FnSUhBd1FEQVFJQkFnSUhBZ0lFQXdRSUJRTUVCd1VJQ1FrR0FoTWhGQW9JQWdNQ0FnUUJBZ1VGQWdFRkFRZ0RCQVFEQkFNSUJRTUdBd01MQlFVS0JRUUlBd3NDQ3hzTUdCWXVGd01GQXdRSEFnY0ZBdzhKQ0F3SEJBY0RBd1lFRFFZTEJnVUdCQW9XREFvU0Nnc1ZDQTBOQlFRQ0JRRURBUVFHQXdFQ0FnSUZCUVFCQVFFQkJBSUJBUUVCQVFFREFRSUYvaU1GQmdjTEJ3SUJCUUlEQ0FNTUFnMEpBZ29IQWdVREFRUUJBd1VDQkF3SEN3Z0ZCUVVGQnhnR0NnUUVDd1FEQXdZRENBb0RCQUVDQlFRQkFRRUJBUVFDQkFJQ0JBSUJCQVFFQndvSERBa0ZBd1lEQWdjRUNCa0lEQm9KQ3c4R0JSUUNEZ3dHQWdnUEJna0dBZ3dHQkFnQ0J3RUNBd0lDQVFNQkF3a0ZBd01LQlFNREJBSUlBZ01EQVFnR0JRa0lCQU1GQXdjQ0FRb0hDQkFjRUFnQ0JRY0ZBUVFJQWdJREJnSUNBZ0VDQkFFQkF3SUNBd0lEQ3dVQ0JnTUpEUWNRQ0FzWkJRVUhBZ0VIQWdJSEJnSUlCUVVJQXdzRUFnSUhBUVVIQUFBQUFRQWtBQWdCMWdJbkFUQUFBQUV5QmhVR0JnY0dCZ2NHQmdjR0JnY0hCZ1lIQmdZakpqUW5KaVluSmlZbkppWW5KaVluSmpRbkppWTFKaVluSmlZbkppY21KZ2NHQmdjR0lnY0dCZ2NHQmdjR0JnY0dCZ2NHQndZR0J3WUdCd1lHQndZR0J3WVhGaFlYRmhZWEZoVVdCaGNXRmhjV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhjV05oY1dGak15TWpjMkZqYzJGamMyTmpjMk5qYzJOamMyTmpjMk56WTJOVFkyTnpJV0Z4WVZGQVlIQmdjR0JnY0dCZ2NHQndZR0J3WUhCZ1lIQmdZSEJnWUhCaVlIQmlJakppWW5KaWNtSmljbUppY25KaWNtSmljbUppY21KaWNtSnlZbUp5WXhKaWNtSmljbU5DY21KalVtSmljbU5pY21KaWMwTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMkZoY1dGeFlYRmhZWEZoWVhGaFlYRmpZM05qWTNOalkzTmpjMk5qYzJBYzRJQXdJRkF3UUNBUU1EQWdVTUJ3VUJBd0lCQVFZRUFnVURBZ0lGQkFJQ0FnSURBUUVCQVFJREFnSUZCZ0lWRndjTUNRZ1VDQWNDQWdnR0F3SUZBd1VMQlFJR0FnY0JCZ0lDQWdFQ0NBWUVBd1lDQWdJQ0JRSUNBZ0lEQlFFQkJnTURBd1lDQWdJQ0JRSUNBUUlFQlFNRUNBZ05CUTRJQnd3SENBd0hCdzBHQ2dZRUJBVUVCQWNFQndvSEFnZ0VBd0lDQlFZQkJRVURBZ1lFQWdJREJBRUNCUW9HQndVQ0JRTVVEZ3NEQWdRSUJRUUlCQXNiRUFvUUNnNFRDd3NEQWdZQ0FnWURDZ1lHQ1FFQ0FnTUNBZ0lDQkFFRkJBSUVBZ0lCQXdFQkFRTUJBUU1CQVFJQkJRVUJBd1lHQXdJQ0JnTU1GUWtEQmdRTUJ3UUZDQVVFQndRS0V3Z0ZEQWNOSGdvS0RRb0NDUVFDREEwRkNnUUNEUkFGQWdVQ0NBSUJCUVFCQWdJQ0FpY0tBdzBiRGc4TkJnb1JDQlVuRkFzS0J3UUNDZ01JQlFrTEJRZ1FDUVVGQmdrRkF3TUhBd01HQXdNSUJBZ0hCUXNHQWdJQkFnRUZCUUVGQXdJQ0JBSUdDd2NEQndRTUFnc0dCQU1IQlJBV0RBa1NDeGNYQmcwSEJ3NEhDQVVIQXdJS0RBVUZCd0lHQWdNRkF3SUZBd1FHQXdNRkFnUUJBUUVCQVFFQkFRRUVBUUlDQWdJQ0F3TUdFQVVIREFVSUFnSUlCQUVMQWdnRENBVUVDd1FHQmdjRkFnY05DQWtDQWdZQ0NnTUNBZ0VCQVFFQ0FRRUNBZ0lDQWdNRUNBTUNBUUlDQmdJTkJ3c01Cd1FDQmdRREJ3TUpBUXdJQlF3SUJBTUdBd1FHQkFnQ0FnTUZBd0lIQXhRYURCQWNDdzhMQlFRSkJSWVdEd0lFQWdrRkFnSUNBZ0lEQVFNQkFnSUdBUUlHQkFNR0F3UUZBd0lFQmdNSEFRRUNFZ2NFQ1FRSkJBSU5BZ0VJQWdnQUFBQUFBZ0FwLytVQ1NBS1pBUmtDRGdBQUFSUUdCd1lHQndZR0J3WWlCd1lHQndZR0J4WUdCd1lXQndZR0J4UVVCd1lXQndZR0J4UVdGUVlHRlJRR0ZSUVdGUllHRlJZV0Z4WVdGeFlHRnhZV0Z4WVhGZ1lYRmhZWEZoWVhGaGNXRmpNMkZoY1dGaGNHSmdjaUJpTW1CZ2NHSWdjR0JnY0dCaWNtTmljR0JnY0dCZ2NHQmdjR0JnY0hCaUlIQmdjR0JnY0dJZ2NIQmdZSEJnWWpKaVluSmlZbkppWW5KaVluSmlZbkppWW5KaWNtTmljbUppY21KaWNtTmljbU5qVW1OalUySmpjMk5qYzBORGMwTmpjMkpqYzJOamMyTmpVMk5qYzNOalkzTmpjMk5qYzJOamMzTmpZM05qWTNOelkyTXpZWE1oY1dGaGNXRmhjV05oY1dGaGNXRmhjMkppYzBOaWNtSmljbUppY21KaWNtSmpVMkZqTVdOak15TmpNeUZqTVdOamMyTmpjeUZoYzJBU1ltQndZR0J3WUhCZ1lYRkJZWEZqSVhGaFl6TWpZM05qWTNOamMyRmpjMk56WTJOelltTlRZbUp5WW1KeVluSmlZbkppWW5KaVluSmdZbkppTWlJZ2NHQmdjR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUhCZ1lIQmdZSEJnWUhGQVlWRkJZVkZBWVZGQllYRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGNXTWhjV0ZoY1dGak0yRmpjeU5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qVTJKalUxTkNZMUpqYzBOalUwSmpjR0JnY0dJZ2NHQmdjR0J3WWlJeUlHSnlZbUp5WTBKeVltSnlZMk56WTJOelkzTmpRM05qWTNOamNXTWpNV0Z4WVhGaFlWRkFZSEJnWW5KallDU0FvRkFna0VBd2NFQ3dRQ0J4RUpCdzBEQVFZQ0FRRUNBUUlCQVFFQ0FnRUNBZ01CQXdFQ0FnTUJBZ0VCQVFJQ0FRRUNBd0lDQWdJQ0F3WUdCQWdDQWdnTkNRa0NCZ01DQlEwREFRY0RBZ2NDQmdrR0JoSUxEeG9SQ0JFREJnVUNCZ0lDQ0FVREFnWURCd0VFRXdnQ0FRVU1CQWdGQ1FVRUVBVVBDZ1VKQlFVTUJ3Z05Cd1FNQlFRSEFnY0tBd2dMQlFnQ0JnRUJCQUlDQWdjQ0FRSUNBUUlCQVFNQkFRRUNBUUVEQWdFQkFnVUNBUUlHQkFnRkJ3TURBZ3dHQWdVREF3b0ZDd3NKQmc0RkJRd0ZFQWtMQ0FVR0J3NEdCQWdGQ3dJQ0VoTUpBZ1lGQWdNQkFnVUNCUU1DQXdJR0N3VUVDQVVNQndjTkJ3Z05CZ2dRQ0FrVUNCQVdDd1FPQmczKzdnZ09DQWNLQXdzREFnWUNDZ0lJQXdJREJ3TUlEUVVJRVFZSUF3Z0NBUWdEQ3hBR0JRSUJDUUlEQkFJR0JBc01CUWNDQWdVUUJRb0VBaEFHQ2dnRUF3c0NDZ1FFQ0FNREFnSUNBd0lDQXdJRUJRTUNBd0lHQlFRSEFnTURBZ01HQWdJQkFnTUNBZ0VDQmdJQ0FRSUJBd0lDQWdJSUNBSUpBUUlPQndRRUNnSUZCUUlJRVFVR0VBVUdCd01JQmdRREJ3SUdDQU1HQ0FRQ0JnTUNCUU1IQWdFQ0F3SUNBUU1DQ1FNQ0NBRUJDaElMRGc0RkNnVUZDd1VFQ3dJS0FnOEdBZ0lDQWdJSEJBUUVBd0VEQ2dZTUNRc0RBd2NDQndnRUJRZ0ZCQWdGQWdvQ2xBWUNBZ1FEQWdJRUFnY0JCQW9FQXdZSERoVU1DUkFJQXdVREFna0RDeGdOQlFzRkF3WUVDaFVOQ3hZTUJRb0ZCZ3dHQlFnRkNSWUxCd0lDRGh3T0RRUU9HdzRJQndNREFRSUZBd01DQVFNQkFnTUZCZ0VCQXdFREFRSUNBZ01DQVFFQ0dURVlCUVlDRGdnRkJBY0ZCd0lDRGdjQkJBVUNBZ0lGQVFjQ0FRRUJBZ0VDQWdNREF3SUVBZ01CQWdZSUJBb0xCZ2tLQndNQ0Nnc0dEeDRPREJzTEN3a0ZCd2NFQ3dVQ0JRa0VCUWdFQkFjRkJRc0ZDd1lEQlFrR0JRb0dDUU1IQWdjR0FnVURBZ1FDQmdVRkFnVUNBZ1FDQWdJQ0FnSURBZ0lFQWdVQkFnMFNDUUlIQVJnNEd3NGdDd1FIQlFJRkFnd01CUVVIQndVRUFRRUJBZ0VCQVFJQ0FnRUJBdjYxQ3dVQ0Fnd0ZFQXNGREFRRkN3SUhBUUlEQlFJRUJ3UUdBZ1lCQVFZQ0JnNExDUVlCQ1EwRUJ3UURDUVFQQ0FVR0FRRUVCd01HQVFFRUFRRUdBUVlFQlFrRUJnRUNCQWNEQXdVREJ3MElBd1VFQ2hJSERRWU1CZ1FKRXdzSkF3RUxCZ0lGQ2dVSURRVUtBd2NKQlFVS0JBSUZBd01IQWcwSEFna0JDQUlDQVFJQkFnRUNBZ0lGQWdRQ0FnWUhCQVFIQkFZSEJBa0dCUU1IQkFJSUJBc0JCQUlHQXd3R0N3VU1DQThRQndNR0JRY0NBZ2NCQndzRkNBTUJBUUVCQkFFQ0F3SUtEQXNLRHdZSENBZ0lCQWtFQWdNRUFna0JBZ1FFQkFrRkJnVUZDQVVEQ0FJSUNRQUFBQUFDQUNRQUJBR3VBaEFBK1FGVEFBQWxJaVluSmlZbkppSW5KaVluSmdZbklpWWpCaVlIQmdZSEJoWVhGaFlYRmhZSEZoWVhGZ1lYRmhRWEZoWVhGaGNXRmhjV05oY1dGaGNXTnpJeU56WTJOelkyTnpZMk56WTNOalkzTmpZM05qWTNOalkzTnhZV0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUhCZ1lqQmlZbkppSW5KaVlqSmlZbkppWW5KaVluSmlZbkppSTFKaVluSmlZbkppY21KaWNtSmljbUppY21KaWNtSmpVME5qYzJKamMyTmljMk5qYzJORGMyTmpjMk5qYzJOelkyTnpZMk56WTJNelkyTnpZMk56WTJOelkyTnpJMk56WTJNellYRmpZWEZoY1dGeFlXRnhZV0Z4WVdGeFlXRnhZR0Z4WVdGeFlXQndZR0J4UVdCd1lHQndZR0p6WTBOelkyTlRZbU5UWTJOVFkwSnlZbUp5WW5KaU1tSXlJR0J3WUdCd1lHQndZR0J3WUdCd1l4QmhRSEJoUVZCd1lHQndZR0J3WUhCZ1lIQmdZSEJoY1dOak1XTmpNeUZqTXlOak0yTWpjMk5qY3lOak16TmpZM0FaZ0lEUWdEQndNSURnZ0xGQW9kT1IwRUJ3UU1Cd0lGQ1FRQkJBRURCUVVFQkFFRUF3SUZBUUVGQVFJRUFnUURCZ01DQmdJQkNBNEZEQTBJRHdZRkNBUUVCZ0lGQ2dVS0JBSUdBZ3NMQlFZRkFnY0RBZ3dEQkFJQ0VnZ0xCZ1VOQndRRUJ3VUVDQVVPQndVTkR3b1NDQXNhQ2dRSEF3UUdCQU1MQWdNSUF3UUtBZ1lDQWdVREJBWUNCd01CQXdFQ0FnSUNBZ0lEQlFJQkFRRUJBd0lCQVFFQ0FnY0JCd2dDQWdJR0FRRUNCd0lEQmdjQ0FnTUdCQU1IQWdJRkFnSUdBUWdMQ0FjUEJnVUxCUWdYQ3hjTkRnZ0RCd01EQ2dNRUJBTUhBd2NCQWdzSkJRSUJBZ1VEQVFJQ0FRRUNBUUVCQVFNQ0FnUkdCUUVCQVFFQkFRSUJBZ01JQlFZREN3SU5FQThQQndnSkJBc0ZBd1VJQlFnRkFnVUVBUVFHQlFFQ0JBRUJCQUlDQXdFQkF3SUdBUVVNQlFZREFnTUdBd01HQXdRSEJBOGFEd2NOQnhrUUVnamRBd0lCQWdFQ0FRSUJBUUVFQWdFRUFRRUJBZ0VHQ3dVTUZBc0xCd0lHRFFVSEF3RUhBZ0VDQkFJR0F3VUVBZ2dDQWdjRUFRSUNBUUVEQWdJQkFnTUZBd1FEQWdNQ0NnY0dDUVFDQlFNQkNnTVdDQVlRQlFrSEF3Z0hBd01GQXdJRkFnWUVBZ1FCQWdRQkJRTUNBZ0lIQmdnSEFnUUVCZ2tFQ2dRQ0NBRUlCZ01KQWdFS0FRTUZBd1FIQlFnWEN3Y1JDZ1VKQlFZUENBa1JDQWdRQ1E0R0JBVUlCUW9GQWdJRkF3TUlCZ1FDQXdjQ0FnUURCUUlDQkFNQ0RRTURBZ1VFQWdJRUFRWUZBUUlEQXdNRUFnSUNBZ2tDQlFJQ0RSTUtBd01GRUJvTEN4RUxCZzBGQkFjRUJnOEdDeFk1RGd3RkJBVUNBd1lFQlF3R0dERVhCQWdDQlFNRUNBUUNBZ0lDQmdZQ0JBY0RDZ2NEQ2djREFRY0VBUkVOQmdJSUF3SUlCQVVMQmdjR0JSSVVBZ0VCQVFFQ0FRRUJBd0lDQVFJREFBQUIvLy8vOFFHdUFza0Jvd0FBRXlJbUp5WW1JeUltSnlZMk56WTJGeFkyRnpZMk14WTJOelkwTnpRMk56WTNORFVtTkRjME56WTJOelkyTnpZMk56WTNOalkzTmpZM05qVTJNamMyTmpjMk5qYzJOelkyTnpZMk56WXlOellXTnhZMk56WVdGeFlYRmhZWEZoWVhGaFlYRmhZWEZ3WVdGUVlHQndZVUJ3WUdCd1l4QmdZSEJpSUhCZ2NHQmdjR0JpY21KaWNtSmljbUJpY21KaWNtSmljbUpqVTJOamMyTnpZMk56YzJOamMyRmhjV0ZoY1dGaGNXQmdjR0ZBY0dCZ2NtSmpjMk5pY21CZ2NHQndZR0J4UVdGeFlXRnhZV0Z4WXpGallYTWpZM05qWTNOalkzTmpZM05pWTNORFkxTkRRbk5EUW5KaVluSmljbUlpY21KaWNpQndZR0J3WUdCd1lHQndZekJnY0dCd1lHQndZR0J3WUhCZ1lIQmdZSEZnWUhCZ2NHQmdjR0JnY1dOak1XRnhZMkZ4WVdNeGNXTmpNeU5qTVdGak15TmhjeUZqY3lOaFVVSWdjR0JnY0dCZ2NHSWlNR0ppTUdJZ2NHRmdjVUJoY1dGaGNVRmhVV0ZCY1dGeFl6RkJZWEZoWVhGaFlYRmhjV0ZoY1dCaGNtQmlNbUppTWlCZ2NpSmdjR0JnY0dKaWMyTVRZMk56WTNOalkzTmpZM05qWTNOaVluSmlZbkppWW5KalkxTkNZM05EWW5YUVFOQlJJVkJ3c05BUUVQQ0FVRkF3OEhDQWdGQkFjQ0JBSUJBUUlDQVFFQkJBSUJBZ0lHQVFJRUFnUUNBZ2NEQkFRQ0J3a0RBZ3NMQmdjVEJ3Y0RCUWtGQWdVREJBZ0VCQVlDQnd3RkNCZ0tDd0VLQlFJQ0F3SUhBd0lDQlFFQkFnSUJBZ0lCQVFZR0F3WUVBZ0VIQVFJR0NBUUpCUXNVRVFnUENBUUdBZ2NCQVFJSkFnTUdBZ0lEQVFVQ0J3SUpCQWNNQlFNRUJRZ0hBd29GQlFrQkFRSUJBUUlGQndJTUN3WUZBZ1VMQ2dnRUJBSUZBUVFCQVFJQkJ3b0ZBZ2tLQndRUUN3UUdCZ0VCQVFFRUF3RUJBUUVDQVFFQ0J3RUlCUVFJQkFVSUJRa0VDUWNGRVFvRkNRb0VDUUVEQlFRREJRTUJCUUlDQXdJQ0JRTUNBUUlCQkFJQ0FRTUdBZ1FGQWdJSkF3VUlEaDhRQ3dFQkZnUU5Bd1VLQlFNR0F3VUhCQVlIQ0FNTUNnY0ZDZ1FWRmhRTkRBZ0pBZ0lWS1JRQ0F3RUJBZ1VEQWdJQ0FnUUNBUU1DQVFJQkFnSUlBZ1FHQWdRQ0F3UUJDaGdNQlFrRkJRa0ZDaGtMRUFrRUFnZ0NBZ1VDQWdjSEJRc0NCZ1lEQndJQ0FnRUJBUUVCQVFRQkFnSURBUUlDQVVJQkFRTUNBZ1lJQkFJQkFnSUJCQUVCQWdFQkFROFhEQWtQQ2dnRENnRUVFQVlMRFFZTENBZ1BDUUlJQkFZRUF3WUVCZ01EQmdNSkFRZ0lCUVVJQmdJREFnTUNBZ0lEQVFFRUFRUUJBd0lDQndZSUFnb0dBd0lGQWc0TUJRVU1CUklDRWdRRkN3WUZEUVVRRUFnTUJ3RUNEQU1JQlFJR0FnWUtCUUlHQkFNQkFnY0JBUU1IQlFRS0JBUVBDQVFNQnd3RERBWUVCZ1FDQVFJQ0FRTUdCUVFKQkFRR0JBTUhBZ1VEQXdJSURBY1BCd0lLQXdrR0JBY0VCUkVHQ1FJQ0J3Z0NBUVFDQWdnRUNnMEVBd2NERGdjRkNBNElCUWtGQlFrRkJBZ0RDUTRJQmdJQ0FRSUdBUUVEQWdFSENnUUhCd1VNQmdVR0NBZ0JBUXdJQWdjS0NSSUxCUWNGQWc4RENnTUlEZ2tPRlF3REFRRUNBUUlDQVFJQ0FRRUNBUUlDQVFNQkFnY0ZBZ0lCQVFJRUFRRUJBUUlGQlFvR0JRWUZFeE1MQlFnRUNoVUpFQXdOQ0FRQ0JBa0ZDQkFJRGcwRkRRY0xCQUlDQkFFQ0FnRURBUVVCQlFNQ0FnMERCUUlNQ2dVSkJRMExDQkVuRGhBT0NBVUtCUVVKQlFnUUNBY09Cd2NMQndBQ0FDVCtvZ0kyQWdBQ0pnS3JBQUFCRkFZSEJ3WUdCd1lHQndZR0J3WUhCZ1lIQmdZSEJoWUhCZ1lWQmhZVkZBWVZGQllYRkJZVkZoWUhGaFlYRmhjV0ZoY1VGQmNVRmhVV0ZCY1VGaGNXRmhjV0JoVVVCaFVVRmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0J3WUdCd1lHQnlZbUp5WWlKeWNtSmljbUppY21KeVltSnlZMkp5WW1KeVltSnlZbUp5WW5KalUwTmpjMEpqYzJOamMyTmpjMk5qYzJGamMyTmpjeU5oY1dGaGNXRmhjV0ZoY1dGaFVVQndZR0J3WUdCd1lIQmdZSEJnY0dCZ2NHSmljbUppY21KaWNtTmpjMk5qYzJNamMyTmhjV0ZnY0dCZ2NtSmpVbU5pY21CZ2NHQmhjV0ZoY1dOelkyTnpZMk56WW5KaVluSmlZbkppWW5KZ1lIQmlZSEJnWUhCZ2NHRkFjR0JnY1dCZ2NVRmhjVUJoY1dGQmNXRkJjV0ZoY1dGaGNXRmhjV01oY1dGaGNXRmhjV01qTXlNamMyTmpjMk5qYzJOamMyTmpjM05qWTNOamMyTmpjMk5UWTJOelFtTlRZMUppWTFORFluSmpZM05pWTFKalkzTmpZM0pnWUhCZ1lIQmdZSEJnY0dCZ2NHQndZR0J3WUdCd1lHQndZR0p5SW1KeVltSnlZR0p5WW1KeVlqSmlZbkppWW5KaVluSmlZbkppWW5KaVkxSmlZMUpqWTFKaVkxTmpZMU5DWTFORGMwTkRjMk5qYzJKamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyRmpjMk5qYzJNamMyTmpjMk56WTJOekl5TnpZMkZ6SVdNekl5RnhZWEZoWVhGaFlYRmhZWEZoWVhGaGNXRmhjMkpqVTBOaWNtSmljbU5DY21KaWNtSmpjV05qY3lGak15TmpjMk1qYzJOamMyRmdVbUJpTWlKZ2NHQmdjR0JnY0dJd1lHQndZSEJnWUhCZ1lIQmdZSEJoUUhCZ1lYRmdZVkZoWVhGQVlYRkJZWEZoUVhGaFlYRmhRWEZoWVhGeFlYRmhjV0Z4WVdGeFl5TXpZMk56WTJOelkyTnpZMk56WTNOalkzTmpZM05qWTNOamMyTkRjMk5DY21KaWNtTmljbUppY21KaWNtSmljbkppWW5KaVluSmlZbkppWW5JaVlDTmdrRkVnc0JBUW9JQlFJRkJBZ0lBZ1lEQmdvQ0FRRUJBUUVCQWdFQkFRRUNBZ3NFQVFFQ0FnRURBZ0VEQVFFQkFRTURBUUVCQWdJQkFRZ0RCZ1lDQWdRQ0JBZ0ZBZ1FDQlFzRkRRa0ZDQWtKQlFzRkNnc0VCd1VGRFFZRUNBVUdFQWNaQ0JJSkNBOElEZ1lIQkFJSEFRSUNCUUlEQWdFRUJnSUNBZ1VFQVFFQkFRZ0NCZ29JREFjRkRRb0ZCZ3dIQnhNR0JROEZEQTRIQmdZQ0FnSUVCQUlCQVFNQ0NRSUNCZ0lGQXdrSkJBZ1JCUVVRQWdJQ0FRRUVBd1FEQXdJSkJRVUlCUVVFQmdFQkJBVURBUVVFQmdjQ0FnSUJBUWNFQ2hBS0JBVUNDd0VCQWdJSkNnTUpCUWNJQmdVTEJ3UU1CUVlLQndjRUFRRUNBZ0VCQkFFQkFRRUNCQU1FQWdJR0F3Z0RBZ1VIQlFzSkJBZ1FDQVVHQXdVTkJRY01CUVVJQkFnR0F3a0pCQVVPQmc0RUJRSUhBd01DQXdNQ0JRRUNBZ0VDQWdFQkFnRUJBUUVCQVFJQ0FRTUVBZ2dFQWdRQ0F3Y0lBZ1FDQXdZQ0JRTUpBUUlKQ0FRUUV3MEpEUWdQRHdVQ0NBSUtCQUlKQVFrR0F3UUdCQWNMQ0FJR0F3WURBd1lEQWdJQkFRRUNBUU1CQkFFRUFnRUJBUUVHQWdNRUFRSUdBUUlORWdzSEJBSURCZ0lJQWdJR0NnVURCZ1FDQlFRSUJBTUdBd1FJQkFVTENBSUZCQVFOQkFzRUNBUUNBd1VDQmdNQ0JRTUNDZ1lEQlFVQ0F3RUJBUUlCQVFFQkFRRUJCUWdNR2d3SUR3Z0dEQVlJRFFjR0RBY0hEdjdSQndvQ0Jnd0ZBd2NEQkFrRENnSUhCQUVIQWdVSkJBSUNBZ0lFQVFJQkFRRUJBUUVCQWdFQkFRTUNBUUVCQWdFQkFRVUNBZ1lDQWdnREJnb0ZDZ01JRHdVS0J3Z0dEQVFHQ3dVTURBWURCQU1HQkFZRkFnVUpBd2NDQWdFQ0FnRUJBUUVDQWdFRkFnSUdBZ2dKQmd3RUJ3TUdBUUVDQlFJRkNnUUhDd0lBQ1FZQ0NRWUNBUU1FQWdJRUFnVUVBZ01DQlJRSEF3Z0RCQVVDQmd3SUJRa0ZEeUVRQ1JFSUZpc1JEZ2tGQ2hNT0h4RUZDZ1VGQ1FVRkN3VUZDQVVUS2hVRkNnVUxGQXNGQndVRkRRVUpCQUlDQlFJRUNBUUNCQUlFQmdVSkJBTUZDQUlDQkFNRUJ3SUVBZ0lFQXdJQkFRSUNBZ0VFQWdJRkJBa0ZCUVlEQmdFQ0FnTUNDUUlDQmd3SUJRb1JEZzBiRGdVSUJRc1NDd1VVQmdZRUFnVUNBUUVDQVFJQkFRWURCeEVLQ1FrRkJBMEVCQWdIQ0FJREJRSUxCQUlGQWdnREJ3WUNBZ1FEQXcwRkFnNEVEQlFJQ2dJREFnRUJBZ0lIRlFnRUNnRUNDQVVGQ1FNQ0NRVUVFQVVGQ1FNS0N3a0hCZ1VOQlFRTkRRMEdBZ01EQkFvQ0FnSUJBUUVCQWdnQkNnb0VCZ1FHQ3dnTER3UUVCd1VIREFnT0NnWUdCQUlEQ1FRSEFRRUdBd0lGQVFJQkFnRURBUUVCQVFRQ0F3UUNCQWdFQkFrRkRBTUNBZ2NHQmc0SEJRWUlGd3NJRUFzSUF3VUlCUWNMQ0FjSEF3c1dDd3NVQ2hZcEZBRUhBd3NKQkFZRUF3MEtBZ1FDQ0FZQ0FRSUdBUUVGQmdJR0JRRUZBZ01FQWdJQkFnWUNBZ1lGQndNREJRTUdEUVFFQndRR0N3VUtCQUlMQWdJSEVRWVFFd29GQndVREJ3TWFFUUlIQWc0SEJRTUdBd3dIQkFZREFnZ0NBZ3NVQ0FRREFnSUJBZ1VCQVFJSEFnSUNBUUlCQkFFQkFnRUJBUU1DQWdFS0FnUUNBZ01GQWdjRUF3Z0RBZ2tJQlFrREJRd0dBZ29GQkFVREF3Y0RBd2NEQmdzRkNBTUJBZ0lCQVFFQkF3RUJBU2NCQWdFQ0FRTUNBZ0lDQndnQkFRb0NEUTRIQXdnRUJBWUVCUXNGQ2hJS0VBNElDQTRJQnd3RkJBWUZCQWtGQkFjRkJBa0ZDZ2tGREFvREN3SUdCUVFIQVFNQkJBVURCd01GQ1FNSURRY0RDQVFKQWdnSUJBY1BCd2tKQkFvRkRCd0xCQVlGQnc4SEJRZ0ZCUWtGQlE4SERBUUlBd2NEQVFRSUJBVUZCUVFBQUFIL3h2OWdBaWdDbHdIa0FBQURGallYTWhZekZqWVhGallYTWhZM01qWXpGall6RmpZWEZnWUhCaFlIQmhRSEZBWVZCaFlWRkFZSEZCWVZGQllWRkFZVkJoWVZOalkzTmpZM05qWTNOalkzTmpZM0ZqYzJOak15TmpjV05qTXlGak15RmhjV0ZoY1dGaGNXTXhZV0Z4WVdGeFlVRnhZV0Z4WVdGeFlXQndZR0J3WUdCeFFHRlJZR0ZRWVVGUVlHQnhRR0ZSWUdGUlF4RmdZWEZBWUhCaFFIQmhZWEZoWVhGaFFYRmhZWEZoY1dGaGNXRmpNMk5qYzJOaWNtTmljbUppY21KZ2NHQmhVR0ZoY3lOaGNXQndZR0J3WW1KeVltSnlZbUp5WW1KelkzRmhZWEZoWVhGaFFYRmhZWEZCWVZGQVlYQmlJVkJnWUhCZ1lIQmdZSElpWW5KZ1luSmlZSEppSW5KaVluSmlZbkppWW5KaWNtSmljMEppY21KeVkwTlNZbUp5WTJOVFltTlRRM05qWTFOU1kyTnpRbU5TWTNOQ1kxTkRZM0pqVTBOaWNtSmljbUppY21KaWNtSmljbUlpY21KaU1tQmdjR0JnY0dCZ2NHQmdjR0JnY0dGZ2NVQmdjR0JoY1dGaGNXRmhjV0ZoY1VGeFlYRmhZWEZoWVhGaFlIRkNZaklnWW5JaVlqSWdZSEJnWWpCaVlqQmpRakJnWW5OalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOamMySmpVME5pYzBKalUwTmpjbU56UW1OelkyTnlZbUp5WTBKeVluSmpZbkppWW5OaVluTkRRbkppWW5KaVkxSmlZbkpnWW5KaVluSmlZbkppY21KaU1tQmljbUpqWUdDd1VFQmdVSURRZ0dCd1lJRmdrS0JnTUtCd1VORFFVQkJRSUNBUUVEQVFJQkFRSUJBZ0lDQVFFRkJRTURCd0lJQ3dVRkNnVUZDUU1IQ2dZSUJ3b0lCUVlPQXdJSEJRWU9Cd1lOQ0FzSEJRY0RCUU1DQWdRQ0FnSUNBd0lCQVFFQ0F3RUJBZ0VDQVFJQ0FRRUJBZ0VCQWdFREFnRUJBUUVCQVFFQkFnRUNBUUVCQmdJQ0N3c0NCZ01DQ3dVSERRVUtEQUlFQVFFR0JRSUdEd2NEQXdJTENBY0pCZ01HQWdJQ0J4SUdCUVVDQWdFQ0FnTUJCUlFJRGdjUEVBVUNBZ0lDQVFJQ0FRUURCQWtFQWdRREJRZ0tCQVlGQkFjRUJBWURCd1FCQXdZREJnUUNBd1VDREFRQ0JRUUpBZ0VHQWdFQkFRRUJBUUlEQVFFQkJRRUJBd01EQVFJREFRSUJCUUlEQkFJQ0JnUURCd1FGREFjUUJ3VVBJUXNFQndRREJRUUREUVVFQ0FRR0FRRUNBUVVCQWdFREFRSURBZ0VCQVFFQkJRRUJBUU1HQWdVS0F3c0VCQVlGQ0JZTEJ3OEhDQk1NQ0E4SUN3RUlEZ2dKRHdZRUJ3Z0JBZ29SQ0FnREFnTURBUU1DQVFnRUFnRUJBd0VCQWdFQkFRTUJBUUlCQWdJQkFnSURBZ0lEQWdFQkFRRUJCQU1DQXdVTEJRY0NBZ1VHQmdJR0JBVU9Bd2NDQlFnRkFnUUNsd0lDQVFRQ0FnSUJBUUVEQWdJQkF3RUNCUXNVQ3drRkJRWUdBd1FGQWdRR0F3TUdBZ01IQlFnV0N3b1VDd3NYREFFSkF3TUdCUVFMQlFJR0FnSURCUUVEQWdRRUFRRURBUUVCQWdZQ0J3TUJDQVlDQWdJRUF3TU9DQWNNQlFjTUNBb1REQVVNQmdrVUN3c0NBZ3dHQlFZTkJ4UWFEZ01GQXdrSkF3c0NEd1VJRHdrTEZnd0xHQXdEQmdNREJ3SUpCQUlOQlFFREFnSUVBUWNFQnc0U0RRWUNCd2NEQlFZRkJRTUNDeElFQndJR0JnTUZBZ1VEQWdJRUJBTUdCQUlIQXlBT0FRRUJCZ1VHQWdZRUJnc0pBd1lEQlEwSUNnRUlCZ01DQlFJRkJnRUNBUUVCQVFFQ0FRSUJBUVVDQXdFQ0FnWUNCZ1lEQ0FJSENBY0lEUVVHQmdZUkNBc1VDd1lMQlJvZUJ4SUhDdzRMQndVTkJ4RVNCQWNFQlFzRkZRNEpEd2dJRHdnT0N3Y0NCQUlDQkFFQ0FnUUNBUUlGQWdZREF3Y0NDdzhKQnhBSERRa0ZBZ2NFRkM4WkNBNElEaUVQQkFnREN3UUlCd1FJQXdnTkJRZ0hCUVVDQVFFREFnSUNCZ0VDQVFFQkFnTU9CQVFCQlFNQ0FRVUZCd2NDQWdZQkFnZ0NBaEF5RXdzVkNRTUdBd01JQlFjR0F3WUNCUWtGQndZRkNBOEtFeHdhTXhrTkdBc0dCZ01GQndVR0VBY0RCUVFFQmdNSEFRRURCUUlCQWdJQ0JBRUNBZ0VDQWdzQUFBTC8rZi81QU8wQ2ZBQXBBTWtBQUJNMkZoY1dGaGNXRnhZV0Z4WVdGd1lIQmdZSEJpTUdKZ2NHSmljbUppY21ORFUyTmpjMk5qYzJOaGNXQmhVVUZnY1VCZ2NHQmdjR0JnY1VGaFVHQmdjR0ZoY1dGaGNXRmhjV0ZoY1dGeFlXRnhZV0Z4WVdCd1lHQndZSEJpSUhCaVlqQmdZSEJnWUhCZ1lIQmlZSE5qWTNOalkzTmpjMk5qYzJOalUySmpVMk5qYzJORFUwSmpVMEppY21ORGMyTmpjME5qYzNORFkxTkRZbkppWW5KaWNtSnlZbUp5WW1KeVlHSnlZbUp5SW1KeVkzTmhZM05oWXpNall6TWpZek5qWTNGall6RmpZek1qWnpBdzRGQmcwRkJBVUNCUUVFQlFFR0Jnb0hDQU1JQ3dZRER3c0ZBd1VDQVFJTEF3WUJBZ0lJUWdFREF3RUJBUUlCQWdFRUFRSUJBUUlDQWdFQkFnSUNCd01FQWdFRUJBSUZBZ01LQlFnRkFRVUlCUWtFQnc0SUNRRUNEaFlLQ1E4SUFnWUNCdzBIQmdRQ0JnY0VBUWNFQndNR0F3RUNBUUlCQVFJRUJnVURDQVlDQWdJQkFRRUJBUU1DQXdnSkRRTUhBd1VHQWdRSEJBd0dBUVVJQkF3Q0Fob0pDUUVCQmdNQ0F3Y0ZCUWNEQ2dNQ0N3d0ZDeHNDZWdJREFRSUJBZ0lIQWdRQ0Nnb0ZFZ1FKREFJQkF3RUJBUWNDQmcwSUJnWUhEUW9GQndJQkFnS1lCUVlGQnc0SEJRa0ZFeThXQ3hVTEN4SUtCdzhJQ3h3TURCZ0xCdzRHQ3dFQkNBUURCZ0lGQmdVSkF3TUJBUUVDQWdFQkF3SURCQUlDQWdJQkF3RUNBZ0lNQkFJS0NBSUlCd1VPQndzT0J3Z1BDQVlOQmdnUUJ3VUhCUXNLQWd3R0JRMEdCUWNNQmd3RkNRVUZDd1lEQ0FRUENBc0tBZ1FDQWdVQkFnRUNCUUVEQlFNSEJnWUNBZ0lCQVFJQkFRRUJBZ0VCQXdBQy82VCtoZ0MxQW44QUlRRjdBQUFURmhZWEZoY1dCd1lHRlFZSEJnWW5KaVluSmlZM05qWTNOelkyTnpZMk56SVdGeklHRlJZR0J3WVdCd1lHQndZV0ZRWVdGUlFXRnhRR0Z4WVdGeFFHRnhZVUZ4WVdGeFlHQndZV0ZRWUdCeFFXQnhRR0ZSWUdGUVlXQnhRR0J3WUdCd1lVQndZR0J3WVVCd1lHQndZR0J3WUdCd1lqQmdZSEJnWUhCZ1luSWljbUp5WW1KeVluSmlZbkppWW5KalEzTmlJMU5qWTNOaVkzTmpRM05qYzJOamMyTWpjMk5qY3lGaGNXTXhZakZoY1dGaFVXQmdjR0J3WUdCd1lHSnlZbUp5WTBKeVkyTnhZR0Z4UVhGaFlYTWpjMk5qYzJOaWNtSmljbUppY21KZ2NHQmdjR0JoVUdGaFVVQmhjV0ZoY1dGeFlXRnpZMk56WTJOelkyTnpZMk56WTNOalkzTmpZM05pWTNOalkzTmlZM05TWTJOelFtTnpRMk5UUW1OVFVuSmlZbkpqUW5KalluSmlZMU5pWTNOalkzTkNZMU5DWW5ORFluSmpZMUppWTFORFkxTkNZMU5EWTFORFluTkNZbkpqWTFOQ2MwTmljbUppY21KaWNtSWljbUJpYzBOamMyTkRNMkZqYzJGak15TmpjeU1qYzJNamMyTW5vQ0JnTVFCUWdIQVFRTUVRa1ZEQTBKQlFNREFnSUJBd2tLQmdJQ0VRUUZDVEVGQWdFSEFnSUNBUUVDQVFFQ0FRSUNBUUVCQVFNQkFRRURBZ01EQVFJQkFnRUJBZ0VCQVFFQ0FRRUJBUUlCQVFFREFRRUJBUU1CQVFJR0FnSURBd01FQXdFSUF3b01CUWdPQ3dnZ0RRTUlEUTRJQXdJSkJRa0JBZ1lCQWdnQkF3SUJBZ0VCQVFFRUFnUUdCd3dHQXdjRUF3WUVCaEVHQXdnTUFRb0VBZ1FDQVFJR0FRTUVBZ2NUQ2dnREJRSURBZ0VMQ0FZQkJ3SUdBd2dHQWdJQ0JRY0NBUWdFQXdvRkJ3OElDQTBGQkFJQkFRRUJBUU1DQXdRSEVnZ0lEZ2dHRFFVR0NBUURCZ0lJQWdJQkFnRURBUUVCQWdFQ0FRRUJBUUVGQVFFQkFnRUJBUUlDQWdFREFRRUNCd1FCQVFFREFRRUNBUUVCQXdFQkF3TUVBUUVCQXdFQkF3SUNBZ0VEQlJNU0NBVU1CdzhLQlFzQ0NnRUNDQU1MQ0FRSUVBa0VDQVVJRXdnUEdBSi9Bd0lDQ1F3T0VnVUZCZ2tFQWdNQ0FnWUlCZ2NLQlFVRUR3Z0VBZ0lIQVFHUUNnUU1Ed2dHREFZR0N3WUpGUWdKQWdJTENBVUdDZ1VJRGdnRkNRVVdIUkFXSVJBWU54b0ZCd1FTRHdnSUR3Y0VCZ1FEQndNUkxSWUhEUVlGQ0FVR0NnVURCZ01EQndRTUJ3UUZBZ1FIQVFJSUNRY0VCUW9FQXdVQ0FnUUxCQU1DQmdjSUJnUUZCZ01OQndrS0FRTUdBd1FIQXdZRkF3VUdDQW9EQWdFQkFnRURBZ0lJQlFnQ0JnTUhHQVlPQXdVRkJBSVFBUUVJQXdNSEFRNFlCUWdIQmdjS0JBWUJDQUlKQXdjTkNRWUpCQU1FQWdJQ0F3TVFDUWdCQWdNSkJRVUxCQU1JQkFZR0NRNEdBZ1VDQWdNRkF3VUNBZ1lDQmdRRENBUUZDQVFKRkFzRkNBVUxGQW9PQmdvSEJBY0ZCUVlEQlFzR0hSSU5HZ3dNQlFJR0NRTUhEQVVIQXdFREJBTURCd01PQ0FVRkJ3TUtCQUlFQ0FNRkNnVUlFQWtGQndVRkNnVUhEQWNPR0FrR0Nna1NEQWtSQ0FJRUJBSUNCUUVDQmdFRkFRSUNBZ0lEQWdJQ0FRRUJCZ0FBQUFILzIvOVNBajRDclFITUFBQVRGZ1lIQmdZSEJ3WUdCd1lVRlJRV0ZSUUdGeFFXRlFZV0J4UUdGUVlXQndZR0Z4WTJOelkyTnpZMk56WTNOelkzTmpZM056WTJOelkyTnpZMk56WTJOelkySnlZbUp5WW1KeVltSnpZeU56WXlNellXTXpZV056WVdOek15TmpNeUZoY0dCZ2NHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndjR0JnY0dCZ2NXRmhjV0Z4WVhGaFlYRmhZWEZoWVhGaGNXRmhjV0Z4Y1dGaGNXTXhZV0Z4WVhGaFlYRmhRWEZoWVhGZ1lYRmhRWEZoWVhGaFlYRmhRWEZoWVhGaFlYRmpZWEZoWVhGakl6TWpZM05qY1dCaFVHQmdjR0ppY21KaWNtSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WTBKeVltSnlZbUp6WW1KeVltSnlZbkppWW5KaVluSmlZbkJqRUdCd1lIQmdZSEZoWUhCZ1lWQmhZWEZBWVhGaFlYRmhZWEZoWVhGaGNXRmhjV0ZoY1dCZ2NtQmlNaUppY2lCZ2NpSmljSElnWWpCaUlIQmdZSElpSW5KalkzTmpZWE5qWTNOalkzTmpZM05qUTNOalkzTmpRM05qWTNOQ1kxTkNZMU5qWTFOQ1luTkRZbk5DWTFOQ1kzTmpZbk5DWTFORFkxTlRRbU56UTJOVFltTlRRMkp5WW1KeVluSmljbUppY21KaWMyTmpjMk5qYzJOak0yRmpNeU5qYzJGamMyTmpjV05qTXlGcU1DQlFNRkN3UUVBZ01CQVFFQ0FRRUJCQUlDQVFFQkFRRUJCQVFDQXdZQ0JBVUNDZ0lMREFzRkN3VUxCUWtGQ0FFQ0JRZ0ZBZ1FCQVFRQkFoUUhCUVlFQkFjQ0FRb0ZCQWtGQXdjQ0VTTVFFUmNNSWdjT0JnVUxCUUlKQmdZR0RSUUtCUWtGQmhVSURRd0ZBZ1VFQWdZRERCRVhDd2NPQlFFRkFna0NBZ1FLQ0FFRkJRUUdBd0lJQWdJREFnRUdCZ1VGQ0FnREJRWUNCQVlDQkFJR0FnY0RBd1VCQVFnQkJBc0ZBZ01DQlFFSUJBSURDQVVFQ2dVRkNBUUZEQVVLRUFRSEF3SUJEU0lURkI0U0JRZ0ZFQWNJREFjQ0JRSUNBUUlDQWdJQ0F3RUNBUUlEQlFNREFnRUVBZ0VHQkFJRUF3RUZCZ01IQkFFSEFnVUVBd0lDQXdFRUFnSUNBZ01EQVFFQkFnWUNCZzBLQ2dnRkRRTUZEQVVCQWdNQkFnSUJBUUlFQWdjQ0JnZ0NCUW9GQndjSUF3SUhCd1FFQVFJSERBY0RCd0lLRWdvS0V3c05CQWdFRHh3UENCUUhBd2NDQVFjREFnWURCZ1lFQlFrRUVCWUVBUUVCQXdFQ0FRSUdBUUVDQVFJQ0FRRUJBZ0VCQVFFQkFnRUNBUU1CQWdJQkF3TUNBZ2dFQkE4TkNBb1RCUVVJQkFjT0NRTUhBd1FHQkFVTUJRMGJDd0lHQWdNR0JBUUdBcW9JREFnTUdBNE5CUW9JQ3hjTUJ3NEhFQjhPQkFZRkRpVVFCUWNFQ1JJSUNCQUpBZ1lDQWdZQ0FnVUNCZ0lJQ3djRUNRUUpCUW9GQlFJQ0JRb0hCZ01DQWhNRUJnZ0RBZ01DQWdFRUJRRUJBUUlCQWdJRUF3RUJBUU1GQXdNREF3VUtCUUlFQXdRR0JBc0tCUUlFQVFVR0F3OFNHQXNHREFjRkJBSUhBZ1FHRGdnR0JBb0ZCd1FERGdnRkNRVUVDQXdMRXdjSUJRb0VBZ2dEQ1FVSUJRSUtDd1VIQVFJSUJBSUlFQWtEQndNSUJBSUlCd01EQ1FJQ0FRSUJCUUVCQXdVSUR3b2FEUWdGQWdJRkJnSURBZ2NHQnhRTEFnUUNBd1lEQWdZQ0FnVURCQVVEQlFzRkNBRUJDUUVCRGdnRkNnSUJDdzBGQ3dNQ0NnVUNDQWdGQWdjQ0JBWUNBd2NDQndVREJ3TUVCd1FOR2dzSEJRTUhBUU1GQmc4ZURnTUdCQTBtREFjTkF3SUJBZ01GQVFJRUF3TUVBd01CQlFJQ0JnTUNBZ01DQVFFQkFRRUNBZ0lEQVFNQkF3VUJBZ0lEQVFZRkFnSUVCQWdLQ0FJSkJBTUhCQWNQQnhBZkRnTUhBdzhWQ1FZUEJ3VUxCUWtUQ1FzYUVBZ1BCd1lSQ2dRSEJBVUpCUThKRWdnSERBY0VDZ1VKQkFJUkVRWURCZ2NDQndjREF3WUdEUUVCQVFJQ0FRSUJBZ1FCQWdNQ0FRRURBUU1DQUFILzhBQUxBTVFDbXdDekFBQVRGZ1lIQmhVVUZnY1ZGaFlWRkFZSEZCUUhCZ1lWRkJZVkZBWUhGQllIQmdZVkJnWUhGZ2NHRlFZR0J3WVVGUllHRnhRV0ZSWVVGeFlXRnhZV0Z4WXlGUllHQndZbkpnWUhJaVlISWdZakl5SUdJd1lHQndZbUl5SW5OalkzTmpZek5oUTNOalkzTmpZM05qWTNOVFVtSmljMEpqVTJKalUySmljbU5qYzBORGMyTmpVMkp6WW1OVFFtTlNZMkp5WW1KeVkySnlZbUp5WW1KeVltTnpZWEZqWVhGaFlYTWpZek1oWXpOallYRmhZWEZqYWdBZ1FCQXdFQkFRSUNBUUVCQVFFQ0FnSUNBUU1CQVFFQkFRTUNBUUVCQVFFQkFnRUNBZzRIQlF3R0NBSUJCZ0lSQ3cwR0FnUUdCQVVMQlJVRUJ3VUdCUUlEQmdNS0JRRUlCUWtCQVFvQkFnWUNDUVVDQVFJQkFnVUNBZ0VDQVFJQkFRTUJBUUVCQVFJQ0FnSUJBZ0VCQWdFQkFRSUNDUVVOS3d3REJRRURDZ2NGQXdVTUJRUUhCQVFGQkF3YUVBVUpCUWNNQW8wS0V3c1hGaEVmRVJnR0RBVUZDUVFJRHdnSURnY0dEQVlFQmdRRkNBUUxFZzBPQ1FVUkJBMERDaFVMQlFnRkN4QUhBd1lEQ0E0RkJna0ZCQWtGQndFSkF3SUVBd0VEQVFFQkFnRUJBZ0VCQVFjR0JnTUZBd1lCQVFFQ0FnZ0ZDUVFKQlJBTkZ6QVpCUWtHQndnRERoRUlGU3NYQlFzRkJRa0ZCQW9JQkFNTEd3NEpIUTBGRFFnSkRRUURCUU1LRHdzQkJBWURBZ1VDQWdFQ0FRSUNBUVVDQVFNQkFRSUFBQUFBQWYvZi80RURGZ0hzQWpnQUFBRTJOamMzTmpjMk56WTJOellXTnpZMk56WTJOellXRnhZeUZ4WVhGaFlYRmhZWEZCWVhGaFVVQmhVVUZoY1dCZ2NVRmhVVUJoY1dGaGNXRmhjVUJnY0dCZ2NHQnhRVUJ3WUdCd1lHRnhZV0Z4WVdGeFlYRmhZWEZoY1dGak15TmpjMk56WTJOelkyTnpZM05pWTNKaVluSmdjR0ZqTVdOaGNHQndZbkppWTNOalkzTmpJWEZqWVhGaFlIQmdZSEJnWUhCZ1lIQmlZSEJnWUhCZ1luSmljbUppY21KaWNtSmljbU5pY21KaWNtTmpVMEpqVTBOalUxTmlZM05qWTNOalExTmpRM05EWTFOQ1kxTkRZMUpqWTFOQ1kxTkRZbkppWW5KaWNtSmljbUlnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjSEJnWUhCZ1lIQmhRVkJoWUhCZ1lIQmhZSEZBWVZCZ1lYRmpZWEZoWVhGak1XTmhjR0JpTWlCaU1HQmdjR0JnY0dCZ2NHQmljbU5qYzJOamMyTmpjMk5ETTJOelkyTnpZMkp6UW1OU1kySnlZbUp6UTJKelFtTlRRMkp5WTNOalFuSmljbUppY21KaWNtQmdjR0JnY0dCZ2NHQndZV0J3WUdCd1lHQndZR0J3WUdGQllIQmhRVkJnWVhGaFVXRmhjV0ZoY1dGZ2NHSWdjaUpnY2lCaU1HSmdjR0JpY2lKaU1pQmdjaUpnY2lCaWNtTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5EVTBKaWMwSmpVME5qVTJKaWMwSmpVMk5qYzJOaWMwSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbU56WVdNeklXTXpJMkZ6SVdNekkyTXpJV016STJOekkyTXpZeU54WTJGeFlHQndZR0J6WTJOelkzTnpZMU5qWTNOelkyTnpZMk56WTNOamMyTWpNeUZoY1dGaGNXRnhZeUZ4WVdGeFFXRnhZVUZ4WVdBWWdGQWdNTkNBVUtCZ1FJQXdvREFnc0dBd1VMQmhVY0NBc0JBUVlFQWdnQ0JBWUdBZ0VFQkFJQkFRTUJBd0VCQVFRQkFRSUJCZ01CQWdJQ0F3RUVBZ0lEQWdFQ0J3UUZBUUlGQXdnRkF3Y0xBd1lDQkFrRkNnc0ZCd1VGQ1FJSEF3WUJBZ0lEQXhZTkJnWUNEZ3NEQWhBSkV3TUlCUU1FQXc4aEJnY0RBUVVFQXdFRkFnTUpCUVVUQ0FzSEJBMEZBd1lUQ3hBTUJ3b0dDUWtFQXdjQ0FnSUJBUUlCQVFJQkFRRUJBUUVDQVFFQkFRSUJBZ0VCQVFFQ0FRSUNCQU1HQ2djSEZ3Y0RCd1FEQndJRkJnUUZDZ0lDQWdJR0FRRUJBZ0lCQVFRQkFnRUJBUUVDQVFJQ0JBSUJCd0lLQmdJTEJ3b0pBZ0lHQndZREFnUUpCUXNaREF3YkRRc1VDZ3dGQWdJRUJBTUpBZ2dCQlFVR0J3UUdBUUVDQVFNQkFRTUJBUUVDQWdFQkFRRUNBd2dEQ0FJR0NBWUdFd2dJQmdJUUR3Y0lDUVlCQWdVQkFnSURBUU1FQkFNQkFRSUJBZ0lCQ3dVRUFnNFFDQWNCQVFJSkJBVU9CUVFJQlFzYURnb1NDUWtSQ0FVSkJRc1ZDUVFGQWdNSkFnVUtCUVVPQ0EwSEJRMFJDQVFGQWdJQkFRRURBZ0VDQWdFQkFRRURBUUVCQVFVRkFRZ0NDQU1LQXdJRENBVURCZ01FQ1FRQ0NBSUJDQUlEQ0FJRkJ3UURCZ1FFQ0FRRUJ3TUdEUWdIQWdJSURRY0ZCQVVDQXdFR0JBRUdCUUlEQmc0SUJnSUJCd2NHQkE0SEJRUUtDUVlDREFRSUN3VUtCZ0lFQmdjREFnSURBd1lDQVFFQkF3R0xBd1VEQ2drRkRBa0VCd0lIQVFFR0FnRUNBZ0lHQXdNREFRRUVBZ1VDQlFzRkJBY0ZDQVlGRFFZRkNBVUtFQWdJRVFnSUVRa0pFUWdKRWdnU0loSUdEQWNORGdRSEJSRVFDQkVRQ2drU0NBc0VBZ1VEQ0FJQkF3SUJBZ01CQVFRQ0F3SUNBd0lHQmdnRUFnVU1CUVVLQ2dFR0F3VUhCUU1DQ0FvSkJnWUZDd1FHQVFJS0Znc0VDUVVGQmdRRUJ3VUZBUUVFQVFFQ0JBRUJDQUlJQkFRR0FnZ0hCd2tWQ3dzVUNnc1dDd29UQ0FVSUJSQU5EZ1lFQndRSUVnZ0lEZ2dGQndRRUJnUUtHZzBIQWdJR0RRWU1GUXNGQkFRRkJRZ09BZ01EQVFRQ0FnUUNBd2NFQlFZREFnZ0VEQU1JQlFRR0F3UUlCUmdmRUFRSUJBb1RDZ2dTQ1JjeUZRUUJBZ1lDQVFZRUFRVUZBZ0lCQVFFQ0JRRUNBZ0VCQWdNSEFnSUNCQUlGQWdJRkFnSURCQWNIRGcwSEJBY0VDaE1MQ0JRS0JRb0ZCUWtFQnd3SEhSNE9HZ3NVREFVR0JRRUZBZ0lEQXdRREFna1NDQWtPQlFRQkJnY0NBd1FEQlF3RUVpMHdNaFlGREFnTUR3VUtBUVVCQWd3SUJ3VURBUUlCQVFFQ0FRSUJBUUVCQVFJQkFRSUZBd1lFQWdJQkFnSUpBd1FGQWdZUUNBUUZCUVFRQlFnUUJ3MFdEd1FJQkFNSEJBc1hEQVFHQWdnUUNBa1NDQW9ORXhVSUF3VURCd01CQWdFREFnTUNBZ0VDQVFRREJRRUJCQUVDQVFFRUFRRUNCUUVEQWdJR0F4TXlHUVlFQXdNSUVBb0NCd0VCQ1FVSEJBWUZBZ0lDQVFNQ0FRTURCQUlEQmdZQkFnWUNCZ2tGQlFvRkJRZ0FBQUFCLy9QL1lBSlRBZ2tCNFFBQUJRWUdCd1lHRnhZeUZSWTJOelkyRndZbUJ3WUdKeVltTnpRM05pWTNOelkyTnpZV0Z4WVdGeFlXRnhZV0Z4WVVGUllXQnhRR0J3WVVJd1lHQndZaUJ3WUdCd1lHQnlZeElpWW5KaVluSmlZbkppY21OQ2NtSmljbUppY21KaWNtSmpVbU5qVW1OalUxTmpZM05qUTNOamMwSmpjME5qVW1OalUyTkRVMk5qYzJKalUwTmpVMkppY21OaWNtSmljbUp5WW1Cd1lHQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdjR0J3WUdCd1lHQndZR0J4WUdGUlFXRnhRR0Z4UVhGaFlYRkFZWEZCWUhGaFlYRmhZWEZoY1dNaGNXRmhjV0ZnY0dKaU1tSWlNbUJnY21CaU1pSmlNaUJpTUdCaWNtTmpjMk16WTNOamMyTnpZMk56WTJOelkwSnlZbU5UUTJOeVltTnlZMk5UUW1OU1kyTlNZbU5UWW5OQ2NtTkNjbUppY21KaWNtSnlZbUp5WVdNekkyTXpZWE1qSTNOaFl6TWpZM05oWTNGZ1lIQmhRSEJoWVZCZ1lIQmhZSEJnWUhCZ1lYTmpZM05qWTNOalkzTmpZM05qWTNOamMyTmpjMk5qYzJOamMyTWpjMk5qYzJGamMyTWpNeUZqTVdOak1XRmhjV0Z4WVdGeFlYRmhZWEZoWVhGaFlYRmdZWEZoWVhGaFlWRmdZSEJoWVZCZ1lIRmdZVkZCWVZGQVlWQmhZVkJnWVZGQllWRkJRSEZSUUdGUlFXRlJRR0ZSUVdGUVlYRmdZWEZoWVhGaFlYRmpjMk5qY21OamMyTkRVMkp5WW5KaVlDQ2dNRkFnTURCUWNCQlFnRUJBWUZBUVlDQ0JvTkFnTUNBZ0VCQWdnREJBVUlEd2NIRGdVQ0JRSUVCQUlDQVFFQ0F3SUVBUU1JQkFZREFnc0hDUUlIQWd3SkRnZ0xCZ1VGQndVSkFnWUJBUU1DQWdNQkFnTUJCZ1lCQXdFQkFRRUJBUUVCQWdFQkFnSUNBUUlFQVFFQ0FRRURBUUlEQVFnUURRa0JEaEVNQmdvRkJnd0lCUWtGQ2dRRUF3WUNDQU1DQlFJQ0JnWUdBZ0VDQWdjREJnd0ZBZ0lDQVFFQkFnSUNBUUVCQkFJQ0FnRUVDd1lEQmdRR0FnWUlBUWtFQWdZUEJ3UUlCQThwRWc4V0NnZ0NBZ1VKQ0FzTkJRRUpBZ2tEQ3dZSENBNEJEQWdEQVFFQkFRRUJBZ1FCQmdFQkFRRUNBZ0lCQVFJQ0JnVUNBZ2NDREFjRkJRY0lFZ1VIQ3dRRkNBVVZGZ1VGQlFjT0J3VUlCUW9WQ3dJRUFRSUJBd0VCQWdFQkFRRUJBZ0lDQWdFRUF3SUVDZ1FGQWdJQ0JRTUhEd2NIQWdJR0FnUUZCUWNEQXdvREFnVUlCQUlHQXdVS0FnUUlCQVFJQkFNSEJBY0dCdzBHQ1FrQkJnTUdDUVFDQXdJR0FRSUNCUUlCQVFJRUFRRUJBZ2NCQVFFQkFnRUJBUUlCQVFJQkFRRUNBZ0VEQWdFREFnSUNBaEFqREE0SUFRVUNBUU1IQlFVSURoSUNCd01IRGdnSUFRSUZBZ0lDQWdzQkFnWUtCd1VMQlFRS0JRa0ZEQVVLQWdJRkFnSUZCQUVIQWdVR0NBVU5DUWdOQndJRkJBb0JCQWdFQmdFSUF3SUJBUUVCQXdJRkF3TURCZ1VLQXdrRkFnSUdCUVFHQkFVUEJoQVNDd3NYQ3djS0JSY0RCUU1LRHdnS0RnWU1CZ01GQXcwTUJRZ1NDQTRkRGdnUEJ3UUhCQXNXQ2dNREJSY1FDQVFCQlFJQ0FnSUNBZ1VDQlFnRkJ3Y0RBZ1lEQ1FRQ0JBSURCZ2NHQXdVQ0JBWUVDQklJQ0E4S0JBZ0ZCUWdGQ0FvTkdRMEpGQWtJRVFjS0NBVUVCQU1EQkFJQ0JRUUVCd1FDQlFJQkFRRUJBUUlCQWdFREJRWUJBZ1FFQlFZQ0NBTUdCd01GQ2dZTkpCRURCd01IRFFZTEdoQUtCUU1FQndNTEV3OEtGUWdHQnhVU0NnWUNCUWNGQ1FVREJBUUhCUVVNQWdFQkFRRUNBZ0lCQVFJQkJRWUVCUWtGQ3dVQ0JRY0ZCZ29GQkFnRkNoSUpBUVVDQlFvRkJnRUNBZ2NEQ0JBSkNnSUNBZ0lFQndVRUFnSUhBUUlIQWdFQkFRRUNBUUVCQkFFRUFRTUdCUUVHQVFVQ0JRb0ZBd1FHQ3drRkJnb0ZDZ1VDRFIwT0NCRUlGaWtZQ2dJQ0JRWUVDQTBIQlFnRUF3WURCQWdGQlFjRkR3VUpCUVVNQmdZT0JnTUhBeElVQ0JRSEF3WURCQVlFRXdRQkJ3Y0ZDZ1VDQndNV0R3c0RCQUVBQUFBQUFnQWVBQU1CeWdJSkFMSUJqUUFBRXpJMk14WVdGeFlXTXhZMk14WVdGeFlXRnhZV0Z4WXlGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlYRmhZSEZoUUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ2NHQmdjR0ZBY0dCZ2NIQmdZSEJnWUhCZ2NHSmdjaUJpY2lKeVltSnlZbUp5WW1KeVltSnlZbUp5WUdKeVltSnlZbUp5WW1KeVltSnlZbUp5WTJKeVltSnlZbUp5WTBKeVltSnlZMk56WTJOelkwTnpZMk56WTJOelkyTnpZMk56WTJOelkzTmpZM05qWTNOallIQmdZSEJnWUhCaFFWQmdZWEZCWVZGaFlYRmhjV0ZCY1dGaGNXRmhjV0ZCY1dGaGNXRmhjV0ZoY1dNaGNXTXhZV056WTJGelkyTnpZM05qWTNOalkzTmpZM05qWTNOamMyTmpVMk5qYzJORGMySmljbUp5WW1OU1ltSnlZbUp5WW5KaWNtSmljbUlpY21KaWNtSmljbUp5WW1KeVltSnlZR0l5SUdCd2NHQndZVUJ3WVdCeFFHRlJZV0Z4WVdGeFkyTnpZMk56WTJOelEySnlZbUl5WUdCd1lXRmdZSEppWW5KaVkzTmpjMk5oWVdGeFlXRlFZR0J3WUdCd1lHQndZakJpWW5KZ1luSmlZbkpqUW5KaUkxSmlZbkppWW5KaVluQmdibEFRb0JDQVVDQkFvRkJBWURCUWtGQ1JNSkJRZ0VBd1lDQ1FjRUJBZ0RBd0lDQlFNQ0FnTUNBd0lCQ2dZQ0F3TUJBZ0lEQXdVRkFnSUNBUUlGQWdJQ0FnWUlCQVFDQWdRQ0JRSURDZ1VKQWdvRkN3d0dDZ1FEREFVRkJ3TUNDZ2tSQ0FVS0JnZ09CZ1lLQlFNSEF3a0NBUWtEQXdzRkFnSUdBUUlCQVFNQ0FnUUJBUUlDQWdJRUFnRUJBUU1DQXdVREFnRURCUUVIQmdRSUF3SUdCZ0lDQkFJQ0JnSUhBd2tXQ0FnUkNROEtYQVVHQXdJREFRSUJBd0lGQlFFQ0JRRUtBZ2tIQWdzSEF3Z0JBd2dFQkFnREJRa0NCQVlDQmdVRkRRVUlEQWNDQ2dJSkFnUUlCQVlFQWdNRkFnSUNBZ2NCQkFNRUJRSUNBUVVFQWdjSUF3SURCQU1DQlFJRkJBZ0VBZ2dEQkFFQ0FnSUNDUUlCRFFNRUNBTUlEd1VGQkFRTEJBTVBDUVFIQVFRQkFRRUJFQVFIQ0FVT0V3a0dEQU1EQWdNSkNRTU9CZ1VOQWdFQ0FnTUdBd1VEQlFZQkFRa0tHQllSQXdFRkF3UURCUWtLQlF3R0NBVURDQVVFQ1FJS0JBRUdBUWdDQXdzRUFnRUNBd1VEQWdVQ0JnTUJBZ0VCQWdFQkFRSUNBd1lDQWdJQ0FnSUZDQVVFQndNRkNnTUlCd1VFQ0FVTEJBSVhJZ3drRVE0ZEN3VU9CUXNLQlFrQ0FnVUhCUU1GQXdvS0JRZ0RBZ1FEQmdRQ0JBZ0ZDUUlFQXdnRUFnUUJBUUlCQXdFQ0FnTUNBZ1FEQWdRREJRUUNBZ1FDQ0FFQkJ3VUNDUVlDQXdVQ0FnWURCQVVGQndZQ0JRb0ZDeFVOQXdjQ0J4SUlHU1lQQ0F3R0NnVUNEZzRJQ3dZQ0NRVURCQWdDQWdFQ0JnSUpEUWdEQlFJRkJtY0tFd29GQ2dVR0RnZ1RMaFFIRUFRVkZ3Z01BUWdEQWdVRkFnc0lCQWNDQWdNSEF3UUhBZ1lGQVFVQkJRSURBUUVIQVFRRkFnY0VCZ2dGQ2dZRUJnY0NBd1VDQ2dJTEFnSU9Dd1VHREFZU0RBa1dFZ3NCQVFzVENRVU5CUTRIR0FVRUNBVUhBZ01HQWdRQkFRVUJBUU1DQXdZQkFRRUNBZ2tHQmdnSUFnWUlCQVVIQkJFYkN3UUtCQWtFQlFJR0JBSUhBZzRaQ2dNRUFRTUhCUXdNQ1FJQ0NBUUhDQXNSQndJQkF3Z0hCUW9GRlJNSEN3NEZCQVVDQlFFQ0FRRUJBUWNCQVFVQ0Fnc0NDUklMQ2dNQ0N4Y0xCQWNBQXYvWC9yTUI1d0lNQVhvQjh3QUFFeFFHQndZR0J3WVdCekkyTnpZMk56WTJOelkyTnpZMk56WTBOelkyTnpZMk54WTJOelkzTmpZM01oWTNNall6TWhZWEZqSVhGaGNXRmhjV0ZoY1dGaGNXRmhjV0Z4WVdGeFlpRnhZV0Z4WVdGeFlVRnhZWEZnWVhGQlFIQmdZSEJoUUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJpSUhCZ1lqSmdZbklpWW5KaVluSmlZbkppWWpKaVluSmlZbkppWW5GZ1lYRmhZVkZBWVZCaFFYRmhZWEJoWVZGQVlWRmdZVkZCWVhGaFlYRmhZWEZCUVhGeFlXRnhZV0Z4WVdGeFlXRlFZR0l5SW1CeUlHSXdZbUl3WUdCd1lpSXdZR0J3WWlCd1lpQndZR0p6WTJOelkzTmpZM05qWTNOalkzTmpZM05qWTNOU1kyTnpRbU56UTJOVFFtTlRRMk5UUTJKelFtTnpRMkp5WTFORFkxSmlZbkppWTFOalkzTkRjMU5EWTFOaVkzTkRZMU5EWW5OQ1kxTkRZMU5pWTFORFluSmpZMUpqVW1KalUySmljbUppYzBOalUwSmpVbUppOENKaVluSmlZbkppSW5KaWNtSXlZbUp6WVdOelkyTnpZVU16WTJOellXTXhZMk14WTJGeVltSnlZbUp5WW1KeVltSnlZaUp5WUdJeUltQndZR0J3WUdCd1lHQndZR0J3WUhCZ1lIQmdZSEJpSUhCaFFIQmdZSEJnWUhCZ1lIQmhZSEJnWVhGQllYRmhZWEZqSVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZqTTJGamMyTmpjMk5qYzJOamMyTnpZMk56WTJOelltTnpjMk5pY21KamNtSnFNR0FnUUZBUUVCQXdVRUF3c09Cd01JQXdJR0FnTUhBd2dCQ1FFQkFnWUNBd1lEQlFnR0NnWUNCd01EQkFRREJRUURCd01YRkFvSkF3VUNBZ01FQXdRQ0FRa0VBd0lCQmdFQkFnUUNBUU1DQWdFREFRSURBUUVCQVFJRUFRUUpCd01HQXdVRUFRVU1CUWNPQlFJRUF3SUhBdzRIQkFVS0JRVUlCQW9GQWdNTEJROEdCQW9RQndjQ0FRc0ZBd3NHQWc4S0J3RUJBUUVEQVFFQ0FRSUJBUU1CQXdJREFRSURBZ0VDQVFFREF3VUlBd3dHQXdVRUNRa0VEQWNIRGdjRkNBVUVCd01HREFVSUVBZ0lFd2dEQlFNSkJ3VUZDUVVFQkFJSUNBSUdBd0lHQWdZSUNBRUVBZ01EQVFFQkFRSUJBZ0VCQVFJQkFRRUJBd0lCQXdFQ0FRRUZBZ0VCQVFJQkFRSUJBZ0VCQVFFQkFRRURBUUlCQWdFQkFnRUJBUUVEQ1FvS0NRWUVEQUlDQWdjRENnUUpCZ0lFQVFZTkNBVUpCUXdCQ2cwRkJSVUZEeUFOREFuckJnY0VDZ1lFQWdRQ0NRWUNDUUlDRFEwSEJRZ0RBd3dFQ1FFQ0NRTUNBZ1lDQndvQ0JBSUNCZ0lIQWdFSUFRb0xBZ01CQVFFQ0FRRUJBUUVDQWdZQkFnZ0NCUU1DQkFjRENCRUlBd1VEQlEwRkRnMEVEQWdNQkFJTEN3TUxCd1FDQkFJSkJnSUNBd01JQWdJQ0FnVUNBZ0lCQWdFQ0JRSUtCUVVFRHhVTEVTQVBDQU1NRGdZQ0JRUUNCZ01DQlFJSEF3RUVBd0VDQWdNQkF3RUNBZ0lGQWdFQkFRTUJBUUVIRHdnSEJBWUdBZ01GQlFnQkFSQUVCZ01DQ1FFQ0NRTURCUVVGQlFjUkJRNFhFQWNJQmdRUkNBY0lBeFFrRWdnS0J3c0NBZ2dOQlFVRkFnSURBZ0VFQWdRRUFnSUNBZ1VCQWdFRkF3VUNBd1VHQkFRQkJ3RUNDQVFDQ2hBREJ3NElCUWtGQkFnRkRDQVBCUTBGQ2d3SENBSUNEQU1DQXhnR0N4a0xDQVVFQlFnRkRBa05CUVlJQlFNSUFnb0JCUVFCQVFFQ0FRSUJBd0VCQVFNQ0FnRURBUUlGQWdvRkFnWUVBZ1lDQWdVQ0JRNEVBd1lEQlFRREZBa1ZDUW9TQ1FjTUJ3VU1CUU1HQkFZTkNRa1NDd2NNQ0FrQ0F3VURBd2dGQkFvRUJRVUZCd1FSQmc0SERCSUlCUXNGQlFjRUF3WURBZ1lEQlEwSEFnc0dEQVVDRFFZR0N3VU5Dd2NGQ3dZREJRTURCZ0lOR0FVR0JRTUdBZ1VDQVFJQkJBTURBd1FFQlFFQkFRSUJBUUlCQVFFQ0F3RUNBUU9IQ2djRkRRY0VBZ1VDQlFFQkJBRUNBUUVCQVFJQ0NBSUJCQU1DQWdNQ0JRZ0NCQUlDQWdJS0FRZ0NBUWtQREJFa0V3Y05CZ29UQ2drVUJ3SUlBZ1VJQXdjQkJBY0VDQTRHQWdRQ0F3Y0NCd1FCQlFNQkFRWUhBZ2dLQmdRSEJRMFNCZ3NHQmdjSENCVUlIaFVyRkFzVUN3UUhBQUFBQUFJQUgvNnBBZzBDQWdGRUFiOEFBQUVXQmdjR0ZBY0dCZ2NHQmdjR0JnY0dCZ2NHRmhVVUJoVVVGaGNHRndZV0Z3WVdGUVlHRnhRR0ZRWVhGQVlWRlJZV0Z4UUdGeFlXRnhRV0Z4WVVGeFlXRnhZVUZ4WVdGeFlXRnhRV0J3WUdCd1lpQnlJR0p6UTJOelkyTXpZMk56WTBOelkyTnpZMk56WTJOelkyTlRZMk56WTJOelkyTlRRbU5UWW1OVFEyTlRRbU56WTJOelEwTnpRMk5UUW1OeVkwTlFZeEJnWUhCZ1lIQndZR0J3WUhCZ1lIQmdZSEJnWW5JaWNtSmljbkppWW5KaVluSmpRbkppWW5KaVluSmlZbkppWW5KaVluSmpRbkppWW5KalFuSnpVME5EYzBOelkyTnpRbUp6WTNOalkzTmpZM05qYzJOamMyTmpjMk5qYzJOell6TmpZM05qWTNOalkzTmpZek5oWXpNallYTWhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZWE5qWW5KalkxSmlZbkppWW5KaVluSmpZek5oWTNOallYTWpJWE1oWXpNallITkNZMU5EWW5KaVluSmlZbkpnWW5KaVluSmlZbkppWW5KaWNtQmdjR0lnY0dCZ2NHSWdjR0lnY0dCZ2NVQmdjR0JnY0dCZ2NHQndZWEZoWVhCaGNXRkJjV0ZoY1dGQmNXRkJjV0ZoY1dGaGNXRmhjV056WTJOell5TnpZM05qWTNOamMyTnpZMk56WTJOelkyTnpZM05qUTNOalkzTmpZM05qWUNDd0lFQWdrQkFnY0RDZ3dDQXdJQkFnSUJBZ0lFQWdFQ0FnSUJBUUVCQVFNQkFnSUNBd0VCQVFFQ0FRRUNBd0VDQWdFQ0FnRUJBZ1lDQmdzRkJ3RWNPUjBQS0JBT0NBUUdCQUlHQlFFRkFnY0JCd0lCQlE0RkFnUUNBd0lDQVFFQ0FnRUJBZ0VCQXdFQ0FnRUNBUUVDQmdNQ0N3VUNBUUlEQWhFSUVRa1REZ1VRQ0FnVkRBa1VDd2dLQlJBRkR3b0VBd1lCQVFZQ0F3b0VBZ0lDQkFJQkFnRUNBZ01DQVFFRUFnSUJBZ01DQVFFREFRRUJBUUlCQXdJQ0JnSUNBZ0lDQWdrR0FnTUpCUXNFQ0FRQ0JnTUdEZ2dIRUFjRkRBY0RCZ1FFQndNSEV3a0ZCZ1FGRGdjRkJRTUhCZ1FDQXdJR0F3SUZBZ0lDQXdJQ0JBSUZBUUlEQVFJREFnSURCQVlEQVFNSUJBd1dDZ1FQQ0FRUEJnVUpCZ2NPZFFJQ0FRRUdCQVlOQlFnREFRc0dCQVFKQWd3UkJ3VUlDQTBFQkFrRUJBZ0ZCd1FCQ1FVQ0V3OExBd0VFQlFJRkJBSUZBZ01CQVFJQkFRSUdBUUlDQVFFQ0JRRUdCQU1GRUFZTURBWU5BZ3dJQlF3SUF3c0lDZ1lDQmdRSUF3Y0pCUVVKQWdjREFnVUVCd0VGQXdJQ0FnRUNBUUgrQlFZRUJRSUJBZ1FFREFrRkJnd0dCZzBIREJzUERSd0xDQTRJQ1FJTEJRVUxIUTBMSFEwRER3VVVFZ2dRQ0NNY05Cd09JQTBJR1FrRkJ3VUZDZ01EQkFNREJnSUZDUVFKRVFnRUFRVURBZ0lDQWdRREJnSUNBZ1VGQkFNSEFRSUtBUUVGQndjRENBVUlBUUVEQ1FVSkVnd1RJUkVNQXdJV0p4SUZDQVVJRXdvRUJRUURDUU1GQ0FNSkV3Z1VFQTBLQ0FFQkFnVUNFUW9SQ0EwTkJRZ0VCQWdEQkFRQ0JnSUZBd2tJQXdJRUJRSUhBd0lIRVFrRENBTUtBZ0lFQndRRUJnSURCd1FJQlFVQ0JRUVREQXNUQ3dvRUJRZ0ZBd1VFQ2djRkVBY0VCd1FHQ0FJRkF3MEtCUVVMQlFvRUJRSURBUUlDQWdNRkFRRUNBUUlDQVFRQ0FRTUNBZ1FDQWdNRUNnWUZBd1FDQ0FNQ0NBRUNCUVFDQmdRQ0NSb01Cd01DQXdZREJna0ZDUUlDQ2dJQ0FnRUJBUUVCQWdYbUJnOEhDUkFHQkFnRkNSQUlDZ0VDQ2dZQ0FnUUNDUWtFQWdJQ0FRRUNBZ0lDQWdNQkJnSU5GZ29FQlFJSUJnVUlFZ2tURmhvVUJRa0ZEQWdLQndJR0NRVUVDQU1LQWdJSUNRUUpFd01DQXdFQkFRRUJBUU1DQmdJSkF3SUZBZ1FDQlE0RkF3Y0VDd01DQndRSkFnSUhCZ1FEQlFJV0dnQUFBZi9zQUFFQnV3SVFBWG9BQUFFbU5qYzJKeUlHQndZSEJoWVhGaFkzTmpZM05qWTNOalkzTmpZbk5DY21OQ2NtSmljbUppY21KaWNtSmdjR0JnY0dJZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHRmhVVUJoVVdCaGNXRmhjVUZCY1dGaGNYRmhZWEZoWVhCZ1lIQmdZSElnWWpJaVluSWdZbklpWW5KaUluSmlZbkJpWW5OalkzTmpZM05qWTNOalkzTmpZM0pqWTFOQ1kzTkRZM05DWTFORFluTkNZMU5EWTNOalEzTmlZMU5pWW5KaVluTkNZbkppWW5KaWNtSmljbUppY21KaWNtSmljbUp5WW1KeVluSmlJMU5qSVhGakl6RmhZek1qWVhNaFl6TWpZek1oWXpNall6TWhZek1qSVhGZ1lIQmhZVkZnWUhCaFFITmpZM056WTJOelkxTmpZM05qWTNOalkzTmpjMk5qYzJGamMyTmhjV0ZoY1dGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WUdCd1lXQndZR0J3WVVCd1lHQndZR0ZRWUdCd1lIQmlZSEJnWW5KaVluSmdZbkppWW5KaVluSmlZbkpqWW5KamMyTkRjMk5qYzJOalUyTnpZMk56WVhGaFlYRmhZWEZnWUhCZ1lIQmdZQlFnY0pBZ01HQ1EwRkNnUUZCUWdPR2dnRUNnTURDQU1DQWdFREJnSUNBUUVIQVFFR0F3SURBd0lFRUFnT0NBVUVDZ1VGQ0FVR0NnTUhEQWNJQVFJQ0F3SUVBZ0VDQlFNR0JRTUNCZ0VDQXdFQ0F3SUJBUUVDQXhZSUN3Z0ZBd1VNQWd3WkVBZ1BDUU1JQXdVSUJBY09CZ01HQXdVSkJBZ1VDQVFGQWdrSEFnb0ZBd2tGQkFjREFnZ0VBd0lEQWdFREFRSUJBUUVEQVFFQ0FRRUJBd0VCQVFFQ0FRTUZBZ0VDQWdNREFnTUNBZ1VFQWdVQ0RRWUZDZ1VQQWdvRkFnb0VCQWdDQkFjRkJBZ0ZDaFFLQXdjREJBa0VCQWNFQWdZREJSQUZBUVFCQVFFQkFRSUJBUVlDQVF3Q0F3RUZDUVFEQWdZREJ3Y0RDUWtFRFFjSkJBTUdFQXdGREFZRENBUUhBZ3NMQkFnUEJBSUJBZ2NEQVFJQkFnTUJBUUVEQVFFQkFnWUNBd1VJQ1FZRkJBTURCZ1VCQndRS0JRTUdBZzRLQlFVRkJRY1RBZ0lCQVFJQ0FRRUJCQUVEQWdJSUNBY0xEQWtFQndRQ0NBSUNCd1FDQXdJQ0F3RmNCUWNHREFvSkJnOEtGQVlGQndnREFRd0ZCQXNGQlFNQ0VSQUxCUWdEQmdJSkF3RUlDUU1FQndJREJnSURCQUlDQWdJR0FnUUVBZ1FPQ0FvRUFnSUdBZ1FGQWdRTUJRd1JDZ1lLQlFzWUN3b0NBaGxCRndVTEJnWU1Bd2dSQlFnRUF3SURCZ2dGQkFJQkFnRUJBZ0VDQWdJQkFnSUNCQUlEQndJR0FnSUhCUU1GQndRRkFnSUdDQU1FQ1FVQ0JnTURCd1FFQmdVR0RnZ0RCd01GQ1FVSkV3VUNCd1FPRGdZR0RRY0ZDUVVMSEEwRENBb1BDUVVMQkFJRUF3SUVBZ1VFQWdNQ0NRSUlCQVFCQXdFQ0FnRUNBUUlDQVFRSURBY0xGZ29JRHdnRER3WUlBUUlaQWdVRENRUUxCd1FEQ0FRSUNRUUhBd1VHQXdVQkFRSUZBZ0VJQXdJRUFnRUNDZ2dFQlFvRkFnWUNDaEVJRGhZTEN3VUNBd1VEQkFZREJBY0VCd1FFQkFrRkJRSUNBUUVCQWdFQkFnRUJBUUVHQVFJQkF3SUNDQVFEQndVUURnUUpCUU1HQXdnQkFRWUdCZ01DQVFFQkJnSUNBd1FKREFVREJnSUNCd0FCQUJuLzRBR3NBaWNCbGdBQUFSUUdCd1lHQndZV0J3WUdCd1lHQndZR0J3WUdCd1lIQmdjR0ZBY0dCZ2NHQmdjR0J3WUdKeVkyTnpZbUp5WW1KeVltSnlZbkppWW5KaVluSmlNaUJpTUdJZ2NHQmdjR0lnY0dCZ2NHQmdjR0ZCVVVCaFVVRmhjVUZoY1dGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGak1XTWhjV0ZoY1dGeFlXRnhZV0Z4Y1dGaGNYRmpVV0ZoY1dCaGNXRmhVV0ZCVVdCd1lIQmdZSEJnWUhCZ1lIQmlJSEJnY0dJd1ltSXlJR0p5SW1KeVltSnlZbkppWW5KaVluSmlZbkpnWUhCZ1lIQmdjR0J3WUdCd1lHSnlZMk5UWTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkwTnpZbU54WUdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZMk56WTJOelkyTnpZMk56WXhOalkzTmpRMU5pWTFORFkzTkNZbkppWW5KaVluSmlZbkppWW5KaUluSmlZbkppSW5KaVluSmlZbkppWW5KaUluSmlZbkppWW5KaUluSmlZbkppWTNORFExTnpZMk56WTBOelkyTnpZMk56WTNOalkzTmpZM05oWTNOalkzTmpZM05oWTNOaFl6TWpZWEZoY1dGak1XRmhjV0ZoY1dNaGNXRmhjMk5qYzJOelkzTmpZM05qY0JyQWNDQWdJQ0JRRUJBUVVDQWdFQ0FRSUNCQVlEQXdFQkJBRUJBUU1CQWdNRkJBUUNBZ1VCQlFFQ0F3SUVEUXNDQlFJR0FnY0JBZ2dGQWdZSkJBa0dEaG9KQXdjRkJ3TUNCQVVDQ2dZQ0JBRURBZ01CQWdJQkFnY0RDUUlCQXdrRERBNEZDZ1FDQ0FRQ0JBY0VCUXNHQXdnRUNRVU1BZ0lQQndVREN3b0dBZ0lHQVFFQ0F3RUJDQVVGQkFnR0FnZ0VCd01DQ2dVQ0RBWUtBUkVPQ0FVS0JRMGFDd2dRQ1FNSUJRVUVBZ1lEQXdVRkJnTURBZ1FDQ0FRRENBTUVBZ01FQXdZQ0FRSUJBUUlDQWdJQ0FRSUNBZ0lDQXdVRkFnWUNBUUVCQVFVS0FnSUJCQUlDQXdNQ0JRSUNBd0lHRHdnSENnWUZEd2NPR0E0R0RBZ0RDUU1ERVFNR0FRTUJBUUVCQkFFQ0FRRUJCQWtFQWdrS0N3c2JEQXdHQWdRR0JBTUlCQVFLQndnTUJ3UURCQVFHQWdJR0FnZ05CQVVDQWdjSEFnUUdBUUVDQmdJRUFRVUdCUUVHQWdNRkF3a0dEUW9EQXdVRUJRY0VEQVFDQXdZRENRc0hDQkVLRVJZTEFnRURCd1VGQmdJR0FnSUVCd2NFQmdNSENBY0JCUVFDQlFNQ0p3Z05Cd1VKQlFjREFnTUpCQUlLQXdRR0JBa1NDZ2dIQkFnRENBTUVCd1FHQ3dVUkNBSUhBUXdKQmdnVEN4YzBFUUlHQXdnREF3SUJBd0lCQXdNQkF3SUZBd1lCQXdNQ0R3VUlDQThKQXdZREJ3NEpDZ1lEQXdZQ0FnVUVCZ01CQWdNQ0JnUUNCZ0VDQ0FJQ0FnSURBZ0VDQVFNQ0FnTUJCZ0VFQWdVR0FRa0hBd3NNQmdZTEJnZ05DQ1FaRHdVRkRRWUVDQU1FQkFJRUFna0JCQU1DQWdFSUJBSUlCUU1HQXdRRkFnZ0RCQWtEQVFjQkFnUUNEQVlFQ0FRSEFnY0hBZ0VLQXdRSUF3Y0ZBZ2NKQndVTEJRZ1BDQkVmRUFnTkJ3UUpCQU1JQWhBWUNRY1BCd2dPQmdVSUJBUUlCQXNTQ0FJSUFnSUNBUUlCQmdJSUJBSUVBd01LQlFvSUJ3UUVDQVVLQlFJRkN3VURDUVVJQ2dVSEFnSUhDQUlEQkFNREFnRUVBZ0VCQWdFQ0FnUUZBd0VDQXdJQkJBSUhCZ01HQVFrTkJRZ05DZ2NOQndzR0RRWUdCUUlHREFNRkJnVUdBd1FMQWdnRUJBRUNBUUVIQWdNQ0FRRUJBUVFDQWdJRUJ3SUJBUUVDQkFNRENBRUVDQU1CQmdNR0N3b0NDUVVDQlFrQUFmL04vK01CVXdMT0FYMEFBQk1XQmdjR0ZBY0dCZ2NHRmdjR0JnY0dCZ2NVQmdjR0ZBY1dOaGNXRmhjV0ZoY0dCZ2NHQmdjR0l3WUdCd1lHSndZV0Z4WUdGeFlHRlFZR0ZSUUdGeFFXRnhZV0Z4WVhGaFFYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmpJWEZoWVhNakkzTmpZM05qYzBOamMyTmpjMk5qYzJKaWNtSmljbUppY21CZ2NHSWdjR0JnY0dCd1lHRlFZV0Z4WVhGaFl6TWpZM05qVTBKaWNtSmljMk16SVdGeFlXQndZSEJnWWpJaVlqSmlZbkppWW5KakkxSmpZM05DWTNORFluTmpZM05oWXpOallYRmhjV0ZoY1dGaGNXRkJjV0ZoVVVCZ2NHRmdjR0JnY0dCZ2NHQmdjR0J3WWlCd1lHQndZbUJ5SUdJeVltSnlZaUp5WW1KeVltSnlZbUp5WW5KalFuSmlZbkppWTFKalkxTmpZMU5DWTNOaVkxTkRZM05qUTNORFkxTmlZM05EWTNOaVkzSmlJbkppY21KaU1tSmljbU5qYzJGak0yRmpNMk5oYzJKalUwTmpjMU5DWTFKalluSmlZbkppWW5KaWNtSmljbUppY21KaWNtQmljME5qY1dOak15RmpjeU5qTTJNak0yTmpNV0ZqYzJNVFkzTmphYkFRUUJBUUlCQVFFQkFRRUJBZ0lDQXdJQ0FRRURFU01VQlFZRUZDVVNBUWdGQ0JJS0Nna09IdzhJRHdzRkJBRUJBZ0lDQVFFQkFnSUNBUU1GQXdJQ0FnSUJBd0lDQVFFQ0JnTUlCZ1FEQ1FRRUJnTUNCZ01GRGdnRkF3VUZDQVlDQndZQ0FRRUNBUUlCQVFNQkFRZ0NCQWNGQnhBR0JnSUNCZ1VCQWdJQ0F3SUJBUVlKQXdjRkJBb0NCUVVDQXdrQkJBd0VEQUlGQkFJRENnVVBCQU1IQWdVSUJBUUdCUVFDQXdJQkF3RUhBUVFGQkFRSkJRZ1BDQTRKQkFnRkNnUUNBZ0lDQXdJQkFRRUNCQU1EQlFnREJRY0ZGQk1EQlFNREJnSUZDQVVMQkFJS0V3Z0ZCUVVEQ1FRR0JBRURBd0lIQWdZQkF3Z0NBd2NCQWdFQkFRSUJBZ0VCQVFFQ0FnRUJBZ0VCQWdJSUV3b0RDQU1GQXdJSEF3b0hBd01KQkFnRkFnZ1ZDd1FCQVFFREFnRUJBZ1lJQ1FFQkVRa0ZDQVlGQ0FZRENBWU9DZ01IQXdnREFRZ1JDQUlHQXdNSUF3b1REUWdNQ0FzTkN3UU1Bc29GRFFZRUJ3UUVDQVVJRWdnSERBWUxHQTBIREFjTEZRa0JBZ0lCQVFFQ0FRTUZBd0lEQVFJQ0FnSUNBZ1FDREIwUUNCRUlEQVlFQ1JVTER4c0pCQWdGRkMwV0Rnb0dEd1lEQmdNREJ3SURBd01GQndJQ0FRSUNBd0VCQVFFQkFnSURCZ1FIQndVSUJnUUtCUVVKQlFrVUNRWU5CUVVKQWdNQkF3VUJCZ01DQXdvRENBSUpFd2tEQXdJREJRTU1Bd1FHQWdJRkJnVUNBZ1FUQ0EwSEJBVUJBZ01DQWdJQ0N3RUxEQVVGQ1FVTEVnc0JCQUVCQWdFRkFRSUZBZ29GQ0FjQ0FnY0VCd3dLQmd3SUJ3d0hFZ29JQ0JBSEFnVUNDZ1VCQWdFQ0FRRUJBUUlCQWdJQkFRSUdBZ1lCQVFRR0F3Z0dDQU1DQ3dnREJRd0lCQW9GQ3hFSUZ5a1VEUWdFQnc0SUNCQUhCQWNGRkNZUkNBNElDZ29FQlFJQkFnRUJBUUVCQ1FJQkFnRURBUUVDQVFjTkNBa1JDZzBFQndVSUVnZ05GZ2NFQWdFR0JRSUJBZ0lEQWdFQkFnVUJCUUlFQVFNQkFRSUVBUUlFQVFFQkFRRUNBUUVBQUFILzhmL25Ba1VCOXdGWEFBQVRCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lWQmdZVkZCWUhGQllIRkFZVkJoY1dCaGNXRkJjV0ZoY1dGaGNXRnhZV0Z4WVdGeFl5RnhZV016SXlOelkyTnpZM05qSTNOakkzTmpZM05qWTNOamMyTmpjMkpqYzJOamMyTmpjMk5qVTJKalVtTlNZMk56UW1OVFEwSnpRbU5UWW1OVFltTlRRMkp5WW1KeVltSnlZbU5UWVdOekkyTXpZeU56WVdNeFkyRndZSEJnWUhCZ1lIQmdjR0JnY0dGQWNHQmdjR0JnY0dGQWNHRmdjR0JnY1ZGaFlYRmhZWEZ4WVdGeFlXRnhZWEZqSVhGaklYQmlJaklpSUhCaVlqQmdZbkppWTFKalkxSmlZbkpqVW1KaWNHQmdjR0JnY0dCZ2NHQmdjR0JnY0dJZ2NHQmlNR0ppY21JaWNtSmljbUppY21KaWNtSmljbUp5WW1KeVltSnpRbUp6UTJOeVkyTnpZME56UTJOVFltTnpRMk56UW1OelltTnlZMkp5WW1KeVluSmljbUppY21KaWNpSmljbUpqVTJGak15TmpNMk5qYzJOaGNXTmpjMk1qTVdGdDhEQ3dVREJRTUpBZ0VIQ0FJSkFnSUZBd0lCQVFFQ0FRRUNBUUlCQVFFQkFRRUNBZ2dEQWdVREJnTUNDQVFJQXdJRkF3SVBGd2NEQndNR0R3VUdCZ2NEQVFjQ0FRSUdBd0lFQWdzRkJBSUJBZ0VCQmdFQkJBRUJBUUVCQWdJQkFRRUJBZ0lCQVFFQkFnSUJCUU1GQXdFSENnZ1ZDd1FIQXdVSkJBZ1FDQXdYQ3dRQ0JBSURBUUVDQndJQ0JnSUJBZ0lEQWdRREFnUURBZ0VDQVFVQkFRUUNCUWdFQndrU0NnY01Cd2tQRFFZRkNRb0JEeDBPQ1JNSkRRWUNEQnNPQkFJQ0FnSUNBUUlDQkFNREFnSUZDQVVPRFFZRUNBVUZDZ2dOQ2dVSUVBZ0pGQWdFQmdJQ0JnTUZDd1VKQkFJR0RnWUlBd2NEQVFNRUF3TUJBUUVCQWdJQkFnTUNBUUVFQVFFQkF3RUNBd0lDQWdRRkJnZ01FUU1GQkFRSkF3VUlBd01IQlFrRkF3WUNCUWtHQncwS0NRSUNCaEVFSURrQjd3WUVBd0lGQWdVREFRa0lCZ3dIQnd3UUNBVU1Cd1VLQlFZTUNBZ1NDZ2dOQ0I4WUN4TU1Ed3NGQlFnRkF3WURDQU1DQXdJSEFRRUZBUWNNQVFRRkFnTUVCZ0VIQVFJR0FnSUdBZ3dLQ1FFQ0F3Z0ZEUVlGRWhRSkNBc0xDd0lCQ2dRSERnZ0hEZ2dNRlFzQ0J3TUpBZ0lJQXdJSURnY0ZCUVVKQVFJSkNnVUZBZ0lEQVFFQkFRRUVBZ3NHQXdnQ0FnWURDd1lGQ2djRENBUURCUUlIQmdRTElBNElHZ3dNRmc0UkNBNElGekVYQ1EwS0JRTUdBZ01EQXdJR0JRc0JBd0VDRGdFTURnWUZCd1FFQmdRS0FnY05CUUlKQkFZTkJnOE5DQUlEQWdNR0FnUUJBZ1lCQmdJQkFRSURBUUlGQXdRQ0FRUUlCUU1EQ2dJQ0F3Z0NDQThJQ3hNTEZURVVDQlVJQlFnRUNBMEhDQThIQlFnRURnd0VDaElJQmd3REJRUUpCZ0lEQWdJREJBTUNBZ1FGQXdJQkFRSUJBUUlCQVFJQkFRRUJBQUFCLys3LytBSU1BZnNCVFFBQUV3WUdCd1lHQndZR0J3WUdCd1lHQnhZV0Z4WVVGeFlXRnhZVUZ4WVdGeFFXRlJZV0ZSWVhGaFFYRmhZWEZoWVhGaFlYRmhZWEZoYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMzTmpZM05qYzJOamMyTmljbUppY21JaWNtSmljbUp5WVdNeFkyTXhZMk16SVdNekkyTnpJeU54WTJNellXTXpZV014WTJGeFFIQmdZSEJnWUhCZ2NHQmdjR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhCaFFIQndZVUJ3WUhCZ1lIQmdjR0JnY0dCZ2NHRkFjR0JnY2lOaWNtSnlZMkp5WW1KeVltSnlZbUp5WW1KeVltSnlZMEp5WW1KeVkwSnlZbU55WW1KeVltSnlZMEp5WW1KeVltSnlZbUp5WW5KaVluSmlZbkppWW5KalFuSmlZbkppY21KaWNtSmljbUJpY21JaWNtTmpNV05qTVdOak15RmpNMk5qY3lNamMyTmpjMkZqYzJOamN5RmhjV0Z1UU1CZ1lPQndVRkRBWUxCQU1LQmdNREFRUUVBUUlEQVFJQ0FRSUJBZ0VDQVFJRUFnTUVBUUlCQWdJQ0FnTUhBd1lIQlFZQ0JBZ0VCQWNHQWdnRUJBWUZBZ01DQkFFQ0FnRUNBZ0lDQWdZQ0JRUUZBd1FJQWdJQ0F3UUZDZ2dFQmdJQ0F3UUVEZ01HQmdJU0VRZ0tCUUlFQmdVTkdRNEpFZ2tHQmdNRkRBVUlBd0lGQ3dJS0FnY0VCQVlGQ1FRRUJ3UUhDQUlGQXdNSkFnSUJBZ0lIQXdVR0JRRUJBUU1IQlFJRkFnUUJBZ01EQmdJQkJBWUVBZ1FDQmdFSUJRRUlDd01FQkFRQ0FnZ0NBd2NFQndFSEJBSU9BZ0VJQmdNQkFRSUZBZ0VCQVFJQkFnSUdBZ0VEQWdFQkJBRUNCQUVCQkFFREJRTURBZ0VDQWdFRUFnTUZCZ0VEQWdRQ0FnVUNBZ1VDQXdNQkFnRUNBZ0lFQVFJQkFnSU1CUWNFQVFVSEFnVUJCQVlFQWcwU0NBVUxCUWdQQ0FjUEJ3UUhCUVlPQmdjTUJnVUxCUVlMQWZNTEF3SUZBZ0lDQlFNRUJBTUtEUVlVSnhRS0NBVUhEQVlHREFjQ0JRUUlBZ0lEQmdNSUJBWUVBZ29JQlFVSkJRVUpCUW9TQ1JVUkFRc0ZDQkFJQnhBSENCQUlDQkFJQkFnRkN3WUVBZ1lFQkFrRUJRZ0dEQWtTQ0JFUkJBZ0ZDeGNPQ0FJQ0JRRUNCUUlHQVF3QkFRTUJBUUVDQVFJQkFnRUNBUUlCQWdZS0FnUUJBZ0lHQWdRQ0FnY0RCd1FDQkFJQ0NBUUVDUVVGQ1FVTEdBc0RCUU1MR1FzRkN3WUdCQVVOQlFrREFnWUtDQVVIQlFrR0JRb0pBd0lTRUFVSkJRWUVBd2tGQlFzR0NnSUJDZ01DQmdVT0VRZ0RBZ1VQQmdJSEF3VUpCUWNNQmdNSEF3TUlBd1lJQkFrSEJRRUhCQVVLQlFrQkFRSUhBZ01FQXdnUkJnVUxCUW9FQlE0R0JRZ0ZEQUVCQndjQ0JBUUdDZ1VGREFVRkNBVUhBUUVGQVFnRkFRRUJCQUlCQVFFQkFRSUJBUUVCQVFJQkFnRUJBUUFBQUFBQi85TC83QUxFQWcwQjJnQUFBUVlVQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZVUJ3WUdCd1lVQndZV0J3WUdCd1lHQndZR0J3WVZCZ1lIQmdZSEJoVUdGZ2NVQmdjR0ZBY0dCZ2NHQmdjbUJpTW1KaWNtSmljbUppY21KaWNtSnlZbUp5WTJKeVltSnlZbUp5WW1KeVltSnlZbUp5WTBKeVltSnlZMEp3WUdCd1lHQndZR0J3WUdCd1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ2NHQndZR0J3WVVCd1lHQnlJMkp5WW1KeVluSmlZbkpqWW5KaVluSmlZbkpqVW1KaWNtTkNjbkppWW5KaWNtSmljbUppY21KaWNtSmljbUp5WW1KeVltSnpZV016WVdNelkyTnpZV056STJOelkyRnhZMk56STJNeFl5RndZbUJ3WUdCd1lHQndZSEJoWUhGQVlWRkJZWEZoUVhGZ1lWRmhRWEZoWVhGZ1lYRmhRWEZoWVhGZ1lYRmhZWEZoWVhGaFlYTmpZM05qUTNOalEzTmpZM05qSTNOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOalUyTkRjMk5qYzJOamMyTmpjMk5qYzJOamMyTkRjMk5qYzJOamMyTkJjMkJoY1dGaGNXRmhjV0ZoY1dGQmNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGeFlXRnhZV0Z6STBOelkzTmpZM05qUTNOalkzTmpRM05qWTNOalkzTmpZM05qWTNOaWNtSmljbUppY21KaWNtSmljbUlpYzJNamMyTWpNMk5qTXlGak15TmpjMk5qY3lOak15TmpNeUZ3TEVDQUlGQ1FVSUJRSUZDZ1VLQXdJSkVBY0RDZ1FCQVFRRkFnRUJCQUVCQWdjRUFnTUNBd29DQVFJRUFnRUNBUVFFQVFFQ0FRSUNBZ1FDQWdRRUJRSUZBZ0VDQkFNQ0FnWUNBZ1VDQVFRQkJBRUNBZ0lDQmdJQkF3SUZCZ01EQXdRQkFnRUJBUVFCQVFJQkJRRUNBZ0VDQVFFQkFnY0NCUVVFQXdJRUNRWUhCQUlDQlFJRkJ3UUNCZ0lDQXdJRkNRSUdBd01EQkFFQ0NBSUNCUVVFQWdJTUd3MENBZ0VDQVFFREFnRUtBZ1FEQXdRQ0F3SUJBUUlFQVFFR0JBTUhCUU1HQ0FRSkJnTUpCUVlHQmd3R0F3Y0JBUWtERGdVQ0JRd0hDeFlMQ0JBSURCSUlDU01OQ2dNQ0RBWUNBZ3NDQnhNSUJBY0RDd01CQWdFQkFnRUJBUU1DQkFFQkF3RUJBUUVCQVFFQ0FRRUJBUUlHQWdJQkFnWU1CZ2NDQVFRQkF3RUhBZ0lIQWdFR0FnVUJBZ0lFQWdJQ0FnSURBZ01GQXdRQ0FnSUNCZ01EQWdFRUJBTUVDQVVEQWdFQ0FRUUNBUUlCQWdRRkJRRUJBZ0lEQWdZQ0FnUUNBUUVDQkFJQ0F3SUNBd0lHQWdJQ0FRSURCUVVJQkFJRkJBVUJCQU1CQVFFRUFRSURBZ0VCQkFrREFnWURCQVVDQVFFQkF3RUJCZ01EQmdRQ0JRTUhCUU1LQ0FFRkF3SURDUUlPR2c0REJ3UUdEUVlQSEE4REJnSUdCZ01EQ0FJS0JnSUNBZ1VDQlFRQ0JBTURCZ0lCQlFvR0VpSVJBd1lEQ1JvTEJRa0ZCd1lFRUI0UEJRMEdDeGtNQkFjRkRBWUVDQVVHQlFjSUJBUUhCUVVNQmdZTUJnY09CZ0lIQkFjRUNRY0RCdzRIQlFvRkJ3Y0RCZ01GREFZSUR3a0VDZ1VOR2c0TkhBNERCd1FEQndNSENBVUlGUWtCQ0FNREJ3TUVDQVFHREFjUkN3b0lCUThjRGdzSEJRUUlCUWdRQ0FVSUJBVUlCQVlNQlEwREJ3TUpBd0lLQXdJRENBSUpBaWhQS2dNSUFnWURCdzhIQlFrRkNCRUpDZ1lGQmdRRkNBVU1Cd2dGRmc0SkVRb0lEUVVDQlFRQ0JRSUVCQU1HQkFJQkJBZ0JBZ0lCQWdFQkFnRUNBZ0VDQVFFREFnSURBZzhEQXdVR0JRVURBZ1lSQ0JRSkJBY0VCQWdGQ3hJSkNnTUNDQXNGQlFjRkJRY0VBd1lEQXdVREJBY0RDQTBIQlFZREVDWVFDUU1DQ1FFQ0JBVURDZ2dFQ0FJSUJnWUhCQVFGQkFRSUJBUUhBd2dRQ0FvQ0FnVUlCUWdRQ0FzREFnZ1BDQXdYQ3d3Q0FnVUlCUXNDQWdRSUJBWUlBZ0VLQlF3YkRBY09DQVlSQ0FZTEJRY1BDQWdPQ0FnT0NBc0xCUVFHQkF3SkN4Z05CZzBHQndNTERnTUlBZ2NDQWdVTUJnUUhBZ3dXREFrVENnc2pFQVVPQmc4TUJBY0RBd1FEQWdRQ0JBWUNDUU1JQVFFQ0F3RUNBUUlDQVFFQ0FnQUFBQUFCLzhQLzl3SVJBZ0VCbmdBQUFRWUdCd1lHQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJoUUhCZ1lIQmhZSEJnWUhCZ1lIQmdjR0JnY0dCZ2NXRmhjV0ZCY1dGaGNXRmhjV0Z4WVdGeFlXRnhZVkZoWVhGeFlXRnhZeUZ4WVdGeFlXRndZbUJ5SUdJeUlVSXdjR0JpTUdKaU1HQmdjaUlnY0dCZ2NHQmljMk5qYzJOamMyTmpjbUppY21KaWNtSmljbUppY21OQ2NtSnlZbUp3WUdCd1lIQmhRSEJnWUhCZ1lIQmdjR0JoY1dGeFlVRnhZVU14Y1dGaGNHQmdjaUpnY2lCZ2NHSmlNaklnWW5KaVluSWdZSEJpWWpJaUluTmpJM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOamMyTmpjMk5qY21KaWNtSmljbUppY21KaWNtSmljMkppY21KaWNtSmljbUppY21OU1ltSnlZbkppWW5KZ1luTmhZM05oWXpOamMyRmpjMk5qY3lGak15TmpjMk1qYzJOamN5RmpNeU5oY1dCZ2NHQmdjR0JnY0dCd1lHRlJRV0Z4Y1dGaGNXRmhjV0ZoY1dGQmNXRmhjV05qYzJOamMyTkRjMk5qYzJOelkzTmpZM05qWTNOalkzTmpZbkppWW5KaVluSmljbU5qYzJGamMyTmpNeUZqYzJOak1XTWpjMk5qTTJGaGNXTmhjV05nSVJBd3dIRGhnTENBRUNEZ2tHQWdVQ0NBWURCZ01GQ0FRREF3TUVBZ2tMQlFjQ0FnSUdBZ1FFQWdZQ0FnRUNBZ2tDQWdzRkNRRUpCQUlDQndJREJ3WU1CZ1VMQmdrRkRBVVFCd2dFQ0FRQ0JRd0hCeE1GRFJBTEJBMEZDZ0VQQnd3SUF3Y0VDQkVLQ0JFSUJRa0ZCQWtEQ0FVQ0NoSUtBZ0lDQlJBSUJ3NElBZ1lFQWdVQ0JRSUxBZ2tFQWdvTEJ3Y0NCUUlDQmdJREFnSUVBd01JQlFJR0NBRUtBUW9FQkFJQkNnVUVDUVVFQndVUkhoRWFDaElKQmdzRkJBVUZCaEFJQnc0Q0FRZ0RDUk1MQ1JjTENnZ0VCQVlGQXdZRUF3VUNBZ01DQ3dnRUJnc0ZDQVFDQWdRQ0JRSUVCZ0lDQ0FRREJnTUZBZ0VGQ1FRRkJnVUJDQVVEQmdNRkRBY0hBZ0lIQXdVRENoQUdEUVlIR1F3SEJnY05Dd1VEQ0FVS0J3d0xCUWdOQlFZT0J3c1lEZ29TQ3dNSEJBVUhCQUVQQndzSkJBZ0xCUVlCQXdJSUJBWURCQU1EQXdFSEJBVUdBZ29LQmdvQkFnZ0ZCQWdCQWdVREJBWUZCd1lGQWdVTEJnSUdBd1lJQndNTUJ3VUpCd2dGQ0FrREJBY0NDQkFJQ0JJS0JRY0RDQWdFQnd3SEJRb0hDeHNMQXdnQitnWUdBZ1lMQ0FVREFRZ05Bd01FQWdZR0FnZ0VBZ2tGQWdRQ0JRTUNEZzBIQndJQkF3WUVDUU1DQ1FRQ0JnSUZEQVlJRFFVSUFnRUtBd0lDQndNRUJ3VVBDQVVMQlFnREJRc0ZFQWNCQWdVQkFnUUNBZ1FGQ1FJQ0F3RUNBUUlCQVFFREFRRUJBZ0VCQXdRTEFRRUdEd1VFQmdRS0RnZ0lEZ2dDQmdNREJnUUZBZ0lOQWdvREFnZ1RDd2tFQlFVQ0F3VURCQWdDQndjR0dBc0dBd1lCQVFVQ0JnUUNBZ3NCQVFFQkFRRUNBUU1DQVFRQkFnRUJBUVlGQVFNTEFnWUlCUVlCQWdJR0FnSUZBZ0lCQWdNSUJBc0tCUWdUQ3dzSEJRTUlBZ2NEQlEwSUJ3a0ZCUW9GQ2dNQ0JnNEdDQTRIQ3hRSUNBNEZDQXdGQ1FRQ0NBRURCUUlIQVFJQkFnTUJBZ3NCQWdNQkFRSUJBUUVCQWdFQ0FnRUJBUUVEQVFFQ0FnY0VBd1VHQWdRRkJRWURDd0lCQlEwSURBWUlCUWdCQWdzUEJRZ0VBZ3dOQlFZRkFnb0dCUW9DQVFJREFnY0lEQWdJQndRSERnWURCZ1FIRHdnRkF3TUNBd0lDQWdrQ0FRRUJBUUVDQWdFQkF3RUJBUUlCQWdFQkFRRUJBUUFBQWYvTi9uRUNBd0gyQXJrQUFBRUdCZ2NHSXdZaUJ3Y0dCd1lIQmdZSEJnY0dGZ2NHQmdjR0ZnY1VCaGNHRmhVVUJnY0dCaFVHRkJVR0ZoY1dGQlVHRmhVV0ZoVVVCaGNVRmhVR0ZBY1VCaFVHRmhVR0JoVVdCaFVHQmdjR0ZnY0dCZ2NHQmdjR0JnY0dGQWNHQndZSEJnWUhCZ2NHQmdjR0JnY0dCZ2NHSWdjR0JpTWlKaU1tQmljbUppY21CaWNtSmljbUppY21KaWNtSnlZbUp5WW1KeVltSnlZMEp5Y21OaWNtSmljbUpqVTBOalUxTkRRM05qWTNOamMzTmhZM05qYzJOamMyTWhjV0ZoY1dNaGNXRmhjV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFFHRnhRV0ZRWUdCd1l4QmdZSEJoUUhCZ1lIQmdZSEJpWW5KZ1luSmdZbkpqWW5KaWNtTmljbU56WTJOelkyTnpZekZqTVdGaGNXRmdjR0JpY21OaWNtSmdjR0J3WUhCaFlYRmhZWEZoWTNNalkzTmpZM05qUTNOaVluSmpRbkppY21KeVluSmlZbkppWW5KaVluSmlZbklpSW5JaVlqSWlJSEJnWUhCZ1lYRmhZWEZoWVhGaFFYRmhjV0JoY1dGaGNXQmhjV0ZoY1dGaGNXRmhjV0ZoY1dGamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk56WW1OelkyTnpZMk56WTJOeVkyTnpZME5UUTJOelEwTnpZME56WTBOelltTnpjMkpqY21CZ2NHQmdjSEJnWUhCZ1lIQmdjR0lpY21KaWNtSWljbUppY21KeVlqSmlZbkppWW5KalFuSnlZMkp5WW5KaVluSmlZMU5EWTFORFkxSmlZbkpqUTFOalkxSmlZM05EUW5KaVluSmlZbkppSW5KaVluSmlJbkpnWWpKaVluTmpZek5oWTNOall6TmpJek5qWTNOaFl6TXhZV014WTJOeklXRnpJeU54WXlGeFlHQndZR0J3Y0dGQWNHQmdjR0ZnY1VCaFVHRmdjR0JnY1VGaGNVRmhVV0ZoY1dGUllXRnhZVUZ4WVdGeFlXRnhZV0Z4WVdOelkyTnpZMk56WTJOelkyTnpZMk56UW1OelEyTnpZMk56UTJOVFkyTnpZME56WTJOU1kyTlRRbU5UUTJKeVltSnlZbUp6WVdNeFkyRnhZV016STJOellXTnpZV016WVdNellXQWdNRkRBVUpBd1lEQWdvTENRWUVBUUlDQ1FNQkFRRUJBd0lFQVFJREFRRUJBZ0VCQWdFQkFnRUJBUUlCQWdJQkFnTUNBZ0lCQVFNQkFnSUNBZ0lCQWdZQkFRWUJBZ0lGQWdVQkRRUUxBUWdCQVFrQkNnY0VCd1VGQlFnRUJRb0ZCUWdFQWdZRENoVUtCUWtGQndnR0J3a0dDd0lDQlFvRkN3b0ZCd1VNQ3dVRkF3SUZBZ1VEQVFFRkJRSUNBZ0VCQWdRQ0NRd0tDUUlCREFRTUN3VUlGQVlPRkFrREJnSURCd01NQ0FRRkFna0JBZ2dDQWdRSEFnSUdBZ1VJQkFJREFRRUJBUUVEQWdRRUF3SUZBUU1MQlFJRUFnNGtDZ3NCQWdrQ0FRY0JBUXdHQWdFQ0JRa0tCd1lLQkFJTEFRb0JCUUlCQlFjRkJBWUNBd0VEQWdZR0NRSUhCUVVDQlFJR0F3c1dDd2dPQ0FFSEFnRUNDUUVDQVFFRkJ3Z0JDQU1DQ0FJSUR3a0VDQVFGQ0FZRUNnVUZDQVFEQ3dJRUNBUUhDUU1CQ0FFQ0JnTUNBZ1VHQlFFQkJRSUNCZ0VCQ1JVS0JBY0VCQXNFQXc0RkNBNElBZ2dFQWdVQ0F3Y0NCQVlGQlE0RkFnVURBd2NFQXdjQkFnSUNCQUlCQWdFQkFnRUJBUUVCQXdFQkFRRUJBUUlDQVFFQkF3SUZBd0lHQWdFU0F3WUVDUUlDQ0FrSUZ3a0VDUVlGQmdVQ0NBTUtBZ2dEQXdZQ0FnWUNCUUVJQWdFQ0FRWUZBZ0lDQWdJQ0FRb0NBUUVDQVFVQkFRSUtCUUlGQXdJSEF3WUxDQU1IQWdvQ0FRWU9CUXNGQWdVSkJBd0RBZ1VJQkFnT0NBb0tCUklHREFZSER3Y0pCd01GQ3dVRUNRUUNCUUlJQmdJSEF3SUNDUUlDQVFJREFnSUNBUVFCQVFFQ0FRRUZCZ0lDQWdRQkF3b0ZCQVlEQVF3Q0JSQUZCeElHQXdVQ0JRTUJBd1FDQVFNQkFRRURBUUlEQWdNQ0FnRUJBUUVDQVFFQkFnUUVCd0lGQ2dRQ0RRY0ZDd1VIRFFnSERBZ0ZCd2dHQ2dVS0FRRVFHUUgwQlFrRkNBWUNDdzROQ3dRQkNnSWVIQWNNQ0FnT0NCRWdGQW9VQ2djRkJBVU5CZ3NYREFnYkJ3Y0tCUVVJQlFNS0F3UUhCUVVOQlFZS0JROEtCZ01HQWdvVUN3Z05DQTBIQXdnTEJ3TUlBZ3NFQWdzRkF3UUdCUWdDQWc4SENnRUVBd0VFQVFnR0F3UUZBd0lHQWdJQkFnTUJBUUVCQVFJQkFRTUNBZ1VFQlFJQkF3VUNCd2NFQmdVT0ZRa0hCUVFIQWdJS0NBUUREUTBIQlFZQ0JBY0VEd2NPQlFVTEJnb0xDUVlCQVFnQ0FnUUJBUUlGQmdJQkFnRUVBZ01IQlFFQ0NBRUJCQUlDQkFVRkFRVUNCUW9IQWdZREFnY0VCQVVEQkFVRUN3VUhCQWdDQWdRR0F3SUVBZ2dCQkFjQkFRY0JBUVVEQVE0UEF3UUVGZ3dNQ3dJQ0FRRUJCZ2dCQWdzSkFnb0RBZ0lJQlFNSkFRTUNCZ3NJR2dvRkF3VUNCd0VIQlFNREF3SUlCQkFIQ0FVSkF3MEZCZ0VFQkFJR0JBUUhCQUlFQWdJSUFRRUNBUUlMQlFrVEVRZ1NDQWdRQ2dNSUJBOE1DUU1DQlFnREJ3SUJDQWtFQWdRQ0F3VUNBZ01DQWdVRkFRTUNBZ01DQWdFQ0FnY0NBd29FQWdZREJBa0ZFUXNDQndJR0R3a0RDQVVFQ0FRSENBUUpHQWdRSEE0R0NnVUlEd3NDQndJTURnTVJCZ3dIQWdvRkNRSUNFZ01IQWdVRUFRTURBd0lCQXdJQkFnSUJBZ2NEQ0FJSEFnTUZBZ3NDQVFzREJnTUdDZzRUQ2djTkJnUUdCUU1HQkFjTkJRUU5CUWNNQ2c0Y0VRUUlCZzRjRGdVTEFnSUNBZ01DQVFFSEFnWUVBZ01CQVFFQkFnTUJBUUVCQVFFQkJBRUJBUU1CQWdJQkF3WUNDZ1lEQ1FNRkFnWVBCd1VQQ0FRSEJBc1hDd3NVQ3djUENBUUhCUXdVQ1F3TUJ3MElCQVlEQmdvSEJBZ0NBZ1lCQVFFQkFoRUlCQVFGQ0FnREJSRUhCUWNEQXdjQ0JRb0dDaElKQlE0RUN4Y01DeGdNQlF3SUNBSUNCQVlFRGhzTEJnVUREQWNGREFJQkFRRUJCQU1DQVFFQkFnSUJBUVFDQUFBQkFCei8vZ0cvQWZZQllnQUFBUVlHQndZaUJ3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJ3WUdCd1lHQnhZeUZ4WXpGaFl6TWpZM05oWXpOakkzTWpjMk5qYzJGamMyTnpZMk56WTNOalkzTmpZM05pWTNOalkzTmpZM05qWTFOaVlYRmdZVkZBWVZGQllIRkFZVkZCUVhGaFlWRmdZVkZCWUhCaUluSmlZbkppWW5KaUluQmlZbkppTUdKaWNtQmdjR0JnY0dJZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCaWNtSmljbUp5WW1OelkyTnpZMk56WTJOelkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTnpZeU5UWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOamNtSnlZbUp5WW1JeUlHQndZR0J3WWlCd1lpQndZR0J3WUdCd1lIQmdjR0JnY0dCZ2NHQmdjR05DY21KalUwTmpVMEppY21OeVkySnlZbUp5WTJKeVltTnpZV0Z4WVdGeFlXTnpZeU16SVdOelkyTnpZMk14WTJOellXTnpJMk16SVdNekkyTXpZMk54WVVGUlVVRkFHNUNCQUlDUUlCQndrRUNBRUJCd01DQ2hrTEFnTUNBd2NDQmdrREJ3NElCd01KQ0FVSUFRSUtCUU1NQXdZREF3Z0NCUXNJRGdzTUF3SUZEQVlEQmdJTUNBUUhDZ1FIQkFVSUJSQVBCZ3NGQ1FjRUFRRUZCUU1GQVFFQ0JBSUVBUUVDQXdJQkJRWUJBUVFDQXdFQkFRRUNCUUlHQXdVQ0JnTUVCd1VORFFRRkRRWUVDZ3dIQkJFZkVnWU9Cd2NMQndRR0JBa1VDZ1VKQlFVS0JRVUpCUXNGQWdnREFnY0VCUU1CQkFvR0JRa0VDQVlEQkFZR0N3VUpFZ29GQVFFRUJnVURCd1FHQXdJQ0FnSUNCQUlHQXdJUEJBSUVCZ1VDQWdZQkFnZ0dCQUlFQkFFRkFnSUhBZ2NGRFJFRUNRVUZDQVVGQ3dVRkNRVU1CZ01GQ3dVSUR3Z09JZ2dFQWdRQ0F3Y0RCQWNGQWdJQ0NnRUJBd0VCQWdFQkFRTUJBUUVCQVFFQ0FnWUZCQVlEQlE0S0VCY09Ed3NGRXhRTENoUUtCZ3dMQXc0RUNoUUpCUWdGQ3dRQ0JBY0VDaFFLRGdHakJRVUlDQUVHQndNR0FnRURCZ01NR0E0RkFnSUdCUUlLQ0FVSkV3Y01Bd3dPQmdzR0F3NEtCUklGQ1FVRkJ3VUZBZ1lCQWdRQ0FRRURBUUlCQWdFQkFRRUJCUUlFQkFnTUJ3TUJDZ2dGQ0FNQ0JBZ0ZDQkVHQlFvRkFnc0JBZ3dGQlFnRURoMFBCd3dHQlFjRkJRZ0VDUklJQ1JJS0JBSUJBUUlCQkFJRUJRSUZBUUVCQWdFQkJBSUNBUUVCQVFFQkFRRUJBUUlEQVFJQkFnSUNBZ1FEQVFrSEJBOElDUVFDQ0FvRkF3Y0VDQVFFQXdnRkNnVUxGZ3NHQWdFRkNRTUZDUVVJQkFJQ0JRTUNCQUlLQlFJU0NRRUdDd2tCQWdnREFnc0lCUU1HQWdVR0F3SUhBd2dMRGdRQ0FnRUJBd01CQVFRQkF3RUJBUUlGQXdVSURnWUhCZ1lGRWdnTEdBc0ZDQVVJQ2dRRENRSURDQVFMRUFnRkNBOFZDd1VKQlFzV0NnY0tDQUlGQWdRSEFnTURBUVFDQVFFQ0FnRUJBUU1CQWdJQ0FRRUNBZ1FDQWd3R0Znc1ZBQUFCQUNqL3VnRGFBeUVCRGdBQUV4WVdGUVlpQndZR0J3WUdCd1lIQmdZSEJnY1VCaFVVRmhVV0JoVVdGaGNXRkJjV0ZoY1dGaGNXRmhjV0ZoY1dGQmNXQmhjVUZoVVdCZ2NHQmdjR0JnY0dCZ2NXRmhjV0ZoY1dGaGNXRkJjV0ZnY1VCZ2NHQmdjR0JnY0dGQWNHQmdjVUZBY0dCaFVHRmhjVUJoY1dGaGNXRmhjV0ZoY1dNaGNXRnhRR0J3WW1KeVlpSnlZbUp5WW1KeVltSnlZbUp5WW5KaVluSmlZbk5EWTFKaVkxTkRZMU5qWTNOalEzTmlZM05qVTJOaWMySmpjMk5qYzJOVFUwSmljbUppY21KaWNtSWljbUppYzBKamMyTmpjMk56WVdOelkyTnpRMk56WW5OQ1luSmlZbkppWW5KaVluSmljbUpqYzJOamMyTmpjMk5qYzJORGMyTmpjMk5EYzJOamMyTmpjMk5qYzJOamMyTmpjMk5zMENDd1FMQkFRSUJBWU1CZzBEQ0FJQ0NRRUNBZ0VDQVFJQkFRRUZBZ0lDQndJREJBSURCd0lDQWdNQkFRSUJBZ1VEQWdFRENBVUhEUW9HQlFVQkJBSUNDQUlCQVFFQkFRSUNCUU1DQXdNQkFnSUJBd0VCQVFFQ0FnRUJBUUVHQlFJSkJRMFFCd2tFQVFZRURRVUpEd2NFQ0FNQ0JBTURCd0lFQlFVTEFnSUtDUVFEQWdVREFRSUJBd0lCQWdJQkFRTUJBUUlDQXdJRUFRSUJBd0lEQWdFQ0FnSUVCd1FIQWdJREJ3SURBd1VIQkFzR0NRSUJCd1FEQ0FJREFnSUJBZ01CQ0FVQ0JRUUNBd01EQndNQkFnSUJBUUVDQWdJRkFRSUVBZ1VDQkFVRUFnZ0VBd2dEQlFnREF3WUVDZzRESFFVTkJ3VUVCUU1DQXdvRkNRTUtDUVVVRlFRRkFnSUhBd01HQWdNSEJBUUhBd2tMQlFVS0JnVU1CZ2NOQ0FJRkJRWUVBZ2dEQXc0UUNnVURBZ1FLQlFnT0Jnb0lBZ1VKQlFVSkJRTUpCUVVKQlFNR0JRa0ZCQXNGQXdVTEJnWUtCUVVNQlFjTUJSQWZEZ29RQ0FvWkJRSUlBd2dCQWdRQkFnWUlEZ1VCQXdJQ0FRSUVBZ0lCQWdJSEJBY0NBZ29NQlF3S0R3b0lBd2NDQmd3SUF3WUZDUlVKQnd3R0NBTUNDUUlHRFFVR0R3Y0ZCZ1VRQWcwQ0J3SUZCd1FEQ0FVSEFRUUJBZzBYQ1FJQkFnY0VCd0VCQndZQ0JBWUZGQXdEQ0FRRkNBSU1CZ1VKQlFjSkR3MGFFQVVLQlFVS0JRVUpCQXdFQWdJRUFnVUVBZ01JQWdVSUJBUUdCQUVCQWdJRkF3TUlBQUFCQURiLytBQ1dBdThBclFBQUV3WUdGUVlXRlFZV0J3WUdGUVlXRlFZR0ZSWVVCeFFHRlJRV0ZSUUdCeFFHRlJRV0ZSVVdGaGNVRmhjV0ZCY1dGaGNXRkJjV0ZCY1dGaGNHSWdjaUJpTWlKaU1pSWdjR0JpY21OalUwSmpVME5qVTJOeVkyTlNZbU5UWW1OeVkyTlRRbU5UUTJOVFltTnpZMk56UTJOU1kyTnpZMU5qWTFOalExTkRZMUpqWTNKaVkxTkNZMU5EWTNOQ1kxTmlZMU5EWTFOQ1luSmpZbkpqWW5OQ1kxSmpRbk5pYzJIZ0kzRmhZWE1qS1FCUUlCQVFNQ0FRRUNBUUVCQWdFQkFnRURBUU1CQWdFQkFRRUNBZ0VDQWdJQkF3RUJBd0lIRWdzRENBTUNCZ01EQ1FVQ0NBUUVCQUVCQWdFQ0FnRUNBUUVGQVFNQ0F3RUZBUUlCQWdJQkFRRUJBUUlCQVFFQ0FRRUJBUUlCQWdFQ0FRRUJBUUVCQkFFQkFnRUJBUUVFRHhFUUJRTUVBZ01IQXVBTUJnTUVCZ1VIQWdJSERBWUpFUWtGRFFZT0VBZ0RFUVlFQ0FVVU5oY1VLUlVMR0F3WkVTZ1NDaEFMQ3h3TkJnMEZCQWtIRFFnRkNCQUlCd0lDQVFFQkF3TUVDQU1GQ0FRREJnTUxFUWtEQVFZTkJoVWdDd29FQWdNSEJBVVZDUXNWRGdnUENBOExCUVlQQkFNTUN3VUNCUW9GQXdZQ0RRY0REd29GQmdzRkJRa0ZBd1VERHdnRkF3WUNDaE1JQ0FzSkZCa01Bd2NEQnc0R0NRSURBUUlEQVFJRUFnQUFBQUVBRlArNkFNZ0RJUUVGQUFBVE5oWVhGaFlYRmhjV0ZoY1dGaGNXRmhjWEZoWVhGaFlYRmhZWEZoWVhGaFlWRmdZSEJnY0dCZ2NHQmdjR0J3WVZCaGNXRmhVV0ZoY1hGaGNXRmhjV0JnY0dCZ2NHRmdjR0JnY0dCZ2NHQmhVV0loVVdGQmNXRmhjV0JoY0dGaGNVRmhVWEZoUVhGaFlYQmhZVkZBWVZCaFlWRkFZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJpSUhCZ1luSmlZMU5qYzJOak0yTmpjMk5qYzJOamMySmpVMk5pY21KeVkySnlZbUp5WW1KeVltSnlZbUp5WW1OU1kyTnpZME56WTJOelkzTmpZM0ppWW5KaVluSmljbUpqYzBOVFltTnpZME56WTJOelkyTnpZMk56WTJOelkwTnpZMU5DWTFORFkxSmlNbUp5WW1KeVltSnlZbUp5WW1KeVlpSnpRMklnb09CUW9HQkFRS0JBZ0VBd2dDQkFRQ0J3VUVBZ01CQVFNREFRRUJBZ0VEQWdVRUF3TUNCQUlHQkFJSkFnUUNBZ01IQXdRRENRd0VEUWNGQkFNQkFnZ0NCd0VCQ0FjREF3SUJBZ01DQWdRQkFRTUNBZ0VFQWdJQ0FnTUJBUUlCQWdFQ0F3RUNBd0lGQXdRRkNRVUlCUUlFQmdNQ0NBTURCUUlDQ0FRSER3a0VEZ1FHQ1FJQ0J4RUZEUWdDQmdZQkFRRUJBZ0VDQVFFQkFRRURBUUlCQWdFREFnTUNBZ1FEQVFFQkFRRUNCd0lGQXdVRkF3Y09Cd1FJQXdRQ0JnSUJCQUVCQkFJREJnTUNCQUlEQmdJQ0JBRUVBUVFCQWdFQkFRVUdBd0lJQXdJT0RRWUVCd0lHQ3dVTUF4MEVDQUlFQlFJQ0FnUUdCQVFJQlFJSUFna0ZCQUlLQVFJSkNRVUZDZ1VGQ2dVUUdnMFBDUWNGQkFvR0F3NEtDZ1VNQ3c0R0JBSUdBZ2tHQWdnQkFna1hEUUlCQVFZQ0FRY0lBd1FIQlFJSEFnc0NDd1VDQlFZRkJ3OEdCUTBHQ0FFQ0RRWU1Cd2tWQ0FZR0F3Z01CZ0lIQXdnS0JSUU1CUVlMQlFnQkFnUUhBZ0lCQWdJRUFnRUNBZ01CQlE0SUJRTUNBd0lCQWdrSUFnVVpDZ2dRQ2c0ZkVBb09CUXdGQlFvR0Jnc0ZBd1VEREFVREN3WURCUWtGQlFrREJRa0ZDUW9DQ0FNTkRnZ0ZDZ1FJQWdvUURna0NCUVFDQ1FVQ0NBMEhCZ3dGQmdvRkJRc0RDUWNFQ2dRQ0JnTURCd0lMRkE0TUNRTUpBZ0lMQ2dNQ0F3TUdCUWNOQUFFQUZRRVJBWWdCZ3dCMkFBQUJIZ01IRkFZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZakppWW5KaVluSmlZbkpqVW1KaWNtSmljbUppY21CZ2NHQmdjR0JnY0dKZ2NHSnlZbUp5WW1KeVltTnpZM01ENENOekkyTXpZeU56WXpOaFkzTmhZWEZoWVhGaFlYRmhZWEZoY1dGaGNXTkRNeUZqTXlOamMyTmpjMk5nRnZBZ2tJQmdFTUJBY0RCUVFIQkFRTUFna0lCd1VJQndRSUJ3d0xDQVVIQlFVS0JRc0dCUUlFQmdRS0FRSUREUVVJRUFnRkNBWU1Bd01NQWdJRUFnRUVBZ01DQXc0RkJ3c01CQUlMQWdrRkF3a0NBdzRHQlJZRkJnd0lDQVFDQXdVRENRa0RCUVVMQVFFT0F3c1NEQVFIQkFrSUFYc0VDZ3dMQmdRR0FnVUVBZ0VIQWdJR0JBRUdBZ0lDQWdFQ0FRRURBZ0lDQWdnQ0FnRUZBUUlDQlFJREFnRUNBUUlEQmdRQ0J3SUpBUU1DQlFNR0JBSUtBZ2tLQWdRRkJRWUhBUWNGQVFVQ0FRSUJDQUlDQndJQ0JBRUJCZ0VDQlFJREFRTUNBdzhDQWdZQ0Jnci8vLy9MLy9NRFFRT1FBaVlBTndBQUFBY0FvUUREQU0wQUEvL0wvL01EUVFOMEFHNEM5Z01ZQUFBQkp5Y21KaWNtTkNjbUp5WXhKaWNHQmhVR0JnY0dCZ2NHQmdjSEJnY0dCZ2NHQmhVR0JnY0dGQWNHQmdjR0JnY0dCZ2NHQmdjR0ZBY0dCZ2NHQmdjV05oY1dGaGNXTmhjeUZqTXlOak15RmpNeU5qYzJOamMySmljbU5DY21KaWNtSmpVMEppY21KaWNuSmlZbk5DWVRGaFlYRmdZSEJnWUhCaFVHQmdjR0JnYzJOamMyRmpjMk5qYzJOamMyRnpZV0Z3WWlCd1lHQndjR0JnY0dCZ2NXQmhVVUZ4UVdGeFlXRnhZV0Z4Y1VGaGNXRmhjV0ZoY1dGaGNXRmhjV0Z4WVdGeGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGQmNXRmhjV0ZoY1dGaGNYRmhRWEZnWVhGaFlYRmhZWEZoY1dGaGNXRnhZV0Z4WXlGeFlXRnhZV0Z4WTJGd1lVSXlJbUl5WUdCd1lpQnlJR0l5SUdCd1ltQnlJR0l3WUdCeUltQndZR0l5SW1JeUlHSXlZR0p5SW5OalkzTmpZM05qYzJOamMyTmpjMk5qYzJNelkyTnpJMk56WTNOalluSmpZbkpqUW5KalFuSmlZbkppWW5KaVluSmlJakppWWpJZ1lqQmdZbklnWW5JeWNtQndjR0lpTWlKZ2NHQmdjR0JnY1VGaFVVQmhjV0Z3WVdGUVlHRnhZV0Z4WVdGeFlXRnhZV0Z4WVdCd1ltSXdZaUJ5SUdJeVlHQnlJbUp5WUdKeUltSXlJR0l5STBJd1lHSXlJbUl5SUdJd1lHSXlZMk56WTNOelkyTnpZMk56WTJOelkyTnpZMk56WTNOalluTmpZM05qWTNOalkzTmpZM05qWTNOaVkzTnpZMk56WTJOelkyTnpZMkp6WTJOelkyTlRZbUp6WTJOelkyTnpZM05qWTNOalEzTmpZM05qWTNOalkzTmpRM05qYzJOamMyTmljbUppY0dKaWNtSWljaUpnY0dCZ2NHQndZVUJ3WUdCd1lVRnhRR0Z4UVdGeFlYRmhZWEZoWVhGalkzTmpZM05qWTNOalkzTmlZbkpnWUhCZ1lIQnlZSE5qYzJOelkyTnpZMk56WTJGeFlXRnhZV0ZRWUhCZ1lIQmdZSEJqTUdCZ2NHQndZaUJ3WUdKeVltSnlZbUp5WW1KeVltSnlZbUp5WW1OelkyTnpZbU56WTJOelkyTnpZMk56WTJOelkyTnpZV016STJOellXTXhZMk16SVdNellXTXpJV016TW1KeVltSnlZbUp5WW1KeVltTlRRMk56WW1OelkyTnpZMk56WXlOelkzTmpZek1oWVhGaklYRmhZWEZoWUhKaVluSmdZbklpWUhCZ1lIQmdZSEJnWVZGaFlYRmhZek1qWTNOalkzTmpZM0Fic0pEQVlDQWdZQ0FRUUZCd2NKQXdJRkFnSUJBZ1FJQWdvSEFRY0VBd0VEQWdFQkFRRUhBd01DQXdFSURBY0NCZ0lDQWdFRUFnTUNBUXNZREFnT0J3Y1JDUWNPQndjTEJ3VUtCUXdZRFE0ZkNBSUxCUUVCQmdFQkFRTUNBUUlCQXdrREJRTUhKUUlEQlFJRUFnSUpBd2dMQndZSEFRSU1DQVFGQ3dVTEZnc0VDQVVHQ1FNTUJBSUdBZ01JQkFvSENnZ0NCZ01CQXdJREFRSUJBZ1lDQWdRQ0FRSUZCUUlGQkFFREFnSURBd01GQWdRQkJRTURBd1VCQWdNRkF3TUdCQUlEQWdJQ0JBVUNCQUlDQWdJQkJRVUNCZ0VCQWdRQ0J3VUNDUVlJQ0FVSUFna0ZBd2NFQWdVTkJRVUhCUVFKQkFrQ0F3Z0VDaFVMQnc4SUR3MElCQVVDQ3hZS0Jnd0dEaG9OQmd3R0NoSUpCUWNGQXdZRERoTUlEd29FQndRSERna0ZDZ29IQXdVS0JRd0ZBZ2dFQWdNQ0JRVUNDQU1CQkFFR0FRRUVBUU1CQWdVQ0F3TUNCdzBIQ3dzR0J3MEhBZ2dFRVIwVUFnWUREUlFSRUF3SUR3Y0lEQWNJRUFZQ0J3RUJBd0lCQkFNQkFRRUVBZ2dGQlJBR0J3VURCeElIQXdnQkNnY0RCUW9GQkFjRUdTUVJDaFFLQ3hRS0JBY0ZBd2dFQ3dFRkNRVUlEUVlGQ2dVREN3VU1DUUlNQVF3SkR3VUxCZ1FEQndNR0NBY0NDQVFFQVFJRkFRa0lBZ0lDQVFRR0JRSURBZ01FQWdFQ0FnY0NBd0lDQWdJSEFnSUNCQUVGQlFRQ0F3RUNBZ0lEQVFRREFnTUZBZ01DQmdFRUNBUUNBZ0lDQkFFQkFnRUNDd2tHQWdVQkFnMEVDeFVLQ3g0UkNCSUlDaElJRVJFS0Fna0VBd1FCQVFFR0FnSUhCQWNDQlFNSERRWUZDQW9IQWdjQ0FnRUNCUTBGREFjREJBVUNEUW9EQVFZR0FRZ0hBd01FQlFRR0JRb1BDQVFNQXdJQ0J3VUVCd1FMQVFrRUFnb0dCUVlGQkFRRkJ3b0ZCUWtEQmcwRkF3Y0NBZ0lCQVFFQ0FRTUJBUUVCQXcwRkFnSURCd3NGQlFjRkR3OEdCUXNGQXdjRUR5SU5DQThJQ1JJTUJBWURDQkVJRHdzR0JRVUVBd1lCQWdFQ0FRTURBUUlCQWdNV0NBTUhBZ0lGQlEwREJBc0ZCUW9GQmdrRkJRc0ZDUWdrQndZREF3c0ZCUWtEQ0JVRUF3SUJCQUVFQ1FjR0RRVUVEd1lLREFVQkJBSUIrUlVoRVF3R0N3WUNBd2dOQ1FJRUJBRUNCUUlEQndVRENnUUxFd01ORHdjSUFnRURCd01EQndNTER3UURDQUlYSnhBRkNnVUZDQVFFQndVSUV3a0VBd0lCQlFFQkFnRUNBZ0VCQVFJRkJSVWlFZ0lIQWd3S0JRSUxBZ2dJQlFnUUJRa0VCd01HQ1FGaUNSQUlCQmtHQkFrRkNBRUhDUUlFQVFFQkFnRUJBUUVDQlFRQkFRRUJBUVFDQVE0Q0JRVUZDQVlPQkFVSEF3d0dBZ1VLQncwSUJnMEZEZ2tGRFFnRkFnZ1FCZ2tTQ0EwTUJRWUtCUXNLQndVRER3WUxCUW9JQXdjS0NBa1NDQVVHQlFNR0F3c0xCZ2tMQkFNRkFnb0lCd1FIQmdNRUJnUU1DQVFPQlFRSkF3VURCZ0VDQndFQ0JRSUNBZ0VCQVFRRkFnSUJCQUVCQVFJQ0FRRUJBUUlCQVFFQkFRRUNBZ0VCQXdFR0RBSUNBd1lFQVFRSEFRRUNCZ0lGQXdJREFnVUNCUUlHQXdZTkNBc0JBZ2NLQlFzRkFnVUxCUXdKQlFZREFnTUJBd0VCQVFFQkFRRUNBZ01CQWdFQkF3RUpGUXdEQmdRRkJ3VUpDUTBLQlFnUkJ3UUxCQVFHQkFZQkFnTUtCUUlCQlFZQ0FRSURBUU1CQWdFQkF3RUNBZ0VCQWdNQkFRSUpBUUlJQVFnSkJRTUdBd0lDQWdJRUNnUUlDZ1VKQVFJS0JRMFBDQXdDQWdvWkN3VUtDQXdGQlFNSEJBd0RCUU1GQ0FVTUNBWUVEQWdGRWdnREF3VUZDQVVGQ0FVSEJnTUhDUVFKQlFvRkFnZ1FDQVVJQkFVSEJRUUhCQU1JRlJBTUJnMEVCUU1EQWdVREF3RUJBUUlIQWdVSEJ3SUJDQWNDQ3hJTkJBZ0VCQTRGQXdVSkJnTUdCZ1FFQWdJQ0JBWUNCQUlDQmdJUURnVUhBd0VDQXdJR0FnSUtDZ2tCQlFJQ0FnRUNBUUlCQVJFRkNBNEtFUU1EQmdRRENBTUpCUU1DQmdJRUFRRUNBZ0VJQWdVRUF3Y09DQWNPQndnVERBc1FDUVFJQlFRSUF3VUxCUUlGQXdVREFnSUZBZ0lFQVFFQkFnRUJBUUVDQXdFQkFRUUVCQWNEQXdVQ0F3a0VCUWNFQlFZRkJRY0ZDQkVHQWdZQkFRSURBUUVEQWdFQkFRSUlBd1VGR1FRR0FRSUJBUUlCQWc0RkNBRUNCd2tHQlFvQ0FnY0VBZ1FLQmdrUENRQUJBQjcrOHdLRUF3Z0M3QUFBQlJZMkZ4WVdGeFlXRnhjV0ZoY1VGZ2NHQmdjR0JnY0dJZ2NHQmdjR0JnY0dJaWNtSmljbUlpY21KaWNtSmljbU5qTXlGaGNXRmhjV0Z4NENNamMyTmpjMk5qYzJKalUySmljbUppY21KaWNtSmljbUJnY2lCeUlIQmdZbk5EWTNOalkxTmpZM05qWTNORFkxSmlZbkppSW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KaVluSmlZbkpqUW5KalExSmlZbkppWW5KalFuSmpRMUppWTNORFEzTkRZMU5pWTFOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTNOalkxTmpjMk5EYzJOamMyTmpjMk56WVdOelkyTnpZMk56WTJOelkyTnpJMkZ6WTJOelkyTnpJMk16SVdGeFkyTXpJWEZoWTNGaGNXTmhjV01oY1dOaGNXRmhjV0Z4WVdGeFlXRnhZV016STJOelkyTnpZM05qWTNOalkzTmpRM05qUTNOaFFIQmdZSEZCWUhGQVlIQmdZSEJnWUhCaFlIQmdZVkJnY0dGaFVHQmdjR0ZnY0dCZ2NHRmdjR01RWUhCZ1lIQmdZSEJnWWpCaFFqQmdZSEJnWWpCaWNpSmljbUppY21NU1ltSnlZbUp5WW1KeVltSnlZbUp5WTNORFkzTmpRM05qWTNOalkzTmpjMk5qYzJOaGNXRmhjV0JnY0dCZ2NHSWdjR0JpY21KeVltTnpZV0Z4WVdGeFlXRnhZV056WTJOelkyTlRZMEp5WW1KeVluSmdZSEJnWUhCZ2NHQmhVV0loY1VGaGNXRnhZV0Z4WVdOemMyTmpjMk5qYzJOamMyTmpjMk56WTJOelkyTnpZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1Jd1ltSXlZR0J3WUhCZ1lIQmdZSEJnWUhCZ1lqQmdZSEJnWUhCZ1lIQmdZSEJnWUhCaFlIQmdZVkZCWVZGQVlIQmdZWEZCUVhGZ1lWRmhZWEZoUVhGQllIQmhRVkZBWVZGaFlIQmdZVkZnWVZGQmNXRmhjV0ZoY1dGeFlXRnhZV0Z4WVVGeFlXRnhZV0Z4WXlGeFlXRnhZWEZoWVhGeFlXRnhZV056WTJOelkyTnhZMk56WXlOelkyTnpZMk56WVdOelkzTmpZM05qWTNOelkyTnpZV056WTJOelkyTnpjMk5qYzJGaGNXRnhZR0J3WUdCd1lHQndZR0J3Y0dCZ2NHQmdjR0JnY0dJZ2NHQmdjR0lnY0dCZ2NHQmdGT0RCZ0xDUThIQmdJQ0JnSUNCQUlFQVFRQkFnWUNBd2dGQkE0R0RBZ0ZCaUFJQ2hvRkRBWUNCd2dGQlFJQ0NRc0dBd3dFQ2dVQ0J3Z0VFUklSQkFNR0JBTVdBZ0lCQXdJQ0JRSUNCd3NGQmdJSUNRY0VDZ1FJQ2dRRUJBVUJCQUVCQlFFQkF3RUdCQWNFQlFnRkJBWUVDQTRIQ2dvSURnOElDQTBGQ3dFQkNBSUNEQVlEQlFVQ0FnTUJBZ01DQWdFREJBSUJBd0lCQVFFQkFnRUNBUUlCQVFFQ0FnRURCUU1DQndJREFnRUJBZ0lDQXdJREF3RUNBUUVGQVFVQ0F3TUZBUU1JQXdrVUNBZ0hCd0VDQ2c0SUJRb0VBd1lDQXdVREJ3a0ZDUlFLQkFzSEJRY0ZCZzRIRFFjRUJ3b01CUUVIQkFNSEF3Y0NBZ2dEQVFJREFnWURDUVVDQkFjRENna0VCUVlGQXdvRkJRUUNBZ0lDQlFJQ0FnVURCd0VCQkFFQkFRSUJBZ0lCQWdJQkFRRUJCZ0VHQXdNQkFRSUJCUUVCQVFJQ0FRRUJDQVVGQXdVRkJBa0VCd1lDQ2dFS0J3UUZFUVlLQ3dNRkJBSUhBd29PQkFVQ0JRRUNBUUlFQVFJQ0FnRUZBZ01DQlFFRkNBUUhCd01HQ1FZT0NBc2ZEZ1FEQVFFQkF3SUZCQUlJQkJBWERRUUNBUUVEQlFRQ0FnVURBZ01DQkFVSUJBUUNBZ0lCQWdNR0FnVUhEUjBHQkFRRUJRUUJBZ0VDQVFNQ0JRZ0RBd1VKRWc4UkJBY0ZDUU1DQkFZREJRb0ZCUU1DQWdFQ0FnSURCQU1CQXdJREN3WUZDd1VDQlFJQ0JnTVBEUVlGQ1FVTkNRUVJIQTREQndNS0NBVUZDQVVHQ0JJUkNnVUpCQU1IQXdNRkJRSUhCQUlGQWdJREFnUUhCQVFIQkFFREFRTUJBUUVCQVFJQkFnTUJBZ01CQVFFQ0FRRUNBUU1CQXdFQkFnVUNBUUVDQkFJQkJBSUJBZ0VEQWdJQ0NBSUJDd0VDQmdNQkFnVUNCUVVFQmdVS0F3a0ZCd1lIQ0FzSEN3MERDUVlGQkFnRUJBZ0ZFQThKQ0FJQ0RRY0ZCZ1FFQ1FRU0FnTURCd0lCQXdZQ0JRVUNCZ0lCQXdRRkF3b0RBZ2tFQXdZRUJ3MEdCZ1lFRlFjTEJRY09DQW9LQlFzSUJBVUZBd1FIQkFVTkJ3Z1FhQUVEQXdNRUJRY0JCQXdFQ1FNS0dBNERDUU1EQ1FRSkJRUUVBd1VCQVFFQkFRZ0NCZ0VGQ0FVR0FRSUtEd01DQkFRQ0JRSUNBd01CQWdNQkJBa0ZCd01DRGdrRkN3WUNBUUlCQVFFQ0FnSUJBUUlCQVFJSEJRZ0xBUUlDQmdJRkNnTURCZ1FDQkFFQkFRSUNBZ01HQWdRRkJRb1FCd2NMQndRQ0FRSURBZ2dIQkFjT0JRSUZBd1VMQlFRRkF3NEhBZ3NEQWdzQ0FnUUlCQVVIQkJBWkVRZ1BCZ01GQXdnTUJBNEpCZ1FLRkFzSUZBc0pCZ1FEQ3dVRkJ3VUlCUUlEQ0FNTUF3b0JBZ2tEQndJQ0JRMElDQXdKQVFZRkFRRUlCd1FDQlFNQ0JRSUNCZ0lGQXdZRkJRSUJBUUlCQVFFREFnSUNCQWNDQWdFQkJRRUZBUUVDQmdJRUF3b0NBZ1VFQWdjSkJ3SUxFd3NLQkFjRkJBc0dCQVVIQXdRRkFRSU5CUTRQREFZTkJRVUxCUXNjQ3cwR0F3UUhCQXdGQWhJV0RRVURBZ1lERFFZRUJRa0dCQVlDQ2dNSEF3VUVCQVlEQlFNRUFnUUVBZ0lFQXdNRUFnSUNBZ1VHQkFZQ0JRSUNCZ01KQ1FVREJBUU9DZ1FLQlFvRUFnVUtBd1VIQWdFQ0FnTUNBd1FIQ0JVTUNSTUpCd2NEQWdJRkF3SU1EZ2NQQndFSEFnSUZBZ1lEQWdVRUJBUUNCQVVGQ0FjTkJRWUJBZ1VDQWdnRkFnb0dDZ3dFQ0FJS0FRTUlCUTRMQmdnR0Nnb0ZCZ0lFQWdjQkFnSUZBZ1VKQlFnRkJRSURCQW9GQ1JZS0JRb0RCZ3dHQmd3RkFnUURBZ01DQ1FzRUF3VURCZ1lEQ2dVREFRSUJBUUVCQWdJRUN3b0ZBZ1FEQWdVQ0F3WUZBZ0lEQXdJQ0JRSUVDUVVJRGdjRkJRUUxCUVFEQndNS0RBVUhDd2tIRUF3SUJRSUhEd2dGQndVSUN3b0ZDZ2dFQmdNSURnY0tBUUVMQ1FVS0VRb0NBZ1lPQ0FRSUJ3NElBd1lEQXdZRENRVUNDQU1DQlFFQ0F3SURBd01HQWdVQ0FnSUNBZ0lCQkFNRkF3WUlCZ0VDQWdJRUFnY0lCUVVCQVFjR0F3Z0RCQVlFRXdJSEF3VUJBUVFEQWdzSkJRd0RCd0lDQmdJQ0F3Z01Cd1lOQmd3WkN3c0lCU1FPREFjRkRRVUZCd01HQVFFREFRRUJBZ0lDQ1JiLy8vKzkvK0VDZUFQREFpWUFPd0FBQUFjQW9BQzRBT0gvLy8ray85d0RCQU9YQWlZQVJBQUFBQWNBNHdETkFNMy8vd0FlLy9ZQzFRT1FBaVlBUlFBQUFBY0FvUUREQU0zLy8vL08vK0lDcHdPYUFpWUFTd0FBQUFjQW9RQnhBTmYvL3dBai8rd0I0UUxaQWlZQVZ3QUFBQVlBb0ZMM0FBRC8vd0FqLyt3QjRRTFpBaVlBVndBQUFBWUFWa2ozQUFELy93QWovK3dCNFFMU0FpWUFWd0FBQUFZQTRqMzNBQUQvL3dBai8rd0I0UUt3QWlZQVZ3QUFBQVlBb1QzdEFBRC8vd0FqLyt3QjRRTEJBaVlBVndBQUFBWUE0MGozQUFBQUF3QWovK3dCNFFLU0FHd0NHQUk1QUFBM05qYzJOamMyTmpjMk56WTJOelkyTnpZM05qWTNOalkzTmlZbkpqUW5KaVluSmlZbkppWW5KaVluSmljbUppY21KaWNtQmlNbUppY21CeUlHQnlJaUJ3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WVdGUlFHRnhRV0Z4WVdGeFlXRnhZV0Z4WVdGeFkyRnpZMkV4WVdGeFlHQndZR0J3WVZCZ1lIRmhZWEZoWVhGaFlYRmhZWEZoY1dGaGNXRmhjV0ZoY1dGeFlVRlJZR0ZSUVdCd1lHRlFZR0J3WUdGUlFXRlJRVUZ4WVdGeFlXRnhZekZoWVhGall6RmhZVkJpWUhJaVlISWdZSEJnWWpJaUluTmpZM05qWTNOalkzTnpZMk56WTJOd1lHQndZR0J3WUdCd1lIQmdZSEJnWUhCZ1lIQmdZakJpWW5KaVluSmlZbkp5WW1KeVluSmlZbkppWW5KaVluSmljbUpqVTJKamMySmpVMk5EYzJOelkwTnpZM05qWTNOalkzTmpZM05qWTNOalkzTmpjMk5qYzJGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGMwSnlZbUp5WTBKeVltSnlZMk5TWW1KeVkySnlZbUp5WW1KeVluSmlZbkppY21JaWNtSmljbUpnY2lCZ2NHQmdjR0lnY0dCZ2NHQmdjR0J3WUhCaFlIQmdZWEZoWVhGaFlYTmpZM05qSTNOalkzTmlZSEJnWVZCallWQmlJbkpqNENOeklYRmpJWEZoY1dGZ2NHQmdjR0JnY0dCZ2NHQmdjaUJpY0dCaWNtSWljbUppY21OQ2NtSmpVMk5qYzJORGMyTmpjMk5qYzJNamMyTmhjV01qY21KeVluSmlZbkppWW5KaVluSmlZMU5EWTNOaVkzTmpZM05qWTNOaFkzTmpjMk5qTXlGaGNXTWhjV0ZoY1dGZ2NtSmljbUJpY2lKZ2NHQmdjR0JnY0dCaFVXRmhjV0ZqTXlOamMyTnpZMk4rTUVCZ2tMQlFRSUJBWUdDQWNEQXdNQ0NRUUxDQU1FQXdFREFRSUJBUUVFQVFNRkFnSUJBZ01PQ0EwSENBZ0VBd1VEQ3dJQ0JBZ0RDUUlFQmdJREJnSUNCUU1PREFJSEF3SUZDQUlEQXdJQ0JRRUJBUUVCQXdJRkNRWUVCd1FGQVFFSUJRSURCZ01NRW00Q0F3UUNBd0lDQ1FNSkN3Y0ZBZzBJQ0FRRkJBMERCQU1EQ3dZRkJnVUhBd0lDQkFJRUFRRUJBUUVCQVFJQ0JRUUNCQUVDQVFJQ0FnY0VDUVFLQ0FRSEF3RU5Bd01FQlFNRkJBUUpCUlV2RndvUkJRSUhBUVlFQkFFRkF3Z0NBd0lCQVFFTUNnSUdDZ2dPQ2dZSkJBTUdBZ1VKQkFVSkJBNEdCUXNYQ0FjSUJRc0dBd3dFQndJSEFRZ0RBd0lMQlFJRkFnZ0JBUUlCQWdFQkFRTUJCQUVFQVFrR0JBWUJCd29HQ2dVQ0NnTUNDUWdERVJFRUNRUUxGd2tMQXdJRUNRVUhCd0lEQ0FVSkRRZ0RCZ1VHQVFJQkJBRUJBZ0VEQVFFQ0FRRUJBUUVFQVFZRUFnVUVDQVVERUFRS0F3SUpCUWdFREFVRkRnVURCUUlEQmdJRUNnVUdDd1VIQmdRREF3RUJBZ01GQWdZSENRd0ZEUVlEQndJQ0JRZ0ZCQlFMQkFjQ0NnSVBCZ1FEQndzRkJ3NEZDUUlEQkFNREFnUUJBUUlHQXdJRUFnY0tCUU1IQXdVT0N3a05CUWdOQWdFQkFRSUdCQVFJQWdZTkN3SUdBZzhQQmdRRkJnWVBDQVFLQ0FZRkJRTURCZ0VDQVFJQkJBUUJBZ0VDQXhVSUF3Z0NBZ1VFRFFNRURBVUZDUVVHQ2dVRkNnVUpDU1FIQndNREN3VUZDQU1KRkFRREFnRUVBUVFKQmdZT0JRUU9CaEVMQVFRQk9RSUVCZ2dFQWdZQ0JRWURDZ0lDQkFJSUFnc0pBd2dDQVFrR0J3VUlBd0lHQXdZT0JnUUlBZ1VNQndvRkNBRUNBZ1FDQlFJQ0F3RUNBUVFCQWdFREFna0pCQW9EQWdrSkJRVU9DQVlOQmdVTkJRVU1CUU1JQXc0ZERBY0xCZ2NEQVFZREFRSUJBZ0lMQWtFS0R3Z0VHZ1VFQ1FVSUFRZ0lBZ01DQWdJQkF3SUhBZ1VEQXdrTENCTUlDZ2NGQkF3R0NnTUdEQVVRSWhFTUZ3d0lFUWdSSUJBSURnZ0RDQVVJRGdnREJnSURBd0lGQlFNQ0JBSUlBUU1JQVFFQkFRRUJBZ1FHQndNQ0J3WUNCUVlFQ3dJUUJRVUtCZ3NKQndNTEJRa0pCUWdDQXdNQ0FnVUNBZ1lDQlFRQ0FnSUNBZ01HQndJTEJBUUREUUVMQmdNTEV3c0ZDZ1VSRUFNRkF3a0JBUW9MQlFvRUFnd0JCZ01CQ0FRSEF3VURDd1VJQVFJR0JBSUlBd0lLQ0FJRUFnSUNBZ0lDQWdJREFnVUNBUUlGQXdVTkJnSUdBZzhPQkFnR0RBZ0ZBZ1VFQndJQ0F3WUNBd1lEQlFjRkN3VUVCQWdHQkFJSUFnVUJCQUlDQVFFQkJBSUJBd0VCQVFJR0F3VUlCZ2tJQkFnR0F3SUpEZ2NGQWdJRkFnSUZBZ01HQWdNTEJCRUdBd0VDQlFZQ0JRWUNCd3NJQmdNREFRRUNDQVVKQlFZR0FnSUVBZ0lGQXdNSUFnSUNCUUVCQVFNREZBa0RDQVFJRVFrSER3Z0hBd0lJQ0FVQ0FnSUdBZ0VFQVFFQkFRUUNCQU1IQXdRRkFnTUpCQVVHQkFVSEJRVUhCQWdTQmdJR0FRRUJBZ01CQVFNQ0FRRUJBZ2NEQlFVWkF3WUJBZ0VCQXdFQ0RnVUlBUUlIQ2dZRkNRSUNCd1FDQnd3S0R3a0FBUUFrL3pvQjFnSW5BWnNBQUFVV05oY1dGaGNXRmhjWEZoWVhGQllIQmdZSEJnWUhCaUlIQmdZSEJnY0dJaWNtSmljbUl5WTJKeVltSnlZbUp5WTJNeklXRnhZV0Z4WVhIZ0l5TnpZMk56WTJOelltTlRZbUp5WW1KeVltSnlZbUp5WUdCeUlISWdZSEJnWW5ORFkzTmpZMU5qWTNOalkzTkRZMUppWW5KaWNtSmljbUppY25KaWNtSmljbUppY21KaWNtSnlZbUp5WTFKaVluSmlZbkpqUW5KaVkxSmlZbkpqWW5KaVluTkRZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05oWVhGaGNXRnhZV0Z4WVdGeFlXRnhZMk56WTJOelkyTnpZM05qWTNOalkzTWdZVkJnWUhCZ1lIQmdZSEJnWUhCd1lHQndZR0l5WTBKeVltSnlZbUp5WW1KeVltSnlZMEp5WW1OU1ltSnlZbUp5WW5KZ2NHQmdjSEJnWUhCZ1lIQmdZSEJnWUhCZ2NHQndZR0J3WUdCd1lHQndZWEZoWVhGaFlYRmhVV0JoY1dGaGNXRnhZV0Z4WVdGeFl6RmhjV0ZoY1hGallYRmhZek1qSTNOaFkzTmhZM05qWTNOalkzTmpZM05qWTNOelkyTlRJMk56SVdGeFlWRmdZSEJnY0dCZ2NHQmdjR0JnY0dCZ2NHQndZR0J3WUdCd1lHQndZakRnTUJCZzBYQ3dvUEJnWUNBZ1lDQWdVQ0JRRUVBUUlHQWdNSUJBUVBCZzhKQng4SUN4a0ZDQU1MQVFJRkJ3VUdBZ0lKQ3djREN3UUtCUUlJQ0FRUUVoRUVBd1lGQXhVQ0FnRURBZ0lGQWdJR0N3WUdBZ2dJQndRTEJBTUxBd1FFQkFVQkJBRUJCQUVCQXdFR0ZoTUxDd01DQmdJQ0JnTUtCZ1lKQVFJQ0F3SUNBZ0lFQVFVRUFnTUNBUUlCQXdFQkFRTUJBUU1CQVFJQkJRVUJBd1lIQWdJQ0JnUUtGZ2tEQmdRTUJ3UUZDQVVFQndRS0V3Z0ZEQWNOSGdvS0Rna0NDUVFDREEwRkNnUUNEUkFGQWdVREJ3SUJCUVFCQXdFQ0FnSUlBd0lGQXdRQ0FRTURBZ1VNQndVQkF3SUJBUVlFQWdVREFnSUZCQUlDQWdJREFRRUJBUUlEQWdJRkJnSVZGdzBPQ0JVSUN3Z0dBd0lGQXdVTEJRSUdBZ2NCQmdRQ0FRSUlCZ1FEQmdJQ0FnSUZBZ0lDQWdNRkFRRUdBd01EQmdJQ0FnSUZBd1FDQWdrRENBZ05CUTRJQnd3SENBd0hCZzRHQ2dZRUJBVUVCQWNFQndvSEFnZ0VCUUlGQmdJRkJRSUNCZ0lHQWdJREJBRUNCUW9HQndNQkF3VURGQTRMQXdJRUNBVUVDQVFFQ2dNS0NRVWhBUU1EQWdRRkJ3RUVEUVFJQXdvWURnTUpBd1FKQXdrRkJBUURCd0VCQVFFSkFnUUVBUUVDQ0FRR0FRSUxEd01DQkFRQ0JRSUNCQU1CQWdNQkJRa0ZCd0lDRHdrRkN3VUNBUUlCQVFFQ0F3TUJBUUVCQVFFQ0NBVUlDd0VCQWdZQ0JRc0RCQVlEQXdNRUNBTUNBUUlDQmdNTUJ3c01Cd1FDQmdRREJ3TUpBUXdJQlFrREF3WURBd1lEQkFZRUNBSUNBd1VEQWdjREZSa01FQjBMRGdzRkF3b0ZGaFlQQWdRRENBVUNBZ0lDQWdNQkF3RUNBZ1lCQWdZREJBWURCQVVEQWdRR0F3Y0JBUUlTQndRSkJBa0VBZzBDQVFnQ0F3Y0NDZ01OR3c0UERRWUtFUWdWSnhRTENnY0VBZ29EQ0FVSkN3VUlFQWtGQlFZSkJRTURCd01EQmdNRENBUUlCd1VMQmdRQkFnSUVCZ1VEQWdJRUFnWUxCd01IQXcwQ0RBZ0VCd1VRRmd3SkVnc1hGd1lOQndjT0J3Z0ZCd01DQ2d3RkJRY0NCZ0lEQlFNTEJRY0RCUUlFQVFFQkFRRUJBUUVCQkFFQ0FnSUNBZ01EQmhBRkJ3d0ZDZ0lJQlFzQ0NBTUlCUVFMQkFZR0J3VUNCdzBJQ1FFQkFnWUNDZ01DQWdFQkFRRUNBUUVCQlFzTURBQUEvLzhBSkFBRUFhNEMyUUltQUZzQUFBQUdBS0JjOXdBQS8vOEFKQUFFQWE0QzJRSW1BRnNBQUFBR0FGWlM5d0FBLy84QUpBQUVBYkVDMGdJbUFGc0FBQUFHQU9KUzl3QUEvLzhBSkFBRUFhNENzQUltQUZzQUFBQUdBS0ZjN1FBQS8vLy8rZi81QVFNQzJRSW1BT0VBQUFBR0FLRHQ5d0FBLy8vLytmLzVBTzBDMlFJbUFPRUFBQUFHQUZhYjl3QUEvLy8venYvNUFRNEN5QUltQU9FQUFBQUdBT0t2N1FBQS8vLy8rZi81QVFzQ213SW1BT0VBQUFBR0FLSEUyQUFBLy8vLzgvOWdBbE1Dd1FJbUFHUUFBQUFHQU9OYzl3QUEvLzhBSGdBREFjb0MyUUltQUdVQUFBQUdBS0JTOXdBQS8vOEFIZ0FEQWNvQzJRSW1BR1VBQUFBR0FGWTk5d0FBLy84QUhnQURBY29DMGdJbUFHVUFBQUFHQU9JOTl3QUEvLzhBSGdBREFjb0NzQUltQUdVQUFBQUdBS0U5N1FBQS8vOEFIZ0FEQWNvQ3dRSW1BR1VBQUFBR0FPTTk5d0FBLy8vLzhmL25Ba1VDMlFJbUFHc0FBQUFHQUtCeDl3QUEvLy8vOGYvbkFrVUMyUUltQUdzQUFBQUdBRlpTOXdBQS8vLy84Zi9uQWtVQzBnSW1BR3NBQUFBR0FPSlM5d0FBLy8vLzhmL25Ba1VDc0FJbUFHc0FBQUFHQUtGYzdRQUFBQUVBRi8rTEFRMEM2Z0REQUFBVEZnWUhGUlFHRlJRV0ZSUUdGUlFXRlJRR0ZRWVdGUVlHRnhZMk16WVdOelkyTnpZV016WTNGallYRmdZSEJoWUhCZ2NtSWljbUpnY0dGaGNVQmhjY0FoWVZGaFlYRmhRWEZoWVhGZ1lYRmhZWEZnWVhGaFFYRmhRWEZoWVZCaWNpSmljbUJpY21OalUxTkRZMU5qUTFORFkxSmpZMUpqWTFOQ1luTkRZM05pWTNORFkwTmpVbU5qVTJKalVtSmpVbU5DY21CZ2NtQmdjbU5pY21OaWMyRmpNek1qWVhNaklYTmlZMU5pWTFKalkxTkNZMU5EWW5KalFuSmpZM05oWTNOaGEyQkFRQ0FnRUNBZ0lCQVFFRUFRTUhBd3NDQWdZTUJnY0VBUWdEQndnRUFnWUNBZ01DQlFnT0RBY0lGd3NFQXdFQ0FnRUJBd0VCQVFFQ0FRRUJBUUVDQVFFQkFRRUNCQUVDQkF3S0Jnc0ZEQmNLQVFFQ0FnRUJBUUVCQWdFQkFRRUJBUUVCQVFJQkFnRUJBUUlORmcwS0Z3a0RBUUVCQWdJRENBVWFBdzRFQmcwSUFnVUJBUUVCQVFZQkFRSUJBZ1VDQmdNVUdnTGpEd3dIQ3dNR0FnVUxCUVlMQlFVS0JRVUhCQWNNQ0FvU0NRSUJBUUlCQVFRQ0F3RUNBUUlEQWdjTENBc1lEQVFCQWdFQkFnRWFPeDRSSlJFRkp5NHBCd3NTQ2dzU0Nnc1NDUVVMQlFRSUJBZ1BDQWdPQnd3S0JRVU1DQVVCQkFFQ0FnWUVDQVVVQkFVRENoWUxCdzBIQ0FNQ0J3SUNCUW9GQmdvRkZ5MFhDUzB3S3dnR0F3SURDQU1KRlFzVUtCZ0JBZ0VCQ0FFSkJRVUlHd2tPQkFFQkFRNGNEZ29CQVFnQkFnTUhBeFFyR0FJR0F3a0dBZ0VDQVFRQ0FBQUFBZ0FVQWlzQTVBTFdBRTRBYndBQUV4WVdGeFlHQndZR0J3WW1Cd1lpQndZR0J3WUdCd1lHSXlJbUl5SW1KeVltSnlZbkppWW5KaVluSmpRbkppWTFORFkzTmpRM05qWTNOalkzTmhZM05qTTJOak15RmhjV01oY1dGaGNXRmdjbUppY21JaU1tSmdjR0JnY0dCZ2NHQmhVV0Z4WVdGekkyTnpZMk56WTJOOWdDQkFRQ0JBSUJDUVFFQXdFREJBSUVDQVVPQ0FzQ0JnTUpBUUlFRHdZSUNRVUxCQVlGQXdRR0FnSUNBZ1FFQWdFQ0JCVUxBd1lEQWdZREN3Y0ZEQVlGQ3dVR0NnVUdDd1lKQ1NZSUJnTUVEQVlGQ0FRS0ZRVUNBd0VFQVFvS0JoQUZCQThHREE0RkFRUUJBcllLRVFrRkdnWUVDZ1VJQVFFRkFnTUlCQWdFQWdFQ0FRRUNCZ0lDQXdNRkJ3TUVCZ0lDQ3dVRkJnVUZCd1VGQ1FRSUV3Z0NCUUlCQVFJRUFnTUNBUUVDQWdnREJnVWFBd1lDQVFFQ0FRSVBCUWtCQWdnSkJ3MEZBd1lCQlFJRUNnY0tEd3NBQVFBVUFCZ0J1Z0syQVhZQUFBRVdCd1lHRlJZWEZoY1dGak1XRnpZM05qWTNOak0yRkJVV0ZBY0dCZ2NHQmdjVUJ3WUdCd1lHRlFZR0l5WW1KeVkySnlZMEp5WW1KeVltSnlZMUppWW5KaVkxSmlZbkppWW5KaVluSmljaUJpY21CaWNHSXdZaUJ3WUdCd1lHQndZSEJnWUhGQVlIQmhRSEJnY0dCd1lHQndZR0J3WVdCd1lpQndZWEZCWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoY1dGaGNXTXhZeU56STJOell5TnpZMk56WXlOelkyTXpZMk56WTJOelkxTmpRM01oWVhGaFlWRmdZSEJnY0dGQWNHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHSWlNaUJpY0dCZ2NVQmdjR0ZBY0dKaWNtQmljbU5qVTJORGMyTkRjME5qVW1KaWNtSmljbUppY21NU2NtSmljbU5DY21KaWNtTkNjbUppY21OQ2NtSnlZbUp5WW1OVFEwTnpZbU5UWTJOelkyTnpZMk56UTJOelltTnpZMk56WTJOelkyTnpjMk5qYzJORGMyTkRjMk5EYzJOamMyTmpjMk56WTJOelkyTnpZM05oWTNNall6TmlZM05qWTFOalExTmpjME56WVdOekkyTndFNUJRUUVDQlFOREFNRUNRVU5DZzRIQWdZREJRSUxBUUlDQmdFQkFnSUJBZ01DQVFJQ0F3UUpCZ1FFQVFFRUFRSUVBd0lFQWdRQ0FRSUNCd01EQWdVSkF3a1JDZ3dCQWdjQ0RBa0dDUVFLQndJRUJnUUZCZ1FFQlFRRkJnTUJCQUVGQkF3RUF3SURBUUlCQVFFQkJ3SUJCZ0lIQWdJQ0FRSUNBZ0lHQWdjR0FnUUlCUWdDQWdNSEFnUURCQk1FQXdjRUNBTUhFZ2NGQ0FVSkF3SURCZ01JQXdFRUJBUUdDZ1lEQmdRSEJnUUVCZ1FEQndFR0FnY0JCd0VEQ1FRUUVBZ0ZDQVVDQmdJTEJ3TUVCd1FGQ2djSUN3VUZBUU1EQVFFREJBa0ZCUWtDQVFNQkFnUUJBZ0lJQXdNRkF3VUdCQXNPQXdnREJ3RURDZ01KQWdVRUFnY0JDQVVDQkFJQkJBSUNBUUVDQVFJQkFnRUJBUUlCQXdFQkFRSUJBZ0lEQWdVQ0JBWUNBd0lDQ0FFSEFnUUVCQVVHQWdvRENBVUVCdzBHQ0FRSUZnb0hDd1lEQVFJQkF3RUJCQU1HRFFZRkJnUUN0aEVLRVJNTEJRTURBUUVDQ1EwRERRTUpCUWtEQ1FVTEVRa1JKQklIRFFjS0Fnb1hDd2tIQkFrSER3NEhDUVFDQndVQ0JBa0ZBZ1VEQ2dJREJRTUZDQVlCQndRTkJnVUNDUUlEQVFFQkF3UUJBUUlCQWdZRUJnY0dDUWtHQ3dVREJRTUdBZ0lNQmhjTUJ4Z0xBd1VEQlEwR0NRRUpCd1lKQlFzR0JBb0ZBd1FIQkF3R0JBVUxCUWdEQWdVR0JBSUdBZ2tEQXdFQ0JRSUJBUUVGQVFJREFnUUJBZ1VHRFFnQ0JnTUpBZ1VJQXdjREFnUUZBd29EQ0FFSkFnRUVCd1FORGdZRUJnUUNBZ0lKQVFJQkF3RUJBUUVJRkFzQ0J3SUZDQU1DQXdFQ0FRUURCd0lGQ2dVSEJ3UUVCd1FFQWdJQ0FnRUJBZ0lHRGdRSEJRb0NBZ1FKQlFrREFnY0dBd2dCQVF3UUJRa0dCUTBFREJjTENnY0ZCZ3NHQlFzRkJRY0ZBZ1VFQ3dFREFnWURBZ1lDQ0JBSEN3WUhBZ0lIQXdjQ0FRZ0ZBZ1FFQXdZREJBVURBd01DQXdNQ0FnSURCQUVFQlF3RkF3VURBd2dFQmdVS0F3SUZBUU1CQUFBQUFBSC84UUFLQWJvQ3l3SDZBQUFuTmpJM05qYzJOak0yTnpZMk56WTJOelkyTnpZM05qRTJKamMwTmpVMEpqVTBOelEyTlRVME5qY21OaWNHSmdjR0JpY2lKaWNpQmljbU5qYzJOamMyTlRZek5qWTNNall6SmpZM05pWTNOalkxTmlZM05qYzJOamMyTmpjMk5qYzJOamMyTmpjMk16WTJOell5TnpZMk56WTJOelkyTnpZV016WTJGeklXRnhZWEZoWVhGaFlYRkJZVkZnWVZGaFlWRlJRV0J4UUdCeFFXQnhRSEJnWUhCZ1lIQmdZSEJnY0dCaU1HSmdjaUJpTUdNU0luSmlZbkppWW5KaVluSmpZMU5DWTNOalkzTmpZMU5qWTNOamMyTnhZV0Z4WVdGeFlXRnhZR0J3WUdKeVltSnlZbU56WVdGelkyTnpZbkppWW5KZ2NHQndZR0J3WUdGeFlYRmhZWEZoWVhGaFlYRmpjM05qSTNOalkzTmpZM05EWTNKalluSmpZbkppWW5KalluSmpRbkppWTFKaVluSmlZSEJnY0dCZ2NHQmdjR0J3WUdCd1lXRlJRR0ZSUVdGUlFHRnhRVUZ4WVdCekkzTWpZekZoWXpGaklYTWpZWEJpTUdCd1lpQndZR0J3WUdCd1lHQndZR0J3WUdCeFFXRlFZV0ZSWVdGeFlXRnhZR0Z4WVdGUllXRnhZV0Z6SXlGellXRnhZeU14WVdOelkyTnpZMk56WTNOalUyTWpjMk56WTJKelkwTnhZR0ZRWVdGUVlXRnhZR0ZSUVVGeFlWRkFZWEJpWW5KaVluSmlZbkppWW5KaWNtSmljbUppY0dKd1lHSnlZR0l5SWpCaVlqQmlZSEJnWUhCZ1lqSWdZSEJpSUhCZ1lIQmdZSEJnWUhCaUlIQmdZUERBVUNFZ2NIQWdFSkFRVUVBd1FGQXdFREFnRUNBZ0lCQVFNQkFnRUJBZ0lCQWdnVUN3Z05Cd2dDQWdnSkFnSUdBd1FJQXdzTUFnVUlCdzhLQlFJQ0FnRUJBZ0VDQWdFQ0FRVUZEUVVEQkFRRENRSUlCZ1FLQXdJSEJBY0ZBd0lHQXdNTEJBTUZCUTRYQ1FjRUFnZ0xCUXNQQ2cwSUN3VUNBd1VEQkFFQkFRRUNBUUVCQVFFRUFnRUNDQU1GQkFzSUNBTURCZ0lGQ3dZREJRUUxDUVlIQndVR0NBVUNCQUlIQWdFQkFRTUJBUU1FQkFNSEJ3c0lDd1VDQXdRQ0JBZ0hBZ1FGQlFvREJRa0ZCUWtEQmdrR0F3TUVBd01FQlFVSUNBUURCQUlDQkFRQ0FnVUJCQUlCQmdJS0JBY0xCQXdJQWdJQ0NRSURBd1FEQWdNQ0FRRUJBUUVEQVFFQkFRRUJBUUlIRWdjTEdBOEdCUThIQkFRSUJBNE5EaGdLQkFNQkFRRUJBUUVEQWhjYkJ3MElBd1VEQncwR0Jna0VCd0VKQ1FNR0F3TUZBd2tQQ0JNYUN3TUJBUUVCQVFFQkFRRUJBZ0VDQVFFQkFRRUNBZ0VGRGdvRkJRMEdCZ2dGQlF3RkR4d1VDQThJQWdnREVBWUpCUUlCQWdJQ0JBRURCUW9GQVFNQkFnRUNBUUVEQXdFS0JnTU5FQWtDQmdJTkJBTUdCUW9IQkFVSUJBZ0lDQTBJQmdVQ0NnRUxBZ0VOQ1FVRkNBVUZDQVVJQ1FZQ0J3TUhFZ2tQSWhBREJnTURCZ01FQ3lVRkFRY01CUU1HQVFVRUF3UUlCQXNWQ2d3SkN3Z0ZBZ1VLQlFNSEF3Y0tCUWtGRndnTEJRc1NDZ0lDQVFFQ0FRUUJCUVVGQmdJQ0F3SUNBUVVDQWdFRURoMFFDeDBMQXdZREJRc0ZEd2tKRlFrR0RBVUdDUWNIQ0FRSUFnSUVCUVVDQWdJQkJRSUNCQUlEQVFFQ0FRSUJCUWdDQ2dRRkJnSUNCQUlGQ1FVRkRBVUlEQVlZQWdnQ0JBWUVCdzhHQlFvRUNBTUtCQU1EQlFNQ0FRRUNBUUVCQWdJQ0FRRURBd2dFQlFjRkRBZ0ZBZ2dGQ0FnRUJ3WURBZ1lEQlFRRkJnVUJBUUlFQWdRR0FnNFpEQWtEQVFFSEJRUUlCZ1FKQWdJRUFRY09EUVVCQWdnRUJnTUVBd1VPREJFSUFnY0RBZ2dDQkFFQkFnSURCUUlCQWdJQ0JnUUVCUU1LRXdzREN3VUVCZ1VFQ1FRRkNBWUpBZ0lVQ3drRkJ3SUNBZ1VGQXdNRkFnc05EaDBORXhNS0JRc0dCUTBGQ0E0TEJBc0ZCUk1JQXdFQkFRRUJBZ01LQXdJQkFRRUNBUUlDQWdjQ0JRc1VEUU1GQXdRSUJBUUtBZzBaREFZTkNBUUdBd01GQXdnUkJ3SUNBUUlCQWdFQkFRRUNBUUlDQVFJQ0NRWUlBd2dCQlFrRkVnZ0ZFQVFFRXdvSER3VVFEZ2dSSXhFRUNRUU9Bd1VKQlFjR0Fnc0pCQUVDQWdNREFnRUVDQVFCQWdFREFRUUJBUUVCQWdJQkF3RUJBUU1CQVFJR0FnRUJBZ01DQkFZRUFRSUJBUUVCQXdBQUFnQW8vOHdCWkFNT0FiNENBd0FBQVNZMEp5WW5ORFkxTkNZMU5qUW5KaVluSmlZbkppWW5KaVluSmlZakpnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JoVVVCaGNXRnhZV0Z4WVdGeFlXRnhZWEZoWVhGaFlYRmhZWEZoUVhGaFlYRmhjV0ZoY1dGaGNXRnhZekZoWVhGaFFYRmhZWEZoWUhCZ2NHQndZR0J3WUhCZ1lIQmlJSEJpSUhCZ1lIQmdZSEJoWVhGaFlYRmhjV0ZoY1dGaGNXRmhjV0Z4WUdGUlFXRlJRR0J3WUdCd1lVQndZR0J3WUdCd1lHQndZR0J3WUhCaU1HQmlNbUlpY2lKaWNtSWljbUppY25JZ1lIQmdZSEJoUUhCZ1luTkRZMUpqWTFOQ1kxTkRZbkppWW5OalEzSmpVMk5qY21OalVtTmpVbUpqVTBKamMyRmhjV0ZoY1dGaGNXRmhjV0ZoY1dGaGMyTnpZMk56WXpOalkzTmlZM0pqWW5KaVluSmljbUppY21KamNtSmljbUppY21KaWNtSmljbU5DY21KeVkxSmlZbkppWW5KaVkzTmlZM05pWTNOalkzTmpZM05qWTFOalkzTmpZM05pWW5KalluSmlZbkppSTFKaVluSmlZbk5pWW5KalUwSmpVMkpqYzBOalUySmpjMk5qYzJOalUyTmpjMk1UWXlOellVTnpZMk56STJOell5TnpZMk14WXlGeklXRnhZV0Z4WVdGelkyTnpZMk56YzJOeFlHQndZR0J3WUdCd1lVQndZR0J3WVdCd1lHQndZR0J3WUdBeFlXTXpZMk56WTJOell5TnpZMk5UWW1OVFltSnlZbUp5WW5KaVluSmlZbkppWW5KaVluQmdjR0JnY0dCaU1VQmdjVUZ4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0FTQUpBUVFDQWdJQkFnTUNBZ1FEQWdJQ0F3VUtCQXNEQWhNTEJ3Y0NBZ1FDQmdzRkJBZ0RBUUlCQXdFQkF3Y0lCd1VDQkFRQ0J3RUNFUU1DQlFRRENBUUlBd0lIQWdjRkF3a0NCUWNGQkFjREJRRUdBZ0lFQWdJQ0FRSUNBUUVCQVFRQ0F3TUlBd1lDQWdZREJRSUJDUU1CQXdVQ0JBb0ZBUWNEQWdVQ0JBUUlCZ0lDQmdJQ0F3SUZBUU1EQWdZQ0FnVURCd0VJQndNQ0JnSUNCd0lPQndVSUNBWUdCUXNGQ3dVQ0FnVURBd1lEQWdVREN3VUZCQWtCQWdZQkJ3VUdBUUVDQVFFQkFRSUJBUUVDQVFJQkFRRUJBUUVEQVFRR0F3SURCUVFDQndJQkFRRURCZ0lKSGhBYUR3a0VBZ2NEQWdNQ0JBRURBZ0lCQVFRQ0FnSUZBUUlDQkFFR0NBUUVCZ01IRGdnS0VRc0lBZ2NCQndJSEFnTURBUU1EQVFFQkFRRUJBUVFCQVFrS0FnSUZCUVVEQlFjQ0NnVUNCd0VCQkFvRUJRSUVBZ0VFQXdNQkJBSUVBZ0VCQVFNQkFRSUJCZ0lEQlFJRUFnb0hBZ0lLQVFNTEJBVUlCQVlMQmdrUENRa1JCUVVJQkFrSEJBUUlCUVVFQXdRTEJBa0dBUWtJQWdRQkFnSUVBd1FCQndjQ0JRRUJBUU1DQWdFQ0FRRnJBZ3dEREFJQ0NBVURDQUVCQndVQkFRRURBUUlHQWdVQkNBY0dBZ1lDQXdNRERCY0xEUUVDQVFJRkFnSU5BUUlDQVFJREJBUUNCd0lIQlFRRkN3SUZCUUk2QmdRQ0N3UUNCd01GQ2dVR0RnZ09EUWdLQmdJRUJ3SUZDQUlCQWdJRkJnRUNBZ1FDQlFzSUJRNElBd2tFQ0JFTkJ3NEVDUVFKQWdJQ0F3SURBZ0VJQWdJRUFnSUlBZ1lCQVFVQ0FRTUdBZ2tDQmcwR0JBWUVDQUlKQkFjRkJRa0dBd1VEQmhFSUJBZ0dCZ3NQQncwQ0F3VUNDQUVJQVFJREFnSUNCUVFFQWdJR0FnUUdEQWNEQXdVREJRUUNDQWdKQmdNRkNnUUpEZ1VGREFVSEF3SUpDUVVEQlFJREJBUUZBd0lCQXdNQ0F3UUJCQUVDQVFJREFRTUVBZ2tJQWdnREFnWUhBUTRLQlFVRkFnTUpCUVVJQlFVSUJRY1JCZ3dEQXdZREJRY0VDQU1DQnc0TUFnY0NBZ29EQ0JFSkNBOEpCUWdFQ0JFSUN3MEdCUWtIQndJTEJ3b0hEQXdHQXdZRUJnc0ZDUU1HQ1FVRUJ3VUtCZ1FFQmdRSERBY0tHQXNJQWdFSkJBa0NBd2tGQXdZR0N3Y0ZBd2tEQlFZRkNnUUNEZ2dIQWdNRkFnWUNBZ1FGQ0FRREJnTUJCUWNHQ1FFSEFRSUtDUVFHQ0FVSUJ3c0VCQWtIQlFzQkFRTUpBd1FGQkF3SEJBSUZBZ2dIQWdjQkFRTUZBd01CQWdJQ0FRRUZCUUlGQ0FVREJ3SUNDUVVFQ0FRSkNBRUdDQVVQRHdnRkRRWUxCQUlNRWdnTURBY0ZDQVFFQ0FVREJ2N1FBZ2dGQVFJSEJnSUpBUXdHQkFJSEJBc0xCUVlJQlFnR0JRMEdCQWdDQXdRQ0N4VUxCUVFEQndJR0JBc0tDZ0lLQmdzRkNnNElCUXdFQ2drREJ3b0hBZ2dBQVFBU0FQZ0F2d0doQUQ4QUFCTVdGaGNXRkJjV0JoVVVCZ2NHRkFjR0ZBY0dCZ2NHQmljbUppY21JaWNtSmljbUppY21KamMyTmpjMk16WTJOell6TmpZM05qWTNOaGNXTWhjWEZoYW5BdzhEQVFFQkFRRUZCUUVJQVFrR0Jnb2VFZ29FQXdZRkFRTUdCQVlIQkFRSkJBRUdBd2NCQXdRRUJ3TUtCUU1FQ2dZR0Rna0hCQXdKQkFHTEN3b0lBZ2NEQmd3SUN3Z0lCZ01CQlFNQkJnY0RCUTBFQmdJQ0JRRUNCUU1FQlFjSEd3OERDd1VLQlFRRUNBWURBZ01FQWdRQ0JBSURDQU1BQUFBREFDbi8rZ0loQXY4QkFRRmdBZEFBQUFFVUJoVUdCZ2NHQmdjR0JnY0dCaFVVRkFjR0JnY0dGZ2NVQmhVR0ZoVUdGQmNXRkJjV0JoVVVGaGNVTVJRV0ZSWVdGeFlXRnhZV0Z4UVdGeFlXRnhZVUZ4WVdGeFlXRnhZWEZqWVhCZ1lIQmlZSElpWWpJZ1luSmdZbkpnWWpKZ1lqSWlJSEJpSUhCZ1luTmpRM05qWTNOalkzTmpZM05qUTNORFkzTkNZMU5pWTFOU1ltSnpRMEp5WW1KelEyTlNZbU5UUTJKeVltQnlZR0p5WW1KeVlpSnlZbkppWW5KeVltSnlZbUp5WW1KeVltSnljbUppY21KaWNtSmpVME5qVTJKamMyTmpjMk5qYzJOamMySmpjMk56WTJOelkzTmpZM05qY3lOak0yRmpjMk5qYzJGamMyRnpJeU56WVdOekkyTXpJV056WVdOell5TnpZM05qY1dGZ2NHSWdjR0pnY0dCaFVVRmhjV0ZoY1VGaGNHRmhVV0JoVVdGaGNXQmhjV0ZoY1dCaGNXRmhjVUZoVUdCaGNXTnpZbU5UUTJOelkyTlRZbU5UWWlOVFltTlNZMEp5WW1KeVkwSnlZbU56UTBKeVltTlRRMk5UUTFKalkzTmlZbkJ3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdGUlFXRlJZVUZSWVdGeFlXRnhZV0Z4Y1dGeFlXRnhZV0Z4WVZGaFlYRmhZVkZoUXpGaFlYRmhZWEZoWXpGallYTmpVME5qVTBKalUwTmljMEpqVTJOaWNtTkNjbU55YzJKalUySmpVME5qVTBKaWMwTkNjMk5DY21CZ0hzQndzSEF3TUVCQUVFQWdJREFRRUNBUUVEQWdNQkFRRURBd0VCQVFNQkF3RUJBZ0VCQVFFQkFRRUJBUUlCQVFJRUNBY0NDQU1WREFRSkFnSURBZ2NEQXdZUEJRUUlCdzhyRWdVS0JRb0hBeEVzRlF3U0J3TUdCUVVDRGdnRkFnVUNDd1lCQWdFREFRSUJBd0VDQVFFQkFnRUNBUUlCQVFJT0F3WU1DQU1IQkFNSEF3d01CUXNGRUFzUkNBVUNCUUlJQXdZR0Fnd0VCUU1DQWdJQ0JBSUNBZ0lCQkFJQ0JRTUNCQUlGQVFFS0JBTUZBZ1FIQnc4SUhCOE1CUUlIRGdZRkNBUUpGUW9SRFFVSkJRTUlCUU1HQWdNR0F3Z0dCQW9NQlFvTUNnY0hCM3dJQmdNRUJRSUNBZ1FDQWdFQ0F3RUJBZ0VCQVFFQkFnTUNBUU1CQVFFQkFRRUNBZ0lDQWdRYUFRTUNBUUlGQVFJQkFRRUJBZ0lDQXdJREFRRUNBUUVDQXdFREFRRUJBZ09YQ0JFS0JRd0NBd2NDQ2dRQ0FnTUJCQUVDQVFNQkFRSURBZ0VCQVFVQ0FnVUNBZ0lGQWdJRUFnVUNCZ0lHQXdZQ0FnWUVBZ1lEREFVQ0NoUUpBZ0VCQXdFQ0FRSUJBZ0VEQWdNQkJBSUNBZ01CQVFFQ0VCTUMrZ1lHQ0FVSkJRVU1CUVlOQndnUkN3UUxDQWNOQ0E0YkRRZ05Cd1FIQWhVakVBc1BCd3dEQWc0YkVBd0hEUWdPSFE4T0hRNEhEd2NIRFFnREJnUUVDQVFJREFVQ0F3SU5EZ0lFQkF3Q0FnSUlBZ0lCQVFFQkFRRUJBUUVDQVFJQkF3UUtCd0lHQmdRQ0JBSUhDQUlDQndRQ0JnTUNCd1FNREFZUkNCQUlCaE1IQmd3RkJRZ0VCZ3NGQmd3RkFnRUNCUUVCQVFJQkFRRURCZ0lJQXdnSEZ3c0ZCUUVHREFZTUJnUVlCUTBIQkFvRkJRY0ZCQWNGRGhvTEJnd0dCUXNGQkFnRUJnTUNFUU1DQkFNRUF3VUtBd3NFQWdFQkFRRURBUUlEQWdVQkFRSUJBUUlCQVFNQ0FRVUJBd1VEQmdFQ1NRUUNCZ0lDR1RFWEV5WVFEUmNKQ3hNR0JnVURBd2dEQkFVREhUWWVCdzRJQ1JNSkVTWVZDaEVLQmd3R0dnZ0ZDQVVFQ1FRTUZnMFFDUVVNQWdzTEJSUW5GQjAzSFE4SEJBZ1FDUVlRQ0F3V0RBTUZCQW9CRkNZUkRTTUxDQVVGQXdJRUFnTUNBZ2tFQXdNRkF3a1NDZ1VMQlFVSkJRVUtCZ1VNQndRSUJRd01CZ3dFQ0FZTEJRY0xCUVlFQkFZRENnRUJCZ0lDQVFJQ0F3RUNBZ0lDQWdvQkNRa0dBZ1lEQlFrRkJRMEdEQWNDRGdzRkRBUVNDdzRIREFZQ0JRZ0ZDQThJQnc0REVoME9BZ29BQWYvLy8rQUNmUUxKQWpBQUFDVVdCd1lIQmdZSEJnWUhCZ1lIQmlJSEJnY0dJd1ltSXlJR0p5SW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WUdCd1lHQndZVUJ3WUhCZ1lIQmdZbkpqWTFOalkzTkRZM05qWTNOalkzTmpZM05qWTNOalkzTmpRM05pWTNGZ1lYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZqWTNOalkzTmpZM05qWTNOamMyTmpVMk5EYzJKamMwTmpjMEppY21KaWNtSnlZbUp5WW1KeVlpSnlZbUp5WWlKeVltSnlZbUp5WW5KaUluSmljbUppY21JaWNtSmljbUpqYzBORFUySmpjMk5qYzJORGMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmljME5DYzBOQ2NtSmljbUp5WW1KeVluSWdjR0JnY0dCZ2NHQmdjR013WUhCZ2NHQmdjR0JnY0dCd1lHQndZR0J4WUdCd1lIQmdZSERnTXhIQU1YRmhZWEZCWVZGaFFYRmhjV014UVdGeFlXRnhZV0Z4WVhGaFlYRmdZWEpnWWpKaVlqSWdZSElpWUhCZ1lIQmlZbk5qRTJOamMyTnpZMk56WTJOelkyTnpZbUp5WW1KeVltSnlZMk5UUW1OelEySnlZbUp5WW1JeUltSnlZMk56WTJGeFkyRnpZMk14WTJOelkwTnpRMk56WTNKamNtTkRjME56WTJOelkyTnpZMk56WTNOalkzTmpZM05qVTJNamMyTmpjMk5qYzJOelkyTnpZMk56WXlOellXTnhZMk56WVdGeFlYRmhZWEZoWVhGaFlYRmhZWEZ3WVdCeFFXQndZSEZBWUhCZ1lIQmdZSEJnWUhNQTRDTVFZR0J4UUdGUllXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdNeFl5RnhZWEZoWVhGaFlYRmhjV0ZoY1hGaFF6RmhZWEZnWVhGaFlYRmhRQ2ZBRUlCUVlFQ0FVQ0NBUUhCQU1KQkFJTUJ3b0JFQTRKQlFvRkRCb0xDQkVJQXdVREJRVUZBZ1lDQXdVRkJnTUVBZ01EQ1FJRENBTUVBZ01FQkFZQ0FRSUJCQUlDQWdJQkFnSUNBZ0lEQkFVQ0JnTUJBUUVCQlFrQkFnRUVBZ0lEQWdJRkFnSUVBZ1lQQndnS0JnVU9CdzRaRGdZTUJ3TUtBd01SQXdJREFRTUJBUUlEQVFVQkFnRUJBUVVKQmdnTEN3c2FEQXdHQWdRSEJBUUdCQVFLQ0FnTEJ3VUdCQWNDQXdZSURRUUhBZ0VHQndJRUJnRUJBUUVDQmdJRUFRUUdCQUlIQWdNREFRUUlCUU1QQVFJRkFRRUNBUUVCQWdrQkNBVUVDQVFJQ2drRUNRY0ZFUW9GQ1FvRUNRRURCUVFEQlFNQkJRSUNBd0lDQlFNQ0FRSUJCQUlDQVFNR0FnTURBd0lCQlFNQ0FnSUNCQUlCQXdJQkFnRUNBZ2dDQkFZQ0JBSURCQUVLR0F3RkNRVUZDUVVLR1FzUUNRUUNDQUlDQlFJQ0J3Y0ZDd0lHQmdNSEFnSUNBUUVCQVFFQkJBRUNBZ01CQWdJRURRVVNGUWNMRFFFQkR3Z0ZCUU1QQndnSUJRUUhBZ1FDQVFFQ0FnRUJBUUVCQkFJQkFnSUdBUUlFQWdRQ0FnY0RCQVFDQndrREFnc0xCZ2NUQndjREJRa0ZBZ1VEQkFnRUJBWUNCd3dGQ0JnS0N3RUtCUUlDQmdFSEJBSUNCZ0VCQWdVQkFRRUNBd0lCQXdVREFRZ0JDQTRCQlFRRkFnUUNBUUVFQVFVREFRSUJBZ0lIQXdnQ0FRUUpBd3dOQmdrRkFnZ0VBUU1JQlFvTURRc0ZDd01DQmdrSEJRTUxDZ0VFQXdJR0FRRUNBZ0VCZVNRWkRnWUZEUVlFQ0FNRUJBSUVBZ2tCQkFNQ0FnRUlCQUlJQlFJRkFnTUVCUUlJQXdRSkF3RUhBUUlFQWdzRkFnUUlCQWNDQndjQ0FRb0RCQWdEQndVQ0J3a0hCUXNGQ0E4SUVSOFFDQTBIQkFrRUF3Z0NFQmdKQnc4SENBNEdCUWdFQkFnRUN4SUlBZ2dDQWdJQkFnRUdBZ2dFQWdRREF3b0ZCd01JQndRRUNBVUtCUUlGQ3dVRENRVUlDZ1VIQkFjSUFnTUVBd01DQVFRQ0FRRUNBUUlDQkFVREF3TUNBUVlIQmdNR0FRa05CUWdOQ2djTkJ3UUVBd1lOQmdZRkFnWU1Bd1VHQlFjQkFRUUxBZ2dSQlFnS0NBVUpCUVVKQlFRSUF3a09DQVlDQWdRQ0FnSUJBd0lCQndvRUJ3Y0ZEQVlGQmdnSUFRRU1DQUlIQ2drU0N3VUhCUUlQQXdvRENBNEpDaGtiRlFJTkRnMERFeE1MQlFnRUNoVUpFQXdOQ0FRQ0JBa0ZDQkFJRGcwRkRRY0xCQUlDQkFFQ0FnRURBUVVCQlFNQ0FnMERCUUlNQ2dVSkJRMExDQkVuRGhBT0NBVUtCUVVKQlFnUUNBY09Cd2NMQndVQkFRTUNBZ1lJQkFJQkFnSUJCQUVCQWdFQkFROFhEQWtQQ2dnRENnRUVFQVlMRFFZTENBZ1BDUUlJQkFZRUF3WUVCZ01EQmdNSkFRZ0lCUVVJQmdJREFnTUNBZ0lEQVFFRUFRUUJCQUVDQndZSUFnb0dBd0lGQWc0TUJRVU1CUklDRWdRRkN3WUxEQUlLQWdjR0NBSUhBZ2tPQWdjSUJ3UVBDUU1HQXdjT0NRb0dBd01HQWdJRkJBWURBUUlEQWdZRUFnWUJBZ2dDQWdJRUF3UURBZ0lEQVFNREFRUUNCUVVEQmdjREN3d0dCZ3NHQ0EwQUFBTUFHUUNWQW5FQzh3RHBBdFFERGdBQUFSWUhCZ1lIQmhVSEJnY0dCZ2NHRmdjR0JnY0dCd1lpQndZeEJnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHSXdZSEJpY21JaWNtSWljbUppY21KaWNtSmljbUppY21KaWNtSmljbUp5WW1KeVltSnlZbUp5WW5KaVluSmljbUppY21KaWNtTkNjbU5qVTBOamMyTmpjME56WXpOalkzTmpZM05qYzJOamMyTmpjMk5qYzJJemMyTmpjMk56WTJOelkyTnpZM05qYzJOelkyTnpZeU56WTJOell5TXpZeU16SVdGekkyRnpJV0Z4WVdNeFlXRnhZV0Z4Y1dGeFlXRnhZV0Z4WVVGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGUllYRmdZVkJ6WW1KeVluSmpRbkppWW5KalFYSmljbUppY21KaWNtSmljbUppY21KeVlqSmlZakppWWpJZ1lISWlZSElnWUhCaUlIQmdZSEJpSUhCZ2NHQmdjR0JnY0dCZ2NHQndZSEZoWVhGaFlYRmhZekZqWTNOalkzTWpjMk16SXlOek15TWhjWEZoWVhGaGNXRmhjV0ZoVVdGUllWRlFZSEZBWUhCZ1lIQmdZSEJnY0dCeFlXRnhZV0Z4WVhGQVlWQmhZSEJoWUhCaFFIRmdZWEZqTVdGaGNXTWpNMk5qYzJKamMyTmljbUp5WUdCd1lVQnhRWEZqSVhCaU1HSnlZMUpqUTNOalkzTmpZM05qWTNOaFlYRmhZWEZoWVZGQVlIQmdjR0J3WUdCd1lpQndZR0l3WW1Jd1lHSXlZbUp5WW1KeVltSnpVbU5qVTBKamMySmpVbUp5WW5KaVluSmlZbkppWW5KZ1lqSWlZaklnWUhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVZCZ1lIQmdZaklpWUhJZ1lqQmlNR0JnY0dCaWNtTmpjMk5qYzJOamMyTmpjMkpqVTBOQ2MwSmpVME5qVW1KalVtTmljbU5qVTBKeVkyTlRRbUp5WW1KeVkxSmlZbk5DWW5KalluSmlZbkppWW5CZ1lIQmdjR0J3Y0dGUVlHQndZR0J3WUdCd1lVQndZV0J3WW1Cd1lHRnhZV0Z4WVVGeFFXRlJZV0Z4WVdGUllXRnhZVkZoUVhGaFlYRmhZWEZoY1hGaFlYRmhZWEZoY1dGeFlqRmhZWEZqTVdGeFl5RnhZMk16WTJOekkyTXpZM05qWTNOalkzTmpZM05qWTNOamMyTmpjMk56WTNOalluSmlZbkppWWpCZ2NHQndZV0J3WUdGeFlXRlJZR0Z6WVdOellVTXpZMk16WTJOellXTnpZMk56WTJOelkyTnpRMk5UWW1KeVltSnlZakFtNERDQUlIQWdNRUJRSUNCQUlHQVFFRUF3SUdBZ2NDQWdjRUJBUUdBd1VJQkFVSkJnVUtCUWdRQ0EwSEJRVUhCUXNNQWdVS0JRUUlCQVFKREFnUEVBb0VBZ2NDQWdVSUJRUUpCQVFJQlFZRkFnSUZBd3NJQkE4TEF3Z0RCUVlCQmdNQkJ3RUpBd0lHQWdRQ0FRSUVBZ1VCQXdJQkFRSURBZ0VFQVFVRUF3TUpBUWNFQWdNQ0JBSUNDQUlDQ0FFSUJBUUNDd1VGQ0FRR0RBWUxCQXdDQ1FJT0dBc0pGZ3NGQ3dVTUN3WUZDZ01FQmdVSURnY0ZDUVVGQndVR0FRSUlFUWNIQWdRQ0F3SUVCUUlJQVFJR0F3VUdBZ1FFQWdZQ0FRWUZBZ01CQmdJR0FUWUVDd2tHQ0FZQkJBSUNCZ0VHQWdNSUF3Y0ZBZ1lKQXdRR0F3a0dEUWNDQlFRRkRBWUZDd2NGREFZSERnZ0VCd1FEQmdVREJ3TUVDQW9HQkFzSEJRSUhBZ1lHQlFJRUNRVURCd1FHQlFJRUN3VUlFUXNHQlFRSkJSQUlDd1VJQlFzSUZBa1FCQVlJQWdJREFRRUJBUU1CQkFNQ0FnUUVDd0VOQ2drSUJBTUhBd2NDQVFFQkFRTUJBUVFDQWdJREJnSUlBUUlGQ0FRTkJnTUZBUUVDQWdJQ0Fnd0lBZ01CQ0FJSEF3WUNDUW9LQXdFQ0JnSUNBZ0lLQVFJTEJBSUpCd0lFQkFJQkF3WUdBUXNGQXdJRkJBY0dBd01GQXdNR0JBMEdCZ2NFQWdJREFnSUJBUUVDQVFFRUFnUUNCUUlGQmdRRkJ3VUZEQVlGQ0FVR0RBVUJCQUlDQVFVQ0J3SURCZ0lEQndJS0F3SUlCQW9EQWdNSEF3UUlCQVFKQlFzSUJ4UUlDZ1VDQWdRQ0J3TUNBZ1FDQWdJQkFRRUJBZ0lCQVFJQkFRRUJBd0VDQVFFQkFnSUJBd0VGQWdJR0FRRUNCUVFKQWdFSEFRa0RCd2NIQWdJQ0JBTUNBZ0lGQVFVQkFRTUJBUU1DQXdFRUFnSUJBZ1FCQWdFREF3VUNCUWtCQkFJQ0F3WUZDQU1KQkFRQ0JnWURCZ1FHQmdzQkVBNEZEQU1GQmdVTkJnMEZBZzhGQkF3RUFpTWNCUW9GQ0FVQ0JRWUVCQWNDQmdFR0JnUVJDUWtEQVFMeEJnVUVCQVlGQ1FzS0JBSUJBUUVFQVFFREFnTUNCZ3dIQ2dFS0NBZ0NDZ01GQkFJREJRSUNCd0lJQXdFQkFnRUZEQkVGRFFVQjRpSWlDeElKQ2dFTER3TUREQVVLQVFFRUJRSUhCQXNDQ1FZRUF3Y0RCUWdFQkFjRUF3VUVBZ2dDQlFFQ0FRSUJBd0VCQVFFQkFRSUJBUUlDQXdRRUFRUUJBZ1VDQWdRQ0FnVUNCQUVDQWdVQ0J3VUNEQXdEQlFNSEJnVUtBZ0lJQ0FjRkJRc0dCUVVDQmhBSERRY0REQWtHQ0EwRkN4WU1DQVVLRHhJSENBMElDUVFEQkFNRkF3SUtCQUlLQ1FNRUF3a0ZBd1VFQkFrRUJRSUZBUVFCQlFVQ0JBTUJBZ0VDQVFFQkFnRURBUUlEQ3dJQ0NCRUxDZ0lJQWdVQ0J3UURDUUlDQXdrRUJ3Y0ZCd2NDQ2drQ0R3a0ZCd0lDREFnTEJBTkpJejRYRWhBSUJBSUtCd01LQWdFTEFnWU1CUWtKQXdnSEJnSUhCQVVFQlFFQ0FRRUNBUUVCQXdFQkFRRUNBUUVDQVFRRUFRSUVCd0lEQkFJRUJnVUVBZ2NDQWdNQ0FRUUJBZ0VCQXdFQ0FRRUJBd0lEQWdVREF3c0VDZ2NDQXdrTEFRc1JCQU1HQWdrSUJBUUhBd1lCQlFNRkF3RUVCQU1TQ2dVS0JRUUhCUVlGQXcwSkJBWU1CZ2dGQWdFQ0F3VUNEUWdFQndjSENBUUdCUUlGQkFJTEFnSUNDUVlHQ0FFSkNRTUdCUUlDQndJSEFRRURBd0lKQmdRT0RBSURDQVFPREFrQkNBRUNBZ0lCQWdFQkFRTUJBUVFFQXdRREJBVU5EZzhGQ0EwRkNnVUNEUWdEQ0FJRkFnTUJBZ0lEQVFJQ0FnUUNFQ0lRQ1JBR0JBVURBd2NDQXdNRUJnTUNBd0VCQVFJQ0FRTUJBUUlCQVFNQ0JRVUNBd1VEQ1FRQ0JRY0VCZ01DQkEwRkF3Y0VDQU1DQkFjRUNCZ0xDZ1lDQ3dVSUJRTUZDUVVGQ2dVRUJ3c0ZBd3dHQXdjREFnb0ZBZ1VMQkFnQkFRb0JEQWtMQ0FNSkNBUUVCZ1FFQ0FVSkJRTUlBZ0VMQWdJTklBMEZDUVVGRGdZRUNBSU9CZ01EQ0FJSUJnTUxBd2dDQVFJRkFnUUdCUWtCQ2dNRUFnUUlBZ1FDQlFJSEJRUURCd01CQVFFQkFnSURBUUlJRUFNSEFnY0VBZ1FHQkFNR0F3WUVCZ29GR0J3V0dRUUp2Z0VEQVFJREFRTUNBZ1VNQlEwWURRVUhCUWtVQ1FFQkFRTUJBZ1VEQkFJREFRRUNBd0lCQWdFS0FnSUxCQUlLRlFZSEJnVUZBQUFBQUFNQUdRQ09BbkFDN1FEN0FlWUM4QUFBQVJZV0Z4WVhGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFlXRnhZeUZ4WVdGeFlXRlJZVkZnWUhCZ1lIQmhVR01RWUhCZ1lIQmhZSEJnWUhCZ2NHQmdjR0lnY0dCaU1HQmdjR0JnY0dCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lpQndZR0J3WWpCZ1lIQmljbUppY21JaWNtSmljbUppY21KaWNtSmljbUp5WW1JeVltSnlZbUp5WW1KeVluSmljbkppWW5KaWNtSmljbU5DY21KeVluSmpRbkpqWTFOalkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTnpZMk56WTBOelkwTnpZMk56WTJOelkzTmpJM05qWTNOamMyTmpjMk5qYzJOell6TmpZek5oWTNOamMyTWpNMk1qTXlGekkyRnpJV0Z4WVdGeFlXQnlZakppWWpKaVlqSWdZSEJpWUhCZ2NHQndZaUJ3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUhCaFVHQmdjR0JnY0dCZ2NHRkFjR0ZnY0dCd1lHRnhZV0Z4WVVGeFFXRlJZV0Z4WVdGUllYRmhVV05SWVdGeFlXRnhZV0Z4WVdNeFlXRnhZV0Z4Y1dGeFlYRmhZWEZoWVhGallYTWhZek5qWWpOaFkzTmpZM05qWTNOall6TmpjMk5qYzJGamMyTmpjMk56WTJOelkyTnpZM056WTJOelkxTmpZM05qWTNOVFkyTlRRMk5UWTJOVFFtTlRRMk5TWTBKeVltTnlZbUp5WXhKalFuSmlZbkppWW5KaVluSmlZMUppWW5KalVtSnljbUppY21KaWNtSmhjWEZBWUhCZ1lIQmhRSEJnWUhCaFFIQmpFR0ZBY0dKaWNtSmljbUppY21KaWNtSWljbUp5WW1KeVltSnlZbUp3WW1Cd1lIQmpFR0JnY0dCZ2NHQmdjR0J3WVVCd1lVQndjR0JnY0dCeFlHRlJZV0J4VVdGaGNXRmhjV0ZoY1dGaGNXRmhjV0ZqTVdOamNXTnpJMk56WTJOelkzTmpjMk5qYzJOamMySmpNMk5qYzJOalUyTmpVMkZoY1dGZ2NHQmdjR0J3WUdCd1lHQndZR0J3WWlCd1l4QmdZSEJnWUhCZ1lIQmlJSEJnWW5KaVluSmlNbUp5WW1KeWNtSnlZbUp5WW5KaVluSmlZbkpqYzJOVFkyTlNZMk5UWTJOelkxTmpjMk1UWTJOelkwTnpZMk56WXhOall6SmpZM05qYzJKajhDTmpZM056WXpGaGNXRmhjV0ZoY1dOamMyTmpjMk5qY0IyQU1JQkFrSkJna0xCZ2tGQWdJRkFnY0ZCQU1DQWdJQ0FnSURBZ1VCQVFNREFnUURBZ0lGQmdJREFnTUZCQUlDQkFJR0FRRUVBd0lIQVFJREF3WUJBUVlCQWdJSEFnWUJBZ2NDQ1FnR0JRb0VDQkFJRFFjRkJRZ0ZDZ3dDQlFvRkJBZ0VCQWtGQ2dVT0VBb0dCQVVHQXd3TUJnUUhCUU1IQXdJRUFnUUlCd0lCQ2dRQ0NRWURCZ0VDQlFZSEFnZ0lCZ01FQVFVRUFnRUNBZ0VEQVFFQkF3SUJCQUlCQXdJRUFRSUNBd0lEQ1FFSEFnSUNBd0lJQ0FJQ0JnRUhBZ1FEQWdZS0NBY0JDZ0lCQ2dNQ0JnZ0RCUU1KRXdzS0JBb0NCQWNEQmd3R0NBME1Dd1lGQ2dNR0NRZ09Cd1FJQlFrREFnTUZKZ29IQWdVRUJRd0dCUW9IQ2hNSUVBWUxCd2NIQXdVSEJBNEdBd1VIQlFJSEFnVUZBZ1VDQWdJSEFnY0RBZ2NFQWdZQkJ3Y0NBZ0lFQXdJQ0FnVUJCUUVCQXdJREFnTUJCQUlDQVFJRUFRSUJBd2NEQlFnR0FnSUZCUVFGQkFJSEFnSUNDUUlGQlFRSkRRWUdCQVlOQlFjRkF3NElCUVVKQlFzQkFRWUVBd1VIQlFVSkJRd0JBUXNGQXdZQ0NRUUJCUXNFQ0FFTUNRVUZCd1FHQkFjRUFnSUVBZ0VDQWdNQkFRRUJBUUVDQVFJQ0FRSUJCUUlDQndFQ0JnUUVCUUVDQWdRQ0JBRURCQUlHQndJSkF3TUNCd0lCQXdjYUF3SUNBZ0lDQVFFQ0FnSUJBUVFDQkFZQkFnRUVBZ1FCQWdJRkFnY0NBZ2NCQXdRQ0NRUUNDZ2tEQWdnRUJ3UUhBZ1FDQWdVQ0FRRUJBZ01HQVFVQkJBUUNBZ0VDQVFFQkFRRUJBUUlDQlFRSUF3SUNCZ0lKQWdRRkJ3SUVCZ01MQVFRR0F3WUlCUWtCQXdVS0JRSUhBZ0lIQVFFRUF3SUZBZ1lEQ0FjQ0FnRUNDUW9HQlFNREJRUURCQU1JQlFNR0FnRUpCQWdFQXdVREFnZ0VDUU1EQ0JNSEJRZ0dDUU1HQlFRR0FnNEdCQVlDQVFZRkFRTUJBZ01CQWdJQkFRSUJBZ0VCQVFRQ0FRTUVBUUlIQVFRQ0FRWUVBUVFCQWdFSEFnY0JBUkFRQlFNRERna0lFQVVIREFZR0FnSUZHZ1FHQndJRUJRVUMyQVVHQlFnTUN3ME9Cd3dKQkFNRUF3d0pCUVlFQWdVSEJRVUhCQXNCQ1FnRkN3UUNEQUlYS1JRRkN3WUtBZ3NPQXdNTkJBb0JBUVFGQWdnRUF3VUNCd0VJQkFRREJRUUVBZ1lCQndjREF3VUZBZ2NDQlFFQ0FRSUJBd0VCQVFJQkFnRUJBZ0VDQXdNRkFnSURBZ2NGQkFJRUFnSUNBZ1FDQWdJR0JRRUpBZ0lIQ0FNREFnSUhCZ3NHQ1FzTEJRZ0NCd29GQXdZREJ3VUdCUUlIQXd3SkJoSWREZ2dQQmdrR0JBY05CUWdOQ0FnRUFnSUVBd2tMQkFJSUFnRUZBZ0VCQlFJR0NnVUhBUVlCQndRQkFnSUNBZ0lFQndJQ0FRSUJBZ0VCQWdFRUFnRURBd0VFQVFNRUFnSUNGUVFCQWdFQkFnRUJBUUlDQVFJQkJBSUJBZ0VGQWdFREJ3RUVCQUlEQmdJRUJBSURCUU1KQkFJS0NRUUtBUWtEQ0FnRkJBWUVCQWtFQ1FVQ0NRSUJDUUlOSVF3RkNRVUhEQVlFQ0FJT0JnTURDQUlNQmdvQ0NRRUdCUUlHQndJRUJRRUlBd1FGQXdRR0FnY0hBZ01DQWdVREF3SUJCUUVCQWdFQkFRRUNBZ0lDQWdVQ0JBSURCQUlCQWdnQkFnUUZCQWNCQ2dnRkJBc0ZDQWtKREFjRUN3SUVCd1VGQ2dVUkF3VURCd29GQmdzRkJRa0ZCUXNGQXdjREF3Y0VCUThIREFNSUJBMExCUWtFQWdNSUFnY0NBUVFFQWdvQkNBTUpBZ1VDQlFFQ0FnSTlFQVVLQlFZT0NBSUhBd1VNQlFVSUJRc0RCd0VEQndRREJ3UUdCZ0lDQkFJTEFnY0ZCQU1DQ1FRQ0NRSUNBZ01DQXdRS0F3WUVCQXdGQXdVREJRVUlCQUlIQkFJT0R3OEpEQVFNQndRRkNRWVBCZ3NGQ0F3RkN3WUNCQVVEQ2dFQ0FnTUJBZ0VCQVFNQ0FnTURCd0lGQkFrRUF3Y0VBZ2dEQlFjRUJ3SUJDUUlDQ1FvREJ3VUREdzBGQmdNQ0J3UURCQVVKQndNR0FRZ0RCd0lDQWdJQ0FRSUZBUUlDQWdJREFnUURCUUlHQWdzRkNBY0JBZzhLQkFZREJRb0ZEQkFMQ0FzQ0FnY0NBZ1VPQWd3QkNRTU1CZ1lDQ2dVQ0NnSUNDZ1lFQXdZQ0NRSUlBUUVPRUFJRUFnVURBUU1FQ3dVRkFnRUNBUUlHQkFJREJ3SUFBQUgvL3dHVEF5TUM4UUgrQUFBQkZoWVhGQVlIQmdZVkJoWUhOamMyTmpjMk56WTJOelkyTnpZMk56WTJOeFlXRnhZV0Z4WVdGUllHRnpZMk56WTJOelkyTnpZeU56WTJOelkyTnpZeU56WTJOellYRmhZWEZoY1dGQWNHRmdjR0JnY0dCZ2NHQmdjVUZnY0dCZ2NVRmdjR0JoY1dGaGNXRnpJM01qSTNOalkzTmpjME5qYzJKaWMwSmljbUpnY0dJZ2NHQndZR0Z4WTJGeFFHSWlZbkpqYzJOamMyTmpjMk16WVdGeFl5RnhZV0Z4UVdGeFlHQndZVUJ3WWpCaFFqQmdjR0JpY2lCaWNpSmlNbUJpY21KeVlpSnlZbUp5WW1KeVkyTnpZMk56WTBOelkyTnpRbU56UTJOVFkwSnlZbkpnWUhCZ1lIQndZSEJnWUhCZ1lYRmhRVkZoY1dGaGNHQmdjR0JpY21KaU1tSmljMk5qYzJOeVkyTnpRbU56UTJOVFkwTnpRbU5TWTJKeVkySnlZMkp5WUhCZ1lIQmhZVkJoWUhCaFlWRkJRSEJnY1dGQmNVRnhZV0Z4WVdGeFlHSXlZbUl3WW1JeVltSnlZaklnWW5KalkzTmpjMk5qY21OalVtSmpVME5qVTBKalUwTmpVMEppY21OaWNtSWljaUppTUdKaU1tQmlNbUppTUdGQWNVQmhVR0JnY0dGeFlXRnhZV0Z3WW1JeUlHQndZaUl3WUdKeVkyTnpZMk56WTJOelltTlRRMk5UUW1OVFEySnlZbUl5SW1CeUlHSXdZaUJ3WUdCd1lHQndZR0J3WVVCd1lqSmpRbkppWW5KalFuSmlZM05oWVhGaFlYRmhZWE1oWXpOakkzTmpJek5oWTNOaFl6TmpZek1oWXpNalkzTmpZM05qWTNOalkzQVhFRkFRRUJBUUVDQVFJQkNBTUNBZ0lCQlFJRUFnUUpCQVVMQ0E0TkNBUUdCUVFIQWdRQ0FRTUNDQVlDQWdjRENRUURDUUlDQXdRRUNRZ0ZBd1lEQXdZREVoSURCZ0lOQ0FNQkFRRUNBZ01DQWdRQ0FRSUJBUUVCQXdJQkFRTUJBZ0VLQlFzRUNBb0ZDUUlLRGdVRkJRWUJBUUlCQkFJRkNBWUtCQUlJQVFNREFRY1FCUXNRRUFVTkRBY0JBZ29GQWdzRUNRb0ZCQVlEQlFnRkF3RUNBd01CQWdZREJRRUxCQXNVRHdZU0J3SUhCQVlMQlFZR0NBSUJDUUVDQVFNQ0FnVUNBd1VDQlFJQkFnRUJBUUlCQlFjR0RpVUhCd2NDQkFVRUJBVUNBUUVCQVFJS0F3a0NBUWtFRFFjR0J4SUlDeFlHQndZRUF3WUJCUUVCQVFNQkFRTUJBZ01GQVFFRUFRSWVEd2dHQXdNQkJBRUJBZ0VCQVFJQkFnSUNDd1VDQlFJS0N3b0pBd0VNQndJT0ZBZ0tCUVlMQmdJR0FnWUNDQXNFQVFFQkF3RUNBUUlCQXdJSUF3WURCUWtDQ0FFREF3Z0NDQmNOQXdJREFRRUJBZ0lCQXdZS0RBWUNCd1FSSGc4R0RBWUdEQVVEQ0FJRUNBUUdCd0VDQWdFQ0J3RUZEUWNHRFFjREJ3UUtFQWdIQ3dNQ0FnSUNCQUlCQWdVRUF3RUJBZ0lDQVFFR0Fnd05Cd1VNQmdVSUJBa0NBUW9IQXdzS0JSRWRFQXNZREFrUkNBUUZBZzRKQlFVSkJBNElCUVFFQWdMeEFnMEVCQW9GQ1JBSUJRY0VDZ01EQXdRRUJnTUVBd1lHQXdRSEFnTUJBZ0lFQWdJRkJRNElBZ1lMQlFjRkJBSUpBd2dDQWdjQ0FnUUNCQU1DQVFJQkFnRUJCd0lCQWdnVENSUU5DQkVJQlFrRkN4TUxCZ3NGQlFnRkNoSUtBd2NFRUEwRUJBMENBZ0lDQVFJS0FRb0ZCeEFJQ0E0SUNBMERBUU1DQlFFSEJBVVdCZ01HQlFrSEJBSVFHUW9JQXdjQkFRWUVBUUVCQWdJS0FnTUZCUkFsRGdVTEJBb0lBZ2NFQ0FZQ0F3RURBUUVCQWdRSkFRZ0pCQVVEQkFjVEN3a1NDaE1ZREFZTUJnUUhCQU1GQXdzZkNBZ0NCUWNLQ2c0SEdoUVFEaHdQQ3c0TUJRb0NCd1FDQVFZRUFRRUNBUUVCQWdFQkJ3b0pCQWtGQmdvRkF3Y0VCUW9GQlF3R0JRb0ZEUmtMRFFnRUJRUUNEUmNKSEFzR0F3SUtCZ01LQXdJRkRRY0hDZzBiRVFrSUJRa0ZBZ1FEQ3dZQkFnRUNBZ0lCQWdRQ0JBWUNCQVFIQ2dVSUVRZ0lEd2dGQ2dVRkNnVURCZ0lEQlFNVEtSRUNBUUVCQWdFQ0FRRUNDQU1DQndJU0lSRXJKdzBPQ0FvT0JRa0JBd0lCQVFFREJ3WURCUXNJRHcwR0RpUVJCQWdFQ3hVTUN4Y01BZ0VDQVFJQ0FnSUVCUVFLQlFVSEJBSUdCQXNDQndRR0RRY0xIeEFKRndRRkJnSUNCZ0lDQXdFQ0FnRUVBUVVCQVFFQkFnRURBZ0VDQVFjQ0JBUUNBZ0FBQUFFQWFBSkpBUllDNGdBNkFBQVRGaFl6RmhZSEZBWUhCZ1lIQmdjR0pnY0dCaU1HQmdjVUJnY2lCZ2NHQmdjbUp5WW1OU1kyRnpZMk56WTJOelkyTnpZMk56WTJOelkzTnY0SUJBTUNCd0lFQVFRRkJBWUZCd0lCQVFZREN4TU5CZ0VGQ1FRSEJBWU9CQVVPQVFZSERBVURBd1lFQmd3RkJ3c0hDUWtDRHdvTEF0Y0pBZ1VLQmdRREJBSUVBd1FGQ2dFQkFRUUlFZ2dFQXdNR0F3VUhBUU1GQVFRRkF3WUJDZ2dEQXdZREJnd0lCUWtGQndnRkNSTUJBQUFBQWdBM0FtY0JSd0xEQUNRQVF3QUFBUVlIQmlNaUppY21KaWNtSmljbU5qYzJOamMyTmpjMk5qYzJGeGNXRmhjV0ZCVUdCZ2NHQmdjbUJpY25KaVkxTkRZM05qWTNOalkzTmpZWEZoWVhGaFlYRmdZQlBRNEVDQlVEQ3dNQkJnTU1BZ0VDQWdVQ0JBSUxCQU1JQ2dRR0Nnd0RCQU1JQVFXNEJRNElCZ29GQ2hBSUFnSUdBUUlIQndNSUNnb0ZBZ1FDQndJRkFRSjZDd0lHQWdRQ0FRSUxCQWdLQ1FnREJ3SUhBZ0lGQVFFQkFRWUVCQU1LRFFRS0NnZ0dDQVVDQVFJR0Jna01CUTREQndJQ0JnRUNBd01EQWdNREFnUURDQmdBQVFBS0FGNEJyQUltQU40QUFDVUdGZ2NHQnlZbUl5SUdJeVlHSXlZR0p5SW1Jd1lHSnlJaUp3WUdCd1lHQndZR0J5SUdJd1ltQnlZK0FqY21OamMyTmpjaUJpTUdCZ2NtSmljbUppY21OQ2NtTWljME5EY1dORE1XTmpNeUZqTVdOak15Rmpjek5qWTNOalkzTmpZM0lpSW5KZ1lqSmlJbklpWWpJaVlqQmlNaUl3WUdCeVkySnpZV016TVdOak0yTmpjMk5qYzNOalkzTmhZM05qWXlGaGNHQmdjR0JnY1dOak0yRmpNeU5qYzJGak1HQmhVV0ZoVUdGaFVtQmdjbUppTW1KaWNHSmlNR0lpY0dCd1lHQnpJMk16WVdOellXTXpJV014WTJNeFlXTXpJMk54WTJGeFlHRlFHaEFRTUZCZ1FGQmdVQ0JnTUtBUUVMSGc0VUZnc0tGQWdIRGdnQ0FnSUhEZ2NDQkFNS0F3SUlFd2tJQ0FrSkFRRUVBUVFJQlFzWUN3OGZEd01DQWdJQ0FnRUJBd0lCQWd3QkRBd0ZCUXdGQ3g4UUF3WUdEQUlGQWdRREF3UUlCQVVKQlFnREFnVU5Cd3NWQ3dnQ0FnMEhDd1lJRGdnSkJBUVhMUmNORnpjY0JBTUVCd2tGQkFFREFRUURBZ01SRXc4QkFRd0NDdzRKQlEwRkVSOFJEaGtPQmdNQ0FnTUJBUUVFQlFNREJRc0ZCZzBHREFVQ0V5OGJFUTRDQ0FNRkN3WUlDUVlFQ0FRRUJnTUVCZ1FPR2c0U0VRa0ZCUVFDQWZvS0VBWURCQUVEQVFJQkF3RUJBUUVCQVFFRkN3UVVKUklHRGdZQ0FnSUJCeFFYRkFFQkNBSUxGQXNCQVFZRUF3a0ZBd1lGQXdjRkNRSUNCd1VEQXdNREFnRURBZ0lHREFVS0RnWUtFd3NCQXdJQkFRSUJBd0lFQWc0Z0VBVUhBZ0VKRkFnTEd3d01Bd2NEREFNQkFRRUJBUVVZQlJNckZBUUJBUUlFQWdFREJ3a0tCd1lFREFZRUFnUUVCQUVCQVFFQ0FnRUNIeDBFRXdnQkFRTUJBUUVEQVFNQ0JBRUJBUVVFQkFzRkFBQUFBQUwvcmYvVkE0Y0RDd05YQTZZQUFBRVdCZ2NHQndZSEJnWVZCaFVIQmdZSEJoVVdCaFVHRmhVR0ZBY0dGZ2NVQndZSEJnWUhCakVHSmljbUppY21KalUwTmpVME5DY21KaWNtSmljbUp5WW1KeVltQnlZbUp3WWlKeVlHSXdZR0J3WWlCeUlHSXlZR0J3WW1Cd1lHQndZSEJnWUhCaFlYRlFZR0ZSUUdGUllHRlJZR0ZSVUdCaFVVRmhjVUJoY1dGaGMyTmpjMk1qY3lOamMyTmpNMkZqYzJOamMyTVRZMkp5WW1KeVltSnlZaUp5WW1Cd1lHQndZR0J3WVVGeFkyTnpZME54WUdCd1lHQndZSEJpWUhCaWNtSmljbU5TWTJOelkzTmpZM05qWTNOalkzTmpJM05qWXpOaFl6TmhZWEZoWVhGaFlYRmhRWEZ4WVdGeFlHQndZR0J3WUdCd1lHQndZR0l4WTJNeFlXTXhZWEZqSVhGaGNXRndZV0ZSUUhGQlFIRmdjR0JnY0dCZ2NHQmdjR0lnY2lCaU1pSmljbUppY21JeVltSnlZbU5UUTNOalkzTmpJek5oY1dGd1ltSnlJbUJ3WUhGaFlYRmhZWEZoWTNOalkzTmpZM05qWTFKaWNtSmljbUJpY21KaWNtSmljR0lpY21KaU1tSmlNbUlnY2lCaU1HQmdjR0ZoVUdGaFVXQmhVV0ZCY1dGZ2NXRnhZV0Z4WTJGeFlXRnhZeUZ4WXlNekkyTXpJMk54WTJNelkyTnpZMk56WTJOelkyTnpZMk56YzJOamMyTmpVMk5EYzJOelkyTXpJV0ZRWUdGUlFHQndZR0ZSUVdGUlFYQmhZWEZnWVhGaFlWRmdZWEZoWVZCaVlqSmlZbkppWW5KaWNtSmljaUlpY2lCZ2NpSmlNR0JpTW1KZ2NHQmdjaUl5SW1Jd1lHSXlJbUl5SUdCeU1pQndZaUl3WUdKelkyTnpZMk16WTJOelkyTnpZMUppWTFORFluSmpRbk5DWW5KalkxSmlZbk5DWTFKalluSmdZSEpoUWpJaVlqQmlZakJnY21JZ2NHQndZR0J3WVVCd1lHQndZaUJ3Y0dGQWNHQmdjR0JnY0dCd1lYRmhZWEZoWVhGaFlYRmhZWEZoWUhCaVlISWdZSEJnWWpJaVlqSWdZbklpWWpJZ1lqQmlZbklnY2lKaU1pQmdjaUpnY0dCaWNtTmpjMk5qYzJOamMyTmpjMk56WTJOelkyTnpjMk1qYzJOell4TmpjMk5qYzJOamMzTmpjMk5qYzJOamMyTnpZMk56WTBOelkyTnpZbU56WTJOelkzTmpjMk56WTJOelkwTXpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qYzJOelkyTnpZM05pWW5KaVluSmlZakpoWVhGaFlYRmpJWEZoWXpOaFlYRmpZekZqWXpNallYTWhZWE1qWVhNaFl6TnhZMk14WVdOellXTXpZMk56TXlOak0yRmpNMk5qY1dOak0yTmpjMk1qYzJOamMyTWpjMk5qY0ZCaFFIQmdZSEJnWUhCaFlIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdjR0JnY0dCZ2NHQmdjR0JnY1dOamNXTmpjeU56WVdOelkwSnpRMEp5WTBOVFEwTnpZMk56UTJKelkwTlFZR0EzOElBZ0VDQVFFRkFRSUJCd01EQVFJQkFnRUJBUUlFQVFJQ0JBRURBUUlFRFFFQkJBSUJBUU1CQVFJRkF3UU5DQWNGQlFZRkJRNEZDQjBPREFzRkNBSUJDUWNGQlFrSEJRWUdDUWNDQWdZRUNoQUlCZ0lDQWdFREFnRUJBZ0VCQWdFQkFRSUNBUUVCQVFRQkVDZ1ZDQTRIQmd3RkRRUURDUkFGQ0FFQ0JRb0VBUUVJQmdNR0JBTUpCUWdQQ3dvR0J3UUdBZ0lDQ2hZR0F3WUhBUUVCQWdJRURnVVBDQVlHQ0FZRUJ3RUZBd1VDQmdJQ0JBc0dCQWNDQ0FNQ0FnWUVCQWNFQ0EwSUF3VURCUVlDQndJSENBa0NBZ1FGQWdJQ0F3d0NDUUlDRHdzSUNnSUJDQUVCQ3dnSEFnRUdBZ3NGQXdNRUFRRUNBZ1FFQlFjRkRnY0ZCQWdGQkFjRUJRc0hBZ1lEQndVSUJBSUlCQVVDQXdNUENRY1NDZ2dCQ1FrRkJRa0RDUVFCQ0FRRUNBUUxGUXdGRGdNQ0FRSUNBd01CQWdRRUJ3Y0VEZ2NFQlFZRUJBa0VDZ01DQ0FjQkJSSUtCQWdGQ1JRS0FRUUJBZ0VEQVFFQkFnRUNFQW9KQkFRSUJRY01Cd01IQWd3VURBWU1CUWtHQkE4TUJ3NFdDZ1FFQXdjRUF3WURBUUlCQWdZQ0FnSUZBZ0VDQ0FFQ0FRWUZBUUVEQWdRQ0JBRUNBUVVDQVFFQkFRSUNBZ0lCQWcwQ0JBY01CUVVIQkFzQkF3b0dCeE1IQ0JFSUN4UUxDaE1LRGhrTkJRa0VDd1VDQmdRRUJ3UUZCd1FKRVFnTURRZ0NCd01GQ2dVREJBSUZBd0lCQkFJRUJRSURBUVFDQWdJQkFnRUNBZ0VDQVFJQkFRRVBJQkVJQXdRSEJBZ0NBZ1VJQ1F3RkdoZ0ZCZ1FGQVFZQ0FnUUJBUXdFQWdzTEJRUUNBZ1VCQVFJQ0JRSURDQU1KRXdzS0R3VUdDd0VIRFFZSkZBb0ZDUVVEQndVREJnSURCZ0lEQndNTEVnb0dDQXdXQ3dnU0NBd1RDZ3NHQkFFR0F3d0hCUU1IQXdZTEJnb05BZ1VEQWdRRERBWUNBZ29JQlFZRUNRWURCQU1DQ1FRR0JRSUJBZ1FEQmdFQ0FnTUhBUVVEQVFRQkFnSUtBd2NEQlFFTkR3RUNBZ01EQVFrRkFRSUNBd0VGQlFVR0JRSUNCZ01GQmdJRkJRTUVCZ0VEQWdVQ0JnVUdBZ1FMQ0FzR0VnVU9Hd3NGREFZRUJ3TU1CZ0lMR0FzSkJnSUZDQVVGQ3djREJRUUVCUVVVQ2dVREV4WUtCd2tGQlFrRkRRa0dBd01GQXdVSkJRY0pCQVVLQlFVSUJRb1RDUVFHQkFnSkJmNG5CQUVJQVFFRkJBSUhBUUlDQkFJRUJnY0NDZ0lFQlFJRUF3RUlBZ0lEQXdVQ0FRY0JBUVlHQkFRSEFnZ1RCd2tWQ2lZU0NROEhBZ0VCQWdFQkFnRUJBUUlEQlFNTEJnc0dCUWNPRVFJR0F3UUhFQW9FQWdvR0J3Y0RCUXNGQlFrRkRBMEdCUWdQQVEwSUJRMEVCUVFJR2c0SURnY0RCd01FQ0FRT0hBNEZCQU1DQXdJREFnRUJBUU1CQVFFQkFRSUNBUUlDQVFFQkFnRUNBZ0VGQkFVR0J3VVJDd3dKQlJjSERBZ0xDQVFFRGdVTEN3Z1FDZ2NEQXdZREJRZ0VDQkFJQkFFQ0FRRURBZ0VDQWdFRkN3TUNDdzhVQ3dZSUJRUUlBd0VCQVFNQ0FRVUpCZ3dKQ0FvSEFnSUZCQTRCQVEwRUJnc0RCZ2NDQVFJQ0JBWUNBdzhCQ0E4SENBUUpBd0lFQ1FNREFnSUhBUUVDQVFFQkFRTUNBZ0lDQXdNRUFnSUpEeElMQ3hFTEJRa0VCd3NKQmdJQkJRVUhBUU1DQlFZSEFRWUNDUUlGREFVR0NnUUlCUVVJQ2dzSUF3Z0VDQVVCQVFFQ0JRSUJBUUlEQ0FNRERBWUZDUTBHQ2dJRUFna0VCQWtCQVFFQkJBMEZBZ0lDQVFJRENBVUNEUVlEQ0FNRkNRSVJBZ1VGQkFVQkFnWUJBUUVDQVFFQkFRSUNBUUVCQVFFQkF3c1RDdzBHQkFVS0JSRW1EQWtYREJJRkFnUUJBUUVCQWdNQ0FRRUJBUVFCQVFFQkJ3TUVDUVVSRUFjTEJRSUZDUVVTQnd3R0NRRUJCZ2NFRGdNRkR3MEZCdzBKRFNRT0JoVUtCUWNFQ1FnSkRRY0pCZ01KQ3dZTEZ3b0dDUVVHQmdNS0JRUUZBZ2dCQWdjQkFRSUJBZ0VCQVFNQkFRRUJBZ0VEQVFRQkFnRUNCQU1KQmdJREJRVUhCQVlMQ0FvTEVnOElCdzhHQlJBR0JRd0dDZ01DRFF3SUFnWUVCdzRIQWdNQ0FnTURBZ0lCQWdFQkFnUUtFZ29KQlFJTEJRSUpBUmdKQlFJUEVRa0hCQU1JRFFZSEJRd0ZCUWdGQWdvRUJBRUNBZ1VJQlFFQkFRRUJBd01DQVFJQ0FRWUJBZ01DQVFFQ0FRTUVCUVlEQ0FVQ0FnTUNCQWdGQ2dVQ0JBTUNCQUlIQndJSERBc0hCZzRKQlFjREF3OEtDZ3dCQWdNR0JBa0JCQWNGQ2dFQ0NRTUNDUWtFQkFjRkJ3WUlBeHdkQWdZRUJBWVBEZ1lHQXdNRkFnZ05DQXNNQlFVTEJna0lCQWtORFFZSUJnSUxCeEFZREFnR0F3Z0hEd0lCQWdNQ0FRSUJBZ0VDQVFJQkFRRUJBUU1CQVFFQ0FRRUNBUUVCQVFFQkFRRURBUUVCQXdFQkFnRURBUUVCQWdZQ0FnSUVBUUtlQndJQkNnTUJCZ1VFQndNQ0F3VURCZzBGQ2dzSkF3Z0RDQUlDQ2dVRUNnUUtBUUlMQWdJTURRY0hEZ2dCQVFFQkFnRUZBZ1FDRGhzT0JRc0ZFaVFUQ0JFSUNBMElCQmNCQnc0SEFnY0FBQUFBQkFBZS82b0MxUU03QUtjQkVBR25BeGNBQUFFR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3Y0dCZ2NHQmdjSEJnWUhCZ1lIQmdZSEJ3WVVCd1lHQndZR0J3WUdCeFlYRmhZWEZoWVhGaGNXRmhjV0ZoY1dOamNXTmpjMk5qYzJOamMyRmpjMk5qYzJORE0yTnpZMk56WTNOalkzTmpZM05qUTNOalEzTmpZM05qWTNOaVkzTmpRM05qWTNOalExTmpZM05pWTNOalkzTmlZMU5pWW5KalluSmpRbkpqWTFKalFuSmlZbkpqWW5KaVluSmljbUppY21Kd2MyTmpjMk5qYzBOaWNtSmljbUp5WUdCd1lVQndZR0Z4WVdGd1lHSmlZbkppWW5KalkzTmpZM05qWTNOalkzRmhZWEZqSVhGak1XRmhjMk5qY21JeVlHQndjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHRmhjV0ZoY1dGaFVXRmhjV0ZoYzJOamMyTmpjMk53TTJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qY0dCaU1pSmljbUppY21OQ2NtSmljbUppY21KalUwTmpVMEpqVW1OelkyTnpZMk56WTJOelkyTnpZeU55WW1KeVltQndZaUJ3WUhCZ1lIQmlNR0pnY0dCZ2NIQmhZSEJnWUhCZ1lIQmdZSEJnY0dCaFVVQmdjR0JnY0dCaGNVRmhjV0ZCY1dGaGNXRmhjV0ZoY1dNaFVXRmhjV0ZoY1dGaGNXRmhjSEJpY2lCZ2NHSWdjaUJpYzJOamMyTmpjMk5qYzJOamMyTmpjMk55WW1KeVluSmljbUp5WW5KaVluSmlZbkppWW5KaVluSmlZbkppWW5KaVluSmljbU5DY21KaWNtTmljbUpqVW1KaWNtSmpjME5EYzJKamMyTkRjMk5qYzBOalUyTkRjMk5qYzJOVFltTnpZM05qYzJOamMzTmpFMk56WTBOelkxTmpZM05qWTNOalUyTmpjMk56STJOelkyTnpZME16WTNOalkzTmpZM0ZqWXpNaFl6TWpZek5qSVhGallYRmhZWEZoWVhGaGNXRmhjV05oY1dOaGNXRnpZMk56WTJOell6TmpZM05qWTNOalkzTmpZM05oWTNOakl6TmpZWEZnWUhCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NXRnhZV0Z4WVdGeFlXRnhRV0Z4WVdGeFlXRnhZV0Z4WVdGeFlYRmhjV0JnY1VGQWNIRkJRSEJnWUhCaFlIQmdZSEJoWUhCZ1lIQmdjR0J3WUdCd1lVQndZR0J3WUdCd1lIQmdZakJnWUhCZ1lIQmdZSEJ3WUdCd1lHQndZaUJ3WUdJeVltSnlZbUp5WWlKeVltSnlZMkl5Y21KaWNtSmlNR0JnY0dCZ2NHQmdJZkJ3RUVCd01GQ0FRRkNBVUVDQVFEQndNREJBUU1CQVlGQkFjRkN3VUZBZ2tIQndNSEF3WUNBZ01HQXdjQ0FnY0RBZzBCQ1FVRUJ3WUNCZ1FDQ0FJQ0JnTU1EUWtJQkFRRkVBVU1DZ1VJQXdFSUNBTUlBUTBDQkFVRENBSUpCZ01HQWdJSEFRVUJCQUVCQWdRQ0JnRUJCZ0lEQWdFQkFRRUJBUUVCQVFJQkFRRUJCQUVCQWdJR0FnTUJCUUlJQmdVR0FRRUdBZ0VHQkFJRkFnOEtkZ0lEQWdRRkFnRUJBUVlDQndjSUN3WU1BUUlDQkFJTUJBSUpDUWNCQlFJQkJRRUVBZ0lDQ1FJQ0JRc0hCUWtGREFZQ0NBSUVBd0lHQ1FVUURRNGhEdzhEQmdRRkNBTUZDZ1VEQmdNRkF3SUJBUUlCQlFJR0FnVUlCUVFHQkJNSUJ3UUlCQXNDc1FjT0NBMGFDd0lCQWdJQ0FnTUZBZ1VJQWdJR0F3SURBZ1VNQmdrT0NBb1RCUWNIQlFVQkJnTUNCUU1CQVFJQ0FnSURCZ0VCQkFNQkVSd1FDQThJQ2hJS0Fna0ZDQTRLRUNFT0JnY0xGZ3dHQkFjQ0FRTUZBd2tJQVFFRkNnUUtDQU1GQmdVUkJ3RUJBZ0VDQVFFQkF3RUVBZ01CQWdNQ0FnRUNBd3NEQlFJSUJ3TUdDQVVHQndJRkN3VVhDUWNGQmdVQ0dRSUZEQVFGQ0FNQ0JBSUNCUU1DQndJREJBVUZBZ1VLQlFRSURBTUVCZ1lGQlFVREFnVUNCQVlGQ0FFQ0FnTUNCQUlDQWdVQ0FnTUNBZ0lDQVFJQkFnTURBd0VCQWdNQ0FRWUNBd01CQVFJQkFnRUJBUUlCQWdNQkFRVUJBZ01DQXdJRkJRSUdCZ0VIQ0FFQkJRa0hDUWtKQlFjREJRWUVCZ1FDQ2dJSkJRa1NDd2tQQndVSEJRUUhCQU1IQXdVT0JRb0hCQXNMQlFVS0JRZ0VCQVlFQmdJQ0NnUUNEZ2NDQlFNSEFRSUVBUVFDQVFNQ0FRVURBUUlCQkFNR0JRY2JCZ1lSQXdFQ0FRSUVCd3dIQmdRQ0F3Y0RBZ0VDQWdJQ0FnWUNEZ01LQndRR0RRY0pDZ1VKQWdjQ0FnSUdBd0lFQWdNSkF3TURBZ0VDQVFFQ0F3RUJBd0lCQVFFQkFnRUJBUUVDQndNSUNnWUhDZ2dFQmdFRkFnSURCZ01FQ0FjQkFRNExCUU1HQkFvQ0FRb0tDd1lEQ0FVTENnVUlHUThQRFFZRUJ3VURCd01JRFFnS0FRSU1CZ0lDQ1FFQkJ3UURBd2dFQndrQ1l4RURCZ3dGQ1JFS0NCRUpDaEVLQ0E0SUJnd0hHQWtTQ0FnUENCWU5DUVFQRXdrRkVBWUxBd2NFQmcwSERBZ0VEQXNGQ3dJRUJnSUZCQUlFQWdJQkFRSUJBUVVCQVFJQkFRRUZBZ01FQWdZQ0FnTUZBZ1VEQmdJQ0JnSUdBZ29FQWdzRUF3b0NBUVlEQWdVSUJRWU5CUWdGQWcwS0JRc0ZBZ01KQkFNSEF3Z1FDQVVIQkEwTUFnb01Cd2dQQ0E4S0JnVUVBZ3NIQXhBTEJ3b0NBZ2tCQVFvR0FnZ0JEUTVyQkFZRUNBZ0ZCUWtGQkFrRERBSUNCUUlGQXdJRUNnVUZEQVVLQVFFRUFRY0NBUWdPQ1FVS0F3c0RBZ1VGQWdJRUFnWUJCZ1VDQWhJWENna0NBZ0lEQVFJQ0FRRUJBZ2NEQWdFQ0JRZ0lDZzBJQ3gwSUNRTUNBd3NEQWdZQkF3UURBZ1FEQndIK2xROGNEaFlyRndNSEF3SUdBZ1lOQlF3UEJRZ01Cd01HQXd3WkRnUUdDZ1FGQlFZRkF3SUdCQU1JQ0FNU0RRWUZDd1VHQ3dVUUN3a0NBZ1FDQWhNTUJRSUZBUUlDQlFFQ0FnWUNBZ1FEQkFVSUJBY0tBUUVDQlFJSEJnRUJCZ3NGRFEwR0NoTUpLU3dGRGdJSURBVU5HQTBOR1EwTUhBZ0lCQUlGQ0FVRUJ3SURCd0lJQVFnR0F3VUlBd1lCQWdNSUE5Y0RBZ01CQVFFQ0JSQUpCUVVNQlFVTUJRVUlCUVlOQmdzRUF3WURBd1FHQWdRREJBVUVCZ0lEQXdJRUNBUUlBd01DQ1FRR0NBUUZCd2dJQXdRSkJRTUZCQVVKQlFjSEF3ME1CUkVpRWdNSEF4Z2FDd1FHQWdrQkFna0NBUVFIQkFJR0F3Z0ZCd1FDQ0FJSEF3b0dBd3NMQXdZR0F3SUhBd2tCQWdjTkJnY0JCd3NGQWdRSEFnUURBZ1lDQWdNRkJ3SUNBZ1FCQWdJQ0FRSUVBUUVFQVFJQ0JBSUNBZ0lDQWdVQkFRVUJBUWNEQmdvR0NRVURDZ2dFQWdzRUFnd0NBZ1VMQlFJRUFnTUJBUVVJQVFJRENBd1dDd29JQlFVTEJnTUhBd01GQXdRSUJBZ0NDUWdFQmdzSENBa0ZCUVFDQ1FRQ0JBc0ZCUWtGQmhBSUR3WUlCUTRpRUJjdEZnd0RCd01JQ3dZRUJnUUNCZ1FEQmdNSUVRa1dFd3NJQ3dnRkJnSUJCQUVDQXdZQ0JBWUdBZ2tIQkFJRUFnTURBUWNHQlFJQ0FnSUZBUUVCQVFVQ0FRRUJBUUVDQlFJQkFnUUJBd0VCQWdVTUJnY1BDUXdaQUFBQ0FBa0FTd0hMQWhrQVhRRU9BQUFsRmhRVkZCWUhCaU1HSmljaUJpTW1KaWNtQmlNaUppTWlCaU1tSXlZR0l5TUdCaWNtQmlNbUJnY0dCZ2NpSmlNaUJpTUdKeVltSnlZbU56WTJNeFkyRnhZV016STJNeklXTXpJMk16SVdOelkyTnpJMk56STJNellXTXpZMkp4WTJOelkyTnpJMk56WXlOekl5TnpZMkZ4WUdGUVlXRlJRR0Z3WW1Kd1ltSXlJR0l5SW1Ld0lHSmlNaUJpTWlKZ2NHRkJjV0ZCVVdGQmNXRmhjV0ZoY0dJZ2NHQmljMk5qYzFORFkzTmpRMU5qWW5KZ1lISWlJSEJnWWpCaUlIQmdZSEpqWW5KaVluSmlZM05oWVhGallYTWhZWEZoWXpNaFl6RmpJek1qSVhGall6TmlZbk5DWTFORFluSmlZbkppWW5OalkzTmpZek5oWTNGaFFIRkFZSEZBWUhCZ1lIQmdZSEJoUUhGQVlCbkFnQkFnVUlCd3NGQlFzR0RCY05CUWdGQXdjQ0FnZ0NDd0VIQ0FNTkRRd0lEUXdIRUJRS0Jnd0dCQWdFQkFjRkZ4VUNBUUVCQXdJREJBVUxGdzBNRmcwRkNRVUxFd29GQ2dZU0tCUUtFUWdIRHdZSUVnWUlBUUlLRHBZR0V3Y1RKQlFHQ1FVRkN3VUhDd1VJRHdnQ0JBRUNBUUVRRXdzTURBWUZDZ2dGQ2dVT0Rna0dCUUlIQkFVTEJRSUJBUVVCQVFJQkF3a0RCdzhJQ3g4TEFRWUJBUUVCQVFRQ0ZqUVhDUkVJQXdZREJBY0RDQThJQkFFQkJRRUJBUUlEQlFnRkJRc0hEUTRIQlF3RkNnWURCUXNIQlEwRkJ4UUlBZ0VCQWdFQkJBRUNBUUVCQ1I0TENRSUNBd1lDQndJRUFRRUJBZ0lCQWdFQkF3RUJtQTRhQ1FVSkF3UUJCQUVDQVFRQkFRSUJBUUVCQXdFQkFRRUVBUUlCQVFJQkFRSUNBZ1lOQndZWEJRRUZCQU1CQVFRQkFnRURBZ0VDQVFFQkFnSUNBd0x3QWdJQkFnSURBZ0VDQVFFQkJnRUZDd1VFQmdRREVRSUVBZ0VCQWdFQkFnRUNBUUVPR3c4RUNBVUxCUU1GQlFVTEVna0NBUUVHQlJBT0NBc0dEQWNHREFVTUdRNENCUUVCQVFJQ0FRSUZBUU1JQkFzVkJRZ0dBZ0VEQVFFQkFRSUJBUUVDQVFFQkF3WUxCd3NHQWc0UkJ3ME5DQVlNQndNQ0FnSUJBUUVDQ0F3Q0F3Y0RFQW9GQkFjRkRnY0ZEQWdGQlFjQUFnQUpBRXNCcFFIeEFGMEJMUUFBSlJZVUZSUVdCd1lqQmlZbklnWWpKaVluSmdZaklpWWpJZ1lqSmlNbUJpTWpCZ1luSmdZakpnWUhCZ1lISWlZaklnWWpCaWNtSmljbUpqYzJOak1XTmhjV0ZqTXlOak15RmpNeU5qTXlGamMyTmpjeU5qY3lOak0yRmpNMk5pY1dOaGNXRnhZV0Z4WVdGeFlXRnhZV0Z4WVdGeFl4RmhZekZoWXpGaFlYRmhZWEZnWVhGZ1lIRkFZSEZCWUhCaFlISmlZbkppWW5KaVluSmlZbkppY21KaWNtSmljbUppY21JaWNtQmljbUppY21KeVluSmlJbkppWWpKaWNtSmljbUppTW1KaWMyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZM05qWTNOall6TnpZMk56WTNOalkzTmpZM05qWTNOalkzRmdZVkZoWVZCZ1lIQmdZSEJnY0dCd1lIQmdZakJpSUhCZ1lIQmdZSEJnWUhCZ2NHSXdZR0J3WUdCd1lIQmdZSEZoY0JuQWdCQWdVSUJ3c0ZCUXNHREJjTkJRZ0ZBd2NDQWdnQ0N3RUhDQU1ORFF3SURRd0hFQlFLQmd3R0JBZ0VCQWNGRnhVQ0FRRUJBd0lEQkFVTEZ3ME1GZzBGQ1FVTEV3b0ZDZ1lTS0JRS0VRZ0hEd1lJRWdZSUFRSUtEdWNMQVFFTENnSUtBd3NEQWdVS0J3c05CUWtGQkFzSUNRSUdCd0lHR2dnRENBUUVBd0lCQWdFQ0FRUUJCUUVFRFFnSEF3d0ZCQXNGQ3hVTEJ3UVFDd2NSRHdjSUVRZ01Bd0lIQkFJRENBTUlCQU1LQ0FVRENnSUJCUWtEQlFNTEFRRUREd0lKQkFJSEFnVUhCUUlIQWdVSEJRUUpCUVVJQlFnUENBY0pCUVVIQlFnREJnWUNBZ1lDRlFnUENRc0pCZzhJQkFnRENROElDZ1lERGdRQ0JRRUdBZ0lJQXhVTkJRZ01BZ2dGQWdjQ0Fnb0dBZ1VJQlFRSUJRd0VDZ0VLQWdJSkJBSU1EZ3NOQkFjTm1BNGFDUVVKQXdRQkJBRUNBUVFCQVFJQkFRRUJBd0VCQVFFRUFRSUJBUUlCQVFJQ0FnWU5Cd1lYQlFFRkJBTUJBUVFCQWdFREFnRUNBUUVCQWdJQ0F3SzlCUUVCQXdRQkFnRUZBUUVDQXdJRkFnSURBZ0lFQWdNQ0FnSU1BZ0VCQWdFTEFnd0JBZ3NDQWdNR0FnY0NBUVVFQVFNRkFnUUVBZ1VKQkFNQ0JRZ0NCZ1VFQlFRRUJRRUVBUUVCQkFJQ0FnRUNCQUVGQXdFREFRTUJBd0VCQWdFS0FnRUNBUUlFQWdFQkFRSURBZ0lEQWdJREFnTUdBd1FFQWdJREFnSUJBd0VCQWdNSEF3Y0RBd01DQndJQ0FnSURCd01HQVFFQ0JBSUtDUVFMRkFJQ0FRRUdBd0lDQWdFQ0FRTUJCQUVCQVFJQ0FnRUNCQUVFQXdFQkF3SUJBd2NFQlFJRUFnQUFBZ0FKQUVzQnBRSG1BRjBCSEFBQUpSWVVGUlFXQndZakJpWW5JZ1lqSmlZbkpnWWpJaVlqSWdZakppTW1CaU1qQmdZbkpnWWpKZ1lIQmdZSElpWWpJZ1lqQmljbUppY21KamMyTmpNV05oY1dGak15TmpNeUZqTXlOak15RmpjMk5qY3lOamN5TmpNMkZqTTJOaWMyTnlZbUp5WW1KeVluSmlJbkppWW5KaVluSmlZbkpqVW1JaWNtSnlZakppY21KaWNtSWljbUpqVW1OaWMySmpjV014WVdGeFlXRnhZV0Z4WVdGeFlXRnhZV0Z4WXlGeFlYRmhjV0ZoY1dGaGNXRnhZV0Z4WVdGeFlXRnhZWEZoY0dCZ2NIQmdZSEJnWUhCZ1lWQmdZSEJnWUhCZ2NHQmdjR0ZBY0dCd1lHQndZR0J3WUdCd1lqQmdZSEJnWUhCZ1lIQmdZSEJqUW5KalkxSmpZbkpqUTNOaVkzTmpjMk5qYzNOalkzTmpJM05qWTNOalkzTmpjMk16WTJQd0lCbkFnQkFnVUlCd3NGQlFzR0RCY05CUWdGQXdjQ0FnZ0NDd0VIQ0FNTkRRd0lEUXdIRUJRS0Jnd0dCQWdFQkFjRkZ4VUNBUUVCQXdJREJBVUxGdzBNRmcwRkNRVUxFd29GQ2dZU0tCUUtFUWdIRHdZSUVnWUlBUUlLRG9zTUJ3TU5CQXdPQlFvQkN3UUNEQVlDQ2dnRUJBZ0ZDd2tCQWdzQ0NBUVBBZ2dOQlEwSEFnRUZBUVFDQXdNRUVBTVFEZ1lHQndRSURRY0VCUVFPRGdnRkN3VUxCUUlIQ0FnSUJBa0ZDZzRJQ2dZRkNRUUVCd1VQQ0FRTkJBY0RCdzBEREFRRUJBUUVCQWNHREFJQ0F3Y0NBd2dEQ0FJTEFnMERDQkFJQncwSUR3d0dDZ1FRRXdzRUN3TUdDd1FGQ1FNTUFRTURCQUlCQXdJQkFnTUVDZ2daQlF3RUNnSUtBUUVIQlFNS0RBUVVDQXNCQmdrQ0R4S1lEaG9KQlFrREJBRUVBUUlCQkFFQkFnRUJBUUVEQVFFQkFRUUJBZ0VCQWdFQkFnSUNCZzBIQmhjRkFRVUVBd0VCQkFFQ0FRTUNBUUlCQVFFQ0FnSURBcnNDQkFJRkFnUUZBZ1FCQlFFRkFRRUVBZ0VDQWdFREFRSUJBZ0VEQlFFREFnSUVBZ0lUQXcwSkF3Z0VBZ01IQndJRUFRSURCZ0lDQWdJRUJnTUNBd0VIQVFNQ0F3VUNCQUVGQmdNREJBSUNBZ0lFQWdVREFnVUNBZ01GQVFJREFnSUNBUUlCQkFFQkJBRUJBUUVDQVFJQ0JBRUNBUUVFQWdNR0JBTUdBd1VIQWdVSUNBVUNBd0lFQlFNQkJRSUNBZ0VKQmdJSUJRSUhCZ0lDQ3dFQ0FnSUtBZ01DQXdFRUFRSUNBUVFDQWdZRUJBTUNBUVlHQUFBQi8vWUFFUUlIQXNJQjl3QUFBUVlHQndZR0J3WUhCaUlIQmdZSEJpSVZCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0J3WVdCeFkyTXhZMk14WTNNeklXTXhZMkZ4UUdCd1lHQndZakJpTUdCZ2NHSWdjR0JnY1dGaGN5RmpNeU5qY3lNamN5TmpNMk5oY1dCZ2NHQmdjR0ZoVVVGaFVXQmhjV0ZoY1dCaGNXRmhjV0ZoY1dGaGNXRmhjV0Z4WVdGeGNXSmhjbUJpY2lKaU1pQmlNaUppTW1JZ2NHQmdjaklnWW5ORE0yTmpjMkZqYzJOamMyTmpjMk56WW1OelltTnpRMk5UUW1OU1kyTnpRMkp3WUdCeUltSXlJR0l5WW1CeVlpTnpZMk56WTJOelkyTXpZM05qSTNOalkzSmpZMUlpWWpCaVluSmdZaklpWWpJaVluSmlZbk5oWTNOamMyTmpjMk16WVVNelkyTnpZV056WW1KeVkySnlZMUppWW5KaVluSmlZbkppWW5KeVltSnlZbkpqVW1KalVuSmpVbUppY21KaWNtSmljbUlpY21KeVluTkNZMUppWW5KaVluSmlZbkppWW5OakkzTmhZekZqWXpNaFl6RmpZek14WVdOeFkyTnpJV056STJNeFkwTXhZR0ZRWUdCd1lHQndZR0J4UVdGeFlYRkFZVkZCWVhGaFlYRmhZWEZoY1dGaGNXRmhjV0ZoVVdGeFlXRnhZV0Z4WVhOamMyTnpZME56WTNOalkzTmpZM05qWTNOalkzTmpRM05qWTNOalkzTmpjMk5pY21KaWNtSmljR0ppY21KaWNtSmpVMkZqYzJGak0yRmpNV05qTVdGaGNXTmpjekZqSVhNeFkyTXpJV016STJBZ2NLQlFNSUR3Z0tCQVlHQWdzR0F3TUNBZ1FFQlFRRkFRVUNCZ1FDQXdjRUJRUURCUVFGQXdJREFnRUpDQVVGQ2dVR0FnRUNBUWdOQ3djQ0Fnc0lFd1FKQXc4T0NRb0VCZzRJREFJRENBTUdBd01JQkFrVENnTURBZ1FJQlFjR0JBa1NDQU1IQkE4TkJnSUhBaHd3SGdJQ0FnRUJBZ0VEQVFFQ0FRUUNBZ0lFQWdNS0JBTUpCQVVGQkFnQ0Nna0hBUmNwRkFRSUJBSUhBZ1FHQkFzWEN3MGFEaElFQ1FRS0FnWURBZ2NDQ0FZRUN3b0ZDUUlCQVFFQkF3SUNBZ0VCQVFFQkN4VUtCQWNFQXdjQ0NBMEhCd1lCRGdzSEJnUUNBd1VERFFZTUNRUURCZ1FCQXdVTUJ3d0hCQVVJQlFvU0NnZ09DQU1KQWdNQ0FnY1FGQllMQ2dFSkFnUUdCQWNOQmdrREFnRUJBd1VIQVFFRUNRTURCd01KQmdNR0JnRUJCUWdHQXdJSEJnY0RBUVVCQWdJRUJBVUNBUVlEQXdRRkJ3Y0NBZ1VDQlFnRkJRZ0JBd1lGQmdVQ0NBMEdBd2NEQXdZREhBY1BCZ3NZQ3dnT0NBTUdBd2tDQXdNRkNnVUhFUWNOQmdFQ0FRUUJBUVVDQXdJQkFnRUNBd01EQWdJQ0JRSUVBUWtGQmdFQkJRRUJEQW9JQWdRRUJ3RUtCQUlEQVFRRkJBTUhBZ01JQXdVQkFnVUNBd1FEQkFJQkJRSUJCUUlHQ3dRSERnVU9DUVFEQ1FFSEFnVUlCUVFGQXdVTkJnWVBCZzRKQlI4RkRnY0xCd1FDQlFrRkJRb0N1UWtCQWdRR0JBUURCd0lLQndZSkFRVUtCQVVLQWdVSkJRb0hCUVVLQlFZSUJnMElDQWdFQndFQ0R3OEhCdzRJQlFVRkNnVUNBZ0VCQVFJQkJBRUJEQUVCQVFJQ0JBRUJBd0VCQVFNRUFnNGdEd0VDQVFFQ0FnSUNBd1VDQmhJREJBa0REQWdEQlFrRkJRZ0ZCUWtFREFrRUJBVURCUkVEQXdRQ0FnTURBZ0lHQ0FFRkFRSUJBZ0VCQVFJQ0JRTUNBd29DQkFJQkFRRURCZ0lHQ2dVSkJRVU9Cd2tSQ1FRRkF3TUdBd1VNQmdVSkJRRUNBUUlDQVFFREJRTUpBZ0lCQVFFQkFRUUNCQUVCQWdFUkZ4RUJBUUlCQVFFQkFRRUJBUU1KQVFFRUFnY0VBd0lCQVFFQ0FRSUJBZ2tOQndRTUJRa0NDQUVDQndjRkNBZ0VEQVVFQ2dZREFRa0pDQUlIQVFJS0NRRUxBd0lIQndNRkJnVUpBZ2NEQmdNRUF3UUlBd0lDQXdJQ0F3SUNBd1VDQVFFREFnTUNBUUlCQWdNREFnRUNBZ01DQVFzRUFRRURBZ0lEQWdjR0JRTUhBd2dFQXdZQ0J3OEhEQUlDQXdVRUJRY0pBd01DQ1FRSkFnRVBCd2NEQVFZREFRb0ZCQWNDQmdjQ0FnMElCUVFDQlFvRkJBY0ZCZ3NIQ1FRQ0JRa0ZCUWdHRFFJRERRY0VCUVFDQXdRQkJRSUVBUUlCQXdVRkFRSUJBUUVEQVFNQ0FRRUJBZ0VCQVFJQkFRTUFBQUVBQ3Y4NUFpTUIyQUdFQUFBM0ZCWVZGQVlYRkI0Q0ZSUVdGeFlHRnhZV0Z4WVVGeFlVRlJZV0Z3WW1Cd1lHQnlZaUJ5SUdKeVkyTlRRbU5UUTJOVFkyTlNZMk5UUW1OVFltTnlZMk5UUW1OVFErQWpVMkpqYzBOamNtTmpjME5TWTJOeVkyTnpZME55WTFOaVluTkRZbkpqWW5KaVkxSmpRbkppWW5KaVluSmlZbklpY21KalUyRmpNMk5qYzJOak1XTmpNMk1qTXlGaGNHQmdjR0J3Y0dCZ2NHQmdjR0JnY0dGQlVHQmhVV0J4UVdGUVlHQnhVV0JoY1dGaGNXRmhjV0Z4WWpGaFlYRmpJWEZoWXpGaFl6TWpJM05qWTNOalkzTmpjM05qYzJOamMyTmpjMkpqYzJOamMyTkRjMk5qVTJKalVtTlNZMk5UUW1OVFEySnlZMU5pWTFOaVkxSmpZbkppWW5KaVluSmlZMU5oWTNOall6TmpJM014WTJGd1lHQndZR0J3WUhCZ1lIQmhRSEJoVUdCd1lHQndZV0J3WUdCd1lYRmhZWEZoWVhGaGNXRmhjV0ZoY1dGeFkyRnhZMkZ3WW1JeUlpQndZbUJ3WUdKeVltTlNZMk5TWW1KelFuSmlZbkJnWUhCZ1lIQmdZSEJnY0dCZ2NHSWdjR0JnY2lKaWNtSWljbUppY21KeVltSnlhSUFRRUJBUUVCQVFFQ0FRSUJBZ01DQVFNQkF3RUZFZ29DQndJT0NBUUNCZ1FEQXdFQkFRRUJBUUlCQVFRQkFnRUJBZ0VCQXdJQkFRRUJBUUVCQVFFQ0FnRUJBZ0VCQVFFQ0F3RUJBUUVCQVFZTkNBTUZBd01JQXdVS0F3WUVDZ1VOQ0FVR0RRZ0pBUUlGRUFRZE14b0RDZ1FHQkFzR0J3SUlBZ0lEQkFFQ0FnSUJBUUlCQVFFQkFRRUJBUUlDQndJREJRb0JBZ2NEQ0FJQ0NnRUJDeFVHQWdjQ0JRNEZBZ2NDQ0FJU0JBUUlCQUlEQWdFQkFRSUZBUUlFQVFFQkFRSUNBUUlCQVFJQ0FRRUJBUUVDQVFFR0FnVUJBZ1lKQ0JJS0F3Y0RCQWNFSGdvVkNRSUJBUVFDQWdVRkJRVUNBUUlHQmdFREFRTUNBZ0lCQlFFQ0FnRUVBZ1FJQkFZQ0JSSUlCUXdHQ2d3TEJRUUtDQUVPR2dzSkVRZ01CZ0lMRnc0REFnRUJBUUlCQWdJREFnUUJBZ1lHQlFzTkJRa0dCUWtIREFnRkNBMElDQklIQXdVREFnVURDUW9JQXdNR0lnTUdBd1lMQmdnRUFnUUpDQThKQ3dzTEJRd0ZCQWdHQ3dnRUNBMElCd0VDQVFFQkFnSURBZ1VIQkFRR0JBSUdBd1VNQ0FnQ0FnVU5CUk1PQ1FvREFnSUhBd2tHQXdVSkJ3NElEUWtGQncwQ0N3WUtFUW9TTFJJSEVBZ0lCQk1SQ0FVTENSSVdDd01GQXdZT0JRZ0dBd0lCQWdJRUJBUUNBd1FEQWdJQ0FRRUJBUUlCQWdVRkF3SUVCZ2dJQndVS0NBY0tEZ2NGQ3dVRkNRVUxDd2dRQ1FjTUJ6TUpFUW9PQ3dRRkJRVUhCUW9DQXdJRkFRWURCQXNCQkFRQ0FRUUNCUUlQQWdjTEJRTUpBUUVEQ0FRTEJnUVFFd2dIQ2drTEFRRUtBd2NOQmdjTkJnc1NDZ1lGQ1FJQ0J3SUNCZzRIQkFVRENBSUJDQW9GQkFJQkFRSUJBUUVEQVFrRUFnTUlBZ3NGREFzRkF3Y0RDZ01JQlFrY0RRZ1dDd3NVRFFnSEJ3NEdGQzBWQ1FRSENBVURCUUlEQXdNQkFnVUJCUXNCQWdJQkFRSU1BUXdNQlFRSEJBTUZCQWdFQlFzRkFnZ0VCUXNHRFFzSEF3VUNCZ0lEQVFJRUFRUUNBUUVCQXdJREJRUUNBZ1FBQWdBZi8rd0NJZ0xIQVZ3Q2R3QUFFeVkwSnpZbU56WTJOelkyTnpZV056WTJOelkyTnpZMk56WXlOekkyTXhZV0Z4WXlGeFkyRnpJV0Z6SVhGaGNXRmhjV0Z4WVdGeFlXRnhZWEZoWVhGaFlYRmhZWEZqSVhGaGNXRmhjV0JoY1dGaGNXRmg4REZnWVZGZ1lWQmdZSEZnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmlZSElnWWpKZ1lqSmlZbkppWW5KZ1luSnlZbUp5WW1KeVltSnlZbUp5WTBKeVkyTlNjME5qVW1OalUwSmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk1qYzNOalkzTmpZM05qWTNOakkzTmpZM01qWTNNall6RnhZV0Z4WVdGeFlYRmhZWEZoY1dGaGNYRmpRMU5qWTFKalkxSnlZMkp5WW1KeVltSnlZbUp5WW5KaUkxSmlZbkppWW5KeVltSnlZaUp5WW1KeVltSnlZbkppTW1JaWNpSmdjaUJ5SUdCd1lIQmdZSEJoWUhCZ1lIQmdZQk5qWTNCZ1lIQmdZSEJnWUhCZ2NHQmlNaUppTWpKaVluSmljbUp5WW5KaVluSmpZbkpqWTNOalkzTmpjMk5qYzNOalkzTnpZMk56WXlOekl5RnhZeUZ4WVdGUVlHQndZR0J3Y0dCZ2NHQmdjR0JpY21KalUyTmhjV05oYzJOamMySnlZbUl5SUdCd1lHQndZR0J3WVVGeFlYRmhZWEZoWVhGaFlYRmhZWEZqSTNOalkzTmpZM05qWTNOalUyTmpjMkpqYzJOalUwSmpVMkpqVW1KaWNtSmljbUppY21KaWNtSmljbUp5SW1Jd1ltSXlZakl5SUdCd1lHQndZSEJnWUhCZ1lIQmdZSEJnWUhCaFFIQmdZSEJnWUhCZ1lIQmdjR0ZSUVdGUllVRnhZWEZoWVhGaFlYRmhjV01oY1dGamNXRmhjV0ZqTTJGamN5TmpjMk1qYzJOamMyTmpjMk16WTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNmZ0lDQWdFQ0FnWURBd1VEQ2dJQkN3b0REUXdKQkFrRER3Z0lCUWtEQlFnRkJRc0dDd1lEQlFrRkNBTVBDZ2tEQWdzREF3WURCUU1FQkFZRUNBSUdCZ0lIQndRR0FRRUNBUU1CQWdRQkFRTUNBUUlDQVFNREFnRUJBUUlCQWdZQ0J3SUNBUUlGQWdFQ0FRSUNDQUlEQXdVSUF3SUlBZ0lDQVFVREFRY0RBZ2dGQ1FRREJRSUpBUUVIQXdJRUNRVUZDQVFEQmdNUUZBc1JIdzRIQmdVREJ3UVBFd29HQlFVS0JnUUlBUUVLQ0FzQkJBUUNCQVFDQmdjQ0FRRUJBUUlCQWdNQkFRRUVBZ0lFQVFRREFnUUZBd0lGQWdRREFRVUhCUVVJQlFRR0F3VUNBUWdJQ1FRRkNBVUZCZ1FDQndNV0VBZ0hEUVlFQndNTEVTRU1DUVlDQkFZR0N3VU9BZ1FJQVFjSUFRRUJBUUlDQVFFQkF3SUNBUUlEQmdNQ0JBVUNCUVVDQndJQ0R3UUdCQWtGQWdZR0FnVURBZzBERGdRRUJ3TUhEUWNFQ0FRYkJBY0VBZ2tFQ1FFQkNRWUZDeEVCQ0FJREFRVURBZ2tOQmcwSEJBa0hCd29HQndNQ0N3Z0xCZ01JQXdrQkJBTUVBUUVCQVFFRkF3SUVBd1lDQXdjRURBZ0ZBZ29HRFFjRkJnUUhDZ1VGQWdJRUFnRUJBUVVHQWd3Q0JBTUNDQVlGQndVRUNRSUhBZ1VPQlFJSUF3c0VBZ1VKRFJVSUJRY0VBd0lDQXdFQkF3TURBUU1EQWdJR0F3a0ZBZ1VJQ1E0WURnVUpCUUlKQkFJQ0JRSUNBZ0VCQWdJREFRRUNBUVVEQXdJRkFnVUlCQVlSQ0FNSUJBWURDZ0lEQ2dFTENoa0xCUW9HRGdjTUNRVUdEQVlEQ0FNR0JRSUNBZ0lIQWdNRUF3RURBUUVCQVFFQkFRTUJBd2tDQlFvRUJnY0lBZ0VDQkFRR0V3a1BCZ1FMQVFJRUJ3UUVCUVVGQ0FRRUNBTUlBUWNFQ1FZRUNnRUNBd2NEQXdZQ0FnTUNBZ01DQWtZQ0NnSUZDUVVGQ2dVRkN3SUpBZ0lHQ1FJSEJ3UUNCQUlEQVFJQkFnRUJBUVFDQVFJQkFRTUdCUU1CQ0FJQ0FRSUNBZ01EQkFJR0F3WUdBZ3NOQndzQkRBRUZDZ1lKQVFJTkJ3UUZDUVVWRGgwTUF3SU1EUWNOR1FvSkZBa0hEQWdMQmdJRkN3VUdEUVlJRUFjTkJRVU9BZ0lHQWdRSEFna0RBZ2NFQ2dJRUFnSUlBd0VFQkFJREJRTUVCd1FDQVFJS0JBSUZCd0VCQWdFREFRRUJBUUVEQWdJRkFRRUZDUU1IQVFjQ0JnWUVFdzhLQlFvRkJRUUNJQU1HQXhFVUNBTUdBd1FMQmdVUUFnY0VBd1VPQlFJRUF3Y0RBUVlNQXdVSkJnUUlBd2NCQ1FZRkFnSURBZ0lFQWdJQkNnSUJBUUVDQVFFQ0JRUUNBUUlFQWdZQ0JnSUNCUU1jQVFvRkNRZ0ZEUTBGRUFZR0FnVUhCQVVIQlF3TkNBb0hEQUVKQXdJSkJnSVNCQWNEQlFFRkFRRUVBZ0VHQVFNQ0FRRUJBZ0lGQVFJQ0JRSUlBUUVNRWdvQ0F2NUxBeEFGQXdRQ0JRa0RCZ1lDQWdJQ0FnSUJCUUlFQ0FZS0JnVUdDQVFDQndNUUV3Z0RCQU1JQkFRSUJRd0ZBUUVGQWdFQkFRRUNCUU1LQndNQ0JnTVBCUVlNQWdVQ0FRSUNBZ1FDQkFFRkJBSUJBUWtGQkFJQ0VnMEhBZ0lFQkFjRkJnTUVDeFlKQ1FjS0FRSUhBUUVDQXdJSkFRRUNBd1VSQ0FZTUJRZ0xCZ1lHQlFRR0JRc0dCUWNEQXdVRENRY0RCQWNFRFFnQ0Fnb0JBZ0lCQWdNQ0FRSUJBUUlDQWdJRkFnSUtCUVlJQVFZSkJ3UUhCUXNHQXdRSEJRY05Cd2NQQ0FNSUF3c0NDZ0VKQXdFRUNBVVJBd3NSQ1FVSkJnc0ZDQUVCQlFFR0JRTURBUUVEQWdJQkFRSUJCUUlEQlFJSEJ3VUhCd01JQWdJREJnTUVCd0lDQndJQ0JRSUFBQUFEQUFvQkV3Rk9BdDhBN0FFZ0FXUUFBQk1XRnhZV0Z4WXpGaFlYRmpZM05qYzJOamMyTmpjMk56WVdNelkyTXhZV054WVdGeFlXRnhZV0Z4WVdGUllHRnhZV0ZSWUdGeFlXRnhRR0ZSUVdGeFFHRnhRV0Z4WVhGaFVVQmhjV0ZoY1dGeFlXRndZR0J5SW1Cd1lHSnlZMkp3WUdCd1lHQndZR0J3WUdCd1lHSnlJbUp5Y21KaWNtSmljbUppY21KaWNtSmljbUpqVTBOamMyTnpZMk56WTJOelkyTnpZMk56WXlOelkzTmpJek1oWVhNall6TWhZek5pWTFORFluSmpZbkppWW5KaVluSmlZbkJpWWpJZ1lqQmdZakJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmhRSEJqRUdCaGNtQmljbU5pY21KaWNtSmpjbUppYzJOaGNXRmhjR0JnY0dCZ2NHQndZR0Z4WVdGeFlXRnhZWEZqWTNOakkzTmpZM05qUTNOaVluSmpRMUpqWW5KaVkxTmpZMU5DWW5CZ1lYRmhZWEJnWUhKZ1lqSWlZaklnWWpJaVlqQmlZSEJ3WUdCd1lHSXlZMU5EWW5OQ1kxTWhZek1qWTNNaFl6RmpNeU5qY3lGamN5TmpNeUZqTXlOamMyTWpjMk5oc0hBUVFJQlFjREJBVUZBd1VGQlFVRUJ3UUVCQUlIQmdjRkFnc05CQWNNQnd3RkF3TUhCUUVGQWdNREFnRUNBUU1DQVFJQkFnRUNBZ0VDQVFVQ0JBTUNBd0lEQVFJRkJRd0dCUU1OQndnVUNBa1VDZ0lEQVFrRUFnVU5Cd1VKQlFnQ0Fnd0ZCZ2dTQ3cwQ0JRTUNCZ0lJQXdNQ0F3TUNCQUlCQWdVQkJnUUNBd0lEQkFFRUNRVUhCUU1DQ2dZRUNBVUxCUU1IQXdNR0F4QVRDZ01DQWdJQkFRRUJCUUVFQlFVSkF3SUVDd0lDQndNRkN3WUVCZ1VFQ0FNQ0FnTUJCQUlCQWdNQ0FRZ0hCQUlFQXdRRkFnSUJCQUlDQWdFS0JRVUNCZ1FDQXBnR0RBWU9HZ1FGQXdJREFRRURBUVlFQXdvQ0RoY0lCUVFEQmdzRkNBSUZCQUVDQVFFQkJBRUJBZ0VFQnc2T0FnTUJHekVVRGdzRkFnWURCUWtGQlFzRkNBSUVFeEFkRGdRSEJBb0NBUU1IRHdnR0RBWUlEZ2dPQXdZU0NBRUlCQU1IQXdRSEJBZ1BDQWdRQ0EwYUF0TUZCZ0lJQXdjREN3RUJBd0lDQXdJRkFnTURBZ1VDQXdFREFRRUZBZ0lEQWdJQkFnTUVBd2NDQVFRSEJBUUZBd1lPQ0FNSEF3WU1CZ1VIQlFVTEJnZ1RDQW9SQ3dRRkNBWU1DQVFHQWdjTEJBY0NBUUVCQVFRREJ4RUxCUUlCQkFrRUJBY0RBd0VCQWdJQkFRSUVBZ01DQWdRQ0JnUURBd1lGQkE0SUJBNEdCd3dJQ2dRREJRUUtBd0lEQ2dVR0FnSUJBUUVFQVFNQkF3WUZEQVlJRUFrRkNnUUVCd01DQmdJQ0FnRUNCQUVCQWdJR0FnUUZBd01HQVFVR0JBSUhBd01IQWdvSkFnSUJBd0VHRFFnR0RnWUZDZ1lRTEJRQkFnSUNCclVCQWdJRURBZ0hFd2dSQmdNSkFnb0pBZ1FDQWdrREFnSUNCUUlFQVFFTERBUUZBd01IQmdJSkNnUUZDQVFDQndFQ0FkRUxGZ3NEQVFFQkFnRUJBUUVCQVFFQkFnTUNBd1lXQWdZREJBa0ZBd0lCQVFJQ0FRRUJBZ0VCQVFFQkFRRUFBd0FLQVNZQlR3TFRBSGtBMWdFY0FBQVRGaklYRmhZWEZoY1dGaGNXRmhjV0ZoY1dGaGNXRnhZV0J4UUdCd1lXQndZR0J3WUdCd1lIQmdZSEJqRUdCd1lHQndZaUJ3WWlJd1lHSnlZbUp5WW1KeVluSmljbUppY21KaWNtSmpVbUppY21KaWNtTkNjMEpqVTBOalUySmpjMk5qYzJOamMyTmpjMk5qYzJNamMyTmpjeU5qYzJOamNXRmdNV0ZoY1dNamMyRmpjMk5qYzJOamMyTmpjMk5qYzNOaVkxTmpZMUpqUW5KaVluSmlZbkppWW5KaWNtSmljbU5DY21KaWNtSmljR0JnY0dCd1lHQndZR0J3WUdCd1lHQndZR0ZRWVhGaFlYRmpFV0ZoY1hGak1XTXhZV0ZSY1dCZ2NHRmdjR0JpTWlCaU1pSmljbUJnY0dCaU1pSmdjaUJnY0dJeVkyTlNZbU56WVdNellXTXpJV016STJNellXTXpJV056STJGekkyTnpJV016YzNOaFkzTWpiUEJ3SUNCUXdIQ0FJT0NRWURCd1FEQlFNQ0F3SUNBZ0lHQVFRQ0FRRUNCZ1FDQXcwR0F3Z0ZBd0lLQ3dNSUVBZ09CZ01QQ2dRSkRBWUlCZ01GQndVR0JRZ0dCZ3NEQmdNQkJRVUNBUUlDQlFFQ0FRRUNBZ0VDQWdvRkJnTUNCZ01DQXcwR0JBUUNDQWdFQ2drRERoWUpEQTBtQXdrQ0JnMElBd1lEQWdVQ0F3b0NBZ01DQ0FRQ0FRSUJBUUlCQWdFREFnSURBZ1VFQWdzREJnRUNDZ0VEQlFRSkF3SVBDUVVSQmdRR0F3VU5BZ0lCQWdjQkFnRUNBZ0lCQ2dVS0J3TUNCZ2NEQmdNSkJyWUNCZ0VDQVFJRkRRWUdEZ2NJRUFnUkp4UUpFd2dOSHcwREJnTUREUWtCQVFNQ0JnNEZEQWNGQXdZREJRa0ZCd3dIRGhNTENCVUlCZzRIQXdVREV4RUZEUWdDQlFMUkJBRUNDUVFEQWdjSUJnTUtCUU1KQlFNT0J3Z01DeGNKQlEwSUJ3NEdEZzhGQlEwSEF3WURBZ0lHQmdFREJBTUVBUVFCQVFNRkFnSUVCZ0lGQXdZR0JRZ0ZEQU1DQ0FnQkJRNEhCZ3dHQlF3RkJnMEZCUWtGQ3hFSUNBY0dDQVlDQlFJQ0JBWURCQUVGQXdJRUFnTUJBUUVDL3ZVQ0F3SUVBUUVCQWdFRUFnSUlBZ0lQQWc0UEJ3c0hDQUVDQndJTUVBVUVDZ01EQndNR0JRSU9Bd2dDQWdjQkFRSUVBZ1FCQVFJQkFRSUNBZ1VDQkFrRUFnWURDZ2NJQkFjRUR4RU9GdzBMQndNQkNnVUhDZ01EYVFVSEJRZ09CZ1FCQVFJQkFnSUNBUU1DQWdJQkFnY1FDQVVMQkFFQ0FRRUJBZ0VCQVFFQ0FRTUJBUUVCQVFFQ0FnQUFBd0FqLytRQzR3SUlBZzhDYUFMSUFBQWxCaVluQmlZakJpTWlKaWNpQmlNaUpnY0dCaU1pSmlNaUJpTWlKZ2NHQmdjR0pnY0dGQmNXRmhjV0ZoY1dGaGNXRmhjV0Z4WVdGeFl5RnhZV0Z4WVdNellXTnpZeU56WTJOelkyTnpZMk56WTFOakkxTmpVMEpqVTBKalUyRnhZV0Z4WVdNeFlXRnhZR0J3WUhCZ1lIQmdZSEJnWUhCZ1lIQmlJSEJnWUhCaVlqSmlZbkppWW5KaVlqSmlZbkppWW5KaVluQndZR0J3WUdCd1lIQmdjR0JnY0dCaU1HSWdjaUJpTUdKeUltSnlZakppWW5KaUluSmlZbkppWW5KaVluSmlZbkppWW5KaVluSmlZMUpqWTNOaVkzTmpZM05qWTNOalkzTmpJM05qWTNOakkzTmpZM05qWXpOaFkzTmpZM01qSTNOakkzTmpZM05qWTNOaVkxTkRZbk5DWW5KaVluSmlZbklpWW5KaVluSmlZSElnWUhCaUlIQmdjR0JnY0dCd1lHQndZR0J3WUdCd1lHRnhZV0Z4WVdGeFlYRmhZWEZqSVhGalkzTmlJM05qWTNOalkxSmljbUpnY0dJZ2NHQmdjV0ZoY0dKaWNtTmpjMk5qYzJGaGNXRmhjV0ZoY1VCZ2NHQmdjR0JnY0dCZ2NHQmdjaUppTWpKaVluSmljbUppY21OaWNtSmpjMkpqYzJORGMyTkRjMk5qYzJOamMyTnpZME16WTJOelkyTnpZMk56WTJOellXTnpZM01oWVhNaFlYRmhZekZ4WVdGeFlXRnhZV0Z4WVhGaFlYRmhZWE5qWTNOamMyTmpjMk5qYzJOelkzTmpjMk56WTJOelkyTnpZeU56WTJOekkzTmpZM05qSXpOaFl6RmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhRWEZoWVhGQllWRkFZbk5DWW5KaVkxSmljbUp5WW1Jd1lqQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmlJSEJnY0dGQlVHQmdjR0JnY0dGQWNHRmdjR0JoY1dOaGN5RmpjeU5qTXlGak0yRmpNV05qTXlOamMyTWpjeU5qTTJGamMwTmdVR0JnY0dCd1lpQndZR0J3WUdCd1lIQmlJSEJnWW5CZ1lIQmdZSEJnWUhCaFFIQmdZVkZoWVZCaFlWRmhRWEZoY1dGQmNXRnhZV016STJGelkyTnpZMk56WTJOelkyTnpZV056WTJOelkyTnpZMk55WTBKeVkwTlNZbU5TWTJOd0xlQlFzR0N4SUhDQVlGQ0FRSURnZ1ROUmdGQ1FVRkNRUUZCd1VGREFVRkN3VUZEQVlEQVFFQ0FnSUVBZ0lCQWdNSkF3a0ZCUXNGQlFRRUF3Y0ZFUjhMQ3dnRUN3VUNCQWNEQmdvRkNBUUZCZ0VDQkFFQkNnSUVCZ1FKQXdJRkNnWUNCZ0lDQWdJSEFnSUJBZ3NPQkFnTEJ3WURBZ1FQQndzVkRSZzRGd2dHQlFjSkJRb1NCZ0lFQWdNSEFnZ0lBd0lKRlFzRENBVUhBd29GREFRQ0JBY0RBd1lDQ3cwR0NnVUVDQUlHQWdRSEJRc1dDUUlFQWdVQkFnY0RBZ1FDQWdZQkFnRURBZ0lDQWdFRkFnY0VDQVlDQ1FrRUJnUUNBZ1VEQmdRQ0JRNElDQUlCQlFnRUNCRUpCUWtGREFJQ0RBOEhDeGdMQWdFQ0FRTUZCZ1lDQkFZREJna0ZCUWNGQkE0SUJRa0ZCUW9GQ0FNT0RBWUtBZ3NGQWdZQ0FnTUdCQVFPQVFFSUJRSUZBd1lEQWdvRUF3VUhDZ2tGQmdFQkJRY0NBZ01EQndVSUNBZ0hBZ1lDQlFNUEJRY1BCeEVOQkFZTkNBZ1FDQVVJQXdRREF3RUNBZ01DQXdVSUFnY0VCdzRIQXdjRURnZ1NDUWdKRFFJREJ3RUJCQVlDQXdJQkJRRUZBUWdFQkFvTEF3b0ZDd0VKQ3dVREJnUUxEd1lDQndJRUNBVUVDZ2NPQmdRSkJRc0NBZzhNQ0FVTEJ3TUZDQVVEQXdRRkF3SURBUVFCQVFNQkJRUUNCQUVDQ0FFQ0JnWURCUU1GQmdNS0JBSUZBd0lMQ0FRRkNBUUZBd1lQQndnSEJBZ09DQXNQQ2dJR0Fnd0pBZ2dEQlFnS0F3RUJCUUlDQWdOZ0J3UUVBd1lCQ3dJSkR3VUxCZ1lLQ0FVSkJRUUZBd3dHQXdJSEF3VURBZ1FDQVFjQkJnSURBUU1GQXdRQkJRRUJBd2dDRFJvTUJRZ0VCUWtGQXdjREN3RUNCUVFDQ2c4SUJnOEhBd2NFQ0JJSUJmN05CQWdHQkFnSUJRTUZCd1FEQndJTEFRZ0lBZ3NUQ1FVTEJBc0tCUUlHQVFJQkFRTUJCQUVCQVFJSENBWUNEQU1GQndRSURBY0hGQWNFQ0FNRkN3VUlBUUlJQWdFQ0F3TUdBd0lGQ3dFQ0FRUUNBZ0VCQWVZQ0JBRUJBUUlDQVFFREFnRURBUUVCQVFFREFRRUJBZ3daRGd3WkN3MEhBd1FJQXdjTEJ3Y0lBUVVDQkFFQkFRSUJBZ0lCQVFVQkFnVUNBd1lFQ0FnQkNnRUpBZzBGQlF3R0FnWURDUVVDQkFJRkF3SUJBZ2NKQmdvRkJRZ0ZBZ1VERWc4SkJBb0ZCUUVDQlFJQ0FnRUNCUUVCQXdRR0N4SU5BUVlDQlEwRkNBY0ZBd3NZQ3dNR0JnUUNCZ0lGQXdJQkF3SUNBUUVCQVFNQkFRSURFUWNCQlFJREF3SUhCQUlHQ1FVT0JnWUxDUU1MR0FzSURBWUxEd2dJQlFJTEJRSUZBUUlFQWdRQkFnVURBZ0lCQVFFQ0JRSUJCQUVFQXdRRkRRY0xIQTRIREFZS0ZBY0VBZ0lDQXdRR0FnSUNBZ0lEQVFRQkFRRUNBUVlGQWdNQ0J3UUNCZ0VDQXdZRkJoNEpCUXdEQWdJQ0JnSUJCQUlDQWdJRkJ3a0JCUTBEQkE0Q0JnSUNCZ01GQWdRTUJBVURCUThCQmhFWkN3SUpBUUVHQWdJQkFnSUhBZ29RQ0FjSUJRZ0hCUUlEQWdNSUFRRUJCZ0lDQkFVQkF3Z0NBUVlKQ0FZSEFna0VBZ29GQWd3SUJRMEhCd1VHQXdJRkF3TUNCZ0lEQkFJQkFnRUJBUUVCQWdFQkFnRURBd1lHQmdNR0JRSUVCd1lEQ0FnWUN3Y1FDUUVJQWdzQkJBZ0VCd1lDQ2dFRUJnZ0RCUVlDQndNSUFRSUZBUWdFQXdNQkF3RUJBUU1DQVFJRENBWUNCUUlHREFVUEVRVWJLQlFIRHdjUUV3d0ZCZ1FGQ0pBT0h3d0tBd0VLQVFVQkJRRUNBZ01CQlFjREJBWUNDQVlEQXdVRENnSUNDUUVKQWdrRUFRTUdBZ1lMQlFZRUFnY0RBZ2dQQ2dJQ0FRTUJBZ0VCQVFFQ0FRRUJBUUlDQXdRWU5rQURBd01DQmdNQ0FnTUNBZ0VDQndFSkFRY0NCQU1IQWdZSEJRTUhCUU1FQlFVU0JnZ05Cd29GQXdVTkFoUU1Cd0lDQndFQ0FnWUJCUVVEQWdNQ0Fnb0VCQUlDQndFQkFnUUNCQU1DQlFzRUNnWURDQWdFQ3hjTEZ5UVRBQUFBQUFRQUh2L0hBY29DUndCc0FMc0JBZ0g1QUFBQkJnWUhCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0dCZ2NHQmdjR0ZBY0dCZ2NHQndZR0J4WXpGaFlYRmpJWEZqTVdGamMyTmhjMk5qYzJOamMyTmpjMk5qYzJOamMyTnpZMk56WTJOVFkyTnpZME56WW1KeVluSmlZMUppWW5KaVluSmlZbkJ6WTJOelkyTnpZM0ppY21KaU1tQmdjR0ZoWUdCeVltSnlZbU56WTNOaFlYTmpZM05qUTNKalFqSmljbUppY21KaWNtQmlNaUJnY0dCZ2NHQndZVUJ3WVdCeFFHRlJZV0Z4WVdGeFkyTndjMk56WTJOelkzTmpZM05qWTNOamMyTndZbUp5WUdKeVltSnlZaUp5WW1KeVltSnlZbUp5WW1Kd1lHQndZR0J3WUdCd1lVRlFZR0Z4UVdGUllXRnhZWEZoUVhGaFlYRlFZaUl5WUdCeUlHSWlJakJnWW5OalkzTmpZM05qWTNOalkzTmpZM05qUTNOaWNtQmljbUppY21KeVltSnlZbUp5WW1KeVltSnlZMkp5Y21KaWNtTkNjbUppY21OamMyTmpjMk5EYzJOamMyTmpjMk5qYzJOamMyTmpjMk56WTJOelkyTnpZMkZ4WTJNeFlXRnhZV014WTJNeFlXRnhZV0Z6YzJOelkyTlRZMk5UWTJOelkwTnpjeU5qSXlNelkyRndZR0J3WUdCd1lHQndZSEJnWUhCaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZSEZoUUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJoUUhCZ1lIQmdjR0JnY0dCZ2NHQmlNR0pnY2lCaWNpSnlZbUp5WW1Kd1lHQndjR0JnRmVBd1VDQndRREJnTUNCQUlDQXdJQ0JBSURCQU1DQndJQ0JBSURBZ0lHQlFRQ0JRTUZBZ0lEQWdZQkJBSUJDUUVEQ1FJRUJnSUdCUVVOQlFnTUJ3SUtBZ2NEQVFRSUJBWUVBZ01GQWdJRUJBTUJCQU1FQlFJQ0FRVUVBZ2NJQXdJREJBTUNCUUlEQkFKZEF3Y0VBd1VCQXdNQ0F3TU9CUVlOQWdFQ0FnTUdBd1VEQlFZQkFRa1RMQW9DQndNQkFnb0JDd01FQ0FNSUR3VUZCQVFMQkFNS0F3RUtCQWNCQkFFQkFRSVBCQVlKQlE0VENWNERCQWdSQ0FVREFnSUNCQVFDQXdRS0JBMElCUVFKQWdJRkFnZ0NBUVFDQWdjTEJBSUJBZ01GQXdJRkFnVUdBd0lEQVFJQkF3SUZCUUVDQlFFS0Fna0hBZ1FHQWdNRkF3RU1EZ3dCQXdnREJBVUNBZ0VDQWdNQ0FnTUNBd01DQkFJQkJRZ0NBUUlEQWdZREF3UURBZ1VDQWdFQkF3SUNCQUVCQmdJRUFnRUJBUU1DQXdVREFnRURCUUVIQmdRSUF3TUZCZ0lDQkFJQ0JnSUhBd2tYQ0FjUkNROEtDUUVLQVFnRkFnUUtCUVFHQXdVSkJRVU1CZ2dEQWdNQ0FnSURBZ0VDQkFzQkRROE5BZ1FNQWdJQ0FRVUhCUVFDQWdZREJRSUJBUUlDQXdnREF3SUNCUU1DQWdNQ0JBRUJCUWdEQWdNREFRSUNBd01GQlFJQ0FnRUNCUUlDQWdJR0NBUUNBZ0lDQkFJRkFRUUtCUU1HQWdvRkN3d0dCQWNEQXd3RkJRY0RBZ29KRVFnRkNnWUZBZ0lMQXdZQmpRVUxCUTBNQndzSEJ3a0ZCUWdGQkFnRkJnd0dCUXdGQlFnQ0NRWUVDZzRGQkFzRkNRWUNCUWdGQ3dZSUJRSUpBd1VCQlFFRkFnTUJBUWNCQkFVQ0JBVUNCZ2dGQ2dZRUJnY0NCQVlJQWdJTEFnSU9Dd1VHREFZU0RBa1dFZ3NCQVFzU0NnVU5CUW9IQlRjR0R3Z0hCd01MQXdjREF3UUJBd2NGREF3SkFnSUlCQWNJQ3hFSEJBTUxCZzhIQXdZQ0JRSURBUUVEQWdNR0FRRUJBZ0lFQXdJR0JnZ0lBZ1lIQlFVSEJCRWJDd1FLQkFrRUJkSUhCeEFlRUEwRUJBY0ZDUW9FQ1FrVENnUUNBUUVCQVFFRUFnVUJDQVFDRFJJTENnTUNDeGNMQkFjRUNoTUtCUW9GQmc0SUV5NFVCeEFFRlJjSURBRUlBd0lGQlFLekFRRUNBUUVCQVFNTEJnUUVCd1VFQndRREJnTUZDUVFHQkFJTUJRWUJBUUlGQWdRREFnWUNBd1VDQWdZREJBVUZCd1lDRlFvVkRRTUhBZ2NTQ0JrbUVBZ0xCZ29GQWc0T0NBc0dBd2dGQkFNSUFnSUJBZ1lDQ1EwSUJBUUNCUVlCQVFNQkFnRUJBZ0VCQVFJQ0FnTUNEZ2tFQ0FJQ0NBSUJDQUVDQkFjRkFRRUJBUVFMQkFJSUR3Z0hCUVFJQnd3REFnZ0RBZ1FIQXdVS0F3Z0hCUVFJQlFzRUFnMGNEdzBrRVE0ZEN3VU9CUXNLQlFrQ0FnVUhCUU1GQXdvS0JRSUhBZ0lFQXdZRUFRVUhCUVFHQWdRRENBUUNBZ01CQWdFREFRSUNBd0lDQkFNRUNBUVdDUklBQUFELy93QUovK01CM3dMNUFBOEFOUUhlQXR2QUFmLy8vL2IvNFFDM0F4c0FEd0FYQUxjQys4QUJBQUVBQ1FDQkFhUUJaQUI4QUFBQkZSUUdCeHdERlJ3REJ4UUdCd1lqSmdZbklpWW5KalUySmpVbU5qVXVBelVtTmljMEpqVW1KaU1tQmlNaUppTWlCaU1tSXlZR0l5TUdCaWNtQmdjbUJnY0dCZ2NpSmlNaUJpTUdKeVltSnlZbU56WTJNeFkyRnhZV016STJNeklXTXpJMk16SVdOelkyTnpJMk56STJNekkzTmpZM0ZnR2tBd0VCQVFJQ0RRY0dBZ1lFQkFRQkJBRUJBZ0VCQVFFQkFRRUxFd3NGQ0FVREJ3TUJDQUlMQVFjSUF3ME5EQWdOREFjUkV3b0dEQVlFQ0FRRUJ3VVhGUUlCQVFFREFnTUVCUXNYRFF3V0RRVUpCUXNUQ2dVS0JoSW9GQWtTQ0FjUEJnZ1NCZ3dDQnc0SENBRkZEUklmRGdzSUJRZ0tDQWdIQ2dvSURnY0dBZ0lCQVFRR0RRVVJCZ0lHQkJJSUJnZ0tDQTBIQlFzRkFRRUJBZ0VCQVFFREFRRUJBUU1CQVFFQ0FRSUJBUUlDQWdZTkJ3VVlCUUVGQkFNQkFRUUJBZ0VEQWdFQ0FRRUJBZ0lCQWdNUUFBQUIvNjcvY2dIRUF1WUNNQUFBRXpZMk56WTNOalkzTmpZM05qWTNOakkzTmpJM0ZqYzJGaGNXRkJjV0Z4WVVGeFlXRnhZV0ZSWXpCaFFWQmhRSEJoUUhCZ2NIQmhRSEJnY0dCZ2NIQmdZbkppWW5KaVluSmlZbkppWW5KaVkzTmpZM05qSTNOalkzTmpFMk5qYzJGak1XRmhjV0ZoY0dGQWNHQmdjbUpqYzJOaWNtQmdjR0J3WUdCd1lXRlJZWEZoWVhGak1XTnpJMk56WTJOelkzTmpFMk5qYzJKalUyTlNZbU5TWW1KeVltSnlZbUl5WUdCd1lISWdZSEJnWUhCak1HQndZR0J3WUdCd1lHQndZSEJnWUhCeFFXQnc0REZRWVVGUll5SWpZWEZoUXpOaFl6RmpZek1qWXpNaFl6RmpZekZoWTNNallIQmlJSEJnWUhCZ1lISWdZakJpWWpJaUl5RkNNVUJnY1VGaFVVQmhVV0JoVVdCZ2NIRmdZVkJnWUhCZ1lIQmdZSEJoUUhCZ1lIQmhRSEJnWUhCZ1lIQmdZSEJpTUdCd1lHQndZR0p5WW1KeVltSnlZbUp5WTBKeVkySnlZME56WWlOelkyTnpZME56WTJOelkyTnpZMk56WXlOelkyTXpZV0Z4WVVGeFl5RnhZV0Z4WVdGUllHQndZSEJnWUhCZ1luSWlZbkpqWW5ORFkzRmdZVkJoWVhGaFl6RmpZM05qWTNOalkxSmlZbkppY21KZ2NHQmdjR0JnY0dGZ2NVQmhVV0Z4WVdGeFlXRnpZMk56WTJOelkyTnpZM05qYzJOamMyTmpjMk5qYzJOamMyTmpjME5qVTBOamMySmpjMkpqY21OamNtTmpjbUpqYzJKalUwTmpVbU5qVW1OamMySmpjME5qVTJOVFUwSmpVMk5EY2lKeVltSXlJbU5UUTJOelkyRnpJMk16STJNemMwUGdJM05pWTNORFkzTmpZM05qWTNOalkzTmpZM05qWTNOalkzNHdNRUFnb0JCUW9HQmhJR0RnZ0ZDZ2NEQlFRQ0N3Y0lGQWdJQWdjR0JRRURBUUlDQXdFQkFnSUNBZ0lKQndVSUFRWURBd1FGRUFzVERnWU5CUU1GQWdrR0FnTURBZ0VDQVFFRkJBVUNBUWtFQmdzRkF3TUZCd1lDQ0FRRUJ3RUZBZ1VHQWdzSkJ3VURBd3NJQ0FJR0FnVUJBUU1CQVFZSEJBNERFUUlGQ3dRR0JRSUJBd1VFQVFFQkFRRUVCUUlFQkFNRkF3UUVCUVFGQXdnS0Rnb0ZDQWtEQ1FFREJnSURBZ1VEQVFVQ0FnUUJCQVVFQmdJQ0JRSUNBZ0lKQWdFQkNBc0NDQWdGQXd3REJRb0ZBd1lEQkFZRkJRWUlCQXNCQVFnSEJRb0VGQllURFF3SUF3WUNCd0VDQmdFQkFnSUNCZ0lCQVFJQkFnSUxCQUVDQWdFREFnSUNBZ01CQWdJSEF3SURBd1FFQXdJSUF3NE5DUTRMQ0I4TkVnb0hDQUVDQmdVQ0NBSUZBUUlIQWdRQ0FRRUNBUUlCQkFFREJBUUNCd3dIQXdjRUF3WURCaEFHQ3dJSUJBSUNBUUlDQkFFRkFnWUNCQVFDQnhRSkJ3SUZBZ0VEQWdzSUJ3RUVBZ0lGQXdJSkF3TUNBZ1VJQVFjRUF3d0hEZ2dJRHdVRkFRRUNBUUVDQWdNQkF3SUZFQWNJRGdnR0RRVUdDQVVHQlFnREFnSUNBZ01CQWdJREFRTUJBZ0lDQVFRQ0FRRUJBUU1CQVFNQkFRSUJCQUVCQWdJQkFRRURBd0VCQXdFQ0FnRUJBUWtLRVJNSEN3MFBDQVVFQkE0SENBY0dBd2tGQmdZQkF3RUJCd0lCQkFJQ0FnSUNCd0VFQkFJSUJnUUNCQUlDcEFRREFnUUJCUWNGQlFVR0JnSUNBUUVEQWdFQkFnWUZCZ0VCQ1FnSkFnRUlDUVVGQ2dRTEFROEVCUVlGQlFrRkZ3c0xDZ0lDQmdJREJnTUlCUUVFQWdNRUFnRUNDUVVFQlFnRUF3d0hBdzBGQ2dJTEJRUUdBd0lCQVFJREJnUUVDQVFOQmdJRkFnTUJDQXNGRFFZQ0NRSUZDQU1HQkFVT0JRb0JCd2dCQXdJQkNBTUpDd01HQlEwS0RRY0ZCQVVGQ3c4TUJ3SURBUUlGQWdJREFRRUJBUVFKQXdjRkJBc0VCZ0lHQWdjQkFnc0hBZ1VKQ0JBSUR3SU9Bd3dVRnhRRENCTUlCUUVCQXdJQkFnRUJBUUlCQWdFQ0FRRUdCUUlCQWdFQ0F3SUJBUUVCQlFrRkJ3MElCUWtGRkF3UEZoOFJPUUlIQkJBcUZnWU5CZ1VJQlFVS0JRTUZBd1FHQXd3SEJBVUNCQVlCQVFnTkJ3VUpCQUlGQWdRR0JRUURBZ1FIQWdnR0FnWUZBdzBIQ0FrQ0F3VURCUWNDQlFZQ0JBUURDQW9DQWdFQkFnRUVBUUlDQVFVQkFnY0NBd1VEQmhjSEN3UUZCQVFDRVFJSUF3TUlBUXNaQkFjSEJnUUlCQVFHQVFVREF3Y0RCZzRKQlFnRUJBVUNBUUlERHdnSUFRTURDQVVGQ2dRSENBTUdBZ2dPQmdFR0FnSUNCUVFFQWdRRkJnTUVDQVVFQndRSUZBb0ZDUVVLRXdrRkJ3SUZDZ1lGQndRRURRTUdFUVVIQWdJTEJnVU5DQVVEQndRS0JBSUlDUVVJQ1FnRkJ3VUlCZzhFQndRRkJ3UUNBd0VEQlFnREFnRUNBZ1FDQ2dRZUlSMEVDZ1VEQkE0RkJRa0hCUW9HQnc0SEFnY0RDd1VGQlFJQy8vOEFGUURGQVlnQnhnSW1BSFFBUXdBR0FIUUF0QUFBQUFJQUZQL29BWE1CMXdDZUFVTUFBRGNHRmdjR0lpY21KaWNtSWljbUppY21KeVltSnlZbUp5WW1KeVltSnlZbkppWW5KaU1tSnlZbUp5WW1OVFEyTnpZMk56WTJOellWTmpZek56WTJOelkyTnpjMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOell6RmhZWEZSWUdGUlFXQndZR0J3WUhCZ1lIQmdZSEJoVUdCZ2NHQmdjR0JnY0dCZ2NHQmdjR0ZoY1dGaFVXRmhjV0ZoY1dGeGNXRmhjV0ZoY1dGaGNXRmhjV0Z5YzJOamMyTmpjMk56WTNOalkzTmpjMk5qYzJOamMyTmpjMk5qYzJOelkyTnpZMk56WTJOeFlHRndZV0ZSWUdGUlFXQndZR0J3WVZCd1lHQndjR0J3WUdCd1lpQndZR0J3WUhCZ1lIQmdZSEJoUUhGaFlYRmhZWEZqTVdGaGNXTWhjV0ZoY1dGaGNXRmhjV0Z4WVdGeFlXRnhZV0Z4WVZGaFlWQmhVR0ZnY2lKaWNtSmljbUppY25KaVluSmlZbkppWW5KaWNtSmljbUppY21KeVltSnlZbUp5WW1KOThEQXdJS0FRRUVCZ0VKQWdFSEFnRUpDQVlNQmdZR0FnVURBUXdLQkFZQ0FnWUNDQUlDQlFZSkJnWUVCZ0VFQXdNR0FRRUlCUUVCQndNREFRWUJBZ2NIQmdJS0RRc0NCQUlFQmdJRUF3SURCd0lGQndNS0JBZ0dBUUlCQWdJREFRa1NCd2dEQWdVQ0NRWURCd2tGQWdZREFnWUVBZ1VHQkFVSkJBUUNBZ2dFQ0FJQkJBa0VDQUVYQlFVRUJRWURBd2NDQXdZQ0NnVTRCQUVEQ0FZRENRRUVCQVlEQWdjRUJ3a0RCd2tGQXdZQ0JRUUJCZ0lHQ2dZRkJ3UUlEd2tHQXdJQ0FRTURBUUVDRGdJSURRSUhCQW9OQndVR0Fnb0NBZ1lDQWdvRkFRVUNCZ2NEQndJQ0JnSUZCZ1VHQkFJREFnWUNBZ0lFQWdvRkJRTUhBZ01DQlFnRkNBRUJBZ1FDQ1FNQkFnRURCUVFGQWdRUkFnWUZBaEFGQ0FVRUFnSUdCd0lJQVFZRkFnb0hBZ2tDQWdFQ0RBY0dBUU1DSndzYkN3RUJDQVlGQ0FFSkFRSU5DQWNOQmdZSUF3Y0VBUTRNQmdnQ0JRWUNDQVFGQnd3SENRSUNBZ29DQndRRENBTUJDUUVJQXdrR0FRSUlCUUVMQ2dVREN4Z0lCQVVDQkFnRUF3WUNCQVlEQmdVRERBWUlDQWtGREF3RkFnVUpCUWdTQ0FnRUFnWUNDZ2NFQ2dFSkJ3SUdBZ0lMQXdJRkNnVUdDd2NMQXdJR0FnTUdBd0VFQ0FRSEFoWUZDUVVDQmdNRkJnVURCZ1FLQjZzQ0NRTUxCUU1JQXdjRUJRRUNDUUlKQ0FVRURRVUVCZ1FHQXdFSUF3WU1CZ1FIQkFnVEJ3WU9BUVFLQVFVSUNBVUpBd1VOQmdjQkN3SUVBZ3NNQ1FJS0FnY0JCd0VDQ3dFREF3SUdDZ29GQXdFRUJBTUdEQVVIQlFNQ0JRSUNCQVVMQ0FVRUJBUUhBd1lIQlFnRUFRSURBd2tEQnhrRUNnUUhEZ01IQWdRVEJRb0ZBeGdHRFFVRkJBSUtCd1FIQWdZSEFnc0pBd2dDQWdZQ0N3d0VCUU1FQUFBQ0FBbi82QUZuQWRjQW13RkFBQUEzTmpjMk5qYzJOamMyTmpjMk5qYzJOamMyTnpZMk56WXpOelkzSmlZbkppWW5KaWNtSmljbUppY21KaWNtSmljbUppY21KaWNtSnlZMk5TWTNOVFkySnpZWEZoWVhGaFlYRmhZWEZoWVhGaGNXRmhjV0ZoY1dGaGNYRmhZWEZoWVhGaGNXRkJjV0Z4WVhGaFlYRmhZVkJnWUhCZ1lIQmdjR0J3WUdCd1lHQndZR0J3WUhCZ1lIQmdZSEJnWUhCZ2NHSWdjR0JnY0dCaWNtTmljM0JnWUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0J3WUdCd1lIQmdZSEJ3WUdCd1lHQndZR0l5WTJKelFuSmpZMU5qWTNOalkzTnpZMk56WXhOalkzTmpZM05qWTNOalkzTmpVMk5qYzJOamMyTmpjbUppY21KaWNtSmljbUp5WW1KeVlpSnlZbUp5WW1KeWNtSmljbUppY25KaVluSmpZMU5DWTNOalluTmlZM0ZoWVhGeFlXRnhZR0Z4WVdGeFlXRnhZV0Z4WVdGeFlYRmhZWEZoWVhGaGNXRmhjV0ZoZWVDZ1lHQmdNREJ3TURCZ1VFQlFVRkNnVUpBd1FJQlFvQkJ3a0NDZ2tGQkFjRkJ3SUVBd0lHQlFNSkFnSURCZ0lKQlFJQ0JnTVBFd0VEQWdJQkFnRUlCQVVGQXdjSUF3UUhBd0lEQWdjR0FnVUNDdzBKQXdZQ0NBVUNBZ1VDQWdRRUJ3RUZBd1FFQWdRQ0F3VUdBZ0VHQ2dVRkF3Y0NBZ1lDQkFJQ0JBc0ZDQVFGQmdRSURBWURCZ0lIQlFVREFRZ0hBZ1lDQWdVQ0FrZ0NBd0lGQndVSkFRSUlBUVFIQXdrRkFnWUNCd2NDQmdVR0NRUU1CZ1VDQnhBRUFnVUVCUU1CQWdFQ0JnUUNBUVVDQ1FVSkJRVUNCd0lFQmdVSUJBSUhBUUlIQlFNQ0JRWUZBZ1VDQlFFQ0F3Y0dBZ1lCQkFRSUFnRUhBd0lLQlFVRUN3VUlCZ2NEQmdNQ0NRTU5BZ0VCQXdJQkFRRUJCQUlPRHdnUEJ3b0dDQUVCQndFQkFnY0RCUWtIQXdnRkJ3TUdBd0lHQVFJR0JRUUhBd2NDQkRvTUJnZ0dBd1VHQlFNR0FnVUpCUVVLQlFnREJBZ0VDZ2tIQWhBTEJnVUtCUWNFQndJQ0JnY0RDZ1FEQkFjRkJ3WUNBd1VFRVJFRkNRVUxDQXdGQ1FVREJBWUdBd29GQWdjR0JBSUdBZ29IQWdVRUNCZ0xBd1VERFFZRkFnZ0JBZ2NHQ0FJQkJRTUlCQU1FQlFRS0Fna0NBZ2NNQndVRUJnSUNCZ1VEQlFJR0RBWUpCZ2dJQXdrTkJ3TUdBd3NEQ0FFTUJnUUlCUUlTR3d1M0NRTUZCQXdGQ0FZQ0J3RUZDUVFKQndJR0Fna0hCQWtGQ0EwR0Vna0ZCQXNUQkFJSEF3NEhCQW9FR1FJTUF3SURBd0lOQlFjR0NnUUVCQVVJQlFzRUFnUUNBUWNEQWdNQ0JRd0dBd1FFQmdJQkNnb0dBZ01EQVFnRkFRRUhBUWdLQWdVTEJRZ0ZCQUlIQVFJSkJnMEZBd2tGQ0FnRkFRb0RBZzRFQlJNSUR3WU1CZ2tCQVFjQ0FRUUdCQVVOQkFVSUJRWURDQUVDQlFRQ0NRRUhCUVFLQ1FMLy93QVIvL2tCbUFCaEFDWUFKQUFBQUNjQUpBQ1BBQUFBQndBa0FSOEFBUC8vLzh2Lzh3TkJBOEVDSmdBM0FBQUFCd0JXQUpvQTMvLy8vOHYvOHdOQkE1Y0NKZ0EzQUFBQUJ3RGpBTTBBemYvL0FCNy85Z0xWQTVjQ0pnQkZBQUFBQndEakFOY0F6UUFDQUNUL3l3UVJBeElEQ1FQYkFBQUJGZ1lIQmdjR0J3WVVCd1lHQndZR0J3WUdCd1lHQndZV0J3WUdCeFFVQndZV0J5WVdCeVkwSnlZbUp5WW1KeVltSnlZbkppWW5KaVluSmpZbkppWW5KaVluSmljbUppY21CaWNpSmdjaUppY21KaU1pQmdjR0JpTW1CZ2NHQndZR0J3WUdCd1lHQndZV0J4UUdCd1lHRlJZR0Z4WTJGellXTXpZV056WVdOelkyTnpZMk56WTNOalkzTmpRM05qUTFOalExSmpRbkppWW5KaVluSmlZakJ3WUdCd1ltQndZR0J3WVdGeFlYRmpZM05oWTNGZ1lIQmdZSEJpSUhCZ1lqQmlZbkppWTNORFkzTmpZM05qWTNOaFkzTmpJM05oWVhGaFlYRmhZWEZoWVhGaFlYRmhZVkZnWVZGZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIRmhjV0Z4WVhGaFlYRmhZVkJnWUhCZ1lIQmdZSEJnWUhCZ2NHQmdjR0JnY0dCaWNpSmljbUppY21OaWNtSmpVMk5qYzJOVFkyTXpJWEZCWUhCaVlISWdZSEJnY0dGeFl5RnpJV056WTJOelkyTnpZMk55WW1KeVltSnlZbUJ5SUdJeUltQndZR0J5SUhJZ2NHSWdjV0JoY1dGaGNXRkJjV0ZoVVdCaGNXRnhZV0Z4WVdGeFlXTXhZMk56WTJOelkyTXpZMk56WW1OelkyTnpZMk56WTJOelkyTnpZMk5UWTJOelkyTnpZM05qUTNGZ1lWRmhZVkZSWVdGeFlVRnhZV0Z4WVdGeFlHRnhZV0Z4WVZGZ2NHSmljbUJpY21NU1ltSnlZbUl5WUdKeVltSnlZR0J5SW1CeVlHQnlJR0l3WW1Jd1lpQndZR0J3WUdCd1lpSXdZR0J6UTJKd1lVQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHSnlJbUl5SUdJeUltSnlZbUp5WW5KZ1luSmlZbkppWW5KaVluSmlZbkppWW5KaWNtSmljbUp5WW1KeVkwSXlZbUp5WW1OU1kwSnlZbU5TWTBKeVltSnlZMUpqWTFOQ1kxSmpRbkppWW5OaVluSmpRMU5pWTFOaVkzTmpRM05UUTJOelEzSmpZM05qWTNOalkzTmpZM05qWTNOalEzTmpZM05qWTNOalkzTmpZM05qWTNOalkzTmpZM05qWTNOamMyTWpjMk5qYzJOamMyTWpjMk5oY3lNaGN5RmhjV0ZoY1dGaGNXRmhjV0ZoYzJKalVtTlRZeU14WVdGeFkyRnhZMkZ4WTNGaFl6RnhZekZqWVhNaFlYTWhZek1qWXpNaFlYRmpJek16STJOeklXTnpJMk16WVdOelkyTnpZM05qWTNOalkzQlNZbUp5WW1KeVltSnlZbUp5WWpKaVlqQmlZSEJnWUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0lnY0dCZ2NHRkFjR0l3WUdCd1lVQndZR0J3WUdCd1lIQmdjR0J3WUdCd1lHQndZR0J3WUdCd1lVQnhRR0ZSUVdGeFlVRnhZV0Z4WVdGeFlXRnhZWEZoWVhGaFFYRmhRWEZoWVhGaFlYRmhZWEZoWVhGaGNXRmhjV0Z4WVdGeFlXRnhZMk16WTJOelkyTnpZeU56WTJOelkzTmpjMk56WTBOell5TnpZMk56WTJOeVkyTnlZMk5UUW1OVFEyTlNZMkp6VW1OalUwSmpVMUppWW5OQ1kxTkRZbkppWW5KaVluSmlZbkJBa0lCd0lDQkFRQ0FnSUZBUUlDQXdJQ0FnSUNBd0VGQVFFQ0JnSUJBd01DQmdFRUJRRUJBd0lDQXdFREJBTUNBd0VDQVFNRUF3VUJBUUlFQVFrS0JBb0dBd1lEQlFnRkF3Z0NBZzBGQnhBR0NnOEtBd2dEQmdZQ0ZRa1VKaEVGQVFJQkFRRUJBZ0VCQVFFQ0FRRUNCUWNGQXdrRkN4Z09FU0VRQlFzRkJRZ0VDd0lDQndFQkFRVUNBUVFDQmdJRkRBY0pCd1FWQlF3RkNRVUNCd1VCQWdRQ0F3Z05FUWtFQlFRTUF3SUpCQVFEQndNRUJRSUtFQWdHRGdJRUFnSUVCUW9IQkFrQ0FRVUZBdzBMQmdrT0J3WU5CZ2dQQ0FFQ0FRSUVBUUlCQXdFQ0FRRUNBd0VDQVFJQ0NnSUlCd1FFQ1FVRUJBb0VCZ1FGQ2dJQ0JBSUtBd01EQWdJRUFnWUJBZ29DQWdjQ0JnOElDQThGQlF3REFnWUJBUUVCQVFJQkFnSUxDd3NGQ3drR0F3Z0hCUUVLQWdzQ0F3VUVCZ1VGRVFZTEJBRUVCd1FHQXdFQ0NBVUVCZ2NMREE0RkRBVUZEQVVGQ3djSEJBY0VFaEVHQWdJQkFRSUJBUUlCQWdJQkFnSUhEeDBPQ2hNTENCVUxDUklJRFJZTERBUUNDeGNMQndFQ0JRSUNCQU1FQVFZQ0JBSUJBUU1DQWdJQ0J3SURBd0VGQ2dRQkF3RUNBUUVDQXdFQkFnRUNCQUlEQVFRQ0FnTUJDUUVHQlFzRkRCRWREZ1lNQlJBbEN3UUhCUW9WQ3dzU0J3a1RDUW9CQVFVTUJRVUlCUVlNQnd3SEJBVU1CUTRkRHdFQkNBSUhFUWtEQmdRRUJnUUZDQVVKRHdZTEd4TURCZ1FEQmdJREJRTUpDUVVNQ2djQ0FnSUlCQVlJQlFnRkF3TUhBZ3dKQlFZREJRY0ZDQVVHQkFJRkFRUUZCQVVDQWdJRkF3UUJBZ01DQlFFQ0FnRUJBUUVEQWdJQkFRRUJBd0VDQVFFREFRVUNBd0VDQVFJRUJBRUVBZ0lGQVFJRkFRWUVBZ1lFQWdVS0JRWUtCUVVHQlFnWERnVUpCUVFHQkFrR0Fna0ZCUWNGQ0JBSkFnWUZDQlFMQnc4SUJBa0ZCZ3dGREFvRkJBTUNDZ29HQXdFR0FnWURBd1VEQ3drRkN3c0ZEUXNIQkFJUURBSUdEZ2NMRndzREJnTURCZ1FDQndRS0dRc2pEUWNEQlFnRUJBZ0VDQkFHQ2hFTEJ3UUxFd2tFQ0FUOXpBa0lCUUlGQXdJSUJBUUhCQVVLQlFZRUN3d0dBd2dFQkFZRkNCTUZCUWNEQmdRREJnSUlBUUVGQ1FRSUFRVUJCd0lDQndFQ0FnSUVBZ0VEQWdFRUFnRUNBd0VDQWdFRkF3SUJBUUVCQVFJQkFRRUNBZ01CQXdVQkFnTUNBZ0VDQXdFQ0FnSUNBZ2NFQXdRQ0JnTUNBd1FDRWcwRkJRUUdDUU1GQXdNRkF3a1VDd3NYRGdJSUFnY0NBUVlFQWdNRUJnTUhCQVlCQkFNQkF3TUNEZzRIQWdJQkFRSUJBZ0lCQVFFQ0FRRURBUUVCQWdFRkFnSUVBZ1FJQWdNU0JBOEZBd2dHQkFVSUJBY0ZBd01NQlFRRkF3VUtCUTBQQ0E0YURnVUxCUlVZQ1FJSkFRRUlBZ1FIQkFnRUFnMFJCUVFKQWdjRUJnd0hDd1lDQlFvRkRBZ0ZBZ0lCQXdFQkFRRURBUUVCQVFFREFnRURBUUVCQWdNRUNRZ09JQkFFQ0FVTEZ3MEhEUWNHRFFZV0xSY0NBZ01DQVFFQkFRRUNBZ0VFQWdFQ0FRa0NBZ2dDQWdZRURRY0RCd1lJQndjRkFnY0NCUXNDQVFNQkFRWUNCUUVDQndVRUJnb0VCd1VDQmdJQkFRRUNCUU1KQXdJQkFRSUNBUVFDQ2hnT0JBWUZCZ2tFQ0FRQkJ3RUJCQUVEQWdFQkFRTUNBd01FQ3dJQ0JnTUZDUWtGRGdVSUNRVUVDQU1FQndRRkNRTUZDd0lEQXdFQ0F3UUdBZ1VFQkFRSENRVUREUVVFRmdVR0JBSUNCUUlJQlFJR0FRSURBUUlDQVFFQ0FRSUNBZ2dEQXc4SUJBVURCUTRDQlFFRUJBY0ZDd1VFQkFFREFnVUtDQW9DQVFJQ0NBVUNCUkFJREFjRkRBa0ZBd1VDQXdFQ0FnRUJBUUVDQVFFR0JnZ1JDUVVIQlFVS0JRa05CaE1sRXlVaEF3VUNBZ1FDQWdRQkFnRUNCQUlCQWdJREF3a0ZBd1lIQkFrSEFnZ1FDQWtDQWdvREFnWU5CZ2NOQ0EwUEJBa0NBd3NGQlFvSEV3Y05DQXNVQ2dvT0Jna1FDQlVaRVFVTUJnZ0VCd1FHQXdFQkFRRUVDUWNFQWdVQ0JBSUJCQUlDQXdFQkJBSURBZ0lDQVFFQkFRSUJBUUlCQVFJREFSSWxGQWNEQVFvUUNRTUdBZ0lGQWdNSEJRWUdCQVVKQWdJQkFnSUNBd0VCQkFJQkFRRUVBZ01GQkFZR0FnSUdCQTRLQlFRSEJRc0ZDZ2NKQmdNS0FRZ05Cd2tCQWdNSUJBb0VBd3dEQWdVT0J3c0JBd2NDQkFZRUF3WURCZzBGQkFnRkRCY09Dd01DRHdvRkJCRUlFQVFPQlFvR0F3WURCUWNFREFVRENRa0ZDZ29FQ0FNQkNBWUVCZ2dEQnd3R0J3WUVBZ1VCQ0E4R0FnUUNBZ01DQWdRQ0FRRURBZ0lFQXdFQkFnRUJBUU1DQWdNRURBc0ZBd1lDQ0F3RUZSVUtCd1lEQVFFQkFnRUJCQUVCQndRREFnTURBZ0VCQVFFQkFRTUJBUUlCQVFFQ0FRSUJBZzBFQkFRQ0RBVUNCQU9PREF3RkFnY0NBZ0lDQWdRQkFRRUNBZ0lCQVFJQkFRSUNBd1lEQXdNQ0JRSUNCUUlJQVFRTEJBa0RBZ29LQndNR0FnRUNDQUlNQWdJSUJnY0hDZ1FFQlFNTEFnSUpGUXdJRFFjSERRY0hFQWNNSGdrRkRBTUdDZ1VRRFFZSEJ3VUlCUVVKQXdVRkFnUUZBZ2dPQmdRSEFnZ0ZBZ1FJQWhzTkFnWUNCZ1VCQVFFQ0FnRUNBd2NOQkFVREFnWUJCd1FDQXdZRUF3a0VCUU1CQndFRkFnSVVGd3NIRVFVSkJRTUVDQVVGQ1FVWUZ3c2JDZzRIRFJzT0d4VW5GQVlOQndjUEJRTUdBd1FHQXdnTEJ3QUFBQUFEQUI3LzdRTU9BZzhCWlFHOEFrQUFBQ1VHQmdjaUppTWlCZ2NpQmlNaUppTWlCaU1pSmljaUppTWlCZ2NHRmhVVkZoWVhGaFlYRmhRWEZoWVhGaFlYRnhZV0Z4WVdGeFlXRng0Q05qYzJOamMyTmpjMk1qYzJGaGNHQmdjR0JnY0dJd1lHQndZR0J3WUhCaFVHSnlZaUp5WW1KeVlpSnlZbkppWW5KaWNtSmljbUppY25KaVluSmlZbkppWW5CZ1lIQmdjR0JnY0dCZ2NHQmdjR0J3WUdCd1ltQndZaUl3WWlKeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVltSnlZbkppY21KeVltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVkySnlZbU56WTJOelkwTnpZMk56WTJOelltTnpZME56YzJOamMyTnpZMk56WTJOelkzTmpjMk5qYzJOaGN5RnhZV0Z4WVdGeFl5RnhZWEZoWVhGaFlYRmhZWEZoYzJOamMyTmpjMk5qYzJOamMyTmpjM05qWTNOalkzTmpZekZqWXpOallYTWhZWEZoWVhGaFlYRmpJWEZqWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlWRmdZWEZoVVdGaFVVQmhjV0ZnY0dGZ2NHQmhVR0ZpYzBOalVtTmljbUpqYzBOalVtSnlZbUp5WW1KeVltSnlZR0l5WWpCZ2NHQndZR0J3WUdCd1lHQndZSEJoWUhCZ1lIQmdZSEJoUUhCZ1lIQmhRSEJnWVhGallYTWhjV0ZqTVdOaGNXRmhjV05qYzJNamMySmdVMk56WTJOelkyTnpZMk56WTFOalEzTmpZM05qWTNOalkzTmpRMU5qWTFOaVkxTmlZMU5qYzJKalUwTmpVbUpqVW1KeVltSnlZbkppWW5KaVluSmlZbkppWUhCZ1lIQmdjR0J3WWpCd1lHQndZR0J3WUhCZ1lIQmdZSEZBWUhCaFFYRkFZWEZCWVhGZ1lWRmhZWEZoWVhGaGNXRmhjV0ZoY1dGaGNXRmpjMk5qY1dNZ01HQ1JJTEJ3NElGREVVQkFnRUJRc0ZCZzBJRGgwT0JBWURCQVVFQVFFQkFnRUNBZ0lDQWdJR0JBSUhBd3dGQ0FZQ0JnTUdEZ2dGRVJJU0JnWUxCUXdYQ0FRSEJRMFJCZ0VOQndJQ0FnWUNBd1FDQmc4RkNRMEtFeG9GQ3dVRENRVUVDQVVFQ2dVS0JBc09CUWdGQ3dFQ0VBSUhBZ1FHQWdJREFnUUVBZ0VFQkFnRkJBZ0ZBd1VGQ0FnRUJ3TUpCZ0lLQ0FRUEZ3c0pDZ2NGQmdRRkJ3TURDQU1GREFVRkNRWUNDUVFFQlFVRUJnWUZCQUVFQWdFQ0FnSUdBUUlDQkFJQ0FnRUVBUUVDQkFFQkF3RUJBZ0VDQVFJRUFnRUJBUVFCQlFNRUF3WUlBUWdDQ2cwR0JnZ0tCUTRiRVF3WUVRUUtDaGNJQlFnRUN3UUNDUUVDQndNQ0JnSUhCUUlTQ2dNQ0FnVUNBZ01IQXdRR0F3c05Cd2tLQ0FNRkNBUUdDd2dLQXdJTENRZ0ZDZ1VPQndjREJnUUdCQUlKQWdFTENBSUNCZ01DQkFJQ0JRSUNCQU1HQVFJQkFnSUJBZ0lCQWdJQkFRSUNBd0VCQVFJQkEwb0ZBUUlCQVFFQkFRUUNBd29EQ0EwTEF3a0ZEQVVFQ3dFRkJ3a0VCd1lGQlFrRkJRWURCd1FHQVFJSEFnSUNDQUlCQVFJQ0FRSUJBUUlCREJzT0J3UUhEQWdMRlFzRkNRVVBJQW9GQ1FRQ0F2NXJEQUlDQmdRRkJ3TUlBUUlHQlFFRUJBSUVCQU1CQXdFQkFRRUJBUUVCQVFJQkFRRUVBZ01FQXdVRUF3VUVCUVVGQmdVS0JBRUlIQWNHREFVS0JBNERDUUlLQ2dJQ0NBRUNCd01MREFNQ0FRUURBUUlDQWdJREFRRUJCd2dJQXdjQ0F3UURDQU1LQ1FRRUJBVUpJQW9GQkFNREJkRUNCQUVCQVFFQkFnRURBZ0VCQVFVSkJoRUVCZ1FJRHdjRUJ3TUZCd1VEQmdRTkJRZ0RBUUVDQWdVQ0FnUUNBUUlDQ3dZUkp4UUJBUUVCQkF3V0N3TUZBd29GQmdVSkNRUUpDQVFCQ1FNQkFnRUNBZ0VDQWdRQ0F3TUdCUUlGQWdZREFnMEVCUU1GQmdVRUNRVUZDd1lEQ0FnT0NBY0hCUVFJQXdZRUF3WUNCUUVCQkFFQ0FnTURBZ0lEQkFZQ0F3VUVCUWtGQkFrQ0JRY0VCUUlFQ0FjTEJ3TUNDd01DQVFjQ0JRZ0RCUVlGQlFZSERBZ0ZEaFlPQ0F3SENRd0ZBd1VEQmd3SEF3WURCZ1FDQ3dnT0JRc0dDQWNHQlEwSEFRVUVBUVVLQXdNRkFnSUNBZ01DQmdJSEFnY0JBZ2NEQWdVRENnUUNHQk1DQlFNRUJnSUVCUVFGQndNSkVBVUlCUVVFQVFRQ0F3VUJBUU1EQVFNQ0JBRUNBUUlDQXdJSEFRRUhBZ0lCQ0FNQ0JRSUNDQVFGQ3dVSUNRY0VCZ01JRUFvS0JRc0NBZ0lGQkJFUENnZ0RBZ2NOQndnTU53Z1dCaEFVQ2cwWkN3VUlCQXdHQndvSEJRMEZBZ0VDQlFFQ0FRVUZCQVFFQlFVS0J3VUlCZzBLQ0FrQ0RRY0ZDQkFLQlFzRkJRZ0ZCUXdGQmdzRkJnUUNBUUVEQVFRQ0FRRUJBUVVDQVFNSUR1c0hBZ0lHQWdjSEJBa0ZBZ2NEQmdJQ0JRZ0ZDaElLQkFnREJRc0dDUklGQlFZQkJnd0ZCUWdKRHdZRUNBSU9Cd01hRWdzU0NBVUVDZ1lHQkFZREJ3SUJBd0VDQWdRQ0JBUUhBUVlLQmdNQ0J3TUNCd0VOREFZQ0JnSUpFQWdVSlJNS0Zna0ZDQVFEQndJY0lRNEdDd1VFQmdRSEF3NElCQU1FQWdVSUF3RUJCUU1BQVFBSkFSZ0JwUUZrQUYwQUFBRVdGQlVVRmdjR0l3WW1KeUlHSXlZbUp5WUdJeUltSXlJR0l5WWpKZ1lqSXdZR0p5WUdJeVlHQndZR0J5SW1JeUlHSXdZbkppWW5KaVkzTmpZekZqWVhGaFl6TWpZek1oWXpNall6TWhZM05qWTNNalkzTWpZek5oWXpOallCbkFnQkFnVUlCd3NGQlFzR0RCY05CUWdGQXdjQ0FnZ0NDd0VIQ0FNTkRRd0lEUXdIRUJRS0Jnd0dCQWdFQkFjRkZ4VUNBUUVCQXdJREJBVUxGdzBNRmcwRkNRVUxFd29GQ2dZU0tCUUtFUWdIRHdZSUVnWUlBUUlLRGdGa0RSc0lCUWtEQkFFRUFRSUJCQUVCQWdFQkFRRURBUUVCQVFRQkFnRUJBZ0VCQWdJQ0JnMEhCUmdGQVFVRUF3RUJCQUVDQVFNQ0FRSUJBUUVDQWdJREFnQUFBQUVBQ1FFVkFqUUJZUUJtQUFBQkZoWVZGQllIQmlNaUppY2lCaU1tSmlNbUJpTWlKaU1pQmlNaUpnY21CaWNtQmlNaUpnY0dCaWNtQmdjaUppTWlCZ2NHQmdjaUppTWlCZ2NHSnlZbUp5WW1OelkyTnhZMkZ4WVdNekkyTXpJV016STJNeklXTnpZMk56STJOelkyTnpZV056WTJBaWNLQWdFRENBb0pEZ2NJRFFnUklCQUdEUWNFQ0FRQ0NnUUNCUVFLQVFFQ0NnUUVDQVVTRVFzUkVnZ0VCZ01KR3cwSUVBZ0ZDd1lGQ2dVaUd3SUJBZ0VFQWdVRUJ3OGdFQkVlRVFjTUJ3NGFEZ2NOQnhvMkhBc1hEUWtTQ2dvWUNBc0JBZzRVQVdFTUhBZ0ZDUU1FQXdFQ0FRVUJBZ0VCQWdFQkF3RUNBd0VCQVFFQkFRTUJBZ0lDQVFJQkFnSUJBZ0lHRFFjR0Z3VUNCQUVGQXdFQkJBRUNBUU1DQVFJQkFRRUJBUUVCQWdFQ0FnQUFBZ0FmQWtnQkpBTHpBRDBBZFFBQUV4WVdGd1lHRnhZK0FoY1dGamNXRmhjVUJ4UVVCd1lHQndZakJnWUhCZ1lISmlZaklnWW5KaWNtSmljbU5DY21KaWNtTkRVME5qYzJOamMyTmdjbUppY21KalUwTnpZMk56WTJOelkyTnpZMk54WVdGd1lHQndZR0ZSWTJGeFl5RnhZWEZoUVVCZ2NHQndZR0J3WUdCd1lHSXlJbTJ3Y09CUXdSQWdRSkN3MElBd1FFQlFzQ0FnRUdBUUVJQVFrRUFna0dCUVlJQkFRR0JBWUdBZ2NCQVFJQkF3RUJBUUlIQlFJSkM2QUdBZ0VIQkFnREJnUUZBZ0VGQlFJRkRnZ0tEd0lEQ0FRSkRBZ1FDQW9EQWdvREFRSUJCUU1DQmdJSEFnVUZFUWdKRHdMcUFnUUZEeHdTQVFRRkF3RUJCUUVJQ1FnRUNnUUlBZ1lFQWdrRUF3SUZCUUVCQVFNQkFnWUNCUUlDQndNQ0J3TUZEd1lLRWdjTkNRVUxFWklHQndJTkRBZ1FEZ2NOQndvQkFna0VBZ1FWQVFVS0N3UUNBdzBKQ0FJRkFnWUJCd1FCQ3cwTkF3Z0VCQW9DQkFFQ0FnY0tBQUlBQ2dKSkFROEM5QUE1QUhFQUFCTW1KaWMyTmljbUJpY21KZ2NtSmljME56UTBOelkyTnpZME56WTJOelkzRmhZek1qWVhGaGNYRmhRWEZoWVZGaFFWRkFZSEJnWUhCZ1kzRmhZWEZoWVZGQVlIQmdZSEJnWUhCZ2NHQmdjbUppYzJOamMyTmpjbUJpY21JaWNtSnpRbU5qWTNOamMyTmpjMk1qYzJOak15RmxNSERnVUxFZ0lKRkJBREJBUUZDd0lDQVFZQkFnWUNDUVFDRFFnR0J3UUVCZ01GQ1FrQkFnRURBZ0VDQndVQ0NRdWdCZ0lCQndRRUJBTUhCQVFDQVFZR0JnNElDUThEQXdrRUNRc0JDQkFJQ2dNQ0N3SUJBUUVCQkFRQ0JnSUhBZ1VHRUFnSkVBSlJBZ1FGRHh3U0FRNERBUVlDQ1FnSUJBb0RDUU1HQXdJR0FRSURCQUlLQWdFQkF3RUJDQWtDQndNQ0JnTUZFQVlKRkFZTkNBVU1FWklHQndJTkN3b0lEUWdJREFjSkFRSU1CQVFVQVFRS0N3TURCQXdKQ0FJR0FnY0JCd1VCQ2cwTkJBZ0VBd29DQkFJQ0NRc0FBQUFBQVFBZkFrZ0FsQUxxQUR3QUFCTVdGaGNHQmhjV1BnSVhGaFkzRmhZWEZBY1VGQWNHQmdjR0ZBY0dCZ2NHQmdjbUppTWlCaWNtSnljbU5DY21KalVtTkRVME5qYzJOamMyTmt3SERRVUxFUUlFQ1FzTkNBTUVCQVVLQWdJQkJnRUJCZ0VLQXdNS0JnVUdCd1FFQmdRRUNRa0JBZ0VEQWdFQ0J3VUNDQXdDNmdJRUJROGNFZ0VFQlFNQkFRVUJDQWtJQkFvRUNBSUdCQUlHQWdFRUF3SUZCUUVCQVFNQkFRY0pBZ2NEQWdjREJROEdDaElIRFFrRkN4RUFBQUFCQUFvQ1NRQ0FBdXdBT3dBQUV5WW1KelkySnlZR0p5WW1CeVltSnpRM05EUTNOalkzTmpRM05qWTNOalkzRmhZek5qWVhGaFlYRnhZVUZ4WVdGUllVRlJRR0J3WUdCd1lHVXdjT0JRc1NBZ2tVRUFNRUJBVUxBZ0lCQmdFQ0JnSUpCQUlKQndVR0J3UUVCZ01EQmdVSkFRSUJBd0lCQWdjRkFna0xBa2tDQkFVUEhCSUJEZ01CQlFFSkNRZ0ZDQVFJQXdZREFnWUNBUVFEQWdVRkFRRUJBUU1DQVFRRENRSUhBd0lHQXdZT0J3a1RCdzBJQmdzUkFBQUFBQU1BQ1FCK0FhVUIvZ0F4QUZvQXVnQUFFelkyTnhZekZoY1dGaGNXRkFjR0JnY0dCd1lqQmlZakppWWpKaVluSmlZbkpqSTFKalkxTmpRM05oWXpOakkzTmpRVEZoY0dGaGNVQmdjR0J3WUdCd1lHQndZR0l5WW1KeVkxSmpVbUpqYzJOamMyTmpjMk5oY1dGamNXRkJVVUZnY0dJd1ltSnlJR0l5SW1KeVlHQnlJbUl5SUdCeUluSmdZaklpWUhCZ1lqSmdZakpnWUhCZ1lISWlZaklnWUhCaWNtSmljbUpqYzJOamNXTmhjV0ZqTXlOak15RmpNV05qTXlGamN5TmpjMk5qY3lOamMyRmpNMk5zNEhEd2dLQVFnRENnTUJCZ01DQXdVSkRBNEJCQTBEQ2dFQkNBWURBd1VCQkFFQkFnSUNDQUVCQkFVRENUY0dCd0VIQVFRQ0JBZ0RCUUlDQndRR0RBZ0hCd1VMQ0FNR0FRSU1Bd1VHQlE0T0N3WUtuZ2dCQWdjR0J3c0ZCUXNHREJjTkJRZ0ZBd2NDQWdnQ0N3RUhDQU1DQndRTkRBZ05EQWNRRkFvR0RBWUVDQVFFQndVWEZRSUJBUUVEQWdNRUJRc1hEUXdXRFFVSkJRc1RDZ1VLQmhJb0ZBb1JDQWNQQmdnU0JnZ0JBZ29PQWZvQkFRSURBUU1KQXdJSkZBY0hBd1VJQlFVQkFnSUNBZ1FDQXdRQ0N3RURCZ01HQmdRS0FnY0NCQVArM2dnRUNBb0dCZ3NGQ1FZQ0JBRUJBUUlDQkFFREFnTUJCZ01GRGdZSkVRZ0JDQUlEQlFFQkJZOFFGUXdIQ3dRRkFRVUJBZ2NCQVFJQkFnRUJBUUVEQVFFQkFRSUZBZ01DQVFNQkFnUUJBZ0lKRWdnSkVBY0JCZ0VGQXdFQ0JRSURBUUlEQWdNQkFRSUJBZ0VCQVFNREFBQUFBQUwvK0FCdkFWTUNTQUNOQU9ZQUFBRUhCaFFIQmdZSEJnWUhCZ1lIQmdjR0JnY0dCZ2NHQmdjR0J3WUdCd1lHQnlZbUp5WW1KeVluSmlZbkppWW5KaVluSmlZbkppWW5KaWNtSmljbUppY21KaWNtSmljM05qWTNOalkzTmpZM05qWTNOamMyTmpjMk56WTJOelkzTmpZM05qWTNOalkzRmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmhZWEZoWVhGaGNXRmhjV0ZoY1dGaGNXRmhjSEppWW5KaVluSmlZbkppWW5KaVluSmlZbkpnWUhCZ1lIQmdZSEJnWW5CZ1lIQmdZSERnTUhCZ1lIQmhZWEZoWVhGaFlYRmhZWEZoWVhGaFlYRmpRM05qWTNOalkzTmpZWE5qWTNOalkzUGdNM05qWTNBVk1NQndVRkFRRUVDQVVFQXdFRUJBSURBZ2NHQWdJQ0FnUUdDZzhEQ2hrSENBUUNBZ01DQ3djQ0F3SUdCQUlFQmdRQ0JRSUlDd1FGQWdvREF3SUdBZ2tMQ0FJR0Fnb0dBUVFGQVFFRkNBVUVBd0VFQXdJREFnb0dBZ0lDQlFVSkRBUUtEUVlGQ2dJRkJnTUNBUUlGQ2dRQ0F3SUdCQUlEQmdRQ0JnSUlDd01GQWdzREF3SUdBZ2dMQ2dJR0FrTUNDZ01KREFrREJBSUpCZ0lLQkFJRkJ3UUdBd0lLQlFJQ0F3SUtBd01DQmdVQ0RBTUZCQU1EQWdJREJBRU1Bd2tLQ0FNRkFna0dBZ2tFQWdVSUJBZ0RBZ01DQ3dVQ0NRTUVBZ1VGQVFjRUJBVUNBZ0lDQ3dJQlZCVUREZ1VIQXdJSUNRVUlBUUlLQWdNSUF3Y0VBd0lHQWdVREVRa0lDQjhLQ0FZRUFnWUNEZ2tEQkFJSkF3SUZDZ1VDQXdJTER3WUZCQXNKQlFNRkFna1RDQWtFQng0RERnVUhCQUlIQ1FVSkFRRUtBd01IQXdnR0FnWURCZ0lRQWdnSUZRc0ZDQVVLQlFVQ0JnSUdEQVVEQkFJSkF3SUZDZ1VDQXdJTERnWUdCQXNKQkFNRUF3b1RCd2tGQndJR0NBWUxHZ29EQmdJTEJRSUxBUUlGQ3dZRkJRRUtBUUlDQlFJSkJnRUZDQUlHRndRRkJBUUhDQUlFQWhBTEJRd1ZDUUlIQWdzR0Fna0JBd1VOQmdVQ0F3SUZBZ1lHQWdrRkFRVUpBZ2NGQkFVRUJBY0lBaFVCQUFBQS8vLy96ZjV4QWdNQ3NBSW1BRzhBQUFBR0FLRTk3UUFBLy8vL1p2L2tBbzhEa0FJbUFFOEFBQUFIQUtFQVNBRE5BQUVBTS8va0Fna0M5Z0RtQUFBQkJnWUhCZ1lIQmdZSEJnWUhCZ2NIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmhRSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmdZSEJ3WUdCd1lHQndZVUJ3WUdCd1lHQndZR0J3WUhCZ1lIQmdZSEJnY0dCZ2NHQmdjR0JnY0dNUVlHQnlJbUp5WXhJaUluSmlZak5qWTNOamMyTmpjbU5qYzJOamMyTmpjMk5qYzJOamMyTmpjMk5qYzJOamMySmpjMk56WTJOelkyTnpZMk56WXpOakkzTmpZM05qWTNOalkzTmpZM05qYzJOamMyTmpjMk5qYzJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkyTnpZMk56WTJOelkwTnpZM05qSVhGallYRmhZWEZqSVhGaklDQ1FFREFnTUhCQWNGQWdFREFnUURCd2dGQkFJSUF3VUhCUWNMQlFnTEJ3SUNBZ2NCQWdNQ0JRb0ZCUWdGQlFFQ0JRVUNBZ1FDQ1FVQ0FnVUJBZ2NCQmdVSEFnY0VBd1lEQkFVRkF3RUNCZ01IQkFZTUJ3SUVBZ1VDQVFVQ0FRUUtDd2dMQWdjQ0NRRUNBUWtFQWdNRUNBVUNCUUlDQWdJSkFRVUNDQVFFQndZRUFnSUdBUUlEQndNRkFnRUlBZ0VGQWdZR0F3WUlCQVFEQXdJQkNBY0RBZ0lDQWdVQ0JnVUNCZ0VDQlFJQ0J3TUNCQUlGQWdJQ0FnTUZBZ1lDQXdJSkJRSUNBZ01DQVFRRkFnZ0hCUVVJQkFjQ0JnRUZCZ0lKQWdFTkJ3UUlBZ0VGQkFMTEJRa0RCUWNGQ0FVQ0FnWURCZ01MQ1FzQ0J3d0dDQThJRGhNSkN4b0xBd2NDQndNQ0F3WUNDUklMQ0EwSUNRY0RDQXNGQkFZQ0R3Z0ZBZ2dGQWdnQ0FRY01CUWdNQndVUUNBZ0ZDUXNDQlFvRkRBb1BIQTBFQ0FVTENRUUxCQW9EREFRRUFRVURCZ1VGQ0FNR0RnVUZCUU1GQndNTUJ3SUxFZ2dLRVFjTkJRVUhCZ01GQ1FVSEF3RU1BZ0lJQXdvTEJRc05Cd29JQWhBT0JnTUhBd1VIQkFrSUJBc0JCUVlFQlFzRkJnUURDQU1EQndRRkNBWUpCZ0lKRVFnREJnUUhBUUlJQlFNUUVRa1FFUW9MQlFRTEF3d0NDZ0lDQ1FRRkNBRURBQUFBQUFILy9nQXBBajhDeUFIUEFBQUJGZ2NHQmdjR0JnY0dCZ2NHQmdjR0JnY0hGQVlIQmdjR0JnY21KaWNtSmljbUppY21KaWNtSnlZbUp5WW1KeVltQndZR0J3WWpCZ2NHQmdjR0JnY0dCd1lHQndZeEJoWUhCZ1lIQmdZSEZqWXpGallYTWhZek14WTJNeFlXTXhZV0Z6SVdGeFkyRnpJWEJpSUhJZ1lISWlJSEJnWUhCZ1lIQmdZSEJpWUhCZ1lqQmlZbklnWWpJaWNpSmlNR0ZnY0dGQWNHQmhjV05qTXlGamMyTmpNeUZqYzJGamN5TmpjMkZqTXlOak15RmhjVUJ3WW1Cd1ltQnlJR0l5SUdJd1lpSXdZR0J3WUdKd1lXRnhZV0Z4WVdGeFlXRnhZeUZ4WVdGeFlXTXpJV016WTJOelkzTmpZM05oWTNOalkzTmpZM056WTNOalkzTmpRM05oUVZGUlFXRlJRVUJ4UUdGUlFXRlJRVUJ5WTBKeVltSnlZbkppWUhCZ2NHQmdjR0JnY0dCZ2NHQmdjR0ZRWW1Cd1lHQndZbUp5WW5KeVl4SmlZbkppWW5KaVluSmlZbkppY21KeVltSnlZbkppWW5KaVluQmlZSElnWW5KaVluSmpjMk5qYzJOamMyTmljbUJpY2lKaWNtSWljME5EYzJOamMyTmpVMk5qYzJOamMyTmpjMk5qYzJOamMyTmpjM05qWTNOelkyTnpZMk56WTNOamMyTnpZMk56WTJOelkyTnpZMk56WVdOellXTXpZMk56SXlOelkyRnhZekZoY1dGeFlXRnhZMk56WXlOelkyTnpZMk56WTJKelkyTndJNUJnTUNBd1FCQWdJQ0FRRUNBZ0lCQVFJR0FnSUVBd0lDQlFRQ0FnSUVBZ01DQWdRSEJBZ0dCd1lDQ2dVQ0ZTTVJCQWNFQ2dNWURoSWJEZ1VIQlFJRUFnTUNCQVVCQVFJR0FnSUNBZ3NUQ1FjQkJBVUVBaGdMQkFJRUJ3VUlFd2tKRlEwTUd4SUhDUVVMQmdNRkJBSUhBZ2tQQ0FnUUNBZ1BDQWdRQ0FnTEJ3Y09DQU1HQXdjRUJ3NElBZ0VCQVFFQkF3SUZDd1VGQmdVTEFRRUhFQWdQSXhJR0RnY0dDZ2NEQndRSUVnc0ZCQWdERHd3R0F3WUNEUWNDQlEwRkV5WVRFUjRSQXdNREFnVUZCUmNOQWdVREJRWUNCUTBIRGhJUEJBVUNFaEVJQ2dZSkJ3VUlBZ0VGQ3dVSERBVUxCZ1FGQndNRUFRc0RBUUlCQkFjQ0J3SURCZ0lJRGcwTEJ3VUxCZzBKQkFzQkFnc0ZBd3NFQndNSERBY05GQXNMQXc4TERBWURDUVFDQXdRQ0J3WUZCd0lEQlFJQ0FnZ0RCZzRFQndRREJSQUlBd2dGRFJFQ0J3SUJCQUlTSGhVQkFnRUVDUVVIRGdZSURnTUNFaWNUQVFFREJBVUNCQU1IQkFJR0F3RUZCQVVCQmdJSEJnUUNDUVFJQWdRRkF3a0VDQWdJQXdJRkF3Z0JBUXNFQlF3SUJRWUZBZ3NCQWdrRUFnUUlCQWdQQ0FzRUNnVVFEUVlLQmdNSkJBVUdCQVVKQlFRSEJBTUdBUU1FQWdMSURBTUNDZ0lGQ3dVR0N3VUZDd1lGQ2dVVkNRWUVDUXNGQ2dJRENRVUVCd01IQmdJR0NnVU1Cd29GQWdjQ0Fna0lCUUVEQWdRTkN3c2ZEZ2dQQ0FNS0JBa0ZEUWNDQWdVTUJ3Z1BDQUlCQVFFQkFRRUJBUUVCQVFFQkFRSUNBZ01GQWdFQkFRRURBZ0lDQWdFQ0FRRUJBUUVDQVFFQkFRRUJCUXdHQlF3R0JBb0dBZ0VCQVFFQkFRRUJBUUVDQVFFQkFRSUJFQUlFQVFJRkFRRUJBZ0VDQWdJQkJRSU9JQTRKRkFnTEVRZ0NBUUlFQVFJRUFnVUdBUVVCQXdRR0J3VURDUUVCQlFvRUJRY0ZDd2dFQlFnR0NnY0NCZ3dHR2dzWEN3c1dDZ2dQQmdVSEJBSUlBZ01IQWdnRkF3UUVDQVVIQlFRREJ3TUdCZ0lHQWdFREFnSUVBUUlCQVFFQkFRRUpCZ1lEQndjSUF3TUZBd0lDQkFJSUNBUUlCZ2dGQWdnQ0NRY0lEZ3NIR0FzQkFRRUJBUUVCQXdVTkJRWURBZ1FCRXlBUEFnTUJBZ0VCQlFnUUNBSUJBUVVLQndVTUJBY01CZ3dIQlFrREFnZ01Bd01GQWdrR0NBSUhBZ2dGQVFZREJRUUdCQVFEQVFNQ0F3TUJCQUVDQkFRQ0FnRUJCUUVEQVFFQkFRSUJBd1FCQXdVRUNBRUJBZ0VCQWdJSkJBUUlCQVFGQkFFR0FnQUJBQmIvNkFEeEFjd0FwUUFBTnpZMk56WTJOelkwTnpZMk56WTNOamMyTmpjMk5qYzJOamMyTmpjMk5qYzNOalkzTmpZM0ZnWVhCaFlYRmdZVkZoWUhCZ1lIQmpNR0JnY0dCZ2NHQndZR0J3WUdCd1lpQndZSEJnY0dCZ2NHQmdjR0ZBY1dGaGNXRmhjV01SWVdGeFlXRnhZV0Z4WVdGeFlVRnhZV0Z4WVdGeFlXRnhZV0J4UUhGQllISWlZbkppWW5KaVluSmlZbkppWW5KaWNtSmljbUp5WW1KeVltSnlZbU5TWW1KeVltSnlZbUp4NEZBUUlJQndNSEFnVUJBZ29CQ0FRSENRSUhDZ1VDQmdJR0F3RURCQUlWQkFrRUNBNElDQU1CQWdFQkFnTUJBUUVDRGdNS0FRZ0JBZ01IQXdjREJnc0VCUVlDQ1FJQ0NRRUtCUUlGQWdZR0JBY0JBZ1VDQmdVR0NnZ0JBUWdFQWdvR0JRTUdBZ1FDQkFrRUNBSUJDUVFDQkFJQkFnTUZCUVVDQkJBREJRWUNCZ1lFQlFjRkJ3SUdCd0lIQVFjRUFnc0hBZ1lFQWdJQ0N3Y0dBZ01CNmdJSkF3c0ZBd2dCQWdVRUFnY0JDUUlKQ0FVRURRVUVCZ1FHQXdFRkJBSVlCQWNFQ0JNSEJnNEJCQW9CQlFnSUJRa0RCUTBHQ1FZQ0FnSUVBZ2NFQlFzRkFnb0NCd0VJQWdzQkF3TUNCZ29LQlFNQkJBUURCZ3dGQ1FrQ0FRVUVCUXNJQlFRRUJBUUVBZ1lIQlFnRUFRb0RBZ3daQkFZSUJ3NERCd0lFRXdVS0JRTUxDQVVHRFFVSUF3b0hCQWNDQmdjQ0N3a0RCd0lCQWdZQ0N3d0VCUU1FQUFFQUNmL29BT1VCekFDaUFBQTNCZ1lIQmdZSEJnY0dCZ2NHQmdjR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQnlZMkp6WW1KeVkyTlRRbU56WTJOelkwTXpZM05qWTNOamMyTmpjMk5qYzJNamMyTnpZM05qWTNOalkzTmpRM0ppWW5KaVluSmlNbUp5WW1KeVluSmljbUppY21KaWNtSmljbUppY21KamMyTlRZbU56SVdGeFlXRnhZV0Z4WVdGeFlXRnhZWEZoWVhGaFVXRnhZV0Z4WVhGaFlYRmhZWEZoWVgzQVFDQWdnSEFnZ0NCUUVDQmdNQ0JnVUlDQU1IQ1FVREJ3SUZBd0VEQXdJR0NnY0VCd1FJRHdrSEJBSUNBUUVDQXdFQkFnMERDQUVLQVFNSEF3Y0VCUXNFQlFVQ0NnTUJCd1FKQlFFR0FnWUhBd2NCQWdVQ0JRWUZCd01DQlFZQ0FnVUREZ2NDQndJS0NRVUhBUUVLQkFJRUFnRUNBUU1GQkFVQ0JCQURCZ1VDQndZREJBa0ZCQVFHQndJSERBTUtCd0lIQkFJQkFnd0hCUUlEQXNvQ0NBUUxCUU1IQkFRRkFnVUJBZ2dEQ1FjR0JBMEZCQVlEQndNQkJRUUNCZ3dGQlFjRUNCSUlCdzBCQkFvQkJRa0hCUWtDQmc0RkJnTUlBZ0lFQWdnREJRb0dBUXNDQ0FFR0Fnc0NBd01DQndvSkJRTUJCQVFDQnd3RkJ3Y0NCZ0VDQlFRT0N3UUZCQTRJQlFjR0FRa0RBZ3NhQkFvRUJ3OENCZ0lGRXdVSkJRTU1DQVVHREFZR0Jna0hBd2dDREFNTENBUUlBZ0lHQWdzTEJRVURCQUFBQUFBQi8vLy84UUh4QXNrQ0ZnQUFKUlFHSXdZakJpSUhCaVlqQmdZSEJnWUhCaVlITmpjMk5qYzJOamMyTmpjMk5qYzBKalUyTmpjMk5EVTBKalVtSnlZM05qWTNORFkzTmpZMU5EWW5KaVluSmlZbkppWW5KaVluSmlZbkpnWW5KZ1lqQmlJakJpWWpCaUlIQmhZSEZBWVhGaFlYRkJZVkZoUVhGaGNXTXhRV0Z4WVdGeFlXRnhZWEZoWVhGZ1lYSmdZakppWWpJZ1lISWlZSEJnWUhCaVluTmpFMk5qYzJOelkyTnpZMk56WTJOelltSnlZbUp5WW1KeVkyTlRRbU56UTJKeVltSnlZbUl5SW1KeVkyTnpZMkZ4WTJGelkyTXhZMk56WTBOelEyTnpZM0pqY21ORGMwTnpZMk56WTJOelkyTnpZM05qWTNOalkzTmpVMk1qYzJOamMyTmpjMk56WTJOelkyTnpZeU56WVdOeFkyTnpZV0Z4WVhGaFlYRmhZWEZoWVhGaFlYRndZV0ZRWUdCd1lVQndZR0J3WXhCZ1lIQmlJSEJnY0dCZ2NHQmljbUppY21KaWNtQmljbUppY21KaWNtSmpVMk5qYzJOelkyTnpjMk5qYzJGaGNXRmhjV0ZoY1dCZ2NHRkFjR0JnY21KamMyTmljbUJnY0dCd1lHQnhRV0Z4WVdGeFlXRnhZekZqWVhNalkzTmpZM05qWTNOalkzTmlZM05EWTFORFFuTkRRbkppWW5KaWNtSWljbUppY2lCd1lHQndZR0J3WUdCd1l6QmdjR0J3WUdCd1lHQndZSEJnWUhCZ1lIRmdZSEJnY0dCZ2NHQmdjV05qTVdGeFkyRnhZV014Y3pNalkzTXpZek5qTVdOak1XTmpNeU5qTVdCaFVVRmdjVUJ3WUdCd1lHRlFZV0ZRWUdCd1lXRnhZV0Z4WVdGeFl5RnhZV0Z4WVdGeFlXRndIeENRVU1BUWNOQ1FrQkFnNFZDd2dRQ0JFTUNBb0RCUWNFQVFVQ0JBY0VCZ0lCQWdFQ0FRRUNBUWNKQmdjR0FnSUNBUUVCQVFFREFnTURCQVFNQndNSEF3UUdBZ1VIQkE0TkNnME1DQWtDQWhVcEZBSURBUUVDQlFNQ0FnSUNCQUlCQXdJQkFnRUNBZ2dDQkFZQ0JBSURCQUVLR0F3RkNRVUZDUVVLR1FzUUNRUUNDQUlDQlFJQ0J3Y0ZDd0lHQmdNSEFnSUNBUUVCQVFFQkJBRUNBZ01CQWdJRURRVVNGUWNMRFFFQkR3Z0ZCUU1QQndnSUJRUUhBZ1FDQVFFQ0FnRUJBUUVCQkFJQkFnSUdBUUlFQWdRQ0FnY0RCQVFDQndrREFnc0xCZ2NUQndjREJRa0ZBZ1VEQkFnRUJBWUNCd3dGQ0JnS0N3RUtCUUlDQXdJSEF3SUNCUUVCQWdJQkFnSUJBUVlHQXdZRUFnRUhBUUlHQ0FRSkJRc1VFUWdQQ0FRR0FnY0JBUUlKQWdNR0FnSURBUVVDQndJSkJBY01CUU1FQlFnSEF3b0ZCUWtCQVFJQkFRSUZCd0lNQ3dZRkFnVUxDZ2dFQkFJRkFRUUJBUUlCQndvRkFna0tCd1FRQ3dRR0JnRUJBUUVFQXdFQkFRRUNBUUVDQndFSUJRUUlCQVVJQlFrRUNRY0ZFUW9GQ1FvRUNRRURCUVFEQlFNQkJRSUNBd0lDQlFNQ0FRSUJCQUlDQVFNR0FnUUZBZ0lKQXdVSURoOFFDd0VCRmhFSEJ3VU1FUVVKQmdvRUFnb01CUXdhRGdFREF3RUNBZ0VDQVFRQkFnRUJBZ0lDQVFJQkFnSUhBd1VDQVFJQ0F3SUZBZ01LQlJjSEFnSUJBUUlCQWdNQ0FRRUNCUUVCQ3dNR0JnTURCZ0lEQ3dRSkN3WUZDd1lGQ1FVR0RBVURCd01PQkFvR0NnWUNCUWtGRFFZRUJBZ0ZBZ1VEQ3dRRUF3Y0VBZ01DQWdRQkFRRUJBZ0VCQVFFQ0JRVUtCZ1VHQlJNVEN3VUlCQW9WQ1JBTURRZ0VBZ1FKQlFnUUNBNE5CUTBIQ3dRQ0FnUUJBZ0lCQXdFRkFRVURBZ0lOQXdVQ0RBb0ZDUVVOQ3dnUkp3NFFEZ2dGQ2dVRkNRVUlFQWdIRGdjSEN3Y0ZBUUVEQWdJR0NBUUNBUUlDQVFRQkFRSUJBUUVQRnd3SkR3b0lBd29CQkJBR0N3MEdDd2dJRHdrQ0NBUUdCQU1HQkFZREF3WURDUUVJQ0FVRkNBWUNBd0lEQWdJQ0F3RUJCQUVFQVFNQ0FnY0dDQUlLQmdNQ0JRSU9EQVVGREFVU0FoSUVCUXNHQlEwRkVCQUlEQWNCQWd3RENBVUNCZ0lHQ2dVQ0JnUURBUUlIQVFFREJ3VUVDZ1FFRHdnRURBY01Bd3dHQkFZRUFnRUNBZ0VEQmdVRUNRUUVCZ1FEQndJRkF3TUNDQXdIRHdjQ0NnTUpCZ1FIQkFVUkJna0NBZ2NJQWdFRUFnSUlCQW9OQkFNSEF3NEhCUWdPQ0FVSkJRVUpCUVFJQXdrT0NBWUNBZ0VDQmdFQkF3SUJCd29FQndjRkRBWUZCZ2dJQVFFTUNBSUhDZ2tTQ3dVSEJRSVBBd29EQ0E0SkRoVU1Bd0VCQWdFQ0FnRUNBZ0VCQWdJQkFnRUJBZ1FGQkFVS0JRVUtEaU1SQ0JBSUNBMElCUXNHQ0JVSkNSTUlCUW9GQ1FFQ0JRSUNCQUlEQlFNQUFmLy8vL0VCOGdMSkFiY0FBQUVXRmhjV0Z4WUdGUlVVRmdjVUJoVUdGZ2NHQmhVVUZoVUdCZ2NVRmdjR0JnY1VCaFVXQmhVSEJoUUhCaFFIRkJjVUZoVVdCaGNXRmhjV0ZoY1dNaFVXQmdjR0p5WUdCeUltQnlJR0l5TWlCaU1HQmdjR0ppTWlKaWMwTmpjMk5ETTJGRGMyTmpjMk5qYzJOalUySnpRMkp5WW1KeVltTlRZbUp6WW1KeVkyTnpRME56UTJOVFFtTlRZbU5UUW1OU1kySnlZbUp6VW5KaVluSmlZbkppWW5KaWNpQndZR0J3WUdCd1lHQndZekJnY0dCd1lHQndZR0J3WUhCZ1lIQmdZSEZnWUhCZ2NHQmdjR0JnY1dOak1XRnhZMkZ4WVdNeklXRnhZMk16STJNeFlXTXpJMkZ6SVdOekkyRlJRaUJ3WUdCd1lHQndZaUl3WW1Jd1lpQndZV0J4UUdGeFlXRnhRV0ZSWVVGeFlYRmpNVUZoY1dGaGNXRmhjV0Z4WVdGeFlHRnlZR0l5WW1JeUlHQnlJbUJ3WUdCd1ltSnpZeE5qWTNOamMyTmpjMk5qYzJOamMySmljbUppY21KaWNtTmpVMEpqYzBOaWNtSmljbUppTWlKaWNtTmpjMk5oY1dOaGMyTmpNV05qYzJORGMwTmpjMk55WTNKalEzTkRjMk5qYzJOamMyTmpjMk56WTJOelkyTnpZMU5qSTNOalkzTmpZM05qYzJOamMyTmpjMk1qYzJGamNXTmpjMkZoY1dGeFlXRnhZV0Z4WVdBYm9FQlFJQ0FRSUNBd0VDQVFFQkFRSUNBUUVCQVFFQkJBRUNBUUVFQWdFQkFRSUNBUUVDQXc0R0Jnd0ZDUUlCQmdJUkN3d0hBd01IQXdVTEJSVUVCd1VHQlFJREJnTUZDQUlKQkFvQkN3RUNCZ0lKQlFJQkFnRUJBUUVCQlFJQkFRRUNBUUVCQVFFREFRRUNBUUVCQWdFQ0FRRUNBUUVEQ1FFRUJRUUVCZ1FJQ2drRUNRY0ZFUW9GQ1FvRUNRRURCUVFEQlFNQkJRSUNBd0lDQlFNQ0FRSUJCQUlDQVFNR0FnUUZBZ0lKQXdVSURoQVFDZ0VCQ1FrRkJBd0RCUXNGQXdZREJBY0VCd2NJQXdzSkJ3VUtCUlFXRkEwTkNBZ0NBaFlaRkFJREFRRUNCUU1DQWdJQ0JBSUJBd0lCQWdFQ0FnZ0NCQVlDQkFJREJBRUtHQXdGQ1FVRkNRVUtHUXNRQ1FRQ0NBSUNCUUlDQndjRkN3SUdCZ01IQWdJQ0FRRUJBUUVCQkFFQ0FnTUJBZ0lFRFFVU0ZRY0xEUUVCRHdnRkJRTVBCd2dJQlFRSEFnUUNBUUVDQWdFQkFRRUJCQUlCQWdJR0FRSUVBZ1FDQWdjREJBUUNCd2tEQWdzTEJnY1RCd2NEQlFrRkFnVURCQWdFQkFZQ0J3d0ZDQmdLQ3dFS0ZnVURCZ01GQWdKdUR4VUdDQVFLSmhFWUJnd0ZCUWtFQ0E4SUNBNEhCZ3dHQkFZRUJRZ0VDeElORGdrRkRBWURFQW9WQ3dVSUJSTVBBd1lEQ0E0RkJna0ZCQWtGQndFSkF3SUVBd0VEQVFFQkFnRUJBZ0VCQVFJRkJnWURCUU1HQVFFQkFnSUlCUWtFQ1FVSUNBSUdCUmN3R1FVSkJnY0lBdzRSQ0JVckZ3VUxCUVVKQlFNSEJBZ0VBd3NiRGdrZERRUUxCUTRPRHd3SUFnUUNBZ1lDQWdJQkF3SUJCd29FQndjRkRBWUZCZ2dJQVFFTUNBSUhDZ2tTQ3dVSEJRSVBBd29EQ0E0SkRoVU1Bd0VCQWdFQ0FnRUNBUUVCQVFJQkFnSUJBd0VDQndVQ0FnRUJBZ1FCQVFFQkFnVUZDZ1lGQmdVVEV3c0ZDQVFLRlFrUURBMElCQUlFQ1FVSUVBZ09EUVVOQndzRUFnSUVBUUlDQVFNQkJRRUZBd0lDRFFNRkFnd0tCUWtGRFFzSUVTY09FQTRJQlFvRkJRa0ZDQkFJQnc0SEJ3c0hCUUVCQXdJQ0JnZ0VBZ0VDQWdFRUFRRUNBUUVCRHhjTUNROEtDQU1LQVFRUUJnc05CZ3NJQ0E4SkFnZ0VCZ1FEQmdRR0F3TUdBd2tCQ0FnRkJRZ0dBZ01DQXdJQ0FnTUJBUVFCQkFFREFnSUhCZ2dDQ2hNSEJRY0ZDd0lBQVFBVS8zRUJKZ0x1QU93QUFCTVdCaGNXTmpjV05qY3lOak0yRmpjMk5oY1dCaGNVRmhVV0loY0dKaU1pSmdjR0JnY0dGaFVHRmhVV0JoY1dOelkyTnpZV016WTJGeFlHRndZbUl3WW1Jd1lHQnlNR0JpY0dIZ0lWRkJZVkZoWVhGaFlYRkJZWEZoUVhGaFlIQmlJSEJnWUhJZ1lqQmlZSEJnWW5KalkzTmpVMk5qYzJOalUwSmpVME5qYzJKaWM4QXpVMkppYzJKamNpQmdjR0JnY0dCaWNtTkNjbUpqVW1OamMyTmpjMkZqYzBKalVtTmljR0JnY0dCaWNtSmljbUpqVTBKalUyTmhjMk5oY3lGak1XTmpjMkpqVTBOaWNtTmpVbU5qVTBKaWMyTkRNMkZqY3lGaGNHQmhVV0JoVUdCZ2NHRkFjR0Jxd0RBZ0lGREFnSkNnUUZEQVVGQ2dRSURBVURBZ0VCQWdRQkJnNElDQkFKRGhvTUFnRUJBZ0VCQWd3T0Jnd0dCZ29GQ3hVS0FRSUNEQXNHQ0FRQkF3WUREeElRQ1FFQkF3TUJBUUVDQVFNQ0JBSUJBUUVDQWdRSkJRVUtCUWtDQVFNSUJBVUtCUUlFQVFFQ0FnRUJBZ01DQVFFR0FRRUVBUUVFQWd3VUNRVUxCUVFJQlFVREJ3TUJDQVFEQ2dRUkpnNEJBUUVDRHg4UURRY0ZCUUVCQVFNREF3WUNFaGNMQWdZREJ3OEhBZ0lDQVFNQ0FnSURBUW9DQXcwSENSb0VBd01CQWdJRUFnRUJBUUVDU3drU0RBSURBUUlCQVFNQkFRRUNCQUlGRGdjRkJ3UUtCQUlCQVFFQkJ3TUZEQWdLQmdRSkVnb0NBZ0VFQVFFQkFRY0NDQlFJQ1FNQkFRRUNBUUVEQVJoUVdGVWRDQXdIRGhrTURCb01CeEFHQkFZREJBWURBZ0lDQmdJREFRRUJBZ1VCQncwR0JRb0pGUTBIRGdjTEZBb0xFd29rUkNNRElDUWdBdzBPQ0FVUENBZ0RBZ0lDQWdZREVSUUdCQUlDQlFJQkFRRUJBUU1FQ1JNTEN4WUxBUUlEQWdVQ0FnZ0VCQWNFQ2hNS0FRSUNBZ1VDQWdFREFRc1lDd3NYQ3dzQ0Fna0hCQkFqRVFRREFRVUJCQVlNQkFJRkNBTUxGdzRKRVFnS0VBQUFBUUFlQVJZQWdnRnhBQ01BQUJNR0J3WWpJaVluSmlZbkppWW5KalkzTmpZM05qYzJNamMyRnhZVkZoY1dGQlVHQm5rTENBZ1VBd3dEQWdZQ0RBRUJBZ0lGQWdNQ0RnUUpDUVFHQ2dvSEJRZ0JCUUVvQ1FRRkFnTUNBUUlMQkFnS0NRZ0RCd0lJQXdZQkFRRUVBUVVIQ2cwRUNnb0FBQUFBQVFBSy84SUFnQUJrQURvQUFCY21KaWMyTmljbUJpY21KZ2NtSmljME56UTBOelkzTmpRM05qWTNOalkzRmhZek1qWVhGaFlYRnhZVUZ4WVdGUllVRlJRR0J3WUdCd1lHVXdjT0JRc1NBZ2tVRUFNRUJBVUxBZ0lCQndJR0Fna0VBZ2tIQlFZSEJBUUdBd01HQlFrQkFnRURBZ0VDQndVQ0NRcytBZ1FGRGgwUkFRMERBUVVCQ0FnSkJBb0RDQU1LQWdZQkFnTUVBZ1VFQWdFQkF3RUJCQU1KQWdjREFnY0RCUThHQ2hNR0RRa0ZDeEVBQWdBSy83a0JEd0JrQURvQWNnQUFGeVltSnpZMkp5WUdKeVltQnlZbUp6UTNORFEzTmpjMk5EYzJOamMyTmpjV0ZqTXlOaGNXRmhjWEZoUVhGaFlWRmhRVkZBWUhCZ1lIQmdZM0ZoWVhGaFlWRkFjR0JnY0dCZ2NHQndZR0J5WW1KelkyTnpZMk55WUdKeVlpSnlZbk5DWTJOamMyTmpjMk5qYzJNamMyTmpNeUZsTUhEZ1VMRWdJSkZCQURCQVFGQ3dJQ0FRY0NCZ0lKQkFJSkJ3VUdCd1FFQmdNREJnVUpBUUlCQXdJQkFnY0ZBZ2tMb0FZQ0FRY0VDQU1IQkFRQ0FRWUdCZzRJQ1E4REF3a0VDUXNCQ0JBSUNnTUNDd0lCQVFFQkJBRURBZ1lDQndJRkJoQUlDUkErQWdRRkRoMFJBUTBEQVFVQkNBZ0pCQW9EQ0FNS0FnWUJBZ01FQWdVRUFnRUJBd0VCQkFNSkFnY0RBZ2NEQlE4R0NoTUdEUWtGQ3hHU0JnY0NEUXdKRGhBSERBY0tBUUlMQkFRVkFRUUxDd01EQXd3S0NBSUdBZ2NCQndRQkN3ME5Bd2NDQkFNS0FnUUNBZ2dLQVAvL0FBci81UUptQXZRQ0JnQWJBQUQvLy8vTC8vTURRUU84QWlZQU53QUFBQWNBNGdEREFPSC8vLys5LytFQ2VBT3lBaVlBT3dBQUFBY0E0Z0NQQU5mLy8vL0wvL01EUVFQREFpWUFOd0FBQUFjQW9BRHNBT0gvLy8rOS8rRUNlQU9HQWlZQU93QUFBQWNBb1FDYUFNUC8vLys5LytFQ2VBUEJBaVlBT3dBQUFBY0FWZ0NGQU4vLy8vL1YvKzBCVlFQREFpWUFQd0FBQUFjQW9QL3RBT0gvLy8vVi8rMEJWUU84QWlZQVB3QUFBQWNBNHYvT0FPSC8vLy9WLyswQlZRT1FBaVlBUHdBQUFBY0FvZi9PQU0zLy8vL1YvKzBCVlFQQkFpWUFQd0FBQUFjQVZ2K2xBTi8vL3dBZS8vWUMxUVBEQWlZQVJRQUFBQWNBb0FEc0FPSC8vd0FlLy9ZQzFRTzhBaVlBUlFBQUFBY0E0Z0REQU9ILy93QWUvL1lDMVFQQkFpWUFSUUFBQUFjQVZnRFhBTi8vLy8vTy8rSUNwd1BPQWlZQVN3QUFBQWNBb0FDYUFPei8vLy9PLytJQ3B3TzhBaVlBU3dBQUFBY0E0Z0I3QU9ILy8vL08vK0lDcHdQQkFpWUFTd0FBQUFjQVZnQjdBTjhBQWYvNS8va0E3UUhoQUo4QUFCTVdCaFVVRmdjVUJnY0dCZ2NHQmdjVUZoVUdCZ2NHRmhjV0ZoY1dGaGNXRmhjV0Z4WVdGeFlXRnhZV0J3WUdCd1lIQmlJSEJpWWpCZ1lIQmdZSEJnWUhCaVlITmpZM05qWTNOamMyTmpjMk5qVTJKalUyTmpjMk5EVTBKalUwSmljbU5EYzJOamMwTmpjM05EWTFORFluSmlZbkppY21KeVltSnlZbUp5WUdKeVltSnlJbUp5WTNOaFkzTmhZek1qWXpNall6TmpZM0ZqWXpGall6TWphekFRTURBUUVCQWdFQ0FRUUJBZ0VCQWdJQ0FRRUNBZ0lIQXdRQ0FRUUVBZ1VDQXdvRkNBVUJCUWdGQ1FRSERnZ0pBUUlPRmdvSkR3Z0NCZ0lIRFFjR0JBSUdCd1FCQndRSEF3WURBUUlCQWdFQkFnUUdCUU1JQmdJQ0FnRUJBUUVCQXdJRENBa05Bd2NEQlFZQ0JBY0VEQVlCQlFnRURBSUNHZ2tKQVFFR0F3SURCd1VGQndNS0F3SUxEQVVMR3dIZ0JRWUZCdzRIQlFrRkV5OFdDeFVMQ3hJS0J3OElDeHdNREJnTEJ3NEdDd0VCQ0FRREJnSUZCZ1VKQXdNQkFRRUNBZ0VCQXdJREJBSUNBZ0lCQXdFQ0FnSU1CQUlLQ0FJSUJ3VU9Cd3NPQndnUENBWU5CZ2dRQndVSEJRc0tBZ3dHQlEwR0JRY01CZ3dGQ1FVRkN3WURDQVFQQ0FzS0FnUUNBZ1VCQWdFQ0JRRURCUU1IQmdZQ0FnSUJBUUlCQVFFQkFnRUJBd0FBQVFBZkFrOEJYd0xiQUd3QUFBRUdKZ2NtSmljbUlpY21KaWNtSmljbUppY21KaWNHRkFjR013WUdCd1lHQndZR0J3WUhCZ1lIQmdZSElnWW1KaWMzTmpZM05qWTNOalkzTmpZM05qVTJOamMyTmpjMk5qYzJNamMyTmpjMk56WVdGeFlYRmpZWEZoWVhGaFlYRmpJWEZoWVhGaFlYRmhRWEZoWUJYeHNaRUFrQ0FnWUJBUUlFQWdZUkJRTUVBd01IQlF3QkN3RU1CQU1OQndRSUFnSUlCZ01EQXdRTEJRUVBEd3dEQXdZREFnSUhBZ1VKQndJR0JBZ0dEd2dMQmdVR0FnSUtBd0VEQmdJRkJRMExCUTRHQ0FJQkNBUUNBZ1FDQ2dJQkF3c0dCQTBIQ1FFQ0JRSmpDZ0VFQndFQ0J3RUJCZ0lIRGdzQ0F3SUZCd1VGQWdFR0J3WUNCZ1FFQmdNQ0JRWURCQUlEQndVQkFRTURDd1FJQWdJRUFnVUhBd01GQXdZQ0JRZ0VCZ1VEQXdJQ0NBRUNBd0lGQVFZTEJBZ0hCd0VCQ0FFQ0FnY0NCd0VFQ0FFSENBUUlBZ0VEQkFBQUFRQVBBbUVCYmdMS0FHd0FBQUVHSmhjR0JnY0dCZ2NHQmdjR0JnY0dKaWNtSmljbUp5WW1KeVluSmlZbkppWUhCZ1lIQmdZSEJnY0dCaWNtSmljbUpqYzJOelkyTnpZek5qWTNOak0yTmhjV05oY1dGaGNXRnhZV0Z4WVdGeFl6RmpJWEZoWTNOalkzTmpZM05qWTNOallYTWhZWEZqSVhGaFlCYmdFSUFRY0pCUVVMQmdRRkJRMFFDUVVQQndnTEJ3VUhBd29FQ0FvREJBUUhFUWdDQndVS0VnWUlBd2tGQVFzSEFnSUpBaEFUQXdjRkNRRUlBZ0lKQVFjU0NnZ0RBZ3NNQlFVR0NBVUNBd1FDQ1FFQ0J3UUhDZ2NQRFFZQ0J3TUxDQVFEQmdRRkFRTUlBZ0VDQkFLaUJBRUZBZ2dDQXdVREF3WUNCQXdCQVFFQkFRVUNBd0VCQmdJRUJnSUZBZ01DQlFJRkFnVU9Dd01EQVFFR0NRUUVBZ1lERVE0REJRTUhCQU1DQndJRUFRTUJBUVFGQVFJREJnSUNBZ01DQmdJQkFnRUNCZ01FQWdFQ0JnVURBZ1lCQ1FJSUFRVUZBQUFBQUFFQUpnSnRBVmNDdkFCTkFBQUJGZ1lYRmhZWEJ3WW1Cd1lHQndZbUJ5SWlCeUlHSXdZbUl3WUdCeVlHSXdZbUl3WW1Jd1lIQmdZSEJnWW5KalFuSmlZM05oWXpNalkzTmhZek1qWTNNall6TWhZekZqWVhOakkzTWpZQlN3UUJBZ0VGQVJFTUJnSUVCd01NR1F3TkZ3c0VCd01EQmdRRUNBUUZCd01FQmdRSUFRSVBBd2dSQ2djRUF3SUJBUVFDQkFrRkFnY0NCZzBIQnc0R0FnWURCQXNJQ0JnSkVSUUlHU2tDdkFVTkJnWUpCZ1lCQVFFQkFnRUJBUUVCQWdFQkFRSUJBUUlCQWdFQkF3RUNBd0lCQXdJRENnVUlGQWdFQXdJQkFRTUJBUUlDQVFNQ0FRVUtBQUFCQUNNQ1dRRmNBdEVBYXdBQUFSWUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WUdCd1lHQndZR0J3WW1KeUltSnlZbUp5WW1KeVltSnlZbUp5WW1KeVluSmlZbkpqWW5KamMyRmpNeU5oYzJOaGNXRkJjV0ZoY1dGaGNXRmhjV0ZqTVdOamMyTmpjMk16WTJOelkyTnpRbU56WVdGek0yTmpjeUFWc0JCZ0lGQmdNRUF3SUVCZ0VLQmdRRkF3SUNCUUlDQ0FNTEhROElFQWtHQ3dVRkJ3UUZDQVFGQndVS0JRTU1Bd01EQXdJRUF3WUJBUUlDQkFjRkJRNEZCQVFHQWdFRUNBVUZDQWNFQ1FnR0RRVUlDd2NJRUFjS0FRd0pBZ1FEQlFJRkFnY0ZFZ01IQWdzQ3pnVUpCUWdIQkFZQ0FnWUZBZ2tHQXdNREFnSUVBZ0lFQVFVSEFnRUNBUUVCQVFNQ0FnRUNBZ1VDQ1FVQ0NnTUVCZ1FDQndRS0F3SUlCZ0lEQkFJQ0JRSUNCZ01JREFjR0NnWUVCQUlCQVFFQ0FnTUdCUVFNQlFRRkNRUUZCUUlFQXdFQkFRRUFBQUVBakFKbkFQRUN3d0FpQUFBVEJnY0dJeUltSnlZbUp5WW1KeVkyTnpZMk56WTNOalkzTmhjWEZoY1dGQlVHQnVjT0JBZ1ZBd3NEQWdZQ0RBSUJBZ0lGQWdRQ0RnUUlDZ1FHQ2d3RUJRa0JCUUo2Q3dJR0FnUUNBUUlMQkFnS0NRZ0RCd0lJQXdVQkFRRUJCZ1FIQ2cwRUNnb0FBZ0JmQWtVQklBTGtBRWdBYWdBQUFSWVdGeFlHQndZR0J3WXpCZ1lIQmdZSEJpWWpJaVluSmlZbkppY21KaWNtSmljbUppY21KalUwTmpjMkpqYzJOamMyTmpjMkZqYzJNamMyTmpNeUZoY1dNaGNXRmhjV0ZnY21KaWNtQmljaUpnY0dCZ2NHQmdjR0ZBY1dGaGNXRmpNeU5qYzJOamMyTmpjQkZnSURBd0lDQWdJS0F3b0JDZ2NGRGdjSkRBRUNEQXdHQ0FrRkJ3WUZCUU1EQndFQ0FRSUJBd01CQWdFQ0F4WUlCQVlDQWdZRUNRVUNCQXNHQlFrRkJna0VCd29GQ1FnakNBWURBd3NGQlFrRENCUUVBd01CQkFFRUNnWUdEUVVFRHdVTERRVUJCQUVDeHdvUENBUWFCUVFKQlFzR0NBSUlBd01EQWdFQ0JRSUNBZ1FEQndNREJnSURDUVFGQmdRRkJ3VUZCd1FJRWdZQ0JRSUJBUUlEQVFFREFnRUJBZ0lHQXdVRkdRTUdBUUlCQVFJQkFnMEZDQUVDQ0FrR0JRa0NBZ2NFQWdRS0JRa1FDUUFBQUFFQVMvODZBVEVBSVFCNUFBQVhGallYRmhZWEZoWVhGeFlXRnhRV0J3WUdCd1lHQndZaUJ3WUdCd1lHQndZaUp5WW1KeVlpSnlZbUp5WWlKeVkyTXpJV0Z4WVhGaGNlQWpJM05qWTNOalkzTmlZMU5pWW5KaVluSmlZbkppWW5KZ1lISWdjaUJnY0dCaWMwTmpjMk5qVTJOamMyTmpjME5qVTBOamMyTmhjeUJnY09BOGtNR0FzSkR3Y0dBZ0lHQWdJRUFnUUJCQUVDQmdJRENRUUVEZ1lOQndVR0lBZ0tHZ1VNQmdJSENBVUZBZ0lKQ3dZREN3VUxCZ2NJQkJFU0VBVURCZ1FERmdJQ0FRTUNBZ1VDQXdZTEJRWUNDQWtIQkFvRUF3d0RCQVFFQlFFREFnRUVBUUlEQVFZRkFRNG5EUVFFQWdJS0NnZ2hBUU1EQWdRRkJ3RUVEUVFJQXdvWkRRTUpBd1FKQXdrRkJBUURCZ0VCQVFFQkNRSUdBUVVJQlFZQ0N3OERBZ1FHQlFJQ0JBTUJBZ01CQlFrRkJ3SUNEd2tGQ3dVQ0FRSUJBUUVDQXdNQkFRRUJBUUVDQ0FVSUN3RUJBZ2NDQlFvREF3Y0RCUVVDQndjRkJ3UUVEUTRPQUFJQUpnSkpBVmdDNGdBM0FHOEFBQk1XRmpNV0ZnY1VCZ2NHQmdjR0J3WW1Cd1lHQnhRR0J5SUdCd1lHQnlZbUp5WW1OU1kyRnpZMk56YzJOamMyTmpjMk5qYzJOamMyRnhZV014WVdCeFFHQndZR0J3WUdCd1ltQndZR0J4UUdCeUlHQndZR0J5WW5KaVkxSmpZWE5qWTNOelkyTnpZMk56WTJOelkyTnphN0NRUURBZ1lCQkFFRUJRVUdCUWNDQVJRVURBWUJCZ2tFQndRRkNRZ0NCUTBCQlFjTUJnTU1CZ3dGQ0FzR0NRa0RDQXNGQzRZSUJBTUNCZ0VFQVFRRkJBSUhBd2NDQVJRVURBWUJCUW9FQndRRkRnVUZEUUVGQncwRkF3d0dEUVVIQ3dZSkNnSUlDd1VNQXRjSkFnVUtCZ1FEQkFJRUF3UUZDZ0VCRFJJSUJBTURCZ01GQndFQ0F3TUJCQVVEQmdFS0NBTU1CZ3dJQlFrRkJ3Z0ZCUThJQVFzSkFnVUtCZ1FEQkFJRUF3SUVBd29CQVEwU0NBUURBd1lEQlFjQkF3VUJCQVVEQmdFS0NBTU1CZ3dJQlFrRkJ3Z0ZCUThJQVFBQUFRQkkvMmdCT0FBZUFGTUFBRGNXRGdJVkJoVUdCaFVXQmhVZUF4Y1dGaGNlQWpZM05qYzJOamMyTmhjeUZnY0dCZ2NHQmdjR0J3NERJeUlHSnlZaUp5WW1KeVlpSnlZbUp5WW1KeVkyTlRZMk56WTJOelkzUGdPYkF3VUpDQVFDQWdNQkJBZ0pDQUVGQmdRREV4VVRCUWdIQXdVRERBd0RCZ3NGQlFNQ0NBZ0dCUWdOQ2d3S0FnOGhCZ1VKQkE4UEF3VUtBd0VIQWdFRkFRTUNCQUlDQlFrQkNRSUREUThOR2dVUERnc0JDZ0VGQ2dRTUF3RUpCUVVFQWdJREFRSUNBUUVDQWdZQ0JBSUVCQUVRQXdrQkF3a0lBZ1FDQlFVRUJBRUNBZ0lIQkFRRkNnUUtCQU1JQXc0YUN3UUlCUVVIQWd3QkF3Z0dBZ0FCQUI4Q1VBRmZBdHNBWVFBQUV6WVdOeFlYRmhZWEZoWVhGaFlYRmhjMk5qTTJORE0yTmpjMk56YzJOamMyTmpjMk5qY3lOaklXRndZVkJnWUhCZ1lIQmdZSEJnY0dGUVlIQmdZSEJnY0dCZ2NHQndZbUp5WW5KaUluSmlZbkppWW5KaUluSmlZbkppWW5KaUluSmlZZkd4a1FDUVFLQkFJR0VRVURCQU1GQ2dzQkFRa0JEQVFERUFnTUJBWUVBZ1FEQkFzRkJBNFBEUU1EQmdNQ0FnY0NCZ2dIQXdrSUR3NExCd1VLQlFzR0FnUUdEUXNGRFFjSUFnRUlCQUlDQkFNSkFnRURDd1lFRFFjR0FRRUVCUUxJQ1FFRUJnUUlCZ0lJRGdvQ0F3SUpDQVFEQkFJSUJnSUhCZ3NEQlFRQ0JRSURCZ1VCQXdRSUF3TUlBZ0lFQWdVSEF3UUhCZ0lLQndZR0F3Y0RCd1FDQXdNRkNnVUhCd2NCQ0FFQ0FnWURCd0VFQndJR0NRTUhBUWNFQUFBQ0FBOEFLd0kxQW5BQk5RR3VBQUFUQmhZWEZoWVhGaFlYRmhZWEZqWTNOalkzTmpZM01oWTNGallYRmhZWEZoWVhOamMyTmpjMk5EYzJOamMyTmpjMk56WTJOelkyTnpZV0Z4WVdGeFlXRnhZV0Z4WVdGd1lHRndZR0J3WUdCd1lHQndZaUJ3WUdCd1lHQndZR0J3WVdGeFlXRnhZV0Z4WVdGeFlXQnhRR0J3WVdCd1lHQndZR0J4WVdGeFlXRnhZV0Z4WVdGd1lHQndZR0J3WUdCd1lHSnlZbUp5WW5KaVluSmlZbkppTUhCZ1lIQmdZSEJnWUhCaVlIQmlNR0pnY0dCaWNtSnlZbUp5WW1Kd1lHQndZV0J3WUhCZ2NHQmdjR0ZnY0dGQWNHQmdjbUp5WW1KeVltSnlZMEp5WW1KeWNtSmpVMkZqYzJOamMyTmhjMk5qYzJOamMyTmpjMk5EY21KaWNtSmljbUppY21KaWNtTkNjbUpqVTBOalUySmpjMk5qYzJOamMyTmpjMkppY21KaWNtSnlZMEp5WW1KeVkyTnpZMk56WTJOelkyTnpJV0V4WVdGeFkyTnpZV056WTJOelkyTnpZMk56WTJOelkyTnpZbU5UWTJOVFFtTlRRMEp5WW1KeVltSnlZbUp5WW1KeVltSnlZbUp5WTBKeVltSnlZbUp5WW5CZ1lIQmdZSEJnWUhCZ1lIQmdZSEJnWUhCZ1lIQmhZWEZoWVhGaFlYRmpJWEZoWVhGaFlYRmdZWEZqWVhGaFlYRmhjV0ZoVTJGcGNCQndNQ0FRSUNCQUlHQndVRkJRTU1EQVVTSEEwUUR3NElCQUlJRHdnTEFRRUdCZ1FDQWdjQ0JRWUZBUVVEQndFREF3RUNCZ1lHQlFVS0FRSUNCZ01EQ3dNS0RBZ0JCZ0VFQndRQ0NBVUxDUVlGQmdJQ0F3SUVDQVFJQkFJR0JBSUVCd1FEQkFJQ0FnRUNDQUlFQWdJQkFnRURBUU1GQXdJTEJRUUlCQVFJQlFVUEJBTU5CUVFDQWdVS0NBY0dCUVVFQWdRRUJRd0dBd29EQndJSkNnVURDUmNMQXdZREJRZ0ZDQVFIRHdVTEVBZ09DQVVLQndrRUFRVUNBZ1lCQWdNR0JRRUNCUUVDQWdJSUFRY0RBZ29GQlFrRkFnY0RCd0VEQndJT0JBb0ZCZ01HQ0FjRUJ3UUVCd1VDQkFJS0JBVUdBUVVCQXdFR0FRSUNBZ0lHQWdJQkFRRURBZ0lFQXdzR0FnUUNBUVVDQkFjRUNnVUNCZ1lFQWdnS0FnRU9CUU1GQWdvTUNRTUpBd1VJZ0FVTkJBZ1RDd1VJQkFNSUF3VU9BZ0lGQkFzSEFnRUJBUUlDQVFNQ0FnSUVBZ01IQWdjR0F3a0hBd01DQWdrRUFRY0JCUWNGQWdjQ0F3Z1ZEQWdNRUFjRkNBUUhFZ1VDQWdNS0FnSUJCQUVDQVFFQ0VBWUNCUUlEQXdFREJBRUNCQU1JQVFJS0F3RUNBd0lOQkFNSEJRVUNhZ3NTQ0FVSkF3TUdBd3dRQlFFQ0FRRUZBZ1FDQVFNQ0NBRUJCQW9GQkFJQkFRUU1BUUlJQlFJRENRTUZCZ1VKQWdZREFnVVFBUUVHQXdjREFRSURBZ0lGQlFJSkF3UUZCZ01FQWdNRkF3Y0lCQVVDQWdVQ0F3VURDUUlDQ0FRQ0JRMEdCUklJQncwSER4NE1CeEVLQ1JNSUF3WURCeE1HQ1FrRkF3WURBd2NGQkFrSEJ3Y0ZDZ0VDQmd3RkJRWUJBZ2dEQkFZR0VBY0ZDQVVIQndNREFnUUVBd0VEQVFFQkFRWUNBUUVCQWdVSkJRTUhCQWNCQWdFSEF3WUNBZ1VFQ1FJREJnUUVCZ01LQlFJSkFnSUNBZ01JQkFFRUFnVURBZ0lEQWhFRkNBWUNBd1FEQ1FRQ0J3SUZDUU1DQlFJSkF3RUpBZ0VHQlFJQkN3RUdFd29JRHdnSER3Z0lEd2NGRFFnT0Znc0tDZ2dDQkFJQ0NRSUpDd1VKQkFRSUJnWUZBZ2NEQXdrR0JRUUhBd1FQQmdJRkF3VCtPUU1FQWdZQkFRRUJBZ0lGQWdRS0F3TVhCQk1XQ3dRR0JBc01BUUlLQkFJSEFnY1dDQVlQQXdVS0JBa0hBdzRIQlFJRkFna0JBUVlCQVFRSEF3RUJBUUlFQXdFQ0FnSUVBZ2NEQlEwRkF3a0ZEZ3NMQlFzRkN4a0xGU0lTQVFRQ0J3SUhBUUlDQkFFS0F3RUhBUUVDQlFJS0F3TUVCUUlIQUFBQUFRQUpBUmdCcFFGa0FGMEFBQUVXRkJVVUZnY0dJd1ltSnlJR0l5WW1KeVlHSXlJbUl5SUdJeVlqSmdZakl3WUdKeVlHSXlZR0J3WUdCeUltSXlJR0l3WW5KaVluSmlZM05qWXpGallYRmhZek1qWXpNaFl6TWpZek1oWTNOalkzTWpZM01qWXpOaFl6TmpZQm5BZ0JBZ1VJQndzRkJRc0dEQmNOQlFnRkF3Y0NBZ2dDQ3dFSENBTU5EUXdJRFF3SEVCUUtCZ3dHQkFnRUJBY0ZGeFVDQVFFQkF3SURCQVVMRncwTUZnMEZDUVVMRXdvRkNnWVNLQlFLRVFnSER3WUlFZ1lJQVFJS0RnRmtEUnNJQlFrREJBRUVBUUlCQkFFQkFnRUJBUUVEQVFFQkFRUUJBZ0VCQWdFQkFnSUNCZzBIQlJnRkFRVUVBd0VCQkFFQ0FRTUNBUUlCQVFFQ0FnSURBZ0FBQUFIL3BQNkdBTFVCN2dGWkFBQVRNZ1lWRmdZSEJoWUhCZ1lIQmhZVkJoWVZGQllYRkFZWEZoWVhGQVlYRmhRWEZoWVhGZ1lIQmhZVkJnWUhGQllIRkFZVkZnWVZCaFlIRkFZSEJnWUhCaFFIQmdZSEJoUUhCZ1lIQmdZSEJnWUhCaU1HQmdjR0JnY0dCaWNpSnlZbkppWW5KaWNtSmljbUppY21ORGMySWpVMk5qYzJKamMyTkRjMk56WTJOell5TnpZMk56SVdGeFl6RmlNV0Z4WVdGUllHQndZSEJnWUhCZ1luSmlZbkpqUW5KalkzRmdZWEZCY1dGaGN5TnpZMk56WTJKeVltSnlZbUp5WW1Cd1lHQndZR0ZRWVdGUlFHRnhZV0Z4WVhGaFlYTmpZM05qWTNOalkzTmpZM05qYzJOamMyTmpjMkpqYzJOamMySmpjMUpqWTNOQ1kzTkRZMU5DWTFOU2NtSmljbU5DY21OaWNtSmpVMkpqYzJOamMwSmpVMEppYzBOaWNtTmpVbUpqVTBOalUwSmpVME5qVTBOaWMwSmljbU5qVTBKelEySnlZbUp5WW1KeVlpSnlZR0p6UTJOelkwTXpZV056WVdNekkyTnpJeU56WXlOell5cHdVQ0FRY0NBZ0lCQVFJQkFRSUJBZ0lCQVFFQkF3RUJBUU1DQXdNQkFnRUNBUUVDQVFFQkFRSUJBUUVCQWdFQkFRTUJBUUVCQXdFQkFnWUNBZ01EQXdRREFRZ0RDZ3dGQ0E0TENDQU5Bd2dORGdnREFna0ZDUUVDQmdFQ0NBRURBZ0VDQVFFQkFRUUNCQVlIREFZREJ3UURCZ1FHRVFZRENBd0JDZ1FDQkFJQkFnWUJBd1FDQnhNS0NBTUZBZ01DQVFzSUJnRUhBZ1lEQ0FZQ0FnSUZCd0lCQ0FRRENnVUhEd2dJRFFVRUFnRUJBUUVCQXdJREJBY1NDQWdPQ0FZTkJRWUlCQU1HQWdnQ0FnRUNBUU1CQVFFQ0FRSUJBUUVCQVFVQkFRRUNBUUVCQWdJQ0FRTUJBUUlIQkFFQkFRTUJBUUlCQVFFREFRRURBd1FCQVFFREFRRURBZ0lDQVFNRkV4SUlCUXdIRHdvRkN3SUtBUUlJQXdzSUJBZ1FDUVFJQlFnVENBOFlBZTRLQkF3UENBWU1CZ1lMQmdrVkNBa0NBZ3NJQlFZS0JRZ09DQVVKQlJZZEVCWWhFQmczR2dVSEJCSVBDQWdQQndRR0JBTUhBeEV0RmdjTkJnVUlCUVlLQlFNR0F3TUhCQXdIQkFVQ0JBY0JBZ2dKQndRRkNnUURCUUlDQkFzRUF3SUdCd2dHQkFVR0F3MEhDUW9CQXdZREJBY0RCZ1VEQlFZSUNnTUNBUUVDQVFNQ0FnZ0ZDQUlHQXdjWUJnNERCUVVFQWhBQkFRZ0RBd2NCRGhnRkNBY0dCd29FQmdFSUFna0RCdzBKQmdrRUF3UUNBZ0lEQXhBSkNBRUNBd2tGQlFzRUF3Z0VCZ1lKRGdZQ0JRSUNBd1VEQlFJQ0JnSUdCQU1JQkFVSUJBa1VDd1VJQlFzVUNnNEdDZ2NFQndVRkJnTUZDd1lkRWcwYURBd0ZBZ1lKQXdjTUJRY0RBUU1FQXdNSEF3NElCUVVIQXdvRUFnUUlBd1VLQlFnUUNRVUhCUVVLQlFjTUJ3NFlDUVlLQ1JJTUNSRUlBZ1FFQWdJRkFRSUdBUVVCQWdJQ0FnTUNBZ0lCQVFFRy8vLy8xZi9LQXlNQzRBQW1BRDhBQUFBSEFFQUJJZ0FBLy8vLytmNkdBYXNDZndBbUFGOEFBQUFIQUdBQTlnQUFBQUgveHY5Z0FpZ0Nsd0hvQUFBVEZnWVhGaFlYQndZbUJ3Y0dKZ2NqRkJZVkZBWVZCaFlWTmpZM05qWTNOalkzTmpZM05qWTNGamMyTmpNeU5qY1dOak15RmpNeUZoY1dGaGNXRmhjV014Y1dGaGNXRkI4Q0ZoWVBBaFFHRlJZR0ZRWVVGUVlHQnhRR0ZSWUdGUlF4RmdZWEZBWUhCd1lXSHdRV0ZoY1dGak0yTmpjMk5pY21OaWNtSmljbUpnY0dCaFVHRmhjeU5oY1dCd1lHQndZbUp5WW1KeVltSnlZbUp6WTNGeFlXRnhZVUZ4WVdGeFFXRlJRR0Z3WWlGUVlHQndZR0J3WUdCeUltSnlZR0p5WW1CeVlpSnlZbUp5WW1KeVltSnlZbkppWW5OQ1luSmljbU5EVW5KalkxTmlZMU5EYzJOalUxSmpZM05DWTFKamMwSmpVME5qY21OVFEySnlZbUp5WW1KeWNtSmljbUlpY21KaU1tQmdjR0JnY0dCZ2NHQmdjR0JnY0dGZ2NVQmdjR0JoY1dGaGNXRmhjWEZCY1dId0lXRmdjVUppTWlCaWNpSmlNaUJnY0dCaU1HSmlNR05DTUdCaWMyTmpjMk56YzJOamMyTmpjMk5qYzJOamMySmpVME5pYzBKalUwTmpjM05DWTNOalkzSmlZbkpqUW5KeVkySnljR0JpTW1CaU1HSmlNR0ppTUdCd1lHQndZR0p5WTBKeVltTnpZV016WVdNekkyTnpJMk16SVdNelluSmlZMUppWW5KZ1luSmlZbkp5WW5KaVlqSmdZbkppWTNGallYTWhZekZqWVhGallYTWhZM01qWXpGall6RmpZWEZnWUhCaFlIQnhRR0ZSWTNNamJ4QkFFQ0FRVUJFUXdHQWc0TUdRd2FBZ0lCQVFVRkF3TUhBZ2dMQlFVS0JRVUpBd2NLQmdnSENnZ0ZCZzREQWdjRkJnNEhCZzBJQ3djRkJ3TUtBZ1FDQWdJSEF3SURBUVFGQWdFQkFRSUJBUUlCQXdJQkFRRUJBZ0VCQWdRQ0NoWUNCZ01DQ3dVSERRVUtEQUlFQVFFR0JRSUdEd2NEQXdJTENBY0pCZ01HQWdJQ0J4SUdCUVVDQWdFQ0FnTUJCUlFkRHhBRkFnSUNBZ0VDQWdFRUF3UUpCQUlFQXdVSUNnUUdCUVFIQkFRR0F3Y0VBUU1HQXdZRUFnTUZBZ3dFQWdVRUNRSUJCZ0lEQVFFQkFnTUJBUUVGQVFFREF3TUJBZ01CQWdFRkFnTUVBZ3dEQndRRkRBY1FCd1VQSVFzRUJ3UURCUVFERFFVRUNBUUdBUUVDQVFVQkFnRURBUUlEQWdNQkFRVURDd1VLQXdzRUJBWUZDQllMQnc4SENCTU1DQThJQ3dFSURnZ0pEd1lFQndzS0VRZ0lBd0lEQXdFREFnRUlCQUlCQVFNQkFRRUJBUU1CQVFJQkFnSURBZ01DQmdNR0F3VUdBd1FHQkFnQkFnOERDQkVLQndRREFnRUJCQUlFQ1FVUkRRY0hEZ1lDQmdNRUN3Z0NCUUlEQlFzRkJ3SUNCUVlHREFVT0F3Y0NCUWdGQWdRRUJnc0ZCQVlGQ0EwSUJnY0dDQllKQ2dZRENnY0ZEUTBGQVFVQ0FnRUJCQUlPQ2hrcEFrY0ZEZ1lHQ1FVSEFRRUJCQUVCQVFnVEN3b1VDd3NYREFFSkF3TUdCUVFMQlFJR0FnSURCUUVEQWdRRUFRRURBUUVCQWdZQ0J3TUJDQW9DQkFNRERnZ1lHd29UREJjb0N3SUNEQVlGQmcwSEZCb09Bd1VEQ1FrREN3SVBCUWdQQ1MwTEdBd01EQThTQVFNQ0FnUUJCd1FIRGhJTkJnSUhCd01GQmdVRkF3SUxFZ1FIQWdZR0F3VUNCUU1DQWdRRUF3WUVBZ2NESUE0REJnVUdBZ1lFQmdzSkF3WURCUTBJQ2dFSUJnTUNCUUlGQmdFQ0FRRUJBUUVDQVFJQkFRVUNBd0VDQWdZQ0JnWURDQUlIQ0FjSURRVUdCaDhMRkFzR0N3VWFIZ2NTQndzT0N3Y0ZEUWNSRWdRSEJBVUxCUlVPQ1E4SUNBOElEZ3NIQ0FJRUFRSUNCQUlCQWdVQ0JnTURCd0lMRHdrSEVBY05DUVVDQndRVUx4a0lEZ2dPSVE4UEN3UUlCdzhhQ0FjRkJRSUJBUU1DQWdJR0FRSUJBUUVDQXc0RUJBRUZCZ1VGQndjQ0FnWUJBZ2dDQWhBeUV3c1ZDUU1HQXdNSUJRMERCZ0lGQ1FVSEJnVUlEd292R2pNWktRRUNBUUlCQWdFQkF3RUNBd0lCQXdJRENnVUpFd2dFQXdRREFRRUNBZ3dPQXdVRUJBWURCd0VCQXdVQ0JRSUVBUUlDQVFJQ0N3SUNBZ0VFQWdJQ0FRRUJBd0lDQVFNQkFnVUxGQXNKQlFVUEJBVUNBd1VMLy8vLzBmL3RBVlVEbWdJbUFEOEFBQUFIQU9QL3dnRFEvLy8vdmYvNUFSd0N0UUltQU9FQUFBQUdBT091NndBQS8vOEFBUC9LQWdFRHNBSW1BRUFBQUFBSEFPSUFpZ0RWLy8vL3BQNkdBUDRDMGdJbUFPNEFBQUFHQU9LZjl3QUFBQUVBZ1A4b0FQLy8wUUEwQUFBWE5qWTNOalEzTmlZM0pnWWlKaWNtSmljbUpqYzJOamMyTmpjMkZ4WVhGaFlYRmhZSEJoUUhGQVlIQmdZSEJnWUhCZ1lqQnE0RURna0dBUVFDQVFjUkVBOEVCUVVEQndRQkJBVUVDUVFDQ2hjUUVBa01CUVFEQVFFQkF3RUNBd0lFRndzQ0J3TU93d2NGQWdjQ0FRY0tDQUVDQXdZQ0JBVU5FUWtLREFNREJBSUhBZ0VLQmd3S0NCTU9CUXNGQWdnRUJnZ0ZDZzhFQVFJQi8vLy8yLzhvQWo0Q3JRSW1BR0VBQUFBR0FQWW5BQUFBLy8vLzIvOVNBajRDclFJR0FHRUFBUC8vLzhmL0pRTFhBdDBDSmdCSUFBQUFCZ0QyWlEwQUFQLy8vK3ovTVFHN0FoQUNKZ0JvQUFBQUJnRDJGd2tBQVAvLy8vYi83Z0pTQXVBQ0pnQkNBQUFBQndET0FSRUFBUC8vLy9BQUN3RTVBcHNBSmdCaUFBQUFCd0RPQUxjQUFQLy8vNlQvM0FNRUE3TUNKZ0JFQUFBQUJ3Q2dBTE1BMGYvLy8vUC9ZQUpUQXVBQ0pnQmtBQUFBQmdDZ1p2NEFBUC8vLzhmL0pRTFhBOFVDSmdCSUFBQUFCd0NnQUlFQTQvLy8vOGYvSlFMWEE3b0NKZ0JJQUFBQUJ3RHJBSFlBMy8vLy8rd0FBUUc3QXRNQ0pnQm9BQUFBQmdEckh2Z0FBQUFBQUIwQllnQUJBQUFBQUFBQUFHb0FBQUFCQUFBQUFBQUJBQVlBYWdBQkFBQUFBQUFDQUFjQWNBQUJBQUFBQUFBREFDZ0Fkd0FCQUFBQUFBQUVBQVlBYWdBQkFBQUFBQUFGQUEwQW53QUJBQUFBQUFBR0FBNEFyQUFCQUFBQUFBQUhBRGdBdWdBQkFBQUFBQUFJQUI0QThnQUJBQUFBQUFBSkFBVUJFQUFCQUFBQUFBQUxBQ3dCRlFBQkFBQUFBQUFNQUJjQlFRQUJBQUFBQUFBTkFKQUJXQUFCQUFBQUFBQU9BQm9CNkFBQkFBQUFBQUFTQUFZQWFnQURBQUVFQ1FBQUFOUUNBZ0FEQUFFRUNRQUJBQXdDMWdBREFBRUVDUUFDQUE0QzRnQURBQUVFQ1FBREFGQUM4QUFEQUFFRUNRQUVBQXdDMWdBREFBRUVDUUFGQUJvRFFBQURBQUVFQ1FBR0FCd0RXZ0FEQUFFRUNRQUhBSEFEZGdBREFBRUVDUUFJQUR3RDVnQURBQUVFQ1FBSkFBb0VJZ0FEQUFFRUNRQUxBRmdFTEFBREFBRUVDUUFNQUM0RWhBQURBQUVFQ1FBTkFTQUVzZ0FEQUFFRUNRQU9BRFFGMGtOdmNIbHlhV2RvZENBb1l5a2dNakF4TWlCaWVTQkdiMjUwSUVScGJtVnlMQ0JKYm1NZ1JFSkJJRTVsWVhCdmJHbDBZVzRnS0dScGJtVnlRR1p2Ym5Sa2FXNWxjaTVqYjIwcElIZHBkR2dnVW1WelpYWmxaQ0JHYjI1MElFNWhiV1VnSWtkeWFXWm1lU0pIY21sbVpubFNaV2QxYkdGeVJtOXVkRVJwYm1WeUxFbHVZMFJDUVU1bFlYQnZiR2wwWVc0NklFZHlhV1ptZVRvZ01qQXhNbFpsY25OcGIyNGdNUzR3TURCSGNtbG1abmt0VW1WbmRXeGhja2R5YVdabWVTQnBjeUJoSUhSeVlXUmxiV0Z5YXlCdlppQkdiMjUwSUVScGJtVnlMQ0JKYm1NZ1JFSkJJRTVsWVhCdmJHbDBZVzR1Um05dWRDQkVhVzVsY2l3Z1NXNWpJRVJDUVNCT1pXRndiMnhwZEdGdVUzRjFhV1JvZEhSd09pOHZkM2QzTG1admJuUmljbTl6TG1OdmJTOW1iM1Z1WkhKcFpYTXZibVZoY0c5c2FYUmhibWgwZEhBNkx5OTNkM2N1YzNGMWFXUmhjblF1WTI5dFZHaHBjeUJHYjI1MElGTnZablIzWVhKbElHbHpJR3hwWTJWdWMyVmtJSFZ1WkdWeUlIUm9aU0JUU1V3Z1QzQmxiaUJHYjI1MElFeHBZMlZ1YzJVc0RWWmxjbk5wYjI0Z01TNHhMaUJVYUdseklHeHBZMlZ1YzJVZ2FYTWdZWFpoYVd4aFlteGxJSGRwZEdnZ1lTQkdRVkVnWVhRNkRXaDBkSEE2THk5elkzSnBjSFJ6TG5OcGJDNXZjbWN2VDBaTWFIUjBjRG92TDNOamNtbHdkSE11YzJsc0xtOXlaeTlQUmt3QVF3QnZBSEFBZVFCeUFHa0Fad0JvQUhRQUlBQW9BR01BS1FBZ0FESUFNQUF4QURJQUlBQmlBSGtBSUFCR0FHOEFiZ0IwQUNBQVJBQnBBRzRBWlFCeUFDd0FJQUJKQUc0QVl3QWdBRVFBUWdCQkFDQUFUZ0JsQUdFQWNBQnZBR3dBYVFCMEFHRUFiZ0FnQUNnQVpBQnBBRzRBWlFCeUFFQUFaZ0J2QUc0QWRBQmtBR2tBYmdCbEFISUFMZ0JqQUc4QWJRQXBBQ0FBZHdCcEFIUUFhQUFnQUZJQVpRQnpBR1VBZGdCbEFHUUFJQUJHQUc4QWJnQjBBQ0FBVGdCaEFHMEFaUUFnQUNJQVJ3QnlBR2tBWmdCbUFIa0FJZ0JIQUhJQWFRQm1BR1lBZVFCU0FHVUFad0IxQUd3QVlRQnlBRVlBYndCdUFIUUFSQUJwQUc0QVpRQnlBQ3dBU1FCdUFHTUFSQUJDQUVFQVRnQmxBR0VBY0FCdkFHd0FhUUIwQUdFQWJnQTZBQ0FBUndCeUFHa0FaZ0JtQUhrQU9nQWdBRElBTUFBeEFESUFWZ0JsQUhJQWN3QnBBRzhBYmdBZ0FERUFMZ0F3QURBQU1BQkhBSElBYVFCbUFHWUFlUUF0QUZJQVpRQm5BSFVBYkFCaEFISUFSd0J5QUdrQVpnQm1BSGtBSUFCcEFITUFJQUJoQUNBQWRBQnlBR0VBWkFCbEFHMEFZUUJ5QUdzQUlBQnZBR1lBSUFCR0FHOEFiZ0IwQUNBQVJBQnBBRzRBWlFCeUFDd0FJQUJKQUc0QVl3QWdBRVFBUWdCQkFDQUFUZ0JsQUdFQWNBQnZBR3dBYVFCMEFHRUFiZ0F1QUVZQWJ3QnVBSFFBSUFCRUFHa0FiZ0JsQUhJQUxBQWdBRWtBYmdCakFDQUFSQUJDQUVFQUlBQk9BR1VBWVFCd0FHOEFiQUJwQUhRQVlRQnVBRk1BY1FCMUFHa0FaQUJvQUhRQWRBQndBRG9BTHdBdkFIY0Fkd0IzQUM0QVpnQnZBRzRBZEFCaUFISUFid0J6QUM0QVl3QnZBRzBBTHdCbUFHOEFkUUJ1QUdRQWNnQnBBR1VBY3dBdkFHNEFaUUJoQUhBQWJ3QnNBR2tBZEFCaEFHNEFhQUIwQUhRQWNBQTZBQzhBTHdCM0FIY0Fkd0F1QUhNQWNRQjFBR2tBWkFCaEFISUFkQUF1QUdNQWJ3QnRBRlFBYUFCcEFITUFJQUJHQUc4QWJnQjBBQ0FBVXdCdkFHWUFkQUIzQUdFQWNnQmxBQ0FBYVFCekFDQUFiQUJwQUdNQVpRQnVBSE1BWlFCa0FDQUFkUUJ1QUdRQVpRQnlBQ0FBZEFCb0FHVUFJQUJUQUVrQVRBQWdBRThBY0FCbEFHNEFJQUJHQUc4QWJnQjBBQ0FBVEFCcEFHTUFaUUJ1QUhNQVpRQXNBQTBBVmdCbEFISUFjd0JwQUc4QWJnQWdBREVBTGdBeEFDNEFJQUJVQUdnQWFRQnpBQ0FBYkFCcEFHTUFaUUJ1QUhNQVpRQWdBR2tBY3dBZ0FHRUFkZ0JoQUdrQWJBQmhBR0lBYkFCbEFDQUFkd0JwQUhRQWFBQWdBR0VBSUFCR0FFRUFVUUFnQUdFQWRBQTZBQTBBYUFCMEFIUUFjQUE2QUM4QUx3QnpBR01BY2dCcEFIQUFkQUJ6QUM0QWN3QnBBR3dBTGdCdkFISUFad0F2QUU4QVJnQk1BR2dBZEFCMEFIQUFPZ0F2QUM4QWN3QmpBSElBYVFCd0FIUUFjd0F1QUhNQWFRQnNBQzRBYndCeUFHY0FMd0JQQUVZQVRBQUNBQUFBQUFBQS83TUFNd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFJQUFBRHBBT29BNGdEakFPUUE1UURyQU93QTdRRHVBT1lBNXdEMEFQVUE4UUQyQVBNQThnRG9BTzhBOEFBREFBUUFCUUFHQUFjQUNBQUpBQW9BQ3dBTUFBMEFEZ0FQQUJBQUVRQVNBQk1BRkFBVkFCWUFGd0FZQUJrQUdnQWJBQndBSFFBZUFCOEFJQUFoQUNJQUl3QWtBQ1VBSmdBbkFDZ0FLUUFxQUNzQUxBQXRBQzRBTHdBd0FERUFNZ0F6QURRQU5RQTJBRGNBT0FBNUFEb0FPd0E4QUQwQVBnQS9BRUFBUVFCQ0FFTUFSQUJGQUVZQVJ3QklBRWtBU2dCTEFFd0FUUUJPQUU4QVVBQlJBRklBVXdCVUFGVUFWZ0JYQUZnQVdRQmFBRnNBWEFCZEFGNEFYd0JnQUdFQVlnQmpBR1FBWlFCbUFHY0FhQUJwQUdvQWF3QnNBRzBBYmdCdkFIQUFjUUJ5QUhNQWRBQjFBSFlBZHdCNEFIa0FlZ0I3QUh3QWZRQitBSDhBZ0FDQkFJSUFnd0NFQUlVQWhnQ0hBSWdBaVFDS0FJc0FqQUNOQUk0QWp3Q1FBSkVBa3dDVUFKVUFsZ0NYQUpnQW5RQ2VBS0FBb1FDaUFLTUFwQUNtQUtjQXFRQ3FBS3NCQWdDdEFLNEFyd0N3QUxFQXNnQ3pBTFFBdFFDMkFMY0F1QUM1QUxvQXV3QzhBUU1BdmdDL0FNQUF3UURDQVFRQXhBREZBTVlBeHdESUFNa0F5Z0RMQU13QXpRRE9BTThBMEFEUkFOTUExQURWQU5ZQTF3RFlBTmtCQlFEYkFOd0EzUURlQU44QTRBRGhBTDBCQmdFSEFRZ0JDUUVLQVFzQkRBRU5BUTRCRHdFUUFSRUJFZ0VUQVJRQkZRRVdBUmNCR0FFWkFSb0hkVzVwTURCQk1BUkZkWEp2RG5CbGNtbHZaR05sYm5SbGNtVmtCbTFoWTNKdmJnbHpablJvZVhCb1pXNElaRzkwYkdWemMyb0NTVW9DYVdvRWFHSmhjZ1pKZEdsc1pHVUdhWFJwYkdSbEMwcGphWEpqZFcxbWJHVjRDMnBqYVhKamRXMW1iR1Y0QzJOdmJXMWhZV05qWlc1MERHdGpiMjF0WVdGalkyVnVkQXhyWjNKbFpXNXNZVzVrYVdNTVVtTnZiVzFoWVdOalpXNTBESEpqYjIxdFlXRmpZMlZ1ZEFSTVpHOTBDbXhrYjNSaFkyTmxiblFHVG1GamRYUmxCbTVoWTNWMFpRWlNZV04xZEdVR1VtTmhjbTl1Qm5KallYSnZiZ0FCQUFILy93QVAifSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz0iQUFFQUFBQUxBSUFBQXdBd1QxTXZNa0k1YUlvQUFBRTRBQUFBVm1OdFlYQ3lRa0NrQUFBRTlBQUFCRVpuWVhOdy8vOEFBd0FBVmxRQUFBQUlaMng1Wmd5dFRUQUFBQXJ3QUFCRWFHaGxZV1FDaTJsREFBQUF2QUFBQURab2FHVmhFd0lIMmdBQUFQUUFBQUFrYUcxMGVFOEFBZ0FBQUFHUUFBQURaR3h2WTJIWnZ1ckVBQUFKUEFBQUFiUnRZWGh3QU9rQVBBQUFBUmdBQUFBZ2JtRnRaWHF6R01VQUFFOVlBQUFFeFhCdmMzUXJXMzJMQUFCVUlBQUFBak1BQVFBQUFBRUFBSEZjOWYxZkR6ejFBQXNJQUFBQUFBRE50b3ZpQUFBQUFNMjJqMllBQVA0QUNBQUxBQUFBQUFZQUFRQUFBQUFBQUFBQkFBQUtBUDRBQVFBSkFBQUFBQUFJQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBMlFBQkFBQUEyUUE4QUE4QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVFT3dHUUFBVUFDQVdhQlRNQUFBRWJCWm9GTXdBQUE5RUFaZ0lTQUFBQ0FRVUJBUUVCQVFFQmdBQUFEd0FBQUFvQUFBQUFBQUFBQUVoTUlDQUFRQUFnSVNJSEFQOEFBTTBLQUFJQUlBQUJFVUFBQUFBQUFBWUFBQUFDQUFBQUFnQUFBQVFBQUFBSEFBQUFCZ0FBQUFnQUFBQUdBQUFBQWdBQUFBUUFBQUFFQUFBQUJnQUFBQVlBQUFBQ0FBQUFCUUFBQUFJQUFBQUVBQUFBQmdBQUFBTUFBQUFHQUFBQUJRQUFBQVlBQUFBR0FBQUFCZ0FBQUFZQUFBQUdBQUFBQmdBQUFBSUFBQUFDQUFBQUJRQUFBQVVBQUFBRkFBQUFCUUFBQUFnQUFBQUdBQUFBQmdBQUFBVUFBQUFHQUFBQUJRQUFBQVVBQUFBR0FBQUFCZ0FBQUFJQUFBQUdBQUFBQmdBQUFBWUFBQUFHQUFBQUJnQUFBQVlBQUFBR0FBQUFCd0FBQUFZQUFBQUdBQUFBQmdBQUFBWUFBQUFHQUFBQUJnQUFBQVlBQUFBR0FBQUFCZ0FBQUFRQUFBQUVBQUFBQkFBQUFBWUFBQUFFQUFBQUF3QUFBQVVBQUFBRkFBQUFCQUFBQUFVQUFBQUZBQUFBQlFBQUFBVUFBQUFGQUFBQUFnQUFBQVFBQUFBRkFBQUFBZ0FBQUFZQUFBQUZBQUFBQlFBQUFBVUFBQUFGQUFBQUJRQUFBQVVBQUFBRkFBQUFCUUFBQUFZQUFBQUdBQUFBQmdBQUFBVUFBQUFHQUFBQUJRQUFBQUlBQUFBRkFBQUFCd0FBQUFJQUFBQUNBQUFBQlFBQUFBWUFBQUFHQUFBQUFnQUFBQVFBQUFBSkFBQUFCd0FBQUFVQUFBQUpBQUFBQkFBQUFBWUFBQUFEQUFBQUJRQUFBQVlBQUFBQ0FBQUFBd0FBQUFjQUFBQUZBQUFBQmdBQUFBWUFBQUFHQUFBQUJnQUFBQVlBQUFBR0FBQUFCd0FBQUFVQUFBQUZBQUFBQlFBQUFBVUFBQUFGQUFBQUF3QUJBQU1BQUFBREFBQUFBd0FBQUFjQUFBQUdBQUFBQmdBQUFBWUFBQUFHQUFBQUJ3QUFBQVlBQUFBR0FBQUFCZ0FBQUFZQUFBQUdBQUFBQmdBQUFBWUFBQUFHQUFBQUJnQUFBQVlBQUFBRkFBQUFCUUFBQUFVQUFBQUZBQUFBQlFBQUFBVUFBQUFHQUFBQUJBQUFBQVVBQUFBRkFBQUFCUUFBQUFVQUFBQURBQUFBQXdBQkFBTUFBQUFEQUFBQUJRQUFBQVVBQUFBRkFBQUFCUUFBQUFVQUFBQUZBQUFBQlFBQUFBWUFBQUFGQUFBQUJRQUFBQVVBQUFBRkFBQUFCUUFBQUFVQUFBQUZBQUFBQlFBQUFBVUFBQUFFQUFBQUJnQUFBQWNBQUFBRkFBQUFCUUFBQUFJQUFBQUdBQUFBQlFBQUFBY0FBQUFHQUFBQUJnQUFBQVVBQUFBR0FBQUFCUUFBQUFZQUFBQUhBQUFBQmdBQUFBVUFBQUFHQUFBQUJnQUFBQVlBQUFBR0FBQUFCZ0FBQUFJQUFBQUNBQUFBQWdBQUFBUUFBQUFFQUFBQUJBQUFBQVlBQUFBQ0FBQUFCZ0FBQUFRQUFBQUVBQUFBQmdBQUFBa0FBQUFBQUFBREFBQUFBd0FBQUJ3QUFRQUFBQUFCTkFBREFBRUFBQU0yQUFRQkdBQUFBRUlBUUFBRkFBSUFmZ0NqQUtZQXFRQ3NBSzRBc1FDNEFMc0Evd0VQQVJzQk1RRklBVk1CV1FGaEFXVUJid0Y0QVg0QmtnTitJQlFnR2lBZUlDQWdJaUFtSURvZ3JDRWkvLzhBQUFBZ0FLQUFwUUNvQUtzQXJnQ3dBTFFBdXdDL0FRd0JHZ0V4QVVjQlVnRllBV0FCWkFGdUFYZ0JmUUdTQTM0Z0ZDQVlJQndnSUNBaUlDWWdPU0NzSVNMLy8vL2gvOEQvdi8rKy83My92UCs3LzduL3QvKzAvNmovbnYrSi8zVC9hLzluLzJIL1gvOVgvMC8vUy84NC9KN2d0K0MwNExQZ3N1Q3g0Szdnbk9BcjM3WUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBR0FnSUFBQUFCQVB3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBSUFBd0FFQUFVQUJnQUhBQWdBQ1FBS0FBc0FEQUFOQUE0QUR3QVFBQkVBRWdBVEFCUUFGUUFXQUJjQUdBQVpBQm9BR3dBY0FCMEFIZ0FmQUNBQUlRQWlBQ01BSkFBbEFDWUFKd0FvQUNrQUtnQXJBQ3dBTFFBdUFDOEFNQUF4QURJQU13QTBBRFVBTmdBM0FEZ0FPUUE2QURzQVBBQTlBRDRBUHdCQUFFRUFRZ0JEQUVRQVJRQkdBRWNBU0FCSkFFb0FTd0JNQUUwQVRnQlBBRkFBVVFCU0FGTUFWQUJWQUZZQVZ3QllBRmtBV2dCYkFGd0FYUUJlQUY4QUFBQjRBSGtBZXdCOUFJVUFpZ0NRQUpVQWxBQ1dBSmdBbHdDWkFKc0FuUUNjQUo0QW53Q2hBS0FBb2dDakFLVUFwd0NtQUtnQXFnQ3BBSzRBclFDdkFMQUEwZ0JyQUdJQVl3QUFBTk1BYndDVEFHb0Fad0RZQUcwQVpnQUFBSG9BakFBQUFHd0FBQUFBQUdRQWJnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQW1nQ3NBSE1BWVFCcEFBQUF5Z0FBQUFBQWFBQnlBTlFBWUFCMEFIY0FpUUM5QUw0QUFBRExBTThBMEFETUFNMEFxd0FBQUxNQXh3QUFBQUFBMVFEV0FBQUFBQUFBQUhBQXpnRFJBQUFBZGdCK0FIVUFmd0I4QUlFQWdnQ0RBSUFBaHdDSUFBQUFoZ0NPQUk4QWpRQzZBQUFBQUFBQUFBQUFBQUFBQUhFQUJBRVFBQUFBUUFCQUFBVUFBQUIrQUtNQXBnQ3BBS3dBcmdDeEFMZ0F1d0QvQVE4Qkd3RXhBVWdCVXdGWkFXRUJaUUZ2QVhnQmZnR1NJQlFnR2lBZUlDQWdJaUFtSURvZ3JDRWkvLzhBQUFBZ0FLQUFwUUNvQUtzQXJnQ3dBTFFBdXdDL0FRd0JHZ0V4QVVjQlVnRllBV0FCWkFGdUFYZ0JmUUdTSUJRZ0dDQWNJQ0FnSWlBbUlEa2dyQ0VpLy8vLzRmL0EvNy8vdnYrOS83ei91Lys1LzdmL3RQK28vNTcvaWY5MC8ydi9aLzloLzEvL1YvOVAvMHYvT09DMzRMVGdzK0N5NExIZ3J1Q2M0Q3ZmdGdBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRmdBV0FDb0FQZ0I0QUxvQkxnRmdBVzRCaWdHbUFkNEIrQUlHQWhRQ0lBSTZBbklDZ2dLb0F0SUMvQU1lQTBZRFpBT2dBOHdENEFQMkJEQUVSZ1IrQktnRTVnVUdCVEFGVEFWb0JZQUZsZ1c0QmRBRjNBWHdCaklHUWdac0JwWUd1Z2JhQndnSExnZFlCMndIaUFlMEI5NElKZ2hJQ0hZSWlBaW1DTGdJNUFqeUNRZ0pMZ2xPQ1dvSmlBbXVDYzRKOUFvT0NpSUtQZ3B3Q253S3BBcThDdUFMQUFzZUN6Z0xZZ3VFQzV3THlBdnlERG9NWGd5R0RMQU12QXptRFFvTkNnMGVEVXdOY2cydURjSU4xZzR5RG9RT2xnNzZEeUFQUUE5VUQzQVBqZytjRDdBUUFCQXFFRm9RaUJDK0VQd1JLaEZtRVk0UnVCSGdFZ2dTT0JKZ0Vud1NtaEsrRXRvVEFoTktFMzRUc2hQdUZEQVVaQlN1Rk9ZVkVoVStGWElWbmhYUUZmSVdKaFpjRnBBV3pCY1FGMFFYaUJmQUYrWVlIQmhRR0l3WXdCamVHUG9aSGhrNkdXUVptaG5PR2dJYVBocUFHclFhMGhyK0d5WWJUQnQ2RzZBYjBodjBIQ1ljV2h5T0hNSWM2QjBZSFZRZFlCMmdIYzRkOUI0d0htNGVvQjdnSHlBZlNoOTBIN0FmNWlBWUlGNGduQ0RDSU5BZzNpRHNJUG9oRGlFaUlUWWhVQ0ZlSVhnaHBDSE9JZ0lpTkFBQ0FBQUFBQVVBQndBQUF3QUhBQUFCRVNFUkFSRWhFUVVBK3dBQkFBTUFCd0Q1QUFjQS92LzdBUVVBQUFJQUFBQUFBUUFIQUFBREFBY0FBREVSSVJFQkVTRVJBUUQvQUFFQUFRRC9BQUlBQlFEN0FBQUNBQUFGQUFNQUJ3QUFBd0FIQUFBWkFTRVJJUkVoRVFFQUFRQUJBQVVBQWdEK0FBSUEvZ0FBQWdBQUFBQUdBQWNBQUFNQUh3QUFBUkVoRVFFUklSRWhFU0VSSVJFaEVTRVJJUkVoRVNFUklSRWhFU0VSSVJFRUFQNEEvd0QvQUFFQS93QUJBQUVBQWdBQkFBRUEvd0FCQVA4QS93RCtBQUlBQXdEOUFQNEFBUUFCQUFNQUFRQUJBUDhBQVFEL0FQOEEvUUQvQVA4QUFRRC9BQUFEQUFBQUFBVUFCd0FBQXdBSEFDTUFBQUVSSVJFQkVTRVJBUkVoRVNFUklSRWhFU0VSSVJFaEVTRVJJUkVoRVNFUklSRWhFUVFBQVFEN0FBRUFBUUQrQUFJQS93QUJBUDhBQVFBQkFBSUEvZ0FCQVA4QUFRRC9BQUlBQVFEL0FBSUFBUUQvQVB3QUFRQUJBQUVBQVFBQkFBRUFBUUQvQVA4QS93RC9BUDhBL3dEL0FBQVBBQUFBQUFjQUJ3QUFBd0FIQUFzQUR3QVRBQmNBR3dBZkFDTUFKd0FyQUM4QU13QTNBRHNBQURFUklSRWhFU0VSQVJFaEdRSWhFUUVSSVJFaEVTRVJBUkVoRVNFUklSRWhFU0VSQVJFaEVTRVJJUkVoRVNFUkFSRWhFUUVSSVJFaEVTRVJBUUFFQUFFQSt3QUJBQUVBQVFBQkFBRUFBUUQ2QUFFQUFRQUJBQUVBQVFEK0FBRUErd0FCQUFFQUFRQUNBQUVBK3dBQkFBUUFBUUFCQVA4QUFRRC9BQUVBQVFEL0FBRUFBUUQvQVA4QUFnRCtBQUlBL2dBQ0FBRUEvd0FCQVA4QUFRRC9BQUVBQVFEL0FBSUEvZ0FDQVA0QUFRQUJBUDhBQVFBQkFQOEFBUUQvQUFBQUJRQUFBQUFGQUFjQUFBTUFCd0FQQUJNQUZ3QUFJUkVoRVFFUklSRWhFU0VSSVJFaEVRRVJJUmtDSVJFQkFBTUEvQUFCQUFNQS9RQURBQUVBK3dBQkFBTUFBUUQvQUFFQUFnRCtBQUlBQVFBQkFQd0FBd0FDQVA0QUFnQUJBUDhBQUFBQUFBRUFBQVVBQVFBSEFBQURBQUFaQVNFUkFRQUZBQUlBL2dBQUFBQURBQUFBQUFNQUJ3QUFBd0FIQUFzQUFDRVJJUkVCRVNFWkFpRVJBUUFDQVAwQUFRQUNBQUVBL3dBQkFBVUErd0FGQUFFQS93QUFBQU1BQUFBQUF3QUhBQUFEQUFjQUN3QUFNUkVoR1FJaEVRRVJJUkVDQUFFQS9RQUNBQUVBL3dBQkFBVUErd0FGQUFFQS93QUFBQUFBQlFBQUFnQUZBQWNBQUFNQUJ3QUxBQThBR3dBQUdRRWhFU0VSSVJFQkVTRVJJUkVoRVFFUklSRWhFU0VSSVJFaEVRRUFBd0FCQVBzQUFRQURBQUVBL1FEL0FBRUFBUUFCQVA4QUF3QUJBUDhBQVFEL0FBSUFBUUQvQUFFQS93RDlBQUlBQVFBQ0FQNEEvd0QrQUFBQUFBRUFBQUVBQlFBR0FBQUxBQUFCRVNFUklSRWhFU0VSSVJFQ0FQNEFBZ0FCQUFJQS9nQUJBQUlBQVFBQ0FQNEEvd0QrQUFBQkFBRC9BQUVBQVFBQUF3QUFHUUVoRVFFQS93QUNBUDRBQUFBQUFRQUFBd0FFQUFRQUFBTUFBQmtCSVJFRUFBTUFBUUQvQUFBQUFBRUFBQUFBQVFBQkFBQURBQUF4RVNFUkFRQUJBUDhBQUFNQUFBQUFBd0FIQUFBREFBY0FDd0FBTVJFaEdRSWhHUUloRVFFQUFRQUJBQUlBL2dBQ0FBTUEvUUFEQUFJQS9nQUFBQUFGQUFBQUFBVUFCd0FBQXdBSEFBOEFGd0FiQUFBaEVTRVJBUkVoRVFFUklSRWhFU0VSSVJFaEVTRVJJUkVCRVNFUkFRQURBUDRBQVFEOUFBRUFBUUQvQUFNQS93QUJBQUVBL0FBREFBRUEvd0FEQUFFQS93RCtBQVVBL1FEL0FQOEFBd0FCQUFFQSt3QUZBQUVBL3dBQUFRQUFBQUFDQUFjQUFBVUFBQ0VSSVJFaEVRRUEvd0FDQUFZQUFRRDVBQUFFQUFBQUFBVUFCd0FBQlFBSkFBMEFFUUFBTVJFaEVTRVJBUkVoR1FJaEVRRVJJUkVCQUFRQS9BQURBQUVBK3dBRUFBTUEvZ0QvQUFNQUFRRC9BQUVBQWdEK0FBSUFBUUQvQUFBQUJRQUFBQUFFQUFjQUFBTUFCd0FMQUE4QUV3QUFNUkVoR1FJaEVRRVJJUmtDSVJFQkVTRVJBd0FCQVB3QUF3QUJBUHdBQXdBQkFQOEFBUUFDQVA0QUFnQUJBUDhBQVFBQ0FQNEFBZ0FCQVA4QUFBQUFBd0FBQUFBRkFBY0FBQU1BQndBVEFBQUJFU0VaQWlFUkFSRWhFU0VSSVJFaEVTRVJBUUFCQUFFQUFRRDhBQUVBQXdEL0FBSUFCQUFCQVA4QUFRQUJBUDhBK3dBQ0FBSUEvd0FEQUFFQStRQUFBQUFBQXdBQUFBQUZBQWNBQUFNQUJ3QVBBQUF4RVNFWkFpRVJBUkVoRVNFUklSRUVBQUVBK3dBRkFQd0FBd0FCQVA4QUFRQUNBUDRBQWdBRUFQOEEvZ0QvQUFBQUFBQUVBQUFBQUFVQUJ3QUFBd0FIQUE4QUV3QUFJUkVoR1FJaEVTRVJJUkVoRVNFWkFpRVJBUUFEQUFFQSt3QUJBQU1BL1FBREFBRUEvd0FCQUFJQS9nQUZBUDRBL3dEK0FBVUFBUUQvQUFBQUFBTUFBQUFBQlFBSEFBQURBQWNBRFFBQUlSRWhHUUloR1FJaEVTRVJBZ0FCQUFFQS9BQUZBQU1BL1FBREFBSUEvZ0FDQUFFQUFRRCtBQUFBQUFjQUFBQUFCUUFIQUFBREFBY0FDd0FQQUJNQUZ3QWJBQUFoRVNFUkFSRWhFU0VSSVJFQkVTRVJBUkVoRVNFUklSRUJFU0VSQVFBREFQd0FBUUFEQUFFQS9BQURBUHdBQVFBREFBRUEvQUFEQUFFQS93QUJBQUlBL2dBQ0FQNEFBZ0FCQVA4QUFRQUNBUDRBQWdEK0FBSUFBUUQvQUFBQUFBUUFBQUFBQlFBSEFBQURBQWNBRHdBVEFBQWhFU0VSQVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVBQXdEOEFBRUFBd0Q5QUFNQUFRRDhBQU1BQVFEL0FBUUFBZ0QrQVAwQUFnQUJBQUlBK3dBRkFBRUEvd0FBQUFBQ0FBQUFBQUVBQlFBQUF3QUhBQUF4RVNFUkFSRWhFUUVBL3dBQkFBRUEvd0FFQUFFQS93QUFBZ0FBL3dBQkFBVUFBQU1BQndBQUdRRWhFUUVSSVJFQkFQOEFBUUQvQUFJQS9nQUZBQUVBL3dBQUFBQUhBQUFBQUFRQUJ3QUFBd0FIQUFzQUR3QVRBQmNBR3dBQUlSRWhFUUVSSVJFQkVTRVJBUkVoR1FJaEdRSWhHUUloRVFNQUFRRCtBQUVBL2dBQkFQNEFBUUFCQUFFQUFRQUJBUDhBQVFBQkFQOEFBUUFCQVA4QUFRQUJBUDhBQVFBQkFQOEFBUUFCQVA4QUFRQUJBUDhBQUFBQUFBSUFBQUlBQkFBRkFBQURBQWNBQUJrQklSRUJFU0VSQkFEOEFBUUFBZ0FCQVA4QUFnQUJBUDhBQUFBQUJ3QUFBQUFFQUFjQUFBTUFCd0FMQUE4QUV3QVhBQnNBQURFUklSa0NJUmtDSVJrQ0lSRUJFU0VSQVJFaEVRRVJJUkVCQUFFQUFRQUJBUDRBQVFEK0FBRUEvZ0FCQUFFQS93QUJBQUVBL3dBQkFBRUEvd0FCQUFFQS93QUJBQUVBL3dBQkFBRUEvd0FCQUFFQS93QUFBQVVBQUFBQUJBQUhBQUFEQUFjQUN3QVBBQk1BQUNFUklSRUJFU0VaQWlFWkFpRVJBUkVoRVFFQUFRRC9BQUVBQVFBQkFQd0FBd0FCQVA4QUFnQUJBUDhBQVFBQkFQOEFBUUFDQVA0QUFnQUJBUDhBQUFZQUFQOEFCd0FIQUFBREFBY0FFUUFWQUJrQUhRQUFBUkVoRVFFUklSa0NJUkVoRVNFUklSRUJFU0VSQVJFaEVRRVJJUkVCQUFVQS9BQUJBQUVBL3dBQ0FBRUErZ0FCQUFVQUFRRDZBQVVBL3dBQkFQOEFBd0FDQVA0QS93QUJBQUlBQVFEOUFQOEEvd0FHQVBvQUFnQUVBUHdBQkFBQkFQOEFBQUFDQUFBQUFBVUFCd0FBQ3dBUEFBQXhFU0VSSVJFaEVTRVJJUmtDSVJFQkFBTUFBUUQvQVAwQUF3QUdBUDBBQXdENkFBSUEvZ0FHQUFFQS93QUFBQUFBQXdBQUFBQUZBQWNBQUFNQUJ3QVRBQUFCRVNFUkFSRWhFUUVSSVJFaEVTRVJJUkVoRVFRQUFRRC9BQUVBK3dBRUFQMEFBd0Q5QUFNQUFRQUNBUDRBQXdBQ0FQNEEvQUFIQVA4QS9nRC9BUDRBL3dBQUF3QUFBQUFFQUFjQUFBTUFCd0FMQUFBaEVTRVJBUkVoR1FJaEVRRUFBd0Q4QUFFQUF3QUJBUDhBQVFBRkFQc0FCUUFCQVA4QUFBQUNBQUFBQUFVQUJ3QUFBd0FMQUFBQkVTRVJBUkVoRVNFUklSRUVBQUVBK3dBRUFQMEFBd0FCQUFVQSt3RC9BQWNBL3dEN0FQOEFBQUVBQUFBQUJBQUhBQUFMQUFBeEVTRVJJUkVoRVNFUklSRUVBUDBBQXdEOUFBTUFCd0QvQVA0QS93RCtBUDhBQUFFQUFBQUFCQUFIQUFBSkFBQXhFU0VSSVJFaEVTRVJCQUQ5QUFNQS9RQUhBUDhBL2dEL0FQMEFBQUFBQXdBQUFBQUZBQWNBQUFjQUN3QVBBQUFoRVNFUklSRWhFUUVSSVJrQ0lSRUJBQU1BL3dBQ0FQc0FBUUFFQUFFQUFnQUJBUHdBQVFBRkFQc0FCUUFCQVA4QUFBQUJBQUFBQUFVQUJ3QUFDd0FBTVJFaEVTRVJJUkVoRVNFUkFRQURBQUVBL3dEOUFBY0EvUUFEQVBrQUF3RDlBQUFCQUFBQUFBRUFCd0FBQXdBQU1SRWhFUUVBQndENUFBQUNBQUFBQUFVQUJ3QUFBd0FIQUFBeEVTRVpBaUVSQkFBQkFBRUEvd0FCQUFZQStnQUFBQUFBQndBQUFBQUZBQWNBQUFNQUJ3QUxBQThBRXdBYkFCOEFBQ0VSSVJFQkVTRVJBUkVoRVFFUklSa0NJUkVCRVNFUklSRWhFUUVSSVJFRUFBRUEvZ0FCQVA0QUFRRC9BQUVBQVFEOEFBRUFBUUQvQUFNQUFRQUJBUDhBQVFBQkFQOEFBUUFCQVA4QUFnQUJBUDhBQVFBQkFQOEErd0FIQVAwQS93RDlBQVlBQVFEL0FBQUFBUUFBQUFBRkFBY0FBQVVBQURFUklSRWhFUUVBQkFBSEFQb0Evd0FBQUFBREFBQUFBQVVBQndBQUF3QUxBQk1BQUFFUklSRUJFU0VSSVJFaEVTRVJJUkVoRVNFUkFnQUJBUDBBQVFBQkFQOEFBd0QvQUFFQUFRQUVBQUVBL3dEOEFBY0Evd0QvQVBzQUJRQUJBQUVBK1FBQUFBQURBQUFBQUFVQUJ3QUFBd0FMQUJNQUFBRVJJUkVCRVNFUklSRWhFU0VSSVJFaEVTRVJBZ0FCQVAwQUFRQUJBUDhBQXdEL0FBRUFBUUFFQUFFQS93RDhBQWNBL3dEL0FQc0FBd0FCQUFNQStRQUFBQUFFQUFBQUFBVUFCd0FBQXdBSEFBc0FEd0FBSVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVBQXdEOEFBRUFBd0FCQVB3QUF3QUJBUDhBQVFBRkFQc0FCUUQ3QUFVQUFRRC9BQUFDQUFBQUFBVUFCd0FBQXdBTkFBQUJFU0VSQVJFaEVTRVJJUkVoRVFRQUFRRDdBQVFBL1FBREFQMEFBd0FEQVAwQS9RQUhBUDhBL1FEL0FQNEFBQUFBQlFBQS93QUdBQWNBQUFNQUJ3QUxBQThBRXdBQUFSRWhFUUVSSVJFQkVTRVJJUkVoRVFFUklSRUVBQUlBK3dBREFQd0FBUUFEQUFFQS9BQURBUDhBQVFEL0FBRUFBUUQvQUFFQUJRRDdBQVVBK3dBRkFBRUEvd0FBQUFBREFBQUFBQVVBQndBQUF3QUhBQkVBQUNFUklSRUJFU0VSQVJFaEVTRVJJUkVoRVFRQUFRRC9BQUVBK3dBRUFQMEFBd0Q5QUFJQS9nQURBQU1BL1FEOUFBY0Evd0Q5QVA4QS9nQUFCUUFBQUFBRkFBY0FBQU1BQndBTEFBOEFFd0FBTVJFaEdRSWhFUUVSSVJFQkVTRVpBaUVSQkFBQkFQd0FBd0Q4QUFFQUJBQUJBUDhBQVFBQ0FQNEFBZ0FCQVA4QUFRQUNBUDRBQWdBQkFQOEFBQUFBQVFBQUFBQUZBQWNBQUFjQUFDRVJJUkVoRVNFUkFnRCtBQVVBL2dBR0FBRUEvd0Q2QUFBQUFBTUFBQUFBQlFBSEFBQURBQWNBQ3dBQUlSRWhFUUVSSVJFaEVTRVJBUUFEQVB3QUFRQURBQUVBQVFEL0FBRUFCZ0Q2QUFZQStnQUFCUUFBQUFBRkFBY0FBQU1BQndBTEFBOEFFd0FBSVJFaEVRRVJJUkVoRVNFUkFSRWhFU0VSSVJFQ0FBRUEvZ0FCQUFFQUFRRDhBQUVBQXdBQkFBRUEvd0FCQUFFQS93QUJBUDhBQVFBRkFQc0FCUUQ3QUFBQUFBTUFBQUFBQlFBSEFBQURBQXNBRXdBQUFSRWhFUUVSSVJFaEVTRVJJUkVoRVNFUklSRUNBQUVBL1FBQkFBRUEvd0FEQVA4QUFRQUJBQUlBQVFEL0FQNEFCd0Q3QVA4QS93QUJBQUVBQlFENUFBQUFBQWtBQUFBQUJRQUhBQUFEQUFjQUN3QVBBQk1BRndBYkFCOEFJd0FBTVJFaEVTRVJJUkVCRVNFUklSRWhFUUVSSVJFQkVTRVJJUkVoRVFFUklSRWhFU0VSQVFBREFBRUEvQUFCQUFFQUFRRCtBQUVBL2dBQkFBRUFBUUQ4QUFFQUF3QUJBQUlBL2dBQ0FQNEFBZ0FCQVA4QUFRRC9BQUVBQVFEL0FBRUFBUUQvQUFFQS93QUJBQUlBL2dBQ0FQNEFBQU1BQUFBQUJRQUhBQUFIQUFzQUR3QUFJUkVoRVNFUklSRUJFU0VSSVJFaEVRSUEvd0FEQVA4QS9RQUJBQU1BQVFBREFBRUEvd0Q5QUFRQUF3RDlBQU1BL1FBQUJRQUFBQUFGQUFjQUFBVUFDUUFOQUJFQUZ3QUFNUkVoRVNFUkFSRWhHUUloR1FJaEdRSWhFU0VSQVFBRUFQd0FBUUFCQUFFQS9BQUZBQUlBL3dEL0FBSUFBUUQvQUFFQUFRRC9BQUVBQVFEL0FBRUFBUUFCQVA0QUFBQUJBQUFBQUFNQUJ3QUFCd0FBTVJFaEVTRVJJUkVEQVA0QUFnQUhBUDhBK3dEL0FBQURBQUFBQUFNQUJ3QUFBd0FIQUFzQUFDRVJJUkVCRVNFUkFSRWhFUUlBQVFEK0FBRUEvZ0FCQUFJQS9nQUNBQU1BL1FBREFBSUEvZ0FBQUFBQkFBQUFBQU1BQndBQUJ3QUFNUkVoRVNFUklSRUNBUDRBQXdBQkFBVUFBUUQ1QUFBRkFBQUVBQVVBQndBQUF3QUhBQXNBRHdBVEFBQVpBU0VSSVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVBQXdBQkFQd0FBUUFCQUFFQS9nQUJBQVFBQVFEL0FBRUEvd0FCQUFFQS93QUJBUDhBQVFBQkFQOEFBQUFBQVFBQS93QUVBQUFBQUFNQUFCa0JJUkVFQVA4QUFRRC9BQUFBQUFJQUFBVUFBZ0FIQUFBREFBY0FBQUVSSVJFQkVTRVJBUUFCQVA0QUFRQUZBQUVBL3dBQkFBRUEvd0FBQXdBQUFBQUVBQVVBQUFNQURRQVJBQUFaQVNFWkFpRVJJUkVoRVNFUkFSRWhFUUVBQWdEK0FBSUFBUUQ5QUFJQUFRQUJBUDhBL3dBQkFBRUFBUUFCQVB3QUJBQUJBUDhBQUFBQUFBSUFBQUFBQkFBSEFBQURBQTBBQUFFUklSRUJFU0VSSVJFaEVTRVJBd0FCQVB3QUFRQUNBUDRBQWdBQkFBTUEvUUQvQUFjQS9nRC9BUDBBL3dBQUFBQURBQUFBQUFNQUJRQUFBd0FIQUFzQUFDRVJJUkVCRVNFWkFpRVJBUUFDQVAwQUFRQUNBQUVBL3dBQkFBTUEvUUFEQUFFQS93QUFBQUlBQUFBQUJBQUhBQUFEQUEwQUFCa0JJUmtDSVJFaEVTRVJJUkVCQUFJQS9nQUNBQUVBQVFBREFQMEEvd0FCQUFNQUFRQUNBUGtBQUFBQUFBTUFBQUFBQkFBRkFBQURBQTBBRVFBQUlSRWhFUUVSSVJFaEVTRVJJUmtDSVJFQkFBTUEvQUFCQUFJQUFRRDlBQUlBQVFEL0FBRUFBd0QvQUFFQS9nRC9BQU1BQVFEL0FBQUFBQUFDQUFBQUFBUUFCd0FBQ3dBUEFBQWhFU0VSSVJFaEVTRVJJUmtDSVJFQkFQOEFBUUFCQUFJQS9nQUNBQVFBQVFBQkFQOEEvd0Q4QUFZQUFRRC9BQUFBQXdBQS93QUVBQVVBQUFNQUJ3QVJBQUFaQVNFUkFSRWhFUUVSSVJFaEVTRVJJUkVEQVAwQUFRQUNBUDRBQWdEK0FBTUEvd0FCQVA4QUF3QUNBUDRBL2dBQkFBRUFBZ0FCQVBzQUFBSUFBQUFBQkFBSEFBQURBQXNBQUNFUklSRWhFU0VSSVJFaEVRTUFBUUQ4QUFFQUFnRCtBQVFBL0FBSEFQNEEvd0Q4QUFBQ0FBQUFBQUVBQndBQUF3QUhBQUF4RVNFUkFSRWhFUUVBL3dBQkFBVUErd0FHQUFFQS93QUFBd0FBL3dBREFBY0FBQU1BQndBTEFBQVpBU0VaQWlFUkFSRWhFUUlBQVFEL0FBRUEvd0FCQVA4QUFRQUZBUHNBQmdBQkFQOEFBQUFGQUFBQUFBUUFCd0FBQXdBSEFBc0FEd0FYQUFBaEVTRVJBUkVoRVFFUklSa0NJUkVCRVNFUklSRWhFUU1BQVFEK0FBRUEvd0FCQUFFQS9BQUJBQUVBL3dBQkFQOEFBUUFCQVA4QUFnQUJBUDhBQVFBQkFQOEEvQUFIQVB3QS93RCtBQUFBQVFBQUFBQUJBQWNBQUFNQUFERVJJUkVCQUFjQStRQUFCQUFBQUFBRkFBVUFBQU1BQndBTkFCRUFBQUVSSVJFQkVTRVJJUkVoRVNFUkFSRWhFUUlBQVFBQkFBRUErd0FDQVA4QUFnQUJBQUVBQXdEOUFQOEFCQUQ4QUFVQS93RDhBQVFBQVFEL0FBQUNBQUFBQUFRQUJRQUFBd0FKQUFBaEVTRVJJUkVoRVNFUkF3QUJBUHdBQXdEK0FBUUEvQUFGQVA4QS9BQUFBQUFFQUFBQUFBUUFCUUFBQXdBSEFBc0FEd0FBSVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVBQWdEOUFBRUFBZ0FCQVAwQUFnQUJBUDhBQVFBREFQMEFBd0Q5QUFNQUFRRC9BQUFDQUFEL0FBUUFCUUFBQXdBTkFBQUJFU0VSQVJFaEVTRVJJUkVoRVFNQUFRRDhBQU1BL2dBQ0FQNEFBUUFEQVAwQS9nQUdBUDhBL1FEL0FQOEFBQUFBQWdBQS93QUVBQVVBQUFNQURRQUFHUUVoRVFFUklSRWhFU0VSSVJFQkFBSUEvZ0FDQVA0QUF3QUJBQU1BL1FEK0FBRUFBUUFEQUFFQStnQUFBZ0FBQUFBRUFBVUFBQWNBQ3dBQU1SRWhFU0VSSVJFQkVTRVJBUUFCQVA4QUFRQUNBQVVBL3dEL0FQMEFCQUFCQVA4QUFBVUFBQUFBQkFBRkFBQURBQWNBQ3dBUEFCTUFBREVSSVJrQ0lSRUJFU0VSQVJFaEdRSWhFUU1BQVFEOUFBSUEvUUFCQUFNQUFRRC9BQUVBQVFEL0FBRUFBUUQvQUFFQUFRRC9BQUVBQVFEL0FBQUFBQUlBQUFBQUJBQUhBQUFEQUE4QUFDRVJJUkVCRVNFUklSRWhFU0VSSVJFQ0FBSUEvUUQvQUFFQUFRQUNBUDRBQVFEL0FBRUFBd0FCQUFJQS9nRC9BUDBBQUFBQUFnQUFBQUFFQUFVQUFBTUFDUUFBR1FFaEdRSWhFU0VSQVFBQ0FBRUFBUUFFQVB3QS93QUJBQVFBK3dBQUFBQUFCUUFBQUFBRkFBVUFBQU1BQndBTEFBOEFFd0FBSVJFaEVRRVJJUkVoRVNFUkFSRWhFU0VSSVJFQ0FBRUEvZ0FCQUFFQUFRRDhBQUVBQXdBQkFBRUEvd0FCQUFFQS93QUJBUDhBQVFBREFQMEFBd0Q5QUFBQUFBVUFBQUFBQlFBRkFBQURBQWNBQ3dBUEFCTUFBQ0VSSVJFaEVTRVJBUkVoRVNFUklSRWhFU0VSQVFBQkFBRUFBUUQrQUFFQS9RQUJBQU1BQVFBQkFQOEFBUUQvQUFFQUF3RDlBQVFBL0FBRUFQd0FBQWtBQUFBQUJRQUZBQUFEQUFjQUN3QVBBQk1BRndBYkFCOEFJd0FBTVJFaEVTRVJJUkVCRVNFUklSRWhFUUVSSVJFQkVTRVJJUkVoRVFFUklSRWhFU0VSQVFBREFBRUEvQUFCQUFFQUFRRCtBQUVBL2dBQkFBRUFBUUQ4QUFFQUF3QUJBQUVBL3dBQkFQOEFBUUFCQVA4QUFRRC9BQUVBQVFEL0FBRUFBUUQvQUFFQS93QUJBQUVBL3dBQkFQOEFBQU1BQVA4QUJBQUZBQUFEQUFjQUR3QUFHUUVoRVFFUklSRUJFU0VSSVJFaEVRTUEvUUFCQUFJQS9nQUNBQUVBL3dBQkFQOEFBd0FEQVAwQS9nQUJBQUVBQXdEN0FBQUFBQU1BQUFBQUJRQUZBQUFIQUFzQUV3QUFNUkVoRVNFUklSRUJFU0VaQWlFUklSRWhFUUVBQVFBREFQMEFBUUQ5QUFVQS93QUJBQUVBL3dEL0FBSUFBUUQvQUFFQUFRQUJBUDhBL3dBQUFBQUFCUUFBQUFBRUFBY0FBQU1BQndBTEFBOEFFd0FBSVJFaEVRRVJJUkVCRVNFWkFpRVpBaUVSQWdBQ0FQMEFBUUQrQUFFQUFRQUNBQUVBL3dBQkFBSUEvZ0FDQUFFQS93QUJBQUlBL2dBQ0FBRUEvd0FBQVFBQUFBQUJBQWNBQUFNQUFERVJJUkVCQUFjQStRQUFCUUFBQUFBRUFBY0FBQU1BQndBTEFBOEFFd0FBTVJFaEdRSWhHUUloRVFFUklSRUJFU0VSQWdBQkFBRUEvZ0FCQVAwQUFnQUJBUDhBQVFBQ0FQNEFBZ0FCQVA4QUFRQUNBUDRBQWdBQkFQOEFBQUFBQkFBQUJRQUdBQWNBQUFNQUJ3QUxBQThBQUJrQklSRWhFU0VSQVJFaEVTRVJJUkVCQUFJQUFnRDhBQUlBQWdBQkFBVUFBUUQvQUFFQS93QUJBQUVBL3dBQkFQOEFBQUFBQWdBQUFBQUJBQWNBQUFNQUJ3QUFNUkVoRVFFUklSRUJBUDhBQVFBRkFQc0FCZ0FCQVA4QUFBSUFBQUFBQkFBSEFBQURBQmNBQUJrQklSRUJFU0VSSVJFaEVTRVJJUkVoRVNFUklSRWhFUUVBQVFEL0FBRUEvd0FCQUFFQUFRRC9BQUVBL3dBQ0FBTUEvUUQrQUFFQUFRQURBQUVBQVFEL0FQOEEvUUQvQVA4QUFBQUFBZ0FBQUFBRkFBY0FBQThBRXdBQU1SRWhFU0VSSVJFaEVTRVJJUkVoRVFFUklSRUJBUDhBQVFBQkFBSUEvZ0FEQVAwQUF3QUJBQUlBQVFBQ0FQNEEvd0QrQVA4QUJnQUJBUDhBQUFNQUFQOEFCUUFIQUFBWEFCc0FId0FBQVJFaEVTRVJJUkVoRVNFUklSRWhFU0VSSVJFaEVTRVJBUkVoRVNFUklSRUNBUDRBQWdEK0FBSUEvd0FEQVA4QUFnRCtBQUlBL2dEOUFBRUFBd0FCQVA4QUFRQUJBQUVBQVFBQkFBRUEvd0QvQVA4QS93RC9BUDhBQmdBQ0FQNEFBZ0QrQUFBQUFBSUFBQUFBQVFBSEFBQURBQWNBQURFUklSRUJFU0VSQVFEL0FBRUFBd0Q5QUFRQUF3RDlBQUFDQUFBR0FBTUFCd0FBQXdBSEFBQVpBU0VSSVJFaEVRRUFBUUFCQUFZQUFRRC9BQUVBL3dBQUN3QUEvd0FJQUFjQUFBTUFCd0FMQUE4QUV3QVhBQnNBSHdBakFDY0FLd0FBQVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVSSVJFQkVTRVJBUkVoRVFFUklSRUJFU0VSSVJFaEVRRVJJUkVDQUFRQSt3QUJBQVFBQVFEOEFBSUEvUUFCQVAwQUFRQUNBQUlBQWdBQkFQa0FBUUFFQUFFQSt3QUVBUDhBQVFEL0FBRUFBUUQvQUFFQS93QUJBQUVBL3dBQkFBSUEvZ0QvQUFRQS9BQURBQUVBL3dEOUFBUUEvQUFFQUFFQS93QUJBUDhBQVFBQkFQOEFBQW9BQUFFQUJnQUdBQUFEQUFjQUN3QVBBQk1BRndBYkFCOEFJd0FuQUFBQkVTRVJJUkVoRVFFUklSRWhFU0VSQVJFaEVTRVJJUkVCRVNFUklSRWhFUUVSSVJFaEVTRVJBZ0FCQUFJQUFRRDdBQUVBQWdBQkFQc0FBUUFDQUFFQS9RQUJBQUlBQVFEOUFBRUFBZ0FCQUFFQUFRRC9BQUVBL3dBQkFBRUEvd0FCQVA4QUFRQUJBUDhBQVFEL0FBRUFBUUQvQUFFQS93QUJBQUVBL3dBQkFQOEFBQUFBQVFBQUFRQUVBQVFBQUFVQUFBRVJJUkVoRVFNQS9RQUVBQUVBQWdBQkFQMEFBQUFBQ3dBQS93QUlBQWNBQUFNQUJ3QUxBQThBRXdBWEFDRUFKUUFwQUMwQU1RQUFBUkVoRVFFUklSRWhFU0VSQVJFaEVRRVJJUkVCRVNFUklSRWhFU0VSSVJFaEVTRVJJUkVCRVNFUklSRWhFUUVSSVJFQ0FBUUErd0FCQUFRQUFRRCtBQUVBL3dBQkFQb0FBUUFCQUFNQS9nQUNBUDRBQkFBQkFQa0FBUUFFQUFFQSt3QUVBUDhBQVFEL0FBRUFBUUQvQUFFQS93QUJBQUVBL3dBQ0FBRUEvd0QrQUFRQS9BQUVBUDhBL3dEL0FQOEFCQUQ4QUFRQUFRRC9BQUVBL3dBQkFBRUEvd0FBQUFBRUFBQUVBQU1BQndBQUF3QUhBQXNBRHdBQUFSRWhFUUVSSVJFaEVTRVJBUkVoRVFFQUFRRCtBQUVBQVFBQkFQNEFBUUFFQUFFQS93QUJBQUVBL3dBQkFQOEFBUUFCQVA4QUFBQUFBZ0FBQUFBRkFBY0FBQU1BRHdBQU1SRWhFUUVSSVJFaEVTRVJJUkVoRVFVQS9RRCtBQUlBQVFBQ0FQNEFBUUQvQUFJQUFnQUJBQUlBL2dEL0FQNEFBQUlBQUFVQUFnQUhBQUFEQUFjQUFCa0JJUmtDSVJFQkFBRUFCUUFCQVA4QUFRQUJBUDhBQUFBQ0FBRC9BQVFBQlFBQUJ3QUxBQUFaQVNFUklSRWhFUUVSSVJFQkFBSUEvZ0FDQUFFQS93QUdBUHdBL3dEL0FBSUFCQUQ4QUFBQUFBRUFBUDhBQlFBSEFBQU5BQUFCRVNFUklSRWhFU0VSSVJFaEVRSUEvd0QvQUFFQUJBRC9BUDhBL3dBRUFBRUFBZ0FCQVBnQUJ3RDVBQUFBQUFFQUFBTUFBUUFFQUFBREFBQVpBU0VSQVFBREFBRUEvd0FBQUFBQ0FBRCtBQUlBQUFBQUF3QUhBQUFaQVNFWkFpRVJBUUFCQVA0QUFRRC9BQUVBQVFEL0FBQUFDZ0FBQVFBR0FBWUFBQU1BQndBTEFBOEFFd0FYQUJzQUh3QWpBQ2NBQUJrQklSRWhFU0VSQVJFaEVTRVJJUkVCRVNFUklSRWhFUUVSSVJFaEVTRVJBUkVoRVNFUklSRUJBQUlBQVFEOUFBRUFBZ0FCQVAwQUFRQUNBQUVBK3dBQkFBSUFBUUQ3QUFFQUFnQUJBQUVBQVFEL0FBRUEvd0FCQUFFQS93QUJBUDhBQVFBQkFQOEFBUUQvQUFFQUFRRC9BQUVBL3dBQkFBRUEvd0FCQVA4QUFBVUFBQUFBQkFBSEFBQURBQWNBQ3dBUEFCTUFBQ0VSSVJFQkVTRVpBaUVaQWlFUkFSRWhFUUVBQXdEOEFBRUFBUUFCQVA4QUFRQUJBUDhBQVFBQ0FQNEFBZ0FCQVA4QUFRQUJBUDhBQWdBQkFQOEFBQVFBQUFBQUJRQUtBQUFMQUE4QUV3QVhBQUF4RVNFUklSRWhFU0VSSVJrQ0lSRUJFU0VSQVJFaEVRRUFBd0FCQVA4QS9RQURBUDRBQVFEK0FBRUFCZ0Q5QUFNQStnQUNBUDRBQmdBQkFQOEFBZ0FCQVA4QUFRQUJBUDhBQUFBQUFBUUFBQUFBQlFBS0FBQUxBQThBRXdBWEFBQXhFU0VSSVJFaEVTRVJJUmtDSVJFQkVTRVpBaUVSQVFBREFBRUEvd0Q5QUFNQS9nQUJBQUVBQmdEOUFBTUErZ0FDQVA0QUJnQUJBUDhBQWdBQkFQOEFBUUFCQVA4QUFBQUFCUUFBQUFBRkFBb0FBQXNBRHdBVEFCY0FHd0FBTVJFaEVTRVJJUkVoRVNFWkFpRVJBUkVoRVNFUklSRUJFU0VSQVFBREFBRUEvd0Q5QUFNQS9RQUJBQUVBQVFEK0FBRUFCZ0Q5QUFNQStnQUNBUDRBQmdBQkFQOEFBZ0FCQVA4QUFRRC9BQUVBQVFEL0FBQUFCZ0FBQUFBR0FBb0FBQXNBRHdBVEFCY0FHd0FmQUFBeEVTRVJJUkVoRVNFUklSa0NJUkVCRVNFUklSRWhFUUVSSVJFaEVTRVJBUUFEQUFFQS93RDlBQU1BL0FBQkFBSUFBZ0Q4QUFJQUFnQUJBQVlBL1FBREFQb0FBZ0QrQUFZQUFRRC9BQUlBQVFEL0FBRUEvd0FCQUFFQS93QUJBUDhBQUFBQUFBUUFBQUFBQlFBSkFBQUxBQThBRXdBWEFBQXhFU0VSSVJFaEVTRVJJUmtDSVJFQkVTRVJJUkVoRVFFQUF3QUJBUDhBL1FBREFQd0FBUUFEQUFFQUJnRDlBQU1BK2dBQ0FQNEFCZ0FCQVA4QUFnQUJBUDhBQVFEL0FBQUFCUUFBQUFBRkFBb0FBQXNBRXdBWEFCc0FId0FBTVJFaEVTRVJJUkVoRVNFWkFpRVJJUkVoRVFFUklSRWhFU0VSQVJFaEVRRUFBd0FCQVA4QS9RQUJBQUVBQVFEOUFBRUFBUUFCQVA0QUFRQUdBUDBBQXdENkFBSUEvZ0FHQUFFQUFRRC9BUDhBQWdBQkFQOEFBUUQvQUFFQUFRRC9BQUFBQVFBQUFBQUdBQWNBQUJVQUFERVJJUkVoRVNFUklSRWhFU0VSSVJFaEVTRVJJUkVCQUFJQS9nQUZBUDRBQWdEK0FBSUEvUUQrQUFZQS9RQURBQUVBL3dEK0FQOEEvZ0QvQUFJQS9nQUFBQUFFQUFEK0FBUUFCd0FBQXdBTEFBOEFFd0FBQVJFaEdRSWhFU0VSSVJFQkVTRVpBaUVSQVFBQkFQOEFBd0QvQVAwQUFRQURBUDRBQVFEL0FBRUFBUUFCQVA4QS93QUNBQVVBK3dBRkFBRUEvd0FBQUFBREFBQUFBQVFBQ2dBQUN3QVBBQk1BQURFUklSRWhFU0VSSVJFaEVRRVJJUkVCRVNFUkJBRDlBQU1BL1FBREFQNEFBUUQrQUFFQUJ3RC9BUDRBL3dEK0FQOEFDQUFCQVA4QUFRQUJBUDhBQUFNQUFBQUFCQUFLQUFBTEFBOEFFd0FBTVJFaEVTRVJJUkVoRVNFUkFSRWhHUUloRVFRQS9RQURBUDBBQXdEOUFBRUFBUUFIQVA4QS9nRC9BUDRBL3dBSUFBRUEvd0FCQUFFQS93QUFBQUFBQkFBQUFBQUVBQW9BQUFzQUR3QVRBQmNBQURFUklSRWhFU0VSSVJFaEVRRVJJUkVoRVNFUkFSRWhFUVFBL1FBREFQMEFBd0Q5QUFFQUFRQUJBUDRBQVFBSEFQOEEvZ0QvQVA0QS93QUlBQUVBL3dBQkFQOEFBUUFCQVA4QUFBQUFBd0FBQUFBRUFBa0FBQXNBRHdBVEFBQXhFU0VSSVJFaEVTRVJJUkVCRVNFUklSRWhFUVFBL1FBREFQMEFBd0Q4QUFFQUFnQUJBQWNBL3dEK0FQOEEvZ0QvQUFnQUFRRC9BQUVBL3dBQUFBQURBUUFBQUFNQUNnQUFBd0FIQUFzQUFDRVJJUkVCRVNFWkFpRVJBUUFCQVA4QUFRQUJBQWNBK1FBSUFBRUEvd0FCQUFFQS93QUFBQU1BQUFBQUFnQUtBQUFEQUFjQUN3QUFJUkVoRVFFUklSRUJFU0VSQVFBQkFQOEFBUUQrQUFFQUJ3RDVBQWdBQVFEL0FBRUFBUUQvQUFBQUFBUUFBQUFBQXdBS0FBQURBQWNBQ3dBUEFBQWhFU0VSQVJFaEVTRVJJUkVCRVNFUkFRQUJBUDRBQVFBQkFBRUEvZ0FCQUFjQStRQUlBQUVBL3dBQkFQOEFBUUFCQVA4QUFBTUFBQUFBQXdBSkFBQURBQWNBQ3dBQUlSRWhFUUVSSVJFaEVTRVJBUUFCQVA0QUFRQUJBQUVBQndENUFBZ0FBUUQvQUFFQS93QUFBZ0FBQUFBR0FBY0FBQU1BRXdBQUFSRWhFUUVSSVJFaEVTRVJJUkVoRVNFUklSRUZBQUVBK3dEL0FBRUFCQUQ5QUFFQS93QURBQUVBQlFEN0FQOEFBd0FCQUFNQS93RCtBUDhBL2dEL0FBQUhBQUFBQUFZQUNnQUFBd0FMQUJNQUZ3QWJBQjhBSXdBQUFSRWhFUUVSSVJFaEVTRVJJUkVoRVNFUklSRUJFU0VSSVJFaEVRRVJJUkVoRVNFUkFnQUJBUDBBQVFBQkFQOEFBd0QvQUFFQUFRRDdBQUVBQWdBQ0FQd0FBZ0FDQUFFQUJBQUJBUDhBL0FBSEFQOEEvd0Q3QUFNQUFRQURBUGtBQ0FBQkFQOEFBUUQvQUFFQUFRRC9BQUVBL3dBQUFBQUdBQUFBQUFVQUNnQUFBd0FIQUFzQUR3QVRBQmNBQUNFUklSRUJFU0VSSVJFaEVRRVJJUkVCRVNFUkFSRWhFUUVBQXdEOEFBRUFBd0FCQVB3QUF3RCtBQUVBL2dBQkFBRUEvd0FCQUFVQSt3QUZBUHNBQlFBQkFQOEFBZ0FCQVA4QUFRQUJBUDhBQUFZQUFBQUFCUUFLQUFBREFBY0FDd0FQQUJNQUZ3QUFJUkVoRVFFUklSRWhFU0VSQVJFaEVRRVJJUmtDSVJFQkFBTUEvQUFCQUFNQUFRRDhBQU1BL2dBQkFBRUFBUUQvQUFFQUJRRDdBQVVBK3dBRkFBRUEvd0FDQUFFQS93QUJBQUVBL3dBQUFBQUFCd0FBQUFBRkFBb0FBQU1BQndBTEFBOEFFd0FYQUJzQUFDRVJJUkVCRVNFUklSRWhFUUVSSVJFQkVTRVJJUkVoRVFFUklSRUJBQU1BL0FBQkFBTUFBUUQ4QUFNQS9RQUJBQUVBQVFEK0FBRUFBUUQvQUFFQUJRRDdBQVVBK3dBRkFBRUEvd0FDQUFFQS93QUJBUDhBQVFBQkFQOEFBQUFBQ0FBQUFBQUdBQW9BQUFNQUJ3QUxBQThBRXdBWEFCc0FId0FBSVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVSSVJFaEVTRVJBUkVoRVNFUklSRUJBQU1BL0FBQkFBTUFBUUQ4QUFNQS9BQUJBQUlBQWdEOEFBSUFBZ0FCQUFFQS93QUJBQVVBK3dBRkFQc0FCUUFCQVA4QUFnQUJBUDhBQVFEL0FBRUFBUUQvQUFFQS93QUFCZ0FBQUFBRkFBa0FBQU1BQndBTEFBOEFFd0FYQUFBaEVTRVJBUkVoRVNFUklSRUJFU0VSQVJFaEVTRVJJUkVCQUFNQS9BQUJBQU1BQVFEOEFBTUEvQUFCQUFNQUFRQUJBUDhBQVFBRkFQc0FCUUQ3QUFVQUFRRC9BQUlBQVFEL0FBRUEvd0FBQUFBSkFBQUJBQVVBQmdBQUF3QUhBQXNBRHdBVEFCY0FHd0FmQUNNQUFCa0JJUkVoRVNFUkFSRWhFU0VSSVJFQkVTRVJBUkVoRVNFUklSRUJFU0VSSVJFaEVRRUFBd0FCQVB3QUFRQUJBQUVBL2dBQkFQNEFBUUFCQUFFQS9BQUJBQU1BQVFBQkFBRUEvd0FCQVA4QUFRQUJBUDhBQVFEL0FBRUFBUUQvQUFFQUFRRC9BQUVBL3dBQkFBRUEvd0FCQVA4QUFBQUFCUUFBQUFBRkFBY0FBQU1BQndBUEFCY0FHd0FBSVJFaEVRRVJJUkVCRVNFUklSRWhFU0VSSVJFaEVTRVJBUkVoRVFFQUF3RCtBQUVBL1FBQkFBRUEvd0FEQVA4QUFRQUJBUHdBQXdBQkFQOEFBd0FCQVA4QS9nQUZBUDBBL3dEL0FBTUFBUUFCQVBzQUJRQUJBUDhBQUFVQUFBQUFCUUFLQUFBREFBY0FDd0FQQUJNQUFDRVJJUkVCRVNFUklSRWhFUUVSSVJFQkVTRVJBUUFEQVB3QUFRQURBQUVBL1FBQkFQNEFBUUFCQVA4QUFRQUdBUG9BQmdENkFBY0FBUUQvQUFFQUFRRC9BQUFGQUFBQUFBVUFDZ0FBQXdBSEFBc0FEd0FUQUFBaEVTRVJBUkVoRVNFUklSRUJFU0VaQWlFUkFRQURBUHdBQVFBREFBRUEvUUFCQUFFQUFRRC9BQUVBQmdENkFBWUErZ0FIQUFFQS93QUJBQUVBL3dBQUFBQUFCZ0FBQUFBRkFBb0FBQU1BQndBTEFBOEFFd0FYQUFBaEVTRVJBUkVoRVNFUklSRUJFU0VSSVJFaEVRRVJJUkVCQUFNQS9BQUJBQU1BQVFEOEFBRUFBUUFCQVA0QUFRQUJBUDhBQVFBR0FQb0FCZ0Q2QUFjQUFRRC9BQUVBL3dBQkFBRUEvd0FBQUFBRkFBQUFBQVVBQ1FBQUF3QUhBQXNBRHdBVEFBQWhFU0VSQVJFaEVTRVJJUkVCRVNFUklSRWhFUUVBQXdEOEFBRUFBd0FCQVBzQUFRQURBQUVBQVFEL0FBRUFCZ0Q2QUFZQStnQUhBQUVBL3dBQkFQOEFBQUFBQlFBQUFBQUZBQW9BQUFjQUN3QVBBQk1BRndBQUlSRWhFU0VSSVJFQkVTRVJJUkVoRVFFUklSa0NJUkVDQVA4QUF3RC9BUDBBQVFBREFBRUEvUUFCQUFFQUF3QUJBUDhBL1FBRUFBTUEvUUFEQVAwQUJBQUJBUDhBQVFBQkFQOEFBQUFBQUFJQUFBQUFCUUFIQUFBREFBOEFBQUVSSVJFQkVTRVJJUkVoRVNFUklSRUVBQUVBK3dBQkFBTUEvUUFEQVAwQUFnQURBUDBBL2dBSEFQOEEvd0Q5QVA4QS93QUFCZ0FBQUFBRkFBY0FBQU1BQndBTEFBOEFFd0FYQUFBaEVTRVpBaUVSQVJFaEVRRVJJUkVCRVNFUkFSRWhFUUlBQWdBQkFQMEFBZ0Q4QUFFQUF3QUJBUHdBQXdBQkFQOEFBUUFDQVA0QUFnQUJBUDhBL1FBR0FQb0FCQUFDQVA0QUFnQUJBUDhBQUFBRkFBQUFBQVFBQ0FBQUF3QU5BQkVBRlFBWkFBQVpBU0VaQWlFUklSRWhFU0VSQVJFaEVRRVJJUkVCRVNFUkFRQUNBUDRBQWdBQkFQMEFBZ0QvQUFFQS9nQUJBQUVBQVFEL0FQOEFBUUFCQUFFQUFRRDhBQVFBQVFEL0FBSUFBUUQvQUFFQUFRRC9BQUFBQUFBRkFBQUFBQVFBQ0FBQUF3QU5BQkVBRlFBWkFBQVpBU0VaQWlFUklSRWhFU0VSQVJFaEVRRVJJUmtDSVJFQkFBSUEvZ0FDQUFFQS9RQUNBUDRBQVFBQkFBRUFBUUQvQVA4QUFRQUJBQUVBQVFEOEFBUUFBUUQvQUFJQUFRRC9BQUVBQVFEL0FBQUFBQVlBQUFBQUJBQUlBQUFEQUEwQUVRQVZBQmtBSFFBQUdRRWhHUUloRVNFUklSRWhFUUVSSVJFQkVTRVJJUkVoRVFFUklSRUJBQUlBL2dBQ0FBRUEvUUFDQVA0QUFRQUJBQUVBL2dBQkFBRUFBUUQvQVA4QUFRQUJBQUVBQVFEOEFBUUFBUUQvQUFJQUFRRC9BQUVBL3dBQkFBRUEvd0FBQUFjQUFBQUFCQUFJQUFBREFBMEFFUUFWQUJrQUhRQWhBQUFaQVNFWkFpRVJJUkVoRVNFUkFSRWhFUUVSSVJFaEVTRVJBUkVoRVNFUklSRUJBQUlBL2dBQ0FBRUEvUUFDQVAwQUFRQUJBQUVBL2dBQkFBRUFBUUFCQUFFQS93RC9BQUVBQVFBQkFBRUEvQUFFQUFFQS93QUNBQUVBL3dBQkFQOEFBUUFCQVA4QUFRRC9BQUFBQUFBRkFBQUFBQVFBQndBQUF3QU5BQkVBRlFBWkFBQVpBU0VaQWlFUklSRWhFU0VSQVJFaEVRRVJJUkVoRVNFUkFRQUNBUDRBQWdBQkFQMEFBZ0Q5QUFFQUFnQUJBQUVBQVFEL0FQOEFBUUFCQUFFQUFRRDhBQVFBQVFEL0FBSUFBUUQvQUFFQS93QUFBQWNBQUFBQUJBQUpBQUFEQUEwQUVRQVZBQmtBSFFBaEFBQVpBU0VaQWlFUklSRWhFU0VSQVJFaEVRRVJJUkVCRVNFUklSRWhFUUVSSVJFQkFBSUEvZ0FDQUFFQS9RQUNBUDhBQVFEK0FBRUFBUUFCQVA0QUFRQUJBQUVBL3dEL0FBRUFBUUFCQUFFQS9BQUVBQUVBL3dBQ0FBRUEvd0FCQUFFQS93QUJBUDhBQVFBQkFQOEFBQUFFQUFBQUFBVUFCUUFBQXdBVkFCa0FIUUFBR1FFaEdRSWhFU0VSSVJFaEVTRVJJUkVoRVNFUkFSRWhFU0VSSVJFQkFBRUEvd0FCQUFFQUFRQUJBUDRBQWdEOEFBRUFBUUFCQUFFQUFRRC9BUDhBQVFBQkFBRUFBUUQvQUFFQS9nRC9BUDhBQkFBQkFQOEFBUUQvQUFBQUJBQUEvZ0FEQUFVQUFBTUFDUUFOQUJFQUFCa0JJUmtDSVJFaEVRRVJJUmtDSVJFQkFBSUEvd0QrQUFFQUFnRCtBQUVBL3dBQkFBSUEvd0QvQUFJQUF3RDlBQU1BQVFEL0FBQUFBQVVBQUFBQUJBQUlBQUFEQUEwQUVRQVZBQmtBQUNFUklSRUJFU0VSSVJFaEVTRVpBaUVSQVJFaEVRRVJJUkVCQUFNQS9BQUJBQUlBQVFEOUFBSUEvd0FCQVA0QUFRQUJBUDhBQVFBREFQOEFBUUQrQVA4QUF3QUJBUDhBQWdBQkFQOEFBUUFCQVA4QUFBQUFBQVVBQUFBQUJBQUlBQUFEQUEwQUVRQVZBQmtBQUNFUklSRUJFU0VSSVJFaEVTRVpBaUVSQVJFaEdRSWhFUUVBQXdEOEFBRUFBZ0FCQVAwQUFnRCtBQUVBQVFBQkFQOEFBUUFEQVA4QUFRRCtBUDhBQXdBQkFQOEFBZ0FCQVA4QUFRQUJBUDhBQUFBQUJnQUFBQUFFQUFnQUFBTUFEUUFSQUJVQUdRQWRBQUFoRVNFUkFSRWhFU0VSSVJFaEdRSWhFUUVSSVJFaEVTRVJBUkVoRVFFQUF3RDhBQUVBQWdBQkFQMEFBZ0QrQUFFQUFRQUJBUDRBQVFBQkFQOEFBUUFEQVA4QUFRRCtBUDhBQXdBQkFQOEFBZ0FCQVA4QUFRRC9BQUVBQVFEL0FBQUFCUUFBQUFBRUFBY0FBQU1BRFFBUkFCVUFHUUFBSVJFaEVRRVJJUkVoRVNFUklSa0NJUkVCRVNFUklSRWhFUUVBQXdEOEFBRUFBZ0FCQVAwQUFnRDlBQUVBQWdBQkFBRUEvd0FCQUFNQS93QUJBUDRBL3dBREFBRUEvd0FDQUFFQS93QUJBUDhBQUFBREFBQUFBQUlBQ0FBQUF3QUhBQXNBQUNFUklSRUJFU0VSQVJFaEVRRUFBUUQvQUFFQS9nQUJBQVVBK3dBR0FBRUEvd0FCQUFFQS93QUFBQUFEQVFBQUFBTUFDQUFBQXdBSEFBc0FBQ0VSSVJFQkVTRVpBaUVSQVFBQkFQOEFBUUFCQUFVQSt3QUdBQUVBL3dBQkFBRUEvd0FBQUFRQUFBQUFBd0FJQUFBREFBY0FDd0FQQUFBaEVTRVJBUkVoRVNFUklSRUJFU0VSQVFBQkFQNEFBUUFCQUFFQS9nQUJBQVVBK3dBR0FBRUEvd0FCQVA4QUFRQUJBUDhBQUFNQUFBQUFBd0FIQUFBREFBY0FDd0FBSVJFaEVRRVJJUkVoRVNFUkFRQUJBUDRBQVFBQkFBRUFCUUQ3QUFZQUFRRC9BQUVBL3dBQUFnQUFBQUFGQUFnQUFBTUFGUUFBR1FFaEdRSWhFU0VSSVJFaEVTRVJJUkVoRVNFUkFRQUNBUDRBQWdEL0FBRUFBUUFCQVA4QUFRQURBUDBBL3dBQkFBTUFBUUFCQUFFQUFRRC9BUDhBK2dBQUFBQUFCZ0FBQUFBRUFBZ0FBQU1BQ1FBTkFCRUFGUUFaQUFBaEVTRVJJUkVoRVNFUkFSRWhFU0VSSVJFQkVTRVJJUkVoRVFNQUFRRDhBQU1BL2dEL0FBRUFBUUFCQVA0QUFRQUJBQUVBQkFEOEFBVUEvd0Q4QUFZQUFRRC9BQUVBL3dBQkFBRUEvd0FCQVA4QUFBQUFCZ0FBQUFBRUFBZ0FBQU1BQndBTEFBOEFFd0FYQUFBaEVTRVJBUkVoRVNFUklSRUJFU0VSQVJFaEVRRVJJUkVCQUFJQS9RQUJBQUlBQVFEOUFBSUEvd0FCQVA0QUFRQUJBUDhBQVFBREFQMEFBd0Q5QUFNQUFRRC9BQUlBQVFEL0FBRUFBUUQvQUFBR0FBQUFBQVFBQ0FBQUF3QUhBQXNBRHdBVEFCY0FBQ0VSSVJFQkVTRVJJUkVoRVFFUklSRUJFU0VaQWlFUkFRQUNBUDBBQVFBQ0FBRUEvUUFDQVA0QUFRQUJBQUVBL3dBQkFBTUEvUUFEQVAwQUF3QUJBUDhBQWdBQkFQOEFBUUFCQVA4QUFBQUFBQWNBQUFBQUJBQUlBQUFEQUFjQUN3QVBBQk1BRndBYkFBQWhFU0VSQVJFaEVTRVJJUkVCRVNFUkFSRWhFU0VSSVJFQkVTRVJBUUFDQVAwQUFRQUNBQUVBL1FBQ0FQNEFBUUFCQUFFQS9nQUJBQUVBL3dBQkFBTUEvUUFEQVAwQUF3QUJBUDhBQWdBQkFQOEFBUUQvQUFFQUFRRC9BQUFBQUFnQUFBQUFCQUFJQUFBREFBY0FDd0FQQUJNQUZ3QWJBQjhBQUNFUklSRUJFU0VSSVJFaEVRRVJJUkVCRVNFUklSRWhFUUVSSVJFaEVTRVJBUUFDQVAwQUFRQUNBQUVBL1FBQ0FQMEFBUUFCQUFFQS9nQUJBQUVBQVFBQkFQOEFBUUFEQVAwQUF3RDlBQU1BQVFEL0FBSUFBUUQvQUFFQS93QUJBQUVBL3dBQkFQOEFBQVlBQUFBQUJBQUhBQUFEQUFjQUN3QVBBQk1BRndBQUlSRWhFUUVSSVJFaEVTRVJBUkVoRVFFUklSRWhFU0VSQVFBQ0FQMEFBUUFDQUFFQS9RQUNBUDBBQVFBQ0FBRUFBUUQvQUFFQUF3RDlBQU1BL1FBREFBRUEvd0FDQUFFQS93QUJBUDhBQUFBQUF3QUFBUUFGQUFZQUFBTUFCd0FMQUFBQkVTRVJBUkVoRVFFUklSRUNBQUVBL1FBRkFQMEFBUUFCQUFFQS93QUNBQUVBL3dBQ0FBRUEvd0FBQXdBQUFBQUVBQVVBQUFNQUN3QVZBQUFoRVNFUkFSRWhFU0VSSVJFaEVTRVJJUkVoRVNFUkFRQUNBUDBBQVFBQkFQOEFBZ0QvQVA4QUFnQUJBQUVBL3dBQkFBTUEvd0QvQVA4QUFnQUJBQUVBL3dEOUFBQUFBQVFBQUFBQUJBQUlBQUFEQUFrQURRQVJBQUFaQVNFWkFpRVJJUkVCRVNFUkFSRWhFUUVBQWdBQkFQNEFBUUQrQUFFQUFRQUVBUHdBL3dBQkFBUUErd0FHQUFFQS93QUJBQUVBL3dBQUFBQUFCQUFBQUFBRUFBZ0FBQU1BQ1FBTkFCRUFBQmtCSVJrQ0lSRWhFUUVSSVJrQ0lSRUJBQUlBQVFEOUFBRUFBUUFCQUFRQS9BRC9BQUVBQkFEN0FBWUFBUUQvQUFFQUFRRC9BQUFBQUFVQUFBQUFCQUFJQUFBREFBa0FEUUFSQUJVQUFCa0JJUmtDSVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVBQWdBQkFQMEFBUUFCQUFFQS9nQUJBQUVBQkFEOEFQOEFBUUFFQVBzQUJnQUJBUDhBQVFEL0FBRUFBUUQvQUFBQUJBQUFBQUFFQUFjQUFBTUFDUUFOQUJFQUFCa0JJUmtDSVJFaEVRRVJJUkVoRVNFUkFRQUNBQUVBL0FBQkFBSUFBUUFCQUFRQS9BRC9BQUVBQkFEN0FBWUFBUUQvQUFFQS93QUFBQVVBQVA4QUJBQUlBQUFEQUFjQUR3QVRBQmNBQUJrQklSRUJFU0VSQVJFaEVTRVJJUkVCRVNFWkFpRVJBd0Q5QUFFQUFnRCtBQUlBQVFEOUFBRUFBUUQvQUFFQS93QURBQU1BL1FEK0FBRUFBUUFEQVBzQUJnQUJBUDhBQVFBQkFQOEFBQUFDQUFEL0FBUUFCd0FBQXdBUEFBQUJFU0VSQVJFaEVTRVJJUkVoRVNFUkF3QUJBUHdBQVFBQ0FQNEFBZ0QrQUFFQUF3RDlBUDRBQ0FEK0FQOEEvUUQvQVA4QUFBVUFBUDhBQkFBSEFBQURBQWNBRHdBVEFCY0FBQmtCSVJFQkVTRVJBUkVoRVNFUklSRUJFU0VSSVJFaEVRTUEvUUFCQUFJQS9nQUNBQUVBL0FBQkFBSUFBUUQvQUFFQS93QURBQU1BL1FEK0FBRUFBUUFEQVBzQUJnQUJBUDhBQVFEL0FBQUdBQUFBQUFRQUNnQUFBd0FIQUFzQUR3QVRBQmNBQUNFUklSRUJFU0VaQWlFUkFSRWhFUUVSSVJFaEVTRVJBUUFEQVB3QUFRQURBUDRBQVFEK0FBRUFBUUFCQUFFQS93QUJBQVVBK3dBRkFBRUEvd0FDQUFFQS93QUJBQUVBL3dBQkFQOEFBQUFBQUFZQUFBQUFBd0FJQUFBREFBY0FDd0FQQUJNQUZ3QUFJUkVoRVFFUklSa0NJUkVCRVNFUkFSRWhFU0VSSVJFQkFBSUEvUUFCQUFJQS9nQUJBUDRBQVFBQkFBRUFBUUQvQUFFQUF3RDlBQU1BQVFEL0FBSUFBUUQvQUFFQUFRRC9BQUVBL3dBQUFBQUFCUUFBQUFBRkFBb0FBQU1BQ3dBUEFCTUFGd0FBQVJFaEVRRVJJUkVoRVNFUkFSRWhFUUVSSVJFaEVTRVJCQUFCQVBzQUJBRDlBQU1BL2dBQkFQNEFBUUFCQUFFQUFRQUZBUHNBL3dBSEFQOEErd0QvQUFnQUFRRC9BQUVBQVFEL0FBRUEvd0FBQUFBREFBQUFBQVlBQndBQUF3QU5BQkVBQUJrQklSa0NJUkVoRVNFUklSRUJFU0VSQVFBQ0FQNEFBZ0FCQUFFQUFRQUJBQU1BL1FEL0FBRUFBd0FCQUFJQStRQUZBQUlBL2dBQUFBQUFCQUFBQUFBRUFBb0FBQXNBRHdBVEFCY0FBREVSSVJFaEVTRVJJUkVoRVFFUklSRUJFU0VSSVJFaEVRUUEvUUFEQVAwQUF3RCtBQUVBL2dBQkFBRUFBUUFIQVA4QS9nRC9BUDRBL3dBSUFBRUEvd0FCQUFFQS93QUJBUDhBQUFBQUJnQUFBQUFFQUFnQUFBTUFEUUFSQUJVQUdRQWRBQUFoRVNFUkFSRWhFU0VSSVJFaEdRSWhFUUVSSVJFQkVTRVJJUkVoRVFFQUF3RDhBQUVBQWdBQkFQMEFBZ0QvQUFFQS9nQUJBQUVBQVFBQkFQOEFBUUFEQVA4QUFRRCtBUDhBQXdBQkFQOEFBZ0FCQVA4QUFRQUJBUDhBQVFEL0FBQUFBUUFBQUFBQkFBVUFBQU1BQURFUklSRUJBQVVBK3dBQUJnQUFBQUFGQUFvQUFBTUFDd0FUQUJjQUd3QWZBQUFCRVNFUkFSRWhFU0VSSVJFaEVTRVJJUkVoRVFFUklSRUJFU0VSSVJFaEVRSUFBUUQ5QUFFQUFRRC9BQU1BL3dBQkFBRUEvUUFCQVA0QUFRQUJBQUVBQkFBQkFQOEEvQUFIQVA4QS93RDdBQU1BQVFBREFQa0FDQUFCQVA4QUFRQUJBUDhBQVFEL0FBQUZBQUFBQUFRQUNBQUFBd0FKQUEwQUVRQVZBQUFoRVNFUklSRWhFU0VSQVJFaEVRRVJJUkVoRVNFUkF3QUJBUHdBQXdEK0FBRUFBUUQrQUFFQUFRQUJBQVFBL0FBRkFQOEEvQUFHQUFFQS93QUJBQUVBL3dBQkFQOEFBQUlBQUFBQUJnQUhBQUFEQUJNQUFCa0JJUmtDSVJFaEVTRVJJUkVoRVNFUklSRUJBQUlBL2dBRkFQNEFBZ0QrQUFJQUFRQUZBUHNBL3dBQkFBVUFBUUQvQVA0QS93RCtBUDhBQUFBR0FBQUFBQVVBQlFBQUF3QUhBQXNBRlFBWkFCMEFBQ0VSSVJFaEVTRVJBUkVoRVNFUklSRWhFU0VSSVJFQkVTRVJJUkVoRVFFQUFRQUJBQUlBK3dBQkFBRUFBUUFCQUFFQS9nRCtBQUVBQVFBQkFBRUEvd0FCQVA4QUFRQURBUDBBQXdEL0FBRUEvZ0QvQUFNQUFRRC9BQUVBL3dBQUFBQUdBQUFBQUFVQUNnQUFBd0FIQUJFQUZRQVpBQjBBQUNFUklSRUJFU0VSQVJFaEVTRVJJUkVoRVFFUklSRUJFU0VSSVJFaEVRUUFBUUQvQUFFQSt3QUVBUDBBQXdEOUFBRUFBUUQrQUFFQUFRQUJBQUlBL2dBREFBTUEvUUQ5QUFjQS93RDlBUDhBL2dBSUFBRUEvd0FCQUFFQS93QUJBUDhBQUFBQUJRQUFBQUFFQUFnQUFBY0FDd0FQQUJNQUZ3QUFNUkVoRVNFUklSRUJFU0VSQVJFaEVRRVJJUkVoRVNFUkFRQUJBUDhBQVFBQ0FQNEFBUUQrQUFFQUFRQUJBQVVBL3dEL0FQMEFCQUFCQVA4QUFnQUJBUDhBQVFBQkFQOEFBUUQvQUFBQUFBZ0FBQUFBQlFBS0FBQURBQWNBQ3dBUEFCTUFGd0FiQUI4QUFERVJJUmtDSVJFQkVTRVJBUkVoR1FJaEVRRVJJUkVCRVNFUklSRWhFUVFBQVFEOEFBTUEvQUFCQUFRQS9RQUJBUDRBQVFBQkFBRUFBUUQvQUFFQUFnRCtBQUlBQVFEL0FBRUFBZ0QrQUFJQUFRRC9BQUlBQVFEL0FBRUFBUUQvQUFFQS93QUFDQUFBQUFBRUFBZ0FBQU1BQndBTEFBOEFFd0FYQUJzQUh3QUFNUkVoR1FJaEVRRVJJUkVCRVNFWkFpRVJBUkVoRVFFUklSRWhFU0VSQXdBQkFQMEFBZ0Q5QUFFQUF3RCtBQUVBL2dBQkFBRUFBUUFCQVA4QUFRQUJBUDhBQVFBQkFQOEFBUUFCQVA4QUFRQUJBUDhBQWdBQkFQOEFBUUFCQVA4QUFRRC9BQUFFQUFBQUFBVUFDZ0FBQndBTEFBOEFFd0FBSVJFaEVTRVJJUkVCRVNFUkFSRWhFU0VSSVJFQ0FQNEFCUUQrQVA4QUFRRCtBQUVBQVFBQkFBWUFBUUQvQVBvQUNBQUJBUDhBQVFBQkFQOEFBUUQvQUFBREFBQUFBQVlBQndBQUF3QVBBQk1BQUNFUklSRUJFU0VSSVJFaEVTRVJJUkVCRVNFUkFnQUNBUDBBL3dBQkFBRUFBZ0QrQUFNQUFRQUJBUDhBQVFBREFBRUFBZ0QrQVA4QS9RQUVBQUlBL2dBQUFBQUhBQUFBQUFVQUN3QUFBd0FIQUFzQUR3QVRBQmNBR3dBQUlSRWhFUUVSSVJFaEVTRVJBUkVoRVFFUklSRWhFU0VSQVJFaEVRRUFBd0Q4QUFFQUF3QUJBUDBBQVFEK0FBRUFBUUFCQVA0QUFRQUJBUDhBQVFBR0FQb0FCZ0Q2QUFjQUFRRC9BQUVBQVFEL0FBRUEvd0FCQUFFQS93QUFBQUFHQUFBQUFBUUFDUUFBQXdBSkFBMEFFUUFWQUJrQUFCa0JJUmtDSVJFaEVRRVJJUkVCRVNFUklSRWhFUUVSSVJFQkFBSUFBUUQrQUFFQS9nQUJBQUVBQVFEK0FBRUFBUUFFQVB3QS93QUJBQVFBK3dBR0FBRUEvd0FCQUFFQS93QUJBUDhBQVFBQkFQOEFBQUFGQUFBQUFBVUFDUUFBQndBTEFBOEFFd0FYQUFBaEVTRVJJUkVoRVFFUklSRWhFU0VSQVJFaEVTRVJJUkVDQVA4QUF3RC9BUDBBQVFBREFBRUErd0FCQUFNQUFRQURBQUVBL3dEOUFBUUFBd0Q5QUFNQS9RQUVBQUVBL3dBQkFQOEFBQUFBQ0FBQUFBQUZBQW9BQUFVQUNRQU5BQkVBRndBYkFCOEFJd0FBTVJFaEVTRVJBUkVoR1FJaEdRSWhHUUloRVNFUkFSRWhFUUVSSVJFaEVTRVJBUUFFQVB3QUFRQUJBQUVBL0FBRkFQMEFBUUQrQUFFQUFRQUJBQUlBL3dEL0FBSUFBUUQvQUFFQUFRRC9BQUVBQVFEL0FBRUFBUUFCQVA0QUF3QUJBUDhBQVFBQkFQOEFBUUQvQUFBQUFBQUdBQUFBQUFVQUNBQUFCd0FMQUJNQUZ3QWJBQjhBQURFUklSRWhFU0VSQVJFaEdRSWhFU0VSSVJFQkVTRVJBUkVoRVNFUklSRUJBQUVBQXdEOUFBRUEvUUFGQVA4QS9nQUJBUDRBQVFBQkFBRUFBUUFCQVA4QS93QUNBQUVBL3dBQkFBRUFBUUQvQVA4QUF3QUJBUDhBQVFBQkFQOEFBUUQvQUFBQUF3QUEvd0FGQUFjQUFBTUFEd0FUQUFBWkFTRVpBaUVSSVJFaEVTRVJJUmtDSVJFQ0FQOEFBUUFCQUFFQS93QUNBUDhBQVFEL0FBRUFBd0FCQUFJQS9nRC9BUDBBQmdBQkFQOEFBQUVBQUFNQUJRQUVBQUFEQUFBWkFTRVJCUUFEQUFFQS93QUFBQUFCQUFBRkFBRUFCd0FBQXdBQUdRRWhFUUVBQlFBQ0FQNEFBQUFBQVFBQUJRQUJBQWNBQUFNQUFCa0JJUkVCQUFVQUFnRCtBQUFBQUFFQUFQOEFBUUFCQUFBREFBQVpBU0VSQVFEL0FBSUEvZ0FBQUFBQ0FBQUZBQU1BQndBQUF3QUhBQUFaQVNFUklSRWhFUUVBQVFBQkFBVUFBZ0QrQUFJQS9nQUFBZ0FBQlFBREFBY0FBQU1BQndBQUdRRWhFU0VSSVJFQkFBRUFBUUFGQUFJQS9nQUNBUDRBQUFJQUFQOEFBd0FCQUFBREFBY0FBQmtCSVJFaEVTRVJBUUFCQUFFQS93QUNBUDRBQWdEK0FBQUJBQUFBQUFVQUJ3QUFDd0FBSVJFaEVTRVJJUkVoRVNFUkFnRCtBQUlBQVFBQ0FQNEFCUUFCQUFFQS93RC9BUHNBQUFBQUFRQUFBd0FCQUFRQUFBTUFBQmtCSVJFQkFBTUFBUUQvQUFBQUFBTUFBQUFBQlFBQkFBQURBQWNBQ3dBQU1SRWhFU0VSSVJFaEVTRVJBUUFCQUFFQUFRQUJBQUVBL3dBQkFQOEFBUUQvQUFBRkFBQUJBQU1BQmdBQUF3QUhBQXNBRHdBVEFBQUJFU0VSQVJFaEVRRVJJUmtDSVJrQ0lSRUNBQUVBL2dBQkFQNEFBUUFCQUFFQUFRQUJBUDhBQVFBQkFQOEFBUUFCQVA4QUFRQUJBUDhBQVFBQkFQOEFBQUFBQlFBQUFRQURBQVlBQUFNQUJ3QUxBQThBRXdBQUdRRWhHUUloR1FJaEVRRVJJUkVCRVNFUkFRQUJBQUVBL2dBQkFQNEFBUUFCQUFFQS93QUJBQUVBL3dBQkFBRUEvd0FCQUFFQS93QUJBQUVBL3dBQUF3QUFBQUFGQUFjQUFBTUFGd0FiQUFBaEVTRVJBUkVoRVNFUklSRWhFU0VSSVJFaEVTRVJJUmtDSVJFQ0FBTUEvQUQvQUFFQS93QUJBQUVBQWdEK0FBSUEvZ0FEQUFFQS93QUJBQUVBQVFBQkFBRUFBUUQvQVA4QS93RC9BUDhBQlFBQkFQOEFBQUFEQUFBREFBZ0FCd0FBQXdBUkFCa0FBQUVSSVJFQkVTRVJJUkVoRVNFUklSRWhFU0VSSVJFaEVTRVJCUUFCQVBzQS93QUVBQUVBL3dEL0FQOEFCUUQvQUFFQUFRQUVBQUVBL3dEL0FBTUFBUUQvQVA4QS9nQURBUDBBQWdBQkFBRUEvQUFBQUFBV0FRNEFBUUFBQUFBQUFBQk5BQUFBQVFBQUFBQUFBUUFOQUUwQUFRQUFBQUFBQWdBSEFGc0FBUUFBQUFBQUF3QVZBRTBBQVFBQUFBQUFCQUFWQUUwQUFRQUFBQUFBQlFBWEFHSUFBUUFBQUFBQUJnQVRBSGtBQVFBQUFBQUFDUUFmQUl3QUFRQUFBQUFBQ2dBL0FLc0FBUUFBQUFBQURBQWxBT29BQVFBQUFBQUFEZ0F1QVE4QUF3QUJCQWtBQUFDYUFUMEFBd0FCQkFrQUFRQWFBZGNBQXdBQkJBa0FBZ0FPQWZNQUF3QUJCQWtBQXdBcUFkY0FBd0FCQkFrQUJBQXFBZGNBQXdBQkJBa0FCUUF1QWdFQUF3QUJCQWtBQmdBbUFpOEFBd0FCQkFrQUNRQStBbFVBQXdBQkJBa0FDZ0IrQXBNQUF3QUJCQWtBREFCS0F4RUFBd0FCQkFrQURnQmNBMXVwSURJd01Ea3NJREl3TVRBc0lESXdNVEVzSURJd01USXNJREl3TVRNZ1IzSmhibVFnUTJoaGIzTWdVSEp2WkhWamRHbHZibk11SUZOdmJXVWdVbWxuYUhSeklGSmxjMlZ5ZG1Wa0xrZHlZVzVrT1VzZ1VHbDRaV3dnVW1WbmRXeGhjbFpsY25OcGIyNGdNUzR3SUMwZ05TOHhNeTh5TURFelIzSmhibVE1UzFCcGVHVnNVbVZuZFd4aGNrcGhlWFpsWlNCRUxpQkZibUZuZFdGeklDaEhjbUZ1WkNCRGFHRnZjeWxVYUdseklHWnZiblFnZDJGeklHTnlaV0YwWldRZ2RYTnBibWNnUm05dWRFTnlaV0YwYjNJZ05TNDJJR1p5YjIwZ1NHbG5hQzFNYjJkcFl5NWpiMjFvZEhSd09pOHZaM0poYm1SamFHRnZjemt3TURBdVpHVjJhV0Z1ZEdGeWRDNWpiMjB2YUhSMGNEb3ZMMk55WldGMGFYWmxZMjl0Ylc5dWN5NXZjbWN2YkdsalpXNXpaWE12WW5rdGMyRXZNeTR3THdDcEFDQUFNZ0F3QURBQU9RQXNBQ0FBTWdBd0FERUFNQUFzQUNBQU1nQXdBREVBTVFBc0FDQUFNZ0F3QURFQU1nQXNBQ0FBTWdBd0FERUFNd0FnQUVjQWNnQmhBRzRBWkFBZ0FFTUFhQUJoQUc4QWN3QWdBRkFBY2dCdkFHUUFkUUJqQUhRQWFRQnZBRzRBY3dBdUFDQUFVd0J2QUcwQVpRQWdBRklBYVFCbkFHZ0FkQUJ6QUNBQVVnQmxBSE1BWlFCeUFIWUFaUUJrQUM0QVJ3QnlBR0VBYmdCa0FEa0FTd0FnQUZBQWFRQjRBR1VBYkFBZ0FGSUFaUUJuQUhVQWJBQmhBSElBVmdCbEFISUFjd0JwQUc4QWJnQWdBREVBTGdBd0FDQUFMUUFnQURVQUx3QXhBRE1BTHdBeUFEQUFNUUF6QUVjQWNnQmhBRzRBWkFBNUFFc0FVQUJwQUhnQVpRQnNBRklBWlFCbkFIVUFiQUJoQUhJQVNnQmhBSGtBZGdCbEFHVUFJQUJFQUM0QUlBQkZBRzRBWVFCbkFIVUFZUUJ6QUNBQUtBQkhBSElBWVFCdUFHUUFJQUJEQUdnQVlRQnZBSE1BS1FCVUFHZ0FhUUJ6QUNBQVpnQnZBRzRBZEFBZ0FIY0FZUUJ6QUNBQVl3QnlBR1VBWVFCMEFHVUFaQUFnQUhVQWN3QnBBRzRBWndBZ0FFWUFid0J1QUhRQVF3QnlBR1VBWVFCMEFHOEFjZ0FnQURVQUxnQTJBQ0FBWmdCeUFHOEFiUUFnQUVnQWFRQm5BR2dBTFFCTUFHOEFad0JwQUdNQUxnQmpBRzhBYlFCb0FIUUFkQUJ3QURvQUx3QXZBR2NBY2dCaEFHNEFaQUJqQUdnQVlRQnZBSE1BT1FBd0FEQUFNQUF1QUdRQVpRQjJBR2tBWVFCdUFIUUFZUUJ5QUhRQUxnQmpBRzhBYlFBdkFHZ0FkQUIwQUhBQU9nQXZBQzhBWXdCeUFHVUFZUUIwQUdrQWRnQmxBR01BYndCdEFHMEFid0J1QUhNQUxnQnZBSElBWndBdkFHd0FhUUJqQUdVQWJnQnpBR1VBY3dBdkFHSUFlUUF0QUhNQVlRQXZBRE1BTGdBd0FDOEFBQUFBQWdBQUFBQUFBUDhuQUpZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRFpBQUFBQXdBRUFBVUFCZ0FIQUFnQUNRQUtBQXNBREFBTkFBNEFEd0FRQUJFQUVnQVRBQlFBRlFBV0FCY0FHQUFaQUJvQUd3QWNBQjBBSGdBZkFDQUFJUUFpQUNNQUpBQWxBQ1lBSndBb0FDa0FLZ0FyQUN3QUxRQXVBQzhBTUFBeEFESUFNd0EwQURVQU5nQTNBRGdBT1FBNkFEc0FQQUE5QUQ0QVB3QkFBRUVBUWdCREFFUUFSUUJHQUVjQVNBQkpBRW9BU3dCTUFFMEFUZ0JQQUZBQVVRQlNBRk1BVkFCVkFGWUFWd0JZQUZrQVdnQmJBRndBWFFCZUFGOEFZQUJoQVFJQW93Q0VBSVVBbGdEb0FJNEFpd0NwQUtRQWlnQ0RBSk1BalFDWEFJZ0F3d0RlQUtvQW9nQ3RBTWtBeHdDdUFHSUFZd0NRQUdRQXl3QmxBTWdBeWdEUEFNd0F6UURPQU9rQVpnRFRBTkFBMFFDdkFHY0E4QUNSQU5ZQTFBRFZBR2dBNndEdEFJa0FhZ0JwQUdzQWJRQnNBRzRBb0FCdkFIRUFjQUJ5QUhNQWRRQjBBSFlBZHdEcUFIZ0FlZ0I1QUhzQWZRQjhBTGdBb1FCL0FINEFnQUNCQU93QTdnQzZBUDhCQUFFREFRUUJCUUVHQU5jQkJ3RUlBTEFBc1FFSkFRb0E1QURsQVFzQkRBRU5BUTRBdXdEbUFPY0FwZ0N6QUxZQXR3REVBTFFBdFFERkFJSUFod0NyQUw0QXZ3RVBBSXdIZFc1cE1EQkJNQVpFWTJGeWIyNEdaR05oY205dUJrVmpZWEp2YmdabFkyRnliMjRHVG1OaGNtOXVCbTVqWVhKdmJnWlNZMkZ5YjI0R2NtTmhjbTl1QmxSallYSnZiZ1owWTJGeWIyNEZWWEpwYm1jRmRYSnBibWNFUlhWeWJ3QUFBQUFCLy84QUFnPT0ifSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz0iVDFSVVR3QUpBSUFBQXdBUVEwWkdJRGJWc1FFQUFBOGtBQUJDNzA5VEx6SmlFd0pBQUFBQkFBQUFBR0JqYldGd091Slo1UUFBQytBQUFBR1NhR1ZoWkJnSm9BTUFBQUNjQUFBQU5taG9aV0VGVEFDZkFBQUExQUFBQUNSb2JYUjRjTmNEZEFBQURYUUFBQUdRYldGNGNBQmtVQUFBQUFENEFBQUFCbTVoYldXN0VBQ3dBQUFCWUFBQUNuMXdiM04wLzRnQUZBQUFEd1FBQUFBZ0FBRUFBQUFEQUVLczgxM2hYdzg4OVFBREErZ0FBQUFBMjJNbFhnQUFBQURiWkRoQy82LytJUUo2QXlBQUFBQURBQUlBQUFBQUFBQUFBUUFBQXlEK0lRQUFBbnovci8rZEFub0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFHUUFBRkFBQUdRQUFBQURBU0FCa0FBRkFBQUN2QUtLQUFBQWp3SzhBb29BQUFIRkFESUJBd0FBQUFBRUFBQUFBQUFBQUlBQUFBTUFBQUFBQUFBQUFBQUFBQUJVV1ZCUEFFQUFBQ0FtQXUvK0lRQUFBdThCM3dBQUFBRUFBQUFBQWFJQzBnQUFBQ0FBQUFBQUFCd0JWZ0FCQUFBQUFBQUFBRGNBQUFBQkFBQUFBQUFCQUEwQU53QUJBQUFBQUFBQ0FBY0FSQUFCQUFBQUFBQURBQ0FBU3dBQkFBQUFBQUFFQUJVQWF3QUJBQUFBQUFBRkFBMEFnQUFCQUFBQUFBQUdBQlVBalFBQkFBQUFBQUFJQUE4QW9nQUJBQUFBQUFBSkFBOEFzUUFCQUFBQUFBQUtBZXdBd0FBQkFBQUFBQUFNQUJzQ3JBQUJBQUFBQUFBT0FESUN4d0FCQUFBQUFBQVFBQTBDK1FBQkFBQUFBQUFSQUFjREJnQURBQUVFQ1FBQUFHNEREUUFEQUFFRUNRQUJBQm9EZXdBREFBRUVDUUFDQUE0RGxRQURBQUVFQ1FBREFFQURvd0FEQUFFRUNRQUVBQ29ENHdBREFBRUVDUUFGQUJvRURRQURBQUVFQ1FBR0FDb0VKd0FEQUFFRUNRQUlBQjRFVVFBREFBRUVDUUFKQUI0RWJ3QURBQUVFQ1FBS0E5Z0VqUUFEQUFFRUNRQU1BRFlJWlFBREFBRUVDUUFPQUdRSW13QURBQUVFQ1FBUUFCb0kvd0FEQUFFRUNRQVJBQTRKR1ZKbGJHVmhjMlZrSUdsdUlESXdNakFnZFc1a1pYSWdRME13SUd4cFkyVnVjMlV1SUU1dklISnBaMmgwY3lCeVpYTmxjblpsWkM1WWRISmhabXhsZUdsa2FYTmpVbVZuZFd4aGNqTXVNREF4TzFSWlVFODdXSFJ5WVdac1pYaHBaR2x6WXkxU1pXZDFiR0Z5V0hSeVlXWnNaWGhwWkdsell5MVNaV2QxYkdGeVZtVnljMmx2YmlBekxqQXdNVmgwY21GbWJHVjRhV1JwYzJNdFVtVm5kV3hoY2xKaGVXMXZibVFnVEdGeVlXSnBaVkpoZVcxdmJtUWdUR0Z5WVdKcFpWUm9hWE1nWm05dWRDQm9ZWE1nWW1WbGJpQnlaV3hsWVhObFpDQjFibVJsY2lCaElOSnVieUJ5YVdkb2RITWdjbVZ6WlhKMlpXVFRJRU55WldGMGFYWmxJRU52YlcxdmJuTWdXbVZ5YnlCc2FXTmxibk5sTGlBZ1VHeGxZWE5sSUdSdmJ0VjBJR0Z6YXlCd1pYSnRhWE56YVc5dUlIUnZJR1J2SUdGdWVYUm9hVzVuSUhkcGRHZ2dkR2hsYzJVZ1ptOXVkSE11SUZkb1lYUmxkbVZ5SUhsdmRTQjNZVzUwSUhSdklHUnZJSGRwZEdnZ2RHaHBjeUJtYjI1MExDQjBhR1VnWVc1emQyVnlJSGRwYkd3Z1ltVWdlV1Z6TGlCUWJHVmhjMlVnY21WaFpDQmhZbTkxZENCMGFHVWdRME13SUZCMVlteHBZeUJFYjIxaGFXNGdiR2xqWlc1elpTQmlaV1p2Y21VZ1kyOXVkR0ZqZEdsdVp5QnRaUzRnYUhSMGNITTZMeTlqY21WaGRHbDJaV052YlcxdmJuTXViM0puTDNCMVlteHBZMlJ2YldGcGJpOTZaWEp2THpFdU1DOGdWRzhnZEdobElHVjRkR1Z1ZENCd2IzTnphV0pzWlNCMWJtUmxjaUJzWVhjc0lGSmhlVzF2Ym1RZ1RHRnlZV0pwWlNCb1lYTWdkMkZwZG1Wa0lHRnNiQ0JqYjNCNWNtbG5hSFFnWVc1a0lISmxiR0YwWldRZ2IzSWdibVZwWjJoaWIzSnBibWNnY21sbmFIUnpJSFJ2SUhSb2FYTWdabTl1ZEM0Z1ZHaHBjeUIzYjNKcklHbHpJSEIxWW14cGMyaGxaQ0JtY205dElFcGhjR0Z1TG1oMGRIQnpPaTh2ZEhsd2IyUmxjbTFwWTJadmJuUnpMbU52YldoMGRIQnpPaTh2WTNKbFlYUnBkbVZqYjIxdGIyNXpMbTl5Wnk5d2RXSnNhV05rYjIxaGFXNHZlbVZ5Ynk4eExqQXZXSFJ5WVdac1pYaHBaR2x6WTFKbFozVnNZWElBVWdCbEFHd0FaUUJoQUhNQVpRQmtBQ0FBYVFCdUFDQUFNZ0F3QURJQU1BQWdBSFVBYmdCa0FHVUFjZ0FnQUVNQVF3QXdBQ0FBYkFCcEFHTUFaUUJ1QUhNQVpRQXVBQ0FBVGdCdkFDQUFjZ0JwQUdjQWFBQjBBSE1BSUFCeUFHVUFjd0JsQUhJQWRnQmxBR1FBTGdCWUFIUUFjZ0JoQUdZQWJBQmxBSGdBYVFCa0FHa0Fjd0JqQUZJQVpRQm5BSFVBYkFCaEFISUFNd0F1QURBQU1BQXhBRHNBVkFCWkFGQUFUd0E3QUZnQWRBQnlBR0VBWmdCc0FHVUFlQUJwQUdRQWFRQnpBR01BTFFCU0FHVUFad0IxQUd3QVlRQnlBRmdBZEFCeUFHRUFaZ0JzQUdVQWVBQnBBR1FBYVFCekFHTUFMUUJTQUdVQVp3QjFBR3dBWVFCeUFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBekFDNEFNQUF3QURFQVdBQjBBSElBWVFCbUFHd0FaUUI0QUdrQVpBQnBBSE1BWXdBdEFGSUFaUUJuQUhVQWJBQmhBSElBVWdCaEFIa0FiUUJ2QUc0QVpBQWdBRXdBWVFCeUFHRUFZZ0JwQUdVQVVnQmhBSGtBYlFCdkFHNEFaQUFnQUV3QVlRQnlBR0VBWWdCcEFHVUFWQUJvQUdrQWN3QWdBR1lBYndCdUFIUUFJQUJvQUdFQWN3QWdBR0lBWlFCbEFHNEFJQUJ5QUdVQWJBQmxBR0VBY3dCbEFHUUFJQUIxQUc0QVpBQmxBSElBSUFCaEFDQWdIQUJ1QUc4QUlBQnlBR2tBWndCb0FIUUFjd0FnQUhJQVpRQnpBR1VBY2dCMkFHVUFaQ0FkQUNBQVF3QnlBR1VBWVFCMEFHa0FkZ0JsQUNBQVF3QnZBRzBBYlFCdkFHNEFjd0FnQUZvQVpRQnlBRzhBSUFCc0FHa0FZd0JsQUc0QWN3QmxBQzRBSUFBZ0FGQUFiQUJsQUdFQWN3QmxBQ0FBWkFCdkFHNGdHUUIwQUNBQVlRQnpBR3NBSUFCd0FHVUFjZ0J0QUdrQWN3QnpBR2tBYndCdUFDQUFkQUJ2QUNBQVpBQnZBQ0FBWVFCdUFIa0FkQUJvQUdrQWJnQm5BQ0FBZHdCcEFIUUFhQUFnQUhRQWFBQmxBSE1BWlFBZ0FHWUFid0J1QUhRQWN3QXVBQ0FBVndCb0FHRUFkQUJsQUhZQVpRQnlBQ0FBZVFCdkFIVUFJQUIzQUdFQWJnQjBBQ0FBZEFCdkFDQUFaQUJ2QUNBQWR3QnBBSFFBYUFBZ0FIUUFhQUJwQUhNQUlBQm1BRzhBYmdCMEFDd0FJQUIwQUdnQVpRQWdBR0VBYmdCekFIY0FaUUJ5QUNBQWR3QnBBR3dBYkFBZ0FHSUFaUUFnQUhrQVpRQnpBQzRBSUFCUUFHd0FaUUJoQUhNQVpRQWdBSElBWlFCaEFHUUFJQUJoQUdJQWJ3QjFBSFFBSUFCMEFHZ0FaUUFnQUVNQVF3QXdBQ0FBVUFCMUFHSUFiQUJwQUdNQUlBQkVBRzhBYlFCaEFHa0FiZ0FnQUd3QWFRQmpBR1VBYmdCekFHVUFJQUJpQUdVQVpnQnZBSElBWlFBZ0FHTUFid0J1QUhRQVlRQmpBSFFBYVFCdUFHY0FJQUJ0QUdVQUxnQWdBR2dBZEFCMEFIQUFjd0E2QUM4QUx3QmpBSElBWlFCaEFIUUFhUUIyQUdVQVl3QnZBRzBBYlFCdkFHNEFjd0F1QUc4QWNnQm5BQzhBY0FCMUFHSUFiQUJwQUdNQVpBQnZBRzBBWVFCcEFHNEFMd0I2QUdVQWNnQnZBQzhBTVFBdUFEQUFMd0FnQUZRQWJ3QWdBSFFBYUFCbEFDQUFaUUI0QUhRQVpRQnVBSFFBSUFCd0FHOEFjd0J6QUdrQVlnQnNBR1VBSUFCMUFHNEFaQUJsQUhJQUlBQnNBR0VBZHdBc0FDQUFVZ0JoQUhrQWJRQnZBRzRBWkFBZ0FFd0FZUUJ5QUdFQVlnQnBBR1VBSUFCb0FHRUFjd0FnQUhjQVlRQnBBSFlBWlFCa0FDQUFZUUJzQUd3QUlBQmpBRzhBY0FCNUFISUFhUUJuQUdnQWRBQWdBR0VBYmdCa0FDQUFjZ0JsQUd3QVlRQjBBR1VBWkFBZ0FHOEFjZ0FnQUc0QVpRQnBBR2NBYUFCaUFHOEFjZ0JwQUc0QVp3QWdBSElBYVFCbkFHZ0FkQUJ6QUNBQWRBQnZBQ0FBZEFCb0FHa0Fjd0FnQUdZQWJ3QnVBSFFBTGdBZ0FGUUFhQUJwQUhNQUlBQjNBRzhBY2dCckFDQUFhUUJ6QUNBQWNBQjFBR0lBYkFCcEFITUFhQUJsQUdRQUlBQm1BSElBYndCdEFDQUFTZ0JoQUhBQVlRQnVBQzRBYUFCMEFIUUFjQUJ6QURvQUx3QXZBSFFBZVFCd0FHOEFaQUJsQUhJQWJRQnBBR01BWmdCdkFHNEFkQUJ6QUM0QVl3QnZBRzBBYUFCMEFIUUFjQUJ6QURvQUx3QXZBR01BY2dCbEFHRUFkQUJwQUhZQVpRQmpBRzhBYlFCdEFHOEFiZ0J6QUM0QWJ3QnlBR2NBTHdCd0FIVUFZZ0JzQUdrQVl3QmtBRzhBYlFCaEFHa0FiZ0F2QUhvQVpRQnlBRzhBTHdBeEFDNEFNQUF2QUZnQWRBQnlBR0VBWmdCc0FHVUFlQUJwQUdRQWFRQnpBR01BVWdCbEFHY0FkUUJzQUdFQWNnQUFBQUFBQUFNQUFBQURBQUFCSWdBQkFBQUFBQUFjQUFNQUFRQUFBU0lBQUFFR0FBQUFBQUFBQUFBQUFBQUJBQUFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTERBME9EeEFSRWhNVUZSWVhHQmthR3h3ZEhoOGdJU0lqSkNVbUp5Z3BLaXNzTFM0dk1ERXlNelExTmpjNE9UbzdBRHdBQUQwQVBqOUFRVUpEUkVWR1IwaEpTa3RNVFU1UFVGRlNVMVJWVmxkWUFGbGFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUZ3QUFBQUFBQUJiQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJoQUFBQUFBQUFBQUJmWUYxZUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQWNBQUFBQmdBRUFBREFBZ0FXZ0JjQUY4QWV3QitBTVlBM3lBUUlCa2dIU0FtLy84QUFBQWdBRndBWHdCaEFIMEF4Z0RmSUJBZ0dDQWNJQ2IvLy8vaC8rRC8zdi9kLzl6L2xmOTkzLzdnUmVCRDREc0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZlFBUHdDbUFBQUFvZ0EzQVFZQUdnR2ZBQVVCbmdCK0FlRUFQUUlJQUdZQWpBQWFBTzRBREFEcUFBd0J1UUE3QWNjQUZBRGJBRWdCUmdBUUFLRUFIUUdPLys0QldBQVdBUHNBT1FFS0FBc0JJUUFHQVFvQUlRRXZBQWdCU0FBK0FTRUFPd0ZNQUJZQkp2LzFBSDRBSFFDdkFFQUFtZ0FUQVRRQUVBREZBQTRCQWdBTEFXMEFEd0UwLytzQTd2Ly9BU0FBQWdFVEFBQUJBd0FTQVBILzVBRm1BQ0lCTnYva0FNa0FGUUUxQUFrQlhnQVBBVWNBQ1FGdC85d0JWLys4QVZrQUZnRU4vLzBCYlFBUkFTWC93QUVuQUEwQkpnQU9BWHNBRGdFZi8vNEIzLy90QVc4QURBRlBBQkFCUXYvMkFidi83QUhSQUFVQXl3QUxBTi8vK0FFVEFDRUEyUC81QVBvQUdBRGNBQTRCSWYvOUFPdi92QUNXLy93QWUvK3ZBT24veWdDTi8rRUJQZi9oQU9ML3dBRUMvLzBBLy8rK0FRQUFFQUR0Ly93QTZnQVZBTVQvK2dFSi8vWUErdi9sQVVYLzhBRlgvKzBBMC8rOUFSTUFFZ0ZlLy9vQlVBQkRBUk1BRlFKOEFDSUJ4QUFlQUlnQUdnQ0lBQm9CRWdBWkFRWUFHZ0cxQUNzQXBnQUFBQUFBQUFBREFBQUFBQUFBLzRVQUZBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFFQWdBQkFRRVdXSFJ5WVdac1pYaHBaR2x6WXkxU1pXZDFiR0Z5QUFFQkFTNzRFQUQ0SFFINEhnd0ErQjhDK0NBRCtCZ0UreGtNQTU4TUJEcjhjL2tPK2JRRitVd1ArWG9Sa1J4QzZSSUFCZ0lBQVFBREFBZ0FQd0kwQWtrQ1ZrTlNMbTUxYkd4U1pXeGxZWE5sWkNCcGJpQXlNREl3SUhWdVpHVnlJRU5ETUNCc2FXTmxibk5sTGlCT2J5QnlhV2RvZEhNZ2NtVnpaWEoyWldRdVZHaHBjeUJtYjI1MElHaGhjeUJpWldWdUlISmxiR1ZoYzJWa0lIVnVaR1Z5SUdFZ1hESXlNMjV2SUhKcFoyaDBjeUJ5WlhObGNuWmxaRnd5TWpRZ1EzSmxZWFJwZG1VZ1EyOXRiVzl1Y3lCYVpYSnZJR3hwWTJWdWMyVXVJQ0JRYkdWaGMyVWdaRzl1WERJeU1uUWdZWE5ySUhCbGNtMXBjM05wYjI0Z2RHOGdaRzhnWVc1NWRHaHBibWNnZDJsMGFDQjBhR1Z6WlNCbWIyNTBjeTRnVjJoaGRHVjJaWElnZVc5MUlIZGhiblFnZEc4Z1pHOGdkMmwwYUNCMGFHbHpJR1p2Ym5Rc0lIUm9aU0JoYm5OM1pYSWdkMmxzYkNCaVpTQjVaWE11SUZCc1pXRnpaU0J5WldGa0lHRmliM1YwSUhSb1pTQkRRekFnVUhWaWJHbGpJRVJ2YldGcGJpQnNhV05sYm5ObElHSmxabTl5WlNCamIyNTBZV04wYVc1bklHMWxMaUJvZEhSd2N6b3ZMMk55WldGMGFYWmxZMjl0Ylc5dWN5NXZjbWN2Y0hWaWJHbGpaRzl0WVdsdUwzcGxjbTh2TVM0d0x5QlVieUIwYUdVZ1pYaDBaVzUwSUhCdmMzTnBZbXhsSUhWdVpHVnlJR3hoZHl3Z1VtRjViVzl1WkNCTVlYSmhZbWxsSUdoaGN5QjNZV2wyWldRZ1lXeHNJR052Y0hseWFXZG9kQ0JoYm1RZ2NtVnNZWFJsWkNCdmNpQnVaV2xuYUdKdmNtbHVaeUJ5YVdkb2RITWdkRzhnZEdocGN5Qm1iMjUwTGlCVWFHbHpJSGR2Y21zZ2FYTWdjSFZpYkdsemFHVmtJR1p5YjIwZ1NtRndZVzR1V0hSeVlXWnNaWGhwWkdsell5MVNaV2QxYkdGeVdIUnlZV1pzWlhocFpHbHpZd0FBQVFBQkJnQm9BQUFKTWdBOUFBQkFBQUJDR2dCZUFRQ0tBQUNWQUFCQkFBQUlBQUJwQUFCM0FBQjVBQUdIQVFCa0FnQUJBQmtBR3dCckFPd0NNd05TQkRNRlRnV1BCZUlHTWdjY0I2b0g2d2dhQ0RrSWVna1BDWUFLSUFyRkM1OE1XQXo4RFg0T1JBN2FEeUlQZncrMEVBb1FVeERXRWIwU2tSTTZFNzRVY0JWZUZsVVhOaGcxR0tnWlFocGhHdlViL2h5OEhWOGVDQjdTSDdjZ2J5RWVJZDRpYWlNK0pCc2s1eVdYSmZjbUx5YmNKNVlvSGlqY0tXRXFIaXNPSytZc2JpMGdMZm91YVMrS01FQXd3REdWTWwweS9ETzBOR3cxT2pYU05wczNtVGhkT1BvNXhEcHBPdEk4WmoxU1BaQTkwVDVLUHNzL01qODBQemYzbGZoS0Z2bTAvQXY5dEFmSitYWVY5NDc5Ti91T0JnNCtEanIzRy9rU0ZaNkhnSlY1RzRTRWlZZURINGQ0aGxxRk93aUdRNGhjZEJxS2k0R0tlQjZLZVl0N2ZScjdDNXhPcllnZW5wV1Y5MFQzNmhxTS9PNFZuM3ViZDNkN2UzZDNtM3VmbjV1Ym54NE9udmQ1K040VmpJaU1pWWthaElTQWZud2VmbnlGZ1lRYWlJeUpqSWdlbzVLZm5KeW1DSnltbEtlbUdyWjJvR0tGaFl1S2hSNXdoMzUvZGhwc3FtZXdmeDc3RzRJVmpJaU1pWWdhaFlhQ2dYOGVnWCtHZ29VYWlJeUlqSWdlb3BLZm01cWxDSnVsazZXbUdybDFvbCtGaFl1S2hSNXdoMzUrZEJwcXFtT3dmeDRPOTBENFVQaGxGWkdHZ1k1K2dIT0lnaHVHaG95TWlCK0hrb21UbEJxVmpwMlNwUjZTcG82ZW1CcVRpcEtLa1I1eWducDNnMnA1T2hod2dYZCtiUnVDZ0l5T2dCK0dqSWlRbEJxUWpaaU9uaDZQbm8yYWxScVlpWldHa2g1NGhYMTJoR2VDWUlKeGdZQ0VoSGlFYTRadWgzdURoNEFJZ3BLVmg1ZVhxSk9XRzVDUGlvbVBINUNBam9LQ0duaDRmV1NCSG1DQWM0R0dnZ2lFa3BPSWxKaXNtSmNibEpLSWhaQWZqSWlNaDRjYWdvbUFobndlaFhpSWdZZ2Fpb1NGYzRKaENJWnhpSGlBR24yUGdwS0dIcHFLbFkyUWtKZWlsSytSdnBLK2s2MlVucHlycUo2MWtRaU5pSXlHaEJwN2dtTjZTaDU2U29KZWluS1VncFNIa295WGxwaXNtc0twOXd3WWxibVVzcUdVcjVRWmxvNlNqNHlTZEpKN2pZR0pDSVNXaUpXVEdwcWJsNnFTSHJDVW9aS1JrZ2o3TjBjVmFuRjZXSDJFa3Bpb3BLYXZuSitCZXg0Tzl6LzRBL2lRRllpY2hKbUFsR3FmR0pMQ2pxV0lHcDJGbG42UUhvS09objJJYkloT0dHVjFqSTJNazR5WkdZeWJpWmVJbElTZ2dKVjhpUWlGaW9pR2hCcVdZSkJzaVhkNWZCaDJkSUZ4YkJwUXJpN1IreEllbUhPU2RYY2FlSVI0Zm5rZWdIeDhoSGlNZm94L2pZR1BkNWFEbkk2aUNJYU9qNG1PRzQ2UGo1S1BINDZZalpPT0dxS0tnNWQ4RzN5QWduaUNINFY0aUh4L0duZVVkcDUwSHBsN0JZSnZoM21ER25tUmdwZWFsSmVpakI2TWtvdVJraHFWajVDUWtSdVNqNGlFYVpGNm1Jd2ZsSktSbG84ZmpaQ01rNHFWQ0lxV2lwS01HcHFXbHBTUmt3aWpxWmVzcmhxWGlaZUlseDZDcDNTK1pOWnF5SHU3aXEyTnJKdWpxcHdJazVxYWo1Z2JtNWFHZ3BJZmZvS0ZlbklhZEpGL21KNmpxc0tESGc3M2d2ZTErTklWeG9ocnFGQWJabXQvYzNFZmNuUi9iWTVuajB5OVpNaVEwSkMyeElmVENQZFA5eEFWZUkxaldYaGtPUHNLUXZzRlNpQUlQdnNWWkRwc0duK1JoWmljb2FPOHBoN085eEN1djdqU3d1WVp3T0t5eWFTd0NLQ3BsYUdhR3BlRWtuNk1IbzM4d3hXS3dIR25XSkJpam1tQmJuUnVkSDFzakdRSVRMbGd5NHdlcjR5b21xQ25ucVdWcklxeUNQdDUrRUVWY29WM2dId2VlWDU2Z25RYllJeDBuNGF5aUtTVG9aNmNucDJoazZhSUNLeUltM2RtR3ZkYy9Fb1ZqMWhxWkZ1S1k0aHJwNGV5aUtXVm9LS2JvSnFqa2FpSXFvZWJlWTFyQ0E3M3FmZzh2eFdPbUl1VWlwQ0tqb2lOaUlwOGlIbWhkcm1FbW9LaWdLeW4wWnV4ajVDYXJKT2ppcG9JcElxRW1JQWJnSDEwWEhvZmdXNkJiWUJ1WU9RWWxKeVFsbzZTbzhXWnNKQ2JDSktqanFHZkdzSjV0V2lwSG55WWU1QjZpSEdHZG5oN2JIMXdoVzZNYm8xVm1sT25VS0ZmR0dwbUJVNUZiRXBPR25hT2RaSnpIbFNicEcrdUc1Q1BqSXlRSDdxVG9adWp1SktYa1oyUW80NldqWldNbFoxV0dGcWduM09lRzVxVWxhQ09IL3NTK0owVmpIcUllb1o1aUlHSmdZbUNobngvY25scGc1cUdsSW1RQ0hhN2dMU3RHcGVObW82ZUhvK1lrcG1VbXBTYWs1T1NqSmFObG4rV2NKUnpqM09NY3doNS9Ea1ZkVWgxYUhXSWU0bDhsbnlpZmFPRXBJcW1DSjZTbzVxb0hxaXlwYXFob3JyN0VSZ09KT240MVJXTWlJeUppQnFGaG9LQmZ4NkJmNGFDaFJxSWpJaU1pQjZpa3ArYm1xVUltNldUcGFZYXVYV2lYNFdGaTRxRkhuQ0hmbjUwR21xcVk3Qi9IZzZHOTVQNVNCV1doSkoralI2S2dvR0xnaHQralhOc2FFcHdXSFpmZkdRSVl5SjNMRGNhK3kvT0lmY2FVUjZkQjBDNlhkTjY3Z2lIb0ltaG9ocjNBcW4zQjhmM0RSNllwYUN0cUxZSW9hdVduNVFhRG9MM05QaWhGYU5NbDB0S0d2c3RUL3NrK3czN0dSNkpoNHFIaHhxQ2tJV1ZoeDZUaUpTTGxJd0k5eGIzRTh6M0pmYzNHdmNUWlBjVFB2Y1RIcHlBZnBOOEc0ZUhpb3FJSDY0M3BVNmNaQWdPOTFyNFpmZWhGWkNXalpTU0dwaUJrWGdlZ0dxSWZCdDJlWkNVZkI5NmxvS2FvQnFjb1oyMm5oNjJuNkdlbkJxWWdadDNuaDZTaElTT2hCdUFmMzl6Zmg5blJBVnllM2wvZUJ0M2U1bW5maCtDcFlHbGdhWUlwb0YrbVhvYmc0S0loSUFmZTRHRGdZQWFmcUIwdFdvZXRXcWdjWFlhaG9xSGlZWWVoWGg3Z0hDR2RJcDBpWFNKQ0hTS2dJU0FHb2lNaDR5R0huQ1ZsMzZhRzVhZWxxQ2tINkNrbnBhWUc1Q1JpWWlRSDZGK2tuU0VhM1krR0hPSW1YK29HNlNZbEo2VWhwNkFxQitBcUlhaG1ScWNrWmVYbEI2UWtKR05raHVab0g1eHFCOXlxSjkrbHh1WWxaV2VreDhPOTJqNFYvZ0RGWlo2a0dwNFhZYUFRQjZLb0k2aWtxU09rNHFoaDdDSHNJV2VoSW9JYTRwN2NWa2Flb3g4akg0ZWpYK01jbVFhaEloN2luQ01DSTVoYzR5RUczaDdpWWlBSDM2R2hZT0FHb1NOaEkrRUhuK1Vub1duRzZlemtwaStINDB0QlZlT25IU2NHNkNWbWFhWWlLQ0dxQitHcVlpZWtocWVqcDJObm8yd2tLaVNvcE1JclppY2w1WWFEblAzSUgwVmpZaU1pWWdhaFlhQ2dIOGVnWCtHZ29VYWlJeUpqWWdlb3BHZW01cWxDSnVsazZXbUdycDFvbCtHaFlxS2hCNXdoMzUrZEJwcnEyS3ZmeDRPM3ZmeCtBd1Zrb045ajNZYmZIV0pobTRmaFdsM2lJWWIrd0dEYW9kNGdvZDhHWDZVcElXekcrVGhuN1BmSHc0NTl4ZWVGWXF3ZUoxbWlteUtmSUNNZFl4aG5uYXdqQWluakp5Zm9Cb085eS80UHZrbUZZaWdoNUtHaEVBeFN6eFhTUHNKK3k0Nyt4cGcrd2VLaDQySWtvcVNpbzZNakk2MTNMbll2TlN5eGJyTHd0SDNJZmRGR0k2UWpaS1dHZzd3OSt2NEhCV1BxSTJzc0JyM00yVGFQb0tCaW9pQkhtaUNiSEJ5WFhocWUyQitWNFZ1aFcrRWJ3aDdTb05NVEJvN21VdW5XaDZYZDUxOW80U1NpWitIcklYRnFiWEdwZVNVcUpqVW5QY0xDRmIzUEJXTk5ZWXlmekI1K3gxc04xOXNDRXFKYTc3ekdwbU1ub3lqSG95ampKdVRHcmFXektIa0hxYjBwc2VubWdpT2tKR01rQnVlbkhwcW1oK1hjSkZ6akhjSURwUDNqUGsrRlo1L1ZwZGZHM1ovaVlhR0g1S0VuNFNzaHFpSG1vR05lNDUxZ2pKMit6RmorNndZaUdpSmZJZUFoWVFaaFloOWkzV09lbzZEaG9wK0NIcS90b0tzRzZDYmo1T1ZIM2lZZlpPQmp3aUtsSXFVbGhxZGtMYVV6aDY1K0FpU3JnV09tNDJZbFJxYmg1bUVseDRPb3ZlcCtMZ1ZrSnlPbko0YXFJU2tmcDRlcVhadW1tY2JiRzZBZFhJZmNuVjliNGxxQ0dlSXBHdXFHNUtUalkrU0g1MldsSmljR3FSMW9uT0lIcktpcHA2cUc2NmNkRnhTYlVOT01oOHQreDFjK3hxTSt4Y0lnNUtkaDZjYnBxdU9rcThmckpHY2tJMk9DSkNUalpPVUdwU0lrNFNSSG5SNGRIOXZmbTZQZ0J1RmhvcUtoaCtKbUlxWG1CcTdtc0tveWg2WXBxbkR1OTZ5enFTL2w3QUlEcm4zbmZsT0ZaaHlaNUZiRzJwd2lJVjFINFJxaUhSOEdtNlVmWnlPSHBXU2taaU1ub3lla1ptVWxBakVqNmlIZmhwL2MzVmFha0psTlhoZGpJU2JoS09EcklTamhweURsb0NhZkpadmxHTUlqbitNZm4wYVczNWdjV1FlWW5CcWQyVWJjRytYb204ZmtJYUhqWWNiaEllR2dYaVpmcWFESDdKL3NJaXZrYmFTcnFLa3NnaWhyNWExdkJxK2Y3aHlzaDV3dG1la1haU0ttSjY2czkyMDNwNjhpWndJRHFMM252bFBGWU9RaEk2RWlvT0lnbWFBUm5iN0l4aUZYZ1ZqaElDSWN4dHNlWkdZaHgrSHFKUEZuK0dlM1ptNmxwaDBrSUNPakl5SWlvbUppSWgrYzRCeWduRjhZbjVjZ0ZjSWdGcUdaWElhaEl5R2pJZ2VmWldlaEtjYm5RYU1rcEdManh1bW00TjZrUitNaUl1R2d4cHVoMXlDU0I2Q1NJVmxob0tIZ29HRWU0Y0lmSWlEaG9ZYWlZeUlqWWdlaWFPZWlwZ2J1S1NQazVFZmtwU0hrbjZTQ0lLUWhwQ1NHb3lpanJlU3lwTExrTGVRbzR5UGtKS1VscFdXa0pPS2tBaUNsb2FockJxa2o3V1N4aDZUeG8rMG9CcVdpcFNLa2g0T3gvZTc5eUVWbjZlVnJiUWFyWVNxZktZZWVxbHlvR3lYY1pWcmttV09iNDU4ajRtUnJQY25udHVTbUFpUWw1V05reHVlbDNwcGpoK1BaNVIzbUljSWxwU1d0cXdhdW5XUmJJb2VkNHAvaklhTUNKSnRlNCtJRzRhR2lvcUlINENHZzNDRldvTktoR0NFZDNoT2dHV0llZ2graUpPRW5SdVZtWTJQbkIrbWt3V01rWkdMa1J1d3EzeHNxQitvYlpscFpScHFmMjV5Y2g1cGFGOW5WV2hXYUdseWZYd0locEtUaVpVYnJyeWl1c2tmd3JTeHI2S3JDQTdnOS9MNVN4V0Vrb09QZzRwd2lHbHNZRkpsV1d4VWMwNkFibmhTY0RVSWhIS0hiMnNhVjVWZm5tZ2VvbUdzZDdlTXFveWtuSjZ1Q0p1cWs2eXZHcGFLbG9tVUh1SjRaYmRRRzRGL2lvaDhINU8zbkwybHc2WERwYmltckora29hS2lvUWlhbVpPVWpocU5pbzJLakI0ci9LWVZjSVZ5Z0hJZWJYNTVmSFliYm5XWXBIc2ZmYUNFcHFvYXBwS2ttS0llcFpxZm1LSWJuNTEvY3BzZm5IS1RjM1FhRHJuMzRQazFGWWlUZHBGbGtDK1JHSWFNZ1kxOWp3aVFmWUdOaFJ1RWhvbUlpQitEaElSNmhuRUlobkdJY1hFYWE0OTNrNEllblpLV25aQ21tdDBZa282Vmpwd2JsNjZHZ3NVZlEvc2xYQ2gyVm1JbGRDMkdOWWRqaW02T2VRaUFqWktGbHh1ZGxKS1p3cExMbU5JZm1kcWR5cUs2dU91ejJxN0ttcWFVbzQrZUNBN2s5OXozcWhXTW5vV2lmcWQrcUgyZmVwaWZtNTJtbTdFSW5MR1RzSzRhMVdpdlJZZ2Vhb3B5ZW5sb0NIeHRnMlZlR2x5VFlwcHBIa0ZNWDA1K1VBaUVhb2RzYlJva3QxbmpqUjd4cThYcW1mY3pDRVQ0SEJXcWlwcDFZUnB1aEd0OGFSNTlhbnB6ZUgwSWQzeHhvOWdhc1pHc2xxWWVtS3lkbXFPS0NLajhReFdBV1gxZmVHVnlXbkJzYm9CbWluR1ZmSjhJZ0pxRnBhNGFsb3liako4ZWpLeVZyNTZ4cEw2cnJiU2NDSTZTa295U0c2Q2RmWENaSDVoMGtYRnZHb0tLZzRtRUhnNis5NnY0T1JXazJwZkt1QnJRY2E1WFlXRnhWMkVlWmx4MFhvUmVDSWwraW4rQ0dsMm9aOFZ4SHBLSW1JdWVqWnlPbDRtUmhYaGNibE5pU1BzTSsxRVloSUdOZ3BhQ21ZaVVqSTZRdDc2ODFNRHN2K3F2Mlo3SkNILzNGUldLYW9KcGVtcDBYbTExWkl3SVlJeDJvYmNhbUkyY2o1NGVrS2VjcmFpeXE3YW9vNldQQ0tpUG1YWmVHb0tLZjRwOUhvcDlpb09JR2c3N0NmY2ErRElWanBxSG1uNllDSmgvZlpKOEczQjNjM0JxcUhDc2toK2hrSmlZa0tJSWlQczhGWTZhaDVsK21BaVpmMzJTZkJ0d2QzTnZhcWh5ckpBZm9wQ1ltWStpQ0E1SDkwbjRZeFdxa0c2c2JCdHdkM052YXFkd3JKSWZvcENZbVpDaENGcjdlUldNaUl5SmlCcUZob0tCZng2QmY0YUNoUnFJakltTWlCNmlrWjZibTZVSW02V1RwYVlhdW5XaVg0V0Zpb3FFSG5HSGZuNTBHbXVxWXJCL0hnNHk5em4zY0JWL2wzbVljNWx3bTNtWGdwS0trcHlrckxTdXQ1K25qcGVNbG9DUmdvaEhQeGh3Ykhod2dIT0ZmcnR1OGw0SURzejMzdmVyRlpTQWVvOTBHM2h5aUlac0gwRjlYb1YyaG42RGlIOFpnSm1maGFZYnVOV2VzZkVmVlBjSkZZeUdjNHRlRy9zL0JvaUhpSVNFSDNLWHAzKzNHNXltalkrdkg3YVJxWTZjakFpT2xvMlZsQm9PWGZkbTkvZ1ZqSkJrbW15WCt3MjlHSlI1cDNxNWZBaTFmYUIrZ0JxRWg0T0VnUjU0ZG9CN2RuTnNiQmxzYkhoMWduNElnSTJWaFowYmtJK01qSTRmNlBPNHZaK3NoNXdaRHByM25Qa2xGYTU0YXB4Ykc0Q0Npb21DSDNpR2MzMXZkUWhzY254MWVCcUFrWUtXaEI3Tnl3V3BxNldhb0J1ZG1ZQjFsaCtTZm81OWZCcG9jbHhhVUI1TVBXVldmbkFJZjNDRmRYb2FjNVo5b1lnZWpJNlRvNWk1bEt1Y3BxS2lDT3pxdTk3U0dwNkhuWU9iSHZ0Si9RRVZuM3ViZDNkN2UzZDNtM3VmbjV1Ym54NE8rQm4zL0JXTWxveVhsaHJqVk1SRVoybCtjR29lWG1abVduQk5DSEpTZmxSWUdrYWdacldHSHFpSW00K01sMjZOZTQ2R2pnaDBuMytwdEJxeWxiaWd2aDZkdDU2dW9LVUl2N1M1cGIwYm1KaUlocGNmcjN5ZGFsY2FYbjllYzE0ZVhuUjBkSFFiZm4rVmxCK1NrNW1QR295U2tKNldxUWlXcXBDaG1ScWtmSmR1aVI1NGltMTJnbnFIZzVONW1JNElwSjZhbUpRYmtvK0ZmbmlHZklLQ0h6eDZaSFowR251ZmVhS1NvWStLa3g2Y2JKVjhtWVdlakJtdGpLdWtxcnVsdEp1eWtMQUkrMG82Rlk2SGhIMkFIMzJCZ1lTQkczMkVqNVNVazVPYWtCK1FsNWlObWhzT3pQZm9maFdPbElxUmhvNXZqM21UZ3BZSWhKU0ltNklhc0FlbWlhV0lveDZFdW9MWmd2Y0JndmNCZ3VDQ3h3aVFmSm1EakI2TWg0YUxoaHRrWlg1d1pSK0dqWStKa3BLY2pwQWJsWkdIZ280ZmdqTjNOSG8zZHZzaGZmc0JoRDZJZ0lDQ2VZUjVoWU9EaklJSWlwS1dpcGdiMExPVm5wWWZjSnA5cDdNYXZxZTJ0cFdXaVllV0hwaDJsR3FRWUpKVmoydU9nZ2h2bEp0OW9odWFuNUdXb3gvN0wvaGdGWXhtajJXUVpnaVFhbzUzaGhwMmdZVnFoQjV3bEg2UGlveWM5eHlkN0ovRmtJQ1BlNHgxQ0hxTGVZeDZIZzZHOTQzM2tCVjd3Mis0WTYyTmtwZWpvYklJbmFxVXFxb2FtWW1haUpzZWhLdDNwbXVnQ0o5dWJaVnNHM1o3aG9GK0g2Ujhub0NZaFFqN0J3ZFZoenFEK3dBZWd5Q0hPbFFhZ0lTRWZJY2VlSVovaG9hRUNINmdvSVdoRzd1M283cXlIN083bjd5OUdwaUpsb2lXSHZzSTkyUVZpYzZLeExvYW9vQ1hiMTRhWG9CdWRuNGVoUHNFRmJ4dHBGOVFHa3B1V1ZCbkhvZVVpYUt1R3JTTnVaQytIcEMrajZXUGpRZ091UGZCK01NVmtMK09xWlFhdkgramM0T0JpSVdBSHBKOWpuK0NHbnAvZ1hTSEhsYURZM3hxWDNKRUdYbFBlVTk2VGdpQ2RJZHZhaHBNbUZPbFdSNVRxTEJ2dUJ1cXJKbW9yUitVaXBHSWpoNkFYVzZHZmh0aWNKKzBmUjkrcjRTMHVCclluZHF1M1I2djR3V3luNkdlcEJ1Vm1ZTjZuUjk3blplRGtodU9qNHlPamg4T3EvZTcrR2tWakptTGw1UWEwbjIrY0tzZWY1bDdsbmlTWDVjWW1WcG5rbkliZEh1R2dJTWZwWENhZVkrRUNKSi9qblp0R3Z3dUI0S01mSTEySG8xMmpIeUJHbnFKZllhQ0hvaUdmNE4yZ1htRGczK01lZ2lHbEphSW1CdW9xNVdlcngrd242V2ltNld1d3FQSG1NdVZ2WkRJaXRRSVUzSVZQWVpWZ0c0ZVl2c0hhbEp6aWdpQm5ZYXh4QnI0QlFlSW1JcVhtQnEzbWFHb2twS0tpSk1ldkhxald6NGFmWXA0aVhNZWluT0tlNElhRHB2M2dmaFNGWVNLZjRCNGVBaDRlSGVDZFJ1RWhJeU1oQitBbUlXWGxZK1Z1N3dhakxPTW80eVVrS3FXbloyU0NKQ2FtNDZiRzUyVmg0S01INHlJaTM2TWRRaDhqbitRZ3g2bW5hK3l0M1NxWUhzZmdvaHRoMW1HWkloeWc0QitDSmwra25oeEduK0pkb1p1SG9kdWlYVjdHb0w3S1lMN0JvTTdmL3NSR0lDWW1JV1dqNlNObkJ1b3JvaUZ0QitTam8rV25ocWNpSnVGbVI2Y2hJS1RnQnQvaG9TQmlueUtlb1YvZ0lOd2lIV1BlWllJaUkyS2taWWFtSTJoajZrZWtMU09vWXdha2ZBRng0K1psNndibHBTSmg1SWZrSWlTZnBOMWtIbVZnNXFPQ0oyY2xLMjlHcUdJbW9TVUhnNko5NlA1UVJXV2ZIeVJmaHVLZjRxSmRCK0tkSEtLY29SdmpuNGJkSHlHZ0lJZmo0U1docDJKbW9tVGc0eDlqSGlFSjN6N1MzdjdVSUFuaElDR2c0S0ZmWWQ4aDRPRmlJTUloSnVlaDZBYnQ2ZVdvWmdmZkpTRHBiUWFpbzZ2a05ZZWpKT0xsWXFYQ0ltYWlwU1FHcUNUblp5WkhvNk9rWXlTRzV1WGlJU1RINUNGam9LQWhvbDloaHFDallXUGh4NlBncGVLbnBLUms0K1hqSnFOc1JpUnVBV2pncHA2a0I2RWlZS0NnSHdJZklDQWczOGJnWCtRbEh3ZmlJeUpsWjBhcW8rNGtzUWVrc1dScnBDWENKaVFtWkdnRzVDV2lvbWNINU4vajN0MmdJbDBneHB1bDNta2hSNlhscEd3eWhxa2laNkltQjRPOXdmNE9wd1ZpWXg0am1lT2NZNThrNGVaQ0lpVmlwaWJHcHFOcFk2d0hvK3hqYWVkR3N4M3EyUjVkSVYrYng2RWtwV0lsaHVWQm95UWpvdU5HNWFUaG9HUUg1SjdqbnA2R242SmU0ZDRIb0pqaDE2QmFYcHlHWFY4ZW9CM0czWjNsNko2SDNtbGdLMkd0UWlKbklxY25ocnNuT0dzMXg2cjVwcXVvcUNva1JtTWo0K01qaHVjbG45MGtSK1VaNUI0aklvSXBvbVpvcnNhbklpcWhya2Vqb2lKaklnYmhYNTljSGNma1h4OGpuMGJRbFE4K3pKbUgzRDdBMzQ4WFJyN0E3bEU1bXdlaXBDUmlwQWJtcXFZcHJvZmxXd0ZtN1NIbXh1cW41T2FreDhPenZmLytWd1ZqMzk0alhJYlpubUVmWU9SZ1plQUg0VjhpSEpvR29XTGdveCtIbkFIWG9acWduWWVibjF5ZkdjYmZIdU5rSGdmaHFPSnFhOGE5d09kMGE2bkhwRitlWTV6RzE5ZmdIeUtINDZJbFlhYWc1ZUVrNGFQaG95S2d5aDcrMWQ4KzFHQ0lZaDBpbitDZ25xRWVvU0JnNHFCQ0lhVW1JaWVHN0tzbGFDbEg0eVNoNVdEbUFpRW1ZZVVqaHFLcTQ2K2tOQ1MzcFM1bHBJSWxwdWdrYVVibXBpSmhwUWZqb1NOZkhRYVZvUkpmanNlZkRoK1hYNkJDSUtVbTRlaUc2dW5rSmFqSDQ2U2haQitqM3lRZ3BLS2xBaUtsb3VabWhyRWsrYWI5eEFlcmZlVGpyR09wNHllR1k2TmxJK2FrZ2lYa0pHUmtScU9pbytJang0T1lmZHorVW9WbG9OM2tHc2JXR3VCZG40ZmtvU1VoNWlJbUlpVWhaR0FqWWVESm5qN1dubjdXWUVuaW9tR2hvR0dmSWNJZm9pRmhvVWFpSXlIalljZWhwYWFpWjhicHFXUGtxUWZwSktZbFpZYWRwZDdrNEdRaWN1UDdwWDNHNVgzRjVic2xzcU5sWktVbHBTWGxKS1FqSTBJRHMzMzMvbFpGWktDZVk5dkcxQlhnWGRmSDVHQ21JZWVpcmVKR0pPR2tZU09nbzUyR0pUN0k0OHVZaHI3ZG1QN0JUeUZoWXlNaEI1c2tudWhpTEFJaEpDVGlKZ2JwcXFjb3BHSmtZZVNIMzZnZUpaMGltcUtjV21JWG9wNmtIcVdld2hxb3FkN3JSdTB2NStlbUIrdHVLSFBsZVlJanFhTXFLb2FxNG02aHNrZWg4bUp1S2dhcVkybWpxTWVqSlNVa3B5T25JNlVrWXlUQ0E3MitCNzVYQldSZ255T2VCdGtYMzEyZngramZaZC9nUnFGZzN0OGNoNTJhSHBuZkdkdlJuTmtlSUVJaFpDSWs1UWE3NHphanNRZW1KR1lsNWdlb2FFRm1ZWitrbmNiZ24rSmlId2ZnSW1CaVlHSWFJY1lmWWlEaFlpQmtZV1dpSnFLQ0p1VWk0cU9INVdJa1lXT2dJMkRpNEtLZ1loM0dJYjdNWXI3U0k3N1h3aDhnbjE0Zng1NGY0Ti9qWUFJaUkrUWlaSWJsSm1Pa3B3Zm9KT1hqNCtNcXBHY2pvMk1DS0NTbFplYkdwS1BrWEtFSG9oK2dZbUVHM3lEa1pjZjl5OEhxTnFqdHFDVWtJS1hYSjQwbnpTVldJeDhDSVdIaElTREhudDdCWUtYbW9lY0c2eXZuSitVSDRpT2c0NTlqNENPaEpHSWxJT2dmTXQxOW5UM0E0SExqWnFPbnBPZmxwNmpzeGlqd3Ayd21LQ09rSlNUbVpTWGtwR1NpcElJRHQvMzJQY0hGWUdwZ0o1L2szNkFoWHVNZFkxc2kzaUpoQWg2Z20yQ1ZodGZjNU9iaGgrQ2lxU0t4QjZLeElyQ3dCcjNXSlAzRHB5N0hwQ1lsSk9aakpxTWxKR1BsUWlWZDJXUVV4dHVkNGlHZ1IrS2ZwT0Vtb2dJc0lhT2VuNkNoWE9DR29EN240YjdRWXc4akh5SGZJTjhnbnFBZ242SWpuMk9ncENJQ0lxVmxvdVhHNm01ajVQS0g5dVJyNUNpbFphYkdRNzRJcDhWaHBLRWpvQ01DSFlHZzQySGtJcVRoZENJNFlyd0NQZUpCNGpHaXFTTm01Q1RHWlNObFkyVWpnaVlqNUdUbGhxT2k0K0tqaDZWaG42UWRodDBlb2VFZmg5K2hJRmpna09HWTROU2YwQjZJb0JVaElaMHlYbkpmY2h0OXlrWWhxU0dyWWUyaWFDR2w0S1FDSkNBZ0kxL0cyZHRkMitNSDRXUWtvaVRrcHVQa0J1VmtvUjhrQitOaEl5SGlCcUlpWDZJY3g2SWM0cHNaaHFNL0ZtQWUzaUNjSWtaZUltRGdJeDJDSWlQazRtWUc2Q2hqNUtpSDZTVW1KU1ZHdmR4alBjV2piRWVsV3FaVDU0MG9DNmFTWlpram42VGhwaU9tSmFXd1pMc2xQY0ZtTnFjdXBGZ2owK01RSTM3TUJpTWdvWm9mQnA3am9DUmhCNkltNWlLbGh1dG41V2drUjhPNy9nSitWZ1ZsWGg3a0gwYlluZGRMeC83aFFkNGZtdUVoQjZBbG4yM2VOcGU5MDBZZDg2QXFYNmNmWTRaallTQ2pJRWJjbldIZ25ZZmRJR0FmNDE5a1ltY2k2aU1vb3lZaUkyRUNJeGtpMUkrR2xxSlFvY3BIb2dxaVVKYUduNTNnbUtHSG1LR2VZQ09lUWlFbVoySW9CdStzcGVqcUIvM0o0dlNpb2NlamZjTms4K2FtcFZ4bUdHYlVwdFZuMUtrVDVoYWsyV09jQWlDanBLSGxodVVrbzJQa1IrU2xaSHZrUGRTa2ZkaWovY0VqWnlvcEJpV2xKR1VqSlVJRHZIMzYvZ2NGWkN2anErdkd0bCt4M0sxSHFwNGJadGdHMWhpWkQxckg0RjBlazl6S2doN1NvTk1UQm83bVV1bldoNlhkNTE5bzRTUmlaK0hyWVhGcWJYR3BlU1VxSmpVblBjTENGYjNQQldOTllZeWZ6QjUreDFzTjE5c2VZcUJpNGlNZkk1L2xJS2FDSGlvZ2JYRUdwYUxtNHlpSG95aWpKMlhHdG1nNnJUM0JSNldxWkNhakl5Vm9aZWFtSk1JanBHUmpKQWJucHg2YXBvZmwzQ1JjNHgzQ0E2bDk4TDQwQldHdTNHelhLd0lxV0JjbWxnYmFHK0RlM1FmazRHWGhKeUhtb2lVaFpDQ2tJS09WNHd1akVtS01ZcjdCd2lLK3hPS1RZd2Fmb0dDZDRZZWQ0YUJoSUlhaUl1SWpJZ2VncVduaDZnYnM2aVZuNXdmWkpwM25aK1NqNkdYR3ZkWUI1aVNsSm1TSHNxcnNhR1lsZ2lxcDVxMXhCcVlpcGlKbUI3N0YvczdGWVNBZzRlRUczMkVtcW1LakplTW9oK08wSW5WakxTUG9aT01HY3UxVGtKS2NseFpiaDhPOS9qNUN4V0RvWG1oYjZBSW9IQnlsblViUlZVOSt6RmtIMnY3RkhzdlV4b2dyVVRQWmg2YWhLYUtzcEdnWjV4Zm1GY0lnSktVaHBVYmtwR09rcEFmanBoK3hXN3hpcENTbVp1Z29LaWJySmF4Q0t6M0FwdjE4UnJFaGJsK3JoNWFnUldZWXBKWVR4cEtoRXQ4U2g1OFNIWlVjRitDaW9PUmhwbUVuSUtWZjVBSWVvaURnbndhaEk1K2tIa2VrSHFPZm9xRENJR0Znb1ovRzRDQmo1T0NIMmF1ZU1IU0dxQ05wSSttSHBuM0JhSHBxTmFoeGhpWHBKdWJvSlFJalpDUWpKRWJxckJ5YUpjZkRyMzM0bmNWaklxS2pJbUhjNEYvRzJkNXYvSWY5MFVIcUlhb2dxY2VnYXArb1h1WHY2bXR2SnZRbEs1MXFWYWpDS0JlV0pWVEcyWnhoWUI4SDdCNm5XMWVHb0tLZllsM0hvbDZpbjZNZ3dpTWVveDRkeHBnaGtpQ01oNkNNb2RJWHhxSWg0V0NoQjZOaFlTTWdodHVmWUo0aG95RmpvVWZoS3FsaDZBYnBwdVJtSThmbEtXUzA1SDNDcEQzQjVITWtKa0l3bStuVmowYWlvbHBSNGdmaUYrUFc1UllDRDZhcEdXd0c1NmhscUtrSDVLU2pKU0VsZ2o3WWZsSkZhQ2dob0NmSDZOL2wzdDRHbk4rY1hGd0huQnlkSDEzRzNpQ202dU9IL2NKQjVhUGxwQ2VHdzYvOTdmM3JSV0JyWFN1YUs0eTN4aHNxbnVwaWFpS29wS2ttNlNkcDZDWG9vYWloNXgrbG5hT2hKSjRsV3FTZEpSK2xvWUlsNWlScDdZYXpuKzBjNXNlZTNhQ2Y0aUpDSXg2Zll4K0d6eGRaMEovSDRxRmk0V0VHbVNoWHJkYUhyQm1yMld3WlFpa2JaZG1YeHBrZ21kNGFSNTNaM0J4YW5vSWg0U0RpWVFiZkh1VW5uZ2ZkS0o5bUlhTkNJQ0FoWDkvR25lYWVhbDZIbnltcFlPa0c1S1FqSTJRSDd1ZXNLeW11Z2lpdEplNHZCcWppS0dGbng0T3Z2ZlArVE1Wbm9PWGU1QWVqb043akhNYmdIdUtpWGNmaVhWOGlvSWJnWHVNam5ZZmpuWjhqWUliZW9DR2dvZ2Znbk9IZFhjYWZZMS9qNEVlam9TVWhwaUpqbzZVbnBxc0NLaVlscHFWRzVTVmdIV1VINCtBalhWcEdpRisreXB3KzFjZVJJR0NhSVNJZzQrR0c0Ri9nSFYrSDRtVWw0cWJHNmluanBHbUg2cVNuWldSbG5TUGJJNklsd2lxOTVtYjkxdjNIUnFkbnBtVWxSdVdsSHRya3grVGJKZDltNDhJbUxLUnFKMGFEdmNjK0N2NWFoV1RmbmlQY1J0V2FuOXpmeCtFa0pDSWtwQ1hqcEFia3BLSWhKRWZqSXFMaG9RYWFZSXhlZnNuSG5yN0czMHNnbGFIZG9KMmZIY0lkWHA3Z0hvYmdvT09rWVFmYjZKOXVNNGF2STNUait3ZWtPeU4xYndhc3B1aXFwTWVqcEtOa1lxUUNJK0dnbzEvRzNoaGczcE1IM3VUZ3BxS0hwMkpsb2FQZ3doVWlEZUYrd1FlaHZzRGlEZFRHcEpObldHcGRnaURscHVIbnh1YW1JMlBtQisrbXF2R21mR2g5eXloOXoyaDkwMk1sSk9TbXBLYWtwT1NqSklJRHJmMzF2bHhGWkNDZlk1M0cybDBoWDkvSDR5S2pvS1JlbytBaklHSmdudzBmREo5TUlGSWdFeC9UbjdmZjk5LzNuYjNLb0xZanBDU2tKbVBvcENhanBLVGlwWUlqSU9Cakg4YlIyTjZhb0FmbEl5aGhZNS9rbk9lK3dxcSsyaXErMStiSkk2SUNKNlZrWmVOSDduMytxZjNXNkgzQUpxY0dZMk9rNCtha0FpWGo1R1FrQnFPaW8yS2poNE85NEQ0bS9sckZadC9lWk55RzJ0bWZIK0VINDZFazRlV2lKYUlrb2FPZ21iN1luRDdQSHI3RllTT2dOdDk5ekY4OXoyQTZZU2dpSTZFaklLSWdZbUZoNHFGV2Z1UkdIRDdGWGxFZzM2QXAzM05lZk5rOTIwWWtKQ1drSjZTbHBDUWs0cVhDSTZHZ28xK0czaDJoNFIxSDNXRWZJT0VnSStHazRpV2lwU0trSVdPZ3FNeW4vc0NtL3NYcy92ZEdJaU9rSXFRRzV1VWtwaU5IN3IzdmF6M1JKL0FrazZVTEpYN0ZwWDdHcE10a1ZZSWdJeVRocGdiazVHTWpwQWZ4UGZjdGZlS3B2YzVqSk9TbEphVWw1V1NrbzZQQ0E3M0VQZ2d0QldGallTTWc0d0lid2FBaklTUWhwS0VsbjI1ZE54aDl5c1ltY2FzNmIvM0Y1R2FsNXlkbnBtYWtaU0tqUWlTZ1htUGNSdG9kWU44Z1IrWmZBV1NnNDZFaFJxR2YybDBTaDVnK3drcDkyMlFqNWVSbnBJWm1KQ1NrcElhakl1TmlvNGVqWU9BakgwYmNYR0loSElmYm9ONmdvV0F0SHl1WUtaRW9FdWZTNkJNaUlSOVhYRTBkRDU3WFlOOGhvTjhobktKZG9xQ2dvNTZDSUtzcDRla0c3R2xsYUNZSDMyWWdwV0hrcXJpbnJ5Um1KWnVsVzJXYlFpWVpwRnhmQnFHaTRpS2lCNTlnWU9BaW9BSWhxaWtpS0FidmFpWXBaTWZEdWYzNGZsbEZaSm1kWTZHRzN4K2lJU0JING1Gam9XU2hBaVVnbytFaEJxSWlvZUtpQjZHZVlSbWdWU0NWNEpsaEhOTzl4VnQyWXlra28rUmo1R1FsSkdPa29tVUNJMStmSXg4RzF4dmducURINldHb1hXY1k1ZHJsMnVXYTVWMmwyeVpZNWxrazNLTWdZMTZqVktPS1k0cGpGbUppSWFFZ1lWN2hRaDhoWU9FZ3hxSmk0aU1pQjd2amJpT3BwV1VuQm1Ha0lLT2dJd0ljUWFBaklTUWlKS0VuWWk3amRxTjU0dkNpWjZVcEpYRGx1R1cycGEvbHFTT2s1T1NsNUVJbDVHUmtJOGFqWXFPaVk0ZUR0cjMxL2s2Rll5T2pJK1BHcUNBbFhXS0htR0pZWWxpaWxxSVpJVndnZ2lFZjRoM2NCcHdqbkNSYmg2aWlaaVhrS1NTcjVDZ2tKRUlsc0t5a2FRYm01U0pob3dmZUZ4aUowdjdMRkg3SFYzN0JXb3hDSW1HaW9hSEduNldoS0NXbTQyUG9SNlBvcGlOa0J1UWpLeU95cEMwajZhUmxwUUlrcEtQcDc0YTBvYXZnWTBlZUlLQWM0bGxpVmlJYkllQmg0S0JobnlLTUloWmlJU0toSkNKa0l5UWtxdXo4ZGIzUUxyMXVmVzU5UWdPOTF6NFg4QVZnNTlxbDRPV1V0ZGQxR2JSTWZkQUdHTE5VdFJDMndpTmlJbU1pUnVJaUlxSmlCK0NpSWVFZ0JxQ29XdTJWaDY5VHFsaWxuZnArMGdZc0VpNVJNUkJtblNYZXBKL0NIZVlsNEdVRzVHUWo1S1BINVNZalp1R25RZ085M0w0aHZzWkZhZDlrMENLSHZ0ckJpQlJpWWVCSDRLSGhvRjZHbktQZjVRZTNvZmVpT09MNTQ0WnlJMndqcGFQQ0p5UWs1ZWNHZzVqOTI1WkZZcVFoSTkram4rT2haR0trZ2lZakp5T29CNlBwNDJianhxVzkyaVB3b2V3ZnA4WmRJeHplSEprQ0hSb2YyeHdHb2FMaDR5SUhxbk5tYWljb2FDY0daS0Vqb2FKR3ZzRUIwaUZabjZDSG9CdGtZQWJnSUtJaG9RZmFuSnRYR3dhZHBpQXBwYWNqcEtnSHBLZ21vNlRHNUNHam9TQUdvYUtnWWw5SG9sOGlvR01oQWlHa3BPSWxodWptcE9ja1I5Sjl3Z1ZmWEtFV25oK2pJNkZIcStUb0oyc0c2T2xmWFFmRG5mM1ljOFZvN09YdUwwYXRJS3NlS1FlcUhadG1XTWJoSU9LaW9RZmhaU0luS01hbjQ2MGtzZ2Vrc21PdXFzYW9vcWdpSndlUm5wa2VZUjVDSmlxbHBnYmxKT0locElmajRpTmhvTWFob2w1aDIwZWhtYUhab2htZWZzN0dJSkNpRXFNVkFoeGlXNklhaDZJYW9sNWhocCtqb09SaUI2YWlaYVJrSnFSblpPVmxZNnlsWitSam95bWxaNlpscDBJaVBjQkZXcUViMzF6SG05NmRIMXRHM0I5cEx3Zm9JKzFrQnJhbTdPc3BxQjdiSmtlbG5LUmJtb2FEcXYzcVBnYUZaeUpoNU9GRzRXQ2czcC9IM3VBaElPSkcyeHJlR1pvSDI1c2RXdDlhZ2g5WjRSbFl4cHVrSFNVZXg1d202TjlyQnVrcHBPYnFCK21tcUNkbXA1K2lYT0VhSDhJZ0d4M2hZQWJob2lNallnZmJKMThxYllhczVpenBMUWVwTFNvcEtxVm00U1VnSTE2am5lUGZwR0ZDSW1PajRxUEc1T1NqNVNSSDVDU2pwR1NHZzV3OTgvNVRoV2ZhVytWZGh0eGVYdHJnaCtFZElobFZocHdCNHgvaTRLRkdqNkRWbnh2SGxxU1pYWnVXUWh5WUg1VlNocERtbGVvYkI2R2tKQ0lrQnVVbDVLWW5CK2VtcG1UazQ0SWs0YVBnNEdHaVgyR0dvU05oWStHSHBhZGxwZU9INU9vajh1TTdZejNHWlQzSlp6M01RaU1tb3VabWhxTW5aQ1dsSThJakkrUmpKSWJtZ2FLa28rTGpodWZscE9jamgvN1NQd2VGWkZmam1ScUdqaDVWV2R5SG9TR2dJbDlqQWg0cVlLeHVCclFuTVN1dWg2bW5JcUtsQjhPa3ZlUDl4UVZjRkJ1YTJ1SGNJaHptWGFyQ0hhcmdhMnZHcVdTbjVpWkhvbVJrb3FURzZpbmw2T29INmlrbXFPakdxWjNuR1NVSG95RmhZeUdHMlZyY1ZoeEgzUmNmMVZRR2x5VFpKdHRIbXFlcFhxdUc1S1NqSXlUSDZhUXBaMmtxYUtvbUtTTW9nZzI5MTBWZ0g1L2Nud2VjbngzaG42T0NNU2NvS2lrRzZHV2dYWWZEblQzWmZpQkZhU2RsNm0xR3FlRnBYNmlIbnlsZDUxeWxRaU9nNFNOaEJ0cGNtbElmQitBWG9kbGpHNk1mbzkya1hBSWtYQ09lb0lhZllDQWRvUWVkb1NCZ0gwYWw0R1docFdLQ0pHS2pvcUlHdnRkQjRLUWNvSWFlSUI3ZEgwZWlvS0xoSVlhaUplWmlad2J1S2lUbkprZmhwS0FsSGlYQ0lHU2hwdWxHdmRkQjVxWWxhU1NIcVdTbVpXT21HT1dHSHFRZ0pHR2s0cXdpNmlLbmdpR3NJbW9uaHE5bHJDaW94NmloSnQ5azNlUWY0NTJqVzJOYm85MGtYd0lEcm4zcHZnYUZZYVdlcEdDaUZCNFdXdGlYQWhnV25aV1VocDdqWHVQZXg2UWRwWjBubkt6V0JpUGhZMkVoQnA4Z1hWMmJSNUlLUVY5ZFlSb1hCcGprV21ZYng2YWFhRjJxSVFJaUppWWlaY2IxSy9KOXhHNGg3S0VyQitHb0lDdGVMbDdzb09qakpPTW1KaVlwSmlwbXArZGxLQUltcTJUcjdBYXUzNitjc0VlbUo2V21KS1RDQ05MRmJkNnBsWlFHbXFEYm54eEhucHVkSGhzZ0FpS2hvYUxoaHRsZUtySmlZeWJqS3dmakorVHBacXNDTE9kbnArZ0c0NlBpb3FQSDQzOWRoVitoMmVBYmh1QWhJeU9pQjl3cG4yMXd4cTBrckdhcmg2YXJwK2ZvcEVJdFphZ1d5QWFUNGRlZzJ3ZURvUDNsYlVWaDM5L2lZQWJkNEdTbUIrS25wUEVtdXdJakpLTWtwSWFwNFdtZ0tVZWZxaDRvSFNZaG82QmpudU9mbzZCa0lXUUNJcU5pbytSR3BHTWxvNmJIbzZjakphUUdwZU9yNURISG82OWpMR0twQWlPaG9PTmdodDRkWVYrY3g5MGZuNS9pSDZva0tHUG1JNElqb2lOWHpZYUxZa2tpUHNESG9qN0NZZEloM3VFZ25pRGJZVnlobjJBaW5rSWhxQ2VpSndicjZTWnBwb2ZsNktScmJnYW5JcWxpSzhlaWErS3Bad2FzbytwbEtBZXdJU21ZME1hY0lkamdsWWVnbGFIYUhrYWc0K1ZoNW9ibkoyUGxKOGZuNVNWbEpJYURpNzNBS2tWZ0kyR2taUWE0UWVma0thVXJCNlZyWkNrbkJxa2c2UjdwQjZXaElHUWZSdDllNGFCZWg5OGdvU0Zpb2FSaEphSG00eWJqSmFJa1lZSWpvYU1nWDRhZllsdmhtRWVobUtKYlhvYUx3ZUNoSVI5aGg1OWhvU0dqSVlJaUpXWGlwa2JvSjZPa0pzZm5wR1Vrb3lVQ0VmNFNCV2dwS21pbTMyWWUzWnliSFo3bVgyYkh3NzdEUGNkOS9RVmhwV0JqMzJKZElsemlYT0tkb21CaElxQUNJV1Brb2lVRzVrR2xaR0hnNDBmam9DTVE0cjdHWXI3RTRwR2luNkdXbnR5Y0lnSWc1S0hrNWFYbHFxWEdwdC9tbnQ4ZklGM2ZoNTlkNFY2am4yTWhwU0NuWHljZkphQ2o0cVVpSmVLbVlvSW01YU5qNUFmcnFlY3RjSWFrb3FZaXAwZWl2ZFpqUGNLanJLTWs1S1RtSk9ZazVHUmlJNEliUGNURlpLUmpwT1ZHcU9CbDNkM2UzTjBIb3gya1g2WWlKdUhucGFNbkFnT2dmZVBxUlZ4a0hxVmc1aUdsSWVlaDZpR3NJU3RnYWdJZE5DQXRwd2FsSXlTanBJZXJNdWx1NTZxQ0llQ2pZOThINDk5Z0kyREczeUJoSDZHSDZKempJU0NkM2hvR1hob2ZucUVpbzczVVkzM0NvNjZDSmVGZ0pGN0czQnlnWGR6SDRpUGtZcVRHNWdHakpHUGk0NGJtWktGZjRvZmhmdmxodnRYZ2lPQWdCbUdoMytEZG9COGdvS0RpSUtVZzVLSWtJekdtaGlpa1plU2paSUlqcE9NbEpVYWtZcVdpcHdlaXBpS2xJeVJrOTRZa0xPVnBwcVlsWHlWYlpSZmtteVJiSkZzbEdFWWtIcVNnSlNJQ0lpUWtvcVVHNmFjazV1Ukh3NGw5eWFtRllpQWpJeDJINENGalpDS0g0cU9qSldObkFpTm5veWFsaHFQOThTUDkxaVE0Z2lVakh1V2ZoczBCbnVDaEgySkg0U1dsWWVUajV1TmxCdVhtWW1JbWgrTWlvY2loUHRtaC9zQmgvc0NpUHNDaVlPRGhYMkdmWWFGaG82RkNJaVdtNG1lRzhLcmxaNlNIdzdWOTd5b0ZYMk5oSkNTR3BTT2w1R1pIcGl0cHRnRmxxMlJwNkVhcm42bGNKd2VqNFdGallRYmdvR0hoSDRmZklLQmhvaUtpSTJGa1lPVmhaS0VqNE9OZ281K2lIcUNDSU42Z0llR0c1cUNlNU4wRzNoMmhvSjBIM2VDZ0lTS2hnaUhrSktKbEJ1UWxvMk9taCtZanBTTGtJa0lrSWFPZ240YWdZbDRobkFlaG5DSmQzOGEreGdIaDRPRGVuNGVlbitEZ29xRkNJZVNtSW1lRzZ5ZGo1S09INUNXanBXVUdwYUNvSXFXSG9uRmo4T1Z3WTJZbEpxYm5adWVtcFdhalFpU2dJOTdkQnB2aFdKK1ZCNXEreGVPaFkrSGo0Z1puSW1WalkrUmtwaVBsSXlRaktDTm5JNllscm1UclpHaGtyYVFwSTZUbHF1Zm5xaVJDSk9BajMxNEduYUZiNEJuSG5BMWlvZUhmSUp5R1laNmlINkRHbnlaaEtlbG5wQ1dseDRPZXZlT214V0tnSXVNZFI5OWpJR09ocEtOckpHNmxjWUlsTUNRc2FNYXBvZWtncUFlbElkemxvQWJoWXlDaUgrRUNJTjlnNGVLRzR5QmpZOTRINDJBZjR4K0czUjRpSVo2SDNpRmdvU0tnZ2lKa0pDS2twYWxrSk1ibkpPQ2VCOStnMnVHR29aR2hsYUlhSWhXR0ZOOGRvUi9oSWlDR1lpZG5vbWZHOEtubXFnZjhnZVFycEd0a2E2WHRLT25ycGdJbDN1UmVIVWFmb1pwZ0ZRZWYwNkRVWWhVQ0lTT2xJaWFHNXFjanBDZUg1NlJsWkNPR2c2YTk0SDNsaFdJcklLc2VxdUlrSDJRY281eWpudUxoSWhsZm0xdmRHQUlkMk9CWGxvYVNwdFpyR2dlZ0pTWmhwd2JrWm1OanFFZnNKMm9yWis4Q0p5MGs3aTlHcGFLbFlxVkhsSFRGWmxxa21ka0dsNkNZSGhrSG5sa2MzQnVmSE9ZZnBTSWtRaDlyb1N3c2hxNGxMR2RyQjZmc0tlanI1ZVlrSlNIa1g0SURwZjNpUGRWRlkrZmpaK2ZHclNEcW51Z0hvS1llNUYyaWdoNmNvaUViQitFZm5hRUcyNk9lNHlHaW11SUdINkpnNFdJZ0pLRW1JbWRqNTJQbUlxVWhRaU1oWXlDZnhwa2hEcDkrdzhlZXZzamdqeUtmb2FIZllaMWhYaUdnWVdKaGdpRW5xT0lxQnVsbW8rVWtCK1BvSTJiaXBpTWxvdWRpcU1JaXFxS25wTWF0cE9obTQ0ZWhwaVhpWmNidGF5bndxSWZsS0tWc1piQkNHT2tGWUpXaEdlRWRuMWplSEZ5ZjNtSmdJNklrd2lGbW9pZm9ocVlqcTJTd0I2U3haQ3RqcGFTb0pxWW9vK2NqcGlHazMrY2I0OW9oR0FJRHBqM3pQczFGWXlTZ3BKM2xBaU1pWWlMaUlKMGdZUWJoNGlOam9vZmY2V0Z0TUlhMDVmMW92Y2hIbzZZbEplY2xacVVrWktLa0gyYWVZNTFoSDJDZ1lPRmhYV01lb3lBalhxSmVZWjJnM1NDZTRPRWdnaHVhWDFiVFJwamttcWFjQjV1bTZGOHB4dWNuNUdYb0IrUWlJNkZnWUtIZDRnYUtvMUxqMndlZ0kyUmhwUWJrcGFPa3BvZm9KU1hrSXlNcnBlZGw0NllDUHM1K0hnVnBKQ25kSE1hZklCb2luOGVpR0tHYm9SNGdHeDNjbTEyQ0dlaGViSEFHcStVclp5cUhweXFvSjZra1FnT2hmZWI5ODhWdW94dHBHTWJhbkorY0hnZmZZK0Jqb1NPVXBCdGc0bDJsMytva1o1N0NJNktqSVdCR29LS2ZZbDNIb2h6aVgyR0dvRDdQSXFLZ1laNWhCbCtob2FEalg0SWhKYWNpS0VicHBxUm1Jd2ZqdmNVak1XU3VKaXNHWnk0cDZtMG1RaU1qWTJMalJ1WGtZSjVnSWlFaElZZmtvV0Vqb1FiaG9hSmlJUWZoNEtHaVlrYmhIMkhmb0FhY1psK3BwMmJrWmlZSHBxYWxKK01wQWdPZ3ZkYzk2QVZrWTZSbVpHaUNKR2pqcUtnR3JDQ25YZ2VoSVNIZ0lwN0NIeUdmb0tDSG5wNmk0eDZIM2VLZklpQWhRaG5kWGxyWUJwaW4yK3plaDZxZ3BtSGxvYVRoQm1lZTVWMmNCcHFkbkJvY0hHZXA0Y2VpbytRb1pZYW1vV1Nmb2lIaTRxSEhvR0NobjE2R25hUmQ1WjVIbmllcTRHM0c1K2JqNUtXSDZXYm1LT3JHcXgvcG5PZUhvcU1jcGhhb3docW5IcWRuQnFka3A2YW54NmdtcDJWbmh1UmtZcUprQitZZzVSOWtIZ0llNCtUZzVjYkRsejNkdVVWZzRaOWZIWnlDSGg4ZklKK0cyV0tlTFRkR3B5TW00MmFIb3lnamFDTm9JKytqcUN1bEFpY2tKU1JrUnFNaTQyS2poNXZobnVNaUpBSWg0MkpqNUlhazVDZmxhc2VscXlRbzVvYW1vZVhnNUllZjRhRWdvaC9jeUlZaDJhSWU0YUFoSVlaaVlwK2huS0VDSHFHZzRPQUdvbU9qNHFQbEtPVGt4dVFqNHFJamgrTWVJbDBpSEtJZklsOGlYd0lob3AvaW5nZWlueUtmNElhV0tKanVtNGVpSkdTaVpJYm9LR1lwcUlmb3FhVW9JYVlDQTZoOTdYQkZZeUdob3lHZzNxR2hCdUZoWTJRaFIrSWxJdVhqcHlObDR5WGpKZU1tSStva2JvSWtMS05xSjBhbm9tWmhwSWVnWTZFaTRhR2huK0hmSWg1aW55TlpYZytkam9ZaUg2RWZJRjRDSFIvZ0grQ0c0bUpqSXlKSDJlbmViQzVHcW1VdFozQUhxTFBtYldPbXdpUWhvR05maHQyZFllQ2NoOXpnbitEaklRSWhvK1FpWklia3BXTmtKZ2ZrSmlVam84YmtZNkhoSWlLaUlxR0gzTXlnbXlFYUlaa0dZZHVrbXFlWndoa25xSjRwQnVlbkphaG5CK2RpcG1JbEllZWtKeVRtcGFXbEpXVmxaUUlEcEwzcWZmckZZMkJmNHgrRzJKeGczdUFINDZHa1ltV2lnaVdrWWlHalIrTWczeFhiU3VIY0JpSWZvV0NnNGh3NkhmY2ZNNlFrSmVQbnBBSW1JNlNrSklhallxT2lvNGVJb1pYZ1h3YWtJYVZpWm1NbVl5VWlJK0ZsbnVYWlpsUGtteVVZcFZaa21TVWJaWjRDSWFPa0ltVUc1T1FqWTZPSDV1N2xyQ1FwcWJzb00yWXJZMlFrWStWamdpV2pwQ1BqaHFOaW8yS2pSNE8zZmdRK0M0VmtJSjlqbmdiWG5HQmQ0UWZvSUtWZUcwYWZJTmhlMGdlaW9xSWQ0Vm1pSFNHZklTRmY1MkJxb1MyaExLQnBIeVdmSUorY0lGZWZsV0FhSUI2ZFBWNzNZTEVrWmVaa3FLTUNKNk1sWktLbW5pTmNJaHBoR1dEZFlHRWY2T0NuVzZYVzZEN0VCaU1pSTF6ajF5T2JwRjFrbndJZ3BDU2g1WWJrWktOajVNZmtwYVVxSmE0bExTVm81U1RrSU9VZEpkbGxHNlhlSnlFbElpYW1ZK1drcHlTcnBMQmxNYVV0NVNxalpLUW5aS3FDSkNra0oyUWxveU9rWStWa1pXU2o0K0tqZ2dPNy9nRzkrb1ZqM1owalhJYmFIYUdnWUlmaW8yRmpvRWVqWVdMaG9pSWVITjRkbnA2ZjVPQ2xvU1ppSktIbG9hYmlwR1FrSlNRQ0pTUWtKQ09HbzJLallxTkhwSitlWTV6RzFkcmdIV0FINHlXaW9tZkg1cUtsWW1PaUpPRW1IaWNiWjlvazNTSGZ6bzZZR0dJaHdpS2hZbUhmaCtCaUlhR2pJVUloWlNZaUo0YnNMaVltcFlmZTVCL2o0S05DSlNXbWFLZUhxS2ZtNVdXakpoN21YZVljNWh6azNtTmZvcUZoSVovaHdpQWlJV0hoeHFKaTRtTWlCNkdrNXFKb0J1a3BJNlNvaCtqa1ppVGpwYUdqb0dMZllwOWlvS0xoNDJDa0hxbWM3b0ljN3AvcVpnYWpvdU9qSXdlcDdxcXNLNm1sWk9ia2FDT0NKdU5rNUNUR2c1cjk4ZjMvaFY1bG1xUFhJaUlnWTU5bEhtRWJvQmhlMVIzU0g1bmhZZUJvSCt3ZnNCeDl3UVlqcFdUa1ppT0NKaU9rcEdTR282TGpZcU9IbzU1ZVl4NkcxaHJnbmg4SDZlRm9IaWFiSko4bFdhYVVKcFFuVm1lWkk2RmhYRitYWHhZZTE5NFp3aGRkSFYwZGh1R2g0eU5oeCtLbEk2VWtwV1dtcE9hajVvSWpJNk1qbzRhb0hlZGQ0R0RoNE9FSG9GOWhuZHlHbldQZHBSM0huQ1dtbjZlRzU2Z2xxS2dINkNock9DMjl5ZTg5ejZ4OXdPa3ZwQ1VrNU9Ya0plUWtwT05sQWdPcS9lNDk4b1ZqWTZNalk0YWs0Q1JkbzhlZW81K2pJQ0tRSVJUaFdhSENJS0toM3RzR25DTmRvOTZIcDZPbHBPT21wUENHSmFPcnBETkc2S1hpb2lNSDM1cllsQkdORTQrYm1PT2g1S0NtSW1lai9jQmx4aklrcXVRajVBSWs1YVBtWm9hcG9XYWY0MGVlSWlDZ0hnYWlZdUpqSWdlaEFkK2hvT0NpUjZFY0h1SGlCdUlnNHlOZlI5OWpYaU1jb3lZbjUya3BLaXFyNzNPeiswSUR2YjRDL2tERlkrQ2dvMkFHM0JxZjNObEgyeDNibk53Y0FpQWZvVjZkaHA1a0hLVmF4NlViNDU3aVllQ2NIcDNkSHg5Z25XQ2JZSnVnbmVEZ0lTVGZwK0Jxb2F1aHFLRWxZTUlrNFdQaElNYWhJVjhnSFFlZm0rQmNJVnlDSXFIaW9lR0dtK1liYVpzSG11bXBYdWtHNWlWa0phVEgyNlFjNWQ1bkhlZWdxT05wNHlhazZXWnNKaXNrS0tLbW9xVGc1ZDduQWg3bklPV2p4cU5qZ1hJdktteXFCcVBpNCtLamg2S2pvV1hmNkFJZ3B5R21wZ2FsNDZYa3BZZW5LbXJxTHFtdTZlbm41S1hDQTdvOSsvM1doV0dvSHVaYnBOcWxIV1lnSnNJaW8yS2pZNGFqNU9lbks0ZXFjeWF2b3l2akxoNHJHU2lDSjFzWnBSZUczQjJpSVI4SDVaMHAzKzRpTHFKcUlLVmV3aVVmbzk5ZWhweGZHQnNVQjV1VTM5ampuUjVjWHgzZ0g2U2RxUnd0bXEwYmFGd2pYSitjblo3Ym9aRGh4aUNpbnQ2aW40SWVxQ21nNndieE1TbnY2TWZqbytNa0pBYW5YZW1ZNjRlWWJCMXBZaVptNW1ra0t5SHNJZWxqSmlRQ0E2cjk3UDQvaFdNaUlpTWlCdUVoWVI4aEIrRmZZT0Rnb2xxeXhoN3BuaVlkSXAyaW5OeWJscHhYbnRqaEdnSWlwQ1BpbzhibUppWG9wWWZsNk9YbzVham1xZWRuYUNUbW5xVmRZOXdrR2FOZUl5SkNIcVNtNE9rRzZ1K0JaZWdrWnlZR3BTSWs0YVNIZzc0SGZqTlhCV3NqNTZRa0pJSWtKS09rNVlhb29TbGZLZ2Vlb2lDZ0lwNUNGc0hnb0dFaG9XTWZJMTFpbTZIQ0lkcWVJbUdHNFdJakkyS0g0S1NoNVdZbG8rZ2pocjNBZ2VqaWE2UUdwcVRsWnlPSHZjUm81Q0lrWU9TZ0JtQ2taR0hrQnVPajR5T2tCK0QyWWFyZnAxMmtCbUdob2lEZnhxRGk0T0tnaDZHZ255RGRJVlJmUmlJZklHSmhSdUNoSTZSaUIrR21JbWJqSitOcEl5YmlwS0J5NFhJaXNRSWw2eXJrYXNicXFHTGFKOGZlcFdWZ3BVYmpJNkxqbzhhcG5temQ1Z2VoWTk4akhLSit4Q0NQb1ZzaUgySmhJV01nSkNDbFlhWmlwcUtsSWlRaFdzd2FDeGtKMTM3Q3hpRGM0VjloNGlGaDNtSGJJWndoM3FDZzM0SWdwS1VoNVlibHE2VmpLSWY0Skc5blp1cUNKT0VoWStIRzRweWdJeHZINFNSaUpHTmthREVtN2FZcDVTbWxhMlhrNlNab28rZ2haS0RrSDZNZUFoK2kzMk1maDZRWkk5d2pub0kreWtIYUl0OGpKQWVpbjZJaFllS2E0cDhnbzU2cElDdmlicVRDRFA0d0JXR2pYNk9lQjZPZUkxOGdScHdnSDUxaFlTTWpZTWVpSkNLa1pJYXFwbXVwckFlaVk2T2lvd2JEdmRsK0dEM1V4V0VwblN3WTdsZ3ZuT3BocFhNMEt5L2phNk50M1d4WGFwanBtZVhhNGRjaFdodWRsZUVlb0ZlZlVBSWdFMkZVbGdhZW94dGpHRWVqV0tNWjJ3YWRvdDFpblVlaDRLQWhYaUllWW1BaElkK0NJT2Fwb2V5Rzh5MWw2T2VINU9FZ1k5L2czaUhoQnVBZzVHWWh4K0dub2lsckJyUkI0UHVqZGFYdkpuM0JSaVV2S0d4cmFRSWxKZVpqNXNib3FLRGU2QWZvM3FYZDNVYWRvQnlkVzRlZjN0MmRHMXNjbkorZTRpRTdVVVl0MmlsWlpKZ0NJMS9qSDkrR2s1NldXcGtIb0IvZUg5d2dIS0JmSUNHZ0FpQ21wbUhtaHUwc0tXK3JCK3F1NXU4dmhxWWlwYUlsaDRPSVBjSitWY1ZjNFYyZW5odkNIbHdnbTl3R2x5bGRyK1JIcWVPbVppZ0dxaHRzV2VZSG9xTmlvMk5HcEtTbHBpWkhwbWFrcGFTR282S2pZcU5IZzRnNmZqZUZZeUlqSW1KR29TRWdINThIbjU4aFlHRUdvaU1pWXlJSHFPU241eWNwZ2ljcHBTbnBocTJkcUJpaFlXTGlvVWVjSWQrZjNZYWJLcG5zSDhlRHFyM2h2bFRGWFNGZG50NmNBaDZjWU53Y0JwWXBuWENrUjZtanBtWm94cXJick5ubUI2S2pvcU5qaHFSa0pTV2xoNldsNUNVa1JxT2lvNktqaDc3RW84VmNvVjJlbmx2Q0hsd2dtOXdHbHlsZHIrUkhxYU9tWmlnR3FodXNXZVlIb3FOaW8yTkdwS1NscGlaSHBtYWtwYVNHbzZLallxTkhnNmU5M240M2hXTWlJeUppUnFFaElCK2ZCNStmSVdCaEJxSWpJbU1pQjZqa3ArY25LWUluS2FVcDZZYXRuYWdZb1dGaTRxRkhuQ0hmbjkyR215cVo3Qi9IdnNiZ2hXTWlJeUppQnFGaG9LQmZ4NkJmNGFDaFJxSWpJaU1pQjZpa3ArYm1xVUltNldUcGFZYXVYV2lYNFdGaTRxRkhuQ0hmbjUwR21xcVk3Qi9IZzczVnZncmxSV09tb2FaZnBnSW1YOTlrbndiY0hkemIycW9jcXlRSDZLUW1KbVFvZ2o3R3hhT21vYVpmcGdJbVg5OWtud2JjSGR6YjJxb2NxeVFINktRbUptUW9najdFaGFPbW9hWmZwZ0ltWDk5a253YmNIZHpiMnFvY0t5U0g2S1FtSm1Rb2dnT1BnNzdodzc0QVJUM2h4VUEifSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz0iQUFFQUFBQU9BSUFBQXdCZ1IwUkZSZ0FsQUFBQUFBRHNBQUFBR0VkVFZVTGF4ZDE5QUFBQkJBQUFBRjVQVXk4eVhncHMyQUFBQVdRQUFBQldZMjFoY0x1eW55MEFBQUc4QUFBRVFtTjJkQ0FBSVFKNUFBQUdBQUFBQUFSbllYTncvLzhBQXdBQUJnUUFBQUFJWjJ4NVpySlVyNVFBQUFZTUFBRmtCbWhsWVdUWFM1dENBQUZxRkFBQUFEWm9hR1ZoQXpnR1lRQUJha3dBQUFBa2FHMTBlTkhnYVE4QUFXcHdBQUFXbW14dlkyRWl5WHVLQUFHQkRBQUFEQVJ0WVhod0JsY0JlQUFCalJBQUFBQWdibUZ0WmRjWENvRUFBWTB3QUFBRFAzQnZjM1NPdDcyNUFBR1FjQUFBT0ZVQUFRQUFBQXdBQUFBUUFBQUFBZ0FBQUFRQUFBQUNBQUFBQVFBQUFBb0FIZ0FzQUFGc1lYUnVBQWdBQkFBQUFBRC8vd0FCQUFBQUFXeHBaMkVBQ0FBQUFBRUFBQUFCQUFRQUJBQUFBQUVBQ0FBQkFCNEFBZ0FLQUJRQUFRQUVBUFFBQWdBdEFBRUFCQUQxQUFJQVRRQUJBQUlBTEFCTUFBQUFBUUpZQXJ3QUJRQUFBTWdBeUFBQUFNZ0F5QURJQUFBQXlBQXhBUUlBQUFJQUNBTUFBQUFBQUFEZ0FBTC9VQUFHR3dBQUFDQUFBQUFBVUdaRlpBQWdBQ0QvL1FQbi9uZ0FXZ1BuQVlnQUFBQ2YzZFVBQVFBQUFBQUFBd0FBQUFNQUFBQWNBQUVBQUFBQUF6d0FBd0FCQUFBQUhBQUVBeUFBQUFERUFJQUFCZ0JFQUEwQWZnRi9BWUlCaGdHSkFZc0JrQUdoQWFrQnNRRzVBY0VCd3dIakFmQUI5UUliQWg4Q013SlFBbFFDV1FKY0FtSUNaUUpxQW04Q2RBSjZBb0VDaHdLUEFwSUNtUUtjQXA4QzNnTHBBMFVEWVFOMUEzb0RmZ09LQTR3RG9RUE9BOVFEM0FQbEEvTUVYd1NUQkpzRXN3UzdCTUlFOVFUNUhwc2UrUjhWSHgwZlJSOU5IMWNmV1I5YkgxMGZmUiswSDhRZjB4L2JIKzhmOUIvK0lBTWdMaUE4SUVBZ1JDQndJSTRnckNFVElSMGhJaUVrSVRRaFh5Um9KT3IydnZzUS8vMy8vd0FBQUEwQUlBQ2dBWUlCaGdHSkFZc0JqZ0djQWFjQnJ3RzFBY0FCd3dITkFlWUI5QUg0QWg0Q0pnSlFBbFFDV0FKYkFtQUNaUUpvQW04Q2RBSjRBb0FDaHdLTEFwSUNtUUtjQXA0Q3NBTGdBd0FEWUFOMEEzb0RmZ09FQTR3RGpnT2pBOUlEM0FQa0EvTUVBQVNRQkpZRXFnUzZCTUFFMEFUNEhnQWVvQjhBSHhnZklCOUlIMUFmV1I5YkgxMGZYeCtBSDdZZnhoL1dIOTBmOGgvMklBQWdFQ0F5SUQ0Z1JDQndJSFFnb0NFQUlSVWhJQ0VrSVNZaFV5UmdKTGIydnZzUS8vMy8vLy8xLytQL3d2L0EvNzMvdS8rNi83ai9yZitvLzZQL29QK2EvNW4va1ArTy80di9pZitILzRIL1pmOWkvMS8vWHY5Yi8xbi9WLzlULzAvL1RQOUgvMEwvUC84OS96Zi9OZjgwL3lUL0kvOE4vdlArNGY3ZC90cisxZjdVL3RQKzB2N1Avc2ord2Y2MC9xaitlUDUyL21qK1l2NWUvbEgrVCtWSjVVWGxQK1U5NVR2bE9lVTM1VGJsTmVVMDVUUGxNZVV3NVMvbExlVXM1U3JsS2VVbzVSemxHZVVZNVJYazZ1VG41TmJrZytTQzVJRGtmK1IrNUdEaFlPRVREMEFLN3dZREFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJCZ0FBQVpLeUFBQUFBSjhCQXdDZ3dBRUFBQUFBQUFBQWYzNTdnSFYwYUc4QkFBQURCQVVHQndnSkNnc01EUTRQRUJFU0V4UVZGaGNZR1JvYkhCMGVIeUFoSWlNa0pTWW5LQ2txS3l3dExpOHdNVEl6TkRVMk56ZzVPanM4UFQ0L1FFRkNRMFJGUmtkSVNVcExURTFPVDFCUlVsTlVWVlpYV0ZsYVcxeGRYbDlnWVFDR2g0bUxrNWllbzZLa3BxV25xYXVxcksydnJyQ3hzN1cwdHJpM3ZMdTl2Z0J5WkdWcEFIaWhjR3NBZG1vQWlKb0Fjd0FBWjNjQUFBQUFBR3g4QUtpNmdXTnVBQUFBQUcxOUFHS0NoWmNBQUFBQUFBQUFBTGtBd1FBQUFBQUFBQUFBZVFBQUFJU01nNDJLajVDUmpwV1dBSlNjblpzQUFBQnhBQUFBZWdBQUFBQUFBQ0VDZVFBQUFBSC8vd0FDQUFJQUlRQUFBVzRDbWdBREFBY0FBRE1SSVJFbElSRWhJUUZOL3RRQkMvNzFBcHI5WmlFQ1dBQUNBTUwvNWdGV0FtSUFBd0FUQUFBQkF5TUxBVFEzTmpNeUZ4WVZGQWNHSXlJbkpnRkRDbGdLRlNjUUV5MFZDQ1VSRkMwVkNBSmkvam9CeHYzRUp4SUlJdzRRSlJNSUl3NEFBQUlBalFHWkFZY0NUd0FEQUFjQUFCTVZJelV6RlNNMTVGZjZWd0pQdHJhMnRnQUMvLzRBQUFKWkFtZ0FBd0FmQUFBQkJ6TTNKd2N6TnpNSE14VWpCek1WSXdjak55TUhJemNqTlRNM0l6VXpOd0VFSlYwbEhpaGNLRmNvaTZJbGFvRW1WaVpkSmxZbWRJc2xWV3NvQVhxUGorNlhsNWRYajFlVWxKU1VWNDlYbHdBQkFHRC90UUh1QW80QVNBQUFBUVlIRkJjbkppY21JeUlIQmhVVUh3RVdGeFlWRkFjR0J4VWpOU1luSmdjR0R3RTNOalUwSnlZbk16QVhGaGNXTXpJM05qVTBMd0VtSnlZMU5EYzJOelV6RlJZWEZqYzBOd0hqQ1FRWVR3azRGaGcrRmdjNmFsWUxBa01lSkZvbUh3Z0RCUW8rRHdrU0JBSStEUjA2RlJOTERnSStjVTRKQWxJWEdsb2RGZ3NCQ1FKQkYwRXZIUUl2RkFnaUN3MHZHeW9xVmc0UFRqVVlDa1ZGRGhvSUR4UVlBU29iSXh3MUNnUWROQlFIUHdzTVBSMHFKRThNRGs4cURBWlRWQWdRQ0FrVEVBQUZBQjMvK3dJeEFqNEFDUUFaQUNFQU1RQTFBQUFsRmhjeU55WW5JZ2NHTnpJWEZoVVVCd1lqSWljbU5UUTNOaWNXRnpJM0ppY2lOeklYRmhVVUJ3WWpJaWNtTlRRM05nTUJGd0VCWGc0c0toQU9MQ1lSQWpsRkxpSktKQ2RGTGlKS0pQa09MQ29RRGl3cUtrUXVJMG9rSjBRdUkwb2thUUhmTVA0aGFBOEVGUThFRVFKdEtCMHBQeUFQS0IwcFB5QVArQTRFRlE0RVdpY2RLVDhnRHljZEtVQWZELzV6QVNsTS90Y0FBZ0FnLytBQ1BRSTBBQjhBS1FBQUpUY1hCeGNISndZSEJpTWlKeVkxTkRjMk55WTFORGMyT3dFVkl5SVhGaDhCQmhVVUZ4WXpNajhCQVhCblNuR05RSVEwSmlFblZ6Y3BjZ01EUEZVZkdVWkdOUUlDR2dkZkxoVWFKeW9SN280MG00MUFoVUlVRVQwdlFWSkhBUUk2UWtnZUMxb2ZGUnFITnlNeUZ3bzJGd0FCQU44Qm1RRTJBazhBQXdBQUFSVWpOUUUyVndKUHRyWUFBQUVBei85bUFjd0Nad0FVQUFBQkJ3WUhCaFVVRnhZWEl6QW5KaWNtTlRRM05qY0J3eDl6Q2dGSktqTmlFbnNOQVVvaEtRSm1KcEdyRGc1N2lFMHlFNU8zRWhPUmlEd3FBQUVBaXY5bUFZWUNad0FWQUFBVE54WVhGaFVVQndZSEJqRWpOamMyTlRRbkppY21rMTlkSmhGekNnc1NZbGt3SEc0SUNCNENaZ0ZmbTBWQXVKME5EUk5Ya1ZOSHJaY0tDaVlBQVFBK0FIWUNFUUl5QUE0QUFCTW5OeGMxTXhVM0Z3Y1hCeWNISjkyZkdxRmFwQnFpWlVwa1lrb0JOVEZXTWFlbk1WWXhpelNMaWpRQUFBRUFUUUJOQWN3QnpRQUxBQUFUTXpVekZUTVZJeFVqTlNOTmtGcVZsVnFRQVR5UmtWcVZsUUFCQUM3L2VnRDFBSEFBQXdBQU53Y2pOL1Y0VDFKdzl2WUFBQUVBVFFEa0FjNEJPd0FEQUFBVElSVWhUUUdCL244Qk8xY0FBUUJzLytjQkVBQjFBQThBQURjME56WXpNaGNXRlJRSEJpTWlKeVpzS0JNWE1CZ0tLQk1YTUJnS0xpZ1ZDaVVRRWlnVkNpVVFBQUFCQURmL3JBSUVBbmNBQXdBQUZ3RXpBVGNCY0YzK2tWUUN5LzAxQUFBQ0FIei85d0hjQWp3QUR3QVdBQUFURkJjV016STFGRFUwSnlZaklnY1VFeklSRUNBUkVOY2RGQ1JWSFJRa1ZBRlZzUDZnQVJwK0t5QzdFeUIrS3lDNkFRRVYvdDcrM1FFaUFTTUFBUUJ0QUFBQjNnSXlBQW9BQUJNM014RXpGU0UxTXhFSGJaUmVmLzZpZ1dFQnkyZitLRnBhQVdwREFBQUJBR0VBQUFIM0Fqd0FKUUFBRXpVME56WXpNaGNXRlJRSEJnY0dCd1lWTXpVekZTRTFORGMyTnpZM05qVTBKeVlqSWhWaFdUaENURHc3YXd0Y1NBc0RzRnIrbUdVSVhrd05CQjRmS0hVQmFocGhOU0lzSzBGZ1RBZzRMU0VJQ0VDYVdWWkdCVGt0SlFzTEZSY1hkQUFBQVFCdC8vY0I3Z0k5QURRQUFEY1dGeFl6TWpjMk5UUW5KaXNCTlRNeU56WTFOQ2NtSXlJSEJnY25OamMyTXpJWEZoVVVCd1lIRmhjV0ZSUUhCaU1pSnlZbnR5MG9DUW8vSWhBdkNna3dLU29XQ0NrWUlUTXpDUXBHUlVjWkdsTTVOREVEQWl3SkFsdzJQVnRKQndlV09BY0NNQmNYUVJJRVhpRU5EQ0FTQ3pRSURENVJFUVl1S2tNOEtRSUNKVlVOREdBeUhWTUhDUUFDQUZZQUFBSUNBaklBRGdBUkFBQTNBVE1STXhVakZUTVZJelV6TlNFQkJ6TldBUkZlTkRROTJUNys3d0VSaG9iSkFXbit0VjR2V2xvdkFRdXRBQUVBVlAvMkFnc0NNZ0FmQUFBVEZUTXlGeFlWRkFjR0l5SW5KaWMzRmhjV016STNOalUwSnlZckFSRWhGZTlCampRWlpqdERXMTBNRHpSTE5ROFFVaVFRVXhNWG53RndBZGgwVmlnM2FETWVPd2NLVGpNSEFqQVVGMGdNQXdFc1dnQUFBZ0JyLy9VQjZnSXlBQm9BS2dBQUFUSVhGaFVVQndZaklpY21QUUUwTnpZN0FSVWpJZ2NHSFFFMkZ5SUhCaFVVRnhZek1qYzJOVFFuSmdFcVdUb3RSelZFV0RvdFIwTllob1pES3hZdE5Ea2NEQ3NZSGpvY0RDb1pBVjVBTWtKWE5paEFNa08rVVQ0N1hqVWRHaU1aWGkwVEZpNGFEeTBVRmkwYUR3QUFBUUJoQUFBQjVnSXlBQWtBQURNVEl4VWpOU0VWQmdQYmxiVmFBWVVJb0FIWU1Zc2RHUDREQUFNQWUvLzNBZDBDUGdBTkFCZ0FNQUFBSlRRbkppTWlCd1lWRkJjV016SURGREkxTkNjbUl5SUhCZ2MwTnpZek1oY1dGUlFIRmhVVUJ3WWpJaWNtTlRRM0pnRi9LUk1YTHhnTVFnZ0pVNkNhSVJNWk54SUVYbFVwTFUwekt5NDBSU3hBZVNnUU5DN0hMeGdNS3hRWll3a0JBVm8zT1JrT0NDSUhDRlVuRXkwbU9rSXJORWwyTnlOc0tqVktOeWNBQUFJQVd3QUJBZGdDUHdBYUFDb0FBQ1VpSnlZMU5EYzJNeklYRmgwQkZBY0dLd0UxTXpJM05qMEJCaWN5TnpZMU5DY21JeUlIQmhVVUZ4WUJHVms1TEVjMFExZzZMVVpEV0lhR1F5b1dMVFE0SEEwcUdCODRIQTBxR05WQk1rSlhOaWhBTWtPL1VENDhYalljR2lNWlhpd1VGeTBhRUN3VUZ5MGFFQUFDQUxmLzV3RmJBYWNBRHdBZkFBQVRORGMyTXpJWEZoVVVCd1lqSWljbUV6UTNOak15RnhZVkZBY0dJeUluSnJjcEV4WXdHQW9vRXhjd0dBb0JLQk1XTUJnS0tCTVhNUmNKQVY4cUZBb2xFQk1vRlFvbEVQN2hLUlFLSlJBU0tCVUtKZzhBQWdDSS8zb0JXd0duQUE4QUV3QUFFelEzTmpNeUZ4WVZGQWNHSXlJbkpoY0hJemUzS1JNV01CZ0tLQk1YTUJnS21IaFBVZ0ZmS2hRS0pSQVRLQlVLSlJEZDl2WUFBQUVBUFFBUEFpRUI0UUFGQUFBQkRRRVZMUUVDSWY3Y0FTVCtIQUhrQVlhS2xWanQ1UUFBQWdCMkFLTUJyUUdtQUFNQUJ3QUFFeUVWSVJVaEZTRjJBVGYreVFFMy9za0JwbGRWVndBQkFEUUFEd0lZQWVFQUJRQUFFelVOQVRVbE5BSGsvaHdCSkFHR1crWHRXSlVBQWdBMi8rY0J2QUkzQUIwQUxRQUFOelUwUHdFMk5UUW5KZ2NHSFFFak5UUTNOaGNXRnhZVkZBOEJCaDBCQnpRM05qTXlGeFlWRkFjR0l5SW5Kc2czT1NwQlBUVWpWbFJWWDJJWEJVTTdISHdvRXhjd0dBb29FeGN3R0FxVE9pMHZNQ2t0TUJBUEZnOFlFaEpESVNBWEdFVVFFajg2TkJ3Wk9tVW9GUW9sRUJJb0ZRb2xFQUFDQUZvQUFBSExBak1BSlFBd0FBQUJKaU1pQndZVkZCY1dPd0VWSXlJbkpqVTBOell6TWhjV0hRRUdCeU1pSnlZMU5EYzJNeGMxTkNjakloVVVGeFl6QVdnUlJEd1lEVWNMRG14cmh5TVBSeXRIaUNJT0JTVk1RUnNMTGhZZExRVVdKQndFQkFHMkxWc3dRcWdiQlU2Q09GeThQQ1dJT1Z4M0lnSlVJeWhpS0JMa1JCNHlURUVHQVFBQ0FCMEFBQUk3QWpJQUFnQVVBQUFCTXljVE15Y2pCek1WSXpVekV5TTFNeE16RlNNQS8xMHhQalV5ZlRJMTFVUitaZW1XUXRJQko0YitwNVdWVkZRQmlsVCtJbFFBQXdCUkFBQUNJQUl5QUFnQUV3QW1BQUFUTXpJMU5DY21Ld0VSTXpJM05qVTBKeVlyQVRjV0ZSUUhCaU1oTlRNUkl6VWhNaGNXRlJUcGxrVXVDUTJYaVRNWERqVVJFWXJ0U2o0Z0tQNjNQajRCU0VBb0dnR0NNQ1VHQWY1Mkx4b25SUnNKSnpGcmF6TWFWQUdLVkM0ZktVNEFBUUJYLy80Q0FRSS9BQ3dBQUFFeUZ4WVhGamMyTlRZM0Z3WVZGQmNISmljbUl5SUhCaFVVRnhZek1qYzJOeGNHQndZaklpY21OVFEzTmdGRlB4OEVCQW9CQVFNSlBoTVRTUlV3RnhjL0xDYzJLRFEwTUFNRFFTMVFHQlpvUmtCTVJBSTBHQUlFQndJQ0F4WVRFRFFQRmk4UktSWUtQVGRTWEQ0dU5nTUVQemdUQmxsU2NIeFVTd0FBQWdBMEFBQUNKUUl5QUFvQUdRQUFOek15TnpZMU5DY21Ld0VETXhFak5TRXlGeFlYRmdjR0l5SFVWVXN4S2k0dlNWV2dSa1lCRkhGQktRRUJMVUJ3L3V4VVFqaE9TanM5L25ZQmlsUjVUazFUVTNnQUFRQktBQUFDS0FJeUFCY0FBQUVWSXpVakZUTTNNd2NoTlRNUkl6VWhGeU1uSXhVek5RSEFSNUQzRER3TS9pNUdSZ0hRQ1RvSjk1QUJoN0E1dkV5Z1ZBR0tWSmREZWlNQUFRQXRBQUFDT1FJeUFCVUFBQk1WTXpVekZTTTFJeFV6RlNFMU14RWpOU0VYSXlmcGJFbEpiS24rbTJGaEFnQU1OQXNCM25FdndUN0ZWRlFCaWxTK2FnQUFBUUJXLy80Q0NBSTlBQ2tBQUFFeUZ4WTNOamNYQmhVVUZ3Y21KeVlqSWdjR0ZSUVhGak15TnlNMU14VUdCd1lqSWljbU5UUTNOZ0ZHU0J3S0FnTUpQeElUU2lFOUN3cFFLQmhJSWlOMUJVV1JCbWNuTTJoRlBrMUdBalFnQ0FrYURnNHhFUlV3RWpzTUFsWXlPM2M2SEp4SVNLWXpGRnRTYjNsVlRBQUFBUUFmQUFBQ09RSXlBQnNBQUJNek5TTTFNeFVqRVRNVkl6VXpOU01WTXhVak5UTVJJelV6RlNPKzNFZm1SVVRtU054SDVrVkY1a2NCZ2x4VVZQNTJWRlRXMWxSVUFZcFVWQUFCQUZrQUFBSC9BaklBQ3dBQUFTTTFJUlVqRVRNVklUVXpBUUtvQWFXa28vNWJxUUhlVkZUK2RsUlVBQUVBTy8vL0FoSUNNZ0FZQUFBVEZCY1dNekkzTmpVUkl6VWhGU01SRkFjR0l5SW5KajBCa2dZUlMwc1RCYTRCYVdFeU5sUlhPaWtCRmxjYlRVQVFFQUVuVkZUK3NUWXNMa013Tm00QUFBRUFCUUFBQWxJQ01nQWZBQUFCSVJVakJ4WVhGaGN6RlNNbUp5WW5CeFV6RlNFMU14RWpOVE1WSXhVM0l3RWxBUVJ2b1hCZkNBaGFqMDg2S1RZclcvNzZVbEwzVEpFY0FqSlVxeCtpRGc5VmtERWpEUzV2VkZRQmlsUlVtNXNBQUFFQVJ3QUFBaVFDTWdBTkFBQVRJelVoRlNNUk16Y3pCeUUxTTV4VUFRVlh4aEZYRlA0M1ZRSGVWRlQrZG92ZlZBQUFBUUFJQUFBQ1VBSXlBQndBQUFFUk14VWpOVE1SSXdNakF5TVJNeFVqTlRNUkl6VXpGUmMzTlRNVkFpSXEwazRFakJXTUIwM1ZMaTZVa0pXUEFkNytkbFJVQVM3Kzl3RUUvdGRVVkFHS1ZBdjcvZ2hVQUFBQkFBRC8rUUpZQWpJQUZRQUFFd0VSSXpVekZTTVJJd0VqRVRNVkl6VXpFU00xTTVZQk1VM2VOMUQrd3dKTzREZzRsZ0l4L21zQlFsUlUvaHNCcHY2MVZGUUJpbFFBQWdBKy8vY0NHZ0k3QUE4QUh3QUFBVElYRmhVVUJ3WWpJaWNtTlRRM05oY2lCd1lWRkJjV016STNOalUwSnlZQkxHVkhRa3BGWDJWSFFrcEZYMElzSlR3bk1FSXNKVHduQWp0YlZYSjZWMUZiVlhKNlYxRmJSRGhMWkR3blJEaExaRHduQUFJQU5RQUFBaTBDTWdBS0FCMEFBQk16TWpjMk5UUW5KaXNCQXpNUkl6VWhNaGNXRlJRSEJpc0JGVE1WSWRTWU5TQVlVUTRPbUo5RlJRRk5WekFrUlM4M3JtNys4d0VPSlJzb1Z3OEMvbllCaWxROUxrVmlQU2xtVkFBQUFnQTUvMDhDR2dJMEFDb0FPZ0FBTndjMk16SVhGak15TnpZM0Z3Y0dJeUluSmlNaUJ3WUhKemNtSnlZMU5EYzJNeklYRmhVVUJ3WWpJaE1pQndZVkZCY1dNekkzTmpVMEp5Ym9KUkVVSENjZER4b2pCd1F2TlNRZEhDZ2REalJKQWdJdmR6NGdGRTFFWFdkR1FVMUVYU0FnUWl3bFBDY3dRaXdsUENjS0xnTWpHaDRIQXpjckdTTWFNZ0lCTzVjbldUWTZmRlJMV1ZKd2ZGUkxBZUpFT0V0a1BDZEVPRXRrUENjQUFBSUFDUUFBQWkwQ01nQUtBQ2tBQUJNek1qYzJOVFFuSmlzQkV4WVhGaGN6RlNNbUp5WW5JeFV6RlNFMU14RWpOU0V5RnhZVkZBY0dJNm00VGhzTFRCQVl1TDRuTUE0R1c1UWxJeDA0VTJmKytVWkdBWGxUTVNkTktqUUJNaTBTRjBvS0F2OEFGazhXRDFSakt5UXNpbFJVQVlwVU15bENhakViQUFBQkFHRC83Z0h1QWtFQVFnQUFBUVlIRkJjbkppY21JeUlIQmhVVUh3RVdGeFlWRkFjR0l5SW5KZ2NHRHdFM05qVTBKeVluTXpBWEZoY1dNekkzTmpVMEx3RW1KeVkxTkRjMk16SVhGamMyTndIakNRUVlUd2s0RmhnK0ZnYzZhbFlMQWtRek96bzRDQU1GQ2o0UENSSUVBajROSFRvVkUwc09BajV4VGdrQ1VDNDFNeklLQWdJSEFrRVhRUzhkQWk4VUNDSUxEUzhiS2lwV0RnOU9OaWd2Q0E4VUdBRXFHeU1jTlFvRUhUUVVCejhMREQwZEtpUlBEQTVQS1JnakJ3Y1dEZ0FBQVFBaUFBQUNOZ0l5QUE4QUFBRW5JeEV6RlNFMU14RWpCeU0zSVJjQjd3cU1ldjZ6ZVl3S1J3b0NBQW9CVjRmK2RsUlVBWXFIMjlzQUFBRUFIUC81QWp3Q01nQWRBQUFCSXhFVUJ3WWpJaWNtTlJFak5UTVZJeEVVRnhZek1qYzJOUkVqTlRNQ1BDODJSbWxqU0RRdHpFc21KejVVS1JSSnpBSGUvdFU3T0VkTk9EVUJLMVJVL3YwMkt5cEhJaUlCQTFRQUFBRUFEZi93QWtzQ01nQU9BQUFCSXdNakF5TTFNeFVqR3dFak5UTUNTeXpIVjhrcnhEdVdsenpFQWQ3K0VnSHVWRlQrZ0FHQVZBQUFBUUFBLy9FQ1dBSXlBQlFBQUFFekZTTURJd3NCSXdNak5UTVZJeHNCTXhjVEl3R1N4aGlCT1ZwYk00SWN4bHhJVGxST1Mxc0NNbFQrRXdGRi9yc0I3VlJVL3VnQkEvNEJFd0FCQUJRQUFBSkVBaklBR3dBQUFRY1hNeFVqTlRNbkJ6TVZJelV6Tnljak5UTVZJeGMzSXpVekZRSDFrcEpQOFRWYld6WHpVSkNSU1BNOFcxbzg4Z0hleGNWVVZIWjJWRlRGeFZSVWVIaFVWQUFBQVFBZ0FBQUNOd0l5QUJRQUFDVXpGU00xTXpVREl6VXpGU01YTnlNMU14VWpCd0ZYT3MwNXVpUE1QSHg3UE13anZWUlVWSXNBLzFSVXBxWlVWUDhBQUFFQVd3QUFBZmdDTWdBTkFBQWxOek1ISVRVQkl3Y2pOeUVWQVFHY0NWTVAvbm9CQXJJRVZBa0JoUDcrVkhmTEZBSEtkOHNYL2prQUFRREgvM1lCZHdJeUFBZ0FBQk16RlNNUk14VWpFOGl2VjFhdkFRSXlWZjN0VkFLN0FBQUJBR0QvckFJdEFuY0FBd0FBQlNNQk13SXRYLzZTWFZRQ3l3QUFBUUNyLzNZQld3SXlBQWdBQUFFVEZTTTFNeEVqTlFGYUFhOVdWd0l5L1VVQlZBSVRWUUFCQUY4Qk5RSDVBakFBQlFBQUFRY25CeWMzQWZrdXBLTWx6Z0ZqTG9oN0ljMEFBUUFqLzNBQ052L0xBQU1BQUJjaEZTRWpBaFA5N1RWYkFBQUJBTDhCNGdHV0FwRUFBd0FBRXpNWEk3OWRlaThDa2E4QUFBSUFLZi95QWpZQnRRQU1BQzhBQUNVbUl5SUhCaFVVRnhZek1qY1hNeFVqTlFZSEJpTWlKeVkxTkRjMk16SVhOVFFuSmlNaUJ5Y3dOell6TWhjV0ZRRitXa1ZDRkFVb0h5UlJQbHBldURNMUVoVlpQREZMTURzNVpqOGlNRDVVSER0SExHQkxRTG9hTUFzS0doWVNQemhVS3kwSkF6UXJQbE11SHhvS0xSUUxKVUVYRnpBcU5RQUNBQ1AvK0FJOEFua0FGZ0FtQUFBVEJ5YzNGVFl6TWhjV0ZSUUhCaU1pSnlZeEZTTTFNeE1pQndZVkZCY1dNekkzTmpVMEp5WndSd2FuUFZCa1JUeExRbGhLUHdPa1NlZEFMUjgyS0M1QkxCNDJKd0ljRGxRWC9qZEtRRk5lUXp3ekF5NVVBUVEwSlNvN0toNDFKQ284S1I0QUFBRUFSUUFBQWZVQnF3QXBBQUFCTnhjd0J3WVhNQmNISmljbUl5SUhCaFVVRnhZek1qYzJOeGNHQndZaklpY21OVFEzTmpNeUZ4WUJxQTgrRHdRQ0QwNFdPUlVWUkMwYU95WXBSallDQWlveVZCRVBiMFUyVEVCVlFEUUtBWW9nR1N3T0J5UWFMUklIT2lJaVFpc2NKZ0lCUXlrTUFrczdUMkJBTmlNSEFBSUFLZi80QWo0Q2VRQVdBQ1lBQUNFak5RWUhCaU1pSnlZMU5EYzJNeklYTlFjMU54RXpKelFuSmlNaUJ3WVZGQmNXTXpJM05nSStwRFF5RWhSaVJqMUtRMWhTT21PK1NhUTJLQzVCTEI0Mkp5NUFMUjh1S2drRFNVQlVYa004TjVVVFZ5WDkyNEU3S2g0MUpDbzhLUjQwSlFBQUFnQkZBQUFDQndHckFBWUFId0FBQVNZaklnY0dCd1VoRmhjV016STNGd1lIQmlNaUp5WTFORGMyTXpJWEZoY0JwaVphUHlnTEF3RlcvcHdRTENFclZENHFQbDhRRDJWR08weEFWV2RETkFNQkRFc3pEUXRQTlI4WExUODBDZ0pIUFZGZ1FEWklPVXdBQUFFQVZRQUFBZUlDZGdBZEFBQTNFU00xTXpVME56WXpNaGNISmljbUl5SUhCaDBCTXhVakVUTVZJVFdlU1VsYUtTMVRRU1lrR0JFWFNCTUYzOStuL3JaVUFRRlZUMDBoRHk5TUdnVUVPUTRRSFZUKy9sUlVBQUFDQUNmL093SS9BYklBSWdBeUFBQUJGU01SRkFjR0l5SW5OeFlYRmpNeU56WTNOUVlIQmlNaUp5WTFORGMyTXpJWE5RY2lCd1lWRkJjV016STNOalUwSnlZQ1AweE5TMUZlWXhBdVVCd1dVaWdVQVIwMEhCNWpSajFMUWxoY01JdEFMUjgyS0M1QkxCNDJKd0dxVlA2TFB6UXpPbElnRUFZeUdSNUJKaE1LU1VGVFhrTThRanBTTkNVcU95b2VOU1FxUENrZUFBQUJBQllBQUFKQUFua0FJQUFBRXlNMk16SVhGaDBCTXhVak5UTTFOQ2NtSXlJSEJnY1ZNeFVqTlRNUkJ6VTNyQUZZUGtORFBqdlFQQ1FlS1RwVUJBUTcwRHc4bGdHRU5ESXZMOVJVVktJckl4MDJBd0xTVkZRQnZoSlVKUUQvL3dCbkFBQUI4d0l5RUNZQTh3QUFFQVlCL1JJQUFBSUFQUDg3QVdFQ01nQVRBQmNBQUJjV0Z6SXpNamMyTlJFak5UTVJGQWNHSXlJbkFSVWpOVXdoUVFZRkh4d1RhTUk5TFQ1UkxBRWFTbFFYQXlNV0ZnRjFWUDQzVVRFa0hnTFpZV0VBQUFFQU53QUFBa01DZUFBWEFBQWxNeWNIRlNNMU14RUhOVGNSTnlNMUlSVWpCeGN6RlNFQk5TTmtHcU5KU2FOT0lRRUJkV1dQaHY3eVZIMFd1MVFCdGhkVU1mNmVRRlJVVks1VUFBQUJBRndBQUFIOEFuZ0FDUUFBRXdjMU54RXpGU0UxTStTSTRyNytZSWdDRmlOVU1mM2NWRlFBQVFBQUFBQUNXQUc0QURFQUFBRTJOell6TWhjV0hRRXpGU01STkNNaUJ3WVBBVE1WSXdNMU5DY21JeUlIQmdjVk14VWpOVE1SSXpVekZUWTNOak15QVRrak5Rc0hXQm9JTzVVZUp5QUNBZ0U3bFFFTUJnd3NHUVFDTzlBOFBIc1FOaFFMUndGMUxCTUVWeHNlMDFVQkExNHhCQVRUVlFFQkFrWVBDU3dIQjlKVlZRRUJWREllR1FrQUFRQVdBQUFDUUFHNEFDQUFBQk1qTmpNeUZ4WWRBVE1WSXpVek5UUW5KaU1pQndZSEZUTVZJelV6RVNNMU02d0JXRDVEUXo0NzBEd2tIaWs2VkFRRU85QThQSllCaERReUx5L1VWRlNpS3lNZE5nTUMwbFJVQVFKVUFBQUNBRWIvK0FJUkFiSUFEd0FmQUFBQk1oY1dGUlFIQmlNaUp5WTFORGMyRnlJSEJoVVVGeFl6TWpjMk5UUW5KZ0VzWWtZOVMwSllZa1krVEVOWFFDMGZOaWd1UVN3ZU5pY0Jza2xBVkY1RFBFaEJWRjVEUEZvMEpTbzdLaDQxSkNvOEtSNEFBZ0FoLzBBQ09RR3lBQmdBS0FBQUZ4RWpOVE1WTmpjMk16SVhGaFVVQndZaklpY1ZNeFVqTlNVeU56WTFOQ2NtSXlJSEJoVVVGeFp0U2FRME1oSVVZa1k5U2tOWVVqcE85UUV6UVN3ZU5pY3VRQzBmTmlobUFieFVMaW9KQTBsQVZGNURQRGVWV2xxNE5TUXFQQ2tlTkNVcU95b2VBQUlBRy85QUFqUUJzZ0FZQUNnQUFBVXpGU00xTXpVR0l5SW5KalUwTnpZek1oY1dGelV6RlNNRE1qYzJOVFFuSmlNaUJ3WVZGQmNXQWVoTTlVNDZVbU5HUFV0Q1dFaytCUUdrU2VoQ0xCODJLQzVDTEI0MkoyWmFXcFUzU1VGVFhrTThNUVFCTGxUKy9EVWtLanNxSGpVa0tqd3BIZ0FCQUJZQUFBSGhBYmdBRndBQUFTWWpJZ2NHQnhVekZTTTFNeEVqTlRNVk5qTXlGeFlYQVpZaE5EcFVCQVE3MER3OGxWZytQajRYRFFFekxqWURBdEpVVkFFQ1ZDWTBLUkFRQUFFQVgvLzBBZXNCc1FBOUFBQUJCZ2NVRnljbUl5SUhCaFVVSHdFV0Z4UUhCaU1pSnlZSEJnY2pOelkxTkNjbUp6QXpGak15TnpZMU5DOEJKaWNtTlRRM05qTXlGeFkzTmpjMk53SGdDd0lZUWh4ZFF4TUZPbTliQTA0dU5rNG1DQU1EQ2o4UENSUUNBajhWWVdZS0FUbG9ZQVlCVkN3elNCNEtBZ0VEQWdJQnNCY2FLQllCS0JnR0J5SVhKaTFKUUNJVEdnVUxCaFVoRkJNU0lBUUNLeUVEQXg0VUl5ZE1CZ2MrSGc4UkJ3Z0lCQUlEQUFFQUcvL3RBaE1DTWdBYkFBQVRNelV6RlRNVkl4VVVGeFl6TWpjMk1SY0dCd1lqSWljbVBRRWpHMDVhNGVFekpDNUhWQXNsUzFBaEczRTlKVTRCcW9pSVZKYzZKaHRkRFVGVElBMURLVFRKQUFBQkFCYi84Z0pBQWFvQUh3QUFKUVlqSWljbVBRRWpOVE1WSXhVVUZ4WXpNamMyTnpVak5UTVZJeEV6RlNNQnExZytWVUF2TzlBOEpCNHBPbFFFQkR2UVBEeVZKalE1S2kzVVZGU2lLeU1kTmdNQzBsUlUvdjVVQUFBQkFBci84d0pPQWFvQURnQUFBU01ESXdNak5UTVZJeGMzSXpVekFrNUtyVk92UzlveGVYb3gyUUZXL3AwQlkxUlUvZjFVQUFBQkFBRC82QUpZQWFvQUZBQUFFeGMzTXhjM0l6VXpGU01ESXljSEl3TWpOVE1WZ3poSlVFWStTY2trY2tKVVZ6MXhKOGtCVnMyOHZNMVVWUDZTM053QmJsUlVBQUVBRFFBQUFrc0JxZ0FiQUFBekl6VXpOeWNqTlRNVkl4YzNJelV6RlNNSEZ6TVZJelV6Sndjei92RlZrcFJUOGpGZVhESDBWcE9SV1BRdlcxc3VWSUNDVkZSU1VsUlVnb0JVVkU5UEFBRUFBUDlZQWxRQnFnQVRBQUFGSVRVek53TWpOVE1WSXhjM0l6VXpGU01ETXdGVC9xM1ZKcTVEMkRWK2VTN2VUTk1lcUZSUkFWbFVWUGo0VkZUK1ZnQUJBRk1BQUFJRkFhb0FEUUFBQ1FFek5UTVZJVFVCSXhVak5TRUI4LzcwMDB2K1hnRUp6RTBCb0FGai92RWtlRW9CRENSNEFBQUJBSGYvaUFGNEFtSUFKZ0FBTnhZWEZSUVhGanNCRlNNbUp6VTBKeVlqTlRJM05qMEJORGMyT3dFVkl5SUhCaDBCRkFjRzZDb0ZKUkFZRkJTZ0JSMFNHU3dVQjEwZ0tSUVVQZ3NFSlFYMUpUVnZUQklIUHdtQ2J5VWFFRWd2RVE5dlloOEtQamdTSEc4eElRUUFBQUVCQVA5eEFWZ0NNZ0FEQUFBQkVTTVJBVmhZQWpMOVB3TEJBQUFCQUpmL2lBR1lBbUlBSmdBQUpTWW5OVFFuSmlzQk5UTXlGeFlkQVJRWEZqTVZJZ2NHSFFFVUt3RTFNekkzTmowQk5EYzJBU2NxQlNVUUdCUVVjeVVPSEJJWkxCUUhwaFFVUGdzRUpRWDFKVFZ2VFJJSFBrc2JKVzhsR2hCSUx4RVBiNHMvTnhJY2J6RWhCQUFCQUFjQWZnSk5BVUFBSFFBQU56WTNOak15RnhZWEZqTXlOelkzRndZSEJpTWlKeVluSmlNaUJ3WUhCMDVLQ0FnNlB6WVJIQjR2TmdRSk1sRXlFUkE3UHpjUkd4MHZNUVFPOEVZSkFTOHBDQTR3QkFnMlNBMEZNQ2tJRFN3RURBQUNBTUwvN2dGV0Ftb0FBd0FUQUFBWEV6TWJBUlFIQmlNaUp5WTFORGMyTXpJWEZ0UUtXQW9XSnhBVExSVUlKUkVVTFJVSUVnSEcvam9DUENjU0NDTU9FQ1VUQ0NNT0FBQUJBRVgvd1FIMUFtVUFMUUFBRXpVekZSWVhGajhCRnpBSEJoY3dGd2NtSnlZaklnY0dGUlFYRmpNeU56WTNGd1lIRlNNMUppY21OVFEzTnZoYUpDUUpCUTgrRHdRQ0QwNFdPQlVXUkMwYU95WXBSalVEQWlvc1RscGxOU0pNTFFIaGhJTUhGd2NJSUJndERnWWtHeTBUQnpvaUlrTXJIQ2NCQWtRa0RuOStFbEF6UEdCQUpnQUFBUUEzLzhrQ0JRSmNBRHdBQUJNekppYzBOell6TWhjV0Z3Y21JeUlIQmhVVUZ4WVhNeFVqRmhVVUJ6STNNaGNXTXpJM05qY1hCaU1pSnlZaklnY0dCeWMyTnpZMU5DY21KeU0zUEF3QlhUOUlXVTRLQ2pwQVNGRW1FZzBCQWRDcERSd0JKeDR0SFFzeklBWUdKRE5RSWkwbUZ6WVpDZ281S1JzUkRBRUJaQUZqSnhoZ05pUkZDQW82UFRFWUhSMGVBZ0pVSGlROU9nUWxHQ0VHQjBNL0h4c1JCd29yS1Vjc0pSb2hCQU1BQWdBci8rMENMQUhyQUJzQUt3QUFBVElYTnhjSEZoVVVCeGNISndZaklpY0hKemNtTlRRM0p6Y1hOaGNpQndZVkZCY1dNekkzTmpVMEp5WUJMVUU0UmtCRUtpbEFRRUk1UVVBNVEwQkJLeWxGUUVjNFEwQXRIellvTGtFc0hqWW5BY2dqUmtCRU9VTkRPVUJBUWlNalJFQkJPVVJFTjBWQVJ5UmFOQ1VxT3lvZU5TUXFQQ2tlQUFJQUlBQUFBamNDTWdBQ0FDWUFBQUVqRnljekp5TTFNeFVqRnpNM0l6VXpGU01ITXhVakJ6TVZJeFV6RlNNMU16VWpOVE1uSXdGRExoZnZKeUVqekR3aXRDRTh6Q01oS0dzL3FzUTZ6VG5BcGo1b0FWY2ZlUzFVVkMwdFZGUXRXbFZhVkZSVVZGcFZBQUFDQVFEL2NRRllBaklBQXdBSEFBQWxFU01SUFFFekZRRllXRmluL3NvQk5wcng4UUFDQUV6L3BBSHJBa0lBRUFCQ0FBQVRCZ2NHRlJRWEZoOEJOamMwSnhZbkppYzBNeUVWSXpVaklnY0dGUlFYRmhjV0ZSUUhCZ2NXRnhZVkZBY0dJeUUxTXhVek1qYzJOVFFuSmljbU5UUTNOamNtNkNRTUJGMEdDekkzQTFhTHJnMkdVUUVZVTNFb0JRSXpWUnBJTnhFTEhBWUVQUWtML3VoVGNTZ0ZBakZSR1VRN0NnZ3JBV3djSmdzSk56d0VCeDh0S1RFNFczRUlvRXlZUkJNR0NCRWVNeFk5U1M1Q0V3Z2lGUTBRUUFvQ21FUVRCZ2dSSGpNV1BVbEJPd2tHSXdBQ0FJRUI0Z0ZxQWk0QUR3QWZBQUFUTkRjMk16SVhGaFVVQndZaklpY21OelEzTmpNeUZ4WVZGQWNHSXlJbkpvRVpCZ2NiQ1FJWkJnY2JDUUtkR1FZSEd3a0NHUVlIR3drQ0FnZ2JDUUlaQmdjYkNRSVpCZ2NiQ1FJWkJnY2JDUUlaQmdBQUF3QUYvK2dDVXdJMUFCMEFMUUErQUFBbEJpTWlKeVkxTkRjMk16SVhCeVluSmlNaUJ3WVZGQmNXTXpJM05qY2xGQmNXTXpJM05qVTBKeVlqSWdjR0J4VTBOell6TWhjV0ZSUUhCaU1pSnlZQm1peEFTeTBnT2lrMFJpd3hGeUVFQkRJV0N5OFRGQ1VVQWdQKzhFZzVURjArTWtnNVRGMCtNbHBaVm5oOFYxUlpWbmg4VjFTYk1UNHNOazR3SWpjcUhRVUJNQlljT2hzTEZBSURURjQrTVVjNVRGNCtNVWM1VEFGOFYxUlpWbmQ4VjFSWlZnQURBSmtBaFFIVUFpWUFBd0FRQURNQUFDVWhOU0VuSmlNaUJ3WVZGQmNXTXpJM0Z6TVZJelVHQndZaklpY21OVFEzTmpNeUZ6VTBKeVlqSWdjbk1EYzJNeklYRmhVQjAvN09BVEp0UFNNckNnRWVFQkl4SlRZNGJpUWhDQWsrSXhZMkdoMGZRVEFSRmlRMEVTUXJHa0l1SFlVL3pCQWhCUVFTRGdjbElUTWFIUVFCSnhnZk9Cc05Ed1llQ3dRV0p3NE5JeGNiQUFBQ0FBMEFHd0kvQWNVQUJRQUxBQUFCQnhjSExRRUZCeGNITFFFQldxZXNNdjdnQVNBQkRhZXNNZjdnQVNBQmpaMmdOZFhWT0oyZ05kWFZBQUFCQUVjQWZRSHBBVnNBQlFBQUV5RVZJelVoUndHaVYvNjFBVnZlaGdBQkFIWUE1QUd0QVRzQUF3QUFFeUVWSVhZQk4vN0pBVHRYQUFRQUJmL29BbE1DTlFBSUFCWUFKZ0EzQUFBQk16STNOaWNtS3dFZkFTTW5JeFVqRVRNeUZ4WUhCaVVVRnhZek1qYzJOVFFuSmlNaUJ3WUhGVFEzTmpNeUZ4WVZGQWNHSXlJbkpnRU5OaDBFQkJZSUNqTk5RajlFRER1SUxSSVRHUlArMzBnNVRGMCtNa2c1VEYwK01scFpWbmg4VjFSWlZuaDhWMVFCT0JzYkRRVjJlbnA5QVNFd01DWWVCVjQrTVVjNVRGNCtNVWM1VEFGOFYxUlpWbmQ4VjFSWlZnQUJBRWNCM2dHaUFqSUFBd0FBRXlFVklVY0JXLzZsQWpKVUFBSUJFUUZiQWljQ2NBQVFBQ0VBQUFFakZCY1dNekkzTmpVMEp5WWpJZ2NHQnhVME56WXpNaGNXRlJRSEJpTWlKeVlCYkFFZENRc2ZEZ1FkQ1FzZ0RBUmJPU1V0UmlvYk9TVXRSaW9iQWVZZ0RRUWNDZ29nRFFRZUNBb0JSaW9iT0NVdFJpb2JPQ1VBQWdCTkFENEJ6Z0hDQUFzQUR3QUFFek0xTXhVekZTTVZJelVqRlNFVklVMlFXcFdWV3BBQmdmNS9BWHhHUmxwRFE0MVhBQUVBc2dFaUFhWUNlUUFmQUFBVE5UUTNOak15RnhZVkZBOEJCaFV6TlRNVkl6VTBQd0UyTlRRbkppTWlGYkkvSGlJMUpSdExTeHhxTnRoSFN4OFlFQlJHQWZzUFFSOFBJUmtoUFRFd0ZCUW1YRFUzTGk0WEZ4QU9Da1VBQVFDNkFSMEJvQUo3QUNvQUFCTVdGekkzTmpVMEp5WXJBVFV6TWpjMk5UUW5KaU1pQndZSEp6WTNNaGNXRlJRSEZoY1VCd1lqSWlmbUhpQXJFd1lnQkFRY0dCd01BeDhNRHlJakFnSXFPemc3SWhZaEhnTkJIUjQ2TUFGOEpRRWlDd3NxQ1FFNUZ3WUZGd29FSndJQ0pUd0RKQmdoSmhvZU9rQWRERHdBQVFDOEFlSUJrd0tSQUFNQUFBRUhJemNCazZrdWVnS1JyNjhBQUFFQUZ2OUFBa0FCcWdBYkFBQWxCaU1pSnhVakVTTTFNeFVXRnhZek1qYzJOelVqTlRNUk14VWpBYXRZUGpjeldqdVZCaWNiSWpwVUJBUTdsRHlWSmpRY3pnSVdWUDR3SHhRMkF3TFNWUDZxVkFBQkFBYi9uUUpUQWpJQUZnQUFCU00xTXpVaklpY21OVFEzTmpNaEZTTVJNeFVqRVNNQmRhTkphbGd4SWxjbUxnR2lOVFNPVDJOVXlVczFTSEFzRkZUK0UxUUNRUUFBQVFEZEFMRUJnUUUvQUE4QUFEYzBOell6TWhjV0ZSUUhCaU1pSnliZEtSTVdNaGNKS0JNWE1CZ0srQ2tWQ1NZUEVpZ1ZDaVVRQUFBQkFRei9QZ0c0QUJvQUVnQUFKUWMyRnhZSEJpTWlKemNXTnpZbkpnOEJOd0ZPQ2o0akh4TWJaeEVTQlZvZ0NRRUdWeGtNR2pZTkt5WXBPUUlpRENZS0NrTVNCbDRBQVFDNUFTVUJsd0oyQUFvQUFCTTNNeEV6RlNNMU16VUh1Vms1VE5KTk9nSTRQdjdsTmpiWktBQUFBd0NnQUlVQndRSXBBQU1BRXdBakFBQWxJVFVoQXpJWEZoVVVCd1lqSWljbU5UUTNOaGNpQndZVkZCY1dNekkzTmpVMEp5WUJ3ZjdnQVNDWFFTc2ROeVV0UWlzZE5pWXVMQm9PSnhVWUt4b09KaFdGUHdGbE5TUXNQeW9jTlNVclB5a2ROaVlVRlNnWkRpVVVGaWNhRGdBQUFnQVdBQnNDUmdIRkFBVUFDd0FBRXpjTkFTYzNKVGNOQVNjMytTMEJJUDdnTXF6K2V5MEJJUDdnTXF3QmpUalYxVFdnblRqVjFUV2dBQVFBRS8vN0Fra0NnUUFEQUJJQUZRQWdBQUEzRXhjRFB3RXpGVE1WSXhVekZTTTFNelVqTndjekFUY3pFVE1WSXpVek5RZXV6emZQUjdZL0lpSW9rQ20ydGxwYS9qRlpPRXpTVGpvTkFuUVMvWXlOOGQwL0h6dzhIN0p6QVpvOS91VTJOdGtvQUFNQUUvLzdBbGdDZ1FBREFBNEFMZ0FBTnhNWEN3RTNNeEV6RlNNMU16VUhBVFUwTnpZek1oY1dGUlFQQVFZVk16VXpGU00xTkQ4Qk5qVTBKeVlqSWhXdXp6ZlAwbGs0VE5KT09nRXlQeDRpTlNVYlMwc2NhamJZUjBzZkdCQVVSdzBDZEJMOWpBSTdQZjdsTmpiWktQN1BEMEVmRHlFWklUMHhNQlFVSmx3MU55NHVGeGNRRGdwRkFBUUFHdi83QWtrQ2dRQURBQklBRlFBK0FBQTNFeGNEUHdFekZUTVZJeFV6RlNNMU16VWpOd2N6SlJZWE1qYzJOVFFuSmlzQk5UTXlOelkxTkNjbUl5SUhKelkzTWhjV0ZSUUhGaGNVQndZaklpZXJ6emZQU3JZL0lpSW9rQ20ydGxwYS9tTWZJQ3NUQmlBRUJCMFpIQXdESHcwUEl5VXFPamc3SXhZaEhnTkJIUjQ2TUEwQ2RCTDlqSTN4M1Q4ZlBEd2ZzblBnSlFFaUN3c3FDUUU1RndZRkZ3b0VLeVU5QWlVWElTWWFIanBBSFF3OEFBSUFKdi93QWF3Q1B3QWRBQzBBQUFFVkZBOEJCaFVVRnhZM05qMEJNeFVVQndZbkppY21OVFEvQVRZOUFUY1VCd1lqSWljbU5UUTNOak15RnhZQkdqYzVLa0U5TlNOV1ZGVmZZaGNGUXpzY2ZDZ1RGekFZQ2lnVEZ6QVlDZ0dUT2kwdk1Da3RNQkFQRmc4WUVoSkRJQ0FYR0VRUUVqODZOQndaT21Vb0ZRb2xFQklvRlFvbEVQLy9BQjBBQUFJN0F3a1FKZ0JEQVhnUUJnQWtBQUQvL3dBZEFBQUNPd01KRUNZQWRnUjRFQVlBSkFBQS8vOEFIUUFBQWpzQzRSQW5BZW9BQUFEWUVBWUFKQUFBLy84QUhRQUFBanNDcVJBbUFnQ3NseEFHQUNRQUFQLy9BQjBBQUFJN0FxWVFKZ0JxTm5nUUJnQWtBQUQvL3dBZEFBQUNPd01RRUNjQi9nQTRBSndRQmdBa0FBQUFBZ0FWQUFBQ1R3SXlBQUlBSUFBQUFUVUhOeFVqTlNNVk16Y3pCeUUxSXdjekZTTTFNeE1qTlNFWEl5Y2pGVE0xQVNNczhFY2tpd3c4RFA3Z1BESTExVVIrWlFIUENUb0ppeVFCSjRhR1lMQTV2RXlnNlpWVVZBR0tWSmREZWlQLy93QlgveUlDQVFJL0VDWUFlc3ZrRUFZQUpnQUEvLzhBU2dBQUFpZ0RDUkFtQUVNT2VCQUdBQ2dBQVAvL0FFb0FBQUlvQXdrUUpnQjJFWGdRQmdBb0FBRC8vd0JLQUFBQ0tBTGhFQ2NCNmdBTkFOZ1FCZ0FvQUFELy93QktBQUFDS0FLbUVDWUFha040RUFZQUtBQUEvLzhBV1FBQUFmOERDUkFtQUVNQmVCQUdBQ3dBQVAvL0FGa0FBQUgvQXdrUUpnQjJCSGdRQmdBc0FBRC8vd0JaQUFBQi93TGhFQ2NCNmdBQUFOZ1FCZ0FzQUFELy93QlpBQUFCL3dLbUVDWUFhalo0RUFZQUxBQUFBQUlBTUFBQUFpVUNNZ0FPQUNFQUFEY3pNamMyTlRRbkppc0JGVE1WSXdjek5TTTFNelVqTlNFeUZ4WVhGZ2NHSXlIVVZVc3hLaTR2U1ZWS1NxQkdTa3BHQVJSeFFTa0JBUzFBY1A3c1ZFSTRUa283UFlaYXFxcGFobFI1VGsxVFUzai8vd0FBLy9rQ1dBS3BFQ1lDQUt5WEVBWUFNUUFBLy84QVB2LzNBaG9ERWhBbkFFTUFBUUNCRUFZQU1nQUEvLzhBUHYvM0Fob0RFaEFuQUhZQUJBQ0JFQVlBTWdBQS8vOEFQdi8zQWhvQzZoQW5BZW9BQUFEaEVBWUFNZ0FBLy84QVB2LzNBaG9Dc2hBbUFnQ3NvQkFHQURJQUFQLy9BRDcvOXdJYUFxOFFKd0JxQURZQWdSQUdBRElBQUFBQkFKb0FiUUhRQWFRQUN3QUFQd0VuTnhjM0Z3Y1hCeWNIbTF0Y1FGdGJRRnRiUUZ0YXJscGNRRnhiUUZ0YlFGeGJBQU1BTS8vVUFpRUNZUUFWQUI0QUp3QUFBVElYTnhjSEZoVVVCd1lqSWljSEp6Y21OVFEzTmhNV016STNOalUwTHdFaUJ3WVZGQmNUSmdFc1BUazFTajg0U2tWZlFEbzFTa0ExU2tVWklTVkNMQ1VXZlVJc0pSVEJId0k3SjAwMFdsTm5lbGRSS2swMFhGQmxlbGRSL2pBWlJEaExPaTllUkRoTE5pMEJGQmIvL3dBYy8va0NQQU1KRUNZQVF3RjRFQVlBT0FBQS8vOEFIUC81QWp3RENSQW1BSFlFZUJBR0FEZ0FBUC8vQUJ6LytRSThBdUVRSndIcUFBQUEyQkFHQURnQUFQLy9BQnovK1FJOEFxWVFKZ0JxTm5nUUJnQTRBQUQvL3dBZ0FBQUNOd01KRUNZQWRnUjRFQVlBUEFBQUFBSUFOUUFBQWkwQ01nQUlBQjhBQURjek1qYzJOVFFyQVFNekVTTTFNeFVqRlRNeUZ4WVZGQWNHS3dFVk14VWoxSVpDSmhlSmZKOUZSZVpHclZZd0pWZ3FLYTVHNWQ4Z0ZCeFIvdFFCaWxSV0VEUW9RVjh0RmpsVUFBRUFJUC8wQWtFQ2RnQkhBQUFCTWhjV0J3WUhCZ2NHRlJRZkFSWVhGQWNHSXlJbkpnY0dCeU13TnpZMU5DY21KekF6RmpNeU5UUXZBU1luTkRjMk56WW5KaWNtSXlJSEJoVVJJelV6RVNNMU16VTBOellCR1dGSVFBZ0liQ2NHQ0RoaFZnRkxLREZISmdnREFRdytEZ2tUQWdJK0ZWdGlNMkZjQTJjS0RTTUVCU3djSkVrU0JhTkpTVWxhS1FKMlBqYzVSQm9KQmdjUEloZ2xLRTVGSUJBYUJRc0RHQ0VVRXhNZkJBSXJKeDBWSXk5UlNCd0RBd2doSXhVT09ROFEvanBVQVFKVVQwMGhELy8vQUNuLzhnSTJBb3dRSmdCREJmc1FCZ0JFQUFELy93QXAvL0lDTmdLTUVDWUFkZ2o3RUFZQVJBQUEvLzhBS2YveUFqWUNaQkFtQWVvRFd4QUdBRVFBQVAvL0FDbi84Z0kyQWl3UUp3SUEvNi8vR2hBR0FFUUFBUC8vQUNuLzhnSTJBaWtRSmdCcU92c1FCZ0JFQUFELy93QXAvL0lDTmdLVEVDWUIvanNmRUFZQVJBQUFBQU1BQnYveUFsSUJ0UUFHQUJZQVRnQUFBVFFqSWdjR0ZRY25KaU1pQnhRVkZCY1dNekkzTmpjWEJnY2lKeVkxTkRjMk16SVhGaGMwSnlZaklnY0dCeWN3UHdFMk16SVhOamMyTXpJVk1CY2pGQmNXTXpJM0JqY1hCZ2NHSXlJbkpnSDRSa0FKQVZvMkZoOCtCQ01VR3kwbENBRXhPVk5lTUI5SEpURW9KUkVPVHdjSUtENE5CaHc3T3c4UVlEWW5LUXdPb0FIcUtoQVVMaGtMSENzeUx4QVJRQ29IQVF4TFBRY0hVaFFHTkFRTkl4UUxMQWtCU1VVRFBpYzRYeXNXRHdjRVVBVUJIUVVEUVJjVUF6a25CZ0xOSVVnWkNob01Iejh5Q2dRckJnRC8vd0JGL3lRQjlRR3JFQ1lBZXJ6bUVBWUFSZ0FBLy84QVJRQUFBZ2NDZ2hBbUFFUDg4UkFHQUVnQUFQLy9BRVVBQUFJSEFvSVFKZ0IyLy9FUUJnQklBQUQvL3dCRkFBQUNCd0phRUNZQjZ2cFJFQVlBU0FBQS8vOEFSUUFBQWdjQ0h4QW1BR293OFJBR0FFZ0FBUC8vQUdjQUFBSHpBb0VRSmdCREF2QVFCZ0R6QUFELy93Qm5BQUFCOHdLQkVDWUFkZ1h3RUFZQTh3QUEvLzhBWndBQUFmTUNXUkFtQWVvQlVCQUdBUE1BQVAvL0FHY0FBQUh6QWg0UUpnQnFOL0FRQmdEekFBQUFBZ0JGLy84Q0J3S29BQThBTUFBQUFTSUhCaFVVRnhZek1qYzJOVFFuSmljM0ppYzNGaGMzRndjV0Z4WVZGQWNHSXlJbkpqVTBOell6TWhjV0Z5WW5Cd0VzUUMwZk5pZ3VRU3dlTmllSktSRVpHeDBpUFVjK1p5SU5VVDFTWlVRNFRFQlZOaUVGQ0JReUtBRllOQ1VxT3lvZU5TUXFQQ2tlbGpNSkNVWUtFMHcwVG1LSk16RnBQekJJUFZGZ1FEWVRBZ1V4TFRQLy93QVdBQUFDUUFJdkVDY0NBUCtyL3gwUUJnQlJBQUQvL3dCRy8vZ0NFUUtKRUNZQVF3SDRFQVlBVWdBQS8vOEFSdi80QWhFQ2lSQW1BSFlFK0JBR0FGSUFBUC8vQUViLytBSVJBbUVRSmdIcUFGZ1FCZ0JTQUFELy93QkcvL2dDRVFJcEVDY0NBUCtyL3hjUUJnQlNBQUQvL3dCRy8vZ0NFUUltRUNZQWFqYjRFQVlBVWdBQUFBTUFUUUF2QWM0QjlRQVBBQjhBSXdBQUV6UTNOak15RnhZVkZBY0dJeUluSmhFME56WXpNaGNXRlJRSEJpTWlKeVluSVJVaHp5TU5EeWNTQmlNTkR5Y1NCaU1ORHljU0JpTU5EeWNTQm9JQmdmNS9BYlluRWdZakRROG5FZ1lqRGY3SEp4SUdJdzBQSnhJR0l3M2NWd0FEQUR6LzBRSVdBZG9BQ0FBUkFDY0FBRDhCSmlNaUJ3WVZGQ1VIRmpNeU56WTFORGNIRmhVVUJ3WWpJaWNISnpjbU5UUTNOak15RnplMHBSWVhRQzBmQVFDbUd4ZEJMQjVmT1RSTFFsZzZOanhFT3pGTVExYzRNenVWdXdnMEpTb2paNzBLTlNRcUphUkFQa3RlUXp3ZVJUeENQa2hlUXp3YlF3RC8vd0FXLy9JQ1FBS0JFQ1lBUXdEd0VBWUFXQUFBLy84QUZ2L3lBa0FDZ1JBbUFIWUQ4QkFHQUZnQUFQLy9BQmIvOGdKQUFsa1FKZ0hxLzFBUUJnQllBQUQvL3dBVy8vSUNRQUllRUNZQWFqWHdFQVlBV0FBQS8vOEFBUDlZQWxRQ2dSQW1BSFlDOEJBR0FGd0FBQUFDQUNIL1FBSTVBbmtBR0FBb0FBQVhFUWMxTnhVMk56WXpNaGNXRlJRSEJpTWlKeFV6RlNNMUpUSTNOalUwSnlZaklnY0dGUlFYRm0xSG9qUXlFaFJpUmoxS1ExaFNPazcxQVROQkxCNDJKeTVBTFI4MktHWUNlUkpVSlAwcUNRTkpRRlJlUXp3M2xWcGF1RFVrS2p3cEhqUWxLanNxSHYvL0FBRC9XQUpVQWg0UUpnQnFOUEFRQmdCY0FBRC8vd0FkQUFBQ093S3VFQ1lBY1RkOEVBWUFKQUFBLy84QUtmL3lBallDTVJBbUFIRTcveEFHQUVRQUFQLy9BQjBBQUFJN0Fyb1FKZ0g4S3FjUUJnQWtBQUQvL3dBcC8vSUNOZ0k5RUNjQi9BQXUveW9RQmdCRUFBRC8vd0FkLzFVQ093SXlFQ1lCLzNnQUVBWUFKQUFBLy84QUtmOUhBallCdFJBbUFmOTc4aEFHQUVRQUFQLy9BRmYvL2dJQkF4WVFKd0IyQUFRQWhSQUdBQ1lBQVAvL0FFVUFBQUgxQW9JUUpnQjI5dkVRQmdCR0FBRC8vd0JYLy80Q0FRTHVFQ2NCNmdBQUFPVVFCZ0FtQUFELy93QkZBQUFCOVFKYUVDWUI2dkZSRUFZQVJnQUEvLzhBVi8vK0FnRUN5QkFuQWYwQUN3Q1dFQVlBSmdBQS8vOEFSUUFBQWZVQ05CQW1BZjM4QWhBR0FFWUFBUC8vQUZmLy9nSUJBdTRRSndIckFBQUExeEFHQUNZQUFQLy9BRVVBQUFIMUFsb1FKZ0hyOFVNUUJnQkdBQUQvL3dBMEFBQUNKUUxoRUNjQjZ3QUFBTW9RQmdBbkFBRC8vd0FwLy9nQ1BnTW9FQ2NCNndBSEFSRVFCZ0JIQUFBQUFnQXdBQUFDSlFJeUFBNEFJUUFBTnpNeU56WTFOQ2NtS3dFVk14VWpCek0xSXpVek5TTTFJVElYRmhjV0J3WWpJZFJWU3pFcUxpOUpWVXBLb0VaS1NrWUJGSEZCS1FFQkxVQncvdXhVUWpoT1NqczlobHFxcWxxR1ZIbE9UVk5UZUFBQ0FDbi8rQUpGQW5rQUhnQXVBQUFoSXpVR0J3WWpJaWNtTlRRM05qTXlGelVqTlRNMUJ6VTNGVE1WSXhFekp6UW5KaU1pQndZVkZCY1dNekkzTmdJK3BEUXlFaFJpUmoxS1ExaFNPa0ZCWTc1UVVFbWtOaWd1UVN3ZU5pY3VRQzBmTGlvSkEwbEFWRjVEUERjK01pVVRWeVdPTXY2YmdUc3FIalVrS2p3cEhqUWxBUC8vQUVvQUFBSW9BcTRRSmdCeFJId1FCZ0FvQUFELy93QkZBQUFDQndJbkVDWUFjVEgxRUFZQVNBQUEvLzhBU2dBQUFpZ0N1aEFtQWZ3M3B4QUdBQ2dBQVAvL0FFVUFBQUlIQWpNUUp3SDhBQ1QvSUJBR0FFZ0FBUC8vQUVvQUFBSW9BcnNRSndIOUFCZ0FpUkFHQUNnQUFQLy9BRVVBQUFJSEFqUVFKZ0g5QlFJUUJnQklBQUQvL3dCSy8xVUNLQUl5RUNjQi93Q0ZBQUFRQmdBb0FBRC8vd0JGLzFVQ0J3R3JFQ1lCLzNJQUVBWUFTQUFBLy84QVNnQUFBaWdDNFJBbkFlc0FEUURLRUFZQUtBQUEvLzhBUlFBQUFnY0NXaEFtQWV2NlF4QUdBRWdBQVAvL0FGYi8vZ0lJQXV3UUp3SHFBQU1BNHhBR0FDb0FBUC8vQUNmL093SS9BbUVRSmdIcUIxZ1FCZ0JLQUFELy93QlcvLzRDQ0FMRkVDWUIvQzJ5RUFZQUtnQUEvLzhBSi84N0FqOENPaEFuQWZ3QU1mOG5FQVlBU2dBQS8vOEFWdi8rQWdnQ3hoQW5BZjBBRGdDVUVBWUFLZ0FBLy84QUovODdBajhDT3hBbUFmMFNDUkFHQUVvQUFQLy9BRmIvSWdJSUFqMFFKZ0I2enVRUUJnQXFBQUQvL3dBbi96c0NQd0syRUNjQWV2L1NBcHNRQmdCS0FBRC8vd0FmQUFBQ09RTGhFQ2NCNmdBQUFOZ1FCZ0FyQUFELy93QVdBQUFDUUFNb0VDY0I2di8vQVI4UUJnQkxBQUFBQWdBZkFBQUNPUUl5QUNNQUp3QUFBVFVqTlRNVkl4VXpGU01STXhVak5UTTFJeFV6RlNNMU14RWpOVE0xSXpVekZTTWRBVE0xSXdHYVIrWkZPVGxFNWtqY1IrWkZMQ3hGNWtmYzNBRzFLVlJVS1RMKzBWUlVwYVZVVkFFdk1pbFVWQ2xrTWdBQUFRQVdBQUFDUUFKNUFDZ0FBQk1qTmpNeUZ4WWRBVE1WSXpVek5UUW5KaU1pQndZSEZUTVZJelV6RVNNMU16VUhOVGNWTXhVanJBRllQa05EUGp2UVBDUWVLVHBVQkFRNzBEdzBORHlWUHo0QmhEUXlMeS9VVkZTaUt5TWROZ01DMGxSVUFXTXlLUkpVSlpBeUFQLy9BRmtBQUFIL0Fxa1FKZ0lBckpjUUJnQXNBQUQvL3dCbkFBQUI4d0loRUNjQ0FQK3QvdzhRQmdEekFBRC8vd0JaQUFBQi93S3VFQ1lBY1RkOEVBWUFMQUFBLy84QVp3QUFBZk1DSmhBbUFIRTQ5QkFHQVBNQUFQLy9BRmtBQUFIL0Fyb1FKZ0g4S3FjUUJnQXNBQUQvL3dCbkFBQUI4d0l5RUNjQi9BQXIveDhRQmdEekFBRC8vd0JaLzFVQi93SXlFQ1lCLzNnQUVBWUFMQUFBLy84QVovOVZBZk1DTWhBbUFmOTVBQkFtQVBNQUFCQUdBZjBTQVAvL0FGa0FBQUgvQXJzUUp3SDlBQXNBaVJBR0FDd0FBQUFCQUdjQUFBSHpBYW9BQ1FBQUFTTTFNeEV6RlNFMU13RUduL21UL25TZkFWWlUvcXBVVkFBQUFnQUgvLzhDYUFJeUFCZ0FKQUFBQVJRWEZqTXlOelExRVNNMUlSVWpFUlFIQmlNaUp5WTlBU2NqTlRNVkl4RXpGU00xTXdGTkFnbzBQQVNCQVJ4QlRTQXRYU2NUcDBmc1MwcnNTQUVXWUJCUFRnZ0tBU2RVVlA2eFlTRU9VeWd1YnNoVVZQNTJWRlFBQUFRQVBQODdBanNDTWdBSkFBMEFJUUFsQUFBVEl6VXpFVE1WSVRVekV4VWpOUk1XRnpJek1qYzJOUkVqTlRNUkZBY0dJeUluQVJVak5kdWYrWlArZEo5QVNsVWhRUVlGSHh3VGFNSTlMVDVRTFFFS1NnRldWUDZxVkZRQjNtRmgvWG9YQXlNV0ZnRjFWUDQzVVRFa0hnTFpZV0gvL3dBNy8vOENFZ0xoRUNjQjZnQklBTmdRQmdBdEFBRC8vd0E4L3pzQnFBSlpFQ1lCNnZsUUVBWUYvZ0FBLy84QUJmOGtBbElDTWhBbUFIcks1aEFHQUM0QUFQLy9BRGYvSkFKREFuZ1FKZ0I2M09ZUUJnQk9BQUFBQVFBRkFBQUNVZ0dxQUNRQUFBRWhGU013QndZSEZoY1dGek1WSXlZbkJnY1ZNeFVoTlRNUkl6VXpGU01WTmpjMk55TUJKUUVFYjJrVkNsOUZFdzlhajFDVEJTdGIvdnBTVXZkTVJFa0NBaHdCcWxSVkVBWWJUQmNZVllNckJCMDVWRlFCQWxSVWJpTkhBZ0wvL3dCSEFBQUNKQU1KRUNZQWRnNTRFQVlBTHdBQS8vOEFYQUFBQWZ3RFR4QW5BSFlBQkFDK0VBWUFUd0FBLy84QVIvOGtBaVFDTWhBbUFIclU1aEFHQUM4QUFQLy9BRnovSkFIOEFuZ1FKZ0I2eStZUUJnQlBBQUQvL3dCSEFBQUNKQUxoRUNjQjZ3QUpBTW9RQmdBdkFBRC8vd0JjQUFBQi9BTW5FQ2NCNndBQUFSQVFCZ0JQQUFELy93QkhBQUFDSkFJeUVDWUFlUVloRUFZQUx3QUEvLzhBWEFBQUFoUUNlQkFuQUhrQWt3QUFFQVlBVHdBQUFBRUFLd0FBQWlRQ01nQVZBQUFUSXpVaEZTTVZOeGNIRlRNM013Y2hOVE0xQnljM25GUUJCVmMrTFd2R0VWY1UvamRWUkMxeEFkNVVWRm9qVGozSWk5OVVsU2RPUUFBQkFGd0FBQUg4QW5nQUVRQUFFd2MxTnhVM0Z3Y1JNeFVoTlRNMUJ5YzM1SWppUEN4b3Z2NWdpRWNzY3dJV0kxUXh1aUpPUFA3K1ZGVFBLRTVDLy84QUFQLzVBbGdEQ1JBbUFIWUVlQkFHQURFQUFQLy9BQllBQUFKQUFvOFFKZ0IyQS80UUJnQlJBQUQvL3dBQS94MENXQUl5RUNZQWVzdmZFQVlBTVFBQS8vOEFGdjhrQWtBQnVCQW1BSHJLNWhBR0FGRUFBUC8vQUFELytRSllBdUVRSndIckFBQUF5aEFHQURFQUFQLy9BQllBQUFKQUFtY1FKZ0hyLzFBUUJnQlJBQUFBQWdBV0FBQUNRQUxEQUNBQUpBQUFFeU0yTXpJWEZoMEJNeFVqTlRNMU5DY21JeUlIQmdjVk14VWpOVE1SSXpVekV3Y2pONndCV0Q1RFF6NDcwRHdrSGlrNlZBUUVPOUE4UEpib2RTaE9BWVEwTWk4djFGUlVvaXNqSFRZREF0SlVWQUVDVkFFWnJhMEFBQUVBQVA5RUFsZ0NNZ0FrQUFBaEZETXlOelkxQUJjUk14VWpOVE1SSXpVekZRRVJJelV6RlNNUkZBY0dJeUluSmowQkFVRkJPZ2tDL3BNNE5jYzRPSllCTVUzZU56NG5PbWdrRFdRdkRTNEI1RXYrdFZSVUFZcFVBZjVyQVVKVVZQMzJVeVlYVVI4bEp3QUJBQmIvT3dJR0FiZ0FLUUFBRnhZWE1qTXlOelkxRVRRbkppTWlCd1lIRlRNVkl6VXpFU00xTXhVMk16SVhGaFVSRkFjR0l5SW44U0ZCQmdVZkhCTWtIaWs2VkFRRU85QThQSlZZUGtORVBqMHRQbEVzVkJjREl4WVdBUlVySXgwMkF3TFNWRlFCQWxRbU5ETXVMLzY1VVRFa0hnRC8vd0ErLy9jQ0dnSzNFQ2NBY1FBM0FJVVFCZ0F5QUFELy93QkcvL2dDRVFJdUVDWUFjVGY4RUFZQVVnQUEvLzhBUHYvM0Fob0N3eEFtQWZ3cXNCQUdBRElBQVAvL0FFYi8rQUlSQWpvUUp3SDhBQ3IvSnhBR0FGSUFBUC8vQUQ3Lzl3SWFBeElRSndJQi83NEFnUkFHQURJQUFQLy9BRWIvK0FJUkFva1FKZ0lCdmZnUUJnQlNBQUFBQWdBWkFBQUNTd0l5QUJvQUl3QUFJU0luSmpVME56WXpJUmNqSnlNVk16VXpGU00xSXhVek56TUhBU0lIQmhVVUZ4WXpBUkpsU2twUVNHRUJLd2s2Q1pneFIwY3htQXc4RFA3VFF6QXJReW94VkZOeWQxVk5sME42STdBNXZFeWdBZGM4TjB0aE9TUUFBQU1BRGYvNEFsQUJzZ0FQQUJnQU93QUFFeUlIQmhVVUZ4WXpNamMyTlRRbkpnVW1KeVlqSWdjR0ZSY2pGQmNXTXpJM05qY1hCZ2NHSXlJbkJpTWlKeVkxTkRjMk16SVhOak15RnhZVnVVQVBBellORHp3UUJVQUlBUzBFR0E4WE93a0I2T2tjRWgwakpRa0RLaWdnR2h4UEt5NVJkeVlQUXlzK1VTd3FUWk1QQVFGWVZ4VVhaaGNHVUJnYmN3NENURFFPQ1RzSUNFODNIeFVpQ0FNL0tBMExNenQyTGpsNlBDYzVNcW9SRWdELy93QUpBQUFDTFFNSkVDWUFkdlI0RUFZQU5RQUEvLzhBRmdBQUFlRUNqeEFtQUhiVS9oQUdBRlVBQVAvL0FBbi9KQUl0QWpJUUpnQjZ1dVlRQmdBMUFBRC8vd0FXL3lRQjRRRzRFQ1lBZXBybUVBWUFWUUFBLy84QUNRQUFBaTBDNFJBbkFldi83d0RLRUFZQU5RQUEvLzhBRmdBQUFlRUNaeEFtQWV2UVVCQUdBRlVBQVAvL0FHRC83Z0h1QXhnUUp3QjJBQUFBaHhBR0FEWUFBUC8vQUYvLzlBSHJBb2dRSmdCMi92Y1FCZ0JXQUFELy93QmcvKzRCN2dMd0VDY0I2di83QU9jUUJnQTJBQUQvL3dCZi8vUUI2d0pnRUNZQjZ2bFhFQVlBVmdBQS8vOEFZUDhTQWU0Q1FSQW1BSHJHMUJBR0FEWUFBUC8vQUYvL0dBSHJBYkVRSmdCNnhOb1FCZ0JXQUFELy93QmcvKzRCN2dMd0VDY0I2Ly83QU5rUUJnQTJBQUQvL3dCZi8vUUI2d0pnRUNZQjYvbEpFQVlBVmdBQS8vOEFJdjhrQWpZQ01oQW1BSHJMNWhBR0FEY0FBUC8vQUJ2L0VRSVRBaklRSmdCNnR0TVFCZ0JYQUFELy93QWlBQUFDTmdMaEVDY0I2d0FBQU1vUUJnQTNBQUQvL3dBYi8rMENFd0xoRUNjQjYvL3JBTW9RQmdCWEFBQUFBUUFpQUFBQ05nSXlBQmNBQUFFbkl4VXpGU01WTXhVaE5UTTFJelV6TlNNSEl6Y2hGd0h2Q294TFMzcitzM2xNVEl3S1J3b0NBQW9CVjRla1dveFVWSXhhcElmYjJ3QUFBUUFiLyswQ0V3SXlBQ0lBQUJNek5UTVZNeFVqRlRNVkl4WVhGak15TnpZeEZ3WUhCaU1pSnlZOUFTTTFNelVqRzA1YTRlRlFVQUl6SXkxSFZBc2xTMUFoRzNFOUpUdzhUZ0dxaUloVVFWbzZKQmxkRFVGVElBMURLVFF1V2tILy93QWMvL2tDUEFLcEVDWUNBS3lYRUFZQU9BQUEvLzhBRnYveUFrQUNJUkFuQWdEL3EvOFBFQVlBV0FBQS8vOEFIUC81QWp3Q3JoQW1BSEUzZkJBR0FEZ0FBUC8vQUJiLzhnSkFBaVlRSmdCeE52UVFCZ0JZQUFELy93QWMvL2tDUEFLNkVDWUIvQ3FuRUFZQU9BQUEvLzhBRnYveUFrQUNNaEFuQWZ3QUtmOGZFQVlBV0FBQS8vOEFIUC81QWp3REVCQW5BZjRBT0FDY0VBWUFPQUFBLy84QUZ2L3lBa0FDaUJBbUFmNDNGQkFHQUZnQUFQLy9BQnovK1FJOEF3a1FKZ0lCdm5nUUJnQTRBQUQvL3dBVy8vSUNRQUtCRUNZQ0FiM3dFQVlBV0FBQS8vOEFIUDlPQWp3Q01oQW1BZjk0K1JBR0FEZ0FBUC8vQUJiL1J3SkFBYW9RSmdIL2QvSVFCZ0JZQUFELy93QUEvL0VDV0FMaEVDY0I2Z0FBQU5nUUJnQTZBQUQvL3dBQS8rZ0NXQUpaRUNZQjZnQlFFQVlBV2dBQS8vOEFJQUFBQWpjQzRSQW5BZW9BQUFEWUVBWUFQQUFBLy84QUFQOVlBbFFDV1JBbUFlcitVQkFHQUZ3QUFQLy9BQ0FBQUFJM0FxWVFKZ0JxTm5nUUJnQThBQUQvL3dCYkFBQUIrQU1KRUNZQWRnSjRFQVlBUFFBQS8vOEFVd0FBQWdVQ2dSQW1BSFlFOEJBR0FGMEFBUC8vQUZzQUFBSDRBcnNRSndIOUFBZ0FpUkFHQUQwQUFQLy9BRk1BQUFJRkFqTVFKZ0g5Q3dFUUJnQmRBQUQvL3dCYkFBQUIrQUxoRUNjQjYvLytBTW9RQmdBOUFBRC8vd0JUQUFBQ0JRSlpFQ1lCNndCQ0VBWUFYUUFBQUFFQWJ3QUFBZndDZGdBWkFBQTNFU00xTXpVME56WXpNaGNISmljbUl5SUhCaFVSTXhVaE5iaEpTVm9wTFZOQkppUVlFUmRJRXdXbi9yWlVBUUZWVDAwaER5OU1HZ1VFT1E0US9vMVVWQUFBQWdBai8vZ0NQQUl5QUE4QUt3QUFBU0lIQmhVVUZ4WXpNamMyTlRRbkpqY2hGVFl6TWhjV0ZSUUhCaU1pSnlZeEZTTTFNeEVqTlRBaEZ5TUJWMElzSGpjbkxrSXNIVGdtVGY3NU9WUmxSVHRNUWxkS1B3T2tTVTBCN1F0Q0FWRXpJeW84Snh3MEl5azhLQnVOWnpSSlBsSmVRam96QXk1VUFZcFVrUUFBQVFCbC8rOENEd0l2QUN3QUFBVWlKeVluSmdjR0ZRWUhKelkxTkNjM0ZoY1dNekkzTmpVMEp5WWpJZ2NHQnljMk56WXpNaGNXRlJRSEJnRWhQeDhFQkFvQkFRTUpQaE1UU1JVd0Z4Yy9MQ2MyS0RRME1BTURRU3hSR0Jab1JrQk1SQVlZQWdRSEJBRURHZzRRTkE4WExSSXBGZ285TjFKY1BpNDJBd1EvT0JJR1dsRnZmRlJMQUFJQU1BQUFBaVVDTWdBT0FDRUFBRGN6TWpjMk5UUW5KaXNCRlRNVkl3Y3pOU00xTXpVak5TRXlGeFlYRmdjR0l5SFVWVXN4S2k0dlNWVktTcUJHU2twR0FSUnhRU2tCQVMxQWNQN3NWRUk0VGtvN1BZWmFxcXBhaGxSNVRrMVRVM2dBQWdBTy8vZ0NKd0l5QUE4QUt3QUFFeUlIQmhVVUZ4WXpNamMyTlRRbkppY0hJemNnTVJVakVUTVZJelVHQndZaklpY21OVFEzTmpNeUZ6WHpRaXdkTmljdVFpd2VOeWVvQ0VJTEFlMU5TYVEwTWhJVVkwWThURUpYVkRrQlVUTWpLVHdvSERNaUtqd29ISTA5a1ZUK2RsUXVLZ2tEU0Q5VFgwSTROR2NBQVFBMy8vOENGUUl4QUJjQUFEYzFNeFV6TlNNSEl6Y2hGU01STXhVaEp6TVhNelVqRlo5SGtQY01QQXdCMGtaRy9qQUpPZ24za0txd09ieE1vRlQrZGxTWFEzb2pBQUlBSS8vdEFpQUNRUUFjQUNNQUFBRTJOVFFuSmlNaUJ3WUhKelkzTmpNeUZ4WVZGQWNHSXlJbkppYzFCU0VXRnhZek1nRzlBa01xTlZnK0NSSkpVbDRqSjNaTFFsMUdiVjlITmdRQmdQN21Hek1XRm5nQkd4RUlYelFnU0FzWU5tMFpDVlpMYkt4WlFtVlVTU3hYU3lBT0FBRUFlLy8wQWQwQ01nQTZBQUFsQmdjR0l5SW5KalUwTnlZMU5EYzJNeklYTmpVM0Z6QUhCaDhCRHdFbUp5WWpJZ2NHRlJRWEZqc0NGU3NCSWdjR0ZSUVhGak15TnpZM0FjZEFRdzRQV2pJZ05DeEFLQzVCTkFFUFB4QURBUTlOQXd3ckdSb2tGZ2tnQ3drdkVBOHZIUlFNS3hJVUxDWUdDRUpEQ1FKUk16eExOak03U3lvYUpBRUNJQmt0RGdZa0dnRWtGZzBnRGc0bUZnZGFJaFViUEI0TUpBWUlBQUFCQUFELzhnSllBak1BTHdBQUpRWUhCaU1pSnlZMUVTTTFNd01WRkRNeU54RWpOVE1SRkJjV016STNOamNSSXpVekZTTVJNeFVqTlFZSEJpTWlBUjhrTlFzSFZ4b0lPNVVCSHlraU81WU1CZ3d0R0FRQ085RThQSHdPTnhVS1NUVXNFd1JYR3g0QlhGWCtkUUZlT1FGY1ZmNTBSZzhKS3dnSEFWdFZWZjUyVkRJZUdBb0FBQUgvenYrVUFsZ0NNZ0FpQUFBWEZBY0dJeUluSmpVME56WVhGaGNXQnhZMUVTTTFNeFVCRVNNMU14VWpFU01CSTVJZ0h5TkxFd1FjR3hBREFnSURIemlXQVRGTjNqZFEvc01DQ0J3a0pDTUlDU0lIQ0JzR0J3d0pCQ2tCL1ZRQi9tc0JRbFJVL2hzQnB2Ly8vbEVBVnYrQ0FZY1FCZ0pFQUFELy8vOFUvMVAvZHYvUEVBWUNKUUFBLy84QVB2LzNBdlVDT3hBbkFBOENBQUhMRUFZQU1nQUEvLzhBUnYvNEF1d0JzaEFuQUE4Qjl3RkNFQVlBVWdBQUFBRUFidi91QWZ3Q1FRQkdBQUFUTXhZWEZqY2lOell6TWhjV0ZSUUhCZ2NHQndZVkZCY1dNekkzTmpjMk1UTUdCd1lWRkI4Qkp5WW5KZ2NHSXlJbkpqVTBOelkzTmpjMk5UUW5KaU1pQndZUEFUWTFKbm80QndJQkJ3RUZNak5STml4UURreEVFUWs0RUJNNkx3MEpEVDRNQ2dJSkR6NEtCUU1JT0RwS056RmFEVTVBRFFVekVoWThJUTRFVHhnREFrRU5Gd2dGQXlNeEp6aGdLUWNhR0NRU0dVRVFCVEVPRUIwU1Bnb0ZJeHNxQVJnVUR3Z3ZPakpBYURBSEhoa2hEQTRtRHdVbkVCUUNIUzg2QUFFQWJmLzBBZmdCc1FCR0FBQVROeFkxTUJjV056QTNOak15RnhZVkZBY0dCd1lIQmhVVUZ4WXpNamN5TVFZSEJoVVVGeFl4SXlZbkpnY0dJeUluSmpVME56WTNOamMyTlRRbkppTWlCd1lQQVRZbk5IZzJCd0VCQlFZZVNGNDBJR0VKVmtBR0FVNFFFMkVWUGc0SUFRa09QZ3dCQXdnbVRsczFJMXNIV1VRSUFVa0tDRlFiQmdSQ0dBRUJzQUVNQVFZSEF3TVJLeHNsVkNvRUhCVWFCQVFmQndFckR5RUZBeE1VSVJnREN3VWFMaDRwVENnREh4Y2RCUVlmQlFFYkJnY0JGaWdaLy84QUlBQUFBa2dDTWhBR0FuVUFBUC8vQUJ6LytRTVhBaklRSndBUEFpSUJ3aEFHQURnQUFQLy9BQmIvOGdNYkFhb1FKd0FQQWlZQk9oQUdBRmdBQUFBQkFBQUFBQUpUQWpzQU5RQUFBUlVVRnhZWEZoVVVCd1lqSWljbU5UUTNOamMyUFFFakJ5YzNNeFVVQndZSEJoVVVGeFl6TWpjMk5UUW5KaWNtUFFFekZ3Y25BYlFwTWc0UFhrWmNkRXRCUFNzSENWSWROVHZETlM4SkMwNGxNMTh1R1RBd0N3M0ROakFkQWVjU0hqTStJU01sYmo4d1J6MVpSVTQ0REJJUEVrOFZqbVl1UURnVEZSTmlLQk5HSmpFbU9EZ1hHaHBta0JOUEFBQUJBRnNBQUFINEFqSUFGUUFBSlRjekJ5RTFOeWMzRnpjakJ5TTNJUlVIRndjbkJ3R2NDVk1QL25xSk1ReFJUYklFVkFrQmhIY29ERWxlVkhmTEZQUUhWQTJJZDhzWDBnWlVDNllBQVFCVEFBQUNCUUdxQUJVQUFBRUhGd2NuQnpNMU14VWhOVGNuTnhjM0l4VWpOU0VCODJvdkRtbGEwMHYrWG5VcERtTk16RTBCb0FGamF3WlNEMXNrZUVwMkIxSVFUU1I0QUFBQkFHdi8rQUhiQWpNQUlnQUFBUllYRmhVVUJ3WWpJaWNtSnpjV0Z6SXpNamMyTlRRbkppc0JOVGNqRlNNMUlSVUJMMm9yRjFRNlNUYzRCQWdxS1JzR0Iwa21GRUFuTTFhSllWUUJUQUYvR2xBcE1tSTRLQjhEQkVnWUFqSWJJVUlpRlQxdkZXbEZBQUVBT2YvNEFha0NNd0FpQUFBVEp6VWhGU00xSXhjVkl5SUhCaFVVRnhZek1qYzJOeGNHQndZaklpY21OVFEzTnVXSUFVeFVZWWxXV3lvVk9TRXBJeVFFQmlvNUtRd05ZVUEyWVNJQmYyOUZhUlZ2UFRrY0pEd2dFaFFDQkVnZ0JRRkFOVTF0T2hRQUFRQTUvMmtCcVFHa0FDSUFBRGNuTlNFVkl6VWpGeFVqSWdjR0ZSUVhGak15TnpZM0Z3WUhCaU1pSnlZMU5EYzI1WWdCVEZSaGlWWmJLaFU1SVNraEpRTUlLamtwREExaFFEWm1JUEZ1UldrVmJqNDVIQ1E4SUJJVUF3UkpJQVVCUURWTmNEb1NBQUFCQVBUL2NRRk1BaklBQXdBQUFSRWpFUUZNV0FJeS9UOEN3UUFBQWdDKy8zRUJqZ0l5QUFNQUJ3QUFBUkVqRVRNUkl4RUJGbGpRV0FJeS9UOEN3ZjAvQXNFQUFBSUF3di9tQVZZQ1lnQURBQk1BQUFFREl3c0JORGMyTXpJWEZoVVVCd1lqSWljbUFVTUtXQW9WSnhBVExSVUlKUkVVTFJVSUFtTCtPZ0hHL2NRbkVnZ2pEaEFsRXdnakRnRC8vd0FkQUFBQ093TGhFQ2NCNndBQUFNb1FCZ0FrQUFELy93QXAvL0lDTmdKa0VDWUI2d05ORUFZQVJBQUEvLzhBV1FBQUFmOEM0UkFuQWVzQUFBREtFQVlBTEFBQS8vOEFad0FBQWZNQ1dSQW1BZXNCUWhBR0FQTUFBUC8vQUQ3Lzl3SWFBdW9RSndIckFBQUEweEFHQURJQUFQLy9BRWIvK0FJUkFtRVFKZ0hyQUVvUUJnQlNBQUQvL3dBYy8va0NQQUxoRUNjQjZ3QUFBTW9RQmdBNEFBRC8vd0FXLy9JQ1FBSlpFQ1lCNi85Q0VBWUFXQUFBLy84QUhQLzVBandESWhBbkFIRUFOd0R3RUNZQWFqWjRFQVlBT0FBQS8vOEFGdi95QWtBQ21oQW1BSEUyYUJBbUFHbzE4QkFHQUZnQUFQLy9BQnovK1FJOEEzMFFKd0IyQUFRQTdCQW1BR28yZUJBR0FEZ0FBUC8vQUJiLzhnSkFBdlVRSmdCMkEyUVFKZ0JxTmZBUUJnQllBQUQvL3dBYy8va0NQQU5WRUNjQjZ3QUFBVDRRSmdCcU5uZ1FCZ0E0QUFELy93QVcvL0lDUUFMTkVDY0I2Ly8vQUxZUUpnQnFOZkFRQmdCWUFBRC8vd0FjLy9rQ1BBTjlFQ2NBUXdBQkFPd1FKZ0JxTm5nUUJnQTRBQUQvL3dBVy8vSUNRQUwxRUNZQVF3QmtFQ1lBYWpYd0VBWUFXQUFBQUFJQVQvLytBaEVCcVFBR0FDQUFBRGNXTXpJM05qY2xJU1luSmlNaUJ5YzJOell6TWhjV0ZSUUhCaU1pSnlZbk1MQW1XajhvQ3dQK3F3RmpFQ3doSzFRK0tqNWZFQTlsUmp0TVFGVm9Rek1EblVzekRRdFBOUjhYTFQ4MENnSkhQVkZnUURaSk9Fei8vd0FkQUFBQ093TWlFQ2NBY1FBM0FQQVFKZ0JxTm5nUUJnQWtBQUQvL3dBcC8vSUNOZ0tsRUNZQWNUdHpFQ1lBYWpyN0VBWUFSQUFBQUFRQUhRQUFBanNESkFBQ0FCUUFHQUFjQUFBQk15Y1RNeWNqQnpNVkl6VXpFeU0xTXhNekZTTURJUlVoRnhVak5RRC9YVEUrTlRKOU1qWFZSSDVsNlpaQzB0Z0JXLzZsemtvQko0YitwNVdWVkZRQmlsVCtJbFFESkZRRVlXRUFBQVFBS2YveUFqWUN0UUFNQUM4QU13QTNBQUFsSmlNaUJ3WVZGQmNXTXpJM0Z6TVZJelVHQndZaklpY21OVFEzTmpNeUZ6VTBKeVlqSWdjbk1EYzJNeklYRmhVQklSVWhGeFVqTlFGK1drVkNGQVVvSHlSUlBscGV1RE0xRWhWWlBERkxNRHM1Wmo4aU1ENVVIRHRITEdCTFFQNThBVnYrcGNSS3Vob3dDd29hRmhJL09GUXJMUWtETkNzK1V5NGZHZ290RkFzbFFSY1hNQ28xQVk5VUhtRmgvLzhBRlFBQUFrOENyaEFtQUhFOWZCQUdBSWdBQVAvL0FBYi84Z0pTQWpFUUpnQnhOLzhRQmdDb0FBRC8vd0JXLy80Q0NBTHNFQ2NCNndBREFOVVFCZ0FxQUFELy93QW4venNDUHdKaEVDWUI2d2RLRUFZQVNnQUEvLzhBQlFBQUFsSUM0UkFuQWVzQUFBREtFQVlBTGdBQS8vOEFOd0FBQWtNREp4QW5BZXNBRVFFUUVBWUFUZ0FBLy84QVB2OU1BaG9DT3hBbUFmOTQ5eEFHQURJQUFQLy9BRWIvVFFJUkFiSVFKZ0gvZC9nUUJnQlNBQUQvL3dBKy8wd0NHZ0szRUNjQWNRQTNBSVVRSmdIL2VQY1FCZ0F5QUFELy93QkcvMDBDRVFJdUVDWUFjVGY4RUNZQi8zZjRFQVlBVWdBQS8vOEFhLy80QWRzQzRoQW5BZXYvOXdETEVBWUJWd0FBLy84QVUvOXBBY01DVXhBbUFldmZQQkFHQWM4QUFQLy9BRHovT3dHakFsa1FKZ0hyOUVJUUJnWCtBQUQvL3dCVy8vNENDQU1VRUNjQWRnQUhBSU1RQmdBcUFBRC8vd0FuL3pzQ1B3S0pFQ1lBZGd2NEVBWUFTZ0FBLy84QUFQLzVBbGdESmhBbkFFUC9yZ0NWRUFZQU1RQUEvLzhBRmdBQUFrQUNveEFtQUVPdEVoQUdBRkVBQVAvL0FCMEFBQUk3QStjUUp3QjJBQVFCVmhBbkFmNEFPQUNjRUFZQUpBQUEvLzhBS2YveUFqWURhaEFuQUhZQUNBRFpFQ1lCL2pzZkVBWUFSQUFBLy84QUZRQUFBazhEQ1JBbUFIWUtlQkFHQUlnQUFQLy9BQWIvOGdKU0Fvd1FKZ0IyQlBzUUJnQ29BQUQvL3dBei85UUNJUU00RUNjQWRnQUNBS2NRQmdDYUFBRC8vd0E4LzlFQ0ZnS3hFQ1lBZGdFZ0VBWUF1Z0FBLy84QUhRQUFBanNDN3hBbkFod0NRUUJQRUFZQUpBQUEvLzhBS2YveUFqWUNjaEFuQWh3Q1JQL1NFQVlBUkFBQS8vOEFIUUFBQWpzQ3VoQW5BaDRDQ2YrbkVBWUFKQUFBLy84QUtmL3lBallDUFJBbkFoNENEZjhxRUFZQVJBQUEvLzhBU2dBQUFpZ0M3eEFuQWh3Q1RnQlBFQVlBS0FBQS8vOEFSUUFBQWdjQ2FCQW5BaHdDTy8vSUVBWUFTQUFBLy84QVNnQUFBaWdDdWhBbkFoNENGdituRUFZQUtBQUEvLzhBUlFBQUFnY0NNeEFuQWg0Q0EvOGdFQVlBU0FBQS8vOEFXUUFBQWY4Qzd4QW5BaHdDUVFCUEVBWUFMQUFBLy84QVp3QUFBZk1DWnhBbkFod0NRdi9IRUFZQTh3QUEvLzhBV1FBQUFmOEN1aEFuQWg0Q0NmK25FQVlBTEFBQS8vOEFad0FBQWZNQ01oQW5BaDRDQ3Y4ZkVBWUE4d0FBLy84QVB2LzNBaG9DK0JBbkFod0NRUUJZRUFZQU1nQUEvLzhBUnYvNEFoRUNieEFuQWh3Q1FQL1BFQVlBVWdBQS8vOEFQdi8zQWhvQ3d4QW5BaDRDQ2Yrd0VBWUFNZ0FBLy84QVJ2LzRBaEVDT2hBbkFoNENDZjhuRUFZQVVnQUEvLzhBQ1FBQUFpMEM3eEFuQWh3Q01BQlBFQVlBTlFBQS8vOEFGZ0FBQWVFQ2RSQW5BaHdDRVAvVkVBWUFWUUFBLy84QUNRQUFBaTBDdWhBbkFoNEIrUCtuRUFZQU5RQUEvLzhBRmdBQUFlRUNRQkFuQWg0QjJmOHRFQVlBVlFBQS8vOEFIUC81QWp3Qzd4QW5BaHdDUVFCUEVBWUFPQUFBLy84QUZ2L3lBa0FDWnhBbkFod0NRUC9IRUFZQVdBQUEvLzhBSFAvNUFqd0N1aEFuQWg0Q0NmK25FQVlBT0FBQS8vOEFGdi95QWtBQ01oQW5BaDRDQ1A4ZkVBWUFXQUFBLy84QUlQOEFBZTRDUVJBbkFlRC9JdjArRUFZQU5nQUEvLzhBUC84R0Flc0JzUkFuQWVEL1FmMUVFQVlBVmdBQS8vOEFJdjhTQWpZQ01oQW5BZUQvNy8xUUVBWUFOd0FBLy84QUcvNy9BaE1DTWhBbkFlRC8vdjA5RUFZQVZ3QUEvLzhBSHdBQUFqa0MvaEFuQWVzQUFBRG5FQVlBS3dBQS8vOEFGZ0FBQWtBRFBCQW5BZXYvL3dFbEVBWUFTd0FBLy84QUhRQUFBanNDMkJBbkFmMy96Z0NtRUFZQUpBQUEvLzhBS2YveUFqWUNVaEFtQWYzTUlCQUdBRVFBQVAvL0FFci9Ld0lvQWpJUUpnQjYrTzRRQmdBb0FBRC8vd0JGL3lzQ0J3R3JFQ1lBZXZEdUVBWUFTQUFBLy84QVB2LzNBaG9EUHhBbkFIRUFOd0VORUNjQWFnQTJBSUVRQmdBeUFBRC8vd0JHLy9nQ0VRSzJFQ2NBY1FBM0FJUVFKZ0JxTnZnUUJnQlNBQUQvL3dBKy8vY0NHZ05DRUNjQWNRQWRBUThRSmdJQXJLQVFCZ0F5QUFELy93QkcvL2dDRVFLNUVDY0FjUUFjQUlZUUp3SUEvNnYvRnhBR0FGSUFBUC8vQUQ3Lzl3SWFBdGdRSndIOUFBc0FwaEFHQURJQUFQLy9BRWIvK0FJUkFrOFFKZ0g5Q3gwUUJnQlNBQUQvL3dBKy8vY0NHZ05vRUNjQWNRQTNBVFlRSndIOUFBc0FwaEFHQURJQUFQLy9BRWIvK0FJUkF0OFFKd0J4QURjQXJSQW1BZjBMSFJBR0FGSUFBUC8vQUNBQUFBSTNBc3NRSndCeEFEY0FtUkFHQUR3QUFQLy9BQUQvV0FKVUFrSVFKZ0J4T2hBUUJnQmNBQUFBQWdBUC8vWUNHd0c0QUF3QUx3QUFOeFl6TWpjMk5UUW5KaU1pQnljak5UTVZOamMyTXpJWEZoVVVCd1lqSWljVkZCY1dNekkzRnpBSEJpTWlKeVkxeGxwRlFoUUZLQjhrVVQ1YVhiY3pOUklWV1R3eFREQTZQV0kvSWpBK1ZCdzdSQzloU2tEd0dqQUxDaG9XRWo4NFZDc3RDUU0wS3o1VEx4MFpDaTBVQ3lWQkZ4WXdLVFVBQUFFQVR3QUJBZjRCckFBb0FBQTNCeWN3TnpZdkFUY1dGeFl6TWpjMk5UUW5KaU1pQndZSEp6WTNOak15RnhZVkZBY0dJeUluSnB3UFBnOEVBZzlPRmprVkZVUXRHanNtS1VZMkFnSXFNbFFSRDI5Rk5Vdy9WVDQyQ1NJZ0dTd09CeU1iTFJJSE9pSWlRaXNjSmdJQlF5a01Ba3c2VDJGQU5TSUhBQUFDQUVZQUFBSUhBYW9BQmdBZkFBQVRNeVluSmlNaUJ6VTJOell6TWhjV0ZSUUhCaU1pSnlZbk54WXpNamMyTjZmMUNTUWhKMXVHQTFBK1VHWkROMDVCVmwxTEN3a3FQRlpVS2djREFRd2NHUmFhSVdFOEwwazhVR0EvTmpFSENEOHRVdzBMQUFBQ0FFLy8vZ0lSQWFrQUJnQWdBQUEzRmpNeU56WTNKU0VtSnlZaklnY25OamMyTXpJWEZoVVVCd1lqSWljbUp6Q3dKbG8vS0FzRC9xc0JZeEFzSVN0VVBpbytYeEFQWlVZN1RFQlZhRU16QTUxTE13MExUelVmRnkwL05Bb0NSejFSWUVBMlNUaE1BQUVBY3YvOUFjOEJxZ0E5QUFBM05EYzJOeVluSmpVME56WXpNaGNXRnhZM05qY3pCaFVVRnlNbUp5WWpJZ2NHRlJRWEZqc0JGU01pQndZVkZCY1dNekkzTmpjWEJnY0dJeUluSm5JOEJnYzVDUUpUSmljK0d3RUNDUU1DQWtjT0Uwc09LaFFoUHdrQlFBOFFKeUpSRXdVNkVBMHpHZ1lJUXpkUkN3dElOVEdGUnhvREFoRTJDUW85R3cwVEFRRU5EaEFFSmlFVk1EQUtCUjBEQXgwSEFrb29DZ3dtRGdRWkJnb3ZSUXNCSnlVQUFRQjIvLzBCMGdHcUFEMEFBQ1VVQndZaklpY21KemNXRnhZek1qYzJOVFFuSmlzQk5UTXlOelkxTkNjbUl5SUhCZ2NqTmpVMEp6TVdGeFFWRmpjMk16SVhGaFVVQndZSEZoY1dBZEpjS1NsU1B3Y0dReHdqQ3hFc0d4QldDUWtqSjA0UEFpY1BFMFlYQ2daS0VnNUhBd0VDQ2h0QlNqRWxPd1FGTnc0RWhWUWtFRUlIQ0M4aUJRSVlEUk0yQndGS0hRUUZGd2tESGcwVU14SWhKZ1FNQWdJT0RSVWpHeWMvR0FJQkVEWVBBQUFDQUNmL093SS9BYklBSWdBeUFBQUJGU01SRkFjR0l5SW5OeFlYRmpNeU56WTNOUVlIQmlNaUp5WTFORGMyTXpJWE5RY2lCd1lWRkJjV016STNOalUwSnlZQ1AweE5TMUZlWXhBdVVCd1dVaWdVQVIwMEhCNWpSajFMUWxoY01JdEFMUjgyS0M1QkxCNDJKd0dxVlA2TFB6UXpPbElnRUFZeUdSNUJKaE1LU1VGVFhrTThRanBTTkNVcU95b2VOU1FxUENrZUFBQUJBRmIvL2dJSUFiTUFMQUFBQVRJWEZqYzJOeGNHRlJRWEJ5WW5KaU1pQndZVkZCY1dNekkzTmpjak5UTVZNUVlIQmlNaUp5WTFORGMyQVVaSUhBb0NBd2svRWhOS0hrRU9EVWtwRnowbEkxSWtDd0ZGa1FJL08wdGlTRUZWU1FHcUlBZ0pHZzRPTVJFVk1CSTJFQU0ySHlaRUxCczBEdzFJU0VBeUwwaEJVVnBCTndBQkFGYi8vZ0lJQWJNQUxBQUFBVElYRmpjMk54Y0dGUlFYQnlZbkppTWlCd1lWRkJjV016STNOamNqTlRNVk1RWUhCaU1pSnlZMU5EYzJBVVpJSEFvQ0F3ay9FaE5LSGtFT0RVa3BGejBsSTFJa0N3RkZrUUkvTzB0aVNFRlZTUUdxSUFnSkdnNE9NUkVWTUJJMkVBTTJIeVpFTEJzMER3MUlTRUF5TDBoQlVWcEJOd0FCQUJyLy93SkVBbmdBSHdBQUpRWWpJaWNtUFFFak5UTVZJeFVVRnhZek1qYzJOelVqTlRNVkl4RTNGUWNCcmxZL1JFUTlPdEE4SkI0cE9sVURBenJRUER5VzlETXpMaTdVVkZTaUtpTWROZ0lDMGxSVS9rSVNWQ1VBQUFJQVp3QUFBZk1DTWdBUkFCVUFBQUVqTlRNVk14VWpGVE1WSVRVek5TTTFNeE1WSXpVQkJwLzVWbGFUL25TZlZsWkFTZ0ZXVko1YVhsUlVYbG9CSm1GaEFBRUFaLy8xQWg4QnFnQWNBQUFsRkJjV016STNKaWNtTlRRM05oY1dCd1lIQmlNaUp5WTlBU00xTXdGZ0lCWVdJUk1OQ2dJaEdoSUxBUUl0SUNwT0xpT2YrYUVtSkJnY0F4TUVBemNOQ1JrUUdFTXNJRE1uUE10VUFBRUFXUUFBQWY4QnF3QUxBQUFCSXpVaEZTTVJNeFVoTlRNQkFxZ0JwYVNqL2x1cEFWZFVWUDc5VkZRQUFmLy8vL1FDVndHc0FEQUFBQ1VHQndZaklpY21QUUVqTlRNUkZETXlOelkzTlNNMU14RVVGeFl6TWpjMk56VWpOVE1WSXhFekZTTTFCZ2NHSXlJQkhpUTFDd2RZR2djN2xSNG5IZ1FDT3BVUEJnb3JHQVVDT3RBOFBId09OaFVMUnpjc0V3UllHaDdUVmY3OFhTOEZCZE5WL3Z4SURnY3FDQWZUVlZYKy8xUXlIaGdLQUFBQkFBRC8rUUpZQWFvQUZRQUFFd0UxSXpVekZTTVJJd0VqRlRNVkl6VXpFU00xTTVZQk1VM2VOMUQrd3dKTzREZzRsZ0dwL3QzUVZGVCtvd0V0MGxSVUFRSlVBQU1BV1FBQUFmOENNZ0FFQUFrQUp3QUFKVFVHRlJRM0J6WTFOQ2NqTlNFVkl4VVdGeFlWRkFjR0J4VXpGU0UxTXpVbUp5WTFORGMyTndFQ0pvQUJLWU9uQWFXa1N5UVVRaDBrby81YnFVZ2tGRUVjSXROL0d5VWtab01hSnllbFZGUW9GVUlrS1U4ekZ3b2JWRlFjRkVFbEtFODBGZ29BQUFFQUwvL3lBZm9CcWdBWEFBQTNGak15TnpZM05TTTFNeFVqRVRNVkl6VUdJeUluSmlkNklUUTZVUVlFT3RBOFBKWllQVDQrRncxM0xqUUVBOUpVVlA3K1ZDWTBLUkFRQUFFQUwvL3lBZm9DZWdBWEFBQTNGak15TnpZM0VTTTFNeFVqRVRNVkl6VUdJeUluSmlkNklUUTZVUVlFT3RBOFBKWllQVDQrRncxM0xqUUVBd0dpVkZUK0xsUW1OQ2tRRUFBQUFnQUpBQUFDTFFHcUFBZ0FKZ0FBTnpNeU5UUW5KaXNCRnhZWEpoY3pGU01tSnlZbkl4VXpGU0UxTXhFak5TRXlGeFlWRkFjR3FkdFJKUkFjMitra0ZnWU1XNVFTV0FrSGRtZisrVVpHQVhsd0tSSkxKZkExSmdnRHVoUXBDeFpVUUU4SUJVaFVWQUVDVkRzYUpGOG1FZ0FBQWdBSi8vOENMUUdwQUFnQUpnQUFOeFV6TWpjMk5UUWpOellYRmhVVUJ3WWpJVFV6RVNNMUlSVWpGVE0yTnpZM014VWpCZ2NHcWRzL0RRVlJEazRzSVcwZElmNkhSa1lCQjJkMk5DZ1hCNVJiRmhRS3VXWVhDaEExVkFRMkp6eGNGd1pVQVFKVVZFZ3BPQ0VhVkNrUUNBQUFBUUE2Ly9VQ01nSTVBQnNBQUNVakZTTTFJelV6TlRRbkppTWlCd1l4SnpZM05qTXlGeFlkQVRNQ01rOWE0ZUV5SkM5R1ZRc2tSVTRsSG5JOUpFOTlpSWhVbHpvbUcxME5RVTRoRUVNcE04a0FBQUVBRnYveUFnOEJxZ0FoQUFBRklpY21OelEzSXpVek1BY0dGUlFYRmpNeU56WTFOQ2NqTlRNd0Z4WVZGQWNHQVNxSk95VUNEanVlRWdVNEpUQlZKUklMUTV3S0FVVkJEbVUrWUI5Q1ZIQW5HRm8xSTFVck5pQTNWSTRQREhWUVNnQUFBUUFJQUFFQ1RBRzVBQTRBQURjekV6Y1RNeFVqTlRNbkJ6TVZJd2hLclZPd1N0a3hlbm94MlZVQll3SCtuRlJVL2YxVUFBRUFBZi8vQWxrQndRQVVBQUFsSndjakp3Y3pGU00xTXhNekZ6Y3pFek1WSXpVQjFqaEpVRVkrU2Nra2NrSlVWejF4SjhsVHpieTh6VlJVQVc3YzNQNlNWRlFBQVFBQ0FBRUNWZ0pUQUJNQUFBRWhGU01IRXpNVkl6VXpKd2N6RlNNMU14TWpBUU1CVTlVbXJrUFlOWDU1TDk5TTB4NENVMVJSL3FkVVZQajRWRlFCcWdBQUFRQWdBQUFDTndHcUFCUUFBQ1V6RlNNMU16VW5JelV6RlNNWE55TTFNeFVqQndGWE9zMDV1aVBNSTJOZ0ljd2p2VlJVVkVtNVZGUmdZRlJVdVFBQkFGUC9hUUhEQWFRQUlnQUFKUllYRmhVVUJ3WWpJaWNtSnpjV0Z4WXpNamMyTlRRbkppc0JOVGNqRlNNMUlSVUJGMjhxRTFNNlNqZzRBd2NwTEJjSEIwb21FMEVtTTFhSllWUUJUUEVjVlNjdVlqZ29JQUlFU1JnQ0FUTWFJVU1pRkQ1dUZXbEZBQU1BVVFBQUFpQUJxZ0FJQUJNQUpnQUFFek15TnpZMU5Dc0JFVE15TnpZMU5DY21Ld0UzRmhjV0ZSUUhCaU1oTlRNUkl6VWhGaGNVNmIwYkFnRWV2WjhlRmc0cURRdWY3VFVPQjJ3TkRmNjNQajRCU0g0RUFVQUlBUU1LL3Y0aUZSZ3NGUWNuRWk0WUk0WVBBbFFCQWxRRVRUMEFBUUFmQUFBQ09RR3FBQnNBQUJNek5TTTFNeFVqRVRNVkl6VXpOU01WTXhVak5UTVJJelV6RlNPLzNFam1SRVBtU2R4RzVrWkc1a1lCSno1RlJmN2dSVVdMaTBWRkFTQkZSUUFCQUJFQUFRSWRBbmtBRndBQUFTTVhOelV6RlNNUk54VUhFUWN6RlNFMU16Y25JelVoQVI4alpCcWpTVW1qVGlIKy8zVmtqb1lCRGdJbGZSYTdWUDVLRjFReEFXSkFWRlJVcmxRQUFRQkhBQUFDSkFHcUFBMEFBQk1qTlNFVkl4RXpOek1ISVRVem5GUUJCVmZpRHowVC9qWlZBVlpVVlA3K2c5ZFVBQUFCQURRQkd3R0JBcGNBSFFBQUV6WXpNaGNXSFFFekZTTTFNelUwSnlZaklnY1ZNeFVqTlRNUkJ6VTNqalVsTGlzZEkzMGtHeEFWSnpNamZTUWtXZ0lFSGlVWkdIOHlNbUVlRlEwamZqSXlBUXdMTWhjQUFBSUFMQUIvQU53Q1JnQVJBQlVBQURjV016STNOajBCSXpVekVSUUhCaU1pSnhNVkl6VTFHQ29WRVFnK2RTMFlJRE1Zbnl6REVCa0xDK0F6L3UwMkhSQVNBYlU2T2dBQkFDWUE5QUU2QWZ3QUZRQUFBU1lqSWdjVk14VWpOVE0xSXpVekZUWXpNaGNXRndFTkV5QWlPQ045SkNSYU1pZ3JKd2dHQWF3Y0kzNHpNNXN5Rng4ZUJnY0FBQUVBS2dEc0FUNEI5QUFWQUFBVEZqTXlOelVqTlRNVkl4VXpGU00xQmlNaUp5WW5XQk1mSmpRamZTUWtXaklvS3ljSUJnRThIQ04rTXpPYU14Y2ZIZ2NIQUFJQUZnRHlBVjRCOGdBSUFDSUFBQk1WTXpJM05qVTBJemMyRnhZVkZBY0dLd0UxTXpVak5UTVZJeFV6TmpjekZTTUdkb01xQmdFeENUVWFEVTBNRGVJcEtaNCtSejBNV0RZUUFXSStFd1VHSURJQ0tCWWRQQXNDTXBzek15czBLak1kQUFBQkFDVUE1QUdOQWZJQUZBQUFFeGMzTXhjM0l6VXpGU01ISXljSEl5Y2pOVE1WY3lJc01Db2xMSGtXUkNneU5TUkVGM2dCd0h0eGNYc3lNdHlFaE53eU1nQUJBQjhBZXdHRkFlQUFFd0FBTnlNMU16Y25JelV6RlNNWE55TTFNeFVqQnpQcnpJQVhhU2lDSUV4SUhJWXVmaEo3TXpEUE16T1VsRE16L3dBQkFDMEIvZ0JvQXBVQUF3QUFFek1ISXpRMEl4Z0NsWmNBQUFJQUxRSCtBTUVDbFFBREFBY0FBQk16QnlNM013Y2pORFFqR0dBMEl4Z0NsWmVYbHdBQUFRREZBY1VCZlFLUkFBTUFBQk0zTXdmRmlpNWJBY1hNekFBQkFQOEJ3d0YrQW5VQUVnQUFBUVlIQmdjbk5qYzJKeVkzTmpjMkZ4WVhGZ0Z5RHpjUUVBMFlFQXdLSEFVR0lRZ0tLQWtHQWgwMUd3Y0RFQVVaRXc0UkpDUUlBZ0VDSlJzQUFBSC9Pd0pHLzdvQytBQVNBQUFESmpjMk56WVhGZ2NHQndZWEZoY0hKaWNtdVJVUERTQXBEUXdZQXdVUEh3ME5EVG9mQ1FLZ0d5QWFBZ01sSWhnREF4VWJEQU1RQ3pJT0FBRUJTQUlaQVpNQ3JBQU5BQUFCTnpJM05pY21JelVXRnhZSEJnRklBU0lIQ0JjS0R6UVFEeHdWQWhraEh4NFFDQjBCTFNvaEdRQUFBUUU5QWhrQmlBS3NBQTBBQUFFbUp5WTNOak1WSWdjR0Z4WXpBWWcwRVJBYkZDUWhDQWNZQ3c0Q0dRSXVLaUVZSFI4ZkVBY0FBUUE5QUE4Q0lRSGhBQVVBQUFFTkFSVXRBUUloL3R3QkpQNGNBZVFCaG9xVldPM2xBQUFCQURRQUR3SVlBZUVBQlFBQUV6VU5BVFVsTkFIay9od0JKQUdHVytYdFdKVUFBUUE2QUdNQ0RBSkdBQVVBQUNVTEFTTWJBUUd4aTVSWTdlVmpBU1QrM0FIai9oMEFBUUE2QUJVQ0RBSDVBQVVBQUFFekN3RXpFd0d4VytYdFdKUUIrZjRjQWVUKzNBQUFBUUNwQVlJQnJ3SUpBQVlBQUFFSEp3Y25Oek1Ccnc1emR3NTVGUUdRRGwxZERua0FBUUNwQVpBQnJ3SVhBQVlBQUFFSEl5YzNGemNCcjNnVmVRNTNjd0lKZVhrT1hWMEFBUUEwQWhzQWFBS1ZBQU1BQUJNekJ5TTBOQTRZQXBWNkFBQUJBRWNCM2dHaUFqSUFBd0FBRXlFVklVY0JXLzZsQWpKVUFBRUFnZ0l5QVQ0Q3l3QURBQUFCQnlNM0FUNlVLR29DeTVtWkFBQUJBSGNDTmdFdEFzc0FBd0FBRXpNWEkzZFBaeWNDeTVVQUFBRUFTZitGQUgzLy93QURBQUFYTXdjalNUUU9HQUY2QUFFQVIvOHRBYUwvZ1FBREFBQVhJUlVoUndGYi9xVi9WQUFBQVFCMy93OEJMZitqQUFNQUFCY3pGeU4zVDJjblhaUUFBUUNDL3d3QlB2K2xBQU1BQUFVSEl6Y0JQcFFvYWx1Wm1RQUNBQ3NBQUFDYkFjNEFBZ0FGQUFBVE13Y0ROeGNyY0RnNE9EZ0J6amorYWpnNEFBQUJBQ3NCbGdDYkFjNEFBZ0FBRXpNSEszQTRBYzQ0QUFBQkFVZ0FwZ0dUQVRrQURRQUFKVGN5TnpZbkppTTFGaGNXQndZQlNBRWlCd2dYQ2c4MEVBOGNGYVloSHg0UUNCMEJMU29oR1FBQkFUMEFtZ0dJQVMwQURRQUFKU1luSmpjMk14VWlCd1lYRmpNQmlEUVJFQnNVSkNFSUJ4Z0xEcG9DTGlvaEdCMGZIeEFIQUFBQkFEMEJFd0VjQVk0QUJ3QUFFek1WSXpVek5UTzZZdDlpR3dFdUd4dGdBQUVBUFFFZ0FSd0Jtd0FIQUFBVEZTTTFJelV6RmJvYll0OEJnR0JnR3hzQUFRQmdBSFFCa3dHb0FBc0FBQk16TlRNVk14VWpGU00xSTJCelNIaDRTSE1CTkhSMFNIaDRBQUVBVFFEa0FjNEJPd0FEQUFBVElSVWhUUUdCL244Qk8xY0FBUUNhQXJNQmFRTVRBQTBBQUFFR0J3WWpJaWNtSnpNV016STNBV2tJTXhVWFBCME1BeGdOUXpzVUF4TS9HQWt6RkJrc0xBQUFBUUQ4QWRFQlJnSXlBQU1BQUFFVkl6VUJSa29DTW1GaEFBQUNBSmtCdmdGUEFuUUFEd0FmQUFBVE1oY1dGUlFIQmlNaUp5WTFORGMyRnlJSEJoVVVGeFl6TWpjMk5UUW5KdlF5R3c0ckZob3lHdzRyRmhvaUVRWWZEQTRpRVFZZkRBSjBLeFlhTWhzT0t4WWFNaHNPSWg4TURpSVJCaDhNRGlJUkJnQUFBUUJMLzFVQkhRQUFBQkVBQURzQkJnY0dGeFlYRmpjWEJpY21KeVkxTkhzcUpnb0VBZ1U4TlNBVUkwRStIeEVHS3c4UUl3b0pMQms0QVFFcEZSczJBQUVCR3dMREFlY0RFd0FWQUFBQk5qYzJNellYRmpjMk56TVdCd1lqSmljbUl3WUhBUnNCSmhJU0R4MFFDU0lVQlFNY0RoSVhHUThMS0JZQ3hDc1lDd0VYRFFFREd5Z1hDd0VWRFFFaUFBSUFxQUhpQWpVQ2tRQURBQWNBQUFFSEl6Y2hCeU0zQVgrcExub0JFNmt1ZWdLUnI2K3Zyd0FCQUI0QWZBRG5BUk1BR0FBQU56WTNOamN3RnhZek1qYzJGeFlIQmdjaUp5WXhCZzhCSnpFV0ZBVUNDUlFrR0JRSkN3Z0dJeDAxRkFRSkZ4WUU1QWNiQndZMFN5TVFDUWdKTGdOVUZCRUhCaGdBQVFCTkFSd0JSZ0tYQUFrQUFCTUhOVGNSTXhVak5UT2VVWWR5K1ZFQ1hCVXpIZjYzTWpJQUFBRUFSd0RyQVRVQjlnQTBBQUFCQmhVR0Z5Y21JeUlIRkJjV0Z4WVZGQWNHSXlJbkpnY0dCeU0zTmpVMEp6TVdNekkxTkNjbUp5WTFORGMyTXpJWEZqYzJOd0V1QndFUEtBMDhNQVlzUGdvcU9CZ2JMaGdFQWdFSEpna0dEeVlOT2tRclBnOG5QQllaTEJJR0FRRUVBZllNRWhZUEFSZ1hGUkFWQmhZcEt4TUlEd01HQkEwVURna09GQm9ZRXcwVkNSY3FLaEVHQ2dRRUJBWUFBQUVBSHdEeUFYZ0I4Z0FiQUFBM0l6VXpOeWNqTlRNVkl4YzNJelV6RlNNSEZ6TVZJelV6SndjenNKRXpXRmt5a1IwNE9CNlRORmhYTlpNY05qY2M4ak5OVGpJeU1qSXlNazVOTXpNdkx3QUFBUUFBQUFBQXNnS05BQVVBQUJFekVTTVJJN0lna2dLTi9YTUNid0FBQVFBQUFBQUFzZ0tOQUFjQUFCRXpOVE1SSXhFamtpQWdrZ0lPZi8xekFmQUFBQUVBQUFBQUFMSUNqUUFIQUFBUk14RXpFU01SSTVJZ0lKSUJhUUVrL1hNQlN3QUJBQUQvL3dDeUFvd0FCd0FBUFFFekVUTVJJeldTSUNCK0hnSHcvWE4vQUFFQUFBQUFBTElDalFBRkFBQXhOVE1STXhHU0lCNENiLzF6QUFBQi8zQUNOZ0FuQXNzQUF3QUFBek1YSTVCUGFDY0N5NVVBQUFIL25RSXlBRmtDeXdBREFBQVRCeU0zV1pRb2FnTExtWmtBQWY4QUFvZ0FGd01OQUFVQUFCTUhKd2NuTnhjZmNHOFpqQUtnR0VoQkVXMEFBQUgrMGdLYi80d0M1QUFWQUFBQk5qYzJNellYRmpjMk56TVdCd1lqSmljbUl3WUgvdElCSkE4UURoc09DQjRUQlFJYURROFZGdzBMSkJRQ25DY1dDZ0VXQ3dFREdDVVVDZ0VUREFFZkFBSCtnd0pZLzk0Q3JBQURBQUFCSVJVaC9vTUJXLzZsQXF4VUFBQUIvYmNDWXYvOUFyUUFBd0FBQVNFVklmMjNBa2I5dWdLMFVnQUFBZjY3QXJQL2lnTVRBQTBBQUFNR0J3WWpJaWNtSnpNV016STNkZ2d6RlJjOEhRd0RHQTFDUEJRREV6OFlDVE1VR1N3c0FBSC93UUpxQUFzQ3l3QURBQUFURlNNMUMwb0N5MkZoQUFML05nS0pBQjhDMVFBUEFCOEFBQU0wTnpZek1oY1dGUlFIQmlNaUp5WTNORGMyTXpJWEZoVVVCd1lqSWljbXloa0dCeHNKQWhrR0J4c0pBcDBaQmdjYkNRSVpCZ2NiQ1FJQ3J4c0pBaGtHQnhzSkFoa0dCeHNKQWhrR0J4c0pBaGtHQUFBQi8xOENyLytuQXhRQUZnQUFBelFqSWc4QkpqYzJNellYRmdjR0J3WVZJelUyTnpaeUVRY0hEd0VTQlFVcEFnRVREd0lCREFFT0NRTDJGZ29JRHdnQ0FSOFJFUTRPQkFRSkRCWU9BQUFDL3FRQ1R2OWFBd1FBRHdBZkFBQUJNaGNXRlJRSEJpTWlKeVkxTkRjMkZ5SUhCaFVVRnhZek1qYzJOVFFuSnY3L05Cb05MQlVhTWhzT0xCWVpKQThHSHd3T0pBOEdJZ3NEQkN3VkdqUWFEU3NXR2pRYURTSWdEQTBpRVFZaEN3MGxEd1VBQXY1cEFqTC8yUUxMQUFNQUJ3QUFBd2NqTnlNSEl6Y25sQ2xyWXBRb2FnTExtWm1abVFBQi9uVUNRUDlKQXE0QUJnQUFBd2NqSnpjWE43ZGhFV0lMWVYwQ29tSmlERXhNQUFBQi80UUNtUCs0QXhJQUF3QUFBek1ISTN3MERoZ0RFbm9BQUFML0R3S1gvOUVERVFBREFBY0FBQU16QnlNbk13Y2pZelFPR0p3MERoZ0RFWHA2ZWdBQUF2NDFBZ3Yvb1FLZ0FBTUFCd0FBQVRNWEl5VXpGeVArNmxCbkovNjdUMmdvQXFDVmxaVUFBQUwrdFFKNi8rTUMyd0FOQUJFQUFBTUdCd1lqSWljbUp6TVdNekkzTXhVak5Yd0lOUlFYUEIwTUFoZ05RanNWZDBvQzIwQVhDRElVR1NzcllXRUFBZjY3QXJQL2lnTVRBQTBBQUFNakppTWlCeU0yTnpZek1oY1dkaGdVUEVJTkdBWXpGaGs4SFFzQ3N5d3NQQmtMTlJNQUFBSC9Ud0tHLzg0RE9BQVNBQUFETmpjMk54Y0dCd1lYRmdjR0J3WW5KaWNtcFE4M0VCQU5HQkFNQ2h3RkJpRUlDaWdKQmdMZU5Sc0hBeEFHR0JNT0VTUWtDQUlCQWlVYkFBSC9LZ0pHLzZrQytBQVNBQUFEQmdjR0J5YzJOelluSmpjMk56WVhGaGNXWXc4M0VCQU5HQkFNQ2h3RkJpRUlDaWdKQmdLZ05Sc0hBeEFHR0JNT0VTUWtDQUlCQWlVYkFBSC9Od0pHLzdZQytBQVNBQUFESmpjMk56WVhGZ2NHQndZWEZoY0hKaWNtdlJVUERTQXBEUXdZQXdVUEh3ME5EVG9mQ1FLZ0d5QWFBZ01sSWhnREF4VWJEQU1RQ3pJT0FBSC9LZ0pHLzZrQytBQVNBQUFEQmdjR0J5YzJOelluSmpjMk56WVhGaGNXWXc4M0VCQU5HQkFNQ2h3RkJpRUlDaWdKQmdLZ05Sc0hBeEFHR0JNT0VTUWtDQUlCQWlVYkFBSCtHdjliL3RILzhBQURBQUFGTXhjai9ocFBhQ2NRbFFBQUFmNW0vMWIvSXYvdkFBTUFBQThCSXpmZWxDaHFFWm1aQUFBQi94VC9VLzkyLzg4QUJ3QUFCeU0xTXpVekZTT2VUazRVRkhrVU5Id0FBQUgvRnY5VC8zai96d0FIQUFBSEZTTTFNeFV6RmRZVUZFNTVOSHcwRkFBQUFmNVpBbGovWEFMUkFBVUFBQU1qTlNNMUlhUWU1UUVEQWxoYkhnQUFBZjhxQWtiL3FRTDRBQklBQUFNR0J3WUhKelkzTmljbU56WTNOaGNXRnhaakR6Y1FFQTBZRUF3S0hBVUdJUWdLS0FrR0FxQTFHd2NERUFZWUV3NFJKQ1FJQWdFQ0pSc0FBZjh2LzEzL2V2L3dBQTBBQUFjbUp5WTNOak1WSWdjR0Z4WXpoalFSRUJzVUpDRUlCeGdMRHFNQ0xpb2hHQjBmSHhBSEFBSC9CLzlrLzRQL3hnQUhBQUFITlRNVk14VWpOY1VVTkh5SVRrNFVGQUFBQWY4SC8yNy9nLy9RQUFjQUFBY2pOVE1WSXhVanhUUjhOQlJFRkJST0FBQUIvam4vVS82MS84OEFDd0FBQlJVak5TTTFNelV6RlRNVi9vRVVORFFVTkhrME5CUTBOQlFBQWY2bi8xLy9wZit4QUFNQUFBVXpGU1ArcC83K1QxSUFBZjgzL3puL2t2L1lBQllBQUFjVUJ3WWpCaWNtTnpJVkZnY0dCekkzTmpjMlBRRXpiaVlORUJjQkFSRU9BUVVEQXdJSUZRd0ZGNFFyRVFZQkVnOEVEQVlHQlFFQ0JoWUpDMllBQUFIL1hQODUvN2YvMkFBWUFBQUhOVE1WRkJjV0Z4WXpKaWNtTnpZekZoY1dCeUlqSmljbXBCY2dBd01JQWdNREN3c0VCZzRDQVJNREF6SU9BNFJjWmgwUUFnRUNBUVVNQ1FNQkR4RURBU3NLQUFBQi91Yi9adjh3LzhjQUF3QUFCeFVqTmRCS09XRmhBQUFDL2xEL2RmODUvOEVBRHdBZkFBQUZORGMyTXpJWEZoVVVCd1lqSWljbU56UTNOak15RnhZVkZBY0dJeUluSnY1UUdRWUhHd2tDR1FZSEd3a0NuUmtHQnhzSkFoa0dCeHNKQW1VYkNRSVpCZ2NiQ1FJWkJnY2JDUUlaQmdjYkNRSVpCZ0FBQXY0MC96VCs2di9xQUE4QUh3QUFCVElYRmhVVUJ3WWpJaWNtTlRRM05oY2lCd1lWRkJjV016STNOalUwSnliK2p6SWJEaXNXR2pJYkRpc1dHaVVQQlNBTURTSVJCaUVMRmlzV0dqSWJEaXNXR2pJYkRpSWlDd3drRHdZZkRBNGtEd1lBQUFIL0t2OGIvNm4velFBU0FBQUhCZ2NHQnljMk56WW5KamMyTnpZWEZoY1dZdzgzRUJBTkdCQU1DaHdGQmlFSUNpZ0pCb3MxR3djREVBWVlFdzRSSkNRSUFnRUNKUnNBQUFIL1dQOCtBQVFBR2dBVUFBQW5CellYRmdjR0l5SW5OeFkzTmljbUJ3WVBBVGRtQ2o0akh4TWJaeEVTQlZvZ0NRRUZUd1FFR2d3YU5nMHJKaWs1QWlJTUpnb0tRQTBCQVFaZUFBQUIvdXovVmYrK0FBQUFFUUFBSXpNR0J3WVhGaGNXTnhjR0p5WW5KalUwNUNvbUNnUUNCRDAxSUJRalFUNGZFUVlxRHhFakNna3NHVGdCQVNrVkd6WUFBZitELzBML3F2KzhBQU1BQUFjekZTTjhKaWRFZWdBQUFmNnovMXYveXYvZUFBY0FBQVUxSVJVak5TTVYvck1CRng3YnBZT0RaV1VBQUFIK3MvOU8vN24vMFFBZ0FBQUhNeFVXRnpJM05qMEJNeFVVQndZaklpY0dJeUluSmowQk14VVdGekkzTmpYWkhnUW5IUXNESGpBTkRDUVdGaVF0RkFnZUJDY2RDd012VVJFRERRTUVVVkVqREFNVEV4b0xEVkZSRVFNTkF3UUFBQUgrbHY5Zy8yai96QUFHQUFBUEFTTW5OeGMzbUdBUllReGZXejloWVF0S1NnQUIvbS8vUWYrRi84WUFCUUFBRHdFbkJ5YzNleDV3YnhtTXB4aElRUkZ0QUFIK3UvOWgvNHIvd1FBTkFBQUhCZ2NHSXlJbkppY3pGak15TjNZSU14VVhQQjBNQXhnTlFqd1VQejhZQ1RNVUdTd3NBQUFCL3J2L1h2K0svNzBBRFFBQUJ5TW1JeUlISXpZM05qTXlGeFoyR0JROFFnMFlCelFWR0QwY0M2SXJLejBZQ2pRVEFBSCswdjlOLzR6L2xRQVZBQUFGTmpjMk16WVhGak0yTnpNV0J3WWpKaWNtSXlJSC90SUJKUThQRGh3T0J4OFNCUUljREE0VkZ3MExJeFd6S1JVSkFSWUtBeGttRlFrQkZBc2dBQUFCL29QL1dQL2UvNndBQXdBQUJTRVZJZjZEQVZ2K3BWUlVBQUg5cVA5bS8rNy90d0FEQUFBRklSVWgvYWdDUnYyNlNWRUFBdjJLLzBQLzBQL3RBQU1BQndBQUJTRVZJUlVoRlNIOWlnSkcvYm9DUnYyNkUxSUdVZ0FCL3RJQkMvK01BVlFBRlFBQUFUWTNOak0yRnhZM05qY3pGZ2NHSXlZbkppTUdCLzdTQVNRUEVBNGJEZ2dlRXdVQ0dnMFBGUmNOQ3lRVUFRd25GZ29CRmdzQkF4Z2xGQW9CRXd3Qkh3QUIvb01BeVAvZUFSd0FBd0FBQVNFVklmNkRBVnYrcFFFY1ZBQUFBZjJTQU5MLzJBRWtBQU1BQUFFaEZTSDlrZ0pHL2JvQkpGSUFBQUgrVVFCVy80SUJod0FEQUFBbE54Y0gvbEgyTy9XUzlUdjJBQUFCL0dYL2lmNzNBaHNBQXdBQUJRRVhBZnhsQWxrNS9hZytBbGs2L2FnQUFBSC9RUDlkLzR2LzhBQU5BQUFITnpJM05pY21JelVXRnhZSEJzQUJJZ2NJRndvUE5CQVBIQldqSVI4ZUVBZ2RBUzBxSVJrQUFBSCtNdjljLzBuLzN3QUhBQUFGTXhVek5UTVZJZjR5SHRzZS91a2haV1dEQUFBQy90WC9VUDluLytJQUF3QUhBQUFIRlNNMUZ5TVZNNW1TZm1wcUhwS1NGR29BQWY2Ny8yMy9zUC9JQUNFQUFBY21KeUlIQmljbU56WTNOak15RnpZek1oY1dCd1luSmljaUJ3WVZGQWNHSnliWkJDY2VEaE1CQWd3WkRBZ0pKQllXSkNFWkN3a0dDUk1hSFFzRERnb0ZBV29SQXdzUERnd0lFZ0lDRXhNZERBWUZCdzRCRFFNRUpRTUNHQWdBQWY3SEFwWC9nd01OQUFzQUFBTW5CeWMzSnpjWE54Y0hGNHhQVHc4L1B3OVBUdzgvUHdLVkt5c2FJaUlhS3lzYUlpSUFBQUgrNkFKby95Y0RDUUFWQUFBQk5UWTFOQ2NtTlNZM05oY1ZCZ2NVRnhZSEJnY0cvdWtiRGcwQklRME5GUU1QRFFFQklBMENhQWdTSHdrUUR4SWVEQVFCQkJBYUJoVVFEQ0VTQ0FBQy9hVUNSLy9xQXlVQUF3QUhBQUFCSVJVaEZTRVZJZjJsQWtYOXV3SkYvYnNESlZFOFVRRC8vLzl3QWpZQUp3TExFQVlDRFFBQS8vLy9uUUl5QUZrQ3l4QUdBZzRBQUFBQi90SUNtLytNQXVRQUZRQUFBVFkzTmpNMkZ4WTNOamN6RmdjR0l5WW5KaU1HQi83U0FTUVBFQTRiRGdnZUV3VUNHZzBQRlJjTkN5UVVBcHduRmdvQkZnc0JBeGdsRkFvQkV3d0JILy8vL3lvQ1J2K3BBdmdRQmdJZ0FBRC8vLzgyQW9rQUh3T3NFQ2NBZHY2REFSc1FCZ0lWQUFBQUFmNWovMUgvQmYvZEFCRUFBQVV6QmpFR0Z4WTNOaGNXQndZbkppY21OZjVrT0FFQkhSc2dEZ1FFQ2k0ek1nWUJJeTRqRVE4VkNRME1CeVFRRURnSEJ3QUFBZjhKQXJBQTJnTUxBQlVBQUJNV0J3WW5KaWNtSXdZSEl6WTNOamMyRnhZM05qZlpCVEFsTkRRNEl4cFlOaFVDUVRBM0lrTW1FMG94QXdZbUd4VUJBUmtQQVNnb0hCUUJBUm9PQVFFaEFBQUIveklDc3dEUUF4TUFEd0FBRXdZSEJpTWlKeVluTXhZek1qYzJOOUFPVmpBNmVUb1lCUndhbVhJMUNRVURFemNiRGpNVUdTd2hCUVlBQVFES0FmNEJCUUtWQUFNQUFCTXpCeVBSTkNNWUFwV1hBQUFCQU1yL1dBRUYvKzhBQXdBQUZ6TUhJOUUwSXhnUmx3QUJBTlQvVVFGMi85MEFFUUFBRnpNR01RWVhGamMyRnhZSEJpY21KeVkxMVRnQkFSMGJJQTRFQkFvdU16SUdBU011SXhFUEZRa05EQWNrRUJBNEJ3Y0FBZ0NJLzNvQld3R25BQThBRXdBQUV6UTNOak15RnhZVkZBY0dJeUluSmhjSEl6ZTNLUk1XTUJnS0tCTVhNQmdLbUhoUFVnRmZLaFFLSlJBVEtCVUtKUkRkOXZZQUFBRUFOQUliQUdnQ2xRQURBQUFUTXdjak5EUU9HQUtWZWdELy93Q0JBZUlCYWdMUUVDY0I3QUNuQURzUUJnQnFBQUQvLy8vQkFBQUNPd0l5RUNZQjdJMmRFQVlBSkFBQS8vOEEzUUN4QVlFQlB4QUdBSGtBQVAvLy8rNEFBQUlvQWpJUUpnSHN1cDBRQmdBb0FBRC8vLy9EQUFBQ09RSXlFQ1lCN0krZEVBWUFLd0FBLy8vLy9RQUFBZjhDTWhBbUFlekpuUkFHQUN3QUFQLy8vK0wvOXdJYUFqc1FKZ0hzcnFZUUJnQXlBQUQvLy8vRUFBQUNOd0l5RUNZQjdKQ2RFQVlBUEFBQS8vLy9wQUFBQWxNQ1BCQW5BZXovY1ArbkVBWUNld0FBLy84QVovOC9BaDhDM0JBbkFld0ErQUJIRUNZQWFsRU1FQVlDaXdBQS8vOEFIUUFBQWpzQ01oQUdBQ1FBQVAvL0FGRUFBQUlnQWpJUUJnQWxBQUFBQVFBd0FBQUNEUUl5QUEwQUFEY1JJelVoRnlNbkl4RXpGU0UxaFZVQnlSUlhFY1pYL3Z0VUFZcFUzNHYrZGxSVUFBQUNBQXIvL3dJNUFqSUFCQUFIQUFBSkFSVWhKd0VESVFFaEFSajkwZ0VCRjdvQmRRSXkvaVZZV0FGUC9yRC8vd0JLQUFBQ0tBSXlFQVlBS0FBQS8vOEFXd0FBQWZnQ01oQUdBRDBBQVAvL0FCOEFBQUk1QWpJUUJnQXJBQUFBQXdBKy8vY0NHZ0k3QUFNQUV3QWpBQUFUTXhVakV6SVhGaFVVQndZaklpY21OVFEzTmhjaUJ3WVZGQmNXTXpJM05qVTBKeWE1NWVWelpVZENTa1ZmWlVkQ1NrVmZRaXdsUENjd1Fpd2xQQ2NCUjFRQlNGdFZjbnBYVVZ0VmNucFhVVnRFT0V0a1BDZEVPRXRrUENjQS8vOEFXUUFBQWY4Q01oQUdBQ3dBQVAvL0FBVUFBQUpTQWpJUUJnQXVBQUFBQVFBTi8vOENTd0pCQUE0QUFDVVZJelV6Q3dFekZTTTFNeE16RXdKTHhEeVhsanZFSzhsWHgxTlVWQUdBL29CVVZBSHUvaEwvL3dBSUFBQUNVQUl5RUFZQU1BQUEvLzhBQVAvNUFsZ0NNaEFHQURFQUFBQURBQW9BQUFJbEFqSUFCd0FVQUJ3QUFEY0hJVGN6QnlFM0pUY2pCeU0zTlRjSE16OEJCeWMzSVFjak55RUhiUWtCTXdoTkdQNDJGd0ZsQk9VRlRSbE1CdVlHVEJnUUNmN05DRTBZQWNvWGpEWTJqSXhWSVNHVEFnRWpJUUdWeFRZMmpJei8vd0ErLy9jQ0dnSTdFQVlBTWdBQUFBRUFIUUFBQWp3Q01nQVRBQUEzTXhFak5TRVZJeEV6RlNNMU14RWpFVE1WSXg1Q1F3SWZRMFBmUStkRDNsUUJpbFJVL25aVVZBR0svblpVLy84QU5RQUFBaTBDTWhBR0FETUFBQUFCQUNBQUFBSklBaklBRVFBQU16VXpOeWNqTlNFWEl5Y2hGd2NoTnpNSElFQjlmajhCOXpGSUpmN2xmbjBCR2hsSEpGVEZ4VlMxWWNYRlliVUEvLzhBSWdBQUFqWUNNaEFHQURjQUFQLy9BQ0FBQUFJM0FqSVFCZ0E4QUFBQUF3QlpBQUFCL3dJeUFBUUFDUUFuQUFBbE5RWVZGRGNITmpVMEp5TTFJUlVqRlJZWEZoVVVCd1lIRlRNVklUVXpOU1luSmpVME56WTNBUUltZ0FFcGc2Y0JwYVJMSkJSQ0hTU2ovbHVwU0NRVVFSd2kwMzhiSlNSbWd4b25KNlZVVkNnVlFpUXBUek1YQ2h0VVZCd1VRU1VvVHpRV0NnRC8vd0FVQUFBQ1JBSXlFQVlBT3dBQUFBRUFMQUFBQWlnQ01nQXJBQUFCSXhVVUJ3WUhGVE1WSXpVek5TWW5KajBCSXpVekZTTVZGQmNXRnpVak5UTVZJeFUyTnpZOUFTTTFNd0lvR3pZelNTYW1KMW82SlIyTkhDWWFKU2FtSno4WENCcUpBZDVUT3pnMERvSlVWSUFRVERBclUxUlVLelVxSFFxeFZGU3RGMEVXRkN0VUFBQUJBQUFBQUFKVEFqd0FOUUFBSlRNM0Z3Y2pOVFEzTmpjMk5UUW5KaU1pQndZVkZCY1dGeFlkQVNNbk54Y3pOVFFuSmljbU5UUTNOak15RnhZVkZBY0dCd1lWQWJSU0hUQTJ3elF1Q1ExQUt6dHBLaE13TVFzTXd6czFIVklwTlE0TVhVWmRkRXRCT3lzSEMxUlBFNUJtTGowM0VSZ1dVaTBlVENNdUpEZzZHaGtZWm80VlR4SWJNMEluSUNGdFFERkhQbGxFU2pjTUZCUC8vd0JaQUFBQi93S21FQ1lBYWpaNEVBWUFMQUFBLy84QUlBQUFBamNDcGhBbUFHbzJlQkFHQUR3QUFQLy9BQXIvOWdKT0FsVVFKd0hzQU43L3dCQUdBb01BQVAvL0FITC8vUUhQQWt3UUp3SHNBTkwvdHhBR0FvY0FBUC8vQUJiL1FBSkFBbG9RSndIc0FOMy94UkFHQW9rQUFQLy9BR2YvUHdJZkFrd1FKd0hzQVBUL3R4QUdBb3NBQVAvL0FCYi84Z0lQQXR3UUp3SHNBT2NBUnhBbUFHby9EQkFHQXBjQUFBQUNBQXIvOWdKT0FiTUFDd0FvQUFBbEppTWlCd1lWRkJjV016SVRNeFVqQmdjV0Z6TVZJelV6SndZaklpY21OVFEzTmpNeUZ6WXhJd0dKUFdZL0tCczFJaWhuWTZFeEd4Z1dEa0NrQ1FaT2UxNUNPa2cvVklCUERCUE5qRFlsTFVBb0dRRmFRV003UWtOR1JoZG5TRDlVWWtROGR5MEFBZ0E0LzFBQ0F3S1ZBQmdBTWdBQUFSWVhGQWNHSXlJbkZUTVZJelV6RVRRM05qTXlGeFlWRkFVV016STNOalUwSnlZckFUVXpNamMyTlRRbkppTWlCd1lWQWFsWUFrWXpRa05CUE1neU9UVkRTejVCL3Q5R1Bqc2FERFFnSHk0ektSY1FMUjhrS2gwUUFVRStZbGsySnpOMFdsb0NQRVkzTWpVM1VGWGxXaThWR0RNa0Zsb3NIU2d0SUJVcEZoWUFBdi91L3lzQ1dBSEdBQXNBTFFBQUpRWVZGQmNXTXpJM05qVTBBVFl6TWhjV0Z6WTNOamNYQmdjR0J4WVZGQWNHSXlJbkpqVTBOeVluSmlNaUJ3RlZMQk1EQXhFUENmNkRQbWhqWXd3TEtSUTVJVkFzY0JrTUxpOGxMMEFpRVdGSlBBd0xMaVlnUlNnakNnRVhEUTBqQVdtRXZSWVlNaHRNUHlwU2pTQVBna002TFNSR0lpQlJoTFVuQ0ZBQUFBSUFSdi80QWhFQ2pBQVBBQzRBQUFFaUJ3WVZGQmNXTXpJM05qVTBKeVkzSmlNaUJ3WVhGaGNXRlJRSEJpTWlKeVkxTkRjMk55WTFORGMyTXpJWEFTeEFMUjgyS0M1QkxCNDJKellZRGhNQkF5Z0ZRRkZMUWxoaVJqNU1PRW9iTFI0bUlpZ0JXRFFsS2pzcUhqVWtLandwSHM4TEdEZ3FCVGRKWGw1RFBFaEJWRjVETXdndVBqWWlGeE1BQVFCeS8vMEJ6d0dxQUQwQUFEYzBOelkzSmljbU5UUTNOak15RnhZWEZqYzJOek1HRlJRWEl5WW5KaU1pQndZVkZCY1dPd0VWSXlJSEJoVVVGeFl6TWpjMk54Y0dCd1lqSWljbWNqd0dCemtKQWxNbUp6NGJBUUlKQXdJQ1J3NFRTdzRxRkNFL0NRRkFEeEFuSWxFVEJUb1FEVE1hQmdoRE4xRUxDMGcxTVlWSEdnTUNFVFlKQ2owYkRSTUJBUTBPRUFRbUlSVXdNQW9GSFFNREhRY0NTaWdLRENZT0JCa0dDaTlGQ3dFbkpRQUNBR0wvUUFIaUFzQUFCd0JCQUFBQk5qYzJOU1lISWljR0Z6WXpNaGNXRlJRSEJpTWlKd1lWRkJjV016SVZGQWNHSXlJbkppYzNGaGNXTXpJM05qVTBKeVlqSWljbU5UUTNOamNtTnpZM05qY0JQakFUQndRU0RXa2hDMUE4VFJvSldUUXdEd2RUS0J3N3BFOHFKemxCQ3doQUhpVUdCQ2tYQmhRUUpyNFhCRVFLQ2pnR0F4d0ZEQUlmRFI4S0NnZ0JGQ1VkaURZVEdGRXhIQUcwUkZZWUVZZEhLQlUzQ1FnK0hnd0NIZ2NGSGdnSHBCZ2RWSnNXRmk1REtDTUhEZ0FCQUJiL1FBSkFBYmdBSUFBQUV5TTJNeklYRmhVUk14VWpOVE1STkNjbUl5SUhCZ2NWTXhVak5UTVJJelV6ckFGWVBrTkRQanZRUENRZUtUcFVCQVE3MER3OGxnR0VOREl2TC81c1ZGUUJZaXNqSFRZREF0SlVWQUVDVkFBQUF3QjEvLzhCNHdKNkFBOEFGZ0FkQUFBQk1oY1dGUlFIQmlNaUp5WTFORGMyQXhZWEZqTXlOd01pQndZSE15WUJMRkkxTUQ0elJsSTFNRDR6R1FWRUNneFpCbDlKRWdNQnZnWUNlbVpjZTVCZ1RtWmNlNUJnVHY2WW9CY0V1d0VRaVJnYXV3QUFBUUJuL3o4Q0h3R3FBQndBQUFVVUZ4WXpNamNtSnlZMU5EYzJGeFlIQmdjR0l5SW5KalVSSXpVekFXQWdGaFloRXcwS0FpRWFFZ3NCQWkwZ0trNHVJNS81RlNZa0dCd0RFd1FETncwSkdSQVlReXdnTXljOEFZRlVBUC8vQUFVQUFBSlNBYW9RQmdENkFBQUFBUUFBQUFBQ1NnSXhBQk1BQUFFVkl4TXpGU00xTXljSE14VWpOVE1USnlNMUFWY2V4VXplTG5sK05kaERyaGpWQWpGVS9uZFVWUGo0VkZRQldUQlVBQUVBRnY5QUFrQUJxZ0FiQUFBbEJpTWlKeFVqRVNNMU14VVdGeFl6TWpjMk56VWpOVE1STXhVakFhdFlQamN6V2p1VkJpY2JJanBVQkFRN2xEeVZKalFjemdJV1ZQNHdIeFEyQXdMU1ZQNnFWQUFCQUFyLzh3Sk9BYW9BRGdBQUFTTURJd01qTlRNVkl4YzNJelV6QWs1S3JWT3ZTOW94ZVhveDJRRlcvcDBCWTFSVS9mMVVBQUFCQUlQL013SFpBb1VBT0FBQUZ4WVhGak15TnpZMU5DOEJKaWMwTnpZM0pqVTBOell6TWhjSEppTWlCd1lWRkJjV093RVZJeUlIQmhVVUh3RVdGUlFIQmlNaUp5WW45eWNaQ0Fna0R3VXhXVzRFT1FzTktEUXJPVUEwTmhzakh4UUxKZzRPTzBrdUhCTkViRXc4Snk5TFFBUUZRQ3dGQWlBS0N4Y1pMRWRsVkQwTUNqSS9Sek1wSmtnVUloSVZNaFVJV2k0ZEpEY25OaTVHU1NzYlNRUUdBUC8vQUViLytBSVJBYklRQmdCU0FBQUFBUUFuQUFBQ01RR3FBQk1BQURjekVTTTFJUlVqRVRNVkl6VXpFU01STXhVaktFZElBZ3BJU09CQXlrSGdWQUVCVlZYKy8xUlVBUUgrLzFULy93QWgvMEFDT1FHeUVBWUFVd0FBQUFFQWlQLzRBZ1VCdFFCQkFBQVhJelkzTkNjWEZoY1dNekkxTkM4QkppYzBOell6TWhjV056WTNNekFIQmhVVUZ4WVhNQ01tSXlJSEJoVVVId0VXRnhRVkZBY0dJeUluSmljbUJ3WUhCZ2ZBQVFzQ0dFSVVLQWdUT0RocVdBTk9MamRPSmdnREFRdytEZ2tUQWdJK0ZXRm1DZ0UyWkYwR1ZSc2dKdzBIQ1FvQ0FRTUNBZ2NYR2lnV0FTUURBU1VpRnlZc1NrQWhGQm9GQ3dNWUlSUVRFeDhFQWlzaEF3TWRGU01uVGdVR1RoWUhCd01IQndnSUJBSURBQUlBUnYvNEFrOEJzd0FQQUNBQUFBRWlCd1lWRkJjV016STNOalUwSnlZbklRY2pGaFVVQndZaklpY21OVFEzTmdFc1FDMGZOaWd1UVN3ZU5pY3VBU014UEM5TFFsaGlSajVDUVFGWU5DVXFPeW9lTlNRcVBDa2VXMW84U0Y1RFBFaEJWRnRDUVFBQUFRQUgvKzBDRXdHcUFCY0FBQk1oQnlNVkZCY1dNekkzTmpFWEJnY0dJeUluSmowQkl5NEJpU2JPTXlRdVIxUUxKVXRRSVJ0eFBTVmlBYXBVbHpvbUcxME5RVk1nRFVNcE5Na0FBQUVBRnYveUFnOEJxZ0FoQUFBRklpY21OelEzSXpVek1BY0dGUlFYRmpNeU56WTFOQ2NqTlRNd0Z4WVZGQWNHQVNxSk95VUNEanVlRWdVNEpUQlZKUklMUTV3S0FVVkJEbVUrWUI5Q1ZIQW5HRm8xSTFVck5pQTNWSTRQREhWUVNnQUFBd0FsLzJNQ013RzRBQkFBSUFCSEFBQUJGUllYRmpNeU56WTFOQ2NtSXlJSEJnYzFOQ2NtSXlJSEJoVVVGeFl6TWpjWE5RWUhCaU1pSnlZMU5EYzJNeklYRmhjMk56WXpNaGNXRlJRSEJpTWlKeVluRlRNVkl6VUJXUkljQ1FrckVRWWdFQlV3Q3dKYUl3d09JeFVOSGhFVEp4VUVEeGNLRUZRdEdTc3NSalVxQmdVaE53a0pWaTBhS1N4Rkp4RURCVVRtQVNHZUtBY0NUaHNkVGljVExnaW5uUzBPQlQ0bEpUd3ZHeXJGWnhzRkEyYzZQRlJFU0NjR0Jpa0pBV2M3UGxKRVJ4Z0VCMmRVVkFELy93QU5BQUFDU3dHcUVBWUFXd0FBQUFFQURmOXpBa2tCcWdBM0FBQVhNelVHSXlJbkpqVTBOelkzTXhVakJnY1VGeFl6TWpjMUl6VXpGU01WRmpNeU56WTFOQ2NqTlRNV0Z4WVZGQWNHSXlJbkZUTVZJN3BGSXlCdkxCUWdDZ2xqS0JjQ014RVZJQ1E1eVRZa0gwVVJCQmt3YkJjUkNEMHNReUVqUXVFNXB4TnRNajhzTUE0SFJ4d2VVUndLR1poSFI1Z1pTeFFZSXhkSEV6UVlFbkEvTHhPblZBQUJBQWIvL2dKU0Fhb0FMZ0FBQVFNVUZ4WXpNamMyTlRRbkl6VXpGaFVVQndZaklpY21Kd1lISWljbU5UUTNNeFVqQmhVVUZ4WXpNamMyTlJFQldnRW9Cd1U2SWhZWk9YVXdQVE5WT2lNQ0FpQkJlVElhTUk1UkdpNGRKeHdSQndHcS9zb1dDQUZQTkVFeUZFczRVSXhTUmhzQkFod0NpVVpWVXpWTEZqQmxPaVVRQndnQk5nRC8vd0JuL3o4Q0h3SWVFQ1lBYWszd0VBWUNpd0FBLy84QUZ2L3lBZzhDSGhBbUFHb2Q4QkFHQXBjQUFQLy9BRWIvK0FJUkFsUVFKd0hzQU4zL3Z4QUdBRklBQVAvL0FCYi84Z0lQQWt3UUp3SHNBTVQvdHhBR0FwY0FBUC8vQUFiLy9nSlNBa3dRSndIc0FONy90eEFHQXBzQUFBQUJBQjRBQUFIV0FqUUFKQUFBQVNZbkppTWlGUkV6RlNNMU14RTBJeUlIQmdjbk5qYzJNeklYRmhjMk56WXpNaGNXRndHeUNDWVJFVHM3MUQ4N0x4a0dBaVFMTnhnYVBpUURBeDg4QndZOUpBNEZBYWNoRHdaWS9zOVVWQUV4V0NRSkNUb3lGd295QkFVMEJnRXNFaFgvLy8vQ0FBQUIxZ0kwRUNZQjdJNmZFQVlDb1FBQS8vOEFIZ0FBQWRZQ3FCQW1BR29FZWhBR0FxRUFBQUFCQUMwQUFBSTVBaklBRXdBQUV4VXpGU00xSXhVekZTRTFNeEVqTlNFWEl5ZnB0VWxzcWY2YllXRUNBQXcwQ3dIZWNaSSt4VlJVQVlwVXZtb0FBQUVBRmdBQUFrQUJxZ0FmQUFBbEJpTWlKeVk5QVNNMU14VWpGUlFYRmpNeU56WTNOU00xTXhVakZUTVZJd0dyV0Q1RFF6NDcwRHdrSGlrNlZBUUVPOUE4UEpXZ05ESXZMMXBVVkNnckl4MDJBd0pZVkZUL1Z3QUJBQllBQUFKQUFqRUFId0FBSlFZaklpY21QUUVqTlRNVkl4VVVGeFl6TWpjMk56VWpOVE1WSXhFekZTTUJxMWcrUTBNK085QThKQjRwT2xRRUJEdlFQRHlWOVRReUx5K01WRlJhS3lNZE5nTUNpbFJVL25wWEFQLy9BRHovT3dGaEFqSVFCZ0JOQUFELy93QktBQUFDS0FNSkVDWUFRdzU0RUFZQUtBQUEvLzhBU2dBQUFpZ0NwaEFtQUdwRGVCQUdBQ2dBQUFBQ0FGOEFBQUg1QWpJQUVRQWFBQUFCRlNNVk1oY1dGUlFIQmlzQk5UTVJJelVYRlRJM05qVTBKeVlCN3RwcVJEZFVQbE9rU1ZxMFR5Y1dQeU1DTWxwR1JUaE9Zam9yVkFHRVd2cmVNQnNpUGlFU0FQLy9BREFBQUFJTkF3a1FKZ0IyK25nUUJnSm1BQUFBQVFCWC8vNENBUUkvQURFQUFBRXlGeFlYRmpjMk54Y0dGUlFYQnlZbkppTWlCd1lITXpVekZTTTFJeFlYRmpNeU56WTNGd1lIQmlNaUp5WTFORGMyQVVVL0h3UUVDZ0lEQ1Q0VEUwa1ZNQmNYUUNzYUNYOUhSNEVNT2lJb05EQURBMEV0VUJnV2FFWkFURVFDTkJnQ0JBa0pGaE1RTkE4V0x4RXBGZ285SlRJanNEbGFNQncyQXdRL09CTUdXVkp3ZkZSTC8vOEFZUC91QWU0Q1FSQUdBRFlBQVAvL0FGa0FBQUgvQWpJUUJnQXNBQUQvL3dCWkFBQUIvd0ttRUNZQWFqWjRFQVlBTEFBQS8vOEFPLy8vQWhJQ01oQUdBQzBBQUFBQy83SC9lUUpKQWpJQUtBQXhBQUFCRlNNd0J6SVhGaFVVQndZckFUVXpFU01DQndZSEJpTWlKeVluTnhZWEZqTXlOelkzTmhNak5RVVZNamMyTlRRbkpnRytQUUZ6TmlCVE1VV0NLR3NLQmdNdUhDcElMQWNJVEJNUkJ3d05DQWNCQmdwTUFXdGREd05FRXdJeVdrWlZNa1J4TmlCVUFZVCs1S3hVS1JvNUNRd3dIZ1FDRnhFWnJnRVdXdnJlVUEwUVZCY0dBQUFDQUJVQUFBSktBaklBSWdBckFBQUJGU013QnpJWEZoVVVCd1lyQVRVek5TTVZNeFVqTlRNUkl6VXpGU01WTXpVak5STVZNamMyTlRRbkpnR2ZLZ0YxT3laWU5VbDVLSTRvcUNZbXFDaU9LSGxnRmdaSUdBSXlWRjFNTVVWck5DQlUxdFpVVkFHS1ZGUmNYRlQrOWMxQkVSTkxGZ2NBQVFBaUFBQUNXQUl5QUNVQUFBRTJOell6TWhjV0hRRXpGU00xTXpVMEp5WWpJZ2NWTXhVak5UTVJJd2NqTnlFWEl5Y2pBVmtnTHdVRk9pd2lIcGNmSndnS0p5Y2tvU09NQ2tjS0FnQUtSd3FNQVdRakJRRTRLeTJwVkZSM1ZoRUVPNmRVVkFHS1NaMmRTUUQvL3dBRkFBQUNVZ01KRUNZQWRnUjRFQVlBTGdBQS8vOEFJUUFBQWlrRENSQW1BRVA3ZUJBR0FzQUFBUC8vQUFyLy93SlVBcmtRSmdIOExhWVFCZ0xMQUFBQUFRQWQvM2dDUEFJeUFCY0FBQUVqRVRNVkl4VWpOU00xTXhFak5UTVZJeEV6RVNNMU13SThRMFBqV3VKRFE5OUQ1MFBmQWQ3K2RsU0lpRlFCaWxSVS9uWUJpbFFBLy84QUhRQUFBanNDTWhBR0FDUUFBQUFDQUNQLytBSThBaklBRHdBckFBQUJJZ2NHRlJRWEZqTXlOelkxTkNjbU55RVZOak15RnhZVkZBY0dJeUluSmpFVkl6VXpFU00xTUNFWEl3RlhRaXdlTnljdVFpd2RPQ1pOL3ZrNVZHVkZPMHhDVjBvL0E2UkpUUUh0QzBJQlVUTWpLanduSERRaktUd29HNDFuTkVrK1VsNUNPak1ETGxRQmlsU1JBUC8vQUZFQUFBSWdBaklRQmdBbEFBRC8vd0F3QUFBQ0RRSXlFQVlDWmdBQUFBSUFHUDloQWtVQ013QVRBQmtBQURjMk56WTFFU00xSVJVakVUTVZJelVoRlNNMUV4RVVCek1SVHlVT0Jqb0J4ejF0VlA1N1ZNb2R1VlFMTVJNV0FTWlVWUDUxODUrYzhBR0wvdG96TWdHTEFQLy9BRW9BQUFJb0FqSVFCZ0FvQUFBQUFRQU5BQUFDVEFJeUFEa0FBQUV6RlNNSEZoOEJGaGN6RlNNbUp5WW5KaWNIRlRNVkl6VXpOU2NHRHdFR0J5TTFNelkzTmpjMk55Y2pOVE1WSXhjMUl6VXpGU01WTnlNQnA2VXplak1aSkE0VUcxQVFLUjBqQndjY0phTWxIQ29lTUFjSVVCc2RHeFlaRVJwNk02VWNhaCtYSDJvY0FqSlVxdzQ3WUI4V1ZSOXJUQmtGQkNLQ1ZGU0NJaFpIZXhBUVZTRk5RaGNRQjZ0VVZKdWJWRlNibXdBQUFRQjQvL1FCMlFJeUFEa0FBRDhCRmhjV016STNOalUwSnlZckFqVTdBVEkzTmpVMEp5WWpJZ2NHQnk4Qk5qRTJKemNYRmhVMk16SVhGaFVVQnhZWEZBY0dJeUluSm8xQ0tpVUlDQ29aRGlRTURDOFBEeThXRWd3Z0VSRTJKQXNGQTA0UEJCVStEd0UyUDBndElTc3lBVGN3UkZORkJFSStMQVVCTEJvZ014Y0lXaHdTRlI0VUNpd05EZ0VhSkJFd0dTQUJBaVEySmpNOU1UTk9WRG95UkFVQUFRQWhBQUFDS1FJeUFCc0FBRDhCTlNNMU14VWpFVE1WSXpVek5RY1ZNeFVqTlRNUkl6VXpGU095NXpYRk5qYkZOZWMweFRjM3hUVDZ2eVZVVlA1MlZGVDB5Q3hVVkFHS1ZGUUEvLzhBSVFBQUFpa0N1aEFtQWZ3anB4QUdBc0FBQVAvL0FBVUFBQUpTQWpJUUJnQXVBQUFBQWYreC8za0NQQUl5QUNBQUFCTW5JUlVqRVRNVkl6VXpFU01EQmdjR0l5SW5KaWMzRmhjV016STNOamMyRXg0QkFoOURROTlENVJBRExod3FTQ3dIQ0V3VUVRY0xEUWdIQVFVTEFkNVVWUDUyVkZRQml2NHlWQ2thT1FrTU1CNEVBaGNSR1owQkxmLy9BQWdBQUFKUUFqSVFCZ0F3QUFELy93QWZBQUFDT1FJeUVBWUFLd0FBLy84QVB2LzNBaG9DT3hBR0FESUFBUC8vQUIwQUFBSThBaklRQmdKekFBRC8vd0ExQUFBQ0xRSXlFQVlBTXdBQS8vOEFWLy8rQWdFQ1B4QUdBQ1lBQVAvL0FDSUFBQUkyQWpJUUJnQTNBQUFBQVFBSy8vOENWQUl4QUJNQUFBVWhOVE0zQXlNMU14VWpGemNqTlRNVkl3TXpBV0grcmRVWXJrUFlOWDU1THQ1TXhSNEJWREVCV1ZSVStQaFVWUDUyLy84QVdRQUFBZjhDTWhBR0FuZ0FBQUFCQUJRQUFBSkVBaklBR3dBQUFRY1hNeFVqTlRNbkJ6TVZJelV6Tnljak5UTVZJeGMzSXpVekZRSDFrcEpQOFRWYld6WHpVSkNSU1BNOFcxbzg4Z0hleGNWVVZIWjJWRlRGeFZSVWVIaFVWQUFBQVFBZC80NENQQUl5QUJVQUFBRWpFVE1WSXpVaE5UTVJJelV6RlNNUk14RWpOVE1DUEVOQ1d2NDhRMFBmUStkRDN3SGUvbmJHY2xRQmlsUlUvbllCaWxRQUFRQVdBQUFDUUFJeEFCOEFBQ1VHSXlJbkpqMEJJelV6RlNNVkZCY1dNekkzTmpjMUl6VXpGU01STXhVakFhdFlQa05EUGp2UVBDUWVLVHBVQkFRNzBEdzhsZlUwTWk4dmpGUlVXaXNqSFRZREFvcFVWUDU2VndBQUFRQVhBQUFDVUFJeUFCc0FBQ1VSSXpVekZTTVJNeEVqTlRNVkl4RXpGU0UxTXhFak5UTVZJeEVCQlNTaUpHOGtwaWdvL2Njb0tLWWtWQUdLVkZUK2RnR0tWRlQrZGxSVUFZcFVWUDUyQUFBQkFCZi9lZ0pRQWpJQUhRQUFKUkVqTlRNVkl4RXpFU00xTXhVakVUTVZJelVoTlRNUkl6VXpGU01SQVFVa29pUnZKS1lvS0ZyK0lTZ29waVJVQVlwVVZQNTJBWXBVVlA1MjJvWlVBWXBVVlA1MkFBQUNBQkFBQUFKTEFqSUFDQUFjQUFBQkZUSTNOalUwSnlZbEJ5TTNJUlVqRlRJWEZoVVVCd1lyQVRVekVRRjFVeDRMUFJ6KzRCRlhGQUhCYjIwOUsxRTRUYU5KQVRqZU9oY2NSeDBOcG92ZlZFeE1OVXBvT0NkVUFZb0FBQU1BRlFBQUFrVUNNZ0FMQUIwQUpnQUFBU00xTXhVakVUTVZJelV6QXhVakZUSVhGaFVVQndZckFUVXpFU00xRnhVeU56WTFOQ2NtQWJ3cnRDOHV0Q3lVY0c0OUsxRTRUYU5KU2FOU0hndzhIQUhlVkZUK2RsUlVBZDVhUmt3MlNXZzRKMVFCaEZyNjNqa1hIVVVlRGdBQ0FHOEFBQUhwQWpJQUVRQWFBQUFCRlNNVk1oY1dGUlFIQmlzQk5UTVJJelVYRlRJM05qVTBKeVlCZzNCdFBTeFJPRTJrU1VtalV4NE1QUndDTWxwR1N6WkthRGduVkFHRVd2cmVPUmNkUmgwT0FBQUJBRi8vL2dJSkFqOEFNUUFBQVRJWEZoVVVCd1lqSWljbUp6Y1dGekkzTmpjakZTTTFNeFV6SmljbUl5SUhCZ2NuTmpVMEp6Y1dGeFkzTmpjMk56WUJHMmhHUUV4RVhrdEFFdzFCTURwRkxCZ0hnVWRIZnhGQ0hSNDJLd3NIU1JNVFBna0RBUWNDQWg4bkRnSTBXVkp3ZkZSTE1nNFJQenNDU3lreU9iQWpYU2NRTHcwTkVTOFdEelFRRGhzSkJnRUNHUVFCQUFBQ0FCOEFBQUk3QWpNQUJ3QWxBQUFsTmpVMEp3WVZGQ2NqRlRNVkl6VXpFU00xTXhVakZUTTJOeklYRmhVVUJ3WWpJaWNtTlFIRUhSNGRXbzVINWtWRjVrZVZIbEpZR1Fjbkh6RllHUWRuTzNkNE96dDNlSWpXVkZRQmlsUlVYS3NHdERNeWpWQTl0RE15QUFBQ0FCWUFBQUk2QWpJQUNnQXBBQUFCTlNNaUJ3WVZGQmNXTXdjaklpY21OVFEzTmpNaEZTTVJNeFVoTlRNMUl3WUhCZ2NqTlRNMk56WUJtcmhURmd0T0VoUUdHMWN4STJFakp3RjVSa2IrK1dkVFVDRVNHcFJiRWk4WUFUS3NKaE1kUWhBRVZFSXZSV3NsRGxUK2RsUlVpajQ3SUVWVUxUY2MvLzhBS2YveUFqWUJ0UkFHQUVRQUFBQUNBRWIvK0FJUkFuMEFIZ0F1QUFBQk1oY1dGUlFIQmlNaUp5WTFORGMyTnpZM05qYzJOeGNHQndZSEJnYzJGeUlIQmhVVUZ4WXpNamMyTlRRbkpnRXNZa1k5UzBKWVlrWStDQkpXTWtRNERCb0lVaEk5SERzNEtDY25RQzBmTmlndVFTd2VOaWNCc2tsQVZGNURQRWhCVkJ3ZGxWSXdEZ3dIRGlrU1V4NE5EQXN5RGxvMEpTbzdLaDQxSkNvOEtSNEFBQU1BVVFBQUFpQUJxZ0FJQUJNQUpnQUFFek15TnpZMU5Dc0JFVE15TnpZMU5DY21Ld0UzRmhjV0ZSUUhCaU1oTlRNUkl6VWhGaGNVNmIwYkFnRWV2WjhlRmc0cURRdWY3VFVPQjJ3TkRmNjNQajRCU0g0RUFVQUlBUU1LL3Y0aUZSZ3NGUWNuRWk0WUk0WVBBbFFCQWxRRVRUMEFBUUErQUFFQ0d3R3JBQTBBQURjUkl6VWhGeU1uSXhFekZTRTFrMVVCeWhNOUQrSlgvdnRWQVFKVTE0UCsvbFJVQUFBQ0FCai9ZUUpGQWFzQUV3QVpBQUEzTmpjMlBRRWpOU0VWSXhFekZTTTFJUlVqTlJNVkZBY3pFVThsRGdZNkFjYzliVlQrZTFUS0hibFVDekVURnA1VVZQNzk4NStjOEFFRG5qTXlBUU1BLy84QVJRQUFBZ2NCcXhBR0FFZ0FBQUFCQUEwQUFBSk1BYW9BTmdBQUFUTVZJd2NXSHdFV0Z6TVZJeVluSmljSEZUTVZJelV6TlNjR0J3WUhJelV6TmpjMk56WTNKeU0xTXhVakZ6VWpOVE1WSXhVM0l3R25wVE42T0JrbkN3OGJVRGdjR2lrTUphTWxEVGNpRWl0UUd4a2ZGaDBRRjNvenBSWmtINWNmWXhVQnFsUmxEeWhERWhCVmJpQWNGZ3hnVkZSZ0RSMDBHMVZWSERrb0VBa0daVlJVVlZWVVZGVlZBQUVBaFAvOUFlRUJxZ0E3QUFBbEZBY0dJeUluSmljM0ZoY1dNekkzTmpVMEp5WXJBVFV6TWpjMk5UUW5KaU1pQndZSEl6WTFOQ2N6RmhjV056WXpNaGNXRlJRSEJnY1dGeFlCNFZ3cEtWSS9Cd1pER3lVTEVDd2JFRmNKQ1NJblRROERKdzhUUmhjS0Jrc1REa2NDQWdJS0cwRktNU1U4QlFRNURRU0ZWQ1FRUWdjSUx5SUZBaGdORXpZSEFVb2NCUVVYQ1FNZURSUXdGU0VtQkJBT0RSVWpHeWRBRndJQkVEZ09BQUFCQUNFQUFBSXBBYW9BR3dBQVB3RTFJelV6RlNNUk14VWpOVE0xQnhVekZTTTFNeEVqTlRNVkk3TG5OY1UyTnNVMTV6VEZOemZGTk9GV0gxUlUvdjVVVklaZkoxUlVBUUpVVkFELy93QWhBQUFDS1FJeUVDY0IvQUFqL3g4UUJnTGdBQUQvL3dBRkFBQUNVZ0dxRUFZQStnQUFBQUgvc2Y5NUFqd0JxUUFoQUFBVEp5RVZJeEV6RlNNMU14RWpCZ2NHQndZaklpY21KemNXRnhZek1qYzJOelkzSGdFQ0gwTkQzMFBsQlFzR05Sb2lTQ3dIQ0V3VUVRY0xEUWtHQVEwREFWVlVWUDcvVkZRQkFZeTVZQ1VTT1FrTU1CNEVBaGdRR2ZKUEFBQUJBQWdBQUFKUUFhb0FIQUFBQVJFekZTTTFNelVqQnlNbkl4VXpGU00xTXhFak5UTVZGemMxTXhVQ0lpclNUZ1NNRll3SFRkVXVMcFNRbFk4QlZ2NytWRlRKNStMRVZGUUJBbFFMMytJSVZBQUFBZ0FmQUFBQ09RS1dBQnNBSHdBQUV6TTFJelV6RlNNUk14VWpOVE0xSXhVekZTTTFNeEVqTlRNVkl3TXpGeU8vM0VqbVJFUG1TZHhHNWtaRzVrWUdYWG91QVNjK1JVWCs0RVZGaTR0RlJRRWdSVVVCTWE4QS8vOEFSdi80QWhFQnNoQUdBRklBQVAvL0FDY0FBQUl4QWFvUUJnS1NBQUQvL3dBaC8wQUNPUUd5RUFZQVV3QUEvLzhBUlFBQUFmVUJxeEFHQUVZQUFBQUJBQ0lBQUFJMkFhb0FEd0FBSlNjakVUTVZJVFV6RVNNSEl6Y2hGd0h2Q294Ni9yTjVqQXBIQ2dJQUN0OTMvdjVVVkFFQ2Q4dkxBQUVBQVA5WUFsUUJxZ0FUQUFBRklUVXpOd01qTlRNVkl4YzNJelV6RlNNRE13RlQvcTNWSnE1RDJEVitlUzdlVE5NZXFGUlJBVmxVVlBqNFZGVCtWZ0FEQUNYL1l3SXpBbmdBRHdBZ0FFZ0FBQ1UxTkNjbUl5SUhCaFVVRnhZek1qOEJGUllYRmpNeU56WTFOQ2NtSXlJSEJpY0hOVGNWTmpNeUZ4WVZGQWNHSXlJbkppY1ZNeFVqTlRNMUJnY0dJeUluSmpVME56WXpNaGNBL3lNTURpTVZEUjRSRXljVlhoSWNDUWtyRVFZZ0VCVXdDd0phaU9JZUgxWXRHaWtzUlNjUkF3VkU1a2dQRndvUVZDMFpLeXhHSHg2RG5TME9CVDRsSlR3dkd5cWtuU2dIQWs0YkhVNG5FeTRKN1NOVU1kQVFaenMrVWtSSEdBUUhaMVJVWnhzRkEyYzZQRlJFU0JELy93QU5BQUFDU3dHcUVBWUFXd0FBQUFFQUovK2RBakVCcWdBVkFBQUJJeEV6RlNNMUlUVXpFU00xTXhVakVUTVJJelV6QWpGSVIxcitVVWhJNEVES1FlRUJWdjcvdUdOVkFRRlVWUDcvQVFGVUFBRUFGZ0FBQWtBQnFnQWZBQUFsQmlNaUp5WTlBU00xTXhVakZSUVhGak15TnpZM05TTTFNeFVqRlRNVkl3R3JXRDVEUXo0NzBEd2tIaWs2VkFRRU85QThQSldnTkRJdkwxcFVWQ2dySXgwMkF3SllWRlQvVndBQkFCY0FBQUpRQWFzQUd3QUFKUkVqTlRNVkl4RXpFU00xTXhVakVUTVZJVFV6RVNNMU14VWpFUUVGSktJa2J5U21LQ2o5eHlnb3BpUlVBUU5VVlA3OUFRTlVWUDc5VkZRQkExUlUvdjBBQUFFQUYvOTZBbEFCcXdBZEFBQWxFU00xTXhVakVUTVJJelV6RlNNUk14VWpOU0UxTXhFak5UTVZJeEVCQlNTaUpHOGtwaWdvV3Y0aEtDaW1KRlFCQTFSVS92MEJBMVJVL3YzYWhsUUJBMVJVL3YwQUFBSUFHQUFBQWpzQnF3QUlBQ0FBQUNVVk1qYzJOVFFuSmlVSEl6Y0ZNak1WSXpBSE1oY1dGUlFIQmlzQk5UTVJKd0ZsWkJJR1BSYisxZzg5RXdHWUNnaHZBWVV0SkZZclZhTkpuN1JhR0FnTEpnY0NvNFBYQVZSSUtTQkFZQmtNVkFFQ0FRQURBQk1BQUFKTEFhb0FDd0FkQUNZQUFBRWpOVE1WSXhFekZTTTFNd01WSXhVeUZ4WVZGQWNHS3dFMU14RWpOUmNWTWpjMk5UUW5KZ0hDSzdRdkxyUXNuRytGTFNOV0sxV2pTVW1qWkJJR1BSWUJWVlJVL3Y5VVZBRldWa1lwSVQ5Z0dReFVBUUJXOWxvWUNBc21Cd0lBQWdCdkFBQUI2UUdxQUJFQUdnQUFBUlVqRlRJWEZoVVVCd1lyQVRVekVTTTFGeFV5TnpZMU5DY21BWU53aGkwalZpdFZwRWxKbzJRVEJqMFdBYXBXUmlvZ1AyQVpERlFCQUZiMldoY0lEQ1lHQXdBQUFRQmtBQUFDRkFHckFDMEFBQk1XTnpZek1oY1dGUlFIQmlNaUp5WW5OeFlYTWpjMk55TVZJelV6RlRNbUp5WWpJZ2NHQnljM05qVTJKemV4QlFvelFHVkVPRTlCV2t0RURRb3FPa1k2TEJnSVlrZEhYaFkyR2gwOUtnc0hUZzRCQkJVL0FZb0lCaU5JUFZGaVB6UW9Cd2hESmdNeEdTQXZseU0wR0F3dERBMGFJUUlCRVRBWkFBSUFEdi85QWtvQnNBQWVBQzRBQUFFeUZ4WVZGQWNHSXlJbkppY2pGVE1WSXpVekVTTTFNeFVqRlRNMk56WVhJZ2NHRlJRWEZqTXlOelkxTkNjbUFibFFLUmd2S0RwUUtSY0Jla1hsUmtibFJZUWJSUklWRHhFWEtRa0ZEaEVZS2dnQnNGODVRV0pDTm1BMVBvdEZSUUVnUlVVK2FCb0hXaHdtUFZrZ0J4c21QbGdpQmdBQUFnQUlBQUFDTEFHcUFBZ0FKZ0FBSlRVaklnY0dGUlF6QndZbkpqVTBOell6SVJVakVUTVZJVFV6TlNNR0J3WUhJelV6TmpjMkFZdmFQdzBGVVE1T0xDRnZIQ0FCZVVaRy92bG1kajRsRUFhVVd4WVVDdkJtRndvUU5WUUVOaWM4WFJZR1ZQNytWRlJJTXpzWkZWUXBFQWovL3dCRkFBQUNCd0tDRUNZQVEvenhFQVlBU0FBQS8vOEFSUUFBQWdjQ0h4QW1BR293OFJBR0FFZ0FBQUFDQUc4QUFBSHBBYW9BR1FBaUFBQUJGU01WTXhVakZUSVhGaFVVQndZckFUVXpOU00xTXpVak5STVZNamMyTlRRbkpnRlpSakl5Y3lZOVJ5VnFwRWs5UFVtalZ4TVRMUThCcWtZYlBCOFBHRkJXRmd0THdqd2JSdjd5U2dnSEZDQUZBZ0QvL3dBK0FBRUNHd0tDRUNZQWRnWHhFQVlDMndBQUFBRUFSUUFBQWZVQnF3QXdBQUFCTnhjd0J3WVhNQmNISmljbUl5SUhCZ2N6TlRNVkl6VWpGaGNXTXpJM05qY1hCZ2NHSXlJbkpqVTBOell6TWhjV0FhZ1BQZzhFQWc5T0Zqa1ZGVVF0Q3dkZVIwZGlEenNlSGtZMkFnSXFNbFFSRDI5Rk5reEFWVUEwQ2dHS0lCa3NEZ2NrR2kwU0J6a1BFQ09YTHpzZkVDWUNBVU1wREFKTE8wOWdRRFlqQi8vL0FGLy85QUhyQWJFUUJnQldBQUQvL3dCbkFBQUI4d0l5RUNZQTh3QUFFQVlCL1JJQS8vOEFad0FBQWZNQ0hoQW1BR28zOEJBR0FQTUFBUC8vQUR6L093RmhBaklRQmdCTkFBQUFBdit4LzNrQ1NRR3FBQ1lBTHdBQUFSVWpNQWN5RnhZVkZBY0dLd0UxTXhFakF3WUhCaU1pSnlZbk54WVhGak15TnpZM0V5TTFCUlV5TnpZMU5DY21BYjQ5QVlNeEZWQXlSNElvYnd3RExod3FTQ3dIQ0V3VEVRY01EUWdIQVF4SUFXdGtDZ0V2RmdHcVZSMU1JQ3RaTEJ4VUFRSCt1MVFwR2prSkREQWVCQUlYRVJrQlFWWE1oRGNJQ0M0S0JRQUFBZ0FWQUFBQ1NnR3FBQ0lBS3dBQUFSVWpNQWN5RnhZVkZBY0dLd0UxTXpVakZUTVZJelV6RVNNMU14VWpGVE0xSXpVWEZUSTNOalUwSnlZQm55b0JyQ0VKaHlJdGVTaU9LS2dtSnFnb2ppaDVWQmNSS1E4QnFsSXJYUmtoZWhZR1Q0ZUhUMDhCQ1ZKU0tpcFMxMzRVRHg0eENRTUFBQUVBRmdBQUFrQUNlUUFvQUFBVEl6WXpNaGNXSFFFekZTTTFNelUwSnlZaklnY0dCeFV6RlNNMU14RWpOVE0xQnpVM0ZUTVZJNndCV0Q1RFF6NDcwRHdrSGlrNlZBUUVPOUE4TkRROGxUOCtBWVEwTWk4djFGUlVvaXNqSFRZREF0SlVWQUZqTWlrU1ZDV1FNZ0QvL3dBRkFBQUNVZ0tCRUNZQWRnVHdFQVlBK2dBQS8vOEFJUUFBQWlrQ2dSQW1BRVA3OEJBR0F1QUFBUC8vQUFEL1dBSlVBaklRSndIOEFDai9IeEFHQXVzQUFBQUJBQ2Yva2dJeEFhb0FGd0FBQVNNUk14VWpGU00xSXpVekVTTTFNeFVqRVRNUkl6VXpBakZJU05oYTJFaEk0RURLUWVFQlZ2Ny9WVzV1VlFFQlZGVCsvd0VCVkFBQUFRQXpBQUFDTkFLcEFBMEFBRGNSSXpVaE54Y0hJUkV6RlNFMWlGVUJuU0pDT3Y3b1YvNzdWQUdLVkhjQ3lmNTJWRlFBQUFFQVBnQUJBallDS2dBTkFBQTNFU00xSVRjekJ5RVJNeFVoTlpOVkFiVVRNQmIrelZmKysxVUJBbFIvMC83K1ZGUUFBUUF6QUFBQ0VBSXlBQlVBQUNVakZUTVZJVFV6TlNNMU16VWpOU0VYSXljakZUTUJPVmRYL3Z0VVRFeFZBY2tVVnhIR1YreVlWRlNZVUtKVTM0dWlBQUVBUEFBQkFoc0Jxd0FWQUFBVE16VWpOU0VYSXljakZUTVZJeFV6RlNFMU16VWpQRmRWQWNvVFBRL2lURXhYL3Z0VVZ3RUVVMVRYZzFOUVgxUlVYd0FCQUEzL2Z3Sk1BaklBUEFBQUFUTVZJd2NXSHdFV0Z6TWRBU00xSXlZbkppY21Kd2NWTXhVak5UTTFKd1lQQVFZSEl6VXpOamMyTnpZM0p5TTFNeFVqRnpVak5UTVZJeFUzSXdHbnBUTjZNeGtrRGhRYlJnb1FLUjBqQndjY0phTWxIQ29lTUFjSVVCc2RHeFlaRVJwNk02VWNhaCtYSDJvY0FqSlVxdzQ3WUI4V1ZZR0JIMnRNR1FVRUlvSlVWSUlpRmtkN0VCQlZJVTFDRnhBSHExUlVtNXRVVkp1YkFBQUJBQTMvZndKTUFhb0FPZ0FBQVRNVkl3Y1dId0VXRnpNZEFpTTFJeVluSmljSEZUTVZJelV6TlNjR0J3WUhJelV6TmpjMk56WTNKeU0xTXhVakZ6VWpOVE1WSXhVM0l3R25wVE42T0JrbkN3OGJSZ280SEJvcERDV2pKUTAzSWhJclVCc1pIeFlkRUJkNk02VVdaQitYSDJNVkFhcFVaUThvUXhJUUtDMkJnVzRnSEJZTVlGUlVZQTBkTkJ0VlZSdzVLQkFKQm1WVVZGVlZWRlJWVlFBQUFnQjQvejRCMlFJeUFEa0FUQUFBUHdFV0Z4WXpNamMyTlRRbkppc0NOVHNCTWpjMk5UUW5KaU1pQndZSEx3RTJNVFluTnhjV0ZUWXpNaGNXRlJRSEZoY1VCd1lqSWljbUZ3YzJGeFlIQmlNaUp6Y1dOelluSmc4Qk40MUNLaVVJQ0NvWkRpUU1EQzhQRHk4V0Vnd2dFUkUySkFzRkEwNFBCQlUrRHdFMlAwZ3RJU3N5QVRjd1JGTkZCTUVMUHlNZkV4cG1FaE1GV2lBSkFRWlhHUXhDUGl3RkFTd2FJRE1YQ0ZvY0VoVWVGQW9zRFE0QkdpUVJNQmtnQVFJa05pWXpQVEV6VGxRNk1rUUZJellOS3lVcE9nSWlEQ1lLQ2tNU0JsNEFBQUlBaFA4K0FlRUJxZ0E3QUU0QUFDVVVCd1lqSWljbUp6Y1dGeFl6TWpjMk5UUW5KaXNCTlRNeU56WTFOQ2NtSXlJSEJnY2pOalUwSnpNV0Z4WTNOak15RnhZVkZBY0dCeFlYRmc4Qk5oY1dCd1lqSWljM0ZqYzJKeVlQQVRjQjRWd3BLVkkvQndaREd5VUxFQ3diRUZjSkNTSW5UUThESnc4VFJoY0tCa3NURGtjQ0FnSUtHMEZLTVNVOEJRUTVEUVNUQ2o0akh4TWJaeEVTQlZvZ0NRRUdWeGtNaFZRa0VFSUhDQzhpQlFJWURSTTJCd0ZLSEFVRkZ3a0RIZzBVTUJVaEpnUVFEZzBWSXhzblFCY0NBUkE0RG5zMkRTc21LVGtDSWd3bUNncERFZ1plQUFJQUJmK1FBbElDTWdBREFDTUFBQ1VWSXpVRElSVWpCeFlYRmhjekZTTW1KeVluQnhVekZTRTFNeEVqTlRNVkl4VTNJd0pQVU5vQkJHK2hjRjhJQ0ZxUFR6b3BOaXRiL3ZwU1V2ZE1rUndrbEpRQ0RsU3JINklPRDFXUU1TTU5MbTlVVkFHS1ZGU2Jtd0FDQUFYL2tBSlNBYW9BQXdBb0FBQWxGU00xQXlFVkl6QUhCZ2NXRnhZWE14VWpKaWNHQnhVekZTRTFNeEVqTlRNVkl4VTJOelkzSXdKUFVOb0JCRzlwRlFwZlJSTVBXbzlRa3dVclcvNzZVbEwzVEVSSkFnSWNKSlNVQVlaVVZSQUdHMHdYR0ZXREt3UWRPVlJVQVFKVVZHNGpSd0lDQUFBQ0FGZi9WUUlCQWo4QUtRQTdBQUFCSWdjR0ZSUVhGak15TnpZM0p3WUhJaWNtTlRRM05qTXlGeFlYTnlZMU5EY25CZ2NHTHdFbUp5WURNd1lIQmhjV0Z4WTNGd1luSmljbU5UUUJSV2hHUUV4RVhrdEFFdzFCTURwRUxTRkVKQ28yS3dzSFNSTVRQZ2tEQVFVR0h5a05QQ29tQ2dRQ0JEMDFJQlFqUVQ0ZkVRSTBXVkp3ZkZSTE1nNFJQenNDU3poRmNEZ2VMdzBORVM4V0R6UVFFeFlJQkFRWkJBSDl6QVlxRHhFakNna3NHVGdCQVNrVkd6WUFBZ0JGLzFVQjlRR3JBQ2tBT3dBQUFUY1hNQWNHRnpBWEJ5WW5KaU1pQndZVkZCY1dNekkzTmpjWEJnY0dJeUluSmpVME56WXpNaGNXQXpNR0J3WVhGaGNXTnhjR0p5WW5KalUwQWFnUFBnOEVBZzlPRmprVkZVUXRHanNtS1VZMkFnSXFNbFFSRDI5Rk5reEFWVUEwQ280cUpnb0VBZ1U4TlNBVUkwRStIeEVCaWlBWkxBNEhKQm90RWdjNklpSkNLeHdtQWdGREtRd0NTenRQWUVBMkl3Zitmd1lyRHhBakNna3NHVGdCQVNrVkd6WUFBZ0FpLzVBQ05nSXlBQU1BRXdBQUpSVWpOUk1uSXhFekZTRTFNeEVqQnlNM0lSY0IwMUJzQ294Ni9yTjVqQXBIQ2dJQUNpU1VsQUV6aC81MlZGUUJpb2ZiMndBQ0FDTC9rQUkyQWFvQUF3QVRBQUFsRlNNMU55Y2pFVE1WSVRVekVTTUhJemNoRndIVFVHd0tqSHIrczNtTUNrY0tBZ0FLSkpTVXUzZisvbFJVQVFKM3k4c0FBQUVBSUFBQUFqY0NNZ0FVQUFBbE14VWpOVE0xQXlNMU14VWpGemNqTlRNVkl3Y0JWenJOT2JvanpEeDhlenpNSTcxVVZGU0xBUDlVVkthbVZGVC9BQUFCQUNBQUFBSTNBYW9BRkFBQUpUTVZJelV6TlNjak5UTVZJeGMzSXpVekZTTUhBVmM2elRtNkk4d2pZMkFoekNPOVZGUlVTYmxVVkdCZ1ZGUzVBQUlBSVArUUFqY0NNZ0FEQUJnQUFDVVZJelUzTXhVak5UTTFBeU0xTXhVakZ6Y2pOVE1WSXdjQmtWQVdPczA1dWlQTVBIeDdQTXdqdlNTVWxEQlVWSXNBLzFSVXBxWlVWUDhBQWdBZy81QUNOd0dxQUFNQUdBQUFKUlVqTlRjekZTTTFNelVuSXpVekZTTVhOeU0xTXhVakJ3R1FVQmM2elRtNkk4d2pZMkFoekNPOUpKU1VNRlJVU2JsVVZHQmdWRlM1QUFBQ0FCVC9rQUpFQWpJQUF3QWZBQUFsRlNNMUV3Y1hNeFVqTlRNbkJ6TVZJelV6Tnljak5UTVZJeGMzSXpVekZRSkVVQUdTa2sveE5WdGJOZk5Ra0pGSTh6eGJXanp5SkpTVUFickZ4VlJVZG5aVVZNWEZWRlI0ZUZSVUFBSUFEZitRQWtzQnFnQURBQjhBQUNVVkl6VUhJelV6Tnljak5UTVZJeGMzSXpVekZTTUhGek1WSXpVekp3Y3pBa3BRL1BGVmtwUlQ4akZlWERIMFZwT1JXUFF2VzFzdUpKU1VKRlNBZ2xSVVVsSlVWSUtBVkZSUFR3QUFBUUFoQUFNQ1N3STBBQjhBQUJNMk16SVhGaDBCTXhVak5UTTFOQ2NtSXlJSEJnY1ZNeFVqTlRNUkl6VXp0MWc5UTBRK090QThKQjRwT2xFR0JEclFQRHlXQVQ4ME15NHZqRlJVV2lzakhUUUVBNHBVVkFHR1Z3QUFBUUFnLy80Q1NnR29BQjBBQUJNMk16SVhGaDBCTXhVak5UTTFOQ2NtSXlJSEZUTVZJelV6RVNNMU03VlRRME5EUGp2UU95UWVLRDFaTzlBN081VUJDRFF5THk5YVZGUW9LeU1kT2xsVVZBRC9Wd0FBQVFCWkFBQUIvd0l5QUFzQUFBRWpOU0VWSXhFekZTRTFNd0VDcUFHbHBLUCtXNmtCM2xSVS9uWlVWUC8vQUEwQUFBSk1Bcm9RSmdIOEs2Y1FCZ0srQUFELy93QU5BQUFDVEFJeUVDY0IvQUFyL3g4UUJnTGVBQUQvL3dBZEFBQUNPd0s2RUNZQi9DcW5FQVlBSkFBQS8vOEFLZi95QWpZQ1BSQW5BZndBTHY4cUVBWUFSQUFBLy84QUhRQUFBanNDcGhBbUFHbzJlQkFHQUNRQUFQLy9BQ24vOGdJMkFpa1FKZ0JxT3ZzUUJnQkVBQUQvL3dBVkFBQUNUd0l5RUFZQWlBQUEvLzhBQnYveUFsSUJ0UkFHQUtnQUFQLy9BRW9BQUFJb0Fyb1FKZ0g4TjZjUUJnQW9BQUQvL3dCRkFBQUNCd0l6RUNjQi9BQWsveUFRQmdCSUFBQUFBZ0FqLyswQ0lBSkJBQndBSXdBQUFUWTFOQ2NtSXlJSEJnY25OamMyTXpJWEZoVVVCd1lqSWljbUp6VUZJUllYRmpNeUFiMENReW8xV0Q0SkVrbFNYaU1uZGt0Q1hVWnRYMGMyQkFHQS91WWJNeFlXZUFFYkVRaGZOQ0JJQ3hnMmJSa0pWa3RzckZsQ1pWUkpMRmRMSUE0QUFnQlAvLzRDRVFHcEFBWUFJQUFBTnhZek1qYzJOeVVoSmljbUl5SUhKelkzTmpNeUZ4WVZGQWNHSXlJbkppY3dzQ1phUHlnTEEvNnJBV01RTENFclZENHFQbDhRRDJWR08weEFWV2hETXdPZFN6TU5DMDgxSHhjdFB6UUtBa2M5VVdCQU5razRUUC8vQUNQLzdRSWdBclVRSndCcUFDd0FoeEFHQXlrQUFQLy9BRS8vL2dJUkFoMFFKZ0JxT3U4UUJnTXFBQUQvL3dBTkFBQUNUQUttRUNZQWFqZDRFQVlDdmdBQS8vOEFEUUFBQWt3Q0hoQW1BR28zOEJBR0F0NEFBUC8vQUhqLzlBSFpBcVlRSmdCcU0zZ1FCZ0svQUFELy93Q0UvLzBCNFFJZUVDWUFhajN3RUFZQzN3QUFBQUVBYS8vNEFkc0NNd0FpQUFBQkZoY1dGUlFIQmlNaUp5WW5OeFlYTWpNeU56WTFOQ2NtS3dFMU55TVZJelVoRlFFdmFpc1hWRHBKTnpnRUNDb3BHd1lIU1NZVVFDY3pWb2xoVkFGTUFYOGFVQ2t5WWpnb0h3TUVTQmdDTWhzaFFpSVZQVzhWYVVVQUFRQlQvMmtCd3dHa0FDSUFBQ1VXRnhZVkZBY0dJeUluSmljM0ZoY1dNekkzTmpVMEp5WXJBVFUzSXhVak5TRVZBUmR2S2hOVE9rbzRPQU1IS1N3WEJ3ZEtKaE5CSmpOV2lXRlVBVXp4SEZVbkxtSTRLQ0FDQkVrWUFnRXpHaUZESWhRK2JoVnBSZi8vQUNFQUFBSXBBcTRRSmdCeE1Id1FCZ0xBQUFELy93QWhBQUFDS1FJbUVDWUFjVEQwRUFZQzRBQUEvLzhBSVFBQUFpa0NwaEFtQUdvdmVCQUdBc0FBQVAvL0FDRUFBQUlwQWg0UUpnQnFML0FRQmdMZ0FBRC8vd0ErLy9jQ0dnS3ZFQ2NBYWdBMkFJRVFCZ0F5QUFELy93QkcvL2dDRVFJbUVDWUFhamI0RUFZQVVnQUEvLzhBUHYvM0Fob0NPeEFHQW1zQUFQLy9BSFgvL3dIakFub1FCZ0tLQUFELy93QSsvL2NDR2dLdkVDY0FhZ0EyQUlFUUJnSnJBQUQvL3dCMS8vOEI0d0x1RUNjQWFnQTJBTUFRQmdLS0FBRC8vd0JmLy80Q0NRTEhFQ2NBYWdBM0FKa1FCZ0xWQUFELy93QmtBQUFDRkFJNkVDWUFhajBNRUFZQzlRQUEvLzhBQ3YvL0FsUUNyUkFtQUhFNmV4QUdBc3NBQVAvL0FBRC9XQUpVQWlZUUpnQnhOZlFRQmdMckFBRC8vd0FLLy84Q1ZBS2xFQ1lBYWpsM0VBWUN5d0FBLy84QUFQOVlBbFFDSGhBbUFHbzA4QkFHQXVzQUFQLy9BQXIvL3dKVUF3Z1FKZ0lCd1hjUUJnTExBQUQvL3dBQS8xZ0NWQUtCRUNZQ0FiendFQVlDNndBQS8vOEFGZ0FBQWtBQ3BSQW1BR28xZHhBR0FzOEFBUC8vQUJZQUFBSkFBaDRRSmdCcU5mQVFCZ0x2QUFELy93QVZBQUFDUlFLbUVDWUFhamQ0RUFZQzB3QUEvLzhBRXdBQUFrc0NIaEFtQUdvNThCQUdBdk1BQVAvL0FCMy9JZ0k3QWpJUUp3SCtBRGo5WkJBR0FDUUFBUC8vQUNuL0ZBSTJBYlVRSndIK0FEdjlWaEFHQUVRQUFQLy9BRkVBQUFJZ0Fyc1FKd0g5QUJjQWlSQUdBQ1VBQVAvL0FDUC8rQUk4QXdJUUp3SDlBQTRBMEJBR0FFVUFBUC8vQUZIL2R3SWdBaklRSndIOUFCZjlwaEFHQUNVQUFQLy9BQ1AvYndJOEFua1FKd0g5QUE3OW5oQUdBRVVBQVAvL0FGSC9oQUlnQWpJUUp3QnhBRVQ5cGhBR0FDVUFBUC8vQUNQL2ZBSThBbmtRSndCeEFEdjluaEFHQUVVQUFQLy9BRmYvSWdJQkF4WVFKd0IyQUFRQWhSQW1BSHJMNUJBR0FDWUFBUC8vQUVYL0pBSDFBb0lRSmdCMjl2RVFKZ0I2dk9ZUUJnQkdBQUQvL3dBMEFBQUNKUUs3RUNjQi9RQUxBSWtRQmdBbkFBRC8vd0FwLy9nQ1BnTUNFQ2NCL1FBU0FOQVFCZ0JIQUFELy93QTAvM2NDSlFJeUVDY0IvUUFML2FZUUJnQW5BQUQvL3dBcC8yOENQZ0o1RUNjQi9RQVMvWjRRQmdCSEFBRC8vd0EwLzRRQ0pRSXlFQ2NBY1FBMy9hWVFCZ0FuQUFELy93QXAvM3dDUGdKNUVDY0FjUUEvL1o0UUJnQkhBQUQvL3dBMC95UUNKUUl5RUNZQWVzdm1FQVlBSndBQS8vOEFLZjhjQWo0Q2VSQW1BSHJTM2hBR0FFY0FBUC8vQURUL1VRSWxBaklRSndIcUFBRDl6eEFHQUNjQUFQLy9BQ24vU1FJK0Fua1FKd0hxQUFmOXh4QUdBRWNBQVAvL0FFb0FBQUlvQTRVUUp3QkRBQTRBOUJBbUFIRkVmQkFHQUNnQUFQLy9BRVVBQUFJSEF2NFFKZ0JEL0cwUUpnQnhNZlVRQmdCSUFBRC8vd0JLQUFBQ0tBT0ZFQ2NBZGdBUkFQUVFKZ0J4Ukh3UUJnQW9BQUQvL3dCRkFBQUNCd0wrRUNZQWR2OXRFQ1lBY1RIMUVBWUFTQUFBLy84QVN2OVJBaWdDTWhBbkFlb0FEZjNQRUFZQUtBQUEvLzhBUmY5UkFnY0JxeEFuQWVyLyt2M1BFQVlBU0FBQS8vOEFTditKQWlnQ01oQW5BZ0QvdWZ6R0VBWUFLQUFBLy84QVJmK0pBZ2NCcXhBbkFnRC9wdnpHRUFZQVNBQUFBQU1BU3Y4K0FpZ0M1QUFYQUNVQU9BQUFBUlVqTlNNVk16Y3pCeUUxTXhFak5TRVhJeWNqRlRNMUV3WUhCaU1pSnlZbk14WXpNamNEQnpZWEZnY0dJeUluTnhZM05pY21Ed0UzQWNCSGtQY01QQXorTGtaR0FkQUpPZ24za0RnSU14VVhQUjBMQXhnTlF6c1VSUXMvSXg4VEdtWVNFd1ZhSUFrQkJsY1pEQUdIc0RtOFRLQlVBWXBVbDBONkl3RmRQeGdKTkJRWUxDejlOallOS3lVcE9nSWlEQ1lLQ2tNU0JsNEFCQUJGL3o0Q0J3SmFBQVlBSHdBdEFFQUFBQUVqTmpjMk16SVhOU1luSmlNaUJ3WVZGQmNXTXpJM05qY25CaU1pSnlZbkV3WUhCaU1pSnlZbk14WXpNamNEQnpZWEZnY0dJeUluTnhZM05pY21Ed0UzQWFiMUNTUWhKMXFIQkU4K1VHVkVPRTVDVmwxTEN3a3FQbFJVS2djRDhBZzBGQmc4SFF3Q0dBMUNQQlJDQ3o4akh4TWFaaElUQlZvZ0NRRUdWeGtNQVF3Y0dSYWFJV0k4TDBnOVVWOUFOakVIQ0Q4dFV3MExBWjAvR0FreUZSa3JLLzNBTmcwckpTazZBaUlNSmdvS1F4SUdYdi8vQUMwQUFBSTVBcnNRSndIOUFCSUFpUkFHQUNrQUFQLy9BRlVBQUFIaUF2OFFKd0g5Ly9zQXpSQUdBRWtBQVAvL0FGYi8vZ0lJQXJrUUp3QnhBRG9BaHhBR0FDb0FBUC8vQUNmL093SS9BaTRRSmdCeFB2d1FCZ0JLQUFELy93QWZBQUFDT1FLN0VDY0IvUUFMQUlrUUJnQXJBQUQvL3dBV0FBQUNRQU1DRUNjQi9RQUtBTkFRQmdCTEFBRC8vd0FmLzNjQ09RSXlFQ2NCL1FBTC9hWVFCZ0FyQUFELy93QVcvM2NDUUFKNUVDY0IvUUFLL2FZUUJnQkxBQUQvL3dBZkFBQUNPUUttRUNZQWFqWjRFQVlBS3dBQS8vOEFGZ0FBQWtBQzdSQW5BR29BTlFDL0VBWUFTd0FBLy84QUgvOGtBamtDTWhBbUFIckw1aEFHQUNzQUFQLy9BQmIvSkFKQUFua1FKZ0I2eXVZUUJnQkxBQUQvL3dBZi8zZ0NPUUl5RUNjQi9BQXEvTVVRQmdBckFBRC8vd0FXLzNnQ1FBSjVFQ2NCL0FBcC9NVVFCZ0JMQUFELy93QlovNGtCL3dJeUVDY0NBUCtzL01ZUUJnQXNBQUQvL3dCbi80a0I4d0l5RUNjQ0FQK3QvTVlRSmdEekFBQVFCZ0g5RWdELy93QlpBQUFCL3dOOUVDY0FkZ0FFQU93UUpnQnFObmdRQmdBc0FBRC8vd0JuQUFBQjh3TDFFQ1lBZGdWa0VDWUFhamZ3RUFZQTh3QUEvLzhBQlFBQUFsSURDUkFtQUhZRWVCQUdBQzRBQVAvL0FEY0FBQUpEQTA4UUp3QjJBQlVBdmhBR0FFNEFBUC8vQUFYL2R3SlNBaklRSndIOUFBcjlwaEFHQUM0QUFQLy9BRGYvZHdKREFuZ1FKd0g5QUJ6OXBoQUdBRTRBQVAvL0FBWC9oQUpTQWpJUUp3QnhBRGY5cGhBR0FDNEFBUC8vQURmL2hBSkRBbmdRSndCeEFFajlwaEFHQUU0QUFQLy9BRWYvZHdJa0FqSVFKd0g5QUJUOXBoQUdBQzhBQVAvL0FGei9kd0g4QW5nUUp3SDlBQXY5cGhBR0FFOEFBUC8vQUVmL2R3SWtBcTRRSmdCeFFYd1FKd0g5QUJUOXBoQUdBQzhBQVAvL0FGei9kd0g4QXZRUUp3QnhBRGNBd2hBbkFmMEFDLzJtRUFZQVR3QUEvLzhBUi8rRUFpUUNNaEFuQUhFQVFmMm1FQVlBTHdBQS8vOEFYUCtFQWZ3Q2VCQW5BSEVBTi8ybUVBWUFUd0FBLy84QVIvOVJBaVFDTWhBbkFlb0FDZjNQRUFZQUx3QUEvLzhBWFA5UkFmd0NlQkFuQWVvQUFQM1BFQVlBVHdBQS8vOEFDQUFBQWxBRENSQW1BSFlFZUJBR0FEQUFBUC8vQUFBQUFBSllBbzhRSmdCMkJQNFFCZ0JRQUFELy93QUlBQUFDVUFLN0VDY0IvUUFMQUlrUUJnQXdBQUQvL3dBQUFBQUNXQUpCRUNZQi9Rc1BFQVlBVUFBQS8vOEFDUDkzQWxBQ01oQW5BZjBBQy8ybUVBWUFNQUFBLy84QUFQOTNBbGdCdUJBbkFmMEFDLzJtRUFZQVVBQUEvLzhBQVAvNUFsZ0N1eEFuQWYwQUN3Q0pFQVlBTVFBQS8vOEFGZ0FBQWtBQ1FSQW1BZjBLRHhBR0FGRUFBUC8vQUFEL2NBSllBaklRSndIOUFBdjlueEFHQURFQUFQLy9BQmIvZHdKQUFiZ1FKd0g5QUFyOXBoQUdBRkVBQVAvL0FBRC9mUUpZQWpJUUp3QnhBRGY5bnhBR0FERUFBUC8vQUJiL2hBSkFBYmdRSndCeEFEYjlwaEFHQUZFQUFQLy9BQUQvU2dKWUFqSVFKd0hxQUFEOXlCQUdBREVBQVAvL0FCYi9VUUpBQWJnUUp3SHEvLy85enhBR0FGRUFBUC8vQUQ3Lzl3SWFBNGtRSndCMkFBUUE5eEFtQWdDc29CQUdBRElBQVAvL0FFYi8rQUlSQXdBUUpnQjJCRzRRSndJQS82di9GeEFHQUZJQUFQLy9BRDcvOXdJYUF5WVFKd0JxQURZQTl4QW1BZ0Nzb0JBR0FESUFBUC8vQUViLytBSVJBcDBRSmdCcU5tNFFKd0lBLzZ2L0Z4QUdBRklBQVAvL0FENy85d0lhQTQ0UUp3QkRBQUVBL1JBbkFIRUFOd0NGRUFZQU1nQUEvLzhBUnYvNEFoRURCUkFtQUVNQmRCQW1BSEUzL0JBR0FGSUFBUC8vQUQ3Lzl3SWFBNDRRSndCMkFBUUEvUkFuQUhFQU53Q0ZFQVlBTWdBQS8vOEFSdi80QWhFREJSQW1BSFlFZEJBbUFIRTMvQkFHQUZJQUFQLy9BRFVBQUFJdEF3a1FKZ0IyQ1hnUUJnQXpBQUQvL3dBaC8wQUNPUUtKRUNZQWRnWDRFQVlBVXdBQS8vOEFOUUFBQWkwQ3V4QW5BZjBBRUFDSkVBWUFNd0FBLy84QUlmOUFBamtDT3hBbUFmME1DUkFHQUZNQUFQLy9BQWtBQUFJdEFyc1FKd0g5Ly9vQWlSQUdBRFVBQVAvL0FCWUFBQUhoQWtFUUpnSDkydzhRQmdCVkFBRC8vd0FKLzNjQ0xRSXlFQ2NCL2YvNi9hWVFCZ0ExQUFELy93QVcvM2NCNFFHNEVDY0IvZi9iL2FZUUJnQlZBQUQvL3dBSi8zY0NMUUt1RUNZQWNTWjhFQ2NCL2YvNi9hWVFCZ0ExQUFELy93QVcvM2NCNFFJMEVDWUFjUWNDRUNjQi9mL2IvYVlRQmdCVkFBRC8vd0FKLzRRQ0xRSXlFQ2NBY1FBbS9hWVFCZ0ExQUFELy93QVcvNFFCNFFHNEVDY0FjUUFIL2FZUUJnQlZBQUQvL3dCZy8rNEI3Z0xLRUNjQi9RQUdBSmdRQmdBMkFBRC8vd0JmLy9RQjZ3STZFQ1lCL1FRSUVBWUFWZ0FBLy84QVlQOWxBZTRDUVJBbkFmMEFCdjJVRUFZQU5nQUEvLzhBWC85ckFlc0JzUkFuQWYwQUJQMmFFQVlBVmdBQS8vOEFZUC91QWU0RG9SQW5BZjBBQmdGdkVDY0FkZ0FBQUljUUJnQTJBQUQvL3dCZi8vUUI2d01SRUNjQi9RQUVBTjhRSmdCMi92Y1FCZ0JXQUFELy93QmcvKzRCN2dONUVDY0IvUUFHQVVjUUp3SHIvL3NBMlJBR0FEWUFBUC8vQUYvLzlBSHJBdWtRSndIOUFBUUF0eEFtQWV2NVNSQUdBRllBQVAvL0FHRC9aUUh1QXNvUUp3SDlBQVlBbUJBbkFmMEFCdjJVRUFZQU5nQUEvLzhBWC85ckFlc0NPaEFtQWYwRUNCQW5BZjBBQlAyYUVBWUFWZ0FBLy84QUlnQUFBallDdXhBbkFmMEFDd0NKRUFZQU53QUEvLzhBRy8vdEFoTUN1eEFuQWYzLzlnQ0pFQVlBVndBQS8vOEFJdjkzQWpZQ01oQW5BZjBBQy8ybUVBWUFOd0FBLy84QUcvOWtBaE1DTWhBbkFmMy85djJURUFZQVZ3QUEvLzhBSXYrRUFqWUNNaEFuQUhFQU4vMm1FQVlBTndBQS8vOEFHLzl4QWhNQ01oQW5BSEVBSXYyVEVBWUFWd0FBLy84QUl2OVJBallDTWhBbkFlb0FBUDNQRUFZQU53QUEvLzhBRy84K0FoTUNNaEFuQWVyLzYvMjhFQVlBVndBQS8vOEFIUCtGQWp3Q01oQW5BR29BTnYyakVBWUFPQUFBLy84QUZ2OStBa0FCcWhBbkFHb0FOZjJjRUFZQVdBQUEvLzhBSFArQ0Fqd0NNaEFuQWdEL3JQeS9FQVlBT0FBQS8vOEFGdjk3QWtBQnFoQW5BZ0QvcS95NEVBWUFXQUFBLy84QUhQOUtBandDTWhBbkFlb0FBUDNJRUFZQU9BQUEvLzhBRnY5REFrQUJxaEFuQWVyLy8vM0JFQVlBV0FBQS8vOEFIUC81QWp3RGdCQW5BSFlBQkFEdUVDWUNBS3lYRUFZQU9BQUEvLzhBRnYveUFrQUMrQkFtQUhZRFpoQW5BZ0QvcS84UEVBWUFXQUFBLy84QUhQLzVBandESWhBbkFHb0FOZ0QwRUNZQWNUZDhFQVlBT0FBQS8vOEFGdi95QWtBQ21oQW1BR28xYkJBbUFIRTI5QkFHQUZnQUFQLy9BQTMvOEFKTEFxa1FKZ0lBckpjUUJnQTVBQUQvL3dBSy8vTUNUZ0loRUNjQ0FQK3MvdzhRQmdCWkFBRC8vd0FOLzJjQ1N3SXlFQ2NCL1FBTC9aWVFCZ0E1QUFELy93QUsvMm9DVGdHcUVDY0IvUUFML1prUUJnQlpBQUQvL3dBQS8vRUNXQU1KRUNZQVF3RjRFQVlBT2dBQS8vOEFBUC9vQWxnQ2dSQW1BRU1COEJBR0FGb0FBUC8vQUFELzhRSllBd2tRSmdCMkJIZ1FCZ0E2QUFELy93QUEvK2dDV0FLQkVDWUFkZ1R3RUFZQVdnQUEvLzhBQVAveEFsZ0NwaEFtQUdvMmVCQUdBRG9BQVAvL0FBRC82QUpZQWg0UUpnQnFOdkFRQmdCYUFBRC8vd0FBLy9FQ1dBSzdFQ2NCL1FBTEFJa1FCZ0E2QUFELy93QUEvK2dDV0FJekVDWUIvUXNCRUFZQVdnQUEvLzhBQVA5b0FsZ0NNaEFuQWYwQUMvMlhFQVlBT2dBQS8vOEFBUDlmQWxnQnFoQW5BZjBBQy8yT0VBWUFXZ0FBLy84QUZBQUFBa1FDdXhBbkFmMEFDd0NKRUFZQU93QUEvLzhBRFFBQUFrc0NNeEFtQWYwTEFSQUdBRnNBQVAvL0FCUUFBQUpFQXFZUUpnQnFObmdRQmdBN0FBRC8vd0FOQUFBQ1N3SWVFQ1lBYWpid0VBWUFXd0FBLy84QUlBQUFBamNDdXhBbkFmMEFDZ0NKRUFZQVBBQUEvLzhBQVA5WUFsUUNNeEFtQWYwSkFSQUdBRndBQVAvL0FGc0FBQUg0QXVFUUp3SHEvLzRBMkJBR0FEMEFBUC8vQUZNQUFBSUZBbGtRSmdIcUFGQVFCZ0JkQUFELy93QmIvM2NCK0FJeUVDY0IvUUFJL2FZUUJnQTlBQUQvL3dCVC8zY0NCUUdxRUNjQi9RQUwvYVlRQmdCZEFBRC8vd0JiLzRRQitBSXlFQ2NBY1FBMS9hWVFCZ0E5QUFELy93QlQvNFFDQlFHcUVDY0FjUUEzL2FZUUJnQmRBQUQvL3dBVy80UUNRQUo1RUNjQWNRQTIvYVlRQmdCTEFBRC8vd0FiLyswQ0V3S21FQ1lBYWlGNEVBWUFWd0FBLy84QUFQL29BbGdDaUJBbUFmNDRGQkFHQUZvQUFQLy9BQUQvV0FKVUFvZ1FKZ0grTmhRUUJnQmNBQUFBQXdBcC8vSUNOZ0tzQUF3QUx3QTlBQUFsSmlNaUJ3WVZGQmNXTXpJM0Z6TVZJelVHQndZaklpY21OVFEzTmpNeUZ6VTBKeVlqSWdjbk1EYzJNeklYRmhVbk56STNOaWNtSXpVV0Z4WUhCZ0YrV2tWQ0ZBVW9IeVJSUGxwZXVETTFFaFZaUERGTE1EczVaajhpTUQ1VUhEdEhMR0JMUU5nQklnY0lGd29QTkJBUEhCVzZHakFMQ2hvV0VqODRWQ3N0Q1FNMEt6NVRMaDhhQ2kwVUN5VkJGeGN3S2pYeklSOGVFQWdkQVMwcUlSa0EvLzhBYndBQUFmd0MveEFuQWYwQUZBRE5FQVlCUVFBQS8vOEFIZjkzQWpzQ01oQW5BZjBBQy8ybUVBWUFKQUFBLy84QUtmOXBBallCdFJBbkFmMEFEdjJZRUFZQVJBQUEvLzhBSFFBQUFqc0N2eEFuQWhZQnFmK3JFQVlBSkFBQS8vOEFLZi95QWpZQ1FoQW5BaFlCclA4dUVBWUFSQUFBLy84QUhRQUFBanNEdUJBbkFIWUFCQUVuRUNjQjZnQUFBTmdRQmdBa0FBRC8vd0FwLy9JQ05nTTdFQ2NBZGdBSUFLb1FKZ0hxQTFzUUJnQkVBQUQvL3dBZEFBQUNPd080RUNjQVF3QUJBU2NRSndIcUFBQUEyQkFHQUNRQUFQLy9BQ24vOGdJMkF6c1FKd0JEQUFVQXFoQW1BZW9EV3hBR0FFUUFBUC8vQUIwQUFBSTdBMjRRSndJV0Fha0FXaEFuQWVvQUFBRFlFQVlBSkFBQS8vOEFLZi95QWpZQzhSQW5BaFlCclAvZEVDWUI2Z05iRUFZQVJBQUEvLzhBSFFBQUFqc0RXQkFtQWdDc1JSQW5BZW9BQUFEWUVBWUFKQUFBLy84QUtmL3lBallDMnhBbUFnQ3Z5UkFtQWVvRFd4QUdBRVFBQVAvL0FCMy9kd0k3QXVFUUp3SHFBQUFBMkJBbkFmMEFDLzJtRUFZQUpBQUEvLzhBS2Y5cEFqWUNaQkFtQWVvRFd4QW5BZjBBRHYyWUVBWUFSQUFBLy84QUhRQUFBanNEa1JBbkFIWUFCQUVBRUNZQi9DcW5FQVlBSkFBQS8vOEFLZi95QWpZREZCQW5BSFlBQ0FDREVDY0IvQUF1L3lvUUJnQkVBQUQvL3dBZEFBQUNPd09SRUNjQVF3QUJBUUFRSmdIOEtxY1FCZ0FrQUFELy93QXAvL0lDTmdNVUVDY0FRd0FGQUlNUUp3SDhBQzcvS2hBR0FFUUFBUC8vQUIwQUFBSTdBMGNRSndJV0Fha0FNeEFtQWZ3cXB4QUdBQ1FBQVAvL0FDbi84Z0kyQXNvUUp3SVdBYXovdGhBbkFmd0FMdjhxRUFZQVJBQUEvLzhBSFFBQUFqc0RNUkFtQWdDc0hoQW1BZndxcHhBR0FDUUFBUC8vQUNuLzhnSTJBclFRSmdJQXI2SVFKd0g4QUM3L0toQUdBRVFBQVAvL0FCMy9kd0k3QXJvUUpnSDhLcWNRSndIOUFBdjlwaEFHQUNRQUFQLy9BQ24vYVFJMkFqMFFKd0g4QUM3L0toQW5BZjBBRHYyWUVBWUFSQUFBLy84QVN2OTNBaWdDTWhBbkFmMEFHUDJtRUFZQUtBQUEvLzhBUmY5M0FnY0JxeEFuQWYwQUJmMm1FQVlBU0FBQS8vOEFTZ0FBQWlnQ3Z4QW5BaFlCdHYrckVBWUFLQUFBLy84QVJRQUFBZ2NDT0JBbkFoWUJvLzhrRUFZQVNBQUEvLzhBU2dBQUFpZ0NxUkFtQWdDNWx4QUdBQ2dBQVAvL0FFVUFBQUlIQWlJUUp3SUEvNmIvRUJBR0FFZ0FBUC8vQUVvQUFBSW9BN2dRSndCMkFCRUJKeEFuQWVvQURRRFlFQVlBS0FBQS8vOEFSUUFBQWdjRE1SQW5BSGIvL3dDZ0VDWUI2dnBSRUFZQVNBQUEvLzhBU2dBQUFpZ0R1QkFuQUVNQURnRW5FQ2NCNmdBTkFOZ1FCZ0FvQUFELy93QkZBQUFDQndNeEVDY0FRLy84QUtBUUpnSHErbEVRQmdCSUFBRC8vd0JLQUFBQ0tBTnVFQ2NDRmdHMkFGb1FKd0hxQUEwQTJCQUdBQ2dBQVAvL0FFVUFBQUlIQXVjUUp3SVdBYVAvMHhBbUFlcjZVUkFHQUVnQUFQLy9BRW9BQUFJb0ExZ1FKZ0lBdVVVUUp3SHFBQTBBMkJBR0FDZ0FBUC8vQUVVQUFBSUhBdEVRSmdJQXByOFFKZ0hxK2xFUUJnQklBQUQvL3dCSy8zY0NLQUxoRUNjQjZnQU5BTmdRSndIOUFCajlwaEFHQUNnQUFQLy9BRVgvZHdJSEFsb1FKZ0hxK2xFUUp3SDlBQVg5cGhBR0FFZ0FBUC8vQUZrQUFBSC9BcjhRSndJV0Fhbi9xeEFHQUN3QUFQLy9BR2NBQUFIekFqY1FKd0lXQWFyL0l4QUdBUE1BQVAvL0FGbi9kd0gvQWpJUUp3SDlBQXY5cGhBR0FDd0FBUC8vQUdmL2R3SHpBaklRSndIOUFBejlwaEFtQVBNQUFCQUdBZjBTQVAvL0FENy9iZ0lhQWpzUUp3SDlBQXY5blJBR0FESUFBUC8vQUViL2J3SVJBYklRSndIOUFBcjluaEFHQUZJQUFQLy9BRDcvOXdJYUFzZ1FKd0lXQWFuL3RCQUdBRElBQVAvL0FFYi8rQUlSQWo4UUp3SVdBYWovS3hBR0FGSUFBUC8vQUQ3Lzl3SWFBOEVRSndCMkFBUUJNQkFuQWVvQUFBRGhFQVlBTWdBQS8vOEFSdi80QWhFRE9CQW5BSFlBQkFDbkVDWUI2Z0JZRUFZQVVnQUEvLzhBUHYvM0Fob0R3UkFuQUVNQUFRRXdFQ2NCNmdBQUFPRVFCZ0F5QUFELy93QkcvL2dDRVFNNEVDY0FRd0FCQUtjUUpnSHFBRmdRQmdCU0FBRC8vd0ErLy9jQ0dnTjNFQ2NDRmdHcEFHTVFKd0hxQUFBQTRSQUdBRElBQVAvL0FFYi8rQUlSQXU0UUp3SVdBYWovMmhBbUFlb0FXQkFHQUZJQUFQLy9BRDcvOXdJYUEyRVFKZ0lBckU0UUp3SHFBQUFBNFJBR0FESUFBUC8vQUViLytBSVJBdGdRSmdJQXE4WVFKZ0hxQUZnUUJnQlNBQUQvL3dBKy8yNENHZ0xxRUNjQjZnQUFBT0VRSndIOUFBdjluUkFHQURJQUFQLy9BRWIvYndJUkFtRVFKZ0hxQUZnUUp3SDlBQXI5bmhBR0FGSUFBUC8vQUQ3Lzl3TDFBeElRSndCMkFISUFnUkFuQUE4Q0FBSExFQVlBTWdBQS8vOEFSdi80QXV3Q2lSQW1BSFp4K0JBbkFBOEI5d0ZDRUFZQVVnQUEvLzhBUHYvM0F2VURFaEFuQUVNQWJ3Q0JFQ2NBRHdJQUFjc1FCZ0F5QUFELy93QkcvL2dDN0FLSkVDWUFRMjc0RUNjQUR3SDNBVUlRQmdCU0FBRC8vd0ErLy9jQzlRTElFQ2NDRmdJVy83UVFKd0FQQWdBQnl4QUdBRElBQVAvL0FFYi8rQUxzQWo4UUp3SVdBaGIvS3hBbkFBOEI5d0ZDRUFZQVVnQUEvLzhBUHYvM0F2VUNzaEFtQWdBWW9CQW5BQThDQUFITEVBWUFNZ0FBLy84QVJ2LzRBdXdDS1JBbkFnQUFHUDhYRUNjQUR3SDNBVUlRQmdCU0FBRC8vd0ErLzI0QzlRSTdFQ2NCL1FCNC9aMFFKd0FQQWdBQnl4QUdBRElBQVAvL0FFYi9id0xzQWJJUUp3SDlBSGo5bmhBbkFBOEI5d0ZDRUFZQVVnQUEvLzhBSFA5d0Fqd0NNaEFuQWYwQUMvMmZFQVlBT0FBQS8vOEFGdjlwQWtBQnFoQW5BZjBBQ3YyWUVBWUFXQUFBLy84QUhQLzVBandDdnhBbkFoWUJxZityRUFZQU9BQUEvLzhBRnYveUFrQUNOeEFuQWhZQnFQOGpFQVlBV0FBQS8vOEFIUC81QXhjRENSQW1BSFp5ZUJBbkFBOENJZ0hDRUFZQU9BQUEvLzhBRnYveUF4c0NnUkFtQUhaeDhCQW5BQThDSmdFNkVBWUFXQUFBLy84QUhQLzVBeGNEQ1JBbUFFTnZlQkFuQUE4Q0lnSENFQVlBT0FBQS8vOEFGdi95QXhzQ2dSQW1BRU51OEJBbkFBOENKZ0U2RUFZQVdBQUEvLzhBSFAvNUF4Y0N2eEFuQWhZQ0Z2K3JFQ2NBRHdJaUFjSVFCZ0E0QUFELy93QVcvL0lER3dJM0VDY0NGZ0lWL3lNUUp3QVBBaVlCT2hBR0FGZ0FBUC8vQUJ6LytRTVhBcWtRSmdJQUdKY1FKd0FQQWlJQndoQUdBRGdBQVAvL0FCYi84Z01iQWlFUUp3SUFBQmYvRHhBbkFBOENKZ0U2RUFZQVdBQUEvLzhBSFA5d0F4Y0NNaEFuQWYwQWVQMmZFQ2NBRHdJaUFjSVFCZ0E0QUFELy93QVcvMmtER3dHcUVDY0IvUUIzL1pnUUp3QVBBaVlCT2hBR0FGZ0FBUC8vQUNBQUFBSTNBd2tRSmdCREFYZ1FCZ0E4QUFELy93QUEvMWdDVkFLQkVDWUFRd0R3RUFZQVhBQUEvLzhBSVA5M0FqY0NNaEFuQWYwQUN2Mm1FQVlBUEFBQS8vOEFBUDdQQWxRQnFoQW5BZjBBQ2Z6K0VBWUFYQUFBLy84QUlBQUFBamNDdnhBbkFoWUJxUCtyRUFZQVBBQUEvLzhBQVA5WUFsUUNOeEFuQWhZQnAvOGpFQVlBWEFBQS8vOEFJQUFBQWpjQ3FSQW1BZ0NybHhBR0FEd0FBUC8vQUFEL1dBSlVBaUVRSndJQS82ci9EeEFHQUZ3QUFQLy9BQXIvOWdKT0FvMFFKZ0hnN2hnUUJnS0RBQUQvL3dBSy8vWUNUZ0tORUNjQjRRR3gvNVVRQmdLREFBRC8vd0FLLy9ZQ1RnS05FQ1lGR3pUSEVDY0U3Lzh6LytzUUJnS0RBQUQvL3dBSy8vWUNUZ0tORUNZRkd5VEhFQ1lGSjllVkVBWUNnd0FBLy84QUN2LzJBazRDalJBbUJTYlVUeEFuQk8vL00vL3JFQVlDZ3dBQS8vOEFDdi8yQWs0Q2pSQW1CU2JFVHhBbUJTZlhsUkFHQW9NQUFQLy9BQXIvOWdKT0F3TVFKZ0lBclBFUUpnSGc3aGdRQmdLREFBRC8vd0FLLy9ZQ1RnTURFQ1lDQUt6eEVDY0I0UUd4LzVVUUJnS0RBQUQvLy8vR0FBQUNPd0l5RUNjQjRQN0kvNzRRQmdBa0FBRC8vLy9tQUFBQ093SXlFQ2NCNFFDci96c1FCZ0FrQUFELy8vNWpBQUFDT3dJeUVDY0ZHLzQyLzIwUUp3VHYvVFAva1JBR0FDUUFBUC8vL21NQUFBSTdBaklRSndVYi9pWC9iUkFuQlNmOTEvODdFQVlBSkFBQS8vLytZd0FBQWpzQ01oQW5CU2I5MWYvMUVDY0U3LzB6LzVFUUJnQWtBQUQvLy81akFBQUNPd0l5RUNjRkp2M0UvL1VRSndVbi9kZi9PeEFHQUNRQUFQLy8vM1lBQUFJN0Fxa1FKd0lBL2x6L2x4QW5BZUQreVArK0VBWUFKQUFBLy8vL2RnQUFBanNDcVJBbkFnRCtYUCtYRUNjQjRRQ3IvenNRQmdBa0FBRC8vd0J5Ly8wQnp3S0VFQ1lCNE9NUEVBWUNod0FBLy84QWN2LzlBYzhDaEJBbkFlRUJwZitNRUFZQ2h3QUEvLzhBVi8vOUFjOENoQkFtQlJzcHZoQW5CTy8vSi8vaUVBWUNod0FBLy84QVYvLzlBYzhDaEJBbUJSc1l2aEFtQlNmTWpCQUdBb2NBQVAvL0FGZi8vUUhQQW9RUUpnVW15VVlRSndUdi95Zi80aEFHQW9jQUFQLy9BRmYvL1FIUEFvUVFKZ1VtdUVZUUpnVW56SXdRQmdLSEFBRC8vLytqQUFBQ0tBSXlFQ2NCNFA2bC83NFFCZ0FvQUFELy8vK2pBQUFDS0FJeUVDY0I0UUJvL3pzUUJnQW9BQUQvLy82UUFBQUNLQUl5RUNjRkcvNWovMjBRSndUdi9XRC9rUkFHQUNnQUFQLy8vcEFBQUFJb0FqSVFKd1ViL2xML2JSQW5CU2YrQlA4N0VBWUFLQUFBLy8vK2tBQUFBaWdDTWhBbkJTYitBdi8xRUNjRTcvMWcvNUVRQmdBb0FBRC8vLzZRQUFBQ0tBSXlFQ2NGSnYzeC8vVVFKd1VuL2dUL094QUdBQ2dBQVAvL0FCYi9RQUpBQXBJUUpnSGc3UjBRQmdLSkFBRC8vd0FXLzBBQ1FBS1NFQ2NCNFFHdy81b1FCZ0tKQUFELy93QVcvMEFDUUFLU0VDWUZHelBNRUNjRTcvOHkvL0FRQmdLSkFBRC8vd0FXLzBBQ1FBS1NFQ1lGR3lQTUVDWUZKOWFhRUFZQ2lRQUEvLzhBRnY5QUFrQUNraEFtQlNiVFZCQW5CTy8vTXYvd0VBWUNpUUFBLy84QUZ2OUFBa0FDa2hBbUJTYkRWQkFtQlNmV21oQUdBb2tBQVAvL0FCYi9RQUpBQXdnUUpnSUFxL1lRSmdIZzdSMFFCZ0tKQUFELy93QVcvMEFDUUFNSUVDWUNBS3YyRUNjQjRRR3cvNW9RQmdLSkFBRC8vLzk0QUFBQ09RSXlFQ2NCNFA1Ni83NFFCZ0FyQUFELy8vOTRBQUFDT1FJeUVDY0I0UUE5L3pzUUJnQXJBQUQvLy81bEFBQUNPUUl5RUNjRkcvNDQvMjBRSndUdi9UWC9rUkFHQUNzQUFQLy8vbVVBQUFJNUFqSVFKd1ViL2lmL2JSQW5CU2Y5MmY4N0VBWUFLd0FBLy8vK1pRQUFBamtDTWhBbkJTYjkxLy8xRUNjRTcvMDEvNUVRQmdBckFBRC8vLzVsQUFBQ09RSXlFQ2NGSnYzRy8vVVFKd1VuL2RuL094QUdBQ3NBQVAvLy8zZ0FBQUk1QXFrUUp3SUEvbDcvbHhBbkFlRCtldisrRUFZQUt3QUEvLy8vZUFBQUFqa0NxUkFuQWdEK1h2K1hFQ2NCNFFBOS96c1FCZ0FyQUFELy93Qm4vejhDSHdLRUVDWUI0QVFQRUFZQ2l3QUEvLzhBWi84L0FoOENoQkFuQWVFQngvK01FQVlDaXdBQS8vOEFaLzgvQWg4Q2hCQW1CUnRMdmhBbkJPLy9TZi9pRUFZQ2l3QUEvLzhBWi84L0FoOENoQkFtQlJzNnZoQW1CU2Z1akJBR0Fvc0FBUC8vQUdmL1B3SWZBb1FRSmdVbTYwWVFKd1R2LzBuLzRoQUdBb3NBQVAvL0FHZi9Qd0lmQW9RUUpnVW0ya1lRSmdVbjdvd1FCZ0tMQUFELy93Qm4vejhDSHdMNkVDWUNBTUxvRUNZQjRBUVBFQVlDaXdBQS8vOEFaLzgvQWg4QytoQW1BZ0RDNkJBbkFlRUJ4LytNRUFZQ2l3QUEvLy8vc2dBQUFmOENNaEFuQWVEK3RQKytFQVlBTEFBQS8vLy9zZ0FBQWY4Q01oQW5BZUVBZC84N0VBWUFMQUFBLy8vK253QUFBZjhDTWhBbkJSditjdjl0RUNjRTcvMXYvNUVRQmdBc0FBRC8vLzZmQUFBQi93SXlFQ2NGRy81aC8yMFFKd1VuL2hQL094QUdBQ3dBQVAvLy9wOEFBQUgvQWpJUUp3VW0vaEgvOVJBbkJPLzliLytSRUFZQUxBQUEvLy8rbndBQUFmOENNaEFuQlNiK0FQLzFFQ2NGSi80VC96c1FCZ0FzQUFELy8vK3lBQUFCL3dLcEVDY0NBUDZZLzVjUUp3SGcvclQvdmhBR0FDd0FBUC8vLzdJQUFBSC9BcWtRSndJQS9wai9seEFuQWVFQWQvODdFQVlBTEFBQS8vOEFSdi80QWhFQ2pCQW1BZUR1RnhBR0FGSUFBUC8vQUViLytBSVJBb3dRSndIaEFiRC9sQkFHQUZJQUFQLy9BRWIvK0FJUkFvd1FKZ1ViTk1ZUUp3VHYvekwvNmhBR0FGSUFBUC8vQUViLytBSVJBb3dRSmdVYkk4WVFKZ1VuMTVRUUJnQlNBQUQvL3dCRy8vZ0NFUUtNRUNZRkp0Uk9FQ2NFNy84eS8rb1FCZ0JTQUFELy93QkcvL2dDRVFLTUVDWUZKc05PRUNZRko5ZVVFQVlBVWdBQS8vLy9sLy8zQWhvQ094QW5BZUQrbWYvSEVBWUFNZ0FBLy8vL2wvLzNBaG9DT3hBbkFlRUFYUDlFRUFZQU1nQUEvLy8raFAvM0Fob0NPeEFuQlJ2K1YvOTJFQ2NFNy8xVS81b1FCZ0F5QUFELy8vNkUvL2NDR2dJN0VDY0ZHLzVHLzNZUUp3VW4vZmovUkJBR0FESUFBUC8vL29ULzl3SWFBanNRSndVbS9mYi8vaEFuQk8vOVZQK2FFQVlBTWdBQS8vLytoUC8zQWhvQ094QW5CU2I5NWYvK0VDY0ZKLzM0LzBRUUJnQXlBQUQvL3dBVy8vSUNEd0tFRUNZQjROVVBFQVlDbHdBQS8vOEFGdi95QWc4Q2hCQW5BZUVCbC8rTUVBWUNsd0FBLy84QUZ2L3lBZzhDaEJBbUJSc2J2aEFuQk8vL0dmL2lFQVlDbHdBQS8vOEFGdi95QWc4Q2hCQW1CUnNLdmhBbUJTZStqQkFHQXBjQUFQLy9BQmIvOGdJUEFvUVFKZ1VtdTBZUUp3VHYveG4vNGhBR0FwY0FBUC8vQUJiLzhnSVBBb1FRSmdVbXFrWVFKZ1Vudm93UUJnS1hBQUQvL3dBVy8vSUNEd0w2RUNZQ0FKTG9FQ1lCNE5VUEVBWUNsd0FBLy84QUZ2L3lBZzhDK2hBbUFnQ1M2QkFuQWVFQmwvK01FQVlDbHdBQS8vLy9lUUFBQWpjQ01oQW5BZUVBUHY4N0VBWUFQQUFBLy8vK25BQUFBamNDT3hBbkJSditYdjkyRUNjRkovNFEvMFFRQmdBOEFBRC8vLzZXQUFBQ053STdFQ2NGSnYzMy8vNFFKd1VuL2dyL1JCQUdBRHdBQVAvLy8za0FBQUkzQXFrUUp3SUEvbC8vbHhBbkFlRUFQdjg3RUFZQVBBQUEvLzhBQnYvK0FsSUNoQkFtQWVEdUR4QUdBcHNBQVAvL0FBYi8vZ0pTQW9RUUp3SGhBYkgvakJBR0Fwc0FBUC8vQUFiLy9nSlNBb1FRSmdVYk5MNFFKd1R2L3pQLzRoQUdBcHNBQVAvL0FBYi8vZ0pTQW9RUUpnVWJKTDRRSmdVbjE0d1FCZ0tiQUFELy93QUcvLzRDVWdLRUVDWUZKdFJHRUNjRTcvOHovK0lRQmdLYkFBRC8vd0FHLy80Q1VnS0VFQ1lGSnNSR0VDWUZKOWVNRUFZQ213QUEvLzhBQnYvK0FsSUMraEFtQWdDczZCQW1BZUR1RHhBR0Fwc0FBUC8vQUFiLy9nSlNBdm9RSmdJQXJPZ1FKd0hoQWJIL2pCQUdBcHNBQVAvLy8xa0FBQUpUQWp3UUp3SGcvbHYveUJBR0Fuc0FBUC8vLzFrQUFBSlRBandRSndIaEFCNy9SUkFHQW5zQUFQLy8va1lBQUFKVEFqd1FKd1ViL2huL2R4QW5CTy85RnYrYkVBWUNld0FBLy8vK1JnQUFBbE1DUEJBbkJSditDUDkzRUNjRkovMjYvMFVRQmdKN0FBRC8vLzVHQUFBQ1V3SThFQ2NGSnYyNC8vOFFKd1R2L1JiL214QUdBbnNBQVAvLy9rWUFBQUpUQWp3UUp3VW0vYWYvL3hBbkJTZjl1djlGRUFZQ2V3QUEvLy8vV1FBQUFsTUNzeEFuQWdEK1AvK2hFQ2NCNFA1Yi84Z1FCZ0o3QUFELy8vOVpBQUFDVXdLekVDY0NBUDQvLzZFUUp3SGhBQjcvUlJBR0Fuc0FBUC8vQUFyLzlnSk9Bb29RSmdCREFma1FCZ0tEQUFELy93QUsvL1lDVGdLS0VDWUFkZ1Q1RUFZQ2d3QUEvLzhBY3YvOUFjOENnUkFtQUVQMjhCQUdBb2NBQVAvL0FITC8vUUhQQW9FUUpnQjIrZkFRQmdLSEFBRC8vd0FXLzBBQ1FBS1BFQ1lBUXdEK0VBWUNpUUFBLy84QUZ2OUFBa0FDanhBbUFIWUQvaEFHQW9rQUFQLy9BR2YvUHdJZkFvRVFKZ0JER1BBUUJnS0xBQUQvL3dCbi96OENId0tCRUNZQWRodndFQVlDaXdBQS8vOEFSdi80QWhFQ2lSQW1BRU1CK0JBR0FGSUFBUC8vQUViLytBSVJBb2tRSmdCMkJQZ1FCZ0JTQUFELy93QVcvL0lDRHdLQkVDWUFRK2p3RUFZQ2x3QUEvLzhBRnYveUFnOENnUkFtQUhicjhCQUdBcGNBQVAvL0FBYi8vZ0pTQW9FUUpnQkRBZkFRQmdLYkFBRC8vd0FHLy80Q1VnS0JFQ1lBZGdUd0VBWUNtd0FBLy84QUN2LzJBazREUUJBbkFsY0FCZ05pRUNZQjRPNFlFQVlDZ3dBQS8vOEFDdi8yQWs0RFFCQW5BbGNBQmdOaUVDY0I0UUd4LzVVUUJnS0RBQUQvL3dBSy8vWUNUZ05BRUNjQ1Z3QUdBMklRSmdVYk5NY1FKd1R2L3pQLzZ4QUdBb01BQVAvL0FBci85Z0pPQTBBUUp3SlhBQVlEWWhBbUJSc2t4eEFtQlNmWGxSQUdBb01BQVAvL0FBci85Z0pPQTBBUUp3SlhBQVlEWWhBbUJTYlVUeEFuQk8vL00vL3JFQVlDZ3dBQS8vOEFDdi8yQWs0RFFCQW5BbGNBQmdOaUVDWUZKc1JQRUNZRko5ZVZFQVlDZ3dBQS8vOEFDdi8yQWs0RHRoQW5BbGNBQmdQWUVDWUNBS3p4RUNZQjRPNFlFQVlDZ3dBQS8vOEFDdi8yQWs0RHRoQW5BbGNBQmdQWUVDWUNBS3p4RUNjQjRRR3gvNVVRQmdLREFBRC8vLy9HQUFBQ093TG1FQ2NDVi8rMEF3Z1FKd0hnL3NqL3ZoQUdBQ1FBQVAvLy8rWUFBQUk3QXVZUUp3SlgvN1FEQ0JBbkFlRUFxLzg3RUFZQUpBQUEvLy8rWXdBQUFqc0M1aEFuQWxmL0t3TUlFQ2NGRy80Mi8yMFFKd1R2L1RQL2tSQUdBQ1FBQVAvLy9tTUFBQUk3QXVZUUp3SlgveXNEQ0JBbkJSditKZjl0RUNjRkovM1gvenNRQmdBa0FBRC8vLzVqQUFBQ093TG1FQ2NDVi84ckF3Z1FKd1VtL2RYLzlSQW5CTy85TS8rUkVBWUFKQUFBLy8vK1l3QUFBanNDNWhBbkFsZi9Ld01JRUNjRkp2M0UvL1VRSndVbi9kZi9PeEFHQUNRQUFQLy8vM1lBQUFJN0Exd1FKd0pYLzdRRGZoQW5BZ0QrWFArWEVDY0I0UDdJLzc0UUJnQWtBQUQvLy85MkFBQUNPd05jRUNjQ1YvKzBBMzRRSndJQS9sei9seEFuQWVFQXEvODdFQVlBSkFBQS8vOEFGdjg0QWtBQ2toQW1BbGVONXhBbUFlRHRIUkFHQW9rQUFQLy9BQmIvT0FKQUFwSVFKZ0pYamVjUUp3SGhBYkQvbWhBR0Fva0FBUC8vQUJiL09BSkFBcElRSmdKWGplY1FKZ1ViTTh3UUp3VHYvekwvOEJBR0Fva0FBUC8vQUJiL09BSkFBcElRSmdKWGplY1FKZ1ViSTh3UUpnVW4xcG9RQmdLSkFBRC8vd0FXL3pnQ1FBS1NFQ1lDVjQzbkVDWUZKdE5VRUNjRTcvOHkvL0FRQmdLSkFBRC8vd0FXL3pnQ1FBS1NFQ1lDVjQzbkVDWUZKc05VRUNZRko5YWFFQVlDaVFBQS8vOEFGdjg0QWtBRENCQW1BbGVONXhBbUFnQ3I5aEFtQWVEdEhSQUdBb2tBQVAvL0FCYi9PQUpBQXdnUUpnSlhqZWNRSmdJQXEvWVFKd0hoQWJEL21oQUdBb2tBQVAvLy8zai8vd00wQWpJUUp3VHVBakVBcmhBbkFlRCtldisrRUFZQUt3QUEvLy8vZVAvL0F6UUNNaEFuQk80Q01RQ3VFQ2NCNFFBOS96c1FCZ0FyQUFELy8vNWwvLzhETkFJeUVDY0U3Z0l4QUs0UUp3VWIvamovYlJBbkJPLzlOZitSRUFZQUt3QUEvLy8rWmYvL0F6UUNNaEFuQk80Q01RQ3VFQ2NGRy80bi8yMFFKd1VuL2RuL094QUdBQ3NBQVAvLy9tWC8vd00wQWpJUUp3VHVBakVBcmhBbkJTYjkxLy8xRUNjRTcvMDEvNUVRQmdBckFBRC8vLzVsLy84RE5BSXlFQ2NFN2dJeEFLNFFKd1VtL2NiLzlSQW5CU2Y5MmY4N0VBWUFLd0FBLy8vL2VQLy9BelFDcVJBbkJPNENNUUN1RUNjQ0FQNWUvNWNRSndIZy9uci92aEFHQUNzQUFQLy8vM2ovL3dNMEFxa1FKd1R1QWpFQXJoQW5BZ0QrWHYrWEVDY0I0UUE5L3pzUUJnQXJBQUQvL3dBRy96WUNVZ0tFRUNZQ1Z6dmxFQ1lCNE80UEVBWUNtd0FBLy84QUJ2ODJBbElDaEJBbUFsYzc1UkFuQWVFQnNmK01FQVlDbXdBQS8vOEFCdjgyQWxJQ2hCQW1BbGM3NVJBbUJSczB2aEFuQk8vL00vL2lFQVlDbXdBQS8vOEFCdjgyQWxJQ2hCQW1BbGM3NVJBbUJSc2t2aEFtQlNmWGpCQUdBcHNBQVAvL0FBYi9OZ0pTQW9RUUpnSlhPK1VRSmdVbTFFWVFKd1R2L3pQLzRoQUdBcHNBQVAvL0FBYi9OZ0pTQW9RUUpnSlhPK1VRSmdVbXhFWVFKZ1VuMTR3UUJnS2JBQUQvL3dBRy96WUNVZ0w2RUNZQ1Z6dmxFQ1lDQUt6b0VDWUI0TzRQRUFZQ213QUEvLzhBQnY4MkFsSUMraEFtQWxjNzVSQW1BZ0NzNkJBbkFlRUJzZitNRUFZQ213QUEvLy8vV2YvL0EwNENQQkFuQk80Q1N3Q3VFQ2NCNFA1Yi84Z1FCZ0o3QUFELy8vOVovLzhEVGdJOEVDY0U3Z0pMQUs0UUp3SGhBQjcvUlJBR0Fuc0FBUC8vL2tiLy93Tk9BandRSndUdUFrc0FyaEFuQlJ2K0dmOTNFQ2NFNy8wVy81c1FCZ0o3QUFELy8vNUcvLzhEVGdJOEVDY0U3Z0pMQUs0UUp3VWIvZ2ovZHhBbkJTZjl1djlGRUFZQ2V3QUEvLy8rUnYvL0EwNENQQkFuQk80Q1N3Q3VFQ2NGSnYyNC8vOFFKd1R2L1JiL214QUdBbnNBQVAvLy9rYi8vd05PQWp3UUp3VHVBa3NBcmhBbkJTYjlwLy8vRUNjRkovMjYvMFVRQmdKN0FBRC8vLzlaLy84RFRnS3pFQ2NFN2dKTEFLNFFKd0lBL2ovL29SQW5BZUQrVy8vSUVBWUNld0FBLy8vL1dmLy9BMDRDc3hBbkJPNENTd0N1RUNjQ0FQNC8vNkVRSndIaEFCNy9SUkFHQW5zQUFQLy9BQXIvOWdKT0FrOFFKd0g4LytUL1BCQUdBb01BQVAvL0FBci85Z0pPQWtNUUpnQng4UkVRQmdLREFBRC8vd0FLL3k0Q1RnS0tFQ1lDVi9QZEVDWUFRd0g1RUFZQ2d3QUEvLzhBQ3Y4dUFrNEJzeEFtQWxmejNSQUdBb01BQVAvL0FBci9MZ0pPQW9vUUpnSlg4OTBRSmdCMkJQa1FCZ0tEQUFELy93QUsvL1lDVGdJM0VDWUU4RVhxRUFZQ2d3QUEvLzhBQ3Y4dUFrNENOeEFtQWxmejNSQW1CUEJGNmhBR0FvTUFBUC8vQUIwQUFBSTdBdGNRSmdIODdjUVFCZ0FrQUFELy93QWRBQUFDT3dMTEVDY0FjZi82QUprUUJnQWtBQUQvLy8rSEFBQUNPd0k3RUNjRkcvNjMvM1VRQmdBa0FBRC8vLytCQUFBQ093STdFQ2NGSnY1US8vNFFCZ0FrQUFELy93QWQvLzhETmdJeUVDY0U3Z0l6QUs0UUJnQWtBQUFBQVFDckFrWUJLZ0w0QUJJQUFBRUdCd1lISnpZM05pY21OelkzTmhjV0Z4WUJIZzgzRUJBTkdCQU1DaHdGQmlFSUNpZ0pCZ0tnTlJzSEF4QUdHQk1PRVNRa0NBSUJBaVViQUFBQkFHSC9VUUVELzkwQUVRQUFGek1HTVFZWEZqYzJGeFlIQmljbUp5WTFZamdCQVIwYklBNEVCQW91TXpJR0FTTXVJeEVQRlFrTkRBY2tFQkE0QndjQUFRRXhBZkFCc0FLaUFCSUFBQUVHQndZSEp6WTNOaWNtTnpZM05oY1dGeFlCcEE4NURoQU5HQkFNQ2h3RkJpRUlDaWdKQmdKS05Sc0hBeEFHR0JNT0VTUWtDQUlCQWlVYkFBQUJBRU1DQlFEOUFrMEFGUUFBRXpZM05qTXlGeFkzTmpjekZnY0dJeVluSmlNR0IwTUJKQThRRFJ3T0NDQVJCUU1iREJBVkZ3MEtKUlFDQmljV0NoVUxBUU1ZSlJVSkFSUUxBUi8vL3dDQkFlSUJhZ0t5RUNZRThGVmtFQVlBYWdBQS8vOEFGdjg0QWtBQ2p4QW1BbGVONXhBbUFFTUEvaEFHQW9rQUFQLy9BQmIvT0FKQUFiZ1FKZ0pYamVjUUJnS0pBQUQvL3dBVy96Z0NRQUtQRUNZQ1Y0M25FQ1lBZGdQK0VBWUNpUUFBLy84QUZ2OUFBa0FDUEJBbkJQQUFvZi92RUFZQ2lRQUEvLzhBRnY1NEFsMENQQkFuQWxjQTUvOG5FQ2NFOEFDaC8rOFFCZ0tKQUFELy8vOVhBQUFDS0FJN0VDY0ZHLzZILzNVUUJnQW9BQUQvLy85UkFBQUNLQUk3RUNjRkp2NGcvLzRRQmdBb0FBRC8vLzhzQUFBQ09RSTdFQ2NGRy81Yy8zVVFCZ0FyQUFELy8vOG1BQUFDT1FJN0VDY0ZKdjMxLy80UUJnQXJBQUQvL3dBZi8vOEROQUl5RUNjRTdnSXhBSzRRQmdBckFBRC8vd0V4QWZBQ2lnS2lFQ2NGR3dFQy85d1FCZ1R2QUFELy93RXhBZkFDa0FLaUVDY0ZKZ0NoQUdRUUJnVHZBQUQvL3dFYkFmQUIxZ01sRUNjRThBRFlBTmNRQmdUdkFBRC8vd0JuL3o4Q0h3Sk9FQ2NCL1AvaS96c1FCZ0tMQUFELy93QTIvejhDSHdKQ0VDWUFjZThRRUFZQ2l3QUEvLzhBWi84L0FoOEM5UkFtQUVNWVpCQW1BR3BOOEJBR0Fvc0FBUC8vQUIzL1B3SWZBcFlRSmdIc1F3RVFKZ0Jxbk1ZUUJnS0xBQUQvL3dCbi96OENId0kyRUNZRThFUHBFQVlDaXdBQS8vOEFaLzgvQWg4Q3ZoQW1CUEJEY0JBbUFHcnVEQkFHQW9zQUFQLy9BRmtBQUFIL0F0Y1FKZ0g4SzhRUUJnQXNBQUQvL3dCWkFBQUIvd0xMRUNjQWNRQTRBSmtRQmdBc0FBRC8vLzluQUFBQi93STdFQ2NGRy82WC8zVVFCZ0FzQUFELy8vOWhBQUFCL3dJN0VDY0ZKdjR3Ly80UUJnQXNBQUQvL3dDTUFrWUIxUUw0RUNZRkcwMHhFQVlGSndBQS8vOEFqQUpHQWRzQytCQW5CU2IvN1FDNkVBWUZKd0FBLy84QVpnSkdBU0VEZXhBbkJQQUFJd0V0RUFZRkp3QUEvLzhBRnYveUFnOENUaEFuQWZ3QUMvODdFQVlDbHdBQS8vOEFGdi95QWc4Q1FoQW1BSEVZRUJBR0FwY0FBUC8vQUJiLzhnSVBBdlVRSmdCRDZHUVFKZ0JxSGZBUUJnS1hBQUQvL3dBVy8vSUNEd0tXRUNZQjdHMEJFQ1lBYXNiR0VBWUNsd0FBLy84QUlmOUFBamtDb0JBbUJPL2svaEFHQUZNQUFQLy9BQ0gvUUFJNUFxQVFKd1VuQUlqL3FCQUdBRk1BQVAvL0FCYi84Z0lQQWpZUUpnVHdiZWtRQmdLWEFBRC8vd0FXLy9JQ0R3SytFQ1lFOEcxd0VDWUFhaGNNRUFZQ2x3QUEvLzhBSUFBQUFqY0MxeEFtQWZ3cXhCQUdBRHdBQVAvL0FDQUFBQUkzQXNzUUp3QnhBRGNBbVJBR0FEd0FBUC8vL3kwQUFBSTNBanNRSndVYi9sMy9kUkFHQUR3QUFQLy8veWNBQUFJM0Fqc1FKd1VtL2ZiLy9oQUdBRHdBQVAvLy8zb0FBQUl0QWpzUUp3VW4vdTcvUkJBR0FETUFBUC8vQUlFQjRnRnFBdjhRSmdVYnlqa1FCZ0JxQUFELy93Q0JBZUlCYWdMUUVDY0I3QUNuQURzUUJnQnFBQUFBQVFEUUFqRUJod0xHQUFNQUFCTXpGeVBRVDJnbkFzYVZBUC8vQUFiL05nSlNBb0VRSmdKWE8rVVFKZ0JEQWZBUUJnS2JBQUQvL3dBRy96WUNVZ0dxRUNZQ1Z6dmxFQVlDbXdBQS8vOEFCdjgyQWxJQ1RCQW1BbGM3NVJBbkFld0EzdiszRUFZQ213QUEvLzhBQnYvK0FsSUNOaEFuQlBBQWpQL3BFQVlDbXdBQS8vOEFCdjgyQWxJQ05oQW1BbGM3NVJBbkJQQUFqUC9wRUFZQ213QUEvLy8vZi8vM0Fob0NPeEFuQlJ2K3IvOTFFQVlBTWdBQS8vLy95Zi8zQWhvQ094QW5CU2IrbVAvK0VBWUFNZ0FBLy8vL1l3QUFBbE1DUEJBbkJSditrLzkyRUFZQ2V3QUEvLy8vdHdBQUFsTUNQQkFuQlNiK2h2Ly9FQVlDZXdBQS8vOEFBUC8vQTA0Q1BCQW5CTzRDU3dDdUVBWUNld0FBQUFFQk1RR2tBZTRDUFFBREFBQUJCeU0zQWU2VUtXc0NQWm1aQUFBQkFJd0NSZ0VMQXZnQUVnQUFFeVkzTmpjMkZ4WUhCZ2NHRnhZWEJ5WW5KcGdWRHcwZ0tRME1HQU1GRGg4TkRBMDZId2tDb0JzZ0dnSURKU0lZQXdNVkd3d0RFQXN5RGdBQkFIWUE1QUd0QVRzQUF3QUFFeUVWSVhZQk4vN0pBVHRYQUFFQWRnRGtBYTBCT3dBREFBQVRJUlVoZGdFMy9za0JPMWNBQVFCMkFPUUJyUUU3QUFNQUFCTWhGU0YyQVRmK3lRRTdWd0FCQUhZQTVBR3RBVHNBQXdBQUV5RVZJWFlCTi83SkFUdFhBQUVBSUFEa0Fqa0JPd0FEQUFBVElSVWhJQUlaL2VjQk8xZi8vd0FnQU9RQ09RRTdFQVlGTUFBQUFBSUF2djl4QVk0Q01nQURBQWNBQUFFUkl4RXpFU01SQVJaWTBGZ0NNdjAvQXNIOVB3TEJBUC8vQUNQL2NBSTJBQ2dRSmdCQ0FBQVFCZ0JDQUYwQUFRREZBY1VCZlFLUkFBTUFBQk0zTXdmRmlpNWJBY1hNekFBQkFNVUJ4UUY5QXBFQUF3QUFBUWNqTndGOWlpNWJBcEhNekFBQUFRREYvNW9CZlFCbUFBTUFBQmMzTXdmRmlpNWJac3pNQUFBQkFNWC9qZ0Y5QUZvQUF3QUFKUWNqTndGOWlpNWJXc3pNQUFJQWpRSEZBZmdDa1FBREFBY0FBQk0zTXdjek56TUhqWXN1WEZhS0xsc0J4Y3pNek13QUFnQ1lBYWNDQXdKekFBTUFCd0FBQVFjak55TUhJemNDQTRvdlhGYUtMbHNDYzh6TXpNd0FBQUlBZi8rYUFnWUFaZ0FEQUFjQUFCYzNNd2N6TnpNSGY0c3VYSEtLTGx0bXpNek16QUFBQWdDSy82UUI5UUJ3QUFNQUJ3QUFGemN6QnpNM013ZUtpaTViVllzdVhGek16TXpNQUFBQ0FIYi8yZ0hnQXFJQUF3QUhBQUFCRVNNUkJ5RVZJUUZSVUlzQmF2NldBcUw5T0FMSWcxQUFBUUIyLzlvQjRBS2lBQk1BQURjekVTTTFNelV6RlRNVkl4VXpGU01WSXpVamRvdUxpMUNQajQrUFVJdlFBUDlRZzROUS8xQ21wZ0FCQUxNQWhBR1pBV2tBRUFBQU53YzBOell6TWhjV0ZSUUhCaU1pSnlhMEFUTWRJendpRlRNZEl6MGlFL2NCUFNNVE1SMGtQU01UTXgwQUFRRDJBSGdCZ1FHUUFBSUFBQk1YQi9hTGl3R1FpNDBBQVFEYS8rY0JmZ0IxQUE4QUFEYzBOell6TWhjV0ZSUUhCaU1pSnliYUtCTVhNQmdLS0JNWE1CZ0tMaWdWQ2lVUUVpZ1ZDaVVRQUFBQ0FHNy81d0hxQUhVQUR3QWZBQUEzTkRjMk16SVhGaFVVQndZaklpY21OelEzTmpNeUZ4WVZGQWNHSXlJbkptNHBFeFl4Rndrb0V4WXlGd25aS0JNV01oY0pLUk1XTVJjSkxpa1VDaVlQRWlrVUNpWVBFaWtVQ2lZUEVpa1VDaVlQQUFNQU5mLzhBaU1BWUFBUEFCOEFMd0FBTnpRM05qTXlGeFlWRkFjR0l5SW5KamMwTnpZek1oY1dGUlFIQmlNaUp5WTNORGMyTXpJWEZoVVVCd1lqSWljbU5SOE1EU1VQQlNBTURTUVBCY1lmREEwbER3VWdEQTBrRHdXM0lBd05KQThGSHd3TkpROEZMaDhPQlI0SkN4OE9CUjRKQ3g4T0JSNEpDeDhPQlI0SkN4OE9CUjRKQ3g4T0JSNEpBQUFCQU5vQTJBRitBV2NBRHdBQUV6UTNOak15RnhZVkZBY0dJeUluSnRvcEV4WXdHQW9vRXhjd0dBb0JIeW9VQ2lVUUV5Z1ZDaVVRQUFFQXZBSGlBWk1Da1FBREFBQUJCeU0zQVpPcExub0NrYSt2QUFBQ0FIOEI0Z0hqQXBFQUF3QUhBQUFCQnlNM013Y2pOd0ZXcVM1NjZxa3VlZ0tScjYrdnJ3QUFBd0JIQWVJQ09nS1JBQU1BQndBTEFBQUJCeU0zTXdjak56TUhJemNCSHFrdWV1eXBMbnJxcUM5NkFwR3ZyNit2cjY4QUFBRUFzQUhpQVljQ2tRQURBQUFUTXhjanNGMTZMd0tScndBQUFnQi9BZUlCNHdLUkFBTUFCd0FBQVRNWEl5VXpGeU1CREYxNkx2N0tYWG91QXBHdnI2OEFBQU1BTkFIaUFpZ0NrUUFEQUFjQUN3QUFBVE1YSXlVekZ5TWxNeGNqQVZGZGVpLyt5RjE2THY3S1hYb3VBcEd2cjYrdnJ3QUJBRGIvUmdGTy8vRUFCUUFBQlFjbkJ5YzNBVTRmY0hBWmpac2ZYRk1XakFBQUFRQ05BQnNCM3dIRkFBVUFBQUVIRndjdEFRSGFwNnd5L3VBQklRR05uYUUwMWRVQUFRQ2pBQnNCOVFIRkFBVUFBQk0zRFFFbk42Z3NBU0grNERLc0FZMDQxZFUwb1FBQUJRQUEvOVFDV0FKakFBc0FHd0FyQURzQVN3QUFBUlVKQVJVSkFUVUpBVFVCRnpJWEZoVVVCd1lqSWljbU5UUTNOaE15RnhZVkZBY0dJeUluSmpVME56WVRORGMyTXpJWEZoVVVCd1lqSWljbUpUUTNOak15RnhZVkZBY0dJeUluSmdKWS91NEJFdjdUL3RVQkVQN3dBU3NGS1JRS0pSQVNLaFFLSmhBUktSUUtKUkFTS0JVS0pnOTZLQk1YTUJnS0tSTVdNQmdLL3BJcEV4WXhGd2tvRXhZd0dBb0NZelgrN3Y3dU5RRXMvdE00QVJBQkR6aisxSGNvRXhZd0dBb3BFeFl4RndrQlh5Z1RGakFZQ2lnVEZ6RVhDZjd6S0JVS0pSQVNLaFFLSlJBWEtSVUpKUkFTS1JRS0pSQUEvLzhBWC8vbUFma0NZaEFuQUFRQW93QUFFQVlBQkowQUFBRUFJd0tPQWpZQzZRQURBQUFUSVJVaEl3SVQvZTBDNlZzQUFRQWsvM1FDSlAvT0FBOEFBQVVHQndZaklpY21Kek1XTXpJM05qY0NKQkZ0T2tlWFNCd0dLaUMya1Q4SUJUSTBHUTB4RWhjcElBUUZBQUVBSkFLckFpUURCUUFQQUFBQkl5WW5KaU1pQnlNMk56WXpNaGNXQWlRaktZMFVFN1VoS2cxclBVeVhTQmtDcXlJR0FTa3pHUTR5RWdBQi8vWUFBQUI0QXBrQUF3QUFFek1ESTFValpCNENtZjFuQUFJQTFBR1NBWVFDdEFBSEFBMEFBQUVVRnpJMU5DY2lOeklWRkNJUUFRRXJLeXNySzFpd0FpTmpBV1JqQVMyUmtRRWlBQUFDQU1FQmxnR1hBcThBRGdBUkFBQVROek1WTXhVakZUTVZJelV6TlNNM0J6UEJpQzhiR3g5dElJbUlRME1CKzdTbEx4Z3RMUmlGVmdBQUFRREFBWlFCbkFLeUFCa0FBQUVITXpJWEZoVVVCd1lqSWljM0ZqTXlOelkxTkNzQk5UTVZBUTRCSVZZVEJUOFpHakU1R2l3ak1ROEVQMUM1QW9VNk93NFJPeGdLSmljZUhnZ0lLNVl0QUFBQ0FNc0JrUUdMQXE4QUdnQXFBQUFCTWhjV0ZSUUhCaU1pSnlZOUFUUTNOanNCRlNNaUJ3WWRBVFlYSWdjR0ZSUVhGak15TnpZMU5DY21BU3MxSFE0dUZ4czBIUTh2SGlSRVF5Y1ZCeFliSVF3RUd3b01JZ3dESEFvQ1JTb1dHakliRFNvV0dsOHhJQlF2SVFzS0VRd3ZHd2dJR2d3RkhRY0hHd3dFQUFBQkFNWUJsZ0dKQXE4QUNRQUFBVGNqRlNNMU14VUdBd0VFU2xvdXd3UlFBWmJzR0VVT0MvOEFBQUFEQU5RQmtRR0ZBclVBREFBWUFERUFBQUVWTkNjbUl5SUhCaFVVTXpJbkZETXlOVFFuSmlNaUJ3WUhGVFEzTmpNeUZ4WVZGQWNXRlJRSEJpTWlKeVkxTkRjbUFWWWFDQWdiQ3dNcEtsQW1KeFFKQ2g4R0FTODBFQkV1R2c0WUd6QVNGMFlQQXhvWEFmb0JIQXNER3dnSk42NGNIQTRIQXhRQ0FnRXdFZ1llRVJjaUZSa2xSeGtKUmc4Ukp4b1VBQUFDQU44QmtnR2RBckVBR2dBcUFBQUJJaWNtTlRRM05qTXlGeFlkQVJRSEJpc0JOVE15TnpZOUFRWW5NamMyTlRRbkppTWlCd1lWRkJjV0FUNDFIQTR1RnhvMUhBNHVIeU5EUXlVVkJ4Y1pJQXdFR3dvTElnd0RIQW9CL0NzV0dqTWFEU29XR21Bd0lCVXZJUXNLRWcwdkhBZ0lHd3dFSFFjSEhBd0VBQUFCQU13QnRBR01BblVBQ3dBQUV6TTFNeFV6RlNNVkl6VWp6RWd0UzBzdFNBSXNTVWt0UzBzQUFRRE1BZXNCakFJV0FBTUFBQk16RlNQTXdNQUNGaXNBQWdEZUFlUUJlZ0ptQUFNQUJ3QUFFek1WSXhVekZTUGVuSnljbkFKbUxDb3NBQUVBNUFFb0FXSUNxQUFRQUFBQkJ3WVZGQmNXRnlNd0p5WTFORGMyTndGZER6OHhFQkl4Q1VRekN3d0NxQk5RWEV4TUdCRUpVMlZaU2hBTUFBRUJHZ0VvQVprQ3FBQVFBQUFCTXhZWEZoVVVCd1l4SXpZM05qVTBKd0VmTHprUEEwVUpNVGNWQno4Q3FEcGNGUlJtVWdrMVZ4d1pYRkFBQUFFQW9RRjdBYmNDVndBZUFBQVRGVFl6TWhjV0hRRXpGU00xTXpVMEp5WWpJZ2NWTXhVak5UTTFJelV6N0NnaktTUVZIbWtlR0EwUUhDOGVhUjRlU3dJK0FSb2hFeE5xS3lwUkd4SUpIV2tyS29FckFBSUExUCtJQVlRQXFnQUhBQTBBQUNVVUZ6STFOQ2NpTnpJVkZDSVFBUUVyS3lzcksxaXdHV01CWkdNQkxaR1JBU0lBQVFETS80d0JoUUNsQUFvQUFEOEJNeFV6RlNNMU16VUh6RW92UUs5Qk1YSXo3QzB0dFNFQUFBRUF4LytNQVpJQXFnQWZBQUEzTlRRM05qTXlGeFlWRkE4QkJoVXpOVE1WSXpVMFB3RTJOVFFuSmlNaUZjYzRGeG94SGhORE94WllMYlErUGhnVkRoQTZRUTA0R1FzZkV4bzBLaVlSRUNCTkxTOG5KUk1URFF3SU9nQUFBUUROLzRZQmpRQ3BBQ2dBQUJjV016STNOalUwSnlZckFUVXpNamMyTlNZbkppTWlCeWMyTXpJWEZoVVdCeFlYRkFjR0l5SW44UnNaSlJBRUhBSURHQlFaQ2dJQkdnb01IaDhqTGpFMUhBOEJIQm9DT1JZWU1TZ3FJUjRKQ0NVR0FTOFVCUVFUQ0FNa0h6UWhFeGtnRlJVME54Y0tNZ0FBQWdEQi80d0Jsd0NsQUE0QUVRQUFGemN6RlRNVkl4VXpGU00xTXpVak53Y3p3WWd2R3hzZmJTQ0ppRU5ERDdTbEx4Z3RMUmlGVmdBQkFNRC9pZ0djQUtnQUdRQUFKUWN6TWhjV0ZSUUhCaU1pSnpjV016STNOalUwS3dFMU14VUJEZ0VoVmhNRlB4a2FNVGthTENNeER3US9VTGw3T2pzT0VUc1lDaVluSGg0SUNDdVdMUUFDQU12L2h3R0xBS1VBR2dBcUFBQWxNaGNXRlJRSEJpTWlKeVk5QVRRM05qc0JGU01pQndZZEFUWVhJZ2NHRlJRWEZqTXlOelkxTkNjbUFTczFIUTR1RnhzMEhROHZIaVJFUXljVkJ4WWJJUXdFR3dvTUlnd0RIQW83S2hZYU1oc05LaFlhWHpFZ0ZDOGhDd29SREM4YkNBZ2FEQVVkQndjYkRBUUFBUURHLzR3QmlRQ2xBQWtBQUFVM0l4VWpOVE1WQmdNQkJFcGFMc01FVUhUc0dFVU9DLzhBQUFNQTFQK0hBWVVBcXdBTEFCY0FNQUFBQlRRbkppTWlCd1lWRkRNeUp4UXpNalUwSnlZaklnY0dCeFUwTnpZek1oY1dGUlFIRmhVVUJ3WWpJaWNtTlRRM0pnRldHZ2dJR3dzREtTcFFKaWNVQ1FvZkJnRXZOQkFSTGhvT0dCc3dFaGRHRHdNYUZ4RWNDd01iQ0FrM3Jod2NEZ2NERkFJQ0FUQVNCaDRSRnlJVkdTVkhHUWxHRHhFbkdoUUFBZ0RmLzRnQm5RQ25BQm9BS2dBQUJTSW5KalUwTnpZek1oY1dIUUVVQndZckFUVXpNamMyUFFFR0p6STNOalUwSnlZaklnY0dGUlFYRmdFK05Sd09MaGNhTlJ3T0xoOGpRME1sRlFjWEdTQU1CQnNLQ3lJTUF4d0tEaXNXR2pNYURTb1dHbUF3SUJVdklRc0tFZzB2SEFnSUd3d0VIUWNISEF3RUFBRUF6UCtxQVl3QWF3QUxBQUEzTXpVekZUTVZJeFVqTlNQTVNDMUxTeTFJSWtsSkxVdExBQUFCQUx6LzRRRjhBQXdBQXdBQU56TVZJN3pBd0F3ckFBQUNBTjcvMmdGNkFGd0FBd0FIQUFBM014VWpGVE1WSTk2Y25KeWNYQ3dxTEFBQUFRRGsvejhCWWdEQUFCQUFBQ1VIQmhVVUZ4WVhJekFuSmpVME56WTNBVjBQUHpBUUV6RUpSRElMRGI4VFVGeEtUQmtTQ2xOa1dFb1JEUUFBQVFFYS96c0JtUUM4QUJBQUFDVTNGaGNXRlJRSEJqRWpOamMyTlRRbkFSOHZPQThFUlFreE5oWUhQN3NCT1YwV0ZHVlNDalJYSFJsY1VRQUFBUUF1QUFBQ0FRS0pBQ01BQUNVakZUTVZJVFV6TlNZbkpqVTBOellYRmhjSEpnY0dGUlFYRmhjMUl6VWhGU01WTXdHZ1hyLyswaDliT2k4d1Izb0lDQmhNTGg4MkhDSWZBU3U4WHNWMVVGQjJCMHM5UzFKR2FCOENBa3dZUUN3OVJDc1hCRVJRVUVVQUFBTUFOZi9ZQWo0Q2pRQURBQWNBTkFBQUZ3RVhDUUluQVFjeUZ4WVhGamMyTlRZM0Z3WVZGQmNISmljbUl5SUhCaFVVRnhZek1qYzJOeGNHQndZaklpY21OVFEzTmpVQk4wait5UUhCL3NCSUFVQ3hQeDhFQkFvQkFRTUpQaE1UU1JVd0Z4Yy9MQ2MyS0RRME1BTURRUzFRR0Jab1JrQk1SQVVDa2lMOWJnS08vWEVrQW85WEdBSUVCd0lDQXhZVEVEUVBGaThSS1JZS1BUZFNYRDR1TmdNRVB6Z1RCbGxTY0h4VVN3QUJBREgvL2dJNEFqOEFPd0FBQVRJWEZoY1dOelkzRndZVkZCY0hKaWNtSXlJSEJoVVVGeFlYTlNNMU14VTJNeklYQnlZbkppTWlCd1lIRlRZM0Z3WUhCaU1pSnlZMU5EYzJBUjgrSVFNRkNRSURDVDRURTBrVk1CY1hQeXduTmhrZlBKWXNMbEU0U3hVUENoQWJMd3NGSGhaQ0xWQVpGbWhHUUV4RUFqUVlBZ1FKQ1JZVEVEUVBGaThSS1JZS1BUZFNYRDRkQzgxVUlDVTFQQlFEQXlZSUJKTVJIRDg0RXdaWlVuQjhWRXNBQUFJQURnQUFBa29DTWdBREFDRUFBQ1UxSXhVbEppY21JeUlIQmdjVk14VWhOVE1SSXpVaEZ5TW5JUlV6RlRZek1oY0JERnNCVGhVUENoQWFMd3dHTy81dFNFZ0I2QWMwQi83dnRTOHNVVGhVME5DNEZBTURKUWtFb0ZSVUFZcFVvVTFtSUNVMUFBRUFOLy9KQWdVQ1hBQS9BQUFUTXlZbk5EYzJNeklYRmhjSEppTWlCd1lWRkJjV0Z6TVZJeFlYTXhVakJnY3lOeklYRmpNeU56WTNGd1lqSWljbUl5SUhCZ2NuTmpjMk55TTFNeWNqTnp3TUFWMC9TRmxPQ2dvNlFFaFJKaElOQVFIUXNBc0ZvSjRFRmdFbkhpMGRDek1nQmdZa00xQWlMU1lYTmhrS0Nqa3BHd29FYjIwUVhRRmpKeGhnTmlSRkNBbzZQVEVZSFIwZUFnSkNGaHBISmk0RUpSZ2hCZ2REUHg4YkVRY0tLeWxIR0JaSE1BQUFBZ0FBLzVRQ1dBSXZBQXNBTkFBQUpTYzBKeVlqSWdjR0J4VXpFelkvQVJjSEZoY1dIUUV6RlNNUk5DTWlEd0l6RlNNMUJ5YzNJelV6RVNNMU14VTJOell6TWdEL0FRd0dEQ3daQkFJYWlnd0hWRWdzU2hJRk81VWVEQW8xQVR1VlhFY29oRHc4ZXhBMkZBdEg4UkpHRHdrc0J3ZlNBU0FPQnFZa1ZneFZGUmZUVlFFRFhnVm9uMVZDcmlSSVZRRUJWREllR1FrQUJRQUEvL2tDV0FJeUFBSUFCZ0FLQUE0QU5RQUFKUmMxSnlNVk16Y2pGek1sTXljakJ6TTFJelV6RlJjek5TTTFNeFVqRlRNVkl4VXpGU01WSXljakZUTVZJelV6TlNNMU16VWpBYTBhOGtOdXg0SXJWLzdMQndVQ2tqZzRsbk8rVGQ0M056YzNOMUNWcWs3Z09EZzRPTDhqSTRrNU9UbUpCd2RHVkFHWlJsUlVSbEE1VU1iR2ExUlVhMUE1QUFNQUFBQUFBbGdDTWdBRUFBc0FKUUFBQVNZbkl4MEJNekkzTmpjakJ6TTFJelV6TlNNMUlUSVhGaGN6RlNNR0J3WXJBUlV6RlNFQjFoWlVtSmczSHdZRStKOUZlbnBGQVUxWE1DQUVLelFZUlNJanJtNys4d0dTU0FSTWhDWUdDTzd1VUV4VVBTZzdVRklrRW1aVUFBQUVBQUQvOUFKT0FqSUFQZ0JEQUVnQWJBQUFBUVlIRkJjbkppY2lCd1lWRkI4QkZoVVVJeUluSmljbUR3RWpNRGMyTlRRbkppY3dNeFlYRmpNeU56UW5KaWNtTlRRM01qTXlGeFlYRmpjMk56WTNKU1luSXgwQk16STNJeGNXRnhZWE14VWpKeVluSXhVekZTTTFNeEVqTlRNMUl6VXpNaGNXRnpNVkl3WUhCZ0pEQ3dJWVFoMHBFd2dDTURZd2Z5RVBCUUVJQXcwK0Rna1RBZ0krR1FNTkR6c0RLelVFTTJnR0J4OFFBd0VMQVFFREFnTCsyUXd0UGo0NENYOTRIQmNFQWhKTEdSNDBEUlIvRUJRVUVNazRJeFFIREFzTUxSUUJzQmNhS0JZQkp3RVhCd2NuSXlncE9uVVFCQUVHREJZaEZCTVRId1FDSGdNS0p5RWRJd1FyUldVR0RnSUJDUW9JQkFJREVCd0JIWTgva3g5VURnbFVXVll2aWxSVUFSMVFIVlF3R3laUVR5OFZBQUFFQUFELzhRSllBaklBQXdBSEFBb0FNZ0FBQVJjek55RVhNemNYSndjVE14VWpCek1WSXdjekZTTUhJeWNqQnlNbkl6VXpKeU0xTXljak5UTVZJeGN6TnpNWE16Y2pBWG9hR3hmK3lSWWNHbUlSRVhmR0dCRXBQaFpVYVRBNU0wNDBNekZ0V0JaQ0xSRWN4bHdRZVExVURYc1JXd0ZPVlZWVlZWVTlQUUU1VkVCUVZWQzR1TGk0VUZWUVFGUlVRQ3NyUUFBQUFnQWEvLzBDUGdLWEFCWUFMUUFBSlJFM0ppY2pJZ2MyRlJFakVUUTNOanNCTWhjV0ZSRURFUWNXRnpNeU53WTFFVE1SRkFjR0t3RWlKeVkxRVFGTUFRMGRrQjBEQVZvakhEcVFYUmdPbWdFTkhaQWRBd0ZhSXh3NmtGMFlEcTBCVHpFUEFSSUVMZjMrQWdKZUhoa3hIa3orc1FFNi9yRXhEd0VTQkMwQ0F2MytYaDRaTVI1TUFVOEFBZ0FwLy9nQ1JRSjVBQjRBTGdBQUlTTTFCZ2NHSXlJbkpqVTBOell6TWhjMUl6VXpOUWMxTnhVekZTTVJNeWMwSnlZaklnY0dGUlFYRmpNeU56WUNQcVEwTWhJVVlrWTlTa05ZVWpwQlFXTytVRkJKcERZb0xrRXNIalluTGtBdEh5NHFDUU5KUUZSZVF6dzNQaklsRTFjbGpqTCttNEU3S2g0MUpDbzhLUjQwSlFBQUFRQWQvL2NDSmdJN0FDOEFBQk16TkRjak56TTJOell6TWhjR01TWWpJZ2NHQnlFSElRWVhJUWNoRmhjV016STNOamN3RndZSEJpTWlKeVluSTBzUUFrQXVKU2RXTERCaFJVVXNOVUV1QkFRQlZDNyt3UVFCQVhBdS9zd2NQUllXT1N3TkNWQXhXU0FoWmtjbEVVa0JFQ0VSVEdrdEYxUTVNa1VHQjB3WkdVeE9Hd2szRVJNcFl4OExYREZBQUFRQUQvLytBbElDbVFBTUFDMEFNUUJYQUFBVEppTWlCd1lWRkJjV016STNGek1WSXpVR0l5SW5KalUwTnpZek1oYzFOQ2NtSXlJSEp6QTNOak15RnhZVk56TURJeVUzRnpBSEJoY1VGd2NtSnlZaklnY0dGUlFYRmpNeU54Y0dCeUluSmpVME56WXpNaGNXMnpvbExBb0JIaEFUTVNRMk9HNG9MVDRrRlRZYUhTQS9NQkVXSXpRUkpDc1pSQzBjbVNPN0hnRXdDU1VLQVFFSkx4QXFCd2d1R2dzcUZCVXJJUm90TjBzcEdEZ2pMQ1lmQmdIWUVDRUZCQklOQ0NVaE14b2lKeGdmT0JzTkR3WWVDd1FXSnc0TkpCWWJnUDFuNmhNT0h3VURBaFFRSVFnQktSRVJMUmtNR0NnZUF6Y2hLRUVtR1JVRUFBUUFGZi8zQWo0Q21RQU1BQzBBWkFCb0FBQVRKaU1pQndZVkZCY1dNekkzRnpNVkl6VUdJeUluSmpVME56WXpNaGMxTkNjbUl5SUhKekEzTmpNeUZ4WVZBUVlWQmhjbkppTWlCeFFYRmhjV0ZSUUhCaU1pSnlZSEJnY2pNRGMyTlRRbk1ETVdNekkxTkNjbUp5WTFORGMyTXpJWEZqYzJOd016QXlQaU9TY3JDZ0VkRVJJd0pqWTRiaWN2UGlNV054a2RKVHN5RVJRa05CRWtLQjFDTGgwQkh3Y0JEeWdOT3pFR0xENEpLemdZR3k0WUJBSUNCaVVJQmc0bEREdEVLejRQSnowV0dTc1NCZ0VCQkcwanV4NEIyQThnQlFRU0RnZ21JVE1hSWljWElEZ2JEUkFHSVFvREZpY05EaU1YRy83cEVnd1lEUUVZRnhZUEZnUVhLU3NUQ0E4RUJ3UU5GQTRKRFJVYUdCTU5GUWtYS2lvUkJnc0NBd1FHQVpmOVp3QUFCQUJQLy9VQ0NnSTVBRGtBUVFCUkFGc0FBQ1VVQnlNaUp5WWpJZ2NHQndZbkpqVTBOellYRmhjV0Z4WTNOamN6TWg4QkZDc0JJaWNtSnlZaklnY0dCd1lYRmpNeU56WTNOanNCTWdjREZoY25Cd1luSmdNbUp5WTNOamMyTndZSEJoVVVGeFlsQmdjMk16SVhGQmN6QWVVSUVBWURCQTBVTWlRWm95NFFPVDl5TWlZYUFnMFNDZ1FLQmdJSkNBd0hFU1FzSGlWSk1DZ0JBVFVsT0ZKQ0pnNENCZ3dLQW5Fd0hBZ0RIU0FCaVZra0VnRUJPQjhvYWlnU1d5VUJFUjVFRXhBWkNRRUJCZ1VDRHhBWEVBRUdvamRCZVZaZ0FRRWFFd0VFR1EwQkNMUUpLMWtkRkYxTFg0TkpNMG9yTXdZS0FVZ3VUNU1FS3hZQi9nY05majFHZDFVdUVodUVPajZwUFJtT1Jpd0hHUUlEQUFNQUUvLytBZmtDN0FBUEFCOEFTd0FBRXpJWEZoVVVCd1lqSWljbU5UUTNOaGNpQndZVkZCY1dNekkzTmpVMEp5WVhOVElYRmhjV056WTNGd1lWRkJjSEppY21JeUlIQmhVVUZ4WXpNamMyTnhjR0J3WWpJaWNtTlRRM05tZ3dHUXdwRkJnd0dRd3BGQmdnRGdVZEN3c2dEZ1VkQzhvL0h3UUVDZ0lEQ1Q0VEUwa1ZNQmNYUHl3bk5pZzBOREFEQTBFdFVCZ1dhRVpBVFVRQzdDa1VHREFaRENrVUdEQVpEQ0lkQ3dzZ0RnVWRDd3NnRGdXWEFSZ0NCQWdJRmhNUU5BOFdMeEVwRmdvOU4xSmNQaTQyQXdRL09CTUdXVkp3ZkZSS0FBQUNBRThBQUFKSkFqSUFEUUF5QUFBVEl6VWhGU01STXpjekJ5RTFNeE1HSnlZaklnY0dGUlFYRmpNeU56WTNKd1lqSWljbU5UUTNOak15RnhZWE55Y21OeWZCVkFFRlY4WVJWeFQrTjFXUkJBY2xMMUV4SWtFdU96MHhCZ1VlS0RZdUlCWWxIU012SGdjRU9Rc0NEeTRCM2xSVS9uYUwzMVFCUHdZRkdUMHFOVTB1SUNBRUJERWVLQnNoSmg0WUl3Z0lFeG9NSXhJQUFBUUFHLy84QWtnQ21RQWxBRFVBUlFCSkFBQVROeGN3QndZWE1CY0hKaWNtSXlJSEJoVVVGeFl6TWpjWEJnY2lKeVkxTkRjMk16SVhGaE15RnhZVkZBY0dJeUluSmpVME56WVhJZ2NHRlJRWEZqTXlOelkxTkNjbUF6TURJL0FKSlFvQkFRa3ZEaWNLQ1MwYkRDb1VGUzhlR1N3NFN5a1lPQ01zSmg4RzBrTXFIRGNsTFVRcUhEY21MU3dhRGljVkdDd2FEU2NWVlNPN0hnSmJFdzhnQkFNVkVCNEtBaWdTRVMwWkRCZ29IZ00zSVNoQkpoa1ZCUDZ2TlNRclFTa2JOaVFyUUNnY05pWVRGU2daRGljVEZTZ1pEUUhLL1djQUFBTUFDdi8yQWw0Q21RQWxBRU1BUndBQUV6Y1hNQWNHRnpBWEJ5WW5KaU1pQndZVkZCY1dNekkzRndZSElpY21OVFEzTmpNeUZ4WUJCaU1pSnlZOUFTTTFNeFVqRlJRWEZqTXlOelVqTlRNVkl4VXpGU01ETXdNajN3a2xDZ0VCQ1M4T0p3b0pMUnNNS2hRVkxTQVpLemhNS1JnNEl5d29IUVlCS0RVa09pY1ZJM3dqR3hBVkpqTWpmU1FrV3FranV4NENUUk1QSUFRREZSQWVDZ0lvRWhFdEdnd1pLUjBET0NBb1FTWVpGUVQ5ekI0cEZ4Wi9NakpoSGhVTkkzNHlNcHN5QXB2OVp3QUFBUUI3Ly9RQjNRSXlBRG9BQUNVR0J3WWpJaWNtTlRRM0pqVTBOell6TWhjMk5UY1hNQWNHSHdFUEFTWW5KaU1pQndZVkZCY1dPd0lWS3dFaUJ3WVZGQmNXTXpJM05qY0J4MEJERGc5YU1pQTBMRUFvTGtFMEFROC9FQU1CRDAwRERDc1pHaVFXQ1NBTENTOFFEeThkRkF3ckVoUXNKZ1lJUWtNSkFsRXpQRXMyTXp0TEtob2tBUUlnR1MwT0JpUWFBU1FXRFNBT0RpWVdCMW9pRlJzOEhnd2tCZ2dBQUFFQVgvLytBZ2tDUHdBeEFBQUJNaGNXRlJRSEJpTWlKeVluTnhZWE1qYzJOeU1WSXpVekZUTW1KeVlqSWdjR0J5YzJOVFFuTnhZWEZqYzJOelkzTmdFYmFFWkFURVJlUzBBVERVRXdPa1VzR0FlQlIwZC9FVUlkSGpZckN3ZEpFeE0rQ1FNQkJ3SUNIeWNPQWpSWlVuQjhWRXN5RGhFL093SkxLVEk1c0NOZEp4QXZEUTBSTHhZUE5CQU9Hd2tHQVFJWkJBRUFBQU1BQ2dBQUFuVUM3QUFQQUI4QU5RQUFFeklYRmhVVUJ3WWpJaWNtTlRRM05oY2lCd1lWRkJjV016STNOalUwSnlZWEZUTTFNeFVqTlNNVk14VWhOVE1SSXpVaEZ5TW5YekFaRENrVUdEQVpEQ2tVR0NBT0JSMExDeUFPQlIwTHUyeEpTV3lwL3B4Z1lBSUFDelFMQXV3cEZCZ3dHUXdwRkJnd0dRd2lIUXNMSUE0RkhRc0xJQTRGN0hFdndUN0ZWRlFCaWxTK2FnQUFBZ0FqL3pzQ2tBR3lBQ1VBTlFBQUFRY2pNQU1HQndZaklpYzNGaGNXTXpJM05qOEJCZ2NHSXlJbkpqYzJOell6TWhjV0Z6Y0hJZ2NHQndZWEZqTXlOelkzTmljbUFwQVNURThOV1ZaUlhGY2hKVW9lR0ZVeUZ3WU9KanNjSEdBMk14SVVXVkJYV1NJQ0FReWNRamdsQ1F3dElTNUNPQ1VJREN3aEFhcFUvb3MrTlRNNlVoOFFCelVYSFVFb0VnbEdRVlplUXp3OEF3TTZVallrS1R3cEhqWWtLVHdwSGdBQUF3QUMvL1FDVndJMUFBa0FFd0N4QUFBQk5qYzJKeVlIQmdjR0J3WUhCaGNXTXhZM05qOEJNelkzTmpjMk56SVhGaGNXQndZUEFSVUdCeFFYRmhjV056WW5KaWNtSnlZakJnY3dCd1lISnpZM05qTXlGeFlYRmdjR0J5SWpKaWNtSnlZM0JqRVdCd1lISnpZM05qVUhJd1lIQmdjR0J3WW5KaWNtTnpZM05qYzJOelkzQmdjR0p5WW5KaU1tQndZWEZoY1dNeFkzTmpjMkp4Y1dCd1lIQmljbUp5WTNOak15RnhZWE1qYzJOd2NHQndZSEJnOEJOamMyTnpRM05qY1hCZ2NHQVcrVE5Sc0lCU011T3l6UGRDa1RCQU1nTXkwVWJ5QUJDZ1lwV3pVZklnb0VBaG1hTHpzS0hRRUZDaUVmSmpNSUFRSUlFd1FESGhJUUNRTU5BUWNaTnhjUEJBSVNMeVVzQXdNd0Z3VURFQ0FiQWdrRUNRY0VBd2NLQVFnU09WSVJFeUlOQWdFVWRTb3pGQVFLR3dVVkJnc1VHQmNNQXdRZERBa0dCaHNJQnhjSkFRSUZCUThFQkFrbElSUUdBdzhnRGhJaUhoRUhHaElERWdFRUNCOFVEQUlPQndrS0JRVUhEZ0lHQWdRQkwwaFFLU1FWQlFoWVFxazJSaUVmR1FOa0xYY05IQTl5VVM4QkRBVUlaR1FmR2lJQmJpMFlGU2NEQlM0K1JBZ0lId2NCQVRNMElpTURGaWQ4SHdrSlRFZzVBd0kwRFE5ZVhna2NFUWdLQkFjSEVCa0VBZ2JKSVFjQkFod0RCRTFRSFJaTkR5VTlEQndEQWdFbUpBVUJBU2tkSkNBUEJRRWVCZ2NYR2dZZUV6QURBeWtNRDBJbkVqQWJBUm9GQkFzRkN5dFVNUVkxQVFRRUFSZ0pEUWtKQ3dZSUFBRUFWQUFCQWdRQ09BQWRBQUFURlJjSEp4RW5OeGNWTnhjV016STNOU2MzRnhFWEJ5YzFCeWNtSXlMT05UVS9PenMvUEU0U0JoTU5Pam8vTlRVL1FFNFNCdzhCQkpnMk5UNEJoRG83UCtzNUVRUUVqVG83UC81ek5qVSs3enNSQkFBQUF3QWUvL2dDS3dJeEFEc0FWd0J6QUFBRk5UTXlOelk5QVNNVkZCY1dPd0VWSXpVek1qYzJOUkUwSnlZckFUVXpGU01pQndZZEFUTTFOQ2NtS3dFMU14VWpJZ2NHRlJFVUZ4WTdBUlVCTkRjMk14YzFJeFUzTmhjV0ZSRVVCd1lyQVJVek5TTWlKeVkxSVJRSEJpc0JGVE0xSXlJbkpqVVJORGMyT3dFMUl4VXpNaGNXRlFGWU5Rd0hBdnNQQXdNMTB6VU5CZ0lPQkFNMTB6VVBCUUg3RHdNRE5kTTFEd1VCRHdNRE5mNXJGZ2dJSkxJbEZnd0VGZ2dJSmJJa0dnb0NBUjBXQ0FnbHNpUVlDd01YQndna3NpVVhDd1FJTWc4RUE5blpFQVVCTWpJUEJBTUJxQThHQWpJeUVRTUR2YjBPQndJeU1oRURBLzVZRUFVQk1nSHdHUXdFQVJBUUFRRVpDUWorV0JZTkJCRVJHZ1lIRmcwRUVSRVpCd2NCcUJrTUF4QVFHQWdJQUFBQi85TUFBQUlQQW5rQUh3QUFFell6TWhjV0R3RXpCeU0zTXpjMkp5WWpJZ2NHRHdFekJ5TTNNeE1IUHdHN1lUOUNPVFVLTFRzUzBCSTdJd2djR0NnOFhRVUVMVHNTMEJJN1h6OFJuZ0dFTkRJdkw5UlVWS0lySXgwMkF3TFNWRlFCdmhKVUpRQUIvOU1BQUFJUEFua0FKd0FBRXpZek1oY1dEd0V6QnlNM016YzJKeVlqSWdjR0R3RXpCeU0zTXhNSEp6OEJCejhCQnpjWEI3dGhQMEk1TlFvdE94TFFFanNqQ0J3WUtEeGRCUVF0T3hMUUVqdEROQnhnREQ4Um5oYzdIR2NCaERReUx5L1VWRlNpS3lNZE5nTUMwbFJVQVR3Yk5qQTNFbFFsYXg0Mk13QUUvMDMvUUFLUEFoOEFDQUFTQUNFQVd3QUFGd2NHQndZWEZqTTJBUllYRmpjMkp5WUhCZ0UzTmpjMk55WWpCZ2NHRnhRWEZnTTJOeVluSmpjMk56WVhOak15RnhZWEZnY0dKeVluQmdjR0J3WUhOamMyTnhjR0J3WUhCZ2NHQnpZL0FSY0hCZ2NHQndZbkpqYzJOelpZcERrUkVCb0ZDSEVDSVNZWUhCQUZBZ1VxSFA3RUZ5cUdEUTBOSG5SWVRRd0NGVTQ1VFVjV0tJTk5ieG9xUWg0bUNnZ0VEaVVRRWhJK1dFb0lDQUlCSmhZVENSQU5FUjQyT2g0SkNsOFVCQTBISzJXSXJEVUxGWGtaaXdZYk1CVWtJZ2dCQlFLbEJnRUREZ1VGRFFVRC93QXdYa3NIQndJRU9USTBCQVEzL3V0WHB3bzhhelFlQWdFRUhnVUVDQmNMQkFFQkJ6cDlEZzREQkFzU0R4WUxHQThZRFlJMEVBOHNIUWNIQ0RJc3hnZ0NJVDhzQ1NjQkFBSUFrZ0FDQWNBQ09nQWpBRjBBQUFFVUJ3WWpJaWNtQndZSEJoY1dGeFlYQmljbU56WXpNaGNXTnpZMU5DY21OVElYRmdjbUZ4WVhGQmNXQndZVkJnY0dCd1luSmljbVB3RTJKeVlQQVFZSEpqYzJNeklYRmhVVUJ3WVZGQmNXTXpJM05EVTJKeVkxSmpjMkZ4WUJ3RUlnRlIwOEtnd0VBZzgwQXdRa0JGY1pEaFl4TkROSUNCRUpEQWNyQlFFR0t3SUJHQUVTQ3dRTE9nZ0lJajh5R0NFcEtBZ0RBeEFSQVFJQ0dBMFNHUXdFRUFnS0NoY2RCZ0VZRlFKS0ZoNFVBZ29wSEEwZUZnc0VDRElUQVFFSkF4WXpHeVphTGdZRUFnVU1Dd1lKSlFSdkR5Z1JSUUlDT1Q0VEFrbzJDQVlhRVEweVEwdEFEd2tRRlJjQkFTUVRDVGdVRkJaQkpCc3NDZ3BmQ0FFV1REOGpTQ0VLQndRQUF3QXQvOVFDYlFJMEFBa0FGQUJnQUFBQk5qYzJKeVlqSmdjR0F5Y21Jd1lIRmhjV014WVRCZ2NHQnhZek1qOEJGd2NHQndZbklpY0dKeVluSmljbU56WXpNaDhCTmpjMlB3RUdJd1luSmljbU56WVhNaGNXSHdFbUl5WUhCZ2NHRnhZWEZqY3lOelkzTmhjeUZ4WVhGZ2NHQWI1TU5DY0lCUnc1Smd6T2ZCZ05Jd0lMUWhFUkxlQVVFaHcwSHhCREpnWU1CaUlhRmg0Zk1ETkVOQzBiQmdvcUNRay9aQmhGR0FJQkNoSUlaekVTQ1E4b0ZCc0tEd1FUQVJjQkVRZ2lFQTRKRmwwV0dBOFBLVFFrTWlFTEFRRU1NRGdCS2lsWVFTSVhBWDBwL29BOUNRTVVNaElGQVFFdVlEVlRLUXhMQ3dzTFBBOE5BUkVkQWdFakZSZ21DUUkyRFVWckNBZ3ZBZ1ZKR3lSQUl4SUJCUUVMRGcwR0FRTWpIU1JjRWdVQkE3dzdLQUViQXdNd1Rsd0FBZ0JGLytJQnpRSjRBQWNBTWdBQUFUWW5KZ2NHQndZSE56WTNOamN5RnhZSEJnY0dEd0VHRnhZWEZqTXlQd0VYRHdFR0J3WWpJaWNtSnlZM0J3WUhKejhCQVFhN0NnWVRJRlFTZWpCUUhqY3FKd2dJa0JWQ0ZRd2ZCZ1FJRkFNRUp4SXJEZ2NnRUNjS0Npb2NDZ1VLRmdnQktRNEhHQUZEOFI0VEFRUEVLN1p4dGpSZ0FTWWx2aHRWTml4VkdROGJDQUVaT0FrTk1SZ0tBaUlNRHhzK0NnRTJDZ3dpQUFJQUVRQUFBa3dDTXdBbkFDMEFBQk1CRVRRbkppc0JOVE1WSXlJSEJoVVJJd0VSRkJjV093RVZJelV6TWpjMk5SRTBKeVlyQVRVWEZRRXpOUUdlQVQwY0RBOGd5Q2ttRFFRcC9yOFpEaEVneVNvaUR3WVRCZ1lzV3dGS0QvNjZBalArSUFGOEx4WUtGUlV5RHc3K01RSHUvbllvR2cwVkZTOFJEd0diRkFrREZCRVYvZ1FsQWV3QUFBUUFBUC81QWs4Q01nQVVBQmdBS0FBNEFBQWJBVFVqTlRNVkl4RWpBeFV6RlNNMU14RWpOVE1CSXpVekF6SVhGaFVVQndZaklpY21OVFEzTmhjaUJ3WVZGQmNXTXpJM05qVTBKeVo2ZVIrUUYxQ0hJWmNjSEhvQjArTGljRHdpRkRJZEl6d2lGRElkSXhJRkFSSURBeElGQVJJREFqSCs0OHBVVlA0YkFURFZWRlFCaWxUK0tqOEJKeklkSXp3aUZESWRJendpRkZvU0F3TVNCUUVTQXdNU0JRRUFCQUFjQU93Q0t3TDlBQThBSHdBb0FEc0FBQUVXRnhZSEJnY0dKeVluSmpjMk56WVhKZ2NHRnhZWEZqTVdOelluSmljbUJ6TXlOelkxTkNjakJ6TTFJelV6TWhjV0ZSUUhCaXNCRlRNVkl3RWxqMGs4RWhKWVFsbVBTVHdTRWxoQ1dXY3ZLQmdZVFJ3aVp5OHBHQmxOSERzOUhnb0RLejFBSEJ5R0xSRUdKUThRUml4c0F2d0JhMWx4Y3pzc0FRRnJXWEZ6T3l4YkFWRkZUMUViQ2dGUlJVOVJHd3E4R1FnSktBR2RuU0ltRHhJd0Z3a29JZ0FCQUEzLzhBSlRBaklBZHdBQUFTWW5KaU1tQndZSEZCY1dGeFl6RmpjMk56WW5KaWMzRmhjV0J3WUhCZ2NHSnlZbkpqYzJOelkzTmhjV0Z6YzJOeGNHRHdJV0Z4WUhCZ2NHSnlZM05qYzJOeGNHQndZWEZqTTJOelluSmljR0J3WUhCZ2NHSXlJbkppY21OelkzTmhjV0J3WW5ORGNpQndZWEZoY1dOelkzTmpjMk56WUIrak5EQlFWY1NUNEJCUThyRGhBa0hoZ0RBZ2NGQlFrS0FoQUVCamNYR3pBakRnWVdQRGxiRkJSTVJRWUdFUVVXQWc4Q0VBRWlEaDR0SGlzc0N3MGdCZ1lKQXdJRkNoY0lDUmdtRVF3SkJoVTNIZ2NOSVZVeE9VZzRJZ3dLRXdRR0dBb0dEdzRGQWdnRENRa1ZTU01oVFRVTURpeEtFZ0hyTXdZQkFWSkdTaE1RTUJFRkFUWXFNeUlSRHdnQkVnWXRKRTRqRUFFQ0x4SVZUMVJSRmdVQkJUVUZCUW9EQkFvR0Fnc0JJaWRRUFNjRkJCOGtIZ1VFQkFFSUFnb2JHQmNDUVRFM0lSczJiaG81ajBFbE1CMG9KQThEQVFNWUVBSUNFQUVIQXdnY1FCd05BUU9YSVRPZFJoQUFBQVFBZC8vNEFlSUNNUUFjQUNVQU9BQkZBQUFCSXhVVUZ4WTdBUlVqTlRNeU56WTFFVFFuSmlzQk5UTXlGeFlIQmljakZUTXlKelFuSmljbUl4WVhFUlFIQmlzQkZUTTFJeUluSmpVVEJ4WVhGaFVXQnpZM05pY21BVkZTRHdNRE5ORTFEUVlDRGdRRE5lZDhCd2haSENsTVMxMEJNQlJ6RkNNV0F4VUlDQ1N2SXhrS0FtOFdQQ0FUQWxKYkRRTUNCd0VxOXhFRkFTUWtFQVFEQWNnUEJnSWZiMjRnQ3VQRGRUQVZDUklCRFJqK09CWU5CQVFFR2dZSEFlMEJBaWtYSG5FU0NsRVRGbVVBQkFBai82TUNLUUl5QUN3QU9BQmlBSFFBQUFVR0p5WW5JaU1XQndZaklpY21OVFEzSmljbU56WTNOak15RnhZSEJnY0dCeFl6TWpjMlBRRXpGUlFIQmlVR0Z4WXpNamMwSnlZSEJnRVdGeFlIQmdjbUJ5WW5KamMyTndZSEJoY1dId0VITXpJWEZqTTJOelkzQmlNaUp6YzJOelluSmdNMk56WW5KaWNtSXlJSEJoY1dGeFlYTmdGL0t6dzBHUVFFR1FrS0pCa0xBeVZaSFIweE5IVWJIb3RKUGc4UVZoOG5FZ2tpRGdVWExoZis5Z1lSQkFRZEFnSUlHZ3NCQjFFRkJFVXpUelliVENvdUZ4ZFNYUjhlTFNWSkV3VUNHelU3S1RZVUFRRVZJU0ZCSW1ZMk5SWVh5Rm94THhJVFVDVXVaRFV4RWhKUENRc2FWUUltSUFJVEhSNGJCd2dsRkRON2UyNTJHUVp5WW4rQlJCa05BaFlIQndrSlBSNFBMQklQQkJjRkJpRVBCd0loVW9hRFdVUVFFUVViYTNOeWJpd3dlSFpwVlNFS0FTSWtBVE1DQXhRVkJoSnFablY1L2o0SFoyUjJleTRWYUdCM2ZETUdCUVFBQUFRQUN2L25BbDBDTmdBTkFCUUFJUUNaQUFBQkJnY0dGeFkzTmpjMkp5WW5KaGNtQndZVkZqTTNCZzhCTURjMkZ6WTNOaWNtSnpZM0Z3WVBBUllYRmdjR0J4WVhGZ2NHRnhZekZqYzJQd0VYRHdFR0J5SW5KamMyTHdFaklpY0hGUVlIQmdjR0p5WW5KamMyRnhZWEZnY2lKeVkzSWhVR0Z4WVhGamMyTnpZM05qOEJOamMyTnlZSEJnY1dGeFlIQmdjR0p5WW5KamMyTnlZSEJnY0dCd1lISnpZM05qYzJGeFlYTmpjMkFSaFBJQlVQRkM0bElqQVRBUUVNaVFjTEJ3RVVRU3daR0FrVkZqQVVFUk1KQndVT0NBSU1BeWtQRFNJZ05nd0hDQThOQ2djS0l4d0REUWNNQmlRVEd6QVFFUk1OQkFjSUhBY0dOMGN6UkVvdEZRZ09HeHNLQWdFREVBNEhBd0lKQVFVUlRCUVVUU2tLSlFjR1JDVXhCZ013UHpFeUpBNGVJeUJPS2hvR0JCZzNJak1wS1VzekNnc0lCQWdDQnk5SkdpQXFJVE05U3dJQ01GWTZMVUVFQWpWTlZRUUVLL01QQVFJQ0N2c3JXMXNEQmg4VFJ6NDBHQ3dDQ0FrQkJ3TW9QVFk1TkF3U0dSODRNeUViQVNvRkZRMExDVFFXQVM4elF5MFRHUkVRQVpvMUpBSUJLeFFjTlFNQ0dBVUZGUUVQQndZS0FoRTdEd1FCQTBvU1h4RU9vVTRuQkFNdEFnRWFJVEZsUjBFQ0FUQU1EbE5YTkI4ZEFnRlFFQllRQ3dRSUUyc1JCd1FGR3hzQkFnQUNBRnNBQUFIN0FqRUFWUUJqQUFBbEJnY0dKeVluSmljR0J3WUhCZ2NtSnlZSE5qYzJGeFlYRmhjMk5UUTlBU1luSmljbUp3WWZBUllYRmdjR0J3WW5KamNYRmhjV056WTNOaWNtSnlZM05EYzJOellYRmhjMk56WVhGaGNXQndZWEJ4WVhGaWNtSnlZbkpnY0dCeFlYTmpjMkFmc2FOaXdOQWdjRkVRa0ZBZ2tLZVJRa0ZBME9KQkVHQndzWEV3d1dCQkljQkJjVUZpTVhEUkFsR3lNWUN3Y0ZDUUlER1JVSUJRc2lKQVFQRWdFUEx6azREQXdMTVRRbEJBTVBBd1VTTUFRVEQxSUlCZ1VkRmdVQ0JCRURIQm9IV0IwbUkwWVBjVkFWSWo4YkZ4bHhJUTBJQnljaUVRRUJEUm9SRTA4T0FtaFhDekFXQXdjU0ZpTWJJeTVGTXhRTktob05IQU1ER2hJSERCZ2dJd1VUYUFFRVZDWXVSeEFXTkJNVUlnTUVFU1V1SHlvU2ZXcnhFend3RGdrT0JSWlBUQWdiQndBRUFEUC8rQUlsQWpFQUpRQTdBRk1BWGdBQUJTSXZBU01WRkJjV093RVZJelV6TWpjMk5SRTBKeVlyQVRVek1oY1dCd1lIRnhZN0FSVUJGVE15RnhZVkVSUUhCaXNCRlRNMUl5SW5KalVSRnpJWEZoVVVLd0VURmhjekpnTW1KelkzTmljbUp5WWpCeU1WTXpJM05qVTBKeVlCNXpFZGtVd1BBZ00wMFRVTkJ3RU9CQU0xL25vSkIxd0tDamhjTWhUK0h5UVhDd1FXQ0Fna3NDUVpDZ0pvUENBU2JnU1lJQ0FhVG9FQ0FXc0pBUUVGU1E4VkhsZFhVUW9DTUJVSU5QNzNFUVVCSkNRUUJBTUJ3ZzhHQWlWdmNSNERBbTZxSGdJcUJSa0lCLzQrRmcwRUJBUWFCZ2NCN3dZcEZoNkEvdlVwQXgwQkVRUUJERmdQRWs0TUFoSzZUdzhSTGhRSkFBQUNBRDRCd3dIa0FyQUFPd0JZQUFBVEJoVVVGeWNtSnlZaklnY0dGUlFYRmhjV0ZSUUhCaU1pSnlZSEJnY2pNRGMyTlRRbk16QVhGaGN5TnpRbkppY21OVFEzTmpNeUZ4WTFOamNGRlRNVkl6VXpOU01ISXljakZUTVZJelV6TlNNMU14VVhOelV6RmRrRkNSOEZJQVFFSGdVQklDb0tGU1lRRVJjWEFnSURBeGtHQkFvWkJSVWVJd0VoS2dJY0t3NE9GaE1FQVFNQkR4RlVId0U0Q1RnQ0hsVVRFenM2UERrQ3NBb1pFd3NCR1FRQkV3SUNGUXdSQ0JNaEp4UUpFZ01GQ3djUURBMFFGZ3NkQXlJYkRSQUJFQ1VtRGdVT0F3TUlCaWVlSVNGNWFtaDNJU0dlSWdWa1pRUWlBQVAvL3dISkFsNENxd0FQQUNjQU5RQUFFeWNqRlRNVkl6VXpOU01ISXpjekZ6Y1ZJelVqRlRNM013Y2pOVE0xSXpVekZ5TW5JeFV6TlRjak5UTVZJeFV6TnpNSEl6VXp0d1E0TVlVd09BUWNCTTBFb2h3Nll3VVlCYm9jSExrRUZ3UmpPbWdpYUNKUEJ5SUl0aUlDVkRhZUlpS2VObGRYRWtjWFN4NUFJcDBpUEJvd0RpSWlJcDAzV1NJQUFnQWZBY29CL2dLckFBOEFMQUFBRXljakZUTVZJelV6TlNNSEl6Y3pGemNWTXhVak5UTTFJd2NqSnlNVk14VWpOVE0xSXpVekZSYzNOVE1WMkFRNE1JUXdPQVFkQk0wRStCRlVId0k0Q0RnREgxVVNFanM2UERnQ1ZEYWVJaUtlTmxkWE5aNGhJWGxxYUhjaElaNGlCV1JsQkNJQUFBUUFWLy80QWdFQ0xnQVZBQjBBSkFBcUFBQUZJVFVCSXlJSEJnOEJJemNoRlFFek1qYzJQd0lCQnpNM05qYzJNeE0zQndZSEJpc0JBVFVqQVJVQnkvNk1BVVYrTWpBZENBd2tLUUZnL3NLS096VVVEQlVnL3B3aEFna1BRQ3NrbWlvT0dqd3BKYWNCVHlQK3F3Z2NBZlVxR2hzc3NCMytERG9YR0N3REFXbVBJREVsR2YzcWxCMDVKUmtDRGdqOThRY0FBUUFBQUFBQ1V3SThBRFVBQUNVek54Y0hJelUwTnpZM05qVTBKeVlqSWdjR0ZSUVhGaGNXSFFFakp6Y1hNelUwSnlZbkpqVTBOell6TWhjV0ZSUUhCZ2NHRlFHMFVoMHdOc00wTGdrTlFDczdhU29UTURFTERNTTdOUjFTS1RVT0RGMUdYWFJMUVRzckJ3dFVUeE9RWmk0OU54RVlGbEl0SGt3akxpUTRPaG9aR0dhT0ZVOFNHek5DSnlBaGJVQXhSejVaUkVvM0RCUVRBQUVBQVAvM0FsTUNNd0ExQUFBQkZSUVhGaGNXRlJRSEJpTWlKeVkxTkRjMk56WTlBU01ISnpjekZSUUhCZ2NHRlJRWEZqTXlOelkxTkNjbUp5WTlBVE1YQnljQnRDb3lEZzVlUmx4MFMwRTlLd2NKVWgwMU84TTFMd2tMVGlVelh5NFpNREFMRGNNMk1CMEIzeEllTkQ0aklTUnVRREJIUFZwRlRqZ01FZzhTVHhXT1ppNUFPQk1WRTJJb0UwWW1NU1k0T0JjYUdtYVFFMDhBQUFFQXZBQUFBWjBDTXdCUUFBQUJCZ2NHQnhZVkZnY0dKeVluSmpjMk56WW5KaWNtTnpZek1oY1dGeFlIQmhjV016STNOaWNtSnpZM05qOEJOak0yTnpZMU5pY21KeVlIQmhVR0Z4WTNOamNVQndZbkpqYzJOelkzTmhjV0J4UUJqUklURFFoSkFURTBRaE1USEJnREF4WVFCUWdXRHdVSEtTRU9Bd1FPQncwRkJpTUVCQ1lrUGdFWUNRTUxCUWcxQ1FVQ1B4b1NHUVFDQnh3Z0Z3UUVJQXNGUHcwS0tnb0xJakUxQVFIQ1FoSU5FaWhqVlQ1REdRY1BHVTRKQ1RvTkJBSUdBUUU4R2hZYUx4Y0RBVHhHTnpNRUJ4b0pCaGNGQVEwSERDc21Ed1FGRWdRQkZCOGlFQU1HRVFvRUFoWkVOU0VKQkE0Y0h5NElBQUFCQUZ6L2NnSVVBZDBBSEFBQUFUUW5KaU1pQnhZWEZoVVVCd1luSmpjMk56WXpNaGNXRlJFekZTTUJHeUFYRlNFVERRb0NJUm9TQ3dFQ0xTQXFUaTRqbi9rQk1TVWtHUndERXdRRE53MEpHUkFZUXl3Z015YzgvbjlVLy84QUJRQUFBbElDTWhBR0FDNEFBUC8vQUIwQUFBSTdBeEFRSndIK0FEZ0FuQkFHQUNRQUFBQURBQmYvOHdKS0Fqa0FEUUFYQUprQUFCTUdCd1lYRmpjeU16WTNOaWNtRnlZSEJnY1VGeFkzTmpjR0J6WUhBZ2NHSnlZbkpqYzJGeFlIQmljbUp3Y0dGeFkzTmpjMk56WTNOamNtSnlZSEZoY1dCd1luSmljbU56WTNOamNtSnlZSEJnY1VGeU1tSnlZM05oY1dGelkzTmhjL0FUWTNGd2NqRmhjV0J4WVhGZ2NHQndZbkpqYzJOellmQWljbUJ3WUhCaGNXTnpZM05pY21Kd1lIQmljbUp5WXpNaGMySnpRbkp1a2pFaGdQRURJQ0Fqb1FFU1VZNXhJTkV3RUJCUlFNSGkwV0JSbElneUVsUVJNS0N3ME9FZ2NFRFFRREJ3SUNFbDFGTVFzdEF3SXdXQ2xMV1Q1REVoRWtIREU1RVE4WUF3SVZIUkVRVlNrV0Fnd09DZ0lJTnpGTERSWTRTV1pBRHdFQ0NnTVNBU2NEQkRrbER4a3lJek12RncwRERURUhCeEFDRGpFUEFRRUdKUkFRS3hjV0R3WVNDUkFVRXdnQkJDa01GaUVCQkFZQjhTSTJTazlUQWdaTVQxSTJ6QW9FQkFNREF3a0RBZUlqU2hGYy92SWpDUVVKTlJvS0RRb05DZ1lGQWdjREJBZzhCUUp6R29vSUI0azZNd1VGTkM1b1lEc3VCZ2RkVlVZSEJTMGhDQU1OVWl3K0dpUWRFR2s4TnhJQ0NqTURCRUVJQVFFRUVBb3RRa2NzR1RCWFFTNEZCU1FVR2swRkFRRUNEQUVEUWdZR0p3MEdBd2xLUlRvWUVBZ0lDUTBHQ1JjSUtrMFdFQmdBQWdCM0FBQUI0UUk2QURjQVNRQUFBUVlIQmdjR0l5SW5KamNtQnhRWEZoY1dGUlFIQmdjV0Z4WTNOaWNtSnpjek1oY1dGUlFIQmlNaUp5WTFORGMyTnhZWEZoY1dOellISmljbU5UUTNOZ2NHQndZWEZoY1dOellCM1FVU0F3TW5HU0lOQndJZEFTc3pEUXMwSHlnL1JCY0tBd0VHT2hZRExRb0NMQ3M0VzBROEVXYTJBZ29GQndvTENJMEpMeDBlREFzTENqY1VEelVjREFZQjF3a0tBZ0lkTEJjZ0JDOFdKaTBYRkJRK0p4Y0RVUU1CRkFjSExBY05Kd2NKTVMwc1dsQmRMQ1hlQkFVMkZ3b05Bd1B6RWs0eEhoODNGZ0lDRWw5WlB5SVNFZ3dBQUFJQVJRQUFBZ2NCcXdBR0FCNEFBQUVtSXlJSEZUTVhJUlVXTXpJM0Z3WUhCaU1pSnlZMU5EYzJNeklYRmhjQmxDaEdQQ2pTYy82N0tVQlVQaW8rWHhBUFpVWTdURUJWWjBNMEF3RW5NREFiVHpnekxUODBDZ0pIUFZGZ1FEWklPVXdBQWdCQUFBQUNEUUdyQUFZQUlBQUFBU1lqSWdjR0J3VWhGaGNXTXpJM0Z3WUhCaU1pSnlZM05qYzJNeklYRmdjd0FiSVdXa0V6REFVQlJQNmRCaWtiSjFWSEhFbGpEdzVqTmpJU0ZWcExWR1EwS3cwQkRFczFEQXBQT2g0VExUODFDZ0ZFUFZSaFFEVkZPVThBQWdBdC8vY0NLd0l5QUFjQWRRQUFBUllYRmljbUp5WWpCZ2NHRnhZWEZoY1dOelluSmljbUp5WWpKZ2NHRnhZWEp5WW5KamMyTnpZekZoY1dCd1lIQmlNbUp5WW5KamMyTnpZekppY21OellYRmhjV0Z4WUhCZ2NHSnlZbkpqYzJOellmQVNZSEJnY0dGeFlYRmpNMk56WW5KaWNtSXdZSEJoY1dGeFlYRmhjV0J3WW5KZ0VMQ2hNVUFRRVFGQ1E3S3pBVkhGa1NGVm80TVEwQkFnNDRCQVF2TURJRkFRa0xDZ0VOSlNwQUNBaE9HQklwTDFFT0QzVkZIdzhhTVRCVUNnb1BCUTFVTUVWQ01oY0tHaTRnTkMwZUNRVVJJQTRTR0NFREdSUW1Dd1lIRFMwSUJ6NFpGQThVUkJjWk1UTTZDd1FIRUJBZERnWUVDaDRkQVZNU0J3Y0tCUWtJQ0RsQ1NtUVVBd0lHUWpwQ0JnWXpCUUVET2owNkNoZ0pHZ1F2UGtZSEFRSk5Pa0pKQ3dFRFJSOHFSMFZFQ2dFWUhsc25Gd0lCTXhjY1JpOGhCQU1pQ3d3b0tCRUlDZ2NJQXdnUEtSVVJJUVlCQkRNbUxEc1RCd0VxTVRRU0dRSUZDUk1KQmc0TUNRQUFBd0FPLy93Q2d3STRBQWNBRFFDUUFBQUJOamMySnlZSEJnTTJOellqSWdjMk56WTNKaWNtSnlZakpnY0dGeFlYRmhjV014WTNOaWNtSnlZbk5SWVhGaGNXQndZaklpY21KeVkzTmpjMk14WVhGaGNXRnpZM05oY1dGeFlIQmdjR0J3WUhOajhCTmhjV0Z4WUhCZ2NHQnljMlB3RUdCd1lIQmdjR0J3WW5KaWNtTnpZWEZnY0dKeVluQmdjR0Z4WVhGamMyTnpZL0FRWUhCZ2NWQnlZMUpqYzJBaVJLQmdJREFnMFZPUmdGQXc0TW5DSWxDeEE3RWhBd0JRWkxQandHQVFNUk9RZ0hNaWNoQ0FRRUJnY1FDUVFKRGlzcU5qNGhDd1VWTkRkYURBeEZKQTBGQ2h3MkxRd0pHUWdKT0JzYkNBTWJLaUVaQWdZY0VRVVFQQUlFQ0E0VUR3c0ZOZ2dRRGpZMkxrUllPaHdJQ2hBUERoRURBZzhIQndVREF3VVRWaDRkVml3UEV4RlJEUUVCQndVR1NCVUJ5QnNpQ0FjSEF3TCs4QXNPQzBGY1NSWVhGQ3NwQlFFRE96cENDd282Q2dFQlFEWXBGUVlLQlFRS0RRY2NORGMxTFE4U1IwUkhDUUVCS2c0U0lRaEpGZ1lCQVJjZklBOEhFQWN3Z2dVS0Zpa0RBZ3NrR2hFSERSQUNEQlFMRFFJeUdWZ2VHZ0lDTGhVYUlBb0tDQW9NQ0FJQkNnRUZCZzQxRXdZQkEwb2FNUzhISWdRRkRRTUtCRElSQkFBQkFDa0FBQUkxQWpJQUZRQUFKVFVqRlNNMU14VXpOU00xSVJVakVUTVZJU2N6RndGNWJFbEpiS2dCWkdGaC9nQU1OQXhVY1MvQlBzVlVWUDUyVkw1cUFBQUJBQXovOXdKWUFqNEFyd0FBQVFZSEJpY21KeVluSmdjR0J3WVhGaGNXTnpZM05qYzJNUmNHQndZSEJpY21KeVkzTmpjMkZ4WVhGamMyTnpZL0FUWS9BUmNQQVFZUEFUYzJOelkzTmpjMk54Y1BBUVlIQmdjVUZ4WVhGamMyTnpRbkppTWlEd0luTkRjMk56WVhNaGNXQndZSElpTW1KeVluSmpjMk56WTNOamNHQndZSEJnY0dCd1lQQVNjMk56WTNOaFUzQndZSEJnY0dCd1lIQmljbUp5WTNOak15RnhZSEJpY21KekExQmhVR0Z4WVhGak0yTnpZM05nR0FGUnNaSHhNSERSOEpDQ1VOQ0FvUktRNE5EQkVDQWdjREF3a09EaVlrRXdvWEtCTWNLaDRIQkJJbEZ4c01CZ0VMRWhBSEFnb0RFd2dJRnhzd0tnTURBeElPQmtJS0NDY0JBUWdOR1I4Z0FRRUVDaG9PRXdRR0FoUUVFQm9UQndrZklDUUVCQnNRQmdJSUpSQXFCZ1VVQmc4U0tTc0NCQTBrQ2dvaEZBc0dEQkVyQ0JFVEp3b0tOaWNxTnlrbkhna0lFQVFFRmdRRURRSUREQU1GQXdVS0tCd2RVbElKQ2pjQnd4a05DaDBTR0RFUEJBRUVLQndqT2hVSEFRRVVBZ0lIRFFZTERRSUdLaGNlU0NnVEFRSTBEQTA4Q1FjZURnWUJHU0FjRGhKMUdYWXVFa0kxWVRVRUJBUVVCeEcxSHlLblJBZ0VIQU1IUDBFc0JRUU5Ma0lPQmdjRVRnc2tBUm9wU0VrRkJCME1EVDZhUTEwUENpNE1FaG83WmdVS0huSWdHMWNMSVJVdFkvVUNMQ1lwY0J3YmtqSTJBZ0VsSENrakRnTVdGQU1CQVFRSkN3SUJEQlVuSEJNQnpCY2JsZ0FBQWdBOC8vZ0NGUUd5QUE4QUh3QUFBVElYRmdjR0J3WWpJaWNtTnpZM05oY2lCd1lIQmhjV016STNOamMySnlZQllsOHpNQllZWEZOWFh6TXlGeGhjVTBCRE9pWUtFQ3dnTGtNN0pBc1BLeDhCc2taQlZsNURQRVZCVjExRVBGbzNJeWs3S2g0NEl5ZzhLUjRBQXdBVC8vb0NQQUtaQUFNQUxnQTVBQUFCTXdNak54WVhNamMyTlRRbkppc0JOVE15TnpZMU5DY21JeUlISnpZM05qTXlGeFlWRkFjV0Z4UUhCaU1pSndFM014RXpGU00xTXpVSEFVVWpaQjZiSHlBckV3WWdCQVFkR1J3TUF4OE5EeU1sS2pBeENBazdJeFloSGdOQkhSNDVNdjYrV1RoTTBrNDZBcG45WjFrbEFTSUxDeW9KQVRrWEJnVVhDZ1FySlRnR0FTVVhJU1lhSGpwQUhRdzhBZ0E5L3VVMk50a29BQUFEQUFiLy9BSkVBcGtBQXdBakFGQUFBQUV6QXlNRE5UUTNOak15RnhZVkZBOEJCaFV6TlRNVkl6VTBQd0UyTlRRbkppTWlGUUVXTXpJM05qVTBKeVlyQVRVek1qYzJOVFFuSmlNaUJ3WUhKelkzTWpNeUZ4WVZGQWNXRnhRSEJpTWlKd0ZKSTJRZTVEOGVJalVsRzB0TEhHbzIyRWhMSHhnUkZFWUJTaDhnS2hNR0h3UUVIUmtjREFNZERSRWhJd0lDS3pNMUJRWTdJaFlnSFFSQ0hCNDdNQUtaL1djQit3OUJIdzhoR1NFOU1UQVVGQ1pjTlRjdUxoY1hEdzhLUmY1Z0p5TUxDeW9KQVRnWUJRWVZDd1VuQWdJbE9RVWtHQ0VuR0NFM1FCME1QQUFBQXdBVC8va0NRUUtaQUFNQURnQXNBQUFCTXdNakF6Y3pFVE1WSXpVek5RY0ZGVE15RnhZVkZBY0dJeUluSmljM0ZoY3lNekkzTmpVMEt3RTFNeFVCUWlOa0h0QlpPRXpTVGpvQlpTZGtHQWRKSGlFN1FBSUNIek1qQlFVM0V3WkxYOXdDbWYxbkFqWTkvdVUyTnRrbzcwWkVFaFpGSGd3cUFnRXZJUU1pQ2dzMHREWUFBd0FHLy9rQ1FRS1pBQjhBSXdCQkFBQVROVFEzTmpNeUZ4WVZGQThCQmhVek5UTVZJelUwUHdFMk5UUW5KaU1pRlNVekF5TVRGVE15RnhZVkZBY0dJeUluSmljM0ZoY3lNekkzTmpVMEt3RTFNeFVHUGg4aE5pVWFTMG9jYVRiWVNFc2ZGeEVWUmdFTEkyUWVyU2RrR0FkSkhpRTdRQUlDSHpNakJRVTNFd1pMWDl3Qit3OUFJQThpR0NFOU1TOFZGQ1pjTlRjdUxoY1hEdzhLUlo3OVp3RWFSa1FTRmtVZURDb0NBUzhoQXlJS0N6UzBOZ0FEQUJ2LytRSkJBcGtBS2dBdUFFd0FBQk1XTXpJM05qVTBKeVlyQVRVek1qYzJOVFFuSmlNaUJ3WUhKelkzTWhjV0ZSUUhGaGNVQndZaklpY0JNd01qRXhVek1oY1dGUlFIQmlNaUp5WW5OeFlYTWpNeU56WTFOQ3NCTlRNVlJ4OGdLaE1HSHdRRUhSa2NEQU1lRFJBaUl3RUNLenM0T3lJV0lCMEVRaHdlT3pBQkx5TmtIcXduWkJnSFNSNGhPMEFDQWg4ekl3VUZOeE1HUzEvY0FYd21JZ3NMS2drQk9SY0dCUmNLQkNnQkFpVThBeVFZSVNZYUlEaEFIUXc4QVVEOVp3RWFSa1FTRmtVZURDb0NBUzhoQXlJS0N6UzBOZ0FFQUEvLytRSlJBcGtBQXdBaEFEQUFNd0FBQVRNREl4TVZNeklYRmhVVUJ3WWpJaWNtSnpjV0Z6SXpNamMyTlRRckFUVXpGU1UzTXhVekZTTVZNeFVqTlRNMUl6Y0hNd0Z5STJRZWxDZGtHQWRKSGlFN1FBSUNIek1qQlFVM0V3WkxYOXo5eExZL0l5TXBrU20ydGxsWkFwbjlad0VhUmtRU0ZrVWVEQ29DQVM4aEF5SUtDelMwTm0veDNUNGdQRHdnc25RQUJBQVQvL2dDU3dLWkFBb0FEZ0FwQURrQUFCTTNNeEV6RlNNMU16VUhKVE1ESXpjeUZ4WVZGQWNHSXlJbkpqMEJORGMyT3dFVkl5SUhCaDBCTmhjaUJ3WVZGQmNXTXpJM05qVTBKeVlUV1RoTTBrNDZBU0lqWkI3alBpSVROQndqUENJVU5DWXRVVkV1R0FrYUlDVVFCUjhNRHlnUEJCNE9Balk5L3VVMk50a29rUDFuMFRBYklUc2dFaThjSW5JNEpoczRKZzRORlE4NEh3b0xJQTRHSUFvS0hnOEhBQVFBQy8vNEFrc0NtUUFiQUI4QU9nQktBQUFURlRNeUZ4WVZGQWNHSXlJbkppYzNGaGN5TnpZMU5Dc0JOVE1WTnpNREl6Y3lGeFlWRkFjR0l5SW5KajBCTkRjMk93RVZJeUlIQmgwQk5oY2lCd1lWRkJjV016STNOalUwSnlab0oyVVlCa2NnSVRrL0F3UWZPU2MzRXdaTFg5eGZJMlFlekQ0aUV6UWNJendpRkRRbUxWRlJMaGdKR2lBbEVBVWZEQThvRHdRZURnSkJSVVlTRlVRZURTa0NBeThpQWlFS0N6UzBObGo5WjlFd0d5RTdJQkl2SENKeU9DWWJPQ1lPRFJVUE9COEtDeUFPQmlBS0NoNFBCd0FGQUIvLy9BSkNBcGtBQ2dBV0FDSUFPZ0ErQUFBVE56TVZNeFVqTlRNMUJ3RTBKeVlqSWdjR0ZSUVhNaWNVTXpJMU5DY21JeUlIQmdjME56WXpNaGNXRlJRSEZoVVVCd1lqSWljbU5UUTNKZ016QXlNZlNpOC9yMEV4QWRFZUNRc2ZEUVV4TW1BdUx4Z0tEU1VJQVRnOEZSVTFIeE1jSURRWUgxSVRCU0FjSnlOa0hnSkNNK3d0TGJVaC9sd2dEZ1FlQ3d4QkFkQWhJaEVJQXhjREF6Z1dDQ0lWSGlnWkhpMVFIdzVQRkJjdElCa0J2ZjFuQUFVQUEvLzdBak1DbVFBREFEQUFQQUJIQUY4QUFBRXpBeU1ERmpNeU56WTFOQ2NtS3dFMU16STNOalUwSnlZaklnY0dCeWMyTnpJek1oY1dGUlFIRmhjVUJ3WWpJaWNGTkNjbUl5SUhCaFVVRnpJbkZESTFOQ2NtSXlJSEJnYzBOell6TWhjV0ZSUUhGaFVVQndZaklpY21OVFEzSmdGR0kyUWV1QjhmS3hNR0h3UUVIUmdkREFNZERSRWhJd0lDS3pNMUJRWTdJaFlnSFFSQkhSODZNQUg0SGdrTElBNEVNakpnWEJjS0RTUUpBVGc4RlJVMUh4TWNIellXSGxBVUJoOGJBcG45WndGL0p5TUxDeW9KQVRnWUJnVVZDd1VuQWdJbE9RVWtHQ0VuR0NFM1B4ME5QT1FoRFFRZkNneEFBYzhoSXhBSUJCY0VBemdXQ0NJVkhTZ2FIeXhTSGcxTkZSZ3NJaGdBQUFVQUJ2LzdBak1DbVFBREFCOEFLd0EyQUU0QUFBRXpBeU1ERlRNeUZ4WVZGQWNHSXlJbkppYzNGaGN5TnpZMU5Dc0JOVE1WRXpRbkppTWlCd1lWRkJjeUp4UXlOVFFuSmlNaUJ3WUhORGMyTXpJWEZoVVVCeFlWRkFjR0l5SW5KalUwTnlZQlhTTmtIcHNuWlJnR1J5QWhPVDhEQkI4MExEWVVCa3RmM1BRZUNRc2dEZ1F5TW1CY0Z3b05KQWtCT0R3VkZUVWZFeHdmTmhZZVVCUUdIeHNDbWYxbkFrQkdSaElWUkI0TktRSURMeU1CSWdvS05iUTIvamdoRFFRZkNneEFBYzhoSXhBSUJCY0VBemdXQ0NJVkhTZ2FIeXhTSGcxTkZSZ3NJaGdBQlFBRC8vc0NNd0taQUFNQURRQVpBQ1FBUEFBQUFUTURJd01USXhVak5UTVZCZ01GTkNjbUl5SUhCaFVVRnpJbkZESTFOQ2NtSXlJSEJnYzBOell6TWhjV0ZSUUhGaFVVQndZaklpY21OVFEzSmdFL0kyUWVsRmxzTnVrSlhBRjBIZ2tMSUE0RU1qSmdYQmNLRFNRSkFUZzhGUlUxSHhNY0h6WVdIbEFVQmg4YkFwbjlad0VtQVJzZFV4RVovdG11SVEwRUh3b01RQUhQSVNNUUNBUVhCQU00RmdnaUZSMG9HaDhzVWg0TlRSVVlMQ0lZQUFBQ0FGTUFBQUdaQXBrQUF3QU9BQUFCTXdNakF6Y3pGVE1WSXpVek5RY0JkaU5rSHNSS0wwQ3ZRREFDbWYxbkFrZ3o3QzB0dGlJQUFBTUFKUC9PQWpRQjNnQVBBQjhBS2dBQU56UTNOak15RnhZVkZBY0dJeUluSmpjVUZ4WXpNamMyTlRRbkppTWlCd1kvQVRNVk14VWpOVE0xQnlSVFRHbHlUa2hUVEdseVRrZzFTRHhQWUQ4MFNUeE9ZVDh6ZGtvdlFLOUFNTlp5VGtoVFRHbHlUa2hUVEdsZ1B6UkpPMDloUHpOSlBBNDA3QzR1dENFQUFBTUFKUC9PQWpRQjNnQVBBQjhBUHdBQU56UTNOak15RnhZVkZBY0dJeUluSmpjVUZ4WXpNamMyTlRRbkppTWlCd1lYTlRRM05qTXlGeFlWRkE4QkJoVXpOVE1WSXpVMFB3RTJOVFFuSmlNaUZTUlRUR2x5VGtoVFRHbHlUa2cxU0R4UFlEODBTVHhPWVQ4emFUZ1lHakFlRkVNN0ZsZ3N0RDg5R0JRT0VEcldjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R3a0RUY2FDeDhUR2pRckpSRVFJRTB0TGljbUVoTU9EQWc2QUFBREFDVC96Z0kwQWQ0QUR3QWZBRWdBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dGeFl6TWpjMk5UUW5KaXNCTlRNeU56WTFOQ2NtSXlJSEp6WXpNaGNXRlJRSEZoY1VCd1lqSWlja1UweHBjazVJVTB4cGNrNUlOVWc4VDJBL05FazhUbUUvTTVrYUdpVVBCUnNEQXhnVUdBb0NHZ3NNSENBakxETTBIQkFiR2dJNUZ4Z3dLZFp5VGtoVFRHbHlUa2hUVEdsZ1B6UkpPMDloUHpOSlBKSWdIUWtJSkFjQkx4UUZCQk1JQXlRZ05DRVRHaUFVRmpRM0Z3b3lBQUFFQUNUL3pnSTBBZDRBRHdBZkFDNEFNUUFBTnpRM05qTXlGeFlWRkFjR0l5SW5KamNVRnhZek1qYzJOVFFuSmlNaUJ3WVhOek1WTXhVakZUTVZJelV6TlNNM0J6TWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL00yaUpMaG9hSDIwZ2lZbEVSTlp5VGtoVFRHbHlUa2hUVEdsZ1B6UkpPMDloUHpOSlBIbTFwaThYTGk0WGhWWUFBd0FrLzg0Q05BSGVBQThBSHdBNUFBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmpjVk16SVhGaFVVQndZaklpYzNGak15TnpZMU5Dc0JOVE1WSkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQek8wSVZNVkJUOFpHakE1R2l3ak1BOEVQbEM0MW5KT1NGTk1hWEpPU0ZOTWFXQS9ORWs3VDJFL00wazhDam82RHhFN0dBb21KeDRlQndrcmxpMEFCQUFrLzg0Q05BSGVBQThBSHdBNkFFb0FBRGMwTnpZek1oY1dGUlFIQmlNaUp5WTNGQmNXTXpJM05qVTBKeVlqSWdjR0Z6SVhGaFVVQndZaklpY21QUUUwTnpZN0FSVWpJZ2NHSFFFMkZ5SUhCaFVVRnhZek1qYzJOVFFuSmlSVFRHbHlUa2hUVEdseVRrZzFTRHhQWUQ4MFNUeE9ZVDh6MFRZY0RpMFlHelVjRGk0ZUpVTkRKeFFIRmhvZ0RRTWJDZ3NqQ3dNY0N0WnlUa2hUVEdseVRraFRUR2xnUHpSSk8wOWhQek5KUERFckZSb3pHZzRyRmhwZkx5QVdMeUVMQ2hJTkx4c0lDQndNQkIwSENCc01CQUFBQXdBay84NENOQUhlQUE4QUh3QXBBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJoYzNJeFVqTlRNVkJnY2tVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL002WkxXeTNEQkZEV2NrNUlVMHhwY2s1SVUweHBZRDgwU1R0UFlUOHpTVHplN0JoR0R3ei9BQVVBSlAvT0FqUUIzZ0FQQUI4QUtnQXpBRXNBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dGelFuSmlNaUJ3WVZGREluRkRJMU5DY21Jd1lITkRjMk16SVhGaFVVQnhZVkZBY0dJeUluSmpVME55WWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL00vMGFDQWdiQ3dSVVVFd1VDQW9oTlRVUkVEQVlEaGdhTVJFV1JSQURHaGpXY2s1SVUweHBjazVJVTB4cFlEODBTVHRQWVQ4elNUeDVIQW9ER3dnSk5xMGNIUTRIQWdRVU1CSUZIeEVXSVJZYUpFa1hDRVFQRWlVY0V3QUVBQ1QvemdJMEFkNEFEd0FmQURvQVNnQUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZWElpY21OVFEzTmpNeUZ4WWRBUlFIQmlzQk5UTXlOelk5QVFZbk1qYzJOVFFuSmlNaUJ3WVZGQmNXSkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQelBTTkJ3UExoY2FOUndQTHg0a1EwTW1GUWNYR2lFTUJCd0tDeUFOQXhzSzFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4Y0NzV0dqTWFEaXNXR2w4eElCVXdJQXNMRVEwd0d3Z0lHd3dFR3dnSUd3d0VBQUFFQUNUL3pnSTBBZDRBRHdBZkFDSUFOQUFBTnpRM05qTXlGeFlWRkFjR0l5SW5KamNVRnhZek1qYzJOVFFuSmlNaUJ3WVhNeWNYTXljakJ6TVZJelV6TnlNMU14Y3pGU01rVTB4cGNrNUlVMHhwY2s1SU5VZzhUMkEvTkVrOFRtRS9NOEV3R1NBYkdrQWFHMjRqUVRSNVRTSnMxbkpPU0ZOTWFYSk9TRk5NYVdBL05FazdUMkUvTTBrOFJFV3lUVTBySzh3cjl5c0FBQVVBSlAvT0FqUUIzZ0FQQUI4QUpnQXhBRVFBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dGek15TlRRbkl4VXpNamMyTlRRbkppc0JOeFlWRkFjR0t3RTFNelVqTlRNeUZ4WVZGQ1JUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHp3RTRqSTA1SEh3b0VJZ1lGUjNvbUtRMFBxU0FncVNnVENOWnlUa2hUVEdseVRraFRUR2xnUHpSSk8wOWhQek5KUENNWkZnSE1JUXNPS1FzQ0ZCYzVRUmNISzh3ckh3NFFLQUFEQUNUL3pnSTBBZDRBRHdBZkFFWUFBRGMwTnpZek1oY1dGUlFIQmlNaUp5WTNGQmNXTXpJM05qVTBKeVlqSWdjR056SVhGalUyTnhjR0ZSUVhCeVluSmlNaUJ3WVZGQmNXTXpJM0Z3WUhCaU1pSnlZMU5EYzJKRk5NYVhKT1NGTk1hWEpPU0RWSVBFOWdQelJKUEU1aFB6UFVJaE1HQVFVZ0NRb21FUjhHQmlZWERpUVNGUjBhSWgweEJnVStKQmcwSDlaeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQREFRQkFRTUNRZ1hDeEFVQ1I0SEFTa2FJemdmRUI4Z0pBVUJQQ1l3VEN3YUFBQUVBQ1QvemdJMEFkNEFEd0FmQUNvQU9RQUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZWE16STNOalUwSnlZckFRY3pOU00xTXpJWEZoY1VCd1lyQVNSVFRHbHlUa2hUVEdseVRrZzFTRHhQWUQ4MFNUeE9ZVDh6clN3dUdROGhGaDhzVWlRa2prRWhEd0VoSURHTzFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4d0N3YUlTOGZGc3ZMSzB3akh6Z3ZMUUFBQXdBay84NENOQUhlQUE4QUh3QTNBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJnVVZJelVqRlRNM013Y2pOVE0xSXpVekZ5TW5JeFV6TlNSVFRHbHlUa2hUVEdseVRrZzFTRHhQWUQ4MFNUeE9ZVDh6QVNNbFNuOEdId2J3SkNUdkJSNEZmMHJXY2s1SVUweHBjazVJVTB4cFlEODBTVHRQWVQ4elNUd1ZXeDVoSjFNc3l5dE9JejhTQUFNQUpQL09BalFCM2dBUEFCOEFOUUFBTnpRM05qTXlGeFlWRkFjR0l5SW5KamNVRnhZek1qYzJOVFFuSmlNaUJ3WTNGVE0xTXhVak5TTVZNeFVqTlRNMUl6VWhGeU1uSkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQelBNT0NZbU9GZTNNaklCQ0FZYkJ0WnlUa2hUVEdseVRraFRUR2xnUHpSSk8wOWhQek5KUEFJN0dXUWdaU3dzeXl0aU53QURBQ1QvemdJMEFkNEFEd0FmQUVjQUFEYzBOell6TWhjV0ZSUUhCaU1pSnlZM0ZCY1dNekkzTmpVMEp5WWpJZ2NHTnpJWEZqYzJOeGNHRlJRWEJ5WW5JZ2NHRlJRWEZqTXlOeU0xTXhVR0J3WWpJaWNtTlRRM05pUlRUR2x5VGtoVFRHbHlUa2cxU0R4UFlEODBTVHhPWVQ4ejN5WU9CUUVCQlNFSkNTWVRLREFUQ0MwT0Rqd0RKRXNEUXc4UlB5VVdOQ0hXY2s1SVUweHBjazVJVTB4cFlEODBTVHRQWVQ4elNUdzZFQVFFREFrSEd3Y09GZ2tqQXpnV0YwWWJDVkVsSldJVUJEMG1MMGt0R3dBREFDVC96Z0kwQWQ0QUR3QWZBRHNBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dGek0xSXpVekZTTVZNeFVqTlRNMUl4VXpGU00xTXpVak5UTVZJeVJUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHpuSEVrZGlNamR5VnhKSFlqSTNZazFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4SEM4cks4c3NMRzV1TEN6TEt5c0FBQU1BSlAvT0FqUUIzZ0FQQUI4QUt3QUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZM0l6VXpGU01WTXhVak5UTWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL003dFgyVlJVMlZmV2NrNUlVMHhwY2s1SVUweHBZRDgwU1R0UFlUOHpTVHdRS3l2TEt5c0FBQU1BSlAvT0FqUUIzZ0FQQUI4QU9BQUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZWEZCY1dNekkzTmowQkl6VXpGU01WRkFjR0l5SW5KajBCSkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQek9kQ0F3Zkt3Y0JXcm95SXhva05CNE8xbkpPU0ZOTWFYSk9TRk5NYVdBL05FazdUMkUvTTBrOFhEa1FHU1lHQlpnc0xLMGlGeEVzRlJZNUFBQURBQ1QvemdJMEFkNEFEd0FmQUQ4QUFEYzBOell6TWhjV0ZSUUhCaU1pSnlZM0ZCY1dNekkzTmpVMEp5WWpJZ2NHTnpNVkl3Y1dGeFlYTXhVakppY21Kd2NWTXhVak5UTTFJelV6RlNNVk55TWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL005T0VPRkk2TlFFQ0xVZ3ZJeEFVRmk2RktpcCtKMG9QMW5KT1NGTk1hWEpPU0ZOTWFXQS9ORWs3VDJFL00wazhQQ3BYRUZzREF5dFVGd29GRnprcUtza3FLazlQQUFNQUpQL09BalFCM2dBUEFCOEFMUUFBTnpRM05qTXlGeFlWRkFjR0l5SW5KamNVRnhZek1qYzJOVFFuSmlNaUJ3WTNJelV6RlNNVk16Y3pCeU0xTXlSVFRHbHlUa2hUVEdseVRrZzFTRHhQWUQ4MFNUeE9ZVDh6akN1R0xXY0lMUXJzTE5aeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQQnNySzh4SWN5c0FBQU1BSlAvT0FqUUIzZ0FQQUI4QVBBQUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZbEZUTVZJelV6TlNNSEl5Y2pGVE1WSXpVek5TTTFNeFVYTnpVekZTUlRUR2x5VGtoVFRHbHlUa2cxU0R4UFlEODBTVHhPWVQ4ekFWY1ZiQ2dDU0F0SUJDaHVHQmhNUzAxSjFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4Rk1zc0xKdUlocGtzTE1zckJZS0RCQ3NBQXdBay84NENOQUhlQUE4QUh3QTFBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJqY1hOU00xTXhVakZTTW5JeFV6RlNNMU16VWpOVE1rVTB4cGNrNUlVMHhwY2s1SU5VZzhUMkEvTkVrOFRtRS9NNGVkSjNJY0txTUJLSFFkSFU3V2NrNUlVMHhwY2s1SVUweHBZRDgwU1R0UFlUOHpTVHhGMGFZcksvclpxeXNyekNzQUFBUUFKUC9PQWpRQjNnQVBBQjhBTHdBL0FBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmpjeUZ4WVZGQWNHSXlJbkpqVTBOellYSWdjR0ZSUVhGak15TnpZMU5DY21KRk5NYVhKT1NGTk1hWEpPU0RWSVBFOWdQelJKUEU1aFB6UFJQaVVZTWlFb1BTVVpNeUFvS0JjTktCRVRKeGNPS0JIV2NrNUlVMHhwY2s1SVUweHBZRDgwU1R0UFlUOHpTVHhDUFNjeFN5NGRQU2d4U2k0ZEx5MFpJRHdlRFN3YklEd2REUUFFQUNUL3pnSTBBZDRBRHdBZkFDZ0FPd0FBTnpRM05qTXlGeFlWRkFjR0l5SW5KamNVRnhZek1qYzJOVFFuSmlNaUJ3WVhNekkzTmpVbUp5TUhNelVqTlRNeUZ4WVZGQWNHS3dFVk14VWpKRk5NYVhKT1NGTk1hWEpPU0RWSVBFOWdQelJKUEU1aFB6UERUeUlQQndnd1QxSWtKS3cyRndzdEZCZGFPWXZXY2s1SVUweHBjazVJVTB4cFlEODBTVHRQWVQ4elNUeGxHd3dQTVFYTHl5c3NGQnM3SGc0MExBQUVBQ1QvemdJMEFkNEFEd0FmQUVjQVZ3QUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZWEJ6WXpNaGNXTXpJM0Z3WUhCaU1pSnlZaklnY25OeVluSmpVME56WXpNaGNXRlJRSEJpTWlOeUlIQmhVVUZ4WXpNamMyTlRRbkppUlRUR2x5VGtoVFRHbHlUa2cxU0R4UFlEODBTVHhPWVQ4enRCTU1DQTBaREFjTkdCZ2pFUVFGRGhnTUJ4d25HRDBwRFFRMEh5Yy9KQmcwSUNjU0VpZ1hEU2dSRXlnWERTZ1IxbkpPU0ZOTWFYSk9TRk5NYVdBL05FazdUMkUvTTBrOHFoZ0NGUXNWSEI0RUFSVUtHeDVPR3p3U0Uwd3NHandtTUV3c0d2Z3RHU0E4SGcwdUdoODlIUXdBQUFRQUpQL09BalFCM2dBUEFCOEFLQUJIQUFBM05EYzJNeklYRmhVVUJ3WWpJaWNtTnhRWEZqTXlOelkxTkNjbUl5SUhCaGN6TWpjMk5TWW5JeGNXRnhZWE14VWpKaWNtSnlNVk14VWpOVE0xSXpVek1oY1dGUlFIQmlNa1UweHBjazVJVTB4cGNrNUlOVWc4VDJBL05FazhUbUUvTTZWZk1Ra0NDakpmWWhnYUF3SXZUQmNaREJVck5ZZ2tKTU0zRndveUVoVFdjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R3OUh3WUhLZ0tFRFM4SEJDczdHZzBRUnlzcnl5d25FaGsvRndnQUF3QWsvODRDTkFIZUFBOEFId0JjQUFBM05EYzJNeklYRmhVVUJ3WWpJaWNtTnhRWEZqTXlOelkxTkNjbUl5SUhCaVVHRlJRWEp5WW5KaU1pQndZVkZCY1dGeFlWRkFjR0l5SW5KZ2NHQnlNd056WTFOQ2N6TUJjV0Z4WXpOamMwTHdFbU5UUTNOak15RnhZM05EY2tVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL013RXhCZ3dwQlNRSUNDY0hBU1l6QkNzc0Z4a2VIUVFCQmdJZ0NBUU1JQWNUSkFVRkt3UXBOU28wRXhVY0dBWUJCTlp5VGtoVFRHbHlUa2hUVEdsZ1B6UkpPMDloUHpOSlBFMFNIQm9NQVJ3SUFoY0RCQm9QRlFJWk5DNGJEeGdEQnhBSEZoQVFFeDRQSVFjQkJpWWpEeFVVTWk4VUNCTURCQWtKQUFBREFDVC96Z0kwQWQ0QUR3QWZBQzhBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dCU2NqRlRNVkl6VXpOU01ISXpjaEZ5UlRUR2x5VGtoVFRHbHlUa2cxU0R4UFlEODBTVHhPWVQ4ekFUZ0ZTVCtyUGtnRkpRVUJDQVhXY2s1SVUweHBjazVJVTB4cFlEODBTVHRQWVQ4elNUdzhSc3NzTE10R2NYRUFBQU1BSlAvT0FqUUIzZ0FQQUI4QVBRQUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZbEl4VVVCd1lqSWljbVBRRWpOVE1WSXhVVUZ4WXpNamMyUFFFak5UTWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL013RmpHQ1lpTGpzbEV4ZHBKeHdUR1RFVUJpWnAxbkpPU0ZOTWFYSk9TRk5NYVdBL05FazdUMkUvTTBrOEJwb21IeHN5R0JhYUxDeUZKQllPTFE0TmhTd0FBd0FrLzg0Q05BSGVBQThBSHdBdUFBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmlVakJ5TURJelV6RlNNWE55TTFNeVJUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHpBV2tYWnkxbkYyWWZUVTRmWnRaeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQQVQvQVA4cks4YkdLd0FBQXdBay84NENOQUhlQUE4QUh3QTBBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJpVXpGU01ISXljSEl5Y2pOVE1WSXhjM014YzNJeVJUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHpBUU5tRFVJZUxpOGFRdzltTHlVb0xDZ25MOVp5VGtoVFRHbHlUa2hUVEdsZ1B6UkpPMDloUHpOSlBEUXMvcWlvL2l3c2tJYUVqZ0FEQUNUL3pnSTBBZDRBRHdBZkFEMEFBRGMwTnpZek1oY1dGUlFIQmlNaUp5WTNGQmNXTXpJM05qVTBKeVlqSWdjR0pRY1hNeFVHSnpVekp3Y3pGUVluTlRNM0p5TTFNeFVqRnpjak5UTVZKRk5NYVhKT1NGTk1hWEpPU0RWSVBFOWdQelJKUEU1aFB6TUJRRXhNS0RkRkhDOHZHMFkzS1VwTEpYNGZMeTRmZmRaeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQQmxtWlNzQkFTczlQU3NCQVN0bFppc3JQajRyS3dBREFDVC96Z0kwQWQ0QUR3QWZBRFFBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dGek1WSXpVek5TY2pOVE1WSXhjM0l6VXpGU01ISkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQelBtSG1rZFlCSnBIMEJBSDJrU1l0WnlUa2hUVEdseVRraFRUR2xnUHpSSk8wOWhQek5KUEw4ckswaURLeXRWVlNzcmd3QUFBd0FrLzg0Q05BSGVBQThBSHdBdEFBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmdVM013Y2pOVGNqQnlNM014VUhKRk5NYVhKT1NGTk1hWEpPU0RWSVBFOWdQelJKUEU1aFB6TUJGZ1VxQ01tRld3TXJCY2lGMW5KT1NGTk1hWEpPU0ZOTWFXQS9ORWs3VDJFL00wazhyajVwQ3V3OWFRenJBQVFBSlAvT0FqUUIzZ0FQQUI4QUxBQk5BQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJnVW1JeUlIQmhVVUZ4WXpNamNYTXhVak5RWWpJaWNtTlRRM05qTXlGelUwSnlZaklnY25NRGMyTXpJWEZoVWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL013RVJNU0FsQ0FFYkRnNHBIeTR3WGlJbU9SMFBNUlFYSXk0dURRNGhLZzRlSlJZNkp4YldjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R4aERSd0VBeEFMQmlBZEt4WWNKQk1ZTVJjSkRRVWRDQUlUSVF3TElCSVdBQVFBSlAvT0FqUUIzZ0FQQUI4QU5BQkVBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJqY0hKemNWTmpNeUZ4WVZGQWNHSXlJbkZTTTFNemNpQndZVkZCY1dNekkzTmpVMEp5WWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL00zc2xBMWNjTEQwa0ZURWdKU1lpVlNaM0tCWUtJeElUS0JZS0l4TFdjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R3bkJ5c01neHd5SFNNNEpCWWNHQ3lHSXhBUkpCVUtJaEFSSkJVTEFBQURBQ1QvemdJMEFkNEFEd0FmQUVVQUFEYzBOell6TWhjV0ZSUUhCaU1pSnlZM0ZCY1dNekkzTmpVMEp5WWpJZ2NHSlRjWE1BY1VGUmNWQnlZbkppTWlCd1lWRkJjV016STNGd1lISWljbU5UUTNOak15RnhZa1UweHBjazVJVTB4cGNrNUlOVWc4VDJBL05FazhUbUUvTXdFVENDQUpDQ2dPSmdVR0tCWUpKaEFSSlIwV0lUVkRJeEl6SFNNZ0hBWFdjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R3REVBd2NCQUlSQVE0ZEJnRWxEZzRwRlFrV0l4c0JNaHNoT3lBVEVnUUFBQVFBSlAvT0FqUUIzZ0FQQUI4QU5BQkVBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJnVWpOUVlqSWljbU5UUTNOak15RnpVSE5UY1JNeWMwSnlZaklnY0dGUlFYRmpNeU56WWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL013RlJWQ0luT3lVV01SOG1LU0EwWWlaVkl4SVRLQllLSXhJVEtCWUsxbkpPU0ZOTWFYSk9TRk5NYVdBL05FazdUMkUvTTBrODZSZ2NNUjBrT1NNV0hVMEtMUlArNVVNa0ZRb2lFQkVrRlFzakVBQUVBQ1QvemdJMEFkNEFEd0FmQUNZQVBRQUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZRkppTWlCd1lIRnlNV0Z4WXpNamNYQmdjaUp5WTFORGMyTXpJWEZoY2tVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL013RVRGQzRsRXdNQnNMZ0pIdzBSTENBVkp6bzlKQlV6SFNRL0loSUIxbkpPU0ZOTWFYSk9TRk5NYVdBL05FazdUMkUvTTBrOFBpY2VCUVFvSWc4SEdDRWdBUzhkSWpvaEV6QWFId0FBQXdBay84NENOQUhlQUE4QUh3QTdBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJoYzFJelV6TlRRM05qTXlGd2NtSnlJSEJoMEJNeFVqRlRNVkl6VWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL001Y2xKVGtSRVN3Z0V4OFZLZ1lCYzNOV3F0WnlUa2hUVEdseVRraFRUR2xnUHpSSk8wOWhQek5KUE1XRkt5a3REd1FZSnhFQkpBVUVEeXVGS3lzQUFBUUFKUC9PQWpRQjNnQVBBQjhBUWdCU0FBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmlVVkl4VVVCd1lqSWljM0ZoY1dNekkzTmowQkJnY0dJeUluSmpVME56WXpNaGMxQnlJSEJoVVVGeFl6TWpjMk5UUW5KaVJUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHpBV3NuTWlNak16QUlIeThIQmpJU0JSRWtDUW83SlJZekh5UXdHRWNvRmdvakVoTW1Gd29rRWRaeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQRGdyd1NVY0ZCNHFGZ1VCSVFvTEloa0hBakFlSXpvakZTSWVLaU1RRVNRVkNpSVFFU1VWQ2dBREFDVC96Z0kwQWQ0QUR3QWZBRDBBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dGell6TWhjV0hRRXpGU00xTXpVMEp5WWpJZ2NWTXhVak5UTTFCelUzSkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQek9lTFNBcUpSY2ViQjhhRFJBaUt4NXJIeDlOMW5KT1NGTk1hWEpPU0ZOTWFXQS9ORWs3VDJFL00wazhJUm9pRkJSdEt5dFVIQkVKSG13cksrWUpLeE1BQUFRQUpQL09BalFCM2dBUEFCOEFLUUF0QUFBM05EYzJNeklYRmhVVUJ3WWpJaWNtTnhRWEZqTXlOelkxTkNjbUl5SUhCaGNqTlRNVk14VWpOVE0zRlNNMUpGTk1hWEpPU0ZOTWFYSk9TRFZJUEU5Z1B6UkpQRTVoUHpQQlVvQk16RkloSnRaeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQQ2Nyc1Nzcjl6SXlBQVFBSlAvT0FqUUIzZ0FQQUI4QU1RQTFBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJoY1dNekkzTmowQkl6VXpGUlFIQmlNaUp4TVZJelVrVTB4cGNrNUlVMHhwY2s1SU5VZzhUMkEvTkVrOFRtRS9NNXdUSmhNT0J6WmtLUlFaTEJXSkp0WnlUa2hUVEdseVRraFRUR2xnUHpSSk8wOWhQek5KUE9BTkZna0p3U3ZzTVJnTUR3RjRNaklBQUFNQUpQL09BalFCM2dBUEFCOEFOd0FBTnpRM05qTXlGeFlWRkFjR0l5SW5KamNVRnhZek1qYzJOVFFuSmlNaUJ3WVhNeWNIRlNNMU16VUhOVGNWTnlNMU14VWpCeGN6RlNNa1UweHBjazVJVTB4cGNrNUlOVWc4VDJBL05FazhUbUUvTTlVVE5BMVVKU1ZVS0JHRlBUUktSWXpXY2s1SVUweHBjazVJVTB4cFlEODBTVHRQWVQ4elNUeTVRQXRoTE9JTUt4cTNJU3NySzFvc0FBTUFKUC9PQWpRQjNnQVBBQjhBS1FBQU56UTNOak15RnhZVkZBY0dJeUluSmpjVUZ4WXpNamMyTlRRbkppTWlCd1kzQnpVM0VUTVZJelV6SkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQek90Um5SaTFrYldjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R3c0Vpd1ovdVVyS3dBREFDVC96Z0kwQWQ0QUR3QWZBRTRBQURjME56WXpNaGNXRlJRSEJpTWlKeVkzRkJjV016STNOalUwSnlZaklnY0dGelkzTmpNeUZ4WWRBVE1WSXpVMEl5SUhGVE1WSXpVMEp5WWpJZ2NHQnhVekZTTTFNelVqTlRNVk5qYzJNeklrVTB4cGNrNUlVMHhwY2s1SU5VZzhUMkEvTkVrOFRtRS9NOWtXSEFNQ01nc0NIazBRRmhBZVRRc0NBeGtMQVFFZWJCOGZRQWtnQndRbTFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4QkJzR0FUVUtDMjByaFRBZGJTdUZLd1FCR1FJQ2JTc3JoU3NhRXd3Q0FBQURBQ1QvemdJMEFkNEFEd0FmQUQwQUFEYzBOell6TWhjV0ZSUUhCaU1pSnlZM0ZCY1dNekkzTmpVMEp5WWpJZ2NHTnpZek1oY1dIUUV6RlNNMU16VTBKeVlqSWdjVk14VWpOVE0xSXpVekpGTk1hWEpPU0ZOTWFYSk9TRFZJUEU5Z1B6UkpQRTVoUHpPWUxTQXFKQmNmYkI4YURSQWlLeDVySHg5TjFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4QXhvaEZSUnRMQ3hUSEJJSkhtd3NMSVVyQUFBRUFDVC96Z0kwQWQ0QUR3QWZBQzhBUHdBQU56UTNOak15RnhZVkZBY0dJeUluSmpjVUZ4WXpNamMyTlRRbkppTWlCd1kzTWhjV0ZSUUhCaU1pSnlZMU5EYzJGeUlIQmhVVUZ4WXpNamMyTlRRbkppUlRUR2x5VGtoVFRHbHlUa2cxU0R4UFlEODBTVHhPWVQ4ejB6d2xGaklnSlRzbEZqRWdKU2NYQ2lRUkV5Z1dDaU1TMW5KT1NGTk1hWEpPU0ZOTWFXQS9ORWs3VDJFL00wazhIREVlSXprakZqRWVJemdrRmk4aUVCRWtGUXNqRUJFa0ZRb0FCQUFrLzg0Q05BSGVBQThBSHdBMkFFWUFBRGMwTnpZek1oY1dGUlFIQmlNaUp5WTNGQmNXTXpJM05qVTBKeVlqSWdjR0Z6VWpOVE1WTmpNeUZ4WVZGQWNHSXlJbkZUTVZJelUzTWpjMk5UUW5KaU1pQndZVkZCY1dKRk5NYVhKT1NGTk1hWEpPU0RWSVBFOWdQelJKUEU1aFB6Ti9KbFVmS1Qwa0ZURWZKaXNkS0g2ZUtCWUtJeElUS0JZS0l4TFdjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R6QTVTc1lIRElkSXprakZoMU5MeTlmSWhBUkpCVUxJeEFSSkJVS0FBUUFKUC9PQWpRQjNnQVBBQjhBTmdCR0FBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmdVekZTTTFNelVHSXlJbkpqVTBOell6TWhjMU14VWpCekkzTmpVMEp5WWpJZ2NHRlJRWEZpUlRUR2x5VGtoVFRHbHlUa2cxU0R4UFlEODBTVHhPWVQ4ekFTTW1mQ2dmS1Rza0ZUSWVKQ1FrVXlWMkpoY0tJaElUSnhVS0l4RFdjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R6QUxpNU1IREFlSWpraUZSc1hLb1FoRUJFakZRc2pFQkFqRlFvQUFBTUFKUC9PQWpRQjNnQVBBQjhBTlFBQU56UTNOak15RnhZVkZBY0dJeUluSmpjVUZ4WXpNamMyTlRRbkppTWlCd1lGSmlNaUJ4VXpGU00xTXpVak5UTVZOak15RnhZWEpGTk1hWEpPU0ZOTWFYSk9TRFZJUEU5Z1B6UkpQRTVoUHpNQkt4QWJIeThmYkI4ZlRTMGhKaUVIQk5aeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQREVYSG13cks0VXJFeG9hQmdVQUF3QWsvODRDTkFIZUFBOEFId0JXQUFBM05EYzJNeklYRmhVVUJ3WWpJaWNtTnhRWEZqTXlOelkxTkNjbUl5SUhCaVVHRlJRWEl5WWpJZ2NVRnhZWEZoVVVCd1lqSWljbUJ3WUhJekEzTmpVMEp6QXpGak15TlRRbkppY21OVFEzTmpNeUZ4WTNOamNrVTB4cGNrNUlVMHhwY2s1SU5VZzhUMkEvTkVrOFRtRS9Nd0V1Qmd3aUN6TXRBaWc0RFJzeUZCWW9GQVFDQVFZZ0NBUU1JQXN5T3ljNUVCZzFFeFFsRUFVQkFRUFdjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R3bERBNFZDaFVVRXcwVENSSWZKaEVHRGdNR0JBb1JEQWdORUJZVUVBMFNEQk1mSlE0RkNRTURCUVFBQXdBay84NENOQUhlQUE4QUh3QTVBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJoY3pOVE1WTXhVakZSUVhGak15TnhjR0J3WWpJaWNtUFFFakpGTk1hWEpPU0ZOTWFYSk9TRFZJUEU5Z1B6UkpQRTVoUHpORUtTNTBkQ01QRXlndEV5OHZDQWhGSFFzcDFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4QTBkSEswNGtFd2cySVRVTEFpd1NGR2dBQXdBay84NENOQUhlQUE4QUh3QTlBQUEzTkRjMk16SVhGaFVVQndZaklpY21OeFFYRmpNeU56WTFOQ2NtSXlJSEJnVUdJeUluSmowQkl6VXpGU01WRkJjV016STNOU00xTXhVakZUTVZJeVJUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHpBUk12SGpRaEVCNXJIeGdPRVNJckhtc2VIazNXY2s1SVUweHBjazVJVTB4cFlEODBTVHRQWVQ4elNUeTJHeVlTRTIwcksxUWJFZ29lYlNzcmhTd0FBd0FrLzg0Q05BSGVBQThBSHdBdUFBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmdVakJ5TW5JelV6RlNNWE55TTFNeVJUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHpBWEVtV1N0YkpuQVpQajhaY05aeVRraFRUR2x5VGtoVFRHbGdQelJKTzA5aFB6TkpQQ0czdHlzcmc0TXJBQU1BSlAvT0FqUUIzZ0FQQUI4QU5BQUFOelEzTmpNeUZ4WVZGQWNHSXlJbkpqY1VGeFl6TWpjMk5UUW5KaU1pQndZZkFUY3pGemNqTlRNVkl3Y2pKd2NqSnlNMU14VWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL000QWRKaWtrSUNWbkVqc2lLeTBnT2hSbzFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4SDJsaFlXa3NMTDF5Y3Iwc0xBQUFBd0FrLzg0Q05BSGVBQThBSHdBN0FBQTNORGMyTXpJWEZoVVVCd1lqSWljbU54UVhGak15TnpZMU5DY21JeUlIQmhjak5UTTNKeU0xTXhVakZ6Y2pOVE1WSXdjWE14VWpOVE1uQnpNa1UweHBjazVJVTB4cGNrNUlOVWc4VDJBL05FazhUbUUvTTdsOUxFdE1LMzBaTURBWmZTeE1TeTE5R0M4dkdOWnlUa2hUVEdseVRraFRUR2xnUHpSSk8wOWhQek5KUEw0clFrTXNMQ29xTEN4RFFpc3JLU2tBQUFNQUpQL09BalFCM2dBUEFCOEFNd0FBTnpRM05qTXlGeFlWRkFjR0l5SW5KamNVRnhZek1qYzJOVFFuSmlNaUJ3WVROU00zTXpVakZUTUhKek0xSXhVekZ3Y2pGU1JUVEdseVRraFRUR2x5VGtnMVNEeFBZRDgwU1R4T1lUOHo4aEJ0SjNJWFBrRWJieUphRTI3V2NrNUlVMHhwY2s1SVUweHBZRDgwU1R0UFlUOHpTVHovQUN6YkxDeUFnQ3dzc2lrc0FBQURBQ1QvemdJMEFkNEFEd0FmQUMwQUFEYzBOell6TWhjV0ZSUUhCaU1pSnlZM0ZCY1dNekkzTmpVMEp5WWpJZ2NHQlFjek5UTVZJelUzSXhVak5UTWtVMHhwY2s1SVUweHBjazVJTlVnOFQyQS9ORWs4VG1FL013RTZpbTBtMTRocEtOZldjazVJVTB4cGNrNUlVMHhwWUQ4MFNUdFBZVDh6U1R3RWpCTStKb29TUFFBRUFDVC96Z0kwQWQ0QUR3QWZBQ3NBTWdBQU56UTNOak15RnhZVkZBY0dJeUluSmpjVUZ4WXpNamMyTlRRbkppTWlCd1lYRkJjV016SW5OQ2NtSXlJM01oVVVJalUwSkZOTWFYSk9TRk5NYVhKT1NEVklQRTlnUHpSSlBFNWhQek9uSVFRRkt3RWhCQVVySzFpdzFuSk9TRk5NYVhKT1NGTk1hV0EvTkVrN1QyRS9NMGs4VkZzSkFXUmJDUUV0a1pLUmtnQUFBUUE4L3pzQllRR3FBQk1BQUJjV0Z6SXpNamMyTlJFak5UTVJGQWNHSXlJblRDRkJCZ1VmSEJOb3dqMHRQbEVzVkJjREl4WVdBWFZVL2pkUk1TUWVBQXNBS2YvakFpOENZUUFMQUM4QVBnQkFBRm9BK0FEOUFRSUJFUUVnQVM4QUFDVW5Cek15RnhZWE5qYzJNd2NpSnlZbkppY21QUUUwTnpZM05qTWlPd0V5RnhZWEZoY1dIUUVVQndZSEJpTXlJeE0wTnpZWE5TRVZOaGNXSFFFM0Z3TWpNeU1pQnlJSEppTW1Ld0VtSnlZM05qTTJNd1lIQmhjV0Z4WUhCZ2NtSXlJSEppTWlCeVlqSWdjbUp5WUhCaGNXTXhZM0ZoY3lOeFl6RmpjV014WTNGaGN5TnhZWE1qY1dGeFkzRmhjeU54WVhNamNXRnpJM05pY21KeUlISmlNaUJ5WW5JZ2NtSnpNbUp5c0JKaThCTlRZWEZqYzJOelluSmljME56WVhGamNuTnlJbkppOEJKaU1HQndZWEZoY1dCeFFIQmljbUl5SUhCaWNtSnlZbkJnY0dGeFlWQmdjMkh3RVdGd1lWQmhjV0Z4WVZJZzhCSXpNR0J5WW5Nd1lISmljZkFTTVhJeGNqRlNNMUl6Y2pOeU1IRnlNWEl4Y2pGU00xSXpjak55TW5GeU1YSXhjakZTTTFJemNqTnlNQnhKbVdiaE1LQ3dNRENBb1FaMFFWRkJNNkJnSUtEeWttUFJVeWdFUVlFaEU2QndJTERpb21QUjA1ZFEwTURQNUtEQTBNdHJhNkJTQUJBd0VEQWdJR0F3UUNBd0VMQndNSEJRa0RBZ0lKQVFFRkpRVUNCZ1lIQmdVR0NnTUdCZ2dHQkFZSkJnUUJBd2tKQlFVR0NBVUZCZ2tGQlFVSkJRTUlDQVlEQndrRkF3WUpCZ1FHQ1FVQ0NRa0ZBd2dKQmdRQ0FRc0lCUVlHQ0FZQ0NRZ0VBd1FGQWdnSkFRWUNCUVVTQ3dVV0JBSVlFQUVNQncwTkVBb0tBd29KQkFnRURCVUdBd0lCREFjQkJ3WVFDZ3dMRUFvSUJ3Y0RBUU1DQVFrREF3VUhFQTBMQ0FRRUN3RUJCUUVEQmdFY0JnSUNCU2NGQWdJR1l5QVpHUmtYRnc0V0ZoWVdGVmdmR0JnWUZoWU9GeGNYRnhaWklCa1pHUmNYRFJjWEZ4Y1dRNWVYQ1FzRkNRY0pYd1lHRFNkY0ZqZXFZaU13R3hrSUJnc21WeFUrcW1Jak1Cc1pBWElPQ2dnQkVoSUJDQXdNNzdXNEFVUUJBUUVCQWdVYkNRSUNBd2NGRHdJQ0NRY0NBd1lHQmdZR0JnUUJBUWNIQmdVQ0J3TUNCUVVDQndVQ0J3UUNCZ1VCQmdVQkFnZ0ZBUVlGQVFZRUFnY0dCZ1VDQmdZR0JBSUdBd0lCQWcwSkRnSU1CQUlCQ1JVZUR3b0tCUVFCQXdFREF3UUNBZ01LQWdJWUNRZ0VDUVlHQXdRQkNBVVFDUVFFQ2dRRUF3VUVEUVVERXdVSkFRZ0ZBZ1lEQ0JFQ0Fna0NBUUlDQXdNQ0F3SUVBV3NURGc0T0RnNE9rQk1QRFE0T0RRKzJFdzRPRGc0T0RnQUFBd0FBLzlzQ1dBSXpBQThBTFFBeEFBQWxGQmNXTXpJM05qVTBKeVlqSWdjR056TTFORGMyTnpZMU5DY21Cd1lkQVRNMU5EYzJGeFlWRkFjR0J3WVZFd2tDQVFzYkNBZ2VDZ01hQ0FrZEN3TWVGeUlwQ2djOU56SXVGakF5S0I0b0pBZ0pBd0VzL3RUKzFHRWVDZ01iQ0FnZERBTWJDRDRvRmlJb0doSVRQaGdWR1JjdkRBd21EZzRaRXlJbEppTVBFQklCWS83VS90UUJMQUFBQUFBQkFBQUFBUUFBaHprS1cxOFBQUFVDRXdQb0FBQUFBTHM1Sy84QUFBQUF1emtyLy94bC9uZ0RUZ1BuQUFFQUNBQUFBQUFBQUFBQUFBRUFBQU1vLzBBQVdnTlIvR1grZ3dOT0FBRUFBQUFBQUFBQUFBQUFBQUFBQUFWTUFiQUFJUUFBQUFBQlRRQUFBbGdBQUFKWUFNSUNXQUNOQWxqLy9nSllBR0FDV0FBZEFsZ0FJQUpZQU44Q1dBRFBBbGdBaWdKWUFENENXQUJOQWxnQUxnSllBRTBDV0FCc0FsZ0FOd0pZQUh3Q1dBQnRBbGdBWVFKWUFHMENXQUJXQWxnQVZBSllBR3NDV0FCaEFsZ0Fld0pZQUZzQ1dBQzNBbGdBaUFKWUFEMENXQUIyQWxnQU5BSllBRFlDV0FCYUFsZ0FIUUpZQUZFQ1dBQlhBbGdBTkFKWUFFb0NXQUF0QWxnQVZnSllBQjhDV0FCWkFsZ0FPd0pZQUFVQ1dBQkhBbGdBQ0FKWUFBQUNXQUErQWxnQU5RSllBRGtDV0FBSkFsZ0FZQUpZQUNJQ1dBQWNBbGdBRFFKWUFBQUNXQUFVQWxnQUlBSllBRnNDV0FESEFsZ0FZQUpZQUtzQ1dBQmZBbGdBSXdKWUFMOENXQUFwQWxnQUl3SllBRVVDV0FBcEFsZ0FSUUpZQUZVQ1dBQW5BbGdBRmdKWUFHY0NXQUE4QWxnQU53SllBRndDV0FBQUFsZ0FGZ0pZQUVZQ1dBQWhBbGdBR3dKWUFCWUNXQUJmQWxnQUd3SllBQllDV0FBS0FsZ0FBQUpZQUEwQ1dBQUFBbGdBVXdKWUFIY0NXQUVBQWxnQWx3SllBQWNDV0FBQUFsZ0F3Z0pZQUVVQ1dBQTNBbGdBS3dKWUFDQUNXQUVBQWxnQVRBSllBSUVDV0FBRkFsZ0FtUUpZQUEwQ1dBQkhBbGdBZGdKWUFBVUNXQUJIQWxnQkVRSllBRTBDV0FDeUFsZ0F1Z0pZQUx3Q1dBQVdBbGdBQmdKWUFOMENXQUVNQWxnQXVRSllBS0FDV0FBV0FsZ0FFd0pZQUJNQ1dBQWFBbGdBSmdKWUFCMENXQUFkQWxnQUhRSllBQjBDV0FBZEFsZ0FIUUpZQUJVQ1dBQlhBbGdBU2dKWUFFb0NXQUJLQWxnQVNnSllBRmtDV0FCWkFsZ0FXUUpZQUZrQ1dBQXdBbGdBQUFKWUFENENXQUErQWxnQVBnSllBRDRDV0FBK0FsZ0FtZ0pZQURNQ1dBQWNBbGdBSEFKWUFCd0NXQUFjQWxnQUlBSllBRFVDV0FBZ0FsZ0FLUUpZQUNrQ1dBQXBBbGdBS1FKWUFDa0NXQUFwQWxnQUJnSllBRVVDV0FCRkFsZ0FSUUpZQUVVQ1dBQkZBbGdBWndKWUFHY0NXQUJuQWxnQVp3SllBRVVDV0FBV0FsZ0FSZ0pZQUVZQ1dBQkdBbGdBUmdKWUFFWUNXQUJOQWxnQVBBSllBQllDV0FBV0FsZ0FGZ0pZQUJZQ1dBQUFBbGdBSVFKWUFBQUNXQUFkQWxnQUtRSllBQjBDV0FBcEFsZ0FIUUpZQUNrQ1dBQlhBbGdBUlFKWUFGY0NXQUJGQWxnQVZ3SllBRVVDV0FCWEFsZ0FSUUpZQURRQ1dBQXBBbGdBTUFKWUFDa0NXQUJLQWxnQVJRSllBRW9DV0FCRkFsZ0FTZ0pZQUVVQ1dBQktBbGdBUlFKWUFFb0NXQUJGQWxnQVZnSllBQ2NDV0FCV0FsZ0FKd0pZQUZZQ1dBQW5BbGdBVmdKWUFDY0NXQUFmQWxnQUZnSllBQjhDV0FBV0FsZ0FXUUpZQUdjQ1dBQlpBbGdBWndKWUFGa0NXQUJuQWxnQVdRSllBR2NDV0FCWkFsZ0Fad0pZQUFjQ1dBQThBbGdBT3dKWUFEd0NXQUFGQWxnQU53SllBQVVDV0FCSEFsZ0FYQUpZQUVjQ1dBQmNBbGdBUndKWUFGd0NXQUJIQWxnQVhBSllBQ3NDV0FCY0FsZ0FBQUpZQUJZQ1dBQUFBbGdBRmdKWUFBQUNXQUFXQWxnQUZnSllBQUFDV0FBV0FsZ0FQZ0pZQUVZQ1dBQStBbGdBUmdKWUFENENXQUJHQWxnQUdRSllBQTBDV0FBSkFsZ0FGZ0pZQUFrQ1dBQVdBbGdBQ1FKWUFCWUNXQUJnQWxnQVh3SllBR0FDV0FCZkFsZ0FZQUpZQUY4Q1dBQmdBbGdBWHdKWUFDSUNXQUFiQWxnQUlnSllBQnNDV0FBaUFsZ0FHd0pZQUJ3Q1dBQVdBbGdBSEFKWUFCWUNXQUFjQWxnQUZnSllBQndDV0FBV0FsZ0FIQUpZQUJZQ1dBQWNBbGdBRmdKWUFBQUNXQUFBQWxnQUlBSllBQUFDV0FBZ0FsZ0FXd0pZQUZNQ1dBQmJBbGdBVXdKWUFGc0NXQUJUQWxnQWJ3SllBQ01DV0FCbEFsZ0FNQUpZQUE0Q1dBQTNBbGdBSXdKWUFIc0NXQUFBQWxqL3pnQUEvbEVBQVA4VUFsZ0FQZ0pZQUVZQ1dBQnVBbGdBYlFKWUFDQUNXQUFjQWxnQUZnSllBQUFDV0FCYkFsZ0FVd0pZQUdzQ1dBQTVBbGdBT1FKWUFQUUNXQUMrQWxnQXdnSllBQjBDV0FBcEFsZ0FXUUpZQUdjQ1dBQStBbGdBUmdKWUFCd0NXQUFXQWxnQUhBSllBQllDV0FBY0FsZ0FGZ0pZQUJ3Q1dBQVdBbGdBSEFKWUFCWUNXQUJQQWxnQUhRSllBQ2tDV0FBZEFsZ0FLUUpZQUJVQ1dBQUdBbGdBVmdKWUFDY0NXQUFGQWxnQU53SllBRDRDV0FCR0FsZ0FQZ0pZQUVZQ1dBQnJBbGdBVXdKWUFEd0NXQUJXQWxnQUp3SllBQUFDV0FBV0FsZ0FIUUpZQUNrQ1dBQVZBbGdBQmdKWUFETUNXQUE4QWxnQUhRSllBQ2tDV0FBZEFsZ0FLUUpZQUVvQ1dBQkZBbGdBU2dKWUFFVUNXQUJaQWxnQVp3SllBRmtDV0FCbkFsZ0FQZ0pZQUVZQ1dBQStBbGdBUmdKWUFBa0NXQUFXQWxnQUNRSllBQllDV0FBY0FsZ0FGZ0pZQUJ3Q1dBQVdBbGdBSUFKWUFEOENXQUFpQWxnQUd3SllBQjhDV0FBV0FsZ0FIUUpZQUNrQ1dBQktBbGdBUlFKWUFENENXQUJHQWxnQVBnSllBRVlDV0FBK0FsZ0FSZ0pZQUQ0Q1dBQkdBbGdBSUFKWUFBQUNXQUFQQWxnQVR3SllBRVlDV0FCUEFsZ0FjZ0pZQUhZQ1dBQW5BbGdBVmdKWUFGWUNXQUFhQWxnQVp3SllBR2NDV0FCWkFsai8vd0pZQUFBQ1dBQlpBbGdBTHdKWUFDOENXQUFKQWxnQUNRSllBRG9DV0FBV0FsZ0FDQUpZQUFFQ1dBQUNBbGdBSUFKWUFGTUNXQUJSQWxnQUh3SllBQkVDV0FCSEFsZ0FOQUpZQUFBQ1dBQXNBbGdBSmdKWUFDb0NXQUFBQWxnQUZnSllBQ1VDV0FBZkFsZ0FMUUpZQUMwQ1dBREZBQUFBL3dKWS96d0NXQUZJQWxnQlBRSllBQUFDV0FBQUFsZ0FQUUpZQURRQ1dBQTZBbGdBT2dKWUFLa0NXQUNwQWxnQU5BSllBRWNDV0FDQ0FsZ0Fkd0pZQUVrQ1dBQkhBbGdBZHdKWUFJSUNXQUFyQWxnQUt3SllBVWdDV0FFOUFsZ0FQUUpZQUQwQ1dBQmdBbGdBVFFKWUFKb0NXQUQ4QWxnQW1RSllBRXNDV0FFYkFsZ0FxQUpZQUI0Q1dBQUFBbGdBVFFKWUFFY0NXQUFmQWxnQUFBSllBQUFDV0FBQUFsZ0FBQUpZQUFBQ1dBQUFBQUQvY0FBQS81MEFBUDhBQUFEKzBnQUEvb01BQVAyM0FBRCt1d0FBLzhFQUFQODJBQUQvWUFBQS9xUUFBUDVwQUFEK2RRQUEvNFFBQVA4UEFBRCtOUUFBL3JVQUFQNjdBQUQvVUFBQS95b0FBUDg0QUFEL0tnQUEvaG9BQVA1bUFBRC9GQUFBL3hZQUFQNVpBQUQvS2dBQS96QUFBUDhIQUFEL0J3QUEvamtBQVA2bkFBRC9PQUFBLzF3QUFQN21BQUQrVUFBQS9qUUFBUDhxQUFEL1dBQUEvdXdBQVArREFBRCtzd0FBL3JNQUFQNldBQUQrYndBQS9yc0FBUDY3QUFEKzBnQUEvb01BQVAyb0FBRDlpZ0FBL3RJQUFQNkRBQUQ5a2dBQS9sRUFBUHhsQUFEL1FBQUEvaklBQVA3VkFBRCt2QUFBL3NjQUFQN3BBQUQ5cFFBQS8zQUFBUCtkQUFEKzBnQUEveW9BQVA4MkFBRCtaQUFBL3drQUFQOHlBbGdBeWdKWUFNb0NXQURVQWxnQWlBSllBRFFDV0FDQkFsai93UUpZQU4wQ1dQL3VBbGovd3dKWS8vMENXUC9pQWxqL3hBSlkvNlFDV0FCbkFsZ0FIUUpZQUZFQ1dBQXdBbGdBQ2dKWUFFb0NXQUJiQWxnQUh3SllBRDRDV0FCWkFsZ0FCUUpZQUEwQ1dBQUlBbGdBQUFKWUFBb0NXQUErQWxnQUhRSllBRFVDV0FBZ0FsZ0FJZ0pZQUNBQ1dBQlpBbGdBRkFKWUFDd0NXQUFBQWxnQVdRSllBQ0FDV0FBS0FsZ0FjZ0pZQUJZQ1dBQm5BbGdBRmdKWUFBb0NXQUE0QWxqLzdnSllBRVlDV0FCeUFsZ0FZZ0pZQUJZQ1dBQjFBbGdBWndKWUFBVUNXQUFBQWxnQUZnSllBQW9DV0FDREFsZ0FSZ0pZQUNjQ1dBQWhBbGdBaUFKWUFFWUNXQUFIQWxnQUZnSllBQ1VDV0FBTkFsZ0FEUUpZQUFZQ1dBQm5BbGdBRmdKWUFFWUNXQUFXQWxnQUJnSllBQjRDV1AvQ0FsZ0FIZ0pZQUMwQ1dBQVdBbGdBRmdKWUFEd0NXQUJLQWxnQVNnSllBRjhDV0FBd0FsZ0FWd0pZQUdBQ1dBQlpBbGdBV1FKWUFEc0NXUCt4QWxnQUZRSllBQ0lDV0FBRkFsZ0FJUUpZQUFvQ1dBQWRBbGdBSFFKWUFDTUNXQUJSQWxnQU1BSllBQmdDV0FCS0FsZ0FEUUpZQUhnQ1dBQWhBbGdBSVFKWUFBVUNXUCt4QWxnQUNBSllBQjhDV0FBK0FsZ0FIUUpZQURVQ1dBQlhBbGdBSWdKWUFBb0NXQUJaQWxnQUZBSllBQjBDV0FBV0FsZ0FGd0pZQUJjQ1dBQVFBbGdBRlFKWUFHOENXQUJmQWxnQUh3SllBQllDV0FBcEFsZ0FSZ0pZQUZFQ1dBQStBbGdBR0FKWUFFVUNXQUFOQWxnQWhBSllBQ0VDV0FBaEFsZ0FCUUpZLzdFQ1dBQUlBbGdBSHdKWUFFWUNXQUFuQWxnQUlRSllBRVVDV0FBaUFsZ0FBQUpZQUNVQ1dBQU5BbGdBSndKWUFCWUNXQUFYQWxnQUZ3SllBQmdDV0FBVEFsZ0Fid0pZQUdRQ1dBQU9BbGdBQ0FKWUFFVUNXQUJGQWxnQWJ3SllBRDRDV0FCRkFsZ0FYd0pZQUdjQ1dBQm5BbGdBUEFKWS83RUNXQUFWQWxnQUZnSllBQVVDV0FBaEFsZ0FBQUpZQUNjQ1dBQXpBbGdBUGdKWUFETUNXQUE4QWxnQURRSllBQTBDV0FCNEFsZ0FoQUpZQUFVQ1dBQUZBbGdBVndKWUFFVUNXQUFpQWxnQUlnSllBQ0FDV0FBZ0FsZ0FJQUpZQUNBQ1dBQVVBbGdBRFFKWUFDRUNXQUFnQWxnQVdRSllBQTBDV0FBTkFsZ0FIUUpZQUNrQ1dBQWRBbGdBS1FKWUFCVUNXQUFHQWxnQVNnSllBRVVDV0FBakFsZ0FUd0pZQUNNQ1dBQlBBbGdBRFFKWUFBMENXQUI0QWxnQWhBSllBR3NDV0FCVEFsZ0FJUUpZQUNFQ1dBQWhBbGdBSVFKWUFENENXQUJHQWxnQVBnSllBSFVDV0FBK0FsZ0FkUUpZQUY4Q1dBQmtBbGdBQ2dKWUFBQUNXQUFLQWxnQUFBSllBQW9DV0FBQUFsZ0FGZ0pZQUJZQ1dBQVZBbGdBRXdKWUFCMENXQUFwQWxnQVVRSllBQ01DV0FCUkFsZ0FJd0pZQUZFQ1dBQWpBbGdBVndKWUFFVUNXQUEwQWxnQUtRSllBRFFDV0FBcEFsZ0FOQUpZQUNrQ1dBQTBBbGdBS1FKWUFEUUNXQUFwQWxnQVNnSllBRVVDV0FCS0FsZ0FSUUpZQUVvQ1dBQkZBbGdBU2dKWUFFVUNXQUJLQWxnQVJRSllBQzBDV0FCVkFsZ0FWZ0pZQUNjQ1dBQWZBbGdBRmdKWUFCOENXQUFXQWxnQUh3SllBQllDV0FBZkFsZ0FGZ0pZQUI4Q1dBQVdBbGdBV1FKWUFHY0NXQUJaQWxnQVp3SllBQVVDV0FBM0FsZ0FCUUpZQURjQ1dBQUZBbGdBTndKWUFFY0NXQUJjQWxnQVJ3SllBRndDV0FCSEFsZ0FYQUpZQUVjQ1dBQmNBbGdBQ0FKWUFBQUNXQUFJQWxnQUFBSllBQWdDV0FBQUFsZ0FBQUpZQUJZQ1dBQUFBbGdBRmdKWUFBQUNXQUFXQWxnQUFBSllBQllDV0FBK0FsZ0FSZ0pZQUQ0Q1dBQkdBbGdBUGdKWUFFWUNXQUErQWxnQVJnSllBRFVDV0FBaEFsZ0FOUUpZQUNFQ1dBQUpBbGdBRmdKWUFBa0NXQUFXQWxnQUNRSllBQllDV0FBSkFsZ0FGZ0pZQUdBQ1dBQmZBbGdBWUFKWUFGOENXQUJnQWxnQVh3SllBR0FDV0FCZkFsZ0FZQUpZQUY4Q1dBQWlBbGdBR3dKWUFDSUNXQUFiQWxnQUlnSllBQnNDV0FBaUFsZ0FHd0pZQUJ3Q1dBQVdBbGdBSEFKWUFCWUNXQUFjQWxnQUZnSllBQndDV0FBV0FsZ0FIQUpZQUJZQ1dBQU5BbGdBQ2dKWUFBMENXQUFLQWxnQUFBSllBQUFDV0FBQUFsZ0FBQUpZQUFBQ1dBQUFBbGdBQUFKWUFBQUNXQUFBQWxnQUFBSllBQlFDV0FBTkFsZ0FGQUpZQUEwQ1dBQWdBbGdBQUFKWUFGc0NXQUJUQWxnQVd3SllBRk1DV0FCYkFsZ0FVd0pZQUJZQ1dBQWJBbGdBQUFKWUFBQUNXQUFwQWxnQWJ3SllBQjBDV0FBcEFsZ0FIUUpZQUNrQ1dBQWRBbGdBS1FKWUFCMENXQUFwQWxnQUhRSllBQ2tDV0FBZEFsZ0FLUUpZQUIwQ1dBQXBBbGdBSFFKWUFDa0NXQUFkQWxnQUtRSllBQjBDV0FBcEFsZ0FIUUpZQUNrQ1dBQWRBbGdBS1FKWUFFb0NXQUJGQWxnQVNnSllBRVVDV0FCS0FsZ0FSUUpZQUVvQ1dBQkZBbGdBU2dKWUFFVUNXQUJLQWxnQVJRSllBRW9DV0FCRkFsZ0FTZ0pZQUVVQ1dBQlpBbGdBWndKWUFGa0NXQUJuQWxnQVBnSllBRVlDV0FBK0FsZ0FSZ0pZQUQ0Q1dBQkdBbGdBUGdKWUFFWUNXQUErQWxnQVJnSllBRDRDV0FCR0FsZ0FQZ0pZQUVZQ1dBQStBbGdBUmdKWUFENENXQUJHQWxnQVBnSllBRVlDV0FBK0FsZ0FSZ0pZQUQ0Q1dBQkdBbGdBSEFKWUFCWUNXQUFjQWxnQUZnSllBQndDV0FBV0FsZ0FIQUpZQUJZQ1dBQWNBbGdBRmdKWUFCd0NXQUFXQWxnQUhBSllBQllDV0FBZ0FsZ0FBQUpZQUNBQ1dBQUFBbGdBSUFKWUFBQUNXQUFnQWxnQUFBSllBQW9DV0FBS0FsZ0FDZ0pZQUFvQ1dBQUtBbGdBQ2dKWUFBb0NXQUFLQWxqL3h3SlkvK2NDV1A1a0FsaitaQUpZL21RQ1dQNWtBbGovZHdKWS8zY0NXQUJ5QWxnQWNnSllBRmNDV0FCWEFsZ0FWd0pZQUZjQ1dQK2tBbGovcEFKWS9wRUNXUDZSQWxqK2tRSlkvcEVDV0FBV0FsZ0FGZ0pZQUJZQ1dBQVdBbGdBRmdKWUFCWUNXQUFXQWxnQUZnSlkvM2tDV1A5NUFsaitaZ0pZL21ZQ1dQNW1BbGorWmdKWS8za0NXUDk1QWxnQVp3SllBR2NDV0FCbkFsZ0Fad0pZQUdjQ1dBQm5BbGdBWndKWUFHY0NXUCt6QWxqL3N3SlkvcUFDV1A2Z0FsaitvQUpZL3FBQ1dQK3pBbGovc3dKWUFFWUNXQUJHQWxnQVJnSllBRVlDV0FCR0FsZ0FSZ0pZLzVnQ1dQK1lBbGoraFFKWS9vVUNXUDZGQWxqK2hRSllBQllDV0FBV0FsZ0FGZ0pZQUJZQ1dBQVdBbGdBRmdKWUFCWUNXQUFXQWxqL2VnSlkvcDBDV1A2WEFsai9lZ0pZQUFZQ1dBQUdBbGdBQmdKWUFBWUNXQUFHQWxnQUJnSllBQVlDV0FBR0Fsai9XZ0pZLzFvQ1dQNUhBbGorUndKWS9rY0NXUDVIQWxqL1dnSlkvMW9DV0FBS0FsZ0FDZ0pZQUhJQ1dBQnlBbGdBRmdKWUFCWUNXQUJuQWxnQVp3SllBRVlDV0FCR0FsZ0FGZ0pZQUJZQ1dBQUdBbGdBQmdKWUFBb0NXQUFLQWxnQUNnSllBQW9DV0FBS0FsZ0FDZ0pZQUFvQ1dBQUtBbGoveHdKWS8rY0NXUDVrQWxqK1pBSlkvbVFDV1A1a0Fsai9kd0pZLzNjQ1dBQVdBbGdBRmdKWUFCWUNXQUFXQWxnQUZnSllBQllDV0FBV0FsZ0FGZ00wLzNrRE5QOTVBelQrWmdNMC9tWUROUDVtQXpUK1pnTTAvM2tETlA5NUFsZ0FCZ0pZQUFZQ1dBQUdBbGdBQmdKWUFBWUNXQUFHQWxnQUJnSllBQVlETlA5YUF6VC9XZ00wL2tjRE5QNUhBelQrUndNMC9rY0ROUDlhQXpUL1dnSllBQW9DV0FBS0FsZ0FDZ0pZQUFvQ1dBQUtBbGdBQ2dKWUFBb0NXQUFkQWxnQUhRSlkvNGNDV1ArQkF6UUFIUUpZQUtzQ1dBQmhBbGdCTVFKWUFFTUNXQUNCQWxnQUZnSllBQllDV0FBV0FsZ0FGZ0pZQUJZQ1dQOVhBbGovVVFKWS95d0NXUDhtQXpRQUh3TkxBVEVEVVFFeEFsZ0JHd0pZQUdjQ1dBQTJBbGdBWndKWUFCMENXQUJuQWxnQVp3SllBRmtDV0FCWkFsai9ad0pZLzJFRFN3Q01BMUVBakFKWUFHWUNXQUFXQWxnQUZnSllBQllDV0FBV0FsZ0FJUUpZQUNFQ1dBQVdBbGdBRmdKWUFDQUNXQUFnQWxqL0xRSlkveWNDV1A5N0FsZ0FnUUpZQUlFQ1dBRFFBbGdBQmdKWUFBWUNXQUFHQWxnQUJnSllBQVlDV1A5L0Fsai95UUpZLzJNQ1dQKzNBelFBQUFKWUFURUNXQUNNQWxnQUFBSllBQUFDV0FBQUFsZ0FBQUpZQUhZQ1dBQjJBbGdBZGdKWUFIWUNXQUFnQWxnQUlBSllBTDRDV0FBakFsZ0F4UUpZQU1VQ1dBREZBbGdBeFFKWUFJMENXQUNZQWxnQWZ3SllBSW9DV0FCMkFsZ0FkZ0pZQUxNQ1dBRDJBbGdBMmdKWUFHNENXQUExQWxnQTJnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNXQUM4QUg4QVJ3Q3dBSDhBTkFBMkFJMEFvd0FBQUY4QUl3QWtBQ1QvOWdEVUFNRUF3QURMQU1ZQTFBRGZBTXdBekFEZUFPUUJHZ0NoQU5RQXpBREhBTTBBd1FEQUFNc0F4Z0RVQU44QXpBQzhBTjRBNUFFYUFDNEFOUUF4QUE0QU53QUFBQUFBQUFBQUFBQUFHZ0FwQUIwQUR3QVZBRThBRXdCUEFCc0FDZ0I3QUY4QUNnQWpBQUlBVkFBZS85UC8wLzlPQUpJQUxRQkZBQkVBQUFBY0FBMEFkd0FqQUFvQVd3QXpBRDcvL3dBZkFGY0FBQUFBQUx3QVhBQUZBQjBBRndCM0FFVUFRQUF0QUE0QUtRQU1BRHdBRXdBR0FCTUFCZ0FiQUE4QUV3QUxBQjhBQXdBR0FBTUFVd0FrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFQQUFwQUFBQUFBQUFBQlFBRkFBVUFCUUFPUUJLQUhvQTR3RTVBWGtCaGdHcUFjOEI3QUlBQWcwQ0dnSTJBa1VDYXdLQkFya0RCUU1rQTFVRGxBT29BL0FFTGdSZ0JJTUVsZ1NwQkxvRS9RVkNCV1VGbmdYakJnMEdNUVpTQnBFR3RnYk1Cdk1ISXdjOEIyY0hpZ2U4QitvSVFBaCtDT0FJL1FrcUNVWUphd21VQ2JRSjBBbmpDZkVLQkFvVkNpSUtMd3B6Q3EwSzdBc21DMXNMaHd2U0RBRU1EQXd6REZrTWJReXlET0FORWcxTkRZZ05yUTRIRGpBT1hRNTREcG9Pd1E3aER2d1BNdzlCRDNjUHB3K25EOHNRRHhCbUVLb1EzeER4RVZFUmd4SGVFaWtTUnhKV0VtTVN0aExERXZjVEVSTS9FMzRUakJPMUU5Z1Q5QlFYRkN3VVpSU0NGTFVVK2hWVUZaZ1ZveFd1RmJvVnhSWFFGZHdXREJZWEZpSVdMUlk1RmtRV1R4WmFGbVlXY1JhaUZxMFd1UmJGRnRFVzNCYm9Gd0VYUVJkTUYxY1hZeGR1RjNrWHBoZ0xHQllZSVJnc0dEZ1lReGhPR0w0WXlSalVHTjhZNmhqMUdRQVpDeGtXR1NFWmJCbDRHWU1aamhtWkdhVVpzQm5vR2lZYU1SbzhHa2NhVWhwZEdwa2FwQnF2R3JvYXhSclJHdHdhNXhyekd2NGJDaHNWR3lFYkxCczRHME1iVHh0Ykc0d2J6aHZaRytRYjd4djdIQWNjRWh3ZUhDa2NOUnhBSEV3Y1Z4eGlIRzRjZWh5RkhKQWNuQnlvSExRYzV4MGVIU2tkTlIxQUhVc2RWaDFpSFcwZGV4MkhIWnNkMEI0S0hoWWVJUjRzSGpjZWJSNTRIb1Flang2YUhxWWVzaDY5SHNrZTdCOExIeFlmSVI4c0h6Y2ZReDlPSDRNZnVCL3pILzhnQ2lBVklDRWdMU0E0SUcwZ3hTRFFJTnNnNWlEeElQMGhDQ0VVSVI4aEt5RTJJVUVoVENGWUlXTWhiaUY1SVlVaGtTRzFJZVVoOENIOElnY2lFaUlkSWlraU5TSkFJa3NpVmlKaEltd2llQ0tESW84aW1pS2xJckFpdXlMSEl0SWkzaUxwSXhFalVDT1VJOFVrQkNRbkpHQWtzeVQySlNzbE15VTdKVWNsVXlXNUpod21KQ1l3Smp3bWlpYXdKdFVuQ1NjOUozRW5meWVUSjdnbnhDZlBKOXNuNWlmeUovMG9DU2dVS0NNb01TaEFLRTRvWFNoc0tIc29pU2k5S013bzJpa0tLVnNwWmlseEtYMHBpQ21VS2FBcHF5bTJLY1VwMHluZktlb3A5U29CS2d3cUdDb2pLak1xUWlwTktsZ3FaQ3B2S25zcWh5cVRLcDhxcXlxM0tzTXF6eXJiS3VjcTh5ci9Ld3NyRnlzakt5OHJPeXRISzFNclh5dHJLM2NyZ3l1UEs1c3JweXV6Szc4cnl5dlhLK01yN2l2NUxBUXNGQ3dqTERJc1FpeE9MRmtzYVN4NExJUXNqeXpUTFJFdFJDMTRMZEF1S0M1ekxyVXU5eThsTDBZdmN5K0pMOHd2N2pBcU1FNHdjekNzTU9VeERqRS9NVmt4ZXpHY01ic3g3eklwTWs0eWRES05Ncmd5dURMYk12MHpIak1lTTFBemNUT1BNNXd6cnpPOE0rRTBCVFFoTkR3MFBEUThORTgwWURSeU5JUTBsalNvTkxVMHdqVFFOTjAwNlRUMk5RSTFEelVoTlMwMVNEVmpOWE0xZ3pXWE5hUTF2elhNTmY0MkhqWkZObGsyZ2phQ05wWTI1RGNNTnd3M0d6Y3NOejAzVFRkYk4yZzNkVGVHTjYwM3V6ZkpOK00zN3pnaE9FZzRlamlOT0o4NHJEaS9PTk00OGprTU9UQTVWRGw0T1p3NXFUbTJPY1k1MWpubE9nazZJem96T2tNNlZ6cGpPb2s2c2pxK092QTdJanRHTzJ3N2pEdVlPNms3MlR2cU8vbzhGRHd0UEZNOFlEeHRQSUE4cHp5MVBNTTgwVHpoUFB3OURUMGVQVlE5YmoyVVBhZzlzRDI0UGQ4OTV6M3pQaFErUEQ1WlBtWStjajZTUHJVK3dqN09QdGsrNFQ3c1B2Yy9BajhOUHhnL0pEOHpQenMvUXo5Y1AzTS9leitEUDRzL3d6L0xQOU0vN2ovMlAvNUFNRUE0UUZaQVhrQjlRSVZBalVESlFORkJERUZaUVdSQmIwRjdRWWRCazBHZlFhNUI2VUl4UW5oQ3ZrTVdRM1pEcFVQWVJBWkVEa1F1UkZkRWNrVERSTXRFNlVUeFJVNUZna1dvUmRsR1AwWkhScEZHMVViZ1J1dEc5MGNEUnc5SFIwZFNSMTFIZkVlb1I5VkgzVWZvUi9OSUhVZ29TSEpJZWtpQ1NJMUlsVWpnU1J0SlVVbGNTV2RKY2ttVlNaMUozRW5rU2V4S0ZVb2RTbTVLdjBybFN2QksrRXNzU3pSTFBFdEVTMHhMVkV0Y1MyUkxoRXVNUzdWTDFrd0RUQ3RNVlV5RFRMdE01VTB3VFdaTm8wMnJUZlJPTGs1SFRtOU9kMDdEVHhsUFAwOUxUMU5QaUUreFQ5MVA1VS90VC9WUC9WQVpVRGxRbmxDbVVNZFE4MUViVVVWUmQxR3ZVZGxTSFZKZ1VwbFNwRkt2VXVGUzdGTXpVenRUUmxOUlUxbFRvVlBjVkJOVUhsUXBWRFZVV0ZSeVZJdFVxMVRMVlI5VmIxWGRWazlXaEZiQVZ4eFhkbGVZVjdwWDJsZjVXQjVZUTFoeFdKOVl6RmoyV1F4WkYxa2pXUzVaT2xsRldWQlpXRmxnV1d0WmQxbXdXZVJaOEZuN1dnWmFFVm9jV2lkYVcxcVBXcHBhcFZxd1dydGF4MXJTV3RwYTRscnVXdnBiQmxzUld4eGJKMXN5V3oxYlNGdFRXMTViYVZ0MFczOWJpMXVYVzZOYnIxdTdXOGRiMDF2ZlcrNWIvRndJWEJSY0lGd3NYRGhjUkZ4UFhGcGNabHh5WElGY2oxeWVYS3hjdUZ6RVhOQmMzRjB4WFpWZG9WMnRYYmxkeEYzUVhkeGQ2RjMwWGY5ZUMxNFdYaUZlTFY0NVhrVmVWRjVqWG5GZWZGNklYcFJlb0Y2c1hyaGV4RjdRWHQ5ZTcxNzdYd2RmRTE4Zlh5cGZOVjlCWDB4ZldGOWtYM0JmZTErSFg1TmZuMStyWDdkZncxL1NYK0ZmOEYvL1lBOWdIV0F0WUR0Z1JtQlJZRjFnYUdCMFlIOWdpMkNYWUtaZ3RXREJZTTFnMldEa1lQQmcvR0VNWVJ0aEsyRTZZVXBoV1dGbFlYRmhmV0dKWVpWaG9XR3RZYmxoeFdIUllkMWg2V0gxWWdGaUVHSWZZaTVpUEdKSFlsTmlYMkpyWW5aaWdXS01ZcGRpb21LdFlybGl4R0xRWXR4aTZHTHpZdjVqQ1dNVll5QmpMR00zWTBOalQyTmJZMmRqYzJOK1k0bGpsR1B0WS9sa0JXUVJaQjFrS1dRNVpFaGtXR1JuWkhka2htU1ZaS05rczJUQ1pORms0V1R3WlFCbEQyVWZaUzFsUEdWTFpWdGxaMlZ6Wlg5bGkyV1daYUpsc21YQlpkRmw0R1h3WmY5bURtWWNaaXhtTzJaSFpsTm1YMlp1Wm5wbWhtYVNacDVtcm1hOVpzMW0zR2JzWnZ0bkNtY1laeWhuTjJkSFoxWm5abWQxWjRWbmxXZWtaN1JueEdmVVorQm43R2Y0YUFSb0UyZ2lhREZvUUdoUWFHQm9iMmgvYUk5b24yaXFhTFZvd1dqTmFObG81V2p3YVB4cEIya1RhU0pwTUdrL2FVMXBXMmxxYVhacGdtbVNhYUpwc21uQ2FkSnA0bW50YWZscUNHb1dhaVZxTTJvL2FrdHFXMnByYW50cWkycVdhcUpxc1dxL2FzNXEzR3JxYXZsckJXc1JheUZyTVd0QmExRnJZV3R4YTN4cmlHdVhhNlZydEd2Q2E5QnIzMnZyYS9kc0Iyd1hiQ2RzTjJ4SGJGZHNZbXh1Ykgxc2kyeWFiS2hzdEd6QWJOQnM0R3p3YlFCdEMyMFhiU1p0TkcxRGJWRnRYMjF1YlhwdGltMmFiYXB0dFczQmJkQnQzbTN0YmZ0dUNXNFliaVJ1TUc1QWJsQnVZRzV3Ym9CdWtHNmJicVp1c1c2OGJzZHUwbTdkYnVodTgyNytid2x2Rkc4ZmJ5cHZPVzlKYjF4dmJtK0JiNU52cFcrNGI4aHYyRy9zY0FCd0ZIQW9jRHh3VUhCZWNHMXdmM0NRY0tKd3MzREVjTlp3NW5EMmNRcHhIbkV5Y1VaeFduRnVjWHh4aTNHZGNhNXh3SEhSY2VKeDlISUVjaFJ5S0hJOGNsQnlaSEo0Y294eW1IS2pjckZ5dkhMS2N0Vnk0M0x1Y3ZwekJuTVNjeDV6UTNOamM0aHpybk81YzhkejBuUGdjK3h6L0hRSWRCUjBJSFFzZERoMFJIUlFkRngwYUhSemRJRjBqM1NhZEtoMHMzUy9kTXQwMTNUaWRPNTArblVHZFJGMUgzVXRkVGgxUkhWUGRWMTFhSFYwZFlCMWpIV1lkYU4xcjNXOGRjcDExWFhrZGZCMS8zWUxkaGQySTNZdmRqdDJTWFp0ZG0xMmJYWnRkbTEyZW5hSGRwUjJvWGF1ZHJaMnluYlZkdUoyOEhiOWR3cDNIWGN4ZDBSM1YzZHJkNGQzcEhld2Q4eDMvWGhFZUdCNFlIaGdlR0I0WUhoZ2VHQjRZSGh1ZUlKNG5IaXBlTDE0MTNqb2VQcDVESG1EZVk5NW5IbTVlZFo1NDNuOWVocDZRbnFCZXBaNjNuc2RlekY3UFh0T2UyeDdpbnUwZTgxNzRYd1BmRXQ4WjN5T2ZNeDg0SDBtZldSOWVIMkVmWlY5czMzUmZnWitYSDYwZnVkL1FuK05mOVNBRElDaWdPeUJNWUZ6Z2JxQ05ZTEdnMCtEdllRSmhIV0UyWVVzaFhlRnc0WVhoeUdIVW9mbWlCbUlXSWpzaVhlS0RZcGdpcVdLOTR0U2pBcU1ibzBlamdxT3BvOHFqNkNQNXBBaGtHcVF0NUVGa1lLUnNKRzRrY1NTc0pNaGsxS1RpSlEvbFI2VlA1WkdsbnlXMFpkQ2w0U1gzNWhMbUpXWTZKbFFtYXVhTXBxaW12MmJHWnRZbTdHY0Y1eGVuSytkR0oxV25jR2VLcDUybnRXZk81K09uOXVnSmFDTG9OcWhHYUZwb2NHaUE2SlZvcCtpKzZOUG84dWtMNlN4cFBlbFRLV1JwZDJtTktaK3BzS25McWVRcC9Tb1ZxaXlxUVdwZWFuT3FoQ3FYcXFzcXVxclU2dW5yQU9zWmF6SXJSU3RqSzNkcmpHdWRhN0JyeFN2WHErZ3IrcXdDckcxc2dNQUFRQUFCZ0VCTUFBTEFFTUFCUUFDQUFBQUFRQUJBQUFBUUFBQUFBUUFBZ0FBQUJVQkFnQUFBQU1BQUFBQUFMQUFBQUFBQUFNQUFBQUJBQklBc2dBQUFBTUFBQUFDQUFnQXhnQUFBQU1BQUFBREFGQUEwQUFBQUFNQUFBQUVBQndCSWdBQUFBTUFBQUFGQUNBQlFBQUFBQU1BQUFBR0FCb0JZZ0FCQUFBQUFBQUFBRmdCZmdBQkFBQUFBQUFCQUFrQjF3QUJBQUFBQUFBQ0FBUUI0UUFCQUFBQUFBQURBQ2dCNWdBQkFBQUFBQUFFQUE0Q0R3QUJBQUFBQUFBRkFCQUNIZ0FCQUFBQUFBQUdBQTBDTHdBREFBRUVDUUFBQUxBQUFBQURBQUVFQ1FBQkFCSUFzZ0FEQUFFRUNRQUNBQWdBeGdBREFBRUVDUUFEQUZBQTBBQURBQUVFQ1FBRUFCd0JJZ0FEQUFFRUNRQUZBQ0FCUUFBREFBRUVDUUFHQUJvQllnQlVBR2dBWlFBZ0FIQUFjZ0J2QUdjQWNnQmhBRzBBY3dBZ0FIUUFid0FnQUdRQWNnQmhBSGNBSUFCMEFHZ0FaUUFnQUhNQWNBQnNBR2tBYmdCbEFITUFJQUJ2QUdZQUlBQjBBR2dBYVFCekFDQUFaZ0J2QUc0QWRBQWdBR0VBY2dCbEFDQUFRd0J2QUhBQWVRQnlBR2tBWndCb0FIUUFJQUF5QURVQU1RQWdBRElBTUFBd0FEQUFJQUJpQUhrQUlBQkhBR1VBYndCeUFHY0FaUUFnQUZjQWFRQnNBR3dBYVFCaEFHMEFjd0F1QUFBQVRRQnZBRzRBYndCekFIQUFZUUJqQUdVQUFBQkNBRzhBYkFCa0FBQUFRd0I1QUhJQWFRQnNBR3dBYVFCakFHa0FlZ0JsQUNBQU9nQWdBRTBBYndCdUFHOEFjd0J3QUdFQVl3QmxBQ0FBUWdCdkFHd0FaQUFnQURvQUlBQXhBRFFBTFFBMkFDMEFNZ0F3QURBQU13QUFBRTBBYndCdUFHOEFjd0J3QUdFQVl3QmxBQ0FBUWdCdkFHd0FaQUFBQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF3QURBQU1RQXVBREFBTUFBd0FDQUFBQUJOQUc4QWJnQnZBSE1BY0FCaEFHTUFaUUJDQUc4QWJBQmtBQUJVYUdVZ2NISnZaM0poYlhNZ2RHOGdaSEpoZHlCMGFHVWdjM0JzYVc1bGN5QnZaaUIwYUdseklHWnZiblFnWVhKbElFTnZjSGx5YVdkb2RDQXlOVEVnTWpBd01DQmllU0JIWlc5eVoyVWdWMmxzYkdsaGJYTXVBRTF2Ym05emNHRmpaUUJDYjJ4a0FFTjVjbWxzYkdsamFYcGxJRG9nVFc5dWIzTndZV05sSUVKdmJHUWdPaUF4TkMwMkxUSXdNRE1BVFc5dWIzTndZV05sSUVKdmJHUUFWbVZ5YzJsdmJpQXdNREV1TURBd0lBQk5iMjV2YzNCaFkyVkNiMnhrQUFBQUFnQUFBQUFBQVArY0FDVUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVlCQUFBQUFRQUNBUUlCQXdFRUFRVUJCZ0VIQVFnQkNRRUtBUXNCREFFTkFRNEJEd0VRQVJFQkVnRVRBUlFCRlFFV0FSY0JHQUVaQVJvQkd3RWNBUjBCSGdFZkFTQUJJUUVpQVNNQkpBRWxBU1lCSndFb0FTa0JLZ0VyQVN3QkxRRXVBUzhCTUFFeEFUSUJNd0UwQVRVQk5nRTNBVGdCT1FFNkFUc0JQQUU5QVQ0QlB3RkFBVUVCUWdGREFVUUJSUUZHQVVjQlNBRkpBVW9CU3dGTUFVMEJUZ0ZQQVZBQlVRRlNBVk1CVkFGVkFWWUJWd0ZZQVZrQldnRmJBVndCWFFGZUFWOEJZQUZoQUtNQWhBQ0ZBTDBBbGdEb0FJWUFqZ0NMQUowQXFRQ2tBV0lBaWdEYUFJTUFrd0R5QVBNQWpRQ1hBSWdBd3dEZUFQRUFuZ0NxQVBVQTlBRDJBS0lBclFESkFNY0FyZ0JpQUdNQWtBQmtBTXNBWlFESUFNb0F6d0RNQU0wQXpnRHBBR1lBMHdEUUFORUFyd0JuQVBBQWtRRFdBTlFBMVFCb0FPc0E3UUNKQUdvQWFRQnJBRzBBYkFCdUFLQUFid0J4QUhBQWNnQnpBSFVBZEFCMkFIY0E2Z0I0QUhvQWVRQjdBSDBBZkFDNEFLRUFmd0IrQUlBQWdRRHNBTzRBdWdGakFXUUJaUUZtQVdjQmFBRDlBUDRCYVFGcUFXc0JiQUQvQVFBQmJRRnVBVzhCQVFGd0FYRUJjZ0Z6QVhRQmRRRjJBWGNCZUFGNUFYb0Jld0Q0QVBrQmZBRjlBWDRCZndHQUFZRUJnZ0dEQVlRQmhRR0dBWWNCaUFHSkFZb0Jpd0Q2QU5jQmpBR05BWTRCandHUUFaRUJrZ0dUQVpRQmxRR1dBWmNCbUFHWkFab0E0Z0RqQVpzQm5BR2RBWjRCbndHZ0FhRUJvZ0dqQWFRQnBRR21BYWNCcUFHcEFMQUFzUUdxQWFzQnJBR3RBYTRCcndHd0FiRUJzZ0d6QVBzQS9BRGtBT1VCdEFHMUFiWUJ0d0c0QWJrQnVnRzdBYndCdlFHK0FiOEJ3QUhCQWNJQnd3SEVBY1VCeGdISEFjZ0J5UUM3QWNvQnl3SE1BYzBBNWdEbkFjNEJ6d0hRQWRFQjBnSFRBZFFCMVFIV0FkY0IyQUhaQWRvQjJ3SGNBZDBCM2dIZkFlQUI0UUhpQWVNQjVBSGxBZVlCNXdIb0Fla0I2Z0hyQWV3QjdRSHVBZThCOEFIeEFmSUI4d0gwQWZVQjlnSDNBZmdCK1FINkFmc0IvQUg5QWY0Qi93SUFBZ0VDQWdJREFnUUNCUUlHQWdjQ0NBSUpBZ29DQ3dJTUFnMENEZ0lQQWhBQ0VRSVNBaE1DRkFJVkFoWUNGd0lZQWhrQ0dnSWJBaHdDSFFJZUFoOENJQUloQWlJQ0l3SWtBaVVDSmdJbkFpZ0NLUUlxQWlzQ0xBSXRBaTRDTHdJd0FqRUNNZ0l6QWpRQ05RSTJBamNDT0FJNUFqb0NPd0k4QWowQ1BnSS9Ba0FDUVFKQ0FrTUNSQUpGQWtZQ1J3SklBa2tDU2dKTEFrd0NUUUpPQWs4Q1VBSlJBbElDVXdKVUFsVUNWZ0pYQWxnQ1dRSmFBbHNDWEFKZEFsNENYd0pnQW1FQ1lnSmpBbVFDWlFKbUFtY0NhQUpwQW1vQ2F3SnNBbTBDYmdKdkFuQUNjUUp5QW5NQ2RBSjFBbllBMkFEaEFuY0NlQUo1QW5vQ2V3SjhBbjBDZmdKL0FvQUNnUUtDQW9NQ2hBS0ZBb1lBMndEY0FOMEE0QURaQU44Q2h3S0lBb2tDaWdLTEFvd0NqUUtPQW84Q2tBS1JBcElDa3dLVUFwVUNsZ0tYQXBnQ21RS2FBcHNDbkFLZEFwNENud0tnQXFFQ29nS2pBcVFDcFFLbUFxY0NxQUtwQXFvQ3F3S3NBcTBDcmdLdkFyQUNzUUt5QXJNQ3RBSzFBcllDdHdLNEFya0N1Z0s3QXJ3Q3ZRSytBcjhDd0FMQkFzSUN3d0xFQXNVQ3hnTEhBc2dDeVFMS0Fzc0N6QUxOQXM0Q3p3TFFBdEVDMGdMVEF0UUMxUUxXQXRjQzJBTFpBdG9DMndMY0F0MEMzZ0xmQXVBQzRRTGlBdU1DNUFMbEF1WUM1d0xvQXVrQzZnTHJBdXdDN1FMdUF1OEM4QUx4QXZJQzh3TDBBdlVDOWdMM0F2Z0MrUUw2QXZzQy9BTDlBdjRDL3dNQUF3RURBZ01EQXdRREJRTUdBd2NEQ0FNSkF3b0RDd01NQXcwRERnTVBBeEFERVFNU0F4TURGQU1WQXhZQW13TVhBeGdER1FNYUF4c0RIQU1kQXg0REh3TWdBeUVESWdNakF5UURKUU1tQXljREtBTXBBeW9ES3dNc0F5MERMZ012QXpBRE1RTXlBek1ETkFNMUF6WUROd000QXprRE9nTTdBendEUFFNK0F6OERRQU5CQTBJRFF3TkVBMFVEUmdOSEEwZ0RTUU5LQTBzRFRBTk5BMDREVHdOUUExRURVZ05UQTFRRFZRTldBMWNEV0FOWkExb0RXd05jQTEwRFhnTmZBMkFEWVFOaUEyTURaQU5sQTJZRFp3Tm9BMmtEYWdOckEyd0RiUU51QTI4RGNBTnhBM0lEY3dOMEEzVURkZ04zQTNnRGVRTjZBM3NEZkFOOUEzNERmd09BQTRFRGdnT0RBNFFEaFFPR0E0Y0RpQU9KQTRvRGl3T01BNDBEamdPUEE1QURrUU9TQTVNRGxBT1ZBNVlEbHdPWUE1a0RtZ09iQTV3RG5RT2VBNThEb0FPaEE2SURvd09rQTZVRHBnT25BNmdEcVFPcUE2c0RyQU90QTY0RHJ3T3dBN0VEc2dPekE3UUR0UU8yQTdjRHVBTzVBN29EdXdPOEE3MER2Z08vQThBRHdRUENBOE1EeEFQRkE4WUR4d1BJQThrRHlnUExBOHdEelFQT0E4OEQwQVBSQTlJRDB3UFVBOVVEMWdQWEE5Z0QyUVBhQTlzRDNBUGRBOTREM3dQZ0ErRUQ0Z1BqQStRRDVRUG1BK2NENkFQcEErb0Q2d1BzQSswRDdnUHZBL0FEOFFQeUEvTUQ5QVAxQS9ZRDl3UDRBL2tEK2dQN0Evd0QvUVArQS84RUFBUUJCQUlFQXdRRUJBVUVCZ1FIQkFnRUNRUUtCQXNFREFRTkJBNEVEd1FRQkJFRUVnUVRCQlFFRlFRV0JCY0VHQVFaQkJvRUd3UWNCQjBFSGdRZkJDQUVJUVFpQkNNRUpBUWxCQ1lFSndRb0JDa0VLZ1FyQkN3RUxRUXVCQzhFTUFReEJESUVNd1EwQkRVRU5nUTNCRGdFT1FRNkJEc0VQQVE5QkQ0RVB3UkFCRUVFUWdSREJFUUVSUVJHQkVjRVNBUkpCRW9FU3dSTUJFMEVUZ1JQQkZBRVVRUlNCRk1FVkFSVkJGWUVWd1JZQkZrRVdnUmJCRndFWFFSZUJGOEVZQVJoQkdJRVl3UmtCR1VFWmdSbkJHZ0VhUVJxQkdzRWJBUnRCRzRFYndSd0JIRUVjZ1J6QkhRRWRRUjJCSGNFZUFSNUJIb0Vld1I4QkgwRWZnUi9CSUFFZ1FTQ0JJTUVoQVNGQklZRWh3U0lCSWtFaWdTTEJJd0VqUVNPQkk4RWtBU1JCSklFa3dTVUJKVUVsZ1NYQkpnRW1RU2FCSnNFbkFTZEJKNEVud1NnQktFRW9nU2pCS1FFcFFTbUJLY0VxQVNwQktvRXF3U3NCSzBFcmdTdkJMQUVzUVN5QkxNRXRBUzFCTFlFdHdTNEJMa0V1Z1M3Qkx3RXZRUytCTDhFd0FUQkJNSUV3d1RFQk1VRXhnVEhCTWdFeVFUS0JNc0V6QVROQk00RXp3VFFCTkVFMGdUVEJOUUUxUVRXQk5jRTJBVFpCTm9FMndUY0JOMEUzZ1RmQk9BRTRRVGlCT01FNUFUbEJPWUU1d1RvQk9rRTZnVHJCT3dFN1FUdUJPOEU4QVR4QlBJRTh3VDBCUFVFOWdUM0JQZ0UrUVQ2QlBzRS9BVDlCUDRFL3dVQUJRRUZBZ1VEQlFRRkJRVUdCUWNGQ0FVSkJRb0ZDd1VNQlEwRkRnVVBCUkFGRVFVU0JSTUZGQVVWQlJZRkZ3VVlCUmtGR2dVYkJSd0ZIUVVlQlI4RklBVWhCU0lGSXdVa0JTVUZKZ1VuQlNnRktRVXFCU3NGTEFVdEJTNEZMd1V3QlRFRk1nVXpCVFFGTlFVMkJUY0ZPQVU1QlRvRk93VThCVDBGUGdVL0JVQUZRUVZDQlVNRlJBVkZCVVlGUndWSUJVa0ZTZ1ZMQlV3RlRRVk9CVThGVUFWUkJWSUZVd1ZVQlZVRlZnVlhCVmdGV1FWYUJWc0ZYQVZkQlY0Rlh3VmdCV0VGWWdWakJXUUZaUVZtQldjRmFBVnBCV29GYXdWc0JXMEZiZ1Z2QlhBRmNRVnlCWE1GZEFWMUJYWUZkd1Y0QlhrRmVnVjdCWHdGZlFWK0JYOEZnQVdCQllJRmd3V0VCWVVGaGdXSEJZZ0ZpUVdLQllzRmpBV05CWTRGandXUUJaRUZrZ1dUQlpRRmxRV1dCWmNGbUFXWkJab0Ztd1djQlowRm5nV2ZCYUFGb1FXaUJhTUZwQVdsQmFZRnB3V29CYWtGcWdXckJhd0ZyUVd1QmE4RnNBV3hCYklBc2dDekJiTUZ0QVcxQUxZQXR3REVCYllBdEFDMUFNVUZ0d0NDQU1JQWh3VzRCYmtGdWdDckJic0Z2QVc5QmI0RnZ3WEFCY0VGd2dYREJjUUZ4UVhHQmNjRnlBWEpBTDRBdndYS0Jjc0Z6QVhOQmM0QXZBWFBCZEFGMFFYU0JkTUYxQVhWQmRZRjF3WFlCZGtGMmdYYkJkd0YzUVhlQmQ4RjRBWGhCZUlGNHdYa0JlVUY1Z1huQmVnRjZRWHFCZXNGN0FYdEFQY0Y3Z1h2QmZBRjhRWHlCZk1GOUFYMUJmWUY5d1g0QmZrRitnWDdCZndGL1FYK0JmOEdBQVlCQmdJR0F3WUVCZ1VHQmdZSEJnZ0dDUVlLQmdzR0RBWU5CZzRHRHdZUUJoRUdFZ1lUQmhRR0ZRQ01CaFlBbndZWEJoZ0dHUVlhQmhzR0hBWWRCaDRHSHdZZ0JpRUdJZ1lqQmlRR0pRWW1CaWNHS0FZcEJpb0dLd1lzQmkwR0xnWXZCakFHTVFZeUJqTUdOQVkxQmpZR053WTRCamtHT2dZN0Jqd0dQUVkrQmo4R1FBWkJCa0lHUXdaRUJrVUdSZ1pIQmtnR1NRWktCa3NHVEFaTkJrNEdUd1pRQmxFR1VnWlRCbFFHVlFaV0JsY0dXQVpaQmxvR1d3WmNCbDBHWGdaZkJtQUdZUVppQm1NR1pBWmxCbVlHWndab0Jta0dhZ1pyQm13R2JRWnVCbThHY0FaeEJuSUZjM0JoWTJVR1pYaGpiR0Z0Q0hGMWIzUmxaR0pzQ201MWJXSmxjbk5wWjI0R1pHOXNiR0Z5QjNCbGNtTmxiblFKWVcxd1pYSnpZVzVrQzNGMWIzUmxjMmx1WjJ4bENYQmhjbVZ1YkdWbWRBcHdZWEpsYm5KcFoyaDBDR0Z6ZEdWeWFYTnJCSEJzZFhNRlkyOXRiV0VHYUhsd2FHVnVCbkJsY21sdlpBVnpiR0Z6YUFSNlpYSnZBMjl1WlFOMGQyOEZkR2h5WldVRVptOTFjZ1JtYVhabEEzTnBlQVZ6WlhabGJnVmxhV2RvZEFSdWFXNWxCV052Ykc5dUNYTmxiV2xqYjJ4dmJnUnNaWE56QldWeGRXRnNCMmR5WldGMFpYSUljWFZsYzNScGIyNENZWFFCUVFGQ0FVTUJSQUZGQVVZQlJ3RklBVWtCU2dGTEFVd0JUUUZPQVU4QlVBRlJBVklCVXdGVUFWVUJWZ0ZYQVZnQldRRmFDMkp5WVdOclpYUnNaV1owQ1dKaFkydHpiR0Z6YUF4aWNtRmphMlYwY21sbmFIUUxZWE5qYVdsamFYSmpkVzBLZFc1a1pYSnpZMjl5WlFWbmNtRjJaUUZoQVdJQll3RmtBV1VCWmdGbkFXZ0JhUUZxQVdzQmJBRnRBVzRCYndGd0FYRUJjZ0Z6QVhRQmRRRjJBWGNCZUFGNUFYb0pZbkpoWTJWc1pXWjBBMkpoY2dwaWNtRmpaWEpwWjJoMENtRnpZMmxwZEdsc1pHVUhkVzVwTURCQk1BZDFibWt3TUVGRUIwRnRZV055YjI0SFlXMWhZM0p2YmdaQlluSmxkbVVHWVdKeVpYWmxCMEZ2WjI5dVpXc0hZVzluYjI1bGF3dERZMmx5WTNWdFpteGxlQXRqWTJseVkzVnRabXhsZUFwRFpHOTBZV05qWlc1MENtTmtiM1JoWTJObGJuUUdSR05oY205dUJtUmpZWEp2YmdaRVkzSnZZWFFIUlcxaFkzSnZiZ2RsYldGamNtOXVCa1ZpY21WMlpRWmxZbkpsZG1VS1JXUnZkR0ZqWTJWdWRBcGxaRzkwWVdOalpXNTBCMFZ2WjI5dVpXc0haVzluYjI1bGF3WkZZMkZ5YjI0R1pXTmhjbTl1QzBkamFYSmpkVzFtYkdWNEMyZGphWEpqZFcxbWJHVjRDa2RrYjNSaFkyTmxiblFLWjJSdmRHRmpZMlZ1ZEF4SFkyOXRiV0ZoWTJObGJuUU1aMk52YlcxaFlXTmpaVzUwQzBoamFYSmpkVzFtYkdWNEMyaGphWEpqZFcxbWJHVjRCRWhpWVhJRWFHSmhjZ1pKZEdsc1pHVUdhWFJwYkdSbEIwbHRZV055YjI0SGFXMWhZM0p2YmdaSlluSmxkbVVHYVdKeVpYWmxCMGx2WjI5dVpXc0hhVzluYjI1bGF3SkpTZ0pwYWd0S1kybHlZM1Z0Wm14bGVBdHFZMmx5WTNWdFpteGxlQXhMWTI5dGJXRmhZMk5sYm5RTWEyTnZiVzFoWVdOalpXNTBER3RuY21WbGJteGhibVJwWXdaTVlXTjFkR1VHYkdGamRYUmxERXhqYjIxdFlXRmpZMlZ1ZEF4c1kyOXRiV0ZoWTJObGJuUUdUR05oY205dUJteGpZWEp2YmdSTVpHOTBCR3hrYjNRR1RtRmpkWFJsQm01aFkzVjBaUXhPWTI5dGJXRmhZMk5sYm5RTWJtTnZiVzFoWVdOalpXNTBCazVqWVhKdmJnWnVZMkZ5YjI0TGJtRndiM04wY205d2FHVURSVzVuQTJWdVp3ZFBiV0ZqY205dUIyOXRZV055YjI0R1QySnlaWFpsQm05aWNtVjJaUTFQYUhWdVoyRnlkVzFzWVhWMERXOW9kVzVuWVhKMWJXeGhkWFFHVW1GamRYUmxCbkpoWTNWMFpReFNZMjl0YldGaFkyTmxiblFNY21OdmJXMWhZV05qWlc1MEJsSmpZWEp2YmdaeVkyRnliMjRHVTJGamRYUmxCbk5oWTNWMFpRdFRZMmx5WTNWdFpteGxlQXR6WTJseVkzVnRabXhsZUFkMWJta3dNVFl5QjNWdWFUQXhOak1HVkdOaGNtOXVCblJqWVhKdmJnUlVZbUZ5QkhSaVlYSUdWWFJwYkdSbEJuVjBhV3hrWlFkVmJXRmpjbTl1QjNWdFlXTnliMjRHVldKeVpYWmxCblZpY21WMlpRVlZjbWx1WndWMWNtbHVadzFWYUhWdVoyRnlkVzFzWVhWMERYVm9kVzVuWVhKMWJXeGhkWFFIVlc5bmIyNWxhd2QxYjJkdmJtVnJDMWRqYVhKamRXMW1iR1Y0QzNkamFYSmpkVzFtYkdWNEMxbGphWEpqZFcxbWJHVjRDM2xqYVhKamRXMW1iR1Y0QmxwaFkzVjBaUVo2WVdOMWRHVUtXbVJ2ZEdGalkyVnVkQXA2Wkc5MFlXTmpaVzUwQld4dmJtZHpCM1Z1YVRBeE9ESUhkVzVwTURFNE5nZDFibWt3TVRnNUIzVnVhVEF4T0VJSGRXNXBNREU0UlFkMWJta3dNVGhHQjNWdWFUQXhPVEFIZFc1cE1ERTVRd2QxYm1rd01UbEVCM1Z1YVRBeE9VVUhkVzVwTURFNVJnVlBhRzl5YmdWdmFHOXliZ2QxYm1rd01VRTNCM1Z1YVRBeFFUZ0hkVzVwTURGQk9RVlZhRzl5YmdWMWFHOXliZ2QxYm1rd01VSXhCM1Z1YVRBeFFqVUhkVzVwTURGQ05nZDFibWt3TVVJM0IzVnVhVEF4UWpnSGRXNXBNREZDT1FkMWJta3dNVU13QjNWdWFUQXhRekVIZFc1cE1ERkRNd2QxYm1rd01VTkVCM1Z1YVRBeFEwVUhkVzVwTURGRFJnZDFibWt3TVVRd0IzVnVhVEF4UkRFSGRXNXBNREZFTWdkMWJta3dNVVF6QjNWdWFUQXhSRFFIZFc1cE1ERkVOUWQxYm1rd01VUTJCM1Z1YVRBeFJEY0hkVzVwTURGRU9BZDFibWt3TVVRNUIzVnVhVEF4UkVFSGRXNXBNREZFUWdkMWJta3dNVVJEQjNWdWFUQXhSRVFIZFc1cE1ERkVSUWQxYm1rd01VUkdCM1Z1YVRBeFJUQUhkVzVwTURGRk1RZDFibWt3TVVVeUIzVnVhVEF4UlRNR1IyTmhjbTl1Qm1kallYSnZiZ2QxYm1rd01VVTRCM1Z1YVRBeFJUa0hkVzVwTURGRlFRZDFibWt3TVVWQ0IzVnVhVEF4UlVNSGRXNXBNREZGUkFkMWJta3dNVVZGQjNWdWFUQXhSVVlIZFc1cE1ERkdNQWQxYm1rd01VWTBCM1Z1YVRBeFJqVUhkVzVwTURGR09BZDFibWt3TVVZNUNrRnlhVzVuWVdOMWRHVUtZWEpwYm1kaFkzVjBaUWRCUldGamRYUmxCMkZsWVdOMWRHVUxUM05zWVhOb1lXTjFkR1VMYjNOc1lYTm9ZV04xZEdVSGRXNXBNREl3TUFkMWJta3dNakF4QjNWdWFUQXlNRElIZFc1cE1ESXdNd2QxYm1rd01qQTBCM1Z1YVRBeU1EVUhkVzVwTURJd05nZDFibWt3TWpBM0IzVnVhVEF5TURnSGRXNXBNREl3T1FkMWJta3dNakJCQjNWdWFUQXlNRUlIZFc1cE1ESXdRd2QxYm1rd01qQkVCM1Z1YVRBeU1FVUhkVzVwTURJd1JnZDFibWt3TWpFd0IzVnVhVEF5TVRFSGRXNXBNREl4TWdkMWJta3dNakV6QjNWdWFUQXlNVFFIZFc1cE1ESXhOUWQxYm1rd01qRTJCM1Z1YVRBeU1UY01VMk52YlcxaFlXTmpaVzUwREhOamIyMXRZV0ZqWTJWdWRBeFVZMjl0YldGaFkyTmxiblFNZEdOdmJXMWhZV05qWlc1MEIzVnVhVEF5TVVVSGRXNXBNREl4UmdkMWJta3dNakkyQjNWdWFUQXlNamNIZFc1cE1ESXlPQWQxYm1rd01qSTVCM1Z1YVRBeU1rRUhkVzVwTURJeVFnZDFibWt3TWpKREIzVnVhVEF5TWtRSGRXNXBNREl5UlFkMWJta3dNakpHQjNWdWFUQXlNekFIZFc1cE1ESXpNUWQxYm1rd01qTXlCM1Z1YVRBeU16TUhkVzVwTURJMU1BZDFibWt3TWpVMEIzVnVhVEF5TlRnSGRXNXBNREkxT1FkMWJta3dNalZDQjNWdWFUQXlOVU1IZFc1cE1ESTJNQWQxYm1rd01qWXhCM1Z1YVRBeU5qSUhkVzVwTURJMk5RZDFibWt3TWpZNEIzVnVhVEF5TmprSGRXNXBNREkyUVFkMWJta3dNalpHQjNWdWFUQXlOelFIZFc1cE1ESTNPQWQxYm1rd01qYzVCM1Z1YVRBeU4wRUhkVzVwTURJNE1BZDFibWt3TWpneEIzVnVhVEF5T0RjSGRXNXBNREk0UWdkMWJta3dNamhEQjNWdWFUQXlPRVFIZFc1cE1ESTRSUWQxYm1rd01qaEdCM1Z1YVRBeU9USUhkVzVwTURJNU9RZDFibWt3TWpsREIzVnVhVEF5T1VVSGRXNXBNREk1UmdkMWJta3dNa0l3QjNWdWFUQXlRakVIZFc1cE1ESkNNZ2QxYm1rd01rSXpCM1Z1YVRBeVFqUUhkVzVwTURKQ05RZDFibWt3TWtJMkIzVnVhVEF5UWpjSGRXNXBNREpDT0FkMWJta3dNa0k1QjNWdWFUQXlRa0VIZFc1cE1ESkNRZ2xoWm1scE5UYzVNamtKWVdacGFUWTBPVE0zQjNWdWFUQXlRa1VIZFc1cE1ESkNSZ2QxYm1rd01rTXdCM1Z1YVRBeVF6RUhkVzVwTURKRE1nZDFibWt3TWtNekIzVnVhVEF5UXpRSGRXNXBNREpETlFkMWJta3dNa000QjNWdWFUQXlRemtIZFc1cE1ESkRRUWQxYm1rd01rTkNCM1Z1YVRBeVEwTUhkVzVwTURKRFJBZDFibWt3TWtORkIzVnVhVEF5UTBZSGRXNXBNREpFTUFkMWJta3dNa1F4QjNWdWFUQXlSRElIZFc1cE1ESkVNd2QxYm1rd01rUTBCM1Z1YVRBeVJEVUhkVzVwTURKRU5nZDFibWt3TWtRM0IzVnVhVEF5UkVVSGRXNXBNREpGTUFkMWJta3dNa1V4QjNWdWFUQXlSVElIZFc1cE1ESkZNd2QxYm1rd01rVTBCM1Z1YVRBeVJUVUhkVzVwTURKRk5nZDFibWt3TWtVM0IzVnVhVEF5UlRnSGRXNXBNREpGT1FsbmNtRjJaV052YldJSllXTjFkR1ZqYjIxaUIzVnVhVEF6TURJSmRHbHNaR1ZqYjIxaUIzVnVhVEF6TURRSGRXNXBNRE13TlFkMWJta3dNekEyQjNWdWFUQXpNRGNIZFc1cE1ETXdPQTFvYjI5cllXSnZkbVZqYjIxaUIzVnVhVEF6TUVFSGRXNXBNRE13UWdkMWJta3dNekJEQjNWdWFUQXpNRVFIZFc1cE1ETXdSUWQxYm1rd016QkdCM1Z1YVRBek1UQUhkVzVwTURNeE1RZDFibWt3TXpFeUIzVnVhVEF6TVRNSGRXNXBNRE14TkFkMWJta3dNekUxQjNWdWFUQXpNVFlIZFc1cE1ETXhOd2QxYm1rd016RTRCM1Z1YVRBek1Ua0hkVzVwTURNeFFRZDFibWt3TXpGQ0IzVnVhVEF6TVVNSGRXNXBNRE14UkFkMWJta3dNekZGQjNWdWFUQXpNVVlIZFc1cE1ETXlNQWQxYm1rd016SXhCM1Z1YVRBek1qSU1aRzkwWW1Wc2IzZGpiMjFpQjNWdWFUQXpNalFIZFc1cE1ETXlOUWQxYm1rd016STJCM1Z1YVRBek1qY0hkVzVwTURNeU9BZDFibWt3TXpJNUIzVnVhVEF6TWtFSGRXNXBNRE15UWdkMWJta3dNekpEQjNWdWFUQXpNa1FIZFc1cE1ETXlSUWQxYm1rd016SkdCM1Z1YVRBek16QUhkVzVwTURNek1RZDFibWt3TXpNeUIzVnVhVEF6TXpNSGRXNXBNRE16TkFkMWJta3dNek0xQjNWdWFUQXpNellIZFc1cE1ETXpOd2QxYm1rd016TTRCM1Z1YVRBek16a0hkVzVwTURNelFRZDFibWt3TXpOQ0IzVnVhVEF6TTBNSGRXNXBNRE16UkFkMWJta3dNek5GQjNWdWFUQXpNMFlIZFc1cE1ETTBNQWQxYm1rd016UXhCM1Z1YVRBek5ESUhkVzVwTURNME13ZDFibWt3TXpRMEIzVnVhVEF6TkRVSGRXNXBNRE0yTUFkMWJta3dNell4QjNWdWFUQXpOelFIZFc1cE1ETTNOUWQxYm1rd016ZEJCM1Z1YVRBek4wVUZkRzl1YjNNTlpHbGxjbVZ6YVhOMGIyNXZjd3BCYkhCb1lYUnZibTl6Q1dGdWIzUmxiR1ZwWVF4RmNITnBiRzl1ZEc5dWIzTUlSWFJoZEc5dWIzTUpTVzkwWVhSdmJtOXpERTl0YVdOeWIyNTBiMjV2Y3d4VmNITnBiRzl1ZEc5dWIzTUtUMjFsWjJGMGIyNXZjeEZwYjNSaFpHbGxjbVZ6YVhOMGIyNXZjd1ZCYkhCb1lRUkNaWFJoQlVkaGJXMWhCM1Z1YVRBek9UUUhSWEJ6YVd4dmJnUmFaWFJoQTBWMFlRVlVhR1YwWVFSSmIzUmhCVXRoY0hCaEJreGhiV0prWVFKTmRRSk9kUUpZYVFkUGJXbGpjbTl1QWxCcEExSm9id1ZUYVdkdFlRTlVZWFVIVlhCemFXeHZiZ05RYUdrRFEyaHBBMUJ6YVFkMWJta3dNMEU1REVsdmRHRmthV1Z5WlhOcGN3OVZjSE5wYkc5dVpHbGxjbVZ6YVhNS1lXeHdhR0YwYjI1dmN3eGxjSE5wYkc5dWRHOXViM01JWlhSaGRHOXViM01KYVc5MFlYUnZibTl6RkhWd2MybHNiMjVrYVdWeVpYTnBjM1J2Ym05ekJXRnNjR2hoQkdKbGRHRUZaMkZ0YldFRlpHVnNkR0VIWlhCemFXeHZiZ1I2WlhSaEEyVjBZUVYwYUdWMFlRUnBiM1JoQld0aGNIQmhCbXhoYldKa1lRZDFibWt3TTBKREFtNTFBbmhwQjI5dGFXTnliMjREY21odkJuTnBaMjFoTVFWemFXZHRZUU4wWVhVSGRYQnphV3h2YmdOd2FHa0RZMmhwQTNCemFRVnZiV1ZuWVF4cGIzUmhaR2xsY21WemFYTVBkWEJ6YVd4dmJtUnBaWEpsYzJsekRHOXRhV055YjI1MGIyNXZjd3gxY0hOcGJHOXVkRzl1YjNNS2IyMWxaMkYwYjI1dmN3aFZjSE5wYkc5dU1RZDFibWt3TTBRekIzVnVhVEF6UkRRSGRXNXBNRE5FUXdkMWJta3dNMFUwQjNWdWFUQXpSVFVIZFc1cE1ETkdNd2QxYm1rd05EQXdDV0ZtYVdreE1EQXlNd2xoWm1scE1UQXdOVEVKWVdacGFURXdNRFV5Q1dGbWFXa3hNREExTXdsaFptbHBNVEF3TlRRSllXWnBhVEV3TURVMUNXRm1hV2t4TURBMU5nbGhabWxwTVRBd05UY0pZV1pwYVRFd01EVTRDV0ZtYVdreE1EQTFPUWxoWm1scE1UQXdOakFKWVdacGFURXdNRFl4QjNWdWFUQTBNRVFKWVdacGFURXdNRFl5Q1dGbWFXa3hNREUwTlFsaFptbHBNVEF3TVRjSllXWnBhVEV3TURFNENXRm1hV2t4TURBeE9RbGhabWxwTVRBd01qQUpZV1pwYVRFd01ESXhDV0ZtYVdreE1EQXlNZ2xoWm1scE1UQXdNalFKWVdacGFURXdNREkxQ1dGbWFXa3hNREF5TmdsaFptbHBNVEF3TWpjSllXWnBhVEV3TURJNENXRm1hV2t4TURBeU9RbGhabWxwTVRBd016QUpZV1pwYVRFd01ETXhDV0ZtYVdreE1EQXpNZ2xoWm1scE1UQXdNek1KWVdacGFURXdNRE0wQ1dGbWFXa3hNREF6TlFsaFptbHBNVEF3TXpZSllXWnBhVEV3TURNM0NXRm1hV2t4TURBek9BbGhabWxwTVRBd016a0pZV1pwYVRFd01EUXdDV0ZtYVdreE1EQTBNUWxoWm1scE1UQXdORElKWVdacGFURXdNRFF6Q1dGbWFXa3hNREEwTkFsaFptbHBNVEF3TkRVSllXWnBhVEV3TURRMkNXRm1hV2t4TURBME53bGhabWxwTVRBd05EZ0pZV1pwYVRFd01EUTVDV0ZtYVdreE1EQTJOUWxoWm1scE1UQXdOallKWVdacGFURXdNRFkzQ1dGbWFXa3hNREEyT0FsaFptbHBNVEF3TmprSllXWnBhVEV3TURjd0NXRm1hV2t4TURBM01nbGhabWxwTVRBd056TUpZV1pwYVRFd01EYzBDV0ZtYVdreE1EQTNOUWxoWm1scE1UQXdOellKWVdacGFURXdNRGMzQ1dGbWFXa3hNREEzT0FsaFptbHBNVEF3TnprSllXWnBhVEV3TURnd0NXRm1hV2t4TURBNE1RbGhabWxwTVRBd09ESUpZV1pwYVRFd01EZ3pDV0ZtYVdreE1EQTROQWxoWm1scE1UQXdPRFVKWVdacGFURXdNRGcyQ1dGbWFXa3hNREE0TndsaFptbHBNVEF3T0RnSllXWnBhVEV3TURnNUNXRm1hV2t4TURBNU1BbGhabWxwTVRBd09URUpZV1pwYVRFd01Ea3lDV0ZtYVdreE1EQTVNd2xoWm1scE1UQXdPVFFKWVdacGFURXdNRGsxQ1dGbWFXa3hNREE1TmdsaFptbHBNVEF3T1RjSGRXNXBNRFExTUFsaFptbHBNVEF3TnpFSllXWnBhVEV3TURrNUNXRm1hV2t4TURFd01BbGhabWxwTVRBeE1ERUpZV1pwYVRFd01UQXlDV0ZtYVdreE1ERXdNd2xoWm1scE1UQXhNRFFKWVdacGFURXdNVEExQ1dGbWFXa3hNREV3TmdsaFptbHBNVEF4TURjSllXWnBhVEV3TVRBNENXRm1hV2t4TURFd09RZDFibWt3TkRWRUNXRm1hV2t4TURFeE1BbGhabWxwTVRBeE9UTUpZV1pwYVRFd01EVXdDV0ZtYVdreE1EQTVPQWQxYm1rd05Ea3lCM1Z1YVRBME9UTUhkVzVwTURRNU5nZDFibWt3TkRrM0IzVnVhVEEwT1RnSGRXNXBNRFE1T1FkMWJta3dORGxCQjNWdWFUQTBPVUlIZFc1cE1EUkJRUWQxYm1rd05FRkNCM1Z1YVRBMFFVTUhkVzVwTURSQlJBZDFibWt3TkVGRkIzVnVhVEEwUVVZSGRXNXBNRFJDTUFkMWJta3dORUl4QjNWdWFUQTBRaklIZFc1cE1EUkNNd2QxYm1rd05FSkJCM1Z1YVRBMFFrSUhkVzVwTURSRE1BZDFibWt3TkVNeEIzVnVhVEEwUXpJSGRXNXBNRFJFTUFkMWJta3dORVF4QjNWdWFUQTBSRElIZFc1cE1EUkVNd2QxYm1rd05FUTBCM1Z1YVRBMFJEVUhkVzVwTURSRU5nZDFibWt3TkVRM0IzVnVhVEEwUkRnSllXWnBhVEV3T0RRMkIzVnVhVEEwUkVFSGRXNXBNRFJFUWdkMWJta3dORVJEQjNWdWFUQTBSRVFIZFc1cE1EUkVSUWQxYm1rd05FUkdCM1Z1YVRBMFJUQUhkVzVwTURSRk1RZDFibWt3TkVVeUIzVnVhVEEwUlRNSGRXNXBNRFJGTkFkMWJta3dORVUxQjNWdWFUQTBSVFlIZFc1cE1EUkZOd2QxYm1rd05FVTRCM1Z1YVRBMFJUa0hkVzVwTURSRlFRZDFibWt3TkVWQ0IzVnVhVEEwUlVNSGRXNXBNRFJGUkFkMWJta3dORVZGQjNWdWFUQTBSVVlIZFc1cE1EUkdNQWQxYm1rd05FWXhCM1Z1YVRBMFJqSUhkVzVwTURSR013ZDFibWt3TkVZMEIzVnVhVEEwUmpVSGRXNXBNRFJHT0FkMWJta3dORVk1QjNWdWFURkZNREFIZFc1cE1VVXdNUWQxYm1reFJUQXlCM1Z1YVRGRk1ETUhkVzVwTVVVd05BZDFibWt4UlRBMUIzVnVhVEZGTURZSGRXNXBNVVV3TndkMWJta3hSVEE0QjNWdWFURkZNRGtIZFc1cE1VVXdRUWQxYm1reFJUQkNCM1Z1YVRGRk1FTUhkVzVwTVVVd1JBZDFibWt4UlRCRkIzVnVhVEZGTUVZSGRXNXBNVVV4TUFkMWJta3hSVEV4QjNWdWFURkZNVElIZFc1cE1VVXhNd2QxYm1reFJURTBCM1Z1YVRGRk1UVUhkVzVwTVVVeE5nZDFibWt4UlRFM0IzVnVhVEZGTVRnSGRXNXBNVVV4T1FkMWJta3hSVEZCQjNWdWFURkZNVUlIZFc1cE1VVXhRd2QxYm1reFJURkVCM1Z1YVRGRk1VVUhkVzVwTVVVeFJnZDFibWt4UlRJd0IzVnVhVEZGTWpFSGRXNXBNVVV5TWdkMWJta3hSVEl6QjNWdWFURkZNalFIZFc1cE1VVXlOUWQxYm1reFJUSTJCM1Z1YVRGRk1qY0hkVzVwTVVVeU9BZDFibWt4UlRJNUIzVnVhVEZGTWtFSGRXNXBNVVV5UWdkMWJta3hSVEpEQjNWdWFURkZNa1FIZFc1cE1VVXlSUWQxYm1reFJUSkdCM1Z1YVRGRk16QUhkVzVwTVVVek1RZDFibWt4UlRNeUIzVnVhVEZGTXpNSGRXNXBNVVV6TkFkMWJta3hSVE0xQjNWdWFURkZNellIZFc1cE1VVXpOd2QxYm1reFJUTTRCM1Z1YVRGRk16a0hkVzVwTVVVelFRZDFibWt4UlROQ0IzVnVhVEZGTTBNSGRXNXBNVVV6UkFkMWJta3hSVE5GQjNWdWFURkZNMFlIZFc1cE1VVTBNQWQxYm1reFJUUXhCM1Z1YVRGRk5ESUhkVzVwTVVVME13ZDFibWt4UlRRMEIzVnVhVEZGTkRVSGRXNXBNVVUwTmdkMWJta3hSVFEzQjNWdWFURkZORGdIZFc1cE1VVTBPUWQxYm1reFJUUkJCM1Z1YVRGRk5FSUhkVzVwTVVVMFF3ZDFibWt4UlRSRUIzVnVhVEZGTkVVSGRXNXBNVVUwUmdkMWJta3hSVFV3QjNWdWFURkZOVEVIZFc1cE1VVTFNZ2QxYm1reFJUVXpCM1Z1YVRGRk5UUUhkVzVwTVVVMU5RZDFibWt4UlRVMkIzVnVhVEZGTlRjSGRXNXBNVVUxT0FkMWJta3hSVFU1QjNWdWFURkZOVUVIZFc1cE1VVTFRZ2QxYm1reFJUVkRCM1Z1YVRGRk5VUUhkVzVwTVVVMVJRZDFibWt4UlRWR0IzVnVhVEZGTmpBSGRXNXBNVVUyTVFkMWJta3hSVFl5QjNWdWFURkZOak1IZFc1cE1VVTJOQWQxYm1reFJUWTFCM1Z1YVRGRk5qWUhkVzVwTVVVMk53ZDFibWt4UlRZNEIzVnVhVEZGTmprSGRXNXBNVVUyUVFkMWJta3hSVFpDQjNWdWFURkZOa01IZFc1cE1VVTJSQWQxYm1reFJUWkZCM1Z1YVRGRk5rWUhkVzVwTVVVM01BZDFibWt4UlRjeEIzVnVhVEZGTnpJSGRXNXBNVVUzTXdkMWJta3hSVGMwQjNWdWFURkZOelVIZFc1cE1VVTNOZ2QxYm1reFJUYzNCM1Z1YVRGRk56Z0hkVzVwTVVVM09RZDFibWt4UlRkQkIzVnVhVEZGTjBJSGRXNXBNVVUzUXdkMWJta3hSVGRFQjNWdWFURkZOMFVIZFc1cE1VVTNSZ1pYWjNKaGRtVUdkMmR5WVhabEJsZGhZM1YwWlFaM1lXTjFkR1VKVjJScFpYSmxjMmx6Q1hka2FXVnlaWE5wY3dkMWJta3hSVGcyQjNWdWFURkZPRGNIZFc1cE1VVTRPQWQxYm1reFJUZzVCM1Z1YVRGRk9FRUhkVzVwTVVVNFFnZDFibWt4UlRoREIzVnVhVEZGT0VRSGRXNXBNVVU0UlFkMWJta3hSVGhHQjNWdWFURkZPVEFIZFc1cE1VVTVNUWQxYm1reFJUa3lCM1Z1YVRGRk9UTUhkVzVwTVVVNU5BZDFibWt4UlRrMUIzVnVhVEZGT1RZSGRXNXBNVVU1TndkMWJta3hSVGs0QjNWdWFURkZPVGtIZFc1cE1VVTVRUWQxYm1reFJUbENCM1Z1YVRGRlFUQUhkVzVwTVVWQk1RZDFibWt4UlVFeUIzVnVhVEZGUVRNSGRXNXBNVVZCTkFkMWJta3hSVUUxQjNWdWFURkZRVFlIZFc1cE1VVkJOd2QxYm1reFJVRTRCM1Z1YVRGRlFUa0hkVzVwTVVWQlFRZDFibWt4UlVGQ0IzVnVhVEZGUVVNSGRXNXBNVVZCUkFkMWJta3hSVUZGQjNWdWFURkZRVVlIZFc1cE1VVkNNQWQxYm1reFJVSXhCM1Z1YVRGRlFqSUhkVzVwTVVWQ013ZDFibWt4UlVJMEIzVnVhVEZGUWpVSGRXNXBNVVZDTmdkMWJta3hSVUkzQjNWdWFURkZRamdIZFc1cE1VVkNPUWQxYm1reFJVSkJCM1Z1YVRGRlFrSUhkVzVwTVVWQ1F3ZDFibWt4UlVKRUIzVnVhVEZGUWtVSGRXNXBNVVZDUmdkMWJta3hSVU13QjNWdWFURkZRekVIZFc1cE1VVkRNZ2QxYm1reFJVTXpCM1Z1YVRGRlF6UUhkVzVwTVVWRE5RZDFibWt4UlVNMkIzVnVhVEZGUXpjSGRXNXBNVVZET0FkMWJta3hSVU01QjNWdWFURkZRMEVIZFc1cE1VVkRRZ2QxYm1reFJVTkRCM1Z1YVRGRlEwUUhkVzVwTVVWRFJRZDFibWt4UlVOR0IzVnVhVEZGUkRBSGRXNXBNVVZFTVFkMWJta3hSVVF5QjNWdWFURkZSRE1IZFc1cE1VVkVOQWQxYm1reFJVUTFCM1Z1YVRGRlJEWUhkVzVwTVVWRU53ZDFibWt4UlVRNEIzVnVhVEZGUkRrSGRXNXBNVVZFUVFkMWJta3hSVVJDQjNWdWFURkZSRU1IZFc1cE1VVkVSQWQxYm1reFJVUkZCM1Z1YVRGRlJFWUhkVzVwTVVWRk1BZDFibWt4UlVVeEIzVnVhVEZGUlRJSGRXNXBNVVZGTXdkMWJta3hSVVUwQjNWdWFURkZSVFVIZFc1cE1VVkZOZ2QxYm1reFJVVTNCM1Z1YVRGRlJUZ0hkVzVwTVVWRk9RZDFibWt4UlVWQkIzVnVhVEZGUlVJSGRXNXBNVVZGUXdkMWJta3hSVVZFQjNWdWFURkZSVVVIZFc1cE1VVkZSZ2QxYm1reFJVWXdCM1Z1YVRGRlJqRUdXV2R5WVhabEJubG5jbUYyWlFkMWJta3hSVVkwQjNWdWFURkZSalVIZFc1cE1VVkdOZ2QxYm1reFJVWTNCM1Z1YVRGRlJqZ0hkVzVwTVVWR09RZDFibWt4UmpBd0IzVnVhVEZHTURFSGRXNXBNVVl3TWdkMWJta3hSakF6QjNWdWFURkdNRFFIZFc1cE1VWXdOUWQxYm1reFJqQTJCM1Z1YVRGR01EY0hkVzVwTVVZd09BZDFibWt4UmpBNUIzVnVhVEZHTUVFSGRXNXBNVVl3UWdkMWJta3hSakJEQjNWdWFURkdNRVFIZFc1cE1VWXdSUWQxYm1reFJqQkdCM1Z1YVRGR01UQUhkVzVwTVVZeE1RZDFibWt4UmpFeUIzVnVhVEZHTVRNSGRXNXBNVVl4TkFkMWJta3hSakUxQjNWdWFURkdNVGdIZFc1cE1VWXhPUWQxYm1reFJqRkJCM1Z1YVRGR01VSUhkVzVwTVVZeFF3ZDFibWt4UmpGRUIzVnVhVEZHTWpBSGRXNXBNVVl5TVFkMWJta3hSakl5QjNWdWFURkdNak1IZFc1cE1VWXlOQWQxYm1reFJqSTFCM1Z1YVRGR01qWUhkVzVwTVVZeU53ZDFibWt4UmpJNEIzVnVhVEZHTWprSGRXNXBNVVl5UVFkMWJta3hSakpDQjNWdWFURkdNa01IZFc1cE1VWXlSQWQxYm1reFJqSkZCM1Z1YVRGR01rWUhkVzVwTVVZek1BZDFibWt4UmpNeEIzVnVhVEZHTXpJSGRXNXBNVVl6TXdkMWJta3hSak0wQjNWdWFURkdNelVIZFc1cE1VWXpOZ2QxYm1reFJqTTNCM1Z1YVRGR016Z0hkVzVwTVVZek9RZDFibWt4UmpOQkIzVnVhVEZHTTBJSGRXNXBNVVl6UXdkMWJta3hSak5FQjNWdWFURkdNMFVIZFc1cE1VWXpSZ2QxYm1reFJqUXdCM1Z1YVRGR05ERUhkVzVwTVVZME1nZDFibWt4UmpRekIzVnVhVEZHTkRRSGRXNXBNVVkwTlFkMWJta3hSalE0QjNWdWFURkdORGtIZFc1cE1VWTBRUWQxYm1reFJqUkNCM1Z1YVRGR05FTUhkVzVwTVVZMFJBZDFibWt4UmpVd0IzVnVhVEZHTlRFSGRXNXBNVVkxTWdkMWJta3hSalV6QjNWdWFURkdOVFFIZFc1cE1VWTFOUWQxYm1reFJqVTJCM1Z1YVRGR05UY0hkVzVwTVVZMU9RZDFibWt4UmpWQ0IzVnVhVEZHTlVRSGRXNXBNVVkxUmdkMWJta3hSall3QjNWdWFURkdOakVIZFc1cE1VWTJNZ2QxYm1reFJqWXpCM1Z1YVRGR05qUUhkVzVwTVVZMk5RZDFibWt4UmpZMkIzVnVhVEZHTmpjSGRXNXBNVVkyT0FkMWJta3hSalk1QjNWdWFURkdOa0VIZFc1cE1VWTJRZ2QxYm1reFJqWkRCM1Z1YVRGR05rUUhkVzVwTVVZMlJRZDFibWt4UmpaR0IzVnVhVEZHTnpBSGRXNXBNVVkzTVFkMWJta3hSamN5QjNWdWFURkdOek1IZFc1cE1VWTNOQWQxYm1reFJqYzFCM1Z1YVRGR056WUhkVzVwTVVZM053ZDFibWt4UmpjNEIzVnVhVEZHTnprSGRXNXBNVVkzUVFkMWJta3hSamRDQjNWdWFURkdOME1IZFc1cE1VWTNSQWQxYm1reFJqZ3dCM1Z1YVRGR09ERUhkVzVwTVVZNE1nZDFibWt4UmpnekIzVnVhVEZHT0RRSGRXNXBNVVk0TlFkMWJta3hSamcyQjNWdWFURkdPRGNIZFc1cE1VWTRPQWQxYm1reFJqZzVCM1Z1YVRGR09FRUhkVzVwTVVZNFFnZDFibWt4UmpoREIzVnVhVEZHT0VRSGRXNXBNVVk0UlFkMWJta3hSamhHQjNWdWFURkdPVEFIZFc1cE1VWTVNUWQxYm1reFJqa3lCM1Z1YVRGR09UTUhkVzVwTVVZNU5BZDFibWt4UmprMUIzVnVhVEZHT1RZSGRXNXBNVVk1TndkMWJta3hSams0QjNWdWFURkdPVGtIZFc1cE1VWTVRUWQxYm1reFJqbENCM1Z1YVRGR09VTUhkVzVwTVVZNVJBZDFibWt4UmpsRkIzVnVhVEZHT1VZSGRXNXBNVVpCTUFkMWJta3hSa0V4QjNWdWFURkdRVElIZFc1cE1VWkJNd2QxYm1reFJrRTBCM1Z1YVRGR1FUVUhkVzVwTVVaQk5nZDFibWt4UmtFM0IzVnVhVEZHUVRnSGRXNXBNVVpCT1FkMWJta3hSa0ZCQjNWdWFURkdRVUlIZFc1cE1VWkJRd2QxYm1reFJrRkVCM1Z1YVRGR1FVVUhkVzVwTVVaQlJnZDFibWt4UmtJd0IzVnVhVEZHUWpFSGRXNXBNVVpDTWdkMWJta3hSa0l6QjNWdWFURkdRalFIZFc1cE1VWkNOZ2QxYm1reFJrSTNCM1Z1YVRGR1FqZ0hkVzVwTVVaQ09RZDFibWt4UmtKQkIzVnVhVEZHUWtJSGRXNXBNVVpDUXdkMWJta3hSa0pFQjNWdWFURkdRa1VIZFc1cE1VWkNSZ2QxYm1reFJrTXdCM1Z1YVRGR1F6RUhkVzVwTVVaRE1nZDFibWt4UmtNekIzVnVhVEZHUXpRSGRXNXBNVVpETmdkMWJta3hSa00zQjNWdWFURkdRemdIZFc1cE1VWkRPUWQxYm1reFJrTkJCM1Z1YVRGR1EwSUhkVzVwTVVaRFF3ZDFibWt4UmtORUIzVnVhVEZHUTBVSGRXNXBNVVpEUmdkMWJta3hSa1F3QjNWdWFURkdSREVIZFc1cE1VWkVNZ2QxYm1reFJrUXpCM1Z1YVRGR1JEWUhkVzVwTVVaRU53ZDFibWt4UmtRNEIzVnVhVEZHUkRrSGRXNXBNVVpFUVFkMWJta3hSa1JDQjNWdWFURkdSRVFIZFc1cE1VWkVSUWQxYm1reFJrUkdCM1Z1YVRGR1JUQUhkVzVwTVVaRk1RZDFibWt4UmtVeUIzVnVhVEZHUlRNSGRXNXBNVVpGTkFkMWJta3hSa1UxQjNWdWFURkdSVFlIZFc1cE1VWkZOd2QxYm1reFJrVTRCM1Z1YVRGR1JUa0hkVzVwTVVaRlFRZDFibWt4UmtWQ0IzVnVhVEZHUlVNSGRXNXBNVVpGUkFkMWJta3hSa1ZGQjNWdWFURkdSVVlIZFc1cE1VWkdNZ2QxYm1reFJrWXpCM1Z1YVRGR1JqUUhkVzVwTVVaR05nZDFibWt4UmtZM0IzVnVhVEZHUmpnSGRXNXBNVVpHT1FkMWJta3hSa1pCQjNWdWFURkdSa0lIZFc1cE1VWkdRd2QxYm1reFJrWkVCM1Z1YVRGR1JrVUhkVzVwTWpBd01BZDFibWt5TURBeEIzVnVhVEl3TURJSGRXNXBNakF3TXdkMWJta3lNREV3QjNWdWFUSXdNVEVLWm1sbmRYSmxaR0Z6YUFsaFptbHBNREF5TURnSGRXNXBNakF4TmcxMWJtUmxjbk5qYjNKbFpHSnNEWEYxYjNSbGNtVjJaWEp6WldRSGRXNXBNakF4UmdkMWJta3lNREl6RG05dVpXUnZkR1Z1YkdWaFpHVnlEblIzYjJSdmRHVnViR1ZoWkdWeUIzVnVhVEl3TWpjSGRXNXBNakF5T0FkMWJta3lNREk1QjNWdWFUSXdNa0VIZFc1cE1qQXlRZ2xoWm1scE5qRTFOek1KWVdacGFUWXhOVGMwQ1dGbWFXazJNVFUzTlFadGFXNTFkR1VHYzJWamIyNWtCM1Z1YVRJd016UUhkVzVwTWpBek5RZDFibWt5TURNMkIzVnVhVEl3TXpjSGRXNXBNakF6T0FkMWJta3lNRE5DQ1dWNFkyeGhiV1JpYkFkMWJta3lNRE5GQjNWdWFUSXdNMFlIZFc1cE1qQTBNQXg2WlhKdmMzVndaWEpwYjNJTVptOTFjbk4xY0dWeWFXOXlER1pwZG1WemRYQmxjbWx2Y2d0emFYaHpkWEJsY21sdmNnMXpaWFpsYm5OMWNHVnlhVzl5RFdWcFoyaDBjM1Z3WlhKcGIzSU1ibWx1WlhOMWNHVnlhVzl5QjNWdWFUSXdOMEVIZFc1cE1qQTNRZ2QxYm1reU1EZERFWEJoY21WdWJHVm1kSE4xY0dWeWFXOXlFbkJoY21WdWNtbG5hSFJ6ZFhCbGNtbHZjZ2x1YzNWd1pYSnBiM0lNZW1WeWIybHVabVZ5YVc5eUMyOXVaV2x1Wm1WeWFXOXlDM1IzYjJsdVptVnlhVzl5RFhSb2NtVmxhVzVtWlhKcGIzSU1abTkxY21sdVptVnlhVzl5REdacGRtVnBibVpsY21sdmNndHphWGhwYm1abGNtbHZjZzF6WlhabGJtbHVabVZ5YVc5eURXVnBaMmgwYVc1bVpYSnBiM0lNYm1sdVpXbHVabVZ5YVc5eUIzVnVhVEl3T0VFSGRXNXBNakE0UWdkMWJta3lNRGhERVhCaGNtVnViR1ZtZEdsdVptVnlhVzl5RW5CaGNtVnVjbWxuYUhScGJtWmxjbWx2Y2dkMWJta3lNRUV3RFdOdmJHOXViVzl1WlhSaGNua0hkVzVwTWpCQk1nUnNhWEpoQjNWdWFUSXdRVFVIZFc1cE1qQkJOZ1p3WlhObGRHRUhkVzVwTWpCQk9BZDFibWt5TUVFNUNXRm1hV2sxTnpZek5nUmtiMjVuQkVWMWNtOEhkVzVwTWpFd01BZDFibWt5TVRBeEIzVnVhVEl4TURJSGRXNXBNakV3TXdkMWJta3lNVEEwQ1dGbWFXazJNVEkwT0FkMWJta3lNVEEyQjNWdWFUSXhNRGNIZFc1cE1qRXdPQWQxYm1reU1UQTVCM1Z1YVRJeE1FRUhkVzVwTWpFd1FnZDFibWt5TVRCREIzVnVhVEl4TUVRSGRXNXBNakV3UlFkMWJta3lNVEJHQjNWdWFUSXhNVEFJU1daeVlXdDBkWElIZFc1cE1qRXhNZ2xoWm1scE5qRXlPRGtIZFc1cE1qRXhOUWxoWm1scE5qRXpOVElIZFc1cE1qRXhOd3QzWldsbGNuTjBjbUZ6Y3dkMWJta3lNVEU1QjNWdWFUSXhNVUVIZFc1cE1qRXhRZ2hTWm5KaGEzUjFjZ2QxYm1reU1URkVCM1Z1YVRJeE1qQUhkVzVwTWpFeU1RZDFibWt5TVRJMEIzVnVhVEl4TWpjSGRXNXBNakV5T0FkMWJta3lNVEk1QjNWdWFUSXhNa0VIZFc1cE1qRXlRZ2QxYm1reU1USkRCM1Z1YVRJeE1rUUpaWE4wYVcxaGRHVmtCM1Z1YVRJeE1rWUhkVzVwTWpFek1BZDFibWt5TVRNeEIzVnVhVEl4TXpJSGRXNXBNakV6TXdkMWJta3lNVE0wQ0c5dVpYUm9hWEprQ1hSM2IzUm9hWEprY3dkMWJta3lNVFUxQjNWdWFUSXhOVFlIZFc1cE1qRTFOd2QxYm1reU1UVTRCM1Z1YVRJeE5Ua0hkVzVwTWpFMVFRbHZibVZsYVdkb2RHZ01kR2h5WldWbGFXZG9kR2h6QzJacGRtVmxhV2RvZEdoekRITmxkbVZ1WldsbmFIUm9jd2QxYm1reU1UVkdCM1Z1YVRJME5qQUhkVzVwTWpRMk1RZDFibWt5TkRZeUIzVnVhVEkwTmpNSGRXNXBNalEyTkFkMWJta3lORFkxQjNWdWFUSTBOallIZFc1cE1qUTJOd2QxYm1reU5EWTRCM1Z1YVRJMFFqWUhkVzVwTWpSQ053ZDFibWt5TkVJNEIzVnVhVEkwUWprSGRXNXBNalJDUVFkMWJta3lORUpDQjNWdWFUSTBRa01IZFc1cE1qUkNSQWQxYm1reU5FSkZCM1Z1YVRJMFFrWUhkVzVwTWpSRE1BZDFibWt5TkVNeEIzVnVhVEkwUXpJSGRXNXBNalJETXdkMWJta3lORU0wQjNWdWFUSTBRelVIZFc1cE1qUkROZ2QxYm1reU5FTTNCM1Z1YVRJMFF6Z0hkVzVwTWpSRE9RZDFibWt5TkVOQkIzVnVhVEkwUTBJSGRXNXBNalJEUXdkMWJta3lORU5FQjNWdWFUSTBRMFVIZFc1cE1qUkRSZ2QxYm1reU5FUXdCM1Z1YVRJMFJERUhkVzVwTWpSRU1nZDFibWt5TkVRekIzVnVhVEkwUkRRSGRXNXBNalJFTlFkMWJta3lORVEyQjNWdWFUSTBSRGNIZFc1cE1qUkVPQWQxYm1reU5FUTVCM1Z1YVRJMFJFRUhkVzVwTWpSRVFnZDFibWt5TkVSREIzVnVhVEkwUkVRSGRXNXBNalJFUlFkMWJta3lORVJHQjNWdWFUSTBSVEFIZFc1cE1qUkZNUWQxYm1reU5FVXlCM1Z1YVRJMFJUTUhkVzVwTWpSRk5BZDFibWt5TkVVMUIzVnVhVEkwUlRZSGRXNXBNalJGTndkMWJta3lORVU0QjNWdWFUSTBSVGtIZFc1cE1qUkZRUWhrYjNSc1pYTnphZ2QxYm1sR1FqRXdCM1Z1YVVaR1JrUUFBQUE9In0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9IlQxUlVUd0FOQUlBQUF3QlFRMFpHSUVsVFA5b0FBQWZVQUFCb2JrWkdWRTBSYWIvb0FBQjJnQUFBQUJ4SFJFVkdBQ2NBN0FBQWNFUUFBQUFlUjFCUFU5K2E5aWNBQUhDRUFBQUNaa2RUVlVKc2tYU1BBQUJ3WkFBQUFDQlBVeTh5V29zL2NBQUFBVUFBQUFCZ1kyMWhjQlZSVXpBQUFBUUFBQUFEc21obFlXVHU0U1Q3QUFBQTNBQUFBRFpvYUdWaENHZ0ZJd0FBQVJRQUFBQWthRzEwZUR1TENkNEFBSExzQUFBRGxHMWhlSEFBNWxBQUFBQUJPQUFBQUFadVlXMWxDMm9aV3dBQUFhQUFBQUplY0c5emRQK0dBRElBQUFlMEFBQUFJQUFCQUFBQUFRQUFIM2V3TjE4UFBQVUFDd1BvQUFBQUFNWEI4SW9BQUFBQXhjSHdpdjhyL3pVRkV3UE5BQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBUE4velVBV2dVaC95di82QVVUQUFFQUFBQUFBQUFBQUFBQUFBQUFBQURrQUFCUUFBRG1BQUFBQXdLRUFmUUFCUUFBQW9vQ3ZBQUFBSXdDaWdLOEFBQUI0QUF4QVFJQUFBSUFCZ01BQUFBQUFBQ0FBQUN2UUFBQVNBQUFBQUFBQUFBQVVHWkZaQUJBQUNMN0FnTWcvemdBV2dQTkFNc2dBQUFCQU5RQUFBSDhBc2dBSUFBZ0FBSUFBQUFPQUs0QUFRQUFBQUFBQUFBM0FIQUFBUUFBQUFBQUFRQUlBTG9BQVFBQUFBQUFBZ0FHQU5FQUFRQUFBQUFBQXdBa0FTSUFBUUFBQUFBQUJBQUlBVmtBQVFBQUFBQUFCUUFRQVlRQUFRQUFBQUFBQmdBSUFhY0FBd0FCQkFrQUFBQnVBQUFBQXdBQkJBa0FBUUFRQUtnQUF3QUJCQWtBQWdBTUFNTUFBd0FCQkFrQUF3QklBTmdBQXdBQkJBa0FCQUFRQVVjQUF3QUJCQWtBQlFBZ0FXSUFBd0FCQkFrQUJnQVFBWlVBUXdCdkFIQUFlUUJ5QUdrQVp3Qm9BSFFBSUFBb0FHTUFLUUFnQURFQU9RQTVBRElBSUFCUkFIVUFZUUJzQUdrQVZBQjVBSEFBWlFBZ0FERUFMUUE0QURBQU1BQXRBRGtBTlFBd0FDMEFNZ0E1QURJQU1RQWdBSFFBYndBZ0FFOEFjZ0JrQUdVQWNnQlNBRThBUlFBQVEyOXdlWEpwWjJoMElDaGpLU0F4T1RreUlGRjFZV3hwVkhsd1pTQXhMVGd3TUMwNU5UQXRNamt5TVNCMGJ5QlBjbVJsY2xKUFJRQUFVUUJVQUVzQWJ3QnZBSEFBWlFCeUFBQlJWRXR2YjNCbGNnQUFUUUJsQUdRQWFRQjFBRzBBQUUxbFpHbDFiUUFBUmdCdkFHNEFkQUJHQUc4QWNnQm5BR1VBSUFBeUFDNEFNQUFnQURvQUlBQlJBRlFBU3dCdkFHOEFjQUJsQUhJQUlBQTZBQ0FBTVFBNEFDMEFNZ0F0QURJQU1BQXdBRGtBQUVadmJuUkdiM0puWlNBeUxqQWdPaUJSVkV0dmIzQmxjaUE2SURFNExUSXRNakF3T1FBQVVRQlVBRXNBYndCdkFIQUFaUUJ5QUFCUlZFdHZiM0JsY2dBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURBQU1BQXhBQzRBTUFBd0FEQUFJQUFBVm1WeWMybHZiaUF3TURFdU1EQXdJQUFBVVFCVUFFc0Fid0J2QUhBQVpRQnlBQUJSVkV0dmIzQmxjZ0FBQUFBQUFBTUFBQUFEQUFBQUhBQUJBQUFBQUFLc0FBTUFBUUFBQUJ3QUJBS1FBQUFBTmdBZ0FBUUFGZ0IrQUt3QXRBRC9BVEVCUWdGVEFXRUJlQUYrQVpJQ3h3TGRBN3dnRkNBYUlCNGdJaUFtSURBZ09pQkVJU0lpRXZzQy8vMy8vd0FBQUNBQW9BQ3VBTFlCTVFGQkFWSUJZQUY0QVgwQmtnTEdBdGdEdkNBVElCZ2dIQ0FnSUNZZ01DQTVJRVFoSWlJUyt3SC8vZi8vQUFBQUFBQUFBQUQvWUFBQUFBRC9PUDllL3lIKzB3QUFBQUQ5RWdBQUFBQUFBQUFBNEZQZ1N1QXk0Qi9mcXQ2VkJXd0FBd0FCQURZQThnRUtBUllBQUFHbUFhZ0FBQUFBQUFBQUFBR2lBYVFBQUFHc0FhNEJzZ0cyQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQUFnQURBQVFBQlFBR0FBY0FhQUFKQUFvQUN3QU1BQTBBRGdBUEFCQUFFUUFTQUJNQUZBQVZBQllBRndBWUFCa0FHZ0FiQUJ3QUhRQWVBQjhBSUFBaEFDSUFJd0FrQUNVQUpnQW5BQ2dBS1FBcUFDc0FMQUF0QUM0QUx3QXdBREVBTWdBekFEUUFOUUEyQURjQU9BQTVBRG9BT3dBOEFEMEFQZ0EvQUVBQWZBQkNBRU1BUkFCRkFFWUFSd0JJQUVrQVNnQkxBRXdBVFFCT0FFOEFVQUJSQUZJQVV3QlVBRlVBVmdCWEFGZ0FXUUJhQUZzQVhBQmRBRjRBWHdEUUFHQUFZUUJpQUdjQVpBQ21BR1lBZ3dETEFJc0FhZ0RQQU1vQWdBREpBTTBBcFFDa0FIMEFjd0J5QUlVQW9nQ1BBSGdBb1FDZ0FLTUFld0RSQU5rQTF3RFNBS2tBcWdDS0FLc0Eyd0NzQU5nQTJnRGZBTndBM1FEZUFKWUFyUURpQU9BQTRRRFRBSzRBcUFDTkFPVUE0d0RrQUs4QW1nQ2NBSlVBc1FDd0FMSUF0QUN6QUxVQWtBQzJBTGdBdHdDNUFMb0F2QUM3QUwwQXZnQ1hBTDhBd1FEQUFNSUF4QUREQU5RQWt3REdBTVVBeHdESUFKc0FuUURWQUl3QWtnQ09BSlFBZmdDSUFJRUFnZ0NFQUljQWZ3Q0dBRzhBaVFCQkFBZ0FkUUJwQUhjQWRnQndBSEVBZEFBQUFRWUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRSURCQVVHQjJnSkNnc01EUTRQRUJFU0V4UVZGaGNZR1JvYkhCMGVIeUFoSWlNa0pTWW5LQ2txS3l3dExpOHdNVEl6TkRVMk56ZzVPanM4UFQ0L1FIeENRMFJGUmtkSVNVcExURTFPVDFCUlVsTlVWVlpYV0ZsYVcxeGRYbDhBcWFxcnJLMnVyN0N4c3JPMHRiYTN1TG02dTd5OXZyL0F3Y0xEeE1YR3g4aHd5V0ZpWm5Semxjckx6SDJEQUlxTkFNMEFBR1FBQUFBQUFBQ0xqd0NRazN0Z3p3QmxBQUJxZUhuUTBkTFRqcFJ2aVdsM1FRalVBTlhXWXdCcmJHMXVjWEoxZG5yWDJObmEyOXpkM3QvZzRRRGk0K1Rsa1g1L2dJR0NoSVdHaDRnQUFBQURBQUFBQUFBQS80TUFNZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBRUJBQUJBUUVKVVZSTGIyOXdaWElBQVFJQUFRQXorQThBK0J3QitCMEMrQjREK0JjRUhRQStWaUVOKzJuN1h4d0ZFL3BoQlJ3QXB3OGNBQUFRSEFKeUVSd0FNQnhkU2hJQUJBSUFBUUFJQUQ4QVJ3QlBibUp6Y0dGalpVTnZjSGx5YVdkb2RDQW9ZeWtnTVRrNU1pQlJkV0ZzYVZSNWNHVWdNUzA0TURBdE9UVXdMVEk1TWpFZ2RHOGdUM0prWlhKU1QwVlJWRXR2YjNCbGNsRlVTMjl2Y0dWeUFBQUFBQUVBQWdBREFBUUFCUUFHQUFjQUNBQUpBQW9BQ3dBTUFBMEFEZ0FQQUJBQUVRQVNBQk1BRkFBVkFCWUFGd0FZQUJrQUdnQWJBQndBSFFBZUFCOEFJQUFoQUNJQUl3QWtBQ1VBSmdBbkFDZ0FLUUFxQUNzQUxBQXRBQzRBTHdBd0FERUFNZ0F6QURRQU5RQTJBRGNBT0FBNUFEb0FPd0E4QUQwQVBnQS9BRUFBUVFCQ0FFTUFSQUJGQUVZQVJ3QklBRWtBU2dCTEFFd0FUUUJPQUU4QVVBQlJBRklBVXdCVUFGVUFWZ0JYQUZnQVdRQmFBRnNBWEFCZEFGNEFYd0JnQUdFQVlnQmpBR1FBWlFCbUFHY0FhQUJwQUdvQWF3QnNBRzBBYmdCdkFIQUFjUUJ5QUhNQWRBQjFBSFlBZHdCNEFIa0FlZ0I3QUh3QWZRQitBSDhBZ0FDQkFJSUFnd0NFQUlVQWhnQ0hBSWdBaVFDS0FJc0FqQUNOQUk0QWp3Q1FBSkVBa2dDVEFKUUFsUUNhQUtjQXdBRGRBTVVBNGdDZEFLSUF4d0RrQUpzQW5nQ1dBS01BcVFDa0FLQUFwZ0NvQUswQXJ3Q3hBTElBdWdDOUFNTUF5QURMQU1rQXlnRE5BTXdBemdEUEFOSUEwQURSQU5NQTFnRFVBTlVBMXdEWUFOc0EyUURhQU53QTNnRGhBTjhBNEFDaEFLVUFxZ0NaQUp3QW1BQ1hBWWNBcmdDd0FMOEFud0RqQU1ZQXJBQ3pBS3NBdEFDMUFMWUF0d0M0QUxrQXV3QzhBTDRBd1FEQ0FNUUE1Z0lBQVFBRUFBY0FVUUNxQWQ0Q21nTlZCQUlFTkFTQUJNNEZYUVgxQmdJR0ZRWW5CakFHZlFic0IxMEgwZ2lFQ1BnSllnbkJDa2NLdVFyakN3c0xXZ3U1REFvTWJ3MWpEWUlPUHc2ckR4OFBPQS9kRUZ3Uk5CRklFYmdTY1JMaUU3c1QweFB6RklZVkp4WGlGZndXakJhbEZ5d1lBUmpLR09NWTlCbFVHWmdaN1JvOUduSWFveHJER3o4Ympod0dIQ1ljeXgyVkhqWWVZeDdTSDM0ZjN5Q3ZJTWdnNXlGMUlmY2ljU0tHSXhRakxDT1VKRUFrOGlVTEpSd2xoaVc5SmlrbWJTYW9KejBuOFNmNktOQXBYeW9JS3E0cTRDczRLMzByaWl1WUxId3RWeTJuTGxndlV5OTFML293RnpBa01Ea3drekRZTVBveGZESFNNZ0l5RmpJak1qY3loaksyTXRreTlETXRNMkl6ZlRPNk04azBHalV1TmJFMldqY2VOOXM0TERqeU9UYzV3enB0T3hzN216eGRQVE05VlQxelBpVStRejdqUDNnL2t6K3RRS2RCMlVJNVEzWkQ0a1JTUkxWRXlFVnlSY2RHSDBhNVJ2aEhSa2VWUjl0SUIwaFFTSnBJeTBrbFNYZEo4a283U29OS3pFdE9TNGhMd0V3VFRIdE1ta3poVFNkTmIwMnRUZ1JPUTA2QlRzRlBCMDlGVC9SUVpsR0lVa0pTeTFNUVV4TlRYMU85VkJaVWYxUzFWTmRWSVZWaFZhOVYrVlkzVm5CV3ExYzdWM05YdTFnRVdFdFlpbGpLV1FqN0pnNzd0dzc3L0gzM2N2aVBkd0dZOTNvRDk0YjR4UlhWYWRzMk4yYzdRUjZMVHFOQnAxT1RlYTlJbzR1a2k2M09sWjJudzZIVmk4Z0lnL3hqRmNaWnZrNVBXVmhRVEwxYXg4aTl2TW9lRHZsZmR3R045MmYzcC9kbkEvaDgrTlVWelc3VFBUNXNRMGtlaTFTZVJhVmFsSHVyVWFHTG9JdXJ4WmFicGJ5YzBZdkNDUHVqRnMxczB6OCtiRU5KSG90VW5FV25XcFI3cTFHaGk2Q0xxOFdVbTZlOG5OR0x3Z2dPKzBtTG4vZUQyWWZaRXZjVjJQY2swaFA0K0ZEMzloV3dCNVdEbElFZVhRYURnNUNVSDQyUG5mY2JpNDRGa29TVWdoNWxCb0NMZ29TSmZ3aDYreG9GaVlHQWdvR0xDR3NHZ29LUWxCK05qNTMzRzR1T0JaS0ZsSUllWlFaL2k0T0VpbjhJZWZzYUJZaUJoSUtBaXdoVEJuK0Vnb0VmWmdkL2tvS1hIcmNHbFpHRWdCK0ZaUVdLZ29LQ2dvc0lVd1ovZ29SL0gyUUhnWlNFbHg2M0JwU1NnbjhmZFBza2lZY0ZoSmFEa2g2eEJwZUxrNU9PbGdpZTl5UUZqWldVbHBTTENLNEdscENDZng5NSt5U0pod1dFazRPVUhyQUdsNHVVazR5V0NKMzNKQVdObFpPV2xvc0l4UWFXazVLVkg3SUhsNE9TZ0I1ZkJvS0JrcElmalkrUnNRV1dscEtVSHNNR2xaT1VseC83UFdRVmhHVUZpWUtEZ29LTENHa0doSUNTa2grTmo1S3hCWmFVa3BVZXJBYVZrb1NBSHc1dzJQVDRNTzRCcFBlRzk4UDNoZ1A0enZkS0ZZdjNldnZGVVl2cWk2eWptYWVMNkl1eUo4R0xDSzZkcGEzSVVkaGxIM21MZllGL2k0V0xXWmw5allDTWg1U0xrb3VTalpTTGtBaXlncEJ4SG1vR1pZbUpYQitDQjR0NGlZZDFpQ3g1T2p1TEo0djdBZXBNNW12MVpKYUdpMjJMYUZlQmRvdjdMb3VaOXlCRml3aHdnblIwSDR0am56S3ZjS1ozMm5xeGhRaVpqWCtDSDMwSFpaS0VvaDZ0QnJLUWpya2ZpNUNKa291UGk1ZVBrSjZMMVpMM0lzK0w5eGtJRHZlR2lPVDNUZG5wNVBkSTJRR1g5eXJyOXpQM092Y3E4ZmN6QS9uWDkwd1Y1aS9ZTWZzRyt3QkkreEFnNDFMdjlmY0MxUGNHSHZzNitJOFZvbXlNZXg1b2kzOTlmVzBJKzMzOEtRWDdFUHR0ZFk2TGJZdDF0NGFiaTdlTGc2alU5dzBJOTFEMzJRWHY5ejZwb0l1cENQdVAreWtWNkMzWU5Qc0ord0JJK3hJaTVWSHQ5ZmNFMC9jR0h2ZVgvRFFWZVlWMGMxbDk5eGlibnBhZW5ydWIrd1JxSHZ3Mzkvb1ZlWVowZEZwOTl4cWNtNVNnbjd1Wit3Um9IZzczeVgzM0MvaG83Z0hkOTJINC8vZG5BL29lK0xjVjNUKzVRR0V4Y1ZaL2xJQ1ZIcGlMa0pLVWk1bUxsSCtMZllzMys2V2NpL3RlaTNPWlhhdUxxNHVPMWNtTENMQ3FkR1krTlY5SkpDNzE4QitMNWZjSVBJdjNDNHZRK3dOSWkrMkxzS1Nzc0l1OGk2QmhxWXNJcUtlcHA5WDdDNkpUK3hMN0R6ejdBUitMWGE1YWkzK0xlUHNCZDR2N0VnajdJdmNtK3lEM20vZWo5eVQzSS9VZWkrUkFqNHVuaTZqM0thMkw5eFFJRHZ2OCtWOTNBWkgzZWdQM2cvamNGYzlieWtSSlcxcEhIb3N4MTRTTFpZdE5SMmlMZEFoNHFYK2R6dmNDOXk3M0NoNE8relFrN3ZtNzdnR005M0VEK0ZCWEZhT0JwbThlWjR1QmhJS0xDUHNMZnZlbTN1R1k5NlgzQ3grVWk1V0VyNHNJcDVXbW82Ui9wU2Y3ZXlmN2kvdGorMkx2KzRyM2UrK1hwYVFmRHZzMEpPNzV1KzRCK0ZEM1p3UDRVUGZ4RmZkaktmZUwrMzBuZjNGeWM1ZHdwUjZ2aTVXU2xZc0k5d3lZKzZVMU9INzdwdnNNSDRHTGdaSm5pd2h4ZjNCemNwZHg3L2Q5N2ZlSzkySWZEdnQzK0R6M1FQY0xkd0gzbFBjY0EvZ3QrSzRWallUWWFCNkFpM3FFZ0lrSVkzMEZoNGg4aDRlTGhvdUhqNHVTaTZlU3JJdWlpNnhvaTNLTGRJdDdoSWh4Q0dFSGk0YU9oWXVFaTMrSWZZU0xmWXRXcm0yTGRJdDZUb3Q5aTEzdmtJdDJpM2hEWDR0b0NIUytZNXNlcFl2QjVwbUxub3VxSjZhTG1vdkhzb3VlaTZWT3pJdVVpNlgzQkhpTHZBZ085MWozQ3dIM1p2Y01BL2lUOTVRVnYzbVJiUjQxQm9TTGdvbUdpMitMaUk2THBJdVFqSmVMbEFqY0I2NkltMVZZZzN0dEhvdUdqWVNMaEFnekIyMkZpRzBlaG91R2pZU0xDRE1HYlgyRlYxU1pocTRmajR1U2paQ0xDT2NHbzQrSGJ4ODFCNHVFaVlHTGh3aHRrM3krd1k2YXJSN2ZCNHVVaXBXTGtJdWZqcENpaTVDTG1JMlRpd2pPQnBDTGtJbVBpd2l1blpEQ0h3Nzc1Slgza0FQM2w4OFZJQW9PKzYzMzl2ZElBYlgzdndQMzZmZmNGU0VLRHZ2OGZmZUhBWTMzaGdQM2gvY0FGU0lLRGlING92a3JGU01LRHA1OTl5bjRXdmNwQWJ6M2NmZjM5M0VEK1FYM3JoWDNPZnNXOXlMN092dEZKUHNVK3p2N092Y0creUwzUXZjVTl6VHQ5MW9lKzNOS0ZXMkVWMlJLZWZkSXQ2dVJ2TFhNbS90Q1doNE9ubjMzQlBoLzl6TUIrR0wzaGdQNDdzTVZpOUg3QlVWNjVJTzFpZCtMdDR1dGphNkx2bzNwMVdpTHZBaTNWNDFyK3lmN2RGTklkSjEvb1I2WGk1ZU5tSXNJdkk5NVh4LzdIQWY3Q0hseVpSNTdpM21SZVlzSWRYVjdja2IzaUllc0g4R0w2cEhBbHFtVXFaS0xzQWdPbm92M0tmaE05MEFCK04vM3lnUDVDL2NYRmFlQ3VXWWVhNHQ0VDBPTGVJdHlsNHVraTdQM1BkeUw5eFFJM0VUWSt6ejdEdnRRTXpSdHIyK29Icm1MbDhYSGk3Q0xublNMYVl0RCt3djdFRlpjUlVhSGhvdC9DSTJKQlhLcmlwNGU5K1FHNW90YVhNT0xDTFRUemZjRUh3NmVJdmNFK05yM0Z3SDRaZmRuQS9rTjl5NFZpL2RDK3p4cmk2NkxvdGFjaStFSTlmczVwVHo3Q3ZzZFVWaDJtV2lnSHAyTHJxeTZpN09Mc202TFpvc3UreHVPaTJPTGVKMVBvNHVVaTZlVXJvc0l3TUJ5VVV4R2Frb2ZUb3RvbkhDTENHeHlkbXREOTBPQ3ZmZWI5d3IzR2ZjU0h3NmVwL2NwQWE3M0hQZEE5M29EK1FmR0ZlVUhzWW1OWm5PR2xKc2VpNDZNbEl1T0NQZmdCN0NLcVYwZVVZdGNjbVJqQ1B0Nys1MEZNdnNCZlhhTFFRaFFwWVRBSHZkREJyYVBnRzRmY1FlTGdvbUJpNFVJYjVLRXNCNzNMUWF2a1pta0g2VUhpNVNKbDR1U2k2YVFqNlNMbzQyTm1ZdWNDUHV1OTVNVmkzQ0piWXQ2aTB5SmgxS0xpWXVHallpTENHMEdpWXVFaVltTGVJdGZqNHVnaTZyajZKeWtscHVabDU2TkNJMEduWkZyYkI4T252c0M5d3Y0MGZkSUFiMzNXZmdDOTlFRCtQbjNHUldMejFiM0J2dVdxWGVOYlltTHBRaW9vWXlmSHZkdEJ0V2g1YnExZ1kxbUgvdjVCbWlMZjRKait3SjVXbHY3SDR0YWkxL1ZpYVdHdjRUcGNZdEtpMWhUZTJHTFdJdFRub2FMQ0hXRllIMW9xbHozTmZkbzl5djNCZmNXSHc2ZWZmY2U5MUQzQkFHdzk0YjMrdmR4QS9rUjk1a1Y5RGZtSWg1VGkxMXZmSXVCaTRTV2k1U0xyS3U1c0xXVWtweWVpNWtJcC9zQXFXOGVoZ1pPK3o3N2NmczIrejczRVBzVjkwdjNTZmNFOXg3M0hSLzdiekVWYjNoNmIxeGYzYlNzbXFtc3g2a3NYUjRPbnZqYTkxRUIrUDc0c3hXeVo0dHdIdnZFQmltTGxhZGppd2hiWVVBdVc1bEt4eC9kaXkzSjkxeUxDS2NHcmNHSGJ4K0xlbmhwZ25vSSswYjc3UVdJaUlSK2k0U0xlcnBrOXdDTHZJdUxrcFNsQ1BkZStQWUZqcGVRbEl1WENBNmVmZTc0eU9RQjl3ajNTUGNoOTFrRCtSUDNYUldMd20zQlg2bUZqbm1XaTVTTG9PT2NpK0VJOXh2N1lxWW8reUw3R1VqN0VSNkxOYzVzaTNtTGRqaDRpeXdJK3k3M1hGejNEUGRxMC9jYzJoNzdYdmUwRlhoL1pITnJSTHl1cHFlWm83TzZkbDBlWS92dkZXSmxmMnhNVE1QTW5aR2dueDZsaThCMG9IK3FlN0Y5aTJFSURwNzNDL2NYOStmM0tRR3I5NGIzK1BkNkEva0s5KzBWOXo3N0xkWDdLUHNpK3k5Qit6UDdCczc3RS9jbUhwcUxtNCtiaTVlTGxJYUxmWXRpVmtSZWNZS0hmWUdMZ290dDhtT21pNzZMOXdIM0ZLbTBDTTdtdnZHTDl3WUkrM1ZoRlc5N2IyeFNiOXk4cXB5dHE4U2xLbUVlRHZ2OGZmZUg5NzMzaHdHTjk0WUQ5NGY0SnhYUFZjSkpTRlZVUjByQlZjN053Y0hNSHZ1N0JDSUtEdnZrK0tMM2h3R1Y5NFlEOTQvNEp4WFBWY0pLUmxaVVIwckFWZERNd2NITUhwUDc0eFVnQ2c3NGU4b1ZyQWVMb0lXWGFwZ0krNWozQnZlWTl3WUZySm1SbFl1aUNLc0huSVdyZlI1OWkzK0VmNGNJL0M3N1JRVjdnb3R2aTNxTGVZdHZtNFFJK0M3N1JRV1hoSmVHbVlzSW1aR3NteDhPN2ZjRTkxNzNDd0g0ZS9mMkZiNTVrbTBlL0J3R2JYMkVXRldaaGE0Zmo0dVNqWkNMQ1BmMEJwQ0xrSW1QaXdpdW5aSEJIL3RaQk1CNWtHMGUvQndHYlgyR1ZsV1pocTRmajR1U2paQ0xDUGYwQnBDTGtJbVBpd2l1blpEQkh3NzRlL2VVRlltY2phZDVsQWo4TFBkRkJYMlBncEo5aXdoN2htdDZIMnNIaTNTU2dhdDlDUGVZK3diN21Qc0dCV3QraEgrTGRBaHNCM3VRYXBzZW1ZdVVrSm1TQ1BnczkwVUZuWktKcDQyZENBNTk5M0w0ai9jRUFmaDg5M29EK0h6NHBCWDNDZnNpMFNYN01EVWtOVitxYmJVZTBJdXh0WkxNamFDT3A2ZUxvNHVVYkl0Mml6VTJYNHMxaTJPbGNMV0w2WXRSMnZHd0NOYW5zTHlMeVFqN0tmeENGY1pZdmxGTldGaFFUTDVheWNXK3ZNb2VEdU45MFBjenUvZWMyZmNEMEJLWDB2aUk5eXFDMkJQKytXajRQQldpQi9kQSt6bnIreVFlKzJXTCt6cjdPblA3WW90OWgzcUxmd2o3VVBjdCt4TDNVZmMxOXhiM0VwV1lkS2Q5SG5xTE95SDdGNHY3Tkl2N0dPK0w5enVMa28yV2k1S1g5MFAzSXZjTDl5K0xDUGRMeXZzU014OTZCM3Y3RFV4cmdJa0lpSW9GZ29lVmxoK0xvNW0zamFBSWk0MktpZ1dRb0tQbmk1OElqZ2VaZ1pSNUhtR0xhbTE5aTNTTGU2bGVpelNMK3hQN0NuMzdJb3VHaW9LTGhvdFByR1hBaTlTTHRjeWNpd2lpaTJkUHk0c0k5eXVMOXgzcW1mZERDUHU1Rm9kUlNpUnlpM3FMaTU2TGxKUFl6OXFpaXdpVGo0S0NIdzczc1grZjl6TDNDL2hFOTY0Qmx2ZUdBL29FeGhVa0N2dzE5NFlWSlFvTzl4Ync3dmRoN3U3dUFmZmE5NGJ4OTRZRCtXNzNiUldMMzBYQ1lacUNqNENRaTVtTGxwT1NsWkt3cVp5OGk3aUwybDdoKzAyTFhvdGRoRnVMQ0VHTFFwSkJpMnlMWW5pTFpvdEsyc1dMK3hZSWkzMkIrN01GaGZzN1NjcUxUSXRxcjNpcGk5R0wwSkRPaThxTHdvYk9pL2RmaTh6M0RvdnZDUHZDOTdJVlUzMWhVRytJbktrZWk0Mk5rSXVQQ04wSGk0K0prb3VPQ0tLUW9LbkFtMU5mSHFUN3pCVllkbVJSYm5pTjl3Z2V2Z2VNb0pHY3JJc0l6NTVWVEI4Tzl4Wjk5MUg0SU82NGR3R1Y5NWtEK1dyNGlCWDNBbFhLWVI1N2k0YUVkSXR4aTB1OEtZc0krMWY3VmZzeSsxLzdYdmRBK3pyM1pCLzNDNHZReEsyTENMMjY1N2lrZmE1dkgycUxlVVg3RklzSSt4ODk5eEwzSjhTcjB0WWY5MGFMY2Z0Rjg0c0l4YTI3eFI4TzkyK0c5UGowOXdRQjkrajNodmQ4OTU0RCtjTDMrQlgzUnpEM1FmdXJIdnZaQm1sUmhGNGZpMHJUdDRzc0NJdUpnL3Z4QlluN0pqemNpME9MWTdkNnJJdkRpOE9ReFl2Q2k4R0c0b3NJOTQvM0F2ZEQ5MDRmKzU1dkZTZDEreFQ3RVZXRW5yOGUrQWdIc282ZHRkYmpaUHQ5SGc3MjhPNzNaTzczVnU0OWR4TGk5M0VUK1BsWjkwZ1ZKZ29PNEgrZitDLzNCUGM3N2dIajk0QUQrVVQ0eFJYUFk5cGtIbjJMKzF5QmRvczRpL3RIbFhHTGE0dGZlb3RtaTFYTXM1ZzFqSFNMYW90dENQdGFCNHRyaWtPQWIzWldWYWFMVXdoZnBYUDNOUGR6bExPZ0hwSUhpOVFyUG92M0c0dU5qWktMall1Z2laNkxtWXUra1pLcmkvY0JpMGo3QnN5TENNK1A5dzI1czRmM0FWTWZSWXU3TGorTENGS0pucDMzRzZHUXdoK1ZCdmRUaTJnaXpvc0lzcHF3ckI4TzkxbDk5eW40MlBjUkFZejNtUGl3OTcwRCtiWDNzQldwZ0wvN1VGajdLb1pCSG9zdzh0eUxPQWhtY1hGcFRmc04xZmRqOU1QVDRCNzNIWXVMK3gzdml3akFvN3k3djJqeFRCOTZpM0I3ZW90d2kxeW5OSXNJKzJyN1Nmc3ArMmo3Y2ZkTyt5ZjNhUi8zSVl2M0lOR3k5eVdTcG8yUXBZMmlrS0tjaTZZSUR2ZHZmNS80T1BjUjl6TjNBZUwzZXZoQjkzb0QrY2I1RmhYUit4aUxYUHRUaFZaNEhvMkpCWXR4bllDZWdabUVtNFNMK3dFSWhBZHhpWVJNSGxzR2dJdC9pWVNMYjR0N2tvdTFpK2FRbHFTWm9wbWNsWXVyQ01qN0NZOWhWUHM3Z2tBZWkzZWRnWm1Dc25pT29JdjduWXY3WlgyTmFIdDdoSHA5aTNZSVJ2Y2doN204OXlXUDBoNkx6RTVVaS9jZGk1bUptWXVVQ01DV2p2Y0hIcE1HdEptSldoK0wrMWhEMDR0SUNJeUhCVWozRlltMjkxdU12NkllaTZOOWtuZVdjSm1HbTR1cUNQZVlCNHYzTXBlSnFaZWdsSlNiaTZJSUR2dEpmNS81VkhjQjkrSDNoZ1A0TThvVkp3b095MzMzRi9qbmR3R1E5M3IzQWZkNkEva3IrUklWcDNhNSsxRDdWNE5LZVI2TFRPUzhpeWtJaEFlTGY0bDdpMytMUlpFL2kwNkxPb0JLVFlnSWhZa0ZkM21ib3grTGxwS2VpNXNJeWxLd1VVZGRVMHI3SlBkQlhQY0pIc0dMOTNHZWtmZG9DSlAzeVFXTjM5aHlpOEFJRHZlY2Y1LzNjUGVBOTR4M0FkLzNldmRsNFFQNThzTVZpOFpPaUcyc0NQdGw5NFFGZkoxenBJdW5pN1hleHFDZnJyRDBXSXZkQ01jMWtsVWVZUVpUSW9kSkg0dDBtb0tMZGdoMFBDUnhlWW1ubVI2TDl3dkRhb3UvQ000dGpWa2Vnd2I3WG9GV2VoK05pUVdMVDhHdWx6V1RYNDFWaTF3SVdnZUxVWXRNZ1ZKL09WbWxpMWNJYVo5dzl6TDNSS09xckI2THUwdU9pN3dJb0Flbmo2YWxIcU9MeEVPZGRnalBPQVd5V291SXRJc0k5ejRHc2I2UXZoOE95NHYzQlBqc2R3SHI5NFlEK1NyM054V3hmTHRkSGt1THhmc2QrejZMQ0VWL3JOTWY5OUlIaStuWVg0dkZpNjJDcXZ0YmoxcUwrekdIaTBLTFVlTzRqVGVOVTVGVGkwK0xVWXRLaVVJSWgvc0lQYjZMVFFoaHRvcXFIdmZyQnEyTG9JaWVocDJKbVllZGl3aTR3KzdaSHc3M3lYK2YrQ0hrOTI1M0FmZHA5MmY0Ti9kNkEvb2d3UldMdDA1N2g5V0k1b1QzQW91Ymk3ZVU5d3FTcDVXdXQ1S0xzNHZNSjQxZmkvc1hpNHR0Vml3SWFreGcrd3R1aXdpSmpnVmdsRXozT1dySGJieU1vUHNKaXpxTE1IMkxVNHRodzRXVWRKZDFqMnVMVDR2N0k0SXNnamNJaERwT3VvdFJDRmpvaDZ5ejlZM0VIb3ZCVEZxTDlvdVhpYWlMcDR1MmtNQ2VpNTJMbFcyUmZ3akYreFlGeHZzZGxJMmJpUWlLQjZtTHN2Y0ducmFrd0tyanE0dVppNUJtaTJhTFdvUlJpWUtHYWx5R2kyZ0lVdmNCaDc4ZXBBYSs5eENOeXg4Tzk0Wi9uL2xVZHdIeDkzSDN3dmR4QS9uaCtSc1ZLQW9POTBSOTl5bjQyUGNwQVpEM2x2aVU5NVlEK1p2MzZ4VXBDdnVXSmhVcUNnNzJmNS8zamZjRTkzbnVBZmZnOTNyM0gvZDZBL2xSK0hrVjl5cjdGOVQ3SFI1Mmkvc0FmZnNraTNHTGRJMXlpMnlMWDRLTFk0dE02TE9MUUFqOEhBZUxPVUd1aTFVSVNmY29pYlc2OXlPUHpCNkx4VUpYaVBjUUNNVUhsNUNQbHg2amk2bUhxWXNJOXlEM0V0ejNKeC83ZTRnVlQzQllTV2VDbUprZWk0Nk5sb3VPQ0l2M0s0bVBCWnFRbUszT3ExWk1IZzczUlB0UDl4NlU3dmtrOXlrQmovZVcrSlAzbGdQNW5FY1ZtWUNsZlI2RGkydDZZNHY3Q0l0b3FZdWFpNUNVa3BDTjl5Zkc1L2NFaS9jeUNQY1VJZmVJKzZuN2JQcysreW43YUI2TCsxNzNGRWlMZFl1RWdZbUZpNFdMZzQyRml3aGxZWEppZlpON214K1RpNU9Oa291Nmk2MTU0V2dJOXk1TUJjUjJ0My9KaXdqM09NemtxUi83bWZmS0ZWUnhWMDhnVC9lQzRieW54Y1AzQjhIN2ZUQWVEdmRaZUovNEpQVG43Z0hiOTNyNENmZVlBL216eEJXTHlVaFRmK2g5OW0yNlJhU0FrbjJPaTVtTGw1S1BsSkREcDZuRmk4ZUw5eGY3R0w3N0JJc0lTWXRNaEVxTFlZdGprbUtMWTRzOGhJdFRpMDdZeW92N0xRajdzZ2VMK3hkQXNJdFdDRUwzSW91ODl6YWpwckFlaTd0WWZJUzVoS2VLdEl1b2k4bVRrS0NMdzR1YVhKaGRxUHNZbnpIM05ZdjNCb3U1c1l1eENQd00rRThWVFhabVMzV0ZtSmtlaTVDTmxZdVJDSS9wQll5cmk2S3dpd2pFbDFoY0h3NnpmZmNYK0dqdXFuY0JvdmVrOSszM3BnUDVGUGQvRlNzS0R2Y3NmNS81U2ZjWEFmaUY5NFlEK1gvNHBSWDNBVG5ZWlI1Mmk0U0lmWWQ5aUhlSFhvc0krNGdHWTR0eGozZU9lWTkvam9XTENGRkQrd1EzYUtObXNSL2RpNkgzQzdlTENKZWZpRHdmaTNTRCszRUZpWEtIVUlGMGQyWk5vSXRWQ0VMM1BvbkZIcFFHOTFDZHVLa2ZpOUV2VTR2M0N3ajN4d2VMaVpDTm01R3pxeCs5aTR2N0MrR0xDTDZtckx3ZkR2ZUdmZmNwK05WM0FkSDNrUGhSOTNvRCtkMzVJaFVzQ2c3M25IK2YrVlIzQWZudzk1b0QrZkQ1SWhXdWRhTDdFaDZCQmwzN0FvbFJINHRqdjVXTFpvdHpYVEYvYzRGNGRWRnNpd2lNQjNhTmY3S0NuSFhBWTlpTG9JdW51bzJMc0FpTkI1eUV1ZnRXV2ZzMGh6NGVpM2FWZlorR3NvV1VmNmxNQ1BkYy9Fd0ZvVnVaYWNXTHY0dWd1cUN6Q1BkMStGd0ZzZHFQaHJlU280MmZtWXVsQ0E3NGtYK2YrVlIzQVpQMzN2Z2w5NUQzQi9lWUEvcm0rU0FWd3orUFl4NTVCbDQ2aDFVZmkxWE9vWXRlaTMxZit6MW9pM1NMZE1tR21vQ2lhc21McDR1anQ1U0xxd2lPQjUyR3RmdE8rMGg5V24ySmpZbUxIb3QwbW4yZmdhcDVvRXlMaEl1Q2dYR0hob2g5ZEVOeWkzV0xkTkdHbTRlWGJkT0xxUWlMcWFDT2k2a0l0WE9pK3laZCt4dUpSeDZMVGJLd3AwTUk5MDc4YndXZVhadG53NHZLaTVheG9MNEl5UGNzQmFUTWxLU2JpNXVMbEd1UWdRam8rM0FGbldHYWNMNkx3b3Vqd2FEQkNQZEErRlVGcDlHMGZZdStDQTczaG4vM0JQajQ5d1FCK2FmMzBnUDUzZEVWaThaVGIxZk1DUHRPOTM4Rmg0K0JsWXVVaTQrVm1ZK01DTS9qQmFPcHI2NnpqNjJNc1kyTHVRaktJNHRoK3lkeWNHb2VpMkd5ajR0eUNJSmlXSDkvYWJtWkhvdWdyWWFMdHdpMWJLRDdJdnVJaVU5MEhvdFJ4Nm05U1FqM0l2dExCWkNHbElLTGdvdUlnbitHaHdndit3Z0ZWVWR4ZG1TTENHSjVkbkJxbzJmM0pQY2lvNituSDR1NVlZbUxvSXVaeWVpWGk1U0xqb0dSaDVsMnRGV0xjb3QwWW91TFpRaFM5d3FId0I2ZUJ2ZUlqcitwSHc3M2IzK2YrVlIzQWZlbDk1WDN1ZmV3QS9uTCtTSVZMUW9POW92M0VmaGY5d1FCK1ZuM1NCVXVDZzc3ZHliaytjSGtBWkQzV1FQNENXQVZwVytVZFI1M2kzZUhkb3RPaTRXYWk3NkxqbzJXaTVBSStMOEhpNUNKbEl1T2k3NlJuY2lMb0l1Zmg1K0xDS0dua3FYQ1RZNHRIelFHS1hCLyt6VWYvTDhIK3ppa2dmSWV6UWJ6MFl6RUh3NzdGWDJmQWZpTG5oV0xsWWFZaEpYN0N2ZE8rMW40RVhlM2Y2T0dtVitMY1l0UGlJdHRpNENRZjVHQjl3djdUdmRZL0JHZ1h3aVhjNUo5dFl1bGk4ZU5pNm9JRHZ0M0p1VDV3ZVFCK0FuM1VnUDRDZFFWK0w4SDl6VnZseWNlTkFZc1VZaFVjYWFFb1IrZmk1K1BvWXNJeUpCNVdCK0wvTkNMZUFWWWhueE9IbldMZDQ5M2l3aDFjSUp4VXRDSzhCL05Cdk9ubGZjNEh3NzRlL2RORll1YWhaZUVsd2o3UmZndEJZU2JiNHQ2aTNxTGI0dUNld2o3UmZ3dEJZZC9oSCtMZkFoOXE0YWNIcXNHbzR1VWtKbXJDUGNHOTV2M0J2dWJCWmRybDRhaWl3aXFCcHV0a0prZkR2c2kreDdrQWZpa0xSVzFmWkp6SG9lTGg0bUhpd2o4VlFhSGk0V05oNHNJY1grRVlXU1ZocVVmK0dXTGw0c0ZvNW1Rc2g4TysvejVYM2NCa2ZkNkEvZUQrRUFWaStZL2tvdXVpOHpQcm91Z0NLQnRsM2xJK3dMN01Qc0lSN3RNMHMyN3ZNNGVEbkI5OXdUM1Q5RDNNdVFCa1Bkbjk3MzNjUVA0MGZRVkx3cjdxTW9WTUFvT3kzM2s5NjdrQWVEM2V2ZnQ5M29EK1NqM3RSWDNHVEhsSUI0MGkxWk1nWXNJZzR1VmtoK1I5MU9MbVFXYmhwbDROL3RXWGtnZWkxSFhwWXRTQ1B1ZkI0djdGbmRyaTN5TGU1dUdtWXVyaTV1Y200dWJpOFpKOXhLTENQZEE5eFQzR2ZjK0gvdDJOUlZZZ1VCSlpINmM5MVd1a3E2MnpaZjdBRjBlRGtWOTl6UDRBL2NYQVpQM2NRUDRwUGY1RmRJNzMvc3ErenY3RC9zSyt5WDdLL2NOK3dUM0tmY2c1dGJJb25pcGNoNTBpM2h4U29zSVBsVFcxYk9pdWJZZjI0dGEreEgyaXdqRHRiWERIdzdMZmZjUitDWDNCQUdSOTRiMy9QZHhBL2txMFJXTHYxVjFpOUVJK0hFSHJJV2diWWY3a1hoQkhvdFYwcXlMVG90L2kydDdpNEdMWTZsSWl3ajdIdnNCK3hiN0cvc044dnNnOXhZZjQ0dXZ4S0NMcTR0blZMK0xsWXYzY0pLTDFnajdwdmRSRlZpSEsxQk5mOTI1dXBmM0JzL0VpemRqSGc1RmZmY2U5MXp1NU9RQmtQZHg5OFQzVWdQNHB2ZkZGVEVLKzFPK0ZUSUtEdnMwZjUvNEsvY0U5MGIzQkFIZzkzb0QrRTc0MVJXMVplSDdOaWo3RUdUN0N4NkxUTEZtaTNnSWUzdUpmM2VGZ1cwZWkzNk5mSXQwaTRDY2hwYUxrSXVValkyTENLZVhlM1FmaTRTRElBV0hURWFsaTFNSVJ2Y1RpYnYzZFkyOW9oNkx5a05xZWNpRnBJZXdpNmNJeUpXTnZSNlZCcG1MbFk2Tm13aVAwd1diZFk1MEhsZ0dnWXVKalltVWViY2xvSXZLaTU2Wm01Nkx3b3VYTXVHTENMV3RyclVmRG9qN1grVFQ5eW4zR2REM1dOQnBkeEwzVlBjKzkzejNaeFArK09hVEZjZGV4eU1lWTR2N0IzbHRpd2gwWHBDcm01V1ZuUitlaTV1Sm5ZdjNBWXYzTUxtTDl4dUxsSWlYaTVhTGxjT3lpOE9Mb0lLcGM0dDhpMlZVUDRzSWFJdEhuMWVMSjR2N0sxT0wrdzJMUWM1ZGkzK0xmVHgyaTBPTFg4RnZpMytMZkZPSmkxRUlUTkJGOTA4ZTk0Zmg5dzNsSC91UDk4a1ZZMzFtWDFpQzNiQ3dtNjZ6d1pOQll4NnkvQk1WWFQ2R2JHTSttY0dSanBXVUhwZUx3SUtpaTZxTHM1S1ppd2llb0lGMkh3NzJmNS8zOThZQjJQZDY5dzMzY1FQNVVyZ1ZpN05hZFl2aENJYjNOWXVaQmJ5Qzl4LzdOeDc3QTR1QU1XMkxkb3VHbll1Y2k0K01sSXVPQ0pIM1VnV25pWlZ0aWZ1WGRqc2VpMTNHb28xR2pWeU5YWXRmaTFPTCt4ZUFYWHBJWkoyTFl3aHRyR3ozSXJMM0JvM0VIb3V3WTN1TDNBajNDUWVMalltT2k0MEl0WTY3eE5LTUxsZ2VpMm1LYW9ScWhGaHVqWXR0Q0ZmM0RvdXFzUGNVaThRZUR2dU1mNS81U2ZjekFmZTk5M29EOTdmNUVoVzhVNWxqV1BzWWIwcGF1WGkxdy9jYm50b2V5L3paRlRNS0R2dWkrMS91K2JuM013SDMzUGQ2QS9mUStSSVZ2Rk9aWTFmN0ZtOUtXcmg0dHNMM0c1N2FIcGY4K0JXTCtFS0xrZ1dqaWFCc2kvdWpkaTRlaTFYTXVJc3JDUHZOQjR0cWtKQ0xkSXQ5Z24xN2k0R0xnWTJDaXdoN2UzMTVWOVo1dGgvQ2k5cWVyN2VydFl2VGk3OElEdmRFZjUvM1MvZEFBZVAzZXVyM29BUDVsOFFWaTdaVGkxL0RkNkQ3Q2ZjbGk2U0xsN0tnbFkvSHNiRjFpN2dJeXZzQ2kyTm5KSWhZSG90Mm9JU0xmUWg3UzJoN2VvV2JzQjZMbFkyWmk1a0lrZmRuQmFHSm0zRlUrM1ZhU0I2TFV0bkJpem9JK3lRSGkyQ0ZMSWxGaHpoWHJZdGJDRTNiaWRrZW13YjNNSk8wcHgrTHVWOXhpOXNJakpFRmtvdWdsaDZWaTZKcGtJWUk2UHNMQmFOcmo0cXppd2ozSWdiWG82ZW9Idzc3ZDMrZkFlVDNlZ1A0Qjc4Vmk3VmRlSUd3aVpLSG5vdVppNVNObDR1U0NQZFZCNHYzSXBmM0E0dWlDS3FEb0dsOSs1ZDJOUjZMVU1lbG1VR1JiWXhhaTJVSVlnZUxXb3Y3RUgxaGYyWmlsNHRxQ0V2M0JZZkJIcW9Hd08yUHh4OE8rQ0Yvbi9meHh1ZDNBY3ozZXZQM2V1LzNlZ1A2ZXNNVmk2ZGtrSXZGQ1BkbUIrNVJ2eXNlSll0Uk1udUxlSXVKNVBzS2kvc0ppMTh5ZDR0OWk0YWJpNW1Ma0kyVWk0NElub21pY29qN2kyOUFIb3RhdmJ5TCt4RUlMZ2VMK3hKT280dGdDRlgzQzR1eTl4MmpyNlFlaTY5dmhvdm1DTjRIaTQ2SWtZdVFDSzZTd2JxOGowTmpIajRIaS9zRFc3S0xXQWlJaGdWeG9ISDNINjczREkzSkhvdXdhSGFMOXc4SXlnZUxrSW1VaTVBSXNKQzZ1YnlPVUdFZSt3WUhpMUZxakl0bENGbjNDSUtxdFBjR2o4c2VEdUIvbi9nMjBKaDNFc2IzZXZjTjkzb1QrUGxEdUJVMENnNklmZmNSK0NYM0N3R045M3I0QlBkNkEvanM5NDBWTlFyN2VqOFZOZ29PNFBjTzl3VDNGZTY5ZHdIajkzcjMvL2VHQS9rOTk1c1Y5d2xGOXhqN0ZoNDVpMVJVZllzSWdJbVprYUtJazNKQysySlhSaCtMVThDWG1YK1FocEYwaXlJSVZBZUwrd1NIYjRGM2VXTmpuSXRlQ0ZueVdmY2JzK1NUd2g2THZFNXlpOWVMbDQyaG1ZdVRpN2x4dklzSTl5YnA5eVAzR2gvN2kyOFZXNFJLVFdoN2xxejNTWmVicmN5VVBGb2VEc3YzQis3M3Z2Y0VBWlAza1BjTjkzb0QrU243RlJXTHcxbGFpZmNHaUsrS3JJdXVpL2VJbitTTHVZdW5kNVJ6aTJPTGIzSmppM0dMUnFSRml3ajdOdnNlTS90RCt4dmIreFQzSngvUWk2eXNuNHVaaTR0N2k0Q0xQRWFwaTFnSVB2Yzlmcis1NTQvTUh2dXM5K2NWWTRWVVpXUmp3dlQydTUyZHZwRkRXQjVvQnc1YmY1LzRPZTUzZHhMVjkzRVQ4UGk3K0JzVnpWNitTQjQxaTMwOGM0dDVpNDJpaVphR3JvdVZaNHVCaS90K2RJcytpMHpKdzRzcENFOEhpMitKVVlSemZtaGRpNHRoQ0VuM0RJbS9IcFVHOXdIamtza2ZpOGMvYjRXM2g3R0h0b3VvaTQySWxvdVFpNldTdForTHBZdWRVY3VMQ016R3dzd2ZEdnNjaXVUNEx1UUIrR0gzaGdQNFlmY2xGVGNLRG4zM0tmZ045d1FCNmZlR0EvaDg5d0lWblgybmVCNTVpM2gwYllzSWIyK2J6Ui8zS3dldWpZdXdIczhHc3BLUHhiaUxqMkVmUlFhSmhZbUxIMitFamFvZmk1YU5ub3VnQ0xDSWozSWViUVo5aTRpSmVvSUkrM2o3SkFXQ2hJcUJpNFFJY0FkeGpvaXVIbzJMa0l5UWl3aXBCcGVMaG5zZmk0aU5pWXVKQ1B0aEIvczA5eFIxdmUvM0JzVE9IZzcyZi9jUitCOTNBZmZDOTNIM0V2ZDZBL2xSMWhVNENnN2dmWi80aW5jQitUNzNoZ1A1UHZoakZiaEJpMndlZVFaak9vWmhINHR2cllLTGNRaDJhVGhvY1duVm9oNkxwYkNTaTZ3SXUvc0tqbDhlaEFiN1VIMW9jUitMVnNXcnAxTUk5enY3eXdXYmJhUmdzNHVmaTZlWnJNb0k5emYzMHdXcHc4eDBpN3NJRHZoa2Y1LzRpUGU2QWZsaDk1RG45NFlEK3JuNFhSVytNNHRwYWpLTFdCNkxhcWVFaTNRSWdtUXliWFpsMktBZWk2Q3FqNHV3Q0x3dWptRWVnd2I3VjRWamRoK0xhTW1MaTFvSWZXOVllWE5jNHAwZWk1ZWVsb3VnQ01qN0RJdGpYZnN1aGt3ZWkxYTlxNnRXQ1BkUys4a0ZuVytoWXErTHE0dWJxcG1pQ05YM0ZBV1RtcG1vbjR1Wmk1aDBrWUlJdnprRm5XMjVPYk9MdDR1MzRwdXNDUGNVOTQwRnVlREhZb3ZEQ0E2emY1LzRpUGZmQVpQM1ovZzI5MWtEK1JLL0ZZdXlhWGRieVFoSDdRV0pqM3VoaTVHTGtwK2xqNUFJeE40RnByWEdpWXV1Q0tWNm9qMXJRb3RjSG90NW5uMkxmQWgrYlY1OWYyKzFseDZMbVorWmk1NEl1VGVRV2g1ZkJrLzdISVpUSDR0YXlLT3VYQWpNUGdXT2g1ZC9pNFNMaG9GOWlZa0lPZnNZQlYxQVhMV0xXQWhaMDR1c3FkcU50aDZMcVhLT2k1NEluN1hUblordFZIWWVpMjFqbG90bUNGbmJoTUFlclFiM1hJdXhwUjhPeS90STl3VDQxSGNCbFBmaDk5TDNoZ1A1S1BoZEZUa0tEa1gzQVBjRTkwVHVBZmltOXhRVk9nb08rNVVtMFBnKzJmZmQwQUhwOTFJRCtBVk1GWlNFcFdob2hKMnJIdmRjQjR2VmU3bzdsZ2lPQjl1V203cUwxUWozVXdlcmtwdXVycEtubFpTRXBXZ2VMZ1l6VjJNbkgvdHVCMnlEZVdacWhYRi9mcEZ4ckxDVGVtMGUrM29ISnI5ajR4N29CcTZTcFpjZkR2eG9mSi81V25jQnFmY01BL2NvcmhYNUNBZXVpSnhUVllaNmFCNkxoNDJHaTRZSS9Pd0hpNGVKaEl1R0NHcVFmTUhEanB1dEhnNzdsU2JRK0Q3Wjk5M1FBZmV4OTFJRCtBWDMrQldYaEtWb2FJU2RxaDczYmdmdlZyTXpIaXdHYW9WeGdvR1JiNnl3azN0ckgvdFRCNHRCbVZ6YmdBaUlCenVBZlZ5TFFRajdYQWRyZzNsbWFvVnhnbitSY2F3ZTZnYmp3TFB3SC9kNkI2bVNuSzZ1a3FXWUhnNzNPdmNFQWFiM0hQZnc5eHdEK0pQM3NCWEZZWkpkY1hKOWFINkxob0FlWTRzbXpqdUxDRTlXVkVwUnRJYTZwS1dXc1phTGtKY2ZzSXZ6U3RtTENNakF3TXdmRHZ2OGlaLzVXZmR5QWE3M2VnUDNsUGo3RlRzS2sveGtGWXZKZGRWdnc0R2VhY3h5aTNPTFowcURlRzlUYzBHTFRRaEJyenpmNEszYTFSNE9mWi8zVy9jcDk0SDNRQUdXOTFrRCtIVDRHeFdMM1M2K1JKSjdpNGVTaTVhTGpvMlFpNDBJcDN1UGVCNTVCbUtHaTE4ZmdnZUxmNG1IZllaeGh2c21VWXY3T1lzaTJDN3ZjcFNJallDTGdnaDlCMktWaWEwZWxBYTFqNDIySDR1TmlaQ0xqWXVVajVlWGkraWV3OFdMc291aWZhaDBpM3VMYUhOZWl3aElWOHJLc3B1NHRoL1RpMkg3Qk9TTHZvdTFzSXUrQ0E2ZWZaLzNaUGM1aCs3M1NQZEFFdmZnOTNvVCtQais5ME1WcFlTbmJ4NWdpM3BYVVlzSVpEdWl3YTZWbDZzZm5ZdWVocDZMQ0tDTm9wNGZuUWVaaVo1NkhudUxlWVo2aXdoMFlZeXl1YldhcmgvWWkzcGNyb3NJcjYrc3RMcEQ2dnN0Sy9zOFQvc1hINHRwbTNpTGZ3aDJiNGwvSG5zR2I0VjJjVytQY3FrZm5vdWtrS0dMQ0ttbWdtTjdoNGlBSDMrTGZZMS9pd2hOV1hBK1E3cFh5aC9saTdQS2xJdVVpN0ZPOElzSTZ2Y04wUGNLSHc1RitLTDVLeFVqQ2c3TGY1LzNpdmNFQWZkNDkzb0QrU3I0N0JYS05ZNWdIb1VHWmZzT2lFZ2ZpMnFqZTR1Q0NIMW5WWCtDYThHZEhvdVZuNUtMcXdqVEpZNWRIb1VHK3hsdWFtRWZpMHpCbXF0aENOY3BCWStJbDN1TGdvdUVnWVovaTN1TGY0NVppd2huZ1loTlk1bUdwQitRaTVPTWo0dW5pN2VMcDRvSWp3YWhrNGxhSDR0N2lXMkhmWDkwVlkyTFV3aUpoZ1Yya1ZYM1Q3dnZqOWNlaThwRGZZdkZDTUFIbzQyUHFSNzNCQWFSaTVDSmtJc0lwWnVVdGI2RGttMGYrd1FHaTRXSmlZV0RrSkFlaTVTdnVZNk9DTkhsQmFLbDJJU0x5UWdPVi90RDl3djRmTzczRXZjRUFmalArTFFWN2ZzWW1rTWUreHFMUDFKcSt4YUJZNHVOWFl1Q2kzZUNpMUdMYzVhS240cWNpcFdJaTNhTGQzOVZoM1lJYVB0RkJZVnRna2xpaTJlTGJNcFBpd2hoYVc5Z0xQY1dlZE1mOXk2TDFObW85eVVJdFBkakJaM2xsb1BEaXdpdG5wUFRtSStOZVI5RkJvRi9pSmlvbmRPeEg2MkxxVXJMaXdpd3E2ZXhIdzZlSk83NXUrNFM5MnozWVhMM2VoUHcrUUw0SnhXTDkzejc4RCtMNzR1cnNwV2tpKytMa0VESml3aXAxS1d3d0NmSSswejdlVU1zTUIrTEpOcHRpMzJMZmpCbGl5Q0wrM2YzL3J1TE00dG9YSUp2aS9zSmk0N2xSWXNJYlRtQ1lYRzUrd24zcS9jNzl3L1A5eGtmaS9jQ01KK0xuQWlMbSt1d2kvUUkrM1pSRlg5K1lYd2Vnb3VCa0lXTkNFU2dCWEdVYlpLTHJJdWJtYTZkaTVlTHQ0Q3dmNlNBcVlhTGFBZ09Mc1QzRWZnRzl4RUJsZmNNK0FqM0RBUDRpdmZGRll1OGY3VnlzSjJlbVphTGw0dWtYN3B2aTMrTGZuMTZlV2lrVzVkZmkxK0xXbjFwZEFoNm5YNlpmNHR4aTExZGkzR0xmNW1BblhoeVpIOWppMWlMV3Bsb29tRjVlWDEvaTM4SWRMZGFweDZYaTVpWm5KNndjcmw5dVl1NWk3ZWJycUtjZUpoOWw0dWxpN202aTZTTGwzMlhlWjBJcExDWHVJdTVDUHNRRmtwWVVVUkdWY1hNek1IRjBOSytVVW9lRHZ3UitWOTNBWS8zWndQM2IvalZGYzFyMDBCQWFrTkpIb3RVbmtXbldwSjdxMUdoaTZDTHJNV1NtNmU4bmRHTHdnZ09MdmxmZHdHTzkzcjNxUGQ2QS9pUitFQVZpK1kra291dWk4elByb3VnQ0tCdGwzcEcrd0w3TVBzSVI3eE0wOHk4dk00ZSs2TVdpK1kra291dWk4elByb3VnQ0tCdGwzcEgrd1A3TVBzSVI3eE0wOHk4dk00ZURrV005ejczLy9lZUEvaXF5QldMdFN6bWk3eUx3T3JraTdhTG8zS2Vjb3RsaTBwRmNIRnVhMUpWaTEyTFhzUlVxRzRJcG03TVI3R0xwSXVrb0l1aUNQdWVGandLRHZ1dnd2ZWZBL2ZXeUJVOENnNzdyN3ozbndQMzBQZUhGVDBLRHZjVGdKLzRLdmNFOTBmM0JBSGU5M3I0Ry9kNkEvbFArUlVWdFY2ZFoxbjdCWFpJWHJ0OXI3LzNBSnpSSHN2ODNSV0x4VkJmaS9FSTk3c0hvNGljYjNEN2NuQkFIb3RZd2FHTFRnajdRZ2VMU1ZhaWkxZ0liYVZ1OXh2M05KeXdxUjc3OVBpa0ZkOGlzVTRuK3c5ait3c2VpMHl4Wm90NGkzcDdpbitLYzRtTGlZdFdpMW1Hajd1THE0dVZlNGxzQ0lQN0FBV0hUa1dsaTFNSVJmY1ZpcnZCOXhpTDBCNkx2VTkxaThFSTBnZW5oTTYzSHFDTGpZdU9wUWlQeXdXTXBXYUVkSXQraTRtTGg1aC9ydnNBcDR2S2k1eVluWjJMdG91dVBjQ0xDTEdwcjdBZkR2S0FuL2dxOXdUM1IvY0VBZGYzZXZjeTkzb0QrWUsrRll2QVRsNkw2SXZmamVDTDFvdm9sK0NMMzR1bWY1bG1pMmVMUjM1cGdtZUNlSW1MWkFpTGJJNXRpMndJa1B3ZkJZeFJWWm1MV3doTzl3K05zN2IzRklYUEh2dnI5K3NWaktwVGdXT0xmb3VKam9pVmY2NzdBS2VMeW91Y21KMmRpN2FMcmozQWl3aXhxYSt3M3lLeFRpZjdEMlA3Q3grTFRMRm1pM2lMZW51S2Y0cHppWXVKaTFhTFdZYVB1NHVyaTVWN2lXd0lnL3NBQllkT1JhV0xVd2hGOXhXS3U4SDNHSXZRSG91OVQzV0x3UWpTQjZlRXpyY2VyZ2FnaTQ2SmphVUlEaVgzUFBkUkFmaTU5OXdWbkgyWGZCNkRpNFdJTTRzSSswMEdPNHRua251TGI0dC9nbjF4ZzNsc080dHdpM3FaZnBxTGxZdVJqK0dMQ1BkUEJ0bUxyNFNiaTZtTGw1ZVhvcFdlcU55THBBZ085d1Q0Qy9kQUFmZXY5MWtEK1dUNFp4VzRnL2NHU3g1ZGk1WlJaSDUraDF1SWRJc0lmWStoa3gvRkI0dlQwbXVMdVFqUit4Q1hXMXY3RUg5RkhvdGQwcXVMUXdoUkI0T1BkWDBlZEl0YmpuNlBaSmlXeFYyTENFdUQrd1plK3lXemNLMGZ2NHQrdDZXam1KZlhpNDJMbW91S2k0eGFDUHRBQjR6N1VqakhpMG9JZnBGYTkwRDNRSkc4bUI2THpEaFBqUGRTQ1BkQUI0eThpb3VhaTQyTDE0dVlmNlZ6ZmwrL2l3aXRzNmIzSlI4Tzl3VDNOL2NFOXl6M0JBSDNzZmRaQS9sbjkyRVZ0SC9XVXg1aGk1SmNXb3NJWlFaS2tJNmNIL2NGQjV5R2pzd2VzUWE4aTRSY3RZc0l3NWZXdExLQTNWY2ZaWXVBVUd4OWU0TmpqWG1MQ0cyTWlLa2Z4UWVMMnRCemk3d0l4ZnNTbm1KaSt4SjRVUjZMV3RDaml6d0lVUWR0akk1dEhubUxZNGw3azJ5WmdNWmxpd2hYZ0Rsa1lwZEF3eCsxaTRTNnZJc0lzUWJNaG9oNkgvc0ZCM3FRaUVvZVpRWmFpNUs2WVlzSVUzOUFZbVNXT2I4ZnNZdVd4cXFabTVPemlaMkxDS21Lam0wZlVRZUxQRWFqaTFvSVVmY1NlTFMwOXhLZXhSNkx2RVp6aTlvSXhRZXBpb2lwSHAyTHM0MmJnNnA5bGxDeGl3aS9sdDJ5SHc3Ny9QY2U5NGNCamZlR0EvZUg5NWNWemxYQlNVaFZWVWhId1ZiT3pjSEF6eDRPcy9nVTVQZDQ1QUdUOTFuM1RkTFgyQVA1RXZra0ZhaHpsSE1lV1l0YmhGdUxRWXRFbVVPTENQc09Lalg3RUNyUUxmY3NINXVMbTR5Yml3aXJrWVIySC93eEIyaUxnYkN4aTVXdUh2bFBCN0NMbEsydmk0Sm1IdjFQQjJpTGdiR3lpNVd1SHZsTUI0dk44RytMeVFqNzEvdUdGWHVMZlhkZFhiN053TEhEdzV1TmUzWWVEdnVNK0tKM0FmZjE5L0VWN1QzYUtpczlQQ2tzMlR6cjdObmE2aDRPKzkrdzkzb0Q5NlBpRlQ0S0RsQ3c5M3IzcVBkNkEvaXo0aFUrQ3Z1a0ZqNEtEaTc1WDNjQmp2ZDY5NmozZWdQNGtmamNGYzlheWtOS1dscEhIb3N4MklTTFpZdE5SMmlMZEFoNHFYK2N6L2NEOXk3M0NoNzdveGJQV3NwRFNscGFSeDZMTWRpRWkyV0xUVWRvaTNRSWVLbC9uTkQzQXZjdTl3b2VEa1dNOTUrTDk1NEQrS3IzaHhXTHVWUEJiYXR5cFVqUlpZdDBpM0I0aTNPTFlPd3lpMWFMV2lvd2kyR0xkS1oyb29zSXNZdk96NlNvcWFqRHdvdTRDUHVlRmowS0R2ZjJmZmVIQWJuM2h1YjNodmZoOTRZRCtrNzJGVDhLKytFV1B3cjc0UlkvQ2c3NUw0Zms5MC9aNmVUM1J0a0JtZmNxNi9jenRmY3E5NVAzTTZIM0t2SDNNd01jQlJQM1N4VkFDdnhGRmtBSyswdjRrUldnYTQxOEhtaUxnSDU4YkFqN2Zmd3BCZnNRKzJ4MWpZdHNpM2EzaHBxTHVJdURxTkwzRFFqM1V2ZllCZS8zUDZtaGk2a0krNXo3S2hWQUN2bGwvRFVWUVFyOFJSWkJDdnhUOS9zVlFRb09pZmNFK1AzM2NnR2g5M29EK0IzNCt4VTdDdmNKL0Q4VnQycXBZUjVJaTJSaGhVbUpkb2x4YjR0eWk0Q3BpNTZMNHVDM2krR0xzM0tsWTRzcWk4YytJMlVJUVc1bFhJdE5DUHNMOXlSRzhmY3c0ZlBoSGc3NzVQakY5MEFCalBkWkEvZWcrT29WaTdWRm1ZdW5pNUtTa0l1VUNLVklqM3hzTUlKY2ROZ3U5eHlscDVDckhnNzc1UGpGOTBBQjk2RDNXUVAzb1BrNUZVSUtEdm1COXhjQitHYjQ3UlZEQ2c3NHorNEJxL2NjOStIM0hBUDRpZmsxRlVRS0R2bGE5eGNCK0lMNVFSV1lmNVY5SG9LTGlJWS9pd2o3T0FaSWkycVNmWXQwaTMrQ2dYcURmbTlRaTNtTGY1YUNtWXVVaTVDTjJJc0k5elVHMFl1cGhwbUxwWXVVa3BlZWxKbWx4WXVjQ0E1UytOYnVBZmloK1g0VmxvS1NnQjV3aTBjNCt3S0wrd0tMUjk1d2l3aUFnb1NBWitqN0dQY1k5eGpvOXhpdkh3NzdpZmpQOXlrQjBmZVpBL2ZmK1NRVndFaVdZMWdrZjBSYXducXp2ZmNJbmM0ZURuRDR6L2NwQVpIM20vZkQ5NWdEK05ENUpCVkZDdnZERmtZS0R2dGIrTU83OXphN0FkSHk5MS95QS9nTStTd1Yzek9nU2tJN2RqYzMyM2JVek9PZzN4NGtGbTE3YjJscGU2ZXBxWnVucmEyYmIyMGVEdnduKzByM1NBR045MWtEOTF6N0RoV0xwWFNlZVpzSVQ4ZzhpN1ZNQlpDR2o0YUxoSXQzUnBpTFh3aDdvR2pUck5PWnVSNE90dmpGOTBBQjkrYjNXZDczV1FQNC92azZGVWNLKzZ3V1J3b08rMzM3VTlrQjBQY2NBL2ZyK3cwVmw0YWNmQjUyaTMxM2E0dDBpM0NiaTZTTHE2cW9wNVFJalNZSE5GQ0RlNHR1Q0lLVlBQY2Q5d0NlcnE0ZUR2c0wrTVgzRndINFl2bFpGVWdLRHZnWTl6ejNVUUg2cWZmY0ZaeDlsM3NlaEl1RWlET0xDUDFCQmp1TFo1SjdpMitMZjRKOWNZTjVhenVMY0l0Nm1YNmJpNVdMa1kvaGl3ajVSQWJZaTYrRW5JdW9pNWlYbHFLVm5xbmNpNlFJRHZoNThPNWI5d3YzSGU3M1Z1NDlkeEtROTRiM2IvZDZFLzc2MGZkSUZhZDdybXNlT1l2Rit5TDdZNHVHaTM2S2hvczVpNEtUaS9jYWk0eUpqNHVOaTZlUXJyQ0w4WXRPSU1pTENNaVI5dzIxc0lmM0JsRWZSWXZEK3dNK2l3aFBpSTNGSDhnSGpkQ2NrTnlMOTFHTFRDemFpd2l5bWJDdXQzTHRVUjk4aTNsMit4dUxDUHV1QnZzT2NJWkZINHR0Z250OWJ6TDdPMVkyK3dMN1JuZG9UcG1MV2doTDl3bUxzckwzQm8zQ0hvdTVUWWVMcXdpcHI0NmpIc0dMbVlzRnA3ZUdiUitMWmtlWmkxV0xZckdKcTR1dWk3eU95SXNJOTVzR3pvdTRmNXVMQ0xQQzl4RFBIL3ovOTA0Vk4zK0NaUjZIaTRLSmlJdHlpMnlSaTZXTG5wZWZrcG9Jc3M0Rms1bVpycUNMQ0p1UWMza2ZEdnVNOTZmWnhORDF1OTNHQVpYM0ZmZEE5eHdEOSszNGRCV0xyV2xZaStRSXlnZkhXYk0vWXZzR2NWRjRtWDJnSHNDTGo4aXJpd2lmajNGOUgzc0hmWWVIZ3g2SGk0T05oWXNJVlRkeFNGQzdjcjhmdjR1ZXA1YUxtSXVQYjdtTHI0dkJxWXV6Q0kzN0hoVkpDdnM5OTBBVmZZdDBlWHVGbVptZW1KdWNsWXVBaEI0T252Y0Q5d1Q0ZlhjQjgvZUdBL2swOXpnVnNYcTdYaDVMaThYN0gvcytpd2hFZjY3VEg0djNCdmN0MHdXZGs1T1FpNkNMbFkycmZJdURpMlY0ZzRnSSt3UldpL2NYQll2cDJsK0x4WXV0Z2FqN1hKQmFpL3N4aDR0Q2kxTGp0NDAzakZDUlVJdFFDSXRpV1hNRmFudURqSXRqQ0hvSGhZdURreDZVaTd1a2tZNEluNVdKUFFXTCt3ZzZ2NHROQ0YyK2phc2U5K0lHcll1aGlKNkhuWWlaaDUyTENMbkQ3OWtmRHZkRWZmY3ArTmozS1FHUTk1WDRsZmVXQS9tYjkrc1ZpOVZyNFZiUENNSzVCWkdTbVpLTGxvdU9oWmFEa29PWGdwS0dpMytMaDRTQ2hnaFRXQVZGeWppc0pJdjdiSXY3UC9zcGkvdG9pemlnUU1OSENGcGdCWUtHZjRLTGZZdUJrb2FTaEpHRmtZU1ZpNVdMbFphUmtBaTl0d1hIVFBacTVvdjNYNHYzVXZjaWkvZHJDUHZOOXdvViswTDdMUVYvdVgyNmk3bUxqWXlUaTQyTHZLZkZ4SXZBaTdWVG5sb0l3dnR2RlZSd1YxQWVUb3RveW5hNENQZEQ5eTBGbVZxWldJdFZDQTc0Z0l2dTk4bnU2KzZlZHhLajk0YjRpZmVHRS96Ni8vZEVGYWgrcW1rZU5ZdTMreHI3TklzSUlvR0U5eWFyaXJHMUgvQ0xUU0xKaXdqSGt2Y010TEtIOXdWUkgwU0x4UHNEUDRzSVVZaU54Ui9JQjR6UG5wSGJpL2RKaTBzcjJvc0lzcGl5ckxkejdWSWZlNHQ0ZC9zYWl3ajd1d1pSaTFHV1VZc0krMXo3UFBzbysySDdPZmNPKzJIM2lCKzZpK0dXem9zSTkrNEd4SXVVZmFHTENMTFA4K0VmL1BITEZWaHZWRkg3QkZMM2ZlWEFvc1RKOXdqQis0RXhIZzc3alBlbjJjVFo5M2ZaQVkzM0hQZHQ5eHdEOS9mNHloWEpVK0w3QWpBclVDY3UwVmJqNXZQQThoNkQrM1FWU1FyN0dQZEJGWHlGZkhrZWZvdURsb2FYZ0tSL3ZJdW5DSm1VbTV5dWx5bHdIZzczYjMzM0JQZDI3dVRrQVpIM1o5djNaL2ZKOTFJRCtjWDN4UlhXUWZjWSt6NGVPWXRUYjRXTGlZdFVwMFdMQ0N2N08xTTJiS0p5ckIvamk1RDNBY2VMQ0xxTlIybHFmWWR5SDRtTGlJMkppd2o3UlVjMFJDZmZZTjBmM292M0ZNaU9pNVNMeEU3M0Jvc0k1UGNodzlpZWVLdDNIM1dMWjExQWl3aGNTclc4bUpLTWt4LzNlQWFycVpiTUgvdFR2aFZ3ZG9aNUhvYUxnbzJHaTRLTGdZbURpd2g2ZTVDa3FxU3RycTZpYjJnZis5ejdVQlZ0aW1Oa2JYMm5wYXVrcXF5a2pIWjRIZzc3bzRDZitJZDNBWlgzdXdQNEFNUVZpOEJRWUl2M0NnajNxd2VnaXFKdGdmdVNiVVFlaTE2K2xwUm9sbWFKK3lWK2FIOXNZb21MWndoemttVDNRTGozRTR2UEhnNzdtb0NmQWViM2VnUDRKZmcrRlpTTm5YNGVnb3QzZ0lTSUNHUjRCWXYzQUpiZGk3SUlxWVNoYVgzN21IWTBIb3RTeHFXYVFZOTZqV0tMWndpTFYxWnlCVzE5aUltTGFnaDlCNE9NZ3BVZWxJdXpvSk9QQ0oyVEJZdGhpajEvWjM5bVlKaUxhQWhFOXlDUXVMYjNEb2JPSG91MVhucUFyNGFiakt5TG5RaUw5enpLcUFXbm1JaVFpNnNJRHA1OTl4SDRKZmNMQVo3M2V2Z0Q5M29EK1FQNFZSV1plcUY3SG4rTGMzV0Zod2gxZXdWYnUwR2dTNHY3TjR2N01pV0wrMGVMWVpkWXBXVUljWGNGZ29SMmdZdDdpMzJiZHB1TGw0dWduSlNVQ0tDWkJjQmMxbmpSaS9jbWkvZEU3b3YzT0l2RGViNXV0UWllbXdXVms2U1dpNXNJKzUzN0ZoVXFRd1dFcm9hdWk1dUxwNXlzckl1eGk1WmhsV29JcC9zbUZXeURiV1VlYUl0N3JIK3lDT3pVQlpKdmtHNkxjQWdPOTY5OTl4SDNhKzdoNUFHZDkzcjMvUGR4NFBkWkEvb205OFVWMWtEM0YvcytIaWVMVEYySGk0S0xYYmtnaXdqN09mc3hKdnRIK3pMM0VqVDNLQi8zRTR1OXdKcUxsNHU3VnZjSml3amw5eUhEMko1NXFuWWZkb3RtWGtDTENGeEt0YjJjbTRpV0gvZHRCcXVwbE0wZisxUytGV2Rya1hCeGFZT3ZxNmF0ckxDaGIyY2UrK1g3U2hWcmcyMWxIbUtMZ0xTQXEzK3hlOUtMc291b202cXNpNjZMbUdxVmI1dGZtVWlMWEFnT3kzK2YrVHZ1QWRQM1ovZ085M29EK1NuM0tSV0w5eW43SnZjUWk4Q0xvS3VaaTd3SXJuRG8reUw3TVBzcVBQdHRIdnQ0QjRzL1M1U0xYd2hQODRlMXVmY2hqOUFlaTdwY1k0WDNENFh0aTZ5SnU0dU9pSktMandqM09jdXZycUtnZ1hFZWkySXJmWXNuaTBQeU1JcytpMDlQbEl0eENHbS9WTlRzMDhqdkhnNzNiKy91OXhiUTk4cjNCQUgzN2ZlRzkzMzNuZ1A1eVBmNEZmZEhML2RCKzZrZSs5a0dhRkdFWGgrTFN0T3hpME1JK3hVSGdJSjJmeDU3aTN1UGVJdDNpNE53aVh1UWY1QjRuWXVaaTVtT200c0lsWmg0ZngvN0JnZUwreHM0MFl0SWkyTzNlcTZMd292RGtNV0x3WXZCaHVLTENQZVI5d0gzUS9kT0gvdWVieFVuZGZzVSt4QlZncDYvSHZjS0I2ZWJsNXNlcWdhYWk1dUluSXNJbjVXbG01ZUJuM2tmZll0OWgzdUxDR3NHZUhtVXBSLzNCQWV5ajUyMTErSmsrMzBlRG9oOTl4SDQ4UGN6QVl6M2V2Z0c5M29EK08zM2pSV0w5emRwNlBzQzZvV1FpSkNMa0l1WnRZK1drS09ValpLTG9BaWVCNUtKbVlFZWdvdGtlb0tKZUlSbGUzQ0xjWXR5dFdTTGNvdjdCRytMYll0NnBYK0xmb3VLaG9lQ2lRZzVjNFNNaTJ5TGhvMkZpNGlMaVltRWk0bUxoSTZCbEl1VWk3T2NsSTJaajdtZXBZMEltNmR2ZmgrTGhJU0Jnb2wyaG1pRVpJSXBlVTlRaS9zeWk0bU5ob3VKamZzeTl4RTA5eWVMOXlhTDkwYnVpL2M0Q1B0NlB4VnRnR3BxSG9tTkJVYU9lZmN2aHNvSWlaQUZwS0NxcTg2ZiswTmRIZzZyZmZjWCtHanUzUGNYQWFMM3BQZnQ5NllEK0tqNkpSVklDdmNBL1RvVkt3b08reVdLNVBmVzdyLzNGd0g0WWZlR0EvaFArVmtWU0FxZC9NZ1ZOd29POTRaL24vbzI5MEFCOTdMM2xRUDR3L29HRmJreGxXeDhSb1p5SG91Qms0ZUxnb3R2UlgyTFlRaHNwNGVsOXh2WjVxUWU5Nmo3ZUJXM2FabjdFR1g3QjR0UkhvdGtwNHFMYmdoellGaHhjMlRJb2g2TG9LYVdpNlVJb0lteSsxLzdjb05oY2g2TmlRV0xYTTZidkZFSTl3VDdGZ1d2WEpONWkxR0xLNFpkZ0hONlpGS2VpMVVJYjZaZTkxZTc5ektMMUI2THVsYUVmYW1CblllemkraUwwWTJwdDhNSTl4RDNHUVc5d3RObWk4d0lEc3Y3U1BjRStiWDNRQUg1S1BlR0EvaG8rVGtWUWdyM1ZQdHdGVGtLRHVCL24vZWI1T2ZrOXo5M0FkNzNldmdGOTNvRCtUNzRBaFgzQy9zWnhQc1pIbTJMYllkdWkzK0xoNCtMbFl2RDE0T0x1QWpNK3lLTlhXSDdLSXRJSG90VjFhNkxOUWo4RkFlTE9rR3VpMVVJU2Zjb2liVzU5eUtQekI2THV6OTJpOWFMalltUWk0MkxsSStUbVl1b2k2bUlxWXNJOXlEM0VzcjNEUi83ZllRVlhISmlTV09FbEpZZWk0Nk5rb3VQQ0l2M0RZbU9CWmlQbGEzUHEyRllIZzdnOXc3M0JQY1Y1QUhoOTNyNEFmZUdBL2s5OTVzVjl3bEY5eGo3Smg0eWkxZE1nWXNJaDRhU2pvMk9rSXNma2ZkVmk1UUZuSW1iY3pqN1YxOUhIb3RUMTZXTFVRajcrZ2VMK3dTSmI0RjNlV05qbkl0ZUNGbnlXZmNicytTVHdoNkx2RTV5aTllTGw0MmhtWXVUaTdseHZJc0k5eWJwOXlQM0doLzdpMjhWVzRSS1RYWnZrcVllOXlVSHFaT3JyOHlVUEZvZUR0YUw5eEg0WC9jRTBQY1hBZmk5K2lVVlNBcjNNUDF4RlM0S0RpSDNBUGNFOTBUdXpmY1hBZmhjK1ZrVlNBclYvTmtWT2dvTzk4Ymk5d1QzTC9jRTl3dmtBYVAzaHZrTTkxa0QrakxiRlp1RnAzTWVkWXQvWmwyTGY0dDdsSXVaaTZMM0FyeUwyQWk4WHJuN0F6djdEbFpWZWFGOG54NnBpNU9zczR1aGk1bC9pM2FMWUR0Q2EyMWNZWXVMaTRBSWZaeUttQjczY1FiSGkydHVzSXNJcEx1MHp4LzdiUGk0Rlo1cmpYNGVab3VEZlhsdENQdDkvQ2dGK3c3N1ozYUdpMitMZExXSG1vdXRpNHVrMWZjVENQZFM5OVVGOXZkTW9ZK0xzQWo3OGZ2K0ZZdTFRV0Yvd0llbGliNkxwUWpLQjR2VHZXcUxyZ2lsYVl0NFFQczdjMXA3bG9hY0hwQ0xsSTZTaXdpcmpuOXhIME1ITTMyRWRCNkJpMytRZ29zSWUzMkJmWExHZHZjTzl6S1hvcDRmRHZmTW5PNzNBTkQzdU9RQm92ZUcrQURtb3ZjcUEvb3p0Ulc2QjZTSmkzTjdpSkNWSG91TmpJK0xqZ2ozWEFlZ2lwMXRIbWFMYlh0dmRnajdLZnMwQlZCSmczNkxYd2hvbTRhdEh2Y0dCcWVRaG5vZlpnZDlrb3FWSHZjQUJxT1BsWmNmbXdlTGo0bVNpNDZMbkpDT200dWNqWXVXaTVrSSswYjQzaFdlYTQxOUhtaUxnbjE1YlFqN2ZQd29CZnNQKzJkMmhvdHZpM1MwaDV5THJJdUxwTlgzRXdqM1VmZlZCZmNBOTB5aGo0dXdDUHdaKy80Vmk3VkJZWC9BaDZXSnZvdWxDTW9IaTlPOWFvdXVDS1ZwaTNoQSt6dHpXbnVXaHB3ZWtJdVVqcEtMQ0t1TmYzRWZRd2N6ZllSMUhvR0xmNUNDaXdoN2ZZRjljc1oyOXc3M01wZWluaC80RS9zUEZXV0ppMThlZHdhSmk0V0ppb3Q4aTNPUWk1YUxsNStpazVJSXM3d0ZrNUtUbHBtTENKbU5lWUVmRHZ1TTkzalE5N2p1QVp6M2hnUDM5dmVpRll1MVFXRi93WWFpaXNDTHBRaktCNHZSdld5THJBaWxhWTEzUWZzN2NWdDZtWWVoSG8rTGtZMlBpd2lyallCdkgwTUhObjJDZFI2QmkzK1FnWXNJZTMyQWZYUEhlUGNOOXpLWG81MGZEdmZjbk83QjBQZnUyUUhTOTNIMytPYWk5eW9EK2thMUZib0hwSW1MYzN1SGtKVWVpNDJOajR1T0NQZGNCNkNKblcwZVo0dHRlMjkyQ1BzcSt6UUZVVW1EZm90ZkNHaWJocTBlOXdZR3A0K0dlaDltQjMyU2lwWWU5d0FHbzQrVmx4K2JCNHVQaVpLTGpvdWNqNDZiaTUyTmk1YUxtUWo3TlBqZUZaNXJqWHNlWjR1RGZYdHRDUHQ5L0NnRit3NzdaM09HaTIrTGRMZUhtNHV1aTR1azFQY1RDUGRQOTlVRjl3RDNUS09QaTdBSS9CSDd3aFdMOHZzQ2VJdWdpNW05bG91L0NNb2htVmM5TVdwcWdwVnltUjZYaTZHaXE0dWppNlY0aTNhTFV6T05pM0tMZjVkb200dVJpNXlRb29zSXJMQjdhbVJkZUdFZlk0dDFsM21MQ0hkN2ZYWmg5d2FHcS9kQTE5cllIL2Y1KzBzVlpZbUxYeDUzQm9tTGhZbUppMzJMYzVDTGxvdVhuNktUa2dpenZBV1RrcE9XbVlzSW1ZMTVnUjhPKzEvM1A5bjM2TzRCei9keEEvZ2o5OW9WaS9iN0FYYUxvSXVadkplTHZnaktJSnRaSlVsamNuK1ZkSmtlbG91aW9LcUxwSXVsZUl0MGkxWTFqWXR4aTRLVVpweUxsb3VPa3EyTENLeXRlbWgwZVdsSUgyT0xjWlo3aXdoM2VIMTVYdmNJaGF6M1ZNTHN4UjhPKzEvM2YrVDNuZlFCK0FQM1dRUDRIL2ZPRlp5R3AzUWVkSXQvYUYyTGY0dDdrSXVaaTZiM0FicUwyZ2lnZmRQN0lQc0VNa2hsZWFCNm9CNm5pNVN1c291amk1bCtpM1dMWWpvK2JHOWRab21FaTRTTGZaMkdsNHVOaTQrTmpJc0k5MmdHeG90dGNMQ0xDTEtzeGJzZkR2eHFmZmVWK0d6M2xnR205d3dEOXlYNGtCWDNMd2V1aUp4VFZZWjZhQjZMaDQyR2k0WUkreEVIaTRhSmhJdUhDR2lRZThIRGpwdXVIdnh0QlBjd0I2NkluRk5WaG5wb0hvdUhqWWFMaGdqN0VRZUxob21FaTRZSWFaQjh3Y09PbXEwZUR2dTU5L2IzU0FHcDk3OEQ5OTMzM0JVaENnNzdIUGM4OTBBQjl6ZjNTQVA0ZE84VmlabC9sWG1kQ0QzWUJYZWdnWktMbEl1U2xaV2ZuUWpaMmdXZG5KZVlqWmVMb2wyOGNZdCtpNEI5ZVhrSVBUd0ZkbnFFZm9PTGhJdURtSGVjQ0R6YUJYcWRmNWwraTNDTFhscUxkSXQvbVg2ZWVnalpQQVdjZVphQmk0U0xnb0NFZW5ZSVBUNEZlSGw5Z1l0OWkzUzRXcWFMbUl1WG1aeWNDTnJhQlorZWs1YVNpNU9Ma29DZ2VBalpQQVdkZXBaOW1JdWxpN204aTZJSUR2ZXhmNS8zTXZjTCtFVDNya0QzS1JLVzk0YjRiL2VZRS96NWJQbnZGY0pJbFdSWEpYOUZXTUY3c2g2Kzl3aWV6Qi83d3hiQ1I1VmpXU0ovUlZqRGU3Uzk5d2llekI3NFcvMjBGU1FLL0RYM2hoVWxDZzczc1grZjl6TDNDL2hFOTY3N1VidjNCN3NTbHZlR3AvTDNYdklULy9qZStmZ1Yzek9nU1VNOGRqYzMybmJUSHMzam9OOGY5N3I5dlJVa0N2d2krYjBWYlh0dmFXcDdwNm1wbTZlc3JadHZiUjU0L01zVkpRb085eGEyOXhmNEllNjRkd0dWOTVuM1UvY2NBL2xxK0lnVjl3SlZ5bUVlZTR1R2hIU0xjWXRMdkNtTCsxZUwrMVg3TW92N1g0djdQUGNLK3lMM00xOElob3UzVEFXTWhvK0dpNFNMZDBxWWkxOEllNXhvMWF6VG1ia2VpNlYwbm51YkNGbTZuSXNGOXd1TDBNU3Rpd2k5dXVlNHBIMnVieDlxaTNsRit4U0xDUHNmUGZjUzl5ZkVxOUxXSC9kR2kzSDdSZk9MQ01XdHU4VWZEdmFMN3ZkcDd2ZFU3dmVBOTBBQjR2ZHhBL2g2K2dZVnVUQ1ZiWHRJaG5JZWk0R1NoNHVDaTI5RmZZdGhDR3luaDZYM0hOam1wQjczYy8xU0ZTWUtEdmVHZjUvNTkrNEI4ZmR4OThMM2NRUDVKL29CRmJ4amtGMXpjNEpxZ291R2Z4NWxpeWpEUDRzSVVWZGRVMXl6aExtam81V3Jsb3VPbUIrd2krNVQxNHNJeDcyNndoLzNUdnQ2RlNnS0R2ZEVmZmNwK05qM0tjZjNLUUdROTViNGxQZVdBL2sxK2U4VndraVZaRmNsZjBWWXdYdXl2dmNJbnN3ZSs4TVd3a2VWWTFramYwVll3bnUwdmZjSW5zd2UrQ244bUJVcEN2dVdKaFVxQ2c3M2huMzNLZm1wOXlrQjBmZVErRkgzZWdQNVdQbnZGY0pJbFdOWEpYOUZXTUY3czczM0NaN01IdnZFRnNKSWxXSlpJMzlGV01ON3RMejNDSjdNSHZoSisyRVZMQW9PY0gzM0JQY0owUGQ0NVBjWTkwQUJrUGRuOTczM2NRUDRPL2s1RlVJSzl5cjgwQlV2Q3Z1b3loVXdDZzV3ZmZjRTl3blE5M2prOXhqM1FBR1E5MmYzdmZkeEEvZzcrT29WaTdWRm1ZdW5pNUtTa0l1VUNLVkhqM3h0TUlKY2ROZ3U5eHlscDVDckh2Y3EvSUVWTHdyN3FNb1ZNQW9PY0gzM0JQY0owUGQ0NVBjbzl4Y0JrUGRuOTczM2NRUDRkL2p0RmJ2N01POWxhUHN3SjF0Mm1YYWlIcldOME1PMmk3YUwwbE96aVFpam02Q2dIK1g4aEJVdkN2dW95aFV3Q2c1d2ZmY0U5d25ROTNqazl3cjNLUUdROTJmM3ZmZHhBL2pSK1NRVlNncjd4UlpMQ3ZmRi9Mc1ZMd3I3cU1vVk1Bb09jSDMzQlBjSjBQZDQ1RzN1RXZkUjkwajNKUGR4RS96NG9mazFGYnhqa1YxemNvQnJnWXVIZng1bWl5akVQNHNJVVZkZFUxcXpoYm1qb3BhcmxZdVBtQit4aSs1UzE0c0l4cjY1d3grNy9Nd1ZMd3I3cU1vVk1Bb09jSDMzQlBjSjBQZDQ1SSs3OXdtN0FaRDNaL2NEOTFJRCtFUDVLeFhmTTZKSlF6eDBOemphZHRQTjQ2RGVIdmNpL01JVkx3cjdpdmpDRlcxN2IybHFlNmVwcXB1bnJLMmJiMndlYmZ5REZUQUtEa1Y5OXpQNEEvY1hBWlAzY2ZjYzl4VUQrS1QzK1JYU085LzdLdnM3K3cvN0N2c2xIb3Y3RE5jczlHa0loNHUxVEFXUGhvK0dpNFNMZDBpWWkxOEllNTVvMDZ6VW1ia2VpNlYwbm5xYkNGdTZqSXNGOXlEbTFzaWllS2x5SDNTTGVIRktpd2crVk5iVnM2SzV0aC9iaTFyN0VmYUxDTU8xdGNNZkRrVjk5eDcwN3ZkTTVQY1k5MEFCa1BkeDk4VDNVZ1A0SlBrNUZib3dsR3g4U0lkeEhvdUNrb2FMaEl0dlJYMkxZUWhycDRhbDl4elk2S0llOXhiOENCVXhDdnRUdmhVeUNnNUZmZmNlOU83M1RPVDNHUGRBQVpEM2NmZkU5MUlEK0NUNDZoV0x0VVdaaTZlTGtwU1FpNVFJcFVhUGZHd3dnbHgwMlM3M0c2V25rS3NlOXhiN3VSVXhDdnRUdmhVeUNnNUZmZmNlOU83M1RPVDNLUGNYQVpEM2NmZkU5MUlEK0Y3NDdSVzcrekR2WjJiN01DZGJkcGwyb3g2MmpjL0R0NHUyaTlCVHM0a0lvNXVnb0IvVCs3d1ZNUXI3VTc0Vk1nb09jSDMzSHZUdTkwems5d3IzS1FHbzkzSDN4UGVHQS9qUStTUVZSUXI3d3haR0N2ZXgrL01WMWo3M0dQczkreW43RnZzRSt5LzdGdWI3RmZkSTVQY2l3OWllZXF0MEhuaUxaRjFDaXdoYlM3VzhtSktNa2gvM2VRYXNxWmJNSC90VnZoVndlSVozSG9XTGc0MkZpNE9MZ29tQ2l3aDZlNUNrcXFldHFyR2diMmdmRHZ1TWY1LzVhZmRBQWZlOTkzb0Q5ODM1T1JXNk1aUnJmRWVIY1I2TGdwT0dpNFNMYjBWOWkyRUlhNmVHcGZjYjJlaWlIclg5QUJVekNnNzdqSCtmK1duM1FBSFA5M29EOTgzNDZoV0x0VVdaaTZlTGtwT1FpNVFJcFVlUGZHMHZnbHgwMlM3M0c2V25rS3NldGZ5eEZUTUtEdnRmZjUvNWVmY1hBZmZUOTNvRCtCNzQ3UlZEQ25yOHRCV0x3RkZoaS9jSkNQZXFCNkdKb20yQis1QnNSaDZMWEw2WGxHaU9mWTFoaTJTTFdvaFZoWGwvYW1PSmkyZ0ljNUJqOXorNjl4R0wwQjRPY0grZitWdjNLUUg0S3ZkNkEvalIrU1FWU2dyN3hSYkJTWlJpV0NLQVJWakRlN1M5OXdpZHpoNzNXZnpyRll2QVVHR0w5d2tJOTZvSG9ZbWliWUw3a1d4R0hvdGN2cGVVYUk1OWpXR0xaSXRhaUZXRmVYOXFZNG1MYUFoemtXUDNQcnIzRW92UUhnN2dmNS80TnREWDdnSEo5M3IzRVBkNkEvalkrVFVWUkFyMi9RZ1ZOQW9PaUgzM0VmZ2w5d3Z4OTBBQmpmZDYrQVQzZWdQNFIvazVGYm92bEc1OFJvZHhIb3VDbElhTGhJdHZSWDJMWVFocnA0YWw5eHZZNktJZTl6bjhRQlUxQ3Z0NlB4VTJDZzZJZmZjUitDWDNDL0gzUUFHTjkzcjRCUGQ2QS9oSCtPb1ZpN1ZHbVl1bmk1S1NrSXVVQ0tWSGozeHNNWUpjZE5ndTl4eWxwcENySHZjNSsvRVZOUXI3ZWo4Vk5nb09pSDMzRWZnbDl3djNDdmNYQVkzM2V2Z0U5M29EK0lMNDdSVzcrekR2Wm1mN01DZGJkcGwyb2g2MWpkRER0NHUxaTlKVHM0a0lvcHlnb0IvMSsvUVZOUXI3ZWo4Vk5nb09pSDMzRWZnbDl3dmo5eWtCamZkNitBVDNlZ1A0M1Bra0ZjRklsR05ZSllCRldNQjdzNzczQ0ozT0h2dkRGa1lLOTlQOEt4VTFDdnQ2UHhVMkNnNklmZmNSK0NYM0MwL3VFdmRkOTFtTzkxa1QrUGlyK1RVVnZHU1JYSFJ5Z0d1Qmk0ZC9IbWFMS01RK2l3aFJXRjFUV3JLRnVxS2tscXVWaTQrWEg3R0w3VkxZaXdqSHZMbkRIOHo4UEJVMUN2dDZQeFUyQ2c3MmYvY1IrUUQzUUFIM3d2ZHg5eEwzZWdQNGZmazVGYm94bEd4OFI0ZHhIb3VDa29hTGhJdHZSbjJMWVFocnA0YWs5eHpZNktJZTkyajg3aFU0Q2c3MmYvY1IrUUQzUUFIM3d2ZHg5eEQzZWdQNGZmanFGWXUxUlptTHA0dVNrNUNMbEFpbFI0OThiVENDWEhUWUx2Y2JwYWVRcXg3M2FQeWZGVGdLRHZaLzl4SDVFUGNYQWZmQzkzSDNFdmQ2QS9pNStPMFZ1L3N2NzJWbit5OG5XM2FZZHFNZXRZM1F3N2FMdG92U1U3T0pDS0tib0tBZjl5ejhvaFU0Q2c3MmYvY1IrUEwzS1FIM3d2ZDY5d24zZWdQNUZQa2tGY0ZHbEdOYUlvQkZXTU43czc3M0NKM09IdnZHRnNGS2xHSlhKWUJGV01GN3RMejNDSjNPSHZnRC9Oa1ZPQW9PKzduMzhkRDNlOUFCazlMM2Q5SUQ5OGI0aUJYZFNNNDRPa1ZJT2g2T2lnVTR6RWZlM3M3UDNoNURqQlZmYVdoZllXYXV0N2V3cnJXM3JXaGZIZzdwZmREMzI4YjNBTWIyMEFHTzB2Y1g5eFgzV3ZjY3k5SUQrWEQzOUJWTUNrZ1dUUXBHK3pBVmk2dGpiNG02aXV0QWlvdWNpNXZCaVl2WGk5UkRwaytMYVl0bWgycUxkSXR6ajNXTENIVmhoMjBmaTJPMXZJc3JDUHNSQjR2N0JtRzFpMm9JWXRtTHBzTzNqNmtlaTZWd2hvaWlpSm1Kb1l1Ymk2NlFqWmFMM0l0RSswRDNLb3V5aTd1Wmk2a0krMkQzZ3hWcGdIaG5nWWVPa1I2TGtJMlNpNUFJdmdlZGpaZWZxSk52Y1I0TzZYM1E1ZTczZE5uM1BkQUJqdExpOXlQNFFOSUQrWEQzOUJWTUNrZ1dUUXI3QWRjVnlHMnVjeDZFaTRLR2c0dCtpMmluVllzSSt3QWdOZnNHK3dIckx2Y0ZIODZMbktXeGthK1RuYlNMcDR1WmhKeDdpMzJMZG1WTWl3ZzlZZFBSc3A2enR4L3BpM3NxeFlzSXJKNm1xUjhPOS9iM3gvZDQ0dGtCOXl6M0t2aUs5ejREK21UMzNCV0xxMlp3aTlhTHJvYXRpNjZMcVk2b2phbVB4cXR4aTYrTHIxR01jb3MvaTRwNmEwNElhRVlGaG9HRmVYMkxmWXVEbzRhVUNGVHdCWGl1aTVGTGl6V0xmbk9MZTR0ZnVzS0wrd09MTklVc2lIK0NZbXllaTI4SWJiK0pvS0hKakt3ZWk2NW1Yb3ZoaThTSXBacUxsWXVTZW82RENLMUFCYWRPakh1ZWk1cUxsYW1RbFFpcHpRV1FtSjYrbll1Wmk0aHVpNE9MZG90c2lZQ0VhSEdSaTNVSVp0cU5vNlRhaWJJZS9LWDNwaFcwYWM1bkhubUxpSUpjaXdqN0lnWmNpM2FTaUlzSWFHUkpYWGFZZHFFZnVvdVkwS1dMbEl1WGlJaFNDSUw3T3dXSVdWcWxpMllJWHZjQWpLaTAyWXkwSG91NFZsdUw2UWozS3dlYmlhcWhIcW1MaWtpOWl3aXBtcDZuSHc2TDl3VDNvUGNFQWZkbTl3d0QrSlAzMkJXK2VaSnRIalVHaEl1Q2lZYUxiNHVJajR1amk1R01sNHVTQ0prSHJvaWJWVmlEZTIwZWk0YU5oSXVFQ0hnSGJZV0hiUjZHaTRhTmhJc0lNd1p0ZllSWVZabUVyaCtQaTVLT2tJc0k1d2FqajRadkgza0hpNGFKZ1l1SENHMlRlcjdCanB5dEhwb0hpNVNLbEl1U2k1Nk9qNktMa0l1WWpwT0xDTTRHa0l1UWlJK0xDSzZka3NFZis1OEV3SG1RYlI3OEhBWnRmWVpXVjVtR3FSLzRDWXVlaXdXcG5aQy9Idzcydk5ENEduY0IzUGQ2OStiM2VnUDVVZFlWaTd4VmI0dkhDUGRkQjR1cmphbUxyQWl1ZTZCb1pQdGNnVkVlaTJHOG01SllqWG1OY1l0MkNEb0hYSVZUVTFhSnlMTWU5NU1IcFlpWGI0TDdqNGhNSG90STBjNkwreTBJKzF3SGkyYUJiWXRZQ0VHdU9lSGZydGJXSG91WWk1V0pscWVOdmJ1Ymk3T0xXazdYaThPTDkwT2ZpODRJRHZndzl3c0IrSHYzREFQNGUvY3BGZmRhQjdkM29Gd2UvQWtHYlgyRVdGV1poYTRmajR1U2paQ0xDUGVuQnFPUGhtOGZLZ2VMaEltQmk0Y0liWko4d01HUG1xMGVEdnNtRHZleGY1LzNNdmNMK0VUM3JrNzNRQktXOTRhNzkxa1QvUGpNK2JVVmk3VkZtWXVuaTVTU2o0dVZDS1JKa0h0cU1vRmRjdGd3OXh3ZXBhZVBxaC8zelAxNkZTUUsvRFgzaGhVbENnNzNzWCtmOXpMM0MvaEU5Njc3ZE80U2x2ZUcrRFAzSEJQOCtURDZBUlc4WTVCZGMzS0Nhb0tMaG9BZVpZc293eitMQ0ZGWFhWTmNzNFM1bzZLVnE1YUxqcGdmc1l2dVU5ZUxDTWErdXNJZjkyajl4aFVrQ3Z3MTk0WVZKUW9POTBSOTl5bjQyUGNwTXU0U2tQZVcrSlQzbGhQNCtRWDZBUlc4WlpCZGMzS0Nhb0tMaG9BZVpZc293eitMQ0U5WlhWTmNzNFM1bzZLVnE1YUxqcGdmcjR2dVU5bUxDTVc5dXNJZjl5cjhxaFVwQ3Z1V0poVXFDZzZaOXltczl3djNTL2NwQWZkVzl5b0Q5K3I0UEJXeWFxNWpZV3BvWkdHc2FMV3pySzYxSHZjOSt6d1Z2M21SYlI3OEhBWnRmWVZYVkptR3JoK1BpNUtOa0lzSTkvUUdrSXVRaVkrTENLNmRrTUlmK3ozN094V3phcTFqWVdwcFkyR3Nhcld6ckt5MUhnN0wrMGozQlBtbjl5a0J3UGVZOSsvM2hnUDQvdmtrRmNGR2xHUlpJNEJGV01ON3M3MzNDSjNPSHZ2RkZrc0s5Ky83V3hVNUNnNzNRWCtmK2lmM0tRSDNwZmVWQS9sSytmQVZSUXI3d3haR0N2aEUrMklWTFFvTzk3Ri9uL2N5OXd2NFJQZXVYdmNYRXBiM2hoUDQrUWI1dVJXOCt6RHZaV2o3TUNkYWRwbDJvaDYxanMvRHQ0dTJpOUZUdElnSW81dWdvQi8za3YxK0ZTUUsvRFgzaGhVbENnNzI4TzczQk83M1ZPNzNrUGNYQWVMM2NRUDR0UG01RmJ6N01POXBaUHN3SjFwMm0zYWpIclNPMGNPM2k3YUx6MU8waUFpam1hQ2dIL2M1L1FVVkpnb085N0Yvbi9jeTl3djRSUGV1VHZkQUVwYjNodmZiOTJjVC9QalkrZ1lWdVM2VmJueEdobkllaTRHVWg0dUNpMjlGZll0aENHeW5oNlVlOXh2WjVxUWY5OEQ5eXhVa0N2dzE5NFlWSlFvTzl2RHU5d1R1OTFUdTkzTDNLUUhpOTNIMzJ2ZVlBL2tPK2U4VndrcVZZbGNsZjBWWXdYdTB2UGNJbnN3ZSs4TVd3a2VWWkZna2YwVll3M3V6dlBjSW5zd2UrQTc5T3hVbUNnNzJpKzczYWU3M1ZPNzNnUGRBQWVMM2NRUDRldm0xRll1MVJabUxwNHVVbEkrTGxRaWtScEI5YXpDQlhYTGFNUGNhcGFlUHFoNzNjLzBCRlNZS0R2dEpmNS82TnZkQUFlZjNoZ1AzN2ZvR0Zia3hsV3g4UjRaeUhvdUJrb2VMZ290dlJYMkxZUWhzcDRlbDl4elk1cVFlMGYzSEZTY0tEdnRKZjUvNlJ2Y1hBZmZoOTRZRCtDZjV1Ulc4K3pEdmFHWDdNQ2RhZHB0Mm94NnpqdExEdG91Mmk5QlR0WWdJb3BtZ29CK1gvWG9WSndvT2NIK2YraWozS1FINEwvZUdBL2pSK2U4VndrYVZaRmtqZjBWWXczdXl2dmNJbnN3ZSs4VVd3a21WWWxnaWYwVll3M3UwdmZjSW5zd2U5M1Q5c0JXTHJIU1BjWnAzbUgrSGkvZEZDTzRIaTlHTjVKMmlvNld3aUl1d0NNLzdENDFQZC90ZmkwTWVpMlN6aXFCdG1IMlZiNHY3RkFnb0I0djdJSUZtZm4xOGVHbUZpMndJUy9jU2liWDNiWlM0cVI0TyswbC9uL28yOTBBQjUvZUdBL2Z0K2JVVmk3VkZtWXVuaTVTVGo0dVZDS1JIa0h4dEw0RmRjdGt3OXh1bHA0K3FIdEg5ZGhVbkNnNzNSSDMzS2ZqWTl5blY5MEFCa1BlVytKVDNsZ1A0b2ZvR0Zia3VsVzU4Um9aeUhvdUJsSWVMZ290dlJYMkxZUWhzcDRlbDl4dlo1cVFlOTQ3OHJ4VXBDdnVXSmhVcUNnNzNSSDMzS2ZqWTl5bmw5eGNCa1BlVytKVDNsZ1A0Mi9tNUZiejdNTzltWi9zd0oxcDJtM2FqSHJLTzBzTzFpN2VMMEZPMWlBaWptYUNnSC9kVS9HSVZLUXI3bGlZVktnb085MFI5OXluNDJQY3AxZmRBQVpEM2x2aVU5NVlEK0tINXRSV0x0VVdaaTZlTGxKS1BpNVVJcEVpUWZHc3hnVjF5MkREM0hLV25qNm9lOTQ3OFhoVXBDdnVXSmhVcUNnNzNobjMzS2ZtMzkwQUIwZmVRK0ZIM2VnUDR3L29HRmJrdmxXNThSb1p5SG91Qms0ZUxnb3R2UlgyTFlRaHNwNGVsOXh2WjVxUWU5Njc3ZUJVc0NnNzNobjMzS2ZuSDl4Y0IwZmVRK0ZIM2VnUDQvZm01RmJ6N01POW5adnN3SjFwMm0zYWpIck9PMGNPMmk3ZUwwRk8xaUFpaW1hQ2dIL2QwK3lzVkxBb085NFo5OXluNXQvZEFBZEgza1BoUjkzb0QrTVA1dFJXTHRVV1ppNmVMbEpPUGk1VUlwRWVRZkdzeGdWMXkyVEQzRzZXbmo2b2U5Njc3SnhVc0NnNzRweFQ1R2hWNG52aVFxL2M4bVk2TUJoNEtBeEpmREFtUURBcnVDdTZZREF6M2VndjNjWlFNRFlzTURod0FNQk1BTGdJQUFRQWtBR0lBZEFDbkFRc0JQd0hrQWpZQ3pBTHRBd0lEZGdQZUJGY0UxUVVsQlRjRmJ3V1BCY2tHVFFackJva0c4d2RlQjh3SVJBaFdDSWtJdkFqZkNQRUpDQWtjQ1QwSlh3bVJDYVFKdHduWUNmb0tLZ285Q2xBS2NncVUybUhqTWtsWFVVd2VpL3NPOXdLaGkyQ0xZbGxRaTNzSWNxbDhuOXJIOXpmbEhndWNmWmQ3SG9LTGhJZzFpM1dMY1pKeWkyK0xmNEo5Y1lSNWFqdUxjSXQ2bVg2Y2k1U0xrby9oaXdpaGk2V0VwSXVuaTVlWG1hS1NucXZjaTZRSUM4eFZ3a2xJVlZSS1I4RlZ6czNCd2M4ZUM2NVFqbkFlWDR1UGRtaEZDUHVNL0pRRlUvc0VXRUtMY290c3lJZWxpN2VMaUo2dTB3ajNpL2lVQmNQM0JMM1ZpNkFJQzR2RFZWNW8xbWplK3l2M3hYbXBaYzFVNHphTE1JdHNXSXRIaXpwaU0yeEhDRTM3SFFWN2FuZGJkWEZ0YUZXWmkxb0lhNWx3OXlLeTl3R054aDZMdjB0eGk3TUl1NnVPdnZjMHBJWmZIb3RvVHAyTFd3aE40WW4zSXg2VUJzRDNGNDNRSHd1QmVZZCtIb3FMaDQySml3aEJCb2lMaEltSGk0R0xmNCtMbDR1WG03S09sNUNVbmNlamk2R0xtbWlXZTVOOXBWYUxld2dMcDNxdWF4NDVpOGI3SXZ0amk0YUxmNHFFaXp1TGdwT0w5eHFMakltUGk0MkxwNCt1c0l2eGkwNGd5SXNJeDVMM0RiV3dodmNHVVI5Rmk4UDdBeitMVVl1SGpZdkZpNXVKbkl1WWk5U1VtK2VMOTFHTFN5emJpd2l5bWJDdXQzTHRVUjk4aTNsMit4dUxDUHV6aTJXTEJXUmFobHdmaTBiWTJKTDdMSTgramwrTFpvdGRobU9HSllRaVNMZUxWQWg5aTI3TUh2Z3ZCczZMdUgrYml3aTB3ZmNReng4TGk2eHpqM0thZHBoL2g0djNSUWp1QjR2UmplU2VvcUtsc1lpTHNBalAreENOVDNqN1g0dERIb3Rrc29xaGJaaDlsRytMK3hRSUtBZUwreUNDWm41OWZIaG9oWXRzQ0V2M0VvbTE5MjJWdUtrZUM4VThrbGdlWlFaZE9ZZFRINHRWdjVtWllaUjBqRitMZEl0NGltUnlpM21MYTZhQWxRajdndmRsQlYremY0OU5pd2g2QmxUN0FJZE1INHRQMDdLYko1ZERpME9MUTR0Y2lVNkRYNEZLVWFLTFZBaEw4NFM1dWZPU3pSNkx2bFZ5ZmN5R3BJaXdpNmVMb0k3TXFZdWdpNlZ5bVg4STk4ZjdxUVdjZnBwK240c0l3NUhzeFIvM3NnZUxzb3ZJbDdDZXViNTJpOE1JQy9jVUlmZUkrNm43YlBzLyt5bjdhUHRxOXpuN0x2ZG85MS8zVXZjaTkyc2VDMVJ3VjFBZ1R2ZUM0YnlueGNUM0JzTDdmVEFlQzR2V2E3eE50ZnNJMS9zYmQ0dlppNitxbWF1TDg0dXgrd2JQaXdpdm9hMnUzMERWYUI5M2kzMStmWXQ3aTBPcFRJdjdWb3NuK3hhTEpJdERzMDdEWC9jQ01mY2RuWXREaTJaVWdYV0xDUHRNaTVmM01VV0xiWXQvY1l0dmkxcWhJTHR2eFczM0JIck5pL2Q5aSt2M0Y0djNDZ2dMeGZzQ2kyWWVnQVpmSm9sUkg0dFI0YlNMSUFpTCs0eUxoQVZ6aFBzRCt5WWpYOWYzQ1I3M1RBZU85dy9WU0l2VENMSnFxZnMzKzA1L1dua2Vqb2dGaTEvS2g0dFRDUHVCQjR1S2lYeUxlZ2c2cWZ0ZDk5ZjM3SXYzaExnZTk2TUhpK1RWYW92RENBdTNhSm43RDJUN0I0dFJIb3RrcDRxTGJnaHpZVmh3YzJYSW9oNkxvS1dXaTZVSW9JbXkrMS83Y1lSaGNoNkpCNHRjenB1OFVRajNCUHNXQmJCY2tubUxVWXNyaGwyQWMzcGtVNTZMVlFodnBWNzNWN3YzTW92VUhvdTZWb1I5cVlHZGg3T0w2SXZSamFtM3d3ajNFUGNaQmI3QzAyYUx6QWdMdTNTb1doNCtpOFg3Ri90RWl3aUxnNG1KZUdTUG5oNkxucTdGbEpzSTkycjRCZ1dVbVpxaWk1NkxxM1daYjR0WmkvdDFlVGVMK3hHTGVwbUNpd2h5UnljK1pxZGNzeC9UaTJ6M0hmY1NpNlNMczRlTGNZdUFmM2lGZ2dqN2tQeEFCWVI5ZjN1TGVBaHFuSWFpSHZoV0JxZUx6SUdYaXdpc3p0ejNBUjhMaThGUEs0djNSUWp2Qi9jcCt6Q2lVeXY3TzFNMmJLSnlyQjdqaTVIM0FjYUxDTGlPUjJscWZvZHpING1MaDQySWl3ajdRMFkwUkNmZllONGY1b3VvdjZTTG80dU5WOXVMMDR2WnlJdkZDQXR0aVdObWJYMm5wYXVqcXEyaWpYWjRIZ3ZXUC9jWSt6NzdLZnNXK3dUN0wvc1c1L3NWOTBmbTl5TEQySjU0cTNVZWQ0dGxYVUtMQ0ZwTnRieVlrSXlVSC9kNEJxdXBsc3dmQzNCMmhuY2VoWXVEallXTGc0dUNpWVNMQ0hoN2tLU3FwNjJxc2FKdmFCOExpOEJSWVl2M0NRajNxZ2VoaWFKdGdmdVJiRVllaTF5L2w1Tm9qMzJOWVl0a2kxcUlWWVI1ZjJwamlZdG9DSE9SWS9jL3VmY1NpOUFlQzQ4SGk3VmhlWWpjZ1BjcnJ2ZGYrMk9MVW90dGRuZDRkM1NFZUh1TENIcUhtWmNmblFlZWZaNTJkdnQ1V0ZjZWkxakduSXRIQ0l1SmlQc3BCWWNwWGJlTFdnaE84WXV6SHBNR3V2Y0xqY1lmaTdGb2VvdnRDTllIaTVHSms0dVVDTFdVdkwzRG1GQlBIb3RqaFYrTGNZUkliSjZMWmdoVzM0bXpIcElHOTBtT3M1d2ZDL2NRSi9jZiswVDdPUHN5SmZ0SCt6TDNFelQzSi9jbzkwVHU5emdlQzIyQWFtb2VpWTBGUm81NTl5K0d5Z2lKa0FXa29LcXJ6YUQ3UTEwZUM0djNML3R3bDR2S2k2Q2RtWnlMdDR1c1BNV0xDS1dob0tTMVhlaGRIM2lMZkgxM2kzMkxXNWxtaXlPTE9VcUxKNHY3Ti9kWWdvdFJpM1o1Z0hlTFU0dGo3bCtMQ0cyRGRuSWZpMldqVWFWdm1YeVZoNStMbDR1WGo1bUxsNHZWZnJTTDg0dmx6WXZvQ0F1THZGVnZpOGNJOTEwSGk2dU5xWXVzQ0s1N29HaGsrMXlCVVI2TFlieWJrbGlOZVkxeGkzWUlPZ2RjaFZOVFZvbklzeDcza3dlbGlKZHZndnVQaUV3ZWkwalJ6b3Y3TFl0NGlIQ0xlSXY3RXBuN0F2YzNpK0tMczhpZ2k3T0xXazdYaThPTDkwT2ZpODRJQzdsQmtHbG5MWVJYSG90cHE0MkxYd2h6ZDBadGVWL1FzUjZMcEtPU2k2Y0l3ektRWmZ0b2VWNXRIb3RkeFppZFlnajNJUHUzQlpkeG4yU0xjSXQwZjNGeGkyR0xwZlV2aXdoWFpHQmFPT0ZsMHgvM05vdkw5eGU5OXhrSXhmYzNCWm14bTdlZ3NMREZ4M0dMeGdnTHFuMnVhQjVmaTVzMU9JdDZpM2lQaTZDTGw1eW5rSmNJOXhIM2NBV1NuSnVpaTZDTGxvV1ZmNUtIalcrTmQ0c0kreVFHK3ppTGhKeHlpd2hxVXo1RmNabHRxUi9CaTMvZjA0dVppNnFMaTNTTGUycGVoSDBJK3czN1Z3Vi9lWGR4aTNZSVpjT0xwQjczaHdiU2k0dDhuNHNJcTgvTDJoOEx5bG04VGs5WldreFB2VnJIeUwyOHh4NExpN1VxNW91OGk4RHM1SXUyaTZOd25uT0xab3RJUlhGeGJXdFRWWXRkaTE3RFZLbHVDS1Z1emtld2k2T0xwcUNMb2dnTGk3bFN3VzZyY0tWSjBXYUxjb3R4ZUl0emkyRHJNb3RXaTFvck1JdGhpM1NsZHFTTENMQ0x6YyttcUtpb3hNS0x1QWdMejF6TFEwaGJXVWdlaXpEWWhZdG1pMHhHWjR0MkNIYXFmNXpQOXdMM0wvY0pIZ3ZPVmNGSVNGVlZTRWpCVmM3T3djSE9IZ3ZvTHRjeSt3ZjdBRXI3RWlIbFVPMzE5d1BVOXdZZUMzbUZkWFJaZmZjWm01eVZvSis3bXZzRWFCNEx1akNVYkh4SGgzRWVpNEtUaG91RWkyOUZmWXRoQ0d1bmhxWDNHOW5vb2g0THUvc3c3MlpuK3pBblczYWJkcUllczQzU3c3V0x0NHZRVTdXSkNLT1pvS0FmQzd4amtWMXpjb0JyZ1l1SGZ4NW1peWpFUG9zSVVWaGRVMXF6aGJtaXBKYXJsWXVQbHgreGkrNVMxNHNJeDcyNXd4OEx3VWlVWkZjbGdFVll3WHV5dnZjSW5jNGVDOEZIbEdOWklvQkZXTU43dEwzM0NKM09IZ3U1TUpWc2UwZUdjaDZMZ0pPSWk0S0xjRVY5aTJFSWE2ZUdwZmNjMmVla0hndWlmSjV6SG1LS1JsTmZpMStMUnNOaWpBaHpmSGgwVy9jd0o3Q3c5ekR2dXg4TGtJV1FoUjc3YndaMWkzT05jNHVDaTRTRWg0U0hnbjlxaTRJSWhwR0hrUjczZlFhaWk2S0dtWXNJblptK214OEx3VWFVWkZramdFVll3M3V5dnZjSW5jNGVDOEZKbEdKWUpZQkZXTUI3dEwzM0NKM09IZ3YzWFBzNDl6ZjdYUHRjK3puN04vdGMrMS8zT2ZzMzkxejNYUGM0OXpmM1h4NEwrem43R2ZzWCt6ajdOL3NZOXhmM09mYzI5eGozRi9jMzl6ajNHZnNYK3pZZUN3QUFBQUVBQUFBTUFBQUFGZ0FBQUFJQUFRQUJBT1VBQVFBRUFBQUFBZ0FBQUFBQUFRQUFBQW9BSEFBZUFBRnNZWFJ1QUFnQUJBQUFBQUQvL3dBQUFBQUFBQUFCQUFBQUNnQWVBQ3dBQVd4aGRHNEFDQUFFQUFBQUFQLy9BQUVBQUFBQmEyVnliZ0FJQUFBQUFRQUFBQUVBQkFBQ0FBQUFBUUFJQUFFQ0NnQUVBQUFBRUFBcUFEQUFVZ0JnQUhvQWlBQ2VBTndCRWdGSUFZSUJqQUdTQWVnQjlnSUFBQUVBVlAvWUFBZ0FDUC9FQURYL3NBQTMvMUlBT1A5NUFEci9nd0JYLzZzQVdQK3JBRnIvdndBREFBMy9zQUFQLzZzQUl2K21BQVlBQ1Avc0FEWC91Z0EzLzZZQU9QK21BRHIvdFFCYS8rSUFBd0FOLzdBQUQvK21BQ0wvb1FBRkFEWC96Z0EzLzdvQU9QKzFBRHIvdWdCYS83b0FEd0FOLzdVQUR2LzJBQS8vcXdBYkFESUFIQUEzQUNML2tnQkMvOTBBUlAvVEFFYi8wd0JLQUMwQVVQL1RBRlAvOWdCVS8rSUFWZ0FQQUZnQUhnQU5BQTMvZ3dBTy83OEFELytEQUJ2LzNRQWMvOTBBSXY4MEFFTC9uQUJHLzNrQVNnQVVBRkQvZVFCVC82WUFWdi9FQUZyL3F3QU5BQTMvcXdBTy84a0FELytyQUJ2LzhRQWMvL1lBSXY5K0FFTC9zQUJHLzdBQVNnQVVBRkQvcXdCVC84UUFWdi9pQUZyLzJBQU9BQTMva2dBTy83b0FELytTQUJ2LzJBQWMvK0lBSXYrREFFTC9nd0JHLzM0QVNnQVBBRkQvZmdCUi82c0FVdjkrQUZiL3hBQlgvNnNBQWdCVi8rNEFWLysrQUFFQVJ3QW9BQlVBRGYrMUFBNEFHUUFQLzdBQVJQLzJBRVgvOWdCRy8vWUFSd0FqQUVnQUNnQkovK3dBVGdBS0FFOEFEd0JRLy9ZQVV2LzJBRk1BQlFCVkFCUUFWZ0FVQUZjQUR3QllBQThBV2YvN0FGb0FDZ0JiQUJrQUF3QU4vNllBRC8raEFFTC94QUFDQUEzL3BnQVAvNkVBQWdBTi81d0FELytYQUFFQUVBQUlBQ0lBSndBdEFERUFNd0ExQURjQU9BQTZBRUlBUndCVEFGY0FXQUJhQUFBQjlBQUFBV01BQUFFZUFBTUNFd0FDQWRFQUd3SnJBQWtEZUFBTUE3c0FDQUVlQUFZQjVnQUJBZVlBQVFHakFCRUNFd0FiQVRZQUNnRnRBQ29CSGdBQ0Fod0FDZ0taQURFQ21RQS9BcGtBSHdLWkFCc0NtUUFqQXBrQU1nS1pBQ1VDbVFBaEFwa0FJUUtaQUNBQkhnQUNBVFlBQ2dJVEFBTUNFd0FEQWhNQUF3SVRBQUlDM2dBTUE2TUFDd01JQUFVRENBQUtBMkVBQ2dMeEFBTUMyd0FDQTBzQUFRTmhBQVVCMFFBSkFzWUFCUU9PQUFZQ3hnQUdBN3NBQmdONEFBSUROZ0FGQXZFQUN3TTJBQVFEU3dBREFxNEFCUU1lQUFvRGVBQUdBNDRBQ1FTREFBZ0RlQUFHQTJFQUFRTHhBQU1Cb3dBRkFnVUFDUUdqQUFVQ0V3QURBZmovNlFFZUFBWUNhd0FGQXNZQUNRSkFBQWdDeGdBR0FrQUFCUUhtQUFNQ2d3QUpBdkVBQ2dHT0FBSUJlQUFJQXpZQUNnR2pBQWdFRXdBRUF0c0FBd0tEQUFJQzJ3QUtBc1lBQ0FKV0FBWUIvZ0FJQWhNQUFnTHhBQXNDMndBSkJGWUFDQUt1QUFnQ3hnQUpBa0FBQlFHRkFBb0FzZ0FlQVlVQUNnSVRBQnNCSGdBWkFoTUFDd0taQUFVQ1FBQUtBc1lBQmdKUy95c0NtUUFDQWlrQUNnRUpBQVFDS1FBREFrQUFBUUZyQURjQmF3QXhBd1VBQndMdEFBQUNJQUFJQXZZQUpnTDJBQ01CSGdBQ0FxNEFDQUdPQUFRQk93QWxBa3NBSlFJcEFBTUNRQUFCQStnQUxnVWhBQTRDRXdBV0FUWUFBUUUyQUFFQ0V3QlJBaE1BSUFJVEFCVUNUUUJMQVpFQVJnSnJBQVlCdndCR0FQTUFBZ0t4QUVZQm5RQkZBZzhBVEFRS0FBSUVhd0FGQVk0QUNnS1pBQTRETmdBRkJISUFHQUdPQUFJRFlRQUdBWGNBQ2dHQUFBVUNtUUFCQTZFQUVnTEdBQWdEWVFBREFvTUFBUUttQUFVQjlRQUlBM2dBREFMR0FBa0Myd0FKQXRzQUNnTFJBQU1DSEFBRkE3Z0FDZ08rQUFrQmpnQURBODRBQ3dHN0FBTUJ1d0FJQUxBQUd3RmhBQjRCL2dBWUE2TUFDd09qQUFzRENBQUtBdkVBQXdONEFBSUROZ0FGQTNnQUJnSnJBQVVDYXdBRkFtc0FCUUpyQUFVQ2F3QUZBbXNBQlFKQUFBZ0NRQUFGQWtBQUJRSkFBQVVDYXdBR0FZNEFBZ0dPQUFJQnV3QUpBbXNBQlFMYkFBTUNnd0FDQW9NQUFnS0RBQUlDZ3dBQ0FvTUFBZ0x4QUFzQzhRQUxBdkVBQ3dMeEFBc0JZUUFGQXVRQUF3TGtBQU1ENkFBV0FoTUFHd0x4QUFzQ0V3QURBZlFBQUFPakFBc0Rvd0FMQXpZQUJRSVRBQnNDeGdBSkF6TUFBUU9qQUFzQzhRQURBNk1BQ3dMeEFBTUM4UUFEQWRFQUNRSFJBQWtDYXdBRkFkRUFDUU0yQUFVRE5nQUZBellBQlFONEFBWUFCZ0FHQUFBQUFRQUFBQUREcXBTM0FBQUFBS2JmbFpnQUFBQUFwdCtWbUE9PSJ9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPSJBQUVBQUFBTkFJQUFBd0JRUkZOSlJ3QUFBQUVBQUIxb0FBQUFDRWRFUlVZQVpRQUdBQUFkY0FBQUFDQlBVeTh5VDl4ZXZBQUFBTndBQUFCZ1kyMWhjSktqWncwQUFCOFVBQUFDUkdkaGMzQUFBQUFEQUFBZFlBQUFBQWhuYkhsbXh5WW44QUFBQWtnQUFCamthR1ZoWkFIZ3JFZ0FBQng4QUFBQU5taG9aV0VFTHdKUEFBQUNCQUFBQUNSb2JYUjRFZFVPMEFBQUhMUUFBQUNzYkc5allRQUQ4RWdBQUJzc0FBQUJVRzFoZUhBQVpRQk1BQUFDS0FBQUFDQnVZVzFsL0xyUUpnQUFIWkFBQUFHRGNHOXpkQWhlQjdBQUFBRThBQUFBeUFBREFmOEJrQUFGQUFnQlRBRm1BQUFBUndGTUFXWUFBQUQxQUJrQWhBQUFBZ0FGQ1FBQUFBQUFBQUFBQUFFQUFBQUFBQUFBQUFBQUFBQlFaa1ZrQUVBQUlBQjZBZUQvNEFBdUFnQUFBQUFBQUFFQUFBQUFBZjRBQUFBQUFDQUFBQUFDQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFGTUFBQUFCQUFJQVJBQkZBRVlBUndCSUFFa0FTZ0JMQUV3QVRRQk9BRThBVUFCUkFGSUFVd0JVQUZVQVZnQlhBRmdBV1FCYUFGc0FYQUJkQUJNQUZBQVZBQllBRndBWUFCa0FHZ0FiQUJ3QVB3QU1BQjBBRHdBRkFBUUFFZ0FLQUNNQUVRQUxBQjhBUWdBZUFCQUFJZ0FoQUFNQUpBQWxBQ1lBSndBb0FDa0FLZ0FyQUN3QUxRQXVBQzhBTUFBeEFESUFNd0EwQURVQU5nQTNBRGdBT1FBNkFEc0FQQUE5QUFFQUFBSUFBQUFBTGdJQUFFc0FTd0cxQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFEQUFFQUFBQlRBRXdBRVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0JMQUFJQnRRSCtBQmNBSXdBQUV4VWpGU01WSXhVakVUTTFNeFV6RVNNMUl6VWpOU00xQnpNVk14VXpGU00xTXpVejNDVWtKQ1JJMmtna0pDUWxTRWdsSk5va0pRSCtKQ1VrSlA2VmtaRUJheVFrSlNSdEpDUnRiU1FBQUFBQUF3QkxBQUlCdFFIK0FBOEFGd0FmQUFBVEVTRTFNelV6TlNNMU16VWpOU00xQnpNVk14VWpGU01WTXhVekZTTVZJMHNCSWlRa0pDUWtKTnEySkNTMnRpUWt0Z0grL2dRa0paRklrU1VrU1NSSUpVZ2xTQ1FBQUFFQVN3QUNBYlVCL2dBa0FBQTNOU00xSXhFek5UTTFNeFV6RlRNVkl6VWpOU01WSXhFekZUTTFNelV6RlNNVkl4VWpreVFrSkNUYUpDUklKSklrSkpJa1NDUWsyaFFTSlFGcUpTUWtKVWdrSkNUKzNpUWtKRWdsSkFBQUFnQkxBQUlCdFFIK0FCTUFJd0FBRXhFek5UTTFNelV6TlRNMUl6VWpOU00xSXpVSE14VXpGVE1WTXhVakZTTVZJeFVqUzlrbEpDUWtKQ1FrSlpGdEpDVWtKQ1VrYlFIKy9nUWtKU1FrMmlRa0pTUkpKQ1Fra2lRa0pBQUJBRXNBQWdHMUFmNEFEQUFBRXpVaEZTRVZNeFVqRlNFVklVc0JhdjdlMnRvQkl2NldBUUQrU1pGSWtVa0FBQUFCQUVzQUFnRzFBZjRBQ2dBQUV6VWhGU0VWTXhVakZTTkxBV3IrM3RyYVNBRUEva21SU05vQUFRQkxBQUlCdFFIK0FDQUFBRGMxSXpVakVUTTFNelV6RlRNVk14VWpOU00xSXhVakVUTVZNelVqTlRNVklaTWtKQ1FrMmlRa1NDU1NKQ1Mya2RuKzNoUVNKUUZxSlNRa0pXeElKQ1QrM2lSc1NmNEFBUUJMQUFJQnRRSCtBQXdBQUJNMU14VXpOVE1SSXpVakZTTkxTTnBJU05wSUFRRCsydHIrQk5yYUFBQUJBSk1BQWdGdEFmNEFEQUFBTnpVekVTTTFNeFVqRVRNVkk1TkpTZHBKU2RvbUpRRnFTVW4rbGtrQUFBRUFTd0FDQWJVQi9nQVlBQUEzTlNNMUl6VXpGVE1WTXpVekVTTTFNeFVqRVNNVkl4VWpreVFrU0NSSkpFalpTQ1EzZnhRU0pVZ2tKQ1FCUmtsSi9wWWxKQUFBQVFCTEFBSUJ0UUgrQURRQUFCTTFNeFV6TlRNMU16VXpOVE0xTXpVekZTTVZJeFVqRlNNVkl4VXpGVE1WTXhVekZUTVZJelVqTlNNMUl6VWpOU00xSXhValMwZ2tKU1FrSlNSSUpDUWtKU1FrSlNRa0pFZ2tKU1FrSlNSSUFRRCsyaVVrSkNRbEpFa2tKQ1FsU0NVa0pDUkpKQ1VrSkNRbDJnQUFBQUVBU3dBQ0FiVUIvZ0FHQUFBVE5UTVJJUlVoUzBnQkl2NldBUUQrL2sxSkFBQUFBQUVBU3dBQ0FiVUIvZ0FjQUFBVE5UTVZNeFV6RlRNMU16VXpOVE1SSXhFakZTTVZJelVqTlNNUkkwdElKQ1ZJSlNSSVNDUWxTQ1VrU0FFQS9pUWxKQ1FsSlA0RUFXc2tTVWtrL3BVQUFBQUFBUUJMQUFJQnRRSCtBQ0FBQUJNMU14VXpGVE1WTXhVekZUTVZNeEV6RVNNMUl6VWpOU00xSXpVak5TTVJJMHRJSkNVa0pDVWtTRWdrSlNRa0pTUklBUUQrSkNWSVNVaEpBV3YrQkNRbFNFbElTZjZWQUFBQUFBSUFTd0FDQWJVQi9nQVRBQjhBQUJNVkl4VWpFVE1WTXhVek5UTTFNeEVqTlNNMUJ6TVZNeEVqRlNNMUl4RXpreVFrSkNUYUpDUWtKTGFTSkNTU0pDUUIvaVFsL3BZbEpDUWxBV29sSkVray90NGtKQUVpQUFBQ0FGUUFBZ0dzQWY0QURRQVZBQUFURVRNMU16VXpOVE0xSXpVak5RY3pGVE1WSXhValZFaklKQ1FrSk1pMkpDUzJBZjcrQk5va0pKRWxKRWtrU0NVQUFnQlVBQUlCckFIK0FCY0FLd0FBRXhVakZTTVJNeFV6RlRNMU14VXpOU00xTXhFak5TTTFCek1WTXhVak5TTTFJeFV6RlRNVkl6VWpFVE9jSkNRa0pIOWJOaVFrSkNTamZpVWxKRFlrSkd3bEpRSCtKQ1grbGlVa0pDUkpKQUZHSlNSSkpQNGtKVWtrSkNRQklnQUFBQUlBVkFBQ0Fhd0IvZ0FqQUNzQUFCTVJNelV6RlRNVk14VXpGVE1WTXhVek5TTTFJelVqTlNNMU16VXpOVE0xSXpVak5RY3pGVE1WSXhValZFZ1NKU1FrSkNWSUpDUWxKRWtrSkNRa3lLTWxKYU1CL3Y0RTJpVWtKQ1FsSkVra0pDUWxKQ1NSSlNSSkpFZ2xBQUVBU3dBQ0FiVUIvZ0FzQUFBM05TTTFNeFV6TlRNMUl6VWpOU00xSXpVek5UTTFNeFV6RlNNMUl4VWpGVE1WTXhVekZUTVZJeFVqRlNOdkpFaTJKQ1MySkNRa0pQNGtTTFlrSkxZa0pDUWsvaFFTU1NRa1NDVWtKSkVsSkNSSkpDUklKU1Fra1NVa0FBQUFBQUVBU3dBQ0FiVUIvZ0FJQUFBM05TTTFJUlVqRVNQY2tRRnFrVWpjMlVsSi9rMEFBQUVBU3dBQ0FiVUIvZ0FVQUFBM05TTTFJeEV6RVRNVk16VXpFVE1SSXhVakZTT1RKQ1JJSkpJa1NDUWsyaFFTSlFHei9uRWtKQUdQL2swbEpBQUFBQUFCQUVzQUFnRzFBZjRBSUFBQU56VWpOU00xSXpVakVUTVJNeFV6RlRNMU16VXpFVE1SSXhVakZTTVZJeFVqM0NVa0pDUklKQ1ZJSlNSSUpDUWtKVWdVRWlVa0pBRnIvcmtrSkNRa0FVZitsU1FrSlNRQUFBQUFBUUJMQUFJQnRRSCtBQmdBQURjMUl6VWpFVE1STXpVekZUTVJNeEVqRlNNVkl6VWpGU09USkNSSVNVaEpTQ1FrU1VoSkZCSWxBYlArY2JXMUFZLytUU1VrSkNRQUFBQUFBUUJMQUFJQnRRSCtBRFFBQURjMU16VXpOVE0xSXpVak5TTTFNeFV6RlRNVk16VXpOVE0xTXhVakZTTVZJeFV6RlRNVk14VWpOU00xSXpVakZTTVZJeFVqU3lRa0pDUWtKRWdrSlVnbEpFZ2tKQ1FrSkNSSUpDVklKU1JJUzBna0pVZ2xKSkZ0SkNRa0pHMlJKQ1ZJSlNTUmJTUWtKQ1J0QUFBQUFBRUFTd0FDQWJVQi9nQWdBQUEzTlNNMUl6VWpOU00xTXhVekZUTVZNelV6TlRNMU14VWpGU01WSXhVakZTUGNKU1FrSkVna0pVZ2xKRWdrSkNRbFNGMWFKU1FrMnJVbEpDUWx0ZG9rSkNXMUFBQUFBQUVBU3dBQ0FiVUIvZ0FvQUFBM05UTTFNelV6TlRNMU16VXpOVE0xTXpVaE5TRVZJeFVqRlNNVkl4VWpGU01WSXhVakZTRVZJVXNrSkNRbEpDUWxKUDdlQVdva0pDUWxKQ1FsSkFFaS9wWkxTQ1FsSkNRbEpDUWtTWkVrSlNRa0pTUWtKRWtBQUFBQUFnQkxBQUlCdFFIK0FCTUFId0FBRXhVakZTTVJNeFV6RlRNMU16VXpFU00xSXpVSE14VXpFU01WSXpVakVUT1RKQ1FrSk5va0pDUWt0cElrSkpJa0pBSCtKQ1grbGlVa0pDVUJhaVVrU1NUKzNpUWtBU0lBQUFFQWt3QUNBVzBCL2dBT0FBQTNOVE1SSXpVek5UTTFNeEV6RlNPVFNVa2tKVWhKMmlZbEFTSklKU1QrVFVrQUFBRUFTd0FDQWJVQi9nQXlBQUEzTlRNMU16VXpOVE0xTXpVek5UTTFNelVqTlNNVkl4VWpOVE0xTXpVekZUTVZNeFVqRlNNVkl4VWpGU01WSXhVekZTRkxKQ1FrSlNRa0pTUWtiU1ZzSkNUYUpDUWtKQ1FsSkNUWi9wWW1KU1FrSkNVa0pDVklKQ1FrU0NVa0pDV1JKQ1FsSkNRa1NRQUFBQUVBU3dBQ0FiVUIvZ0F3QUFBM05TTTFJelV6RlRNVk16VXpOU00xSXpVek5UTTFJelVqRlNNVkl6VXpOVE0xTXhVekZUTVZJeFV6RlNNVkl4VWpreVFrU0NTU0pDUnRiU1Fra2lSSUpDVGFKQ1FrSkNRazJoUVNKVWdrSkNSSUpVZ2xTQ1FrSkVnbEpDUWxrVWlSSlNRQUFBQUFBZ0JMQUFJQnRRSCtBQlVBSHdBQUFSVWpGU01WSXhVakZTTVZJeFV6RlRNMU16VWpFUWN6RlNNMU16VXpOVE1CSkNRa0pTUWtKTmxKU0VodEpKRWtKU1FCL2lRbEpDUWtKWkdSa1VrQklwR1JKQ1FsQUFBQUFBRUFTd0FDQWJVQi9nQWdBQUEzTlNNMUl6VXpGVE1WTXpVek5TTTFJelVoRlNFVk14VXpGVE1WSXhVakZTT1RKQ1JJSkpJa0pQNEJhdjdlMmlRa0pDVGFGQklsU0NRa0pKRWsya2xJSkNYWkpTUUFBQUlBU3dBQ0FiVUIvZ0FoQUNzQUFCTVZJeFVqRVRNVk14VXpOVE0xTXpVak5TTTFJelV6TlRNVk14VXpOU00xSXpVRE14VXpGU01WSXpVamt5UWtKQ1RhSkNRa0pOb2traVJJSkNUYXRpUWtraVFCL2lRbC9wWWxKQ1Fsa1NRa2JTUWtKRWdsSlA3ZUpVZ2tKQUFBQUFBQkFFc0FBZ0cxQWY0QUZnQUFOelV6TlRNMU16VXpOU0UxSVJVakZTTVZJeFVqRlNQY0pDUWxKUDdlQVdva0pDUWxTSk9SSlNRa0pFbVJKQ1VrL2dBQUF3QkxBQUlCdFFIK0FCc0FKd0F6QUFBVEZTTVZJeFV6RlNNVk14VXpGVE0xTXpVek5TTTFNelVqTlNNMUJ6TVZNeFVqRlNNMUl6VXpGVE1WTXhVakZTTTFJelV6a3lRa0pDUWtKTm9rSkNRa0pDUzJraVFra2lRa2tpUWtraVFrQWY0a0paRklrU1VrSkNXUlNKRWxKRWtrU0NVbFNMVWxTQ1FrU0FBQUFBQUNBRXNBQWdHMUFmNEFJUUFyQUFBVEZTTVZJeFV6RlRNVk14VWpGU00xSXpVakZUTVZNeFV6TlRNMU14RWpOU00xQnpNVk14VWpOU00xTTVNa0pDUWsyaVNTSkVna0pOb2tKQ1FrdHBJa3RpUWtBZjRrSlpFa0pHMGtKQ1JJSlNRa0pRRnFKU1JKSkcwbFNBQUJBRXNBU3dHMUFiVUFKQUFBSlRVak5TTTFJelVqTlNNMUl6VWpOU00xSXhVekZUTVZNeFV6RlRNVk14VXpGVE1WTXdHMUpDUWtKU1FrSlNSSUpDUWtKU1FrSlNSSWJ5UWtKU1FrSlNRa0pFZ2tKU1FrSlNRa0pBQUFBQUVBcFFBVUFWc0I3QUFjQUFBM05UTTFNelV6TlNNMUl6VWpOU01WTXhVekZUTVZJeFVqRlNNVk05dzJKQ1VsSkRZM0pTUWtKQ1FsTnlZVEpDVCtKQ1FsSlNRay9pUWtKUUFBQUFBQ0FOd0FTd0VrQWJVQUJBQUpBQUEzTlRNVkl4RTFNeFVqM0VoSVNFaHZKRWdCUmlSSUFBQUFBUUMzQUFBQlNRQ1JBQXdBQURjMU16VXpOVE1WSXhVakZTTzNKU1JKSlNSSkVoSWxTRWdsSkFBQUFBQUNBRzhCSmdHUkFnQUFEQUFaQUFBVE5TTTFNelV6RlRNVkl4VWpOelVqTlRNMU14VXpGU01WSTVNa0pDUWxKU1MySlNVa0pDUWtBVjAyU1NRa1NXMDNOa2trSkVsdEFBQUNBTndBQWdFa0FmNEFCQUFKQUFBM05UTVZJeEUxTXhFajNFaElTRWdtSlVrQlI3WCtsUUFBQVFCTEFFc0J0UUcxQUNRQUFEYzFNelV6TlRNMU16VXpOVE0xTXpVek5UTVZJeFVqRlNNVkl4VWpGU01WSXhVakZTTkxKQ1FrSlNRa0pTUklKQ1FrSlNRa0pTUklieVFrSlNRa0pTUWtKRWdrSlNRa0pTUWtKQUFBQUFBQkFNb0JKZ0UyQWdBQUVBQUFFelV6TlNNMUl6VXpOVE1WTXhVakZTUHVKQ1FrSkNRa0pDUUJPUkpJSkNVa0pKRWxBQUFBRVFCTEFDWUJ0UUhhQUFNQUJ3QUxBQThBRXdBWEFDTUFKd0FyQUM4QU13QTNBRHNBUHdCREFFY0FTd0FBRXhVek5SVVZNelVWRlRNMUZSVXpOUWNqRlRNakl4VXpKelVqRlNNVk14VWpGVE1WSnlNVk15YzFJeFUzTXpVak5TTVZNeU1qRlRNakl4VXpNUlV6TlJVVk16VVZGVE0xTVRNMUk3ZVNKQ1FrSkNRa0pDUWtKQ1VrSkNRa0pFbEpTU1FrU1Vra0pDUWtKQ1FrSkNRa3RpUWtBZG9sSlNVa0pDUWtKQ1NSa1pFbEpDUzJKQ1VrSkNVbEpTVnRiVzBrU0NRazJpUWtKQ1FrSkNVbEpBQUFBUURjQUFBQkpBQkpBQVFBQURjMU14VWozRWhJSkNWSkFBQUFBQUVBcFFBVUFWc0I3QUFjQUFBbE5TTTFJelVqTlRNMU16VXpOVE1WSXhVakZTTVZNeFV6RlRNVkl3RWtOaVFsSlNRMk55VWtKQ1FrSlRjbUV5UWsvaVFrSlNVa0pQNGtKQ1VBQUFBQkFHOEFBZ0dSQWY0QU1BQUFKVFVqTlNNMUl6VWpOU00xSXpVek5UTTFNelV6TlRNMU16VXpGU01WSXhVakZTTVZJeFV6RlRNVk14VXpGVE1WSXdGSkpTUWtKU1FrSkNRbEpDUWxTQ1FrSlNRa0pDUWxKQ1JJRkJJbEpDUWtKVWdsSkNRa0pTUkpKQ1FrSlVnbEpDUWtTUUFBQUFFQVN3QUFBYlVBU1FBRUFBQTNOU0VWSVVzQmF2NldKQ1ZKQUFBQ0FMY0FBQUZKQVdzQURBQVJBQUEzTlRNMU16VXpGU01WSXhVakV6VXpGU08zSlNSSkpTUkpTVWxKRWhJbFNFZ2xKQUZHSlVrQUFBRUFrd0RjQVcwQkpBQUVBQUFUTlRNVkk1UGEyZ0VBSkVnQUFBQUNBRXNBQWdHMUFmNEFCQUFwQUFBM05UTVZJelUxTXpVek5UTTFNelVqTlNNVkl4VWpOVE0xTXpVekZUTVZNeFVqRlNNVkl4VWpGU1BjU0Vna0pDVWtKSklrU0NRazJpUWtKQ1FrSlVnbUpVbTFKU1FrSlVna0pDUklKU1FrSlpFa0pDVWtBQUFBQUFFQWJ3QUNBWkVCL2dBd0FBQTNOVE0xTXpVek5UTTFNelV6TlNNMUl6VWpOU00xSXpVak5TTVZNeFV6RlRNVk14VXpGU01WSXhVakZTTVZJeFV6dHlVa0pDVWtKQ1FrSlNRa0pVZ2tKQ1VrSkNRa0pTUWtTQlFTSlNRa0pDVklKU1FrSkNVa1NTUWtKQ1ZJSlNRa0pFa0FBQUFBQWdCTEFBSUJ0UUgrQUJjQUl3QUFFeFVqRlNNVkl4VWpFVE0xTXhVekVTTTFJelVqTlNNMUJ6TVZNeFV6RlNNMU16VXozQ1VrSkNSSTJrZ2tKQ1FsU0VnbEpOb2tKUUgrSkNVa0pQNlZrWkVCYXlRa0pTUnRKQ1J0YlNRQUFBQUFBd0JMQUFJQnRRSCtBQThBRndBZkFBQVRFU0UxTXpVek5TTTFNelVqTlNNMUJ6TVZNeFVqRlNNVk14VXpGU01WSTBzQklpUWtKQ1FrSk5xMkpDUzJ0aVFrdGdIKy9nUWtKWkZJa1NVa1NTUklKVWdsU0NRQUFBRUFTd0FDQWJVQi9nQWtBQUEzTlNNMUl4RXpOVE0xTXhVekZUTVZJelVqTlNNVkl4RXpGVE0xTXpVekZTTVZJeFVqa3lRa0pDVGFKQ1JJSkpJa0pKSWtTQ1FrMmhRU0pRRnFKU1FrSlVna0pDVCszaVFrSkVnbEpBQUFBZ0JMQUFJQnRRSCtBQk1BSXdBQUV4RXpOVE0xTXpVek5UTTFJelVqTlNNMUl6VUhNeFV6RlRNVk14VWpGU01WSXhValM5a2xKQ1FrSkNRa0paRnRKQ1VrSkNVa2JRSCsvZ1FrSlNRazJpUWtKU1JKSkNRa2tpUWtKQUFCQUVzQUFnRzFBZjRBREFBQUV6VWhGU0VWTXhVakZTRVZJVXNCYXY3ZTJ0b0JJdjZXQVFEK1NaRklrVWtBQUFBQkFFc0FBZ0cxQWY0QUNnQUFFelVoRlNFVk14VWpGU05MQVdyKzN0cmFTQUVBL2ttUlNOb0FBUUJMQUFJQnRRSCtBQ0FBQURjMUl6VWpFVE0xTXpVekZUTVZNeFVqTlNNMUl4VWpFVE1WTXpVak5UTVZJWk1rSkNRazJpUWtTQ1NTSkNTMmtkbiszaFFTSlFGcUpTUWtKV3hJSkNUKzNpUnNTZjRBQVFCTEFBSUJ0UUgrQUF3QUFCTTFNeFV6TlRNUkl6VWpGU05MU05wSVNOcElBUUQrMnRyK0JOcmFBQUFCQUpNQUFnRnRBZjRBREFBQU56VXpFU00xTXhVakVUTVZJNU5KU2RwSlNkb21KUUZxU1VuK2xra0FBQUVBU3dBQ0FiVUIvZ0FZQUFBM05TTTFJelV6RlRNVk16VXpFU00xTXhVakVTTVZJeFVqa3lRa1NDUkpKRWpaU0NRM2Z4UVNKVWdrSkNRQlJrbEovcFlsSkFBQUFRQkxBQUlCdFFIK0FEUUFBQk0xTXhVek5UTTFNelV6TlRNMU16VXpGU01WSXhVakZTTVZJeFV6RlRNVk14VXpGVE1WSXpVak5TTTFJelVqTlNNMUl4VWpTMGdrSlNRa0pTUklKQ1FrSlNRa0pTUWtKRWdrSlNRa0pTUklBUUQrMmlVa0pDUWxKRWtrSkNRbFNDVWtKQ1JKSkNVa0pDUWwyZ0FBQUFFQVN3QUNBYlVCL2dBR0FBQVROVE1SSVJVaFMwZ0JJdjZXQVFEKy9rMUpBQUFBQUFFQVN3QUNBYlVCL2dBY0FBQVROVE1WTXhVekZUTTFNelV6TlRNUkl4RWpGU01WSXpVak5TTVJJMHRJSkNWSUpTUklTQ1FsU0NVa1NBRUEvaVFsSkNRbEpQNEVBV3NrU1Vray9wVUFBQUFBQVFCTEFBSUJ0UUgrQUNBQUFCTTFNeFV6RlRNVk14VXpGVE1WTXhFekVTTTFJelVqTlNNMUl6VWpOU01SSTB0SUpDVWtKQ1VrU0Vna0pTUWtKU1JJQVFEK0pDVklTVWhKQVd2K0JDUWxTRWxJU2Y2VkFBQUFBQUlBU3dBQ0FiVUIvZ0FUQUI4QUFCTVZJeFVqRVRNVk14VXpOVE0xTXhFak5TTTFCek1WTXhFakZTTTFJeEV6a3lRa0pDVGFKQ1FrSkxhU0pDU1NKQ1FCL2lRbC9wWWxKQ1FsQVdvbEpFa2svdDRrSkFFaUFBQUNBRlFBQWdHc0FmNEFEUUFWQUFBVEVUTTFNelV6TlRNMUl6VWpOUWN6RlRNVkl4VWpWRWpJSkNRa0pNaTJKQ1MyQWY3K0JOb2tKSkVsSkVra1NDVUFBZ0JVQUFJQnJBSCtBQmNBS3dBQUV4VWpGU01STXhVekZUTTFNeFV6TlNNMU14RWpOU00xQnpNVk14VWpOU00xSXhVekZUTVZJelVqRVRPY0pDUWtKSDliTmlRa0pDU2pmaVVsSkRZa0pHd2xKUUgrSkNYK2xpVWtKQ1JKSkFGR0pTUkpKUDRrSlVra0pDUUJJZ0FBQUFJQVZBQUNBYXdCL2dBakFDc0FBQk1STXpVekZUTVZNeFV6RlRNVk14VXpOU00xSXpVak5TTTFNelV6TlRNMUl6VWpOUWN6RlRNVkl4VWpWRWdTSlNRa0pDVklKQ1FsSkVra0pDUWt5S01sSmFNQi92NEUyaVVrSkNRbEpFa2tKQ1FsSkNTUkpTUkpKRWdsQUFFQVN3QUNBYlVCL2dBc0FBQTNOU00xTXhVek5UTTFJelVqTlNNMUl6VXpOVE0xTXhVekZTTTFJeFVqRlRNVk14VXpGVE1WSXhVakZTTnZKRWkySkNTMkpDUWtKUDRrU0xZa0pMWWtKQ1FrL2hRU1NTUWtTQ1VrSkpFbEpDUkpKQ1JJSlNRa2tTVWtBQUFBQUFFQVN3QUNBYlVCL2dBSUFBQTNOU00xSVJVakVTUGNrUUZxa1VqYzJVbEovazBBQUFFQVN3QUNBYlVCL2dBVUFBQTNOU00xSXhFekVUTVZNelV6RVRNUkl4VWpGU09USkNSSUpKSWtTQ1FrMmhRU0pRR3ovbkVrSkFHUC9rMGxKQUFBQUFBQkFFc0FBZ0cxQWY0QUlBQUFOelVqTlNNMUl6VWpFVE1STXhVekZUTTFNelV6RVRNUkl4VWpGU01WSXhVajNDVWtKQ1JJSkNWSUpTUklKQ1FrSlVnVUVpVWtKQUZyL3Jra0pDUWtBVWYrbFNRa0pTUUFBQUFBQVFCTEFBSUJ0UUgrQUJnQUFEYzFJelVqRVRNUk16VXpGVE1STXhFakZTTVZJelVqRlNPVEpDUklTVWhKU0NRa1NVaEpGQklsQWJQK2NiVzFBWS8rVFNVa0pDUUFBQUFBQVFCTEFBSUJ0UUgrQURRQUFEYzFNelV6TlRNMUl6VWpOU00xTXhVekZUTVZNelV6TlRNMU14VWpGU01WSXhVekZUTVZNeFVqTlNNMUl6VWpGU01WSXhValN5UWtKQ1FrSkVna0pVZ2xKRWdrSkNRa0pDUklKQ1ZJSlNSSVMwZ2tKVWdsSkpGdEpDUWtKRzJSSkNWSUpTU1JiU1FrSkNSdEFBQUFBQUVBU3dBQ0FiVUIvZ0FnQUFBM05TTTFJelVqTlNNMU14VXpGVE1WTXpVek5UTTFNeFVqRlNNVkl4VWpGU1BjSlNRa0pFZ2tKVWdsSkVna0pDUWxTRjFhSlNRazJyVWxKQ1FsdGRva0pDVzFBQUFBQUFFQVN3QUNBYlVCL2dBb0FBQTNOVE0xTXpVek5UTTFNelV6TlRNMU16VWhOU0VWSXhVakZTTVZJeFVqRlNNVkl4VWpGU0VWSVVza0pDUWxKQ1FsSlA3ZUFXb2tKQ1FsSkNRbEpBRWkvcFpMU0NRbEpDUWxKQ1FrU1pFa0pTUWtKU1FrSkVrQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFZQUFBQUxnQUFBRVVBQUFCY0FBQUFhQUFBQUhJQUFBQ0hBQUFBa2dBQUFKMEFBQUN1QUFBQXpRQUFBTllBQUFEcUFBQUJBQUFBQVJZQUFBRW1BQUFCUWdBQUFWMEFBQUY0QUFBQmdRQUFBWkVBQUFHbkFBQUJ1UUFBQWRnQUFBSHRBQUFDQndBQUFoMEFBQUlwQUFBQ1J3QUFBbVFBQUFKNkFBQUNqd0FBQXFzQUFBSzdBQUFDMndBQUF2WUFBQU1OQUFBRElBQUFBeW9BQUFNMUFBQURSd0FBQTFFQUFBTm9BQUFEZFFBQUE2Z0FBQU92QUFBRHdnQUFBOThBQUFQbUFBQUQ5QUFBQS9zQUFBUVZBQUFFTWdBQUJESUFBQVJLQUFBRVlBQUFCSGNBQUFTT0FBQUVtZ0FBQktRQUFBUzVBQUFFeEFBQUJNOEFBQVRnQUFBRS93QUFCUWdBQUFVY0FBQUZNZ0FBQlVnQUFBVllBQUFGZEFBQUJZOEFBQVdxQUFBRnN3QUFCY01BQUFYWkFBQUY2d0FBQmdvQUFBWWZBQUFHT1FBQVFBQUFBRUFBQ080c1psZkR6ejFBQXNDQUFBQUFBRFFZV3cxQUFBQUFOQmcveFVBU3dBQUFiVUNBQUFBQUFnQUFnQUJBQUFBQUFJQUFBQUFBQUFBQWdBQUFBQkxBRXNBU3dCTEFFc0FTd0JMQUVzQWt3QkxBRXNBU3dCTEFFc0FTd0JVQUZRQVZBQkxBRXNBU3dCTEFFc0FTd0JMQUVzQVN3Q1RBRXNBU3dCTEFFc0FTd0JMQUVzQVN3QkxBS1VBM0FDM0FHOEEzQUJMQU1vQVN3RGNBS1VBYndCTEFMY0Frd0JMQUc4QUFBQkxBRXNBU3dCTEFFc0FTd0JMQUVzQWt3QkxBRXNBU3dCTEFFc0FTd0JVQUZRQVZBQkxBRXNBU3dCTEFFc0FTd0JMQUVzQUFRQUIvLzhBQWdBQUFBRUFBQUFBQUFFQUFBQU9BQUFBR0FBQUFBQUFBZ0FCQUFNQU53QUJBQVFBQUFBQ0FBQUFBQUFNQUpZQUFRQUFBQUFBQVFBSUFBQUFBUUFBQUFBQUFnQUhBQWdBQVFBQUFBQUFBd0FsQUE4QUFRQUFBQUFBQkFBSUFEUUFBUUFBQUFBQUJRQUxBRHdBQVFBQUFBQUFCZ0FJQUVjQUF3QUJCQWtBQVFBUUFFOEFBd0FCQkFrQUFnQU9BRjhBQXdBQkJBa0FBd0JLQUcwQUF3QUJCQWtBQkFBUUFMY0FBd0FCQkFrQUJRQVdBTWNBQXdBQkJBa0FCZ0FRQU4xbWNtVmxZMkZ0TWxKbFozVnNZWEpHYjI1MFJtOXlaMlVnTWk0d0lEb2dabkpsWldOaGJUSWdPaUF4TXkweE1DMHlNREUwWm5KbFpXTmhiVEpXWlhKemFXOXVJREV1TUdaeVpXVmpZVzB5QUdZQWNnQmxBR1VBWXdCaEFHMEFNZ0JTQUdVQVp3QjFBR3dBWVFCeUFFWUFid0J1QUhRQVJnQnZBSElBWndCbEFDQUFNZ0F1QURBQUlBQTZBQ0FBWmdCeUFHVUFaUUJqQUdFQWJRQXlBQ0FBT2dBZ0FERUFNd0F0QURFQU1BQXRBRElBTUFBeEFEUUFaZ0J5QUdVQVpRQmpBR0VBYlFBeUFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUJtQUhJQVpRQmxBR01BWVFCdEFESUFBQUFBQXdBQUFBTUFBQUFlQUFFQUFBQUFBSzRBQXdBQkFBQUJ0QUFBQUFRQWtBQUFBQklBRUFBREFBSUFJZ0FwQUR3QVFBQmFBRndBWHdCNi8vOEFBQUFnQUNjQUxBQStBRUVBWEFCZkFHSC8vd0FBQUFBQUFBQUEvL2dBQUFBQS82SUFBUUFTQUJZQUdnQTZBQUFBUEFBOEFBQUFBQUE0QUN3QUt3QXVBREVBS0FBcUFEVUFNQUF0QUIwQUhnQWZBQ0FBSVFBaUFDTUFKQUFsQUNZQUtRQTBBRElBTndBMkFDOEFKd0F6QUFBQkJnQUFBUUFBQUFBQUFBQUJBZ0FBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBNExDc0FBQUFBTGpFb0FBQXFOVEF0SFI0ZklDRWlJeVFsSmlrME1nQTNOaTg1T2pzOFBUNC9RRUZDUTBSRlJrZElTVXBMVEUxT1QxQlJVZ0FuQUFBekFBTUVCUVlIQ0FrS0N3d05EZzhRRVJJVEZCVVdGeGdaR2hzY0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFKQUFBQUFTQUJBQUF3QUNBQ0lBS1FBOEFFQUFXZ0JjQUY4QWV2Ly9BQUFBSUFBbkFDd0FQZ0JCQUZ3QVh3QmgvLzhBQUFBQUFBQUFBUC80QUFBQUFQK2lBQUVBRWdBV0FCb0FPZ0FBQUR3QVBBQUFBQUFBT0FBc0FDc0FMZ0F4QUNnQUtnQTFBREFBTFFBZEFCNEFId0FnQUNFQUlnQWpBQ1FBSlFBbUFDa0FOQUF5QURjQU5nQXZBQ2NBTXc9PSJ9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPSJBQUVBQUFBVEFRQUFCQUF3UkZOSlJ3QUFBQUVBQk5pMEFBQUFDRWRFUlVZQUVBTU9BQUFCUEFBQUFCWkhVRTlUanlLWFR3QUFBVlFBQUFCeVIxTlZRaU9jSko4QUFBSElBQUFBUUU5VEx6STdvNWZHQUFBQ0NBQUFBR0JUVmtjZ0FBb0FBQUFBQW1nQUFBQU1ZMjFoY0JjL2gvUUFBQUowQUFBSHltTjJkQ0FXUGdzdUFBVEpmQUFBQUd4bWNHZHRZaTcvZlFBRXllZ0FBQTRNWjJGemNBQUFBQkFBQk1sMEFBQUFDR2RzZVdiOUIyNTJBQUFLUUFBRWkvNW9aV0ZrSFdPdDVRQUVsa0FBQUFBMmFHaGxZUWQ2QmpRQUJKWjRBQUFBSkdodGRIaHhNcVI3QUFTV25BQUFERFpzYjJOaEJ0dkxWZ0FFb3RRQUFBdzhiV0Y0Y0FTR0R6RUFCSzhRQUFBQUlHNWhiV1U3NTJpUUFBU3ZNQUFBQXU1d2IzTjBmUTRWb0FBRXNpQUFBQmRSY0hKbGNGcXgzenNBQk5mMEFBQUF2UUFCQUFBQURBQUFBQUFBQUFBQ0FBRUFBQU1OQUFFQUFBQUJBQUFBQ2dCQ0FGQUFBMFJHVEZRQUZHTjVjbXdBSUd4aGRHNEFMQUFFQUFBQUFQLy9BQUVBQUFBRUFBQUFBUC8vQUFFQUFBQUVBQUFBQVAvL0FBRUFBQUFCYTJWeWJnQUlBQUFBQVFBQUFBRUFCQUFDQUFnQUFRQUlBQUVBRUFBQUFBQUFBUUFNQUFFQUFBQUJBQUVBQUFBQUFBRUFBQUFLQUR3QVBnQURSRVpNVkFBVVkzbHliQUFlYkdGMGJnQW9BQVFBQUFBQS8vOEFBQUFFQUFBQUFQLy9BQUFBQkFBQUFBRC8vd0FBQUFBQUFBQURBbkFCa0FBRkFBZ0NpZ0pZQUFBQVN3S0tBbGdBQUFGZUFESUJQZ29JQXdBSEFnTURBZ0lDQktBQUFnOEFCQUFBQUFBQUFBQUFBQUF3TnlBZ0FFQUFJS2VNQXdML0dnRElBOG9BNWdBQUFKY0FBQUFBQWhJQ3NnQUFBQ0FBQWdBQUFBQUFDZ0FBQUFBQUFBQUFBQU1BQUFBREFBQUFIQUFCQUFBQUFBYkVBQU1BQVFBQUFCd0FCQWFvQUFBQTZBQ0FBQVlBYUFBQUFCMEFmZ0YvQVlFQmhnR0tBWlFCbWdHZEFiY0J3d0hVQWVzQjd3SDFBZmtCL1FJYkFoOENKd0l2QWowQ1JBSlVBbGtDWEFKZ0FtTUNhQUp5QW9rQ2l3S1NBcFFDdlFMRkFzY0MzUVFQQkU4RVh3U1RCSmNFbXdTakJMTUV1d1RDQk5FRTJRVHBCTzBFOHg0RkhnMGVFUjRmSGlVZU54NDdIa1VlU1I1WEhsc2VZeDV0SG4wZWlSNlRIcHdlbmg2aEhxMGV1UjY5SHNjZXpSN1pIdVVlOVI3NUlDSWdKaUF3SURvZ1BDQStJRVFncENDdElMRWd0U0M0SUwwZ3Z5RUZJUk1oRnlFaUlTWWhMaUlDSWdZaUVpSVZJaG9pSUNKSUltRWlaU1loTVA5UmhxZU0vLzhBQUFBQUFCMEFJQUNnQVlFQmhnR0pBWTRCbHdHZEFiSUJ3QUhOQWVJQjdnSDBBZmdCL0FJWUFoNENKZ0l1QWowQ1JBSlRBbFlDV3dKZ0FtTUNhQUp5QW9rQ2l3S1NBcFFDdXdMQ0FzWUMyQVFBQkJBRVVBU1FCSllFbWdTZ0JLNEV1Z1RCQk5BRTFnVG9CT3dFOGg0Q0hnb2VFQjRlSGlRZU5oNDZIajRlU0I1V0hsb2VZQjVxSG53ZWdCNlNIcHNlbmg2Z0hxd2V0aDY4SHNZZXloN1lIdVFlOGg3NElCSWdKaUF3SURrZ1BDQStJRVFncENDc0lMRWd0Q0M0SUwwZ3Z5RUZJUk1oRmlFaUlTWWhMaUlDSWdZaUVpSVZJaGtpSGlKSUltQWlaQ1loTUtCUmhxZUwvLzhBQVAvai8rRUFBQUU1QU1BQUFBQUFBQUFCSVFBQUFUci9qUUFBQU9EL0kvOTgveG4vWVA5NC83RC9OUCtWLzRnQUFBQUEvMmtBWi85WC8xOEFUZjlFQURvQU93QlFBQUQrYndBQUFBQUFBUDVBQUFBQUFQNUkva0FBQVA0bS9pYitOZjR1QUFEOXp2NE0vaElBQUFBQTQ0VGpmdU5FNHpUalZnQUE0MHJqU3VNVUFBQUFBT01TNHY3aTRBQUE0d3pqRCtNUEFBRGl3T0wzQUFEaTZlTFJBQURpdndBQTROWGdkdUt3NHEvaXF1TEM0RlFBQU9KWkFBRGdRZUE2NEQzaDZlSGZBQURmUitITjRjTGc4dUR2M3ZQZzhnQUFBQURldk42VjNvL2NJZEZBc1M1YlJRQUJBQUFBQUFBQUFPSUFBQUFBQXB3Q25nS3FBQUFDcmdBQUFBQUN0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXJJQ3RBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBS29BQUFDcWdLc0FyWUFBQUxTQXZBQUFBQUFBdklBQUFBQUFBQUFBQUx3QUFBQUFBQUFBdkFDOWdBQUFBQUFBQUFBQUFBQzhnQUFBQUFBQUFMNkF3QUFBQUFBQUFBREFBQUFBQUFBQUFMOEFBQUFBQUwrQUFBQUFBTUFBQUFEQkFBQUFBQUFBQUFBQUFBQUFBQUFBeFlBQUFNV0FBQUFBQUFBQUFBQUFBTU9BQUFBQUFBQUFBQUFBQUFBQUFBREFnTUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRE5BS1FBWVFCaUFHUUFZd0NuQVRVQW1BQm5Ba0FCaWdFREFUWUFhQUNBQUtrQkFRSFpBZG9BbHdCbUFHVUFxd0NxQWRnQ1FRR0xBYzRCendIUUFLVUFnUUNEQU9jQXhRQ1pBTWtCQ0FESEFJVUFod0RwQUpzQWlRQ0xBT3NBblFFZkFPQUFqUUNQQU84QXd3Q2ZBS2dBeXdDUkFKTUE3UUNoQUpVQlFRRWhBSUlBaEFEb0FNWUFtZ0RLQVFrQXlBQ0dBSWdBNmdDY0FJb0FqQURzQUo0QklBRGhBSTRBa0FEd0FNUUFvQUNqQU13QWtnQ1VBTzRBb2dDV0FVSUE0d0JxQUdzQkl3RWtBTGdBdVFDd0FMRUE1QURsQU00QXp3QnNBRzBCSFFFZUFSc0JIQUJ1QUc4QkpRRW1BS3dBclFDNkFMc0EzZ0RmQVBFQThnRW5BU2dBMEFEUkFIQUFjUUU5QVQ0QnlnSExBUW9CQ3dCeUFITUJLUUVxQUw0QXZ3Rk5BVTRCMndIY0FUY0JPQUIwQUhVQjBRRTVBVG9BZGdCM0FUc0JQQUZZQVZrQXdRRENBTElBc3dCNEFIa0ExZ0RYQWQwQ1JBSkZBUTBCRGdFckFTd0JWQUZWQVFZQkJ3RFlBTmtBMmdEYkFOd0EzUUMwQUxVQS9RRCtBVThCVUFCNkFIc0JVUUZTQVQ4QlFBSElBY2tBMUFEVkFId0FmUUV0QVM0QTBnRFRBVllCVndDOEFMMEJFUUVTQVE4QkVBRGlBTFlBdHdDdUFLOEFmZ0IvQWtNQ1NnSzhBZDRDU0FIREFzSUN3d0xHQWJrQnhnTElBc2tCMHdMRUFzQUN3UUZEQVVRQ3pBRVRBUlFDMGdMVEFSa0JHZ0dJQVlrQ3lnTExBcnNDUndKTEFyMEIzd0pKQWRVQjFBSzFBT1lCQWdFaUFUQUJMd0RBQVF3QlV3S1NBcEFDbEFLV0FwZ0NtZ0tjQXA0Q29BS2lBcVFDcGdLb0Fxb0NyQUt1QXBNQ2tRS1ZBcGNDbVFLYkFwMENud0toQXFNQ3BRS25BcWtDcXdLdEFxOENzQUt4QXVJQzR3TUNBd01DM0FMZEF3QURBUUt5QXJNQm1BR1pBV1FCWlFHYUFac0JaZ0ZuQVl3QmpRR2VBWjhCYkFGdEFhWUJwd0dpQWFNQmNBRnhBYVFCcFFHekFiUUN1UUs0QWI4QndBR3JBYXdCcUFHcEFhMEJyZ0YyQVhjQnNRR3lBazhBL3dFQUF1VUM1d0xtQVVVQlJnRkhBVWdCU1FGS0FVc0JUQUxzQXUwQStnQmdBd2tEQ3dNSUFrd0M3d0x4QWswQ1RnTU1BdzBBQUFFR0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQ0F3UUZCZ2NJQ1FvTERBME9EeEFSRWhNVUZSWVhHQmthR3h3ZEhoOGdJU0lqSkNVbUp5Z3BLaXNzTFM0dk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVVpIU0VsS1MweE5UazlRVVZKVFZGVldWMWhaV2x0Y1hWNWZBSm5KeDRmZ242R0VndWlheHNySWlJYnFuSXlLN0o3aGtJN3dvTVNVa3U2aUFLbGhZZ0Q2WlFCb1oybVhtUFVBeXdBQTgvUmpaZ0FBQUFBQUFBQUFBTXlscEFBQUFBQUFBQUQ3ellIRnd3QUEvd0FBQUFBQW93RGo0Z0JrQUFBQUFBQUFBQUNtNSttRG00V0w2NTJKais4QWpaUHRrUURtQUlBQUFBQ3FBTUFBQUFBQUJRQUMvL2tCOWdLNkFDRUFKZ0ExQURvQVFnQTVRRFlYQVFJQVFrQStPREVzSndjREFnSk1BQUFBQWdNQUFtY0VBUU1CQVFOWEJBRURBd0ZmQUFFREFVODJOalk2TmpvVExUOEZCaGtyRnlJbkpqMEJOalUwSnlZOUFUWTNOak1oTWhjekZSWWRBUVlWRkJjVUJ3WWpJUk0yTnlNV0F6YzBNelkzSmk4QkppY1VGeFlWRnlZbkJnYzNKelEzQmdjV0Z6UUlDQ0VGQXdNQkNROFlBWXNhRHdFT0RnVVNEaFQraE1vdE4rUkRZUXdCTUN3NktBUUVBd0VEK3pFb0tUVFpBUUlqSXlBakJ3TU9JQUpvYUU1T1lXRXdFQTBURndFTkV3S0lpcUtWSGhJTkFiQmFWVVQraWc4QlFGUm1OUVlFQlNzcVkyUjJRRVZIUG5aclNFaENSamszQUFBQ0FFYi84UUM1QXNjQUpBQXdBQzFBS2dvQkFRQUJUQUFCQVFCaEFBQUFLRTBBQXdNQ1lRUUJBZ0ltQWs0bUpTd3FKVEFtTUJ3YUV3VUlGeXNUTmpjMk16SVhGaGNXRlJRSEJnOEJCZ2NHSFFFV0Z4WVhEZ0VqSWlZbk5DY21OVFEyRXlJbU5UUTJNeklXRlJRR1dRVVNEQXdHQnhVSkJnRURBZ0lEQVFJQkFnSUJBUndVRkJ3QkFnTUNLeFFkSFJRVUhSMENveFFLQmdJR0VRd05CZ1lMQ3c0WEZ5SWpGeWNtTlRVVkhCd1ZORFE0T0E1VS9aTWRGQlFjSEJRVUhRQUNBRXdCOHdGSEFzMEFEUUFiQUhGTHNCVlFXRUFOQXdFQkFRQmhBZ0VBQUNnQlRodExzQ1pRV0VBWEFBRUJBR0VDQVFBQUtFMEFBd01BWVFJQkFBQW9BMDRiUzdBeFVGaEFGUUFCQVFCaEFBQUFLRTBBQXdNQ1lRQUNBaVFEVGh0QUVnQUNBQU1DQTJVQUFRRUFZUUFBQUNnQlRsbFpXYllsSlNVaUJBZ2FLeE0wTmpNeUZoMEJGQVlqSWlZMU56UTJNeklXSFFFVUJpTWlKalZNSFJRVUhSMFVGQjJaSFJRVUhSMFVGQjBDbHhRY0hCUm9GQjBkRkcwVUhSMFVlQlFkSFJRQUFnQkQvLzhDRVFLeUFGZ0FhQUt3UzdBYlVGaEFDMFlnQWdRR0ZnRURBUUpNRzB1d0gxQllRQXRHSUFJRUJoWUJBd29DVEJ0THNDSlFXRUFPUmdFTUJpQUJCQXdXQVFNS0Ewd2JRQTVHQVFzR0lBRUVDeFlCQXdvRFRGbFpXVXV3Q2xCWVFEZ0FCUWNHQndVR2dBQUNBd0FEQWdDQUNBRUdEQXNDQkFrR0JHZ0FBUU1KQVZnUERRSUpDZ0VEQWdrRGFnQUhCeUpORGdFQUFDTUFUaHRMc0F4UVdFQTVBQVVIQmdjRkJvQUFBd0VDQVFNQ2dBQUNBQUVDQUg0SUFRWU1Dd0lFQ1FZRWFBOE5BZ2tLQVFFRENRRnFBQWNISWswT0FRQUFJd0JPRzB1d0RsQllRRGdBQlFjR0J3VUdnQUFDQXdBREFnQ0FDQUVHREFzQ0JBa0dCR2dBQVFNSkFWZ1BEUUlKQ2dFREFna0RhZ0FIQnlKTkRnRUFBQ01BVGh0THNCZFFXRUE1QUFVSEJnY0ZCb0FBQXdFQ0FRTUNnQUFDQUFFQ0FINElBUVlNQ3dJRUNRWUVhQThOQWdrS0FRRURDUUZxQUFjSElrME9BUUFBSXdCT0cwdXdHMUJZUUQ0QUJRY0dCd1VHZ0FBREFRSUJBd0tBQUFJQUFRSUFmZ2dCQmd3TEFnUU5CZ1JvRHdFTkNRRU5XUUFKQ2dFQkF3a0JhZ0FIQnlKTkRnRUFBQ01BVGh0THNCOVFXRUEvQUFVSEJnY0ZCb0FBQXdvQ0NnTUNnQUFDQUFvQ0FINElBUVlNQ3dJRURRWUVhQThCRFFBQkNnMEJad0FKQUFvRENRcHFBQWNISWswT0FRQUFJd0JPRzB1d0lsQllRRXNBQlFjSUJ3VUlnQUFJQmdjSUJuNEFEQVlFQkF4eUFBTUtBZ29EQW9BQUFnQUtBZ0IrQUFZTEFRUU5CZ1JxRHdFTkFBRUtEUUZuQUFrQUNnTUpDbW9BQndjaVRRNEJBQUFqQUU0YlFFd0FCUWNJQndVSWdBQUlCZ2NJQm40QUJBc05Dd1FOZ0FBRENnSUtBd0tBQUFJQUNnSUFmZ0FHREFFTEJBWUxhQThCRFFBQkNnMEJad0FKQUFvRENRcHFBQWNISWswT0FRQUFJd0JPV1ZsWldWbFpXVUFuV1ZrQkFGbG9XV1poWUY1ZFZGRk5TMFJDUFR3NE15NHNJaUVaRnhFUENBWUFXQUZZRUFnV0t3VWlKeVkxTkRjbUl5SUdJd1lIRGdFaklpY21OVFEzQmlNaUp5WTFORDhDQnlJbkpqVTBQd0UyTno0Qk16SVhGaFVVQnhjeUZqc0JOamMrQVRzQkZoVVVCek15SHdFVURnRVBBVE1lQVJVVUJpTWlKd1lIRGdFRE5EYzJOeU1pSnlNR0J3WUhGak1XQVZVWERnb1pGQTBIRkFnUERRUWRFQmNQQ2hZWENBME9GeVZDRnhFT0RoWWpOUW9JQkJ3UEdROEtEd0VVQXdJakN3WURIaEFHS2c0RUpBMEJEeWtQRmljVUhCd1VJeGNQQ3dRZEZBRUtDUmtGQlIwS0NRSUJCQVVpQVJNT0VSV05BUUpKU2hRV0ZBMFJEV3dJQ1F3ZElnMFZhd0lIQ2g0cEJ3Z3lNeFFXRkE0UUNsQUJBVVZGRkJVSUxCMVpJd3dOSHdjRGR3RWNGQlFkQVZGUkZSVUJOUUlDTXpNQkxTNEhCZ0VCQUFBREFFTC9xUUlrQXhjQVJnQmZBSElBeDB1d0VsQllRQllnQVFRRGNtaFZTRWM2RlFjQkJHQVVCQU1BQVFOTUcwQVdJQUVGQTNKb1ZVaEhPaFVIQVFSZ0ZBUURBQUVEVEZsTHNCSlFXRUFjQUFFRUFBUUJBSUFBQWdZQkFBSUFaUVVCQkFRRFlRQURBeUlFVGh0THNDWlFXRUFpQUFRRkFRVUVBWUFBQVFBRkFRQitBQUlHQVFBQ0FHVUFCUVVEWVFBREF5SUZUaHRBS0FBRUJRRUZCQUdBQUFFQUJRRUFmZ0FDQXdBQ1dRQURBQVVFQXdWbkFBSUNBR0VHQVFBQ0FGRlpXVUFUQVFBNU56TXlLaWtsSXd3S0FFWUJSZ2NJRmlzRklpWW5OU1luSmpVME5qTXlGeFlYRmg4QkZoY3ZBU1luSmpVME56WTNOamMxTkRZek1oWVZGQmNXRnhZWEZoVVVCd1lqSWljbUx3RWpGeFlYRmhVVUJ3WUhGaFVPQVFNMUJpTUhGU01QQVJVR0R3RUdGUlFlQVI4Q014UXpGaE0zTmo4Qk5qYzJOelUwSmljbUx3RW1Md0VCTHhRY0FXVkpEaDBVRXc4SkRBNFBDd3dmQVFwdEt4WUpHa0VxS0J3VUZCMEJSVUlUQ2djWkN3MEdCeHdZTGdzQmRqWWJIanB0QVFFY1NBUUNIQUVRQndjTEFRZ0NBd1FCRWdJQkczOEJHQllNRVFnTkF3RURCZ3NLRnhvVlZ4d1ZIUXRKRHhNVUhRNExDQXNJQlFRSTJ3SVNPaUFtR3hwUUxSMElSeFFkSFJRZEhBRVNCaEVMRFIwTkJ3SUhCQVBJSUVna0xqSXJWQmtKR3hVY0FlK2hBaEVCRHdnQkNSY0NGQTRJQkFZREFRc0JDLzdIQVFnUENRNExFaEFFQXd3R0RBc0pFUXNJQUFBQUJRQW4vK1VDMUFLNEFCWUFSZ0JZQUhrQWxRQzJTN0F0VUZoQURqczZNaUlFQWdGemFnSUZCQUpNRzBBT096b3lJZ1FDQjNOcUFnVUVBa3haUzdBdFVGaEFLd0FFQUFVQUJBV0FDUUVDQ0FFQUJBSUFhZ2NCQVFFaVRRd0JCZ1lqVFFzQkJRVURZZ29CQXdNc0EwNGJRQzhBQkFBRkFBUUZnQWtCQWdnQkFBUUNBR29BQVFFaVRRQUhCeUpOREFFR0JpTk5Dd0VGQlFOaUNnRURBeXdEVGxsQUozdDZXVmxJUnhjWEFRQ0tpSHFWZTVWWmVWbDVVVTlIV0VoWUYwWVhSZ3dLQUJZQkZnMElGaXNUSWljbUp5WTFORDhCTmpNeUZ4WVhGaFVVQndZSEJpYzJNamMyUHdFK0FUOENOQ2MwTHdFdUFTY21KeVl2QVNZbkl3Y09CQThCRlJRWEZCY2VBUjhCRmpJWEFTSW5KalUwUHdFMk16SVhIZ0VWRkFjR0p6WTNOamN6UGdFMU5DNEJKelVtTHdJakRnRVBBU01HQnhVV0h3RWVBUmNGSWlZMU5EYzJOelEzTmpjMk56WXpNaGNXRlJRUEFRWUhCZ2NHeUJZWU9TQWFQd1lrSlJjWU95SVpCQkk1SUI4Q0FnRUdCQUVHQ1FFSkJBVUJDQVVHQXdJQkJRa0VCZ1VPRFFZRUJRUURBUU1GRHcwQkN3Y0JCQUlCZWtrd0xpc0NMRFlTRXo1TU1TMDBFUTBJQkFFREF3RU1EQWtMRWdzSENBOEhCd0VFQVFFR0FRb2NFLzV1RkIwT05DY0NWWDh5TlJBYkRBd1lCejFaVVZSc0R3RjRDUmcxS3pKT0tBUVRCeFEwS1N3UkVVRWxGR0lCQVFJRUFRUUtBZzRVQ2dzQ0FRNEVCd0lCQWdRREFnRUNCQU1DQlFRRUFnc1FDQW9JRlEwREJnTUJBZjRMUFRsRFFERURMQVVWYXo1QkxDbGdCQXdIQmdVS0JnWU9JUThCQ3drS0F3SUtDZ3dLRVFvTEVBRVZHd1ZJSFJRVER6UTBBUUZ2MEZKUUdBY09IUXdMWDVSNGczRU9BQU1BU2YvNkFuMEMwUUEwQUZRQWZBQlVRRkZQVGpzREF3UnNZVjhzSGh3TUJ3VURBZ0VBQlFOTUFBUUVBbUVBQWdJa1RRQURBd0JoQVFZQ0FBQWpUUWNCQlFVQVlRRUdBZ0FBSXdCT1ZWVUJBRlY4Vlh0SlJpTWhGUk1GQXdBMEFUUUlDQllyQlNJbkJpTWlKeVkxTkRjMk55WW5KalUwTnpZekZoY1dGUlFIQmdjV0Z6WTNOak15RnhZVkZBY0dCd1lISHdJV0ZSUUhCZ0UyTnpZM05qYzBKeVluSWpVak5TNEJKeUluSWc4RUZSY1VGeFVYRXo0QlB3RTJOekkxTmpjbUp3Y0dEd0VHQnhRakZRWVZCaFVXTXhVV0Z6SVZGeFlYTWg0Qk13Sk1IR1ZiWUVFNlRBc29SUmNUSmtZbEsySWpDQWdXT1Q1SEZrVVBIQXdNR0FjU0VpQWtKeUVVR0FjUC9wc1hDUVlIQWdFQ0F3Z0JBUU1IQmdNQ0Znb0xDQVFGQVFzSk5BUU1CZzRnQ1FFUERFSkVBUWNDREI0VkFRa0JBZ0VDQ1FRVkVSSUNCUVVSQmx0Ykh5aFVIUjFmVFNJalF6aFlLUlVFWEJrYUdocE5SRTFHSW5jWUJ4QWJEQXdlSURnMkloc09FUm9NREJrQjBTRVhEUm9KREE4QkRnZ0JBUUlDQXdFRkJnZ0lFQkFCQ2hzQ0V2NWlBZ0VDQlJBSkFRd05RVklDQndRUEtDd0JBUllMQWdzSEFRVUpBd3NHQkFFQkFBQUFBUUFvQWZBQWtRTEtBQklBSUVBZENBRUFBUUZNQWdFQUFBRmhBQUVCS0FCT0FRQU5Dd0FTQVJJRENCWXJFeUltTlRjMEx3STBOell6TWhjV0ZSUUdZQlFkQVFRREFRY0xIZ3dQSGgwQjhCd1VJQjBjRXd3TkR4WUlFSWNmSEFBQUFRQlQvNmtCU2dNVUFCNEFIMEFjQUFFQUFBRlpBQUVCQUdFQ0FRQUJBRkVCQUEwTEFCNEJIZ01JRmlzRklpY21KeVkxTkRjMk56WXpNaFlWRkFjT0FSVVVGaGNXRnhZVkZBY0dBUnNORFNvZlpTOGNQdzhVRkJ3YlFSODZCU0FlR0FZT1Z3WVVJM3JZbVk5ZFNRNGNIZzBiWnRKQmVJY0VKZzBMSGc0TUZ3QUJBQW4vckFEckF4UUFLQUFmUUJ3QUFRQUFBVmtBQVFFQVlRSUJBQUVBVVFFQUhod0FLQUVvQXdnV0t4Y2lKaWMwUHdFMk56WTFOQ2NtTlNZbkxnRTFMZ0VqSnlZMU5EYzJNeklYRmhjV0ZSUUhCZ2NHVmhRY0FRNFZDQXd0QmdJT0Z4QVFBd3dCQ3hnSERoME1EQzBjVHlFY05nOVVIQlFXRFJVTEduR3BRRFlHQ1ZGQUlSVURBZzBJRUJzTURCZ0hIUytNNW94Mlp5d05BQUFCQUZzQlNnSGhBdHNBUHdCdVM3QWlVRmhBQ2pzdEl4UUtCUUFCQVV3YlFBbzdMU01VQ2dVRUFRRk1XVXV3SWxCWVFCVURBUUVDQUFJQkFJQUVCUUlBQUlRQUFnSWtBazRiUUJzREFRRUNCQUlCQklBQUJBQUNCQUIrQlFFQUFJUUFBZ0lrQWs1WlFCRUJBRFV6SnlVZ0hoTVJBRDhCUHdZSUZpc1RJaVkxTkRjME16YzJOeVluSmpVME56WXpNaGMxTkM4QkxnRTFORGMyTXpJWEZoVTNOak15RnhZVkZBOEJGaGNXRlJRR0l5SW5KaWMwSmljakJnY0d1eFllRHdFTUdnd0lRaVFaQ2d3TFlBTUJBUUlIQ3g0TUR4NEtSd2tNRGhZa1VpSWZEaDBVRkJFb0VnMElBUnNlRFFGS0hSUVZEUUVRSkJRRUdBMGdIZzhISmhBbEZ3VUlEUVlORHhZSUVJTURIQWtPR3lBUEh4d2ZEeE1VSFJFbURnRUpCaWdtRGdBQUFRQTBBQ0VDSlFJOUFDa0FQRUE1RGdFQkFpWUVBZ0FCQWt3QUF3SUFBMWtFQVFJRkFRRUFBZ0ZwQUFNREFHRUdBUUFEQUZFQkFDUWhIUm9WRXcwTEJ3VUFLUUVwQndnV0t5VWlKeVluSmlNaUpqVTBOamNXRnpjMk5UNEJNeklXRnhRUEFUSTNNaFlWRkFZSEJpTVdGeFVVQmdFd0ZRd1dCQjV5RlJ3Y0ZZUU1BUUVCSEJRVUhBRUJBVkpMRkIwZEZFdFNBZ2dlSVE0WXlRTWRGQlFjQVFJQk9TYzZGUndjRlRvbk9nUWVFeFViQVFSaVd3TVRHd0FBQUFBQi8vai9mQUNWQUhBQUhBQ0N0UmtCQUFFQlRFdXdEMUJZUUJFREFRQUJBSVlBQWdJQllRQUJBU01CVGh0THNCQlFXRUFXQXdFQUFRQ0dBQUlCQVFKWkFBSUNBV0VBQVFJQlVSdExzQlZRV0VBUkF3RUFBUUNHQUFJQ0FXRUFBUUVqQVU0YlFCWURBUUFCQUlZQUFnRUJBbGtBQWdJQllRQUJBZ0ZSV1ZsWlFBMEJBQlVVRUE4QUhBRWNCQWdXS3hjaUp5WTFORDhCTWpZMU5qVTBKeUl1QVRVME5qTVdGeFlWQmdjR0tCb1BCeGdPQWhFRUJ3RVFIQnNXTWlBUkNVb05oQmdMRFJ3T0NSSUhDUVVJQVFFWkZoSWZCU2daS0ZZcUJnQUFBUUJaQVE0Qi9nRndBQTBBSDBBY0FBRUFBQUZYQUFFQkFGOENBUUFCQUU4QkFBZ0ZBQTBCREFNSUZpc1RJaVkxTkRZeklUSVdGUlFHSTRrVUhCd1VBVVVVSEJ3VUFRNGRGQlFkSFJRVUhRQUJBRDBBQUFDZkFHSUFDd0FhUUJjQUFRRUFZUUlCQUFBakFFNEJBQWNGQUFzQkN3TUlGaXN6SWlZMU5EWXpNaFlWRkFadUZCMGRGQlFkSFIwVUZCMGRGQlFkQUFILytQL1FBVDRDNEFBa0FCUkFFUUFBQVFDR0FBRUJKQUZPSEJvbUFnZ1hLd0VIQmdjR0J3WWpJaWNtTlRRM05qUXpOd2MzTmpjMk56WTNOak15RnhZVkZBY1VCd1lCS2dJalBTNUhEUjBOREJnR0FRRUdBd01rUUFFQ0xVb01IdzBMRndZQkJ3SjNCazdhdGF3WUJnNGJEZ3dCQWc0RkIwbnRCZ1d6cUJnSERoc05EQUlCRGdBREFDai83Z0l5QXIwQUZRQVlBR2NBTlVBeVZTTWlBd01DQVV3QUFnSUJZUUFCQVNKTkJRRURBd0JoQkFFQUFDWUFUaGtaQVFBWlp4bG1RRDhOQ3dBVkFSVUdDQllyQlNZbkppY21OVFEzTmpjMk16SVhGaGNXRlJRSEJqOEJJZ2MrQVQ4Qk5qOEJOalUzTmpVMEp5WTFKaWNtTHdFbUp5WW5OQ00xSmk4QkppOENJaVlqQndZakJnY2pGQThCSWdjR0R3RUdCeFFIQmc4Q0ZSUWZBUllmQWhZZkFSWXpGaDhCSGdFQkxrVTJTU2taRXlobU5EaFFPRVFjRlhOQ0xRRUJiUUVkRFFjakdBc1lBZ0VHQVFJS0J3c0JCQVlIQ3dFT0NnRVFCUWdOQWdRTEZBUUVEdzhDRGdvRUF3MExBaEFMQlJBR0FRTUNBUVlFRGdRUkd3b1lBd2tLQVE4VUVnTXNQWG8yVjBKQ2pETVpORDkwVzJHOVF5dVZBVFlCQlFZRER4Z1BNeHNSRVJzeU1nSUVFaWdiR3dJS0NnOFBBUUVRQ0FFTEFnSUVBZ0VDQXdVQkJ3Y0ZDZzBFRlJjRkJqQWxCU1lORXhNT0lBa2xDaWdsREJnR0JRRUdBUUFBQUFBQkFIei84QUczQXNNQU1RQXpRREFuQ2dJQkFpd3JDQVlEQlFBQkFrd0FBUUlBQWdFQWdBQUNBaWhOQXdFQUFDWUFUZ0VBSkNNVUVnQXhBVEVFQ0JZckJTSW1Md0UwTnpZMU5qVUhCZ2NHQnc0Q0l5SW5KalUwTnpZM1BnSTNOamMyTnpJWEZoY1dGUlFQQVFZVkZ4UUdBWGNVR3dJQkNRRUdJUmdZQXdRR0doNFdFUThORFRRNEJRc0lBeVlvREJFU0RSWUNCUVlEQndFZUVCMFVSRExHQlFaZlh4b1JFd01DQmhVYURROFhFZzB0S1FNSkJnTWRMUXdDQnc4YlIwZE9UalpoWWs0VUhRQUFBQUFCQURmLzhRSWJBcnNBVGdCT1FFc2REd0lDQVQwQkJnUUNUQUFDQVFRQkFnU0FBQVFHQVFRR2ZnY0JCZ0FCQmdCK0FBRUJBMkVBQXdNaVRRVUlBZ0FBSmdCT0FRQk1TMHBKUVVBNE55NHNKaVFZRmdCT0FVNEpDQllyRnlJbkpqVTBOelkvQVRVM05qYzJOU01uSWpVbUp5WW5Ed0VHQndZSEZCY1dGUlFIQmlNaUp5WTFORGMyTXpJWEZoVVVCd1lIQmdjV0Z4WVhGaFVVQndZakp5WW5MZ0VpSnlZakJ5SUhCbVlNRGhWRFMxQXdBMFVWRHdFRkFRd1VGVHdWS1JVSkVnc0dEQmdNREJ3UEdCWkdnRms5UVFjZ1F6eEphMmtUQ2djQ0N5VU1WU0lCQndVRE56Y1pGQmdwRHdnT0d5c1dNMTA1QVFOZk5TWWJGQUVjRGhRQ0FRc0tCd2toQ2hnVUR4b1BCeGdxTUNja1lEVTVVaGdZWjFWVFNRY2JCUklMRFFZSEl3RVVBd0VCQVFZQ0NCZ0FBZ0ExLyswQ0pBTENBSG9BZmdCWVFGVmpSd0lHQlhRQkF3UjJIZ0lCQXdOTUFBWUZCQVVHQklBQUFRTUNBd0VDZ0FBRUFBTUJCQU5wQUFVRkIyRUFCd2NvVFFBQ0FnQmhDQUVBQUN3QVRnRUFiMjFvWmxkVk56WXlNQkVRQ1FjQWVnRjZDUWdXS3dVaUp5WTFORGMyTXpJV0h3RVdGeklYUHdFMlB3RTJQd0UwTmpVMlB3RTBKalV1QVRVbkppOERMZ0lqSmk4QklpWTFORFl6UGdFM05qYzJQd0UyTnpZOUFUSTBOelFuTkNNbUp6VWpMZ0V2QVNZdkFnY0dEd0VHQnhRakRnRVBBUlVVQmlNaUpqVTBOell6TWhjV0Z3WUhGaDhCRkFjR0F5Y21Jd0V6YVgwWUJnOGJEUnNQRENCTEJ4QWhGUXdLQWc4TkVnY0pCQWdCQlFJQkJnZ0JHUTBRQkFRQ0RSb2JIaHdlSXdZUENBUURFQVVDRHdNTUFRUUhBZ1VHQVFNSEF4TVJFQU1nRFJRS0Fna0lBUVVJQXdNZUVoUWRTemM4VkQ0N0F3RTdYeEVCS1VRaUFRRUJFMEVOSGd3TUZ3MEhCUkFQQWdFRUFnVUJCZ29TQVFnQ0RBc2JGZ1VDRkFJQ0FnMEtBaGtKQ1FFREJRWUJIUlFVSFFJREJBRUNDQVVCRHdRUUJRRUJFUjBPQkFvSkFRUUZBd29HQXdFQkFRUUVBUVFGQVFVSkJnMGNFaHNmSDFZdkhUSTJVVkkyT1hFUFF6aGdBVE1CQVFBQUFBSUFILy8wQWo0QzBBQWxBRE1BZWt1d0ZWQllRQXNyQVFNQ0loa0NBUU1DVEJ0QURpc0JBd0laQVFRRElnRUJCQU5NV1V1d0ZWQllRQllHQkFJREFBRUFBd0ZuQUFJQ0pFMEZBUUFBSXdCT0cwQWRBQU1DQkFJREJJQUdBUVFBQVFBRUFXY0FBZ0lrVFFVQkFBQWpBRTVaUUJVbkpnRUFKak1uTWhzYUZCSUtCUUFsQVNVSENCWXJCU0ltTlRRM0l5SXZBU1luSmpVME54STNOak15RnhZUkZBYzNNaGNXRlJRSEJnOEJGQVlETnpZMU5DY0dCeUlHQndZSEZnR3hGQjBDSkVkR2dSME5Cd2F0dWhBU0RBMGxCU1VORHhZa0d4c0RISlJVQlFNb0p3RUVBVUZMVHd3Y0ZUczdBd01CRnd3TkRBd0JJN1VPQmhqKzdVNU5CUWNMSGlZSkJRTjlGUndCQ0FGWVdFSkNMRFFHQWxGM0JBQUJBRUgvOUFJaUFyMEFld0JsUUdKd1NnSUVEQ2tCQVFZRkFRSUJBMHdBQmdRQkJBWUJnQUFCQWdRQkFuNEFEQVVCQkFZTUJHa0xDZ0lKQ1FkaENBRUhCeUpOQXdFQ0FnQmhEUUVBQUNNQVRnRUFkSEprWTJKZlhseFlWbFZRUTBFN09qazJIQm9aR0FvSUFIc0JldzRJRmlzRklpY21Md0UwTnpZek1oOEJNeFVlQVI4QkZoOEJGaGNXTXhZek56WS9BalkzTmo4Qk5qVW1QUUVtSnlZdkFpWW5JelVuSmlNMUp3WWpCZzhCQmdjR0l5SW5KajBCTkRZM05UWTNOamMyTXhjek5qSTJNeklYRmhVVUl5SW5KaU1pQnlJSEZRWUhCZ2NHRkE4QkJoMEJOak15RnhZVkZBWUhCZ0VzYTBncURRRUhEQjBtQ1FRQkJRVU9BZ3dPQWdVR0dRd1JFU01iRmhBUkNBUUpBZ1FDQVFNSEJnVU5BZ2NJQVFRUUNpRU9EamMxQmhZU0RBMFREdzRFQVFnTURCOGpYNklaQmdzTkJnME9GbUE1SngwZU9Ra0tDUVFDQ1FRQkFRSUdWRTlPUGoxQk1FRU1QQ0kzREEwUEZpUVFBUWdKREFFSkJnRUNBUWtDQWdVSUNBd0dCZ3dORnh3Z0Jnb0JFaElOQmcwQkJRUUJBUVlCQVFJSkZRTUpDd1lORUJRRUJoMFBBV0JHVENNaUJRRUZDUTBiTndNQ0F3Z0JDZ3NoSWdFRkFoY3FFQUVnTkRwcVpsa1ZIQUFDQURqLzh3SW9Bc0lBTlFCK0FIQkFDMTBCQVFJbURRSUFBUUpNUzdBS1VGaEFJUUFGQkFJRUJRS0FBQUlBQVFBQ0FXb0FCQVFvVFFZQkFBQURZUUFEQXlNRFRodEFJUUFGQkFJRUJRS0FBQUlBQVFBQ0FXb0FCQVFvVFFZQkFBQURZUUFEQXlZRFRsbEFFd0VBZm54MGNtcG9ZbUFlR3dBMUFUUUhDQllySlQ4Qk5qY3pOelkvQVRVeVB3RXZBVFFuTGdFdkFTWXZBU1l2QVNNSElnY2lEd0lHRHdFZkFSVVdId0VXRng0Qkh3RVdId0VUSnlZbkxnRXZBU0kxSmljbUx3RWpKaWNtSXc4QkZDc0JCZ2NVSXc4QkZDTVZCZzhCQmhVWE5qYzJNeklYRmhVVUJ3WWpJaWNtTlRRM05qYzJNeklYRmhjV0ZSUUhCaU1pQVZjWkNCSU9BaFFLQWdZQ0JBRUJBUTBCQVFFRkN3UUxBeElYSXdFU0pRSUdBZ1F0SGdnTEFSQVVCZ3NQQkFzSkF3NE9Bb0lEQXdVQkJnUVRBUVFERXhNQ0FROFVDZ2NTR3dFQkdoa0JCUklCQ2dVRkF3RVlHMGREZFRZbUd6bUFpRVpPQ0JCQ1ExaEZRME1mQXdvT0dpTlZBUUlDQnd3S0F3b0JFd3NaQVE4bEFRUUNEQlFGQ2dNTEJnRVBBd0VCRmhjSElnSUJJQjhIRFEwQ0NBUUJCUUlCQWE4R0J3WURCZ1VTQVFJRERRZ0JDQU1EQWdnQkN4NEJDQ0lCQVJrYkdRd3NJQkFNSldOSVRUTXJWRzk3blRFd1lFZEFMaWxMQndnTERoWUFBQUVBTHYveEFnZ0N5Z0FxQUdKTHNCSlFXTFVNQVFBQkFVd2J0UXdCQUFJQlRGbExzQkpRV0VBVEFnRUJBUU5oQkFFREF5Sk5CUUVBQUNZQVRodEFHd0FCQVFSaEFBUUVLRTBBQWdJRFlRQURBeUpOQlFFQUFDWUFUbGxBRVFFQUh4MGJHUlVURVE4QUtnRXFCZ2dXS3hjaUp5WTFORGMyTnpZM05qVWlKeVlqSWdjR0J5NEJOVFEyTnpZM05qTXlGaGNXRlJRSEJnY0dCd2EwRFFzWUJuOXVKd0VIQVFFWE1UdEdQajRVSFIwVU9EcFBIakJjSVIwRERTT1JaZzRQQnc4YURRM3p2RDhMRWhNQ0RRY0dBUUVjRkJRY0FRRUZDQTBmSWlvTURUczArOFlZQUFZQVF2L3hBaUlDdXdBa0FDY0FLZ0JmQUdJQWlRQTJRRE9CZVhCdlZGTTNHZ2dKQXdJQlRBQUNBZ0ZoQUFFQklrMEFBd01BWVFRQkFBQW1BRTRCQUdaalIwUVRFUUFrQVNRRkNCWXJCU0luSmpVMk56WTNKaWNtTlRRM05qYzJNeklYRmhVVUJ3WUhGeFlYRmhVVUJ3WUhCZ00zTlFjM0J4YzJQd0UyTno0Qk56WS9BalFuTGdJbkl6VXVBaU11QVNNaUJ3WWpCaU1QQWdZSEJnY1ZGaDhCRmg4QkZoOENGZ01tSXhjeU56WS9BVFkvQVRZM05qOEJKaThCTGdFbk5TWW5CZ2NHQndZSEJnY2ZBUjRCRnhZZkFRRXhpVUlrQXhralNTZ2NQd2tkVFM0MldUNUFDUnM5Q0dZYUJnZ1VMMExrQXd3QkFZUVNFQW9SRFFFREFRb0lBd1FFQWdZRUF3RVBCUVFDSFIwUUh3MEZDQUVDRXc0Q0J3a0NBZ0lDQXdnTUF4b2VCd1FSZHdFQmlCTVNKU0lCQ2dvQkNnWUNBUUVEQkFFS0hSTWlKeEFPTENRVkNBUUNBUU1ERHd3V0dnWVBPU1F6TUNrNVFSUWRSMGdiSEVzWkRDa3RUaHdjU1RBRlFWNFZGaGdaTXgwbEFrWUVBU0lFQW9jSkRBZ1BEd0lEQVE0UkNnOFZDUVFJQlFNQkNRSUNDUUlEQVFFRkNRRUhEd1FNRXd3RUJoTVJCQndMQkFFSS91RURMQUVDREFFRUJ3RUlEQVFHRXcwTEFSWWlEd0VZRVFvS0l5c2JGUWdMRFFRRUNnUUhCQUVBQUFJQU4vL3BBaVFDdndCSUFJTUFVRUJOTWdzQ0FnQllBUVFDY3dFREJ3Tk1BQWNFQXdRSEE0QUlBUUlBQkFjQ0JHa0JBUUFBQldFQUJRVW9UUUFEQXdaaEFBWUdMQVpPQUFCNGRtOXRaV05iV1V4S0FFZ0FSeDhlSEJzSkNCWXJBVFl5TlRZL0FUWS9BVFkzSmk4QkppYzFJeVl2QWlZdkFTTW1JelFqRHdFaUJ3WUhJd1lQQVFZSERnRVBBUlFPQVE4QkZCY1VId0VXRnhVekZoY1VGaGNXTXhZZkFSWXpBeFl6TnpZM05qOENOalUyUHdJR0l5SW5KalUwTnpZM05qTXlGeFlYRmhVVUJ3WWpJaWNtTHdFME56WXpNaGNXRnhRZkFSNEJId0lCUmdJSEdCWUZDUmtGREFzQkF3RUdEUUVIQXdFSUJoUUNBUnNNR0JvQkJ3Y1lDd0VZRFFFU0JBSUNBUW9DQVFRQkFnVUJCUVlCQmdzRUFTQUNFQnNFQ1JBZ0RRMGRIUThMQ2dRTEVBNEhBd1ZEVEhwSk54VWNNMFZYZDBBYUNSTVFKc1J1U1M0TkFRY0xIaVlKQVFNSUFnZ1JDUkl0QVdvQkFRTUpBZ01RQkFrT0hSQUVKaVlCRGdRQ0J3WUpBZ29DQVFFQ0JnVU1DZ0VQQndFRUFSRUNBd1lUQXhzRUJnOENDZ2tCQ0FrQkFnSVNDQVFCQWY3aUFnSUdCZ1VHQXdzV0J5UXVGRGdrU3p0VEx5dzFJUzFRSmkxVVlGaFgwRHNsT2d3T0RoWWtCd2NFREFNSkRRWUlEQUFBQUFBQ0FEc0FDd0NnQWdnQUN3QVhBSEJMc0JkUVdFQVhCQUVBQUFGaEFBRUJKVTBBQXdNQ1lRVUJBZ0lqQWs0YlM3QVpVRmhBRlFBQkJBRUFBd0VBYVFBREF3SmhCUUVDQWlNQ1RodEFHZ0FCQkFFQUF3RUFhUUFEQWdJRFdRQURBd0poQlFFQ0F3SlJXVmxBRXcwTUFRQVRFUXdYRFJjSEJRQUxBUXNHQ0JZckV5SW1OVFEyTXpJV0ZSUUdBeUltTlRRMk16SVdGUlFHY0JRZEhSUVVIQndZRkIwZEZCUWRIUUdtSFJRVUhSMFVGQjMrWlIwVUZCd2NGQlFkQUFJQU52L1BBS0lDQndBTEFCa0FTVXV3RjFCWVFCTUFBZ0FEQWdObEJBRUFBQUZoQUFFQkpRQk9HMEFaQUFFRUFRQUNBUUJwQUFJREF3SlpBQUlDQTJFQUF3SURVVmxBRHdFQUZ4VVFEZ2NGQUFzQkN3VUlGaXNUSWlZMU5EWXpNaFlWRkFZRE5EWXpNaFlkQVJRR0l5SW1OWEVVSFIwVUZCMGRUeDBVRkIwZEZCUWRBYVVkRkJRZEhSUVVIZjZYRkIwZEZEd1VIUjBVQUFBQUFBRUFaQUFmQWhzQjlBQXFBQ1pBSXlFSUFnQUJBVXdBQVFBQUFWa0FBUUVBWVFJQkFBRUFVUUVBRkJJQUtnRXFBd2dXS3lVaUp5WW5KaWNtTlRRMk56WTNOamMyTnpZek1oY1dGUlFHQndZUEFnWVBBUllYRmhjV0ZSUUhCZ0hwREF3OVFHMHBXZ01WTUM4akpGVmtCd1lOREJnUUZDVWdCQWc2WFNZZVJZd3RHQWNQSHdjaEd6RWFOU3NER1EwZElSa1hPaFFDQnc4YURDQUVCUTRCQkJ0QUd4UWhQeGdPSEEwTEdRQUNBRmNBcWdIOUFkSUFEUUFiQURCQUxRQUJCQUVBQXdFQVp3QURBZ0lEVndBREF3SmZCUUVDQXdKUEVBNENBQmNVRGhzUUd3a0dBQTBDRFFZSUZpc0JJU0ltTlRRMk15RXlGaFVVQmdjaElpWTFORFl6SVRJV0ZSUUdBY3orMVJRY0hCUUJLeFFkSFNiK3poUWRIUlFCTWhRZEhRRndIUlFVSFIwVUZCM0dIUlFVSFIwVUZCMEFBUUE0QUI4Qjd3SDBBQ29BSlVBaUNnRUFBUUZNQUFFQUFBRlpBQUVCQUdFQ0FRQUJBRkVCQUJnWEFDb0JLZ01JRmlzM0lpY21OVFEzTmpjMk55Y21Md0ltSnk0Qk5UUTNOak15RnhZWEZoY1dGeDRCRlJRSEJnY0dCd1pwR3hBR0Z5Mk1SUjRtWFRvSUJDQWxGQThYREEwSEJtUlZKQ012TUJVRVdpcHRRRDBNSHhrTERSd09HRDhoRkJ0QUd3UUJEZ1VFSUF3YUR3Y0NGRG9YR1NFZERSa0RLelVhTVJzaEJ3QUFBQUlBSXdBTEFlWUN3d0FMQUdjQWUwQUxOeDRDQkFOaEFRSUVBa3hMc0JsUVdFQW1BQVFEQWdNRUFvQUhBUUlCQXdJQmZnQURBd1ZoQUFVRktFMEFBUUVBWVFZQkFBQWpBRTRiUUNNQUJBTUNBd1FDZ0FjQkFnRURBZ0YrQUFFR0FRQUJBR1VBQXdNRllRQUZCU2dEVGxsQUZ3ME1BUUJOUzBOQkxTd01adzFuQndVQUN3RUxDQWdXS3pjaUpqVTBOak15RmhVVUJpY2lMZ0UxTkRjK0FUYzBNelkzTXpRL0FUVXZBU1l2QVNZbkxnTWpKaWNqQmlNR0J4VWpCZ2NHQng4Q0ZoY1dGUlFIQmlNaUp5WW5KalUwTnpZM01oWVhGaFVVQndZSERnRVZCZ2NqRlJRSEJoMEJIZ0VWRkFjRyt4UWRIUlFVSFIwU0RSd0xKaDVMSHdFR0F3RUNBUVlPQkFFSENnd0hGUVlFQVJBUEpRRUZHQXNCSEJFR0F3RUNBZ2NKR0FjT0d3ME1HQkliRjBkeVJuSWlHVzhxRlFFQ0JRTUJBUUVCQXdrTUN4d1VGQjBkRkJRY2t4RW5GRFFzSVRZa0FRZ0pCQVVFQ2hRWkJBSUpEQW9JRFFFQ0J3SUJCUVVCRFJNSENBSURBUVVFREI4TkN4Y0dDaFFjSnlRZ1dBTkpQQ2d0V0U4aEZ3SUNBUVlIQVFJREFnTUlCUW9IREE0WEFBQUNBRUgvaHdNVkFwMEFHQUNRQVFGTHNCQlFXRUFTWDExSEF3RUdUeEFHQXdBQk5BRUVBQU5NRzBBVlh3RUhCbDFIQWdFSFR4QUdBd0FCTkFFRUFBUk1XVXV3RUZCWVFDd0FBd0FJQmdNSWFRY0JCZ0FCQUFZQmFRb0JBQVVCQkFrQUJHa0FDUUlDQ1ZrQUNRa0NZZ3NCQWdrQ1VodExzQzFRV0VBekFBY0dBUVlIQVlBQUF3QUlCZ01JYVFBR0FBRUFCZ0ZwQ2dFQUJRRUVDUUFFYVFBSkFnSUpXUUFKQ1FKaUN3RUNDUUpTRzBBNkFBY0dBUVlIQVlBQUJBQUZBQVFGZ0FBREFBZ0dBd2hwQUFZQUFRQUdBV2tLQVFBQUJRa0FCV2tBQ1FJQ0NWa0FDUWtDWWdzQkFna0NVbGxaUUI4YUdRRUFpNGhxYUVsSVJrUTNOVE14S0NVWmtCcVBEQXNBR0FFWURBZ1dLeVUyTnpRek5qYzBMZ0VuSmlNR0J3WUhIZ0VYRmhjV0Z4WVRJaWNtSnlZMU5EWTNOamMyTXhjV0Z4WWRBUVlIQmdjR0l5SW5CaU1pSnlZbkpqVTBOelkzTmpJM05qTXlGell6TWhjV0ZRWVZGaGN5RlJjV016YzJOekkzTmpjMEp6UW5KaWNtSnlJbkppTWlCd1lpQnlJSEJnOEJCZ2NPQVFjR0J5SVZCaFVVRnhRV0ZSWVhGRE1XTXpjeUZoVVVEZ0VCcGhJR0FSa0RCUUlKRVJZaUZ3VUdBUUVDQlFJREV4RkdxblJFSHhZTU1UZFpZbXNrbWxFckFSNFlNU2t6TGh3cE9pZ25PUllJRWlOQ0FRTUJHUm9xSkF3TEJnWWpCQUlGQWdRRkJ3SWFGQUVCSVFvQkdBc3lJaU1FQWc0bkdSa0ZCUUVIQVVaSUFSVVJBd29GRkFNQkZoY0VFUlFCV3FJZUV4c2NKL1lCQWdFT0doZ0tCUWtKQXhVRkd3SUdCQWtCQmd3Ri9wRndSRnRDUlJWeVRWTXNMUUVIWlR4Skp5ZENPU2toSFNJU0d6c1hGaUloT1JBQkFRWVdCZ0lLSmtBVEVSQURCd1FCQ1JvQ0xFY2RDQ0VoRmhnTEJ3RUNBZ0VCQVFvd0FoQVVCQXdKSHd3Qk5EOUJPZ0VGQXlVYUFYSUJIaE1VR3dJQUFnQXgvL1VDaGdMREFDY0FMZ0N2UUFvcUFRUUJCQUVDQXdKTVM3QVBVRmhBR2dZQkJBQURBZ1FEYUFBQkFTaE5BQUlDSTAwRkFRQUFJd0JPRzB1d0VGQllRQjBBQWdNQUF3SUFnQVlCQkFBREFnUURhQUFCQVNoTkJRRUFBQ01BVGh0THNCVlFXRUFhQmdFRUFBTUNCQU5vQUFFQktFMEFBZ0lqVFFVQkFBQWpBRTRiUUIwQUFnTUFBd0lBZ0FZQkJBQURBZ1FEYUFBQkFTaE5CUUVBQUNNQVRsbFpXVUFWS0NnQkFDZ3VLQzRoSUJ3YkRRc0FKd0VuQndnV0t4Y2lKeVkxTkQ4Qk5oSTNOak15RnhZZkFSUXpGeFlYRmhVVUJ3WWpJaWNtSnlNR0R3RUdCd1lCSmljR0J3WUhZaHNQQndJVkwyNU5EeHNrQzFrdEJnRUdQQ1lHR0FzTkJnMFlhT0VnSGhNR0VRc0JMQ1FqSEJZUERRc1pDdzBHQno2VEFTR0dHQ1R1Wmc4QkVJZE1EQTBhRHdjREJmSmNYRGdUQ2djQmRWbGFPRFlpSXdBQUJBQnAvL0FDVGdLekFBTUFMUUJVQUhBQWVFQU5VVHdDQWdGaUt4VURBQUlDVEV1d0VGQllRQ0FBQWdFQUFRSUFnQUFCQVFSaEFBUUVJazBHQVFBQUEySUZCd0lEQXlZRFRodEFKQUFDQVFBQkFnQ0FBQUVCQkdFQUJBUWlUUVlCQUFBRllBQUZCU05OQndFREF5WURUbGxBRjFaVkJRUnZhMTFhVlhCV2NFQTlPVGNFTFFVc0NBZ1dLd0VtSXhjRE1qYzJOejRCTnpZM1BnRTFOajhCTmpVbklqVW1KelFtTlNZbk5TY21KeUluTkNNbUp5WW5GUllUSmljbU5TWW5JeWNtSXlJSEJnY1ZOamN5TnpvQk5UTTJOelErQVRNK0FUVTJOU2NtSnhVQklpWTFFVFF6RnhZWEZoVVVCeFlYRmhVVUJ3WUhCaU1pTHdFR0FjNENBUUtiUkFrY0ZRSUdBUW9LQkFvRkF3RUlCQUVDQkFJSENBUU1EQUlHQVRRc0JIeFRyd1FGQWhJR0FRTXFQU1FyRWhNckswd1hBZ01HTWdzRUF3RUNBZ1FDQ0FUK3pCUWQweUtiTWhKTk9Cc0xFeVZQT1Vjbkp6b1BBaWdEQS80NUJBUUhBZ0VCQkFjRUNRRUdCd0lTSnhJQkJRVUNBUUVJQmdFQ0NRVURBUk1GQVFyWEJBSEhCUVFCQVFzQ0FSQUdBd1NqQXdFRkFRMEtBUU1FQkFNRENSRWZHZ0VCL2NrZEZRSkpTQUVGWVNvMFlpZ2VQaUVoTENwSUdSRUNBUkVBQUFFQVR3QUpBbndDcndCakFKMUFEMDVOQWdRRkxnRUJCRmtCQUFFRFRFdXdHMUJZUUNRQUJBVUJCUVFCZ0FBQkFBVUJBSDRBQlFVRFlRQURBeUpOQUFBQUFtRUFBZ0lqQWs0YlM3QXhVRmhBSVFBRUJRRUZCQUdBQUFFQUJRRUFmZ0FBQUFJQUFtVUFCUVVEWVFBREF5SUZUaHRBSndBRUJRRUZCQUdBQUFFQUJRRUFmZ0FEQUFVRUF3VnBBQUFDQWdCWkFBQUFBbUVBQWdBQ1VWbFpRQWtwSnl3bkxpd0dDQndyTnhZWEhnRVVGeFl6SGdFWEZqTTJOelkzTXpjMk5UUW5KalUwTnpZek1oWVZGQWNHQndZaklpY21KeVkxTkRjMk56NENNeklYSGdFVkZBY0dJeUluTGdFbkppY21KeVluQndZakJnYzNCZ2NWQmdjaUZRWVZGQmNXRkJjakZ4VVdGeWNWd2dVR0FRSU9Bd0lIRHhjalF5a29IQmtDQnhZS0FnZ1FHU01aRUNkdk5EUjBSVXNSQ2dNRU1CbEtWU3A1VUJvY0JBOGNIZzREQlJBSkVCNGhHUm9aQkFVakRRWWlHdzhIQVJnREFRRUJBUVlHQWE4UEJnRUNBZ3dEQkFnR0NnRUVCQW9FRFJJVEhnY0hEZ3dWU1NJaElFVU9CaVl2WGpSSEtTcGhVeVUwR0U4YVF4QU1DeHNaQ2hJY0RBMFVDQVVCQVFFSkJRTU5Id0VVRXdFK1lEUXRCQVlDQVFRYkVBRUNBQUFBQWdCbUFBc0Nud0t0QUJVQVVBQjZRQkJOTUFJQ0F3UUJBQUlDVEFnQkF3RkxTN0FaVUZoQUZnQURBd0ZoQUFFQklrMEFBZ0lBWVFRQkFBQWpBRTRiUzdBcVVGaEFFd0FDQkFFQUFnQmxBQU1EQVdFQUFRRWlBMDRiUUJrQUFRQURBZ0VEYVFBQ0FBQUNXUUFDQWdCaEJBRUFBZ0JSV1ZsQUR3RUFTRVlYRmc4TkFCVUJGUVVJRmlzM0lpY21KeVkxTkRjbU5UUTNOak15RnhZWEJnY0dKelkzTWpjMk56WTNOamMrQVRjMk56WS9BVFkzTmpVMEp6VW5OQ2MxTGdFbkxnSW5KaWNpSmljbUx3RW1KeTRCSXlJSEJnY0dGUWNHRmJRV0RpTUVBeVlIR2sxVlgxZWxBd0tyazQ4bkFna0pOeXdZSEJrVUFRWURJUTRTQ3dVSEJBRUJBUThCQWcwS0FnSUJEUTRDQndJZER3MFZIQWtVR0NBSkVoSVNBeEFMQ2dza096cmJ0d3NOSGd3Z0xGNjFybVJSWWdJQ0Fnb1BDQTRNRGdFREF4b1NHQlVORkJVTUV3NE5CZ1FOSlFFQkJ4UU9Bd0VDRGd3SEFSRUhCZ2dHQVFNQ0FnVlhEUkNNaGdBQUFBRUFYLy8wQWpNQ3VRQXdBRFJBTVFBREFBUUZBd1JuQUFJQ0FWOEFBUUVpVFFBRkJRQmZCZ0VBQUNNQVRnRUFLU1FoSHhzWkZ4VVJEZ0F3QVMwSENCWXJGeUltSnlZdkFUUTNOamMwTmpjMk15RXlGaFVVQmlNaEJnY3pNaFlWRkFZckFRWWRBVFkzTmpNeUZoVVVCaU1PQWFJUkdnVVJBUUVJQ0FJVUVBOFhBVWdVSEJ3VS9zOENCcmNVSFIwVXZRUkZSRlJVRlJ3Y0ZWU25EQlFRRHhoZ2MzSjVlaEVhQkJNZEZCUWRZV0lkRkJRY1UxTTNBUU1FSFJRVUhBRUhBQUVBVmYveEFqb0N4d0FkQUZhMUJBRUNBUUZNUzdBa1VGaEFHUUFEQUFRQUF3Um5BQUlDQVY4QUFRRWlUUVVCQUFBbUFFNGJRQmNBQVFBQ0F3RUNad0FEQUFRQUF3Um5CUUVBQUNZQVRsbEFFUUVBR2hnVUVoRVBDd2dBSFFFZEJnZ1dLeGNpSmpVUkpqVTBOak1oTWhZVkZBWWpJUlV6TWhZVkZBWXJBUkVVQm80VEhRa2RGQUdERkIwZEZQNjJyeFFkSFJTdkhROGRGQUpaREE4VUhSMFVGQjJ5SEJRVUhmN1FGQjBBQUFBQUFRQWhBQUFDcWdLNEFHRUFmMEFMVlMwQ0JRZEpBUVFGQWt4THNCQlFXRUFtQUFJREJ3TUNjZ0FIQmdFRkJBY0ZhUUFEQXdGaEFBRUJJazBBQkFRQVlRZ0JBQUFqQUU0YlFDY0FBZ01IQXdJSGdBQUhCZ0VGQkFjRmFRQURBd0ZoQUFFQklrMEFCQVFBWVFnQkFBQWpBRTVaUUJjQkFGdFpVbEZRVGprM0pCOFVFZ3dLQUdFQllRa0lGaXNoSWljbU5UUTNQZ0UzTmpNeUZ4WVZGQWNHSXlJbkppY2lKeVluSWlZbkxnRWpJZ2NpQndZSERnRUhCZzhCTndZVkZCY3lGUllYRmpNeU56STNOamN5Tno0Q016YzBOelkzSmpRbUp5WWpCZ2NpSnlZMU5EWTNOak15RnhZVkZBY0dBWXVvVW5BbEpvZFpGaFpzTXcwTER4VWhEUUlMQVFFRkJ3SUxBaE1CQWhNR0hqTW5MQUVGQ0N3S0FnRUNEZ0VlUENSMVREVURBeEFGQkFZQkFnRUJDZ0lMQVFFQ0FoaDFLeW9aRHdnQ0R4aGZmajgwRno1Rlk0aE9TMU4vR0FWZkZSSVFEaEVkQlJJQ0J3WUpBUVVCQVNFWU5RSUZERDVCQ0FJSkhpTWpBVDRwR1JVQ0NBVUlBZ0lDRVFNREVSb0NBd0lESFFFRUZRNFBBeFVNRVNzalFTTXdmQUFBQUFBQkFHai8rQUtJQXNFQUxRQ3NRQXNZQVFJQkNnWUNCUUlDVEV1d0VsQllRQllBQWdBRkFBSUZad01CQVFFaVRRUUdBZ0FBSXdCT0cwdXdGRkJZUUJvQUFnQUZBQUlGWndBREF5aE5BQUVCSWswRUJnSUFBQ01BVGh0THNDWlFXRUFlQUFJQUJRUUNCV2NBQXdNb1RRQUJBU0pOQUFRRUkwMEdBUUFBSXdCT0cwQWVBQUlBQlFRQ0JXY0FBUUVpVFFBRUJBTmhBQU1ES0UwR0FRQUFJd0JPV1ZsWlFCTUJBQ29wSlNNY0d4WVZFQTRBTFFFdEJ3Z1dLeGN1QVQwQk5qVW1OVFEzTmpjK0FUTWVBUjBCQmdjRkppYzFORFl6RmhjV0ZSQUhCaU1pSmpVMk55VVFCd2FYRkJzTUJRVUJCQUVkRkJVYUF3RUJVQUVKSHhRVkRCZ2FEUk1XSEFjRC9xOGJEZ2dCSEJNRHFLa0pDeEFKYm00VkdnRWNFd05nWUFwdWJRSVRHZ0lPSGZ2K2poWU5IaFdQandyK3Z4a05BQUFCQUZuLzdRRE9Bc3NBSEFBNXRoZ1FBZ0FCQVV4THNERlFXRUFNQUFFQktFMENBUUFBTEFCT0cwQU1BQUVCQUdFQ0FRQUFMQUJPV1VBTEFRQU5EQUFjQVJ3RENCWXJGeUltSnlZbkpqVTBOelkzTmpNWEZoVVVCZzhCQmhVVUZ4WVhEZ0dkRkJ3QkFRZ0tGUVVTREEwTUl3SUlBZ1lKQ1FFQkhCTWNGR3ByYzNKcGFCTUtCZ0VNSkFZTkxoSTJURDZUYTJ3VUhBQUFBQUlBVndBQ0Fma0N0Z0FKQURFQVhVQUxKZ01DQVFRVUFRSUJBa3hMc0NwUVdFQWFBQUVFQWdRQkFvQUFCQVFpVFFNQkFnSUFZUVVCQUFBakFFNGJRQmNBQVFRQ0JBRUNnQU1CQWdVQkFBSUFaUUFFQkNJRVRsbEFFUXNLS2lnZEd4b1lFUThLTVFzeEJnZ1dLd0VXSHdFbkxnSTFGQU1tSnlZMU5ETXlGeFlYQnhRV0Z6SWVBVE15TnpZM05qVTBKeVluTkRZek1oY1dGUlFIRGdFQjVBUUNBUUVCQXdQU0tDVnRNUmtRQ1FFQ0ZCRUhHUWNJU1NjR0JnNFBBZ0laRlMwSEV3ME5lZ0tTRXdnSUJRVVBEQU1CL1d3QkRTSjdTUlFLRGg0YUpRVUNBa2dQSTFCdGNtQUVFaE1nTW1oM1kyTnBjZ0FCQUdiLzlRSm9Bc0lBUHdCNVM3QWJVRmhBQ1RVaUVnNEVBQUlCVEJ0QUNUVWlFZzRFQVFJQlRGbExzQnRRV0VBT0F3RUNBaUpOQVFRQ0FBQWpBRTRiUzdBZlVGaEFFZ01CQWdJaVRRQUJBU05OQkFFQUFDTUFUaHRBRmdBREF5aE5BQUlDSWswQUFRRWpUUVFCQUFBakFFNVpXVUFQQVFBc0toOGRHQllBUHdFL0JRZ1dLd1VpSnlZdkFTWXZBUzRDSnlZbkl3Y0dEd0VWRkFZaklpWTFFVFEyTXpJV0hRRTJOelkzTmo4Qk5qTXlGeFlWRkFjR0J3WUhIZ0VYRmhjV0ZSUUhCZ0kzSEE4ek1Rb2ZXUlFEQmdRQkVRd0JBZ2dTQWgwVUZCMGRGQlFkUVVvbEdSNGdDaE1hRFEwWUNEeFVRVFFtY2gxSU9RY1pEQXNaVjBJTkkwY1JBd1FEQVEwRkJBa2VBL0FUSFIwVEFsc1VIUjBVelVNeEdCVWFJd3NkQ0JBYURReEZQREl2R1Y0aVdXUU1EQndQQndBQUFBQUJBR1AvL1FJc0FyQUFNUUJoUzdBUVVGaTNHaFlVQXdJQkFVd2J0eG9XRkFNREFRRk1XVXV3RUZCWVFCSUFBUUVpVFFNQkFnSUFZUVFCQUFBakFFNGJRQmtBQXdFQ0FRTUNnQUFCQVNKTkFBSUNBR0VFQVFBQUl3Qk9XVUFQQVFBcUtTUWlFQTRBTVFFeEJRZ1dLd1VpSnlZbkpqVTBOelkzTmpjME5qTXlGaFVHQndZSEJoVVdGeFFYSGdFekZoY1dNekkzUGdFL0FUSVhGaFVVQmdjR0FVMUpSRVFPQ3dFSUJ3WUNIQlFVSFFFS0JnUUNBZ0lLQVF3Q0JRd1lUQzB4RGh3UEN3NE9GeEFVYWdNZktFdzVOeE1TcEVZNE9CUWRIUlJQVDJvNEp5Z2tFUXdiQnhNRkJSQUdBd01EQVFnTEhnd2VCQlFBQUFFQVkvLzVBeHdDdmdCT0FOcExzQnRRV0VBTk55TVBCQVFCQTBVQkFBRUNUQnRMc0I5UVdFQU5OeU1QQkFRQkEwVUJBZ0VDVEJ0QURUY2pEd1FFQVFSRkFRSUJBa3haV1V1d0cxQllRQllBQVFNQUF3RUFnQVFCQXdNb1RRSUZBZ0FBSXdCT0cwdXdIMUJZUUJvQUFRTUNBd0VDZ0FRQkF3TW9UUUFDQWlOTkJRRUFBQ01BVGh0THNDMVFXRUFlQUFFRUFnUUJBb0FBQXdNb1RRQUVCQ0pOQUFJQ0kwMEZBUUFBSXdCT0cwQWdBQUVFQWdRQkFvQUFBZ0FFQWdCK0FBTURLRTBBQkFRaVRRVUJBQUFqQUU1WldWbEFFUUVBUERvME15c3BGUlFBVGdGT0JnZ1dLd1VpSnlZbk5DOEJKalFuSmk4QkppY0dCd1lIQmlNaUp5NEJMd0VtSnlZbkl5Y21KelVqQmdjT0FTTWlKaWMyRXpZM05qTXlGeFlYTmpjMk16SVhGaGNXRlJZWEZoVXlGUllYRmhVVUJ3WUM2eVFMRkEwTEFRRUJDaGNFQWdNMUtSRVREQjhHQmhzTURBTVZNUVVFQVFFYUhRRWpBd0VjRkJRY0FRSXlBeUVHQnhNUGhVc3hUQTRkRXc5UUZ3OEVDQUlCQndvQ0NBd0hKRXloRVdZTkFnVUNTenNKQlFSZFpDa3BHQUlITlIwR01rTUdCd0loSGdINi9CVWNIQlh6QVdnakRBRU9jSXg4YmhnUFU1eG1KRVJEREFzQk15VUhCd3dPRmdBQUFRQmkvL2tDa1FLK0FERUFLRUFsTENRU0F3QUJBVXdDQVFFQktFMERCQUlBQUNNQVRnRUFLU2NmSFF3S0FERUJNUVVJRmlzWElpWW5OamMyTnpRM05qTXlGaGNXRnhZWEZETVZOajhCTmowQlBnRXpNaFlkQVJRSEJnY0dJeUluSmljSEJnY09BWk1VSEFFREVnMEhHQXdNSWh3UU0yVTBNUUVMQ0FNU0FSd1VGQjBMQ2k4TUl5ZFRjbE1HRXdJQkhBY2RGTEN2Z29NYkR3WkNJSHkwWFQ4QkFUTXpHNUhWR1JRY0hCUW1qWXlkbFNOM3BibEdyN0FVSFFBREFELy8rUUxCQXJvQUFnQmJBSEVBTDBBc0FBRUJCR0VBQkFRaVRRVUNBZ0FBQTJFR0FRTURJd05PWGx3REEyaG1YSEZlY1FOYkExa3NLaFFIQ0JjckFTY3lBemN5TnpZM05qYzFOelkvQVRZMU5EYzJOU1luSmljMUp5WW5JelVuSmk4QkppY2pKeVluSmk4QkR3RUdEd0VHRHdFaUJ3WVBBUVlQQWdZSEJoVVBBUlFmQVJZZkFSWWZBVE1WRnhZZkFSWWZBUllYTXhZeUh3RW5JaWNtSnlZMU5EYzJNeklXRnhZVkZBNEJCd1lDRFFFQmVnb0tKeVVLRWhVSUVnb0xDZ0VDQVFRRkNnZ0pEQUVHRHhBSklBa0JBUlFuRGdFdEZRb1NFZ0lNQ3drQkFRMFVBUU1DQ2cwSEJRa0JBZ01GQ2dnRENBb0xBUU1NRGdZUEVBWVFHZ01IRUFRVkhVYzlPU1ZEV1UyRVNhbzRMUUZWVGtrQ0lRSCtPUUVORWdvUEdRRUtIaFVmS0FnQ0FROGFJdzhhR1FJUEVoRUJCeEVOQmhVQ0FRZ0pBZ0VDQWdJREJ3RUdCd1lDQ0JrQkF3UVBHeEFSSWd3Qk1Sa1lIaVlTQnhFUUVRRUVEZ3dGQ3djREJ3UUJBV0lCSXlNM2FJS1paMWxHWGxOZUFtS3BNeXdBQUFBQUFnQmgvL29DUlFLK0FDMEFTZ0F5UUM5SEFRUUFBVXdBQUFBRUFnQUVhUUFCQVFOaEFBTURLRTBGQVFJQ0l3Sk9MeTVHUWprM0xrb3ZTaTByWUFZSUZ5c1ROanNCTWpjeU56SStBak0yUHdFMlB3RXlOelEyTlRRdkFTWW5OU1luSmk4QkppY3VBU2NtTHdFbUl3Y0RJaVkxRVRRM05qYzJNeklYRmgwQkZBY0dCd1lqSWljaUp4VVVCc0lHS2hvbkpoQU5BaHNaQVFFTENnSUtCUWNCQmdFQkFRSUdCUWNDRmdRTEV3TUhCU3NoRXhVcUpERVVIQk1PR0NnbzZWSWdLeWs3UzA0VkZDWU1IUUZRQVFJREJRZ0JCUWNCQ0FnTkZ3UUZFUmNJQXc0TkFRc0pCeE1EQ1FnQkJBRU9CQUlEQWYyZkhSUUNWaGdQRVFJRGdEaEFDa2c0TFE4U0FRTEdGQjBBQUFNQU1QK3ZBdGtDelFBQ0FFVUFhZ0N1UUJBZ0hnSUJBbDhZQWdBQlNnRUVBQU5NUzdBdFVGaEFKQUFCQWdBQ0FRQ0FCd0VEQkFPR0FBSUNCV0VBQlFVa1RRWUJBQUFFWWdBRUJDd0VUaHRMc0RGUVdFQWlBQUVDQUFJQkFJQUhBUU1FQTRZR0FRQUFCQU1BQkdvQUFnSUZZUUFGQlNRQ1RodEFLQUFCQWdBQ0FRQ0FCd0VEQkFPR0FBVUFBZ0VGQW1rR0FRQUVCQUJaQmdFQUFBUmlBQVFBQkZKWldVQVhSMFlGQTFkVlRVdEdha2RxTHk0VkV3TkZCVVFJQ0JZckV6Y2lFemN5TmpNMk56TW5OQ2NtSnlZMU5EWXpNaGNXRnpZM05qYzJOVFkxTkNjbUp5WW5JaTRCSnlZdkFpSUhCaU1HQnlJR0l3WUhCZ2NHRlJRWEZoY1dGeFl6QlNJbkppY0dJeUluSmljbU5UUTNOak15Rng0QkZSUUhCZ2NlQVJVV0Z4WVhGaGNVQnZFQkFjb1BDU1lCQ0FJQkpnUUNCaE1lRnhRTUhSd0pCZ0lERHdNREJpSVpMd0VEQWdJOU1RSWlHUTBJQmlRZkFnRUJHQWtjQXhjS0VVSWdLekEzQVFFVkRpSWZSMUI5WGtvb0xYUlFiNE5rU0VjbUR4Z0RCUVFERmhnT0FSNENTd0g5K2dFTUF3SXlBd0lGQmhNVkZCMFBJeVFPRFFnR01CQURKeU1TT0VRdUtBTUJBaWNFQVFJQ0FnZ1ZBaFFOS2cwN1F5a29Va2NkRXhLWERpUW9Ka00zVkdCbHIyZEJVeit1VlZoWklSd0dCQUVFQlJzWkR4UVVIQUFDQUdQLzh3SkpBclFBR1FCUUFHaEFDeGdMQWdBQlNRRURBQUpNUzdBS1VGaEFHd1lCQUFBREFnQURhUUFCQVFWaEFBVUZJazBFQndJQ0FpTUNUaHRBR3dZQkFBQURBZ0FEYVFBQkFRVmhBQVVGSWswRUJ3SUNBaVlDVGxsQUZ4c2FBUUJBUERVekxpMGFVQnRRRnhVQUdRRVpDQWdXS3hNMk56WTNQZ0UvQVRZOUFTWW5MZ0VuSXlZdkF3OEJGd0VpSnlZbk5UUWpKaWNtTHdFbUx3RW1KeUltSWljR0ZRNEJJeUltTlRRU056UTJNajhCTWhjV0Z4WVZGQWNHQnhZWEZoVVVCd2IvSnlZdEt4QWVCd1lFQWdvR0ZSVUJIeXNIS0RZcUF3c0JReVFMQlFjQkZ5TVFLaEFpSVFZYUV3SUhDZ2NEQVJ3VUZCMElBUnN0RnlKYlA0OG1DUThsZW40eUFnZ01BWU1CQkFjUEJ4UUxDZ3NJRFJjUUNSTUpEUVlCQXdFQnpBSCtieVFXRFFFQk5TMFhKdzRaRGdJS0F3SUJmNEFVSEJ3VW1BRXVseE1lQVFFTUYzRWNHeVFpVXh4a253Y0dEQThXQUFFQU4vLzFBakFDd1FCS0FFRkFQa2NCQWdFQlRBQUVCUUVGQkFHQUFBRUNCUUVDZmdBRkJRTmhBQU1ES0UwQUFnSUFZUVlCQUFBakFFNEJBREV2S1NjaklSQU9DZ2dBU2dGS0J3Z1dLd1VuTGdFbkpqVTBOamN5RnhZWEZqTXlOak0yTnpZMUpqVW1KeVkxTkRjMk56WXpNaGNXRlJRaklpWTFOelFuSmlNaUJ3WUhCZ2NPQXdjVUZoVWVBUlVXRnhZWEZoVUdCd1lCV2hSUGZ6TU9IQlFVRDBwTktBZ09CUVE4S1FJQkhJbldMREpGTWpSblBUQXlFeDRCRVRnZk9pb2pDd1FSQWdVQ0FnRURDd0kyWGlRa2tRby9SZ3NCREdNN0VCVVNIQUVPVnlzT0FSUTRDQWNDQkRnNFdudzdMeklWRWo4NVIwc2JFeUlmRmlNVER3c0RFUVFIQmdVSENRY0NFUU1CTlNZUUUwaHJTeTA4QUFBQkFDYi8rZ0pxQXJRQUZnQWtRQ0VEQVFFQkFsOEFBZ0lpVFFRQkFBQWpBRTRCQUJNUkRRb0dCQUFXQVJZRkNCWXJCU0ltTlJFaklpWTFORFl6SVRJV0ZSUUdLd0VSRkFZQlNCUWR3Uk1kSFJNQjR4UWRIUlRCSEFZY0ZBSXBIQlFVSFIwVUZCejkxeFFjQUFBQkFGMy83QUp1QXJFQVNRQnlRQWs2T0RVU0JBSUJBVXhMc0JSUVdFQVNBd0VCQVNKTkFBSUNBR0VFQVFBQUxBQk9HMHV3R1ZCWVFCWUFBd01pVFFBQkFTSk5BQUlDQUdFRUFRQUFMQUJPRzBBWkFBRURBZ01CQW9BQUF3TWlUUUFDQWdCaEJBRUFBQ3dBVGxsWlFBOEJBRUpBSkNJTUNnQkpBVWtGQ0JZckJTSW5KaWNtTlRRbk5EWXpNaFlYRmhVVUZ4UVhGaGNVRnhRZkFSWVhGaGNXTWhZek1qY0hNall6TnpJMk56WTFOamMwUGdFMU5qVW5KaWN1QVRVME56WXpNaFlYRmhVVUJ3WUJjaWtuaHlRWUFoMFVGQnNCQWdnZUJnOEVHd0lJRmhFUkFRVVNCUVFVQVFJREFSSUJBUllETWcwQkFnZ0JDQUlCQWdnTEhnd2VCUThyUGhRUE1hUm9vMkk0RkJ3Y0ZEWlVnVGdrV1E0WUFnUUZHQUVJQ1FjREFRRUVBUUlMQVJZREFrbHpBUVFIQ1VCTk1rSWVBZ29IRHc4V0VCUmlXcXVFdGdBQkFEai8rUUpyQXF3QVBRQnFTN0FiVUZpMUhBRUNBQUZNRzdVY0FRSUJBVXhaUzdBYlVGaEFEUUVCQUFBaVRRTUJBZ0lqQWs0YlM3QW1VRmhBRkFBQkFBSUFBUUtBQUFBQUlrMERBUUlDSXdKT0cwQVJBQUFCQUlVQUFRSUJoUU1CQWdJakFrNVpXVUFNQUFBQVBRQTlMaXd1QkFnWEt3VW5KaWNtSnlZbkppY21OVFEzTmpNeUZoY1dGeklVSHdFV0Z4VVhOamMyUHdFME16YzJQd0UyTlNjME5qTXlGaFVVQndZUEFRWUhCaFVIRlFjR0FYTU1VRFpDSlEwTUVSWUNDQTRiSWhrZ0t5Z0JBUUVYSkFrUUVRSURNUUlMT0EwQkFnRWVFeFVjU3lJbEF4d0lBZ0VNRGdjQkdHdURqaXNzUlVRSEJ3d09Ga2wxbW1jQ0FRTTVNZ0VLSmlVSUEzRUVHNGRkQ1F3VER4VWNIUnQ1dFZKU0NEd1ZBZ01CQWh3akFBQUFBUUF2QUFFRG53S3lBRXNBWEVBUVBBRURBa1U0TnpNcEhnUUhBQU1DVEV1d01WQllRQllBQXdJQUFnTUFnQVFCQWdJaVRRRUZBZ0FBSXdCT0cwQVZBQU1DQUFJREFJQUJCUUlBQUlRRUFRSUNJZ0pPV1VBUkFRQkJQeTR0RnhVTENRQkxBVXNHQ0JZckpTSW5KaWNHQndZSEJpTWlKeVluSmljbU5UUTNOak15RnhZWEZoOENOamMyTkQ4RE5qOEJOamMyTXpJZkFSWWZBVGMyUHdJMk5UUW5OVFEyTXpJZUFSVUhCZzhCQmdjR0F2RVNEM1JzS1c4SUJ3OGNKakUyTFJVZUFna05HeVFMRXgwbUxBTUhLU1FDQVFFSERSNFBBd0lpQmdZZURTcFBSdzhmTHc4Q0FRTUNIeElXR1FRQkRDd1NIeE1KQVE2SytJSGFEZzhZWVhYU1oyUUhCZzBPRmlRNmc3dHFDQTVTVXdJREFRUVBJazlRRWlRTEFoaGN0SFFZYnFGZUNCQVdGeFVXQWhNY0hTVVNGNUtMUG1KbEpBQUFBQUVBRUFBQ0FuOEN0Z0JNQUlWQUNrbEJOaVVRQlFBQkFVeExzQnRRV0VBT0FnRUJBU0pOQXdRQ0FBQWpBRTRiUzdBcVVGaEFFZ0FDQWlKTkFBRUJJazBEQkFJQUFDTUFUaHRMc0MxUVdFQVZBQUVDQUFJQkFJQUFBZ0lpVFFNRUFnQUFJd0JPRzBBVkFBRUNBQUlCQUlBREJBSUFBQUpoQUFJQ0lnQk9XVmxaUUE4QkFFWkVLQ1lpSUFCTUFVd0ZDQllyTnlJbkpqVTBQd0l5TlRZL0FUVTJOeVluTlNjbUp6VW5JeVluSmpVME56WXpNaGNXRnhJek1oWVZGQWNHQndZVkJnY0dCd1lIRmg4Q0ZUTVdGeFlkQVFZSEJpTWlKeVluQmdjR2RSc1FCaGdnQ0FFaUtCd2tJU0VPQ1V3MENBRWhKaGdIRHh3TURKUjRtajBVSFE4YkZ3UUtIaGt4Q1FvYUtnd0hBVFJCRGdFTkR4RVdEMVZxWTMwTUFoZ0xEQndRRlFjQkdDNGlBVEEzTUJFQkMyQW5BUVlhRXcwZURRc1lCbEN4QVJBZEZCUU9IQjRFQVEwc0tGUVJFQ2M1RVFnQlJUb05Fd3NMRHcwTlNwbWNUZ2NBQUFBQUFRQU4vL01DVkFMS0FFWUFQcmRBSlFnREFBRUJURXV3Q2xCWVFBMENBUUVCS0UwREFRQUFJd0JPRzBBTkFnRUJBU2hOQXdFQUFDWUFUbGxBRFFFQU56VVhGUUJHQVVZRUNCWXJCU0ltSnpRbkpqVTNKaWNtSnlZdkFTWW5KalUwTmpNeUh3RVdGeFlYRmpNV0h3RVdNaGMrQWpjMk56NEJORFkzTmpjMk56WXpNaGNXRlJRSEJnY0dEd0VVRmhVT0FRRTFGQndCQWdJQktoOHFPQ01PQVFRRkRoMFRGQThFSkNJNERnTUJEeE1DREFZQ0NBRURCU1FwQkFJREFpRWREQm9NSGcwTUdCRTFSamt0QVFVQkhBMGRGRDA4TlRST0VpVXdZVDRSQVFZRkR4TVVIUTRGS2o5ZkRnVVVFQUVKQVFFQkFnTWZOZ1FDQWdNQ0xDNE1OaGNHRGh3UkhGNVRTaGsvUG5zOEZCMEFBQUFBQVFBdS8vTUNUZ0xHQURJQXlFdXdIMUJZUUFvZ0FRRUNKQUVFQVFKTUcwQUtJQUVCQWlRQkJBVUNURmxMc0JkUVdFQVlBQUVCQW1FREFRSUNJazBGQVFRRUFGOEdBUUFBSXdCT0cwdXdIMUJZUUJ3QUFnSWlUUUFCQVFOZkFBTURJazBGQVFRRUFGOEdBUUFBSXdCT0cwdXdNVkJZUUNJQUJBVUFCUVJ5QUFJQ0lrMEFBUUVEWHdBREF5Sk5BQVVGQUY4R0FRQUFJd0JPRzBBZ0FBUUZBQVVFY2dBREFBRUZBd0ZuQUFJQ0lrMEFCUVVBWHdZQkFBQWpBRTVaV1ZsQUV3SUFLeWduSlIwYUdSY1REUUF5QWk4SENCWXJCU0ltSnlZMU5EYzJQd0UyTnlZaklnY0dCeTRCTlRRMk56WTNOak15RnhZVkZBY0dBUll6TWpjMk56SVdGUlFHQnlJR0FROE5ZRkVqRHFWR0VWdzJHaTBsSkkxTkZCd2NGRkJQVmlLd0V3WUNTdjdKS2pJcVUwTkVGUndjRlVLSERRRVdEU0lTRWJCZUZYaHJBZ0lLQVFFY0ZCUWNBUUVHQmlNTURBY0gwZjZzQlFZRUFSMFVGQndCQ1FBQUFBQUJBRnYvcHdFeEF4MEFMZ0F1UUNzRUFRQUZBVXdEQWdJQkFBUUZBUVJwQUFVQUFBVlpBQVVGQUdFR0FRQUZBRkVWS0JZUklTNFFCd2dkS3hjaUp5WTFOalVtTlRRVE5EYzBOell6TWhjeVB3RXlGeFlWRkFjR0l4UUhCaFVVRnhZVk56SVdGUlFHQnc0Qm9pZ1ZDUUlEQlFJVEZCd0pDQ2tQRWcwTUdBY05XZ01EQVFJdkZSd2NGU29ZV1I0UUZSc29PU21sQVJsWU1oMFZFZ0VCQWdZT0d3MFBHbE5ncDdSRUl4OFpBeDRURlJvQ0FnSUFBQUFBQWYvNC85QUJQZ0xnQUNZQUZFQVJBQUVBQVlZQUFBQWtBRTRoSHlvQ0NCY3JFeVluTlNZMUpqVTBOell6TWhjV0Z4WVhGaGNXSHdJeUZCY1dGUlFIQmlNaUp5WW5KaWNNQmdjQkJoY0xEUjhNU2kwQ0FTd2dEZ29EQXdFQkJoZ01EUjBOUnk0OUl3SjNEdzBCQVFJTURSc09CeGlvc3dVR3BGUXFGQWNKQWdFTURoc09CaGlzdGRwT0FBQUNBQlgvcHdEckF4MEFBZ0ErQURoQU5UTXFBZ1FGR1FFQ0JBSk1CZ0VDQUFBRkJBQUZhUUFFQWdJRVdRQUVCQUpoQXdFQ0JBSlJQajAzTlNnbUlTQWZIU0VsQndnWUt4TW1JeGN5SHdFek5qTXlGeFlWRnhVV0ZSY1NGUlFQQVJRWEZSUUhCaU1uSmljdUFUVTBOak1YTkRjMU5qMEJOQ2MxSmpVbU5TTWlKeVkxTkRjMk0wOENBZ1VIQVE4cENBa2NGQk1CQVFFRUFnRUNDUlVvRmcwcUZSd2NGUzhDQVFNQ0FRUldEUWNZREEwREhBRUJBUUVCRWhVZEhpWVhJeGorODZVcEtTQVlHQVlTRUI0QkFnSUNHaFVUSGdNWkdRc2VIMG1RanpBb1Z3c1JHZzhOR3c0R0FBQUFBQUVBUmdDNkFob0NjUUFxQUNLeEJtUkVRQmNZQ2dJQUFnRk1BQUlBQW9VQkFRQUFkaTB1SXdNSUdTdXhCZ0JFSlJRSEJpTWlKeVluSmljSEJnOENCZ2NPQVNNaUp5WTFORGMyTnpZM05qYytBVE15RnhZWEZoY1dBaG9ZREF3Y0RoZy9JUlFiUUJzRUFROEVCQ0FNR2c4SEFoUTZGeGtoSFEwWkF5bzJHVEliSVFickd3OEhHQ3lOUkI4bVhUb0lCQ0FsRkJBWURBMEdCMlJWSkNNdk1CVURXaXBzUUQwTUFBRUFLZitiQWM3Ly9RQU5BQ2V4Qm1SRVFCd0FBUUFBQVZjQUFRRUFYd0lCQUFFQVR3RUFDQVVBRFFFTUF3Z1dLN0VHQUVRWElpWTFORFl6SVRJV0ZSUUdJMWtVSEJ3VUFVVVVIQndVWlIwVUZCMGRGQlFkQUFBQkFBd0M1Z0RlQTU4QUxBQWFzUVprUkVBUEFBQUJBSVVBQVFGMklpQXNBZ2dYSzdFR0FFUVRKeVluSmljbU5UUTNOamMyTXpJWEZoOENGaGNXRnhZWEZoVVVCd1lIQmlNaUp5WW5KaWMwSnlZbkkwQUREQTBRQmdJSENoUUhCZ3dMSHg0RUVBTUREUXdSQmdJSENoUUhCd3dMSGg0Q0F3RUlCd0VETGdJS0Nnb1RCd1lOQ3hFR0FnY1hGd1FNQWdNS0NRc1NCd1lOREJBSEFnY1hHQUVDQVFFRkJnQUFBQUFFQUEzLzd3SW1BaU1BQWdBM0FEb0FYUUJEUUVCR1JRSUFBMXNzRHcwRUFRQUNUQUFEQUFBQkF3QnBBQVFFSzAwR0FRRUJBbUVGQndJQ0FpWUNUanc3QXdOWVZrdEpSRUk3WFR4ZEF6Y0ROeUFmQ0FnV0t6YzBKeGMyTnpZM01qVTJOelkxTmpVdUFTYzBJeVluSmljbUp5WW5KaWNtSndZakJ3WUhCZ2NHQndZUEFSY1VGeFFYRmhjV0h3RVdQd0VWQXlZbkpqVTBOell6TWhjbk5EYzJNeklYRmhjV0Z6TVhGaFVVQmlNaUp5WW5EZ0Z3QVh3U0VTVWVBUlFMRVFJQkF3WUJBd3dEQWc4Q0NoTURBaDhqQWdjWURROFRFQlVIQXdFQkFRc0NEaGdFQ0JNU3JnR2JkRUFuV3o1UlNFVURCd29lRFE4ZUJnUWJBUWtOSEJjU0VCNE1JbUxNQXdHQUFnWVNKUUVaR3lnV0NSSU1GUklCQ0JJREJBNEJDQWtCQWd3Q0FRY0ZEUlFXS1I0VUFob2FFeG9DQkI4VEFnWUpDTElGQlA3c0JXRkZUSVpjUEM0YkRnNFdCdy9FcUVvU0RSY1NIQkFwTWpFOUFBQUNBRDcvOUFJOEF0Y0FNd0JXQURwQU4wY0JCQU5MQVFFRU9nRUNBQU5NQUFRQUFRQUVBV2tBQXdNa1RRQUFBQUppQlFFQ0FpTUNUamcwVGt4RlF6UldPRllzS1JBR0NCY3JOekkvQVRZM016WTNOREkxTmpjMU5qVTJOVFF2QVNZbk5TY21Md0VtSnk0Qkl5WXZBU1luSmlJbUl5Y2lCeU1HQnlNR0ZRY2lKd2NpSmljbU5UUTJOVFFuTkRZek1oWVhGaFVVQnpZek1oY1dGUlFIQmdjR29FaElHVEVhQVJRUEFnVUxDd1VCQVFNSUNBb0ZBUTRRQWdNQkN5SUlGQ1VCQkFVQkdoQUxCQ0FQQVE4RUh3WUdGUm9DQWhrQ0hoTVZHZ0lDQXlRbHBXTTFFeG8wYTFZSUJBc0tDZ29CQVFRTEFROEhEUTRQRGdZVUV3SVBFZ1VDRVEwQkF3c1BBd29GQVFFQkFnWUdlYU4xQVFFZEZDd3NkZXAzS1NvVkhCd1ZLaXN5TXdoK1IxWXZLelVjT2dBQUFRQWMvK3NDQXdJWEFFWUFjYlZEQVFRRkFVeExzQTVRV0VBa0FBSURCUU1DY2dBRkJBTUZCSDRBQXdNQllRQUJBU1ZOQUFRRUFHRUdBUUFBTEFCT0cwQWxBQUlEQlFNQ0JZQUFCUVFEQlFSK0FBTURBV0VBQVFFbFRRQUVCQUJoQmdFQUFDd0FUbGxBRXdFQVB6NDFOQndiRXhFTENnQkdBVVlIQ0JZckJTSW5KaWNtTlRRM05qY3lGeFlWRkFjR0l5SXZBVFVuSmljbUp5SUhCZ2NHQndZUEFRWVZCaFVVSHdFV0h3RVdGeklXSHdFL0FUWS9BVFkzTmpjMk16SVhGaFVHQndZQkxFOUZZQmdFVEZOK2drRUhHUXdOSEEwTUZRWVFDU2d3T2hFWkFRSVZDQVVJQWd3QkNRMENIREVEQWljTkhSSVdGQUVFQXdVU0N3MEdCeU1FTURNVkxrSnhHQmhaV2w0S2J3d01IQThHR0JJQkZRWUhCZ01sQ2g0Q0FSc1hEaDRJQkFzU0lRRVZFZ0VpR2dJS0FRSUdEQjhFQ1FzVENnY0NDeVUyTWpVQUFnQXEvL1FDS0FMWEFETUFWZ0EvUUR4RUFRTUVRQUVBQTFFQkFnRURUQUFEQUFBQkF3QnBBQVFFSkUwRkFRRUJBbUlHQVFJQ0l3Sk9OVFFBQUVoR1B6MDBWalZUQURNQU15Z0hDQmNySlRVMEp5TW1KeU1tSXdjaUJpSUhCZzhCQmdjaUJnY0dEd0VHRHdFVkJnOEJCaFVVRnhRWEZSWVhGRElWRmhjekZoOEJGaGNpSnlZbkpqVTBOell6TWhjbU5UUTNQZ0V6TWhZVkJoVVVGaFVVQnc0Qkl5Y0dBY1lQQVE4Z0JBc1FHZ0VGQkFFbEZBZ2lDd0VEQWhBT0FRVUtDQWdEQVFFRkN3c0ZBZzhVQVJveEdVaE0xR3MwR2hNMVk2VWxKQU1DQWhvVkV4NENHUUlDR2hVR0JsWVRvM2tHQmdJQkFRRUZDZ01QQ3dNQkRSRUNCUklQQWhNVUJnNFBEZzBIRHdFTEJBRUJDZ29LQ3dRSVlqb2NOU3N2VmtkK0NETXlLeW9WSEJ3VktpbDM2blVzTEJRZEFRRUFBQUFBQWdBUi8rNENId0lmQURNQVlnQkdRRU1BQlFJREFnVURnQWtCQmdBQ0JRWUNad0FIQndGaEFBRUJKVTBFQVFNREFHRUlBUUFBTEFCT05UUUJBRTlOTkdJMVlTMHJLU1lsSkJJUENRY0FNd0V6Q2dnV0t3VWlKeVkxTmpjMk16SVhGaGNXRlJRaElpY2ZBeFVXSHdJeUhnRVhGaGN5SHdFeU56STFNamMyTXpJWEZoVVVCd1lETWpjMk16UXpOamN6TkNjMEp6VW1KelVtTHdFbUx3RW1Md0VpRHdFR0J5SUhJd1lQQVFZSEZSUWpEZ0VIRmdFL2dWMVFCbWRSVzJCQ1FBOEUvdmRNU2dJSERBa1JGUVVqQVFRRUFRNFNCUUllRXhNRklFZ0hDQXNPRmlSWmpUdzhCQVVDSHhjQkNnSUpCd2dLQWcwTkJSRVJJQllLSHgwZUF3TUJCd1lNREFZQkJBUUNVeEpoV25pQVNqUTBObGtORFhJRUJ3NFZEQUVURWdRVUFnRUJCUVFCQWdJQkhRTUpEaHNnRHlRQlJRVUJBUU1LQ3hzREFnRVNDQUVLQ0FJS0JRSUhBZ0lDQ0FZV0JRWUhEQklNQVFFS0V3Y0RBQUFBQUFFQUR2LzVBVDBDL0FBNUFEbEFOamNCQUFFQlRBQURBQVFDQXdScEJnRUJBUUpoQlFFQ0FpVk5Cd0VBQUNNQVRnRUFMeTBwSngwY0ZoUVJEd3NKQURrQk9RZ0lGaXNYSWlZOUFUUXZBVFkzSXlJbU5UUTJPd0UyTnpZek1oY1dGUlFIQmlNaUppTW5Cd1lIQmc4Qk16SVdGUlFHS3dFR0hRRVVCeFlkQVE0QmdSUWRBZ01CQXhBVUhSMFVHQW9rSjBrekR3WVpDdzBHQ2dRRURRSUpGd2dGVEJRZEhSUlRBUU1GQWhzSEhCVVlJeU5FY24wY0ZCUWRaRHhBSEFzTUhnMEhBd0VEQVFraU5ob2RGQlFjSFI0b1QwbEpOUmdWSEFBQUFBQUNBQ0wvSVFJbkFqUUFMZ0NBQU1KQUVHOEJBQVlqRHc0REFRQmRBUVVCQTB4THNDUlFXRUFxQUFNRkJBVURCSUFBQUFBR1lRY0JCZ1lyVFFnQkFRRUZZUUFGQlNOTkFBUUVBbUVKQVFJQ0p3Sk9HMHV3TFZCWVFDZ0FBd1VFQlFNRWdBY0JCZ0FBQVFZQVp3Z0JBUUVGWVFBRkJTTk5BQVFFQW1FSkFRSUNKd0pPRzBBc0FBY0dCNFVBQXdVRUJRTUVnQUFHQUFBQkJnQm5DQUVCQVFWaEFBVUZJMDBBQkFRQ1lRa0JBZ0luQWs1WldVQWJNQzhBQUhOeGJXdGlZRWRFT2pndmdEQ0FBQzRBTGhjV0NnZ1dLeVUzTmpjMlB3RTJOelkzTmpjMk55Y21KeTRCSnlZdkFRY0dCeU1HQndZUEFRNEJEd0VVRnhVV0Z4WWZBUllYRXlJbkppY21OVFEzTmpNeUZ4VVhGaGNXRnhZeUZoY3pNamM2QVRjMk56TTJNelkzTXpjMU16WS9BVFkvQWdZSEJpTWlKeVluSmpVME56NEJNeklmQVRRMk16SWVBUlVIRkJjV0ZSUUhCZ2NHQVFZQkZoVWRHUUVoRmdJQkRBa0ZCd1FKQmc4ZkRoTVRGZ1lQRGdFVkVoY1RCeGdhQmdFQkF3WUxGZ3NWR1I4eEwwTXBCeGdNREJvUkZna1NDeG9CQlFnRERoa0lBZ1VTR2dnQ0F3UVFFQUVWQVFrSUJBY0VBUU04VUNBZ0lDQktLaUlNSFp4WFF6Z0ZIUlFVSEFJQkJBTXVKVHBIV0FFRENRMFRBUm9kQWdJUUVnZ1ZVUk1KSHlVS0RBVUJBUUlHQ2cwVEZ3b2hRQ0lZREFzREVSQVpGZ2tQQlA3SkVSZzZDd3djRHdjWUFSVUdDUVVGQVFFQkFnUUdCUU1JREJVQkR4QUxHUm9HTURzWkNnb2JSRFpHS3locG1DNEVHaDBjTEJjdlZVeEJRcDFQTmh3akFBQUFBUUJNLy9NQ0hRTDZBRWNBcmt1d0psQllRQXNMQVFRQ1FoMENBQVFDVEJ0QUN3c0JCQUpDSFFJREJBSk1XVXV3Q2xCWVFCY0FCQVFDWVFBQ0FpdE5BQUVCQUdFREJRSUFBQ01BVGh0THNDUlFXRUFYQUFRRUFtRUFBZ0lyVFFBQkFRQmhBd1VDQUFBbUFFNGJTN0FtVUZoQUZRQUNBQVFBQWdScEFBRUJBR0VEQlFJQUFDWUFUaHRBR1FBQ0FBUURBZ1JwQUFNREkwMEFBUUVBWVFVQkFBQW1BRTVaV1ZsQUVRRUFOVElhR0E0TUNBWUFSd0ZIQmdnV0t4Y2lKalVSTkRZek1oWWRBVFl6TWhjV0Z4WVZGQVlWRGdFaklpWW5OelkxTkM4Q0ppYzFKeVluSmk4QkppY21KeUltSXdjakJnOEJCZzhCQmdjaUhRRUdCeFFIQXhRR2ZSUWRIUlFVSFRjN0lTT0ZKUThGQVJ3VUZCd0JBd01EQVFJSUNBY01CZ1FhQkFvU0NoQUJCZ2dJREJJSkZ3Z0xCUWNGQVFrQ0FRRWREUndVQXFZVUhSMFV2aVFMTll3OVNpMWFLeFVjSEJWV0p5WkNEZ1FPSnhJQkRoWUdDUllDQ0FnRkF3SUJCQVFOQmcwR0RBc0JBUlVUQWdIK3lCUWNBQUFDQUVyLzhRRERBc0lBQ3dBcEFDNUFLdzRCQWdNQlRBUUJBQUFCWVFBQkFTaE5BQU1ESzAwQUFnSW1BazRCQUIwYkZCTUhCUUFMQVFzRkNCWXJFeUltTlRRMk16SVdGUlFHRXhZVkZBWUhCaU1pSmljdUFUVTBOak15RmgwQkZCY1dId0lVRnhaL0ZCMGRGQlFkSFM4QkRoVUdCUTBmQlJJSUhSUVVIUU1DQlFZQ0FRRUNZQjBVRkIwZEZCUWQvYzRHQmcwY0J3RVBGSG5wZVJRZEhSUTBYRlk2T2pvT0F3TU1BQUFBQXYvZi95UUF0QUs1QUFzQU1nQm10aWdmQWdNRUFVeExzQ1JRV0VBY0JRRUFBQUZoQUFFQklrMEFCQVFsVFFBREF3SmhCZ0VDQWljQ1RodEFId0FFQUFNQUJBT0FCUUVBQUFGaEFBRUJJazBBQXdNQ1lRWUJBZ0luQWs1WlFCVU5EQUVBSkNJVUVnd3lEVElIQlFBTEFRc0hDQllyRXlJbU5UUTJNeklXRlJRR0F5SW5KalUwTmpzQk1qWTNOVFkvQVRZMUppOEJQZ0V6TWhZWEZCY1ZGaFVVQndZSEJnY0dhaFFjSEJRVUhSMWxHaElPR3hRTkJBMEtDQTBCQndFSEJ3RWNGQlFjQVFJTUF3TWtFU0FjQWxnY0ZCUWRIUlFVSFB6TUVBd1ZFeDRORkFFUlJRdzJYbU5ZaFJVY0hCVWNIUVozZno0OVlGZ2xHQlVBQVFCTC8vVUNCQUxvQUM0QWM3Y3BHdzBEQUFJQlRFdXdIVkJZUUJJQUFRRWtUUUFDQWl0TkF3UUNBQUFqQUU0YlM3QW1VRmhBR1FBQkFRQmhBd1FDQUFBalRRQUNBaXROQXdRQ0FBQWpBRTRiUUJrQUFRRUFZUU1FQWdBQUkwMEFBZ0lBWVFNRUFnQUFJd0JPV1ZsQUR3RUFKQ0lVRWdrSEFDNEJMZ1VJRmlzWElpWTFBaEUwTmpNeUZoVVFGelkzTmpjMk56SVdGeFFIQmc4QkZoOEJGaGNVQmlNaUx3RW1Md0VHSXhVVUJuMFVIQUljRkJRZEFpY21WV0FRRXhRY0FROWdWUjFoVGc0TkFSMFdFdzBQWno0SkxnSWRDeDBVQVVvQlJ4UWRIUlQrdDB3b0tWMVJEUUVjRkJVT1VWNGVVR01SRUJNVEhRNFJmUzhHTEhjVUhRQUFBQUFCQUQ3LytBRDlBdWdBSEFBelM3QWRVRmhBRUFBQ0FpUk5BQUFBQVdFQUFRRWpBVTRiUUJBQUFnQUNoUUFBQUFGaEFBRUJJd0ZPV2JVbU5DSURDQmtyTnhZWEZqSVdGUlFHS3dFaUp5WTFFVFEyTXpJV0ZSQVhNeGNqRmpPbkJBa0NLeHdjRlFzckpUTWRGQlFkQVFFQ0FRTUNYZ0lCQWgwVUV4MFVJVWNDUXhRZEhSVDlzUVlDQXdBQUFBSUFRLy92QXpvQ0t3QmxBR2dBcTBBTVZsSUNBUVZER2dJQUFRSk1TN0FLVUZoQUZnTUJBUUVGWVFjR0FnVUZKVTBFQWdnREFBQW1BRTRiUzdBTVVGaEFJQU1CQVFFRllRWUJCUVVsVFFNQkFRRUhZUUFIQnl0TkJBSUlBd0FBSmdCT0cwdXdEbEJZUUJZREFRRUJCV0VIQmdJRkJTVk5CQUlJQXdBQUpnQk9HMEFhQUFVRkpVMERBUUVCQm1FSEFRWUdLMDBFQWdnREFBQW1BRTVaV1ZsQUZ3RUFXVmRWVTFGUFNrZzROeVlrRUE4QVpRRmxDUWdXS3dVaUpqVTBOelkxTkNjbUx3RWpKaWNpQmlNR0ZTSUhCaU1HQndZSEZoVVVCd1lWRGdFaklpWW5QZ0UxTkNjbUx3RWlKaU1tTHdFbUl3Y0dCeUlIQmdjR0l3WUhCZ2NSRkFZaklpWTFFVFEyTXpJWE5qTXlGell6TWhjV0Z4WVZGQWNHQndZSEJqYzBOd0xvRWg0WkNBOEtCQlVCRjBFa0NRRVZCUkFCQWdzSkFRTXhBZ0lCSEJRVUhBRUJCQW9LSXdZQkFnRVVEaE1ORFEwVEdRSUJJUUlCQWdvSUFnRWRGQlFjSEJRZkR6bytURHc4WEVnL09pQWdGd2tCQVEwUEhRRVJHaElZaVMwNkxpa1VCQlFYRFFJR0FRc0NDZ3NDQWxTYkh4OG1KaFVjSEJVblNTTk5JVGN2Q1FRYkNBb0dBUVFTQWhzSUJBNFBBUUwrdHhRZEhSUUJ5QlFkSHpBL1FDRWZPRUZJVm5jN0FoUVBEaTBGQVFBQUFBRUFUUC83QWlVQ0tRQTJBR2hMc0MxUVdFQUtLQUVCQXhzQkFBRUNUQnRBQ2lnQkFRTWJBUUlCQWt4WlM3QXRVRmhBRXdBQkFRTmhCQUVEQXl0TkFnVUNBQUFqQUU0YlFCY0FBUUVEWVFRQkF3TXJUUUFDQWlOTkJRRUFBQ01BVGxsQUVRRUFLeWtuSlNBZUZCSUFOZ0UyQmdnV0t3VWlKalUwTmpjbUp5WTFKaThCSmljbUl5WWpCZ2NHQndZSEJnY1JGQVlqSWlZMUVUUTJNeklYTmpNeUZ4WVhGaFVVQndZSEZBWUI2Uk1kQ2dFREVRRUtCQUVmTGhvSUJDVVBHaEFDRGdzQ0JSd1VGQjBkRkJzUE1rRXdMMEF0UHdVRkFSMEZIQlFwWURkWEt3RUNFZ1VDSmc0SUFnRUtDUUlKRlFzSS9yRVVIUjBVQWNRVUhSb2RFaGN6UDYwd0pUVXNGQndBQUFBQ0FCNy81d0k1QWlBQUZnQkVBRFJBTVNVQkFnTUJUQVFCQXdNQllRQUJBU3ROQlFFQ0FnQmhCZ0VBQUN3QVRnRUFSRU0wTWpFd0dCY0xDUUFXQVJZSENCWXJCU0luSmljbU5UUTNOak15RnhZWEZoVVVCdzRCQndZbk1qOEJOamMyTnpRek5qYzBNemNtSnpVbkppYzBJeVluSmlNbUl5SUhGUTRCSXdjR0J3WVZGQmNXRnhZekFSbzdOMG9pSGpNN2FGVkxZeXdXR2h4bk95UXRFQXNLUkNRTUVRRVZCZ0VCQkFvQkRROEJLamdtRWd3YURCZ0pDd0lSRHc4REJ3OGVNU01aSHpCVFNFeG9TbEVxT1dneU1qYzROMGtRQzJJQkFSTWRDUk1CSFNJREVEQVZBZ0VkRXdFMUZnOENCd0VFQ1JJUFBoVVlHeVk2SnpJQUFBQUFBZ0JJL3l3Q1JnSVBBRE1BVmdEUlFBNVJBUUVDUUFFREFFUUJCQU1EVEV1d0QxQllRQndGQVFFQkFtRUdBUUlDSlUwQUFBQURZUUFEQXlOTkFBUUVKd1JPRzB1d0VGQllRQm9BQUFBREJBQURhUVVCQVFFQ1lRWUJBZ0lsVFFBRUJDY0VUaHRMc0JWUVdFQWNCUUVCQVFKaEJnRUNBaVZOQUFBQUEyRUFBd01qVFFBRUJDY0VUaHRMc0NCUVdFQWFBQUFBQXdRQUEya0ZBUUVCQW1FR0FRSUNKVTBBQkFRbkJFNGJRQmdHQVFJRkFRRUFBZ0ZwQUFBQUF3UUFBMmtBQkFRbkJFNVpXVmxaUUJRMU5BQUFTRVkvUFRSV05WTUFNd0F6S0FjSUZ5c1RGUlFYTXhZWE14WXpOekkyTWpjMlB3RTJOekkyTnpZL0FUWS9BVFUyUHdFMk5UUW5OQ2MxSmljMElqVW1KeU1tTHdFbUp6SVhGaGNXRlJRSEJpTWlKeFlWRkFjT0FTTWlKalUyTlRRbU5UUTNQZ0V6RnphcUR3RVBJQVFMRUJvQkJRUUJKUlFJSWdzQkF3SVFEZ0VGQ2dnSUF3RUJCUXNMQlFJUEZBRWFNUmxJVE5Sck5Cb1ROV09sSlNRREFnSWFGUk1lQWhrQ0Fob1ZCZ1lCclJPamVRWUdBZ0VCQVFVS0F3OExBd0VORVFJRkVnOENFeFFHRGc4T0RRY1BBUXNFQVFFS0Nnb0xCQWhpT2h3MUt5OVdSMzRJTXpJcktoVWNIQlVxS1hmcWRTd3NGQjBCQVFBQUFnQXEveXdDS0FJUEFETUFWZ0RJUUE0NkFRQUNTd0VFQVVjQkF3UURURXV3RDFCWVFCc0FBQUFDWVFVQkFnSWxUUUFCQVFSaEFBUUVJMDBBQXdNbkEwNGJTN0FRVUZoQUdRQUJBQVFEQVFScEFBQUFBbUVGQVFJQ0pVMEFBd01uQTA0YlM3QVZVRmhBR3dBQUFBSmhCUUVDQWlWTkFBRUJCR0VBQkFRalRRQURBeWNEVGh0THNDQlFXRUFaQUFFQUJBTUJCR2tBQUFBQ1lRVUJBZ0lsVFFBREF5Y0RUaHRBRndVQkFnQUFBUUlBYVFBQkFBUURBUVJwQUFNREp3Tk9XVmxaV1VBUU9EUk9URVZETkZZNFZpd3BFQVlJRnlzQklnOEJCZ2NqQmdjVUloVUdCeFVHRlFZVkZCOEJGaGNWRnhZZkFSWVhIZ0V6Rmg4QkZoY1dNaFl6RnpJM016WTNNelkxTnpJWE56SVdGeFlWRkFZVkZCY1VCaU1pSmljbU5UUTNCaU1pSnlZMU5EYzJOellCeGtoSUdURWFBUlFQQWdVTEN3VUJBUU1JQ0FvRkFRNFFBZ01CQ3lJSUZDVUJCQVVCR2hBTEJDQVBBUThFSHdZR0ZSb0NBaGtDSGhNVkdnSUNBeVFscFdNMUV4bzBhd0d0Q0FRTENnb0tBUUVFQ3dFUEJ3ME9EdzRHRkJNQ0R4SUZBaEVOQVFNTER3TUtCUUVCQVFJR0JubWpkUUVCSFJRc0xIWHFkeWtxRlJ3Y0ZTb3JNak1JZmtkV0x5czFIRG9BQUFFQU1QLzFBVm9DSndBdEFDVkFJaVVWQkFNQ0FBRk1BUUVBQUN0TkF3RUNBaU1DVGdBQUFDMEFMUm9ZRWhBRUNCWXJGeUluSmpVME56WTFOelkxTkNZMU5EWXpNaFlkQVRZM05qTXlGeFlWRkE4QkJnOEJCZzhCRmhVVUJ3WUhCbUVHQnlRQ0N3SUdCUndVRkIwNFF3Y0hEQThWSkE0Ykt3WWNGd1FDRndVU0RBc0NDaVFIQnprSEVTdExRSDQrRlJ3Y0ZSWXJHUUlKRGh3ZkR3VU1IUVVYSFFRb01IWnpGQW9HQUFBREFDLy81Z0hEQWlZQUFnQUZBR1VBUlVCQ1V3RUVCU1VCQWdFQ1RBQUVCUUVGQkFHQUFBRUNCUUVDZmdBRkJRTmhBQU1ESzAwQUFnSUFZUVlCQUFBc0FFNEhCa3RLUTBFNU54d2FFUThHWlFkbEJ3Z1dLeE16TlFjaU5STWlKeVluSmpVME56WXpNaGN5RlJZWEZSWVhGak0yTnpNK0FUVTJOelkzSnlZdkFTSW5KaWNtSnlZbkpqVTBOejRCTXpJWEZoY1dGUlFIQmlNaUp6UWpKaWNqSmljR0l3WUhCZ2NHRlJjbkZ4WVhIZ0VYSGdFWEZoY1dGUlFIQnFzQkJRRlRTVGd5RlFJSkRob2lEUUVFQnhZVEdDQWZGUUlMR0FNQ0JRSURCZ29YQWdRT05pSWhPU0lRQ1JabFBUTXJPaGNDQ0E0YklnMENDQllCRXlnQ0F4Z2JDdzBEQmdFRkNRa0NCZ01lT3gwM0tDVXVPZ0djQVRJQi9ub25KRGtIQnd3T0ZpUUJDZ2dCRmdnTEFRa0ZFd01FQlFVWUdnMEtEUUlHRHdnTUVqQWZJUmdaTmtJYUtFTUhCd3dPRmlRRUZCWU9BZ0VERXdnVkRSSUtBd1VHQkFJQ0FRc09DUkFvTFRsRk1Uc0FBZi8vLytzQk9RS1dBRHNBUWtBL0d3RUNBd2dCQmdFQ1RBQURBZ09GQlFFQkFRSmhCQUVDQWlWTkJ3RUdCZ0JoQ0FFQUFDd0FUZ0VBTnpVeU1TVWpIeDBaRnhFUEN3a0FPd0U3Q1FnV0t4Y2lMZ0VuSmpVMFB3RWpJaVkxTkRZN0FUVTBKelUwTmpNeUZoY1dGVE15RmhVVUJpc0JCZ2NVSHdNZUFSVVhGak15UGdFek1oY1dGUlRzRWpnMENoTUZBaWdVSFIwVUt3SWVFeFVhQVFOSkV4MGRFMHdHQVFVRERBa0RBd0lLQ1FRSUNnWU5EeFlWREVFblJIYzhQQ0VkRkJRZEZCNGZBaE1iSEJRcEtCMFVGQjFhV3k0dUR5c1JBZ01CQVFRQkFnY01IVFFBQVFBeS8rTUNKUUloQUVBQTRFdXdGRkJZUUEwekZROEZCQU1DQXdFQUF3Sk1HMEFOTXhVUEJRUURBZ01CQVFNQ1RGbExzQkJRV0VBVEJBRUNBaVZOQUFNREFHRUJCUUlBQUN3QVRodExzQlJRV0VBWEFBUUVLMDBBQWdJbFRRQURBd0JoQVFVQ0FBQXNBRTRiUzdBcVVGaEFHd0FFQkN0TkFBSUNKVTBBQXdNQllRQUJBU1pOQlFFQUFDd0FUaHRMc0MxUVdFQWVBQUlFQXdRQ0E0QUFCQVFyVFFBREF3RmhBQUVCSmswRkFRQUFMQUJPRzBBZUFBSUVBd1FDQTRBQUF3TUJZUUFCQVNaTkJRRUFBQVJoQUFRRUt3Qk9XVmxaV1VBUkFRQTNOU0loRXhFS0NBQkFBVUFHQ0JZckJTSW1OVFkxQmdjR0l5SW5KalUwTno0Qk16SVdGUWNHRlJRWEhnRVhGaGNlQVJjeU56WS9BU00vQVRZM05qYzJOVFEvQVQ0Qk16SVdGUWNVRmhVVUJ3WUI3eElmQmlFN01EZEFMMkFMQVJzVkV4NEZCeGNFQmdVQkRRa1ZJd2NIRXd3TkFSWUJGUThmRFFFQ0NRRWJGUk1lQVJBVEVCMGNGREl5UWljZUgwZkZNcE1WSEJ3VlFUNC9Yam9JREFZQ0RRVUtBUU1FQ1FrV0FoOGdWbHNCQXdrRGJoVWNIQlU0VHBaS2d4VVBBQUVBRGYvcUFnVUNMZ0F1QUdkTHNCdFFXTFVZQVFJQUFVd2J0UmdCQWdFQlRGbExzQnRRV0VBTkFRRUFBQ3ROQXdFQ0Fpd0NUaHRMc0NaUVdFQVJBQUFBSzAwQUFRRXJUUU1CQWdJc0FrNGJRQkVBQUFFQWhRQUJBU3ROQXdFQ0Fpd0NUbGxaUUF3QUFBQXVBQzRqSVMwRUNCY3JCU0ltSnlZdkFTWW5KalUwTnpZek1oY1dGeFlYRlRNV0Z6WS9BVFUyTnpZM05qTXlGeFlWRkE4QkJnY0dCd1lCQ2dVYkRVSXNKeHNkQXdrT0d5QVBIUnNsSHdFRUhCY0tBZ2szR1IwTUl4b1JCdzByRmhnN09nOFdCQlJ4ZkdwTVN3Y0lDdzRXSkVwTGJFa0JERHNyR2dRQ0VKcExTU1FaQ3dzSkgzaEFRSnhDRGdBQUFRQUgvL2NERHdJZUFENEFza3V3RzFCWVFBazdMeHdJQkFBQ0FVd2JTN0F0VUZoQUNUc3ZIQWdFQUFNQlRCdEFDVHN2SEFnRUFRTUJURmxaUzdBYlVGaEFEd1FEQWdJQ0pVMEJCUUlBQUNNQVRodExzQ3BRV0VBVEJBRUNBaVZOQUFNREpVMEJCUUlBQUNNQVRodExzQzFRV0VBV0FBTUNBQUlEQUlBRUFRSUNKVTBCQlFJQUFDTUFUaHRBR2dBREFnRUNBd0dBQkFFQ0FpVk5BQUVCSTAwRkFRQUFJd0JPV1ZsWlFCRUJBRGszSmlRWkZ3MExBRDRCUGdZSUZpc0ZJaWNtSnlZbkppY0NCd1lqSWljbUp5WW5KalUwTnpZek1oTVdGelkzUGdFMU5qYzJNeklXRnhZWEZoY2VBUmMyTnpZM1BnRTNOak15RmhVR0J3WUNRUThLU2lBUENnY0tPMXdRRWtCQUV4a1NFQVlZREF4QlFCNE9DUWNDQmg0NERDUWlRd3dLQnhZT0FRTU1Dd282SUFRRURCQVRFaDhVTFZJSkJqTnVOVDBxSlA3K1V3MytTMGdxR1FzTUhCQUgvdjExSEJBUUJnd0NTT3NrWXpncEtYRWRBZ2tURmhlUWxoRW1EUThjRklWLzh3QUFBUUFZLy9BQjJnSTBBRGdBYWtBSk1DUVVCUVFBQWdGTVM3QVVVRmhBRGdNQkFnSXJUUUVFQWdBQUpnQk9HMHV3RzFCWVFCSUFBd01yVFFBQ0FpdE5BUVFDQUFBbUFFNGJRQmtBQXdNQVlRRUVBZ0FBSmswQUFnSXJUUUVFQWdBQUpnQk9XVmxBRHdFQUtTY2dIZ29JQURnQk9BVUlGaXNGSWljbUx3RUdCd1lqSWljbUp6UTNOamMrQVRjbkppOEJKaWNtTlRRMk93RVdGeFlYTmpjMk16SVhGaFVVQndZSEZ4WVhGaFVVQndZQnFSa1NWdzRKUjE0TkZSTVFEUUVPUTBNTEF4MERHeVlLR3o0TkhCSUxFUm8rVERvekR4c05EQmdHUDBnaE1UVUhHUXdRR0lJWERXTk5EZzRPRlJZTU5WTU5CU2dFS2pNTktEa05FeGNjQWgwK2JWNWhHQVlQSEF3TWRuRXlUa29NREJ3UEJ3QUFBQUVBSnY4bEFmY0NIQUErQUtpM0xDY0xBd01BQVV4THNBcFFXRUFTQVFFQUFDVk5CQUVEQXdKaUFBSUNKd0pPRzB1d0RGQllRQllBQVFFbFRRQUFBQ1ZOQkFFREF3SmlBQUlDSndKT0cwdXdEbEJZUUJJQkFRQUFKVTBFQVFNREFtSUFBZ0luQWs0YlM3QWJVRmhBRmdBQkFTVk5BQUFBSlUwRUFRTURBbUlBQWdJbkFrNGJRQmtBQUFFREFRQURnQUFCQVNWTkJBRURBd0ppQUFJQ0p3Sk9XVmxaV1VBTlBUdzdPamMxTUM0WUZnVUlGaXNYTnlNMk56WTNNalEzTmpjbUp5WW5KaWNtTlRRM05qTXlGeFlYRmhjV0h3RWVBUmNXRnhZWE5qOEJOamMrQVRNeUZoVUNCd1lqSWpVME5qTVdNemE1QXdJT0ZDRVhBUUVKRGxVN0ppNFVDQWNZREEwZURCVVNPVFlEQlFFSUR3WUVBZ2NMR3hNQ0RBUUNHaFVUSGhLN1VXcEhIQlVOR3hsdEFRUU9GeDRDQVFrYUtIaE5oVHNTRFEwYkR3WVlNalNyVGdZRUF3a09CZ0lDQlFWRGdROWVYeFVjSEJYK0hLRkJNaE1lQVFNQUFRQUsvL0FCMXdJZEFETUFjMHV3RWxCWVFBb0tBUVFCQlFFQUJBSk1HMEFLQ2dFQ0FRVUJBQVFDVEZsTHNCSlFXRUFYQWdFQkFRTmZBQU1ESlUwQUJBUUFYd1VCQUFBakFFNGJRQjRBQWdFRUFRSUVnQUFCQVFOZkFBTURKVTBBQkFRQVh3VUJBQUFqQUU1WlFCRURBQ3duSWgwV0ZRME1BRE1ETUFZSUZpc1hJaWNtTHdFME56NEJQd0VuSWc4QkloVUdCd1lqSWljbU5UUTJOell6TWhZekZoY1dGUlFCTXpjMk14NEJGUlFHQnlJSDhGdGJJd3dCRFdHN0NnUkpVQndNQkJNU0JnY05EaFlRRkZ0Y0xGY3JHdzhIL3NvM2JUSXpGQjBkRkRNeUVBWUNJZzBURDNQckR3UUJCUUVCQWdRQkJ3MGJEUjRGRVFNQkZ3MFBHdjZHQVFFQkhCUVVIQUVCQUFFQVJ2K2RBVEFERmdCZ0FDeEFLVmM3TWc0TUN3WUNBUUZNQUFJQkFvWUFBQUVCQUZrQUFBQUJZUUFCQUFGUlNrZ2ZIUmtYQXdnV0t4TW1OVFEyUHdNMlB3RTFKalVuSmpRbkpqVTBOell6TWhZVkZBWWpJZzhCSWdjakZTSVZCd1lWRkJjVkZ4WVZGQWNXRlJRUEFnWWRBVE1mQVI0QkZ4NENGUlFIQmlNaUp5WTFORGMyUHdFME16WTlBUzhCSWlZbkl5NEJKMlFlRkJBUkNnTURBUUVDQVFZQkVCTWtVQmtkSEJVT0R3SUNBZ0VCQWdNQ0NROGlIUWtGQVFRQkF3VURCd1FIS2hBWURBMDZLeU1IQVFNREFRTUZCd0VEQXdFSkJnSUJQZzhlRHh3RUJBY0hCd2NHRWhJSkFpWURBMVliS3ljNEhSUVVIUU1CQWdFQkF4QUxEUTBITVUwZFJpZ3BQekl4SFF3ZkZoUVFDUU1GQWdRSEh3d2NEZ2N2TEVVMkZnNE9HZ0VsRHhrVURRUURCZ01CQUFBQUFRQlIveWNBdEFNcUFCUUFHa0FYQWdFQUFBRmhBQUVCSndGT0FRQUxDUUFVQVJRRENCWXJFeklXRlJFVUJ4RVVCaU1pSmpVME56VTJOVFEyaEJRY0FSMFVGQjBCQVIwREtoMFUva014TWY1OUZCd2NGTGUzc2NIQ0ZCMEFBQUFBQVFBZS81MEJDQU1XQUdBQUswQW9WbFV2SndvRkFBRUJUQUFBQVFDR0FBSUJBUUpaQUFJQ0FXRUFBUUlCVVVwSVJFSVpGd01JRmlzVE53NEJCeU1PQVNNUEFSVVVGeklWRnhZWEZoVVVCd1lqSWljbU5UUStBVGMrQVQ4Q016YzBMd0ltTlRRM0pqVTBQd0UxTmpVMEx3RTBJelVqSmlNbkppTWlKalUwTmpNeUZ4WVZGQWNHRkE4QkZBY1ZGeFlmQXg0QkZSVHFBUUlHQ1FFREF3RUhCUU1CQXdNQkJ5TXJPZzBNR0JBcUJ3UUhBd1VEQVFFRkFRVUpIU0lQQ1FJREFnRUJBZ0lDRHc0VkhCMFpVQ1FURUFFR0FRSUJBUU1EQ2hFUUZBRStBUUVEQmdNRURSUVpEeVVCR2c0T0ZqWkZMQzhIRGh3TUh3Y0VBZ1VEQ1JBVUZoOE1IVEV5UHlrb1JoMU5NUWNORFFzUUF3RUJBZ0VESFJRVUhUZ25LeHRXQXdNbUFna1NFZ1lIQndjSEJBUWNEeDRBQUFBQkFFVUF0UUlVQVk4QU9nQjFzUVprUkV1d0ZGQllRQXMzQ2dJREFoWUJBUU1DVEJ0QUN6Y0tBZ01FRmdFQkF3Sk1XVXV3RkZCWVFCWUVBUUlEQW9VQUF3RURoUUFCQUFHRkJnVUNBQUIyRzBBYUFBSUVBb1VBQkFNRWhRQURBUU9GQUFFQUFZVUdCUUlBQUhaWlFBNEFBQUE2QURvZUdDZ3VFZ2NJR3l1eEJnQkVKU0luSWljbUp6UW5KaWNpQndZVkJnY0dJeUluSmpVME56WTNOak15RnhZZkFSNEJGeFl6TkRNK0F6YytBVGMrQVRjMk14WVZCZ2NHQVpBRkRFb2NDQWdXRHhvRkJBa0xDQXNqSFE0SEFnNGZKek0yTlNjTUNBSUZBUW9MQkFJRkFRSUJDZ0VCQmdjU0RRMHZCUzhodFFKREZ3UUNEQWdEQkFnQ0ZSWWtHUXNOQmdjeEp5Z2pHeVFSQVFFQkFnSURCQUlCQWhJRUFoRW1DUVlGTFVNMElnQUFBUUFrLys4Q0tRTElBRndBVEVCSkJ3RUVDQUVEQWdRRGFRa0JBZ29CQVFzQ0FXa0FCZ1lGWVFBRkJTaE5BQXNMQUdFTUFRQUFKZ0JPQVFCWFZFSkFQRG8yTkRBdUpDRWNHaGNWRVE4TUNnWUVBRndCWEEwSUZpc0ZJaWNtSnlNaUpqVTBOanNCSmpVM0l5SW1OVFEyT3dFMk56WXpGeDRCRlJRR0l5Y1BBUVlIQmc4QkZTTUdCek15RmhVVUJpc0JCaFVVRnpNeUZoVVVCaXNCRnhZWEZoOEJNeFVYRmg4Qk14Y1dId0VXT3dFeUZoVVVCZ2NCNFpwcFBSd3dGQjBkRkJvQ0FSRVVIUjBVSkMxNlVWY2ZGUndiRkNZbEVEb3RFQklHQVJFTDNSUWRIUlQzQVFMK0ZCMGRGT0FRQndNVUVBUUJBaG9aQVFJSkZoWVNGeFlhRlJ3Y0ZSRmZPazhkRkJRZEV4TWNIUlFVSFljK0pnRUNHaFVUSGdFQ0F3c2lEQlVIQVJjWEhSUVVIUWNYRXhFZEZCUWRHd2NHR0F3RUFRRVVDUUVFQndVREFoNFRGQnNDQUFNQUt2K1ZBaFVDZWdBQ0FDWUFjQUNUUUJoZVR3SUFCV29CQndBWEFRSUhiZ0VCQWtjN0FnTUJCVXhMc0IxUVdFQXJBQUlIQVFjQ0FZQUFCQU1FaGdBR0FBY0NCZ2RwQUFBQUJXRUFCUVVyVFFnQkFRRURZUUFEQXlZRFRodEFLUUFDQndFSEFnR0FBQVFEQklZQUJRQUFCd1VBWndBR0FBY0NCZ2RwQ0FFQkFRTmhBQU1ESmdOT1dVQVhLU2RuWlZSU1RreEFQam80TkRJbmNDbHdJU0FKQ0JZckpSWXpBd2NHQnlNVkJnY2pGUVlIRGdFSEJnY0dGUlFYRlRNVlBnRTNOajhCSXdjT0FpTURGekkvQVRZL0FUWS9BVFl6SGdFVkRnRWpJaWNHQndZaklpY21OVFEzTmpjbU5UUTNOak15RnpZM05qTXlGeFlWRkFjR0J3NEJCeFlYRmhVVUJ3WWpJaWNtSndZUEFoWVhBUUVCQkFFQkRRb0JEQThCRFFvQkFnc0RCUU1DQVFNSEVUQTdEQXdEQ1EwRkFnZ1hEQXdNRnhjS0ZCSVdEUlVVSFFLVVVqWXJHQndSR3dzTUdRY2dHaTVhUmxvZkh5WXdEQXdiRUFjWUNnZ0RCeGNoR1FjWkRBd2NEeEFTUHo4VUZRVVZVd0VCY3dFR0NBRUlFd0VTRkFNRElRb2dDaThqRlFNQkNRNGtiV2dUQVFJRUF2Nk1BUUVDQkFnRkNRMFZEd0VkRXlwVUVDd29HQVlRSEF3TExURTZicWRoUmdrckh3Y1pEQXdhRVFVR0F3UVhKeThNREJ3T0J4Z2RHMmVPTEN3Q0JBQUJBRHYvOVFJc0FzWUFlZ0NlUUE1ZkFRVUhJd0VMQkcwQkFRc0RURXV3SmxCWVFDMEFCd2dGQ0FjRmdBa0JCUW9CQkFzRkJHa0FDd0lCQVFBTEFXa0FDQWdHWVFBR0JpaE5Bd3dDQUFBakFFNGJRRFFBQndnRkNBY0ZnQUFDQVFBQkFnQ0FDUUVGQ2dFRUN3VUVhUUFMQUFFQ0N3RnBBQWdJQm1FQUJnWW9UUU1NQWdBQUl3Qk9XVUFmQVFCd2JtbG5ZMkZRVGtKQU9UY3dMaW9vRVE4TkN3b0lBSG9CZWcwSUZpc0ZJaWNqSmk4Q0ppTWlEd0VpQndZaklpY21OVFEvQVRZM05qOEJOamN6TlRZMU55WTFKeVluSXlJbU5UUTJPd0VtTlRRM05qYzJNeklXRnhZVkZBY0dJeUluSmk4QkppY21KeU1tSXlZaklnY2pEZ0VIRlE4REJnY1ZCaFVmQVRNeUZoVVVCaXNCRmhVR0J6WXpNaGN5RnhZWEZoVVVCd1lCK1F3UkFSTVVBZ3hDTnhra0F3MCtLUXdrREFJa0VRb0tCZ01SQ1FJQkJ3RUJBUVFJTnhRZEhSUVpEeWtoUHhzYkxtd3REZzRQRnhNTUhDSUJBZ0VRRUFFR0FnME9EUXNDQkFrRUVRTU1Bd1lEQWdVUHR4UWRIUlNiQ3dFUEdSbEJOZ01DUUNFWkJ4QUxDd2NDQVFFR0JRRU1DQ01IQmlJTkJ3VUhBd01SRHdVQkZ3UW1CZ2NIR3g0ZEZCUWNNREZMUWpZV0NFQThEUlVURUE0T0pSd0JBUUVMQ0FNR0JRTUVBd0VSQkJVSERSTUVDQlF0TXh3VUZCMHdNaW9vQWdVQkJSWVJHUXdNR1FBQkFENy85d0kzQXNVQVZ3QjV0ajByQWdRRkFVeExzQ1pRV0VBaEJ3RUVDQUVEQWdRRGFBa0JBZ29CQVFBQ0FXY0dBUVVGS0UwTEFRQUFJd0JPRzBBbEJ3RUVDQUVEQWdRRGFBa0JBZ29CQVFBQ0FXY0FCZ1lvVFFBRkJTaE5Dd0VBQUNNQVRsbEFIUUVBVkZKT1RFbEhRMEU2T0NJZ0ZoUVFEZ3dLQmdRQVZ3RlhEQWdXS3dVaUppYzFJeUltTlRRMk93RTBOeU1pSmpVME5qc0JKaWNtTHdFbU5UUTNOak15RnhZWEZoY1ZNeFlYTXpVMk56VXpOamMyUHdFMU5qTXlGeFlWRkFjR0J6TXlGaFVVQmlzQkZRWVZNeklXRlJRR0t3RVZGQVlCTUJRY0FZRVVIQndVZ3dLRkZCd2NGRThYRXk0VUhBY1lEQXdjRHhZVU5DTUJDUlFCRUJjQkFnZ21KU0FNSXhzUUJ3TTRWa01VSFIwVWhBS0dGQjBkRklnZENSd1ZYUjBVRkJ3bUpSMFVGQjBkSUUwbk1nc01IUTRIR0NVbVh5OEJEQlFCREIwQkJBbzFSVUVCSXhrS0RBY0lpV3NkRkJRZERSOGZIQlFVSFYwVkhBQUFBQVVBU1FCT0Fna0NEUUFEQUFZQVJBQklBSTRBcjBBVmduZHRYd1FCQmowakFnQUJobHRSVFFRREFBTk1TN0FmVUZoQUhnQUdBQUVBQmdGbkFBQUFBd0lBQTJrRUNBSUNBZ1ZoQndFRkJTVUNUaHRMc0MxUVdFQWtCd0VGQmdJRldRQUdBQUVBQmdGbkFBQUFBd0lBQTJrSEFRVUZBbUVFQ0FJQ0JRSlJHMEFvQUFVSEFnVlpBQWNHQWdkWkFBWUFBUUFHQVdjQUFBQURBZ0FEYVFBSEJ3SmhCQWdDQWdjQ1VWbFpRQmRLU1h4NmRuUnNhVlpVVUU1SmprcU9OVE1VRWdrSUZpc2xNeFlWSnhjbU5SUXpGeFlYRlI4Q0ZoY1dNemMxTXpZL0FUVTJOelErQXpjMU5DNEJKelV2QVNZbk5TWW5KaThDRHdFR0J3NEJGUThCRkJZWEZCY1dId0VVTXlJWElpY21Kd1lqSWljR0J3WWpJaVkxTkQ4QkpqVTBOeWN1QVNjdUFUMEJORFk3QVRJWE5qYzJNamN6TmpNeUZ6WTNOamN5RmhjVUJ3WUhGaGNVQnhjVUh3RVdGUlFHQVFJQkFSa0JBUUVCQmdzQ0FSSUlDUUVVRndFT0NnZ05DZ01FQkFFQ0FRRUNCQWdIQ2dRREdoSVFGQllNREFRSUN3VUZBUWdCQlFzQkFRSHBGUTBaRUNveExpa1dHQThURkIwT0xpTVJBd1FDQVE0ZUhCSUxGaTRSQ0FFREFRSWFIamN6RlJnUUV4TWRBUThVRWlFQ0lnZ0RGZzRkNUFFQkdBSUJBUUVDQmdvQkFRRUpBd0lCQmdFSEJ3VUJDZ3dCQXdnSEJ3Z0VBUVVIQlFFSURBa0hBUUlERUFNRUFRRURBd1FEQ2dNSUVBOFFGUUlCREE4QkFhd09GQnNYR0JnWURoMFVFdzh2TmtBbEl3TUdBUUlSSFJNTEN4dzlDQUlCQVFjWkdoY05BUjBVRkE0VUZTbzFPQ3dPQWdNV0RCTVhIUUFBQUFBQkFDNy9qZ0lZQXJrQU1BQjF0aW9IQWdNQkFVeExzQ1pRV0VBbkFBRUJCR0VHQlFJRUJDSk5BQU1EQkdFR0JRSUVCQ0pOQWdjQ0FBQUVZUVlGQWdRRUlnQk9HMEFqQUFFQkJXRUFCUVVpVFFBREF3UmhCZ0VFQkNKTkFnY0NBQUFFWVFZQkJBUWlBRTVaUUJVQkFDWWtJaDhlSFJjV0VoQUpDQUF3QVRBSUNCWXJCU0ltSnpRbkFpY21KeFlYSGdFWERnRWpJaVluSmljbUp5WTFORGMyTnpZek1oY3pGaGNlQVJVVUJ4WVhGaGNPQVFIYUZCd0JBZ29CRnpRRkF3Z0hBUUVjRkJRY0FRRUhlemNmTUM5Zk1qRVZGQU0yTmhVY0dnTUVCUUVCSEhJY0ZWeGNBWUJjQXdKQlFyUHRkaFVjSEJXTzV3ZFFNRDVkTUNzQ0JnRUZBUUVjRkJzUXdIZXdzQlVjQUFBQUFBRUFPZjhkQWh3Q0l3QkpBSWhMc0JkUVdFQU5NakFPQXdJRFJrSUNCQUlDVEJ0QURUSXdEZ01DQTBaQ0FnVUNBa3haUzdBWFVGaEFJZ0FCQVN0TkFBTURCR0VGQVFRRUprMEFBZ0lFWVFVQkJBUW1UUVlCQUFBbkFFNGJRQ0FBQVFFclRRQUNBZ1ZoQUFVRkkwMEFBd01FWVFBRUJDWk5CZ0VBQUNjQVRsbEFFd0VBUlVOQlB6YzFIQm9MQ1FCSkFVa0hDQllyRnlJbU5SRW5OeEUwTmpNeUZoVVJGaGNXRnhVV0h3RVdId0VXTXpJM01qWXpOamMyTlRZM1BnRTFOamMwUHdFMk5UUTNKelEyTXpJV0Z4WVZGQmNVQmlNaU5RWWpJaWNWRkFackZCMEJBUjBVRkJ3RUF3Y0lEUThDQ3gwTEZoRVVEQUVHQWhFUEF3Z0dBZ1FTQ3dFQkJ3RUJIaE1WR2dFR0JoNFRNamRXU0VrYzR4MFVBWGNQRUFFT0ZCMGRGUDdURHdVTUN3RVBEQUVMRFFRR0JBTUtEd01DQ3cwRkJ3SXRTZ01CRGpGTUJnVVVGUndkRkZ0MmcxWVdHMGcrTDlzVUhRQUFCQUFaLzgwRE53THhBQUlBUXdDQUFKWUFkTEVHWkVSQWFTTUJCUUo0UGdJRUJRSk1BQUlEQlFNQ0JZQUFCUVFEQlFSK0FBa0FCZ0VKQm1rQUFRQURBZ0VEYVFBRUNnRUFCd1FBYVFzQkJ3Z0lCMWNMQVFjSENHRU1BUWdIQ0ZHQ2dVUkVCQU9PaklHV2dwWkVnRVIrWTJFN09TOHVHaGtURVF3S0EwTUVRdzBJRml1eEJnQkVKU00zQnlJbkpqVTBOell6TWhjV0ZSUUdJeUl1QVNjaU5TWWpEZ0VQQVE0QkJ3WUhCZ2NVRmhjV0Z4UXpGaGN5TnpZM01qVS9BVFkxTmpNeUZ4WVZGQWNHQndZSE5qYzJOelkvQVRZM05qVTBKalVtSnlZMUppY21KeVluSmljbUp5WWpJZ1lIQmdjR0R3RUdCeFFPQVFjR0J4UUhCZ2NVRnhRWEZoY1dGek1XRnlJbkppY21OVFEzTmpjMk16SVhGaFVVQndZSEJnSDlBUU5rUXpGU1V6Wk1ZemdtSGhNVEdnVVBBU1F3QWhnTUZoTUJBaFFGQVFFRENoQVRBUXNjR2dRbEtnSUNCQWNOSWhzUUJnSVJQVUEvRFJWYlFqNFJCeElMQndVRERnUUNBZ29PSXhrT0p3TVBMenduRUFnbEhDSWFDeHNQQVFJQkZSQUNHQU1ERmpBbk1Ub0RJZ2RWVDBzd1NVSXdUV1IxbkhCNlVFaVJUTzhDaGlsSWUzMUlMVFlyTUJNY0dTVU9BUklCQXdRTkV3TUNIU1lHSEEwWkloOFNBUWdJQVFnWkFnRUdEQUlrR1FzTEJ3ZytIU1U4QVFNT0hCOFpDUm96T0NzVkt3SVpMUWdDQmdJWUZpNFREUklDQlJJRUFRZ0xFQk1KRmhVQkFRRUNIaUVDQlQwK0poWWFPMWtVSVFvQ1lpVW1SR1dOZkc5Tk1EdG9lODZqVjBnZUV3QUZBQWdCTndIdUF5MEFIQUFmQUd3QWNnQ0dBRjJ4Qm1SRVFGSmRXeGNFQkFBQ0FVd0FBZ1FBQkFJQWdBRUhBZ0FEQkFBRGZnQUdBQVFDQmdScENBRURCUVVEV1FnQkF3TUZZZ2tCQlFNRlVuUnpJU0FDQUlCOWM0WjBoa1JESUd3aGJCSVFDQVlBSEFJY0NnZ1dLN0VHQUVRQklpNEJKdzRCSXlJbUp6UW1OVFEzTmpNeUZ4WVZGQWNYRmhVVUJqYzBJd015TnpZeU56WTNNelkvQVRZM016VTJOelkxTkM4QkppOEJKaThETGdFdkFTWWpMd0VQQXlJSElnWUhCZ2NHSXdjR0R3SUdGUThCRnhZZkJCNEJGek1XRnhZeUZ6Y3lQd0VpQmdjaUppY21OVFEzTmpjMk93RXlGeFlWRkFjR0FUa0JFeDRMQkJzUkZCd0JBek1YR0MwZkZoTVJEaDBrQVl3eERRY0ZBaGNQQVFrSkNRd0VBUWNCQWdNQkF3Z0RBZ1FIRWdJRkN3VUVHZ29CSncwWkNSWUNCQUVDQWdzR0FnSUNDd1lDQndjQkFRRURCUWNQQ0FJRUNBVUNDd3NCQlFLMEFRRUJBUUdLSkdBcE9SQVhOajlQQ1VFNmQxMURBYmtCR1E0U0Zod1ZFQ0lZU2lBTkp4c1lIeFlRRFJNV0hlTUIvdndEQVFFRUJnUUdCeEFLQWhBUUJDRWJHZ2tXRmdVR0JRd1NBUVFGQXdJSUFRSUJCUU1OQkFJQ0NnZ0VCUTRQQkJRY0JnSVhIaElTRkJnSUFRTUVBd1FDQVFFb0FnRUNqQTh0Um1neU1VVXdOQnM4d0lVNElnQUFBQUFCQUFjQm1RSUNBclVBUkFDcVFBNG5Id2NGQkFJRFFEa0NDQUlDVEV1d0NWQllRRGtBQmdVR2hRQUZCQVdGQUFRREJJVUFDQUlCQWdnQmdBQUJCd0lCY0FBSEFBSUhBSDRKQVFBQWhBQURBZ0lEVndBREF3SmhBQUlEQWxFYlFEb0FCZ1VHaFFBRkJBV0ZBQVFEQklVQUNBSUJBZ2dCZ0FBQkJ3SUJCMzRBQndBQ0J3QitDUUVBQUlRQUF3SUNBMWNBQXdNQ1lRQUNBd0pSV1VBWkFRQStQRFkwS3lra0loNGRHUlVSRHd3S0FFUUJSQW9HRmlzQklpWTFORGNHQnhVVUJpTWlKajBCSXk0Qk5UUTJNeGN6TWpjeVB3RXlGek0xTmpNeUZ4WVhOell6TWhjZUFSY1dGUlFIQmlNaUp5WW5JeFVHSXlJbUp3WVZEZ0VCQ3hRZEN4UVVIQlFVSFNRVUhSMFVLRGdhQndNUURCY1FBUTBnRWcwVUVRd05JaUlORFFzTkFnZ09HeUlOQmdRQkRSa1RGd2tDQVJ3Qm1SNGRPemtFQW13VUhSMFVhZ0VjRkJRZEFRSUVBUklCR0E0WkdpTWtKQ3hiTFFjSERBNFdKUlFWQVE0YkRoUXBGQjBBQUFBQUF3QXgvL1VDaGdOUkFDY0FMZ0E4QU50QUNpb0JCQUVFQVFJREFreExzQTlRV0VBakFBWUpBUVVCQmdWbkNBRUVBQU1DQkFOb0FBRUJLRTBBQWdJalRRY0JBQUFqQUU0YlM3QVFVRmhBSmdBQ0F3QURBZ0NBQUFZSkFRVUJCZ1ZuQ0FFRUFBTUNCQU5vQUFFQktFMEhBUUFBSXdCT0cwdXdGVkJZUUNNQUJna0JCUUVHQldjSUFRUUFBd0lFQTJnQUFRRW9UUUFDQWlOTkJ3RUFBQ01BVGh0QUpnQUNBd0FEQWdDQUFBWUpBUVVCQmdWbkNBRUVBQU1DQkFOb0FBRUJLRTBIQVFBQUl3Qk9XVmxaUUIwd0x5Z29BUUEzTkM4OE1Ec29MaWd1SVNBY0d3MExBQ2NCSndvSUZpc1hJaWNtTlRRL0FUWVNOell6TWhjV0h3RVVNeGNXRnhZVkZBY0dJeUluSmljakJnOEJCZ2NHQVNZbkJnY0dCd01pSmpVME5qc0JNaFlWRkFZalloc1BCd0lWTDI1TkR4c2tDMWt0QmdFR1BDWUdHQXNOQmcwWWFPRWdIaE1HRVFzQkxDUWpIQllQRFJJVUhCd1V3eFFjSEJRTEdRc05CZ2Mra3dFaGhoZ2s3bVlQQVJDSFRBd05HZzhIQXdYeVhGdzRFd29IQVhWWldqZzJJaU1CaFIwVUZCMGRGQlFkQUFBRkFBMy83d0ltQXJRQURRQVFBRVVBU0FCckFGWkFVMVJUQWdJRmFUb2RHd1FEQWdKTUFBVUFBZ01GQW1rSUFRQUFBVjhBQVFFaVRRQUdCaXROQ1FFREF3UmhCd29DQkFRbUJFNUtTUkVSQVFCbVpGbFhVbEJKYTBwckVVVVJSUzR0Q0FVQURRRU1Dd2dXS3hNaUpqVTBOanNCTWhZVkZBWWpBVFFuRnpZM05qY3lOVFkzTmpVMk5TNEJKelFqSmljbUp5WW5KaWNtSnlZbkJpTUhCZ2NHQndZSEJnOEJGeFFYRkJjV0Z4WWZBUlkvQVJVREppY21OVFEzTmpNeUZ5YzBOell6TWhjV0Z4WVhNeGNXRlJRR0l5SW5KaWNPQWE0VUhCd1V3eFFjSEJUKy93RjhFaEVsSGdFVUN4RUNBUU1HQVFNTUF3SVBBZ29UQXdJZkl3SUhHQTBQRXhBVkJ3TUJBUUVMQWc0WUJBZ1RFcTRCbTNSQUoxcytVVWhGQXdjS0hnMFBIZ1lFR3dFSkRSd1hFaEFlRENKaUFsSWRGQlFkSFJRVUhmNTZBd0dBQWdZU0pRRVpHeWdXQ1JJTUZSSUJDQklEQkE0QkNBa0JBZ3dDQVFjRkRSUVdLUjRVQWhvYUV4b0NCQjhUQWdZSkNMSUZCUDdzQldGRlRJWmNQQzRiRGc0V0J3L0VxRW9TRFJjU0hCQXBNakU5QUFJQVR3QUpBbndEb3dCakFIMEF6MEFUY1FFR0IwNU5BZ1FGTGdFQkJGa0JBQUVFVEV1d0cxQllRREFJQVFjR0I0VUpBUVlEQm9VQUJBVUJCUVFCZ0FBQkFBVUJBSDRBQlFVRFlRQURBeUpOQUFBQUFtSUFBZ0lqQWs0YlM3QXhVRmhBTFFnQkJ3WUhoUWtCQmdNR2hRQUVCUUVGQkFHQUFBRUFCUUVBZmdBQUFBSUFBbVlBQlFVRFlRQURBeUlGVGh0QU13Z0JCd1lIaFFrQkJnTUdoUUFFQlFFRkJBR0FBQUVBQlFFQWZnQURBQVVFQXdWcEFBQUNBZ0JaQUFBQUFtSUFBZ0FDVWxsWlFCTmxaSFYwYm14a2ZXVjlLU2NzSnk0c0NnZ2NLemNXRng0QkZCY1dNeDRCRnhZek5qYzJOek0zTmpVMEp5WTFORGMyTXpJV0ZSUUhCZ2NHSXlJbkppY21OVFEzTmpjK0FqTXlGeDRCRlJRSEJpTWlKeTRCSnlZbkppY21Kd2NHSXdZSE53WUhGUVlISWhVR0ZSUVhGaFFYSXhjVkZoY25GUk1pTHdFbU5UUTNOak15RnhZWE5qYzJNeklYRmhVVUR3RUd3Z1VHQVFJT0F3SUhEeGNqUXlrb0hCa0NCeFlLQWdnUUdTTVpFQ2R2TkRSMFJVc1JDZ01FTUJsS1ZTcDVVQm9jQkE4Y0hnNERCUkFKRUI0aEdSb1pCQVVqRFFZaUd3OEhBUmdEQVFFQkFRWUdBYVFURDJZWUJ3OGNEQXRPQ1FKVkN3d0hCeVVaWlErdkR3WUJBZ0lNQXdRSUJnb0JCQVFLQkEwU0V4NEhCdzRNRlVraUlTQkZEZ1ltTDE0MFJ5a3FZVk1sTkJoUEdrTVFEQXNiR1FvU0hBd05GQWdGQVFFQkNRVUREUjhCRkJNQlBtQTBMUVFHQWdFRUd4QUJBZ0k3RDA4UEd3MExHUWM1Q2dGQ0J3SU5JeG9RVGc4QUFnQWMvK3NDQXdNREFFWUFZQUNZUUFwVUFRWUhRd0VFQlFKTVM3QU9VRmhBTUFnQkJ3WUhoUW9CQmdFR2hRQUNBd1VEQW5JQUJRUURCUVIrQUFNREFXRUFBUUVsVFFBRUJBQmlDUUVBQUN3QVRodEFNUWdCQndZSGhRb0JCZ0VHaFFBQ0F3VURBZ1dBQUFVRUF3VUVmZ0FEQXdGaEFBRUJKVTBBQkFRQVlna0JBQUFzQUU1WlFCMUlSd0VBV0ZkUlQwZGdTR0EvUGpVMEhCc1RFUXNLQUVZQlJnc0lGaXNGSWljbUp5WTFORGMyTnpJWEZoVVVCd1lqSWk4Qk5TY21KeVluSWdjR0J3WUhCZzhCQmhVR0ZSUWZBUllmQVJZWE1oWWZBVDhCTmo4Qk5qYzJOell6TWhjV0ZRWUhCZ01pTHdFbU5UUTNOak15RnhZWE5qYzJNeklYRmhVVUR3RUdBU3hQUldBWUJFeFRmb0pCQnhrTURSd05EQlVHRUFrb01Eb1JHUUVDRlFnRkNBSU1BUWtOQWh3eEF3SW5EUjBTRmhRQkJBTUZFZ3NOQmdjakJEQXpjaE1QWmhnSER4d01DMDRKQWxVTERBY0hKUmxsRHhVdVFuRVlHRmxhWGdwdkRBd2NEd1lZRWdFVkJnY0dBeVVLSGdJQkd4Y09IZ2dFQ3hJaEFSVVNBU0lhQWdvQkFnWU1Id1FKQ3hNS0J3SUxKVFl5TlFKZkQwOFBHdzBMR1FjNUNnRkNCd0lOSXhvUVRnOEFBQUlBWC8vMEFqTURVUUF3QUQ0QVJVQkNBQWNKQVFZQkJ3Wm5BQU1BQkFVREJHY0FBZ0lCWHdBQkFTSk5BQVVGQUY4SUFRQUFJd0JPTWpFQkFEazJNVDR5UFNra0lSOGJHUmNWRVE0QU1BRXRDZ2dXS3hjaUppY21Md0UwTnpZM05EWTNOak1oTWhZVkZBWWpJUVlITXpJV0ZSUUdLd0VHSFFFMk56WXpNaFlWRkFZakRnRURJaVkxTkRZN0FUSVdGUlFHSTZJUkdnVVJBUUVJQ0FJVUVBOFhBVWdVSEJ3VS9zOENCcmNVSFIwVXZRUkZSRlJVRlJ3Y0ZWU25EaFFkSFJUQ0ZCMGRGQXdVRUE4WVlITnllWG9SR2dRVEhSUVVIV0ZpSFJRVUhGTlROd0VEQkIwVUZCd0JCd0w2SFJRVUhSMFVGQjBBQUFBQUF3QVIvKzRDSHdLMEFETUFZZ0J3QUZsQVZnQUZBZ01DQlFPQUN3RUdBQUlGQmdKbkRBRUlDQWxmQUFrSklrMEFCd2NCWVFBQkFTVk5CQUVEQXdCaENnRUFBQ3dBVG1Sak5UUUJBR3RvWTNCa2IwOU5OR0kxWVMwcktTWWxKQklQQ1FjQU13RXpEUWdXS3dVaUp5WTFOamMyTXpJWEZoY1dGUlFoSWljZkF4VVdId0l5SGdFWEZoY3lId0V5TnpJMU1qYzJNeklYRmhVVUJ3WURNamMyTXpRek5qY3pOQ2MwSnpVbUp6VW1Md0VtTHdFbUx3RWlEd0VHQnlJSEl3WVBBUVlIRlJRakRnRUhGZ01pSmpVME5qc0JNaFlWRkFZakFUK0JYVkFHWjFGYllFSkFEd1QrOTB4S0FnY01DUkVWQlNNQkJBUUJEaElGQWg0VEV3VWdTQWNJQ3c0V0pGbU5QRHdFQlFJZkZ3RUtBZ2tIQ0FvQ0RRMEZFUkVnRmdvZkhSNERBd0VIQmd3TUJnRUVCQUpURUJRZEhSVENGQjBkRkJKaFduaUFTalEwTmxrTkRYSUVCdzRWREFFVEVnUVVBZ0VCQlFRQkFnSUJIUU1KRGhzZ0R5UUJSUVVCQVFNS0N4c0RBZ0VTQ0FFS0NBSUtCUUlIQWdJQ0NBWVdCUVlIREJJTUFRRUtFd2NEQVI4ZEZCUWRIUlFVSFFBQ0FDSC9DQUtxQXJnQVlRQitBS2xBRDFVdEFnVUhTUUVFQlhzQkNBa0RURXV3RUZCWVFEUUFBZ01IQXdKeURBRUlDUWlHQUFjR0FRVUVCd1ZwQUFvQUNRZ0tDV2tBQXdNQllRQUJBU0pOQUFRRUFHRUxBUUFBSXdCT0cwQTFBQUlEQndNQ0I0QU1BUWdKQ0lZQUJ3WUJCUVFIQldrQUNnQUpDQW9KYVFBREF3RmhBQUVCSWswQUJBUUFZUXNCQUFBakFFNVpRQ0ZqWWdFQWQzWnljV0orWTM1YldWSlJVRTQ1TnlRZkZCSU1DZ0JoQVdFTkNCWXJJU0luSmpVME56NEJOell6TWhjV0ZSUUhCaU1pSnlZbklpY21KeUltSnk0Qkl5SUhJZ2NHQnc0QkJ3WVBBVGNHRlJRWE1oVVdGeFl6TWpjeU56WTNNamMrQWpNM05EYzJOeVkwSmljbUl3WUhJaWNtTlRRMk56WXpNaGNXRlJRSEJnVWlKeVkxTkQ4Qk1qWTFOalUwSnlJdUFUVTBOak1XRnhZVkJnY0dBWXVvVW5BbEpvZFpGaFpzTXcwTER4VWhEUUlMQVFFRkJ3SUxBaE1CQWhNR0hqTW5MQUVGQ0N3S0FnRUNEZ0VlUENSMVREVURBeEFGQkFZQkFnRUJDZ0lMQVFFQ0FoaDFLeW9aRHdnQ0R4aGZmajgwRno3K3p4b1BCeGdPQWhFRUJ3RVFIQnNXTWlBUkNVb05SV09JVGt0VGZ4Z0ZYeFVTRUE0UkhRVVNBZ2NHQ1FFRkFRRWhHRFVDQlF3K1FRZ0NDUjRqSXdFK0tSa1ZBZ2dGQ0FJQ0FoRURBeEVhQWdNQ0F4MEJCQlVPRHdNVkRCRXJJMEVqTUh6NEdBc05IQTRKRWdjSkJRZ0JBUmtXRWg4RktCa29WaW9HQUFBQUFBTUFJdjhoQWljREFnQXVBSUFBclFEcFFCV25rd0lJQ1c4QkFBWWpEdzREQVFCZEFRVUJCRXhMc0NSUVdFQTBBQWtJQ1lVQUNBWUloUUFEQlFRRkF3U0FBQUFBQm1FSEFRWUdLMDBLQVFFQkJXRUFCUVVqVFFBRUJBSmhDd0VDQWljQ1RodExzQzFRV0VBeUFBa0lDWVVBQ0FZSWhRQURCUVFGQXdTQUJ3RUdBQUFCQmdCbkNnRUJBUVZoQUFVRkkwMEFCQVFDWVFzQkFnSW5BazRiUURZQUNRZ0poUUFJQndpRkFBY0dCNFVBQXdVRUJRTUVnQUFHQUFBQkJnQm5DZ0VCQVFWaEFBVUZJMDBBQkFRQ1lRc0JBZ0luQWs1WldVQWZNQzhBQUtHZ2pZeHpjVzFyWW1CSFJEbzRMNEF3Z0FBdUFDNFhGZ3dJRmlzbE56WTNOajhCTmpjMk56WTNOamNuSmljdUFTY21Md0VIQmdjakJnY0dEd0VPQVE4QkZCY1ZGaGNXSHdFV0Z4TWlKeVluSmpVME56WXpNaGNWRnhZWEZoY1dNaFlYTXpJM09nRTNOamN6TmpNMk56TTNOVE0yUHdFMlB3SUdCd1lqSWljbUp5WTFORGMrQVRNeUh3RTBOak15SGdFVkJ4UVhGaFVVQndZSEJoTUhJd1lIQmhVR0J3WUhCaU1pSnlZbkpqVTBOelkzTmpjMlB3STJOell6TWhjV0Z4WVZGQWNHQndZSEFRWUJGaFVkR1FFaEZnSUJEQWtGQndRSkJnOGZEaE1URmdZUERnRVZFaGNUQnhnYUJnRUJBd1lMRmdzVkdSOHhMME1wQnhnTURCb1JGZ2tTQ3hvQkJRZ0REaGtJQWdVU0dnZ0NBd1FRRUFFVkFRa0lCQWNFQVFNOFVDQWdJQ0JLS2lJTUhaeFhRemdGSFJRVUhBSUJCQU11SlRwSFBRTUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5ERmdCQXdrTkV3RWFIUUlDRUJJSUZWRVRDUjhsQ2d3RkFRRUNCZ29ORXhjS0lVQWlHQXdMQXhFUUdSWUpEd1QreVJFWU9nc01IQThIR0FFVkJna0ZCUUVCQVFJRUJnVURDQXdWQVE4UUN4a2FCakE3R1FvS0cwUTJSaXNvYVpndUJCb2RIQ3dYTDFWTVFVS2RUelljSXdOd0FnWUZBUUVDQVJnWEJ3SUhFQXdOQmdjU0N3a0tBd0lNQkJjWEJ3SUdFUXNOQmdjVENnb0tBQUlBQmYvdEFTZ0RVUUFjQUNvQVU3WVlFQUlBQVFGTVM3QXhVRmhBRlFBREJRRUNBUU1DWndBQkFTaE5CQUVBQUN3QVRodEFGUUFEQlFFQ0FRTUNad0FCQVFCaEJBRUFBQ3dBVGxsQUV4NGRBUUFsSWgwcUhpa05EQUFjQVJ3R0NCWXJGeUltSnlZbkpqVTBOelkzTmpNWEZoVVVCZzhCQmhVVUZ4WVhEZ0VESWlZMU5EWTdBVElXRlJRR0k1MFVIQUVCQ0FvVkJSSU1EUXdqQWdnQ0Jna0pBUUVjZkJRY0hCVERGQndjRkJNY0ZHcHJjM0pwYUJNS0JnRU1KQVlOTGhJMlRENlRhMndVSEFNQ0hSUVVIUjBVRkIwQUF2L28vL0VCQ3dLMEFCMEFLd0FzUUNrQ0FRQUJBVXdFQVFJQ0ExOEFBd01pVFFBQkFTdE5BQUFBSmdCT0h4NG1JeDRySHlvbkZ3VUlHQ3MzRmhVVUJnY0dJeUltSnk0Qk5UUTJNeklXSFFFVUZ4WWZBaFFYRmdNaUpqVTBOanNCTWhZVkZBWWp3Z0VPRlFZRkRSOEZFZ2dkRkJRZEF3SUZCZ0lCQWFnVUhCd1V3eFFjSEJRdUJnWU5IQWNCRHhSNTZYa1VIUjBVTkZ4V09qbzZEZ01EREFJWEhSUVVIUjBVRkIwQUFBSUFadjhJQW1nQ3dnQS9BRndBdFV1d0cxQllRQTAxSWhJT0JBWUNXUUVFQlFKTUcwQU5OU0lTRGdRQkFsa0JCQVVDVEZsTHNCdFFXRUFjQ0FFRUJRU0dBQVlBQlFRR0JXa0RBUUlDSWswQkJ3SUFBQ01BVGh0THNCOVFXRUFnQ0FFRUJRU0dBQVlBQlFRR0JXa0RBUUlDSWswQUFRRWpUUWNCQUFBakFFNGJRQ1FJQVFRRkJJWUFCZ0FGQkFZRmFRQURBeWhOQUFJQ0lrMEFBUUVqVFFjQkFBQWpBRTVaV1VBWlFVQUJBRlZVVUU5QVhFRmNMQ29mSFJnV0FEOEJQd2tJRmlzRklpY21Md0VtTHdFdUFpY21KeU1IQmc4QkZSUUdJeUltTlJFME5qTXlGaDBCTmpjMk56WS9BVFl6TWhjV0ZSUUhCZ2NHQng0QkZ4WVhGaFVVQndZRklpY21OVFEvQVRJMk5UWTFOQ2NpTGdFMU5EWXpGaGNXRlFZSEJnSTNIQTh6TVFvZldSUURCZ1FCRVF3QkFnZ1NBaDBVRkIwZEZCUWRRVW9sR1I0Z0NoTWFEUTBZQ0R4VVFUUW1jaDFJT1FjWkRQN2hHZzhIR0E0Q0VRUUhBUkFjR3hZeUlCRUpTZzBMR1ZkQ0RTTkhFUU1FQXdFTkJRUUpIZ1B3RXgwZEV3SmJGQjBkRk0xRE1SZ1ZHaU1MSFFnUUdnME1SVHd5THhsZUlsbGtEQXdjRHdmdEdBc05IQTRKRWdjSkJRZ0JBUmtXRWg4RktCa29WaW9HQUFBQ0FFdi9DQUlFQXVnQUxnQkxBS3hBRENrYkRRTUdBa2dCQkFVQ1RFdXdIVkJZUUNBSUFRUUZCSVlBQmdBRkJBWUZhUUFCQVNSTkFBSUNLMDBEQndJQUFDTUFUaHRMc0NaUVdFQW5DQUVFQlFTR0FBWUFCUVFHQldrQUFRRUFZUU1IQWdBQUkwMEFBZ0lyVFFNSEFnQUFJd0JPRzBBbkNBRUVCUVNHQUFZQUJRUUdCV2tBQVFFQVlRTUhBZ0FBSTAwQUFnSUFZUU1IQWdBQUl3Qk9XVmxBR1RBdkFRQkVRejgrTDBzd1N5UWlGQklKQndBdUFTNEpDQllyRnlJbU5RSVJORFl6TWhZVkVCYzJOelkzTmpjeUZoY1VCd1lQQVJZZkFSWVhGQVlqSWk4QkppOEJCaU1WRkFZWElpY21OVFEvQVRJMk5UWTFOQ2NpTGdFMU5EWXpGaGNXRlFZSEJuMFVIQUljRkJRZEFpY21WV0FRRXhRY0FROWdWUjFoVGc0TkFSMFdFdzBQWno0SkxnSWRheG9QQnhnT0FoRUVCd0VRSEJzV01pQVJDVW9OQ3gwVUFVb0JSeFFkSFJUK3Qwd29LVjFSRFFFY0ZCVU9VVjRlVUdNUkVCTVRIUTRSZlM4R0xIY1VIZTBZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNId1VvR1NoV0tnWUFBQUlBWS84SUFpd0NzQUF4QUU0QWtVdXdFRkJZUUF3YUZoUURBZ0ZMQVFRRkFrd2JRQXdhRmhRREF3RkxBUVFGQWt4WlM3QVFVRmhBSUFnQkJBVUVoZ0FHQUFVRUJnVnBBQUVCSWswREFRSUNBR0VIQVFBQUl3Qk9HMEFuQUFNQkFnRURBb0FJQVFRRkJJWUFCZ0FGQkFZRmFRQUJBU0pOQUFJQ0FHRUhBUUFBSXdCT1dVQVpNeklCQUVkR1FrRXlUak5PS2lra0loQU9BREVCTVFrSUZpc0ZJaWNtSnlZMU5EYzJOelkzTkRZek1oWVZCZ2NHQndZVkZoY1VGeDRCTXhZWEZqTXlOejRCUHdFeUZ4WVZGQVlIQmdjaUp5WTFORDhCTWpZMU5qVTBKeUl1QVRVME5qTVdGeFlWQmdjR0FVMUpSRVFPQ3dFSUJ3WUNIQlFVSFFFS0JnUUNBZ0lLQVF3Q0JRd1lUQzB4RGh3UEN3NE9GeEFVYW5vYUR3Y1lEZ0lSQkFjQkVCd2JGaklnRVFsS0RRTWZLRXc1TnhNU3BFWTRPQlFkSFJSUFQybzRKeWdrRVF3YkJ4TUZCUkFHQXdNREFRZ0xIZ3dlQkJUMUdBc05IQTRKRWdjSkJRZ0JBUmtXRWg4RktCa29WaW9HQUFJQVB2OElBUDBDNkFBY0FEa0FZYlUyQVFNRUFVeExzQjFRV0VBZUJnRURCQU9HQUFVQUJBTUZCR29BQWdJa1RRQUFBQUZoQUFFQkl3Rk9HMEFlQUFJQUFvVUdBUU1FQTRZQUJRQUVBd1VFYWdBQUFBRmhBQUVCSXdGT1dVQVFIaDB5TVMwc0hUa2VPU1kwSWdjSUdTczNGaGNXTWhZVkZBWXJBU0luSmpVUk5EWXpNaFlWRUJjekZ5TVdNd01pSnlZMU5EOEJNalkxTmpVMEp5SXVBVFUwTmpNV0Z4WVZCZ2NHcHdRSkFpc2NIQlVMS3lVekhSUVVIUUVCQWdFREFpUWFEd2NZRGdJUkJBY0JFQndiRmpJZ0VRbEtEVjRDQVFJZEZCTWRGQ0ZIQWtNVUhSMFUvYkVHQWdQK3F4Z0xEUndPQ1JJSENRVUlBUUVaRmhJZkJTZ1pLRllxQmdBQUFBSUFZdjhJQXBFQ3ZnQXhBRTRBUkVCQkxDUVNBd1lCU3dFRUJRSk1DQUVFQlFTR0FBWUFCUVFHQldrQ0FRRUJLRTBEQndJQUFDTUFUak15QVFCSFJrSkJNazR6VGlrbkh4ME1DZ0F4QVRFSkNCWXJGeUltSnpZM05qYzBOell6TWhZWEZoY1dGeFF6RlRZL0FUWTlBVDRCTXpJV0hRRVVCd1lIQmlNaUp5WW5Cd1lIRGdFWElpY21OVFEvQVRJMk5UWTFOQ2NpTGdFMU5EWXpGaGNXRlFZSEJwTVVIQUVERWcwSEdBd01JaHdRTTJVME1RRUxDQU1TQVJ3VUZCMExDaThNSXlkVGNsTUdFd0lCSEgwYUR3Y1lEZ0lSQkFjQkVCd2JGaklnRVFsS0RRY2RGTEN2Z29NYkR3WkNJSHkwWFQ4QkFUTXpHNUhWR1JRY0hCUW1qWXlkbFNOM3BibEdyN0FVSGZFWUN3MGNEZ2tTQndrRkNBRUJHUllTSHdVb0dTaFdLZ1lBQUFBQUFnQk0vd2dDSlFJcEFEWUFVd0NXUzdBdFVGaEFEaWdCQVFNYkFRY0JVQUVGQmdOTUcwQU9LQUVCQXhzQkFnRlFBUVVHQTB4WlM3QXRVRmhBSVFrQkJRWUZoZ0FIQUFZRkJ3WnBBQUVCQTJFRUFRTURLMDBDQ0FJQUFDTUFUaHRBSlFrQkJRWUZoZ0FIQUFZRkJ3WnBBQUVCQTJFRUFRTURLMDBBQWdJalRRZ0JBQUFqQUU1WlFCczROd0VBVEV0SFJqZFRPRk1yS1NjbElCNFVFZ0EyQVRZS0NCWXJCU0ltTlRRMk55WW5KalVtTHdFbUp5WWpKaU1HQndZSEJnY0dCeEVVQmlNaUpqVVJORFl6TWhjMk16SVhGaGNXRlJRSEJnY1VCZ2NpSnlZMU5EOEJNalkxTmpVMEp5SXVBVFUwTmpNV0Z4WVZCZ2NHQWVrVEhRb0JBeEVCQ2dRQkh5NGFDQVFsRHhvUUFnNExBZ1VjRkJRZEhSUWJEekpCTUM5QUxUOEZCUUVkMlJvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTkJSd1VLV0EzVnlzQkFoSUZBaVlPQ0FJQkNna0NDUlVMQ1A2eEZCMGRGQUhFRkIwYUhSSVhNeit0TUNVMUxCUWM4eGdMRFJ3T0NSSUhDUVVJQVFFWkZoSWZCU2daS0ZZcUJnQUFBQUFDQURmLzlRSXdBNk1BU2dCa0FGdEFXRmdCQmdkSEFRSUJBa3dJQVFjR0I0VUtBUVlEQm9VQUJBVUJCUVFCZ0FBQkFnVUJBbjRBQlFVRFlRQURBeWhOQUFJQ0FHSUpBUUFBSXdCT1RFc0JBRnhiVlZOTFpFeGtNUzhwSnlNaEVBNEtDQUJLQVVvTENCWXJCU2N1QVNjbU5UUTJOeklYRmhjV016STJNelkzTmpVbU5TWW5KalUwTnpZM05qTXlGeFlWRkNNaUpqVTNOQ2NtSXlJSEJnY0dCdzREQnhRV0ZSNEJGUllYRmhjV0ZRWUhCZ01pTHdFbU5UUTNOak15RnhZWE5qYzJNeklYRmhVVUR3RUdBVm9VVDM4ekRod1VGQTlLVFNnSURnVUVQQ2tDQVJ5SjFpd3lSVEkwWnowd01oTWVBUkU0SHpvcUl3c0VFUUlGQWdJQkF3c0NObDRrSkpFS1AwWnVGQTlsR0FjT0hRd0xUUW9CVmdzTUJ3Y2xHV1VRQ3dFTVl6c1FGUkljQVE1WEt3NEJGRGdJQndJRU9EaGFmRHN2TWhVU1B6bEhTeHNUSWg4V0l4TVBDd01SQkFjR0JRY0pCd0lSQXdFMUpoQVRTR3RMTFR3QzlROVBEeHNOQ3hrSE9Rb0JRZ2NDRFNNYUVFNFBBQUFBQUFRQUwvL21BY01EQXdBQ0FBVUFaUUIvQUY1QVczTUJCZ2RUQVFRRkpRRUNBUU5NQ2dFR0J3TUhCZ09BQUFFRUFnUUJBb0FJQVFjQUJBRUhCR2tBQlFVRFlRQURBeXROQUFJQ0FHRUpBUUFBTEFCT1oyWUhCbmQyY0c1bWYyZC9TMHBEUVRrM0hCb1JEd1psQjJVTENCWXJFek0xQnlJMUV5SW5KaWNtTlRRM05qTXlGeklWRmhjVkZoY1dNelkzTXo0Qk5UWTNOamNuSmk4QklpY21KeVluSmljbU5UUTNQZ0V6TWhjV0Z4WVZGQWNHSXlJbk5DTW1KeU1tSndZakJnY0dCd1lWRnljWEZoY2VBUmNlQVJjV0Z4WVZGQWNHQXlJdkFTWTFORGMyTXpJWEZoYzJOell6TWhjV0ZSUVBBUWFyQVFVQlUwazRNaFVDQ1E0YUlnMEJCQWNXRXhnZ0h4VUNDeGdEQWdVQ0F3WUtGd0lFRGpZaUlUa2lFQWtXWlQwekt6b1hBZ2dPR3lJTkFnZ1dBUk1vQWdNWUd3c05Bd1lCQlFrSkFnWURIanNkTnlnbExqcGlGQTlsR0FjT0hRd0xUUW9CVmdzTUJ3Y2xHV1VRQVp3Qk1nSCtlaWNrT1FjSERBNFdKQUVLQ0FFV0NBc0JDUVVUQXdRRkJSZ2FEUW9OQWdZUENBd1NNQjhoR0JrMlFob29Rd2NIREE0V0pBUVVGZzRDQVFNVENCVU5FZ29EQlFZRUFnSUJDdzRKRUNndE9VVXhPd0prRDA4UEd3MExHUWM1Q2dGQ0J3SU5JeG9RVGc4QUFBQUFBZ0JkLyt3Q2JnTlJBRWtBVndDVlFBazZPRFVTQkFJQkFVeExzQlJRV0VBYkFBVUhBUVFCQlFSbkF3RUJBU0pOQUFJQ0FHRUdBUUFBTEFCT0cwdXdHVkJZUUI4QUJRY0JCQU1GQkdjQUF3TWlUUUFCQVNKTkFBSUNBR0VHQVFBQUxBQk9HMEFpQUFFREFnTUJBb0FBQlFjQkJBTUZCR2NBQXdNaVRRQUNBZ0JoQmdFQUFDd0FUbGxaUUJkTFNnRUFVazlLVjB0V1FrQWtJZ3dLQUVrQlNRZ0lGaXNGSWljbUp5WTFOQ2MwTmpNeUZoY1dGUlFYRkJjV0Z4UVhGQjhCRmhjV0Z4WXlGak15TndjeU5qTTNNalkzTmpVMk56UStBVFUyTlNjbUp5NEJOVFEzTmpNeUZoY1dGUlFIQmdFaUpqVTBOanNCTWhZVkZBWWpBWElwSjRja0dBSWRGQlFiQVFJSUhnWVBCQnNDQ0JZUkVRRUZFZ1VFRkFFQ0F3RVNBUUVXQXpJTkFRSUlBUWdDQVFJSUN4NE1IZ1VQS3o3Kzd4UWNIQlRERkJ3Y0ZCUVBNYVJvbzJJNEZCd2NGRFpVZ1Rna1dRNFlBZ1FGR0FFSUNRY0RBUUVFQVFJTEFSWURBa2x6QVFRSENVQk5Na0llQWdvSER3OFdFQlJpV3F1RXRnTURIUlFVSFIwVUZCMEFBZ0F5LytNQ0pRSzBBRUFBVGdFZlM3QVVVRmhBRFRNVkR3VUVBd0lEQVFBREFrd2JRQTB6RlE4RkJBTUNBd0VCQXdKTVdVdXdFRkJZUUI0SUFRVUZCbDhBQmdZaVRRUUJBZ0lsVFFBREF3QmhBUWNDQUFBc0FFNGJTN0FVVUZoQUlnZ0JCUVVHWHdBR0JpSk5BQVFFSzAwQUFnSWxUUUFEQXdCaEFRY0NBQUFzQUU0YlM3QXFVRmhBSmdnQkJRVUdYd0FHQmlKTkFBUUVLMDBBQWdJbFRRQURBd0ZoQUFFQkprMEhBUUFBTEFCT0cwdXdMVkJZUUNrQUFnUURCQUlEZ0FnQkJRVUdYd0FHQmlKTkFBUUVLMDBBQXdNQllRQUJBU1pOQndFQUFDd0FUaHRBS1FBQ0JBTUVBZ09BQ0FFRkJRWmZBQVlHSWswQUF3TUJZUUFCQVNaTkJ3RUFBQVJoQUFRRUt3Qk9XVmxaV1VBWlFrRUJBRWxHUVU1Q1RUYzFJaUVURVFvSUFFQUJRQWtJRmlzRklpWTFOalVHQndZaklpY21OVFEzUGdFek1oWVZCd1lWRkJjZUFSY1dGeDRCRnpJM05qOEJJejhCTmpjMk56WTFORDhCUGdFek1oWVZCeFFXRlJRSEJnRWlKalUwTmpzQk1oWVZGQVlqQWU4U0h3WWhPekEzUUM5Z0N3RWJGUk1lQlFjWEJBWUZBUTBKRlNNSEJ4TU1EUUVXQVJVUEh3MEJBZ2tCR3hVVEhnRVFFeEQrckJRY0hCVERGQndjRkIwY0ZESXlRaWNlSDBmRk1wTVZIQndWUVQ0L1hqb0lEQVlDRFFVS0FRTUVDUWtXQWg4Z1Zsc0JBd2tEYmhVY0hCVTRUcFpLZ3hVUEFtOGRGQlFkSFJRVUhRQUNBQzcvOHdKT0E2TUFNZ0JNQVFwTHNCOVFXRUFPUUFFR0J5QUJBUUlrQVFRQkEwd2JRQTVBQVFZSElBRUJBaVFCQkFVRFRGbExzQmRRV0VBa0NBRUhCZ2VGQ2dFR0FnYUZBQUVCQW1FREFRSUNJazBGQVFRRUFGOEpBUUFBSXdCT0cwdXdIMUJZUUNnSUFRY0dCNFVLQVFZREJvVUFBZ0lpVFFBQkFRTmZBQU1ESWswRkFRUUVBRjhKQVFBQUl3Qk9HMHV3TVZCWVFDNElBUWNHQjRVS0FRWURCb1VBQkFVQUJRUnlBQUlDSWswQUFRRURYd0FEQXlKTkFBVUZBRjhKQVFBQUl3Qk9HMEFzQ0FFSEJnZUZDZ0VHQXdhRkFBUUZBQVVFY2dBREFBRUZBd0ZvQUFJQ0lrMEFCUVVBWHdrQkFBQWpBRTVaV1ZsQUhUUXpBZ0JFUXowN00wdzBUQ3NvSnlVZEdoa1hFdzBBTWdJdkN3Z1dLd1VpSmljbU5UUTNOajhCTmpjbUl5SUhCZ2N1QVRVME5qYzJOell6TWhjV0ZSUUhCZ0VXTXpJM05qY3lGaFVVQmdjaUJnTWlMd0VtTlRRM05qTXlGeFlYTmpjMk16SVhGaFVVRHdFR0FROE5ZRkVqRHFWR0VWdzJHaTBsSkkxTkZCd2NGRkJQVmlLd0V3WUNTdjdKS2pJcVUwTkVGUndjRlVLSEZ4TVBaaGdIRHh3TUMwNEpBbFVMREFjSEpSbGtFQTBCRmcwaUVoR3dYaFY0YXdJQ0NnRUJIQlFVSEFFQkJnWWpEQXdIQjlIK3JBVUdCQUVkRkJRY0FRa0M5dzlQRHhzTkN4a0hPUW9CUWdjQ0RTTWFFRTRQQUFBQ0FBci84QUhYQXdNQU13Qk5BSjFMc0JKUVdFQU9RUUVGQmdvQkJBRUZBUUFFQTB3YlFBNUJBUVVHQ2dFQ0FRVUJBQVFEVEZsTHNCSlFXRUFqQndFR0JRYUZDUUVGQXdXRkFnRUJBUU5mQUFNREpVMEFCQVFBWUFnQkFBQWpBRTRiUUNvSEFRWUZCb1VKQVFVREJZVUFBZ0VFQVFJRWdBQUJBUU5mQUFNREpVMEFCQVFBWUFnQkFBQWpBRTVaUUJzMU5BTUFSVVErUERSTk5VMHNKeUlkRmhVTkRBQXpBekFLQ0JZckZ5SW5KaThCTkRjK0FUOEJKeUlQQVNJVkJnY0dJeUluSmpVME5qYzJNeklXTXhZWEZoVVVBVE0zTmpNZUFSVVVCZ2NpQndNaUx3RW1OVFEzTmpNeUZ4WVhOamMyTXpJWEZoVVVEd0VHOEZ0Ykl3d0JEV0c3Q2dSSlVCd01CQk1TQmdjTkRoWVFGRnRjTEZjckd3OEgvc28zYlRJekZCMGRGRE15VVJNUFpoZ0hEaDBNQzAwS0FWWUxEQWNISlJsbEVCQUdBaUlORXc5ejZ3OEVBUVVCQVFJRUFRY05HdzBlQlJFREFSY05EeHIraGdFQkFSd1VGQndCQVFKWkQwOFBHdzBMR1FjNUNnRkNCd0lOSXhvUVRnOEFBQUFCQUFVQzd3RW9BMUVBRFFBbnNRWmtSRUFjQUFFQUFBRlhBQUVCQUY4Q0FRQUJBRThCQUFnRkFBMEJEQU1JRml1eEJnQkVFeUltTlRRMk93RXlGaFVVQmlNMUZCd2NGTU1VSEJ3VUF1OGRGQlFkSFJRVUhRQUFBd0F4Ly9VQ2hnT2ZBQ2NBTGdCYkFOdEFDaW9CQkFFRUFRSURBa3hMc0E5UVdFQWtBQVVHQllVQUJnRUdoUWdCQkFBREFnUURhQUFCQVNoTkFBSUNJMDBIQVFBQUl3Qk9HMHV3RUZCWVFDY0FCUVlGaFFBR0FRYUZBQUlEQUFNQ0FJQUlBUVFBQXdJRUEyZ0FBUUVvVFFjQkFBQWpBRTRiUzdBVlVGaEFKQUFGQmdXRkFBWUJCb1VJQVFRQUF3SUVBMmdBQVFFb1RRQUNBaU5OQndFQUFDTUFUaHRBSndBRkJnV0ZBQVlCQm9VQUFnTUFBd0lBZ0FnQkJBQURBZ1FEYUFBQkFTaE5Cd0VBQUNNQVRsbFpXVUFaS0NnQkFGRlBQVHNvTGlndUlTQWNHdzBMQUNjQkp3a0lGaXNYSWljbU5UUS9BVFlTTnpZek1oY1dId0VVTXhjV0Z4WVZGQWNHSXlJbkppY2pCZzhCQmdjR0FTWW5CZ2NHQndNbkppY21KeVkxTkRjMk56WXpNaGNXSHdJV0Z4WVhGaGNXRlJRSEJnY0dJeUluSmljbUp6UW5KaWNqWWhzUEJ3SVZMMjVORHhza0Mxa3RCZ0VHUENZR0dBc05CZzBZYU9FZ0hoTUdFUXNCTENRakhCWVBEVEFEREEwUUJnSUhDaFFIQmd3TEh4NEVFQU1ERFF3UkJnSUhDaFFIQnd3TEhoNENBd0VJQndFTEdRc05CZ2Mra3dFaGhoZ2s3bVlQQVJDSFRBd05HZzhIQXdYeVhGdzRFd29IQVhWWldqZzJJaU1CeEFJS0Nnb1RCd1lOQ3hFR0FnY1hGd1FNQWdNS0NRc1NCd1lOREJBSEFnY1hHQUVDQVFFRkJnQUFBQVVBRGYvdkFpWURBZ0FDQURjQU9nQmRBSW9BVVVCT1JrVUNBQU5iTEE4TkJBRUFBa3dBQmdjR2hRQUhCQWVGQUFNQUFBRURBR2tBQkFRclRRZ0JBUUVDWWdVSkFnSUNKZ0pPUERzREE0QitiR3BZVmt0SlJFSTdYVHhkQXpjRE55QWZDZ2dXS3pjMEp4YzJOelkzTWpVMk56WTFOalV1QVNjMEl5WW5KaWNtSnlZbkppY21Kd1lqQndZSEJnY0dCd1lQQVJjVUZ4UVhGaGNXSHdFV1B3RVZBeVluSmpVME56WXpNaGNuTkRjMk16SVhGaGNXRnpNWEZoVVVCaU1pSnlZbkRnRURKeVluSmljbU5UUTNOamMyTXpJWEZoOENGaGNXRnhZWEZoVVVCd1lIQmlNaUp5WW5KaWMwSnlZbkkzQUJmQklSSlI0QkZBc1JBZ0VEQmdFRERBTUNEd0lLRXdNQ0h5TUNCeGdORHhNUUZRY0RBUUVCQ3dJT0dBUUlFeEt1QVp0MFFDZGJQbEZJUlFNSENoNE5EeDRHQkJzQkNRMGNGeElRSGd3aVlwTUREQTBRQmdJSENoUUhCZ3dMSHg0RUVBTUREUXdSQmdJSENoUUhCd3dMSGg0Q0F3RUlCd0hNQXdHQUFnWVNKUUVaR3lnV0NSSU1GUklCQ0JJREJBNEJDQWtCQWd3Q0FRY0ZEUlFXS1I0VUFob2FFeG9DQkI4VEFnWUpDTElGQlA3c0JXRkZUSVpjUEM0YkRnNFdCdy9FcUVvU0RSY1NIQkFwTWpFOUFxRUNDZ29LRXdjR0RRc1JCZ0lIRnhjRURBSURDZ2tMRWdjR0RRd1FCd0lIRnhnQkFnRUJCUVlBQXdBeC8vVUNoZ09mQUNjQUxnQmJBT0JBRDFWQkFnVUdLZ0VFQVFRQkFnTURURXV3RDFCWVFDUUFCZ1VHaFFBRkFRV0ZDQUVFQUFNQ0JBTm9BQUVCS0UwQUFnSWpUUWNCQUFBakFFNGJTN0FRVUZoQUp3QUdCUWFGQUFVQkJZVUFBZ01BQXdJQWdBZ0JCQUFEQWdRRGFBQUJBU2hOQndFQUFDTUFUaHRMc0JWUVdFQWtBQVlGQm9VQUJRRUZoUWdCQkFBREFnUURhQUFCQVNoTkFBSUNJMDBIQVFBQUl3Qk9HMEFuQUFZRkJvVUFCUUVGaFFBQ0F3QURBZ0NBQ0FFRUFBTUNCQU5vQUFFQktFMEhBUUFBSXdCT1dWbFpRQmtvS0FFQVQwNDdPaWd1S0M0aElCd2JEUXNBSndFbkNRZ1dLeGNpSnlZMU5EOEJOaEkzTmpNeUZ4WWZBUlF6RnhZWEZoVVVCd1lqSWljbUp5TUdEd0VHQndZQkppY0dCd1lIRXdjakJnY0dGUVlIQmdjR0l5SW5KaWNtTlRRM05qYzJOelkvQWpZM05qTXlGeFlYRmhVVUJ3WUhCZ2RpR3c4SEFoVXZiazBQR3lRTFdTMEdBUVk4SmdZWUN3MEdEUmhvNFNBZUV3WVJDd0VzSkNNY0ZnOE56d01CQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFRQ0VBUWVId3NNQmdjVUNnY0NCaEFOREFzWkN3MEdCejZUQVNHR0dDVHVaZzhCRUlkTURBMGFEd2NEQmZKY1hEZ1RDZ2NCZFZsYU9EWWlJd0hFQWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBQUZBQTMvN3dJbUF3SUFBZ0EzQURvQVhRQ0tBRlpBVTRSd0FnWUhSa1VDQUFOYkxBOE5CQUVBQTB3QUJ3WUhoUUFHQkFhRkFBTUFBQUVEQUdrQUJBUXJUUWdCQVFFQ1lRVUpBZ0lDSmdKT1BEc0RBMzU5YW1sWVZrdEpSRUk3WFR4ZEF6Y0ROeUFmQ2dnV0t6YzBKeGMyTnpZM01qVTJOelkxTmpVdUFTYzBJeVluSmljbUp5WW5KaWNtSndZakJ3WUhCZ2NHQndZUEFSY1VGeFFYRmhjV0h3RVdQd0VWQXlZbkpqVTBOell6TWhjbk5EYzJNeklYRmhjV0Z6TVhGaFVVQmlNaUp5WW5EZ0VUQnlNR0J3WVZCZ2NHQndZaklpY21KeVkxTkRjMk56WTNOajhDTmpjMk16SVhGaGNXRlJRSEJnY0dCM0FCZkJJUkpSNEJGQXNSQWdFREJnRUREQU1DRHdJS0V3TUNIeU1DQnhnTkR4TVFGUWNEQVFFQkN3SU9HQVFJRXhLdUFadDBRQ2RiUGxGSVJRTUhDaDRORHg0R0JCc0JDUTBjRnhJUUhnd2lZbTBEQVFjSUFRTUNIaDRMREFjSEZBb0hBZ1lSREEwRUFoQUVIaDhMREFZSEZBb0hBZ1lRRFF6TUF3R0FBZ1lTSlFFWkd5Z1dDUklNRlJJQkNCSURCQTRCQ0FrQkFnd0NBUWNGRFJRV0tSNFVBaG9hRXhvQ0JCOFRBZ1lKQ0xJRkJQN3NCV0ZGVElaY1BDNGJEZzRXQncvRXFFb1NEUmNTSEJBcE1qRTlBcUVDQmdVQkFRSUJHQmNIQWdjUURBMEdCeElMQ1FvREFnd0VGeGNIQWdZUkN3MEdCeE1LQ2dvQUFBQUFBZ0JmLy9RQ013T2ZBREFBWFFCQ1FEOEFCZ2NHaFFBSEFRZUZBQU1BQkFVREJHY0FBZ0lCWHdBQkFTSk5BQVVGQUY4SUFRQUFJd0JPQVFCVFVUODlLU1FoSHhzWkZ4VVJEZ0F3QVMwSkNCWXJGeUltSnlZdkFUUTNOamMwTmpjMk15RXlGaFVVQmlNaEJnY3pNaFlWRkFZckFRWWRBVFkzTmpNeUZoVVVCaU1PQVFNbkppY21KeVkxTkRjMk56WXpNaGNXSHdJV0Z4WVhGaGNXRlJRSEJnY0dJeUluSmljbUp6UW5KaWNqb2hFYUJSRUJBUWdJQWhRUUR4Y0JTQlFjSEJUK3p3SUd0eFFkSFJTOUJFVkVWRlFWSEJ3VlZLY2dBd3dORUFZQ0J3b1VCd1lNQ3g4ZUJCQURBdzBNRVFZQ0J3b1VCd2NNQ3g0ZUFnTUJDQWNCREJRUUR4aGdjM0o1ZWhFYUJCTWRGQlFkWVdJZEZCUWNVMU0zQVFNRUhSUVVIQUVIQXprQ0Nnb0tFd2NHRFFzUkJnSUhGeGNFREFJRENna0xFZ2NHRFF3UUJ3SUhGeGdCQWdFQkJRWUFBQUFBQXdBUi8rNENId01DQURNQVlnQ1BBRlJBVVFBSUNRaUZBQWtCQ1lVQUJRSURBZ1VEZ0FzQkJnQUNCUVlDYUFBSEJ3RmhBQUVCSlUwRUFRTURBR0VLQVFBQUxBQk9OVFFCQUlXRGNXOVBUVFJpTldFdEt5a21KU1FTRHdrSEFETUJNd3dJRmlzRklpY21OVFkzTmpNeUZ4WVhGaFVVSVNJbkh3TVZGaDhDTWg0QkZ4WVhNaDhCTWpjeU5USTNOak15RnhZVkZBY0dBekkzTmpNME16WTNNelFuTkNjMUppYzFKaThCSmk4QkppOEJJZzhCQmdjaUJ5TUdEd0VHQnhVVUl3NEJCeFlESnlZbkppY21OVFEzTmpjMk16SVhGaDhDRmhjV0Z4WVhGaFVVQndZSEJpTWlKeVluSmljMEp5WW5Jd0UvZ1YxUUJtZFJXMkJDUUE4RS92ZE1TZ0lIREFrUkZRVWpBUVFFQVE0U0JRSWVFeE1GSUVnSENBc09GaVJaalR3OEJBVUNIeGNCQ2dJSkJ3Z0tBZzBOQlJFUklCWUtIeDBlQXdNQkJ3WU1EQVlCQkFRQ1V6Y0REQTBRQmdJSENoUUhCZ3dMSHg0RUVBTUREUXdSQmdJSENoUUhCd3dMSGg0Q0F3RUlCd0VTWVZwNGdFbzBORFpaRFExeUJBY09GUXdCRXhJRUZBSUJBUVVFQVFJQ0FSMERDUTRiSUE4a0FVVUZBUUVEQ2dzYkF3SUJFZ2dCQ2dnQ0NnVUNCd0lDQWdnR0ZnVUdCd3dTREFFQkNoTUhBd0ZlQWdvS0NoTUhCZzBMRVFZQ0J4Y1hCQXdDQXdvSkN4SUhCZzBNRUFjQ0J4Y1lBUUlCQVFVR0FBQUFBZ0JmLy9RQ013T2ZBREFBWFFCSlFFWlhRd0lHQndGTUFBY0dCNFVBQmdFR2hRQURBQVFGQXdSbkFBSUNBVjhBQVFFaVRRQUZCUUJmQ0FFQUFDTUFUZ0VBVVZBOVBDa2tJUjhiR1JjVkVRNEFNQUV0Q1FnV0t4Y2lKaWNtTHdFME56WTNORFkzTmpNaE1oWVZGQVlqSVFZSE16SVdGUlFHS3dFR0hRRTJOell6TWhZVkZBWWpEZ0VUQnlNR0J3WVZCZ2NHQndZaklpY21KeVkxTkRjMk56WTNOajhDTmpjMk16SVhGaGNXRlJRSEJnY0dCNklSR2dVUkFRRUlDQUlVRUE4WEFVZ1VIQndVL3M4Q0JyY1VIUjBVdlFSRlJGUlVGUndjRlZTbjN3TUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5EQXdVRUE4WVlITnllWG9SR2dRVEhSUVVIV0ZpSFJRVUhGTlROd0VEQkIwVUZCd0JCd001QWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBTUFFZi91QWg4REFnQXpBR0lBandCYlFGaUpkUUlJQ1FGTUFBa0lDWVVBQ0FFSWhRQUZBZ01DQlFPQUN3RUdBQUlGQmdKb0FBY0hBV0VBQVFFbFRRUUJBd01BWVFvQkFBQXNBRTQxTkFFQWc0SnZiazlOTkdJMVlTMHJLU1lsSkJJUENRY0FNd0V6REFnV0t3VWlKeVkxTmpjMk16SVhGaGNXRlJRaElpY2ZBeFVXSHdJeUhnRVhGaGN5SHdFeU56STFNamMyTXpJWEZoVVVCd1lETWpjMk16UXpOamN6TkNjMEp6VW1KelVtTHdFbUx3RW1Md0VpRHdFR0J5SUhJd1lQQVFZSEZSUWpEZ0VIRmhNSEl3WUhCaFVHQndZSEJpTWlKeVluSmpVME56WTNOamMyUHdJMk56WXpNaGNXRnhZVkZBY0dCd1lIQVQrQlhWQUdaMUZiWUVKQUR3VCs5MHhLQWdjTUNSRVZCU01CQkFRQkRoSUZBaDRURXdVZ1NBY0lDdzRXSkZtTlBEd0VCUUlmRndFS0Fna0hDQW9DRFEwRkVSRWdGZ29mSFI0REF3RUhCZ3dNQmdFRUJBSlR5UU1CQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFRQ0VBUWVId3NNQmdjVUNnY0NCaEFOREJKaFduaUFTalEwTmxrTkRYSUVCdzRWREFFVEVnUVVBZ0VCQlFRQkFnSUJIUU1KRGhzZ0R5UUJSUVVCQVFNS0N4c0RBZ0VTQ0FFS0NBSUtCUUlIQWdJQ0NBWVdCUVlIREJJTUFRRUtFd2NEQVY0Q0JnVUJBUUlCR0JjSEFnY1FEQTBHQnhJTENRb0RBZ3dFRnhjSEFnWVJDdzBHQnhNS0Nnb0FBQUFBQWdBTS8rMEEzZ09mQUJ3QVNRQlJ0aGdRQWdBQkFVeExzREZRV0VBV0FBSURBb1VBQXdFRGhRQUJBU2hOQkFFQUFDd0FUaHRBRmdBQ0F3S0ZBQU1CQTRVQUFRRUFZUVFCQUFBc0FFNVpRQThCQUQ4OUt5a05EQUFjQVJ3RkNCWXJGeUltSnlZbkpqVTBOelkzTmpNWEZoVVVCZzhCQmhVVUZ4WVhEZ0VESnlZbkppY21OVFEzTmpjMk16SVhGaDhDRmhjV0Z4WVhGaFVVQndZSEJpTWlKeVluSmljMEp5WW5JNTBVSEFFQkNBb1ZCUklNRFF3akFnZ0NCZ2tKQVFFY2NRTU1EUkFHQWdjS0ZBY0dEQXNmSGdRUUF3TU5EQkVHQWdjS0ZBY0hEQXNlSGdJREFRZ0hBUk1jRkdwcmMzSnBhQk1LQmdFTUpBWU5MaEkyVEQ2VGEyd1VIQU5CQWdvS0NoTUhCZzBMRVFZQ0J4Y1hCQXdDQXdvSkN4SUhCZzBNRUFjQ0J4Y1lBUUlCQVFVR0FBQUFBQUlBRFAveEFONERBZ0FkQUVvQUowQWtBZ0VBQVFGTUFBSURBb1VBQXdFRGhRQUJBU3ROQUFBQUpnQk9RRDRzS2ljWEJBZ1lLemNXRlJRR0J3WWpJaVluTGdFMU5EWXpNaFlkQVJRWEZoOENGQmNXQXljbUp5WW5KalUwTnpZM05qTXlGeFlmQWhZWEZoY1dGeFlWRkFjR0J3WWpJaWNtSnlZbk5DY21KeVBDQVE0VkJnVU5Id1VTQ0IwVUZCMERBZ1VHQWdFQmdBTU1EUkFHQWdjS0ZBY0dEQXNmSGdRUUF3TU5EQkVHQWdjS0ZBY0hEQXNlSGdJREFRZ0hBUzRHQmcwY0J3RVBGSG5wZVJRZEhSUTBYRlk2T2pvT0F3TU1BbFlDQ2dvS0V3Y0dEUXNSQmdJSEZ4Y0VEQUlEQ2drTEVnY0dEUXdRQndJSEZ4Z0JBZ0VCQlFZQUFBQUFBZ0E4LyswQkRnT2ZBQndBU1FCWFFBeERMd0lDQXhnUUFnQUJBa3hMc0RGUVdFQVdBQU1DQTRVQUFnRUNoUUFCQVNoTkJBRUFBQ3dBVGh0QUZnQURBZ09GQUFJQkFvVUFBUUVBWVFRQkFBQXNBRTVaUUE4QkFEMDhLU2dOREFBY0FSd0ZDQllyRnlJbUp5WW5KalUwTnpZM05qTVhGaFVVQmc4QkJoVVVGeFlYRGdFVEJ5TUdCd1lWQmdjR0J3WWpJaWNtSnlZMU5EYzJOelkzTmo4Q05qYzJNeklYRmhjV0ZSUUhCZ2NHQjUwVUhBRUJDQW9WQlJJTURRd2pBZ2dDQmdrSkFRRWNLZ01CQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFRQ0VBUWVId3NNQmdjVUNnY0NCaEFOREJNY0ZHcHJjM0pwYUJNS0JnRU1KQVlOTGhJMlRENlRhMndVSEFOQkFnWUZBUUVDQVJnWEJ3SUhFQXdOQmdjU0N3a0tBd0lNQkJjWEJ3SUdFUXNOQmdjVENnb0tBQUFDQUIvLzhRRHhBd0lBSFFCS0FDeEFLVVF3QWdJREFnRUFBUUpNQUFNQ0E0VUFBZ0VDaFFBQkFTdE5BQUFBSmdCT1BqMHFLU2NYQkFnWUt6Y1dGUlFHQndZaklpWW5MZ0UxTkRZek1oWWRBUlFYRmg4Q0ZCY1dBd2NqQmdjR0ZRWUhCZ2NHSXlJbkppY21OVFEzTmpjMk56WS9BalkzTmpNeUZ4WVhGaFVVQndZSEJnZkNBUTRWQmdVTkh3VVNDQjBVRkIwREFnVUdBZ0VCQWdNQkJ3Z0JBd0llSGdzTUJ3Y1VDZ2NDQmhFTURRUUNFQVFlSHdzTUJnY1VDZ2NDQmhBTkRDNEdCZzBjQndFUEZIbnBlUlFkSFJRMFhGWTZPam9PQXdNTUFsWUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFBRUFELy8rUUxCQTU4QUFnQmJBSEVBbmdBOVFEb0FCUVlGaFFBR0JBYUZBQUVCQkdFQUJBUWlUUWNDQWdBQUEyRUlBUU1ESXdOT1hsd0RBNVNTZ0g1b1pseHhYbkVEV3dOWkxDb1VDUWdYS3dFbk1nTTNNamMyTnpZM05UYzJQd0UyTlRRM05qVW1KeVluTlNjbUp5TTFKeVl2QVNZbkl5Y21KeVl2QVE4QkJnOEJCZzhCSWdjR0R3RUdEd0lHQndZVkR3RVVId0VXSHdFV0h3RXpGUmNXSHdFV0h3RVdGek1XTWg4Qkp5SW5KaWNtTlRRM05qTXlGaGNXRlJRT0FRY0dBeWNtSnlZbkpqVTBOelkzTmpNeUZ4WWZBaFlYRmhjV0Z4WVZGQWNHQndZaklpY21KeVluTkNjbUp5TUNEUUVCZWdvS0p5VUtFaFVJRWdvTENnRUNBUVFGQ2dnSkRBRUdEeEFKSUFrQkFSUW5EZ0V0RlFvU0VnSU1Dd2tCQVEwVUFRTUNDZzBIQlFrQkFnTUZDZ2dEQ0FvTEFRTU1EZ1lQRUFZUUdnTUhFQVFWSFVjOU9TVkRXVTJFU2FvNExRRlZUa24rQXd3TkVBWUNCd29VQndZTUN4OGVCQkFEQXcwTUVRWUNCd29VQndjTUN4NGVBZ01CQ0FjQkFpRUIvamtCRFJJS0R4a0JDaDRWSHlnSUFnRVBHaU1QR2hrQ0R4SVJBUWNSRFFZVkFnRUlDUUlCQWdJQ0F3Y0JCZ2NHQWdnWkFRTUVEeHNRRVNJTUFURVpHQjRtRWdjUkVCRUJCQTRNQlFzSEF3Y0VBUUZpQVNNak4yaUNtV2RaUmw1VFhnSmlxVE1zQXpVQ0Nnb0tFd2NHRFFzUkJnSUhGeGNFREFJRENna0xFZ2NHRFF3UUJ3SUhGeGdCQWdFQkJRWUFBQUFEQUI3LzV3STVBd0lBRmdCRUFIRUFRa0EvSlFFQ0F3Rk1BQVlIQm9VQUJ3RUhoUVFCQXdNQllRQUJBU3ROQlFFQ0FnQmhDQUVBQUN3QVRnRUFaMlZUVVVSRE5ESXhNQmdYQ3drQUZnRVdDUWdXS3dVaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjT0FRY0dKekkvQVRZM05qYzBNelkzTkRNM0ppYzFKeVluTkNNbUp5WWpKaU1pQnhVT0FTTUhCZ2NHRlJRWEZoY1dNd01uSmljbUp5WTFORGMyTnpZek1oY1dId0lXRnhZWEZoY1dGUlFIQmdjR0l5SW5KaWNtSnpRbkppY2pBUm83TjBvaUhqTTdhRlZMWXl3V0doeG5PeVF0RUFzS1JDUU1FUUVWQmdFQkJBb0JEUThCS2pnbUVnd2FEQmdKQ3dJUkR3OERCdzhlTVNONEF3d05FQVlDQndvVUJ3WU1DeDhlQkJBREF3ME1FUVlDQndvVUJ3Y01DeDRlQWdNQkNBY0JHUjh3VTBoTWFFcFJLamxvTWpJM09EZEpFQXRpQVFFVEhRa1RBUjBpQXhBd0ZRSUJIUk1CTlJZUEFnY0JCQWtTRHo0VkdCc21PaWN5QWtjQ0Nnb0tFd2NHRFFzUkJnSUhGeGNFREFJRENna0xFZ2NHRFF3UUJ3SUhGeGdCQWdFQkJRWUFBQUFFQUQvLytRTEJBNThBQWdCYkFIRUFuZ0JFUUVHWWhBSUZCZ0ZNQUFZRkJvVUFCUVFGaFFBQkFRUmhBQVFFSWswSEFnSUFBQU5pQ0FFREF5TURUbDVjQXdPU2tYNTlhR1pjY1Y1eEExc0RXU3dxRkFrSUZ5c0JKeklETnpJM05qYzJOelUzTmo4Qk5qVTBOelkxSmljbUp6VW5KaWNqTlNjbUx3RW1KeU1uSmljbUx3RVBBUVlQQVFZUEFTSUhCZzhCQmc4Q0JnY0dGUThCRkI4QkZoOEJGaDhCTXhVWEZoOEJGaDhCRmhjekZqSWZBU2NpSnlZbkpqVTBOell6TWhZWEZoVVVEZ0VIQmhNSEl3WUhCaFVHQndZSEJpTWlKeVluSmpVME56WTNOamMyUHdJMk56WXpNaGNXRnhZVkZBY0dCd1lIQWcwQkFYb0tDaWNsQ2hJVkNCSUtDd29CQWdFRUJRb0lDUXdCQmc4UUNTQUpBUUVVSnc0QkxSVUtFaElDREFzSkFRRU5GQUVEQWdvTkJ3VUpBUUlEQlFvSUF3Z0tDd0VEREE0R0R4QUdFQm9EQnhBRUZSMUhQVGtsUTFsTmhFbXFPQzBCVlU1SkFRTUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5EQUloQWY0NUFRMFNDZzhaQVFvZUZSOG9DQUlCRHhvakR4b1pBZzhTRVFFSEVRMEdGUUlCQ0FrQ0FRSUNBZ01IQVFZSEJnSUlHUUVEQkE4YkVCRWlEQUV4R1JnZUpoSUhFUkFSQVFRT0RBVUxCd01IQkFFQllnRWpJemRvZ3BsbldVWmVVMTRDWXFrekxBTTFBZ1lGQVFFQ0FSZ1hCd0lIRUF3TkJnY1NDd2tLQXdJTUJCY1hCd0lHRVFzTkJnY1RDZ29LQUFBQUFBTUFIdi9uQWprREFnQVdBRVFBY1FCSFFFUnJWd0lHQnlVQkFnTUNUQUFIQmdlRkFBWUJCb1VFQVFNREFXRUFBUUVyVFFVQkFnSUFZUWdCQUFBc0FFNEJBR1ZrVVZCRVF6UXlNVEFZRndzSkFCWUJGZ2tJRmlzRklpY21KeVkxTkRjMk16SVhGaGNXRlJRSERnRUhCaWN5UHdFMk56WTNORE0yTnpRek55WW5OU2NtSnpRakppY21JeVlqSWdjVkRnRWpCd1lIQmhVVUZ4WVhGak1UQnlNR0J3WVZCZ2NHQndZaklpY21KeVkxTkRjMk56WTNOajhDTmpjMk16SVhGaGNXRlJRSEJnY0dCd0VhT3pkS0loNHpPMmhWUzJNc0Zob2NaenNrTFJBTENrUWtEQkVCRlFZQkFRUUtBUTBQQVNvNEpoSU1HZ3dZQ1FzQ0VROFBBd2NQSGpFamlBTUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5EQmtmTUZOSVRHaEtVU281YURJeU56ZzNTUkFMWWdFQkV4MEpFd0VkSWdNUU1CVUNBUjBUQVRVV0R3SUhBUVFKRWc4K0ZSZ2JKam9uTWdKSEFnWUZBUUVDQVJnWEJ3SUhFQXdOQmdjU0N3a0tBd0lNQkJjWEJ3SUdFUXNOQmdjVENnb0tBQUFDQUYzLzdBSnVBNThBU1FCMkFKUkFDVG80TlJJRUFnRUJURXV3RkZCWVFCd0FCQVVFaFFBRkFRV0ZBd0VCQVNKTkFBSUNBR0VHQVFBQUxBQk9HMHV3R1ZCWVFDQUFCQVVFaFFBRkF3V0ZBQU1ESWswQUFRRWlUUUFDQWdCaEJnRUFBQ3dBVGh0QUl3QUVCUVNGQUFVREJZVUFBUU1DQXdFQ2dBQURBeUpOQUFJQ0FHRUdBUUFBTEFCT1dWbEFFd0VBYkdwWVZrSkFKQ0lNQ2dCSkFVa0hDQllyQlNJbkppY21OVFFuTkRZek1oWVhGaFVVRnhRWEZoY1VGeFFmQVJZWEZoY1dNaFl6TWpjSE1qWXpOekkyTnpZMU5qYzBQZ0UxTmpVbkppY3VBVFUwTnpZek1oWVhGaFVVQndZQkp5WW5KaWNtTlRRM05qYzJNeklYRmg4Q0ZoY1dGeFlYRmhVVUJ3WUhCaU1pSnlZbkppYzBKeVluSXdGeUtTZUhKQmdDSFJRVUd3RUNDQjRHRHdRYkFnZ1dFUkVCQlJJRkJCUUJBZ01CRWdFQkZnTXlEUUVDQ0FFSUFnRUNDQXNlREI0RkR5cysvdEVEREEwUUJnSUhDaFFIQmd3TEh4NEVFQU1ERFF3UkJnSUhDaFFIQnd3TEhoNENBd0VJQndFVUR6R2thS05pT0JRY0hCUTJWSUU0SkZrT0dBSUVCUmdCQ0FrSEF3RUJCQUVDQ3dFV0F3Skpjd0VFQndsQVRUSkNIZ0lLQnc4UEZoQVVZbHFyaExZRFFnSUtDZ29UQndZTkN4RUdBZ2NYRndRTUFnTUtDUXNTQndZTkRCQUhBZ2NYR0FFQ0FRRUZCZ0FBQUFJQU12L2pBaVVEQWdCQUFHMEJGa3V3RkZCWVFBMHpGUThGQkFNQ0F3RUFBd0pNRzBBTk14VVBCUVFEQWdNQkFRTUNURmxMc0JCUVdFQWRBQVVHQllVQUJnSUdoUVFCQWdJbFRRQURBd0JoQVFjQ0FBQXNBRTRiUzdBVVVGaEFJUUFGQmdXRkFBWUVCb1VBQkFRclRRQUNBaVZOQUFNREFHRUJCd0lBQUN3QVRodExzQ3BRV0VBbEFBVUdCWVVBQmdRR2hRQUVCQ3ROQUFJQ0pVMEFBd01CWVFBQkFTWk5Cd0VBQUN3QVRodExzQzFRV0VBb0FBVUdCWVVBQmdRR2hRQUNCQU1FQWdPQUFBUUVLMDBBQXdNQllRQUJBU1pOQndFQUFDd0FUaHRBS0FBRkJnV0ZBQVlFQm9VQUFnUURCQUlEZ0FBREF3RmhBQUVCSmswSEFRQUFCR0VBQkFRckFFNVpXVmxaUUJVQkFHTmhUMDAzTlNJaEV4RUtDQUJBQVVBSUNCWXJCU0ltTlRZMUJnY0dJeUluSmpVME56NEJNeklXRlFjR0ZSUVhIZ0VYRmhjZUFSY3lOelkvQVNNL0FUWTNOamMyTlRRL0FUNEJNeklXRlFjVUZoVVVCd1lCSnlZbkppY21OVFEzTmpjMk16SVhGaDhDRmhjV0Z4WVhGaFVVQndZSEJpTWlKeVluSmljMEp5WW5Jd0h2RWg4R0lUc3dOMEF2WUFzQkd4VVRIZ1VIRndRR0JRRU5DUlVqQndjVERBMEJGZ0VWRHg4TkFRSUpBUnNWRXg0QkVCTVEvbzREREEwUUJnSUhDaFFIQmd3TEh4NEVFQU1ERFF3UkJnSUhDaFFIQnd3TEhoNENBd0VJQndFZEhCUXlNa0luSGg5SHhUS1RGUndjRlVFK1AxNDZDQXdHQWcwRkNnRURCQWtKRmdJZklGWmJBUU1KQTI0VkhCd1ZPRTZXU29NVkR3S3VBZ29LQ2hNSEJnMExFUVlDQnhjWEJBd0NBd29KQ3hJSEJnME1FQWNDQnhjWUFRSUJBUVVHQUFBQUFnQmQvK3dDYmdPZkFFa0FkZ0NaUUE1d1hBSUVCVG80TlJJRUFnRUNURXV3RkZCWVFCd0FCUVFGaFFBRUFRU0ZBd0VCQVNKTkFBSUNBR0lHQVFBQUxBQk9HMHV3R1ZCWVFDQUFCUVFGaFFBRUF3U0ZBQU1ESWswQUFRRWlUUUFDQWdCaUJnRUFBQ3dBVGh0QUl3QUZCQVdGQUFRREJJVUFBUU1DQXdFQ2dBQURBeUpOQUFJQ0FHSUdBUUFBTEFCT1dWbEFFd0VBYW1sV1ZVSkFKQ0lNQ2dCSkFVa0hDQllyQlNJbkppY21OVFFuTkRZek1oWVhGaFVVRnhRWEZoY1VGeFFmQVJZWEZoY1dNaFl6TWpjSE1qWXpOekkyTnpZMU5qYzBQZ0UxTmpVbkppY3VBVFUwTnpZek1oWVhGaFVVQndZREJ5TUdCd1lWQmdjR0J3WWpJaWNtSnlZMU5EYzJOelkzTmo4Q05qYzJNeklYRmhjV0ZSUUhCZ2NHQndGeUtTZUhKQmdDSFJRVUd3RUNDQjRHRHdRYkFnZ1dFUkVCQlJJRkJCUUJBZ01CRWdFQkZnTXlEUUVDQ0FFSUFnRUNDQXNlREI0RkR5cytNQU1CQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFRQ0VBUWVId3NNQmdjVUNnY0NCaEFOREJRUE1hUm9vMkk0RkJ3Y0ZEWlVnVGdrV1E0WUFnUUZHQUVJQ1FjREFRRUVBUUlMQVJZREFrbHpBUVFIQ1VCTk1rSWVBZ29IRHc4V0VCUmlXcXVFdGdOQ0FnWUZBUUVDQVJnWEJ3SUhFQXdOQmdjU0N3a0tBd0lNQkJjWEJ3SUdFUXNOQmdjVENnb0tBQUFBQWdBeS8rTUNKUU1DQUVBQWJRRWdTN0FVVUZoQUVtZFRBZ1VHTXhVUEJRUURBZ01CQUFNRFRCdEFFbWRUQWdVR014VVBCUVFEQWdNQkFRTURURmxMc0JCUVdFQWRBQVlGQm9VQUJRSUZoUVFCQWdJbFRRQURBd0JoQVFjQ0FBQXNBRTRiUzdBVVVGaEFJUUFHQlFhRkFBVUVCWVVBQkFRclRRQUNBaVZOQUFNREFHRUJCd0lBQUN3QVRodExzQ3BRV0VBbEFBWUZCb1VBQlFRRmhRQUVCQ3ROQUFJQ0pVMEFBd01CWVFBQkFTWk5Cd0VBQUN3QVRodExzQzFRV0VBb0FBWUZCb1VBQlFRRmhRQUNCQU1FQWdPQUFBUUVLMDBBQXdNQllRQUJBU1pOQndFQUFDd0FUaHRBS0FBR0JRYUZBQVVFQllVQUFnUURCQUlEZ0FBREF3RmhBQUVCSmswSEFRQUFCR0VBQkFRckFFNVpXVmxaUUJVQkFHRmdUVXczTlNJaEV4RUtDQUJBQVVBSUNCWXJCU0ltTlRZMUJnY0dJeUluSmpVME56NEJNeklXRlFjR0ZSUVhIZ0VYRmhjZUFSY3lOelkvQVNNL0FUWTNOamMyTlRRL0FUNEJNeklXRlFjVUZoVVVCd1lEQnlNR0J3WVZCZ2NHQndZaklpY21KeVkxTkRjMk56WTNOajhDTmpjMk16SVhGaGNXRlJRSEJnY0dCd0h2RWg4R0lUc3dOMEF2WUFzQkd4VVRIZ1VIRndRR0JRRU5DUlVqQndjVERBMEJGZ0VWRHg4TkFRSUpBUnNWRXg0QkVCTVFjZ01CQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFRQ0VBUWVId3NNQmdjVUNnY0NCaEFOREIwY0ZESXlRaWNlSDBmRk1wTVZIQndWUVQ0L1hqb0lEQVlDRFFVS0FRTUVDUWtXQWg4Z1Zsc0JBd2tEYmhVY0hCVTRUcFpLZ3hVUEFxNENCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFJQURmL3pBbFFEbndCR0FITUFYRUFOYlZrQ0F3UkFKUWdEQUFFQ1RFdXdDbEJZUUJjQUJBTUVoUUFEQVFPRkFnRUJBU2hOQlFFQUFDTUFUaHRBRndBRUF3U0ZBQU1CQTRVQ0FRRUJLRTBGQVFBQUpnQk9XVUFSQVFCblpsTlNOelVYRlFCR0FVWUdDQllyQlNJbUp6UW5KalUzSmljbUp5WXZBU1luSmpVME5qTXlId0VXRnhZWEZqTVdId0VXTWhjK0FqYzJOejRCTkRZM05qYzJOell6TWhjV0ZSUUhCZ2NHRHdFVUZoVU9BUk1ISXdZSEJoVUdCd1lIQmlNaUp5WW5KalUwTnpZM05qYzJQd0kyTnpZek1oY1dGeFlWRkFjR0J3WUhBVFVVSEFFQ0FnRXFIeW80SXc0QkJBVU9IUk1VRHdRa0lqZ09Bd0VQRXdJTUJnSUlBUU1GSkNrRUFnTUNJUjBNR2d3ZURRd1lFVFZHT1MwQkJRRWNqQU1CQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFRQ0VBUWVId3NNQmdjVUNnY0NCaEFOREEwZEZEMDhOVFJPRWlVd1lUNFJBUVlGRHhNVUhRNEZLajlmRGdVVUVBRUpBUUVCQWdNZk5nUUNBZ01DTEM0TU5oY0dEaHdSSEY1VFNoay9QbnM4RkIwRE93SUdCUUVCQWdFWUZ3Y0NCeEFNRFFZSEVnc0pDZ01DREFRWEZ3Y0NCaEVMRFFZSEV3b0tDZ0FBQUFJQUp2OGxBZmNEQWdBK0FHc0E1RUFOWlZFQ0JRWXNKd3NEQXdBQ1RFdXdDbEJZUUJ3QUJnVUdoUUFGQUFXRkFRRUFBQ1ZOQkFFREF3SmlBQUlDSndKT0cwdXdERkJZUUNBQUJnVUdoUUFGQVFXRkFBRUJKVTBBQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0E1UVdFQWNBQVlGQm9VQUJRQUZoUUVCQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0J0UVdFQWdBQVlGQm9VQUJRRUZoUUFCQVNWTkFBQUFKVTBFQVFNREFtSUFBZ0luQWs0YlFDTUFCZ1VHaFFBRkFRV0ZBQUFCQXdFQUE0QUFBUUVsVFFRQkF3TUNZZ0FDQWljQ1RsbFpXVmxBRVY5ZVMwbzlQRHM2TnpVd0xoZ1dCd2dXS3hjM0l6WTNOamN5TkRjMk55WW5KaWNtSnlZMU5EYzJNeklYRmhjV0Z4WWZBUjRCRnhZWEZoYzJQd0UyTno0Qk16SVdGUUlIQmlNaU5UUTJNeFl6TmhNSEl3WUhCaFVHQndZSEJpTWlKeVluSmpVME56WTNOamMyUHdJMk56WXpNaGNXRnhZVkZBY0dCd1lIdVFNQ0RoUWhGd0VCQ1E1Vk95WXVGQWdIR0F3Tkhnd1ZFamsyQXdVQkNBOEdCQUlIQ3hzVEFnd0VBaG9WRXg0U3UxRnFSeHdWRFJzWjlnTUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5ERzBCQkE0WEhnSUJDUm9vZUUyRk94SU5EUnNQQmhneU5LdE9CZ1FEQ1E0R0FnSUZCVU9CRDE1ZkZSd2NGZjRjb1VFeUV4NEJBd01IQWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBQUJBRWdDNWdFYUE1OEFMQUFoc1Faa1JFQVdKaElDQVFBQlRBQUFBUUNGQUFFQmRpQWZHd0lJRnl1eEJnQkVFemN6TmpjMk5UWTNOamMyTXpJWEZoY1dGUlFIQmdjR0J3WVBBZ1lIQmlNaUp5WW5KalUwTnpZM05qZDhBZ0VIQ0FFREFoNGVDd3dIQnhRS0J3SUdFUXdOQXdNUUJCNGZDd3dHQnhRS0J3SUdFQTBNQTFjQ0JnVUJBUUlCR0JjSEFnY1FEQTBHQnhJTENRb0RBZ3dFRnhjSEFnWVJDdzBHQnhNS0Nnb0FBZ0FMQXUwQkdRTlNBQXNBRndBbHNRWmtSRUFhQXdFQkFBQUJXUU1CQVFFQVlRSUJBQUVBVVNRa0pDSUVDQm9yc1FZQVJCTVVCaU1pSmpVME5qTXlGaGNVQmlNaUpqVTBOak15Rm0wZEZCUWRIUlFVSGF3ZEZCUWRIUlFVSFFNaEZCMGRGQlFkSFJjVUhSMFVGQjBkQUFRQU1mLzFBb1lEVWdBbkFDNEFPZ0JHQU45QUNpb0JCQUVFQVFJREFreExzQTlRV0VBa0NBRUdCd0VGQVFZRmFRb0JCQUFEQWdRRGFBQUJBU2hOQUFJQ0kwMEpBUUFBSXdCT0cwdXdFRkJZUUNjQUFnTUFBd0lBZ0FnQkJnY0JCUUVHQldrS0FRUUFBd0lFQTJnQUFRRW9UUWtCQUFBakFFNGJTN0FWVUZoQUpBZ0JCZ2NCQlFFR0JXa0tBUVFBQXdJRUEyZ0FBUUVvVFFBQ0FpTk5DUUVBQUNNQVRodEFKd0FDQXdBREFnQ0FDQUVHQndFRkFRWUZhUW9CQkFBREFnUURhQUFCQVNoTkNRRUFBQ01BVGxsWldVQWRLQ2dCQUVWRFB6MDVOek14S0M0b0xpRWdIQnNOQ3dBbkFTY0xDQllyRnlJbkpqVTBQd0UyRWpjMk16SVhGaDhCRkRNWEZoY1dGUlFIQmlNaUp5WW5Jd1lQQVFZSEJnRW1Kd1lIQmdjVEZBWWpJaVkxTkRZek1oWVhGQVlqSWlZMU5EWXpNaFppR3c4SEFoVXZiazBQR3lRTFdTMEdBUVk4SmdZWUN3MEdEUmhvNFNBZUV3WVJDd0VzSkNNY0ZnOE5MeDBVRkIwZEZCUWRyQjBVRkIwZEZCUWRDeGtMRFFZSFBwTUJJWVlZSk81bUR3RVFoMHdNRFJvUEJ3TUY4bHhjT0JNS0J3RjFXVm80TmlJakFiY1VIUjBVRkIwZEZ4UWRIUlFVSFIwQUFBQUdBQTMvN3dJbUFyVUFBZ0EzQURvQVhRQnBBSFVBVjBCVVJrVUNBQU5iTEE4TkJBRUFBa3dBQXdBQUFRTUFhUWdCQmdZSFlRa0JCd2NpVFFBRUJDdE5DZ0VCQVFKaEJRc0NBZ0ltQWs0OE93TURkSEp1YkdobVltQllWa3RKUkVJN1hUeGRBemNETnlBZkRBZ1dLemMwSnhjMk56WTNNalUyTnpZMU5qVXVBU2MwSXlZbkppY21KeVluSmljbUp3WWpCd1lIQmdjR0J3WVBBUmNVRnhRWEZoY1dId0VXUHdFVkF5WW5KalUwTnpZek1oY25ORGMyTXpJWEZoY1dGek1YRmhVVUJpTWlKeVluRGdFREZBWWpJaVkxTkRZek1oWVhGQVlqSWlZMU5EWXpNaFp3QVh3U0VTVWVBUlFMRVFJQkF3WUJBd3dEQWc4Q0NoTURBaDhqQWdjWURROFRFQlVIQXdFQkFRc0NEaGdFQ0JNU3JnR2JkRUFuV3o1UlNFVURCd29lRFE4ZUJnUWJBUWtOSEJjU0VCNE1JbUkwSFJRVUhSMFVGQjJzSFJRVUhSMFVGQjNNQXdHQUFnWVNKUUVaR3lnV0NSSU1GUklCQ0JJREJBNEJDQWtCQWd3Q0FRY0ZEUlFXS1I0VUFob2FFeG9DQkI4VEFnWUpDTElGQlA3c0JXRkZUSVpjUEM0YkRnNFdCdy9FcUVvU0RSY1NIQkFwTWpFOUFwUVVIUjBVRkIwZEZ4UWRIUlFVSFIwQUFBQURBRi8vOUFJekExSUFNQUE4QUVnQVJrQkRDUUVIQ0FFR0FRY0dhUUFEQUFRRkF3Um5BQUlDQVY4QUFRRWlUUUFGQlFCZkNnRUFBQ01BVGdFQVIwVkJQenM1TlRNcEpDRWZHeGtYRlJFT0FEQUJMUXNJRmlzWElpWW5KaThCTkRjMk56UTJOell6SVRJV0ZSUUdJeUVHQnpNeUZoVVVCaXNCQmgwQk5qYzJNeklXRlJRR0l3NEJFeFFHSXlJbU5UUTJNeklXRnhRR0l5SW1OVFEyTXpJV29oRWFCUkVCQVFnSUFoUVFEeGNCU0JRY0hCVCt6d0lHdHhRZEhSUzlCRVZFVkZRVkhCd1ZWS2MvSFJRVUhSMFVGQjJzSFJRVUhSMFVGQjBNRkJBUEdHQnpjbmw2RVJvRUV4MFVGQjFoWWgwVUZCeFRVemNCQXdRZEZCUWNBUWNETEJRZEhSUVVIUjBYRkIwZEZCUWRIUUFBQUFBRUFCSC83Z0lmQXJVQU13QmlBRzRBZWdCYVFGY0FCUUlEQWdVRGdBMEJCZ0FDQlFZQ1p3b0JDQWdKWVFzQkNRa2lUUUFIQndGaEFBRUJKVTBFQVFNREFHRU1BUUFBTEFCT05UUUJBSGwzYzNGdGEyZGxUMDAwWWpWaExTc3BKaVVrRWc4SkJ3QXpBVE1PQ0JZckJTSW5KalUyTnpZek1oY1dGeFlWRkNFaUp4OERGUllmQWpJZUFSY1dGeklmQVRJM01qVXlOell6TWhjV0ZSUUhCZ015TnpZek5ETTJOek0wSnpRbk5TWW5OU1l2QVNZdkFTWXZBU0lQQVFZSElnY2pCZzhCQmdjVkZDTU9BUWNXRXhRR0l5SW1OVFEyTXpJV0Z4UUdJeUltTlRRMk16SVdBVCtCWFZBR1oxRmJZRUpBRHdUKzkweEtBZ2NNQ1JFVkJTTUJCQVFCRGhJRkFoNFRFd1VnU0FjSUN3NFdKRm1OUER3RUJRSWZGd0VLQWdrSENBb0NEUTBGRVJFZ0Znb2ZIUjREQXdFSEJnd01CZ0VFQkFKVEtCMFVGQjBkRkJRZHJCMFVGQjBkRkJRZEVtRmFlSUJLTkRRMldRME5jZ1FIRGhVTUFSTVNCQlFDQVFFRkJBRUNBZ0VkQXdrT0d5QVBKQUZGQlFFQkF3b0xHd01DQVJJSUFRb0lBZ29GQWdjQ0FnSUlCaFlGQmdjTUVnd0JBUW9UQndNQlVSUWRIUlFVSFIwWEZCMGRGQlFkSFFBREFCWC83UUVqQTFJQUhBQW9BRFFBVmJZWUVBSUFBUUZNUzdBeFVGaEFGZ1VCQXdRQkFnRURBbWtBQVFFb1RRWUJBQUFzQUU0YlFCWUZBUU1FQVFJQkF3SnBBQUVCQUdFR0FRQUFMQUJPV1VBVEFRQXpNUzBySnlVaEh3ME1BQndCSEFjSUZpc1hJaVluSmljbU5UUTNOamMyTXhjV0ZSUUdEd0VHRlJRWEZoY09BUU1VQmlNaUpqVTBOak15RmhjVUJpTWlKalUwTmpNeUZwMFVIQUVCQ0FvVkJSSU1EUXdqQWdnQ0Jna0pBUUVjT2gwVUZCMGRGQlFkckIwVUZCMGRGQlFkRXh3VWFtdHpjbWxvRXdvR0FRd2tCZzB1RWpaTVBwTnJiQlFjQXpRVUhSMFVGQjBkRnhRZEhSUVVIUjBBQUFBQUEvLzMvL0VCQlFLMUFCMEFLUUExQUNsQUpnSUJBQUVCVEFRQkFnSURZUVVCQXdNaVRRQUJBU3ROQUFBQUpnQk9KQ1FrTHljWEJnZ2NLemNXRlJRR0J3WWpJaVluTGdFMU5EWXpNaFlkQVJRWEZoOENGQmNXQXhRR0l5SW1OVFEyTXpJV0Z4UUdJeUltTlRRMk16SVd3Z0VPRlFZRkRSOEZFZ2dkRkJRZEF3SUZCZ0lCQVdjZEZCUWRIUlFVSGF3ZEZCUWRIUlFVSFM0R0JnMGNCd0VQRkhucGVSUWRIUlEwWEZZNk9qb09Bd01NQWtrVUhSMFVGQjBkRnhRZEhSUVVIUjBBQUFVQVAvLzVBc0VEVWdBQ0FGc0FjUUI5QUlrQVFVQStDQUVHQndFRkJBWUZhUUFCQVFSaEFBUUVJazBKQWdJQUFBTmhDZ0VEQXlNRFRsNWNBd09JaG9LQWZIcDJkR2htWEhGZWNRTmJBMWtzS2hRTENCY3JBU2N5QXpjeU56WTNOamMxTnpZL0FUWTFORGMyTlNZbkppYzFKeVluSXpVbkppOEJKaWNqSnlZbkppOEJEd0VHRHdFR0R3RWlCd1lQQVFZUEFnWUhCaFVQQVJRZkFSWWZBUllmQVRNVkZ4WWZBUllmQVJZWE14WXlId0VuSWljbUp5WTFORGMyTXpJV0Z4WVZGQTRCQndZREZBWWpJaVkxTkRZek1oWVhGQVlqSWlZMU5EWXpNaFlDRFFFQmVnb0tKeVVLRWhVSUVnb0xDZ0VDQVFRRkNnZ0pEQUVHRHhBSklBa0JBUlFuRGdFdEZRb1NFZ0lNQ3drQkFRMFVBUU1DQ2cwSEJRa0JBZ01GQ2dnRENBb0xBUU1NRGdZUEVBWVFHZ01IRUFRVkhVYzlPU1ZEV1UyRVNhbzRMUUZWVGttZkhSUVVIUjBVRkIyc0hSUVVIUjBVRkIwQ0lRSCtPUUVORWdvUEdRRUtIaFVmS0FnQ0FROGFJdzhhR1FJUEVoRUJCeEVOQmhVQ0FRZ0pBZ0VDQWdJREJ3RUdCd1lDQ0JrQkF3UVBHeEFSSWd3Qk1Sa1lIaVlTQnhFUUVRRUVEZ3dGQ3djREJ3UUJBV0lCSXlNM2FJS1paMWxHWGxOZUFtS3BNeXdES0JRZEhSUVVIUjBYRkIwZEZCUWRIUUFBQUFRQUh2L25BamtDdFFBV0FFUUFVQUJjQUVoQVJTVUJBZ01CVEFnQkJnWUhZUWtCQndjaVRRUUJBd01CWVFBQkFTdE5CUUVDQWdCaENnRUFBQ3dBVGdFQVcxbFZVMDlOU1VkRVF6UXlNVEFZRndzSkFCWUJGZ3NJRmlzRklpY21KeVkxTkRjMk16SVhGaGNXRlJRSERnRUhCaWN5UHdFMk56WTNORE0yTnpRek55WW5OU2NtSnpRakppY21JeVlqSWdjVkRnRWpCd1lIQmhVVUZ4WVhGak1ERkFZaklpWTFORFl6TWhZWEZBWWpJaVkxTkRZek1oWUJHanMzU2lJZU16dG9WVXRqTEJZYUhHYzdKQzBRQ3dwRUpBd1JBUlVHQVFFRUNnRU5Ed0VxT0NZU0RCb01HQWtMQWhFUER3TUhEeDR4SXhrZEZCUWRIUlFVSGF3ZEZCUWRIUlFVSFJrZk1GTklUR2hLVVNvNWFESXlOemczU1JBTFlnRUJFeDBKRXdFZElnTVFNQlVDQVIwVEFUVVdEd0lIQVFRSkVnOCtGUmdiSmpvbk1nSTZGQjBkRkJRZEhSY1VIUjBVRkIwZEFBTUFYZi9zQW00RFVnQkpBRlVBWVFDWVFBazZPRFVTQkFJQkFVeExzQlJRV0VBY0J3RUZCZ0VFQVFVRWFRTUJBUUVpVFFBQ0FnQmhDQUVBQUN3QVRodExzQmxRV0VBZ0J3RUZCZ0VFQXdVRWFRQURBeUpOQUFFQklrMEFBZ0lBWVFnQkFBQXNBRTRiUUNNQUFRTUNBd0VDZ0FjQkJRWUJCQU1GQkdrQUF3TWlUUUFDQWdCaENBRUFBQ3dBVGxsWlFCY0JBR0JlV2xoVVVrNU1Ra0FrSWd3S0FFa0JTUWtJRmlzRklpY21KeVkxTkNjME5qTXlGaGNXRlJRWEZCY1dGeFFYRkI4QkZoY1dGeFl5RmpNeU53Y3lOak0zTWpZM05qVTJOelErQVRVMk5TY21KeTRCTlRRM05qTXlGaGNXRlJRSEJnTVVCaU1pSmpVME5qTXlGaGNVQmlNaUpqVTBOak15RmdGeUtTZUhKQmdDSFJRVUd3RUNDQjRHRHdRYkFnZ1dFUkVCQlJJRkJCUUJBZ01CRWdFQkZnTXlEUUVDQ0FFSUFnRUNDQXNlREI0RkR5cyswQjBVRkIwZEZCUWRyQjBVRkIwZEZCUWRGQTh4cEdpallqZ1VIQndVTmxTQk9DUlpEaGdDQkFVWUFRZ0pCd01CQVFRQkFnc0JGZ01DU1hNQkJBY0pRRTB5UWg0Q0NnY1BEeFlRRkdKYXE0UzJBelVVSFIwVUZCMGRGeFFkSFJRVUhSMEFBQUFBQXdBeS8rTUNKUUsxQUVBQVRBQllBU1JMc0JSUVdFQU5NeFVQQlFRREFnTUJBQU1DVEJ0QURUTVZEd1VFQXdJREFRRURBa3haUzdBUVVGaEFId2NCQlFVR1lRZ0JCZ1lpVFFRQkFnSWxUUUFEQXdCaEFRa0NBQUFzQUU0YlM3QVVVRmhBSXdjQkJRVUdZUWdCQmdZaVRRQUVCQ3ROQUFJQ0pVMEFBd01BWVFFSkFnQUFMQUJPRzB1d0tsQllRQ2NIQVFVRkJtRUlBUVlHSWswQUJBUXJUUUFDQWlWTkFBTURBV0VBQVFFbVRRa0JBQUFzQUU0YlM3QXRVRmhBS2dBQ0JBTUVBZ09BQndFRkJRWmhDQUVHQmlKTkFBUUVLMDBBQXdNQllRQUJBU1pOQ1FFQUFDd0FUaHRBS2dBQ0JBTUVBZ09BQndFRkJRWmhDQUVHQmlKTkFBTURBV0VBQVFFbVRRa0JBQUFFWVFBRUJDc0FUbGxaV1ZsQUdRRUFWMVZSVDB0SlJVTTNOU0loRXhFS0NBQkFBVUFLQ0JZckJTSW1OVFkxQmdjR0l5SW5KalUwTno0Qk16SVdGUWNHRlJRWEhnRVhGaGNlQVJjeU56WS9BU00vQVRZM05qYzJOVFEvQVQ0Qk16SVdGUWNVRmhVVUJ3WUJGQVlqSWlZMU5EWXpNaFlYRkFZaklpWTFORFl6TWhZQjd4SWZCaUU3TURkQUwyQUxBUnNWRXg0RkJ4Y0VCZ1VCRFFrVkl3Y0hFd3dOQVJZQkZROGZEUUVDQ1FFYkZSTWVBUkFURVA3dEhSUVVIUjBVRkIyc0hSUVVIUjBVRkIwZEhCUXlNa0luSGg5SHhUS1RGUndjRlVFK1AxNDZDQXdHQWcwRkNnRURCQWtKRmdJZklGWmJBUU1KQTI0VkhCd1ZPRTZXU29NVkR3S2hGQjBkRkJRZEhSY1VIUjBVRkIwZEFBTUFXUUJ2QWY0Q0NBQU5BQmtBSlFCcFM3QVhVRmhBSFFBQkJnRUFCUUVBWndBRkNBRUVCUVJsQndFQ0FnTmhBQU1ESlFKT0cwQWpBQU1IQVFJQkF3SnBBQUVHQVFBRkFRQm5BQVVFQkFWWkFBVUZCR0VJQVFRRkJGRlpRQnNiR2c4T0FRQWhIeG9sR3lVVkV3NFpEeGtJQlFBTkFRd0pDQllyRXlJbU5UUTJNeUV5RmhVVUJpTW5JaVkxTkRZek1oWVZGQVlESWlZMU5EWXpNaFlWRkFhSkZCd2NGQUZGRkJ3Y0ZLQVVIUjBVRkJ3Y0dCUWRIUlFVSFIwQkRoMFVGQjBkRkJRZG1CMFVGQjBkRkJRZC9za2RGQlFjSEJRVUhRQUFBQUFDQUViL1J3QzVBaDBBSkFBd0FDcEFKeHNCQVFBQlRBQUFBQUVBQVdVQUF3TUNZUVFCQWdJbEEwNG1KU3dxSlRBbU1DSWdLUVVJRnlzWExnRTFORGMyTlQ0Qk16SVdGd1lIQmdjVkZCY1dId0VXRnhZVkZBY0dCd1lqSWljbUV6SVdGUlFHSXlJbU5UUTJXUTBDQXdJQkhCUVVIQUVCQWdJQkFnRURBZ0lEQVFZSkZRY0dEQXdTR1JRZEhSUVVIUjJWUlZRT09EZzBOQlVjSEJVMU5TWW5GeU1pRnhjT0N3c0hCUTRMRVFZQ0Jnb0N4aDBVRkIwZEZCUWRBQUlBSS85aEFlWUNHUUFMQUdjQVNFQkZZUUVFQWpjZUFnTUVBa3dIQVFJQkJBRUNCSUFBQkFNQkJBTitBQU1BQlFNRlpnQUJBUUJoQmdFQUFDVUJUZzBNQVFCTlMwTkJMU3dNWncxbkJ3VUFDd0VMQ0FnV0t3RXlGaFVVQmlNaUpqVTBOaGN5SGdFVkZBY09BUWNVSXdZSEl4UVBBUlVmQVJZZkFSWVhIZ016Rmhjek5qTTJOelV6TmpjMk55OENKaWNtTlRRM05qTXlGeFlYRmhVVUJ3WUhJaVluSmpVME56WTNQZ0UxTmpjek5UUTNOajBCTGdFMU5EYzJBUTRVSFIwVUZCMGRFZzBjQ3lZZVN4OEJCZ01CQWdFR0RnUUJCd29NQnhVR0JBRVFEeVVCQlJnTEFSd1JCZ01CQWdJSENSZ0hEaHNOREJnU0d4ZEhja1p5SWhsdktoVUJBZ1VEQVFFQkFRTUpEQUlaSFJRVUhSMFVGQjJURVNjVU5Dd2hOaVFCQ0FrRUJRUUtGQmtFQWdrTUNnZ05BUUlIQWdFRkJRRU5Fd2NJQWdNQkJRUU1IdzBMRndZS0ZCd25KQ0JZQTBrOEtDMVlUeUVYQWdJQkJnY0JBZ01DQWdrRkNnY01EaGNBQUFBSEFDZi81UVFvQXJnQUZnQkdBRmdBZVFDVkFLY0F5QURTUzdBdFVGaEFFRHM2TWlJRUFnSEN1WE5xQkFVRUFrd2JRQkE3T2pJaUJBSUh3cmx6YWdRRkJBSk1XVXV3TFZCWVFEQUpBUVFBQlFBRUJZQU1BUUlMQVFBRUFnQnFCd0VCQVNKTkR3RUdCaU5ORVFvT0F3VUZBMklRQ0EwREF3TXNBMDRiUURRSkFRUUFCUUFFQllBTUFRSUxBUUFFQWdCcUFBRUJJazBBQndjaVRROEJCZ1lqVFJFS0RnTUZCUU5pRUFnTkF3TURMQU5PV1VBMXFLaVhsbnQ2V1ZsSVJ4Y1hBUUNveUtqSW9KNldwNWVuaW9oNmxYdVZXWGxaZVZGUFIxaElXQmRHRjBZTUNnQVdBUllTQ0JZckV5SW5KaWNtTlRRL0FUWXpNaGNXRnhZVkZBY0dCd1luTmpJM05qOEJQZ0UvQWpRbk5DOEJMZ0VuSmljbUx3RW1KeU1IRGdRUEFSVVVGeFFYSGdFZkFSWXlGd0VpSnlZMU5EOEJOak15Rng0QkZSUUhCaWMyTnpZM016NEJOVFF1QVNjMUppOENJdzRCRHdFakJnY1ZGaDhCSGdFWEJTSW1OVFEzTmpjME56WTNOamMyTXpJWEZoVVVEd0VHQndZSEJnVWlKeVkxTkQ4Qk5qTXlGeDRCRlJRSEJpYzJOelkzTXo0Qk5UUXVBU2MxSmk4Q0l3NEJEd0VqQmdjVkZoOEJIZ0VYeUJZWU9TQWFQd1lrSlJjWU95SVpCQkk1SUI4Q0FnRUdCQUVHQ1FFSkJBVUJDQVVHQXdJQkJRa0VCZ1VPRFFZRUJRUURBUU1GRHcwQkN3Y0JCQUlCZWtrd0xpc0NMRFlTRXo1TU1TMDBFUTBJQkFFREF3RU1EQWtMRWdzSENBOEhCd0VFQVFFR0FRb2NFLzV1RkIwT05DY0NWWDh5TlJBYkRBd1lCejFaVVZSc0R3TFlTVEF1S3dJc05oSVRQa3d4TFRRUkRRZ0VBUU1EQVF3TUNRc1NDd2NJRHdjSEFRUUJBUVlCQ2h3VEFYZ0pHRFVyTWs0b0JCTUhGRFFwTEJFUlFTVVVZZ0VCQWdRQkJBb0NEaFFLQ3dJQkRnUUhBZ0VDQkFNQ0FRSUVBd0lGQkFRQ0N4QUlDZ2dWRFFNR0F3RUIvZ3M5T1VOQU1RTXNCUlZyUGtFc0tXQUVEQWNHQlFvR0JnNGhEd0VMQ1FvREFnb0tEQW9SQ2dzUUFSVWJCVWdkRkJNUE5EUUJBVy9RVWxBWUJ3NGREQXRmbEhpRGNRNFlQVGxEUURFRExBVVZhejVCTENsZ0JBd0hCZ1VLQmdZT0lROEJDd2tLQXdJS0Nnd0tFUW9MRUFFVkd3VUFBQUlBVWY5UEFMUUN0Z0FVQUNrQUtrQW5CQUVBQUFFQUFXVUFBd01DWVFVQkFnSWlBMDRXRlFFQUlCNFZLUllwQ3drQUZBRVVCZ2dXS3pjeUZoMEJGQWNWRkFZaklpWTFORGMxTmpVME5oTXlGaDBCRkFjVkZBWWpJaVkxTkRjMU5qVTBOb1FVSEFFZEZCUWRBUUVkRkJRY0FSMFVGQjBCQVIyK0hSUXRNVVZyRkJ3Y0ZDc3JZU3NzRkIwQitCMFVMVEZGYXhRY0hCUXJLMkVyTEJRZEFBQUJBSUFBakFIZkFlNEFLQUFsUUNJZUV3a0RBQUlCVEFNQkFnQUFBbGtEQVFJQ0FHRUJBUUFDQUZFbUt5VWxCQWdhS3dFWEZoVVVCaU1pTHdFR0J3WWpJaVkxTkQ4QkppY21OVFEyTXpJV0h3RTNQZ0V6TWhZVkZBY0dBWFZjRGh3VkZBNWNLak1PRkJVY0RsNC9IZzRjRkJVZUR6MDhFQjBWRkJ3T0hRRTlYQTRVRlJ3T1hDc3pEaHdWRkE1ZVB4OE9GUlFjSGhBK1BCQWVIQlFWRGg0QUF2Ly9BYUFCTWdMZ0FCWUFSZ0E5c1Faa1JFQXlPem95SWdRQ0FRRk1BQUVDQVlVRUFRSUFBQUpYQkFFQ0FnQmlBd0VBQWdCU0Z4Y0JBQmRHRjBZTUNnQVdBUllGQ0JZcnNRWUFSQk1pSnlZbkpqVTBQd0UyTXpJWEZoY1dGUlFIQmdjR0p6WXlOelkvQVQ0QlB3STBKelF2QVM0Qkp5WW5KaThCSmljakJ3NEVEd0VWRkJjVUZ4NEJId0VXTWhlZ0ZoZzVJQm8vQmlRbEZ4ZzdJaGtFRWprZ0h3SUNBUVlFQVFZSkFRa0VCUUVJQlFZREFnRUZDUVFHQlE0TkJnUUZCQU1CQXdVUERRRUxCd0VFQWdHZ0NSZzFLekpPS0FRVEJ4UTBLU3dSRVVFbEZHSUJBUUlFQVFRS0FnNFVDZ3NDQVE0RUJ3SUJBZ1FEQWdFQ0JBTUNCUVFFQWdzUUNBb0lGUTBEQmdNQkFRQUJBRXIvQ0FEbi8vd0FIQUEwc1Faa1JFQXBHUUVBQVFGTUF3RUFBUUNHQUFJQkFRSlpBQUlDQVdFQUFRSUJVUUVBRlJRUUR3QWNBUndFQ0JZcnNRWUFSQmNpSnlZMU5EOEJNalkxTmpVMEp5SXVBVFUwTmpNV0Z4WVZCZ2NHZWhvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTitCZ0xEUndPQ1JJSENRVUlBUUVaRmhJZkJTZ1pLRllxQmdBQUFBQUJBRHdCSmdDZUFZZ0FDd0FZUUJVQUFRQUFBVmtBQVFFQVlRQUFBUUJSSkNJQ0NCZ3JFeFFHSXlJbU5UUTJNeklXbmgwVUZCMGRGQlFkQVZjVUhSMFVGQjBkQUFJQVgvLzBBak1EVWdBd0FEd0FRRUE5QUFjQUJnRUhCbWtBQXdBRUJRTUVad0FDQWdGZkFBRUJJazBBQlFVQVh3Z0JBQUFqQUU0QkFEczVOVE1wSkNFZkd4a1hGUkVPQURBQkxRa0lGaXNYSWlZbkppOEJORGMyTnpRMk56WXpJVElXRlJRR0l5RUdCek15RmhVVUJpc0JCaDBCTmpjMk16SVdGUlFHSXc0QkV4UUdJeUltTlRRMk16SVdvaEVhQlJFQkFRZ0lBaFFRRHhjQlNCUWNIQlQrendJR3R4UWRIUlM5QkVWRVZGUVZIQndWVktlRUhSUVVIUjBVRkIwTUZCQVBHR0J6Y25sNkVSb0VFeDBVRkIxaFloMFVGQnhUVXpjQkF3UWRGQlFjQVFjRExCUWRIUlFVSFIwQUF3QVIvKzRDSHdLeUFETUFZZ0J1QUZSQVVRQUZBZ01DQlFPQUN3RUdBQUlGQmdKbkFBZ0lDV0VBQ1FraVRRQUhCd0ZoQUFFQkpVMEVBUU1EQUdFS0FRQUFMQUJPTlRRQkFHMXJaMlZQVFRSaU5XRXRLeWttSlNRU0R3a0hBRE1CTXd3SUZpc0ZJaWNtTlRZM05qTXlGeFlYRmhVVUlTSW5Id01WRmg4Q01oNEJGeFlYTWg4Qk1qY3lOVEkzTmpNeUZ4WVZGQWNHQXpJM05qTTBNelkzTXpRbk5DYzFKaWMxSmk4QkppOEJKaThCSWc4QkJnY2lCeU1HRHdFR0J4VVVJdzRCQnhZVEZBWWpJaVkxTkRZek1oWUJQNEZkVUFablVWdGdRa0FQQlA3M1RFb0NCd3dKRVJVRkl3RUVCQUVPRWdVQ0hoTVRCU0JJQndnTERoWWtXWTA4UEFRRkFoOFhBUW9DQ1FjSUNnSU5EUVVSRVNBV0NoOGRIZ01EQVFjR0RBd0dBUVFFQWxPQ0hSUVVIUjBVRkIwU1lWcDRnRW8wTkRaWkRRMXlCQWNPRlF3QkV4SUVGQUlCQVFVRUFRSUNBUjBEQ1E0YklBOGtBVVVGQVFFRENnc2JBd0lCRWdnQkNnZ0NDZ1VDQndJQ0FnZ0dGZ1VHQnd3U0RBRUJDaE1IQXdGT0ZCMGRGQlFkSFFBQUFnQXUvL01DVGdOU0FESUFQZ0RzUzdBZlVGaEFDaUFCQVFJa0FRUUJBa3diUUFvZ0FRRUNKQUVFQlFKTVdVdXdGMUJZUUNBQUJ3QUdBZ2NHYVFBQkFRSmhBd0VDQWlKTkJRRUVCQUJmQ0FFQUFDTUFUaHRMc0I5UVdFQWtBQWNBQmdNSEJta0FBZ0lpVFFBQkFRTmZBQU1ESWswRkFRUUVBRjhJQVFBQUl3Qk9HMHV3TVZCWVFDb0FCQVVBQlFSeUFBY0FCZ01IQm1rQUFnSWlUUUFCQVFOZkFBTURJazBBQlFVQVh3Z0JBQUFqQUU0YlFDZ0FCQVVBQlFSeUFBY0FCZ01IQm1rQUF3QUJCUU1CWndBQ0FpSk5BQVVGQUY4SUFRQUFJd0JPV1ZsWlFCY0NBRDA3TnpVcktDY2xIUm9aRnhNTkFESUNMd2tJRmlzRklpWW5KalUwTnpZL0FUWTNKaU1pQndZSExnRTFORFkzTmpjMk16SVhGaFVVQndZQkZqTXlOelkzTWhZVkZBWUhJZ1lURkFZaklpWTFORFl6TWhZQkR3MWdVU01PcFVZUlhEWWFMU1VralUwVUhCd1VVRTlXSXJBVEJnSksvc2txTWlwVFEwUVZIQndWUW9jYkhSUVVIUjBVRkIwTkFSWU5JaElSc0Y0VmVHc0NBZ29CQVJ3VUZCd0JBUVlHSXd3TUJ3ZlIvcXdGQmdRQkhSUVVIQUVKQXk0VUhSMFVGQjBkQUFBQUFBSUFDdi93QWRjQ3NnQXpBRDhBaTB1d0VsQllRQW9LQVFRQkJRRUFCQUpNRzBBS0NnRUNBUVVCQUFRQ1RGbExzQkpRV0VBaEFBVUZCbUVBQmdZaVRRSUJBUUVEWHdBREF5Vk5BQVFFQUY4SEFRQUFJd0JPRzBBb0FBSUJCQUVDQklBQUJRVUdZUUFHQmlKTkFBRUJBMThBQXdNbFRRQUVCQUJmQndFQUFDTUFUbGxBRlFNQVBqdzROaXduSWgwV0ZRME1BRE1ETUFnSUZpc1hJaWNtTHdFME56NEJQd0VuSWc4QkloVUdCd1lqSWljbU5UUTJOell6TWhZekZoY1dGUlFCTXpjMk14NEJGUlFHQnlJSEF4UUdJeUltTlRRMk16SVc4RnRiSXd3QkRXRzdDZ1JKVUJ3TUJCTVNCZ2NORGhZUUZGdGNMRmNyR3c4SC9zbzNiVEl6RkIwZEZETXlJQjBVRkIwZEZCUWRFQVlDSWcwVEQzUHJEd1FCQlFFQkFnUUJCdzBiRFI0RkVRTUJGdzBQR3Y2R0FRRUJIQlFVSEFFQkFwQVVIUjBVRkIwZEFBSUFUd0FKQW53RG53QmpBSkFBeEVBVWluWUNCZ2RPVFFJRUJTNEJBUVJaQVFBQkJFeExzQnRRV0VBdUFBY0dCNFVBQmdNR2hRQUVCUUVGQkFHQUFBRUFCUUVBZmdBRkJRTmhBQU1ESWswQUFBQUNZUUFDQWlNQ1RodExzREZRV0VBckFBY0dCNFVBQmdNR2hRQUVCUUVGQkFHQUFBRUFCUUVBZmdBQUFBSUFBbVVBQlFVRFlRQURBeUlGVGh0QU1RQUhCZ2VGQUFZREJvVUFCQVVCQlFRQmdBQUJBQVVCQUg0QUF3QUZCQU1GYVFBQUFnSUFXUUFBQUFKaEFBSUFBbEZaV1VBTmhJTndieWtuTENjdUxBZ0lIQ3MzRmhjZUFSUVhGak1lQVJjV016WTNOamN6TnpZMU5DY21OVFEzTmpNeUZoVVVCd1lIQmlNaUp5WW5KalUwTnpZM1BnSXpNaGNlQVJVVUJ3WWpJaWN1QVNjbUp5WW5KaWNIQmlNR0J6Y0dCeFVHQnlJVkJoVVVGeFlVRnlNWEZSWVhKeFVCQnlNR0J3WVZCZ2NHQndZaklpY21KeVkxTkRjMk56WTNOajhDTmpjMk16SVhGaGNXRlJRSEJnY0dCOElGQmdFQ0RnTUNCdzhYSTBNcEtCd1pBZ2NXQ2dJSUVCa2pHUkFuYnpRMGRFVkxFUW9EQkRBWlNsVXFlVkFhSEFRUEhCNE9Bd1VRQ1JBZUlSa2FHUVFGSXcwR0loc1BCd0VZQXdFQkFRRUdCZ0VCRkFNQkJ3Z0JBd0llSGdzTUJ3Y1VDZ2NDQmhFTURRUUNFQVFlSHdzTUJnY1VDZ2NDQmhBTkRLOFBCZ0VDQWd3REJBZ0dDZ0VFQkFvRURSSVRIZ2NIRGd3VlNTSWhJRVVPQmlZdlhqUkhLU3BoVXlVMEdFOGFReEFNQ3hzWkNoSWNEQTBVQ0FVQkFRRUpCUU1OSHdFVUV3RStZRFF0QkFZQ0FRUWJFQUVDQW44Q0JnVUJBUUlCR0JjSEFnY1FEQTBHQnhJTENRb0RBZ3dFRnhjSEFnWVJDdzBHQnhNS0Nnb0FBQUFBQWdBYy8rc0NBd01DQUVZQWN3Q1BRQXR0V1FJR0IwTUJCQVVDVEV1d0RsQllRQzRBQndZSGhRQUdBUWFGQUFJREJRTUNjZ0FGQkFNRkJINEFBd01CWVFBQkFTVk5BQVFFQUdFSUFRQUFMQUJPRzBBdkFBY0dCNFVBQmdFR2hRQUNBd1VEQWdXQUFBVUVBd1VFZmdBREF3RmhBQUVCSlUwQUJBUUFZUWdCQUFBc0FFNVpRQmNCQUdkbVUxSS9QalUwSEJzVEVRc0tBRVlCUmdrSUZpc0ZJaWNtSnlZMU5EYzJOeklYRmhVVUJ3WWpJaThCTlNjbUp5WW5JZ2NHQndZSEJnOEJCaFVHRlJRZkFSWWZBUllYTWhZZkFUOEJOajhCTmpjMk56WXpNaGNXRlFZSEJoTUhJd1lIQmhVR0J3WUhCaU1pSnlZbkpqVTBOelkzTmpjMlB3STJOell6TWhjV0Z4WVZGQWNHQndZSEFTeFBSV0FZQkV4VGZvSkJCeGtNRFJ3TkRCVUdFQWtvTURvUkdRRUNGUWdGQ0FJTUFRa05BaHd4QXdJbkRSMFNGaFFCQkFNRkVnc05CZ2NqQkRBekR3TUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5EQlV1UW5FWUdGbGFYZ3B2REF3Y0R3WVlFZ0VWQmdjR0F5VUtIZ0lCR3hjT0hnZ0VDeEloQVJVU0FTSWFBZ29CQWdZTUh3UUpDeE1LQndJTEpUWXlOUUttQWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBQUFBQUlBWXYvNUFwRURud0F4QUY0QU8wQTRXRVFDQkFVc0pCSURBQUVDVEFBRkJBV0ZBQVFCQklVQ0FRRUJLRTBEQmdJQUFDTUFUZ0VBVWxFK1BTa25IeDBNQ2dBeEFURUhDQllyRnlJbUp6WTNOamMwTnpZek1oWVhGaGNXRnhRekZUWS9BVFk5QVQ0Qk16SVdIUUVVQndZSEJpTWlKeVluQndZSERnRUJCeU1HQndZVkJnY0dCd1lqSWljbUp5WTFORGMyTnpZM05qOENOamMyTXpJWEZoY1dGUlFIQmdjR0I1TVVIQUVERWcwSEdBd01JaHdRTTJVME1RRUxDQU1TQVJ3VUZCMExDaThNSXlkVGNsTUdFd0lCSEFFdUF3RUhDQUVEQWg0ZUN3d0hCeFFLQndJR0VRd05CQUlRQkI0ZkN3d0dCeFFLQndJR0VBME1CeDBVc0srQ2d4c1BCa0lnZkxSZFB3RUJNek1ia2RVWkZCd2NGQ2FOakoyVkkzZWx1VWF2c0JRZEF6VUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFJQVRQLzdBaVVEQWdBMkFHTUFpa3V3TFZCWVFBOWRTUUlGQmlnQkFRTWJBUUFCQTB3YlFBOWRTUUlGQmlnQkFRTWJBUUlCQTB4WlM3QXRVRmhBSFFBR0JRYUZBQVVEQllVQUFRRURZUVFCQXdNclRRSUhBZ0FBSXdCT0cwQWhBQVlGQm9VQUJRTUZoUUFCQVFOaEJBRURBeXROQUFJQ0kwMEhBUUFBSXdCT1dVQVZBUUJYVmtOQ0t5a25KU0FlRkJJQU5nRTJDQWdXS3dVaUpqVTBOamNtSnlZMUppOEJKaWNtSXlZakJnY0dCd1lIQmdjUkZBWWpJaVkxRVRRMk16SVhOak15RnhZWEZoVVVCd1lIRkFZREJ5TUdCd1lWQmdjR0J3WWpJaWNtSnlZMU5EYzJOelkzTmo4Q05qYzJNeklYRmhjV0ZSUUhCZ2NHQndIcEV4MEtBUU1SQVFvRUFSOHVHZ2dFSlE4YUVBSU9Dd0lGSEJRVUhSMFVHdzh5UVRBdlFDMC9CUVVCSFcwREFRY0lBUU1DSGg0TERBY0hGQW9IQWdZUkRBMEVBaEFFSGg4TERBWUhGQW9IQWdZUURRd0ZIQlFwWURkWEt3RUNFZ1VDSmc0SUFnRUtDUUlKRlFzSS9yRVVIUjBVQWNRVUhSb2RFaGN6UDYwd0pUVXNGQndDbGdJR0JRRUJBZ0VZRndjQ0J4QU1EUVlIRWdzSkNnTUNEQVFYRndjQ0JoRUxEUVlIRXdvS0NnQUFBZ0EzLy9VQ01BT2ZBRW9BZHdCVVFGRnhYUUlHQjBjQkFnRUNUQUFIQmdlRkFBWURCb1VBQkFVQkJRUUJnQUFCQWdVQkFuNEFCUVVEWVFBREF5aE5BQUlDQUdFSUFRQUFJd0JPQVFCcmFsZFdNUzhwSnlNaEVBNEtDQUJLQVVvSkNCWXJCU2N1QVNjbU5UUTJOeklYRmhjV016STJNelkzTmpVbU5TWW5KalUwTnpZM05qTXlGeFlWRkNNaUpqVTNOQ2NtSXlJSEJnY0dCdzREQnhRV0ZSNEJGUllYRmhjV0ZRWUhCaE1ISXdZSEJoVUdCd1lIQmlNaUp5WW5KalUwTnpZM05qYzJQd0kyTnpZek1oY1dGeFlWRkFjR0J3WUhBVm9VVDM4ekRod1VGQTlLVFNnSURnVUVQQ2tDQVJ5SjFpd3lSVEkwWnowd01oTWVBUkU0SHpvcUl3c0VFUUlGQWdJQkF3c0NObDRrSkpFS1AwWTBBd0VIQ0FFREFoNGVDd3dIQnhRS0J3SUdFUXdOQkFJUUJCNGZDd3dHQnhRS0J3SUdFQTBNQ3dFTVl6c1FGUkljQVE1WEt3NEJGRGdJQndJRU9EaGFmRHN2TWhVU1B6bEhTeHNUSWg4V0l4TVBDd01SQkFjR0JRY0pCd0lSQXdFMUpoQVRTR3RMTFR3RE9RSUdCUUVCQWdFWUZ3Y0NCeEFNRFFZSEVnc0pDZ01DREFRWEZ3Y0NCaEVMRFFZSEV3b0tDZ0FBQUFBRUFDLy81Z0hEQXdJQUFnQUZBR1VBa2dCWFFGU01lQUlHQjFNQkJBVWxBUUlCQTB3QUJnY0RCd1lEZ0FBQkJBSUVBUUtBQUFjQUJBRUhCR2tBQlFVRFlRQURBeXROQUFJQ0FHRUlBUUFBTEFCT0J3YUdoWEp4UzBwRFFUazNIQm9SRHdabEIyVUpDQllyRXpNMUJ5STFFeUluSmljbU5UUTNOak15RnpJVkZoY1ZGaGNXTXpZM016NEJOVFkzTmpjbkppOEJJaWNtSnlZbkppY21OVFEzUGdFek1oY1dGeFlWRkFjR0l5SW5OQ01tSnlNbUp3WWpCZ2NHQndZVkZ5Y1hGaGNlQVJjZUFSY1dGeFlWRkFjR0V3Y2pCZ2NHRlFZSEJnY0dJeUluSmljbU5UUTNOamMyTnpZL0FqWTNOak15RnhZWEZoVVVCd1lIQmdlckFRVUJVMGs0TWhVQ0NRNGFJZzBCQkFjV0V4Z2dIeFVDQ3hnREFnVUNBd1lLRndJRURqWWlJVGtpRUFrV1pUMHpLem9YQWdnT0d5SU5BZ2dXQVJNb0FnTVlHd3NOQXdZQkJRa0pBZ1lESGpzZE55Z2xMam8xQXdFSENBRURBaDRlQ3d3SEJ4UUtCd0lHRVF3TkJBSVFCQjRmQ3d3R0J4UUtCd0lHRUEwTUFad0JNZ0grZWlja09RY0hEQTRXSkFFS0NBRVdDQXNCQ1FVVEF3UUZCUmdhRFFvTkFnWVBDQXdTTUI4aEdCazJRaG9vUXdjSERBNFdKQVFVRmc0Q0FRTVRDQlVORWdvREJRWUVBZ0lCQ3c0SkVDZ3RPVVV4T3dLckFnWUZBUUVDQVJnWEJ3SUhFQXdOQmdjU0N3a0tBd0lNQkJjWEJ3SUdFUXNOQmdjVENnb0tBQUFBQUFJQUx2L3pBazREbndBeUFGOEEva3V3SDFCWVFBOVpSUUlHQnlBQkFRSWtBUVFCQTB3YlFBOVpSUUlHQnlBQkFRSWtBUVFGQTB4WlM3QVhVRmhBSWdBSEJnZUZBQVlDQm9VQUFRRUNZUU1CQWdJaVRRVUJCQVFBWUFnQkFBQWpBRTRiUzdBZlVGaEFKZ0FIQmdlRkFBWURCb1VBQWdJaVRRQUJBUU5mQUFNRElrMEZBUVFFQUdBSUFRQUFJd0JPRzB1d01WQllRQ3dBQndZSGhRQUdBd2FGQUFRRkFBVUVjZ0FDQWlKTkFBRUJBMThBQXdNaVRRQUZCUUJnQ0FFQUFDTUFUaHRBS2dBSEJnZUZBQVlEQm9VQUJBVUFCUVJ5QUFNQUFRVURBV2NBQWdJaVRRQUZCUUJnQ0FFQUFDTUFUbGxaV1VBWEFnQlRVajgrS3lnbkpSMGFHUmNURFFBeUFpOEpDQllyQlNJbUp5WTFORGMyUHdFMk55WWpJZ2NHQnk0Qk5UUTJOelkzTmpNeUZ4WVZGQWNHQVJZek1qYzJOeklXRlJRR0J5SUdFd2NqQmdjR0ZRWUhCZ2NHSXlJbkppY21OVFEzTmpjMk56WS9BalkzTmpNeUZ4WVhGaFVVQndZSEJnY0JEdzFnVVNNT3BVWVJYRFlhTFNVa2pVMFVIQndVVUU5V0lyQVRCZ0pLL3NrcU1pcFRRMFFWSEJ3VlFvZUJBd0VIQ0FFREFoNGVDd3dIQnhRS0J3SUdFUXdOQkFJUUJCNGZDd3dHQnhRS0J3SUdFQTBNRFFFV0RTSVNFYkJlRlhockFnSUtBUUVjRkJRY0FRRUdCaU1NREFjSDBmNnNCUVlFQVIwVUZCd0JDUU03QWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBQUFBZ0FLLy9BQjF3TUNBRE1BWUFDVlM3QVNVRmhBRDFwR0FnVUdDZ0VFQVFVQkFBUURUQnRBRDFwR0FnVUdDZ0VDQVFVQkFBUURURmxMc0JKUVdFQWhBQVlGQm9VQUJRTUZoUUlCQVFFRFh3QURBeVZOQUFRRUFHQUhBUUFBSXdCT0cwQW9BQVlGQm9VQUJRTUZoUUFDQVFRQkFnU0FBQUVCQTE4QUF3TWxUUUFFQkFCZ0J3RUFBQ01BVGxsQUZRTUFWRk5BUHl3bkloMFdGUTBNQURNRE1BZ0lGaXNYSWljbUx3RTBOejRCUHdFbklnOEJJaFVHQndZaklpY21OVFEyTnpZek1oWXpGaGNXRlJRQk16YzJNeDRCRlJRR0J5SUhFd2NqQmdjR0ZRWUhCZ2NHSXlJbkppY21OVFEzTmpjMk56WS9BalkzTmpNeUZ4WVhGaFVVQndZSEJnZndXMXNqREFFTllic0tCRWxRSEF3RUV4SUdCdzBPRmhBVVcxd3NWeXNiRHdmK3lqZHRNak1VSFIwVU16SlBBd0VIQ0FFREFoNGVDd3dIQnhRS0J3SUdFUXdOQkFJUUJCNGZDd3dHQnhRS0J3SUdFQTBNRUFZQ0lnMFREM1ByRHdRQkJRRUJBZ1FCQncwYkRSNEZFUU1CRncwUEd2NkdBUUVCSEJRVUhBRUJBcUFDQmdVQkFRSUJHQmNIQWdjUURBMEdCeElMQ1FvREFnd0VGeGNIQWdZUkN3MEdCeE1LQ2dvQUFBQUFBZ0F4LzNvQ2tBTERBQVlBUkFCd1FBNENBUUFERlFFRUFVRUJBZ1FEVEV1d0YxQllRQjRBQlFJRmhnWUJBQUFCQkFBQmFBQURBeWhOQUFRRUkwMEFBZ0lqQWs0YlFDRUFCQUVDQVFRQ2dBQUZBZ1dHQmdFQUFBRUVBQUZvQUFNREtFMEFBZ0lqQWs1WlFCTUFBRDQ4TGkwZUhCSVFDZ2tBQmdBR0J3Z1dLd0VtSndZSEJnY0JKaWNqQmc4QkJnY0dJeUluSmpVMFB3RTJFamMyTXpJWEZoOEJGRE1YRmhjV0Z4WVZGQTRCSXdZVkZCY1VGak1YRmhVVUJ3WWpJaWNtSnpRM05nR2JKQ01jRmc4TkFSQWdNK0VnSGhNR0VRc05HdzhIQWhVdmJrMFBHeVFMV1MwR0FRWThKZ01CQXh3UUFRY0VFUUlPR0FjUEdnME5TZ2tSQ0FGcVdWbzROaUlqL3VvOWVGeGNPQk1LQnhrTERRWUhQcE1CSVlZWUpPNW1Ed0VRaDB3R0JRZ0lGaGtCQVFnRkNRY1NDUTRjRFFzWUJpcFdLQmtMQUFBREFBMy9Zd0l0QWlNQUFnQTRBSEFBUkVCQlNVZ0NBQU03T0NJRkJBRUFiUUVHQWdOTUFBWUNCb1lBQXdBQUFRTUFhUUFFQkN0TkFBRUJBbUVGQVFJQ0pnSk9hbWhhV1U1TVIwVS9QUzR0RmhVSENCWXJOelFuSlRZMUxnRW5OQ01tSnlZbkppY21KeVluSmljR0l3Y0dCd1lIQmdjR0R3RVhGQmNVRnhZWEZoOEJGak0yTnpZM01qVTJOelkxRnlZbkRnRUhKaWNtTlRRM05qTXlGeWMwTnpZek1oY1dGeFlYTXhjV0ZSUUdLd0VHRlJRWEZCWXpGeFlWRkFjR0l5SW5KaWMwTnpad0FRRVRBZ0VEQmdFRERBTUNEd0lLRXdNQ0h5TUNCeGdORHhNUUZRY0RBUUVCQ3dJT0dBUUlFeElYRWhFbEhnRVVDeEV3QndRaVlqdDBRQ2RiUGxGSVJRTUhDaDRORHg0R0JCc0JDUTBjRndFQ0JCRUNEaGdIRHhvTkRVb0pFUWpNQXdFMENSQU1GUklCQ0JJREJBNEJDQWtCQWd3Q0FRY0ZEUlFXS1I0VUFob2FFeG9DQkI4VEFnWUpDQUlHRWlVQkdSc29Gc1lRRWpFOUFRVmhSVXlHWER3dUd3NE9GZ2NQeEtoS0VnMFhFaHdDQkFVSkJ4SUpEaHdOQ3hnR0tsWW9HUW9BQUFBQkFGLy9hUUl6QXJrQVJnQTNRRFJHTmdJR0FBRk1BQVlBQm9ZQUF3QUVCUU1FWndBQ0FnRmZBQUVCSWswQUJRVUFYd0FBQUNNQVRrTkJVeVFpSkQxQUJ3Z2NLd1VIQmdjaUppY21Md0UwTnpZM05EWTNOak1oTWhZVkZBWWpJUVlITXpJV0ZSUUdLd0VHSFFFMk56WXpNaFlWRkFjR0J3WWpCaFVVRnhRV014Y1dGUlFIQmlNaUp5WW5BWVk4VkZRUkdnVVJBUUVJQ0FJVUVBOFhBVWdVSEJ3VS9zOENCcmNVSFIwVXZRUkZSRlJVRlJ3T0RCRUZCUWNFRVFJT0dBY1BHZzBOU2drRkFnUUJGQkFQR0dCemNubDZFUm9FRXgwVUZCMWhZaDBVRkJ4VFV6Y0JBd1FkRkJRT0RBSUJBUWdGQ1FjU0NRNGNEUXNZQmlwV0FBQUFBZ0FSLzF3Q0h3SWZBQzRBZGdCUFFFeDFaUUlJQndGTUFBWURCQU1HQklBQUNBY0loZ2tCQUFBREJnQURad0FCQVFKaEFBSUNKVTBGQVFRRUIyRUFCd2NtQjA0QkFISndZMkpjV2xoVlZGTkJQamcyR3hrQUxnRXRDZ2dXS3dFeU56WXpORE0yTnpNMEp6UW5OU1luTlNZdkFTWXZBU1l2QVNJUEFRWUhJZ2NqQmc4QkJnY1ZGQ01PQVFjV0V5WW5KalUyTnpZek1oY1dGeFlWRkNFaUp4OERGUllmQWpJZUFSY1dGeklmQVRJM01qVXlOell6TWhjV0ZSUUhCZ2NHRlJRWEZCWXpGeFlWRkFjR0l5SW5KaWMwQVFJOFBBUUZBaDhYQVFvQ0NRY0lDZ0lORFFVUkVTQVdDaDhkSGdNREFRY0dEQXdHQVFRRUFsTW1UajVRQm1kUlcyQkNRQThFL3ZkTVNnSUhEQWtSRlFVakFRUUVBUTRTQlFJZUV4TUZJRWdIQ0FzT0ZpUlFTQVVFRVFJT0dBY1BHZzBOU2drQk13VUJBUU1LQ3hzREFnRVNDQUVLQ0FJS0JRSUhBZ0lDQ0FZV0JRWUhEQklNQVFFS0V3Y0Qvc1lXUUZwNGdFbzBORFpaRFExeUJBY09GUXdCRXhJRUZBSUJBUVVFQVFJQ0FSMERDUTRiSUE4Z0JBRUhCUWtIRWdrT0hBMExHQVlxVmd3QUFBRUFYZjliQW00Q3NRQmhBSE5BRFRvNE5SSUVBUUJnQVFNQkFreExzQlJRV0VBVEFBRUFBd0FCQTRBQUF3T0VBZ0VBQUNJQVRodExzQmxRV0VBWEFBRUFBd0FCQTRBQUF3T0VBQUlDSWswQUFBQWlBRTRiUUJrQUFBSUJBZ0FCZ0FBQkF3SUJBMzRBQXdPRUFBSUNJZ0pPV1ZsQUNsMWJRa0FrSWlvRUNCY3JCU1luSmljbU5UUW5ORFl6TWhZWEZoVVVGeFFYRmhjVUZ4UWZBUllYRmhjV01oWXpNamNITWpZek56STJOelkxTmpjMFBnRTFOalVuSmljdUFUVTBOell6TWhZWEZoVVVCd1lIQmlNR0l3WVZGQmNVRmpNWEZoVVVCd1lqSWljbUp6UUJLd1VFaHlRWUFoMFVGQnNCQWdnZUJnOEVHd0lJRmhFUkFRVVNCUVFVQVFJREFSSUJBUllETWcwQkFnZ0JDQUlCQWdnTEhnd2VCUThyTkc0RkF3Z0JCd1FSQWc0WUJ3OGFEUTFLQ1FnQkFqR2thS05pT0JRY0hCUTJWSUU0SkZrT0dBSUVCUmdCQ0FrSEF3RUJCQUVDQ3dFV0F3Skpjd0VFQndsQVRUSkNIZ0lLQnc4UEZoQVVZbHFyaEpjYUFnRUJDQVVKQnhJSkRod05DeGdHS2xZTUFBQUJBREwvVUFJbUFpRUFXd0NFUUJGT01Db2dCQU1DSGdFQkF4b0JBQUVEVEV1d0VGQllRQllBQXdNQllRQUJBU1pOQUFBQUFtRUVBUUlDSlFCT0cwdXdLbEJZUUJvQUFnSWxUUUFEQXdGaEFBRUJKazBBQUFBRVlRQUVCQ3NBVGh0QUhRQUNCQU1FQWdPQUFBTURBV0VBQVFFbVRRQUFBQVJoQUFRRUt3Qk9XVmxBRFZKUVBUd3VMQ1VqRnhVRkNCWXJCUVlIQmdjR0l3WWpCaFVVRnhRV014Y1dGUlFIQmlNaUp5WW5ORGMyTnpZMUJnY0dJeUluSmpVME56NEJNeklXRlFjR0ZSUVhIZ0VYRmhjZUFSY3lOelkvQVNNL0FUWTNOamMyTlRRL0FUNEJNeklXRlFjVUZoVVVCd1lDRndJREJnY0hCUWdCQndRUkFnNFlCdzhhRFExS0NSRVJGd0loT3pBM1FDOWdDd0ViRlJNZUJRY1hCQVlGQVEwSkZTTUhCeE1NRFFFV0FSVVBIdzBCQWdrQkd4VVRIZ0VRQ0FFRkJnTUdCQVFCQVFnRkNRY1NDUTRjRFFzWUJpcFdLQmtXQ3g4Z1FpY2VIMGZGTXBNVkhCd1ZRVDQvWGpvSURBWUNEUVVLQVFNRUNRa1dBaDhnVmxzQkF3a0RiaFVjSEJVNFRwWktWaWNLQUFFQU4vOWNBTlFDeXdBd0FEOUFEUlVOQUFNQkFDMGRBZ0lCQWt4THNERlFXRUFRQUFFQkxFMEFBZ0lBWVFBQUFDZ0NUaHRBRFFBQUFBSUFBbVVBQVFFc0FVNVp0UzRmR1FNSUdTczNKaWNtTlRRM05qYzJNeGNXRlJRR0R3RUdGUlFYRmhjT0FTc0JCaFVVRnhRV014Y1dGUlFIQmlNaUp5WW5ORGMyYXdFSENoVUZFZ3dORENNQ0NBSUdDUWtCQVJ3VUF3TUVFUUlPR0FjUEdnME5TZ2tSRUVKWFdYTnlhV2dUQ2dZQkRDUUdEUzRTTmt3K2sydHNGQndDQlFVSkJ4SUpEaHdOQ3hnR0tsWW9HUk1BQUFBQ0FDMy9YQURLQXNJQUN3QkFBRGxBTmlNQkF3STlBUVFEQWt3QUJBTUVoZ1VCQUFBQllRQUJBU2hOQUFJQ0swMEFBd01tQTA0QkFEbzRLaWdVRWdjRkFBc0JDd1lJRmlzVElpWTFORFl6TWhZVkZBWURKaWNtTlRRMk16SVdIUUVVRnhZZkFoUVhGaGNXRlJRSEJnY0dJd1lqQmhVVUZ4UVdNeGNXRlJRSEJpTWlKeVluTkRjMmZ4UWRIUlFVSFIwMURRTUVIUlFVSFFNQ0JRWUNBUUVDQVFjRUNRc0hDQUVIQkJFQ0RoZ0hEeG9ORFVvSkVRNENZQjBVRkIwZEZCUWQvZUJpWUhSNUZCMGRGRFJjVmpvNk9nNERBd3dOQmdZTkRnZ0dDUUVCQ0FVSkJ4SUpEaHdOQ3hnR0tsWW9HUklBQUFBQUFRQTMvMXdBMUFCUUFCd0FOTEVHWkVSQUtRUUJBQUlCVEFNQkFBSUFoZ0FCQWdJQldRQUJBUUpoQUFJQkFsRUJBQTROQ1FnQUhBRWNCQWdXSzdFR0FFUVhJaWNtSnpRM05qY3lGaFVVRGdFakJoVVVGeFFXTXhjV0ZSUUhCcVFORFVvSkVTQXlGaHNjRUFFSEJCRUNEaGdIRDZRR0tsWW9HU2dGSHhJV0dRRUJDQVVKQnhJSkRod05DeGdBQUFBQUFRQUYvLzBDUUFLd0FFQUFqa3V3RUZCWVFBMGRIQkFHQkFFREt3RUVBUUpNRzBBTkhSd1FCZ1FCQXlzQkJRRUNURmxMc0JCUVdFQWhBQU1DQVFJREFZQUFBUVFDQVFSK0FBSUNJazBGQVFRRUFHSUdBUUFBSXdCT0cwQW5BQU1DQVFJREFZQUFBUVVDQVFWK0FBVUVBZ1VFZmdBQ0FpSk5BQVFFQUdJR0FRQUFJd0JPV1VBVEFRQTVPRE14SVI4WUZnb0lBRUFCUUFjSUZpc0ZJaWNtSnlZMUJ3WWpJaWNtTlRRL0FUWTNOamMwTmpNeUZoVUdEd0UzTmpNeUZ4WVZGQThCQmhVV0Z4UVhIZ0V6RmpNeU56NEJQd0V5RnhZVkZBWUhCZ0ZoU1VSRURnc3BDd3NmRGdZWlh3VUZCZ0ljRkJRZEFRb0NWQXNOSFE0SEdvc0RBZ0lLQVF3Q0dsc3RNUTRjRHdzT0RoY1FGR29ESHloTU9VVVlCaGdMREI0T05sNHdPRGdVSFIwVVQwOGxNQWNhQ3cwY0RsQU1TeVFSREJzSEV4b0dBd01EQVFnTEhnd2VCQlFBQUFBQi8vMy8rQUV2QXVnQU1RQmxRQWtoRnc4RkJBRURBVXhMc0IxUVdFQWdBQU1DQVFJREFZQUFBUVFDQVFSK0FBSUNKRTBBQkFRQVlnVUJBQUFqQUU0YlFCc0FBZ01DaFFBREFRT0ZBQUVFQVlVQUJBUUFZZ1VCQUFBakFFNVpRQkVCQUMwckd4a1VFZ2tIQURFQk1RWUlGaXNYSWljbVBRRU9BU01pSnlZMU5EOEJFVFEyTXpJV0ZSRTNOak15RnhZVkZBOEJGQmN5RnlNV015Y1dGeFl5RmhVVUJ1bzJKVE1MRmdzZkRnWVpSaDBVRkIwbkN3MGREZ2NhVndFQ0FRRURBZ0VFQ1FJckhCd0lGQ0ZIZUFZTUdBc01IZzRvQVZvVUhSMFUvdDBXQnhvTERSd09NYjhEQWdNQkFnRUNIUlFUSFFBQUF3QS8vL2tDd1FPK0FGZ0FiZ0NwQUxWTHNCUlFXRUFMcG5rQ0NBZUZBUVlJQWt3YlFBdW1lUUlJQ1lVQkJnZ0NURmxMc0JSUVdFQXZDUUVIQ0FlRkFBZ0dDSVVBQmdVR2hRMEtBZ1VFQllVQUFRRUVZUUFFQkNKTkN3SUNBQUFEWWd3QkF3TWpBMDRiUURNQUJ3a0hoUUFKQ0FtRkFBZ0dDSVVBQmdVR2hRMEtBZ1VFQllVQUFRRUVZUUFFQkNKTkN3SUNBQUFEWWd3QkF3TWpBMDVaUUNSdmIxdFpBQUJ2cVcrcHBLT1ZsSXlLZ29CeWNXVmpXVzViYmdCWUFGWXBKeEVPQ0JjckpUY3lOelkzTmpjMU56WS9BVFkxTkRjMk5TWW5KaWMxSnlZbkl6VW5KaThCSmljakp5WW5KaThCRHdFR0R3RUdEd0VpQndZUEFRWVBBZ1lIQmhVUEFSUWZBUllmQVJZZkFUTVZGeFlmQVJZZkFSWVhNeFl5SHdFbklpY21KeVkxTkRjMk16SVdGeFlWRkE0QkJ3WVRJaWNpSnlZbk5DY21KeUlIQmhVR0J3WWpJaWNtTlRRM05qYzJNeklYRmg4QkhnRVhGak0wTXo0RE56NEJOejRCTnpZekZoVUdCd1lCa3dvS0p5VUtFaFVJRWdvTENnRUNBUVFGQ2dnSkRBRUdEeEFKSUFrQkFSUW5EZ0V0RlFvU0VnSU1Dd2tCQVEwVUFRTUNDZzBIQlFrQkFnTUZDZ2dEQ0FvTEFRTU1EZ1lQRUFZUUdnTUhFQVFWSFVjOU9TVkRXVTJFU2FvNExRRlZUa2tRQlF4S0hBZ0lGZzhhQlFRSkN3Z0xJeDBPQndJT0h5Y3pOalVuREFnQ0JRRUtDd1FDQlFFQ0FRb0JBUVlIRWcwTkx3VXZJVnNCRFJJS0R4a0JDaDRWSHlnSUFnRVBHaU1QR2hrQ0R4SVJBUWNSRFFZVkFnRUlDUUlCQWdJQ0F3Y0JCZ2NHQWdnWkFRTUVEeHNRRVNJTUFURVpHQjRtRWdjUkVCRUJCQTRNQlFzSEF3Y0VBUUZpQVNNak4yaUNtV2RaUmw1VFhnSmlxVE1zQXVzQ1F4Y0VBZ3dJQXdRSUFoVVdKQmtMRFFZSE1TY29JeHNrRVFFQkFRSUNBd1FDQVFJU0JBSVJKZ2tHQlMxRE5DSUFBQUFBQXdBZS8rY0NPUU1oQUJZQVJBQi9BUUpMc0JSUVdFQVBmRThDQ1FoYkFRY0pKUUVDQXdOTUcwQVBmRThDQ1FwYkFRY0pKUUVDQXdOTVdVdXdGRkJZUURRS0FRZ0pDSVVBQndrR0NRY0dnQTBMQWdZQkNRWUJmZ0FKQ1NKTkJBRURBd0ZoQUFFQkswMEZBUUlDQUdFTUFRQUFMQUJPRzB1d0gxQllRRGdBQ0FvSWhRQUtDUXFGQUFjSkJna0hCb0FOQ3dJR0FRa0dBWDRBQ1FraVRRUUJBd01CWVFBQkFTdE5CUUVDQWdCaERBRUFBQ3dBVGh0QU13QUlDZ2lGQUFvSkNvVUFDUWNKaFFBSEJnZUZEUXNDQmdFR2hRUUJBd01CWVFBQkFTdE5CUUVDQWdCaERBRUFBQ3dBVGxsWlFDTkZSUUVBUlg5RmYzcDVhMnBpWUZoV1NFZEVRelF5TVRBWUZ3c0pBQllCRmc0SUZpc0ZJaWNtSnlZMU5EYzJNeklYRmhjV0ZSUUhEZ0VIQmljeVB3RTJOelkzTkRNMk56UXpOeVluTlNjbUp6UWpKaWNtSXlZaklnY1ZEZ0VqQndZSEJoVVVGeFlYRmpNVElpY2lKeVluTkNjbUp5SUhCaFVHQndZaklpY21OVFEzTmpjMk16SVhGaDhCSGdFWEZqTTBNejRETno0Qk56NEJOell6RmhVR0J3WUJHanMzU2lJZU16dG9WVXRqTEJZYUhHYzdKQzBRQ3dwRUpBd1JBUlVHQVFFRUNnRU5Ed0VxT0NZU0RCb01HQWtMQWhFUER3TUhEeDR4STVZRkRFb2NDQWdXRHhvRkJBa0xDQXNqSFE0SEFnNGZKek0yTlNjTUNBSUZBUW9MQkFJRkFRSUJDZ0VCQmdjU0RRMHZCUzhoR1I4d1UwaE1hRXBSS2psb01qSTNPRGRKRUF0aUFRRVRIUWtUQVIwaUF4QXdGUUlCSFJNQk5SWVBBZ2NCQkFrU0R6NFZHQnNtT2ljeUFmMENReGNFQWd3SUF3UUlBaFVXSkJrTERRWUhNU2NvSXhza0VRRUJBUUlDQXdRQ0FRSVNCQUlSSmdrR0JTMUROQ0lBQUFBQUF3QXgvL1VDaGdPK0FDY0FMZ0JwQVlKTHNCUlFXRUFUWmprQ0NBZEZBUVlJS2dFRUFRUUJBZ01FVEJ0QUUyWTVBZ2dKUlFFR0NDb0JCQUVFQVFJREJFeFpTN0FQVUZoQU1Ra0JCd2dIaFFBSUJnaUZBQVlGQm9VTkNnSUZBUVdGREFFRUFBTUNCQU5vQUFFQktFMEFBZ0lqVFFzQkFBQWpBRTRiUzdBUVVGaEFOQWtCQndnSGhRQUlCZ2lGQUFZRkJvVU5DZ0lGQVFXRkFBSURBQU1DQUlBTUFRUUFBd0lFQTJnQUFRRW9UUXNCQUFBakFFNGJTN0FVVUZoQU1Ra0JCd2dIaFFBSUJnaUZBQVlGQm9VTkNnSUZBUVdGREFFRUFBTUNCQU5vQUFFQktFMEFBZ0lqVFFzQkFBQWpBRTRiUzdBVlVGaEFOUUFIQ1FlRkFBa0lDWVVBQ0FZSWhRQUdCUWFGRFFvQ0JRRUZoUXdCQkFBREFnUURhQUFCQVNoTkFBSUNJMDBMQVFBQUl3Qk9HMEE0QUFjSkI0VUFDUWdKaFFBSUJnaUZBQVlGQm9VTkNnSUZBUVdGQUFJREFBTUNBSUFNQVFRQUF3SUVBMmdBQVFFb1RRc0JBQUFqQUU1WldWbFpRQ1V2THlnb0FRQXZhUzlwWkdOVlZFeEtRa0F5TVNndUtDNGhJQndiRFFzQUp3RW5EZ2dXS3hjaUp5WTFORDhCTmhJM05qTXlGeFlmQVJRekZ4WVhGaFVVQndZaklpY21KeU1HRHdFR0J3WUJKaWNHQndZSEV5SW5JaWNtSnpRbkppY2lCd1lWQmdjR0l5SW5KalUwTnpZM05qTXlGeFlmQVI0QkZ4WXpORE0rQXpjK0FUYytBVGMyTXhZVkJnY0dZaHNQQndJVkwyNU5EeHNrQzFrdEJnRUdQQ1lHR0FzTkJnMFlhT0VnSGhNR0VRc0JMQ1FqSEJZUERia0ZERW9jQ0FnV0R4b0ZCQWtMQ0FzakhRNEhBZzRmSnpNMk5TY01DQUlGQVFvTEJBSUZBUUlCQ2dFQkJnY1NEUTB2QlM4aEN4a0xEUVlIUHBNQklZWVlKTzVtRHdFUWgwd01EUm9QQndNRjhseGNPQk1LQndGMVdWbzROaUlqQVhvQ1F4Y0VBZ3dJQXdRSUFoVVdKQmtMRFFZSE1TY29JeHNrRVFFQkFRSUNBd1FDQVFJU0JBSVJKZ2tHQlMxRE5DSUFCUUFOLys4Q0pnTWhBQUlBTndBNkFGMEFtQUVmUzdBVVVGaEFGNVZvQWdrSWRBRUhDVVpGQWdBRFd5d1BEUVFCQUFSTUcwQVhsV2dDQ1FwMEFRY0pSa1VDQUFOYkxBOE5CQUVBQkV4WlM3QVVVRmhBTndvQkNBa0loUUFIQ1FZSkJ3YUFEZ3NDQmdRSkJnUitBQU1BQUFFREFHa0FDUWtpVFFBRUJDdE5EQUVCQVFKaUJRMENBZ0ltQWs0YlM3QWZVRmhBT3dBSUNnaUZBQW9KQ29VQUJ3a0dDUWNHZ0E0TEFnWUVDUVlFZmdBREFBQUJBd0JwQUFrSklrMEFCQVFyVFF3QkFRRUNZZ1VOQWdJQ0pnSk9HMEEyQUFnS0NJVUFDZ2tLaFFBSkJ3bUZBQWNHQjRVT0N3SUdCQWFGQUFNQUFBRURBR2tBQkFRclRRd0JBUUVDWWdVTkFnSUNKZ0pPV1ZsQUoxNWVQRHNEQTE2WVhwaVRrb1NEZTNseGIyRmdXRlpMU1VSQ08xMDhYUU0zQXpjZ0h3OElGaXMzTkNjWE5qYzJOekkxTmpjMk5UWTFMZ0VuTkNNbUp5WW5KaWNtSnlZbkppY0dJd2NHQndZSEJnY0dEd0VYRkJjVUZ4WVhGaDhCRmo4QkZRTW1KeVkxTkRjMk16SVhKelEzTmpNeUZ4WVhGaGN6RnhZVkZBWWpJaWNtSnc0QkV5SW5JaWNtSnpRbkppY2lCd1lWQmdjR0l5SW5KalUwTnpZM05qTXlGeFlmQVI0QkZ4WXpORE0rQXpjK0FUYytBVGMyTXhZVkJnY0djQUY4RWhFbEhnRVVDeEVDQVFNR0FRTU1Bd0lQQWdvVEF3SWZJd0lIR0EwUEV4QVZCd01CQVFFTEFnNFlCQWdURXE0Qm0zUkFKMXMrVVVoRkF3Y0tIZzBQSGdZRUd3RUpEUndYRWhBZURDSmlXZ1VNU2h3SUNCWVBHZ1VFQ1FzSUN5TWREZ2NDRGg4bk16WTFKd3dJQWdVQkNnc0VBZ1VCQWdFS0FRRUdCeElORFM4Rkx5SE1Bd0dBQWdZU0pRRVpHeWdXQ1JJTUZSSUJDQklEQkE0QkNBa0JBZ3dDQVFjRkRSUVdLUjRVQWhvYUV4b0NCQjhUQWdZSkNMSUZCUDdzQldGRlRJWmNQQzRiRGc0V0J3L0VxRW9TRFJjU0hCQXBNakU5QWxjQ1F4Y0VBZ3dJQXdRSUFoVVdKQmtMRFFZSE1TY29JeHNrRVFFQkFRSUNBd1FDQVFJU0JBSVJKZ2tHQlMxRE5DSUFBQUFBQWdCUC93Z0NmQUt2QUdNQWdBRFdRQk5PVFFJRUJTNEJBUVJaQVFBQmZRRUdCd1JNUzdBYlVGaEFNZ0FFQlFFRkJBR0FBQUVBQlFFQWZna0JCZ2NHaGdBSUFBY0dDQWRwQUFVRkEyRUFBd01pVFFBQUFBSmhBQUlDSXdKT0cwdXdNVkJZUURBQUJBVUJCUVFCZ0FBQkFBVUJBSDRKQVFZSEJvWUFBQUFDQ0FBQ2FRQUlBQWNHQ0FkcEFBVUZBMkVBQXdNaUJVNGJRRFVBQkFVQkJRUUJnQUFCQUFVQkFINEpBUVlIQm9ZQUF3QUZCQU1GYVFBQUFBSUlBQUpwQUFnSEJ3aFpBQWdJQjJFQUJ3Z0hVVmxaUUJObFpIbDRkSE5rZ0dXQUtTY3NKeTRzQ2dnY0t6Y1dGeDRCRkJjV014NEJGeFl6TmpjMk56TTNOalUwSnlZMU5EYzJNeklXRlJRSEJnY0dJeUluSmljbU5UUTNOamMrQWpNeUZ4NEJGUlFIQmlNaUp5NEJKeVluSmljbUp3Y0dJd1lITndZSEZRWUhJaFVHRlJRWEZoUVhJeGNWRmhjbkZSTWlKeVkxTkQ4Qk1qWTFOalUwSnlJdUFUVTBOak1XRnhZVkJnY0d3Z1VHQVFJT0F3SUhEeGNqUXlrb0hCa0NCeFlLQWdnUUdTTVpFQ2R2TkRSMFJVc1JDZ01FTUJsS1ZTcDVVQm9jQkE4Y0hnNERCUkFKRUI0aEdSb1pCQVVqRFFZaUd3OEhBUmdEQVFFQkFRWUdBWVlhRHdjWURnSVJCQWNCRUJ3YkZqSWdFUWxLRGE4UEJnRUNBZ3dEQkFnR0NnRUVCQW9FRFJJVEhnY0hEZ3dWU1NJaElFVU9CaVl2WGpSSEtTcGhVeVUwR0U4YVF4QU1DeHNaQ2hJY0RBMFVDQVVCQVFFSkJRTU5Id0VVRXdFK1lEUXRCQVlDQVFRYkVBRUMvbGtZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNId1VvR1NoV0tnWUFBQUFBQVFBYy93Z0NBd0lYQUdRQWlVQUtRd0VEQkVzQkJnY0NURXV3RGxCWVFDOEFBUUlFQWdGeUFBUURBZ1FEZmdBSEJRWUZCd2FBQUFZR2hBQUNBZ0JoQUFBQUpVMEFBd01GWVFBRkJTd0ZUaHRBTUFBQkFnUUNBUVNBQUFRREFnUURmZ0FIQlFZRkJ3YUFBQVlHaEFBQ0FnQmhBQUFBSlUwQUF3TUZZUUFGQlN3RlRsbEFFRjllVUU1SFJqOCtOVFFZSmhvSUNCa3JGeVluSmljbU5UUTNOamN5RnhZVkZBY0dJeUl2QVRVbkppY21KeUlIQmdjR0J3WVBBUVlWQmhVVUh3RVdId0VXRnpJV0h3RS9BVFkvQVRZM05qYzJNeklYRmhVR0J3WUhGaGNXRlFZSEJpTWlKeVkxTkQ4Qk1qWTFOalUwSnlJdUFUVTBOemJpSmlSZ0dBUk1VMzZDUVFjWkRBMGNEUXdWQmhBSktEQTZFUmtCQWhVSUJRZ0NEQUVKRFFJY01RTUNKdzBkRWhZVUFRUURCUklMRFFZSEl3UXdNbFFSRGhFSlNnME5HZzhIR0E0Q0VRUUhBUkFjRGdRS0N4aENjUmdZV1ZwZUNtOE1EQndQQmhnU0FSVUdCd1lESlFvZUFnRWJGdzRlQ0FRTEVpRUJGUklCSWhvQ0NnRUNCZ3dmQkFrTEV3b0hBZ3NsTmpJMEFRc1JHU2hXS2dZWUN3MGNEZ2tTQndrRkNBRUJHUllTRUFVQUFBQURBREgvOVFLR0E4WUFCZ0EyQUhBQStVQVRLeW9pRWdRQkJXOWNBZ01BQVZVQkFnTURURXV3RDFCWVFCOEFCUUVGaFFZQkFBQURBZ0FEYUFjQkFRRWtUUUFDQWlOTkFBUUVJd1JPRzB1d0VGQllRQ0lBQlFFRmhRQUNBd1FEQWdTQUJnRUFBQU1DQUFOb0J3RUJBU1JOQUFRRUl3Uk9HMHV3RlZCWVFCOEFCUUVGaFFZQkFBQURBZ0FEYUFjQkFRRWtUUUFDQWlOTkFBUUVJd1JPRzB1d0hWQllRQ0lBQlFFRmhRQUNBd1FEQWdTQUJnRUFBQU1DQUFOb0J3RUJBU1JOQUFRRUl3Uk9HMEFpQUFVQkJZVUhBUUVBQVlVQUFnTUVBd0lFZ0FZQkFBQURBZ0FEYUFBRUJDTUVUbGxaV1ZsQUZ3Y0hBQUJtWkZKUVNrbEZSQWMyQnpZQUJnQUdDQWdXS3dFbUp3WUhCZ2NUTmpJM05qOEJQZ0UvQWpRbk5DOEJMZ0VuSmljbUx3RW1KeU1IRGdRUEFSVVVGeFFYSGdFZkFSWXlId0VXSHdFVU14Y1dGeFlWRkFjR0l5SW5KaWNqQmc4QkJnY0dJeUluSmpVMFB3RTJOelkzSmljbU5UUS9BVFl6TWhjV0Z4WVZGQWNHQndZQm15UWpIQllQRFZvQ0FnRUdCQUVHQ1FFSkJBVUJDQVVHQXdJQkJRa0VCZ1VPRFFZRUJRUURBUU1GRHcwQkN3Y0JCQUk1VlN3R0FRWThKZ1lZQ3cwR0RSaG80U0FlRXdZUkN3MGJEd2NDRlM4M01rVXpIUm8vQmlRbEZ4ZzdJaGtFRWprSEFXcFpXamcySWlNQmZnRUJBZ1FCQkFvQ0RoUUtDd0lCRGdRSEFnRUNCQU1DQVFJRUF3SUZCQVFDQ3hBSUNnZ1ZEUU1HQXdFQlZ1UmpEd0VRaDB3TURSb1BCd01GOGx4Y09CTUtCeGtMRFFZSFBwT1JnM3NZTVNzeVRpZ0VFd2NVTkNrc0VSRkJKUVVBQmdBTi8rOENKZ05UQUFJQU53QTZBRjBBZEFDa0FHZEFaSm1Za0lBRUNBZEdSUUlBQTFzc0R3MEVBUUFEVEFBSENBZUZEQUVJQ3dFR0F3Z0dhZ0FEQUFBQkF3QnBBQVFFSzAwSkFRRUJBbUVGQ2dJQ0FpWUNUblYxWDE0OE93TURkYVIxcEdwb1huUmZkRmhXUzBsRVFqdGRQRjBETndNM0lCOE5DQllyTnpRbkZ6WTNOamN5TlRZM05qVTJOUzRCSnpRakppY21KeVluSmljbUp5WW5CaU1IQmdjR0J3WUhCZzhCRnhRWEZCY1dGeFlmQVJZL0FSVURKaWNtTlRRM05qTXlGeWMwTnpZek1oY1dGeFlYTXhjV0ZSUUdJeUluSmljT0FRTWlKeVluSmpVMFB3RTJNeklYRmhjV0ZSUUhCZ2NHSnpZeU56WS9BVDRCUHdJMEp6UXZBUzRCSnlZbkppOEJKaWNqQnc0RUR3RVZGQmNVRng0Qkh3RVdNaGR3QVh3U0VTVWVBUlFMRVFJQkF3WUJBd3dEQWc4Q0NoTURBaDhqQWdjWURROFRFQlVIQXdFQkFRc0NEaGdFQ0JNU3JnR2JkRUFuV3o1UlNFVURCd29lRFE4ZUJnUWJBUWtOSEJjU0VCNE1JbUlPRmhnNUlCby9CaVFsRnhnN0loa0VFamtnSHdJQ0FRWUVBUVlKQVFrRUJRRUlCUVlEQWdFRkNRUUdCUTROQmdRRkJBTUJBd1VQRFFFTEJ3RUVBc3dEQVlBQ0JoSWxBUmtiS0JZSkVnd1ZFZ0VJRWdNRURnRUlDUUVDREFJQkJ3VU5GQllwSGhRQ0dob1RHZ0lFSHhNQ0Jna0lzZ1VFL3V3RllVVk1obHc4TGhzT0RoWUhEOFNvU2hJTkZ4SWNFQ2t5TVQwQ0l3a1lOU3N5VGlnRUV3Y1VOQ2tzRVJGQkpSUmlBUUVDQkFFRUNnSU9GQW9MQWdFT0JBY0NBUUlFQXdJQkFnUURBZ1VFQkFJTEVBZ0tDQlVOQXdZREFRRUFBQUFEQUQvLytRTEJBcm9BSndCREFGNEFWMEJVRmdFRUExaFhUeWtmREFZRkJBTUJBUVVEVEFBREFnUUNBd1NBQUFFRkFBVUJBSUFBQkFRQ1lRQUNBaUpOQ0FZQ0JRVUFZUWNCQUFBakFFNUVSQUlBUkY1RVhseGJNakFhR0JNUkJ3VUFKd0luQ1FnV0t3VW5JaWNIQmlNaUpqVTBOamNtTlRRM05qTXlGeFlYTnpZM01oWVhGQVlIRnhZVkZBNEJCd1lsQVNjbUx3RW1KeVl2QVFZSEJnY0dCd1lIQmdjR0ZROEJGQmNXRnpZM05qYzJOelUyTnpZMU5EYzJOU1luTlNjQkZoY1dNeklYQVlFZFgwd1BEaGNUR3hnTE8xbE5oRWxWSnlBUURSVVVIUUVaQ3dZdEFWVk9TZjd0QVVrRkpRa0NGQ2NPQVMwcEd5QUREUlFFQWcwS0ZRRUNDQXplR0NNbENoSVZFUk1WQVFJQ0VnWCt0UkFWSGlFSUJBY0JQdzhQR3hnU0dRdGplcGxuV1NNUUhCQU9BUndVRlJrTUNsTmVBbUtwTXl6VkFWWUVHQUlCQ0FrQ0FRSUVDaEVGQ0JrRUJCUVdNQjhCTVI4d0xJc0NEQklLRHhrQkZTZzdGQUlCRHhvM0xnSUovcWtNQ1E0QkFBQUFBd0FPLytjQ1NnSWdBQkVBSlFCTkFMSkFFenNCQUFaRk15TWlIZ0VHQWdBb0FRUUNBMHhMc0JkUVdFQWlBQVlHSlUwQkFRQUFCV0VBQlFVclRRQUVCQ05OQndFQ0FnTmhDQUVEQXl3RFRodExzQnRRV0VBbEFBWUZBQVVHQUlBQkFRQUFCV0VBQlFVclRRQUVCQ05OQndFQ0FnTmhDQUVEQXl3RFRodEFLQUFHQlFBRkJnQ0FBQVFDQXdJRUE0QUJBUUFBQldFQUJRVXJUUWNCQWdJRFlRZ0JBd01zQTA1WldVQVhKeVlTRWo0OU9qZ3RLaVpOSjAwU0pSSWtJUlFKQ0JnclB3RW1KeVlqSmlNaUJ3WWpCd1lIQmhVVUZ6YzJOelkzTkRNMk56UXpOeVluTlNjSEZqTVhJaWNPQVNNaUxnRTFORDRCTnlZMU5EYzJNeklYTnpZek1oNEJGUlFQQVJZVkZBY09BUWNHais4WUhDWVNEQm9lRkFZQ0VROFBBNnNLUkNRTUVRRVZCZ0VCQkFvTStpY2hEbHhGRFJzUkFoY1pBU0VSSXpNN2FIdGFNQTRUQWhVWkVURXhHaHhuT3lUQjBCSUxEd0lRQlJJUFBoVVlNYU1CRXgwSkV3RWRJZ01RTUJVQ0Z0b2pZMFVMRndFY0VRSVhIZzVHV21oS1VVOHFEUUlkRWhZUEtrbE9OemczU1JBTEFBQUNBRThBQ1FKOEExSUFZd0J2QUxsQUQwNU5BZ1FGTGdFQkJGa0JBQUVEVEV1d0cxQllRQ3dBQkFVQkJRUUJnQUFCQUFVQkFINEFCd0FHQXdjR2FRQUZCUU5oQUFNRElrMEFBQUFDWVFBQ0FpTUNUaHRMc0RGUVdFQXBBQVFGQVFVRUFZQUFBUUFGQVFCK0FBY0FCZ01IQm1rQUFBQUNBQUpsQUFVRkEyRUFBd01pQlU0YlFDOEFCQVVCQlFRQmdBQUJBQVVCQUg0QUJ3QUdBd2NHYVFBREFBVUVBd1ZwQUFBQ0FnQlpBQUFBQW1FQUFnQUNVVmxaUUExdWJHaG1LU2NzSnk0c0NBZ2NLemNXRng0QkZCY1dNeDRCRnhZek5qYzJOek0zTmpVMEp5WTFORGMyTXpJV0ZSUUhCZ2NHSXlJbkppY21OVFEzTmpjK0FqTXlGeDRCRlJRSEJpTWlKeTRCSnlZbkppY21Kd2NHSXdZSE53WUhGUVlISWhVR0ZSUVhGaFFYSXhjVkZoY25GUk1VQmlNaUpqVTBOak15RnNJRkJnRUNEZ01DQnc4WEkwTXBLQndaQWdjV0NnSUlFQmtqR1JBbmJ6UTBkRVZMRVFvREJEQVpTbFVxZVZBYUhBUVBIQjRPQXdVUUNSQWVJUmthR1FRRkl3MEdJaHNQQndFWUF3RUJBUUVHQmdIV0hSUVVIUjBVRkIydkR3WUJBZ0lNQXdRSUJnb0JCQVFLQkEwU0V4NEhCdzRNRlVraUlTQkZEZ1ltTDE0MFJ5a3FZVk1sTkJoUEdrTVFEQXNiR1FvU0hBd05GQWdGQVFFQkNRVUREUjhCRkJNQlBtQTBMUVFHQWdFRUd4QUJBZ0p5RkIwZEZCUWRIUUFBQUFJQUhQL3JBZ01Dc2dCR0FGSUFpYlZEQVFRRkFVeExzQTVRV0VBdUFBSURCUU1DY2dBRkJBTUZCSDRBQmdZSFlRQUhCeUpOQUFNREFXRUFBUUVsVFFBRUJBQmhDQUVBQUN3QVRodEFMd0FDQXdVREFnV0FBQVVFQXdVRWZnQUdCZ2RoQUFjSElrMEFBd01CWVFBQkFTVk5BQVFFQUdFSUFRQUFMQUJPV1VBWEFRQlJUMHRKUHo0MU5Cd2JFeEVMQ2dCR0FVWUpDQllyQlNJbkppY21OVFEzTmpjeUZ4WVZGQWNHSXlJdkFUVW5KaWNtSnlJSEJnY0dCd1lQQVFZVkJoVVVId0VXSHdFV0Z6SVdId0UvQVRZL0FUWTNOamMyTXpJWEZoVUdCd1lERkFZaklpWTFORFl6TWhZQkxFOUZZQmdFVEZOK2drRUhHUXdOSEEwTUZRWVFDU2d3T2hFWkFRSVZDQVVJQWd3QkNRMENIREVEQWljTkhSSVdGQUVFQXdVU0N3MEdCeU1FTUROQUhSUVVIUjBVRkIwVkxrSnhHQmhaV2w0S2J3d01IQThHR0JJQkZRWUhCZ01sQ2g0Q0FSc1hEaDRJQkFzU0lRRVZFZ0VpR2dJS0FRSUdEQjhFQ1FzVENnY0NDeVUyTWpVQ2xoUWRIUlFVSFIwQUFnQWhBQUFDcWdOU0FHRUFiUUNUUUF0VkxRSUZCMGtCQkFVQ1RFdXdFRkJZUUM0QUFnTUhBd0p5QUFrQUNBRUpDR2tBQndZQkJRUUhCV2tBQXdNQllRQUJBU0pOQUFRRUFHRUtBUUFBSXdCT0cwQXZBQUlEQndNQ0I0QUFDUUFJQVFrSWFRQUhCZ0VGQkFjRmFRQURBd0ZoQUFFQklrMEFCQVFBWVFvQkFBQWpBRTVaUUJzQkFHeHFabVJiV1ZKUlVFNDVOeVFmRkJJTUNnQmhBV0VMQ0JZcklTSW5KalUwTno0Qk56WXpNaGNXRlJRSEJpTWlKeVluSWljbUp5SW1KeTRCSXlJSElnY0dCdzRCQndZUEFUY0dGUlFYTWhVV0Z4WXpNamN5TnpZM01qYytBak0zTkRjMk55WTBKaWNtSXdZSElpY21OVFEyTnpZek1oY1dGUlFIQmdNVUJpTWlKalUwTmpNeUZnR0xxRkp3SlNhSFdSWVdiRE1OQ3c4VklRMENDd0VCQlFjQ0N3SVRBUUlUQmg0ekp5d0JCUWdzQ2dJQkFnNEJIandrZFV3MUF3TVFCUVFHQVFJQkFRb0NDd0VCQWdJWWRTc3FHUThJQWc4WVgzNC9OQmMrdmgwVUZCMGRGQlFkUldPSVRrdFRmeGdGWHhVU0VBNFJIUVVTQWdjR0NRRUZBUUVoR0RVQ0JRdytRUWdDQ1I0akl3RStLUmtWQWdnRkNBSUNBaEVEQXhFYUFnTUNBeDBCQkJVT0R3TVZEQkVySTBFak1Id0RJUlFkSFJRVUhSMEFBQUFBQXdBaS95RUNKd0t5QUM0QWdBQ01BT2RBRUc4QkFBWWpEdzREQVFCZEFRVUJBMHhMc0NSUVdFQTBBQU1GQkFVREJJQUFDQWdKWVFBSkNTSk5BQUFBQm1FSEFRWUdLMDBLQVFFQkJXRUFCUVVqVFFBRUJBSmhDd0VDQWljQ1RodExzQzFRV0VBeUFBTUZCQVVEQklBSEFRWUFBQUVHQUdjQUNBZ0pZUUFKQ1NKTkNnRUJBUVZoQUFVRkkwMEFCQVFDWVFzQkFnSW5BazRiUURrQUJ3Z0dDQWNHZ0FBREJRUUZBd1NBQUFZQUFBRUdBR2NBQ0FnSllRQUpDU0pOQ2dFQkFRVmhBQVVGSTAwQUJBUUNZUXNCQWdJbkFrNVpXVUFmTUM4QUFJdUpoWU56Y1cxclltQkhSRG80TDRBd2dBQXVBQzRYRmd3SUZpc2xOelkzTmo4Qk5qYzJOelkzTmpjbkppY3VBU2NtTHdFSEJnY2pCZ2NHRHdFT0FROEJGQmNWRmhjV0h3RVdGeE1pSnlZbkpqVTBOell6TWhjVkZ4WVhGaGNXTWhZWE16STNPZ0UzTmpjek5qTTJOek0zTlRNMlB3RTJQd0lHQndZaklpY21KeVkxTkRjK0FUTXlId0UwTmpNeUhnRVZCeFFYRmhVVUJ3WUhCaE1VQmlNaUpqVTBOak15RmdFR0FSWVZIUmtCSVJZQ0FRd0pCUWNFQ1FZUEh3NFRFeFlHRHc0QkZSSVhFd2NZR2dZQkFRTUdDeFlMRlJrZk1TOURLUWNZREF3YUVSWUpFZ3NhQVFVSUF3NFpDQUlGRWhvSUFnTUVFQkFCRlFFSkNBUUhCQUVEUEZBZ0lDQWdTaW9pREIyY1YwTTRCUjBVRkJ3Q0FRUURMaVU2UndNZEZCUWRIUlFVSFZnQkF3a05Fd0VhSFFJQ0VCSUlGVkVUQ1I4bENnd0ZBUUVDQmdvTkV4Y0tJVUFpR0F3TEF4RVFHUllKRHdUK3lSRVlPZ3NNSEE4SEdBRVZCZ2tGQlFFQkFRSUVCZ1VEQ0F3VkFROFFDeGthQmpBN0dRb0tHMFEyUmlzb2FaZ3VCQm9kSEN3WEwxVk1RVUtkVHpZY0l3TmdGQjBkRkJRZEhRQUFBd0JkLyt3Q2JnUEdBRWtBWUFDUUFPdEFFSVdFZkd3RUJnVTZPRFVTQkFJRUFreExzQlJRV0VBakFBVUdCWVVEQVFFQklrMElBUVFFQmw4SkFRWUdKRTBBQWdJQVlRY0JBQUFzQUU0YlM3QVpVRmhBSndBRkJnV0ZBQU1ESWswQUFRRWlUUWdCQkFRR1h3a0JCZ1lrVFFBQ0FnQmhCd0VBQUN3QVRodExzQjFRV0VBcUFBVUdCWVVBQVFNRUF3RUVnQUFEQXlKTkNBRUVCQVpmQ1FFR0JpUk5BQUlDQUdFSEFRQUFMQUJPRzBBb0FBVUdCWVVBQVFNRUF3RUVnQWtCQmdnQkJBSUdCR29BQXdNaVRRQUNBZ0JoQndFQUFDd0FUbGxaV1VBZFlXRkxTZ0VBWVpCaGtGWlVTbUJMWUVKQUpDSU1DZ0JKQVVrS0NCWXJCU0luSmljbU5UUW5ORFl6TWhZWEZoVVVGeFFYRmhjVUZ4UWZBUllYRmhjV01oWXpNamNITWpZek56STJOelkxTmpjMFBnRTFOalVuSmljdUFUVTBOell6TWhZWEZoVVVCd1lESWljbUp5WTFORDhCTmpNeUZ4WVhGaFVVQndZSEJpYzJNamMyUHdFK0FUOENOQ2MwTHdFdUFTY21KeVl2QVNZbkl3Y09CQThCRlJRWEZCY2VBUjhCRmpJWEFYSXBKNGNrR0FJZEZCUWJBUUlJSGdZUEJCc0NDQllSRVFFRkVnVUVGQUVDQXdFU0FRRVdBeklOQVFJSUFRZ0NBUUlJQ3g0TUhnVVBLejZwRmhnNUlCby9CaVFsRnhnN0loa0VFamtnSHdJQ0FRWUVBUVlKQVFrRUJRRUlCUVlEQWdFRkNRUUdCUTROQmdRRkJBTUJBd1VQRFFFTEJ3RUVBaFFQTWFSb28ySTRGQndjRkRaVWdUZ2tXUTRZQWdRRkdBRUlDUWNEQVFFRUFRSUxBUllEQWtsekFRUUhDVUJOTWtJZUFnb0hEdzhXRUJSaVdxdUV0Z0thQ1JnMUt6Sk9LQVFUQnhRMEtTd1JFVUVsRkdJQkFRSUVBUVFLQWc0VUNnc0NBUTRFQndJQkFnUURBZ0VDQkFNQ0JRUUVBZ3NRQ0FvSUZRMERCZ01CQVFBREFETC80d0lsQTFNQVFBQlhBSWNCUjB1d0ZGQllRQlI4ZTNOakJBY0dNeFVQQlFRREFnTUJBQU1EVEJ0QUZIeDdjMk1FQndZekZROEZCQU1DQXdFQkF3Tk1XVXV3RUZCWVFDSUFCZ2NHaFFvQkJ3a0JCUUlIQldvRUFRSUNKVTBBQXdNQVlRRUlBZ0FBTEFCT0cwdXdGRkJZUUNZQUJnY0doUW9CQndrQkJRSUhCV29BQkFRclRRQUNBaVZOQUFNREFHRUJDQUlBQUN3QVRodExzQ3BRV0VBcUFBWUhCb1VLQVFjSkFRVUNCd1ZxQUFRRUswMEFBZ0lsVFFBREF3RmhBQUVCSmswSUFRQUFMQUJPRzB1d0xWQllRQzBBQmdjR2hRQUNCUU1GQWdPQUNnRUhDUUVGQWdjRmFnQUVCQ3ROQUFNREFXRUFBUUVtVFFnQkFBQXNBRTRiUUMwQUJnY0doUUFDQlFNRkFnT0FDZ0VIQ1FFRkFnY0ZhZ0FEQXdGaEFBRUJKazBJQVFBQUJHRUFCQVFyQUU1WldWbFpRQjlZV0VKQkFRQlloMWlIVFV0QlYwSlhOelVpSVJNUkNnZ0FRQUZBQ3dnV0t3VWlKalUyTlFZSEJpTWlKeVkxTkRjK0FUTXlGaFVIQmhVVUZ4NEJGeFlYSGdFWE1qYzJQd0VqUHdFMk56WTNOalUwUHdFK0FUTXlGaFVIRkJZVkZBY0dBeUluSmljbU5UUS9BVFl6TWhjV0Z4WVZGQWNHQndZbk5qSTNOajhCUGdFL0FqUW5OQzhCTGdFbkppY21Md0VtSnlNSERnUVBBUlVVRnhRWEhnRWZBUll5RndIdkVoOEdJVHN3TjBBdllBc0JHeFVUSGdVSEZ3UUdCUUVOQ1JVakJ3Y1REQTBCRmdFVkR4OE5BUUlKQVJzVkV4NEJFQk1RN1JZWU9TQWFQd1lrSlJjWU95SVpCQkk1SUI4Q0FnRUdCQUVHQ1FFSkJBVUJDQVVHQXdJQkJRa0VCZ1VPRFFZRUJRUURBUU1GRHcwQkN3Y0JCQUlkSEJReU1rSW5IaDlIeFRLVEZSd2NGVUUrUDE0NkNBd0dBZzBGQ2dFREJBa0pGZ0lmSUZaYkFRTUpBMjRWSEJ3Vk9FNldTb01WRHdJd0NSZzFLekpPS0FRVEJ4UTBLU3dSRVVFbEZHSUJBUUlFQVFRS0FnNFVDZ3NDQVE0RUJ3SUJBZ1FEQWdFQ0JBTUNCUVFFQWdzUUNBb0lGUTBEQmdNQkFRQUFBQUlBWGYvc0FtNER2Z0JKQUlRQTgwdXdGRkJZUUJLQlZBSUhCbUFCQlFjNk9EVVNCQUlCQTB3YlFCS0JWQUlIQ0dBQkJRYzZPRFVTQkFJQkEweFpTN0FVVUZoQUtRZ0JCZ2NHaFFBSEJRZUZBQVVFQllVTENRSUVBUVNGQXdFQkFTSk5BQUlDQUdJS0FRQUFMQUJPRzB1d0dWQllRREVBQmdnR2hRQUlCd2lGQUFjRkI0VUFCUVFGaFFzSkFnUURCSVVBQXdNaVRRQUJBU0pOQUFJQ0FHSUtBUUFBTEFCT0cwQTBBQVlJQm9VQUNBY0loUUFIQlFlRkFBVUVCWVVMQ1FJRUF3U0ZBQUVEQWdNQkFvQUFBd01pVFFBQ0FnQmlDZ0VBQUN3QVRsbFpRQjlLU2dFQVNvUktoSDkrY0c5blpWMWJUVXhDUUNRaURBb0FTUUZKREFnV0t3VWlKeVluSmpVMEp6UTJNeklXRnhZVkZCY1VGeFlYRkJjVUh3RVdGeFlYRmpJV016STNCekkyTXpjeU5qYzJOVFkzTkQ0Qk5UWTFKeVluTGdFMU5EYzJNeklXRnhZVkZBY0dBeUluSWljbUp6UW5KaWNpQndZVkJnY0dJeUluSmpVME56WTNOak15RnhZZkFSNEJGeFl6TkRNK0F6YytBVGMrQVRjMk14WVZCZ2NHQVhJcEo0Y2tHQUlkRkJRYkFRSUlIZ1lQQkJzQ0NCWVJFUUVGRWdVRUZBRUNBd0VTQVFFV0F6SU5BUUlJQVFnQ0FRSUlDeDRNSGdVUEt6NDhCUXhLSEFnSUZnOGFCUVFKQ3dnTEl4ME9Cd0lPSHljek5qVW5EQWdDQlFFS0N3UUNCUUVDQVFvQkFRWUhFZzBOTHdVdklSUVBNYVJvbzJJNEZCd2NGRFpVZ1Rna1dRNFlBZ1FGR0FFSUNRY0RBUUVFQVFJTEFSWURBa2x6QVFRSENVQk5Na0llQWdvSER3OFdFQlJpV3F1RXRnTDRBa01YQkFJTUNBTUVDQUlWRmlRWkN3MEdCekVuS0NNYkpCRUJBUUVDQWdNRUFnRUNFZ1FDRVNZSkJnVXRRelFpQUFBQ0FETC80d0lsQXlFQVFBQjdBYzlMc0JSUVdFQVdlRXNDQ0FkWEFRWUlNeFVQQlFRREFnTUJBQU1FVEJ0QUZuaExBZ2dKVndFR0NETVZEd1VFQXdJREFRRURCRXhaUzdBUVVGaEFMd2tCQndnSGhRQUdDQVVJQmdXQURBb0NCUUlJQlFKK0FBZ0lJazBFQVFJQ0pVMEFBd01BWWdFTEFnQUFMQUJPRzB1d0ZGQllRRE1KQVFjSUI0VUFCZ2dGQ0FZRmdBd0tBZ1VFQ0FVRWZnQUlDQ0pOQUFRRUswMEFBZ0lsVFFBREF3QmlBUXNDQUFBc0FFNGJTN0FmVUZoQU93QUhDUWVGQUFrSUNZVUFCZ2dGQ0FZRmdBd0tBZ1VFQ0FVRWZnQUlDQ0pOQUFRRUswMEFBZ0lsVFFBREF3RmlBQUVCSmswTEFRQUFMQUJPRzB1d0tsQllRRFlBQndrSGhRQUpDQW1GQUFnR0NJVUFCZ1VHaFF3S0FnVUVCWVVBQkFRclRRQUNBaVZOQUFNREFXSUFBUUVtVFFzQkFBQXNBRTRiUzdBdFVGaEFPUUFIQ1FlRkFBa0lDWVVBQ0FZSWhRQUdCUWFGREFvQ0JRUUZoUUFDQkFNRUFnT0FBQVFFSzAwQUF3TUJZZ0FCQVNaTkN3RUFBQ3dBVGh0QU9RQUhDUWVGQUFrSUNZVUFDQVlJaFFBR0JRYUZEQW9DQlFRRmhRQUNCQU1FQWdPQUFBTURBV0lBQVFFbVRRc0JBQUFFWVFBRUJDc0FUbGxaV1ZsWlFDRkJRUUVBUVh0QmUzWjFaMlplWEZSU1JFTTNOU0loRXhFS0NBQkFBVUFOQ0JZckJTSW1OVFkxQmdjR0l5SW5KalUwTno0Qk16SVdGUWNHRlJRWEhnRVhGaGNlQVJjeU56WS9BU00vQVRZM05qYzJOVFEvQVQ0Qk16SVdGUWNVRmhVVUJ3WURJaWNpSnlZbk5DY21KeUlIQmhVR0J3WWpJaWNtTlRRM05qYzJNeklYRmg4QkhnRVhGak0wTXo0RE56NEJOejRCTnpZekZoVUdCd1lCN3hJZkJpRTdNRGRBTDJBTEFSc1ZFeDRGQnhjRUJnVUJEUWtWSXdjSEV3d05BUllCRlE4ZkRRRUNDUUViRlJNZUFSQVRFSE1GREVvY0NBZ1dEeG9GQkFrTENBc2pIUTRIQWc0Zkp6TTJOU2NNQ0FJRkFRb0xCQUlGQVFJQkNnRUJCZ2NTRFEwdkJTOGhIUndVTWpKQ0p4NGZSOFV5a3hVY0hCVkJQajllT2dnTUJnSU5CUW9CQXdRSkNSWUNIeUJXV3dFRENRTnVGUndjRlRoT2xrcURGUThDWkFKREZ3UUNEQWdEQkFnQ0ZSWWtHUXNOQmdjeEp5Z2pHeVFSQVFFQkFnSURCQUlCQWhJRUFoRW1DUVlGTFVNMElnQUFBQUFDQUdMLytRS1JBNk1BTVFCTEFFSkFQejhCQkFVc0pCSURBQUVDVEFZQkJRUUZoUWdCQkFFRWhRSUJBUUVvVFFNSEFnQUFJd0JPTXpJQkFFTkNQRG95U3pOTEtTY2ZIUXdLQURFQk1Ra0lGaXNYSWlZbk5qYzJOelEzTmpNeUZoY1dGeFlYRkRNVk5qOEJOajBCUGdFek1oWWRBUlFIQmdjR0l5SW5KaWNIQmdjT0FSTWlMd0VtTlRRM05qTXlGeFlYTmpjMk16SVhGaFVVRHdFR2t4UWNBUU1TRFFjWURBd2lIQkF6WlRReEFRc0lBeElCSEJRVUhRc0tMd3dqSjFOeVV3WVRBZ0VjMGhNUFpoZ0hEeHdNQzA0SkFsVUxEQWNISlJsbER3Y2RGTEN2Z29NYkR3WkNJSHkwWFQ4QkFUTXpHNUhWR1JRY0hCUW1qWXlkbFNOM3BibEdyN0FVSFFMeEQwOFBHdzBMR1FjNUNnRkNCd0lOSXhvUVRnOEFBQUFDQUV6Lyt3SWxBd01BTmdCUUFKSkxzQzFRV0VBT1JBRUZCaWdCQVFNYkFRQUJBMHdiUUE1RUFRVUdLQUVCQXhzQkFnRURURmxMc0MxUVdFQWZCd0VHQlFhRkNRRUZBd1dGQUFFQkEyRUVBUU1ESzAwQ0NBSUFBQ01BVGh0QUl3Y0JCZ1VHaFFrQkJRTUZoUUFCQVFOaEJBRURBeXROQUFJQ0kwMElBUUFBSXdCT1dVQWJPRGNCQUVoSFFUODNVRGhRS3lrbkpTQWVGQklBTmdFMkNnZ1dLd1VpSmpVME5qY21KeVkxSmk4QkppY21JeVlqQmdjR0J3WUhCZ2NSRkFZaklpWTFFVFEyTXpJWE5qTXlGeFlYRmhVVUJ3WUhGQVlESWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCZ0hwRXgwS0FRTVJBUW9FQVI4dUdnZ0VKUThhRUFJT0N3SUZIQlFVSFIwVUd3OHlRVEF2UUMwL0JRVUJIY1VURDJZWUJ3OGNEQXRPQ1FKVkN3d0hCeVVaWlE4RkhCUXBZRGRYS3dFQ0VnVUNKZzRJQWdFS0NRSUpGUXNJL3JFVUhSMFVBY1FVSFJvZEVoY3pQNjB3SlRVc0ZCd0NUdzlQRHhzTkN4a0hPUW9CUWdjQ0RTTWFFRTRQQUFNQVkvL3pBa2tEbndBWkFGQUFmUUNGUUJCM1l3SUdCeGdMQWdBQlNRRURBQU5NUzdBS1VGaEFKUUFIQmdlRkFBWUZCb1VJQVFBQUF3SUFBMmtBQVFFRllRQUZCU0pOQkFrQ0FnSWpBazRiUUNVQUJ3WUhoUUFHQlFhRkNBRUFBQU1DQUFOcEFBRUJCV0VBQlFVaVRRUUpBZ0lDSmdKT1dVQWJHeG9CQUhGd1hWeEFQRFV6TGkwYVVCdFFGeFVBR1FFWkNnZ1dLeE0yTnpZM1BnRS9BVFk5QVNZbkxnRW5JeVl2QXc4QkZ3RWlKeVluTlRRakppY21Md0VtTHdFbUp5SW1JaWNHRlE0Qkl5SW1OVFFTTnpRMk1qOEJNaGNXRnhZVkZBY0dCeFlYRmhVVUJ3WURCeU1HQndZVkJnY0dCd1lqSWljbUp5WTFORGMyTnpZM05qOENOamMyTXpJWEZoY1dGUlFIQmdjR0IvOG5KaTByRUI0SEJnUUNDZ1lWRlFFZkt3Y29OaW9EQ3dGREpBc0ZCd0VYSXhBcUVDSWhCaG9UQWdjS0J3TUJIQlFVSFFnQkd5MFhJbHMvanlZSkR5VjZmaklDQ0F4cUF3RUhDQUVEQWg0ZUN3d0hCeFFLQndJR0VRd05CQUlRQkI0ZkN3d0dCeFFLQndJR0VBME1BWU1CQkFjUEJ4UUxDZ3NJRFJjUUNSTUpEUVlCQXdFQnpBSCtieVFXRFFFQk5TMFhKdzRaRGdJS0F3SUJmNEFVSEJ3VW1BRXVseE1lQVFFTUYzRWNHeVFpVXh4a253Y0dEQThXQXpzQ0JnVUJBUUlCR0JjSEFnY1FEQTBHQnhJTENRb0RBZ3dFRnhjSEFnWVJDdzBHQnhNS0Nnb0FBZ0F3Ly9VQldnTUNBQzBBV2dBNFFEVlVRQUlEQkNVVkJBTUNBQUpNQUFRREJJVUFBd0FEaFFFQkFBQXJUUVVCQWdJakFrNEFBRTVOT2prQUxRQXRHaGdTRUFZSUZpc1hJaWNtTlRRM05qVTNOalUwSmpVME5qTXlGaDBCTmpjMk16SVhGaFVVRHdFR0R3RUdEd0VXRlJRSEJnY0dFd2NqQmdjR0ZRWUhCZ2NHSXlJbkppY21OVFEzTmpjMk56WS9BalkzTmpNeUZ4WVhGaFVVQndZSEJnZGhCZ2NrQWdzQ0JnVWNGQlFkT0VNSEJ3d1BGU1FPR3lzR0hCY0VBaGNGRWd5MUF3RUhDQUVEQWg0ZUN3d0hCeFFLQndJR0VRd05CQUlRQkI0ZkN3d0dCeFFLQndJR0VBME1Dd0lLSkFjSE9RY1JLMHRBZmo0VkhCd1ZGaXNaQWdrT0hCOFBCUXdkQlJjZEJDZ3dkbk1VQ2dZQ25BSUdCUUVCQWdFWUZ3Y0NCeEFNRFFZSEVnc0pDZ01DREFRWEZ3Y0NCaEVMRFFZSEV3b0tDZ0FBQUFBREFHUC9DQUpKQXJRQUdRQlFBRzBBa2tBUEdBc0NBQUZKQVFNQWFnRUdCd05NUzdBS1VGaEFLUXNCQmdjR2hna0JBQUFEQ0FBRGFRQUlBQWNHQ0FkcEFBRUJCV0VBQlFVaVRRUUtBZ0lDSXdKT0cwQXBDd0VHQndhR0NRRUFBQU1JQUFOcEFBZ0FCd1lJQjJrQUFRRUZZUUFGQlNKTkJBb0NBZ0ltQWs1WlFDRlNVUnNhQVFCbVpXRmdVVzFTYlVBOE5UTXVMUnBRRzFBWEZRQVpBUmtNQ0JZckV6WTNOamMrQVQ4Qk5qMEJKaWN1QVNjakppOEREd0VYQVNJbkppYzFOQ01tSnlZdkFTWXZBU1luSWlZaUp3WVZEZ0VqSWlZMU5CSTNORFl5UHdFeUZ4WVhGaFVVQndZSEZoY1dGUlFIQmdjaUp5WTFORDhCTWpZMU5qVTBKeUl1QVRVME5qTVdGeFlWQmdjRy95Y21MU3NRSGdjR0JBSUtCaFVWQVI4ckJ5ZzJLZ01MQVVNa0N3VUhBUmNqRUNvUUlpRUdHaE1DQndvSEF3RWNGQlFkQ0FFYkxSY2lXeitQSmdrUEpYcCtNZ0lJRFAwYUR3Y1lEZ0lSQkFjQkVCd2JGaklnRVFsS0RRR0RBUVFIRHdjVUN3b0xDQTBYRUFrVENRMEdBUU1CQWN3Qi9tOGtGZzBCQVRVdEZ5Y09HUTRDQ2dNQ0FYK0FGQndjRkpnQkxwY1RIZ0VCREJkeEhCc2tJbE1jWko4SEJnd1BGdXNZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNId1VvR1NoV0tnWUFBQUlBTVA4SUFWb0NKd0F0QUVvQVFVQStKUlVFQXdVQVJ3RURCQUpNQndFREJBT0dBQVVBQkFNRkJHa0JBUUFBSzAwR0FRSUNJd0pPTHk0QUFFTkNQajB1U2k5S0FDMEFMUm9ZRWhBSUNCWXJGeUluSmpVME56WTFOelkxTkNZMU5EWXpNaFlkQVRZM05qTXlGeFlWRkE4QkJnOEJCZzhCRmhVVUJ3WUhCaGNpSnlZMU5EOEJNalkxTmpVMEp5SXVBVFUwTmpNV0Z4WVZCZ2NHWVFZSEpBSUxBZ1lGSEJRVUhUaERCd2NNRHhVa0Roc3JCaHdYQkFJWEJSSU1OUm9QQnhnT0FoRUVCd0VRSEJzV01pQVJDVW9OQ3dJS0pBY0hPUWNSSzB0QWZqNFZIQndWRmlzWkFna09IQjhQQlF3ZEJSY2RCQ2d3ZG5NVUNnYnRHQXNOSEE0SkVnY0pCUWdCQVJrV0VoOEZLQmtvVmlvR0FBTUFZLy96QWtrRG93QVpBRkFBYWdDT1FBOWVBUVlIR0FzQ0FBRkpBUU1BQTB4THNBcFFXRUFuQ0FFSEJnZUZDd0VHQlFhRkNRRUFBQU1DQUFOcEFBRUJCV0VBQlFVaVRRUUtBZ0lDSXdKT0cwQW5DQUVIQmdlRkN3RUdCUWFGQ1FFQUFBTUNBQU5wQUFFQkJXRUFCUVVpVFFRS0FnSUNKZ0pPV1VBaFVsRWJHZ0VBWW1GYldWRnFVbXBBUERVekxpMGFVQnRRRnhVQUdRRVpEQWdXS3hNMk56WTNQZ0UvQVRZOUFTWW5MZ0VuSXlZdkF3OEJGd0VpSnlZbk5UUWpKaWNtTHdFbUx3RW1KeUltSWljR0ZRNEJJeUltTlRRU056UTJNajhCTWhjV0Z4WVZGQWNHQnhZWEZoVVVCd1lESWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCdjhuSmkwckVCNEhCZ1FDQ2dZVkZRRWZLd2NvTmlvREN3RkRKQXNGQndFWEl4QXFFQ0loQmhvVEFnY0tCd01CSEJRVUhRZ0JHeTBYSWxzL2p5WUpEeVY2ZmpJQ0NBemZGQTlsR0FjT0hRd0xUUW9CVmdzTUJ3Y2xHV1VRQVlNQkJBY1BCeFFMQ2dzSURSY1FDUk1KRFFZQkF3RUJ6QUgrYnlRV0RRRUJOUzBYSnc0WkRnSUtBd0lCZjRBVUhCd1VtQUV1bHhNZUFRRU1GM0VjR3lRaVV4eGtud2NHREE4V0F2Y1BUdzhiRFFzWkJ6a0tBVUlIQWcwakdoQk9Ed0FBQUFJQUlQLzFBV0VEQXdBdEFFY0FQMEE4T3dFREJDVVZCQU1DQUFKTUJRRUVBd1NGQndFREFBT0ZBUUVBQUN0TkJnRUNBaU1DVGk4dUFBQS9QamcyTGtjdlJ3QXRBQzBhR0JJUUNBZ1dLeGNpSnlZMU5EYzJOVGMyTlRRbU5UUTJNeklXSFFFMk56WXpNaGNXRlJRUEFRWVBBUVlQQVJZVkZBY0dCd1lUSWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCbUVHQnlRQ0N3SUdCUndVRkIwNFF3Y0hEQThWSkE0Ykt3WWNGd1FDRndVU0RGTVREMllZQnc4Y0RBdE9DUUpWQ3d3SEJ5VVpaUThMQWdva0J3YzVCeEVyUzBCK1BoVWNIQlVXS3hrQ0NRNGNIdzhGREIwRkZ4MEVLREIyY3hRS0JnSlZEMDhQR3cwTEdRYzVDZ0ZDQndJTkl4b1FUZzhBQUFBQUFnQmYvL1FDTXdPakFEQUFTZ0JRUUUwK0FRWUhBVXdJQVFjR0I0VUtBUVlCQm9VQUF3QUVCUU1FWndBQ0FnRmZBQUVCSWswQUJRVUFYd2tCQUFBakFFNHlNUUVBUWtFN09URktNa29wSkNFZkd4a1hGUkVPQURBQkxRc0lGaXNYSWlZbkppOEJORGMyTnpRMk56WXpJVElXRlJRR0l5RUdCek15RmhVVUJpc0JCaDBCTmpjMk16SVdGUlFHSXc0QkV5SXZBU1kxTkRjMk16SVhGaGMyTnpZek1oY1dGUlFQQVFhaUVSb0ZFUUVCQ0FnQ0ZCQVBGd0ZJRkJ3Y0ZQN1BBZ2EzRkIwZEZMMEVSVVJVVkJVY0hCVlVwMUlURDJZWUJ3OGNEQXRPQ1FKVkN3d0hCeVVaWkJBTUZCQVBHR0J6Y25sNkVSb0VFeDBVRkIxaFloMFVGQnhUVXpjQkF3UWRGQlFjQVFjQzlROVBEeHNOQ3hrSE9Rb0JRZ2NDRFNNYUVFNFBBQU1BRWYvdUFoOERBd0F6QUdJQWZBQmlRRjl3QVFnSkFVd0tBUWtJQ1lVTkFRZ0JDSVVBQlFJREFnVURnQXdCQmdBQ0JRWUNhQUFIQndGaEFBRUJKVTBFQVFNREFHRUxBUUFBTEFCT1pHTTFOQUVBZEhOdGEyTjhaSHhQVFRSaU5XRXRLeWttSlNRU0R3a0hBRE1CTXc0SUZpc0ZJaWNtTlRZM05qTXlGeFlYRmhVVUlTSW5Id01WRmg4Q01oNEJGeFlYTWg4Qk1qY3lOVEkzTmpNeUZ4WVZGQWNHQXpJM05qTTBNelkzTXpRbk5DYzFKaWMxSmk4QkppOEJKaThCSWc4QkJnY2lCeU1HRHdFR0J4VVVJdzRCQnhZVElpOEJKalUwTnpZek1oY1dGelkzTmpNeUZ4WVZGQThCQmdFL2dWMVFCbWRSVzJCQ1FBOEUvdmRNU2dJSERBa1JGUVVqQVFRRUFRNFNCUUllRXhNRklFZ0hDQXNPRmlSWmpUdzhCQVVDSHhjQkNnSUpCd2dLQWcwTkJSRVJJQllLSHgwZUF3TUJCd1lNREFZQkJBUUNVMUVVRG1ZWUJ3NGREQXROQ2dGV0N3d0hCeVVaWlJBU1lWcDRnRW8wTkRaWkRRMXlCQWNPRlF3QkV4SUVGQUlCQVFVRUFRSUNBUjBEQ1E0YklBOGtBVVVGQVFFRENnc2JBd0lCRWdnQkNnZ0NDZ1VDQndJQ0FnZ0dGZ1VHQnd3U0RBRUJDaE1IQXdFWEQwOFBHdzBMR1FjNUNnRkNCd0lOSXhvUVRnOEFBQUFBQWdCaS8va0NrUU8rQURFQWJBQzJTN0FVVUZoQUVXazhBZ2NHU0FFRkJ5d2tFZ01BQVFOTUcwQVJhVHdDQndoSUFRVUhMQ1FTQXdBQkEweFpTN0FVVUZoQUxBQUhCZ1VHQndXQUFBVUVCZ1VFZmdzSkFnUUJCZ1FCZmdJQkFRRW9UUWdCQmdZQVlRTUtBZ0FBSXdCT0cwQXdBQVlJQm9VQUJ3Z0ZDQWNGZ0FBRkJBZ0ZCSDRMQ1FJRUFRZ0VBWDRDQVFFQktFMEFDQWdBWVFNS0FnQUFJd0JPV1VBZk1qSUJBREpzTW14blpsaFhUMDFGUXpVMEtTY2ZIUXdLQURFQk1Rd0lGaXNYSWlZbk5qYzJOelEzTmpNeUZoY1dGeFlYRkRNVk5qOEJOajBCUGdFek1oWWRBUlFIQmdjR0l5SW5KaWNIQmdjT0FRRWlKeUluSmljMEp5WW5JZ2NHRlFZSEJpTWlKeVkxTkRjMk56WXpNaGNXSHdFZUFSY1dNelF6UGdNM1BnRTNQZ0UzTmpNV0ZRWUhCcE1VSEFFREVnMEhHQXdNSWh3UU0yVTBNUUVMQ0FNU0FSd1VGQjBMQ2k4TUl5ZFRjbE1HRXdJQkhBRTlCUXhLSEFnSUZnOGFCUVFKQ3dnTEl4ME9Cd0lPSHljek5qVW5EQWdDQlFFS0N3UUNCUUVDQVFvQkFRWUhFZzBOTHdVdklRY2RGTEN2Z29NYkR3WkNJSHkwWFQ4QkFUTXpHNUhWR1JRY0hCUW1qWXlkbFNOM3BibEdyN0FVSFFMckFrTVhCQUlNQ0FNRUNBSVZGaVFaQ3cwR0J6RW5LQ01iSkJFQkFRRUNBZ01FQWdFQ0VnUUNFU1lKQmdVdFF6UWlBQUFBQUFJQVRQLzdBaVVESVFBMkFIRUJjMHV3RkZCWVFCTnVRUUlJQjAwQkJnZ29BUUVER3dFQUFRUk1HMHV3TFZCWVFCTnVRUUlJQ1UwQkJnZ29BUUVER3dFQUFRUk1HMEFUYmtFQ0NBbE5BUVlJS0FFQkF4c0JBZ0VFVEZsWlM3QVVVRmhBTmdBR0NBVUlCZ1dBREFvQ0JRTUlCUU4rQ1FFSEJ3QmhBZ3NDQUFBalRRQUlDQ0pOQUFFQkEyRUVBUU1ESzAwQ0N3SUFBQ01BVGh0THNCOVFXRUE2QUFjSkI0VUFCZ2dGQ0FZRmdBd0tBZ1VEQ0FVRGZnQUpDUUJoQWdzQ0FBQWpUUUFJQ0NKTkFBRUJBMkVFQVFNREswMENDd0lBQUNNQVRodExzQzFRV0VBOEFBY0pCNFVBQ0FrR0NRZ0dnQUFHQlFrR0JYNE1DZ0lGQXdrRkEzNEFDUWtBWVFJTEFnQUFJMDBBQVFFRFlRUUJBd01yVFFJTEFnQUFJd0JPRzBBNUFBY0pCNFVBQ0FrR0NRZ0dnQUFHQlFrR0JYNE1DZ0lGQXdrRkEzNEFBUUVEWVFRQkF3TXJUUUFDQWlOTkFBa0pBR0VMQVFBQUl3Qk9XVmxaUUNFM053RUFOM0UzY1d4clhWeFVVa3BJT2prcktTY2xJQjRVRWdBMkFUWU5DQllyQlNJbU5UUTJOeVluSmpVbUx3RW1KeVlqSmlNR0J3WUhCZ2NHQnhFVUJpTWlKalVSTkRZek1oYzJNeklYRmhjV0ZSUUhCZ2NVQmdNaUp5SW5KaWMwSnlZbklnY0dGUVlIQmlNaUp5WTFORGMyTnpZek1oY1dId0VlQVJjV016UXpQZ00zUGdFM1BnRTNOak1XRlFZSEJnSHBFeDBLQVFNUkFRb0VBUjh1R2dnRUpROGFFQUlPQ3dJRkhCUVVIUjBVR3c4eVFUQXZRQzAvQlFVQkhWOEZERW9jQ0FnV0R4b0ZCQWtMQ0FzakhRNEhBZzRmSnpNMk5TY01DQUlGQVFvTEJBSUZBUUlCQ2dFQkJnY1NEUTB2QlM4aEJSd1VLV0EzVnlzQkFoSUZBaVlPQ0FJQkNna0NDUlVMQ1A2eEZCMGRGQUhFRkIwYUhSSVhNeit0TUNVMUxCUWNBa3dDUXhjRUFnd0lBd1FJQWhVV0pCa0xEUVlITVNjb0l4c2tFUUVCQVFJQ0F3UUNBUUlTQkFJUkpna0dCUzFETkNJQUFBTUFEZi96QWxRRFVnQkdBRklBWGdCYXQwQWxDQU1BQVFGTVM3QUtVRmhBRndZQkJBVUJBd0VFQTJrQ0FRRUJLRTBIQVFBQUl3Qk9HMEFYQmdFRUJRRURBUVFEYVFJQkFRRW9UUWNCQUFBbUFFNVpRQlVCQUYxYlYxVlJUMHRKTnpVWEZRQkdBVVlJQ0JZckJTSW1KelFuSmpVM0ppY21KeVl2QVNZbkpqVTBOak15SHdFV0Z4WVhGak1XSHdFV01oYytBamMyTno0Qk5EWTNOamMyTnpZek1oY1dGUlFIQmdjR0R3RVVGaFVPQVFNVUJpTWlKalUwTmpNeUZoY1VCaU1pSmpVME5qTXlGZ0UxRkJ3QkFnSUJLaDhxT0NNT0FRUUZEaDBURkE4RUpDSTREZ01CRHhNQ0RBWUNDQUVEQlNRcEJBSURBaUVkREJvTUhnME1HQkUxUmprdEFRVUJIRVlkRkJRZEhSUVVIYXdkRkJRZEhSUVVIUTBkRkQwOE5UUk9FaVV3WVQ0UkFRWUZEeE1VSFE0RktqOWZEZ1VVRUFFSkFRRUJBZ01mTmdRQ0FnTUNMQzRNTmhjR0Rod1JIRjVUU2hrL1BuczhGQjBETGhRZEhSUVVIUjBYRkIwZEZCUWRIUUFEQUNiL0pRSDNBclVBUGdCS0FGWUE3TGNzSndzREF3QUJURXV3Q2xCWVFCNEhBUVVGQm1FSUFRWUdJazBCQVFBQUpVMEVBUU1EQW1JQUFnSW5BazRiUzdBTVVGaEFJZ2NCQlFVR1lRZ0JCZ1lpVFFBQkFTVk5BQUFBSlUwRUFRTURBbUlBQWdJbkFrNGJTN0FPVUZoQUhnY0JCUVVHWVFnQkJnWWlUUUVCQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0J0UVdFQWlCd0VGQlFaaENBRUdCaUpOQUFFQkpVMEFBQUFsVFFRQkF3TUNZZ0FDQWljQ1RodEFKUUFBQVFNQkFBT0FCd0VGQlFaaENBRUdCaUpOQUFFQkpVMEVBUU1EQW1JQUFnSW5BazVaV1ZsWlFCVlZVMDlOU1VkRFFUMDhPem8zTlRBdUdCWUpDQllyRnpjak5qYzJOekkwTnpZM0ppY21KeVluSmpVME56WXpNaGNXRnhZWEZoOEJIZ0VYRmhjV0Z6WS9BVFkzUGdFek1oWVZBZ2NHSXlJMU5EWXpGak0yRXhRR0l5SW1OVFEyTXpJV0Z4UUdJeUltTlRRMk16SVd1UU1DRGhRaEZ3RUJDUTVWT3lZdUZBZ0hHQXdOSGd3VkVqazJBd1VCQ0E4R0JBSUhDeHNUQWd3RUFob1ZFeDRTdTFGcVJ4d1ZEUnNaVlIwVUZCMGRGQlFkckIwVUZCMGRGQlFkYlFFRURoY2VBZ0VKR2loNFRZVTdFZzBOR3c4R0dESTBxMDRHQkFNSkRnWUNBZ1VGUTRFUFhsOFZIQndWL2h5aFFUSVRIZ0VEQXZvVUhSMFVGQjBkRnhRZEhSUVVIUjBBQUFJQVR3QUpBbndEb3dCakFIMEF6MEFUY1FFSEJrNU5BZ1FGTGdFQkJGa0JBQUVFVEV1d0cxQllRREFKQVFZSEJvVUlBUWNEQjRVQUJBVUJCUVFCZ0FBQkFBVUJBSDRBQlFVRFlRQURBeUpOQUFBQUFtRUFBZ0lqQWs0YlM3QXhVRmhBTFFrQkJnY0doUWdCQndNSGhRQUVCUUVGQkFHQUFBRUFCUUVBZmdBQUFBSUFBbVVBQlFVRFlRQURBeUlGVGh0QU13a0JCZ2NHaFFnQkJ3TUhoUUFFQlFFRkJBR0FBQUVBQlFFQWZnQURBQVVFQXdWcUFBQUNBZ0JaQUFBQUFtRUFBZ0FDVVZsWlFCTmxaSFYwYm14a2ZXVjlLU2NzSnk0c0NnZ2NLemNXRng0QkZCY1dNeDRCRnhZek5qYzJOek0zTmpVMEp5WTFORGMyTXpJV0ZSUUhCZ2NHSXlJbkppY21OVFEzTmpjK0FqTXlGeDRCRlJRSEJpTWlKeTRCSnlZbkppY21Kd2NHSXdZSE53WUhGUVlISWhVR0ZSUVhGaFFYSXhjVkZoY25GUk15SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJ3Z1VHQVFJT0F3SUhEeGNqUXlrb0hCa0NCeFlLQWdnUUdTTVpFQ2R2TkRSMFJVc1JDZ01FTUJsS1ZTcDVVQm9jQkE4Y0hnNERCUkFKRUI0aEdSb1pCQVVqRFFZaUd3OEhBUmdEQVFFQkFRWUdBYVVURDJZWUJ3OGNEQXROQ2dGV0N3d0hCeVVaWlErdkR3WUJBZ0lNQXdRSUJnb0JCQVFLQkEwU0V4NEhCdzRNRlVraUlTQkZEZ1ltTDE0MFJ5a3FZVk1sTkJoUEdrTVFEQXNiR1FvU0hBd05GQWdGQVFFQkNRVUREUjhCRkJNQlBtQTBMUVFHQWdFRUd4QUJBZ0wwRDA4UEd3MExHUWM2Q1FGQ0J3SU5JeG9RVGc4QUFnQWMvK3NDQXdNREFFWUFZQUNZUUFwVUFRY0dRd0VFQlFKTVM3QU9VRmhBTUFvQkJnY0doUWdCQndFSGhRQUNBd1VEQW5JQUJRUURCUVIrQUFNREFXRUFBUUVsVFFBRUJBQmhDUUVBQUN3QVRodEFNUW9CQmdjR2hRZ0JCd0VIaFFBQ0F3VURBZ1dBQUFVRUF3VUVmZ0FEQXdGaEFBRUJKVTBBQkFRQVlRa0JBQUFzQUU1WlFCMUlSd0VBV0ZkUlQwZGdTR0EvUGpVMEhCc1RFUXNLQUVZQlJnc0lGaXNGSWljbUp5WTFORGMyTnpJWEZoVVVCd1lqSWk4Qk5TY21KeVluSWdjR0J3WUhCZzhCQmhVR0ZSUWZBUllmQVJZWE1oWWZBVDhCTmo4Qk5qYzJOell6TWhjV0ZRWUhCZ015SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJBU3hQUldBWUJFeFRmb0pCQnhrTURSd05EQlVHRUFrb01Eb1JHUUVDRlFnRkNBSU1BUWtOQWh3eEF3SW5EUjBTRmhRQkJBTUZFZ3NOQmdjakJEQXpjUk1QWmhnSER4d01DMDBLQVZZTERBY0hKUmxsRHhVdVFuRVlHRmxhWGdwdkRBd2NEd1lZRWdFVkJnY0dBeVVLSGdJQkd4Y09IZ2dFQ3hJaEFSVVNBU0lhQWdvQkFnWU1Id1FKQ3hNS0J3SUxKVFl5TlFNWUQwOFBHdzBMR1FjNkNRRkNCd0lOSXhvUVRnOEFBQUgvOWdMcUFUY0Rvd0FaQUNteEJtUkVRQjROQVFFQUFVd0RBUUFCQUlVQ0FRRUJkZ0VBRVJBS0NBQVpBUmtFQ0JZcnNRWUFSQk15SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJseE1QWmhnSER4d01DMDBLQVZZTERBY0hKUmxsRHdPakQwOFBHdzBMR1FjNkNRRkNCd0lOSXhvUVRnOEFBQUFBQXdBeC8vVUNoZ09qQUNjQUxnQklBTzFBRGp3QkJnVXFBUVFCQkFFQ0F3Tk1TN0FQVUZoQUpnb0JCUVlGaFFjQkJnRUdoUWtCQkFBREFnUURhQUFCQVNoTkFBSUNJMDBJQVFBQUl3Qk9HMHV3RUZCWVFDa0tBUVVHQllVSEFRWUJCb1VBQWdNQUF3SUFnQWtCQkFBREFnUURhQUFCQVNoTkNBRUFBQ01BVGh0THNCVlFXRUFtQ2dFRkJnV0ZCd0VHQVFhRkNRRUVBQU1DQkFOb0FBRUJLRTBBQWdJalRRZ0JBQUFqQUU0YlFDa0tBUVVHQllVSEFRWUJCb1VBQWdNQUF3SUFnQWtCQkFBREFnUURhQUFCQVNoTkNBRUFBQ01BVGxsWldVQWZNQzhvS0FFQVFEODVOeTlJTUVnb0xpZ3VJU0FjR3cwTEFDY0JKd3NJRmlzWElpY21OVFEvQVRZU056WXpNaGNXSHdFVU14Y1dGeFlWRkFjR0l5SW5KaWNqQmc4QkJnY0dBU1luQmdjR0J4TXlId0VXRlJRSEJpTWlKeVluQmdjR0l5SW5KalUwUHdFMlloc1BCd0lWTDI1TkR4c2tDMWt0QmdFR1BDWUdHQXNOQmcwWWFPRWdIaE1HRVFzQkxDUWpIQllQRFdBVEQyWVlCdzhjREF0TkNnRldDd3dIQnlVWlpROExHUXNOQmdjK2t3RWhoaGdrN21ZUEFSQ0hUQXdOR2c4SEF3WHlYRnc0RXdvSEFYVlpXamcySWlNQ09ROVBEeHNOQ3hrSE9na0JRZ2NDRFNNYUVFNFBBQUFBQUFVQURmL3ZBaVlEQXdBQ0FEY0FPZ0JkQUhjQVhVQmFhd0VIQmtaRkFnQURXeXdQRFFRQkFBTk1Dd0VHQndhRkNBRUhCQWVGQUFNQUFBRURBR29BQkFRclRRa0JBUUVDWVFVS0FnSUNKZ0pPWDE0OE93TURiMjVvWmw1M1gzZFlWa3RKUkVJN1hUeGRBemNETnlBZkRBZ1dLemMwSnhjMk56WTNNalUyTnpZMU5qVXVBU2MwSXlZbkppY21KeVluSmljbUp3WWpCd1lIQmdjR0J3WVBBUmNVRnhRWEZoY1dId0VXUHdFVkF5WW5KalUwTnpZek1oY25ORGMyTXpJWEZoY1dGek1YRmhVVUJpTWlKeVluRGdFRE1oOEJGaFVVQndZaklpY21Kd1lIQmlNaUp5WTFORDhCTm5BQmZCSVJKUjRCRkFzUkFnRURCZ0VEREFNQ0R3SUtFd01DSHlNQ0J4Z05EeE1RRlFjREFRRUJDd0lPR0FRSUV4S3VBWnQwUUNkYlBsRklSUU1IQ2g0TkR4NEdCQnNCQ1EwY0Z4SVFIZ3dpWWhNVEQyWVlCdzhjREF0TkNnRldDd3dIQnlVWlpRL01Bd0dBQWdZU0pRRVpHeWdXQ1JJTUZSSUJDQklEQkE0QkNBa0JBZ3dDQVFjRkRSUVdLUjRVQWhvYUV4b0NCQjhUQWdZSkNMSUZCUDdzQldGRlRJWmNQQzRiRGc0V0J3L0VxRW9TRFJjU0hCQXBNakU5QXhNUFR3OGJEUXNaQnpvSkFVSUhBZzBqR2hCT0R3QUFBQUFDQUYvLzlBSXpBNk1BTUFCS0FGQkFUVDRCQndZQlRBb0JCZ2NHaFFnQkJ3RUhoUUFEQUFRRkF3Um5BQUlDQVY4QUFRRWlUUUFGQlFCZkNRRUFBQ01BVGpJeEFRQkNRVHM1TVVveVNpa2tJUjhiR1JjVkVRNEFNQUV0Q3dnV0t4Y2lKaWNtTHdFME56WTNORFkzTmpNaE1oWVZGQVlqSVFZSE16SVdGUlFHS3dFR0hRRTJOell6TWhZVkZBWWpEZ0VUTWg4QkZoVVVCd1lqSWljbUp3WUhCaU1pSnlZMU5EOEJOcUlSR2dVUkFRRUlDQUlVRUE4WEFVZ1VIQndVL3M4Q0JyY1VIUjBVdlFSRlJGUlVGUndjRlZTbmNCTVBaaGdIRHh3TUMwMEtBVllMREFjSEpSbGxEd3dVRUE4WVlITnllWG9SR2dRVEhSUVVIV0ZpSFJRVUhGTlROd0VEQkIwVUZCd0JCd091RDA4UEd3MExHUWM2Q1FGQ0J3SU5JeG9RVGc4QUF3QVIvKzRDSHdNREFETUFZZ0I4QUdKQVgzQUJDUWdCVEEwQkNBa0loUW9CQ1FFSmhRQUZBZ01DQlFPQURBRUdBQUlGQmdKbkFBY0hBV0VBQVFFbFRRUUJBd01BWVFzQkFBQXNBRTVrWXpVMEFRQjBjMjFyWTN4a2ZFOU5OR0kxWVMwcktTWWxKQklQQ1FjQU13RXpEZ2dXS3dVaUp5WTFOamMyTXpJWEZoY1dGUlFoSWljZkF4VVdId0l5SGdFWEZoY3lId0V5TnpJMU1qYzJNeklYRmhVVUJ3WURNamMyTXpRek5qY3pOQ2MwSnpVbUp6VW1Md0VtTHdFbUx3RWlEd0VHQnlJSEl3WVBBUVlIRlJRakRnRUhGaE15SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJBVCtCWFZBR1oxRmJZRUpBRHdUKzkweEtBZ2NNQ1JFVkJTTUJCQVFCRGhJRkFoNFRFd1VnU0FjSUN3NFdKRm1OUER3RUJRSWZGd0VLQWdrSENBb0NEUTBGRVJFZ0Znb2ZIUjREQXdFSEJnd01CZ0VFQkFKVFNSTVBaaGdIRHh3TUMwMEtBVllMREFjSEpSbGxEeEpoV25pQVNqUTBObGtORFhJRUJ3NFZEQUVURWdRVUFnRUJCUVFCQWdJQkhRTUpEaHNnRHlRQlJRVUJBUU1LQ3hzREFnRVNDQUVLQ0FJS0JRSUhBZ0lDQ0FZV0JRWUhEQklNQVFFS0V3Y0RBZEFQVHc4YkRRc1pCem9KQVVJSEFnMGpHaEJPRHdBQUFBQUMvL2IvN1FFM0E2TUFIQUEyQUdCQUN5b0JBd0lZRUFJQUFRSk1TN0F4VUZoQUdBWUJBZ01DaFFRQkF3RURoUUFCQVNoTkJRRUFBQ3dBVGh0QUdBWUJBZ01DaFFRQkF3RURoUUFCQVFCaUJRRUFBQ3dBVGxsQUZSNGRBUUF1TFNjbEhUWWVOZzBNQUJ3QkhBY0lGaXNYSWlZbkppY21OVFEzTmpjMk14Y1dGUlFHRHdFR0ZSUVhGaGNPQVFNeUh3RVdGUlFIQmlNaUp5WW5CZ2NHSXlJbkpqVTBQd0UyblJRY0FRRUlDaFVGRWd3TkRDTUNDQUlHQ1FrQkFSd2FFdzltR0FjUEhBd0xUUW9CVmdzTUJ3Y2xHV1VQRXh3VWFtdHpjbWxvRXdvR0FRd2tCZzB1RWpaTVBwTnJiQlFjQTdZUFR3OGJEUXNaQnpvSkFVSUhBZzBqR2hCT0R3QUFBQUFDLytQLzhRRWtBd01BSFFBM0FETkFNQ3NCQXdJQ0FRQUJBa3dGQVFJREFvVUVBUU1CQTRVQUFRRXJUUUFBQUNZQVRoOGVMeTRvSmg0M0h6Y25Gd1lJR0NzM0ZoVVVCZ2NHSXlJbUp5NEJOVFEyTXpJV0hRRVVGeFlmQWhRWEZnTXlId0VXRlJRSEJpTWlKeVluQmdjR0l5SW5KalUwUHdFMndnRU9GUVlGRFI4RkVnZ2RGQlFkQXdJRkJnSUJBVHdURDJZWUJ3OGNEQXROQ2dGV0N3d0hCeVVaWlE4dUJnWU5IQWNCRHhSNTZYa1VIUjBVTkZ4V09qbzZEZ01EREFMSUQwOFBHdzBMR1FjNkNRRkNCd0lOSXhvUVRnOEFBQUFDQUYzLzdBSnVBNk1BU1FCakFLUkFEVmNCQlFRNk9EVVNCQUlCQWt4THNCUlFXRUFlQ0FFRUJRU0ZCZ0VGQVFXRkF3RUJBU0pOQUFJQ0FHSUhBUUFBTEFCT0cwdXdHVkJZUUNJSUFRUUZCSVVHQVFVREJZVUFBd01pVFFBQkFTSk5BQUlDQUdJSEFRQUFMQUJPRzBBbENBRUVCUVNGQmdFRkF3V0ZBQUVEQWdNQkFvQUFBd01pVFFBQ0FnQmlCd0VBQUN3QVRsbFpRQmxMU2dFQVcxcFVVa3BqUzJOQ1FDUWlEQW9BU1FGSkNRZ1dLd1VpSnlZbkpqVTBKelEyTXpJV0Z4WVZGQmNVRnhZWEZCY1VId0VXRnhZWEZqSVdNekkzQnpJMk16Y3lOamMyTlRZM05ENEJOVFkxSnlZbkxnRTFORGMyTXpJV0Z4WVZGQWNHQXpJZkFSWVZGQWNHSXlJbkppY0dCd1lqSWljbU5UUS9BVFlCY2lrbmh5UVlBaDBVRkJzQkFnZ2VCZzhFR3dJSUZoRVJBUVVTQlFRVUFRSURBUklCQVJZRE1nMEJBZ2dCQ0FJQkFnZ0xIZ3dlQlE4clBwOFREMllZQnc4Y0RBdE5DZ0ZXQ3d3SEJ5VVpaUThVRHpHa2FLTmlPQlFjSEJRMlZJRTRKRmtPR0FJRUJSZ0JDQWtIQXdFQkJBRUNDd0VXQXdKSmN3RUVCd2xBVFRKQ0hnSUtCdzhQRmhBVVlscXJoTFlEdHc5UER4c05DeGtIT2drQlFnY0NEU01hRUU0UEFBQUFBZ0F5LytNQ0pRTURBRUFBV2dFdVM3QVVVRmhBRVU0QkJnVXpGUThGQkFNQ0F3RUFBd05NRzBBUlRnRUdCVE1WRHdVRUF3SURBUUVEQTB4WlM3QVFVRmhBSHdrQkJRWUZoUWNCQmdJR2hRUUJBZ0lsVFFBREF3QmlBUWdDQUFBc0FFNGJTN0FVVUZoQUl3a0JCUVlGaFFjQkJnUUdoUUFFQkN0TkFBSUNKVTBBQXdNQVlnRUlBZ0FBTEFCT0cwdXdLbEJZUUNjSkFRVUdCWVVIQVFZRUJvVUFCQVFyVFFBQ0FpVk5BQU1EQVdJQUFRRW1UUWdCQUFBc0FFNGJTN0F0VUZoQUtna0JCUVlGaFFjQkJnUUdoUUFDQkFNRUFnT0FBQVFFSzAwQUF3TUJZZ0FCQVNaTkNBRUFBQ3dBVGh0QUtna0JCUVlGaFFjQkJnUUdoUUFDQkFNRUFnT0FBQU1EQVdJQUFRRW1UUWdCQUFBRVlRQUVCQ3NBVGxsWldWbEFHMEpCQVFCU1VVdEpRVnBDV2pjMUlpRVRFUW9JQUVBQlFBb0lGaXNGSWlZMU5qVUdCd1lqSWljbU5UUTNQZ0V6TWhZVkJ3WVZGQmNlQVJjV0Z4NEJGekkzTmo4Qkl6OEJOamMyTnpZMU5EOEJQZ0V6TWhZVkJ4UVdGUlFIQmdNeUh3RVdGUlFIQmlNaUp5WW5CZ2NHSXlJbkpqVTBQd0UyQWU4U0h3WWhPekEzUUM5Z0N3RWJGUk1lQlFjWEJBWUZBUTBKRlNNSEJ4TU1EUUVXQVJVUEh3MEJBZ2tCR3hVVEhnRVFFeER5RXc5bUdBY1BIQXdMVFFvQlZnc01Cd2NsR1dVUEhSd1VNakpDSng0ZlI4VXlreFVjSEJWQlBqOWVPZ2dNQmdJTkJRb0JBd1FKQ1JZQ0h5QldXd0VEQ1FOdUZSd2NGVGhPbGtxREZROERJQTlQRHhzTkN4a0hPZ2tCUWdjQ0RTTWFFRTRQQUFBQUJBQS8vL2tDd1FPakFBSUFXd0J4QUlzQVMwQklmd0VHQlFGTUNnRUZCZ1dGQndFR0JBYUZBQUVCQkdFQUJBUWlUUWdDQWdBQUEyRUpBUU1ESXdOT2MzSmVYQU1EZzRKOGVuS0xjNHRvWmx4eFhuRURXd05aTENvVUN3Z1hLd0VuTWdNM01qYzJOelkzTlRjMlB3RTJOVFEzTmpVbUp5WW5OU2NtSnlNMUp5WXZBU1luSXljbUp5WXZBUThCQmc4QkJnOEJJZ2NHRHdFR0R3SUdCd1lWRHdFVUh3RVdId0VXSHdFekZSY1dId0VXSHdFV0Z6TVdNaDhCSnlJbkppY21OVFEzTmpNeUZoY1dGUlFPQVFjR0F6SWZBUllWRkFjR0l5SW5KaWNHQndZaklpY21OVFEvQVRZQ0RRRUJlZ29LSnlVS0VoVUlFZ29MQ2dFQ0FRUUZDZ2dKREFFR0R4QUpJQWtCQVJRbkRnRXRGUW9TRWdJTUN3a0JBUTBVQVFNQ0NnMEhCUWtCQWdNRkNnZ0RDQW9MQVFNTURnWVBFQVlRR2dNSEVBUVZIVWM5T1NWRFdVMkVTYW80TFFGVlRrbHVFdzltR0FjUEhBd0xUUW9CVmdzTUJ3Y2xHV1VQQWlFQi9qa0JEUklLRHhrQkNoNFZIeWdJQWdFUEdpTVBHaGtDRHhJUkFRY1JEUVlWQWdFSUNRSUJBZ0lDQXdjQkJnY0dBZ2daQVFNRUR4c1FFU0lNQVRFWkdCNG1FZ2NSRUJFQkJBNE1CUXNIQXdjRUFRRmlBU01qTjJpQ21XZFpSbDVUWGdKaXFUTXNBNm9QVHc4YkRRc1pCem9KQVVJSEFnMGpHaEJPRHdBQUFBQURBQjcvNXdJNUF3TUFGZ0JFQUY0QVRrQkxVZ0VIQmlVQkFnTUNUQW9CQmdjR2hRZ0JCd0VIaFFRQkF3TUJZUUFCQVN0TkJRRUNBZ0JoQ1FFQUFDd0FUa1pGQVFCV1ZVOU5SVjVHWGtSRE5ESXhNQmdYQ3drQUZnRVdDd2dXS3dVaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjT0FRY0dKekkvQVRZM05qYzBNelkzTkRNM0ppYzFKeVluTkNNbUp5WWpKaU1pQnhVT0FTTUhCZ2NHRlJRWEZoY1dNeE15SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJBUm83TjBvaUhqTTdhRlZMWXl3V0doeG5PeVF0RUFzS1JDUU1FUUVWQmdFQkJBb0JEUThCS2pnbUVnd2FEQmdKQ3dJUkR3OERCdzhlTVNNSUV3OW1HQWNQSEF3TFRRb0JWZ3NNQndjbEdXVVBHUjh3VTBoTWFFcFJLamxvTWpJM09EZEpFQXRpQVFFVEhRa1RBUjBpQXhBd0ZRSUJIUk1CTlJZUEFnY0JCQWtTRHo0VkdCc21PaWN5QXJrUFR3OGJEUXNaQnpvSkFVSUhBZzBqR2hCT0R3QUFBZ0FoQUFBQ3FnT2pBR0VBZXdDbFFBOXZBUWtJVlMwQ0JRZEpBUVFGQTB4THNCQlFXRUF5REFFSUNRaUZDZ0VKQVFtRkFBSURCd01DY2dBSEJnRUZCQWNGYVFBREF3RmhBQUVCSWswQUJBUUFZUXNCQUFBakFFNGJRRE1NQVFnSkNJVUtBUWtCQ1lVQUFnTUhBd0lIZ0FBSEJnRUZCQWNGYVFBREF3RmhBQUVCSWswQUJBUUFZUXNCQUFBakFFNVpRQ0ZqWWdFQWMzSnNhbUo3WTN0YldWSlJVRTQ1TnlRZkZCSU1DZ0JoQVdFTkNCWXJJU0luSmpVME56NEJOell6TWhjV0ZSUUhCaU1pSnlZbklpY21KeUltSnk0Qkl5SUhJZ2NHQnc0QkJ3WVBBVGNHRlJRWE1oVVdGeFl6TWpjeU56WTNNamMrQWpNM05EYzJOeVkwSmljbUl3WUhJaWNtTlRRMk56WXpNaGNXRlJRSEJnTXlId0VXRlJRSEJpTWlKeVluQmdjR0l5SW5KalUwUHdFMkFZdW9VbkFsSm9kWkZoWnNNdzBMRHhVaERRSUxBUUVGQndJTEFoTUJBaE1HSGpNbkxBRUZDQ3dLQWdFQ0RnRWVQQ1IxVERVREF4QUZCQVlCQWdFQkNnSUxBUUVDQWhoMUt5b1pEd2dDRHhoZmZqODBGejd2RXc5bUdBY1BIQXdMVFFvQlZnc01Cd2NsR1dVUFJXT0lUa3RUZnhnRlh4VVNFQTRSSFFVU0FnY0dDUUVGQVFFaEdEVUNCUXcrUVFnQ0NSNGpJd0UrS1JrVkFnZ0ZDQUlDQWhFREF4RWFBZ01DQXgwQkJCVU9Ed01WREJFckkwRWpNSHdEb3c5UER4c05DeGtIT2drQlFnY0NEU01hRUU0UEFBQURBQ0wvSVFJbkF3TUFMZ0NBQUpvQTlFQVVqZ0VKQ0c4QkFBWWpEdzREQVFCZEFRVUJCRXhMc0NSUVdFQTJEUUVJQ1FpRkNnRUpCZ21GQUFNRkJBVURCSUFBQUFBR1lRY0JCZ1lyVFFzQkFRRUZZZ0FGQlNOTkFBUUVBbUVNQVFJQ0p3Sk9HMHV3TFZCWVFEUU5BUWdKQ0lVS0FRa0dDWVVBQXdVRUJRTUVnQWNCQmdBQUFRWUFad3NCQVFFRllnQUZCU05OQUFRRUFtRU1BUUlDSndKT0cwQTREUUVJQ1FpRkNnRUpCd21GQUFjR0I0VUFBd1VFQlFNRWdBQUdBQUFCQmdCbkN3RUJBUVZpQUFVRkkwMEFCQVFDWVF3QkFnSW5BazVaV1VBbGdvRXdMd0FBa3BHTGlZR2FncHB6Y1cxclltQkhSRG80TDRBd2dBQXVBQzRYRmc0SUZpc2xOelkzTmo4Qk5qYzJOelkzTmpjbkppY3VBU2NtTHdFSEJnY2pCZ2NHRHdFT0FROEJGQmNWRmhjV0h3RVdGeE1pSnlZbkpqVTBOell6TWhjVkZ4WVhGaGNXTWhZWE16STNPZ0UzTmpjek5qTTJOek0zTlRNMlB3RTJQd0lHQndZaklpY21KeVkxTkRjK0FUTXlId0UwTmpNeUhnRVZCeFFYRmhVVUJ3WUhCZ015SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJBUVlCRmhVZEdRRWhGZ0lCREFrRkJ3UUpCZzhmRGhNVEZnWVBEZ0VWRWhjVEJ4Z2FCZ0VCQXdZTEZnc1ZHUjh4TDBNcEJ4Z01EQm9SRmdrU0N4b0JCUWdERGhrSUFnVVNHZ2dDQXdRUUVBRVZBUWtJQkFjRUFRTThVQ0FnSUNCS0tpSU1IWnhYUXpnRkhSUVVIQUlCQkFNdUpUcEhReE1QWmhnSER4d01DMDBLQVZZTERBY0hKUmxsRDFnQkF3a05Fd0VhSFFJQ0VCSUlGVkVUQ1I4bENnd0ZBUUVDQmdvTkV4Y0tJVUFpR0F3TEF4RVFHUllKRHdUK3lSRVlPZ3NNSEE4SEdBRVZCZ2tGQlFFQkFRSUVCZ1VEQ0F3VkFROFFDeGthQmpBN0dRb0tHMFEyUmlzb2FaZ3VCQm9kSEN3WEwxVk1RVUtkVHpZY0l3UGlEMDhQR3cwTEdRYzZDUUZDQndJTkl4b1FUZzhBQWdCakFBQUNHZ0pFQUNvQU9BQTVRRFloQ0FJQUFRRk1BQUVBQVlVRUFRQURBSVVBQXdJQ0ExY0FBd01DWHdVQkFnTUNUeXdyQVFBek1DczRMRGNVRWdBcUFTb0dCaFlySlNJbkppY21KeVkxTkRZM05qYzJOelkzTmpNeUZ4WVZGQVlIQmc4Q0JnOEJGaGNXRnhZVkZBY0dCU0ltTlRRMk15RXlGaFVVQmlNQjZRME1QVUJzS2xvREZUQXZJeVJWWkFjSERBd1lFQlFsSUFRSU9sMG1IMFNOTEJnSEQvNlpGQjBkRkFGRUZCMGRGRzhISVJzeEdqVXJBeGtOSFNFWkZ6b1VBZ2NQR2d3Z0JBVU9BUVFiUUJzVUlUOFlEaHdOQ3hsdkhSUVVIUjBVRkIwQUFnQTdBQUFCOGdJNkFDb0FPQUE0UURVS0FRQUJBVXdBQVFBQmhRUUJBQU1BaFFBREFnSURWd0FEQXdKZkJRRUNBd0pQTENzQkFETXdLemdzTnhnWEFDb0JLZ1lHRmlzM0lpY21OVFEzTmpjMk55Y21Md0ltSnk0Qk5UUTNOak15RnhZWEZoY1dGeDRCRlJRSEJnY0dCd1lISWlZMU5EWXpJVElXRlJRR0kyd2NEd1lYTFl4RkhpWmRPZ2dFSUNVVUR4Y01EUWNHWkZVa0l5OHdGUVJhS20xQVBRd0VGQjBkRkFGRUZCMGRGR1VaQ3cwY0RoZy9JUlFiUUJzRUFRNEZCQ0FNR2c4SEFoUTZGeGtoSFEwWkF5czFHakViSVFkbEhSUVVIUjBVRkIwQUFBQUFBUUJCQUZNQ0JBSW5BRFVBZTB1d0QxQllRQ29BQlFRRUJYQUtBUUFCQVFCeEJnRUVCd0VEQWdRRGFBZ0JBZ0VCQWxjSUFRSUNBV0VKQVFFQ0FWRWJRQ2dBQlFRRmhRb0JBQUVBaGdZQkJBY0JBd0lFQTJnSUFRSUJBUUpYQ0FFQ0FnRmhDUUVCQWdGUldVQWJBUUF6TVMwcktpZ2tJaDBiR1JjVEVRNE1DQVlBTlFFMUN3WVdLemNpSnlZMU5EY2pJaVkxTkRZN0FUWS9BU01pSmpVME5qc0JQZ0V6TWhjV0ZSUUhNeklXRlJRR0t3RUhNeklXRlJRR0t3RUhCc2dMQ3hrTk5CUWRIUlJuR2dvUm1CUWNIQlRNRUI0ZEN3c2FEU01VSFIwVVZqVjdGQjBkRks4Z0RWTUZEeDBMR3gwVUZCMHdGQ0FkRkJRZEhqY0ZEUjhORngwVUZCMWtIUlFVSFQwYUFBTUFaQUJHQWZrQ05BQU5BQnNBS1FCQlFENEFBd2NCQWdVREFtY0FCUWdCQkFFRkJHY0FBUUFBQVZjQUFRRUFYd1lCQUFFQVR4NGNFQTRDQUNVaUhDa2VLUmNVRGhzUUd3a0dBQTBDRFFrR0Zpc2xJU0ltTlRRMk15RXlGaFVVQmdNaElpWTFORFl6SVRJV0ZSUUdCeUVpSmpVME5qTWhNaFlWRkFZQnlQN05GQjBkRkFFekZCMGRHUDdWRkJ3Y0ZBRXJGQndjRVA3TkZCMGRGQUV6RkIwZFJoMFVGQjBkRkJRZEFZd2RGQlFkSFJRVUhjWWRGQlFkSFJRVUhRQUFBQUlBS2YvNkFrVUN2Z0F0QUdVQVNrQkhYUUVGQUFGTUJnRUFDQUVGQkFBRmFRa0JCQXNLQWdNQ0JBTnBBQUVCQjJFQUJ3Y29UUUFDQWlNQ1RpNHVMbVV1WkdCZVhGaFBUVVpGUVQ4OVBEZzJNekV0SzJBTUNCY3JFelk3QVRJM01qY3lQZ0l6Tmo4Qk5qOEJNamMwTmpVMEx3RW1KelVtSnlZdkFTWW5MZ0VuSmk4QkppTUhFUlVVQmlNaUpqMEJJeUltTlRRMk93RTFJeUltTlRRMk93RVJORGMyTnpZek1oY1dIUUVVQndZSEJpTWlKeUluRlRNeUZoVVVCaVBDQmlvYUp5WVFEUUliR1FFQkN3b0NDZ1VIQVFZQkFRRUNCZ1VIQWhZRUN4TURCd1VySVJNVktpUWRGQlFjQ0JRY0hCUUlDQlFjSEJRSUV3NFlLQ2pwVWlBcktUdExUaFVVSmd5cUZCd2NGQUZRQVFJREJRZ0JCUWNCQ0FnTkZ3UUZFUmNJQXc0TkFRc0pCeE1EQ1FnQkJBRU9CQUlEQWYzK0xoUWRIUlF1SFJRVUhUSWRGQlFkQVRJWUR4RUNBNEE0UUFwSU9DMFBFZ0VDTmgwVUZCMEFBQUFCQURuLzlRSXNBc1lBaUFDelFBb3ZBUU1CUlFFSkJ3Sk1TN0FtVUZoQU53QUJBZ01DQVFPQUVBOENBdzRCQkFVREJHa05BUVVNQVFZSEJRWm5BQWNLQVFrSUJ3bHBBQUlDQUdFQUFBQW9UUXNCQ0FnakNFNGJRRDRBQVFJREFnRURnQUFLQ1FnSkNnaUFFQThDQXc0QkJBVURCR2tOQVFVTUFRWUhCUVpuQUFjQUNRb0hDV2tBQWdJQVlRQUFBQ2hOQ3dFSUNDTUlUbGxBSkFBQUFJZ0FoNE9CZm54NGRtUmlZRjVkVzFSU1NFWkRRVDA1T0RZeU1Dd25KeEVJR1NzVEpqVTBOelkzTmpNeUZoY1dGUlFIQmlNaUp5WXZBU1luSmljakppTW1JeUlISXc0QkJ4VVBBd1lIRlFZVkZ6TXlGaFVVQmlzQkZ4UVhNeklXRlJRR0t3RUdCell6TWhjeUZ4WVhGaFVVQndZaklpY2pKaThDSmlNaUR3RWlCd1lqSWljbU5UUS9BVFkzTmo4Qk5qY3pOVFk5QVNNaUpqVTBOanNCSmpVbkl5SW1OVFEyTTNrQ0tTRS9HeHN1YkMwT0RnOFhFd3djSWdFQ0FSQVFBUVlDRFE0TkN3SUVDUVFSQXd3REJnTUNCSUVVSFIwVVpSQUJWaFFkSFJSTUFnNFpHVUUyQXdKQUlSa0hFQndNRVFFVEZBSU1RamNaSkFNTlBpa01KQXdDSkJFS0NnWURFUWtDQVFkSEZCMGRGRHNCRWlNVUhCd1VBYjRURkV0Q05oWUlRRHdORlJNUURnNGxIQUVCQVFzSUF3WUZBd1FEQVJFRUZRY05Fd1FJRkNZZEZCUWRPUUVDSFJRVUhTZ25BZ1VCQlJZUkdRd01HUXNIQWdFQkJnVUJEQWdqQndZaURRY0ZCd01ERVE4RkFSY0VEaDBVRkIwQkFqa2RGQlFkQUFBQUFnQW0vL29DYWdLMEFBMEFKQUExUURJQUJBVUJBd0lFQTJjR0FRQUFBVjhBQVFFaVRRY0JBZ0lqQWs0UERnRUFJUjhiR0JRU0RpUVBKQWdGQUEwQkRBZ0lGaXNUSWlZMU5EWXpJVElXRlJRR0l3TWlKalVSSXlJbU5UUTJNeUV5RmhVVUJpc0JFUlFHVmhNZEhSTUI0eFFkSFJUeEZCM0JFeDBkRXdIakZCMGRGTUVjQWxNY0ZCUWRIUlFVSFAybkhCUUJkUndVRkIwZEZCUWMvb3NVSEFBQUFBQUJBQjBBa2dGUUFkSUFGZ0FmUUJ3QUFRQUFBVmtBQVFFQVlRSUJBQUVBVVFFQURBb0FGZ0VXQXdnV0t6Y2lKeVluSmpVMFB3RTJNeklYRmhjV0ZSUUhCZ2NHdmhZWU9TQWFQd1lrSlJjWU95SVpCQkk1SUpJSkdEVXJNazRvQkJNSEZEUXBMQkVSUVNVVUFBQURBRUgvK3dKZEFHQUFDd0FYQUNNQUcwQVlCUU1DQVFFQVlRUUNBZ0FBSXdCT0pDUWtKQ1FpQmdnY0t6Y1VCaU1pSmpVME5qTXlGaGNVQmlNaUpqVTBOak15RmhjVUJpTWlKalUwTmpNeUZxTWRGQlFkSFJRVUhkNGRGQlFkSFJRVUhkd2RGQlFkSFJRVUhTOFVIUjBVRkIwZEZ4UWRIUlFVSFIwVUZCMGRGQlFkSFFBRUFCRC9nUUpPQXlvQUF3QWpBRW9BamdGK1M3QWJVRmhBR245ckFnRUtZeU1DQ0FFWEFRQUlnMGd5QXdJQWl3RUVBZ1ZNRzB1d0lsQllRQnAvYXdJQkNtTWpBZ2dCRndFQUNJTklNZ01DQUlzQkJnSUZUQnRBR245ckFnRUtZeU1DQ0FFWEFRQUlnMGd5QXdjQWl3RUdBZ1ZNV1ZsTHNCdFFXRUF4QUFnQkFBRUlBSUFBQUFJQkFBSitDd0VKQlEwQ0F3a0RaUUFCQVFwZkFBb0tJazBIREFJQ0FnUmdCZ0VFQkNNRVRodExzQjFRV0VBOEFBZ0JBQUVJQUlBQUFBSUJBQUorQ3dFSkJRMENBd2tEWlFBQkFRcGZBQW9LSWswSERBSUNBZ1pnQUFZR0kwMEhEQUlDQWdSZ0FBUUVJd1JPRzB1d0lsQllRRFlBQ0FFQUFRZ0FnQUFBQWdFQUFuNEFCZ1FDQmxnTEFRa0ZEUUlEQ1FObEFBRUJDbDhBQ2dvaVRRY01BZ0lDQkdBQUJBUWpCRTRiUURjQUNBRUFBUWdBZ0FBQUJ3RUFCMzRBQndBR0JBY0dad3NCQ1FVTkFnTUpBMlVBQVFFS1h3QUtDaUpOREFFQ0FnUmdBQVFFSXdST1dWbFpRQ0pNU3lVa2ZIcDNkSEZ2WldSaVlGeGFWbFJSVDB1T1RJNGtTaVZKSWlBMERnZ1hLd0VtSXhjRk5qY3lOekkxTXpZM05ENEJNejRCTlRZMUp5WW5GU2NtTlNZakppTWlCeE15TnpZM1BnRTNOamMrQVRVMk5TY2lOU1luTkNZMUppYzFKeVluSWljMEl5WW5KaWNWRmhjaUpqMEJJaWNIRkFZaklpWTFORGNuTGdFMU5EWXpGeEVISWlZMU5EWS9BVFkxTkRZek1oWVZCell6RnpjME5qTXlGaFVIRmhVVUJ4WVhGaFVVQndZUEFSUUdBYzRDQVFMKy9pc3JUQmNGQmpJTEJBTUJBZ0lFQWdnRUNnSVZCRE0zTmo1blJBa2NGUUlHQVFvS0JBb1JCQUVDQkFJSENBUU1EQUlHQVRRc0JIeFRiUlFkT2lZQkhSUVVIUUZhRXhzZUVpa3BFUjhZRkZzQ0hSUVVIQUVlSlI4QkhSUVVIQUdCVFRnYkN4TW1XQUVkQWlnREE0Y0RBUVVCRFFvQkF3UUVBd01KRVI4YUFRRUtBUUVORVEzK0hRUUVCd0lCQVFRSEJBa0JGRFFTQVFVRkFnRUJDQVlCQWdrRkF3RVRCUUVLMXdUZ0hCUk5BazhVSEJ3VU94b0VBUjBSRmh3Q0FkRURHaGNSSGdJSU55RVVIUjBVU0FJQlJ4UWRIUlJWS0k1aUtCNCtJU0VzS2tvYVd4UWNBQUFDQURmLzlRSXdBNk1BU2dCa0FGdEFXRmdCQndaSEFRSUJBa3dLQVFZSEJvVUlBUWNEQjRVQUJBVUJCUVFCZ0FBQkFnVUJBbjRBQlFVRFlRQURBeWhOQUFJQ0FHRUpBUUFBSXdCT1RFc0JBRnhiVlZOTFpFeGtNUzhwSnlNaEVBNEtDQUJLQVVvTENCWXJCU2N1QVNjbU5UUTJOeklYRmhjV016STJNelkzTmpVbU5TWW5KalUwTnpZM05qTXlGeFlWRkNNaUpqVTNOQ2NtSXlJSEJnY0dCdzREQnhRV0ZSNEJGUllYRmhjV0ZRWUhCZ015SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJBVm9VVDM4ekRod1VGQTlLVFNnSURnVUVQQ2tDQVJ5SjFpd3lSVEkwWnowd01oTWVBUkU0SHpvcUl3c0VFUUlGQWdJQkF3c0NObDRrSkpFS1AwWnRFdzltR0FjUEhBd0xUUW9CVmdzTUJ3Y2xHV1VQQ3dFTVl6c1FGUkljQVE1WEt3NEJGRGdJQndJRU9EaGFmRHN2TWhVU1B6bEhTeHNUSWg4V0l4TVBDd01SQkFjR0JRY0pCd0lSQXdFMUpoQVRTR3RMTFR3RHJnOVBEeHNOQ3hrSE9na0JRZ2NDRFNNYUVFNFBBQUFBQUFRQUwvL21BY01EQXdBQ0FBVUFaUUIvQUY5QVhITUJCd1pUQVFRRkpRRUNBUU5NQ2dFR0J3YUZDQUVIQXdlRkFBUUZBUVVFQVlBQUFRSUZBUUorQUFVRkEyRUFBd01yVFFBQ0FnQmhDUUVBQUN3QVRtZG1Cd1ozZG5CdVpuOW5mMHRLUTBFNU54d2FFUThHWlFkbEN3Z1dLeE16TlFjaU5STWlKeVluSmpVME56WXpNaGN5RlJZWEZSWVhGak0yTnpNK0FUVTJOelkzSnlZdkFTSW5KaWNtSnlZbkpqVTBOejRCTXpJWEZoY1dGUlFIQmlNaUp6UWpKaWNqSmljR0l3WUhCZ2NHRlJjbkZ4WVhIZ0VYSGdFWEZoY1dGUlFIQmdNeUh3RVdGUlFIQmlNaUp5WW5CZ2NHSXlJbkpqVTBQd0UycXdFRkFWTkpPRElWQWdrT0dpSU5BUVFIRmhNWUlCOFZBZ3NZQXdJRkFnTUdDaGNDQkE0MklpRTVJaEFKRm1VOU15czZGd0lJRGhzaURRSUlGZ0VUS0FJREdCc0xEUU1HQVFVSkNRSUdBeDQ3SFRjb0pTNDZZUk1QWmhnSER4d01DMDRKQWxVTERBY0hKUmxrRUFHY0FUSUIvbm9uSkRrSEJ3d09GaVFCQ2dnQkZnZ0xBUWtGRXdNRUJRVVlHZzBLRFFJR0R3Z01FakFmSVJnWk5rSWFLRU1IQnd3T0ZpUUVGQllPQWdFREV3Z1ZEUklLQXdVR0JBSUNBUXNPQ1JBb0xUbEZNVHNESFE5UER4c05DeGtIT2drQlFnY0NEU01hRUU0UEFBQUFBUUJIQVE0QnB3RndBQTBBSDBBY0FBRUFBQUZYQUFFQkFGOENBUUFCQUU4QkFBZ0ZBQTBCREFNSUZpc1RJaVkxTkRZN0FUSVdGUlFHSTNnVUhSMFUvaFFkSFJRQkRoMFVGQjBkRkJRZEFBQUJBRThCRGdPWkFYQUFEUUFmUUJ3QUFRQUFBVmNBQVFFQVh3SUJBQUVBVHdFQUNBVUFEUUVNQXdnV0t4TWlKalUwTmpNaE1oWVZGQVlqZ0JRZEhSUUM2QlFkSFJRQkRoMFVGQjBkRkJRZEFBSUFOUC8vQWlVQ1BRQU5BRGNBU0VCRkhBRURCRFFTQWdJREFrd0dBUVFIQVFNQ0JBTnBBQVVKQVFJQkJRSnBBQUVCQUY4SUFRQUFJd0JPRHc0QkFESXZLeWdqSVJzWkZSTU9OdzgzQ0FVQURRRU1DZ2dXS3hjaUpqVTBOak1oTWhZVkZBWWpKeUluSmljbUl5SW1OVFEyTnhZWE56WTFQZ0V6TWhZWEZBOEJNamN5RmhVVUJnY0dJeFlYRlJRR2l4UWNIQlFCUlJRY0hCU2dGUXdXQkI1eUZSd2NGWVFNQVFFQkhCUVVIQUVCQVZKTEZCMGRGRXRTQWdnZUFSMFVGQjBkRkJRZGZBNFlid01kRkJRY0FRSUJPU2M2RlJ3Y0ZUb25PZ1FlRXhVYkFRUTZLUU1UR3dBQi8vTUM2Z0UwQTZNQUdRQXBzUVprUkVBZURRRUFBUUZNQWdFQkFBR0ZBd0VBQUhZQkFCRVFDZ2dBR1FFWkJBZ1dLN0VHQUVRVElpOEJKalUwTnpZek1oY1dGelkzTmpNeUZ4WVZGQThCQnBNVEQyWVlCdzhjREF0T0NRSlZDd3dIQnlVWlpROEM2ZzlQRHhzTkN4a0hPUW9CUWdjQ0RTTWFFRTRQQUFBQUFBRUFZUURFQWZNQmd3QVpBRWhMc0E1UVdFQVhBd0VBQVFFQWNRQUNBUUVDVndBQ0FnRmZBQUVDQVU4YlFCWURBUUFCQUlZQUFnRUJBbGNBQWdJQlh3QUJBZ0ZQV1VBTkFRQVVFUTBLQUJrQkdRUUlGaXNsSWlZMEx3RTBKeFVtTlNZaklpWTFORFk3QVRJWEZoVVVCZ0hERkIwQ0F3SUNCdkVVSFIwVTVVY2hGQjNFSENzQ0RRSUNBUUVDQVIwVUZCMHpKVFlWSEFBQUFnQkZBRkVDRkFIekFEb0FkUUJxUUdjM0NnSURCQllCQVFOeVJRSUpBRkVCQndrRVRBQUNCQUtGQUFRREJJVUFBd0VEaFFBQkNBR0ZBQWdLQ0lVQUNnQUtoUXdGQWdBSkFJVUFDUWNKaFFBSEJnZUZEUXNDQmdaMk96c0FBRHQxTzNWd2IyRmdXRlpPVEQ0OUFEb0FPaDRZS0M0U0RnWWJLd0VpSnlJbkppYzBKeVluSWdjR0ZRWUhCaU1pSnlZMU5EYzJOell6TWhjV0h3RWVBUmNXTXpRelBnTTNQZ0UzUGdFM05qTVdGUVlIQmdjaUp5SW5KaWMwSnlZbklnY0dGUVlIQmlNaUp5WTFORGMyTnpZek1oY1dId0VlQVJjV016UXpQZ00zUGdFM1BnRTNOak1XRlFZSEJnR1FCUXhLSEFnSUZnOGFCUVFKQ3dnTEl4ME9Cd0lPSHljek5qVW5EQWdDQlFFS0N3UUNCUUVDQVFvQkFRWUhFZzBOTHdVdklTOEZERW9jQ0FnV0R4b0ZCQWtMQ0FzakhRNEhBZzRmSnpNMk5TY01DQUlGQVFvTEJBSUZBUUlCQ2dFQkJnY1NEUTB2QlM4aEFSa0NReGNFQWd3SUF3UUlBaFVXSkJrTERRWUhNU2NvSXhza0VRRUJBUUlDQXdRQ0FRSVNCQUlSSmdrR0JTMUROQ0xMQWtNWEJBSU1DQU1FQ0FJVkZpUVpDdzBHQnpFbktDTWJKQkVCQVFFQ0FnTUVBZ0VDRWdRQ0VTWUpCZ1V0UXpRaUFBQUFBUUJaQVE0Qi9nRndBQTBBSDBBY0FBRUFBQUZYQUFFQkFGOENBUUFCQUU4QkFBZ0ZBQTBCREFNR0Zpc1RJaVkxTkRZeklUSVdGUlFHSTRrVUhCd1VBVVVVSEJ3VUFRNGRGQlFkSFJRVUhRQUNBRC8vOUFReEFyb0FXQUNhQUV4QVNXd0JCd0ZaQVFNQUFrd0FCd0FJQUFjSVp3WUJBUUVFWVFVQkJBUWlUUWtMQWdNQUFBTmhDZ0VEQXlNRFRnQUFscEdOaUlXRGYzMTdlWFZ5YVdkZlhBQllBRllwSnhFTUNCY3JKVGN5TnpZM05qYzFOelkvQVRZMU5EYzJOU1luSmljMUp5WW5JelVuSmk4QkppY2pKeVluSmk4QkR3RUdEd0VHRHdFaUJ3WVBBUVlQQWdZSEJoVVBBUlFmQVJZZkFSWWZBVE1WRnhZZkFSWWZBUllYTXhZeUZ6TUdCd1lqSnlJbkppY21OVFEzTmpNeUZ4WVhOalUwTmpjMk15RXlGaFVVQmlNaEJnY3pNaFlWRkFZckFRWWRBVFkzTmpNeUZoVVVCaU1PQVFjaUppY21Kd0dUQ2dvbkpRb1NGUWdTQ2dzS0FRSUJCQVVLQ0FrTUFRWVBFQWtnQ1FFQkZDY09BUzBWQ2hJU0Fnd0xDUUVCRFJRQkF3SUtEUWNGQ1FFQ0F3VUtDQU1JQ2dzQkF3d09CZzhRQmhBYUF3Y1FCUElkSkVsVEhVYzlPU1ZEV1UyRVNWVTZMUUVVRUE4WEFVZ1VIQndVL3M4Q0JyY1VIUjBVdlFSRlJGUlVGUndjRlZTblZCRWFCUkVCV3dFTkVnb1BHUUVLSGhVZktBZ0NBUThhSXc4YUdRSVBFaEVCQnhFTkJoVUNBUWdKQWdFQ0FnSURCd0VHQndZQ0NCa0JBd1FQR3hBUklnd0JNUmtZSGlZU0J4RVFFUUVFRGd3RkN3Y0RCd1FCQVI0WUxBRWpJemRvZ3BsbldTTVlOQllXRVJvRUV4MFVGQjFoWWgwVUZCeFRVemNCQXdRZEZCUWNBUWNCRkJBUEdBQUFBQUFEQUI3LzV3TzdBaUFBSVFCSkFJWUE4a3V3SDFCWVFBNElBUUFCTGdFRkFITUJBZ2NEVEJ0QURnZ0JBQUV1QVFVQWN3RUdCd05NV1V1d0gxQllRQ3NBQndVQ0JRY0NnQXNCQUFBRkJ3QUZad01CQVFFRVlRb0JCQVFsVFFZTUFnSUNDR0VKQVFnSUxBaE9HMHV3SWxCWVFEVUFCd1VHQlFjR2dBc0JBQUFGQndBRlp3TUJBUUVFWVFvQkJBUWxUUUFHQmdoaENRRUlDQ3hOREFFQ0FnaGhDUUVJQ0N3SVRodEFNd0FIQlFZRkJ3YUFDd0VBQUFVSEFBVm5Bd0VCQVFSaENnRUVCQ1ZOQUFZR0NHRUFDQWdzVFF3QkFnSUpZUUFKQ1N3SlRsbFpRQ0VqSWdFQWhJSjZlSEJ1YUdaa1lGaFZUMDA5T3lKSkkwZ1RFZ0FoQVNBTkNCWXJBVEkzTmpNME16WTNOQ2MwSnlZbkppY21KeUlQQVFZSElnY0dCeFFqRGdFSEZnVTNOamMyTnpRek5qYzBNemNtSnpVbkppYzBJeVluSmpNbUl5SUhCaU1IQmdjR0ZSUVhGak1UTmpjMk16SVhGaGNXRlJRaklpY1dGekllQVJjV0h3RXlOVEkzTmpNeUZ4WVZGQWNHSXlJbkppY0dCd1lIQmlNaUp5WW5KalUwTnpZek1oY1dBckk4S0FRRkFoOFlDZ0lKQnhJZUV4NFdDaDhkSGdNREhROEJCQVFDVS82WUVrUWtEQkVCRlFZQkFRUUtBUTBQQVNvNEpnSU1HaDRVQmdJUkR3OEROREVqM1JzdVVWdE1Ra0FQQlBWTVNoVlhBUVFFQVE0U0h4MGdTQWNJQ3c0V0pGazhnVjBMQ2hrbk5Ec2tEenMzU2lJZU16dG9RVXM5QVRNRkFRRURDZ3NiQXdNU0NSZ01Cd1VDQ0FZV0JSY2dBZ29UQndQcUFoTWRDUk1CSFNJREVEQVZBZ0VkRXdFMUZnOENFQVVTRHo0VkdGNUVNZ0ZVTENFME5EWlpEUTF5QkVNeEFnRUJCUVFCQVIwRENRNGJJQThrWVEwTkp4c2xFQXNmTUZOSVRHaEtVU29qQUFBQy8vZi85QU9IQXJrQUJnQkZBSTlBQ2dNQkJ3WUJBUWdIQWt4THNDWlFXRUFwQUFjQUNBQUhDR2NLQVFBQUFna0FBbWNBQmdZRVlRVUJCQVFpVFFBSkNRRmlBd3NDQVFFakFVNGJRQzBBQndBSUFBY0lad29CQUFBQ0NRQUNad0FHQmdSaEJRRUVCQ0pOQUFNREkwMEFDUWtCWUFzQkFRRWpBVTVaUUI4SUJ3QUFQamszTlRFdkxTc25KU01pRXhFT0RRZEZDRUlBQmdBR0RBZ1dLd0UzTmpjR0R3RVRJaVluSmk4Qkl3WUhCaU1pTGdFMU5EY3pOd2MyTnpZM05qYzJPd0UySVRJV0ZSUUdJeUVHQnpNeUZoVVVCaXNCQmhVMk56WXpNaFlWRkFZakRnRUJ0Z1VFQWpKSkU4TVJHZ1VSQVFISFNsb05FQWtXRlJNQkNnUkZvQU1FWjM0TkVBVUZBVTRVSEJ3VS9zOENCcmNVSFIwVXZRUkZSRlJVRlJ3Y0ZWU25BVEpTT0RkQVpSeit3aFFRRHhpUllHWU1DQmdRRmhNTEEwWGhCUVNaaFF3QkhSUVVIV0ZpSFJRVUhGT0tBUU1FSFJRVUhBRUhBQUFEQUJQLzdnTjdBaU1BSVFCTEFKVUEyRXV3TFZCWVFCbU9qUUlCQ2pZSUFnQUJRQ2dDQkFDQUFRSUdlQUVIQWdWTUcwQVpqbzBDQVFvMkNBSUFBVUFvQWdRQWdBRUNCbmdCQ0FJRlRGbExzQzFRV0VBekFBb0RBUU1LQVlBQUJnUUNCQVlDZ0F3QkFBQUVCZ0FFWndBQkFRTmhDd0VEQXlWTkJRMENBZ0lIWWdrSUFnY0hMQWRPRzBBM0FBb0RBUU1LQVlBQUJnUUNCQVlDZ0F3QkFBQUVCZ0FFWndBQkFRTmhDd0VEQXlWTkFBZ0lKazBGRFFJQ0FnZGlDUUVIQnl3SFRsbEFJeUlpQVFDVGtZeUtoSUo5ZTNkMWIyMXJaMXBYVVU4aVN5SkxFeElBSVFFZ0RnZ1dLd0V5TnpZek5ETTJOelFuTkNjbUp5WW5KaWNpRHdFR0J5SUhCZ2NVSXc0QkJ4WUZOamN5TlRZMUppYzBJeVluSmljbUp5WW5KaWNHSXdjR0J3WUhCZzhCRnhRWEZCY1dGeFlmQVJZVE5qYzJNeklYRmhjV0ZSUWpJaWNXRnhVV0Z4WVhNaDRCRnhZZkFUSTFNamMyTXpJWEZoVVVCd1lqSWljR0J3WWpJaWNtSnc0QkJ5WW5KalUwTnpZek1oY25ORGMyTXpJWEZnSnlQQ2dFQlFJZkdBb0NDUWNTSGhNZUZnb2ZIUjREQXgwUEFRUUVBbFArdWlJd0FUSUNDQUVEREFNQ0ZoZ0RBaFVaQWdjWUhDTVZCd01CQVFFTEFnNFlCQWdURXYwTERGRmJURUpBRHdUMVRFb0hGeEVWQlNNQkJBUUJEaElmSFNCSUJ3Z0xEaFlrV1R4VVJBTUtEaGNTRUI0TUltSW5kRUFuV3o1Uk5FVURCd29lRFE4UUFUTUZBUUVEQ2dzYkF3TVNDUmdNQndVQ0NBWVdCUmNnQWdvVEJ3UGpCVG9CUUUwY0Z3RUlFZ01FRlFzQkFnd0NBUWNMTVNrZUZBSWFHaE1hQWdRZkV3SUdDUWdCaVFrSk5EUTJXUTBOY2dRWEh3RVRFZ1FVQWdFQkJRUUJBUjBEQ1E0YklBOGtLUXdLRGhBcE1qRTlBUVZoUlV5R1hEd3VHdzRPRmdjSUFBTC9yUC90QVhzRHZnQWNBRmNBemt1d0ZGQllRQkJVSndJRkJETUJBd1VZRUFJQUFRTk1HMEFRVkNjQ0JRWXpBUU1GR0JBQ0FBRURURmxMc0JSUVdFQWpCZ0VFQlFTRkFBVURCWVVBQXdJRGhRa0hBZ0lCQW9VQUFRRW9UUWdCQUFBc0FFNGJTN0F4VUZoQUp3QUVCZ1NGQUFZRkJvVUFCUU1GaFFBREFnT0ZDUWNDQWdFQ2hRQUJBU2hOQ0FFQUFDd0FUaHRBSndBRUJnU0ZBQVlGQm9VQUJRTUZoUUFEQWdPRkNRY0NBZ0VDaFFBQkFRQmhDQUVBQUN3QVRsbFpRQnNkSFFFQUhWY2RWMUpSUTBJNk9EQXVJQjhOREFBY0FSd0tDQllyRnlJbUp5WW5KalUwTnpZM05qTVhGaFVVQmc4QkJoVVVGeFlYRGdFVElpY2lKeVluTkNjbUp5SUhCaFVHQndZaklpY21OVFEzTmpjMk16SVhGaDhCSGdFWEZqTTBNejRETno0Qk56NEJOell6RmhVR0J3YWRGQndCQVFnS0ZRVVNEQTBNSXdJSUFnWUpDUUVCSEVZRkRFb2NDQWdXRHhvRkJBa0xDQXNqSFE0SEFnNGZKek0yTlNjTUNBSUZBUW9MQkFJRkFRSUJDZ0VCQmdjU0RRMHZCUzhoRXh3VWFtdHpjbWxvRXdvR0FRd2tCZzB1RWpaTVBwTnJiQlFjQXZjQ1F4Y0VBZ3dJQXdRSUFoVVdKQmtMRFFZSE1TY29JeHNrRVFFQkFRSUNBd1FDQVFJU0JBSVJKZ2tHQlMxRE5DSUFBQUFBQXYrYS8vRUJhUU1oQUIwQVdBRElTN0FVVUZoQUQxVW9BZ1VFTkFFREJRSUJBQUVEVEJ0QUQxVW9BZ1VHTkFFREJRSUJBQUVEVEZsTHNCUlFXRUFuQmdFRUJRU0ZBQU1GQWdVREFvQUlCd0lDQVFVQ0FYNEFCUVVpVFFBQkFTdE5BQUFBSmdCT0cwdXdIMUJZUUNzQUJBWUVoUUFHQlFhRkFBTUZBZ1VEQW9BSUJ3SUNBUVVDQVg0QUJRVWlUUUFCQVN0TkFBQUFKZ0JPRzBBbUFBUUdCSVVBQmdVR2hRQUZBd1dGQUFNQ0E0VUlCd0lDQVFLRkFBRUJLMDBBQUFBbUFFNVpXVUFRSGg0ZVdCNVlIaGdvTGg4bkZ3a0lIU3MzRmhVVUJnY0dJeUltSnk0Qk5UUTJNeklXSFFFVUZ4WWZBaFFYRmhNaUp5SW5KaWMwSnlZbklnY0dGUVlIQmlNaUp5WTFORGMyTnpZek1oY1dId0VlQVJjV016UXpQZ00zUGdFM1BnRTNOak1XRlFZSEJzSUJEaFVHQlEwZkJSSUlIUlFVSFFNQ0JRWUNBUUVsQlF4S0hBZ0lGZzhhQlFRSkN3Z0xJeDBPQndJT0h5Y3pOalVuREFnQ0JRRUtDd1FDQlFFQ0FRb0JBUVlIRWcwTkx3VXZJUzRHQmcwY0J3RVBGSG5wZVJRZEhSUTBYRlk2T2pvT0F3TU1BZ3dDUXhjRUFnd0lBd1FJQWhVV0pCa0xEUVlITVNjb0l4c2tFUUVCQVFJQ0F3UUNBUUlTQkFJUkpna0dCUzFETkNJQUFBQUFBZitzQXVRQmV3TytBRG9BZGJFR1pFUkxzQlJRV0VBTE53b0NBd0lXQVFFREFrd2JRQXMzQ2dJREJCWUJBUU1DVEZsTHNCUlFXRUFXQkFFQ0F3S0ZBQU1CQTRVQUFRQUJoUVlGQWdBQWRodEFHZ0FDQkFLRkFBUURCSVVBQXdFRGhRQUJBQUdGQmdVQ0FBQjJXVUFPQUFBQU9nQTZIaGdvTGhJSENCc3JzUVlBUkJNaUp5SW5KaWMwSnlZbklnY0dGUVlIQmlNaUp5WTFORGMyTnpZek1oY1dId0VlQVJjV016UXpQZ00zUGdFM1BnRTNOak1XRlFZSEJ2Y0ZERW9jQ0FnV0R4b0ZCQWtMQ0FzakhRNEhBZzRmSnpNMk5TY01DQUlGQVFvTEJBSUZBUUlCQ2dFQkJnY1NEUTB2QlM4aEF1UUNReGNFQWd3SUF3UUlBaFVXSkJrTERRWUhNU2NvSXhza0VRRUJBUUlDQXdRQ0FRSVNCQUlSSmdrR0JTMUROQ0lBQUFRQVAvLzVBc0VEVVFBQ0FGc0FjUUIvQUVCQVBRQUdDUUVGQkFZRlp3QUJBUVJoQUFRRUlrMEhBZ0lBQUFOaENBRURBeU1EVG5OeVhsd0RBM3AzY245emZtaG1YSEZlY1FOYkExa3NLaFFLQ0JjckFTY3lBemN5TnpZM05qYzFOelkvQVRZMU5EYzJOU1luSmljMUp5WW5JelVuSmk4QkppY2pKeVluSmk4QkR3RUdEd0VHRHdFaUJ3WVBBUVlQQWdZSEJoVVBBUlFmQVJZZkFSWWZBVE1WRnhZZkFSWWZBUllYTXhZeUh3RW5JaWNtSnlZMU5EYzJNeklXRnhZVkZBNEJCd1lESWlZMU5EWTdBVElXRlJRR0l3SU5BUUY2Q2dvbkpRb1NGUWdTQ2dzS0FRSUJCQVVLQ0FrTUFRWVBFQWtnQ1FFQkZDY09BUzBWQ2hJU0Fnd0xDUUVCRFJRQkF3SUtEUWNGQ1FFQ0F3VUtDQU1JQ2dzQkF3d09CZzhRQmhBYUF3Y1FCQlVkUnowNUpVTlpUWVJKcWpndEFWVk9TZUFVSEJ3VXd4UWNIQlFDSVFIK09RRU5FZ29QR1FFS0hoVWZLQWdDQVE4YUl3OGFHUUlQRWhFQkJ4RU5CaFVDQVFnSkFnRUNBZ0lEQndFR0J3WUNDQmtCQXdRUEd4QVJJZ3dCTVJrWUhpWVNCeEVRRVFFRURnd0ZDd2NEQndRQkFXSUJJeU0zYUlLWloxbEdYbE5lQW1LcE15d0M5aDBVRkIwZEZCUWRBQUFBQXdBZS8rY0NPUUswQUJZQVJBQlNBRWRBUkNVQkFnTUJUQWtCQmdZSFh3QUhCeUpOQkFFREF3RmhBQUVCSzAwRkFRSUNBR0VJQVFBQUxBQk9Sa1VCQUUxS1JWSkdVVVJETkRJeE1CZ1hDd2tBRmdFV0NnZ1dLd1VpSnlZbkpqVTBOell6TWhjV0Z4WVZGQWNPQVFjR0p6SS9BVFkzTmpjME16WTNORE0zSmljMUp5WW5OQ01tSnlZakppTWlCeFVPQVNNSEJnY0dGUlFYRmhjV013TWlKalUwTmpzQk1oWVZGQVlqQVJvN04wb2lIak03YUZWTFl5d1dHaHhuT3lRdEVBc0tSQ1FNRVFFVkJnRUJCQW9CRFE4QktqZ21FZ3dhREJnSkN3SVJEdzhEQnc4ZU1TTmFGQndjRk1NVUhCd1VHUjh3VTBoTWFFcFJLamxvTWpJM09EZEpFQXRpQVFFVEhRa1RBUjBpQXhBd0ZRSUJIUk1CTlJZUEFnY0JCQWtTRHo0VkdCc21PaWN5QWdnZEZCUWRIUlFVSFFBQ0FBMy84d0pVQTZNQVJnQmdBR3RBREZRQkJBTkFKUWdEQUFFQ1RFdXdDbEJZUUJ3RkFRUURBUU1FQVlBQ0FRRUJLRTBIQVFNREFHRUdBUUFBSXdCT0cwQWNCUUVFQXdFREJBR0FBZ0VCQVNoTkJ3RURBd0JoQmdFQUFDWUFUbGxBRjBoSEFRQllWMUZQUjJCSVlEYzFGeFVBUmdGR0NBZ1dLd1VpSmljMEp5WTFOeVluSmljbUx3RW1KeVkxTkRZek1oOEJGaGNXRnhZekZoOEJGaklYUGdJM05qYytBVFEyTnpZM05qYzJNeklYRmhVVUJ3WUhCZzhCRkJZVkRnRURNaDhCRmhVVUJ3WWpJaWNtSndZSEJpTWlKeVkxTkQ4Qk5nRTFGQndCQWdJQktoOHFPQ01PQVFRRkRoMFRGQThFSkNJNERnTUJEeE1DREFZQ0NBRURCU1FwQkFJREFpRWREQm9NSGcwTUdCRTFSamt0QVFVQkhCZ1REMllZQnc4Y0RBdE9DUUpWQ3d3SEJ5VVpaUThOSFJROVBEVTBUaElsTUdFK0VRRUdCUThURkIwT0JTby9YdzRGRkJBQkNRRUJBUUlESHpZRUFnSURBaXd1RERZWEJnNGNFUnhlVTBvWlB6NTdQQlFkQTdBUFR3OGJEUXNaQnpvSkFVSUhBZzBqR2hCT0R3QUFBQUlBSnY4bEFmY0RBd0ErQUZnQTgwQU1UQUVHQlN3bkN3TURBQUpNUzdBS1VGaEFIZ2dCQlFZRmhRY0JCZ0FHaFFFQkFBQWxUUVFCQXdNQ1lnQUNBaWNDVGh0THNBeFFXRUFpQ0FFRkJnV0ZCd0VHQVFhRkFBRUJKVTBBQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0E1UVdFQWVDQUVGQmdXRkJ3RUdBQWFGQVFFQUFDVk5CQUVEQXdKaUFBSUNKd0pPRzB1d0cxQllRQ0lJQVFVR0JZVUhBUVlCQm9VQUFRRWxUUUFBQUNWTkJBRURBd0ppQUFJQ0p3Sk9HMEFsQ0FFRkJnV0ZCd0VHQVFhRkFBQUJBd0VBQTRBQUFRRWxUUVFCQXdNQ1lnQUNBaWNDVGxsWldWbEFGMEEvVUU5SlJ6OVlRRmc5UERzNk56VXdMaGdXQ1FnV0t4YzNJelkzTmpjeU5EYzJOeVluSmljbUp5WTFORGMyTXpJWEZoY1dGeFlmQVI0QkZ4WVhGaGMyUHdFMk56NEJNeklXRlFJSEJpTWlOVFEyTXhZek5oTXlId0VXRlJRSEJpTWlKeVluQmdjR0l5SW5KalUwUHdFMnVRTUNEaFFoRndFQkNRNVZPeVl1RkFnSEdBd05IZ3dWRWprMkF3VUJDQThHQkFJSEN4c1RBZ3dFQWhvVkV4NFN1MUZxUnh3VkRSc1pkUk1QWmhnSER4d01DMDBLQVZZTERBY0hKUmxsRDIwQkJBNFhIZ0lCQ1Jvb2VFMkZPeElORFJzUEJoZ3lOS3RPQmdRRENRNEdBZ0lGQlVPQkQxNWZGUndjRmY0Y29VRXlFeDRCQXdONUQwOFBHdzBMR1FjNkNRRkNCd0lOSXhvUVRnOEFBQUlBTHdBQkE1OERvd0JMQUdVQWdrQVVXUUVHQlR3QkF3SkZPRGN6S1I0RUJ3QURBMHhMc0RGUVdFQWlDUUVGQmdXRkJ3RUdBZ2FGQUFNQ0FBSURBSUFFQVFJQ0lrMEJDQUlBQUNNQVRodEFJUWtCQlFZRmhRY0JCZ0lHaFFBREFnQUNBd0NBQVFnQ0FBQ0VCQUVDQWlJQ1RsbEFHMDFNQVFCZFhGWlVUR1ZOWlVFL0xpMFhGUXNKQUVzQlN3b0lGaXNsSWljbUp3WUhCZ2NHSXlJbkppY21KeVkxTkRjMk16SVhGaGNXSHdJMk56WTBQd00yUHdFMk56WXpNaDhCRmg4Qk56WS9BalkxTkNjMU5EWXpNaDRCRlFjR0R3RUdCd1lCTWg4QkZoVVVCd1lqSWljbUp3WUhCaU1pSnlZMU5EOEJOZ0x4RWc5MGJDbHZDQWNQSENZeE5pMFZIZ0lKRFJza0N4TWRKaXdEQnlra0FnRUJCdzBlRHdNQ0lnWUdIZzBxVDBjUEh5OFBBZ0VEQWg4U0Zoa0VBUXdzRWg4VENmN1BFdzltR0FjUEhBd0xUZ2tDVlFzTUJ3Y2xHV1FRQVE2SytJSGFEZzhZWVhYU1oyUUhCZzBPRmlRNmc3dHFDQTVTVXdJREFRUVBJazlRRWlRTEFoaGN0SFFZYnFGZUNCQVdGeFVXQWhNY0hTVVNGNUtMUG1KbEpBT2lEMDhQR3cwTEdRYzZDUUZDQndJTkl4b1FUZzhBQUFBQUFnQUgvL2NERHdNREFENEFXQUQ0UzdBYlVGaEFEVXdCQmdVN0x4d0lCQUFDQWt3YlM3QXRVRmhBRFV3QkJnVTdMeHdJQkFBREFrd2JRQTFNQVFZRk95OGNDQVFCQXdKTVdWbExzQnRRV0VBYkNRRUZCZ1dGQndFR0FnYUZCQU1DQWdJbFRRRUlBZ0FBSXdCT0cwdXdLbEJZUUI4SkFRVUdCWVVIQVFZQ0JvVUVBUUlDSlUwQUF3TWxUUUVJQWdBQUl3Qk9HMHV3TFZCWVFDSUpBUVVHQllVSEFRWUNCb1VBQXdJQUFnTUFnQVFCQWdJbFRRRUlBZ0FBSXdCT0cwQW1DUUVGQmdXRkJ3RUdBZ2FGQUFNQ0FRSURBWUFFQVFJQ0pVMEFBUUVqVFFnQkFBQWpBRTVaV1ZsQUcwQS9BUUJRVDBsSFAxaEFXRGszSmlRWkZ3MExBRDRCUGdvSUZpc0ZJaWNtSnlZbkppY0NCd1lqSWljbUp5WW5KalUwTnpZek1oTVdGelkzUGdFMU5qYzJNeklXRnhZWEZoY2VBUmMyTnpZM1BnRTNOak15RmhVR0J3WURNaDhCRmhVVUJ3WWpJaWNtSndZSEJpTWlKeVkxTkQ4Qk5nSkJEd3BLSUE4S0J3bzdYQkFTUUVBVEdSSVFCaGdNREVGQUhnNEpCd0lHSGpnTUpDSkREQW9IRmc0QkF3d0xDam9nQkFRTUVCTVNIeFF0VXZBVEQyWVlCdzhjREF0T0NRSlZDd3dIQnlVWlpCQUpCak51TlQwcUpQNytVdzMrUzBncUdRc01IQkFIL3YxMUhCQVFCZ3dDU09za1l6Z3BLWEVkQWdrVEZoZVFsaEVtRFE4Y0ZJVi84d01NRDA4UEd3MExHUWM2Q1FGQ0J3SU5JeG9RVGc4QUFBQUFBLy8zLy9RRGh3TlJBQVlBUlFCVEFLbEFDZ01CQndZQkFRZ0hBa3hMc0NaUVdFQXlBQXNPQVFvRUN3cG5BQWNBQ0FBSENHY01BUUFBQWdrQUFtY0FCZ1lFWVFVQkJBUWlUUUFKQ1FGaUF3MENBUUVqQVU0YlFEWUFDdzRCQ2dRTENtY0FCd0FJQUFjSVp3d0JBQUFDQ1FBQ1p3QUdCZ1JoQlFFRUJDSk5BQU1ESTAwQUNRa0JZQTBCQVFFakFVNVpRQ2RIUmdnSEFBQk9TMFpUUjFJK09UYzFNUzh0S3ljbEl5SVRFUTROQjBVSVFnQUdBQVlQQ0JZckFUYzJOd1lQQVJNaUppY21Md0VqQmdjR0l5SXVBVFUwTnpNM0J6WTNOamMyTnpZN0FUWWhNaFlWRkFZaklRWUhNeklXRlJRR0t3RUdGVFkzTmpNeUZoVVVCaU1PQVJNaUpqVTBOanNCTWhZVkZBWWpBYllGQkFJeVNSUERFUm9GRVFFQngwcGFEUkFKRmhVVEFRb0VSYUFEQkdkK0RSQUZCUUZPRkJ3Y0ZQN1BBZ2EzRkIwZEZMMEVSVVJVVkJVY0hCVlVwd1FVSFIwVXdoUWRIUlFCTWxJNE4wQmxIUDdDRkJBUEdKRmdaZ3dJR0JBV0V3c0RSZUVGQkptRkRBRWRGQlFkWVdJZEZCUWNVNG9CQXdRZEZCUWNBUWNDK2gwVUZCMGRGQlFkQUFBQUFBUUFFLy91QTNzQ3RBQWhBRXNBbFFDakFQWkxzQzFRV0VBWmpvMENBUW8yQ0FJQUFVQW9BZ1FBZ0FFQ0JuZ0JCd0lGVEJ0QUdZNk5BZ0VLTmdnQ0FBRkFLQUlFQUlBQkFnWjRBUWdDQlV4WlM3QXRVRmhBUGdBS0F3RURDZ0dBQUFZRUFnUUdBb0FPQVFBQUJBWUFCR2NRQVF3TURWOEFEUTBpVFFBQkFRTmhDd0VEQXlWTkJROENBZ0lIWWdrSUFnY0hMQWRPRzBCQ0FBb0RBUU1LQVlBQUJnUUNCQVlDZ0E0QkFBQUVCZ0FFWnhBQkRBd05Yd0FORFNKTkFBRUJBMkVMQVFNREpVMEFDQWdtVFFVUEFnSUNCMklKQVFjSExBZE9XVUFybDVZaUlnRUFucHVXbzVlaWs1R01pb1NDZlh0M2RXOXRhMmRhVjFGUElrc2lTeE1TQUNFQklCRUlGaXNCTWpjMk16UXpOamMwSnpRbkppY21KeVluSWc4QkJnY2lCd1lIRkNNT0FRY1dCVFkzTWpVMk5TWW5OQ01tSnlZbkppY21KeVluQmlNSEJnY0dCd1lQQVJjVUZ4UVhGaGNXSHdFV0V6WTNOak15RnhZWEZoVVVJeUluRmhjVkZoY1dGekllQVJjV0h3RXlOVEkzTmpNeUZ4WVZGQWNHSXlJbkJnY0dJeUluSmljT0FRY21KeVkxTkRjMk16SVhKelEzTmpNeUZ4WW5JaVkxTkRZN0FUSVdGUlFHSXdKeVBDZ0VCUUlmR0FvQ0NRY1NIaE1lRmdvZkhSNERBeDBQQVFRRUFsUCt1aUl3QVRJQ0NBRUREQU1DRmhnREFoVVpBZ2NZSENNVkJ3TUJBUUVMQWc0WUJBZ1RFdjBMREZGYlRFSkFEd1QxVEVvSEZ4RVZCU01CQkFRQkRoSWZIU0JJQndnTERoWWtXVHhVUkFNS0RoY1NFQjRNSW1JbmRFQW5XejVSTkVVREJ3b2VEUThRYUJRZEhSVENGQjBkRkFFekJRRUJBd29MR3dNREVna1lEQWNGQWdnR0ZnVVhJQUlLRXdjRDR3VTZBVUJOSEJjQkNCSURCQlVMQVFJTUFnRUhDekVwSGhRQ0dob1RHZ0lFSHhNQ0Jna0lBWWtKQ1RRME5sa05EWElFRng4QkV4SUVGQUlCQVFVRUFRRWRBd2tPR3lBUEpDa01DZzRRS1RJeFBRRUZZVVZNaGx3OExoc09EaFlIQ0Q0ZEZCUWRIUlFVSFFBQUFBQUQvL2YvOUFPSEE1OEFCZ0JGQUhJQXJFQVBiRmdDQ2dzREFRY0dBUUVJQndOTVM3QW1VRmhBTXdBTENndUZBQW9FQ29VQUJ3QUlBQWNJWnd3QkFBQUNDUUFDWndBR0JnUmhCUUVFQkNKTkFBa0pBV0lERFFJQkFTTUJUaHRBTndBTENndUZBQW9FQ29VQUJ3QUlBQWNJWnd3QkFBQUNDUUFDWndBR0JnUmhCUUVFQkNKTkFBTURJMDBBQ1FrQllBMEJBUUVqQVU1WlFDTUlCd0FBWm1WU1VUNDVOelV4THkwckp5VWpJaE1SRGcwSFJRaENBQVlBQmc0SUZpc0JOelkzQmc4QkV5SW1KeVl2QVNNR0J3WWpJaTRCTlRRM016Y0hOamMyTnpZM05qc0JOaUV5RmhVVUJpTWhCZ2N6TWhZVkZBWXJBUVlWTmpjMk16SVdGUlFHSXc0QkV3Y2pCZ2NHRlFZSEJnY0dJeUluSmljbU5UUTNOamMyTnpZL0FqWTNOak15RnhZWEZoVVVCd1lIQmdjQnRnVUVBakpKRThNUkdnVVJBUUhIU2xvTkVBa1dGUk1CQ2dSRm9BTUVaMzRORUFVRkFVNFVIQndVL3M4Q0JyY1VIUjBVdlFSRlJGUlVGUndjRlZTblV3TUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5EQUV5VWpnM1FHVWMvc0lVRUE4WWtXQm1EQWdZRUJZVEN3TkY0UVVFbVlVTUFSMFVGQjFoWWgwVUZCeFRpZ0VEQkIwVUZCd0JCd001QWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBQUVBQlAvN2dON0F3SUFJUUJMQUpVQXdnRDZTN0F0VUZoQUhyeW9BZ3dOam8wQ0FRbzJDQUlBQVVBb0FnUUFnQUVDQm5nQkJ3SUdUQnRBSHJ5b0Fnd05qbzBDQVFvMkNBSUFBVUFvQWdRQWdBRUNCbmdCQ0FJR1RGbExzQzFRV0VBOUFBME1EWVVBREFNTWhRQUtBd0VEQ2dHQUFBWUVBZ1FHQW9BT0FRQUFCQVlBQkdnQUFRRURZUXNCQXdNbFRRVVBBZ0lDQjJJSkNBSUhCeXdIVGh0QVFRQU5EQTJGQUF3RERJVUFDZ01CQXdvQmdBQUdCQUlFQmdLQURnRUFBQVFHQUFSb0FBRUJBMkVMQVFNREpVMEFDQWdtVFFVUEFnSUNCMklKQVFjSExBZE9XVUFuSWlJQkFMYTFvcUdUa1l5S2hJSjllM2QxYjIxcloxcFhVVThpU3lKTEV4SUFJUUVnRUFnV0t3RXlOell6TkRNMk56UW5OQ2NtSnlZbkppY2lEd0VHQnlJSEJnY1VJdzRCQnhZRk5qY3lOVFkxSmljMEl5WW5KaWNtSnlZbkppY0dJd2NHQndZSEJnOEJGeFFYRkJjV0Z4WWZBUllUTmpjMk16SVhGaGNXRlJRaklpY1dGeFVXRnhZWE1oNEJGeFlmQVRJMU1qYzJNeklYRmhVVUJ3WWpJaWNHQndZaklpY21KdzRCQnlZbkpqVTBOell6TWhjbk5EYzJNeklYRmpjSEl3WUhCaFVHQndZSEJpTWlKeVluSmpVME56WTNOamMyUHdJMk56WXpNaGNXRnhZVkZBY0dCd1lIQW5JOEtBUUZBaDhZQ2dJSkJ4SWVFeDRXQ2g4ZEhnTURIUThCQkFRQ1UvNjZJakFCTWdJSUFRTU1Bd0lXR0FNQ0ZSa0NCeGdjSXhVSEF3RUJBUXNDRGhnRUNCTVMvUXNNVVZ0TVFrQVBCUFZNU2djWEVSVUZJd0VFQkFFT0VoOGRJRWdIQ0FzT0ZpUlpQRlJFQXdvT0Z4SVFIZ3dpWWlkMFFDZGJQbEUwUlFNSENoNE5EeEJXQWdFSENBRURBaDRlQ3d3SEJ4UUtCd0lHRVF3TkF3TVFCQjRmQ3d3R0J4UUtCd0lHRUEwTUFUTUZBUUVEQ2dzYkF3TVNDUmdNQndVQ0NBWVdCUmNnQWdvVEJ3UGpCVG9CUUUwY0Z3RUlFZ01FRlFzQkFnd0NBUWNMTVNrZUZBSWFHaE1hQWdRZkV3SUdDUWdCaVFrSk5EUTJXUTBOY2dRWEh3RVRFZ1FVQWdFQkJRUUJBUjBEQ1E0YklBOGtLUXdLRGhBcE1qRTlBUVZoUlV5R1hEd3VHdzRPRmdjSWZRSUdCUUVCQWdFWUZ3Y0NCeEFNRFFZSEVnc0pDZ01DREFRWEZ3Y0NCaEVMRFFZSEV3b0tDZ0FDQUNFQUFBS3FBNThBWVFDT0FKeEFFSWgwQWdnSlZTMENCUWRKQVFRRkEweExzQkJRV0VBd0FBa0lDWVVBQ0FFSWhRQUNBd2NEQW5JQUJ3WUJCUVFIQldvQUF3TUJZUUFCQVNKTkFBUUVBR0VLQVFBQUl3Qk9HMEF4QUFrSUNZVUFDQUVJaFFBQ0F3Y0RBZ2VBQUFjR0FRVUVCd1ZxQUFNREFXRUFBUUVpVFFBRUJBQmhDZ0VBQUNNQVRsbEFHd0VBZ29GdWJWdFpVbEZRVGprM0pCOFVFZ3dLQUdFQllRc0lGaXNoSWljbU5UUTNQZ0UzTmpNeUZ4WVZGQWNHSXlJbkppY2lKeVluSWlZbkxnRWpJZ2NpQndZSERnRUhCZzhCTndZVkZCY3lGUllYRmpNeU56STNOamN5Tno0Q016YzBOelkzSmpRbUp5WWpCZ2NpSnlZMU5EWTNOak15RnhZVkZBY0dBd2NqQmdjR0ZRWUhCZ2NHSXlJbkppY21OVFEzTmpjMk56WS9BalkzTmpNeUZ4WVhGaFVVQndZSEJnY0JpNmhTY0NVbWgxa1dGbXd6RFFzUEZTRU5BZ3NCQVFVSEFnc0NFd0VDRXdZZU15Y3NBUVVJTEFvQ0FRSU9BUjQ4SkhWTU5RTURFQVVFQmdFQ0FRRUtBZ3NCQVFJQ0dIVXJLaGtQQ0FJUEdGOStQelFYUG9BREFRY0lBUU1DSGg0TERBY0hGQW9IQWdZUkRBMEVBaEFFSGg4TERBWUhGQW9IQWdZUURReEZZNGhPUzFOL0dBVmZGUklRRGhFZEJSSUNCd1lKQVFVQkFTRVlOUUlGREQ1QkNBSUpIaU1qQVQ0cEdSVUNDQVVJQWdJQ0VRTURFUm9DQXdJREhRRUVGUTRQQXhVTUVTc2pRU013ZkFNdUFnWUZBUUVDQVJnWEJ3SUhFQXdOQmdjU0N3a0tBd0lNQkJjWEJ3SUdFUXNOQmdjVENnb0tBQUFBQUFNQUl2OGhBaWNEQWdBdUFJQUFyUURwUUJXbmt3SUlDVzhCQUFZakR3NERBUUJkQVFVQkJFeExzQ1JRV0VBMEFBa0lDWVVBQ0FZSWhRQURCUVFGQXdTQUFBQUFCbUVIQVFZR0swMEtBUUVCQldFQUJRVWpUUUFFQkFKaEN3RUNBaWNDVGh0THNDMVFXRUF5QUFrSUNZVUFDQVlJaFFBREJRUUZBd1NBQndFR0FBQUJCZ0JuQ2dFQkFRVmhBQVVGSTAwQUJBUUNZUXNCQWdJbkFrNGJRRFlBQ1FnSmhRQUlCd2lGQUFjR0I0VUFBd1VFQlFNRWdBQUdBQUFCQmdCbkNnRUJBUVZoQUFVRkkwMEFCQVFDWVFzQkFnSW5BazVaV1VBZk1DOEFBS0dnall4emNXMXJZbUJIUkRvNEw0QXdnQUF1QUM0WEZnd0lGaXNsTnpZM05qOEJOamMyTnpZM05qY25KaWN1QVNjbUx3RUhCZ2NqQmdjR0R3RU9BUThCRkJjVkZoY1dId0VXRnhNaUp5WW5KalUwTnpZek1oY1ZGeFlYRmhjV01oWVhNekkzT2dFM05qY3pOak0yTnpNM05UTTJQd0UyUHdJR0J3WWpJaWNtSnlZMU5EYytBVE15SHdFME5qTXlIZ0VWQnhRWEZoVVVCd1lIQmhNSEl3WUhCaFVHQndZSEJpTWlKeVluSmpVME56WTNOamMyUHdJMk56WXpNaGNXRnhZVkZBY0dCd1lIQVFZQkZoVWRHUUVoRmdJQkRBa0ZCd1FKQmc4ZkRoTVRGZ1lQRGdFVkVoY1RCeGdhQmdFQkF3WUxGZ3NWR1I4eEwwTXBCeGdNREJvUkZna1NDeG9CQlFnRERoa0lBZ1VTR2dnQ0F3UVFFQUVWQVFrSUJBY0VBUU04VUNBZ0lDQktLaUlNSFp4WFF6Z0ZIUlFVSEFJQkJBTXVKVHBIUFFNQkJ3Z0JBd0llSGdzTUJ3Y1VDZ2NDQmhFTURRUUNFQVFlSHdzTUJnY1VDZ2NDQmhBTkRGZ0JBd2tORXdFYUhRSUNFQklJRlZFVENSOGxDZ3dGQVFFQ0Jnb05FeGNLSVVBaUdBd0xBeEVRR1JZSkR3VCt5UkVZT2dzTUhBOEhHQUVWQmdrRkJRRUJBUUlFQmdVRENBd1ZBUThRQ3hrYUJqQTdHUW9LRzBRMlJpc29hWmd1QkJvZEhDd1hMMVZNUVVLZFR6WWNJd053QWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBSUFJUUFBQXFvRG93QmhBSHNBcFVBUGJ3RUlDVlV0QWdVSFNRRUVCUU5NUzdBUVVGaEFNZ29CQ1FnSmhRd0JDQUVJaFFBQ0F3Y0RBbklBQndZQkJRUUhCV29BQXdNQllRQUJBU0pOQUFRRUFHSUxBUUFBSXdCT0cwQXpDZ0VKQ0FtRkRBRUlBUWlGQUFJREJ3TUNCNEFBQndZQkJRUUhCV29BQXdNQllRQUJBU0pOQUFRRUFHSUxBUUFBSXdCT1dVQWhZMklCQUhOeWJHcGllMk43VzFsU1VWQk9PVGNrSHhRU0RBb0FZUUZoRFFnV0t5RWlKeVkxTkRjK0FUYzJNeklYRmhVVUJ3WWpJaWNtSnlJbkppY2lKaWN1QVNNaUJ5SUhCZ2NPQVFjR0R3RTNCaFVVRnpJVkZoY1dNekkzTWpjMk56STNQZ0l6TnpRM05qY21OQ1luSmlNR0J5SW5KalUwTmpjMk16SVhGaFVVQndZRElpOEJKalUwTnpZek1oY1dGelkzTmpNeUZ4WVZGQThCQmdHTHFGSndKU2FIV1JZV2JETU5DdzhWSVEwQ0N3RUJCUWNDQ3dJVEFRSVRCaDR6Snl3QkJRZ3NDZ0lCQWc0Qkhqd2tkVXcxQXdNUUJRUUdBUUlCQVFvQ0N3RUJBZ0lZZFNzcUdROElBZzhZWDM0L05CYys4Qk1QWmhnSER4d01DMDRKQWxVTERBY0hKUmxsRDBWamlFNUxVMzhZQlY4VkVoQU9FUjBGRWdJSEJna0JCUUVCSVJnMUFnVU1Qa0VJQWdrZUl5TUJQaWtaRlFJSUJRZ0NBZ0lSQXdNUkdnSURBZ01kQVFRVkRnOERGUXdSS3lOQkl6QjhBdW9QVHc4YkRRc1pCemtLQVVJSEFnMGpHaEJPRHdBQUF3QWkveUVDSndNREFDNEFnQUNhQVBSQUZJNEJDQWx2QVFBR0l3OE9Bd0VBWFFFRkFRUk1TN0FrVUZoQU5nb0JDUWdKaFEwQkNBWUloUUFEQlFRRkF3U0FBQUFBQm1FSEFRWUdLMDBMQVFFQkJXSUFCUVVqVFFBRUJBSmhEQUVDQWljQ1RodExzQzFRV0VBMENnRUpDQW1GRFFFSUJnaUZBQU1GQkFVREJJQUhBUVlBQUFFR0FHY0xBUUVCQldJQUJRVWpUUUFFQkFKaERBRUNBaWNDVGh0QU9Bb0JDUWdKaFEwQkNBY0loUUFIQmdlRkFBTUZCQVVEQklBQUJnQUFBUVlBWndzQkFRRUZZZ0FGQlNOTkFBUUVBbUVNQVFJQ0p3Sk9XVmxBSllLQk1DOEFBSktSaTRtQm1vS2FjM0Z0YTJKZ1IwUTZPQytBTUlBQUxnQXVGeFlPQ0JZckpUYzJOelkvQVRZM05qYzJOelkzSnlZbkxnRW5KaThCQndZSEl3WUhCZzhCRGdFUEFSUVhGUllYRmg4QkZoY1RJaWNtSnlZMU5EYzJNeklYRlJjV0Z4WVhGaklXRnpNeU56b0JOelkzTXpZek5qY3pOelV6Tmo4Qk5qOENCZ2NHSXlJbkppY21OVFEzUGdFek1oOEJORFl6TWg0QkZRY1VGeFlWRkFjR0J3WURJaThCSmpVME56WXpNaGNXRnpZM05qTXlGeFlWRkE4QkJnRUdBUllWSFJrQklSWUNBUXdKQlFjRUNRWVBIdzRURXhZR0R3NEJGUklYRXdjWUdnWUJBUU1HQ3hZTEZSa2ZNUzlES1FjWURBd2FFUllKRWdzYUFRVUlBdzRaQ0FJRkVob0lBZ01FRUJBQkZRRUpDQVFIQkFFRFBGQWdJQ0FnU2lvaURCMmNWME00QlIwVUZCd0NBUVFETGlVNlJ4RVREMllZQnc4Y0RBdE9DUUpWQ3d3SEJ5VVpaUTlZQVFNSkRSTUJHaDBDQWhBU0NCVlJFd2tmSlFvTUJRRUJBZ1lLRFJNWENpRkFJaGdNQ3dNUkVCa1dDUThFL3NrUkdEb0xEQndQQnhnQkZRWUpCUVVCQVFFQ0JBWUZBd2dNRlFFUEVBc1pHZ1l3T3hrS0NodEVOa1lyS0dtWUxnUWFIUndzRnk5VlRFRkNuVTgySENNREtROVBEeHNOQ3hrSE9Rb0JRZ2NDRFNNYUVFNFBBQUlBQ1FBTEFwOENyUUJFQUdRQW9VQUxPaDBDQWdGWkFRVUFBa3hMc0JsUVdFQWhDUWNDQWdZSUFnTUFBZ05wQUFFQkJHRUFCQVFpVFFBQUFBVmhBQVVGSXdWT0cwdXdLbEJZUUI0SkJ3SUNCZ2dDQXdBQ0Eya0FBQUFGQUFWbEFBRUJCR0VBQkFRaUFVNGJRQ1FBQkFBQkFnUUJhUWtIQWdJR0NBSURBQUlEYVFBQUJRVUFXUUFBQUFWaEFBVUFCVkZaV1VBYVJVVUFBRVZrUldOZlhWWlVUa3dBUkFCRFB6MDFNeE1LQ0JjckV3WVZGelkzTWpjMk56WTNOamMrQVRjMk56WS9BVFkzTmpVMEp6VW5OQ2MxTGdFbkxnSW5KaWNpSmljbUx3RW1KeTRCSXlJSEJnY0dGUWNHQnpNeUZoVVVCaU1uTmpjbU5UUTNOak15RnhZWEJnY0dJeUluSmljbU5UUTNJeUltTlRRMk05QUJBU2NDQ1FrM0xCZ2NHUlFCQmdNaERoSUxCUWNFQVFFQkR3RUNEUW9DQWdFTkRnSUhBaDBQRFJVY0NSUVlJQWtTRWhJREJRUnNGQndjRk5VSkZnY2FUVlZmVjZVREFxdVRxeFlPSXdRREFTNFVIQndVQVE0cEtVOENBZ0lLRHdnT0RBNEJBd01hRWhnVkRSUVZEQk1PRFFZRURTVUJBUWNVRGdNQkFnNE1Cd0VSQndZSUJnRURBZ0lGVncwUUx5OGRGQlFkWW5Ob0N3MGVEQ0FzWHJXdVpGRUtDeVE3T2lzcUhSUVVIUUFBQWdBcS8vUUNiZ0xYQURNQVp3QlJRRTVlQVFVR1RBRUFBem9CQWdFRFRBY0JCUW9JQWdRREJRUnBBQU1BQUFFREFHa0FCZ1lrVFFrQkFRRUNZZ0FDQWlNQ1RqUTBBQUEwWnpSbVltQmNXbFpVVUU1TFNVRThBRE1BTXlnTENCY3JKVFUwSnlNbUp5TW1Jd2NpQmlJSEJnOEJCZ2NpQmdjR0R3RUdEd0VWQmc4QkJoVVVGeFFYRlJZWEZESVZGaGN6Rmg4QkZoTVdGeFlWRkFjT0FTTW5CaU1pSnlZbkpqVTBOell6TWhjbUp5TWlKalUwTmpzQk5EYytBVE15RmhVR0ZUTXlGaFVVQmlNQnhnOEJEeUFFQ3hBYUFRVUVBU1VVQ0NJTEFRTUNFQTRCQlFvSUNBTUJBUVVMQ3dVQ0R4UUJHakVaU0pFQ0N3d0NBaG9WQmdZZjFHczBHaE0xWTZVbEpBSUJSaFFjSEJSSEFRSWFGUk1lQVM0VUhCd1VWaE9qZVFZR0FnRUJBUVVLQXc4TEF3RU5FUUlGRWc4Q0V4UUdEZzhPRFFjUEFRc0VBUUVLQ2dvTEJBZ0IxMlJpZFhVc0xCUWRBUUU2SERVckwxWkhmZ2doSUIwVUZCME1DeFVjSEJVTUN4MFVGQjBBQUFBQUF3Qm1BQXNDbndPakFCVUFVQUJxQUt4QUZGNEJCQVZOTUFJQ0F3UUJBQUlEVEFnQkF3RkxTN0FaVUZoQUlnWUJCUVFGaFFnQkJBRUVoUUFEQXdGaEFBRUJJazBBQWdJQVlnY0JBQUFqQUU0YlM3QXFVRmhBSHdZQkJRUUZoUWdCQkFFRWhRQUNCd0VBQWdCbUFBTURBV0VBQVFFaUEwNGJRQ1VHQVFVRUJZVUlBUVFCQklVQUFRQURBZ0VEYVFBQ0FBQUNXUUFDQWdCaUJ3RUFBZ0JTV1ZsQUdWSlJBUUJpWVZ0WlVXcFNha2hHRnhZUERRQVZBUlVKQ0JZck55SW5KaWNtTlRRM0pqVTBOell6TWhjV0Z3WUhCaWMyTnpJM05qYzJOelkzUGdFM05qYzJQd0UyTnpZMU5DYzFKelFuTlM0Qkp5NENKeVluSWlZbkppOEJKaWN1QVNNaUJ3WUhCaFVIQmhVVElpOEJKalUwTnpZek1oY1dGelkzTmpNeUZ4WVZGQThCQnJRV0RpTUVBeVlIR2sxVlgxZWxBd0tyazQ4bkFna0pOeXdZSEJrVUFRWURJUTRTQ3dVSEJBRUJBUThCQWcwS0FnSUJEUTRDQndJZER3MFZIQWtVR0NBSkVoSVNBeENXRXc5bUdBY1BIQXdMVGdrQ1ZRc01Cd2NsR1dVUEN3b0xKRHM2MjdjTERSNE1JQ3hldGE1a1VXSUNBZ0lLRHdnT0RBNEJBd01hRWhnVkRSUVZEQk1PRFFZRURTVUJBUWNVRGdNQkFnNE1Cd0VSQndZSUJnRURBZ0lGVncwUWpJWUNMZzlQRHhzTkN4a0hPUW9CUWdjQ0RTTWFFRTRQQUFNQUt2LzBBdE1DNlFBekFGWUFjd0V5UUJKRUFRWUVjQUVGQmtBQkFBTlJBUUlCQkV4THNBcFFXRUFwQ2dFRkJnTUdCUU9BQUFNQUFBRURBR2tBQmdZRVlRY0JCQVFrVFFnQkFRRUNZZ2tCQWdJakFrNGJTN0FNVUZoQUxRb0JCUVlEQmdVRGdBQURBQUFCQXdCcEFBUUVKRTBBQmdZSFlRQUhCeVJOQ0FFQkFRSmlDUUVDQWlNQ1RodExzQTVRV0VBcENnRUZCZ01HQlFPQUFBTUFBQUVEQUdrQUJnWUVZUWNCQkFRa1RRZ0JBUUVDWWdrQkFnSWpBazRiUzdBYlVGaEFMUW9CQlFZREJnVURnQUFEQUFBQkF3QnBBQVFFSkUwQUJnWUhZUUFIQnlSTkNBRUJBUUppQ1FFQ0FpTUNUaHRBS3dvQkJRWURCZ1VEZ0FBSEFBWUZCd1pwQUFNQUFBRURBR2tBQkFRa1RRZ0JBUUVDWWdrQkFnSWpBazVaV1ZsWlFCNVlWelUwQUFCc2EyZG1WM05ZYzBoR1B6MDBWalZUQURNQU15Z0xDQmNySlRVMEp5TW1KeU1tSXdjaUJpSUhCZzhCQmdjaUJnY0dEd0VHRHdFVkJnOEJCaFVVRnhRWEZSWVhGRElWRmhjekZoOEJGaGNpSnlZbkpqVTBOell6TWhjbU5UUTNQZ0V6TWhZVkJoVVVGaFVVQnc0Qkl5Y0dFeUluSmpVMFB3RXlOalUyTlRRbklpNEJOVFEyTXhZWEZoVUdCd1lCeGc4QkR5QUVDeEFhQVFVRUFTVVVDQ0lMQVFNQ0VBNEJCUW9JQ0FNQkFRVUxDd1VDRHhRQkdqRVpTRXpVYXpRYUV6VmpwU1VrQXdJQ0doVVRIZ0laQWdJYUZRWUdmUm9QQnhnT0FoRUVCd0VRSEJzV01pQVJDVW9OVmhPamVRWUdBZ0VCQVFVS0F3OExBd0VORVFJRkVnOENFeFFHRGc4T0RRY1BBUXNFQVFFS0Nnb0xCQWhpT2h3MUt5OVdSMzRJTXpJcktoVWNIQlVxS1hmcWRTd3NGQjBCQVFJQkdBc05IQTRKRWdjSkJRZ0JBUmtXRWg4RktCa29WaW9HQUFBQUFnQUpBQXNDbndLdEFFUUFaQUNoUUFzNkhRSUNBVmtCQlFBQ1RFdXdHVkJZUUNFSkJ3SUNCZ2dDQXdBQ0Eya0FBUUVFWVFBRUJDSk5BQUFBQldFQUJRVWpCVTRiUzdBcVVGaEFIZ2tIQWdJR0NBSURBQUlEYVFBQUFBVUFCV1VBQVFFRVlRQUVCQ0lCVGh0QUpBQUVBQUVDQkFGcENRY0NBZ1lJQWdNQUFnTnBBQUFGQlFCWkFBQUFCV0VBQlFBRlVWbFpRQnBGUlFBQVJXUkZZMTlkVmxST1RBQkVBRU0vUFRVekV3b0lGeXNUQmhVWE5qY3lOelkzTmpjMk56NEJOelkzTmo4Qk5qYzJOVFFuTlNjMEp6VXVBU2N1QWljbUp5SW1KeVl2QVNZbkxnRWpJZ2NHQndZVkJ3WUhNeklXRlJRR0l5YzJOeVkxTkRjMk16SVhGaGNHQndZaklpY21KeVkxTkRjaklpWTFORFl6MEFFQkp3SUpDVGNzR0J3WkZBRUdBeUVPRWdzRkJ3UUJBUUVQQVFJTkNnSUNBUTBPQWdjQ0hROE5GUndKRkJnZ0NSSVNFZ01GQkd3VUhCd1UxUWtXQnhwTlZWOVhwUU1DcTVPckZnNGpCQU1CTGhRY0hCUUJEaWtwVHdJQ0Fnb1BDQTRNRGdFREF4b1NHQlVORkJVTUV3NE5CZ1FOSlFFQkJ4UU9Bd0VDRGd3SEFSRUhCZ2dHQVFNQ0FnVlhEUkF2THgwVUZCMWljMmdMRFI0TUlDeGV0YTVrVVFvTEpEczZLeW9kRkJRZEFBQUNBQjcvNXdJL0F3QUFLQUJnQUZOQVVGSkpRMEEzQlFZSU5RRUJCVnNOQWdBQkEwd0FCd0FHQlFjR2FRQUlDQ1JOQWdFQkFRVmhBQVVGSzAwREFRQUFCR0VKQVFRRUxBUk9LaWxNU2toR09qZzBNaWxnS21Bb0p4d2FHUmdRQ2dnWEt5VXlOelkzTmpjME16WTNORE0zSmljMUp5WW5OQ01tSnlZakppTWlCd1lqQndZSEJoVVVGeFl6RnlJbkppY21OVFEzTmpNeUZ5WW5CaU1pSnlZMU5EOEJKeVkxTkRjMk16SVhOak15RnhZVkZBOEJGeFlYRmhjV0ZSUUhGQWNHQndZQkVCRVVSQ1FNRVFFVkJnRUJCQW9CRFE4QktqZ21FZ3dhSGhRR0FoRVBEd00wTVNNU096ZEtJaDR6TzJodFhSVXdUd2dMRGhrZ0hoRVhBZ3NtR1VSQ0NTRU1BeUFYQlFzV0NoRWtCbWswT3lSSkFoTWRDUk1CSFNJREVEQVZBZ0VkRXdFMUZnOENFQVVTRHo0VkdGNUVNbU1mTUZOSVRHaEtVVVkvT0I0R0RCNGlEQXNLRUJnSENDTTlHQ0FJQ1NFTUNBY0xLZzByV0dZbUtZTktKUkFMQUFFQVF2L3VBa0FDdmdCVkFHbEFEa0lCQXdFMEFRUURBZ0VDQkFOTVM3QWZVRmhBSGdBREFRUUJBd1NBQUFFQktFMEFCQVFDWVFBQ0FpTk5CUUVBQUN3QVRodEFIQUFEQVFRQkF3U0FBQVFBQWdBRUFta0FBUUVvVFFVQkFBQXNBRTVaUUJFQkFEQXZLaWtoSHc4TkFGVUJWUVlJRmlzWElqVTBOalUwTnpZMU5EWTNOak15RnhZVkZBY0dGUlFYRmhjV0ZSUUhCaU1pSmljbU5UUTNOak15RmhjV0Z4WXpOamMwTnpRbkpqVTBOejRCTnpRbUp5WW5JZ1lqRGdFSEJnY0dCd1lIQmhFWEZBWUhCblV6QWdJQkZTTkdielF2UmljVEtqb01MU2szVEFwa0xBWWpCZ2NXR2dJSkRCTWxLZ3dGSkhveUNBRUJDQW9ZSEFjU0JoRWREZ2NHQ1FjSkNBY0JCaElORWtBR0RnZVlXQ2NvTzNVeFZSa25VaTlPSmhVYklTd0tMRG81S3pFSVNRd01KUXNCSFFVS0JRWU5Ed1lNSGhkTVhEbFhIQVVCRVEwS0RBSURCQW9SQ0FVTURTRWlVdjdWSVE0akRRZ0FBQUVBRndMdUFSQURvd0FhQU1HeEJtUkV0aEFLQWdJQkFVeExzQkJRV0VBWUF3RUJBZ0lCY0FBQ0FBQUNXUUFDQWdCaUJBRUFBZ0JTRzB1d0VWQllRQmNEQVFFQ0FZVUFBZ0FBQWxrQUFnSUFZZ1FCQUFJQVVodExzQkpRV0VBWUF3RUJBZ0lCY0FBQ0FBQUNXUUFDQWdCaUJBRUFBZ0JTRzB1d0cxQllRQmNEQVFFQ0FZVUFBZ0FBQWxrQUFnSUFZZ1FCQUFJQVVodEFHd0FEQVFPRkFBRUNBWVVBQWdBQUFsa0FBZ0lBWWdRQkFBSUFVbGxaV1ZsQUR3RUFGUk1QRFFrSEFCb0JHZ1VJRml1eEJnQkVFeUluSmpVME56WXpNaGNVRnhZek1qYzBOell6TWhZVkZBY0dqRXNoQ1JZTkRTa0lBZ0lSSGdRZEN3b05JaXdtQXU1RkZSa2dFUWdxRHdZTUlTRU5CUmdiUFNVZ0FBTUFNZi8xQW9ZRG93QW5BQzRBU1FHY1FBOC9PUUlIQmlvQkJBRUVBUUlEQTB4THNBOVFXRUFxQ0FFR0J3Y0djQUFIQ3dFRkFRY0ZhZ29CQkFBREFnUURhQUFCQVNoTkFBSUNJMDBKQVFBQUl3Qk9HMHV3RUZCWVFDMElBUVlIQndad0FBSURBQU1DQUlBQUJ3c0JCUUVIQldvS0FRUUFBd0lFQTJnQUFRRW9UUWtCQUFBakFFNGJTN0FSVUZoQUtRZ0JCZ2NHaFFBSEN3RUZBUWNGYWdvQkJBQURBZ1FEYUFBQkFTaE5BQUlDSTAwSkFRQUFJd0JPRzB1d0VsQllRQ29JQVFZSEJ3WndBQWNMQVFVQkJ3VnFDZ0VFQUFNQ0JBTm9BQUVCS0UwQUFnSWpUUWtCQUFBakFFNGJTN0FWVUZoQUtRZ0JCZ2NHaFFBSEN3RUZBUWNGYWdvQkJBQURBZ1FEYUFBQkFTaE5BQUlDSTAwSkFRQUFJd0JPRzB1d0cxQllRQ3dJQVFZSEJvVUFBZ01BQXdJQWdBQUhDd0VGQVFjRmFnb0JCQUFEQWdRRGFBQUJBU2hOQ1FFQUFDTUFUaHRBTUFBSUJnaUZBQVlIQm9VQUFnTUFBd0lBZ0FBSEN3RUZBUWNGYWdvQkJBQURBZ1FEYUFBQkFTaE5DUUVBQUNNQVRsbFpXVmxaV1VBaE1DOG9LQUVBUkVJK1BEZzJMMGt3U1NndUtDNGhJQndiRFFzQUp3RW5EQWdXS3hjaUp5WTFORDhCTmhJM05qTXlGeFlmQVJRekZ4WVhGaFVVQndZaklpY21KeU1HRHdFR0J3WUJKaWNHQndZSEV5SW5KalUwTnpZek1oY1VGeFl6TWpjME56WXpNaFlWRkFjR1loc1BCd0lWTDI1TkR4c2tDMWt0QmdFR1BDWUdHQXNOQmcwWWFPRWdIaE1HRVFzQkxDUWpIQllQRFU1TElRa1dEUTBwQ0FJQ0VSNEVIUXNLRFNJc0pnc1pDdzBHQno2VEFTR0dHQ1R1Wmc4QkVJZE1EQTBhRHdjREJmSmNYRGdUQ2djQmRWbGFPRFlpSXdHRVJSVVpJQkVJS2c4R0RDRWhEUVVZR3owbElBQUFCUUFOLys4Q0pnTUdBQUlBTndBNkFGMEFlQUZEUUJOdWFBSUlCMFpGQWdBRFd5d1BEUVFCQUFOTVM3QVFVRmhBTFFrQkJ3Z0lCM0FBQXdBQUFRTUFhUXdCQmdZSVlRQUlDQ0pOQUFRRUswMEtBUUVCQW1FRkN3SUNBaVlDVGh0THNCRlFXRUFzQ1FFSENBZUZBQU1BQUFFREFHa01BUVlHQ0dFQUNBZ2lUUUFFQkN0TkNnRUJBUUpoQlFzQ0FnSW1BazRiUzdBU1VGaEFMUWtCQndnSUIzQUFBd0FBQVFNQWFRd0JCZ1lJWVFBSUNDSk5BQVFFSzAwS0FRRUJBbUVGQ3dJQ0FpWUNUaHRMc0J0UVdFQXNDUUVIQ0FlRkFBTUFBQUVEQUdrTUFRWUdDR0VBQ0FnaVRRQUVCQ3ROQ2dFQkFRSmhCUXNDQWdJbUFrNGJRREFBQ1FjSmhRQUhDQWVGQUFNQUFBRURBR2tNQVFZR0NHRUFDQWdpVFFBRUJDdE5DZ0VCQVFKaEJRc0NBZ0ltQWs1WldWbFpRQ05mWGp3N0F3TnpjVzFyWjJWZWVGOTRXRlpMU1VSQ08xMDhYUU0zQXpjZ0h3MElGaXMzTkNjWE5qYzJOekkxTmpjMk5UWTFMZ0VuTkNNbUp5WW5KaWNtSnlZbkppY0dJd2NHQndZSEJnY0dEd0VYRkJjVUZ4WVhGaDhCRmo4QkZRTW1KeVkxTkRjMk16SVhKelEzTmpNeUZ4WVhGaGN6RnhZVkZBWWpJaWNtSnc0QkF5SW5KalUwTnpZek1oY1VGeFl6TWpjME56WXpNaFlWRkFjR2NBRjhFaEVsSGdFVUN4RUNBUU1HQVFNTUF3SVBBZ29UQXdJZkl3SUhHQTBQRXhBVkJ3TUJBUUVMQWc0WUJBZ1RFcTRCbTNSQUoxcytVVWhGQXdjS0hnMFBIZ1lFR3dFSkRSd1hFaEFlRENKaUZVc2hDUllORFNrSUFnSVJIZ1FkQ3dvTklpd216QU1CZ0FJR0VpVUJHUnNvRmdrU0RCVVNBUWdTQXdRT0FRZ0pBUUlNQWdFSEJRMFVGaWtlRkFJYUdoTWFBZ1FmRXdJR0NRaXlCUVQrN0FWaFJVeUdYRHd1R3c0T0ZnY1B4S2hLRWcwWEVod1FLVEl4UFFKaFJSVVpJQkVJS2c4R0RDRWhEUVVZR3owbElBQUFBQUlBWC8vMEFqTURvd0F3QUVzQk43WkJPd0lJQndGTVM3QVFVRmhBTGdrQkJ3Z0lCM0FBQ0FzQkJnRUlCbW9BQXdBRUJRTUVad0FDQWdGZkFBRUJJazBBQlFVQVh3b0JBQUFqQUU0YlM3QVJVRmhBTFFrQkJ3Z0hoUUFJQ3dFR0FRZ0dhZ0FEQUFRRkF3Um5BQUlDQVY4QUFRRWlUUUFGQlFCZkNnRUFBQ01BVGh0THNCSlFXRUF1Q1FFSENBZ0hjQUFJQ3dFR0FRZ0dhZ0FEQUFRRkF3Um5BQUlDQVY4QUFRRWlUUUFGQlFCZkNnRUFBQ01BVGh0THNCdFFXRUF0Q1FFSENBZUZBQWdMQVFZQkNBWnFBQU1BQkFVREJHY0FBZ0lCWHdBQkFTSk5BQVVGQUY4S0FRQUFJd0JPRzBBeEFBa0hDWVVBQndnSGhRQUlDd0VHQVFnR2FnQURBQVFGQXdSbkFBSUNBVjhBQVFFaVRRQUZCUUJmQ2dFQUFDTUFUbGxaV1ZsQUh6SXhBUUJHUkVBK09qZ3hTekpMS1NRaEh4c1pGeFVSRGdBd0FTME1DQllyRnlJbUp5WXZBVFEzTmpjME5qYzJNeUV5RmhVVUJpTWhCZ2N6TWhZVkZBWXJBUVlkQVRZM05qTXlGaFVVQmlNT0FSTWlKeVkxTkRjMk16SVhGQmNXTXpJM05EYzJNeklXRlJRSEJxSVJHZ1VSQVFFSUNBSVVFQThYQVVnVUhCd1UvczhDQnJjVUhSMFV2UVJGUkZSVUZSd2NGVlNuUzBzaENSWU5EU2tJQWdJUkhnUWRDd29OSWl3bURCUVFEeGhnYzNKNWVoRWFCQk1kRkJRZFlXSWRGQlFjVTFNM0FRTUVIUlFVSEFFSEF2bEZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQUFBQXdBUi8rNENId01HQURNQVlnQjlBWHUyYzIwQ0Nna0JURXV3RUZCWVFEb0xBUWtLQ2dsd0FBVUNBd0lGQTRBTkFRWUFBZ1VHQW1jT0FRZ0lDbUVBQ2dvaVRRQUhCd0ZoQUFFQkpVMEVBUU1EQUdFTUFRQUFMQUJPRzB1d0VWQllRRGtMQVFrS0NZVUFCUUlEQWdVRGdBMEJCZ0FDQlFZQ1p3NEJDQWdLWVFBS0NpSk5BQWNIQVdFQUFRRWxUUVFCQXdNQVlRd0JBQUFzQUU0YlM3QVNVRmhBT2dzQkNRb0tDWEFBQlFJREFnVURnQTBCQmdBQ0JRWUNadzRCQ0FnS1lRQUtDaUpOQUFjSEFXRUFBUUVsVFFRQkF3TUFZUXdCQUFBc0FFNGJTN0FiVUZoQU9Rc0JDUW9KaFFBRkFnTUNCUU9BRFFFR0FBSUZCZ0puRGdFSUNBcGhBQW9LSWswQUJ3Y0JZUUFCQVNWTkJBRURBd0JoREFFQUFDd0FUaHRBUFFBTENRdUZBQWtLQ1lVQUJRSURBZ1VEZ0EwQkJnQUNCUVlDYUE0QkNBZ0tZUUFLQ2lKTkFBY0hBV0VBQVFFbFRRUUJBd01BWVF3QkFBQXNBRTVaV1ZsWlFDZGtZelUwQVFCNGRuSndiR3BqZldSOVQwMDBZalZoTFNzcEppVWtFZzhKQndBekFUTVBDQllyQlNJbkpqVTJOell6TWhjV0Z4WVZGQ0VpSng4REZSWWZBakllQVJjV0Z6SWZBVEkzTWpVeU56WXpNaGNXRlJRSEJnTXlOell6TkRNMk56TTBKelFuTlNZbk5TWXZBU1l2QVNZdkFTSVBBUVlISWdjakJnOEJCZ2NWRkNNT0FRY1dFeUluSmpVME56WXpNaGNVRnhZek1qYzBOell6TWhZVkZBY0dBVCtCWFZBR1oxRmJZRUpBRHdUKzkweEtBZ2NNQ1JFVkJTTUJCQVFCRGhJRkFoNFRFd1VnU0FjSUN3NFdKRm1OUER3RUJRSWZGd0VLQWdrSENBb0NEUTBGRVJFZ0Znb2ZIUjREQXdFSEJnd01CZ0VFQkFKVFIwc2hDUllORFNrSUFnSVJIZ1FkQ3dvTklpd21FbUZhZUlCS05EUTJXUTBOY2dRSERoVU1BUk1TQkJRQ0FRRUZCQUVDQWdFZEF3a09HeUFQSkFGRkJRRUJBd29MR3dNQ0FSSUlBUW9JQWdvRkFnY0NBZ0lJQmhZRkJnY01FZ3dCQVFvVEJ3TUJIa1VWR1NBUkNDb1BCZ3doSVEwRkdCczlKU0FBQUFBQUFnQWhBQUFDcWdPakFHRUFmQUZ4UUJCeWJBSUtDVlV0QWdVSFNRRUVCUU5NUzdBUVVGaEFOZ3NCQ1FvS0NYQUFBZ01IQXdKeUFBb05BUWdCQ2docUFBY0dBUVVFQndWcEFBTURBV0VBQVFFaVRRQUVCQUJoREFFQUFDTUFUaHRMc0JGUVdFQTJDd0VKQ2dtRkFBSURCd01DQjRBQUNnMEJDQUVLQ0dvQUJ3WUJCUVFIQldrQUF3TUJZUUFCQVNKTkFBUUVBR0VNQVFBQUl3Qk9HMHV3RWxCWVFEY0xBUWtLQ2dsd0FBSURCd01DQjRBQUNnMEJDQUVLQ0dvQUJ3WUJCUVFIQldrQUF3TUJZUUFCQVNKTkFBUUVBR0VNQVFBQUl3Qk9HMHV3RzFCWVFEWUxBUWtLQ1lVQUFnTUhBd0lIZ0FBS0RRRUlBUW9JYWdBSEJnRUZCQWNGYVFBREF3RmhBQUVCSWswQUJBUUFZUXdCQUFBakFFNGJRRG9BQ3drTGhRQUpDZ21GQUFJREJ3TUNCNEFBQ2cwQkNBRUtDR29BQndZQkJRUUhCV29BQXdNQllRQUJBU0pOQUFRRUFHRU1BUUFBSXdCT1dWbFpXVUFqWTJJQkFIZDFjVzlyYVdKOFkzeGJXVkpSVUU0NU55UWZGQklNQ2dCaEFXRU9DQllySVNJbkpqVTBOejRCTnpZek1oY1dGUlFIQmlNaUp5WW5JaWNtSnlJbUp5NEJJeUlISWdjR0J3NEJCd1lQQVRjR0ZSUVhNaFVXRnhZek1qY3lOelkzTWpjK0FqTTNORGMyTnlZMEppY21Jd1lISWljbU5UUTJOell6TWhjV0ZSUUhCZ0VpSnlZMU5EYzJNeklYRkJjV016STNORGMyTXpJV0ZSUUhCZ0dMcUZKd0pTYUhXUllXYkRNTkN3OFZJUTBDQ3dFQkJRY0NDd0lUQVFJVEJoNHpKeXdCQlFnc0NnSUJBZzRCSGp3a2RVdzFBd01RQlFRR0FRSUJBUW9DQ3dFQkFnSVlkU3NxR1E4SUFnOFlYMzQvTkJjKy91eExJUWtXRFEwcENBSUNFUjRFSFFzS0RTSXNKa1ZqaUU1TFUzOFlCVjhWRWhBT0VSMEZFZ0lIQmdrQkJRRUJJUmcxQWdVTVBrRUlBZ2tlSXlNQlBpa1pGUUlJQlFnQ0FnSVJBd01SR2dJREFnTWRBUVFWRGc4REZRd1JLeU5CSXpCOEF1NUZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQUFEQUNML0lRSW5Bd1lBTGdDQUFKc0NKMEFWa1lzQ0NnbHZBUUFHSXc4T0F3RUFYUUVGQVFSTVM3QVFVRmhBUEFzQkNRb0tDWEFBQXdVRUJRTUVnQTRCQ0FnS1lRQUtDaUpOQUFBQUJtRUhBUVlHSzAwTUFRRUJCV0VBQlFValRRQUVCQUpoRFFFQ0FpY0NUaHRMc0JGUVdFQTdDd0VKQ2dtRkFBTUZCQVVEQklBT0FRZ0lDbUVBQ2dvaVRRQUFBQVpoQndFR0JpdE5EQUVCQVFWaEFBVUZJMDBBQkFRQ1lRMEJBZ0luQWs0YlM3QVNVRmhBUEFzQkNRb0tDWEFBQXdVRUJRTUVnQTRCQ0FnS1lRQUtDaUpOQUFBQUJtRUhBUVlHSzAwTUFRRUJCV0VBQlFValRRQUVCQUpoRFFFQ0FpY0NUaHRMc0J0UVdFQTdDd0VKQ2dtRkFBTUZCQVVEQklBT0FRZ0lDbUVBQ2dvaVRRQUFBQVpoQndFR0JpdE5EQUVCQVFWaEFBVUZJMDBBQkFRQ1lRMEJBZ0luQWs0YlM3QWtVRmhBUHdBTENRdUZBQWtLQ1lVQUF3VUVCUU1FZ0E0QkNBZ0tZUUFLQ2lKTkFBQUFCbUVIQVFZR0swME1BUUVCQldFQUJRVWpUUUFFQkFKaERRRUNBaWNDVGh0THNDMVFXRUE5QUFzSkM0VUFDUW9KaFFBREJRUUZBd1NBQndFR0FBQUJCZ0JuRGdFSUNBcGhBQW9LSWswTUFRRUJCV0VBQlFValRRQUVCQUpoRFFFQ0FpY0NUaHRBUkFBTENRdUZBQWtLQ1lVQUJ3Z0dDQWNHZ0FBREJRUUZBd1NBQUFZQUFBRUdBR2NPQVFnSUNtRUFDZ29pVFF3QkFRRUZZUUFGQlNOTkFBUUVBbUVOQVFJQ0p3Sk9XVmxaV1ZsWlFDZUNnVEF2QUFDV2xKQ09pb2lCbTRLYmMzRnRhMkpnUjBRNk9DK0FNSUFBTGdBdUZ4WVBDQllySlRjMk56WS9BVFkzTmpjMk56WTNKeVluTGdFbkppOEJCd1lISXdZSEJnOEJEZ0VQQVJRWEZSWVhGaDhCRmhjVElpY21KeVkxTkRjMk16SVhGUmNXRnhZWEZqSVdGek15TnpvQk56WTNNell6Tmpjek56VXpOajhCTmo4Q0JnY0dJeUluSmljbU5UUTNQZ0V6TWg4Qk5EWXpNaDRCRlFjVUZ4WVZGQWNHQndZRElpY21OVFEzTmpNeUZ4UVhGak15TnpRM05qTXlGaFVVQndZQkJnRVdGUjBaQVNFV0FnRU1DUVVIQkFrR0R4OE9FeE1XQmc4T0FSVVNGeE1IR0JvR0FRRURCZ3NXQ3hVWkh6RXZReWtIR0F3TUdoRVdDUklMR2dFRkNBTU9HUWdDQlJJYUNBSURCQkFRQVJVQkNRZ0VCd1FCQXp4UUlDQWdJRW9xSWd3ZG5GZERPQVVkRkJRY0FnRUVBeTRsT2tkRlN5RUpGZzBOS1FnQ0FoRWVCQjBMQ2cwaUxDWllBUU1KRFJNQkdoMENBaEFTQ0JWUkV3a2ZKUW9NQlFFQkFnWUtEUk1YQ2lGQUloZ01Dd01SRUJrV0NROEUvc2tSR0RvTERCd1BCeGdCRlFZSkJRVUJBUUVDQkFZRkF3Z01GUUVQRUFzWkdnWXdPeGtLQ2h0RU5rWXJLR21ZTGdRYUhSd3NGeTlWVEVGQ25VODJIQ01ETUVVVkdTQVJDQ29QQmd3aElRMEZHQnM5SlNBQUFBQUNBQmYvN1FFUUE2TUFIQUEzQVFOQURDMG5BZ1FER0JBQ0FBRUNURXV3RUZCWVFCd0ZBUU1FQkFOd0FBUUhBUUlCQkFKcUFBRUJLRTBHQVFBQUxBQk9HMHV3RVZCWVFCc0ZBUU1FQTRVQUJBY0JBZ0VFQW1vQUFRRW9UUVlCQUFBc0FFNGJTN0FTVUZoQUhBVUJBd1FFQTNBQUJBY0JBZ0VFQW1vQUFRRW9UUVlCQUFBc0FFNGJTN0FiVUZoQUd3VUJBd1FEaFFBRUJ3RUNBUVFDYWdBQkFTaE5CZ0VBQUN3QVRodExzREZRV0VBZkFBVURCWVVBQXdRRGhRQUVCd0VDQVFRQ2FnQUJBU2hOQmdFQUFDd0FUaHRBSHdBRkF3V0ZBQU1FQTRVQUJBY0JBZ0VFQW1vQUFRRUFZUVlCQUFBc0FFNVpXVmxaV1VBWEhoMEJBREl3TENvbUpCMDNIamNOREFBY0FSd0lDQllyRnlJbUp5WW5KalUwTnpZM05qTVhGaFVVQmc4QkJoVVVGeFlYRGdFRElpY21OVFEzTmpNeUZ4UVhGak15TnpRM05qTXlGaFVVQndhZEZCd0JBUWdLRlFVU0RBME1Jd0lJQWdZSkNRRUJIQ1ZMSVFrV0RRMHBDQUlDRVI0RUhRc0tEU0lzSmhNY0ZHcHJjM0pwYUJNS0JnRU1KQVlOTGhJMlRENlRhMndVSEFNQlJSVVpJQkVJS2c4R0RDRWhEUVVZR3owbElBQUFBZ0FELy9FQS9BTUdBQjBBT0FEWlFBc3VLQUlFQXdJQkFBRUNURXV3RUZCWVFCMEZBUU1FQkFOd0JnRUNBZ1JoQUFRRUlrMEFBUUVyVFFBQUFDWUFUaHRMc0JGUVdFQWNCUUVEQkFPRkJnRUNBZ1JoQUFRRUlrMEFBUUVyVFFBQUFDWUFUaHRMc0JKUVdFQWRCUUVEQkFRRGNBWUJBZ0lFWVFBRUJDSk5BQUVCSzAwQUFBQW1BRTRiUzdBYlVGaEFIQVVCQXdRRGhRWUJBZ0lFWVFBRUJDSk5BQUVCSzAwQUFBQW1BRTRiUUNBQUJRTUZoUUFEQkFPRkJnRUNBZ1JoQUFRRUlrMEFBUUVyVFFBQUFDWUFUbGxaV1ZsQUVSOGVNekV0S3ljbEhqZ2ZPQ2NYQndnWUt6Y1dGUlFHQndZaklpWW5MZ0UxTkRZek1oWWRBUlFYRmg4Q0ZCY1dBeUluSmpVME56WXpNaGNVRnhZek1qYzBOell6TWhZVkZBY0d3Z0VPRlFZRkRSOEZFZ2dkRkJRZEF3SUZCZ0lCQVVoTElRa1dEUTBwQ0FJQ0VSNEVIUXNLRFNJc0ppNEdCZzBjQndFUEZIbnBlUlFkSFJRMFhGWTZPam9PQXdNTUFoWkZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQUFFQUQvLytRTEJBNk1BQWdCYkFIRUFqQUVhdG9KOEFnY0dBVXhMc0JCUVdFQW9DQUVHQndjR2NBQUhDd0VGQkFjRmFnQUJBUVJoQUFRRUlrMEpBZ0lBQUFOaENnRURBeU1EVGh0THNCRlFXRUFuQ0FFR0J3YUZBQWNMQVFVRUJ3VnFBQUVCQkdFQUJBUWlUUWtDQWdBQUEyRUtBUU1ESXdOT0cwdXdFbEJZUUNnSUFRWUhCd1p3QUFjTEFRVUVCd1ZxQUFFQkJHRUFCQVFpVFFrQ0FnQUFBMkVLQVFNREl3Tk9HMHV3RzFCWVFDY0lBUVlIQm9VQUJ3c0JCUVFIQldvQUFRRUVZUUFFQkNKTkNRSUNBQUFEWVFvQkF3TWpBMDRiUUNzQUNBWUloUUFHQndhRkFBY0xBUVVFQndWcUFBRUJCR0VBQkFRaVRRa0NBZ0FBQTJJS0FRTURJd05PV1ZsWldVQWdjM0plWEFNRGg0V0JmM3Q1Y294empHaG1YSEZlY1FOYkExa3NLaFFNQ0JjckFTY3lBemN5TnpZM05qYzFOelkvQVRZMU5EYzJOU1luSmljMUp5WW5JelVuSmk4QkppY2pKeVluSmk4QkR3RUdEd0VHRHdFaUJ3WVBBUVlQQWdZSEJoVVBBUlFmQVJZZkFSWWZBVE1WRnhZZkFSWWZBUllYTXhZeUh3RW5JaWNtSnlZMU5EYzJNeklXRnhZVkZBNEJCd1lESWljbU5UUTNOak15RnhRWEZqTXlOelEzTmpNeUZoVVVCd1lDRFFFQmVnb0tKeVVLRWhVSUVnb0xDZ0VDQVFRRkNnZ0pEQUVHRHhBSklBa0JBUlFuRGdFdEZRb1NFZ0lNQ3drQkFRMFVBUU1DQ2cwSEJRa0JBZ01GQ2dnRENBb0xBUU1NRGdZUEVBWVFHZ01IRUFRVkhVYzlPU1ZEV1UyRVNhbzRMUUZWVGttVFN5RUpGZzBOS1FnQ0FoRWVCQjBMQ2cwaUxDWUNJUUgrT1FFTkVnb1BHUUVLSGhVZktBZ0NBUThhSXc4YUdRSVBFaEVCQnhFTkJoVUNBUWdKQWdFQ0FnSURCd0VHQndZQ0NCa0JBd1FQR3hBUklnd0JNUmtZSGlZU0J4RVFFUUVFRGd3RkN3Y0RCd1FCQVdJQkl5TTNhSUtaWjFsR1hsTmVBbUtwTXl3QzlVVVZHU0FSQ0NvUEJnd2hJUTBGR0JzOUpTQUFBQU1BSHYvbkFqa0RCZ0FXQUVRQVh3RW9RQXRWVHdJSUJ5VUJBZ01DVEV1d0VGQllRQ29KQVFjSUNBZHdDd0VHQmdoaEFBZ0lJazBFQVFNREFXRUFBUUVyVFFVQkFnSUFZUW9CQUFBc0FFNGJTN0FSVUZoQUtRa0JCd2dIaFFzQkJnWUlZUUFJQ0NKTkJBRURBd0ZoQUFFQkswMEZBUUlDQUdFS0FRQUFMQUJPRzB1d0VsQllRQ29KQVFjSUNBZHdDd0VHQmdoaEFBZ0lJazBFQVFNREFXRUFBUUVyVFFVQkFnSUFZUW9CQUFBc0FFNGJTN0FiVUZoQUtRa0JCd2dIaFFzQkJnWUlZUUFJQ0NKTkJBRURBd0ZoQUFFQkswMEZBUUlDQUdFS0FRQUFMQUJPRzBBdEFBa0hDWVVBQndnSGhRc0JCZ1lJWVFBSUNDSk5CQUVEQXdGaEFBRUJLMDBGQVFJQ0FHRUtBUUFBTEFCT1dWbFpXVUFmUmtVQkFGcFlWRkpPVEVWZlJsOUVRelF5TVRBWUZ3c0pBQllCRmd3SUZpc0ZJaWNtSnlZMU5EYzJNeklYRmhjV0ZSUUhEZ0VIQmljeVB3RTJOelkzTkRNMk56UXpOeVluTlNjbUp6UWpKaWNtSXlZaklnY1ZEZ0VqQndZSEJoVVVGeFlYRmpNVElpY21OVFEzTmpNeUZ4UVhGak15TnpRM05qTXlGaFVVQndZQkdqczNTaUllTXp0b1ZVdGpMQllhSEdjN0pDMFFDd3BFSkF3UkFSVUdBUUVFQ2dFTkR3RXFPQ1lTREJvTUdBa0xBaEVQRHdNSER4NHhJd1pMSVFrV0RRMHBDQUlDRVI0RUhRc0tEU0lzSmhrZk1GTklUR2hLVVNvNWFESXlOemczU1JBTFlnRUJFeDBKRXdFZElnTVFNQlVDQVIwVEFUVVdEd0lIQVFRSkVnOCtGUmdiSmpvbk1nSUhSUlVaSUJFSUtnOEdEQ0VoRFFVWUd6MGxJQUFDQUYzLzdBSnVBNk1BU1FCa0FXVkFEbHBVQWdZRk9qZzFFZ1FDQVFKTVM3QVFVRmhBSWdjQkJRWUdCWEFBQmdrQkJBRUdCR29EQVFFQklrMEFBZ0lBWVFnQkFBQXNBRTRiUzdBUlVGaEFJUWNCQlFZRmhRQUdDUUVFQVFZRWFnTUJBUUVpVFFBQ0FnQmhDQUVBQUN3QVRodExzQkpRV0VBaUJ3RUZCZ1lGY0FBR0NRRUVBUVlFYWdNQkFRRWlUUUFDQWdCaENBRUFBQ3dBVGh0THNCUlFXRUFoQndFRkJnV0ZBQVlKQVFRQkJnUnFBd0VCQVNKTkFBSUNBR0VJQVFBQUxBQk9HMHV3R1ZCWVFDVUhBUVVHQllVQUJna0JCQU1HQkdvQUF3TWlUUUFCQVNKTkFBSUNBR0VJQVFBQUxBQk9HMHV3RzFCWVFDZ0hBUVVHQllVQUFRTUNBd0VDZ0FBR0NRRUVBd1lFYWdBREF5Sk5BQUlDQUdFSUFRQUFMQUJPRzBBc0FBY0ZCNFVBQlFZRmhRQUJBd0lEQVFLQUFBWUpBUVFEQmdScUFBTURJazBBQWdJQVlnZ0JBQUFzQUU1WldWbFpXVmxBRzB0S0FRQmZYVmxYVTFGS1pFdGtRa0FrSWd3S0FFa0JTUW9JRmlzRklpY21KeVkxTkNjME5qTXlGaGNXRlJRWEZCY1dGeFFYRkI4QkZoY1dGeFl5RmpNeU53Y3lOak0zTWpZM05qVTJOelErQVRVMk5TY21KeTRCTlRRM05qTXlGaGNXRlJRSEJnTWlKeVkxTkRjMk16SVhGQmNXTXpJM05EYzJNeklXRlJRSEJnRnlLU2VISkJnQ0hSUVVHd0VDQ0I0R0R3UWJBZ2dXRVJFQkJSSUZCQlFCQWdNQkVnRUJGZ015RFFFQ0NBRUlBZ0VDQ0FzZURCNEZEeXMreEVzaENSWU5EU2tJQWdJUkhnUWRDd29OSWl3bUZBOHhwR2lqWWpnVUhCd1VObFNCT0NSWkRoZ0NCQVVZQVFnSkJ3TUJBUVFCQWdzQkZnTUNTWE1CQkFjSlFFMHlRaDRDQ2djUER4WVFGR0phcTRTMkF3SkZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQUFBQWdBeS8rTUNKUU1HQUVBQVd3SHdTN0FVVUZoQUVsRkxBZ2NHTXhVUEJRUURBZ01CQUFNRFRCdEFFbEZMQWdjR014VVBCUVFEQWdNQkFRTURURmxMc0JCUVdFQWxDQUVHQndjR2NBb0JCUVVIWVFBSEJ5Sk5CQUVDQWlWTkFBTURBR0VCQ1FJQUFDd0FUaHRMc0JGUVdFQW9DQUVHQndhRkNnRUZCUWRoQUFjSElrMEFCQVFyVFFBQ0FpVk5BQU1EQUdFQkNRSUFBQ3dBVGh0THNCSlFXRUFwQ0FFR0J3Y0djQW9CQlFVSFlRQUhCeUpOQUFRRUswMEFBZ0lsVFFBREF3QmhBUWtDQUFBc0FFNGJTN0FVVUZoQUtBZ0JCZ2NHaFFvQkJRVUhZUUFIQnlKTkFBUUVLMDBBQWdJbFRRQURBd0JoQVFrQ0FBQXNBRTRiUzdBYlVGaEFMQWdCQmdjR2hRb0JCUVVIWVFBSEJ5Sk5BQVFFSzAwQUFnSWxUUUFEQXdGaEFBRUJKazBKQVFBQUxBQk9HMHV3S2xCWVFEQUFDQVlJaFFBR0J3YUZDZ0VGQlFkaEFBY0hJazBBQkFRclRRQUNBaVZOQUFNREFXRUFBUUVtVFFrQkFBQXNBRTRiUzdBdFVGaEFNd0FJQmdpRkFBWUhCb1VBQWdRREJBSURnQW9CQlFVSFlRQUhCeUpOQUFRRUswMEFBd01CWVFBQkFTWk5DUUVBQUN3QVRodEFNd0FJQmdpRkFBWUhCb1VBQWdRREJBSURnQW9CQlFVSFlRQUhCeUpOQUFNREFXRUFBUUVtVFFrQkFBQUVZUUFFQkNzQVRsbFpXVmxaV1ZsQUhVSkJBUUJXVkZCT1NraEJXMEpiTnpVaUlSTVJDZ2dBUUFGQUN3Z1dLd1VpSmpVMk5RWUhCaU1pSnlZMU5EYytBVE15RmhVSEJoVVVGeDRCRnhZWEhnRVhNamMyUHdFalB3RTJOelkzTmpVMFB3RStBVE15RmhVSEZCWVZGQWNHQXlJbkpqVTBOell6TWhjVUZ4WXpNamMwTnpZek1oWVZGQWNHQWU4U0h3WWhPekEzUUM5Z0N3RWJGUk1lQlFjWEJBWUZBUTBKRlNNSEJ4TU1EUUVXQVJVUEh3MEJBZ2tCR3hVVEhnRVFFeEQwU3lFSkZnME5LUWdDQWhFZUJCMExDZzBpTENZZEhCUXlNa0luSGg5SHhUS1RGUndjRlVFK1AxNDZDQXdHQWcwRkNnRURCQWtKRmdJZklGWmJBUU1KQTI0VkhCd1ZPRTZXU29NVkR3SnVSUlVaSUJFSUtnOEdEQ0VoRFFVWUd6MGxJQUFBQXYvOUFvWUJNQVBHQUJZQVJnQTlzUVprUkVBeU96b3lJZ1FDQVFGTUFBRUNBWVVFQVFJQUFBSlhCQUVDQWdCaUF3RUFBZ0JTRnhjQkFCZEdGMFlNQ2dBV0FSWUZDQllyc1FZQVJCTWlKeVluSmpVMFB3RTJNeklYRmhjV0ZSUUhCZ2NHSnpZeU56WS9BVDRCUHdJMEp6UXZBUzRCSnlZbkppOEJKaWNqQnc0RUR3RVZGQmNVRng0Qkh3RVdNaGVlRmhnNUlCby9CaVFsRnhnN0loa0VFamtnSHdJQ0FRWUVBUVlKQVFrRUJRRUlCUVlEQWdFRkNRUUdCUTROQmdRRkJBTUJBd1VQRFFFTEJ3RUVBZ0tHQ1JnMUt6Sk9LQVFUQnhRMEtTd1JFVUVsRkdJQkFRSUVBUVFLQWc0VUNnc0NBUTRFQndJQkFnUURBZ0VDQkFNQ0JRUUVBZ3NRQ0FvSUZRMERCZ01CQVFBQkFHTUM4QURGQTFJQUN3QWdzUVprUkVBVkFBRUFBQUZaQUFFQkFHRUFBQUVBVVNRaUFnZ1lLN0VHQUVRVEZBWWpJaVkxTkRZek1oYkZIUlFVSFIwVUZCMERJUlFkSFJRVUhSMEFBUUJrQUI4Q0d3SDBBQ29BTHJFR1pFUkFJeUVJQWdBQkFVd0FBUUFBQVZrQUFRRUFZUUlCQUFFQVVRRUFGQklBS2dFcUF3Z1dLN0VHQUVRbElpY21KeVluSmpVME5qYzJOelkzTmpjMk16SVhGaFVVQmdjR0R3SUdEd0VXRnhZWEZoVVVCd1lCNlF3TVBVQnRLVm9ERlRBdkl5UlZaQWNHRFF3WUVCUWxJQVFJT2wwbUhrV01MUmdIRHg4SElSc3hHalVyQXhrTkhTRVpGem9VQWdjUEdnd2dCQVVPQVFRYlFCc1VJVDhZRGh3TkN4a0FBUUE0QUI4Qjd3SDBBQ29BTGJFR1pFUkFJZ29CQUFFQlRBQUJBQUFCV1FBQkFRQmhBZ0VBQVFCUkFRQVlGd0FxQVNvRENCWXJzUVlBUkRjaUp5WTFORGMyTnpZM0p5WXZBaVluTGdFMU5EYzJNeklYRmhjV0Z4WVhIZ0VWRkFjR0J3WUhCbWtiRUFZWExZeEZIaVpkT2dnRUlDVVVEeGNNRFFjR1pGVWtJeTh3RlFSYUttMUFQUXdmR1FzTkhBNFlQeUVVRzBBYkJBRU9CUVFnREJvUEJ3SVVPaGNaSVIwTkdRTXJOUm94R3lFSEFBQUFBUUJEQUM0Q0Z3SGxBQ29BSXJFR1pFUkFGeUVUQWdFQUFVd0FBQUVBaFFJQkFRRjJMaTRYQXdnWks3RUdBRVEzTkRjMk56WTNOak15RmhjV0Z4WVhGaGNXRlJRSEJpTWlKaWNtTHdJbUx3RUdCd1lIQmlNaUp5WkRCeUViTVJrMkt3SWFEUjBoR1JjNkZBRUdEeG9OSHdRRkRnRUVHMEFiRlNBL0dBNGNEUXNaWHcwTVBVQnNLbG9ERlRBdkl5UlZaQWNHRFF3WUVCUWxJQVFJT2wwbUgwU05MQmdIRHdBQUFRQkRBQzRDRndIbEFDb0FJckVHWkVSQUZ4Z0tBZ0lBQVV3QkFRQUNBSVVBQWdKMkxTNGpBd2daSzdFR0FFUVRORGMyTXpJWEZoY1dGemMyUHdJMk56NEJNeklYRmhVVUJ3WUhCZ2NHQnc0Qkl5SW5KaWNtSnlaREdRc05IQTRZUHlBVkcwQWJCQUVPQlFRZkRSb1BCZ0VVT2hjWklSME5HZ0lyTmhreEd5RUhBYlFiRHdjWUxJMUVIeVpkT2dnRUlDVVVFQmdNRFFZSFpGVWtJeTh3RlFOYUtteEFQUXdBQWdBYy8zTUNBd0tZQUNJQWp3QkxRRWc3QVFBQmcwNFpFZ2dGQXdCeEFRUURBMHdBQUFFREFRQURnQUFEQkFFREJINEFCUUFCQUFVQmFRQUVBZ0lFV1FBRUJBSmhBQUlFQWxHTmkycG9YMTFWVXpVMExDb0dDQllySlRZM05qVTJOelkzSnlZdkFTSW5KaWNtSndjR0J3WUhCaFVYSnhZWEZoY1dGeFlURmhjV0ZSUUhCaU1pSnpRakppY21KeVluQmlNR0J3WVZGeWNXRnhZWEhnRVhGaGNXRnhZVkZBY0dCeFlWRkFjR0l5SW5KaWNtTlRRM05qTXlGeklWRmhjV0h3RVdNelkzTmpVMk56WTNKeVl2QVNJbkppY21KeVluSmpVME56WTNJalVtTlRRM1BnRXpNaGNXQVVrbkdRd0RBZ1VDQXdZS0Z3SUVEalljR3hRWUd3c05Bd1lCQ1E0Q0F5NFVLWWMwRmdJSURoc2lEUUlJRmdJQ0ZDWUNBeThjQXdZQkNRNERIUWtUQ3gwZE55Z2xMaFljRWk0NllrYzJPQmdDQ1E0YUlnMEJCQWNXRXdVWUlEQWREQU1DQlFJREJnb1hBZ1FPTmlJaE9TSVFDUmcrQVJBSkZtVTlNeXNGdWdNVkNRTUVCUVVZR2cwS0RRSUdEd2NKQkFNVENDa05FZ29EQ1FZQ0FROEZDZ0d2Sno4SEJ3d09GaVFFRkJZQkFnMENBUVl0RFJJS0F3a0dBd2tDQndJSENSQW9MVGxGTVJjT0lpaEZNVHNrSVVJSEJ3d09GaVFCQ2dnWENBTUxBaGNKQXdRRkJSZ2FEUW9OQWdZUENBd1NNQjhoR0MwOEl3RWZJUmdaTmtJYUJBQUFBUUJaQVE0Qi9nRndBQTBBSDBBY0FBRUFBQUZYQUFFQkFGOENBUUFCQUU4QkFBZ0ZBQTBCREFNSUZpc1RJaVkxTkRZeklUSVdGUlFHSTRrVUhCd1VBVVVVSEJ3VUFRNGRGQlFkSFJRVUhRQURBRmNBQWdKUEE2TUFDUUF4QUVzQWcwQVBQd0VHQlNZREFnRUVGQUVDQVFOTVM3QXFVRmhBSmdrQkJRWUZoUWNCQmdRR2hRQUJCQUlFQVFLQUFBUUVJazBEQVFJQ0FHRUlBUUFBSXdCT0cwQWpDUUVGQmdXRkJ3RUdCQWFGQUFFRUFnUUJBb0FEQVFJSUFRQUNBR1VBQkFRaUJFNVpRQnN6TWdzS1EwSThPakpMTTBzcUtCMGJHaGdSRHdveEN6RUtDQllyQVJZZkFTY3VBalVVQXlZbkpqVTBNeklYRmhjSEZCWVhNaDRCTXpJM05qYzJOVFFuSmljME5qTXlGeFlWRkFjT0FSTXlId0VXRlJRSEJpTWlKeVluQmdjR0l5SW5KalUwUHdFMkFlUUVBZ0VCQVFNRDBpZ2xiVEVaRUFrQkFoUVJCeGtIQ0VrbkJnWU9Ed0lDR1JVdEJ4TU5EWHBLRXc5bUdBY1BIQXdMVFFvQlZnc01Cd2NsR1dVUEFwSVRDQWdGQlE4TUF3SDliQUVOSW50SkZBb09IaG9sQlFJQ1NBOGpVRzF5WUFRU0V5QXlhSGRqWTJseUE1OFBUdzhiRFFzWkJ6b0pBVUlIQWcwakdoQk9Ed0FBQUFML3ovOGtBUkFEQXdBbUFFQUFiRUFMTkFFRUF4d1RBZ0VDQWt4THNDUlFXRUFkQndFREJBT0ZCUUVFQWdTRkFBSUNKVTBBQVFFQVlRWUJBQUFuQUU0YlFCMEhBUU1FQTRVRkFRUUNCSVVBQWdFQ2hRQUJBUUJoQmdFQUFDY0FUbGxBRnlnbkFRQTROekV2SjBBb1FCZ1dDQVlBSmdFbUNBZ1dLeGNpSnlZMU5EWTdBVEkyTnpVMlB3RTJOU1l2QVQ0Qk16SVdGeFFYRlJZVkZBY0dCd1lIQmhNeUh3RVdGUlFIQmlNaUp5WW5CZ2NHSXlJbkpqVTBQd0UyR1JvU0Roc1VEUVFOQ2dnTkFRY0JCd2NCSEJRVUhBRUNEQU1ESkJFZ0hETVREMllZQnc4Y0RBdE5DZ0ZXQ3d3SEJ5VVpaUS9jRUF3VkV4NE5GQUVSUlF3MlhtTlloUlVjSEJVY0hRWjNmejQ5WUZnbEdCVUQzdzlQRHhzTkN4a0hPZ2tCUWdjQ0RTTWFFRTRQQUFBQUFBSUFZLy85QWl3RG53QXhBRjRBaFV1d0VGQllRQTFZUkFJRUJSb1dGQU1DQVFKTUcwQU5XRVFDQkFVYUZoUURBd0VDVEZsTHNCQlFXRUFjQUFVRUJZVUFCQUVFaFFBQkFTSk5Bd0VDQWdCaUJnRUFBQ01BVGh0QUl3QUZCQVdGQUFRQkJJVUFBd0VDQVFNQ2dBQUJBU0pOQUFJQ0FHSUdBUUFBSXdCT1dVQVRBUUJTVVQ0OUtpa2tJaEFPQURFQk1RY0lGaXNGSWljbUp5WTFORGMyTnpZM05EWXpNaFlWQmdjR0J3WVZGaGNVRng0Qk14WVhGak15Tno0QlB3RXlGeFlWRkFZSEJnTUhJd1lIQmhVR0J3WUhCaU1pSnlZbkpqVTBOelkzTmpjMlB3STJOell6TWhjV0Z4WVZGQWNHQndZSEFVMUpSRVFPQ3dFSUJ3WUNIQlFVSFFFS0JnUUNBZ0lLQVF3Q0JRd1lUQzB4RGh3UEN3NE9GeEFVYWlNREFRY0lBUU1DSGg0TERBY0hGQW9IQWdZUkRBMEVBaEFFSGg4TERBWUhGQW9IQWdZUURRd0RIeWhNT1RjVEVxUkdPRGdVSFIwVVQwOXFPQ2NvSkJFTUd3Y1RCUVVRQmdNREF3RUlDeDRNSGdRVUF6RUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFBQ0FENy8rQUZVQTU4QUhBQkpBRmUyUXk4Q0FnUUJURXV3SFZCWVFCMEFCQUlFaFFBREFnQUNBd0NBQUFJQ0pFMEFBQUFCWVFBQkFTTUJUaHRBR2dBRUFnU0ZBQUlEQW9VQUF3QURoUUFBQUFGaEFBRUJJd0ZPV1VBS1BUd3BLQ1kwSWdVSUdTczNGaGNXTWhZVkZBWXJBU0luSmpVUk5EWXpNaFlWRUJjekZ5TVdNeE1ISXdZSEJoVUdCd1lIQmlNaUp5WW5KalUwTnpZM05qYzJQd0kyTnpZek1oY1dGeFlWRkFjR0J3WUhwd1FKQWlzY0hCVUxLeVV6SFJRVUhRRUJBZ0VEQW5rREFRY0lBUU1DSGg0TERBY0hGQW9IQWdZUkRBMEVBaEFFSGg4TERBWUhGQW9IQWdZUURReGVBZ0VDSFJRVEhSUWhSd0pERkIwZEZQMnhCZ0lEQXRFQ0JnVUJBUUlCR0JjSEFnY1FEQTBHQnhJTENRb0RBZ3dFRnhjSEFnWVJDdzBHQnhNS0Nnb0FBQUFBQWdCai8vMENMQUxwQURFQVRnRE1TN0FRVUZoQURFc0JCQVVhRmhRREFnUUNUQnRBREVzQkJBVWFGaFFEQXdRQ1RGbExzQkJRV0VBbENBRUVCUUlGQkFLQUFBRUJJazBBQlFVR1lRQUdCaVJOQXdFQ0FnQmhCd0VBQUNNQVRodExzQnRRV0VBckNBRUVCUU1GQkFPQUFBTUNCUU1DZmdBQkFTSk5BQVVGQm1FQUJnWWtUUUFDQWdCaEJ3RUFBQ01BVGh0QUtRZ0JCQVVEQlFRRGdBQURBZ1VEQW40QUJnQUZCQVlGYVFBQkFTSk5BQUlDQUdFSEFRQUFJd0JPV1ZsQUdUTXlBUUJIUmtKQk1rNHpUaW9wSkNJUURnQXhBVEVKQ0JZckJTSW5KaWNtTlRRM05qYzJOelEyTXpJV0ZRWUhCZ2NHRlJZWEZCY2VBVE1XRnhZek1qYytBVDhCTWhjV0ZSUUdCd1lUSWljbU5UUS9BVEkyTlRZMU5DY2lMZ0UxTkRZekZoY1dGUVlIQmdGTlNVUkVEZ3NCQ0FjR0Fod1VGQjBCQ2dZRUFnSUNDZ0VNQWdVTUdFd3RNUTRjRHdzT0RoY1FGR29oR2c4SEdBNENFUVFIQVJBY0d4WXlJQkVKU2cwREh5aE1PVGNURXFSR09EZ1VIUjBVVDA5cU9DY29KQkVNR3djVEJRVVFCZ01EQXdFSUN4NE1IZ1FVQWZnWUN3MGNEZ2tTQndrRkNBRUJHUllTSHdVb0dTaFdLZ1lBQXdBKy8vZ0Jhd0xwQUFRQUlRQStBR0cxT3dFREJBRk1TN0FkVUZoQUh3WUJBd1FBQkFNQWdBQUVCQUpoQlFFQ0FpUk5BQUFBQVdFQUFRRWpBVTRiUUIwR0FRTUVBQVFEQUlBRkFRSUFCQU1DQkdrQUFBQUJZUUFCQVNNQlRsbEFFQ01pTnpZeU1TSStJejRtTkNjSENCa3JOeUluSWpVWEZoY1dNaFlWRkFZckFTSW5KalVSTkRZek1oWVZFQmN6RnlNV014TWlKeVkxTkQ4Qk1qWTFOalUwSnlJdUFUVTBOak1XRnhZVkJnY0dwd0VCQVFNRUNRSXJIQndWQ3lzbE14MFVGQjBCQVFJQkF3SldHZzhIR0E0Q0VRUUhBUkFjR3hZeUlCRUpTZzFlQVFFQ0FnRUNIUlFUSFJRaFJ3SkRGQjBkRlAyeEJnSURBWmdZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNId1VvR1NoV0tnWUFBZ0JvLy9nQ2lBT2pBQzBBUndEcVFBODdBUWNHR0FFQ0FRb0dBZ1VDQTB4THNCSlFXRUFpQ2dFR0J3YUZDQUVIQVFlRkFBSUFCUUFDQldnREFRRUJJazBFQ1FJQUFDTUFUaHRMc0JSUVdFQW1DZ0VHQndhRkNBRUhBd2VGQUFJQUJRQUNCV2dBQXdNb1RRQUJBU0pOQkFrQ0FBQWpBRTRiUzdBbVVGaEFLZ29CQmdjR2hRZ0JCd01IaFFBQ0FBVUVBZ1ZvQUFNREtFMEFBUUVpVFFBRUJDTk5DUUVBQUNNQVRodEFLZ29CQmdjR2hRZ0JCd01IaFFBQ0FBVUVBZ1ZvQUFFQklrMEFCQVFEWVFBREF5aE5DUUVBQUNNQVRsbFpXVUFkTHk0QkFEOCtPRFl1Unk5SEtpa2xJeHdiRmhVUURnQXRBUzBMQ0JZckZ5NEJQUUUyTlNZMU5EYzJOejRCTXg0QkhRRUdCd1VtSnpVME5qTVdGeFlWRUFjR0l5SW1OVFkzSlJBSEJoTXlId0VXRlJRSEJpTWlKeVluQmdjR0l5SW5KalUwUHdFMmx4UWJEQVVGQVFRQkhSUVZHZ01CQVZBQkNSOFVGUXdZR2cwVEZod0hBLzZ2R3c3TUV3OW1HQWNPSFF3TFRRb0JWZ3NNQndjbEdXVVFDQUVjRXdPb3FRa0xFQWx1YmhVYUFSd1RBMkJnQ201dEFoTWFBZzRkKy82T0ZnMGVGWStQQ3Y2L0dRMERxdzlQRHhzTkN4a0hPZ2tCUWdjQ0RTTWFFRTRQQUFBQUFBSUFUUC96QWgwRG93QkhBR0VBL0V1d0psQllRQTlWQVFFRkN3RUVBa0lkQWdBRUEwd2JRQTlWQVFFRkN3RUVBa0lkQWdNRUEweFpTN0FLVUZoQUpna0JCUUVGaFFjQkJnRUNBUVlDZ0FBRUJBSmhBQUlDSzAwQUFRRUFZUU1JQWdBQUl3Qk9HMHV3SkZCWVFDWUpBUVVCQllVSEFRWUJBZ0VHQW9BQUJBUUNZUUFDQWl0TkFBRUJBR0VEQ0FJQUFDWUFUaHRMc0NaUVdFQWtDUUVGQVFXRkJ3RUdBUUlCQmdLQUFBSUFCQUFDQkdrQUFRRUFZUU1JQWdBQUpnQk9HMEFvQ1FFRkFRV0ZCd0VHQVFJQkJnS0FBQUlBQkFNQ0JHa0FBd01qVFFBQkFRQmhDQUVBQUNZQVRsbFpXVUFiU1VnQkFGbFlVbEJJWVVsaE5USWFHQTRNQ0FZQVJ3RkhDZ2dXS3hjaUpqVVJORFl6TWhZZEFUWXpNaGNXRnhZVkZBWVZEZ0VqSWlZbk56WTFOQzhDSmljMUp5WW5KaThCSmljbUp5SW1Jd2NqQmc4QkJnOEJCZ2NpSFFFR0J4UUhBeFFHRXpJZkFSWVZGQWNHSXlJbkppY0dCd1lqSWljbU5UUS9BVFo5RkIwZEZCUWROenNoSTRVbER3VUJIQlFVSEFFREF3TUJBZ2dJQnd3R0JCb0VDaElLRUFFR0NBZ01FZ2tYQ0FzRkJ3VUJDUUlCQVIzQ0V3OW1HQWNQSEF3TFRRb0JWZ3NNQndjbEdXVVBEUndVQXFZVUhSMFV2aVFMTll3OVNpMWFLeFVjSEJWV0p5WkNEZ1FPSnhJQkRoWUdDUllDQ0FnRkF3SUJCQVFOQmcwR0RBc0JBUlVUQWdIK3lCUWNBN0FQVHc4YkRRc1pCem9KQVVJSEFnMGpHaEJPRHdBQUFBQUNBQ2IvK2dKcUE2TUFGZ0F3QUVCQVBTUUJCQVVCVEFZQkJRUUZoUWdCQkFJRWhRTUJBUUVDWHdBQ0FpSk5Cd0VBQUNNQVRoZ1hBUUFvSnlFZkZ6QVlNQk1SRFFvR0JBQVdBUllKQ0JZckJTSW1OUkVqSWlZMU5EWXpJVElXRlJRR0t3RVJGQVlESWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCZ0ZJRkIzQkV4MGRFd0hqRkIwZEZNRWNGQk1QWmhnSER4d01DMDRKQWxVTERBY0hKUmxrRUFZY0ZBSXBIQlFVSFIwVUZCejkxeFFjQXZBUFR3OGJEUXNaQnprS0FVSUhBZzBqR2hCT0R3QUFBdi8vLytzQnNRTHBBRHNBV0FDaVFBdFZHd0lDQ1FnQkJnRUNURXV3RzFCWVFEUUFBd29KQ2dNSmdBd0JDQUlCQWdnQmdBQUpDUXBoQUFvS0pFMEZBUUVCQW1FRUFRSUNKVTBIQVFZR0FHRUxBUUFBTEFCT0cwQXlBQU1LQ1FvRENZQU1BUWdDQVFJSUFZQUFDZ0FKQWdvSmFRVUJBUUVDWVFRQkFnSWxUUWNCQmdZQVlRc0JBQUFzQUU1WlFDRTlQQUVBVVZCTVN6eFlQVmczTlRJeEpTTWZIUmtYRVE4TENRQTdBVHNOQ0JZckZ5SXVBU2NtTlRRL0FTTWlKalUwTmpzQk5UUW5OVFEyTXpJV0Z4WVZNeklXRlJRR0t3RUdCeFFmQXg0QkZSY1dNekkrQVRNeUZ4WVZGQk1pSnlZMU5EOEJNalkxTmpVMEp5SXVBVFUwTmpNV0Z4WVZCZ2NHN0JJNE5Bb1RCUUlvRkIwZEZDc0NIaE1WR2dFRElSTWRIUk1rQmdFRkF3d0pBd01DQ2drRUNBb0dEUThXQ3hvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTkZReEJKMFIzUER3aEhSUVVIUlFlSHdJVEd4d1VLU2dkRkJRZFdsc3VMZzhyRVFJREFRRUVBUUlIREIwMEFnb1lDdzBjRGdrU0J3a0ZDQUVCR1JZU0h3VW9HU2hXS2dZQUFBQUNBR0QvK2dKUEFyZ0FMUUJRQURkQU5FbEhBZ0FCUHdFREFBSk1BQUlBQVFBQ0FXa0FBQUFEQkFBRGFRQUZCU0pOQUFRRUl3Uk9Ua3hFUWo0Nk1TNHRLMkFHQ0JjckV6WTdBVEkzTWpjeVBnSXpOajhCTmo4Qk1qYzBOalUwTHdFbUp6VW1KeVl2QVNZbkxnRW5KaThCSmlNSE5UWXpNaGNXSFFFVUJ3WUhCaU1pSnlJbkZSUUdJeUltTlJFbVBRRTBOak15RmhYQ0Jpb2FKekFRRFFJYkdRRUJDd29DQ2dVSEFRWUJBUUVDQmdVSEFoWUVDeE1EQndVckt4TVZLaVFVRlBOU0lDc3BPMHRZRlJRbURCMFVGQndCSFJRVUhRRUFBUUlEQlFnQkJRY0JDQWdORndRRkVSY0lBdzROQVFzSkJ4TURDUWdCQkFFT0JBSURBV0lCZ0RoQUNrZzRMUThTQVFKMkZCMGRGQUZVQlFYK0ZCMGRGQUFBQUFJQVNQOHNBa1lDMXdBa0FGc0EzMEFPS1FFRUJRd0JBUVFRQVFJQkEweExzQTlRV0VBZ0FBTURKRTBHQVFVRkFHRUFBQUFsVFFBRUJBRmhBQUVCSTAwQUFnSW5BazRiUzdBUVVGaEFIZ0FFQUFFQ0JBRnBBQU1ESkUwR0FRVUZBR0VBQUFBbFRRQUNBaWNDVGh0THNCVlFXRUFnQUFNREpFMEdBUVVGQUdFQUFBQWxUUUFFQkFGaEFBRUJJMDBBQWdJbkFrNGJTN0FnVUZoQUhnQUVBQUVDQkFGcEFBTURKRTBHQVFVRkFHRUFBQUFsVFFBQ0FpY0NUaHRBSEFBQUJnRUZCQUFGYVFBRUFBRUNCQUZwQUFNREpFMEFBZ0luQWs1WldWbFpRQTRsSlNWYkpWc3VMQ2NvRUFjSUd5c1RGaGNXRnhZVkZBY0dJeUluRmhVVUJ3NEJJeUltTlRZMU5DWTFORGMxTkRZek1oWWRBaFFIRlJRWE14WVhNeFl6TnpJMk1qYzJQd0UyTnpJMk56WS9BVFkvQVRVMlB3RTJOVFFuTkNjMUppYzBJalVtSnlNbUx3RW1xOUJxTkJvVE5XT2xKU1FEQWdJYUZSTWVBaGtCSFJRVUhRRVBBUThnQkFzUUdnRUZCQUVsRkFnaUN3RURBaEFPQVFVS0NBZ0RBUUVGQ3dzRkFnOFVBUm94R1VnQ0R3RTVIRFVyTDFaSGZnZ3pNaXNxRlJ3Y0ZTb3BkK3AxSHgvaUZCMGRGUGtGQlFVRW8za0dCZ0lCQVFFRkNnTVBDd01CRFJFQ0JSSVBBaE1VQmc0UERnMEhEd0VMQkFFQkNnb0tDd1FJQUFBQUFBRUFMdi96QWs0Q3hnQkRBUEZMc0I5UVdFQUxPQ1FDQlFZQ0FRQURBa3diUUFzNEpBSUZCZ0lCQUFFQ1RGbExzQmRRV0VBaUNBRUVDZ2tDQXdBRUEyY0FCUVVHWVFjQkJnWWlUUUVCQUFBQ1h3QUNBaU1DVGh0THNCOVFXRUFtQ0FFRUNna0NBd0FFQTJjQUJnWWlUUUFGQlFkZkFBY0hJazBCQVFBQUFsOEFBZ0lqQWs0YlM3QXhVRmhBTEFBQUFRSUJBSElJQVFRS0NRSURBUVFEWndBR0JpSk5BQVVGQjE4QUJ3Y2lUUUFCQVFKZkFBSUNJd0pPRzBBcUFBQUJBZ0VBY2dBSEFBVUVCd1ZuQ0FFRUNna0NBd0VFQTJjQUJnWWlUUUFCQVFKZkFBSUNJd0pPV1ZsWlFCSUFBQUJEQUVJbk1TUmpKQ2RrTVNNTENCOHJBUVlIRmpNeU56WTNNaFlWRkFZSElnWWpJaVluSmpVME56WTNJeUltTlRRMk93RTJOeVlqSWdjR0J5NEJOVFEyTnpZM05qTXlGeFlWRkFjR0J6TXlGaFVVQmlNQmNVMW5LaklxVTBORUZSd2NGVUtIUlExZ1VTTU9kRVdLRkJ3Y0ZOaFVNeG90SlNTTlRSUWNIQlJRVDFZaXNCTUdBaVZmV2hRY0hCUUJLMkp4QlFZRUFSMFVGQndCQ1FFV0RTSVNFWHhUSFJRVUhYQmxBZ0lLQVFFY0ZCUWNBUUVHQmlNTURBY0hhSWdkRkJRZEFBRUFDdi93QWRjQ0hRQkdBSWRMc0JKUVdFQUtJZ0VEQkJRQkFRQUNUQnRBQ2lJQkJRUVVBUUVBQWt4WlM3QVNVRmhBSVFjQkF3a0lBZ0lBQXdKbkJRRUVCQVpmQUFZR0pVMEFBQUFCWHdBQkFTTUJUaHRBS0FBRkJBTUVCUU9BQndFRENRZ0NBZ0FEQW1jQUJBUUdYd0FHQmlWTkFBQUFBVjhBQVFFakFVNVpRQkVBQUFCR0FFVWxWeGdVSkNaMFVnb0lIaXNsQmdjek56WXpIZ0VWRkFZSElnOEJJaWNtTHdFME56WTNJeUltTlRRMk93RTJQd0VuSWc4QkloVUdCd1lqSWljbU5UUTJOell6TWhZekZoY1dGUlFITXpJV0ZSUUdJd0VJTURzM2JUSXpGQjBkRkRNeVVWdGJJd3dCRFRzNlNSUWNIQlNYV1FvRVNWQWNEQVFURWdZSERRNFdFQlJiWEN4WEt4c1BCMzFHRkJ3Y0ZOWThTQUVCQVJ3VUZCd0JBUUVHQWlJTkV3OUdSeHdVRkIxd0R3UUJCUUVCQWdRQkJ3MGJEUjRGRVFNQkZ3MFBFWjRkRkJRY0FBQUFBQUVBU0FIakFPVUMxd0FjQUNSQUlSa0JBUUFCVEFBQkFBSUJBbVlEQVFBQUpBQk9BUUFWRkJBUEFCd0JIQVFJRmlzVE1oY1dGUlFQQVNJR0ZRWVZGQmN5SGdFVkZBWWpKaWNtTlRZM05yVWFEd2NZRGdJUkJBY0JFQndiRmpJZ0VRbEtEUUxYR0FzTkhBNEpFZ2NKQlFnQkFSa1dFaDhGS0Jrb1Zpb0dBQUFBQVFBbUFlTUF3d0xYQUJ3QUowQWtHUUVBQVFGTUF3RUFBUUNHQUFFQkFtRUFBZ0lrQVU0QkFCVVVFQThBSEFFY0JBZ1dLeE1pSnlZMU5EOEJNalkxTmpVMEp5SXVBVFUwTmpNV0Z4WVZCZ2NHVmhvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTkFlTVlDdzBjRGdrU0J3a0ZDQUVCR1JZU0h3VW9HU2hXS2dZQUFBQUFBZi96LzRRQWtBQjRBQndBTEVBcEdRRUFBUUZNQXdFQUFRQ0dBQUlCQVFKWkFBSUNBV0VBQVFJQlVRRUFGUlFRRHdBY0FSd0VDQllyRnlJbkpqVTBQd0V5TmpVMk5UUW5JaTRCTlRRMk14WVhGaFVHQndZakdnOEhHQTRDRVFRSEFSQWNHeFl5SUJFSlNnMThHQXNOSEE0SkVnY0pCUWdCQVJrV0VoOEZLQmtvVmlvR0FBQUFBQUVBTndIakFOUUMxd0FjQUNkQUpBUUJBQUlCVEFNQkFBSUFoZ0FDQWdGaEFBRUJKQUpPQVFBT0RRa0lBQndCSEFRSUZpc1RJaWNtSnpRM05qY3lGaFVVRGdFakJoVVVGeFFXTXhjV0ZSUUhCcVFORFVvSkVTQXlGaHNjRUFFSEJCRUNEaGdIRHdIakJpcFdLQmtvQlI4U0Zoa0JBUWdGQ1FjU0NRNGNEUXNZQUFBQUFBSUFTQUhqQWFBQzF3QWNBRGtBTTBBd05oa0NBUUFCVEFRQkFRVUJBZ0VDWmdjREJnTUFBQ1FBVGg0ZEFRQXlNUzBzSFRrZU9SVVVFQThBSEFFY0NBZ1dLeE15RnhZVkZBOEJJZ1lWQmhVVUZ6SWVBUlVVQmlNbUp5WTFOamMyTXpJWEZoVVVEd0VpQmhVR0ZSUVhNaDRCRlJRR0l5WW5KalUyTnphMUdnOEhHQTRDRVFRSEFSQWNHeFl5SUJFSlNnM0lHZzhIR0E0Q0VRUUhBUkFjR3hZeUlCRUpTZzBDMXhnTERSd09DUklIQ1FVSUFRRVpGaElmQlNnWktGWXFCaGdMRFJ3T0NSSUhDUVVJQVFFWkZoSWZCU2daS0ZZcUJnQUFBQUFDQUNZQjR3RitBdGNBSEFBNUFEWkFNellaQWdBQkFVd0hBd1lEQUFFQWhnUUJBUUVDWVFVQkFnSWtBVTRlSFFFQU1qRXRMQjA1SGprVkZCQVBBQndCSEFnSUZpc1RJaWNtTlRRL0FUSTJOVFkxTkNjaUxnRTFORFl6RmhjV0ZRWUhCak1pSnlZMU5EOEJNalkxTmpVMEp5SXVBVFUwTmpNV0Z4WVZCZ2NHVmhvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTnJob1BCeGdPQWhFRUJ3RVFIQnNXTWlBUkNVb05BZU1ZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNId1VvR1NoV0tnWVlDdzBjRGdrU0J3a0ZDQUVCR1JZU0h3VW9HU2hXS2dZQUF2L3ovNFFCVEFCNEFCd0FPUUE4UURrMkdRSUFBUUZNQndNR0F3QUJBSVlGQVFJQkFRSlpCUUVDQWdGaEJBRUJBZ0ZSSGgwQkFESXhMU3dkT1I0NUZSUVFEd0FjQVJ3SUNCWXJGeUluSmpVMFB3RXlOalUyTlRRbklpNEJOVFEyTXhZWEZoVUdCd1l6SWljbU5UUS9BVEkyTlRZMU5DY2lMZ0UxTkRZekZoY1dGUVlIQmlNYUR3Y1lEZ0lSQkFjQkVCd2JGaklnRVFsS0RhOGFEd2NZRGdJUkJBY0JFQndiRmpJZ0VRbEtEWHdZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNId1VvR1NoV0tnWVlDdzBjRGdrU0J3a0ZDQUVCR1JZU0h3VW9HU2hXS2dZQUFBQUFBZ0ExQWVNQmtBTFhBQndBT1FBMlFETWhCQUlBQWdGTUJ3TUdBd0FDQUlZRkFRSUNBV0VFQVFFQkpBSk9IaDBCQUNzcUppVWRPUjQ1RGcwSkNBQWNBUndJQ0JZckV5SW5KaWMwTnpZM01oWVZGQTRCSXdZVkZCY1VGak1YRmhVVUJ3WXpJaWNtSnpRM05qY3lGaFVVRGdFakJoVVVGeFFXTXhjV0ZSUUhCcUlORFVvSkVTQXlGaHNjRUFFSEJCRUNEaGdIRDZRTkRVb0pFU0F5RmhzY0VBRUhCQkVDRGhnSER3SGpCaXBXS0Jrb0JSOFNGaGtCQVFnRkNRY1NDUTRjRFFzWUJpcFdLQmtvQlI4U0Zoa0JBUWdGQ1FjU0NRNGNEUXNZQUFJQVdmL3RBTTREVWdBY0FDZ0FUYllZRUFJQUFRRk1TN0F4VUZoQUZBQURBQUlCQXdKcEFBRUJLRTBFQVFBQUxBQk9HMEFVQUFNQUFnRURBbWtBQVFFQVlRUUJBQUFzQUU1WlFBOEJBQ2NsSVI4TkRBQWNBUndGQ0JZckZ5SW1KeVluSmpVME56WTNOak1YRmhVVUJnOEJCaFVVRnhZWERnRVRGQVlqSWlZMU5EWXpNaGFkRkJ3QkFRZ0tGUVVTREEwTUl3SUlBZ1lKQ1FFQkhCUWRGQlFkSFJRVUhSTWNGR3ByYzNKcGFCTUtCZ0VNSkFZTkxoSTJURDZUYTJ3VUhBTTBGQjBkRkJRZEhRQUFBQUVBU3YveEFNTUNJQUFkQUJsQUZnSUJBQUVCVEFBQkFTdE5BQUFBSmdCT0p4Y0NDQmdyTnhZVkZBWUhCaU1pSmljdUFUVTBOak15RmgwQkZCY1dId0lVRnhiQ0FRNFZCZ1VOSHdVU0NCMFVGQjBEQWdVR0FnRUJMZ1lHRFJ3SEFROFVlZWw1RkIwZEZEUmNWam82T2c0REF3d0FBUUEzL3dnQ01BTEJBR2dBVUVCTlJ3RUJBRThCQmdjQ1RBQURCQUFFQXdDQUFBQUJCQUFCZmdBQkJRUUJCWDRBQndVR0JRY0dnQUFHQm9RQUJBUUNZUUFDQWloTkFBVUZJd1ZPWTJKVVVrdEtNUzhwSnlNaEpDZ0lDQmdyQlNZbkppY21OVFEyTnpJWEZoY1dNekkyTXpZM05qVW1OU1luSmpVME56WTNOak15RnhZVkZDTWlKalUzTkNjbUl5SUhCZ2NHQnc0REJ4UVdGUjRCRlJZWEZoY1dGUVlIQmdjV0Z4WVZCZ2NHSXlJbkpqVTBQd0V5TmpVMk5UUW5JaTRCTlRRM05nRXlRemRBTXc0Y0ZCUVBTazBvQ0E0RkJEd3BBZ0VjaWRZc01rVXlOR2M5TURJVEhnRVJPQjg2S2lNTEJCRUNCUUlDQVFNTEFqWmVKQ1NSQ2o5RFJCNFdFUWxLRFEwYUR3Y1lEZ0lSQkFjQkVCd09DQVlPTERFN0VCVVNIQUVPVnlzT0FSUTRDQWNDQkRnNFdudzdMeklWRWo4NVIwc2JFeUlmRmlNVER3c0RFUVFIQmdVSENRY0NFUU1CTlNZUUUwaHJTeTA1QXdzYkdTaFdLZ1lZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNFQWtBQXdBdi93Z0J3d0ltQUFJQUJRQ0JBRXRBU0ZNQkF3UWxBUUVBWmdFR0FXb0JCUVlFVEFBREJBQUVBd0NBQUFBQkJBQUJmZ0FGQmdXR0FBRUFCZ1VCQm1rQUJBUUNZUUFDQWlzRVRuNTliMjFMU2tOQk9UY3BMd2NJR0NzVE16VUhJalVUSmljbUp5WTFORGMyTXpJWE1oVVdGeFVXRnhZek5qY3pQZ0UxTmpjMk55Y21Md0VpSnlZbkppY21KeVkxTkRjK0FUTXlGeFlYRmhVVUJ3WWpJaWMwSXlZbkl5WW5CaU1HQndZSEJoVVhKeGNXRng0QkZ4NEJGeFlYRmhVVUJ3WUhGaGNXRlFZSEJpTWlKeVkxTkQ4Qk1qWTFOalUwSnlJdUFUVTBxd0VGQVJzbklqSVZBZ2tPR2lJTkFRUUhGaE1ZSUI4VkFnc1lBd0lGQWdNR0NoY0NCQTQySWlFNUloQUpGbVU5TXlzNkZ3SUlEaHNpRFFJSUZnRVRLQUlER0JzTERRTUdBUVVKQ1FJR0F4NDdIVGNvSlM0dlNnOE1FUWxLRFEwYUR3Y1lEZ0lSQkFjQkVCd0JuQUV5QWY2QUNoY2tPUWNIREE0V0pBRUtDQUVXQ0FzQkNRVVRBd1FGQlJnYURRb05BZ1lQQ0F3U01COGhHQmsyUWhvb1F3Y0hEQTRXSkFRVUZnNENBUU1UQ0JVTkVnb0RCUVlFQWdJQkN3NEpFQ2d0T1VVeE1Ba0tEeGtvVmlvR0dBc05IQTRKRWdjSkJRZ0JBUmtXRWdBQUFnQW0vd2dDYWdLMEFCWUFNd0JDUUQ4d0FRUUZBVXdJQVFRRkJJWUFCZ0FGQkFZRmFRTUJBUUVDWHdBQ0FpSk5Cd0VBQUNNQVRoZ1hBUUFzS3ljbUZ6TVlNeE1SRFFvR0JBQVdBUllKQ0JZckJTSW1OUkVqSWlZMU5EWXpJVElXRlJRR0t3RVJGQVlISWljbU5UUS9BVEkyTlRZMU5DY2lMZ0UxTkRZekZoY1dGUVlIQmdGSUZCM0JFeDBkRXdIakZCMGRGTUVjTXhvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTkJod1VBaWtjRkJRZEhSUVVIUDNYRkJ6eUdBc05IQTRKRWdjSkJRZ0JBUmtXRWg4RktCa29WaW9HQUFBQUFmLy8vd2dCT1FLV0FGa0FnMEFTR3dFQkFnZ0JCUUFBQVFjRlFBRUlDUVJNUzdBS1VGaEFLZ0FDQVFFQ2NBQUpCd2dIQ1FpQUFBZ0loQVFCQUFBQllRTUJBUUVsVFFZQkJRVUhZUUFIQnl3SFRodEFLUUFDQVFLRkFBa0hDQWNKQ0lBQUNBaUVCQUVBQUFGaEF3RUJBU1ZOQmdFRkJRZGhBQWNITEFkT1dVQU9WRk1uRkNNY0pDUW1KQ2tLQ0I4ckZ5WW5KaWNtTlRRL0FTTWlKalUwTmpzQk5UUW5OVFEyTXpJV0Z4WVZNeklXRlJRR0t3RUdCeFFmQXg0QkZSY1dNekkrQVRNeUZ4WVZGQWNXRnhZVkJnY0dJeUluSmpVMFB3RXlOalUyTlRRbklpNEJOVFEzTnF3VEVSb0tFd1VDS0JRZEhSUXJBaDRURlJvQkEwa1RIUjBUVEFZQkJRTU1DUU1EQWdvSkJBZ0tCZzBQRmtZUkRoRUpTZzBOR2c4SEdBNENFUVFIQVJBY0RnWUlDaFlnSjBSM1BEd2hIUlFVSFJRZUh3SVRHeHdVS1NnZEZCUWRXbHN1TGc4ckVRSURBUUVFQVFJSERCMHlBZ3NSR1NoV0tnWVlDdzBjRGdrU0J3a0ZDQUVCR1JZU0VBY0FBdi9hQXVZQmZnT2ZBQ3dBV1FBcHNRWmtSRUFlVXo4bUVnUUJBQUZNQWdFQUFRQ0ZBd0VCQVhaTlREazRJQjhiQkFnWEs3RUdBRVFUTnpNMk56WTFOamMyTnpZek1oY1dGeFlWRkFjR0J3WUhCZzhDQmdjR0l5SW5KaWNtTlRRM05qYzJQd0l6TmpjMk5UWTNOamMyTXpJWEZoY1dGUlFIQmdjR0J3WVBBZ1lIQmlNaUp5WW5KalUwTnpZM05qY09BZ0VIQ0FFREFoNGVDd3dIQnhRS0J3SUdFUXdOQXdNUUJCNGZDd3dHQnhRS0J3SUdFQTBNMVFJQkJ3Z0JBd0llSGdzTUJ3Y1VDZ2NDQmhFTURRTURFQVFlSHdzTUJnY1VDZ2NDQmhBTkRBTlhBZ1lGQVFFQ0FSZ1hCd0lIRUF3TkJnY1NDd2tLQXdJTUJCY1hCd0lHRVFzTkJnY1RDZ29LQWdJR0JRRUJBZ0VZRndjQ0J4QU1EUVlIRWdzSkNnTUNEQVFYRndjQ0JoRUxEUVlIRXdvS0NnQUFBQUFGQUQvLytRTEJBNThBQWdCYkFIRUFuZ0RMQUV4QVNjV3htSVFFQmdVQlRBY0JCUVlGaFFnQkJnUUdoUUFCQVFSaEFBUUVJazBKQWdJQUFBTmhDZ0VEQXlNRFRsNWNBd08vdnF1cWtwRitmV2htWEhGZWNRTmJBMWtzS2hRTENCY3JBU2N5QXpjeU56WTNOamMxTnpZL0FUWTFORGMyTlNZbkppYzFKeVluSXpVbkppOEJKaWNqSnlZbkppOEJEd0VHRHdFR0R3RWlCd1lQQVFZUEFnWUhCaFVQQVJRZkFSWWZBUllmQVRNVkZ4WWZBUllmQVJZWE14WXlId0VuSWljbUp5WTFORGMyTXpJV0Z4WVZGQTRCQndZRE56TTJOelkxTmpjMk56WXpNaGNXRnhZVkZBY0dCd1lIQmc4Q0JnY0dJeUluSmljbU5UUTNOamMyUHdJek5qYzJOVFkzTmpjMk16SVhGaGNXRlJRSEJnY0dCd1lQQWdZSEJpTWlKeVluSmpVME56WTNOamNDRFFFQmVnb0tKeVVLRWhVSUVnb0xDZ0VDQVFRRkNnZ0pEQUVHRHhBSklBa0JBUlFuRGdFdEZRb1NFZ0lNQ3drQkFRMFVBUU1DQ2cwSEJRa0JBZ01GQ2dnRENBb0xBUU1NRGdZUEVBWVFHZ01IRUFRVkhVYzlPU1ZEV1UyRVNhbzRMUUZWVGtuV0FnRUhDQUVEQWg0ZUN3d0hCeFFLQndJR0VRd05Bd01RQkI0ZkN3d0dCeFFLQndJR0VBME0xUUlCQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFNREVBUWVId3NNQmdjVUNnY0NCaEFOREFJaEFmNDVBUTBTQ2c4WkFRb2VGUjhvQ0FJQkR4b2pEeG9aQWc4U0VRRUhFUTBHRlFJQkNBa0NBUUlDQWdNSEFRWUhCZ0lJR1FFREJBOGJFQkVpREFFeEdSZ2VKaElIRVJBUkFRUU9EQVVMQndNSEJBRUJZZ0VqSXpkb2dwbG5XVVplVTE0Q1lxa3pMQU5lQWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FnSUdCUUVCQWdFWUZ3Y0NCeEFNRFFZSEVnc0pDZ01DREFRWEZ3Y0NCaEVMRFFZSEV3b0tDZ0FBQUFRQUh2L25BamtEQWdBV0FFUUFjUUNlQUU5QVRKaUVhMWNFQndZbEFRSURBa3dJQVFZSEJvVUpBUWNCQjRVRUFRTURBV0VBQVFFclRRVUJBZ0lBWVFvQkFBQXNBRTRCQUpLUmZuMWxaRkZRUkVNME1qRXdHQmNMQ1FBV0FSWUxDQllyQlNJbkppY21OVFEzTmpNeUZ4WVhGaFVVQnc0QkJ3WW5NajhCTmpjMk56UXpOamMwTXpjbUp6VW5KaWMwSXlZbkppTW1JeUlIRlE0Qkl3Y0dCd1lWRkJjV0Z4WXpBemN6TmpjMk5UWTNOamMyTXpJWEZoY1dGUlFIQmdjR0J3WVBBZ1lIQmlNaUp5WW5KalUwTnpZM05qOENNelkzTmpVMk56WTNOak15RnhZWEZoVVVCd1lIQmdjR0R3SUdCd1lqSWljbUp5WTFORGMyTnpZM0FSbzdOMG9pSGpNN2FGVkxZeXdXR2h4bk95UXRFQXNLUkNRTUVRRVZCZ0VCQkFvQkRROEJLamdtRWd3YURCZ0pDd0lSRHc4REJ3OGVNU05RQWdFSENBRURBaDRlQ3d3SEJ4UUtCd0lHRVF3TkF3TVFCQjRmQ3d3R0J4UUtCd0lHRUEwTTFRSUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUU1ERUFRZUh3c01CZ2NVQ2djQ0JoQU5EQmtmTUZOSVRHaEtVU281YURJeU56ZzNTUkFMWWdFQkV4MEpFd0VkSWdNUU1CVUNBUjBUQVRVV0R3SUhBUVFKRWc4K0ZSZ2JKam9uTWdKd0FnWUZBUUVDQVJnWEJ3SUhFQXdOQmdjU0N3a0tBd0lNQkJjWEJ3SUdFUXNOQmdjVENnb0tBZ0lHQlFFQkFnRVlGd2NDQnhBTURRWUhFZ3NKQ2dNQ0RBUVhGd2NDQmhFTERRWUhFd29LQ2dBREFGMy83QUp1QTU4QVNRQjJBS01BcFVBUW5ZbHdYQVFGQkRvNE5SSUVBZ0VDVEV1d0ZGQllRQjRHQVFRRkJJVUhBUVVCQllVREFRRUJJazBBQWdJQVlnZ0JBQUFzQUU0YlM3QVpVRmhBSWdZQkJBVUVoUWNCQlFNRmhRQURBeUpOQUFFQklrMEFBZ0lBWWdnQkFBQXNBRTRiUUNVR0FRUUZCSVVIQVFVREJZVUFBUU1DQXdFQ2dBQURBeUpOQUFJQ0FHSUlBUUFBTEFCT1dWbEFGd0VBbDVhRGdtcHBWbFZDUUNRaURBb0FTUUZKQ1FnV0t3VWlKeVluSmpVMEp6UTJNeklXRnhZVkZCY1VGeFlYRkJjVUh3RVdGeFlYRmpJV016STNCekkyTXpjeU5qYzJOVFkzTkQ0Qk5UWTFKeVluTGdFMU5EYzJNeklXRnhZVkZBY0dBVGN6TmpjMk5UWTNOamMyTXpJWEZoY1dGUlFIQmdjR0J3WVBBZ1lIQmlNaUp5WW5KalUwTnpZM05qOENNelkzTmpVMk56WTNOak15RnhZWEZoVVVCd1lIQmdjR0R3SUdCd1lqSWljbUp5WTFORGMyTnpZM0FYSXBKNGNrR0FJZEZCUWJBUUlJSGdZUEJCc0NDQllSRVFFRkVnVUVGQUVDQXdFU0FRRVdBeklOQVFJSUFRZ0NBUUlJQ3g0TUhnVVBLejcrK1FJQkJ3Z0JBd0llSGdzTUJ3Y1VDZ2NDQmhFTURRTURFQVFlSHdzTUJnY1VDZ2NDQmhBTkROVUNBUWNJQVFNQ0hoNExEQWNIRkFvSEFnWVJEQTBEQXhBRUhoOExEQVlIRkFvSEFnWVFEUXdVRHpHa2FLTmlPQlFjSEJRMlZJRTRKRmtPR0FJRUJSZ0JDQWtIQXdFQkJBRUNDd0VXQXdKSmN3RUVCd2xBVFRKQ0hnSUtCdzhQRmhBVVlscXJoTFlEYXdJR0JRRUJBZ0VZRndjQ0J4QU1EUVlIRWdzSkNnTUNEQVFYRndjQ0JoRUxEUVlIRXdvS0NnSUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQXdBeS8rTUNLQU1DQUVBQWJRQ2FBVEpMc0JSUVdFQVVsSUJuVXdRR0JUTVZEd1VFQXdJREFRQURBMHdiUUJTVWdHZFRCQVlGTXhVUEJRUURBZ01CQVFNRFRGbExzQkJRV0VBZkJ3RUZCZ1dGQ0FFR0FnYUZCQUVDQWlWTkFBTURBR0lCQ1FJQUFDd0FUaHRMc0JSUVdFQWpCd0VGQmdXRkNBRUdCQWFGQUFRRUswMEFBZ0lsVFFBREF3QmlBUWtDQUFBc0FFNGJTN0FxVUZoQUp3Y0JCUVlGaFFnQkJnUUdoUUFFQkN0TkFBSUNKVTBBQXdNQllnQUJBU1pOQ1FFQUFDd0FUaHRMc0MxUVdFQXFCd0VGQmdXRkNBRUdCQWFGQUFJRUF3UUNBNEFBQkFRclRRQURBd0ZpQUFFQkprMEpBUUFBTEFCT0cwQXFCd0VGQmdXRkNBRUdCQWFGQUFJRUF3UUNBNEFBQXdNQllnQUJBU1pOQ1FFQUFBUmhBQVFFS3dCT1dWbFpXVUFaQVFDT2pYcDVZV0JOVERjMUlpRVRFUW9JQUVBQlFBb0lGaXNGSWlZMU5qVUdCd1lqSWljbU5UUTNQZ0V6TWhZVkJ3WVZGQmNlQVJjV0Z4NEJGekkzTmo4Qkl6OEJOamMyTnpZMU5EOEJQZ0V6TWhZVkJ4UVdGUlFIQmdFM016WTNOalUyTnpZM05qTXlGeFlYRmhVVUJ3WUhCZ2NHRHdJR0J3WWpJaWNtSnlZMU5EYzJOelkvQWpNMk56WTFOamMyTnpZek1oY1dGeFlWRkFjR0J3WUhCZzhDQmdjR0l5SW5KaWNtTlRRM05qYzJOd0h2RWg4R0lUc3dOMEF2WUFzQkd4VVRIZ1VIRndRR0JRRU5DUlVqQndjVERBMEJGZ0VWRHg4TkFRSUpBUnNWRXg0QkVCTVEvcllDQVFjSUFRTUNIaDRMREFjSEZBb0hBZ1lSREEwREF4QUVIaDhMREFZSEZBb0hBZ1lRRFF6VkFnRUhDQUVEQWg0ZUN3d0hCeFFLQndJR0VRd05Bd01RQkI0ZkN3d0dCeFFLQndJR0VBME1IUndVTWpKQ0p4NGZSOFV5a3hVY0hCVkJQajllT2dnTUJnSU5CUW9CQXdRSkNSWUNIeUJXV3dFRENRTnVGUndjRlRoT2xrcURGUThDMXdJR0JRRUJBZ0VZRndjQ0J4QU1EUVlIRWdzSkNnTUNEQVFYRndjQ0JoRUxEUVlIRXdvS0NnSUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFJQVkvLzlBaXdDc0FBeEFEMEFnMHV3RUZCWVFBNFVBUVVCRmdFRUJSb0JBZ1FEVEJ0QURoUUJCUUVXQVFRRkdnRURCQU5NV1V1d0VGQllRQm9BQlFBRUFnVUVhUUFCQVNKTkF3RUNBZ0JoQmdFQUFDTUFUaHRBSVFBREJBSUVBd0tBQUFVQUJBTUZCR2tBQVFFaVRRQUNBZ0JoQmdFQUFDTUFUbGxBRXdFQVBEbzJOQ29wSkNJUURnQXhBVEVIQ0JZckJTSW5KaWNtTlRRM05qYzJOelEyTXpJV0ZRWUhCZ2NHRlJZWEZCY2VBVE1XRnhZek1qYytBVDhCTWhjV0ZSUUdCd1lERkFZaklpWTFORFl6TWhZQlRVbEVSQTRMQVFnSEJnSWNGQlFkQVFvR0JBSUNBZ29CREFJRkRCaE1MVEVPSEE4TERnNFhFQlJxSlIwVUZCMGRGQlFkQXg4b1REazNFeEtrUmpnNEZCMGRGRTlQYWpnbktDUVJEQnNIRXdVRkVBWURBd01CQ0FzZURCNEVGQUZhRkIwZEZCUWRIUUFBQUFBQ0FENy8rQUV6QXVnQUhBQW9BRVZMc0IxUVdFQVlBQVFBQXdBRUEya0FBZ0lrVFFBQUFBRmhBQUVCSXdGT0cwQVlBQUlFQW9VQUJBQURBQVFEYVFBQUFBRmhBQUVCSXdGT1diY2tMQ1kwSWdVSUd5czNGaGNXTWhZVkZBWXJBU0luSmpVUk5EWXpNaFlWRUJjekZ5TVdNemNVQmlNaUpqVTBOak15RnFjRUNRSXJIQndWQ3lzbE14MFVGQjBCQVFJQkF3S0xIUlFVSFIwVUZCMWVBZ0VDSFJRVEhSUWhSd0pERkIwZEZQMnhCZ0lEK2hRZEhSUVVIUjBBQUFNQU1mLzFBb1lEb3dBbkFDNEFTQUR0UUE0OEFRVUdLZ0VFQVFRQkFnTURURXV3RDFCWVFDWUhBUVlGQm9VS0FRVUJCWVVKQVFRQUF3SUVBMmdBQVFFb1RRQUNBaU5OQ0FFQUFDTUFUaHRMc0JCUVdFQXBCd0VHQlFhRkNnRUZBUVdGQUFJREFBTUNBSUFKQVFRQUF3SUVBMmdBQVFFb1RRZ0JBQUFqQUU0YlM3QVZVRmhBSmdjQkJnVUdoUW9CQlFFRmhRa0JCQUFEQWdRRGFBQUJBU2hOQUFJQ0kwMElBUUFBSXdCT0cwQXBCd0VHQlFhRkNnRUZBUVdGQUFJREFBTUNBSUFKQVFRQUF3SUVBMmdBQVFFb1RRZ0JBQUFqQUU1WldWbEFIekF2S0NnQkFFQS9PVGN2U0RCSUtDNG9MaUVnSEJzTkN3QW5BU2NMQ0JZckZ5SW5KalUwUHdFMkVqYzJNeklYRmg4QkZETVhGaGNXRlJRSEJpTWlKeVluSXdZUEFRWUhCZ0VtSndZSEJnY1RJaThCSmpVME56WXpNaGNXRnpZM05qTXlGeFlWRkE4QkJtSWJEd2NDRlM5dVRROGJKQXRaTFFZQkJqd21CaGdMRFFZTkdHamhJQjRUQmhFTEFTd2tJeHdXRHcxZkV3OW1HQWNQSEF3TFRna0NWUXNNQndjbEdXVVBDeGtMRFFZSFBwTUJJWVlZSk81bUR3RVFoMHdNRFJvUEJ3TUY4bHhjT0JNS0J3RjFXVm80TmlJakFZQVBUdzhiRFFzWkJ6a0tBVUlIQWcwakdoQk9Ed0FBQUFBRkFBMy83d0ltQXdNQUFnQTNBRG9BWFFCM0FGMUFXbXNCQmdkR1JRSUFBMXNzRHcwRUFRQURUQWdCQndZSGhRc0JCZ1FHaFFBREFBQUJBd0JwQUFRRUswMEpBUUVCQW1JRkNnSUNBaVlDVGw5ZVBEc0RBMjl1YUdaZWQxOTNXRlpMU1VSQ08xMDhYUU0zQXpjZ0h3d0lGaXMzTkNjWE5qYzJOekkxTmpjMk5UWTFMZ0VuTkNNbUp5WW5KaWNtSnlZbkppY0dJd2NHQndZSEJnY0dEd0VYRkJjVUZ4WVhGaDhCRmo4QkZRTW1KeVkxTkRjMk16SVhKelEzTmpNeUZ4WVhGaGN6RnhZVkZBWWpJaWNtSnc0QkF5SXZBU1kxTkRjMk16SVhGaGMyTnpZek1oY1dGUlFQQVFad0FYd1NFU1VlQVJRTEVRSUJBd1lCQXd3REFnOENDaE1EQWg4akFnY1lEUThURUJVSEF3RUJBUXNDRGhnRUNCTVNyZ0diZEVBbld6NVJTRVVEQndvZURROGVCZ1FiQVFrTkhCY1NFQjRNSW1JS0V3OW1HQWNQSEF3TFRna0NWUXNNQndjbEdXVVB6QU1CZ0FJR0VpVUJHUnNvRmdrU0RCVVNBUWdTQXdRT0FRZ0pBUUlNQWdFSEJRMFVGaWtlRkFJYUdoTWFBZ1FmRXdJR0NRaXlCUVQrN0FWaFJVeUdYRHd1R3c0T0ZnY1B4S2hLRWcwWEVod1FLVEl4UFFKYUQwOFBHdzBMR1FjNUNnRkNCd0lOSXhvUVRnOEFBQUFBQXYvei8rMEJOQU9qQUJ3QU5nQmdRQXNxQVFJREdCQUNBQUVDVEV1d01WQllRQmdFQVFNQ0E0VUdBUUlCQW9VQUFRRW9UUVVCQUFBc0FFNGJRQmdFQVFNQ0E0VUdBUUlCQW9VQUFRRUFZUVVCQUFBc0FFNVpRQlVlSFFFQUxpMG5KUjAySGpZTkRBQWNBUndIQ0JZckZ5SW1KeVluSmpVME56WTNOak1YRmhVVUJnOEJCaFVVRnhZWERnRURJaThCSmpVME56WXpNaGNXRnpZM05qTXlGeFlWRkE4QkJwMFVIQUVCQ0FvVkJSSU1EUXdqQWdnQ0Jna0pBUUVjSGhNUFpoZ0hEeHdNQzA0SkFsVUxEQWNISlJsbER4TWNGR3ByYzNKcGFCTUtCZ0VNSkFZTkxoSTJURDZUYTJ3VUhBTDlEMDhQR3cwTEdRYzVDZ0ZDQndJTkl4b1FUZzhBQUFBQUF2L1ovL0VCR2dNREFCMEFOd0F6UURBckFRSURBZ0VBQVFKTUJBRURBZ09GQlFFQ0FRS0ZBQUVCSzAwQUFBQW1BRTRmSGk4dUtDWWVOeDgzSnhjR0NCZ3JOeFlWRkFZSEJpTWlKaWN1QVRVME5qTXlGaDBCRkJjV0h3SVVGeFlESWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCc0lCRGhVR0JRMGZCUklJSFJRVUhRTUNCUVlDQVFGSEV3OW1HQWNQSEF3TFRna0NWUXNNQndjbEdXVVBMZ1lHRFJ3SEFROFVlZWw1RkIwZEZEUmNWam82T2c0REF3d0NEdzlQRHhzTkN4a0hPUW9CUWdjQ0RTTWFFRTRQQUFBQUJBQS8vL2tDd1FPakFBSUFXd0J4QUlzQVMwQklmd0VGQmdGTUJ3RUdCUWFGQ2dFRkJBV0ZBQUVCQkdFQUJBUWlUUWdDQWdBQUEySUpBUU1ESXdOT2MzSmVYQU1EZzRKOGVuS0xjNHRvWmx4eFhuRURXd05aTENvVUN3Z1hLd0VuTWdNM01qYzJOelkzTlRjMlB3RTJOVFEzTmpVbUp5WW5OU2NtSnlNMUp5WXZBU1luSXljbUp5WXZBUThCQmc4QkJnOEJJZ2NHRHdFR0R3SUdCd1lWRHdFVUh3RVdId0VXSHdFekZSY1dId0VXSHdFV0Z6TVdNaDhCSnlJbkppY21OVFEzTmpNeUZoY1dGUlFPQVFjR0F5SXZBU1kxTkRjMk16SVhGaGMyTnpZek1oY1dGUlFQQVFZQ0RRRUJlZ29LSnlVS0VoVUlFZ29MQ2dFQ0FRUUZDZ2dKREFFR0R4QUpJQWtCQVJRbkRnRXRGUW9TRWdJTUN3a0JBUTBVQVFNQ0NnMEhCUWtCQWdNRkNnZ0RDQW9MQVFNTURnWVBFQVlRR2dNSEVBUVZIVWM5T1NWRFdVMkVTYW80TFFGVlRrbHZFdzltR0FjUEhBd0xUZ2tDVlFzTUJ3Y2xHV1VQQWlFQi9qa0JEUklLRHhrQkNoNFZIeWdJQWdFUEdpTVBHaGtDRHhJUkFRY1JEUVlWQWdFSUNRSUJBZ0lDQXdjQkJnY0dBZ2daQVFNRUR4c1FFU0lNQVRFWkdCNG1FZ2NSRUJFQkJBNE1CUXNIQXdjRUFRRmlBU01qTjJpQ21XZFpSbDVUWGdKaXFUTXNBdkVQVHc4YkRRc1pCemtLQVVJSEFnMGpHaEJPRHdBQUFBQURBQjcvNXdJNUF3TUFGZ0JFQUY0QVRrQkxVZ0VHQnlVQkFnTUNUQWdCQndZSGhRb0JCZ0VHaFFRQkF3TUJZUUFCQVN0TkJRRUNBZ0JoQ1FFQUFDd0FUa1pGQVFCV1ZVOU5SVjVHWGtSRE5ESXhNQmdYQ3drQUZnRVdDd2dXS3dVaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjT0FRY0dKekkvQVRZM05qYzBNelkzTkRNM0ppYzFKeVluTkNNbUp5WWpKaU1pQnhVT0FTTUhCZ2NHRlJRWEZoY1dNeE1pTHdFbU5UUTNOak15RnhZWE5qYzJNeklYRmhVVUR3RUdBUm83TjBvaUhqTTdhRlZMWXl3V0doeG5PeVF0RUFzS1JDUU1FUUVWQmdFQkJBb0JEUThCS2pnbUVnd2FEQmdKQ3dJUkR3OERCdzhlTVNNUkV3OW1HQWNQSEF3TFRna0NWUXNNQndjbEdXVVBHUjh3VTBoTWFFcFJLamxvTWpJM09EZEpFQXRpQVFFVEhRa1RBUjBpQXhBd0ZRSUJIUk1CTlJZUEFnY0JCQWtTRHo0VkdCc21PaWN5QWdBUFR3OGJEUXNaQnprS0FVSUhBZzBqR2hCT0R3QUFBZ0JkLyt3Q2JnT2pBRWtBWXdDa1FBMVhBUVFGT2pnMUVnUUNBUUpNUzdBVVVGaEFIZ1lCQlFRRmhRZ0JCQUVFaFFNQkFRRWlUUUFDQWdCaUJ3RUFBQ3dBVGh0THNCbFFXRUFpQmdFRkJBV0ZDQUVFQXdTRkFBTURJazBBQVFFaVRRQUNBZ0JpQndFQUFDd0FUaHRBSlFZQkJRUUZoUWdCQkFNRWhRQUJBd0lEQVFLQUFBTURJazBBQWdJQVlnY0JBQUFzQUU1WldVQVpTMG9CQUZ0YVZGSktZMHRqUWtBa0lnd0tBRWtCU1FrSUZpc0ZJaWNtSnlZMU5DYzBOak15RmhjV0ZSUVhGQmNXRnhRWEZCOEJGaGNXRnhZeUZqTXlOd2N5TmpNM01qWTNOalUyTnpRK0FUVTJOU2NtSnk0Qk5UUTNOak15RmhjV0ZSUUhCZ01pTHdFbU5UUTNOak15RnhZWE5qYzJNeklYRmhVVUR3RUdBWElwSjRja0dBSWRGQlFiQVFJSUhnWVBCQnNDQ0JZUkVRRUZFZ1VFRkFFQ0F3RVNBUUVXQXpJTkFRSUlBUWdDQVFJSUN4NE1IZ1VQS3o2Z0V3OW1HQWNQSEF3TFRna0NWUXNNQndjbEdXVVBGQTh4cEdpallqZ1VIQndVTmxTQk9DUlpEaGdDQkFVWUFRZ0pCd01CQVFRQkFnc0JGZ01DU1hNQkJBY0pRRTB5UWg0Q0NnY1BEeFlRRkdKYXE0UzJBdjRQVHc4YkRRc1pCemtLQVVJSEFnMGpHaEJPRHdBQUFBSUFNdi9qQWlVREF3QkFBRm9CTGt1d0ZGQllRQkZPQVFVR014VVBCUVFEQWdNQkFBTURUQnRBRVU0QkJRWXpGUThGQkFNQ0F3RUJBd05NV1V1d0VGQllRQjhIQVFZRkJvVUpBUVVDQllVRUFRSUNKVTBBQXdNQVlnRUlBZ0FBTEFCT0cwdXdGRkJZUUNNSEFRWUZCb1VKQVFVRUJZVUFCQVFyVFFBQ0FpVk5BQU1EQUdJQkNBSUFBQ3dBVGh0THNDcFFXRUFuQndFR0JRYUZDUUVGQkFXRkFBUUVLMDBBQWdJbFRRQURBd0ZpQUFFQkprMElBUUFBTEFCT0cwdXdMVkJZUUNvSEFRWUZCb1VKQVFVRUJZVUFBZ1FEQkFJRGdBQUVCQ3ROQUFNREFXSUFBUUVtVFFnQkFBQXNBRTRiUUNvSEFRWUZCb1VKQVFVRUJZVUFBZ1FEQkFJRGdBQURBd0ZpQUFFQkprMElBUUFBQkdFQUJBUXJBRTVaV1ZsWlFCdENRUUVBVWxGTFNVRmFRbG8zTlNJaEV4RUtDQUJBQVVBS0NCWXJCU0ltTlRZMUJnY0dJeUluSmpVME56NEJNeklXRlFjR0ZSUVhIZ0VYRmhjZUFSY3lOelkvQVNNL0FUWTNOamMyTlRRL0FUNEJNeklXRlFjVUZoVVVCd1lESWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCZ0h2RWg4R0lUc3dOMEF2WUFzQkd4VVRIZ1VIRndRR0JRRU5DUlVqQndjVERBMEJGZ0VWRHg4TkFRSUpBUnNWRXg0QkVCTVExeE1QWmhnSER4d01DMDRKQWxVTERBY0hKUmxsRHgwY0ZESXlRaWNlSDBmRk1wTVZIQndWUVQ0L1hqb0lEQVlDRFFVS0FRTUVDUWtXQWg4Z1Zsc0JBd2tEYmhVY0hCVTRUcFpLZ3hVUEFtY1BUdzhiRFFzWkJ6a0tBVUlIQWcwakdoQk9Ed0FBQUFRQVAvLzVBc0VEVWdBQ0FGc0FjUUI5QUR0QU9BQUdBQVVFQmdWcEFBRUJCR0VBQkFRaVRRY0NBZ0FBQTJFSUFRTURJd05PWGx3REEzeDZkblJvWmx4eFhuRURXd05aTENvVUNRZ1hLd0VuTWdNM01qYzJOelkzTlRjMlB3RTJOVFEzTmpVbUp5WW5OU2NtSnlNMUp5WXZBU1luSXljbUp5WXZBUThCQmc4QkJnOEJJZ2NHRHdFR0R3SUdCd1lWRHdFVUh3RVdId0VXSHdFekZSY1dId0VXSHdFV0Z6TVdNaDhCSnlJbkppY21OVFEzTmpNeUZoY1dGUlFPQVFjR0F4UUdJeUltTlRRMk16SVdBZzBCQVhvS0NpY2xDaElWQ0JJS0N3b0JBZ0VFQlFvSUNRd0JCZzhRQ1NBSkFRRVVKdzRCTFJVS0VoSUNEQXNKQVFFTkZBRURBZ29OQndVSkFRSURCUW9JQXdnS0N3RUREQTRHRHhBR0VCb0RCeEFFRlIxSFBUa2xRMWxOaEVtcU9DMEJWVTVKUFIwVUZCMGRGQlFkQWlFQi9qa0JEUklLRHhrQkNoNFZIeWdJQWdFUEdpTVBHaGtDRHhJUkFRY1JEUVlWQWdFSUNRSUJBZ0lDQXdjQkJnY0dBZ2daQVFNRUR4c1FFU0lNQVRFWkdCNG1FZ2NSRUJFQkJBNE1CUXNIQXdjRUFRRmlBU01qTjJpQ21XZFpSbDVUWGdKaXFUTXNBeWdVSFIwVUZCMGRBQUFBQUFNQUh2L25BamtDc2dBV0FFUUFVQUJDUUQ4bEFRSURBVXdBQmdZSFlRQUhCeUpOQkFFREF3RmhBQUVCSzAwRkFRSUNBR0VJQVFBQUxBQk9BUUJQVFVsSFJFTTBNakV3R0JjTENRQVdBUllKQ0JZckJTSW5KaWNtTlRRM05qTXlGeFlYRmhVVUJ3NEJCd1luTWo4Qk5qYzJOelF6TmpjME16Y21KelVuSmljMEl5WW5KaU1tSXlJSEZRNEJJd2NHQndZVkZCY1dGeFl6RXhRR0l5SW1OVFEyTXpJV0FSbzdOMG9pSGpNN2FGVkxZeXdXR2h4bk95UXRFQXNLUkNRTUVRRVZCZ0VCQkFvQkRROEJLamdtRWd3YURCZ0pDd0lSRHc4REJ3OGVNU001SFJRVUhSMFVGQjBaSHpCVFNFeG9TbEVxT1dneU1qYzROMGtRQzJJQkFSTWRDUk1CSFNJREVEQVZBZ0VkRXdFMUZnOENCd0VFQ1JJUFBoVVlHeVk2SnpJQ054UWRIUlFVSFIwQUFBVUFhZjlaQWs0Q3N3QURBQzBBVkFCd0FId0Fpa0FOVVR3Q0FnRmlLeFVEQUFJQ1RFdXdFRkJZUUNjQUFnRUFBUUlBZ0FBSEFBWUhCbVVBQVFFRVlRQUVCQ0pOQ0FFQUFBTmlCUWtDQXdNbUEwNGJRQ3NBQWdFQUFRSUFnQUFIQUFZSEJtVUFBUUVFWVFBRUJDSk5DQUVBQUFWZ0FBVUZJMDBKQVFNREpnTk9XVUFiVmxVRkJIdDVkWE52YTExYVZYQldjRUE5T1RjRUxRVXNDZ2dXS3dFbUl4Y0RNamMyTno0Qk56WTNQZ0UxTmo4Qk5qVW5JalVtSnpRbU5TWW5OU2NtSnlJbk5DTW1KeVluRlJZVEppY21OU1luSXljbUl5SUhCZ2NWTmpjeU56b0JOVE0yTnpRK0FUTStBVFUyTlNjbUp4VUJJaVkxRVRRekZ4WVhGaFVVQnhZWEZoVVVCd1lIQmlNaUx3RUdGeFFHSXlJbU5UUTJNeklXQWM0Q0FRS2JSQWtjRlFJR0FRb0tCQW9GQXdFSUJBRUNCQUlIQ0FRTURBSUdBVFFzQkh4VHJ3UUZBaElHQVFNcVBTUXJFaE1ySzB3WEFnTUdNZ3NFQXdFQ0FnUUNDQVQrekJRZDB5S2JNaEpOT0JzTEV5VlBPVWNuSnpvUDNSMFVGQjBkRkJRZEFpZ0RBLzQ1QkFRSEFnRUJCQWNFQ1FFR0J3SVNKeElCQlFVQ0FRRUlCZ0VDQ1FVREFSTUZBUXJYQkFISEJRUUJBUXNDQVJBR0F3U2pBd0VGQVEwS0FRTUVCQU1EQ1JFZkdnRUIvY2tkRlFKSlNBRUZZU28wWWlnZVBpRWhMQ3BJR1JFQ0FSRm1GQjBkRkJRZEhRQURBRDcvV1FJOEF0Y0FNd0JXQUdJQVJVQkNSd0VFQTBzQkFRUTZBUUlBQTB3QUJBQUJBQVFCYVFBR0FBVUdCV1VBQXdNa1RRQUFBQUppQndFQ0FpTUNUamcwWVY5YldVNU1SVU0wVmpoV0xDa1FDQWdYS3pjeVB3RTJOek0yTnpReU5UWTNOVFkxTmpVMEx3RW1KelVuSmk4QkppY3VBU01tTHdFbUp5WWlKaU1uSWdjakJnY2pCaFVISWljSElpWW5KalUwTmpVMEp6UTJNeklXRnhZVkZBYzJNeklYRmhVVUJ3WUhCZ2NVQmlNaUpqVTBOak15RnFCSVNCa3hHZ0VVRHdJRkN3c0ZBUUVEQ0FnS0JRRU9FQUlEQVFzaUNCUWxBUVFGQVJvUUN3UWdEd0VQQkI4R0JoVWFBZ0laQWg0VEZSb0NBZ01rSmFWak5STWFOR3NDSFJRVUhSMFVGQjFXQ0FRTENnb0tBUUVFQ3dFUEJ3ME9EdzRHRkJNQ0R4SUZBaEVOQVFNTER3TUtCUUVCQVFJR0JubWpkUUVCSFJRc0xIWHFkeWtxRlJ3Y0ZTb3JNak1JZmtkV0x5czFIRHBxRkIwZEZCUWRIUUFBQUFBREFHYi9XUUtmQXEwQUZRQlFBRndBbFVBUVRUQUNBZ01FQVFBQ0Frd0lBUU1CUzB1d0dWQllRQjBBQlFBRUJRUmxBQU1EQVdFQUFRRWlUUUFDQWdCaEJnRUFBQ01BVGh0THNDcFFXRUFiQUFJR0FRQUZBZ0JwQUFVQUJBVUVaUUFEQXdGaEFBRUJJZ05PRzBBaEFBRUFBd0lCQTJrQUFnWUJBQVVDQUdrQUJRUUVCVmtBQlFVRVlRQUVCUVJSV1ZsQUV3RUFXMWxWVTBoR0Z4WVBEUUFWQVJVSENCWXJOeUluSmljbU5UUTNKalUwTnpZek1oY1dGd1lIQmljMk56STNOamMyTnpZM1BnRTNOamMyUHdFMk56WTFOQ2MxSnpRbk5TNEJKeTRDSnlZbklpWW5KaThCSmljdUFTTWlCd1lIQmhVSEJoVVRGQVlqSWlZMU5EWXpNaGEwRmc0akJBTW1CeHBOVlY5WHBRTUNxNU9QSndJSkNUY3NHQndaRkFFR0F5RU9FZ3NGQndRQkFRRVBBUUlOQ2dJQ0FRME9BZ2NDSFE4TkZSd0pGQmdnQ1JJU0VnTVE1QjBVRkIwZEZCUWRDd29MSkRzNjI3Y0xEUjRNSUN4ZXRhNWtVV0lDQWdJS0R3Z09EQTRCQXdNYUVoZ1ZEUlFWREJNT0RRWUVEU1VCQVFjVURnTUJBZzRNQndFUkJ3WUlCZ0VEQWdJRlZ3MFFqSWIremhRZEhSUVVIUjBBQUFBQUF3QSsvMWtDUEFMWEFETUFWZ0JpQUVWQVFrY0JCQU5MQVFFRU9nRUNBQU5NQUFRQUFRQUVBV2tBQmdBRkJnVmxBQU1ESkUwQUFBQUNZZ2NCQWdJakFrNDROR0ZmVzFsT1RFVkRORlk0Vml3cEVBZ0lGeXMzTWo4Qk5qY3pOamMwTWpVMk56VTJOVFkxTkM4QkppYzFKeVl2QVNZbkxnRWpKaThCSmljbUlpWWpKeUlISXdZSEl3WVZCeUluQnlJbUp5WTFORFkxTkNjME5qTXlGaGNXRlJRSE5qTXlGeFlWRkFjR0J3WUhGQVlqSWlZMU5EWXpNaGFnU0VnWk1Sb0JGQThDQlFzTEJRRUJBd2dJQ2dVQkRoQUNBd0VMSWdnVUpRRUVCUUVhRUFzRUlBOEJEd1FmQmdZVkdnSUNHUUllRXhVYUFnSURKQ1dsWXpVVEdqUnJBaDBVRkIwZEZCUWRWZ2dFQ3dvS0NnRUJCQXNCRHdjTkRnOE9CaFFUQWc4U0JRSVJEUUVEQ3c4RENnVUJBUUVDQmdaNW8zVUJBUjBVTEN4MTZuY3BLaFVjSEJVcUt6SXpDSDVIVmk4ck5SdzZhaFFkSFJRVUhSMEFBQUFBQWdCby8xa0NpQUxCQUMwQU9RRE1RQXNZQVFJQkNnWUNCUUlDVEV1d0VsQllRQjBBQWdBRkFBSUZad0FIQUFZSEJtVURBUUVCSWswRUNBSUFBQ01BVGh0THNCUlFXRUFoQUFJQUJRQUNCV2NBQndBR0J3WmxBQU1ES0UwQUFRRWlUUVFJQWdBQUl3Qk9HMHV3SmxCWVFDVUFBZ0FGQkFJRlp3QUhBQVlIQm1VQUF3TW9UUUFCQVNKTkFBUUVJMDBJQVFBQUl3Qk9HMEFsQUFJQUJRUUNCV2NBQndBR0J3WmxBQUVCSWswQUJBUURZUUFEQXloTkNBRUFBQ01BVGxsWldVQVhBUUE0TmpJd0tpa2xJeHdiRmhVUURnQXRBUzBKQ0JZckZ5NEJQUUUyTlNZMU5EYzJOejRCTXg0QkhRRUdCd1VtSnpVME5qTVdGeFlWRUFjR0l5SW1OVFkzSlJBSEJoY1VCaU1pSmpVME5qTXlGcGNVR3d3RkJRRUVBUjBVRlJvREFRRlFBUWtmRkJVTUdCb05FeFljQndQK3J4c08vUjBVRkIwZEZCUWRDQUVjRXdPb3FRa0xFQWx1YmhVYUFSd1RBMkJnQ201dEFoTWFBZzRkKy82T0ZnMGVGWStQQ3Y2L0dRMXVGQjBkRkJRZEhRQUFBQUlBVFA5WkFoMEMrZ0JIQUZNQXprdXdKbEJZUUFzTEFRUUNRaDBDQUFRQ1RCdEFDd3NCQkFKQ0hRSURCQUpNV1V1d0NsQllRQjRBQmdBRkJnVmxBQVFFQW1FQUFnSXJUUUFCQVFCaEF3Y0NBQUFqQUU0YlM3QWtVRmhBSGdBR0FBVUdCV1VBQkFRQ1lRQUNBaXROQUFFQkFHRURCd0lBQUNZQVRodExzQ1pRV0VBY0FBSUFCQUFDQkdrQUJnQUZCZ1ZsQUFFQkFHRURCd0lBQUNZQVRodEFJQUFDQUFRREFnUnBBQVlBQlFZRlpRQURBeU5OQUFFQkFHRUhBUUFBSmdCT1dWbFpRQlVCQUZKUVRFbzFNaG9ZRGd3SUJnQkhBVWNJQ0JZckZ5SW1OUkUwTmpNeUZoMEJOak15RnhZWEZoVVVCaFVPQVNNaUppYzNOalUwTHdJbUp6VW5KaWNtTHdFbUp5WW5JaVlqQnlNR0R3RUdEd0VHQnlJZEFRWUhGQWNERkFZWEZBWWpJaVkxTkRZek1oWjlGQjBkRkJRZE56c2hJNFVsRHdVQkhCUVVIQUVEQXdNQkFnZ0lCd3dHQkJvRUNoSUtFQUVHQ0FnTUVna1hDQXNGQndVQkNRSUJBUjNWSFJRVUhSMFVGQjBOSEJRQ3BoUWRIUlMrSkFzMWpEMUtMVm9yRlJ3Y0ZWWW5Ka0lPQkE0bkVnRU9GZ1lKRmdJSUNBVURBZ0VFQkEwR0RRWU1Dd0VCRlJNQ0FmN0lGQnhwRkIwZEZCUWRIUUFBQUFJQVkvOVpBaXdDc0FBeEFEMEFjMHV3RUZCWXR4b1dGQU1DQVFGTUc3Y2FGaFFEQXdFQlRGbExzQkJRV0VBWkFBVUFCQVVFWlFBQkFTSk5Bd0VDQWdCaEJnRUFBQ01BVGh0QUlBQURBUUlCQXdLQUFBVUFCQVVFWlFBQkFTSk5BQUlDQUdFR0FRQUFJd0JPV1VBVEFRQThPalkwS2lra0loQU9BREVCTVFjSUZpc0ZJaWNtSnlZMU5EYzJOelkzTkRZek1oWVZCZ2NHQndZVkZoY1VGeDRCTXhZWEZqTXlOejRCUHdFeUZ4WVZGQVlIQmdjVUJpTWlKalUwTmpNeUZnRk5TVVJFRGdzQkNBY0dBaHdVRkIwQkNnWUVBZ0lDQ2dFTUFnVU1HRXd0TVE0Y0R3c09EaGNRRkdvbEhSUVVIUjBVRkIwREh5aE1PVGNURXFSR09EZ1VIUjBVVDA5cU9DY29KQkVNR3djVEJRVVFCZ01EQXdFSUN4NE1IZ1FVY3hRZEhSUVVIUjBBQWdBKy8xa0EvUUxvQUJ3QUtBQkRTN0FkVUZoQUZ3QUVBQU1FQTJVQUFnSWtUUUFBQUFGaEFBRUJJd0ZPRzBBWEFBSUFBb1VBQkFBREJBTmxBQUFBQVdFQUFRRWpBVTVadHlRc0pqUWlCUWdiS3pjV0Z4WXlGaFVVQmlzQklpY21OUkUwTmpNeUZoVVFGek1YSXhZekZ4UUdJeUltTlRRMk16SVdwd1FKQWlzY0hCVUxLeVV6SFJRVUhRRUJBZ0VEQWljZEZCUWRIUlFVSFY0Q0FRSWRGQk1kRkNGSEFrTVVIUjBVL2JFR0FnUFRGQjBkRkJRZEhRQUFBQUFDQUdQL1dRTWNBcjRBVGdCYUFQcExzQnRRV0VBTk55TVBCQVFCQTBVQkFBRUNUQnRMc0I5UVdFQU5OeU1QQkFRQkEwVUJBZ0VDVEJ0QURUY2pEd1FFQVFSRkFRSUJBa3haV1V1d0cxQllRQjBBQVFNQUF3RUFnQUFHQUFVR0JXVUVBUU1ES0UwQ0J3SUFBQ01BVGh0THNCOVFXRUFoQUFFREFnTUJBb0FBQmdBRkJnVmxCQUVEQXloTkFBSUNJMDBIQVFBQUl3Qk9HMHV3TFZCWVFDVUFBUVFDQkFFQ2dBQUdBQVVHQldVQUF3TW9UUUFFQkNKTkFBSUNJMDBIQVFBQUl3Qk9HMEFuQUFFRUFnUUJBb0FBQWdBRUFnQitBQVlBQlFZRlpRQURBeWhOQUFRRUlrMEhBUUFBSXdCT1dWbFpRQlVCQUZsWFUxRThPalF6S3lrVkZBQk9BVTRJQ0JZckJTSW5KaWMwTHdFbU5DY21Md0VtSndZSEJnY0dJeUluTGdFdkFTWW5KaWNqSnlZbk5TTUdCdzRCSXlJbUp6WVROamMyTXpJWEZoYzJOell6TWhjV0Z4WVZGaGNXRlRJVkZoY1dGUlFIQmdVVUJpTWlKalUwTmpNeUZnTHJKQXNVRFFzQkFRRUtGd1FDQXpVcEVSTU1Id1lHR3d3TUF4VXhCUVFCQVJvZEFTTURBUndVRkJ3QkFqSURJUVlIRXcrRlN6Rk1EaDBURDFBWER3UUlBZ0VIQ2dJSURQN29IUlFVSFIwVUZCMEhKRXloRVdZTkFnVUNTenNKQlFSZFpDa3BHQUlITlIwR01rTUdCd0loSGdINi9CVWNIQlh6QVdnakRBRU9jSXg4YmhnUFU1eG1KRVJEREFzQk15VUhCd3dPRm04VUhSMFVGQjBkQUFBREFFUC9XUU02QWlzQVpRQm9BSFFBeTBBTVZsSUNBUVZER2dJQUFRSk1TN0FLVUZoQUhRQUpBQWdKQ0dVREFRRUJCV0VIQmdJRkJTVk5CQUlLQXdBQUpnQk9HMHV3REZCWVFDY0FDUUFJQ1FobEF3RUJBUVZoQmdFRkJTVk5Bd0VCQVFkaEFBY0hLMDBFQWdvREFBQW1BRTRiUzdBT1VGaEFIUUFKQUFnSkNHVURBUUVCQldFSEJnSUZCU1ZOQkFJS0F3QUFKZ0JPRzBBaEFBa0FDQWtJWlFBRkJTVk5Bd0VCQVFaaEJ3RUdCaXROQkFJS0F3QUFKZ0JPV1ZsWlFCc0JBSE54Yld0WlYxVlRVVTlLU0RnM0ppUVFEd0JsQVdVTENCWXJCU0ltTlRRM05qVTBKeVl2QVNNbUp5SUdJd1lWSWdjR0l3WUhCZ2NXRlJRSEJoVU9BU01pSmljK0FUVTBKeVl2QVNJbUl5WXZBU1lqQndZSElnY0dCd1lqQmdjR0J4RVVCaU1pSmpVUk5EWXpNaGMyTXpJWE5qTXlGeFlYRmhVVUJ3WUhCZ2NHTnpRM0JSUUdJeUltTlRRMk16SVdBdWdTSGhrSUR3b0VGUUVYUVNRSkFSVUZFQUVDQ3drQkF6RUNBZ0VjRkJRY0FRRUVDZ29qQmdFQ0FSUU9FdzBORFJNWkFnRWhBZ0VDQ2dnQ0FSMFVGQndjRkI4UE9qNU1QRHhjU0Q4NklDQVhDUUVCRFE4ZEFmN3FIUlFVSFIwVUZCMFJHaElZaVMwNkxpa1VCQlFYRFFJR0FRc0NDZ3NDQWxTYkh4OG1KaFVjSEJVblNTTk5JVGN2Q1FRYkNBb0dBUVFTQWhzSUJBNFBBUUwrdHhRZEhSUUJ5QlFkSHpBL1FDRWZPRUZJVm5jN0FoUVBEaTBGQVpnVUhSMFVGQjBkQUFBQUF3QmovMWtDU1FLMEFCa0FVQUJjQUhwQUN4Z0xBZ0FCU1FFREFBSk1TN0FLVUZoQUlnZ0JBQUFEQWdBRGFRQUhBQVlIQm1VQUFRRUZZUUFGQlNKTkJBa0NBZ0lqQWs0YlFDSUlBUUFBQXdJQUEya0FCd0FHQndabEFBRUJCV0VBQlFVaVRRUUpBZ0lDSmdKT1dVQWJHeG9CQUZ0WlZWTkFQRFV6TGkwYVVCdFFGeFVBR1FFWkNnZ1dLeE0yTnpZM1BnRS9BVFk5QVNZbkxnRW5JeVl2QXc4QkZ3RWlKeVluTlRRakppY21Md0VtTHdFbUp5SW1JaWNHRlE0Qkl5SW1OVFFTTnpRMk1qOEJNaGNXRnhZVkZBY0dCeFlYRmhVVUJ3WUhGQVlqSWlZMU5EWXpNaGIvSnlZdEt4QWVCd1lFQWdvR0ZSVUJIeXNIS0RZcUF3c0JReVFMQlFjQkZ5TVFLaEFpSVFZYUV3SUhDZ2NEQVJ3VUZCMElBUnN0RnlKYlA0OG1DUThsZW40eUFnZ01yaDBVRkIwZEZCUWRBWU1CQkFjUEJ4UUxDZ3NJRFJjUUNSTUpEUVlCQXdFQnpBSCtieVFXRFFFQk5TMFhKdzRaRGdJS0F3SUJmNEFVSEJ3VW1BRXVseE1lQVFFTUYzRWNHeVFpVXh4a253Y0dEQThXYVJRZEhSUVVIUjBBQUFBQUFnQXcvMWtCV2dJbkFDMEFPUUF3UUMwbEZRUURBZ0FCVEFBRUFBTUVBMlVCQVFBQUswMEZBUUlDSXdKT0FBQTROakl3QUMwQUxSb1lFaEFHQ0JZckZ5SW5KalUwTnpZMU56WTFOQ1kxTkRZek1oWWRBVFkzTmpNeUZ4WVZGQThCQmc4QkJnOEJGaFVVQndZSEJoY1VCaU1pSmpVME5qTXlGbUVHQnlRQ0N3SUdCUndVRkIwNFF3Y0hEQThWSkE0Ykt3WWNGd1FDRndVU0RJa2RGQlFkSFJRVUhRc0NDaVFIQnprSEVTdExRSDQrRlJ3Y0ZSWXJHUUlKRGh3ZkR3VU1IUVVYSFFRb01IWnpGQW9HYXhRZEhSUVVIUjBBQUFBQUFnQTMvMWtDTUFMQkFFb0FWZ0JNUUVsSEFRSUJBVXdBQkFVQkJRUUJnQUFCQWdVQkFuNEFCd0FHQndabEFBVUZBMkVBQXdNb1RRQUNBZ0JoQ0FFQUFDTUFUZ0VBVlZOUFRURXZLU2NqSVJBT0NnZ0FTZ0ZLQ1FnV0t3VW5MZ0VuSmpVME5qY3lGeFlYRmpNeU5qTTJOelkxSmpVbUp5WTFORGMyTnpZek1oY1dGUlFqSWlZMU56UW5KaU1pQndZSEJnY09Bd2NVRmhVZUFSVVdGeFlYRmhVR0J3WUhGQVlqSWlZMU5EWXpNaFlCV2hSUGZ6TU9IQlFVRDBwTktBZ09CUVE4S1FJQkhJbldMREpGTWpSblBUQXlFeDRCRVRnZk9pb2pDd1FSQWdVQ0FnRURDd0kyWGlRa2tRby9SandkRkJRZEhSUVVIUXNCREdNN0VCVVNIQUVPVnlzT0FSUTRDQWNDQkRnNFdudzdMeklWRWo4NVIwc2JFeUlmRmlNVER3c0RFUVFIQmdVSENRY0NFUU1CTlNZUUUwaHJTeTA4YXhRZEhSUVVIUjBBQUFBQUJBQXYvMWtCd3dJbUFBSUFCUUJsQUhFQVVFQk5Vd0VFQlNVQkFnRUNUQUFFQlFFRkJBR0FBQUVDQlFFQ2ZnQUhBQVlIQm1VQUJRVURZUUFEQXl0TkFBSUNBR0VJQVFBQUxBQk9Cd1p3Ym1wb1MwcERRVGszSEJvUkR3WmxCMlVKQ0JZckV6TTFCeUkxRXlJbkppY21OVFEzTmpNeUZ6SVZGaGNWRmhjV016WTNNejRCTlRZM05qY25KaThCSWljbUp5WW5KaWNtTlRRM1BnRXpNaGNXRnhZVkZBY0dJeUluTkNNbUp5TW1Kd1lqQmdjR0J3WVZGeWNYRmhjZUFSY2VBUmNXRnhZVkZBY0dCeFFHSXlJbU5UUTJNeklXcXdFRkFWTkpPRElWQWdrT0dpSU5BUVFIRmhNWUlCOFZBZ3NZQXdJRkFnTUdDaGNDQkE0MklpRTVJaEFKRm1VOU15czZGd0lJRGhzaURRSUlGZ0VUS0FJREdCc0xEUU1HQVFVSkNRSUdBeDQ3SFRjb0pTNDZNUjBVRkIwZEZCUWRBWndCTWdIK2VpY2tPUWNIREE0V0pBRUtDQUVXQ0FzQkNRVVRBd1FGQlJnYURRb05BZ1lQQ0F3U01COGhHQmsyUWhvb1F3Y0hEQTRXSkFRVUZnNENBUU1UQ0JVTkVnb0RCUVlFQWdJQkN3NEpFQ2d0T1VVeE8xd1VIUjBVRkIwZEFBQUFBZ0F1LzFrQ1RnTEdBRElBUGdEb1M3QWZVRmhBQ2lBQkFRSWtBUVFCQWt3YlFBb2dBUUVDSkFFRUJRSk1XVXV3RjFCWVFCOEFCd0FHQndabEFBRUJBbUVEQVFJQ0lrMEZBUVFFQUY4SUFRQUFJd0JPRzB1d0gxQllRQ01BQndBR0J3WmxBQUlDSWswQUFRRURYd0FEQXlKTkJRRUVCQUJmQ0FFQUFDTUFUaHRMc0RGUVdFQXBBQVFGQUFVRWNnQUhBQVlIQm1VQUFnSWlUUUFCQVFOZkFBTURJazBBQlFVQVh3Z0JBQUFqQUU0YlFDY0FCQVVBQlFSeUFBTUFBUVVEQVdjQUJ3QUdCd1psQUFJQ0lrMEFCUVVBWHdnQkFBQWpBRTVaV1ZsQUZ3SUFQVHMzTlNzb0p5VWRHaGtYRXcwQU1nSXZDUWdXS3dVaUppY21OVFEzTmo4Qk5qY21JeUlIQmdjdUFUVTBOamMyTnpZek1oY1dGUlFIQmdFV016STNOamN5RmhVVUJnY2lCaGNVQmlNaUpqVTBOak15RmdFUERXQlJJdzZsUmhGY05ob3RKU1NOVFJRY0hCUlFUMVlpc0JNR0Frcit5U295S2xORFJCVWNIQlZDaHhzZEZCUWRIUlFVSFEwQkZnMGlFaEd3WGhWNGF3SUNDZ0VCSEJRVUhBRUJCZ1lqREF3SEI5SCtyQVVHQkFFZEZCUWNBUWxwRkIwZEZCUWRIUUFDQUFyL1dRSFhBaDBBTXdBL0FJVkxzQkpRV0VBS0NnRUVBUVVCQUFRQ1RCdEFDZ29CQWdFRkFRQUVBa3haUzdBU1VGaEFIZ0FHQUFVR0JXVUNBUUVCQTE4QUF3TWxUUUFFQkFCZkJ3RUFBQ01BVGh0QUpRQUNBUVFCQWdTQUFBWUFCUVlGWlFBQkFRTmZBQU1ESlUwQUJBUUFYd2NCQUFBakFFNVpRQlVEQUQ0OE9EWXNKeUlkRmhVTkRBQXpBekFJQ0JZckZ5SW5KaThCTkRjK0FUOEJKeUlQQVNJVkJnY0dJeUluSmpVME5qYzJNeklXTXhZWEZoVVVBVE0zTmpNZUFSVVVCZ2NpRHdFVUJpTWlKalUwTmpNeUZ2QmJXeU1NQVExaHV3b0VTVkFjREFRVEVnWUhEUTRXRUJSYlhDeFhLeHNQQi83S04yMHlNeFFkSFJRek1pQWRGQlFkSFJRVUhSQUdBaUlORXc5ejZ3OEVBUVVCQVFJRUFRY05HdzBlQlJFREFSY05EeHIraGdFQkFSd1VGQndCQVdjVUhSMFVGQjBkQUFBQUFBSUFZdi81QXBFRG53QXhBRjRBTmtBekxDUVNBd0FCQVV3QUJBVUVoUUFGQVFXRkFnRUJBU2hOQXdZQ0FBQWpBRTRCQUZSU1FENHBKeDhkREFvQU1RRXhCd2dXS3hjaUppYzJOelkzTkRjMk16SVdGeFlYRmhjVU14VTJQd0UyUFFFK0FUTXlGaDBCRkFjR0J3WWpJaWNtSndjR0J3NEJFeWNtSnlZbkpqVTBOelkzTmpNeUZ4WWZBaFlYRmhjV0Z4WVZGQWNHQndZaklpY21KeVluTkNjbUp5T1RGQndCQXhJTkJ4Z01EQ0ljRURObE5ERUJDd2dERWdFY0ZCUWRDd292RENNblUzSlRCaE1DQVJ5ZEFnd05FQVlDQndvVUJ3WU1DeDhlQkJBQ0JBME1FUVlDQndvVUJ3Y01DeDRlQWdNQkNBY0JCeDBVc0srQ2d4c1BCa0lnZkxSZFB3RUJNek1ia2RVWkZCd2NGQ2FOakoyVkkzZWx1VWF2c0JRZEF6VUNDZ29LRXdjR0RRc1JCZ0lIRnhjRURBSURDZ2tMRWdjR0RRd1FCd0lIRnhnQkFnRUJCUVlBQUFBQUFnQk0vL3NDSlFNQ0FEWUFZd0NBUzdBdFVGaEFDaWdCQVFNYkFRQUJBa3diUUFvb0FRRURHd0VDQVFKTVdVdXdMVkJZUUIwQUJRWUZoUUFHQXdhRkFBRUJBMkVFQVFNREswMENCd0lBQUNNQVRodEFJUUFGQmdXRkFBWURCb1VBQVFFRFlRUUJBd01yVFFBQ0FpTk5Cd0VBQUNNQVRsbEFGUUVBV1ZkRlF5c3BKeVVnSGhRU0FEWUJOZ2dJRmlzRklpWTFORFkzSmljbU5TWXZBU1luSmlNbUl3WUhCZ2NHQndZSEVSUUdJeUltTlJFME5qTXlGell6TWhjV0Z4WVZGQWNHQnhRR0FTY21KeVluSmpVME56WTNOak15RnhZZkFoWVhGaGNXRnhZVkZBY0dCd1lqSWljbUp5WW5OQ2NtSnlNQjZSTWRDZ0VERVFFS0JBRWZMaG9JQkNVUEdoQUNEZ3NDQlJ3VUZCMGRGQnNQTWtFd0wwQXRQd1VGQVIzKzJRTU1EUkFHQWdjS0ZBY0dEQXNmSGdRUUF3TU5EQkVHQWdjS0ZBY0hEQXNlSGdJREFRZ0hBUVVjRkNsZ04xY3JBUUlTQlFJbURnZ0NBUW9KQWdrVkN3aitzUlFkSFJRQnhCUWRHaDBTRnpNL3JUQWxOU3dVSEFLV0Fnb0tDaE1IQmcwTEVRWUNCeGNYQkF3Q0F3b0pDeElIQmcwTUVBY0NCeGNZQVFJQkFRVUdBQUFBQWdBTi8vTUNWQU9mQUVZQVh3QmN0MEFsQ0FNQUFRRk1TN0FLVUZoQUdBQUVBd1NGQmdFREFRT0ZBZ0VCQVNoTkJRRUFBQ01BVGh0QUdBQUVBd1NGQmdFREFRT0ZBZ0VCQVNoTkJRRUFBQ1lBVGxsQUZVaEhBUUJXVkVkZlNGODNOUmNWQUVZQlJnY0lGaXNGSWlZbk5DY21OVGNtSnlZbkppOEJKaWNtTlRRMk16SWZBUllYRmhjV014WWZBUll5Rno0Q056WTNQZ0UwTmpjMk56WTNOak15RnhZVkZBY0dCd1lQQVJRV0ZRNEJBeUl2QVNZbklpOEJKalUwTnpZek1oY2VBUmNXRlJRSEJnRTFGQndCQWdJQktoOHFPQ01PQVFRRkRoMFRGQThFSkNJNERnTUJEeE1DREFZQ0NBRURCU1FwQkFJREFpRWREQm9NSGcwTUdCRTFSamt0QVFVQkhCVU1DMElJQndJQkhCZ0hEeHdNQzBrYkRCa0hEdzBkRkQwOE5UUk9FaVV3WVQ0UkFRWUZEeE1VSFE0RktqOWZEZ1VVRUFFSkFRRUJBZ01mTmdRQ0FnTUNMQzRNTmhjR0Rod1JIRjVUU2hrL1BuczhGQjBDOHdjMEJRWUNGZzhiRFFzWkJ6WVhDUkFhRFF3WkFBQUFBQUlBSnY4bEFmY0RBZ0ErQUdzQTNyY3NKd3NEQXdBQlRFdXdDbEJZUUJ3QUJRWUZoUUFHQUFhRkFRRUFBQ1ZOQkFFREF3SmlBQUlDSndKT0cwdXdERkJZUUNBQUJRWUZoUUFHQVFhRkFBRUJKVTBBQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0E1UVdFQWNBQVVHQllVQUJnQUdoUUVCQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0J0UVdFQWdBQVVHQllVQUJnRUdoUUFCQVNWTkFBQUFKVTBFQVFNREFtSUFBZ0luQWs0YlFDTUFCUVlGaFFBR0FRYUZBQUFCQXdFQUE0QUFBUUVsVFFRQkF3TUNZZ0FDQWljQ1RsbFpXVmxBRVdGZlRVczlQRHM2TnpVd0xoZ1dCd2dXS3hjM0l6WTNOamN5TkRjMk55WW5KaWNtSnlZMU5EYzJNeklYRmhjV0Z4WWZBUjRCRnhZWEZoYzJQd0UyTno0Qk16SVdGUUlIQmlNaU5UUTJNeFl6TmdNbkppY21KeVkxTkRjMk56WXpNaGNXSHdJV0Z4WVhGaGNXRlJRSEJnY0dJeUluSmljbUp6UW5KaWNqdVFNQ0RoUWhGd0VCQ1E1Vk95WXVGQWdIR0F3Tkhnd1ZFamsyQXdVQkNBOEdCQUlIQ3hzVEFnd0VBaG9WRXg0U3UxRnFSeHdWRFJzWkNnTU1EUkFHQWdjS0ZBY0dEQXNmSGdRUUF3TU5EQkVHQWdjS0ZBY0hEQXNlSGdJREFRZ0hBVzBCQkE0WEhnSUJDUm9vZUUyRk94SU5EUnNQQmhneU5LdE9CZ1FEQ1E0R0FnSUZCVU9CRDE1ZkZSd2NGZjRjb1VFeUV4NEJBd01IQWdvS0NoTUhCZzBMRVFZQ0J4Y1hCQXdDQXdvSkN4SUhCZzBNRUFjQ0J4Y1lBUUlCQVFVR0FBQUFBQUlBTi84SUFqQUN3UUJLQUdjQVhVQmFSd0VDQVdRQkJnY0NUQUFFQlFFRkJBR0FBQUVDQlFFQ2Znb0JCZ2NHaGdBSUFBY0dDQWRwQUFVRkEyRUFBd01vVFFBQ0FnQmhDUUVBQUNNQVRreExBUUJnWDF0YVMyZE1aekV2S1NjaklSQU9DZ2dBU2dGS0N3Z1dLd1VuTGdFbkpqVTBOamN5RnhZWEZqTXlOak0yTnpZMUpqVW1KeVkxTkRjMk56WXpNaGNXRlJRaklpWTFOelFuSmlNaUJ3WUhCZ2NPQXdjVUZoVWVBUlVXRnhZWEZoVUdCd1lISWljbU5UUS9BVEkyTlRZMU5DY2lMZ0UxTkRZekZoY1dGUVlIQmdGYUZFOS9NdzRjRkJRUFNrMG9DQTRGQkR3cEFnRWNpZFlzTWtVeU5HYzlNRElUSGdFUk9CODZLaU1MQkJFQ0JRSUNBUU1MQWpaZUpDU1JDajlHakJvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTkN3RU1ZenNRRlJJY0FRNVhLdzRCRkRnSUJ3SUVPRGhhZkRzdk1oVVNQemxIU3hzVEloOFdJeE1QQ3dNUkJBY0dCUWNKQndJUkF3RTFKaEFUU0d0TExUenRHQXNOSEE0SkVnY0pCUWdCQVJrV0VoOEZLQmtvVmlvR0FBTUFMLzhJQWNNQ0pnQUNBQVVBZ1FCTFFFaFRBUU1FSlFFQkFHWUJCZ0ZxQVFVR0JFd0FBd1FBQkFNQWdBQUFBUVFBQVg0QUJRWUZoZ0FCQUFZRkFRWnBBQVFFQW1FQUFnSXJCRTUrZlc5dFMwcERRVGszS1M4SENCZ3JFek0xQnlJMUV5WW5KaWNtTlRRM05qTXlGeklWRmhjVkZoY1dNelkzTXo0Qk5UWTNOamNuSmk4QklpY21KeVluSmljbU5UUTNQZ0V6TWhjV0Z4WVZGQWNHSXlJbk5DTW1KeU1tSndZakJnY0dCd1lWRnljWEZoY2VBUmNlQVJjV0Z4WVZGQWNHQnhZWEZoVUdCd1lqSWljbU5UUS9BVEkyTlRZMU5DY2lMZ0UxTktzQkJRRWJKeUl5RlFJSkRob2lEUUVFQnhZVEdDQWZGUUlMR0FNQ0JRSURCZ29YQWdRT05pSWhPU0lRQ1JabFBUTXJPaGNDQ0E0YklnMENDQllCRXlnQ0F4Z2JDdzBEQmdFRkNRa0NCZ01lT3gwM0tDVXVMMG9QREJFSlNnME5HZzhIR0E0Q0VRUUhBUkFjQVp3Qk1nSCtnQW9YSkRrSEJ3d09GaVFCQ2dnQkZnZ0xBUWtGRXdNRUJRVVlHZzBLRFFJR0R3Z01FakFmSVJnWk5rSWFLRU1IQnd3T0ZpUUVGQllPQWdFREV3Z1ZEUklLQXdVR0JBSUNBUXNPQ1JBb0xUbEZNVEFKQ2c4WktGWXFCaGdMRFJ3T0NSSUhDUVVJQVFFWkZoSUFBQUlBSnY4SUFtb0N0QUFXQURNQVFrQS9NQUVFQlFGTUNBRUVCUVNHQUFZQUJRUUdCV2tEQVFFQkFsOEFBZ0lpVFFjQkFBQWpBRTRZRndFQUxDc25KaGN6R0RNVEVRMEtCZ1FBRmdFV0NRZ1dLd1VpSmpVUkl5SW1OVFEyTXlFeUZoVVVCaXNCRVJRR0J5SW5KalUwUHdFeU5qVTJOVFFuSWk0Qk5UUTJNeFlYRmhVR0J3WUJTQlFkd1JNZEhSTUI0eFFkSFJUQkhETWFEd2NZRGdJUkJBY0JFQndiRmpJZ0VRbEtEUVljRkFJcEhCUVVIUjBVRkJ6OTF4UWM4aGdMRFJ3T0NSSUhDUVVJQVFFWkZoSWZCU2daS0ZZcUJnQUFBQUwvLy84SUFUa0NsZ0E3QUZnQVhrQmJHd0VDQXdnQkJnRlZBUWdKQTB3QUF3SURoUXdCQ0FrSWhnQUtBQWtJQ2dscUJRRUJBUUpoQkFFQ0FpVk5Cd0VHQmdCaEN3RUFBQ3dBVGowOEFRQlJVRXhMUEZnOVdEYzFNakVsSXg4ZEdSY1JEd3NKQURzQk93MElGaXNYSWk0Qkp5WTFORDhCSXlJbU5UUTJPd0UxTkNjMU5EWXpNaFlYRmhVek1oWVZGQVlyQVFZSEZCOERIZ0VWRnhZek1qNEJNeklYRmhVVUJ5SW5KalUwUHdFeU5qVTJOVFFuSWk0Qk5UUTJNeFlYRmhVR0J3YnNFamcwQ2hNRkFpZ1VIUjBVS3dJZUV4VWFBUU5KRXgwZEUwd0dBUVVEREFrREF3SUtDUVFJQ2dZTkR4YThHZzhIR0E0Q0VRUUhBUkFjR3hZeUlCRUpTZzBWREVFblJIYzhQQ0VkRkJRZEZCNGZBaE1iSEJRcEtCMFVGQjFhV3k0dUR5c1JBZ01CQVFRQkFnY01IVFRqR0FzTkhBNEpFZ2NKQlFnQkFSa1dFaDhGS0Jrb1Zpb0dBQUFBQUFJQVgvLzBBallEdmdBd0FHc0F3RXV3RkZCWVFBdG9Pd0lKQ0VjQkJ3a0NUQnRBQzJnN0Fna0tSd0VIQ1FKTVdVdXdGRkJZUURVS0FRZ0pDSVVBQ1FjSmhRQUhCZ2VGRFFzQ0JnRUdoUUFEQUFRRkF3Um5BQUlDQVY4QUFRRWlUUUFGQlFCZkRBRUFBQ01BVGh0QU9RQUlDZ2lGQUFvSkNvVUFDUWNKaFFBSEJnZUZEUXNDQmdFR2hRQURBQVFGQXdSbkFBSUNBVjhBQVFFaVRRQUZCUUJmREFFQUFDTUFUbGxBSXpFeEFRQXhhekZyWm1WWFZrNU1SRUkwTXlra0lSOGJHUmNWRVE0QU1BRXREZ2dXS3hjaUppY21Md0UwTnpZM05EWTNOak1oTWhZVkZBWWpJUVlITXpJV0ZSUUdLd0VHSFFFMk56WXpNaFlWRkFZakRnRVRJaWNpSnlZbk5DY21KeUlIQmhVR0J3WWpJaWNtTlRRM05qYzJNeklYRmg4QkhnRVhGak0wTXo0RE56NEJOejRCTnpZekZoVUdCd2FpRVJvRkVRRUJDQWdDRkJBUEZ3RklGQndjRlA3UEFnYTNGQjBkRkwwRVJVUlVWQlVjSEJWVXA3d0ZERW9jQ0FnV0R4b0ZCQWtMQ0FzakhRNEhBZzRmSnpNMk5TY01DQUlGQVFvTEJBSUZBUUlCQ2dFQkJnY1NEUTB2QlM4aERCUVFEeGhnYzNKNWVoRWFCQk1kRkJRZFlXSWRGQlFjVTFNM0FRTUVIUlFVSEFFSEF1OENReGNFQWd3SUF3UUlBaFVXSkJrTERRWUhNU2NvSXhza0VRRUJBUUlDQXdRQ0FRSVNCQUlSSmdrR0JTMUROQ0lBQUFBREFCSC83Z0lmQXlFQU13QmlBSjBCTWt1d0ZGQllRQXVhYlFJTENua0JDUXNDVEJ0QUM1cHRBZ3NNZVFFSkN3Sk1XVXV3RkZCWVFFUU1BUW9MQ29VQUNRc0lDd2tJZ0JBTkFnZ0JDd2dCZmdBRkFnTUNCUU9BRHdFR0FBSUZCZ0pvQUFzTElrMEFCd2NCWVFBQkFTVk5CQUVEQXdCaERnRUFBQ3dBVGh0THNCOVFXRUJJQUFvTUNvVUFEQXNNaFFBSkN3Z0xDUWlBRUEwQ0NBRUxDQUYrQUFVQ0F3SUZBNEFQQVFZQUFnVUdBbWdBQ3dzaVRRQUhCd0ZoQUFFQkpVMEVBUU1EQUdFT0FRQUFMQUJPRzBCREFBb01Db1VBREFzTWhRQUxDUXVGQUFrSUNZVVFEUUlJQVFpRkFBVUNBd0lGQTRBUEFRWUFBZ1VHQW1nQUJ3Y0JZUUFCQVNWTkJBRURBd0JoRGdFQUFDd0FUbGxaUUN0all6VTBBUUJqbldPZG1KZUppSUIrZG5SbVpVOU5OR0kxWVMwcktTWWxKQklQQ1FjQU13RXpFUWdXS3dVaUp5WTFOamMyTXpJWEZoY1dGUlFoSWljZkF4VVdId0l5SGdFWEZoY3lId0V5TnpJMU1qYzJNeklYRmhVVUJ3WURNamMyTXpRek5qY3pOQ2MwSnpVbUp6VW1Md0VtTHdFbUx3RWlEd0VHQnlJSEl3WVBBUVlIRlJRakRnRUhGaE1pSnlJbkppYzBKeVluSWdjR0ZRWUhCaU1pSnlZMU5EYzJOell6TWhjV0h3RWVBUmNXTXpRelBnTTNQZ0UzUGdFM05qTVdGUVlIQmdFL2dWMVFCbWRSVzJCQ1FBOEUvdmRNU2dJSERBa1JGUVVqQVFRRUFRNFNCUUllRXhNRklFZ0hDQXNPRmlSWmpUdzhCQVVDSHhjQkNnSUpCd2dLQWcwTkJSRVJJQllLSHgwZUF3TUJCd1lNREFZQkJBUUNVOGdGREVvY0NBZ1dEeG9GQkFrTENBc2pIUTRIQWc0Zkp6TTJOU2NNQ0FJRkFRb0xCQUlGQVFJQkNnRUJCZ2NTRFEwdkJTOGhFbUZhZUlCS05EUTJXUTBOY2dRSERoVU1BUk1TQkJRQ0FRRUZCQUVDQWdFZEF3a09HeUFQSkFGRkJRRUJBd29MR3dNQ0FSSUlBUW9JQWdvRkFnY0NBZ0lJQmhZRkJnY01FZ3dCQVFvVEJ3TUJGQUpERndRQ0RBZ0RCQWdDRlJZa0dRc05CZ2N4Snlnakd5UVJBUUVCQWdJREJBSUJBaElFQWhFbUNRWUZMVU0wSWdBQUFnQXZBQUVEbndPZkFFc0FlQUIwUUJBOEFRTUNSVGczTXlrZUJBY0FBd0pNUzdBeFVGaEFJQUFGQmdXRkFBWUNCb1VBQXdJQUFnTUFnQVFCQWdJaVRRRUhBZ0FBSXdCT0cwQWZBQVVHQllVQUJnSUdoUUFEQWdBQ0F3Q0FBUWNDQUFDRUJBRUNBaUlDVGxsQUZRRUFibXhhV0VFL0xpMFhGUXNKQUVzQlN3Z0lGaXNsSWljbUp3WUhCZ2NHSXlJbkppY21KeVkxTkRjMk16SVhGaGNXSHdJMk56WTBQd00yUHdFMk56WXpNaDhCRmg4Qk56WS9BalkxTkNjMU5EWXpNaDRCRlFjR0R3RUdCd1lCSnlZbkppY21OVFEzTmpjMk16SVhGaDhDRmhjV0Z4WVhGaFVVQndZSEJpTWlKeVluSmljMEp5WW5Jd0x4RWc5MGJDbHZDQWNQSENZeE5pMFZIZ0lKRFJza0N4TWRKaXdEQnlra0FnRUJCdzBlRHdNQ0lnWUdIZzBxVDBjUEh5OFBBZ0VEQWg4U0Zoa0VBUXdzRWg4VENmNVRBZ3dORUFZQ0J3b1VCd1lNQ3g4ZUJCQUNCQTBNRVFZQ0J3b1VCd2NNQ3g0ZUFnTUJDQWNCQVE2SytJSGFEZzhZWVhYU1oyUUhCZzBPRmlRNmc3dHFDQTVTVXdJREFRUVBJazlRRWlRTEFoaGN0SFFZYnFGZUNCQVdGeFVXQWhNY0hTVVNGNUtMUG1KbEpBTXRBZ29LQ2hNSEJnMExFUVlDQnhjWEJBd0NBd29KQ3hJSEJnME1FQWNDQnhjWUFRSUJBUVVHQUFBQUFnQUgvL2NERHdNQ0FENEFhd0RlUzdBYlVGaEFDVHN2SEFnRUFBSUJUQnRMc0MxUVdFQUpPeThjQ0FRQUF3Rk1HMEFKT3k4Y0NBUUJBd0ZNV1ZsTHNCdFFXRUFaQUFVR0JZVUFCZ0lHaFFRREFnSUNKVTBCQndJQUFDTUFUaHRMc0NwUVdFQWRBQVVHQllVQUJnSUdoUVFCQWdJbFRRQURBeVZOQVFjQ0FBQWpBRTRiUzdBdFVGaEFJQUFGQmdXRkFBWUNCb1VBQXdJQUFnTUFnQVFCQWdJbFRRRUhBZ0FBSXdCT0cwQWtBQVVHQllVQUJnSUdoUUFEQWdFQ0F3R0FCQUVDQWlWTkFBRUJJMDBIQVFBQUl3Qk9XVmxaUUJVQkFHRmZUVXM1TnlZa0dSY05Dd0ErQVQ0SUNCWXJCU0luSmljbUp5WW5BZ2NHSXlJbkppY21KeVkxTkRjMk16SVRGaGMyTno0Qk5UWTNOak15RmhjV0Z4WVhIZ0VYTmpjMk56NEJOell6TWhZVkJnY0dBU2NtSnlZbkpqVTBOelkzTmpNeUZ4WWZBaFlYRmhjV0Z4WVZGQWNHQndZaklpY21KeVluTkNjbUp5TUNRUThLU2lBUENnY0tPMXdRRWtCQUV4a1NFQVlZREF4QlFCNE9DUWNDQmg0NERDUWlRd3dLQnhZT0FRTU1Dd282SUFRRURCQVRFaDhVTFZMK2dnTU1EUkFHQWdjS0ZBY0dEQXNmSGdRUUF3TU5EQkVHQWdjS0ZBY0hEQXNlSGdJREFRZ0hBUWtHTTI0MVBTb2svdjVURGY1TFNDb1pDd3djRUFmKy9YVWNFQkFHREFKSTZ5UmpPQ2twY1IwQ0NSTVdGNUNXRVNZTkR4d1VoWC96QXBvQ0Nnb0tFd2NHRFFzUkJnSUhGeGNFREFJRENna0xFZ2NHRFF3UUJ3SUhGeGdCQWdFQkJRWUFBQUlBTHdBQkE1OERud0JMQUhnQWVVQVZjbDRDQlFZOEFRTUNSVGczTXlrZUJBY0FBd05NUzdBeFVGaEFJQUFHQlFhRkFBVUNCWVVBQXdJQUFnTUFnQVFCQWdJaVRRRUhBZ0FBSXdCT0cwQWZBQVlGQm9VQUJRSUZoUUFEQWdBQ0F3Q0FBUWNDQUFDRUJBRUNBaUlDVGxsQUZRRUFiR3RZVjBFL0xpMFhGUXNKQUVzQlN3Z0lGaXNsSWljbUp3WUhCZ2NHSXlJbkppY21KeVkxTkRjMk16SVhGaGNXSHdJMk56WTBQd00yUHdFMk56WXpNaDhCRmg4Qk56WS9BalkxTkNjMU5EWXpNaDRCRlFjR0R3RUdCd1lEQnlNR0J3WVZCZ2NHQndZaklpY21KeVkxTkRjMk56WTNOajhDTmpjMk16SVhGaGNXRlJRSEJnY0dCd0x4RWc5MGJDbHZDQWNQSENZeE5pMFZIZ0lKRFJza0N4TWRKaXdEQnlra0FnRUJCdzBlRHdNQ0lnWUdIZzBxVDBjUEh5OFBBZ0VEQWg4U0Zoa0VBUXdzRWg4VENhNERBUWNJQVFNQ0hoNExEQWNIRkFvSEFnWVJEQTBFQWhBRUhoOExEQVlIRkFvSEFnWVFEUXdCRG9yNGdkb09EeGhoZGRKblpBY0dEUTRXSkRxRHUyb0lEbEpUQWdNQkJBOGlUMUFTSkFzQ0dGeTBkQmh1b1Y0SUVCWVhGUllDRXh3ZEpSSVhrb3MrWW1Va0F5MENCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFBQ0FBZi85d01QQXdJQVBnQnJBTzFMc0J0UVdFQU9aVkVDQlFZN0x4d0lCQUFDQWt3YlM3QXRVRmhBRG1WUkFnVUdPeThjQ0FRQUF3Sk1HMEFPWlZFQ0JRWTdMeHdJQkFFREFreFpXVXV3RzFCWVFCa0FCZ1VHaFFBRkFnV0ZCQU1DQWdJbFRRRUhBZ0FBSXdCT0cwdXdLbEJZUUIwQUJnVUdoUUFGQWdXRkJBRUNBaVZOQUFNREpVMEJCd0lBQUNNQVRodExzQzFRV0VBZ0FBWUZCb1VBQlFJRmhRQURBZ0FDQXdDQUJBRUNBaVZOQVFjQ0FBQWpBRTRiUUNRQUJnVUdoUUFGQWdXRkFBTUNBUUlEQVlBRUFRSUNKVTBBQVFFalRRY0JBQUFqQUU1WldWbEFGUUVBWDE1TFNqazNKaVFaRncwTEFENEJQZ2dJRmlzRklpY21KeVluSmljQ0J3WWpJaWNtSnlZbkpqVTBOell6TWhNV0Z6WTNQZ0UxTmpjMk16SVdGeFlYRmhjZUFSYzJOelkzUGdFM05qTXlGaFVHQndZREJ5TUdCd1lWQmdjR0J3WWpJaWNtSnlZMU5EYzJOelkzTmo4Q05qYzJNeklYRmhjV0ZSUUhCZ2NHQndKQkR3cEtJQThLQndvN1hCQVNRRUFUR1JJUUJoZ01ERUZBSGc0SkJ3SUdIamdNSkNKRERBb0hGZzRCQXd3TENqb2dCQVFNRUJNU0h4UXRVblFEQVFjSUFRTUNIaDRMREFjSEZBb0hBZ1lSREEwRUFoQUVIaDhMREFZSEZBb0hBZ1lRRFF3SkJqTnVOVDBxSlA3K1V3MytTMGdxR1FzTUhCQUgvdjExSEJBUUJnd0NTT3NrWXpncEtYRWRBZ2tURmhlUWxoRW1EUThjRklWLzh3S2FBZ1lGQVFFQ0FSZ1hCd0lIRUF3TkJnY1NDd2tLQXdJTUJCY1hCd0lHRVFzTkJnY1RDZ29LQUFBQUFBTUFMd0FCQTU4RFVnQkxBRmNBWXdCNFFCQThBUU1DUlRnM015a2VCQWNBQXdKTVM3QXhVRmhBSUFBREFnQUNBd0NBQ0FFR0J3RUZBZ1lGYVFRQkFnSWlUUUVKQWdBQUl3Qk9HMEFmQUFNQ0FBSURBSUFCQ1FJQUFJUUlBUVlIQVFVQ0JnVnBCQUVDQWlJQ1RsbEFHUUVBWW1CY1dsWlVVRTVCUHk0dEZ4VUxDUUJMQVVzS0NCWXJKU0luSmljR0J3WUhCaU1pSnlZbkppY21OVFEzTmpNeUZ4WVhGaDhDTmpjMk5EOEROajhCTmpjMk16SWZBUllmQVRjMlB3STJOVFFuTlRRMk16SWVBUlVIQmc4QkJnY0dBUlFHSXlJbU5UUTJNeklXRnhRR0l5SW1OVFEyTXpJV0F2RVNEM1JzS1c4SUJ3OGNKakUyTFJVZUFna05HeVFMRXgwbUxBTUhLU1FDQVFFSERSNFBBd0lpQmdZZURTcFBSdzhmTHc4Q0FRTUNIeElXR1FRQkRDd1NIeE1KL3FnZEZCUWRIUlFVSGF3ZEZCUWRIUlFVSFFFT2l2aUIyZzRQR0dGMTBtZGtCd1lORGhZa09vTzdhZ2dPVWxNQ0F3RUVEeUpQVUJJa0N3SVlYTFIwR0c2aFhnZ1FGaGNWRmdJVEhCMGxFaGVTaXo1aVpTUURJQlFkSFJRVUhSMFhGQjBkRkJRZEhRQUFBQU1BQi8vM0F3OEN0UUErQUVvQVZnRHFTN0FiVUZoQUNUc3ZIQWdFQUFJQlRCdExzQzFRV0VBSk95OGNDQVFBQXdGTUcwQUpPeThjQ0FRQkF3Rk1XVmxMc0J0UVdFQWJCd0VGQlFaaENBRUdCaUpOQkFNQ0FnSWxUUUVKQWdBQUl3Qk9HMHV3S2xCWVFCOEhBUVVGQm1FSUFRWUdJazBFQVFJQ0pVMEFBd01sVFFFSkFnQUFJd0JPRzB1d0xWQllRQ0lBQXdJQUFnTUFnQWNCQlFVR1lRZ0JCZ1lpVFFRQkFnSWxUUUVKQWdBQUl3Qk9HMEFtQUFNQ0FRSURBWUFIQVFVRkJtRUlBUVlHSWswRUFRSUNKVTBBQVFFalRRa0JBQUFqQUU1WldWbEFHUUVBVlZOUFRVbEhRMEU1TnlZa0dSY05Dd0ErQVQ0S0NCWXJCU0luSmljbUp5WW5BZ2NHSXlJbkppY21KeVkxTkRjMk16SVRGaGMyTno0Qk5UWTNOak15RmhjV0Z4WVhIZ0VYTmpjMk56NEJOell6TWhZVkJnY0dBUlFHSXlJbU5UUTJNeklXRnhRR0l5SW1OVFEyTXpJV0FrRVBDa29nRHdvSENqdGNFQkpBUUJNWkVoQUdHQXdNUVVBZURna0hBZ1llT0F3a0lrTU1DZ2NXRGdFRERBc0tPaUFFQkF3UUV4SWZGQzFTL3VzZEZCUWRIUlFVSGF3ZEZCUWRIUlFVSFFrR00yNDFQU29rL3Y1VERmNUxTQ29aQ3d3Y0VBZisvWFVjRUJBR0RBSkk2eVJqT0NrcGNSMENDUk1XRjVDV0VTWU5EeHdVaFgvekFvMFVIUjBVRkIwZEZ4UWRIUlFVSFIwQUFBSUFMd0FCQTU4RFVnQkxBRmNBY0VBUVBBRURBa1U0TnpNcEhnUUhBQU1DVEV1d01WQllRQjRBQXdJQUFnTUFnQUFHQUFVQ0JnVnBCQUVDQWlKTkFRY0NBQUFqQUU0YlFCMEFBd0lBQWdNQWdBRUhBZ0FBaEFBR0FBVUNCZ1ZwQkFFQ0FpSUNUbGxBRlFFQVZsUlFUa0UvTGkwWEZRc0pBRXNCU3dnSUZpc2xJaWNtSndZSEJnY0dJeUluSmljbUp5WTFORGMyTXpJWEZoY1dId0kyTnpZMFB3TTJQd0UyTnpZek1oOEJGaDhCTnpZL0FqWTFOQ2MxTkRZek1oNEJGUWNHRHdFR0J3WUJGQVlqSWlZMU5EWXpNaFlDOFJJUGRHd3Bid2dIRHh3bU1UWXRGUjRDQ1EwYkpBc1RIU1lzQXdjcEpBSUJBUWNOSGc4REFpSUdCaDROS2s5SER4OHZEd0lCQXdJZkVoWVpCQUVNTEJJZkV3bisveDBVRkIwZEZCUWRBUTZLK0lIYURnOFlZWFhTWjJRSEJnME9GaVE2Zzd0cUNBNVNVd0lEQVFRUElrOVFFaVFMQWhoY3RIUVlicUZlQ0JBV0Z4VVdBaE1jSFNVU0Y1S0xQbUpsSkFNZ0ZCMGRGQlFkSFFBQUFnQUgvL2NERHdLeUFENEFTZ0RlUzdBYlVGaEFDVHN2SEFnRUFBSUJUQnRMc0MxUVdFQUpPeThjQ0FRQUF3Rk1HMEFKT3k4Y0NBUUJBd0ZNV1ZsTHNCdFFXRUFaQUFVRkJtRUFCZ1lpVFFRREFnSUNKVTBCQndJQUFDTUFUaHRMc0NwUVdFQWRBQVVGQm1FQUJnWWlUUVFCQWdJbFRRQURBeVZOQVFjQ0FBQWpBRTRiUzdBdFVGaEFJQUFEQWdBQ0F3Q0FBQVVGQm1FQUJnWWlUUVFCQWdJbFRRRUhBZ0FBSXdCT0cwQWtBQU1DQVFJREFZQUFCUVVHWVFBR0JpSk5CQUVDQWlWTkFBRUJJMDBIQVFBQUl3Qk9XVmxaUUJVQkFFbEhRMEU1TnlZa0dSY05Dd0ErQVQ0SUNCWXJCU0luSmljbUp5WW5BZ2NHSXlJbkppY21KeVkxTkRjMk16SVRGaGMyTno0Qk5UWTNOak15RmhjV0Z4WVhIZ0VYTmpjMk56NEJOell6TWhZVkJnY0dBeFFHSXlJbU5UUTJNeklXQWtFUENrb2dEd29IQ2p0Y0VCSkFRQk1aRWhBR0dBd01RVUFlRGdrSEFnWWVPQXdrSWtNTUNnY1dEZ0VEREFzS09pQUVCQXdRRXhJZkZDMVN3QjBVRkIwZEZCUWRDUVl6YmpVOUtpVCsvbE1OL2t0SUtoa0xEQndRQi83OWRSd1FFQVlNQWtqckpHTTRLU2x4SFFJSkV4WVhrSllSSmcwUEhCU0ZmL01DaWhRZEhSUVVIUjBBQUFJQUwvOVpBNThDc2dCTEFGY0FjVUFRUEFFREFrVTROek1wSGdRSEFBTUNURXV3TVZCWVFCMEFBd0lBQWdNQWdBQUdBQVVHQldZRUFRSUNJazBCQndJQUFDTUFUaHRBSHdBREFnQUNBd0NBQVFjQ0FBWUNBQVorQUFZQUJRWUZaZ1FCQWdJaUFrNVpRQlVCQUZaVVVFNUJQeTR0RnhVTENRQkxBVXNJQ0JZckpTSW5KaWNHQndZSEJpTWlKeVluSmljbU5UUTNOak15RnhZWEZoOENOamMyTkQ4RE5qOEJOamMyTXpJZkFSWWZBVGMyUHdJMk5UUW5OVFEyTXpJZUFSVUhCZzhCQmdjR0JSUUdJeUltTlRRMk16SVdBdkVTRDNSc0tXOElCdzhjSmpFMkxSVWVBZ2tOR3lRTEV4MG1MQU1IS1NRQ0FRRUhEUjRQQXdJaUJnWWVEU3BQUnc4Zkx3OENBUU1DSHhJV0dRUUJEQ3dTSHhNSi92OGRGQlFkSFJRVUhRRU9pdmlCMmc0UEdHRjEwbWRrQndZTkRoWWtPb083YWdnT1VsTUNBd0VFRHlKUFVCSWtDd0lZWExSMEdHNmhYZ2dRRmhjVkZnSVRIQjBsRWhlU2l6NWlaU1IzRkIwZEZCUWRIUUFBQWdBSC8xa0REd0llQUQ0QVNnRFNTN0FiVUZoQUNUc3ZIQWdFQUFJQlRCdExzQzFRV0VBSk95OGNDQVFBQXdGTUcwQUpPeThjQ0FRQkF3Rk1XVmxMc0J0UVdFQVdBQVlBQlFZRlpnUURBZ0lDSlUwQkJ3SUFBQ01BVGh0THNDcFFXRUFhQUFZQUJRWUZaZ1FCQWdJbFRRQURBeVZOQVFjQ0FBQWpBRTRiUzdBdFVGaEFIUUFEQWdBQ0F3Q0FBQVlBQlFZRlpnUUJBZ0lsVFFFSEFnQUFJd0JPRzBBaEFBTUNBUUlEQVlBQUJnQUZCZ1ZtQkFFQ0FpVk5BQUVCSTAwSEFRQUFJd0JPV1ZsWlFCVUJBRWxIUTBFNU55WWtHUmNOQ3dBK0FUNElDQllyQlNJbkppY21KeVluQWdjR0l5SW5KaWNtSnlZMU5EYzJNeklURmhjMk56NEJOVFkzTmpNeUZoY1dGeFlYSGdFWE5qYzJOejRCTnpZek1oWVZCZ2NHQnhRR0l5SW1OVFEyTXpJV0FrRVBDa29nRHdvSENqdGNFQkpBUUJNWkVoQUdHQXdNUVVBZURna0hBZ1llT0F3a0lrTU1DZ2NXRGdFRERBc0tPaUFFQkF3UUV4SWZGQzFTd0IwVUZCMGRGQlFkQ1FZemJqVTlLaVQrL2xNTi9rdElLaGtMREJ3UUIvNzlkUndRRUFZTUFranJKR000S1NseEhRSUpFeFlYa0pZUkpnMFBIQlNGZi9OdEZCMGRGQlFkSFFBQUFBSUFadi8xQW1nRG93QS9BRmtBcjB1d0cxQllRQTFOQVFRRk5TSVNEZ1FBQWdKTUcwQU5UUUVFQlRVaUVnNEVBUUlDVEZsTHNCdFFXRUFhQmdFRkJBV0ZDQUVFQWdTRkF3RUNBaUpOQVFjQ0FBQWpBRTRiUzdBZlVGaEFIZ1lCQlFRRmhRZ0JCQUlFaFFNQkFnSWlUUUFCQVNOTkJ3RUFBQ01BVGh0QUlnWUJCUVFGaFFnQkJBTUVoUUFEQXloTkFBSUNJazBBQVFFalRRY0JBQUFqQUU1WldVQVpRVUFCQUZGUVNraEFXVUZaTENvZkhSZ1dBRDhCUHdrSUZpc0ZJaWNtTHdFbUx3RXVBaWNtSnlNSEJnOEJGUlFHSXlJbU5SRTBOak15RmgwQk5qYzJOelkvQVRZek1oY1dGUlFIQmdjR0J4NEJGeFlYRmhVVUJ3WUJJaThCSmpVME56WXpNaGNXRnpZM05qTXlGeFlWRkE4QkJnSTNIQTh6TVFvZldSUURCZ1FCRVF3QkFnZ1NBaDBVRkIwZEZCUWRRVW9sR1I0Z0NoTWFEUTBZQ0R4VVFUUW1jaDFJT1FjWkRQNzdFdzltR0FjUEhBd0xUZ2tDVlFzTUJ3Y2xHV1FRQ3hsWFFnMGpSeEVEQkFNQkRRVUVDUjREOEJNZEhSTUNXeFFkSFJUTlF6RVlGUm9qQ3gwSUVCb05ERVU4TWk4WlhpSlpaQXdNSEE4SEF2VVBUdzhiRFFzWkJ6a0tBVUlIQWcwakdoQk9Ed0FDQUV2LzlRSUVBNk1BTGdCSUFLWkFERHdCQkFVcEd3MERBQUlDVEV1d0hWQllRQjRHQVFVRUJZVUlBUVFCQklVQUFRRWtUUUFDQWl0TkF3Y0NBQUFqQUU0YlM3QW1VRmhBSlFZQkJRUUZoUWdCQkFFRWhRQUJBUUJoQXdjQ0FBQWpUUUFDQWl0TkF3Y0NBQUFqQUU0YlFDVUdBUVVFQllVSUFRUUJCSVVBQVFFQVlRTUhBZ0FBSTAwQUFnSUFZUU1IQWdBQUl3Qk9XVmxBR1RBdkFRQkFQemszTDBnd1NDUWlGQklKQndBdUFTNEpDQllyRnlJbU5RSVJORFl6TWhZVkVCYzJOelkzTmpjeUZoY1VCd1lQQVJZZkFSWVhGQVlqSWk4QkppOEJCaU1WRkFZVElpOEJKalUwTnpZek1oY1dGelkzTmpNeUZ4WVZGQThCQm4wVUhBSWNGQlFkQWljbVZXQVFFeFFjQVE5Z1ZSMWhUZzROQVIwV0V3MFBaejRKTGdJZGpCTVBaaGdIRHh3TUMwNEpBbFVMREFjSEpSbGxEd3NkRkFGS0FVY1VIUjBVL3JkTUtDbGRVUTBCSEJRVkRsRmVIbEJqRVJBVEV4ME9FWDB2Qml4M0ZCMEM5UTlQRHhzTkN4a0hPUW9CUWdjQ0RTTWFFRTRQQUFJQVpBQWZBNnNCOUFBcUFGVUFORUF4VERNaENBUUFBUUZNQXdFQkFBQUJXUU1CQVFFQVlRVUNCQU1BQVFCUkxDc0JBRDg5SzFVc1ZSUVNBQ29CS2dZSUZpc2xJaWNtSnlZbkpqVTBOamMyTnpZM05qYzJNeklYRmhVVUJnY0dEd0lHRHdFV0Z4WVhGaFVVQndZaElpY21KeVluSmpVME5qYzJOelkzTmpjMk16SVhGaFVVQmdjR0R3SUdEd0VXRnhZWEZoVVVCd1lCNlF3TVBVQnRLVm9ERlRBdkl5UlZaQWNHRFF3WUVCUWxJQVFJT2wwbUhrV01MUmdIRHdGMERBdzlRRzBwV2dNVk1DOGpKRlZrQndZTkRCZ1FGQ1VnQkFnNlhTWWVSWXd0R0FjUEh3Y2hHekVhTlNzREdRMGRJUmtYT2hRQ0J3OGFEQ0FFQlE0QkJCdEFHeFFoUHhnT0hBMExHUWNoR3pFYU5Tc0RHUTBkSVJrWE9oUUNCdzhhRENBRUJRNEJCQnRBR3hRaFB4Z09IQTBMR1FBQUFnQmtBQjhEcXdIMEFDb0FWUUF5UUM4MUNnSUFBUUZNQXdFQkFBQUJXUU1CQVFFQVlRVUNCQU1BQVFCUkxDc0JBRU5DSzFVc1ZSZ1hBQ29CS2dZSUZpc2xJaWNtTlRRM05qYzJOeWNtTHdJbUp5NEJOVFEzTmpNeUZ4WVhGaGNXRng0QkZSUUhCZ2NHQndZaElpY21OVFEzTmpjMk55Y21Md0ltSnk0Qk5UUTNOak15RnhZWEZoY1dGeDRCRlJRSEJnY0dCd1lDSlJzUUJoY3RqRVVlSmwwNkNBUWdKUlFQRnd3TkJ3WmtWU1FqTHpBVkJGb3FiVUE5RFA1a0d4QUdGeTJNUlI0bVhUb0lCQ0FsRkE4WERBMEhCbVJWSkNNdk1CVUVXaXB0UUQwTUh4a0xEUndPR0Q4aEZCdEFHd1FCRGdVRUlBd2FEd2NDRkRvWEdTRWREUmtES3pVYU1Sc2hCeGtMRFJ3T0dEOGhGQnRBR3dRQkRnVUVJQXdhRHdjQ0ZEb1hHU0VkRFJrREt6VWFNUnNoQndBQUFBQUNBR1AvK1FNY0E1OEFUZ0I3QVJWTHNCdFFXRUFTZFdFQ0JRWTNJdzhFQkFFRFJRRUFBUU5NRzB1d0gxQllRQkoxWVFJRkJqY2pEd1FFQVFORkFRSUJBMHdiUUJKMVlRSUZCamNqRHdRRUFRUkZBUUlCQTB4WldVdXdHMUJZUUNBQUJnVUdoUUFGQXdXRkFBRURBQU1CQUlBRUFRTURLRTBDQndJQUFDTUFUaHRMc0I5UVdFQWtBQVlGQm9VQUJRTUZoUUFCQXdJREFRS0FCQUVEQXloTkFBSUNJMDBIQVFBQUl3Qk9HMHV3TFZCWVFDZ0FCZ1VHaFFBRkF3V0ZBQUVFQWdRQkFvQUFBd01vVFFBRUJDSk5BQUlDSTAwSEFRQUFJd0JPRzBBcUFBWUZCb1VBQlFNRmhRQUJCQUlFQVFLQUFBSUFCQUlBZmdBREF5aE5BQVFFSWswSEFRQUFJd0JPV1ZsWlFCVUJBRzl1VzFvOE9qUXpLeWtWRkFCT0FVNElDQllyQlNJbkppYzBMd0VtTkNjbUx3RW1Kd1lIQmdjR0l5SW5MZ0V2QVNZbkppY2pKeVluTlNNR0J3NEJJeUltSnpZVE5qYzJNeklYRmhjMk56WXpNaGNXRnhZVkZoY1dGVElWRmhjV0ZSUUhCZ01ISXdZSEJoVUdCd1lIQmlNaUp5WW5KalUwTnpZM05qYzJQd0kyTnpZek1oY1dGeFlWRkFjR0J3WUhBdXNrQ3hRTkN3RUJBUW9YQkFJRE5Ta1JFd3dmQmdZYkRBd0RGVEVGQkFFQkdoMEJJd01CSEJRVUhBRUNNZ01oQmdjVEQ0VkxNVXdPSFJNUFVCY1BCQWdDQVFjS0FnZ00xd01CQndnQkF3SWVIZ3NNQndjVUNnY0NCaEVNRFFRQ0VBUWVId3NNQmdjVUNnY0NCaEFOREFja1RLRVJaZzBDQlFKTE93a0ZCRjFrS1NrWUFnYzFIUVl5UXdZSEFpRWVBZnI4RlJ3Y0ZmTUJhQ01NQVE1d2pIeHVHQTlUbkdZa1JFTU1Dd0V6SlFjSERBNFdBelVDQmdVQkFRSUJHQmNIQWdjUURBMEdCeElMQ1FvREFnd0VGeGNIQWdZUkN3MEdCeE1LQ2dvQUFBQUFBd0JELys4RE9nTUNBR1VBYUFDVkFOeEFFWTk3QWdnSlZsSUNBUVZER2dJQUFRTk1TN0FLVUZoQUlBQUpDQW1GQUFnRkNJVURBUUVCQldFSEJnSUZCU1ZOQkFJS0F3QUFKZ0JPRzB1d0RGQllRQ29BQ1FnSmhRQUlCd2lGQXdFQkFRVmhCZ0VGQlNWTkF3RUJBUWRoQUFjSEswMEVBZ29EQUFBbUFFNGJTN0FPVUZoQUlBQUpDQW1GQUFnRkNJVURBUUVCQldFSEJnSUZCU1ZOQkFJS0F3QUFKZ0JPRzBBa0FBa0lDWVVBQ0FZSWhRQUZCU1ZOQXdFQkFRWmhCd0VHQml0TkJBSUtBd0FBSmdCT1dWbFpRQnNCQUltSWRYUlpWMVZUVVU5S1NEZzNKaVFRRHdCbEFXVUxDQllyQlNJbU5UUTNOalUwSnlZdkFTTW1KeUlHSXdZVklnY0dJd1lIQmdjV0ZSUUhCaFVPQVNNaUppYytBVFUwSnlZdkFTSW1JeVl2QVNZakJ3WUhJZ2NHQndZakJnY0dCeEVVQmlNaUpqVVJORFl6TWhjMk16SVhOak15RnhZWEZoVVVCd1lIQmdjR056UTNBd2NqQmdjR0ZRWUhCZ2NHSXlJbkppY21OVFEzTmpjMk56WS9BalkzTmpNeUZ4WVhGaFVVQndZSEJnY0M2QkllR1FnUENnUVZBUmRCSkFrQkZRVVFBUUlMQ1FFRE1RSUNBUndVRkJ3QkFRUUtDaU1HQVFJQkZBNFREUTBORXhrQ0FTRUNBUUlLQ0FJQkhSUVVIQndVSHc4NlBrdzhQRnhJUHpvZ0lCY0pBUUVORHgwQi9nTUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5EQkVhRWhpSkxUb3VLUlFFRkJjTkFnWUJDd0lLQ3dJQ1ZKc2ZIeVltRlJ3Y0ZTZEpJMDBoTnk4SkJCc0lDZ1lCQkJJQ0d3Z0VEZzhCQXY2M0ZCMGRGQUhJRkIwZk1EOUFJUjg0UVVoV2R6c0NGQThPTFFVQkFtOENCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFBQ0FEai8rUUpyQTc0QVBRQjRBU1JMc0JSUVdFQVBkVWdDQmdWVUFRUUdIQUVDQUFOTUcwdXdHMUJZUUE5MVNBSUdCMVFCQkFZY0FRSUFBMHdiUUE5MVNBSUdCMVFCQkFZY0FRSUJBMHhaV1V1d0ZGQllRQ1FIQVFVR0JZVUFCZ1FHaFFBRUF3U0ZDZ2dDQXdBRGhRRUJBQUFpVFFrQkFnSWpBazRiUzdBYlVGaEFLQUFGQndXRkFBY0dCNFVBQmdRR2hRQUVBd1NGQ2dnQ0F3QURoUUVCQUFBaVRRa0JBZ0lqQWs0YlM3QW1VRmhBTHdBRkJ3V0ZBQWNHQjRVQUJnUUdoUUFFQXdTRkNnZ0NBd0FEaFFBQkFBSUFBUUtBQUFBQUlrMEpBUUlDSXdKT0cwQXNBQVVIQllVQUJ3WUhoUUFHQkFhRkFBUURCSVVLQ0FJREFBT0ZBQUFCQUlVQUFRSUJoUWtCQWdJakFrNVpXVmxBSEQ0K0FBQStlRDU0YzNKa1kxdFpVVTlCUUFBOUFEMHVMQzRMQ0JjckJTY21KeVluSmljbUp5WTFORGMyTXpJV0Z4WVhNaFFmQVJZWEZSYzJOelkvQVRRek56WS9BVFkxSnpRMk16SVdGUlFIQmc4QkJnY0dGUWNWQndZVElpY2lKeVluTkNjbUp5SUhCaFVHQndZaklpY21OVFEzTmpjMk16SVhGaDhCSGdFWEZqTTBNejRETno0Qk56NEJOell6RmhVR0J3WUJjd3hRTmtJbERRd1JGZ0lJRGhzaUdTQXJLQUVCQVJja0NSQVJBZ014QWdzNERRRUNBUjRURlJ4TElpVURIQWdDQVF3T0hRVU1TaHdJQ0JZUEdnVUVDUXNJQ3lNZERnY0NEaDhuTXpZMUp3d0lBZ1VCQ2dzRUFnVUJBZ0VLQVFFR0J4SU5EUzhGTHlFSEFSaHJnNDRyTEVWRUJ3Y01EaFpKZFpwbkFnRURPVElCQ2lZbENBTnhCQnVIWFFrTUV3OFZIQjBiZWJWU1VnZzhGUUlEQVFJY0l3THJBa01YQkFJTUNBTUVDQUlWRmlRWkN3MEdCekVuS0NNYkpCRUJBUUVDQWdNRUFnRUNFZ1FDRVNZSkJnVXRRelFpQUFBQUFnQU4vK29DQlFNaEFDNEFhUUZsUzdBVVVGaEFEMlk1QWdZRlJRRUVCaGdCQWdBRFRCdExzQnRRV0VBUFpqa0NCZ2RGQVFRR0dBRUNBQU5NRzBBUFpqa0NCZ2RGQVFRR0dBRUNBUU5NV1ZsTHNCUlFXRUFwQndFRkJnV0ZBQVFHQXdZRUE0QUtDQUlEQUFZREFINEFCZ1lpVFFFQkFBQXJUUWtCQWdJc0FrNGJTN0FiVUZoQUxRQUZCd1dGQUFjR0I0VUFCQVlEQmdRRGdBb0lBZ01BQmdNQWZnQUdCaUpOQVFFQUFDdE5DUUVDQWl3Q1RodExzQjlRV0VBeEFBVUhCWVVBQndZSGhRQUVCZ01HQkFPQUNnZ0NBd0FHQXdCK0FBWUdJazBBQUFBclRRQUJBU3ROQ1FFQ0Fpd0NUaHRMc0NaUVdFQXNBQVVIQllVQUJ3WUhoUUFHQkFhRkFBUURCSVVLQ0FJREFBT0ZBQUFBSzAwQUFRRXJUUWtCQWdJc0FrNGJRQ3dBQlFjRmhRQUhCZ2VGQUFZRUJvVUFCQU1FaFFvSUFnTUFBNFVBQUFFQWhRQUJBU3ROQ1FFQ0Fpd0NUbGxaV1ZsQUhDOHZBQUF2YVM5cFpHTlZWRXhLUWtBeU1RQXVBQzRqSVMwTENCY3JCU0ltSnlZdkFTWW5KalUwTnpZek1oY1dGeFlYRlRNV0Z6WS9BVFUyTnpZM05qTXlGeFlWRkE4QkJnY0dCd1lUSWljaUp5WW5OQ2NtSnlJSEJoVUdCd1lqSWljbU5UUTNOamMyTXpJWEZoOEJIZ0VYRmpNME16NEROejRCTno0Qk56WXpGaFVHQndZQkNnVWJEVUlzSnhzZEF3a09HeUFQSFJzbEh3RUVIQmNLQWdrM0dSME1JeG9SQncwckZoZzdPZzlNQlF4S0hBZ0lGZzhhQlFRSkN3Z0xJeDBPQndJT0h5Y3pOalVuREFnQ0JRRUtDd1FDQlFFQ0FRb0JBUVlIRWcwTkx3VXZJUllFRkhGOGFreExCd2dMRGhZa1NrdHNTUUVNT3lzYUJBSVFta3RKSkJrTEN3a2ZlRUJBbkVJT0FsMENReGNFQWd3SUF3UUlBaFVXSkJrTERRWUhNU2NvSXhza0VRRUJBUUlDQXdRQ0FRSVNCQUlSSmdrR0JTMUROQ0lBQUFJQVkvOVpBaXdDc0FBeEFEOEFlVXV3RUZCWXR4b1dGQU1DQVFGTUc3Y2FGaFFEQXdFQlRGbExzQkJRV0VBYUFBVUhBUVFGQkdNQUFRRWlUUU1CQWdJQVlRWUJBQUFqQUU0YlFDRUFBd0VDQVFNQ2dBQUZCd0VFQlFSakFBRUJJazBBQWdJQVlRWUJBQUFqQUU1WlFCY3pNZ0VBT2pjeVB6TStLaWtrSWhBT0FERUJNUWdJRmlzRklpY21KeVkxTkRjMk56WTNORFl6TWhZVkJnY0dCd1lWRmhjVUZ4NEJNeFlYRmpNeU56NEJQd0V5RnhZVkZBWUhCZ2NpSmpVME5qc0JNaFlWRkFZakFVMUpSRVFPQ3dFSUJ3WUNIQlFVSFFFS0JnUUNBZ0lLQVF3Q0JRd1lUQzB4RGh3UEN3NE9GeEFVYXJnVUhCd1V3eFFjSEJRREh5aE1PVGNURXFSR09EZ1VIUjBVVDA5cU9DY29KQkVNR3djVEJRVVFCZ01EQXdFSUN4NE1IZ1FVcEIwVUZCMGRGQlFkQUFBQUF2LzQvMWtCR3dMb0FCd0FLZ0JNUzdBZFVGaEFHQUFFQlFFREJBTmtBQUlDSkUwQUFBQUJZUUFCQVNNQlRodEFHQUFDQUFLRkFBUUZBUU1FQTJRQUFBQUJZUUFCQVNNQlRsbEFEaDRkSlNJZEtoNHBKalFpQmdnWkt6Y1dGeFl5RmhVVUJpc0JJaWNtTlJFME5qTXlGaFVRRnpNWEl4WXpBeUltTlRRMk93RXlGaFVVQmlPbkJBa0NLeHdjRlFzckpUTWRGQlFkQVFFQ0FRTUNnQlFjSEJUREZCd2NGRjRDQVFJZEZCTWRGQ0ZIQWtNVUhSMFUvYkVHQWdQKy9CMFVGQjBkRkJRZEFBQUNBR0wvV1FLUkFyNEFNUUEvQURoQU5Td2tFZ01BQVFGTUFBVUhBUVFGQkdNQ0FRRUJLRTBEQmdJQUFDTUFUak15QVFBNk56SS9NejRwSng4ZERBb0FNUUV4Q0FnV0t4Y2lKaWMyTnpZM05EYzJNeklXRnhZWEZoY1VNeFUyUHdFMlBRRStBVE15RmgwQkZBY0dCd1lqSWljbUp3Y0dCdzRCRnlJbU5UUTJPd0V5RmhVVUJpT1RGQndCQXhJTkJ4Z01EQ0ljRURObE5ERUJDd2dERWdFY0ZCUWRDd292RENNblUzSlRCaE1DQVJ4eEV4MGRFOE1VSEJ3VUJ4MFVzSytDZ3hzUEJrSWdmTFJkUHdFQk16TWJrZFVaRkJ3Y0ZDYU5qSjJWSTNlbHVVYXZzQlFkb0IwVUZCMGRGQlFkQUFBQ0FFei9XUUlsQWlrQU5nQkVBSUJMc0MxUVdFQUtLQUVCQXhzQkFBRUNUQnRBQ2lnQkFRTWJBUUlCQWt4WlM3QXRVRmhBR3dBR0NBRUZCZ1ZqQUFFQkEyRUVBUU1ESzAwQ0J3SUFBQ01BVGh0QUh3QUdDQUVGQmdWakFBRUJBMkVFQVFNREswMEFBZ0lqVFFjQkFBQWpBRTVaUUJrNE53RUFQenczUkRoREt5a25KU0FlRkJJQU5nRTJDUWdXS3dVaUpqVTBOamNtSnlZMUppOEJKaWNtSXlZakJnY0dCd1lIQmdjUkZBWWpJaVkxRVRRMk16SVhOak15RnhZWEZoVVVCd1lIRkFZRklpWTFORFk3QVRJV0ZSUUdJd0hwRXgwS0FRTVJBUW9FQVI4dUdnZ0VKUThhRUFJT0N3SUZIQlFVSFIwVUd3OHlRVEF2UUMwL0JRVUJIZjdhRkJ3Y0ZNTVVIQndVQlJ3VUtXQTNWeXNCQWhJRkFpWU9DQUlCQ2drQ0NSVUxDUDZ4RkIwZEZBSEVGQjBhSFJJWE16K3RNQ1UxTEJRY29oMFVGQjBkRkJRZEFBQUFBd0JtL3dnQ253S3RBQlVBVUFCdEFMTkFGRTB3QWdJREJBRUFBbW9CQkFVRFRBZ0JBd0ZMUzdBWlVGaEFKQWdCQkFVRWhnQUdBQVVFQmdWcEFBTURBV0VBQVFFaVRRQUNBZ0JoQndFQUFDTUFUaHRMc0NwUVdFQWlDQUVFQlFTR0FBSUhBUUFHQWdCcEFBWUFCUVFHQldrQUF3TUJZUUFCQVNJRFRodEFKd2dCQkFVRWhnQUJBQU1DQVFOcEFBSUhBUUFHQWdCcEFBWUZCUVpaQUFZR0JXRUFCUVlGVVZsWlFCbFNVUUVBWm1WaFlGRnRVbTFJUmhjV0R3MEFGUUVWQ1FnV0t6Y2lKeVluSmpVME55WTFORGMyTXpJWEZoY0dCd1luTmpjeU56WTNOamMyTno0Qk56WTNOajhCTmpjMk5UUW5OU2MwSnpVdUFTY3VBaWNtSnlJbUp5WXZBU1luTGdFaklnY0dCd1lWQndZVkV5SW5KalUwUHdFeU5qVTJOVFFuSWk0Qk5UUTJNeFlYRmhVR0J3YTBGZzRqQkFNbUJ4cE5WVjlYcFFNQ3E1T1BKd0lKQ1Rjc0dCd1pGQUVHQXlFT0Vnc0ZCd1FCQVFFUEFRSU5DZ0lDQVEwT0FnY0NIUThORlJ3SkZCZ2dDUklTRWdNUVZSb1BCeGdPQWhFRUJ3RVFIQnNXTWlBUkNVb05Dd29MSkRzNjI3Y0xEUjRNSUN4ZXRhNWtVV0lDQWdJS0R3Z09EQTRCQXdNYUVoZ1ZEUlFWREJNT0RRWUVEU1VCQVFjVURnTUJBZzRNQndFUkJ3WUlCZ0VEQWdJRlZ3MFFqSWIrVEJnTERSd09DUklIQ1FVSUFRRVpGaElmQlNnWktGWXFCZ0FBQUFBREFDci9DQUlvQXRjQU13QldBSE1BbkVBU1JBRURCRUFCQUFOUkFRY0JjQUVGQmdSTVM3QU9VRmhBTFFBSEFRSUJCM0lBQmdJRkFnWnlDZ0VGQllRQUF3QUFBUU1BYVFBRUJDUk5DQUVCQVFKaUNRRUNBaU1DVGh0QUx3QUhBUUlCQndLQUFBWUNCUUlHQllBS0FRVUZoQUFEQUFBQkF3QnBBQVFFSkUwSUFRRUJBbUlKQVFJQ0l3Sk9XVUFlV0ZjMU5BQUFiR3RuWmxkeldITklSajg5TkZZMVV3QXpBRE1vQ3dnWEt5VTFOQ2NqSmljakppTUhJZ1lpQndZUEFRWUhJZ1lIQmc4QkJnOEJGUVlQQVFZVkZCY1VGeFVXRnhReUZSWVhNeFlmQVJZWElpY21KeVkxTkRjMk16SVhKalUwTno0Qk16SVdGUVlWRkJZVkZBY09BU01uQmdjaUp5WTFORDhCTWpZMU5qVTBKeUl1QVRVME5qTVdGeFlWQmdjR0FjWVBBUThnQkFzUUdnRUZCQUVsRkFnaUN3RURBaEFPQVFVS0NBZ0RBUUVGQ3dzRkFnOFVBUm94R1VoTTFHczBHaE0xWTZVbEpBTUNBaG9WRXg0Q0dRSUNHaFVHQnNVYUR3Y1lEZ0lSQkFjQkVCd2JGaklnRVFsS0RWWVRvM2tHQmdJQkFRRUZDZ01QQ3dNQkRSRUNCUklQQWhNVUJnNFBEZzBIRHdFTEJBRUJDZ29LQ3dRSVlqb2NOU3N2VmtkK0NETXlLeW9WSEJ3VktpbDM2blVzTEJRZEFRSHNHQXNOSEE0SkVnY0pCUWdCQVJrV0VoOEZLQmtvVmlvR0FBQUNBR2ovK0FLSUE2TUFMUUJIQU9wQUR6c0JCZ2NZQVFJQkNnWUNCUUlEVEV1d0VsQllRQ0lJQVFjR0I0VUtBUVlCQm9VQUFnQUZBQUlGYUFNQkFRRWlUUVFKQWdBQUl3Qk9HMHV3RkZCWVFDWUlBUWNHQjRVS0FRWURCb1VBQWdBRkFBSUZhQUFEQXloTkFBRUJJazBFQ1FJQUFDTUFUaHRMc0NaUVdFQXFDQUVIQmdlRkNnRUdBd2FGQUFJQUJRUUNCV2dBQXdNb1RRQUJBU0pOQUFRRUkwMEpBUUFBSXdCT0cwQXFDQUVIQmdlRkNnRUdBd2FGQUFJQUJRUUNCV2dBQVFFaVRRQUVCQU5oQUFNREtFMEpBUUFBSXdCT1dWbFpRQjB2TGdFQVB6NDROaTVITDBjcUtTVWpIQnNXRlJBT0FDMEJMUXNJRmlzWExnRTlBVFkxSmpVME56WTNQZ0V6SGdFZEFRWUhCU1luTlRRMk14WVhGaFVRQndZaklpWTFOamNsRUFjR0V5SXZBU1kxTkRjMk16SVhGaGMyTnpZek1oY1dGUlFQQVFhWEZCc01CUVVCQkFFZEZCVWFBd0VCVUFFSkh4UVZEQmdhRFJNV0hBY0QvcThiRHNzVEQyWVlCdzhjREF0T0NRSlZDd3dIQnlVWlpCQUlBUndUQTZpcENRc1FDVzV1RlJvQkhCTURZR0FLYm0wQ0V4b0NEaDM3L280V0RSNFZqNDhLL3I4WkRRTHlEMDhQR3cwTEdRYzVDZ0ZDQndJTkl4b1FUZzhBQUFBQUFnQk0vL01DSFFPakFFY0FZUUQ4UzdBbVVGaEFEMVVCQVFZTEFRUUNRaDBDQUFRRFRCdEFEMVVCQVFZTEFRUUNRaDBDQXdRRFRGbExzQXBRV0VBbUJ3RUdBUWFGQ1FFRkFRSUJCUUtBQUFRRUFtRUFBZ0lyVFFBQkFRQmhBd2dDQUFBakFFNGJTN0FrVUZoQUpnY0JCZ0VHaFFrQkJRRUNBUVVDZ0FBRUJBSmhBQUlDSzAwQUFRRUFZUU1JQWdBQUpnQk9HMHV3SmxCWVFDUUhBUVlCQm9VSkFRVUJBZ0VGQW9BQUFnQUVBQUlFYVFBQkFRQmhBd2dDQUFBbUFFNGJRQ2dIQVFZQkJvVUpBUVVCQWdFRkFvQUFBZ0FFQXdJRWFRQURBeU5OQUFFQkFHRUlBUUFBSmdCT1dWbFpRQnRKU0FFQVdWaFNVRWhoU1dFMU1ob1lEZ3dJQmdCSEFVY0tDQllyRnlJbU5SRTBOak15RmgwQk5qTXlGeFlYRmhVVUJoVU9BU01pSmljM05qVTBMd0ltSnpVbkppY21Md0VtSnlZbklpWWpCeU1HRHdFR0R3RUdCeUlkQVFZSEZBY0RGQVlUSWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCbjBVSFIwVUZCMDNPeUVqaFNVUEJRRWNGQlFjQVFNREF3RUNDQWdIREFZRUdnUUtFZ29RQVFZSUNBd1NDUmNJQ3dVSEJRRUpBZ0VCSFl3VEQyWVlCdzhjREF0T0NRSlZDd3dIQnlVWlpROE5IQlFDcGhRZEhSUytKQXMxakQxS0xWb3JGUndjRlZZbkprSU9CQTRuRWdFT0ZnWUpGZ0lJQ0FVREFnRUVCQTBHRFFZTUN3RUJGUk1DQWY3SUZCd0M5dzlQRHhzTkN4a0hPUW9CUWdjQ0RTTWFFRTRQQUFBQUFBVUFhZi93QWs0RFVnQURBQzBBVkFCd0FId0FqRUFOVVR3Q0FnRmlLeFVEQUFJQ1RFdXdFRkJZUUNnQUFnRUFBUUlBZ0FBSEFBWUVCd1pwQUFFQkJHRUFCQVFpVFFnQkFBQURZZ1VKQWdNREpnTk9HMEFzQUFJQkFBRUNBSUFBQndBR0JBY0dhUUFCQVFSaEFBUUVJazBJQVFBQUJXQUFCUVVqVFFrQkF3TW1BMDVaUUJ0V1ZRVUVlM2wxYzI5clhWcFZjRlp3UUQwNU53UXRCU3dLQ0JZckFTWWpGd015TnpZM1BnRTNOamMrQVRVMlB3RTJOU2NpTlNZbk5DWTFKaWMxSnlZbklpYzBJeVluSmljVkZoTW1KeVkxSmljakp5WWpJZ2NHQnhVMk56STNPZ0UxTXpZM05ENEJNejRCTlRZMUp5WW5GUUVpSmpVUk5ETVhGaGNXRlJRSEZoY1dGUlFIQmdjR0l5SXZBUVlURkFZaklpWTFORFl6TWhZQnpnSUJBcHRFQ1J3VkFnWUJDZ29FQ2dVREFRZ0VBUUlFQWdjSUJBd01BZ1lCTkN3RWZGT3ZCQVVDRWdZQkF5bzlKQ3NTRXlzclRCY0NBd1l5Q3dRREFRSUNCQUlJQlA3TUZCM1RJcHN5RWswNEd3c1RKVTg1Unljbk9nKzFIUlFVSFIwVUZCMENLQU1EL2prRUJBY0NBUUVFQndRSkFRWUhBaEluRWdFRkJRSUJBUWdHQVFJSkJRTUJFd1VCQ3RjRUFjY0ZCQUVCQ3dJQkVBWURCS01EQVFVQkRRb0JBd1FFQXdNSkVSOGFBUUg5eVIwVkFrbElBUVZoS2pSaUtCNCtJU0VzS2tnWkVRSUJFUU14RkIwZEZCUWRIUUFBQXdBKy8vUUNQQUxYQURNQVZnQmlBRWhBUlVjQkJRWkxBUUVFT2dFQ0FBTk1BQVFBQVFBRUFXa0FBd01rVFFBRkJRWmhBQVlHSWswQUFBQUNZZ2NCQWdJakFrNDROR0ZmVzFsT1RFVkRORlk0Vml3cEVBZ0lGeXMzTWo4Qk5qY3pOamMwTWpVMk56VTJOVFkxTkM4QkppYzFKeVl2QVNZbkxnRWpKaThCSmljbUlpWWpKeUlISXdZSEl3WVZCeUluQnlJbUp5WTFORFkxTkNjME5qTXlGaGNXRlJRSE5qTXlGeFlWRkFjR0J3WURGQVlqSWlZMU5EWXpNaGFnU0VnWk1Sb0JGQThDQlFzTEJRRUJBd2dJQ2dVQkRoQUNBd0VMSWdnVUpRRUVCUUVhRUFzRUlBOEJEd1FmQmdZVkdnSUNHUUllRXhVYUFnSURKQ1dsWXpVVEdqUnJFUjBVRkIwZEZCUWRWZ2dFQ3dvS0NnRUJCQXNCRHdjTkRnOE9CaFFUQWc4U0JRSVJEUUVEQ3c4RENnVUJBUUVDQmdaNW8zVUJBUjBVTEN4MTZuY3BLaFVjSEJVcUt6SXpDSDVIVmk4ck5SdzZBbzBVSFIwVUZCMGRBQUFBQUFNQVpnQUxBcDhEVWdBVkFGQUFYQUNXUUJCTk1BSUNBd1FCQUFJQ1RBZ0JBd0ZMUzdBWlVGaEFIZ0FGQUFRQkJRUnBBQU1EQVdFQUFRRWlUUUFDQWdCaEJnRUFBQ01BVGh0THNDcFFXRUFiQUFVQUJBRUZCR2tBQWdZQkFBSUFaUUFEQXdGaEFBRUJJZ05PRzBBaEFBVUFCQUVGQkdrQUFRQURBZ0VEYVFBQ0FBQUNXUUFDQWdCaEJnRUFBZ0JSV1ZsQUV3RUFXMWxWVTBoR0Z4WVBEUUFWQVJVSENCWXJOeUluSmljbU5UUTNKalUwTnpZek1oY1dGd1lIQmljMk56STNOamMyTnpZM1BnRTNOamMyUHdFMk56WTFOQ2MxSnpRbk5TNEJKeTRDSnlZbklpWW5KaThCSmljdUFTTWlCd1lIQmhVSEJoVVRGQVlqSWlZMU5EWXpNaGEwRmc0akJBTW1CeHBOVlY5WHBRTUNxNU9QSndJSkNUY3NHQndaRkFFR0F5RU9FZ3NGQndRQkFRRVBBUUlOQ2dJQ0FRME9BZ2NDSFE4TkZSd0pGQmdnQ1JJU0VnTVE1QjBVRkIwZEZCUWRDd29MSkRzNjI3Y0xEUjRNSUN4ZXRhNWtVV0lDQWdJS0R3Z09EQTRCQXdNYUVoZ1ZEUlFWREJNT0RRWUVEU1VCQVFjVURnTUJBZzRNQndFUkJ3WUlCZ0VEQWdJRlZ3MFFqSVlDWlJRZEhSUVVIUjBBQUFBREFDci85QUlvQXRjQU13QldBR0lBVFVCS1JBRUZCa0FCQUFOUkFRSUJBMHdBQXdBQUFRTUFhUUFFQkNSTkFBVUZCbUVBQmdZaVRRY0JBUUVDWWdnQkFnSWpBazQxTkFBQVlWOWJXVWhHUHowMFZqVlRBRE1BTXlnSkNCY3JKVFUwSnlNbUp5TW1Jd2NpQmlJSEJnOEJCZ2NpQmdjR0R3RUdEd0VWQmc4QkJoVVVGeFFYRlJZWEZESVZGaGN6Rmg4QkZoY2lKeVluSmpVME56WXpNaGNtTlRRM1BnRXpNaFlWQmhVVUZoVVVCdzRCSXljR0F4UUdJeUltTlRRMk16SVdBY1lQQVE4Z0JBc1FHZ0VGQkFFbEZBZ2lDd0VEQWhBT0FRVUtDQWdEQVFFRkN3c0ZBZzhVQVJveEdVaE0xR3MwR2hNMVk2VWxKQU1DQWhvVkV4NENHUUlDR2hVR0JxZ2RGQlFkSFJRVUhWWVRvM2tHQmdJQkFRRUZDZ01QQ3dNQkRSRUNCUklQQWhNVUJnNFBEZzBIRHdFTEJBRUJDZ29LQ3dRSVlqb2NOU3N2VmtkK0NETXlLeW9WSEJ3VktpbDM2blVzTEJRZEFRRUNqUlFkSFJRVUhSMEFBQUlBVmYveEFqb0RVZ0FkQUNrQWFyVUVBUUlCQVV4THNDUlFXRUFoQUFZQUJRRUdCV2tBQXdBRUFBTUVad0FDQWdGZkFBRUJJazBIQVFBQUpnQk9HMEFmQUFZQUJRRUdCV2tBQVFBQ0F3RUNad0FEQUFRQUF3Um5Cd0VBQUNZQVRsbEFGUUVBS0NZaUlCb1lGQklSRHdzSUFCMEJIUWdJRmlzWElpWTFFU1kxTkRZeklUSVdGUlFHSXlFVk16SVdGUlFHS3dFUkZBWVRGQVlqSWlZMU5EWXpNaGFPRXgwSkhSUUJneFFkSFJUK3RxOFVIUjBVcngzWEhSUVVIUjBVRkIwUEhSUUNXUXdQRkIwZEZCUWRzaHdVRkIzKzBCUWRBekFVSFIwVUZCMGRBQUFBQUFJQUR2LzVBVDBEVWdBNUFFVUFSa0JETnpRQ0FBRUJUQUFJQUFjRENBZHBCUUVDQmdFQkFBSUJhUUFFQkFOaEFBTURKRTBKQVFBQUl3Qk9BUUJFUWo0OEx5MHBKeDBjRmhRUkR3c0pBRGtCT1FvSUZpc1hJaVk5QVRRdkFUWTNJeUltTlRRMk93RTJOell6TWhjV0ZSUUhCaU1pSmlNbkJ3WUhCZzhCTXpJV0ZSUUdLd0VHSFFFVUJ4WWRBUTRCRXhRR0l5SW1OVFEyTXpJV2dSUWRBZ01CQXhBVUhSMFVHQW9rSjBrekR3WVpDdzBHQ2dRRURRSUpGd2dGVEJRZEhSUlRBUU1GQWh1QUhSUVVIUjBVRkIwSEhCVVlJeU5FU24wY0ZCUWRaRHhBSEFzTUhnMEhBd0VEQVFraU5ob2RGQlFjSFI0b1R5RkpOUmdWSEFNb0ZCMGRGQlFkSFFBQUFBSUFZLy81QXh3RFVnQk9BRm9BL2t1d0cxQllRQTAzSXc4RUJBRURSUUVBQVFKTUcwdXdIMUJZUUEwM0l3OEVCQUVEUlFFQ0FRSk1HMEFOTnlNUEJBUUJCRVVCQWdFQ1RGbFpTN0FiVUZoQUhnQUJBd0FEQVFDQUFBWUFCUU1HQldrRUFRTURLRTBDQndJQUFDTUFUaHRMc0I5UVdFQWlBQUVEQWdNQkFvQUFCZ0FGQXdZRmFRUUJBd01vVFFBQ0FpTk5Cd0VBQUNNQVRodExzQzFRV0VBbUFBRUVBZ1FCQW9BQUJnQUZBd1lGYVFBREF5aE5BQVFFSWswQUFnSWpUUWNCQUFBakFFNGJRQ2dBQVFRQ0JBRUNnQUFDQUFRQ0FINEFCZ0FGQXdZRmFRQURBeWhOQUFRRUlrMEhBUUFBSXdCT1dWbFpRQlVCQUZsWFUxRThPalF6S3lrVkZBQk9BVTRJQ0JZckJTSW5KaWMwTHdFbU5DY21Md0VtSndZSEJnY0dJeUluTGdFdkFTWW5KaWNqSnlZbk5TTUdCdzRCSXlJbUp6WVROamMyTXpJWEZoYzJOell6TWhjV0Z4WVZGaGNXRlRJVkZoY1dGUlFIQmdFVUJpTWlKalUwTmpNeUZnTHJKQXNVRFFzQkFRRUtGd1FDQXpVcEVSTU1Id1lHR3d3TUF4VXhCUVFCQVJvZEFTTURBUndVRkJ3QkFqSURJUVlIRXcrRlN6Rk1EaDBURDFBWER3UUlBZ0VIQ2dJSURQN2VIUlFVSFIwVUZCMEhKRXloRVdZTkFnVUNTenNKQlFSZFpDa3BHQUlITlIwR01rTUdCd0loSGdINi9CVWNIQlh6QVdnakRBRU9jSXg4YmhnUFU1eG1KRVJEREFzQk15VUhCd3dPRmdNb0ZCMGRGQlFkSFFBREFFUC83d002QXJJQVpRQm9BSFFBMTBBTVZsSUNBUVZER2dJQUFRSk1TN0FLVUZoQUlBQUlDQWxoQUFrSklrMERBUUVCQldFSEJnSUZCU1ZOQkFJS0F3QUFKZ0JPRzB1d0RGQllRQ29BQ0FnSllRQUpDU0pOQXdFQkFRVmhCZ0VGQlNWTkF3RUJBUWRoQUFjSEswMEVBZ29EQUFBbUFFNGJTN0FPVUZoQUlBQUlDQWxoQUFrSklrMERBUUVCQldFSEJnSUZCU1ZOQkFJS0F3QUFKZ0JPRzBBa0FBZ0lDV0VBQ1FraVRRQUZCU1ZOQXdFQkFRWmhCd0VHQml0TkJBSUtBd0FBSmdCT1dWbFpRQnNCQUhOeGJXdFpWMVZUVVU5S1NEZzNKaVFRRHdCbEFXVUxDQllyQlNJbU5UUTNOalUwSnlZdkFTTW1KeUlHSXdZVklnY0dJd1lIQmdjV0ZSUUhCaFVPQVNNaUppYytBVFUwSnlZdkFTSW1JeVl2QVNZakJ3WUhJZ2NHQndZakJnY0dCeEVVQmlNaUpqVVJORFl6TWhjMk16SVhOak15RnhZWEZoVVVCd1lIQmdjR056UTNBUlFHSXlJbU5UUTJNeklXQXVnU0hoa0lEd29FRlFFWFFTUUpBUlVGRUFFQ0N3a0JBekVDQWdFY0ZCUWNBUUVFQ2dvakJnRUNBUlFPRXcwTkRSTVpBZ0VoQWdFQ0NnZ0NBUjBVRkJ3Y0ZCOFBPajVNUER4Y1NEODZJQ0FYQ1FFQkRROGRBZjZ1SFJRVUhSMFVGQjBSR2hJWWlTMDZMaWtVQkJRWERRSUdBUXNDQ2dzQ0FsU2JIeDhtSmhVY0hCVW5TU05OSVRjdkNRUWJDQW9HQVFRU0Foc0lCQTRQQVFMK3R4UWRIUlFCeUJRZEh6QS9RQ0VmT0VGSVZuYzdBaFFQRGkwRkFRSmZGQjBkRkJRZEhRQUFBd0JoLy9vQ1JRTlNBQzBBU2dCV0FENUFPMGNCQkFBQlRBQUdBQVVEQmdWcEFBQUFCQUlBQkdrQUFRRURZUUFEQXloTkJ3RUNBaU1DVGk4dVZWTlBUVVpDT1RjdVNpOUtMU3RnQ0FnWEt4TTJPd0V5TnpJM01qNENNelkvQVRZL0FUSTNORFkxTkM4QkppYzFKaWNtTHdFbUp5NEJKeVl2QVNZakJ3TWlKalVSTkRjMk56WXpNaGNXSFFFVUJ3WUhCaU1pSnlJbkZSUUdFeFFHSXlJbU5UUTJNeklXd2dZcUdpY21FQTBDR3hrQkFRc0tBZ29GQndFR0FRRUJBZ1lGQndJV0JBc1RBd2NGS3lFVEZTb2tNUlFjRXc0WUtDanBVaUFyS1R0TFRoVVVKZ3dkdHgwVUZCMGRGQlFkQVZBQkFnTUZDQUVGQndFSUNBMFhCQVVSRndnRERnMEJDd2tIRXdNSkNBRUVBUTRFQWdNQi9aOGRGQUpXR0E4UkFnT0FPRUFLU0RndER4SUJBc1lVSFFNbkZCMGRGQlFkSFFBQUF3QkkveXdDUmdLeUFETUFWZ0JpQVFkQURsRUJBUUpBQVFNQVJBRUVBd05NUzdBUFVGaEFKZ0FGQlFaaEFBWUdJazBIQVFFQkFtRUlBUUlDSlUwQUFBQURZUUFEQXlOTkFBUUVKd1JPRzB1d0VGQllRQ1FBQUFBREJBQURhUUFGQlFaaEFBWUdJazBIQVFFQkFtRUlBUUlDSlUwQUJBUW5CRTRiUzdBVlVGaEFKZ0FGQlFaaEFBWUdJazBIQVFFQkFtRUlBUUlDSlUwQUFBQURZUUFEQXlOTkFBUUVKd1JPRzB1d0lGQllRQ1FBQUFBREJBQURhUUFGQlFaaEFBWUdJazBIQVFFQkFtRUlBUUlDSlUwQUJBUW5CRTRiUUNJSUFRSUhBUUVBQWdGcEFBQUFBd1FBQTJrQUJRVUdZUUFHQmlKTkFBUUVKd1JPV1ZsWldVQVlOVFFBQUdGZlcxbElSajg5TkZZMVV3QXpBRE1vQ1FnWEt4TVZGQmN6RmhjekZqTTNNall5TnpZL0FUWTNNalkzTmo4Qk5qOEJOVFkvQVRZMU5DYzBKelVtSnpRaU5TWW5JeVl2QVNZbk1oY1dGeFlWRkFjR0l5SW5GaFVVQnc0Qkl5SW1OVFkxTkNZMU5EYytBVE1YTmpjVUJpTWlKalUwTmpNeUZxb1BBUThnQkFzUUdnRUZCQUVsRkFnaUN3RURBaEFPQVFVS0NBZ0RBUUVGQ3dzRkFnOFVBUm94R1VoTTFHczBHaE0xWTZVbEpBTUNBaG9WRXg0Q0dRSUNHaFVHQnJvZEZCUWRIUlFVSFFHdEU2TjVCZ1lDQVFFQkJRb0REd3NEQVEwUkFnVVNEd0lURkFZT0R3NE5CdzhCQ3dRQkFRb0tDZ3NFQ0dJNkhEVXJMMVpIZmdnek1pc3FGUndjRlNvcGQrcDFMQ3dVSFFFQmNoUWRIUlFVSFIwQUFnQTMvL1VDTUFOU0FFb0FWZ0JOUUVwSEFRSUJBVXdBQkFVQkJRUUJnQUFCQWdVQkFuNEFCd0FHQXdjR2FRQUZCUU5oQUFNREtFMEFBZ0lBWVFnQkFBQWpBRTRCQUZWVFQwMHhMeWtuSXlFUURnb0lBRW9CU2drSUZpc0ZKeTRCSnlZMU5EWTNNaGNXRnhZek1qWXpOamMyTlNZMUppY21OVFEzTmpjMk16SVhGaFVVSXlJbU5UYzBKeVlqSWdjR0J3WUhEZ01IRkJZVkhnRVZGaGNXRnhZVkJnY0dBeFFHSXlJbU5UUTJNeklXQVZvVVQzOHpEaHdVRkE5S1RTZ0lEZ1VFUENrQ0FSeUoxaXd5UlRJMFp6MHdNaE1lQVJFNEh6b3FJd3NFRVFJRkFnSUJBd3NDTmw0a0pKRUtQMFk4SFJRVUhSMFVGQjBMQVF4ak94QVZFaHdCRGxjckRnRVVPQWdIQWdRNE9GcDhPeTh5RlJJL09VZExHeE1pSHhZakV3OExBeEVFQndZRkJ3a0hBaEVEQVRVbUVCTklhMHN0UEFNc0ZCMGRGQlFkSFFBQUJBQXYvK1lCd3dLeUFBSUFCUUJsQUhFQVUwQlFVd0VFQlNVQkFnRUNUQUFFQlFFRkJBR0FBQUVDQlFFQ2ZnQUdCZ2RoQUFjSElrMEFCUVVEWVFBREF5dE5BQUlDQUdFSUFRQUFMQUJPQndad2JtcG9TMHBEUVRrM0hCb1JEd1psQjJVSkNCWXJFek0xQnlJMUV5SW5KaWNtTlRRM05qTXlGeklWRmhjVkZoY1dNelkzTXo0Qk5UWTNOamNuSmk4QklpY21KeVluSmljbU5UUTNQZ0V6TWhjV0Z4WVZGQWNHSXlJbk5DTW1KeU1tSndZakJnY0dCd1lWRnljWEZoY2VBUmNlQVJjV0Z4WVZGQWNHQXhRR0l5SW1OVFEyTXpJV3F3RUZBVk5KT0RJVkFna09HaUlOQVFRSEZoTVlJQjhWQWdzWUF3SUZBZ01HQ2hjQ0JBNDJJaUU1SWhBSkZtVTlNeXM2RndJSURoc2lEUUlJRmdFVEtBSURHQnNMRFFNR0FRVUpDUUlHQXg0N0hUY29KUzQ2TVIwVUZCMGRGQlFkQVp3Qk1nSCtlaWNrT1FjSERBNFdKQUVLQ0FFV0NBc0JDUVVUQXdRRkJSZ2FEUW9OQWdZUENBd1NNQjhoR0JrMlFob29Rd2NIREE0V0pBUVVGZzRDQVFNVENCVU5FZ29EQlFZRUFnSUJDdzRKRUNndE9VVXhPd0tiRkIwZEZCUWRIUUFBQUFJQUp2LzZBbW9EVWdBV0FDSUFNRUF0QUFVQUJBSUZCR2tEQVFFQkFsOEFBZ0lpVFFZQkFBQWpBRTRCQUNFZkd4a1RFUTBLQmdRQUZnRVdCd2dXS3dVaUpqVVJJeUltTlRRMk15RXlGaFVVQmlzQkVSUUdFeFFHSXlJbU5UUTJNeklXQVVnVUhjRVRIUjBUQWVNVUhSMFV3UndkSFJRVUhSMFVGQjBHSEJRQ0tSd1VGQjBkRkJRYy9kY1VIQU1uRkIwZEZCUWRIUUFBQXYvLy8rc0JPUU5TQURzQVJ3QlJRRTRiQVFJRENBRUdBUUpNQUFNSUFnZ0RBb0FBQ1FBSUF3a0lhUVVCQVFFQ1lRUUJBZ0lsVFFjQkJnWUFZUW9CQUFBc0FFNEJBRVpFUUQ0M05USXhKU01mSFJrWEVROExDUUE3QVRzTENCWXJGeUl1QVNjbU5UUS9BU01pSmpVME5qc0JOVFFuTlRRMk16SVdGeFlWTXpJV0ZSUUdLd0VHQnhRZkF4NEJGUmNXTXpJK0FUTXlGeFlWRkFNVUJpTWlKalUwTmpNeUZ1d1NPRFFLRXdVQ0tCUWRIUlFyQWg0VEZSb0JBMGtUSFIwVFRBWUJCUU1NQ1FNREFnb0pCQWdLQmcwUEZuNGRGQlFkSFJRVUhSVU1RU2RFZHp3OElSMFVGQjBVSGg4Q0V4c2NGQ2tvSFJRVUhWcGJMaTRQS3hFQ0F3RUJCQUVDQnd3ZE5BTTJGQjBkRkJRZEhRQUFBZ0JpLy9rQ2tRTlNBREVBUFFBMFFERXNKQklEQUFFQlRBQUZBQVFCQlFScEFnRUJBU2hOQXdZQ0FBQWpBRTRCQUR3Nk5qUXBKeDhkREFvQU1RRXhCd2dXS3hjaUppYzJOelkzTkRjMk16SVdGeFlYRmhjVU14VTJQd0UyUFFFK0FUTXlGaDBCRkFjR0J3WWpJaWNtSndjR0J3NEJBUlFHSXlJbU5UUTJNeklXa3hRY0FRTVNEUWNZREF3aUhCQXpaVFF4QVFzSUF4SUJIQlFVSFFzS0x3d2pKMU55VXdZVEFnRWNBU0lkRkJRZEhSUVVIUWNkRkxDdmdvTWJEd1pDSUh5MFhUOEJBVE16RzVIVkdSUWNIQlFtall5ZGxTTjNwYmxHcjdBVUhRTW9GQjBkRkJRZEhRQUFBQUFDQUV6Lyt3SWxBcklBTmdCQ0FJQkxzQzFRV0VBS0tBRUJBeHNCQUFFQ1RCdEFDaWdCQVFNYkFRSUJBa3haUzdBdFVGaEFIUUFGQlFaaEFBWUdJazBBQVFFRFlRUUJBd01yVFFJSEFnQUFJd0JPRzBBaEFBVUZCbUVBQmdZaVRRQUJBUU5oQkFFREF5dE5BQUlDSTAwSEFRQUFJd0JPV1VBVkFRQkJQenM1S3lrbkpTQWVGQklBTmdFMkNBZ1dLd1VpSmpVME5qY21KeVkxSmk4QkppY21JeVlqQmdjR0J3WUhCZ2NSRkFZaklpWTFFVFEyTXpJWE5qTXlGeFlYRmhVVUJ3WUhGQVlERkFZaklpWTFORFl6TWhZQjZSTWRDZ0VERVFFS0JBRWZMaG9JQkNVUEdoQUNEZ3NDQlJ3VUZCMGRGQnNQTWtFd0wwQXRQd1VGQVIyZUhSUVVIUjBVRkIwRkhCUXBZRGRYS3dFQ0VnVUNKZzRJQWdFS0NRSUpGUXNJL3JFVUhSMFVBY1FVSFJvZEVoY3pQNjB3SlRVc0ZCd0NoaFFkSFJRVUhSMEFBQUFDQUZuL1dRRE9Bc3NBSEFBb0FFdTJHQkFDQUFFQlRFdXdNVkJZUUJNQUF3QUNBd0psQUFFQktFMEVBUUFBTEFCT0cwQVRBQU1BQWdNQ1pRQUJBUUJoQkFFQUFDd0FUbGxBRHdFQUp5VWhIdzBNQUJ3QkhBVUlGaXNYSWlZbkppY21OVFEzTmpjMk14Y1dGUlFHRHdFR0ZSUVhGaGNPQVJjVUJpTWlKalUwTmpNeUZwMFVIQUVCQ0FvVkJSSU1EUXdqQWdnQ0Jna0pBUUVjR3gwVUZCMGRGQlFkRXh3VWFtdHpjbWxvRXdvR0FRd2tCZzB1RWpaTVBwTnJiQlFjWXhRZEhSUVVIUjBBQUFNQVN2OVpBTXdDd2dBTEFDa0FOUUE1UURZT0FRSURBVXdBQlFBRUJRUmxCZ0VBQUFGaEFBRUJLRTBBQXdNclRRQUNBaVlDVGdFQU5ESXVMQjBiRkJNSEJRQUxBUXNIQ0JZckV5SW1OVFEyTXpJV0ZSUUdFeFlWRkFZSEJpTWlKaWN1QVRVME5qTXlGaDBCRkJjV0h3SVVGeFlYRkFZaklpWTFORFl6TWhaL0ZCMGRGQlFkSFM4QkRoVUdCUTBmQlJJSUhSUVVIUU1DQlFZQ0FRRU1IUlFVSFIwVUZCMENZQjBVRkIwZEZCUWQvYzRHQmcwY0J3RVBGSG5wZVJRZEhSUTBYRlk2T2pvT0F3TU1zUlFkSFJRVUhSMEFBUUJDLys0Q1FBSytBRlVBYVVBT1FnRURBVFFCQkFNQ0FRSUVBMHhMc0I5UVdFQWVBQU1CQkFFREJJQUFBUUVvVFFBRUJBSmhBQUlDSTAwRkFRQUFMQUJPRzBBY0FBTUJCQUVEQklBQUJBQUNBQVFDYVFBQkFTaE5CUUVBQUN3QVRsbEFFUUVBTUM4cUtTRWZEdzBBVlFGVkJnZ1dLeGNpTlRRMk5UUTNOalUwTmpjMk16SVhGaFVVQndZVkZCY1dGeFlWRkFjR0l5SW1KeVkxTkRjMk16SVdGeFlYRmpNMk56UTNOQ2NtTlRRM1BnRTNOQ1luSmljaUJpTU9BUWNHQndZSEJnY0dFUmNVQmdjR2RUTUNBZ0VWSTBadk5DOUdKeE1xT2d3dEtUZE1DbVFzQmlNR0J4WWFBZ2tNRXlVcURBVWtlaklJQVFFSUNoZ2NCeElHRVIwT0J3WUpCd2tJQndFR0VnMFNRQVlPQjVoWUp5ZzdkVEZWR1NkU0wwNG1GUnNoTEFvc09qa3JNUWhKREF3bEN3RWRCUW9GQmcwUEJnd2VGMHhjT1ZjY0JRRVJEUW9NQWdNRUNoRUlCUXdOSVNKUy90VWhEaU1OQ0FBQUFnQmYvMWtDTXdLNUFEQUFQQUEvUUR3QUF3QUVCUU1FWndBSEFBWUhCbVVBQWdJQlh3QUJBU0pOQUFVRkFGOElBUUFBSXdCT0FRQTdPVFV6S1NRaEh4c1pGeFVSRGdBd0FTMEpDQllyRnlJbUp5WXZBVFEzTmpjME5qYzJNeUV5RmhVVUJpTWhCZ2N6TWhZVkZBWXJBUVlkQVRZM05qTXlGaFVVQmlNT0FSY1VCaU1pSmpVME5qTXlGcUlSR2dVUkFRRUlDQUlVRUE4WEFVZ1VIQndVL3M4Q0JyY1VIUjBVdlFSRlJGUlVGUndjRlZTbmhCMFVGQjBkRkJRZERCUVFEeGhnYzNKNWVoRWFCQk1kRkJRZFlXSWRGQlFjVTFNM0FRTUVIUlFVSEFFSGF4UWRIUlFVSFIwQUFBQURBQkgvV1FJZkFoOEFNd0JpQUc0QVVVQk9BQVVDQXdJRkE0QUxBUVlBQWdVR0FtY0FDUUFJQ1FobEFBY0hBV0VBQVFFbFRRUUJBd01BWVFvQkFBQXNBRTQxTkFFQWJXdG5aVTlOTkdJMVlTMHJLU1lsSkJJUENRY0FNd0V6REFnV0t3VWlKeVkxTmpjMk16SVhGaGNXRlJRaElpY2ZBeFVXSHdJeUhnRVhGaGN5SHdFeU56STFNamMyTXpJWEZoVVVCd1lETWpjMk16UXpOamN6TkNjMEp6VW1KelVtTHdFbUx3RW1Md0VpRHdFR0J5SUhJd1lQQVFZSEZSUWpEZ0VIRmhNVUJpTWlKalUwTmpNeUZnRS9nVjFRQm1kUlcyQkNRQThFL3ZkTVNnSUhEQWtSRlFVakFRUUVBUTRTQlFJZUV4TUZJRWdIQ0FzT0ZpUlpqVHc4QkFVQ0h4Y0JDZ0lKQndnS0FnME5CUkVSSUJZS0h4MGVBd01CQndZTURBWUJCQVFDVTRJZEZCUWRIUlFVSFJKaFduaUFTalEwTmxrTkRYSUVCdzRWREFFVEVnUVVBZ0VCQlFRQkFnSUJIUU1KRGhzZ0R5UUJSUVVCQVFNS0N4c0RBZ0VTQ0FFS0NBSUtCUUlIQWdJQ0NBWVdCUVlIREJJTUFRRUtFd2NEL2xjVUhSMFVGQjBkQUFRQVAvOVpBc0VDdWdBQ0FGc0FjUUI5QURwQU53QUdBQVVHQldVQUFRRUVZUUFFQkNKTkJ3SUNBQUFEWVFnQkF3TWpBMDVlWEFNRGZIcDJkR2htWEhGZWNRTmJBMWtzS2hRSkNCY3JBU2N5QXpjeU56WTNOamMxTnpZL0FUWTFORGMyTlNZbkppYzFKeVluSXpVbkppOEJKaWNqSnlZbkppOEJEd0VHRHdFR0R3RWlCd1lQQVFZUEFnWUhCaFVQQVJRZkFSWWZBUllmQVRNVkZ4WWZBUllmQVJZWE14WXlId0VuSWljbUp5WTFORGMyTXpJV0Z4WVZGQTRCQndZSEZBWWpJaVkxTkRZek1oWUNEUUVCZWdvS0p5VUtFaFVJRWdvTENnRUNBUVFGQ2dnSkRBRUdEeEFKSUFrQkFSUW5EZ0V0RlFvU0VnSU1Dd2tCQVEwVUFRTUNDZzBIQlFrQkFnTUZDZ2dEQ0FvTEFRTU1EZ1lQRUFZUUdnTUhFQVFWSFVjOU9TVkRXVTJFU2FvNExRRlZUa2tqSFJRVUhSMFVGQjBDSVFIK09RRU5FZ29QR1FFS0hoVWZLQWdDQVE4YUl3OGFHUUlQRWhFQkJ4RU5CaFVDQVFnSkFnRUNBZ0lEQndFR0J3WUNDQmtCQXdRUEd4QVJJZ3dCTVJrWUhpWVNCeEVRRVFFRURnd0ZDd2NEQndRQkFXSUJJeU0zYUlLWloxbEdYbE5lQW1LcE15eHZGQjBkRkJRZEhRQUFBd0FlLzFrQ09RSWdBQllBUkFCUUFEOUFQQ1VCQWdNQlRBQUhBQVlIQm1VRUFRTURBV0VBQVFFclRRVUJBZ0lBWVFnQkFBQXNBRTRCQUU5TlNVZEVRelF5TVRBWUZ3c0pBQllCRmdrSUZpc0ZJaWNtSnlZMU5EYzJNeklYRmhjV0ZSUUhEZ0VIQmljeVB3RTJOelkzTkRNMk56UXpOeVluTlNjbUp6UWpKaWNtSXlZaklnY1ZEZ0VqQndZSEJoVVVGeFlYRmpNWEZBWWpJaVkxTkRZek1oWUJHanMzU2lJZU16dG9WVXRqTEJZYUhHYzdKQzBRQ3dwRUpBd1JBUlVHQVFFRUNnRU5Ed0VxT0NZU0RCb01HQWtMQWhFUER3TUhEeDR4STFRZEZCUWRIUlFVSFJrZk1GTklUR2hLVVNvNWFESXlOemczU1JBTFlnRUJFeDBKRXdFZElnTVFNQlVDQVIwVEFUVVdEd0lIQVFRSkVnOCtGUmdiSmpvbk1zQVVIUjBVRkIwZEFBQURBREgvV1FLR0FzTUFKd0F1QURvQXowQUtLZ0VFQVFRQkFnTUNURXV3RDFCWVFDRUlBUVFBQXdJRUEyZ0FCZ0FGQmdWbEFBRUJLRTBBQWdJalRRY0JBQUFqQUU0YlM3QVFVRmhBSkFBQ0F3QURBZ0NBQ0FFRUFBTUNCQU5vQUFZQUJRWUZaUUFCQVNoTkJ3RUFBQ01BVGh0THNCVlFXRUFoQ0FFRUFBTUNCQU5vQUFZQUJRWUZaUUFCQVNoTkFBSUNJMDBIQVFBQUl3Qk9HMEFrQUFJREFBTUNBSUFJQVFRQUF3SUVBMmdBQmdBRkJnVmxBQUVCS0UwSEFRQUFJd0JPV1ZsWlFCa29LQUVBT1Rjek1TZ3VLQzRoSUJ3YkRRc0FKd0VuQ1FnV0t4Y2lKeVkxTkQ4Qk5oSTNOak15RnhZZkFSUXpGeFlYRmhVVUJ3WWpJaWNtSnlNR0R3RUdCd1lCSmljR0J3WUhFeFFHSXlJbU5UUTJNeklXWWhzUEJ3SVZMMjVORHhza0Mxa3RCZ0VHUENZR0dBc05CZzBZYU9FZ0hoTUdFUXNCTENRakhCWVBEWWNkRkJRZEhSUVVIUXNaQ3cwR0J6NlRBU0dHR0NUdVpnOEJFSWRNREEwYUR3Y0RCZkpjWERnVENnY0JkVmxhT0RZaUkvNGdGQjBkRkJRZEhRQUFCUUFOLzFrQ0pnSWpBQUlBTndBNkFGMEFhUUJPUUV0R1JRSUFBMXNzRHcwRUFRQUNUQUFEQUFBQkF3QnBBQWNBQmdjR1pRQUVCQ3ROQ0FFQkFRSmhCUWtDQWdJbUFrNDhPd01EYUdaaVlGaFdTMGxFUWp0ZFBGMEROd00zSUI4S0NCWXJOelFuRnpZM05qY3lOVFkzTmpVMk5TNEJKelFqSmljbUp5WW5KaWNtSnlZbkJpTUhCZ2NHQndZSEJnOEJGeFFYRkJjV0Z4WWZBUlkvQVJVREppY21OVFEzTmpNeUZ5YzBOell6TWhjV0Z4WVhNeGNXRlJRR0l5SW5KaWNPQVJjVUJpTWlKalUwTmpNeUZuQUJmQklSSlI0QkZBc1JBZ0VEQmdFRERBTUNEd0lLRXdNQ0h5TUNCeGdORHhNUUZRY0RBUUVCQ3dJT0dBUUlFeEt1QVp0MFFDZGJQbEZJUlFNSENoNE5EeDRHQkJzQkNRMGNGeElRSGd3aVlpZ2RGQlFkSFJRVUhjd0RBWUFDQmhJbEFSa2JLQllKRWd3VkVnRUlFZ01FRGdFSUNRRUNEQUlCQndVTkZCWXBIaFFDR2hvVEdnSUVIeE1DQmdrSXNnVUUvdXdGWVVWTWhsdzhMaHNPRGhZSEQ4U29TaElORnhJY0VDa3lNVDFtRkIwZEZCUWRIUUFBQUFBQ0FBMy9XUUpVQXNvQVJnQlNBRkMzUUNVSUF3QUJBVXhMc0FwUVdFQVVBQVFBQXdRRFpRSUJBUUVvVFFVQkFBQWpBRTRiUUJRQUJBQURCQU5sQWdFQkFTaE5CUUVBQUNZQVRsbEFFUUVBVVU5TFNUYzFGeFVBUmdGR0JnZ1dLd1VpSmljMEp5WTFOeVluSmljbUx3RW1KeVkxTkRZek1oOEJGaGNXRnhZekZoOEJGaklYUGdJM05qYytBVFEyTnpZM05qYzJNeklYRmhVVUJ3WUhCZzhCRkJZVkRnRVhGQVlqSWlZMU5EWXpNaFlCTlJRY0FRSUNBU29mS2pnakRnRUVCUTRkRXhRUEJDUWlPQTREQVE4VEFnd0dBZ2dCQXdVa0tRUUNBd0loSFF3YURCNE5EQmdSTlVZNUxRRUZBUndZSFJRVUhSMFVGQjBOSFJROVBEVTBUaElsTUdFK0VRRUdCUThURkIwT0JTby9YdzRGRkJBQkNRRUJBUUlESHpZRUFnSURBaXd1RERZWEJnNGNFUnhlVTBvWlB6NTdQQlFkYVJRZEhSUVVIUjBBQUFBQ0FDYi9KUUgzQWh3QVBnQktBTlMzTENjTEF3WUFBVXhMc0FwUVdFQWFBQVlBQlFJR0JXb0JBUUFBSlUwRUFRTURBbUlBQWdJbkFrNGJTN0FNVUZoQUhnQUdBQVVDQmdWcUFBRUJKVTBBQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0E1UVdFQWFBQVlBQlFJR0JXb0JBUUFBSlUwRUFRTURBbUlBQWdJbkFrNGJTN0FiVUZoQUhnQUdBQVVDQmdWcUFBRUJKVTBBQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRBSVFBQUFRWUJBQWFBQUFZQUJRSUdCV29BQVFFbFRRUUJBd01DWWdBQ0FpY0NUbGxaV1ZsQUVVbEhRMEU5UERzNk56VXdMaGdXQndnV0t4YzNJelkzTmpjeU5EYzJOeVluSmljbUp5WTFORGMyTXpJWEZoY1dGeFlmQVI0QkZ4WVhGaGMyUHdFMk56NEJNeklXRlFJSEJpTWlOVFEyTXhZek5pRVVCaU1pSmpVME5qTXlGcmtEQWc0VUlSY0JBUWtPVlRzbUxoUUlCeGdNRFI0TUZSSTVOZ01GQVFnUEJnUUNCd3NiRXdJTUJBSWFGUk1lRXJ0UmFrY2NGUTBiR1FGVEhSUVVIUjBVRkIxdEFRUU9GeDRDQVFrYUtIaE5oVHNTRFEwYkR3WVlNalNyVGdZRUF3a09CZ0lDQlFWRGdROWVYeFVjSEJYK0hLRkJNaE1lQVFNVUhSMFVGQjBkQUFBQ0FDYi9XUUpxQXJRQUZnQWlBQzlBTEFBRkFBUUZCR1VEQVFFQkFsOEFBZ0lpVFFZQkFBQWpBRTRCQUNFZkd4a1RFUTBLQmdRQUZnRVdCd2dXS3dVaUpqVVJJeUltTlRRMk15RXlGaFVVQmlzQkVSUUdGeFFHSXlJbU5UUTJNeklXQVVnVUhjRVRIUjBUQWVNVUhSMFV3UndkSFJRVUhSMFVGQjBHSEJRQ0tSd1VGQjBkRkJRYy9kY1VISEFVSFIwVUZCMGRBQUFBQUFMLy8vOVpBVGtDbGdBN0FFY0FUVUJLR3dFQ0F3Z0JCZ0VDVEFBREFnT0ZBQWtBQ0FrSVpRVUJBUUVDWVFRQkFnSWxUUWNCQmdZQVlRb0JBQUFzQUU0QkFFWkVRRDQzTlRJeEpTTWZIUmtYRVE4TENRQTdBVHNMQ0JZckZ5SXVBU2NtTlRRL0FTTWlKalUwTmpzQk5UUW5OVFEyTXpJV0Z4WVZNeklXRlJRR0t3RUdCeFFmQXg0QkZSY1dNekkrQVRNeUZ4WVZGQWNVQmlNaUpqVTBOak15RnV3U09EUUtFd1VDS0JRZEhSUXJBaDRURlJvQkEwa1RIUjBUVEFZQkJRTU1DUU1EQWdvSkJBZ0tCZzBQRmtRZEZCUWRIUlFVSFJVTVFTZEVkenc4SVIwVUZCMFVIaDhDRXhzY0ZDa29IUlFVSFZwYkxpNFBLeEVDQXdFQkJBRUNCd3dkTkdFVUhSMFVGQjBkQUFBQUFnQmQvMWtDYmdLeEFFa0FWUUNMUUFrNk9EVVNCQUlCQVV4THNCUlFXRUFaQUFVQUJBVUVaUU1CQVFFaVRRQUNBZ0JoQmdFQUFDd0FUaHRMc0JsUVdFQWRBQVVBQkFVRVpRQURBeUpOQUFFQklrMEFBZ0lBWVFZQkFBQXNBRTRiUUNBQUFRTUNBd0VDZ0FBRkFBUUZCR1VBQXdNaVRRQUNBZ0JoQmdFQUFDd0FUbGxaUUJNQkFGUlNUa3hDUUNRaURBb0FTUUZKQndnV0t3VWlKeVluSmpVMEp6UTJNeklXRnhZVkZCY1VGeFlYRkJjVUh3RVdGeFlYRmpJV016STNCekkyTXpjeU5qYzJOVFkzTkQ0Qk5UWTFKeVluTGdFMU5EYzJNeklXRnhZVkZBY0dCeFFHSXlJbU5UUTJNeklXQVhJcEo0Y2tHQUlkRkJRYkFRSUlIZ1lQQkJzQ0NCWVJFUUVGRWdVRUZBRUNBd0VTQVFFV0F6SU5BUUlJQVFnQ0FRSUlDeDRNSGdVUEt6NXVIUlFVSFIwVUZCMFVEekdrYUtOaU9CUWNIQlEyVklFNEpGa09HQUlFQlJnQkNBa0hBd0VCQkFFQ0N3RVdBd0pKY3dFRUJ3bEFUVEpDSGdJS0J3OFBGaEFVWWxxcmhMWmlGQjBkRkJRZEhRQUNBREwvV1FJbEFpRUFRQUJNQVFkTHNCUlFXRUFOTXhVUEJRUURBZ01CQUFNQ1RCdEFEVE1WRHdVRUF3SURBUUVEQWt4WlM3QVFVRmhBR2dBR0FBVUdCV1VFQVFJQ0pVMEFBd01BWVFFSEFnQUFMQUJPRzB1d0ZGQllRQjRBQmdBRkJnVmxBQVFFSzAwQUFnSWxUUUFEQXdCaEFRY0NBQUFzQUU0YlM3QXFVRmhBSWdBR0FBVUdCV1VBQkFRclRRQUNBaVZOQUFNREFXRUFBUUVtVFFjQkFBQXNBRTRiUzdBdFVGaEFKUUFDQkFNRUFnT0FBQVlBQlFZRlpRQUVCQ3ROQUFNREFXRUFBUUVtVFFjQkFBQXNBRTRiUUNVQUFnUURCQUlEZ0FBR0FBVUdCV1VBQXdNQllRQUJBU1pOQndFQUFBUmhBQVFFS3dCT1dWbFpXVUFWQVFCTFNVVkROelVpSVJNUkNnZ0FRQUZBQ0FnV0t3VWlKalUyTlFZSEJpTWlKeVkxTkRjK0FUTXlGaFVIQmhVVUZ4NEJGeFlYSGdFWE1qYzJQd0VqUHdFMk56WTNOalUwUHdFK0FUTXlGaFVIRkJZVkZBY0dCeFFHSXlJbU5UUTJNeklXQWU4U0h3WWhPekEzUUM5Z0N3RWJGUk1lQlFjWEJBWUZBUTBKRlNNSEJ4TU1EUUVXQVJVUEh3MEJBZ2tCR3hVVEhnRVFFeENsSFJRVUhSMFVGQjBkSEJReU1rSW5IaDlIeFRLVEZSd2NGVUUrUDE0NkNBd0dBZzBGQ2dFREJBa0pGZ0lmSUZaYkFRTUpBMjRWSEJ3Vk9FNldTb01WRDFrVUhSMFVGQjBkQUFBQUFnQU4vL01DVkFPK0FFWUFnUURSUzdBVVVGaEFFWDVSQWdZRlhRRUVCa0FsQ0FNQUFRTk1HMEFSZmxFQ0JnZGRBUVFHUUNVSUF3QUJBMHhaUzdBS1VGaEFKQWNCQlFZRmhRQUdCQWFGQUFRREJJVUtDQUlEQVFPRkFnRUJBU2hOQ1FFQUFDTUFUaHRMc0JSUVdFQWtCd0VGQmdXRkFBWUVCb1VBQkFNRWhRb0lBZ01CQTRVQ0FRRUJLRTBKQVFBQUpnQk9HMEFvQUFVSEJZVUFCd1lIaFFBR0JBYUZBQVFEQklVS0NBSURBUU9GQWdFQkFTaE5DUUVBQUNZQVRsbFpRQjFIUndFQVI0RkhnWHg3Yld4a1lscFlTa2szTlJjVkFFWUJSZ3NJRmlzRklpWW5OQ2NtTlRjbUp5WW5KaThCSmljbU5UUTJNeklmQVJZWEZoY1dNeFlmQVJZeUZ6NENOelkzUGdFME5qYzJOelkzTmpNeUZ4WVZGQWNHQndZUEFSUVdGUTRCRXlJbklpY21KelFuSmljaUJ3WVZCZ2NHSXlJbkpqVTBOelkzTmpNeUZ4WWZBUjRCRnhZek5ETStBemMrQVRjK0FUYzJNeFlWQmdjR0FUVVVIQUVDQWdFcUh5bzRJdzRCQkFVT0hSTVVEd1FrSWpnT0F3RVBFd0lNQmdJSUFRTUZKQ2tFQWdNQ0lSME1HZ3dlRFF3WUVUVkdPUzBCQlFFY1N3VU1TaHdJQ0JZUEdnVUVDUXNJQ3lNZERnY0NEaDhuTXpZMUp3d0lBZ1VCQ2dzRUFnVUJBZ0VLQVFFR0J4SU5EUzhGTHlFTkhSUTlQRFUwVGhJbE1HRStFUUVHQlE4VEZCME9CU28vWHc0RkZCQUJDUUVCQVFJREh6WUVBZ0lEQWl3dUREWVhCZzRjRVJ4ZVUwb1pQejU3UEJRZEF2RUNReGNFQWd3SUF3UUlBaFVXSkJrTERRWUhNU2NvSXhza0VRRUJBUUlDQXdRQ0FRSVNCQUlSSmdrR0JTMUROQ0lBQUFBQ0FCei9KUUgzQXlFQVBnQjVBZWhMc0JSUVdFQVJka2tDQ0FkVkFRWUlMQ2NMQXdNQUEwd2JRQkYyU1FJSUNWVUJCZ2dzSndzREF3QURURmxMc0FwUVdFQXVDUUVIQ0FlRkFBWUlCUWdHQllBTENnSUZBQWdGQUg0QUNBZ2lUUUVCQUFBbFRRUUJBd01DWWdBQ0FpY0NUaHRMc0F4UVdFQXlDUUVIQ0FlRkFBWUlCUWdHQllBTENnSUZBUWdGQVg0QUNBZ2lUUUFCQVNWTkFBQUFKVTBFQVFNREFtSUFBZ0luQWs0YlM3QU9VRmhBTGdrQkJ3Z0hoUUFHQ0FVSUJnV0FDd29DQlFBSUJRQitBQWdJSWswQkFRQUFKVTBFQVFNREFtSUFBZ0luQWs0YlM3QVVVRmhBTWdrQkJ3Z0hoUUFHQ0FVSUJnV0FDd29DQlFFSUJRRitBQWdJSWswQUFRRWxUUUFBQUNWTkJBRURBd0ppQUFJQ0p3Sk9HMHV3RzFCWVFEWUFCd2tIaFFBSkNBbUZBQVlJQlFnR0JZQUxDZ0lGQVFnRkFYNEFDQWdpVFFBQkFTVk5BQUFBSlUwRUFRTURBbUlBQWdJbkFrNGJTN0FmVUZoQU9RQUhDUWVGQUFrSUNZVUFCZ2dGQ0FZRmdBc0tBZ1VCQ0FVQmZnQUFBUU1CQUFPQUFBZ0lJazBBQVFFbFRRUUJBd01DWWdBQ0FpY0NUaHRBTkFBSENRZUZBQWtJQ1lVQUNBWUloUUFHQlFhRkN3b0NCUUVGaFFBQUFRTUJBQU9BQUFFQkpVMEVBUU1EQW1JQUFnSW5BazVaV1ZsWldWbEFIVDgvUDNrL2VYUnpaV1JjV2xKUVFrRTlQRHM2TnpVd0xoZ1dEQWdXS3hjM0l6WTNOamN5TkRjMk55WW5KaWNtSnlZMU5EYzJNeklYRmhjV0Z4WWZBUjRCRnhZWEZoYzJQd0UyTno0Qk16SVdGUUlIQmlNaU5UUTJNeFl6TmhNaUp5SW5KaWMwSnlZbklnY0dGUVlIQmlNaUp5WTFORGMyTnpZek1oY1dId0VlQVJjV016UXpQZ00zUGdFM1BnRTNOak1XRlFZSEJya0RBZzRVSVJjQkFRa09WVHNtTGhRSUJ4Z01EUjRNRlJJNU5nTUZBUWdQQmdRQ0J3c2JFd0lNQkFJYUZSTWVFcnRSYWtjY0ZRMGJHYzBGREVvY0NBZ1dEeG9GQkFrTENBc2pIUTRIQWc0Zkp6TTJOU2NNQ0FJRkFRb0xCQUlGQVFJQkNnRUJCZ2NTRFEwdkJTOGhiUUVFRGhjZUFnRUpHaWg0VFlVN0VnME5HdzhHR0RJMHEwNEdCQU1KRGdZQ0FnVUZRNEVQWGw4VkhCd1YvaHloUVRJVEhnRURBcjBDUXhjRUFnd0lBd1FJQWhVV0pCa0xEUVlITVNjb0l4c2tFUUVCQVFJQ0F3UUNBUUlTQkFJUkpna0dCUzFETkNJQUFBQUNBRC8vYmdKVkFyZ0FGZ0JWQUVaQUMwMHlIQTBLQlFZQUFRRk1TN0F0VUZoQURRTUJBQUVBaGdJQkFRRWlBVTRiUUJFREFRQUJBSVlBQWdJaVRRQUJBU0lCVGxsQURSZ1hQVHN0S3hkVkdGVUVDQllyQlRZL0FUWTNOQ2NtTHdFSEJoVVVGaFF5SGdJWEZoY3VBU2MwUHdFME15WW5KaThCSmljbU5UUTNOak15RnhZWEZoYzJQd0UyTnpRM1BnRXpNaGNXRlJRSEJnY0dGU01IRGdFSEJnY1ZNeGNXRlJRSEJnRlBDQUlDQmdJREJRa0dCZ29CQVFFQkFRSUdBeTFCQXk4QkFSNC9PeG9EQndvSEdBd01IQThlVlJvZEV4SVFSQ01CQ3gwYkRBMFlCdzhQQVFFR0tFa25BeEFCQTBNbUlURUNBUUVGQ0FZRkNnd0lEUmNMQXdFQkFRRUJBUUpoQWpjdk9rMEJBVHk5cDBFR0VoRU1EQnNRQnhrejlFOUxNVElxdVV3Q0FSb3dCdzRkREF3WEp3RUNFR1BIWUF3aUFRUkdOaklrSUFBQUFBQUNBRDMvYlFKVUFpOEFCd0EyQUZKQUN5MGVEZ3dFQWdZQUFnRk1TN0FtVUZoQUVBUUJBQVVCQVFBQlpRTUJBZ0lyQWs0YlFCUUFBd0lEaFFRQkFBVUJBUUFCWlFBQ0Fpc0NUbGxBRXdrSUFBQWtJaGtYQ0RZSk5nQUhBQWNHQ0JZckJUWTNKaWNHQnhZWElpY21OVFkzSmljbUp5WTFORGMyTXpJWEZoY1VGemMyTnpZek1oY1dGUlFIQmdjR0J4NENGeFlWRkFjR0FVMFRBUU1UREFRRkR6VWpIUWduSTBFOUpBY1pDd3diRVI1RFIxc3NNUThiREF3WkJ6RmFPd29CQXdFQlFDOGZNUUlTRHhjWUd3ZGlJeDhyUnp3OGk0RTdEQXdiRUFZWU1vc0NrSzFaVGhrSEVCc01ERkN3Y1JFQ0FnSUJRRHc0SXhnQUFBQUVBREgvV1FLR0E2TUFKd0F1QUVnQVZBRU5RQTQ4QVFZRktnRUVBUVFCQWdNRFRFdXdEMUJZUUMwTUFRVUdCWVVIQVFZQkJvVUxBUVFBQXdJRUEyZ0FDUUFJQ1FobEFBRUJLRTBBQWdJalRRb0JBQUFqQUU0YlM3QVFVRmhBTUF3QkJRWUZoUWNCQmdFR2hRQUNBd0FEQWdDQUN3RUVBQU1DQkFOb0FBa0FDQWtJWlFBQkFTaE5DZ0VBQUNNQVRodExzQlZRV0VBdERBRUZCZ1dGQndFR0FRYUZDd0VFQUFNQ0JBTm9BQWtBQ0FrSVpRQUJBU2hOQUFJQ0kwMEtBUUFBSXdCT0cwQXdEQUVGQmdXRkJ3RUdBUWFGQUFJREFBTUNBSUFMQVFRQUF3SUVBMmdBQ1FBSUNRaGxBQUVCS0UwS0FRQUFJd0JPV1ZsWlFDTXdMeWdvQVFCVFVVMUxRRDg1Tnk5SU1FZ29MaWd1SVNBY0d3MExBQ2NCSncwSUZpc1hJaWNtTlRRL0FUWVNOell6TWhjV0h3RVVNeGNXRnhZVkZBY0dJeUluSmljakJnOEJCZ2NHQVNZbkJnY0dCeE15SHdFV0ZSUUhCaU1pSnlZbkJnY0dJeUluSmpVMFB3RTJFeFFHSXlJbU5UUTJNeklXWWhzUEJ3SVZMMjVORHhza0Mxa3RCZ0VHUENZR0dBc05CZzBZYU9FZ0hoTUdFUXNCTENRakhCWVBEV0FURDJZWUJ3OGNEQXROQ2dGV0N3d0hCeVVaWlE4N0hSUVVIUjBVRkIwTEdRc05CZ2Mra3dFaGhoZ2s3bVlQQVJDSFRBd05HZzhIQXdYeVhGdzRFd29IQVhWWldqZzJJaU1DT1E5UER4c05DeGtIT2drQlFnY0NEU01hRUU0UCsrY1VIUjBVRkIwZEFBQUFBQVlBRGY5WkFpWURBd0FDQURjQU9nQmRBSGNBZ3dCb1FHVnJBUWNHUmtVQ0FBTmJMQThOQkFFQUEwd05BUVlIQm9VSUFRY0VCNFVBQXdBQUFRTUFhZ0FLQUFrS0NXVUFCQVFyVFFzQkFRRUNZUVVNQWdJQ0pnSk9YMTQ4T3dNRGdvQjhlbTl1YUdaZWQxOTNXRlpMU1VSQ08xMDhYUU0zQXpjZ0h3NElGaXMzTkNjWE5qYzJOekkxTmpjMk5UWTFMZ0VuTkNNbUp5WW5KaWNtSnlZbkppY0dJd2NHQndZSEJnY0dEd0VYRkJjVUZ4WVhGaDhCRmo4QkZRTW1KeVkxTkRjMk16SVhKelEzTmpNeUZ4WVhGaGN6RnhZVkZBWWpJaWNtSnc0QkF6SWZBUllWRkFjR0l5SW5KaWNHQndZaklpY21OVFEvQVRZVEZBWWpJaVkxTkRZek1oWndBWHdTRVNVZUFSUUxFUUlCQXdZQkF3d0RBZzhDQ2hNREFoOGpBZ2NZRFE4VEVCVUhBd0VCQVFzQ0RoZ0VDQk1TcmdHYmRFQW5XejVSU0VVREJ3b2VEUThlQmdRYkFRa05IQmNTRUI0TUltSVRFdzltR0FjUEhBd0xUUW9CVmdzTUJ3Y2xHV1VQVHgwVUZCMGRGQlFkekFNQmdBSUdFaVVCR1Jzb0Zna1NEQlVTQVFnU0F3UU9BUWdKQVFJTUFnRUhCUTBVRmlrZUZBSWFHaE1hQWdRZkV3SUdDUWl5QlFUKzdBVmhSVXlHWER3dUd3NE9GZ2NQeEtoS0VnMFhFaHdRS1RJeFBRTVREMDhQR3cwTEdRYzZDUUZDQndJTkl4b1FUZy84aHhRZEhSUVVIUjBBQXdCZi8xa0NNd09qQURBQVNnQldBRnRBV0Q0QkJ3WUJUQXdCQmdjR2hRZ0JCd0VIaFFBREFBUUZBd1JuQUFvQUNRb0paUUFDQWdGZkFBRUJJazBBQlFVQVh3c0JBQUFqQUU0eU1RRUFWVk5QVFVKQk96a3hTakpLS1NRaEh4c1pGeFVSRGdBd0FTME5DQllyRnlJbUp5WXZBVFEzTmpjME5qYzJNeUV5RmhVVUJpTWhCZ2N6TWhZVkZBWXJBUVlkQVRZM05qTXlGaFVVQmlNT0FSTXlId0VXRlJRSEJpTWlKeVluQmdjR0l5SW5KalUwUHdFMkV4UUdJeUltTlRRMk16SVdvaEVhQlJFQkFRZ0lBaFFRRHhjQlNCUWNIQlQrendJR3R4UWRIUlM5QkVWRVZGUVZIQndWVktkd0V3OW1HQWNQSEF3TFRRb0JWZ3NNQndjbEdXVVBLQjBVRkIwZEZCUWREQlFRRHhoZ2MzSjVlaEVhQkJNZEZCUWRZV0lkRkJRY1UxTTNBUU1FSFJRVUhBRUhBNjRQVHc4YkRRc1pCem9KQVVJSEFnMGpHaEJPRC92bkZCMGRGQlFkSFFBQUJBQVIvMWtDSHdNREFETUFZZ0I4QUlnQWJVQnFjQUVKQ0FGTUR3RUlDUWlGQ2dFSkFRbUZBQVVDQXdJRkE0QU9BUVlBQWdVR0FtY0FEQUFMREF0bEFBY0hBV0VBQVFFbFRRUUJBd01BWVEwQkFBQXNBRTVrWXpVMEFRQ0hoWUYvZEhOdGEyTjhaSHhQVFRSaU5XRXRLeWttSlNRU0R3a0hBRE1CTXhBSUZpc0ZJaWNtTlRZM05qTXlGeFlYRmhVVUlTSW5Id01WRmg4Q01oNEJGeFlYTWg4Qk1qY3lOVEkzTmpNeUZ4WVZGQWNHQXpJM05qTTBNelkzTXpRbk5DYzFKaWMxSmk4QkppOEJKaThCSWc4QkJnY2lCeU1HRHdFR0J4VVVJdzRCQnhZVE1oOEJGaFVVQndZaklpY21Kd1lIQmlNaUp5WTFORDhCTmhNVUJpTWlKalUwTmpNeUZnRS9nVjFRQm1kUlcyQkNRQThFL3ZkTVNnSUhEQWtSRlFVakFRUUVBUTRTQlFJZUV4TUZJRWdIQ0FzT0ZpUlpqVHc4QkFVQ0h4Y0JDZ0lKQndnS0FnME5CUkVSSUJZS0h4MGVBd01CQndZTURBWUJCQVFDVTBrVEQyWVlCdzhjREF0TkNnRldDd3dIQnlVWlpROU5IUlFVSFIwVUZCMFNZVnA0Z0VvME5EWlpEUTF5QkFjT0ZRd0JFeElFRkFJQkFRVUVBUUlDQVIwRENRNGJJQThrQVVVRkFRRURDZ3NiQXdJQkVnZ0JDZ2dDQ2dVQ0J3SUNBZ2dHRmdVR0J3d1NEQUVCQ2hNSEF3SFFEMDhQR3cwTEdRYzZDUUZDQndJTkl4b1FUZy84aHhRZEhSUVVIUjBBQkFBeC8xa0NoZ09qQUNjQUxnQkpBRlVCMFVBUFB6a0NCd1lxQVFRQkJBRUNBd05NUzdBUFVGaEFNUWdCQmdjSEJuQUFCdzBCQlFFSEJXb01BUVFBQXdJRUEyZ0FDZ0FKQ2dsbEFBRUJLRTBBQWdJalRRc0JBQUFqQUU0YlM3QVFVRmhBTkFnQkJnY0hCbkFBQWdNQUF3SUFnQUFIRFFFRkFRY0ZhZ3dCQkFBREFnUURhQUFLQUFrS0NXVUFBUUVvVFFzQkFBQWpBRTRiUzdBUlVGaEFNQWdCQmdjR2hRQUhEUUVGQVFjRmFnd0JCQUFEQWdRRGFBQUtBQWtLQ1dVQUFRRW9UUUFDQWlOTkN3RUFBQ01BVGh0THNCSlFXRUF4Q0FFR0J3Y0djQUFIRFFFRkFRY0ZhZ3dCQkFBREFnUURhQUFLQUFrS0NXVUFBUUVvVFFBQ0FpTk5Dd0VBQUNNQVRodExzQlZRV0VBd0NBRUdCd2FGQUFjTkFRVUJCd1ZxREFFRUFBTUNCQU5vQUFvQUNRb0paUUFCQVNoTkFBSUNJMDBMQVFBQUl3Qk9HMHV3RzFCWVFETUlBUVlIQm9VQUFnTUFBd0lBZ0FBSERRRUZBUWNGYWd3QkJBQURBZ1FEYUFBS0FBa0tDV1VBQVFFb1RRc0JBQUFqQUU0YlFEY0FDQVlJaFFBR0J3YUZBQUlEQUFNQ0FJQUFCdzBCQlFFSEJXb01BUVFBQXdJRUEyZ0FDZ0FKQ2dsbEFBRUJLRTBMQVFBQUl3Qk9XVmxaV1ZsWlFDVXdMeWdvQVFCVVVrNU1SRUkrUERnMkwwa3dTU2d1S0M0aElCd2JEUXNBSndFbkRnZ1dLeGNpSnlZMU5EOEJOaEkzTmpNeUZ4WWZBUlF6RnhZWEZoVVVCd1lqSWljbUp5TUdEd0VHQndZQkppY0dCd1lIRXlJbkpqVTBOell6TWhjVUZ4WXpNamMwTnpZek1oWVZGQWNHRXhRR0l5SW1OVFEyTXpJV1loc1BCd0lWTDI1TkR4c2tDMWt0QmdFR1BDWUdHQXNOQmcwWWFPRWdIaE1HRVFzQkxDUWpIQllQRFU1TElRa1dEUTBwQ0FJQ0VSNEVIUXNLRFNJc0pnY2RGQlFkSFJRVUhRc1pDdzBHQno2VEFTR0dHQ1R1Wmc4QkVJZE1EQTBhRHdjREJmSmNYRGdUQ2djQmRWbGFPRFlpSXdHRVJSVVpJQkVJS2c4R0RDRWhEUVVZR3owbElQeWNGQjBkRkJRZEhRQUdBQTMvV1FJbUF3WUFBZ0EzQURvQVhRQjRBSVFCYWtBVGJtZ0NDQWRHUlFJQUExc3NEdzBFQVFBRFRFdXdFRkJZUURRSkFRY0lDQWR3QUFNQUFBRURBR2tBQ3dBS0N3cGxEZ0VHQmdoaEFBZ0lJazBBQkFRclRRd0JBUUVDWVFVTkFnSUNKZ0pPRzB1d0VWQllRRE1KQVFjSUI0VUFBd0FBQVFNQWFRQUxBQW9MQ21VT0FRWUdDR0VBQ0FnaVRRQUVCQ3ROREFFQkFRSmhCUTBDQWdJbUFrNGJTN0FTVUZoQU5Ba0JCd2dJQjNBQUF3QUFBUU1BYVFBTEFBb0xDbVVPQVFZR0NHRUFDQWdpVFFBRUJDdE5EQUVCQVFKaEJRMENBZ0ltQWs0YlM3QWJVRmhBTXdrQkJ3Z0hoUUFEQUFBQkF3QnBBQXNBQ2dzS1pRNEJCZ1lJWVFBSUNDSk5BQVFFSzAwTUFRRUJBbUVGRFFJQ0FpWUNUaHRBTndBSkJ3bUZBQWNJQjRVQUF3QUFBUU1BYVFBTEFBb0xDbVVPQVFZR0NHRUFDQWdpVFFBRUJDdE5EQUVCQVFKaEJRMENBZ0ltQWs1WldWbFpRQ2RmWGp3N0F3T0RnWDE3YzNGdGEyZGxYbmhmZUZoV1MwbEVRanRkUEYwRE53TTNJQjhQQ0JZck56UW5GelkzTmpjeU5UWTNOalUyTlM0Qkp6UWpKaWNtSnlZbkppY21KeVluQmlNSEJnY0dCd1lIQmc4QkZ4UVhGQmNXRnhZZkFSWS9BUlVESmljbU5UUTNOak15RnljME56WXpNaGNXRnhZWE14Y1dGUlFHSXlJbkppY09BUU1pSnlZMU5EYzJNeklYRkJjV016STNORGMyTXpJV0ZSUUhCaE1VQmlNaUpqVTBOak15Rm5BQmZCSVJKUjRCRkFzUkFnRURCZ0VEREFNQ0R3SUtFd01DSHlNQ0J4Z05EeE1RRlFjREFRRUJDd0lPR0FRSUV4S3VBWnQwUUNkYlBsRklSUU1IQ2g0TkR4NEdCQnNCQ1EwY0Z4SVFIZ3dpWWhWTElRa1dEUTBwQ0FJQ0VSNEVIUXNLRFNJc0pnc2RGQlFkSFJRVUhjd0RBWUFDQmhJbEFSa2JLQllKRWd3VkVnRUlFZ01FRGdFSUNRRUNEQUlCQndVTkZCWXBIaFFDR2hvVEdnSUVIeE1DQmdrSXNnVUUvdXdGWVVWTWhsdzhMaHNPRGhZSEQ4U29TaElORnhJY0VDa3lNVDBDWVVVVkdTQVJDQ29QQmd3aElRMEZHQnM5SlNEOU9SUWRIUlFVSFIwQUFBQUFCUUEvLzFrQ3dRT2pBQUlBV3dCeEFJc0Fsd0JXUUZOL0FRWUZBVXdNQVFVR0JZVUhBUVlFQm9VQUNRQUlDUWhsQUFFQkJHRUFCQVFpVFFvQ0FnQUFBMkVMQVFNREl3Tk9jM0plWEFNRGxwU1Fqb09DZkhweWkzT0xhR1pjY1Y1eEExc0RXU3dxRkEwSUZ5c0JKeklETnpJM05qYzJOelUzTmo4Qk5qVTBOelkxSmljbUp6VW5KaWNqTlNjbUx3RW1KeU1uSmljbUx3RVBBUVlQQVFZUEFTSUhCZzhCQmc4Q0JnY0dGUThCRkI4QkZoOEJGaDhCTXhVWEZoOEJGaDhCRmhjekZqSWZBU2NpSnlZbkpqVTBOell6TWhZWEZoVVVEZ0VIQmdNeUh3RVdGUlFIQmlNaUp5WW5CZ2NHSXlJbkpqVTBQd0UyRXhRR0l5SW1OVFEyTXpJV0FnMEJBWG9LQ2ljbENoSVZDQklLQ3dvQkFnRUVCUW9JQ1F3QkJnOFFDU0FKQVFFVUp3NEJMUlVLRWhJQ0RBc0pBUUVORkFFREFnb05Cd1VKQVFJREJRb0lBd2dLQ3dFRERBNEdEeEFHRUJvREJ4QUVGUjFIUFRrbFExbE5oRW1xT0MwQlZVNUpiaE1QWmhnSER4d01DMDBLQVZZTERBY0hKUmxsRDE4ZEZCUWRIUlFVSFFJaEFmNDVBUTBTQ2c4WkFRb2VGUjhvQ0FJQkR4b2pEeG9aQWc4U0VRRUhFUTBHRlFJQkNBa0NBUUlDQWdNSEFRWUhCZ0lJR1FFREJBOGJFQkVpREFFeEdSZ2VKaElIRVJBUkFRUU9EQVVMQndNSEJBRUJZZ0VqSXpkb2dwbG5XVVplVTE0Q1lxa3pMQU9xRDA4UEd3MExHUWM2Q1FGQ0J3SU5JeG9RVGcvNzV4UWRIUlFVSFIwQUJBQWUvMWtDT1FNREFCWUFSQUJlQUdvQVdVQldVZ0VIQmlVQkFnTUNUQXdCQmdjR2hRZ0JCd0VIaFFBS0FBa0tDV1VFQVFNREFXRUFBUUVyVFFVQkFnSUFZUXNCQUFBc0FFNUdSUUVBYVdkallWWlZUMDFGWGtaZVJFTTBNakV3R0JjTENRQVdBUllOQ0JZckJTSW5KaWNtTlRRM05qTXlGeFlYRmhVVUJ3NEJCd1luTWo4Qk5qYzJOelF6TmpjME16Y21KelVuSmljMEl5WW5KaU1tSXlJSEZRNEJJd2NHQndZVkZCY1dGeFl6RXpJZkFSWVZGQWNHSXlJbkppY0dCd1lqSWljbU5UUS9BVFlURkFZaklpWTFORFl6TWhZQkdqczNTaUllTXp0b1ZVdGpMQllhSEdjN0pDMFFDd3BFSkF3UkFSVUdBUUVFQ2dFTkR3RXFPQ1lTREJvTUdBa0xBaEVQRHdNSER4NHhJd2dURDJZWUJ3OGNEQXROQ2dGV0N3d0hCeVVaWlE5Z0hSUVVIUjBVRkIwWkh6QlRTRXhvU2xFcU9XZ3lNamM0TjBrUUMySUJBUk1kQ1JNQkhTSURFREFWQWdFZEV3RTFGZzhDQndFRUNSSVBQaFVZR3lZNkp6SUN1UTlQRHhzTkN4a0hPZ2tCUWdjQ0RTTWFFRTRQL0ljVUhSMFVGQjBkQUFBQUFRQkQvL0FDR0FMRUFId0FYRUJaTXdvQ0JBSThDQUlGQkZNQkJ3VjNBUVlIQkV3QUFnTUVBd0lFZ0FBSEJRWUZCd2FBQUFRQUJRY0VCV2tBQXdNQllRQUJBU2hOQUFZR0FHRUlBUUFBSmdCT0FnQjBjbWhrUjBWQVBTSWdHUmdRRGdCOEFud0pDQllyQlNNaUp5WW5OVFEzSmljMU5EYzJNeklYRmhjV0ZSUUhCaU1pSnlZbklpY21Jd2NpQmdjaUZRY0dCdzRCSXc0QkJ3WVVCeGN6RmhjVkZ4VWZBVFl6TWg0QkZSUUhCaU1pSndjR0R3RUdGQWNHQndZUEFSUVhGUmNlQWhjZUFUTVhGaDhCRmpNZkFUYzJQd0l6TnpZL0FUWXpNaGNXRlJRSEJnY0dBVlFOYTFZOUJtRXBCeXhGaFVkREV3b0hHUXNMQndnZUlBVUNFaUlkQlRJWEFRSUhCQUVDQVFVR0FnRUJBZ0VCQXdnVUdpc3FFeWdjQ2hoWkZ4Z09EQW9MRFFFTENSa0ZBUU1FQVFFQkFRa1BBZ0VORFE0cURBVWdIUkVSQXhJQkNRTUNBdzRkSFE4SEF4VTJOQkJCT2xZRGQyRWhQUWxDTTB3V0J4RUxEQnNRQmdJS0JRRUNBZ3dRQVFFR0JRSUNDZ3dMQVFVQ0ZRUURBUWNCQ3dnR0Fod1VFUXdlQXdRR0J3a05BZ0VPRHlja0JoUUtBdzhCQXdRQkZCRUJDZ1VHRGdFQkFRTUdBUXNLQXdRR0hSZ0tEQWNJT0IwWkFBQUFBUUFWLytJQnh3SXBBRnNBbEVBVUpBRUNBeWdtQWdRQ0NnRUZCRmRDQWdZSEJFeExzQ3BRV0VBdUFBSURCQU1DQklBQUJ3VUdCUWNHZ0FBRUFBVUhCQVZwQUFNREFXRUFBUUVyVFFBR0JnQmhDQUVBQUN3QVRodEFLd0FDQXdRREFnU0FBQWNGQmdVSEJvQUFCQUFGQndRRmFRQUdDQUVBQmdCbEFBTURBV0VBQVFFckEwNVpRQmNCQUZSU1NVZzJOREF2SUIwWUZoRVBBRnNCV3drSUZpc0ZJaWNtSnlZMU5EYzJOeVkxTkRjMk16SVhGaFVVQmlNaUp5SW5KaWNpTlNjR0J3WVZCaFVVRnhRWE1oY3lGeDRDRlJRR0l5SUhCZ2NPQVFjVUl3WUhCaFVYRmhjV0h3RTNOakkzTmpjME5qYzJNeklYRmhVVUJ3NEJBUVk5TlVRcEVoMFhLQzhjTld0bVZRNGRGQlVLQVE0cUtRRWpHZ3NuQWdOWkJnRUdCUlVwSEJ3VVhCd05DUVVIQ2dFRUN4RUJFQWNQU1JRakFnUUJJaFFFQVE4aUd3OEhBaFptSGhRWE94NGlLekV0SGlFOUxTWkpRUTBURngwTkNSY0dBUUVFQkJjVkFnVUdCUkFSQVFFQkFSd1VGQjBPQmdZRkJBd0JCUlFmRUFVWEF3OFJBZ0VCQVFZVUFRVURLQmtNREFjR1BEWUFBQUFBQVFBVi8rSUJ4d0lwQUZzQWxFQVVPQUVHQlRZMEFnUUdVZ0VEQkJrRkFnSUJCRXhMc0NwUVdFQXVBQVlGQkFVR0JJQUFBUU1DQXdFQ2dBQUVBQU1CQkFOcEFBVUZCMkVBQndjclRRQUNBZ0JoQ0FFQUFDd0FUaHRBS3dBR0JRUUZCZ1NBQUFFREFnTUJBb0FBQkFBREFRUURhUUFDQ0FFQUFnQmxBQVVGQjJFQUJ3Y3JCVTVaUUJjQkFFMUxSa1E5UEM0c0tDWVVFd29JQUZzQld3a0lGaXNYSWlZbkpqVTBOell6TWhjZUFSVVdGeFl5SHdFM05qYzJQd0UwSnlZbklqVXVBU2NtSnlZaklpWTFORDRCTnpZek5qTTJOVFkxTkNjMEp5WW5CeFFqQmdjR0l3WWpJaVkxTkRjMk16SVhGaFVVQnhZWEZoVVVCd1lIQnRZOVpoWUNCdzhiSWc4QkJCUWlBUVFDSXhSSkR3Y1FBUkVMQkFFS0J3VUpEUnhjRkJ3Y0tSVUZCZ0VHV1FNQ0p3c2FJd0VwS2c0QkNoVVVIUTVWWm1zMUhDOG9GeDBTS1VRMUhqWThCZ2NNREJrb0F3VUJGQVlCQVFFQ0VROERGd1VRSHhRRkFRd0VCUVlHRGgwVUZCd0JBUUVCRVJBRkJnVUNGUmNFQkFFQkJoY0pEUjBYRXcxQlNTWXRQU0VlTFRFckloNDdGeFFBQUFBQUFmLzYvKzBCSFFMTEFEQUFWRUFLSVFFQ0F3d0JBQUVDVEV1d01WQllRQllFQVFJR0JRSUJBQUlCYVFBREF5aE5BQUFBTEFCT0cwQVdCQUVDQmdVQ0FRQUNBV2tBQXdNQVlRQUFBQ3dBVGxsQURnQUFBREFBTHlzWEpDWW1Cd2diS3hNV0Z4WVhEZ0VqSWlZbkppY21KeU1pSmpVME5qc0JKalUwTnpZM05qTVhGaFVVQmc4QkJoVVVGek15RmhVVUJpUENBUUVKQVFFY0ZCUWNBUUVJQVFFM0ZCd2NGREVDRlFVU0RBME1Jd0lJQWdZQ01CUWNIQlFCRHcwT2Eyd1VIQndVYW1zUERoMFVGQjB6TTJsb0V3b0dBUXdrQmcwdUVqWk1IelVkRkJRZEFBQUFBdi93Ly9FQkV3TENBQXNBT2dCRlFFSVdBUUlEQVV3R0FRUUpCd0lEQWdRRGFRZ0JBQUFCWVFBQkFTaE5BQVVGSzAwQUFnSW1BazRNREFFQUREb01PVFV6TGl3b0ppSWdIQnNIQlFBTEFRc0tDQllyRXlJbU5UUTJNeklXRlJRR0V4WWZBaFFYRmhjV0ZSUUdCd1lqSWlZbkppY2pJaVkxTkRZN0FTWTFORFl6TWhZZEFSUVhNeklXRlJRR0kzOFVIUjBVRkIwZEhnSURCZ0lCQVFJQkRoVUdCUTBmQlE4Rk1CUWNIQlFzQWgwVUZCMENOUlFjSEJRQ1lCMFVGQjBkRkJRZC9uZ2lJVG9PQXdNTURRWUdEUndIQVE4VVpHQWNGQlFkV2x3VUhSMFVORU0vSFJRVUhBQUFBQUFCQUNiLytnSnFBclFBS0FBdlFDd0dBUUlJQndJQkFBSUJhUVVCQXdNRVh3QUVCQ0pOQUFBQUl3Qk9BQUFBS0FBbklTUTBJU1FqSXdrSUhTc0JGUlFHSXlJbVBRRWpJaVkxTkRZN0FUVWpJaVkxTkRZeklUSVdGUlFHS3dFVk16SVdGUlFHSXdGNEhCUVVIVEFVSFIwVU1NRVRIUjBUQWVNVUhSMFV3VEVVSEJ3VUFRL2xGQndjRk9VZEZCUWQ0aHdVRkIwZEZCUWM0aDBVRkIwQUFBQUFBZi8vLytzQk9RS1dBRXNBUzBCSU9BRUdCeVVCQkFVQ1RBQUhCZ2VGQ2dFRURBc0NBd0FFQTJrSkFRVUZCbUVJQVFZR0pVMEJBUUFBQW1FQUFnSXNBazRBQUFCTEFFcEdSRUpBSkNZa0l5UWxKQ01hRFFnZkt6Y1dId01lQVJVWEZqTXlQZ0V6TWhjV0ZSUWpJaTRCSnlZbkl5SW1OVFEyT3dFMlB3RWpJaVkxTkRZN0FUVTBKelUwTmpNeUZoY1dGVE15RmhVVUJpc0JCZ2N6TWhZVkZBWWp0QUVEQXd3SkF3TUNDZ2tFQ0FvR0RROFdUUkk0TkFvTkJDTVVIUjBVSVFFRUFpZ1VIUjBVS3dJZUV4VWFBUU5KRXgwZEUwd0VBajRVSFIwVTJCc2JEeXNSQWdNQkFRUUJBZ2NNSFRRTVFTY3dTUndVRkIwdExDRWRGQlFkRkI0ZkFoTWJIQlFwS0IwVUZCMDlQUjBVRkJ3QUFnQTcvL2dDeHdMQkFFQUFSZ0RuUUFzeEFRUUZHaFlDQVFvQ1RFdXdFbEJZUUNNSUJnSUVEUXNNQ1FRRENnUURhUUFLQUFFQUNnRm5Cd0VGQlNKTkFnRUFBQ01BVGh0THNCUlFXRUFuQ0FZQ0JBMExEQWtFQXdvRUEya0FDZ0FCQUFvQlp3QUhCeWhOQUFVRklrMENBUUFBSXdCT0cwdXdKbEJZUUNzSUJnSUVEUXNNQ1FRRENnUURhUUFLQUFFQUNnRm5BQWNIS0UwQUJRVWlUUUFBQUNOTkFBSUNJd0pPRzBBckNBWUNCQTBMREFrRUF3b0VBMmtBQ2dBQkFBb0Jad0FGQlNKTkFBQUFCMkVBQndjb1RRQUNBaU1DVGxsWldVQWFRVUVBQUVGR1FVWkVRd0JBQUQ4a0ZCVWtKQ3NqRkNVT0NCOHJBUllWRUFjR0l5SW1OVFkzSlJBSEJpTXVBVDBCTmpVbU5UUTNORGNqSWlZMU5EWTdBVFEzUGdFekhnRWRBUVlWSVNjMU5EWXpGaGNXRnpNeUZoVVVCaU1oQmhVRk5DY0Nod0VhRFJNV0hBY0QvcThiRGhVVUd3d0ZCUUVKRkIwZEZBd0JBUjBVRlJvQkFVY0VIeFFWREF3R0ZCUWRIUlQrUVFFQlVBRUIvaTA0L280V0RSNFZqNDhLL3I4WkRRRWNFd09vcVFrTEVBa3FLeDBVRkIwVEVoVWFBUndUQXhBUk1nSVRHZ0lPRGtNZEZCUWRIeDRLSkNNQUFmLzQvL01DSFFMNkFGa0FwRUFMQVFFQ0FEZ1RBZ0VDQWt4THNDUlFXRUFqQ1FnQ0JBUUZZUWNCQlFVaVRRQUNBZ0JoQUFBQUswMEFCZ1lCWVFNQkFRRWpBVTRiUzdBbVVGaEFJUUFBQUFJQkFBSnBDUWdDQkFRRllRY0JCUVVpVFFBR0JnRmhBd0VCQVNNQlRodEFKUUFBQUFJQkFBSnBDUWdDQkFRRllRY0JCUVVpVFFBQkFTTk5BQVlHQTJFQUF3TW1BMDVaV1VBWEFBQUFXUUJZVkZKUFRVcElSRUkvUFNzb0tpSUtDQmdyRXhVMk16SVhGaGNXRlJRR0ZRNEJJeUltSnpjMk5UUXZBaVluTlNjbUp5WXZBU1luSmljaUppTUhJd1lQQVFZUEFRWUhJaDBCQmdjVUJ3TVVCaU1pSmpVUkl5SW1OVFEyT3dFMU5EWXpNaFlkQVRNeUZoVVVCaU91TnpzaEk0VWxEd1VCSEJRVUhBRURBd01CQWdnSUJ3d0dCQm9FQ2hJS0VBRUdDQWdNRWdrWENBc0ZCd1VCQ1FJQkFSMFVGQjBqRkIwZEZDTWRGQlFkUFJRY0hCUUNUMFFrQ3pXTVBVb3RXaXNWSEJ3VlZpY21RZzRFRGljU0FRNFdCZ2tXQWdnSUJRTUNBUVFFRFFZTkJnd0xBUUVWRXdJQi9zZ1VIQndVQWl3ZEZCUWRHQlFkSFJRWUhSUVVIUUFBQUFJQUdQL3NBcTBDc1FBN0FGc0FuN1ltSkFJQ0F3Rk1TN0FVVUZoQUh3WUVBZ0lMQ1FvSEJBRUlBZ0ZwQlFFREF5Sk5BQWdJQUdFQUFBQXNBRTRiUzdBWlVGaEFJd1lFQWdJTENRb0hCQUVJQWdGcEFBVUZJazBBQXdNaVRRQUlDQUJoQUFBQUxBQk9HMEFtQUFNRkFnVURBb0FHQkFJQ0N3a0tCd1FCQ0FJQmFRQUZCU0pOQUFnSUFHRUFBQUFzQUU1WldVQVlQRHdBQUR4YlBGdE9UQUE3QURvbUt4WW1KQ1VqREFnZEt3RUdCd1lqSWljbUp5WW5JeUltTlRRMk93RW1OVFFuTkRZek1oWVhGaFVVRnlFMk5TY21KeTRCTlRRM05qTXlGaGNXRlJRSE16SVdGUlFHSXlFV0Z4WVhGQmNVSHdFV0Z4WVhGaklXTXpJM0J6STJNemN5TmpjMk5UWTNBbDRLRVQ2VEtTZUhKQWNGSXhRY0hCUWFBd0lkRkJRYkFRSURBVVlFQVFnQ0FRSUlDeDRNSGdVUEJCTVVIQndVL2s4SEV3WVBCQnNDQ0JZUkVRRUZFZ1VFRkFFQ0F3RVNBUUVXQXlrUUFRODVOTFlQTWFRZEloMFVGQjB4T1dJNEZCd2NGRFpVU1RFd056SkNIZ0lLQnc4UEZoQVVZbG95TGgwVUZCMGpOdzRZQWdRRkdBRUlDUWNEQVFFRUFRSUxBUllEQWp4WkFBQUFBQUwvK3YvakFsMENJUUErQUZVQkwwdXdGRkJZUUJBdUl4MERBd1FMQVFrQ0NRRUFDUU5NRzBBUUxpTWRBd01FQ3dFSkFna0JBUWtEVEZsTHNCQlFXRUFnQndVQ0F3d0tDd2dFQWdrREFta0dBUVFFSlUwQUNRa0FZUUVCQUFBc0FFNGJTN0FVVUZoQUpBY0ZBZ01NQ2dzSUJBSUpBd0pwQUFZR0swMEFCQVFsVFFBSkNRQmhBUUVBQUN3QVRodExzQ3BRV0VBb0J3VUNBd3dLQ3dnRUFna0RBbWtBQmdZclRRQUVCQ1ZOQUFrSkFXRUFBUUVtVFFBQUFDd0FUaHRMc0MxUVdFQXJBQVFHQXdZRUE0QUhCUUlEREFvTENBUUNDUU1DYVFBR0JpdE5BQWtKQVdFQUFRRW1UUUFBQUN3QVRodEFLd0FFQmdNR0JBT0FCd1VDQXd3S0N3Z0VBZ2tEQW1rQUNRa0JZUUFCQVNaTkFBQUFCbUVBQmdZckFFNVpXVmxaUUJrL1B3QUFQMVUvVlVsSUFENEFQU1VwRlNRa0l5Y2xEUWdlS3lVV0ZSUUhCaU1pSmpVMk5RWUhCaU1pSnlZbkl5SW1OVFEyT3dFMk56NEJNeklXRlFjR0J5RTJOelkxTkQ4QlBnRXpNaFlWQnhRWE16SVdGUlFHSXlFV0Z4NEJGeFlYSGdFWE1qYzJQd0VqUHdFMk56WTNBaU1DRXhBVEVoOEdJVHN3TjBBdlR3NExGQndjRkFrQ0NBRWJGUk1lQlFZQkFRc0dCQUVDQ1FFYkZSTWVBUVVURkJ3Y0ZQNXFCZzBFQmdVQkRRa1ZJd2NIRXd3TkFSWUJGUThFQk5nbko0TVZEeHdVTWpKQ0p4NGZPbzhjRkJRZE9HOFZIQndWUVRNekhCMEJBd2tEYmhVY0hCVTRRVDRkRkJRY0xTRUlEQVlDRFFVS0FRTUVDUWtXQWg4Z0N3d0FCQUFxLzlBREFnTGdBQ1FBU3dCeUFIVUE0YkVHWkVSTHNDMVFXRUFTS2dFREJFZ0JBZ2QwQVFnQ1pRRUdDQVJNRzBBU0tnRURCRWdCQWdkMEFRZ0NaUUVLQ0FSTVdVdXdMVkJZUURrQUFRUUJoUUFFQXdTRkFBTUhBNFVMQVFJSENBY0NDSUFBQUFVQWhnQUhBZ1VIV1EwS0FnZ0pBUVlGQ0FacUFBY0hCV0VNQVFVSEJWRWJRRDhBQVFRQmhRQUVBd1NGQUFNSEE0VUxBUUlIQ0FjQ0NJQUFDQW9IQ0FwK0FBQUZBSVlBQndJRkIxa05BUW9KQVFZRkNnWnFBQWNIQldFTUFRVUhCVkZaUUNSemMwMU1KaVZ6ZFhOMWIyNW9aMTVjVkZCTWNrMXlQRHN1TENWTEprc2NHaVlPQ0JjcnNRWUFSQUVIQmdjR0J3WWpJaWNtTlRRM05qUXpOd2MzTmpjMk56WTNOak15RnhZVkZBY1VCd1lCSWlZbk5EY09BU01pSmpVME56WS9Bak0zUGdFM01oY1dGeFFQQVFZVkJoVVBBUlVVQmdFaUppYzNKeVlqSmljbU5UUTNOamMyTXpJWEZoY1dGUlFIUHdFeUZ4WVZGQTRCQnhVT0FTYzNCd0lCQWlNOUxrY05IUTBNR0FZQkFRWURBeVJBQVFJdFNnd2ZEUXNYQmdFSC9yZ1VIQUVRRHlJVEZCd05IaUVoQmdFQ0R4Z1JFd3dYQVJBQkN3RUJBUjRCc3hRY0FRRXNJeU1jRGdZR05Id1JFZ3dORmdJREF3Y01EUThXRUNnVUFSdytBaGdDZHdaTzJyV3NHQVlPR3c0TUFRSU9CUWRKN1FZRnM2Z1lCdzRiRFF3Q0FRNyt1QjBVT3pnS0hSd1lFZzBaRnhjRkFnd1pBZ1lQRzBVM0J5NEhBZ01FQ0JzVUhmN21IQlVZQVFJQkdBd01EQXhUY1E0R0R4c2lJeUlpQVFFSERCME1IZ2tCR3hVY3F4a1lBQU1BS3YvUUF2RUM0QUFrQUVzQWlBRFNzUVprUkVBWUtnRURCRWdCQ1FOOGNtbGxYMTRHQ0FKK1RnSUZCd1JNUzdBaVVGaEFQd0FFQVFNQkJBT0FBQU1KQVFNSmZnQUpBZ0VKQW40TEFRSUlBUUlJZmdBQUJRQ0dBQUVBQ0FjQkNHa0tBUWNGQlFkWkNnRUhCd1ZpQmd3Q0JRY0ZVaHRBUXdBRUFRTUJCQU9BQUFNSkFRTUpmZ0FKQWdFSkFuNExBUUlJQVFJSWZnQUFCUUNHQUFFQUNBb0JDR2tBQ2djRkNsa0FCd1VGQjFrQUJ3Y0ZZZ1lNQWdVSEJWSlpRQ0JOVENZbGdvRjRkbkJ1V0ZaUlQweUlUWWc4T3k0c0pVc21TeHdhSmcwSUZ5dXhCZ0JFQVFjR0J3WUhCaU1pSnlZMU5EYzJORE0zQnpjMk56WTNOamMyTXpJWEZoVVVCeFFIQmdFaUppYzBOdzRCSXlJbU5UUTNOajhDTXpjK0FUY3lGeFlYRkE4QkJoVUdGUThCRlJRR0FTSW5CaU1pSmpVME56WXpNaGMyUHdFMk56VWpKeVlqTlNjSElnOEJGaFVVQndZaklpWTFORFkzTmpNeUZ4WWRBUVlITnpZek1oY1dGUlFIQmdJQkFpTTlMa2NOSFEwTUdBWUJBUVlEQXlSQUFRSXRTZ3dmRFFzWEJnRUgvcmdVSEFFUUR5SVRGQndOSGlFaEJnRUNEeGdSRXd3WEFSQUJDd0VCQVI0QmpoTVVDd3NZTUJRTkVBNE5Dd1FQQ3dVQkFRSUNFUU1GQ1FjRkdBd01IUnNGR2lvMUpCNDBCUmNZQmdjTUR4WUpFd0ozQms3YXRhd1lCZzRiRGd3QkFnNEZCMG50QmdXenFCZ0hEaHNOREFJQkR2NjRIUlE3T0FvZEhCZ1NEUmtYRndVQ0RCa0NCZzhiUlRjSExnY0NBd1FJR3hRZC92WUNBaFlnRnc4S0FRc0dIQndjRmdJQ0FRSUJBd1FMQ3hvUUJ6QVpCeVlYSXhFaFB3bzBOQVlDQ0F3ZERRNGhBQUFBQkFBVi85QURBZ0xnQUQ0QVl3Q0tBSTBCR2JFR1pFUkxzQzFRV0VBU053RUdCQlFCQWdHTUFRMEFmUUVMRFFSTUcwQVNOd0VHQkJRQkFnR01BUTBBZlFFUERRUk1XVXV3TFZCWVFFOEFDUWNKaFFBR0JBTUVCZ09BQUFFREFnTUJBb0FBQ0FvSWhnQUhBQVVFQndWcEFBUUFBd0VFQTJrQURBQUtERmtBQWhBQkFBMENBR2tTRHdJTkRnRUxDZzBMYWdBTURBcGhFUUVLREFwUkcwQldBQWtIQ1lVQUJnUURCQVlEZ0FBQkF3SURBUUtBQUEwQUR3QU5ENEFBQ0FvSWhnQUhBQVVFQndWcEFBUUFBd0VFQTJrQURBQUtERmtBQWhBQkFBMENBR2tTQVE4T0FRc0tEd3RxQUF3TUNtRVJBUW9NQ2xGWlFDK0xpMlZrQVFDTGpZdU5oNGFBZjNaMGJHaGtpbVdLVzFsSFJUSXdLeWtsSkNJaEhSc1FEUWtIQUQ0QlBoTUlGaXV4QmdCRUV5SW5KalUwTnpZek1oY3pGaGN5RnpNMk1qOEJORFkzSnpVdkFTTWlKalUwTmpNdkFTSVBBUTRCSXlJbU5UUStBVE15RnhZVkZBY1ZGeFlWRkFjR0FRY0dCd1lIQmlNaUp5WTFORGMyTkRNM0J6YzJOelkzTmpjMk16SVhGaFVVQnhRSEJoTWlKaWMzSnlZakppY21OVFEzTmpjMk16SVhGaGNXRlJRSFB3RXlGeFlWRkE0QkJ4VU9BU2MzQjYwek54Z0dEeG9ORFFFTEh3VUNEUUVEQndZQkFRWUhDQW9ZSEIwV0JRME1CUTBESFJFVkd5ZzZIVE1pS2drQ0d3MG1BUTBDSXowdVJ3MGREUXdZQmdFQkJnTURKRUFCQWkxS0RCOE5DeGNHQVFkK0ZCd0JBU3dqSXh3T0JnWTBmQkVTREEwV0FnTURCd3dORHhZUUtCUUJIRDRDR0FGREd3c2ZEUXdYQmdjR0FRRUNCUUVCQVFVQkF3TWRGQlFkQVFFQ0F4RVhJQllkS2hFVUh6SVVFUUVCSUNRWUdqc0JOQVpPMnJXc0dBWU9HdzRNQVFJT0JRZEo3UVlGczZnWUJ3NGJEUXdDQVE3OW5od1ZHQUVDQVJnTURBd01VM0VPQmc4YklpTWlJZ0VCQnd3ZERCNEpBUnNWSEtzWkdBQUJBRXYvOVFJRUFqUUFMZ0IwUzdBbVVGaTNLUnNOQXdBQkFVd2J0eWtiRFFNQUFnRk1XVXV3RzFCWVFBNENBUUVCSzAwREJBSUFBQ01BVGh0THNDWlFXRUFPQWdFQkFRQmhBd1FDQUFBakFFNGJRQmtBQVFFQVlRTUVBZ0FBSTAwQUFnSUFZUU1FQWdBQUl3Qk9XVmxBRHdFQUpDSVVFZ2tIQUM0QkxnVUlGaXNYSWlZMUFqVTBOak15RmhVVUZ6WTNOamMyTnpJV0Z4UUhCZzhCRmg4QkZoY1VCaU1pTHdFbUx3RUdJeFVVQm4wVUhBSWNGQlFkQWljbVZXQVFFeFFjQVE5Z1ZSMWhUZzROQVIwV0V3MFBaejRKTGdJZEN4MFVBVXFURkIwZEZKVk1LQ2xkVVEwQkhCUVZEbEZlSGxCakVSQVRFeDBPRVgwdkJpeDNGQjBBQVFBTS8vMENMQUt3QUQ4QWZFdXdFRkJZUUFvMkFRUUZBd0VBQXdKTUcwQUtOZ0VFQlFNQkFRTUNURmxMc0JCUVdFQWNCZ0VFQ0FjQ0F3QUVBMmtBQlFVaVRRRUJBQUFDWVFBQ0FpTUNUaHRBSXdBQkF3QURBUUNBQmdFRUNBY0NBd0VFQTJrQUJRVWlUUUFBQUFKaEFBSUNJd0pPV1VBUUFBQUFQd0ErSmlZa0ppY1ZLd2tJSFNzVEZSWVhGQmNlQVRNV0Z4WXpNamMrQVQ4Qk1oY1dGUlFHQndZaklpY21KeVk5QVNNaUpqVTBOanNCTmpjMk56UTJNeklXRlFZSEJnY3pNaFlWRkFZanhRSUNDZ0VNQWdVTUdFd3RNUTRjRHdzT0RoY1FGR3BSU1VSRURnc21GQjBkRkNzR0JRWUNIQlFVSFFFS0JBTTFGQndjRkFFUEh5UVJEQnNIRXdVRkVBWURBd01CQ0FzZURCNEVGQjhvVERrM0R4MFVGQjFwTlRnNEZCMGRGRTlQUWk0ZEZCUWRBQUgvNi8vNEFROEM2QUF1QUZOTHNCMVFXRUFiQlFFREJ3WUNBZ0FEQW1rQUJBUWtUUUFBQUFGaEFBRUJJd0ZPRzBBYkFBUURCSVVGQVFNSEJnSUNBQU1DYVFBQUFBRmhBQUVCSXdGT1dVQVBBQUFBTGdBdEl5TWtKRFFxQ0FnY0t6Y1dGVE1YSXhZekp4WVhGaklXRlJRR0t3RWlKeVk5QVNNaUpqVTBOanNCRVRRMk16SVdGUkV6TWhZVkZBWWpvQUVCQWdFREFnRUVDUUlySEJ3VkN5c2xNeUlVSFIwVUloMFVGQjArRkIwZEZOaHpBd0lEQVFJQkFoMFVFeDBVSVVka0hCUVVIUUYrRkIwZEZQNkNIUlFVSEFBQUFRQU9BZUlBcXdMV0FCd0FOTEVHWkVSQUtSa0JBQUVCVEFNQkFBRUFoZ0FDQVFFQ1dRQUNBZ0ZoQUFFQ0FWRUJBQlVVRUE4QUhBRWNCQWdXSzdFR0FFUVRJaWNtTlRRL0FUSTJOVFkxTkNjaUxnRTFORFl6RmhjV0ZRWUhCajRhRHdjWURnSVJCQWNCRUJ3YkZqSWdFUWxLRFFIaUdBc05IQTRKRWdjSkJRZ0JBUmtXRWg4RktCa29WaW9HQUFBQUFRQU9BZUlBcXdMV0FCd0FOTEVHWkVSQUtSa0JBUUFCVEFNQkFBRUFoUUFCQWdJQldRQUJBUUppQUFJQkFsSUJBQlVVRUE4QUhBRWNCQWdXSzdFR0FFUVRNaGNXRlJRUEFTSUdGUVlWRkJjeUhnRVZGQVlqSmljbU5UWTNObnNhRHdjWURnSVJCQWNCRUJ3YkZqSWdFUWxLRFFMV0dBc05IQTRKRWdjSkJRZ0JBUmtXRWg4RktCa29WaW9HQUFBQUF3QXgvL1VDaGdOU0FDY0FMZ0E2QU5OQUNpb0JCQUVFQVFJREFreExzQTlRV0VBaUFBWUFCUUVHQldrSUFRUUFBd0lFQTJnQUFRRW9UUUFDQWlOTkJ3RUFBQ01BVGh0THNCQlFXRUFsQUFJREFBTUNBSUFBQmdBRkFRWUZhUWdCQkFBREFnUURhQUFCQVNoTkJ3RUFBQ01BVGh0THNCVlFXRUFpQUFZQUJRRUdCV2tJQVFRQUF3SUVBMmdBQVFFb1RRQUNBaU5OQndFQUFDTUFUaHRBSlFBQ0F3QURBZ0NBQUFZQUJRRUdCV2tJQVFRQUF3SUVBMmdBQVFFb1RRY0JBQUFqQUU1WldWbEFHU2dvQVFBNU56TXhLQzRvTGlFZ0hCc05Dd0FuQVNjSkNCWXJGeUluSmpVMFB3RTJFamMyTXpJWEZoOEJGRE1YRmhjV0ZSUUhCaU1pSnlZbkl3WVBBUVlIQmdFbUp3WUhCZ2NURkFZaklpWTFORFl6TWhaaUd3OEhBaFV2YmswUEd5UUxXUzBHQVFZOEpnWVlDdzBHRFJobzRTQWVFd1lSQ3dFc0pDTWNGZzhOaHgwVUZCMGRGQlFkQ3hrTERRWUhQcE1CSVlZWUpPNW1Ed0VRaDB3TURSb1BCd01GOGx4Y09CTUtCd0YxV1ZvNE5pSWpBYmNVSFIwVUZCMGRBQUFGQUEzLzd3SW1BcklBQWdBM0FEb0FYUUJwQUZGQVRrWkZBZ0FEV3l3UERRUUJBQUpNQUFNQUFBRURBR2tBQmdZSFlRQUhCeUpOQUFRRUswMElBUUVCQW1FRkNRSUNBaVlDVGp3N0F3Tm9abUpnV0ZaTFNVUkNPMTA4WFFNM0F6Y2dId29JRmlzM05DY1hOamMyTnpJMU5qYzJOVFkxTGdFbk5DTW1KeVluSmljbUp5WW5KaWNHSXdjR0J3WUhCZ2NHRHdFWEZCY1VGeFlYRmg4QkZqOEJGUU1tSnlZMU5EYzJNeklYSnpRM05qTXlGeFlYRmhjekZ4WVZGQVlqSWljbUp3NEJFeFFHSXlJbU5UUTJNeklXY0FGOEVoRWxIZ0VVQ3hFQ0FRTUdBUU1NQXdJUEFnb1RBd0lmSXdJSEdBMFBFeEFWQndNQkFRRUxBZzRZQkFnVEVxNEJtM1JBSjFzK1VVaEZBd2NLSGcwUEhnWUVHd0VKRFJ3WEVoQWVEQ0ppS0IwVUZCMGRGQlFkekFNQmdBSUdFaVVCR1Jzb0Zna1NEQlVTQVFnU0F3UU9BUWdKQVFJTUFnRUhCUTBVRmlrZUZBSWFHaE1hQWdRZkV3SUdDUWl5QlFUKzdBVmhSVXlHWER3dUd3NE9GZ2NQeEtoS0VnMFhFaHdRS1RJeFBRS1JGQjBkRkJRZEhRQUFBQUFCQUNFQmVnRUdBcjhBSmdBdVFDc0ZBUUVDSXdFQUFRSk1BQUVDQUFJQkFJQUFBZ0l5VFFNQkFBQXpBRTRCQUJjV0NRY0FKZ0VtQkFrV0t4TWlKaWMwTnc0Qkl5SW1OVFEzTmo4Q016YytBVGN5RnhZWEZBOEJCaFVHRlE4QkZSUUd0aFFjQVJBUEloTVVIQTBlSVNFR0FRSVBHQkVUREJjQkVBRUxBUUVCSGdGNkhSUTdPQW9kSEJnU0RSa1hGd1VDREJrQ0JnOGJSVGNITGdjQ0F3UUlHeFFkQUFFQUR3R0RBVDBDeXdBOEFFdEFTREFtSFJrVEVnWURCRElCQUFJQ1RBQURCQVVFQXdXQUFBUUVNazBBQlFVQVlRRUdBZ0FBTTAwQUFnSUFZUUVHQWdBQU13Qk9BZ0EyTlN3cUpDSU1DZ1VEQUR3Q1BBY0pGaXNUSWljR0l5SW1OVFEzTmpNeUZ6WS9BVFkzTlNNbkppTTFKd2NpRHdFV0ZSUUhCaU1pSmpVME5qYzJNeklYRmgwQkJnYzNOak15RnhZVkZBY0dyQk1VQ3dzWU1CUU5FQTROQ3dRUEN3VUJBUUlDRVFNRkNRY0ZHQXdNSFJzRkdpbzFKQjQwQlJjWUJnY01EeFlKRXdHRUFRSVhIeGNQQ2dFTUJSd2NIQllDQWdFQ0FRTUVDd3NaRVFZdkdnWW1GeU1SSUQ4TE5EUUdBZ2dNSFF3UElBQUFBUUFmQVlrQk1RTEdBRDRBVWtCUE53RUdCQlFCQWdFQ1RBQUdCQU1FQmdPQUFBRURBZ01CQW9BQUJBQURBUVFEYVFBRkJRZGhBQWNITWswQUFnSUFZUWdCQUFBekFFNEJBREl3S3lrbEpDSWhIUnNRRFFrSEFENEJQZ2tKRmlzVElpY21OVFEzTmpNeUZ6TVdGeklYTXpZeVB3RTBOamNuTlM4Qkl5SW1OVFEyTXk4QklnOEJEZ0VqSWlZMU5ENEJNeklYRmhVVUJ4VVhGaFVVQndhM016Y1lCZzhhRFEwQkN4OEZBZzBCQXdjR0FRRUdCd2dLR0J3ZEZnVU5EQVVOQXgwUkZSc29PaDB6SWlvSkFoc05KZ0dKR3dzZkRRd1hCZ2NHQVFFQ0JRRUJBUVVCQXdNZEZCUWRBUUVDQXhFWElCWWRLaEVVSHpJVUVRRUJJQ1FZR2pzQUFBQUNBRkQvN1FLYUFzc0FIQUJFQUtsQUREa1FBZ01HSnhnQ0JBTUNURXV3S2xCWVFDVUFBd1lFQmdNRWdBQUJBU2hOQUFZR0lrMEZBUVFFQW1FSUFRSUNJMDBIQVFBQUxBQk9HMHV3TVZCWVFDTUFBd1lFQmdNRWdBVUJCQWdCQWdBRUFta0FBUUVvVFFBR0JpSk5Cd0VBQUN3QVRodEFJd0FEQmdRR0F3U0FCUUVFQ0FFQ0FBUUNhUUFHQmlKTkFBRUJBR0VIQVFBQUxBQk9XVmxBR1I0ZEFRQTlPekF1TFNza0loMUVIa1FOREFBY0FSd0pDQllyRnlJbUp5WW5KalUwTnpZM05qTVhGaFVVQmc4QkJoVVVGeFlYRGdFbEppY21OVFF6TWhjV0Z3Y1VGaGN5SGdFek1qYzJOelkxTkNjbUp6UTJNeklYRmhVVUJ3NEJsQlFjQVFFSUNoVUZFZ3dORENNQ0NBSUdDUWtCQVJ3QkNpZ2xiVEVaRUFrQkFoUVJCeGtIQ0VrbkJnWU9Ed0lDR1JVdEJ4TU5EWG9USEJScWEzTnlhV2dUQ2dZQkRDUUdEUzRTTmt3K2sydHNGQndWQVEwaWUwa1VDZzRlR2lVRkFnSklEeU5RYlhKZ0JCSVRJREpvZDJOamFYSUFBQUFFQUZEL0pBR0NBc0lBQ3dBcEFEVUFYQUZMUzdBT1VGaTNVa2tPQXdJREFVd2J0MUpKRGdNQ0NBRk1XVXV3RGxCWVFDVUtCQWtEQUFBQllRVUJBUUVvVFFnQkF3TXJUUUFDQWlaTkFBY0hCbUVMQVFZR0p3Wk9HMHV3RzFCWVFDa0tCQWtEQUFBQllRVUJBUUVvVFFBREF5dE5BQWdJSlUwQUFnSW1UUUFIQndaaEN3RUdCaWNHVGh0THNCOVFXRUExQ2dRSkF3QUFBV0VBQVFFb1RRb0VDUU1BQUFWaEFBVUZJazBBQXdNclRRQUlDQ1ZOQUFJQ0prMEFCd2NHWVFzQkJnWW5CazRiUzdBa1VGaEFNUWtCQUFBQllRQUJBU2hOQ2dFRUJBVmhBQVVGSWswQUF3TXJUUUFJQ0NWTkFBSUNKazBBQndjR1lRc0JCZ1luQms0YlFEUUFDQU1DQXdnQ2dBa0JBQUFCWVFBQkFTaE5DZ0VFQkFWaEFBVUZJazBBQXdNclRRQUNBaVpOQUFjSEJtRUxBUVlHSndaT1dWbFpXVUFoTnpZcktnRUFUa3crUERaY04xd3hMeW8xS3pVZEd4UVRCd1VBQ3dFTERBZ1dLeE1pSmpVME5qTXlGaFVVQmhNV0ZSUUdCd1lqSWlZbkxnRTFORFl6TWhZZEFSUVhGaDhDRkJjV0V5SW1OVFEyTXpJV0ZSUUdBeUluSmpVME5qc0JNalkzTlRZL0FUWTFKaThCUGdFek1oWVhGQmNWRmhVVUJ3WUhCZ2NHaFJRZEhSUVVIUjB2QVE0VkJnVU5Id1VTQ0IwVUZCMERBZ1VHQWdFQmNoUWNIQlFVSFIxbEdoSU9HeFFOQkEwS0NBMEJCd0VIQndFY0ZCUWNBUUlNQXdNa0VTQWNBbUFkRkJRZEhSUVVIZjNPQmdZTkhBY0JEeFI1NlhrVUhSMFVORnhXT2pvNkRnTUREQUlkSEJRVUhSMFVGQno4ekJBTUZSTWVEUlFCRVVVTU5sNWpXSVVWSEJ3VkhCMEdkMzgrUFdCWUpSZ1ZBQUFBQUFJQUR2LzdBbXNDMWdBMkFGTUFvRXV3TFZCWVFBNVFBUU1HS0FFRkF4c0JBQUVEVEJ0QURsQUJBd1lvQVFVREd3RUNBUU5NV1V1d0xWQllRQ1lKQVFVREFRTUZBWUFBQmdZSFlRQUhCeVJOQUFFQkEyRUVBUU1ESzAwQ0NBSUFBQ01BVGh0QUtna0JCUU1CQXdVQmdBQUdCZ2RoQUFjSEpFMEFBUUVEWVFRQkF3TXJUUUFDQWlOTkNBRUFBQ01BVGxsQUd6ZzNBUUJNUzBkR04xTTRVeXNwSnlVZ0hoUVNBRFlCTmdvSUZpc0ZJaVkxTkRZM0ppY21OU1l2QVNZbkppTW1Jd1lIQmdjR0J3WUhFUlFHSXlJbU5SRTBOak15RnpZek1oY1dGeFlWRkFjR0J4UUdBU0luSmpVMFB3RXlOalUyTlRRbklpNEJOVFEyTXhZWEZoVUdCd1lDTHhNZENnRURFUUVLQkFFZkxob0lCQ1VQR2hBQ0Rnc0NCUndVRkIwZEZCc1BNa0V3TDBBdFB3VUZBUjM5K3hvUEJ4Z09BaEVFQndFUUhCc1dNaUFSQ1VvTkJSd1VLV0EzVnlzQkFoSUZBaVlPQ0FJQkNna0NDUlVMQ1A2eEZCMGRGQUhFRkIwYUhSSVhNeit0TUNVMUxCUWNBZWNZQ3cwY0Rna1NCd2tGQ0FFQkdSWVNId1VvR1NoV0tnWUFBQUFBQVFCTC8vUUNId0s1QURBQU5FQXhBQU1BQWdFREFtY0FCQVFGWHdBRkJTSk5BQUVCQUY4R0FRQUFJd0JPQkFBaklCd2FHQllTRUEwSUFEQUVNQWNJRmlzRkxnRW5JaVkxTkRZek1oY1dGelUwSnlNaUpqVTBOanNCSmljaElpWTFORFl6SVRJWEhnRVZGaGNXRlFjR0J3NEJBZHhVcDFRVkhCd1ZWRlJFUlFTOUZCMGRGTGNHQXY3UEZCd2NGQUZJRnc4UUZBSUlDQUVCRVFVYURBRUhBUndVRkIwRUF3RTNVMU1jRkJRZFltRWRGQlFkRXdRYUVYcDVjbk5nR0E4UUZBQUFBQUlBRWYvdUFoOENId0F6QUdJQVRFQkpXZ0VHQndGTUFBRUVBZ1FCQW9BSkFRWUFCQUVHQkdjQUJ3Y0ZZUUFGQlNWTkF3RUNBZ0JoQ0FFQUFDd0FUalkwQVFCS1NEUmlObUl0S3lVaUVROE1Dd2dIQURNQk13b0lGaXNYSWljbU5UUTNOak15RnhZekZETVdNemMyTXpZM1BnSXpQd0UyTnpVL0F3WWpJRFUwTnpZM05qTXlGeFlYRkFjR0F6STNMZ0VuSWowQkppOEJKaWNqSmlNbUx3RW1Jd2NHRHdFR0R3RUdCeFVHQnhVR0ZRWVZNeFlYTWhVeUZ4YnhVRmtqRlE0TUJ3ZEpId1VURXg0Q0JSSU9BUVFFQVNNRkZSRUpEQWNDU2t2KzlnUVBRRUpnVzFGbkJsQmRSRHRUQWdRRUFRWU1EQVlIQVFJRUhoMGZDaFlnRUJJRkRBNENDZ2dIQ1FJS0FSZ2VBZ1VFUFJJa0R5QWJEZ2tESFFFQ0FnRUVCUUVCQWhRRUVoTUJEQlVPQndSeURRMVpOalEwU29CNFdtRUJSUU1IRXdvQkFRd1NEQWNHQlJZR0NBSUNBZ2NDQlFvQ0NBb0JDQklCQWdNYkN3b0RBUUVGQUFBQUFnQ09BSjRERXdITEFBMEFIZ0F3UUMwQUFRUUJBQU1CQUdjQUF3SUNBMWNBQXdNQ1h3VUJBZ01DVHc4T0FnQVhFdzRlRHhzSkJnQU5BZzBHQmhZckFTRWlKalUwTmpNaE1oWVZGQVlGSWlZMU5EWTNKQ0V5RmhVVUJpc0JJZ0xiL2VRVUhSMFVBaHdVSFIzOTFoUWNIQlFCRGdFUEZCMGRGRTNwQVdrZEZCUWRIUlFVSGNzZEZCUWNBUVVkRkJRZEFBQUFBQUlBWS8rd0F4Z0I5UUFpQUVJQVJFQkJIQllDQWdFQlRBQUJBd0lEQVFLQUJnRUNBQU1DQUg0RkFRQUFoQUFFQXdNRVZ3QUVCQU5mQUFNRUEwOGtJd0VBT2pRd0xTTkNKRUlhR0FBaUFTSUhCaFlyRnlJbkpqVTBQd0UyUHdFK0FUY3lQZ0UzTmo4Qk5qYzBOak15RmgwQkJnY0dCd1lCSWlZMU5EWTNORE0yTnlBbkpqVTBOell6TWdRWE56SVZGQWNHQndZSEJwTU1EaFlrRFN3ZUF3WS9HZ0VCQVFvYkVBUUxBaDRURWg4UWFWZDZCd0htRkIwZUJBRVRIdjVJTEUwR0Roc1FBYzhUUWtNakFnSUZFak5RQ1EwYklnMEdGUmdDQXpvaUFnSU1LU0lLSGhFVkhoc1VBb0J5WkRJQ0FSY2RGQlFlQmdFYVFRSURNdzBNR0FZQkF6b2FTQUlIRUIxWUFBQUNBRHYvemdOR0FwY0FJd0JVQUVSQVFVUUJBQVVCVEFBRkFRQUJCUUNBQmdFQUJBRUFCSDRBQWdBQkJRSUJad0FFQXdNRVdRQUVCQU5oQUFNRUExRUJBRWhHS2lrbEpCUVFEQW9BSXdFakJ3WVdLeVVpSmpVME56WS9BVFkzSVNJbU5UUTJNeUUzTWhjV0ZSUUhGQVlIQmdjR0J3WUhCZ0VpSmpVME5qTTNOamMwTmpjMk56UStBVFEzTmpjK0F6YzJOelEyTlNjK0FUTXlGaGNVRHdFR0J3WUhCZ2NHQWxjVUhRNGRHQkF5S1AydUZCMGRGQUlMWDBjUkF4QURBUWtjQXlVclFRMytBQlVjSGhVc0hoMEVCQkVSQlFJREppY0JCd0lDQVE0RkFnRUJIUk1VSEFFdEF6QTVMMDRGQkNUN0hSY1REQmNkRkV4VEhCUVVIUUVzQ3drVkhnRUZCQll6QjBCS053NysweDBVRkIwWUVSUUJBd01PRXdNRUFnRURObDBERHdZRkFTSWJBUVVMQ1JRZEhSUkJZZ1oyUHpNcUFnTVhBQUFBQUFFQVZmK3BBcWtDS2dBNkFENUFPelVCQXdVSEFRRURBa3dBQlFNRmhRWUJBQUVBaGdRQkF3RUJBMWtFQVFNREFXRUNBUUVEQVZFQkFDNHNGaFFURWc0TUN3b0FPZ0U2QndZV0t3VWlKalUwTnpZM0JnY0dJeVlqTGdFMU5EWXpGak15TnpZM016NEJQd0UyTnpVek5qYzJQd0UrQVQ4Qk5qTXlGeFlWRkFjR0J3NEJCeFFHQWJ3VUhBUURBU2tzUjBnT0hCVWNIUmNXR1JRTElob0NPbVFiQmgwZ0FRWUlDUWdJQVFFQkRRMGlHdzhIRFRWd0FRZ0JIVmNjRlV0TEt5c1pFeUFDQVJ3VUZCMENBd2NMSFRrVEJSVW5BUXNKRGc4UkFRUUNJU1FaREF3S0lZSk1TSk5MRlJ3QUFRQmovODRERXdMQUFEd0FKa0FqS3drQ0FRSUJUQUFDQVFLRkFBRUFBWVVEQVFBQWRnRUFLQ1lQRFFBOEFUd0VCaFlyQlNJbUp5WTFORGMyTndjR0J3WWpJaWNtTlRRM05qYzJQd0UyUHdFMlB3RTJOejRCUHdFMk16SVhGaFVVQndZSEJnY1dGUVlIQmhVVUZ4VVVCZ0h2RkJzQkFnUUVBUVNSa0FjR0RRNFdKQ3dyQ3d3TE9Wc1FaVk1HS1JjQ0JRWUVEU0ViRUFjQ0h6MUVUUVFCQkFVQ0hqSWNGVEl6UmtjK1BnSldLQUlJREIwa0N3d1FCUVFGRnpVSk9Uc0ZJaHdEQndzSEl4a0xEQWNIU0RFNExRa0tVRkJLU3k0dkF4TWJBQUVBa2YrcEF0b0NXUUJjQVR4THNBcFFXRUFQUXdFRkNEVUJBd1lxS0FJRUFnTk1HMHV3QzFCWVFBOURBUVVJTlFFQ0Jpb29BZ1FDQTB3YlFBOURBUVVJTlFFREJpb29BZ1FDQTB4WldVdXdDVkJZUURJQUNBVUdDSEFBQXdZQ0JnTUNnQW9KQndNR0FBSUVCZ0pvQUFVQUJBRUZCR2tBQVFBQUFWa0FBUUVBWVFzQkFBRUFVUnRMc0FwUVdFQXhBQWdGQ0lVQUF3WUNCZ01DZ0FrSEFnWUFBZ1FHQW1nS0FRVUFCQUVGQkdrQUFRQUFBVmtBQVFFQVlRc0JBQUVBVVJ0THNBdFFXRUFxQUFnRkNJVUtDUWNEQmdNQkFnUUdBbW9BQlFBRUFRVUVhUUFCQUFBQldRQUJBUUJoQ3dFQUFRQlJHMEF4QUFnRkNJVUFBd1lDQmdNQ2dBb0pCd01HQUFJRUJnSm9BQVVBQkFFRkJHa0FBUUFBQVZrQUFRRUFZUXNCQUFFQVVWbFpXVUFkQVFCUlVFOU1TRVkvUGowN09qa3ZMaVVrSXlFR0JRQmNBVndNQmhZckJTNEJOVFEyTnpJK0F6YzJQd0UyUHdFMk56STJQd0UyUHdJMk56WTFOeVVpSmljWEJ4VWZBUlFIQmlNaUp5WTFOelFuTlRRM05qTVhGak0yTXpjMk5EOEJORFl6TWhZVkZBY2ZBVDhCTWhjV0ZSUVBBUVlIQmdjR0FYZ1ZIQndZQmhRRUJRZ0ZEdzhDQ2dnQ0ZBc0JBUUVITnhjRENnb0dBZ0grenlFZ0VBRUJBUUVrQlFZb0NRUUJBZ1lNUkRNbUhBMFRBd0VDQVIwVUZCMEdXaWtqR0NNUkNRVUJFRkEzT1U5WEFSd1VFeDBCQndFREF3SUhDUUVGQmdFUkR3SUNDbEUxQmg4Y0lnZ0lBUUVEQVJBMEZnRUxKUXdCSkJzY0hCMFFCaE1VS2dRQ0FROEVCUlkzRkIwZEZETXlBUUVCQkIwVEZSWWNDWEo4V2lJd0FBQUFBUUE5LzdFREdRTFpBRjRBMTBBTVNra0NCd1l4THdJREFnSk1TN0FLVUZoQU13QUdCd2FGQ0FFSEJRUUhjQUFGQkFRRmNBQURBZ0VDQXdHQUFBUUFBZ01FQW1nQUFRQUFBVmtBQVFFQVlRa0JBQUVBVVJ0THNBdFFXRUF6QUFZSEJvVUFCd1VFQjNBSUFRVUVCQVZ3QUFNQ0FRSURBWUFBQkFBQ0F3UUNhQUFCQUFBQldRQUJBUUJoQ1FFQUFRQlJHMEF6QUFZSEJvVUlBUWNGQkFkd0FBVUVCQVZ3QUFNQ0FRSURBWUFBQkFBQ0F3UUNhQUFCQUFBQldRQUJBUUJoQ1FFQUFRQlJXVmxBR1FFQVVrOU9URU5CT3pvNU5pd3FKQjBHQlFCZUFWNEtCaFlyQlNJbU5UUStBVDhCTmpjK0FUYzJQd0UwUGdFM05qOEJOamMwTXpZM0p5SUhJZ2NHQnhVR0ZSUUhCaU1pSnlZMU5EYzJOVFEzTmpzQk1qOEJKeVkxTkQ0Qk16SVhGaFVVRHdFVkZoVTNNaFk3QVRJWEZoVVVCd1lIQmdjR0J3WUJIQlVjSEMwR0dUOGxBZ1FCRXlZSkF3UUJJUk1hRWdZQkx4VTZKb2s3TzM4ckJ3VU1JeG9SQndNQ0hSSVVHMFJFU1FFQ0FSMGNEQXdZQndFQ3BoZ3pFUWNlRHhFSUFROGhORXViV2s4ZEZCUWNBUUlFRFJBQkFRRUlHQVlCQWdNQkhCa25JQkFCZG4wQkJBTUdBUUZSQ3c4UEpCa0xDd2dRWmhZaUV3a0ZBdzRXRlFja01nY1BIQXdNQ0NJV0NnUUVFQlFiSHg0Q1M0aGZpRG9mQUFBQUFBRUFRdi9lQXlRQjRnQTRBSzFMc0FsUVdFQXBBQWNEQVFJSGNnQUJBZ0lCY0FBRUJRRURCd1FEWndZQkFnQUFBbGtHQVFJQ0FHQUlBUUFDQUZBYlM3QUtVRmhBTFFBSEF3RUNCM0lBQVFZQ0FYQUFCZ0lDQm5BQUJBVUJBd2NFQTJjQUFnQUFBbGtBQWdJQVlBZ0JBQUlBVUJ0QUtRQUhBd0VDQjNJQUFRSUNBWEFBQkFVQkF3Y0VBMmNHQVFJQUFBSlpCZ0VDQWdCZ0NBRUFBZ0JRV1ZsQUZ3RUFNQzR0S2lNaEhSa1ZFd3NKQndZQU9BRTFDUVlXS3dVaUp5WTFORFk3QVJZN0FUUW5OVFEzTmpVbkJ5SW1OVFEyTXpjek1oWVZGQVlqQnhjVUJoMEJGaGN6TnpZM016SVdGUlFIQmdjaUJ3Rlk3eGtPR3hNRGJXMHNCUU1DQVkwVUhSMFUxdGNWSEIwVXZ3RUVCQUZTTGt4TUFoUWJEaG1tbWdZaUZ3MFZFeDRJV1ZnUUh5QVVGUmNCSFJRVUhRRWRGQlFjQVI4WE1CZ1JXRmNCQWdvZkVoWU1Gd1FDQUFBQUFRQW5BQjREU2dKV0FEUUFsN1VPQVFFQ0FVeExzQXBRV0VBaUFBUUZCSVVBQlFZREFnSUJCUUpuQndFQkFBQUJWd2NCQVFFQVh3Z0JBQUVBVHh0THNBdFFXRUFlQlFFRUJnTUNBZ0VFQW1jSEFRRUFBQUZYQndFQkFRQmZDQUVBQVFCUEcwQWlBQVFGQklVQUJRWURBZ0lCQlFKbkJ3RUJBQUFCVndjQkFRRUFYd2dCQUFFQVQxbFpRQmNDQURBdUtpZ2tJQnNhRkJFUUR3Z0dBRFFDTkFrR0Zpc2xJU0ltTlRRMk15RTNORGMxTkQ4QklpY2lCeUluSmpVME56WXpNaGNlQVRNeU55RXlGaFVVQmlNaEJoVVVCeUV5RmhVVUJnTWEvVDRVSFIwVUFRNEVBUUlDWkF3b0pSc1pKQmtMRFFZSEFnUURGd1lDTkJRZEhSVCszZ1FFQVZJVUhCd2VIUlFVSFYxWUZUc3NGeWtCQWdZTEl4NE5Cd0lCQVFFZEZCUWRYRXRtWkIwVUZCMEFBUUFRLzdrQzZnSmZBRnNCQzB1d0NWQllRQW8wQVFRR0VRRURCQUpNRzB1d0NsQllRQW8wQVFzR0VRRURCQUpNRzBBS05BRUVCaEVCQXdRQ1RGbFpTN0FKVUZoQU13QUhCUWVGQUFVSkJZVUtBUWtHQ1lVSUFRWUxBUVFEQmdScEFBRUNBQUZaQUFNQUFnQURBbWtBQVFFQVlRd0JBQUVBVVJ0THNBcFFXRUE5QUFjRkI0VUFCUW9GaFFBS0NRcUZBQWtJQ1lVQUNBQUxCQWdMYVFBR0FBUURCZ1JwQUFFQ0FBRlpBQU1BQWdBREFta0FBUUVBWVF3QkFBRUFVUnRBTXdBSEJRZUZBQVVKQllVS0FRa0dDWVVJQVFZTEFRUURCZ1JwQUFFQ0FBRlpBQU1BQWdBREFta0FBUUVBWVF3QkFBRUFVVmxaUUI4Q0FGVlVUa3hMU2tsSVEwRTlQRGczTHk0Y0doWVVDQVlBV3dKYkRRWVdLd1VqSWlZMU5EWXpNajhCTkQ0Qk16NEJOUVlIQmdjdUFUVTBOamN5TnpZM016WTNOajhCTmpjeU5qYzJOekkxSmljbUp5WTFORGMyTXhjV0Z4WXpKalUrQVRNeUZoVVVId0UyTnpJMk16SVhGaFVVQndZSEZ4VUhGQWNHQWEwUEhSMGNGejBHRkFNQ0FnY0RYN3BQVmhVY0hCVTFOZzBOQVVWQUxoc0ZIaEFCQWdFT0NBTjFjaFFKQndJS0pRMDRKMGMwRFFFYkZSTWRCd2NtSlFvS0JnME1HQ00wTXdFQldpeEhIUlFVSFFNRUFRRURDaWhpWDFJaEFRRWNGQlFjQVJJRUJpQW9IQlFFR1JVREFoTVVCZ01XQlJJTURBY0dJd0VMQXdoRlJoVWNIQlU1SXkwQ0JRTUdEaHNwQndnRFNYOG9jaUFLQUFBQUFRQWwvN01EU1FMWkFHTUFVa0JQU2dFRkJoTUJBd1FQQVFFQ0Ewd0FCZ1VHaFFjQkJRZ0JCQU1GQkdjQUF3QUNBUU1DYVFBQkFBQUJWd0FCQVFCaENRRUFBUUJSQXdCYldWVlRUMDFJUkVBOUppTWVIUW9IQUdNRFl3b0dGaXNGSWk0Q05UUTJOeGN6TnpJL0FqUW5ORGNHRHdFaUZRWUhCZ2NHQnk0Qk5UUTJPd0UzTmpjMlB3RTJOekkyTWpjMlB3RXlOelkvQXpZM0p5VWlKalUwTmpNeUZ6TW1KelUwTmpNeUZoY1dGek15RmhVVUJpTW5GQWNHRlJjVUJ3WUJ4aEVtS1J3Y0ZWQWhBZ2tJQXdJQkJTQXNKQUlORUZsRVBrZ1ZIQndWQ0JBU0VRTUVLak1YQVFNQ0dRUTBGd0VEQXdRTkdBMFpGU1QrcGhRY0hCU3RyRWtDQkI0U0Zoa0NCUUt0RkIwZEZLd0VBd0U1S0UwQ0FSd1VGQndCQWdFRUFnWWFENWh1TUNRYkFna05TU2NtQVFJYUZSTWVBUVFIQWdFWUlCUURGUVFvRVFNREFnd2JFeWdyQVFFZEZCUWRBalkyQXhNYkhCVTJOeDBVRkIwQlBXeE5UV0pXR3hFQUFRQW0vNzBES1FMQkFITUF5TFUxQVFjQkFVeExzQWxRV0VBdUFBTUNBNFVBQndFSUFRY0lnQW9CQUFZQWhnVUVBZ0lKQVFFSEFnRm5BQWdHQmdoWkFBZ0lCbUVBQmdnR1VSdExzQXBRV0VBekFBTUZBNFVBQlFJQ0JYQUFCd0VJQVFjSWdBb0JBQVlBaGdRQkFna0JBUWNDQVdnQUNBWUdDRmtBQ0FnR1lRQUdDQVpSRzBBdUFBTUNBNFVBQndFSUFRY0lnQW9CQUFZQWhnVUVBZ0lKQVFFSEFnRm5BQWdHQmdoWkFBZ0lCbUVBQmdnR1VWbFpRQnNCQUc1clRVaEVRanc2TGl3cktpUWpIeDBaRndCekFYTUxCaFlyRnlJbkpqVTBOelkzTmpjek5qYytBVE0yTnpZL0FUWTNJeUltTlRRMk93RTNOamMyTXpJWEZoVVVCekkyTXpJWEZoVVVEd0lHQndZSEJpTWlKeVkxTkRjMk16SWZBaFl6TWhjek1qY3pOamMyUHdFMlB3RTFQd0UyUHdFMU5qYzJOelEvQVRZM05DOENEd0VqQmdjR0J3WldEQTRXSkNZYkRBUUJHQVlCQkFFVERoUURDaVVkelJRZEhSVGdFd1VTREF3R0J5TVA3UlVLTmhzU0RnRUlCQjRPR0R4V1FEMFlCdzhhRFJnRkJ4WUpBZ0VCSWdJQkZoVUJCZ0VGQkFrRkNRY0VCZ1FCQWdZRUFRUUNBUUVCRUN6aUlVdzhtZ2REQ1EwYklROE5Fd2NFRlFvQkJSc2RKZ3dZWDRRZEZCUWNhUlFLQmdJS0pneFBBeW9nTXhsekFXSkdRQjBVTHlBTkhRME1Gd3dCQXdnQkFRUUhBUUlCQWdNSkFRWVJGQk1mQlJ3YkppY0lFZ3dOT0EwSUJBWUJBYkdqaWpZQ0FBQURBQ2IvdlFOV0F4d0Fjd0NEQUo0QkpMVTFBUWNCQVV4THNBbFFXRUJIQUEwTERZVUFBd3NNQ3dNTWdCQUJEQW9MREFwK0FBY0JDQUVIQ0lBT0FRQUdBSVlBQ3c4QkNnSUxDbWtGQkFJQ0NRRUJCd0lCWndBSUJnWUlXUUFJQ0FaaEFBWUlCbEViUzdBS1VGaEFUUUFOQ3cyRkFBTUxEQXNERElBUUFRd0tDd3dLZmdBRkNnSUNCWElBQndFSUFRY0lnQTRCQUFZQWhnQUxEd0VLQlFzS2FRUUJBZ2tCQVFjQ0FXZ0FDQVlHQ0ZrQUNBZ0dZUUFHQ0FaUkcwQkhBQTBMRFlVQUF3c01Dd01NZ0JBQkRBb0xEQXArQUFjQkNBRUhDSUFPQVFBR0FJWUFDdzhCQ2dJTENta0ZCQUlDQ1FFQkJ3SUJad0FJQmdZSVdRQUlDQVpoQUFZSUJsRlpXVUFyaFlSMWRBRUFscFNFbm9XZWZYdDBnM1dEYm10TlNFUkNQRG91TENzcUpDTWZIUmtYQUhNQmN4RUdGaXNYSWljbU5UUTNOamMyTnpNMk56NEJNelkzTmo4Qk5qY2pJaVkxTkRZN0FUYzJOell6TWhjV0ZSUUhNall6TWhjV0ZSUVBBZ1lIQmdjR0l5SW5KalUwTnpZek1oOENGak15RnpNeU56TTJOelkvQVRZL0FUVS9BVFkvQVRVMk56WTNORDhCTmpjMEx3SVBBU01HQndZSEJnRWlMd0VtTlRRMk56SWZBUllWRkFZM0lpYzBKaWN1QVNjMEppY21OVFEzTmpNeUZ4WVhGaFVVQndaV0RBNFdKQ1liREFRQkdBWUJCQUVURGhRRENpVWR6UlFkSFJUZ0V3VVNEQXdHQnlNUDdSVUtOaHNTRGdFSUJCNE9HRHhXUUQwWUJ3OGFEUmdGQnhZSkFnRUJJZ0lCRmhVQkJnRUZCQWtGQ1FjRUJnUUJBZ1lFQVFRQ0FRRUJFQ3ppSVV3OG1nY0NVaFFQSmc0Y0ZSVU5KZzhkWWhvUkF3RUhBZ1FEQXhnR0R4d01EQ1VXQnhrTVF3a05HeUVQRFJNSEJCVUtBUVViSFNZTUdGK0VIUlFVSEdrVUNnWUNDaVlNVHdNcUlETVpjd0ZpUmtBZEZDOGdEUjBOREJjTUFRTUlBUUVFQndFQ0FRSURDUUVHRVJRVEh3VWNHeVluQ0JJTURUZ05DQVFHQVFHeG80bzJBZ0tiRGlZT0ZSTWRBUThtRHhNVUhUa1pBUU1DQ1FJQ0FRSUJEUjBOREJnR0ZpVUxEUnNRQndBQUFRQWQvOWdEU0FLK0FGc0FSMEJFTlNnQ0JRUkJHQUlDQlZSREZnWUVBUUlEVEFBREJBT0ZBQVFGQklVQUJRSUZoUUFDQVFLRkFBRUFBWVVHQVFBQWRnRUFUVXM2T0RJd0lCOE5Dd0JiQVZzSEJoWXJCU0luSmljbUp3WUhCZ2NHSXlJbkpqVTBOelkzTmpjbUp3WUhEZ0VIQmdjaUpqVTBOelkzTmpjbUp5WW5KalUwTmpNeUZ4WVhOamMyTXpJWEZoVVVCd1lIRmhjM05qOENOamMyTXpJV0ZSUUhCZzhCRmhjV0ZSUUhCZ0lNREF3UkJoa3JSRWRaV0FrSERBNFdKRzVIUWtFY0hScEJBUVVETmtjVUd6RWVHU05qQ0FVRkJ3OGVGaTBYQmdtYUZROE5HdzRHRjNGUEdoc0VEcFFNQVRNNkVSTVNIUTVGakhRaEpRTUpEU2dIQ2hNK2doZ1NGeDREQ0E0Ykl3d21FUkFYUzBvR0dBRUJBaDhLSGhNckJnVU9FeDhhR3hjVkVoRVVIV0FmSHl3S0J4Y01EUjRNTFJKR1JRSUNQQVFCRXlvT0hSWVREVHN5TEd0Y0NBY01EaFVBQUFNQUhmL1lBMGdESEFCYkFHc0FoZ0NCUUg0MUtBSUZCa0VZQWdJRlZFTVdCZ1FCQWdOTUFBa0hDWVVBQXdjSUJ3TUlnQXdCQ0FRSENBUitBQVFHQndRR2ZnQUZCZ0lHQlFLQUFBSUJCZ0lCZmdBQkFBWUJBSDRLQVFBQWhBQUhBd1lIV1FBSEJ3WmhDd0VHQndaUmJXeGRYQUVBZm54c2htMkdaV05jYTExclRVczZPREl3SUI4TkN3QmJBVnNOQmhZckJTSW5KaWNtSndZSEJnY0dJeUluSmpVME56WTNOamNtSndZSERnRUhCZ2NpSmpVME56WTNOamNtSnlZbkpqVTBOak15RnhZWE5qYzJNeklYRmhVVUJ3WUhGaGMzTmo4Q05qYzJNeklXRlJRSEJnOEJGaGNXRlJRSEJoTWlMd0VtTlRRMk56SWZBUllWRkFZM0lpYzBKaWN1QVNjMEppY21OVFEzTmpNeUZ4WVhGaFVVQndZQ0RBd01FUVlaSzBSSFdWZ0pCd3dPRmlSdVIwSkJIQjBhUVFFRkF6WkhGQnN4SGhrall3Z0ZCUWNQSGhZdEZ3WUptaFVQRFJzT0JoZHhUeG9iQkE2VURBRXpPaEVURWgwT1JZeDBJU1VEQ1ExekZBOG1EaHdWRlEwbUR4MWlHaEVEQVFjQ0JBTURHQVlQSEF3TUpSWUhHUXdvQndvVFBvSVlFaGNlQXdnT0d5TU1KaEVRRjB0S0JoZ0JBUUlmQ2g0VEt3WUZEaE1mR2hzWEZSSVJGQjFnSHg4c0NnY1hEQTBlREMwU1JrVUNBandFQVJNcURoMFdFdzA3TWl4clhBZ0hEQTRWQW9BT0pnNFZFeDBCRHlZUEV4UWRPUmtCQXdJSkFnSUJBZ0VOSFEwTUdBWVdKUXNOR3hBSEFBRUFQLyt6QXdvQ3RBQmtBUDYyVjBzQ0F3Y0JURXV3Q1ZCWVFEQUFCUVFCQkFVQmdBa0JBQWdBaGdBSEFBTUVCd05uQUFZQUJBVUdCR2tDQVFFSUNBRlpBZ0VCQVFoaEFBZ0JDRkViUzdBS1VGaEFOZ0FGQkFJRUJRS0FBQUVDQ0FJQkNJQUpBUUFJQUlZQUJ3QURCQWNEWndBR0FBUUZCZ1JwQUFJQkNBSlpBQUlDQ0dFQUNBSUlVUnRMc0F0UVdFQXNBQVVFQVFRRkFZQUFCd0FEQkFjRFp3QUdBQVFGQmdScEFnRUJBQUFCV1FJQkFRRUFZUWtJQWdBQkFGRWJRREFBQlFRQkJBVUJnQWtCQUFnQWhnQUhBQU1FQndObkFBWUFCQVVHQkdrQ0FRRUlDQUZaQWdFQkFRaGhBQWdCQ0ZGWldWbEFGR1JqWW1GVFRVUkNMQ29pSUI0YUVSVVFDZ1laS3hjaUpqVTBOamN5TnpJM05qYzJOVFkzTmpjMk56VTNOVFkvQVFZakp5SUhCZ2NpSndZSEJnY0dCd1lqSWljbU5UUS9BVFUvQWpZL0FUWS9BVFkvQXpZek1oY1dGUlFQQWpjMk93RXlQd0V5RmhjV0Z4UVBBUVlIQmdjR0J3WWpCaU82RlJ3Y0ZRNGVKd2tSRWdjd0tSTVNKaUVHT0RjbklqY2ZLeXM0R2d3S01Fa1BDeW94QndjTURoWWtFQllzQ3hFUER4UWtEQWtJQXg4RUZoNGJEd1lUQVFvTlJCc3BQeUF3RXhzQ0JRRVRCaE1XSkROeGkwQTlFaE5OSGhNVkdnSURBd0lJQWdFV0lBNFNJeW9CQndGR2JtUUNBUVFHQVFZNUx3Z0lIdzRDQ0F3ZEpBc0VBUXNkQmdvTUN4QW9Ed3NNQkRZSklCZ0xEQm9PQXhVQ0JRSUJHUk1KQ3lvbkVUTXhTMFNnUlI0Q0FBTUFGLyt6QTB3REpnQmtBSFFBandGcXRsZExBZ01IQVV4THNBbFFXRUJIQUEwTERZVVBBUXdHQ2dZTUNvQUFCUVFCQkFVQmdBa0JBQWdBaGdBTERnRUtCd3NLYVFBSEFBTUVCd05uQUFZQUJBVUdCR2tDQVFFSUNBRlpBZ0VCQVFoaEFBZ0JDRkViUzdBS1VGaEFUUUFOQ3cyRkR3RU1CZ29HREFxQUFBVUVBZ1FGQW9BQUFRSUlBZ0VJZ0FrQkFBZ0FoZ0FMRGdFS0J3c0thUUFIQUFNRUJ3Tm5BQVlBQkFVR0JHa0FBZ0VJQWxrQUFnSUlZUUFJQWdoUkcwdXdDMUJZUUVNQURRc05oUThCREFZS0Jnd0tnQUFGQkFFRUJRR0FBQXNPQVFvSEN3cHBBQWNBQXdRSEEyY0FCZ0FFQlFZRWFRSUJBUUFBQVZrQ0FRRUJBR0VKQ0FJQUFRQlJHMEJIQUEwTERZVVBBUXdHQ2dZTUNvQUFCUVFCQkFVQmdBa0JBQWdBaGdBTERnRUtCd3NLYVFBSEFBTUVCd05uQUFZQUJBVUdCR2tDQVFFSUNBRlpBZ0VCQVFoaEFBZ0JDRkZaV1ZsQUpIWjFabVdIaFhXUGRvOXViR1YwWm5Sa1kySmhVMDFFUWl3cUlpQWVHaEVWRUJBR0dTc1hJaVkxTkRZM01qY3lOelkzTmpVMk56WTNOamMxTnpVMlB3RUdJeWNpQndZSElpY0dCd1lIQmdjR0l5SW5KalUwUHdFMVB3STJQd0UyUHdFMlB3TTJNeklYRmhVVUR3STNOanNCTWo4Qk1oWVhGaGNVRHdFR0J3WUhCZ2NHSXdZakFTSXZBU1kxTkRZM01oOEJGaFVVQmpjaUp6UW1KeTRCSnpRbUp5WTFORGMyTXpJWEZoY1dGUlFIQnBJVkhCd1ZEaDRuQ1JFU0J6QXBFeEltSVFZNE55Y2lOeDhyS3pnYURBb3dTUThMS2pFSEJ3d09GaVFRRml3TEVROFBGQ1FNQ1FnREh3UVdIaHNQQmhNQkNnMUVHeWsvSURBVEd3SUZBUk1HRXhZa00zR0xRRDBTRXdINkZBOG1EaHdWRlEwbUR4MWlHaEVEQVFjQ0JBTURHQVlQSEF3TUpSWUhHUXhOSGhNVkdnSURBd0lJQWdFV0lBNFNJeW9CQndGR2JtUUNBUVFHQVFZNUx3Z0lIdzRDQ0F3ZEpBc0VBUXNkQmdvTUN4QW9Ed3NNQkRZSklCZ0xEQm9PQXhVQ0JRSUJHUk1KQ3lvbkVUTXhTMFNnUlI0Q0FxME9KZzRWRXgwQkR5WVBFeFFkT1JrQkF3SUpBZ0lCQWdFTkhRME1HQVlXSlFzTkd4QUhBQUVBU3YvbEF5c0N3QUJXQUVOQVFEc0JCQU1YQVFJQkFrd0FBd1FEaFFBQ0FRQUJBZ0NBQmdFQUFJUUFCQUVCQkZjQUJBUUJZUVVCQVFRQlVRRUFURWRDUFRrM0pDSWVIUUJXQVZZSEJoWXJCU0luSmpVME56WS9BVFkvQVRZL0FUWTNOalUzTkQ4Qk5DYzFMZ0UxSWljR0J3WWpJaVkxTkRjK0FUYzJQd0UyTnpZM05qMEJORFl6TWhZWEZBY2hNamN5Rng0QkZSUUdJeVlqQmlNV0ZSUVBBUVlIQmdjR0FUNGFFQVlZREFzSkdRSVJHeFVERlFvREFRRURBUUVFMndJWk13MFRGaDBPQndZREZBZ0JFQlVIQmdRZUV4VWFBaEVCRldnUVBTUVVIUndWSkRzVFh3VUpBd2tSUTI0TUd4Z01EUndOQndnSEdRUVlLeTRJT0RnUEJRRUZBeUlYREFRSERBa0JTanNPSFJNVEVBY0tBeDRZQVNnOURSZ09Bd3NXR3h3VktTY0JBZ0lhRlJNZUFnRWVIeWdwRFRRd3REOEdBQUFEQUVyLzVRTlZBeHdBVmdCbUFJRUFiRUJwT3dFR0NCY0JBZ0VDVEFBSkJ3bUZBQU1IQ0FjRENJQU1BUWdHQndnR2ZnQUNBUUFCQWdDQUNnRUFBSVFBQndzQkJnUUhCbWtBQkFFQkJGY0FCQVFCWVFVQkFRUUJVV2huV0ZjQkFIbDNaNEZvZ1dCZVYyWllaa3hIUWowNU55UWlIaDBBVmdGV0RRWVdLd1VpSnlZMU5EYzJQd0UyUHdFMlB3RTJOelkxTnpRL0FUUW5OUzRCTlNJbkJnY0dJeUltTlRRM1BnRTNOajhCTmpjMk56WTlBVFEyTXpJV0Z4UUhJVEkzTWhjZUFSVVVCaU1tSXdZakZoVVVEd0VHQndZSEJnRWlMd0VtTlRRMk56SWZBUllWRkFZM0lpYzBKaWN1QVNjMEppY21OVFEzTmpNeUZ4WVhGaFVVQndZQlBob1FCaGdNQ3drWkFoRWJGUU1WQ2dNQkFRTUJBUVRiQWhrekRSTVdIUTRIQmdNVUNBRVFGUWNHQkI0VEZSb0NFUUVWYUJBOUpCUWRIQlVrT3hOZkJRa0RDUkZEYmd3Qll4UVBKZzRjRlJVTkpnOGRZaG9SQXdFSEFnUURBeGdHRHh3TURDVVdCeGtNR3hnTURSd05Cd2dIR1FRWUt5NElPRGdQQlFFRkF5SVhEQVFIREFrQlNqc09IUk1URUFjS0F4NFlBU2c5RFJnT0F3c1dHeHdWS1NjQkFnSWFGUk1lQWdFZUh5Z3BEVFF3dEQ4R0FuTU9KZzRWRXgwQkR5WVBFeFFkT1JrQkF3SUpBZ0lCQWdFTkhRME1HQVlXSlFzTkd4QUhBQUVBVnYvZEF2OENZd0E3QUVOQVFESUJBZ00zQVFFQ0Frd0FCUVFGaFFZQkFBRUFoZ0FFQUFNQ0JBTm5BQUlCQVFKWEFBSUNBVjhBQVFJQlR3RUFMQ3NvSVIwVERRc0hCUUE3QVRzSEJoWXJCU0ltTlRRM0lTSW1OVFEyTXlFME56WTFOajhCQmlNR0l5SW5KaU11QVRVME5qY3lGek15UHdFK0FUY3lGaFVHRHdNR0J3WVZCaFVPQVFLNUZCMEIvZjRVSFIwVUFnVUJBZ1FHQVNJZFlGc2xJU3hNRlJ3Y0ZVNDRQRzFkTWdJUkN5QWhBUVVCQVFJQ0FnUURBUndqSEJVV0ZSMFVGQjB4SUNnbm9DQUNBd1FCQVFFY0ZCUWNBUUlFQXdFQ0FTc2VHaGtFQmlndllscGVKRG9WSEFBQUFBTUFOLy9UQTJrREhBQTdBRXNBWmdCdFFHb3lBUUlETndFQkFnSk1BQWtIQ1lVTUFRZ0hCZ2NJQm9BQUJRWUVCZ1VFZ0FvQkFBRUFoZ0FIQ3dFR0JRY0dhUUFFQUFNQ0JBTm5BQUlCQVFKWEFBSUNBVjhBQVFJQlQwMU1QVHdCQUY1Y1RHWk5aa1ZEUEVzOVN5d3JLQ0VkRXcwTEJ3VUFPd0U3RFFZV0t3VWlKalUwTnlFaUpqVTBOak1oTkRjMk5UWS9BUVlqQmlNaUp5WWpMZ0UxTkRZM01oY3pNajhCUGdFM01oWVZCZzhEQmdjR0ZRWVZEZ0VUSWk4QkpqVTBOamN5SHdFV0ZSUUdOeUluTkNZbkxnRW5OQ1luSmpVME56WXpNaGNXRnhZVkZBY0dBcG9VSFFIOS9oUWRIUlFDQlFFQ0JBWUJJaDFnV3lVaExFd1ZIQndWVGpnOGJWMHlBaEVMSUNFQkJRRUJBZ0lDQkFNQkhCUVVEeVlPSEJVVkRTWVBIV0lhRVFNQkJ3SUVBd01ZQmc4Y0RBd2xGZ2NaREMwY0ZSWVZIUlFVSFRFZ0tDZWdJQUlEQkFFQkFSd1VGQndCQWdRREFRSUJLeDRhR1FRR0tDOWlXbDRrT2hVY0FvOE9KZzRWRXgwQkR5WVBFeFFkTHhrQkF3SUpBZ0lCQWdFTkhRME1HQVlXSlFzTkd4QUhBQUFCQUZ6L3p3TDFBcmdBYkFCVVFGRWZIUUlEQVFBQlRBQUNBQUtGQUFBQkFJVUFDUW9HQ2drR2dBTUJBUWdCQkFvQkJHa0FDd0FLQ1FzS1p3Y0JCZ1VGQmxrSEFRWUdCV0VBQlFZRlVXaGxZVjVaVjFSVE1TUW9KQ29YRmlVTUJoNHJFeVkxTkRjMk16SVdGeFlWRkJjekpqVTBOelkzTmpNWEZoVVVCeFFIRkJjVk16SVdGUlFHS3dFWEZBWUhCZzhCQmdjaUpqVTBOamN5TnpNM01qOEJQZ0V6TnpZL0FUSS9BVFUyTnpZM05EWXpOalVuSXdjVUJpTWlKalUzTmpVSEl5NEJOVFEyTXpJM0pqVTBKOVFCQnc0YURTQUVCQUxyQVFZRUV3d05EQ01DQWdJL0ZCd2NGRDBCRkRVMlR4SkpTQlFkSFJRTENnWUJDeDRVQVFRQ0Voa29DZ0VERlFvVERBb0JBUVFCN0FNZEZCUWNBUUU0RXhVY0hCVWJMd0VCQW5ZRkJRd01HQThVSlNRZUVCTVVLeXdVQ2dZQkRDUU5CQkVSR1JrTUhSUVVIUzFEbmt0QkhnZ2tBUjBVRkJ3QkFRRUtCd0VDQ0FrWkJ3TVVBUW9vR3pjRENURXlNWndVSFIwVWFSY1lBUUViRlJNZEFnb21IUXNBQUFNQVNmL1BBMXdDOUFCc0FJQUFtQUVsUUE0Q0FRNEFIUUVNRGg4QkFRd0RURXV3Q1ZCWVFFY0FBQUlPQWdBT2dBQUpDZ1lLQ1FhQUFBOFJBUTRNRHc1cERRRUNFQUVNQVFJTWFRTUJBUWdCQkFvQkJHa0FDd0FLQ1FzS1p3Y0JCZ1VGQmxrSEFRWUdCV0VBQlFZRlVSdExzQXBRV0VCTkFBSU5BQTBDQUlBQUFBNE5BQTUrQUFrS0Jnb0pCb0FBRHhFQkRnd1BEbWtBRFJBQkRBRU5ER2tEQVFFSUFRUUtBUVJwQUFzQUNna0xDbWNIQVFZRkJRWlpCd0VHQmdWaEFBVUdCVkViUUVjQUFBSU9BZ0FPZ0FBSkNnWUtDUWFBQUE4UkFRNE1EdzVwRFFFQ0VBRU1BUUlNYVFNQkFRZ0JCQW9CQkdrQUN3QUtDUXNLWndjQkJnVUZCbGtIQVFZR0JXRUFCUVlGVVZsWlFDT0NnVzV0a3BDQm1JS1llSFp0Z0c2QWFHVmhYbGxYVkZNeEpDZ2tLaGNXSlJJR0hpc1RKalUwTnpZek1oWVhGaFVVRnpNbU5UUTNOamMyTXhjV0ZSUUhGQWNVRnhVek1oWVZGQVlyQVJjVUJnY0dEd0VHQnlJbU5UUTJOekkzTXpjeVB3RStBVE0zTmo4Qk1qOEJOVFkzTmpjME5qTTJOU2NqQnhRR0l5SW1OVGMyTlFjakxnRTFORFl6TWpjbU5UUW5CU0luSmljbU5UUTNOak15RnhZWEZoVVVCd1kzSmljMUpqVTBKemMwSnlZMU5ENEJNeklYRmhjVUJ3YkJBUWNPR2cwZ0JBUUM2d0VHQkJNTURRd2pBZ0lDUHhRY0hCUTlBUlExTms4U1NVZ1VIUjBVQ3dvR0FRc2VGQUVFQWhJWktBb0JBeFVLRXd3S0FRRUVBZXdESFJRVUhBRUJPQk1WSEJ3Vkd5OEJBUUlEREFzUkJoRUhEUjBNREJNRUVBVU9TUzBGQXdNQkJBZ09Gd3djRHhZQkJnMENkZ1VGREF3WUR4UWxKQjRRRXhRckxCUUtCZ0VNSkEwRUVSRVpHUXdkRkJRZExVT2VTMEVlQ0NRQkhSUVVIQUVCQVFvSEFRSUlDUmtIQXhRQkNpZ2JOd01KTVRJeG5CUWRIUlJwRnhnQkFSc1ZFeDBDQ2lZZEMwUUdDaE02Qnd3TUdRWUtGRHdIQ3dvWk5BTXVBd29IQVFRQkFnTU1EUXdYRGhnbEt3MExHQUFBQUFBREFERC95Z05JQXJzQUhnQkRBRzhBUVVBK1p6bzVBd0lBQVV3QUFRTUJoUUFEQlFPRkFBVUFCWVVHQVFBQ0FJVUhBUUlFQW9VQUJBUjJJQjhCQUdSaVJVUXpNaDlESUVNU0VRQWVBUjRJQmhZckFTSXZBU0kxSXpVbUx3RW1KeVkxTkRjMk16SVhGaGNlQXhVVUJ3WUhJaWNtTHdFbUx3RW1Md0ltSnlZMU5EYzJNeklYRmhjVkZ5Y1hNeFlYRmhVVUJ3WURJaWNtTlRRM05qOEJQZ0UzTmpjMk56WTNOajhCTlQ4Qk5qYytBVGMyTXpJWEZoVVVCd1lIRGdFSEJnRy9HWGNWQVFFUEVBSVVDZ2NhQ3cwR0J6d3VCUW8wTXdZUjVnME5IaGNIRHdzSUN3MElDQlFKQnhrTERBY0hOU0llQnhVQkJ4SVlCZzRpREE0WEpEazVFd1VIQWxCQkFnRWNGeVlkQkFJWE1SRUlBZ0lOSWh3T0J3SVNIV3J0eGdZQjBHTVNBUUVMQ0FFR0VRc05IQTRIQWhrdUJBY3BKQnNMREJpb0JnNFhCZ3dPQ0E0TkJ3VUdFUXNOR3c4SEFoWXVBUjBGRVFjSkRSME5EQmYrb2dnTUhTUUxFQlVJQWdJQ0lUQUJBaFVYSkNZRkFRRWdSaU1PQ0FVa0dRc01Cd2N5TEtpdU9BSUFBQVVBTVAvS0EwZ0MzUUFlQUVNQWJ3Q0RBSnNBZDBCMFp6bzVBd0lBQVV3QUFRa0hDUUVIZ0FBREJnVUdBd1dBQUFVQUJnVUFmZ29CQUFJR0FBSitDd0VDQkFZQ0JINEFCQVNFQUFjSUJnZFpBQWtOQVFnR0NRaHBBQWNIQm1FTUFRWUhCbEdGaEhGd0lCOEJBSldUaEp1Rm0zdDVjSU54ZzJSaVJVUXpNaDlESUVNU0VRQWVBUjRPQmhZckFTSXZBU0kxSXpVbUx3RW1KeVkxTkRjMk16SVhGaGNlQXhVVUJ3WUhJaWNtTHdFbUx3RW1Md0ltSnlZMU5EYzJNeklYRmhjVkZ5Y1hNeFlYRmhVVUJ3WURJaWNtTlRRM05qOEJQZ0UzTmpjMk56WTNOajhCTlQ4Qk5qYytBVGMyTXpJWEZoVVVCd1lIRGdFSEJnRWlKeVluSmpVME56WXpNaGNXRnhZVkZBY0dOeVluTlNZMU5DYzNOQ2NtTlRRK0FUTXlGeFlYRkFjR0FiOFpkeFVCQVE4UUFoUUtCeG9MRFFZSFBDNEZDalF6QmhIbURRMGVGd2NQQ3dnTERRZ0lGQWtIR1FzTUJ3YzFJaDRIRlFFSEVoZ0dEaUlNRGhja09Ua1RCUWNDVUVFQ0FSd1hKaDBFQWhjeEVRZ0NBZzBpSEE0SEFoSWRhdTNHQmdHdURBc1JCaEVIRFIwTURCTUVFQVVPVlMwRkF3TUJCQWdPRnd3Y0R4WUJCZzBCMEdNU0FRRUxDQUVHRVFzTkhBNEhBaGt1QkFjcEpCc0xEQmlvQmc0WEJnd09DQTROQndVR0VRc05HdzhIQWhZdUFSMEZFUWNKRFIwTkRCZitvZ2dNSFNRTEVCVUlBZ0lDSVRBQkFoVVhKQ1lGQVFFZ1JpTU9DQVVrR1FzTUJ3Y3lMS2l1T0FJQ093WUtFem9IREF3WkJnb1VQQWNMQ2hrK0F5NERDZ2NCQkFFQ0F3d05EQmNPR0NVckRRc1lBQUFCQUVULzR3TDlBb2dBT3dBNVFEWXlDd0lDQXdGTUJRRUFBUUNHQUFRQUF3SUVBMmNBQWdFQkFsa0FBZ0lCWVFBQkFnRlJBUUFyS0NRaUZCSU9EQUE3QVRzR0JoWXJCU0ltSnlZdkFTWW5KaThCQmdjaUpqVTBOak15TnpNMlB3RTJOelkzTmpjMlB3RWhJaVkxTkRZeklUSVhGaFVHQndZSEhnRWZBaFlYRGdFQ3pCTWNBZ1FGRWpRbkV3c0UwN3NWSEJ3VkRnNERHeHdXTVM0U0ZGaEZQU1lHL2owVUhSMFVBZjBTRGhJQ0dDNU5IaThiQ2hndkFRRWNIUm9UQ0FVVU9FQWZEZ1hsQXgwVEZSd0NCQW9LR2lNT0VrMVpVbFVPSFJRVUhRd1BHelF2YTE4Z1RpTU5HaThxRlJ3QUFBQURBQWovNHdObUF2NEFPd0JQQUdjQVcwQllNZ3NDQWdNQlRBa0JBQUVBaGdBSUN3RUhCUWdIYVFBR0NnRUZBd1lGYVFBRUFBTUNCQU5uQUFJQkFRSlpBQUlDQVdFQUFRSUJVVkZRUFR3QkFHRmZVR2RSWjBkRlBFODlUeXNvSkNJVUVnNE1BRHNCT3d3R0Zpc0ZJaVluSmk4QkppY21Md0VHQnlJbU5UUTJNekkzTXpZL0FUWTNOamMyTnpZL0FTRWlKalUwTmpNaE1oY1dGUVlIQmdjZUFSOENGaGNPQVJNaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjR055WW5OU1kxTkNjM05DY21OVFErQVRNeUZ4WVhGQWNHQXBBVEhBSUVCUkkwSnhNTEJOTzdGUndjRlE0T0F4c2NGakV1RWhSWVJUMG1CdjQ5RkIwZEZBSDlFZzRTQWhndVRSNHZHd29ZTHdFQkhDRU1DeEVHRVFjTkhRd01Fd1FRQlE1VExRVURBd0VFQ0E0WERCd1BGZ0VHRFIwYUV3Z0ZGRGhBSHc0RjVRTWRFeFVjQWdRS0Nob2pEaEpOV1ZKVkRoMFVGQjBNRHhzMEwydGZJRTRqRFJvdktoVWNBblVHQ2hNNkJ3d01HUVlLRkR3SEN3b1pEQU11QXdvSEFRUUJBZ01NRFF3WERoZ2xLdzBMR0FBQUFBQUJBREgvNGdNS0FyZ0FWUUJNUUVrOE9Cb1BCUVVCQXdGTUFBSURBb1VBQXdFRGhRQUJCQUdGQUFRR0JJVUFCZ1VHaFFBRkFBQUZXUUFGQlFCaEJ3RUFCUUJSQVFCUFRVZEZMU3NqSVJVVENBY0FWUUZWQ0FZV0t3VWlKeVluTlFZSElpWTFORGMyUHdJbk5EWXpNaFlWRkJjVk5qYzJOelkzTmpNeUZSUUhCZ2NHQndZaklpY21OVFEzTmpjMk56WTNCZ2NHQnhRV0Z4NEJNeFlYRmhjeU56WXpOamMyTXpJWEZoVVVCd1lCL0hrOFRBTmZOeFVjT3l3MktBRUJIQlFVSFFKMVBpRlVKaVVIQnpBUkV6RVlKUXdNSFE0SEhnUWNFd1VERFNoR1Fvb0JDZ01GQVJBYk1qSVpOd1lFUHlNTURCc1FCeGxTSGlJb1VNY2JCeDhTTEFZSUVRc0IzaFFkSFJSYVdoSWNHUTBaQ2d3Q09pTWhQMTR6R2djWURBd2NGQVU0SXc0Q0pRa1pHaUhtQ0FnREJRd0hDQUVGQWdzVkJ4a01EQm9STXdBQUFBQURBREgvNGdNYUF4SUFWUUJsQUlBQWZrQjdQRGdhRHdVRkFRTUJUQUFLQ0FxRkFBSUlDUWdDQ1lBTkFRa0hDQWtIZmdBREJ3RUhBd0dBQUFFRUJ3RUVmZ0FFQmdjRUJuNEFCZ1VIQmdWK0FBZ01BUWNEQ0FkcEFBVUFBQVZaQUFVRkFHRUxBUUFGQUZGblpsZFdBUUI0ZG1hQVo0QmZYVlpsVjJWUFRVZEZMU3NqSVJVVENBY0FWUUZWRGdZV0t3VWlKeVluTlFZSElpWTFORGMyUHdJbk5EWXpNaFlWRkJjVk5qYzJOelkzTmpNeUZSUUhCZ2NHQndZaklpY21OVFEzTmpjMk56WTNCZ2NHQnhRV0Z4NEJNeFlYRmhjeU56WXpOamMyTXpJWEZoVVVCd1lESWk4QkpqVTBOamN5SHdFV0ZSUUdOeUluTkNZbkxnRW5OQ1luSmpVME56WXpNaGNXRnhZVkZBY0dBZng1UEV3RFh6Y1ZIRHNzTmlnQkFSd1VGQjBDZFQ0aFZDWWxCd2N3RVJNeEdDVU1EQjBPQng0RUhCTUZBdzBvUmtLS0FRb0RCUUVRR3pJeUdUY0dCRDhqREF3YkVBY1pVaVVVRHlZT0hCVVZEU1lQSFdJYUVRTUJCd0lFQXdNWUJnOGNEQXdsRmdjWkRCNGlLRkRIR3djZkVpd0dDQkVMQWQ0VUhSMFVXbG9TSEJrTkdRb01Bam9qSVQ5ZU14b0hHQXdNSEJRRk9DTU9BaVVKR1JvaDVnZ0lBd1VNQndnQkJRSUxGUWNaREF3YUVUTUNiQTRtRGhVVEhRRVBKZzhURkIwNUdRRURBZ2tDQWdFQ0FRMGREUXdZQmhZbEN3MGJFQWNBQUFBQ0FIZi96d0xpQXBRQUxnQlFBREpBTHg4YkFnTUJBVXdBQWdFQ2hRQUJBd0dGQlFFREFBT0ZCQUVBQUhZdkx3RUFMMUF2VUVKQUpDSUFMZ0V1QmdZV0t4Y2lKeVkxTkRjMlB3RTJNelkvQVRZM1BnSTNOajhDTmo4Q05DOEJORGMyTXpJWEZoVVVCd1lIQmdjR0V5SW5KaWNtTHdFMEl5OENKalUwTnpZek1oY1dId0VVSHdFV0Z4WVZGQWNHelEwT0ZpUVZGQm9DQWxrOExTOGFBd0VCQWhVYkZRUVNDUU1CQVFFSEN4NG1DUVF5TVlDQnBBZFBCUXdWTFE0VEdnRURCd0lRQ3hBWEVRMHBFQTBDQWhnaENCVU5NUWdNSFNRTEJnY0tBaWt3SlNvaUF3SUNBUlkxS1FvcUxBOFdHUVFRRGc0V0pCc2JVSEYzYTNFekFnR0FBZ1ZRRml4REFRY0tBZzhYRVE0UURDdzZJQU1EQXpBdURBNGFFQWdBQUFBRUFDai96d05yQXhJQUxnQlFBR0FBZXdCb1FHVWZHd0lEQkFGTUFBY0ZCNFVBQWdVR0JRSUdnQXNCQmdFRkJnRitBQUVFQlFFRWZna0JBd1FBQkFNQWdBZ0JBQUNFQUFVQ0JBVlpBQVVGQkdFS0FRUUZCRkZpWVZKUkx5OEJBSE54WVh0aWUxcFlVV0JTWUM5UUwxQkNRQ1FpQUM0Qkxnd0dGaXNYSWljbU5UUTNOajhCTmpNMlB3RTJOejRDTnpZL0FqWS9BalF2QVRRM05qTXlGeFlWRkFjR0J3WUhCaE1pSnlZbkppOEJOQ012QWlZMU5EYzJNeklYRmg4QkZCOEJGaGNXRlJRSEJnRWlMd0VtTlRRMk56SWZBUllWRkFZM0lpYzBKaWN1QVNjMEppY21OVFEzTmpNeUZ4WVhGaFVVQndaK0RRNFdKQlVVR2dJQ1dUd3RMeG9EQVFFQ0ZSc1ZCQklKQXdFQkFRY0xIaVlKQkRJeGdJR2tCMDhGREJVdERoTWFBUU1IQWhBTEVCY1JEU2tRRFFJQ0dDRUlGUTBCNHhRUEpnNGNGUlVOSmc4ZFlob1JBd0VIQWdRREF4Z0dEeHdNRENVV0J4a01NUWdNSFNRTEJnY0tBaWt3SlNvaUF3SUNBUlkxS1FvcUxBOFdHUVFRRGc0V0pCc2JVSEYzYTNFekFnR0FBZ1ZRRml4REFRY0tBZzhYRVE0UURDdzZJQU1EQXpBdURBNGFFQWdCQ1E0bURoVVRIUUVQSmc4VEZCMHZHUUVEQWdrQ0FnRUNBUTBkRFF3WUJoWWxDdzBiRUFjQUFRQTIvK2dER2dMRkFIVUFuRUFLY2x3akdRNEZBUVFCVEV1d0RGQllRRFlBQlFZR0JYQUFBZ01FQXdJRWdBQUVBUU1FQVg0QUJ3RUFBUWNBZ0FBR0FBTUNCZ05vQUFFSEFBRlpBQUVCQUdFSUFRQUJBRkViUURVQUJRWUZoUUFDQXdRREFnU0FBQVFCQXdRQmZnQUhBUUFCQndDQUFBWUFBd0lHQTJnQUFRY0FBVmtBQVFFQVlRZ0JBQUVBVVZsQUZ3RUFibXhVVWs1TU1TOHNLeHdiQndVQWRRRjFDUVlXS3hjdUFUVTBOajhDTmo4Qk5qOEJKaWNtTHdFbUp5WW5KalUzTmpNeUZ4WVhGaDhCTmpjeU5UWTNOamNoQmdjR0l5SW5KalUwUHdFMk1qWTNOajhCTmo4Qk5qYzJOelUyTnpZMU5EWXpNaFlWRkFjaE1oWVZGQWNHQndZSEZBWUhNaFlYSGdFVkZoY1dGUlFIQmlNaUx3RW1Kd1lIQnJzVUhCd1VIQkVZRndrUlJsZ3RCUkVTRFFjR0ZBb0dBUXdrQndZdUppQWlDd2NFQXdzSkx5cisyVHhQWnhnTURoVWtCUVlDQkJ3MExBZ1pHZ0lFQXc4SkF3RUdIUk1WSEFvQlJSUWRGZ3dySmpnQkFRRURHZ29CRWhNWUJnOGNFaTRjQnhnN2ZWTVlBUndVRkJ3QkFRTUdDUVFITERvY0JRd0tCd01CQlJJTURRd2pBUTBlRmhRSEJnZ0REdzlOWlVnck53b05HeVFMQWdNQ0RSY2dCeE1oQXdRR0ZoTUNCZ1VVRFJVY0hCVWdIeDBVR1E4ZVgxVktBUUVCQXhRSEFRRU5DdzhjREF3WkloWUhFREZMTVFBQUFBTUFOdi9vQTJBREhBQjFBSVVBb0FEY1FBcHlYQ01aRGdVQkJBRk1TN0FNVUZoQVRRQUxDUXVGQUFVSkNnWUZjZzRCQ2dnSkNnaCtBQUlEQkFNQ0JJQUFCQUVEQkFGK0FBY0JBQUVIQUlBQUNRMEJDQVlKQ0drQUJnQURBZ1lEYUFBQkJ3QUJXUUFCQVFCaERBRUFBUUJSRzBCT0FBc0pDNFVBQlFrS0NRVUtnQTRCQ2dnSkNnaCtBQUlEQkFNQ0JJQUFCQUVEQkFGK0FBY0JBQUVIQUlBQUNRMEJDQVlKQ0drQUJnQURBZ1lEYUFBQkJ3QUJXUUFCQVFCaERBRUFBUUJSV1VBbmg0WjNkZ0VBbUphR29JZWdmMzEyaFhlRmJteFVVazVNTVM4c0t4d2JCd1VBZFFGMUR3WVdLeGN1QVRVME5qOENOajhCTmo4QkppY21Md0VtSnlZbkpqVTNOak15RnhZWEZoOEJOamN5TlRZM05qY2hCZ2NHSXlJbkpqVTBQd0UyTWpZM05qOEJOajhCTmpjMk56VTJOelkxTkRZek1oWVZGQWNoTWhZVkZBY0dCd1lIRkFZSE1oWVhIZ0VWRmhjV0ZSUUhCaU1pTHdFbUp3WUhCZ0VpTHdFbU5UUTJOeklmQVJZVkZBWTNJaWMwSmljdUFTYzBKaWNtTlRRM05qTXlGeFlYRmhVVUJ3YTdGQndjRkJ3UkdCY0pFVVpZTFFVUkVnMEhCaFFLQmdFTUpBY0dMaVlnSWdzSEJBTUxDUzhxL3RrOFQyY1lEQTRWSkFVR0FnUWNOQ3dJR1JvQ0JBTVBDUU1CQmgwVEZSd0tBVVVVSFJZTUt5WTRBUUVCQXhvS0FSSVRHQVlQSEJJdUhBY1lPMzFUQVpNVUR5WU9IQlVWRFNZUEhXd2FFUU1CQndJRUF3TVlCZzhjREF3bEZnY1pEQmdCSEJRVUhBRUJBd1lKQkFjc09od0ZEQW9IQXdFRkVnd05EQ01CRFI0V0ZBY0dDQU1QRDAxbFNDczNDZzBiSkFzQ0F3SU5GeUFIRXlFREJBWVdFd0lHQlJRTkZSd2NGU0FmSFJRWkR4NWZWVW9CQVFFREZBY0JBUTBMRHh3TURCa2lGZ2NRTVVzeEFuY09KZzRWRXgwQkR5WVBFeFFkTHhrQkF3SUpBZ0lCQWdFTkhRME1HQVlXSlFzTkd4QUhBQUFBQVFBci85Z0RRQUxOQUVvQVJrQkRHd0VEQkFGTUFBVUVCWVVJQVFBQkFJWUFCQUFEQWdRRGFRWUJBZ0VCQWxjR0FRSUNBVjhIQVFFQ0FVOEJBRVJDUGp3eEx5VWlIaHdZRmhJUUFFb0JTZ2tHRmlzWElpY21OVFEzTmo4Qk5qYzFOamMyTndVaUpqVTBOak1oTnpRbkJpTWlKalUwTmpjek1qOEJNamMyTno0Qk56WXpNaGNXRlJRSEJnY1ZGaFVISVRJV0ZSUUdJeUVPQVFjR0J3YXVHZzhIR1NRU0h6b3RFUWtGQS83bkZCMGRGQUVvQVFSVlZoUWRIUlFZWmowRkJ4ZFlUUUlGQVRBUEdnOEhHR1p3QlFFQktSUWRIUlQreXdvekYxeGlEU2dZQ3cwY0RoVU5Halk3QVJZWEN3c0JIUlFVSFN3MU5Ra2RGQlFjQVFvQkJROGZBZ0VCR0JjTURSME5OUlVGTHpROEhSUVVIVEJZRjNFMUJnQURBQ3YvMkFOY0F2UUFTZ0JlQUhZQTc3VWJBUU1JQVV4THNBcFFXRUE3QUFVSkJBa0ZCSUFNQVFBQkFJWUFDdzRCQ2dnTENta0FDUTBCQ0FNSkNHa0FCQUFEQWdRRGFRWUJBZ0VCQWxjR0FRSUNBVjhIQVFFQ0FVOGJTN0FMVUZoQU5Bd0JBQUVBaGdBTERnRUtDQXNLYVFrQkJRMEJDQU1GQ0drQUJBQURBZ1FEYVFZQkFnRUJBbGNHQVFJQ0FWOEhBUUVDQVU4YlFEc0FCUWtFQ1FVRWdBd0JBQUVBaGdBTERnRUtDQXNLYVFBSkRRRUlBd2tJYVFBRUFBTUNCQU5wQmdFQ0FRRUNWd1lCQWdJQlh3Y0JBUUlCVDFsWlFDZGdYMHhMQVFCd2JsOTJZSFpXVkV0ZVRGNUVRajQ4TVM4bEloNGNHQllTRUFCS0FVb1BCaFlyRnlJbkpqVTBOelkvQVRZM05UWTNOamNGSWlZMU5EWXpJVGMwSndZaklpWTFORFkzTXpJL0FUSTNOamMrQVRjMk16SVhGaFVVQndZSEZSWVZCeUV5RmhVVUJpTWhEZ0VIQmdjR0FTSW5KaWNtTlRRM05qTXlGeFlYRmhVVUJ3WTNKaWMxSmpVMEp6YzBKeVkxTkQ0Qk16SVhGaGNVQndhdUdnOEhHU1FTSHpvdEVRa0ZBLzduRkIwZEZBRW9BUVJWVmhRZEhSUVlaajBGQnhjZkZ3SUZBVVlQR2c4SEdEQk5CUUVCS1JRZEhSVCt5d296RjF4aURRSUtEQXNSQmhFSERSME1EQk1FRUFVT1NTMEZBd01CQkFnT0Z3d2NEeFlCQmcwb0dBc05IQTRWRFJvMk93RVdGd3NMQVIwVUZCMHNOVFVKSFJRVUhBRUtBUVVGQndJQkFTUVhEQTBkRFIwWEJTODBQQjBVRkIwd1dCZHhOUVlDVGdZS0V6b0hEQXdaQmdvVVBBY0xDaGswQXk0RENnY0JCQUVDQXd3TkRCY09HQ1VyRFFzWUFBQURBTGovdVFMeEFnMEFGd0EzQUZjQVZrQlRUUUVBQXhzQkFnQUNUQUFHQVFhRkFBRURBWVVBQXdBRGhRY0JBQUlBaFFnQkFnVUNoUUFGQkFRRldRQUZCUVJoQ1FFRUJRUlJPVGdaR0FFQVVsQS9QVGhYT1ZjdUxCZzNHVGNOQ3dBWEFSY0tCaFlySlNJbkppY21KeVkxTkRjMk16SVhGaGNXRnhZVkZBY0dCeUltSnpRbk5TWW5KaThCSmljbU5TWTFORGMyTXpJV0h3RVdGeFlYRkFZRElpWTFORFkzTWpjMk56WTNOamMyTnpZL0FUWS9BVDRCTXpJV0Z3WUhBZ0cySkFzSUJRWVJBd2tPR3cwTklBd0ZDQUlJRE1jVkd3RUJBZ01GQXdNQ0JnSUlHQXdNSFJzSkF3TUVDQUVkR1JRY0hCUWJHRFF4Q1Fzc0p6d21DQVlCRXdVQkFSd1VGQndCQlRLOStTUWlJelV5Q0FjTURSWUpGRzRqSWdjR0RRNFdOUndWQndZQkRRd1ZGUlVXRWdJRENCTWJEd2N4TVJjVEVpQWhGUnorOVIwVUZCd0JCUTBrQmdvbU0wOUlEdzhCTHlZWUZCd2NGR1phL3FBQUFBQUFBd0JLLzdNRERBS0lBQm9BT0FCbkFFMUFTalVCQWdFQlRBQUFBd0NGQmdFREFRT0ZCd0VCQWdHRkNBRUNCUUtGQUFVRUJBVlpBQVVGQkdFSkFRUUZCRkU2T1J3YkFBQmVYRU0rT1djNlp5d3FHemdjT0FBYUFCb3NDZ1lYS3dFaUp5WW5KaWNtSnlZMU5EWXpNaGNXRnhZZkFUTVdGUlFIQmdjaUx3RW1KeVluSmpVbkpqVTBOell6TWhjV0Z4WVhIZ0VmQVJRSEJnTWlKalUwTmpjeU5qTXlOekkzTXpZL0FUWS9BVFkxTmo4Qk5qOEJOajhCTmpVME5qTXlGaFVVQndZSEJnY0dBYUlHRVJrUUR3b0VCZ29nRkJNT0hnWUhCUkVCQnh3SzhTY0pDd29OQmdnQkJRd1NEZzRZRUJZRUJnY1ZDUWNCREE4bEZSd2NGUkFFQWhFMEFnRUJOak1NT0NzRENEVXFCeGtkQXhBSUFRUWNGQlFkVGxTRlEwWlNBVVVGQ1ZjNE9ROE9EUklYR2hJd09DRVFUQTROSGc0Rk1TZ21LQ2NNS3dFQ0VRMFBHUkFMRVJvaUd4cEJLQk1LRHc4Uy9wOGRGQlFjQVFFVUFSa2VCeDhmQWdZQktUVUpKRG9KSnlvTkVpc1VIUjBiam4rQ1VTa2tMUUFGQUVyL3N3TTRBeHdBR2dBNEFHY0Fkd0NTQUgxQWVqVUJBZ0VCVEFBS0NBcUZEd0VKQ0FBSUNRQ0FBQUFIQ0FBSGZnWUJBd2NCQndNQmdBc0JBUUlIQVFKK0RBRUNCUWNDQlg0QUNBNEJCd01JQjJrQUJRUUVCVmtBQlFVRVlRMEJCQVVFVVhsNGFXZzZPUndiQUFDS2lIaVNlWkp4YjJoM2FYZGVYRU0rT1djNlp5d3FHemdjT0FBYUFCb3NFQVlYS3dFaUp5WW5KaWNtSnlZMU5EWXpNaGNXRnhZZkFUTVdGUlFIQmdjaUx3RW1KeVluSmpVbkpqVTBOell6TWhjV0Z4WVhIZ0VmQVJRSEJnTWlKalUwTmpjeU5qTXlOekkzTXpZL0FUWS9BVFkxTmo4Qk5qOEJOajhCTmpVME5qTXlGaFVVQndZSEJnY0dBU0l2QVNZMU5EWTNNaDhCRmhVVUJqY2lKelFtSnk0Qkp6UW1KeVkxTkRjMk16SVhGaGNXRlJRSEJnR2lCaEVaRUE4S0JBWUtJQlFURGg0R0J3VVJBUWNjQ3ZFbkNRc0tEUVlJQVFVTUVnNE9HQkFXQkFZSEZRa0hBUXdQSlJVY0hCVVFCQUlSTkFJQkFUWXpERGdyQXdnMUtnY1pIUU1RQ0FFRUhCUVVIVTVVaFVOR1VnR0hGQThtRGh3VkZRMG1EeDFpR2hFREFRY0NCQU1ER0FZUEhBd01KUllIR1F3QlJRVUpWemc1RHc0TkVoY2FFakE0SVJCTURnMGVEZ1V4S0NZb0p3d3JBUUlSRFE4WkVBc1JHaUliR2tFb0V3b1BEeEwrbngwVUZCd0JBUlFCR1I0SEh4OENCZ0VwTlFra09na25LZzBTS3hRZEhSdU9mNEpSS1NRdEFxQU9KZzRWRXgwQkR5WVBFeFFkT1JrQkF3SUpBZ0lCQWdFTkhRME1HQVlXSlFzTkd4QUhBQUlBTVAvRkF6SUNqd0FOQUR3QW1FdXdDVkJZUUNJQUFRY0JBQVVCQUdjQUJRWUJCQU1GQkdjQUF3SUNBMWtBQXdNQ1lRQUNBd0pSRzB1d0NsQllRQ2dBQkFZREJnUnlBQUVIQVFBRkFRQm5BQVVBQmdRRkJtY0FBd0lDQTFrQUF3TUNZUUFDQXdKUkcwQWlBQUVIQVFBRkFRQm5BQVVHQVFRREJRUm5BQU1DQWdOWkFBTURBbUVBQWdNQ1VWbFpRQlVDQURrMEx5b21JeFFURHc0SkJnQU5BZzBJQmhZckFTRWlKalUwTmpNaE1oWVZGQVlCSWlZMU5EWXpOelkvQVRZL0FqWTNOajhCTmpjMUlTSW1OVFEyTXlBMk93RWVBUlVVQmlNbklnWWpCZ2NHQW5UK21SUWRIUlFCWnhRZEhmNDlGQjBmSEFFVENRUU5EQUVDSHdZUERBZ2ZFZjdkRkIwZEZBSWdRQ0FnRkIwZEZDY2VQcGtMS2tnQ0xSMFVGQjBkRkJRZC9aZ2VFeFVjQVFNRkFRY0lBUUVmQ2hjWkVVOXNBUjBVRkIwREFoc1VGQjBCQkc5dHVnQUFCQUF3LzhVRFhBTDBBQTBBUEFCUUFHZ0Eza3V3Q1ZCWVFEUUFDZzBCQ1FBS0NXa0FBUXNCQUFjQkFHY0FDQXdCQndVSUIya0FCUVlCQkFNRkJHY0FBd0lDQTFrQUF3TUNZUUFDQXdKUkcwdXdDbEJZUURvQUJBWURCZ1J5QUFvTkFRa0FDZ2xwQUFFTEFRQUhBUUJuQUFnTUFRY0ZDQWRwQUFVQUJnUUZCbWNBQXdJQ0Exa0FBd01DWVFBQ0F3SlJHMEEwQUFvTkFRa0FDZ2xwQUFFTEFRQUhBUUJuQUFnTUFRY0ZDQWRwQUFVR0FRUURCUVJuQUFNQ0FnTlpBQU1EQW1FQUFnTUNVVmxaUUNWU1VUNDlBZ0JpWUZGb1VtaElSajFRUGxBNU5DOHFKaU1VRXc4T0NRWUFEUUlORGdZV0t3RWhJaVkxTkRZeklUSVdGUlFHQVNJbU5UUTJNemMyUHdFMlB3STJOelkvQVRZM05TRWlKalUwTmpNZ05qc0JIZ0VWRkFZakp5SUdJd1lIQmdFaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjR055WW5OU1kxTkNjM05DY21OVFErQVRNeUZ4WVhGQWNHQWt6K21SUWRIUlFCWnhRZEhmNWxGQjBmSEFFVENRUU5EQUVDSHdZUERBZ2ZFZjdkRkIwZEZBSWdRQ0FnRkIwZEZDY2VQcGtMS2tnQlhRd0xFUVlSQncwZERBd1RCQkFGRGtrdEJRTURBUVFJRGhjTUhBOFdBUVlOQWkwZEZCUWRIUlFVSGYyWUhoTVZIQUVEQlFFSENBRUJId29YR1JGUGJBRWRGQlFkQXdJYkZCUWRBUVJ2YmJvQ1ZBWUtFem9IREF3WkJnb1VQQWNMQ2hrMEF5NERDZ2NCQkFFQ0F3d05EQmNPR0NVckRRc1lBQUFCQVNILzFnTDdBcjhBTWdBblFDUXNHeEVEQWdFQlRBQUJBZ0dGQUFJQUFvVURBUUFBZGdFQUh4NE5Dd0F5QVRJRUJoWXJCU0ltTlRZMU5DY21KejRCTXpJV0Z4UVhGaDhCRmg4QkZoY1dGUlFIQmlNbkppOEJKaWNqSmlJMUp5WXZBUllWQnc0QkFXQVRIZ0lJQndFQkhCUVVIQUVFZ1pZQkZSVU9GQWtIQWdvbURDb2pBVGFHQWdFQ0NRd0xBZ1lCQVJzcUhCVTZPb0NCaVlrVUhSMFVZR0FsWFFFUENnTUZFZzBNQndZakFRb2JBU1EvQVFFREJRTUJlbnBzRlJ3QUFBQUFBd0VoLzlZREpBSy9BRElBUWdCZEFGbEFWaXdiRVFNQ0F3Rk1BQUVHQVlVQUJnUUdoUWtCQlFRREJBVURnQUFDQXdBREFnQ0FCd0VBQUlRQUJBVURCRmtBQkFRRFlRZ0JBd1FEVVVSRE5ETUJBRlZUUTExRVhUdzZNMEkwUWg4ZURRc0FNZ0V5Q2dZV0t3VWlKalUyTlRRbkppYytBVE15RmhjVUZ4WWZBUllmQVJZWEZoVVVCd1lqSnlZdkFTWW5JeVlpTlNjbUx3RVdGUWNPQVJNaUx3RW1OVFEyTnpJZkFSWVZGQVkzSWljMEppY3VBU2MwSmljbU5UUTNOak15RnhZWEZoVVVCd1lCWUJNZUFnZ0hBUUVjRkJRY0FRU0JsZ0VWRlE0VUNRY0NDaVlNS2lNQk5vWUNBUUlKREFzQ0JnRUJHLzRVRHlZT0hCVVZEU1lQSFd3YUVRTUJCd0lFQXdNWUJnOGNEQXdsRmdjWkRDb2NGVG82Z0lHSmlSUWRIUlJnWUNWZEFROEtBd1VTRFF3SEJpTUJDaHNCSkQ4QkFRTUZBd0Y2ZW13VkhBSUFEaVlPRlJNZEFROG1EeE1VSFVNWkFRTUNDUUlDQVFJQkRSME5EQmdHRmlVTERSc1FCd0FBQUFFQVIvL1BBMFlDeFFBNUFEcEFOeGtCQUFFQlRBQURBZ09GQmdFQUFRQ0dCQUVDQVFFQ1Z3UUJBZ0lCWHdVQkFRSUJUd0VBTkRJdUxDY2xJaUFjR2dBNUFUa0hCaFlyRnlJbkpqVTBQd0kyTnpJMU16YzJOelkzTmo4Qk5qOERCU0ltTlRRMk15RW5QZ0V6TWhZVkZCOEJJVElXRlJRR0l3VUdCd1lIQnFJTURoWWtGd3NjSkFJQkJ5a1ZCUkFKRGdNVEJnUUZBZjdtRkIwZEZBRWJBd0VjRkJRZEFRRUJJUlFkSFJUKzNnVTlXcWNITVFnT0d5UUxDQVVNR3dJR0l4d0ZHUTRjQmpraUZ6SVRBUjBVRkIyRUZSd2NGU2tvTWgwVUZCd0JvR3VaT2dJQUFBSUFNUUF5QXhzQ1Z3QVBBQ0VBaEV1d0NWQllRQnNBQkFNR0FnSUJCQUpwQUFFQUFBRlhBQUVCQUY4RkFRQUJBRThiUzdBS1VGaEFJZ1lCQWdNQkF3SUJnQUFFQUFNQ0JBTm5BQUVBQUFGWEFBRUJBRjhGQVFBQkFFOGJRQnNBQkFNR0FnSUJCQUpwQUFFQUFBRlhBQUVCQUY4RkFRQUJBRTlaV1VBVkVSQURBQnNZRkJJUUlSRWhDd2NBRHdNUEJ3WVdLeVVnSlM0Qk5UUTJOd1FoTWhZVkZBWURJaWNoSWlZMU5EWXpKVElYRmhVVUJ3WUM2djY4L3J3VkhCd1ZBVVFCUkJRZEhVTUpDUDRURkIwZEZBSGtFaE1rR1FzeUJBRWNGQk1kQVFRZEZCUWRBY0FESEJRVUhRRUZEU0liRUFZQUFBQUJBSHYvNEFMY0FuMEFZZ0E4UURsZVFpa2ZFd1VFQVFGTUFBRUNCQUlCQklBQUJBQUNCQUIrQUFBQWhBQURBZ0lEVndBREF3SmZBQUlEQWs5VFVUczRORElqSWhBRkJoY3JGeUluSmpVME56WS9BVFkzTWo0Q056WS9BU1luTGdFdkFTWW5KaWNtTlRRM05qTVhGaGNlQVI4Qk5qOEJOamMyUHdFaElpWTFORFl6SVRJWEZoVVVCd1lIRmg4QkZoY25NaDRCRlI0QkZSUUdLd0VtTHdFMEx3RW1KeUkxSndZSEJnZXREUThXSkJrWktqVWFBUUlDQVFFZEpCOGZJVHcySEFnSUdoUUtCZ0lLSmd3K05pRjFFUUlEQkFFbEhBNExGUDVNRkIwZEZBSG5GQTRVRGk5UVBTQUNDQWNDQVFNREN4d2RFUXNWSGhJRUJCOGVBUlFOS2wyM0lBZ01IU1FMQmdnUEZ4Y0NBUUVCR0MwbEVoQWJJQXdFQkFVRUV3d01CZ2NqQVE0akVqWU5BUUVIQVRFekdob3pIUlFVSFFrUEt5RWdoR1F1SmdNS0N3UUdBd0VPR1JNV0hRSW1Gd0VFQmlRV0FRNE5OSFV1QUFBQ0FFZi96QU1TQXI0QVNRQmxBSkMxTXdFR0NBRk1TN0FOVUZoQU5RQURBUUVEY0FBSUFBWUFDQWFBQUFZSEFBWUhmZ2tCQndVQUJ3VitBQVVGaEFRQ0FnRUFBQUZYQkFJQ0FRRUFZQUFBQVFCUUcwQTBBQU1CQTRVQUNBQUdBQWdHZ0FBR0J3QUdCMzRKQVFjRkFBY0ZmZ0FGQllRRUFnSUJBQUFCVndRQ0FnRUJBR0FBQUFFQVVGbEFFa3hLWFZ4S1pVeGxHUzhqSXpFVk5Rb0dIU3NCTmpjMlB3RWhCeUltTlRRM05qTVhOeGN6TnpRMk16SVdIUUV6TWhZVkZBY0dCd1lIRmhVVUJnY1VCaU1pSmpVME56WTFCZzhCSWljbU5UUTNOamMyTnpNL0FUTTJOekkvQVJNaklpY21Md0VqSmljaU5TWW5KalUwTnpZek1oY1dGeFlWRkFZQ0tBSUNNU0FGL2xZUEdqQUdFUmtUTnhlQkFSd1VGQjNlRkIwSENSSkpyd1FKQVIwVUV4MEVCWDJJREE0T0ZpUk5PeWdLQVFZU0FZdFhBd0lEdUFNVERSZ2VDUUVPRWdFYURBY1pDd3NJQjFGRUR4MEJvQUVDS1NZSEFSY2REUXdZQXdJQk1oUWRIUlF5SFJRTkN5QWNjbUVqSkNobE1oVWNIQlV4TVRnOFBSc0JCd3dkSmdrUEZRd0hBZ2svUVFRQy9wNE9JQm9JREFnQkJSUUxEUndQQmdJWldRMFZGQndBQUFBQkFEci8rQUxtQXFnQU13QXNRQ2tvQVFFQ0FVd0FBZ0VDaFFBQkFBQUJXUUFCQVFCaEF3RUFBUUJSQVFBbEl3Z0ZBRE1CTXdRR0Zpc1hJaVkxTkRZN0FUSTJNelkvQVRZM05qOEJOamMyTno0QlB3RTJQd0UyTno0Qk56WXpNaGNXRlJRSEJnY0dCd1lIQmdjR2RSMGVIQlVKQ1FZQkZSOEhCd1oxVVE0SUJ5QVlCZ0lCQ1RzcEJCSUpCQXdSQ3cwYkR3Y0NCUU1JRXp4bGFLaGlDQndWRXg0QkF3MEVBd0kxT3d3R0J4c2VCZ1FCREZCYkN5b3VGU2NLQnhrTERRWUhFaElvTXBkemJVd3hBQUFDQUIzLzlnTUVBbkVBTFFCZEFDMUFLandiQWdBQkFVd0FBd0VEaFFBQkFBR0ZCQUVBQWdDRkFBSUNkZ0VBV2xnNk9DTWhBQzBCTFFVR0ZpczNJaWNtTlRRM1BnRTNNelkzTmpjeU5UWS9BVFkzTmo4Qk5UWTlBU1kxTkRjMk16SVZGQWNHRHdJR0J3WUJKeFlmQVJZVkZBWUhCaU1pSmowQk5qVTBMd0VtSnlZbkppOEJKaWNtSnpRdkFTNEJKeGNtTlRRMk16SVhNaGRQSEE4SEdBSUNBd0VmSEF3Q0FTZ2FCQWtLSVFrQkFnTVhDdzAyRWcwUEFTQThmUXdDRndJZlB3MHBBdzBQRkJJZUFnSUVDeDhJQnhnY0RRRUNDd2dEQmdNQkFRTU5IUllxSEFFRER4a01EQmdUQVFFREd4NE9CQUUxUFFrU0hrOHpCUWdZRGdJS0NSZ1FCMUUwUENZbEJFNk9YZ2NDQVFOQXF5Vm9TaFVwRHc0YUVnVVNFaElTR1MxU0ZCVkRRUjBGQkJZWUF3TU9Bd0lDQXhBVEVSMVlDQUFBQlFBZC8vWURYQUwwQUFJQU1BQmdBSFFBakFCZlFGdy9IZ0lBQkFGTUFBTUZBUVVEQVlBQUFRWUZBUVorQ0FFQUJBSUVBQUtBQUFJQ2hBQUZBd1FGV1FBSENnRUdCQWNHYVFBRkJRUmhDUUVFQlFSUmRuVmlZUVFEaG9SMWpIYU1iR3BoZEdKMFhWczlPeVlrQXpBRU1Bc0dGaXNCRnlJQklpY21OVFEzUGdFM016WTNOamN5TlRZL0FUWTNOajhCTlRZOUFTWTFORGMyTXpJVkZBY0dEd0lHQndZQkp4WWZBUllWRkFZSEJpTWlKajBCTmpVMEx3RW1KeVluSmk4QkppY21KelF2QVM0Qkp4Y21OVFEyTXpJWE1oYzNJaWNtSnlZMU5EYzJNeklYRmhjV0ZSUUhCamNtSnpVbU5UUW5OelFuSmpVMFBnRXpNaGNXRnhRSEJnSnlBUUg5M1J3UEJ4Z0NBZ01CSHh3TUFnRW9HZ1FKQ2lFSkFRSURGd3NOTmhJTkR3RWdQSDBNQWhjQ0h6OE5LUU1ORHhRU0hnSUNCQXNmQ0FjWUhBMEJBZ3NJQXdZREFRRUREUjBXS2h3QkEwa01DeEVHRVFjTkhRd01Fd1FRQlE1VExRVURBd0VFQ0E0WERCd1BGZ0VHRFFJUUFmNEFHUXdNR0JNQkFRTWJIZzRFQVRVOUNSSWVUek1GQ0JnT0Fnb0pHQkFIVVRROEppVUVUbzVlQndJQkEwQ3JKV2hLRlNrUERob1NCUklTRWhJWkxWSVVGVU5CSFFVRUZoZ0RBdzREQWdJREVCTVJIVmdJRlFZS0V6b0hEQXdaQmdvVVBBY0xDaGswQXk0RENnY0JCQUVDQXd3TkRCY09HQ1VyRFFzWUFBQUVBQjMvOWdOZ0F0MEFMUUJkQUc0QWVBQ2RRQTk0YndJQkF4c0JCQUU4QVFBRUEweExzQXRRV0VBeUFBTUdBUVlEQVlBQUFRUUdBUVIrQ0FFRUFBWUVjQWNCQUFJR0FBSitBQUlDaEFBRkJnWUZXUUFGQlFaZkFBWUZCazhiUURNQUF3WUJCZ01CZ0FBQkJBWUJCSDRJQVFRQUJnUUFmZ2NCQUFJR0FBSitBQUlDaEFBRkJnWUZXUUFGQlFaZkFBWUZCazlaUUJsZlhnRUFkblZuWlY1dVgyNWFXRG80SXlFQUxRRXRDUVlXS3pjaUp5WTFORGMrQVRjek5qYzJOekkxTmo4Qk5qYzJQd0UxTmowQkpqVTBOell6TWhVVUJ3WVBBZ1lIQmdFbkZoOEJGaFVVQmdjR0l5SW1QUUUyTlRRdkFTWW5KaWNtTHdFbUp5WW5OQzhCTGdFbkZ5WTFORFl6TWhjeUh3RWlKeVkxTkRjMk16SVdGeFlWRkFjR0p6YzJOelUyTlFjR0IwOGNEd2NZQWdJREFSOGNEQUlCS0JvRUNRb2hDUUVDQXhjTERUWVNEUThCSUR4OURBSVhBaDgvRFNrRERROFVFaDRDQWdRTEh3Z0hHQndOQVFJTENBTUdBd0VCQXcwZEZpb2NBUU52UlJZSE5oQXlGMEVOQkVFZUlBWUtDd0lTQlFZUEdRd01HQk1CQVFNYkhnNEVBVFU5Q1JJZVR6TUZDQmdPQWdvSkdCQUhVVFE4SmlVRVRvNWVCd0lCQTBDckpXaEtGU2tQRGhvU0JSSVNFaElaTFZJVUZVTkJIUVVFRmhnREF3NERBZ0lERUJNUkhWZ0lEVHdWRlVZVUdSWXVFQTlKSGc5aEFRSUhBUVVHQVFjRUFBQUJBS0wvN3dNYkFyTUFWd0JOUUVvT0RRSUNBVEl1R3dNRkFnSk1BQUVDQVlVQUFnVUNoUUFGQkFXRkFBTUdBQU5aQUFRQUJnQUVCbWtBQXdNQVlRY0JBQU1BVVFFQVZsUk9URU5CUUQwbEl4TVJBRmNCVndnR0Zpc0ZJaWNtSnlZMU56WTNOQ1k5QVNjME56WXpNaGNXSFFFWEZoMEJNelkvQWpZM05qTXlGeFlWRkFjR0J3WVBBUVlWRnhZVkZoY2VBeGNlQVRNeU56WTNOamMyTXpJMU16WTNOak15RnhZVkZBY0dEd0VHQVdKcUtDQUdBd0VCQVFNRkJ3d2REQThiQVFJQk5WczdJRkF5REEwYkR3WVlhNGRUV2dFQ0FnRUJCZ1FDQWdVR0V3Z2lFUkE5UFRVeEJRWUJBU2xEQndZTkRoY2xaWkJBUHhFeEtqRWZIeVlZb3pzM0d5NHNEUThXQ0E1ZkVpd3NMQjBJS0JnT0l4OEdHQXdNSEE4K01pa01QeUVoSGdJRENCRUlBZ01EQkFVQ0FRVURBZ1FCQVFRV0Fna01IQ1FMSWdNREJ3QURBS0wvN3dOY0F2UUFWd0JyQUlNQWVrQjNEZ0VKQVEwQkJ3a3lMaHNEQlFJRFRBQUJDQWtJQVFtQUFBSUhCUWNDQllBQUJRUUhCUVIrQUFvTkFRa0hDZ2xwQUFnTUFRY0NDQWRwQUFNR0FBTlpBQVFBQmdBRUJta0FBd01BWVFzQkFBTUFVVzFzV1ZnQkFIMTdiSU50ZzJOaFdHdFphMVpVVGt4RFFVQTlKU01URVFCWEFWY09CaFlyQlNJbkppY21OVGMyTnpRbVBRRW5ORGMyTXpJWEZoMEJGeFlkQVRNMlB3STJOell6TWhjV0ZSUUhCZ2NHRHdFR0ZSY1dGUllYSGdNWEhnRXpNamMyTnpZM05qTXlOVE0yTnpZek1oY1dGUlFIQmc4QkJnRWlKeVluSmpVME56WXpNaGNXRnhZVkZBY0dOeVluTlNZMU5DYzNOQ2NtTlRRK0FUTXlGeFlYRkFjR0FXSnFLQ0FHQXdFQkFRTUZCd3dkREE4YkFRSUJOVnM3SUZBeURBMGJEd1lZYTRkVFdnRUNBZ0VCQmdRQ0FnVUdFd2dpRVJBOVBUVXhCUVlCQVNsREJ3WU5EaGNsWlpCQVB3RTVEQXNSQmhFSERSME1EQk1FRUFVT1V5MEZBd01CQkFnT0Z3d2NEeFlCQmcwUk1Tb3hIeDhtR0tNN054c3VMQTBQRmdnT1h4SXNMQ3dkQ0NnWURpTWZCaGdNREJ3UFBqSXBERDhoSVI0Q0F3Z1JDQUlEQXdRRkFnRUZBd0lFQVFFRUZnSUpEQndrQ3lJREF3Y0NRUVlLRXpvSERBd1pCZ29VUEFjTENoa3FBeTREQ2djQkJBRUNBd3dOREJjT0dDVXJEUXNZQUFBREFJNy83d05xQXVjQVZ3Qm9BSElBdlVBUGNta09EUVFDQ1RJdUd3TUZCd0pNUzdBTFVGaEFQd0FCQ0FrSUFRbUFBQUlKQndrQ0I0QUxBUWNGQ1Fkd0FBVUVDUVVFZmdBSUFBa0NDQWxuQUFNR0FBTlpBQVFBQmdBRUJta0FBd01BWVFvQkFBTUFVUnRBUUFBQkNBa0lBUW1BQUFJSkJ3a0NCNEFMQVFjRkNRY0ZmZ0FGQkFrRkJINEFDQUFKQWdnSlp3QURCZ0FEV1FBRUFBWUFCQVpwQUFNREFHRUtBUUFEQUZGWlFCOVpXQUVBY0c5aFgxaG9XV2hXVkU1TVEwRkFQU1VqRXhFQVZ3RlhEQVlXS3dVaUp5WW5KalUzTmpjMEpqMEJKelEzTmpNeUZ4WWRBUmNXSFFFek5qOENOamMyTXpJWEZoVVVCd1lIQmc4QkJoVVhGaFVXRng0REZ4NEJNekkzTmpjMk56WXpNalV6TmpjMk16SVhGaFVVQndZUEFRWUJJaWNtTlRRM05qTXlGaGNXRlJRSEJpYzNOamMxTmpVSEJnY0JUbW9vSUFZREFRRUJBd1VIREIwTUR4c0JBZ0UxV3pzZ1VESU1EUnNQQmhocmgxTmFBUUlDQVFFR0JBSUNCUVlUQ0NJUkVEMDlOVEVGQmdFQktVTUhCZzBPRnlWbGtFQS9BWDFGRmdjMkVESVhRUTBFUVI0Z0Jnb0xBaElGQmhFeEtqRWZIeVlZb3pzM0d5NHNEUThXQ0E1ZkVpd3NMQjBJS0JnT0l4OEdHQXdNSEE4K01pa01QeUVoSGdJRENCRUlBZ01EQkFVQ0FRVURBZ1FCQVFRV0Fna01IQ1FMSWdNREJ3SWZQQlVWUmhRWkZpNFFEMGtlRDJFQkFnY0JCUVlCQndRQUFBQUJBSDMvNXdMM0FuVUFOZ0FyUUNnQUF3QUNBUU1DWndBQkFBQUJXUUFCQVFCaEJBRUFBUUJSQVFBcUp5TWZDQVVBTmdFMkJRWVdLeGN1QVRVME5qOEJNamMyUHdJMlB3RTJOejRCTlRZM05EWTFOelkzTmpjMk5TRWlKalUwTmpNaE1oWVZGQWNWQmc4QkJnY09BZmdVSFIwVUZRNGhBZ1FERlJBUUNWTkpBUUltRndJQ0F3UVJDZ0grS0JRZEhSUUNHQlFkQ1FZRUR5U1JPNVFaQVJ3VUZCd0JBUXdDQVFFS0NRc0dQMXNDQWdFeUxnRURBd01LQ1RrN0FnTWRGQlFkSFJRUURBTVpHRWFZamo1aEFBQUFBd0FaLytjRFpnTDBBRFlBU2dCaUFFMUFTZ0FIQ2dFR0JBY0dhUUFGQ1FFRUFnVUVhUUFEQUFJQkF3Sm5BQUVBQUFGWkFBRUJBR0VJQVFBQkFGRk1TemczQVFCY1drdGlUR0pDUURkS09Fb3FKeU1mQ0FVQU5nRTJDd1lXS3hjdUFUVTBOajhCTWpjMlB3STJQd0UyTno0Qk5UWTNORFkxTnpZM05qYzJOU0VpSmpVME5qTWhNaFlWRkFjVkJnOEJCZ2NPQVFFaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjR055WW5OU1kxTkNjM05DY21OVFErQVRNeUZ4WVhGQWNHbEJRZEhSUVZEaUVDQkFNVkVCQUpVMGtCQWlZWEFnSURCQkVLQWY0b0ZCMGRGQUlZRkIwSkJnUVBKSkU3bEFIWURBc1JCaEVIRFIwTURCTUVFQVVPVXkwRkF3TUJCQWdPRnd3Y0R4WUJCZzBaQVJ3VUZCd0JBUXdDQVFFS0NRc0dQMXNDQWdFeUxnRURBd01LQ1RrN0FnTWRGQlFkSFJRUURBTVpHRWFZamo1aEFrY0dDaE02Qnd3TUdRWUtGRHdIQ3dvWktnTXVBd29IQVFRQkFnTU1EUXdYRGhnbEt3MExHQUFBQUFJQWZmL25BMm9DNXdBSkFFZ0FQRUE1Q1FFRUFBQUJBd1FDVEFBRkFBQUVCUUJuQUFRR0FRTUNCQU5wQUFJQkFRSlpBQUlDQVdFQUFRSUJVVWhIUUQ0N09UVXhOQ29XQndZWkt3RTNOamMxTmpVSEJnOEJCZzhCQmdjT0FRY3VBVFUwTmo4Qk1qYzJQd0kyUHdFMk56NEJOVFkzTkRZMU56WTNOamMyTlNFaUpqVTBOak1oTkRjMk16SVdGeFlWRkFjR0l3THJCZ29MQWhJRkJnSURBZzhra1R1VVdSUWRIUlFWRGlFQ0JBTVZFQkFKVTBrQkFpWVhBZ0lEQkJFS0FmNG9GQjBkRkFIYk5oQXlGMEVOQkVFZUlBSnZBUUlIQVFVR0FRY0VhdzBOUnBpT1BtRUNBUndVRkJ3QkFRd0NBUUVLQ1FzR1Axc0NBZ0V5TGdFREF3TUtDVGs3QWdNZEZCUWRSUlFaRmk0UUQwa2VEd0FBQUFBQkFEMEFOUU5KQWpZQUp3QWxRQ0lJQVFFQ0FVd0FBZ0VDaFFBQkFBR0ZBd0VBQUhZQkFCd2FFQTRBSndFbkJBWVdLeVVtSnlZbkppY21Kd1lQQVJVSEJpTWlKeVkxTmpjMk56WTNOak15RnhZWEZoY1dGeFlWRkFZREdCUU9JaVZGUVNtYktuTWlEQk1aSEE4R0FSZ0VFVll0UURjd0t3OGpTUzFHUjFRZU5RRU9JaDg1U3krYkZhQXVBUTBWR0F3TkhRd0hGWGt5U0RRUUlVUTNVVDFFSEJjY0FBTUFQUUExQTBrQ3BBQW5BRGNBVWdCWlFGWUlBUUVEQVV3QUJnUUdoUUFDQkFVRUFnV0FDUUVGQXdRRkEzNEFBUU1BQXdFQWdBY0JBQUNFQUFRQ0F3UlpBQVFFQTJFSUFRTUVBMUU1T0Nrb0FRQktTRGhTT1ZJeEx5ZzNLVGNjR2hBT0FDY0JKd29HRmlzbEppY21KeVluSmljR0R3RVZCd1lqSWljbU5UWTNOamMyTnpZek1oY1dGeFlYRmhjV0ZSUUdBeUl2QVNZMU5EWTNNaDhCRmhVVUJqY2lKelFtSnk0Qkp6UW1KeVkxTkRjMk16SVhGaGNXRlJRSEJnTVlGQTRpSlVWQktac3FjeUlNRXhrY0R3WUJHQVFSVmkxQU56QXJEeU5KTFVaSFZCNmFGQThtRGh3VkZRMG1EeDFpR2hFREFRY0NCQU1ER0FZUEhBd01KUllIR1F3MUFRNGlIemxMTDVzVm9DNEJEUlVZREEwZERBY1ZlVEpJTkJBaFJEZFJQVVFjRnh3QnF3NG1EaFVUSFFFUEpnOFRGQjA1R1FFREFna0NBZ0VDQVEwZERRd1lCaFlsQ3cwYkVBY0FBQU1BUFFBMUEwa0NpUUFuQURnQVFBQ0RRQXM5UEFJRkFnZ0JBd1VDVEV1d0MxQllRQ2tBQkFJRkJIQUFBZ1VDaFFBQkF3QURBUUNBQmdFQUFJUUFCUU1EQlZjQUJRVURZZ2NCQXdVRFVodEFLQUFFQWdTRkFBSUZBb1VBQVFNQUF3RUFnQVlCQUFDRUFBVURBd1ZYQUFVRkEySUhBUU1GQTFKWlFCY3BLQUVBT2preU1DZzRLVGdjR2hBT0FDY0JKd2dHRmlzbEppY21KeVluSmljR0R3RVZCd1lqSWljbU5UWTNOamMyTnpZek1oY1dGeFlYRmhjV0ZSUUdBeUltSnlZMU5EYzJNeklYRmhVVUJ3WW5OelkzTlNNR0J3TVlGQTRpSlVWQktac3FjeUlNRXhrY0R3WUJHQVFSVmkxQU56QXJEeU5KTFVaSFZCNTFGMEVOQkVFZUlFUVhCellRT2hNRkJnWUtDelVCRGlJZk9Vc3ZteFdnTGdFTkZSZ01EUjBNQnhWNU1rZzBFQ0ZFTjFFOVJCd1hIQUY3RlM0UUQwa2VFRDBWRlVVVkdHSUJCZ1FLQXdjQUFBQUFBd0JHLzlZRE9BSzBBRWNBYWdDUUFZeExzQXBRV0VBUUxTc2pBd1lGT2dFSUNSTUJBZ29EVEJ0THNBdFFXRUFRTFNzakF3UUZPZ0VJQ1JNQkFnb0RUQnRBRUMwckl3TUdCVG9CQ0FrVEFRSUtBMHhaV1V1d0NWQllRRUVBQlFZRUJYQUxBUWtEQ0FNSkNJQU5BUWdLQXdnS2ZnNEJDZ0lEQ2dKK0FBWUFCd01HQjJjQUJBQURDUVFEYUFBQ0FBQUNXUUFDQWdCaEFRd0NBQUlBVVJ0THNBcFFXRUJHQUFVR0JZVUFDd01KQXdzSmdBQUpDQU1KQ0g0TkFRZ0tBd2dLZmc0QkNnSURDZ0orQUFZQUJ3TUdCMmNBQkFBREN3UURhQUFDQUFBQ1dRQUNBZ0JoQVF3Q0FBSUFVUnRMc0F0UVdFQTZBQVVFQllVTEFRa0RDQU1KQ0lBTkFRZ0tBd2dLZmc0QkNnSURDZ0orQmdFRUJ3RURDUVFEYUFBQ0FBQUNXUUFDQWdCaEFRd0NBQUlBVVJ0QVFBQUZCZ1dGQ3dFSkF3Z0RDUWlBRFFFSUNnTUlDbjRPQVFvQ0F3b0NmZ0FHQUFjREJnZG5BQVFBQXdrRUEyZ0FBZ0FBQWxrQUFnSUFZUUVNQWdBQ0FGRlpXVmxBSjJ4clNVZ0JBSHg2YTVCc2tGeGFTR3BKYWpnMU1TNG9KaUlnSEJvS0J3TUNBRWNCUnc4R0Zpc0ZJaWNpSmpVME5qTVhNall6UHdFME56UXpOelF2QWlZOUFTTWlKalUwTmpNM05TWTFORE15RnhZVkZBY1hOamN5RmhVVUJnY0dCeFFmQVJZVUZ4WVZGQWNHQndZSEJpY2lKeVkxTkRZM05qOEJOamMwUGdJM05qTXlGeFlWRkFjR0R3RU9BUWNHQndZRklpY21KeUltTHdFbUp5WTFORGMyTXpJWEZCWVZId0VXSHdFVkZoUXpGaGNXRlFZSEJnRlhIeGtWSEJ3VlBoTUdBUW9LQXdFREJBRUREdlFVSFIwVTh3STFHdzhIQkFHV2xSVWNIQldWbFFVREFRSU1CUXNuSFNFVTlCTVFEaHdOR3lFVkRSb0NBd0lCRVJvTURCa0hKVFlXQWdnRkZSWU5BbTBvS0FnSUFRTUNBZ1lZUkJrTURCa1NCd1VWUFJJS0FRRUlDZzRCRFE4cUFod1VGQjBCQVFNR0JBTUNFRG91RFJGSGZDUWRGQlFjQVEwV0ZWSVpEQXdGRUVRQ0JCMFVGQndCQkFGVVJ5QUJCQXBYT2hvYkx4d1RBd0tqRGc4WEV4Z09HeGNRQ1JvQkFnTUVBaGdIRHhzTkN6UWtFUUlHQlJVVURoMUJDZzREQkFNSkdFWWFIQThIR0FNR0FnWVhQU1FOQVFFQkNna09GQlFQRFFBQUFBQUZBRWIvMWdObUF2NEFSd0JxQUpBQXBBQzhBZmRMc0FwUVdFQVRMU3NDRGdVakFRWU1PZ0VJQ1JNQkFnb0VUQnRMc0F0UVdFQVRMU3NDRGdVakFRUU1PZ0VJQ1JNQkFnb0VUQnRBRXkwckFnNEZJd0VHRERvQkNBa1RBUUlLQkV4WldVdXdDVkJZUUZRQUJRME9CQVZ5Q3dFSkF3Z0RDUWlBRVFFSUNnTUlDbjRTQVFvQ0F3b0NmZ0FQRkFFT0RBOE9hUUFORXdFTUJnME1hUUFHQUFjREJnZG5BQVFBQXdrRUEyZ0FBZ0FBQWxrQUFnSUFZUUVRQWdBQ0FGRWJTN0FLVUZoQVd3QUZEUTROQlE2QUFBc0RDUU1MQ1lBQUNRZ0RDUWgrRVFFSUNnTUlDbjRTQVFvQ0F3b0NmZ0FQRkFFT0RBOE9hUUFORXdFTUJnME1hUUFHQUFjREJnZG5BQVFBQXdzRUEyZ0FBZ0FBQWxrQUFnSUFZUUVRQWdBQ0FGRWJTN0FMVUZoQVR3QUZEUTROQlE2QUN3RUpBd2dEQ1FpQUVRRUlDZ01JQ240U0FRb0NBd29DZmdBUEZBRU9EQThPYVFBTkV3RU1CQTBNYVFZQkJBY0JBd2tFQTJnQUFnQUFBbGtBQWdJQVlRRVFBZ0FDQUZFYlFGVUFCUTBPRFFVT2dBc0JDUU1JQXdrSWdCRUJDQW9EQ0FwK0VnRUtBZ01LQW40QUR4UUJEZ3dQRG1rQURSTUJEQVlOREdrQUJnQUhBd1lIWndBRUFBTUpCQU5vQUFJQUFBSlpBQUlDQUdFQkVBSUFBZ0JSV1ZsWlFEZW1wWktSYkd0SlNBRUF0clNsdkthOG5KcVJwSktrZkhwcmtHeVFYRnBJYWtscU9EVXhMaWdtSWlBY0dnb0hBd0lBUndGSEZRWVdLd1VpSnlJbU5UUTJNeGN5TmpNL0FUUTNORE0zTkM4Q0pqMEJJeUltTlRRMk16YzFKalUwTXpJWEZoVVVCeGMyTnpJV0ZSUUdCd1lIRkI4QkZoUVhGaFVVQndZSEJnY0dKeUluSmpVME5qYzJQd0UyTnpRK0FqYzJNeklYRmhVVUJ3WVBBUTRCQndZSEJnVWlKeVluSWlZdkFTWW5KalUwTnpZek1oY1VGaFVmQVJZZkFSVVdGRE1XRnhZVkJnY0dBeUluSmljbU5UUTNOak15RnhZWEZoVVVCd1kzSmljMUpqVTBKemMwSnlZMU5ENEJNeklYRmhjVUJ3WUJWeDhaRlJ3Y0ZUNFRCZ0VLQ2dNQkF3UUJBdzcwRkIwZEZQTUNOUnNQQndRQmxwVVZIQndWbFpVRkF3RUNEQVVMSngwaEZQUVRFQTRjRFJzaEZRMGFBZ01DQVJFYURBd1pCeVUyRmdJSUJSVVdEUUp0S0NnSUNBRURBZ0lHR0VRWkRBd1pFZ2NGRlQwU0NnRUJDQW9PQVEwUFdRd0xFUVlSQncwZERBd1RCQkFGRG1jdEJRTURBUVFJRGhjTUhBOFdBUVlOS2dJY0ZCUWRBUUVEQmdRREFoQTZMZzBSUjN3a0hSUVVIQUVORmhWU0dRd01CUkJFQWdRZEZCUWNBUVFCVkVjZ0FRUUtWem9hR3k4Y0V3TUNvdzRQRnhNWURoc1hFQWthQVFJREJBSVlCdzhiRFFzMEpCRUNCZ1VWRkE0ZFFRb09Bd1FEQ1JoR0dod1BCeGdEQmdJR0Z6MGtEUUVCQVFvSkRoUVVEdzBCNkFZS0V6b0hEQXdaQmdvVVBBY0xDaGtnQXk0RENnY0JCQUVDQXd3TkRCY09HQ1VyRFFzWUFBQUFBQVVBUnYvV0ExZ0RFd0JIQUdvQWtBQ2hBS2tCNlV1d0NsQllRQmltcFFJT0JTMHJBZ3dPSXdFR0REb0JDQWtUQVFJS0JVd2JTN0FMVUZoQUdLYWxBZzRGTFNzQ0RBNGpBUVFNT2dFSUNSTUJBZ29GVEJ0QUdLYWxBZzRGTFNzQ0RBNGpBUVlNT2dFSUNSTUJBZ29GVEZsWlM3QUpVRmhBVUFBTkJRNE5jQUFGRGdRRmNBc0JDUU1JQXdrSWdCQUJDQW9EQ0FwK0VRRUtBZ01LQW40QURoSUJEQVlPREdvQUJnQUhBd1lIWndBRUFBTUpCQU5vQUFJQUFBSlpBQUlDQUdFQkR3SUFBZ0JSRzB1d0NsQllRRlVBRFFVT0RYQUFCUTRGaFFBTEF3a0RDd21BQUFrSUF3a0lmaEFCQ0FvRENBcCtFUUVLQWdNS0FuNEFEaElCREFZT0RHb0FCZ0FIQXdZSFp3QUVBQU1MQkFOb0FBSUFBQUpaQUFJQ0FHRUJEd0lBQWdCUkcwdXdDMUJZUUVrQURRVU9EWEFBQlE0RmhRc0JDUU1JQXdrSWdCQUJDQW9EQ0FwK0VRRUtBZ01LQW40QURoSUJEQVFPREdvR0FRUUhBUU1KQkFOb0FBSUFBQUpaQUFJQ0FHRUJEd0lBQWdCUkcwQk9BQTBGRFlVQUJRNEZoUXNCQ1FNSUF3a0lnQkFCQ0FvRENBcCtFUUVLQWdNS0FuNEFEaElCREFZT0RHb0FCZ0FIQXdZSFp3QUVBQU1KQkFOb0FBSUFBQUpaQUFJQ0FHRUJEd0lBQWdCUldWbFpRREdTa1d4clNVZ0JBS09pbTVtUm9aS2hmSHBya0d5UVhGcElha2xxT0RVeExpZ21JaUFjR2dvSEF3SUFSd0ZIRXdZV0t3VWlKeUltTlRRMk14Y3lOak0vQVRRM05ETTNOQzhDSmowQkl5SW1OVFEyTXpjMUpqVTBNeklYRmhVVUJ4YzJOeklXRlJRR0J3WUhGQjhCRmhRWEZoVVVCd1lIQmdjR0p5SW5KalUwTmpjMlB3RTJOelErQWpjMk16SVhGaFVVQndZUEFRNEJCd1lIQmdVaUp5WW5JaVl2QVNZbkpqVTBOell6TWhjVUZoVWZBUllmQVJVV0ZETVdGeFlWQmdjR0F5SW1KeVkxTkRjMk16SVhGaFVVQndZbk56WTNOU01HQndGWEh4a1ZIQndWUGhNR0FRb0tBd0VEQkFFRER2UVVIUjBVOHdJMUd3OEhCQUdXbFJVY0hCV1ZsUVVEQVFJTUJRc25IU0VVOUJNUURod05HeUVWRFJvQ0F3SUJFUm9NREJrSEpUWVdBZ2dGRlJZTkFtMG9LQWdJQVFNQ0FnWVlSQmtNREJrU0J3VVZQUklLQVFFSUNnNEJEUThxRjBFTkJFRWVJRVFYQnpZUU9oTUZCZ1lLQ3lvQ0hCUVVIUUVCQXdZRUF3SVFPaTRORVVkOEpCMFVGQndCRFJZVlVoa01EQVVRUkFJRUhSUVVIQUVFQVZSSElBRUVDbGM2R2hzdkhCTURBcU1PRHhjVEdBNGJGeEFKR2dFQ0F3UUNHQWNQR3cwTE5DUVJBZ1lGRlJRT0hVRUtEZ01FQXdrWVJob2NEd2NZQXdZQ0JoYzlKQTBCQVFFS0NRNFVGQThOQWQ0VkxoQVBTUjRRUFJVVlJSVVlZZ0VHQkFvREJ3QUFBQUFCQUdILzd3TVlBbE1BUEFBMlFETXlGUUlBQVFGTUFBRUNBQUlCQUlBRUFRQUFoQUFEQWdJRFZ3QURBd0pmQUFJREFrOEJBQ1FoSFJzU0VBQThBVHdGQmhZckJTSW1KelVuTGdFdkFTWW5KalUwTnpZek1oY1dGelkzTmpjMk55RWlKalUwTmpNaE1oWVZGQThCQmc4QkJnY0dCd1lIRkRNVkZoY1dGUlFIQmdJTUhSb1BEUnM4SHhBU0ZSZ0dEaHNPRENJY1JDY2dIU3dtL2gwVUhSMFVBbFVVSFFjQkhERUVLaTBkSUVRaEFVTXJCaGdMRVMwVUFROGVOQm9ORGdrTEh3ME1HQVlRR1VZaUd4OHlJUjBVRkIwZEZBNExBak1oQXlNMEh4dEFJZ0VCT0VzTURSb1FCZ0FBQUFNQWFmL3BBdEFDandBbkFFZ0FiUUJVUUZFSEFRQUJCZ0VBQm9BQUJnVUJCZ1YrQ1FFRkF3RUZBMzRBQXdRQkF3UitDQUVFQklRQUFnRUJBbGtBQWdJQllRQUJBZ0ZSU2trb0tBRUFZRjVKYlVwdEtFZ29TRGMyR3hrVEVnQW5BU2NLQmhZckFTSW5KaThCSmpVdkFTTWlKaWNtSnlZakppY3VBVFUwTnpZek1oOEJGaDhCRmhjV0ZSUUhCZ01uSmljbUx3TXVBVFUwTnpZekZ4WVhGaGNlQVRNV0Z4WVhGaFVVQndZRElpY21Md0VtSXlZbkppY21JaWNqTGdFMU5EYzJNeklYRmhjZUFSY1dGeFlWRkFjR0FxQUtDa3dPQkFrYURRSUNCREFSRVFJREh4OFZGQlFPRVIwbUtESVpTeVFrSEFRTk9ncUFlUTB3TWdSOUV4WVZEQTBMbDJwREtBSUdBVGs3RkF3SkZBdzdDZ28zWGhnQ0F5c3BJUmNCQXdFQ0ZCVVZEUThYTmhRaEJBWUJOYU1jQkEwQjJBUWFCQUVDQVFjRkFnOENCUUVLQWdJZ0VCWVBDUXNLRHdjWEN3ME5JQW9LSFA0UkFSZ3lCeElRQWlFRkd4QVhFUWtCSmlvZENnSUJFUXNFRUF3UEdnOEpBUXNFRkNFSEFRc1NFZ2dCQVFVYkVCa1BDaHdMREFFQ0FRdzhDaU1KQ2gwQUFBRUFSZi90QXo0Q3FBQmtBRUpBUHh3QkF3RTBBUUlEVlNjTkF3VUNCUUVBQlFSTUFBRURBWVVBQXdJRGhRQUNCUUtGQUFVQUJZVUFBQVFBaFFBRUJIWlhWa3hLUVQ4dUxSa1hFUVlHRnlzM0JpTW5KalUwTnpZM05qY21OVFEzTmpjMlB3RTJOell6TWhjV0ZSUUhCZzhCQmdjR0J3WUhNamMyTnpZM01qYzJNamN6TnlZbklqVW5KaWNtTlRRMk16SVhGaDhCRmhVVUJ3WWpJaVluSmljakp5WXZBUVlIRGdFckFRWUhCZzhDQmc4QmlBa0tEQ1FEQjFnVUV3RWhFQmdLRGdjTUR3MGlIQThHQWc4TENRMEpEUndQRFFRRFpTTlBHZ29KS3dJQ0JCNFdIQUlCQ1FvTkhCUXRZUmtVRFE4SERSME1IZ1VDQ0FFQ0NnZ0hNVGtDQndFQ0ZGQVJibWMzRVJBUENRTUJDeVVHRFI0T0F3UUdCeGh1Tkdjek14d3NLeVFaQ3dzSENDb3JJaTR1U0ZnME13RVRDQklEQXdVQkJpZ25BZ0VNQ2c4WEVSeXNNVHdmSUJRT0RoWVFGQWtaQmhZVkV3OERBUUVDRWdRV0V3c0NCQVFBQVFCNC8rSURDd0tkQUU4QU0wQXdNZ0VCQWtvMUh3MEVBd0VDVEFBQ0FRS0ZBQUVEQVlVQUF3QURoUVFCQUFCMkFRQStQQzR0R2hnQVR3RlBCUVlXS3hjaUp5WTFORGMyTnpJMU5qOEJOUzhFTGdFMU5EWXpNaGNXRnhZWE5EWTNOamMxUGdFMU5qYzJOell6TWhjV0ZRY0dCeFlYRmhVVUJ3WWpJaWNtSnlZdkFTWXZBU1l2QVFZSEJnY0dxUndPQnhoTFRRRlBUd1JlR0U0YUd4UWNHeE1ZSWoxZ0x5NENBaEFOQWdRZkV3VVNDd3dIQnlNQkpUK0pLUUlJREIwbUNRVUdBZ0VCRHlJSUdSNE5KU3Q2bEF3ZUdBd01IQThyT2dFOFdnVUJMd3NtQ1FjQ0dSWVNIZ29YTWhVWkFRTUNIQjBCQlFjQ1RGQVVDZ1lDQ3lVTWwyeGxtZ2NHRFE0V0pCSVJCQVVCSkRBSkhoZ0pMeXAyVkFjQUFBQUJBRS8vOWdNNUFuTUFVZ0UyUzdBSlVGaEFDaklCQWdVVEFRRURBa3diUzdBS1VGaEFDaklCQWdVVEFRa0RBa3diUzdBTFVGaEFDaklCQWdVVEFRRUNBa3diUUFveUFRSUZFd0VCQXdKTVdWbFpTN0FKVUZoQUxnQUdCd0VGQWdZRlp3Z0VBZ0lEQVFKWkFBTUpBUUVLQXdGb0N3RUtBQUFLV1FzQkNnb0FZUTBNQWdBS0FGRWJTN0FLVUZoQU5BQUxBUW9LQzNJQUJnY0JCUUlHQldjSUJBSUNBQWtCQWdsbkFBTUFBUXNEQVdnQUNnQUFDbGNBQ2dvQVlnME1BZ0FLQUZJYlM3QUxVRmhBS1FBR0J3RUZBZ1lGWndnRUF3TUNDUUVCQ2dJQlp3c0JDZ0FBQ2xrTEFRb0tBR0VOREFJQUNnQlJHMEF1QUFZSEFRVUNCZ1ZuQ0FRQ0FnTUJBbGtBQXdrQkFRb0RBV2dMQVFvQUFBcFpDd0VLQ2dCaERRd0NBQW9BVVZsWldVQVlBQUFBVWdCU1RFcEpSVUErVlNRMEpCRVRHRWNoRGdZZkt3VW5JeUluTGdFMU5DYzFJd1lqSWljbUp5WTFORGMyTXpJWEZqTTJNeWMrQVRVaklpWTFORFl6SVRJV0ZSUUdLd0VVQndZVkZ6TTNOak15RmhVVUJpTUZGeFFYRkI4Qk1oY3pOak15RnhZVkZBNEJBdFVPdEJZVU1Sd0JrejRLSnlZVUNnWUNDeVVIRFFrdExKa0JBUUtyRkIwZEZBSG5FeDBkRTlzQkFnRm5YU2txRlJ3Y0ZmNzFBUVFDQWE0U0ZRb0pEQThXRVNVS0FRWU5WVjVCSGd3RUJ3VVNEQXdHQnlNREFRUWxGaW9pSFJRVUhSMFVGQjBqRVJnWUl3RUNIQlFVSFFWRlNEUUdCZ0VCQkFrT0dnMGJEUUFBQUFFQWlmKytBdWNDQ2dCVEFFRkFQajRrRlFNRUFrVVJCZ01BQkFKTUFBRUNBWVVBQWdRQ2hRQUVBQVNGQUFBREFJVUFBd1VEaFFZQkJRVjJBQUFBVXdCVFJFTTBNaW9vSVI4c0J3WVhLd1VpSnlZbkppY0hGQ01HQndZaklpY21OVFEzTmpjbk5DWTFKeVkxTkRjMk16SVhGaGMzTmpjMk16SVhGaFVVQndZSEJpTWlOVFEvQVRRK0FUYzJQd0UxQmdjR0l3Y1dGeDRCRnhRWEZoY1dGUlFIQmdIb0JnNGFNamdWRUFFdEt3d01HdzhIQXdhSUNRTVNCaGNNRFIwTkZSSTFhVWxDRkEwT0dCc1VPUXdUTXcwVkFnRUJEdzBCRmhod0ZDWVdOUVlJQXdJSEZBWVhERUlEQm9lTVJ3WUJGQmNIR0F3TUJ3MFpOeFlEQXdFb0RRMGJEZ1lZTEMwTkZ4NGNDUThwRmtkQU9RNDVDaEFZQVFJQ0FROGxBUUlKQ0NNSlJZZ1FFZ2tDQWhVbERBMGFFQVlBQUFBQUFRQlUvOU1ETEFLOUFGTUFOMEEwU2tZZUVnZ0ZBUU1CVEFBQ0F3S0ZBQU1CQTRVQUFRUUJoUUFFQUFTRkJRRUFBSFlCQURNeEp5VWJHUXNKQUZNQlV3WUdGaXNGSWljbUp5WW5KaWNHSXlJbU5UUTNOajhCSmljbU5UUTNOak15RnhZVk5qYzJOelkzTmpNeUZ4WVZGQWNHQndZSEJpTWlKalUwTnpZM01qYzJOekkrQVRVMk56UTJOd1lIQmdjV0Z4NENGUlFIQmdHN05CRUtEUjhRRFF0K0Z4UWJEZzRUZXdzYkRnZ09HeUlPTW1JVlJFTkxKeHdSRFEwWU9CVW1GaUlaRlJNZUR4UVZBaEVIRFFFQkFna1pBd2tnSVIzZEl4b2NDUklaREMxcEt5cDFNU1ltSGg4U0V4QU1BaG92VHlZSURBNFdKWVlkRWdVT0RBd1BEd2tPSnlSNU1TVVRGeFlkRmhRTUVBOE5CQThDQWdFSk53RURHd2dHQlN4dFhHSTRJd3djRGdjQUFBQUFBUUJrLy9RREZRSFdBRFFBSjBBa0FBTUFBZ0VEQW1jRUFRRUFBQUZYQkFFQkFRQmhCUUVBQVFCUlJDbFVWa2NRQmdZY0t4Y2lKeVkxTkRZM05qTXlGak0yUHdJMk55SUhCZ2N1QVRVME5qTStBVE1XRnhZVkZBY0dCeFVITXpJV0ZSUUdJeUFuSXdlV0RnNFdFQlFqSlJJbnhRNFJBdzRoR1RrNlVsTVZIQndWVTZWVEhnNFBDaWN5RHE4VUhSMFUvaG9rTlFFTUJ3d2REQjhFQlFJb0pnWWZVbGtDQWdFQkhCUVVIUUVFQVJzUEV3a2dpMjRDSGgwVUZCd0JBUUFBQVFBbUFDZ0RPZ0piQURJQXNrdXdDVkJZdFNVQkFnUUJUQnRMc0FwUVdMVWxBUUlGQVV3YnRTVUJBZ1FCVEZsWlM3QUpVRmhBSFFVQkJBTUJBZ0VFQW1rR0FRRUFBQUZYQmdFQkFRQmZCd0VBQVFCUEcwdXdDbEJZUUNrQUJBVUZCSEFBQXdJQkFnTUJnQUFGQUFJREJRSm9CZ0VCQUFBQlZ3WUJBUUVBWHdjQkFBRUFUeHRBSFFVQkJBTUJBZ0VFQW1rR0FRRUFBQUZYQmdFQkFRQmZCd0VBQVFCUFdWbEFGUUlBTGl3aklCOGRGeFlVRVFnR0FESUNNZ2dHRmlzbElTSW1OVFEyTXlFMk56WTNOamN6TkRjaUp3OENJaWNtTlRRM05qTXlGeFloTWhZVkJnOEJCZ2NHQnpNeUZoVVVCZ01KL1U0VUhSMFVBYWNJRkJjV0VTQUJCNFhnR3dFWERROFZJeWNuRlJZNEFUTVVId29iQkNJdURRbW5GQjBkS0IwVUZCMHJNVG84TkZJREVBUUJBUU1IREJ3bUN3Y0NBaHdVUURrSVpYVWdJaDBVRkIwQUFBRUF0UCtRQXJZQ0JBQTlBTlJBQ3pRd0FnQUJQUUVLQUFKTVM3QUpVRmhBTlFBSkNBUUlDUVNBQUFvQUNvWUFCd2dFQjFrQUNBWUZBZ1FEQ0FScEFBTUFBZ0VEQW1jQUFRQUFBVmNBQVFFQVh3QUFBUUJQRzB1d0NsQllRRFlBQ1FnRkNBa0ZnQUFLQUFxR0FBY0FCUVFIQldrQUNBWUJCQU1JQkdrQUF3QUNBUU1DWndBQkFBQUJWd0FCQVFCZkFBQUJBRThiUURVQUNRZ0VDQWtFZ0FBS0FBcUdBQWNJQkFkWkFBZ0dCUUlFQXdnRWFRQURBQUlCQXdKbkFBRUFBQUZYQUFFQkFGOEFBQUVBVDFsWlFCQTZPU3dySWlZaklSRWtJeVFoQ3dZZkt3VTNJU0ltTlRRMk15RTBKelVoSWlZMU5EWXpJVFVpSmlNSERnSWpJaWNtTlRRM05qTXlGeFl6TWhjZUFSVURGeFlWRkFjVUJ3WUhCaU1uSmpVQ1RRSCtseFFkSFJRQmFRSCt1aFFkSFJRQlI3dzRLQkVDQlFzR0RROFdDQTlhRnhZYjJ3d0tGQnNCQVFZR0JRUVNEUTBNSXpjVUhCUVVIUU1CbUIwVUZCMWlCQUVCQVFJSERCME5EaHdEQWdVQkhCVCt0MXNMRFF3S0lpRVVDZ1lCQ3lZQUFBQUJBRWYvdndMNUFub0FPUUMydGpZeUFnRURBVXhMc0FsUVdFQW9DUUVBQVFDR0NBRUhBQVlGQndabkFBVUFCQU1GQkdjQUF3RUJBMWNBQXdNQllRSUJBUU1CVVJ0THNBcFFXRUF1QUFJQkFBRUNBSUFKQVFBQWhBZ0JCd0FHQlFjR1p3QUZBQVFEQlFSbkFBTUJBUU5YQUFNREFWOEFBUU1CVHh0QUtBa0JBQUVBaGdnQkJ3QUdCUWNHWndBRkFBUURCUVJuQUFNQkFRTlhBQU1EQVdFQ0FRRURBVkZaV1VBWkFRQXZMaXdxSmlRaklSMGJHaFVQRGdnRUFEa0JPUW9HRmlzRklpWTlBU0VpTHdFaUJpSUdGUWNpSnlZMU5EYzJNeGNXTXlFMUlTSW1OVFEyTXlFMUlTSW1OVFEyTXlFMk16SVdGUkVXRlJRSEZSUUdBc01VSGY2aFFEZ1JDQThIQndzT0R4WWtKU1VsR3owQllQNHJGQjBkRkFIVi9mQVVIUjBVQWpZRkJoUWRCUVVkUVIwVUxnTUJBZ0VCQVFnTEhpWUpCUUVCcGgwVUZCMlBIUlFVSFFFZEZQNGNDd3NNQ2trVUhRQUFBQUlBU2YvS0F4b0Ntd0FOQURzQU4wQTBCZ0VFQWdTR0FBRUZBUUFEQVFCbkFBTUNBZ05YQUFNREFsOEFBZ01DVHc0T0FnQU9PdzQ3THlna0h3a0dBQTBDRFFjR0Zpc0JJU0ltTlRRMk15RXlGaFVVQmdFbkpqVTBQd0UyTnpNM1BnRTFOamMyTndZakx3RXVBVFUwTmpNWEZqTXlOeklXRlJRSEJnY09BUWNHQndZQ3h2NFpGQndjRkFIbkZCMGQvamdNSXhnTm5vZ0JBZ3NYRmhvY0NHNXVrNzRWSEJ3VnZsRlNoNGdVSEQ4dkZCMUpJbGVOREFJNUhSUVVIUjBVRkIzOWtRRU1KQjRNQlVSbUFnZ1pBaDB3THc4Q0FRRUJIQlFVSFFFQkF4d1VQV0ZNR2lJeEZqNDhCZ0FBQWdDKy85c0N0QUtmQUJFQVBRQXJRQ2dBQXdFRGhRQUJBQUdGQkFFQUFnQ0ZCUUVDQW5ZVEVnRUFMeTBTUFJNOUNnZ0FFUUVSQmdZV0t4TWlKalV1QVRVK0FUTXlGaGNVRmhVVUJoTWlKalUwTmpjMk56NEJQd0UyUHdFMk56WTNOamMyTnpZMVBnRXpNaFlYRkFjR0J3WUhCZ2NHRHdFRzhSUWNBUUlCSEJRVUhBRUNIVEVWSEJrVE1UQVdIUThCRUEwREdCMEdCQkFFQkFJRUFSd1VGQndCQXdFVUZTb25SenBPQ3hNQktod1VSSWRERlJ3Y0ZVT0hSQlFjL3JFZEZCTWJBZ29QQncwS0FRMFFCQ0EvRGc0dEx5SWhZR0FVSEJ3VVVWRmRXazVHU0NnY0VnSUdBQUlBT3YvakF5RUNxd0FvQUZNQWswdXdDVkJZUUFzV0FRUUJQQzBDQUFRQ1RCdExzQXBRV0VBTEZnRUVBend0QWdBRUFrd2JRQXNXQVFRQlBDMENBQVFDVEZsWlM3QUpVRmhBRVFNQkFRUUJoUUFFQUFTRkJRSUNBQUIyRzB1d0NsQllRQlVBQVFNQmhRQURCQU9GQUFRQUJJVUZBZ0lBQUhZYlFCRURBUUVFQVlVQUJBQUVoUVVDQWdBQWRsbFpRQkFxS1VkRU56VXBVeXBUSGh3Z0JnWVhLeGNqSWlZMU5EYzJOeU0zTXpjMk56WTNOajhCTmo4Qk5EYzJOelEyTXpJV0ZSUVBBUlFIQmdjR0JTSXVBVFUvQVRZM05oRTBOak15RmhVUkZBYzNNelkvQVRRM05qc0JNaFlWRkE4REZBY0dCd1pyQWhRYkRnMFFBd0lEQnhBQ0NSUVlGQTBXQ2dRRUJRRWRGQlFjQlFONkpDZ1BBVkVNR0EwRkJBUUJBeDBVRkJ3R0dnRS9MQThsRFJNTUN4d09Dd0VQSkdSL0RCc2ZFaE1RQ3dJQkJCQUREQ01tS0I4N1BEZ1JPRVJFRlJ3Y0ZSeHBOc0M4UFJRSUJ3MFdDakljSmlaTUFZRVVIUjBVL3FGcVF4TTBOeE1ETFE0Y0VoUVJEUUlUQXl4ME9RWUFBQUFCQUxyLzh3TXJBcDhBT3dBdFFDb3hGQUlEQWdGTUFBRUNBWVVBQWdNQ2hRQURBQU9GQkFFQUFIWUJBRG81TFN3T0RBQTdBVHNGQmhZckZ5SW1KejhCSmpVK0FUVStBVE15RmhjT0FSVVJOamMyTnpJK0FUOEJOamMyUHdFMk56WS9BVFkzTmpjMk16SVhGaFVVQmdjR0J3WUhCZ2NHNnhRY0FRRUJBZ0VIQVJ3VUZCd0JBUWNURWxwUUFRSURBVFlqSUFRRERSTVREZ3NCQmdZR0VRd01Cd1lrQkFJMW9XNVVRa1lNRFJ3VmFsMTZlaU5ISlJRZEhSUWxUbW4reXdNR0h5QUJBUUVZRVJjQ0F3d1JHeGNYQXcwWkV3b0hBZ3NsQmc4SW9rZzBHUjBDQ0FBQ0FHei96d01NQW40QU5nQkdBTnRMc0FwUVdFQU1MaXdaQXdVRURRRUFBUUpNRzB1d0MxQllRQXd1TEJrREJRTU5BUUFCQWt3YlFBd3VMQmtEQlFRTkFRQUJBa3haV1V1d0NsQllRQ2NBQXdRRGhRSUlBZ0FCQUlZQUJBWUJCUWNFQldrSkFRY0JBUWRYQ1FFSEJ3RmZBQUVIQVU4YlM3QUxVRmhBSXdJSUFnQUJBSVlFQVFNR0FRVUhBd1ZwQ1FFSEFRRUhWd2tCQndjQlh3QUJCd0ZQRzBBbkFBTUVBNFVDQ0FJQUFRQ0dBQVFHQVFVSEJBVnBDUUVIQVFFSFZ3a0JCd2NCWHdBQkJ3RlBXVmxBR3pjM0FRQTNSamRHUUQ4K09pb2lIaHdMQ1FZRkFEWUJOZ29HRmlzRklpWTFORGNoRlJRR0l5SW1KelUwTmpVME56WTFOQzhCTlRZM05qTXlGeFl5RmpNeU56WXpGaUV5RmhVVUJ4QVhGQWNHRlE0Qkp6Y21FU0VpQnlNR0l4WWRBUVlWRndMVUZCMEMvaWtlRXhRYkFnUUJBZ0lCQXlBSUNBb0hBUU1ORWhnV0ltRVhBVDBUSFFFQkJBTUJIRDhCQWY2NklpRVZIQjBEQkFFeEhCVU9JakVVSEJ3VUZpQS9Yb0FySUNBZklEVWJJd3dEQWdFQ0FRSUJIQlFHQmY3WFlqazZLeGNWSE1OWUZnRWFBUUlnS3hOSlNwUUFBQUFCQUtmL3B3TFpBZVlBT3dCclFBc3JBUUlFSnlZQ0F3SUNURXV3Q2xCWVFDSUFBd0lCQWdOeUFBRUFBZ0VBZmdBQUFJUUFCQUlDQkZjQUJBUUNYd0FDQkFKUEcwQWpBQU1DQVFJREFZQUFBUUFDQVFCK0FBQUFoQUFFQWdJRVZ3QUVCQUpmQUFJRUFrOVpRQXN5TFNNaUhSd1ZJQVVHR0NzRkl5SW1OVFEyTnpJM05qYytBVE0yTnpZL0FqWS9BVDRCTnpZM0lRWUhCZ2NHSXljbU5UYzJOelkxSnpZek1oWWhNaFlYRkFjR0J3WUhCZ0UrQWhRYkhCVUtFaDBUQVFrQ0t3b2VGZ1FCRkJzQkR4Y09CQVArbndJR0JCTU1EUXdqQWdFQ0FRRUdUUVVPQVpRV0hBRVlDUW9lTzJ4WkhoTVZHZ0lFQndnQkJCY0tHQndFQWhvM0F5ZFFLQW9MT3ljVUNRWUJDaWNZS2dZTUZBNC9BUndWTDBBWUkzRlRrUUFCQUduL3VnTVNBb2NBUndDbVM3QUtVRmkxSlFFQkJBRk1HMHV3QzFCWXRTVUJBUU1CVEJ1MUpRRUJCQUZNV1ZsTHNBcFFXRUFoQUFNRUE0VUFBZ0VBQVFJQWdBQUFBSVFBQkFFQkJGa0FCQVFCWHdBQkJBRlBHMHV3QzFCWVFCNEFBZ0VBQVFJQWdBQUFBSVFFQVFNQkFRTlpCQUVEQXdGZkFBRURBVThiUUNFQUF3UURoUUFDQVFBQkFnQ0FBQUFBaEFBRUFRRUVXUUFFQkFGZkFBRUVBVTlaV1VBTU9EWTBNeXdxSXgwUUJRWVhLd1VpSnlZMU5EOEJOajhCTmpjMk56STFNelUyUHdFMU1qUXpOajhDSnlJSEl5SW5KaU1IQmhVT0FTTWlKaWMwTnpRM05qc0JGaUV5RmhVR0R3RUdCd1lIQmdjR0J3WUhBUm9ORHhValBqSXZEQlFNR0NRQkFTY29EUUVDRUEwTUR4bGJRVmFvSGdZSEFRSUJIQlFVSEFFRUJnNDlCREFCN1JZZEJCVUxDQTR1VnpsU01UTWZIMFlIREJ3bUN3c0dEd1lKQ2d3dkFRRTBUaHdCQlMxQ05Va0JBUUlCU3kwdEZCd2NGRWRITlJZdkJCd1ZVRTR5TEN0K2EwVWdFQVlGQndBQ0FESC8yQU02QXJBQVFnQkxBUk5Mc0FsUVdFQXpBQVVFQllVQUF3Y0NCd055REFFQUFRQ0dCZ0VFQ2dFSEF3UUhadzBMQ0FNQ0FRRUNWdzBMQ0FNQ0FnRmZDUUVCQWdGUEcwdXdDbEJZUURnQUJRWUZoUUFEQndJSEEzSU1BUUFCQUlZQUJnUUhCbGNBQkFvQkJ3TUVCMmNOQ3dnREFnRUJBbGNOQ3dnREFnSUJYd2tCQVFJQlR4dExzQXRRV0VBeUFBVUVCWVVNQVFBQkFJWUFCd01FQjFjR0FRUUtBUU1DQkFObkRRc0lBd0lCQVFKWERRc0lBd0lDQVY4SkFRRUNBVThiUURNQUJRUUZoUUFEQndJSEEzSU1BUUFCQUlZR0FRUUtBUWNEQkFkbkRRc0lBd0lCQVFKWERRc0lBd0lDQVY4SkFRRUNBVTlaV1ZsQUkwTkRBUUJEUzBOS1NVYzlPemMxTWk4ckp5SWdIQmNURUE0TUNBVUFRZ0ZDRGdZV0t3VWlKalUwTnlZaElpWTFORFk3QVRVbkJpTXVBVFUwTmpjeVB3RVhKalUrQVRNeUZoY1ZGQmN5TnpNeUZoVVVCZ2NHSXhZVkJ6TXlGaFVVQmlzQkZRWUhGQVlETmpVbUx3RUhId0VDWlJRY0JUUCtXeFFkSFJTbkFTa3FGQjBkRkZsWmVGRUNBUndVRkJ3QkFTcEhBaE1jSFJSRUpnZ0JheE1kSFJOdkJBRWRQQUVDQmplVkFUOG9IQldCR1FFZEZCUWRrRGdCQVJ3VUZCd0JBd0lCSmlZVkhCd1ZHUm9aQWgwVEZSc0JBMnBESHgwVUZCMElTVWtWSEFFdEh5QkhSZ0VDeWdFQUFBTUFKd0FXQXo0Q2F3QUNBRE1BWndFdFFCTmRBUWdLT0E0Q0J3RWJBUUFITUFFREFBUk1TN0FKVUZoQU9RQUJDQWNJQVFlQURBRUhBQWdIQUg0QUJBTUVoZ0FMQ2dnTFdRQUtDUUVJQVFvSWFRWUNBZ0FEQXdCWEJnSUNBQUFEWHdVQkF3QURUeHRMc0FwUVdFQTZBQUVKQndrQkI0QU1BUWNBQ1FjQWZnQUVBd1NHQUFzQUNBa0xDR2tBQ2dBSkFRb0pad1lDQWdBREF3QlhCZ0lDQUFBRFh3VUJBd0FEVHh0THNBdFFXRUEwQUFFSUJ3Z0JCNEFNQVFjQUNBY0FmZ0FFQXdTR0N3RUtDUUVJQVFvSWFRWUNBZ0FEQXdCWEJnSUNBQUFEWHdVQkF3QURUeHRBT1FBQkNBY0lBUWVBREFFSEFBZ0hBSDRBQkFNRWhnQUxDZ2dMV1FBS0NRRUlBUW9JYVFZQ0FnQURBd0JYQmdJQ0FBQURYd1VCQXdBRFQxbFpXVUFZTlRSWVZsUk9Ta2RHUlRSbk5XY1hJU0VrS2l3VURRWWRLemNYSWljWElTWW5KalUzTkNZMUp6UTNOak15RnhZVkZBY1ZGQmNXRnlFeUZoVVVCaU1oQmlNaUp5RWlKeVluSmpVM05qTWxJaWNtTlRRMk56VTJOVFkxTmpjMlB3RU9BU01oSWlZMU5EWXpJQll6TWpjek5qTXlGeFlYRmhVVUJ3WUhCZ2NPQVFjR1hnTUNBUUVCSFFFR0F3RUNBUWNMSFNjSkJnRUNCZ0lCTUJRY0hCVCt0Z29NREFyKzZ4d2NGQW9HQVFza0FnWWJEZ1lGR2dVSUNCZ0pDZ3dTSVVIK21oUWRIUlFCTngwTkp5Y0ZGeGNvSnhNS0J3SVNIQTBMRHlnZURYNEJBUUUyTlJzY1F4QUdCQTBORHhVakp5Z09BeE1iSFRjNEhSUVVIUVVGQXdRVERRMExKTElYREE0R0dnMEJBd0VJQWdndUVoRVRBUU1kRkJRZEFRSURDQVVTQ3d3SEJ6RXRGUmNkT3c4R0FBQUFBUUE3LzdnRER3SjNBRkFBTWtBdkJRRUFBUUNHQUFRQUF3SUVBMmNBQWdFQkFsY0FBZ0lCWHdBQkFnRlBBUUJFTkRBbEloOGJHUUJRQVZBR0JoWXJGeUluSmpVME5qYzJQd0UyTnpNMU16Y3pOelkzTXpZM05qY2xJaVkxTkRZek1oYzNOamNIQmlNaUp5WXJBUVlqTGdFMU5EWTNNekkzTmpNeUZ4WXpNajhCTWhjZUFoVVVCd1lIQmdjR0J3YkREQTRXRVJNMklTSmpYQUVCQWdFWEZ4TUJBZ01XRmY1REZCMGRGUFAwQkJVRFBobzRXVXNxS1J5SEZoVWNIQlVaSlNVdExDZ29UVTFDR3l3aElROGRCaWdmTWl4VnFac0hTQWdNSFF3ZEJnMFFFQzlHQVFJVEV4a0VBeUVsQVIwVUZCMENDajhmQVFFREFnVUJIQlFVSEFFQ0F3SURBUUVDQVJJbEZFaGpWRXRFTzNvcEFnQUFBQUlBY2YvbEF6RUNnd0F2QUZJQVBVQTZKZ0VDQVFGTUFBRURBZ01CQW9BRkFRSUFBd0lBZmdBQUFJUUFCQU1EQkZrQUJBUURZUUFEQkFOUk1qQktTRVJDTUZJeVVpSWhFQVlHRnlzWElpY21OVFEzTmo4Qk5qOEJOamMyTnpNM05qOEJNalUyTnpRMk5UWTNOamMyTXpJWEZoVUhCZ2NHQndZSEJnY1RJeUluSmljaUxnRXZBU1lqSnlZbkppSW5CeUltTlRRMk16SVhGaGNlQVJVT0Fid09EaFlrSGgwVUdCOHlUMEFjQ0FFVU9qQUdBUThaQWdZREJCSU5EQWNHSXdFUExHU09KWGRNVTVvTEVDVUxGUUVCQkFJSktRY0RBZ3dCQmdRREZSd2RHRE5OSkJzT0hnRWNHd2NNSENjSkJ3c0pDaEVaSXkwU0NCRXdPUWtCRWkwQ0F3SU9FQlFKQndJS0p3dEROb1JXRnpzckZRSERLdzBVQVFNQkJoc0JBZ0lCQVFFZUV4VWNNUlloRVIwVUZCd0FBQUFBQXdBOS83RURYQUwrQUY0QWNnQ0tBUzFBRUVrQkN3WXhMd0lEQWdKTVNnRUxBVXRMc0FwUVdFQkpBQVlLQ3dvR0M0QUlBUWNKQlFRSGNnQUZCQVFGY0FBREFnRUNBd0dBQUF3UEFRc0pEQXRwQUFvT0FRa0hDZ2xwQUFRQUFnTUVBbWdBQVFBQUFWa0FBUUVBWVEwQkFBRUFVUnRMc0F0UVdFQkpBQVlLQ3dvR0M0QUFCd2tGQkFkeUNBRUZCQVFGY0FBREFnRUNBd0dBQUF3UEFRc0pEQXRwQUFvT0FRa0hDZ2xwQUFRQUFnTUVBbWdBQVFBQUFWa0FBUUVBWVEwQkFBRUFVUnRBU1FBR0Nnc0tCZ3VBQ0FFSENRVUVCM0lBQlFRRUJYQUFBd0lCQWdNQmdBQU1Ed0VMQ1F3TGFRQUtEZ0VKQndvSmFRQUVBQUlEQkFKb0FBRUFBQUZaQUFFQkFHRU5BUUFCQUZGWldVQXBkSE5nWHdFQWhJSnppblNLYW1oZmNtQnlVazlPVEVOQk96bzVOaXdxSkIwR0JRQmVBVjRRQmhZckJTSW1OVFErQVQ4Qk5qYytBVGMyUHdFMFBnRTNOajhCTmpjME16WTNKeUlISWdjR0J4VUdGUlFIQmlNaUp5WTFORGMyTlRRM05qc0JNajhCSnlZMU5ENEJNeklYRmhVVUR3RVZGaFUzTWhZN0FUSVhGaFVVQndZSEJnY0dCd1lCSWljbUp5WTFORGMyTXpJWEZoY1dGUlFIQmpjbUp6VW1OVFFuTnpRbkpqVTBQZ0V6TWhjV0Z4UUhCZ0VjRlJ3Y0xRWVpQeVVDQkFFVEpna0RCQUVoRXhvU0JnRXZGVG9taVRzN2Z5c0hCUXdqR2hFSEF3SWRFaFFiUkVSSkFRSUJIUndNREJnSEFRS21HRE1SQng0UEVRZ0JEeUUwUzV0YUFUd01DeEVHRVFjTkhRd01Fd1FRQlE1bUxRVURBd0VFQ0E0WERCd1BGZ0VHRFU4ZEZCUWNBUUlFRFJBQkFRRUlHQVlCQWdNQkhCa25JQkFCZG4wQkJBTUdBUUZSQ3c4UEpCa0xDd2dRWmhZaUV3a0ZBdzRXRlFja01nY1BIQXdNQ0NJV0NnUUVFQlFiSHg0Q1M0aGZpRG9mQXFNR0NoTTZCd3dNR1FZS0ZEd0hDd29aRFFNdUF3b0hBUVFCQWdNTURRd1hEaGdsS3cwTEdBQUFBQUFCQUhUL3Z3TCtBa0lBWFFFMFM3QUtVRmhBQ3lnbUFnSUVPQUVKQVFKTUcwdXdDMUJZUUFzb0pnSUNCRGdCQ0FFQ1RCdEFDeWdtQWdJRU9BRUpBUUpNV1ZsTHNBbFFXRUF6QUFRQ0JJVUFBZ01DaFFBSkFRZ0JDUWlBQ3dFQUJ3Q0dCZ1VDQXdvQkFRa0RBV2NBQ0FjSENGa0FDQWdIWVFBSENBZFJHMHV3Q2xCWVFETUFCQUlFaFFZQkFnTUNoUUFKQVFnQkNRaUFDd0VBQndDR0JRRURDZ0VCQ1FNQlp3QUlCd2NJV1FBSUNBZGhBQWNJQjFFYlM3QUxVRmhBS1FBRUFnU0ZDd0VBQndDR0JnVURBd0lLQVFFSUFnRm5DUUVJQndjSVdRa0JDQWdIWVFBSENBZFJHMEF6QUFRQ0JJVUFBZ01DaFFBSkFRZ0JDUWlBQ3dFQUJ3Q0dCZ1VDQXdvQkFRa0RBV2NBQ0FjSENGa0FDQWdIWVFBSENBZFJXVmxaUUIwQkFGaFdUVXhIUlVFL05ETXlNU3dxSXlFYkdoSVBBRjBCWFF3R0Zpc1hJaWNtTlRRM05qY3lOamMyTnpZM0lnY2lKeVluSmpVME56WXpNaGNXTWhZWE5qTTJORGMwSnpRMk16SWVBUlVVQnpJM01oY1dGUWNHRlJRSERnSWpJaVkxTkRZek1qYzZBVFl6TWo4Qk5qYzBOelkxTmpjakJnY0dCd2FrR2hBR0dFRWdBUUVCQkFjbUxDb3BJU0VVQ1FjWkN3MEhDUUlFQXd4QVB3WUNBaDhTRXgwREI5SVlKUmdMQVFnWEdWMXZNUlFkSFJSUUNBRUVBZ0lOSlJjVUFnRUpDUUhwSkM0d2RBeEJHQXNNSFE4ZUp3SUJCQTVEa1FJR0JoRU1EQjBOQndJQkFRRUNJQVlUSVE4VUhCMG1FeUVpQWlBU0hSeGdJa2MvTXpBTUhSUVVIUU1CRFEwVkJ3SUJHemVLQkg1blp6Y0dBQUFBQVFCNC84d0RCZ0kzQUZnQVBrQTdPUUVGQkFGTUFBUUZCSVVBQXdJQkFnTUJnQUFGQmdFQ0F3VUNad0FCQUFBQldRQUJBUUJoQUFBQkFGRlNUa3BEUGp3bEl4OGJGQ0FIQmhnckJTTWlKalUwTmpNM1BnRXpQd0UrQWpNK0FqYzJQd0UyUHdFaUR3RWlKd1lIQmlNaUp5WTFORGN6Tmo4Qk5qYzFOajhCTmpjeU5UY25ORFl6TWhZWEZSUUhNell6SHdFek1oWVZGQVlqSWdjakJ3WUhCZ2NHQVRFQ0V4c2VFeEFCQWdJTEZRRUNBd01ZQ1FRQkJnNEJGUWdISHg0aUdSa3BWQXdNSFEwSEdBRVFEd2NTQmc4UUFRa0ZBUUlCSGhNVkd3RUZDU2txU1dadUZCMGRGQjhlYUFRTklCc3ZPRFFlRXhVY0JBRUJCZzRCQVFVWUNnWUJDUnNDT1VJekFRRUNWaXNHR0F3TUhRNEpDZ1FTQndFVUlBTVlId0VjS2hRZEhSUVVKQ01DQVFFZEZCUWNBU0IwU2pncE5BQUFBd0FQLzdvRGFnTDFBRWNBV3dCekFOYTFKUUVCQlFGTVM3QUtVRmhBTmdBREJnUUdBd1NBQUFJQkFBRUNBSUFBQUFDRUFBUUhBUVJaQUFnS0FRY0ZDQWRwQUFZSkFRVUJCZ1ZwQUFRRUFWOEFBUVFCVHh0THNBdFFXRUF3QUFJQkFBRUNBSUFBQUFDRUJBRURCd0VEV1FBSUNnRUhCUWdIYVFBR0NRRUZBUVlGYVFRQkF3TUJYd0FCQXdGUEcwQTJBQU1HQkFZREJJQUFBZ0VBQVFJQWdBQUFBSVFBQkFjQkJGa0FDQW9CQndVSUIya0FCZ2tCQlFFR0JXa0FCQVFCWHdBQkJBRlBXVmxBSEYxY1NVaHRhMXh6WFhOVFVVaGJTVnM0TmpRekxDb2pIUkFMQmhjckZ5SW5KalUwUHdFMlB3RTJOelkzTWpVek5UWS9BVFV5TkRNMlB3SW5JZ2NqSWljbUl3Y0dGUTRCSXlJbUp6UTNORGMyT3dFV0lUSVdGUVlQQVFZSEJnY0dCd1lIQmdjQklpY21KeVkxTkRjMk16SVhGaGNXRlJRSEJqY21KelVtTlRRbk56UW5KalUwUGdFek1oY1dGeFFIQnBnTkR4VWpQakl2REJRTUdDUUJBU2NvRFFFQ0VBME1EeGxiUVZhQUhnWUhBUUlCSEJRVUhBRUVCZzQ5QkRBQnhSWWRCQlVMQ0E0dVZ6bFNNVE1mSHdJakRBc1JCaEVIRFIwTURCTUVFQVVPVlMwRkF3TUJCQWdPRnd3Y0R4WUJCZzFHQnd3Y0pnc0xCZzhHQ1FvTUx3RUJORTRjQVFVdFFqVkpBUUVDQVVzdExSUWNIQlJIUnpVV0x3UWNGVkJPTWl3cmZtdEZJQkFHQlFjQ2hnWUtFem9IREF3WkJnb1VQQWNMQ2hrYUF5NERDZ2NCQkFFQ0F3d05EQmNPR0NVckRRc1lBQUFBQUFRQU1mL1lBMjRERHdCQ0FFc0FYd0IxQVhkTHNBbFFXRUJJQUFVTkRnMEZEb0FBQXdjQ0J3TnlFQUVBQVFDR0FBOFRBUTRNRHc1cEFBMFNBUXdFRFF4cEJnRUVDZ0VIQXdRSFp4RUxDQU1DQVFFQ1Z4RUxDQU1DQWdGZkNRRUJBZ0ZQRzB1d0NsQllRRTBBQlEwT0RRVU9nQUFEQndJSEEzSVFBUUFCQUlZQUR4TUJEZ3dQRG1rQURSSUJEQVlOREdrQUJnUUhCbGNBQkFvQkJ3TUVCMmNSQ3dnREFnRUJBbGNSQ3dnREFnSUJYd2tCQVFJQlR4dExzQXRRV0VCSEFBVU5EZzBGRG9BUUFRQUJBSVlBRHhNQkRnd1BEbWtBRFJJQkRBUU5ER2tBQndNRUIxY0dBUVFLQVFNQ0JBTm5FUXNJQXdJQkFRSlhFUXNJQXdJQ0FWOEpBUUVDQVU4YlFFZ0FCUTBPRFFVT2dBQURCd0lIQTNJUUFRQUJBSVlBRHhNQkRnd1BEbWtBRFJJQkRBUU5ER2tHQVFRS0FRY0RCQWRuRVFzSUF3SUJBUUpYRVFzSUF3SUNBVjhKQVFFQ0FVOVpXVmxBTTJGZ1RVeERRd0VBYjIxZ2RXRjFWMVZNWDAxZlEwdERTa2xIUFRzM05USXZLeWNpSUJ3WEV4QU9EQWdGQUVJQlFoUUdGaXNGSWlZMU5EY21JU0ltTlRRMk93RTFKd1lqTGdFMU5EWTNNajhCRnlZMVBnRXpNaFlYRlJRWE1qY3pNaFlWRkFZSEJpTVdGUWN6TWhZVkZBWXJBUlVHQnhRR0F6WTFKaThCQng4QkFTSW5KaWNtTlRRM05qTXlGeFlYRmhVVUJ3WTNKaWMxSmpVMEppY21OVFErQVRNeUZ4WVhGQWNHQW1VVUhBVXovbHNVSFIwVXB3RXBLaFFkSFJSWldYaFJBZ0VjRkJRY0FRRXFSd0lUSEIwVVJDWUlBV3NUSFIwVGJ3UUJIVHdCQWdZM2xRRS9BUzhNQ3hFR0VRY05IUXdNRXdRUUJRNUhMUVVEQWdRSURoY01IQThXQVFZTktCd1ZnUmtCSFJRVUhaQTRBUUVjRkJRY0FRTUNBU1ltRlJ3Y0ZSa2FHUUlkRXhVYkFRTnFReDhkRkJRZENFbEpGUndCTFI4Z1IwWUJBc29CQVR3R0NoTTZCd3dNR1FZS0ZEd0hDd29aTkFNdUF3b0hBUWNEREEwTUZ3NFlKU3NOQ3hnQUJRQW5BQllEWkFNZ0FBSUFNd0JKQUYwQWtRR0ZRQk9IQVF3T1lnNENDd0ViQVFBTE1BRURBQVJNUzdBSlVGaEFTd0FCREFzTUFRdUFFZ0VMQUF3TEFINEFCQU1FaGdBSUVBRUhDUWdIYVFBS0VRRUpEd29KYVFBUERnd1BXUUFPRFFFTUFRNE1hUVlDQWdBREF3QlhCZ0lDQUFBRFh3VUJBd0FEVHh0THNBcFFXRUJNQUFFTkN3MEJDNEFTQVFzQURRc0FmZ0FFQXdTR0FBZ1FBUWNKQ0FkcEFBb1JBUWtQQ2dscEFBOEFEQTBQREdrQURnQU5BUTROWndZQ0FnQURBd0JYQmdJQ0FBQURYd1VCQXdBRFR4dExzQXRRV0VCR0FBRU1Dd3dCQzRBU0FRc0FEQXNBZmdBRUF3U0dBQWdRQVFjSkNBZHBBQW9SQVFrT0NnbHBEd0VPRFFFTUFRNE1hUVlDQWdBREF3QlhCZ0lDQUFBRFh3VUJBd0FEVHh0QVN3QUJEQXNNQVF1QUVnRUxBQXdMQUg0QUJBTUVoZ0FJRUFFSENRZ0hhUUFLRVFFSkR3b0phUUFQRGd3UFdRQU9EUUVNQVE0TWFRWUNBZ0FEQXdCWEJnSUNBQUFEWHdVQkF3QURUMWxaV1VBb1gxNUxTalUwZ29CK2VIUnhjRzlla1YrUlZWTktYVXRkUTBFMFNUVkpGeUVoSkNvc0ZCTUdIU3MzRnlJbkZ5RW1KeVkxTnpRbU5TYzBOell6TWhjV0ZSUUhGUlFYRmhjaE1oWVZGQVlqSVFZaklpY2hJaWNtSnlZMU56WXpBU1luTlNZMU5DWW5KalUwUGdFek1oY1dGeFFIQmdjaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjR0F5SW5KalUwTmpjMU5qVTJOVFkzTmo4QkRnRWpJU0ltTlRRMk15QVdNekkzTXpZek1oY1dGeFlWRkFjR0J3WUhEZ0VIQmw0REFnRUJBUjBCQmdNQkFnRUhDeDBuQ1FZQkFnWUNBVEFVSEJ3VS9yWUtEQXdLL3VzY0hCUUtCZ0VMSkFMZExRVURBZ1FJRGhjTUhBOFdBUVlOa0F3TEVRWVJCdzBkREF3VEJCQUZEb0liRGdZRkdnVUlDQmdKQ2d3U0lVSCttaFFkSFJRQk54ME5KeWNGRnhjb0p4TUtCd0lTSEEwTER5Z2VEWDRCQVFFMk5Sc2NReEFHQkEwTkR4VWpKeWdPQXhNYkhUYzRIUlFVSFFVRkF3UVREUTBMSkFJSUF5NERDZ2NCQndNTURRd1hEaGdsS3cwTEdCTUdDaE02Qnd3TUdRWUtGRHdIQ3dvWi9yc1hEQTRHR2cwQkF3RUlBZ2d1RWhFVEFRTWRGQlFkQVFJRENBVVNDd3dIQnpFdEZSY2RPdzhHQUFBREFEdi91QU5pQXlNQVVBQmtBSG9BVkVCUkNRRUFBUUNHQUFnTEFRY0ZDQWRwQUFZS0FRVUVCZ1ZwQUFRQUF3SUVBMmNBQWdFQkFsY0FBZ0lCWHdBQkFnRlBabVZTVVFFQWRISmxlbVo2WEZwUlpGSmtSRFF3SlNJZkd4a0FVQUZRREFZV0t4Y2lKeVkxTkRZM05qOEJOamN6TlRNM016YzJOek0yTnpZM0pTSW1OVFEyTXpJWE56WTNCd1lqSWljbUt3RUdJeTRCTlRRMk56TXlOell6TWhjV016SS9BVElYSGdJVkZBY0dCd1lIQmdjR0FTSW5KaWNtTlRRM05qTXlGeFlYRmhVVUJ3WTNKaWMxSmpVMEppY21OVFErQVRNeUZ4WVhGQWNHd3d3T0ZoRVROaUVpWTF3QkFRSUJGeGNUQVFJREZoWCtReFFkSFJUejlBUVZBejRhT0ZsTEtpa2NoeFlWSEJ3VkdTVWxMU3dvS0UxTlFoc3NJU0VQSFFZb0h6SXNWYW1iQndINURBc1JCaEVIRFIwTURCTUVFQVVPVVMwRkF3SUVDQTRYREJ3UEZnRUdEVWdJREIwTUhRWU5FQkF2UmdFQ0V4TVpCQU1oSlFFZEZCUWRBZ28vSHdFQkF3SUZBUndVRkJ3QkFnTUNBd0VCQWdFU0pSUklZMVJMUkR0NktRSUN2d1lLRXpvSERBd1pCZ29VUEFjTENoa1NBeTREQ2djQkJ3TU1EUXdYRGhnbEt3MExHQUFBQUFBQkFWUUE5UUlkQWE4QUZRQW1RQ01CQVFBQkFVd0FBUUFBQVZrQUFRRUFZUU1DQWdBQkFGRUFBQUFWQUJVb0VnUUdHQ3NsSndjaUp5WTFORGMyTnpZek1oY1dGeFlWRkFjR0FjY01Dek1aRUFVVExnd0xHUkVkRkJFcEZmVUJBU3dWSFE4TkxnNEVEUTBvRXhZcEdnd0FBUUJjQVNNRElBR0ZBQTBBSDBBY0FBRUFBQUZYQUFFQkFGOENBUUFCQUU4Q0FBa0dBQTBDRFFNR0Zpc0JJU0ltTlRRMk15RXlGaFVVQmdMdi9aNFVIUjBVQW1JVUhSMEJJeDBVRkIwZEZCUWRBQUFBQVFENkFGa0Npd0lDQUNBQUdFQVZBQUVBQVlVQ0FRQUFkZ0VBRVJBQUlBRWdBd1lXS3lVaUp5WXZBU1luTGdFdkFTWTFORGMyTXpJWEZoY1dGeFlYRmhjV0ZSUUhCZ0phR1JCUUd3TU9VQXNlR3dRakJRNGJCd2NwTGdnS0h6Zy9UZ2dXREZrV2Vod0VGRVlKSFJZQ0VSME1EQnNDRHk0SkNCZzRSM2NNRGhrUUNBQUFBd0RtQUZrQ3l3SjJBQndBTGdCRkFFaEFSVU01QWdFREFVd0FBUU1FQXdFRWdBWUJBQUlBaGdBREFRSURXUUFGQUFRQ0JRUnBBQU1EQW1FSEFRSURBbEVlSFFFQVBqd3dMeWNsSFM0ZUxoQU9BQndCSEFnR0Zpc2xJaWNtSnlZbkxnRW5KalUwTnpZek1oY1dGeFlYRmhjV0ZSUUhCZ01pSmljbU5UUTNOak15SHdFV0ZSUUhCamNpSnpRbU5TWXZBU1kxTkRjMk16SVhGaGNXRlJRSEFrWVpFRkFjRUZBTEhoMGxCUTRiSmo4SUNoODRQMDRJRmd3OUd4d05CaGtMRENBTEdnY2FESFlqRFFJRkJBRVJBZ3NpRmhBZENnSW1XUlo2SGhaR0NSMFhFaDBNREJzL0NRZ1lPRWQzREE0WkVBZ0JjeklYQ3d3Y0R3WVpNQXdNSEE0R0ZpWUJBd01NQkFJUkVnY0lJdzRnS2dZR0l3d0FBQUVBZWYvSEFzY0NzQUFTQUNaQUl3TUJBQUVBaGdBQ0FRRUNWd0FDQWdGZkFBRUNBVThCQUEwS0JnUUFFZ0VTQkFZV0t3VWlKalVSSVNJbU5UUTJNeUV5RmhjUkZBWUNsaFFkL2tVVUhSMFVBZW9XSEFFZE9SMFVBbFlkRkJRZEhSVDllUlFkQUFBQUFnQURBV2NCVFFMbkFBWUFTQUMrUUJZOVBBb0RBUVlpQkFJQUF5OEJCQUFEVEFJQkF3RkxTN0FSVUZoQUpBQUJCZ01HQVhJQUF3QUdBd0IrQUFJQUJnRUNCbWtIQVFBQUJRQUZaUUFFQkRNRVRodExzQ1JRV0VBbEFBRUdBd1lCQTRBQUF3QUdBd0IrQUFJQUJnRUNCbWtIQVFBQUJRQUZaUUFFQkRNRVRodEFNUUFCQmdNR0FRT0FBQU1BQmdNQWZnQUVBQVVBQkFXQUFBSUFCZ0VDQm1rSEFRQUVCUUJaQndFQUFBVmhBQVVBQlZGWldVQVZBQUJGUkRJd0xpd21KQmdXRGcwQUJnQUdDQWtXS3hNM0p3WVBBUlluRnhZVkZBY0dJeUltSnlZMU5EYzJNeklYRmhVVUJ3WVBBUVlWUGdFek1oY1dGUlFIQmlNaUp3WWpJaWNtTlRRM05qYzJNemMxTGdJak5TY21Jd2NWRkpRR0FSWVRBUkVLQVFNQ0NTWUdHd2tNQ3lOSlFDVWdDd1FEQVFFS0VRY01EaFlrSGhnUERSVXlSaTRaSFM5VUF3UUVBUVlEQVFnR0V3MEJ5UUVXQmdzQkJiVUNDQWtIQnlNRkV4Z1lGeGMzS3lZekZUSVFFUW9KRUFJR0NBNGJKQXNMQlJNcUZ5SWxIU3dQQVJNT0FnOERBUVFEQkFFQkFBQUFBQUlBRFFHSEFVRUMwZ0FzQUVBQVQ3Y2RIQVFEQUFFQlRFdXdLbEJZUUJZQUFRRURZUUFEQXpKTkFBQUFBbUVFQVFJQ013Sk9HMEFVQUFNQUFRQURBV2tBQUFBQ1lRUUJBZ0l6QWs1WlFBNHVMVFkwTFVBdVFDd3JMd1VKRnlzVEJnY0dEd0VWRkJjVk1oY1dGeklXT3dFeU5qSTNQZ0kvQVRZM05TOEJOU1luTkM4Qkl5WWpKaU1HQnhjaUp5WTFORGMyTXpJWEZoY1dGUlFHQnc0QmhRb0RCZ0lCQmdFSkNRb0NFd2tKQWdZREFRUUVBd0VHQmdNR0FRVUdBd3dCREFZQ0Jnd1NLa0kzS2xZZ0lSUVZPaUFhQXpFVExnSmtCd2NRRVFFY0Nnb0JDUVlGQmdJQkFnTUNBUWdHRWhZWEFRRUtDUUlEREFrQkRBSGRNU1ZHZlNFUkJoVTJMellIUlNrUEVRQUJBQVQvOWdMTkFzY0FQZ0IwdGl3UUFnRUFBVXhMc0FsUVdFQVhBQUFCQUlVQUFRSUNBVmNBQVFFQ1lRUURBZ0lCQWxFYlM3QUtVRmhBSGdBQUFRQ0ZBQVFCQWdFRUFvQUFBUVFDQVZjQUFRRUNZUU1CQWdFQ1VSdEFGd0FBQVFDRkFBRUNBZ0ZYQUFFQkFtRUVBd0lDQVFKUldWbEFDVGMwSVVSTUdBVUdHaXMzTmpjMk56WS9BVFl6TWhjZUFSVVVCd1lIQmc4Qk16WXpNaFlWRkFZaklpY0hCaU1pTlRRM05qOEJOajhCQmdjR0J3WUhCaXNCSWlZMU5EY3lOamNZQ0FZbE5sMUJVQTBlQmdZaUJBVUdCUXdaQXcwYzN4UWRIUlNyT1IwSkZWUU5FZ3dIQkFJQklDTWhRUjhjS1NJTEN4ME9BUVFCVlFvTFFWQ01pSjhaQWd4RElUQXdhelI4Y3c0QkhSUVVIUUVCQWpjUU0xTmFRQ3dzQkQ0OE9HSXZNRXNkRXhRUEJRRUFBQUFCQUZuLzdnRnFBdFVBS2dBcVFDY2pBUUFDQVV3REFRSUNBV0VBQVFFa1RRUUJBQUFzQUU0QkFCY1ZFeElOQ3dBcUFTb0ZDQllyRnlJbUx3RW1OVFEzTmpjMk16SWVBUlVVQmlzQkppTWlEd01HQnlNSEJnOENCaFVVSHdFT0FZd1VIQUVCQVJ3Z1VSVVVGU29jR3hRQ0Z4Y1JBaEFIQndjRUFRSUVCd01DQVFFQkFSd1NIQlhFWm1kL1IxQU1Bd1lZRmhJZkF3RURCQWNLQ3djS0loVWJMV2xLU2FRVkhBQUJBRmovN2dLYUFzRUFkd0RGUzdBUVVGaEFFU3dCQUFKZUlBOEtCQVVBRWdFQkJRTk1HMHV3RWxCWVFCRXNBUUFDWGlBUENnUUZBQklCQkFVRFRCdEFFU3dCQUFKZUlBOEtCQVVBRWdFR0JRTk1XVmxMc0JCUVdFQVlBQUFBQW1FREFRSUNLRTBHQVFVRkFXRUVBUUVCTEFGT0cwdXdFbEJZUUJ3QUFBQUNZUU1CQWdJb1RRWUJCUVVFWVFBRUJDTk5BQUVCTEFGT0cwQWpBQVVBQmdBRkJvQUFBQUFDWVFNQkFnSW9UUUFHQmdSaEFBUUVJMDBBQVFFc0FVNVpXVUFRVUV0RlJEMDdNakFxS0JnV0lRY0lGeXNCSnlJT0FTTU9BZzhCRnhZVkZCY1dGUWNHQnhRR0l5SW1OVFEzTmpVMEp5WTlBU1kxTkRjMk16SVdGemMyTnpZekZ4WVhGaFVVQndZSEJpTW5KaWNtTlRRM05qTXlGeFlYTXhZek1qY3pNamMyTno0Qk56WTFOelkzTmpVdkFTWW5KaWMxSmljMEppY21KeUl2QVNZbk5DTW1KeTRCSXdGN0Rnb1JBZ0VjTmpVSkJRRUJCQVVDQkFJY0ZCUWRCQU1FQlFJVkR4TU9HZ1lUSEJNek14V2dTRGdNRjAwL1R4SmVFZ2NaQ3cwR0J4WVdBd2dVRFFNQkZTUVJDUUVEQVJnQkR3Y0ZBUUlCQWdjSkdnc0RBUWNPQVFFUURnNEJFeFFIQ3dFQ1h3RUJBUVVRQ0FRSW9COHRHa3d2SkNnUk9CVWNIQlVmSUJRYUVFUTBORkpDUTN3V0RoRU5Bd1FJRVFFTWhsOTVOeloxUWpVQkJ4OExEQndQQndJSEF3SUJHQTBPQVFNQ0pRY0JKaTBPTXhvWUFRMG1Fd0kwRFFFREFnb05BZ3NLQlFFSEJBRUNBQUFBQUFFQVRQOWRBZDRDSXdCZ0FKSkxzQzFRV0VBUlVBRURCa1pGT2dNRkF3a0lBZ0FCQTB3YlFCVlFBUU1HUmtVNkF3VURDUUVDQVFOTUNBRUNBVXRaUzdBdFVGaEFHd0lCQVFnQkFBRUFaUVFCQXdNR1lRY0JCZ1lyVFFBRkJTTUZUaHRBSVFBQ0FRQUJBbklBQVFnQkFBRUFaUVFCQXdNR1lRY0JCZ1lyVFFBRkJTTUZUbGxBRndFQVZWTlBUVUZBTUM4c0tnNExCd1VBWUFGZ0NRZ1dLd1VpTlRRM05qTXlGeWNYRmpJek56WTNNelkvQWpZM0p6YzBMd0VtTlNjdUJDY3VBUzhCSmlNaUJpTUhJZzhCSWdjR0R3RVZCZ2NSRkFjR0J3WWpJaWNtTlQ4Qkp6YzJOVDRCTXpJWE5qYzJNeklYRmhjV0hRRVVCd1lIQmdFcVdBWVFLQkVOQndVRUJBTVFCdzRDRHdZRkFnSUJBUUVIQVFFSENRRUJBd0lCQndVR0JBUUZIUU1DQWlRWEJ3SUJDQWNGQndrRkJCTU1EQVlISXdFQ0FRRUJBUndVR3hBVEZDa3JTQzRvQ2c4QkF6b3lvemNOREJjRkF3RUNBUUVHQmdrUURCTVVGWk5JUmdZREJDc2RBZ0lEQkFFSEF3SUNBZ0VCQ2dNQkF3VUVBUWtHL3Nza0l4UUtCZ0lLSnd1ZU8zNDBOUlFkR2drRkN5a29SR2wwY3g0ZFhpZ2ZBQUVBVi8vekFzSUNzUUIrQUhkQUNtc0JCQU03QVFFRUFreExzQXBRV0VBbEFBUURBUU1FQVlBQUFRSURBUUorQUFNREJXRUFCUVVpVFFBQ0FnQmhCZ0VBQUNNQVRodEFKUUFFQXdFREJBR0FBQUVDQXdFQ2ZnQURBd1ZoQUFVRklrMEFBZ0lBWVFZQkFBQW1BRTVaUUJNQkFIUnhhV2RRVFNBY0N3a0FmZ0YrQndnV0t3VWlKeVluSmpVME56WXpNaDRCRnhZZkFSWWZBUlVXTXhZZkFSWVhNaDhCTWpjNkFUWS9BVFkzTmo4Qk5qYzJQd0kyUHdFME16VTJOVFFuTkM4QkxnRW5KaWNtSnlZbklpWXZBU1l2QVNNaUJ5TUdJZ2NHQnhVakJnY0dCeU1PQWdjR0R3RU9BU01pSmowQk5qYzJOell6RnpJWEZoY1dGUlFIQmdjR0FYTkNPMWNuSHdjTEhnd2ZDQWtNQmdFSUNRSUJBaEVURVEwY0JBSWdHd1lCQlM4WkF4MEpBZ1FERGd3SUVnRUJDd1lEQVFNRENBOEJBd0lJQ3dNQ0RRNEJEZ2dLQ1JZcUdUQVFBd01GQVJzYUFRZ09CQU1CQ3dRQ0FnMEtDUUlaRlJNZUNqWTJURGc2Smw1RU9Sb2NFU3FTUHcwYUpVUXJKQTRPRnhBbUR4WUdBZ2tIQVFFQkRRb0lCUWNCQVFJS0NnRU9Cd0lDQXdzUENDUURBaDBmRXdFREZDQVVGUTBpTGdFSkFoSVFBd1FRREFvRUJRUUVBZ0lCQVFVSkFRSUtBZ01KQmdJREVoWWRGQnNjRXdKUlBEY1BDd0U2TTBsUVV6OUJuREVYQUFFQUpQL29BaWtDSHdCcUFFZEFSRkpSVUFNRUF5Z0JBUVFDVEFBRUF3RURCQUdBQUFFQ0F3RUNmZ0FEQXdWaEFBVUZKVTBBQWdJQVlRWUJBQUFzQUU0QkFHRmZWMVUvUFJrWENRY0FhZ0ZxQndnV0t3VWlKeVkxTkRjMk16SWZBUlF6RnpJZUFUTWVBUmNXSHdFeVB3RTJQd0UxUGdJME16WTNOajhDTlRRdkFTWXZBU1l2QVNZbkppY21KeVluSmlNaUJ3WWlCd1lIQmdjakRnRUhCZ2NHRlJjbkZ4UUhCaU1pSnlZMU5EYzJOell6TWhjZUFSVVVCd1lIQmdFUGZVTUhHQTBNR3hFRUFRd0JBZ01EQnd3RkN4WVNGaGt0SUJBRUR3SUNBUWdGQmdRQkFRSUNBd1lDQndjREJnMEdCZ0lCRGl3TER4Y1hBZ1VCSmhVU0RnRUdDZ01GQVFFQkFRRUdEaHNORHhjU0dTbE1ZSXBQR2hJbExGNDBHR01NREJ3UEJ4b0dBUTBDQkFVR0F3UUZBUVlQRUFzQ0FRMEZBZ0VNQ3hNVUJTZ09HQmNKRVJFRkRnZ0VDQXNHQkFFQ0RRc0RBZ0VCQlFzSEN3WUxCZ1VOQlFZTENBd09EQmdIQ3pFbkpDa1pMRzBsV0RkZlBFUWhGZ0FDQUZILytBTGpBclVBUndCMkFGQkFUVFFCQkFNTEFRY0JBa3dBQkFNQkF3UUJnQUlCQVFBSEJnRUhad0FEQXdWaEFBVUZJazBKQVFZR0FHRUlBUUFBSXdCT1NVZ0JBRnRaU0haSmRqczVNUzhpSUJJUkVBNEFSd0ZIQ2dnV0t3VWlKeVluSmljMEp5WTlBVFkzTmpNeUZpRW1KelFuSmljMUx3SW1Md0VtSXlJSEl3WUhJZzhCQmdjakJnY0dJeUluSmpVME56WTNOak15RnhZWEhnRVZGQVlIQmdjR0p6OEJOamN6Tmo4Qk5qOEJOamMxTmo4QklDY2VBUlVXRng0Q0Z4WVhNaFlmQVJZZkF4WVhGaklWTXhZQmp5bzRMQ1JxSEFFRkJTME9Ed2tXQVpvSEN3SU5GeUFPRlE4UUNBc1JFeFVFTVNBQ0Jnd05Dd0VXRUFzTUd4QUhBeDFFV1ZpTVR6d09FUllXRUJ5RVFrNGdBZ3NWQVJVUkNoTUdCaEFWQlF3Ry9tb1NBUUVLQ2dFQkFRSU1HZ0VCQVFjSkJnY0pDaG9NQVFZQkhBZ0pCUmhTbmdJQkd4b0pQQXNDQWg0ZUFnSWVJQUVnQ1FvR0F3RUJBZ2tNQXdVSENDSUtCeGtMQ3dnSFF4c25hMUZrQkJvU0VSb0V2bGdvWVFJQkFRZ0tEQWtSQ2djUU1BRUlMQmtCQWdnRE5CY0JCUUlFSGlVQ0FRa0pCQVlHQXdZQkFRRUVBQUFBQWdBZC8rb0NQQUlkQUVBQWJ3QlNRRThwQVFJRU9RRUdBVnBUQWdVR0Ewd0FBd0lCQWdNQmdBQUJBQVlGQVFabkFBSUNCR0VBQkFRbFRRZ0JCUVVBWVFjQkFBQXNBRTVDUVFJQVdWVkJiMEp2TUM0bUpCOGREZ2dBUUFKQUNRZ1dLeGNqSWljbU5UUTNOak1YTWhjeU55NENMd0VtTHdFMUp5WW5JaWNtSXlJSERnRUhCaU1pSnlZMU5EYzJOell6TWhjV0Z4WVhGaFVVQnhZVkZBY0dCd1luTWo4Qk5qYzJOek0yUHdFK0FUOEJOajhDTlNNR0t3RVZGaFVYRmhjZUFoOEJGaGNVSHdFV01oNEJId0g5QzNrNUl3VU5TQk14SDVvN0JnOENCeHdHRUFzS0RnOElBZ2dPUEI4QkJBRVBIaHdQQndJTEhESmRka3M4R2hJSkJRNEJDQmRFVUlNaEF3WXFKQ0FIQVJVRkFRUUhBZ1FFQWdFQkhEOVFvd0VCQkFvQkFRRUNCQWdMQWhFSUFnUUVBUThXZVU1UkV4UXJBUUVEREJVRUJ4b0dDQVVCQXdRREFRRU1BUUVDSHhrTERRWUhJQkloUmpwT0JoSUxDeFVPQ3d3ZkhsRXhPRndEQVFVUEVBY1NDUUVIQ3dVTENRb0lGUXNEREFFR0JSZ2dBUVFDQlFnUUR3SUNFUVVDQVFFREFBSUFDUUFMQXA4Q3JRQkVBR1FBb1VBTE9oMENBZ0ZaQVFVQUFreExzQmxRV0VBaENRY0NBZ1lJQWdNQUFnTnBBQUVCQkdFQUJBUWlUUUFBQUFWaEFBVUZJd1ZPRzB1d0tsQllRQjRKQndJQ0JnZ0NBd0FDQTJrQUFBQUZBQVZsQUFFQkJHRUFCQVFpQVU0YlFDUUFCQUFCQWdRQmFRa0hBZ0lHQ0FJREFBSURhUUFBQlFVQVdRQUFBQVZoQUFVQUJWRlpXVUFhUlVVQUFFVmtSV05mWFZaVVRrd0FSQUJEUHowMU14TUtDQmNyRXdZVkZ6WTNNamMyTnpZM05qYytBVGMyTnpZL0FUWTNOalUwSnpVbk5DYzFMZ0VuTGdJbkppY2lKaWNtTHdFbUp5NEJJeUlIQmdjR0ZRY0dCek15RmhVVUJpTW5OamNtTlRRM05qTXlGeFlYQmdjR0l5SW5KaWNtTlRRM0l5SW1OVFEyTTlBQkFTY0NDUWszTEJnY0dSUUJCZ01oRGhJTEJRY0VBUUVCRHdFQ0RRb0NBZ0VORGdJSEFoMFBEUlVjQ1JRWUlBa1NFaElEQlFSc0ZCd2NGTlVKRmdjYVRWVmZWNlVEQXF1VHF4WU9Jd1FEQVM0VUhCd1VBUTRwS1U4Q0FnSUtEd2dPREE0QkF3TWFFaGdWRFJRVkRCTU9EUVlFRFNVQkFRY1VEZ01CQWc0TUJ3RVJCd1lJQmdFREFnSUZWdzBRTHk4ZEZCUWRZbk5vQ3cwZURDQXNYcld1WkZFS0N5UTdPaXNxSFJRVUhRQUFBZ0FnLzNNQ1lRTFhBRE1BWndCVFFGQWZIZ0lDQXhrQkJRSlhWVFlEQmdVRkJBSUFCQVJNQUFJQUJRWUNCV2NBQkFjQkFBUUFaZ0FEQXlSTkNBRUdCZ0ZmQUFFQkpnRk9ORFFCQURSbk5HWTlQQzRzSkNJWUZnc0dBRE1CTXdrSUZpc0ZJaWNtTlQ4QkJ5Y2lKeVluSmljbU5UUTJOelkzTmpNV0Z5WTFORDhCSnpRM05qTXlGUWNVRnhZVkJ4VTNNaFlWRkFjR0p6WXpOalUwSnlZdkFRY2lEd0VHRHdFR0l3WUhCZzhDQmdjT0FRY0dEd0lVSHdFV0Z4WVhGRElXSHdJV0h3RVdGd0loSEJrbUFRRVVGREFSb2xJb0VoRVdRQ1lyVzE0YUdnTUJBUWtZQ3cwNkFnMExBUWNWSEE0Umd3UUVBUWtURHpJWkFnRU1NVEVLQWdJY0N3TUNBZ3dGQkFFQkF3VUNBUUVCQWdRV0Fnd0VBUUVZRXlncURoWlhqUXdZS3dzZ0FRRUJCejhsTkM0d0hXc3ZHUThpQVFVMUVoVVVGRDBiRGdkc1F6RmxaWlE2aWdFZkVoVU5FTnNDSURXYVFnVUNBZ0lCQVFnU0JBSU5DQU1CQVF3SUNRRUhBdzRRQmc4UUR3Z2ZJQVFLQXdFQkRRWUxCZ0lDQWdBQUJBQmkvL2tEL2dLK0FERUFYZ0J5QUlRQTVVQVJMQUVGQjA5T05pUUVCQVVTQVFvR0EweExzQWxRV0VBd0FnRUJCd0dGQXdzQ0FBZ0FoZ0FIQUFVRUJ3VnBBQVFNQVFZS0JBWnBBQW9JQ0FwWEFBb0tDR0VKRFFJSUNnaFJHMHV3Q2xCWVFEWUNBUUVIQVlVTkFRZ0pBQWtJQUlBREN3SUFBSVFBQndBRkJBY0ZhUUFFREFFR0NnUUdhUUFLQ1FrS1Z3QUtDZ2xmQUFrS0NVOGJRREFDQVFFSEFZVURDd0lBQ0FDR0FBY0FCUVFIQldrQUJBd0JCZ29FQm1rQUNnZ0lDbGNBQ2dvSVlRa05BZ2dLQ0ZGWldVQWxkSE5nWHdFQWZudDNkWE9FZElSb1psOXlZSEplWFVOQktTY2ZIUXdLQURFQk1RNEdGaXNYSWlZbk5qYzJOelEzTmpNeUZoY1dGeFlYRkRNVk5qOEJOajBCUGdFek1oWWRBUlFIQmdjR0l5SW5KaWNIQmdjT0FRRUdCd1lQQVJVVUZ4VXlGeFlYTWhZN0FUSTJNamMrQWo4Qk5qYzFMd0UxSmljMEx3RWpKaU1tSXdZSEZ5SW5KalUwTnpZek1oY1dGeFlWRkFZSERnRVhJaWNqSWlZMU5EWXpOeklYRmhVVUJ3YVRGQndCQXhJTkJ4Z01EQ0ljRURObE5ERUJDd2dERWdFY0ZCUWRDd292RENNblUzSlRCaE1DQVJ3Q2tBb0RCZ0lCQmdFSkNRb0NFd2tKQWdZREFRUUVBd0VHQmdNR0FRVUdBd3dCREFZQ0Jnd1NLa0kzS2xZZ0lSUVZPaUFhQXpFVExsRUpDT2tVSFIwVTRCSVRKQmtMQngwVXNLK0NneHNQQmtJZ2ZMUmRQd0VCTXpNYmtkVVpGQndjRkNhTmpKMlZJM2VsdVVhdnNCUWRBWGdIQnhBUkFSd0tDZ0VKQmdVR0FnRUNBd0lCQ0FZU0ZoY0JBUW9KQWdNTUNRRU1BZDB4SlVaOUlSRUdGVFl2TmdkRktROFJrQU1jRkJRZEFRVU5JaHNRQmdBQUFBRUFIUUFBQXVJRHdnQkFBREpBTHdjQkFRSStQQ0lEQUFFQ1RBQURBZ09GQUFJQkFvVUFBUUFCaFFRQkFBQjJBUUF1TEJvWUVBNEFRQUZBQlFZV0t5RWlMZ0VuSmk4Qkl3OEJCZzhCQmlNaUpqVTBOamMyTnpZek1oY1dId0VXRnhZWE5qYzJOelkvQVRZM05qTXlGeFlWRkFjR0R3RUdCd1lIQmdjVUJ3NEJBYXNrR2h3TUcwZ1JBUTRCRUNJZkR4TVVIUjBQTjAwTkRCSVFHQW9UR3hrWEZSQXpFd1FKRGpZUUxnMGlHeEFHR2d3VFBCZ2NKQk1ZRFFJQkcwbEJJRTYwTEFrQ0RDa2tEaDBVRXlBU1JDWUdEaG9qTkVKRE9Ua3NyMFFMSGphYU9uWWtHUXNMQ1VZWVA3RmJXbjQ1U1Q4TUN4VWNBQUFBQXdBYUFISURIZ0lQQUNjQVJ3QndBRXBBUjJWVlZFTkNNQThIQkFVQlRBQURBZ09GQUFJQUJRUUNCV2tBQmdFQUJsY0FCQUFCQUFRQmFRQUdCZ0JoQndFQUJnQlJBUUJKU0RrNEtTZ2hIeFVUREFvQUp3RW5DQVlXS3lVaUp5WW5MZ0VuQmdjR0l5SW5KajBCTmpjMk14Y1dGeDRCRlRZM05qYzJNeklYRmhVVUJ3WWxNajhHSmljbUl5WW5KaWNPQWdjT0FRY0dEd0VWTXpJWEl3VTNOajhCTmpjME5qYzJQd0V2QVNZdkF5NEJJaVlqQndZSEJnY1dGeFlYRmg4QkZoY1dGd0p0WjNBU0NBY0xCQmNkUDBSYklCb0hSUjhqRDFCWUF3TTVReTh4SVNNOEtEVTZNLzMzRkJRZERCQURDUXdiQ3dFQ0JRWWZHeE1DQkFJSkNBUUVBZ0VDQXdZQkFkNFZEUXNHQ2dZR0F3Z0RBZ0VDQkFnQ0NRZ0RDQU1LQWdreExEWXdCd0VOREJVV0Job2VEQkJ5Y0JJR0JRVURGdzhmSlI4dUNGYzBGQUVMTmdJQkFURWVGd29LSzBKaWNEVXBzZ0lHQlFrQkJnc1JBd0VEQWcwR0FRSUNBUWtOQ0FrS0RRd0NWQUVDQkFJRkJnRUpDaGdXR0JZSUZ4VUZFQWdDQXdFQkNCSVlJZ3NNQ3d3VkVnUVVEZ1VFQUFBQUFRQkhBUTRCcHdGd0FBMEFIMEFjQUFFQUFBRlhBQUVCQUY4Q0FRQUJBRThCQUFnRkFBMEJEQU1JRmlzVElpWTFORFk3QVRJV0ZSUUdJM2dVSFIwVS9oUWRIUlFCRGgwVUZCMGRGQlFkQUFBQ0FESC85UUtHQXNNQUp3QXVBSXhBQ2lvQkJBRUVBUUlEQWt4THNCZFFXRUFhQmdFRUFBTUNCQU5vQUFFQkZFMEFBZ0lWVFFVQkFBQWFBRTRiUzdBdFVGaEFIUUFDQXdBREFnQ0FCZ0VFQUFNQ0JBTm9BQUVCRkUwRkFRQUFHZ0JPRzBBZEFBRUVBWVVBQWdNQUF3SUFnQVlCQkFBREFnUURhQVVCQUFBYUFFNVpXVUFWS0NnQkFDZ3VLQzRoSUJ3YkRRc0FKd0VuQndjV0t4Y2lKeVkxTkQ4Qk5oSTNOak15RnhZZkFSUXpGeFlYRmhVVUJ3WWpJaWNtSnlNR0R3RUdCd1lCSmljR0J3WUhZaHNQQndJVkwyNU5EeHNrQzFrdEJnRUdQQ1lHR0FzTkJnMFlhT0VnSGhNR0VRc0JMQ1FqSEJZUERRc1pDdzBHQno2VEFTR0dHQ1R1Wmc4QkVJZE1EQTBhRHdjREJmSmNYRGdUQ2djQmRWbGFPRFlpSXdBQ0FGZi8rZ0pGQXNnQUxRQlBBR0cxTHdFQkFnRk1TN0FlVUZoQUhnQUNBQUVBQWdGbkJnRUZCUVJmQUFRRUZFMEFBQUFEWVFBREF4VURUaHRBSEFBRUJnRUZBZ1FGWndBQ0FBRUFBZ0ZuQUFBQUEyRUFBd01WQTA1WlFCSXVMaTVQTGs1S1J6ODlOREF0S0NFSEJ4Y3JFeEVYTWo4Qk5qYytBVGMyUHdFMk56WTNOVFkvQVRZMU5DWTFKaU1uSmk4QkppY2lMZ0lqSmlNbUt3RWlKeFUyTXpZek1oY1dGeFlkQVJRSEJpTWlKeVluSmpVUk5EWXpJVElXRlJRR0k3Z2tOQlVUSVNzRkJ3TVRDd1FXQWdjRkJnSUJBUUVHQVFjRkNnSUtDd0VCR1JzQ0RSQW1KeG8wQmd3d0ZCVk9TenNwS3lCUzh5Z29HQTRUSEJRQmJoUWRIUlFCY3Y3ckFRTUNCQTRCQkFFSUNRTVRCd2tMQVEwT0F3Z2hFUVVFRncwSUNBRUhCUUVJQlFNQzlaVUNBUklQTFRoSUZFQTRnQU1DRVE4WUFtQVVIUjBVRkIwQUFBQUFCQUJwLy9BQ1RnS3pBQU1BTFFCVUFIQUFlRUFOVVR3Q0FnRmlLeFVEQUFJQ1RFdXdFRkJZUUNBQUFnRUFBUUlBZ0FBQkFRUmhBQVFFRkUwR0FRQUFBMklGQndJREF4d0RUaHRBSkFBQ0FRQUJBZ0NBQUFFQkJHRUFCQVFVVFFZQkFBQUZZQUFGQlJWTkJ3RURBeHdEVGxsQUYxWlZCUVJ2YTExYVZYQldjRUE5T1RjRUxRVXNDQWNXS3dFbUl4Y0RNamMyTno0Qk56WTNQZ0UxTmo4Qk5qVW5JalVtSnpRbU5TWW5OU2NtSnlJbk5DTW1KeVluRlJZVEppY21OU1luSXljbUl5SUhCZ2NWTmpjeU56b0JOVE0yTnpRK0FUTStBVFUyTlNjbUp4VUJJaVkxRVRRekZ4WVhGaFVVQnhZWEZoVVVCd1lIQmlNaUx3RUdBYzRDQVFLYlJBa2NGUUlHQVFvS0JBb0ZBd0VJQkFFQ0JBSUhDQVFNREFJR0FUUXNCSHhUcndRRkFoSUdBUU1xUFNRckVoTXJLMHdYQWdNR01nc0VBd0VDQWdRQ0NBVCt6QlFkMHlLYk1oSk5PQnNMRXlWUE9VY25Kem9QQWlnREEvNDVCQVFIQWdFQkJBY0VDUUVHQndJU0p4SUJCUVVDQVFFSUJnRUNDUVVEQVJNRkFRclhCQUhIQlFRQkFRc0NBUkFHQXdTakF3RUZBUTBLQVFNRUJBTURDUkVmR2dFQi9ja2RGUUpKU0FFRllTbzBZaWdlUGlFaExDcElHUkVDQVJFQUFBRUFUdi9yQWpJQ3lBQVVBRGkxRHdFQUFnRk1TN0FtVUZoQUVBQUNBZ0ZmQUFFQkZFMEFBQUFjQUU0YlFBNEFBUUFDQUFFQ2FRQUFBQndBVGxtMUZEVVFBd2NaS3hjaU5STTJOelkzSVRJV0ZSUUhJQWNHRlFJVkZJazdDUVFORTFJQklUUVFLUDdCRFFRSkZUc0IwNlVNR1FVZkdCME9Ba29oL2xnNkhRQUFBZ0JVL3pZQ3ZRSzBBQkVBVmdEVlFCRXJDQUlCQXowbUFnQUJVa0lDQmdBRFRFdXdFMUJZUUI0QUFRRURZUVFCQXdNVVRRY0JBQUFHWUFBR0JoVk5CUWdDQWdJWUFrNGJTN0FWVUZoQUlnQUJBUU5oQkFFREF4Uk5Cd0VBQUFaZ0FBWUdGVTBBQlFVWVRRZ0JBZ0lZQWs0YlM3QXhVRmhBSlFBRkJnSUdCUUtBQUFFQkEyRUVBUU1ERkUwSEFRQUFCbUFBQmdZVlRRZ0JBZ0lZQWs0YlFDUUFCUVlDQmdVQ2dBZ0JBZ0tFQUFFQkEyRUVBUU1ERkUwSEFRQUFCbUFBQmdZVkJrNVpXVmxBR1JNU0FnQlFURWhHTlRRekx4SldFMVlLQ1FBUkFoQUpCeFlySlRjekpqVUROelEzQmlNVUJ3WUhCZ2NXQXlJbU5TWTFORGMrQVRjMlB3RTJOelkzTmowQlB3RTJQUUVtTlRRM05qTXlQd0V5SFFFR0ZSUVhGaFVYRmhjV0ZSWVZGQVlqSWlZbkpqMEJCaUVpTHdFZkFSUUdBVkI0U3dFR0F3TTBlQW9WVEF3RUw1TVVIQU1SQmljSERnY0NCUVFvRmdJQkFRb0VJd01taGpFVVd3VUVBZzRkRVFvREhSUVVHd0VCQi82d0tnWWVBUUVkV3dFUEl3RXNYaWtSQkRSSXZKMFZDQUgrMnh3VmZEWVpGQWsxQ2hFVUJRb01XNDBIQmdRQkRsSXNDZzRPS0F3QkF3SlhDbGhZTVpCSVBRSUZGeEFjSFlJVkhCd1ZCb0FCQVFJQkhIb1ZIQUFBQUFBQkFGLy85QUl6QXJrQU1BQTBRREVBQXdBRUJRTUVad0FDQWdGZkFBRUJGRTBBQlFVQVh3WUJBQUFWQUU0QkFDa2tJUjhiR1JjVkVRNEFNQUV0QndjV0t4Y2lKaWNtTHdFME56WTNORFkzTmpNaE1oWVZGQVlqSVFZSE16SVdGUlFHS3dFR0hRRTJOell6TWhZVkZBWWpEZ0dpRVJvRkVRRUJDQWdDRkJBUEZ3RklGQndjRlA3UEFnYTNGQjBkRkwwRVJVUlVWQlVjSEJWVXB3d1VFQThZWUhOeWVYb1JHZ1FUSFJRVUhXRmlIUlFVSEZOVE53RURCQjBVRkJ3QkJ3QUJBQzMvK0FOMEFya0FsQUZOUzdBdFVGaEFDemdCQWdGZEVRSUlBZ0pNRzBBTE9BRUZBVjBSQWdnQ0FreFpTN0FNVUZoQUh3VUVBZ0lLQVFnQUFnaHBBQU1ERkUwR0FRRUJBR0VKQndzREFBQVZBRTRiUzdBUVVGaEFId1VFQWdJS0FRZ0FBZ2hwQUFNREZFMEdBUUVCQUdFSkJ3c0RBQUFhQUU0YlM3QVZVRmhBSXdVRUFnSUtBUWdBQWdocEFBTURGRTBBQmdZVVRRQUJBUUJoQ1FjTEF3QUFHZ0JPRzB1d0cxQllRQ2NGQkFJQ0NnRUlCd0lJYVFBREF4Uk5BQVlHRkUwQUJ3Y1ZUUUFCQVFCaENRc0NBQUFhQUU0YlM3QXRVRmhBSndVRUFnSUtBUWdIQWdocEFBTURGRTBBQmdZSFlRQUhCeFZOQUFFQkFHRUpDd0lBQUJvQVRodEFMZ0FGQVFJQkJRS0FCQUVDQ2dFSUJ3SUlhUUFEQXhSTkFBWUdCMkVBQndjVlRRQUJBUUJoQ1FzQ0FBQWFBRTVaV1ZsWldVQWRBUUNQam9tSGhJTnpjVkpRUkVOQ1FUUXpMQ29kR3dDVUFaUU1CeFlyRnlJbU5UUTNORFkvQVRZM05qOEJOajhCSmljbUl6VW5KalUwTmpjeUZ4WWZBUlVYRmhjZUFSY2VBUmN6TnpRdkFUUTNOak15RnhZVkZBWUhGQmNXRlFZVk56WXpQZ0UxTnpZM05qOEJOamMyTXpJWEZoVVVCd1lIQmdjR0J4WVhNeGNlQWhjV0Z4WWZBUll6RmhVVUJ3WWpJaWNtSnlZdkFTNEJOU1l2QVNZbklnWWpBeFFHSXlJbUp6YzBOeU1QQVFZSEJuQVdIUTREQVJJYkFoSVdQUWNHQml4YUhnTVVEaHdWRkE0aEhTd0RHaHNLRGdvQkJRUkZBUUlCSFFzTkJnY2tBd0VCQWdFUUZSWUNCQlF5S1NBZ0Z3a01EUjhNQ3hjRklUWVRFam92R2dZQktBWUVCQW9mR3hVU0VBZ0NGd2NRSEJ3bEVoVW9JaFlIQlJVWUZna0lDQk1LQVIwVUZCd0JBUUZGQVNvdUpEMElIUklURVFFREFob3dCaU1oV1FrS0NTeDZMQUVZRUJRU0hBRU9KeWs3QVFRZ0h3a1VDUUlCQVhjakl4WTlFUWNDQ3lRR0N3VWVFQ0lpR2xRQkF3SURBUTg4TENFZEdRa2JHQVlRR3d3TVBTMFNFejQxSHdzekNRUUdEQ1lYRWhVVENoSVlEQXdaTVJRU0pTd2RDZ01ER1NFWEJBWUQvdm9VSFIwVXBERXdBajQrUkhVQUFBQUJBRkQvN0FJL0F0TUFnQURBUUJCV1FBSUZCSGNCQXdVaklRSUNBUU5NUzdBS1VGaEFLUUFGQkFNRUJRT0FBQU1CQkFNQmZnQUJBZ0lCY0FBR0FBUUZCZ1JwQUFJQ0FHQUhBUUFBRlFCT0cwdXdLVkJZUUNvQUJRUURCQVVEZ0FBREFRUURBWDRBQVFJRUFRSitBQVlBQkFVR0JHa0FBZ0lBWUFjQkFBQVZBRTRiUUM4QUJRUURCQVVEZ0FBREFRUURBWDRBQVFJRUFRSitBQVlBQkFVR0JHa0FBZ0FBQWxrQUFnSUFZQWNCQUFJQVVGbFpRQlVCQUc5dFpXTk5Tek14R1JjSUJnQ0FBWDRJQnhZckZ5SW5KalUrQVRNeUZoVVVGeFFXRlJjZUFSY1VNeDRCTXpJM05qY3lOelUyTnpZMUpqUW1OUzRDSnlZdkFTWW5KaU11QVRVME5qYzJOelkzTmpVMk5TWW5OUzhCSWpVbUx3RW1JeUlIQmlNR0J5SVZCZ2NVSGdJWEZoOEJGaFVVQndZaklpY21OVFEzTmpjMk16SWVBaFVVQndZSEZoY1dGUlFIQmdjRzhtUXJFd0ViRlJNZUJ3TUpBd1VFQVFrSEUwUTNNQm9CRWd3RUFRRUJBZ29CQVFjS0JnOGVFazBVSEJNUVJUWWNEUUlJQWdJSEJ3RUxEQlVOR2lFVUNBTlFIQUVFQXdFQkFRRUNDUUlYQnc4Y0RBdEFEQll3VTJvalNFSWhDeHM3SWg0eVYwZFNMUlJlS2k0VUhSNFpFUk1DQkFFUUFnWUNBUVlDQlFnVUVnRU9Gd1lUQVFrQ0FRMGRCQUVRRGdjUkJRWUJIQlFRR3dRUUxod2RBZ1FUR2c0RkFRZ0RBUU1DQkFJREFnNGtBUWNJQWdVR0FnRUhDUUlWRlF3TUdRY3JTQmdlTFJvdUNTQkhKUjhmU0RBTktrUlVhRGtvQVFNQUFBRUFZLy80QW9JQ3hBQlZBT1ZMc0JCUVdFQU5TVVk3T1I0T0RBTUlBQUVCVEJ0THNDMVFXRUFOU1VZN09SNE9EQU1JQXdFQlRCdEFEVWxHT3prZURnd0RDQU1DQVV4WldVdXdERkJZUUE0Q0FRRUJGRTBEQkFJQUFCVUFUaHRMc0JCUVdFQU9BZ0VCQVJSTkF3UUNBQUFhQUU0YlM3QWtVRmhBRWdJQkFRRVVUUUFEQXhWTkJBRUFBQm9BVGh0THNDbFFXRUFTQUFNREFXRUNBUUVCRkUwRUFRQUFHZ0JPRzB1d0xWQllRQk1BQXdBQkExa0NBUUVCQUdFRUFRQUFHZ0JPRzBBV0FBTURBbUVBQWdJVVRRQUJBUUJoQkFFQUFCb0FUbGxaV1ZsWlFBOEJBRUErTGl3U0VBQlZBVlVGQnhZckZ5SW1QUUUyTlRRbkpqVTBKelEzTkRZek1oWVZCZ2NVQmhVVUZ4VVdGVFF6TmpjK0FUYzJOelkzTmpjMk16SVdGUllWQmdjVURnRVZGeFlWRkFjR0l5SW1KeVkxTkRjMk5TY0dCd1lIQmc4QkJnY0dCd2FVRWg4TUFnTUJCeDBVRkIwQkJBSURBZ0VIR3d3Q0FTUVhlMmNGQnc4VkZCd0RBUVFDQWdFQ0J3MGJEUjRGQlFJR0FRY05DMDFGSmhFV0lTNFhEUWdiRkFKdWJpNHRNMmtQRGwwV0d4MGNGUkVSQmdkTFBGd2hQajRCRFNJT0JBRXdJOEZyQmdNUUhCV2RtVXhMRWlJaEVSRUVEUTBPRmhBVEl5TVhHRmFiZ2djU0RISm9NUlVkUEZJWEZBQUFBQUFDQUdQLytBS0NBNk1BVlFCd0FjRkxzQkJRV0VBU1ptQUNCZ1ZKUmpzNUhnNE1Bd2dBQVFKTUcwdXdMVkJZUUJKbVlBSUdCVWxHT3prZURnd0RDQU1CQWt3YlFCSm1ZQUlHQlVsR096a2VEZ3dEQ0FNQ0FreFpXVXV3REZCWVFCNEhBUVVHQmdWd0FBWUpBUVFCQmdScUFnRUJBUlJOQXdnQ0FBQVZBRTRiUzdBUVVGaEFIZ2NCQlFZR0JYQUFCZ2tCQkFFR0JHb0NBUUVCRkUwRENBSUFBQm9BVGh0THNCSlFXRUFpQndFRkJnWUZjQUFHQ1FFRUFRWUVhZ0lCQVFFVVRRQURBeFZOQ0FFQUFCb0FUaHRMc0J0UVdFQWhCd0VGQmdXRkFBWUpBUVFCQmdScUFnRUJBUlJOQUFNREZVMElBUUFBR2dCT0cwdXdKRkJZUUNVQUJ3VUhoUUFGQmdXRkFBWUpBUVFCQmdScUFnRUJBUlJOQUFNREZVMElBUUFBR2dCT0cwdXdLVkJZUUNVQUJ3VUhoUUFGQmdXRkFBWUpBUVFCQmdScUFBTURBV0VDQVFFQkZFMElBUUFBR2dCT0cwdXdMVkJZUUNZQUJ3VUhoUUFGQmdXRkFBWUpBUVFCQmdScUFBTUFBUU5aQWdFQkFRQmhDQUVBQUJvQVRodEFLUUFIQlFlRkFBVUdCWVVBQmdrQkJBRUdCR29BQXdNQ1lRQUNBaFJOQUFFQkFHRUlBUUFBR2dCT1dWbFpXVmxaV1VBYlYxWUJBR3RwWldOZlhWWndWM0JBUGk0c0VoQUFWUUZWQ2djV0t4Y2lKajBCTmpVMEp5WTFOQ2MwTnpRMk16SVdGUVlIRkFZVkZCY1ZGaFUwTXpZM1BnRTNOamMyTnpZM05qTXlGaFVXRlFZSEZBNEJGUmNXRlJRSEJpTWlKaWNtTlRRM05qVW5CZ2NHQndZUEFRWUhCZ2NHRXlJbkpqVTBOell6TWhjVUZ4WXpNamMwTnpZek1oWVZGQWNHbEJJZkRBSURBUWNkRkJRZEFRUUNBd0lCQnhzTUFnRWtGM3RuQlFjUEZSUWNBd0VFQWdJQkFnY05HdzBlQlFVQ0JnRUhEUXROUlNZUkZpRXVGdzI5WHlFSkZnME5LUWdDQWlVeUJCMExDZzBpTENZSUd4UUNibTR1TFROcER3NWRGaHNkSEJVUkVRWUhTenhjSVQ0K0FRMGlEZ1FCTUNQQmF3WURFQndWblpsTVN4SWlJUkVSQkEwTkRoWVFFeU1qRnhoV200SUhFZ3h5YURFVkhUeFNGeFFDOWtVVkdTQVJDQ29QQmd3aElRMEZHQnM5SlNBQUFRQm0vL1VDYUFMQ0FEOEFtRXV3RzFCWVFBazFJaElPQkFBQ0FVd2JRQWsxSWhJT0JBRUNBVXhaUzdBYlVGaEFEZ01CQWdJVVRRRUVBZ0FBR2dCT0cwdXdIbEJZUUJJREFRSUNGRTBBQVFFVlRRUUJBQUFhQUU0YlM3QXhVRmhBRmdBREF4Uk5BQUlDRkUwQUFRRVZUUVFCQUFBYUFFNGJRQllBQXdJRGhRQUNBaFJOQUFFQkZVMEVBUUFBR2dCT1dWbFpRQThCQUN3cUh4MFlGZ0EvQVQ4RkJ4WXJCU0luSmk4QkppOEJMZ0luSmljakJ3WVBBUlVVQmlNaUpqVVJORFl6TWhZZEFUWTNOamMyUHdFMk16SVhGaFVVQndZSEJnY2VBUmNXRnhZVkZBY0dBamNjRHpNeENoOVpGQU1HQkFFUkRBRUNDQklDSFJRVUhSMFVGQjFCU2lVWkhpQUtFeG9ORFJnSVBGUkJOQ1p5SFVnNUJ4a01DeGxYUWcwalJ4RURCQU1CRFFVRUNSNEQ4Qk1kSFJNQ1d4UWRIUlROUXpFWUZSb2pDeDBJRUJvTkRFVThNaThaWGlKWlpBd01IQThIQUFFQUZQLzJBcGdDdkFCS0FMOUFEQXNCQVFVcEZnVURCQUVDVEV1d0NsQllRQnNDQVFFQkJXRUlCd1lEQlFVVVRRQUVCQUJpQXdrQ0FBQVZBRTRiUzdBVFVGaEFHd0lCQVFFRllRZ0hCZ01GQlJSTkFBUUVBR0lEQ1FJQUFCb0FUaHRMc0I1UVdFQWZBZ0VCQVFWaENBY0dBd1VGRkUwQUJBUURZZ0FEQXhWTkNRRUFBQm9BVGh0QUl3QUlDQlJOQWdFQkFRVmhCd1lDQlFVVVRRQUVCQU5pQUFNREZVMEpBUUFBR2dCT1dWbFpRQmtCQUQwN09qazROalF6SGgwWkZ4RVFEZ3dBU2dGS0NnY1dLd1VpSmpVbUp5WTFORGMyTlFjbklnY0dJeGNHQndZSEFpTWlKalUwTmpNMk56NEJOelkzTmpjMk56WTNOamMwSmpVME56WXpGell6TWhjM05qTXlGaGNXRlJRSEJoVVhGaFVVQmdKZ0ZCd0JBZ0lGQmphQ0hSUU1EUVFCQkFnRUthVXBIQndwRVF3ZkN3RVhBZ2NCQXdVREJnSUJBd2NLSmc0K1F5Y01OQndqSFRNSEFnTUpBUVFkQ2h3VklCOFhORENSZEhRRUFRTUJYQnNhTFZMK3Z4MFVGQndEQmhvYUFVc05KZ3NiUVRFZUNpUVNKQk1qSWlNQkJRRUJCQmtiRHc1VFNNaFVMendpRlJ3QUFBRUFaUC92QXhJQ3dBQllBSkczTHhVQ0F3QUNBVXhMc0FwUVdFQVZBQUFDQVFJQUFZQURBUUlDRkUwRUFRRUJGUUZPRzB1d0RGQllRQmtBQUFJQkFnQUJnQU1CQWdJVVRRQUJBUlZOQUFRRUhBUk9HMHV3RGxCWVFCVUFBQUlCQWdBQmdBTUJBZ0lVVFFRQkFRRVZBVTRiUUJrQUFBSUJBZ0FCZ0FNQkFnSVVUUUFCQVJWTkFBUUVIQVJPV1ZsWlFBeE5Tenc2S1NjZUhDa0ZCeGNyQVNZbkJnY0dCd1lIQmlNaUp5WXZBU1l2QWlZbkZRWUhCZ2NPQVNNaUppYzJOelkzTmpjMk16SVhGaDhCRmhjMlB3RTJOelkvQVFjM05qTXlGeFlmQVJZZkFoWVhGaFVVQndZaklpWW5OQ2NtSnlZdkFTWTFBbjhTREFrYkx4VUpEZ3dqR1JFZkV3Y3FFd1VSRkFjR0F4SUJBUndVRkJ3QkFoRUZBd0lVQ1NVTkRDQVFJRVU2QmdjRkhnOGFDd1lCQWdjL0ZnNGdEUUVhRlEwQ0R4VUNDQTRiSWhnSEFRa0dEQU1CQVFFN2hUUWVSM1pQTFNza0dEeEJGSHdsRENRc0RBaHhKWmVaRkIwZEZKdVpOalptWkNRR0Z5UTVnYW9URWc5WElrRXpJQW9NWVF3ZE93RmdvV29MZDBBSENBc09Ga2NsQlFRcUtWRW1Cd0VDQUFBQkFHai8rQUtJQXNFQUxRRExRQXNZQVFJQkNnWUNCUUlDVEV1d0RGQllRQllBQWdBRkFBSUZad01CQVFFVVRRUUdBZ0FBRlFCT0cwdXdFbEJZUUJZQUFnQUZBQUlGWndNQkFRRVVUUVFHQWdBQUdnQk9HMHV3RTFCWVFCb0FBZ0FGQUFJRlp3QURBeFJOQUFFQkZFMEVCZ0lBQUJvQVRodExzREZRV0VBZUFBSUFCUVFDQldjQUF3TVVUUUFCQVJSTkFBUUVGVTBHQVFBQUdnQk9HMEFlQUFJQUJRUUNCV2NBQVFFVVRRQUVCQU5oQUFNREZFMEdBUUFBR2dCT1dWbFpXVUFUQVFBcUtTVWpIQnNXRlJBT0FDMEJMUWNIRmlzWExnRTlBVFkxSmpVME56WTNQZ0V6SGdFZEFRWUhCU1luTlRRMk14WVhGaFVRQndZaklpWTFOamNsRUFjR2x4UWJEQVVGQVFRQkhSUVZHZ01CQVZBQkNSOFVGUXdZR2cwVEZod0hBLzZ2R3c0SUFSd1RBNmlwQ1FzUUNXNXVGUm9CSEJNRFlHQUtibTBDRXhvQ0RoMzcvbzRXRFI0Vmo0OEsvcjhaRFFBQUFBTUFQLy81QXNFQ3VnQUNBRnNBY1FBdlFDd0FBUUVFWVFBRUJCUk5CUUlDQUFBRFlRWUJBd01hQTA1ZVhBTURhR1pjY1Y1eEExc0RXU3dxRkFjSEZ5c0JKeklETnpJM05qYzJOelUzTmo4Qk5qVTBOelkxSmljbUp6VW5KaWNqTlNjbUx3RW1KeU1uSmljbUx3RVBBUVlQQVFZUEFTSUhCZzhCQmc4Q0JnY0dGUThCRkI4QkZoOEJGaDhCTXhVWEZoOEJGaDhCRmhjekZqSWZBU2NpSnlZbkpqVTBOell6TWhZWEZoVVVEZ0VIQmdJTkFRRjZDZ29uSlFvU0ZRZ1NDZ3NLQVFJQkJBVUtDQWtNQVFZUEVBa2dDUUVCRkNjT0FTMFZDaElTQWd3TENRRUJEUlFCQXdJS0RRY0ZDUUVDQXdVS0NBTUlDZ3NCQXd3T0JnOFFCaEFhQXdjUUJCVWRSejA1SlVOWlRZUkpxamd0QVZWT1NRSWhBZjQ1QVEwU0NnOFpBUW9lRlI4b0NBSUJEeG9qRHhvWkFnOFNFUUVIRVEwR0ZRSUJDQWtDQVFJQ0FnTUhBUVlIQmdJSUdRRURCQThiRUJFaURBRXhHUmdlSmhJSEVSQVJBUVFPREFVTEJ3TUhCQUVCWWdFakl6ZG9ncGxuV1VaZVUxNENZcWt6TEFBQUFBQUJBR1gvOHdLUkFyMEFMUUJzUUFva0l4UUpCUVVCQWdGTVM3QU1VRmhBRWdBQ0FnQmZCQUVBQUJSTkF3RUJBUlVCVGh0THNDMVFXRUFTQUFJQ0FGOEVBUUFBRkUwREFRRUJHZ0ZPRzBBV0FBSUNBRjhFQVFBQUZFMEFBUUVhVFFBREF4d0RUbGxaUUE4QkFDSWZHQlVOQ2dBdEFTb0ZCeFlyQVRJWEZoMEJCZ2NVRndZckFTSW5KalVDTlRZM05RWWpJUlVHSFFFVUJ3WXJBU0luTlRZOUFSSTNOanNCTWdKV01BZ0RDUVFFRUJ3SkhnNEVBZ1FLSkJEKzR3c1RFQlFNSFE0TEN3WVBNdTAvQXIwNUR4VTdSV2EvblNZb0hRVUJCRDVTYWhvQ0d0d3NmS0VRRmlnTklXcURBVU1pSUFBQ0FHSC8rZ0pGQXI0QUxRQktBREpBTDBjQkJBQUJUQUFBQUFRQ0FBUnBBQUVCQTJFQUF3TVVUUVVCQWdJVkFrNHZMa1pDT1RjdVNpOUtMU3RnQmdjWEt4TTJPd0V5TnpJM01qNENNelkvQVRZL0FUSTNORFkxTkM4QkppYzFKaWNtTHdFbUp5NEJKeVl2QVNZakJ3TWlKalVSTkRjMk56WXpNaGNXSFFFVUJ3WUhCaU1pSnlJbkZSUUd3Z1lxR2ljbUVBMENHeGtCQVFzS0Fnb0ZCd0VHQVFFQkFnWUZCd0lXQkFzVEF3Y0ZLeUVURlNva01SUWNFdzRZS0NqcFVpQXJLVHRMVGhVVUpnd2RBVkFCQWdNRkNBRUZCd0VJQ0EwWEJBVVJGd2dERGcwQkN3a0hFd01KQ0FFRUFRNEVBZ01CL1o4ZEZBSldHQThSQWdPQU9FQUtTRGd0RHhJQkFzWVVIUUFBQVFCUEFBa0NmQUt2QUdNQWJVQVBUazBDQkFVdUFRRUVXUUVBQVFOTVM3QWdVRmhBSkFBRUJRRUZCQUdBQUFFQUJRRUFmZ0FGQlFOaEFBTURGRTBBQUFBQ1lRQUNBaFVDVGh0QUlRQUVCUUVGQkFHQUFBRUFCUUVBZmdBQUFBSUFBbVVBQlFVRFlRQURBeFFGVGxsQUNTa25MQ2N1TEFZSEhDczNGaGNlQVJRWEZqTWVBUmNXTXpZM05qY3pOelkxTkNjbU5UUTNOak15RmhVVUJ3WUhCaU1pSnlZbkpqVTBOelkzUGdJek1oY2VBUlVVQndZaklpY3VBU2NtSnlZbkppY0hCaU1HQnpjR0J4VUdCeUlWQmhVVUZ4WVVGeU1YRlJZWEp4WENCUVlCQWc0REFnY1BGeU5ES1NnY0dRSUhGZ29DQ0JBWkl4a1FKMjgwTkhSRlN4RUtBd1F3R1VwVktubFFHaHdFRHh3ZURnTUZFQWtRSGlFWkdoa0VCU01OQmlJYkR3Y0JHQU1CQVFFQkJnWUJydzhHQVFJQ0RBTUVDQVlLQVFRRUNnUU5FaE1lQndjT0RCVkpJaUVnUlE0R0ppOWVORWNwS21GVEpUUVlUeHBERUF3TEd4a0tFaHdNRFJRSUJRRUJBUWtGQXcwZkFSUVRBVDVnTkMwRUJnSUJCQnNRQVFJQUFBQUJBQ2IvK2dKcUFyUUFGZ0FrUUNFREFRRUJBbDhBQWdJVVRRUUJBQUFWQUU0QkFCTVJEUW9HQkFBV0FSWUZCeFlyQlNJbU5SRWpJaVkxTkRZeklUSVdGUlFHS3dFUkZBWUJTQlFkd1JNZEhSTUI0eFFkSFJUQkhBWWNGQUlwSEJRVUhSMFVGQno5MXhRY0FBQUJBRC8vOUFLR0FyY0FYZ0JwdGt0RkFnSURBVXhMc0FwUVdFQVRCQUVEQXhSTkFBSUNBR0VCQlFJQUFCb0FUaHRMc0F4UVdFQVRCQUVEQXhSTkFBSUNBR0VCQlFJQUFCVUFUaHRBRXdRQkF3TVVUUUFDQWdCaEFRVUNBQUFhQUU1WldVQVJBUUJTVUNvb0N3Z0VBZ0JlQVY0R0J4WXJGeUltSXlJbU5UUTJOeGN5UHdJK0FUTTJQd0UyTno0Qk5TY21KeVluSmljdUFTYzFKaWMrQVRNeUhnRVhGRE1lQVI4QkZoVVdGeFlYRlJjV0Z6SVdId0VXRnhZWE5UWTFOajhCTkRjMk5EWXpNaFlYRkE4QkJnY0dCd1lIQnMwWklSd1ZIQndWV0RrSEJ3ME1HUUVRRHhJWER3TUNDaElGWms1S0hnMEJBUmdDQVJzVUZCMERBd0VCQWdFTUFoTWlEQThFSEQwQkFnSUNFellUQ2dJckh3SUNBaDBVRkJzQkVRRU5GRFpvTVQwMURBTWRGQlFjQVFNQkFnTUNDUWdLRHhVVUJBTUJCZ2tFTTFoYldDQUJBUUV3S0JVY0hDVUhBUVFFQVI0Q0FqbzBGQlFCQlNJMEFnRUJFQjBKQ0FFQ0FtZThEZ3dMRmlvY0hCVk9UQVpLU01CYUtoQU1BQU1BTXYvV0Fzc0M0QUFNQUNRQVNRRVF0U01CQVFBQlRFdXdEbEJZUUNJSUFRWURBUUFCQmdCcEN3SUtBd0VKQVFVRUFRVnBBQWNIQkdFTUFRUUVIQVJPRzB1d0VGQllRQ2NBQndZRUIxa0lBUVlEQVFBQkJnQnBDd0lLQXdFSkFRVUVBUVZwQUFjSEJHRU1BUVFIQkZFYlM3QVZVRmhBSWdnQkJnTUJBQUVHQUdrTEFnb0RBUWtCQlFRQkJXa0FCd2NFWVF3QkJBUWNCRTRiUzdBb1VGaEFKd0FIQmdRSFdRZ0JCZ01CQUFFR0FHa0xBZ29EQVFrQkJRUUJCV2tBQndjRVlRd0JCQWNFVVJ0QUxBQUhDQVFIV1FBSUJnQUlXUUFHQXdFQUFRWUFhUXNDQ2dNQkNRRUZCQUVGYVFBSEJ3UmhEQUVFQndSUldWbFpXVUFpSmlVT0RRQUFSa1E3T1RZME1UQXJLU1ZKSmtraUlRMGtEaVFBREFBTUVRMEhGeXNsRVFZSEJnY0dGUlFYRmhjV0Z6YzJOelkzTmpVbkppOEJKaWNtSnpRaUp5NEJJeEVXQnlJbVBRRWpJaWNtTlRRMk56VTBOak15RmgwQk16SVhGaDBCRkFjR0J3WWpKeFVVQmdFOUdCRktKaEVVQ2c0dzJ5Z2JIUW9QSmdFQkRBNERCQTRoQlFJaUtTY1FRUlFjQm1WSFdZeC9IQlFVSFFlMlR5RW1FaUJBWXpJZHJnRnFBUVVTVkNvdU9qUVhDQmdDQVFZTEJCSXdUVGtsRnhrQ0JSQVBBZ0lMQlA2WEE5Y2RGRVVvT0tSNHJBVTJGQjBkRkRONFJFd2RVMG9rR2pFRFJ4UWRBQUFBQVFBUUFBSUNmd0syQUV3QVowQUtTVUUySlJBRkFBRUJURXV3RzFCWVFBNENBUUVCRkUwREJBSUFBQlVBVGh0THNDMVFXRUFTQUFJQ0ZFMEFBUUVVVFFNRUFnQUFGUUJPRzBBVkFBRUNBQUlCQUlBQUFnSVVUUU1FQWdBQUZRQk9XVmxBRHdFQVJrUW9KaUlnQUV3QlRBVUhGaXMzSWljbU5UUS9BakkxTmo4Qk5UWTNKaWMxSnlZbk5TY2pKaWNtTlRRM05qTXlGeFlYRWpNeUZoVVVCd1lIQmhVR0J3WUhCZ2NXSHdJVk14WVhGaDBCQmdjR0l5SW5KaWNHQndaMUd4QUdHQ0FJQVNJb0hDUWhJUTRKVERRSUFTRW1HQWNQSEF3TWxIaWFQUlFkRHhzWEJBb2VHVEVKQ2hvcURBY0JORUVPQVEwUEVSWVBWV3BqZlF3Q0dBc01IQkFWQndFWUxpSUJNRGN3RVFFTFlDY0JCaG9URFI0TkN4Z0dVTEVCRUIwVUZBNGNIZ1FCRFN3b1ZCRVFKemtSQ0FGRk9nMFRDd3NQRFExS21aeE9Cd0FBQVFCdi95d0M0Z0s5QURFQVpFdXdLRkJZUUFrbEhoY0pCQUlCQVV3YlFBa2xIaGNKQkFJREFVeFpTN0FvVUZoQUZnTUJBUUVVVFFBQ0FnQmdBQUFBRlUwQUJBUVlCRTRiUUJvQUFRRVVUUUFEQXhSTkFBSUNBR0FBQUFBVlRRQUVCQmdFVGxsQUNTOHROU1kzTUFVSEdpc0ZKaUVpSnlZRE5DYzFOanNCTWhjV0ZSUUhFeUFYTkFNME56WTdBVElYQmhVVUZ4WWRBUllYSGdFZEFSUUdJeUltTlFLQXZmNzFNZzhHQVFFT0hRd1VFQXdEQVFFM0pBd0VEaDRKSEJBQkJ3TUpEUjRkSFJRVUhRd0JJQ0lCaGFvaURTZ1hDa2dtT1A1aEFwSUJoZ1ljS0NZdEwzZUlVanhHQVFJRkV4VFdGQjBkRkFBQUFBQUJBR2ovOUFLT0FzVUFUd0RCUUEwNU5CNERCQU5KQmdJQkJBSk1TN0FLVUZoQUZnQUVBZ0VCQUFRQmFRVUJBd01VVFFZQkFBQWFBRTRiUzdBTVVGaEFGZ0FFQWdFQkFBUUJhUVVCQXdNVVRRWUJBQUFWQUU0YlM3QU9VRmhBRmdBRUFnRUJBQVFCYVFVQkF3TVVUUVlCQUFBYUFFNGJTN0FtVUZoQUdnQUVBZ0VCQUFRQmFRQUZCUlJOQUFNREZFMEdBUUFBR2dCT0cwQWFBQVFDQVFFQUJBRnBBQU1ERkUwQUJRVUFZUVlCQUFBYUFFNVpXVmxaUUJNQkFEODlMaXdXRkFzS0NRY0FUd0ZQQndjV0t3VWlKalVuTkRjR0l5SW5KaWNtTlRRM05qVTBOak15RmgwQkZBWVZGQmNWSGdFZkFSWVhNaFVXSHdFekZqTXlQd0V5TnpZM05qMEJORDhCTkRjMk16SWVBUlVVQndZZEFSUUhCaFVYRkE0QkFrc1RIUUVGUjJFY0hFdy9UQVFCSFJRVUhBUUJCUTRKQkE0T0FoOFRBUVlSSENVaUZ3WUhGelFDQXdFSERSc05IZ2tEQWdnRkFRSWJEQndWZERGU0ZBSUZLelJoRjBFdUx4UWNIQlF4UUNJUkVoRUVFeEVJQXdrSEFRb0RBUUVEQWdJRkNUOC9IeWNUUGcwT0ZoQXFGeE1VR0JrY1hJUkJSVThUS0J3QUFRQmovL3dEZndLNUFEd0FLa0FuQlFNQ0FRRVVUUVFCQWdJQVlBWUJBQUFWQUU0RUFERXZKeVFoSHh3YkZCSUFQQVE3QndjV0t3VXZBU0VpSnk0Qk5UUTNOalUwSnlZMVBnRXpNaFlYRkI4QkZBY3pFVFEyTXpJV0ZSRWZBVGNuTnpVbk5qVTBOak15RmhjR0hRRVhGQWNHQndZQzN6K2kvcWNQRENBSEFnTUNBd0VjRkJRY0FRSURCdmdkRkJRZGhqczhBUUVCQXgwVUZCd0JBd0VTRGhRMUJBRUJDQWM0SFJjWEpGaGRXMkJoRkJ3Y0ZHQmZ1bVJJQWlnVUhSMFUvZGdCQVFFY01XaEIyMUlVSFIwVTVGR1dObUlSRFFJREFBQUFBQUVBWS84c0E5SUN1UUJHQUN0QUtEa0JBZ0VCVEFVREFnRUJGRTBFQVFJQ0FHQUFBQUFWVFFBR0JoZ0dUaThvTXlNWExtQUhCeDByQlFZakx3RWhJaWN1QVRVME56WTFOQ2NtTlQ0Qk16SVdGeFFmQVJRSE14RTBOak15RmhVUkh3RTNKemMxSnpZMU5EWXpNaFlYQmgwQkZ4VXlGeDRCSFFFVUJpTWlKalVEY0djcVA2TCtwdzhNSUFjQ0F3SURBUndVRkJ3QkFnTUcrQjBVRkIyR096d0JBUUVESFJRVUhBRURBUW9RSGgwZEZCUWRBZ0lCQVFnSE9CMFhGeVJZWFZ0Z1lSUWNIQlJnWDdwa1NBSW9GQjBkRlAzWUFRRUJIREZvUWR0U0ZCMGRGT1JSbGxRQkF3VVRGTllVSFIwVUFBSUFGZi82QXBVQ3ZnQXRBRThBT1VBMk1nRUJBd0ZNQUFNQUFRQURBV2NBQlFVQ1h3WUJBZ0lVVFFBQUFBUmhBQVFFRlFST0x5NUtTRUpBTnpNdVR5OU9MU2doQndjWEt3RVJGekkvQVRZM1BnRTNOajhCTmpjMk56VTJQd0UyTlRRbU5TWWpKeVl2QVNZbklpNENJeVlqSmlzQklnTXlGaDBCTmpNMk16SVhGaGNXSFFFVUJ3WWpJaWNtSnlZMUVTTWlKalUwTmpNQkVpUXFGUk1oS3dVSEF4TUxCQllDQndVR0FnRUJBUVlCQndVS0Fnb0xBUUVaR3dJTkVDWW5HaW8zRkIwTUpoUVZUa3M3S1NzZ1V1a29LQmdPRTJzVUhSMFVBV2orOVFFREFnUU9BUVFCQ0FrREV3Y0pDd0VORGdNSUZ4RUZCQmNOQ0FnQkJ3VUJDQVVEQWdGWEhSVEdBZ0VTRHkwNFNBcEFPSUFEQWhFUEdBSWxIUlFVSFFBQUFBTUFZZi90QXdrQ3l3QXRBRW9BWVFDYXRUSUJBUU1CVEV1d0UxQllRQndBQXdBQkFBTUJad1lIQWdJQ0ZFMEFBQUFFWVFnRkFnUUVGUVJPRzB1d0cxQllRQ1FBQXdBQkFBTUJad0FHQmhSTkJ3RUNBaFJOQUFBQUJHRUFCQVFWVFFnQkJRVWNCVTRiUUNRQUF3QUJBQU1CWndjQkFnSVVUUUFBQUFSaEFBUUVGVTBBQmdZRllRZ0JCUVVjQlU1WldVQVlURXN2TGxkV1MyRk1ZVUpBTnpNdVNpOUtMU2doQ1FjWEt4TVJGekkvQVRZM1BnRTNOajhCTmpjMk56VTJQd0UyTlRRbU5TWWpKeVl2QVNZbklpNENJeVlqSmlzQklnTXlGaDBCTmpNMk16SVhGaGNXSFFFVUJ3WWpJaWNtSnlZMUVUUTJBU0ltSnpVbk5DY21OVFEzTWhjV0Z4WWRBUmNWRGdIQ0pDb1ZFeUVyQlFjREV3c0VGZ0lIQlFZQ0FRRUJCZ0VIQlFvQ0Nnc0JBUmtiQWcwUUppY2FLamNVSFF3bUZCVk9TenNwS3lCUzZTZ29HQTRUSEFKYkZCd0JBUWNMTHd3TkVnVVZBUUVjQVdqKzlRRURBZ1FPQVFRQkNBa0RFd2NKQ3dFTkRnTUlGeEVGQkJjTkNBZ0JCd1VCQ0FVREFnRlhIUlRHQWdFU0R5MDRTQXBBT0lBREFoRVBHQUpXRkIzOUx4d1UxOUZNUDBNSExRUUdDaE5vYWVXT1J4UWNBQUFDQUdILytnSkZBcjRBTFFCS0FESkFMeklCQVFNQlRBQURBQUVBQXdGbkJRRUNBaFJOQUFBQUJHRUFCQVFWQkU0dkxrSkFOek11U2k5S0xTZ2hCZ2NYS3hNUkZ6SS9BVFkzUGdFM05qOEJOamMyTnpVMlB3RTJOVFFtTlNZakp5WXZBU1luSWk0Q0l5WWpKaXNCSWdNeUZoMEJOak0yTXpJWEZoY1dIUUVVQndZaklpY21KeVkxRVRRMndpUXFGUk1oS3dVSEF4TUxCQllDQndVR0FnRUJBUVlCQndVS0Fnb0xBUUVaR3dJTkVDWW5HaW8zRkIwTUpoUVZUa3M3S1NzZ1V1a29LQmdPRXh3QmFQNzFBUU1DQkE0QkJBRUlDUU1UQndrTEFRME9Bd2dYRVFVRUZ3MElDQUVIQlFFSUJRTUNBVmNkRk1ZQ0FSSVBMVGhJQ2tBNGdBTUNFUThZQWxZVUhRQUFBUUJhLy9ZQ3N3S3hBSFlBaUxWa0FRWUZBVXhMc0FwUVdFQXVBQVlGQkFVR0JJQUFBUU1DQXdFQ2dBQUVBQU1CQkFObkFBVUZCMkVBQndjVVRRQUNBZ0JoQ0FFQUFCVUFUaHRBTGdBR0JRUUZCZ1NBQUFFREFnTUJBb0FBQkFBREFRUURad0FGQlFkaEFBY0hGRTBBQWdJQVlRZ0JBQUFhQUU1WlFCY0JBR3hwWVY5UFRUWTBNQzRjR1FrSEFIWUJkZ2tIRmlzRklpY21OVFEzTmpNeUZoY1dGeDRCSHdFV0h3RVdId0V6RmpNeU56WXpOajhCTmpjK0FUYzFQZ0UvQVRVMk55TWlKalUwTmpzQk5UUW5OU1l2QVNZdkFTWW5OU2NtSnlZakp5WXZBU1lqQmdjakJnOENCZ2NPQXdjR0J3WWpJaWNtTlRRM05qYzJNeklXRnhZWEZoVVVCd1lIQmdGNU16TzVCZzRjREI4RUFRTUJBd0lKRXhVV0dCa1FCaFVVRUE4REJDSVNCUW9PQVFzSEJCZ0tEZ3dINlJRY0hCVHVBUWNSQVFZVUJRa0lCQWtLQWdJQ0dCZ09FaElyQkFZeEd3OEhCd1lCQkFNQkN3VUhEeDhiRUFjREZ6dGNlZzFQTzBFZkxsb1hJVVlLRERSbERnd1lFQlFKQ2dFRUFRWU1DZ2dKQmdNQ0FRRUZDUUlEQ3dFSUNRRUVJeE1kQWgwZkhSUVVIUUVGQVFJeExBSVJIUVlMQmdFREJnUUNBUWtEQVFJQ0Fnb0tCUVFEQkFFQ0F3RUxCZzRqR1FzTENBZEFJeklFSGlWRVgyaU9keUVYTEFBQUFBQUNBRmYvOXdPbkFzRUFXQUNJQU5GTHNDSlFXRUFLS1FFRUExOEJBQWNDVEJ0QUNpa0JCQVZmQVFBSEFreFpTN0FNVUZoQUhRQUVBQWNBQkFkbkJRRURBeFJOQ0FFQ0FBQUNZZ1lKQWdJQ0dnSk9HMHV3RGxCWVFCMEFCQUFIQUFRSFp3VUJBd01VVFFnQkFnQUFBbUlHQ1FJQ0FoVUNUaHRMc0NKUVdFQWRBQVFBQndBRUIyY0ZBUU1ERkUwSUFRSUFBQUppQmdrQ0FnSWFBazRiUUNFQUJBQUhBQVFIWndBREF4Uk5BQVVGRkUwSUFRSUFBQUppQmdrQ0FnSWFBazVaV1ZsQUdscFpBQUNFZzM1N2NuQnViV2RtV1loYWlBQllBRllSQ2djWEt5VTNNamMyTnpZM05UYzJQd0UyTlRRM05qVW1KeVluTlNjbUp5TTFKeVl2QVNZbkl5Y21KeVl2QVE4QkJnOEJCZzhCSWdjR0R3RUdEd0lHQndZVkR3RVVId0VXSHdFV0h3RXpGUmNXSHdFV0h3RVdGek1XTWhjRklpWW5OVFEzSmpVME56WTNOak1XRlFjR0ZSY3pQZ0V6TWhZWEZoVVVEZ0VIQmlNbklpY21KeVluSXhjVkRnRUNlUW9LSnlVS0VoVUlFZ29MQ2dFQ0FRUUZDZ2dKREFFR0R4QUpJQWtCQVJRbkRnRWpGUW9TRWdJTUN3a0JBUTBVQVFNQ0NnMEhCUWtCQWdNRkNnZ0RDQW9MQVFNTURnWVBFQVlRR2dNSEVBVCtOUlFjQVFFS0N3VVNEUXd2QVFjQmR3dVpoRCtxT0MwQlZVNUpVeE5IUFRrbE5RdHpBd0VjV3dFTkVnb1BHUUVLSGhVZktBZ0NBUThhSXc4YUdRSVBFaEVCQnhFTkJoVUNBUWdKQWdFQ0FnSURCd0VHQndZQ0NCa0JBd1FQR3hBUklnd0JNUmtZSGlZU0J4RVFFUUVFRGd3RkN3Y0RCd1FCQVdRY0ZFWkVRWE55WDJnVENnWUVMUlYwUWpoOHNVWmVVMTRDWXFrekxBRWpJemRTWWpmTkZCd0FBZ0JqLy9NQ1NRSzBBQmtBVUFDUlFCQVFEd0lEQUFFaUFRVUFIZ0VDQlFOTVM3QUtVRmhBR3dZQkFBQUZBZ0FGYVFBQkFRTmhBQU1ERkUwRUJ3SUNBaHdDVGh0THNBeFFXRUFiQmdFQUFBVUNBQVZwQUFFQkEyRUFBd01VVFFRSEFnSUNHZ0pPRzBBYkJnRUFBQVVDQUFWcEFBRUJBMkVBQXdNVVRRUUhBZ0lDSEFKT1dWbEFGeHNhQVFBK1BEZzJMeXNhVUJ0UUJRTUFHUUVaQ0FjV0t3RS9BUzhCRHdJR0J5TU9BUWNHQnhVVUh3RWVBUmNXRnhZRElpY21OVFEzTmpjbUp5WTFORGMyTnpZekZ4WXlGaFVXRWhVVUJpTWlKaWMwSndZaUJpTUdEd0VHRHdFR0J3WUhJaDBCQmdjR0FhMHFDd01xTmlnSEt4OEJGUlVHQ2dJRUJnY2VFQ3N0SnZJZERBZ0NNbjU2SlE4SkpvOC9XeUlYTFJzQkNCMFVGQndCQXdjS0J3SVRHZ1loSWhBcUVDTVhBUWNGQ3dHREFRSE1BUUVEQVFZTkNSTUpFQmNOQ0FzS0N4UUhEd2NFL204V0R3d0dCNTlrSEZNaUpCc2NjUmNNQVFFZUU1ZiswcGdVSEJ3VWdIOEJBZ01LQWc0WkRpY1hMVFVCQVEwV0pBQUFBQVFBRGYvdkFpWUNJd0FDQURjQU9nQmRBRU5BUUVaRkFnQURXeXdQRFFRQkFBSk1BQU1BQUFFREFHa0FCQVFXVFFZQkFRRUNZUVVIQWdJQ0hBSk9QRHNEQTFoV1MwbEVRanRkUEYwRE53TTNJQjhJQnhZck56UW5GelkzTmpjeU5UWTNOalUyTlM0Qkp6UWpKaWNtSnlZbkppY21KeVluQmlNSEJnY0dCd1lIQmc4QkZ4UVhGQmNXRnhZZkFSWS9BUlVESmljbU5UUTNOak15RnljME56WXpNaGNXRnhZWE14Y1dGUlFHSXlJbkppY09BWEFCZkJJUkpSNEJGQXNSQWdFREJnRUREQU1DRHdJS0V3TUNIeU1DQnhnTkR4TVFGUWNEQVFFQkN3SU9HQVFJRXhLdUFadDBRQ2RiUGxGSVJRTUhDaDRORHg0R0JCc0JDUTBjRnhJUUhnd2lZc3dEQVlBQ0JoSWxBUmtiS0JZSkVnd1ZFZ0VJRWdNRURnRUlDUUVDREFJQkJ3VU5GQllwSGhRQ0dob1RHZ0lFSHhNQ0Jna0lzZ1VFL3V3RllVVk1obHc4TGhzT0RoWUhEOFNvU2hJTkZ4SWNFQ2t5TVQwQUFBSUFSZi8yQWlJQzZ3QWFBRXNCTWtBTFFBRUJDUVlGQWdBQkFreExzQXBRV0VBbkFBWUVCb1VBQ1FBQkFBa0JhUWdCQndjRVlRVUJCQVFVVFFvQkFBQUNZUU1MQWdJQ0ZRSk9HMHV3R1ZCWVFDY0FCZ1FHaFFBSkFBRUFDUUZwQ0FFSEJ3UmhCUUVFQkJSTkNnRUFBQUpoQXdzQ0FnSWFBazRiUzdBZVVGaEFNUUFHQlFhRkFBa0FBUUFKQVdrSUFRY0hCV0VBQlFVVVRRZ0JCd2NFWVFBRUJCUk5DZ0VBQUFKaEF3c0NBZ0lhQWs0YlM3QWlVRmhBTFFBR0JRYUZBQVFBQ0FrRUNHa0FDUUFCQUFrQmFRQUhCd1ZoQUFVRkZFMEtBUUFBQW1FREN3SUNBaG9DVGh0QU1RQUdCUWFGQUFRQUNBa0VDR2tBQ1FBQkFBa0JhUUFIQndWaEFBVUZGRTBBQXdNVlRRb0JBQUFDWVFzQkFnSWFBazVaV1ZsWlFCOGVHd0VBUTBFNk9UZzNNQzRzS3lvcElCOGJTeDVMRFFzQUdnRWFEQWNXS3lVeVB3RTJOeWNtSnlZbkppTWlCd1lpRlJRWE1oVVdGeFlYRmhjbkJ5SW5JalUwTmpVME56UTNOak0zTWpjMk16SVdGUlFIRkFjR0l3Y2lCeFFHQnhRSE5qTXlGeFlYRmhVVUJ3WUJHVFV2R1NRRkFoQW1Iem9ZQ1VVZUJnSUxBUVVKQkNJYkx4WUdEUytQQXdNeFJVcUVGU2dMR1JVZEZCQTRURTFMTWdNQ0JTTkhHQmVLTlNJZFBsY1BEaUF2SlU0ZkZ4QUVFd2FySmlFQkRBa0NBd05oQVFFSHp5dFhQRXRnT2h3ZENpUVZIUkVZRkFFT01nZ09BUUVCSGtZTUJCNXZRVFU5TjI0QUFBQUFBd0E4Lyt3Q1JBSXpBQTBBSVFCRkFTTkxzQ2hRV0VBU01BRUJCanNCQkFBV0FRSUVKZ0VGQWdSTUcwQVNNQUVCQnpzQkJBQVdBUUlFSmdFRkFnUk1XVXV3SFZCWVFDRUFBQUFFQWdBRVp3QUJBUVpoQndFR0JoWk5Bd2dDQWdJRllBa0JCUVVWQlU0YlM3QW1VRmhBSHdjQkJnQUJBQVlCWndBQUFBUUNBQVJuQXdnQ0FnSUZZQWtCQlFVVkJVNGJTN0FvVUZoQUpnY0JCZ0FCQUFZQlp3QUFBQVFDQUFSbkF3Z0NBZ1VGQWxrRENBSUNBZ1ZnQ1FFRkFnVlFHMHV3TFZCWVFDSUFCZ2NHaFFBQUFBUUNBQVJuQXdnQ0Fna0JCUUlGWkFBQkFRZGZBQWNIRmdGT0cwQXFBQVlIQm9VQUJ3QUJBQWNCWndBQUFBUUNBQVJuQXdnQ0FnVUZBbGtEQ0FJQ0FnVmdDUUVGQWdWUVdWbFpXVUFaSkNJUERqWXhMeTBpUlNSQ0lCMFJFQTRoRHlGV0lBb0hHQ3NUTnpZM05qVTBKeVlqSWdjR0l4TXlOekkzTmpjMk56UW5KaWNpTlNZakJpTWZBU01pSmljbU5UUW1OVDRCTXpJWE5qTXlOak15RnhZVkZBY1dGUlFIQmdjR0l5Y0dubkpCTGtvREIyRldKUmN3SkZNc1F5MGdBeEFDQ0FsUEFTMU5LVUVCSDBrVEhBRUdCQUViRkE4TUZCb2ZNbTloTUNOQlhBa05IVkdISVRFQk9nSUNDaUEwRFFnZEFRSCtnQVFQRUFNT0dRb1FGZzBCQlFLT1lCd1VDdzF2NTNrVUhBa0NBaklwT0U0dUoySVlGeVVZUFFFQ0FBQUFBQUVBUmdBQUFjb0NLUUFxQUMxQUtnVUJBQU1CVEFRQkF3TUJZUUlCQVFFV1RRVUJBQUFWQUU0QkFDQWVIUm9XRWhFUEFDb0JLZ1lIRmlzeklpWTFORGMyTnpRbU5TYzBOejRCTXpJWEZqc0JNaFlWRkFZckFTSW5KaU1YRkJjVkZoMEJCdzRCZUJRY0FnSUJCUUlDQmpNbEVoTTFVRW9VSEJ3VWFHSUlFQkVCQXdJRkFSc2NGQndiSUNFbFN5ZVNFeE1kRlFJREhSTVVIQVFCVTBWRUJ5RWhGbDRVSEFBQUFBSUFLUDgyQWwwQ0ZnQkZBRjhCQ1V1d0tGQllRQk5RTmdJSUEwNG5BZ1lJR3hvT0JnUUFBUU5NRzBBVFVEWUNDQVJPSndJR0NCc2FEZ1lFQUFFRFRGbExzQ2hRV0VBbkFBZ0lBMkVGQkFJREF4Wk5DZ2NDQmdZQllBQUJBUlZOQ2djQ0JnWUFZZ0lKQWdBQUdBQk9HMHV3S1ZCWVFDa0ZBUVFBQ0FZRUNHY0FBd01XVFFvSEFnWUdBV0FBQVFFVlRRb0hBZ1lHQUdJQ0NRSUFBQmdBVGh0THNERlFXRUFwQUFNRUE0VUZBUVFBQ0FZRUNHY0tCd0lHQmdGZ0FBRUJGVTBLQndJR0JnQmlBZ2tDQUFBWUFFNGJRQ0lBQXdRRGhRVUJCQUFJQmdRSVp3SUpBZ0FHQUZZS0J3SUdCZ0ZnQUFFQkZRRk9XVmxaUUIxSlJnRUFWRkZHWDBsZFBqMDBNakV2TENvWEZRc0hBRVVCUlFzSEZpc0ZJaTRCTlRRL0FTSXZBUWNHSWdjVUR3RUdGUTRCSXlJbUp6OEJOVFEzTmo4Qk16YzJQd0kyTnpZek1oY3lId0V5UHdFeUZoMEJCaFVVRnhZWE1oY1dGUWNVQndZRE5qc0JKaWNtTlRjMk5RWWpCeThCSXhRR0ZRWUhCZ2N6RmdJcERCOEdBZ0w5TGhjbUFRVURBUUVCQVJzVUZCc0JBUUVWRXdzRkFRRVdEUW9GQkJFTUpnb01CZ1lyVkNzU05DY0VCQU1CR2hFWUJBY08yQklUS1FFREJBRUJKVFpGRmdRQkFnUVBEaGtpUXNvUUpoUVZEMWdDQVFJQkFRTUNWeHdkRkJ3Y0ZEa09WQzRVRmhZTkJUbEpQalo1RHhjREFnRUVBUzBkQXhWVFJsRXhPeEVpS1pzTkN4Z0JKZ0U2TVU1RVRnWUhCQUVCQVF3V0RFaFNVemtDQUFBQUFBSUFFZi91QWg4Q0h3QXpBR0lBUmtCREFBVUNBd0lGQTRBSkFRWUFBZ1VHQW1jQUJ3Y0JZUUFCQVJaTkJBRURBd0JoQ0FFQUFCd0FUalUwQVFCUFRUUmlOV0V0S3lrbUpTUVNEd2tIQURNQk13b0hGaXNGSWljbU5UWTNOak15RnhZWEZoVVVJU0luSHdNVkZoOENNaDRCRnhZWE1oOEJNamN5TlRJM05qTXlGeFlWRkFjR0F6STNOak0wTXpZM016UW5OQ2MxSmljMUppOEJKaThCSmk4QklnOEJCZ2NpQnlNR0R3RUdCeFVVSXc0QkJ4WUJQNEZkVUFablVWdGdRa0FQQlA3M1RFb0NCd3dKRVJVRkl3RUVCQUVPRWdVQ0hoTVRCU0JJQndnTERoWWtXWTA4UEFRRkFoOFhBUW9DQ1FjSUNnSU5EUVVSRVNBV0NoOGRIZ01EQVFjR0RBd0dBUVFFQWxNU1lWcDRnRW8wTkRaWkRRMXlCQWNPRlF3QkV4SUVGQUlCQVFVRUFRSUNBUjBEQ1E0YklBOGtBVVVGQVFFRENnc2JBd0lCRWdnQkNnZ0NDZ1VDQndJQ0FnZ0dGZ1VHQnd3U0RBRUJDaE1IQXdBQUFBQUJBRHovOWdNbkFpc0Fhd0MrUUEweUFRUURaMVVZQlFRQkJBSk1TN0FLVUZoQUdnWUJCQWtCQVFBRUFXa0hCUUlEQXhaTkNBSUtBd0FBRlFCT0cwdXdHMUJZUUJvR0FRUUpBUUVBQkFGcEJ3VUNBd01XVFFnQ0NnTUFBQm9BVGh0THNDMVFXRUFlQmdFRUNRRUJDQVFCYVFjRkFnTURGazBBQ0FnVlRRSUtBZ0FBR2dCT0cwQWlCZ0VFQ1FFQkNBUUJhUUFGQlJaTkJ3RURBeFpOQUFnSUZVMENDZ0lBQUJvQVRsbFpXVUFiQVFCbVpWNWNURXBCUURrM01DNGxJdzhOQndZQWF3RnJDd2NXS3dVaUppYzBKd1lqQmdjT0FRY0dJeUluSmpVME56WTNOamNtSnlZbkppY21OVFEzTmpNeUZ4WWZBUllYRmhjV016YzBOelkxTkRjMk16SVdGeFlWRkFZVkZ6WTNOak0yTnpZM05qTXlGeFlWRkFjR0J3WUhGaGNlQVJjVUJnY2lKeVluSmk4Q0lpY1dGUlFHQWF3VEhBRUJKUTRoSkNzc0lBd01HaEFHR2hNTFR4NElPaFFpRkFjYUJ3OGJEQXNsR0JBbEhSUVdEUmNhQWdFR0Roc01Id1FDQXpFbEx3Y0JCQVk3UFFjSERBMFdKQlFvRFZSUlFnNGNBUndVRlExQ0hpWWxBUlFyREFFY0Nod1VteUFGR3pOQk94UUhHQXdMSEJFUUQzVWhDRkFWTXh3SEVoa01EQmdIR3ljWkt5c2JFUU1CWng0T0R5VU1HQkFURkJRVUtXWURNRFlKQndkUkdRTUpEaG9oRHdneUVXWkdWeElpRWhNY0FRNVNJeXdjQWc0RUpKUVVIQUFBQUFFQUovL3VBaGdDSXdDRkFPdExzQlZRV0VBVGFFMENCZ1Y4QVFNR0tBRUJBd1FCQWdFRVRCdEFFMmhOQWdZRmZBRURCaWdCQVFRRUFRSUJCRXhaUzdBT1VGaEFMQUFHQlFNRkJnT0FCQUVEQVFVREFYNEFBUUlDQVhBQUJRVUhZUUFIQnhaTkFBSUNBR0lJQVFBQUhBQk9HMHV3RlZCWVFDMEFCZ1VEQlFZRGdBUUJBd0VGQXdGK0FBRUNCUUVDZmdBRkJRZGhBQWNIRmswQUFnSUFZZ2dCQUFBY0FFNGJRRE1BQmdVREJRWURnQUFEQkFVREJINEFCQUVGQkFGK0FBRUNCUUVDZmdBRkJRZGhBQWNIRmswQUFnSUFZZ2dCQUFBY0FFNVpXVUFYQWdCM2RXOXRYbG80TnpVekZCSUpCd0NGQW9VSkJ4WXJCU2NtTHdFME56WXpNaDhDRmg4Q014WXpNajhDTmo4Qk5qOEJORDRETnpZME5qMEJKalUwTHdFdUFTOEJJeVlqSWdjR0l5NEJOVFEyTnpZM01qYzJQd0UrQWpjK0FUUTNOQzhDTGdNbkppOEJKaXNCTlFZSERnUVBBUVlIRmhVVUJ3WWpJaWNtTlRRM05qTXlGeFlWRkFjV0Z4WVZGQWNHQndZQkRDT2JKZ0VMRFJraUR3MEVCZ1lHRUFFcE5ROE9KUWdPRVFzSUJ3Z0RBZ1FEQVFNQkFRTUNCQUlDREFRS0VSTVVLU29WRnhnUUpnMENBUmtLQ1FzREF3SUJBZ0VCQkFNSkF3UUJGUm9PRWdvVkFod1RDUU1DQWdNQkFSUUdDd2tQR0E4TklDRXRlRXRDVlJNOER3Y0RDak5SRWdFRWZRa09EaE10RWdJR0F3UUdCZ01IQXdVS0J3WUhDZ0lFQlFZSUFnWUhBUUlKQWdNSkJ3SUVBZ0VGQWdRSEFoNFNFUm9DQmdVQkNRWUZDUVFFQXdNRUFna0hBZ2dGQ1FRREFRNE1Bd01CQVFJR0F3RUJBUUlCQVJrU0RSRVFEUlFKR0NNdkwwa21NVk1rSHhnN0ZnNE1Ea1V2UXdBQkFFRC85Z0llQWowQVpBQytTN0FvVUZoQURWcytPakF0TEF3RUNBQUNBVXdiUUExYlBqb3dMU3dNQkFnQkFnRk1XVXV3Q2xCWVFBNERBUUlDRmswQkJBSUFBQlVBVGh0THNBNVFXRUFPQXdFQ0FoWk5BUVFDQUFBYUFFNGJTN0FvVUZoQUdRQURBd0JoQVFRQ0FBQWFUUUFDQWhaTkFRUUNBQUFhQUU0YlM3QXhVRmhBRmdBQ0FoWk5BQUVCRlUwQUF3TUFZUVFCQUFBYUFFNGJRQllBQWdJQllRQUJBUlZOQUFNREFHRUVBUUFBR2dCT1dWbFpXVUFQQVFCV1ZEVXpIaDBBWkFGa0JRY1dLd1VpSnlZMU5EWTFKeVkxTkRjR0R3RUdEd0VHQndZSEZBNEJCd1lIQmlNaUppY21OVFEzTmpVMEp6VTBOelVuSmpVME56WXpNaDRCRlJRUEFSVVdGVDhCTWo0Qk5UWTNOamMyTno0Qk5UYzJQd0UxTnpZek1oY1dGUlFIQmhVZkFRY1hGQWNHQWV3bkNRUUNBUUlGSjJjQ0F3SUxIUjROREFJQ0F4c0tFUmtESVFvRUFnTUJBd0VCQ0FzZERCNElBZ0VCQWdZQkFRSVRDQmdiVFJ3Q0Jnc2NFUTBKRHhzVER4UURBd0VCQWdJSUN3b2pIUjBGRHh3WEp5YzBaekozQXdNRUVTOGVEQThCQWdRREpoUVhBeDhURkEwT0Z4ZW5HVlFZSkJFREF3VU5EeFlRSnhNT0RTWlBIblVCQ0FJQ0FSZ1FJeDlZSXdNSEFRNG9FeEFCRGhnT0VZRWtKVmNmUFJ4QUhnNE9GUUFBQUFJQVFQLzJBaDREQmdCa0FIOEJua3V3S0ZCWVFCSjFid0lHQlZzK09qQXRMQXdFQ0FBQ0Frd2JRQkoxYndJR0JWcytPakF0TEF3RUNBRUNBa3haUzdBS1VGaEFJQWNCQlFZR0JYQUpBUVFFQm1FQUJnWVVUUU1CQWdJV1RRRUlBZ0FBRlFCT0cwdXdEbEJZUUNBSEFRVUdCZ1Z3Q1FFRUJBWmhBQVlHRkUwREFRSUNGazBCQ0FJQUFCb0FUaHRMc0JKUVdFQXJCd0VGQmdZRmNBa0JCQVFHWVFBR0JoUk5BQU1EQUdFQkNBSUFBQnBOQUFJQ0ZrMEJDQUlBQUJvQVRodExzQnRRV0VBcUJ3RUZCZ1dGQ1FFRUJBWmhBQVlHRkUwQUF3TUFZUUVJQWdBQUdrMEFBZ0lXVFFFSUFnQUFHZ0JPRzB1d0tGQllRQzRBQndVSGhRQUZCZ1dGQ1FFRUJBWmhBQVlHRkUwQUF3TUFZUUVJQWdBQUdrMEFBZ0lXVFFFSUFnQUFHZ0JPRzB1d01WQllRQ3NBQndVSGhRQUZCZ1dGQ1FFRUJBWmhBQVlHRkUwQUFnSVdUUUFCQVJWTkFBTURBR0VJQVFBQUdnQk9HMEFyQUFjRkI0VUFCUVlGaFFrQkJBUUdZUUFHQmhSTkFBSUNBV0VBQVFFVlRRQURBd0JoQ0FFQUFCb0FUbGxaV1ZsWldVQWJabVVCQUhwNGRISnViR1YvWm45V1ZEVXpIaDBBWkFGa0NnY1dLd1VpSnlZMU5EWTFKeVkxTkRjR0R3RUdEd0VHQndZSEZBNEJCd1lIQmlNaUppY21OVFEzTmpVMEp6VTBOelVuSmpVME56WXpNaDRCRlJRUEFSVVdGVDhCTWo0Qk5UWTNOamMyTno0Qk5UYzJQd0UxTnpZek1oY1dGUlFIQmhVZkFRY1hGQWNHQXlJbkpqVTBOell6TWhjVUZ4WXpNamMwTnpZek1oWVZGQWNHQWV3bkNRUUNBUUlGSjJjQ0F3SUxIUjROREFJQ0F4c0tFUmtESVFvRUFnTUJBd0VCQ0FzZERCNElBZ0VCQWdZQkFRSVRDQmdiVFJ3Q0Jnc2NFUTBKRHhzVER4UURBd0VCQWdJSUMrQmZJUWtXRFEwcENBSUNKVElFSFFzS0RTSXNKZ29qSFIwRkR4d1hKeWMwWnpKM0F3TUVFUzhlREE4QkFnUURKaFFYQXg4VEZBME9GeGVuR1ZRWUpCRURBd1VORHhZUUp4TU9EU1pQSG5VQkNBSUNBUmdRSXg5WUl3TUhBUTRvRXhBQkRoZ09FWUVrSlZjZlBSeEFIZzRPRlFKYlJSVVpJQkVJS2c4R0RDRWhEUVVZR3owbElBQUFBQUFCQUV2LzlRSUVBalFBTGdDV1M3QW9VRmkzS1JzTkF3QUJBVXdidHlrYkRRTUFBZ0ZNV1V1d0cxQllRQTRDQVFFQkZrMERCQUlBQUJvQVRodExzQ2hRV0VBT0FnRUJBUUJoQXdRQ0FBQWFBRTRiUzdBcFVGaEFHUUFCQVFCaEF3UUNBQUFhVFFBQ0FoWk5Bd1FDQUFBYUFFNGJRQmtBQVFFQVlRTUVBZ0FBR2swQUFnSUFZUU1FQWdBQUdnQk9XVmxaUUE4QkFDUWlGQklKQndBdUFTNEZCeFlyRnlJbU5RSTFORFl6TWhZVkZCYzJOelkzTmpjeUZoY1VCd1lQQVJZZkFSWVhGQVlqSWk4QkppOEJCaU1WRkFaOUZCd0NIQlFVSFFJbkpsVmdFQk1VSEFFUFlGVWRZVTRPRFFFZEZoTU5EMmMrQ1M0Q0hRc2RGQUZLa3hRZEhSU1ZUQ2dwWFZFTkFSd1VGUTVSWGg1UVl4RVFFeE1kRGhGOUx3WXNkeFFkQUFBQUFRQXkvL1lDSlFJZ0FEa0FWTFVRQVFNQkFVeExzQXBRV0VBWEFBRUJCRjhBQkFRV1RRQURBd0JoQWdVQ0FBQVZBRTRiUUJjQUFRRUVYd0FFQkJaTkFBTURBR0VDQlFJQUFCb0FUbGxBRVFFQU1pMGJHUlVUQ3dvQU9RRTVCZ2NXS3dVaUp5WTFORGMyTlNjREl4VVdGUlFIQmdjR0l5SW1OVFEyTnpJM05qY3lOekkrQVRjMk5EYzJOVFF2QVRRek56SVhNaGNXRlJJWEZBWUI3Z3dNR1FRREFnTzlBd1VESFMxUkZCd2NGQTRDQ1FnQ0JnSUtBUUlEQVFjQkEweEtTajhmRkMwREFoMEtCdzhhRFJFTEN6UUJNaVJkWFM4ek5DUXlIQlFVR3dFQ0FRTURCd01CQlFRREpXb2ZIcHBEQVFFRUNVYitxaThqTGdBQUFRQTgvL1lDdFFJYkFGQUFXMEFQVFR3YkN3a0ZBd0F2QkFJQ0F3Sk1TN0FNVUZoQUZnQURBQUlBQXdLQUFRRUFBQlpOQlFRQ0FnSVZBazRiUUJZQUF3QUNBQU1DZ0FFQkFBQVdUUVVFQWdJQ0dnSk9XVUFRQUFBQVVBQlFSVU0wTWlVakh3WUhGeXNYSWljbU5UYzJOelkxTmpjMk56WXpNaGNXRng0Q0Z4WVhGaDhCTmpjMk56WTNOak15RmhjV0Z4WVhGaDhDRkFjR0l5SW5KaThCSmljbUp3WUhCZ2NHQndZaklpY21KeVluSmk4QkFnY0diUWNISXdFaER3SUxCUU1oQmdZVURoWUtBaEVSQlJrVEJDQUJIQmtVR2hBYURTRVFHZ1VqRlFZSENBVUJEUmNNRERNSUF3VUVDQWNNRHc0TkFnTXNNdzBiS3hVS0N3OE5FZ1FZSnlVTENnSUtKUXlMZEFrSlRsa2pDd0lPR1I4Rkl5VUpLakVMUHdJNk96QXJHRFFqRXhDQ2lDWWxIUnNJT0JrUEIxSVJFUlltS0VwSkZpQUhCbVpqRnprWEZod2JKZzR3L3M4VUJnQUFBUUE4Lyt3Q0lnSWZBRDBBWEVBT0loNENBd0k0R0FzRUJBRUFBa3hMc0JOUVdFQVdBQU1BQUFFREFHY0VBUUlDRmswR0JRSUJBUm9CVGh0QUdnQURBQUFCQXdCbkJBRUNBaFpOQUFFQkdrMEdBUVVGSEFWT1dVQU9BQUFBUFFBOUl6VXZKRDBIQnhzckJTSW5KalUwTmo4Qk5qVW5KalVuSmlNVkZBY0dJeUltUFFFMk5TYzBQd0UwTHdFME56WXpNaGNXRlE4Qk1oY3pOVFEyTXpJV0hRRVhGaFVVQndZQjZnWUhJd01CQVFNQkEwUVp2QmNORlJJZUNnRUNBUUVDQndzY0tBY0ZBUUhFSlRBY0ZCTWRBUU1oQ3hRQ0N5UUdEQVlKR1JjYklUSUJBUkdzR2c0YkV3SmRYUzV1Q0M4UERoa1BEeFVqS0Nnb1JnS3hFeDBkRS81QUhCeHpFZ1lBQWdBZS8rY0NPUUlnQUJZQVJBQTBRREVsQVFJREFVd0VBUU1EQVdFQUFRRVdUUVVCQWdJQVlRWUJBQUFjQUU0QkFFUkROREl4TUJnWEN3a0FGZ0VXQndjV0t3VWlKeVluSmpVME56WXpNaGNXRnhZVkZBY09BUWNHSnpJL0FUWTNOamMwTXpZM05ETTNKaWMxSnlZbk5DTW1KeVlqSmlNaUJ4VU9BU01IQmdjR0ZSUVhGaGNXTXdFYU96ZEtJaDR6TzJoVlMyTXNGaG9jWnpza0xSQUxDa1FrREJFQkZRWUJBUVFLQVEwUEFTbzRKaElNR2d3WUNRc0NFUThQQXdjUEhqRWpHUjh3VTBoTWFFcFJLamxvTWpJM09EZEpFQXRpQVFFVEhRa1RBUjBpQXhBd0ZRSUJIUk1CTlJZUEFnY0JCQWtTRHo0VkdCc21PaWN5QUFBQUFBRUFQUC8yQWg0Q0pBQkFBSHRBQ1NzbklBY0VBQVFCVEV1d0NsQllRQlFGQVFRRUFXRUNBUUVCRmswREJnSUFBQlVBVGh0THNDMVFXRUFVQlFFRUJBRmhBZ0VCQVJaTkF3WUNBQUFhQUU0YlFCNEFCUVVCWVFJQkFRRVdUUUFFQkFGaEFnRUJBUlpOQXdZQ0FBQWFBRTVaV1VBVEFRQTROelV2SlNNV0R3NE1BRUFCUUFjSEZpc1hJaVkxTkQ4Qkp5WTFORGMyTXhjV016STNNell6SGdFVkZBWVZGQThCRkJjVkZBWWpJaVluSmpVME56WTFORGMxQnlJUEFTSW5KaU1XRnc4QkJoVU9BVzBVSEFJQkFRTTFHUmd2SEJjZ0R6dEFRQlViQkFFQkJCOFJGQndCQkFJQkFsWVRFaXdoSVJzYkJBRUNBUUlCSEFvY0ZGeGRxQ3dKRlVJTUJRTUNBUUlCSGlBT0hpdTVPeVVtSmdJVEd4MFRJeU1YR0RsMld4b0JBUUVCQXdNaEl6bGdZV0FVSEFBQ0FFai9MQUpHQWc4QU13QldBSWxBRGxFQkFRSkFBUU1BUkFFRUF3Tk1TN0FYVUZoQUhBVUJBUUVDWVFZQkFnSVdUUUFBQUFOaEFBTURGVTBBQkFRWUJFNGJTN0FaVUZoQUdnQUFBQU1FQUFOcEJRRUJBUUpoQmdFQ0FoWk5BQVFFR0FST0cwQVlCZ0VDQlFFQkFBSUJhUUFBQUFNRUFBTnBBQVFFR0FST1dWbEFGRFUwQUFCSVJqODlORlkxVXdBekFETW9Cd2NYS3hNVkZCY3pGaGN6RmpNM01qWXlOelkvQVRZM01qWTNOajhCTmo4Qk5UWS9BVFkxTkNjMEp6VW1KelFpTlNZbkl5WXZBU1luTWhjV0Z4WVZGQWNHSXlJbkZoVVVCdzRCSXlJbU5UWTFOQ1kxTkRjK0FUTVhOcW9QQVE4Z0JBc1FHZ0VGQkFFbEZBZ2lDd0VEQWhBT0FRVUtDQWdEQVFFRkN3c0ZBZzhVQVJveEdVaE0xR3MwR2hNMVk2VWxKQU1DQWhvVkV4NENHUUlDR2hVR0JnR3RFNk41QmdZQ0FRRUJCUW9ERHdzREFRMFJBZ1VTRHdJVEZBWU9EdzROQnc4QkN3UUJBUW9LQ2dzRUNHSTZIRFVyTDFaSGZnZ3pNaXNxRlJ3Y0ZTb3BkK3AxTEN3VUhRRUJBQUFCQUJ6LzZ3SURBaGNBUmdDZHRVTUJCQVVCVEV1d0RsQllRQ1FBQWdNRkF3SnlBQVVFQXdVRWZnQURBd0ZoQUFFQkZrMEFCQVFBWVFZQkFBQWNBRTRiUzdBdFVGaEFKUUFDQXdVREFnV0FBQVVFQXdVRWZnQURBd0ZoQUFFQkZrMEFCQVFBWVFZQkFBQWNBRTRiUUNNQUFnTUZBd0lGZ0FBRkJBTUZCSDRBQVFBREFnRURhUUFFQkFCaEJnRUFBQndBVGxsWlFCTUJBRDgrTlRRY0d4TVJDd29BUmdGR0J3Y1dLd1VpSnlZbkpqVTBOelkzTWhjV0ZSUUhCaU1pTHdFMUp5WW5KaWNpQndZSEJnY0dEd0VHRlFZVkZCOEJGaDhCRmhjeUZoOEJQd0UyUHdFMk56WTNOak15RnhZVkJnY0dBU3hQUldBWUJFeFRmb0pCQnhrTURSd05EQlVHRUFrb01Eb1JHUUVDRlFnRkNBSU1BUWtOQWh3eEF3SW5EUjBTRmhRQkJBTUZFZ3NOQmdjakJEQXpGUzVDY1JnWVdWcGVDbThNREJ3UEJoZ1NBUlVHQndZREpRb2VBZ0ViRnc0ZUNBUUxFaUVCRlJJQklob0NDZ0VDQmd3ZkJBa0xFd29IQWdzbE5qSTFBQUVBUVAvdUFnb0NId0FmQUNwQUp3TUJBQUVCVEFNQkFRRUNYd0FDQWhaTkJBRUFBQndBVGdFQUd4a1NEUWtIQUI4Qkh3VUhGaXNGSWlZOUFUWTFKeU11QVRVME5qTS9BVG9CRnhZVkZBWUhCaU1uRnhRSEJnRWNFaDRJQTRFVUhCd1V5eFVVZ2c0V0VCTWRIbHNERmcwU0d4TUNiR3pIQVJ3VEZCd0JBUWNNSEF3ZUJRUUJ5T0FhRGdBQUFRQW0veVVCOXdJY0FENEF5cmNzSndzREF3QUJURXV3Q2xCWVFCSUJBUUFBRmswRUFRTURBbUlBQWdJWUFrNGJTN0FNVUZoQUZnQUJBUlpOQUFBQUZrMEVBUU1EQW1JQUFnSVlBazRiUzdBT1VGaEFFZ0VCQUFBV1RRUUJBd01DWWdBQ0FoZ0NUaHRMc0JCUVdFQVpBQUFCQXdFQUE0QUFBUUVXVFFRQkF3TUNZZ0FDQWhnQ1RodExzQlZRV0VBV0FBRUJGazBBQUFBV1RRUUJBd01DWWdBQ0FoZ0NUaHRBR1FBQUFRTUJBQU9BQUFFQkZrMEVBUU1EQW1JQUFnSVlBazVaV1ZsWldVQU5QVHc3T2pjMU1DNFlGZ1VIRmlzWE55TTJOelkzTWpRM05qY21KeVluSmljbU5UUTNOak15RnhZWEZoY1dId0VlQVJjV0Z4WVhOajhCTmpjK0FUTXlGaFVDQndZaklqVTBOak1XTXphNUF3SU9GQ0VYQVFFSkRsVTdKaTRVQ0FjWURBMGVEQlVTT1RZREJRRUlEd1lFQWdjTEd4TUNEQVFDR2hVVEhoSzdVV3BISEJVTkd4bHRBUVFPRng0Q0FRa2FLSGhOaFRzU0RRMGJEd1lZTWpTclRnWUVBd2tPQmdJQ0JRVkRnUTllWHhVY0hCWCtIS0ZCTWhNZUFRTUFBQUFEQUJyL0xBS1dBbnNBTFFBOUFGOEFpVUFLU2dFSEJpb0JBQUVDVEV1d0RGQllRQ1lKQVFZR0FtRUVBUUlDRmswTUNBc0RCd2NCWVFVQkFRRVZUUUFEQXdCaENnRUFBQmdBVGh0QUpna0JCZ1lDWVFRQkFnSVdUUXdJQ3dNSEJ3RmhCUUVCQVJwTkFBTURBR0VLQVFBQUdBQk9XVUFqUHo0dUxnRUFXbGsrWHo5ZkxqMHVQVEl4SlNRY0d4a1hFUkFJQmdBdEFTME5CeFlyQlNJbkpqVTBMd0VpSnlZMU5EYzBOelkzSnlZMU5EYzJNeklkQVRJWEZoY1dGUlFIQmdjWEZCY1dGUlFIQmdNbkpqVUhCZ2NHQndZVkZCY1dGeFlYTWpVek5qYzBQd0V5TlRZM05EOEJKaWMxSmljbUp6UW5KaThCSXhRWEZoVVhBV3dNRHhvQk0ydzNSZ0l5UktBQkJBZ01IRFNyUEJFR0J6azlpZ0VEQVFjTFZRSUNOajhaSWdRSUdSQVdJc0F3QmpjY0JRWUJCUU1CQWdFQ0JnWUZCZzBWTWdrdUFnRUIxQWdOV2pNcEFqZFlrQndlVGo1TEFnd0hEUTBPRlVVTmFSOGpNMjl1T3pnR1F6ME5CUVlORGhZQksyeVdjZ01LRkJzMktTY3FQUzBORFFVQ0NSd0NCUXdDRFEwRkFpMTVDQVlnQmd3R0FRMFJDUUp0bFNrcUhnQUFBUUFZLy9BQjJnSTBBRGdBYWtBSk1DUVVCUVFBQWdGTVM3QVRVRmhBRGdNQkFnSVdUUUVFQWdBQUhBQk9HMHV3RzFCWVFCSUFBd01XVFFBQ0FoWk5BUVFDQUFBY0FFNGJRQmtBQXdNQVlRRUVBZ0FBSEUwQUFnSVdUUUVFQWdBQUhBQk9XVmxBRHdFQUtTY2dIZ29JQURnQk9BVUhGaXNGSWljbUx3RUdCd1lqSWljbUp6UTNOamMrQVRjbkppOEJKaWNtTlRRMk93RVdGeFlYTmpjMk16SVhGaFVVQndZSEZ4WVhGaFVVQndZQnFSa1NWdzRKUjE0TkZSTVFEUUVPUTBNTEF4MERHeVlLR3o0TkhCSUxFUm8rVERvekR4c05EQmdHUDBnaE1UVUhHUXdRR0lJWERXTk5EZzRPRlJZTU5WTU5CU2dFS2pNTktEa05FeGNjQWgwK2JWNWhHQVlQSEF3TWRuRXlUa29NREJ3UEJ3QUFBQUVBUFA4c0FqUUNKQUJJQUZ0QURUMDFMeXNFQkFNQUFRQUVBa3hMc0F4UVdFQVpCZ0VEQXhaTkJRRUVCQUJoQWdFQ0FBQVZUUUFIQnhnSFRodEFHUVlCQXdNV1RRVUJCQVFBWVFJQkFnQUFHazBBQndjWUIwNVpRQXhHUkN0U0dDa2hRUklJQngwckJRWWpJaWNqSmlNaUR3RWlKeVkxTnljbU5UUTJNeklXRnhRZkFnWUhNamMyTXhjV014YzFKalUwSnlZMU5EYytBVE15RmgwQkJoVVhGaFVVSHdFZUFSMEJGQVlqSWlZMUFkSUdCa0FZT3c4Z0Z4d3ZHQmsxQkFFQ0hCUVRIQUVDQVFJQkJCc2JJU0VzRWhNdUFnRUNCQUVjRkJFZkJBRUJBUVllSFIwVUZCMEdBZ0lCQWdNRkRFSktxRjFjRkJ3Y0ZHQmhZRGtrSUFNREFRRUJBUnBiZGprWUZ5TWpFeDBiRXdJbUppVTd1UjRRQVFVVEZOWVVIUjBVQUFBQkFFYi85Z0lYQWprQVNnQ2hRQkkzQVFNQ1B3a0NBUU5IUlVJR0JBQUJBMHhMc0FwUVdFQVZBQU1BQVFBREFXY0VBUUlDRmswRkFRQUFGUUJPRzB1d0VGQllRQlVBQXdBQkFBTUJad1FCQWdJV1RRVUJBQUFhQUU0YlM3QVZVRmhBR1FBREFBRUFBd0ZuQUFRRUZrMEFBZ0lXVFFVQkFBQWFBRTRiUUJrQUF3QUJBQU1CWndBQ0FoWk5BQVFFQUdFRkFRQUFHZ0JPV1ZsWlFCRUJBRHc2TXl3WEZROEtBRW9CU2dZSEZpc0ZJaWNtTlRRM05qVW5CaXNCSmlNaUp5WTFOelEyTXpJV0hRRVVGeFVYRmhjZUFSVVdGeFlYRmhReUZoY3pGak15RnpNeU56NEJOelUrQVRNeUZoMEJGaFVIQmhVZkFoUUhCZ0huREE4YkFnSUJKU2NaQWtaV01qa0JIQlFUSFFNQkFnVUJCQU1DQndRUUFnRWNCQXNSSXlBU0dob0NDd2NCSEJNVUhBSUJBZ0VEQVFnTkNnZ1BXaElTQmlrb0JBSTBSWVViRlJzY0d4UWVIZ1FDRUE4R0J3TUVCUXdFQ2dFQkJ3RUNBZ0VCQXNVVUhCd1UveHN5S2cwekVROE1EUTRXQUFFQVkvLzhBdDhDSXdBOEFDcEFKd1VEQWdFQkZrMEVBUUlDQUdBR0FRQUFGUUJPQkFBeEx5Y2tJUjhjR3hRU0FEd0VPd2NIRmlzRkx3RWhJaWN1QVRVME56WTFOQ2NtTlQ0Qk16SVdGeFFmQVJRSE14RTBOak15RmhVUkh3RTNKemMxSnpZMU5EWXpNaFlYQmgwQkZ4UUhCZ2NHQWo5VFB2NzNEd3dnQndJREFnTUJIQlFVSEFFQ0F3YW9IUlFVSFNKUFBBRUJBUU1kRkJRY0FRTUJFZ3NLUWdRQkFRZ0hPQjBYRnlRNlhUTXVReFFjSEJSQ0xaSkdTQUdTRkIwZEZQNXVBUUVCSERGS1FWbGNGQjBkRkpRcGVGUkVFUTBDQXdBQUFBQUJBR1AvTEFNeUFpTUFSZ0FyUUNnNUFRSUJBVXdGQXdJQkFSWk5CQUVDQWdCZ0FBQUFGVTBBQmdZWUJrNHZLRE1qRnk1Z0J3Y2RLd1VHSXk4QklTSW5MZ0UxTkRjMk5UUW5KalUrQVRNeUZoY1VId0VVQnpNUk5EWXpNaFlWRVI4Qk55YzNOU2MyTlRRMk16SVdGd1lkQVJjVk1oY2VBUjBCRkFZaklpWTFBdEJuS2xNKy92Y1BEQ0FIQWdNQ0F3RWNGQlFjQVFJREJxZ2RGQlFkSWs4OEFRRUJBeDBVRkJ3QkF3RUtFQjRkSFJRVUhRSUNBUUVJQnpnZEZ4Y2tPbDB6TGtNVUhCd1VRaTJTUmtnQmtoUWRIUlQrYmdFQkFSd3hTa0ZaWEJRZEhSU1VLWGhVQVFNRkV4VFdGQjBkRkFBQ0FBRC84UUtCQWk0QUV3QTVBRTlMc0NsUVdFQWRBQUlBQVFBQ0FXY0FCQVFGWHdBRkJSWk5BQUFBQTE4QUF3TVZBMDRiUUJzQUJRQUVBZ1VFWndBQ0FBRUFBZ0ZuQUFBQUExOEFBd01WQTA1WlFBazBOemdoUHhBR0J4d3JOekkzTWpjMk56STNOalUwSnlZbkppY2lCeU0vQVRJWEZoVVVCd1lIQmlzQklpY21OVFkzTmpjbkl5SW1OVFEyT3dFeUZ4WVhGaFVVQit1ZUlnUWdKeGdEQ2dVTUVBeEVVRG9SS3dWQmltZGNFeXhyU0lGT0hROEpBUVFEQVFKaEZCMGRGSkVVRHdnRUF3RlJCd1lIRUF3SEV5QU1FQVVZQ1FGZ0FpNHRaeXNnUWhJTUhnd1FjM1JjV3dNZEZCUWREZ2tMQ0FvekxRQUFBQU1BUnYveEF3VUNLZ0FhQUM0QVRBQjJTN0F0VUZpMVN3RUFBd0ZNRzdWTEFRWURBVXhaUzdBdFVGaEFHd0FDQUFRREFnUm5CUUVCQVJaTkFBTURBR0lHQndJQUFCd0FUaHRBSXdBQ0FBUURBZ1JuQUFFQkZrMEFCUVVXVFFBR0JocE5BQU1EQUdBSEFRQUFGUUJPV1VBVkFnQkdSVDQ4TGlzY0d4SVFEQW9BR2dJYUNBY1dLeGNqSWljbU5UNEJOVDRCTXpJV0ZSUUhOeklYRmhVVUJ3WUhCaWN5TnpJM05qY3lOelkxTkNjbUp5WW5JZ2NqQlRZM05qVS9BVFkzTmowQk5EWXpNaFlWRkFZSERnRWpJaWN1QVRVMHlVNGREd2tCQ0FFY0V4UWNBME9LWjF3VExHdElwSjRpQkNBbkdBTUtCUXdRREVSUU9oRXJBZVFDQVFFQ0JnVUNBeDBVRkIwSUVnVWZEUVVHRlE0UEhnd1FjK2gwRkJ3Y0ZGbEZBaTR0WnlzZ1FoSU1ZQWNHQnhBTUJ4TWdEQkFGR0FrQnlRME1Bd01PT2pvNlZsdzBGQjBkRkhucGVSUVBBUWNjRFFZQUFBQUNBRWIvOFFJOEFpb0FHZ0F1QUMxQUtnQUNBQVFEQWdSbkFBRUJGazBBQXdNQVlBVUJBQUFWQUU0Q0FDNHJIQnNTRUF3S0FCb0NHZ1lIRmlzWEl5SW5KalUrQVRVK0FUTXlGaFVVQnpjeUZ4WVZGQWNHQndZbk1qY3lOelkzTWpjMk5UUW5KaWNtSnlJSEk4bE9IUThKQVFnQkhCTVVIQU5EaW1kY0V5eHJTS1NlSWdRZ0p4Z0RDZ1VNRUF4RVVEb1JLdzhlREJCejZIUVVIQndVV1VVQ0xpMW5LeUJDRWd4Z0J3WUhFQXdIRXlBTUVBVVlDUUVBQVFBcy8vWUI5UUlXQUdNQTYwdXdDbEJZUUMwQUJnVUVCUVlFZ0FBQkF3SUNBWElBQkFBREFRUURad0FGQlFkaEFBY0hGazBBQWdJQVlnZ0JBQUFWQUU0YlM3QU9VRmhBTFFBR0JRUUZCZ1NBQUFFREFnSUJjZ0FFQUFNQkJBTm5BQVVGQjJFQUJ3Y1dUUUFDQWdCaUNBRUFBQm9BVGh0THNDbFFXRUF1QUFZRkJBVUdCSUFBQVFNQ0F3RUNnQUFFQUFNQkJBTm5BQVVGQjJFQUJ3Y1dUUUFDQWdCaUNBRUFBQm9BVGh0QUxBQUdCUVFGQmdTQUFBRURBZ01CQW9BQUJ3QUZCZ2NGWndBRUFBTUJCQU5uQUFJQ0FHSUlBUUFBR2dCT1dWbFpRQmNCQUZwWVVFNUZSRFF5TGl3ZEdna0hBR01CWXdrSEZpc0ZJaWNtTlRRM05qTXlGeFlmQVI0Q0Z6TVdGeklYTXhZWEZqTTNNajhCTmo4Qk5qYzJOelEyTXpjMk55TWlKalUwTmpzQkppOEJKaWNtTHdFbUp5SXVBUzhDRHdFR0R3RU9BUThCQmlNaUp5WTFORGMyTnpZek1oY1dGeFlWRkFZSEJnRVJ0eU1IQ1EwYkRRd1VCUU1DQkFFQkFRTUtBZ0VCRUNNWUdCQUtEd01GRHdZVkJBMEpBZ0VCQndISUZCd2NGTHdEQkFRSUNSY0xCQTBPQWdZRUFoSUpGUTh1R1FJR0JBSUREeHNNREJnSEpWVW5KaU1pZVNvVFYxTWNDbk1SQnd3T0ZRY01HZ2NGQlFJQkF3VUJCd1lEQVFjQkFna0ZFUWtSRkFNREJCWUpIUk1VSEFvSkN4RVFIZ1lEQ1FjREFRRUVBUUVEQ0JBQkJnSURCQmdIRHhzTUREc1REQW90aURRMFM0MFpDQUFBQUFBQ0FDai85Z0srQWo0QUxBQnVBU0ZMc0MxUVdFQU9XUUVHQUVVQkFRTThBUUlCQTB3YlFBNVpBUVlBUlFFQkF6d0JCQUVEVEZsTHNBcFFXRUFoQUFZQUF3RUdBMmNBQUFBRllRY0JCUVVXVFFnQkFRRUNZUVFKQWdJQ0ZRSk9HMHV3R1ZCWVFDRUFCZ0FEQVFZRFp3QUFBQVZoQndFRkJSWk5DQUVCQVFKaEJBa0NBZ0lhQWs0YlM3QWJVRmhBSXdBSEFBQUdCd0JwQUFZQUF3RUdBMmNBQlFVV1RRZ0JBUUVDWVFRSkFnSUNHZ0pPRzB1d0xWQllRQ29BQndBQUJnY0FhUUFHQUFNQkJnTm5BQVVGQW1FRUNRSUNBaHBOQ0FFQkFRSmhCQWtDQWdJYUFrNGJRQ2NBQndBQUJnY0FhUUFHQUFNQkJnTm5BQVVGQkdFQUJBUVZUUWdCQVFFQ1lRa0JBZ0lhQWs1WldWbFpRQnN1TFFBQVpHSmRXMUZRUUQ0MU1TMXVMbTRBTEFBc0d4a0tCeFlySlRjMk5UYzBOajhCTkRZME56WTNOamMyTlRRbkppY21KeVlqQmdjT0FRY0dGUVlIRmhjVUh3RXpId0VXRnlJbkppY2pJaVlqSWc4QkJoVVVGeFFHSXlJbkpqVTBOelkxTkNjbU5UUTNOamMyTXhZVkZBY1VCeFFYRmhVWE16WTNOamMyTXpJWEZoY1dGUlFIQmdjR0Fnc01FZ29FQXdvQ0FRa0tBZ0VDQlFZbkNBb2RMU01jRUFRQ0RBRUJDQkFDQ0FFRkR5azdYRHhaQmk0VEp4Y0ZBZ0lDQkI4UkV3OFNBZ0lDQWdVRkVnd05MZ0lCQWdKdEZnUWlFaVF4UEZBMEpCVXBCUTR5TVZZQkJBRUZBUU1ERWdFQ0F3RVdMaEVDRkJNdERqdE5DUVlOQWhBWENnUWxDd2REY3gwQ0FoRUlEeHRnSzBHcEFnRndGeFlpSXhRYkRoTlZGeGN2bVRVTUZCVWdJQlFKQmdRc0RRSUhCUm9lR0MwQlBrRW1GaGdsR1R4ZVlpTWthak1xQUFBQUFnQW8vK29CK0FJcUFBOEFQZ0JJUUVVaUFRRUREQVFDQXdBQkZBRUdBQU5NQndFQUFBWUNBQVpwQUFFQkEyRUVBUU1ERmswRkNBSUNBaHdDVGhFUUFRQTBNaTRzSlNRaEhSQStFVDRJQmdBUEFROEpCeFlyQVRJM0ppOEJJaWNPQXdjVUZ4WURJalUwTnlZbkpqVTBOelkzTmpNMk16SVhOak15RmhjVUZoVU9BU01pSmpVMEp3Y2lCZ2NHQndZSEJoVVVCZ0ZFTVJzRUFRUUhCbkJDSkJZR0FTUkdNRkVhRnk4SkVqMU5WU2tlSUNRR0NCTWNBUTBCSEJNVUhBTW1FRW9jS0JRTkNnOGRBUndUVFV3QkFRSUxFQjhpRHdJLy9zNUFjMGNORWlVK0docEZKU1FDQndJY0ZIandieFFjSEJSUVhRSUdDUklXQ2gwb0tSUWNBQU1BWC8vMEFqTURVZ0F3QUR3QVNBQkdRRU1KQVFjSUFRWUJCd1pwQUFNQUJBVURCR2NBQWdJQlh3QUJBUlJOQUFVRkFGOEtBUUFBRlFCT0FRQkhSVUUvT3prMU15a2tJUjhiR1JjVkVRNEFNQUV0Q3djV0t4Y2lKaWNtTHdFME56WTNORFkzTmpNaE1oWVZGQVlqSVFZSE16SVdGUlFHS3dFR0hRRTJOell6TWhZVkZBWWpEZ0VURkFZaklpWTFORFl6TWhZWEZBWWpJaVkxTkRZek1oYWlFUm9GRVFFQkNBZ0NGQkFQRndGSUZCd2NGUDdQQWdhM0ZCMGRGTDBFUlVSVVZCVWNIQlZVcHo4ZEZCUWRIUlFVSGF3ZEZCUWRIUlFVSFF3VUVBOFlZSE55ZVhvUkdnUVRIUlFVSFdGaUhSUVVIRk5UTndFREJCMFVGQndCQndNc0ZCMGRGQlFkSFJjVUhSMFVGQjBkQUFBQUFBUUFFZi91QWg4Q3RRQXpBR0lBYmdCNkFGcEFWd0FGQWdNQ0JRT0FEUUVHQUFJRkJnSm5DZ0VJQ0FsaEN3RUpDUlJOQUFjSEFXRUFBUUVXVFFRQkF3TUFZUXdCQUFBY0FFNDFOQUVBZVhkemNXMXJaMlZQVFRSaU5XRXRLeWttSlNRU0R3a0hBRE1CTXc0SEZpc0ZJaWNtTlRZM05qTXlGeFlYRmhVVUlTSW5Id01WRmg4Q01oNEJGeFlYTWg4Qk1qY3lOVEkzTmpNeUZ4WVZGQWNHQXpJM05qTTBNelkzTXpRbk5DYzFKaWMxSmk4QkppOEJKaThCSWc4QkJnY2lCeU1HRHdFR0J4VVVJdzRCQnhZVEZBWWpJaVkxTkRZek1oWVhGQVlqSWlZMU5EWXpNaFlCUDRGZFVBWm5VVnRnUWtBUEJQNzNURW9DQnd3SkVSVUZJd0VFQkFFT0VnVUNIaE1UQlNCSUJ3Z0xEaFlrV1kwOFBBUUZBaDhYQVFvQ0NRY0lDZ0lORFFVUkVTQVdDaDhkSGdNREFRY0dEQXdHQVFRRUFsTW9IUlFVSFIwVUZCMnNIUlFVSFIwVUZCMFNZVnA0Z0VvME5EWlpEUTF5QkFjT0ZRd0JFeElFRkFJQkFRVUVBUUlDQVIwRENRNGJJQThrQVVVRkFRRURDZ3NiQXdJQkVnZ0JDZ2dDQ2dVQ0J3SUNBZ2dHRmdVR0J3d1NEQUVCQ2hNSEF3RlJGQjBkRkJRZEhSY1VIUjBVRkIwZEFBSUFYLy8wQWpNRG53QXdBRjBBUWtBL0FBWUhCb1VBQndFSGhRQURBQVFGQXdSbkFBSUNBVjhBQVFFVVRRQUZCUUJmQ0FFQUFCVUFUZ0VBVTFFL1BTa2tJUjhiR1JjVkVRNEFNQUV0Q1FjV0t4Y2lKaWNtTHdFME56WTNORFkzTmpNaE1oWVZGQVlqSVFZSE16SVdGUlFHS3dFR0hRRTJOell6TWhZVkZBWWpEZ0VESnlZbkppY21OVFEzTmpjMk16SVhGaDhDRmhjV0Z4WVhGaFVVQndZSEJpTWlKeVluSmljMEp5WW5JNklSR2dVUkFRRUlDQUlVRUE4WEFVZ1VIQndVL3M4Q0JyY1VIUjBVdlFSRlJGUlVGUndjRlZTbklBTU1EUkFHQWdjS0ZBY0dEQXNmSGdRUUF3TU5EQkVHQWdjS0ZBY0hEQXNlSGdJREFRZ0hBUXdVRUE4WVlITnllWG9SR2dRVEhSUVVIV0ZpSFJRVUhGTlROd0VEQkIwVUZCd0JCd001QWdvS0NoTUhCZzBMRVFZQ0J4Y1hCQXdDQXdvSkN4SUhCZzBNRUFjQ0J4Y1lBUUlCQVFVR0FBQUFBQU1BRWYvdUFoOERBZ0F6QUdJQWp3QlVRRkVBQ0FrSWhRQUpBUW1GQUFVQ0F3SUZBNEFMQVFZQUFnVUdBbWdBQndjQllRQUJBUlpOQkFFREF3QmhDZ0VBQUJ3QVRqVTBBUUNGZzNGdlQwMDBZalZoTFNzcEppVWtFZzhKQndBekFUTU1CeFlyQlNJbkpqVTJOell6TWhjV0Z4WVZGQ0VpSng4REZSWWZBakllQVJjV0Z6SWZBVEkzTWpVeU56WXpNaGNXRlJRSEJnTXlOell6TkRNMk56TTBKelFuTlNZbk5TWXZBU1l2QVNZdkFTSVBBUVlISWdjakJnOEJCZ2NWRkNNT0FRY1dBeWNtSnlZbkpqVTBOelkzTmpNeUZ4WWZBaFlYRmhjV0Z4WVZGQWNHQndZaklpY21KeVluTkNjbUp5TUJQNEZkVUFablVWdGdRa0FQQlA3M1RFb0NCd3dKRVJVRkl3RUVCQUVPRWdVQ0hoTVRCU0JJQndnTERoWWtXWTA4UEFRRkFoOFhBUW9DQ1FjSUNnSU5EUVVSRVNBV0NoOGRIZ01EQVFjR0RBd0dBUVFFQWxNM0F3d05FQVlDQndvVUJ3WU1DeDhlQkJBREF3ME1FUVlDQndvVUJ3Y01DeDRlQWdNQkNBY0JFbUZhZUlCS05EUTJXUTBOY2dRSERoVU1BUk1TQkJRQ0FRRUZCQUVDQWdFZEF3a09HeUFQSkFGRkJRRUJBd29MR3dNQ0FSSUlBUW9JQWdvRkFnY0NBZ0lJQmhZRkJnY01FZ3dCQVFvVEJ3TUJYZ0lLQ2dvVEJ3WU5DeEVHQWdjWEZ3UU1BZ01LQ1FzU0J3WU5EQkFIQWdjWEdBRUNBUUVGQmdBQUFBRUFIUC9PQXNzQ3VBQmdBRHRBT0FBSEFBSUJCd0pwQUFFSUFRQUJBR1VHQVFRRUJWOEFCUVVVVFFBREF4d0RUZ0VBVjFKUFRVbEdRa0E0TmpBdEJ3VUFZQUZnQ1FjV0t3VWlKalUwTmpNeU56TTJQd0V6TnpZM05qSS9BVFkzTlRZMU5DOEJKaThCTGdFMUppY21JeVluSWljakp5WWpCaU1VQndZVkRnRWpJaVkxTkRjMk5UUW5JeUltTlRRMk15RXlGaFVVQmlNaEZCY1ZQd0V5RnhZWEZoY1dGUWNHQndZQjlob2RIQlFaRGdJZ0R3c0JBZ0lDQVFFRkFRVUNBZ01CQXdnRUNBUU9Ed3dDR3g0RkFnTUdGSFlXSEFNR0FSd1RGQndFQlFOc0ZCd2NGQUhaRXgwZEUvNzBBVEpHSGgxUFJVVVdEd0VDTGpreUhCUVVIQUlHQndjREF3RURDUVFMRUFZVUZDUVdCeFVUQ2c0RUFSQUhCd29HQVFFQ0FWMU9iQzRWSEJ3Vk9UcGZaWEtaSEJRVEhSMFRGQnd6TWpnQkFRSURKU3RPT0RvYVd5ODJBQUFCLytyL053SWNBd1VBZ0FJelM3QVpVRmhBRTF3QkJnZFNBUVVHY2dFRENuMUlBZ1FEQkV3YlM3QWJVRmhBRTF3QkJnaFNBUVVHY2dFRENuMUlBZ1FEQkV3YlFCTmNBUVlJVWdFRkNYSUJBd3A5U0FJRUF3Uk1XVmxMc0FwUVdFQXRDUUVGQlFaaENBRUdCaFJOQUFNRENtRUFDZ29XVFFBSEJ3UmhBQVFFSEUwQ0FRRUJBR0VMQVFBQUdBQk9HMHV3REZCWVFDMEpBUVVGQm1FSUFRWUdGRTBBQXdNS1lRQUtDaFpOQUFjSEJHRUFCQVFhVFFJQkFRRUFZUXNCQUFBWUFFNGJTN0FaVUZoQUxRa0JCUVVHWVFnQkJnWVVUUUFEQXdwaEFBb0tGazBBQndjRVlRQUVCQnhOQWdFQkFRQmhDd0VBQUJnQVRodExzQnRRV0VBM0NRRUZCUWhmQUFnSUZFMEpBUVVGQm1FQUJnWVVUUUFEQXdwaEFBb0tGazBBQndjRVlRQUVCQnhOQWdFQkFRQmhDd0VBQUJnQVRodExzQjVRV0VBMUFBa0pDRjhBQ0FnVVRRQUZCUVpoQUFZR0ZFMEFBd01LWVFBS0NoWk5BQWNIQkdFQUJBUWNUUUlCQVFFQVlRc0JBQUFZQUU0YlM3QWdVRmhBTXdBSUFBa0ZDQWxuQUFVRkJtRUFCZ1lVVFFBREF3cGhBQW9LRmswQUJ3Y0VZUUFFQkJ4TkFnRUJBUUJoQ3dFQUFCZ0FUaHRMc0MxUVdFQXhBQWdBQ1FVSUNXY0FDZ0FEQkFvRGFRQUZCUVpoQUFZR0ZFMEFCd2NFWVFBRUJCeE5BZ0VCQVFCaEN3RUFBQmdBVGh0QUxnQUlBQWtGQ0FsbkFBb0FBd1FLQTJrQ0FRRUxBUUFCQUdVQUJRVUdZUUFHQmhSTkFBY0hCR0VBQkFRY0JFNVpXVmxaV1ZsWlFCMENBSFp6Y0d4b1pHRmZXMWxWVTAxTE9EVUtDQWNHQUlBQ2dBd0hGaXNGSnlJbU5UUTJNeFl6TWpjK0JEVTNOajhCTmo4Q05qVStBVFUwTHdFbUp5NEJMd0VtSnlZbkppY2pKaWNpSmpVakppSW5JZ2NpQnhVakJnOEJCaFFIQmc4QkJnY1RGQVlqSWlZbkpqMEJCaU1pSmpVME5qY3lOelUwTmpNeUZoMEJOanNCTWhZVkZBWXJBU0lIQmhVMk93RXlGeFlYRmhVVUJ3WUhCZ0ZQR2gwZUhCUVFHQlVJQVFVREFnUUNGUU1CQ3dNQkFRa0NDQU1DQ2dnQ0FRRURDd3NFRlFJQkFRb0lBZ0lCRGd3RkdBUUtFUUVLQndNUkFRY0hCUkVJQXh3VUZCc0JBeGdaRkJ3Y0ZCa1pIQlFUSFI4Z1JoTWRIUk5HSUI4Qk8wZ2hIekJwRUFVREJUZ3l5UUVjRlJNZEFnSUJBZ0VCQXdFQkVnY0NFUWNFQVNBSEFwY21KaWNUTlJZREJRRUhGdzBKRVFFQ0NBUUNBUVFCQWdZQkJRVUNFUUVCQ2cwTEtqZisvUlFjSEJUUDBKOENIQlFUSEFFQ0ZCUWNIQlFOQVJ3VUZCd0JIME1ySTAyaU5qWXJLcHhLUVFBQ0FFNy82d0l5QTU4QUZBQkJBRmRBQ3pzbkFnTUVEd0VBQWdKTVM3QW1VRmhBR2dBRUF3U0ZBQU1CQTRVQUFnSUJYd0FCQVJSTkFBQUFIQUJPRzBBWUFBUURCSVVBQXdFRGhRQUJBQUlBQVFKcUFBQUFIQUJPV1VBS05UUWhJQlExRUFVSEdTc1hJalVUTmpjMk55RXlGaFVVQnlBSEJoVUNGUlFCQnlNR0J3WVZCZ2NHQndZaklpY21KeVkxTkRjMk56WTNOajhDTmpjMk16SVhGaGNXRlJRSEJnY0dCNGs3Q1FRTkUxSUJJVFFRS1A3QkRRUUpBU1FEQVFjSUFRTUNIaDRMREFjSEZBb0hBZ1lSREEwRUFoQUVIaDhMREFZSEZBb0hBZ1lRRFF3Vk93SFRwUXdaQlI4WUhRNENTaUgrV0RvZEF6UUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFBQ0FFWUFBQUhLQXdJQUtnQlhBRUJBUFZFOUFnVUdCUUVBQXdKTUFBWUZCb1VBQlFFRmhRUUJBd01CWVFJQkFRRVdUUWNCQUFBVkFFNEJBRXRLTnpZZ0hoMGFGaElSRHdBcUFTb0lCeFlyTXlJbU5UUTNOamMwSmpVbk5EYytBVE15RnhZN0FUSVdGUlFHS3dFaUp5WWpGeFFYRlJZZEFRY09BUUVISXdZSEJoVUdCd1lIQmlNaUp5WW5KalUwTnpZM05qYzJQd0kyTnpZek1oY1dGeFlWRkFjR0J3WUhlQlFjQWdJQkJRSUNCak1sRWhNMVVFb1VIQndVYUdJSUVCRUJBd0lGQVJzQkJBTUJCd2dCQXdJZUhnc01Cd2NVQ2djQ0JoRU1EUVFDRUFRZUh3c01CZ2NVQ2djQ0JoQU5EQndVSEJzZ0lTVkxKNUlURXgwVkFnTWRFeFFjQkFGVFJVUUhJU0VXWGhRY0FwRUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29BQUFBQUFRQlEvL1lDcVFLeEFIWUFnVXV3Q2xCWVFDNEFBZ01FQXdJRWdBQUhCUVlGQndhQUFBUUFCUWNFQldjQUF3TUJZUUFCQVJSTkFBWUdBR0VJQVFBQUZRQk9HMEF1QUFJREJBTUNCSUFBQndVR0JRY0dnQUFFQUFVSEJBVm5BQU1EQVdFQUFRRVVUUUFHQmdCaENBRUFBQm9BVGxsQUZ3RUFjRzVlWEVsSFEwQXFLQmdXRGdzQWRnRjJDUWNXS3dVaUp5WW5KalUwTnpZM1BnRXpNaGNXRnhZVkZBY0dJeUluSmljdUF5Y21Md0ltSnlNbUp5SVBBUVlQQVNJSEJnOEJGUVlQQVFZUEFRWUhGUVlkQVRNeUZoVVVCaXNCRmhjVkZ4NEJGeFVlQVJjV0h3RVdGeklYRmpNeU56TTNOajhCTmo4QlBnRTNOamMrQVRNeUZ4WVZGQWNHQVlwaVJpRVhXaTRmUVR0UERYcGNPeGNEQnhBYkh3OEhCUXNCQXdRQkJnY0hEeHN4QmdRckVoSU9HQmdDQWdJS0NRUUlDUVVVQmdFUkJ3SHVGQndjRk9rSERBNEtHQVFIQ3dFT0NnVVNJZ1FERHhBVUZRWVFHUmdXRlJNSkFnTUJBd0VFSHd3Y0RnYTVNd29zRnlGM2ptaGZSQ1VlQkRJalFBY0lDd3NaSXc0R0N3RURBZ0VFQXdRRkNnb0NBZ0lCQXdrQkFnUUdBd0VHQ3dZZEVRSXNNUUlCQlFFZEZCUWRIeDBDSFJNakJBRUpDQUVMQXdJSkJRRUJBZ01HQ1FnS0RBWUJCQUVLQ1JRUUdBd09aVFFNQUFBQUFRQXMvL1lCOVFJV0FHTUE4clZnQVFZSEFVeExzQXBRV0VBdEFBSURCQU1DQklBQUJ3VUdCZ2R5QUFRQUJRY0VCV2NBQXdNQllRQUJBUlpOQUFZR0FHSUlBUUFBRlFCT0cwdXdEbEJZUUMwQUFnTUVBd0lFZ0FBSEJRWUdCM0lBQkFBRkJ3UUZad0FEQXdGaEFBRUJGazBBQmdZQVlnZ0JBQUFhQUU0YlM3QXBVRmhBTGdBQ0F3UURBZ1NBQUFjRkJnVUhCb0FBQkFBRkJ3UUZad0FEQXdGaEFBRUJGazBBQmdZQVlnZ0JBQUFhQUU0YlFDd0FBZ01FQXdJRWdBQUhCUVlGQndhQUFBRUFBd0lCQTJjQUJBQUZCd1FGWndBR0JnQmlDQUVBQUJvQVRsbFpXVUFYQVFCZFcwcEhPRFl5TUNBZkZoUU1DZ0JqQVdNSkJ4WXJCU0luTGdFMU5EYzJOell6TWhjV0Z4WVZGQWNHSXlJdkFTNEJMd0VtTHdJUEFRNENJd1lQQVFZSEJnOEJCZ2N6TWhZVkZBWXJBUllmQVRJV0ZSWVhGaDhCRmg4QkZqTVhNamMyTnpNMk16WTNNejRDUHdFMk56WXpNaGNXRlJRSEJnRVFIaHhUVnhNcWVTSWpKaWRWSlFjWURBd2JEd01DQkFZQ0dTNFBGUWtTQWdRR0FnNE5CQXNYQ1FnRUJBTzhGQndjRk1nQkJ3RUJBZ2tOQkJVR0R3VUREd29RR0JnakVBRUJBZ29EQVFFQkJBSURCUlFNRFJzTkNRY2pDZ2daalVzME5JZ3RDZ3dUT3d3TUd3OEhHQVFEQWdZQkVBZ0RBUUVFQVFFREJ3a0RCaDRRRVFzSkNod1VFeDBKRmdRREF4UVJDUkVGQ1FJQkJ3RURCZ2NCQlFNQkFnVUZCeG9NQnhVT0RBY1Jjd0FBQVFBMy8vVUNNQUxCQUVvQVFVQStSd0VDQVFGTUFBUUZBUVVFQVlBQUFRSUZBUUorQUFVRkEyRUFBd01VVFFBQ0FnQmhCZ0VBQUJvQVRnRUFNUzhwSnlNaEVBNEtDQUJLQVVvSEJ4WXJCU2N1QVNjbU5UUTJOeklYRmhjV016STJNelkzTmpVbU5TWW5KalUwTnpZM05qTXlGeFlWRkNNaUpqVTNOQ2NtSXlJSEJnY0dCdzREQnhRV0ZSNEJGUllYRmhjV0ZRWUhCZ0ZhRkU5L013NGNGQlFQU2swb0NBNEZCRHdwQWdFY2lkWXNNa1V5TkdjOU1ESVRIZ0VST0I4NktpTUxCQkVDQlFJQ0FRTUxBalplSkNTUkNqOUdDd0VNWXpzUUZSSWNBUTVYS3c0QkZEZ0lCd0lFT0RoYWZEc3ZNaFVTUHpsSFN4c1RJaDhXSXhNUEN3TVJCQWNHQlFjSkJ3SVJBd0UxSmhBVFNHdExMVHdBQUFNQUwvL21BY01DSmdBQ0FBVUFaUUJGUUVKVEFRUUZKUUVDQVFKTUFBUUZBUVVFQVlBQUFRSUZBUUorQUFVRkEyRUFBd01XVFFBQ0FnQmhCZ0VBQUJ3QVRnY0dTMHBEUVRrM0hCb1JEd1psQjJVSEJ4WXJFek0xQnlJMUV5SW5KaWNtTlRRM05qTXlGeklWRmhjVkZoY1dNelkzTXo0Qk5UWTNOamNuSmk4QklpY21KeVluSmljbU5UUTNQZ0V6TWhjV0Z4WVZGQWNHSXlJbk5DTW1KeU1tSndZakJnY0dCd1lWRnljWEZoY2VBUmNlQVJjV0Z4WVZGQWNHcXdFRkFWTkpPRElWQWdrT0dpSU5BUVFIRmhNWUlCOFZBZ3NZQXdJRkFnTUdDaGNDQkE0MklpRTVJaEFKRm1VOU15czZGd0lJRGhzaURRSUlGZ0VUS0FJREdCc0xEUU1HQVFVSkNRSUdBeDQ3SFRjb0pTNDZBWndCTWdIK2VpY2tPUWNIREE0V0pBRUtDQUVXQ0FzQkNRVVRBd1FGQlJnYURRb05BZ1lQQ0F3U01COGhHQmsyUWhvb1F3Y0hEQTRXSkFRVUZnNENBUU1UQ0JVTkVnb0RCUVlFQWdJQkN3NEpFQ2d0T1VVeE93QUJBRm4vN1FET0Fzc0FIQUE1dGhnUUFnQUJBVXhMc0J0UVdFQU1BQUVCRkUwQ0FRQUFIQUJPRzBBTUFBRUJBR0VDQVFBQUhBQk9XVUFMQVFBTkRBQWNBUndEQnhZckZ5SW1KeVluSmpVME56WTNOak1YRmhVVUJnOEJCaFVVRnhZWERnR2RGQndCQVFnS0ZRVVNEQTBNSXdJSUFnWUpDUUVCSEJNY0ZHcHJjM0pwYUJNS0JnRU1KQVlOTGhJMlRENlRhMndVSEFBQUFBSUFTdi94QU1NQ3dnQUxBQ2tBVHJVT0FRSURBVXhMc0RGUVdFQVdCQUVBQUFGaEFBRUJGRTBBQXdNV1RRQUNBaHdDVGh0QUZBQUJCQUVBQXdFQWFRQURBeFpOQUFJQ0hBSk9XVUFQQVFBZEd4UVRCd1VBQ3dFTEJRY1dLeE1pSmpVME5qTXlGaFVVQmhNV0ZSUUdCd1lqSWlZbkxnRTFORFl6TWhZZEFSUVhGaDhDRkJjV2Z4UWRIUlFVSFIwdkFRNFZCZ1VOSHdVU0NCMFVGQjBEQWdVR0FnRUJBbUFkRkJRZEhSUVVIZjNPQmdZTkhBY0JEeFI1NlhrVUhSMFVORnhXT2pvNkRnTUREQUFBQUFNQUZmL3RBU01EVWdBY0FDZ0FOQUJWdGhnUUFnQUJBVXhMc0J0UVdFQVdCUUVEQkFFQ0FRTUNhUUFCQVJSTkJnRUFBQndBVGh0QUZnVUJBd1FCQWdFREFta0FBUUVBWVFZQkFBQWNBRTVaUUJNQkFETXhMU3NuSlNFZkRRd0FIQUVjQndjV0t4Y2lKaWNtSnlZMU5EYzJOell6RnhZVkZBWVBBUVlWRkJjV0Z3NEJBeFFHSXlJbU5UUTJNeklXRnhRR0l5SW1OVFEyTXpJV25SUWNBUUVJQ2hVRkVnd05EQ01DQ0FJR0NRa0JBUnc2SFJRVUhSMFVGQjJzSFJRVUhSMFVGQjBUSEJScWEzTnlhV2dUQ2dZQkRDUUdEUzRTTmt3K2sydHNGQndETkJRZEhSUVVIUjBYRkIwZEZCUWRIUUFBQUFBRC8vZi84UUVGQXJVQUhRQXBBRFVBS1VBbUFnRUFBUUZNQkFFQ0FnTmhCUUVEQXhSTkFBRUJGazBBQUFBY0FFNGtKQ1F2SnhjR0J4d3JOeFlWRkFZSEJpTWlKaWN1QVRVME5qTXlGaDBCRkJjV0h3SVVGeFlERkFZaklpWTFORFl6TWhZWEZBWWpJaVkxTkRZek1oYkNBUTRWQmdVTkh3VVNDQjBVRkIwREFnVUdBZ0VCWngwVUZCMGRGQlFkckIwVUZCMGRGQlFkTGdZR0RSd0hBUThVZWVsNUZCMGRGRFJjVmpvNk9nNERBd3dDU1JRZEhSUVVIUjBYRkIwZEZCUWRIUUFBQWdCWEFBSUIrUUsyQUFrQU1RQTVRRFltQXdJQkJCUUJBZ0VDVEFBQkJBSUVBUUtBQUFRRUZFMERBUUlDQUdFRkFRQUFGUUJPQ3dvcUtCMGJHaGdSRHdveEN6RUdCeFlyQVJZZkFTY3VBalVVQXlZbkpqVTBNeklYRmhjSEZCWVhNaDRCTXpJM05qYzJOVFFuSmljME5qTXlGeFlWRkFjT0FRSGtCQUlCQVFFREE5SW9KVzB4R1JBSkFRSVVFUWNaQndoSkp3WUdEZzhDQWhrVkxRY1REUTE2QXBJVENBZ0ZCUThNQXdIOWJBRU5JbnRKRkFvT0hob2xCUUlDU0E4alVHMXlZQVFTRXlBeWFIZGpZMmx5QUFMLzMvOGtBTFFDdVFBTEFESUFacllvSHdJREJBRk1TN0FiVUZoQUhBVUJBQUFCWVFBQkFSUk5BQVFFRmswQUF3TUNZUVlCQWdJWUFrNGJRQjhBQkFBREFBUURnQVVCQUFBQllRQUJBUlJOQUFNREFtRUdBUUlDR0FKT1dVQVZEUXdCQUNRaUZCSU1NZzB5QndVQUN3RUxCd2NXS3hNaUpqVTBOak15RmhVVUJnTWlKeVkxTkRZN0FUSTJOelUyUHdFMk5TWXZBVDRCTXpJV0Z4UVhGUllWRkFjR0J3WUhCbW9VSEJ3VUZCMGRaUm9TRGhzVURRUU5DZ2dOQVFjQkJ3Y0JIQlFVSEFFQ0RBTURKQkVnSEFKWUhCUVVIUjBVRkJ6OHpCQU1GUk1lRFJRQkVVVU1ObDVqV0lVVkhCd1ZIQjBHZDM4K1BXQllKUmdWQUFJQUZQLzJCQlFDdkFBdEFJVUJVMHV3R1ZCWVFCUTdBUU1IY3dFTEEzVlpBZ0VMUmpVQ0FBRUVUQnRBRkRzQkF3ZHpBUXNEZFZrQ0FRdEdOUUlHQVFSTVdVdXdDbEJZUUNVQUN3QUJBQXNCWndRQkF3TUhZUW9KQ0FNSEJ4Uk5CZ0VBQUFKaURRd0ZBd0lDRlFKT0cwdXdFMUJZUUNVQUN3QUJBQXNCWndRQkF3TUhZUW9KQ0FNSEJ4Uk5CZ0VBQUFKaURRd0ZBd0lDR2dKT0cwdXdHVkJZUUM4QUN3QUJBQXNCWndRQkF3TUhZUW9KQ0FNSEJ4Uk5CZ0VBQUFWaUFBVUZGVTBHQVFBQUFtSU5EQUlDQWhvQ1RodExzQjVRV0VBdEFBc0FBUVlMQVdjRUFRTURCMkVLQ1FnREJ3Y1VUUUFHQmdWaUFBVUZGVTBBQUFBQ1lRME1BZ0lDR2dKT0cwQXhBQXNBQVFZTEFXY0FDZ29VVFFRQkF3TUhZUWtJQWdjSEZFMEFCZ1lGWWdBRkJSVk5BQUFBQW1FTkRBSUNBaG9DVGxsWldWbEFJQzR1TG9VdWczcDJiV3RxYVdobVpHTk9UVWxIUVVBK1BERXZMU2doRGdjWEt3RVJGekkvQVRZM1BnRTNOajhCTmpjMk56VTJQd0UyTlRRbU5TWWpKeVl2QVNZbklpNENJeVlqSmlzQklnTUdJeUltTlNZbkpqVTBOelkxQnljaUJ3WWpGd1lIQmdjQ0l5SW1OVFEyTXpZM1BnRTNOamMyTnpZM05qYzJOelFtTlRRM05qTVhOak15RnpjMk16SVdGeFlWRkFjVUJ6WXpOak15RnhZWEZoMEJGQWNHSXlJQ2tTUXFGUk1oS3dVSEF4TUxCQllDQndVR0FnRUJBUVlCQndVS0Fnb0xBUUVaR3dJTkVDWW5HaW9sQ0FvVUhBRUNBZ1VHTm9JZEZBd05CQUVFQ0FRcHBTa2NIQ2tSREI4TEFSY0NCd0VEQlFNR0FnRURCd29tRGo1REp3dzBIQ01kTXdjQ0F3RU9JUlFWVGtzN0tTc2dVdWtqQVdYKzlRRURBZ1FPQVFRQkNBa0RFd2NKQ3dFTkRnTUlGeEVGQkJjTkNBZ0JCd1VCQ0FVREF2NlZBeHdWSUI4WE5EQ1JkSFFFQVFNQlhCc2FMVkwrdngwVUZCd0RCaG9hQVVzTkpnc2JRVEVlQ2lRU0pCTWpJaU1CQlFFQkJCa2JEdzVUU0FZR0FnRVNEeTA0U0FwQU9JQUFBZ0F5Ly9VRHVBSWdBQlVBVXdBK1FEc25BUUFCQVV3QUJ3QUJBQWNCWndBREF3WmZBQVlHRmswRkFRQUFBbUVFQ0FJQ0Fob0NUaGNXUzBsRlFqSXdMQ29pSVJaVEYxTS9FZ2tIR0NzbEZoY3lOekkzTmpjeU56WTFOQ2NtSnlZbklnY2pFeWNtSnlZMU5EYzJOU1lESXhVV0ZSUUhCZ2NHSXlJbU5UUTJOekkzTmpjeU56SStBVGMyTkRjMk5TYzBNemN5RnhZVkZ6Y3lGeFlWRkFjR0J3WUNJd0VCbXlJRUlDY1lBd29GREJBTVJGQTZFU3M3ZEFzTEdRUURBZ085QXdVREhTMVJGQndjRkE0Q0NRZ0NCZ0lLQVFJREFRY0VURXFqR1MwQlNvcG5YQk1zYXpPYU14WUhCZ2NRREFjVElBd1FCUmdKQWY3NUFRRUdEeG9ORVFzTE5BRXlKRjFkTHpNMEpESWNGQlFiQVFJQkF3TUhBd0VGQkFNbGF0ZERBUVVKUm5BQ0xpMW5LeUJDRWdnQUFBSUFhUC80QkFvQ3dRQWNBRklCc2t1d0xWQllRQkF6QVFjRU9nRUZCeVlpR2dNQkJRTk1HMEFRTXdFSEJEb0JCUWNtSWhvREFnVURURmxMc0F4UVdFQWxBQWNGQVFkWkFBVUtBZ0lCQUFVQmFRWUJCQVFVVFFzQkFBQURZUWtJREFNREF4VURUaHRMc0JCUVdFQWxBQWNGQVFkWkFBVUtBZ0lCQUFVQmFRWUJCQVFVVFFzQkFBQURZUWtJREFNREF4b0RUaHRMc0JKUVdFQW1BQWNDQVFFS0J3RnBBQVVBQ2dBRkNtY0dBUVFFRkUwTEFRQUFBMkVKQ0F3REF3TWFBMDRiUzdBVFVGaEFLZ0FIQWdFQkNnY0JhUUFGQUFvQUJRcG5BQVlHRkUwQUJBUVVUUXNCQUFBRFlRa0lEQU1EQXhvRFRodExzQnRRV0VBdUFBY0NBUUVLQndGcEFBVUFDZ0FGQ21jQUJnWVVUUUFFQkJSTkFBa0pGVTBMQVFBQUEyRUlEQUlEQXhvRFRodExzQzFRV0VBdUFBY0NBUUVLQndGcEFBVUFDZ0FGQ21jQUJnWVVUUUFFQkJSTkN3RUFBQWhoQ1FFSUNCVk5EQUVEQXhvRFRodEFOUUFCQWdvQ0FRcUFBQWNBQWdFSEFta0FCUUFLQUFVS1p3QUdCaFJOQUFRRUZFMExBUUFBQ0dFSkFRZ0lGVTBNQVFNREdnTk9XVmxaV1ZsWlFDRWVIUUVBVDA1S1NFZEZQVHMyTlRFd0xDb2RVaDVTR1JjV0ZRQWNBUndOQnhZckpUSTNQZ0UzTmpjMk56WTFOQ1kxSmlNbkppOEJKaU1tSXlJbkJ4VUZMZ0UxTmpVbU5UUTNOamMrQVRNZUFSVUdCd1VtSnpRMk14WVhGaGMyTXpJWEZoY1dGUlFIQmlNaUp5TWlKalUyTnlVUUJ3WUNxMWRIQlFjREV3MFlBaFlCQmdFSENod09IUTBXWVRRSUFmNFFGQnNNQlFVQkJBRWRGQlVhQXdFQlVBRUpIeFFWREJVREUwZE9TenNwS3lCUzZTZ29FUlljQndQK3J4c09ZeGNCQkFFSUN4UUhIRFlSQlFRWERSQU5CUWtGQVZxeGJBRWNGYW1wQ1FzUUNXNXVGUm9CSEJSaVlBcHViaFFhQWc0YXlRTVNEeTA0U0VvNGdBTWVGWStQQ3Y2L0dRMEFBQUFBQWdBOC8rd0R1QUlmQUJNQVZnQ2FTN0FaVUZoQUVEY3pBZ2dGSUFFQUF5MFpBZ0lBQTB3YlFCQTNNd0lJQlNBQkFBTXRHUUlFQUFOTVdVdXdHVkJZUUNNQUNBQUJBd2dCWndBR0FBTUFCZ05uQndFRkJSWk5BQUFBQW1JRUNRSUNBaHdDVGh0QUp3QUlBQUVEQ0FGbkFBWUFBd0FHQTJjSEFRVUZGazBBQkFRYVRRQUFBQUppQ1FFQ0Fod0NUbGxBRnhVVVRreEpSMFJCUERvcktTVWlGRllWVmo4UUNnY1lLeVV5TnpJM05qY3lOelkxTkNjbUp5WW5JZ2NqQWlNaUp5WTFORFkvQVRZMUp5WTFKeVlqRlJRSEJpTWlKajBCTmpVbk5EOEJOQzhCTkRjMk16SVhGaFVQQVRJWE16VTBOak15RmgwQk56SVhGaFVVQndZSEJnSWluaUlFSUNjWUF3b0ZEQkFNUkZBNkVTc3dDd1lISXdNQkFRTUJBMFFadkJjTkZSSWVDZ0VDQVFFQ0J3c2NLQWNGQVFIRUpUQWNGQk1kVFlwblhCTXNhMFZSQndZSEVBd0hFeUFNRUFVWUNRSCs4QUlMSkFZTUJna1pGeHNoTWdFQkVhd2FEaHNUQWwxZExtNElMdzhPR1E4UEZTTW9LQ2hHQXJFVEhSMFRrUUl1TFdjcklFSVNDd0FBQVFBYy8rSUN1UUswQUZNQXRVdXdMVkJZUUE4WkFRWUVUMDA3T0NNRkJnQUdBa3diUUE4WkFRY0VUMDA3T0NNRkJnQUdBa3haUzdBcFVGaEFIUUFFQ0FjQ0JnQUVCbWtEQVFFQkFsOEFBZ0lVVFFVSkFnQUFIQUJPRzB1d0xWQllRQjBGQ1FJQUJnQ0dBQVFJQndJR0FBUUdhUU1CQVFFQ1h3QUNBaFFCVGh0QUlnZ0JCZ2NBQndaeUJRa0NBQUNFQUFRQUJ3WUVCMmtEQVFFQkFsOEFBZ0lVQVU1WldVQVpBUUJLU1VoR1JFTXZMUndhR0JZU0R3c0pBRk1CVXdvSEZpc1hJaVkxTkRjMk5UUW5JeUltTlRRMk15RXlGaFVVQmlNaEZUWXpNaGNXRnhZVkZBY0dIUUVVQndZZEFSUUdJeUltTlRRM05qMEJORDhCTmpVbkppY21KeUluSmlNbkppY0hCaU1IQmdjVUJ3WVZEZ0hpRkJ3RUJRTnNGQndjRkFIWkV4MGRFLzcwTWpkZlFHTW1Ed0lDQXdZZEV4UWNCQVVCQVFJQ0J4TUNCZ0lCTUJZUkhUd1ZGQWtHR1JnQkJnRWNIaHdVT2psRVk0V2pIUk1VSEJ3VUV4MmVDdzBTT2lBaURRd2xKU3dOR0NVc0N4UWNIU0FoSUJvbE1Cd2JEQTRQQkFrSUFnSUJEd0lEQVFFQ0FRVUhyeFJVS1JRY0FBQUFBQUgvN1AvdkFoNEM5QUJoQVk5THNCVlFXRUFTRUFFQ0F3WUJBUUlpQVFnR1hnRUFDQVJNRzB1d0dWQllRQklRQVFJRUJnRUJBaUlCQ0FaZUFRQUlCRXdiUUJJUUFRSUVCZ0VCQlNJQkNBWmVBUUFJQkV4WldVdXdDbEJZUUNNRkFRRUJBbUVFQVFJQ0ZFMEFDQWdHWVFBR0JoWk5BQU1EQUdFSENRSUFBQlVBVGh0THNCVlFXRUFqQlFFQkFRSmhCQUVDQWhSTkFBZ0lCbUVBQmdZV1RRQURBd0JoQndrQ0FBQWFBRTRiUzdBWlVGaEFMUVVCQVFFRVh3QUVCQlJOQlFFQkFRSmhBQUlDRkUwQUNBZ0dZUUFHQmhaTkFBTURBR0VIQ1FJQUFCb0FUaHRMc0NKUVdFQXJBQVVGQkY4QUJBUVVUUUFCQVFKaEFBSUNGRTBBQ0FnR1lRQUdCaFpOQUFNREFHRUhDUUlBQUJvQVRodExzQzFRV0VBdkFBVUZCRjhBQkFRVVRRQUJBUUpoQUFJQ0ZFMEFDQWdHWVFBR0JoWk5BQU1EQUdFSkFRQUFHazBBQndjY0IwNGJRQzBBQWdBQkJnSUJhUUFGQlFSZkFBUUVGRTBBQ0FnR1lRQUdCaFpOQUFNREFHRUpBUUFBR2swQUJ3Y2NCMDVaV1ZsWldVQVpBUUJNU3pJd0p5VWdIaG9ZRlJNUERRa0hBR0VCWVFvSEZpc1hJaVluSmowQkJpTWlKalUwTmpjeU56VTBOak15RmgwQk16SVdGUlFHS3dFR0ZUWTNOak1XRnhZWEZoVVVCdzRCSXlJbU5UWTFOQzhCSmljdUFTOEJKaWNtTHdFakppOEJKaU1uSWdjaUJ4VWpCZ2NpQndZVUJnY0dEd0VHQnhjVUJvQVVHd0VER0JrVUhCd1VHUmtjRkJNZGhSTWRIUk9GQVFzTU16MDhNR2tRQlFVQkd4UVRIUVVEQWdvSUFnRUJBd3NMQWhjREFRb0lCUXdFRHhnRUNoRUJDZ2NCQlE0RUFnZ0ZBUkFKQXh3S0hCUzh6NThDSEJRVUd3RUNGQlFjSEJRTUhCUVRIU0JEQ1FjY0FTSlBvVFkyRDNRVUhCd1VlQmtuSmhNMUZnUUVBUWNYRFFjVEF3Z0VBd01DQWdZQkJRVUZEZ0VFQkEwTUFpTSs3eFFjQUFBQUFBSUFadi8xQW1nRG53QS9BR3dBemt1d0cxQllRQTVtVWdJRUJUVWlFZzRFQUFJQ1RCdEFEbVpTQWdRRk5TSVNEZ1FCQWdKTVdVdXdHMUJZUUJnQUJRUUZoUUFFQWdTRkF3RUNBaFJOQVFZQ0FBQWFBRTRiUzdBZVVGaEFIQUFGQkFXRkFBUUNCSVVEQVFJQ0ZFMEFBUUVWVFFZQkFBQWFBRTRiUzdBeFVGaEFJQUFGQkFXRkFBUURCSVVBQXdNVVRRQUNBaFJOQUFFQkZVMEdBUUFBR2dCT0cwQWdBQVVFQllVQUJBTUVoUUFEQWdPRkFBSUNGRTBBQVFFVlRRWUJBQUFhQUU1WldWbEFFd0VBWUY5TVN5d3FIeDBZRmdBL0FUOEhCeFlyQlNJbkppOEJKaThCTGdJbkppY2pCd1lQQVJVVUJpTWlKalVSTkRZek1oWWRBVFkzTmpjMlB3RTJNeklYRmhVVUJ3WUhCZ2NlQVJjV0Z4WVZGQWNHQXdjakJnY0dGUVlIQmdjR0l5SW5KaWNtTlRRM05qYzJOelkvQWpZM05qTXlGeFlYRmhVVUJ3WUhCZ2NDTnh3UE16RUtIMWtVQXdZRUFSRU1BUUlJRWdJZEZCUWRIUlFVSFVGS0pSa2VJQW9UR2cwTkdBZzhWRUUwSm5JZFNEa0hHUXh1QXdFSENBRURBaDRlQ3d3SEJ4UUtCd0lHRVF3TkJBSVFCQjRmQ3d3R0J4UUtCd0lHRUEwTUN4bFhRZzBqUnhFREJBTUJEUVVFQ1I0RDhCTWRIUk1DV3hRZEhSVE5RekVZRlJvakN4MElFQm9OREVVOE1pOFpYaUpaWkF3TUhBOEhBemtDQmdVQkFRSUJHQmNIQWdjUURBMEdCeElMQ1FvREFnd0VGeGNIQWdZUkN3MEdCeE1LQ2dvQUFBQUFBZ0JMLy9VQ0JBTUNBQzRBV3dET1M3QW9VRmhBRFZWQkFnUUZLUnNOQXdBQkFrd2JRQTFWUVFJRUJTa2JEUU1BQWdKTVdVdXdHMUJZUUJnQUJRUUZoUUFFQVFTRkFnRUJBUlpOQXdZQ0FBQWFBRTRiUzdBb1VGaEFHQUFGQkFXRkFBUUJCSVVDQVFFQkFHRURCZ0lBQUJvQVRodExzQ2xRV0VBakFBVUVCWVVBQkFFRWhRQUJBUUJoQXdZQ0FBQWFUUUFDQWhaTkF3WUNBQUFhQUU0YlFDTUFCUVFGaFFBRUFRU0ZBQUVCQUdFREJnSUFBQnBOQUFJQ0FHRURCZ0lBQUJvQVRsbFpXVUFUQVFCUFRqczZKQ0lVRWdrSEFDNEJMZ2NIRmlzWElpWTFBalUwTmpNeUZoVVVGelkzTmpjMk56SVdGeFFIQmc4QkZoOEJGaGNVQmlNaUx3RW1Md0VHSXhVVUJoTUhJd1lIQmhVR0J3WUhCaU1pSnlZbkpqVTBOelkzTmpjMlB3STJOell6TWhjV0Z4WVZGQWNHQndZSGZSUWNBaHdVRkIwQ0p5WlZZQkFURkJ3QkQyQlZIV0ZPRGcwQkhSWVREUTluUGdrdUFoMy9Bd0VIQ0FFREFoNGVDd3dIQnhRS0J3SUdFUXdOQkFJUUJCNGZDd3dHQnhRS0J3SUdFQTBNQ3gwVUFVcVRGQjBkRkpWTUtDbGRVUTBCSEJRVkRsRmVIbEJqRVJBVEV4ME9FWDB2Qml4M0ZCMENuQUlHQlFFQkFnRVlGd2NDQnhBTURRWUhFZ3NKQ2dNQ0RBUVhGd2NDQmhFTERRWUhFd29LQ2dBQUFBQUNBR1AvK0FLQ0E1OEFWUUNDQVNWTHNCQlFXRUFOU1VZN09SNE9EQU1JQUFFQlRCdExzQzFRV0VBTlNVWTdPUjRPREFNSUF3RUJUQnRBRFVsR096a2VEZ3dEQ0FNQ0FVeFpXVXV3REZCWVFCZ0FCQVVFaFFBRkFRV0ZBZ0VCQVJSTkF3WUNBQUFWQUU0YlM3QVFVRmhBR0FBRUJRU0ZBQVVCQllVQ0FRRUJGRTBEQmdJQUFCb0FUaHRMc0NSUVdFQWNBQVFGQklVQUJRRUZoUUlCQVFFVVRRQURBeFZOQmdFQUFCb0FUaHRMc0NsUVdFQWNBQVFGQklVQUJRRUZoUUFEQXdGaEFnRUJBUlJOQmdFQUFCb0FUaHRMc0MxUVdFQWRBQVFGQklVQUJRRUZoUUFEQUFFRFdRSUJBUUVBWVFZQkFBQWFBRTRiUUNBQUJBVUVoUUFGQVFXRkFBTURBbUVBQWdJVVRRQUJBUUJoQmdFQUFCb0FUbGxaV1ZsWlFCTUJBSGgyWkdKQVBpNHNFaEFBVlFGVkJ3Y1dLeGNpSmowQk5qVTBKeVkxTkNjME56UTJNeklXRlFZSEZBWVZGQmNWRmhVME16WTNQZ0UzTmpjMk56WTNOak15RmhVV0ZRWUhGQTRCRlJjV0ZSUUhCaU1pSmljbU5UUTNOalVuQmdjR0J3WVBBUVlIQmdjR0V5Y21KeVluSmpVME56WTNOak15RnhZZkFoWVhGaGNXRnhZVkZBY0dCd1lqSWljbUp5WW5OQ2NtSnlPVUVoOE1BZ01CQngwVUZCMEJCQUlEQWdFSEd3d0NBU1FYZTJjRkJ3OFZGQndEQVFRQ0FnRUNCdzBiRFI0RkJRSUdBUWNOQzAxRkpoRVdJUzRYRFk4RERBMFFCZ0lIQ2hRSEJnd0xIeDRFRUFNRERRd1JCZ0lIQ2hRSEJ3d0xIaDRDQXdFSUJ3RUlHeFFDYm00dUxUTnBEdzVkRmhzZEhCVVJFUVlIU3p4Y0lUNCtBUTBpRGdRQk1DUEJhd1lERUJ3Vm5abE1TeElpSVJFUkJBME5EaFlRRXlNakZ4aFdtNElIRWd4eWFERVZIVHhTRnhRRE5nSUtDZ29UQndZTkN4RUdBZ2NYRndRTUFnTUtDUXNTQndZTkRCQUhBZ2NYR0FFQ0FRRUZCZ0FDQUVELzlnSWVBd0lBWkFDUkFQUkxzQ2hRV0VBTld6NDZNQzBzREFRSUFBSUJUQnRBRFZzK09qQXRMQXdFQ0FFQ0FVeFpTN0FLVUZoQUdBQUVCUVNGQUFVQ0JZVURBUUlDRmswQkJnSUFBQlVBVGh0THNBNVFXRUFZQUFRRkJJVUFCUUlGaFFNQkFnSVdUUUVHQWdBQUdnQk9HMHV3S0ZCWVFDTUFCQVVFaFFBRkF3V0ZBQU1EQUdFQkJnSUFBQnBOQUFJQ0ZrMEJCZ0lBQUJvQVRodExzREZRV0VBZ0FBUUZCSVVBQlFNRmhRQUNBaFpOQUFFQkZVMEFBd01BWVFZQkFBQWFBRTRiUUNBQUJBVUVoUUFGQXdXRkFBSUNBV0VBQVFFVlRRQURBd0JoQmdFQUFCb0FUbGxaV1ZsQUV3RUFoNFZ6Y1ZaVU5UTWVIUUJrQVdRSEJ4WXJCU0luSmpVME5qVW5KalUwTndZUEFRWVBBUVlIQmdjVURnRUhCZ2NHSXlJbUp5WTFORGMyTlRRbk5UUTNOU2NtTlRRM05qTXlIZ0VWRkE4QkZSWVZQd0V5UGdFMU5qYzJOelkzUGdFMU56WS9BVFUzTmpNeUZ4WVZGQWNHRlI4QkJ4Y1VCd1lCSnlZbkppY21OVFEzTmpjMk16SVhGaDhDRmhjV0Z4WVhGaFVVQndZSEJpTWlKeVluSmljMEp5WW5Jd0hzSndrRUFnRUNCU2RuQWdNQ0N4MGVEUXdDQWdNYkNoRVpBeUVLQkFJREFRTUJBUWdMSFF3ZUNBSUJBUUlHQVFFQ0V3Z1lHMDBjQWdZTEhCRU5DUThiRXc4VUF3TUJBUUlDQ0F2K3B3TU1EUkFHQWdjS0ZBY0dEQXNmSGdRUUF3TU5EQkVHQWdjS0ZBY0hEQXNlSGdJREFRZ0hBUW9qSFIwRkR4d1hKeWMwWnpKM0F3TUVFUzhlREE4QkFnUURKaFFYQXg4VEZBME9GeGVuR1ZRWUpCRURBd1VORHhZUUp4TU9EU1pQSG5VQkNBSUNBUmdRSXg5WUl3TUhBUTRvRXhBQkRoZ09FWUVrSlZjZlBSeEFIZzRPRlFLYkFnb0tDaE1IQmcwTEVRWUNCeGNYQkF3Q0F3b0pDeElIQmcwTUVBY0NCeGNZQVFJQkFRVUdBQUlBUC8vMEFvWURvd0JlQUhrQkJVQU1iMmtDQndaTFJRSUNBd0pNUzdBS1VGaEFJd2dCQmdjSEJuQUFCd29CQlFNSEJXb0VBUU1ERkUwQUFnSUFZUUVKQWdBQUdnQk9HMHV3REZCWVFDTUlBUVlIQndad0FBY0tBUVVEQndWcUJBRURBeFJOQUFJQ0FHRUJDUUlBQUJVQVRodExzQkpRV0VBakNBRUdCd2NHY0FBSENnRUZBd2NGYWdRQkF3TVVUUUFDQWdCaEFRa0NBQUFhQUU0YlM3QWJVRmhBSWdnQkJnY0doUUFIQ2dFRkF3Y0ZhZ1FCQXdNVVRRQUNBZ0JoQVFrQ0FBQWFBRTRiUUNZQUNBWUloUUFHQndhRkFBY0tBUVVEQndWcUJBRURBeFJOQUFJQ0FHRUJDUUlBQUJvQVRsbFpXVmxBSFdCZkFRQjBjbTVzYUdaZmVXQjVVbEFxS0FzSUJBSUFYZ0ZlQ3djV0t4Y2lKaU1pSmpVME5qY1hNajhDUGdFek5qOEJOamMrQVRVbkppY21KeVluTGdFbk5TWW5QZ0V6TWg0QkZ4UXpIZ0VmQVJZVkZoY1dGeFVYRmhjeUZoOEJGaGNXRnpVMk5UWS9BVFEzTmpRMk16SVdGeFFQQVFZSEJnY0dCd1lUSWljbU5UUTNOak15RnhRWEZqTXlOelEzTmpNeUZoVVVCd2JOR1NFY0ZSd2NGVmc1QndjTkRCa0JFQThTRnc4REFnb1NCV1pPU2g0TkFRRVlBZ0ViRkJRZEF3TUJBUUlCREFJVElnd1BCQnc5QVFJQ0FoTTJFd29DS3g4Q0FnSWRGQlFiQVJFQkRSUTJhREU5TlVsZklRa1dEUTBwQ0FJQ0pUSUVIUXNLRFNJc0pnd0RIUlFVSEFFREFRSURBZ2tJQ2c4VkZBUURBUVlKQkROWVcxZ2dBUUVCTUNnVkhCd2xCd0VFQkFFZUFnSTZOQlFVQVFVaU5BSUJBUkFkQ1FnQkFnSm52QTRNQ3hZcUhCd1ZUa3dHU2tqQVdpb1FEQUw2UlJVWklCRUlLZzhHRENFaERRVVlHejBsSUFBQUFnQW0veVVCOXdNR0FENEFXUUd1UUExUFNRSUhCaXduQ3dNREFBSk1TN0FLVUZoQUpBZ0JCZ2NIQm5BSkFRVUZCMkVBQndjVVRRRUJBQUFXVFFRQkF3TUNZZ0FDQWhnQ1RodExzQXhRV0VBb0NBRUdCd2NHY0FrQkJRVUhZUUFIQnhSTkFBRUJGazBBQUFBV1RRUUJBd01DWWdBQ0FoZ0NUaHRMc0E1UVdFQWtDQUVHQndjR2NBa0JCUVVIWVFBSEJ4Uk5BUUVBQUJaTkJBRURBd0ppQUFJQ0dBSk9HMHV3RUZCWVFDc0lBUVlIQndad0FBQUJBd0VBQTRBSkFRVUZCMkVBQndjVVRRQUJBUlpOQkFFREF3SmlBQUlDR0FKT0cwdXdFbEJZUUNnSUFRWUhCd1p3Q1FFRkJRZGhBQWNIRkUwQUFRRVdUUUFBQUJaTkJBRURBd0ppQUFJQ0dBSk9HMHV3RlZCWVFDY0lBUVlIQm9VSkFRVUZCMkVBQndjVVRRQUJBUlpOQUFBQUZrMEVBUU1EQW1JQUFnSVlBazRiUzdBYlVGaEFLZ2dCQmdjR2hRQUFBUU1CQUFPQUNRRUZCUWRoQUFjSEZFMEFBUUVXVFFRQkF3TUNZZ0FDQWhnQ1RodEFMZ0FJQmdpRkFBWUhCb1VBQUFFREFRQURnQWtCQlFVSFlRQUhCeFJOQUFFQkZrMEVBUU1EQW1JQUFnSVlBazVaV1ZsWldWbFpRQmxBUDFSU1RreElSajlaUUZrOVBEczZOelV3TGhnV0NnY1dLeGMzSXpZM05qY3lORGMyTnlZbkppY21KeVkxTkRjMk16SVhGaGNXRnhZZkFSNEJGeFlYRmhjMlB3RTJOejRCTXpJV0ZRSUhCaU1pTlRRMk14WXpOaE1pSnlZMU5EYzJNeklYRkJjV016STNORGMyTXpJV0ZSUUhCcmtEQWc0VUlSY0JBUWtPVlRzbUxoUUlCeGdNRFI0TUZSSTVOZ01GQVFnUEJnUUNCd3NiRXdJTUJBSWFGUk1lRXJ0UmFrY2NGUTBiR1cxZklRa1dEUTBwQ0FJQ0pUSUVIUXNLRFNJc0ptMEJCQTRYSGdJQkNSb29lRTJGT3hJTkRSc1BCaGd5Tkt0T0JnUURDUTRHQWdJRkJVT0JEMTVmRlJ3Y0ZmNGNvVUV5RXg0QkF3TEhSUlVaSUJFSUtnOEdEQ0VoRFFVWUd6MGxJQUFBQUFBQkFHLy9MQUtSQXIwQU1RQmlTN0FvVUZpM0hSWUlBd0lCQVV3YnR4MFdDQU1DQXdGTVdVdXdLRkJZUUJjREFRRUJGRTBBQWdJQVlBUUJBQUFWVFFBRkJSZ0ZUaHRBR3dBQkFSUk5BQU1ERkUwQUFnSUFZQVFCQUFBVlRRQUZCUmdGVGxsQUNTTktOU1kzSUFZSEhDc0ZJeUluSmdNMEp6VTJPd0V5RnhZVkZBY1RJQmMwQXpRM05qc0JNaGNHRlJRWEZoVVVCd1lqSWljakZSUUdJeUltTlFGU21qSVBCZ0VCRGgwTUZCQU1Bd0VCTnlRTUJBNGVDUndRQVFjREJBcElBU1poSEJRVUhRc2dJZ0dGcWlJTktCY0tTQ1k0L21FQ2tnR0dCaHdvSmkwdmQ0aFNQRkk0S2dHWUZCMGRGQUFCQUR6L0xBSDJBaVFBUmdBMVFESStJUjBXQkFRREFVd0FBUUVCU3dZQkF3TVdUUVVCQkFRQllRY0NBZ0VCRlUwQUFBQVlBRTRyS0JKcUxTRVRJd2dISGlzRkZSUUdJeUltUFFFakJpTXVBVFUwTmpVMFB3RTBKelUwTmpNeUZoY1dGUlFIQmhVVUJ4VTNNajhCTWhjV015WTFQd0UyTlQ0Qk16SVdGUlFQQVJjV0ZSUUhCaU1uSWdGWUhSUVVIVElZUUJVYkJBRUJCQjhSRkJ3QkJBSUJBaTRURWl3aElSc2JCQUVCQWdFY0V4UWNBZ0VCQXpVWUdTOEZCcDBVSFIwVW5RSUJIU0VPSGl1NU95VW1KZ0lUR3gwVEl5TVhHRGwyV3hvQkFRRUJBd01nSkRsZ1lXQVVIQndVWEYyb0xBa1ZRZ3dGQXdBQUFBRUFUdi9yQWpNRG5RQWJBRU8xQkFFQkFBRk1TN0FtVUZoQUZRQURBZ09GQUFBQUFsOEFBZ0lVVFFBQkFSd0JUaHRBRXdBREFnT0ZBQUlBQUFFQ0FHb0FBUUVjQVU1WnRpTWxGeElFQnhvckFSUUhJQWNHRlFJVkZBY2lOUk0yTnpZM0lUVTBOak15RmgwQkZBSXlLUDdCRFFRSktEc0pCQTBUVWdFRUhSUVVIUUtSSFE0Q1NpSCtXRG9kRHpzQjA2VU1HUVdsRkJ3Y0ZNTUdBQUVBUmdBQUFjb0Mrd0F3QUNsQUpoY0JBZ0FCVEFBRkF3V0ZBUUVBQUFOaEJBRURBeFpOQUFJQ0ZRSk9JekV1S2lFeEJnY2NLd0FHS3dFaUp5WWpGeFFYRlJZZEFRY09BU01pSmpVME56WTNOQ1kxSnpRM1BnRXpNaGNXT3dFMU5EWXpNaFlkQVJRQnlod1VhR0lJRUJFQkF3SUZBUnNVRkJ3Q0FnRUZBZ0lHTXlVU0V6VlFHQjBVRkIwQjRCd0VBVk5GUkFjaElSWmVGQndjRkJ3YklDRWxTeWVTRXhNZEZRSURweFFjSEJTNUNBQUFBQUlBVWYvNEF1TUN0UUJIQUhZQWhVQUtOQUVFQXdzQkJ3RUNURXV3REZCWVFDZ0FCQU1CQXdRQmdBSUJBUUFIQmdFSFp3QURBd1ZoQUFVRkZFMEpBUVlHQUdFSUFRQUFGUUJPRzBBb0FBUURBUU1FQVlBQ0FRRUFCd1lCQjJjQUF3TUZZUUFGQlJSTkNRRUdCZ0JoQ0FFQUFCb0FUbGxBRzBsSUFRQmJXVWgyU1hZN09URXZJaUFTRVJBT0FFY0JSd29IRmlzRklpY21KeVluTkNjbVBRRTJOell6TWhZaEppYzBKeVluTlM4Q0ppOEJKaU1pQnlNR0J5SVBBUVlISXdZSEJpTWlKeVkxTkRjMk56WXpNaGNXRng0QkZSUUdCd1lIQmljL0FUWTNNelkvQVRZL0FUWTNOVFkvQVNBbkhnRVZGaGNlQWhjV0Z6SVdId0VXSHdNV0Z4WXlGVE1XQVk4cU9Dd2thaHdCQlFVdERnOEpGZ0dhQndzQ0RSY2dEaFVQRUFnTEVSTVZCREVnQWdZTURRc0JGaEFMREJzUUJ3TWRSRmxZakU4OERoRVdGaEFjaEVKT0lBSUxGUUVWRVFvVEJnWVFGUVVNQnY1cUVnRUJDZ29CQVFFQ0RCb0JBUUVIQ1FZSENRb2FEQUVHQVJ3SUNRVVlVcDRDQVJzYUNUd0xBZ0llSGdJQ0hpQUJJQWtLQmdNQkFRSUpEQU1GQndnaUNnY1pDd3NJQjBNYkoydFJaQVFhRWhFYUJMNVlLR0VDQVFFSUNnd0pFUW9IRURBQkNDd1pBUUlJQXpRWEFRVUNCQjRsQWdFSkNRUUdCZ01HQVFFQkJBQUFBZ0FkLytvQ1BBSWRBRUFBYndCU1FFOHBBUUlFT1FFR0FWcFRBZ1VHQTB3QUF3SUJBZ01CZ0FBQkFBWUZBUVpuQUFJQ0JHRUFCQVFXVFFnQkJRVUFZUWNCQUFBY0FFNUNRUUlBV1ZWQmIwSnZNQzRtSkI4ZERnZ0FRQUpBQ1FjV0t4Y2pJaWNtTlRRM05qTVhNaGN5Tnk0Q0x3RW1Md0UxSnlZbklpY21JeUlIRGdFSEJpTWlKeVkxTkRjMk56WXpNaGNXRnhZWEZoVVVCeFlWRkFjR0J3WW5NajhCTmpjMk56TTJQd0UrQVQ4Qk5qOENOU01HS3dFVkZoVVhGaGNlQWg4QkZoY1VId0VXTWg0Qkh3SDlDM2s1SXdVTlNCTXhINW83Qmc4Q0J4d0dFQXNLRGc4SUFnZ09QQjhCQkFFUEhod1BCd0lMSERKZGRrczhHaElKQlE0QkNCZEVVSU1oQXdZcUpDQUhBUlVGQVFRSEFnUUVBZ0VCSEQ5UW93RUJCQW9CQVFFQ0JBZ0xBaEVJQWdRRUFROFdlVTVSRXhRckFRRUREQlVFQnhvR0NBVUJBd1FEQVFFTUFRRUNIeGtMRFFZSElCSWhSanBPQmhJTEN4VU9Dd3dmSGxFeE9Gd0RBUVVQRUFjU0NRRUhDd1VMQ1FvSUZRc0REQUVHQlJnZ0FRUUNCUWdRRHdJQ0VRVUNBUUVEQUFNQWJmLzhBd1FDcVFBSkFCUUFYZ0JXUUZNRkFRTUFBVXdBQ2dRQkFBTUtBR2NBQXdBSENBTUhad0lMQWdFQUNBWUJDR2NBQmdVRkJsa0FCZ1lGWVFrTUFnVUdCVkVXRlFBQVQwWTdPVFF5TVM0ZEdoVmVGbDRVRWc0TUN3b0FDUUFKSVEwR0Z5c0JMd0VpQmlNVUJ3WVZJVFkvQVJjMEp6UWpCeU1USWlZMU5EWTNNekkzTXpjMlB3RTJQd0krQVQ4Qk5qMEJKeUlIQmlNaEZoVVVEZ0VqSWlZOUFUUXZBVGMyTlRRM05qc0JGaUV6UHdFeUZ4WVhGaDBCRmhVSEZSUUhCZ2NHQVpVRXB3OEdBZ0lDQVNoQ0hpWWxCQTRVaVFVZUhSd1ZEQmdZQndFZ0ZRWUlCZ3dHQ2dJQkJRSVZIaDQ5UHY3N0JBRWNGQlFkQWdNQkExNFJFaEVDQVRBVktCWVdGaWtXRHdJQ0JoRkZSQUdPdUFFQ0ZpRklPQUlEQVFHYkdBRUIvYllkRkJRY0FRTUJCUWdEQXdVTEJ4QUpCQllNTWpVQkFnVXpvaFFwSEJ3Vk1YSTJoRnRCSEZ3SEFRRUJBUU1ISkNVcEVWZzVtUW9sSkZJc0pRQUFBUUEzQWVNQTFBTFhBQndBTkxFR1pFUkFLUVFCQUFJQlRBTUJBQUlBaGdBQkFnSUJXUUFCQVFKaEFBSUJBbEVCQUE0TkNRZ0FIQUVjQkFnV0s3RUdBRVFUSWljbUp6UTNOamN5RmhVVURnRWpCaFVVRnhRV014Y1dGUlFIQnFRTkRVb0pFU0F5RmhzY0VBRUhCQkVDRGhnSER3SGpCaXBXS0Jrb0JSOFNGaGtCQVFnRkNRY1NDUTRjRFFzWUFBQUFCQUEvLy9rQ3dRSzZBQUlBTVFCbEFIc0FSVUJDWFFFRUF3Rk1DQVVDQkFBQ0FBUUNad0FEQXdkaEFBY0hGRTBCQVFBQUJtRUpBUVlHR2daT2FHWXlNbkp3Wm50b2V6SmxNbVJpWUVoR0x5b2VIUndaQ2djV0t3RW5NZ1VVSHdFV0h3RVdId0V6RlJjV0h3RVdId0VXRnpNV01oY3pOekkzTmpjMk56VTNOajhCTmpjbEJnOEJJaWNtSlRVbUp6VW5KaWNqTlNjbUx3RW1KeU1uSmljbUx3RVBBUVlQQVFZUEFTSUhCZzhCQmc4Q0JnY0dCeFlYRmpNeUZ6WXpBeWNpSnlZbkpqVTBOell6TWhZWEZoVVVEZ0VIQmdJTkFRSCtsZ0VGQ2dnRENBb0xBUU1NRGdZUEVBWVFHZ01IRUFRbkNnb25KUW9TRlFnU0Nnc0lBdjdyR3dNbUdSb2JBYVVGQ2dnSkRBRUdEeEFKSUFrQkFSUW5EZ0V0RlFvU0VnSU1Dd2tCQVEwVUFRTUNDZzBIQlFZQ0R4TVdJd3NCSUg0cEhVYzlPU1ZEV1UyRVNhbzRMUUZWVGtrQ0lRSGxCd1llSmhJSEVSQVJBUVFPREFVTEJ3TUhCQUVCQVEwU0NnOFpBUW9lRlI4Z0N3TUJBUUVDQkZ3Qkdoa0NEeElSQVFjUkRRWVZBZ0VJQ1FJQkFnSUNBd2NCQmdjR0FnZ1pBUU1FRHhzUUVSVU5BZ01FQVFUK1lBRWpJemRvZ3BsbldVWmVVMTRDWXFrekxBQURBQjcvNXdJNUFpQUFGd0ExQUV3QXMwdXdHMUJZUUNVTUNBY0RCZ3NEQWdJQUJnSnBCUUVFQkFwaEFBb0tGazBCQVFBQUNXRU5BUWtKSEFsT0cwdXdLRkJZUUNvQUJnY0NCbGtNQ0FJSEN3TUNBZ0FIQW1rRkFRUUVDbUVBQ2dvV1RRRUJBQUFKWVEwQkNRa2NDVTRiUUNzQUJnc0JBd0lHQTJrTUNBSUhBQUlBQndKbkJRRUVCQXBoQUFvS0ZrMEJBUUFBQ1dFTkFRa0pIQWxPV1ZsQUlqYzJHQmdBQUVFL05rdzNUQmcxR0RReU1DNHRJeUVnSHdBWEFCZGFFUk1PQnhrck54WVhGak1YTWo4Qk5qYzJOelF6TmpjbkJnOEJJaWNtSlNZbk5DTW1KeVlqSmlNaUJ4VU9BU01IQmdjR0J4WVhGak15RnpZekF5SW5KaWNtTlRRM05qTXlGeFlYRmhVVUJ3NEJCd2FJRHgweEl3Z1FDd3BFSkF3UkFSTUhvUnNESmhrYUh3RXFEQThCS2pnbUVnd2FEQmdKQ3dJUkR3OEJBUlFlRmlNTEFTQitmRHMzU2lJZU16dG9WVXRqTEJZYUhHYzdKTmszSmpJQkFRRVRIUWtUQVJzZUF3RUJBUUlGWEJ3U0FUVVdEd0lIQVFRSkVnOCtCd2dCQlFRQkJQNnlIekJUU0V4b1NsRXFPV2d5TWpjNE4wa1FDd0FCQUFqLzdnRnFBdFVBTXdCQVFEMHdKdzBFQkFFRkFVd0FCUU1CQXdVQmdBQUJBQU1CQUg0RUFRTURBbUVBQWdJa1RRWUJBQUFzQUU0QkFDb29IaHdiR2hVVEJ3VUFNd0V6QndnV0t4Y2lKaThCQmlNaUp5WTFORDhCTlRRM05qYzJNekllQVJVVUJpTW1JeUlIQmdjakJ3WUhCaFUyTXpJWEZoVVVCZ2NURGdHTUZCd0JBUmtJSVF3RUhqTWNJRkVWRkJVcUhCc1ZHQmNjRGd3R0FRSUhCd01kQ3lBTkJEc2VBZ0VjRWh3VitBb2VDZ2tnRFJVd2YwZFFEQU1HR0JZU0h3TUlEQkFIRWk4b05nMGZDUWtoR1F6KzRCVWNBQUFDQUZuLzdnRnFBMUlBS2dBMkFEWkFNeU1CQUFJQlRBQUZBQVFCQlFScEF3RUNBZ0ZoQUFFQkpFMEdBUUFBTEFCT0FRQTFNeTh0RnhVVEVnMExBQ29CS2djSUZpc1hJaVl2QVNZMU5EYzJOell6TWg0QkZSUUdLd0VtSXlJUEF3WUhJd2NHRHdJR0ZSUWZBUTRCRXhRR0l5SW1OVFEyTXpJV2pCUWNBUUVCSENCUkZSUVZLaHdiRkFJWEZ4RUNFQWNIQndRQkFnUUhBd0lCQVFFQkhIVWRGQlFkSFJRVUhSSWNGY1JtWjM5SFVBd0RCaGdXRWg4REFRTUVCd29MQndvaUZSc3RhVXBKcEJVY0F6TVVIUjBVRkIwZEFBVC8yUC93QWs0Q3N3QURBQ29BVkFDQUFMcEFEM2wwSnhJRUJ3QmVVandEQWdFQ1RFdXdDbEJZUUNjQUJ3QUJBQWR5QUFFQ0FBRUNmZ1lCQUFBRFh3Z0JBd01pVFFrQkFnSUVZZ1VCQkFRakJFNGJTN0FRVUZoQUtBQUhBQUVBQndHQUFBRUNBQUVDZmdZQkFBQURYd2dCQXdNaVRRa0JBZ0lFWWdVQkJBUWpCRTRiUUN3QUJ3QUJBQWNCZ0FBQkFnQUJBbjRHQVFBQUExOElBUU1ESWswSkFRSUNCR0FBQkFRalRRQUZCU1lGVGxsWlFCY3NLNEI5ZUhWeWNXNXNhMmRaVlN0VUxGTTBMUW9JR0NzQkppTVhNU1luSmpVbUp5TW5KaU1pQndZSEZUWTNNamM2QVRVek5qYzBQZ0V6UGdFMU5qVW5KaWNWQXpJM05qYytBVGMyTno0Qk5UWS9BVFkxSnlJMUppYzBKalVtSnpVbkppY2lKelFqSmljbUp4VVdBell6RnhZWEZoVVVCeFlYRmhVVUJ3WUhCaU1pTHdFR0l5SW1OUkVqQmhVR0t3RWlKelUwTnpZN0FUSUJ6Z0lCQWdRRkFoSUdBUU1xUFNRckVoTXJLMHdYQWdNR01nc0VBd0VDQWdRQ0NBU2NSQWtjRlFJR0FRb0tCQW9GQXdFSUJBRUNCQUlIQ0FRTURBSUdBVFFzQkh4VEdob2VJcHN5RWswNEd3c1RKVTg1Unljbk9nOFdGQjBzQWd3aUN4d09FeGMxdUF3Q0tBTURCUVFCQVFzQ0FSQUdBd1NqQXdFRkFRMEtBUU1FQkFNRENSRWZHZ0VCL2pvRUJBY0NBUUVFQndRSkFRWUhBaEluRWdFRkJRSUJBUWdHQVFJSkJRTUJFd1VCQ3RjRUFsRUJBUVZoS2pSaUtCNCtJU0VzS2tnWkVRSUJFUjBWQWk0SlRpNGxWeU1uSWdBQUFnQSsvL1FDUEFMWUFETUFZQUJCUUQ1YkFRVUVOd0VCQWtrQkF3QURUQUFDQUFFQUFnRnBCZ0VGQlFSZkFBUUVKRTBBQUFBRFlRQURBeU1EVGpRME5HQTBYMXBWUjBJNk9Dd3BFQWNJRnlzM01qOEJOamN6TmpjME1qVTJOelUyTlRZMU5DOEJKaWMxSnlZdkFTWW5MZ0VqSmk4QkppY21JaVlqSnlJSEl3WUhJd1lWRXhVVUJ6WXpNaGNXRlJRSEJnY0dJeUluQnlJbUp5WTFORFkxTkNjME56WTNOak1YTWpjeUZ4VVVCd1lqb0VoSUdURWFBUlFQQWdVTEN3VUJBUU1JQ0FvRkFRNFFBZ01CQ3lJSUZDVUJCQVVCR2hBTEJDQVBBUThaQXlRbHBXTTFFeG8wYTlRZkJnWVZHZ0lDR1FJUERBOEhDR3N3SnljTktCUU5WZ2dFQ3dvS0NnRUJCQXNCRHdjTkRnOE9CaFFUQWc4U0JRSVJEUUVEQ3c4RENnVUJBUUVDQmdaNW93SUxJekl6Q0g1SFZpOHJOUnc2QVFFZEZDd3NkZXAzS1NvVkRnc0NBZ0VCTEFzZURnSUFBdi9pQUFzQ253S3VBRG9BV1FDL1FCQlRUamNEQlFFYUFRQUZSd0VEQUFOTVM3QUtVRmhBSGdBRkFRQUJCWElFQVFFQkFsOEdBUUlDSWswQUFBQURZUUFEQXlNRFRodExzQmxRV0VBZkFBVUJBQUVGQUlBRUFRRUJBbDhHQVFJQ0lrMEFBQUFEWVFBREF5TURUaHRMc0NwUVdFQWNBQVVCQUFFRkFJQUFBQUFEQUFObEJBRUJBUUpmQmdFQ0FpSUJUaHRBSWdBRkFRQUJCUUNBQmdFQ0JBRUJCUUlCYVFBQUF3TUFXUUFBQUFOaEFBTUFBMUZaV1ZsQUVqdzdVazlNUzBSQ08xazhWekl3RUFjSUZ5czNOamN5TnpZM05qYzJOejRCTnpZM05qOEJOamMyTlRRbk5TYzBKelV1QVNjdUFpY21KeUltSnlZdkFTWW5MZ0VqSWdjR0J3WVZCd1lWRXpJWEZoY0dCd1lqSWljbUp5WTFORGNqQmhVR0t3RWlKelUwTnpZN0FkQW5BZ2tKTnl3WUhCa1VBUVlESVE0U0N3VUhCQUVCQVE4QkFnMEtBZ0lCRFE0Q0J3SWREdzBWSEFrVUdDQUpFaElTQXhCeVgxZWxBd0tyazZzV0RpTUVBeVpGQWd3aUN4d09FeGMxdUcwQ0FnSUtEd2dPREE0QkF3TWFFaGdWRFJRVkRCTU9EUVlFRFNVQkFRY1VEZ01CQWc0TUJ3RVJCd1lJQmdFREFnSUZWdzBRaklZQjhTeGV0YTVrVVFvTEpEczYyN2NKVGk0bFZ5TW5JZ0FDQUNyLzlBSy9BdGdBTXdCZ0FFZEFSRnRRQWdVRVRBRUFBem9CQWdFRFRBQURBQUFCQXdCcEJ3RUZCUVJmQUFRRUpFMEdBUUVCQW1FQUFnSWpBazQwTkFBQU5HQTBYMXBWUzBsQlBBQXpBRE1vQ0FnWEt5VTFOQ2NqSmljakppTUhJZ1lpQndZUEFRWUhJZ1lIQmc4QkJnOEJGUVlQQVFZVkZCY1VGeFVXRnhReUZSWVhNeFlmQVJZVEZSUVdGUlFIRGdFakp3WWpJaWNtSnlZMU5EYzJNeklYSmpVME56WTNOamMyTXhjeU56SVhGUlFIQmlNQnhnOEJEeUFFQ3hBYUFRVUVBU1VVQ0NJTEFRTUNFQTRCQlFvSUNBTUJBUVVMQ3dVQ0R4UUJHakVaU0pFWkFnSWFGUVlHSDlSck5Cb1ROV09sSlNRREFnSU5DZzhIQ1dzU0p5Y05LQlFOVmhPamVRWUdBZ0VCQVFVS0F3OExBd0VORVFJRkVnOENFeFFHRGc4T0RRY1BBUXNFQVFFS0Nnb0xCQWdDSGlGMzZuVXNMQlFkQVFFNkhEVXJMMVpIZmdnek1pc3FGUTRMQWdJQkFTd0xIZzRDQUFILzNQOHNBcEVDdmdBOUFERkFMaWtoRHdNQ0FEa0JCQUlDVEFFQkFBQW9UUUFDQWlOTkFBUUVBMThBQXdNbkEwNDROekl3SmlRY0dpY0ZDQmNyTnpZM05qYzBOell6TWhZWEZoY1dGeFF6RlRZL0FUWTlBVDRCTXpJV0hRRVVCd1lIQmlNaUp5WW5Cd1lIRlJRSEJpc0JKajBCTkRjeVB3RTFORGRqQlE4TkJ4Z01EQ0ljRURObE5ERUJDd2dERWdFY0ZCUWRDd292RENNblUzSlRCaE1DSWljalZ5VXVUZ2tCQVYrVmxZS0RHdzhHUWlCOHRGMC9BUUV6TXh1UjFSa1VIQndVSm8yTW5aVWpkNlc1UnErd256VVhFdzRjQ3lJTUFwUUZGQlFBQWYvRi95d0NKUUlwQUQwQU9FQTFCZ0VEQURBQkFnTTlBUVVDQTB3QUF3TUFZUUVCQUFBclRRQUNBaU5OQUFVRkJGOEFCQVFuQkU0OE96WTBLU2NySWlNR0NCa3JOeEUwTmpNeUZ6WXpNaGNXRnhZVkZBY0dCeFFHSXlJbU5UUTJOeVluSmpVbUx3RW1KeVlqSmlNR0J3WUhCZ2NHQnhFVUJ3WXJBU1k5QVRRM01qZE1IUlFiRHpKQk1DOUFMVDhGQlFFZEZCTWRDZ0VERVFFS0JBRWZMaG9JQkNVUEdoQUNEZ3NDQlNJbkkxY2xMazRKWGdHWEZCMGFIUklYTXordE1DVTFMQlFjSEJRcFlEZFhLd0VDRWdVQ0pnNElBZ0VLQ1FJSkZRc0kvZ3MxRnhNT0hBc2lEQUlBQUFBQkFBMy84d0x2QXZnQVJRQmRRQXc2QVFNQlB4NElBd0FEQWt4THNBcFFXRUFaQUFJQkFvVUFBd0VBQVFNQWdBQUJBU2hOQkFFQUFDTUFUaHRBR1FBQ0FRS0ZBQU1CQUFFREFJQUFBUUVvVFFRQkFBQW1BRTVaUUE4QkFEYzFMQ3NVRWdCRkFVVUZDQllyQlNJbUp6UW5KalUzSmljbUp5WW5KalUwTmpNeUZ4WVhGak1XRnhZeUZ6NEJOelkzTmpRM05qYzJOelk3QVJZZkFSWVZGQWNHSXlJbkppY0hCZ2NHRHdFVUZoVU9BUUUxRkJ3QkFnSUJLaDhxT0NrU0RoMFRGQTh0SFVNSER4UU5CZ0lJQWdja0tRWUNFVEFNR2lnd0Fpb2RSdzRIRUJnTkVVQUpGalZHT1MwQkJRRWNEUjBVUFR3MU5FNFNKVEJoU1JJUEV4UWREamcyY2hRUUNnRUJBZ1FmTmdZQ0FoRk1ERFpHQmhVeEV4QUxDUnNHTEFRa1hsTktHVDgrZXp3VUhRQUJBQ2IvSlFLR0Ftb0FTZ0JnUUE5RUFRTUVTRHc2TmhvQ0JnRUZBa3hMc0J0UVdFQVpBQVFBQlFFRUJXa0FBd01sVFFJQkFRRUFZZ0FBQUNjQVRodEFIQUFEQkFVRUF3V0FBQVFBQlFFRUJXa0NBUUVCQUdJQUFBQW5BRTVaUUF4S1NVRS9KeVVSRXlVR0NCa3JBUllWQWdjR0l5STFORFl6RmpNMlB3RWpOamMyTnpJME56WTNKaWNtSnlZbkpqVTBOell6TWhjV0Z4WVhGaDhCSGdFWEZoY1dGelkzTmpjbU5UUTNOak15RnhZVkZBY0dCeVlqQWZZQkVydFJha2NjRlEwYkdSOERBZzRVSVJjQkFRa09WVHNtTGhRSUJ4Z01EUjRNRlJJNU5nTUZBUWdQQmdRQ0J3c2JGQXdGQVRJZEd3dGVId0lGTDAwS0FmWUZCdjRjb1VFeUV4NEJBd2tCQkE0WEhnSUJDUm9vZUUyRk94SU5EUnNQQmhneU5LdE9CZ1FEQ1E0R0FnSUZCVU9KWVZzRkJsMFdDUTRTR0FnSklRVU1BQUFBQUFILzEvOHNBam9DeHdBa0FGdEFDZ0VCQVFBa0FRVURBa3hMc0NSUVdFQWRBQUlBQXdVQ0EyY0FBUUVBWHdBQUFDSk5BQVVGQkY4QUJBUW5CRTRiUUJzQUFBQUJBZ0FCWndBQ0FBTUZBZ05uQUFVRkJGOEFCQVFuQkU1WlFBa1ZKQ1FoSkRVR0NCd3JOeEVtTlRRMk15RXlGaFVVQmlNaEZUTXlGaFVVQmlzQkVSUUhCaXNCSmowQk5EY3lOMTRKSFJRQmd4UWRIUlQrdHE4VUhSMFVyeUluSTFjbExrNEpYZ0lkREE4VUhSMFVGQjJ5SEJRVUhmNDVOUmNURGh3TElnd0NBQUFCLzF2L0t3RjdBdU1BUFFEK1M3QVVVRmhBREI0TkF3TUVBRGdCQlFZQ1RCdEFEQjROQXdNRUFEZ0JCUWNDVEZsTHNCUlFXRUFrQUFRQUJnQUVCb0FEQVFJQ0FXRUFBUUVrVFFBQUFDdE5Cd0VHQmdWaEFBVUZKd1ZPRzB1d0cxQllRQ29BQkFBR0FBUUdnQUFHQndBR0IzNERBUUlDQVdFQUFRRWtUUUFBQUN0TkFBY0hCV0VBQlFVbkJVNGJTN0FxVUZoQU1nQUNBd0FEQWdDQUFBQUVBd0FFZmdBRUJnTUVCbjRBQmdjREJnZCtBQU1EQVdFQUFRRWtUUUFIQndWaEFBVUZKd1ZPRzBBd0FBSURBQU1DQUlBQUFBUURBQVIrQUFRR0F3UUdmZ0FHQndNR0IzNEFBUUFEQWdFRGFRQUhCd1ZoQUFVRkp3Vk9XVmxaUUFzUkZTd2NFU1lqR2dnSUhpczJOelkzSnk0Qk5UUTNOak15RnpZek1oY1dGUlFIQmlNaUppTUhCZzhCRnhZWEZoVVVCd1lqSWljR0J3WUhEZ0VIQmdjR0l5SW5KalUzTmpjV014c0VEeTR5RkJRV0RRNEdQamx4RGc0K0lnY0lEQkVSRFIwU0Nrb1VDd2tXREE4RlZnY0pGQkVLSFJjS0poa1hEbU1kQXdZdlRRbDlIR1hJRFFRZERob09DUkRBQXd3c0l3b0RDUWdkTXhrT0JCRU5EeG9PQ0JJZE1HSkhVb0p6TkJBSEZCSVdFeUVERHdBQUFRQmMvK3dDYmdLMUFGd0F6VXV3TFZCWVFBc0tBUU1CR0FjQ0FnTUNUQnRBQ3dvQkF3RVlCd0lDQkFKTVdVdXdFRkJZUUJnRUFRTURBV0VGQVFFQklrMEFBZ0lBWVFZQkFBQXNBRTRiUzdBWlVGaEFIQUFCQVNKTkJBRURBd1ZoQUFVRklrMEFBZ0lBWVFZQkFBQXNBRTRiUzdBdFVGaEFId0FCQlFNRkFRT0FCQUVEQXdWaEFBVUZJazBBQWdJQVlRWUJBQUFzQUU0YlFDWUFBUVVEQlFFRGdBQUVBd0lEQkFLQUFBTURCV0VBQlFVaVRRQUNBZ0JoQmdFQUFDd0FUbGxaV1VBVEFRQlNVRXBJUlVRbkpBNE1BRndCWEFjSUZpc0ZJaWN1QVRVbUp5WTFOejRCTXpJV0ZRWVZGQmNXRnhZWEZSWVhGaDhCRmhjV0h3RVdNeFl6UGdFL0FqVTJOelkxUHdNMlB3RTJOU1l2QVNZdkFTWW5OU2NqQmlJR0l5SW5KalUwUGdFek1oY1dGeFlWRkFjR0J3WUJjRXRBU3pFRUFnY0JBaG9VRXg0Q0NBTUJBZ1VCRVFNTUJ3Y1FHQkFDR0EwRkh3RUxCZ2tRQWdFUkJRZ1RBeFFOQVFrQ0FnRUZCd01QRERJU0FnUUxCZ3dPRmhFb0ZqMHdQeElORFJWSE5SUXJNS0ZnUHhGOUlqNFVIQndVSXlOTlRTTWtMaThCR3kwSkV3Y0tEQkVHQVFvQkFRRUNBZ2tCQVFJTkJRWU1Kd2N6VUF3L1JpNE9DUjBPQkE4REFRZ0JCQWdPR3d3YkRoY2ZSVHM4VEZtV1drSUFBQUVBUHYvekFmd0NKd0JhQUllMlV6Y0NBZ0VCVEV1d0NsQllRQklEQVFFQkpVMEFBZ0lBWVFRQkFBQWpBRTRiUzdBTVVGaEFGZ0FEQXl0TkFBRUJKVTBBQWdJQVlRUUJBQUFtQUU0YlM3QU9VRmhBRWdNQkFRRWxUUUFDQWdCaEJBRUFBQ1lBVGh0QUZnQURBeXROQUFFQkpVMEFBZ0lBWVFRQkFBQW1BRTVaV1ZsQUR3RUFUazBnSHdzSkFGb0JXZ1VJRmlzWElpY21KeVk5QVRRMk16SVdId0VWRkJZWEZCY1ZGaGN6RnhZZkJETTFNamMyTnpJMU5qY3pQZ00wTnpZM05qOEJOamMwUHdFMEx3TW1Md0VqTlNjbUl5NENOVFEyTnhZWEZoVUhCZzhCRGdFSEJ2UlVLeWNKQngwVEZCc0JBUVFEQVFRTEFRRUZCd0lPQmc4WkNBY1NDd0VGQlFFQkF3TUdBUWNWRVFzSUN3WUJBUUVFQmdFQ0F3VUJCd1lEQ2pVY0hCUmdLQ3NCQ2kwTER5SWNOUTFDTzF0QWZWd1VIQndVV3g0Nldnd0hBUUlmSHdJTUN3TU5Bd1FCQXdRRkFRSUVBUUlFQmdFQkNpb2ZHaFFnSUFRQkloTUpGaElCQlFRR0FRTURCQW9jRkJNY0FRb3hOVnNXWDFRV0hqWVVJZ0FCQUNFQUFBSzNBdmdBYVFCZFFGb1ZFQUlCQTEwMUFnZ0tVUUVIQ0FOTUJBRURBUU9GQUFJQUJRb0NCV29BQ2drQkNBY0tDR2tBQmdZQllRQUJBU0pOQUFjSEFHRUxBUUFBSXdCT0FRQmpZVnBaV0ZaQlB5d25HeGtVRXhJUkRnME1DZ0JwQVdrTUNCWXJJU0luSmpVME56NEJOell6TWhjek5qYzJNeGN5RndjR0J3WWpJaVluSmljaUp5WW5JaVluTGdFaklnY2lCd1lIRGdFSEJnOEJOd1lWRkJjeUZSWVhGak15TnpJM05qY3lOejRDTXpjME56WTNKalFtSnlZakJnY2lKeVkxTkRZM05qTXlGeFlWRkFjR0FZdW9VbkFsSm9kWkZoWm5ORHdEQWc0aERCd01Bd0VVRnpCYkt3c0NDd0VCQlFjQ0N3SVRBUUlUQmg0ekp5d0JCUWdzQ2dJQkFnNEJIandrZFV3MUF3TVFCUVFHQVFJQkFRb0NDd0VCQWdJWWRTc3FHUThJQWc4WVgzNC9OQmMrUldPSVRrdFRmeGdGVndsaUxBRW1haVFtSHdzWEJSSUNCd1lKQVFVQkFTRVlOUUlGREQ1QkNBSUpIaU1qQVQ0cEdSVUNDQVVJQWdJQ0VRTURFUm9DQXdJREhRRUVGUTRQQXhVTUVTc2pRU013ZkFBQUFBSUFJdjhoQXJNQ2p3QVZBR3NBbkVBV1pRRUdCMmxjV2hZRUFBZ0dCUUlCQUVrQkJRRUVURXV3SkZCWVFEQUFBd1VFQlFNRWdBQUhBQWdBQndocEFBQUFCbUVBQmdZclRRa0JBUUVGWVFBRkJTTk5BQVFFQW1FQUFnSW5BazRiUUM0QUF3VUVCUU1FZ0FBSEFBZ0FCd2hwQUFZQUFBRUdBR2NKQVFFQkJXRUFCUVVqVFFBRUJBSmhBQUlDSndKT1dVQVlBQUJyYW1KZ1dWZE9URGs0THkwbEl3QVZBQlVhQ2dnWEt5VTNOamMyTnljbUp5WXZBUVlIQmdjR0J4UVhGaGNCRlJZVkJ4UVhGaFVVQndZSEJpTWlKeVluSmpVME56WXpNaGNWRnhZWEZqSVdGekkyTnpZek5qY3pOelF6TmpjMk56WTNCZ2NHSXlJbkppY21OVFEzUGdFek1oYzBOelUwTnpZek1oY1dGUlFIQmdjbUl3RUdBVEF5UkJjRUdSUWVKaFpCTkNBTUVnSXJIUndCT0FFQkJBTXVKVHBIVERFdlF5a0hHQXdNR2hFV0d5VUJCUWdLSmpVSkJBUVFFQUVWQVFrSUNnVUJBenhRSUNBZ0lFb3FJZ3dkbkZkQ1BnTXlIUnNMWGg4Q0JTOU5DbGdCQnlZMlJGRTFHU01LQVFzL0xoMHJMejhyRndVQnNBWVdGeTlWVEVGQ25VODJIQ01SR0RvTERCd1BCeGdCRlJJSEFRRUJEQVVEQ0F3VkFROFFIaUFHTURzWkNnb2JSRFpHS3locG1ESU1DUUZkRmdrT0VoZ0lDU0VGREFBQUFBRUFadi8xQXRNQzd3QkhBUE5Mc0J0UVdFQU5PQUVFQWowZUR3c0VBQVFDVEJ0QURUZ0JCQUk5SGc4TEJBRUVBa3haUzdBUFVGaEFHZ0FFQWdBQ0JBQ0FBQU1ESkUwQUFnSWlUUUVGQWdBQUl3Qk9HMHV3RUZCWVFDRUFCQUlBQWdRQWdBQURBd0JoQVFVQ0FBQWpUUUFDQWlKTkFRVUNBQUFqQUU0YlM3QVZVRmhBR2dBRUFnQUNCQUNBQUFNREpFMEFBZ0lpVFFFRkFnQUFJd0JPRzB1d0cxQllRQ0VBQkFJQUFnUUFnQUFEQXdCaEFRVUNBQUFqVFFBQ0FpSk5BUVVDQUFBakFFNGJRQjRBQkFJQkFnUUJnQUFDQWlKTkFBRUJJMDBBQXdNQVlRVUJBQUFqQUU1WldWbFpRQkVCQURVektTZ2JHUlFTQUVjQlJ3WUlGaXNGSWljbUp5WW5MZ0VuSmljakRnRUhGUlFHSXlJbU5SRTBOak15RmgwQk5qYzJOelkzTmo4Qk5qTXlGeFlmQVJZVkZBY0dJeUluSmljSEJnY0dCeDRCRnhZWEZoVVVCd1lDTnh3UE16RWViZzBKQWhFTUFRRUJIQjBVRkIwZEZCUWRRVW9sR1I0bERBY1lIeUFIQ0NrWlBRY0tGQkFRRlRjSUZqcFJRVFFtY2gxSU9RY1pEQXNaVjBJbldRc0dBZzBGQWdJcThCTWRIUk1DV3hRZEhSVE5RekVZRlJvcER3Y2FId0lOR2owUURnOExGQXc0QlJWQk9qSXZHVjRpV1dRTURCd1BCd0FBQUFFQVMvLzFBZ1FDNkFBMkFITkFEREVCQkFNZEVBSURBUUFDVEV1d0gxQllRQmNGQVFRRUExOEFBd01rVFFBQUFDdE5BZ0VCQVNNQlRodExzQ1pRV0VBVkFBTUZBUVFBQXdSbkFBQUFLMDBDQVFFQkl3Rk9HMEFWQUFNRkFRUUFBd1JuQUFBQUFXRUNBUUVCSXdGT1dWbEFEUUFBQURZQU5XWXBMaWNHQ0JvckV4QVhOamMyTnpZM01oWVhGQWNHRHdFV0h3RVdGeFFHSXlJdkFTWW5CaU1WRkFZaklpWTFBaEUwTmpzQkZ6STNNaGNWRkFjR0k2d0NKeVpWWUJBVEZCd0JEMkJWSFdGT0RnMEJIUllURFE5d1BpNENIUlFVSEFJY0ZBbHJNQ2NuRFNnVURRS0UvdVJHS0NsZFVRMEJIQlFWRGxGZUhsQmpFUkFURXgwT0VZa3BMSGNVSFIwVUFVb0JSeFFkQVFFc0N4NE9BZ0FBQUFBREFELy9YQUxCQXJvQUFnQmJBSVVBTWtBdmhBRUVBQUZNQlFJQ0FBRUVBUUFFZ0FBRUJJUUFBUUVEWVFBREF5SUJUZ01EZ1g5blpRTmJBMWtzS2hRR0NCY3JBU2N5QXpjeU56WTNOamMxTnpZL0FUWTFORGMyTlNZbkppYzFKeVluSXpVbkppOEJKaWNqSnlZbkppOEJEd0VHRHdFR0R3RWlCd1lQQVFZUEFnWUhCaFVQQVJRZkFSWWZBUllmQVRNVkZ4WWZBUllmQVJZWE14WXlGd2NtSnlZbkpqVTBOell6TWhZWEZoVVVEZ0VIQmdjR0J3WVZGQjRCTXhjV0ZSUUhCaU1pSnlZbk5BSU5BUUY2Q2dvbkpRb1NGUWdTQ2dzS0FRSUJCQVVLQ0FrTUFRWVBFQWtnQ1FFQkZDY09BUzBWQ2hJU0Fnd0xDUUVCRFJRQkF3SUtEUWNGQ1FFQ0F3VUtDQU1JQ2dzQkF3d09CZzhRQmhBYUF3Y1FCQ1EzTVRrbFExbE5oRW1xT0MwQlZVNGtKZ2NPR0FRUkFnNFlCdzhhRFExS0NRSWhBZjQ1QVEwU0NnOFpBUW9lRlI4b0NBSUJEeG9qRHhvWkFnOFNFUUVIRVEwR0ZRSUJDQWtDQVFJQ0FnTUhBUVlIQmdJSUdRRURCQThiRUJFaURBRXhHUmdlSmhJSEVSQVJBUVFPREFVTEJ3TUhCQUVCWUFZY0l6ZG9ncGxuV1VaZVUxNENZcWt6RmdzRUJ3c0lCUkFTQ1E0Y0RRc1lCaXBXRGdBQUFBQUNBQjcvWEFJNUFpQUFMUUJYQURWQU1nNEJBQUZYTGdJRkFBSk1Bd0VBQVFVQkFBV0FBQVVGaEFJQkFRRUVZUUFFQkNzQlRsUlNPVGN0TEIwYkdoa1FCZ2dYS3lVeVB3RTJOelkzTkRNMk56UXpOeVluTlNjbUp6UWpKaWNtSXlZaklnY1ZEZ0VqQndZSEJoVVVGeFlYRmpNSEppY21KeVkxTkRjMk16SVhGaGNXRlJRSERnRUhCZ2NHRlJRWEZCWXpGeFlWRkFjR0l5SW5KaWNCRUJBTENrUWtEQkVCRlFZQkFRUUtBUTBQQVNvNEpoSU1HZ3dZQ1FzQ0VROFBBd2NQSGpFaklTQWZTaUllTXp0b1ZVdGpMQllhSEdjN0RBMEJCQkVDRGhnSER4b05EVW9KU1FFQkV4MEpFd0VkSWdNUU1CVUNBUjBUQVRVV0R3SUhBUVFKRWc4K0ZSZ2JKam9uTWwwSUVUQlRTRXhvU2xFcU9XZ3lNamM0TjBrUUJBSUNCQVVKQnhJSkRod05DeGdHS2xZQUFRQlIvMHdDcEFLeUFHQUFSa0JEUUFFRUJWY0JBd1FFQVFJQkEwd0FBd1FCQkFNQmdBQUJBZ1FCQW40QUFnWUJBQUlBWlFBRUJBVmZBQVVGSWdST0FRQk1TRVJDTlRNV0ZBa0hBR0FCWUFjSUZpc0ZJaWNtSnpRM05qTXlId0VlQWhVV0Z4WVhGak15TnpJM05qYzJOVFkzTmpjMk56UTNOalUwSnpRbU5TWXZBU1lqQndZaklpY21OVFEzTmpjMk56WTNJd1loSWlZMU5EWXpJRGN5RnhZWEZoVVVCd1lIQmdjV0Z4WVhGaFVVQndZQlVudE9NUWNIQ3h3b0J3UUJBUUlLRUJvTUtESkRJZ1lORWhzRkR3MENBUW9GQVFJWUFnNDdBZ29JQlNRTUdSQUdCaG9tSVRJVkV3RU0vcVlVSEJ3VUFScHNLU2dYQ0FRR01sRWpEZ2tITXlVNVlGQzBSQ3BCRGc0V0l4RUJCUU1CRkFzUkF3OFJDUWtmQlFJVUhBSUVHeG9FQXhFUlJEa0NBd0lqTWdFS0FRa1hEUXdNRENvZ0hDRU9FQUlkRXhRY0F3WUdGZ29KREF0VE1oY0xCUVlrTWxsM2oyTlFBQUFBQVFCUS8wc0NGZ0lZQUc4QWY3WmxRUUlEQlFGTVM3QWJVRmhBSlFRQkF3VUJCUU1CZ0FBQkFnVUJBbjRBQWdrQkFBSUFaUVlCQlFVSFlRZ0JCd2NsQlU0YlFDc0FBd1VFQlFNRWdBQUVBUVVFQVg0QUFRSUZBUUorQUFJSkFRQUNBR1VHQVFVRkIyRUlBUWNISlFWT1dVQVpBUUJiVmxWVFRVeExSejQ4T0RZWEZBc0pBRzhCYndvSUZpc0ZJaWNtSnlZMU5EYzJNeklYRlI4QkZoOENGakl6TWpjMk1qVTJOelkzTWpZMU5qYzFOamMyTlRRdkFTWXZBU1luTlM0Q0l5Y2lEd0lHSXljbUx3RTBOamMyUHdFaUx3RVBBU0luSmpVME56WXpNaGNXTXpZekZ4WVhGaFVVQndZSEJnY2pIZ0lWRkFjR0J3WUJPRWhKS0J3SEdRd01GeEVXQWhzZ0FSVVBDZ01TR1FFQ0JBUU9Dd0VFQlF3UEJnSUJBUVVKQ2dJREF3VUZCZ01PRHdvT0ZSWVdJd3NCSEE0aU9BNW9MU3NXRmc0T0ZpTXJLeGdZSEhnUEhTNGREQVlGRWg4ckdnRXZOUmdKRzA0MXRUUVpKUXNNR3c4SEZnRVVBUlVQQVFZRENBRUJBUU1HQ1FNQkJBd0JFaDBKTURjTENEVVlGQVFEQVFJRkF3RUNBUU1FQVFNZ0RCWWFEeVFoQ0FJQkFRSUhDeHdvQndZQ0FRRUJBeFVMRFFzTkpCa2pEUXBLY2xCQkkxVXFIQUFDQUZIL1RBS2tBNk1BWUFCNkFHQkFYVzRCQmdkQUFRUUZWd0VEQkFRQkFnRUVUQWdCQndZSGhRb0JCZ1VHaFFBREJBRUVBd0dBQUFFQ0JBRUNmZ0FDQ1FFQUFnQmxBQVFFQlY4QUJRVWlCRTVpWVFFQWNuRnJhV0Y2WW5wTVNFUkNOVE1XRkFrSEFHQUJZQXNJRmlzRklpY21KelEzTmpNeUh3RWVBaFVXRnhZWEZqTXlOekkzTmpjMk5UWTNOamMyTnpRM05qVTBKelFtTlNZdkFTWWpCd1lqSWljbU5UUTNOamMyTnpZM0l3WWhJaVkxTkRZeklEY3lGeFlYRmhVVUJ3WUhCZ2NXRnhZWEZoVVVCd1lESWk4QkpqVTBOell6TWhjV0Z6WTNOak15RnhZVkZBOEJCZ0ZTZTA0eEJ3Y0xIQ2dIQkFFQkFnb1FHZ3dvTWtNaUJnMFNHd1VQRFFJQkNnVUJBaGdDRGpzQ0NnZ0ZKQXdaRUFZR0dpWWhNaFVUQVF6K3BoUWNIQlFCR213cEtCY0lCQVl5VVNNT0NRY3pKVGxnVUdFVEQyWVlCdzhjREF0T0NRSlZDd3dIQnlVWlpRKzBSQ3BCRGc0V0l4RUJCUU1CRkFzUkF3OFJDUWtmQlFJVUhBSUVHeG9FQXhFUlJEa0NBd0lqTWdFS0FRa1hEUXdNRENvZ0hDRU9FQUlkRXhRY0F3WUdGZ29KREF0VE1oY0xCUVlrTWxsM2oyTlFBNTRQVHc4YkRRc1pCemtLQVVJSEFnMGpHaEJPRHdBQ0FGRC9Td0lXQXdNQWJ3Q0pBS1pBQzMwQkNRcGxRUUlEQlFKTVM3QWJVRmhBTVFzQkNna0toUTBCQ1FjSmhRUUJBd1VCQlFNQmdBQUJBZ1VCQW40QUFnd0JBQUlBWlFZQkJRVUhZUWdCQndjbEJVNGJRRGNMQVFvSkNvVU5BUWtIQ1lVQUF3VUVCUU1FZ0FBRUFRVUVBWDRBQVFJRkFRSitBQUlNQVFBQ0FHVUdBUVVGQjJFSUFRY0hKUVZPV1VBamNYQUJBSUdBZW5od2lYR0pXMVpWVTAxTVMwYytQRGcyRnhRTENRQnZBVzhPQ0JZckJTSW5KaWNtTlRRM05qTXlGeFVmQVJZZkFoWXlNekkzTmpJMU5qYzJOekkyTlRZM05UWTNOalUwTHdFbUx3RW1KelV1QWlNbklnOENCaU1uSmk4Qk5EWTNOajhCSWk4QkR3RWlKeVkxTkRjMk16SVhGak0yTXhjV0Z4WVZGQWNHQndZSEl4NENGUlFIQmdjR0F5SXZBU1kxTkRjMk16SVhGaGMyTnpZek1oY1dGUlFQQVFZQk9FaEpLQndIR1F3TUZ4RVdBaHNnQVJVUENnTVNHUUVDQkFRT0N3RUVCUXdQQmdJQkFRVUpDZ0lEQXdVRkJnTU9Ed29PRlJZV0l3c0JIQTRpT0E1b0xTc1dGZzRPRmlNckt4Z1lISGdQSFM0ZERBWUZFaDhyR2dFdk5SZ0pHMDQxUEJRUFpSZ0hEaDBNQzAwS0FWWUxEQWNISlJsbEVMVTBHU1VMREJzUEJ4WUJGQUVWRHdFR0F3Z0JBUUVEQmdrREFRUU1BUklkQ1RBM0N3ZzFHQlFFQXdFQ0JRTUJBZ0VEQkFFRElBd1dHZzhrSVFnQ0FRRUNCd3NjS0FjR0FnRUJBUU1WQ3cwTERTUVpJdzBLU25KUVFTTlZLaHdDL3c5UER4c05DeGtIT1FvQlFnY0NEU01hRUU0UEFBQUJBQ1VBbHdFVEFyVUFIZ0FnUUIwRkFRQUJBVXdDQVFBQUFWOEFBUUVpQUU0QkFCSU9BQjRCSGdNSUZpczNJaVluSmljbUx3RW1KeVkxTkRZeU54Y2VBUmNHQndZUEFRWUhCZ2NHamc0ZEF4c0lBd1FDQlFNSEhDc1hZQlFiQVFFSkJnTVpDQVlVR2cyWEV4QzVZeTBiRWg0ZUN3MFVIQUVCQVJvVkhCc1dGb1FwS1pZVUNnQUFBUUFvQVRjQkh3SzZBQjhBSjBBa0ZRSUNBQUVCVEFRQkFBQUJZUU1DQWdFQklnQk9BUUFURWhFTkRBc0FId0VmQlFnV0t4TWlOU1kxSnlZbkppYzBOak0yTXpZek1oY2VBUjBCQmdjR0J5SVZCZ2NHb2pVQkJRb05KUU1kR3djc0VSSWNIUlFjQ1NBTUNBRUhDUW9CTjFFQkJSWWdIa2xjRkJ3Q0FRTUJHUklFVGt3a0pRRWxKU0lBQUFBQkFDRUFBQU1EQXJnQVl3Q1lRQXhUTVFJSENXQkZBZ1VHQWt4THNCQlFXRUF3QUFJRENRTUNjZ0FKQ0FFSEJna0hhUW9CQmd3TEFnVUVCZ1ZuQUFNREFXRUFBUUVpVFFBRUJBQmhBQUFBSXdCT0cwQXhBQUlEQ1FNQ0NZQUFDUWdCQndZSkIya0tBUVlNQ3dJRkJBWUZad0FEQXdGaEFBRUJJazBBQkFRQVlRQUFBQ01BVGxsQUd3QUFBR01BWTE5Y1dWZFFUMDVNUzBsRVFUMDdXeVlwSXcwSUdpc2xCaFVHSXlJbkpqVTBOejRCTnpZek1oY1dGUlFIQmlNaUp5WW5JaWNtSnlJbUp5NEJJeUlISWdjR0J3NEJCd1lQQVRjR0ZSUVhNaFVXRnhZek1qY3lOelkzSXlJbk5UUTNOanNCSmlNR0J5SW5KalUwTmpjMk16SVhGaGN5TnpJWEZSUUhBcFFCUHNxb1VuQWxKb2RaRmhac013MExEeFVoRFFJTEFRRUZCd0lMQWhNQkFoTUdIak1uTEFFRkNDd0tBZ0VDRGdFZVBDUjFURFVEQXdVRXR4NE9LQXlOVHhsekt5b1pEd2dDRHhoZmZqOHRCaGNRSmcwa2ZnRUJmRVZqaUU1TFUzOFlCVjhWRWhBT0VSMEZFZ0lIQmdrQkJRRUJJUmcxQWdVTVBrRUlBZ2tlSXlNQlBpa1pGUUlEQWlnT0hRNENIQUVFRlE0UEF4VU1FU3NlTkFFc0N4b1NBQUwvNGY4aEFuOENOQUFWQUZRQXdFQVVQd0VBQmdZRkFnRUFMZ0VGQVZBaEFnTUVCRXhMc0NSUVdFQW5DQUVFQ3drQ0F3SUVBMm9BQUFBR1lRY0JCZ1lyVFFvQkFRRUZZUUFGQlNOTkFBSUNKd0pPRzB1d0xWQllRQ1VIQVFZQUFBRUdBR2NJQVFRTENRSURBZ1FEYWdvQkFRRUZZUUFGQlNOTkFBSUNKd0pPRzBBcEFBY0dCNFVBQmdBQUFRWUFad2dCQkFzSkFnTUNCQU5xQ2dFQkFRVmhBQVVGSTAwQUFnSW5BazVaV1VBZUZoWUFBQlpVRmxOUFRVTkJQand6TVNnbElCNGJHUUFWQUJVYURBZ1hLeVUzTmpjMk55Y21KeVl2QVFZSEJnY0dCeFFYRmg4QkJnY0dJeUluSmljaklpYzFORGMyTXpJM05qYzJOelkzQmdjR0l5SW5KaWNtTlRRM1BnRXpNaGMwTmpNeUhnRVZCeFFYRmhVVUJ6TXlGeFVVQnlJQkJnRXdNa1FYQkJrVUhpWVdRVFFnREJJQ0t4MGM3eHNpUjB3eEx6VWxRQjBQS0F4V2xha0VCQW9GQVFNOFVDQWdJQ0JLS2lJTUhaeFhRajRkRkJRY0FnRUVBeFUyTGdrbVJWZ0JCeVkyUkZFMUdTTUtBUXMvTGgwckx6OHJGd1hxR1JFakVSTW9LQTBkRHdJQkJ3Z2VJQVl3T3hrS0NodEVOa1lyS0dtWU1ob2RIQ3dYTDFWTVFVSnFSaTRKSEJBQUFBQUFBUUFOLy9NQ1ZBTEtBRVlBYXJkQUpRZ0RBQUVCVEV1d0NsQllRQTBDQVFFQkZFMERBUUFBSEFCT0cwdXdERkJZUUEwQ0FRRUJGRTBEQVFBQUdnQk9HMHV3RzFCWVFBMENBUUVCRkUwREFRQUFIQUJPRzBBTkFnRUJBQUdGQXdFQUFCd0FUbGxaV1VBTkFRQTNOUmNWQUVZQlJnUUhGaXNGSWlZbk5DY21OVGNtSnlZbkppOEJKaWNtTlRRMk16SWZBUllYRmhjV014WWZBUll5Rno0Q056WTNQZ0UwTmpjMk56WTNOak15RnhZVkZBY0dCd1lQQVJRV0ZRNEJBVFVVSEFFQ0FnRXFIeW80SXc0QkJBVU9IUk1VRHdRa0lqZ09Bd0VQRXdJTUJnSUlBUU1GSkNrRUFnTUNJUjBNR2d3ZURRd1lFVFZHT1MwQkJRRWNEUjBVUFR3MU5FNFNKVEJoUGhFQkJnVVBFeFFkRGdVcVAxOE9CUlFRQVFrQkFRRUNBeDgyQkFJQ0F3SXNMZ3cyRndZT0hCRWNYbE5LR1Q4K2V6d1VIUUFBQUFBQkFDYi9KUUlLQWlVQVNnQkdRQXRHUVQ0MUtCY0dBQUVCVEV1d0xWQllRQTBDQVFFQkZrMERBUUFBR0FCT0cwQVJBQUlDRmswQUFRRVdUUU1CQUFBWUFFNVpRQTBCQURJd0hCb0FTZ0ZLQkFjV0t3VWlKeVkxTmpVMEp5WW5KaThDSmljbUp5WXZBU1luTlRRMk16SVdId0VXRnhZZkFSNEJId0UzTmpjMk56WTNOak15RnhZVkZBY0dCd1lIQmc4Q0ZCOEJGUlFmQVJRR0J3WUJNUXNNRlFFQkFRTUtEQjRYQkFVUUN3OG9FQjBJSGhJVUdRTUJCQTB1S2hrVEFRRVREalVhREJJSEVBc01IQTRHQWhBTEZoNDFIQU1CQVFFQkFRSUtFZHNIRGh3OUdpb0tDd1VpR1QwMkRBc2xIUzFOSFMwMEF4SWJHaFFGREJWVGF6d3dBZ0VvSllSME56Y1RDUWNaQ3dzSEJ6RXpXMW1ST1FZRURnb3VJUXNGRWdrZEVCZ0FBUUFOLy9NQ1ZBTEtBRk1BNDB1d0xWQllRQXhITHhvREFnTlBBUUVDQWt3YlFBeEhMeG9EQWdOUEFRRUdBa3haUzdBS1VGaEFHUVlGQWdJSkNBY0RBUUFDQVdjRUFRTURGRTBBQUFBY0FFNGJTN0FNVUZoQUdRWUZBZ0lKQ0FjREFRQUNBV2NFQVFNREZFMEFBQUFhQUU0YlM3QWJVRmhBR1FZRkFnSUpDQWNEQVFBQ0FXY0VBUU1ERkUwQUFBQWNBRTRiUzdBdFVGaEFHUVFCQXdJRGhRWUZBZ0lKQ0FjREFRQUNBV2NBQUFBY0FFNGJRQjRFQVFNQ0E0VUZBUUlHQVFKWEFBWUpDQWNEQVFBR0FXY0FBQUFjQUU1WldWbFpRQlVBQUFCVEFGTlNVVXhLU1VnK1BDb25KaVlLQnhvckpSWVhGaFVPQVNNaUppYzBKeVkxSmljbVBRRTBOekkxRmhjM0ppY21KeTRCTlRRMk16SVhGaGNXTXhZWEZqSVhQZ0UzTmpjMk5EYzJOelkzTmpNeUZ4WVZGQWNHQndZUEFUTVdNeklYTWhVVUJ5TW5BV0lCQVFJQkhCUVVIQUVDQVdrdEppZ0lJV29CS2g4cU9Dc2VIUk1VRHl3ZVF3Y1BGQTBHQWdnQkFSODFCZ0lSTUF3YURCNE5EQmdSTlVZNUxRRWFPQzAwQ2dZb1dTVEhGUlErUEJRZEhSUTlQQlVWQVFFUUhBb2REZ0lCQVNvU0pUQmhTeDhURkIwT056ZHlGQkFLQVFFQkFSSkhCZ0lDRVV3TU5oY0dEaHdSSEY1VFNoa3VCQndiSFE0REFBQUFBUUFtL3lVQ0V3SWxBRndBZ2tBTlREOHVJQVFDQXdjQkFBRUNURXV3SUZCWVFCa0VBUU1ERmswRkFRSUNBV0FIQmdJQkFSVk5BQUFBR0FCT0cwdXdMVkJZUUJjRkFRSUhCZ0lCQUFJQmFBUUJBd01XVFFBQUFCZ0FUaHRBR3dVQkFnY0dBZ0VBQWdGb0FBUUVGazBBQXdNV1RRQUFBQmdBVGxsWlFCRUFBQUJjQUZ0VlZFbEhMaWtwS3dnSEdpc0ZGaFVYRlJRZkFSUUdCd1lqSWljbU5UWTFOQ2NtSnlNaUp5WTlBVFEzTWpVV093RXZBU1luSmljbUx3RW1KelUwTmpNeUZoOEJGaGNXSHdFZUFSOEJOelkzTmpjMk56WXpNaGNXRlJRSEJnY0dCd1lIRmhVV0hRRVVCeVlCWkFFQkFRRUNDaEVhQ3d3VkFRRUJBWGxBRGdnb0NBc21SUTBYQkFVUUN3OG9FQjBJSGhJVUdRTUJCQTB1S2hrVEFRRVREalVhREJJSEVBc01IQTRHQWhBTEZoNGNGbk1aSkZBVkJBTXVJUXNGRWdrZEVCZ0hEaHc5R2lvS0JnUVpEZ2tKSFE4Q0JCczJEQXNsSFMxTkhTMDBBeEliR2hRRkRCVlRhend3QWdFb0pZUjBOemNUQ1FjWkN3c0hCekV6VzFsT05BSUlFaFFKR2hJQkFBQUFBUUFRQUFJQ2Z3SzJBRXdBWjBBS1NVRTJKUkFGQUFFQlRFdXdHMUJZUUE0Q0FRRUJGRTBEQkFJQUFCVUFUaHRMc0MxUVdFQVNBQUlDRkUwQUFRRVVUUU1FQWdBQUZRQk9HMEFWQUFFQ0FBSUJBSUFBQWdJVVRRTUVBZ0FBRlFCT1dWbEFEd0VBUmtRb0ppSWdBRXdCVEFVSEZpczNJaWNtTlRRL0FqSTFOajhCTlRZM0ppYzFKeVluTlNjakppY21OVFEzTmpNeUZ4WVhFak15RmhVVUJ3WUhCaFVHQndZSEJnY1dId0lWTXhZWEZoMEJCZ2NHSXlJbkppY0dCd1oxR3hBR0dDQUlBU0lvSENRaElRNEpURFFJQVNFbUdBY1BIQXdNbEhpYVBSUWREeHNYQkFvZUdURUpDaG9xREFjQk5FRU9BUTBQRVJZUFZXcGpmUXdDR0FzTUhCQVZCd0VZTGlJQk1EY3dFUUVMWUNjQkJob1REUjROQ3hnR1VMRUJFQjBVRkE0Y0hnUUJEU3dvVkJFUUp6a1JDQUZGT2cwVEN3c1BEUTFLbVp4T0J3QUFBUUFZLy9BQjJnSTBBRGdBYWtBSk1DUVVCUVFBQWdGTVM3QVRVRmhBRGdNQkFnSVdUUUVFQWdBQUhBQk9HMHV3RzFCWVFCSUFBd01XVFFBQ0FoWk5BUVFDQUFBY0FFNGJRQmtBQXdNQVlRRUVBZ0FBSEUwQUFnSVdUUUVFQWdBQUhBQk9XVmxBRHdFQUtTY2dIZ29JQURnQk9BVUhGaXNGSWljbUx3RUdCd1lqSWljbUp6UTNOamMrQVRjbkppOEJKaWNtTlRRMk93RVdGeFlYTmpjMk16SVhGaFVVQndZSEZ4WVhGaFVVQndZQnFSa1NWdzRKUjE0TkZSTVFEUUVPUTBNTEF4MERHeVlLR3o0TkhCSUxFUm8rVERvekR4c05EQmdHUDBnaE1UVUhHUXdRR0lJWERXTk5EZzRPRlJZTU5WTU5CU2dFS2pNTktEa05FeGNjQWgwK2JWNWhHQVlQSEF3TWRuRXlUa29NREJ3UEJ3QUFBQUVBWnY4c0FuNEN3Z0JGQUgxQURUVWlFZzRFQXdFQUFRUUFBa3hMc0I1UVdFQVdBZ0VCQVJSTkFBQUFGVTBBQXdNRVlRQUVCQmdFVGh0THNERlFXRUFhQUFJQ0ZFMEFBUUVVVFFBQUFCVk5BQU1EQkdFQUJBUVlCRTRiUUJvQUFnRUNoUUFCQVJSTkFBQUFGVTBBQXdNRVlRQUVCQmdFVGxsWlFBMURRVHM2TENvZkhSZ1dCUWNXS3dVbUp5WXZBU1l2QVM0Q0p5WW5Jd2NHRHdFVkZBWWpJaVkxRVRRMk16SVdIUUUyTnpZM05qOEJOak15RnhZVkZBY0dCd1lISGdFWEZoY3lGeFlkQVJRR0l5SW1OUUljQ1Fjek1Rb2ZXUlFEQmdRQkVRd0JBZ2dTQWgwVUZCMGRGQlFkUVVvbEdSNGdDaE1hRFEwWUNEeFVRVFFtY2gwL05CSUxEaDBVRkIwREJndFhRZzBqUnhFREJBTUJEUVVFQ1I0RDhCTWRIUk1DV3hRZEhSVE5RekVZRlJvakN4MElFQm9OREVVOE1pOFpYaUpPVndZS0ZOWVVIUjBVQUFBQkFFdi9MQUlHQWpRQU1nQzdTN0FvVUZoQURDa2JDQU1FQWdRQkFRUUNUQnRBRENrYkNBTUVBd1FCQVFRQ1RGbExzQnRRV0VBWEF3RUNBaFpOQUFFQkdrMEFCQVFBWWdVQkFBQVlBRTRiUzdBb1VGaEFGd01CQWdJQllRQUJBUnBOQUFRRUFHSUZBUUFBR0FCT0cwdXdLVkJZUUJzQUF3TVdUUUFDQWdGaEFBRUJHazBBQkFRQVlnVUJBQUFZQUU0YlFCNEFBd0lFQWdNRWdBQUNBZ0ZoQUFFQkdrMEFCQVFBWWdVQkFBQVlBRTVaV1ZsQUVRRUFMaXdpSUJjVkR3MEFNZ0V5QmdjV0t3VWlKajBCSmljbUp3WWpGUlFHSXlJbU5RSTFORFl6TWhZVkZCYzJOelkzTmpjeUZoY1VCd1lQQVJZZkFUTXlIUUVVQmdIVkZCMEZDM2s5TGdJZEZCUWNBaHdVRkIwQ0p5WlZZQkFURkJ3QkQyQlZIV0ZPQlFrbUhkUWRGS0VERHBJb0xIY1VIUjBVQVVxVEZCMGRGSlZNS0NsZFVRMEJIQlFWRGxGZUhsQmpCaVBXRkIwQUFBQUJBR2ovTEFMRUFzRUFOZ0RjUUE4bUFRVUVHUlVDQWdVRUFRRUhBMHhMc0JKUVdFQWdBQVVBQWdjRkFtY0dBUVFFRkUwREFRRUJGVTBBQndjQVlRZ0JBQUFZQUU0YlM3QVRVRmhBSkFBRkFBSUhCUUpuQUFZR0ZFMEFCQVFVVFFNQkFRRVZUUUFIQndCaENBRUFBQmdBVGh0THNERlFXRUFvQUFVQUFnY0ZBbWNBQmdZVVRRQUVCQlJOQUFFQkZVMEFBd01hVFFBSEJ3QmhDQUVBQUJnQVRodEFLQUFGQUFJSEJRSm5BQVFFRkUwQUFRRUdZUUFHQmhSTkFBTURHazBBQndjQVlRZ0JBQUFZQUU1WldWbEFGd0VBTWk4cEtDUWpIeDBSRHd3TEJ3VUFOZ0UyQ1FjV0t3VWlKajBCQmlNaUpqVTJOeVVRQndZakxnRTFOalVtTlRRM05qYytBVE1lQVJVR0J3VW1KelEyTXhZWEZoVVVCell6TWgwQkZBWUNreFFkQ1FzV0hBY0QvcThiRGhVVUd3d0ZCUUVFQVIwVUZSb0RBUUZRQVFrZkZCVU1HQW9HQ3pVZDFCMFVxd1FlRlkrUEN2Ni9HUTBCSEJXcHFRa0xFQWx1YmhVYUFSd1VZbUFLYm00VUdnSU9IZnZnWVFFbTFoUWRBQUVBUFA4c0FsWUNId0E4QUQ5QVBCd2FBZ01DTHdFRkFCVUdBZ0VGQUFFR0FRUk1BQU1BQUFVREFHY0VBUUlDRmswQUFRRWFUUUFGQlFaaEFBWUdHQVpPSkJnak5Db2pMQWNISFNzRkJpTWlKeVkxTnpZOUFTWTFKaU1VQndZaklpWTFOalVuTkRjMEp6UXpNaGNXRlFjeUZ6TTFORFl6TWhZVkZCY1dGUlFITWgwQkZBWWpJaVkxQWZRRkJRWUhJd0VHQTRpUkZ3MFZFaDRLQVFNRExpZ0hCUUxFSlRBY0ZCTWRBUU1CTlIwVUZCMFRBUUlMSkF3VExoSXVNZ0s5R2c0YkZGNWRMbTRnS0NVekl5Z29iZ0t4RXgwZEUvNUFIQndRRGliV0ZCMGRGQUFBQUFFQUxmOHNBNVlDdVFDSUFSbExzQzFRV0VBUFRnRUZCRzhzQWdBRkFBRUJDZ05NRzBBUFRnRUlCRzhzQWdBRkFBRUJDZ05NV1V1d0VGQllRQ2NJQndJRkFnRUFDZ1VBYVFBR0JoUk5DUUVFQkFGaEF3RUJBUnBOQUFvS0MyRUFDd3NZQzA0YlM3QWJVRmhBS3dnSEFnVUNBUUFLQlFCcEFBWUdGRTBBQ1FrVVRRQUVCQUZoQXdFQkFScE5BQW9LQzJFQUN3c1lDMDRiUzdBdFVGaEFMZ0FKQmdRR0NRU0FDQWNDQlFJQkFBb0ZBR2tBQmdZVVRRQUVCQUZoQXdFQkFScE5BQW9LQzJFQUN3c1lDMDRiUURVQUNRWUVCZ2tFZ0FBSUJBVUVDQVdBQndFRkFnRUFDZ1VBYVFBR0JoUk5BQVFFQVdFREFRRUJHazBBQ2dvTFlRQUxDeGdMVGxsWldVQWJob1NBZjJaa1dsbFlWMHBKUlVRNE5pQWVHaGtXRkJFUURBY1dLeVVtSnlZbkppY3VBVFVtTHdFbUp5SUdJd01VQmlNaUppY1RJd2NHQndZaklpWTFORGMwTmpjMk56WS9BU1luSmlNMUp5WTFORFkzTWhjV0Z4VVdGeDRCRnhZekZqTTNOQ2MwTXpJWEZoVVVCZ2NVRnhZVkJoVTNOak0rQVRVM05qOEJOamMyTXpJWEZoVVVCd1lIQmdjV0Z6TVhIZ0lYRmhjV0Z4WXpGaGNXSFFFVUJpTWlKalVETkJjZEVoVW9JaDRFRlJnV0NRZ0lFd29CSFJRVUhBRUNSU3N1SkQwa0ZoME9Bd0VuQ0JJV1VDeGFIZ01VRGh3VkZBNFVWZzhwQ2c0S0FRTUhSQUVETlFZSEpBTUJBUUlCRUJVV0FnUVVWMFFYQ1F3Tkh3d0xGd1VoTmkxaEdnWUJLQVlFQkFvZkd4VWFFQUlEQXpNZEZCUWRCUWttRkJJbExDZ0NBeGtoRndRR0EvNzZGQjBkRkFFRlFENUVkUjBTRXhFQkF3STVGeU1oZFN4NkxBRVlFQlFTSEFFT0YzUUJFekFKRkFrQ0FuY3VMbFVDQ3lRR0N3VWVFQ0lpR2xRQkF3SURBUTlvUGhrSkd4Z0dFQnNNREQwdEsyMGZDek1KQkFZTUpoY1NIaFFDQXdFbDFoUWRIUlFBQUFBQUFRQTgveXdEV2dJckFIUUFzVUFOUWdFR0JXVW9GUXNFQVFZQ1RFdXdHMUJZUUNNSUFRWURBUUVLQmdGcENRY0NCUVVXVFFRQ0FnQUFGVTBBQ2dvTFlRQUxDeGdMVGh0THNDMVFXRUFuQ0FFR0F3RUJDZ1lCYVFrSEFnVUZGazBBQUFBVlRRUUJBZ0lhVFFBS0NndGhBQXNMR0F0T0cwQXJDQUVHQXdFQkNnWUJhUUFIQnhaTkNRRUZCUlpOQUFBQUZVMEVBUUlDR2swQUNnb0xZUUFMQ3hnTFRsbFpRQlp5Y0d4cVhGcFJVRWxIUUQ0MU15WVZKUmNnREFjYkt3VWpJaWNtSnlZdkFpSW5GaFVVQmlNaUppYzBKd1lqQmdjT0FRY0dJeUluSmpVME56WTNOamNtSnlZbkppY21OVFEzTmpNeUZ4WWZBUllYRmhjV016YzBOelkxTkRjMk16SVdGeFlWRkFZVkZ6WTNOak0yTnpZM05qTXlGeFlWRkFjR0J3WUhGaGNXRnpZek1oMEJGQVlqSWlZMUF2Z0VGUTFDSGlZbEFSUXJEQUVjRkJNY0FRRWxEaUVrS3l3Z0RBd2FFQVlhRXd0UEhnZzZGQ0lVQnhvSER4c01DeVVZRUNVZEZCWU5GeG9DQVFZT0d3d2ZCQUlETVNVdkJ3RUVCanM5QndjTURSWWtGQ2dOVkZGQ0N3d0lERFlkRkJRZEFRNVNJeXdjQWc0RUpKUVVIQndVbXlBRkd6TkJPeFFIR0F3TEhCRVFEM1VoQ0ZBVk14d0hFaGtNREJnSEd5Y1pLeXNiRVFNQlp4NE9EeVVNR0JBVEZCUVVLV1lETURZSkJ3ZFJHUU1KRGhvaER3Z3lFV1pHVnc4T0FTYldGQjBkRkFBQUFRQjIvK3dDaHdMS0FFc0FtRXV3TFZCWVFBOEFBUUlBUURZMEloOEtCZ0VDQWt3YlFBOEFBUU1BUURZMEloOEtCZ0VDQWt4WlM3QWJVRmhBRmdBQUJBTUNBZ0VBQW1rQUJnWVVUUVVCQVFFY0FVNGJTN0F0VUZoQUZnQUFCQU1DQWdFQUFta0FCZ1lCWVFVQkFRRWNBVTRiUUJ3RUFRSURBUU1DY2dBQUFBTUNBQU5wQUFZR0FXRUZBUUVCSEFGT1dWbEFFRWxIUERveE1DOHRLeW9XRkNFSEJ4Y3JFell6TWhjV0Z4WVZGQWNHSFFFVUJ3WWRBUlFHSXlJbU5UUTNOajBCTkQ4Qk5qVW5KaWNtSnlJbkppTW5KaWNIQmlNSEJnY1VCd1lWRGdFaklpWTFORGMyTlRRbk5UUTJNeklXRmQweU4ybEFZeVlQQWdJREJoMFRGQndFQlFFQkFnSUhFd0lHQWdFd0ZoRWRSaFVVQ1FZWkdBRUdBUndURkJ3RUJRTWNGQlFkQWNBTERSSTZJQ0lORENVbExBMFlKU3dMRkJ3ZElDRWdHaVV3SEJzTURnOEVDUWdDQWdFUEFnTUJBUUlCQlFldkZGUXBGQndjRkRvNVJHTi9ta3NVSEJ3VUFBQUFBQUVBVFAvekFoMEMrZ0JIQU01THNDaFFXRUFMQ3dFRUFrSWRBZ0FFQWt3YlFBc0xBUVFDUWgwQ0F3UUNURmxMc0FwUVdFQVhBQVFFQW1FQUFnSVdUUUFCQVFCaEF3VUNBQUFjQUU0YlM3QU1VRmhBRndBRUJBSmhBQUlDRmswQUFRRUFZUU1GQWdBQUdnQk9HMHV3SmxCWVFCY0FCQVFDWVFBQ0FoWk5BQUVCQUdFREJRSUFBQndBVGh0THNDaFFXRUFWQUFJQUJBQUNCR2tBQVFFQVlRTUZBZ0FBSEFCT0cwQVpBQUlBQkFNQ0JHa0FBd01hVFFBQkFRQmhCUUVBQUJ3QVRsbFpXVmxBRVFFQU5USWFHQTRNQ0FZQVJ3RkhCZ2NXS3hjaUpqVVJORFl6TWhZZEFUWXpNaGNXRnhZVkZBWVZEZ0VqSWlZbk56WTFOQzhDSmljMUp5WW5KaThCSmljbUp5SW1Jd2NqQmc4QkJnOEJCZ2NpSFFFR0J4UUhBeFFHZlJRZEhSUVVIVGM3SVNPRkpROEZBUndVRkJ3QkF3TURBUUlJQ0FjTUJnUWFCQW9TQ2hBQkJnZ0lEQklKRndnTEJRY0ZBUWtDQVFFZERSd1VBcVlVSFIwVXZpUUxOWXc5U2kxYUt4VWNIQlZXSnlaQ0RnUU9KeElCRGhZR0NSWUNDQWdGQXdJQkJBUU5CZzBHREFzQkFSVVRBZ0greUJRY0FBQUIvL2IvNndJeUFzZ0FLQUJkUUFvZEFRSUVDZ0VCQWdKTVM3QW1VRmhBR3dVQkFnY0dBZ0VBQWdGcEFBUUVBMThBQXdNVVRRQUFBQndBVGh0QUdRQURBQVFDQXdScEJRRUNCd1lDQVFBQ0FXa0FBQUFjQUU1WlFBOEFBQUFvQUNnbEZEUWxJaFFJQnh3ckV3WVZGQWNpTlJNaklpYzFORGMyT3dFM05qYzJOeUV5RmhVVUJ5QUhCaFVHQnpNZUFSY1ZGQWUyQlNnN0JURWREeWdNRFI0Q0JBMFRVZ0VoTkJBby9zRU5CQUVCelRBVEFUY0JMdTBxSFE4N0FRZ29EUjBQQW1pbERCa0ZIeGdkRGdKS0lUY3hBUndSQ1NNSUFBQUIvL1lBQUFIS0Fpa0FPQUE3UURnVEFRRUNEQUVBQVFKTUJ3RUNDUWdDQVFBQ0FXa0dBUVVGQTJFRUFRTURGazBBQUFBVkFFNEFBQUE0QURnaUlUUkJKU1VvSmdvSEhpczNGaDBCQnc0Qkl5SW1OVFEzTmpjMEp5TWlKelUwTnpZN0FTYzBOejRCTXpJWEZqc0JNaFlWRkFZckFTSW5KaU1YRlRNZUFSY1ZGQWVyQWdVQkd4UVVIQUlDQVFJcEhROG9EQTBSQWdJR015VVNFelZRU2hRY0hCUm9ZZ2dRRVFGNU1CTUJOK1FnSUJaZUZCd2NGQndiSUNFZEhpZ05IZzRDaXhNVEhSVUNBeDBURkJ3RUFWTXdBUnNTQ1NNSUFBQUJBQjcvN0FKUUFzc0FaZ0J4UUFvaEFRUURDd0VHQVFKTVM3QXhVRmhBSWdBRUF3RURCQUdBQWdFQkFBWUFBUVpwQUFNREJXRUFCUVVvVFFjQkFBQXNBRTRiUUNBQUJBTUJBd1FCZ0FBRkFBTUVCUU5wQWdFQkFBWUFBUVpwQndFQUFDd0FUbGxBRlFFQVhseFVVa3RKTmpVU0VSQU5BR1lCWmdnSUZpc0ZJaVluTmpVbUp5WTFORGMrQVRzQk56WXpOREkyTWo4RE5UOEJOalF6TlNZbkppOENMZ0VuSmljaUppY21KeUluSXlZakR3RUdCd1lQQVFZUEFRNEJGUVlWQmhVVUJpTWlKalUwTnpZM05qTXlGeFlYRmhVVUJ3WXJBUllYRmhVVURnSUJHUk1jQVFJQkF3Y0RBUnNVT1Q0SkNnTUVBUllTRHdrSEFnRUJCQWdERUFFU0FRUUJFZzRDQlFVaUZ3SUJDaGtaRUFjY0JoOFFEQVlIQndJRUJnSWNGQk1kSnhVZ1gwbGpUMHdnRURnN1p6WUJCQVlCQVJ3VUhCUWtKU1FqTlNJYUd4TWRBUUVCQVFZS0R4QUNGZ3NCQngwVkVRb1lBaEVDQWdFTkJnTUJDd0lCQXdJQkJnUUpCZ1VEQlFZR0JRRVNCeEVRRkJ3ZEhVUTNHZzRvS0N4U0tTcGFPalltSmlzc0VTVW5IQUFBQVFCUEFROEVVZ0Z5QUJRQUdFQVZBQUFCQVFCWEFBQUFBVjhBQVFBQlQyUnlBZ2dZS3hNME5qTXlOek0yTXpJV0ZSUUdJeUVHSXlFaUprOGRGTUxCc2JlM0ZCd2NGUDU5TVRIK1F4UWRBVDhVSFFFQkhSUVVIUUVjQUFBQ0FDbi9IZ0hQQUFBQURRQWJBRGl4Qm1SRVFDMEFBUVFCQUFNQkFHY0FBd0lDQTFjQUF3TUNYd1VCQWdNQ1R3OE9BUUFXRXc0YkR4b0lCUUFOQVF3R0NCWXJzUVlBUkJjaUpqVTBOak1oTWhZVkZBWWpCU0ltTlRRMk15RXlGaFVVQmlOYUZCMGRGQUZFRkIwZEZQNjhGQjBkRkFGRUZCMGRGR0lkRkJRZEhSUVVIWUFkRkJRZEhSUVVIUUFBQUFBQ0FFci83QUY0QXNRQURRQW5BRU5Mc0NaUVdFQVBBd0VCQVNoTkJRSUVBd0FBSmdCT0cwQVRBQU1ES0UwQUFRRW9UUVVDQkFNQUFDWUFUbGxBRXc4T0FRQWNHZzRuRHljSUJnQU5BUTBHQ0JZckZ5SW1OUkUwTmpNeUZoVVJGQVlYSWlZbk5qVTBKeVk5QVQ0Qk16SVdIUUVVRnhZVkZBY09BWG9VSEJ3VUZCd2N1Qk1jQVFJRUJBRWJGQk1kQkFRQ0FSb1FIQlFDYmhRY0hCVDlraFFjQkJ3VVEwTmtaVzl3U2hRY0hCUktjRzlsWkVOREZCd0FBUUFwQXJZQnp3TVlBQTBBSjdFR1pFUkFIQUFCQUFBQlZ3QUJBUUJmQWdFQUFRQlBBUUFJQlFBTkFRd0RDQllyc1FZQVJCTWlKalUwTmpNaE1oWVZGQVlqV2hRZEhSUUJSQlFkSFJRQ3RoMFVGQjBkRkJRZEFBRUFWd0FaQVpFQ0J3QWNBRUpBQ1E0TUJ3TUVBUUFCVEV1d0YxQllRQXdBQVFFQVlRSUJBQUFsQVU0YlFCSUNBUUFCQVFCWkFnRUFBQUZoQUFFQUFWRlpRQXNDQUJNUkFCd0NIQU1JRmlzQk16SVhGUlFQQVJVV0Z4WVZGaDBCRkFjaklpY21Md0VtTlRRM05nRmZCaDBQSUpvOEpVd0JKdzRjTWdkV0xTRVYwd0lIS0E4VUhJNENLekpTQ2dNR0NoME9RZ1ZhSWhRZUZCVFJBQUVBVlFBbUFab0IvUUFsQUNsQUpod1ZDQVlFQVFBQlRBSUJBQUVCQUZrQ0FRQUFBV0VBQVFBQlVRRUFGQklBSlFFbEF3Z1dLeE15RnhZWEZoVXlIUUVVQmdjR0J3WWpGQ3NCSWljMU5EYzJOelkzSmljbUp5WTlBVFEzbEJjOUJXVkdBbEUzRUM4NUJnY01IUThtSjBnUklCRXVOam9OS0FIOVJBTllKaGNJQ3hwTUp4SWRLZ0lvRFJnYkVrQU1JZ2dyTEQwUEV3VWVEZ0FBQUFRQVJ2L3hBWDBDeHdBa0FEQUFWUUJoQUVGQVBsRkNPd29FQVFBQlRBVUJBUUVBWVFRQkFBQW9UUWNCQXdNQ1lRa0dDQU1DQWlZQ1RsZFdKaVZkVzFaaFYyRk5TelUwTENvbE1DWXdIQm9UQ2dnWEt4TTJOell6TWhjV0Z4WVZGQWNHRHdFR0J3WWRBUllYRmhjT0FTTWlKaWMwSnlZMU5EWVRJaVkxTkRZek1oWVZGQVlUTmpjMk16SVhGaGNXRlJRSEJnOEJCZ2NHRlJjV0Z4WVhEZ0VqSWlZbk5DY21OVFEyRXlJbU5UUTJNeklXRlJRR1dRVVNEQXdHQnhVSkJnRURBZ0lEQVFJQkFnSUJBUndVRkJ3QkFnTUNLeFFkSFJRVUhSMlNCUklMREFjSEZRa0dBUU1DQWdNQkF3RUJBZ0lCQVJ3VUZCd0JBZ1FES3hRZEhSUVVIUjBDb3hRS0JnSUdFUXdOQmdZTEN3NFhGeUlqRnljbU5UVVZIQndWTkRRNE9BNVUvWk1kRkJRY0hCUVVIUUt5RkFvR0FnWVJEQTBHQmdzTERoY1hJaU1YSnlZMU5SVWNIQlUwTkRnNERsVDlreDBVRkIwZEZCUWRBQUVBSi84bkFtc0RLZ0FmQUNkQUpBWUZBZ0VFQVFJREFRSm5BQUFBQTJFQUF3TW5BMDRBQUFBZkFCNGpJeVFqSXdjSUd5c0JOVFEyTXpJV0hRRXpNaFlWRkFZckFSTVVCaU1pSmpVREl5SW1OVFEyTXdFWEhSUVVIY0VVSFIwVXdRRWRGQlFjQWNFVEhSMFRBbGVpRkIwZEZLSWRGQlFkL1dJVUhCd1VBcDRkRkJRZEFBRUFKLzhuQW1zREtnQXhBREpBTHdnQkJna0JCUUFHQldjRUFRQUFBVjhEQVFFQkkwMEFCd2NDWVFBQ0FpY0NUakV2SXlNa0lTUWpJeVFnQ2dnZkt5VXpNaFlWRkFZckFSVVVCaU1pSmowQkl5SW1OVFEyT3dFUkl5SW1OVFEyT3dFMU5EWXpNaFlkQVRNeUZoVVVCaXNCQVhyQUZCMGRGTUFkRkJRY3doTWRIUlBCd1JNZEhSUEFIUlFVSGNFVUhSMFV3VnNkRkJRY294UWNIQlNqSEJRVUhRR2FIUlFVSGFJVUhSMFVvaDBVRkIwQUFBUUFNdi9sQXRRQ3dBQVJBRElBVGdDTkFJTkFnSFp6QWdvSExDTUNBZ0VDVEFBRUJnZ0dCQWlBQUFjSUNnZ0hDb0FBQ2drSkNuQUFBUVVDQlFFQ2dBMEJBd0lBQWdNQWdBQUdBQWdIQmdocEFBa09BUVVCQ1FWcURBRUNBd0FDVnd3QkFnSUFZUXNCQUFJQVVWQlBORE1TRWdFQWg0U0JmMlpsWUY1WVZrK05VSTFEUVROT05FNFNNaEl5Q2dnQUVRRVJEd1lXS3dVaUp5WTFORDhCTmpNeUZ4NEJGUlFIQmljMk56WTNNejRCTlRRdUFTYzFKaThDSXc0QkR3RWpCZ2NWRmg4QkhnRVhCU0ltTlRRM05qYzBOelkzTmpjMk16SVhGaFVVRHdFR0J3WUhCaE1pSnlZbk5qYzJNeklYRmhVVUJ3WWpJaWN1QVM4QklnWWpEd0VVQmc4QkZBNEJEd0VVQmhVWEZCWWZBVElWSHdFek1qVTNOanNCTWhZZEFSUUhCZ0k5U1RBdUt3SXNOaElUUGt3eExUUVJEUWdFQVFNREFRd01DUXNTQ3djSUR3Y0hBUVFCQVFZQkNod1QvbVFVSFE0MEp3SlZmekkxRUJzTURCZ0hQVmxSVkd3UEhpb2xTd0VFUmlFbkx6a1lCdzhjREF3UEJnVVNEZ1VDQndvQkFRb0NBUUVEQVFFRkJRa0JDeEVIR1FRUUVnd0xIQllqR3owNVEwQXhBeXdGRldzK1FTd3BZQVFNQndZRkNnWUdEaUVQQVFzSkNnTUNDZ29NQ2hFS0N4QUJGUnNGU0IwVUV3ODBOQUVCYjlCU1VCZ0hEaDBNQzErVWVJTnhEZ0Y5RkM5WVd6a1hJUThjREF3WUJ3b0JBd1VDQkFvQkFRRVJBUVVGQVF3Q0JBa05CQTBGQ1FFR0JBUURFQndTQ3hBU0hnQUZBQm4velFNM0F2RUFBZ0EvQUZVQWNRQi9BRnhBV1hKYkFnY0lEQUVGQndKTUFBWUZBQVVHQUlBQUF3QUJCQU1CYVFvQkJBQUlCd1FJYVFBSEFBVUdCd1ZwQUFBQ0FnQlhBQUFBQW1FSkFRSUFBbEZYVmtGQWYzMTNkbWRsWW1GV2NWZHhTMGxBVlVGVkl5RWpDd1lYS3lVak53Y3lOek0yTnpZM05qYzJOU1luSmpVbUp5NENOU1l2QVNZbkppY3VBU01pQndZSEJnY0dCd1lIQmdjR0J3WUhGQVlWRkJjV0h3RVdGeFlYRmhjaUp5WW5KalUwTnpZek1oY1dGeFlWRkFjR0J3WURNaGNXSHdFVkZBY0dCd1lqRlJRSEl5SW5KajBCSmowQk5EYzJGeFVXSFFFMk56WTlBVFFtS3dFQi9RRURTeUlpQXpveEp6QVdBUUlERndNUUZRRUNBUThiQ3hvaUhDVUlFQ2M4THc4REp3MGFJdzRLQWdFQkF3OERCUWNMRWdjUlAwRmNGQ2hCVEpGSVVIcHduSFZrVFRCQ1NUQkxUM2hEU0E4TEFpd21KallmS0EwZURnSUVLQlVtQkVJakJUQWFGKzhDd2dJS0lSUlpPeG9XSmo0OUJRSWhIZ0lCQVFFVkZna1RFQXNJQVFRU0JRSVNEUk11RmhnQ0JnSUlMUmtDS3hVck9ETWFDUmtmSEE0RFl4TWVTRmVqem50b096Qk5iM3lOWlVRbUpRSjdOdzB5RXlRbVBTMFFGVkVlRGlnTURiUkVDRzRkRHdSbE96MEZIUUZIQnhBSUtBMEFBZ0FVLy9ZQ29nSy9BQklBVkFDTFFCQVFBd0lCQURBQkJnUlJNZ0lGQmdOTVM3QVFVRmhBS1FBR0JBVUZCbklBQXdBQUFRTUFhUWNCQVFBRUJnRUVad0FGQWdJRldRQUZCUUppQ0FFQ0JRSlNHMEFxQUFZRUJRUUdCWUFBQXdBQUFRTUFhUWNCQVFBRUJnRUVad0FGQWdJRldRQUZCUUppQ0FFQ0JRSlNXVUFZRkJNQUFFMU1RVDhzSng4ZEUxUVVWQUFTQUJJNUNRWVhLd0V1QVNjbUp5SXZBU1lqSnlJSEJnOEJGQWNUSWlZbkppY21OVFEzTmpNeUZ4NEJGUlFHQndZckFTSW5JeFFQQVJjV0Z4WVhNaFlYRmg4QkZoY1dNeFl6TWpZL0FUSTFOajhCTmpjMk16SVhGaFVVQndZQjZBRUtBUTBnQXdVUUN3c2tKQnNpRWhjQjBpbHdQSFl2Rm5aWGVTNHVrMWtDRVJNWEo5RmhPZ0VCQVFZQkRSQUJCQU1XRndVTUh4UUdBeVFWSmlnQ0FSWUVBUVlRQ3cwR0J5TUNKd0dpSjBraURSQURCQVVDQlFnR0M1UUsvbE1US0ZSL1FrdWlVam9MTU4wZ0JoNFNEd0VkSEIwUUd4d05EZ01DRUFvQ0JnY0VBd2tOQVFFS0NRTVRDUWNDQ3lJSEIzUUFBQUVBV3dFckFMMEJqUUFMQUI5QUhBQUJBQUFCV1FBQkFRQmhBZ0VBQVFCUkFRQUhCUUFMQVFzREJoWXJFeUltTlRRMk16SVdGUlFHakJRZEhSUVVIUjBCS3gwVUZCMGRGQlFkQUFBQ0FCMy83QUdTQXRjQVJ3QnZBRXBBUjJ0ZFNBTUNBeVlCQVFJRUFRUUJNd0VBQkFSTUFBTUNBNFVBQkFFQUFRUUFnQVVCQUFDRUFBSUJBUUpaQUFJQ0FXRUFBUUlCVVFFQVB6MGVIQTBNQ0FjQVJ3RkhCZ1lXS3hjaUp5WTlBUVlISWlZMU5EWTNOREkzTkRjek56VTJOelkzTmpjMk16SVhGaFVVQndZUEFoUVhGQllYRkJjVkZ4UWZBVE0zTkRZM05qOEJOVFl6TWhjV0ZSUUhCZ2NHQXpZL0FUWTNOalUvQWpZMU5qVTBKaThCSXpVbklnWWpCeUlPQXc4Q0JnY1VEd0VVNFJBUllBa0tGQndiRkFFUEFRRUlCUUlFSFFvYU1qb25JU3dDRnBVa0FRSUJCQUlHQndvSEVnUUJFUTRJRHh3TERCZ0hIVEVyTXhrRkJDUUlBZ2NMQVFFQ0F3SUZBUVlHQWdFUUFRUUZCQVVFQXdVTkJ3RUhGQVVqaVFVQ0FSMFRGQnNCQVFrQkFRWUNPRGlQWENVYUtob29VeEFRdG5RYkxDRVBCd01RQWdJQ0NBRUhCUVlCQVFFSENnY0JHQVlQR3cwTEt4UVRBWFVaQndjMEdRSUNFaW9LQVFRUUV3b1RCZ29CQXdFRkFnTUNBZ1lGRGlzc0F3SnNGQUFCQURyLzdBTFhBczhBb0FFY1M3QUpVRmhBRDBnQkFRT1Jkd0lHQ0hVQkNRWURUQnRMc0FwUVdFQVFTQUVCQTVGM0FnWUlBa3gxQVFvQlN4dEFEMGdCQVFPUmR3SUdDSFVCQ1FZRFRGbFpTN0FKVUZoQU5RQURBZ0VDQXdHQUFBY0FBZ01IQW1rQUFRQUlCZ0VJYVFvQkNRVUFDVmtBQmdBRkFBWUZhUW9CQ1FrQVlRc0VEQU1BQ1FCUkcwdXdDbEJZUURvQUF3SUJBZ01CZ0FBSEFBSURCd0pwQUFFQUNBWUJDR2tBQ1FVQUNWa0FCZ0FGQkFZRmFRQUtDd0VFQUFvRWFRQUpDUUJoREFFQUNRQlJHMEExQUFNQ0FRSURBWUFBQndBQ0F3Y0NhUUFCQUFnR0FRaHBDZ0VKQlFBSldRQUdBQVVBQmdWcENnRUpDUUJoQ3dRTUF3QUpBRkZaV1VBZkFRQ2ZuSmlWbEpPUWpvU0NkSEp1YTJsbk5UUXlNUlFPQUtBQm9BMEdGaXNGSWljbVBRRTBKelVtUFFFME56WXpGeklYTlRJK0FUOENOajhCTkM4Q0ppY21KeTRDSnlNbUp5SW5JeVl2QVNJUEFRWUhJZzhCQmdjT0FpTUhEZ0VIQmc4QkJnY1ZCaFVVRnhZZkFoNEJGeFVXSHdJV0Z4WVhGaDBCRkJZVkZBOEJCaU1tSnlZckFTSW1OVFEyTnpNWE5DY21KeVluSmpVME56WTNOak15RnhZWEZoVVVCd1lIQmlzQkZ4WVZNamMyTXpJV0ZSUUdJeWNpQmdJK0VSSkZBUUl0RVJBVUR3SUhCQVFIQndJT0FRTUNBUVVKQlFnVUFRWUNGQUVNRUFNREF4RVNDeklTRTBNbUFnRUhFeGtCQXdJQkFRY0xCZ2tIQWdrR0FnSURCZ1VDQlE4RERnZ01HQVFERFFraEFpd0dFaE1oQ0JrWkhoUWNIQlF4UGdFU0Vqc2VKV0JBVDFkRFpFd3pHQmtTQ3hzbk9BMENBaEFSSnljVUhCd1VJUllnRkFJSFZRb0tDUWNTRXc0eEZBUUJBUUVDQVFjTUJpc1JMalFMQkIwaURSZ2NBUWNDRkFrSUF3Y0RBUU1EQVE4QkF3Y1NBUUlDQWdVTUJnNFBCUkl5QVFVZEhBZ1VGUThFREJnREFSRUZDZzBCQWdNSEZDc0dMUk1MUlFzQkJBSUNBaHdVRXh3QkJnNHJCZ3duUFVoU20wNHlFd3BDTVVWSllUNDdLQjRsSVFvVEFnSWNGQk1kQVFRQUFnQWgvK3dDaHdMZ0FGSUFtUUJTUUU4NkZBSURBZzhCQmdHT2pXWURCUVlEVEFBREFnRUNBd0dBQUFRQUFnTUVBbWtBQVFBR0JRRUdad0FGQUFBRldRQUZCUUJoQndFQUJRQlJBZ0J5Y1ZkVFJrUS9QU2tuREFvQVVnSlNDQVlXS3hjaUppY21OVFEzTmpjMk16SVhGaGMyTno0Qk5TWTFKeVl2QVRVbUp6UW1KeTRCSnlNbUx3SWlEd0VHRHdFT0FRY0dCeFFqRlFjVkJnY1ZGQVlqSWlZMU5EYzJNeklYRmhVVUJ3WUhCZ2NHQndZbk56STNNajhCTmpjeU56WS9BVFkzTmpjMk55YzFKaWNqSmljdUFpTVBBUVlISXc0Q0J3WUhJZzhCRGdFUEFTSVZCZ2NHRlFjVUJoMEJGeFFmQVJZZkFSNEJId0d5Qnk4ZVBTUXdTejQ4SWlGV01SRUtCZ0lCQVFJRUF3a0pBd0lSQXdJQkVnc1lEd3dMQlE0T0NROENBUVlHQVFrRUFoMFRGQndnUUd3OU9tazZEeFZFYkVGR0lCOFVCZ0VKQ2lFY0hBUVhHd2NIRGhzT0JoUU9EZ29XQWdneERCVUNGaGNMRkJNQkFRTUZCQkFQQXdRQ0J3d0dCZ0VMQ0FJRkFRRUpCQUlCQ0FFRUJRSVVBaDFHV3pzMVJTTWRDQmNoS0NzZUNDY0NCd1FOREFnQkVBMEJBd01SQWdJTkFnWUJBUUVEQlFRSkFnRUVCd0VCRGdFSERSQVVIQjBaTnl4U0kwbUdWNEFuSkhNN0h3d0hZQUVCQXdnSEN3NFBCd1VNR3hJR0d4b0pBUWNLQlJBREJBSUJBZ1FJQVFFREFRa0xCUUlGRFFZSEFnNFJBd01RQVFNRkVnRUpHdzBDQXc4QkJnVUNBQUFBQUFJQUZQL3VBb0VDeFFBTkFFQUF2TFVFQVFBRkFVeExzQWxRV0VBaUFBVUFCWVVBQXdBQkFBTUJnQVlCQUFNQkFGY0dBUUFBQVdFRUFnY0RBUUFCVVJ0THNBcFFXRUFmQUFVQUJZVUVCd0lCQWdHR0JnRUFBZ0lBVndZQkFBQUNZUU1CQWdBQ1VSdExzQXRRV0VBYkFBVUFCWVVHQVFBQkFRQlhCZ0VBQUFGaEJBTUNCd1FCQUFGUkcwQWlBQVVBQllVQUF3QUJBQU1CZ0FZQkFBTUJBRmNHQVFBQUFXRUVBZ2NEQVFBQlVWbFpXVUFYRHc0QUFDOHRHaGdXRkJNUURrQVBQd0FOQUFvSUJoWXJKU2NtQXljR0J3WUhCZzhCTXg4QklpY21Ld0VtSXdjT0FTTWlKeVkxTkRjMlB3RXlORFkxTnpZM05qYytBVE15SHdFV0h3RVdId0VXSHdFV0ZSUUhCZ2NDQnhFNlVoQWpHeElXTFRNQjAyZHNEaDVFWnM0TERDRUdEQVlqQ3dNVkNBSVVBUUVFSXkwMk93a3FJRFF4TXg0UUFRTUVRd01FQVFjSER4dFJJM1lCQ1RRN1B5czllWFlEQVdRREFnRUJBUVFrQ1E0WUVBOEdNQUlCQVFwVGVKUmZEbFcxb0ZZcUFna0lsUWtGQXd3TURBMFdBUUFBQUFBQ0FDMy8rQU4wQTZNQWxBQ3ZBZ05Mc0MxUVdFQVFwWjhDRFF3NEFRSUJYUkVDQ0FJRFRCdEFFS1dmQWcwTU9BRUZBVjBSQWdnQ0EweFpTN0FNVUZoQUx3NEJEQTBOREhBQURSQUJDd01OQzJvRkJBSUNDZ0VJQUFJSWFRQURBeFJOQmdFQkFRQmhDUWNQQXdBQUZRQk9HMHV3RUZCWVFDOE9BUXdORFF4d0FBMFFBUXNERFF0cUJRUUNBZ29CQ0FBQ0NHa0FBd01VVFFZQkFRRUFZUWtIRHdNQUFCb0FUaHRMc0JKUVdFQXpEZ0VNRFEwTWNBQU5FQUVMQXcwTGFnVUVBZ0lLQVFnQUFnaHBBQU1ERkUwQUJnWVVUUUFCQVFCaENRY1BBd0FBR2dCT0cwdXdGVkJZUURJT0FRd05ESVVBRFJBQkN3TU5DMm9GQkFJQ0NnRUlBQUlJYVFBREF4Uk5BQVlHRkUwQUFRRUFZUWtIRHdNQUFCb0FUaHRMc0J0UVdFQTJEZ0VNRFF5RkFBMFFBUXNERFF0cUJRUUNBZ29CQ0FjQ0NHa0FBd01VVFFBR0JoUk5BQWNIRlUwQUFRRUFZUWtQQWdBQUdnQk9HMHV3TFZCWVFEb0FEZ3dPaFFBTURReUZBQTBRQVFzRERRdHFCUVFDQWdvQkNBY0NDR2tBQXdNVVRRQUdCZ2RoQUFjSEZVMEFBUUVBWVFrUEFnQUFHZ0JPRzBCQkFBNE1Eb1VBREEwTWhRQUZBUUlCQlFLQUFBMFFBUXNERFF0cUJBRUNDZ0VJQndJSWFRQURBeFJOQUFZR0IyRUFCd2NWVFFBQkFRQmhDUThDQUFBYUFFNVpXVmxaV1ZsQUtaYVZBUUNxcUtTaW5weVZyNWF2ajQ2Smg0U0RjM0ZTVUVSRFFrRTBNeXdxSFJzQWxBR1VFUWNXS3hjaUpqVTBOelEyUHdFMk56WS9BVFkvQVNZbkppTTFKeVkxTkRZM01oY1dId0VWRnhZWEhnRVhIZ0VYTXpjMEx3RTBOell6TWhjV0ZSUUdCeFFYRmhVR0ZUYzJNejRCTlRjMk56WS9BVFkzTmpNeUZ4WVZGQWNHQndZSEJnY1dGek1YSGdJWEZoY1dId0VXTXhZVkZBY0dJeUluSmljbUx3RXVBVFVtTHdFbUp5SUdJd01VQmlNaUppYzNORGNqRHdFR0J3WUJJaWNtTlRRM05qTXlGeFFYRmpNeU56UTNOak15RmhVVUJ3WndGaDBPQXdFU0d3SVNGajBIQmdZc1doNERGQTRjRlJRT0lSMHNBeG9iQ2c0S0FRVUVSUUVDQVIwTERRWUhKQU1CQVFJQkVCVVdBZ1FVTWlrZ0lCY0pEQTBmREFzWEJTRTJFeEk2THhvR0FTZ0dCQVFLSHhzVkVoQUlBaGNIRUJ3Y0pSSVZLQ0lXQndVVkdCWUpDQWdUQ2dFZEZCUWNBUUVCUlFFcUxpUTlBVFZmSVFrV0RRMHBDQUlDSlRJRUhRc0tEU0lzSmdnZEVoTVJBUU1DR2pBR0l5RlpDUW9KTEhvc0FSZ1FGQkljQVE0bktUc0JCQ0FmQ1JRSkFnRUJkeU1qRmowUkJ3SUxKQVlMQlI0UUlpSWFWQUVEQWdNQkR6d3NJUjBaQ1JzWUJoQWJEQXc5TFJJVFBqVWZDek1KQkFZTUpoY1NGUk1LRWhnTURCa3hGQklsTEIwS0F3TVpJUmNFQmdQKytoUWRIUlNrTVRBQ1BqNUVkUUwyUlJVWklCRUlLZzhHRENFaERRVVlHejBsSUFBQ0FEei85Z01uQXdZQWF3Q0dBVkZBRW54MkFnd0xNZ0VFQTJkVkdBVUVBUVFEVEV1d0NsQllRQ3dOQVFzTURBdHdCZ0VFQ1FFQkFBUUJhUThCQ2dvTVlRQU1EQlJOQndVQ0F3TVdUUWdDRGdNQUFCVUFUaHRMc0JKUVdFQXNEUUVMREF3TGNBWUJCQWtCQVFBRUFXa1BBUW9LREdFQURBd1VUUWNGQWdNREZrMElBZzREQUFBYUFFNGJTN0FiVUZoQUt3MEJDd3dMaFFZQkJBa0JBUUFFQVdrUEFRb0tER0VBREF3VVRRY0ZBZ01ERmswSUFnNERBQUFhQUU0YlM3QXRVRmhBTXdBTkN3MkZBQXNNQzRVR0FRUUpBUUVJQkFGcUR3RUtDZ3hoQUF3TUZFMEhCUUlEQXhaTkFBZ0lGVTBDRGdJQUFCb0FUaHRBTndBTkN3MkZBQXNNQzRVR0FRUUpBUUVJQkFGcUR3RUtDZ3hoQUF3TUZFMEFCUVVXVFFjQkF3TVdUUUFJQ0JWTkFnNENBQUFhQUU1WldWbFpRQ2R0YkFFQWdYOTdlWFZ6YkladGhtWmxYbHhNU2tGQU9UY3dMaVVqRHcwSEJnQnJBV3NRQnhZckJTSW1KelFuQmlNR0J3NEJCd1lqSWljbU5UUTNOamMyTnlZbkppY21KeVkxTkRjMk16SVhGaDhCRmhjV0Z4WXpOelEzTmpVME56WXpNaFlYRmhVVUJoVVhOamMyTXpZM05qYzJNeklYRmhVVUJ3WUhCZ2NXRng0QkZ4UUdCeUluSmljbUx3SWlKeFlWRkFZRElpY21OVFEzTmpNeUZ4UVhGak15TnpRM05qTXlGaFVVQndZQnJCTWNBUUVsRGlFa0t5d2dEQXdhRUFZYUV3dFBIZ2c2RkNJVUJ4b0hEeHNNQ3lVWUVDVWRGQllORnhvQ0FRWU9Hd3dmQkFJRE1TVXZCd0VFQmpzOUJ3Y01EUllrRkNnTlZGRkNEaHdCSEJRVkRVSWVKaVVCRkNzTUFSd1dYeUVKRmcwTktRZ0NBaVV5QkIwTENnMGlMQ1lLSEJTYklBVWJNMEU3RkFjWURBc2NFUkFQZFNFSVVCVXpIQWNTR1F3TUdBY2JKeGtyS3hzUkF3Rm5IZzRQSlF3WUVCTVVGQlFwWmdNd05na0hCMUVaQXdrT0dpRVBDRElSWmtaWEVpSVNFeHdCRGxJakxCd0NEZ1FrbEJRY0FsdEZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQU1BV3YvMkFyTURVZ0IyQUlJQWpnQ2t0V1FCQmdVQlRFdXdDbEJZUURnQUJnVUVCUVlFZ0FBQkF3SURBUUtBQ3dFSkNnRUlCd2tJYVFBRUFBTUJCQU5uQUFVRkIyRUFCd2NVVFFBQ0FnQmhEQUVBQUJVQVRodEFPQUFHQlFRRkJnU0FBQUVEQWdNQkFvQUxBUWtLQVFnSENRaHBBQVFBQXdFRUEyY0FCUVVIWVFBSEJ4Uk5BQUlDQUdFTUFRQUFHZ0JPV1VBZkFRQ05pNGVGZ1g5N2VXeHBZVjlQVFRZME1DNGNHUWtIQUhZQmRnMEhGaXNGSWljbU5UUTNOak15RmhjV0Z4NEJId0VXSHdFV0h3RXpGak15TnpZek5qOEJOamMrQVRjMVBnRS9BVFUyTnlNaUpqVTBOanNCTlRRbk5TWXZBU1l2QVNZbk5TY21KeVlqSnlZdkFTWWpCZ2NqQmc4Q0JnY09Bd2NHQndZaklpY21OVFEzTmpjMk16SVdGeFlYRmhVVUJ3WUhCZ01VQmlNaUpqVTBOak15RmhjVUJpTWlKalUwTmpNeUZnRjVNek81Qmc0Y0RCOEVBUU1CQXdJSkV4VVdHQmtRQmhVVUVBOERCQ0lTQlFvT0FRc0hCQmdLRGd3SDZSUWNIQlR1QVFjUkFRWVVCUWtJQkFrS0FnSUNHQmdPRWhJckJBWXhHdzhIQndZQkJBTUJDd1VIRHg4YkVBY0RGenRjZWcxUE8wRWZMbG9YSVVacUhSUVVIUjBVRkIyc0hSUVVIUjBVRkIwS0REUmxEZ3dZRUJRSkNnRUVBUVlNQ2dnSkJnTUNBUUVGQ1FJREN3RUlDUUVFSXhNZEFoMGZIUlFVSFFFRkFRSXhMQUlSSFFZTEJnRURCZ1FDQVFrREFRSUNBZ29LQlFRREJBRUNBd0VMQmc0akdRc0xDQWRBSXpJRUhpVkVYMmlPZHlFWExBTXJGQjBkRkJRZEhSY1VIUjBVRkIwZEFBTUFMUC8yQWZVQ3RRQmpBRzhBZXdFalM3QUtVRmhBT1FBR0JRUUZCZ1NBQUFFREFnSUJjZ0FFQUFNQkJBTm5DZ0VJQ0FsaEN3RUpDUlJOQUFVRkIyRUFCd2NXVFFBQ0FnQmlEQUVBQUJVQVRodExzQTVRV0VBNUFBWUZCQVVHQklBQUFRTUNBZ0Z5QUFRQUF3RUVBMmNLQVFnSUNXRUxBUWtKRkUwQUJRVUhZUUFIQnhaTkFBSUNBR0lNQVFBQUdnQk9HMHV3S1ZCWVFEb0FCZ1VFQlFZRWdBQUJBd0lEQVFLQUFBUUFBd0VFQTJjS0FRZ0lDV0VMQVFrSkZFMEFCUVVIWVFBSEJ4Wk5BQUlDQUdJTUFRQUFHZ0JPRzBBNEFBWUZCQVVHQklBQUFRTUNBd0VDZ0FBSEFBVUdCd1ZuQUFRQUF3RUVBMmNLQVFnSUNXRUxBUWtKRkUwQUFnSUFZZ3dCQUFBYUFFNVpXVmxBSHdFQWVuaDBjbTVzYUdaYVdGQk9SVVEwTWk0c0hSb0pCd0JqQVdNTkJ4WXJCU0luSmpVME56WXpNaGNXSHdFZUFoY3pGaGN5RnpNV0Z4WXpOekkvQVRZL0FUWTNOamMwTmpNM05qY2pJaVkxTkRZN0FTWXZBU1luSmk4QkppY2lMZ0V2QWc4QkJnOEJEZ0VQQVFZaklpY21OVFEzTmpjMk16SVhGaGNXRlJRR0J3WURGQVlqSWlZMU5EWXpNaFlYRkFZaklpWTFORFl6TWhZQkViY2pCd2tOR3cwTUZBVURBZ1FCQVFFRENnSUJBUkFqR0JnUUNnOERCUThHRlFRTkNRSUJBUWNCeUJRY0hCUzhBd1FFQ0FrWEN3UU5EZ0lHQkFJU0NSVVBMaGtDQmdRQ0F3OGJEQXdZQnlWVkp5WWpJbmtxRTFkVEhFb2RGQlFkSFJRVUhhd2RGQlFkSFJRVUhRcHpFUWNNRGhVSERCb0hCUVVDQVFNRkFRY0dBd0VIQVFJSkJSRUpFUlFEQXdRV0NSMFRGQndLQ1FzUkVCNEdBd2tIQXdFQkJBRUJBd2dRQVFZQ0F3UVlCdzhiREF3N0V3d0tMWWcwTkV1TkdRZ0NqaFFkSFJRVUhSMFhGQjBkRkJRZEhRQUJBRXIvOEFDcUFyNEFEUUFhUUJjQUFRRW9UUUlCQUFBbUFFNEJBQWdHQUEwQkRRTUlGaXNYSWlZMUVUUTJNeklXRlJFVUJub1VIQndVRkJ3Y0VCd1VBbTRVSEJ3VS9aSVVIQUFBQWdCSy8rd0JlQUxFQUEwQUp3QkRTN0FtVUZoQUR3TUJBUUVvVFFVQ0JBTUFBQ1lBVGh0QUV3QURBeWhOQUFFQktFMEZBZ1FEQUFBbUFFNVpRQk1QRGdFQUhCb09KdzhuQ0FZQURRRU5CZ2dXS3hjaUpqVVJORFl6TWhZVkVSUUdGeUltSnpZMU5DY21QUUUrQVRNeUZoMEJGQmNXRlJRSERnRjZGQndjRkJRY0hMZ1RIQUVDQkFRQkd4UVRIUVFFQWdFYUVCd1VBbTRVSEJ3VS9aSVVIQVFjRkVORFpHVnZjRW9VSEJ3VVNuQnZaV1JEUXhRY0FBRUFTdi93QWdJQ3ZnQXhBRGRBTkFjQkF3WUJCQVVEQkdjQUFBQW9UUWdCQWdJQlh3b0pBZ0VCSlUwQUJRVW1CVTRBQUFBeEFEQWhKQ01qSkNFa0l5TUxDQjhyRXpVME5qTXlGaDBCTXpJV0ZSUUdLd0VWTXpJV0ZSUUdLd0VWRkFZaklpWTlBU01pSmpVME5qc0JOU01pSmpVME5qUDVIQlFVSEhnVUhSMFVlSGdVSFIwVWVCd1VGQngvRXgwZEUzOS9FeDBkRXdJYmN4UWNIQlJ6SFJRVUhjUWRGQlFkY3hRY0hCUnpIUlFVSGNRZEZCUWRBQUFDQUViLzhRQzVBc2NBSkFBd0FDMUFLaHNCQUFFQlRBQUFBQUZoQUFFQktFMEFBd01DWVFRQkFnSW1BazRtSlN3cUpUQW1NQ0loS1FVSUZ5c1RIZ0VWRkFjR0ZRNEJJeUltSnpZM05qYzFOQ2NtTHdFbUp5WTFORGMyTnpZek1oY1dBeUltTlRRMk16SVdGUlFHcHcwQ0F3SUJIQlFVSEFFQkFnSUJBZ0VEQWdJREFnY0pGUVlIREF3U0doUWNIQlFVSFIwQ28wVlVEamc0TkRRVkhCd1ZOVFVtSnhjakloY1hEZ3NMQmdZTkRCRUdBZ1lLL1RvZEZCUWNIQlFVSFFBREFESC85UUtHQTZNQUp3QXVBRWtCUFVBUFB6a0NCd1lxQVFRQkJBRUNBd05NUzdBU1VGaEFLZ2dCQmdjSEJuQUFCd3NCQlFFSEJXb0tBUVFBQXdJRUEyZ0FBUUVVVFFBQ0FoVk5DUUVBQUJvQVRodExzQmRRV0VBcENBRUdCd2FGQUFjTEFRVUJCd1ZxQ2dFRUFBTUNCQU5vQUFFQkZFMEFBZ0lWVFFrQkFBQWFBRTRiUzdBYlVGaEFMQWdCQmdjR2hRQUNBd0FEQWdDQUFBY0xBUVVCQndWcUNnRUVBQU1DQkFOb0FBRUJGRTBKQVFBQUdnQk9HMHV3TFZCWVFEQUFDQVlJaFFBR0J3YUZBQUlEQUFNQ0FJQUFCd3NCQlFFSEJXb0tBUVFBQXdJRUEyZ0FBUUVVVFFrQkFBQWFBRTRiUURNQUNBWUloUUFHQndhRkFBRUZCQVVCQklBQUFnTUFBd0lBZ0FBSEN3RUZBUWNGYWdvQkJBQURBZ1FEYUFrQkFBQWFBRTVaV1ZsWlFDRXdMeWdvQVFCRVFqNDhPRFl2U1RCSktDNG9MaUVnSEJzTkN3QW5BU2NNQnhZckZ5SW5KalUwUHdFMkVqYzJNeklYRmg4QkZETVhGaGNXRlJRSEJpTWlKeVluSXdZUEFRWUhCZ0VtSndZSEJnY1RJaWNtTlRRM05qTXlGeFFYRmpNeU56UTNOak15RmhVVUJ3WmlHdzhIQWhVdmJrMFBHeVFMV1MwR0FRWThKZ1lZQ3cwR0RSaG80U0FlRXdZUkN3RXNKQ01jRmc4TlRsOGhDUllORFNrSUFnSWxNZ1FkQ3dvTklpd21DeGtMRFFZSFBwTUJJWVlZSk81bUR3RVFoMHdNRFJvUEJ3TUY4bHhjT0JNS0J3RjFXVm80TmlJakFZUkZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQVVBRGYvdkFpWURCZ0FDQURjQU9nQmRBSGdBMkVBVGJtZ0NDQWRHUlFJQUExc3NEdzBFQVFBRFRFdXdFbEJZUUMwSkFRY0lDQWR3QUFNQUFBRURBR2tNQVFZR0NHRUFDQWdVVFFBRUJCWk5DZ0VCQVFKaEJRc0NBZ0ljQWs0YlM3QWJVRmhBTEFrQkJ3Z0hoUUFEQUFBQkF3QnBEQUVHQmdoaEFBZ0lGRTBBQkFRV1RRb0JBUUVDWVFVTEFnSUNIQUpPRzBBd0FBa0hDWVVBQndnSGhRQURBQUFCQXdCcERBRUdCZ2hoQUFnSUZFMEFCQVFXVFFvQkFRRUNZUVVMQWdJQ0hBSk9XVmxBSTE5ZVBEc0RBM054Yld0blpWNTRYM2hZVmt0SlJFSTdYVHhkQXpjRE55QWZEUWNXS3pjMEp4YzJOelkzTWpVMk56WTFOalV1QVNjMEl5WW5KaWNtSnlZbkppY21Kd1lqQndZSEJnY0dCd1lQQVJjVUZ4UVhGaGNXSHdFV1B3RVZBeVluSmpVME56WXpNaGNuTkRjMk16SVhGaGNXRnpNWEZoVVVCaU1pSnlZbkRnRURJaWNtTlRRM05qTXlGeFFYRmpNeU56UTNOak15RmhVVUJ3WndBWHdTRVNVZUFSUUxFUUlCQXdZQkF3d0RBZzhDQ2hNREFoOGpBZ2NZRFE4VEVCVUhBd0VCQVFzQ0RoZ0VDQk1TcmdHYmRFQW5XejVSU0VVREJ3b2VEUThlQmdRYkFRa05IQmNTRUI0TUltSVJYeUVKRmcwTktRZ0NBaVV5QkIwTENnMGlMQ2JNQXdHQUFnWVNKUUVaR3lnV0NSSU1GUklCQ0JJREJBNEJDQWtCQWd3Q0FRY0ZEUlFXS1I0VUFob2FFeG9DQkI4VEFnWUpDTElGQlA3c0JXRkZUSVpjUEM0YkRnNFdCdy9FcUVvU0RSY1NIQkFwTWpFOUFtRkZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQUFDQUYvLzlBSXpBNk1BTUFCTEFNcTJRVHNDQ0FjQlRFdXdFbEJZUUM0SkFRY0lDQWR3QUFnTEFRWUJDQVpxQUFNQUJBVURCR2NBQWdJQlh3QUJBUlJOQUFVRkFGOEtBUUFBRlFCT0cwdXdHMUJZUUMwSkFRY0lCNFVBQ0FzQkJnRUlCbW9BQXdBRUJRTUVad0FDQWdGZkFBRUJGRTBBQlFVQVh3b0JBQUFWQUU0YlFERUFDUWNKaFFBSENBZUZBQWdMQVFZQkNBWnFBQU1BQkFVREJHY0FBZ0lCWHdBQkFSUk5BQVVGQUY4S0FRQUFGUUJPV1ZsQUh6SXhBUUJHUkVBK09qZ3hTekpMS1NRaEh4c1pGeFVSRGdBd0FTME1CeFlyRnlJbUp5WXZBVFEzTmpjME5qYzJNeUV5RmhVVUJpTWhCZ2N6TWhZVkZBWXJBUVlkQVRZM05qTXlGaFVVQmlNT0FSTWlKeVkxTkRjMk16SVhGQmNXTXpJM05EYzJNeklXRlJRSEJxSVJHZ1VSQVFFSUNBSVVFQThYQVVnVUhCd1UvczhDQnJjVUhSMFV2UVJGUkZSVUZSd2NGVlNuUzE4aENSWU5EU2tJQWdJbE1nUWRDd29OSWl3bURCUVFEeGhnYzNKNWVoRWFCQk1kRkJRZFlXSWRGQlFjVTFNM0FRTUVIUlFVSEFFSEF2bEZGUmtnRVFncUR3WU1JU0VOQlJnYlBTVWdBQUFBQUFNQUVmL3VBaDhEQmdBekFHSUFmUUQydG5OdEFnb0pBVXhMc0JKUVdFQTZDd0VKQ2dvSmNBQUZBZ01DQlFPQURRRUdBQUlGQmdKbkRnRUlDQXBoQUFvS0ZFMEFCd2NCWVFBQkFSWk5CQUVEQXdCaERBRUFBQndBVGh0THNCdFFXRUE1Q3dFSkNnbUZBQVVDQXdJRkE0QU5BUVlBQWdVR0FtY09BUWdJQ21FQUNnb1VUUUFIQndGaEFBRUJGazBFQVFNREFHRU1BUUFBSEFCT0cwQTlBQXNKQzRVQUNRb0poUUFGQWdNQ0JRT0FEUUVHQUFJRkJnSm9EZ0VJQ0FwaEFBb0tGRTBBQndjQllRQUJBUlpOQkFFREF3QmhEQUVBQUJ3QVRsbFpRQ2RrWXpVMEFRQjRkbkp3YkdwamZXUjlUMDAwWWpWaExTc3BKaVVrRWc4SkJ3QXpBVE1QQnhZckJTSW5KalUyTnpZek1oY1dGeFlWRkNFaUp4OERGUllmQWpJZUFSY1dGeklmQVRJM01qVXlOell6TWhjV0ZSUUhCZ015TnpZek5ETTJOek0wSnpRbk5TWW5OU1l2QVNZdkFTWXZBU0lQQVFZSElnY2pCZzhCQmdjVkZDTU9BUWNXRXlJbkpqVTBOell6TWhjVUZ4WXpNamMwTnpZek1oWVZGQWNHQVQrQlhWQUdaMUZiWUVKQUR3VCs5MHhLQWdjTUNSRVZCU01CQkFRQkRoSUZBaDRURXdVZ1NBY0lDdzRXSkZtTlBEd0VCUUlmRndFS0Fna0hDQW9DRFEwRkVSRWdGZ29mSFI0REF3RUhCZ3dNQmdFRUJBSlRTbDhoQ1JZTkRTa0lBZ0lsTWdRZEN3b05JaXdtRW1GYWVJQktORFEyV1EwTmNnUUhEaFVNQVJNU0JCUUNBUUVGQkFFQ0FnRWRBd2tPR3lBUEpBRkZCUUVCQXdvTEd3TUNBUklJQVFvSUFnb0ZBZ2NDQWdJSUJoWUZCZ2NNRWd3QkFRb1RCd01CSGtVVkdTQVJDQ29QQmd3aElRMEZHQnM5SlNBQUFmL3IvL1VDYUFMQ0FFQUF0a3V3RzFCWVFBMGRBUUlETmlRUEN3UUFBZ0pNRzBBTkhRRUNBellrRHdzRUFRSUNURmxMc0J0UVdFQVRBQUlDQTJFRUFRTURGRTBCQlFJQUFCb0FUaHRMc0I1UVdFQVhBQUlDQTJFRUFRTURGRTBBQVFFVlRRVUJBQUFhQUU0YlM3QXhVRmhBR3dBRUJCUk5BQUlDQTE4QUF3TVVUUUFCQVJWTkJRRUFBQm9BVGh0QUd3QUVBd1NGQUFJQ0ExOEFBd01VVFFBQkFSVk5CUUVBQUJvQVRsbFpXVUFSQVFBdEt5RWVHUmNVRWdCQUFVQUdCeFlyQlNJbkppY21KeTRCSnlZbkl3NEJCeFVVQmlNaUpqVVJCeUluSmowQk5qc0JNaFlkQVRZM05qYzJOell6TWhjV0ZSUUhCZ2NHQng0QkZ4WVhGaFVVQndZQ054d1BNekVlYmcwSkFoRU1BUUVCSEIwVUZCMHlEUlFvRFNkMUZ4MUJTaVVaSGlVWUdnME5HQWc4VkVFMEpuSWRTRGtIR1F3TEdWZENKMWtMQmdJTkJRSUNLdkFUSFIwVEFpZ0JBZzRlQ3l3ZEZNMURNUmdWR2lraUNCQWFEUXhGUERJdkdWNGlXV1FNREJ3UEJ3QUFBZi9rLy9VQ0JBSTBBRE1Bd1V1d0tGQllRQXd4QVFRQUlCTUZBd0lFQWt3YlFBd3hBUVFCSUJNRkF3SUVBa3haUzdBTVVGaEFFd0FFQkFCaEFRVUNBQUFXVFFNQkFnSVZBazRiUzdBYlVGaEFFd0FFQkFCaEFRVUNBQUFXVFFNQkFnSWFBazRiUzdBb1VGaEFGQUFFQWdBRVdRRUZBZ0FBQW1FREFRSUNHZ0pPRzB1d0tWQllRQlVGQVFBQUJBSUFCR2tBQVFFV1RRTUJBZ0lhQWs0YlFCVUZBUUFBQkFJQUJHa0FBUUVDWVFNQkFnSWFBazVaV1ZsWlFCRUJBQzBySnlVY0dnd0tBRE1CTWdZSEZpc1RNaFlWRkJjMk56WTNOamN5RmhjVUJ3WVBBUllmQVJZWEZBWWpJaThCSmljR0l4VVVCaU1pSmpVQ05RY2lKeVk5QVRZemV4UWRBaWNtVldBUUV4UWNBUTlnVlIxaFRnNE5BUjBXRXcwUGNENHVBaDBVRkJ3Q0hnMFVLQTBuQWpRZEZKVk1LQ2xkVVEwQkhCUVZEbEZlSGxCakVSQVRFeDBPRVlrcExIY1VIUjBVQVJhVUFRSU9IZ3NzQUFBQUF3QS8vL1FDaGdPZkFGNEFpd0M0QUoxQURyS2VoWEVFQmdWTFJRSUNBd0pNUzdBS1VGaEFId2NCQlFZRmhRZ0JCZ01HaFFRQkF3TVVUUUFDQWdCaEFRa0NBQUFhQUU0YlM3QU1VRmhBSHdjQkJRWUZoUWdCQmdNR2hRUUJBd01VVFFBQ0FnQmhBUWtDQUFBVkFFNGJRQjhIQVFVR0JZVUlBUVlEQm9VRUFRTURGRTBBQWdJQVlRRUpBZ0FBR2dCT1dWbEFHUUVBckt1WWwzOSthMnBTVUNvb0N3Z0VBZ0JlQVY0S0J4WXJGeUltSXlJbU5UUTJOeGN5UHdJK0FUTTJQd0UyTno0Qk5TY21KeVluSmljdUFTYzFKaWMrQVRNeUhnRVhGRE1lQVI4QkZoVVdGeFlYRlJjV0Z6SVdId0VXRnhZWE5UWTFOajhCTkRjMk5EWXpNaFlYRkE4QkJnY0dCd1lIQmdNM016WTNOalUyTnpZM05qTXlGeFlYRmhVVUJ3WUhCZ2NHRHdJR0J3WWpJaWNtSnlZMU5EYzJOelkvQWpNMk56WTFOamMyTnpZek1oY1dGeFlWRkFjR0J3WUhCZzhDQmdjR0l5SW5KaWNtTlRRM05qYzJOODBaSVJ3VkhCd1ZXRGtIQncwTUdRRVFEeElYRHdNQ0NoSUZaazVLSGcwQkFSZ0NBUnNVRkIwREF3RUJBZ0VNQWhNaURBOEVIRDBCQWdJQ0V6WVRDZ0lySHdJQ0FoMFVGQnNCRVFFTkZEWm9NVDAxSGdJQkJ3Z0JBd0llSGdzTUJ3Y1VDZ2NDQmhFTURRTURFQVFlSHdzTUJnY1VDZ2NDQmhBTkROVUNBUWNJQVFNQ0hoNExEQWNIRkFvSEFnWVJEQTBEQXhBRUhoOExEQVlIRkFvSEFnWVFEUXdNQXgwVUZCd0JBd0VDQXdJSkNBb1BGUlFFQXdFR0NRUXpXRnRZSUFFQkFUQW9GUndjSlFjQkJBUUJIZ0lDT2pRVUZBRUZJalFDQVFFUUhRa0lBUUlDWjd3T0RBc1dLaHdjRlU1TUJrcEl3Rm9xRUF3RFl3SUdCUUVCQWdFWUZ3Y0NCeEFNRFFZSEVnc0pDZ01DREFRWEZ3Y0NCaEVMRFFZSEV3b0tDZ0lDQmdVQkFRSUJHQmNIQWdjUURBMEdCeElMQ1FvREFnd0VGeGNIQWdZUkN3MEdCeE1LQ2dvQUF3QW0veVVDRkFNQ0FENEFhd0NZQVNKQUQ1SitaVkVFQmdVc0p3c0RBd0FDVEV1d0NsQllRQjRIQVFVR0JZVUlBUVlBQm9VQkFRQUFGazBFQVFNREFtSUFBZ0lZQWs0YlM3QU1VRmhBSWdjQkJRWUZoUWdCQmdFR2hRQUJBUlpOQUFBQUZrMEVBUU1EQW1JQUFnSVlBazRiUzdBT1VGaEFIZ2NCQlFZRmhRZ0JCZ0FHaFFFQkFBQVdUUVFCQXdNQ1lnQUNBaGdDVGh0THNCQlFXRUFsQndFRkJnV0ZDQUVHQVFhRkFBQUJBd0VBQTRBQUFRRVdUUVFCQXdNQ1lnQUNBaGdDVGh0THNCVlFXRUFpQndFRkJnV0ZDQUVHQVFhRkFBRUJGazBBQUFBV1RRUUJBd01DWWdBQ0FoZ0NUaHRBSlFjQkJRWUZoUWdCQmdFR2hRQUFBUU1CQUFPQUFBRUJGazBFQVFNREFtSUFBZ0lZQWs1WldWbFpXVUFWakl0NGQxOWVTMG85UERzNk56VXdMaGdXQ1FjV0t4YzNJelkzTmpjeU5EYzJOeVluSmljbUp5WTFORGMyTXpJWEZoY1dGeFlmQVI0QkZ4WVhGaGMyUHdFMk56NEJNeklXRlFJSEJpTWlOVFEyTXhZek5oTTNNelkzTmpVMk56WTNOak15RnhZWEZoVVVCd1lIQmdjR0R3SUdCd1lqSWljbUp5WTFORGMyTnpZL0FqTTJOelkxTmpjMk56WXpNaGNXRnhZVkZBY0dCd1lIQmc4Q0JnY0dJeUluSmljbU5UUTNOamMyTjdrREFnNFVJUmNCQVFrT1ZUc21MaFFJQnhnTURSNE1GUkk1TmdNRkFRZ1BCZ1FDQndzYkV3SU1CQUlhRlJNZUVydFJha2NjRlEwYkdRb0NBUWNJQVFNQ0hoNExEQWNIRkFvSEFnWVJEQTBEQXhBRUhoOExEQVlIRkFvSEFnWVFEUXpWQWdFSENBRURBaDRlQ3d3SEJ4UUtCd0lHRVF3TkF3TVFCQjRmQ3d3R0J4UUtCd0lHRUEwTWJRRUVEaGNlQWdFSkdpaDRUWVU3RWcwTkd3OEdHREkwcTA0R0JBTUpEZ1lDQWdVRlE0RVBYbDhWSEJ3Vi9oeWhRVElUSGdFREF6QUNCZ1VCQVFJQkdCY0hBZ2NRREEwR0J4SUxDUW9EQWd3RUZ4Y0hBZ1lSQ3cwR0J4TUtDZ29DQWdZRkFRRUNBUmdYQndJSEVBd05CZ2NTQ3drS0F3SU1CQmNYQndJR0VRc05CZ2NUQ2dvS0FBQUFBZi80LzlBQlBnTGdBQ1FBRkVBUkFBQUJBSVlBQVFFa0FVNGNHaVlDQ0JjckFRY0dCd1lIQmlNaUp5WTFORGMyTkRNM0J6YzJOelkzTmpjMk16SVhGaFVVQnhRSEJnRXFBaU05TGtjTkhRME1HQVlCQVFZREF5UkFBUUl0U2d3ZkRRc1hCZ0VIQW5jR1R0cTFyQmdHRGhzT0RBRUNEZ1VIU2UwR0JiT29HQWNPR3cwTUFnRU9BQUgvK1AvUUFUNEM0QUFrQUJKQUR3QUJBQUdGQUFBQWRod2FKZ0lHRnlzQkJ3WUhCZ2NHSXlJbkpqVTBOelkwTXpjSE56WTNOamMyTnpZek1oY1dGUlFIRkFjR0FTb0NJejB1UncwZERRd1lCZ0VCQmdNREpFQUJBaTFLREI4TkN4Y0dBUWNDZHdaTzJyV3NHQVlPR3c0TUFRSU9CUWRKN1FZRnM2Z1lCdzRiRFF3Q0FRNEFBQUFDQUUvL2JnSjhBMFVBU3dCeUFJRkFHazlPVENrV0ZCQVBDQUVBQ0FFREFYSmFBZ0lEQUFFRUFnUk1TN0FiVUZoQUlRQUJBQU1BQVFPQUFBTUNBQU1DZmdBQUFBVUFCV1VBQWdJRVlRQUVCQ01FVGh0QUp3QUJBQU1BQVFPQUFBTUNBQU1DZmdBQUFRVUFXUUFDQUFRRkFnUnBBQUFBQldFQUJRQUZVVmxBRDBoR1EwSTdPU3NxSUI0VEVRWUlGaXNsSmljbUp5WTFORGMyTno0Qk56WS9BVFl6TWhjR0ZSWVhIZ0VWRkFjR0l5SW5MZ0VuSmljbUx3RVJOamMyTnpNM05qVTBKeVkxTkRjMk16SVdGUlFIQmdjR0J4VVVCeU1pSnlZMUVRWUhOd1lIRlFZSEloVUdGUlFYRmhRWEl4Y1ZGaGNuRlRNV0Z4NEJGQmNXTXg0QkZ4WVhBU3BHTDBzUkNnTUVNQmxLS3dzTUFSSWVJUklCWUVNYUhBUVBIQjRPQXdVUUNSQWVJUThkSFJ3WkFnY1dDZ0lJRUJrakdSQW5ieVVrS0EwZER3SU1Cd1lpR3c4SEFSZ0RBUUVCQVFZR0FRRUZCZ0VDRGdNQ0J3OFhDdzhOQ0JvdlhqUkhLU3BoVXlVMERBTURkQ2dtUGpRTFFocERFQXdMR3hrS0Vod01EUlFJQS80aEFRTUVDZ1FORWhNZUJ3Y09EQlZKSWlFZ1JRNEVBWEVkRGljTkRBS1ZBd01ERFI4QkZCTUJQbUEwTFFRR0FnRUVHeEFCQWc4R0FRSUNEQU1FQ0FZREFnQUIvK1gvOVFKcEFzSUFVd0NzUzdBYlVGaEFFRGdCQXdSUUtnSUNBeDRhQWdBQ0Ewd2JRQkE0QVFNRVVDb0NBZ01lR2dJQkFnTk1XVXV3RzFCWVFCZ0dBUU1JQndJQ0FBTUNhQVVCQkFRaVRRRUJBQUFqQUU0YlM3QWZVRmhBSEFZQkF3Z0hBZ0lCQXdKb0JRRUVCQ0pOQUFFQkkwMEFBQUFqQUU0YlFDQUdBUU1JQndJQ0FRTUNhQUFGQlNoTkFBUUVJazBBQVFFalRRQUFBQ01BVGxsWlFCWUFBQUJUQUZOTlMwSkFOVE13TGlrbkpDSXJDUWdYS3dFV0Z4WVhGaGNXRlJRSEJpTWlKeVl2QVNZdkFTNENKeVluSXdjR0R3RVZGQVlqSWlZMUVTTWlKelUwTnpZN0FUVTBOak15RmgwQk5qYzJOelkvQVRZek1oY1dGUlFIQmdjR0J6TXlGeklYRlJRSEFZWUNBamtkU0RrSEdRd01IQTh6TVFvZldSUURCZ1FCRVF3QkFnZ1NBaDBVRkIxVkhROG9EUXhBSFJRVUhVRktKUmtlSUFvVEdnME5HQWc4VkN3bjJEVUtCQUVuQVZBQkFpOGlXV1FNREJ3UEJ4bFhRZzBqUnhFREJBTUJEUVVFQ1I0RDhCTWRIUk1CSWlnTkhnNEMxaFFkSFJUTlF6RVlGUm9qQ3gwSUVCb05ERVU4SWlFY0Vna2REd0FFLy8zLytnS05Bc2dBUWdCTkFGMEFaQUJsUUdJL0xBSUdCeUVHQWdNQkFCWUJBZzREVEFzSkFnY1FFUW9EQmdBSEJtY1BCUUlBRFFRQ0FRNEFBV2NBRGdBQ0F3NENhUUFNREFoaEFBZ0lLRTBBQXdNakEwNEFBR1JqWVY1V1VFOU9UVXRFUXdCQ0FFSThPaVltSVNRakpFVVdGQklJSHlzQkZoY3pOeklYRlJRSElnY2pCZ2NHQndZaklpY2lKeFVVQmlNaUpqVVJJeUluTlRRM05qYzFJeUluTkNjME56WTdBVFUwTnpZM05qTXlGek15RnpJWEZSUUhKVE11QVNjbUx3RW1Jd2NCSVJVMk93RXlOekkzTWo0Q016WW5NekkzTkNjaEFrSUNBUUVOTHdzMENBTVdDeE1wTzB0T0ZSUW1EQjBVRkJ3NEhROG9Call5SGc0Q0hnY0pNaE1PR0NnbzZGSWZOQXNFQVNqK1k5RURCd1VySVJNVktpUUJBUDhBQmlvYUp5WVFEUUliR1FFQkN2WWhtMlVCL3VBQjVoSVVBU2NNSXd3Q0hCa3REeElCQXJJVUhSMFVBVEFvRFIwUEFRRW9LQWNER2hNRVFoZ1BFUUlEZnh3UkNoMFBZd0VFQVE0RUFnTUIvdllmQVFJREJRZ0JCV2tCSGdrQUFBQUIvL1AvOGdKYkFzc0Frd0QyUUJvc0RnMERBd0k2QVFFRFFRVUNBQUdKVGdJSkIxZ0JDd2tGVEV1d0ZGQllRRGtBQXdJQkFnTUJnQUFMQ1FvS0MzSUZBUUVHQVFBSEFRQm5EZ2dDQncwQkNRc0hDV2tBQWdJRVlRQUVCQ2hOQUFvS0RHSUFEQXdtREU0YlM3QXhVRmhBT2dBREFnRUNBd0dBQUFzSkNna0xDb0FGQVFFR0FRQUhBUUJuRGdnQ0J3MEJDUXNIQ1drQUFnSUVZUUFFQkNoTkFBb0tER0lBREF3bURFNGJRRGdBQXdJQkFnTUJnQUFMQ1FvSkN3cUFBQVFBQWdNRUFta0ZBUUVHQVFBSEFRQm5EZ2dDQncwQkNRc0hDV2tBQ2dvTVlnQU1EQ1lNVGxsWlFCaU9qWWlHZjMxM2RXbG5WbE1SSkJZcEtDMDlKaUFQQ0I4ckFTTWlKelFuTkRjMk15RTNOamMxSmpRdkFTWXZBU1l2QVNJR0ZRWUhEZ0lqQmdjT0FRY0dJeUluSmpVME56WTNOak15RnhZWEZoVVVCd1lITXpJWE1oY1ZGQWNqQmdjR0J6SS9BVElYRlJRSElnY0dLd0VHQnhRakZCWVZId0VXSHdFV0Z4VVhGanNCTno0Qk5UWTNOamMwTmpjMk16SVhGaFVVQndZaklpY21KeVkxTkRjaklpYzFORGMyTnpZM05qYzJBUnIxSGc0Q0hnY0pBV01EQlFNQkFnVU5JUUVWSFE4S0Znc0tFd1VFQVFnTENBSUNDeVVkRGdZQ0V6ODVQUndjYWlrV0FnRUNJalFMQkFFb2RDSXVJQ0d6T1EwdkN6UUlBMUJaendJQkFRRURBd2NLQ2cwT0VCOExIUXdRQlJBRkN3TUJBaEFaREEwWUJ6cHhLeXBPS3hVQkloMFBLQWhURVJjcExoTUJqQ2dIQXhvVEJBWVBEeGdCQlFVSkRROEJDUVVCQVFFQkF3WURBZ1FMQ3drQ0xCZ0xDd2dIUmlNY0JoZytKQ29HR3dnSkhCRUtIUThuR2hNUUFnRW5EQ01NQWdJR0JRVUtCQUlRQnc0SUNBb0ZBUVVKQWdRQ0FRZ0ZDQVVCQWdJWUJ3OGJEUXRYRGhkRUtDNEtDaWdOSFE4QkFSQVBHeGNKQUFBQUFBRUFSdi84QW5VQ0xRQWdBRHhBT1FJQkFnQVBBUU1CQWt3RkFRQUNBSVVBQVFNRUFWY0FBZ0FEQkFJRFp3QUJBUVJmQUFRQkJFOEJBQmdVRXhJTUNRZ0ZBQ0FCSUFZR0Zpc1RNaGNWRXhVMk93RTJPd0V5RnpJWEZSUUhJd1lyQVNJSEppY21QUUVETkRkOUhROEtWeTZ6SkFzWE5Bc0VBU2d2R2dwbmFMTVlDd1VLTEFJdEtCMytnZ3NDQmgwUkNoME9CZ0lJRlFzWkdnR1pOQWtBQUFBQkFFZ0FCZ0ozQWpnQUlBQXNRQ2tDQVFFQUFVd0RBUUFCQUlVQUFRSUNBVmNBQVFFQ1h3QUNBUUpQQVFBV0VRc0pBQ0FCSUFRR0Zpc0JNaGNWRkFjR0J3WUhNeklWRmhjVkZBY21Ld0VpQnlZOUFUUTNOamMyTnpZQjdpWU5Nd2hpZlMyenp4b0JKSTFPeVJrb0pqazFsVTRpSFFJNExBc1NOaEpnbVVRSEV4TU1HaEVDQWc4Y0NoRklWYk5KTVNJQUFBQUFBUUFBQUFEbVpqVnhQQ0JmRHp6MUFBVUQ2QUFBQUFEYm9vUjVBQUFBQU43Ni8xZi9XLzhJQkZJRHhnQUFBQU1BQWdBQkFBQUFBQUFCQUFBRHl2OGFBQUFFb2Y5Yi8yc0VVZ0FCQUFBQUFBQUFBQUFBQUFBQUFBQUREUUgwQUFJQXpnQUFBUHdBUmdGbEFFd0NXUUJEQWxrQVFnTHZBQ2NDbHdCSkFMc0FLQUZSQUZNQlVBQUpBa0lBV3dKWkFEUUE2UC80QWxrQVdRRG9BRDBCT3YvNEFsa0FLQUpaQUh3Q1dRQTNBbGtBTlFKWkFCOENXUUJCQWxrQU9BSlpBQzRDV1FCQ0Fsa0FOd0RvQURzQTZBQTJBbGtBWkFKWkFGY0NXUUE0QWdvQUl3Tm9BRUVDa0FBeEFvRUFhUUxFQUU4Q3p3Qm1BbGdBWHdKREFGVUMwZ0FoQXVRQWFBRVZBRmtDT0FCWEFvTUFaZ0pNQUdNRGNBQmpBdUVBWWdMdUFEOENZZ0JoQXV3QU1BSjdBR01DVXdBM0Fta0FKZ0t6QUYwQ2pBQTRBOGdBTHdLSUFCQUNXZ0FOQWwwQUxnRk5BRnNCT3YvNEFVUUFGUUpaQUVZQjlBQXBBU3dBREFJaEFBMENjZ0ErQWlBQUhBSjFBQ29DTWdBUkFUZ0FEZ0oxQUNJQ1hnQk1BUHNBU2dEMS85OENKZ0JMQVFZQVBnTnpBRU1DWGdCTUFsTUFIZ0p5QUVnQ2RRQXFBV0VBTUFIY0FDOEJULy8vQWx3QU1nSWFBQTBESmdBSEFmMEFHQUlaQUNZQjNnQUtBVThBUmdFS0FGRUJUd0FlQWxrQVJRSlpBQ1FDU2dBcUFsa0FPd0paQUQ0Q1dRQkpBa01BTGdKY0FEa0RUQUFaQWZjQUNBSWJBQWNDa0FBeEFpRUFEUUxFQUU4Q0lBQWNBbGdBWHdJeUFCRUMwZ0FoQW5VQUlnRVZBQVVBKy8vb0FvTUFaZ0ltQUVzQ1RBQmpBUVlBUGdMaEFHSUNYZ0JNQWxNQU53SGNBQzhDc3dCZEFsd0FNZ0pkQUM0QjNnQUtBU3dBQlFLUUFERUNJUUFOQXBBQU1RSWhBQTBDV0FCZkFqSUFFUUpZQUY4Q01nQVJBUlVBREFEN0FBd0JGUUE4QVBzQUh3THVBRDhDVXdBZUF1NEFQd0pUQUI0Q3N3QmRBbHdBTWdLekFGMENYQUF5QWxvQURRSVpBQ1lCTEFCSUFTd0FDd0tRQURFQ0lRQU5BbGdBWHdJeUFCRUJGUUFWQVB2Lzl3THVBRDhDVXdBZUFyTUFYUUpjQURJQ1dRQlpBUHdBUmdJS0FDTUVRd0FuQVFZQVVRSlpBSUFCTVAvL0FTd0FTZ0RlQUR3Q1dBQmZBaklBRVFKZEFDNEIzZ0FLQXNRQVR3SWdBQndDNFFCaUFsNEFUQUpUQURjQjNBQXZBbDBBTGdIZUFBb0NrQUF4QWlFQURRSllBRjhDTWdBUkFyTUFYUUpjQURJQkZRQTNBUHNBTFFFc0FEY0Nad0FGQVNuLy9RTHVBRDhDVXdBZUFwQUFNUUloQUEwQ3hBQlBBaUFBSEFLUUFERUNJUUFOQXU0QVB3SlRBQTRBemdBQUFzUUFUd0lnQUJ3QzBnQWhBblVBSWdLekFGMENYQUF5QXJNQVhRSmNBRElDNFFCaUFsNEFUQUo3QUdNQllRQXdBbnNBWXdGaEFEQUNld0JqQVdFQUlBSllBRjhDTWdBUkF1RUFZZ0plQUV3Q1dnQU5BaGtBSmdMRUFFOENJQUFjQVN6LzlnS1FBREVDSVFBTkFsZ0FYd0l5QUJFQkZmLzJBUHYvNHdLekFGMENYQUF5QXU0QVB3SlRBQjRDMGdBaEFuVUFJZ0paQUdNQ1dRQTdBbGtBUVFKWkFHUUNZZ0FwQWxrQU9RSnBBQ1lCY3dBZEFxQUFRUUtCQUJBQ1V3QTNBZHdBTHdIMEFFY0Q2QUJQQWxrQU5BRXMvL01DV1FCaEFsa0FSUUpaQUZrRVRRQS9BOWdBSGdPaS8vY0RqZ0FUQVJYL3JBRDcvNW9CTFArc0F1NEFQd0pUQUI0Q1dnQU5BaGtBSmdQSUFDOERKZ0FIQTZMLzl3T09BQk1Eb3YvM0E0NEFFd0xTQUNFQ2RRQWlBdElBSVFKMUFDSUN6d0FKQW5VQUtnTFBBR1lDZFFBcUFzOEFDUUpjQUI0Q2J3QkNBU3dBRndLUUFERUNJUUFOQWxnQVh3SXlBQkVDMGdBaEFuVUFJZ0VWQUJjQSt3QURBdTRBUHdKVEFCNENzd0JkQWx3QU1nRXMvLzBCTEFCaUFsa0FaQUpaQURnQ1dRQkRBbGtBUXdKQ0FCd0NXUUJaQWpnQVZ3RDEvODhDVEFCakFRWUFQZ0pNQUdNQkJnQStBdVFBYUFKZUFFd0NhUUFtQVUvLy93SjhBR0FDY2dCSUFsMEFMZ0hlQUFvQkNnQklBUW9BSmdEby8vSUJDZ0EyQWNVQVNBSEZBQ1lCby8veUFjTUFOQUVWQUZrQSt3QktBbE1BTndIY0FDOENhUUFtQVUvLy93RXMvOW9DN2dBL0FsTUFIZ0t6QUYwQ1hBQXlBa3dBWXdFR0FENENrQUF4QWlFQURRRVYvL01BKy8vWkF1NEFQd0pUQUI0Q3N3QmRBbHdBTWdMdUFEOENVd0FlQW9FQWFRSnlBRDRDendCbUFuSUFQZ0xrQUdnQ1hnQk1Ba3dBWXdFR0FENERjQUJqQTNNQVF3SjdBR01CWVFBd0FsTUFOd0hjQUM4Q1hRQXVBZDRBQ2dMaEFHSUNYZ0JNQWxvQURRSVpBQ1lDVXdBM0Fkd0FMd0pwQUNZQlQvLy9BbGdBWHdJeUFCRUR5QUF2QXlZQUJ3UElBQzhESmdBSEE4Z0FMd01tQUFjRHlBQXZBeVlBQndQSUFDOERKZ0FIQW9NQVpnSW1BRXNENkFCa0ErZ0FaQU53QUdNRGN3QkRBb3dBT0FJYUFBMENUQUJqQVFiLytBTGhBR0lDWGdCTUFzOEFaZ0oxQUNvQzVBQm9BbDRBVEFLQkFHa0NjZ0ErQXM4QVpnSjFBQ29DUXdCVkFUZ0FEZ053QUdNRGN3QkRBbUlBWVFKeUFFZ0NVd0EzQWR3QUx3SnBBQ1lCVC8vL0F1RUFZZ0plQUV3QkZRQlpBUHNBU2dKdkFFSUNXQUJmQWpJQUVRTHVBRDhDVXdBZUFwQUFNUUloQUEwQ1dnQU5BaGtBSmdKcEFDWUJULy8vQXJNQVhRSmNBRElDV2dBTkFoa0FIQUtNQUQ4Q2pBQTlBcEFBTVFJaEFBMENXQUJmQWpJQUVRS1FBREVDSVFBTkF1NEFQd0pUQUI0Q1V3QkRBZHdBRlFIY0FCVUJGZi82QVB2LzhBSnBBQ1lCVC8vL0F1UUFPd0plLy9nQ3N3QVlBbHovK2dNZ0FDb0RJQUFxQXlBQUZRSW1BRXNDVEFBTUFRYi82d0M3QUE0QXV3QU9BcEFBTVFJaEFBMEJUd0FoQVU4QUR3RlBBQjhDNmdCUUFkSUFVQUtrQUE0Q1dBQkxBaklBRVFOd0FJNERjQUJqQTNBQU93TndBRlVEY0FCakEzQUFrUU53QUQwRGNBQkNBM0FBSndOd0FCQURjQUFsQTNBQUpnTndBQ1lEY0FBZEEzQUFIUU53QUQ4RGNBQVhBM0FBU2dOd0FFb0RjQUJXQTNBQU53TndBRndEY0FCSkEzQUFNQU53QURBRGNBQkVBM0FBQ0FOd0FERURjQUF4QTNBQWR3TnlBQ2dEY0FBMkEzQUFOZ053QUNzRGNBQXJBM0FBdUFOd0FFb0RjQUJLQTNBQU1BTndBREFEY0FFaEEzQUJJUU53QUVjRGNBQXhBM0FBZXdOd0FFY0RjQUE2QTNBQUhRTndBQjBEY0FBZEEzQUFvZ053QUtJRGNBQ09BM0FBZlFOd0FCa0RjQUI5QTNBQVBRTndBRDBEY0FBOUEzQUFSZ053QUVZRGNBQkdBM0FBWVFOd0FHa0RjQUJGQTNBQWVBTndBRThEY0FDSkEzQUFWQU53QUdRRGNBQW1BM0FBdEFOd0FFY0RjQUJKQTNBQXZnTndBRG9EY0FDNkEzQUFiQU53QUtjRGNBQnBBM0FBTVFOd0FDY0RjQUE3QTNBQWNRTndBRDBEY0FCMEEzQUFlQU53QUE4RGNBQXhBM0FBSndOd0FEc0RjQUZVQTNBQVhBTndBUG9EY0FEbUEzQUFlUUZQQUFNQlR3QU5BdEFBQkFFNEFGa0M0UUJZQWhjQVRBTHVBRmNDVXdBa0F1NEFVUUpUQUIwQ3p3QUpBblVBSUFST0FHSUMzZ0FkQXpjQUdnSDBBRWNDa0FBeEFtSUFWd0tCQUdrQ1F3Qk9BeEFBVkFKWUFGOERvQUF0QWxnQVVBTGhBR01DNFFCakFvTUFaZ0xrQUJRRFhBQmtBdVFBYUFMdUFEOEM1QUJsQW1JQVlRTEVBRThDYVFBbUF0SUFQd0x1QURJQ2lBQVFBdmdBYndMcUFHZ0QwZ0JqQStnQVl3S3lBQlVEYUFCaEFtSUFZUUx1QUZvRDFBQlhBbnNBWXdJaEFBMENTUUJGQW5VQVBBSG5BRVlDZ3dBb0FqSUFFUU5pQUR3Q1B3QW5BbHdBUUFKY0FFQUNKZ0JMQWx3QU1nTHVBRHdDWEFBOEFsTUFIZ0pjQUR3Q2NnQklBaUFBSEFKS0FFQUNHUUFtQXJJQUdnSDlBQmdDU2dBOEFsd0FSZ01kQUdNRFNBQmpBcm9BQUFNK0FFWUNkUUJHQWlBQUxBTG1BQ2dDSUFBb0FsZ0FYd0l5QUJFQ1dBQmZBaklBRVFMb0FCd0NYdi9xQWtNQVRnSG5BRVlDN2dCUUFpQUFMQUpUQURjQjNBQXZBUlVBV1FEN0FFb0JGUUFWQVB2Lzl3STRBRmNBOWYvZkJERUFGQVB4QURJRUp3Qm9BL0VBUEFMV0FCd0NYdi9zQW9NQVpnSW1BRXNDNFFCakFsd0FRQUxTQUQ4Q0dRQW1BdmdBYndKS0FEd0NRd0JPQWVjQVJnTHVBRkVDVXdBZEEzQUFiUUVLQURZQzdnQS9BbE1BSGdFNEFBZ0JPQUJaQW9ILzJBSnlBRDRDei8vaUFuVUFLZ0xoLzl3Q1h2L0ZBbG9BRFFJWkFDWUNRLy9YQVRqL1d3S3pBRndDTXdBK0F0SUFJUUoxQUNJQ2d3Qm1BaVlBU3dMdUFEOENVd0FlQXRZQVVRSklBRkFDMWdCUkFrZ0FVQUU5QUNVQlBRQW9BdElBSVFKMS8rRUNXZ0FOQWhrQUpnSmFBQTBDR1FBbUFvZ0FFQUg5QUJnQ2d3Qm1BaVlBU3dMa0FHZ0NYQUE4QTZBQUxRTmlBRHdDNUFCMkFsNEFUQUpELy9ZQjUvLzJBbTRBSGdTaEFFOEI5QUFwQWNBQVNnSDBBQ2tCemdCWEFjNEFWUUhBQUVZQ2tnQW5BcElBSndMdkFESURUQUFaQXNBQUZBRVZBRnNCcEFBZEF3NEFPZ0tvQUNFQ2xnQVVBNkFBTFFOaUFEd0M3Z0JhQWlBQUxBRHlBRW9Cd0FCS0Frb0FTZ0Q4QUVZQ2tBQXhBaUVBRFFKWUFGOENNZ0FSQW9QLzZ3SW0vK1FDMGdBL0Foa0FKZ0U2Ly9nQk92LzRBc1FBVHdLRC8rVUNZdi85QWxQLzh3SzhBRVlBU0FBQUFBQUFBQUFBQVFRQUFBRUVBQUFCeEFBQUFvZ0FBQVpjQUFBSWNBQUFDdGdBQUF5UUFBQU04QUFBRFhBQUFBNE1BQUFQTUFBQUQrd0FBQkRJQUFBUkdBQUFFVndBQUJIa0FBQVRUQUFBRkJnQUFCVklBQUFYQ0FBQUdDQUFBQm5jQUFBYnVBQUFISndBQUI1d0FBQWdQQUFBSVBnQUFDR1VBQUFpUUFBQUlzZ0FBQ04wQUFBbEVBQUFKNmdBQUNqc0FBQXFyQUFBTEdRQUFDM1FBQUF1a0FBQUwwQUFBRERVQUFBeURBQUFNcVFBQURPWUFBQTAwQUFBTmNnQUFEZU1BQUE0U0FBQU9jd0FBRHJZQUFBOHZBQUFQaFFBQUQ4c0FBQS9tQUFBUU53QUFFSUFBQUJEUEFBQVJLQUFBRVcwQUFCSEdBQUFSOUFBQUVoY0FBQkpTQUFBU2ZBQUFFcElBQUJLOEFBQVRFd0FBRTE4QUFCT3dBQUFUL2dBQUZGWUFBQlNOQUFBVkd3QUFGWG9BQUJXbEFBQVY1QUFBRmlVQUFCWklBQUFXdlFBQUZ3QUFBQmRBQUFBWHNnQUFHQ0lBQUJoTkFBQVlxQUFBR09FQUFCbElBQUFaaGdBQUdlTUFBQm9wQUFBYWdnQUFHc1VBQUJzU0FBQWJLZ0FBRzNjQUFCdkFBQUFjRWdBQUhJZ0FBQjBEQUFBZFhBQUFIZTBBQUI0eEFBQWVod0FBSHhBQUFCK0lBQUFmNHdBQUlFZ0FBQ0N0QUFBaE9RQUFJYVlBQUNIa0FBQWlTUUFBSXN3QUFDT0RBQUFqdUFBQUkrTUFBQ1JUQUFBa3RRQUFKUklBQUNWVUFBQWxuZ0FBSmdBQUFDWmZBQUFtMHdBQUp6WUFBQ2UyQUFBb01RQUFLSkVBQUNpbkFBQXBJd0FBS1owQUFDb2FBQUFxbGdBQUt1b0FBQ3RsQUFBcnVnQUFMRGNBQUN5REFBQXN4QUFBTFJFQUFDMVRBQUF0MXdBQUxqb0FBQzdBQUFBdkpBQUFMNTRBQURBekFBQXdyZ0FBTVVVQUFER3hBQUF5T1FBQU1tUUFBREtBQUFBeTdRQUFNMWtBQURPZUFBQTBDZ0FBTkVjQUFEUjRBQUEwN1FBQU5VRUFBRFdzQUFBMk5BQUFObXNBQURhYUFBQTI5UUFBTjdvQUFEZmlBQUE0Q2dBQU9FNEFBRGh5QUFBNGd3QUFPTDRBQURraEFBQTVpd0FBT2R3QUFEcDBBQUE2N1FBQU8wRUFBRHVzQUFBOEZ3QUFQSmNBQUQwZEFBQTlpUUFBUGRrQUFENDhBQUErZkFBQVB1TUFBRDlFQUFBL3BnQUFQOW9BQUVBWEFBQkFPd0FBUUk0QUFFRExBQUJCY3dBQVFnOEFBRUs5QUFCRGRBQUFSQVFBQUVSdkFBQkZBQUFBUlpJQUFFWHdBQUJHVlFBQVJsVUFBRWJTQUFCSE1RQUFSNk1BQUVoQ0FBQkk0d0FBU1pZQUFFb3dBQUJLL0FBQVMwUUFBRXVqQUFCTUlBQUFUSEFBQUV6a0FBQk5LUUFBVFpzQUFFM2ZBQUJPS0FBQVRwa0FBRThWQUFCUHd3QUFVQjRBQUZDWUFBQlJKQUFBVVpFQUFGR3hBQUJTSkFBQVVwUUFBRkxkQUFCVFRnQUFVNUFBQUZQR0FBQlVOZ0FBVk1NQUFGVTlBQUJWbFFBQVZoVUFBRmJCQUFCVytnQUFWek1BQUZkMkFBQlhwZ0FBVi80QUFGaUdBQUJZcndBQVdNb0FBRmpyQUFCWnJnQUFXZzBBQUZxQkFBQmFsUUFBV3FrQUFGcmpBQUJiQXdBQVd5a0FBRnVZQUFCYnJBQUFYQzBBQUZ6SkFBQmRJQUFBWGNFQUFGNDFBQUJlcHdBQVh2QUFBRjllQUFCZnF3QUFZQTBBQUdDTEFBQmc5Z0FBWVhjQUFHSGVBQUJpa0FBQVl3NEFBR1BYQUFCa1l3QUFaUm9BQUdXYUFBQm1SZ0FBWnJjQUFHY1VBQUJualFBQWFDc0FBR2ljQUFCbzlRQUFhVXdBQUdtUkFBQnFMd0FBYXRnQUFHdGJBQUJzRWdBQWJNVUFBRzIrQUFCdUtBQUFib2NBQUc4MEFBQnZ3Z0FBY0dJQUFIRWZBQUJ4WXdBQWNYWUFBSEdqQUFCeDBBQUFjZm9BQUhJa0FBQnlud0FBY3JNQUFITU1BQUJ6VndBQWM3NEFBSFFLQUFCMGRnQUFkTHNBQUhVckFBQjFzQUFBZGVRQUFIWkpBQUIya0FBQWR3Z0FBSGQwQUFCM3lBQUFkK2dBQUhnSkFBQjRLd0FBZUV3QUFIaURBQUI0dWdBQWVQTUFBSGtxQUFCNVhRQUFlWG9BQUhuWEFBQjZSZ0FBZW53QUFIclpBQUI3SmdBQWU4MEFBSHhTQUFCODd3QUFmYW9BQUgzNUFBQitLQUFBZnBzQUFIOExBQUIvVFFBQWY0TUFBSC85QUFDQVZRQUFnTVVBQUlGU0FBQ0J2Z0FBZ2drQUFJS0ZBQUNDM0FBQWcwWUFBSU9kQUFDRCt3QUFoR29BQUlTMEFBQ0U0d0FBaFdRQUFJWHBBQUNHVEFBQWhvSUFBSWJUQUFDSE9RQUFoNkVBQUlmeEFBQ0lSQUFBaUswQUFJa0xBQUNKa2dBQWlmSUFBSXBoQUFDS2x3QUFpdXNBQUl0bkFBQ01JZ0FBakpjQUFJMGZBQUNObFFBQWppRUFBSTZIQUFDUEFnQUFqMTRBQUkvT0FBQ1FLZ0FBa0pjQUFKRUVBQUNSWXdBQWtiQUFBSkg5QUFDU25RQUFrejRBQUpQZUFBQ1VoQUFBbE5FQUFKVURBQUNWUHdBQWxaRUFBSllPQUFDV2hnQUFsdllBQUpkN0FBQ1grQUFBbUZBQUFKaTZBQUNaRXdBQW1Vd0FBSm1PQUFDYUVBQUFtcGdBQUpybUFBQ2JiUUFBbTc0QUFKd2xBQUNjU3dBQW5KQUFBSnpMQUFDZEhBQUFuVTRBQUoyREFBQ2QyZ0FBbmhVQUFKNTNBQUNlNGdBQW55d0FBSitOQUFDZjd3QUFvRUFBQUtDc0FBQ2cwZ0FBb1JZQUFLRjFBQUNoN2dBQW9vQUFBS05TQUFDam93QUFvK0lBQUtSbEFBQ2szd0FBcFRNQUFLV3VBQUNtWVFBQXB4d0FBS2VnQUFDb0F3QUFxSElBQUtqWUFBQ3BQZ0FBcVhjQUFLbXlBQUNwMmdBQXFoOEFBS3FMQUFDcThnQUFxMXNBQUt2a0FBQ3NjZ0FBclFjQUFLMnhBQUN0OFFBQXJqMEFBSzV5QUFDdWxnQUFycm9BQUs4Y0FBQ3Zmd0FBcjZnQUFLL21BQUN3SndBQXNJUUFBTEVaQUFDeGZnQUFzYThBQUxJSUFBQ3lMUUFBc25BQUFMTEFBQUN5K3dBQXN6SUFBTFBFQUFDMFBRQUF0SkFBQUxUYkFBQzFYd0FBdGJrQUFMWThBQUMyOUFBQXQwa0FBTGZLQUFDNFVRQUF1UkVBQUxsZ0FBQzUxd0FBdWhNQUFMcDNBQUM2MWdBQXU0Z0FBTHZxQUFDOGVBQUF2TFFBQUwwWEFBQzlhQUFBdmVNQUFMNHJBQUMrbmdBQXZ4b0FBTC9FQUFEQUN3QUF3SnNBQU1EekFBREJVZ0FBd2RzQUFNSXVBQURDc1FBQXd1SUFBTU05QUFERGRnQUF3N01BQU1RS0FBREVkZ0FBeEtrQUFNVDRBQURGZFFBQXhmTUFBTVpFQUFER3Z3QUF4MEFBQU1kMEFBREh6d0FBeUJVQUFNZytBQURJa2dBQXlPVUFBTW10QUFES3JnQUF5NThBQU12YUFBRE1RQUFBekprQUFNemdBQUROWmdBQXpiTUFBTTMrQUFET0xnQUF6b0FBQU03aEFBRFBOd0FBejNJQUFNK3NBQURRRFFBQTBFWUFBTkN2QUFEUTl3QUEwVlFBQU5IT0FBRFNZd0FBMHFrQUFOTDJBQURUb3dBQTFERUFBTlIvQUFEVkJ3QUExYmNBQU5aL0FBRFc2d0FBMXdjQUFOY2NBQURYUFFBQTE0TUFBTmVkQUFEWUFRQUEyRVFBQU5pUEFBRFl1UUFBMlQ4QUFObW9BQURhSUFBQTJuNEFBTnJvQUFEYlRBQUEyNzBBQU53ZEFBRGN0QUFBM1BJQUFOMVlBQURkYkFBQTNiUUFBTjRHQUFEZWRnQUEzcFlBQU44S0FBRGZPZ0FBMy9jQUFPQ0FBQURnOWdBQTRiUUFBT0lKQUFEaWJ3QUE0dFlBQU9Nc0FBRGpqUUFBNDhrQUFPUU1BQURrYmdBQTVJa0FBT1RvQUFEbFlnQUE1Yk1BQU9YeEFBRG1XQUFBNW84QUFPYkxBQURuRXdBQTU0QUFBT2ZEQUFEb09nQUE2TkVBQU9reUFBRHBpUUFBNmd3QUFPcUlBQURxc2dBQTZ6a0FBT3VSQUFEc0RnQUE3S1VBQU8wY0FBRHQzUUFBN2lZQUFPNWxBQUR1dVFBQTd2c0FBTzg3QUFEdmh3QUE3K2NBQVBCREFBRHdaZ0FBOE1nQUFQRXZBQUR4ZFFBQThiNEFBUElhQUFEeVVRQUE4bzBBQVBMTEFBRHpJQUFBODA0QUFQUFJBQUQwYUFBQTlLZ0FBUFR0QUFEMVdRQUE5YTBBQVBZb0FBRDJlZ0FBOTE0QUFQZW1BQUQzOVFBQStHb0FBUGp1QUFENU5BQUErWThBQVBtMUFBRDU2QUFBK2lVQUFQcFdBQUQ2aWdBQStza0FBUHQ4QUFEN3lBQUEvSElBQVB6VkFBRDlQQUFBL2VRQUFQNW5BQUQrM2dBQS80TUFBUUFuQUFFQXZ3QUJBV3dBQVFHb0FBRUI1Z0FCQWcwQUFRSTZBQUVDc1FBQkF4VUFBUU51QUFFRGtnQUJCQUFBQVFSbUFBRUVuQUFCQk5FQUFRVmFBQUVGcmdBQkJoOEFBUVoxQUFFR3JRQUJCdWdBQVFjekFBRUhnd0FCQjdRQUFRZ2hBQUVJbHdBQkNQZ0FBUWxhQUFFSnp3QUJDa0VBQVFxSEFBRUs5Z0FCQzBJQUFRdVpBQUVNQndBQkRIWUFBUTBBQUFFTklnQUJEVVVBQVEyd0FBRU9IZ0FCRG00QUFRNjNBQUVQTEFBQkQ0OEFBUS9nQUFFUUpnQUJFSGdBQVJETUFBRVJLd0FCRVdRQUFSSUxBQUVTaVFBQkV1UUFBUk5MQUFFVGdRQUJFN2NBQVJRYkFBRVVNZ0FCRkZZQUFSU0VBQUVVbWdBQkZNRUFBUlRvQUFFVlB3QUJGV0FBQVJXTkFBRVdFZ0FCRm9VQUFSYm1BQUVXK1FBQkYxa0FBUmdPQUFFWWtBQUJHUEVBQVJudEFBRWFvQUFCR3kwQUFSdk5BQUViNEFBQkhBNEFBUnc4QUFFY2JBQUJIUElBQVIyQUFBRWQ2QUFCSG4wQUFSN2FBQUVmTVFBQkg5d0FBU0NUQUFFZ3RRQUJJTmNBQVNGSkFBRWhyd0FCSWc4QUFTS3pBQUVpMndBQkl2K0FBRUFBQU1PQU13QUJ3QUFBQUFBQWdBcUFGY0FqUUFBQUxrT0RBQUFBQUFBQUFBTkFLSUFBd0FCQkFrQUFBQW9BQUFBQXdBQkJBa0FBUUFTQUNnQUF3QUJCQWtBQWdBT0FEb0FBd0FCQkFrQUF3QXFBRWdBQXdBQkJBa0FCQUFTQUhJQUF3QUJCQWtBQlFBR0FJUUFBd0FCQkFrQUJnQVFBSW9BQXdBQkJBa0FDQUFJQUpvQUF3QUJCQWtBQ1FBUUFLSUFBd0FCQkFrQUN3QWdBTElBQXdBQkJBa0FEQUFpQU5JQUF3QUJCQWtBRFFFaUFQUUFBd0FCQkFrQURnQTJBaFlBcVFBZ0FESUFNQUF5QURBQUxRQXlBREFBTWdBeUFDQUFSd0JIQUVJQWJ3QjBBRTRBWlFCMEFFSUFZUUJrQUNBQVF3QnZBRzBBYVFCakFGSUFaUUJuQUhVQWJBQmhBSElBTUFBdUFEa0FPd0JIQUVjQVFnQnZBSFFBVGdCbEFIUUFPd0JDQUdFQVpBQkRBRzhBYlFCcEFHTUFRZ0JoQUdRQUlBQkRBRzhBYlFCcEFHTUFNQUF1QURrQVFnQmhBR1FBUXdCdkFHMEFhUUJqQUdZQU1BQnVBRGNBUndCSEFFSUFid0IwQUU0QVpRQjBBR2dBZEFCMEFIQUFjd0E2QUM4QUx3Qm1BREFBYmdBM0FDNEFZd0J2QUcwQWFBQjBBSFFBY0FCekFEb0FMd0F2QUdjQVp3QmlBRzhBZEFBdUFHNEFaUUIwQUZRQWFBQnBBSE1BSUFCR0FHOEFiZ0IwQUNBQVV3QnZBR1lBZEFCM0FHRUFjZ0JsQUNBQWFRQnpBQ0FBYkFCcEFHTUFaUUJ1QUhNQVpRQmtBQ0FBZFFCdUFHUUFaUUJ5QUNBQWRBQm9BR1VBSUFCVEFFa0FUQUFnQUU4QWNBQmxBRzRBSUFCR0FHOEFiZ0IwQUNBQVRBQnBBR01BWlFCdUFITUFaUUFzQUNBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURFQUxnQXhBQzRBSUFCVUFHZ0FhUUJ6QUNBQWJBQnBBR01BWlFCdUFITUFaUUFnQUdrQWN3QWdBR0VBZGdCaEFHa0FiQUJoQUdJQWJBQmxBQ0FBZHdCcEFIUUFhQUFnQUdFQUlBQkdBRUVBVVFBZ0FHRUFkQUE2QUNBQWFBQjBBSFFBY0FCekFEb0FMd0F2QUhNQVl3QnlBR2tBY0FCMEFITUFMZ0J6QUdrQWJBQXVBRzhBY2dCbkFDOEFUd0JHQUV3QWFBQjBBSFFBY0FCekFEb0FMd0F2QUhNQVl3QnlBR2tBY0FCMEFITUFMZ0J6QUdrQWJBQXVBRzhBY2dCbkFDOEFUd0JHQUV3QUFBQUNBQUFBQUFBQS81d0FNZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXc0QUFBQURBQVFBQlFBR0FBY0FDQUFKQUFvQUN3QU1BQTBBRGdBUEFCQUFFUUFTQUJNQUZBQVZBQllBRndBWUFCa0FHZ0FiQUJ3QUhRQWVBQjhBSUFBaEFDSUFJd0FrQUNVQUpnQW5BQ2dBS1FBcUFDc0FMQUF0QUM0QUx3QXdBREVBTWdBekFEUUFOUUEyQURjQU9BQTVBRG9BT3dBOEFEMEFQZ0EvQUVBQVFRQkNBRU1BUkFCRkFFWUFSd0JJQUVrQVNnQkxBRXdBVFFCT0FFOEFVQUJSQUZJQVV3QlVBRlVBVmdCWEFGZ0FXUUJhQUZzQVhBQmRBRjRBWHdCZ0FHRUJBZ0NFQUlVQWxnQzlBSWdBbHdDTEFJb0FqQUVEQVFRQS93RUFBUVVCQmdFSEFRZ0JDUUVLQVFzQkRBRU5BUTRCRHdFUUFPUUE1UUVSQVJJQTVnRG5BTm9BclFCcUFNa0FhUURMQUhFQVpRQndBTThBZFFETUFIUUEwd0I2QU5BQWVRRFdBSDhBMUFCK0FPc0E3QUNOQUk0QVlnQnNBTW9BY3dET0FIY0Fad0I4QUdnQWdRQzRBS01Bb2dER0FPZ0E4QUNEQU40QXd3RVRBUlFCRlFFV0FQMEEvZ0VYQVJnQkdRRWFBUnNCSEFFZEFSNEJId0VnQVNFQklnRWpBU1FBNEFEaUFPTUFyd0I5QUs0QWJRQmtBRzhBWXdCdUFKRUFvUUVsQVNZQkp3RW9BU2tCS2dFckFTd0JMUUV1QVM4Qk1BRXhBVElCTXdFMEFUVUJOZ0UzQUdZQWVBQzdBTG9CT0FFNUFOZ0F4d0JyQU1nQWNnRE5BSFlBMVFDQUFORUFld0U2QVRzQWxBQ1ZBSThCUEFFOUFUNEJQd0NIQUtzQlFBRkJBVUlBc2dDekFKTUE0UUNrQUtjQTd3Q3dBTEVBa0FDZ0FVTUJSQURaQVVVQlJnRkhBVWdCU1FGS0FVc0JUQUZOQVU0QlR3RlFBVkVCVWdGVEFRRUJWQUZWQU9rQTZnQ0pBTnNCVmdGWEFWZ0JXUUQ0QVBrQldnRmJBVndCWFFGZUFWOEEzUURjQVdBQllRRmlBV01BaGdGa0FXVUJaZ0ZuQVdnQmFRRnFBV3NCYkFGdEFXNEE3UUR1QVc4QmNBQzJBTGNBeEFGeEFMUUF0UURGQVhJQmN3RFhBUHNBL0FGMEFYVUEzd0YyQVhjQmVBRjVBWG9CZXdGOEFYMEJmZ0YvQVlBQmdRR0NBWU1CaEFHRkFZWUJod0dJQVlrQmlnR0xBWXdCalFHT0FZOEJrQUdSQVpJQmt3R1VBWlVCbGdHWEFaZ0JtUUdhQVpzQm5BR2RBWjRCbndHZ0FhRUJvZ0dqQWFRQnBRR21BYWNCcUFHcEFhb0Jxd0NwQUtvQnJBR3RBYTRCcndHd0FiRUJzZ0d6QWJRQnRRRzJBYmNCdUFHNUFib0J1d0c4QWIwQnZnRy9BY0FCd1FIQ0FjTUJ4QUhGQWNZQnh3SElBY2tCeWdITEFjd0J6UUhPQWM4QjBBSFJBZElCMHdIVUFkVUIxZ0hYQWRnQjJRSGFBZHNCM0FIZEFkNEIzd0hnQWVFQjRnSGpBZVFCNVFIbUFlY0I2QUhwQWVvQjZ3SHNBZTBBOVFEMEFQWUI3Z0h2QWZBQjhRSHlBZk1COUFIMUFmWUI5d0g0QWZrQitnSDdBZndCL1FIK0FmOENBQUlCQWdJQ0F3SUVBZ1VDQmdJSEFnZ0NDUUlLQWdzQ0RBSU5BZzRDRHdJUUFoRUNFZ0lUQWhRQ0ZRSVdBaGNDR0FJWkFob0NHd0ljQWgwQ0hnSWZBaUFDSVFJaUFpTUNKQUlsQWlZQ0p3SW9BaWtDS2dJckFpd0NMUUl1QWk4Q01BSXhBaklDTXdJMEFqVUNOZ0kzQWpnQ09RSTZBanNDUEFJOUFqNENQd0pBQWtFQ1FnSkRBa1FDUlFKR0FrY0NTQUpKQWtvQ1N3Sk1BazBDVGdKUEFsQUNVUUpTQWxNQ1ZBSlZBbFlDVndKWUFsa0NXZ0piQWx3QW5RQ2VBbDBDWGdKZkFtQUNZUUppQW1NQ1pBSmxBbVlDWndDbEFKSUNhQUpwQW1vQ2F3SnNBbTBDYmdKdkFuQUNjUUp5QW5NQ2RBSjFBbllDZHdKNEFua0NlZ0o3QW53Q2ZRSitBbjhDZ0FLQkFvSUNnd0tFQW9VQ2hnS0hBb2dDaVFLS0Fvc0NqQUtOQW80Q2p3S1FBcEVDa2dLVEFwUUNsUUtXQXBjQ21BS1pBcG9DbXdLY0FwMENuZ0tmQXFBQ29RS2lBcU1DcEFLbEFxWUNwd0tvQXFrQ3FnS3JBcXdDclFLdUFxOENzQUt4QXJJQ3N3SzBBclVDdGdLM0FyZ0N1UUs2QXJzQ3ZBSzlBcjRDdndMQUFzRUN3Z0xEQXNRQ3hRTEdBc2NDeUFMSkFzb0N5d0xNQXMwQ3pnTFBBdEFDMFFMU0F0TUMxQUxWQXRZQzF3TFlBdGtDMmdMYkFLWUMzQUxkQXQ0QzN3TGdBdUVDNGdMakF1UUM1UUxtQXVjQzZBTHBBdW9DNndMc0F1MEM3Z0x2QXZBQzhRTHlBdk1DOUFMMUF2WUM5d0w0QXZrQytnTDdBdndDL1FMK0F2OERBQUMrQUw4REFRQ0NBTUlEQWdNREF3UURCUU1HQUo4QW1BQ29Bd2NEQ0FNSkF3b0RDd01NQXcwRERnTVBBeEFERVFNU0F4TURGQU1WQXhZQXZBTVhBeGdER1FNYUF4c0RIQU1kQkVWMWNtOEhRVzFoWTNKdmJnZGhiV0ZqY205dUIwVnRZV055YjI0SFpXMWhZM0p2YmdkMWJta3dNVEl5QjNWdWFUQXhNak1IU1cxaFkzSnZiZ2RwYldGamNtOXVCM1Z1YVRBeE16WUhkVzVwTURFek53ZDFibWt3TVROQ0IzVnVhVEF4TTBNSGRXNXBNREUwTlFkMWJta3dNVFEyQjFWdFlXTnliMjRIZFcxaFkzSnZiZ3BGWkc5MFlXTmpaVzUwQ21Wa2IzUmhZMk5sYm5RS1dtUnZkR0ZqWTJWdWRBcDZaRzkwWVdOalpXNTBCazVoWTNWMFpRWnVZV04xZEdVR1UyRmpkWFJsQm5OaFkzVjBaUVphWVdOMWRHVUdlbUZqZFhSbEIwRnZaMjl1WldzSFlXOW5iMjVsYXdkRmIyZHZibVZyQjJWdloyOXVaV3NIVlc5bmIyNWxhd2QxYjJkdmJtVnJCMGx2WjI5dVpXc0hhVzluYjI1bGF3ZDFibWt3TUVFd0NrTmtiM1JoWTJObGJuUUtZMlJ2ZEdGalkyVnVkQXBIWkc5MFlXTmpaVzUwQ21ka2IzUmhZMk5sYm5RRlZYSnBibWNGZFhKcGJtY0dWWFJwYkdSbEJuVjBhV3hrWlFaT1kyRnliMjRHYm1OaGNtOXVCbEpoWTNWMFpRWnlZV04xZEdVSGRXNXBNREUxTmdkMWJta3dNVFUzQmxKallYSnZiZ1p5WTJGeWIyNEdSV05oY205dUJtVmpZWEp2Ymd0RFkybHlZM1Z0Wm14bGVBdGpZMmx5WTNWdFpteGxlQXRIWTJseVkzVnRabXhsZUF0blkybHlZM1Z0Wm14bGVBdGxjWFZwZG1Gc1pXNWpaUWQxYm1reU1FSkVCR3hwY21FSGRXNXBNakJDT0FkMWJta3lNRUpHQzFOamFYSmpkVzFtYkdWNEMzTmphWEpqZFcxbWJHVjRCa2wwYVd4a1pRWnBkR2xzWkdVSFQyMWhZM0p2YmdkdmJXRmpjbTl1QzFsamFYSmpkVzFtYkdWNEMzbGphWEpqZFcxbWJHVjRDMWRqYVhKamRXMW1iR1Y0QzNkamFYSmpkVzFtYkdWNEIzVnVhVEF4UlRJSGRXNXBNREZGTXdkQlJXRmpkWFJsQjJGbFlXTjFkR1VIZFc1cE1ERkdOQWQxYm1rd01VWTFCa2RqWVhKdmJnWm5ZMkZ5YjI0R1JHTnliMkYwQmtSallYSnZiZ1prWTJGeWIyNEdRV0p5WlhabEJtRmljbVYyWlFaRlluSmxkbVVHWldKeVpYWmxCa2xpY21WMlpRWnBZbkpsZG1VR1QySnlaWFpsQm05aWNtVjJaUVpWWW5KbGRtVUdkV0p5WlhabEIzVnVhVEF5UXpJSGRXNXBNREpETXdkMWJta3dNa00wQjNWdWFUQXlRelVIZFc1cE1EQkJSQXRLWTJseVkzVnRabXhsZUF0cVkybHlZM1Z0Wm14bGVBWk1ZV04xZEdVR2JHRmpkWFJsQmt4allYSnZiZ1pzWTJGeWIyNExTR05wY21OMWJXWnNaWGdMYUdOcGNtTjFiV1pzWlhnR1ZHTmhjbTl1Qm5SallYSnZiZ2QxYm1rd01VSTFCM1Z1YVRBeFFqWU5jWFZ2ZEdWeVpYWmxjbk5sWkFkMWJta3lNREZHQ2tsa2IzUmhZMk5sYm5RSGRXNXBNREUyTWdkMWJta3dNVFl6RFU5b2RXNW5ZWEoxYld4aGRYUU5iMmgxYm1kaGNuVnRiR0YxZEExVmFIVnVaMkZ5ZFcxc1lYVjBEWFZvZFc1bllYSjFiV3hoZFhRRVRHUnZkQVJzWkc5MEIzVnVhVEF4UTBRSGRXNXBNREZEUlFkMWJta3dNVU5HQjNWdWFUQXhSREFIZFc1cE1ERkVNUWQxYm1rd01VUXlCM1Z1YVRBeFJETUhkVzVwTURGRU5BZDFibWt3TWpKRkIzVnVhVEF5TWtZSGRXNXBNVVV3TkFkMWJta3hSVEExQjNWdWFURkZNRU1IZFc1cE1VVXdSQWQxYm1reFJUSTBCM1Z1YVRGRk1qVUhkVzVwTVVVek5nZDFibWt4UlRNM0IzVnVhVEZGTkRJSGRXNXBNVVUwTXdkMWJta3hSVFZCQjNWdWFURkZOVUlIZFc1cE1VVTJNZ2QxYm1reFJUWXpCM1Z1YVRGRk9USUhkVzVwTVVVNU13ZDFibWt3TVVZNEIzVnVhVEF4UmprR1dXZHlZWFpsQm5sbmNtRjJaUWQxYm1rd01qRTRCM1Z1YVRBeU1Ua0hkVzVwTURJeFFRZDFibWt3TWpGQ0IzVnVhVEZGUWtNSGRXNXBNVVZDUkFaWFozSmhkbVVHZDJkeVlYWmxCbGRoWTNWMFpRWjNZV04xZEdVSlYyUnBaWEpsYzJsekNYZGthV1Z5WlhOcGN3ZDFibWt4UlRnMkIzVnVhVEZGT0RjSGRXNXBNVVU0T0FkMWJta3hSVGc1QjNWdWFUQXhSVGdIZFc1cE1ERkZPUWQxYm1reFJUTkZCM1Z1YVRGRk0wWUhkVzVwTVVVM1F3ZDFibWt4UlRkRUIzVnVhVEZGTTBFSGRXNXBNVVV6UWdkMWJta3hSVFE0QjNWdWFURkZORGtIZFc1cE1VVXhNQWQxYm1reFJURXhCM1Z1YVRBeU1VVUhkVzVwTURJeFJnZDFibWt4UlRBeUIzVnVhVEZGTURNSGRXNXBNVVV3UVFkMWJta3hSVEJDQjNWdWFURkZNVVVIZFc1cE1VVXhSZ2QxYm1reFJUUXdCM1Z1YVRGRk5ERUhkVzVwTVVVMU5nZDFibWt4UlRVM0IzVnVhVEZGTmpBSGRXNXBNVVUyTVFkMWJta3hSVFpCQjNWdWFURkZOa0lIZFc1cE1VVTBOQWQxYm1reFJUUTFCM1Z1YVRGRlEwRUhkVzVwTVVWRFFnZDFibWt4UlRsRkIzVnVhVEZGUWpnSGRXNXBNVVZDT1FkMWJta3hSVU5EQjNWdWFURkZRMFFIZFc1cE1VVkJNQWQxYm1reFJVRXhCM1Z1YVRGRlJqUUhkVzVwTVVWR05RZDFibWt4UlRaREIzVnVhVEZGTmtRSGRXNXBNVVZGTkFkMWJta3hSVVUxQjNWdWFURkZSamdIZFc1cE1VVkdPUWQxYm1rd01UazBCM1Z1YVRBeU5qTUhkVzVwTVVWQlF3ZDFibWt4UlVGRUIzVnVhVEZGUXpZSGRXNXBNVVZETndkMWJta3hSVUkyQjNWdWFURkZRamNIZFc1cE1VVkVPQWQxYm1reFJVUTVCM1Z1YVRBeE9UQUhkVzVwTURJMVFnZDFibWt3TWpWREIzVnVhVEF4T1RjSGRXNXBNREkyT0FSVVltRnlCSFJpWVhJRVNHSmhjZ1JvWW1GeUIzVnVhVEF5TkRRSGRXNXBNREk0T1F4clozSmxaVzVzWVc1a2FXTUhkVzVwTURJelJBZDFibWt3TVRsQkIzVnVhVEF5UWtNSGRXNXBNREpDUWdkMWJta3dNakkyQjNWdWFUQXlNamNIZFc1cE1EQkNPUWQxYm1rd01FSXlCM1Z1YVRBd1FqTUNTVW9DYVdvTGJtRndiM04wY205d2FHVUhkVzVwTURFNFJRZDFibWt3TWpVNEIzVnVhVE13UVRBSGRXNXBNekJCTVFkMWJta3pNRUV5QjNWdWFUTXdRVE1IZFc1cE16QkJOQWQxYm1rek1FRTFCM1Z1YVRNd1FUWUhkVzVwTXpCQk53ZDFibWt6TUVFNEIzVnVhVE13UVRrSGRXNXBNekJCUVFkMWJta3pNRUZDQjNWdWFUTXdRVU1IZFc1cE16QkJSQWQxYm1rek1FRkZCM1Z1YVRNd1FVWUhkVzVwTXpCQ01BZDFibWt6TUVJeEIzVnVhVE13UWpJSGRXNXBNekJDTXdkMWJta3pNRUkwQjNWdWFUTXdRalVIZFc1cE16QkNOZ2QxYm1rek1FSTNCM1Z1YVRNd1FqZ0hkVzVwTXpCQ09RZDFibWt6TUVKQkIzVnVhVE13UWtJSGRXNXBNekJDUXdkMWJta3pNRUpFQjNWdWFUTXdRa1VIZFc1cE16QkNSZ2QxYm1rek1FTXdCM1Z1YVRNd1F6RUhkVzVwTXpCRE1nZDFibWt6TUVNekIzVnVhVE13UXpRSGRXNXBNekJETlFkMWJta3pNRU0yQjNWdWFUTXdRemNIZFc1cE16QkRPQWQxYm1rek1FTTVCM1Z1YVRNd1EwRUhkVzVwTXpCRFFnZDFibWt6TUVOREIzVnVhVE13UTBRSGRXNXBNekJEUlFkMWJta3pNRU5HQjNWdWFUTXdSREFIZFc1cE16QkVNUWQxYm1rek1FUXlCM1Z1YVRNd1JETUhkVzVwTXpCRU5BZDFibWt6TUVRMUIzVnVhVE13UkRZSGRXNXBNekJFTndkMWJta3pNRVE0QjNWdWFUTXdSRGtIZFc1cE16QkVRUWQxYm1rek1FUkNCM1Z1YVRNd1JFTUhkVzVwTXpCRVJBZDFibWt6TUVSRkIzVnVhVE13UkVZSGRXNXBNekJGTUFkMWJta3pNRVV4QjNWdWFUTXdSVElIZFc1cE16QkZNd2QxYm1rek1FVTBCM1Z1YVRNd1JUVUhkVzVwTXpCRk5nZDFibWt6TUVVM0IzVnVhVE13UlRnSGRXNXBNekJGT1FkMWJta3pNRVZCQjNWdWFUTXdSVUlIZFc1cE16QkZRd2QxYm1rek1FVkVCM1Z1YVRNd1JVVUhkVzVwTXpCRlJnZDFibWt6TUVZd0IzVnVhVE13UmpFSGRXNXBNekJHTWdkMWJta3pNRVl6QjNWdWFUTXdSalFIZFc1cE16QkdOUWQxYm1rek1FWTJCM1Z1YVRNd1JqY0hkVzVwTXpCR09BZDFibWt6TUVZNUIzVnVhVE13UmtFSGRXNXBNekJHUWdkMWJta3pNRVpEQjNWdWFUTXdSa1FIZFc1cE16QkdSUWQxYm1rek1FWkdCM1Z1YVRJMk1qRUZiRzl1WjNNRFJXNW5BMlZ1WndkMWJta3dNVGcyQjNWdWFUQXlOVFFIZFc1cE1ERTRSZ2QxYm1rd01qVTVCM1Z1YVRBeE9Ea0hkVzVwTURJMU5nZDFibWt5TVRFMkNtWnBaM1Z5WldSaGMyZ0hkVzVwTURReE1BZDFibWt3TkRFeEIzVnVhVEEwTVRJSGRXNXBNRFF4TXdkMWJta3dOREUwQjNWdWFUQTBNVFVIZFc1cE1EUXhOZ2QxYm1rd05ERTNCM1Z1YVRBME1UZ0hkVzVwTURReE9RZDFibWt3TkRGQkIzVnVhVEEwTVVJSGRXNXBNRFF4UXdkMWJta3dOREZFQjNWdWFUQTBNVVVIZFc1cE1EUXhSZ2QxYm1rd05ESXdCM1Z1YVRBME1qRUhkVzVwTURReU1nZDFibWt3TkRJekIzVnVhVEEwTWpRSGRXNXBNRFF5TlFkMWJta3dOREkyQjNWdWFUQTBNamNIZFc1cE1EUXlPQWQxYm1rd05ESTVCM1Z1YVRBME1rRUhkVzVwTURReVFnZDFibWt3TkRKREIzVnVhVEEwTWtRSGRXNXBNRFF5UlFkMWJta3dOREpHQjNWdWFUQTBNekFIZFc1cE1EUXpNUWQxYm1rd05ETXlCM1Z1YVRBME16TUhkVzVwTURRek5BZDFibWt3TkRNMUIzVnVhVEEwTXpZSGRXNXBNRFF6TndkMWJta3dORE00QjNWdWFUQTBNemtIZFc1cE1EUXpRUWQxYm1rd05ETkNCM1Z1YVRBME0wTUhkVzVwTURRelJBZDFibWt3TkRORkIzVnVhVEEwTTBZSGRXNXBNRFEwTUFkMWJta3dORFF4QjNWdWFUQTBORElIZFc1cE1EUTBNd2QxYm1rd05EUTBCM1Z1YVRBME5EVUhkVzVwTURRME5nZDFibWt3TkRRM0IzVnVhVEEwTkRnSGRXNXBNRFEwT1FkMWJta3dORFJCQjNWdWFUQTBORUlIZFc1cE1EUTBRd2QxYm1rd05EUkVCM1Z1YVRBME5FVUhkVzVwTURRMFJnZDFibWt3TkRBeEIzVnVhVEEwTlRFSGRXNXBNRFF3TUFkMWJta3dORFV3QjNWdWFUQTBNRElIZFc1cE1EUTFNZ2QxYm1rd05EQXpCM1Z1YVRBME5UTUhkVzVwTURRd05BZDFibWt3TkRVMEIzVnVhVEEwTURVSGRXNXBNRFExTlFkMWJta3dOREEyQjNWdWFUQTBOVFlIZFc1cE1EUXdOd2QxYm1rd05EVTNCM1Z1YVRBME1EZ0hkVzVwTURRMU9BZDFibWt3TkRBNUIzVnVhVEEwTlRrSGRXNXBNRFF3UVFkMWJta3dORFZCQjNWdWFUQTBNRUlIZFc1cE1EUTFRZ2QxYm1rd05EQkRCM1Z1YVRBME5VTUhkVzVwTURRd1JBZDFibWt3TkRWRUIzVnVhVEEwTUVVSGRXNXBNRFExUlFkMWJta3dOREJHQjNWdWFUQTBOVVlIZFc1cE1EUTVNQWQxYm1rd05Ea3hCM1Z1YVRBMFJEZ0hkVzVwTURSRU9RZDFibWsxTVRnMkIzVnVhVEF5UWtRSGRXNXBNRFJGT0FkMWJta3dORVU1QjNWdWFURkZPVU1IZFc1cE1VVTVRZ2QxYm1rd01UZ3hCM1Z1YVRBeU5UTUhkVzVwTURFNFFRZDFibWt3TWpVM0IzVnVhVEF4T1VRSGRXNXBNREkzTWdkMWJta3dNVUl6QjNWdWFUQXhRalFIZFc1cE1ERTVNUWQxYm1rd01VSXlCM1Z1YVRBeU9FSUhkVzVwTURFNU13ZDFibWt3TWpZd0IzVnVhVEF4T1RnSGRXNXBNREU1T1FkMWJta3dNVVZCQjNWdWFUQXhSVUlIZFc1cE1ERkNOd2QxYm1rd01qa3lCM1Z1YVRBeFJVVUhkVzVwTURGRlJnZDFibWxCTnpoQ0IzVnVhVUUzT0VNSGRXNXBNREZGTkFkMWJta3dNVVUxQjNWdWFUQTBRVVVIZFc1cE1EUkJSZ2QxYm1rd05FSXdCM1Z1YVRBMFFqRUhkVzVwTURSQ01nZDFibWt3TkVJekIzVnVhVEEwT1VFSGRXNXBNRFE1UWdkMWJta3dORUV5QjNWdWFUQTBRVE1IZFc1cE1EUTVOZ2QxYm1rd05EazNCM1Z1YVRBMFFrRUhkVzVwTURSQ1FnZDFibWt3TkRreUIzVnVhVEEwT1RNSGRXNXBNREk1TkFkMWJta3lNREUxRFhWdVpHVnljMk52Y21Wa1ltd0hkVzVwTWpBeE5nZDFibWt5TURORkNXVjRZMnhoYldSaWJBZDFibWt5TVRBMUIzVnVhVEl4TVRjSlpYTjBhVzFoZEdWa0IzVnVhVEl5TVRrSGRXNXBNakV4TXdkMWJta3dORU14QjNWdWFUQTBReklIZFc1cE1EUkZRd2QxYm1rd05FVkVCM1Z1YVRBeFF6QUhkVzVwTURGRE1RZDFibWt3TVVNeUIzVnVhVEF4UXpNSGRXNXBNRFJFTUFkMWJta3dORVF4QjNWdWFUQTBSRFlIZFc1cE1EUkVOd2QxYm1rd05FRXdCM1Z1YVRBMFFURUhkVzVwTURSR01nZDFibWt3TkVZekIzVnVhVEl5TVRVSGRXNXBNakJDTlFkMWJta3lNRUZFQjNWdWFUSXdRakVIZFc1cE1qQkNOQXB2Y25Sb2IyZHZibUZzQldGdVoyeGxBQUFBQUFFQUFmLy9BQThBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQmlBR0lBWWdCaUFyai8rZ0lpLy9yL0xBSzQvL2tDSXYvdS95d0FZZ0JpQUdJQVlnSzUvL2NDMXdJZC8vRC9KUUxCLy9jQzF3SWgvKzcvSlFBWUFCZ0FHQUFZQXNZQmd3TEdBWU93QUN3Z3NBQlZXRVZaSUNCTHVBQU9VVXV3QmxOYVdMQTBHN0FvV1dCbUlJcFZXTEFDSldHNUNBQUlBR05qSTJJYklTR3dBRm13QUVNalJMSUFBUUJEWUVJdHNBRXNzQ0JnWmkyd0Fpd2pJU01oTGJBRExDQmtzd01VRlFCQ1E3QVRReUJnWUVLeEFoUkRRckVsQTBPd0FrTlVlQ0N3RENPd0FrTkRZV1N3QkZCNHNnSUNBa05nUXJBaFpSd2hzQUpEUTdJT0ZRRkNIQ0N3QWtNalFySVRBUk5EWUVJanNBQlFXR1Zac2hZQkFrTmdRaTJ3QkN5d0F5dXdGVU5ZSXlFakliQVdRME1qc0FCUVdHVlpHeUJrSUxEQVVMQUVKbHF5S0FFTlEwVmpSYkFHUlZnaHNBTWxXVkpiV0NFaklSdUtXQ0N3VUZCWUliQkFXUnNnc0RoUVdDR3dPRmxaSUxFQkRVTkZZMFZoWkxBb1VGZ2hzUUVOUTBWalJTQ3dNRkJZSWJBd1dSc2dzTUJRV0NCbUlJcUtZU0N3Q2xCWVlCc2dzQ0JRV0NHd0NtQWJJTEEyVUZnaHNEWmdHMkJaV1ZrYnNBSWxzQXhEWTdBQVVsaXdBRXV3Q2xCWUliQU1ReHRMc0I1UVdDR3dIa3RodUJBQVk3QU1RMk80QlFCaVdWbGtZVm13QVN0WldTT3dBRkJZWlZsWklHU3dGa01qUWxrdHNBVXNJRVVnc0FRbFlXUWdzQWREVUZpd0J5TkNzQWdqUWhzaElWbXdBV0F0c0FZc0l5RWpJYkFES3lCa3NRZGlRaUN3Q0NOQ3NBWkZXQnV4QVExRFJXT3hBUTFEc0FOZ1JXT3dCU29oSUxBSVF5Q0tJSXF3QVN1eE1BVWxzQVFtVVZoZ1VCdGhVbGxZSTFraFdTQ3dRRk5Zc0FFckd5R3dRRmtqc0FCUVdHVlpMYkFITExBSlF5dXlBQUlBUTJCQ0xiQUlMTEFKSTBJaklMQUFJMEpoc0FKaVpyQUJZN0FCWUxBSEtpMndDU3dnSUVVZ3NBNURZN2dFQUdJZ3NBQlFXTEJBWUZsbXNBRmpZRVN3QVdBdHNBb3NzZ2tPQUVORlFpb2hzZ0FCQUVOZ1FpMndDeXl3QUVNalJMSUFBUUJEWUVJdHNBd3NJQ0JGSUxBQkt5T3dBRU93QkNWZ0lFV0tJMkVnWkNDd0lGQllJYkFBRzdBd1VGaXdJQnV3UUZsWkk3QUFVRmhsV2JBREpTTmhSRVN3QVdBdHNBMHNJQ0JGSUxBQkt5T3dBRU93QkNWZ0lFV0tJMkVnWkxBa1VGaXdBQnV3UUZranNBQlFXR1Zac0FNbEkyRkVSTEFCWUMyd0Rpd2dzQUFqUXJNTkRBQURSVkJZSVJzaklWa3FJUzJ3RHl5eEFnSkZzR1JoUkMyd0VDeXdBV0FnSUxBUFEwcXdBRkJZSUxBUEkwSlpzQkJEU3JBQVVsZ2dzQkFqUWxrdHNCRXNJTEFRWW1hd0FXTWd1QVFBWTRvalliQVJRMkFnaW1BZ3NCRWpRaU10c0JJc1MxUllzUVJrUkZra3NBMWxJM2d0c0JNc1MxRllTMU5Zc1FSa1JGa2JJVmtrc0JObEkzZ3RzQlFzc1FBU1ExVllzUklTUTdBQllVS3dFU3Rac0FCRHNBSWxRckVQQWlWQ3NSQUNKVUt3QVJZaklMQURKVkJZc1FFQVEyQ3dCQ1ZDaW9vZ2lpTmhzQkFxSVNPd0FXRWdpaU5oc0JBcUlSdXhBUUJEWUxBQ0pVS3dBaVZoc0JBcUlWbXdEME5Ic0JCRFIyQ3dBbUlnc0FCUVdMQkFZRmxtc0FGaklMQU9RMk80QkFCaUlMQUFVRml3UUdCWlpyQUJZMkN4QUFBVEkwU3dBVU93QUQ2eUFRRUJRMkJDTGJBVkxBQ3hBQUpGVkZpd0VpTkNJRVd3RGlOQ3NBMGpzQU5nUWlCZ3R4Z1lBUUFSQUJNQVFrSkNpbUFnc0JRalFyQUJZYkVVQ0N1d2l5c2JJbGt0c0JZc3NRQVZLeTJ3Rnl5eEFSVXJMYkFZTExFQ0ZTc3RzQmtzc1FNVkt5MndHaXl4QkJVckxiQWJMTEVGRlNzdHNCd3NzUVlWS3kyd0hTeXhCeFVyTGJBZUxMRUlGU3N0c0I4c3NRa1ZLeTJ3S3l3aklMQVFZbWF3QVdPd0JtQkxWRmdqSUM2d0FWMGJJU0ZaTGJBc0xDTWdzQkJpWnJBQlk3QVdZRXRVV0NNZ0xyQUJjUnNoSVZrdHNDMHNJeUN3RUdKbXNBRmpzQ1pnUzFSWUl5QXVzQUZ5R3lFaFdTMndJQ3dBc0E4cnNRQUNSVlJZc0JJalFpQkZzQTRqUXJBTkk3QURZRUlnWUxBQlliVVlHQUVBRVFCQ1FvcGdzUlFJSzdDTEt4c2lXUzJ3SVN5eEFDQXJMYkFpTExFQklDc3RzQ01zc1FJZ0t5MndKQ3l4QXlBckxiQWxMTEVFSUNzdHNDWXNzUVVnS3kyd0p5eXhCaUFyTGJBb0xMRUhJQ3N0c0Nrc3NRZ2dLeTJ3S2l5eENTQXJMYkF1TENBOHNBRmdMYkF2TENCZ3NCaGdJRU1qc0FGZ1E3QUNKV0d3QVdDd0xpb2hMYkF3TExBdks3QXZLaTJ3TVN3Z0lFY2dJTEFPUTJPNEJBQmlJTEFBVUZpd1FHQlpackFCWTJBallUZ2pJSXBWV0NCSElDQ3dEa05qdUFRQVlpQ3dBRkJZc0VCZ1dXYXdBV05nSTJFNEd5RlpMYkF5TEFDeEFBSkZWRml4RGdaRlFyQUJGckF4S3JFRkFSVkZXREJaR3lKWkxiQXpMQUN3RHl1eEFBSkZWRml4RGdaRlFyQUJGckF4S3JFRkFSVkZXREJaR3lKWkxiQTBMQ0Exc0FGZ0xiQTFMQUN4RGdaRlFyQUJSV080QkFCaUlMQUFVRml3UUdCWlpyQUJZN0FCSzdBT1EyTzRCQUJpSUxBQVVGaXdRR0JaWnJBQlk3QUJLN0FBRnJRQUFBQUFBRVErSXppeE5BRVZLaUV0c0RZc0lEd2dSeUN3RGtOanVBUUFZaUN3QUZCWXNFQmdXV2F3QVdOZ3NBQkRZVGd0c0Rjc0xoYzhMYkE0TENBOElFY2dzQTVEWTdnRUFHSWdzQUJRV0xCQVlGbG1zQUZqWUxBQVEyR3dBVU5qT0Myd09TeXhBZ0FXSlNBdUlFZXdBQ05Dc0FJbFNZcUtSeU5ISTJFZ1dHSWJJVm13QVNOQ3NqZ0JBUlVVS2kyd09peXdBQmF3RnlOQ3NBUWxzQVFsUnlOSEkyR3hEQUJDc0F0REsyV0tMaU1nSUR5S09DMndPeXl3QUJhd0Z5TkNzQVFsc0FRbElDNUhJMGNqWVNDd0JpTkNzUXdBUXJBTFF5c2dzR0JRV0NDd1FGRllzd1FnQlNBYnN3UW1CUnBaUWtJaklMQUtReUNLSTBjalJ5TmhJMFpnc0FaRHNBSmlJTEFBVUZpd1FHQlpackFCWTJBZ3NBRXJJSXFLWVNDd0JFTmdaQ093QlVOaFpGQllzQVJEWVJ1d0JVTmdXYkFESmJBQ1lpQ3dBRkJZc0VCZ1dXYXdBV05oSXlBZ3NBUW1JMFpoT0JzanNBcERSckFDSmJBS1EwY2pSeU5oWUNDd0JrT3dBbUlnc0FCUVdMQkFZRmxtc0FGallDTWdzQUVySTdBR1EyQ3dBU3V3QlNWaHNBVWxzQUppSUxBQVVGaXdRR0JaWnJBQlk3QUVKbUVnc0FRbFlHUWpzQU1sWUdSUVdDRWJJeUZaSXlBZ3NBUW1JMFpoT0ZrdHNEd3NzQUFXc0JjalFpQWdJTEFGSmlBdVJ5TkhJMkVqUERndHNEMHNzQUFXc0JjalFpQ3dDaU5DSUNBZ1JpTkhzQUVySTJFNExiQStMTEFBRnJBWEkwS3dBeVd3QWlWSEkwY2pZYkFBVkZndUlEd2pJUnV3QWlXd0FpVkhJMGNqWVNDd0JTV3dCQ1ZISTBjalliQUdKYkFGSlVtd0FpVmh1UWdBQ0FCall5TWdXR0liSVZsanVBUUFZaUN3QUZCWXNFQmdXV2F3QVdOZ0l5NGpJQ0E4aWpnaklWa3RzRDhzc0FBV3NCY2pRaUN3Q2tNZ0xrY2pSeU5oSUdDd0lHQm1zQUppSUxBQVVGaXdRR0JaWnJBQll5TWdJRHlLT0Myd1FDd2pJQzVHc0FJbFJyQVhRMWhRRzFKWldDQThXUzZ4TUFFVUt5MndRU3dqSUM1R3NBSWxSckFYUTFoU0cxQlpXQ0E4V1M2eE1BRVVLeTJ3UWl3aklDNUdzQUlsUnJBWFExaFFHMUpaV0NBOFdTTWdMa2F3QWlWR3NCZERXRkliVUZsWUlEeFpMckV3QVJRckxiQkRMTEE2S3lNZ0xrYXdBaVZHc0JkRFdGQWJVbGxZSUR4WkxyRXdBUlFyTGJCRUxMQTdLNG9nSUR5d0JpTkNpamdqSUM1R3NBSWxSckFYUTFoUUcxSlpXQ0E4V1M2eE1BRVVLN0FHUXk2d01Dc3RzRVVzc0FBV3NBUWxzQVFtSUNBZ1JpTkhZYkFNSTBJdVJ5TkhJMkd3QzBNckl5QThJQzRqT0xFd0FSUXJMYkJHTExFS0JDVkNzQUFXc0FRbHNBUWxJQzVISTBjallTQ3dCaU5Dc1F3QVFyQUxReXNnc0dCUVdDQ3dRRkZZc3dRZ0JTQWJzd1FtQlJwWlFrSWpJRWV3QmtPd0FtSWdzQUJRV0xCQVlGbG1zQUZqWUNDd0FTc2dpb3BoSUxBRVEyQmtJN0FGUTJGa1VGaXdCRU5oRzdBRlEyQlpzQU1sc0FKaUlMQUFVRml3UUdCWlpyQUJZMkd3QWlWR1lUZ2pJRHdqT0JzaElDQkdJMGV3QVNzallUZ2hXYkV3QVJRckxiQkhMTEVBT2lzdXNUQUJGQ3N0c0Vnc3NRQTdLeUVqSUNBOHNBWWpRaU00c1RBQkZDdXdCa011c0RBckxiQkpMTEFBRlNCSHNBQWpRcklBQVFFVkZCTXVzRFlxTGJCS0xMQUFGU0JIc0FBalFySUFBUUVWRkJNdXNEWXFMYkJMTExFQUFSUVRzRGNxTGJCTUxMQTVLaTJ3VFN5d0FCWkZJeUF1SUVhS0kyRTRzVEFCRkNzdHNFNHNzQW9qUXJCTkt5MndUeXl5QUFCR0t5MndVQ3l5QUFGR0t5MndVU3l5QVFCR0t5MndVaXl5QVFGR0t5MndVeXl5QUFCSEt5MndWQ3l5QUFGSEt5MndWU3l5QVFCSEt5MndWaXl5QVFGSEt5MndWeXl6QUFBQVF5c3RzRmdzc3dBQkFFTXJMYkJaTExNQkFBQkRLeTJ3V2l5ekFRRUFReXN0c0Zzc3N3QUFBVU1yTGJCY0xMTUFBUUZES3kyd1hTeXpBUUFCUXlzdHNGNHNzd0VCQVVNckxiQmZMTElBQUVVckxiQmdMTElBQVVVckxiQmhMTElCQUVVckxiQmlMTElCQVVVckxiQmpMTElBQUVnckxiQmtMTElBQVVnckxiQmxMTElCQUVnckxiQm1MTElCQVVnckxiQm5MTE1BQUFCRUt5MndhQ3l6QUFFQVJDc3RzR2tzc3dFQUFFUXJMYkJxTExNQkFRQkVLeTJ3YXl5ekFBQUJSQ3N0c0d3c3N3QUJBVVFyTGJCdExMTUJBQUZFS3kyd2JpeXpBUUVCUkNzdHNHOHNzUUE4S3k2eE1BRVVLeTJ3Y0N5eEFEd3JzRUFyTGJCeExMRUFQQ3V3UVNzdHNISXNzQUFXc1FBOEs3QkNLeTJ3Y3l5eEFUd3JzRUFyTGJCMExMRUJQQ3V3UVNzdHNIVXNzQUFXc1FFOEs3QkNLeTJ3ZGl5eEFEMHJMckV3QVJRckxiQjNMTEVBUFN1d1FDc3RzSGdzc1FBOUs3QkJLeTJ3ZVN5eEFEMHJzRUlyTGJCNkxMRUJQU3V3UUNzdHNIc3NzUUU5SzdCQkt5MndmQ3l4QVQwcnNFSXJMYkI5TExFQVBpc3VzVEFCRkNzdHNINHNzUUErSzdCQUt5MndmeXl4QUQ0cnNFRXJMYkNBTExFQVBpdXdRaXN0c0lFc3NRRStLN0JBS3kyd2dpeXhBVDRyc0VFckxiQ0RMTEVCUGl1d1Fpc3RzSVFzc1FBL0t5NnhNQUVVS3kyd2hTeXhBRDhyc0VBckxiQ0dMTEVBUHl1d1FTc3RzSWNzc1FBL0s3QkNLeTJ3aUN5eEFUOHJzRUFyTGJDSkxMRUJQeXV3UVNzdHNJb3NzUUUvSzdCQ0t5MndpeXl5Q3dBRFJWQllzQVlic2dRQ0EwVllJeUViSVZsWlFpdXdDR1d3QXlSUWVMRUZBUlZGV0RCWkxRQkx1QURJVWxpeEFRR09XYkFCdVFnQUNBQmpjTEVBQjBLMEFDc2JBd0Fxc1FBSFFyY3dCQ0FJRWdjRENpcXhBQWRDdHpRQ0tBWVpCUU1LS3JFQUNrSzhERUFJUUFUQUFBTUFDeXF4QUExQ3ZBQkFBRUFBUUFBREFBc3F1UUFEQUFCRXNTUUJpRkZZc0VDSVdMa0FBd0JrUkxFb0FZaFJXTGdJQUloWXVRQURBQUJFV1J1eEp3R0lVVmk2Q0lBQUFRUkFpR05VV0xrQUF3QUFSRmxaV1ZsWnR6SUNJZ1lVQlFNT0tyZ0IvNFd3QkkyeEFnQkVzd1ZrQmdCRVJBQUFBQUFBQUFFQUFBQUEifSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz0iQUFFQUFBQU9BSUFBQXdCZ1JrWlVUV01PNVNVQUFVSVVBQUFBSEVkRVJVWUNYZ0FrQUFGQjdBQUFBQ2hQVXk4eXZsbVJsZ0FBQVdnQUFBQmdZMjFoY05NcnFlUUFBQVl3QUFBRHhtTjJkQ0FBSWdLSUFBQUorQUFBQUFSbllYTncvLzhBQXdBQlFlUUFBQUFJWjJ4NVp1NDJoUjhBQUE1Y0FBRHRUR2hsWVdUOGk1QVRBQUFBN0FBQUFEWm9hR1ZoQ0FFRUJRQUFBU1FBQUFBa2FHMTBlRDZBTWdBQUFBSElBQUFFWm14dlkyRzNqdk1hQUFBSi9BQUFCR0J0WVhod0FuWUFjd0FBQVVnQUFBQWdibUZ0Wlhhcis2Z0FBUHVvQUFBM0FuQnZjM1Q0OFBtS0FBRXlyQUFBRHpjQUFRQUFBQUlBQUtrNkdNVmZEenoxQUFzRUFBQUFBQURNdGlXTEFBQUFBTXkySllzQUFBQUFCQUFFQUFBQUFBZ0FBZ0FBQUFBQUFBQUJBQUFFQUFBQUFBQUVBQUFBQUFBRUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUJBQUFDTHdCd0FBVUFBQUFBQUFJQUFBQUJBQUVBQUFCQUFBQUFBQUFBQUFRRUFBSDBBQVVBQ0FLWkFzd0FBQUNQQXBrQ3pBQUFBZXNBTXdFSkFBQUNBQVVEQUFBQUFBQUFnQUFDcjFBQVlFb0FBQUFBQUFBQUFGQm1SV1FBd0FBZyt3SUVBQUFBQUFBRUFBQUFZQUFBbndBQUFBQURBQVFBQUFBQUlBQUJCQUFBZ0FRQUFBQUVBQUFBQkFBQUFBRUFBSUFBQUFBQUFBQUFBQUVBQVFBQWdBQUFBSUFBZ0FDQUFRQUFBQUFBQUlBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQWdBQ0FBQUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFJQUFBQUFBQUlBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQUFBQUFBZ0FBQUFRQUFBQUNBQUlBQUFBR0FBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQ0FBSUFBQUFDQUFBQUFBQUFBQUFBQUFBQ0FBQUFBZ0FBQUFJQUFBQUFBQUFBQUFBRUFBWUFBZ0FBQUFJQUFBQUVBQUFBQUFBQ0FBSUFCZ0FDQUFJQUFBQUNBQUFBQWdBQ0FBQUFBZ0FFQUFJQUJBQUVBQVlBQUFBQ0FBUUFCQUFFQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFJQUFnQUNBQUlBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQUFBQUFBQUFDQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ0FBSUFBZ0FDQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUlBQWdBQ0FBSUFBZ0FDQUFJQUFnQUNBQUFBQUFBQUFBSUFBQUFBQUFBQUFnQUFBQUlBQWdBQ0FBQUFBZ0FBQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUFBQWdBQUFBSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSUFBZ0FDQUFJQUFnQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFHQUFJQUFnQUNBQUlBQmdBR0FBSUFBZ0FHQUFJQUJBQUNBQUlBQmdBQ0FBWUFBZ0FBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDQUFJQUFBQUFBQUFBQUFBQ0FBSUFBQUFBQUFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFJQUFBQUFBQUlBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDQUFBQUFBQUNBQUlBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFCQUFFQUFJQUFnQUFBQUlBQWdBRUFBQUFBQUFFQUFJQUFBQUFBQUFBQUFBQ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0FBQUFBQUJBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQUFBSUFBZ0FBQUFBQUFBQUFBQUFBQUF3QUFBQU1BQUFBY0FBRUFBQUFBQWJ3QUF3QUJBQUFBSEFBRUFhQUFBQUJrQUVBQUJRQWtBSDhCZndHU0FzY0N5d0xkQTNvRGZnT0tBNHdEb1FQT0JGOGdGU0FhSUI0Z0lpQW1JREFnT2lCRUlLd2dyeUVXSVNJaGt5SUNJZ1lpRHlJUklob2lIaUlySWtnaVlDSmxKYklsdGlXOEpjQWx5aVlHSm1BbVl5Wm1KbXJ4QWZqLyt3TC8vd0FBQUNBQW9BR1NBc1lDeVFMWEEzb0RmZ09FQTR3RGpnT2pCQUFnRXlBWUlCd2dJQ0FtSURBZ09TQkVJS3dncnlFV0lTSWhrQ0lDSWdZaUR5SVJJaG9pSGlJcklrZ2lZQ0prSmJJbHRpVzhKY0FseWlZRkptQW1ZeVpsSm1yeEFQai8rd0gvLy8vai84UC9zZjUrL24zK2N2M1cvZFA5enYzTi9jejl5LzJhNGVmaDVlSGs0ZVBoNE9IWDRjL2h4dUZmNFYzZzkrRHM0SC9nRWVBTzRBYmdCZC85My9yZjd0L1MzN3ZmdU54czNHbmNaTnhoM0ZqY0h0dkYyOFBid3R1L0VTb0pMUWNzQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWUNDZ0FBQUFBQkFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUNBQUFBQUFBQUFBSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQUFBd0FFQUFVQUJnQUhBQWdBQ1FBS0FBc0FEQUFOQUE0QUR3QVFBQkVBRWdBVEFCUUFGUUFXQUJjQUdBQVpBQm9BR3dBY0FCMEFIZ0FmQUNBQUlRQWlBQ01BSkFBbEFDWUFKd0FvQUNrQUtnQXJBQ3dBTFFBdUFDOEFNQUF4QURJQU13QTBBRFVBTmdBM0FEZ0FPUUE2QURzQVBBQTlBRDRBUHdCQUFFRUFRZ0JEQUVRQVJRQkdBRWNBU0FCSkFFb0FTd0JNQUUwQVRnQlBBRkFBVVFCU0FGTUFWQUJWQUZZQVZ3QllBRmtBV2dCYkFGd0FYUUJlQUY4QVlBQmhBR0lBaHdDSUFJb0FqQUNVQUprQW53Q2tBS01BcFFDbkFLWUFxQUNxQUt3QXF3Q3RBSzRBc0FDdkFMRUFzZ0MwQUxZQXRRQzNBTGtBdUFDOUFMd0F2Z0MvQWdNQWN3QmxBR1lBYWdJRkFIa0FvZ0J4QUd3Q0RnQjNBR3NDR3dDSkFKc0NHQUIwQWh3Q0hRQm9BSGdDRXdJV0FoVUJpd0laQUcwQWZRRjBBS2tBdXdDQ0FHUUFid0lYQVVNQ0dnSVVBRzRBZmdJR0FHTUFnd0NHQUpnQkZRRVdBZm9CK3dJQUFnRUIvUUgrQUxvQ0lnRENBVHNDQ2dJTEFnZ0NDUUl0QWk0Q0JBQjZBZjhDQWdJSEFJVUFqUUNFQUk0QWl3Q1FBSkVBa2dDUEFKWUFsd0lzQUpVQW5RQ2VBSndBOUFGRUFVNEFjZ0ZLQVVzQlRBQjdBVThCVFFGRkFBQUFJZ0tJQUFBQU1nQXlBRElBTWdCUUFHd0F1QUVNQVlRQjJBSHFBaHdDVEFLTUFxNEN5QUxhQXV3RExnTjBBNWdEM0FRZUJGZ0VqZ1RPQlFBRlVBV09CYWdGeWdZTUJpb0dhZ2FtQnVvSEtBZGVCNklIMkFmK0NCNElYQWgrQ0tJSXhna0tDU0lKVkFtR0NiWUo0QW9rQ21BS3BBckFDdVFMSGd0UUM2QUx5QXdFRENBTVlBeDhESjRNc0F6S0RQNE5LZzFPRFhnTnFnM1dEZ29PTGc1WURvSU90ZzdXRHdBUElBOU1EM1lQb0EvQ0QvZ1FIQkE4RUdRUWpoQytFT29SSEJGT0VXQVJrQkhBRWR3UjNCSDhFa1lTZ2hMTUV3d1RKaE4rRTVvVUNCUTBGSkFVcGhTNEZUUVZSaFZ3Rlp3VnhoWHdGZ29XTmhaNkZvd1dwQmJHRnZJWFRCZTJHQ1FZb0JqY0dTZ1pjaG5HR2g0YWJCcTRHdlliU0J1QUc3Z2IraHcySEdnY21oek1IUVFkU0IyVUhkQWVEQjVLSHBRZTFCOGtIMjRmcGgvZUlCb2dWQ0NPSUx3aEFpRkdJWW9oMENJaUltb2l0aUw0SXl3amJpT3dJL1FrT2lScUpKb2swaVVHSlZRbGxpWFNKZzRtVENhV0p0WW0vaWMrSjNJbnBpZmVLQlFvVWlpQUtNQXBDQ2xJS1pRcDRDb3dLbndxemlzQ0sxb3JsQ3ZpTEJJc1pDeWdMT290SWkxbUxab3R6QzRNTGtvdWxDN0dMd1F2UWkrTUw4b3dGREJXTUtBdzRqRXVNV1F4b2pIdU1qSXlhREtnTXN3eS9ETThNM3d6cWpQV05CQTBQalI0TkxnMDVqVUdOVUExaERXNE5mQTJQamFFTnJ3MjRqY1NOem8zYWplUU43NDM0RGdLT0RBNFhqaWFPTXc1Q2prNk9ZQTV1RG5tT2h3NlJqcUFPcm82L2p0Q080bzcwandLUEVZOGpqekNQUTQ5UUQyUVBjdytFajVZUHFBKzZEODBQM28veUVBV1FENUFiRUNnUU5KQS9FRXVRWEpCc2tIaVFnNUNUa0tLUXRwREprTm9RNlpENGtRYVJHQkVxRVRrUlN4RmFrV3NSZTVHS2tabVJyQkcra2NXUjBoSGFrZUtSNXhIdGtmUVIrSklBa2dVU0VCSVlraU1TTGhJMEVqeVNReEpPa21BU1pKSnhFbnlTaXBLYWtxZVN2aExPa3Q0UzY1THhrditUQ1JNWUV5Q1RMcE0zazBpVFZoTmlrMjhUZVpPRms0eVRseE9wazdDVHVwUExrOStUN2hRQWxBNlVIaFFybEQwVVM1UlhGR3lVZGhTR0ZKSVVvaFN2bE1DVXk1VGhGT2lVOXBVSGxSS1ZIcFV4RlR3VlI1VlRGV0NWYlpWMkZZS1ZrcFdtbGJRVndwWFBGZUNWNzVZQUZoT1dJWll3bGo0V1NCWmJsbXlXZFphRGxveVdteGFwRnJTV3g1YldsdWlXOFpjQkZ3MFhHcGNnbHkrWE9SZE5GMTJYYWhkN0Y0d1htQmVrbDYwWHVSZkFGOHFYMjVmaWwrK1lBSmdVbUIyWUpoZ3ZtRHNZUmhoU21GMFljQmgvbUk2WW01aXJtTGtZdnhqTUdOaVk2SmoyR1FLWkZaa2ptUzJaT2hsQ21VMlpWSmxmR1dnWmJ4bDZHWXNabHhtZ0dhaVpzaG05bWNpWjFKbmVtZTBaL0JvSUdoaWFLaG80bWtLYVVScGVtbWthZGhxQW1vNmFuSnFwR3J3YXpScmZHdWdhN0pyeEd2V2EvQnNDbXdrYkU1c2VHeWdiTVJzOW0wWWJUNXR3bTMwYmlSdVptNjZid1p2Vkc5NmI2NXY0bkFXY0Vod2tIREljT1J4TG5GV2NacHh6bklZY2x4eW1uTFdjd0J6S0hOU2MzeHo1blFvZEhwMHRIVG9kU0IxWW5Xa2RkWjE3SFpBZG5KMnBnQURBSUFBZ0FPQUJBQUFCd0FYQUI4QUFCTVJLUUVaQVNrQkFUVXBBUjBCT3dFZEFTc0JIUUU3QVFVMUt3RWRBVHNCZ0FHQUFZRCtnUDZBQW9EL0FQOEF3TUNBZ01EQS93QkFRRUJBQWtBQndQNUEva0FDUU1CQVFFQkFRRURBUUVCQUFBQUFBZ0VBQUlBQ2dBUUFBQWNBRXdBQUpUVTdBUjBCS3dFWkFUc0JIUUVyQVIwQkt3RUJBSUNBZ0lEQXdFQkFnSURBUUVCQUFrQUJRTURBZ0lBQUFnQ0FBb0FEQUFRQUFBY0FEd0FBQVRVN0FSMEJLd0VsTlRzQkhRRXJBUUlBZ0lDQWdQNkFnSUNBZ0FOQXdNREF3TURBd0FBQUFBQUNBQUFBZ0FPQUJBQUFOd0EvQUFBVE5Uc0JIUUU3QVQwQk93RWRBVHNCSFFFckFSMEJPd0VkQVNzQkhRRXJBVDBCS3dFZEFTc0JQUUVyQVQwQk93RTlBU3NCUFFFN0FRRTFLd0VkQVRzQmdJQ0FRRUNBZ0VCQVFFQkFRRUJBZ0lCQVFJQ0FRRUJBUUVCQVFFQUJnRUJBUUVBRHdFQkFRRUJBUUVCQVFNREFRRUJBUUVCQVFFQkFRRUJBd01CQVFQN0F3TURBQUFBQUFBTUFBQUNBQTRBRUFBQTNBRDhBUndBQUFUVTdBUjBCT3dFZEFTc0JIUUU3QVIwQk93RWRBU3NCSFFFckFSMEJLd0U5QVNzQlBRRTdBVDBCS3dFOUFTc0JQUUU3QVQwQk93RVZOU3NCSFFFN0FRVTFLd0VkQVRzQkFZQkFRSUNBZ0lDQWdFQkFRRUNBZ0VCQXdNREF3SUNBUUVCQVFJQ0FRRUJBUUFFQVFFQkFRQVBBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBd0VCQVFNQkFRRUFBQUFVQUFBQ0FBNEFFQUFBUEFCY0FUd0JmQUdjQUFBRTFPd0VkQVNzQkhRRXJBVDBCT3dFWE5Tc0JIUUU3QVJFMU93RWRBU3NCSFFFckFSMEJLd0VkQVNzQkhRRXJBUjBCS3dFZEFTc0JQUUU3QVQwQk93RTlBVHNCUFFFN0FUMEJPd0U5QVRzQkpUVTdBUjBCS3dFZEFTc0JQUUU3QVJjMUt3RWRBVHNCQW9DQWdFQkFnSUJBUUlCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRUDJBZ0lCQVFJQ0FRRUNBUUVCQVFBSEFRSUNBUUVDQWdFQkFRRUFDd0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQWdJQkFRSUNBUUVCQVFBQUFBQU1BQUFDQUE0QUVBQUF6QURzQVJ3QUFFelU3QVIwQk93RWRBU3NCSFFFN0FSMEJPd0U5QVRzQkhRRXJBUjBCT3dFZEFTa0JQUUVyQVQwQk93RTlBU3NCUFFFN0FRVTFLd0VkQVRzQkZUVXJBUjBCT3dFOUFTc0JnTURBUUVCQVFFQkFRRUJBUUVCQVFFRCtnUDZBUUVCQVFFQkFRRUFCQUVCQVFFQkFRSUNBUUVBRHdFQkFRSUNBUUVCQVFFQkFRRUJBUUVCQVFFQ0FnRUJBZ0lDQWdJQ0F3RUNBZ0VCQUFBRUJBQUtBQWdBRUFBQUhBQUFCTlRzQkhRRXJBUUVBZ0lDQWdBTkF3TURBQUFBQUFBRUJBQUNBQXdBRUFBQW5BQUFCTlRzQkhRRXJBUjBCS3dFZEFUc0JIUUU3QVIwQkt3RTlBU3NCUFFFckFUMEJPd0U5QVRzQkFnQ0FnRUJBUUVCQVFFQkFnSUJBUUVCQVFFQkFRQVBBUUVCQVFFREF3RUJBUUVCQVFFQkF3TUJBUUFBQUFBQUJBSUFBZ0FLQUJBQUFKd0FBRXpVN0FSMEJPd0VkQVRzQkhRRXJBUjBCS3dFZEFTc0JQUUU3QVQwQk93RTlBU3NCUFFFckFZQ0FnRUJBUUVCQVFFQkFnSUJBUUVCQVFFQkFRQVBBUUVCQVFFREF3RUJBUUVCQVFFQkF3TUJBUUFBQkFBQUJBQU9BQTRBQU53QUFFelU3QVIwQk93RTlBVHNCSFFFckFSMEJPd0VkQVNzQkhRRTdBUjBCS3dFOUFTc0JIUUVyQVQwQk93RTlBU3NCUFFFN0FUMEJLd0dBZ0lCQVFJQ0FRRUNBZ0lDQVFFQ0FnRUJBZ0lCQVFJQ0FnSUJBUUFOQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBRUFnQUVBQTRBRGdBQVhBQUFCTlRzQkhRRTdBUjBCS3dFZEFTc0JQUUVyQVQwQk93RUJnSUNBZ0lDQWdJQ0FnSUNBZ0FNQWdJQ0FRRUNBZ0lDQVFFQUFBQUFBQVFDQUFBQUNBQUdBQUE4QUFBRTFPd0VkQVNzQkhRRXJBVDBCT3dFQkFJQ0FRRUNBZ0VCQUFRQ0FnSUJBUUVCQUFBQUFBQUVBZ0FJQUE0QUNnQUFIQUFBVE5Ta0JIUUVwQVlBQmdBR0Evb0QrZ0FKQVFFQkFBQUVCQUFDQUFnQUJnQUFIQUFBQk5Uc0JIUUVyQVFFQWdJQ0FnQUVBZ0lDQUFBQUFBQUVBQUFDQUE0QUVBQUEzQUFBQk5Uc0JIUUVyQVIwQkt3RWRBU3NCSFFFckFSMEJLd0VkQVNzQkhRRXJBVDBCT3dFOUFUc0JQUUU3QVQwQk93RTlBVHNCUFFFN0FRTUFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQVBBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQUFBSUFBQUNBQTRBRUFBQW5BRGNBQUFFMU93RWRBVHNCSFFFN0FSMEJLd0VkQVNzQkhRRXJBVDBCS3dFOUFTc0JQUUU3QVQwQk93RUZOU3NCR1FFN0FSMEJPd0VaQVNzQkFRREF3RUJBUUVCQVFFQkF3TUJBUUVCQVFFQkFRQUVBZ0lCQVFJQ0FRRUFEd0VCQVFFQkF3TUJBUUVCQVFFQkFRTURBUUVCQVFQOEEvd0JBUUFFQUFRQUFBQUFBQVFDQUFJQURnQVFBQUJjQUFBRTFPd0VaQVRzQkhRRXBBVDBCT3dFWkFTc0JQUUU3QVFHQWdJQ0FnUDZBL29DQWdFQkFRRUFEd0VEK2dQNkFRRUJBUUFFQUFRQkFRQUFBQVFBQUFJQURnQVFBQURjQUFCTTFLUUVkQVRzQkhRRXJBUjBCS3dFZEFTc0JIUUVwQVIwQktRRTlBVHNCUFFFN0FUMEJPd0U5QVRzQlBRRXJBUjBCS3dFOUFUc0JnQUZBQVVCQVFFQkFRRUNBZ0FFQUFRRCtRUDVBUUVCQVFJQ0FRRURBd0lDQVFFQUR3RUJBUUlDQVFFQkFRRUJBUUVDQWdFQkFRRUJBUUVCQVFFQkFRQUFBQUFFQUFBQ0FBNEFFQUFBM0FBQVROU2tCSFFFckFSMEJLd0VkQVRzQkhRRTdBUjBCS3dFZEFTa0JQUUVyQVQwQk93RWRBVHNCUFFFckFUMEJPd0U5QVRzQlBRRXJBWUFCZ0FHQVFFQkFRRUJBUUVCQVFQN0Evc0JBUUlDQXdNREF3RUJBUUVEQXdBUEFRRUJBUUVCQVFFQkFnSUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFBQUlBQUFDQUE0QUVBQUFmQUNzQUFBRTFPd0VaQVRzQkhRRXJBUjBCS3dFOUFTa0JQUUU3QVQwQk93RTlBVHNCRXpVckFSMEJLd0VkQVRzQkFZREF3RUJBUUVDQWdQOEEvd0JBUUVCQVFFQ0FRRUJBUUlDQUE4QkEvd0QvQUVCQWdJQ0FnSUNBUUVCQVFQOEFnRUJBUUVBQUFBQUFBUUFBQUlBRGdBUUFBQ2NBQUJFMUtRRWRBU2tCSFFFcEFSMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFUc0JIUUU3QVQwQktRRUJnQUdBL3dEL0FBRUFBUUJBUUVCQS9zRCt3RUJBZ0lEQXdQN0Evc0FEUU1CQVFFQkFRRURBd0VCQVFFQkFRRUJBd01BQUFBQUFBZ0FBQUlBRGdBUUFBQ2NBTHdBQUFUVXBBUjBCS3dFZEFTc0JIUUVwQVIwQk93RWRBU3NCSFFFcEFUMEJLd0VaQVRzQlBRRTdBUUUxS3dFZEFUc0JBUUFCQUFFQXdNQkFRQUVBQVFCQVFFQkEvc0Qrd0VCQVFFQkFRQUdBd01EQXdBUEFRRUJBUUVCQVFFQkFnSUJBUUVCQUFRQUJBRUJBL2dDQWdJQUFBQUFCQUFBQWdBT0FCQUFBSndBQUVUVXBBUjBCS3dFZEFTc0JIUUVyQVIwQkt3RTlBVHNCUFFFN0FUMEJPd0U5QVNzQkhRRXJBUUhBQWNCQVFFQkFRRUNBZ0VCQVFFQkFRTURBZ0lBRGdJQ0FnRUJBUUVEQXdNREFRRUJBUUVCQVFFQUFBQUFBQXdBQUFJQURnQVFBQUNjQU13QS9BQUFUTlNrQkhRRTdBUjBCS3dFZEFUc0JIUUVyQVIwQktRRTlBU3NCUFFFN0FUMEJLd0U5QVRzQkJUVXJBUjBCT3dFZEFUc0JCVFVyQVIwQktRRTlBU3NCZ0FFQUFRQkFRRUJBZ0lCQVFQN0Evc0JBUUVCQVFFQkFRQUlBd01CQVFJQ0Evd0NBZ0FFQUFRQ0FnQVBBUUVCQWdJQkFRSUNBUUVCQVFJQ0FRRUNBZ0lDQVFFQkFRTUJBZ0lCQVFBQUFBQUlBQUFDQUE0QUVBQUFuQUM4QUFCTTFLUUVkQVRzQkdRRXJBUjBCS3dFZEFTa0JQUUU3QVQwQk93RTlBU2tCUFFFckFUMEJPd0VGTlNzQkhRRTdBWUFCUUFGQVFFQkFRRUJBL3dEL0FNREFRRUQvQVA4QVFFQkFRQUlBd01EQXdBUEFRRUJBL3dEL0FFQkFRRUJBUUVCQVFFQkFRSUNBZ0lDQWdBQUNBUUFCQUFJQUE0QUFCd0FQQUFBQk5Uc0JIUUVyQVJFMU93RWRBU3NCQVFDQWdJQ0FnSUNBZ0FHQWdJQ0FBZ0NBZ0lBQUFnQ0FBSUFDQUFPQUFBOEFGd0FBQVRVN0FSMEJLd0VkQVNzQlBRRTdBUkUxT3dFZEFTc0JBUUNBZ0VCQWdJQkFRSUNBZ0lBQmdJQ0FnRUJBUUVBQ0FJQ0FnQUFCQUlBQWdBTUFCQUFBTndBQUFUVTdBUjBCS3dFZEFTc0JIUUVyQVIwQk93RWRBVHNCSFFFN0FSMEJLd0U5QVNzQlBRRXJBVDBCS3dFOUFUc0JQUUU3QVQwQk93RUNBSUNBUUVCQVFFQkFRRUJBUUVCQWdJQkFRRUJBUUVCQVFFQkFRRUFEd0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFBQUFBQUNBQUFCZ0FPQUF3QUFCd0FQQUFBUk5Ta0JIUUVwQVJFMUtRRWRBU2tCQWNBQndQNUEva0FCd0FIQS9rRCtRQUhBUUVCQUFVQkFRRUFBQUFBQkFJQUFnQU1BQkFBQU53QUFFelU3QVIwQk93RWRBVHNCSFFFN0FSMEJLd0VkQVNzQkhRRXJBUjBCS3dFOUFUc0JQUUU3QVQwQk93RTlBU3NCUFFFckFUMEJLd0dBZ0lCQVFFQkFRRUJBUUVCQVFFQ0FnRUJBUUVCQVFFQkFRRUJBUUFQQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBSUFBQUNBQTRBRUFBQUhBQzhBQUNVMU93RWRBU3NCQXpVcEFSMEJPd0VkQVNzQkhRRXJBUjBCS3dFOUFUc0JQUUU3QVQwQkt3RWRBU3NCUFFFN0FRRUF3TURBd0lBQlFBRkFRRUJBUUVCQXdNQ0FnRUJBd01DQWdFQkF3RUJBUUFOQVFFQkFnSUJBUUVCQVFFQkFRRUJBUUVDQWdBQUFBQUlBQUFDQUE0QUVBQUFuQUM4QUFCTTFLUUVkQVRzQkdRRXBBVDBCT3dFZEFUc0JQUUVwQVJrQktRRWRBU2tCUFFFckFSa0JPd0VCTlNzQkhRRTdBWUFCUUFGQVFFRCt3UDdBd01CQVFQN0Evc0FCUUFGQS9zRCt3RUJBUUVBQmdFQkFRRUFEd0VCQVFQOEEvd0RBd0lDQXdNRCt3UDdBUUVCQVFBRkFBVUQrd0VCQVFBQUFBQUFDQUFBQWdBT0FCQUFBSHdBdkFBQUJOVHNCSFFFN0FSMEJPd0VaQVNzQlBRRXJBUjBCS3dFWkFUc0JQUUU3QVFVMUt3RWRBU3NCSFFFN0FUMEJLd0VCQU1EQVFFQkFRSUNBd01DQWdFQkFRRUFCQUVCQVFFREF3RUJBQThCQVFFQkFRUDdBL3NDQWdJQ0FBVUFCUUVCQVFFQkFRSUNBZ0lBQUFBQUFBd0FBQUlBRGdBUUFBQmNBSHdBbkFBQVpBU2tCSFFFN0FSMEJLd0VkQVRzQkhRRXJBUjBCS1FFQk5Tc0JIUUU3QVJFMUt3RWRBVHNCQVlBQmdFQkFRRUJBUUVCQS9vRCtnQUtBd01EQXdNREF3TUFDUUFIQVFFQ0FnRUJBZ0lCQVFBS0FnSUNBL3dDQWdJQUFBUUFBQUlBRGdBUUFBRGNBQUFFMUtRRWRBVHNCSFFFckFUMEJLd0VkQVNzQkhRRTdBUjBCT3dFOUFUc0JIUUVyQVIwQktRRTlBU3NCUFFFckFUMEJPd0U5QVRzQkFRQUJBQUVBUUVDQWdJQ0FRRUJBUUlDQWdJQkFRUDhBL3dCQVFFQkFRRUJBUUFQQVFFQkFRRUJBUUVCQXdNQkFRRUJBUUVCQVFFQkFRRURBd0VCQUFBQUFBQUlBQUFDQUE0QUVBQUFYQUNjQUFCa0JLUUVkQVRzQkhRRTdBUjBCS3dFZEFTc0JIUUVwQVFFMUt3RVpBVHNCUFFFN0FUMEJLd0VCUUFGQVFFQkFRRUJBUUVEK3dQN0FBZ0NBZ0lDQVFFQkFRQUpBQWNCQVFFQkF3TUJBUUVCQUFzQkEvc0Qrd0VCQXdNQUFBQUVBQUFDQUE0QUVBQUFYQUFBWkFTa0JIUUVwQVIwQktRRWRBU2tCSFFFcEFSMEJLUUVCd0FIQS9zRCt3QUVBQVFEL0FQOEFBVUFCUVA1QS9rQUNRQUhBUUVDQWdFQkFnSUJBUUFBQkFBQUFnQU9BQkFBQUV3QUFHUUVwQVIwQktRRWRBU2tCSFFFcEFSMEJLd0VCd0FIQS9zRCt3QUVBQVFEL0FQOEFnSUFDUUFIQVFFQ0FnRUJBd01BQUFRQUFBSUFEZ0FRQUFDOEFBQUUxS1FFZEFTa0JIUUVyQVIwQk93RWRBVHNCUFFFckFUMEJPd0VaQVNrQlBRRXJBVDBCS3dFOUFUc0JQUUU3QVFFQUFVQUJRUDhBL3dCQVFFQkFnSUJBUU1EQS9zRCt3RUJBUUVCQVFFQkFBOEJBUUVCQVFNREFRRUNBZ0VCQS93RC9BRUJBUUVEQXdFQkFBQUFBQUFFQUFBQ0FBNEFFQUFBWEFBQVpBVHNCSFFFN0FUMEJPd0VaQVNzQlBRRXJBUjBCS3dHQWdNREFnSUNBZ01EQWdJQUNRQUhBd01EQXdQNUEva0RBd01EQUFBQUFBUUNBQUlBRGdBUUFBQmNBQUJNMUtRRWRBU3NCR1FFN0FSMEJLUUU5QVRzQkdRRXJBWUFCZ0FHQWdJQ0FnUDZBL29DQWdJQ0FBOEJBUUVEK3dQN0FRRUJBUUFGQUFVQUFBUUFBQUlBRGdBUUFBQmNBQUFFUk93RVpBU3NCSFFFcEFUMEJLd0U5QVRzQkhRRTdBUUtBZ0lCQVFQN0Evc0JBUUlDQXdNQUNnQUdBL29EK2dFQkFRRUJBUUVCQUFBQUFBUUFBQUlBRGdBUUFBRHNBQUJrQk93RWRBVHNCUFFFN0FUMEJPd0U5QVRzQkhRRXJBUjBCS3dFZEFTc0JIUUU3QVIwQk93RWRBVHNCSFFFckFUMEJLd0U5QVNzQkhRRXJBWUNBUUVCQVFFQkFnSUJBUUVCQVFFQkFRRUJBUUVEQXdFQkFRRUNBZ0FKQUFjREF3RUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFJQ0FBQUVBZ0FDQUE0QUVBQUFMQUFBVEVUc0JHUUVwQVIwQktRR0FnSUFCQUFFQS9vRCtnQUpBQWNEK2dQNkFRRUFBQUFFQUFBQ0FBNEFFQUFBbkFBQVpBVHNCSFFFN0FSMEJPd0U5QVRzQlBRRTdBUmtCS3dFOUFTc0JIUUVyQVQwQkt3RWRBU3NCZ0lCQVFFQkFRRUNBZ0lDQVFFQkFRRUJBZ0lBQ1FBSEFRRUJBUUVCQVFFRCtRUDVBd01CQVFFQkF3TUFBQUFBQkFBQUFnQU9BQkFBQUp3QUFHUUU3QVIwQk93RWRBVHNCSFFFN0FUMEJPd0VaQVNzQlBRRXJBVDBCS3dFOUFTc0JIUUVyQVlDQVFFQkFRRUJBZ0lDQWdFQkFRRUJBUUlDQUFrQUJ3RUJBUUVCQVFNREEva0QrUUVCQVFFQkFRTURBQUFBQUFnQUFBSUFEZ0FRQUFCY0FId0FBRXpVcEFSMEJPd0VaQVNzQkhRRXBBVDBCS3dFWkFUc0JBUkVyQVJrQk93R0FBVUFCUUVCQVFFRCt3UDdBUUVCQVFBSUF3TURBd0FQQVFFQkEvc0Qrd0VCQVFFQUJRQUZBL3NBQlFQN0Evc0FBQWdBQUFJQURnQVFBQUJNQUd3QUFHUUVwQVIwQk93RWRBU3NCSFFFcEFSMEJLd0VCTlNzQkhRRTdBUUdBQVlCQVFFQkEvd0QvQUlDQUFvREF3TURBQWtBQndFQkF3TUJBUUlDQUFrREF3TUFBQUFBQUFnQUFBSUFEZ0FRQUFDTUFNd0FBRXpVcEFSMEJPd0VaQVNzQkhRRTdBUjBCS3dFOUFTc0JIUUVwQVQwQkt3RVpBVHNCQlRVckFSa0JPd0U5QVNzQlBRRTdBWUFCUUFGQVFFQkFRRUJBUUVCQVFQOEEvd0JBUUVCQUFnREF3SUNBUUVDQWdBUEFRRUJBL3dEL0FFQkFRRUJBUUVCQVFFQUJRQUZBd01EK3dQN0FRRUJBUUFBQUFBSUFBQUNBQTRBRUFBQWpBQzhBQUJrQktRRWRBVHNCSFFFckFSMEJPd0VkQVRzQkhRRXJBVDBCS3dFOUFTc0JIUUVyQVFFMUt3RWRBVHNCUFFFN0FRR0FBWUJBUUlDQVFFQkFRTURBUUVCQVFJQ0FBb0RBd0lDQVFFQUNRQUhBUUVEQXdFQkFRRUJBUUVCQVFFQ0FnQUtBZ01EQVFFQUFBQUVBQUFDQUE0QUVBQUEzQUFBVE5Ta0JIUUU3QVIwQkt3RTlBU3NCSFFFcEFSMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFUc0JIUUU3QVQwQktRRTlBU3NCUFFFN0FZQUJBQUVBUUVDQWdJQ0FBUUFCQUVCQVFFRCt3UDdBUUVDQWdNREEvd0QvQUVCQVFFQUR3RUJBUUVCQVFFQ0FnRUJBZ0lCQVFFQkFRRUJBUUlDQVFFQ0FnQUFCQUlBQWdBT0FCQUFBRHdBQUV6VXBBUjBCS3dFWkFTc0JHUUVyQVlBQmdBR0FnSUNBZ0lDQUE4QkFRRUQrZ1A2QUFZQUJnQUFBQUFFQUFBQ0FBNEFFQUFBWEFBQVpBVHNCR1FFN0FSa0JPd0VaQVNzQkhRRXBBVDBCS3dHQWdNREFnSUJBUVA3QS9zQkFRQUtBQVlEK2dQNkFBWUFCZ1A2QS9vQkFRRUJBQUFFQUFBQ0FBNEFFQUFBdkFBQVpBVHNCSFFFN0FSMEJPd0U5QVRzQlBRRTdBUmtCS3dFZEFTc0JIUUVyQVIwQkt3RTlBU3NCUFFFckFUMEJLd0dBZ0VCQVFFQkFRSUNBUUVCQVFFQkFRRUJBUUVCQVFFQURBQUVBd01CQVFFQkF3TUQvQVA4QVFFQkFRRUJBUUVCQVFFQkFBQUFBQVFBQUFJQURnQVFBQUNjQUFCa0JPd0VkQVRzQlBRRTdBUjBCT3dFOUFUc0JHUUVyQVQwQkt3RTlBU3NCSFFFckFSMEJLd0dBZ0VCQVFFQkFRSUNBZ0lCQVFFQkFRRUNBZ0FKQUFjREF3RUJBUUVEQXdQNUEva0JBUUVCQVFFQkFRQUFBQUFFQUFBQ0FBNEFFQUFCSEFBQVJOVHNCSFFFN0FSMEJPd0U5QVRzQlBRRTdBUjBCS3dFZEFTc0JIUUU3QVIwQk93RWRBU3NCUFFFckFUMEJLd0VkQVNzQkhRRXJBVDBCT3dFOUFUc0JQUUVyQVQwQkt3R0FnRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQ0FnRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQURnSUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFnSUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFBQUFCQUlBQWdBT0FCQUFBSHdBQUV6VTdBUjBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBU3NCUFFFckFUMEJLd0dBZ0lDQWdJQ0FRRUJBUUlDQVFFQkFRQU5Bd01EQXdNREF3RUJBd01EQXdFQkFBQUVBQUFDQUE0QUVBQUF2QUFBUk5Ta0JIUUVyQVIwQkt3RWRBU3NCSFFFckFSMEJLUUVkQVNrQlBRRTdBVDBCT3dFOUFUc0JQUUU3QVQwQktRRUJ3QUhBUUVCQVFFQkFRRUFCQUFFQS9rRCtRRUJBUUVCQVFFQkEvd0QvQUFQQVFJQ0FRRUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFRRUFBQUFFQkFBQ0FBd0FFQUFBUEFBQUJFU2tCSFFFckFSa0JPd0VkQVNrQkFRQUJBQUVBZ0lDQWdQOEEvd0FDUUFIQVFFRCt3UDdBUUVBQUFRQUFBSUFEZ0FRQUFEY0FBQkUxT3dFZEFUc0JIUUU3QVIwQk93RWRBVHNCSFFFN0FSMEJPd0VkQVNzQlBRRXJBVDBCS3dFOUFTc0JQUUVyQVQwQkt3RTlBU3NCUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFQQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUJBSUFBZ0FLQUJBQUFEd0FBRXpVcEFSa0JLUUU5QVRzQkdRRXJBWUFCQUFFQS93RC9BSUNBZ0lBRHdFRCtRUDVBUUVBQlFBRkFBQUVBZ0FNQUF3QUVBQUFYQUFBQk5Uc0JIUUU3QVIwQkt3RTlBU3NCSFFFckFUMEJPd0VCQU1EQVFFQ0FnRUJBZ0lCQVFBUEFRRUJBUUVCQVFFQkFRRUFBQUFBQUFRQUFBQUFEZ0FDQUFBY0FBRDBCS1FFZEFTa0JBY0FCd1A1QS9rQkFRRUJBQUFBQUFRR0FBd0FDZ0FRQUFBOEFBQUUxT3dFZEFUc0JIUUVyQVQwQkt3RUJnRUJBUUVCQVFFQkFBOEJBUUVCQVFFQkFBQUFBQUFJQUFBQ0FBNEFEQUFBYkFDTUFBQk0xS1FFZEFUc0JHUUVwQVQwQkt3RTlBVHNCUFFFcEFUMEJLUUVCTlNzQkhRRTdBWUFCUUFGQVFFRCtnUDZBUUVCQVFBRUFBUUQvQVA4QUFnREF3TURBQXNCQVFFRC9BUDhBUUVCQVFFQkFRRUQrd0VCQVFBQUFBZ0FBQUlBRGdBUUFBQmNBSHdBQUdRRTdBUjBCS1FFZEFUc0JIUUVyQVIwQktRRTlBU3NCSlRVckFSMEJPd0dBZ0FFQUFRQkFRRUJBL3NEK3dFQkFBb0RBd01EQUFvQUJnSUNBUUVEQXdFQkFRRURBd01EQUFBRUFBQUNBQTRBREFBQVhBQUFUTlNrQkhRRXBBUjBCS1FFZEFTa0JQUUVyQVQwQk93R0FBWUFCZ1A3QS9zQUJRQUZBL29EK2dFQkFRRUFDd0VCQVFNREFRRUJBUU1EQUFBSUFBQUNBQTRBRUFBQVRBQnNBQUFFMU93RVpBU2tCUFFFckFUMEJPd0U5QVNrQkVUVXJBUjBCT3dFQ2dJQ0Evb0QrZ0VCQVFFQUJBQUVBd01EQXdBT0FnUDVBL2tCQVFNREFRRUQrd01EQXdBQUFBQUlBQUFDQUE0QURBQUFiQUNNQUFCTTFLUUVkQVRzQkhRRXBBUjBCS1FFZEFTa0JQUUVyQVQwQk93RUZOU3NCSFFFN0FZQUJRQUZBUUVEK3dQN0FBUUFCQVA3QS9zQkFRRUJBQWdEQXdNREFBc0JBUUVDQWdFQkFRRUJBUU1EQVFFQkFRQUFCQUlBQWdBT0FCQUFBSHdBQUFUVTdBUjBCS3dFZEFUc0JIUUVyQVJrQkt3RVpBU3NCUFFFN0FUMEJPd0VDQU1EQWdJQ0FnSUNBZ0lDQWdJQ0FRRUFEd0VCQVFFQkFRRUQvQVA4QUFRQUJBRUJBUUVBQUFBQUFBZ0FBQUFBRGdBTUFBQnNBSXdBQUV6VXBBUmtCS3dFZEFTa0JQUUVwQVQwQktRRTlBU3NCUFFFN0FRVTFLd0VkQVRzQmdBR0FBWUJBUVA3QS9zQUJBQUVBL3dEL0FFQkFRRUFDQU1EQXdNQUN3RUQrd1A3QVFFQkFRRUJBUUVDQWdJQ0FnSUFBQUFBQkFBQUFnQU9BQkFBQUZ3QUFHUUU3QVIwQktRRWRBVHNCR1FFckFSa0JLd0VaQVNzQmdJQUJBQUVBUUVDQWdNREFnSUFDUUFIQWdJQkFRUDhBL3dBQkFBRUEvd0QvQUFBQ0FJQUFnQU9BQkFBQUV3QWJBQUFCTlRzQkdRRTdBUjBCS1FFOUFUc0JQUUVyQVJNMU93RWRBU3NCQVFEQXdJQ0Evb0QrZ0lDQVFFQ0FnSUNBZ0FMQVFQOEEvd0JBUUVCQXdNQUJRRUJBUUFBQUFBQUNBSUFBQUFNQUJBQUFFd0FiQUFBQk5Uc0JHUUVyQVIwQktRRTlBVHNCR1FFckFSTTFPd0VkQVNzQkFZREF3RUJBL3dEL0FNREFRRUNBZ0lDQWdBTEFRUDdBL3NCQVFFQkFBUUFCQUFGQVFFQkFBQUFCQUFBQWdBT0FCQUFBS3dBQUdRRTdBUjBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBVHNCSFFFN0FSMEJLd0U5QVNzQlBRRXJBUjBCS3dHQWdJQ0F3TUJBUUVCQVFFQkFRTURBUUVCQVFJQ0FBa0FCd01EQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUlDQUFBRUFnQUNBQTRBRUFBQVRBQUFCTlRzQkdRRTdBUjBCS1FFOUFUc0JHUUVyQVFFQXdNQ0FnUDZBL29DQWdFQkFBOEJBL29EK2dFQkFRRUFCUUFGQUFBQUJBQUFBZ0FPQUF3QUFHd0FBR1FFcEFSMEJPd0VaQVNzQkdRRXJBUmtCS3dFWkFTc0JHUUVyQVFHQUFZQkFRSUNBUUVDQWdFQkFRRUFCd0FGQVFFRC9BUDhBQVFBQkFQOEEvd0FCQUFFQS93RC9BQUFCQUFBQWdBT0FBd0FBRXdBQUdRRXBBUjBCT3dFWkFTc0JHUUVyQVJrQkt3RUJnQUdBUUVDQWdNREFnSUFCd0FGQVFFRC9BUDhBQVFBQkFQOEEvd0FBQWdBQUFJQURnQU1BQUJjQUh3QUFFelVwQVIwQk93RWRBU3NCSFFFcEFUMEJLd0U5QVRzQkJUVXJBUjBCT3dHQUFVQUJRRUJBUUVEK3dQN0FRRUJBUUFJQXdNREF3QUxBUUVCQXdNQkFRRUJBd01EQXdNREFBQUlBQUFBQUE0QURBQUFUQUJzQUFCa0JLUUVkQVRzQkhRRXJBUjBCS1FFZEFTc0JBVFVyQVIwQk93RUJnQUdBUUVCQVFQOEEvd0NBZ0FLQXdNREF3QUdBQVlCQVFJQ0FRRUNBZ0FJQWdJQ0FBQUFBQUFJQUFBQUFBNEFEQUFBVEFCc0FBQk0xS1FFWkFTc0JQUUVwQVQwQkt3RTlBVHNCQlRVckFSMEJPd0dBQVlBQmdJQ0Evd0QvQUVCQVFFQUNBTURBd01BQ3dFRCtnUDZBZ0lCQVFJQ0FnSUNBZ0FBQUFBRUFnQUNBQTRBREFBQVhBQUFURVRzQkhRRTdBVDBCT3dFZEFTc0JIUUVyQVIwQkt3R0FnSUJBUU1EQXdNQkFRSUNBQWNBQlFFQkFRRUJBUUVCQXdNQUFBQUFBQVFBQUFJQURnQU1BQUNjQUFCTTFLUUVkQVNrQkhRRXBBUjBCT3dFZEFTc0JIUUVwQVQwQktRRTlBU2tCUFFFckFUMEJPd0dBQVVBQlFQOEEvd0FCQUFFQVFFQkFRUDZBL29BQlFBRkEvd0QvQUVCQVFFQUN3RUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQVFDQUFJQURnQVFBQUJjQUFBRTFPd0VkQVRzQkhRRXJBUmtCS3dFWkFTc0JQUUU3QVFHQWdJQ0FnSUNBZ0lDQWdJQ0FBNENBZ0lCQVFQOEEvd0FCQUFFQVFFQUFBQUFBQVFBQUFJQURnQU1BQUJNQUFCa0JPd0VaQVRzQkdRRTdBUmtCS1FFOUFTc0JnSURBd0lDQS9vRCtnRUJBQWdBQkFQOEEvd0FCQUFFQS9zRCt3RUJBQUFFQWdBQ0FBNEFEQUFBZkFBQVROVHNCSFFFN0FUMEJPd0VkQVNzQkhRRXJBUjBCS3dFOUFTc0JQUUVyQVlDQWdJQ0FnSUJBUUVCQWdJQkFRRUJBQWtEQXdNREF3TURBUUVCQVFFQkFRRUFBQVFBQUFJQURnQU1BQUJzQUFCa0JPd0VaQVRzQkdRRTdBUmtCT3dFWkFUc0JHUUVwQVQwQkt3RkFRRUJBZ0lCQVFJQ0Evb0QrZ0VCQUFnQUJBUDhBL3dBQkFBRUEvd0QvQUFFQUFRRCt3UDdBUUVBQUFRQUFBSUFEZ0FNQUFDY0FBQkUxT3dFZEFUc0JQUUU3QVIwQkt3RWRBVHNCSFFFckFUMEJLd0VkQVNzQlBRRTdBVDBCS3dHQWdNREFnSUNBZ0lDQWdJREF3SUNBZ0lDQWdBS0FnRUJBUUVDQWdFQkFnSUJBUUVCQWdJQkFRQUFBQVFBQUFBQURnQU1BQUI4QUFCRTFPd0VkQVRzQlBRRTdBUmtCS3dFZEFTa0JQUUVwQVQwQktRRTlBU3NCZ0lEQXdJQ0FRRUQrd1A3QUFRQUJBUDhBL3dCQVFBSkF3TURBd01EK3dQN0FRRUJBUUVCQVFFQUFBQUVBQUFDQUE0QURBQUFuQUFBUk5Ta0JIUUVyQVIwQkt3RWRBU3NCSFFFN0FSMEJLUUU5QVRzQlBRRTdBVDBCT3dFOUFTc0JBY0FCd0VCQVFFQkFRTURBL2tEK1FFQkFRRUJBUU1EQUFzQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFCQVFBQWdBTUFCQUFBSndBQUFUVTdBUjBCS3dFZEFTc0JIUUU3QVIwQk93RWRBU3NCUFFFckFUMEJLd0U5QVRzQlBRRTdBUUlBZ0lCQVFFQkFRRUJBUUlDQVFFQkFRRUJBUUVBRHdFQkFRSUNBUUVDQWdFQkFRRUNBZ0VCQWdJQUFBQUFBQVFHQUFJQUNnQVFBQUFjQUFBRVJPd0VaQVNzQkFZQ0FnSUNBQWtBQndQNUEva0FBQVFDQUFJQUNnQVFBQUNjQUFCTTFPd0VkQVRzQkhRRTdBUjBCS3dFZEFTc0JIUUVyQVQwQk93RTlBVHNCUFFFckFUMEJLd0dBZ0lCQVFFQkFRRUJBUUlDQVFFQkFRRUJBUUVBRHdFQkFRSUNBUUVDQWdFQkFRRUNBZ0VCQWdJQUFBUUFBQVlBRGdBTUFBQ2NBQUJNMU93RWRBVHNCSFFFN0FUMEJPd0VkQVNzQkhRRXJBVDBCS3dFOUFTc0JIUUVyQVQwQk93R0F3TUJBUUVCQVFFQkFRTURBUUVCQVFFQkFRRUFDd0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQUFnQ0FBSUFEQUFHQUFBY0FEd0FBQVRVN0FSMEJLd0VsTlRzQkhRRXJBUUlBZ0lDQWdQNkFnSUNBZ0FFQWdJQ0FnSUNBZ0FBQUFBQUNBUUFBZ0FLQUJBQUFDd0FUQUFBQk5Uc0JHUUVyQVQwQk93RVJOVHNCSFFFckFRR0FnSURBd0VCQWdJQ0FnQUtBZ1A3QS9zREF3QUhBUUVCQUFBQUFBZ0FBQUlBRGdBUUFBRGNBUHdBQUFUVTdBUjBCT3dFZEFUc0JIUUVyQVQwQkt3RWRBVHNCUFFFN0FSMEJLd0VkQVNzQkhRRXJBVDBCS3dFOUFTc0JQUUU3QVQwQk93RVJOU3NCSFFFN0FRR0FRRUNBZ0VCQWdJQkFRRUJBZ0lCQVFJQ0FRRUNBZ0VCQVFFQ0FnRUJBUUVBRHdFQkFRRUJBUUVCQVFNREFRRUJBUUVCQVFFQkFRRUJBd01CQVFQN0F3TURBQUFFQUFBQ0FBNEFFQUFBdkFBQUJOU2tCSFFFN0FSMEJLd0U5QVNzQkhRRTdBUjBCS3dFZEFTa0JIUUVwQVQwQk93RTlBU3NCUFFFN0FUMEJPd0VCQUFFQUFRQkFRSUNBZ0lEQXdNREFBUUFCQVA1QS9rQkFRRUJBUUVCQVFBUEFRRUJBUUVCQVFJQ0FRRUNBZ0VCQVFFQ0FnRUJBZ0lBQUFBSUFnQUVBQTRBRGdBQTNBRDhBQUJNMU93RWRBVHNCUFFFN0FSMEJPd0U5QVRzQkhRRXJBUjBCT3dFZEFTc0JQUUVyQVIwQkt3RTlBU3NCSFFFckFUMEJPd0U5QVNzQkJUVXJBUjBCT3dHQVFFQkFRSUNBUUVCQVFFQkFRRUJBUUVCQWdJQkFRRUJBUUVCQVFBSUFnSUNBZ0FOQVFFQkFRRUJBUUVCQVFFREF3RUJBUUVCQVFFQkFRRUJBUU1EQXdNREF3QUFCQUlBQWdBT0FCQUFBTndBQUV6VTdBUjBCT3dFOUFUc0JIUUVyQVIwQk93RWRBU3NCSFFFN0FSMEJLd0VkQVNzQlBRRXJBVDBCT3dFOUFTc0JQUUU3QVQwQkt3R0FnSUNBZ0lDQVFFQkFRSUNBZ0lDQWdJQ0FnSUNBZ0lDQVFFQkFRQU9BZ0lDQWdJQ0FnRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFJQmdBQ0FBb0FFQUFBSEFBOEFBQUUxT3dFZEFTc0JFVFU3QVIwQkt3RUJnSUNBZ0lDQWdJQ0FBVURBd01BQ3dNREF3QUFFQUlBQWdBT0FCQUFBTHdBM0FEOEFSd0FBQVRVcEFSMEJPd0VkQVNzQkhRRTdBUjBCT3dFZEFTc0JIUUVwQVQwQkt3RTlBVHNCUFFFckFUMEJLd0U5QVRzQkJUVXJBUjBCT3dFVk5Tc0JIUUU3QVJVMUt3RWRBVHNCQVFBQkFBRUFRRUNBZ0VCQVFFQkFRUDhBL3dCQVFJQ0FRRUJBUUVCQUFZQ0FnSUNBZ0lDQWdJQ0FnSUFEd0VCQVFFQkFRRUJBUUlDQVFFQkFRRUJBUUVCQVFJQ0FRRUJBUU1CQVFFREFRRUJBQUFBQUFBSUFnQU9BQXdBRUFBQUhBQThBQUFFMU93RWRBU3NCSlRVN0FSMEJLd0VDQUlDQWdJRCtnSUNBZ0lBRHdFQkFRRUJBUUVBQUFBQUFBd0FBQUFBRUFBUUFBQmNBUHdCWEFBQUJOVHNCSFFFckFSMEJPd0VkQVNzQlBRRXJBVDBCT3dFRE5Ta0JIUUU3QVIwQk93RVpBU3NCSFFFckFSMEJLUUU5QVNzQlBRRXJBUmtCT3dFOUFUc0JCVFVwQVIwQkt3RVpBVHNCSFFFcEFUMEJPd0VaQVNzQkFZQ0FnSUNBZ0lDQWdFQkFRRUNBQVFBQkFFQkFRRUJBUUVCQS93RC9BRUJBUUVCQVFFQkFBZ0QvQVA4QVFFQkFRQUVBQVFCQVFFQkFBc0JBUUVDQWdFQkFRRUNBZ0FGQVFFQkFRRUQvQVA4QVFFQkFRRUJBUUVBQkFBRUFRRUJBUUVCQS93RC9BRUJBUUVBQkFBRUFBQUFBQUFJQWdBSUFBd0FFQUFBWEFCOEFBQk0xS1FFZEFUc0JIUUVwQVQwQkt3RTlBVHNCUFFFckFRVTFLd0VkQVRzQmdBRUFBUUJBUVA4QS93QkFRRUJBUUVBQmdFQkFRRUFEd0VCQVFNREFRRUJBUUVCQXdFQkFRQUFDQUFBQkFBT0FBNEFBTndCUEFBQUJOVHNCSFFFN0FUMEJPd0VkQVNzQkhRRXJBUjBCT3dFZEFUc0JIUUVyQVQwQkt3RWRBU3NCUFFFckFUMEJLd0U5QVRzQlBRRTdBUVUxS3dFZEFTc0JIUUU3QVIwQk93RTlBU3NCUFFFN0FRRUFnSUJBUUlDQVFFQkFRRUJBUUVDQWdFQkFnSUJBUUVCQVFFQkFRQUVBUUVCQVFFQkFRRUJBUUVCQUEwQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFBQUFRQ0FBWUFEZ0FNQUFBc0FBQk0xS1FFZEFTc0JQUUVwQVlBQmdBR0FnSUQvQVA4QUFzQkF3TUNBZ0FBQkFJQUNBQU9BQW9BQUJ3QUFFelVwQVIwQktRR0FBWUFCZ1A2QS9vQUNRRUJBUUFBRUFBQUFBQVFBQkFBQUd3QWpBRXNBWXdBQUFSRTdBUjBCT3dFZEFTc0JIUUU3QVIwQkt3RTlBU3NCSFFFckFRRTFLd0VkQVRzQkFUVXBBUjBCT3dFZEFUc0JHUUVyQVIwQkt3RWRBU2tCUFFFckFUMEJLd0VaQVRzQlBRRTdBUVUxS1FFZEFTc0JHUUU3QVIwQktRRTlBVHNCR1FFckFRRUF3TUJBUUVCQVFFQkFRSUNBUUVBQmdJQ0FnSUQrZ0FFQUFRQkFRRUJBUUVCQVFQOEEvd0JBUUVCQVFFQkFRQUlBL3dEL0FFQkFRRUFCQUFFQVFFQkFRQUlBQVFCQVFFQkFRRUJBUUVCQVFFQUJRRUJBUUFIQVFFQkFRRUQvQVA4QVFFQkFRRUJBUUVBQkFBRUFRRUJBUUVCQS93RC9BRUJBUUVBQkFBRUFBQUVBZ0FPQUF3QUVBQUFIQUFBVE5Ta0JIUUVwQVlBQlFBRkEvc0Qrd0FQQVFFQkFBQUlCQUFLQUFvQUVBQUFYQUI4QUFBRTFPd0VkQVRzQkhRRXJBUjBCS3dFOUFTc0JQUUU3QVJjMUt3RWRBVHNCQVlCQVFFQkFRRUJBUUVCQVFFQ0FRRUJBUUFQQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFJQWdBQ0FBNEFFQUFBSEFCOEFBRGMxS1FFZEFTa0JBVFU3QVIwQk93RWRBU3NCSFFFckFUMEJLd0U5QVRzQmdBR0FBWUQrZ1A2QUFRQ0FnSUNBZ0lDQWdJQ0FnSURBUUVCQUF3Q0FnSUJBUUlDQWdJQkFRQUFCQVFBQ0FBTUFCQUFBSHdBQUFUVTdBUjBCT3dFZEFTc0JIUUU3QVIwQktRRTlBVHNCUFFFN0FUMEJLd0VCQU1EQVFFQkFRRUJBL3dEL0FFQkFRRUNBZ0FQQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQkFRQUNBQU1BQkFBQUh3QUFBVFVwQVIwQkt3RWRBVHNCSFFFckFSMEJLd0U5QVRzQlBRRXJBVDBCS3dFQkFBRUFBUUJBUUVCQVFFREF3SUNBUUVCQVFBUEFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUJBWUFEQUFLQUJBQUFEd0FBQVRVN0FSMEJLd0VkQVNzQlBRRTdBUUlBUUVCQVFFQkFRRUFEd0VCQVFFQkFRRUFBQUFBQUFRQUFBQUFEZ0FNQUFCOEFBQmtCT3dFWkFUc0JHUUU3QVJrQk93RWRBU3NCUFFFckFSMEJLd0VkQVNzQmdJQ0FnSUNBUUVDQWdFQkFnSUNBZ0FHQUFZRC9BUDhBQVFBQkFQOEEvd0JBUUVCQVFFQkFRQUFBQUFNQWdBQ0FBNEFFQUFBYkFDc0FNd0FBQVRVcEFSa0JLd0U5QVNzQkhRRXJBVDBCS3dFOUFTc0JQUUU3QVFVMUt3RWRBU3NCSFFFN0FSMEJPd0VsTlNzQkhRRTdBUUVBQVVBQlFFQkFRRUJBUUlDQVFFQkFRQUVBUUVCQVFFQkFRRUFCQUVCQVFFQUR3RUQrUVA1QWdJQ0FnSUNBUUVEQXdNREFRRUJBUUVCQXdNREF3QUFBQUFBQkFRQUJnQUlBQW9BQUJ3QUFBVFU3QVIwQkt3RUJBSUNBZ0lBQ0FJQ0FnQUFBQUFBQkFRQUFBQUtBQVFBQUR3QUFKVFU3QVIwQkt3RWRBU3NCUFFFN0FRSUFRRUJBUUlDQWdJREFRRUJBUUVCQVFBQUJBUUFDQUFNQUJBQUFGd0FBQVRVN0FSMEJPd0VkQVNrQlBRRTdBVDBCS3dFOUFUc0JBWUNBZ0VCQS93RC9BRUJBUUVCQVFBUEFRTURBUUVCQVFFQkFRRUFBQUFJQWdBSUFBd0FFQUFBWEFCOEFBQUUxT3dFZEFUc0JIUUVyQVIwQkt3RTlBU3NCUFFFN0FRVTFLd0VkQVRzQkFRREF3RUJBUUVEQXdFQkFRRUFCQUVCQVFFQUR3RUJBUUlDQVFFQkFRSUNBZ0lDQWdBQUFBQUFDQUFBQkFBT0FBNEFBTndCUEFBQVJOVHNCSFFFN0FUMEJPd0VkQVRzQkhRRTdBUjBCS3dFZEFTc0JIUUVyQVQwQkt3RWRBU3NCUFFFN0FUMEJPd0U5QVNzQlBRRXJBUVUxS3dFZEFUc0JIUUVyQVIwQk93RTlBVHNCUFFFckFZQ0FRRUNBZ0VCQVFFQkFRRUJBZ0lCQVFJQ0FRRUJBUUVCQVFFQUNBRUJBUUVCQVFFQkFRRUJBUUFOQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFDQUFBQWdBT0FCQUFBRXdCYkFBQUJOVHNCR1FFckFUMEJLd0U5QVRzQlBRRTdBUUUxT3dFWkFUc0JQUUU3QVQwQk93RTlBVHNCUFFFN0FSMEJLd0VkQVNzQkhRRXJBUjBCS3dFZEFTc0JIUUVyQVIwQkt3RTlBVHNCUFFFN0FUMEJLd0U5QVNzQlBRRTdBUU1BUUVCQVFJQ0FRRUJBUVAyQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFrQkEvd0QvQUVCQVFFQkFRQUhBUVA4QS93QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFnSUJBUUFBQUFBRUFBQUNBQTRBRUFBQmpBQUFUTlRzQkdRRTdBVDBCT3dFOUFUc0JQUUU3QVQwQk93RWRBU3NCSFFFckFSMEJPd0VkQVNzQkhRRTdBUjBCS3dFOUFUc0JQUUU3QVQwQkt3RTlBU3NCSFFFckFSMEJLd0VkQVNzQkhRRXJBVDBCT3dFOUFUc0JQUUVyQVQwQkt3RTlBVHNCZ0VCQVFFQkFRRUJBUUVCQVFFQkFRRUNBZ0VCQVFFREF3RUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBOEJBL3dEL0FFQkFRRUJBUUVCQVFFQkFRRUJBZ0lCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUlDQVFFQUFBQUFEQUFBQWdBT0FCQUFBRXdCakFHc0FBQUUxT3dFWkFTc0JQUUVyQVQwQk93RTlBVHNCQVRVN0FSMEJLd0VkQVRzQkhRRTdBVDBCT3dFOUFUc0JQUUU3QVIwQkt3RWRBU3NCSFFFckFSMEJLd0VkQVNzQkhRRXJBUjBCS3dFOUFUc0JQUUU3QVQwQkt3RTlBVHNCUFFFckFUMEJLd0VCTlNzQkhRRTdBUU1BUUVCQVFJQ0FRRUJBUVAwQXdNQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUNBZ0lDQVFFQkFRQUdBUUVCQVFBSkFRUDhBL3dCQVFFQkFRRUFCd0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFQN0FRRUJBQUFBQUFBSUFBQUNBQTRBRUFBQW5BQzhBQUFFMU93RWRBU3NCSFFFckFSMEJPd0U5QVRzQkhRRXJBUjBCS1FFOUFTc0JQUUU3QVQwQk93RVJOVHNCSFFFckFRRUF3TUNBZ0VCQXdNQ0FnRUJBL3NEK3dFQkFRRUJBUU1EQXdNQUN3RUJBUUVCQVFFQkFRSUNBUUVCQVFJQ0FRRUFCUUVCQVFBQUFBQUlBQUFDQUE0QUVBQUF2QUQ4QUFBRTFPd0VkQVRzQkhRRTdBUjBCT3dFZEFUc0JIUUVyQVQwQkt3RWRBU3NCUFFFN0FUMEJPd0U5QVRzQlBRRXJBUUUxS3dFZEFTc0JIUUU3QVQwQkt3RUJBRUJBUUVCQVFFQkFRRUNBZ01EQWdJQkFRRUJBUUVCQVFBRUFRRUJBUU1EQVFFQUR3RUJBUUVCQVFFQkFRTURBUUVCQVFNREFRRUJBUUVCQS9zQkFRRUJBUUVCQUFBQUFBZ0FBQUlBRGdBUUFBQzhBUHdBQUFUVTdBUjBCS3dFZEFUc0JIUUU3QVIwQk93RWRBU3NCUFFFckFSMEJLd0U5QVRzQlBRRTdBVDBCT3dFOUFUc0JFVFVyQVIwQkt3RWRBVHNCUFFFckFRSUFRRUJBUUVCQVFFQkFRSUNBd01DQWdFQkFRRUJBUUVCQVFFQkFRTURBUUVBRHdFQkFRRUJBUUVCQVFNREFRRUJBUU1EQVFFQkFRRUJBL3NCQVFFQkFRRUJBQUFNQUFBQ0FBNEFFQUFBdkFEY0FSd0FBQVRVN0FSMEJPd0VkQVNzQkhRRTdBUjBCT3dFZEFTc0JQUUVyQVIwQkt3RTlBVHNCUFFFN0FUMEJLd0U5QVRzQkJUVXJBUjBCT3dFVk5Tc0JIUUVyQVIwQk93RTlBU3NCQVFEQXdFQkFRRUJBUUVCQWdJREF3SUNBUUVCQVFFQkFRRUFCQUVCQVFFQkFRRUJBd01CQVFBUEFRRUJBUUVCQVFFQkF3TUJBUUVCQXdNQkFRRUJBUUVCQVFFQkF3RUJBUUVCQVFFQUFBQU1BQUFDQUE0QUVBQUF6QURzQVN3QUFBVFU3QVIwQk93RTlBVHNCSFFFckFSMEJPd0VkQVRzQkhRRXJBVDBCS3dFZEFTc0JQUUU3QVQwQk93RTlBU3NCUFFFN0FSYzFLd0VkQVRzQkZ6VXJBUjBCS3dFZEFUc0JQUUVyQVFFQWdJQkFRRUJBUUVCQVFFQkFnSURBd0lDQVFFQkFRRUJBUUVDQVFFQkFRSUJBUUVCQXdNQkFRQVBBUUVCQVFFQkFRSUNBUUVEQXdFQkFRRURBd0VCQVFFQkFRRUJBUUVEQVFFQkFRRUJBUUFBQUJBQUFBSUFEZ0FRQUFCOEFMd0EzQUQ4QUFBRTFPd0VkQVRzQkhRRTdBUjBCS3dFOUFTc0JIUUVyQVQwQk93RTlBVHNCQlRVckFSMEJLd0VkQVRzQlBRRXJBUkUxT3dFZEFTc0JKVFU3QVIwQkt3RUJBTURBUUVCQVFJQ0F3TUNBZ0VCQVFFQUJBRUJBUUVEQXdFQkFnSUNBZ1A2QWdJQ0FnQUxBUUVCQVFFREF3RUJBUUVEQXdFQkFRRUJBUUVCQVFFQUJ3RUJBUUVCQVFFQUFBd0FBQUlBRGdBUUFBQ2NBTHdBL0FBQUJOVHNCSFFFN0FSMEJPd0VkQVRzQkhRRXJBVDBCS3dFZEFTc0JQUUU3QVQwQk93RTlBVHNCRnpVckFSMEJPd0VWTlNzQkhRRXJBUjBCT3dFOUFTc0JBWUJBUUVCQVFFQkFRSUNBd01DQWdFQkFRRUJBUUlCQVFFQkFRRUJBUU1EQVFFQUR3RUJBUUlDQVFFREF3RUJBUUVEQXdFQkFnSUJBUUVCQXdFQkFRRUJBUUVBQUFBQUNBQUFBZ0FPQUJBQUFKd0F2QUFBQk5Ta0JIUUVyQVIwQk93RWRBU3NCSFFFN0FSMEJLUUU5QVNzQkhRRXJBUmtCT3dFOUFUc0JFelVyQVIwQk93RUJBQUZBQVVDQWdJQ0FnSUNBZ1A4QS93QkFRSUNBUUVCQVFJQkFRRUJBQThCQVFFQ0FnRUJBZ0lCQVFJQ0FnSUFCUUFGQVFFRC9BSUNBZ0FBQUFRQUFBQUFEZ0FRQUFFY0FBQUUxS1FFZEFUc0JIUUVyQVQwQkt3RWRBU3NCSFFFN0FSMEJPd0U5QVRzQkhRRXJBUjBCS3dFZEFTc0JIUUVyQVQwQk93RTlBU3NCUFFFckFUMEJLd0U5QVRzQlBRRTdBUUVBQVFBQkFFQkFnSUNBZ0VCQVFFQ0FnSUNBUUVCQVFFQkFnSUNBZ0lDQVFFQkFRRUJBUUVBRHdFQkFRRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUNBZ0VCQUFBQUJBQUFBZ0FPQUJBQUFKd0FBQVRVN0FSMEJPd0VkQVRzQkhRRXBBUjBCS1FFZEFTa0JIUUVwQVIwQktRRVpBVHNCUFFFckFRRUFRRUJBUU1EQS9zRCt3QUVBQVFEL0FQOEFBVUFCUVA1QS9rREF3RUJBQThCQVFFQkFRRUJBUUVCQVFFQkFRRUFCUUFGQVFFQUFBQUFBQVFBQUFJQURnQVFBQUNjQUFBRTFPd0VkQVNzQkhRRTdBUjBCS1FFZEFTa0JIUUVwQVIwQktRRWRBU2tCR1FFN0FUMEJPd0VDQUVCQVFFREF3UDdBL3NBQkFBRUEvd0QvQUFGQUFVRCtRUDVBd01CQVFBUEFRRUJBUUVCQVFFQkFRRUJBUUVCQUFVQUJRRUJBQUFBQUFBSUFBQUNBQTRBRUFBQW5BQzhBQUFFMU93RWRBVHNCSFFFN0FSMEJLUUVkQVNrQkhRRXBBUjBCS1FFZEFTa0JHUUU3QVQwQk93RUZOU3NCSFFFN0FRRUF3TUJBUUVCQS9zRCt3QUVBQVFEL0FQOEFBVUFCUVA1QS9rQkFRRUJBQVFCQVFFQkFBOEJBUUVCQVFFQkFRRUJBUUVCQVFFQUJRQUZBUUVCQVFFQkFBQUFBQUFNQUFBQ0FBNEFFQUFBWEFCOEFKd0FBR1FFcEFSMEJLUUVkQVNrQkhRRXBBUjBCS1FFZEFTa0JBVFU3QVIwQkt3RWxOVHNCSFFFckFRSEFBY0Qrd1A3QUFRQUJBUDhBL3dBQlFBRkEva0QrUUFJQWdJQ0FnUDZBZ0lDQWdBSEFBVUJBUUVCQVFFQkFRRUJBQTBCQVFFQkFRRUJBQUFBQUFBRUFnQUNBQTRBRUFBQW5BQUFCTlRzQkhRRTdBUjBCT3dFZEFTc0JIUUU3QVIwQktRRTlBVHNCUFFFckFUMEJPd0U5QVNzQkFZQkFRRUJBZ0lDQWdJQ0Evb0QrZ0lDQWdJREF3RUJBQThCQVFFQkFRRUJBd01CQVFFQkF3TUJBUUVCQUFBQUJBSUFBZ0FPQUJBQUFKd0FBQVRVN0FSMEJLd0VkQVRzQkhRRXJBUjBCT3dFZEFTa0JQUUU3QVQwQkt3RTlBVHNCUFFFN0FRSUFRRUJBUU1EQWdJQ0FnUDZBL29DQWdJQ0FnSUJBUUFQQVFFQkFRRUJBUU1EQVFFQkFRTURBUUVCQVFBQUFBUUNBQUlBRGdBUUFBQ2NBQUFFMU93RWRBVHNCSFFFN0FSMEJLd0VkQVRzQkhRRXBBVDBCT3dFOUFTc0JQUUU3QVQwQk93RUJnSUNBUUVCQVFJQ0FnSUQrZ1A2QWdJQ0FnRUJBUUVBRHdFQkFRRUJBUUVEQXdFQkFRRURBd0VCQVFFQUFBQU1BZ0FDQUE0QUVBQUFYQUI4QUp3QUFFelVwQVIwQkt3RWRBVHNCSFFFcEFUMEJPd0U5QVNzQkFUVTdBUjBCS3dFbE5Uc0JIUUVyQVlBQmdBR0FnSUNBZ1A2QS9vQ0FnSUNBQWdDQWdJQ0EvZ0NBZ0lDQUFzQkFRRURBd0VCQVFFREF3QUZBUUVCQVFFQkFRQUFBQUFBQ0FBQUFnQU9BQkFBQUh3QTNBQUFUTlNrQkhRRTdBUjBCT3dFZEFTc0JIUUVyQVIwQktRRTlBU3NCUFFFN0FTVTFLd0VkQVRzQkhRRXJBUjBCT3dFOUFUc0JQUUVyQVlBQkFBRUFRRUJBUUVCQVFFRC9BUDhBUUVCQVFBR0FRRUJBUUVCQVFFQkFRRUJBQTBEQVFFQkFRTURBUUVCQVFNREFRRURBUUlDQVFFQ0FnRUJBd01BQUFnQUFBSUFEZ0FRQUFDc0FQd0FBQVRVN0FSMEJPd0U5QVRzQkhRRXJBUjBCT3dFWkFTc0JQUUVyQVQwQkt3RWRBU3NCR1FFN0FUMEJPd0VYTlNzQkhRRTdBUjBCT3dFZEFUc0JQUUVyQVFFQWdJQkFRRUJBUUVDQWdNREFRRUJBUUlDQVFFQkFRSUJBUUVCQVFFQkFRSUNBQThCQVFFQkFRRUJBUUVEK3dQN0FRRUJBUUlDQUFVQUJRRUJBUUVCQVFFQkFRRUNBZ0FBQ0FBQUFnQU9BQkFBQUp3QXZBQUFCTlRzQkhRRTdBUjBCT3dFZEFUc0JIUUVyQVIwQktRRTlBU3NCUFFFN0FUMEJPd0U5QVNzQkFUVXJBUjBCT3dFQkFFQkFRRUNBZ0VCQVFFRCt3UDdBUUVCQVFJQ0FRRUFCZ01EQXdNQUR3RUJBUUVCQVFFREF3RUJBUUVEQXdFQkFRRUQrUU1EQXdBQUNBQUFBZ0FPQUJBQUFKd0F2QUFBQk5Uc0JIUUVyQVIwQk93RWRBVHNCSFFFckFSMEJLUUU5QVNzQlBRRTdBVDBCT3dFOUFUc0JFelVyQVIwQk93RUNBRUJBUUVDQWdFQkFRRUQrd1A3QVFFQkFRSUNBUUVDQXdNREF3QVBBUUVCQVFFQkFRTURBUUVCQVFNREFRRUJBUVA1QXdNREFBQUFEQUFBQWdBT0FCQUFBSHdBbkFDOEFBQUUxT3dFZEFUc0JIUUU3QVIwQkt3RWRBU2tCUFFFckFUMEJPd0U5QVRzQkJUVXJBUjBCT3dFVE5Tc0JIUUU3QVFFQXdNQkFRRUJBUUVEK3dQN0FRRUJBUUVCQUFRQkFRRUJBZ01EQXdNQUR3RUJBUUlDQXdNQkFRRUJBd01DQWdFQkFRRUQrd01EQXdBQUFBd0FBQUlBRGdBUUFBQ3NBTXdBN0FBQUJOVHNCSFFFN0FUMEJPd0VkQVNzQkhRRTdBUjBCT3dFZEFTc0JIUUVwQVQwQkt3RTlBVHNCUFFFN0FSYzFLd0VkQVRzQkFUVXJBUjBCT3dFQkFJQ0FRRUJBUUVCQVFFQkFRRUJBL3NEK3dFQkFRRUJBUUlCQVFFQkFBUURBd01EQUE4QkFRRUJBUUVCQVFFQkFRTURBUUVCQVFNREFnSUJBUUVCQS9zREF3TUFBQUFRQUFBQ0FBNEFFQUFBWEFCOEFKd0F2QUFBVE5Ta0JIUUU3QVIwQkt3RWRBU2tCUFFFckFUMEJPd0VGTlNzQkhRRTdBUU0xT3dFZEFTc0JKVFU3QVIwQkt3R0FBVUFCUUVCQVFFRCt3UDdBUUVCQVFBSUF3TURBd0lDQWdJQ0Evb0NBZ0lDQUFzQkFRRURBd0VCQVFFREF3TURBd01BQ3dFQkFRRUJBUUVBQUFRQ0FBUUFEQUFPQUFFY0FBQk0xT3dFZEFUc0JIUUU3QVQwQk93RTlBVHNCSFFFckFSMEJLd0VkQVRzQkhRRTdBUjBCS3dFOUFTc0JQUUVyQVIwQkt3RWRBU3NCUFFFN0FUMEJPd0U5QVNzQlBRRXJBWUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFEUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFNQUFBQ0FBNEFFQUFBSEFCOEFOd0FBQVRVN0FSMEJLd0VCTlNrQkhRRTdBUmtCS3dFZEFTa0JQUUVyQVJrQk93RUZOU3NCSFFFN0FSMEJLd0VkQVRzQlBRRXJBVDBCT3dFQmdFQkFRRUQvQUFGQUFVQkFRRUJBL3NEK3dFQkFRRUFDQU1EQVFFQkFRTURBUUVCQVFBSkFRRUJBQWNCQVFFRCt3UDdBUUVCQVFBRkFBVUJBUU1EQVFFQkFRTURBUUVBQUFBQUNBQUFBZ0FPQUJBQUFGd0FuQUFBWkFUc0JHUUU3QVJrQk93RVpBU3NCSFFFcEFUMEJLd0VCTlRzQkhRRTdBUjBCS3dFOUFTc0JnSURBd0lDQVFFRCt3UDdBUUVBQkFFQkFRRUJBUUVCQUFnQUJBUDhBL3dBQkFBRUEvd0QvQUVCQVFFQUN3RUJBUUVCQVFFQUFBQUFBQWdBQUFJQURnQVFBQUJjQUp3QUFHUUU3QVJrQk93RVpBVHNCR1FFckFSMEJLUUU5QVNzQkFUVTdBUjBCS3dFZEFTc0JQUUU3QVlDQXdNQ0FnRUJBL3NEK3dFQkFBZ0JBUUVCQVFFQkFRQUlBQVFEL0FQOEFBUUFCQVA4QS93QkFRRUJBQXNCQVFFQkFRRUJBQUFBQUFBSUFBQUNBQTRBRUFBQVhBQzhBQUJFMU93RWRBVHNCUFFFN0FSMEJLd0VkQVNrQlBRRXJBUUUxT3dFZEFUc0JIUUVyQVQwQkt3RWRBU3NCUFFFN0FZQ0F3TUNBZ0VCQS9zRCt3RUJBQVFEQXdFQkFnSUJBUUlDQVFFQUJ3TURBd01EQXdNQkFRRUJBQXNCQVFFQkFRRUJBUUVCQVFBQUFBQU1BQUFDQUE0QUVBQUFYQUI4QUp3QUFHUUU3QVJrQk93RVpBVHNCR1FFckFSMEJLUUU5QVNzQkFUVTdBUjBCS3dFbE5Uc0JIUUVyQVlDQXdNQ0FnRUJBL3NEK3dFQkFBZ0NBZ0lDQS9vQ0FnSUNBQWdBQkFQOEEvd0FCQUFFQS93RC9BRUJBUUVBQ3dFQkFRRUJBUUVBQUFBQUFBUUNBQUlBRGdBUUFBQzhBQUFFMU93RWRBU3NCSFFFckFSMEJPd0U5QVRzQkhRRXJBUjBCS3dFZEFTc0JQUUVyQVQwQkt3RTlBVHNCUFFFN0FRSUFRRUJBUUVCQWdJQ0FnRUJBUUVDQWdFQkFRRUNBZ0VCQUE4QkFRRUJBUUlDQWdJQ0FnRUJBZ0lDQWdFQkFnSUJBUUFBQUFBQUNBQUFBZ0FPQUJBQUFGd0FmQUFBWkFUc0JIUUVwQVIwQk93RWRBU3NCSFFFcEFSMEJLd0VCTlNzQkhRRTdBWUNBQVFBQkFFQkFRRUQvQVA4QWdJQUNnTURBd01BQ1FBSEFRRUJBUU1EQVFFQkFRQUhBd01EQUFBQUFBQUlBZ0FDQUE0QUVBQUFqQURjQUFBRTFLUUVkQVRzQkhRRXJBUjBCT3dFZEFTc0JIUUVyQVQwQkt3RWRBU3NCR1FFN0FRVTFLd0VaQVRzQkhRRTdBVDBCS3dFOUFUc0JBUUFCQUFFQVFFQkFRRUJBUUVDQWdFQkFnSUJBUUFHQWdJQkFRRUJBUUVCQVFBUEFRRUJBZ0lCQVFJQ0FRRUJBUUVCQUFZQUJnSUNBL3dEL0FFQkFnSUJBUUFBQUFnQUFBSUFEZ0FRQUFDc0FNd0FBQVRVN0FSMEJPd0VkQVRzQkhRRTdBUmtCS1FFOUFTc0JQUUU3QVQwQktRRTlBU2tCUFFFN0FUMEJLd0VCTlNzQkhRRTdBUUVBUUVCQVFJQ0FRRUQrZ1A2QVFFQkFRQUVBQVFEL0FQOEFnSUJBUUFHQXdNREF3QVBBUUVCQVFFQkFRUDhBL3dCQVFFQkFRRUJBUUVCQVFFRDl3RUJBUUFBQUFBSUFBQUNBQTRBRUFBQXJBRE1BQUFFMU93RWRBU3NCSFFFN0FSMEJPd0VaQVNrQlBRRXJBVDBCT3dFOUFTa0JQUUVwQVQwQk93RTlBVHNCRXpVckFSMEJPd0VDQUVCQVFFQ0FnRUJBL29EK2dFQkFRRUFCQUFFQS93RC9BSUNBUUVDQXdNREF3QVBBUUVCQVFFQkFRUDhBL3dCQVFFQkFRRUJBUUVCQVFFRDl3RUJBUUFBQUFBQURBQUFBZ0FPQUJBQUFJd0FyQURNQUFBRTFPd0VkQVRzQkhRRTdBUmtCS1FFOUFTc0JQUUU3QVQwQktRRTlBU2tCUFFFN0FRVTFLd0VkQVRzQkV6VXJBUjBCT3dFQkFNREFRRUJBUVA2QS9vQkFRRUJBQVFBQkFQOEEvd0JBUUFFQVFFQkFRSURBd01EQUE4QkFRRUNBZ1A4QS93QkFRRUJBUUVCQVFJQ0FRRUJBUVA1QVFFQkFBQUFBQUFNQUFBQ0FBNEFFQUFBdkFEY0FQd0FBQVRVN0FSMEJPd0U5QVRzQkhRRXJBUjBCT3dFZEFUc0JHUUVwQVQwQkt3RTlBVHNCUFFFcEFUMEJLUUU5QVRzQkZ6VXJBUjBCT3dFQk5Tc0JIUUU3QVFFQWdJQkFRRUJBUUVCQVFFQkEvb0QrZ0VCQVFFQUJBQUVBL3dEL0FFQkFnRUJBUUVBQkFNREF3TUFEd0VCQVFFQkFRRUJBUUVCQS93RC9BRUJBUUVCQVFFQkFnSUJBUUVCQS9rQkFRRUFBQUFBQUJBQUFBSUFEZ0FRQUFCc0FJd0FyQURNQUFCTTFLUUVkQVRzQkdRRXBBVDBCS3dFOUFUc0JQUUVwQVQwQktRRUJOU3NCSFFFN0FRTTFPd0VkQVNzQkpUVTdBUjBCS3dHQUFVQUJRRUJBL29EK2dFQkFRRUFCQUFFQS93RC9BQUlBd01EQXdJQ0FnSUNBL29DQWdJQ0FBc0JBUUVEL0FQOEFRRUJBUUVCQVFFRCt3RUJBUUFMQVFFQkFRRUJBUUFBQUF3QUFBSUFEZ0FRQUFDc0FNd0E3QUFBQk5Uc0JIUUU3QVIwQk93RWRBVHNCR1FFcEFUMEJLd0U5QVRzQlBRRXBBVDBCS1FFOUFUc0JQUUU3QVJjMUt3RWRBVHNCRXpVckFSMEJPd0VCZ0VCQVFFQkFRRUJBL29EK2dFQkFRRUFCQUFFQS93RC9BRUJBUUVDQVFFQkFRSURBd01EQUE4QkFRRUJBUUVCQS93RC9BRUJBUUVCQVFFQkFRRUJBUUVCQVFFRCtRRUJBUUFBREFBQUFnQU9BQXdBQUl3QXJBRE1BQUJNMUtRRWRBVHNCSFFFckFSMEJPd0VkQVNrQlBRRXJBVDBCT3dFOUFUc0JQUUVyQVFVMUt3RWRBVHNCQlRVckFSMEJPd0dBQVVBQlFFQkF3TUNBZ1A3QS9zQkFRRUJBZ0lDQWdBSUFRRUJBUVA4QVFFQkFRQUxBUUVCQWdJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQXdFQkFRQUFCQUFBQUFBT0FBd0FBSndBQUV6VXBBUjBCS1FFZEFTa0JIUUVyQVIwQkt3RWRBU3NCUFFFN0FUMEJLd0U5QVNzQlBRRTdBWUFCZ0FHQS9zRCt3QUZBQVVDQWdFQkFnSUNBZ01EQVFFQkFRQUxBUUVCQWdJQkFRRUJBUUVCQVFFQkFRRUNBZ0FBQUFBSUFBQUNBQTRBRUFBQXJBRE1BQUFFMU93RWRBVHNCSFFFN0FSMEJPd0VkQVNrQkhRRXBBUjBCS1FFOUFTc0JQUUU3QVQwQk93RTlBU3NCQVRVckFSMEJPd0VCQUVCQVFFQ0FnRUJBL3NEK3dBRUFBUUQrd1A3QVFFQkFRSUNBUUVBQmdNREF3TUFEd0VCQVFFQkFRRUNBZ0VCQVFFQkFRTURBUUVCQVFQN0FRRUJBQUFJQUFBQ0FBNEFFQUFBckFETUFBQUUxT3dFZEFTc0JIUUU3QVIwQk93RWRBU2tCSFFFcEFSMEJLUUU5QVNzQlBRRTdBVDBCT3dFOUFUc0JFelVyQVIwQk93RUNBRUJBUUVDQWdFQkEvc0Qrd0FFQUFRRCt3UDdBUUVCQVFJQ0FRRUNBd01EQXdBUEFRRUJBUUVCQVFJQ0FRRUJBUUVCQXdNQkFRRUJBL3NCQVFFQUFBQU1BQUFDQUE0QUVBQUFqQUNzQU13QUFBVFU3QVIwQk93RWRBVHNCSFFFcEFSMEJLUUVkQVNrQlBRRXJBVDBCT3dFOUFUc0JCVFVyQVIwQk93RVhOU3NCSFFFN0FRRUF3TUJBUUVCQS9zRCt3QUVBQVFEK3dQN0FRRUJBUUVCQUFRQkFRRUJBZ01EQXdNQUR3RUJBUUlDQWdJQkFRRUJBUUVEQXdJQ0FRRUJBUU1CQVFFQUFBQUFFQUFBQWdBT0FCQUFBR3dBakFDc0FNd0FBRXpVcEFSMEJPd0VkQVNrQkhRRXBBUjBCS1FFOUFTc0JQUUU3QVFVMUt3RWRBVHNCQXpVN0FSMEJLd0VsTlRzQkhRRXJBWUFCUUFGQVFFRCt3UDdBQVFBQkFQN0Evc0JBUUVCQUFnREF3TURBZ0lDQWdJRCtnSUNBZ0lBQ3dFQkFRSUNBUUVCQVFFQkF3TUJBUUVCQUFjQkFRRUJBUUVCQUFBSUFnQUNBQTRBRUFBQVRBQ01BQUFFMU93RWRBVHNCSFFFcEFUMEJPd0U5QVNzQkVUVTdBUjBCT3dFZEFTc0JQUUVyQVFFQXdNQ0FnUDZBL29DQWdFQkFRRUJBUUVCQVFFQUNRRURBd0VCQVFFQ0FnQUhBUUVCQVFFQkFRQUFBQUFJQWdBQ0FBNEFFQUFBVEFDTUFBQUUxT3dFZEFUc0JIUUVwQVQwQk93RTlBU3NCQVRVN0FSMEJLd0VkQVNzQlBRRTdBUUVBd01DQWdQNkEvb0NBZ0VCQUFRQkFRRUJBUUVCQVFBSkFRTURBUUVCQVFJQ0FBY0JBUUVCQVFFQkFBQUlBZ0FDQUE0QUVBQUFUQUNzQUFBRTFPd0VkQVRzQkhRRXBBVDBCT3dFOUFTc0JFVFU3QVIwQk93RWRBU3NCUFFFckFSMEJLd0U5QVRzQkFRREF3SUNBL29EK2dJQ0FRRURBd0VCQWdJQkFRSUNBUUVBQ1FFREF3RUJBUUVDQWdBSEFRRUJBUUVCQVFFQkFRRUFBQUFBREFJQUFnQU9BQkFBQUV3QWJBQ01BQUFFMU93RVpBVHNCSFFFcEFUMEJPd0U5QVNzQkFUVTdBUjBCS3dFbE5Uc0JIUUVyQVFFQXdNQ0FnUDZBL29DQWdFQkFBUUNBZ0lDQS9vQ0FnSUNBQXNCQS93RC9BRUJBUUVEQXdBRkFRRUJBUUVCQVFBQUFBQU1BQUFDQUE0QUVBQUF2QURjQVB3QUFFelU3QVIwQk93RTlBVHNCSFFFckFSMEJPd0VkQVRzQkhRRXJBUjBCS1FFOUFTc0JQUUU3QVQwQkt3RTlBVHNCQlRVckFSMEJPd0VCTlNzQkhRRTdBWUNBZ0lDQVFFQkFRRUJBUUVCQVFQN0Evc0JBUUVCQVFFQkFRQUVBZ0lDQWdBRUF3TURBd0FPQWdFQkFRRUJBUUlDQVFFQ0FnRUJBUUVDQWdFQkFRRUJBUUVCQS93Q0FnSUFBQUFJQUFBQ0FBNEFFQUFBckFETUFBQUUxT3dFZEFUc0JQUUU3QVIwQkt3RWRBVHNCSFFFN0FSa0JLd0VaQVNzQkdRRXJBUmtCT3dFOUFUc0JGelVyQVIwQk93RUJBSUNBUUVCQVFFQkFRRUJBUUlDQXdNQ0FnRUJBUUVDQVFFQkFRQVBBUUVCQVFFQkFRRUJBUUVEL0FQOEFBUUFCQVA4QS93QUJRQUZBUUVCQVFFQkFBQUlBQUFDQUE0QUVBQUFuQUM4QUFBRTFPd0VkQVRzQkhRRTdBUjBCT3dFZEFTc0JIUUVwQVQwQkt3RTlBVHNCUFFFN0FUMEJLd0VCTlNzQkhRRTdBUUVBUUVCQVFJQ0FRRUJBUVA3QS9zQkFRRUJBZ0lCQVFBR0F3TURBd0FQQVFFQkFRRUJBUU1EQVFFQkFRTURBUUVCQVFQNUF3TURBQUFJQUFBQ0FBNEFFQUFBbkFDOEFBQUUxT3dFZEFTc0JIUUU3QVIwQk93RWRBU3NCSFFFcEFUMEJLd0U5QVRzQlBRRTdBVDBCT3dFVE5Tc0JIUUU3QVFJQVFFQkFRSUNBUUVCQVFQN0Evc0JBUUVCQWdJQkFRSURBd01EQUE4QkFRRUJBUUVCQXdNQkFRRUJBd01CQVFFQkEva0RBd01BQUFBTUFBQUNBQTRBRUFBQWZBQ2NBTHdBQUFUVTdBUjBCT3dFZEFUc0JIUUVyQVIwQktRRTlBU3NCUFFFN0FUMEJPd0VGTlNzQkhRRTdBUk0xS3dFZEFUc0JBUURBd0VCQVFFQkFRUDdBL3NCQVFFQkFRRUFCQUVCQVFFQ0F3TURBd0FQQVFFQkFnSURBd0VCQVFFREF3SUNBUUVCQVFQN0F3TURBQUFBREFBQUFnQU9BQkFBQUt3QXpBRHNBQUFFMU93RWRBVHNCUFFFN0FSMEJLd0VkQVRzQkhRRTdBUjBCS3dFZEFTa0JQUUVyQVQwQk93RTlBVHNCRnpVckFSMEJPd0VCTlNzQkhRRTdBUUVBZ0lCQVFFQkFRRUJBUUVCQVFFRCt3UDdBUUVCQVFFQkFnRUJBUUVBQkFNREF3TUFEd0VCQVFFQkFRRUJBUUVCQXdNQkFRRUJBd01DQWdFQkFRRUQrd01EQXdBQUFCQUFBQUlBRGdBUUFBQmNBSHdBbkFDOEFBQk0xS1FFZEFUc0JIUUVyQVIwQktRRTlBU3NCUFFFN0FRVTFLd0VkQVRzQkF6VTdBUjBCS3dFbE5Uc0JIUUVyQVlBQlFBRkFRRUJBUVA3QS9zQkFRRUJBQWdEQXdNREFnSUNBZ0lEK2dJQ0FnSUFDd0VCQVFNREFRRUJBUU1EQXdNREF3QUxBUUVCQVFFQkFRQUFEQUlBQkFBT0FBNEFBQndBUEFCY0FBQUUxT3dFZEFTc0JBVFVwQVIwQktRRUJOVHNCSFFFckFRR0FnSUNBZ1A4QUFZQUJnUDZBL29BQkFJQ0FnSUFCUUVCQVFBRkFRRUJBQVVCQVFFQUFBQU1BQUFDQUE0QURBQUFIQUI4QUx3QUFBVFU3QVIwQkt3RUJOU2tCSFFFN0FSMEJLd0VkQVNrQlBRRXJBVDBCT3dFRk5Tc0JIUUU3QVIwQk93RTlBU3NCQVlCQVFFQkEvd0FCUUFGQVFFQkFRUDdBL3NCQVFFQkFBWUNBZ0VCQWdJQkFRQUhBUUVCQUFVQkFRRURBd0VCQVFFREF3RUJBZ0lCQVFJQ0FBQUFBQWdBQUFJQURnQVFBQUJNQUl3QUFHUUU3QVJrQk93RVpBVHNCR1FFcEFUMEJLd0VCTlRzQkhRRTdBUjBCS3dFOUFTc0JnSURBd0lDQS9vRCtnRUJBQVFCQVFFQkFRRUJBUUFJQUFRRC9BUDhBQVFBQkFQN0Evc0JBUUFMQVFFQkFRRUJBUUFBQUFBQUNBQUFBZ0FPQUJBQUFFd0FqQUFBWkFUc0JHUUU3QVJrQk93RVpBU2tCUFFFckFRRTFPd0VkQVNzQkhRRXJBVDBCT3dHQWdNREFnSUQrZ1A2QVFFQUNBRUJBUUVCQVFFQkFBZ0FCQVA4QS93QUJBQUVBL3NEK3dFQkFBc0JBUUVCQVFFQkFBQUFBQUFJQUFBQ0FBNEFFQUFBVEFDc0FBQkUxT3dFZEFUc0JQUUU3QVJrQktRRTlBU3NCQVRVN0FSMEJPd0VkQVNzQlBRRXJBUjBCS3dFOUFUc0JnSURBd0lDQS9vRCtnRUJBQVFEQXdFQkFnSUJBUUlDQVFFQUJ3TURBd01EQS93RC9BRUJBQXNCQVFFQkFRRUJBUUVCQVFBQURBQUFBZ0FPQUJBQUFFd0FiQUNNQUFCa0JPd0VaQVRzQkdRRTdBUmtCS1FFOUFTc0JBVFU3QVIwQkt3RWxOVHNCSFFFckFZQ0F3TUNBZ1A2QS9vQkFRQUlBZ0lDQWdQNkFnSUNBZ0FJQUFRRC9BUDhBQVFBQkFQN0Evc0JBUUFMQVFFQkFRRUJBUUFBQUFBQUNBQUFBQUFPQUJBQUFId0F2QUFBUk5Uc0JIUUU3QVQwQk93RVpBU3NCSFFFcEFUMEJLUUU5QVNrQlBRRXJBUUUxT3dFZEFTc0JIUUVyQVQwQk93R0FnTURBZ0lCQVFQN0Evc0FCQUFFQS93RC9BRUJBQWdCQVFFQkFRRUJBUUFKQXdNREF3TUQrd1A3QVFFQkFRRUJBUUVBQ1FFQkFRRUJBUUVBQUFnQUFBQUFEZ0FRQUFCY0FId0FBR1FFN0FSMEJLUUVkQVRzQkhRRXJBUjBCS1FFZEFTc0JBVFVyQVIwQk93R0FnQUVBQVFCQVFFQkEvd0QvQUlDQUFvREF3TURBQWdBQ0FJQ0FRRUNBZ0VCQWdJQUNBSUNBZ0FBQUFBQURBQUFBQUFPQUJBQUFId0FuQUM4QUFCRTFPd0VkQVRzQlBRRTdBUmtCS3dFZEFTa0JQUUVwQVQwQktRRTlBU3NCQVRVN0FSMEJLd0VsTlRzQkhRRXJBWUNBd01DQWdFQkEvc0Qrd0FFQUFRRC9BUDhBUUVBQ0FJQ0FnSUQrZ0lDQWdJQUNRTURBd01EQS9zRCt3RUJBUUVCQVFFQkFBa0JBUUVCQVFFQkFBQU1BQUFDQUE0QUVBQUFmQUM4QU53QUFBVFU3QVIwQk93RWRBVHNCSFFFckFUMEJLd0VkQVNzQlBRRTdBVDBCT3dFRk5Tc0JIUUVyQVIwQk93RTlBU3NCQVRVcEFSMEJLUUVCQU1EQVFFQkFRSUNBd01DQWdFQkFRRUFCQUVCQVFFREF3RUJBL29BQlFBRkEvc0Qrd0FMQVFFQkFRRURBd0VCQVFFREF3RUJBUUVCQVFFQkFRRUFCd0VCQVFBQUFBQU1BQUFDQUE0QUVBQUFiQUNNQUt3QUFFelVwQVIwQk93RVpBU2tCUFFFckFUMEJPd0U5QVNrQlBRRXBBUUUxS3dFZEFUc0JBVFVwQVIwQktRR0FBVUFCUUVCQS9vRCtnRUJBUUVBQkFBRUEvd0QvQUFJQXdNREF3UDRBQVVBQlFQN0Evc0FDd0VCQVFQOEEvd0JBUUVCQVFFQkFRUDdBUUVCQUFzQkFRRUFBQWdBQUFJQURnQVFBQUM4QVB3QUFFelU3QVIwQk93RTlBVHNCSFFFckFSMEJPd0VkQVRzQkhRRXJBVDBCS3dFZEFTc0JQUUU3QVQwQk93RTlBU3NCQVRVckFSMEJLd0VkQVRzQlBRRXJBWUJBUU1EQVFFQkFRRUJBUUVDQWdNREFnSUJBUUVCQVFFQUJnRUJBUUVEQXdFQkFBOEJBUUVCQVFFQkFnSUJBUU1EQVFFQkFRTURBUUVDQWdQN0FRRUJBUUVCQVFBQUFBQUFDQUFBQWdBT0FCQUFBTXdBN0FBQVROVHNCSFFFN0FUMEJPd0VkQVNzQkhRRTdBUjBCT3dFWkFTa0JQUUVyQVQwQk93RTlBU2tCUFFFcEFUMEJPd0U5QVNzQkFUVXJBUjBCT3dHQVFFREF3RUJBUUVCQVFFQkEvb0QrZ0VCQVFFQUJBQUVBL3dEL0FFQkFRRUFDQU1EQXdNQUR3RUJBUUVCQVFFQkFRRUJBL3dEL0FFQkFRRUJBUUVCQVFFQkFRUDNBUUVCQUFBQUFBQUlBQUFBQUE0QUVBQUF6QUVNQUFBRTFPd0VkQVRzQkhRRTdBUjBCS3dFZEFTc0JIUUU3QVIwQkt3RTlBU3NCUFFFN0FUMEJLd0VkQVNzQlBRRTdBVDBCT3dFRk5Tc0JIUUVyQVIwQk93RTlBU3NCQVFEQXdFQkFRRUJBUUVCQWdJQ0FnRUJBUUVEQXdJQ0FRRUJBUUFFQVFFQkFRTURBUUVBRHdFQkFRRUJBd01CQVFFQkFRRUJBUUVCQWdJQkFRTURBUUVCQVFFQkFRRUJBUUFBQUFBQUNBQUFBQUFPQUJBQUFNd0E3QUFBVE5Ta0JIUUU3QVJrQkt3RWRBU3NCSFFFN0FSMEJLd0U5QVNzQlBRRTdBVDBCS3dFOUFTc0JQUUU3QVQwQktRRTlBU2tCQVRVckFSMEJPd0dBQVVBQlFFQkF3TUJBUUlDQWdJQkFRRUJBZ0lCQVFFQkFBUUFCQVA4QS93QUNBTURBd01BRHdFQkFRUDhBL3dCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFQN0FRRUJBQUFBQUFBRUFBQUNBQTRBRUFBQkhBQUFCTlRzQkhRRXJBUjBCT3dFZEFUc0JIUUVyQVQwQkt3RWRBU3NCSFFFN0FSMEJPd0U5QVRzQkhRRXJBUjBCS1FFOUFTc0JQUUVyQVQwQk93RTlBVHNCUFFFN0FUMEJPd0VDQUVCQVFFQ0FnRUJBZ0lDQWdFQkFRRUNBZ0lDQVFFRC9BUDhBUUVCQVFFQkFRRUJBUUVCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQUFBUUFBQUlBRGdBUUFBQ2NBQUFFMU93RWRBU3NCSFFFN0FSMEJLUUVkQVNrQkhRRXBBVDBCS3dFOUFUc0JQUUU3QVQwQk93RUNBRUJBUUVEQXdQN0Evc0FCUUFGQS9vRCtnRUJBUUVDQWdFQkFBOEJBUUVCQVFFQkF3TUJBUUVCQXdNQkFRRUJBQUFBQ0FBQUFnQU9BQkFBQVF3QkxBQUFCTlRzQkhRRTdBUjBCT3dFZEFTc0JQUUVyQVIwQkt3RWRBVHNCSFFFN0FUMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFTc0JQUUU3QVQwQk93RTlBU3NCUFFFN0FRVTFLd0VkQVRzQkFRREF3RUJBUUVDQWdJQ0FRRUJBUUlDQWdJQkFRUDhBL3dCQVFFQkFRRUJBUUVCQVFFQUJBRUJBUUVBRHdFQkFRSUNBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBQUlBQUFDQUE0QUVBQUFqQUNzQUFBRTFPd0VkQVRzQkhRRTdBUjBCS1FFZEFTa0JIUUVwQVQwQkt3RTlBVHNCUFFFN0FRVTFLd0VkQVRzQkFRREF3RUJBUUVEK3dQN0FBVUFCUVA2QS9vQkFRRUJBUUVBQkFFQkFRRUFEd0VCQVFFQkFRRURBd0VCQVFFREF3SUNBUUVCQVFBQUFBZ0FBQUlBRGdBUUFBRGNBUHdBQUFUVXBBUjBCT3dFZEFTc0JQUUVyQVIwQkt3RWRBVHNCSFFFN0FUMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFTc0JQUUU3QVQwQk93RVROVHNCSFFFckFRRUFBUUFCQUVCQWdJQ0FnRUJBUUVDQWdJQ0FRRUQvQVA4QVFFQkFRRUJBUUVDQWdJQ0FnQUxBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQVVCQVFFQUFBQUFBQWdBQUFJQURnQVFBQUJjQUh3QUFFelVwQVIwQktRRWRBU2tCSFFFcEFUMEJLd0U5QVRzQkFUVTdBUjBCS3dHQUFZQUJnUDdBL3NBQlFBRkEvb0QrZ0VCQVFFQUJBSUNBZ0lBQ3dFQkFRTURBUUVCQVFNREFBVUJBUUVBQUFBQUFBUUFBQUlBRGdBUUFBRWNBQUJNMU93RWRBVHNCUFFFN0FSMEJLd0VkQVRzQkhRRXJBVDBCS3dFZEFTc0JIUUU3QVIwQk93RTlBVHNCSFFFckFSMEJLUUU5QVNzQlBRRXJBVDBCT3dFOUFUc0JQUUVyQVlDQWdJQ0FnSUJBUUVCQWdJQ0FnRUJBUUVDQWdJQ0FRRUQvQVA4QVFFQkFRRUJBUUVCQVFBUEFRRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQWdJQUFBQUFCQUFBQWdBT0FCQUFBTHdBQUV6VTdBUjBCT3dFOUFUc0JIUUVyQVIwQk93RWRBU2tCSFFFcEFSMEJLUUU5QVNzQlBRRTdBVDBCT3dFOUFTc0JnSUNBUUVDQWdFQkFnSUQrd1A3QUFVQUJRUDZBL29CQVFFQkFRRUJBUUFQQVFFQkFRRUJBUUVCQVFFREF3RUJBUUVEQXdFQkFRRUFBQUFBQ0FBQUFnQU9BQkFBQUt3QTdBQUFUTlRzQkhRRTdBVDBCT3dFZEFTc0JIUUU3QVIwQk93RWRBU3NCSFFFckFSMEJLUUVaQVRzQlBRRXJBUUUxS3dFZEFUc0JQUUU3QVQwQkt3R0FnSUJBUUlDQVFFQkFRRUJBUUVCQVFQN0Evc0NBZ0VCQUFZQ0FnSUNBUUVCQVFBUEFRRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQUJRQUZBUUVEK3dFREF3RUJBUUVBQUFBQUFBd0FBQUlBRUFBUUFBQXNBSHdBbkFBQUJOVHNCSFFFckFSMEJLd0VCTlRzQkdRRXBBVDBCS3dFOUFUc0JQUUU3QVJFMUt3RWRBVHNCQXdDQWdFQkFRRUQrZ0lDQS93RC9BRUJBUUVDQWdFQkFRRUFEUU1DQWdFQkFBUUNBL2tEK1FFQkF3TUJBUVA3QXdNREFBQUFBQUFJQUFBQ0FBNEFFQUFBZkFEY0FBQk0xS1FFZEFUc0JIUUU3QVIwQkt3RWRBU3NCSFFFcEFUMEJLd0U5QVRzQkpUVXJBUjBCT3dFZEFTc0JIUUU3QVQwQk93RTlBU3NCZ0FFQUFRQkFRRUJBUUVCQVFQOEEvd0JBUUVCQUFZQkFRRUJBUUVCQVFFQkFRRUFEUU1CQVFFQkF3TUJBUUVCQXdNQkFRTUJBZ0lCQVFJQ0FRRURBd0FBQ0FBQUFnQU9BQkFBQUh3QW5BQUFCTlRzQkhRRTdBUjBCS3dFWkFTa0JQUUVyQVQwQk93RTlBVHNCUFFFN0FSRTFLd0VkQVRzQkFnQ0FnRUJBUUVEK3dQN0FRRUJBUUlDQVFFQ0FnSUNBQThCQVFFQkFRUDdBL3NCQVFNREFRRUJBUVA1QXdNREFBQUlBQUFDQUE0QUVBQUFYQUI4QUFCa0JLUUVkQVNrQkhRRXBBUjBCS1FFZEFTa0JIUUVwQVJNMUtRRWRBU2tCQWNBQndQN0Evc0FCQUFFQS93RC9BQUZBQVVEK1FQNUFnQUZBQVVEK3dQN0FBY0FCUUVCQVFFQkFRRUJBUUVBRFFFQkFRQUFEQUFBQWdBT0FCQUFBR3dBakFDc0FBQk0xS1FFZEFUc0JIUUVwQVIwQktRRWRBU2tCUFFFckFUMEJPd0VGTlNzQkhRRTdBUUUxS1FFZEFTa0JnQUZBQVVCQVFQN0Evc0FCQUFFQS9zRCt3RUJBUUVBQ0FNREF3TUQrQUFGQUFVRCt3UDdBQXNCQVFFQ0FnRUJBUUVCQVFNREFRRUJBUUFIQVFFQkFBQUFBQUFFQUFBQ0FBNEFFQUFBdkFBQVROVHNCSFFFN0FUMEJPd0VkQVNzQkhRRTdBUjBCS1FFZEFTa0JIUUVwQVIwQktRRWRBU2tCR1FFN0FUMEJLd0dBUUVEQXdFQkFRRUNBZ1A3QS9zQUJBQUVBL3dEL0FBRkFBVUQrUVA1QWdJQkFRQVBBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFGQUFVQkFRQUFDQUFBQWdBT0FCQUFBTXdBN0FBQVROVHNCSFFFN0FUMEJPd0VkQVNzQkhRRTdBUjBCT3dFZEFTa0JIUUVwQVIwQktRRTlBU3NCUFFFN0FUMEJPd0U5QVNzQkFUVXJBUjBCT3dHQVFFREF3RUJBUUVCQVFFQkEvc0Qrd0FFQUFRRCt3UDdBUUVCQVFFQkFRRUFDQU1EQXdNQUR3RUJBUUVCQVFFQkFRRUJBZ0lCQVFFQkFRRURBd0VCQVFFRCt3RUJBUUFBQUFnQUFBSUFEZ0FRQUFCY0FId0FBR1FFcEFSMEJLUUVkQVNrQkhRRXBBUjBCS1FFZEFTa0JBVFU3QVIwQkt3RUJ3QUhBL3NEK3dBRUFBUUQvQVA4QUFVQUJRUDVBL2tBQmdJQ0FnSUFCd0FGQVFFQkFRRUJBUUVCQVFBTkFRRUJBQUFBQUFBTUFBQUNBQTRBRUFBQWJBQ01BS3dBQUV6VXBBUjBCT3dFZEFTa0JIUUVwQVIwQktRRTlBU3NCUFFFN0FRVTFLd0VkQVRzQkFUVTdBUjBCS3dHQUFVQUJRRUJBL3NEK3dBRUFBUUQrd1A3QVFFQkFRQUlBd01EQXdQOEFnSUNBZ0FMQVFFQkFnSUJBUUVCQVFFREF3RUJBUUVBQndFQkFRQUFBQUFBQkFBQUFBQU9BQkFBQUx3QUFHUUVwQVIwQktRRWRBU2tCSFFFcEFSMEJLUUVkQVNzQkhRRXJBUjBCT3dFZEFTc0JQUUVyQVQwQk93RTlBU3NCQWNBQndQN0Evc0FCQUFFQS93RC9BQUZBQVVEQXdFQkFnSUNBZ0VCQVFFREF3QUxBQVVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFBQWdBQUFBQURnQVFBQURNQU93QUFFelVwQVIwQk93RWRBU2tCSFFFcEFSMEJLd0VkQVNzQkhRRTdBUjBCS3dFOUFTc0JQUUU3QVQwQkt3RTlBU3NCUFFFN0FRVTFLd0VkQVRzQmdBRkFBVUJBUVA3QS9zQUJBQUVBZ0lCQVFJQ0FnSUJBUUVCQWdJQkFRRUJBQWdEQXdNREFBOEJBUUVDQWdFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFNREFRRUJBUUFBQUFBRUFBQUNBQTRBRUFBQXZBQUFUTlRzQkhRRTdBVDBCT3dFZEFTc0JIUUU3QVIwQktRRWRBU2tCSFFFcEFSMEJLUUVkQVNrQkdRRTdBVDBCS3dHQWdJQkFRSUNBUUVDQWdQN0Evc0FCQUFFQS93RC9BQUZBQVVEK1FQNUFnSUJBUUFQQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBRkFBVUJBUUFBQ0FBQUFnQU9BQkFBQU13QTdBQUFUTlRzQkhRRTdBVDBCT3dFZEFTc0JIUUU3QVIwQk93RWRBU2tCSFFFcEFSMEJLUUU5QVNzQlBRRTdBVDBCT3dFOUFTc0JBVFVyQVIwQk93R0FnSUJBUUlDQVFFQkFRRUJBL3NEK3dBRUFBUUQrd1A3QVFFQkFRRUJBUUVBQ0FNREF3TUFEd0VCQVFFQkFRRUJBUUVCQWdJQkFRRUJBUUVEQXdFQkFRRUQrd0VCQVFBQUFBZ0FBQUlBRGdBUUFBQ3NBTXdBQUFUVTdBUjBCT3dFZEFUc0JIUUVwQVIwQk93RTlBU3NCUFFFN0FSMEJLUUU5QVNzQlBRRTdBVDBCT3dFRk5Tc0JIUUU3QVFFQXdNQkFRRUJBL3NEK3dNREFRRURBd1A2QS9vQkFRRUJBUUVBQkFFQkFRRUFEd0VCQVFFQkFRRURBd0VCQVFFREF3RUJBd01DQWdFQkFRRUFBQUFBQUF3QUFBQUFEZ0FRQUFDY0FMd0EzQUFBQk5Uc0JIUUU3QVIwQk93RVpBU3NCSFFFcEFUMEJLUUU5QVNrQlBRRXJBVDBCT3dFOUFUc0JCVFVyQVIwQk93RVROU3NCSFFFN0FRRUF3TUJBUUVCQVFFRCt3UDdBQVFBQkFQOEEvd0JBUUVCQVFFQUJBRUJBUUVDQXdNREF3QVBBUUVCQVFFRCt3UDdBUUVCQVFFQkFRRUNBZ0lDQVFFQkFRUDhBZ0lDQUFBQUFBQUVBQUFDQUE0QUVBQUEzQUFBVE5Uc0JIUUU3QVQwQk93RWRBU3NCSFFFN0FSMEJLUUVkQVRzQlBRRXJBVDBCT3dFZEFTa0JQUUVyQVQwQk93RTlBVHNCUFFFckFZQkFRTURBUUVCQVFJQ0Evc0Qrd01EQVFFREF3UDZBL29CQVFFQkFRRUJBUUFQQVFFQkFRRUJBUUVCQVFFREF3RUJBUUVEQXdFQkF3TUJBUUVCQUFBSUFBQUFBQTRBRUFBQXpBRHNBQUJNMU93RWRBVHNCUFFFN0FSMEJLd0VkQVRzQkdRRXJBUjBCS1FFOUFTa0JQUUVwQVQwQkt3RTlBVHNCUFFFN0FUMEJLd0VCTlNzQkhRRTdBWUJBUU1EQVFFQkFRSUNBUUVEK3dQN0FBUUFCQVA4QS93QkFRRUJBUUVCQVFBSUF3TURBd0FQQVFFQkFRRUJBUUVCQS9zRCt3RUJBUUVCQVFFQkFnSUJBUUVCQS9vQ0FnSUFBQUFBQUFnQUFBSUFEZ0FRQUFCOEFKd0FBRXpVcEFSMEJLUUVkQVRzQlBRRXJBVDBCT3dFZEFTa0JQUUVyQVQwQk93RUJOVHNCSFFFckFZQUJnQUdBL3NEK3dNREFRRURBd1A2QS9vQkFRRUJBQVFDQWdJQ0FBc0JBUUVEQXdFQkFRRURBd0VCQXdNQUJRRUJBUUFBQUF3QUFBQUFEZ0FRQUFCc0FJd0FyQUFBVE5Ta0JHUUVyQVIwQktRRTlBU2tCUFFFcEFUMEJLd0U5QVRzQkJUVXJBUjBCT3dFQk5Uc0JIUUVyQVlBQmdBR0FRRUQrd1A3QUFRQUJBUDhBL3dCQVFFQkFBZ0RBd01EQS93Q0FnSUNBQXNCQS9zRCt3RUJBUUVCQVFFQkFnSUNBZ0lDQUFrQkFRRUFBQUFFQUFBQUFBNEFFQUFBL0FBQUJOU2tCSFFFcEFSMEJLd0VkQVRzQkhRRTdBVDBCS3dFOUFUc0JIUUVyQVIwQkt3RWRBU3NCUFFFN0FUMEJLd0U5QVNzQlBRRXJBVDBCT3dFOUFUc0JBUUFCUUFGQS93RC9BRUJBUUVDQWdFQkF3TUNBZ0VCQWdJQkFRRUJBUUVCQVFFQkFRRUFEd0VCQVFFQkFnSUJBUUVCQVFFREF3RUJBUUVCQVFFQkFRRUJBUUlDQVFFQUFBQUFBQWdBQUFBQURnQVFBQUNzQU13QUFBVFU3QVIwQkt3RWRBVHNCR1FFckFSMEJLUUU5QVNrQlBRRXBBVDBCS3dFOUFUc0JQUUU3QVQwQk93RUJOU3NCSFFFN0FRR0FnSUJBUU1EQVFFRCt3UDdBQVFBQkFQOEEvd0JBUUVCQVFFQkFRQUVBd01EQXdBUEFRRUJBUUVEK3dQN0FRRUJBUUVCQVFFQ0FnRUJBUUVEK2dJQ0FnQUFBQUFJQUFBQ0FBNEFFQUFBWEFDY0FBQUUxT3dFZEFUc0JHUUVyQVQwQkt3RWRBU3NCR1FFN0FRVTFLd0VkQVNzQkhRRTdBVDBCS3dFQkFNREFnSUNBZ01EQWdJQ0FnQUVBUUVCQVFNREFRRUFEd0VCQVFQNkEvb0NBZ0lDQUFZQUJnRUJBUUVDQWdJQ0FBQUFBQUFFQUFBQ0FBNEFFQUFBckFBQUJOVHNCSFFFN0FSMEJLd0U5QVNzQkhRRXJBUjBCS1FFZEFUc0JIUUVyQVQwQkt3RWRBU3NCR1FFN0FRRUF3TUJBUUlDQVFFQkFRQUVBQVFCQVFJQ0F3TUNBZ0lDQUE4QkFRRUJBUUVCQVFFQkFRRUJBd01EQXdNREFBWUFCZ0FBQUFBQUNBQUFBZ0FPQUJBQUFGd0FmQUFBWkFUc0JIUUU3QVQwQk93RVpBU3NCUFFFckFSMEJLd0VCTlNzQkhRRTdBWUNBd01DQWdJQ0F3TUNBZ0FLQXdNREF3QUpBQWNCQVFFQkEva0QrUU1EQXdNQUNRRUJBUUFBQUFRQUFBSUFEZ0FRQUFDTUFBQk0xT3dFZEFUc0JIUUU3QVIwQk93RVpBU3NCR1FFckFSa0JLd0VaQVNzQlBRRTdBWUNBZ0VCQWdJQkFRSUNBZ0lDQWdFQkFRRUFEd0VCQVFFQkFRRUQvQVA4QUFRQUJBUDhBL3dBQlFBRkFRRUFBQWdDQUFJQURnQVFBQUNzQU13QUFBVFU3QVIwQk93RTlBVHNCSFFFckFSMEJPd0VkQVNzQkhRRTdBUjBCS1FFOUFUc0JQUUVyQVQwQk93RUZOU3NCSFFFN0FRRUFnSUNBZ0VCQVFFQkFRSUNBZ0lEK2dQNkFnSUNBZ0VCQUFRQ0FnSUNBQThCQVFFQkFRRUJBUUVCQVFNREFRRUJBUU1EQWdJQkFRRUJBQUFBQ0FJQUFnQU9BQkFBQUV3QXpBQUFCTlRzQkhRRTdBUjBCS1FFOUFUc0JQUUVyQVJFMU93RWRBVHNCUFFFN0FSMEJLd0VkQVNzQlBRRXJBUjBCS3dFOUFUc0JBUURBd0lDQS9vRCtnSUNBUUVDQWdJQ0FRRUJBUUlDQWdJQkFRRUJBQWtCQXdNQkFRRUJBZ0lBQndFQkFRRUJBUUVCQVFFQkFRRUJBUUFBQUFBSUFnQUNBQTRBRUFBQVhBQjhBQUJNMUtRRWRBU3NCSFFFN0FSMEJLUUU5QVRzQlBRRXJBUkUxS1FFZEFTa0JnQUdBQVlDQWdJQ0Evb0QrZ0lDQWdJQUJnQUdBL29EK2dBTEFRRUJBd01CQVFFQkF3TUFCUUVCQVFBQUFBZ0NBQUlBRGdBUUFBQk1BR3dBQUFUVTdBUmtCT3dFZEFTa0JQUUU3QVQwQkt3RUROU2tCSFFFcEFRRUF3TUNBZ1A2QS9vQ0FnRUJBZ0FGQUFVRCt3UDdBQXNCQS93RC9BRUJBUUVEQXdBRkFRRUJBQUFBQUFBRUFnQUNBQTRBRUFBQXZBQUFCTlRzQkhRRTdBVDBCT3dFZEFTc0JIUUU3QVIwQkt3RWRBVHNCSFFFcEFUMEJPd0U5QVNzQlBRRTdBVDBCS3dFQkFFQkFnSUJBUUVCQWdJQ0FnSUNBL29EK2dJQ0FnSUNBZ0VCQUE4QkFRRUJBUUVCQVFFQkFRTURBUUVCQVFNREFRRUJBUUFBQUFRQ0FBSUFEZ0FRQUFDTUFBQk0xT3dFZEFUc0JQUUU3QVIwQkt3RVpBVHNCSFFFcEFUMEJPd0U5QVNzQlBRRXJBWUJBUU1EQVFFQkFRSUNBL29EK2dJQ0FRRUJBUUFQQVFFQkFRRUJBUVA3QS9zQkFRRUJBd01DQWdBQUJBSUFBQUFPQUJBQUFMd0FBRXpVcEFSMEJLd0VkQVRzQkhRRXJBUjBCS3dFZEFUc0JIUUVyQVQwQkt3RTlBVHNCUFFFckFUMEJPd0U5QVNzQmdBR0FBWUNBZ0lDQXdNQkFRSUNBZ0lCQVFFQkFnSUNBZ0lDQUE4QkFRRURBd0VCQVFFQkFRRUJBUUVCQVFFQkFRRURBd0FBQUFBSUFnQUFBQTRBRUFBQXJBRE1BQUFFMU93RWRBVHNCSFFFckFSMEJLd0VkQVRzQkhRRXJBVDBCS3dFOUFUc0JQUUVyQVQwQk93RTlBU3NCRXpVN0FSMEJLd0VCQU1EQWdJREF3RUJBZ0lDQWdFQkFRRUNBZ0lDQVFFQ0FnSUNBZ0FMQVFJQ0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBVUJBUUVBQUFBQUFBZ0NBQUlBRGdBUUFBQmNBSHdBQUV6VXBBUjBCS3dFZEFUc0JIUUVwQVQwQk93RTlBU3NCQVRVN0FSMEJLd0dBQVlBQmdJQ0FnSUQrZ1A2QWdJQ0FnQUVBZ0lDQWdBTEFRRUJBd01CQVFFQkF3TUFCUUVCQVFBQUFBQUFCQUlBQWdBT0FBd0FBRXdBQUFUVTdBUmtCT3dFZEFTa0JQUUU3QVQwQkt3RUJBTURBZ0lEK2dQNkFnSUJBUUFMQVFQOEEvd0JBUUVCQXdNQUFBQUFBQWdBQUFJQURnQVFBQUE4QUp3QUFBUkU3QVJrQkt3RWRBU2tCUFFFcEFRRTFLUUVkQVNzQkhRRTdBUjBCS1FFOUFUc0JQUUVyQVFLQWdJQkFRUDdBL3NBQkFBRUEvWUFCQUFFQVFFQkFRUDhBL3dCQVFFQkFBb0FCZ1A2QS9vQkFRRUJBQXNCQVFFREF3RUJBUUVEQXdBQUFBQUFFQUFBQUFBT0FCQUFBRXdBZkFDY0FMd0FBQVRVN0FSa0JLd0VkQVNrQlBRRTdBUmtCS3dFbE5Uc0JHUUVyQVQwQkt3RUJOVHNCSFFFckFTVTFPd0VkQVNzQkFnREF3RUJBL3dEL0FNREFRRUQrQU1EQWdJQkFRQUtBZ0lDQWdQNEFnSUNBZ0FMQVFQN0Evc0JBUUVCQUFRQUJBRUJBL3dEL0FNREFBVUJBUUVCQVFFQkFBQUFBQVFBQUFJQURnQVFBQUNjQUFBRTFPd0VkQVRzQkdRRXJBUjBCS1FFOUFTc0JQUUU3QVIwQk93RVpBU3NCSFFFckFUMEJPd0VCZ01EQVFFQkFRUDdBL3NCQVFJQ0F3TUJBUUlDQVFFQUR3RUJBUVA3QS9zQkFRRUJBUUVCQVFBRkFBVUJBUUVCQUFBQUNBSUFBQUFPQUJBQUFFd0FyQUFBQk5Uc0JHUUVyQVIwQktRRTlBVHNCUFFFckFSRTFPd0VkQVRzQkhRRXJBVDBCS3dFZEFTc0JQUUU3QVFHQXdNQkFRUDhBL3dEQXdFQkF3TUJBUUlDQVFFQ0FnRUJBQWtCQS93RC9BRUJBUUVEQXdBSEFRRUJBUUVCQVFFQkFRRUFBQWdBQUFBQURnQVFBQURjQVF3QUFHUUU3QVIwQk93RTlBVHNCUFFFN0FSMEJLd0VkQVNzQkhRRTdBUjBCT3dFZEFUc0JIUUVyQVIwQkt3RWRBU3NCUFFFN0FUMEJLd0VsTlNzQkhRRTdBVDBCS3dHQWdFQkFRRUNBZ0VCQVFFQkFRRUJBUUVEQXdFQkFnSUJBUUlDQUFZQkFRSUNBUUVBQ2dBR0FnSUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFREFRSUNBUUVBQUFnQUFBQUFEZ0FRQUFDOEFPd0FBR1FFN0FSMEJPd0U5QVRzQkhRRXJBUjBCS3dFZEFUc0JIUUU3QVIwQkt3RWRBU3NCSFFFckFUMEJPd0U5QVNzQkpUVXJBUjBCT3dFOUFTc0JnSUNBZ01EQVFFQkFRRUJBUUVEQXdFQkFnSUJBUUlDQUFZQkFRSUNBUUVBQ2dBR0FnSUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUU1CQWdJQkFRQUFCQUFBQWdBT0FBd0FBTHdBQUdRRTdBUjBCT3dFOUFUc0JQUUU3QVIwQkt3RWRBU3NCSFFFN0FSMEJPd0VkQVNzQlBRRXJBVDBCS3dFZEFTc0JnSUNBZ0VCQWdJQkFRRUJBUUVCQVFJQ0FRRUNBZ0lDQUFjQUJRSUNBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBZ0lBQUFRQ0FBSUFEZ0FRQUFCY0FBQUUxT3dFZEFTc0JIUUVyQVJrQktRRWRBU2tCR1FFN0FRSUFRRUJBUUVCQUFRQUJBUDZBL29EQXdBUEFRRUJBUUVEL0FQOEFRRUFCZ0FHQUFBQUFBQUVBQUFDQUF3QUVBQUFqQUFBQk5Uc0JIUUVyQVIwQk93RVpBVHNCSFFFcEFUMEJPd0U5QVNzQlBRRTdBVDBCT3dFQmdFQkFRRUJBUUlDQS9vRCtnSUNBUUVCQVFFQkFBOEJBUUVCQVFQOEEvd0JBUUVCQXdNQkFRRUJBQUFBQUFBRUFnQUFBQTRBRUFBQWJBQUFURVRzQkdRRXBBUjBCS3dFZEFTc0JIUUVyQVQwQk93RTlBU3NCZ0lDQUFRQUJBSUNBUUVDQWdFQkFnSUFDZ0FHQS9zRCt3RUJBUUVCQVFFQkFRRUFBQUFBQUFRQ0FBQUFEZ0FRQUFDTUFBQUUxT3dFWkFUc0JIUUVyQVIwQkt3RWRBU3NCUFFFN0FUMEJLd0U5QVRzQkdRRXJBUUVBd01DQWdJQ0FRRUNBZ0VCQWdJQ0FnRUJBQThCQS9zRCt3RUJBUUVCQVFFQkFRRUJBUUFFQUFRQUFBQUFBQWdDQUFJQURnQVFBQUFzQUZ3QUFBVFU3QVIwQkt3RWRBU3NCQlJFN0FSa0JLUUVkQVNrQkFvQ0FnRUJBUUVEK0FJQ0FBUUFCQVA2QS9vQURRTUNBZ0VCQVFBSEEvb0QrZ0VCQUFBSUFBQUNBQTRBRUFBQUxBQjhBQUFFMU93RWRBU3NCSFFFckFRRTFPd0VaQVRzQkhRRXBBVDBCT3dFWkFTc0JBb0NBZ0VCQVFFRCtBTURBZ0lEK2dQNkFnSUJBUUFOQXdJQ0FRRUFCUUVEK2dQNkFRRUJBUUFGQUFVQUFBZ0NBQUlBRGdBUUFBQWNBRXdBQUFUVTdBUjBCS3dFbEVUc0JHUUVwQVIwQktRRUNBSUNBZ0lEK2dJQ0FBUUFCQVA2QS9vQUNnSUNBZ0VBQndQNkEvb0JBUUFBQ0FBQUFnQU9BQkFBQUJ3QWJBQUFCTlRzQkhRRXJBUUUxT3dFWkFUc0JIUUVwQVQwQk93RVpBU3NCQW9DQWdJQ0EvZ0RBd0lDQS9vRCtnSUNBUUVBQ2dJQ0FnQUhBUVA2QS9vQkFRRUJBQVVBQlFBQUJBQUFBZ0FPQUJBQUFHd0FBRXpVN0FSMEJPd0VkQVNzQkhRRXBBUjBCS1FFOUFTc0JQUUU3QVlDQWdFQkFRRUFCQUFFQS9vRCtnRUJBUUVBRFFNQ0FnRUJBd01CQVFNREFRRUFBQVFDQUFJQURnQVFBQUNNQUFBRTFPd0VkQVRzQkhRRXJBUjBCT3dFZEFTa0JQUUU3QVQwQkt3RTlBVHNCUFFFckFRRUF3TUJBUUVCQWdJRCtnUDZBZ0lCQVFFQkFRRUFEd0VDQWdFQkF3TUJBUUVCQWdJQkFRSUNBQUFBQkFBQUFnQU9BQkFBQUx3QUFBVFU3QVIwQkt3RWRBU3NCSFFFN0FSMEJPd0U5QVRzQkdRRXJBVDBCS3dFOUFTc0JIUUVyQVJrQk93RTlBVHNCQWdCQVFFQkFRRUJBUUVCQWdJREF3RUJBUUVDQWdNREFRRUFEd0VCQVFFQkFRRUJBUUlDQS9zRCt3RUJBUUVDQWdBRkFBVUJBUUFBQUFBQUJBQUFBZ0FPQUJBQUFJd0FBQVRVN0FSMEJLd0VkQVRzQkhRRTdBUmtCS3dFWkFTc0JHUUVyQVJrQk93RTlBVHNCQWdCQVFFQkFnSUJBUUlDQXdNQ0FnTURBUUVBRHdFQkFRRUJBUUVEL0FQOEFBUUFCQVA4QS93QUJRQUZBUUVBQUFBQUFBUUFBQUFBRGdBUUFBRE1BQUJrQk93RWRBVHNCSFFFN0FUMEJPd0VaQVNzQkhRRXJBUjBCS3dFOUFUc0JQUUU3QVQwQkt3RTlBU3NCUFFFckFSMEJLd0hBd0VCQVFFQ0FnSUNBUUVDQWdFQkFnSUJBUUVCQVFFQ0FnQUtBQVlCQVFFQkFnSUQrZ1A2QVFFQkFRRUJBUUVCQVFFQkFRRURBd0FBQUFBRUFBQUFBQTRBRGdBQWpBQUFaQVNrQkhRRTdBUmtCS3dFZEFTc0JIUUVyQVQwQk93RTlBVHNCR1FFckFSa0JLd0VCZ0FHQVFFQ0FnRUJBZ0lCQVFJQ0F3TUNBZ0FKQUFVQkFRUDhBL3dCQVFFQkFRRUJBUUFFQUFRRC9BUDhBQUFJQUFBQ0FBNEFFQUFBckFEY0FBQk0xT3dFZEFUc0JQUUU3QVIwQkt3RWRBVHNCR1FFckFUMEJLd0U5QVNzQkhRRXJBUmtCT3dFOUFTc0JBVFVyQVIwQk93RWRBVHNCZ0lDQVFFQ0FnRUJBZ0lEQXdFQkFRRUNBZ0lDQVFFQUNBSUNBUUVCQVFBUEFRRUJBUUVCQVFFQkEvc0Qrd0VCQVFFQ0FnQUZBQVVCQVFQOEFnRUJBUUVBQUFBQUFBUUFBQUlBRGdBUUFBQ3NBQUJNMU93RWRBVHNCUFFFN0FSMEJLd0VkQVRzQkhRRTdBUmtCS3dFWkFTc0JHUUVyQVJrQk93RTlBU3NCZ0lDQVFFQ0FnRUJBUUVCQVFJQ0F3TUNBZ0lDQVFFQUR3RUJBUUVCQVFFQkFRRUJBL3dEL0FBRUFBUUQvQVA4QUFVQUJRRUJBQUFFQUFBQ0FBNEFFQUFBZkFBQVJOVHNCSFFFcEFSMEJPd0VaQVNzQkdRRXJBUmtCS3dFWkFTc0JIUUVyQVlDQUFRQUJBRUJBZ0lCQVFJQ0FRRUJBUUFOQXdJQ0FRRUQvQVA4QUFRQUJBUDhBL3dBQlFBRkFRRUFBQUFBQUFRQUFBQUFEZ0FRQUFDc0FBQmtCT3dFZEFUc0JIUUU3QVQwQk93RVpBU3NCSFFFcEFUMEJPd0U5QVNzQlBRRXJBVDBCS3dFZEFTc0J3TUJBUUVCQWdJQkFRUDhBL3dEQXdFQkFRRUJBUUlDQUFvQUJnRUJBUUVDQWdQNUEva0JBUUVCQWdJQkFRRUJBd01BQUFRQUFBQUFEZ0FPQUFCc0FBQmtCS1FFZEFUc0JHUUVyQVIwQktRRTlBVHNCR1FFckFSa0JLd0VCZ0FHQVFFQkFRUDhBL3dEQXdNREFnSUFDUUFGQVFFRCt3UDdBUUVCQVFBRkFBVUQvQVA4QUFBQUFBd0FBQUlBRGdBUUFBQmNBSHdBbkFBQVROU2tCSFFFN0FSMEJLd0VkQVNrQlBRRXJBVDBCT3dFRk5Tc0JIUUU3QVFFMUtRRWRBU2tCZ0FGQUFVQkFRRUJBL3NEK3dFQkFRRUFDQU1EQXdNRCtBQUZBQVVEK3dQN0FBc0JBUUVEQXdFQkFRRURBd01EQXdNQUN3RUJBUUFBQUFBQURBQUFBZ0FPQUJBQUFGd0FmQUNjQUFCTTFLUUVkQVRzQkhRRXJBUjBCS1FFOUFTc0JQUUU3QVFVMUt3RWRBVHNCQVRVcEFSMEJLUUdBQVVBQlFFQkFRRUQrd1A3QVFFQkFRQUlBd01EQXdQNEFBVUFCUVA3QS9zQUN3RUJBUU1EQVFFQkFRTURBd01EQXdBTEFRRUJBQUFBQUFBSUFBQUNBQTRBRUFBQXZBRGNBQUJNMU93RWRBVHNCUFFFN0FSMEJLd0VkQVRzQkhRRTdBUjBCS3dFZEFTa0JQUUVyQVQwQk93RTlBVHNCUFFFckFRRTFLd0VkQVRzQmdFQkF3TUJBUUVCQVFFQkFRRUJBL3NEK3dFQkFRRUJBUUVCQUFnREF3TURBQThCQVFFQkFRRUJBUUVCQVFNREFRRUJBUU1EQVFFQkFRUDVBd01EQUFBQUNBQUFBZ0FPQUJBQUFMd0EzQUFBVE5Uc0JIUUU3QVQwQk93RWRBU3NCSFFFN0FSMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFUc0JQUUU3QVQwQkt3RUJOU3NCSFFFN0FZQkFRTURBUUVCQVFFQkFRRUJBUVA3QS9zQkFRRUJBUUVCQVFBSUF3TURBd0FQQVFFQkFRRUJBUUVCQVFFREF3RUJBUUVEQXdFQkFRRUQrUU1EQXdBQUFBZ0FBQUlBRGdBUUFBRE1BT3dBQUFUVTdBUjBCS3dFZEFUc0JQUUU3QVQwQk93RWRBU3NCSFFFN0FSMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFUc0JQUUU3QVFFMUt3RWRBVHNCQVFCQVFFQkFnSUJBUUVCQVFFQkFRRUJBUUVEK3dQN0FRRUJBUUVCQUFZREF3TURBQThCQVFFQkFRRUJBUUVCQVFFQkFRRURBd0VCQVFFREF3SUNBL2tEQXdNQUFBZ0FBQUlBRGdBUUFBRE1BT3dBQUFUVTdBUjBCS3dFZEFUc0JQUUU3QVQwQk93RWRBU3NCSFFFN0FSMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFUc0JQUUU3QVFFMUt3RWRBVHNCQVFCQVFFQkFnSUJBUUVCQVFFQkFRRUJBUUVEK3dQN0FRRUJBUUVCQUFZREF3TURBQThCQVFFQkFRRUJBUUVCQVFFQkFRRURBd0VCQVFFREF3SUNBL2tEQXdNQUFBZ0FBQUlBRGdBUUFBQjhBSndBQUV6VXBBUjBCS3dFZEFUc0JIUUVyQVIwQk93RWRBU2tCUFFFckFSa0JPd0VCRVNzQkdRRTdBWUFCZ0FHQWdJQ0FnSUNBZ0lEK2dQNkFRRUJBUUFFQVFFQkFRQVBBUUVCQWdJQkFRSUNBUUVCQVFBRkFBVUQrd0FGQS9zRCt3QUFBQUFNQUFBQ0FBNEFEQUFBYkFDTUFLd0FBRXpVcEFSMEJPd0VkQVNzQkhRRTdBUjBCS1FFOUFTc0JQUUU3QVFVMUt3RWRBVHNCQVRVckFSMEJPd0dBQVVBQlFFQkF3TUNBZ1A3QS9zQkFRRUJBQVFCQVFFQkFBUUJBUUVCQUFzQkFRRUNBZ0VCQVFFQkFRTURBd01EQXdBRkFRRUJBQUFBQUFBSUFBQUNBQTRBRUFBQXpBRHNBQUFFMU93RWRBU3NCSFFFN0FSMEJPd0VkQVNzQkhRRTdBUjBCT3dFZEFTc0JQUUVyQVQwQkt3RWRBU3NCR1FFN0FUMEJPd0VSTlNzQkhRRTdBUUlBUUVCQVFJQ0FRRUNBZ0VCQVFFREF3RUJBUUVDQWdNREFRRUNBZ0lDQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFnSUFCUUFGQVFFRCt3RUJBUUFBQUFBSUFnQUNBQTRBRUFBQWZBQ2NBQUFFMU93RWRBU3NCSFFFN0FSMEJLd0VkQVNzQkhRRXJBUmtCT3dFOUFUc0JGVFVyQVIwQk93RUNBRUJBUUVEQXdNREFRRUNBZ0lDQVFFQkFRRUJBQThCQVFFQkFRRUJBUUVEQXdBRkFBVUJBUU1CQVFFQUFBQUFBQWdBQUFBQURnQVFBQURNQVB3QUFHUUVwQVIwQk93RWRBU3NCSFFFN0FSMEJPd0VkQVNzQkhRRXJBUjBCS3dFOUFUc0JQUUU3QVQwQkt3RTlBU3NCSFFFckFRRTFLd0VkQVRzQlBRRTdBUUdBQVlCQVFJQ0FRRUJBUUlDQVFFQ0FnRUJBUUVCQVFFQkFnSUFDZ01EQWdJQkFRQUtBQVlCQVFJQ0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFnSUFDUUVDQWdFQkFBQUFCQUlBQUFBT0FBNEFBSndBQUV4RTdBUjBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBVHNCSFFFckFSMEJLd0U5QVRzQlBRRXJBWUNBZ0VCQXdNREF3RUJBUUVCQVFJQ0FRRUJBUUFKQUFVQkFRRUJBUUVCQVFNREFRRUJBUUVCQVFFQUFBQUFBQWdBQUFJQURnQVFBQURzQVF3QUFBVFU3QVIwQk93RTlBVHNCSFFFckFSMEJPd0VkQVRzQkhRRXJBUjBCT3dFZEFUc0JIUUVyQVQwQkt3RTlBU3NCSFFFckFSa0JPd0U5QVNzQkFUVXJBUjBCT3dFQkFFQkFRRUJBUUVCQWdJQkFRSUNBUUVCQVFNREFRRUJBUUlDQXdNQkFRQUVBZ0lDQWdBUEFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVDQWdBRkFBVUJBUVA3QVFFQkFBQUlBZ0FDQUE0QUVBQUFuQUM4QUFBRTFPd0VkQVRzQlBRRTdBUjBCS3dFZEFUc0JIUUVyQVIwQkt3RWRBU3NCR1FFN0FUMEJLd0VGTlNzQkhRRTdBUUVBZ0lCQVFJQ0FRRUJBUU1EQVFFQ0FnSUNBUUVBQkFFQkFRRUFEd0VCQVFFQkFRRUJBUUVCQVFFREF3QUZBQVVCQVFNQkFRRUFBQUFFQUFBQ0FBNEFFQUFBM0FBQUJOVHNCSFFFckFSMEJPd0VkQVNrQkhRRXBBUjBCT3dFZEFTc0JIUUVwQVQwQktRRTlBU2tCUFFFckFUMEJPd0U5QVRzQlBRRTdBUUlBUUVCQVFJQ0Evd0QvQUFFQUFRQkFRRUJBL29EK2dBRkFBVUQvQVA4QVFFQkFRSUNBUUVBRHdFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQUFBUUFBQUlBRGdBUUFBRGNBQUFFMU93RWRBU3NCSFFFN0FSMEJLUUVkQVNrQkhRRTdBUjBCS3dFZEFTa0JQUUVwQVQwQktRRTlBU3NCUFFFN0FUMEJPd0U5QVRzQkFnQkFRRUJBZ0lEL0FQOEFBUUFCQUVCQVFFRCtnUDZBQVVBQlFQOEEvd0JBUUVCQWdJQkFRQVBBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQ0FBQUFnQU9BQkFBQUx3QTNBQUFCTlRzQkhRRTdBUjBCS1FFZEFTa0JIUUU3QVIwQkt3RWRBU2tCUFFFcEFUMEJLUUU5QVNzQlBRRTdBVDBCT3dFRk5Tc0JIUUU3QVFFQXdNQkFRUDhBL3dBQkFBRUFRRUJBUVA2QS9vQUJRQUZBL3dEL0FFQkFRRUJBUUFFQVFFQkFRQVBBUUVCQWdJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQWdJQkFRRUJBQUFBQ0FBQUFnQU9BQkFBQUx3QTNBQUFCTlRzQkhRRTdBUjBCS1FFZEFTa0JIUUU3QVIwQkt3RWRBU2tCUFFFcEFUMEJLUUU5QVNzQlBRRTdBVDBCT3dFRk5Tc0JIUUU3QVFFQXdNQkFRUDhBL3dBQkFBRUFRRUJBUVA2QS9vQUJRQUZBL3dEL0FFQkFRRUJBUUFFQVFFQkFRQVBBUUVCQWdJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQWdJQkFRRUJBQUFBQkFBQUFBQU9BQkFBQVB3QUFFelVwQVIwQktRRWRBU2tCSFFFN0FSMEJLd0VkQVNzQkhRRXJBUjBCS3dFOUFUc0JQUUVyQVQwQkt3RTlBVHNCSFFFN0FUMEJLUUU5QVNzQlBRRTdBWUFCUUFGQS93RC9BQUVBQVFCQVFFQkFRRUJBUUlDQWdJREF3RUJBZ0lEQXdQOEEvd0JBUUVCQUE4QkFRRUJBUUVCQWdJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQWdJQkFRRUJBQUFFQUFBQUFBNEFEZ0FBM0FBQVROU2tCSFFFcEFSMEJLUUVkQVRzQkhRRXJBUjBCS3dFZEFTc0JIUUVyQVQwQk93RTlBU2tCUFFFcEFUMEJLUUU5QVNzQlBRRTdBWUFCUUFGQS93RC9BQUVBQVFCQVFFQkFRRUJBUUlDQWdJRC9BUDhBQVVBQlFQOEEvd0JBUUVCQUEwQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBUUFBQUlBRGdBUUFBRDhBQUJNMU93RWRBVHNCUFFFN0FSMEJLd0VkQVRzQkhRRXBBUjBCS1FFZEFUc0JIUUVyQVIwQktRRTlBU2tCUFFFcEFUMEJLd0U5QVRzQlBRRTdBVDBCS3dHQWdJQkFRSUNBUUVCQVFQOEEvd0FCQUFFQVFFQkFRUDZBL29BQlFBRkEvd0QvQUVCQVFFQkFRRUJBQThCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFBQVFBQUFJQURnQVFBQUQ4QUFCTTFPd0VkQVRzQlBRRTdBUjBCS3dFZEFUc0JIUUVwQVIwQktRRWRBVHNCSFFFckFSMEJLUUU5QVNrQlBRRXBBVDBCS3dFOUFUc0JQUUU3QVQwQkt3R0FnSUJBUUlDQVFFQkFRUDhBL3dBQkFBRUFRRUJBUVA2QS9vQUJRQUZBL3dEL0FFQkFRRUJBUUVCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQUFRQ0FBQUFEZ0FRQUFCc0FBQk0xS1FFZEFTc0JHUUVyQVIwQkt3RTlBVHNCUFFFckFSa0JLd0dBQVlBQmdJQ0FRRUNBZ0lDQVFFQ0FnQVBBUUVCQS9vRCtnRUJBUUVCQVFBRkFBVUFBQUFBQkFJQUFBQU9BQkFBQUl3QUFBVFU3QVIwQk93RWRBU3NCR1FFckFSMEJLd0U5QVRzQlBRRXJBVDBCS3dFOUFUc0JBWUNBZ0lDQWdJQkFRSUNBZ0lCQVFJQ0FnSUFEZ0lDQWdFQkEvd0QvQUVCQVFFQkFRTURBUUVBQUFBRUFnQUNBQTRBRUFBQW5BQUFCTlRzQkhRRTdBVDBCT3dFZEFTc0JIUUU3QVIwQkt3RVpBU3NCR1FFckFUMEJPd0U5QVNzQkFRQkFRSUNBUUVCQVFJQ0FnSUNBZ0lDQWdJQkFRQVBBUUVCQVFFQkFRRUJBUUVEL0FQOEFBUUFCQUVCQVFFQUFBQUFBQVFDQUFJQURnQVFBQUNjQUFBRTFPd0VkQVRzQlBRRTdBUjBCS3dFZEFUc0JIUUVyQVIwQkt3RTlBU3NCUFFFN0FUMEJLd0VCQUVCQWdJQkFRRUJBZ0lDQWdJQ0FnSUNBZ0VCQUE4QkFRRUJBUUVCQWdJQkFRTURBd01CQVFJQ0FBQUFBQUFFQWdBQ0FBNEFFQUFBZkFBQVROU2tCSFFFckFSMEJPd0VkQVNzQkhRRXJBVDBCS3dFOUFUc0JQUUVyQVlBQmdBR0FnSUJBUUVCQWdJQkFRRUJBZ0lBRHdFQkFRSUNBUUVEQXdJQ0FRRURBd0FBQUFBRUFnQUNBQTRBRUFBQW5BQUFCTlRzQkhRRTdBUjBCS3dFZEFUc0JIUUVyQVIwQkt3RTlBU3NCUFFFN0FUMEJLd0U5QVRzQkFZQ0FnSUNBZ0lCQVFFQkFnSUJBUUVCQWdJQ0FnQU9BZ0lDQVFFQkFRRUJBZ0lCQVFFQkFnSUJBUUFBQUFBQUNBQUFBZ0FPQUJBQUFKd0F6QUFBQk5Uc0JIUUU3QVQwQk93RWRBU3NCSFFFN0FSa0JLd0VkQVNrQlBRRXJBUmtCT3dFOUFUc0JGelVyQVJrQk93RVpBU3NCQVFDQWdFQkFRRUJBUUlDQVFFRCt3UDdBUUVCQVFFQkFnRUJBd01DQWdBUEFRRUJBUUVCQVFFQkEvd0QvQUVCQVFFQUJBQUVBUUVCQVFQN0Evc0FCQUFFQUFBQUFBZ0FBQUlBRGdBUUFBQ01BTHdBQUFUVTdBUjBCT3dFOUFUc0JIUUVyQVIwQk93RVpBU2tCUFFFckFSa0JPd0U5QVRzQkZ6VXJBUmtCT3dFWkFTc0JBUUNBZ0VCQVFFQkFRSUNBL29EK2dFQkFRRUJBUUlCQVFNREFnSUFEd0VCQVFFQkFRRUJBUVA3QS9zQkFRQUVBQVFCQVFFQkEvc0Qrd0FFQUFRQUFBQUFDQUFBQWdBT0FCQUFBRndBZkFBQVpBVHNCR1FFN0FSa0JPd0VaQVNzQkhRRXBBVDBCS3dFVE5Ta0JIUUVwQVlDQXdNQ0FnRUJBL3NEK3dFQkFnQUZBQVVEK3dQN0FBZ0FCQVA4QS93QUJBQUVBL3dEL0FFQkFRRUFDd0VCQVFBQUNBQUFBZ0FPQUJBQUFFd0FiQUFBWkFUc0JHUUU3QVJrQk93RVpBU2tCUFFFckFSTTFLUUVkQVNrQmdJREF3SUNBL29EK2dFQkFnQUZBQVVEK3dQN0FBZ0FCQVA4QS93QUJBQUVBL3NEK3dFQkFBc0JBUUVBQUFnQUFBSUFEZ0FRQUFDY0FMd0FBRXpVN0FSMEJPd0U5QVRzQkhRRXJBUjBCT3dFWkFTc0JIUUVwQVQwQkt3RVpBVHNCUFFFckFRRVJLd0VaQVRzQmdFQkF3TUJBUUVCQWdJQkFRUDdBL3NCQVFJQ0FRRUFDQU1EQXdNQUR3RUJBUUVCQVFFQkFRUDhBL3dCQVFFQkFBUUFCQUVCQS9vQUJBUDhBL3dBQUFBQUNBQUFBZ0FPQUJBQUFJd0FyQUFBVE5Uc0JIUUU3QVQwQk93RWRBU3NCSFFFN0FSa0JLUUU5QVNzQkdRRTdBVDBCS3dFQkVTc0JHUUU3QVlCQVFNREFRRUJBUUlDQS9vRCtnRUJBZ0lCQVFBSUF3TURBd0FQQVFFQkFRRUJBUUVCQS9zRCt3RUJBQVFBQkFFQkEvb0FCQVA4QS93QUFBQUFEQUFBQWdBT0FCQUFBSHdBbkFEOEFBQUUxT3dFZEFUc0JIUUU3QVJrQkt3RWRBU2tCUFFFckFSa0JPd0U5QVRzQkJUVXJBUjBCT3dFRk5Tc0JIUUU3QVIwQk93RTlBVHNCUFFFckFSMEJLd0VCQU1EQVFFQkFRRUJBL3NEK3dFQkFRRUJBUUFFQVFFQkFRUDhBUUVCQVFNREFRRUJBUU1EQUE4QkFRRUJBUVA4QS93QkFRRUJBQVFBQkFFQkFRRUJBUUVCQVFFREF3TURBUUVCQVFBQUFBd0FBQUlBRGdBUUFBQnNBSXdBN0FBQUJOVHNCSFFFN0FSMEJPd0VaQVNrQlBRRXJBUmtCT3dFOUFUc0JCVFVyQVIwQk93RUZOU3NCSFFFN0FSMEJPd0U5QVRzQlBRRXJBUjBCS3dFQkFNREFRRUJBUVA2QS9vQkFRRUJBUUVBQkFFQkFRRUQvQUVCQVFFREF3RUJBUUVEQXdBUEFRRUJBUUVEK3dQN0FRRUFCQUFFQVFFQkFRRUJBUUVCQVFNREF3TUJBUUVCQUFBQUJBQUFBZ0FPQUJBQUFNd0FBQVRVN0FSMEJLd0VaQVRzQkdRRXJBVDBCT3dFOUFUc0JIUUVyQVIwQk93RVpBU3NCSFFFcEFUMEJLd0VaQVRzQlBRRTdBUUVBUUVCQVFNREFRRUJBUUVCQVFFQ0FnRUJBL3NEK3dFQkFRRUJBUUFQQVFFQkEvc0Qrd0FFQUFRQkFRRUJBUUVCQVFQOEEvd0JBUUVCQUFRQUJBRUJBQUFBQkFBQUFnQU9BQkFBQUx3QUFBVFU3QVIwQkt3RVpBVHNCR1FFckFUMEJPd0U5QVRzQkhRRXJBUjBCT3dFWkFTa0JQUUVyQVJrQk93RTlBVHNCQVFCQVFFQkF3TUJBUUVCQVFFQkFRSUNBL29EK2dFQkFRRUJBUUFQQVFFQkEvc0Qrd0FFQUFRQkFRRUJBUUVCQVFQN0Evc0JBUUFFQUFRQkFRQUFBQVFBQUFBQURnQVFBQUM4QUFCa0JPd0VaQVRzQkdRRTdBUmtCS3dFZEFTc0JIUUVyQVIwQk93RWRBU3NCUFFFckFUMEJPd0U5QVNzQlBRRXJBWUNBd01DQWdFQkFnSUJBUUlDQWdJQkFRRUJBZ0lCQVFBTUFBUUQvQVA4QUFRQUJBUDhBL3dCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQUFRQUFBQUFEZ0FRQUFDc0FBQmtCT3dFWkFUc0JHUUU3QVJrQkt3RWRBU3NCSFFFN0FSMEJLd0U5QVNzQlBRRTdBVDBCS3dFOUFTc0JnSURBd0lDQXdNQkFRSUNBZ0lCQVFFQkFnSUJBUUFNQUFRRC9BUDhBQVFBQkFQN0Evc0JBUUVCQVFFQkFRRUJBUUVCQVFBQUFBQUlBQUFDQUE0QUVBQUFmQURjQUFBRTFPd0VkQVRzQkhRRTdBUmtCS3dFOUFTc0JIUUVyQVJrQk93RTlBVHNCQlRVckFSMEJLd0VkQVRzQlBRRTdBUjBCT3dFOUFTc0JBUURBd0VCQVFFREF3RUJBd01CQVFFQkFBUUJBUUVCQVFFQkFRRUJBUUVBRHdFQkFRRUJBL3NEK3dFQkFRRUFCUUFGQVFFQkFRRUJBZ0lCQVFFQkFnSUFBQUFBQUF3QUFBSUFEZ0FRQUFCc0FLd0F6QUFBQk5Uc0JIUUU3QVIwQk93RVpBU2tCUFFFckFSa0JPd0U5QVRzQkJUVXJBUjBCT3dFWkFUc0JHUUVyQVFFUkt3RVpBVHNCQVFEQXdFQkFRRUQrZ1A2QVFFQkFRRUJBQVFCQVFFQkFRRUJBUVA4QVFFQkFRQVBBUUVCQVFFRCt3UDdBUUVBQkFBRUFRRUJBUUVCQS93RC9BQUVBQVFEL0FBRUEvd0QvQUFBQUFnQ0FBSUFEZ0FRQUFDY0FMd0FBQVRVN0FSMEJPd0VkQVRzQkhRRXJBUjBCS3dFZEFTc0JQUUVyQVQwQkt3RTlBVHNCUFFFN0FRVTFLd0VkQVRzQkFZQ0FnRUJBUUVCQVFFQkFnSUJBUUVCQVFFQkFRQUVBZ0lDQWdBUEFRRUJBUUVDQWdFQkFnSUNBZ0VCQWdJQkFRTURBd01BQUFBQUFBZ0FBQUFBRGdBUUFBQ2NBTndBQUFUVTdBUjBCT3dFZEFUc0JHUUVyQVIwQktRRTlBU2tCUFFFcEFUMEJLd0U5QVRzQlBRRTdBUVUxS3dFZEFTc0JIUUU3QVQwQkt3RUJBTURBUUVCQVFFQkEvc0Qrd0FFQUFRRC9BUDhBUUVCQVFFQkFBUUJBUUVCQXdNQkFRQVBBUUVCQVFFRCt3UDdBUUVCQVFFQkFRRURBd0VCQVFFQkFRTURBd01BQUFBQUFBd0NBQUlBRGdBUUFBQjhBSndBdkFBQVROVHNCSFFFN0FUMEJPd0VkQVNzQkhRRXJBUjBCS3dFOUFTc0JQUUVyQVFFMU93RWRBU3NCSlRVN0FSMEJLd0dBZ0lDQWdJQ0FRRUJBUUlDQVFFQkFRQUlBZ0lDQWdQNEFnSUNBZ0FLQWdJQ0FnSUNBZ0VCQWdJQ0FnRUJBQWNCQVFFQkFRRUJBQUFBQUFBRUFBQUNBQTRBRUFBQTNBQUFCTlRzQkhRRXJBUjBCT3dFZEFTc0JIUUVyQVIwQkt3RWRBVHNCSFFFcEFUMEJPd0U5QVRzQlBRRTdBVDBCS3dFOUFUc0JQUUU3QVFJQVFFQkFRTURBUUVCQVFFQkF3TUQrUVA1QVFFQkFRRUJBd01EQXdFQkFBOEJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFFQUFBQ0FBNEFFQUFBM0FBQUJOVHNCSFFFckFSMEJPd0VkQVNzQkhRRXJBUjBCS3dFZEFUc0JIUUVwQVQwQk93RTlBVHNCUFFFN0FUMEJLd0U5QVRzQlBRRTdBUUlBUUVCQVFNREFRRUJBUUVCQXdNRCtRUDVBUUVCQVFFQkF3TURBd0VCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBQUlBQUFDQUE0QUVBQUFuQUM4QUFCRTFLUUVkQVNzQkhRRXJBUjBCS3dFZEFUc0JIUUVwQVQwQk93RTlBVHNCUFFFN0FUMEJLd0VCTlRzQkhRRXJBUUhBQWNCQVFFQkFRRURBd1A1QS9rQkFRRUJBUUVEQXdBR0FnSUNBZ0FMQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBRkFRRUJBQUFJQUFBQ0FBNEFFQUFBbkFDOEFBQkUxS1FFZEFTc0JIUUVyQVIwQkt3RWRBVHNCSFFFcEFUMEJPd0U5QVRzQlBRRTdBVDBCS3dFQk5Uc0JIUUVyQVFIQUFjQkFRRUJBUUVEQXdQNUEva0JBUUVCQVFFREF3QUdBZ0lDQWdBTEFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUZBUUVCQUFBRUFBQUNBQTRBRUFBQS9BQUFUTlRzQkhRRTdBVDBCT3dFZEFTc0JIUUU3QVIwQkt3RWRBU3NCSFFFckFSMEJPd0VkQVNrQlBRRTdBVDBCT3dFOUFUc0JQUUVyQVQwQk93RTlBU3NCZ0lDQVFFQ0FnRUJBZ0lCQVFFQkFRRURBd1A1QS9rQkFRRUJBUUVEQXdJQ0FRRUFEd0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBQUFCQUFBQWdBT0FCQUFBUHdBQUV6VTdBUjBCT3dFOUFUc0JIUUVyQVIwQk93RWRBU3NCSFFFckFSMEJLd0VkQVRzQkhRRXBBVDBCT3dFOUFUc0JQUUU3QVQwQkt3RTlBVHNCUFFFckFZQ0FnRUJBZ0lCQVFJQ0FRRUJBUUVCQXdNRCtRUDVBUUVCQVFFQkF3TUNBZ0VCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQUFRR0FBSUFEZ0FRQUFBOEFBQUUxT3dFZEFTc0JHUUVyQVJrQk93RUNBTURBZ0lDQWdFQkFBOEJBUUVEK2dQNkFBWUFCZ0FBQUFBQUJBSUFBZ0FPQUJBQUFKd0FBQVRVN0FSMEJLd0VkQVRzQkhRRXJBUjBCS3dFZEFTc0JQUUU3QVQwQkt3RTlBVHNCUFFFN0FRSUF3TUNBZ0lDQWdJQkFRTURBZ0lDQWdJQ0FRRUFEd0VCQVFFQkFRRURBd0VCQVFFREF3RUJBUUVBQUFBQUFBUUNBQXdBREFBUUFBQmNBQUFFMU93RWRBVHNCSFFFckFUMEJLd0VkQVNzQlBRRTdBUUVBd01CQVFJQ0FRRUNBZ0VCQUE4QkFRRUJBUUVCQVFFQkFRQUFBQUFBQkFJQURBQU1BQkFBQUZ3QUFFelU3QVIwQk93RTlBVHNCSFFFckFSMEJLd0U5QVNzQmdJQ0FRRUNBZ0VCQXdNQkFRQVBBUUVCQVFFQkFRRUJBUUVBQUFRQ0FBNEFEQUFRQUFBY0FBQk0xS1FFZEFTa0JnQUZBQVVEK3dQN0FBOEJBUUVBQUFRR0FBd0FDZ0FRQUFBOEFBQUUxT3dFZEFTc0JIUUVyQVQwQk93RUNBRUJBUUVCQVFFQkFBOEJBUUVCQVFFQkFBQUFBQUFFQmdBTUFBb0FFQUFBUEFBQUJOVHNCSFFFN0FSMEJLd0U5QVNzQkFZQkFRRUJBUUVCQVFBUEFRRUJBUUVCQVFBQUFBQUFCQUlBQ0FBTUFBb0FBQndBQUV6VXBBUjBCS1FHQUFVQUJRUDdBL3NBQ1FFQkFRQUFCQUlBREFBTUFCQUFBRndBQUV6VTdBUjBCT3dFOUFUc0JIUUVyQVIwQkt3RTlBU3NCZ0VCQXdNQkFRRUJBd01CQVFBUEFRRUJBUUVCQVFFQkFRRUFBQVFHQUE0QUNnQVFBQUFjQUFBRTFPd0VkQVNzQkFZQ0FnSUNBQThCQVFFQUFBQUFBQWdDQUFvQURBQVFBQUJjQUh3QUFBVFU3QVIwQk93RWRBU3NCSFFFckFUMEJLd0U5QVRzQkJUVXJBUjBCT3dFQkFNREFRRUJBUU1EQVFFQkFRQUVBUUVCQVFBUEFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUFBQUVCQUFBQUFvQUJnQUFYQUFBQk5Uc0JIUUVyQVIwQk93RWRBU3NCUFFFckFUMEJPd0VCZ0VCQVFFQ0FnSUNBUUVCQVFBRkFRRUJBUUVCQVFFQkFRRUFBQUFBQUFRQ0FBd0FEQUFRQUFCOEFBQUUxT3dFZEFUc0JQUUU3QVIwQkt3RWRBU3NCUFFFckFSMEJLd0U5QVRzQkFRQ0FnRUJBUUVCQVFJQ0FRRUJBUUVCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVBQUFBQUFBZ0NBQXdBREFBUUFBQThBSHdBQUFUVTdBUjBCS3dFZEFTc0JQUUU3QVNVMU93RWRBU3NCSFFFckFUMEJPd0VDZ0VCQVFFQkFRRUJBL29CQVFFQkFRRUJBUUFQQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQUFBRUJnQUFBQXdBQkFBQVBBQUFsTlRzQkhRRTdBUjBCS3dFOUFTc0JBWUJBUUlDQWdJQkFRTUJBUUVCQVFFQkFBQUlBZ0FDQUFnQURnQUFQQUJjQUFBRTFPd0VkQVNzQkhRRXJBVDBCT3dFUk5Uc0JIUUVyQVFFQWdJQkFRSUNBUUVDQWdJQ0FBWUNBZ0lCQVFFQkFBZ0NBZ0lBQUFRR0FBd0FDZ0FRQUFBOEFBQUUxT3dFZEFTc0JIUUVyQVQwQk93RUNBRUJBUUVCQVFFQkFBOEJBUUVCQVFFQkFBQUFBQUFNQWdBTUFBNEFFQUFBSEFCY0FId0FBQVRVN0FSMEJLd0VsTlRzQkhRRXJBUjBCS3dFOUFUc0JKVFU3QVIwQkt3RURBRUJBUUVEL0FFQkFRRUJBUUVCQS9vQkFRRUJBQThCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFBQUF3QUFBSUFEZ0FRQUFDY0FMd0EzQUFBVE5Uc0JIUUU3QVQwQk93RWRBVHNCSFFFN0FSa0JLd0U5QVNzQkhRRXJBUmtCS3dFOUFUc0JGelVyQVIwQk93RUZOU3NCSFFFN0FZQkFRRUJBZ0lCQVFFQkFnSUNBZ0lDQVFFQkFRSUJBUUVCQUFZQ0FnSUNBQThCQVFFQkFRRUJBUUVEK3dQN0FnSUNBZ0FGQUFVQkFRRUJBUUVDQWdJQ0FBQUFCQVFBQmdBSUFBb0FBQndBQUFUVTdBUjBCS3dFQkFJQ0FnSUFDQUlDQWdBQUFBQUFCQUFBQWdBUUFCQUFBSXdBQUV6VXBBUjBCS1FFZEFUc0JIUUVyQVIwQktRRWRBU2tCR1FFckFSMEJLd0U5QVRzQmdBSEFBY0QvQVA4QWdJQ0FnQUVBQVFEK2dQNkFRRUJBUUVCQUE4QkFRRUNBZ0VCQWdJQkFRQUdBQVlCQVFFQkFBQUFBQVFBQUFJQUVBQVFBQUNNQUFCTTFPd0VkQVRzQlBRRTdBUmtCS3dFOUFTc0JIUUVyQVJrQkt3RWRBU3NCUFFFN0FZREF3SUNBZ0lDQWdJQ0FnSUJBUUVCQVFFQUR3RURBd01EQS9rRCtRTURBd01BQmdBR0FRRUJBUUFBQ0FBQUFnQU9BQkFBQUZ3QW5BQUFCTlNrQkhRRXJBUmtCT3dFZEFTa0JQUUU3QVJrQkt3RWxOVHNCSFFFckFSMEJLd0U5QVRzQkFZQUJBQUVBUUVCQVFQOEEvd0JBUUVCQS93QkFRRUJBUUVCQVFBUEFRRUJBL3NEK3dFQkFRRUFCUUFGQVFFQkFRRUJBUUVBQUFBQUFBZ0FBQUlBRUFBUUFBQ2NBTHdBQUV6VTdBUjBCT3dFOUFTa0JIUUU3QVJrQkt3RWRBU2tCUFFFckFSa0JLd0VkQVNzQlBRRTdBUUVSS3dFWkFUc0JnRUJBUUVBQkFBRUFRRUJBUVA4QS93QkFRRUJBUUVCQVFBS0FnSUNBZ0FQQVFFQkFRRUJBUVA3QS9zQkFRRUJBQVVBQlFFQkFRRUQrd0FGQS9zRCt3QUFCQUFBQWdBUUFCQUFBS3dBQUV6VTdBUjBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBU3NCUFFFckFUMEJLd0U5QVNzQkhRRXJBVDBCT3dHQXdNQ0FnSUNBUUVCQVFJQ0FRRUJBUUVCQVFFQkFRQVBBUU1EQXdNREF3RUJBd01EQXdFQkFnSUJBUUVCQUFBSUFBQUNBQkFBRUFBQkhBRThBQUJNMU93RWRBVHNCUFFFN0FSMEJPd0VkQVRzQkhRRXJBUjBCT3dFZEFTc0JQUUU3QVQwQkt3RTlBU3NCSFFFckFSMEJPd0VkQVNzQlBRRTdBVDBCS3dFOUFTc0JQUUU3QVJjMUt3RWRBVHNCZ0VCQVFFREF3RUJBUUVCQVFFQkF3TUJBUUVCQVFFQkFRRUJBd01CQVFFQkFRRUJBUUlCQVFFQkFBOEJBUUVCQVFFQkFRRURBd0VCQVFFQ0FnTURBUUVCQVFNREFnSUJBUUVCQXdNQkFRRUJBUUVBQUFBTUFBQUNBQXdBRUFBQUhBQ3NBTXdBQUFUVTdBUjBCS3dFbE5Uc0JIUUVyQVIwQk93RVpBVHNCSFFFckFUMEJLd0U5QVNzQlBRRTdBVDBCT3dFbE5Uc0JIUUVyQVFLQVFFQkFRUDhBUUVCQVFFQkFnSURBd0VCQVFFQkFRRUJBL29CQVFFQkFBOEJBUUVCQVFFQkFRRUQvQVA4QVFFQkFRTURBUUVCQVFFQkFRRUFBQUFJQUFBQ0FBNEFFQUFBZkFDOEFBQUUxT3dFZEFUc0JIUUU3QVJrQkt3RTlBU3NCSFFFckFSa0JPd0U5QVRzQkJUVXJBUjBCS3dFZEFUc0JQUUVyQVFFQXdNQkFRRUJBZ0lEQXdJQ0FRRUJBUUFFQVFFQkFRTURBUUVBRHdFQkFRRUJBL3NEK3dJQ0FnSUFCUUFGQVFFQkFRRUJBZ0lDQWdBQUFBQUFEQUFBQWdBT0FCQUFBRndBZkFDY0FBQmtCS1FFZEFUc0JIUUVyQVIwQk93RWRBU3NCSFFFcEFRRTFLd0VkQVRzQkVUVXJBUjBCT3dFQmdBR0FRRUJBUUVCQVFFRCtnUDZBQW9EQXdNREF3TURBd0FKQUFjQkFRSUNBUUVDQWdFQkFBb0NBZ0lEL0FJQ0FnQUFCQUlBQWdBT0FCQUFBQ3dBQUV4RXBBUjBCS1FFWkFTc0JnQUdBQVlEL0FQOEFnSUFDUUFIQVFFRCtnUDZBQUFBQ0FBQUFnQU9BQkFBQUZ3QW5BQUFCTlRzQkhRRTdBUjBCT3dFWkFTa0JHUUU3QVQwQk93RUZOU3NCSFFFckFSa0JPd0VaQVNzQkFRREF3RUJBUUVEK1FQNUFRRUJBUUFFQVFFQkFRTURBUUVBRHdFQkFRRUJBL3NEK3dBRkFBVUJBUUVCQVFFRC9BUDhBQVFBQkFBQUFBUUFBQUlBRGdBUUFBQmNBQUJrQktRRWRBU2tCSFFFcEFSMEJLUUVkQVNrQkhRRXBBUUhBQWNEK3dQN0FBUUFCQVA4QS93QUJRQUZBL2tEK1FBSkFBY0JBUUlDQVFFQ0FnRUJBQUFFQUFBQ0FBNEFFQUFBdkFBQVJOU2tCSFFFckFSMEJLd0VkQVNzQkhRRXJBUjBCS1FFZEFTa0JQUUU3QVQwQk93RTlBVHNCUFFFN0FUMEJLUUVCd0FIQVFFQkFRRUJBUUVBQkFBRUEva0QrUUVCQVFFQkFRRUJBL3dEL0FBUEFRSUNBUUVCQVFFQkFRRUJBUUlDQVFFQkFRRUJBUUVBQUFBRUFBQUNBQTRBRUFBQVhBQUFaQVRzQkhRRTdBVDBCT3dFWkFTc0JQUUVyQVIwQkt3R0FnTURBZ0lDQWdNREFnSUFDUUFIQXdNREF3UDVBL2tEQXdNREFBQUFBQXdBQUFJQURnQVFBQUJjQUh3QW5BQUFUTlNrQkhRRTdBUmtCS3dFZEFTa0JQUUVyQVJrQk93RUZOU3NCSFFFN0FSRTFLd0VkQVRzQmdBRkFBVUJBUUVCQS9zRCt3RUJBUUVBQ0FNREF3TURBd01EQUE4QkFRRUQrd1A3QVFFQkFRQUZBQVVDQWdJQ0Evd0NBZ0lBQUFBRUFnQUNBQTRBRUFBQVhBQUFUTlNrQkhRRXJBUmtCT3dFZEFTa0JQUUU3QVJrQkt3R0FBWUFCZ0lDQWdJRCtnUDZBZ0lDQWdBUEFRRUJBL3NEK3dFQkFRRUFCUUFGQUFBRUFBQUNBQTRBRUFBQTdBQUFaQVRzQkhRRTdBVDBCT3dFOUFUc0JQUUU3QVIwQkt3RWRBU3NCSFFFckFSMEJPd0VkQVRzQkhRRTdBUjBCS3dFOUFTc0JQUUVyQVIwQkt3R0FnRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQkFRRUJBd01CQVFFQkFnSUFDUUFIQXdNQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVDQWdBQUJBQUFBZ0FPQUJBQUFKd0FBQVRVN0FSMEJPd0VkQVRzQkdRRXJBUmtCS3dFOUFTc0JIUUVyQVJrQkt3RVpBVHNCUFFFN0FRRUF3TUJBUUVCQWdJQkFRRUJBUUVDQWdFQkFRRUFEd0VCQVFFQkEvc0Qrd0FGQUFVQkFRRUJBL3NEK3dBRkFBVUJBUUFBQUFBQUJBQUFBZ0FPQUJBQUFKd0FBR1FFN0FSMEJPd0VkQVRzQlBRRTdBVDBCT3dFWkFTc0JQUUVyQVIwQkt3RTlBU3NCSFFFckFZQ0FRRUJBUUVCQWdJQ0FnRUJBUUVCQVFJQ0FBa0FCd0VCQVFFQkFRRUJBL2tEK1FNREFRRUJBUU1EQUFBQUFBUUFBQUlBRGdBUUFBQ2NBQUJrQk93RWRBVHNCSFFFN0FSMEJPd0U5QVRzQkdRRXJBVDBCS3dFOUFTc0JQUUVyQVIwQkt3R0FnRUJBUUVCQVFJQ0FnSUJBUUVCQVFFQ0FnQUpBQWNCQVFFQkFRRURBd1A1QS9rQkFRRUJBUUVEQXdBQUFBQU1BQUFDQUE0QUVBQUFIQUE4QUZ3QUFQUUVwQVIwQktRRVROU2tCSFFFcEFRTTFLUUVkQVNrQkFjQUJ3UDVBL2tDQUFVQUJRUDdBL3NDQUFjQUJ3UDVBL2tEQVFFQkFBY0JBUUVBQndFQkFRQUFBQUFJQUFBQ0FBNEFFQUFBWEFCOEFBQk0xS1FFZEFUc0JHUUVyQVIwQktRRTlBU3NCR1FFN0FRRVJLd0VaQVRzQmdBRkFBVUJBUUVCQS9zRCt3RUJBUUVBQ0FNREF3TUFEd0VCQVFQN0Evc0JBUUVCQUFVQUJRUDdBQVVEK3dQN0FBQUVBQUFDQUE0QUVBQUFQQUFBWkFTa0JHUUVyQVJrQkt3RVpBU3NCQWNBQndJQ0F3TUNBZ0FKQUFjRCtRUDVBQVlBQmdQNkEvb0FBQWdBQUFJQURnQVFBQUJNQUd3QUFHUUVwQVIwQk93RWRBU3NCSFFFcEFSMEJLd0VCTlNzQkhRRTdBUUdBQVlCQVFFQkEvd0QvQUlDQUFvREF3TURBQWtBQndFQkF3TUJBUUlDQUFrREF3TUFBQUFBQUFRQUFBSUFEZ0FRQUFEOEFBQkUxS1FFZEFTc0JQUUVyQVIwQk93RWRBVHNCSFFFckFSMEJLd0VkQVRzQlBRRTdBUjBCS1FFOUFUc0JQUUU3QVQwQk93RTlBU3NCUFFFckFUMEJLd0VCd0FIQWdJQ0FnRUJBZ0lDQWdFQkFnSUNBZ1A1QS9rQkFRRUJBUUVCQVFFQkFRRUFEd0VDQWdFQkFRRUJBUUVCQVFFQkFRRUJBZ0lCQVFFQkFRRUJBUUVCQVFFQUFBQUVBZ0FDQUE0QUVBQUFQQUFBVE5Ta0JIUUVyQVJrQkt3RVpBU3NCZ0FHQUFZQ0FnSUNBZ0lBRHdFQkFRUDZBL29BQmdBR0FBQUFBQVFDQUFJQURnQVFBQUI4QUFCTTFPd0VkQVRzQlBRRTdBUjBCS3dFZEFTc0JIUUVyQVQwQkt3RTlBU3NCZ0lDQWdJQ0FnRUJBUUVDQWdFQkFRRUFEUU1EQXdNREF3TUJBUU1EQXdNQkFRQUFEQUFBQWdBT0FCQUFBSndBdkFEY0FBQUUxT3dFZEFUc0JIUUU3QVIwQkt3RWRBU3NCSFFFckFUMEJLd0U5QVNzQlBRRTdBVDBCT3dFUk5Tc0JIUUU3QVNVMUt3RWRBVHNCQVlCQVFJQ0FRRUJBUUlDQVFFQ0FnRUJBUUVDQWdFQkFRRUFCQUVCQVFFQUR3RUJBUUVCQXdNQkFRRUJBUUVCQVFNREFRRUQrd01EQXdNREF3TUFBQVFBQUFJQURnQVFBQUVjQUFCRTFPd0VkQVRzQkhRRTdBVDBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBVHNCSFFFN0FSMEJLd0U5QVNzQlBRRXJBUjBCS3dFZEFTc0JQUUU3QVQwQk93RTlBU3NCUFFFckFZQ0FRRUJBUUVCQWdJQkFRRUJBUUVCQVFJQ0FRRUJBUUVCQWdJQkFRRUJBUUVCQVFBT0FnRUJBUUVCQVFFQkFnSUJBUUVCQVFFQ0FnRUJBUUVCQVFFQkFnSUJBUUVCQVFFQUFBQUVBQUFDQUJBQUVBQUF2QUFBUk5Uc0JIUUU3QVQwQk93RWRBVHNCUFFFN0FSMEJLd0VkQVNzQkhRRTdBUjBCS1FFOUFUc0JQUUVyQVQwQkt3R0FnRUJBZ0lCQVFJQ0FRRUNBZ0VCQS93RC9BRUJBZ0lCQVFBTkF3TURBd01EQXdNREF3TUJBUUlDQVFFQkFRSUNBUUVBQUFBQUFBUUFBQUlBRGdBUUFBRDhBQUFFMU93RWRBVHNCSFFFN0FSMEJLd0VkQVRzQkhRRXJBVDBCT3dFOUFTc0JQUUVyQVIwQkt3RWRBVHNCSFFFckFUMEJPd0U5QVNzQlBRRTdBVDBCT3dFQkFNREFRRUJBUUVCQVFFREF3RUJBUUVCQVFFQkFRRURBd0VCQVFFQkFRRUJBQThCQVFFQkFRTURBUUVCQVFJQ0F3TUJBUUVCQXdNQ0FnRUJBUUVEQXdFQkFBQUFBQUFNQWdBQ0FBNEFFQUFBWEFCOEFKd0FBRXpVcEFSMEJLd0VkQVRzQkhRRXBBVDBCT3dFOUFTc0JBVFU3QVIwQkt3RWxOVHNCSFFFckFZQUJnQUdBZ0lDQWdQNkEvb0NBZ0lDQUFnQ0FnSUNBL2dDQWdJQ0FBc0JBUUVEQXdFQkFRRURBd0FGQVFFQkFRRUJBUUFBQUFBQURBSUFBZ0FPQUJBQUFId0FuQUM4QUFCTTFPd0VkQVRzQlBRRTdBUjBCS3dFZEFTc0JIUUVyQVQwQkt3RTlBU3NCQVRVN0FSMEJLd0VsTlRzQkhRRXJBWUNBZ0lDQWdJQkFRRUJBZ0lCQVFFQkFBZ0NBZ0lDQS9nQ0FnSUNBQW9DQWdJQ0FnSUNBUUVDQWdJQ0FRRUFCd0VCQVFFQkFRRUFBQUFBQUFnQUFBSUFEZ0FRQUFCOEFKd0FBQVRVN0FSMEJLd0VkQVRzQkdRRXBBVDBCS3dFOUFUc0JQUUU3QVQwQk93RVROU3NCSFFFN0FRSUFRRUJBUU1EQS9vRCtnRUJBUUVDQWdFQkFnTURBd01BRHdFQkFRRUJBL3NEK3dFQkF3TUJBUUVCQS9rREF3TUFBQUFBQUFRQUFBSUFEZ0FRQUFEY0FBQUUxT3dFZEFTc0JIUUU3QVIwQktRRWRBU2tCSFFFcEFSMEJLUUVkQVNrQlBRRXJBVDBCT3dFOUFTc0JQUUU3QVQwQk93RTlBVHNCQWdCQVFFQkF3TUQrd1A3QUFRQUJBUDhBL3dBQlFBRkEvb0QrZ0VCQVFFQkFRRUJBZ0lCQVFBUEFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFCQUFBQUFBT0FCQUFBS3dBQUFUVTdBUjBCS3dFZEFUc0JIUUU3QVJrQkt3RVpBU3NCR1FFckFSa0JLd0U5QVRzQkhRRTdBVDBCT3dFQ0FFQkFRRUNBZ0VCQWdJQ0FnSUNBUUVDQWdFQkFRRUFEd0VCQVFFQkFRRUQrd1A3QUFVQUJRUDhBL3dBQkFBRUFRRUJBUUlDQUFBQUFBQUVBZ0FDQUF3QUVBQUFqQUFBQk5Uc0JIUUVyQVIwQk93RVpBVHNCSFFFckFUMEJLd0U5QVNzQlBRRTdBVDBCT3dFQmdFQkFRRUJBUUlDQXdNQkFRRUJBUUVCQVFBUEFRRUJBUUVEL0FQOEFRRUJBUU1EQVFFQkFRQUFBQXdBQUFJQURnQVFBQUFjQVB3QkhBQUFCTlRzQkhRRXJBU1UxT3dFZEFTc0JIUUVyQVIwQk93RWRBVHNCUFFFckFUMEJPd0VkQVRzQkhRRXJBUjBCS1FFOUFTc0JQUUVyQVQwQk93RTlBVHNCSlRVN0FSMEJLd0VDZ0VCQVFFRC9BRUJBUUVCQVFFQkFnSUJBUUlDQVFFQkFRUDhBL3dCQVFFQkFnSUJBUVA2QVFFQkFRQVBBUUVCQVFFQkFRRUJBUUVEQXdNREFRRUJBUU1EQVFFQkFRTURBUUVCQVFFQkFRRUFBQUFJQUFBQ0FBNEFEQUFBUEFCY0FBQk0xS1FFWkFTa0JQUUVyQVQwQk93RUZOU3NCSFFFN0FZQUJnQUdBL29EK2dFQkFRRUFDQU1EQXdNQUN3RUQrd1A3QVFFREF3TURBd01BQUFBQURBQUFBQUFPQUJBQUFId0FuQUM4QUFCTTFLUUVkQVRzQkhRRXJBUjBCT3dFZEFTc0JIUUVwQVIwQkt3RVpBVHNCQlRVckFSMEJPd0VSTlNzQkhRRTdBWUFCUUFGQVFFQkFRRUJBUUVEL0FQOEFnSUJBUUFJQXdNREF3TURBd01BRHdFQkFRSUNBUUVDQWdFQkFRRUFCd0FIQWdJQ0FnUDhBZ0lDQUFBQUFBQUVBQUFBQUE0QURBQUFuQUFBUk5Uc0JIUUU3QVIwQk93RTlBVHNCSFFFckFSMEJLd0VkQVNzQlBRRXJBVDBCS3dFOUFTc0JnSUJBUUlDQWdJQkFRRUJBZ0lCQVFFQkFRRUFDd0VCQVFJQ0F3TURBd0VCQWdJQ0FnRUJBZ0lBQUFBSUFBQUNBQTRBRUFBQXJBRE1BQUFFMU93RWRBU3NCSFFFN0FSMEJPd0VkQVNzQkhRRXBBVDBCS3dFOUFUc0JQUUU3QVQwQkt3RTlBVHNCRXpVckFSMEJPd0VDQU1EQWdJQkFRRUJBUUVEK3dQN0FRRUJBUU1EQVFFQkFRSURBd01EQUE4QkFRRUJBUUVCQXdNQkFRRUJBZ0lCQVFFQkFRRUQrQUlDQWdBQUFBUUFBQUlBRGdBTUFBQ2NBQUJNMUtRRWRBU2tCSFFFcEFSMEJLUUVkQVNrQkhRRXBBVDBCS3dFOUFUc0JQUUVyQVQwQk93R0FBWUFCZ1A3QS9zQUJBQUVBL3dEL0FBRkFBVUQrZ1A2QVFFQkFRRUJBUUVBQ3dFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBUUFBQUFBRGdBUUFBRGNBQUJNMUtRRWRBU3NCSFFFckFSMEJLd0VkQVNrQkhRRTdBUjBCS3dFZEFTc0JQUUU3QVQwQktRRTlBU3NCUFFFN0FUMEJPd0U5QVNzQmdBRkFBVUNBZ0VCQVFFQUJBQUVBUUVCQVFJQ0FRRUQvQVA4QVFFQkFRRUJBUUVBRHdFQkFRRUJBUUVDQWdFQkFRRUJBUUVCQVFFQkFRSUNBUUVCQVFBQUFBQUVBQUFBQUE0QURBQUFmQUFBUk5Uc0JIUUU3QVQwQk93RWRBVHNCR1FFckFSa0JLd0VaQVNzQkdRRXJBWUNBUUVEQXdFQkFnSUNBZ0lDQVFFQUN3RUJBUUVCQVFFRCt3UDdBQVVBQlFQOEEvd0FCQUFFQUFBQURBQUFBZ0FPQUJBQUFKd0EzQUVjQUFBRTFPd0VkQVRzQkhRRTdBUjBCS3dFZEFTc0JIUUVyQVQwQkt3RTlBU3NCUFFFN0FUMEJPd0VGTlNzQkhRRXJBUjBCT3dFOUFTc0JFelVyQVIwQk93RWRBVHNCUFFFN0FRRUF3TUJBUUVCQVFFQkFRTURBUUVCQVFFQkFRRUFCQUVCQVFFREF3RUJBZ01EQVFFQkFRRUJBQThCQVFFQkFRTURBUUVCQVFFQkFRRURBd0VCQVFFQkFRRUJBUUVEK3dFQkFRRUJBUUVBQUFBQUFBUUNBQUlBREFBTUFBQk1BQUJNMU93RVpBVHNCSFFFckFUMEJLd0U5QVNzQmdNREFnSURBd0VCQVFFQUN3RUQvQVA4QVFFQkFRTURBQUFBQUFRQUFBSUFEZ0FNQUFDOEFBQmtCT3dFZEFUc0JQUUU3QVQwQk93RWRBU3NCSFFFckFSMEJPd0VkQVRzQkhRRXJBVDBCS3dFOUFTc0JIUUVyQVlDQWdJQkFRSUNBUUVCQVFFQkFRRUNBZ0VCQWdJQ0FnQUhBQVVDQWdFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFJQ0FBQUVBQUFDQUE0QUVBQUE3QUFBUk5Uc0JIUUU3QVIwQk93RWRBVHNCSFFFN0FSMEJPd0VkQVNzQlBRRXJBVDBCS3dFZEFTc0JIUUVyQVQwQk93RTlBVHNCUFFFckFUMEJLd0dBZ0VCQVFFQkFRRUJBUUVDQWdFQkFRRUJBUUlDQVFFQkFRRUJBUUVBRHdFQkFRRUJBUUVCQVFFQkFnSUNBZ0VCQVFFQ0FnSUNBUUVDQWdFQkFBQUFCQUFBQUFBT0FBd0FBSHdBQUdRRTdBUmtCT3dFWkFUc0JHUUU3QVIwQkt3RTlBU3NCSFFFckFSMEJLd0dBZ0lDQWdJQkFRSUNBUUVDQWdJQ0FBWUFCZ1A4QS93QUJBQUVBL3dEL0FFQkFRRUJBUUVCQUFBQUFBUUFBQUlBRGdBTUFBQ2NBQUJFMU93RWRBVHNCSFFFN0FUMEJPd0VkQVNzQkhRRXJBUjBCS3dFOUFTc0JQUUVyQVQwQkt3R0FnRUJBZ0lDQWdFQkFRRUNBZ0VCQVFFQkFRQUxBUUVCQWdJREF3TURBUUVCQVFFQkFRRUNBZ0FBQUFRQUFBQUFEQUFRQUFEOEFBQkUxS1FFZEFTc0JIUUU3QVIwQkt3RWRBU3NCSFFFN0FSMEJPd0VkQVNzQkhRRXJBVDBCT3dFOUFTc0JQUUVyQVQwQk93RTlBVHNCUFFFckFUMEJLd0VCZ0FHQXdNQ0FnSUNBUUVEQXdFQkFRRUNBZ0VCQXdNQkFRRUJBUUVCQVFFQkFBOEJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUFBQUlBQUFDQUE0QURBQUFYQUI4QUFCTTFLUUVkQVRzQkhRRXJBUjBCS1FFOUFTc0JQUUU3QVFVMUt3RWRBVHNCZ0FGQUFVQkFRRUJBL3NEK3dFQkFRRUFDQU1EQXdNQUN3RUJBUU1EQVFFQkFRTURBd01EQXdBQUJBQUFBZ0FPQUF3QUFJd0FBRVRVcEFSMEJLd0VkQVRzQkhRRXJBVDBCS3dFOUFTc0JHUUVyQVQwQk93RTlBU3NCQWNBQndFQkFRRUNBZ0VCQVFFREF3RUJBUUVBQ3dFQkFRTURBUUVCQVFNREEvd0QvQUVCQXdNQUFBQUlBQUFBQUE0QURBQUFYQUI4QUFCTTFLUUVkQVRzQkhRRXJBUjBCS1FFZEFTc0JHUUU3QVFVMUt3RWRBVHNCZ0FGQUFVQkFRRUJBL3dEL0FJQ0FRRUFDQU1EQXdNQUN3RUJBUUlDQVFFQ0FnQUZBQVVDQWdJQ0FBQUFBQVFBQUFBQURnQU1BQUNjQUFCTTFLUUVkQVNrQkhRRXBBUjBCT3dFZEFTc0JIUUVwQVQwQktRRTlBU2tCUFFFckFUMEJPd0dBQVVBQlFQOEEvd0FCQUFFQVFFQkFRUDdBL3NBQkFBRUEvd0QvQUVCQVFFQUN3RUJBUUlDQVFFQkFRRUJBUUVCQVFFQkFnSUFBQWdBQUFJQURnQU1BQUJzQUp3QUFFelVwQVIwQkt3RWRBVHNCSFFFckFSMEJLUUU5QVNzQlBRRTdBUVUxS3dFZEFUc0JQUUVyQVlBQmdBR0FnSUJBUUVCQS93RC9BRUJBUUVBQkFFQkFnSUJBUUFMQVFFQkFRRUNBZ0VCQVFFREF3RUJBd01DQWdBQUJBSUFBZ0FPQUF3QUFGd0FBRXpVcEFSMEJLd0VkQVRzQkhRRXJBVDBCS3dFOUFTc0JnQUdBQVlDQWdJQ0F3TUJBUUlDQUFzQkFRRURBd0VCQVFFREF3QUFBQUFFQUFBQ0FBNEFEQUFBbkFBQVJOVHNCSFFFN0FSMEJPd0U5QVNzQlBRRTdBUjBCT3dFZEFTc0JIUUVwQVQwQkt3RTlBU3NCZ0lCQVFJQ0FRRUNBZ0VCQVFFRC9BUDhBUUVCQVFBTEFRRUJBd01EQXdFQkFRRURBd0VCQVFFREF3QUFBQUFBQ0FBQUFBQU9BQXdBQUt3QXpBQUFUTlRzQkdRRTdBVDBCT3dFOUFUc0JIUUU3QVIwQkt3RWRBU3NCSFFFckFUMEJLd0U5QVNzQlBRRTdBUVUxS3dFZEFUc0JnRUJBUUVCQVFJQ0FRRUJBUUlDQVFFQ0FnRUJBUUVBQ0FFQkFRRUFDd0VEL0FQOEF3TUJBUUVCQXdNQkFRRUJBUUVCQVFNREF3TURBd0FBQUFBRUFBQUFBQTRBREFBQkhBQUFSTlRzQkhRRTdBUjBCT3dFOUFUc0JQUUU3QVIwQkt3RWRBU3NCSFFFN0FSMEJPd0VkQVNzQlBRRXJBVDBCS3dFZEFTc0JIUUVyQVQwQk93RTlBVHNCUFFFckFUMEJLd0dBZ0VCQVFFQkFRSUNBUUVCQVFFQkFRRUNBZ0VCQVFFQkFRSUNBUUVCQVFFQkFRRUFDd0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBZ0lDQWdFQkFRRUNBZ0lDQVFFQkFRRUJBQUFBQkFBQUFBQVFBQTRBQUp3QUFBUkU3QVJrQk93RVpBVHNCR1FFckFSMEJLd0VkQVNzQlBRRXJBVDBCS3dFWkFUc0JHUUU3QVFHQWdJQkFRSUNBUUVDQWdJQ0FnSUJBUUlDQVFFQUNRQUZBL3NEK3dBRUFBUUQvQVA4QVFFQkFRRUJBUUVBQkFBRUEvd0QvQUFBQkFBQUFnQU9BQXdBQUx3QUFFelU3QVJrQk93RTlBVHNCSFFFN0FSa0JPd0VkQVRzQkhRRXJBUjBCS3dFOUFTc0JIUUVyQVQwQkt3RTlBVHNCZ0VCQVFFQkFRRUJBUUVCQVFFQkFnSUJBUUlDQVFFQkFRQUxBUVA4QS93REF3TURBQVFBQkFFQkF3TUJBUUVCQVFFQkFRTURBQUFNQUFBQ0FBd0FFQUFBVEFCc0FJd0FBRXpVN0FSa0JPd0VkQVNzQlBRRXJBVDBCS3dFQk5Uc0JIUUVyQVNVMU93RWRBU3NCZ01EQWdJREF3RUJBUUVBQkFJQ0FnSUQrZ0lDQWdJQUN3RUQvQVA4QVFFQkFRTURBQVVCQVFFQkFRRUJBQUFBREFBQUFnQU9BQkFBQUp3QXZBRGNBQUJFMU93RWRBVHNCSFFFN0FUMEJLd0U5QVRzQkhRRTdBUjBCS3dFZEFTa0JQUUVyQVQwQkt3RUJOVHNCSFFFckFTVTFPd0VkQVNzQmdJQkFRSUNBUUVDQWdFQkFRRUQvQVA4QVFFQkFRQUlBZ0lDQWdQNkFnSUNBZ0FMQVFFQkF3TURBd0VCQVFFREF3RUJBUUVEQXdBRkFRRUJBUUVCQVFBQUFBQUlBQUFDQUE0QUVBQUFuQUM4QUFBRTFPd0VkQVNzQkhRRTdBUjBCT3dFZEFTc0JIUUVwQVQwQkt3RTlBVHNCUFFFN0FUMEJPd0VUTlNzQkhRRTdBUUlBUUVCQVFJQ0FRRUJBUVA3QS9zQkFRRUJBZ0lCQVFJREF3TURBQThCQVFFQkFRRUJBd01CQVFFQkF3TUJBUUVCQS9rREF3TUFBQUFFQUFBQ0FBNEFFQUFBM0FBQUJOVHNCSFFFckFSMEJPd0VkQVRzQkhRRXJBUjBCS1FFOUFTc0JQUUVyQVQwQk93RWRBVHNCSFFFN0FUMEJLd0U5QVNzQlBRRTdBUUlBUUVCQVFJQ0FRRUJBUVA4QS93QkFRRUJBZ0lCQVFJQ0FRRUJBUUVCQUE4QkFRRUJBUUVCQXdNQkFRRUJBd01CQVFFQkF3TURBd0VCQVFFQUFBQUlBQUFDQUE0QUVBQUF2QUQ4QUFCTTFPd0VaQVRzQlBRRTdBUjBCT3dFWkFUc0JIUUU3QVIwQkt3RWRBU3NCUFFFckFSMEJLd0U5QVNzQlBRRTdBUUUxT3dFZEFTc0JIUUVyQVQwQk93R0FRRUJBUUVCQVFFQkFRRUJBUUVDQWdFQkFnSUJBUUVCQUFZQkFRRUJBUUVCQVFBTEFRUDhBL3dEQXdNREFBUUFCQUVCQXdNQkFRRUJBUUVCQVFNREFBVUJBUUVCQVFFQkFBQUFBQUFFQUFBQ0FBNEFFQUFBbkFBQUJOVHNCSFFFN0FSMEJPd0VkQVNrQkhRRXBBUjBCS1FFZEFTa0JIUUVwQVJrQk93RTlBU3NCQVFCQVFFQkF3TUQrd1A3QUFRQUJBUDhBL3dBQlFBRkEva0QrUU1EQVFFQUR3RUJBUUVCQVFFQkFRRUJBUUVCQVFBRkFBVUJBUUFBQUFBQURBQUFBZ0FPQUJBQUFGd0FmQUNjQUFCa0JLUUVkQVNrQkhRRXBBUjBCS1FFZEFTa0JIUUVwQVFFMU93RWRBU3NCSlRVN0FSMEJLd0VCd0FIQS9zRCt3QUVBQVFEL0FQOEFBVUFCUVA1QS9rQUNBSUNBZ0lEK2dJQ0FnSUFCd0FGQVFFQkFRRUJBUUVCQVFBTkFRRUJBUUVCQVFBQUFBQUFCQUFBQUFBT0FCQUFBSndBQUVUVXBBUjBCS3dFZEFUc0JIUUU3QVJrQkt3RWRBU3NCUFFFN0FSa0JLd0VaQVNzQkdRRXJBUUZBQVVDQWdNREFRRUJBUUlDQVFFQ0FnSUNBUUVBRHdFQkFRRUJBUUVEL0FQOEFRRUJBUUFFQUFRRC9BUDhBQVlBQmdBQUFBQUFCQUlBQWdBT0FCQUFBR3dBQUFUVTdBUjBCS3dFZEFUc0JIUUVwQVJrQkt3RVpBVHNCUFFFN0FRSUFRRUJBUU1EQS93RC9BSUNBZ0lCQVFBUEFRRUJBUUVCQVFQOEEvd0FCUUFGQVFFQUFBQUVBQUFDQUE0QUVBQUEvQUFBQk5Ta0JIUUU3QVIwQkt3RTlBU3NCSFFFckFSMEJLUUVkQVNrQkhRRTdBUjBCT3dFOUFUc0JIUUVyQVIwQktRRTlBU3NCUFFFckFUMEJPd0U5QVRzQkFRQUJBQUVBUUVDQWdJQ0FRRUFCQUFFQS93RC9BRUJBZ0lDQWdFQkEvd0QvQUVCQVFFQkFRRUJBQThCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVEQXdFQkFBQUFBQUFFQUFBQ0FBNEFFQUFBM0FBQVROU2tCSFFFN0FSMEJLd0U5QVNzQkhRRXBBUjBCT3dFZEFTc0JIUUVwQVQwQkt3RTlBVHNCSFFFN0FUMEJLUUU5QVNzQlBRRTdBWUFCQUFFQVFFQ0FnSUNBQVFBQkFFQkFRRUQrd1A3QVFFQ0FnTURBL3dEL0FFQkFRRUFEd0VCQVFFQkFRRUNBZ0VCQWdJQkFRRUJBUUVCQVFJQ0FRRUNBZ0FBQkFJQUFnQU9BQkFBQUZ3QUFFelVwQVIwQkt3RVpBVHNCSFFFcEFUMEJPd0VaQVNzQmdBR0FBWUNBZ0lDQS9vRCtnSUNBZ0lBRHdFQkFRUDdBL3NCQVFFQkFBVUFCUUFBREFJQUFnQU9BQkFBQUZ3QWZBQ2NBQUJNMUtRRWRBU3NCSFFFN0FSMEJLUUU5QVRzQlBRRXJBUUUxT3dFZEFTc0JKVFU3QVIwQkt3R0FBWUFCZ0lDQWdJRCtnUDZBZ0lDQWdBSUFnSUNBZ1A0QWdJQ0FnQUxBUUVCQXdNQkFRRUJBd01BQlFFQkFRRUJBUUVBQUFBQUFBUUFBQUlBRGdBUUFBQmNBQUFFUk93RVpBU3NCSFFFcEFUMEJLd0U5QVRzQkhRRTdBUUtBZ0lCQVFQN0Evc0JBUUlDQXdNQUNnQUdBL29EK2dFQkFRRUJBUUVCQUFBQUFBZ0FBQUlBRGdBUUFBQ01BS3dBQUFUVTdBUjBCT3dFZEFUc0JIUUVyQVIwQkt3RVpBU3NCR1FFckFSa0JPd0U5QVRzQkFUVXJBUjBCT3dFQkFJQ0FnSUJBUUVCQXdNQkFRSUNBUUVCQVFBR0FRRUJBUUFQQVFJQ0FRRURBd0VCQUFVQUJRUDdBL3NBQlFBRkFRRUQrUU1EQXdBQUNBQUFBZ0FPQUJBQUFJd0FyQUFBWkFUc0JIUUU3QVQwQk93RWRBVHNCSFFFN0FSMEJLd0VkQVNzQlBRRXJBUjBCS3dFQk5Tc0JIUUU3QVlDQVFFQkFRSUNBUUVCQVFNREFRRUNBZ0FLQVFFQkFRQUpBQWNEQXdNREFnSUJBUU1EQVFFREF3TURBQVVEQXdNQUFBQUFBQVFBQUFJQURnQVFBQUI4QUFCRTFLUUVkQVNzQkhRRTdBUjBCT3dFWkFTc0JHUUVyQVJrQkt3RVpBU3NCQVVBQlFJQ0F3TUJBUUlDQWdJQ0FnRUJBQThCQVFFQkFRRUJBL3dEL0FBRUFBUUQvQVA4QUFZQUJnQUFBQUFBQ0FBQUFnQU9BQkFBQUx3QS9BQUFaQVRzQkhRRTdBVDBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBVHNCSFFFN0FSMEJLd0U5QVNzQlBRRXJBUjBCS3dFQk5Uc0JIUUVyQVIwQkt3RTlBVHNCZ0lDQWdFQkFnSUJBUUVCQVFFQkFRSUNBUUVDQWdJQ0FBZ0JBUUVCQVFFQkFRQUhBQVVDQWdFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFJQ0FBMEJBUUVCQVFFQkFBQUFBQUFFQUFBQ0FBNEFFQUFBdkFBQUJOVHNCSFFFN0FSMEJPd0VaQVNzQlBRRXJBUjBCS3dFZEFTc0JHUUU3QVIwQk93RTlBVHNCUFFFckFUMEJLd0VCQUVCQVFFREF3SUNBUUVCQVFNREFnSUJBUUVCQVFFQkFRQVBBUUVCQVFFRCt3UDdBZ0lCQVFFQkFBVUFCUUlDQVFFQkFRRUJBQUFBQUFBSUFBQUNBQTRBRUFBQXZBRGNBQUJNMU93RWRBVHNCUFFFN0FSMEJLd0VkQVRzQkdRRXJBUjBCS1FFOUFTa0JQUUVwQVQwQkt3RTlBVHNCUFFFckFRRTFLd0VkQVRzQmdFQkF3TUJBUUVCQWdJQkFRUDZBL29BQlFBRkEvd0QvQUVCQWdJQkFRQUlBd01EQXdBUEFRRUJBUUVCQVFFQkEvd0QvQUVCQVFFQkFRRUJBZ0lCQVFQOEFnSUNBQUFBQUFBRUFBQUFBQTRBRUFBQVhBQUFaQVRzQkdRRTdBUmtCT3dFWkFTc0JIUUVyQVQwQkt3R0FnTURBZ0lEQXdFQkF3TUFDUUFIQS9vRCtnQUdBQVlEK1FQNUFRRUJBUUFBQUFBSUFBQUNBQTRBRUFBQWZBQzhBQUFFMU93RWRBVHNCSFFFN0FSa0JLd0U5QVNzQkhRRXJBUmtCT3dFOUFUc0JCVFVyQVIwQkt3RWRBVHNCUFFFckFRRUF3TUJBUUVCQWdJREF3SUNBUUVCQVFBRUFRRUJBUU1EQVFFQUR3RUJBUUVCQS9zRCt3SUNBZ0lBQlFBRkFRRUJBUUVCQWdJQ0FnQUFBQUFBQ0FBQUFnQU9BQkFBQUZ3QWZBQUFaQVNrQkhRRXBBUjBCS1FFZEFUc0JIUUVyQVIwQktRRUJOU3NCSFFFN0FRR0FBWUQvQVA4QUFRQUJBRUJBUUVEK2dQNkFBb0RBd01EQUFrQUJ3RUJBZ0lCQVFJQ0FRRUFCQUlDQWdBQUFBQUFEQUFBQWdBT0FCQUFBRndBZkFDY0FBQmtCS1FFZEFUc0JIUUVyQVIwQk93RWRBU3NCSFFFcEFRRTFLd0VkQVRzQkVUVXJBUjBCT3dFQmdBR0FRRUJBUUVCQVFFRCtnUDZBQW9EQXdNREF3TURBd0FKQUFjQkFRSUNBUUVDQWdFQkFBb0NBZ0lEL0FJQ0FnQUFCQUlBQWdBT0FCQUFBQ3dBQUV4RXBBUjBCS1FFWkFTc0JnQUdBQVlEL0FQOEFnSUFDUUFIQVFFRCtnUDZBQUFBQ0FBQUFBQVFBQkFBQUh3QXJBQUFCTlNrQkdRRTdBUjBCS3dFOUFTa0JIUUVyQVQwQk93RTlBVHNCUFFFN0FRRVJLd0VkQVNzQkhRRTdBUUdBQVFBQkFFQkFnSUQvQVA4QWdJQkFRRUJBUUVBQkFFQkFRRUNBZ0FQQVFQNUEva0JBUUVCQVFFQ0FnTURBZ0lEK3dBRkFnSURBd0FBQUFBQUJBQUFBZ0FPQUJBQUFGd0FBR1FFcEFSMEJLUUVkQVNrQkhRRXBBUjBCS1FFZEFTa0JBY0FCd1A3QS9zQUJBQUVBL3dEL0FBRkFBVUQrUVA1QUFrQUJ3RUJBZ0lCQVFJQ0FRRUFBQVFBQUFJQURnQVFBQUVjQUFCRTFPd0VkQVRzQlBRRTdBUjBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBVHNCSFFFN0FSMEJLd0U5QVNzQkhRRXJBVDBCS3dFZEFTc0JQUUU3QVQwQk93RTlBU3NCUFFFckFZQ0FRRUJBUUVCQWdJQkFRRUJBUUVCQVFJQ0FRRUJBUUVCQWdJQkFRRUJBUUVCQVFBT0FnSUNBZ0lDQWdJQ0FnSUJBUUVCQVFFQ0FnSUNBZ0lDQWdJQ0FnSUJBUUVCQVFFQUFBQUVBQUFDQUE0QUVBQUEzQUFBVE5Ta0JIUUU3QVIwQkt3RWRBVHNCSFFFckFSMEJLUUU5QVNzQlBRRTdBUjBCT3dFOUFTc0JQUUU3QVQwQkt3RWRBU3NCUFFFN0FZQUJRQUZBUUVCQVFFQkFRRUQrd1A3QVFFQ0FnTURBd01EQXdNREFnSUJBUUFQQVFFQkFnSUJBUUlDQVFFQkFRRUJBUUVDQWdFQkFnSUJBUUVCQUFBRUFBQUNBQTRBRUFBQW5BQUFaQVRzQkhRRTdBVDBCT3dFOUFUc0JQUUU3QVJrQkt3RTlBU3NCSFFFckFSMEJLd0VkQVNzQmdJQkFRRUJBUUVDQWdJQ0FRRUJBUUVCQWdJQUNRQUhBd01CQVFFQkFRRUQrUVA1QXdNQkFRRUJBUUVBQUFBQUNBQUFBZ0FPQUJBQUFLd0EzQUFBVE5Uc0JIUUU3QVQwQk93RWRBU3NCSFFFN0FSa0JLd0U5QVNzQkhRRXJBUjBCS3dFWkFUc0JQUUVyQVFVMUt3RWRBVHNCUFFFN0FZQkFRTURBUUVCQVFJQ0FnSUJBUUVCQXdNQ0FnRUJBQVlDQWdFQkFRRUFEd0VCQVFFQkFRRUJBUVA3QS9zQ0FnRUJBUUVBQlFBRkFRRURBUUlDQVFFQUFBUUFBQUlBRGdBUUFBRHNBQUJrQk93RWRBVHNCUFFFN0FUMEJPd0U5QVRzQkhRRXJBUjBCS3dFZEFTc0JIUUU3QVIwQk93RWRBVHNCSFFFckFUMEJLd0U5QVNzQkhRRXJBWUNBUUVCQVFFQkFnSUJBUUVCQVFFQkFRRUJBUUVEQXdFQkFRRUNBZ0FKQUFjREF3RUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFJQ0FBQUVBQUFDQUE0QUVBQUFqQUFBQk5Ta0JHUUVyQVJrQkt3RWRBU3NCSFFFckFSMEJLd0U5QVRzQlBRRTdBVDBCT3dFQmdBRUFBUUNBZ0VCQVFFQkFRSUNBUUVCQVFFQkFBOEJBL2tEK1FBR0FBWUJBUUlDQXdNREF3SUNBUUVBQUFBRUFBQUNBQTRBRUFBQW5BQUFaQVRzQkhRRTdBUjBCT3dFOUFUc0JQUUU3QVJrQkt3RTlBU3NCSFFFckFUMEJLd0VkQVNzQmdJQkFRRUJBUUVDQWdJQ0FRRUJBUUVCQWdJQUNRQUhBUUVCQVFFQkFRRUQrUVA1QXdNQkFRRUJBd01BQUFBQUJBQUFBZ0FPQUJBQUFGd0FBR1FFN0FSMEJPd0U5QVRzQkdRRXJBVDBCS3dFZEFTc0JnSURBd0lDQWdJREF3SUNBQWtBQndNREF3TUQrUVA1QXdNREF3QUFBQUFJQUFBQ0FBNEFFQUFBWEFCOEFBQk0xS1FFZEFUc0JHUUVyQVIwQktRRTlBU3NCR1FFN0FRRVJLd0VaQVRzQmdBRkFBVUJBUUVCQS9zRCt3RUJBUUVBQ0FNREF3TUFEd0VCQVFQN0Evc0JBUUVCQUFVQUJRUDdBQVVEK3dQN0FBQUVBQUFDQUE0QUVBQUFQQUFBWkFTa0JHUUVyQVJrQkt3RVpBU3NCQWNBQndJQ0F3TUNBZ0FKQUFjRCtRUDVBQVlBQmdQNkEvb0FBQWdBQUFJQURnQVFBQUJNQUd3QUFHUUVwQVIwQk93RWRBU3NCSFFFcEFSMEJLd0VCTlNzQkhRRTdBUUdBQVlCQVFFQkEvd0QvQUlDQUFvREF3TURBQWtBQndFQkF3TUJBUUlDQUFrREF3TUFBQUFBQUFRQUFBSUFEZ0FRQUFEY0FBQUUxS1FFZEFUc0JIUUVyQVQwQkt3RWRBU3NCSFFFN0FSMEJPd0U5QVRzQkhRRXJBUjBCS1FFOUFTc0JQUUVyQVQwQk93RTlBVHNCQVFBQkFBRUFRRUNBZ0lDQVFFQkFRSUNBZ0lCQVFQOEEvd0JBUUVCQVFFQkFRQVBBUUVCQVFFQkFRRUJBd01CQVFFQkFRRUJBUUVCQVFFREF3RUJBQUFBQUFBRUFnQUNBQTRBRUFBQVBBQUFUTlNrQkhRRXJBUmtCS3dFWkFTc0JnQUdBQVlDQWdJQ0FnSUFEd0VCQVFQNkEvb0FCZ0FHQUFBQUFBUUFBQUlBRGdBUUFBQ2NBQUJFMU93RWRBVHNCUFFFN0FSa0JLd0VkQVNrQlBRRXJBVDBCT3dFZEFUc0JQUUVwQVQwQkt3R0FnTURBZ0lCQVFQN0Evc0JBUUlDQXdNRC9BUDhBUUVBRFFNREF3TURBL29EK2dFQkFRRUJBUUVCQWdJQkFRQUFBQUFBREFBQUFnQU9BQkFBQUp3QXZBRGNBQUFFMU93RWRBVHNCSFFFN0FSMEJLd0VkQVNzQkhRRXJBVDBCS3dFOUFTc0JQUUU3QVQwQk93RVJOU3NCSFFFN0FTVTFLd0VkQVRzQkFZQkFRSUNBUUVCQVFJQ0FRRUNBZ0VCQVFFQ0FnRUJBUUVBQkFFQkFRRUFEd0VCQVFFQkF3TUJBUUVCQVFFQkFRTURBUUVEK3dNREF3TURBd01BQUFRQUFBSUFEZ0FRQUFFY0FBQkUxT3dFZEFUc0JIUUU3QVQwQk93RTlBVHNCSFFFckFSMEJLd0VkQVRzQkhRRTdBUjBCS3dFOUFTc0JQUUVyQVIwQkt3RWRBU3NCUFFFN0FUMEJPd0U5QVNzQlBRRXJBWUNBUUVCQVFFQkFnSUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFnSUJBUUVCQVFFQkFRQU9BZ0VCQVFFQkFRRUJBZ0lCQVFFQkFRRUNBZ0VCQVFFQkFRRUJBZ0lCQVFFQkFRRUFBQUFFQUFBQUFBNEFFQUFBWEFBQVpBVHNCR1FFN0FSa0JPd0VaQVRzQkhRRXJBVDBCS1FHQWdJQ0FnSUJBUUlDQS9zRCt3QUpBQWNEK2dQNkFBWUFCZ1A2QS9vQ0FnRUJBQUFFQUFBQ0FBNEFFQUFBWEFBQVJOVHNCSFFFN0FUMEJPd0VaQVNzQlBRRXBBVDBCS3dHQWdNREFnSUNBZ1A4QS93QkFRQU5Bd01EQXdNRCtRUDVBd01CQVFBQUFBUUFBQUlBRGdBUUFBQmNBQUJrQk93RVpBVHNCR1FFN0FSa0JPd0VaQVRzQkdRRXBBWUNBUUVCQVFFQkFnSUQrUVA1QUFrQUJ3UDZBL29BQmdBR0Evb0QrZ0FHQUFZRCtRUDVBQUFFQUFBQUFCQUFFQUFBZkFBQVpBVHNCR1FFN0FSa0JPd0VaQVRzQkdRRTdBUmtCT3dFZEFTc0JQUUVwQVlDQVFFQkFRRUJBZ0lCQVFJQ0Evb0QrZ0FKQUFjRCtnUDZBQVlBQmdQNkEvb0FCZ0FHQS9vRCtnSUNBUUVBQUFnQUFBSUFEZ0FRQUFCY0FId0FBRVRVN0FSMEJPd0VkQVRzQkhRRXJBUjBCS1FFWkFTc0JBVFVyQVIwQk93SEF3TURBUUVCQVFQN0Evc0JBUUFLQWdJQ0FnQVBBUUlDQVFFREF3RUJBQVlBQmdQNUF3TURBQUFJQUFBQ0FBNEFFQUFBYkFDTUFBQmtCT3dFZEFUc0JIUUU3QVQwQk93RVpBU3NCUFFFckFSMEJLUUVCTlNzQkhRRTdBWUNBZ0lCQVFJQ0FnSUJBUVA4QS93QUJnRUJBUUVBQ1FBSEFnSUJBUU1EQS9rRCtRRUJBUUVBQlFNREF3QUFBQUFBQ0FBQUFnQU9BQkFBQUV3QWJBQUFaQVRzQkhRRXBBUjBCT3dFZEFTc0JIUUVwQVFFMUt3RWRBVHNCZ0lBQkFBRUFRRUJBUVA2QS9vQUNnTURBd01BQ1FBSEFnSUJBUU1EQVFFQUJRTURBd0FBQUFBQUJBQUFBZ0FPQUJBQUFQd0FBRXpVcEFSMEJPd0VkQVRzQkhRRXJBUjBCS3dFZEFTa0JQUUVyQVQwQk93RWRBVHNCUFFFN0FUMEJLUUU5QVNrQlBRRXJBVDBCS3dFZEFTc0JQUUU3QVlBQkFBRUFRRUJBUUVCQVFFRC9BUDhBUUVDQWdJQ0FRRUQvQVA4QUFRQUJBRUJBZ0lDQWdFQkFBOEJBUUVCQVFNREFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBSUFBQUNBQkFBRUFBQW5BQzhBQUJrQk93RWRBVHNCUFFFN0FUMEJPd0VkQVRzQkdRRXJBUjBCS3dFOUFTc0JQUUVyQVIwQkt3RUJFU3NCR1FFN0FZQ0FRRUJBUU1EQVFFQkFRTURBUUVCQVFJQ0FBd0JBUUVCQUFrQUJ3TURBZ0lCQVFFQkEvc0Qrd0VCQVFFQ0FnTURBQWNBQlFQN0Evc0FBQUFBQ0FBQUFnQU9BQkFBQUl3QXZBQUFUTlNrQkdRRXJBVDBCS3dFZEFTc0JIUUVyQVQwQk93RTlBVHNCUFFFckFUMEJPd0VGTlNzQkhRRTdBUjBCT3dHQUFZQUJnSUNBUUVCQVFNREFRRUJBUUlDQVFFQUNBTURBUUVDQWdBUEFRUDVBL2tDQWdFQkFRRUJBUUVCQVFFREF3TURBZ0lCQVFBQUNBQUFBZ0FPQUF3QUFHd0FqQUFBVE5Ta0JIUUU3QVJrQktRRTlBU3NCUFFFN0FUMEJLUUU5QVNrQkFUVXJBUjBCT3dHQUFVQUJRRUJBL29EK2dFQkFRRUFCQUFFQS93RC9BQUlBd01EQXdBTEFRRUJBL3dEL0FFQkFRRUJBUUVCQS9zQkFRRUFBQUFJQUFBQ0FBNEFFQUFBakFDOEFBQk0xS1FFZEFTa0JIUUU3QVQwQk93RWRBVHNCSFFFckFSMEJLUUU5QVNzQkdRRTdBUUUxS3dFZEFTc0JIUUU3QVlBQmdBR0Evc0Qrd0VCQXdNQkFRRUJBL3NEK3dFQkFRRUFDQUlDQVFFREF3QVBBUUVCQWdJQkFRRUJBd01CQVFFQkFBVUFCUVA1QXdFQkFnSUFBQUFBQUF3QUFBSUFEZ0FNQUFCY0FId0FuQUFBWkFTa0JIUUU3QVIwQkt3RWRBVHNCSFFFckFSMEJLUUVCTlNzQkhRRTdBUlUxS3dFZEFUc0JBWUFCZ0VCQVFFQkFRRUJBL29EK2dBS0F3TURBd01EQXdNQUJ3QUZBUUVCQVFFQkFRRUJBUUFIQVFFQkF3RUJBUUFBQUFRQ0FBSUFEZ0FNQUFBc0FBQk1SS1FFZEFTa0JHUUVyQVlBQmdBR0Evd0QvQUlDQUFjQUJRRUJBL3dEL0FBQUFBZ0FBQUFBRGdBTUFBQnNBSXdBQUV6VXBBUmtCS3dFZEFTa0JQUUVwQVQwQktRRTlBU3NCUFFFN0FRVTFLd0VkQVRzQmdBR0FBWUJBUVA3QS9zQUJBQUVBL3dEL0FFQkFRRUFDQU1EQXdNQUN3RUQrd1A3QVFFQkFRRUJBUUVDQWdJQ0FnSUFBQUFBQ0FBQUFnQU9BQXdBQUd3QWpBQUFUTlNrQkhRRTdBUjBCS1FFZEFTa0JIUUVwQVQwQkt3RTlBVHNCQlRVckFSMEJPd0dBQVVBQlFFQkEvc0Qrd0FFQUFRRCt3UDdBUUVCQVFBSUF3TURBd0FMQVFFQkFnSUJBUUVCQVFFREF3RUJBUUVBQUFRQUFBSUFEZ0FNQUFEY0FBQkUxT3dFZEFUc0JQUUU3QVIwQk93RTlBVHNCSFFFckFSMEJPd0VkQVNzQlBRRXJBUjBCS3dFOUFTc0JIUUVyQVQwQk93RTlBU3NCZ0lCQVFFQkFRRUNBZ0VCQVFFQ0FnRUJBUUVCQVFJQ0FRRUJBUUFLQWdJQ0FnSUNBZ0lDQWdJQkFRSUNBZ0lDQWdJQ0FnSUNBZ0VCQUFBQUJBQUFBZ0FPQUF3QUFKd0FBRVRVcEFSMEJPd0VkQVNzQkhRRTdBUjBCS3dFZEFTa0JQUUVwQVQwQktRRTlBU2tCUFFFcEFRR0FBWUJBUUVCQVFFQkFRUDZBL29BQlFBRkEvd0QvQUFFQUFRRCt3UDdBQXNCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUJBQUFBZ0FPQUF3QUFKd0FBR1FFN0FSMEJPd0U5QVRzQlBRRTdBVDBCT3dFWkFTc0JQUUVyQVIwQkt3RWRBU3NCSFFFckFZQ0FRRUJBUUVCQWdJQ0FnRUJBUUVCQVFJQ0FBY0FCUU1EQVFFQkFRRUJBL3NEK3dNREFRRUJBUUVCQUFBQUFBZ0FBQUlBRGdBUUFBQzhBUHdBQUV6VTdBUjBCT3dFOUFUc0JIUUVyQVIwQk93RVpBU3NCUFFFckFSMEJLd0VkQVNzQkhRRXJBUmtCT3dFOUFTc0JCVFVyQVIwQk93RTlBVHNCUFFFN0FZQkFRTURBUUVCQVFJQ0FnSUJBUUVCQVFFQ0FnSUNBUUVBQ0FNREFRRUJBUUVCQUE4QkFRRUJBUUVCQVFFRCt3UDdBd01CQVFFQkFRRUFCUUFGQVFFREFRTURBUUVCQVFBQUJBQUFBZ0FPQUF3QUFMd0FBR1FFN0FSMEJPd0U5QVRzQlBRRTdBUjBCS3dFZEFTc0JIUUU3QVIwQk93RWRBU3NCUFFFckFUMEJLd0VkQVNzQmdJQ0FnRUJBZ0lCQVFFQkFRRUJBUUlDQVFFQ0FnSUNBQWNBQlFJQ0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFnSUFBQVFBQUFJQURnQU1BQUJzQUFBRTFLUUVaQVNzQkdRRXJBUjBCS3dFZEFTc0JQUUU3QVQwQk93RUJBQUZBQVVDQWdJQ0FRRUNBZ0VCQVFFQUN3RUQrd1A3QUFRQUJBSUNBZ0lDQWdJQ0FBQUFCQUFBQWdBT0FBd0FBSndBQUdRRTdBUjBCT3dFZEFUc0JQUUU3QVQwQk93RVpBU3NCUFFFckFSMEJLd0U5QVNzQkhRRXJBWUNBUUVCQVFFQkFnSUNBZ0VCQVFFQkFRSUNBQWNBQlFFQkFRRUJBUUVCQS9zRCt3TURBZ0lDQWdNREFBQUFBQVFBQUFJQURnQU1BQUJjQUFCa0JPd0VkQVRzQlBRRTdBUmtCS3dFOUFTc0JIUUVyQVlDQXdNQ0FnSUNBd01DQWdBSEFBVUNBZ0lDQS9zRCt3SUNBZ0lBQUFBQUNBQUFBZ0FPQUF3QUFGd0FmQUFBVE5Ta0JIUUU3QVIwQkt3RWRBU2tCUFFFckFUMEJPd0VGTlNzQkhRRTdBWUFCUUFGQVFFQkFRUDdBL3NCQVFFQkFBZ0RBd01EQUFzQkFRRURBd0VCQVFFREF3TURBd01BQUFRQUFBSUFEZ0FNQUFBOEFBQmtCS1FFWkFTc0JHUUVyQVJrQkt3RUJ3QUhBZ0lEQXdJQ0FBY0FCUVA3QS9zQUJBQUVBL3dEL0FBQUNBQUFBQUFPQUF3QUFFd0FiQUFBWkFTa0JIUUU3QVIwQkt3RWRBU2tCSFFFckFRRTFLd0VkQVRzQkFZQUJnRUJBUUVEL0FQOEFnSUFDZ01EQXdNQUJnQUdBUUVDQWdFQkFnSUFDQUlDQWdBQUFBQUFCQUFBQWdBT0FBd0FBRndBQUV6VXBBUjBCS1FFZEFTa0JIUUVwQVQwQkt3RTlBVHNCZ0FHQUFZRCt3UDdBQVVBQlFQNkEvb0JBUUVCQUFzQkFRRURBd0VCQVFFREF3QUFCQUlBQWdBT0FBd0FBRHdBQUV6VXBBUjBCS3dFWkFTc0JHUUVyQVlBQmdBR0FnSUNBZ0lDQUFzQkFRRUQvQVA4QUFRQUJBQUFBQUFFQUFBQUFBNEFEQUFBZkFBQVJOVHNCSFFFN0FUMEJPd0VaQVNzQkhRRXBBVDBCS1FFOUFTa0JQUUVyQVlDQXdNQ0FnRUJBL3NEK3dBRUFBUUQvQVA4QVFFQUNRTURBd01EQS9zRCt3RUJBUUVCQVFFQkFBQUFEQUFBQUFBT0FBNEFBSndBdkFEY0FBQUUxT3dFZEFUc0JIUUU3QVIwQkt3RWRBU3NCSFFFckFUMEJLd0U5QVNzQlBRRTdBVDBCT3dFUk5Tc0JIUUU3QVNVMUt3RWRBVHNCQVlCQVFJQ0FRRUJBUUlDQVFFQ0FnRUJBUUVDQWdFQkFRRUFCQUVCQVFFQURRRUJBUUVCQXdNQkFRRUJBUUVCQVFNREFRRUQrd01EQXdNREF3TUFBQVFBQUFJQURnQU1BQUNjQUFCRTFPd0VkQVRzQlBRRTdBUjBCS3dFZEFUc0JIUUVyQVQwQkt3RWRBU3NCUFFFN0FUMEJLd0dBZ01EQWdJQ0FnSUNBZ0lEQXdJQ0FnSUNBZ0FLQWdFQkFRRUNBZ0VCQWdJQkFRRUJBZ0lCQVFBQUFBUUFBQUFBRGdBTUFBQmNBQUJrQk93RVpBVHNCR1FFN0FSa0JPd0VkQVNzQlBRRXBBWUNBZ0lDQWdFQkFnSUQrd1A3QUFjQUJRUDhBL3dBQkFBRUEvd0QvQUlDQVFFQUFBUUFBQUlBRGdBTUFBQmNBQUJFMU93RWRBVHNCUFFFN0FSa0JLd0U5QVNrQlBRRXJBWUNBd01DQWdJQ0Evd0QvQUVCQUFvQ0FnSUNBZ1A3QS9zQ0FnRUJBQUFBQkFBQUFnQU9BQXdBQUZ3QUFHUUU3QVJrQk93RVpBVHNCR1FFN0FSa0JPd0VaQVNrQmdJQkFRRUJBUUVDQWdQNUEva0FCd0FGQS93RC9BQUVBQVFEL0FQOEFBUUFCQVA3QS9zQUFBUUFBQUFBRUFBTUFBQjhBQUJrQk93RVpBVHNCR1FFN0FSa0JPd0VaQVRzQkdRRTdBUjBCS3dFOUFTa0JnSUJBUUVCQVFFQ0FnRUJBZ0lEK2dQNkFBY0FCUVA4QS93QUJBQUVBL3dEL0FBRUFBUUQvQVA4QWdJQkFRQUFDQUFBQWdBT0FBd0FBRndBZkFBQVJOVHNCSFFFN0FSMEJPd0VkQVNzQkhRRXBBUmtCS3dFQk5Tc0JIUUU3QWNEQXdNQkFRRUJBL3NEK3dFQkFBb0NBZ0lDQUFzQkFnSUJBUUVCQVFFQUJBQUVBL3NCQVFFQUFBZ0FBQUlBRGdBTUFBQnNBSXdBQUdRRTdBUjBCT3dFZEFUc0JQUUU3QVJrQkt3RTlBU3NCSFFFcEFTVTFLd0VkQVRzQmdJQ0FnRUJBZ0lDQWdFQkEvd0QvQUFHQVFFQkFRQUhBQVVDQWdFQkF3TUQrd1A3QVFFQkFRTUJBUUVBQUFnQUFBSUFEZ0FNQUFCTUFHd0FBR1FFN0FSMEJLUUVkQVRzQkhRRXJBUjBCS1FFbE5Tc0JIUUU3QVlDQUFRQUJBRUJBUUVEK2dQNkFBb0RBd01EQUFjQUJRSUNBUUVCQVFFQkF3RUJBUUFBQkFBQUFnQU9BQXdBQUx3QUFFelVwQVIwQk93RWRBU3NCSFFFcEFUMEJLd0U5QVRzQkhRRTdBVDBCS3dFOUFUc0JQUUVyQVIwQkt3RTlBVHNCZ0FGQUFVQkFRRUJBL3NEK3dFQkFnSURBd0lDQWdJREF3SUNBUUVBQ3dFQkFRTURBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFJQUFBQ0FCQUFEQUFBbkFDOEFBQmtCT3dFZEFUc0JQUUU3QVQwQk93RWRBVHNCSFFFckFSMEJLd0U5QVNzQlBRRXJBUjBCS3dFQk5Tc0JIUUU3QVlDQVFFQkFRTURBUUVCQVFNREFRRUJBUUlDQUF3QkFRRUJBQWNBQlFJQ0FRRUJBUUVCQXdNQkFRRUJBUUVDQWdBRkF3TURBQUFBQUFBSUFBQUNBQTRBREFBQWJBQ01BQUJNMUtRRVpBU3NCUFFFckFSMEJLd0U5QVRzQlBRRXJBVDBCT3dFRk5Tc0JIUUU3QVlBQmdBR0FnSURBd0lDQVFFQkFRRUJBQWdEQXdNREFBc0JBL3NEK3dJQ0FnSUNBZ0VCQVFFQkFRRUJBQUFJQUFBQ0FBNEFFQUFBckFETUFBQUUxT3dFZEFUc0JIUUU3QVIwQk93RWRBU2tCSFFFcEFSMEJLUUU5QVNzQlBRRTdBVDBCT3dFOUFTc0JBVFVyQVIwQk93RUJBRUJBUUVDQWdFQkEvc0Qrd0FFQUFRRCt3UDdBUUVCQVFJQ0FRRUFCZ01EQXdNQUR3RUJBUUVCQVFFQ0FnRUJBUUVCQVFNREFRRUJBUVA3QVFFQkFBQVFBQUFDQUE0QUVBQUFiQUNNQUt3QXpBQUFUTlNrQkhRRTdBUjBCS1FFZEFTa0JIUUVwQVQwQkt3RTlBVHNCQlRVckFSMEJPd0VETlRzQkhRRXJBU1UxT3dFZEFTc0JnQUZBQVVCQVFQN0Evc0FCQUFFQS9zRCt3RUJBUUVBQ0FNREF3TUNBZ0lDQWdQNkFnSUNBZ0FMQVFFQkFnSUJBUUVCQVFFREF3RUJBUUVBQndFQkFRRUJBUUVBQUFRQUFBQUFEZ0FRQUFDOEFBQk0xT3dFZEFUc0JIUUVyQVIwQk93RWRBVHNCSFFFckFSMEJLd0U5QVRzQlBRRXJBUjBCS3dFWkFTc0JQUUU3QVlDQWdJQ0FnSURBd0VCQVFFQ0FnRUJBZ0lDQWdFQkFRRUFEd0VCQVFFQkFRRUJBUU1EQVFFQkFRTURBd01BQlFBRkFRRUFBQUFBQkFJQUFnQU9BQkFBQUd3QUFBVFU3QVIwQkt3RWRBVHNCSFFFcEFSa0JLd0VaQVRzQlBRRTdBUUlBUUVCQVFNREEvd0QvQUlDQWdJQkFRQVBBUUVCQVFFQkFRUDhBL3dBQlFBRkFRRUFBQUFFQUFBQ0FBNEFEQUFBdkFBQVROU2tCSFFFN0FSMEJLd0U5QVNzQkhRRTdBUjBCS3dFZEFUc0JQUUU3QVIwQkt3RWRBU2tCUFFFckFUMEJPd0dBQVVBQlFFQkFnSURBd0lDQWdJREF3SUNBUUVEK3dQN0FRRUJBUUFMQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkF3TUFBQVFBQUFJQURnQU1BQUNjQUFCTTFLUUVkQVNrQkhRRXBBUjBCT3dFZEFTc0JIUUVwQVQwQktRRTlBU2tCUFFFckFUMEJPd0dBQVVBQlFQOEEvd0FCQUFFQVFFQkFRUDZBL29BQlFBRkEvd0QvQUVCQVFFQUN3RUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQWdDQUFJQURnQVFBQUJNQUd3QUFBVFU3QVJrQk93RWRBU2tCUFFFN0FUMEJLd0VUTlRzQkhRRXJBUUVBd01DQWdQNkEvb0NBZ0VCQWdJQ0FnSUFDd0VEL0FQOEFRRUJBUU1EQUFVQkFRRUFBQUFBQUF3Q0FBSUFEZ0FRQUFCTUFHd0FqQUFBQk5Uc0JHUUU3QVIwQktRRTlBVHNCUFFFckFRRTFPd0VkQVNzQkpUVTdBUjBCS3dFQkFNREFnSUQrZ1A2QWdJQkFRQUVBZ0lDQWdQNkFnSUNBZ0FMQVFQOEEvd0JBUUVCQXdNQUJRRUJBUUVCQVFFQUFBQUFDQUlBQUFBTUFCQUFBRXdBYkFBQUJOVHNCR1FFckFSMEJLUUU5QVRzQkdRRXJBUk0xT3dFZEFTc0JBWURBd0VCQS93RC9BTURBUUVDQWdJQ0FnQUxBUVA3QS9zQkFRRUJBQVFBQkFBRkFRRUJBQUFBQ0FBQUFnQU9BQXdBQUl3QXJBQUFCTlRzQkhRRTdBUjBCT3dFZEFTc0JIUUVyQVQwQkt3RWRBU3NCUFFFN0FUMEJPd0VCTlNzQkhRRTdBUUVBZ0lDQWdFQkFRRURBd0VCQWdJQkFRRUJBQVlCQVFFQkFBc0JBUUVCQVFJQ0FRRURBd01EQXdNQkFRUDhBZ0lDQUFBQUFBZ0FBQUlBRGdBTUFBQ01BS3dBQUdRRTdBUjBCT3dFOUFUc0JIUUU3QVIwQk93RWRBU3NCSFFFckFUMEJLd0VkQVNzQkFUVXJBUjBCT3dHQWdFQkFRRUNBZ0VCQVFFREF3RUJBZ0lBQ2dFQkFRRUFCd0FGQWdJQ0FnRUJBUUVDQWdFQkFnSUNBZ0FFQWdJQ0FBQUFBQUFFQUFBQ0FBNEFFQUFBbkFBQVROVHNCSFFFN0FSMEJLd0VkQVRzQkhRRTdBUjBCS3dFOUFTc0JIUUVyQVJrQkt3RTlBVHNCZ0lDQWdJQ0FnTURBUUVDQWdJQ0FnSUJBUUVCQUE4QkFRRUJBUUVCQVFFREF3TURBd01BQlFBRkFRRUFBQUFBQ0FBQUFnQU9BQkFBQUx3QS9BQUFaQVRzQkhRRTdBVDBCT3dFOUFUc0JIUUVyQVIwQkt3RWRBVHNCSFFFN0FSMEJLd0U5QVNzQlBRRXJBUjBCS3dFQk5Uc0JIUUVyQVIwQkt3RTlBVHNCZ0lDQWdFQkFnSUJBUUVCQVFFQkFRSUNBUUVDQWdJQ0FBZ0JBUUVCQVFFQkFRQUhBQVVDQWdFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFJQ0FBMEJBUUVCQVFFQkFBQUFBQUFJQUFBQ0FBNEFFQUFBbkFEY0FBQmtCT3dFZEFUc0JQUUU3QVQwQk93RTlBVHNCR1FFckFUMEJLd0VkQVNzQkhRRXJBUjBCS3dFQk5Uc0JIUUU3QVIwQkt3RTlBU3NCZ0lCQVFFQkFRRUNBZ0lDQVFFQkFRRUJBZ0lBQkFFQkFRRUJBUUVCQUFjQUJRTURBUUVCQVFFQkEvc0Qrd01EQVFFQkFRRUJBQTBCQVFFQkFRRUJBQUFBQ0FBQUFBQU9BQkFBQUx3QTNBQUFUTlRzQkhRRTdBVDBCT3dFZEFTc0JIUUU3QVJrQkt3RWRBU2tCUFFFcEFUMEJLUUU5QVNzQlBRRTdBVDBCS3dFQk5Tc0JIUUU3QVlCQVFNREFRRUJBUUlDQVFFRCt3UDdBQVFBQkFQOEEvd0JBUUlDQVFFQUNBTURBd01BRHdFQkFRRUJBUUVCQVFQN0Evc0JBUUVCQVFFQkFRTURBUUVEK3dNREF3QUFBQUFBQkFBQUFBQU9BQXdBQUZ3QUFHUUU3QVJrQk93RVpBVHNCR1FFckFSMEJLd0U5QVNzQmdJREF3SUNBd01CQVFNREFBY0FCUVA4QS93QUJBQUVBL3NEK3dFQkFRRUFBQUFBQkFBQUNBQU9BQW9BQUJ3QUFFVFVwQVIwQktRRUJ3QUhBL2tEK1FBSkFRRUJBQUFBQkFBQUNBQVFBQW9BQUJ3QUFFVFVwQVIwQktRRUNBQUlBL2dEK0FBSkFRRUJBQUFBQkFBQUNBQU9BQW9BQUJ3QUFFVFVwQVIwQktRRUJ3QUhBL2tEK1FBSkFRRUJBQUFBQkFRQUNnQUtBQkFBQUR3QUFBVFU3QVIwQkt3RWRBU3NCUFFFN0FRR0FnSUJBUUlDQVFFQUR3RUJBUUlDQWdJQUFBQUFBQVFFQUFvQUNnQVFBQUE4QUFBRTFPd0VkQVNzQkhRRXJBVDBCT3dFQmdJQ0FRRUNBZ0VCQUE0Q0FnSUJBUUVCQUFBQUFBQUVCQUFDQUFvQUNBQUFQQUFBQk5Uc0JIUUVyQVIwQkt3RTlBVHNCQVlDQWdFQkFnSUJBUUFHQWdJQ0FRRUJBUUFBQUFBQUJBSUFDZ0FPQUJBQUFId0FBQVRVN0FSMEJPd0U5QVRzQkhRRXJBUjBCS3dFOUFTc0JIUUVyQVQwQk93RUJBSUNBUUVDQWdFQkFnSUJBUUlDQVFFQUR3RUJBUUVCQVFFQ0FnSUNBZ0lDQWdBQUFBQUFCQUlBQ2dBT0FCQUFBSHdBQUFUVTdBUjBCT3dFOUFUc0JIUUVyQVIwQkt3RTlBU3NCSFFFckFUMEJPd0VCQUlDQVFFQ0FnRUJBZ0lCQVFJQ0FRRUFEZ0lDQWdJQ0FnSUJBUUVCQVFFQkFRQUFBQUFBQkFBQUFnQU1BQWdBQUh3QUFFelU3QVIwQk93RTlBVHNCSFFFckFSMEJLd0U5QVNzQkhRRXJBVDBCT3dHQWdJQkFRSUNBUUVDQWdFQkFnSUJBUUFHQWdJQ0FnSUNBZ0VCQVFFQkFRRUJBQUFFQWdBQ0FBNEFFQUFBWEFBQUJOVHNCSFFFN0FSMEJLd0VaQVNzQkdRRXJBVDBCT3dFQmdJQ0FnSUNBZ0lDQWdJQ0FnQU9BZ0lDQVFFRC9BUDhBQVFBQkFFQkFBQUFBQUFFQWdBQ0FBNEFFQUFBbkFBQUJOVHNCSFFFN0FSMEJLd0VkQVRzQkhRRXJBUjBCS3dFOUFTc0JQUUU3QVQwQkt3RTlBVHNCQVlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdBT0FnSUNBUUVCQVFFQkFnSUNBZ0VCQVFFQkFRQUFBQUFBQkFRQUJBQU1BQXdBQUZ3QUFBVFU3QVIwQk93RWRBU3NCSFFFckFUMEJLd0U5QVRzQkFZQ0FnRUJBUUVDQWdFQkFRRUFDd0VCQVFJQ0FRRUJBUUlDQUFBQUFBQU1BQUFDQUE0QUJnQUFIQUE4QUZ3QUFBVFU3QVIwQkt3RWxOVHNCSFFFckFTVTFPd0VkQVNzQkF3QkFRRUJBL29CQVFFQkEvb0JBUUVCQUFRQ0FnSUNBZ0lDQWdJQ0FnQUFBQUFBRkFBQUFnQVFBQkFBQVB3QlBBRmNBWndCdkFBQUJOVHNCSFFFckFSMEJLd0VkQVNzQkhRRXBBUjBCS3dFZEFTa0JQUUVyQVIwQkt3RWRBU3NCUFFFN0FUMEJPd0U5QVRzQlBRRTdBVDBCT3dFOUFUc0JBVFVyQVIwQk93RWRBVHNCUFFFckFRVTFLd0VkQVRzQkFUVTdBUjBCS3dFZEFTc0JQUUU3QVJjMUt3RWRBVHNCQXdCQVFFQkFRRUJBUUFFQUFRQkFRUDhBL3dCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVEL0FFQkFRRUJBUUVCQUFZQkFRRUJBL1FDQWdFQkFnSUJBUUlCQVFFQkFBOEJBUUVCQVFFQkFRRUNBZ0VCQWdJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQS9rQkFRRUJBUUVCQVFFQkFRQUxBUUlDQVFFQ0FnRUJBUUVBQUFBQUJBUUFCQUFNQUE0QUFKd0FBQVRVN0FSMEJLd0VkQVNzQkhRRTdBUjBCT3dFZEFTc0JQUUVyQVQwQkt3RTlBVHNCUFFFN0FRSUFnSUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFRRUFEUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQUFBQUFBUUNBQVFBQ2dBT0FBQ2NBQUJNMU93RWRBVHNCSFFFN0FSMEJLd0VkQVNzQkhRRXJBVDBCT3dFOUFUc0JQUUVyQVQwQkt3R0FnSUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFRRUFEUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQUFRQUFBSUFEZ0FRQUFEY0FBQUUxT3dFZEFTc0JIUUVyQVIwQkt3RWRBU3NCSFFFckFSMEJLd0VkQVNzQlBRRTdBVDBCT3dFOUFUc0JQUUU3QVQwQk93RTlBVHNCQXdCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBQUFBQXdBQUFJQURnQVFBQURjQVB3QkhBQUFCTlRzQkhRRTdBUjBCS3dFZEFTc0JIUUU3QVIwQk93RWRBU3NCSFFFckFUMEJLd0U5QVNzQlBRRTdBVDBCS3dFOUFUc0JQUUU3QVFVMUt3RWRBVHNCRVRVckFSMEJPd0VCZ01EQVFFQ0FnSUNBZ0lDQWdFQkF3TUJBUUlDQVFFQkFRSUNBUUVBQkFFQkFRRUJBUUVCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBL2tCQVFFQUFBd0FBQUFBRGdBUUFBQ3NBTXdBN0FBQVROVHNCSFFFN0FSMEJPd0U5QVRzQkhRRTdBUjBCS3dFZEFTc0JIUUVyQVQwQkt3RWRBU3NCR1FFN0FRRVJLd0VaQVRzQkpUVXJBUjBCT3dHQWdJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQXdNQkFRQUVBZ0lDQWdBR0FRRUJBUUFQQVFFQkFnSUJBUUVCQXdNQkFRRUJBZ0lCQVFBR0FBWUQrd0FGQS9zRCt3TURBd01BQUFBQUVBQUFBZ0FPQUJBQUFCd0FmQUNjQU93QUFKVFU3QVIwQkt3RVROVHNCSFFFN0FSMEJLd0VkQVNzQlBRRXJBVDBCT3dFWE5Tc0JIUUU3QVNVUk93RWRBVHNCR1FFckFSa0JLd0VaQVNzQkFnREF3TURBZ0VCQVFFQkFRRUJBUUVCQVFJQkFRRUJBL1FDQWdFQkFRRUJBUUVCQXdFQkFRQU5BUUVCQXdNQkFRRUJBd01EQXdNREFRQUhBUUVEK2dQNkFBWUFCZ1A2QS9vQUFBQUFCQUlBQ0FBT0FCQUFBR3dBQUV6VXBBUmtCS3dFOUFTc0JIUUVyQVQwQkt3RWRBU3NCUFFFckFZQUJnQUdBUUVCQVFFQkFRRUJBUUVCQUE4QkEvd0QvQUlDQWdJREF3TURBd01BQUFRQUFBSUFFQUFRQUFDY0FBQUUxT3dFZEFTa0JIUUVwQVIwQkt3RTlBU3NCUFFFckFUMEJLd0U5QVRzQlBRRTdBVDBCT3dFQmdFQkFBUUFCQVA4QS93QkFRRUJBUUVCQVFFQkFRRUJBUUFQQVFJQ0F3TUNBZ0VCQVFFQkFRRUJBUUVCQVFBQUFBQUFCQUFBQUFBT0FCQUFBSndBQUFUVTdBUjBCT3dFZEFUc0JIUUU3QVIwQkt3RVpBU3NCR1FFckFUMEJPd0U5QVRzQlBRRTdBUUdBUUVCQVFFQkFRRUNBZ01EQWdJQkFRRUJBUUVBRHdFQkFRRUJBUUVCQVFQOEEvd0FCQUFFQVFFQkFRRUJBQUFBQUFBRUFBQUNBQkFBRUFBQW5BQUFCTlRzQkhRRTdBUjBCT3dFZEFUc0JIUUVyQVIwQkt3RWRBU3NCSFFFckFUMEJLUUU5QVNrQkFnQkFRRUJBUUVCQVFFQkFRRUJBUUVCQS93RC9BQUVBQVFBRGdJQkFRRUJBUUVCQVFFQkFRRUJBUUlDQXdNQUFBQUFBQVFBQUFBQURnQVFBQUNjQUFBRVJPd0VaQVRzQkhRRXJBUjBCS3dFZEFTc0JIUUVyQVQwQkt3RTlBU3NCUFFFckFUMEJPd0VCQU1EQWdJQkFRRUJBUUVCQVFFQkFRRUJBUUlDQUF3QUJBUDhBL3dCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFJQUFBQ0FBNEFFQUFBdkFEY0FBQk0xS1FFZEFUc0JIUUU3QVJrQkt3RWRBU2tCUFFFckFUMEJPd0U5QVNrQlBRRXJBVDBCS3dFZEFTc0JQUUU3QVFFMUt3RWRBVHNCZ0FFQUFRQkFRRUJBUUVEK3dQN0FRRUJBUUFFQUFRQkFRSUNBZ0lCQVFBSUF3TURBd0FQQVFFQkFRRUQvQVA4QVFFQkFRSUNBUUVCQVFFQkFRRUJBUVA0QWdJQ0FBQUFBQUFJQUFBQ0FBNEFFQUFBWEFDY0FBQUUxT3dFZEFUc0JIUUU3QVJrQktRRVpBVHNCUFFFN0FRVTFLd0VkQVNzQkdRRTdBUmtCS3dFQkFNREFRRUJBUVA1QS9rQkFRRUJBQVFCQVFFQkF3TUJBUUFQQVFFQkFRRUQrd1A3QUFVQUJRRUJBUUVCQVFQOEEvd0FCQUFFQUFBQUJBQUFBZ0FPQUJBQUFEd0FBR1FFcEFSa0JLd0VaQVNzQkdRRXJBUUhBQWNDQWdNREFnSUFDUUFIQS9rRCtRQUdBQVlEK2dQNkFBQUVBQUFDQUE0QUVBQUEvQUFBUk5Ta0JIUUVyQVQwQkt3RWRBVHNCSFFFN0FSMEJLd0VkQVNzQkhRRTdBVDBCT3dFZEFTa0JQUUU3QVQwQk93RTlBVHNCUFFFckFUMEJLd0U5QVNzQkFjQUJ3SUNBZ0lCQVFJQ0FnSUJBUUlDQWdJRCtRUDVBUUVCQVFFQkFRRUJBUUVCQUE4QkFnSUJBUUVCQVFFQkFRRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQkFRRUJBQUFBQkFBQUFnQU9BQkFBQUd3QUFBUkVwQVIwQkt3RVpBU3NCUFFFckFUMEJLd0U5QVRzQkhRRTdBUUdBQVFBQkFJQ0F3TUJBUUVCQWdJQkFRQUxBQVVCQVFQNkEvb0JBUUVCQVFFQkFRQUFBQUFNQUFBRUFBNEFEQUFBbkFDOEFOd0FBRXpVN0FSMEJPd0U5QVRzQkhRRTdBUjBCS3dFZEFTc0JQUUVyQVIwQkt3RTlBU3NCUFFFN0FRVTFLd0VkQVRzQkpUVXJBUjBCT3dHQWdJQkFRSUNBUUVCQVFJQ0FRRUNBZ0VCQVFFQUJBSUNBZ0lBQmdJQ0FnSUFDd0VCQVFFQkFRRUNBZ0VCQVFFQkFRRUJBZ0lDQWdJQ0FnSUNBZ0FBQkFJQUFBQU9BQkFBQUp3QUFBVFU3QVIwQk93RWRBU3NCUFFFckFSa0JLd0VkQVNzQlBRRXJBVDBCT3dFZEFUc0JHUUU3QVFJQWdJQkFRRUJBUUVCQVFJQ0FRRUJBUUVCQVFFQUR3RUJBUUVCQVFFRCtnUDZBUUVCQVFFQkFRRUFCZ0FHQUFBQUFBQUlBQUFFQUF3QURnQUFmQUQ4QUFCTTFPd0VkQVRzQlBRRTdBUjBCS3dFZEFTc0JQUUVyQVIwQkt3RTlBVHNCRVRVN0FSMEJPd0U5QVRzQkhRRXJBUjBCS3dFOUFTc0JIUUVyQVQwQk93R0FnSUNBZ0VCQVFFQ0FnSUNBUUVCQVFJQ0FnSUJBUUVCQWdJQ0FnRUJBUUVBQndFQkFRRUJBUUVCQVFFQkFRRUJBUUFIQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQkFBQUFnQU9BQkFBQU53QUFBVFU3QVIwQkt3RWRBVHNCSFFFckFSMEJPd0VkQVNrQkhRRXJBUjBCS3dFOUFUc0JQUUVyQVQwQk93RTlBU3NCUFFFcEFUMEJPd0VEQUVCQVFFQkFRTURBd01EK3dQN0FRRUJBUUVCQVFFREF3TURBQVVBQlFFQkFBOEJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFBQUFnRUFBSUFEQUFRQUFBY0FMd0FBSlRVcEFSMEJLUUVCTlRzQkhRRXJBUjBCS3dFZEFUc0JIUUU3QVIwQkt3RTlBU3NCUFFFckFUMEJPd0U5QVRzQkFRQUJBQUVBL3dEL0FBRUFnSUJBUUVCQVFFQkFRSUNBUUVCQVFFQkFRRURBUUVCQUEwQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFBQUFJQkFBQ0FBd0FFQUFBSEFDOEFBQ1UxS1FFZEFTa0JFVFU3QVIwQk93RWRBVHNCSFFFckFSMEJLd0VkQVNzQlBRRTdBVDBCT3dFOUFTc0JQUUVyQVFFQUFRQUJBUDhBL3dDQWdFQkFRRUJBUUVCQWdJQkFRRUJBUUVCQVFNQkFRRUFEUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQUFBRUFBQUNBQTRBRUFBQWZBQUFCTlRzQkhRRTdBUjBCT3dFZEFUc0JIUUVwQVQwQk93RTlBVHNCUFFFN0FRR0FRRUJBUUVCQVFFRCtRUDVBUUVCQVFFQkFBNENBZ0lDQWdJQ0FRRUJBUUlDQWdJQUFBQUVBQUFDQUE0QUVBQUFmQUFBWkFUc0JIUUU3QVIwQk93RWRBVHNCSFFFckFSMEJLd0VkQVNzQkhRRXJBVUJBZ0lDQWdJQ0FnSUNBZ0lDQVFFQUNRQUhBUUVCQVFFQkFRRUJBUUVCQVFFQUFBUUFBQUlBRGdBUUFBQjhBQUJFMUtRRWRBU3NCSFFFckFSMEJLd0VkQVNzQlBRRXJBVDBCS3dFOUFTc0JBY0FCd0VCQVFFQkFRRUJBUUVCQVFFQkFBOEJBUUVDQWdJQ0FnSUNBZ0lDQWdJQUFBQUFBQVFBQUFJQURnQVFBQUI4QUFBRTFPd0VaQVNzQlBRRXJBVDBCS3dFOUFTc0JQUUU3QVQwQk93RTlBVHNCQXdCQVFFQkFnSUNBZ0lDQWdJQ0FnSUNBQThCQS9rRCtRRUJBUUVCQVFFQkFRRUJBUUFBQUFnQUFBSUFEZ0FRQUFEY0FYd0FBQVRVN0FSMEJPd0VkQVRzQkhRRTdBUjBCS3dFZEFTc0JIUUVyQVIwQkt3RTlBU3NCUFFFckFUMEJLd0U5QVRzQlBRRTdBVDBCT3dFWE5Tc0JIUUVyQVIwQkt3RWRBVHNCSFFFN0FSMEJPd0U5QVRzQlBRRTdBVDBCS3dFOUFTc0JBWUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBZ0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUE4QkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUFCQUFBQWdBT0FCQUFBTndBQUFUVTdBUjBCT3dFZEFTc0JIUUVyQVIwQk93RWRBU3NCUFFFckFUMEJLd0VkQVNzQkhRRXJBVDBCT3dFOUFTc0JQUUVyQVQwQk93RUJnRUJBd01CQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkF3TUFEZ0lDQWdFQkFRRUJBUUlDQVFFQkFRRUJBUUVDQWdFQkFRRUJBUUFBQUFBQUNBQUFBZ0FPQUJBQUFMd0JIQUFBQk5Uc0JIUUU3QVIwQkt3RWRBU3NCSFFFN0FSMEJLd0U5QVNzQkhRRXJBVDBCT3dFOUFTc0JQUUVyQVQwQk93RVhOU3NCSFFFckFSMEJPd0VkQVRzQlBRRTdBVDBCS3dFQmdFQkF3TUJBUUVCQVFFQkFRTURBUUVCQVFFQkFRRURBd0lCQVFFQkFRRUJBUUVCQVFFQURnSUNBZ0VCQVFFQkFRSUNBUUVCQVFJQ0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUVBQUFDQUE0QUVBQUF2QUFBQk5Uc0JIUUU3QVIwQk93RWRBVHNCSFFFckFSMEJPd0VkQVNrQlBRRTdBVDBCS3dFOUFUc0JQUUU3QVQwQk93RUJnRUJBUUVCQVFFQkFnSUJBUVA3QS9zQkFRSUNBUUVCQVFFQkFBOEJBUUVCQVFFQkFnSUJBUUVCQVFFQkFRSUNBUUVCQVFBQUFBZ0NBQUlBRGdBUUFBQjhBSndBQUFUVTdBUjBCT3dFZEFTc0JIUUU3QVIwQktRRTlBVHNCUFFFckFUMEJPd0VGTlNzQkhRRTdBUUdBZ0lDQWdJQ0FRRUQvQVA4QVFFQ0FnSUNBQVFDQWdJQ0FBNENBZ0lDQWdJQ0FRRUJBUUlDQWdJQ0FnSUNBQUFBQkFBQUFnQU9BQkFBQUx3QUFFelU3QVIwQk93RTlBVHNCSFFFN0FSMEJLd0VkQVNzQkhRRXJBUjBCS3dFOUFTc0JQUUVyQVQwQkt3RTlBVHNCZ0lDQVFFQ0FnRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQVBBUUVCQVFFQkFRTURBUUVCQVFFQkFRRUJBUUVCQXdNQUFBUUFBQUlBRGdBUUFBRGNBQUFFMU93RWRBVHNCSFFFN0FSMEJPd0VkQVNzQkhRRXJBUjBCS3dFZEFTc0JQUUVyQVQwQkt3RTlBU3NCUFFFN0FUMEJPd0U5QVRzQkFZQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBOEJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFBQUFRQUFBSUFEZ0FRQUFEY0FBQUVST3dFZEFUc0JIUUU3QVIwQk93RWRBU3NCSFFFckFUMEJPd0U5QVNzQlBRRXJBUmtCS3dFZEFTc0JQUUVyQVQwQk93RTlBVHNCQVlCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFJQ0FRRUJBUUlDQUF3QUJBRUJBUUVCQVFFQkFRRUJBUUVCQVFFRC9BUDhBUUVCQVFFQkFRRUFBQXdDQUFJQURnQVFBQUFjQUZ3QWZBQUFURVNrQkdRRXBBUUUxS1FFZEFUc0JIUUVyQVIwQk93RUZOU3NCSFFFN0FZQUJnQUdBL29EK2dBS0Evd0QvQU1EQWdJREF3UDhBUUVCQVFBSkFBY0QrUVA1QUFrREFRRUJBUUVCQXdFQkFRQUFBQUFFQWdBQ0FBd0FCZ0FBTEFBQUJOVHNCSFFFcEFUMEJPd0VCZ01EQS9zRCt3SUNBQVVCQWdJQkFRQUFBQXdBQUFJQUVBQVFBQUM4QU53QkhBQUFCTlRzQkhRRTdBUjBCT3dFZEFTc0JIUUVyQVIwQkt3RTlBU3NCSFFFckFUMEJLd0U5QVNzQlBRRTdBVDBCT3dFWE5Tc0JIUUU3QVFVMUt3RWRBU3NCSFFFN0FUMEJPd0VDQUVCQWdJQkFRRUJBUUVDQWdFQkFRRUJBUUVCQVFFREF3SUJBUUVCQUFRQkFRRUJBUUVCQVFBUEFRRUJBUUVEQXdFQkFRRUJBUUVCQVFFQkFRTURBUUVCQVFFQkFnSUNBZ0VCQVFFQUFBUUFBQUlBRGdBUUFBQ01BQUFFMU93RWRBU3NCSFFFcEFSa0JLd0VaQVNzQkdRRXJBUmtCS3dFOUFUc0JQUUU3QVFFQXdNQ0FnQUVBQVFDQWdJQ0FnSUJBUUVCQVFFQUR3RUJBUUVCQS9zRCt3QUVBQVFEL0FQOEFBUUFCQUVCQVFFQUFBQUlBQUFDQUE0QUVBQUFiQUNNQUFBRTFLUUVaQVNzQkdRRXJBUmtCS3dFWkFTc0JQUUU3QVQwQk93RUZOU3NCSFFFN0FRRUFBVUFCUUlDQWdJQ0FnRUJBUUVCQVFBR0FnSUNBZ0FQQVFQNUEva0FCQUFFQS93RC9BQUVBQVFCQVFFQkFRRUJBUUFBQUFBQVNBTjRBQVFBQUFBQUFBQUJPQUo0QUFRQUFBQUFBQVFBT0FRc0FBUUFBQUFBQUFnQUhBU29BQVFBQUFBQUFBd0FxQVlnQUFRQUFBQUFBQkFBT0FkRUFBUUFBQUFBQUJRQU5BZndBQVFBQUFBQUFCZ0FNQWlRQUFRQUFBQUFBRFJFMUpKMEFBUUFBQUFBQURnQWFOZ2tBQXdBQkJBa0FBQUNjQUFBQUF3QUJCQWtBQVFBY0FPMEFBd0FCQkFrQUFnQU9BUm9BQXdBQkJBa0FBd0JVQVRJQUF3QUJCQWtBQkFBY0FiTUFBd0FCQkFrQUJRQWFBZUFBQXdBQkJBa0FCZ0FZQWdvQUF3QUJCQWtBRFNKcUFqRUFBd0FCQkFrQURnQTBOZE1BS0FCakFDa0FJQUF5QURBQU1RQXhBQ0FBUXdCdkFHUUFlUUFnQUNJQVF3QnZBR1FBWlFCTkFHRUFiZ0F6QURnQUlnQWdBRUlBYndCcEFITUFZd0JzQUdFQWFRQnlBQzRBSUFCU0FHVUFiQUJsQUdFQWN3QmxBR1FBSUFCMUFHNEFaQUJsQUhJQUlBQjBBR2dBWlFBZ0FGTUFTUUJNQUNBQVR3QndBR1VBYmdBZ0FFWUFid0J1QUhRQUlBQk1BR2tBWXdCbEFHNEFjd0JsQUM0QUFDaGpLU0F5TURFeElFTnZaSGtnSWtOdlpHVk5ZVzR6T0NJZ1FtOXBjMk5zWVdseUxpQlNaV3hsWVhObFpDQjFibVJsY2lCMGFHVWdVMGxNSUU5d1pXNGdSbTl1ZENCTWFXTmxibk5sTGdBQVVBQnlBR1VBY3dCekFDQUFVd0IwQUdFQWNnQjBBQ0FBTWdCUUFBQlFjbVZ6Y3lCVGRHRnlkQ0F5VUFBQVVnQmxBR2NBZFFCc0FHRUFjZ0FBVW1WbmRXeGhjZ0FBUmdCdkFHNEFkQUJHQUc4QWNnQm5BR1VBSUFBeUFDNEFNQUFnQURvQUlBQlFBSElBWlFCekFITUFJQUJUQUhRQVlRQnlBSFFBSUFBeUFGQUFJQUE2QUNBQU1RQXlBQzBBTmdBdEFESUFNQUF4QURFQUFFWnZiblJHYjNKblpTQXlMakFnT2lCUWNtVnpjeUJUZEdGeWRDQXlVQ0E2SURFeUxUWXRNakF4TVFBQVVBQnlBR1VBY3dCekFDQUFVd0IwQUdFQWNnQjBBQ0FBTWdCUUFBQlFjbVZ6Y3lCVGRHRnlkQ0F5VUFBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQURJQUxnQXhBRFFBSUFBQVZtVnljMmx2YmlBeUxqRTBJQUFBVUFCeUFHVUFjd0J6QUZNQWRBQmhBSElBZEFBeUFGQUFBRkJ5WlhOelUzUmhjblF5VUFBQVF3QnZBSEFBZVFCeUFHa0Fad0JvQUhRQUlBQW9BR01BS1FBZ0FESUFNQUF4QURFQUxBQWdBRU1BYndCa0FIa0FJQUFpQUVNQWJ3QmtBR1VBVFFCaEFHNEFNd0E0QUNJQUlBQkNBRzhBYVFCekFHTUFiQUJoQUdrQWNnQWdBQ2dBWXdCdkFHUUFlUUJBQUhvQWJ3QnVBR1VBTXdBNEFDNEFiZ0JsQUhRQUtRQXNBQW9BZHdCcEFIUUFhQUFnQUZJQVpRQnpBR1VBY2dCMkFHVUFaQUFnQUVZQWJ3QnVBSFFBSUFCT0FHRUFiUUJsQUNBQVVBQnlBR1VBY3dCekFDQUFVd0IwQUdFQWNnQjBBQzRBQ2dBS0FGUUFhQUJwQUhNQUlBQkdBRzhBYmdCMEFDQUFVd0J2QUdZQWRBQjNBR0VBY2dCbEFDQUFhUUJ6QUNBQWJBQnBBR01BWlFCdUFITUFaUUJrQUNBQWRRQnVBR1FBWlFCeUFDQUFkQUJvQUdVQUlBQlRBRWtBVEFBZ0FFOEFjQUJsQUc0QUlBQkdBRzhBYmdCMEFDQUFUQUJwQUdNQVpRQnVBSE1BWlFBc0FDQUFWZ0JsQUhJQWN3QnBBRzhBYmdBZ0FERUFMZ0F4QUM0QUNnQlVBR2dBYVFCekFDQUFiQUJwQUdNQVpRQnVBSE1BWlFBZ0FHa0Fjd0FnQUdNQWJ3QndBR2tBWlFCa0FDQUFZZ0JsQUd3QWJ3QjNBQ3dBSUFCaEFHNEFaQUFnQUdrQWN3QWdBR0VBYkFCekFHOEFJQUJoQUhZQVlRQnBBR3dBWVFCaUFHd0FaUUFnQUhjQWFRQjBBR2dBSUFCaEFDQUFSZ0JCQUZFQUlBQmhBSFFBT2dBS0FHZ0FkQUIwQUhBQU9nQXZBQzhBY3dCakFISUFhUUJ3QUhRQWN3QXVBSE1BYVFCc0FDNEFid0J5QUdjQUx3QlBBRVlBVEFBS0FBb0FDZ0F0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBQ2dCVEFFa0FUQUFnQUU4QVVBQkZBRTRBSUFCR0FFOEFUZ0JVQUNBQVRBQkpBRU1BUlFCT0FGTUFSUUFnQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1RQWdBQzBBSUFBeUFEWUFJQUJHQUdVQVlnQnlBSFVBWVFCeUFIa0FJQUF5QURBQU1BQTNBQW9BTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUMwQUxRQXRBQzBBTFFBdEFDMEFMUUF0QUFvQUNnQlFBRklBUlFCQkFFMEFRZ0JNQUVVQUNnQlVBR2dBWlFBZ0FHY0Fid0JoQUd3QWN3QWdBRzhBWmdBZ0FIUUFhQUJsQUNBQVR3QndBR1VBYmdBZ0FFWUFid0J1QUhRQUlBQk1BR2tBWXdCbEFHNEFjd0JsQUNBQUtBQlBBRVlBVEFBcEFDQUFZUUJ5QUdVQUlBQjBBRzhBSUFCekFIUUFhUUJ0QUhVQWJBQmhBSFFBWlFBZ0FIY0Fid0J5QUd3QVpBQjNBR2tBWkFCbEFBb0FaQUJsQUhZQVpRQnNBRzhBY0FCdEFHVUFiZ0IwQUNBQWJ3Qm1BQ0FBWXdCdkFHd0FiQUJoQUdJQWJ3QnlBR0VBZEFCcEFIWUFaUUFnQUdZQWJ3QnVBSFFBSUFCd0FISUFid0JxQUdVQVl3QjBBSE1BTEFBZ0FIUUFid0FnQUhNQWRRQndBSEFBYndCeUFIUUFJQUIwQUdnQVpRQWdBR1lBYndCdUFIUUFJQUJqQUhJQVpRQmhBSFFBYVFCdkFHNEFDZ0JsQUdZQVpnQnZBSElBZEFCekFDQUFid0JtQUNBQVlRQmpBR0VBWkFCbEFHMEFhUUJqQUNBQVlRQnVBR1FBSUFCc0FHa0FiZ0JuQUhVQWFRQnpBSFFBYVFCakFDQUFZd0J2QUcwQWJRQjFBRzRBYVFCMEFHa0FaUUJ6QUN3QUlBQmhBRzRBWkFBZ0FIUUFid0FnQUhBQWNnQnZBSFlBYVFCa0FHVUFJQUJoQUNBQVpnQnlBR1VBWlFBZ0FHRUFiZ0JrQUFvQWJ3QndBR1VBYmdBZ0FHWUFjZ0JoQUcwQVpRQjNBRzhBY2dCckFDQUFhUUJ1QUNBQWR3Qm9BR2tBWXdCb0FDQUFaZ0J2QUc0QWRBQnpBQ0FBYlFCaEFIa0FJQUJpQUdVQUlBQnpBR2dBWVFCeUFHVUFaQUFnQUdFQWJnQmtBQ0FBYVFCdEFIQUFjZ0J2QUhZQVpRQmtBQ0FBYVFCdUFDQUFjQUJoQUhJQWRBQnVBR1VBY2dCekFHZ0FhUUJ3QUFvQWR3QnBBSFFBYUFBZ0FHOEFkQUJvQUdVQWNnQnpBQzRBQ2dBS0FGUUFhQUJsQUNBQVR3QkdBRXdBSUFCaEFHd0FiQUJ2QUhjQWN3QWdBSFFBYUFCbEFDQUFiQUJwQUdNQVpRQnVBSE1BWlFCa0FDQUFaZ0J2QUc0QWRBQnpBQ0FBZEFCdkFDQUFZZ0JsQUNBQWRRQnpBR1VBWkFBc0FDQUFjd0IwQUhVQVpBQnBBR1VBWkFBc0FDQUFiUUJ2QUdRQWFRQm1BR2tBWlFCa0FDQUFZUUJ1QUdRQUNnQnlBR1VBWkFCcEFITUFkQUJ5QUdrQVlnQjFBSFFBWlFCa0FDQUFaZ0J5QUdVQVpRQnNBSGtBSUFCaEFITUFJQUJzQUc4QWJnQm5BQ0FBWVFCekFDQUFkQUJvQUdVQWVRQWdBR0VBY2dCbEFDQUFiZ0J2QUhRQUlBQnpBRzhBYkFCa0FDQUFZZ0I1QUNBQWRBQm9BR1VBYlFCekFHVUFiQUIyQUdVQWN3QXVBQ0FBVkFCb0FHVUFDZ0JtQUc4QWJnQjBBSE1BTEFBZ0FHa0FiZ0JqQUd3QWRRQmtBR2tBYmdCbkFDQUFZUUJ1QUhrQUlBQmtBR1VBY2dCcEFIWUFZUUIwQUdrQWRnQmxBQ0FBZHdCdkFISUFhd0J6QUN3QUlBQmpBR0VBYmdBZ0FHSUFaUUFnQUdJQWRRQnVBR1FBYkFCbEFHUUFMQUFnQUdVQWJRQmlBR1VBWkFCa0FHVUFaQUFzQUNBQUNnQnlBR1VBWkFCcEFITUFkQUJ5QUdrQVlnQjFBSFFBWlFCa0FDQUFZUUJ1QUdRQUx3QnZBSElBSUFCekFHOEFiQUJrQUNBQWR3QnBBSFFBYUFBZ0FHRUFiZ0I1QUNBQWN3QnZBR1lBZEFCM0FHRUFjZ0JsQUNBQWNBQnlBRzhBZGdCcEFHUUFaUUJrQUNBQWRBQm9BR0VBZEFBZ0FHRUFiZ0I1QUNBQWNnQmxBSE1BWlFCeUFIWUFaUUJrQUFvQWJnQmhBRzBBWlFCekFDQUFZUUJ5QUdVQUlBQnVBRzhBZEFBZ0FIVUFjd0JsQUdRQUlBQmlBSGtBSUFCa0FHVUFjZ0JwQUhZQVlRQjBBR2tBZGdCbEFDQUFkd0J2QUhJQWF3QnpBQzRBSUFCVUFHZ0FaUUFnQUdZQWJ3QnVBSFFBY3dBZ0FHRUFiZ0JrQUNBQVpBQmxBSElBYVFCMkFHRUFkQUJwQUhZQVpRQnpBQ3dBQ2dCb0FHOEFkd0JsQUhZQVpRQnlBQ3dBSUFCakFHRUFiZ0J1QUc4QWRBQWdBR0lBWlFBZ0FISUFaUUJzQUdVQVlRQnpBR1VBWkFBZ0FIVUFiZ0JrQUdVQWNnQWdBR0VBYmdCNUFDQUFid0IwQUdnQVpRQnlBQ0FBZEFCNUFIQUFaUUFnQUc4QVpnQWdBR3dBYVFCakFHVUFiZ0J6QUdVQUxnQWdBRlFBYUFCbEFBb0FjZ0JsQUhFQWRRQnBBSElBWlFCdEFHVUFiZ0IwQUNBQVpnQnZBSElBSUFCbUFHOEFiZ0IwQUhNQUlBQjBBRzhBSUFCeUFHVUFiUUJoQUdrQWJnQWdBSFVBYmdCa0FHVUFjZ0FnQUhRQWFBQnBBSE1BSUFCc0FHa0FZd0JsQUc0QWN3QmxBQ0FBWkFCdkFHVUFjd0FnQUc0QWJ3QjBBQ0FBWVFCd0FIQUFiQUI1QUFvQWRBQnZBQ0FBWVFCdUFIa0FJQUJrQUc4QVl3QjFBRzBBWlFCdUFIUUFJQUJqQUhJQVpRQmhBSFFBWlFCa0FDQUFkUUJ6QUdrQWJnQm5BQ0FBZEFCb0FHVUFJQUJtQUc4QWJnQjBBSE1BSUFCdkFISUFJQUIwQUdnQVpRQnBBSElBSUFCa0FHVUFjZ0JwQUhZQVlRQjBBR2tBZGdCbEFITUFMZ0FLQUFvQVJBQkZBRVlBU1FCT0FFa0FWQUJKQUU4QVRnQlRBQW9BSWdCR0FHOEFiZ0IwQUNBQVV3QnZBR1lBZEFCM0FHRUFjZ0JsQUNJQUlBQnlBR1VBWmdCbEFISUFjd0FnQUhRQWJ3QWdBSFFBYUFCbEFDQUFjd0JsQUhRQUlBQnZBR1lBSUFCbUFHa0FiQUJsQUhNQUlBQnlBR1VBYkFCbEFHRUFjd0JsQUdRQUlBQmlBSGtBSUFCMEFHZ0FaUUFnQUVNQWJ3QndBSGtBY2dCcEFHY0FhQUIwQUFvQVNBQnZBR3dBWkFCbEFISUFLQUJ6QUNrQUlBQjFBRzRBWkFCbEFISUFJQUIwQUdnQWFRQnpBQ0FBYkFCcEFHTUFaUUJ1QUhNQVpRQWdBR0VBYmdCa0FDQUFZd0JzQUdVQVlRQnlBR3dBZVFBZ0FHMEFZUUJ5QUdzQVpRQmtBQ0FBWVFCekFDQUFjd0IxQUdNQWFBQXVBQ0FBVkFCb0FHa0Fjd0FnQUcwQVlRQjVBQW9BYVFCdUFHTUFiQUIxQUdRQVpRQWdBSE1BYndCMUFISUFZd0JsQUNBQVpnQnBBR3dBWlFCekFDd0FJQUJpQUhVQWFRQnNBR1FBSUFCekFHTUFjZ0JwQUhBQWRBQnpBQ0FBWVFCdUFHUUFJQUJrQUc4QVl3QjFBRzBBWlFCdUFIUUFZUUIwQUdrQWJ3QnVBQzRBQ2dBS0FDSUFVZ0JsQUhNQVpRQnlBSFlBWlFCa0FDQUFSZ0J2QUc0QWRBQWdBRTRBWVFCdEFHVUFJZ0FnQUhJQVpRQm1BR1VBY2dCekFDQUFkQUJ2QUNBQVlRQnVBSGtBSUFCdUFHRUFiUUJsQUhNQUlBQnpBSEFBWlFCakFHa0FaZ0JwQUdVQVpBQWdBR0VBY3dBZ0FITUFkUUJqQUdnQUlBQmhBR1lBZEFCbEFISUFJQUIwQUdnQVpRQUtBR01BYndCd0FIa0FjZ0JwQUdjQWFBQjBBQ0FBY3dCMEFHRUFkQUJsQUcwQVpRQnVBSFFBS0FCekFDa0FMZ0FLQUFvQUlnQlBBSElBYVFCbkFHa0FiZ0JoQUd3QUlBQldBR1VBY2dCekFHa0Fid0J1QUNJQUlBQnlBR1VBWmdCbEFISUFjd0FnQUhRQWJ3QWdBSFFBYUFCbEFDQUFZd0J2QUd3QWJBQmxBR01BZEFCcEFHOEFiZ0FnQUc4QVpnQWdBRVlBYndCdUFIUUFJQUJUQUc4QVpnQjBBSGNBWVFCeUFHVUFJQUJqQUc4QWJRQndBRzhBYmdCbEFHNEFkQUJ6QUNBQVlRQnpBQW9BWkFCcEFITUFkQUJ5QUdrQVlnQjFBSFFBWlFCa0FDQUFZZ0I1QUNBQWRBQm9BR1VBSUFCREFHOEFjQUI1QUhJQWFRQm5BR2dBZEFBZ0FFZ0Fid0JzQUdRQVpRQnlBQ2dBY3dBcEFDNEFDZ0FLQUNJQVRRQnZBR1FBYVFCbUFHa0FaUUJrQUNBQVZnQmxBSElBY3dCcEFHOEFiZ0FpQUNBQWNnQmxBR1lBWlFCeUFITUFJQUIwQUc4QUlBQmhBRzRBZVFBZ0FHUUFaUUJ5QUdrQWRnQmhBSFFBYVFCMkFHVUFJQUJ0QUdFQVpBQmxBQ0FBWWdCNUFDQUFZUUJrQUdRQWFRQnVBR2NBSUFCMEFHOEFMQUFnQUdRQVpRQnNBR1VBZEFCcEFHNEFad0FzQUFvQWJ3QnlBQ0FBY3dCMUFHSUFjd0IwQUdrQWRBQjFBSFFBYVFCdUFHY0FJQUF0QUMwQUlBQnBBRzRBSUFCd0FHRUFjZ0IwQUNBQWJ3QnlBQ0FBYVFCdUFDQUFkd0JvQUc4QWJBQmxBQ0FBTFFBdEFDQUFZUUJ1QUhrQUlBQnZBR1lBSUFCMEFHZ0FaUUFnQUdNQWJ3QnRBSEFBYndCdUFHVUFiZ0IwQUhNQUlBQnZBR1lBSUFCMEFHZ0FaUUFLQUU4QWNnQnBBR2NBYVFCdUFHRUFiQUFnQUZZQVpRQnlBSE1BYVFCdkFHNEFMQUFnQUdJQWVRQWdBR01BYUFCaEFHNEFad0JwQUc0QVp3QWdBR1lBYndCeUFHMEFZUUIwQUhNQUlBQnZBSElBSUFCaUFIa0FJQUJ3QUc4QWNnQjBBR2tBYmdCbkFDQUFkQUJvQUdVQUlBQkdBRzhBYmdCMEFDQUFVd0J2QUdZQWRBQjNBR0VBY2dCbEFDQUFkQUJ2QUNBQVlRQUtBRzRBWlFCM0FDQUFaUUJ1QUhZQWFRQnlBRzhBYmdCdEFHVUFiZ0IwQUM0QUNnQUtBQ0lBUVFCMUFIUUFhQUJ2QUhJQUlnQWdBSElBWlFCbUFHVUFjZ0J6QUNBQWRBQnZBQ0FBWVFCdUFIa0FJQUJrQUdVQWN3QnBBR2NBYmdCbEFISUFMQUFnQUdVQWJnQm5BR2tBYmdCbEFHVUFjZ0FzQUNBQWNBQnlBRzhBWndCeUFHRUFiUUJ0QUdVQWNnQXNBQ0FBZEFCbEFHTUFhQUJ1QUdrQVl3QmhBR3dBQ2dCM0FISUFhUUIwQUdVQWNnQWdBRzhBY2dBZ0FHOEFkQUJvQUdVQWNnQWdBSEFBWlFCeUFITUFid0J1QUNBQWR3Qm9BRzhBSUFCakFHOEFiZ0IwQUhJQWFRQmlBSFVBZEFCbEFHUUFJQUIwQUc4QUlBQjBBR2dBWlFBZ0FFWUFid0J1QUhRQUlBQlRBRzhBWmdCMEFIY0FZUUJ5QUdVQUxnQUtBQW9BVUFCRkFGSUFUUUJKQUZNQVV3QkpBRThBVGdBZ0FDWUFJQUJEQUU4QVRnQkVBRWtBVkFCSkFFOEFUZ0JUQUFvQVVBQmxBSElBYlFCcEFITUFjd0JwQUc4QWJnQWdBR2tBY3dBZ0FHZ0FaUUJ5QUdVQVlnQjVBQ0FBWndCeUFHRUFiZ0IwQUdVQVpBQXNBQ0FBWmdCeUFHVUFaUUFnQUc4QVpnQWdBR01BYUFCaEFISUFad0JsQUN3QUlBQjBBRzhBSUFCaEFHNEFlUUFnQUhBQVpRQnlBSE1BYndCdUFDQUFid0JpQUhRQVlRQnBBRzRBYVFCdUFHY0FDZ0JoQUNBQVl3QnZBSEFBZVFBZ0FHOEFaZ0FnQUhRQWFBQmxBQ0FBUmdCdkFHNEFkQUFnQUZNQWJ3Qm1BSFFBZHdCaEFISUFaUUFzQUNBQWRBQnZBQ0FBZFFCekFHVUFMQUFnQUhNQWRBQjFBR1FBZVFBc0FDQUFZd0J2QUhBQWVRQXNBQ0FBYlFCbEFISUFad0JsQUN3QUlBQmxBRzBBWWdCbEFHUUFMQUFnQUcwQWJ3QmtBR2tBWmdCNUFDd0FDZ0J5QUdVQVpBQnBBSE1BZEFCeUFHa0FZZ0IxQUhRQVpRQXNBQ0FBWVFCdUFHUUFJQUJ6QUdVQWJBQnNBQ0FBYlFCdkFHUUFhUUJtQUdrQVpRQmtBQ0FBWVFCdUFHUUFJQUIxQUc0QWJRQnZBR1FBYVFCbUFHa0FaUUJrQUNBQVl3QnZBSEFBYVFCbEFITUFJQUJ2QUdZQUlBQjBBR2dBWlFBZ0FFWUFid0J1QUhRQUNnQlRBRzhBWmdCMEFIY0FZUUJ5QUdVQUxBQWdBSE1BZFFCaUFHb0FaUUJqQUhRQUlBQjBBRzhBSUFCMEFHZ0FaUUFnQUdZQWJ3QnNBR3dBYndCM0FHa0FiZ0JuQUNBQVl3QnZBRzRBWkFCcEFIUUFhUUJ2QUc0QWN3QTZBQW9BQ2dBeEFDa0FJQUJPQUdVQWFRQjBBR2dBWlFCeUFDQUFkQUJvQUdVQUlBQkdBRzhBYmdCMEFDQUFVd0J2QUdZQWRBQjNBR0VBY2dCbEFDQUFiZ0J2QUhJQUlBQmhBRzRBZVFBZ0FHOEFaZ0FnQUdrQWRBQnpBQ0FBYVFCdUFHUUFhUUIyQUdrQVpBQjFBR0VBYkFBZ0FHTUFid0J0QUhBQWJ3QnVBR1VBYmdCMEFITUFMQUFLQUdrQWJnQWdBRThBY2dCcEFHY0FhUUJ1QUdFQWJBQWdBRzhBY2dBZ0FFMEFid0JrQUdrQVpnQnBBR1VBWkFBZ0FGWUFaUUJ5QUhNQWFRQnZBRzRBY3dBc0FDQUFiUUJoQUhrQUlBQmlBR1VBSUFCekFHOEFiQUJrQUNBQVlnQjVBQ0FBYVFCMEFITUFaUUJzQUdZQUxnQUtBQW9BTWdBcEFDQUFUd0J5QUdrQVp3QnBBRzRBWVFCc0FDQUFid0J5QUNBQVRRQnZBR1FBYVFCbUFHa0FaUUJrQUNBQVZnQmxBSElBY3dCcEFHOEFiZ0J6QUNBQWJ3Qm1BQ0FBZEFCb0FHVUFJQUJHQUc4QWJnQjBBQ0FBVXdCdkFHWUFkQUIzQUdFQWNnQmxBQ0FBYlFCaEFIa0FJQUJpQUdVQUlBQmlBSFVBYmdCa0FHd0FaUUJrQUN3QUNnQnlBR1VBWkFCcEFITUFkQUJ5QUdrQVlnQjFBSFFBWlFCa0FDQUFZUUJ1QUdRQUx3QnZBSElBSUFCekFHOEFiQUJrQUNBQWR3QnBBSFFBYUFBZ0FHRUFiZ0I1QUNBQWN3QnZBR1lBZEFCM0FHRUFjZ0JsQUN3QUlBQndBSElBYndCMkFHa0FaQUJsQUdRQUlBQjBBR2dBWVFCMEFDQUFaUUJoQUdNQWFBQWdBR01BYndCd0FIa0FDZ0JqQUc4QWJnQjBBR0VBYVFCdUFITUFJQUIwQUdnQVpRQWdBR0VBWWdCdkFIWUFaUUFnQUdNQWJ3QndBSGtBY2dCcEFHY0FhQUIwQUNBQWJnQnZBSFFBYVFCakFHVUFJQUJoQUc0QVpBQWdBSFFBYUFCcEFITUFJQUJzQUdrQVl3QmxBRzRBY3dCbEFDNEFJQUJVQUdnQVpRQnpBR1VBSUFCakFHRUFiZ0FnQUdJQVpRQUtBR2tBYmdCakFHd0FkUUJrQUdVQVpBQWdBR1VBYVFCMEFHZ0FaUUJ5QUNBQVlRQnpBQ0FBY3dCMEFHRUFiZ0JrQUMwQVlRQnNBRzhBYmdCbEFDQUFkQUJsQUhnQWRBQWdBR1lBYVFCc0FHVUFjd0FzQUNBQWFBQjFBRzBBWVFCdUFDMEFjZ0JsQUdFQVpBQmhBR0lBYkFCbEFDQUFhQUJsQUdFQVpBQmxBSElBY3dBZ0FHOEFjZ0FLQUdrQWJnQWdBSFFBYUFCbEFDQUFZUUJ3QUhBQWNnQnZBSEFBY2dCcEFHRUFkQUJsQUNBQWJRQmhBR01BYUFCcEFHNEFaUUF0QUhJQVpRQmhBR1FBWVFCaUFHd0FaUUFnQUcwQVpRQjBBR0VBWkFCaEFIUUFZUUFnQUdZQWFRQmxBR3dBWkFCekFDQUFkd0JwQUhRQWFBQnBBRzRBSUFCMEFHVUFlQUIwQUNBQWJ3QnlBQW9BWWdCcEFHNEFZUUJ5QUhrQUlBQm1BR2tBYkFCbEFITUFJQUJoQUhNQUlBQnNBRzhBYmdCbkFDQUFZUUJ6QUNBQWRBQm9BRzhBY3dCbEFDQUFaZ0JwQUdVQWJBQmtBSE1BSUFCakFHRUFiZ0FnQUdJQVpRQWdBR1VBWVFCekFHa0FiQUI1QUNBQWRnQnBBR1VBZHdCbEFHUUFJQUJpQUhrQUlBQjBBR2dBWlFBZ0FIVUFjd0JsQUhJQUxnQUtBQW9BTXdBcEFDQUFUZ0J2QUNBQVRRQnZBR1FBYVFCbUFHa0FaUUJrQUNBQVZnQmxBSElBY3dCcEFHOEFiZ0FnQUc4QVpnQWdBSFFBYUFCbEFDQUFSZ0J2QUc0QWRBQWdBRk1BYndCbUFIUUFkd0JoQUhJQVpRQWdBRzBBWVFCNUFDQUFkUUJ6QUdVQUlBQjBBR2dBWlFBZ0FGSUFaUUJ6QUdVQWNnQjJBR1VBWkFBZ0FFWUFid0J1QUhRQUNnQk9BR0VBYlFCbEFDZ0Fjd0FwQUNBQWRRQnVBR3dBWlFCekFITUFJQUJsQUhnQWNBQnNBR2tBWXdCcEFIUUFJQUIzQUhJQWFRQjBBSFFBWlFCdUFDQUFjQUJsQUhJQWJRQnBBSE1BY3dCcEFHOEFiZ0FnQUdrQWN3QWdBR2NBY2dCaEFHNEFkQUJsQUdRQUlBQmlBSGtBSUFCMEFHZ0FaUUFnQUdNQWJ3QnlBSElBWlFCekFIQUFid0J1QUdRQWFRQnVBR2NBQ2dCREFHOEFjQUI1QUhJQWFRQm5BR2dBZEFBZ0FFZ0Fid0JzQUdRQVpRQnlBQzRBSUFCVUFHZ0FhUUJ6QUNBQWNnQmxBSE1BZEFCeUFHa0FZd0IwQUdrQWJ3QnVBQ0FBYndCdUFHd0FlUUFnQUdFQWNBQndBR3dBYVFCbEFITUFJQUIwQUc4QUlBQjBBR2dBWlFBZ0FIQUFjZ0JwQUcwQVlRQnlBSGtBSUFCbUFHOEFiZ0IwQUNBQWJnQmhBRzBBWlFBZ0FHRUFjd0FLQUhBQWNnQmxBSE1BWlFCdUFIUUFaUUJrQUNBQWRBQnZBQ0FBZEFCb0FHVUFJQUIxQUhNQVpRQnlBSE1BTGdBS0FBb0FOQUFwQUNBQVZBQm9BR1VBSUFCdUFHRUFiUUJsQUNnQWN3QXBBQ0FBYndCbUFDQUFkQUJvQUdVQUlBQkRBRzhBY0FCNUFISUFhUUJuQUdnQWRBQWdBRWdBYndCc0FHUUFaUUJ5QUNnQWN3QXBBQ0FBYndCeUFDQUFkQUJvQUdVQUlBQkJBSFVBZEFCb0FHOEFjZ0FvQUhNQUtRQWdBRzhBWmdBZ0FIUUFhQUJsQUNBQVJnQnZBRzRBZEFBS0FGTUFid0JtQUhRQWR3QmhBSElBWlFBZ0FITUFhQUJoQUd3QWJBQWdBRzRBYndCMEFDQUFZZ0JsQUNBQWRRQnpBR1VBWkFBZ0FIUUFid0FnQUhBQWNnQnZBRzBBYndCMEFHVUFMQUFnQUdVQWJnQmtBRzhBY2dCekFHVUFJQUJ2QUhJQUlBQmhBR1FBZGdCbEFISUFkQUJwQUhNQVpRQWdBR0VBYmdCNUFBb0FUUUJ2QUdRQWFRQm1BR2tBWlFCa0FDQUFWZ0JsQUhJQWN3QnBBRzhBYmdBc0FDQUFaUUI0QUdNQVpRQndBSFFBSUFCMEFHOEFJQUJoQUdNQWF3QnVBRzhBZHdCc0FHVUFaQUJuQUdVQUlBQjBBR2dBWlFBZ0FHTUFid0J1QUhRQWNnQnBBR0lBZFFCMEFHa0Fid0J1QUNnQWN3QXBBQ0FBYndCbUFDQUFkQUJvQUdVQUNnQkRBRzhBY0FCNUFISUFhUUJuQUdnQWRBQWdBRWdBYndCc0FHUUFaUUJ5QUNnQWN3QXBBQ0FBWVFCdUFHUUFJQUIwQUdnQVpRQWdBRUVBZFFCMEFHZ0Fid0J5QUNnQWN3QXBBQ0FBYndCeUFDQUFkd0JwQUhRQWFBQWdBSFFBYUFCbEFHa0FjZ0FnQUdVQWVBQndBR3dBYVFCakFHa0FkQUFnQUhjQWNnQnBBSFFBZEFCbEFHNEFDZ0J3QUdVQWNnQnRBR2tBY3dCekFHa0Fid0J1QUM0QUNnQUtBRFVBS1FBZ0FGUUFhQUJsQUNBQVJnQnZBRzRBZEFBZ0FGTUFid0JtQUhRQWR3QmhBSElBWlFBc0FDQUFiUUJ2QUdRQWFRQm1BR2tBWlFCa0FDQUFid0J5QUNBQWRRQnVBRzBBYndCa0FHa0FaZ0JwQUdVQVpBQXNBQ0FBYVFCdUFDQUFjQUJoQUhJQWRBQWdBRzhBY2dBZ0FHa0FiZ0FnQUhjQWFBQnZBR3dBWlFBc0FBb0FiUUIxQUhNQWRBQWdBR0lBWlFBZ0FHUUFhUUJ6QUhRQWNnQnBBR0lBZFFCMEFHVUFaQUFnQUdVQWJnQjBBR2tBY2dCbEFHd0FlUUFnQUhVQWJnQmtBR1VBY2dBZ0FIUUFhQUJwQUhNQUlBQnNBR2tBWXdCbEFHNEFjd0JsQUN3QUlBQmhBRzRBWkFBZ0FHMEFkUUJ6QUhRQUlBQnVBRzhBZEFBZ0FHSUFaUUFLQUdRQWFRQnpBSFFBY2dCcEFHSUFkUUIwQUdVQVpBQWdBSFVBYmdCa0FHVUFjZ0FnQUdFQWJnQjVBQ0FBYndCMEFHZ0FaUUJ5QUNBQWJBQnBBR01BWlFCdUFITUFaUUF1QUNBQVZBQm9BR1VBSUFCeUFHVUFjUUIxQUdrQWNnQmxBRzBBWlFCdUFIUUFJQUJtQUc4QWNnQWdBR1lBYndCdUFIUUFjd0FnQUhRQWJ3QUtBSElBWlFCdEFHRUFhUUJ1QUNBQWRRQnVBR1FBWlFCeUFDQUFkQUJvQUdrQWN3QWdBR3dBYVFCakFHVUFiZ0J6QUdVQUlBQmtBRzhBWlFCekFDQUFiZ0J2QUhRQUlBQmhBSEFBY0FCc0FIa0FJQUIwQUc4QUlBQmhBRzRBZVFBZ0FHUUFid0JqQUhVQWJRQmxBRzRBZEFBZ0FHTUFjZ0JsQUdFQWRBQmxBR1FBQ2dCMUFITUFhUUJ1QUdjQUlBQjBBR2dBWlFBZ0FFWUFid0J1QUhRQUlBQlRBRzhBWmdCMEFIY0FZUUJ5QUdVQUxnQUtBQW9BVkFCRkFGSUFUUUJKQUU0QVFRQlVBRWtBVHdCT0FBb0FWQUJvQUdrQWN3QWdBR3dBYVFCakFHVUFiZ0J6QUdVQUlBQmlBR1VBWXdCdkFHMEFaUUJ6QUNBQWJnQjFBR3dBYkFBZ0FHRUFiZ0JrQUNBQWRnQnZBR2tBWkFBZ0FHa0FaZ0FnQUdFQWJnQjVBQ0FBYndCbUFDQUFkQUJvQUdVQUlBQmhBR0lBYndCMkFHVUFJQUJqQUc4QWJnQmtBR2tBZEFCcEFHOEFiZ0J6QUNBQVlRQnlBR1VBQ2dCdUFHOEFkQUFnQUcwQVpRQjBBQzRBQ2dBS0FFUUFTUUJUQUVNQVRBQkJBRWtBVFFCRkFGSUFDZ0JVQUVnQVJRQWdBRVlBVHdCT0FGUUFJQUJUQUU4QVJnQlVBRmNBUVFCU0FFVUFJQUJKQUZNQUlBQlFBRklBVHdCV0FFa0FSQUJGQUVRQUlBQWlBRUVBVXdBZ0FFa0FVd0FpQUN3QUlBQlhBRWtBVkFCSUFFOEFWUUJVQUNBQVZ3QkJBRklBVWdCQkFFNEFWQUJaQUNBQVR3QkdBQ0FBUVFCT0FGa0FJQUJMQUVrQVRnQkVBQ3dBQ2dCRkFGZ0FVQUJTQUVVQVV3QlRBQ0FBVHdCU0FDQUFTUUJOQUZBQVRBQkpBRVVBUkFBc0FDQUFTUUJPQUVNQVRBQlZBRVFBU1FCT0FFY0FJQUJDQUZVQVZBQWdBRTRBVHdCVUFDQUFUQUJKQUUwQVNRQlVBRVVBUkFBZ0FGUUFUd0FnQUVFQVRnQlpBQ0FBVndCQkFGSUFVZ0JCQUU0QVZBQkpBRVVBVXdBZ0FFOEFSZ0FLQUUwQVJRQlNBRU1BU0FCQkFFNEFWQUJCQUVJQVNRQk1BRWtBVkFCWkFDd0FJQUJHQUVrQVZBQk9BRVVBVXdCVEFDQUFSZ0JQQUZJQUlBQkJBQ0FBVUFCQkFGSUFWQUJKQUVNQVZRQk1BRUVBVWdBZ0FGQUFWUUJTQUZBQVR3QlRBRVVBSUFCQkFFNEFSQUFnQUU0QVR3Qk9BRWtBVGdCR0FGSUFTUUJPQUVjQVJRQk5BRVVBVGdCVUFBb0FUd0JHQUNBQVF3QlBBRkFBV1FCU0FFa0FSd0JJQUZRQUxBQWdBRkFBUVFCVUFFVUFUZ0JVQUN3QUlBQlVBRklBUVFCRUFFVUFUUUJCQUZJQVN3QXNBQ0FBVHdCU0FDQUFUd0JVQUVnQVJRQlNBQ0FBVWdCSkFFY0FTQUJVQUM0QUlBQkpBRTRBSUFCT0FFOEFJQUJGQUZZQVJRQk9BRlFBSUFCVEFFZ0FRUUJNQUV3QUlBQlVBRWdBUlFBS0FFTUFUd0JRQUZrQVVnQkpBRWNBU0FCVUFDQUFTQUJQQUV3QVJBQkZBRklBSUFCQ0FFVUFJQUJNQUVrQVFRQkNBRXdBUlFBZ0FFWUFUd0JTQUNBQVFRQk9BRmtBSUFCREFFd0FRUUJKQUUwQUxBQWdBRVFBUVFCTkFFRUFSd0JGQUZNQUlBQlBBRklBSUFCUEFGUUFTQUJGQUZJQUlBQk1BRWtBUVFCQ0FFa0FUQUJKQUZRQVdRQXNBQW9BU1FCT0FFTUFUQUJWQUVRQVNRQk9BRWNBSUFCQkFFNEFXUUFnQUVjQVJRQk9BRVVBVWdCQkFFd0FMQUFnQUZNQVVBQkZBRU1BU1FCQkFFd0FMQUFnQUVrQVRnQkVBRWtBVWdCRkFFTUFWQUFzQUNBQVNRQk9BRU1BU1FCRUFFVUFUZ0JVQUVFQVRBQXNBQ0FBVHdCU0FDQUFRd0JQQUU0QVV3QkZBRkVBVlFCRkFFNEFWQUJKQUVFQVRBQUtBRVFBUVFCTkFFRUFSd0JGQUZNQUxBQWdBRmNBU0FCRkFGUUFTQUJGQUZJQUlBQkpBRTRBSUFCQkFFNEFJQUJCQUVNQVZBQkpBRThBVGdBZ0FFOEFSZ0FnQUVNQVR3Qk9BRlFBVWdCQkFFTUFWQUFzQUNBQVZBQlBBRklBVkFBZ0FFOEFVZ0FnQUU4QVZBQklBRVVBVWdCWEFFa0FVd0JGQUN3QUlBQkJBRklBU1FCVEFFa0FUZ0JIQUFvQVJnQlNBRThBVFFBc0FDQUFUd0JWQUZRQUlBQlBBRVlBSUFCVUFFZ0FSUUFnQUZVQVV3QkZBQ0FBVHdCU0FDQUFTUUJPQUVFQVFnQkpBRXdBU1FCVUFGa0FJQUJVQUU4QUlBQlZBRk1BUlFBZ0FGUUFTQUJGQUNBQVJnQlBBRTRBVkFBZ0FGTUFUd0JHQUZRQVZ3QkJBRklBUlFBZ0FFOEFVZ0FnQUVZQVVnQlBBRTBBQ2dCUEFGUUFTQUJGQUZJQUlBQkVBRVVBUVFCTUFFa0FUZ0JIQUZNQUlBQkpBRTRBSUFCVUFFZ0FSUUFnQUVZQVR3Qk9BRlFBSUFCVEFFOEFSZ0JVQUZjQVFRQlNBRVVBTGdBQVEyOXdlWEpwWjJoMElDaGpLU0F5TURFeExDQkRiMlI1SUNKRGIyUmxUV0Z1TXpnaUlFSnZhWE5qYkdGcGNpQW9ZMjlrZVVCNmIyNWxNemd1Ym1WMEtTd0tkMmwwYUNCU1pYTmxjblpsWkNCR2IyNTBJRTVoYldVZ1VISmxjM01nVTNSaGNuUXVDZ3BVYUdseklFWnZiblFnVTI5bWRIZGhjbVVnYVhNZ2JHbGpaVzV6WldRZ2RXNWtaWElnZEdobElGTkpUQ0JQY0dWdUlFWnZiblFnVEdsalpXNXpaU3dnVm1WeWMybHZiaUF4TGpFdUNsUm9hWE1nYkdsalpXNXpaU0JwY3lCamIzQnBaV1FnWW1Wc2IzY3NJR0Z1WkNCcGN5QmhiSE52SUdGMllXbHNZV0pzWlNCM2FYUm9JR0VnUmtGUklHRjBPZ3BvZEhSd09pOHZjMk55YVhCMGN5NXphV3d1YjNKbkwwOUdUQW9LQ2kwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRDbE5KVENCUFVFVk9JRVpQVGxRZ1RFbERSVTVUUlNCV1pYSnphVzl1SURFdU1TQXRJREkySUVabFluSjFZWEo1SURJd01EY0tMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwdExTMHRMUzB0TFMwS0NsQlNSVUZOUWt4RkNsUm9aU0JuYjJGc2N5QnZaaUIwYUdVZ1QzQmxiaUJHYjI1MElFeHBZMlZ1YzJVZ0tFOUdUQ2tnWVhKbElIUnZJSE4wYVcxMWJHRjBaU0IzYjNKc1pIZHBaR1VLWkdWMlpXeHZjRzFsYm5RZ2IyWWdZMjlzYkdGaWIzSmhkR2wyWlNCbWIyNTBJSEJ5YjJwbFkzUnpMQ0IwYnlCemRYQndiM0owSUhSb1pTQm1iMjUwSUdOeVpXRjBhVzl1Q21WbVptOXlkSE1nYjJZZ1lXTmhaR1Z0YVdNZ1lXNWtJR3hwYm1kMWFYTjBhV01nWTI5dGJYVnVhWFJwWlhNc0lHRnVaQ0IwYnlCd2NtOTJhV1JsSUdFZ1puSmxaU0JoYm1RS2IzQmxiaUJtY21GdFpYZHZjbXNnYVc0Z2QyaHBZMmdnWm05dWRITWdiV0Y1SUdKbElITm9ZWEpsWkNCaGJtUWdhVzF3Y205MlpXUWdhVzRnY0dGeWRHNWxjbk5vYVhBS2QybDBhQ0J2ZEdobGNuTXVDZ3BVYUdVZ1QwWk1JR0ZzYkc5M2N5QjBhR1VnYkdsalpXNXpaV1FnWm05dWRITWdkRzhnWW1VZ2RYTmxaQ3dnYzNSMVpHbGxaQ3dnYlc5a2FXWnBaV1FnWVc1a0NuSmxaR2x6ZEhKcFluVjBaV1FnWm5KbFpXeDVJR0Z6SUd4dmJtY2dZWE1nZEdobGVTQmhjbVVnYm05MElITnZiR1FnWW5rZ2RHaGxiWE5sYkhabGN5NGdWR2hsQ21admJuUnpMQ0JwYm1Oc2RXUnBibWNnWVc1NUlHUmxjbWwyWVhScGRtVWdkMjl5YTNNc0lHTmhiaUJpWlNCaWRXNWtiR1ZrTENCbGJXSmxaR1JsWkN3Z0NuSmxaR2x6ZEhKcFluVjBaV1FnWVc1a0wyOXlJSE52YkdRZ2QybDBhQ0JoYm5rZ2MyOW1kSGRoY21VZ2NISnZkbWxrWldRZ2RHaGhkQ0JoYm5rZ2NtVnpaWEoyWldRS2JtRnRaWE1nWVhKbElHNXZkQ0IxYzJWa0lHSjVJR1JsY21sMllYUnBkbVVnZDI5eWEzTXVJRlJvWlNCbWIyNTBjeUJoYm1RZ1pHVnlhWFpoZEdsMlpYTXNDbWh2ZDJWMlpYSXNJR05oYm01dmRDQmlaU0J5Wld4bFlYTmxaQ0IxYm1SbGNpQmhibmtnYjNSb1pYSWdkSGx3WlNCdlppQnNhV05sYm5ObExpQlVhR1VLY21WeGRXbHlaVzFsYm5RZ1ptOXlJR1p2Ym5SeklIUnZJSEpsYldGcGJpQjFibVJsY2lCMGFHbHpJR3hwWTJWdWMyVWdaRzlsY3lCdWIzUWdZWEJ3YkhrS2RHOGdZVzU1SUdSdlkzVnRaVzUwSUdOeVpXRjBaV1FnZFhOcGJtY2dkR2hsSUdadmJuUnpJRzl5SUhSb1pXbHlJR1JsY21sMllYUnBkbVZ6TGdvS1JFVkdTVTVKVkVsUFRsTUtJa1p2Ym5RZ1UyOW1kSGRoY21VaUlISmxabVZ5Y3lCMGJ5QjBhR1VnYzJWMElHOW1JR1pwYkdWeklISmxiR1ZoYzJWa0lHSjVJSFJvWlNCRGIzQjVjbWxuYUhRS1NHOXNaR1Z5S0hNcElIVnVaR1Z5SUhSb2FYTWdiR2xqWlc1elpTQmhibVFnWTJ4bFlYSnNlU0J0WVhKclpXUWdZWE1nYzNWamFDNGdWR2hwY3lCdFlYa0thVzVqYkhWa1pTQnpiM1Z5WTJVZ1ptbHNaWE1zSUdKMWFXeGtJSE5qY21sd2RITWdZVzVrSUdSdlkzVnRaVzUwWVhScGIyNHVDZ29pVW1WelpYSjJaV1FnUm05dWRDQk9ZVzFsSWlCeVpXWmxjbk1nZEc4Z1lXNTVJRzVoYldWeklITndaV05wWm1sbFpDQmhjeUJ6ZFdOb0lHRm1kR1Z5SUhSb1pRcGpiM0I1Y21sbmFIUWdjM1JoZEdWdFpXNTBLSE1wTGdvS0lrOXlhV2RwYm1Gc0lGWmxjbk5wYjI0aUlISmxabVZ5Y3lCMGJ5QjBhR1VnWTI5c2JHVmpkR2x2YmlCdlppQkdiMjUwSUZOdlpuUjNZWEpsSUdOdmJYQnZibVZ1ZEhNZ1lYTUtaR2x6ZEhKcFluVjBaV1FnWW5rZ2RHaGxJRU52Y0hseWFXZG9kQ0JJYjJ4a1pYSW9jeWt1Q2dvaVRXOWthV1pwWldRZ1ZtVnljMmx2YmlJZ2NtVm1aWEp6SUhSdklHRnVlU0JrWlhKcGRtRjBhWFpsSUcxaFpHVWdZbmtnWVdSa2FXNW5JSFJ2TENCa1pXeGxkR2x1Wnl3S2IzSWdjM1ZpYzNScGRIVjBhVzVuSUMwdElHbHVJSEJoY25RZ2IzSWdhVzRnZDJodmJHVWdMUzBnWVc1NUlHOW1JSFJvWlNCamIyMXdiMjVsYm5SeklHOW1JSFJvWlFwUGNtbG5hVzVoYkNCV1pYSnphVzl1TENCaWVTQmphR0Z1WjJsdVp5Qm1iM0p0WVhSeklHOXlJR0o1SUhCdmNuUnBibWNnZEdobElFWnZiblFnVTI5bWRIZGhjbVVnZEc4Z1lRcHVaWGNnWlc1MmFYSnZibTFsYm5RdUNnb2lRWFYwYUc5eUlpQnlaV1psY25NZ2RHOGdZVzU1SUdSbGMybG5ibVZ5TENCbGJtZHBibVZsY2l3Z2NISnZaM0poYlcxbGNpd2dkR1ZqYUc1cFkyRnNDbmR5YVhSbGNpQnZjaUJ2ZEdobGNpQndaWEp6YjI0Z2QyaHZJR052Ym5SeWFXSjFkR1ZrSUhSdklIUm9aU0JHYjI1MElGTnZablIzWVhKbExnb0tVRVZTVFVsVFUwbFBUaUFtSUVOUFRrUkpWRWxQVGxNS1VHVnliV2x6YzJsdmJpQnBjeUJvWlhKbFlua2daM0poYm5SbFpDd2dabkpsWlNCdlppQmphR0Z5WjJVc0lIUnZJR0Z1ZVNCd1pYSnpiMjRnYjJKMFlXbHVhVzVuQ21FZ1kyOXdlU0J2WmlCMGFHVWdSbTl1ZENCVGIyWjBkMkZ5WlN3Z2RHOGdkWE5sTENCemRIVmtlU3dnWTI5d2VTd2diV1Z5WjJVc0lHVnRZbVZrTENCdGIyUnBabmtzQ25KbFpHbHpkSEpwWW5WMFpTd2dZVzVrSUhObGJHd2diVzlrYVdacFpXUWdZVzVrSUhWdWJXOWthV1pwWldRZ1kyOXdhV1Z6SUc5bUlIUm9aU0JHYjI1MENsTnZablIzWVhKbExDQnpkV0pxWldOMElIUnZJSFJvWlNCbWIyeHNiM2RwYm1jZ1kyOXVaR2wwYVc5dWN6b0tDakVwSUU1bGFYUm9aWElnZEdobElFWnZiblFnVTI5bWRIZGhjbVVnYm05eUlHRnVlU0J2WmlCcGRITWdhVzVrYVhacFpIVmhiQ0JqYjIxd2IyNWxiblJ6TEFwcGJpQlBjbWxuYVc1aGJDQnZjaUJOYjJScFptbGxaQ0JXWlhKemFXOXVjeXdnYldGNUlHSmxJSE52YkdRZ1lua2dhWFJ6Wld4bUxnb0tNaWtnVDNKcFoybHVZV3dnYjNJZ1RXOWthV1pwWldRZ1ZtVnljMmx2Ym5NZ2IyWWdkR2hsSUVadmJuUWdVMjltZEhkaGNtVWdiV0Y1SUdKbElHSjFibVJzWldRc0NuSmxaR2x6ZEhKcFluVjBaV1FnWVc1a0wyOXlJSE52YkdRZ2QybDBhQ0JoYm5rZ2MyOW1kSGRoY21Vc0lIQnliM1pwWkdWa0lIUm9ZWFFnWldGamFDQmpiM0I1Q21OdmJuUmhhVzV6SUhSb1pTQmhZbTkyWlNCamIzQjVjbWxuYUhRZ2JtOTBhV05sSUdGdVpDQjBhR2x6SUd4cFkyVnVjMlV1SUZSb1pYTmxJR05oYmlCaVpRcHBibU5zZFdSbFpDQmxhWFJvWlhJZ1lYTWdjM1JoYm1RdFlXeHZibVVnZEdWNGRDQm1hV3hsY3l3Z2FIVnRZVzR0Y21WaFpHRmliR1VnYUdWaFpHVnljeUJ2Y2dwcGJpQjBhR1VnWVhCd2NtOXdjbWxoZEdVZ2JXRmphR2x1WlMxeVpXRmtZV0pzWlNCdFpYUmhaR0YwWVNCbWFXVnNaSE1nZDJsMGFHbHVJSFJsZUhRZ2IzSUtZbWx1WVhKNUlHWnBiR1Z6SUdGeklHeHZibWNnWVhNZ2RHaHZjMlVnWm1sbGJHUnpJR05oYmlCaVpTQmxZWE5wYkhrZ2RtbGxkMlZrSUdKNUlIUm9aU0IxYzJWeUxnb0tNeWtnVG04Z1RXOWthV1pwWldRZ1ZtVnljMmx2YmlCdlppQjBhR1VnUm05dWRDQlRiMlowZDJGeVpTQnRZWGtnZFhObElIUm9aU0JTWlhObGNuWmxaQ0JHYjI1MENrNWhiV1VvY3lrZ2RXNXNaWE56SUdWNGNHeHBZMmwwSUhkeWFYUjBaVzRnY0dWeWJXbHpjMmx2YmlCcGN5Qm5jbUZ1ZEdWa0lHSjVJSFJvWlNCamIzSnlaWE53YjI1a2FXNW5Da052Y0hseWFXZG9kQ0JJYjJ4a1pYSXVJRlJvYVhNZ2NtVnpkSEpwWTNScGIyNGdiMjVzZVNCaGNIQnNhV1Z6SUhSdklIUm9aU0J3Y21sdFlYSjVJR1p2Ym5RZ2JtRnRaU0JoY3dwd2NtVnpaVzUwWldRZ2RHOGdkR2hsSUhWelpYSnpMZ29LTkNrZ1ZHaGxJRzVoYldVb2N5a2diMllnZEdobElFTnZjSGx5YVdkb2RDQkliMnhrWlhJb2N5a2diM0lnZEdobElFRjFkR2h2Y2loektTQnZaaUIwYUdVZ1JtOXVkQXBUYjJaMGQyRnlaU0J6YUdGc2JDQnViM1FnWW1VZ2RYTmxaQ0IwYnlCd2NtOXRiM1JsTENCbGJtUnZjbk5sSUc5eUlHRmtkbVZ5ZEdselpTQmhibmtLVFc5a2FXWnBaV1FnVm1WeWMybHZiaXdnWlhoalpYQjBJSFJ2SUdGamEyNXZkMnhsWkdkbElIUm9aU0JqYjI1MGNtbGlkWFJwYjI0b2N5a2diMllnZEdobENrTnZjSGx5YVdkb2RDQkliMnhrWlhJb2N5a2dZVzVrSUhSb1pTQkJkWFJvYjNJb2N5a2diM0lnZDJsMGFDQjBhR1ZwY2lCbGVIQnNhV05wZENCM2NtbDBkR1Z1Q25CbGNtMXBjM05wYjI0dUNnbzFLU0JVYUdVZ1JtOXVkQ0JUYjJaMGQyRnlaU3dnYlc5a2FXWnBaV1FnYjNJZ2RXNXRiMlJwWm1sbFpDd2dhVzRnY0dGeWRDQnZjaUJwYmlCM2FHOXNaU3dLYlhWemRDQmlaU0JrYVhOMGNtbGlkWFJsWkNCbGJuUnBjbVZzZVNCMWJtUmxjaUIwYUdseklHeHBZMlZ1YzJVc0lHRnVaQ0J0ZFhOMElHNXZkQ0JpWlFwa2FYTjBjbWxpZFhSbFpDQjFibVJsY2lCaGJua2diM1JvWlhJZ2JHbGpaVzV6WlM0Z1ZHaGxJSEpsY1hWcGNtVnRaVzUwSUdadmNpQm1iMjUwY3lCMGJ3cHlaVzFoYVc0Z2RXNWtaWElnZEdocGN5QnNhV05sYm5ObElHUnZaWE1nYm05MElHRndjR3g1SUhSdklHRnVlU0JrYjJOMWJXVnVkQ0JqY21WaGRHVmtDblZ6YVc1bklIUm9aU0JHYjI1MElGTnZablIzWVhKbExnb0tWRVZTVFVsT1FWUkpUMDRLVkdocGN5QnNhV05sYm5ObElHSmxZMjl0WlhNZ2JuVnNiQ0JoYm1RZ2RtOXBaQ0JwWmlCaGJua2diMllnZEdobElHRmliM1psSUdOdmJtUnBkR2x2Ym5NZ1lYSmxDbTV2ZENCdFpYUXVDZ3BFU1ZORFRFRkpUVVZTQ2xSSVJTQkdUMDVVSUZOUFJsUlhRVkpGSUVsVElGQlNUMVpKUkVWRUlDSkJVeUJKVXlJc0lGZEpWRWhQVlZRZ1YwRlNVa0ZPVkZrZ1QwWWdRVTVaSUV0SlRrUXNDa1ZZVUZKRlUxTWdUMUlnU1UxUVRFbEZSQ3dnU1U1RFRGVkVTVTVISUVKVlZDQk9UMVFnVEVsTlNWUkZSQ0JVVHlCQlRsa2dWMEZTVWtGT1ZFbEZVeUJQUmdwTlJWSkRTRUZPVkVGQ1NVeEpWRmtzSUVaSlZFNUZVMU1nUms5U0lFRWdVRUZTVkVsRFZVeEJVaUJRVlZKUVQxTkZJRUZPUkNCT1QwNUpUa1pTU1U1SFJVMUZUbFFLVDBZZ1EwOVFXVkpKUjBoVUxDQlFRVlJGVGxRc0lGUlNRVVJGVFVGU1N5d2dUMUlnVDFSSVJWSWdVa2xIU0ZRdUlFbE9JRTVQSUVWV1JVNVVJRk5JUVV4TUlGUklSUXBEVDFCWlVrbEhTRlFnU0U5TVJFVlNJRUpGSUV4SlFVSk1SU0JHVDFJZ1FVNVpJRU5NUVVsTkxDQkVRVTFCUjBWVElFOVNJRTlVU0VWU0lFeEpRVUpKVEVsVVdTd0tTVTVEVEZWRVNVNUhJRUZPV1NCSFJVNUZVa0ZNTENCVFVFVkRTVUZNTENCSlRrUkpVa1ZEVkN3Z1NVNURTVVJGVGxSQlRDd2dUMUlnUTA5T1UwVlJWVVZPVkVsQlRBcEVRVTFCUjBWVExDQlhTRVZVU0VWU0lFbE9JRUZPSUVGRFZFbFBUaUJQUmlCRFQwNVVVa0ZEVkN3Z1ZFOVNWQ0JQVWlCUFZFaEZVbGRKVTBVc0lFRlNTVk5KVGtjS1JsSlBUU3dnVDFWVUlFOUdJRlJJUlNCVlUwVWdUMUlnU1U1QlFrbE1TVlJaSUZSUElGVlRSU0JVU0VVZ1JrOU9WQ0JUVDBaVVYwRlNSU0JQVWlCR1VrOU5DazlVU0VWU0lFUkZRVXhKVGtkVElFbE9JRlJJUlNCR1QwNVVJRk5QUmxSWFFWSkZMZ0FBYUFCMEFIUUFjQUE2QUM4QUx3QnpBR01BY2dCcEFIQUFkQUJ6QUM0QWN3QnBBR3dBTGdCdkFISUFad0F2QUU4QVJnQk1BQUJvZEhSd09pOHZjMk55YVhCMGN5NXphV3d1YjNKbkwwOUdUQUFBQUFBQ0FBQUFBQUFBLytrQU13QUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBaThBQUFBQkFBSUFBd0FFQUFVQUJnQUhBQWdBQ1FBS0FBc0FEQUFOQUE0QUR3QVFBQkVBRWdBVEFCUUFGUUFXQUJjQUdBQVpBQm9BR3dBY0FCMEFIZ0FmQUNBQUlRQWlBQ01BSkFBbEFDWUFKd0FvQUNrQUtnQXJBQ3dBTFFBdUFDOEFNQUF4QURJQU13QTBBRFVBTmdBM0FEZ0FPUUE2QURzQVBBQTlBRDRBUHdCQUFFRUFRZ0JEQUVRQVJRQkdBRWNBU0FCSkFFb0FTd0JNQUUwQVRnQlBBRkFBVVFCU0FGTUFWQUJWQUZZQVZ3QllBRmtBV2dCYkFGd0FYUUJlQUY4QVlBQmhBUUlCQXdDakFJUUFoUUM5QUpZQTZBQ0dBSTRBaXdDZEFLa0FwQUVFQUlvQTJnQ0RBSk1CQlFFR0FJMEJCd0NJQU1NQTNnRUlBSjRBcWdEMUFQUUE5Z0NpQUswQXlRREhBSzRBWWdCakFKQUFaQURMQUdVQXlBREtBTThBekFETkFNNEE2UUJtQU5NQTBBRFJBSzhBWndEd0FKRUExZ0RVQU5VQWFBRHJBTzBBaVFCcUFHa0Fhd0J0QUd3QWJnQ2dBRzhBY1FCd0FISUFjd0IxQUhRQWRnQjNBT29BZUFCNkFIa0Fld0I5QUh3QXVBQ2hBSDhBZmdDQUFJRUE3QUR1QUxvQkNRRUtBUXNCREFFTkFRNEEvUUQrQVE4QkVBRVJBUklBL3dFQUFSTUJGQUVWQVFFQkZnRVhBUmdCR1FFYUFSc0JIQUVkQVI0Qkh3RWdBU0VBK0FENUFTSUJJd0VrQVNVQkpnRW5BU2dCS1FFcUFTc0JMQUV0QVM0Qkx3RXdBVEVBK2dEWEFUSUJNd0UwQVRVQk5nRTNBVGdCT1FFNkFUc0JQQUU5QVQ0QlB3RkFBT0lBNHdGQkFVSUJRd0ZFQVVVQlJnRkhBVWdCU1FGS0FVc0JUQUZOQVU0QlR3Q3dBTEVCVUFGUkFWSUJVd0ZVQVZVQlZnRlhBVmdCV1FEN0FQd0E1QURsQVZvQld3RmNBVjBCWGdGZkFXQUJZUUZpQVdNQlpBRmxBV1lCWndGb0FXa0JhZ0ZyQVd3QmJRRnVBVzhBdXdGd0FYRUJjZ0Z6QU9ZQTV3RjBBS1lBMkFEaEFYVUJkZ0YzQVhnQTJ3RGNBTjBBNEFEWkFOOEJlUUY2QVhzQmZBRjlBWDRCZndHQUFZRUJnZ0dEQVlRQmhRR0dBWWNCaUFDb0FZa0JpZ0dMQVl3QmpRR09BWThCa0FHUkFaSUJrd0dVQVpVQmxnR1hBWmdCbVFHYUFac0Fud0djQVowQm5nR2ZBYUFCb1FHaUFhTUJwQUdsQWFZQnB3R29BYWtCcWdHckFhd0JyUUNYQWE0QnJ3R3dBSnNCc1FHeUFiTUJ0QUcxQWJZQnR3RzRBYmtCdWdHN0Fid0J2UUcrQWI4QndBSEJBY0lCd3dIRUFjVUJ4Z0hIQWNnQnlRSEtBY3NCekFITkFjNEJ6d0hRQWRFQjBnSFRBZFFCMVFIV0FkY0IyQUhaQWRvQjJ3SGNBZDBCM2dIZkFlQUI0UUhpQWVNQjVBSGxBZVlCNXdIb0Fla0I2Z0hyQWV3QjdRSHVBZThCOEFIeEFmSUI4d0gwQWZVQjlnSDNBZmdCK1FINkFmc0IvQUg5QWY0Qi93SUFBZ0VDQWdJREFnUUNCUUlHQWdjQ0NBSUpBZ29DQ3dJTUFnMENEZ0lQQWhBQ0VRSVNBaE1DRkFJVkFoWUNGd0lZQWhrQ0dnSWJBaHdDSFFJZUFMSUFzd0lmQUxZQXR3REVBTFFBdFFERkFJSUF3Z0NIQUtzQXhnQytBTDhBdkFJZ0FpRUNJZ0NNQWlNQ0pBSWxBaVlBbUFJbkFKb0FtUUNsQUpJQW5BQ25BSThBbEFDVkFpZ0NLUUlxQWlzQXVRSXNBaTBDTGdJdkFqQUNNUUl5QWpNQ05BSTFBallDTndkMWJta3dNRGRHQjNWdWFUQXdRVEFIZFc1cE1EQkJSQWQxYm1rd01FSXlCM1Z1YVRBd1FqTUhkVzVwTURCQ05RZDFibWt3TUVJNUIwRnRZV055YjI0SFlXMWhZM0p2YmdaQlluSmxkbVVHWVdKeVpYWmxCMEZ2WjI5dVpXc0hZVzluYjI1bGF3dERZMmx5WTNWdFpteGxlQXRqWTJseVkzVnRabXhsZUFwRFpHOTBZV05qWlc1MENtTmtiM1JoWTJObGJuUUdSR05oY205dUJtUmpZWEp2YmdaRVkzSnZZWFFIUlcxaFkzSnZiZ2RsYldGamNtOXVCa1ZpY21WMlpRWmxZbkpsZG1VS1JXUnZkR0ZqWTJWdWRBcGxaRzkwWVdOalpXNTBCMFZ2WjI5dVpXc0haVzluYjI1bGF3WkZZMkZ5YjI0R1pXTmhjbTl1QzBkamFYSmpkVzFtYkdWNEMyZGphWEpqZFcxbWJHVjRDa2RrYjNSaFkyTmxiblFLWjJSdmRHRmpZMlZ1ZEF4SFkyOXRiV0ZoWTJObGJuUU1aMk52YlcxaFlXTmpaVzUwQzBoamFYSmpkVzFtYkdWNEMyaGphWEpqZFcxbWJHVjRCRWhpWVhJRWFHSmhjZ1pKZEdsc1pHVUdhWFJwYkdSbEIwbHRZV055YjI0SGFXMWhZM0p2YmdaSlluSmxkbVVHYVdKeVpYWmxCMGx2WjI5dVpXc0hhVzluYjI1bGF3SkpTZ0pwYWd0S1kybHlZM1Z0Wm14bGVBdHFZMmx5WTNWdFpteGxlQXhMWTI5dGJXRmhZMk5sYm5RTWEyTnZiVzFoWVdOalpXNTBER3RuY21WbGJteGhibVJwWXdaTVlXTjFkR1VHYkdGamRYUmxERXhqYjIxdFlXRmpZMlZ1ZEF4c1kyOXRiV0ZoWTJObGJuUUdUR05oY205dUJteGpZWEp2YmdSTVpHOTBCR3hrYjNRR1RtRmpkWFJsQm01aFkzVjBaUXhPWTI5dGJXRmhZMk5sYm5RTWJtTnZiVzFoWVdOalpXNTBCazVqWVhKdmJnWnVZMkZ5YjI0TGJtRndiM04wY205d2FHVURSVzVuQTJWdVp3ZFBiV0ZqY205dUIyOXRZV055YjI0R1QySnlaWFpsQm05aWNtVjJaUTFQYUhWdVoyRnlkVzFzWVhWMERXOW9kVzVuWVhKMWJXeGhkWFFHVW1GamRYUmxCbkpoWTNWMFpReFNZMjl0YldGaFkyTmxiblFNY21OdmJXMWhZV05qWlc1MEJsSmpZWEp2YmdaeVkyRnliMjRHVTJGamRYUmxCbk5oWTNWMFpRdFRZMmx5WTNWdFpteGxlQXR6WTJseVkzVnRabXhsZUF4VVkyOXRiV0ZoWTJObGJuUU1kR052YlcxaFlXTmpaVzUwQmxSallYSnZiZ1owWTJGeWIyNEVWR0poY2dSMFltRnlCbFYwYVd4a1pRWjFkR2xzWkdVSFZXMWhZM0p2YmdkMWJXRmpjbTl1QmxWaWNtVjJaUVoxWW5KbGRtVUZWWEpwYm1jRmRYSnBibWNOVldoMWJtZGhjblZ0YkdGMWRBMTFhSFZ1WjJGeWRXMXNZWFYwQjFWdloyOXVaV3NIZFc5bmIyNWxhd3RYWTJseVkzVnRabXhsZUF0M1kybHlZM1Z0Wm14bGVBdFpZMmx5WTNWdFpteGxlQXQ1WTJseVkzVnRabXhsZUFaYVlXTjFkR1VHZW1GamRYUmxDbHBrYjNSaFkyTmxiblFLZW1SdmRHRmpZMlZ1ZEFWc2IyNW5jd2QxYm1rd01rTTVCM1Z1YVRBeVEwRUhkVzVwTURKRFFnZDFibWt3TWtRM0IzVnVhVEF6TjBFSGRXNXBNRE0zUlFWMGIyNXZjdzFrYVdWeVpYTnBjM1J2Ym05ekNrRnNjR2hoZEc5dWIzTUpZVzV2ZEdWc1pXbGhERVZ3YzJsc2IyNTBiMjV2Y3doRmRHRjBiMjV2Y3dsSmIzUmhkRzl1YjNNTVQyMXBZM0p2Ym5SdmJtOXpERlZ3YzJsc2IyNTBiMjV2Y3dwUGJXVm5ZWFJ2Ym05ekVXbHZkR0ZrYVdWeVpYTnBjM1J2Ym05ekJVRnNjR2hoQkVKbGRHRUZSMkZ0YldFSFJYQnphV3h2YmdSYVpYUmhBMFYwWVFWVWFHVjBZUVJKYjNSaEJVdGhjSEJoQmt4aGJXSmtZUUpOZFFKT2RRSllhUWRQYldsamNtOXVBbEJwQTFKb2J3VlRhV2R0WVFOVVlYVUhWWEJ6YVd4dmJnTlFhR2tEUTJocEExQnphUXhKYjNSaFpHbGxjbVZ6YVhNUFZYQnphV3h2Ym1ScFpYSmxjMmx6Q21Gc2NHaGhkRzl1YjNNTVpYQnphV3h2Ym5SdmJtOXpDR1YwWVhSdmJtOXpDV2x2ZEdGMGIyNXZjeFIxY0hOcGJHOXVaR2xsY21WemFYTjBiMjV2Y3dWaGJIQm9ZUVJpWlhSaEJXZGhiVzFoQldSbGJIUmhCMlZ3YzJsc2IyNEVlbVYwWVFObGRHRUZkR2hsZEdFRWFXOTBZUVZyWVhCd1lRWnNZVzFpWkdFQ2JuVUNlR2tIYjIxcFkzSnZiZ055YUc4R2MybG5iV0V4QlhOcFoyMWhBM1JoZFFkMWNITnBiRzl1QTNCb2FRTmphR2tEY0hOcEJXOXRaV2RoREdsdmRHRmthV1Z5WlhOcGN3OTFjSE5wYkc5dVpHbGxjbVZ6YVhNTWIyMXBZM0p2Ym5SdmJtOXpESFZ3YzJsc2IyNTBiMjV2Y3dwdmJXVm5ZWFJ2Ym05ekIzVnVhVEEwTURBSllXWnBhVEV3TURJekNXRm1hV2t4TURBMU1RbGhabWxwTVRBd05USUpZV1pwYVRFd01EVXpDV0ZtYVdreE1EQTFOQWxoWm1scE1UQXdOVFVKWVdacGFURXdNRFUyQ1dGbWFXa3hNREExTndsaFptbHBNVEF3TlRnSllXWnBhVEV3TURVNUNXRm1hV2t4TURBMk1BbGhabWxwTVRBd05qRUhkVzVwTURRd1JBbGhabWxwTVRBd05qSUpZV1pwYVRFd01UUTFDV0ZtYVdreE1EQXhOd2xoWm1scE1UQXdNVGdKWVdacGFURXdNREU1Q1dGbWFXa3hNREF5TUFsaFptbHBNVEF3TWpFSllXWnBhVEV3TURJeUNXRm1hV2t4TURBeU5BbGhabWxwTVRBd01qVUpZV1pwYVRFd01ESTJDV0ZtYVdreE1EQXlOd2xoWm1scE1UQXdNamdKWVdacGFURXdNREk1Q1dGbWFXa3hNREF6TUFsaFptbHBNVEF3TXpFSllXWnBhVEV3TURNeUNXRm1hV2t4TURBek13bGhabWxwTVRBd016UUpZV1pwYVRFd01ETTFDV0ZtYVdreE1EQXpOZ2xoWm1scE1UQXdNemNKWVdacGFURXdNRE00Q1dGbWFXa3hNREF6T1FsaFptbHBNVEF3TkRBSllXWnBhVEV3TURReENXRm1hV2t4TURBME1nbGhabWxwTVRBd05ETUpZV1pwYVRFd01EUTBDV0ZtYVdreE1EQTBOUWxoWm1scE1UQXdORFlKWVdacGFURXdNRFEzQ1dGbWFXa3hNREEwT0FsaFptbHBNVEF3TkRrSllXWnBhVEV3TURZMUNXRm1hV2t4TURBMk5nbGhabWxwTVRBd05qY0pZV1pwYVRFd01EWTRDV0ZtYVdreE1EQTJPUWxoWm1scE1UQXdOekFKWVdacGFURXdNRGN5Q1dGbWFXa3hNREEzTXdsaFptbHBNVEF3TnpRSllXWnBhVEV3TURjMUNXRm1hV2t4TURBM05nbGhabWxwTVRBd056Y0pZV1pwYVRFd01EYzRDV0ZtYVdreE1EQTNPUWxoWm1scE1UQXdPREFKWVdacGFURXdNRGd4Q1dGbWFXa3hNREE0TWdsaFptbHBNVEF3T0RNSllXWnBhVEV3TURnMENXRm1hV2t4TURBNE5RbGhabWxwTVRBd09EWUpZV1pwYVRFd01EZzNDV0ZtYVdreE1EQTRPQWxoWm1scE1UQXdPRGtKWVdacGFURXdNRGt3Q1dGbWFXa3hNREE1TVFsaFptbHBNVEF3T1RJSllXWnBhVEV3TURrekNXRm1hV2t4TURBNU5BbGhabWxwTVRBd09UVUpZV1pwYVRFd01EazJDV0ZtYVdreE1EQTVOd2QxYm1rd05EVXdDV0ZtYVdreE1EQTNNUWxoWm1scE1UQXdPVGtKWVdacGFURXdNVEF3Q1dGbWFXa3hNREV3TVFsaFptbHBNVEF4TURJSllXWnBhVEV3TVRBekNXRm1hV2t4TURFd05BbGhabWxwTVRBeE1EVUpZV1pwYVRFd01UQTJDV0ZtYVdreE1ERXdOd2xoWm1scE1UQXhNRGdKWVdacGFURXdNVEE1QjNWdWFUQTBOVVFKWVdacGFURXdNVEV3Q1dGbWFXa3hNREU1TXdsaFptbHBNREF5TURnRVJYVnlid2QxYm1reU1FRkdDV0ZtYVdrMk1UTTFNZ2xoY25KdmQyeGxablFIWVhKeWIzZDFjQXBoY25KdmQzSnBaMmgwQ1dGeWNtOTNaRzkzYmdkMWJta3lNakEyQjNSeWFXRm5kWEFIZFc1cE1qVkNOZ2QwY21saFoyUnVCM1Z1YVRJMVF6QUhkVzVwTWpZd05RZDFibWt5TmpBMkJYTndZV1JsQkdOc2RXSUZhR1ZoY25RSFpHbGhiVzl1WkF0dGRYTnBZMkZzYm05MFpRZDFibWxHTVRBd0IzVnVhVVl4TURFSGRXNXBSamhHUmdkMWJtbEdRakF4QjNWdWFVWkNNRElBQUFBQUFmLy9BQUlBQVFBQUFBNEFBQUFZQUNBQUFBQUNBQUVBQVFJdUFBRUFCQUFBQUFJQUFBQUJBQUFBQVFBQUFBQUFBUUFBQUFETVBhTFBBQUFBQU1vYkhONEFBQUFBekxZbGR3PT0ifSxmdW5jdGlvbihBLGUpe0EuZXhwb3J0cz0iQUFFQUFBQVFBUUFBQkFBQVIwUkZSakt0TWJFQUFZZHdBQUFBcEVkUVQxTXlrekhtQUFHSUZBQUFQbVJIVTFWQzF6NWNBQUFCeG5nQUFBNXlUMU12TW9PL2JJVUFBVjBvQUFBQVlGTlVRVlJlOVVNMUFBSFU3QUFBQUY1amJXRnc2SGh0UVFBQlhZZ0FBQWVlWjJGemNBQUFBQkFBQVlkb0FBQUFDR2RzZVdiRW81bjNBQUFCREFBQlNGSm9aV0ZrRzNxZmxRQUJUL0FBQUFBMmFHaGxZUWVlQk9rQUFWMEVBQUFBSkdodGRIaHJ0SC9WQUFGUUtBQUFETnhzYjJOaFNMcWFjUUFCU1lBQUFBWndiV0Y0Y0FOREFMUUFBVWxnQUFBQUlHNWhiV1c3OWRYWkFBRmxNQUFBQmtKd2IzTjBPWk5IMHdBQmEzUUFBQnYwY0hKbGNHZ0dqSVVBQVdVb0FBQUFCd0FGQUZZQUFBSktBcndBQXdBR0FBa0FEQUFQQUFCekVTRVJKU0VuQnpjbkFSRUhKemNoVmdIMC9sd0JWS3JJcXFvQmtLb2VxdjZzQXJ6OVJETC8wdi8vL2dJQi92OHQvd0FDQUFjQUFBS2pBcTRBQndBVUFBQnpBVE1CSXljaEJ6Y2hKeTRESnlNT0FnY0hBUTk5QVJCblEvNnlRbUVCRDFNRERBNE9CZ1lIRWhJR0FxNzlVcXFxKzljSklDY3BFUlEwTVJFQUF3QUhBQUFDb3dOa0FBY0FGQUFaQUFCekFUTUJJeWNoQnpjaEp5NERKeU1PQWdjVE56TVhCd2NCRDMwQkVHZEQvckpDWVFFUFV3TU1EZzRHQmdjU0VnWU5WbWdCYmdLdS9WS3FxdnZYQ1NBbktSRVVOREVSQVE2RUE0RUFBQU1BQndBQUFxTURaQUFIQUJRQUpnQUFjd0V6QVNNbklRYzNJU2N1QXljakRnSUhFeUltSmpVekhnSXpNalkyTnpNVUJnWUhBUTk5QVJCblEvNnlRbUVCRDFNRERBNE9CZ1lIRWhJR05qYy9HajBERHlNZklTTVFBVDBiUHdLdS9WS3FxdnZYQ1NBbktSRVVOREVSQVIwa05oc0tHeElTR3dvYk5pUUFBQVFBQndBQUFxTUQ5d0FIQUJRQUpnQXJBQUJ6QVRNQkl5Y2hCemNoSnk0REp5TU9BZ2NUSWlZbU5UTWVBak15TmpZM014UUdCaWMzTXhjSEJ3RVBmUUVRWjBQK3NrSmhBUTlUQXd3T0RnWUdCeElTQmpZM1B4bzlBdzhqSHlFakVBRTlHejlpVm1nQmJnS3UvVktxcXZ2WENTQW5LUkVVTkRFUkFSMGtOaHNLR3hJU0d3b2JOaVNFaEFPQkFBQUVBQWYvU0FLakEyUUFCd0FVQUJnQUtnQUFjd0V6QVNNbklRYzNJU2N1QXljakRnSUhFelV6RlFNaUppWTFNeDRDTXpJMk5qY3pGQVlHQndFUGZRRVFaMFArc2tKaEFROVRBd3dPRGdZR0J4SVNCZ2hlTURjL0dqMEREeU1mSVNNUUFUMGJQd0t1L1ZLcXF2dlhDU0FuS1JFVU5ERVIvWFpmWHdPbkpEWWJDaHNTRWhzS0d6WWtBQUFFQUFjQUFBS2pBL2NBQndBVUFDWUFLd0FBY3dFekFTTW5JUWMzSVNjdUF5Y2pEZ0lIRXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1luSXljM013Y0JEMzBCRUdkRC9ySkNZUUVQVXdNTURnNEdCZ2NTRWdZMk56OGFQUU1QSXg4aEl4QUJQUnMvQjFGdUFXZ0NydjFTcXFyNzF3a2dKeWtSRkRReEVRRWRKRFliQ2hzU0Voc0tHellraElFREFBUUFCd0FBQXFNRUF3QUhBQlFBSmdBL0FBQnpBVE1CSXljaEJ6Y2hKeTRESnlNT0FnY1RJaVltTlRNZUFqTXlOalkzTXhRR0JpYzFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWQndFUGZRRVFaMFArc2tKaEFROVRBd3dPRGdZR0J4SVNCalkzUHhvOUF3OGpIeUVqRUFFOUd6OVNEUllQRVJNL0N4c2JDeEFpSEJFU0lCTUNydjFTcXFyNzF3a2dKeWtSRkRReEVRRWRKRFliQ2hzU0Voc0tHellraER3SkNnd0lKUU1EQWdVTUZ4SVNHQTRDSEFBQUJBQUhBQUFDb3dQMUFBY0FGQUFtQUQ0QUFITUJNd0VqSnlFSE55RW5MZ01uSXc0Q0J4TWlKaVkxTXg0Q016STJOamN6RkFZR0p6NENNeklXRmpNeU5qY3pGQVlHSXlJbUppTWlCZ2NIQVE5OUFSQm5RLzZ5UW1FQkQxTUREQTRPQmdZSEVoSUdOamMvR2owRER5TWZJU01RQVQwYlA5Y0JFaVlkR2pBdUZnOFFBamdUSmg0WU1TMFdFQkFDQXE3OVVxcXErOWNKSUNjcEVSUTBNUkVCSFNRMkd3b2JFaEliQ2hzMkpLTWNMQnNSRVJJUUd5MGJFaEVURUFBREFBY0FBQUtqQTJRQUJ3QVVBQndBQUhNQk13RWpKeUVITnlFbkxnTW5JdzRDQndNekZ5TTNNd2NqQndFUGZRRVFaMFArc2tKaEFROVRBd3dPRGdZR0J4SVNCbUJWV0N4WVZXbGJBcTc5VXFxcSs5Y0pJQ2NwRVJRME1SRUJrbTF0aEFBQUF3QUhBQUFDb3dOa0FBY0FGQUFjQUFCekFUTUJJeWNoQnpjaEp5NERKeU1PQWdjRE56TVhJeWN6QndjQkQzMEJFR2REL3JKQ1lRRVBVd01NRGc0R0JnY1NFZ1pnYWx0cFZWZ3NXQUt1L1ZLcXF2dlhDU0FuS1JFVU5ERVJBUTZFaEcxdEFBUUFCd0FBQXFNRUNBQUhBQlFBSEFBaEFBQnpBVE1CSXljaEJ6Y2hKeTRESnlNT0FnY0ROek1YSXljekJ6YzNNeGNIQndFUGZRRVFaMFArc2tKaEFROVRBd3dPRGdZR0J4SVNCbUJxVzJsVldDeFlHRlpvQVc0Q3J2MVNxcXI3MXdrZ0p5a1JGRFF4RVFFT2hJUnRiYVNFQTRFQUJBQUgvMGdDb3dOa0FBY0FGQUFZQUNBQUFITUJNd0VqSnlFSE55RW5MZ01uSXc0Q0J4TTFNeFVETnpNWEl5Y3pCd2NCRDMwQkVHZEQvckpDWVFFUFV3TU1EZzRHQmdjU0VnWUlYc1pxVzJsVldDeFlBcTc5VXFxcSs5Y0pJQ2NwRVJRME1SSDlkbDlmQTVpRWhHMXRBQVFBQndBQUFxTUVDQUFIQUJRQUhBQWhBQUJ6QVRNQkl5Y2hCemNoSnk0REp5TU9BZ2NETnpNWEl5Y3pCemNqSnpjekJ3RVBmUUVRWjBQK3NrSmhBUTlUQXd3T0RnWUdCeElTQm1CcVcybFZXQ3hZYzFGdUFXZ0NydjFTcXFyNzF3a2dKeWtSRkRReEVRRU9oSVJ0YmFTQkF3QUFCQUFIQUFBQ293UVVBQWNBRkFBY0FEVUFBSE1CTXdFakp5RUhOeUVuTGdNbkl3NENCd00zTXhjakp6TUhOelV6TWpZMU5DWWpJelUrQWpNeUhnSVZGQVlHQnhVSEFROTlBUkJuUS82eVFtRUJEMU1EREE0T0JnWUhFaElHWUdwYmFWVllMRmdvRFJZUEVSTS9DeHNiQ3hBaUhCRVNJQk1DcnYxU3Fxcjcxd2tnSnlrUkZEUXhFUUVPaElSdGJhUThDUW9NQ0NVREF3SUZEUllTRWhnT0Fod0FCQUFIQUFBQ293UUdBQWNBRkFBY0FEUUFBSE1CTXdFakp5RUhOeUVuTGdNbkl3NENCd00zTXhjakp6TUhKejRDTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdjSEFROTlBUkJuUS82eVFtRUJEMU1EREE0T0JnWUhFaElHWUdwYmFWVllMRmhkQVJJbUhSb3dMaFlQRUFJNEV5WWVHREV0RmhBUUFnS3UvVktxcXZ2WENTQW5LUkVVTkRFUkFRNkVoRzF0d3hzdEd4RVJFaEFiTFJzU0VSTVFBQUFFQUFjQUFBS2pBMlFBQndBVUFCa0FIZ0FBY3dFekFTTW5JUWMzSVNjdUF5Y2pEZ0lIRXljM014Y2pKemN6RndjQkQzMEJFR2REL3JKQ1lRRVBVd01NRGc0R0JnY1NFZ1psVlFGalB1WlZBV1EvQXE3OVVxcXErOWNKSUNjcEVSUTBNUkVCRG9FRGhJRURoQUFFQUFjQUFBS2pBMklBQndBVUFCZ0FIQUFBY3dFekFTTW5JUWMzSVNjdUF5Y2pEZ0lIQXpVekZUTTFNeFVIQVE5OUFSQm5RLzZ5UW1FQkQxTUREQTRPQmdZSEVoSUdWVmxtV1FLdS9WS3FxdnZYQ1NBbktSRVVOREVSQVRSY1hGeGNBQU1BQi85SUFxTUNyZ0FIQUJRQUdBQUFjd0V6QVNNbklRYzNJU2N1QXljakRnSUhFelV6RlFjQkQzMEJFR2REL3JKQ1lRRVBVd01NRGc0R0JnY1NFZ1lJWGdLdS9WS3FxdnZYQ1NBbktSRVVOREVSL1haZlh3QURBQWNBQUFLakEyUUFCd0FVQUJrQUFITUJNd0VqSnlFSE55RW5MZ01uSXc0Q0J4TWpKemN6QndFUGZRRVFaMFArc2tKaEFROVRBd3dPRGdZR0J4SVNCbWhSYmdGb0FxNzlVcXFxKzljSklDY3BFUlEwTVJFQkRvRURBQU1BQndBQUFxTURjQUFIQUJRQUxRQUFjd0V6QVNNbklRYzNJU2N1QXljakRnSUhFelV6TWpZMU5DWWpJelUrQWpNeUhnSVZGQVlHQnhVSEFROTlBUkJuUS82eVFtRUJEMU1EREE0T0JnWUhFaElHSFEwV0R4RVRQd3NiR3dzUUlod1JFaUFUQXE3OVVxcXErOWNKSUNjcEVSUTBNUkVCRGp3SkNnd0lKUU1EQWdVTkZoSVNHQTRDSEFBQUF3QUhBQUFDb3dOa0FBY0FGQUFtQUFCekFUTUJJeWNoQnpjaEp5NERKeU1PQWdjRE5EWTJNeklXRmhVakxnSWpJZ1lHQndjQkQzMEJFR2REL3JKQ1lRRVBVd01NRGc0R0JnY1NFZ1phRzBFM09EOFpQUU1QSWlBZ0pBOENBcTc5VXFxcSs5Y0pJQ2NwRVJRME1SRUJIUncySXlNMkhBc1pFeE1aQ3dBQUF3QUhBQUFDb3dOSkFBY0FGQUFZQUFCekFUTUJJeWNoQnpjaEp5NERKeU1PQWdjRE5TRVZCd0VQZlFFUVowUCtza0poQVE5VEF3d09EZ1lHQnhJU0JtSUJNUUt1L1ZLcXF2dlhDU0FuS1JFVU5ERVJBVFJEUXdBQUF3QUgvMUlDdUFLdUFBY0FGQUFvQUFCekFUTUJJeWNoQnpjaEp5NERKeU1PQWdjQklpWW1OVFEyTnpNVkJnWVZGQll6TXhVR0JnY0JEMzBCRUdkRC9ySkNZUUVQVXdNTURnNEdCZ2NTRWdZQlZ4Y3VIUjRWT3dzWkdCMG1EeVlDcnYxU3Fxcjcxd2tnSnlrUkZEUXhFZjJBRUNZZ0lUQVRCZ29sR0JVZ0tnY0hBQVFBQndBQUFxTURsUUFIQUJRQUlBQXNBQUJ6QVRNQkl5Y2hCemNoSnk0REp5TU9BZ2NUSWlZMU5EWXpNaFlWRkFZbk1qWTFOQ1lqSWdZVkZCWUhBUTk5QVJCblEvNnlRbUVCRDFNRERBNE9CZ1lIRWhJR055czNOeXNyT0RnckZoc2JGaFViR3dLdS9WS3FxdnZYQ1NBbktSRVVOREVSQVFnMUtDazFOU2tvTlM0YkZCVWFHaFVVR3dBQUJRQUhBQUFDb3dRN0FBY0FGQUFnQUN3QU1RQUFjd0V6QVNNbklRYzNJU2N1QXljakRnSUhFeUltTlRRMk16SVdGUlFHSnpJMk5UUW1JeUlHRlJRV0p6Y3pGd2NIQVE5OUFSQm5RLzZ5UW1FQkQxTUREQTRPQmdZSEVoSUdOeXMzTnlzck9EZ3JGaHNiRmhVYkd4Vlhad0Z1QXE3OVVxcXErOWNKSUNjcEVSUTBNUkVCQ0RVb0tUVTFLU2cxTGhzVUZSb2FGUlFicjRRRGdRQUFBd0FIQUFBQ293TmlBQWNBRkFBc0FBQnpBVE1CSXljaEJ6Y2hKeTRESnlNT0FnY0RQZ0l6TWhZV016STJOek1VQmdZaklpWW1JeUlHQndjQkQzMEJFR2REL3JKQ1lRRVBVd01NRGc0R0JnY1NFZ1pvQVJJbUhSb3dMaFlQRUFJNEV5WWVHREV0RmhBUUFnS3UvVktxcXZ2WENTQW5LUkVVTkRFUkFTMGJMUnNSRVJJUUd5MGJFaEVURUFBQy8vMEFBQU93QXE0QUR3QWRBQUJqQVNFVklSY2hGU0VYSVJVaEp5RUhOeUVETGdNbkl3NERCd01CV3dKUy9rSTJBVnordWpvQlB2NTJMUDY5Vm4wQkIwUUNCUVVFQWdZRkNRa0pCUUt1VXRSUzVGS3RyZjRCRUFrU0V4SUlDQklURWdrQUEvLzlBQUFEc0FOa0FBOEFIUUFpQUFCakFTRVZJUmNoRlNFWElSVWhKeUVITnlFRExnTW5JdzREQnpjM014Y0hBd0ZiQWxMK1FqWUJYUDY2T2dFKy9uWXMvcjFXZlFFSFJBSUZCUVFDQmdVSkNRa0ZPbGRuQVc0Q3JsTFVVdVJTcmEzK0FSQUpFaE1TQ0FnU0V4SUowb1FEZ1FBREFGWUFBQUtMQXE0QUV3QWRBQ2NBQUhNUklUSVdGaFVVQmdZSEZSNENGUlFHQmlNbElUSTJOVFFtSmlNak5UTXlOalkxTkNZakkxWUJZanRXTHh3eUlDUTZJemhlUGY3OUFRSXpRQncyS2ZyeElqSWRPakQ0QXE0cFNqTW5RaXdMQkFncVJUSkRVaVpTTlQ0bU14bFJHekVmTmpNQUFRQXovL1FDcVFLNkFDRUFBRVVpSmlZMU5EWXpNaFlXRlNNMEppWWpJZ1lHRlJVVUZoWXpNalkyTlRNVUJnWUJlMm1TVGE2YldJaE5ZRE5jUGtob05qWm5TVUJkTTExUGlBeE5uWG16c0RselZ6eE9KemgxWEJWYmN6WW1UenhaY2pnQUFBSUFNLy8wQXFrRFpBQWhBQ1lBQUVVaUppWTFORFl6TWhZV0ZTTTBKaVlqSWdZR0ZSVVVGaFl6TWpZMk5UTVVCZ1lETnpNWEJ3RjdhWkpOcnB0WWlFMWdNMXcrU0dnMk5tZEpRRjB6WFUrSWYxWm9BVzhNVFoxNXM3QTVjMWM4VGljNGRWd1ZXM00ySms4OFdYSTRBdXlFQTRFQUFnQXovL1FDcVFOa0FDRUFLUUFBUlNJbUpqVTBOak15RmhZVkl6UW1KaU1pQmdZVkZSUVdGak15TmpZMU14UUdCZ016RnlNM013Y2pBWHRwa2sydW0xaUlUV0F6WEQ1SWFEWTJaMGxBWFROZFQ0anNWVmdzV0ZWcVd3eE5uWG16c0RselZ6eE9KemgxWEJWYmN6WW1UenhaY2pnRGNHMXRoQUFDQURQL1VBS3BBcm9BSVFBNUFBQkZJaVltTlRRMk16SVdGaFVqTkNZbUl5SUdCaFVWRkJZV016STJOalV6RkFZR0J5SW1KelV6TWpZMU5DWWpJemN6QnpJV0ZoVVVEZ0lCZTJtU1RhNmJXSWhOWUROY1BraG9OalpuU1VCZE0xMVBpRllYTUJSZ0V4VVJGeklRT3djYUt4a1ZJaWtNVFoxNXM3QTVjMWM4VGljNGRWd1ZXM00ySms4OFdYSTRwQVFFSnc0T0RBeFlNZ3diRnhZZEVRY0FBZ0F6Ly9RQ3FRTmtBQ0VBS1FBQVJTSW1KalUwTmpNeUZoWVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFHQmdNM014Y2pKek1IQVh0cGtrMnVtMWlJVFdBelhENUlhRFkyWjBsQVhUTmRUNGpzYVZ0cVZWZ3NXQXhOblhtenNEbHpWenhPSnpoMVhCVmJjelltVHp4WmNqZ0M3SVNFYlcwQUFBSUFNLy8wQXFrRFp3QWhBQ1VBQUVVaUppWTFORFl6TWhZV0ZTTTBKaVlqSWdZR0ZSVVVGaFl6TWpZMk5UTVVCZ1lETlRNVkFYdHBrazJ1bTFpSVRXQXpYRDVJYURZMlowbEFYVE5kVDRpRVh3eE5uWG16c0RselZ6eE9KemgxWEJWYmN6WW1UenhaY2pnREVtRmhBQUFDQUZZQUFBS3JBcTRBQ2dBWUFBQnpFU0V5RmhZVkZBWUdJeWN6TWo0Q05UVTBMZ0lqSTFZQkFHeVlVVkdZYktHZk9WcEFJU0UvV2pxZkFxNUlsM2gybUVsU0hUeGZRaFJFWHp3ZEFBQUVBRllBQUFVcUEyUUFDZ0FZQUNJQUtnQUFjeEVoTWhZV0ZSUUdCaU1uTXpJK0FqVTFOQzRDSXlNQk5RRWhOU0VWQVNFVkFUTVhJemN6QnlOV0FRQnNtRkZSbUd5aG56bGFRQ0VoUDFvNm53SS9BYUQrZWdJVC9sOEJxdjVRVmxjc1dGVnBXd0t1U0pkNGRwaEpVaDA4WDBJVVJGODhIZjJrTVFJclVqSDkxVklEWkcxdGhBQUFBd0FBQUFBQ3F3S3VBQU1BRGdBY0FBQlJOU0VWQVJFaE1oWVdGUlFHQmlNbk16SStBalUxTkM0Q0l5TUJkLzdmQVFCc21GRlJtR3lobnpsYVFDRWhQMW82bndFMlRFeit5Z0t1U0pkNGRwaEpVaDA4WDBJVVJGODhIUUFEQUZZQUFBS3JBMlFBQ2dBWUFDQUFBSE1SSVRJV0ZoVVVCZ1lqSnpNeVBnSTFOVFF1QWlNakV6TVhJemN6QnlOV0FRQnNtRkZSbUd5aG56bGFRQ0VoUDFvNm54NVZXQ3hYVldsYkFxNUlsM2gybUVsU0hUeGZRaFJFWHp3ZEFRaHRiWVFBQXdBQUFBQUNxd0t1QUFNQURnQWNBQUJSTlNFVkFSRWhNaFlXRlJRR0JpTW5NekkrQWpVMU5DNENJeU1CZC83ZkFRQnNtRkZSbUd5aG56bGFRQ0VoUDFvNm53RTJURXoreWdLdVNKZDRkcGhKVWgwOFgwSVVSRjg4SFFBRUFGWUFBQVN3QXRNQUNnQVlBQ0lBS2dBQWN4RWhNaFlXRlJRR0JpTW5NekkrQWpVMU5DNENJeU1CTlFFaE5TRVZBU0VWQVRNWEl6Y3pCeU5XQVFCc21GRlJtR3lobnpsYVFDRWhQMW82bndKSUFTWCs4QUdPL3RvQk52NlRVbGdzVjFKcVV3S3VTSmQ0ZHBoSlVoMDhYMElVUkY4OEhmMmtMd0dWU2k3K2Frb0MwMjF0aEFBQUFRQldBQUFDYkFLdUFBc0FBSE1SSVJVaEZTRVZJUlVoRlZZQ0VQNVBBWVgrZXdHM0FxNVMxRkxrVWdBQ0FGWUFBQUpzQTJRQUN3QVFBQUJ6RVNFVklSVWhGU0VWSVJVQk56TVhCMVlDRVA1UEFZWCtld0czL3M1V2FBRnZBcTVTMUZMa1VnTGdoQU9CQUFJQVZnQUFBbXdEWkFBTEFCMEFBSE1SSVJVaEZTRVZJUlVoRlFFaUppWTFNeDRDTXpJMk5qY3pGQVlHVmdJUS9rOEJoZjU3QWJmKzl6Yy9HajBERHlNZklTTVFBVDBiUHdLdVV0UlM1RklDN3lRMkd3b2JFaEliQ2hzMkpBQUNBRllBQUFKc0EyUUFDd0FUQUFCekVTRVZJUlVoRlNFVklSVUJNeGNqTnpNSEkxWUNFUDVQQVlYK2V3RzMvbUZWV0N4WVZXbGJBcTVTMUZMa1VnTmtiVzJFQUFJQVZnQUFBbXdEWkFBTEFCTUFBSE1SSVJVaEZTRVZJUlVoRlFFM014Y2pKek1IVmdJUS9rOEJoZjU3QWJmK1lXcGJhVlZZTEZnQ3JsTFVVdVJTQXVDRWhHMXRBQUFEQUZZQUFBSnNCQWdBQ3dBVEFCZ0FBSE1SSVJVaEZTRVZJUlVoRlFFM014Y2pKek1ITnpjekZ3ZFdBaEQrVHdHRi9uc0J0LzVoYWx0cFZWZ3NXQmhXYUFGdkFxNVMxRkxrVWdMZ2hJUnRiYVNFQTRFQUFBTUFWdjlJQW13RFpBQUxBQThBRndBQWN4RWhGU0VWSVJVaEZTRVZCVFV6RlFNM014Y2pKek1IVmdJUS9rOEJoZjU3QWJmK3pGN0phbHRwVlZnc1dBS3VVdFJTNUZLNFgxOERtSVNFYlcwQUF3QldBQUFDYkFRSUFBc0FFd0FZQUFCekVTRVZJUlVoRlNFVklSVUJOek1YSXljekJ6Y2pKemN6VmdJUS9rOEJoZjU3QWJmK1lXcGJhVlZZTEZoelVXNEJad0t1VXRSUzVGSUM0SVNFYlcya2dRTUFBd0JXQUFBQ2JBUVVBQXNBRXdBc0FBQnpFU0VWSVJVaEZTRVZJUlVCTnpNWEl5Y3pCemMxTXpJMk5UUW1JeU0xUGdJek1oNENGUlFHQmdjVlZnSVEvazhCaGY1N0FiZitZV3BiYVZWWUxGZ29EUllQRVJNL0Nod2JDeEFpSEJFU0lCTUNybExVVXVSU0F1Q0VoRzF0cER3SkNnd0lKUU1EQWdVTkZoSVNHQTRDSEFBQUF3QldBQUFDYkFRR0FBc0FFd0FyQUFCekVTRVZJUlVoRlNFVklSVUJOek1YSXljekJ5YytBak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIVmdJUS9rOEJoZjU3QWJmK1lXcGJhVlZZTEZoZEFSSW1IUm93TGhZUEVBSTRFeVllR0RFdEZoQVFBZ0t1VXRSUzVGSUM0SVNFYlczREd5MGJFUkVTRUJzdEd4SVJFeEFBQXdCV0FBQUNiQU5rQUFzQUVBQVZBQUJ6RVNFVklSVWhGU0VWSVJVREp6Y3pGeU1uTnpNWFZnSVEvazhCaGY1N0FiZmFWUUZqUHVaVkFXUStBcTVTMUZMa1VnTGdnUU9FZ1FPRUFBTUFWZ0FBQW13RFlnQUxBQThBRXdBQWN4RWhGU0VWSVJVaEZTRVZBVFV6RlRNMU14VldBaEQrVHdHRi9uc0J0LzVzV1daWkFxNVMxRkxrVWdNR1hGeGNYQUFBQWdCV0FBQUNiQU5uQUFzQUR3QUFjeEVoRlNFVklSVWhGU0VWQVRVekZWWUNFUDVQQVlYK2V3RzMvc2xmQXE1UzFGTGtVZ01HWVdFQUFBSUFWdjlJQW13Q3JnQUxBQThBQUhNUklSVWhGU0VWSVJVaEZRVTFNeFZXQWhEK1R3R0YvbnNCdC83TVhnS3VVdFJTNUZLNFgxOEFBZ0JXQUFBQ2JBTmtBQXNBRUFBQWN4RWhGU0VWSVJVaEZTRVZBeU1uTnpOV0FoRCtUd0dGL25zQnQ5ZFJiZ0ZuQXE1UzFGTGtVZ0xnZ1FNQUFnQldBQUFDYkFOd0FBc0FKQUFBY3hFaEZTRVZJUlVoRlNFVkFUVXpNalkxTkNZakl6VStBak15SGdJVkZBWUdCeFZXQWhEK1R3R0YvbnNCdC83ZURSWVBFUk0vQ2h3YkN4QWlIQkVTSUJNQ3JsTFVVdVJTQXVBOENRb01DQ1VEQXdJRkRSWVNFaGdPQWh3QUFnQldBQUFDYkFOa0FBc0FIUUFBY3hFaEZTRVZJUlVoRlNFVkFUUTJOak15RmhZVkl5NENJeUlHQmdkV0FoRCtUd0dGL25zQnQvNW5HMEE0T0Q4WlBRTVBJaUFnSkE4Q0FxNVMxRkxrVWdMdkhEWWpJelljQ3hrVEV4a0xBQUlBVmdBQUFtd0RTUUFMQUE4QUFITVJJUlVoRlNFVklSVWhGUUUxSVJWV0FoRCtUd0dGL25zQnQvNWZBVEVDcmxMVVV1UlNBd1pEUXdBQ0FGYi9VZ0pzQXE0QUN3QWZBQUJ6RVNFVklSVWhGU0VWSVJVSElpWW1OVFEyTnpNVkJnWVZGQll6TXhVR0JsWUNFUDVQQVlYK2V3RzNReGd0SFI0Vk9nc1pHQjRtRHlZQ3JsTFVVdVJTcmhBbUlDRXdFd1lLSlJnVklDb0hCd0FDQUZZQUFBSnNBMklBQ3dBakFBQnpFU0VWSVJVaEZTRVZJUlVCUGdJek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0IxWUNFUDVQQVlYK2V3RzMvbGtCRWlZZEdqQXVGZzhRQWpnVEpoNFlNUzBXRUJBQ0FxNVMxRkxrVWdML0d5MGJFUkVTRUJzdEd4SVJFeEFBQUFFQVZnQUFBandDcmdBSkFBQnpFU0VWSVJVaEZTRVJWZ0htL25rQlpQNmNBcTVTM0ZIKzBRQUJBRGovOUFMTkFyb0FLZ0FBUlNJbU5UUTJOak15SGdJVkl6UXVBaU1pRGdJVkZSUVdGak15TmpZMU5TTTFJUkVqSnc0Q0FZdW1yVkNjY0VaeVV5MWhJRHRPTER4ZVFDSTViRXhOWkRIeUFWSklDaHRLV1F5dXRYYWVUeDQ5WEQ4c1B5Z1JIa0JrUlJWZGREVXJXRU1NVWY2WFZ5TXNGQUFDQURqLzlBTE5BMlFBS2dBOEFBQkZJaVkxTkRZMk16SWVBaFVqTkM0Q0l5SU9BaFVWRkJZV016STJOalUxSXpVaEVTTW5EZ0lESWlZbU5UTWVBak15TmpZM014UUdCZ0dMcHExUW5IQkdjbE10WVNBN1RpdzhYa0FpT1d4TVRXUXg4Z0ZTU0FvYlNsa3VOMEFaUFFNT0l5QWdKQThCUGh0QURLNjFkcDVQSGoxY1B5dy9LQkVlUUdSRkZWMTBOU3RZUXd4Ui9wZFhJeXdVQXZza05oc0tHeElTR3dvYk5pUUFBQUlBT1AvMEFzMERaQUFxQURJQUFFVWlKalUwTmpZek1oNENGU00wTGdJaklnNENGUlVVRmhZek1qWTJOVFVqTlNFUkl5Y09BZ016RnlNM013Y2pBWXVtclZDY2NFWnlVeTFoSUR0T0xEeGVRQ0k1YkV4TlpESHlBVkpJQ2h0S1djUlZXQ3hYVm1wYkRLNjFkcDVQSGoxY1B5dy9LQkVlUUdSRkZWMTBOU3RZUXd4Ui9wZFhJeXdVQTNCdGJZUUFBQUlBT1AvMEFzMERaQUFxQURJQUFFVWlKalUwTmpZek1oNENGU00wTGdJaklnNENGUlVVRmhZek1qWTJOVFVqTlNFUkl5Y09BZ00zTXhjakp6TUhBWXVtclZDY2NFWnlVeTFoSUR0T0xEeGVRQ0k1YkV4TlpESHlBVkpJQ2h0S1djUnBXMnBXVnl4WURLNjFkcDVQSGoxY1B5dy9LQkVlUUdSRkZWMTBOU3RZUXd4Ui9wZFhJeXdVQXV5RWhHMXRBQUlBT1A3Y0FzMEN1Z0FxQURZQUFFVWlKalUwTmpZek1oNENGU00wTGdJaklnNENGUlVVRmhZek1qWTJOVFVqTlNFUkl5Y09BZ00xTWpZMUl6VXpGUlFHQmdHTHBxMVFuSEJHY2xNdFlTQTdUaXc4WGtBaU9XeE1UV1F4OGdGU1NBb2JTbGxtSEJvc1h4c3ZESzYxZHA1UEhqMWNQeXcvS0JFZVFHUkZGVjEwTlN0WVF3eFIvcGRYSXl3VS91Z29KaDVoVHkwM0dnQUFBZ0E0Ly9RQ3pRTm5BQ29BTGdBQVJTSW1OVFEyTmpNeUhnSVZJelF1QWlNaURnSVZGUlFXRmpNeU5qWTFOU00xSVJFakp3NENBelV6RlFHTHBxMVFuSEJHY2xNdFlTQTdUaXc4WGtBaU9XeE1UV1F4OGdGU1NBb2JTbGxjWGd5dXRYYWVUeDQ5WEQ4c1B5Z1JIa0JrUlJWZGREVXJXRU1NVWY2WFZ5TXNGQU1TWVdFQUFRQldBQUFDaWdLdUFBc0FBSE1STXhFaEVUTVJJeEVoRVZaZkFYVmdZUDZMQXE3KzJnRW0vVklCTmY3TEFBSUFEZ0FBQXRNQ3JnQUxBQThBQUhNUk14RWhFVE1SSXhFaEVRTTFJUlZXWHdGMVlHRCtpNmNDeFFLdS90b0JKdjFTQVRYK3l3SVhTMHNBQUFJQVZnQUFBb29EWkFBTEFCTUFBSE1STXhFaEVUTVJJeEVoRVJNM014Y2pKek1IVmw4QmRXQmcvb3NsYVZ0cVZsY3NXQUt1L3RvQkp2MVNBVFgreXdMZ2hJUnRiUUFDQUZiL1NBS0tBcTRBQ3dBUEFBQnpFVE1SSVJFekVTTVJJUkVYTlRNVlZsOEJkV0JnL291TFh3S3UvdG9CSnYxU0FUWCt5N2hmWHdBQUFRQldBQUFBdFFLdUFBTUFBSE1STXhGV1h3S3UvVklBQWdCVy8vUUM1d0t1QUFNQUZ3QUFjeEV6RVFVaUppWTFOVE1WRkJZek1qWTFFVE1SRkFZR1ZsOEJWRVZpTkY5QVBEMUJZRFZqQXE3OVVnd3RWMEllSXpZNVRrMEJ6ZjQ0VVd3MUFBSUFWZ0FBQVJzRFpBQURBQWdBQUhNUk14RUROek1YQjFaZldWWm9BVzhDcnYxU0F1Q0VBNEVBQUFMLzlRQUFBUmdEWkFBREFCVUFBSE1STXhFRElpWW1OVE1lQWpNeU5qWTNNeFFHQmxaZk1EYy9HajBERHlNZklTTVFBVDBiUHdLdS9WSUM3eVEyR3dvYkVoSWJDaHMySkFBQUF2L3ZBQUFCSFFOa0FBTUFDd0FBY3hFekVRTXpGeU0zTXdjalZsL0dWVmdzV0ZWcFd3S3UvVklEWkcxdGhBQUFBdi92QUFBQkhRTmtBQU1BQ3dBQWN4RXpFUU0zTXhjakp6TUhWbC9HYWx0cFZWZ3NXQUt1L1ZJQzRJU0ViVzBBQS8vR0FBQUJBUU5rQUFNQUNBQU5BQUJ6RVRNUkF5YzNNeGNqSnpjekYxWmZBVlVCWXo3bVZRRmtQZ0t1L1ZJQzRJRURoSUVEaEFBRC8vb0FBQUVTQTJJQUF3QUhBQXNBQUhNUk14RUROVE1WTXpVekZWWmZ1MWxtV1FLdS9WSURCbHhjWEZ3QUFnQldBQUFBdGdObkFBTUFCd0FBY3hFekVRTTFNeFZXWDE1ZkFxNzlVZ01HWVdFQUFnQlcvMGdBdFFLdUFBTUFCd0FBY3hFekVRYzFNeFZXWDE5ZkFxNzlVcmhmWHdBQUF2LzRBQUFBdHdOa0FBTUFDQUFBY3hFekVSTWpKemN6Vmw4Q1VXNEJad0t1L1ZJQzRJRURBQUlBT3dBQUFPWURjQUFEQUJ3QUFITVJNeEVETlRNeU5qVTBKaU1qTlQ0Q016SWVBaFVVQmdZSEZWWmZTUTBXRHhFVFB3b2NHd3NRSWh3UkVpQVRBcTc5VWdMZ1BBa0tEQWdsQXdNQ0JRMFdFaElZRGdJY0FBQUMvL1VBQUFFWUEyUUFBd0FWQUFCekVUTVJBelEyTmpNeUZoWVZJeTRDSXlJR0JnZFdYOEFiUURnNFB4azlBdzhpSUNBa0R3SUNydjFTQXU4Y05pTWpOaHdMR1JNVEdRc0FBQUwvN1FBQUFSNERTUUFEQUFjQUFITVJNeEVETlNFVlZsL0lBVEVDcnYxU0F3WkRRd0FBQWdBay8xSUF5UUt1QUFNQUZ3QUFjeEV6RVFjaUppWTFORFkzTXhVR0JoVVVGak16RlFZR1ZsOHZHQzBkSGhVNkN4Z1hIaVlQSmdLdS9WS3VFQ1lnSVRBVEJnb2xHQlVnS2djSEFBTC81d0FBQVNRRFlnQURBQnNBQUhNUk14RURQZ0l6TWhZV016STJOek1VQmdZaklpWW1JeUlHQjFaZnpnRVNKaDBhTUM0V0R4QUNPQk1tSGhneExSWVFFQUlDcnYxU0F2OGJMUnNSRVJJUUd5MGJFaEVURUFBQkFDUC85QUhiQXE0QUV3QUFWeUltSmpVMU14VVVGak15TmpVUk14RVVCZ2IrUldNelgwQThQVUZmTkdNTUxWZENIaU0yT1U1TkFjMytPRkZzTlFBQUFnQWovL1FDUXdOa0FCTUFHd0FBVnlJbUpqVTFNeFVVRmpNeU5qVVJNeEVVQmdZRE56TVhJeWN6Qi81Rll6TmZRRHc5UVY4MFl5OXBXMnBXVnl4WURDMVhRaDRqTmpsT1RRSE4vamhSYkRVQzdJU0ViVzBBQUFFQVZnQUFBcEVDcmdBTEFBQnpFVE1SQVRNQkFTTURCeFZXWHdGZGR2NzdBUTV4MzR3Q3J2NlZBV3YrN3Y1a0FWaUUxQUFDQUZiKzNBS1JBcTRBQ3dBWEFBQnpFVE1SQVRNQkFTTURCeFVUTlRJMk5TTTFNeFVVQmdaV1h3RmRkdjc3QVE1eDM0eHhIQm9zWHhzdkFxNytsUUZyL3U3K1pBRlloTlQrM0NnbUhtRlBMVGNhQUFBQkFGWUFBQUlLQXE0QUJRQUFjeEV6RVNFVlZsOEJWUUt1L2FWVEFBQUNBRmIvOUFQZkFxNEFCUUFaQUFCekVUTVJJUlVYSWlZbU5UVXpGUlFXTXpJMk5SRXpFUlFHQmxaZkFWWDRSV016WDBBOFBVRmZOR01DcnYybFV3d3RWMEllSXpZNVRrMEJ6ZjQ0VVd3MUFBSUFWZ0FBQWdvRFpBQUZBQW9BQUhNUk14RWhGUUUzTXhjSFZsOEJWZjVSVjJjQmJnS3UvYVZUQXVDRUE0RUFBQUlBVmdBQUFnb0Mwd0FGQUFrQUFITVJNeEVoRlFNMU13ZFdYd0ZWcVZjWUFxNzlwVk1DSzZpb0FBSUFWdjdjQWdvQ3JnQUZBQkVBQUhNUk14RWhGUUUxTWpZMUl6VXpGUlFHQmxaZkFWWCs3QndiTEY0YUx3S3UvYVZUL3R3b0poNWhUeTAzR2dBQUFnQldBQUFDQ2dLdUFBVUFDUUFBY3hFekVTRVZBelV6RlZaZkFWV3ZaUUt1L2FWVEFVaGlZZ0FBQXdCVy8wb0N0UUxUQUFVQUNRQVpBQUJ6RVRNUklSVVROVE1WQXlJbUppYzFNekkyTlJFekVSUUdCbFpmQVZWVFdHOExHaGdJTFJjWVdCUXZBcTc5cFZNQ2NXSmkvTmtEQlFNOUdSY0NUUDJ5SGpZaUFBQUNBQUFBQUFJS0FxNEFCUUFKQUFCekVUTVJJUlVsTlNVVlZsOEJWZjMyQVZFQ3J2MmxVOGxMMzB3QUFBRUFWZ0FBQXZrQ3JnQW5BQUJ6RVRNVEhnSVhNejRDTnhNekVTTVJORFkyTlNNT0FnY0RJd011QWljakhnSVZFVmFUbkFZTkN3TUhBd29NQlp5U1h3SUNDQU1PRHdhaFVxRUdEUTBHQndFQkFRS3Uva01TS3lZT0R5Y3FFUUc5L1ZJQmtoOUpQUTBOTHpNVS9qOEJ3UkV0TUJVV1FVRWEvbTRBQVFCV0FBQUNpZ0t1QUJnQUFITVJNd0VlQWhjek5EUTFFVE1SSXdFbUppY2pGQlFWRVZaY0FVMEZFQkFGQkYxWC9xOEhHd2tGQXE3K1BBWVlGd2tRSHc4QnhQMVNBY3dMS0F3UUh4RCtOQUFDQUZiLzlBUzdBcTRBR0FBc0FBQnpFVE1CSGdJWE16UTBOUkV6RVNNQkppWW5JeFFVRlJFRklpWW1OVFV6RlJRV016STJOUkV6RVJRR0JsWmNBVTBGRUJBRkJGMVgvcThIR3drRkF5eEdZalJmUUQwOVFHQTBZd0t1L2p3R0dCY0pFQjhQQWNUOVVnSE1DeWdNRUI4US9qUU1MVmRDSGlNMk9VNU5BYzMrT0ZGc05RQUNBRllBQUFLS0EyUUFHQUFkQUFCekVUTUJIZ0lYTXpRME5SRXpFU01CSmlZbkl4UVVGUkVUTnpNWEIxWmNBVTBGRUJBRkJGMVgvcThIR3drRmxsWm9BVzhDcnY0OEJoZ1hDUkFmRHdIRS9WSUJ6QXNvREJBZkVQNDBBdUNFQTRFQUFBSUFWZ0FBQW9vRFpBQVlBQ0FBQUhNUk13RWVBaGN6TkRRMUVUTVJJd0VtSmljakZCUVZFUk16RnlNM013Y2pWbHdCVFFVUUVBVUVYVmYrcndjYkNRVXBWVmdzV0ZWcFd3S3UvandHR0JjSkVCOFBBY1Q5VWdITUN5Z01FQjhRL2pRRFpHMXRoQUFBQWdCVy90d0NpZ0t1QUJnQUpBQUFjeEV6QVI0Q0Z6TTBORFVSTXhFakFTWW1KeU1VRkJVUkV6VXlOalVqTlRNVkZBWUdWbHdCVFFVUUVBVUVYVmYrcndjYkNRV0ZIQm9zWHhzdkFxNytQQVlZRndrUUh3OEJ4UDFTQWN3TEtBd1FIeEQrTlA3Y0tDWWVZVTh0TnhvQUFBRUFWdjlLQW9vQ3JnQW1BQUJGSWlZbUp6VXpNalkxTlFFbUppY2pGQlFWRVNNUk13RWVBaGN6TkRRMUVUTVJGQTRDQWhzTEd4Z0lMQmNWL3JVSEd3a0ZYRndCVFFVUUVBVUVYUXNhS3JZRUJRSS9HQmRHQWNNTEtBd1FIeEQrTkFLdS9qd0dHQmNKRUI0T0FjYjlFaGNxSVJRQUFmLysvMG9DaWdLdUFDVUFBRmNpSmlZbk5UTXlOalVSTXdFZUFoY3pORFExRVRNUkl3RW1KaWNqRkJRVkVSUU9Ba1FNR2hjSkxCY1ZYQUZOQlJBUUJRUmRWLzZ2QnhzSkJRc1pLcllFQlFJL0dCY0M2LzQ4QmhnWENSQWZEd0hFL1ZJQnpBc29EQkFmRVAzMEZ5b2hGQUFBQXdCVy8wb0RmQUxUQUJnQUhBQXNBQUJ6RVRNQkhnSVhNelEwTlJFekVTTUJKaVluSXhRVUZSRUJOVE1WQXlJbUppYzFNekkyTlJFekVSUUdCbFpjQVUwR0R4QUZCRjFYL3E4SEd3a0ZBbkpZYmd3WkdBZ3RGeGRZRXpBQ3J2NDhCaGdYQ1JBZkR3SEUvVklCekFzb0RCQWZFUDQwQW5GaVl2elpBd1VEUFJrWEFrejlzaDQySWdBQUFnQldBQUFDaWdOaUFCZ0FNQUFBY3hFekFSNENGek0wTkRVUk14RWpBU1ltSnlNVUZCVVJFejRDTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdkV1hBRk5CUkFRQlFSZFYvNnZCeHNKQlNFQkVpWWRHakF1Rmc4UUFqZ1RKaDRZTVMwV0VCQUNBcTcrUEFZWUZ3a1FIdzhCeFAxU0Fjd0xLQXdRSHhEK05BTC9HeTBiRVJFU0VCc3RHeElSRXhBQUFnQXovL1FDNFFLNkFBOEFKUUFBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5UGdJMU5UUXVBaU1pRGdJVkZSUWVBZ0dLYTVsVFU1bHJhNWxUVTVsck9Gcy9JaUkvV3pnNVdrQWhJVUJhREU2ZWQzaWRUazZkZUhlZVRsSWVRV05FRlVWalFSNGVRV05GRlVSalFSNEFBQU1BTS8vMEF1RURaQUFQQUNVQUtnQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFoTTNNeGNIQVlwcm1WTlRtV3RybVZOVG1XczRXejhpSWo5Yk9EbGFRQ0VoUUZvT1ZtZ0JiZ3hPbm5kNG5VNU9uWGgzbms1U0hrRmpSQlZGWTBFZUhrRmpSUlZFWTBFZUFwcUVBNEVBQXdBei8vUUM0UU5rQUE4QUpRQTNBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENFeUltSmpVekhnSXpNalkyTnpNVUJnWUJpbXVaVTFPWmEydVpVMU9aYXpoYlB5SWlQMXM0T1ZwQUlTRkFXamMzUHhvK0FnOGpIeUVqRUFFOUd6OE1UcDUzZUoxT1RwMTRkNTVPVWg1QlkwUVZSV05CSGg1QlkwVVZSR05CSGdLcEpEWWJDaHNTRWhzS0d6WWtBQU1BTS8vMEF1RURaQUFQQUNVQUxRQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFnTXpGeU0zTXdjakFZcHJtVk5UbVd0cm1WTlRtV3M0V3o4aUlqOWJPRGxhUUNFaFFGcGZWbGNzV0ZWcFd3eE9ubmQ0blU1T25YaDNuazVTSGtGalJCVkZZMEVlSGtGalJSVkVZMEVlQXg1dGJZUUFBd0F6Ly9RQzRRTmtBQThBSlFBdEFBQkZJaVltTlRRMk5qTXlGaFlWRkFZR0p6SStBalUxTkM0Q0l5SU9BaFVWRkI0Q0F6Y3pGeU1uTXdjQmltdVpVMU9aYTJ1WlUxT1phemhiUHlJaVAxczRPVnBBSVNGQVdsOXFXMmxWV0N4WERFNmVkM2lkVGs2ZGVIZWVUbEllUVdORUZVVmpRUjRlUVdORkZVUmpRUjRDbW9TRWJXMEFBQVFBTS8vMEF1RUVDQUFQQUNVQUxRQXlBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENBemN6RnlNbk13YzNOek1YQndHS2E1bFRVNWxyYTVsVFU1bHJPRnMvSWlJL1d6ZzVXa0FoSVVCYVgycGJhVlZZTEZjWFZtZ0JiZ3hPbm5kNG5VNU9uWGgzbms1U0hrRmpSQlZGWTBFZUhrRmpSUlZFWTBFZUFwcUVoRzF0cElRRGdRQUFCQUF6LzBnQzRRTmtBQThBSlFBcEFERUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSVhOVE1WQXpjekZ5TW5Nd2NCaW11WlUxT1phMnVaVTFPWmF6aGJQeUlpUDFzNE9WcEFJU0ZBV2c5ZnpXcGJhVlZZTEZjTVRwNTNlSjFPVHAxNGQ1NU9VaDVCWTBRVlJXTkJIaDVCWTBVVlJHTkJIdjVmWHdPWWhJUnRiUUFFQURQLzlBTGhCQWdBRHdBbEFDMEFNZ0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5UGdJMU5UUXVBaU1pRGdJVkZSUWVBZ00zTXhjakp6TUhOeU1uTnpNQmltdVpVMU9aYTJ1WlUxT1phemhiUHlJaVAxczRPVnBBSVNGQVdsOXFXMmxWV0N4WGNsRnVBV2dNVHA1M2VKMU9UcDE0ZDU1T1VoNUJZMFFWUldOQkhoNUJZMFVWUkdOQkhnS2FoSVJ0YmFTQkF3QUVBRFAvOUFMaEJCUUFEd0FsQUMwQVJnQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFnTTNNeGNqSnpNSE56VXpNalkxTkNZakl6VStBak15SGdJVkZBWUdCeFVCaW11WlUxT1phMnVaVTFPWmF6aGJQeUlpUDFzNE9WcEFJU0ZBV2w5cVcybFZXQ3hYSncwV0R4RVNRQXNiR3dzUUlod1JFaUFUREU2ZWQzaWRUazZkZUhlZVRsSWVRV05FRlVWalFSNGVRV05GRlVSalFSNENtb1NFYlcya1BBa0tEQWdsQXdNQ0JRMFdFaElZRGdJY0FBQUVBRFAvOUFMaEJBWUFEd0FsQUMwQVJRQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFnTTNNeGNqSnpNSEp6NENNeklXRmpNeU5qY3pGQVlHSXlJbUppTWlCZ2NCaW11WlUxT1phMnVaVTFPWmF6aGJQeUlpUDFzNE9WcEFJU0ZBV2w5cVcybFZXQ3hYWGdFU0poMGFNQzRXRHhBQ09CTW1IaGd3TGhZUUVBSU1UcDUzZUoxT1RwMTRkNTVPVWg1QlkwUVZSV05CSGg1QlkwVVZSR05CSGdLYWhJUnRiY01iTFJzUkVSSVFHeTBiRWhFVEVBQUVBRFAvOUFMaEEyUUFEd0FsQUNvQUx3QUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFoTW5Oek1YSXljM014Y0JpbXVaVTFPWmEydVpVMU9aYXpoYlB5SWlQMXM0T1ZwQUlTRkFXbWRXQVdNKzVsVUJaVDRNVHA1M2VKMU9UcDE0ZDU1T1VoNUJZMFFWUldOQkhoNUJZMFVWUkdOQkhnS2FnUU9FZ1FPRUFBQUVBRFAvOUFMaEEySUFEd0FsQUNrQUxRQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFnTTFNeFV6TlRNVkFZcHJtVk5UbVd0cm1WTlRtV3M0V3o4aUlqOWJPRGxhUUNFaFFGcFVXV1paREU2ZWQzaWRUazZkZUhlZVRsSWVRV05FRlVWalFSNGVRV05GRlVSalFSNEN3RnhjWEZ3QUFBVUFNLy8wQXVFRDl3QVBBQ1VBS1FBdEFERUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSUROVE1WTXpVekZTVTFJUlVCaW11WlUxT1phMnVaVTFPWmF6aGJQeUlpUDFzNE9WcEFJU0ZBV2xSWlpsbisyd0V4REU2ZWQzaWRUazZkZUhlZVRsSWVRV05FRlVWalFSNGVRV05GRlVSalFSNEN3RnhjWEZ5dVEwTUFCQUF6Ly9RQzRRUDNBQThBSlFBcEFDMEFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSVROVE1WSnpVaEZRR0thNWxUVTVscmE1bFRVNWxyT0ZzL0lpSS9Xemc1V2tBaElVQmFDVi9KQVRFTVRwNTNlSjFPVHAxNGQ1NU9VaDVCWTBRVlJXTkJIaDVCWTBVVlJHTkJIZ0xBWVdHdVEwTUFBQU1BTS85SUF1RUN1Z0FQQUNVQUtRQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFoYzFNeFVCaW11WlUxT1phMnVaVTFPWmF6aGJQeUlpUDFzNE9WcEFJU0ZBV2c5ZkRFNmVkM2lkVGs2ZGVIZWVUbEllUVdORUZVVmpRUjRlUVdORkZVUmpRUjcrWDE4QUF3QXovL1FDNFFOa0FBOEFKUUFxQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDRXlNbk56TUJpbXVaVTFPWmEydVpVMU9aYXpoYlB5SWlQMXM0T1ZwQUlTRkFXbWxSYmdGb0RFNmVkM2lkVGs2ZGVIZWVUbEllUVdORUZVVmpRUjRlUVdORkZVUmpRUjRDbW9FREFBQURBRFAvOUFMaEEzQUFEd0FsQUQ0QUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJVE5UTXlOalUwSmlNak5UNENNekllQWhVVUJnWUhGUUdLYTVsVFU1bHJhNWxUVTVsck9Gcy9JaUkvV3pnNVdrQWhJVUJhSGcwV0R4RVNRQXNiR3dzUUlod1JFaUFUREU2ZWQzaWRUazZkZUhlZVRsSWVRV05FRlVWalFSNGVRV05GRlVSalFSNENtandKQ2d3SUpRTURBZ1VORmhJU0dBNENIQUFEQURQLzlBTVRBejBBRHdBbEFERUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSVROVEkyTlNNMU14VVVCZ1lCaW11WlUxT1phMnVaVTFPWmF6aGJQeUlpUDFzNE9WcEFJU0ZBV3ZoQlJqVjRNRm9NVHA1M2VKMU9UcDE0ZDU1T1VoNUJZMFFWUldOQkhoNUJZMFVWUkdOQkhnSCtOQzhxYkU0MlRTZ0FCQUF6Ly9RREV3TmtBQThBSlFBeEFEWUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSVROVEkyTlNNMU14VVVCZ1lsTnpNWEJ3R0thNWxUVTVscmE1bFRVNWxyT0ZzL0lpSS9Xemc1V2tBaElVQmErRUZHTlhnd1d2N1hWbWdCYmd4T25uZDRuVTVPblhoM25rNVNIa0ZqUkJWRlkwRWVIa0ZqUlJWRVkwRWVBZjQwTHlwc1RqWk5LSnlFQTRFQUFBUUFNLzlJQXhNRFBRQVBBQ1VBTVFBMUFBQkZJaVltTlRRMk5qTXlGaFlWRkFZR0p6SStBalUxTkM0Q0l5SU9BaFVWRkI0Q0V6VXlOalVqTlRNVkZBWUdBVFV6RlFHS2E1bFRVNWxyYTVsVFU1bHJPRnMvSWlJL1d6ZzVXa0FoSVVCYStFRkdOWGd3V3Y3U1hneE9ubmQ0blU1T25YaDNuazVTSGtGalJCVkZZMEVlSGtGalJSVkVZMEVlQWY0MEx5cHNUalpOS1AwRVgxOEFBQVFBTS8vMEF4TURaQUFQQUNVQU1RQTJBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENFelV5TmpVak5UTVZGQVlHSnlNbk56TUJpbXVaVTFPWmEydVpVMU9aYXpoYlB5SWlQMXM0T1ZwQUlTRkFXdmhCUmpWNE1Gck9VVzRCYUF4T25uZDRuVTVPblhoM25rNVNIa0ZqUkJWRlkwRWVIa0ZqUlJWRVkwRWVBZjQwTHlwc1RqWk5LSnlCQXdBQUJBQXovL1FERXdOd0FBOEFKUUF4QUVvQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJVE5USTJOU00xTXhVVUJnWWxOVE15TmpVMEppTWpOVDRDTXpJZUFoVVVCZ1lIRlFHS2E1bFRVNWxyYTVsVFU1bHJPRnMvSWlJL1d6ZzVXa0FoSVVCYStFRkdOWGd3V3Y3bkRSWVBFUk0vQ3hzYkN4QWlIQkVTSUJNTVRwNTNlSjFPVHAxNGQ1NU9VaDVCWTBRVlJXTkJIaDVCWTBVVlJHTkJIZ0grTkM4cWJFNDJUU2ljUEFrS0RBZ2xBd01DQlEwV0VoSVlEZ0ljQUFBRUFEUC85QU1UQTJJQUR3QWxBREVBU1FBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeVBnSTFOVFF1QWlNaURnSVZGUlFlQWhNMU1qWTFJelV6RlJRR0JpVStBak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIQVlwcm1WTlRtV3RybVZOVG1XczRXejhpSWo5Yk9EbGFRQ0VoUUZyNFFVWTFlREJhL21JQkVpWWRHakF1Rmc4UUFqZ1RKaDRZTVMwV0VCQUNERTZlZDNpZFRrNmRlSGVlVGxJZVFXTkVGVVZqUVI0ZVFXTkZGVVJqUVI0Qi9qUXZLbXhPTmswb3V4c3RHeEVSRWhBYkxSc1NFUk1RQUFRQU0vLzBBdUVEWkFBUEFDVUFLZ0F2QUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDRXpjekZ3Y2pOek1YQndHS2E1bFRVNWxyYTVsVFU1bHJPRnMvSWlJL1d6ZzVXa0FoSVVCYVZqNWxBVlhuUDJNQlZneE9ubmQ0blU1T25YaDNuazVTSGtGalJCVkZZMEVlSGtGalJSVkVZMEVlQXBxRUE0R0VBNEVBQUFNQU0vLzBBdUVEWkFBUEFDVUFOd0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5UGdJMU5UUXVBaU1pRGdJVkZSUWVBZ00wTmpZek1oWVdGU011QWlNaUJnWUhBWXBybVZOVG1XdHJtVk5UbVdzNFd6OGlJajliT0RsYVFDRWhRRnBaRzBFM09EOFpQUUlQSXlBZ0pBOEJERTZlZDNpZFRrNmRlSGVlVGxJZVFXTkVGVVZqUVI0ZVFXTkZGVVJqUVI0Q3FSdzJJeU0ySEFzWkV4TVpDd0FEQURQLzlBTGhBMGtBRHdBbEFDa0FBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSUROU0VWQVlwcm1WTlRtV3RybVZOVG1XczRXejhpSWo5Yk9EbGFRQ0VoUUZwaEFURU1UcDUzZUoxT1RwMTRkNTVPVWg1QlkwUVZSV05CSGg1QlkwVVZSR05CSGdMQVEwTUFBd0F6LzFJQzRRSzZBQThBSlFBNUFBQkZJaVltTlRRMk5qTXlGaFlWRkFZR0p6SStBalUxTkM0Q0l5SU9BaFVWRkI0Q0Z5SW1KalUwTmpjekZRWUdGUlFXTXpNVkJnWUJpbXVaVTFPWmEydVpVMU9aYXpoYlB5SWlQMXM0T1ZwQUlTRkFXcThYTGgwZUZUb0tHUmdkSmc4bURFNmVkM2lkVGs2ZGVIZWVUbEllUVdORUZVVmpRUjRlUVdORkZVUmpRUjcwRUNZZ0lUQVRCZ29sR0JVZ0tnY0hBQUFEQURQL3p3TGhBdDhBRHdBbEFDa0FBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSUZBVE1CQVlwcm1WTlRtV3RybVZOVG1XczRXejhpSWo5Yk9EbGFRQ0VoUUZyKzZBSlBVUDJ5REU2ZWQzaWRUazZkZUhlZVRsSWVRV05FRlVWalFSNGVRV05GRlVSalFSNTNBeEQ4OEFBQUJBQXovODhDNFFOa0FBOEFKUUFwQUM0QUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJRkFUTUJFemN6RndjQmltdVpVMU9aYTJ1WlUxT1phemhiUHlJaVAxczRPVnBBSVNGQVd2N29BazlRL2JMVlZtZ0JiZ3hPbm5kNG5VNU9uWGgzbms1U0hrRmpSQlZGWTBFZUhrRmpSUlZFWTBFZWR3TVEvUEFERVlRRGdRQURBRFAvOUFMaEEySUFEd0FsQUQwQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJRFBnSXpNaFlXTXpJMk56TVVCZ1lqSWlZbUl5SUdCd0dLYTVsVFU1bHJhNWxUVTVsck9Gcy9JaUkvV3pnNVdrQWhJVUJhWndFU0poMGFNQzRXRHhBQ09CTW1IaGd3TGhZUUVBSU1UcDUzZUoxT1RwMTRkNTVPVWg1QlkwUVZSV05CSGg1QlkwVVZSR05CSGdLNUd5MGJFUkVTRUJzdEd4SVJFeEFBQUFRQU0vLzBBdUVENUFBUEFDVUFQUUJCQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQXo0Q016SVdGak15TmpjekZBWUdJeUltSmlNaUJnY25OU0VWQVlwcm1WTlRtV3RybVZOVG1XczRXejhpSWo5Yk9EbGFRQ0VoUUZwbkFSSW1IUm93TGhZUEVBSTRFeVllR0RBdUZoQVFBaklCTVF4T25uZDRuVTVPblhoM25rNVNIa0ZqUkJWRlkwRWVIa0ZqUlJWRVkwRWVBcmtiTFJzUkVSSVFHeTBiRWhFVEVLSkRRd0FBQWdBei8vUUVsUUs2QUJvQU1BQUFSU0ltSmpVME5qWXpNaFlYTlNFVklSVWhGU0VWSVJVaE5RWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENBWWxxbWxKU21tcFVleVlDRWY1T0FZYitlZ0c0L2VrbWUxUTVXa0FpSWtCYU9UaGFRQ0VoUUZvTVRwNTNlSjFPTkROYlV0UlM1RkpjTkRSU0hrQmpReFpGWkVFZUhrRmtSUlpEWTBBZUFBQUNBRllBQUFKOUFxNEFEQUFXQUFCekVTRXlGaFlWRkFZR0l5TVJFVE15TmpVMEppWWpJMVlCVTBkZUx6UmZRdlB0T0VNY05pbnRBcTQxWGo0L1lUYisrUUZaUmowcE9COEFBQUlBVlFBQUFuZ0NyZ0FPQUJnQUFITVJNeFV6TWhZV0ZSUUdCaU1qRlRVek1qWTFOQ1ltSXlOVlgrNUlYakEwWDBMdjZUaERIRFlwNlFLdWR6VmVQa0JnTnBEaVJqNG5PUjhBQWdBei8zNEM0UUs2QUJRQUtnQUFSU2NHQmlNaUppWTFORFkyTXpJV0ZoVVVCZ2NYSlRJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQWpsN0RSb05hNWxUVTVscmE1bFRaRnFUL3RRNFd6OGlJajliT0RsYVFDRWhRRnFDZVFJQlRwNTNlSjFPVHAxNGdxUWtqOGdlUVdORUZVVmpRUjRlUVdORkZVUmpRUjRBQWdCV0FBQUNxQUt1QUE0QUdBQUFjeEVoTWhZV0ZSUUdCeE1qQXlFUkVTRXlOalUwSmlZaklWWUJhVVpkTGtBNGtHaUcvdnNCQVRsQkhEWW8vdjhDcmpOYk8wZG1GdjdlQVJIKzd3RmlSajBtTkIwQUF3QldBQUFDcUFOa0FBNEFHQUFkQUFCekVTRXlGaFlWRkFZSEV5TURJUkVSSVRJMk5UUW1KaU1oTnpjekZ3ZFdBV2xHWFM1QU9KQm9odjc3QVFFNVFSdzJLUDcvalZab0FXOENyak5iTzBkbUZ2N2VBUkgrN3dGaVJqMG1OQjJFaEFPQkFBTUFWZ0FBQXFnRFpBQU9BQmdBSUFBQWN4RWhNaFlXRlJRR0J4TWpBeUVSRVNFeU5qVTBKaVlqSVJNekZ5TTNNd2NqVmdGcFJsMHVRRGlRYUliKyt3RUJPVUVjTmlqKy95QlZXQ3hZVldsYkFxNHpXenRIWmhiKzNnRVIvdThCWWtZOUpqUWRBUWh0YllRQUFBTUFWdjdjQXFnQ3JnQU9BQmdBSkFBQWN4RWhNaFlXRlJRR0J4TWpBeUVSRVNFeU5qVTBKaVlqSVJNMU1qWTFJelV6RlJRR0JsWUJhVVpkTGtBNGtHaUcvdnNCQVRsQkhEWW8vditBSEJvc1h4c3ZBcTR6V3p0SFpoYiszZ0VSL3U4QllrWTlKalFkL0lBb0poNWhUeTAzR2dBQUJBQldBQUFDcUFOa0FBNEFHQUFkQUNJQUFITVJJVElXRmhVVUJnY1RJd01oRVJFaE1qWTFOQ1ltSXlFM0p6Y3pGeU1uTnpNWFZnRnBSbDB1UURpUWFJYisrd0VCT1VFY05paisvK1ZWQVdNKzVsVUJaRDRDcmpOYk8wZG1GdjdlQVJIKzd3RmlSajBtTkIyRWdRT0VnUU9FQUFBREFGWUFBQUtvQTJRQURnQVlBQ29BQUhNUklUSVdGaFVVQmdjVEl3TWhFUkVoTWpZMU5DWW1JeUUzTkRZMk16SVdGaFVqTGdJaklnWUdCMVlCYVVaZExrQTRrR2lHL3ZzQkFUbEJIRFlvL3Y4bUcwQTRPRDhaUFFNUElpQWdKQThDQXE0eld6dEhaaGIrM2dFUi91OEJZa1k5SmpRZGt4dzJJeU0ySEFzWkV4TVpDd0FCQURULzlBSnJBcm9BUUFBQVJTSXVBalUwTmpVekZBWVZGQllXTXpJK0F6VTBMZ1kxTkQ0Q016SWVBaFVWSXpVMEppWWpJZ1lHRlJRZUJoVVVCZ1lCVWpoblVDOEJZQUV3VlRZWU5URW5GeWRBVVZaUlFDY2pSV1pDTmwxSEtGNHFTUzQ4VUNjblFGSlZVVUVtU0g0TUZqRk9PUVVLQlFNTkJTZzRHd1lQR1NVYklpMGRGeFlkSzBBdUswUXZHUmN2U0RNTUR5SXdHaGNyR3g4cUd4WVhIU3RCTDBsYktnQUNBRFQvOUFKckEyUUFRQUJGQUFCRklpNENOVFEyTlRNVUJoVVVGaFl6TWo0RE5UUXVCalUwUGdJek1oNENGUlVqTlRRbUppTWlCZ1lWRkI0R0ZSUUdCZ00zTXhjSEFWSTRaMUF2QVdBQk1GVTJHRFV4SnhjblFGRldVVUFuSTBWbVFqWmRSeWhlS2trdVBGQW5KMEJTVlZGQkpraCtmVmRuQVc0TUZqRk9PUVVLQlFNTkJTZzRHd1lQR1NVYklpMGRGeFlkSzBBdUswUXZHUmN2U0RNTUR5SXdHaGNyR3g4cUd4WVhIU3RCTDBsYktnTHNoQU9CQUFBQ0FEVC85QUpyQTJRQVFBQklBQUJGSWk0Q05UUTJOVE1VQmhVVUZoWXpNajRETlRRdUJqVTBQZ0l6TWg0Q0ZSVWpOVFFtSmlNaUJnWVZGQjRHRlJRR0JnTXpGeU0zTXdjakFWSTRaMUF2QVdBQk1GVTJHRFV4SnhjblFGRldVVUFuSTBWbVFqWmRSeWhlS2trdVBGQW5KMEJTVlZGQkpraCs2VlZZTEZkV2Fsc01GakZPT1FVS0JRTU5CU2c0R3dZUEdTVWJJaTBkRnhZZEswQXVLMFF2R1JjdlNETU1EeUl3R2hjckd4OHFHeFlYSFN0QkwwbGJLZ053YlcyRUFBQUNBRFQvVUFKckFyb0FRQUJZQUFCRklpNENOVFEyTlRNVUJoVVVGaFl6TWo0RE5UUXVCalUwUGdJek1oNENGUlVqTlRRbUppTWlCZ1lWRkI0R0ZSUUdCZ2NpSmljMU16STJOVFFtSXlNM013Y3lGaFlWRkE0Q0FWSTRaMUF2QVdBQk1GVTJHRFV4SnhjblFGRldVVUFuSTBWbVFqWmRSeWhlS2trdVBGQW5KMEJTVlZGQkpraCtUeGN3RldFVEZCQVhNeEE4QnhvcUdoVWlLUXdXTVU0NUJRb0ZBdzBGS0RnYkJnOFpKUnNpTFIwWEZoMHJRQzRyUkM4WkZ5OUlNd3dQSWpBYUZ5c2JIeW9iRmhjZEswRXZTVnNxcEFRRUp3NE9EQXhZTWd3YkZ4WWRFUWNBQUFJQU5QLzBBbXNEWkFCQUFFZ0FBRVVpTGdJMU5EWTFNeFFHRlJRV0ZqTXlQZ00xTkM0R05UUStBak15SGdJVkZTTTFOQ1ltSXlJR0JoVVVIZ1lWRkFZR0F6Y3pGeU1uTXdjQlVqaG5VQzhCWUFFd1ZUWVlOVEVuRnlkQVVWWlJRQ2NqUldaQ05sMUhLRjRxU1M0OFVDY25RRkpWVVVFbVNIN3BhVnRxVmxjc1dBd1dNVTQ1QlFvRkF3MEZLRGdiQmc4WkpSc2lMUjBYRmgwclFDNHJSQzhaRnk5SU13d1BJakFhRnlzYkh5b2JGaGNkSzBFdlNWc3FBdXlFaEcxdEFBSUFOUDdjQW1zQ3VnQkFBRXdBQUVVaUxnSTFORFkxTXhRR0ZSUVdGak15UGdNMU5DNEdOVFErQWpNeUhnSVZGU00xTkNZbUl5SUdCaFVVSGdZVkZBWUdBelV5TmpVak5UTVZGQVlHQVZJNFoxQXZBV0FCTUZVMkdEVXhKeGNuUUZGV1VVQW5JMFZtUWpaZFJ5aGVLa2t1UEZBbkowQlNWVkZCSmtoK2lCd2FMRjhiTHd3V01VNDVCUW9GQXcwRktEZ2JCZzhaSlJzaUxSMFhGaDByUUM0clJDOFpGeTlJTXd3UElqQWFGeXNiSHlvYkZoY2RLMEV2U1ZzcS91Z29KaDVoVHkwM0dnRC8vd0EwLzBnQ2F3SzZCaVlBbUFBQUFBY0M0Z0VuQUFBQUFRQlVBQUFDeXdLNkFDOEFBSE1STkRZMk16SWVBaFVVQmdZSEZSWVdGUlFHQmlNak5UTXlOalkxTkNZbUl5TTFNekkyTlRRbUl5SUdCaFVSVkUrTlhVTnBTU2NaS1JrNlF6RmJRTjNRSnpVY0lqNHN2TGt2UFZOZFNHWTJBYVZkZXowY00wY3NKRDR0Q2dRUFVUODFWVEpUSHpJY0lpOFpVejR6T0VJcldrWCtZZ0FBQWdBeC8vUUN4Z0s2QUIwQUp3QUFSU0l1QWpVMUlTNENJeUlPQWhVak5ENENNeklXRmhVVUJnWW5NalkyTnlFR0hnSUJmVkI3VlN3Q01nSTRhazBzVUQ4bVlESlpkVVJ5bFVwTGttcEZZamdFL2k4QklqOVlEQ1JRaFdFbVYyMHpFaWcrTFQ5YlBCNU9ubmwzblUxUEwyVlJRbGcwRndBQUFRQVRBQUFDU2dLdUFBY0FBSE1SSXpVaEZTTVIvdXNDTiswQ1cxTlQvYVVBQUFJQUV3QUFBa29DcmdBSEFBc0FBSE1SSXpVaEZTTVJBelVoRmY3ckFqZnR6UUUrQWx0VFUvMmxBU2RFUkFBQ0FCTUFBQUpLQTJRQUJ3QVBBQUJ6RVNNMUlSVWpFUU16RnlNM013Y2ovdXNDTiszRlZWZ3NWMVpxV3dKYlUxUDlwUU5rYlcyRUFBSUFFLzlRQWtvQ3JnQUhBQjhBQUhNUkl6VWhGU01SQnlJbUp6VXpNalkxTkNZakl6Y3pCeklXRmhVVURnTCs2d0kzN1RBV01CVmhFaFVSRmpNUU93Y2FLeG9WSWlvQ1cxTlQvYVd3QkFRbkRnNE1ERmd5REJzWEZoMFJCd0FDQUJQKzNBSktBcTRBQndBVEFBQnpFU00xSVJVakVRTTFNalkxSXpVekZSUUdCdjdyQWpmdGFCd2FMRjhiTHdKYlUxUDlwZjdjS0NZZVlVOHROeG9BQWdBVC8wZ0NTZ0t1QUFjQUN3QUFjeEVqTlNFVkl4RUhOVE1WL3VzQ04rMWVYd0piVTFQOXBiaGZYd0FCQUZULzlBS0hBcTRBRXdBQVJTSW1KalVSTXhFVUZqTXlOalVSTXhFVUJnWUJiRmQrUTE5aFdGbGtYa1IvRERoNVh3R3Eva3hhV2xwYUFiVCtWbDk1T0FBQ0FGVC85QUtIQTJRQUV3QVlBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmdNM014Y0hBV3hYZmtOZllWaFpaRjVFZjRGWFp3RnVERGg1WHdHcS9reGFXbHBhQWJUK1ZsOTVPQUxzaEFPQkFBQUNBRlQvOUFLSEEyUUFFd0FsQUFCRklpWW1OUkV6RVJRV016STJOUkV6RVJRR0JnTWlKaVkxTXg0Q016STJOamN6RkFZR0FXeFhma05mWVZoWlpGNUVmMWMzUUJrOUF3NGpJQ0FrRHdFK0cwQU1PSGxmQWFyK1RGcGFXbG9CdFA1V1gzazRBdnNrTmhzS0d4SVNHd29iTmlRQUFBSUFWUC8wQW9jRFpBQVRBQnNBQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0F6TVhJemN6QnlNQmJGZCtRMTloV0Zsa1hrUi83VlZZTEZkV2Fsc01PSGxmQWFyK1RGcGFXbG9CdFA1V1gzazRBM0J0YllRQUFBSUFWUC8wQW9jRFpBQVRBQnNBQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0F6Y3pGeU1uTXdjQmJGZCtRMTloV0Zsa1hrUi83V2xiYWxaWExGZ01PSGxmQWFyK1RGcGFXbG9CdFA1V1gzazRBdXlFaEcxdEFBTUFWUC8wQW9jRFpBQVRBQmdBSFFBQVJTSW1KalVSTXhFVUZqTXlOalVSTXhFVUJnWURKemN6RnlNbk56TVhBV3hYZmtOZllWaFpaRjVFZnloV0FXUSs1bFVCWkQ0TU9IbGZBYXIrVEZwYVdsb0J0UDVXWDNrNEF1eUJBNFNCQTRRQUF3QlUvL1FDaHdOaUFCTUFGd0FiQUFCRklpWW1OUkV6RVJRV016STJOUkV6RVJRR0JnTTFNeFV6TlRNVkFXeFhma05mWVZoWlpGNUVmK0paWlZrTU9IbGZBYXIrVEZwYVdsb0J0UDVXWDNrNEF4SmNYRnhjQUFRQVZQLzBBb2NFRWdBVEFCY0FHd0FnQUFCRklpWW1OUkV6RVJRV016STJOUkV6RVJRR0JnTTFNeFV6TlRNVkp6Y3pGd2NCYkZkK1ExOWhXRmxrWGtSLzRsbGxXYlpYWndGdUREaDVYd0dxL2t4YVdscGFBYlQrVmw5NU9BTVNYRnhjWElpRUE0RUFCQUJVLy9RQ2h3UVNBQk1BRndBYkFDTUFBRVVpSmlZMUVUTVJGQll6TWpZMUVUTVJGQVlHQXpVekZUTTFNeFVCTXhjak56TUhJd0ZzVjM1RFgyRllXV1JlUkgvaVdXVlovdDVWV0N4WFZtcGJERGg1WHdHcS9reGFXbHBhQWJUK1ZsOTVPQU1TWEZ4Y1hBRU1iVzJFQUFRQVZQLzBBb2NFRWdBVEFCY0FHd0FnQUFCRklpWW1OUkV6RVJRV016STJOUkV6RVJRR0JnTTFNeFV6TlRNVkp5TW5Oek1CYkZkK1ExOWhXRmxrWGtSLzRsbGxXVnBSYndGb0REaDVYd0dxL2t4YVdscGFBYlQrVmw5NU9BTVNYRnhjWElpQkF3QUFCQUJVLy9RQ2h3UDNBQk1BRndBYkFCOEFBRVVpSmlZMUVUTVJGQll6TWpZMUVUTVJGQVlHQXpVekZUTTFNeFVsTlNFVkFXeFhma05mWVZoWlpGNUVmK0paWlZuKzNBRXhERGg1WHdHcS9reGFXbHBhQWJUK1ZsOTVPQU1TWEZ4Y1hLNURRd0FBQWdCVS8wZ0Nod0t1QUJNQUZ3QUFSU0ltSmpVUk14RVVGak15TmpVUk14RVVCZ1lITlRNVkFXeFhma05mWVZoWlpGNUVmNGRmRERoNVh3R3Eva3hhV2xwYUFiVCtWbDk1T0t4Zlh3QUFBZ0JVLy9RQ2h3TmtBQk1BR0FBQVJTSW1KalVSTXhFVUZqTXlOalVSTXhFVUJnWURJeWMzTXdGc1YzNURYMkZZV1dSZVJIOGxVVzhCYUF3NGVWOEJxdjVNV2xwYVdnRzAvbFpmZVRnQzdJRURBQUlBVlAvMEFvY0RjQUFUQUN3QUFFVWlKaVkxRVRNUkZCWXpNalkxRVRNUkZBWUdBelV6TWpZMU5DWWpJelUrQWpNeUhnSVZGQVlHQnhVQmJGZCtRMTloV0Zsa1hrUi9jQTBWRUJJU1FBc2NHd29SSVJ3UkVoOFVERGg1WHdHcS9reGFXbHBhQWJUK1ZsOTVPQUxzUEFrS0RBZ2xBd01DQlEwV0VoSVlEZ0ljQUFBQ0FGVC85QU1OQTNNQUV3QWZBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmhNMU1qWTFJelV6RlJRR0JnRnNWMzVEWDJGWVdXUmVSSDkvUVVZMWVEQmFERGg1WHdHcS9reGFXbHBhQWJUK1ZsOTVPQUtHTkM4cWJFNDJUU2dBQUFNQVZQLzBBdzBEY3dBVEFCOEFKQUFBUlNJbUpqVVJNeEVVRmpNeU5qVVJNeEVVQmdZVE5USTJOU00xTXhVVUJnWWxOek1YQndGc1YzNURYMkZZV1dSZVJIOS9RVVkxZURCYS9zQlhad0Z1RERoNVh3R3Eva3hhV2xwYUFiVCtWbDk1T0FLR05DOHFiRTQyVFNobWhBT0JBQU1BVlA5SUF3MERjd0FUQUI4QUl3QUFSU0ltSmpVUk14RVVGak15TmpVUk14RVVCZ1lUTlRJMk5TTTFNeFVVQmdZQk5UTVZBV3hYZmtOZllWaFpaRjVFZjM5QlJqVjRNRnIrdWw4TU9IbGZBYXIrVEZwYVdsb0J0UDVXWDNrNEFvWTBMeXBzVGpaTktQek9YMThBQXdCVS8vUUREUU56QUJNQUh3QWtBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmhNMU1qWTFJelV6RlJRR0JpY2pKemN6QVd4WGZrTmZZVmhaWkY1RWYzOUJSalY0TUZya1VXOEJhQXc0ZVY4QnF2NU1XbHBhV2dHMC9sWmZlVGdDaGpRdktteE9OazBvWm9FREFBTUFWUC8wQXcwRGN3QVRBQjhBT0FBQVJTSW1KalVSTXhFVUZqTXlOalVSTXhFVUJnWVROVEkyTlNNMU14VVVCZ1lsTlRNeU5qVTBKaU1qTlQ0Q016SWVBaFVVQmdZSEZRRnNWMzVEWDJGWVdXUmVSSDkvUVVZMWVEQmEvdEVORlJBU0VrQUxIQnNLRVNFY0VSSWZGQXc0ZVY4QnF2NU1XbHBhV2dHMC9sWmZlVGdDaGpRdktteE9OazBvWmp3SkNnd0lKUU1EQWdVTkZoSVNHQTRDSEFBREFGVC85QU1OQTNNQUV3QWZBRGNBQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0V6VXlOalVqTlRNVkZBWUdKVDRDTXpJV0ZqTXlOamN6RGdJaklpWW1JeUlHQndGc1YzNURYMkZZV1dSZVJIOS9RVVkxZURCYS9rc0JFaVllR2k4dUZoQVBBamtCRXlVZUdUQXRGaEFRQWd3NGVWOEJxdjVNV2xwYVdnRzAvbFpmZVRnQ2hqUXZLbXhPTmswb2hSc3RHeEVSRWhBYkxSc1NFUk1RQUFBREFGVC85QUtIQTJRQUV3QVlBQjBBQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0F6Y3pGd2NqTnpNWEJ3RnNWMzVEWDJGWVdXUmVSSDg0UG1RQlZlWStZd0ZWRERoNVh3R3Eva3hhV2xwYUFiVCtWbDk1T0FMc2hBT0JoQU9CQUFJQVZQLzBBb2NEWkFBVEFDVUFBRVVpSmlZMUVUTVJGQll6TWpZMUVUTVJGQVlHQXpRMk5qTXlGaFlWSXk0Q0l5SUdCZ2NCYkZkK1ExOWhXRmxrWGtSLzV4dEFPRGcrR2o0Q0R5SWdJQ1VQQVF3NGVWOEJxdjVNV2xwYVdnRzAvbFpmZVRnQyt4dzJJeU0ySEFzWkV4TVpDd0FBQWdCVS8vUUNod05KQUJNQUZ3QUFSU0ltSmpVUk14RVVGak15TmpVUk14RVVCZ1lETlNFVkFXeFhma05mWVZoWlpGNUVmKzhCTVF3NGVWOEJxdjVNV2xwYVdnRzAvbFpmZVRnREVrTkRBQUFDQUZUL1VnS0hBcTRBRXdBbkFBQkZJaVltTlJFekVSUVdNekkyTlJFekVSUUdCaGNpSmlZMU5EWTNNeFVHQmhVVUZqTXpGUVlHQVd4WGZrTmZZVmhaWkY1RWZ4b1lMUjBlRlRvTEdSZ2VKZzhtRERoNVh3R3Eva3hhV2xwYUFiVCtWbDk1T0tJUUppQWhNQk1HQ2lVWUZTQXFCd2NBQXdCVS8vUUNod09WQUJNQUh3QXJBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmdNaUpqVTBOak15RmhVVUJpY3lOalUwSmlNaUJoVVVGZ0ZzVjM1RFgyRllXV1JlUkg5V0xEYzRLeXMzTnlzVkd4c1ZGUndjRERoNVh3R3Eva3hhV2xwYUFiVCtWbDk1T0FMbU5TZ3BOVFVwS0RVdUdoVVZHaG9WRlJvQUFBSUFWUC8wQW9jRFlnQVRBQ3NBQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0F6NENNeklXRmpNeU5qY3pEZ0lqSWlZbUl5SUdCd0ZzVjM1RFgyRllXV1JlUkgvMkFSSW1IaG92TGhZUUR3STVBUk1sSGhrd0xSWVFFQUlNT0hsZkFhcitURnBhV2xvQnRQNVdYM2s0QXdzYkxSc1JFUklRR3kwYkVoRVRFQUFCQUFvQUFBSitBcTRBRHdBQVlRRXpFeDRDRnpNK0FqY1RNd0VCQ3Y4QVo3QUdEQXdGQmdRTURBYXVaUDcvQXE3K0dnNGtJZzBNSWlNUUFlYjlVZ0FBQVFBTUFBQURqd0t1QUNrQUFITURNeE1lQWhjelBnTTNFek1USGdJWE16NEROeE16QXlNRExnSW5JdzRDQndQTHYyWjZBd2tLQXdjREJRY0dBWEo3Y2dNSkNRTUhBd1lJQndKN1dyOXlkd01JQ0FNR0FnZ0pBM1FDcnY0eEN5a3NFUTBnSUJ3SUFjLytNUXNwTEJFTkh5QWNDUUhQL1ZJQjBnOHBMQkFSTENvTi9pNEFBZ0FNQUFBRGp3TmtBQ2tBTGdBQWN3TXpFeDRDRnpNK0F6Y1RNeE1lQWhjelBnTTNFek1ESXdNdUFpY2pEZ0lIQXhNM014Y0h5NzltZWdNSkNnTUhBd1VIQmdGeWUzSURDUWtEQndNR0NBY0NlMXEvY25jRENBZ0RCZ0lJQ1FOMFpGWm9BVzhDcnY0eEN5a3NFUTBnSUJ3SUFjLytNUXNwTEJFTkh5QWNDUUhQL1ZJQjBnOHBMQkFSTENvTi9pNEM0SVFEZ1FBQUFnQU1BQUFEandOa0FDa0FNUUFBY3dNekV4NENGek0rQXpjVE14TWVBaGN6UGdNM0V6TURJd011QWljakRnSUhBd00zTXhjakp6TUh5NzltZWdNSkNnTUhBd1VIQmdGeWUzSURDUWtEQndNR0NBY0NlMXEvY25jRENBZ0RCZ0lJQ1FOMENXbGJhbFZZTEZnQ3J2NHhDeWtzRVEwZ0lCd0lBYy8rTVFzcExCRU5IeUFjQ1FIUC9WSUIwZzhwTEJBUkxDb04vaTRDNElTRWJXMEFBd0FNQUFBRGp3TmlBQ2tBTFFBeEFBQnpBek1USGdJWE16NEROeE16RXg0Q0Z6TStBemNUTXdNakF5NENKeU1PQWdjREV6VXpGVE0xTXhYTHYyWjZBd2tLQXdjREJRY0dBWEo3Y2dNSkNRTUhBd1lJQndKN1dyOXlkd01JQ0FNR0FnZ0pBM1FDV1daWUFxNytNUXNwTEJFTklDQWNDQUhQL2pFTEtTd1JEUjhnSEFrQnovMVNBZElQS1N3UUVTd3FEZjR1QXdaY1hGeGNBQUlBREFBQUE0OERaQUFwQUM0QUFITURNeE1lQWhjelBnTTNFek1USGdJWE16NEROeE16QXlNRExnSW5JdzRDQndNVEl5YzNNOHUvWm5vRENRb0RCd01GQndZQmNudHlBd2tKQXdjREJnZ0hBbnRhdjNKM0F3Z0lBd1lDQ0FrRGRMOVJiZ0ZuQXE3K01Rc3BMQkVOSUNBY0NBSFAvakVMS1N3UkRSOGdIQWtCei8xU0FkSVBLU3dRRVN3cURmNHVBdUNCQXdBQkFBc0FBQUtkQXE0QURRQUFjd0VETXhjek56TURBU01ESXdNTEFRenpkYnNGdVcvd0FReDExQVhUQVdnQlJ2Ly8vcnYrbHdFaC90OEFBUUFLQUFBQ2hRS3VBQWtBQUdFUkFUTVRNeE16QVJFQkdQN3liZEVGMEdqKzh3RWRBWkgrd3dFOS9tLys0d0FBQWdBS0FBQUNoUU5rQUFrQURnQUFZUkVCTXhNekV6TUJFUU0zTXhjSEFSais4bTNSQmRCby92TlpWMmNCYmdFZEFaSCt3d0U5L20vKzR3TGdoQU9CQUFJQUNnQUFBb1VEWkFBSkFCRUFBR0VSQVRNVE14TXpBUkVETnpNWEl5Y3pCd0VZL3ZKdDBRWFFhUDd6eFdsYmFsWlhMRmdCSFFHUi9zTUJQZjV2L3VNQzRJU0ViVzBBQUFNQUNnQUFBb1VEWWdBSkFBMEFFUUFBWVJFQk14TXpFek1CRVFNMU14VXpOVE1WQVJqKzhtM1JCZEJvL3ZPNldXVlpBUjBCa2Y3REFUMytiLzdqQXdaY1hGeGNBQUFDQUFyL1NBS0ZBcTRBQ1FBTkFBQmhFUUV6RXpNVE13RVJCelV6RlFFWS92SnQwUVhRYVA3ellGOEJIUUdSL3NNQlBmNXYvdU80WDE4QUFnQUtBQUFDaFFOa0FBa0FEZ0FBWVJFQk14TXpFek1CRVJNakp6Y3pBUmorOG0zUkJkQm8vdk1EVVc0Qlp3RWRBWkgrd3dFOS9tLys0d0xnZ1FNQUFBSUFDZ0FBQW9VRGNBQUpBQ0lBQUdFUkFUTVRNeE16QVJFRE5UTXlOalUwSmlNak5UNENNekllQWhVVUJnWUhGUUVZL3ZKdDBRWFFhUDd6U0EwVkVCSVNRQXNjR3dvUklSd1NFeDhVQVIwQmtmN0RBVDMrYi83akF1QThDUW9NQ0NVREF3SUZEUllTRWhnT0Fod0FBZ0FLQUFBQ2hRTkpBQWtBRFFBQVlSRUJNeE16RXpNQkVRTTFJUlVCR1A3eWJkRUYwR2orODhjQk1RRWRBWkgrd3dFOS9tLys0d01HUTBNQUFnQUtBQUFDaFFOaUFBa0FJUUFBWVJFQk14TXpFek1CRVFNK0FqTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUhBUmorOG0zUkJkQm8vdlBOQVJJbEhob3dMUllRRHdJNUV5WWVHVEF0RmhBUUFnRWRBWkgrd3dFOS9tLys0d0wvR3kwYkVSRVNFQnN0R3hJUkV4QUFBQUVBSUFBQUFsWUNyZ0FKQUFCek5RRWhOU0VWQVNFVklBR2cvbm9DRS81ZkFhb3hBaXRTTWYzVlVnQUFBZ0FnQUFBQ1ZnTmtBQWtBRGdBQWN6VUJJVFVoRlFFaEZRRTNNeGNISUFHZy9ub0NFLzVmQWFyK3ZWZG5BVzR4QWl0U01mM1ZVZ0xnaEFPQkFBQUNBQ0FBQUFKV0EyUUFDUUFSQUFCek5RRWhOU0VWQVNFVkFUTVhJemN6QnlNZ0FhRCtlZ0lUL2w4QnF2NVFWbGNzV0ZWcFd6RUNLMUl4L2RWU0EyUnRiWVFBQUFJQUlBQUFBbFlEWndBSkFBMEFBSE0xQVNFMUlSVUJJUlVCTlRNVklBR2cvbm9DRS81ZkFhcit1Rjh4QWl0U01mM1ZVZ01HWVdFQUFRQlIvL1FDVFFLdUFDZ0FBRVVpSmlZMU5UTVVGaFl6TWpZMk5UVWpCZ1lqSWlZbU5SRXpFUlFXTXpJMk5qVTFNeEVVRGdJQlJFWnVQMThvUkNzMlN5WUdIR0JBUkdNMFgwZEVOMUFzWHlKRFl3d2tUVHdISkNzVElFczlPREV2TDJST0FRZis5RVZGTEZsQ3ovNVBSMlJBSGdBQ0FGSC85QUpOQTJRQUtBQXRBQUJGSWlZbU5UVXpGQllXTXpJMk5qVTFJd1lHSXlJbUpqVVJNeEVVRmpNeU5qWTFOVE1SRkE0Q0F6Y3pGd2NCUkVadVAxOG9SQ3MyU3lZR0hHQkFSR00wWDBkRU4xQXNYeUpEWTJGV2FBRnVEQ1JOUEFja0t4TWdTejA0TVM4dlpFNEJCLzcwUlVVc1dVTFAvazlIWkVBZUF1eUVBNEVBQUFJQVVmLzBBazBEWkFBb0FEQUFBRVVpSmlZMU5UTVVGaFl6TWpZMk5UVWpCZ1lqSWlZbU5SRXpFUlFXTXpJMk5qVTFNeEVVRGdJRE56TVhJeWN6QndGRVJtNC9YeWhFS3paTEpnWWNZRUJFWXpSZlIwUTNVQ3hmSWtOanptcGJhVlZZTEZnTUpFMDhCeVFyRXlCTFBUZ3hMeTlrVGdFSC92UkZSU3haUXMvK1QwZGtRQjRDN0lTRWJXMEFBd0JSLy9RQ1RRTmlBQ2dBTEFBd0FBQkZJaVltTlRVekZCWVdNekkyTmpVMUl3WUdJeUltSmpVUk14RVVGak15TmpZMU5UTVJGQTRDQXpVekZUTTFNeFVCUkVadVAxOG9SQ3MyU3lZR0hHQkFSR00wWDBkRU4xQXNYeUpEWThOWlpsa01KRTA4QnlRckV5QkxQVGd4THk5a1RnRUgvdlJGUlN4WlFzLytUMGRrUUI0REVseGNYRndBQWdCUi8vUUNUUU5rQUNnQUxRQUFSU0ltSmpVMU14UVdGak15TmpZMU5TTUdCaU1pSmlZMUVUTVJGQll6TWpZMk5UVXpFUlFPQWdNakp6Y3pBVVJHYmo5ZktFUXJOa3NtQmh4Z1FFUmpORjlIUkRkUUxGOGlRMk1HVVc0Qlp3d2tUVHdISkNzVElFczlPREV2TDJST0FRZis5RVZGTEZsQ3ovNVBSMlJBSGdMc2dRTUFBZ0JSLy9RQ1RRTkpBQ2dBTEFBQVJTSW1KalUxTXhRV0ZqTXlOalkxTlNNR0JpTWlKaVkxRVRNUkZCWXpNalkyTlRVekVSUU9BZ00xSVJVQlJFWnVQMThvUkNzMlN5WUdIR0JBUkdNMFgwZEVOMUFzWHlKRFk5QUJNUXdrVFR3SEpDc1RJRXM5T0RFdkwyUk9BUWYrOUVWRkxGbEN6LzVQUjJSQUhnTVNRME1BQUFJQVVmLzBBazBEWWdBb0FFQUFBRVVpSmlZMU5UTVVGaFl6TWpZMk5UVWpCZ1lqSWlZbU5SRXpFUlFXTXpJMk5qVTFNeEVVRGdJRFBnSXpNaFlXTXpJMk56TVVCZ1lqSWlZbUl5SUdCd0ZFUm00L1h5aEVLelpMSmdZY1lFQkVZelJmUjBRM1VDeGZJa05qMWdFU0poMGFNQzRXRHhBQ09CTW1IaGd4TFJZUUVBSU1KRTA4QnlRckV5QkxQVGd4THk5a1RnRUgvdlJGUlN4WlFzLytUMGRrUUI0REN4c3RHeEVSRWhBYkxSc1NFUk1RQUFJQU0vLzBBcWtEWkFBaEFDWUFBRVVpSmlZMU5EWXpNaFlXRlNNMEppWWpJZ1lHRlJVVUZoWXpNalkyTlRNVUJnWUROek1YQndGN2FaSk5ycHRZaUUxZ00xdytTR2cyTm1kSlFGMHpYVStJZUJsZ0FpNE1UWjE1czdBNWMxYzhUaWM0ZFZ3VlczTTJKazg4V1hJNEF1eUVCbjRBQWdCV0FBQUNpZ05rQUJnQUhRQUFjeEV6QVI0Q0Z6TTBORFVSTXhFakFTWW1KeU1VRkJVUkV6Y3pGd2RXWEFGTkJSQVFCUVJkVi82dkJ4c0pCWjBhWHdJdUFxNytQQVlZRndrUUh3OEJ4UDFTQWN3TEtBd1FIeEQrTkFMZ2hBWitBQUFEQURQLzlBTGhBMlFBRHdBbEFDb0FBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSVROek1YQndHS2E1bFRVNWxyYTVsVFU1bHJPRnMvSWlJL1d6ZzVXa0FoSVVCYUZScGdBaThNVHA1M2VKMU9UcDE0ZDU1T1VoNUJZMFFWUldOQkhoNUJZMFVWUkdOQkhnS2FoQVorQUFJQU5QLzBBbXNEWkFCQUFFVUFBRVVpTGdJMU5EWTFNeFFHRlJRV0ZqTXlQZ00xTkM0R05UUStBak15SGdJVkZTTTFOQ1ltSXlJR0JoVVVIZ1lWRkFZR0F6Y3pGd2NCVWpoblVDOEJZQUV3VlRZWU5URW5GeWRBVVZaUlFDY2pSV1pDTmwxSEtGNHFTUzQ4VUNjblFGSlZVVUVtU0g1MkdtQUNMZ3dXTVU0NUJRb0ZBdzBGS0RnYkJnOFpKUnNpTFIwWEZoMHJRQzRyUkM4WkZ5OUlNd3dQSWpBYUZ5c2JIeW9iRmhjZEswRXZTVnNxQXV5RUJuNEFBQUlBSUFBQUFsWURaQUFKQUE0QUFITTFBU0UxSVJVQklSVUJOek1YQnlBQm9QNTZBaFArWHdHcS9zUWFZQUl2TVFJclVqSDkxVklDNElRR2ZnQUFBZ0FpLy9RQ0hBSWFBREVBUHdBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUkVVRmpNekZRWUdJeUltSmljakRnSW5NajRDTlRVaUJnWVZGQllXeVIwNk1oNDBYWUJMRkRNdkxUVVZWUUUxWUQ1Q1dTMFNEU2NPSWhZYUloSURCeEkzUkJJZ09Td2FVWEk5R0N3TURpQTVLelpHSnc4OEhTb1hGeVFXRHdVS0J6QkJJU1pHTWY3akV3ODZCZ2tWSlJjWkpSUktGQ1UwSHl3U0xpb2JJaEVBQXdBaS8vUUNIQUxUQURFQVB3QkVBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkVSUVdNek1WQmdZaklpWW1KeU1PQWljeVBnSTFOU0lHQmhVVUZoWVROek1YQjhrZE9qSWVORjJBU3hRekx5MDFGVlVCTldBK1Fsa3RFZzBuRGlJV0dpSVNBd2NTTjBRU0lEa3NHbEZ5UFJnc0ZGZGpBVzRNRGlBNUt6WkdKdzg4SFNvWEZ5UVdEd1VLQnpCQklTWkdNZjdqRXc4NkJna1ZKUmNaSlJSS0ZDVTBIeXdTTGlvYkloRUNFWVFEZ1FBQUF3QWkvL1FDSEFMVEFERUFQd0JSQUFCWElpNENOVFErQWpNMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUZoWVZFUlFXTXpNVkJnWWpJaVltSnlNT0FpY3lQZ0kxTlNJR0JoVVVGaFlUSWlZbU5UTWVBak15TmpZM014UUdCc2tkT2pJZU5GMkFTeFF6THkwMUZWVUJOV0ErUWxrdEVnMG5EaUlXR2lJU0F3Y1NOMFFTSURrc0dsRnlQUmdzUnpnL0dUMEREeUlnSUNRUEFUNGJRQXdPSURrck5rWW5EendkS2hjWEpCWVBCUW9ITUVFaEprWXgvdU1URHpvR0NSVWxGeGtsRkVvVUpUUWZMQkl1S2hzaUVRSWdKRFliQ2hzU0Voc0tHellrQUFBRUFDTC85QUljQTRzQU1RQS9BRkVBVmdBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUkVVRmpNekZRWUdJeUltSmljakRnSW5NajRDTlRVaUJnWVZGQllXRXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1luTnpNWEI4a2RPakllTkYyQVN4UXpMeTAxRlZVQk5XQStRbGt0RWcwbkRpSVdHaUlTQXdjU04wUVNJRGtzR2xGeVBSZ3NSemcvR1QwRER5SWdJQ1FQQVQ0YlFHdFhZd0Z1REE0Z09TczJSaWNQUEIwcUZ4Y2tGZzhGQ2djd1FTRW1SakgrNHhNUE9nWUpGU1VYR1NVVVNoUWxOQjhzRWk0cUd5SVJBaUFrTmhzS0d4SVNHd29iTmlTcGhBT0JBQUFFQUNML1NBSWNBdE1BTVFBL0FFTUFWUUFBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSRVVGak16RlFZR0l5SW1KaWNqRGdJbk1qNENOVFVpQmdZVkZCWVdGelV6RlFNaUppWTFNeDRDTXpJMk5qY3pGQVlHeVIwNk1oNDBYWUJMRkRNdkxUVVZWUUUxWUQ1Q1dTMFNEU2NPSWhZYUloSURCeEkzUkJJZ09Td2FVWEk5R0N3VVh5dzRQeGs5QXc4aUlDQWtEd0UrRzBBTURpQTVLelpHSnc4OEhTb1hGeVFXRHdVS0J6QkJJU1pHTWY3akV3ODZCZ2tWSlJjWkpSUktGQ1UwSHl3U0xpb2JJaEgyWDE4REZpUTJHd29iRWhJYkNoczJKQUFFQUNMLzlBSWNBNHNBTVFBL0FGRUFWZ0FBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSRVVGak16RlFZR0l5SW1KaWNqRGdJbk1qNENOVFVpQmdZVkZCWVdFeUltSmpVekhnSXpNalkyTnpNVUJnWTFJeWMzTThrZE9qSWVORjJBU3hRekx5MDFGVlVCTldBK1Fsa3RFZzBuRGlJV0dpSVNBd2NTTjBRU0lEa3NHbEZ5UFJnc1J6Zy9HVDBERHlJZ0lDUVBBVDRiUUUxdUFXTU1EaUE1S3paR0p3ODhIU29YRnlRV0R3VUtCekJCSVNaR01mN2pFdzg2QmdrVkpSY1pKUlJLRkNVMEh5d1NMaW9iSWhFQ0lDUTJHd29iRWhJYkNoczJKS21CQXdBQUJBQWkvL1FDSEFPWEFERUFQd0JSQUdvQUFGY2lMZ0kxTkQ0Q016VTBKaVlqSWdZR0ZSVWpKalExTkRZMk16SVdGaFVSRkJZek14VUdCaU1pSmlZbkl3NENKekkrQWpVMUlnWUdGUlFXRmhNaUppWTFNeDRDTXpJMk5qY3pGQVlHSnpVek1qWTFOQ1lqSXpVK0FqTXlIZ0lWRkFZR0J4WEpIVG95SGpSZGdFc1VNeTh0TlJWVkFUVmdQa0paTFJJTkp3NGlGaG9pRWdNSEVqZEVFaUE1TEJwUmNqMFlMRWM0UHhrOUF3OGlJQ0FrRHdFK0cwQk9EUlVRRWhKQUN4c2JDeEVoSEJFU0h4UU1EaUE1S3paR0p3ODhIU29YRnlRV0R3VUtCekJCSVNaR01mN2pFdzg2QmdrVkpSY1pKUlJLRkNVMEh5d1NMaW9iSWhFQ0lDUTJHd29iRWhJYkNoczJKS2s4Q1FvTUNDVURBd0lGRFJZU0VoZ09BaHdBQUFRQUl2LzBBaHdEaUFBeEFEOEFVUUJwQUFCWElpNENOVFErQWpNMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUZoWVZFUlFXTXpNVkJnWWpJaVltSnlNT0FpY3lQZ0kxTlNJR0JoVVVGaFlUSWlZbU5UTWVBak15TmpZM014UUdCaWMrQWpNeUZoWXpNalkzTXc0Q0l5SW1KaU1pQmdmSkhUb3lIalJkZ0VzVU15OHROUlZWQVRWZ1BrSlpMUklOSnc0aUZob2lFZ01IRWpkRUVpQTVMQnBSY2owWUxFYzRQeGs5QXc4aUlDQWtEd0UrRzBEV0FSSW1IaG92TGhZUUR3STVBUk1sSGhrd0xSY1BFQUlNRGlBNUt6WkdKdzg4SFNvWEZ5UVdEd1VLQnpCQklTWkdNZjdqRXc4NkJna1ZKUmNaSlJSS0ZDVTBIeXdTTGlvYkloRUNJQ1EyR3dvYkVoSWJDaHMySk1nYkxSb1FFaElRR3l3YkVSRVNFQUFEQUNMLzlBSWNBdE1BTVFBL0FFY0FBRmNpTGdJMU5ENENNelUwSmlZaklnWUdGUlVqSmpRMU5EWTJNeklXRmhVUkZCWXpNeFVHQmlNaUppWW5JdzRDSnpJK0FqVTFJZ1lHRlJRV0ZnTXpGeU0zTXdjanlSMDZNaDQwWFlCTEZETXZMVFVWVlFFMVlENUNXUzBTRFNjT0loWWFJaElEQnhJM1JCSWdPU3dhVVhJOUdDeExVVmdzV0ZGcFZBd09JRGtyTmtZbkR6d2RLaGNYSkJZUEJRb0hNRUVoSmtZeC91TVREem9HQ1JVbEZ4a2xGRW9VSlRRZkxCSXVLaHNpRVFLVmJXMkVBQUFEQUNMLzlBSWNBdE1BTVFBL0FFY0FBRmNpTGdJMU5ENENNelUwSmlZaklnWUdGUlVqSmpRMU5EWTJNeklXRmhVUkZCWXpNeFVHQmlNaUppWW5JdzRDSnpJK0FqVTFJZ1lHRlJRV0ZnTTNNeGNqSnpNSHlSMDZNaDQwWFlCTEZETXZMVFVWVlFFMVlENUNXUzBTRFNjT0loWWFJaElEQnhJM1JCSWdPU3dhVVhJOUdDeExhbE5xVWxjc1dBd09JRGtyTmtZbkR6d2RLaGNYSkJZUEJRb0hNRUVoSmtZeC91TVREem9HQ1JVbEZ4a2xGRW9VSlRRZkxCSXVLaHNpRVFJUmhJUnRiUUFFQUNMLzlBSWNBNHNBTVFBL0FFY0FUQUFBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSRVVGak16RlFZR0l5SW1KaWNqRGdJbk1qNENOVFVpQmdZVkZCWVdBemN6RnlNbk13YzNOek1YQjhrZE9qSWVORjJBU3hRekx5MDFGVlVCTldBK1Fsa3RFZzBuRGlJV0dpSVNBd2NTTjBRU0lEa3NHbEZ5UFJnc1MycFRhbEpYTEZnTlYyTUJiZ3dPSURrck5rWW5EendkS2hjWEpCWVBCUW9ITUVFaEprWXgvdU1URHpvR0NSVWxGeGtsRkVvVUpUUWZMQkl1S2hzaUVRSVJoSVJ0YmJpRUE0RUFCQUFpLzBnQ0hBTFRBREVBUHdCREFFc0FBRmNpTGdJMU5ENENNelUwSmlZaklnWUdGUlVqSmpRMU5EWTJNeklXRmhVUkZCWXpNeFVHQmlNaUppWW5JdzRDSnpJK0FqVTFJZ1lHRlJRV0ZoYzFNeFVETnpNWEl5Y3pCOGtkT2pJZU5GMkFTeFF6THkwMUZWVUJOV0ErUWxrdEVnMG5EaUlXR2lJU0F3Y1NOMFFTSURrc0dsRnlQUmdzRkYrK2FsTnFVbGNzV0F3T0lEa3JOa1luRHp3ZEtoY1hKQllQQlFvSE1FRWhKa1l4L3VNVER6b0dDUlVsRnhrbEZFb1VKVFFmTEJJdUtoc2lFZlpmWHdNSGhJUnRiUUFBQkFBaS8vUUNIQU9MQURFQVB3QkhBRXdBQUZjaUxnSTFORDRDTXpVMEppWWpJZ1lHRlJVakpqUTFORFkyTXpJV0ZoVVJGQll6TXhVR0JpTWlKaVluSXc0Q0p6SStBalUxSWdZR0ZSUVdGZ00zTXhjakp6TUhOeU1uTnpQSkhUb3lIalJkZ0VzVU15OHROUlZWQVRWZ1BrSlpMUklOSnc0aUZob2lFZ01IRWpkRUVpQTVMQnBSY2owWUxFdHFVMnBTVnl4WWVFMXVBV01NRGlBNUt6WkdKdzg4SFNvWEZ5UVdEd1VLQnpCQklTWkdNZjdqRXc4NkJna1ZKUmNaSlJSS0ZDVTBIeXdTTGlvYkloRUNFWVNFYlcyNGdRTUFBQVFBSXYvMEFod0Rsd0F4QUQ4QVJ3QmdBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkVSUVdNek1WQmdZaklpWW1KeU1PQWljeVBnSTFOU0lHQmhVVUZoWUROek1YSXljekJ6YzFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWeVIwNk1oNDBYWUJMRkRNdkxUVVZWUUUxWUQ1Q1dTMFNEU2NPSWhZYUloSURCeEkzUkJJZ09Td2FVWEk5R0N4TGFsTnFVbGNzV0NvTkZSQVNFa0FMR3hzTEVTRWNFUklmRkF3T0lEa3JOa1luRHp3ZEtoY1hKQllQQlFvSE1FRWhKa1l4L3VNVER6b0dDUlVsRnhrbEZFb1VKVFFmTEJJdUtoc2lFUUlSaElSdGJiZzhDUW9NQ0NVREF3SUZEUllTRWhnT0Fod0FCQUFpLy9RQ0hBT0lBREVBUHdCSEFGOEFBRmNpTGdJMU5ENENNelUwSmlZaklnWUdGUlVqSmpRMU5EWTJNeklXRmhVUkZCWXpNeFVHQmlNaUppWW5JdzRDSnpJK0FqVTFJZ1lHRlJRV0ZnTTNNeGNqSnpNSEp6NENNeklXRmpNeU5qY3pEZ0lqSWlZbUl5SUdCOGtkT2pJZU5GMkFTeFF6THkwMUZWVUJOV0ErUWxrdEVnMG5EaUlXR2lJU0F3Y1NOMFFTSURrc0dsRnlQUmdzUzJwVGFsSlhMRmhlQVJJbUhob3ZMaFlRRHdJNUFSTWxIaGt3TFJjUEVBSU1EaUE1S3paR0p3ODhIU29YRnlRV0R3VUtCekJCSVNaR01mN2pFdzg2QmdrVkpSY1pKUlJLRkNVMEh5d1NMaW9iSWhFQ0VZU0ViVzNYR3kwYUVCSVNFQnNzR3hFUkVoQUFBQVFBSXYvMEFod0Mwd0F4QUQ4QVJBQkpBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkVSUVdNek1WQmdZaklpWW1KeU1PQWljeVBnSTFOU0lHQmhVVUZoWVRKemN6RnlNbk56TVh5UjA2TWg0MFhZQkxGRE12TFRVVlZRRTFZRDVDV1MwU0RTY09JaFlhSWhJREJ4STNSQklnT1N3YVVYSTlHQ3h4VkFGZlB0ZFVBV0ErREE0Z09TczJSaWNQUEIwcUZ4Y2tGZzhGQ2djd1FTRW1SakgrNHhNUE9nWUpGU1VYR1NVVVNoUWxOQjhzRWk0cUd5SVJBaEdCQTRTQkE0UUFCQUFpLy9RQ0hBTFJBREVBUHdCREFFY0FBRmNpTGdJMU5ENENNelUwSmlZaklnWUdGUlVqSmpRMU5EWTJNeklXRmhVUkZCWXpNeFVHQmlNaUppWW5JdzRDSnpJK0FqVTFJZ1lHRlJRV0ZnTTFNeFV6TlRNVnlSMDZNaDQwWFlCTEZETXZMVFVWVlFFMVlENUNXUzBTRFNjT0loWWFJaElEQnhJM1JCSWdPU3dhVVhJOUdDeEVXV1paREE0Z09TczJSaWNQUEIwcUZ4Y2tGZzhGQ2djd1FTRW1SakgrNHhNUE9nWUpGU1VYR1NVVVNoUWxOQjhzRWk0cUd5SVJBamRjWEZ4Y0FBTUFJdjlJQWh3Q0dnQXhBRDhBUXdBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUkVVRmpNekZRWUdJeUltSmljakRnSW5NajRDTlRVaUJnWVZGQllXRnpVekZja2RPakllTkYyQVN4UXpMeTAxRlZVQk5XQStRbGt0RWcwbkRpSVdHaUlTQXdjU04wUVNJRGtzR2xGeVBSZ3NGRjhNRGlBNUt6WkdKdzg4SFNvWEZ5UVdEd1VLQnpCQklTWkdNZjdqRXc4NkJna1ZKUmNaSlJSS0ZDVTBIeXdTTGlvYkloSDJYMThBQUFNQUl2LzBBaHdDMHdBeEFEOEFSQUFBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSRVVGak16RlFZR0l5SW1KaWNqRGdJbk1qNENOVFVpQmdZVkZCWVdFeU1uTnpQSkhUb3lIalJkZ0VzVU15OHROUlZWQVRWZ1BrSlpMUklOSnc0aUZob2lFZ01IRWpkRUVpQTVMQnBSY2owWUxIOU5iZ0ZqREE0Z09TczJSaWNQUEIwcUZ4Y2tGZzhGQ2djd1FTRW1SakgrNHhNUE9nWUpGU1VYR1NVVVNoUWxOQjhzRWk0cUd5SVJBaEdCQXdBREFDTC85QUljQXQ4QU1RQS9BRmdBQUZjaUxnSTFORDRDTXpVMEppWWpJZ1lHRlJVakpqUTFORFkyTXpJV0ZoVVJGQll6TXhVR0JpTWlKaVluSXc0Q0p6SStBalUxSWdZR0ZSUVdGaE0xTXpJMk5UUW1JeU0xUGdJek1oNENGUlFHQmdjVnlSMDZNaDQwWFlCTEZETXZMVFVWVlFFMVlENUNXUzBTRFNjT0loWWFJaElEQnhJM1JCSWdPU3dhVVhJOUdDd3hEUlVRRWhKQUN4c2JDeEVoSEJFU0h4UU1EaUE1S3paR0p3ODhIU29YRnlRV0R3VUtCekJCSVNaR01mN2pFdzg2QmdrVkpSY1pKUlJLRkNVMEh5d1NMaW9iSWhFQ0VUd0pDZ3dJSlFNREFnVU5GaElTR0E0Q0hBQUFBd0FpLy9RQ0hBTFRBREVBUHdCUkFBQlhJaTRDTlRRK0FqTTFOQ1ltSXlJR0JoVVZJeVkwTlRRMk5qTXlGaFlWRVJRV016TVZCZ1lqSWlZbUp5TU9BaWN5UGdJMU5TSUdCaFVVRmhZVE1oWVdGU011QWlNaUJnWUhJelEyTnNrZE9qSWVORjJBU3hRekx5MDFGVlVCTldBK1Fsa3RFZzBuRGlJV0dpSVNBd2NTTjBRU0lEa3NHbEZ5UFJnc1J6aEFHejRCRHlRZ0lDSVBBejBaUHd3T0lEa3JOa1luRHp3ZEtoY1hKQllQQlFvSE1FRWhKa1l4L3VNVER6b0dDUlVsRnhrbEZFb1VKVFFmTEJJdUtoc2lFUUtWSXpZY0N4b1NFaG9MSERZakFBQURBQ0wvOUFJY0Fyd0FNUUEvQUVNQUFGY2lMZ0kxTkQ0Q016VTBKaVlqSWdZR0ZSVWpKalExTkRZMk16SVdGaFVSRkJZek14VUdCaU1pSmlZbkl3NENKekkrQWpVMUlnWUdGUlFXRmdNMUlSWEpIVG95SGpSZGdFc1VNeTh0TlJWVkFUVmdQa0paTFJJTkp3NGlGaG9pRWdNSEVqZEVFaUE1TEJwUmNqMFlMRTRCTEF3T0lEa3JOa1luRHp3ZEtoY1hKQllQQlFvSE1FRWhKa1l4L3VNVER6b0dDUlVsRnhrbEZFb1VKVFFmTEJJdUtoc2lFUUk5UVVFQUFBTUFJdjlTQWh3Q0dnQXhBRDhBVXdBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUkVVRmpNekZRWUdJeUltSmljakRnSW5NajRDTlRVaUJnWVZGQllXQlNJbUpqVTBOamN6RlFZR0ZSUVdNek1WQmdiSkhUb3lIalJkZ0VzVU15OHROUlZWQVRWZ1BrSlpMUklOSnc0aUZob2lFZ01IRWpkRUVpQTVMQnBSY2owWUxBRVdGeTRkSGhVN0N4a1lIU2NRSlF3T0lEa3JOa1luRHp3ZEtoY1hKQllQQlFvSE1FRWhKa1l4L3VNVER6b0dDUlVsRnhrbEZFb1VKVFFmTEJJdUtoc2lFZXdRSmlBaE1CTUdDaVVZRlNBcUJ3Y0FBQVFBSXYvMEFod0Mvd0F4QUQ4QVN3QlhBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkVSUVdNek1WQmdZaklpWW1KeU1PQWljeVBnSTFOU0lHQmhVVUZoWVRJaVkxTkRZek1oWVZGQVluTWpZMU5DWWpJZ1lWRkJiSkhUb3lIalJkZ0VzVU15OHROUlZWQVRWZ1BrSlpMUklOSnc0aUZob2lFZ01IRWpkRUVpQTVMQnBSY2owWUxFa3BOallwS1RVMUtSVWJHeFVWSEJ3TURpQTVLelpHSnc4OEhTb1hGeVFXRHdVS0J6QkJJU1pHTWY3akV3ODZCZ2tWSlJjWkpSUktGQ1UwSHl3U0xpb2JJaEVDQmpVb0tUVTFLU2cxTEJ3VkZSMGRGUlVjQUFBRkFDTC85QUljQTYwQU1RQS9BRXNBVndCY0FBQlhJaTRDTlRRK0FqTTFOQ1ltSXlJR0JoVVZJeVkwTlRRMk5qTXlGaFlWRVJRV016TVZCZ1lqSWlZbUp5TU9BaWN5UGdJMU5TSUdCaFVVRmhZVElpWTFORFl6TWhZVkZBWW5NalkxTkNZaklnWVZGQlluTnpNWEI4a2RPakllTkYyQVN4UXpMeTAxRlZVQk5XQStRbGt0RWcwbkRpSVdHaUlTQXdjU04wUVNJRGtzR2xGeVBSZ3NTU2syTmlrcE5UVXBGUnNiRlJVY0hDQlhZd0Z1REE0Z09TczJSaWNQUEIwcUZ4Y2tGZzhGQ2djd1FTRW1SakgrNHhNUE9nWUpGU1VYR1NVVVNoUWxOQjhzRWk0cUd5SVJBZ1kxS0NrMU5Ta29OU3djRlJVZEhSVVZITG1FQTRFQUFBTUFJdi8wQWh3QzBBQXhBRDhBVndBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUkVVRmpNekZRWUdJeUltSmljakRnSW5NajRDTlRVaUJnWVZGQllXQXo0Q016SVdGak15TmpjekRnSWpJaVltSXlJR0I4a2RPakllTkYyQVN4UXpMeTAxRlZVQk5XQStRbGt0RWcwbkRpSVdHaUlTQXdjU04wUVNJRGtzR2xGeVBSZ3NWd0VTSmg0YUx5NFdFQThDT1FFVEpSNFpNQzBYRHhBQ0RBNGdPU3MyUmljUFBCMHFGeGNrRmc4RkNnY3dRU0VtUmpIKzR4TVBPZ1lKRlNVWEdTVVVTaFFsTkI4c0VpNHFHeUlSQWpBYkxSb1FFaElRR3l3YkVSRVNFQUFEQUNMLzlBTldBaG9BUFFCTEFGVUFBRmNpTGdJMU5ENENNelUwSmlZaklnWUdGUlVqSmpRMU5EWTJNeklXRnpZMk16SVdGaFVWSVI0Q016SStBamN6RGdNaklpWW5EZ0luTWo0Q05UVWlCZ1lWRkJZV0pTRTBMZ0lqSWdZRzJoOUFOeUkxWVlOT0ZUWXlMellXVlFFMllVQkNXaFllV2p4SVpETCtqUUVoUVRBaE1pTVJBVllCSGpsVE5VVmhIQnRHVHg4aFBDOGFVM2hBR1M0Qkh3RVhGU014SFMwK0lnd09JRGtyTmtRbkR6NGRLaGNYSkJZUEJRb0hNRUVoSnlRbUpUaHdWQ3RBVVNZUklDd2FLa2N5SERBeUpTc1NTQlFsTlNBcEVTMHBIQ01SK1N3OEpSQWhSQUFFQUNMLzlBTldBdE1BUFFCTEFGVUFXZ0FBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZWE5qWXpNaFlXRlJVaEhnSXpNajRDTnpNT0F5TWlKaWNPQWljeVBnSTFOU0lHQmhVVUZoWWxJVFF1QWlNaUJnWW5Oek1YQjlvZlFEY2lOV0dEVGhVMk1pODJGbFVCTm1GQVFsb1dIbG84U0dReS9vMEJJVUV3SVRJakVRRldBUjQ1VXpWRllSd2JSazhmSVR3dkdsTjRRQmt1QVI4QkZ4VWpNUjB0UGlKWVZtUUJid3dPSURrck5rUW5EejRkS2hjWEpCWVBCUW9ITUVFaEp5UW1KVGh3VkN0QVVTWVJJQ3dhS2tjeUhEQXlKU3NTU0JRbE5TQXBFUzBwSENNUitTdzhKUkFoUk9LRUE0RUFBZ0JGLy9RQ0R3TFRBQlVBS0FBQVJTSW1KeU1ISXhFekVUTStBak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlPQWhVVkZCWVdBVDgxVkJzSENVWllCaEl3UENJOVhETXlYRmN0UFNBZVBqRWNNaWNWSFQ4TUt5eExBdFArK1J3aUVEcDRYV0o3T2swa1UwUVZRbE1uRWl4S05oQStWQ3dBQVFBbC8vUUI0Z0lhQUNRQUFFVWlKaVkxTkRZMk16SWVBaFVqTkNZbUl5SUdCaFVWRkJZV016STJOalV6RkE0Q0FRMU1aelUxYVUwMlR6UVpXUmsyTEN4QUlpRkFMaTAzR1ZZWk5GQU1PM3RkWFhvOEhEWk1NUzQ3SFNkVVJSVkJWaWdnUENvc1REZ2ZBQUlBSmYvMEFlSUMwd0FrQUNrQUFFVWlKaVkxTkRZMk16SWVBaFVqTkNZbUl5SUdCaFVWRkJZV016STJOalV6RkE0Q0F6Y3pGd2NCRFV4bk5UVnBUVFpQTkJsWkdUWXNMRUFpSVVBdUxUY1pWaGswVUdwWFl3RnVERHQ3WFYxNlBCdzJUREV1T3gwblZFVVZRVllvSUR3cUxFdzRId0piaEFPQkFBQUNBQ1gvOUFIaUF0TUFKQUFzQUFCRklpWW1OVFEyTmpNeUhnSVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFPQWdNekZ5TTNNd2NqQVExTVp6VTFhVTAyVHpRWldSazJMQ3hBSWlGQUxpMDNHVllaTkZESlVWZ3NXRkZwVkF3N2UxMWRlandjTmt3eExqc2RKMVJGRlVGV0tDQThLaXhNT0I4QzMyMXRoQUFBQWdBbC8xQUI0Z0lhQUNRQVBBQUFSU0ltSmpVME5qWXpNaDRDRlNNMEppWWpJZ1lHRlJVVUZoWXpNalkyTlRNVURnSUhJaVluTlRNeU5qVTBKaU1qTnpNSE1oWVdGUlFPQWdFTlRHYzFOV2xOTms4MEdWa1pOaXdzUUNJaFFDNHROeGxXR1RSUVFSY3dGV0VURkJBWE14QThCeG9xR2hVaUtRdzdlMTFkZWp3Y05rd3hManNkSjFSRkZVRldLQ0E4S2l4TU9CK2tCQVFuRGc0TURGZ3lEQnNYRmgwUkJ3QUFBZ0FsLy9RQjRnTFRBQ1FBTEFBQVJTSW1KalUwTmpZek1oNENGU00wSmlZaklnWUdGUlVVRmhZek1qWTJOVE1VRGdJRE56TVhJeWN6QndFTlRHYzFOV2xOTms4MEdWa1pOaXdzUUNJaFFDNHROeGxXR1RSUXlXcFRhbEpZTFZnTU8zdGRYWG84SERaTU1TNDdIU2RVUlJWQlZpZ2dQQ29zVERnZkFsdUVoRzF0QUFJQUpmLzBBZUlDMEFBa0FDZ0FBRVVpSmlZMU5EWTJNekllQWhVak5DWW1JeUlHQmhVVkZCWVdNekkyTmpVekZBNENBelV6RlFFTlRHYzFOV2xOTms4MEdWa1pOaXdzUUNJaFFDNHROeGxXR1RSUVpWOE1PM3RkWFhvOEhEWk1NUzQ3SFNkVVJSVkJWaWdnUENvc1REZ2ZBbjFmWHdBQ0FDZi85QUh5QXRNQUZRQW9BQUJYSWlZbU5UUTJOak15RmhZWE14RXpFU01uSXdZR0p6STJOalUxTkM0Q0l5SUdCaFVWRkJZVytFRmRNelJjUFNNOEx4SUdXRWNJQnh0V0hqSStIUlltTWh3eFBoNGdQUXc2ZTJKZGVEb1FJaHdCQi8wdFN5d3JUU3hVUGhBMlNpd1NKMU5DRlVSVEpBQUNBQ24vOUFJUEF0TUFKUUEzQUFCRklpWW1OVFEyTmpNeUZoYzNKaVluQnpVM0ppWW5Oek1lQWhjM0ZRY2VBaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZQkdrNXNOelJrUnhjcUV3SVJKeGFUWFJBaUVRTnNDeFFVQ1pCWkwwTWtPV3hPTWtRaElVUXlNME1pSWtNTU9ucGRXM2s5Q0FjQ0dTNFhDemtHRGhvTUJBZ1FFQWdMT1FjeWNIOUlYbm81U2loVFFoVkNVeWNuVTBJVVExTW9BQU1BSi8vMEFuQUMwd0FWQUNnQUxBQUFWeUltSmpVME5qWXpNaFlXRnpNUk14RWpKeU1HQmljeU5qWTFOVFF1QWlNaUJnWVZGUlFXRmdFMU13ZjRRVjB6TkZ3OUl6d3ZFZ1pZUndnSEcxWWVNajRkRmlZeUhERStIaUE5QVRwV0dBdzZlMkpkZURvUUlod0JCLzB0U3l3clRTeFVQaEEyU2l3U0oxTkNGVVJUSkFIcXFLZ0FBd0FuLy9RQ053TFRBQlVBS0FBc0FBQlhJaVltTlRRMk5qTXlGaFlYTXhFekVTTW5Jd1lHSnpJMk5qVTFOQzRDSXlJR0JoVVZGQllXRXpVaEZmaEJYVE0wWEQwalBDOFNCbGhIQ0FjYlZoNHlQaDBXSmpJY01UNGVJRDBaQVQ0TU9udGlYWGc2RUNJY0FRZjlMVXNzSzAwc1ZENFFOa29zRWlkVFFoVkVVeVFDRFQwOUFBQUVBQ2YvOUFRSUF0TUFGUUFvQURJQU9nQUFWeUltSmpVME5qWXpNaFlXRnpNUk14RWpKeU1HQmljeU5qWTFOVFF1QWlNaUJnWVZGUlFXRmdVMUFTRTFJUlVCSVJVQk14Y2pOek1ISS9oQlhUTTBYRDBqUEM4U0JsaEhDQWNiVmg0eVBoMFdKakljTVQ0ZUlEMEJkZ0VrL3ZFQmpmN2JBVFgrbEZKWExGaFNhbFFNT250aVhYZzZFQ0ljQVFmOUxVc3NLMDBzVkQ0UU5rb3NFaWRUUWhWRVV5UkJMd0dWU2k3K2Frb0MwMjF0aEFBQUFnQW4vL1FCL0FJYUFCd0FKZ0FBUlNJbUpqVTBOall6TWhZV0ZSVWhIZ0l6TWo0Q056TU9Bd01oTkM0Q0l5SUdCZ0VYVG1zM04yeFJTbVF6L29ZQ0lVSXlJak1qRWdGV0FSNDZWTWtCSFJRbE1SOHVRQ0lNTzNwZVgzazdPWEZWS2o5UkpSRWdMQm9xUnpJY0FUOHNQQ1lSSWtZQUFBTUFKLy8wQWZ3QzB3QWNBQ1lBS3dBQVJTSW1KalUwTmpZek1oWVdGUlVoSGdJek1qNENOek1PQXdNaE5DNENJeUlHQmpjM014Y0hBUmRPYXpjM2JGRktaRFAraGdJaFFqSWlNeU1TQVZZQkhqcFV5UUVkRkNVeEh5NUFJbHhXWkFGdkREdDZYbDk1T3pseFZTby9VU1VSSUN3YUtrY3lIQUUvTER3bUVTSkc1WVFEZ1FBQUF3QW4vL1FCL0FMVEFCd0FKZ0E0QUFCRklpWW1OVFEyTmpNeUZoWVZGU0VlQWpNeVBnSTNNdzREQXlFMExnSWpJZ1lHTnlJbUpqVXpIZ0l6TWpZMk56TVVCZ1lCRjA1ck56ZHNVVXBrTS82R0FpRkNNaUl6SXhJQlZnRWVPbFRKQVIwVUpURWZMa0FpampkQUdUMEREeUlnSUNRUUFUMGJQd3c3ZWw1ZmVUczVjVlVxUDFFbEVTQXNHaXBITWh3QlB5dzhKaEVpUnZRa05oc0tHeElTR3dvYk5pUUFBQU1BSi8vMEFmd0Mwd0FjQUNZQUxnQUFSU0ltSmpVME5qWXpNaFlXRlJVaEhnSXpNajRDTnpNT0F3TWhOQzRDSXlJR0JnTXpGeU0zTXdjakFSZE9hemMzYkZGS1pEUCtoZ0loUWpJaU15TVNBVllCSGpwVXlRRWRGQ1V4SHk1QUlnUlNWeXhZVW1wVEREdDZYbDk1T3pseFZTby9VU1VSSUN3YUtrY3lIQUUvTER3bUVTSkdBV2x0YllRQUF3QW4vL1FCL0FMVEFCd0FKZ0F1QUFCRklpWW1OVFEyTmpNeUZoWVZGU0VlQWpNeVBnSTNNdzREQXlFMExnSWpJZ1lHSnpjekZ5TW5Nd2NCRjA1ck56ZHNVVXBrTS82R0FpRkNNaUl6SXhJQlZnRWVPbFRKQVIwVUpURWZMa0FpQTJsVWFWRllMRmdNTzNwZVgzazdPWEZWS2o5UkpSRWdMQm9xUnpJY0FUOHNQQ1lSSWtibGhJUnRiUUFFQUNmLzlBSDhBNHNBSEFBbUFDNEFNd0FBUlNJbUpqVTBOall6TWhZV0ZSVWhIZ0l6TWo0Q056TU9Bd01oTkM0Q0l5SUdCaWMzTXhjakp6TUhOemN6RndjQkYwNXJOemRzVVVwa00vNkdBaUZDTWlJekl4SUJWZ0VlT2xUSkFSMFVKVEVmTGtBaUEybFVhVkZZTEZnT1ZtUUJid3c3ZWw1ZmVUczVjVlVxUDFFbEVTQXNHaXBITWh3QlB5dzhKaEVpUnVXRWhHMXR1SVFEZ1FBRUFDZi9TQUg4QXRNQUhBQW1BQ29BTWdBQVJTSW1KalUwTmpZek1oWVdGUlVoSGdJek1qNENOek1PQXdNaE5DNENJeUlHQmhNMU14VUROek1YSXljekJ3RVhUbXMzTjJ4UlNtUXovb1lDSVVJeUlqTWpFZ0ZXQVI0NlZNa0JIUlFsTVI4dVFDSnFYOHhwVkdsUldDeFlERHQ2WGw5NU96bHhWU28vVVNVUklDd2FLa2N5SEFFL0xEd21FU0pHL2Q1Zlh3TUhoSVJ0YlFBQUJBQW4vL1FCL0FPTEFCd0FKZ0F1QURNQUFFVWlKaVkxTkRZMk16SVdGaFVWSVI0Q016SStBamN6RGdNRElUUXVBaU1pQmdZbk56TVhJeWN6Qnpjakp6Y3pBUmRPYXpjM2JGRktaRFAraGdJaFFqSWlNeU1TQVZZQkhqcFV5UUVkRkNVeEh5NUFJZ05wVkdsUldDeFllRTF1QVdRTU8zcGVYM2s3T1hGVktqOVJKUkVnTEJvcVJ6SWNBVDhzUENZUklrYmxoSVJ0YmJpQkF3QUFCQUFuLy9RQi9BT1hBQndBSmdBdUFFY0FBRVVpSmlZMU5EWTJNeklXRmhVVklSNENNekkrQWpjekRnTURJVFF1QWlNaUJnWW5Oek1YSXljekJ6YzFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWQVJkT2F6YzNiRkZLWkRQK2hnSWhRaklpTXlNU0FWWUJIanBVeVFFZEZDVXhIeTVBSWdOcFZHbFJXQ3hZS2cwVkVCSVNRQXNjR3dvUklSd1NFeDhVRER0NlhsOTVPemx4VlNvL1VTVVJJQ3dhS2tjeUhBRS9MRHdtRVNKRzVZU0ViVzI0UEFrS0RBZ2xBd01DQlEwV0VoSVlEZ0ljQUFRQUovLzBBZndEaUFBY0FDWUFMZ0JHQUFCRklpWW1OVFEyTmpNeUZoWVZGU0VlQWpNeVBnSTNNdzREQXlFMExnSWpJZ1lHSnpjekZ5TW5Nd2NuUGdJek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0J3RVhUbXMzTjJ4UlNtUXovb1lDSVVJeUlqTWpFZ0ZXQVI0NlZNa0JIUlFsTVI4dVFDSURhVlJwVVZnc1dGMEJFaVlkR2pBdEZ3OFFBamdUSmg0Wk1DMFdFQkFDRER0NlhsOTVPemx4VlNvL1VTVVJJQ3dhS2tjeUhBRS9MRHdtRVNKRzVZU0ViVzNYR3kwYUVCSVNFQnNzR3hFUkVoQUFBQVFBSi8vMEFmd0Mwd0FjQUNZQUt3QXdBQUJGSWlZbU5UUTJOak15RmhZVkZTRWVBak15UGdJM013NERBeUUwTGdJaklnWUdOeWMzTXhjakp6Y3pGd0VYVG1zM04yeFJTbVF6L29ZQ0lVSXlJak1qRWdGV0FSNDZWTWtCSFJRbE1SOHVRQ0s0VkFGZlB0ZFVBV0ErRER0NlhsOTVPemx4VlNvL1VTVVJJQ3dhS2tjeUhBRS9MRHdtRVNKRzVZRURoSUVEaEFBRUFDZi85QUg4QXRFQUhBQW1BQ29BTGdBQVJTSW1KalUwTmpZek1oWVdGUlVoSGdJek1qNENOek1PQXdNaE5DNENJeUlHQmhNMU14VXpOVE1WQVJkT2F6YzNiRkZLWkRQK2hnSWhRaklpTXlNU0FWWUJIanBVeVFFZEZDVXhIeTVBSWdOWlpsa01PM3BlWDNrN09YRlZLajlSSlJFZ0xCb3FSekljQVQ4c1BDWVJJa1lCQzF4Y1hGd0FBQU1BSi8vMEFmd0MwQUFjQUNZQUtnQUFSU0ltSmpVME5qWXpNaFlXRlJVaEhnSXpNajRDTnpNT0F3TWhOQzRDSXlJR0JoTTFNeFVCRjA1ck56ZHNVVXBrTS82R0FpRkNNaUl6SXhJQlZnRWVPbFRKQVIwVUpURWZMa0FpWUY4TU8zcGVYM2s3T1hGVktqOVJKUkVnTEJvcVJ6SWNBVDhzUENZUklrWUJCMTlmQUFBREFDZi9TQUg4QWhvQUhBQW1BQ29BQUVVaUppWTFORFkyTXpJV0ZoVVZJUjRDTXpJK0FqY3pEZ01ESVRRdUFpTWlCZ1lUTlRNVkFSZE9hemMzYkZGS1pEUCtoZ0loUWpJaU15TVNBVllCSGpwVXlRRWRGQ1V4SHk1QUltcGZERHQ2WGw5NU96bHhWU28vVVNVUklDd2FLa2N5SEFFL0xEd21FU0pHL2Q1Zlh3QUFBd0FuLy9RQi9BTFRBQndBSmdBckFBQkZJaVltTlRRMk5qTXlGaFlWRlNFZUFqTXlQZ0kzTXc0REF5RTBMZ0lqSWdZR055TW5Oek1CRjA1ck56ZHNVVXBrTS82R0FpRkNNaUl6SXhJQlZnRWVPbFRKQVIwVUpURWZMa0FpeGsxdUFXUU1PM3BlWDNrN09YRlZLajlSSlJFZ0xCb3FSekljQVQ4c1BDWVJJa2JsZ1FNQUF3QW4vL1FCL0FMZkFCd0FKZ0EvQUFCRklpWW1OVFEyTmpNeUZoWVZGU0VlQWpNeVBnSTNNdzREQXlFMExnSWpJZ1lHTnpVek1qWTFOQ1lqSXpVK0FqTXlIZ0lWRkFZR0J4VUJGMDVyTnpkc1VVcGtNLzZHQWlGQ01pSXpJeElCVmdFZU9sVEpBUjBVSlRFZkxrQWllQTBWRUJJU1FBc2NHd29SSVJ3U0V4OFVERHQ2WGw5NU96bHhWU28vVVNVUklDd2FLa2N5SEFFL0xEd21FU0pHNVR3SkNnd0lKUU1EQWdVTkZoSVNHQTRDSEFBQUF3QW4vL1FCL0FMVEFCd0FKZ0E0QUFCRklpWW1OVFEyTmpNeUZoWVZGU0VlQWpNeVBnSTNNdzREQXlFMExnSWpJZ1lHRXpJV0ZoVWpMZ0lqSWdZR0J5TTBOallCRjA1ck56ZHNVVXBrTS82R0FpRkNNaUl6SXhJQlZnRWVPbFRKQVIwVUpURWZMa0FpamprL0d6MEJFQ1FnSUNJUEF6MFpRQXc3ZWw1ZmVUczVjVlVxUDFFbEVTQXNHaXBITWh3QlB5dzhKaEVpUmdGcEl6WWNDeG9TRWhvTEhEWWpBQU1BSi8vMEFmd0N2QUFjQUNZQUtnQUFSU0ltSmpVME5qWXpNaFlXRlJVaEhnSXpNajRDTnpNT0F3TWhOQzRDSXlJR0JnTTFJUlVCRjA1ck56ZHNVVXBrTS82R0FpRkNNaUl6SXhJQlZnRWVPbFRKQVIwVUpURWZMa0FpQndFdEREdDZYbDk1T3pseFZTby9VU1VSSUN3YUtrY3lIQUUvTER3bUVTSkdBUkZCUVFBREFDZi9VZ0g4QWhvQUhBQW1BRG9BQUVVaUppWTFORFkyTXpJV0ZoVVZJUjRDTXpJK0FqY3pEZ01ESVRRdUFpTWlCZ1lUSWlZbU5UUTJOek1WQmdZVkZCWXpNeFVHQmdFWFRtczNOMnhSU21Rei9vWUNJVUl5SWpNakVnRldBUjQ2Vk1rQkhSUWxNUjh1UUNMd0dDMGRIaFU2Q3hrWUhpWVBKZ3c3ZWw1ZmVUczVjVlVxUDFFbEVTQXNHaXBITWh3QlB5dzhKaEVpUnYzb0VDWWdJVEFUQmdvbEdCVWdLZ2NIQUFNQUovLzBBZndDMEFBY0FDWUFQZ0FBUlNJbUpqVTBOall6TWhZV0ZSVWhIZ0l6TWo0Q056TU9Bd01oTkM0Q0l5SUdCZ00rQWpNeUZoWXpNalkzTXhRR0JpTWlKaVlqSWdZSEFSZE9hemMzYkZGS1pEUCtoZ0loUWpJaU15TVNBVllCSGpwVXlRRWRGQ1V4SHk1QUlnOEJFaVlkR2pBdEZ3OFFBamdUSmg0Wk1DMFdFQkFDRER0NlhsOTVPemx4VlNvL1VTVVJJQ3dhS2tjeUhBRS9MRHdtRVNKR0FRUWJMUm9RRWhJUUd5d2JFUkVTRUFBQUFnQW8vL1FCK1FJYUFCd0FKZ0FBUlNJbUpqVTFJUzRDSXlJT0FnY2pORDRDTXpJV0ZoVVVCZ1luTWpZMk55RVVIZ0lCQ0Vsak5BRjJBU0ZCTWlBekloSUJWaDQ2VXpWT2FUYzNiRXd2UGlNRC91Y1VKREVNT1hGVktrQlFKUkVnTEJvcVJ6SWNPM2xmWG5vN1NDSkhOaXc4SmhFQUFBRUFEQUFBQVJjQzJ3QVhBQUJ6RVNNMU16VTBOall6TWhZV0Z4VWpJZ1lWRlRNVkl4RmFUazRTTWkwT0d4a0tOUmtYWldVQnhFcFVIemNqQXdVRFB4a1hVMHIrUEFBREFCTC9TZ0lrQW1NQU5RQkVBRkVBQUZjaUppWTFORFkzSmlZMU5EWTNKaVkxTkRZMk16SVdGelkyTnpNVUJnWUhGaFlWRkFZR0l5TWlCaFVVRmpNek1oWVZGQVlHSXljek1qWTJOVFFtSXlNaUJoVVVGaE15TmpVMEppTWlCaFVVRmhhZUprQW1NU0laSERNbElpY3ZZVVlnT0JZakl3UlhHeTRoR1JrdlhrZFNHeUlpRzlZNlNpdE5NNzY5RnlZV0tCN0tJQ3dzZjBBK1BrQkFQeHc0dGg4NktDdzZEZ3dyR2lNd0NCWkZLakpNTEFrS0VESWFIalVqQmhnOEl6Sk5MQlVYRkJsTlBDdEZLVU1USWhRaUtDc2ZJU2dCZWpneE1EZzRNQjh3R2dBQUJBQVMvMG9DSkFMVEFEVUFSQUJSQUdNQUFGY2lKaVkxTkRZM0ppWTFORFkzSmlZMU5EWTJNeklXRnpZMk56TVVCZ1lIRmhZVkZBWUdJeU1pQmhVVUZqTXpNaFlWRkFZR0l5Y3pNalkyTlRRbUl5TWlCaFVVRmhNeU5qVTBKaU1pQmhVVUZoWVRJaVltTlRNZUFqTXlOalkzTXhRR0JwNG1RQ1l4SWhrY015VWlKeTloUmlBNEZpTWpCRmNiTGlFWkdTOWVSMUliSWlJYjFqcEtLMDB6dnIwWEpoWW9Ic29nTEN4L1FENCtRRUEvSERna056OGFQUU1QSXg4aEl4QUJQUnMvdGg4NktDdzZEZ3dyR2lNd0NCWkZLakpNTEFrS0VESWFIalVqQmhnOEl6Sk5MQlVYRkJsTlBDdEZLVU1USWhRaUtDc2ZJU2dCZWpneE1EZzRNQjh3R2dGWEpEWWJDaHNTRWhzS0d6WWtBQVFBRXY5S0FpUUMwd0ExQUVRQVVRQlpBQUJYSWlZbU5UUTJOeVltTlRRMk55WW1OVFEyTmpNeUZoYzJOamN6RkFZR0J4WVdGUlFHQmlNaklnWVZGQll6TXpJV0ZSUUdCaU1uTXpJMk5qVTBKaU1qSWdZVkZCWVRNalkxTkNZaklnWVZGQllXQXpNWEl6Y3pCeU9lSmtBbU1TSVpIRE1sSWljdllVWWdPQllqSXdSWEd5NGhHUmt2WGtkU0d5SWlHOVk2U2l0Tk03NjlGeVlXS0I3S0lDd3NmMEErUGtCQVB4dzRibEpZTEZkU2FWUzJIem9vTERvT0RDc2FJekFJRmtVcU1rd3NDUW9RTWhvZU5TTUdHRHdqTWswc0ZSY1VHVTA4SzBVcFF4TWlGQ0lvS3g4aEtBRjZPREV3T0Rnd0h6QWFBY3h0YllRQUJBQVMvMG9DSkFMVEFEVUFSQUJSQUZrQUFGY2lKaVkxTkRZM0ppWTFORFkzSmlZMU5EWTJNeklXRnpZMk56TVVCZ1lIRmhZVkZBWUdJeU1pQmhVVUZqTXpNaFlWRkFZR0l5Y3pNalkyTlRRbUl5TWlCaFVVRmhNeU5qVTBKaU1pQmhVVUZoWUROek1YSXljekI1NG1RQ1l4SWhrY015VWlKeTloUmlBNEZpTWpCRmNiTGlFWkdTOWVSMUliSWlJYjFqcEtLMDB6dnIwWEpoWW9Ic29nTEN4L1FENCtRRUEvSERodGFWUnBVVmdzV0xZZk9pZ3NPZzRNS3hvak1BZ1dSU295VEN3SkNoQXlHaDQxSXdZWVBDTXlUU3dWRnhRWlRUd3JSU2xERXlJVUlpZ3JIeUVvQVhvNE1UQTRPREFmTUJvQlNJU0ViVzBBQUFRQUV2OUtBaVFEUWdBMUFFUUFVUUJkQUFCWElpWW1OVFEyTnlZbU5UUTJOeVltTlRRMk5qTXlGaGMyTmpjekZBWUdCeFlXRlJRR0JpTWpJZ1lWRkJZek16SVdGUlFHQmlNbk16STJOalUwSmlNaklnWVZGQllUTWpZMU5DWWpJZ1lWRkJZV0V4VWlCaFV6RlNNMU5EWTJuaVpBSmpFaUdSd3pKU0luTDJGR0lEZ1dJeU1FVnhzdUlSa1pMMTVIVWhzaUlodldPa29yVFRPK3ZSY21GaWdleWlBc0xIOUFQajVBUUQ4Y09HQWNHaXhmR3krMkh6b29MRG9PRENzYUl6QUlGa1VxTWt3c0NRb1FNaG9lTlNNR0dEd2pNazBzRlJjVUdVMDhLMFVwUXhNaUZDSW9LeDhoS0FGNk9ERXdPRGd3SHpBYUFqc29KUjVoVHkwM0dRQUVBQkwvU2dJa0F0QUFOUUJFQUZFQVZRQUFWeUltSmpVME5qY21KalUwTmpjbUpqVTBOall6TWhZWE5qWTNNeFFHQmdjV0ZoVVVCZ1lqSXlJR0ZSUVdNek15RmhVVUJnWWpKek15TmpZMU5DWWpJeUlHRlJRV0V6STJOVFFtSXlJR0ZSUVdGZ00xTXhXZUprQW1NU0laSERNbElpY3ZZVVlnT0JZakl3UlhHeTRoR1JrdlhrZFNHeUlpRzlZNlNpdE5NNzY5RnlZV0tCN0tJQ3dzZjBBK1BrQkFQeHc0Q1Y2Mkh6b29MRG9PRENzYUl6QUlGa1VxTWt3c0NRb1FNaG9lTlNNR0dEd2pNazBzRlJjVUdVMDhLMFVwUXhNaUZDSW9LeDhoS0FGNk9ERXdPRGd3SHpBYUFXcGZYd0FBQVFCRkFBQUI4d0xUQUJrQUFITVJNeEV6UGdJek1oWVdGUkVqRVRRdUFpTWlCZ1lWRVVWWUJ4UXlQU1F5U3l0WUVSMHBHU1ZDSndMVC92a2JJaEVpVEVIK2xRRmZJU29ZQ2lORE1mN0xBQUFDQUFBQUFBSHpBdE1BR1FBZEFBQnpFVE1STXo0Q016SVdGaFVSSXhFMExnSWpJZ1lHRlJFRE5TRVZSVmdIRkRJOUpESkxLMWdSSFNrWkpVSW5uUUUrQXRQKytSc2lFU0pNUWY2VkFWOGhLaGdLSTBNeC9zc0NUajA5QUFMLzJRQUFBZk1EWkFBWkFDRUFBSE1STXhFelBnSXpNaFlXRlJFakVUUXVBaU1pQmdZVkVRTTNNeGNqSnpNSFJWZ0hGREk5SkRKTEsxZ1JIU2taSlVJbnhHbGJhbFpYTEZnQzAvNzVHeUlSSWt4Qi9wVUJYeUVxR0FvalF6SCt5d0xnaElSdGJRQUFBZ0JGLzBnQjh3TFRBQmtBSFFBQWN4RXpFVE0rQWpNeUZoWVZFU01STkM0Q0l5SUdCaFVSRnpVekZVVllCeFF5UFNReVN5dFlFUjBwR1NWQ0oxQmZBdFArK1JzaUVTSk1RZjZWQVY4aEtoZ0tJME14L3N1NFgxOEFBZ0JGQUFBQW5RTFRBQU1BQndBQVV6VXpGUU1STXhGRldGaFlBbkZpWXYyUEFnNzk4Z0FCQUVVQUFBQ2RBZzRBQXdBQWN4RXpFVVZZQWc3OThnQUNBRHdBQUFEM0F0TUFBd0FJQUFCekVUTVJBemN6RndkRldHRlhZd0Z1QWc3OThnSlBoQU9CQUFBQy85OEFBQUVDQXRNQUF3QVZBQUJ6RVRNUkF5SW1KalV6SGdJek1qWTJOek1VQmdaRldDNDNRQms5QXc4aUlDQWtEd0UrRzBBQ0R2M3lBbDRrTmhzS0d4SVNHd29iTmlRQUFBTC8zUUFBQVFNQzB3QURBQXNBQUhNUk14RURNeGNqTnpNSEkwVll3RkZZTEZoUmFWUUNEdjN5QXROdGJZUUFBQUwvM1FBQUFRUUMwd0FEQUFzQUFITVJNeEVETnpNWEl5Y3pCMFZZd0dwVGFsSlhMRmdDRHYzeUFrK0VoRzF0QUFQL3VBQUFBT01DMHdBREFBZ0FEUUFBY3hFekVRTW5Oek1YSXljM014ZEZXQVJVQVY4KzExUUJZRDRDRHYzeUFrK0JBNFNCQTRRQUEvL2tBQUFBL0FMUkFBTUFCd0FMQUFCekVUTVJBelV6RlRNMU14VkZXTGxaWmxrQ0R2M3lBblZjWEZ4Y0FBSUFSUUFBQUowQzB3QURBQWNBQUZNMU14VURFVE1SUlZoWVdBSnhZbUw5andJTy9mSUFBd0JCLzBnQW9BTFRBQU1BQndBTEFBQlROVE1WQXhFekVRYzFNeFZGV0ZoWVhGOENjV0ppL1k4Q0R2M3l1RjlmQUFBQy8rd0FBQUNuQXRNQUF3QUlBQUJ6RVRNUkV5TW5Oek5GV0FwTmJnRmpBZzc5OGdKUGdRTUFBZ0FuQUFBQTBnTGZBQU1BSEFBQWN4RXpFUU0xTXpJMk5UUW1JeU0xUGdJek1oNENGUlFHQmdjVlJWaEVEUlVRRWhKQUN4c2JDeEVoSEJFU0h4UUNEdjN5QWs4OENRb01DQ1VEQXdJRkRSWVNFaGdPQWh3QUFBTC8zd0FBQVFJQzB3QURBQlVBQUhNUk14RURNaFlXRlNNdUFpTWlCZ1lISXpRMk5rVllMamhBR3o0QkR5UWdJQ0lQQXowWlFBSU8vZklDMHlNMkhBc2FFaElhQ3h3Mkl3QUFCQUJGLzBvQmZnTFRBQU1BQndBTEFCc0FBRk0xTXhVREVUTVJFelV6RlFNaUppWW5OVE15TmpVUk14RVVCZ1pGV0ZoWWlWaHVEQmtZQ0MwWEYxZ1RNQUp4WW1MOWp3SU8vZklDY1dKaS9Oa0RCUU05R1JjQ1RQMnlIallpQUFMLzJnQUFBUVlDdkFBREFBY0FBSE1STXhFRE5TRVZSVmpEQVN3Q0R2M3lBbnRCUVFBQUF3QVQvMUlBdUFMVEFBTUFCd0FiQUFCVE5UTVZBeEV6RVFjaUppWTFORFkzTXhVR0JoVVVGak16RlFZR1JWaFlXQ2dZTFIwZUZUb0xHUmdlSmc4bUFuRmlZdjJQQWc3OThxNFFKaUFoTUJNR0NpVVlGU0FxQndjQUF2L1JBQUFCRHdMUUFBTUFHd0FBY3hFekVRTStBak15RmhZek1qWTNNdzRDSXlJbUppTWlCZ2RGV013QkVpWWVHaTh1RmhBUEFqa0JFeVVlR1RBdEZ3OFFBZ0lPL2ZJQ2Joc3RHaEFTRWhBYkxCc1JFUklRQUFMLzZmOUtBSjBDMHdBREFCTUFBRk0xTXhVRElpWW1KelV6TWpZMUVUTVJGQVlHUlZodkN4b1lDQzBYR0ZnVUx3SnhZbUw4MlFNRkF6MFpGd0pNL2JJZU5pSUFBZi9wLzBvQW5RSU9BQThBQUZjaUppWW5OVE15TmpVUk14RVVCZ1l1Q3hvWUNDMFhHRmdVTDdZREJRTTlHUmNDVFAyeUhqWWlBQUFDLzkzL1NnRUVBdE1BRHdBWEFBQlhJaVltSnpVek1qWTFFVE1SRkFZR0F6Y3pGeU1uTXdjdUN4b1hDUzBYR0ZnVUwzMXFVMnBTVnl4WXRnTUZBejBaRndKTS9iSWVOaUlEQllTRWJXMEFBQUVBUlFBQUFlNEMwd0FMQUFCekVUTVJOek1IRXlNREJ4VkZXTjlvdEw1bGtsb0MwLzQ4Lzh6K3ZnRUJXNllBQUFJQVJmN2NBZTRDMHdBTEFCY0FBSE1STXhFM013Y1RJd01IRlJNMU1qWTFJelV6RlJRR0JrVlkzMmkwdm1XU1dqTWNHaXhmR3k4QzAvNDgvOHordmdFQlc2YiszQ2dtSG1GUExUY2FBQUVBUlFBQUFlNENEZ0FMQUFCekVUTVZOek1IRXlNREJ4VkZXTjlvdEw1bGtsb0NEdi8velA2K0FRRmJwZ0FCQUVVQUFBQ2RBdE1BQXdBQWN4RXpFVVZZQXRQOUxRQUNBRVVBQUFFRkEyUUFBd0FJQUFCekVUTVJBemN6RndkRldGZFhad0Z1QXRQOUxRTGdoQU9CQUFBQ0FFVUFBQUViQXRNQUF3QUhBQUJ6RVRNUkV6VXpCMFZZS0ZZWUF0UDlMUUlycUtnQUFBSUFOLzdjQUtBQzB3QURBQThBQUhNUk14RUROVEkyTlNNMU14VVVCZ1pGV0dZY0dpeGZHeThDMC8wdC90d29KaDVoVHkwM0dnQUFBZ0JGQUFBQkhnTFRBQU1BQndBQWN4RXpFUk0xTXhWRldDTmVBdFA5TFFGSVltSUFBd0JGLzBvQmZnTFRBQU1BQndBWEFBQnpFVE1SRXpVekZRTWlKaVluTlRNeU5qVVJNeEVVQmdaRldJbFliZ3daR0FndEZ4ZFlFekFDMC8wdEFuRmlZdnpaQXdVRFBSa1hBa3o5c2g0MklnQUNBQUVBQUFEZkF0TUFBd0FIQUFCekVUTVJKelUzRlVWWW5ONEMwLzB0NlU2M1RRQUJBRVVBQUFNY0Fob0FMUUFBY3hFekZ6TStBak15RmhjelBnSXpNaFlXRlJFakVUUXVBaU1pQmdZVkVTTVJOQzRDSXlJR0JoVVJSVWNJQnhReVBDTXpTaElHRXpJK0l6QklLVmdQSENVVkl6c2tXQkFhSlJRa1BTUUNEazhnS0JNcE1pQW5GQ0ZMUC82UkFXRWdLaGNLSkVRdi9zc0JZU0FxRndva1JDLyt5d0FBQVFCRkFBQUI4d0lhQUJrQUFITVJNeGN6UGdJek1oWVdGUkVqRVRRdUFpTWlCZ1lWRVVWSENBY1ZOVUVsTWtzcldCRWRLUmtsUWljQ0RrOGdLQk1pVEVIK2xRRmZJU29ZQ2lSRUwvN0xBQUFDQUVVQUFBSHpBdE1BR1FBZUFBQnpFVE1YTXo0Q016SVdGaFVSSXhFMExnSWpJZ1lHRlJFVE56TVhCMFZIQ0FjVk5VRWxNa3NyV0JFZEtSa2xRaWRLVm1RQmJ3SU9UeUFvRXlKTVFmNlZBVjhoS2hnS0pFUXYvc3NDVDRRRGdRQUMvL1lBQUFIekF2a0FHUUFsQUFCekVUTVhNejRDTXpJV0ZoVVJJeEUwTGdJaklnWUdGUkVETlRJMk5TTTFNeFVVQmdaRlJ3Z0hGVFZCSlRKTEsxZ1JIU2taSlVJbnB4d2JMVjhiTHdJT1R5QW9FeUpNUWY2VkFWOGhLaGdLSkVRdi9zc0NMU2dsSG1GUExUY1pBQUlBUlFBQUFmTUMwd0FaQUNFQUFITVJNeGN6UGdJek1oWVdGUkVqRVRRdUFpTWlCZ1lWRVFNekZ5TTNNd2NqUlVjSUJ4VTFRU1V5U3l0WUVSMHBHU1ZDSnhaU1dDMVlVbXBUQWc1UElDZ1RJa3hCL3BVQlh5RXFHQW9rUkMvK3l3TFRiVzJFQUFJQVJmN2NBZk1DR2dBWkFDVUFBSE1STXhjelBnSXpNaFlXRlJFakVUUXVBaU1pQmdZVkVSTTFNalkxSXpVekZSUUdCa1ZIQ0FjVk5VRWxNa3NyV0JFZEtSa2xRaWRGR3hzc1h4c3ZBZzVQSUNnVElreEIvcFVCWHlFcUdBb2tSQy8reS83Y0tDWWVZVTh0TnhvQUFRQkYvMG9COHdJYUFDWUFBRVVpSmlZbk5UTXlOalVSTkM0Q0l5SUdCaFVSSXhFekZ6TStBak15RmhZVkVSUU9BZ0dGREJvWENDd1lGeEVlS2hrbFFDZFlSd2dIRlRSQUpUSk1MQXNaS3JZREJRTTlHUmNCblNFcUdBb2tSQy8reXdJT1R5QW9FeUpNUWY1VkZ5b2lFd0FBQWYvcC8wb0I4d0lhQUNZQUFGY2lKaVluTlRNeU5qVVJNeGN6UGdJek1oWVdGUkVqRVRRdUFpTWlCZ1lWRVJRT0FpNExHaGNKTFJjWVJ3Z0hGVFZCSlRKTEsxZ1JIU2taSlVJbkNob3F0Z01GQXowWkZ3Sk1UeUFvRXlKTVFmNlZBVjhoS2hnS0pFUXYvb3NYS2lJVEFBTUFSZjlLQXRBQzB3QVpBQjBBTFFBQWN4RXpGek0rQWpNeUZoWVZFU01STkM0Q0l5SUdCaFVSQVRVekZRTWlKaVluTlRNeU5qVVJNeEVVQmdaRlJ3Z0hGVFZCSlRKTEsxZ1JIU2taSlVJbkFkdFlid3NhR0FndEZ4aFlGREFDRGs4Z0tCTWlURUgrbFFGZklTb1lDaVJFTC83TEFuRmlZdnpaQXdVRFBSa1hBa3o5c2g0MklnQUNBRVVBQUFIekF0QUFHUUF4QUFCekVUTVhNejRDTXpJV0ZoVVJJeEUwTGdJaklnWUdGUkVEUGdJek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0IwVkhDQWNWTlVFbE1rc3JXQkVkS1JrbFFpY2hBUkltSFJvd0xoWVBFQUk0RXlZZUdERXRGaEFRQWdJT1R5QW9FeUpNUWY2VkFWOGhLaGdLSkVRdi9zc0NiaHN0R2hBU0VoQWJMQnNSRVJJUUFBQUNBQ2YvOUFJU0Fob0FEd0FoQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXQVIxUWJUazViVkJRYlRnNGJWQXpSQ01qUkRNelJTSWlSUXc3ZWw1ZmVUczdlVjllZWp0S0tGVkJGa0pVS0NoVVFoWkJWU2dBQUFNQUovLzBBaElDMHdBUEFDRUFKZ0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGZ00zTXhjSEFSMVFiVGs1YlZCUWJUZzRiVkF6UkNNalJETXpSU0lpUlFGV1pBRnZERHQ2WGw5NU96dDVYMTU2TzBvb1ZVRVdRbFFvS0ZSQ0ZrRlZLQUlSaEFPQkFBTUFKLy8wQWhJQzB3QVBBQ0VBTXdBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmhNaUppWTFNeDRDTXpJMk5qY3pGQVlHQVIxUWJUazViVkJRYlRnNGJWQXpSQ01qUkRNelJTSWlSVEUzUUJrOUF3OGlJQ0FrRHdFK0cwQU1PM3BlWDNrN08zbGZYbm83U2loVlFSWkNWQ2dvVkVJV1FWVW9BaUFrTmhzS0d4SVNHd29iTmlRQUF3QW4vL1FDRWdMVEFBOEFJUUFwQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXQXpNWEl6Y3pCeU1CSFZCdE9UbHRVRkJ0T0RodFVETkVJeU5FTXpORklpSkZZVkpYTEZoU2FsUU1PM3BlWDNrN08zbGZYbm83U2loVlFSWkNWQ2dvVkVJV1FWVW9BcFZ0YllRQUF3QW4vL1FDRWdMVEFBOEFJUUFwQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXQXpjekZ5TW5Nd2NCSFZCdE9UbHRVRkJ0T0RodFVETkVJeU5FTXpORklpSkZZV3BVYVZKWExGZ01PM3BlWDNrN08zbGZYbm83U2loVlFSWkNWQ2dvVkVJV1FWVW9BaEdFaEcxdEFBQUVBQ2YvOUFJU0E0c0FEd0FoQUNrQUxnQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalkxTlRRbUppTWlCZ1lWRlJRV0ZnTTNNeGNqSnpNSE56Y3pGd2NCSFZCdE9UbHRVRkJ0T0RodFVETkVJeU5FTXpORklpSkZZV3BVYVZKWExGZ09WbVFCYnd3N2VsNWZlVHM3ZVY5ZWVqdEtLRlZCRmtKVUtDaFVRaFpCVlNnQ0VZU0ViVzI0aEFPQkFBQUVBQ2YvU0FJU0F0TUFEd0FoQUNVQUxRQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalkxTlRRbUppTWlCZ1lWRlJRV0ZoYzFNeFVETnpNWEl5Y3pCd0VkVUcwNU9XMVFVRzA0T0cxUU0wUWpJMFF6TTBVaUlrVURYOE5xVkdsU1Z5eFlERHQ2WGw5NU96dDVYMTU2TzBvb1ZVRVdRbFFvS0ZSQ0ZrRlZLUFpmWHdNSGhJUnRiUUFFQUNmLzlBSVNBNHNBRHdBaEFDa0FMZ0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGZ00zTXhjakp6TUhOeU1uTnpNQkhWQnRPVGx0VUZCdE9EaHRVRE5FSXlORU16TkZJaUpGWVdwVWFWSlhMRmg0VFc0Qll3dzdlbDVmZVRzN2VWOWVlanRLS0ZWQkZrSlVLQ2hVUWhaQlZTZ0NFWVNFYlcyNGdRTUFCQUFuLy9RQ0VnT1hBQThBSVFBcEFFSUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUROek1YSXljekJ6YzFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWQVIxUWJUazViVkJRYlRnNGJWQXpSQ01qUkRNelJTSWlSV0ZxVkdsU1Z5eFlLZzBWRUJJU1FBc2NHd29SSVJ3UkVoOFVERHQ2WGw5NU96dDVYMTU2TzBvb1ZVRVdRbFFvS0ZSQ0ZrRlZLQUlSaElSdGJiZzhDUW9NQ0NVREF3SUZEUllTRWhnT0Fod0FBQVFBSi8vMEFoSURpQUFQQUNFQUtRQkJBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdBemN6RnlNbk13Y25ORFkyTXpJV0ZqTXlOamN6RGdJaklpWW1JeUlHQndFZFVHMDVPVzFRVUcwNE9HMVFNMFFqSTBRek0wVWlJa1ZoYWxScFVsY3NXRjBUSlI0YU1DMFdFQThDT1FFVEpSNFpNQzBXRUJBQ0REdDZYbDk1T3p0NVgxNTZPMG9vVlVFV1FsUW9LRlJDRmtGVktBSVJoSVJ0YmRjYkxSb1FFaElRR3l3YkVSRVNFQUFFQUNmLzlBSVNBdE1BRHdBaEFDWUFLd0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGaE1uTnpNWEl5YzNNeGNCSFZCdE9UbHRVRkJ0T0RodFVETkVJeU5FTXpORklpSkZXMVFCWHo3WFZBRmdQZ3c3ZWw1ZmVUczdlVjllZWp0S0tGVkJGa0pVS0NoVVFoWkJWU2dDRVlFRGhJRURoQUFBQkFBbi8vUUNFZ0xSQUE4QUlRQWxBQ2tBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMk5UVTBKaVlqSWdZR0ZSVVVGaFlETlRNVk16VXpGUUVkVUcwNU9XMVFVRzA0T0cxUU0wUWpJMFF6TTBVaUlrVmFXV1paRER0NlhsOTVPenQ1WDE1Nk8wb29WVUVXUWxRb0tGUkNGa0ZWS0FJM1hGeGNYQUFBQlFBbi8vUUNFZ05xQUE4QUlRQWxBQ2tBTFFBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmdNMU14VXpOVE1WSlRVaEZRRWRVRzA1T1cxUVVHMDRPRzFRTTBRakkwUXpNMFVpSWtWYVdXWlovdDRCTEF3N2VsNWZlVHM3ZVY5ZWVqdEtLRlZCRmtKVUtDaFVRaFpCVlNnQ04xeGNYRnkwUVVFQUJBQW4vL1FDRWdOcUFBOEFJUUFsQUNrQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZVE5UTVZKelVoRlFFZFVHMDVPVzFRVUcwNE9HMVFNMFFqSTBRek0wVWlJa1VEWDhZQkxBdzdlbDVmZVRzN2VWOWVlanRLS0ZWQkZrSlVLQ2hVUWhaQlZTZ0NNMTlmdUVGQkFBQURBQ2YvU0FJU0Fob0FEd0FoQUNVQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZWE5UTVZBUjFRYlRrNWJWQlFiVGc0YlZBelJDTWpSRE16UlNJaVJRTmZERHQ2WGw5NU96dDVYMTU2TzBvb1ZVRVdRbFFvS0ZSQ0ZrRlZLUFpmWHdBREFDZi85QUlTQXRNQUR3QWhBQ1lBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMk5UVTBKaVlqSWdZR0ZSVVVGaFlUSXljM013RWRVRzA1T1cxUVVHMDRPRzFRTTBRakkwUXpNMFVpSWtWcFRXNEJZd3c3ZWw1ZmVUczdlVjllZWp0S0tGVkJGa0pVS0NoVVFoWkJWU2dDRVlFREFBQURBQ2YvOUFJU0F0OEFEd0FoQURvQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZVE5UTXlOalUwSmlNak5UNENNekllQWhVVUJnWUhGUUVkVUcwNU9XMVFVRzA0T0cxUU0wUWpJMFF6TTBVaUlrVWJEUlVRRWhKQUN4d2JDaEVoSEJFU0h4UU1PM3BlWDNrN08zbGZYbm83U2loVlFSWkNWQ2dvVkVJV1FWVW9BaEU4Q1FvTUNDVURBd0lGRFJZU0VoZ09BaHdBQXdBbi8vUUNjZ0t1QUE4QUlRQXRBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdFelUyTmpjak5UTVZGQVlHQVIxUWJUazViVkJRYlRnNGJWQXpSQ01qUkRNelJTSWlSYjQ0UkFvMGVDdFlERHQ2WGw5NU96dDVYMTU2TzBvb1ZVRVdRbFFvS0ZSQ0ZrRlZLQUYyTlFjcktHczJPRk15QUFRQUovLzBBbklDMHdBUEFDRUFMUUF5QUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXRXpVMk5qY2pOVE1WRkFZR0pUY3pGd2NCSFZCdE9UbHRVRkJ0T0RodFVETkVJeU5FTXpORklpSkZ2amhFQ2pSNEsxaisrbFprQVc4TU8zcGVYM2s3TzNsZlhubzdTaWhWUVJaQ1ZDZ29WRUlXUVZVb0FYWTFCeXNvYXpZNFV6S1VoQU9CQUFBRUFDZi9TQUp5QXE0QUR3QWhBQzBBTVFBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmhNMU5qWTNJelV6RlJRR0JnRTFNeFVCSFZCdE9UbHRVRkJ0T0RodFVETkVJeU5FTXpORklpSkZ2amhFQ2pSNEsxaisvbDhNTzNwZVgzazdPM2xmWG5vN1NpaFZRUlpDVkNnb1ZFSVdRVlVvQVhZMUJ5c29helk0VXpMOWpWOWZBQUFFQUNmLzlBSnlBdE1BRHdBaEFDMEFNZ0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGaE0xTmpZM0l6VXpGUlFHQmljakp6Y3pBUjFRYlRrNWJWQlFiVGc0YlZBelJDTWpSRE16UlNJaVJiNDRSQW8wZUN0WW5FMXVBV01NTzNwZVgzazdPM2xmWG5vN1NpaFZRUlpDVkNnb1ZFSVdRVlVvQVhZMUJ5c29helk0VXpLVWdRTUFBQVFBSi8vMEFuSUMzd0FQQUNFQUxRQkdBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdFelUyTmpjak5UTVZGQVlHSnpVek1qWTFOQ1lqSXpVK0FqTXlIZ0lWRkFZR0J4VUJIVkJ0T1RsdFVGQnRPRGh0VURORUl5TkVNek5GSWlKRnZqaEVDalI0SzFqcURSVVFFaEpBQ3h3YkNoRWhIQkVTSHhRTU8zcGVYM2s3TzNsZlhubzdTaWhWUVJaQ1ZDZ29WRUlXUVZVb0FYWTFCeXNvYXpZNFV6S1VQQWtLREFnbEF3TUNCUTBXRWhJWURnSWNBQVFBSi8vMEFuSUMwQUFQQUNFQUxRQkZBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdFelUyTmpjak5UTVZGQVlHSlRRMk5qTXlGaFl6TWpZM013NENJeUltSmlNaUJnY0JIVkJ0T1RsdFVGQnRPRGh0VURORUl5TkVNek5GSWlKRnZqaEVDalI0SzFqK2p4TWxIaG93TFJZUUR3STVBUk1sSGhrd0xSWVFFQUlNTzNwZVgzazdPM2xmWG5vN1NpaFZRUlpDVkNnb1ZFSVdRVlVvQVhZMUJ5c29helk0VXpLekd5MGFFQklTRUJzc0d4RVJFaEFBQkFBbi8vUUNFZ0xUQUE4QUlRQW1BQ3NBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMk5UVTBKaVlqSWdZR0ZSVVVGaFlETnpNWEJ6TTNNeGNIQVIxUWJUazViVkJRYlRnNGJWQXpSQ01qUkRNelJTSWlSVVErWXdGVlN6NWtBVlVNTzNwZVgzazdPM2xmWG5vN1NpaFZRUlpDVkNnb1ZFSVdRVlVvQWhHRUE0R0VBNEVBQUFNQUovLzBBaElDMHdBUEFDRUFNd0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGaE15RmhZVkl5NENJeUlHQmdjak5EWTJBUjFRYlRrNWJWQlFiVGc0YlZBelJDTWpSRE16UlNJaVJURTRRQnMrQVE4a0lDQWlEd005R1VBTU8zcGVYM2s3TzNsZlhubzdTaWhWUVJaQ1ZDZ29WRUlXUVZVb0FwVWpOaHdMR2hJU0dnc2NOaU1BQXdBbi8vUUNFZ0s4QUE4QUlRQWxBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdBelVoRlFFZFVHMDVPVzFRVUcwNE9HMVFNMFFqSTBRek0wVWlJa1ZrQVN3TU8zcGVYM2s3TzNsZlhubzdTaWhWUVJaQ1ZDZ29WRUlXUVZVb0FqMUJRUUFEQUNmL1VnSVNBaG9BRHdBaEFEVUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWVhJaVltTlRRMk56TVZCZ1lWRkJZek14VUdCZ0VkVUcwNU9XMVFVRzA0T0cxUU0wUWpJMFF6TTBVaUlrV1dHQzBlSHhVNkN4a1lIaVlQSmd3N2VsNWZlVHM3ZVY5ZWVqdEtLRlZCRmtKVUtDaFVRaFpCVlNqc0VDWWdJVEFUQmdvbEdCVWdLZ2NIQUFBREFCdi8wQUllQWtBQUR3QWhBQ1VBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMk5UVTBKaVlqSWdZR0ZSVVVGaFlIQVRNQkFSMVFiVGs1YlZCUWJUZzRiVkF6UkNNalJETXpSU0lpUmM4QndFUCtRZ3c3ZWw1ZmVUczdlVjllZWp0S0tGVkJGa0pVS0NoVVFoWkJWU2h1QW5EOWtBQUVBQnYvMEFJZUF0TUFEd0FoQUNVQUtnQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalkxTlRRbUppTWlCZ1lWRlJRV0ZnY0JNd0VUTnpNWEJ3RWRVRzA1T1cxUVVHMDRPRzFRTTBRakkwUXpNMFVpSWtYUEFjQkQva0tKVm1RQmJ3dzdlbDVmZVRzN2VWOWVlanRLS0ZWQkZrSlVLQ2hVUWhaQlZTaHVBbkQ5a0FKL2hBT0JBQUFEQUNmLzlBSVNBdEFBRHdBaEFEa0FBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWURORFkyTXpJV0ZqTXlOamN6RGdJaklpWW1JeUlHQndFZFVHMDVPVzFRVUcwNE9HMVFNMFFqSTBRek0wVWlJa1ZzRXlVZUdqQXRGaEFQQWprQkV5VWVHVEF0RmhBUUFndzdlbDVmZVRzN2VWOWVlanRLS0ZWQkZrSlVLQ2hVUWhaQlZTZ0NNQnN0R2hBU0VoQWJMQnNSRVJJUUFBQUVBQ2YvOUFJU0EyQUFEd0FoQURrQVBRQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalkxTlRRbUppTWlCZ1lWRlJRV0ZnTTBOall6TWhZV016STJOek1PQWlNaUppWWpJZ1lISnpVaEZRRWRVRzA1T1cxUVVHMDRPRzFRTTBRakkwUXpNMFVpSWtWc0V5VWVHakF0RmhBUEFqa0JFeVVlR1RBdEZoQVFBakFCTEF3N2VsNWZlVHM3ZVY5ZWVqdEtLRlZCRmtKVUtDaFVRaFpCVlNnQ01Cc3RHaEFTRWhBYkxCc1JFUklRc1VGQkFBQURBQ2YvOUFOL0Fob0FLQUE2QUVRQUFFVWlKaVkxTkRZMk16SVdGelkyTXpJV0ZoVVZJUjRDTXpJK0FqY3pGQTRDSXlJbUp3WUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdKU0UwTGdJaklnWUdBUmRPYWpnNWJFNUVZaHdkWTBSSlpETCtpd0VoUWpBaE15SVNBVlllT2xNMlEyRWNIV05ETWtNaElVTXlNVVFoSVVRQkl3RVpGQ1F4SGk0K0lndzdlbDVmZVRzeE16TXhPWEJXS2o5UkpSRWdMQm9xUnpJY01USXlNVW9vVkVJVlExUW9LRlJDRlVOVUtQVXNQQ1lSSWtZQUFnQkYvMU1DRHdJYUFCVUFLQUFBVnhFekZ6TTJOak15RmhZVkZBWUdJeUltSmljakZUY3lOalkxTlRRbUppTWlCZ1lWRlJRZUFrVkdDUWNiVkRWQ1hESXpYRDBpUERBU0Jvb3hQaDRnUFMweFB4MFZKekt0QXJ0TExDczZlMkpjZVRvUUl4dnY3aWRUUVJWRlV5UXJWajRQTjBrc0VnQUFBZ0JGLzFNQ0N3TFlBQllBS1FBQVZ4RXpFVE0rQWpNeUZoWVZGQVlHSXlJbUppY2pGVGN5TmpZMU5UUW1KaU1pRGdJVkZSUVdGa1ZZQmhJeFBTRThXakV5V3o0aE96QVJCb3NzUEI4Y1BDOGNNaWNXSFQ2dEE0WCs5QndpRURwNFhtRjdPaEVqR3UvdUpGTkVGVUpUSnhJclNUWVJQbFVzQUFBQ0FDZi9Vd0h5QWhvQUZRQW9BQUJGTlNNT0FpTWlKaVkxTkRZMk16SVdGek0zTXhFbk1qNENOVFUwSmlZaklnWUdGUlVVRmhZQm1nWVNNVHdoUFZ3ME0xMUJOVlFiQndoSDRoMHlKUllkUGpJdFBTQWVQcTN2R3lNUU9ubGNZbnM2S3l4TC9VWHVFaXhKTnc4K1Zpc2tVMFVWUVZNbkFBQUJBRVVBQUFGQUFob0FFd0FBY3hFekZ6TStBak15RmhjVkl5SU9BaFVSUlVjSUJ3Z2NNQ01QR1FZaElqRWdEd0lPVnhrdEhRVURVUmNxT2lIKzJ3QUFBZ0JGQUFBQlFnTFRBQk1BR0FBQWN4RXpGek0rQWpNeUZoY1ZJeUlPQWhVUkF6Y3pGd2RGUndnSENCd3dJdzhaQmlFaU1TQVBGbFprQVc4Q0RsY1pMUjBGQTFFWEtqb2gvdHNDVDRRRGdRQUNBQ2NBQUFGT0F0TUFFd0FiQUFCekVUTVhNejRDTXpJV0Z4VWpJZzRDRlJFRE14Y2pOek1ISTBWSENBY0lIREFqRHhrR0lTSXhJQTkyVWxndFdGSnFVd0lPVnhrdEhRVURVUmNxT2lIKzJ3TFRiVzJFQUFJQU9QN2NBVUFDR2dBVEFCOEFBSE1STXhjelBnSXpNaFlYRlNNaURnSVZFUU0xTWpZMUl6VXpGUlFHQmtWSENBY0lIREFqRHhrR0lTSXhJQTlsSEJvc1h4c3ZBZzVYR1MwZEJRTlJGeW82SWY3Yi90d29KaDVoVHkwM0dnQURBQUlBQUFGQUF0TUFFd0FZQUIwQUFITVJNeGN6UGdJek1oWVhGU01pRGdJVkVSTW5Oek1YSXljM014ZEZSd2dIQ0J3d0l3OFpCaUVpTVNBUFJsUUJYejdYVkFGZ1BnSU9WeGt0SFFVRFVSY3FPaUgrMndKUGdRT0VnUU9FQUFBQ0FDa0FBQUZNQXRNQUV3QWxBQUJ6RVRNWE16NENNeklXRnhVaklnNENGUkVUTWhZV0ZTTXVBaU1pQmdZSEl6UTJOa1ZIQ0FjSUhEQWpEeGtHSVNJeElBOGNPVDhiUFFFUUpDQWdJZzhEUFJsQUFnNVhHUzBkQlFOUkZ5bzZJZjdiQXRNak5od0xHaElTR2dzY05pTUFBUUFqLy9RQjFnSVpBRUlBQUZjaUxnSTFORFEzTXdZVUZSNENNekkyTmpVMEppWW5MZ00xTkQ0Q016SWVBaFVVRkFjak5UUW1KaU1pRGdJVkZCWVdGeDRERlJRT0F2MDJValljQVZjQkFTTStKaUU0SVN0R0ppQkFNeDhkTmswdk1rc3lHQUZXRlRNdEhTb2NEaUk1SVNOSlBTVWdPMDhNRmlvNkpRVUpBd1FHQXlNb0VCRWpHeUVqRkFzSkZpQXpKeU0ySmhNV0tETWRCZ3NEQ3hRbEZ3a1RHUkFhSEJJTENoVWdOeTBxUGlnVEFBSUFJLy8wQWRZQzB3QkNBRWNBQUZjaUxnSTFORFEzTXdZVUZSNENNekkyTmpVMEppWW5MZ00xTkQ0Q016SWVBaFVVRkFjak5UUW1KaU1pRGdJVkZCWVdGeDRERlJRT0FnTTNNeGNIL1RaU05od0JWd0VCSXo0bUlUZ2hLMFltSUVBekh4MDJUUzh5U3pJWUFWWVZNeTBkS2h3T0lqa2hJMGs5SlNBN1QyTldaQUZ1REJZcU9pVUZDUU1FQmdNaktCQVJJeHNoSXhRTENSWWdNeWNqTmlZVEZpZ3pIUVlMQXdzVUpSY0pFeGtRR2h3U0N3b1ZJRGN0S2o0b0V3SmJoQU9CQUFBQ0FDUC85QUhXQXRNQVFnQktBQUJYSWk0Q05UUTBOek1HRkJVZUFqTXlOalkxTkNZbUp5NEROVFErQWpNeUhnSVZGQlFISXpVMEppWWpJZzRDRlJRV0ZoY2VBeFVVRGdJRE14Y2pOek1ISS8wMlVqWWNBVmNCQVNNK0ppRTRJU3RHSmlCQU14OGROazB2TWtzeUdBRldGVE10SFNvY0RpSTVJU05KUFNVZ08wL0RVbGdzVjFKcVV3d1dLam9sQlFrREJBWURJeWdRRVNNYklTTVVDd2tXSURNbkl6WW1FeFlvTXgwR0N3TUxGQ1VYQ1JNWkVCb2NFZ3NLRlNBM0xTbytLQk1DMzIxdGhBQUFBZ0FqLzFBQjFnSVpBRUlBV2dBQVZ5SXVBalUwTkRjekJoUVZIZ0l6TWpZMk5UUW1KaWN1QXpVMFBnSXpNaDRDRlJRVUJ5TTFOQ1ltSXlJT0FoVVVGaFlYSGdNVkZBNENCeUltSnpVek1qWTFOQ1lqSXpjekJ6SVdGaFVVRGdMOU5sSTJIQUZYQVFFalBpWWhPQ0VyUmlZZ1FETWZIVFpOTHpKTE1oZ0JWaFV6TFIwcUhBNGlPU0VqU1QwbElEdFBMUmN3RkdBVEZSRVhNaEE3QnhvckdSVWlLUXdXS2pvbEJRa0RCQVlESXlnUUVTTWJJU01VQ3drV0lETW5JelltRXhZb014MEdDd01MRkNVWENSTVpFQm9jRWdzS0ZTQTNMU28rS0JPa0JBUW5EZzRNREZneURCc1hGaDBSQndBQUFnQWovL1FCMWdMVEFFSUFTZ0FBVnlJdUFqVTBORGN6QmhRVkhnSXpNalkyTlRRbUppY3VBelUwUGdJek1oNENGUlFVQnlNMU5DWW1JeUlPQWhVVUZoWVhIZ01WRkE0Q0F6Y3pGeU1uTXdmOU5sSTJIQUZYQVFFalBpWWhPQ0VyUmlZZ1FETWZIVFpOTHpKTE1oZ0JWaFV6TFIwcUhBNGlPU0VqU1QwbElEdFB3bWxVYVZGWUxGZ01GaW82SlFVSkF3UUdBeU1vRUJFakd5RWpGQXNKRmlBekp5TTJKaE1XS0RNZEJnc0RDeFFsRndrVEdSQWFIQklMQ2hVZ055MHFQaWdUQWx1RWhHMXRBQUlBSS83Y0FkWUNHUUJDQUU0QUFGY2lMZ0kxTkRRM013WVVGUjRDTXpJMk5qVTBKaVluTGdNMU5ENENNekllQWhVVUZBY2pOVFFtSmlNaURnSVZGQllXRng0REZSUU9BZ00xTWpZMUl6VXpGUlFHQnYwMlVqWWNBVmNCQVNNK0ppRTRJU3RHSmlCQU14OGROazB2TWtzeUdBRldGVE10SFNvY0RpSTVJU05KUFNVZ08wOW1IQnNzWGhvdkRCWXFPaVVGQ1FNRUJnTWpLQkFSSXhzaEl4UUxDUllnTXljak5pWVRGaWd6SFFZTEF3c1VKUmNKRXhrUUdod1NDd29WSURjdEtqNG9FLzdvS0NZZVlVOHROeG9BLy84QUkvOUlBZFlDR1FZbUFYb0FBQUFIQXVJQTBRQUFBQUVBVHdBQUFqMEMzd0F3QUFCekVUUStBak15SGdJVkZBWUhGUllXRlJRR0JpTWpOVE15TmpZMU5DWW1JeU0xTXpJMk5qVTBKaU1pQmdZVkVVOG5RbGN4TjFVNUhrRTJRMDQzWWo5bVhDazlJaVErSmx4U0lUVWhSa011UkNVQ0JEdFROQmthTUVBbk9WY1NCQkZoUjBKZE1Fb2ZQaTRxUENCTUlqZ2pNa0FnUUMvOStRQUFBUUFNQUFBQkZ3TGJBQk1BQUhNUkl6VXpOVFEyTmpNeUZoWVhGU01pQmhVUldrNU9Fakl0RGhzWkNqVVpGd0hFU2xRZU9DTURCUU0vR1JmOW53QUJBQkgvOUFFUUFxRUFGd0FBVnlJbUpqVVJJelV6TnpNVk14VWpFUlFXTXpNVkRnTEFLUzRVUkVZUVJtTmpFaGs0Q2h3ZERCOHpIUUZoU3BPVFN2NnNHUms2QlFZRkFBQUNBQkgvOUFFUUFxRUFBd0FiQUFCM05UTVZBeUltSmpVUkl6VXpOek1WTXhVakVSUVdNek1WRGdJUjlVWXBMaFJFUmhCR1kyTVNHVGdLSEIzMk9UbisvaDh6SFFGaFNwT1RTdjZzR1JrNkJRWUZBQUFDQUJILzlBRW5BdE1BRndBYkFBQlhJaVltTlJFak5UTTNNeFV6RlNNUkZCWXpNeFVPQWhNMU13ZkFLUzRVUkVZUVJtTmpFaGs0Q2h3ZEExY1lEQjh6SFFGaFNwT1RTdjZzR1JrNkJRWUZBamVvcUFBQ0FCSC9VQUVsQXFFQUZ3QXZBQUJYSWlZbU5SRWpOVE0zTXhVekZTTVJGQll6TXhVT0FnY2lKaWMxTXpJMk5UUW1JeU0zTXdjeUZoWVZGQTRDd0NrdUZFUkdFRVpqWXhJWk9Bb2NIUjBYTUJSZ0V4VVJGeklRT3djYUt4a1ZJaWtNSHpNZEFXRktrNU5LL3F3WkdUb0ZCZ1drQkFRbkRnNE1ERmd5REJzWEZoMFJCd0FDQUJIKzNBRVFBcUVBRndBakFBQlhJaVltTlJFak5UTTNNeFV6RlNNUkZCWXpNeFVPQWdNMU1qWTFJelV6RlJRR0JzQXBMaFJFUmhCR1kyTVNHVGdLSEIxV0hCc3NYaG92REI4ekhRRmhTcE9UU3Y2c0dSazZCUVlGL3Vnb0poNWhUeTAzR2dBQ0FCSC9TQUVRQXFFQUZ3QWJBQUJYSWlZbU5SRWpOVE0zTXhVekZTTVJGQll6TXhVT0FnYzFNeFhBS1M0VVJFWVFSbU5qRWhrNENod2RTMTRNSHpNZEFXRktrNU5LL3F3WkdUb0ZCZ1dzWDE4QUFRQkEvL1FCN2dJT0FCZ0FBRmNpSmpVUk14RVVIZ0l6TWpZMk5SRXpFU01uSXc0QzZFeGNXQkFlS1JnbVFDbFlSd2dIRlRWQkRFNWhBV3Yrb1NFcUdBb2tSUzRCTmYzeVR5QW9Fd0FBQWdCQS8vUUI3Z0xUQUJnQUhRQUFWeUltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJRE56TVhCK2hNWEZnUUhpa1lKa0FwV0VjSUJ4VTFRU2hYWXdGdURFNWhBV3Yrb1NFcUdBb2tSUzRCTmYzeVR5QW9Fd0piaEFPQkFBSUFRUC8wQWU0QzB3QVlBQ29BQUZjaUpqVVJNeEVVSGdJek1qWTJOUkV6RVNNbkl3NENFeUltSmpVekhnSXpNalkyTnpNVUJnYm9URnhZRUI0cEdDWkFLVmhIQ0FjVk5VRUxPRDhhUGdNUEloOGhKQThCUFJwQURFNWhBV3Yrb1NFcUdBb2tSUzRCTmYzeVR5QW9Fd0pxSkRZYkNoc1NFaHNLR3pZa0FBSUFRUC8wQWU0QzB3QVlBQ0FBQUZjaUpqVVJNeEVVSGdJek1qWTJOUkV6RVNNbkl3NENBek1YSXpjekJ5UG9URnhZRUI0cEdDWkFLVmhIQ0FjVk5VR0hVVmdzV0ZGcFZBeE9ZUUZyL3FFaEtoZ0tKRVV1QVRYOThrOGdLQk1DMzIxdGhBQUNBRUQvOUFIdUF0TUFHQUFnQUFCWElpWTFFVE1SRkI0Q016STJOalVSTXhFakp5TU9BZ00zTXhjakp6TUg2RXhjV0JBZUtSZ21RQ2xZUndnSEZUVkJoMnBUYWxKWUxGY01UbUVCYS82aElTb1lDaVJGTGdFMS9mSlBJQ2dUQWx1RWhHMXRBQUFEQUVELzlBSHVBdE1BR0FBZEFDSUFBRmNpSmpVUk14RVVIZ0l6TWpZMk5SRXpFU01uSXc0Q0V5YzNNeGNqSnpjekYraE1YRmdRSGlrWUprQXBXRWNJQnhVMVFUVlVBVjgrMTFRQllEME1UbUVCYS82aElTb1lDaVJGTGdFMS9mSlBJQ2dUQWx1QkE0U0JBNFFBQUFNQVFQLzBBZTRDMFFBWUFCd0FJQUFBVnlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SSXljakRnSUROVE1WTXpVekZlaE1YRmdRSGlrWUprQXBXRWNJQnhVMVFZQlpabGtNVG1FQmEvNmhJU29ZQ2lSRkxnRTEvZkpQSUNnVEFvRmNYRnhjQUFBRUFFRC85QUh1QTRFQUdBQWNBQ0FBSlFBQVZ5SW1OUkV6RVJRZUFqTXlOalkxRVRNUkl5Y2pEZ0lETlRNVk16VXpGU2MzTXhjSDZFeGNXQkFlS1JnbVFDbFlSd2dIRlRWQmdGbG1XY0JYWXdGdURFNWhBV3Yrb1NFcUdBb2tSUzRCTmYzeVR5QW9Fd0tCWEZ4Y1hJaUVBNEVBQUFRQVFQLzBBZTREZ1FBWUFCd0FJQUFvQUFCWElpWTFFVE1SRkI0Q016STJOalVSTXhFakp5TU9BZ00xTXhVek5UTVZBVE1YSXpjekJ5UG9URnhZRUI0cEdDWkFLVmhIQ0FjVk5VR0FXV1paL3VGUldDeFlVV2xVREU1aEFXditvU0VxR0Fva1JTNEJOZjN5VHlBb0V3S0JYRnhjWEFFTWJXMkVBQUFFQUVELzlBSHVBNEVBR0FBY0FDQUFKUUFBVnlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SSXljakRnSUROVE1WTXpVekZTY2pKemN6NkV4Y1dCQWVLUmdtUUNsWVJ3Z0hGVFZCZ0ZsbVdWVk5iZ0ZqREU1aEFXditvU0VxR0Fva1JTNEJOZjN5VHlBb0V3S0JYRnhjWElpQkF3QUVBRUQvOUFIdUEyb0FHQUFjQUNBQUpBQUFWeUltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJRE5UTVZNelV6RlNVMUlSWG9URnhZRUI0cEdDWkFLVmhIQ0FjVk5VR0FXV1paL3Q0QkxBeE9ZUUZyL3FFaEtoZ0tKRVV1QVRYOThrOGdLQk1DZ1Z4Y1hGeTBRVUVBQWdCQS8wZ0I3Z0lPQUJnQUhBQUFWeUltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJSE5UTVY2RXhjV0JBZUtSZ21RQ2xZUndnSEZUVkJJMThNVG1FQmEvNmhJU29ZQ2lSRkxnRTEvZkpQSUNnVHJGOWZBQUlBUVAvMEFlNEMwd0FZQUIwQUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDRXlNbk56UG9URnhZRUI0cEdDWkFLVmhIQ0FjVk5VRkRUVzRCWXd4T1lRRnIvcUVoS2hnS0pFVXVBVFg5OGs4Z0tCTUNXNEVEQUFBQ0FFRC85QUh1QXQ4QUdBQXhBQUJYSWlZMUVUTVJGQjRDTXpJMk5qVVJNeEVqSnlNT0FnTTFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWNkV4Y1dCQWVLUmdtUUNsWVJ3Z0hGVFZCREEwV0R4RVNRQXNiR3dzUUlod1JFaUFUREU1aEFXditvU0VxR0Fva1JTNEJOZjN5VHlBb0V3SmJQQWtLREFnbEF3TUNCUTBXRWhJWURnSWNBQUlBUVAvMEFuTUMwd0FZQUNRQUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDRXpVMk5qY2pOVE1WRkFZRzZFeGNXQkFlS1JnbVFDbFlSd2dIRlRWQm5UaERDelY0S2xrTVRtRUJhLzZoSVNvWUNpUkZMZ0UxL2ZKUElDZ1RBZVUxQnlzb2F6WTRVeklBQXdCQS8vUUNjd0xUQUJnQUpBQXBBQUJYSWlZMUVUTVJGQjRDTXpJMk5qVVJNeEVqSnlNT0FoTTFOalkzSXpVekZSUUdCaVUzTXhjSDZFeGNXQkFlS1JnbVFDbFlSd2dIRlRWQm5UaERDelY0S2xuKzlWZGpBVzRNVG1FQmEvNmhJU29ZQ2lSRkxnRTEvZkpQSUNnVEFlVTFCeXNvYXpZNFV6SnZoQU9CQUFBREFFRC9TQUp6QXRNQUdBQWtBQ2dBQUZjaUpqVVJNeEVVSGdJek1qWTJOUkV6RVNNbkl3NENFelUyTmpjak5UTVZGQVlHQVRVekZlaE1YRmdRSGlrWUprQXBXRWNJQnhVMVFaMDRRd3MxZUNwWi92cGZERTVoQVd2K29TRXFHQW9rUlM0Qk5mM3lUeUFvRXdIbE5RY3JLR3MyT0ZNeS9XaGZYd0FBQXdCQS8vUUNjd0xUQUJnQUpBQXBBQUJYSWlZMUVUTVJGQjRDTXpJMk5qVVJNeEVqSnlNT0FoTTFOalkzSXpVekZSUUdCaWNqSnpjejZFeGNXQkFlS1JnbVFDbFlSd2dIRlRWQm5UaERDelY0S2xtZ1RXNEJZd3hPWVFGci9xRWhLaGdLSkVVdUFUWDk4azhnS0JNQjVUVUhLeWhyTmpoVE1tK0JBd0FBQXdCQS8vUUNjd0xmQUJnQUpBQTlBQUJYSWlZMUVUTVJGQjRDTXpJMk5qVVJNeEVqSnlNT0FoTTFOalkzSXpVekZSUUdCaWMxTXpJMk5UUW1JeU0xUGdJek1oNENGUlFHQmdjVjZFeGNXQkFlS1JnbVFDbFlSd2dIRlRWQm5UaERDelY0S2xudkRSWVBFUkpBQ3hzYkN4QWlIQkVTSUJNTVRtRUJhLzZoSVNvWUNpUkZMZ0UxL2ZKUElDZ1RBZVUxQnlzb2F6WTRVekp2UEFrS0RBZ2xBd01DQlEwV0VoSVlEZ0ljQUFNQVFQLzBBbk1DMHdBWUFDUUFQQUFBVnlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SSXljakRnSVROVFkyTnlNMU14VVVCZ1lsUGdJek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0IraE1YRmdRSGlrWUprQXBXRWNJQnhVMVFaMDRRd3MxZUNwWi9wb0JFQ0liRnlzcUZBME9Bak1SSXhvWEtpb1VEZzhCREU1aEFXditvU0VxR0Fva1JTNEJOZjN5VHlBb0V3SGxOUWNyS0dzMk9GTXlqaHN0R2hBU0VoQWJMQnNSRVJJUUFBTUFRUC8wQWU0QzB3QVlBQjBBSWdBQVZ5SW1OUkV6RVJRZUFqTXlOalkxRVRNUkl5Y2pEZ0lETnpNWEJ6TTNNeGNINkV4Y1dCQWVLUmdtUUNsWVJ3Z0hGVFZCYWo1akFWVkxQbVFCVlF4T1lRRnIvcUVoS2hnS0pFVXVBVFg5OGs4Z0tCTUNXNFFEZ1lRRGdRQUFBZ0JBLy9RQjdnTFRBQmdBS2dBQVZ5SW1OUkV6RVJRZUFqTXlOalkxRVRNUkl5Y2pEZ0lUTWhZV0ZTTXVBaU1pQmdZSEl6UTJOdWhNWEZnUUhpa1lKa0FwV0VjSUJ4VTFRUXM0UUJvOUFROGtJUjhpRHdNK0dqOE1UbUVCYS82aElTb1lDaVJGTGdFMS9mSlBJQ2dUQXQ4ak5od0xHaElTR2dzY05pTUFBZ0JBLy9RQjdnSzhBQmdBSEFBQVZ5SW1OUkV6RVJRZUFqTXlOalkxRVRNUkl5Y2pEZ0lETlNFVjZFeGNXQkFlS1JnbVFDbFlSd2dIRlRWQmlnRXNERTVoQVd2K29TRXFHQW9rUlM0Qk5mM3lUeUFvRXdLSFFVRUFBZ0JBLzFJQ0lRSU9BQk1BTEFBQVJTSW1KalUwTmpjekZRWUdGUlFXTXpNVkJnWWxJaVkxRVRNUkZCNENNekkyTmpVUk14RWpKeU1PQWdIZUZ5NGRIaFU0Q2hjWUhTWVBKdjc4VEZ4WUVCNHBHQ1pBS1ZoSENBY1ZOVUd1RUNVZ0lTOFRCZ29rR0JVZktnY0hvazVoQVd2K29TRXFHQW9rUlM0Qk5mM3lUeUFvRXdBQUF3QkEvL1FCN2dML0FCZ0FKQUF3QUFCWElpWTFFVE1SRkI0Q016STJOalVSTXhFakp5TU9BaE1pSmpVME5qTXlGaFVVQmljeU5qVTBKaU1pQmhVVUZ1aE1YRmdRSGlrWUprQXBXRWNJQnhVMVFRd29OallvS2pVMUtoWWJHeFlVSEJ3TVRtRUJhLzZoSVNvWUNpUkZMZ0UxL2ZKUElDZ1RBbEExS0NrMU5Ta29OU3djRlJVZEhSVVZIQUFDQUVELzlBSHVBdEFBR0FBd0FBQlhJaVkxRVRNUkZCNENNekkyTmpVUk14RWpKeU1PQWdNK0FqTXlGaFl6TWpZM013NENJeUltSmlNaUJnZm9URnhZRUI0cEdDWkFLVmhIQ0FjVk5VR1RBUkltSFJvd0xoWVBFQUk1QVJNbUhSa3dMaFlQRVFJTVRtRUJhLzZoSVNvWUNpUkZMZ0UxL2ZKUElDZ1RBbm9iTFJvUUVoSVFHeXdiRVJFU0VBQUFBUUFOQUFBQjZ3SU9BQThBQUhNRE14TWVBaGN6UGdJM0V6TUQwTU5jWUFjU0V3WUZCeElUQjE5Wnd3SU8vdmtUT1RzWEZqczVGQUVIL2ZJQUFRQUxBQUFDeUFJT0FDY0FBSE1ETXhNZUFoY3pQZ0kzRXpNVEhnSVhNejRDTnhNekF5TURMZ0luSXc0Q0J3T3FuMXRRQmdzTEFnWUVDd2tEU0Y5SkJBb0xBZ1lFQ2d3RlQxU2VXa1FFREFzRUJnSUpEQWhFQWc3KzN4VXhLUXNUTUN3TUFTRCs0QkV0TEJFUUt5MFJBU0w5OGdFUUV6TTFGQTh1Tnh2KzhBQUNBQXNBQUFMSUF0TUFKd0FzQUFCekF6TVRIZ0lYTXo0Q054TXpFeDRDRnpNK0FqY1RNd01qQXk0Q0p5TU9BZ2NERXpjekZ3ZXFuMXRRQmdzTEFnWUVDd2tEU0Y5SkJBb0xBZ1lFQ2d3RlQxU2VXa1FFREFzRUJnSUpEQWhFTVZkakFXNENEdjdmRlRFcEN4TXdMQXdCSVA3Z0VTMHNFUkFyTFJFQkl2M3lBUkFUTXpVVUR5NDNHLzd3QWsrRUE0RUFBQUlBQ3dBQUFzZ0Mwd0FuQUM4QUFITURNeE1lQWhjelBnSTNFek1USGdJWE16NENOeE16QXlNRExnSW5JdzRDQndNRE56TVhJeWN6QjZxZlcxQUdDd3NDQmdRTENRTklYMGtFQ2dzQ0JnUUtEQVZQVko1YVJBUU1Dd1FHQWdrTUNFUXVhbE5xVWxjc1dBSU8vdDhWTVNrTEV6QXNEQUVnL3VBUkxTd1JFQ3N0RVFFaS9mSUJFQk16TlJRUExqY2IvdkFDVDRTRWJXMEFBd0FMQUFBQ3lBTFJBQ2NBS3dBdkFBQnpBek1USGdJWE16NENOeE16RXg0Q0Z6TStBamNUTXdNakF5NENKeU1PQWdjREF6VXpGVE0xTXhXcW4xdFFCZ3NMQWdZRUN3a0RTRjlKQkFvTEFnWUVDZ3dGVDFTZVdrUUVEQXNFQmdJSkRBaEVKMWxtV1FJTy90OFZNU2tMRXpBc0RBRWcvdUFSTFN3UkVDc3RFUUVpL2ZJQkVCTXpOUlFQTGpjYi92QUNkVnhjWEZ3QUFnQUxBQUFDeUFMVEFDY0FMQUFBY3dNekV4NENGek0rQWpjVE14TWVBaGN6UGdJM0V6TURJd011QWljakRnSUhBeE1qSnpjenFwOWJVQVlMQ3dJR0JBc0pBMGhmU1FRS0N3SUdCQW9NQlU5VW5scEVCQXdMQkFZQ0NRd0lSSnhOYmdGakFnNyszeFV4S1FzVE1Dd01BU0QrNEJFdExCRVFLeTBSQVNMOThnRVFFek0xRkE4dU54dis4QUpQZ1FNQUFRQU9BQUFCOUFJT0FBMEFBSE1UQXpNWE16Y3pCeE1qSnlNSERyMjBhb0FGZ0dTMHZtbUtCWW9CRFFFQnZMeisvdkRMeXdBQUFRQU4vMG9CNndJT0FCMEFBRmNpSmljMU16STJOamNETXhNZUFoY3pQZ00zRXpNRERnTnlHQ01HTEJndUtBN01YR2tIRXhNR0JnUU1EUTBFV1ZteUR5UXNQcllIQVVBVU1Db0NEdjd4RXpjNkZoQW9LeWNQQVJEK0FTdEpOQjBBQWdBTi8wb0I2d0xUQUIwQUlnQUFWeUltSnpVek1qWTJOd016RXg0Q0Z6TStBemNUTXdNT0F4TTNNeGNIY2hnakJpd1lMaWdPekZ4cEJ4TVRCZ1lFREEwTkJGbFpzZzhrTEQ0MlZtTUJicllIQVVBVU1Db0NEdjd4RXpjNkZoQW9LeWNQQVJEK0FTdEpOQjBEQllRRGdRQUFBZ0FOLzBvQjZ3TFRBQjBBSlFBQVZ5SW1KelV6TWpZMk53TXpFeDRDRnpNK0F6Y1RNd01PQXdNM014Y2pKek1IY2hnakJpd1lMaWdPekZ4cEJ4TVRCZ1lFREEwTkJGbFpzZzhrTEQ0cWFsUnBVbGNzV0xZSEFVQVVNQ29DRHY3eEV6YzZGaEFvS3ljUEFSRCtBU3RKTkIwREJZU0ViVzBBQXdBTi8wb0I2d0xSQUIwQUlRQWxBQUJYSWlZbk5UTXlOalkzQXpNVEhnSVhNejRETnhNekF3NERBelV6RlRNMU14VnlHQ01HTEJndUtBN01YR2tIRXhNR0JnUU1EUTBFV1ZteUR5UXNQaU5aWmxtMkJ3RkFGREFxQWc3KzhSTTNPaFlRS0NzbkR3RVEvZ0VyU1RRZEF5dGNYRnhjQUFJQURmOUlBZXNDRGdBZEFDRUFBRmNpSmljMU16STJOamNETXhNZUFoY3pQZ00zRXpNRERnTVhOVE1WY2hnakJpd1lMaWdPekZ4cEJ4TVRCZ1lFREEwTkJGbFpzZzhrTEQ2cFg3WUhBVUFVTUNvQ0R2N3hFemM2RmhBb0t5Y1BBUkQrQVN0Sk5CMENYMThBQUFJQURmOUtBZXNDMHdBZEFDSUFBRmNpSmljMU16STJOamNETXhNZUFoY3pQZ00zRXpNRERnTVRJeWMzTTNJWUl3WXNHQzRvRHN4Y2FRY1RFd1lHQkF3TkRRUlpXYklQSkN3K29FMXVBV08yQndGQUZEQXFBZzcrOFJNM09oWVFLQ3NuRHdFUS9nRXJTVFFkQXdXQkF3QUNBQTMvU2dIckF0OEFIUUEyQUFCWElpWW5OVE15TmpZM0F6TVRIZ0lYTXo0RE54TXpBdzRERXpVek1qWTFOQ1lqSXpVK0FqTXlIZ0lWRkFZR0J4VnlHQ01HTEJndUtBN01YR2tIRXhNR0JnUU1EUTBFV1ZteUR5UXNQbElORlJBU0VrQUxHeHdLRVNFY0VSSWZGTFlIQVVBVU1Db0NEdjd4RXpjNkZoQW9LeWNQQVJEK0FTdEpOQjBEQlR3SkNnd0lKUU1EQWdVTkZoSVNHQTRDSEFBQUFnQU4vMG9CNndLOEFCMEFJUUFBVnlJbUp6VXpNalkyTndNekV4NENGek0rQXpjVE13TU9Bd00xSVJWeUdDTUdMQmd1S0E3TVhHa0hFeE1HQmdRTURRMEVXVm15RHlRc1BpMEJMTFlIQVVBVU1Db0NEdjd4RXpjNkZoQW9LeWNQQVJEK0FTdEpOQjBETVVGQkFBQUNBQTMvU2dIckF0QUFIUUExQUFCWElpWW5OVE15TmpZM0F6TVRIZ0lYTXo0RE54TXpBdzREQXo0Q016SVdGak15TmpjekRnSWpJaVltSXlJR0IzSVlJd1lzR0M0b0RzeGNhUWNURXdZR0JBd05EUVJaV2JJUEpDdytOZ0VTSmg0YUx5NFdFQThDT1FFVEpSNFpNQzBXRUJBQ3RnY0JRQlF3S2dJTy92RVROem9XRUNnckp3OEJFUDRCSzBrMEhRTWtHeTBhRUJJU0VCc3NHeEVSRWhBQUFRQWZBQUFCMGdJT0FBa0FBSE0xQVNFMUlSVUJJUlVmQVNYKzhBR08vdG9CTmk4QmxVb3UvbXBLQUFBQ0FCOEFBQUhTQXRNQUNRQU9BQUJ6TlFFaE5TRVZBU0VWQVRjekZ3Y2ZBU1grOEFHTy90b0JOdjd6Vm1RQmJpOEJsVW91L21wS0FrK0VBNEVBQUFJQUh3QUFBZElDMHdBSkFCRUFBSE0xQVNFMUlSVUJJUlVCTXhjak56TUhJeDhCSmY3d0FZNysyZ0UyL3BOU1dDeFhVbXBUTHdHVlNpNytha29DMDIxdGhBQUFBZ0FmQUFBQjBnTFFBQWtBRFFBQWN6VUJJVFVoRlFFaEZRRTFNeFVmQVNYKzhBR08vdG9CTnY3M1h5OEJsVW91L21wS0FuRmZYd0FCQUViL1NnSHZBZzRBS2dBQVJTSW1KalUxTXhRV0ZqTXlOalkxTlNNT0FpTWlKalVSTXhFVUhnSXpNalkyTlJFekVSUU9BZ0VMTjFrMFZoNHhIREUvSUFZVU1Ud2tTMXhZRHgwbkZ5ZEFLRmdjT1ZhMklFRXlDaDhrRUNGRk5Da2FJeEpQWUFGWC9yVWdLeGdLSTBZeEFSNytLRHBaT3g0QUFBSUFSdjlLQWU4QzB3QXFBQzhBQUVVaUppWTFOVE1VRmhZek1qWTJOVFVqRGdJaklpWTFFVE1SRkI0Q016STJOalVSTXhFVURnSUROek1YQndFTE4xazBWaDR4SERFL0lBWVVNVHdrUzF4WUR4MG5GeWRBS0ZnY09WWmRWbVFCYnJZZ1FUSUtIeVFRSVVVMEtSb2pFazlnQVZmK3RTQXJHQW9qUmpFQkh2NG9PbGs3SGdNRmhBT0JBQUlBUnY5S0FlOEMwd0FxQURJQUFFVWlKaVkxTlRNVUZoWXpNalkyTlRVakRnSWpJaVkxRVRNUkZCNENNekkyTmpVUk14RVVEZ0lETnpNWEl5Y3pCd0VMTjFrMFZoNHhIREUvSUFZVU1Ud2tTMXhZRHgwbkZ5ZEFLRmdjT1ZhOGFWUnBVVmdzV0xZZ1FUSUtIeVFRSVVVMEtSb2pFazlnQVZmK3RTQXJHQW9qUmpFQkh2NG9PbGs3SGdNRmhJUnRiUUFBQXdCRy8wb0I3d0xSQUNvQUxnQXlBQUJGSWlZbU5UVXpGQllXTXpJMk5qVTFJdzRDSXlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SRkE0Q0F6VXpGVE0xTXhVQkN6ZFpORlllTVJ3eFB5QUdGREU4SkV0Y1dBOGRKeGNuUUNoWUhEbFd0VmhtV2JZZ1FUSUtIeVFRSVVVMEtSb2pFazlnQVZmK3RTQXJHQW9qUmpFQkh2NG9PbGs3SGdNclhGeGNYQUFBQWdCRy9uWUI3d0lPQUNvQUxnQUFSU0ltSmpVMU14UVdGak15TmpZMU5TTU9BaU1pSmpVUk14RVVIZ0l6TWpZMk5SRXpFUlFPQWdjMU14VUJDemRaTkZZZU1Sd3hQeUFHRkRFOEpFdGNXQThkSnhjblFDaFlIRGxXV1YrMklFRXlDaDhrRUNGRk5Da2FJeEpQWUFGWC9yVWdLeGdLSTBZeEFSNytLRHBaT3g3VVgxOEFBZ0JHLzBvQjd3TFRBQ29BTHdBQVJTSW1KalUxTXhRV0ZqTXlOalkxTlNNT0FpTWlKalVSTXhFVUhnSXpNalkyTlJFekVSUU9BaE1qSnpjekFRczNXVFJXSGpFY01UOGdCaFF4UENSTFhGZ1BIU2NYSjBBb1dCdzVWZzFNYndGa3RpQkJNZ29mSkJBaFJUUXBHaU1TVDJBQlYvNjFJQ3NZQ2lOR01RRWUvaWc2V1RzZUF3V0JBd0FBQWdCRy8wb0I3d0xmQUNvQVF3QUFSU0ltSmpVMU14UVdGak15TmpZMU5TTU9BaU1pSmpVUk14RVVIZ0l6TWpZMk5SRXpFUlFPQWdNMU16STJOVFFtSXlNMVBnSXpNaDRDRlJRR0JnY1ZBUXMzV1RSV0hqRWNNVDhnQmhReFBDUkxYRmdQSFNjWEowQW9XQnc1VmtFTkZnOFJFejhLSEJzS0VTRWNFaE1mRTdZZ1FUSUtIeVFRSVVVMEtSb2pFazlnQVZmK3RTQXJHQW9qUmpFQkh2NG9PbGs3SGdNRlBBa0tEQWdsQXdNQ0JRMFdFaElZRGdJY0FBSUFSdjlLQWU4Q3ZBQXFBQzRBQUVVaUppWTFOVE1VRmhZek1qWTJOVFVqRGdJaklpWTFFVE1SRkI0Q016STJOalVSTXhFVURnSUROU0VWQVFzM1dUUldIakVjTVQ4Z0JoUXhQQ1JMWEZnUEhTY1hKMEFvV0J3NVZzQUJMYllnUVRJS0h5UVFJVVUwS1JvakVrOWdBVmYrdFNBckdBb2pSakVCSHY0b09sazdIZ014UVVFQUFnQkcvMG9CN3dMUUFDb0FRZ0FBUlNJbUpqVTFNeFFXRmpNeU5qWTFOU01PQWlNaUpqVVJNeEVVSGdJek1qWTJOUkV6RVJRT0FnTStBak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIQVFzM1dUUldIakVjTVQ4Z0JoUXhQQ1JMWEZnUEhTY1hKMEFvV0J3NVZzZ0JFaVlkR2pBdUZnOFFBamdUSmg0WU1TMFdFQkFDdGlCQk1nb2ZKQkFoUlRRcEdpTVNUMkFCVi82MUlDc1lDaU5HTVFFZS9pZzZXVHNlQXlRYkxSb1FFaElRR3l3YkVSRVNFQUFBQWdBbC8vUUI0Z0xUQUNRQUtRQUFSU0ltSmpVME5qWXpNaDRDRlNNMEppWWpJZ1lHRlJVVUZoWXpNalkyTlRNVURnSUROek1YQndFTlRHYzFOV2xOTms4MEdWa1pOaXdzUUNJaFFDNHROeGxXR1RSUVdodGNBaThNTzN0ZFhYbzhIRFpNTVM0N0hTZFVSUlZCVmlnZ1BDb3NURGdmQWx1RUJuNEFBQUlBUlFBQUFmTUMwd0FaQUI0QUFITVJNeGN6UGdJek1oWVdGUkVqRVRRdUFpTWlCZ1lWRVJNM014Y0hSVWNJQnhVMVFTVXlTeXRZRVIwcEdTVkNKMW9hWEFJdkFnNVBJQ2dUSWt4Qi9wVUJYeUVxR0Fva1JDLyt5d0pQaEFaK0FBTUFKLy8wQWhJQzB3QVBBQ0VBSmdBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmhNM014Y0hBUjFRYlRrNWJWQlFiVGc0YlZBelJDTWpSRE16UlNJaVJROGFYQUl2RER0NlhsOTVPenQ1WDE1Nk8wb29WVUVXUWxRb0tGUkNGa0ZWS0FJUmhBWitBQUlBSS8vMEFkWUMwd0JDQUVjQUFGY2lMZ0kxTkRRM013WVVGUjRDTXpJMk5qVTBKaVluTGdNMU5ENENNekllQWhVVUZBY2pOVFFtSmlNaURnSVZGQllXRng0REZSUU9BZ00zTXhjSC9UWlNOaHdCVndFQkl6NG1JVGdoSzBZbUlFQXpIeDAyVFM4eVN6SVlBVllWTXkwZEtod09JamtoSTBrOUpTQTdUMU1hWEFJdkRCWXFPaVVGQ1FNRUJnTWpLQkFSSXhzaEl4UUxDUllnTXljak5pWVRGaWd6SFFZTEF3c1VKUmNKRXhrUUdod1NDd29WSURjdEtqNG9Fd0piaEFaK0FBQUNBQjhBQUFIU0F0TUFDUUFPQUFCek5RRWhOU0VWQVNFVkF6Y3pGd2NmQVNYKzhBR08vdG9CTnYwYVhBSXZMd0dWU2k3K2Frb0NUNFFHZmdBQkFBd0FBQUlhQXRzQUt3QUFjeEVqTlRNMU5EWTJNeklXRmhjVkl5SUdGUlV6TlRRMk5qTXlGaFlYRlNNaUJoVVZNeFVqRVNNUkl4RmFUazRTTWkwT0d4a0tOUmtYcXhNeUxRMGNHQW8wR1JobFpWaXJBY1JLVkI4M0l3TUZBejhaRjFOVUh6Y2pBd1VEUHhrWFUwcitQQUhFL2p3QUF3QU1BQUFDdVFMYkFDc0FMd0F6QUFCekVTTTFNelUwTmpZek1oWVdGeFVqSWdZVkZUTTFORFkyTXpJV0ZoY1ZJeUlHRlJVekZTTVJJeEVqRVFFMU14VURFVE1SV2s1T0VqSXREaHNaQ2pVWkY2c1RNaTBOSEJnS05Ca1laV1ZZcXdHdldGaFlBY1JLVkI4M0l3TUZBejhaRjFOVUh6Y2pBd1VEUHhrWFUwcitQQUhFL2p3Q2NXSmkvWThDRHYzeUFBQUNBQXdBQUFLNUF0c0FLd0F2QUFCekVTTTFNelUwTmpZek1oWVdGeFVqSWdZVkZUTTFORFkyTXpJV0ZoY1ZJeUlHRlJVekZTTVJJeEVqRVNFUk14RmFUazRTTWkwT0d4a0tOUmtYcXhNeUxRMGNHQW8wR1JobFpWaXJBYTlZQWNSS1ZCODNJd01GQXo4WkYxTlVIemNqQXdVRFB4a1hVMHIrUEFIRS9qd0MwLzB0QUFBREFBd0FBQUcxQXRzQUZ3QWJBQjhBQUhNUkl6VXpOVFEyTmpNeUZoWVhGU01pQmhVVk14VWpFUk0xTXhVREVUTVJXazVPRWpJdERoc1pDalVaRjJWbHExaFlXQUhFU2xRZk55TURCUU0vR1JkVFN2NDhBbkZpWXYyUEFnNzk4Z0FDQUF3QUFBRzFBdHNBRndBYkFBQnpFU00xTXpVME5qWXpNaFlXRnhVaklnWVZGVE1WSXhFekVUTVJXazVPRWpJdERoc1pDalVaRjJWbHExZ0J4RXBVSHpjakF3VURQeGtYVTByK1BBTFQvUzBBQWdBZEFVb0JaUUs2QUMwQU9nQUFVeUltSmpVMFBnSXpOVFFtSmlNaUJnWVZGU01tTkRVME5qTXlGaFlWRlJRV016TVZCZ1lqSWlZbkl3WUdKekkyTmpVMUpnWUdGUlFXRm9rWk1pRWhQRkV3RENBZEhDQU5QQUZOUENzNkhRd0lHZ29XRFJzYkF3VVJPaGtiTGh3eVJ5WVBHZ0ZLRWlvbUpTOGFDaWtSR2c4T0Z3NExBZ29ETVRFWkxpRzlEUW9wQXdVY0Z4a2RNeGdySEJrQkRCOGNFUlVNQUFBQ0FDQUJTUUZjQXJvQUR3QWRBQUJUSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTlRVMEppTWlCaFVWRkJhOU0wWWtKVWN6TTBZa0pVWXpNaXd0TVRBdExBRkpLRkkvUUZFbkoxRkFQMUlvTlQ4OURqOCtQajRPUFVBQUFBRUFOQUZTQVVVQ3VRQVZBQUJURVRNWE16WTJNeklXRlJVak5UUW1JeUlHQmhVVk5ESUZCUk0ySVRBN1BTRWdGeWNZQVZJQld6RWdIVFJBOCt3b0hSZ3JIODhBQWdBUkFBQUNud0t1QUFNQUZ3QUFjd0V6QVNVaEppWW5BeTRDSnlNT0F3Y0REZ0lSQVF0NUFRcjk4UUdNQmhrS2VBUVBEUU1GQWdvTENRSjVCUkFOQXE3OVVsSVFPeG9CT3c0cUpRZ0hIQjhiQnY3RER5WWpBQUVBTUFBQUF0SUN1Z0F2QUFCek5UTXlGaFlYSmlZMU5EWTJNeklXRmhVVUJnYytBak16RlNFMVBnSTFOVFFtSmlNaUJnWVZGUlFXRmhjVk1DWUtIaWNYUFVWUGttWm1razlGUFJZbklBb2wvczA5V1RFNFowWkdaamd3V1QxU0FRUURLNGxoY1p0UFQ1dHhZWWtyQXdRQlVrWUlPbTVTRmw5Mk5UWjFYeFpUYlRvSFJ3QUFBUUJGLzAwQjh3SU9BQjBBQUZjUk14RVVIZ0l6TWpZMk5SRXpFU01uSXc0Q0l5SW1KeFlXRlJWRldCQWRLaGdsUVNsWVNBZ0hFakU2SVI4MUVnTUNzd0xCL3FFaEtoZ0tKRVV1QVRYOThrOGhLQklRRVE4b0VuOEFBUUFkQUFBQ21RSU9BQjRBQUhNK0F6VWlCZ2NuTmpZeklRY2pFUlFXRnlNbUpqVVJJdzREQjJJUUhCWU5ORDBVRHhaWFJ3SElDbUVKQjFZSUM4a0RFQlViRHloeWYzc3dCZ2M1RGhCSy90ZzlTQmNNU3p3Qk1UQi9oSEFoQUFFQU5QOS9BVVVBNWdBVkFBQlhFVE1YTXpZMk16SVdGUlVqTlRRbUl5SUdCaFVWTkRJRkJSTTJJVEE3UFNFZ0Z5Y1lnUUZiTVNBZE5FRHo3Q2dkR0NzZnp3QUFBZ0F4Ly9RQ0RBSzZBQk1BSlFBQVJTSXVBalUwUGdJek1oNENGUlFPQWljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmdFZk9GZytJQ0ErV0RnNFZ6NGdJRDVYT0RrL0dSay9PVGxBR1JsQURDRlJpV2hvaVZFaElWR0phR2lKVVNGS09uSlZMbFp6T2pweVZpMVZkRG9BQUFFQVFnQUFBZXdDc0FBTkFBQnpOVE1SSXpVK0FqY3pFVE1WUTYydUpVOU1IeWlqU3dIYk9BTVFJeHo5bTBzQUFBRUFNZ0FBQWdrQ3VnQXJBQUJ6TlRRK0FqYytBalUwSmlZaklnWUdGUlVqSmlZMU5EWTJNekllQWhVVURnSUhEZ0lISVJVeUlUZEdKREZUTWgwNkxUVkFIVmNCQWtKdVFEbFNOaG9oTzA4dUlENHNCZ0Z0SFNwSE96WWFJa1JQTVI4ekhpUThKQ2tGRlE1S1d5c2ZOa1VtTDA1RFBpQVZMekFXVWdBQkFDci85QUlQQXJvQU5nQUFSU0ltSmpVMU14VVVGak15TmpVMEppWWpJelV6TWpZMk5UUW1KaU1pQmdZVkZTTTFORFkyTXpJV0ZoVVVCZ1lIRlJZV0ZSUUdCZ0VnVUc0NFdVOUdSbFl1U1NsSVN5WkFKeU04SkNoQUpWbzdaME5DWlRvZ05CNDNTajF0RERGYVBnME5Qa0U5UXpFMEZVb1lOeXdvTWhrYk5pa05FamxXTUNwU1BDdzlLQTBFRUZSRVBWZ3ZBQUFCQUJ3QUFBSU9Bcm9BR3dBQVlUVWhOVDRDTnpNT0JBY3pOVDRETnpNUk14VWpGUUZiL3NFcVJUY1NYZzBtTGkwbkRPb0dEUXdLQXl4Ylc2aEtTSkthVkRkemJGNUVFTm9RSXlVaEQvNmVTcWdBQVFBeS8vUUNEd0t1QUNZQUFFVWlKaVkxTXhRV0ZqTXlOalkxTkNZbUl5SUdCZ2NuRXlFVklRYytBak15RmhZVkZBWUdBU0pJYkR4WktFVXFLMElsSWo4cEhqWXJEbE1kQVlYK3lCQVJLemdrTzJBNE9Xb01ObVZHTDBRa0kwZzNNa0VnRXlJWkRRRjhVdFlQR1E4dVlFeExiRGdBQUFJQU1mLzBBaElDdWdBaUFESUFBRVVpTGdJMU5ENENNeklXRmhVak5DWW1JeUlHQmdjK0FqTXlGaFlWRkFZR0p6STJOalUwSmlZaklnWUdGUlFXRmdFc08xMUJJaUkvWFR0S1d5cGFHamNwUEVNWkFRNHpSaWRLWUM0OGFFZ3hRQjhlUHpFeFFpQWdRQXdpVElGZ2FvOVhKemhmUFM0K0hqOTRVeGNtRnp0bVAwVm9PVW9yUnlzcFJDa3FSU3dwUmlrQUFRQW5BQUFDQ2dLdUFCQUFBSE0wUGdJM0lUVWhGUTRFRlJXUk1FMWNMUDZSQWVNbFQwZzZJbDJzbW9RMVVqY3JhWFYrZ1VBdkFBQURBQy8vOUFJT0Fyb0FHd0FuQURNQUFFVWlKaVkxTkRZM0ppWTFORFkyTXpJV0ZoVVVCZ2NXRmhVVUJnWW5NalkxTkNZaklnWVZGQllUTWpZMU5DWWpJZ1lWRkJZQkgxVnFNVGc4TURFeFkwbEpZakl5TUQwM01XbFZTVXBLU1VsTFMwazlSa1k5UFVaR0REWmFOemhXRnhsU01qVlZNek5WTlRKU0dSZFdPRGRhTmtsRU96cEVSRG83UkFGR1B6azRQajQ0T1Q4QUFBSUFLLy8wQWd3Q3VnQWlBRElBQUVVaUppWTFNeFFXRmpNeU5qWTNEZ0lqSWlZbU5UUTJOak15SGdJVkZBNENBekkyTmpVMEppWWpJZ1lHRlJRV0ZnRVRTVndxV2hzMktUMUJHZ0VOTkVVblNtQXZQR2hCTzE1QklpRkFYVGd4UVNBZlFURXhRQjhlUHd3NFlEd3VQaDQvZUZNV0p4YzdaajlHWnpraVRJRmdhWkJYSndGSktrWXJLa1VwSzBZc0tVUXBBQUFEQURILzlBSU1Bcm9BQXdBWEFDa0FBSGNuRXhjRElpNENOVFErQWpNeUhnSVZGQTRDSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXeXlTOUoydzRXRDRnSUQ1WU9EaFhQaUFnUGxjNE9UOFpHVDg1T1VBWkdVQkdMZ0g2SmYycklWR0phR2lKVVNFaFVZbG9hSWxSSVVvNmNsVXVWbk02T25KV0xWVjBPZ0FDQURILzlBSU1Bcm9BRXdBbEFBQkZJaTRDTlRRK0FqTXlIZ0lWRkE0Q0p6STJOalUxTkNZbUl5SUdCaFVWRkJZV0FSODRXRDRnSUQ1WU9EaFhQaUFnUGxjNE9UOFpHVDg1T1VBWkdVQU1JVkdKYUdpSlVTRWhVWWxvYUlsUklVbzZjbFV1Vm5NNk9uSldMVlYwT2dBQUFRQkNBQUFCN0FLd0FBMEFBSE0xTXhFak5UNENOek1STXhWRHJhNGxUMHdmS0tOTEFkczRBeEFqSFAyYlN3QUFBUUF5QUFBQ0NRSzZBQ3NBQUhNMU5ENENOejRDTlRRbUppTWlCZ1lWRlNNbUpqVTBOall6TWg0Q0ZSUU9BZ2NPQWdjaEZUSWhOMFlrTVZNeUhUb3ROVUFkVndFQ1FtNUFPVkkyR2lFN1R5NGdQaXdHQVcwZEtrYzdOaG9pUkU4eEh6TWVKRHdrS1FVVkRrcGJLeDgyUlNZdlRrTStJQlV2TUJaU0FBRUFLdi8wQWc4Q3VnQTJBQUJGSWlZbU5UVXpGUlFXTXpJMk5UUW1KaU1qTlRNeU5qWTFOQ1ltSXlJR0JoVVZJelUwTmpZek1oWVdGUlFHQmdjVkZoWVZGQVlHQVNCUWJqaFpUMFpHVmk1SktVaExKa0FuSXp3a0tFQWxXanRuUTBKbE9pQTBIamRLUFcwTU1WbytEUTArUVQxRE1UUVZTaGczTENneUdSczJLUTBTT1ZZd0tsSThMRDBvRFFRUVZFUTlXQzhBQUFFQUhBQUFBZzRDdWdBYkFBQmhOU0UxUGdJM013NEVCek0xUGdNM014RXpGU01WQVZ2K3dTcEZOeEplRFNZdUxTY002Z1lOREFvRExGdGJxRXBJa3BwVU4zTnNYa1FRMmhBakpTRVAvcDVLcUFBQkFETC85QUlQQXE0QUpnQUFSU0ltSmpVekZCWVdNekkyTmpVMEppWWpJZ1lHQnljVElSVWhCejRDTXpJV0ZoVVVCZ1lCSWtoc1BGa29SU29yUWlVaVB5a2VOaXNPVXgwQmhmN0lFQkVyT0NRN1lEZzVhZ3cyWlVZdlJDUWpTRGN5UVNBVEloa05BWHhTMWc4WkR5NWdURXRzT0FBQUFnQXgvL1FDRWdLNkFDSUFNZ0FBUlNJdUFqVTBQZ0l6TWhZV0ZTTTBKaVlqSWdZR0J6NENNeklXRmhVVUJnWW5NalkyTlRRbUppTWlCZ1lWRkJZV0FTdzdYVUVpSWo5ZE8wcGJLbG9hTnlrOFF4a0JEak5HSjBwZ0xqeG9TREZBSHg0L01URkNJQ0JBRENKTWdXQnFqMWNuT0Y4OUxqNGVQM2hURnlZWE8yWS9SV2c1U2l0SEt5bEVLU3BGTENsR0tRQUJBQ2NBQUFJS0FxNEFFQUFBY3pRK0FqY2hOU0VWRGdRVkZaRXdUVndzL3BFQjR5VlBTRG9pWGF5YWhEVlNOeXRwZFg2QlFDOEFBQU1BTC8vMEFnNEN1Z0FiQUNjQU13QUFSU0ltSmpVME5qY21KalUwTmpZek1oWVdGUlFHQnhZV0ZSUUdCaWN5TmpVMEppTWlCaFVVRmhNeU5qVTBKaU1pQmhVVUZnRWZWV294T0R3d01URmpTVWxpTWpJd1BUY3hhVlZKU2twSlNVdExTVDFHUmowOVJrWU1ObG8zT0ZZWEdWSXlOVlV6TTFVMU1sSVpGMVk0TjFvMlNVUTdPa1JFT2p0RUFVWS9PVGcrUGpnNVB3QUFBZ0FyLy9RQ0RBSzZBQ0lBTWdBQVJTSW1KalV6RkJZV016STJOamNPQWlNaUppWTFORFkyTXpJZUFoVVVEZ0lETWpZMk5UUW1KaU1pQmdZVkZCWVdBUk5KWENwYUd6WXBQVUVhQVEwMFJTZEtZQzg4YUVFN1hrRWlJVUJkT0RGQklCOUJNVEZBSHg0L0REaGdQQzQrSGo5NFV4WW5GenRtUDBabk9TSk1nV0Jwa0ZjbkFVa3FSaXNxUlNrclJpd3BSQ2tBQUFNQU1mLzBBZ3dDdWdBREFCY0FLUUFBZHljVEZ3TWlMZ0kxTkQ0Q016SWVBaFVVRGdJbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhiTEpMMG5iRGhZUGlBZ1BsZzRPRmMrSUNBK1Z6ZzVQeGtaUHprNVFCa1pRRVl1QWZvbC9hc2hVWWxvYUlsUklTRlJpV2hvaVZFaFNqcHlWUzVXY3pvNmNsWXRWWFE2QUFJQUt2LzBBZ3dDR2dBVEFDVUFBRVVpTGdJMU5ENENNekllQWhVVURnSW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUJHelpaUHlNalFGazJObGhBSWlKQVdUWThRQmtaUUR3NlFoa1pRZ3dnUW1sSVNXaENJQ0JDYUVsSWFVSWdTekpSTFM0dVVqSXlVUzR0TGxJeUFBQUJBQ2NBQUFIUUFoUUFEUUFBY3pVekVTTTFQZ0kzTXhFekZTZXVyaVJRU3lBbm8wd0JQamNERVNJZC9qaE1BQUFCQURNQUFBSUlBaG9BTFFBQWN6VTBQZ0kzUGdJMU5DWW1JeUlHQmhVVkl5WW1OVFErQWpNeUhnSVZGQTRDQnc0REZTRVZNeWhCVGljb1Jpb2NPaTQxUVJ4WEFRSW1RMWN3T1ZNMUdpaENUaVljTXljWUFYQWxORWd4SXc0UElDb2dHQ1lYSFMwYUhBUU9DUzFDS2hVYUxEZ2ZLajR0SVE4TEZSZ2RFMUFBQUFFQUtmOVZBZzRDR2dBMkFBQkZJaVltTlRVekZSUVdNekkyTlRRbUppTWpOVE15TmpZMU5DWW1JeUlHQmhVVkl6VTBOall6TWhZV0ZSUUdCZ2NWRmhZVkZBWUdBUjVRYlRoWVQwZEdWUzFKS1VoTEprQW5JendrS0VFbFdqdG9RMEZtT1NBMEhqaEtQbXlyTUZvL0RRNDlRajFETVRVVVNoazNMQ2N5R1JzMktBNFNPVll3S2xJOEt6NG9EQVFRVkVROVdDOEFBQUVBSWY5YkFoTUNGUUFhQUFCRk5TRTFQZ0kzTXc0RUJ6TTFQZ0kzTXhFekZTTVZBV0Qrd1NwRk54SmREU1l0TGljTTZ3a1FEZ1VzVzF1bHBVdElrcHhVTjNSdFhrUVIzUll2TUJQK20wcWxBQUFCQUN6L1ZBSUpBZzRBSlFBQVJTSW1KalV6RkJZV016STJOalUwSmlZaklnWUdCeWNUSVJVaEJ6WTJNeklXRmhVVUJnWUJIRWhzUEZrb1JTb3JRaVVpUHlrZU5pc09VeDBCaGY3SUVCaEtOanRnT0RscXJEWmxSaTlFSkNOSU56SkJJQklqR1EwQmZGTFZGU0V1WUV4TGJEZ0FBQUlBTGYvMEFnNEN1Z0FpQURJQUFFVWlMZ0kxTkQ0Q016SVdGaFVqTkNZbUl5SUdCZ2MrQWpNeUZoWVZGQVlHSnpJMk5qVTBKaVlqSWdZR0ZSUVdGZ0VvTzExQklpRkFYVHRKWENwYUdqY3BQVUlaQVE0elJpZEtYeTg4YUVneFFCOGVQekl4UVNBZlFRd2lUSUZnYW85WEp6aGZQUzQrSGo5NFV4Y21GenRtUDBWb09Vb3JSeXNwUkNrcVJTd3BSaWtBQVFBci8yQUNEZ0lPQUJJQUFGYzBQZ0kzSVRVaEZRNEVGUlFVRlpZdlRWc3MvcElCNHlWT1NUa2lvRjJzbW9RMVVqY3JhWFYrZ1VBTkV3OEFBd0FzLy9RQ0N3SzZBQnNBSndBekFBQkZJaVltTlRRMk55WW1OVFEyTmpNeUZoWVZGQVlIRmhZVkZBWUdKekkyTlRRbUl5SUdGUlFXRXpJMk5UUW1JeUlHRlJRV0FSeFZhakU0UERBeU1tTkpTV0l5TWpBOU56RnBWVWxLU2tsSlMwdEpQVVpHUFQ1R1JndzJXamM0VmhjWlVqSTFWVE16VlRVeVVoa1hWamczV2paSlJEczZSRVE2TzBRQlJqODVPRDQrT0RrL0FBQUNBQ2YvVkFJSEFob0FJZ0F5QUFCRklpWW1OVE1VRmhZek1qWTJOdzRDSXlJbUpqVTBOall6TWg0Q0ZSUU9BZ015TmpZMU5DWW1JeUlHQmhVVUZoWUJEa2xiSzFvYk55ZzlRaGtCRFRSRUtFcGZMenhvUVR0ZFFTSWhQMTA1TVVFZ0gwQXhNa0FmSHorc09HQThMajRlUDNsU0ZpY1hPMlkvUm1jNUlreUJZR21RVnljQlNTcEdLeXBGS1N0R0xDbEVLUUFBQXdBcS8vUUNEQUlhQUJNQUh3QXJBQUJGSWk0Q05UUStBak15SGdJVkZBNENKeE1tSmlNaUJnWVZGUlFXRnpJMk5qVTFOQ1luQXhZV0FSczJXVDhqSTBCWk5qWllRQ0lpUUZtT2lRb1pEanBDR1J0NlBFQVpHQ0NJQ2hVTUlFSnBTRWxvUWlBZ1FtaEpTR2xDSUdRQmNRTURNbEV1TFRCUk1USlJMUzR0VHhqK2tnSUNBQUFDQUM3LzlBSUtBcm9BRXdBbEFBQkZJaTRDTlRRK0FqTXlIZ0lWRkE0Q0p6STJOalUxTkNZbUl5SUdCaFVWRkJZV0FSdzNXVDBoSVQxWk56aFlQU0VoUFZnNE9qOFpHVDg2T1Q4YUdqOE1JVkdKYUdpSlVTRWhVWWxvYUlsUklVbzZjbFV1Vm5NNk9uSldMVlYwT2dBQUFRQmVBQUFDQ0FLd0FBMEFBSE0xTXhFak5UNENOek1STXhWZnJxOGxUMHdmS0tOTEFkczRBeEFqSFAyYlN3QUFBUUF4QUFBQ0NRSzZBQ3NBQUhNMU5ENENOejRDTlRRbUppTWlCZ1lWRlNNbUpqVTBOall6TWg0Q0ZSUU9BZ2NPQWdjaEZURWhPRVVrTVZNekhUc3ROVUFjV0FFQ1EyNUFPRk0yR2lFN1VDNGZQaTBHQVc0ZEtrYzdOaG9pUkU4eEh6TWVKRHdrS1FVVkRrcGJLeDgyUlNZdlRrTStJQlV2TUJaU0FBRUFLZi8wQWc0Q3VnQTJBQUJGSWlZbU5UVXpGUlFXTXpJMk5UUW1KaU1qTlRNeU5qWTFOQ1ltSXlJR0JoVVZJelUwTmpZek1oWVdGUlFHQmdjVkZoWVZGQVlHQVI1UWJUaFlUMGRHVlMxSktVaExKa0FuSXp3a0tFRWxXanRvUTBGbU9TQTBIamhLUG13TU1WbytEUTArUVQxRE1UUVZTaGczTENneUdSczJLUTBTT1ZZd0tsSThMRDBvRFFRUVZFUTlXQzhBQUFFQUl3QUFBaFVDdWdBYkFBQmhOU0UxUGdJM013NEVCek0xUGdNM014RXpGU01WQVdMK3dTcEZOeEpkRFNZdExpY002d1lOREFrRUxGdGJxRXBJa3BwVU4zTnNYa1FRMmhBakpTRVAvcDVLcUFBQkFDei85QUlLQXE0QUpnQUFSU0ltSmpVekZCWVdNekkyTmpVMEppWWpJZ1lHQnljVElSVWhCejRDTXpJV0ZoVVVCZ1lCSFVodFBGb29SQ3NxUWlZalBpb2VOaXNPVWh3QmhmN0lEeEFyT1NNN1lEazVhZ3cyWlVZdlJDUWpTRGN5UVNBVEloa05BWHhTMWc4WkR5NWdURXRzT0FBQUFnQXgvL1FDRWdLNkFDSUFNZ0FBUlNJdUFqVTBQZ0l6TWhZV0ZTTTBKaVlqSWdZR0J6NENNeklXRmhVVUJnWW5NalkyTlRRbUppTWlCZ1lWRkJZV0FTdzdYVUVpSWo5ZFBFbGJLMW9iTnlnOVFob0JEak5HSjBwZ0xqeG9TREZCSGg0L01URkJJU0JBRENKTWdXQnFqMWNuT0Y4OUxqNGVQM2hURnlZWE8yWS9SV2c1U2l0SEt5bEVLU3BGTENsR0tRQUJBRElBQUFJVkFxNEFFQUFBY3pRK0FqY2hOU0VWRGdRVkZaMHZUbHdzL3BBQjR5Vk9TVGtpWGF5YWhEVlNOeXRwZFg2QlFDOEFBQU1BTC8vMEFnMEN1Z0FiQUNjQU13QUFSU0ltSmpVME5qY21KalUwTmpZek1oWVdGUlFHQnhZV0ZSUUdCaWN5TmpVMEppTWlCaFVVRmhNeU5qVTBKaU1pQmhVVUZnRWZWV294Tnowd01qSmpTVWxoTXpJeFBUY3dhVlZKU2twSlNrdExTanhIUmowK1JrWU1ObG8zT0ZZWEdWSXlOVlV6TTFVMU1sSVpGMVk0TjFvMlNVUTdPa1JFT2p0RUFVWS9PVGcrUGpnNVB3QUFBZ0FwLy9RQ0NRSzZBQ0lBTWdBQVJTSW1KalV6RkJZV016STJOamNPQWlNaUppWTFORFkyTXpJZUFoVVVEZ0lETWpZMk5UUW1KaU1pQmdZVkZCWVdBUkJKV3l0YUd6Y29QVUlaQVEwMFJDaEtZQzQ4YUVFN1hVRWlJVUJkT0RGQklCOUFNVEkvSUI4K0REaGdQQzQrSGo5NFV4WW5GenRtUDBabk9TSk1nV0Jwa0ZjbkFVa3FSaXNxUlNrclJpd3BSQ2tBQUFNQUx2LzBBZ29DdWdBREFCY0FLUUFBZHljVEZ3TWlMZ0kxTkQ0Q016SWVBaFVVRGdJbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhiSkpMMG5iVGRaUFNFaFBWazNPRmc5SVNFOVdEZzZQeGtaUHpvNVB4b2FQMFl1QWZvbC9hc2hVWWxvYUlsUklTRlJpV2hvaVZFaFNqcHlWUzVXY3pvNmNsWXRWWFE2QUFJQUt2LzBBZ3dDR2dBVEFDVUFBRVVpTGdJMU5ENENNekllQWhVVURnSW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUJHelpaUHlNalFGazJObGhBSWlKQVdUWThRQmtaUUR3NlFoa1pRZ3dnUW1sSVNXaENJQ0JDYUVsSWFVSWdTekpSTFM0dVVqSXlVUzR0TGxJeUFBQUJBR0VBQUFJS0FoUUFEUUFBY3pVekVTTTFQZ0kzTXhFekZXS3RyaVZQVEI4b29rd0JQamNERVNJZC9qaE1BQUFCQURNQUFBSUlBaG9BTFFBQWN6VTBQZ0kzUGdJMU5DWW1JeUlHQmhVVkl5WW1OVFErQWpNeUhnSVZGQTRDQnc0REZTRVZNeWhCVGljb1Jpb2NPaTQxUVJ4WEFRSW1RMWN3T1ZNMUdpaENUaVljTXljWUFYQWxORWd4SXc0UElDb2dHQ1lYSFMwYUhBUU9DUzFDS2hVYUxEZ2ZLajR0SVE4TEZSZ2RFMUFBQUFFQUtmOVZBZzRDR2dBMkFBQkZJaVltTlRVekZSUVdNekkyTlRRbUppTWpOVE15TmpZMU5DWW1JeUlHQmhVVkl6VTBOall6TWhZV0ZSUUdCZ2NWRmhZVkZBWUdBUjVRYlRoWVQwZEdWUzFKS1VoTEprQW5JendrS0VFbFdqdG9RMEZtT1NBMEhqaEtQbXlyTUZvL0RRNDlRajFETVRVVVNoazNMQ2N5R1JzMktBNFNPVll3S2xJOEt6NG9EQVFRVkVROVdDOEFBQUVBSWY5YkFoTUNGUUFhQUFCRk5TRTFQZ0kzTXc0RUJ6TTFQZ0kzTXhFekZTTVZBV0Qrd1NwRk54SmREU1l0TGljTTZ3a1FEZ1VzVzF1bHBVdElrcHhVTjNSdFhrUVIzUll2TUJQK20wcWxBQUFCQUN6L1ZBSUpBZzRBSlFBQVJTSW1KalV6RkJZV016STJOalUwSmlZaklnWUdCeWNUSVJVaEJ6WTJNeklXRmhVVUJnWUJIRWhzUEZrb1JTb3JRaVVpUHlrZU5pc09VeDBCaGY3SUVCaEtOanRnT0RscXJEWmxSaTlFSkNOSU56SkJJQklqR1EwQmZGTFZGU0V1WUV4TGJEZ0FBQUlBTGYvMEFnNEN1Z0FpQURJQUFFVWlMZ0kxTkQ0Q016SVdGaFVqTkNZbUl5SUdCZ2MrQWpNeUZoWVZGQVlHSnpJMk5qVTBKaVlqSWdZR0ZSUVdGZ0VvTzExQklpRkFYVHRKWENwYUdqY3BQVUlaQVE0elJpZEtYeTg4YUVneFFCOGVQekl4UVNBZlFRd2lUSUZnYW85WEp6aGZQUzQrSGo5NFV4Y21GenRtUDBWb09Vb3JSeXNwUkNrcVJTd3BSaWtBQVFBci8yQUNEZ0lPQUJJQUFGYzBQZ0kzSVRVaEZRNEVGUlFVRlpZdlRWc3MvcElCNHlWT1NUa2lvRjJzbW9RMVVqY3JhWFYrZ1VBTkV3OEFBd0FzLy9RQ0N3SzZBQnNBSndBekFBQkZJaVltTlRRMk55WW1OVFEyTmpNeUZoWVZGQVlIRmhZVkZBWUdKekkyTlRRbUl5SUdGUlFXRXpJMk5UUW1JeUlHRlJRV0FSeFZhakU0UERBeU1tTkpTV0l5TWpBOU56RnBWVWxLU2tsSlMwdEpQVVpHUFQ1R1JndzJXamM0VmhjWlVqSTFWVE16VlRVeVVoa1hWamczV2paSlJEczZSRVE2TzBRQlJqODVPRDQrT0RrL0FBQUNBQ2YvVkFJSEFob0FJZ0F5QUFCRklpWW1OVE1VRmhZek1qWTJOdzRDSXlJbUpqVTBOall6TWg0Q0ZSUU9BZ015TmpZMU5DWW1JeUlHQmhVVUZoWUJEa2xiSzFvYk55ZzlRaGtCRFRSRUtFcGZMenhvUVR0ZFFTSWhQMTA1TVVFZ0gwQXhNa0FmSHorc09HQThMajRlUDNsU0ZpY1hPMlkvUm1jNUlreUJZR21RVnljQlNTcEdLeXBGS1N0R0xDbEVLUUFBQXdBcS8vUUNEQUlhQUJNQUh3QXJBQUJGSWk0Q05UUStBak15SGdJVkZBNENKeE1tSmlNaUJnWVZGUlFXRnpJMk5qVTFOQ1luQXhZV0FSczJXVDhqSTBCWk5qWllRQ0lpUUZtT2lRb1pEanBDR1J0NlBFQVpHQ0NJQ2hVTUlFSnBTRWxvUWlBZ1FtaEpTR2xDSUdRQmNRTURNbEV1TFRCUk1USlJMUzR0VHhqK2tnSUNBQUFDQUNmL1ZBRXhBTVlBRHdBZEFBQlhJaVltTlRRMk5qTXlGaFlWRkFZR0p6STJOVFUwSmlNaUJoVVZGQmFzS1R3Z0lEd3BLVHNoSVRzcEtCMGRLQ2dkSGF3aVVVWkhVU0VoVVVkR1VTSTNPVDBZUFRrNVBSZzlPUUFCQUR2L1lBRWlBTUVBRFFBQVZ6VXpOU00xUGdJM014RXpGVHRaV1JVcUtCQWZVYUE0MXlrQ0NSRU4vdGM0QUFBQkFDMy9ZQUVzQU1ZQUpnQUFWelUwTmpZM05qWTFOQ1lqSWdZR0ZSVWpKaVkxTkRZMk16SVdGaFVVRGdJSEJnWUhNeFV0SFM4WUpEY2RIeGdkRFRzQkFpUThJeWswR2hRaUtCVVVKQWkxb0JjZUxTUVJHVEVnRkJ3UUdoRVlCUThJSmpBV0hDNGNHaW9qSFE0T0dnNDRBQUFCQUNuL1ZBRXdBTVlBTlFBQVZ5SW1OVFV6RlJRV016STJOalUwSmlZakl6VXpNalkyTlRRbUppTWlCZ1lWRlNNMU5EWTJNeklXRmhVVUJnY1ZGaFlWRkFZR3JrRkVQU1FnRmlBUkZDSVRLaXdTSEJFUEd4RVJIaEUrSVRrakpEY2dIUlVhSUNJNnJEb3pDZ3NiSEFzWkZCVVhDVFVLR0JNUkZnc01HQkVNRGg4dUdoWXRJUndtQ3dNS0t5QWdNQmtBQUFFQUpmOWdBVEVBeFFBWUFBQlhOU00xTmpZM013NERCek0xUGdJM014VXpGU01WeDZJZkxROUNDQmdiR1FwakJRZ0lBeVF1THFCUEx6UnpRQ0ZFUGpBT1dRd1pHUXlqTlU4QUFRQXIvMVFCTFFDN0FDQUFBRmNpSmljekZCWVdNekkyTlRRbUl5SUdCeWMzTXhVakJ6WTJNeklXRmhVVUJxMDZSd0U5RXlBU0hpUWlIUk1qQ2prUDFhQUdEQ01XSURRZlJLdytOeFVjRHlNbUloOFBEd205T1U0SkN4azBLRDFDQUFBQ0FDYi9WQUV6QU1ZQUd3QW5BQUJYSWlZbU5UUTJOak15RmhVak5DWWpJZ1lITmpZek1oWVdGUlFHSnpJMk5UUW1JeUlHRlJRV3NTdytJU0EvTEQwNFBSNGRLaHdDRGk4WktUVVpTanNqSWlFaklTUWpyQ0JNUTBsV0pEOHZIQjQ5TnhJVUh6VWlOME0xS2hzZEpTWWZHaWdBQUFFQUtmOWdBUzhBdXdBUEFBQlhORFkyTnlNMUlSVU9BaFVVRkJWZ0lqa2dzZ0VHSWtJcm9EeG5XaVU1S0NWYlpETUdEd2NBQUFNQUt2OVVBUzBBeGdBYkFDY0FNd0FBVnlJbUpqVTBOamNtSmpVME5qWXpNaFlXRlJRR0J4WVdGUlFHQmljeU5qVTBKaU1pQmhVVUZqY3lOalUwSmlNaUJoVVVGcXd1T2hvYUd4VVhHellvSnpZYkZ4VWJHaG81TGlFaUlpRWlJaUlpSEI4ZkhCd2ZINndkTVI0YUxBME9LQlllTGhzYkxoNFdLQTROTEJvZU1SMDFIUm9hSFIwYUdoMmlIQmNZSEJ3WUZ4d0FBQUlBSmY5VUFUSUF4Z0FiQUNjQUFGY2lKalV6RkJZek1qWTNCZ1lqSWlZbU5UUTJNeklXRmhVVUJnWW5NalkxTkNZaklnWVZGQmFuUFRnOUh4d3FIQUlPTUJrb05SbEtPQzArSUNBK0xDSWtJaU1pSWlHc1B5OGNIVDAyRWhRZk5TRTNSQjlOUTBsV0pMWW1IeHNuS1J3Y0pnQUFBZ0FuLy9RQk1RRm1BQThBSFFBQVZ5SW1KalUwTmpZek1oWVdGUlFHQmljeU5qVTFOQ1lqSWdZVkZSUVdyQ2s4SUNBOEtTazdJU0U3S1NnZEhTZ29IUjBNSWxGR1IxRWhJVkZIUmxFaU56azlHRDA1T1QwWVBUa0FBUUE3QUFBQklnRmhBQTBBQUhNMU16VWpOVDRDTnpNUk14VTdXVmtWS2lnUUgxRTQxeWtDQ1JFTi90YzRBQUVBTFFBQUFTd0JaZ0FtQUFCek5UUTJOamMyTmpVMEppTWlCZ1lWRlNNbUpqVTBOall6TWhZV0ZSUU9BZ2NHQmdjekZTMGRMeGdrTngwZkdCME5Pd0VDSkR3aktUUWFGQ0lvRlJRa0NMVVhIaTBrRVJreElCUWNFQm9SR0FVUENDWXdGaHd1SEJvcUl4ME9EaG9PT0FBQkFDbi85QUV3QVdZQU5RQUFWeUltTlRVekZSUVdNekkyTmpVMEppWWpJelV6TWpZMk5UUW1KaU1pQmdZVkZTTTFORFkyTXpJV0ZoVVVCZ2NWRmhZVkZBWUdya0ZFUFNRZ0ZpQVJGQ0lUS2l3U0hCRVBHeEVSSGhFK0lUa2pKRGNnSFJVYUlDSTZERG96Q2dzYkhBc1pGQlVYQ1RVS0dCTVJGZ3NNR0JFTURoOHVHaFl0SVJ3bUN3TUtLeUFoTHhrQUFBRUFKUUFBQVRFQlpRQVlBQUJ6TlNNMU5qWTNNdzREQnpNMVBnSTNNeFV6RlNNVng2SWZMUTlDQ0JnYkdRcGpCUWdJQXlRdUxrOHZOSE5BSVVRK01BNVpEQmtaREtNMVR3QUFBUUFyLy9RQkxRRmJBQ0FBQUZjaUppY3pGQllXTXpJMk5UUW1JeUlHQnljM014VWpCelkyTXpJV0ZoVVVCcTA2UndFOUV5QVNIaVFpSFJNakNqa1AxYUFHRENNV0lEUWZSQXcrTnhVY0R5TW1JaDhQRHdtOU9VNEpDeGswS0QxQ0FBQUNBQ2IvOUFFekFXWUFHd0FuQUFCWElpWW1OVFEyTmpNeUZoVWpOQ1lqSWdZSE5qWXpNaFlXRlJRR0p6STJOVFFtSXlJR0ZSUVdzU3crSVNBL0xEMDRQUjRkS2h3Q0RpOFpLVFVaU2pzaklpRWpJU1FqRENCTVEwbFdKRDh2SEI0OU54SVVIelVpTjBNMUtoc2RKU1lmR2lnQUFBRUFLUUFBQVM4Qld3QVBBQUJ6TkRZMk55TTFJUlVPQWhVVUZCVmdJamtnc2dFR0lrSXJQR2RhSlRrb0pWdGtNd1lQQndBREFDci85QUV0QVdZQUd3QW5BRE1BQUZjaUppWTFORFkzSmlZMU5EWTJNeklXRmhVVUJnY1dGaFVVQmdZbk1qWTFOQ1lqSWdZVkZCWTNNalkxTkNZaklnWVZGQmFzTGpvYUdoc1ZGeHMyS0NjMkd4Y1ZHeG9hT1M0aElpSWhJaUlpSWh3Zkh4d2NIeDhNSFRFZUdpd05EaWdXSGk0Ykd5NGVGaWdPRFN3YUhqRWROUjBhR2gwZEdob2RvaHdYR0J3Y0dCY2NBQUFDQUNYLzlBRXlBV1lBR3dBbkFBQlhJaVkxTXhRV016STJOd1lHSXlJbUpqVTBOak15RmhZVkZBWUdKekkyTlRRbUl5SUdGUlFXcHowNFBSOGNLaHdDRGpBWktEVVpTamd0UGlBZ1Bpd2lKQ0lqSWlJaEREOHZIQjA5TmhJVUh6VWhOMFFmVFVOSlZpUzJKaDhiSnlrY0hDWUFBQUlBSndGSUFURUN1Z0FQQUIwQUFGTWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTFOVFFtSXlJR0ZSVVVGcXdwUENBZ1BDa3BPeUVoT3lrb0hSMG9LQjBkQVVnaVVVWkhVU0VoVVVkR1VTSTNPVDBZUFRrNVBSZzlPUUFBQVFBN0FWUUJJZ0sxQUEwQUFGTTFNelVqTlQ0Q056TVJNeFU3V1ZrVktpZ1FIMUVCVkRqWEtRSUpFUTMrMXpnQUFRQXRBVlFCTEFLNkFDWUFBRk0xTkRZMk56WTJOVFFtSXlJR0JoVVZJeVltTlRRMk5qTXlGaFlWRkE0Q0J3WUdCek1WTFIwdkdDUTNIUjhZSFEwN0FRSWtQQ01wTkJvVUlpZ1ZGQ1FJdFFGVUZ4NHRKQkVaTVNBVUhCQWFFUmdGRHdnbU1CWWNMaHdhS2lNZERnNGFEamdBQVFBcEFVZ0JNQUs2QURVQUFGTWlKalUxTXhVVUZqTXlOalkxTkNZbUl5TTFNekkyTmpVMEppWWpJZ1lHRlJVak5UUTJOak15RmhZVkZBWUhGUllXRlJRR0JxNUJSRDBrSUJZZ0VSUWlFeW9zRWh3UkR4c1JFUjRSUGlFNUl5UTNJQjBWR2lBaU9nRklPak1LQ3hzY0N4a1VGUllLTlFvWUV4RVdDd3dZRVF3T0h5NGFGeXdoSENZTEF3b3JJQ0F3R1FBQkFDVUJWQUV4QXJrQUdBQUFVelVqTlRZMk56TU9Bd2N6TlQ0Q056TVZNeFVqRmNlaUh5MFBRZ2dZR3hrS1l3VUlDQU1rTGk0QlZFOHZOSE5BSVVRK01BNVpEQmtaREtNMVR3QUFBUUFyQVVnQkxRS3ZBQ0FBQUZNaUppY3pGQllXTXpJMk5UUW1JeUlHQnljM014VWpCelkyTXpJV0ZoVVVCcTA2UndFOUV5QVNIaVFpSFJNakNqa1AxYUFHRENNV0lEUWZSQUZJUGpjVkhBOGpKaUlmRHc4SnZUbE9DUXNaTkNnOVFnQUNBQ1lCU0FFekFyb0FHd0FuQUFCVElpWW1OVFEyTmpNeUZoVWpOQ1lqSWdZSE5qWXpNaFlXRlJRR0p6STJOVFFtSXlJR0ZSUVdzU3crSVNBL0xEMDRQUjRkS2h3Q0RpOFpLVFVaU2pzaklpRWpJU1FqQVVnZ1RFTkpWaVEvTHh3ZVBUY1NGQjgxSWpkRE5Tb2JIU1VtSHhvb0FBRUFLUUZVQVM4Q3J3QVBBQUJUTkRZMk55TTFJUlVPQWhVVUZCVmdJamtnc2dFR0lrSXJBVlE4WjFvbE9TZ2xXMlF6Qmc4SEFBTUFLZ0ZJQVMwQ3VnQWJBQ2NBTXdBQVV5SW1KalUwTmpjbUpqVTBOall6TWhZV0ZSUUdCeFlXRlJRR0JpY3lOalUwSmlNaUJoVVVGamN5TmpVMEppTWlCaFVVRnF3dU9ob2FHeFVYR3pZb0p6WWJGeFViR2hvNUxpRWlJaUVpSWlJaUhCOGZIQndmSHdGSUhURWVHaXdORGlnV0hpNGJHeTRlRmlnT0RTd2FIakVkTlIwYUdoMGRHaG9kb2h3WEdCd2NHQmNjQUFJQUpRRklBVElDdWdBYkFDY0FBRk1pSmpVekZCWXpNalkzQmdZaklpWW1OVFEyTXpJV0ZoVVVCZ1luTWpZMU5DWWpJZ1lWRkJhblBUZzlIeHdxSEFJT01Ca29OUmxLT0MwK0lDQStMQ0lrSWlNaUlpRUJTRDh2SEIwOU5oSVVIelVoTjBRZlRVTkpWaVMySmg4Ykp5a2NIQ1lBQWdBbkFhd0JNUU1lQUE4QUhRQUFVeUltSmpVME5qWXpNaFlXRlJRR0JpY3lOalUxTkNZaklnWVZGUlFXckNrOElDQThLU2s3SVNFN0tTZ2RIU2dvSFIwQnJDSlJSa2RSSVNGUlIwWlJJamM1UFJnOU9UazlHRDA1QUFBQkFEc0J1QUVpQXhrQURRQUFVelV6TlNNMVBnSTNNeEV6RlR0WldSVXFLQkFmVVFHNE9OY3BBZ2tSRGY3WE9BQUJBQzBCdUFFc0F4NEFKZ0FBVXpVME5qWTNOalkxTkNZaklnWUdGUlVqSmlZMU5EWTJNeklXRmhVVURnSUhCZ1lITXhVdEhTOFlKRGNkSHhnZERUc0JBaVE4SXlrMEdoUWlLQlVVSkFpMUFiZ1hIaTBrRVJreElCUWNFQm9SR0FVUENDWXdGaHd1SEJvcUl4ME9EaG9PT0FBQkFDa0JyQUV3QXg0QU5RQUFVeUltTlRVekZSUVdNekkyTmpVMEppWWpJelV6TWpZMk5UUW1KaU1pQmdZVkZTTTFORFkyTXpJV0ZoVVVCZ2NWRmhZVkZBWUdya0ZFUFNRZ0ZpQVJGQ0lUS2l3U0hCRVBHeEVSSGhFK0lUa2pKRGNnSFJVYUlDSTZBYXc2TXdvTEd4d0xHQlVWRndrMUNoZ1RFUllMREJnUkRBNGZMaG9YTENFY0pnc0RDaXNnSURBWkFBRUFKUUc0QVRFREhRQVlBQUJUTlNNMU5qWTNNdzREQnpNMVBnSTNNeFV6RlNNVng2SWZMUTlDQ0JnYkdRcGpCUWdJQXlRdUxnRzRUeTgwYzBBaFJENHdEbGtNR1JrTW96VlBBQUFCQUNzQnJBRXRBeE1BSUFBQVV5SW1Kek1VRmhZek1qWTFOQ1lqSWdZSEp6Y3pGU01ITmpZek1oWVdGUlFHclRwSEFUMFRJQkllSkNJZEV5TUtPUS9Wb0FZTUl4WWdOQjlFQWF3K054VWNEeU1tSWg4UER3bTlPVTRKQ3hrMEtEMUNBQUlBSmdHc0FUTURIZ0FiQUNjQUFGTWlKaVkxTkRZMk16SVdGU00wSmlNaUJnYzJOak15RmhZVkZBWW5NalkxTkNZaklnWVZGQmF4TEQ0aElEOHNQVGc5SGgwcUhBSU9MeGtwTlJsS095TWlJU01oSkNNQnJDQk1RMGxXSkQ4dkhCNDlOeElVSHpVaU4wTTFLaHNkSlNZZkdpZ0FBUUFwQWJnQkx3TVRBQThBQUZNME5qWTNJelVoRlE0Q0ZSUVVGV0FpT1NDeUFRWWlRaXNCdUR4bldpVTVLQ1ZiWkRNR0R3Y0FBd0FxQWF3QkxRTWVBQnNBSndBekFBQlRJaVltTlRRMk55WW1OVFEyTmpNeUZoWVZGQVlIRmhZVkZBWUdKekkyTlRRbUl5SUdGUlFXTnpJMk5UUW1JeUlHRlJRV3JDNDZHaG9iRlJjYk5pZ25OaHNYRlJzYUdqa3VJU0lpSVNJaUlpSWNIeDhjSEI4ZkFhd2RNUjRhTEEwT0tCWWVMaHNiTGg0V0tBNE5MQm9lTVIwMUhSb2FIUjBhR2gyaUhCY1lIQndZRnh3QUFnQWxBYXdCTWdNZUFCc0FKd0FBVXlJbU5UTVVGak15TmpjR0JpTWlKaVkxTkRZek1oWVdGUlFHQmljeU5qVTBKaU1pQmhVVUZxYzlPRDBmSENvY0FnNHdHU2cxR1VvNExUNGdJRDRzSWlRaUl5SWlJUUdzUHk4Y0hUMDJFaFFmTlNFM1JCOU5RMGxXSkxZbUh4c25LUndjSmdBQi95RC85QUdJQXJvQUF3QUFSd0V6QWVBQ0lrYjkzZ3dDeHYwNkFBQURBRHYvOUFNU0Fyb0FBd0FxQURnQUFGY0JNd0VsTlRRMk5qYzJOalUwSmlNaUJnWVZGU01tSmpVME5qWXpNaFlXRlJRT0FnY0dCZ2N6RlFFMU16VWpOVDRDTnpNUk14VjJBaUpGL2Q0QldCNHVHU000SGg0WUhRMDdBUUlrT3lNcE5Sa1VJaWdVRlNNSXRQMHBXVmtWS2lnUUgxRU1Bc2I5T2d3WEhpMGtFUmt4SUJRY0VCb1JHQVVQQ0NZd0Zod3VIQm9xSXgwT0Rob09PQUZVT05jcEFna1JEZjdYT0FBREFEdi85QU1HQXJvQUF3QVJBQ29BQUZjQk13RUROVE0xSXpVK0FqY3pFVE1WQVRVak5UWTJOek1PQXdjek5UNENOek1WTXhVakZYWUNJa1g5M29CWldSVXFLQkFmVVFGNm94OHVEMElJR0JzYUNXTUVDUWdDSlM0dURBTEcvVG9CWURqWEtRSUpFUTMrMXpqK3JFOHZOSE5BSVVRK01BNVpEQmtaREtNMVR3QUFBd0FwLy9RREJnSzZBQU1BT1FCU0FBQlhBVE1CQXlJbU5UVXpGUlFXTXpJMk5qVTBKaVlqSXpVek1qWTJOVFFtSmlNaUJnWVZGU00xTkRZMk16SVdGaFVVQmdjVkZoWVZGQVlHQVRVak5UWTJOek1PQXdjek5UNENOek1WTXhVakZYWUNJa1g5M2cxQlJEMGtJQllnRVJRaUV5b3NFaHdSRHhzUkVSNFJQaUU1SXlRM0lCMFZHaUFpT2dISW94OHVEMElJR0JzYUNXTUVDUWdDSlM0dURBTEcvVG9CVkRvekNnc2JIQXNaRkJVV0NqVUtHQk1SRmdzTUdCRU1EaDh1R2hjc0lSd21Dd01LS3lBZ01Cbit1RTh2TkhOQUlVUStNQTVaREJrWkRLTTFUd0FBQVFCWkFBQUF1d0JwQUFNQUFITTFNeFZaWW1scEFBRUFULzl0QUxvQWFRQU1BQUJYTlQ0Q05TTTFNeFVVQmdaUEV4a01MbUVoTVpNcEJCNHRHMmxlT2tFZUFBQUNBR01BQUFERkFnNEFBd0FIQUFCVE5UTVZBelV6RldOaVltSUJwV2xwL2x0cGFRQUNBRnIvYlFER0FnNEFEQUFRQUFCWE5UNENOU00xTXhVVUJnWUROVE1WV2hNWkRDNWlJakVQWXBNcEJCNHRHMmxlT2tFZUFqTnBhUUFBQXdCWkFBQUM4Z0JwQUFNQUJ3QUxBQUJ6TlRNVk16VXpGVE0xTXhWWllycGl1V0pwYVdscGFXa0FBZ0JVQUFBQXZRS3VBQU1BQndBQWR3TXpBd2MxTXhWc0dHa1lUV0sxQWZuK0I3VnBhUUFDQUZUL1h3QzlBZzBBQXdBSEFBQlhFek1UQXpVekZWUVlPUmhsWXFFQit2NEdBa1pvYUFBQUFnQTdBQUFCK0FLNkFDMEFNUUFBZHpVMFBnUTFOQzRDSXlJT0FoVVVGQmNqSmlZMU5ENERNekllQXhVVURnUVZGUWMxTXhYd0dDY3JKeGdIR1RJcExqWWJDUUZaQVFJT0lEWlBOakZJTVIwTkdpa3RLaHBiWXJFNEp6UW1JU012SVEwbEl4Z2RMQ29PQncwSUJCRU5GelkyTEJzWEp5OHdGVEJDTFNJaEtSNHVzV2xwQUFBQ0FFdi9WQUlKQWc0QUxRQXhBQUJGSWk0RE5UUStCRFUxTXhVVURnUVZGQjRDTXpJK0FqVTBKalV6RmhZVkZBNERBelV6RlFFZk1VZ3dIZzBhS1M0cEdsUVlKeXNuR0FnWU1pb3ROaHNKQVZrQ0FnOGdOazlkWXF3WEppOHhGVEJCTGlJZ0tSNHVPQ1kwSnlBa0xpSU1KU01ZSFNzckRRa09CUVFTREJZMk5pd2JBbEZwYVFBQUFRQjFBUzhBMlFHYUFBTUFBRk0xTXhWMVpBRXZhMnNBQVFCSUFOd0JQd0hUQUE4QUFIY2lKaVkxTkRZMk16SVdGaFVVQmdiREpEY2dJRGNrSkRnZ0lEamNJRGNrSkRnZ0lEZ2tKRGNnQUFBQkFDa0JUUUZ1QXE4QUVRQUFVemNISnpjbk54Y25Nd2MzRndjWEJ5Y1hxZ3RxSW5WMUltb0xRd3RxSW5aMkltb0xBVTJKVGpzNlBEcFBpNHRQT2p3Nk8wNkpBQUlBR1AvMEFpMEN1Z0FiQUI4QUFGYzNJelV6TnlNMU16Y3pCek0zTXdjekZTTUhNeFVqQnlNM0l3Y1RNemNqUHlwUllTSlZaaTlQTDVNdlVEQlFYeU5WWlNwUEtwUXBPWlFpa3d5L1RKdE0xTlRVMUV5YlRMKy92d0VMbXdBQi8vVURFd0dHQTBNQUF3QUFRelVoRlFzQmtRTVRNREFBQUFFQUFQL1BBU1lDM3dBREFBQlZFek1EMzBmZk1RTVEvUEFBQVFBQS84OEJKZ0xmQUFNQUFFVWpBek1CSmtmZlJ6RURFQUFDQUZRQUFBQzlBcTRBQXdBSEFBQnpFek1UQXpVekZWUVlPUmhsWWdINS9nY0NSV2xwQUFJQVMvLzBBZ2tDcmdBdEFERUFBRVVpTGdNMU5ENEVOVFV6RlJRT0JCVVVIZ0l6TWo0Q05UUW1OVE1XRmhVVURnTUROVE1WQVI4eFNEQWVEUm9wTGlrYVZCZ25LeWNZQ0JneUtpMDJHd2tCV1FJQ0R5QTJUMTFpREJjbUx6RVZNRUV1SWlBcEhpNDRKalFuSUNRdUlnd2xJeGdkS3lzTkNRNEZCQklNRmpZMkxCc0NVV2xwQUFBQkFCQUJTQUIwQWFvQUF3QUFVelV6RlJCa0FVaGlZZ0FCQUI4QlNBQjhBYW9BQXdBQVV6VXpGUjlkQVVoaVlnQUJBRWovWXdFeEF1QUFEd0FBVnlZbU5UUTJOek1PQWhVVUZoWVgrRlZiVzFVNUtFTW5KME1vblYzbmUzcm9YRDJTbjFCUW9KSTlBQUVBTXY5aUFSc0Mzd0FQQUFCVEZoWVZGQVlISXo0Q05UUW1KaWRyVmxwYVZqa3BRaWNuUWlrQzMxM25lM3JvWEQyU24xQlJuNUk5QUFBQkFDMy9ZUUVzQXQ4QUtBQUFSU0l1QWpVMU5DWW1JelV5TmpZMU5UUStBak1WSWdZR0J3Y0dCaU1WTWhZV0Z4Y2VBak1CTENJK0x4c2FKeFFVSnhvYkx6NGlFU2tkQVFrQ0tqa21LeE1CQ1FFZEtCS2ZDeDB6S05ZV0dndFZDeG9WMkNnekhRczRDaG9hMnpJNENSb3ZJZG9aR3dvQUFRQTAvMkVCTkFMZkFDZ0FBRk15SGdJVkZSUVdGak1WSWdZR0ZSVVVEZ0lqTlRJMk5qYzNOall6TlNJbUppY25MZ0lqTkNNOU1Cc2FKeFFVSnhvYk1EMGpFaWdlQVFrQ0tqa21LeE1CQ1FFZEtCTUMzd3NkTXlqV0ZSc0xWUXNhRmRnb014MExPQW9iR2RzeU9Ba2FMeUhhR2hvS0FBRUFYZjlmQVJrQzN3QUhBQUJYRVRNVkl4RXpGVjI4YlcyaEE0QkIvUUpCQUFBQkFBLy9Yd0RMQXQ4QUJ3QUFVeEVqTlRNUkl6WEx2RzF0QXQvOGdFRUMva0VBQVFBb0FPSUJKUUU3QUFNQUFIYzFNeFVvL2VKWldRQUFBUUFvQU9JQkpRRTdBQU1BQUhjMU14VW8vZUpaV1FBQUFRQUFBT3NCOUFFeUFBTUFBSFUxSVJVQjlPdEhSd0FBQVFBQUFPc0Q2QUV5QUFNQUFIVTFJUlVENk90SFJ3QUFBUUFXQU9zRGp3RXlBQU1BQUhjMUlSVVdBM25yUjBjQUFRQXdBT0lCS3dFN0FBTUFBSGMxTXhVdysrSlpXUUFBQVFBb0FPSUJKUUU3QUFNQUFIYzFNeFVvL2VKWldRQUFBUUFBLzN3QjVmKy9BQU1BQUZVMUlSVUI1WVJEUXdBQUFnQUEvd1lCNWYrL0FBTUFCd0FBVlRVaEZRVTFJUlVCNWY0YkFlV0NRVUY0UVVFQUFRQW9BVEVCSlFHTEFBTUFBRk0xTXhVby9RRXhXbG9BQVFBb0FURUJKUUdMQUFNQUFGTTFNeFVvL1FFeFdsb0FBUUFBQVR3QjlBR0NBQU1BQUZFMUlSVUI5QUU4UmtZQUFRQUFBVHdENkFHQ0FBTUFBRkUxSVJVRDZBRThSa1lBQVFBb0FURUJKUUdMQUFNQUFGTTFNeFVvL1FFeFdsb0FBUUErLzIwQXFnQnBBQXdBQUZjMVBnSTFJelV6RlJRR0JqNFVHUXN1WWlJeGt5a0VIaTBiYVY0NlFSNEFBQUlBUHY5dEFVVUFhUUFNQUJrQUFGYzFQZ0kxSXpVekZSUUdCaGMxUGdJMUl6VXpGUlFHQmo0VUdRc3VZaUl4Z3hNWkN5NWlJVEtUS1FRZUxSdHBYanBCSGdVcEJCNHRHMmxlT2tFZUFBSUFSQUd6QVVzQ3JnQU1BQmtBQUVFVkRnSVZNeFVqTlRRMk5pY1ZEZ0lWTXhVak5UUTJOZ0ZMRXhrTExtSWhNb01UR1FzdFlpSXlBcTRwQkI0dEcyaGRPa0VmQkNrRUhpMGJhRjA2UVI4QUFnQStBYk1CUlFLdUFBd0FHUUFBVXpVK0FqVWpOVE1WRkFZR0Z6VStBalVqTlRNVkZBWUdQaFFaQ3k1aUlqR0RFeGtMTG1JaE1nR3pLQVVlTEJ0cFhqbENIUVVvQlI0c0cybGVPVUlkQUFBQkFFUUJzd0N3QXE0QURBQUFVeFVPQWhVekZTTTFORFkyc0JNWkN5MWlJaklDcmlrRUhpMGJhRjA2UVI4QUFRQStBYk1BcWdLdUFBd0FBRk0xUGdJMUl6VXpGUlFHQmo0VUdRc3VZaUl4QWJNb0JSNHNHMmxlT1VJZEFBSUFQZ0IrQWVZQ0RnQUZBQXNBQUhjbk56TUhGek1uTnpNSEY5dWRuVWVCZ1h5ZG5VaUNnbjdJeU1qSXlNakl5QUFBQWdCQUFINEI2QUlPQUFVQUN3QUFRUmNISXpjbkl4Y0hJemNuQVV1ZG5VaUNnbnllbmtlQmdRSU95TWpJeU1qSXlNZ0FBQUVBUGdCK0FTSUNEZ0FGQUFCM0p6Y3pCeGZibloxSGdZRit5TWpJeUFBQUFRQkFBSDRCSlFJT0FBVUFBRk1YQnlNM0o0ZWVua2VCZ1FJT3lNakl5QUFDQURnQm1nRTZBcTRBQlFBTEFBQlRKelV6RlFjekp6VXpGUWRHRGwwUlpnNWVFZ0dhZ1pPVGdZR1RrNEVBQVFBNEFab0FsUUt1QUFVQUFGTW5OVE1WQjBZT1hSRUJtb0dUazRFQUFRQTgvNGdCeGdKTkFBVUFBRVVCQVRNQkFRRm0vdFlCS1dEKzF3RXFlQUZqQVdMK252NmRBQUVBUy8rSUFkUUNUUUFGQUFCVEFRRWpBUUdyQVNuKzEyQUJLdjdXQWszK25mNmVBV0lCWXdBQ0FEUC9xQUtwQXdRQUF3QWxBQUJYQVRNQk55SW1KalUwTmpNeUZoWVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFHQnF3QlFVTCt2NDFwa2sydW0xaUlUV0F6WEQ1SWFEWTJaMGxBWFROZFQ0aFlBMXo4cEV4Tm5YbXpzRGx6Vnp4T0p6aDFYQlZiY3pZbVR6eFpjamdBQUFJQU5mL1BBZklDMHdBREFDZ0FBRVVSTXhFbklpWW1OVFEyTmpNeUhnSVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFPQWdFRU1obE1aelUxYVUwMlR6UVpXUmsyTEN4QUlpRkFMeTAyR2xVWk5GQXhBd1Q4L0hVN2VsNWNlajBjTmswd0xqc2NKMU5GRlVKVktCODlLU3hMT0I4QUFBTUFNLytvQXFrREJBQURBQWNBS1FBQVZ3RXpBU01CTXdFM0lpWW1OVFEyTXpJV0ZoVWpOQ1ltSXlJR0JoVVZGQllXTXpJMk5qVXpGQVlHN2dGQ1FmNi94UUZCUXY2L3ptbVNUYTZiV0loTllETmNQa2hvTmpablNVQmRNMTFQaUZnRFhQeWtBMXo4cEV4Tm5YbXpzRGx6Vnp4T0p6aDFYQlZiY3pZbVR6eFpjamdBQUFJQUlRQmpBaFVDV1FBakFETUFBSGNuTnlZbU5UUTJOeWMzRnpZMk16SVdGemNYQnhZV0ZSUUdCeGNISndZR0l5SW1KemN5TmpZMU5DWW1JeUlHQmhVVUZoWk9MRFlhR1JrYU55NDRIMHdwS1U0ZU9DMDNHeGtaR3pjc054OU9LaWxPSDVZeVVURXhVVEl4VWpFeFVtTXNOeUJQS1NwUUhqWXRPQm9iR3hvNExUWWVVQ29wVHlBM0xEa2JHeHNiQ2pOVE1qSlNNakpTTWpKVE13QUFBZ0FqLzg4QjFnTFRBQU1BUmdBQVZ4RXpFU2NpTGdJMU5EUTNNd1lVRlI0Q016STJOalUwSmlZbkxnTTFORDRDTXpJZUFoVVVGQWNqTlRRbUppTWlEZ0lWRkJZV0Z4NERGUlFPQXVreUhqWlNOaHdCVndFQkl6NG1JVGdoSzBZbUlFQXpIeDAyVFM4eVN6SVlBVllWTXkwZEtod09JamtoSTBrOUpTQTdUekVEQlB6OGRSWXBPeVVFQ1FNRUJRTWpLUkFTSXhvaUloVUxDUlVoTXljak5pVVVGaWcwSFFVTEF3c1VKQmdLRWhrUkdod1NDZ29XSURjdEtUNG9Fd0FBQXdBbi8yTUNNZ0xUQUIwQUlRQTBBQUJYSWlZbU5UUTJOak15RmhZWE16VWpOVE0xTXhVekZTTVJJeWNqQmdZSE5TRVZKekkyTmpVMU5DNENJeUlHQmhVVkZCWVc5a0ZjTWpKYU95SThNaEVHbXBwWVJVVkdDUWNhVmFvQlBySXlQQjBXSmpNY0x6c2RIejBNT250aVhYZzZFQ0ljZ0VORVJFUDl0RXNzSzVGQlFkNHNWRDRTTlVvckVpZFRRaFZFVXlRQUFBRUFHZi8wQWc4Q3VnQTNBQUJGSWk0Q0p5TTFNeVkwTlRRME55TTFNejRETXpJV0Z4VW1KaU1pQmdZSE14VWhCaFFWRkJRWElSVWpIZ0l6TWpZM0ZRWUdBYWs5YVZRNkRrNUZBUUZGVGc0NlZHazlHek1ZRXlzVk8ySkdFUC8rOUFFQkFRei9FRVppT3hVckV4Z3pEQ0ZDWHowL0NSTUpDUklLUHoxZlFTSUlDRWtIQmloUU96OEpFd2tKRXdrL08xQW9CZ2RKQ0FnQUFRQXMvMGtDREFMYkFDTUFBRmNpSmlZbk56TXlOamNUSXpjek56NENNeklXRmhjSEl5SUdCd2N6QnlNRERnSjFEUndZQ0E0MEdSMEVZMHdPVGh3SEh6b3REaG9ZQ0EwMUdCNEZIR1VQWldNSElEaTNBd1lDUGhrWUFjOUlpQjgzSXdNRkF6NFpHSWRJL2pBZ055SUFBQUVBSlFBQUFsQUNyZ0FSQUFCek5TTTFNeEVoRlNFVklSVWhGVE1WSXhWcVJVVUI1djU1QVdUK25OblpkVVFCOVZMY1VYWkVkUUFBQWdBei83SUN5QUx4QUFNQUxnQUFSUkV6RVNjaUpqVTBOall6TWg0Q0ZTTTBMZ0lqSWc0Q0ZSVVVGaFl6TWpZMk5UVWpOU0VSSXljT0FnRnBRQ0ttcmxHYmNVVnlWQzFoSVRwT0xUdGVRU0U1YkV4TlpESHlBVkZIQ2h0S1dVNERQL3pCUXE2MWRwNVBIajFjUHl3L0tCRWVRR1JGRlYxME5TdFlRd3hSL3BkWEl5d1VBQUFCQUNzQUFBS05BcTRBRXdBQWN4RWpOVE1STXhFekV6TUJNeFVqQVNNQkl4RnFQejlmVXY5cy93RG41Z0VHYlA3NlVnRThSQUV1L3RJQkx2N1NSUDdFQVR6K3hBQUFBUUFiQUFBQ0JRSzZBQ2tBQUhNMU16VWpOVE0xSXpVek5UUTJOak15RmhZVkZTTTFOQ1ltSXlJR0JoVVZNeFVqQnpNVkl3Y2hGU2xMV1ZsWldUTmJQRHRaTTFnZE1TRWhOQjJscFFLbnFnUUJRazErUlQxRWJUNVVLaWxTUHc4UkpqRVlHREFrZEVROVJYNU5BQUFCQUE4QUFBSHNBcTRBSGdBQWN6VUhOVGMxQnpVM05UTVZOeFVIRlRjVkJ4VXpNalkxTlRNVkZBWUdJMVZHUmtaR1gzTnpjM056TVRWZkxsZy8zVEpGTWt3eFJUTDZ1RlJGVlV4VVJWVE1OelpIUWtCWUxRQUFBUUE5QUFBQ2NRTUZBQmtBQUhNUk5EWTJOelV6RlI0Q0ZSRWpFVFFtSnhFakVRWUdGUkU5UEhCT1FFOXZQRjlSU2tCSlVRR3FXWFU4QkUxTkJEeDFXZjVXQWJSUldBaitFUUh2QmxsUy9rd0FBQU1BSlFBQUF1TUNyZ0FjQUNBQUpBQUFjeEV6QVI0Q0Z6TXVBalVSTXhFakFTNERKeU1lQWhVUkF6VWhGUVUxSVJWcVhBRWtFU01kQndjQ0JBSmRWdjdYRUJrVUV3a0hBZ01Db1FLKy9VSUN2Z0t1L204WE96a1dGRGM4R3dHUS9WSUJtUlltSlNrWkdVbE9JLzZYQVg1RlJZOUZSUUFEQUNRQUFBTE1BcTRBRXdBWkFCOEFBSE1SSXpVek5TRXlGaFlYTXhVakRnSWpJeEVSTXpJMk55RTFJU1ltSXlOcVJrWUJVRUJhTWdWQlFRYzRXVHJ3Nmk0L0NQNmhBV0FIT3pUcUFiaEZzU3hRTlVVMVVDeisrUUZaTWkxRkxUSUFBQUlBSkFBQUFzZ0NyZ0FlQUNnQUFITVJJelV6TlNNMU16VWhNaFlYTXhVakZoUVZGQVlITXhVakJnWWpJeEVSTXpJMk5UUW1KaU1qYWtaR1JrWUJVRXhoRlV3OEFRRUJQVThZWkVUdzZqaENHellwNmdGNlJUaEVjejQxUkFZT0JnZ1BCMFUxUHY3NUFWbEdQU2s0SHdBQ0FDVUFBQUtOQXE0QUdBQWlBQUJ6TlNNMU16VWpOVE1SSVRJV0ZoVVVCZ1lqSXhVekZTTVZFVE15TmpVMEppWWpJMnBGUlVWRkFWQkhYUzgwWDBIdzB0THFPRUliTmlucWNFUlRVZ0ZWTlY0K1AyRTJVMFJ3QVZsR1BTazRId0FCQUV3QUFBSmFBcTRBSFFBQVlRRTFNekkyTnlFMUlTWW1JeU0xSVJVakZoWVhNeFVqRGdJakl3RUJVdjc2MVRJOENQNjFBVXdHT1RYWUFnNktFeFFEWUdJR05GZy9WQUVFQVFaVE15eEZMRE5TUlJVNEgwVTFVQzMrK2dBQUFRQWJBQUFDQlFLNkFDRUFBSE0xTXpVak5UTTFORFkyTXpJV0ZoVVZJelUwSmlZaklnWUdGUlV6RlNNSElSVXBTMWxaTTFzOE8xa3pXQjB4SVNFMEhhV2xDUUZDVGVGTWhENVVLaWxTUHc4UkpqRVlHREFraTB6aFRRQURBQW9BQUFPbUFxNEFMd0F6QURjQUFITURNeE1lQXhjelBnUTNFek1USGdJWE16NEVOeE16QXlNRExnTW5JdzRFQndNQk5TRVZCVFVoRmRXK1pYWUVCd2dHQXdvQ0JRUUZCUU51Zkc0RkNRa0RDUUlHQlFZR0EzaGJ2M056QkFjR0JRSUpBZ01GQlFZRWNQNi9BNXo4WkFPY0FxNytQQTRrSnlRUERCMGZIaHNLQWNYK094SXpNaFFMSEI4ZUhBd0J4UDFTQWRJU0pTVWhEUXNhSEI0ZkRmNHZBWlErUG8wK1BnQUFBUUFLQUFBQ0tBS3VBQ1VBQUhNMUl6VXpOU00xTXlZbUp3TXpGeDRDRnpNK0FqYzNNd2NHQmdjekZTTVZNeFVqRmV6RnhjV21DUndJbG1kNEJ4RVNCd1VHRWhFSGRtT1NDaHdKcE1URXhKOC9SajhRS2c4QkF0a05JU0VORFNBaURkbjlFUzBRUDBZL253QUFBUUJ1QU1BQTZ3RTlBQXNBQUhjaUpqVTBOak15RmhVVUJxMGJKQ1FiR3lNandDUWJHeU1qR3hza0FBQURBRGIvNHdGS0F2TUFBd0FIQUFzQUFGY1RNd00zTlRNVkF6VXpGVGJPUnMxY1pmeGxIUU1RL1BBOGJHd0NKRzF0QUFIL0YvLzBBWUFDdWdBREFBQkhBVE1CNlFJaVIvM2ZEQUxHL1RvQUFBTUFQQUFJQWhjQitBQURBQWNBQ3dBQVV6VWhGUUUxSVJVbE5TRVZQQUhiL2lVQjIvNGxBZHNCckV4TS9seExTOUpNVEFBQkFNSC9CZ0ZnQTFzQUN3QUFWelV5TmpZMUF6TVRGQVlHd1JnbUZnNU1EU3BJK2pBS0dSWUQ3UHdiTHpBUkFBQUJBUW4vQmdHb0Exc0FDd0FBUlFNbU5qWXpGU0lHQmhVVEFSWU1BU3BKTEJjbUZ3NzZBK1V2TUJFeENoZ1gvQlVBQUFFQVVRREdBaW9CdXdBRkFBQjNOU0VWSVJWUkFkbitjc2IxU3FzQUFBRUFUQUFBQWlRQi93QUxBQUJoTlNNMU16VXpGVE1WSXhVQkU4ZkhTOGJHMlV6YTJrelpBQUFCQUV3QTJnSWxBU1lBQXdBQWR6VWhGVXdCMmRwTVRBQUJBR2tBTHdJSkFjOEFDd0FBZHljM0p6Y1hOeGNIRndjbm56YWFtaldhbXphYm1qYWFMemFhbWphYW1qYWJtRGFhQUFNQVRBQVlBaVFCNkFBREFBY0FDd0FBZHpVaEZRVTFNeFVETlRNVlRBSFkvdVpiVzF2WlRVM0JXbG9CZGxwYUFBSUFUQUJ2QWlVQmpnQURBQWNBQUZNMUlSVUZOU0VWVEFIWi9pY0IyUUZDVEV6VFRFd0FBUUJNQUJrQ0pRSGtBQk1BQUhjM0l6VXpOeU0xSVRjekJ6TVZJd2N6RlNFSGxUSjdwVTd6QVIwelJETjRvazd3L3VZeUdWWk1oMHhXVmt5SFRGWUFBQUVBVmdBRkFqQUIrQUFHQUFCM05TVWxOUVVWVmdHUi9tOEIyZ1ZVcGFaVXlsOEFBQUVBUVFBRkFoc0IrQUFHQUFCbEpUVWxGUVVGQWh2K0pnSGEvbThCa1FYS1g4cFVwcVVBQWdCTEFBQUNKZ0p2QUFZQUNnQUFkelVsSlRVRkZRRTFJUlZMQVpMK2JnSGIvaVVCMm54VXBxVlV5bC8rdWt4TUFBQUNBRXNBQUFJbEFtOEFCZ0FLQUFCbEpUVWxGUTBDTlNFVkFpWCtKZ0hhL204QmtmNG5BZGw4eWwvS1ZLV20wRXhNQUFJQVRBQUFBaVFDZmdBTEFBOEFBR1UxSXpVek5UTVZNeFVqRlFVMUlSVUJFOGZIUzhiRy91NEIySC9aVE5yYVRObC9URXdBQUFJQVNBQkRBaW9CdkFBYkFEY0FBRk0xUGdJek1oNENNekkyTmpjVkRnSWpJaTRDSXlJR0JnYzFQZ0l6TWg0Q016STJOamNWRGdJaklpNENJeUlHQmtnS0p6a2hIREV3TWh3Zk5pc01DaWM0SXhzeE1ESWRIVGNxRFFvbk9TRWNNVEF5SEI4Mkt3d0tKemdqR3pFd01oMGROeW9CRTFVUUlSY1NHQklYSWc5VkR5SVhFaGdTRnlIZ1ZSQWhHQklaRWhnaUQxWVBJaGNTR0JJWElRQUFBUUE5QU5jQ013R0NBQnNBQUhjMVBnSXpNaDRDTXpJMk5qY1ZEZ0lqSWk0Q0l5SUdCajBMS1RvakhUTXlOUjBmT0MwTkNpbzVKQncwTWpVZEh6Z3QxMVlRSVJnU0dSSVlJZzlYRHlJWEVoZ1NGeUVBQVFCSEFNWUNJQUc3QUFVQUFHVTFJVFVoRlFIVi9uSUIyY2FyU3ZVQUFRQnJBU1lDQmdLdUFBWUFBRk1UTXhNakF3TnJvbGFqVVg1OEFTWUJpUDU0QVRqK3lBQURBQzhBa0FLYUFjUUFIZ0FxQURZQUFIY2lKaVkxTkRZMk16SVdGaGMrQWpNeUZoWVZGQVlHSXlJbUppY0dCaWN5TmpjbUppTWlCaFVVRmlFeU5qVTBKaU1pQmdjV0ZyMG9RU1VsUVNvbk96QVZFeTA5SnlwQUppWkJLU0k3TWhjZ1RTNG1PeGdaT2ljb0x5OEJZU2d2THlrbE9CMGJPNUFvUlN3c1Jpa2NMeHdZTUI4b1JTd3RSaWdaTHlBclBUczRKU2s0T0NZb09EZ21KemsxS2lrMkFBQURBQ3dBWkFJZEFsWUFHUUFrQUM0QUFIY25OeVltTlRRMk5qTXlGaGMzRndjV0ZoVVVCZ1lqSWlZbk56STJOalUwSmljSEZoWW5OeVltSXlJR0JoVVVWQ2crRmhvL2EwSXBTaHMvS2o0WUdqOXJRU3ROSEpRdVNpd1FEdW9WTW0zbUV5OGFMMHNyWkNrK0hFb3BRbXhCR3hjL0t6MGRUQ3RDYkQ4Y0dROHRUaTRiTWhUb0VCSk42QTRRTFUwd05BQUJBRjBBQUFKeEFxUUFGd0FBY3hNMFBnSXpNaDRDRlJFakVUUW1KaU1pQmdZVkVWMEJLVWxnTnpkaFNTbElORmcyTlZrMEFabzRZRWtwS1VsZ09QNW1BWjAzV1RRMFdUZitZd0FBQVFBZy8zd0ErUU5wQUJNQUFGYzFNalkySndNbU5qWVhGU0lHQmhVVEZnWUdJQlVvR3dFYkFTaElMaFVwR1JzQktraUJLZ2dXRmdNZExqRVFBaW9JRmhmODR5MHhFUUFBQVFBd0FBQUMwZ0s2QUM4QUFITTFNeklXRmhjbUpqVTBOall6TWhZV0ZSUUdCejRDTXpNVklUVStBalUxTkNZbUl5SUdCaFVWRkJZV0Z4VXdKZ29lSnhjOVJVK1NabWFTVDBVOUZpY2dDaVgrelQxWk1UaG5Sa1ptT0RCWlBWSUJCQU1yaVdGeG0wOVBtM0ZoaVNzREJBRlNSZ2c2YmxJV1gzWTFOblZmRmxOdE9nZEhBQUFDQUJFQUFBS2ZBcTRBQXdBWEFBQnpBVE1CSlNFbUppY0RMZ0luSXc0REJ3TU9BaEVCQzNrQkN2M3hBWXdHR1FwNEJBOE5Bd1VDQ2dzSkFua0ZFQTBDcnYxU1VoQTdHZ0U3RGlvbENBY2NIeHNHL3NNUEppTUFBUUFwLzRBRERnTFRBQXNBQUZjUkl6VWhGU01SSXhFaEVZMWtBdVZsWHY2aGdBTUJVbEw4L3dNQi9QOEFBQUVBS2YrQUFxQUMwd0FOQUFCWE5RRUJOU0VWSVJVQkFSVWhGU2tCUHY3TUFscitMUUVmL3N3Qis0QkNBV2tCWDBsU0JQNjcvcU1FVndBQkFCdi9iQUloQTFrQURBQUFSUU1ISnpjVEhnSVhFek1EQVNXb1RoU2JnUVlLQ1FPT1FLS1VBYmtlUEVIK3FBMGZIUXdEZ3Z3VEFBSUFOdi8wQWNVQzN3QWtBRE1BQUZjaUppWTFORFkyTXpJV0ZoY3pOalExTkM0Q0l5SUdCelUyTmpNeUhnSVZGQVlHSnpJMk5qY3VBaU1pQmdZVkZCYmdPRXdtTmxZd0l6TWdCZ1FCRnlrNElTSXlFeFkySml0UVFDVTFaVVFtT0NNRkNSMHFIU0EySGk4TVBHSTZURzQ3RnlBT0J4TUlOVnhGSnhRT1NRd1JLRldGWG51eFgwWS9iVU1XSnhndlVUVkJUZ0FCQUVYL1RRSHpBZzRBSFFBQVZ4RXpFUlFlQWpNeU5qWTFFVE1SSXljakRnSWpJaVluRmhZVkZVVllFQjBxR0NWQktWaElDQWNTTVRvaEh6VVNBd0t6QXNIK29TRXFHQW9rUlM0Qk5mM3lUeUVvRWhBUkR5Z1Nmd0FCQUxFQUFBTWlBbkVBQlFBQWN4RXpFU0VWc1VZQ0t3SngvZEZDQUFBRkFGei85QU5iQXJvQUF3QVRBQ0lBTWdCQkFBQnpBVE1CQXlJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpVMU5DWW1JeUlHRlJVVUZnRWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTFOVFFtSmlNaUJoVVZGQmE5QWU5US9oQVlMMFVrSkVVdk1FSWxKVUl3TFI0TUlSNHNJQ0FCL0M5RUpDUkVMekJESkNSRE1DNGREQ0FmTEI4ZkFxNzlVZ0ZSSVU1RlJrNGhJVTVHUlU4Z096MDNDaVUwSEQwNENqYzkvbWdoVGtWR1RpRWhUa1pGVHlBN1BUZ0pKVFFjUFRnSk9EMEFBQWNBR1AvMEE5WUN1Z0FEQUJNQUlnQXlBRUVBVVFCZ0FBQnpBVE1CQXlJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpVMU5DWW1JeUlHRlJVVUZnRWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTFOVFFtSmlNaUJoVVZGQllGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTlRVMEppWWpJZ1lWRlJRV2ZBRjJRUDZLRnl4QUlTRkFMQzArSVNFK0xTY1pDaHdhSmhvYUFZZ3NQeUlpUHl3c1B5RWhQeXduR1FvY0dpWWFHZ0ZwTEVBaUlrQXNMRDhoSVQ4c0p4a0tIQm9tR3hzQ3J2MVNBVkVoVGtWR1RpRWhUa1pGVHlBN1BUY0tKVFFjUFRnS056MythQ0ZPUlVaT0lTRk9Sa1ZQSURzOU53b21NeHc5T0FvM1BUc2hUa1ZHVGlFaFRrWkZUeUE3UFRjS0pqTWNQVGdLTnowQUFBRUFTLzh2QWFvQ3hnQUpBQUJYRVFjMU56TVhGU2NSMm8rbEZhV1AwUUxmT1N6RnhTdzUvU0VBQUFFQUtRQk9BNzhCckFBSkFBQmxOeUUxSVNjekZ4VUhBczQ1L1NJQzNqa3N4Y1ZPamtPTnBCV2xBQUVBUy84dkFha0N4Z0FKQUFCWEp6VVhFVE1STnhVSDhLV09RNDJrMGNVdE9RTGUvU0k1TGNVQUFBRUFLUUJPQTc4QnJBQUpBQUIzSnpVM013Y2hGU0VYN3NYRkxEb0MzLzBoT2s2a0ZhV05RNDRBQUFFQUtRQk9BNzhCckFBUEFBQjNKelUzTXdjaEp6TVhGUWNqTnlFWDdzWEZMRE1DSURrc3hjVXNPZjNnTTA2a0ZhV1BqNlVWcEk2T0FBQUJBRXovTWdHcEFzY0FEd0FBVnljMUZ4RUhOVGN6RnhVbkVUY1ZCL0Nralkya0ZhU05qYVRPeFN3NUFoOHlLOFhGS3pMOTRUa3N4UUFBQWdCSC94b0JyUUxIQUE4QUV3QUFWeWMxRnhFSE5UY3pGeFVuRVRjVkJ3YzFJUlh2cEk2T3BCV2xqbzZsdlFGbW04VXRPQUhxTWl2RnhTc3kvaFk0TGNWTEhSMEFBQUlBT2Y5N0Fnb0MyQUFGQUFrQUFGY0RFek1UQXljVEF3UHNzN05zc3JJMmpZMk9oUUd2QWE3K1V2NVJSd0ZvQVdmK21RQUNBRFAvWndPNUFyb0FXQUJtQUFCRklpWW1OVFErQWpNeUhnSVZGQTRESXlJbUppY2pEZ0lqSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkZSUVdNekkyTmpVMEppWWpJZ1lHRlJRV016STJOamNWRGdJbk1qNENOVFVpQmdZVkZCWVdBZHlDdjJoS2dLZGRYNkIzUWh3d096NGNLUzBVQVFZUk1qNGxHallzR3k5V2RFUVRMaXdwTHhOT0FUQlhPanhSS1JZWUpFTXRZS2x3ZWJOaHNMa2FSMElVRjBORkh4NDBLUmRLYVRjV0tKbFh1SkI0cG1jdksxcVBaVVJrUlNzVEZpSVFGeUVSRFIwMEpqSS9JdzgyR2ljVkZTSVREZ1VKQml3N0hpRS9Mdm9YRkN4bldYQ01RbE9vZ0xHekNRMEpQZ2dNQis4VElqQWVKaEVwSmhrZ0VBQUJBREgvOUFLT0Fyb0FPZ0FBUlNJbUpqVTBOamMxSmlZMU5EWTJNeklXRmhVVkl6VXVBaU1pRGdJVkZCWVdNek1WSXlJR0JoVVVGaFl6TWpZMk5UVXpGU01WRkFZR0FUUk1kVUpHTkMwOVAzSk1TbkZBV0FFclNUQWdPaTBhS0VFbVBqd29TaTByVHpRNFNpU3RWVHQwREM5WVBVVlRFQVFXUnowOVZDc3VWVGtSQ3lrMUdRMGNMU0FwTlJwSkZEVXhMVGdhSERvcXdrcDFRbHd3QUFFQU0vOVdBZ29DcmdBUkFBQlhFUzRDTlRRMk5qTXpGU01SSXhFakVmNDNYRGcvYWtEdVAwTkhxZ0dsQkRWZlFFdGdNRGY4M3dNaC9OOEFBQUlBTXY5S0FnY0N1Z0JOQUYwQUFFVWlMZ0kxTkRZMU14VVVIZ0l6TWpZMk5UUXVCVFUwTmpZM0ppWTFORDRDTXpJZUFoVVVCaFVqTlRRdUFpTWlCZ1lWRkI0RkZSUUdCZ2NXRmhVVURnSVROalkxTkM0Q0p3WUdGUlFlQWdFWk9GRTFHZ0ZjQ3gweUppazRIU2RCVFUxQUtCY3FIQ0l0SHpwVE5EaFJOUm9CWEF3Y01pWXBPQjBuUVUxTlFDZ1hLaHdpTEI0NlV4c2ZKaWRDVFNjZUppZEJUYllYS0RVZEJnc0RDZzhlR0E0V0p4b2RKeHdaSFNrOUxCNHpLZzhWUFRBbE9Tb1ZGeWcxSFFVTUF3c09IUmdPRlNjYUhTY2NHUjBwUEMwZU5Da1BGVDB3SkRvcUZRRkFEU3dlSkM0ZkdRNE1MQjhqTHlBWUFBQURBQlgvOUFMYkFyb0FFd0ExQUVVQUFFVWlMZ0kxTkQ0Q016SWVBaFVVRGdJbklpWW1OVFEyTmpNeUZoWVZJelFtSmlNaUJoVVZGQllXTXpJMk5qVXpGQVlHQnpJMk5qVTBKaVlqSWdZR0ZSUVdGZ0Y0VFlKZk5UVmZnazFOZ2w4MU5WK0NVRFZOS0NkTk5qRkdKandYS3g4ME9ob3hJeDh0R0RrbVJTOVppazlQaWxsWmkwOVBpd3cxWDRKTlRZSmZOVFZmZ2sxTmdsODFqeXBkVEV4Y0t5RklPeW94RlVkTUdETkNIaGN4SnpSSUoyRlFqRmxaaTFCUWkxbFpqRkFBQUFRQUZmLzBBdHNDdWdBVEFDTUFNUUE2QUFCRklpNENOVFErQWpNeUhnSVZGQTRDSnpJMk5qVTBKaVlqSWdZR0ZSUVdGaWNSTXpJV0ZSUUdCeGNqSnlNVk5UTXlOalUwSmlNakFYaE5nbDgxTlYrQ1RVMkNYelUxWDRKTldZcFBUNHBaV1l0UFQ0c3p0VDgvSlNOWFFWQjFkeDRsSXlCM0REVmZnazFOZ2w4MU5WK0NUVTJDWHpVdVVJeFpXWXRRVUl0WldZeFFad0djUWpvcFBnNnJvS0RVS0NRakpRQUVBQlgvOUFMYkFyb0FFd0FqQUM4QU9BQUFSU0l1QWpVMFBnSXpNaDRDRlJRT0FpY3lOalkxTkNZbUl5SUdCaFVVRmhZbkVUTXlGaFVVQmdZakl4VTFNekkyTlRRbUl5TUJlRTJDWHpVMVg0Sk5UWUpmTlRWZmdrMVppazlQaWxsWmkwOVBpeUt4UFQ0aE95ZHViaDhuSXlOdUREVmZnazFOZ2w4MU5WK0NUVTJDWHpVdVVJeFpXWXRRVUl0WldZeFFad0djUkRZcU9oMmgxU2tqSXlRQUFnQStBUndEUWdLdUFBOEFGd0FBUVJFekV6TVRNeEVqRVNNREl3TWpFU1VSSXpVaEZTTVJBYTFZY1FOeVZ6c0Rjamh6QlA3WmZnRTRmd0VjQVpMK3Z3RkIvbTRCUFA3RUFUNyt3Z0VCV2pjMy9xWUFCQUE2Ly9RRFJ3SzZBQU1BSkFBMEFFSUFBRmNCTXdFVElpWW1OVFEyTmpNeUZoWVZJelFtSmlNaUJoVVZGQll6TWpZMk5UTVVCZ1lCSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTlRVMEppTWlCaFVWRkJhT0FnMUUvZk1GTWtja0pVY3lNRUFmUWhBaUdpc3hMeXdjSWhCQkgwQUJtRFJKS0NoTE5EUktKeWhLTkRBek16QXdNek1NQXNiOU9nRlFLRk5BUDFNcElrRXRIaWNUT1VJUlFEa1VKeHdwUWlYK3NDbFNRRUZTS0NoU1FVQlNLVGc2UVJGQU9qcEFFVUU2QUFBQ0FFRUJyQUZRQXJvQUR3QWJBQUJUSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTlRRbUl5SUdGUlFXeVNVK0pTVStKU1k5SkNROUppSXZMeUlpTVRFQnJDUStKU1k5SkNROUppVStKRFV4SVNJd01DSWhNUUFBQVFBbkFnZ0FtQUs0QUFRQUFGTTNNeGNISnhOZEFUa0NDTEFEclFBQUFnQW5BZ2dCSndLNEFBUUFDUUFBVXpjekZ3Y3pOek1YQnljVFhRRTVWeE5kQVRvQ0NMQURyYkFEclFBQkFGYi9TUUNmQXRNQUF3QUFWeEV6RVZaSnR3T0svSFlBQUFJQVZ2OUpBSjhDMHdBREFBY0FBRk1STXhFREVUTVJWa2xKU1FGZkFYVCtqUDNxQVhUK2pBQUJBRHYvVmdJTUFxNEFDd0FBVnhNSE5SY25Nd2MzRlNjVDlCVE56UkZZRWM3T0ZLb0NXUkplRWNURUVWNFMvYWNBQUFJQUl2LzBBVThDM3dBZUFDb0FBRmNpSmlZbkJ6VTNFVFEyTmpNeUZoWVZGQVlHQnhVVUZqTXlOamNWQmdZRFBnSTFOQ1lqSWdZR0ZlYzBReDhDTFMwb1FDTW1OQnNzVURVd0poZ3BFaGN0WlI4MUlCZ2FFQjhUREN4V1FTRkRKUUVIVTE0cEprVXVPbk51TXpKTVFoRU5TQTBOQVZRalQxc3lLakFjUWprQUFRQTcvMVlDREFLdUFCVUFBRmMzQnpVWEp6Y0hOUmNuTXdjM0ZTY1hCemNWSnhmM0VjM05GQlROelJGWkVjM05GQlROelJHcXhSRmRFcStyRWw0UnhNUVJYaEtycnhKZEVjVUFBQVFBVmdBQUJCQUN1Z0FEQUJNQUlRQTZBQUJsTlNFVkp5SW1KalUwTmpZek1oWVdGUlFHQmljeU5qVTFOQ1lqSWdZVkZSUVdBUkV6QVI0Q0Z6TTBORFVSTXhFakFTWW1KeU1VRkJVUkF0b0JLNWMwUnlVbFNUUTFSaVVsU0RRc0xDd3NLeXdzL1JKY0FVMEZFQkFGQkYxWC9xOEhHd2tGeEVCQWR5bFZRa0pVS1NsVVFrSlZLVHc3UVE5Qk96dEJEMEU3L29rQ3J2NDhCaGdYQ1JBZkR3SEUvVklCekFzb0RCQWZFUDQwQUFJQUxmLzBBaThDR2dBWUFDRUFBRVVpSmlZMU5EWTJNeklXRmhVVklSVVdGak15TmpjWEJnWURJVFVtSmlNaUJnY0JMbEJ6UGo1elVGQnpQdjVxSEVzdVFtTVpJaDl6NHdFcUhFc3VMa3NjREVkOVQxQjhSMHFBVXdXbEdSdzdNaFU4UmdFdWx4b2RIQm9BQUFJQVRBQUFBZzRDTXdBRUFBa0FBSE1STnhjUkpTRTFKd2RNNGVIK2V3RkhvNlFCTnYzOS9zbzE4TFcxQUFBQkFBQUNMUUJwQXZrQUN3QUFVVFV5TmpVak5UTVZGQVlHSEJvc1h4c3ZBaTBvSlI1aFR5MDNHUUFDQUFBQ0RnRTJBdE1BQkFBSkFBQlJOek1YQnpNM014Y0hQbU1CVlVjK1l3RlZBZzdGQThMRkE4SUFBQUVBQUFKbkFhNENyZ0FEQUFCUk5TRVZBYTRDWjBkSEFBRUFBQUlPQUtJQzB3QUVBQUJSTnpNWEJ6NWpBVlVDRHNVRHdnQUNBQUFDZFFFWUF0RUFBd0FIQUFCUk5UTVZNelV6RlZsbVdRSjFYRnhjWEFBQUF3QUJBblVCR1FPQkFBTUFCd0FNQUFCVE5UTVZNelV6RlNjakp6Y3pBVmxtV1ZWTmJnRmpBblZjWEZ4Y2lJRURBQUFEQUFBQ2RRRVlBNEVBQXdBSEFBd0FBRkUxTXhVek5UTVZKemN6RndkWlpsbkFWMk1CYmdKMVhGeGNYSWlFQTRFQUFBTUFBQUoxQVNjRGdRQURBQWNBRHdBQVV6VXpGVE0xTXhVQk14Y2pOek1ISXdkWlpsbis0VkpYTEZoU2FsTUNkVnhjWEZ3QkRHMXRoQUFEQUFJQ2RRRXZBMm9BQXdBSEFBc0FBRk0xTXhVek5UTVZKVFVoRlF4WlpsbiszZ0V0QW5WY1hGeGN0RUZCQUFBQkFBQUNjUUJmQXRBQUF3QUFVVFV6RlY4Q2NWOWZBQUFDQUFBQ2NRRXNBMm9BQXdBSEFBQlROVE1WSnpVaEZXZGZ4Z0VzQW5GZlg3aEJRUUFCQUFBQ1R3QzdBdE1BQkFBQVV5TW5Oek83VFc0Qll3SlBnUU1BQVFBQUFrOEF1d0xUQUFRQUFGRTNNeGNIVjJNQmJnSlBoQU9CQUFJQUFBSlBBVHNDMHdBRUFBa0FBRkUzTXhjSE16Y3pGd2MrWXdGVlN6NWtBVlVDVDRRRGdZUURnUUFBQVFBQUFrOEJKd0xUQUFjQUFGRTNNeGNqSnpNSGFsTnFVbGdzVndKUGhJUnRiUUFBQVFBQUFrOEJKd0xUQUFjQUFGRXpGeU0zTXdjalVsY3NXRkpxVXdMVGJXMkVBQUVBQUFKZUFTTUMwd0FSQUFCVElpWW1OVE1lQWpNeU5qWTNNeFFHQnBBM1FCazlBdzhpSUNBa0VBRTlHejhDWGlRMkd3b2JFaEliQ2hzMkpBQUFBZ0FBQWtRQXZRTC9BQXNBRndBQVV5SW1OVFEyTXpJV0ZSUUdKekkyTlRRbUl5SUdGUlFXWGlnMk5pZ3FOVFVxRmhzYkZSVWNHd0pFTlNncE5UVXBLRFVzSEJVVkhSMFZGUndBQUFNQUFBSkVBT1VEclFBTEFCY0FIQUFBVXlJbU5UUTJNeklXRlJRR0p6STJOVFFtSXlJR0ZSUVdKemN6RlFkZUtEWTJLQ28xTlNvV0d4c1ZGUndiSDFka2JnSkVOU2dwTlRVcEtEVXNIQlVWSFIwVkZSeTVoQU9CQUFFQUFBSnVBVDBDMEFBWEFBQlJQZ0l6TWhZV016STJOek1VQmdZaklpWW1JeUlHQndFU0poMGFNQzRXRHhBQ09CTW1IaGd4TFJZUUVBSUNiaHN0R2hBU0VoQWJMQnNSRVJJUUFBQUNBQUFDYmdFOUEyQUFGd0FiQUFCUlBnSXpNaFlXTXpJMk56TVVCZ1lqSWlZbUl5SUdCeWMxSVJVQkVpWWRHakF1Rmc4UUFqZ1RKaDRZTVMwV0VCQUNNQUV0QW00YkxSb1FFaElRR3l3YkVSRVNFTEZCUVFBQUFRQUFBbnNCTEFLOEFBTUFBRkUxSVJVQkxBSjdRVUVBQVFBQUFrOEFxd0xmQUJnQUFGTTFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWTVEwV0R4RVNRQXNiR3dzUUlod1JFaUFUQWs4OENRb01DQ1VEQXdJRkRSWVNFaGdPQWh3QUFBSUFBQUpQQVNzQzB3QUVBQWtBQUZNbk56TVhJeWMzTXhmaFZBRmZQdGRVQVdBK0FrK0JBNFNCQTRRQUFRQUFBbDRCSXdMVEFCRUFBRk15RmhZVkl5NENJeUlHQmdjak5EWTJrRGsvR3owQkVDUWdJQ0lQQXowWlFBTFRJelljQ3hvU0Vob0xIRFlqQUFBQkFBQUNkZ0JwQTBJQUN3QUFVeFVpQmhVekZTTTFORFkyYVJ3YUxGOGJMd05DS0NVZVlVOHROeGtBQUFFQUFBSXFBR2tDOWdBTEFBQlJOVEkyTlNNMU14VVVCZ1ljR2l4Zkd5OENLaWdsSDJCUExEZ1pBQUVBQUFHMEFNb0NyZ0FMQUFCUk5UWTJOeU0xTXhVVUJnWTRSQW8wZUN0WUFiUTFCeXNvYXpZNFV6SUFBUUFBLzBnQVgvK25BQU1BQUZVMU14VmZ1RjlmQUFJQUFQOU5BUmovcVFBREFBY0FBRlUxTXhVek5UTVZXV1paczF4Y1hGd0FBUUFBL3R3QWFmK3BBQXNBQUZFMU1qWTFJelV6RlJRR0Jod2FMRjhiTC83Y0tDWWVZVTh0TnhvQUFRQUEvMUFBMFFBTEFCY0FBRmNpSmljMU16STJOVFFtSXlNM013Y3lGaFlWRkE0Q1d4WXdGV0VTRlJFV014QTdCeG9yR2hVaUtyQUVCQ2NPRGd3TVdESU1HeGNXSFJFSEFBQUJBQUQvVWdDbEFBd0FFd0FBVnlJbUpqVTBOamN6RlFZR0ZSUVdNek1WQmdaaUdDMGRIaFU2Q3hnWEhpWVBKcTRRSmlBaE1CTUdDaVVZRlNBcUJ3Y0FBUUFBL3pRQkkvK3BBQkVBQUZjaUppWTFNeDRDTXpJMk5qY3pGQVlHa0RkQUdUMEREeUlnSUNRUUFUMGJQOHdqTnhzTEdoTVRHZ3NiTnlNQUFRQUEvMmtCTFArcUFBTUFBRlUxSVJVQkxKZEJRUUFBQVFBQUFVOEJQZ0dUQUFNQUFGRTFJUlVCUGdGUFJFUUFBUUFBQVV3Q3hRR1hBQU1BQUZFMUlSVUN4UUZNUzBzQUFRQUFBT0lBM2dIb0FBTUFBSFUxTnhYZTRrNjRUUUFBQVFBQS84OENBZ0kvQUFNQUFGVUJNd0VCd0VMK1FqRUNjUDJRQUFJQUFBSjFBUmdDMFFBREFBY0FBRkUxTXhVek5UTVZXV1paQW5WY1hGeGNBQUFCQUFBQ2NRQmZBdEFBQXdBQVVUVXpGVjhDY1Y5ZkFBQUJBQUFDVHdDN0F0TUFCQUFBVXlNbk56TzdUVzRCWXdKUGdRTUFBUUFBQWs4QXV3TFRBQVFBQUZFM014Y0hWMk1CYmdKUGhBT0JBQUlBQUFKUEFUc0Mwd0FFQUFrQUFGRTNNeGNITXpjekZ3YytZd0ZWU3o1a0FWVUNUNFFEZ1lRRGdRQUFBUUFBQWs4Qkp3TFRBQWNBQUZFM014Y2pKek1IYWxOcVVsZ3NWd0pQaElSdGJRQUFBUUFBQWs4Qkp3TFRBQWNBQUZFekZ5TTNNd2NqVWxjc1dGSnFVd0xUYlcyRUFBRUFBQUplQVNNQzB3QVJBQUJUSWlZbU5UTWVBak15TmpZM014UUdCcEEzUUJrOUF3OGlJQ0FrRUFFOUd6OENYaVEyR3dvYkVoSWJDaHMySkFBQUFnQUFBa1FBdlFML0FBc0FGd0FBVXlJbU5UUTJNeklXRlJRR0p6STJOVFFtSXlJR0ZSUVdYaWcyTmlncU5UVXFGaHNiRlJVY0d3SkVOU2dwTlRVcEtEVXNIQlVWSFIwVkZSd0FBQUVBQUFKdUFUMEMwQUFYQUFCUlBnSXpNaFlXTXpJMk56TVVCZ1lqSWlZbUl5SUdCd0VTSmgwYU1DNFdEeEFDT0JNbUhoZ3hMUllRRUFJQ2Joc3RHaEFTRWhBYkxCc1JFUklRQUFBQkFBQUNld0VzQXJ3QUF3QUFVVFVoRlFFc0FudEJRUUFCQUFEL1VBRFJBQXNBRndBQVZ5SW1KelV6TWpZMU5DWWpJemN6QnpJV0ZoVVVEZ0piRmpBVllSSVZFUll6RURzSEdpc2FGU0lxc0FRRUp3NE9EQXhZTWd3YkZ4WWRFUWNBQUFFQUFQOVNBS1VBREFBVEFBQlhJaVltTlRRMk56TVZCZ1lWRkJZek14VUdCbUlZTFIwZUZUb0xHQmNlSmc4bXJoQW1JQ0V3RXdZS0pSZ1ZJQ29IQndBQ0FBQURCZ0VYQTJJQUF3QUhBQUJSTlRNVk16VXpGVmxtV0FNR1hGeGNYQUFBQXdBREF3WUJIUVFTQUFNQUJ3QU1BQUJUTlRNVk16VXpGU2NqSnpjekJsaG1XVnRRYndGb0F3WmNYRnhjaUlFREFBQURBQUFEQmdFaEJCSUFBd0FIQUF3QUFGRTFNeFV6TlRNVkp6Y3pGd2RaWmxpMVZtZ0Jid01HWEZ4Y1hJaUVBNEVBQUFNQUFBTUdBUzRFRWdBREFBY0FEd0FBVXpVekZUTTFNeFVCTXhjak56TUhJd3RaWmxqKzNsVllMRmhWYWxvREJseGNYRndCREcxdGhBQURBQUlEQmdFekEvY0FBd0FIQUFzQUFGTTFNeFV6TlRNVkpUVWhGUTlZWmxuKzNBRXhBd1pjWEZ4Y3JrTkRBQUFCQUFBREJnQmZBMmNBQXdBQVVUVXpGVjhEQm1GaEFBQUNBQUFEQmdFeEEvY0FBd0FIQUFCVE5UTVZKelVoRldwZnlRRXhBd1poWWE1RFF3QUJBQUFDNEFDL0EyUUFCQUFBVXlNbk56Ty9VVzRCYUFMZ2dRTUFBUUFBQXVBQXZ3TmtBQVFBQUZFM014Y0hWMmNCYmdMZ2hBT0JBQUlBQUFMZ0FUc0RaQUFFQUFrQUFGTTNNeGNISXpjekZ3ZVlQbVFCVmVZK1l3RlZBdUNFQTRHRUE0RUFBUUFBQXVBQkxnTmtBQWNBQUZFM014Y2pKek1IYWxwcVZWZ3NXQUxnaElSdGJRQUFBUUFBQXVBQkxnTmtBQWNBQUZFekZ5TTNNd2NqVlZnc1dGVnFXZ05rYlcyRUFBRUFBQUx2QVNNRFpBQVJBQUJUSWlZbU5UTWVBak15TmpZM014UUdCcEEzUUJrOUF3OGlJQ0FrRUFFOUd6OEM3eVEyR3dvYkVoSWJDaHMySkFBQUFnQUFBdG9BeFFPVkFBc0FGd0FBVXlJbU5UUTJNeklXRlJRR0p6STJOVFFtSXlJR0ZSUVdZeXczTnl3ck56Y3JGUnNiRlJVY0hBTGFOU2dwTlRVcEtEVXVHaFVWR2hvVkZSb0FBQU1BQUFMYUFQZ0VPd0FMQUJjQUhBQUFVeUltTlRRMk16SVdGUlFHSnpJMk5UUW1JeUlHRlJRV0p6Y3pGd2RqTERjM0xDczNOeXNWR3hzVkZSd2NGVlpvQVc4QzJqVW9LVFUxS1NnMUxob1ZGUm9hRlJVYXI0UURnUUFBQVFBQUF2OEJQUU5pQUJjQUFGRStBak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIQVJJbUhSb3dMaFlQRUFJNEV5WWVHREV0RmhBUUFnTC9HeTBiRVJFU0VCc3RHeElSRXhBQUFBSUFBUUwvQVQ4RDVBQVhBQnNBQUZNK0FqTXlGaFl6TWpZM013NENJeUltSmlNaUJnY25OU0VWQVFFU0poNGFMeTRXRUE4Q09RRVRKUjRaTUMwWER4QUNNZ0V4QXY4YkxSc1JFUklRR3kwYkVoRVRFS0pEUXdBQkFBQURCZ0V4QTBrQUF3QUFVVFVoRlFFeEF3WkRRd0FCQUFBQzRBQ3JBM0FBR0FBQVV6VXpNalkxTkNZakl6VStBak15SGdJVkZBWUdCeFV4RFJZUEVSSkFDeHNiQ3hBaUhCRVNJQk1DNER3SkNnd0lKUU1EQWdVTkZoSVNHQTRDSEFBQUFnQUFBdUFCT3dOa0FBUUFDUUFBVXljM014Y2pKemN6Ris1VkFXTSs1bFVCWkQ0QzRJRURoSUVEaEFBQkFBQUM3d0VqQTJRQUVRQUFVVFEyTmpNeUZoWVZJeTRDSXlJR0JnY2JRRGc0UHhrOUF3OGlJQ0FrRHdJQzd4dzJJeU0ySEFzWkV4TVpDd0FCQUFBQ1JBREtBejBBQ3dBQVVUVXlOalVqTlRNVkZBWUdRVVkxZURCYUFrUTBMeXBzVGpaTktBQUJBQUFBM2dGUkFna0FBd0FBZFRVbEZRRlIza3ZnVFFBQkFBRC96d0tmQXQ4QUF3QUFWUUV6QVFKUFVQMnhNUU1RL1BBQUFnQUFBd1lCRndOaUFBTUFCd0FBVVRVekZUTTFNeFZaWmxnREJseGNYRndBQUFFQUFBTUdBRjhEWndBREFBQlJOVE1WWHdNR1lXRUFBQUVBQUFMZ0FMOERaQUFFQUFCVEl5YzNNNzlSYmdGb0F1Q0JBd0FCQUFBQzRBQy9BMlFBQkFBQVVUY3pGd2RYWndGdUF1Q0VBNEVBQWdBQUF1QUJPd05rQUFRQUNRQUFVemN6Rndjak56TVhCNWcrWkFGVjVqNWpBVlVDNElRRGdZUURnUUFCQUFBQzRBRXVBMlFBQndBQVVUY3pGeU1uTXdkcVdtcFZXQ3hZQXVDRWhHMXRBQUFCQUFBQzRBRXVBMlFBQndBQVVUTVhJemN6QnlOVldDeFlWV3BhQTJSdGJZUUFBUUFBQXU4Qkl3TmtBQkVBQUZNaUppWTFNeDRDTXpJMk5qY3pGQVlHa0RkQUdUMEREeUlnSUNRUUFUMGJQd0x2SkRZYkNoc1NFaHNLR3pZa0FBQUNBQUFDMmdERkE1VUFDd0FYQUFCVElpWTFORFl6TWhZVkZBWW5NalkxTkNZaklnWVZGQlpqTERjM0xDczNOeXNWR3hzVkZSd2NBdG8xS0NrMU5Ta29OUzRhRlJVYUdoVVZHZ0FBQVFBQUF2OEJQUU5pQUJjQUFGRStBak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIQVJJbUhSb3dMaFlQRUFJNEV5WWVHREV0RmhBUUFnTC9HeTBiRVJFU0VCc3RHeElSRXhBQUFBRUFBQU1HQVRFRFNRQURBQUJSTlNFVkFURURCa05EQUFFQUFBTGdBSHNEWkFBRUFBQlJOek1YQnhwZkFpNEM0SVFHZmdBQkFBQUNUd0I0QXRNQUJBQUFVVGN6RndjYVhBSXZBaytFQm40QUFnQUFBbDRCSXdPTEFCRUFGZ0FBVXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1luTnpNWEI1QTNRQms5QXc4aUlDQWtFQUU5R3o5clZtUUJid0plSkRZYkNoc1NFaHNLR3pZa3FZUURnUUFBQWdBQUFsNEJJd09MQUJFQUZnQUFVeUltSmpVekhnSXpNalkyTnpNVUJnWW5JeWMzTTVBM1FCazlBdzhpSUNBa0VBRTlHejhCVEc4QlpBSmVKRFliQ2hzU0Voc0tHellrcVlFREFBSUFBQUplQVNNRGx3QVJBQ29BQUZNaUppWTFNeDRDTXpJMk5qY3pGQVlHSnpVek1qWTFOQ1lqSXpVK0FqTXlIZ0lWRkFZR0J4V1FOMEFaUFFNUElpQWdKQkFCUFJzL1R3MFdEeElTUHdvY0d3b1JJUndTRXg4VUFsNGtOaHNLR3hJU0d3b2JOaVNwUEFrS0RBZ2xBd01DQlEwV0VoSVlEZ0ljQUFBQ0FBQUNYZ0U5QTRnQUVRQXBBQUJUSWlZbU5UTWVBak15TmpZM014UUdCaWMrQWpNeUZoWXpNalkzTXhRR0JpTWlKaVlqSWdZSG5UYy9HajBERHlNZklTTVFBVDBiUDlZQkVpWWRHakF1Rmc4UUFqZ1RKaDRZTVMwV0VCQUNBbDRrTmhzS0d4SVNHd29iTmlUSUd5MGFFQklTRUJzc0d4RVJFaEFBQWdBQUFrOEJKd09MQUFjQURBQUFVVGN6RnlNbk13YzNOek1YQjJwVGFsSllMRmNOVjJNQmJnSlBoSVJ0YmJpRUE0RUFBQUlBQUFKUEFTY0Rpd0FIQUF3QUFGRTNNeGNqSnpNSE55TW5Oek5xVTJwU1dDeFhlRTF1QVdNQ1Q0U0ViVzI0Z1FNQUFnQUFBazhCSndPWEFBY0FJQUFBVVRjekZ5TW5Nd2MzTlRNeU5qVTBKaU1qTlQ0Q016SWVBaFVVQmdZSEZXcFRhbEpZTEZjcERSWVBFUkpBQ3hzYkN4QWlIQkVTSUJNQ1Q0U0ViVzI0UEFrS0RBZ2xBd01DQlEwV0VoSVlEZ0ljQUFBQ0FBQUNUd0U5QTRnQUJ3QWZBQUJUTnpNWEl5Y3pCeWMrQWpNeUZoWXpNalkzTXhRR0JpTWlKaVlqSWdZSERHbFVhVkZZTEZoZEFSSW1IUm93TGhZUEVBSTRFeVllR0RFdEZoQVFBZ0pQaElSdGJkY2JMUm9RRWhJUUd5d2JFUkVTRUFBQUFnQUFBdThCSmdQM0FCRUFGZ0FBVXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1luTnpNWEI1QTNRQms5QXc4aUlDQWtFQUU5R3o5aVZtZ0Jid0x2SkRZYkNoc1NFaHNLR3pZa2hJUURnUUFBQWdBQUF1OEJJd1AzQUJFQUZnQUFVeUltSmpVekhnSXpNalkyTnpNVUJnWW5JeWMzTTVFNFB4bytBdzRqSHlFa0R3RTlHa0FIVUc4QmFBTHZKRFliQ2hzU0Voc0tHellraElFREFBSUFBQUx2QVQwRDlRQVJBQ2tBQUZNaUppWTFNeDRDTXpJMk5qY3pGQVlHSno0Q016SVdGak15TmpjekZBWUdJeUltSmlNaUJnZWVOejhhUFFNUEl4OGhJeEFCUFJzLzF3RVNKaDBhTUM0V0R4QUNPQk1tSGhneExSWVFFQUlDN3lRMkd3b2JFaEliQ2hzMkpLTWNMQnNSRVJJUUd5MGJFaEVURUFBQ0FBQUM0QUV1QkFnQUJ3QU1BQUJSTnpNWEl5Y3pCemMzTXhjSGFscHFWVmdzV0JoV2FBRnZBdUNFaEcxdHBJUURnUUFBQWdBQkF1QUJMd1FJQUFjQURBQUFVemN6RnlNbk13YzNJeWMzTXdGcFcycFZXQ3hZYzFGdUFXY0M0SVNFYlcya2dRTUFBQUlBQVFMZ0FUNEVCZ0FIQUI4QUFGTTNNeGNqSnpNSEp6UTJOak15RmhZek1qWTNNdzRDSXlJbUppTWlCZ2NKYVZ0cVZsY3NXRjBUSlI0YUx5NFdFQThDT1FFVEpSNFpNQzBXRUJBQ0F1Q0VoRzF0d3hzdEd4RVJFaEFiTFJzU0VSTVFBQUFEQURQL3FBS3BBd1FBQXdBSEFDa0FBRmMzTXdjVE56TUhBeUltSmpVME5qTXlGaFlWSXpRbUppTWlCZ1lWRlJRV0ZqTXlOalkxTXhRR0JxdzBRelhQTUVJd2hHbVNUYTZiV0loTllETmNQa2hvTmpablNVQmRNMTFQaUZpTmpRTGJnWUg5Y1UyZGViT3dPWE5YUEU0bk9IVmNGVnR6TmlaUFBGbHlPQUFEQURVQVJBSHlBbW9BQXdBSEFDd0FBRUUxTXhVSE5UTVZCeUltSmpVME5qWXpNaDRDRlNNMEppWWpJZ1lHRlJVVUZoWXpNalkyTlRNVURnSUJCREl5TWhsTVp6VTFhVTAyVHpRWldSazJMQ3hBSWlGQUx5MDJHbFVaTkZBQkdaZVhJcGFXc3p0NlhseDZQUncyVFRBdU94d25VMFVWUWxVb0h6MHBMRXM0SHdBQUJRQXovNmdDcVFNRUFBTUFCd0FMQUE4QU1RQUFWemN6QnpNM013Y1ROek1IRnpjekJ3TWlKaVkxTkRZek1oWVdGU00wSmlZaklnWUdGUlVVRmhZek1qWTJOVE1VQmdack9rSTZRVE5DTTBzeFFqRTlOa0Uxd1dtU1RhNmJXSWhOWUROY1BraG9OalpuU1VCZE0xMVBpRmlibTRlSEF0bURndzJRa1AyQVRaMTVzN0E1YzFjOFRpYzRkVndWVzNNMkprODhXWEk0QUFBREFDUC96d0hXQXRNQUF3QUhBRW9BQUZNMU14VUROVE1WSnlJdUFqVTBORGN6QmhRVkhnSXpNalkyTlRRbUppY3VBelUwUGdJek1oNENGUlFVQnlNMU5DWW1JeUlPQWhVVUZoWVhIZ01WRkE0QzZUSXlNaDQyVWpZY0FWY0JBU00rSmlFNElTdEdKaUJBTXg4ZE5rMHZNa3N5R0FGV0ZUTXRIU29jRGlJNUlTTkpQU1VnTzA4Q1E1Q1EvWXlabVhVV0tUc2xCQWtEQkFVREl5a1FFaU1hSWlJVkN3a1ZJVE1uSXpZbEZCWW9OQjBGQ3dNTEZDUVlDaElaRVJvY0Vnb0tGaUEzTFNrK0tCTUFBd0F6LzdJQ3lBTHhBQU1BQndBeUFBQkZOVE1WQXpVekZRTWlKalUwTmpZek1oNENGU00wTGdJaklnNENGUlVVRmhZek1qWTJOVFVqTlNFUkl5Y09BZ0ZwUUVCQUlxYXVVWnR4UlhKVUxXRWhPazR0TzE1QklUbHNURTFrTWZJQlVVY0tHMHBaVG1ob0F0MWlZdjFscnJWMm5rOGVQVncvTEQ4b0VSNUFaRVVWWFhRMUsxaERERkgrbDFjakxCUUFCUUFsQUFBQzR3S3VBQndBSUFBa0FDZ0FMQUFBY3hFekFSNENGek11QWpVUk14RWpBUzRESnlNZUFoVVJBelV6RlNFMU14VUZOVE1WSVRVekZXcGNBU1FSSXgwSEJ3SUVBbDFXL3RjUUdSUVRDUWNDQXdLaGN3SFhkUDFDY3dIWGRBS3UvbThYT3prV0ZEYzhHd0dRL1ZJQm1SWW1KU2taR1VsT0kvNlhBWDVGUlVWRmowVkZSVVVBQlFBS0FBQURwZ0t1QUM4QU13QTNBRHNBUHdBQWN3TXpFeDRERnpNK0JEY1RNeE1lQWhjelBnUTNFek1ESXdNdUF5Y2pEZ1FIQXdFMU14Y2hOek1WQlRVekZ5RTNNeFhWdm1WMkJBY0lCZ01LQWdVRUJRVURibnh1QlFrSkF3a0NCZ1VHQmdONFc3OXpjd1FIQmdVQ0NRSURCUVVHQkhEK3Yzb1JBb3NSZGZ4a29SRUNQeENiQXE3K1BBNGtKeVFQREIwZkhoc0tBY1grT3hJek1oUUxIQjhlSEF3QnhQMVNBZElTSlNVaERRc2FIQjRmRGY0dkFaUStQajQralQ0K1BqNEFBQUFBQVFBQUF6Y0Fhd0FIQUVjQUFnQUJBQUFBQUFBQUFBQUFBQUFBQUFJQUFRQUFBQ1FBU2dCNUFMZ0Evd0ZFQVlvQjZBSkdBbmdDcWdMa0F4d0RWZ09uQS9rRUx3UmdCSXdFdWdVQUJUOEZiQVd0QmZNR1FRYUhCcmtHOHdjdUIyQUhtZ2ZYQ0NjSVpRaWRDTVFKQ0FrMkNXZ0psZ25hQ2ZBS0R3bytDbUFLZ3dxdUN0WUxBQXRDQzRRTHFndk1DK2tNQlF3akRGa01pQXlsRE5VTkRBMGdEVndOc1EzNURrRU9qUTdQRHVZUEJBOG5EMFFQVUE5MkQ0c1BzQS9JRCtBUC9CQVRFQ1VRTnhCTEVIY1FuQkN2RU5VUkFSRWhFVTBSWnhHUkVhQVJ5QkhnRWZVU0ZCSXBFbFFTYWhLbkVzOFRFUk5DRTNZVHJoUG9GQ0VVWmhTdUZPWVZKaFYyRmJrVi9SWkpGcElXM1JkQUY2TVg2eGd1R0hjWXV4ajRHVGdaanhuV0dpWWFkQnJER3lvYmtSdlpIQ2tjWnh5NUhQb2RReDJiSGZrZVB4NWtIb2tleUI3eUh5UWZXaCtVSDg0Z0VDQmtJTUVoSVNHVUlmUWlXQ0prSXFZaTRpTHpJd29qSmlOVkkzVWppeU9zSTlZa0VDUTlKR29rbXlUSEpQc2xNeVZuSlpvbHdTWHFKaXNtWENhVkpzd25CQ2RVSjZVbjFpZ1FLRGdvY3lpMEtQVXBGU2xYS2FJcDhDbzlLb2NxcENxOEt0d3JBQ3NqSzBBcllDdVhLN1VyN1N3RExDSXNSQ3hnTEpvczNTMGpMV2d0cWkzckxrVXVmeTZ3THZBdlRTOXNMOE13SXpDVE1Rc3hnREgzTW9ZekZUTjRNOXMwUmpTdk5SbzFuRFlmTm9ZMjZEZEZONlE0R3ppTE9PazVXem5TT2xFNnlEczlPN283OWp3clBHazhxanorUFQ4OWVqMjJQZ2crU3o2T1B1Yy9JajlsUDdnLy9rQkVRSkpBMzBFdFFaSkIrRUpDUW9oQ3lVTUtRMHhEcGtQNVJEcEVqMFRxUlNWRlNFVzVSa0pHdmtjN1I3dElNa2hhU0loSXZFanBTUHhKQ0VrZFNVSkpXa2x5U1k1SnBVbTRTZEZKNVVvUlNqWktaVXA0U3FWSzBVcnpTdzlMTjB0UFMzWkxqVXVaUzY1THdVdmRTKzlNRjB3cFRHcE1ra3pDVFBsTkxFMWpUWnhOMUU0WVRtQk9sRTdRVHh4UFcwK2JUK05RS0ZCdlVNNVJMVkZ4VWJCUjlWSTFVbTVTcWxMOVUwRlRqbFBaVkNWVWlGVHNWVEJWZkZXMlZnUldRRmFGVnRsWE0xZVZWOUZZRGxoS1dHcFlrbGk5V094WkhGbFVXYTFhRDFwMFd1eGJVVnU2VzhaY0NWd29YRXhjZGx5Z1hPSmRGVjArWFdWZGxGM1RYZ1ZlT0Y1dlhxRmUyMThaWDFKZmlsKzJYK1ZnSzJCaVlLSmc0R0VmWVhWaHpHSURZa0ppYjJLeFl2ZGpQbU5jWTV4ajVXUXhaSHhreEdUZlpROWxTR1dFWmI5bDlXWXRabjFtdEdjRVp4cG5PV2RiWjNkbnRHZjVhRUpvaW1qTWFSRnBiV213YWcxcVMycDdhcmRyR1dzM2EzSnJ1MnY5YkMxc1ZteW9iTlpzK0cwa2JXZHRsRzNEYmVWdUhXNDFibk51dm03bmJ5SnZhMitIYjlOd0hYQmNjSlJ3ckhEcWNUVnhYbkdaY2VKeC9uSktjcFJ5MDNNTGN5TnpZM091YzlkMEVYUmFkSGgweEhVT2RWRjFpWFdoZGQ5MktuWlRkbzUyMTNiemR6OTNpWGZJZUFCNEdIaFllS040ekhrR2VVOTViWG01ZWdONlJucHplb3Q2eEhzTmV6SjdZM3VkZTdoOEEzdzlmR3A4Z1h5NWZRSjlKMzFZZlpKOXJIMzNmakYrWDM1M2ZyQisrWDhmZjFCL2luK2xmL0NBS29CWWdIQ0FxWUR5Z1JpQlNZR0RnWjZCNllJamdqS0Nob0xIZ3ptRFJJTmJnMjJEaW9PZmc3S0R4b1FKaEUyRVdZUjFoSmVFeG9UVGhPQ0U3WVVBaFVTRlVJVmNoWGlGbFlYUWhndUdISVl0aGptR1JZWlJobDJHYVlaMWhvR0dqWWFmaHF1R3Q0YkRocytHMjRieWh4bUhRWWRwaDRDSGw0ZXdoOHFIMm9mcWlBR0lFSWdraURpSU9JZzRpRGlJT0lnNGlIS0lyb2p3aVQrSm40bnBpaldLYllxSmlzeUs3NHNtaTFLTGU0dTJpK2VNSDR4UGpINk1ySTBDalRpTlRvMW5qWGFOa0kyb2pjR04wSTNramZDT0NZNGhqalNPVkk1bWpubU9rbzZyanNhUEZZOC9qMDZQWVkreWovcVFJSkJFa0llUXM1REtrT2VSQTVGTmtYcVJpWkhxa25TU2laS2Vrck9TeUpMbGt3S1RKWk0vazhhVUZaUXpsTENWRVpWa2xiU1YzcFkvbG11V2VwYVFscDJXc1piS2x3cVhNSmVIbDcyWDFKZnBsLytZQzVnWm1DcVlRNWhjbUhtWWtaaWRtSytZdlpqTG1PR1k4NWtFbVNPWlNabDJtWnlaeUpuVW1mcWFFSm92bWtXYVdwcHdtbnVhaTVxZ21zV2E1WnNEbXcrYkc1c25tek9iUVp0U20xNmJiSnQ2bTVDYm9wdXptOUtiK0p3ZW5DcWNUNXh2bklDY21aeXluTStjNTV6em5RV2RFNTBoblRlZFNaMWFuWG1kbjUzTm5mT2VINTRybmxHZVo1NkZucHFlcHA2MG5zV2UwWjdmbnUyZkE1OFZueWFmUlo5cm41R2ZuWitybjdtZjRLQUdvRVNnZ3FDY29MV2c1cUVZb1QraFphR2pvYjJoMTZJSm9nbWlDYUlKb2tpaWlhTFZvenFqZ3FQSHBDa0FBUUFBQUFJQVFwc1dZREZmRHp6MUFBTUQ2QUFBQUFEYi9SeXhBQUFBQU53NFB4SC9DdjVxQlNNRVJBQUFBQVlBQWdBQUFBQUFBQUtnQUZZQ3FnQUhBcW9BQndLcUFBY0NxZ0FIQXFvQUJ3S3FBQWNDcWdBSEFxb0FCd0txQUFjQ3FnQUhBcW9BQndLcUFBY0NxZ0FIQXFvQUJ3S3FBQWNDcWdBSEFxb0FCd0txQUFjQ3FnQUhBcW9BQndLcUFBY0NxZ0FIQXFvQUJ3S3FBQWNDcWdBSEFxb0FCd1BvLy8wRDZQLzlBcm9BVmdMWUFETUMyQUF6QXRnQU13TFlBRE1DMkFBekF0Z0FNd0xlQUZZRlR3QldBdDRBQUFMZUFGWUMzZ0FBQk04QVZnS2xBRllDcFFCV0FxVUFWZ0tsQUZZQ3BRQldBcVVBVmdLbEFGWUNwUUJXQXFVQVZnS2xBRllDcFFCV0FxVUFWZ0tsQUZZQ3BRQldBcVVBVmdLbEFGWUNwUUJXQXFVQVZnS2xBRllDcFFCV0FtUUFWZ01jQURnREhBQTRBeHdBT0FNY0FEZ0RIQUE0QXh3QU9BTGdBRllDNEFBT0F1QUFWZ0xnQUZZQkN3QldBenNBVmdFTEFGWUJDLy8xQVF2Lzd3RUwvKzhCQy8vR0FRdi8rZ0VMQUZZQkN3QldBUXYvK0FFTEFEc0JDLy8xQVF2LzdRRUxBQ1FCQy8vbkFpOEFJd0l2QUNNQ2xnQldBcFlBVmdJWUFGWUVNd0JXQWhnQVZnSVlBRllDR0FCV0FoZ0FWZ0wzQUZZQ0dBQUFBMDhBVmdMZ0FGWUZEd0JXQXVBQVZnTGdBRllDNEFCV0F1QUFWZ0xnLy80RHZ3QldBdUFBVmdNVUFETURGQUF6QXhRQU13TVVBRE1ERkFBekF4UUFNd01VQURNREZBQXpBeFFBTXdNVUFETURGQUF6QXhRQU13TVVBRE1ERkFBekF4UUFNd01VQURNREZBQXpBeFFBTXdNVUFETURGQUF6QXhRQU13TVVBRE1ERkFBekF4UUFNd01VQURNREZBQXpBeFFBTXdNVUFETURGQUF6QXhRQU13TVVBRE1FelFBekFwa0FWZ0tuQUZVREZBQXpBdGNBVmdMWEFGWUMxd0JXQXRjQVZnTFhBRllDMXdCV0FxRUFOQUtoQURRQ29RQTBBcUVBTkFLaEFEUUNvUUEwQXFFQU5BTC9BRlFDOUFBeEFsNEFFd0plQUJNQ1hnQVRBbDRBRXdKZUFCTUNYZ0FUQXRzQVZBTGJBRlFDMndCVUF0c0FWQUxiQUZRQzJ3QlVBdHNBVkFMYkFGUUMyd0JVQXRzQVZBTGJBRlFDMndCVUF0c0FWQUxiQUZRQzJ3QlVBdHNBVkFMYkFGUUMyd0JVQXRzQVZBTGJBRlFDMndCVUF0c0FWQUxiQUZRQzJ3QlVBdHNBVkFMYkFGUUNpQUFLQTV3QURBT2NBQXdEbkFBTUE1d0FEQU9jQUF3Q3FBQUxBbzhBQ2dLUEFBb0Nqd0FLQW84QUNnS1BBQW9DandBS0FvOEFDZ0tQQUFvQ2p3QUtBbnNBSUFKN0FDQUNld0FnQW5zQUlBS2RBRkVDblFCUkFwMEFVUUtkQUZFQ25RQlJBcDBBVVFLZEFGRUMyQUF6QXVBQVZnTVVBRE1Db1FBMEFuc0FJQUloQUNJQ0lRQWlBaUVBSWdJaEFDSUNJUUFpQWlFQUlnSWhBQ0lDSVFBaUFpRUFJZ0loQUNJQ0lRQWlBaUVBSWdJaEFDSUNJUUFpQWlFQUlnSWhBQ0lDSVFBaUFpRUFJZ0loQUNJQ0lRQWlBaUVBSWdJaEFDSUNJUUFpQWlFQUlnSWhBQ0lDSVFBaUEzNEFJZ04rQUNJQ053QkZBZ2NBSlFJSEFDVUNCd0FsQWdjQUpRSUhBQ1VDQndBbEFqY0FKd0kzQUNrQ053QW5BamNBSndRb0FDY0NKQUFuQWlRQUp3SWtBQ2NDSkFBbkFpUUFKd0lrQUNjQ0pBQW5BaVFBSndJa0FDY0NKQUFuQWlRQUp3SWtBQ2NDSkFBbkFpUUFKd0lrQUNjQ0pBQW5BaVFBSndJa0FDY0NKQUFuQWlRQUp3SWpBQ2dCR0FBTUFpd0FFZ0lzQUJJQ0xBQVNBaXdBRWdJc0FCSUNMQUFTQWpNQVJRSXpBQUFDTS8vWkFqTUFSUURoQUVVQTRRQkZBT0VBUEFEaC85OEE0Zi9kQU9ILzNRRGgvN2dBNGYva0FPRUFSUURoQUVFQTRmL3NBT0VBSndEaC85OEJ3QUJGQU9ILzJnRGhBQk1BNGYvUkFOLy82UURmLytrQTMvL2RBZ0lBUlFJQ0FFVUNBZ0JGQU9FQVJRRGhBRVVBNFFCRkFPRUFOd0RoQUVVQndBQkZBT0VBQVFOY0FFVUNNd0JGQWpNQVJRSXovL1lDTXdCRkFqTUFSUUl5QUVVQ00vL3BBeElBUlFJekFFVUNPZ0FuQWpvQUp3STZBQ2NDT2dBbkFqb0FKd0k2QUNjQ09nQW5Bam9BSndJNkFDY0NPZ0FuQWpvQUp3STZBQ2NDT2dBbkFqb0FKd0k2QUNjQ09nQW5Bam9BSndJNkFDY0NPZ0FuQWpvQUp3STZBQ2NDT2dBbkFqb0FKd0k2QUNjQ09nQW5Bam9BSndJNkFDY0NPZ0FiQWpvQUd3STZBQ2NDT2dBbkE2Y0FKd0kzQUVVQ01nQkZBamNBSndGTUFFVUJUQUJGQVV3QUp3Rk1BRGdCVEFBQ0FVd0FLUUgrQUNNQi9nQWpBZjRBSXdIK0FDTUIvZ0FqQWY0QUl3SCtBQ01DYXdCUEFSZ0FEQUVwQUJFQktRQVJBU2tBRVFFcEFCRUJLUUFSQVNrQUVRSXlBRUFDTWdCQUFqSUFRQUl5QUVBQ01nQkFBaklBUUFJeUFFQUNNZ0JBQWpJQVFBSXlBRUFDTWdCQUFqSUFRQUl5QUVBQ01nQkFBaklBUUFJeUFFQUNNZ0JBQWpJQVFBSXlBRUFDTWdCQUFqSUFRQUl5QUVBQ01nQkFBaklBUUFJeUFFQUNNZ0JBQWZnQURRTFRBQXNDMHdBTEF0TUFDd0xUQUFzQzB3QUxBZ0VBRGdINEFBMEIrQUFOQWZnQURRSDRBQTBCK0FBTkFmZ0FEUUg0QUEwQitBQU5BZmdBRFFIeUFCOEI4Z0FmQWZJQUh3SHlBQjhDTmdCR0FqWUFSZ0kyQUVZQ05nQkdBallBUmdJMkFFWUNOZ0JHQWpZQVJnSTJBRVlDQndBbEFqTUFSUUk2QUNjQi9nQWpBZklBSHdJY0FBd0MvUUFNQXYwQURBSDZBQXdCK2dBTUFZRUFIUUY3QUNBQmVRQTBBcmNBRVFNRUFEQUNOd0JGQXI4QUhRRjVBRFFDUFFBeEFna0FRZ0kzQURJQ1BRQXFBaXNBSEFJN0FESUNQUUF4QWlrQUp3SStBQzhDUFFBckFqMEFNUUk5QURFQ0NRQkNBamNBTWdJOUFDb0NLd0FjQWpzQU1nSTlBREVDS1FBbkFqNEFMd0k5QUNzQ1BRQXhBamdBS2dIVUFDY0NPQUF6QWpnQUtRSTRBQ0VDT0FBc0FqZ0FMUUk0QUNzQ09BQXNBamdBSndJNEFDb0NPQUF1QWpnQVhnSTRBREVDT0FBcEFqZ0FJd0k0QUN3Q09BQXhBamdBTWdJNEFDOENPQUFwQWpnQUxnSTRBQ29DT0FCaEFqZ0FNd0k0QUNrQ09BQWhBamdBTEFJNEFDMENPQUFyQWpnQUxBSTRBQ2NDT0FBcUFWb0FKd0ZhQURzQldnQXRBVm9BS1FGYUFDVUJXZ0FyQVZvQUpnRmFBQ2tCV2dBcUFWb0FKUUZhQUNjQldnQTdBVm9BTFFGYUFDa0JXZ0FsQVZvQUt3RmFBQ1lCV2dBcEFWb0FLZ0ZhQUNVQldnQW5BVm9BT3dGYUFDMEJXZ0FwQVZvQUpRRmFBQ3NCV2dBbUFWb0FLUUZhQUNvQldnQWxBVm9BSndGYUFEc0JXZ0F0QVZvQUtRRmFBQ1VCV2dBckFWb0FKZ0ZhQUNrQldnQXFBVm9BSlFDbi95QURUUUE3QTAwQU93Tk5BQ2tCRlFCWkFSVUFUd0VvQUdNQktBQmFBMHdBV1FFUkFGUUJFUUJVQWtJQU93SkNBRXNCVFFCMUFZY0FTQUdYQUNrQ1JnQVlBWHIvOVFFbUFBQUJKZ0FBQVJFQVZBSkNBRXNBaEFBUUFKc0FId0ZqQUVnQll3QXlBV0VBTFFGaEFEUUJLQUJkQVNnQUR3Rk5BQ2dCVFFBb0FmUUFBQVBvQUFBRHBBQVdBbGdBTUFGTkFDZ0I1UUFBQWVVQUFBRk5BQ2dCVFFBb0FmUUFBQVBvQUFBQlRRQW9BTzhBUGdHS0FENEJpZ0JFQVlvQVBnRHZBRVFBN3dBK0FpWUFQZ0ltQUVBQll3QStBV01BUUFGMkFEZ0EwUUE0QWhFQVBBSVJBRXNBMFFBQUFORUFBQURCQUFBQ1dBQUFBQUFBQUFMWUFETUNOd0ExQXRnQU13STVBQ0VCL2dBakFqSUFKd0pGQUJrQ09RQXNBbmdBSlFNWUFETUNrUUFyQWprQUd3SVJBQThDcndBOUF3Z0FKUUxSQUNRQzBRQWtBcjBBSlFKakFFd0NPUUFiQTdBQUNnSXlBQW9CV1FCdUFZRUFOZ0NYL3hjQ1V3QThBbHdBd1FKYkFRa0NjUUJSQW5FQVRBSnhBRXdDY1FCcEFuRUFUQUp4QUV3Q2NRQk1BbkVBVmdKeEFFRUNjUUJMQW5FQVN3SnhBRXdDY1FCSUFuRUFQUUp4QUVjQ2NRQnJBc2tBTHdKSUFDd0N6UUJkQVJFQUlBTUVBREFDdHdBUkF6Y0FLUUxKQUNrQ0pRQWJBZm9BTmdJM0FFVUQwd0N4QTdZQVhBUUtBQmdCOUFCTEErZ0FLUUgwQUVzRDZBQXBBK2dBS1FIMEFFd0I5QUJIQWtNQU9RUHRBRE1DdEFBeEFqVUFNd0k0QURJQzhBQVZBdkFBRlFMd0FCVURvd0ErQTRFQU9nR1FBRUVBbXdBbkFTb0FKd0QxQUZZQTlRQldBa1lBT3dGK0FDSUNSZ0E3QkVRQVZnSllBQzBDV3dCTUFHa0FBQUUyQUFBQnJnQUFBS0lBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQUFBQUFBQ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUmdBQUFCZkFBQUF1d0FBQUxzQUFBRTdBQUFCSndBQUFTY0FBQUVqQUFBQXZRQUFBVDBBQUFFc0FBQUEwUUFBQUtVQUFBQUFBQUFBQUFBREFBQUFBQUFBQUFBQUFBQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFWEFBQUFYd0FBQUw4QUFBQy9BQUFCT3dBQUFTNEFBQUV1QUFBQkl3QUFBTVVBQUFFOUFBQUJNUUFBQUhzQUFBQjRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBQVFKWUFBQUNXQUFBQWxnQUFBTFlBRE1DTndBMUF0Z0FNd0grQUNNREdBQXpBd2dBSlFPd0FBb0FBUUFBQTI3L0xnQUFCVWovQ3YwN0JTTUFBUUFBQUFBQUFBQUFBQUFBQUFBQUF6Y0FCQUkvQVpBQUJRQUFBcndDaWdBQUFJd0N2QUtLQUFBQjNRQXlBUG9BQUFBQUFBQUFBQUFBQUFDZ0FBRC9VQUFnNndBQUFBZ0FBQUFBVDAxT1NRREFBQTMrL3dOdS95NEFBQVJNQVpvZ0FBR1RBQUFBQUFJT0FxNEFBQUFnQUFNQUFBQUNBQUFBQXdBQUFCUUFBd0FCQUFBQUZBQUVCNG9BQUFETUFJQUFCZ0JNQUEwQUx3QTVBSDRCZndHUEFaSUJuUUdoQWJBQjNBSG5BZXNDR3dJdEFqTUNOd0paQW5JQ3VnSzhBc2NDeVFMZEF3UUREQU1QQXhNREd3TWtBeWdETGdNeEF6Z0RsQU9wQTd3RHdCNGxIbU1lYlI2RkhwNGUrU0FKSUJFZ0ZTQWFJQjRnSWlBbUlEQWdNeUE2SUQ0Z1JDQlNJSEFnZVNCL0lJa2dtU0NoSUtRZ3B5Q3BJSzBnc2lDMUlMb2d2U0VGSVJNaEZ5RWlJU1loTGlHVklhZ2lBaUlHSWc4aUVpSVZJaG9pSHlJcElpc2lTQ0poSW1VakFpTVFJeUVseWlmcDRQL3YvZkFBK3dMKy8vLy9BQUFBRFFBZ0FEQUFPZ0NnQVk4QmtnR2RBYUFCcndIRUFlWUI2Z0g2QWlvQ01BSTNBbGtDY2dLNUFyd0N4Z0xKQXRnREFBTUdBdzhERVFNYkF5TURKZ011QXpFRE5RT1VBNmtEdkFQQUhpUWVZaDVzSG9BZW5oNmdJQWtnRUNBVElCY2dIQ0FnSUNZZ01DQXlJRGtnUGlCRUlGSWdjQ0IwSUg4Z2dDQ1pJS0Vnb3lDbUlLa2dxeUN4SUxVZ3VTQzhJUVVoRXlFV0lTSWhKaUV1SVpBaHFDSUNJZ1VpRHlJUkloVWlHU0llSWlraUt5SklJbUFpWkNNQ0l4QWpJQ1hLSitqZy8rLzk4QUQ3QWY3Ly8vOENZUUFBQWFJQUFBQUEveEVBNWY3UEFBQUFBQUFBQUFBQUFBQUFBQUFBQVA4RS9zVCszQUFBQUFvQUxQLy9BQUFBQUFBQS84Ny96Zi9HLzcvL3Z2KzUvN2YvdFA0NS9pWCtFLzRRQUFBQUFBQUFBQURpQVFBQTRtVGlST0krQUFBQUFBQUE0aFBpZWVLSzRpemlCT0h0NGpYaHQrRzM0VTNoaWVFNDRkRUFBT0hZNGRzQUFBQUE0YnNBQUFBQTRiWGhyZ0FBNFpmaGV1R1dBQURoQ09DakFBRGdrd0FBNEhNQUFBQUE0SFhnZE9CUUFBQUFBTi9EMzN3QUFOem4yb0VpTGhNeEV5OEd4d053QUFFQUFBREtBQUFBNWdGdUFBQUFBQUFBQXlZREtBTXFBMW9EWEFOZUE2QURwZ0FBQUFBQUFBT21BQUFBQUFBQUE2SURyQU8wQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBNmdEcWdPc0E2NEFBQU8yQUFBQUFBQUFCR0lFYUFSc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRVZnQUFBQUFFVkFSWUFBQUVXQVJhQUFBQUFBUllBQUFBQUFBQUJGUUFBQUFBQkZvQUFBUmFBQUFFV2dSY0FBQUFBQUFBQkZnRVdnQUFBQUFFV0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFDYXdJNkFtY0NRUUowQXFnQ3N3Sm9Ba2tDU2dKQUFvMENOZ0pQQWpVQ1F3STNBamdDbEFLUkFwTUNQQUt5QUFFQUhRQWVBQ1FBS2dBK0FEOEFSUUJKQUZrQVd3QmRBR1VBWmdCdkFJOEFrUUNTQUpnQW9RQ25BTUVBd2dESEFNZ0EwUUpOQWtRQ1RnS2JBbFlDN3dEaEFQMEEvZ0VFQVFrQkhnRWZBU1VCS1FFNkFUMEJRQUZIQVVnQlVRRnhBWE1CZEFGNkFZTUJpUUdqQWFRQnFRR3FBYk1DU3dLK0Frd0NtUUpzQWpzQ2NRS0RBbk1DaFFLL0FyVUM3UUsyQWNvQ1l3S2FBbEFDdHdMM0Fyc0Nsd0lwQWlvQzhBS21BclFDUGdMNEFpZ0J5d0prQWpNQ01nSTBBajBBRXdBQ0FBb0FHZ0FSQUJnQUd3QWhBRGdBS3dBdUFEVUFVd0JMQUU0QVVBQW1BRzRBZmdCd0FITUFqQUI2QW84QWlnQ3pBS2dBcXdDdEFNa0FrQUdCQVBNQTRnRHFBUG9BOFFENEFQc0JBUUVYQVFvQkRRRVVBVE1CS3dFdUFUQUJCUUZRQVdBQlVnRlZBVzRCWEFLUUFXd0JsUUdLQVkwQmp3R3JBWElCclFBV0FQWUFBd0RqQUJjQTl3QWZBUDhBSWdFQ0FDTUJBd0FnQVFBQUp3RUdBQ2dCQndBN0FSb0FMQUVMQURZQkZRQThBUnNBTFFFTUFFSUJJZ0JBQVNBQVJBRWtBRU1CSXdCSEFTY0FSZ0VtQUZnQk9RQldBVGNBVEFFc0FGY0JPQUJSQVNvQVNnRTJBRm9CUEFCY0FUNEJQd0JmQVVFQVlRRkRBR0FCUWdCaUFVUUFaQUZHQUdnQlNRQnFBVXdBYVFGTEFVb0Fhd0ZOQUlnQmFnQnhBVk1BaGdGb0FJNEJjQUNUQVhVQWxRRjNBSlFCZGdDWkFYc0FuQUYrQUpzQmZRQ2FBWHdBcEFHR0FLTUJoUUNpQVlRQXdBR2lBTDBCbndDcEFZc0F2d0doQUxzQm5RQytBYUFBeEFHbUFNb0JyQURMQU5JQnRBRFVBYllBMHdHMUFZSUFnQUZpQUxVQmx3QWxBQ2tCQ0FCZUFHTUJSUUJuQUcwQlR3QUpBT2tBVFFFdEFISUJWQUNxQVl3QXNRR1RBSzRCa0FDdkFaRUFzQUdTQUVFQklRQ0pBV3NBR1FENUFCd0EvQUNMQVcwQUVBRHdBQlVBOVFBMEFSTUFPZ0VaQUU4Qkx3QlZBVFVBZVFGYkFJY0JhUUNXQVhnQWx3RjVBS3dCamdDOEFaNEFuUUYvQUtVQmh3QjdBVjBBalFGdkFId0JYZ0RQQWJFQ3lRTEhBdlFDN2dMMUF2a0M5Z0x4QXRFQzBnTFVBdGtDMndMV0FzOEN5Z0xjQXRjQzB3TFZBRWdCS0FDZUFZQUFwZ0dJQU1ZQnFBRERBYVVBeFFHbkFCSUE4Z0FVQVBRQUN3RHJBQTBBN1FBT0FPNEFEd0R2QUF3QTdBQUVBT1FBQmdEbUFBY0E1d0FJQU9nQUJRRGxBRGNCRmdBNUFSZ0FQUUVjQUM4QkRnQXhBUkFBTWdFUkFETUJFZ0F3QVE4QVZBRTBBRklCTWdCOUFWOEFmd0ZoQUhRQlZnQjJBVmdBZHdGWkFIZ0JXZ0IxQVZjQWdRRmpBSU1CWlFDRUFXWUFoUUZuQUlJQlpBQ3lBWlFBdEFHV0FMWUJtQUM0QVpvQXVRR2JBTG9CbkFDM0Faa0F6UUd2QU13QnJnRE9BYkFBMEFHeUFsY0NZUUppQWwwQ1h3SmdBbDRDd0FMQ0FqOENlQUo3QW5VQ2RnSjZBb0FDZVFLQ0Fud0NmUUtCQXNNQ3VBS3RBcW9DcXdLc0FxNENyd0tkQXFFQ293S09Bb1lDcEFLY0FxY0NrZ0tKQXBZQ2xRS0xBb29BQUxnQi80V3dCSTBBQUFBQUZnRU9BQU1BQVFRSkFBQUFxQUFBQUFNQUFRUUpBQUVBRGdDb0FBTUFBUVFKQUFJQURnQzJBQU1BQVFRSkFBTUFOQURFQUFNQUFRUUpBQVFBSGdENEFBTUFBUVFKQUFVQUdnRVdBQU1BQVFRSkFBWUFIZ0V3QUFNQUFRUUpBQWNBVGdGT0FBTUFBUVFKQUFnQUdBR2NBQU1BQVFRSkFBa0FHQUcwQUFNQUFRUUpBQW9CamdITUFBTUFBUVFKQUFzQU5nTmFBQU1BQVFRSkFBd0FOZ05hQUFNQUFRUUpBQTBCSUFPUUFBTUFBUVFKQUE0QU5BU3dBQU1BQVFRSkFCa0FHQVRrQUFNQUFRUUpBUUFBREFUOEFBTUFBUVFKQVFFQUNnVUlBQU1BQVFRSkFRVUFEZ0MyQUFNQUFRUUpBUmNBREFVU0FBTUFBUVFKQVJvQURBVWVBQU1BQVFRSkFSc0FDZ1VxQUVNQWJ3QndBSGtBY2dCcEFHY0FhQUIwQUNBQU1nQXdBRElBTUFBZ0FGUUFhQUJsQUNBQVFRQnlBR01BYUFCcEFIWUFid0FnQUZBQWNnQnZBR29BWlFCakFIUUFJQUJCQUhVQWRBQm9BRzhBY2dCekFDQUFLQUJvQUhRQWRBQndBSE1BT2dBdkFDOEFad0JwQUhRQWFBQjFBR0lBTGdCakFHOEFiUUF2QUU4QWJRQnVBR2tBWWdCMUFITUFMUUJVQUhrQWNBQmxBQzhBUVFCeUFHTUFhQUJwQUhZQWJ3QXBBRUVBY2dCakFHZ0FhUUIyQUc4QVVnQmxBR2NBZFFCc0FHRUFjZ0F5QUM0QU1BQXdBREVBT3dCUEFFMEFUZ0JKQURzQVFRQnlBR01BYUFCcEFIWUFid0F0QUZJQVpRQm5BSFVBYkFCaEFISUFRUUJ5QUdNQWFBQnBBSFlBYndBZ0FGSUFaUUJuQUhVQWJBQmhBSElBVmdCbEFISUFjd0JwQUc4QWJnQWdBRElBTGdBd0FEQUFNUUJCQUhJQVl3Qm9BR2tBZGdCdkFDMEFVZ0JsQUdjQWRRQnNBR0VBY2dCQkFISUFZd0JvQUdrQWRnQnZBQ0FBYVFCekFDQUFZUUFnQUhRQWNnQmhBR1FBWlFCdEFHRUFjZ0JyQUNBQWJ3Qm1BQ0FBVHdCdEFHNEFhUUJpQUhVQWN3QXRBRlFBZVFCd0FHVUFMZ0JQQUcwQWJnQnBBR0lBZFFCekFDMEFWQUI1QUhBQVpRQklBR1VBWXdCMEFHOEFjZ0FnQUVjQVlRQjBBSFFBYVFCQkFISUFZd0JvQUdrQWRnQnZBQ0FBYVFCekFDQUFZUUFnQUdjQWNnQnZBSFFBWlFCekFIRUFkUUJsQUNBQWN3QmhBRzRBY3dBZ0FITUFaUUJ5QUdrQVpnQWdBSFFBZVFCd0FHVUFaZ0JoQUdNQVpRQWdBR1lBWVFCdEFHa0FiQUI1QUNBQVpnQnlBRzhBYlFBZ0FFOEFiUUJ1QUdrQVlnQjFBSE1BTFFCVUFIa0FjQUJsQUM0QUlBQkpBSFFBSUFCM0FHRUFjd0FnQUc4QWNnQnBBR2NBYVFCdUFHRUFiQUJzQUhrQUlBQmtBR1VBY3dCcEFHY0FiZ0JsQUdRQUlBQm1BRzhBY2dBZ0FHZ0FhUUJuQUdnQWJBQnBBR2NBYUFCMEFITUFJQUJoQUc0QVpBQWdBR2dBWlFCaEFHUUFiQUJwQUc0QVpRQnpBQzRBSUFCVUFHZ0FhUUJ6QUNBQVpnQmhBRzBBYVFCc0FIa0FJQUJwQUhNQUlBQnlBR1VBYlFCcEFHNEFhUUJ6QUdNQVpRQnVBSFFBSUFCdkFHWUFJQUJzQUdFQWRBQmxBQ0FBYmdCcEFHNEFaUUIwQUdVQVpRQnVBSFFBYUFBZ0FHTUFaUUJ1QUhRQWRRQnlBSGtBSUFCQkFHMEFaUUJ5QUdrQVl3QmhBRzRBSUFCMEFIa0FjQUJsQUdZQVlRQmpBR1VBY3dBdUFHZ0FkQUIwQUhBQU9nQXZBQzhBZHdCM0FIY0FMZ0J2QUcwQWJnQnBBR0lBZFFCekFDMEFkQUI1QUhBQVpRQXVBR01BYndCdEFGUUFhQUJwQUhNQUlBQkdBRzhBYmdCMEFDQUFVd0J2QUdZQWRBQjNBR0VBY2dCbEFDQUFhUUJ6QUNBQWJBQnBBR01BWlFCdUFITUFaUUJrQUNBQWRRQnVBR1FBWlFCeUFDQUFkQUJvQUdVQUlBQlRBRWtBVEFBZ0FFOEFjQUJsQUc0QUlBQkdBRzhBYmdCMEFDQUFUQUJwQUdNQVpRQnVBSE1BWlFBc0FDQUFWZ0JsQUhJQWN3QnBBRzhBYmdBZ0FERUFMZ0F4QUM0QUlBQlVBR2dBYVFCekFDQUFiQUJwQUdNQVpRQnVBSE1BWlFBZ0FHa0Fjd0FnQUdFQWRnQmhBR2tBYkFCaEFHSUFiQUJsQUNBQWR3QnBBSFFBYUFBZ0FHRUFJQUJHQUVFQVVRQWdBR0VBZEFBNkFDQUFhQUIwQUhRQWNBQTZBQzhBTHdCekFHTUFjZ0JwQUhBQWRBQnpBQzRBY3dCcEFHd0FMZ0J2QUhJQVp3QXZBRThBUmdCTUFHZ0FkQUIwQUhBQU9nQXZBQzhBY3dCakFISUFhUUJ3QUhRQWN3QXVBSE1BYVFCc0FDNEFid0J5QUdjQUx3QlBBRVlBVEFCQkFISUFZd0JvQUdrQWRnQnZBRklBYndCdEFHRUFiZ0JYQUdVQWFRQm5BR2dBZEFCWEFHa0FaQUIwQUdnQVRnQnZBSElBYlFCaEFHd0FTUUIwQUdFQWJBQnBBR01BVWdCdkFHMEFZUUJ1QUFBQUFnQUFBQUFBQVA5c0FDd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU0zQUFBQUpBREpBUUlCQXdFRUFRVUJCZ0VIQVFnQXh3RUpBUW9CQ3dFTUFRMEJEZ0JpQVE4QXJRRVFBUkVCRWdFVEFHTUJGQUN1QUpBQkZRQWxBQ1lBL1FEL0FHUUJGZ0VYQUNjQkdBRHBBUmtCR2dFYkFDZ0FaUUVjQVIwQXlBRWVBUjhCSUFFaEFTSUJJd0RLQVNRQkpRRExBU1lCSndFb0FTa0JLZ0FwQUNvQStBRXJBU3dCTFFFdUFDc0JMd0V3QVRFQUxBRXlBTXdCTXdFMEFNMEJOUURPQVBvQk5nRFBBVGNCT0FFNUFUb0JPd0F0QVR3QUxnRTlBQzhCUGdFL0FVQUJRUUZDQVVNQTRnQXdBREVCUkFGRkFVWUJSd0ZJQVVrQlNnQm1BRElBMEFGTEFVd0EwUUZOQVU0QlR3RlFBVkVCVWdCbkFWTUJWQUZWQU5NQlZnRlhBVmdCV1FGYUFWc0JYQUZkQVY0Qlh3RmdBSkVCWVFDdkFXSUFzQUF6QU8wQU5BQTFBV01CWkFGbEFXWUJad0EyQVdnQTVBRDdBV2tCYWdGckFXd0JiUUEzQVc0QmJ3RndBWEVCY2dBNEFOUUJjd0YwQU5VQmRRQm9BWFlCZHdGNEFYa0JlZ0RXQVhzQmZBRjlBWDRCZndHQUFZRUJnZ0dEQVlRQmhRR0dBWWNBT1FBNkFZZ0JpUUdLQVlzQU93QThBT3NCakFDN0FZMEJqZ0dQQVpBQmtRQTlBWklBNWdHVEFaUUJsUUdXQVpjQm1BR1pBWm9CbXdHY0FaMEJuZ0dmQUVRQWFRR2dBYUVCb2dHakFhUUJwUUdtQUdzQnB3R29BYWtCcWdHckFhd0FiQUd0QUdvQnJnR3ZBYkFCc1FCdUFiSUFiUUNnQWJNQVJRQkdBUDRCQUFCdkFiUUJ0UUJIQU9vQnRnRUJBYmNBU0FCd0FiZ0J1UUJ5QWJvQnV3RzhBYjBCdmdHL0FITUJ3QUhCQUhFQndnSERBY1FCeFFIR0FjY0FTUUJLQVBrQnlBSEpBY29CeXdCTEFjd0J6UUhPQUV3QTF3QjBBYzhCMEFCMkFkRUFkd0hTQWRNQWRRSFVBZFVCMWdIWEFkZ0IyUUJOQWRvQjJ3Qk9BZHdCM1FCUEFkNEIzd0hnQWVFQjRnRGpBRkFBVVFIakFlUUI1UUhtQWVjQjZBSHBBSGdBVWdCNUFlb0I2d0I3QWV3QjdRSHVBZThCOEFIeEFId0I4Z0h6QWZRQWVnSDFBZllCOXdINEFma0IrZ0g3QWZ3Qi9RSCtBZjhBb1FJQUFIMENBUUN4QUZNQTdnQlVBRlVDQWdJREFnUUNCUUlHQUZZQ0J3RGxBUHdDQ0FJSkFnb0FpUUlMQUZjQ0RBSU5BZzRDRHdJUUFGZ0FmZ0lSQWhJQWdBSVRBSUVDRkFJVkFoWUNGd0lZQUg4Q0dRSWFBaHNDSEFJZEFoNENId0lnQWlFQ0lnSWpBaVFDSlFCWkFGb0NKZ0luQWlnQ0tRQmJBRndBN0FJcUFMb0NLd0lzQWkwQ0xnSXZBRjBDTUFEbkFqRUNNZ0l6QWpRQ05RSTJBamNDT0FJNUFqb0NPd0k4QWowQ1BnSS9Ba0FDUVFKQ0FNQUF3UUNkQUo0Q1F3SkVBa1VDUmdDYkFrY0FFd0FVQUJVQUZnQVhBQmdBR1FBYUFCc0FIQUpJQWtrQ1NnSkxBa3dDVFFKT0FrOENVQUpSQWxJQ1V3SlVBbFVDVmdKWEFsZ0NXUUphQWxzQ1hBSmRBbDRDWHdKZ0FtRUNZZ0pqQW1RQ1pRSm1BbWNDYUFKcEFtb0Nhd0pzQW0wQ2JnSnZBbkFDY1FKeUFuTUNkQUoxQW5ZQ2R3SjRBbmtDZWdKN0Fud0NmUUorQW44Q2dBS0JBb0lDZ3dLRUFvVUNoZ0tIQW9nQ2lRS0tBb3NDakFLTkFvNENqd0tRQXBFQ2tnS1RBcFFDbFFLV0FwY0NtQUtaQXBvQ213S2NBTHdBOUFEMUFQWUFFUUFQQUIwQUhnQ3JBQVFBb3dBaUFLSUF3d0NIQUEwQUJnS2RBQklBUHdLZUFwOENvQUtoQUFzQURBQmVBR0FBUGdCQUFCQUNvZ0N5QUxNQ293S2tBcVVBUWdLbUFxY0NxQUtwQXFvQ3F3REVBTVVBdEFDMUFMWUF0d0NwQUtvQXZnQy9BQVVBQ2dLc0FxMEFBd0t1QXE4Q3NBS3hBcklBaEFLekFMMEFCd0swQXJVQXBnRDNBcllDdHdLNEFya0N1Z0s3QXJ3Q3ZRSytBcjhBaFFMQUFKWUN3UUxDQXNNQ3hBTEZBc1lDeHdBT0FPOEE4QUM0QUNBQWp3QWhBQjhBbFFDVUFKTUFwd0JoQUtRQVFRQ1NBc2dDeVFDY0Fzb0N5d0NhQUprQXBRQ1lBc3dDelFBSUFNWUN6Z0xQQXRBQzBRTFNBdE1DMUFDNUFDTUFDUUNJQUlZQWl3Q0tBdFVBakFMV0FJTUMxd0xZQUY4QTZBQ0NBdGtBd2dMYUF0c0MzQUxkQXQ0QzN3TGdBdUVDNGdMakF1UUM1UUxtQXVjQzZBTHBBdW9DNndMc0F1MEM3Z0x2QXZBQzhRTHlBdk1DOUFMMUF2WUM5d0w0QXZrQytnTDdBdndDL1FMK0F2OERBQU1CQXdJREF3Q09BTndBUXdDTkFOOEEyQURoQU5zQTNRRFpBTm9BM2dEZ0F3UURCUU1HQXdjRENBTUpBd29EQ3dNTUF3MEREZ01QQXhBREVRTVNBeE1ERkFNVkF4WURGd01ZQXhrREdnTWJBeHdESFFNZUF4OERJQU1oQXlJREl3TWtBeVVESmdNbkF5Z0RLUU1xQXlzRExBTXRBeTRETHdNd0F6RURNZ016QXpRRE5RTTJBemNET0FNNUF6b0RPd004QXowRFBnTS9BMEFHUVdKeVpYWmxCM1Z1YVRGRlFVVUhkVzVwTVVWQ05nZDFibWt4UlVJd0IzVnVhVEZGUWpJSGRXNXBNVVZDTkFkMWJta3dNVU5FQjNWdWFURkZRVFFIZFc1cE1VVkJRd2QxYm1reFJVRTJCM1Z1YVRGRlFUZ0hkVzVwTVVWQlFRZDFibWt3TWpBd0IzVnVhVEZGUVRBSGRXNXBNVVZCTWdkMWJta3dNakF5QjBGdFlXTnliMjRIUVc5bmIyNWxhd3BCY21sdVoyRmpkWFJsQjBGRllXTjFkR1VMUTJOcGNtTjFiV1pzWlhnS1EyUnZkR0ZqWTJWdWRBZDFibWt3TVVNMEJrUmpZWEp2YmdaRVkzSnZZWFFIZFc1cE1ERkROUVpGWW5KbGRtVUdSV05oY205dUIzVnVhVEZGUWtVSGRXNXBNVVZETmdkMWJta3hSVU13QjNWdWFURkZReklIZFc1cE1VVkROQWQxYm1rd01qQTBDa1ZrYjNSaFkyTmxiblFIZFc1cE1VVkNPQWQxYm1reFJVSkJCM1Z1YVRBeU1EWUhSVzFoWTNKdmJnZEZiMmR2Ym1WckIzVnVhVEZGUWtNR1IyTmhjbTl1QzBkamFYSmpkVzFtYkdWNEIzVnVhVEF4TWpJS1IyUnZkR0ZqWTJWdWRBUklZbUZ5QzBoamFYSmpkVzFtYkdWNEIzVnVhVEZGTWpRQ1NVb0dTV0p5WlhabEIzVnVhVEF4UTBZSGRXNXBNREl3T0FkMWJta3hSVU5CQjNWdWFURkZRemdIZFc1cE1ESXdRUWRKYldGamNtOXVCMGx2WjI5dVpXc0dTWFJwYkdSbEMwcGphWEpqZFcxbWJHVjRCM1Z1YVRBeE16WUhkVzVwTURGRE53Wk1ZV04xZEdVR1RHTmhjbTl1QjNWdWFUQXhNMElFVEdSdmRBZDFibWt3TVVNNEIzVnVhVEF4UTBFR1RtRmpkWFJsQms1allYSnZiZ2QxYm1rd01UUTFBMFZ1WndkMWJta3dNVGxFQjNWdWFUQXhRMElHVDJKeVpYWmxCM1Z1YVRBeFJERUhkVzVwTVVWRU1BZDFibWt4UlVRNEIzVnVhVEZGUkRJSGRXNXBNVVZFTkFkMWJta3hSVVEyQjNWdWFUQXlNRU1IZFc1cE1ESXlRUWQxYm1rd01qTXdCM1Z1YVRGRlEwTUhkVzVwTVVWRFJRVlBhRzl5YmdkMWJta3hSVVJCQjNWdWFURkZSVElIZFc1cE1VVkVRd2QxYm1reFJVUkZCM1Z1YVRGRlJUQU5UMmgxYm1kaGNuVnRiR0YxZEFkMWJta3dNakJGQjA5dFlXTnliMjRIZFc1cE1ERkZRUXRQYzJ4aGMyaGhZM1YwWlFkMWJta3dNakpEQmxKaFkzVjBaUVpTWTJGeWIyNEhkVzVwTURFMU5nZDFibWt3TWpFd0IzVnVhVEF5TVRJR1UyRmpkWFJsQzFOamFYSmpkVzFtYkdWNEIzVnVhVEF5TVRnSGRXNXBNVVUyTWdkMWJta3hSVGxGQjNWdWFUQXhPRVlFVkdKaGNnWlVZMkZ5YjI0SGRXNXBNREUyTWdkMWJta3dNakZCQjNWdWFURkZOa01HVldKeVpYWmxCM1Z1YVRBeFJETUhkVzVwTURJeE5BZDFibWt3TVVRM0IzVnVhVEF4UkRrSGRXNXBNREZFUWdkMWJta3dNVVExQjNWdWFURkZSVFFIZFc1cE1VVkZOZ1ZWYUc5eWJnZDFibWt4UlVVNEIzVnVhVEZGUmpBSGRXNXBNVVZGUVFkMWJta3hSVVZEQjNWdWFURkZSVVVOVldoMWJtZGhjblZ0YkdGMWRBZDFibWt3TWpFMkIxVnRZV055YjI0SFZXOW5iMjVsYXdWVmNtbHVad1pWZEdsc1pHVUdWMkZqZFhSbEMxZGphWEpqZFcxbWJHVjRDVmRrYVdWeVpYTnBjd1pYWjNKaGRtVUxXV05wY21OMWJXWnNaWGdIZFc1cE1VVkdOQVpaWjNKaGRtVUhkVzVwTVVWR05nZDFibWt3TWpNeUIzVnVhVEZGUmpnR1dtRmpkWFJsQ2xwa2IzUmhZMk5sYm5RSldTNXNiMk5zUjFWQkRsbGhZM1YwWlM1c2IyTnNSMVZCRTFsamFYSmpkVzFtYkdWNExteHZZMnhIVlVFUldXUnBaWEpsYzJsekxteHZZMnhIVlVFT1dXZHlZWFpsTG14dlkyeEhWVUVQZFc1cE1ESXpNaTVzYjJOc1IxVkJEM1Z1YVRGRlJqZ3ViRzlqYkVkVlFRNURZV04xZEdVdWJHOWpiRkJNU3c1T1lXTjFkR1V1Ykc5amJGQk1TdzVQWVdOMWRHVXViRzlqYkZCTVN3NVRZV04xZEdVdWJHOWpiRkJNU3c1YVlXTjFkR1V1Ykc5amJGQk1Td1poWW5KbGRtVUhkVzVwTVVWQlJnZDFibWt4UlVJM0IzVnVhVEZGUWpFSGRXNXBNVVZDTXdkMWJta3hSVUkxQjNWdWFUQXhRMFVIZFc1cE1VVkJOUWQxYm1reFJVRkVCM1Z1YVRGRlFUY0hkVzVwTVVWQk9RZDFibWt4UlVGQ0IzVnVhVEF5TURFSGRXNXBNVVZCTVFkMWJta3hSVUV6QjNWdWFUQXlNRE1IWVcxaFkzSnZiZ2RoYjJkdmJtVnJDbUZ5YVc1bllXTjFkR1VIWVdWaFkzVjBaUXRqWTJseVkzVnRabXhsZUFwalpHOTBZV05qWlc1MEJtUmpZWEp2YmdkMWJta3dNVU0yQm1WaWNtVjJaUVpsWTJGeWIyNEhkVzVwTVVWQ1JnZDFibWt4UlVNM0IzVnVhVEZGUXpFSGRXNXBNVVZETXdkMWJta3hSVU0xQjNWdWFUQXlNRFVLWldSdmRHRmpZMlZ1ZEFkMWJta3hSVUk1QjNWdWFURkZRa0lIZFc1cE1ESXdOd2RsYldGamNtOXVCMlZ2WjI5dVpXc0hkVzVwTVVWQ1JBZDFibWt3TWpVNUJtZGpZWEp2Ymd0blkybHlZM1Z0Wm14bGVBZDFibWt3TVRJekNtZGtiM1JoWTJObGJuUUVhR0poY2d0b1kybHlZM1Z0Wm14bGVBZDFibWt4UlRJMUJtbGljbVYyWlFkMWJta3dNVVF3QjNWdWFUQXlNRGtKYVM1c2IyTnNWRkpMQjNWdWFURkZRMElIZFc1cE1VVkRPUWQxYm1rd01qQkNBbWxxQjJsdFlXTnliMjRIYVc5bmIyNWxhd1pwZEdsc1pHVUhkVzVwTURJek53dHFZMmx5WTNWdFpteGxlQWQxYm1rd01UTTNER3RuY21WbGJteGhibVJwWXdac1lXTjFkR1VHYkdOaGNtOXVCM1Z1YVRBeE0wTUViR1J2ZEFkMWJta3dNVU01Qm01aFkzVjBaUXR1WVhCdmMzUnliM0JvWlFadVkyRnliMjRIZFc1cE1ERTBOZ05sYm1jSGRXNXBNREkzTWdkMWJta3dNVU5EQm05aWNtVjJaUWQxYm1rd01VUXlCM1Z1YVRGRlJERUhkVzVwTVVWRU9RZDFibWt4UlVRekIzVnVhVEZGUkRVSGRXNXBNVVZFTndkMWJta3dNakJFQjNWdWFUQXlNa0lIZFc1cE1ESXpNUWQxYm1reFJVTkVCM1Z1YVRGRlEwWUZiMmh2Y200SGRXNXBNVVZFUWdkMWJta3hSVVV6QjNWdWFURkZSRVFIZFc1cE1VVkVSZ2QxYm1reFJVVXhEVzlvZFc1bllYSjFiV3hoZFhRSGRXNXBNREl3UmdkdmJXRmpjbTl1QjNWdWFUQXhSVUlMYjNOc1lYTm9ZV04xZEdVSGRXNXBNREl5UkFaeVlXTjFkR1VHY21OaGNtOXVCM1Z1YVRBeE5UY0hkVzVwTURJeE1RZDFibWt3TWpFekJuTmhZM1YwWlF0elkybHlZM1Z0Wm14bGVBZDFibWt3TWpFNUIzVnVhVEZGTmpNRmJHOXVaM01FZEdKaGNnWjBZMkZ5YjI0SGRXNXBNREUyTXdkMWJta3dNakZDQjNWdWFURkZOa1FHZFdKeVpYWmxCM1Z1YVRBeFJEUUhkVzVwTURJeE5RZDFibWt3TVVRNEIzVnVhVEF4UkVFSGRXNXBNREZFUXdkMWJta3dNVVEyQjNWdWFURkZSVFVIZFc1cE1VVkZOd1YxYUc5eWJnZDFibWt4UlVVNUIzVnVhVEZGUmpFSGRXNXBNVVZGUWdkMWJta3hSVVZFQjNWdWFURkZSVVlOZFdoMWJtZGhjblZ0YkdGMWRBZDFibWt3TWpFM0IzVnRZV055YjI0SGRXOW5iMjVsYXdWMWNtbHVad1oxZEdsc1pHVUdkMkZqZFhSbEMzZGphWEpqZFcxbWJHVjRDWGRrYVdWeVpYTnBjd1ozWjNKaGRtVUxlV05wY21OMWJXWnNaWGdIZFc1cE1VVkdOUVo1WjNKaGRtVUhkVzVwTVVWR053ZDFibWt3TWpNekIzVnVhVEZGUmprR2VtRmpkWFJsQ25wa2IzUmhZMk5sYm5RSmVTNXNiMk5zUjFWQkRubGhZM1YwWlM1c2IyTnNSMVZCRTNsamFYSmpkVzFtYkdWNExteHZZMnhIVlVFUmVXUnBaWEpsYzJsekxteHZZMnhIVlVFUGRXNXBNVVZHTlM1c2IyTnNSMVZCRG5sbmNtRjJaUzVzYjJOc1IxVkJEM1Z1YVRGRlJqY3ViRzlqYkVkVlFROTFibWt3TWpNekxteHZZMnhIVlVFUGRXNXBNVVZHT1M1c2IyTnNSMVZCRG1OaFkzVjBaUzVzYjJOc1VFeExEbTVoWTNWMFpTNXNiMk5zVUV4TERtOWhZM1YwWlM1c2IyTnNVRXhMRG5OaFkzVjBaUzVzYjJOc1VFeExEbnBoWTNWMFpTNXNiMk5zVUV4TEEyWmZaZ1ZtWDJaZmFRVm1YMlpmYkFkMWJta3lNRGRHQjNWdWFUQXpPVFFIZFc1cE1ETkJPUWQxYm1rd00wSkRCM1Z1YVRJd09Ua0plbVZ5Ynk1NlpYSnZCM3BsY204dWJHWUdiMjVsTG14bUJuUjNieTVzWmdoMGFISmxaUzVzWmdkbWIzVnlMbXhtQjJacGRtVXViR1lHYzJsNExteG1DSE5sZG1WdUxteG1DR1ZwWjJoMExteG1CMjVwYm1VdWJHWU1lbVZ5Ynk1c1ppNTZaWEp2Q0hwbGNtOHViM05tQjI5dVpTNXZjMllIZEhkdkxtOXpaZ2wwYUhKbFpTNXZjMllJWm05MWNpNXZjMllJWm1sMlpTNXZjMllIYzJsNExtOXpaZ2x6WlhabGJpNXZjMllKWldsbmFIUXViM05tQ0c1cGJtVXViM05tRFhwbGNtOHViM05tTG5wbGNtOEhlbVZ5Ynk1MFpnWnZibVV1ZEdZR2RIZHZMblJtQ0hSb2NtVmxMblJtQjJadmRYSXVkR1lIWm1sMlpTNTBaZ1p6YVhndWRHWUljMlYyWlc0dWRHWUlaV2xuYUhRdWRHWUhibWx1WlM1MFpneDZaWEp2TG5SbUxucGxjbThKZW1WeWJ5NTBiM05tQ0c5dVpTNTBiM05tQ0hSM2J5NTBiM05tQ25Sb2NtVmxMblJ2YzJZSlptOTFjaTUwYjNObUNXWnBkbVV1ZEc5elpnaHphWGd1ZEc5elpncHpaWFpsYmk1MGIzTm1DbVZwWjJoMExuUnZjMllKYm1sdVpTNTBiM05tRG5wbGNtOHVkRzl6Wmk1NlpYSnZCM1Z1YVRJd09EQUhkVzVwTWpBNE1RZDFibWt5TURneUIzVnVhVEl3T0RNSGRXNXBNakE0TkFkMWJta3lNRGcxQjNWdWFUSXdPRFlIZFc1cE1qQTROd2QxYm1reU1EZzRCM1Z1YVRJd09Ea0plbVZ5Ynk1a2JtOXRDRzl1WlM1a2JtOXRDSFIzYnk1a2JtOXRDblJvY21WbExtUnViMjBKWm05MWNpNWtibTl0Q1dacGRtVXVaRzV2YlFoemFYZ3VaRzV2YlFwelpYWmxiaTVrYm05dENtVnBaMmgwTG1SdWIyMEpibWx1WlM1a2JtOXRDWHBsY204dWJuVnRjZ2h2Ym1VdWJuVnRjZ2gwZDI4dWJuVnRjZ3AwYUhKbFpTNXVkVzF5Q1dadmRYSXViblZ0Y2dsbWFYWmxMbTUxYlhJSWMybDRMbTUxYlhJS2MyVjJaVzR1Ym5WdGNncGxhV2RvZEM1dWRXMXlDVzVwYm1VdWJuVnRjZ2QxYm1reU1EY3dCM1Z1YVRBd1Fqa0hkVzVwTURCQ01nZDFibWt3TUVJekIzVnVhVEl3TnpRSGRXNXBNakEzTlFkMWJta3lNRGMyQjNWdWFUSXdOemNIZFc1cE1qQTNPQWQxYm1reU1EYzVCM1Z1YVRJd00wVVBaWGhqYkdGdFpHOTNiaTVqWVhObEVYRjFaWE4wYVc5dVpHOTNiaTVqWVhObEczQmxjbWx2WkdObGJuUmxjbVZrTG14dlkyeERRVlF1WTJGelpSWndaWEpwYjJSalpXNTBaWEpsWkM1c2IyTnNRMEZVQjNWdWFUQXdRVVFIZFc1cE1qQXhOUWQxYm1reU1ERXdCM1Z1YVRJd01URU5kVzVrWlhKelkyOXlaV1JpYkF0b2VYQm9aVzR1WTJGelpReDFibWt3TUVGRUxtTmhjMlVMWlc1a1lYTm9MbU5oYzJVTFpXMWtZWE5vTG1OaGMyVU1kVzVwTWpBeE1TNWpZWE5sQjNWdWFUSTNSVGdIZFc1cE1qZEZPUWQxYm1rd01FRXdCM1Z1YVRJd01Ea0NRMUlIZFc1cFJrVkdSZ2QxYm1reU1FSTFEV052Ykc5dWJXOXVaWFJoY25rRVpHOXVad1JGZFhKdkIzVnVhVEl3UWpJSGRXNXBNakJCUkFSc2FYSmhCM1Z1YVRJd1FrRUhkVzVwTWpCQ1F3ZDFibWt5TUVFMkJuQmxjMlYwWVFkMWJta3lNRUl4QjNWdWFUSXdRa1FIZFc1cE1qQkNPUWQxYm1reU1FRTVCM1Z1YVRJeU1Ua0hkVzVwTWpBMU1nZDFibWt5TWpFMUMyVnhkV2wyWVd4bGJtTmxDbWx1ZEdWbmNtRnNZblFLYVc1MFpXZHlZV3gwY0ExeVpYWnNiMmRwWTJGc2JtOTBDR1Z0Y0hSNWMyVjBER2x1ZEdWeWMyVmpkR2x2YmdkMWJta3lNVEkyQjNWdWFUSXlNRFlIZFc1cE1EQkNOUXB2Y25Sb2IyZHZibUZzQjJGeWNtOTNkWEFLWVhKeWIzZHlhV2RvZEFsaGNuSnZkMlJ2ZDI0SllYSnliM2RzWldaMENXRnljbTkzWW05MGFBbGhjbkp2ZDNWd1pHNE1ZWEp5YjNkMWNHUnVZbk5sQjNWdWFUSXhNVGNIZFc1cE1qRXdOUVp0YVc1MWRHVUdjMlZqYjI1a0IzVnVhVEl4TVRNSGRXNXBNakV4TmdsbGMzUnBiV0YwWldRRmFHOTFjMlVIZFc1cE1ESkNRd2QxYm1rd01rSkJCM1Z1YVRBeVF6a0hkVzVwTURKQ09RZDFibWt3TXpBNEMzVnVhVEF6TURnd016QXdDM1Z1YVRBek1EZ3dNekF4QzNWdWFUQXpNRGd3TXpCREMzVnVhVEF6TURnd016QTBCM1Z1YVRBek1EY0xkVzVwTURNd056QXpNRFFKWjNKaGRtVmpiMjFpQ1dGamRYUmxZMjl0WWdkMWJta3dNekJDQjNWdWFUQXpNRElIZFc1cE1ETXdRd2QxYm1rd016QTJCM1Z1YVRBek1FRUxkVzVwTURNd1FUQXpNREVKZEdsc1pHVmpiMjFpQzNWdWFUQXpNRE13TXpBMEIzVnVhVEF6TURRTmFHOXZhMkZpYjNabFkyOXRZZ2QxYm1rd016QkdCM1Z1YVRBek1URUhkVzVwTURNeE1nZDFibWt3TXpFekIzVnVhVEF6TVVJTVpHOTBZbVZzYjNkamIyMWlCM1Z1YVRBek1qUUhkVzVwTURNeU5nZDFibWt3TXpJM0IzVnVhVEF6TWpnSGRXNXBNRE15UlFkMWJta3dNek14QjNWdWFUQXpNelVIZFc1cE1ETXpOZ2QxYm1rd016TTNCM1Z1YVRBek16Z01kVzVwTURNd09DNWpZWE5sRUhWdWFUQXpNRGd3TXpBd0xtTmhjMlVRZFc1cE1ETXdPREF6TURFdVkyRnpaUkIxYm1rd016QTRNRE13UXk1allYTmxFSFZ1YVRBek1EZ3dNekEwTG1OaGMyVU1kVzVwTURNd055NWpZWE5sRUhWdWFUQXpNRGN3TXpBMExtTmhjMlVPWjNKaGRtVmpiMjFpTG1OaGMyVU9ZV04xZEdWamIyMWlMbU5oYzJVTWRXNXBNRE13UWk1allYTmxESFZ1YVRBek1ESXVZMkZ6WlF4MWJta3dNekJETG1OaGMyVU1kVzVwTURNd05pNWpZWE5sREhWdWFUQXpNRUV1WTJGelpSQjFibWt3TXpCQk1ETXdNUzVqWVhObERuUnBiR1JsWTI5dFlpNWpZWE5sRUhWdWFUQXpNRE13TXpBMExtTmhjMlVNZFc1cE1ETXdOQzVqWVhObEVtaHZiMnRoWW05MlpXTnZiV0l1WTJGelpReDFibWt3TXpCR0xtTmhjMlVNZFc1cE1ETXhNUzVqWVhObERIVnVhVEF6TVVJdVkyRnpaUXgxYm1rd016TTNMbU5oYzJVTWRXNXBNRE16T0M1allYTmxEV1JwWlhKbGMybHpMbU5oYzJVT1pHOTBZV05qWlc1MExtTmhjMlVLWjNKaGRtVXVZMkZ6WlFwaFkzVjBaUzVqWVhObEVXaDFibWRoY25WdGJHRjFkQzVqWVhObEQyTnBjbU4xYldac1pYZ3VZMkZ6WlFwallYSnZiaTVqWVhObENtSnlaWFpsTG1OaGMyVUpjbWx1Wnk1allYTmxDblJwYkdSbExtTmhjMlVMYldGamNtOXVMbU5oYzJVU1lXTjFkR1V1Ykc5amJGQk1TeTVqWVhObERXRmpkWFJsTG14dlkyeFFURXNMZFc1cE1ETXdOakF6TURFTGRXNXBNRE13TmpBek1EQUxkVzVwTURNd05qQXpNRGtMZFc1cE1ETXdOakF6TURNTGRXNXBNRE13TWpBek1ERUxkVzVwTURNd01qQXpNREFMZFc1cE1ETXdNakF6TURrTGRXNXBNRE13TWpBek1ETVFkVzVwTURNd05qQXpNREV1WTJGelpSQjFibWt3TXpBMk1ETXdNQzVqWVhObEVIVnVhVEF6TURZd016QXpMbU5oYzJVUWRXNXBNRE13TWpBek1ERXVZMkZ6WlJCMWJta3dNekF5TURNd01DNWpZWE5sRUhWdWFUQXpNREl3TXpBekxtTmhjMlVIZFc1cFJUQkdSZ2QxYm1sRlJrWkVCM1Z1YVVZd01EQVRkVzVwTWpCQ05TNUNVa0ZEUzBWVUxqRXhNQkJqWlc1MExrSlNRVU5MUlZRdU1URXdHV052Ykc5dWJXOXVaWFJoY25rdVFsSkJRMHRGVkM0eE1UQVNaRzlzYkdGeUxrSlNRVU5MUlZRdU1URXdFM1Z1YVRJd1FqSXVRbEpCUTB0RlZDNHhNVEFUZFc1cE1qQkJOaTVDVWtGRFMwVlVMakV4TUJOMWJta3lNRUU1TGtKU1FVTkxSVlF1TVRFd0FBRUFBZi8vQUE4QUFRQUNBQTRBQUFBQUFBQUFaZ0FDQUE0QUFRQnFBQUVBYlFFRUFBRUJCZ0VjQUFFQkhnRk1BQUVCVHdIRUFBRUJ4Z0hKQUFJQ2NBSnlBQUVDZEFKMEFBRUNlUUo1QUFFQ3d3TERBQUVDeWdMc0FBTUMrZ01SQUFNREh3TXNBQU1ETUFNMEFBRUFBUUFEQUFBQUVBQUFBQ0FBQUFBMkFBRUFCZ0xpQXVNQzVBTGxBdWNDNkFBQ0FBTUN5Z0xnQUFBQytnTU9BQmNESHdNc0FDd0FBUUFDQXVFRER3QUJBQUFBQ2dBWUFDd0FBa1JHVEZRQUxteGhkRzRBTGdBRGEyVnliZ0FrYldGeWF3QXFiV3R0YXdBd0FBVUFKZ0F3QURnQVFnQk1BRW9BQUFBQUFBRUFBQUFBQUFFQUFRQUFBQU1BQWdBREFBUUFBZ0FJQUFJQVBBRDZBQVFBQUFBQkQ4UUFCZ0FRQUFFUHlBQUFBQVlBRUFBQkQ4b0FBUUFHQUJBQUFRL01BQUlBQVAvL0FBTUFBQUFCQUFJQUFRL0NBQVFBQUFCYUVHZ1FhQkJvRUdnUWFCQm9FR2dRYUJCb0VHZ1FhQkJvRUdnUWFCQm9FR2dRYUJCb0VHZ1FhQkJvRUdnUWFCQm9FR2dRYUJjNkYwQVhRQkIrRUg0UWZoQitFSDRRZmhkU0YxSVFtQkNZRUpnUW1CQ1lFSmdRbmhDb0VLZ1FxQkNvRUtnUXFCQ29FS2dRcUJES0Z6b1hPaGM2RUxvUXVoQzZFTG9RdWhDNkVNb1F4QkRFRU1RUXhCREVFTVFReWhEcUVPQVE2aERxRU9BUTZoRHdFbW9TZEJNV0U1QVRuaFc4RnpvWFFCZFNGMUlYVWhkWUFBSVh5QUFFQUFBWWhocWdBQzBBS2dBQUFBQUFBQUFBLy9NQUFBQUFBQUFBQUFBQUFBRC84d0FBLy9NQUFBQUEvK2tBQUFBQS8vWUFBQUFBQUFBQUFQL2RBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUQvK3dBQUFBQUFBUC96QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELyt3QUFBQUFBQUFBQS8rei8vZ0FBQUFELzgvLzdBQUFBQVAveEFBQUFBUC94QUFEL3RRQUEvK1FBQUFBQS82a0FBQUFBQUFBQUFQK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC9vUUFBQUFBQUFQL3AvL2IvN0FBQUFBQUFBQUFBLy9FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC8rd0FBQUFBQUFBQUEvLzBBQUFBQS8vc0FBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQK0lBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvZlFBQS84NEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDZ0FBQUFBQUFBQUFBQUFBQjRBS0FBb0FBQUFBQUFVQUNnQUFBQW9BQ2dBS1AvTy8rSUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELyt3QUEvLzBBQUFBQS8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzdBQUFBQUFBQS82SC84Ly9ELzdYL29RQUEvOGtBQVAvVC8zMEFBUC9oLyt6L3pmK3YvK3ovcHYvZEFBRC93UUFBQUFBQUFQODkvMzcvenYvVEFBQUFBQUFBLytJQUFBQUFBQUFBQUFBQUFBQUFBUC9pLzhrQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzRRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS85UC84Ly9kLytULzB3QUEvK2NBQVAvcy84Ny83QUFBQUFBQUFQL2RBQUFBQUFBQUFBRC80Z0FBQUFBQUFQOXovNnNBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zLytMLzdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vRUFBQUFBLyt3QUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC80Z0FBQUFBQUFQL2RBQUFBQVAvWS83RC9pZ0FBLzZFQUFBQUEvNjhBQUFBQS8rd0FBUCttQUFBQUFBQUEvK3ovYWdBQUFBQUFBQUFBLzZiLzJBQUFBQUQvbkFBQUFBQUFBUDkvLyt6LzJBQUEvL2IvOHYvMkFBRC85di92QUFBQUFQL3hBQUQvNmdBQS8vWUFBQUFBLytjQUFBQUFBQUFBQUFBQUFBQUFBQUFBLytJQUFBQUFBQUFBQUFBQS8vRUFBQUFBQUFBQUFBQUFBQUFBQVAvdUFBRC84UUFBLzdELzZmKzYvNm4vc0FBQS83b0FBUC9kQUFELzdBQUFBQUFBQVArd0FBQUFBUC9ZLyt6LzNRQUFBQUFBQVAvTy81Y0FBUC9zQUFBQUFBQUEvODRBQUFBQUFBQUFBQUFBQUFBQUFQL3MvOTMvM1FBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQS81MEFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUEvL1lBQUFBQUFBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUCtYQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBLzg3LzlnQUFBQUFBQUFBQUFBRC84UUFBQUFBQUFBQUEvK3dBQUFBQS8rSUFBQUFBQUFBQUFQK20vN29BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9uQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURnQUFBQUFBQUFBQUFBQUFBQUFBLytyLzN2L3EvODcvNmdBQUFBQUFBUC9iLzh6LzJBQUEvOWdBQUFBQS8rSUFBQUFBLy9ZQUFQL3JBQUFBQUFBQS8rci92Z0FBQUFBQUFBQUEvNmdBQUFBQUFBRC84UUFBQUFBQUFQL3NBQUQvMndBQS8vc0FBQUFBQUFELyt3QUFBQUFBQUFBQS8vWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUZmL1lBQUFBQVAvMkFBQUFBQUFBQUFBQUFBQUFBQUFBRHdBQUFBQUFBQUFBQUFBQUFBQUEvOThBQUFBQUFBRC82UUFBQUFBQUFQL3MvODRBQUFBQUFBQUFBUC9yQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFEL3hBQUFBQUFBQUFBQS83OEFBQUFBQUFBQUFBQUFBQUFBQUFBQS85My83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzh3QUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQLzJBQUFBQUFBQS8rY0FBQUFBLzhuLzV3QUFBQUFBQUFBQS8rei81d0FBQUFBQUFBQUFBQUFBQUFBQS85TUFBQUFBQUFBQUFQL0UvN1VBQVAveEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9uQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvemdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvT0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHQUFBQUFBQUFBQUFBQUFBQXdBQUFBQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC80Z0FBQUFBQUFBQUEvODRBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRC8rQUFBQUFBQUFBQUFBQUFBQUFBQS8vc0FBQUFBLzZFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL08vNXdBQUFBQUFBQUFBUC94QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQveEFBQUFDTUFBQUFBQUFBQUFQL1lBQUQvcXdBQS84Ny8yQUFBLyt3QUFQL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvOXYrSUFBQUFBQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFvQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vUC84Ly9zLytuLzh3QUFBQUFBQVAvWS84Ny80Z0FBLyt3QUFQL3ovK3dBQVAvaC8rei83QUFBQUFBQUFBQUFBQUQvemdBQUFBQUFBQUFBLyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBLzlqLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUd3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFBQUFBQUQvN0FBQUFBQUFBQUFBLytJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkRoQU9KZ0FGRG1ZUGpBQUJJVndoWEFBQklXd2hoZ0FCSVlnaGlBQUJJWjRpaUFBQkl2SWk4Z0FCSXZvakJBQUNBQnNBQVFBYUFBQUFQZ0ErQUJvQVd3QmRBQnNBWHdCaUFCNEFaQUJrQUNJQWp3Q1FBQ01Bb1FDbUFDVUF4d0RRQUNzQkhnRWVBRFVCUFFFL0FEWUJkQUY1QURrQmdnR0lBRDhCeFFIRkFFWUIwZ0hTQUVjQjJRSFpBRWdCM0FIZEFFa0I1QUhrQUVzQjV3SG5BRXdDUFFJOUFFMENRd0pFQUU0Q1h3SmdBRkFDWWdKaUFGSUNhd0pyQUZNQ2VBSjRBRlFDZWdKNkFGVUNmd0tCQUZZQzhBTHdBRmtBQlFJOC8rSUNRd0FlQWwvL2x3SmcvNWNDdS8rU0FBWUNQUC9PQWtNQUhnSmYvM1FDWVArY0FtTC9uQUs3L3hnQUFRSkQvOWdBQWdKZi8rSUN1Ly9pQUFRQ1EvL1lBbC8vNXdKci85TUN1Ly9pQUFJQ1lnQVVBbXYvN0FBQkFrb0FBd0FGQWp3QUZBSktBQlVDVEFBVkFtSUFGQUx3QUJRQUFnSksvL1lDVFAvMkFBRUM4QUFlQUY0QUh2L3NBQi8vN0FBZy8rd0FJZi9zQUNMLzdBQWovK3dBUC8vc0FFRC83QUJCLyt3QVF2L3NBRVAvN0FCRS8rd0FiLy9zQUhELzdBQngvK3dBY3Yvc0FIUC83QUIwLyt3QWRmL3NBSGIvN0FCMy8rd0FlUC9zQUhuLzdBQjYvK3dBZS8vc0FIei83QUI5Lyt3QWZ2L3NBSC8vN0FDQS8rd0FnZi9zQUlMLzdBQ0QvK3dBaFAvc0FJWC83QUNHLyt3QWgvL3NBSWovN0FDSi8rd0Fpdi9zQUl2LzdBQ00vK3dBamYvc0FJNy83QUNSLyt3QW9QL3NBS0gvN0FDaS8rd0FvLy9zQUtULzdBQ2wvK3dBcHYvc0FNSC83QURDLyt3QXcvL3NBTVQvN0FERi8rd0F4di9zQU1qLzdBREovK3dBeXYvc0FNdi83QURNLyt3QXpmL3NBTTcvN0FEUC8rd0EwUC9zQU56LzdBRGUvK3dCSHYvc0FZTC83QUdqLy9ZQnBQLzJBYVgvOWdHbS8vWUJwLy8yQWFqLzlnR3IvL1lCclAvMkFhMy85Z0d1Ly9ZQnIvLzJBYkQvOWdHeC8vWUJzdi8yQWNYLzdBSEcvK3dCeC8vc0Fjai83QUhKLyt3Q2NQL3NBbkwvN0FKNS8rd0NoUC9zQUFJQVdmL3NBRnIvN0FBb0FBRUFGQUFDQUJRQUF3QVVBQVFBRkFBRkFCUUFCZ0FVQUFjQUZBQUlBQlFBQ1FBVUFBb0FGQUFMQUJRQURBQVVBQTBBRkFBT0FCUUFEd0FVQUJBQUZBQVJBQlFBRWdBVUFCTUFGQUFVQUJRQUZRQVVBQllBRkFBWEFCUUFHQUFVQUJrQUZBQWFBQlFBR3dBVUFCd0FGQURJLzlnQXlmL1lBTXIvMkFETC85Z0F6UC9ZQU0zLzJBRE8vOWdBei8vWUFORC8yQUhaLyt3QjVQL3NBazcvN0FBZUFBSC9sd0FDLzVjQUEvK1hBQVQvbHdBRi81Y0FCditYQUFmL2x3QUkvNWNBQ2YrWEFBci9sd0FMLzVjQURQK1hBQTMvbHdBTy81Y0FELytYQUJEL2x3QVIvNWNBRXYrWEFCUC9sd0FVLzVjQUZmK1hBQmIvbHdBWC81Y0FHUCtYQUJuL2x3QWEvNWNBRy8rWEFCei9sd0JaLzV3QVd2K2NBQU1DTmYvT0FqYi96Z0k1Lzg0QWh3QUIvNkVBQXYraEFBUC9vUUFFLzZFQUJmK2hBQWIvb1FBSC82RUFDUCtoQUFuL29RQUsvNkVBQy8raEFBei9vUUFOLzZFQUR2K2hBQS8vb1FBUS82RUFFZitoQUJML29RQVQvNkVBRlAraEFCWC9vUUFXLzZFQUYvK2hBQmovb1FBWi82RUFHditoQUJ2L29RQWMvNkVBL3YvRUFQLy94QUVBLzhRQkFmL0VBUUwveEFFRC84UUJCUC9FQVFYL3hBRUcvOFFCQi8vRUFRai94QUVKLzhRQkN2L0VBUXYveEFFTS84UUJEZi9FQVE3L3hBRVAvOFFCRVAvRUFSSC94QUVTLzhRQkUvL0VBUlQveEFFVi84UUJGdi9FQVJmL3hBRVkvOFFCR2YvRUFSci94QUViLzhRQkhQL0VBUjMveEFFZi83QUJJUCt3QVNIL3NBRWkvN0FCSS8rd0FTVC9zQUUvLyt3QlIvL3NBVWovN0FGSi8rd0JTdi9zQVV2LzdBRk0vK3dCVGYvc0FVNy83QUZQLyt3QlVQL3NBVkgveEFGUy84UUJVLy9FQVZUL3hBRlYvOFFCVnYvRUFWZi94QUZZLzhRQldmL0VBVnIveEFGYi84UUJYUC9FQVYzL3hBRmUvOFFCWC8vRUFXRC94QUZoLzhRQll2L0VBV1AveEFGay84UUJaZi9FQVdiL3hBRm4vOFFCYVAvRUFXbi94QUZxLzhRQmEvL0VBV3oveEFGdC84UUJidi9FQVcvL3hBRncvOFFCY2Yvc0FYUC94QUYwLyt3QmRmL3NBWGIvN0FGMy8rd0JlUC9zQVhuLzdBRjYvOFFCZS8vRUFYei94QUY5LzhRQmZ2L0VBWC8veEFHei85Z0J0UC9ZQWJYLzJBRzIvOWdCd1AvRUFjSC83QUhDLzhRQncvL0VBY1QvMkFIUC8rd0NkZi9FQXFiLzdBQmZBQjBBQUFBa0FBQUFKUUFBQUNZQUFBQW5BQUFBS0FBQUFDa0FBQUFxQUFBQUt3QUFBQ3dBQUFBdEFBQUFMZ0FBQUM4QUFBQXdBQUFBTVFBQUFESUFBQUF6QUFBQU5BQUFBRFVBQUFBMkFBQUFOd0FBQURnQUFBQTVBQUFBT2dBQUFEc0FBQUE4QUFBQVBRQUFBRDRBQUFCRkFBQUFSZ0FBQUVjQUFBQklBQUFBU1FBQUFFb0FBQUJMQUFBQVRBQUFBRTBBQUFCT0FBQUFUd0FBQUZBQUFBQlJBQUFBVWdBQUFGTUFBQUJVQUFBQVZRQUFBRllBQUFCWEFBQUFXQUFBQUZzQUFBQmNBQUFBWFFBQUFGNEFBQUJmQUFBQVlBQUFBR0VBQUFCaUFBQUFZd0FBQUdRQUFBQmxBQUFBWmdBQUFHY0FBQUJvQUFBQWFRQUFBR29BQUFCckFBQUFiQUFBQUcwQUFBQnVBQUFBandBQUFKQUFBQUNTQUFBQWt3QUFBSlFBQUFDVkFBQUFsZ0FBQUpjQUFBQ2ZBQUFBeVAvVEFNbi8wd0RLLzlNQXkvL1RBTXovMHdETi85TUF6di9UQU0vLzB3RFEvOU1BM1FBQUFuZ0FBQUo2QUFBQ2Z3QUFBb0FBQUFLQkFBQUN2Z0FBQXI4QUFBTERBQUFBQVFKci85MEFCQUpEQUI0Q1gvL2JBbXYvM0FLNy8vVUFBUUpyLzlNQVN3RCsvOElBLy8vQ0FRRC93Z0VCLzhJQkF2L0NBUVAvd2dFRS84SUJCZi9DQVFiL3dnRUgvOElCQ1AvQ0FRbi93Z0VLLzhJQkMvL0NBUXovd2dFTi84SUJEdi9DQVEvL3dnRVEvOElCRWYvQ0FSTC93Z0VULzhJQkZQL0NBUlgvd2dFVy84SUJGLy9DQVJqL3dnRVovOElCR3YvQ0FSdi93Z0VjLzhJQkhmL0NBVkgvd2dGUy84SUJVLy9DQVZUL3dnRlYvOElCVnYvQ0FWZi93Z0ZZLzhJQldmL0NBVnIvd2dGYi84SUJYUC9DQVYzL3dnRmUvOElCWC8vQ0FXRC93Z0ZoLzhJQll2L0NBV1Avd2dGay84SUJaZi9DQVdiL3dnRm4vOElCYVAvQ0FXbi93Z0ZxLzhJQmEvL0NBV3ovd2dGdC84SUJidi9DQVcvL3dnRncvOElCYy8vQ0FYci93Z0Y3LzhJQmZQL0NBWDMvd2dGKy84SUJmLy9DQWNEL3dnSEMvOElCdy8vQ0FuWC93Z0FDQUI4QUFRQkVBQUFBV3dCZEFFUUFYd0JpQUVjQVpBQmtBRXNBYndDZEFFd0Fud0RVQUhzQTNBRGNBTEVBM2dEZ0FMSUErd0Q5QUxVQkJRRUdBTGdCQ0FFZUFMb0JQUUUvQU5FQlFnRkNBTlFCUkFGRUFOVUJVUUZ5QU5ZQmRBRi9BUGdCZ2dHSUFRUUJvd0cyQVFzQndnSEZBUjhCMGdIbkFTTUNQZ0kvQVRrQ1R3SlNBVHNDVkFKVkFUOENXQUplQVVFQ1pBSmtBVWdDWmdKb0FVa0NjQUp3QVV3Q2NnSnlBVTBDZUFKNkFVNENmd0tCQVZFQ2hBS0VBVlFBQWdCWkFBRUFHZ0FDQUJzQUhBQUVBQjBBSFFBYUFCNEFJd0FJQUNVQUpRQVNBQ2tBS1FBT0FDb0FQUUFFQUQ0QVBnQWJBRDhBUkFBS0FGc0FYQUFYQUYwQVhRQVBBRjhBWWdBUEFHUUFaQUFQQUk0QWpnQUVBSThBa0FBVkFKSUFsd0FRQUpnQW5RQUxBSjhBbndBYUFLRUFwZ0FSQUtjQXdBQURBTUVBeGdBTUFNY0F4d0FxQU1nQTBBQUpBTkVBMUFBU0FOd0EzQUFJQU44QTN3QUxBT0FBNEFBU0FQc0EvQUFGQVAwQS9RQUJBUVVCQlFBQkFRWUJCZ0FkQVFnQkNBQU9BUWtCSEFBRkFSMEJIUUFCQVI0QkhnQVlBVDBCUHdBWkFVSUJRZ0FkQVVRQlJBQXJBVkVCYndBQkFYQUJjQUFGQVhFQmNnQUJBWFFCZVFBVEFYb0Jmd0FOQVlJQmdnQVlBWU1CaUFBVUFhTUJxQUFHQWFrQnFRQXNBYW9Cc2dBR0FiTUJ0Z0FPQWNJQndnQUJBY01Cd3dBTkFjUUJ4QUFPQWNVQnhRQVlBZElCMGdBV0FkTUIwd0FqQWRRQjFBQXBBZFVCMVFBb0FkWUIxZ0FnQWRjQjF3QWZBZGdCMkFBbkFka0IyUUFtQWRvQjJnQWVBZHNCMndBaUFkd0IzUUFXQWQ0QjNnQWpBZDhCM3dBcEFlQUI0QUFvQWVFQjRRQWdBZUlCNGdBZkFlTUI0d0FuQWVRQjVBQW1BZVVCNVFBZUFlWUI1Z0FpQWVjQjV3QVdBajRDUHdBY0FrOENVZ0FIQWxRQ1ZRQUhBbGdDWEFBSEFsMENYZ0FsQW1RQ1pBQWhBbVlDWmdBaEFtY0NhQUFrQW5BQ2NBQUlBbklDY2dBSUFuZ0NlQUFiQW5rQ2VRQUtBbm9DZWdBWEFuOENnUUFWQW9RQ2hBQU1BQUlBWUFBQkFCd0FCQUFlQUNNQUFnQS9BRVFBQWdCWkFGb0FHUUJ2QUk0QUFnQ1JBSkVBQWdDWUFKMEFEQUNnQUtBQUFnQ2hBS1lBRUFDbkFNQUFCZ0RCQU1ZQURRREhBTWNBSndESUFOQUFDd0RSQU5RQUV3RGNBTndBQWdEZUFONEFBZ0RmQU44QURBRGdBT0FBRXdEaEFQd0FCUUQ5QVAwQUNBRCtBUjBBQVFFZUFSNEFEZ0VmQVNRQUVRRWxBU2dBQ0FFOUFUNEFDQUUvQVQ4QUJ3RkFBVVlBQ0FGSEFWQUFCd0ZSQVhBQUFRRnhBWEVBQndGeUFYSUFDQUZ6QVhNQUFRRjBBWGtBQndGNkFYOEFEd0dCQVlFQUNBR0NBWUlBRGdHREFZZ0FFZ0dKQWFJQUF3R2pBYWdBQ1FHcEFha0FLQUdxQWFvQUtRR3JBYklBQ1FHekFiWUFGQUczQWJvQUF3RzhBYndBQXdHK0FiOEFBd0hBQWNBQUFRSEJBY0VBQndIQ0FjSUFBUUhEQWNNQUR3SEVBY1FBRkFIRkFja0FEZ0hLQWNzQUZRSFBBYzhBQndIU0FkSUFGZ0hUQWRNQUlnSFVBZFFBSmdIVkFkVUFKUUhXQWRZQUhnSFhBZGNBSFFIWUFkZ0FKQUhaQWRrQUZ3SGFBZG9BSEFIYkFkc0FJUUhjQWQwQUZnSGVBZDRBSWdIZkFkOEFKZ0hnQWVBQUpRSGhBZUVBSGdIaUFlSUFIUUhqQWVNQUpBSGtBZVFBRndIbEFlVUFIQUhtQWVZQUlRSG5BZWNBRmdJMUFqWUFHQUkzQWpnQUd3STVBamtBR0FJK0FqOEFHZ0pBQWtBQUZRSk9BazRBRndKUEFsSUFDZ0pVQWxVQUNnSllBbHdBQ2dKakFtTUFId0prQW1RQUlBSmxBbVVBSHdKbUFtWUFJQUpuQW1nQUl3SndBbkFBQWdKeUFuSUFBZ0oxQW5VQUFRSjVBbmtBQWdLRUFvUUFEUUttQXFZQUJ3SzVBcmtBRlFBQ0FBTUN5Z0xzQUFBQytnTVJBQ01ESHdNc0FEc0FBZ0FLQUFFQWFnQUFBRzBCQkFCcUFRWUJIQUVDQVI0QlRBRVpBVThCeEFGSUFuQUNjZ0crQW5RQ2RBSEJBbmtDZVFIQ0FzTUN3d0hEQXpBRE5BSEVBRWtBQUIzT0FBQWR5QUFBSGM0QUFCM3lBQUFkMUFBQUhkb0FBQjMrQUFBZDRBQUFIZVlBQUIzc0FBQWVaQUFBSGZJQUFCNWVBQUFkK0FBQUhmZ0FBQjVxQUFBZWFnQUFIZjRBQUI0RUFBQWVDZ0FBSGw0QUFCNFFBQUFlRmdBQkg4WUFBaDJBQUFJZGhnQUNIWXdBQWgyU0FBTVV5QUFDSFpnQUFoMmVBQVFVemdBRUZOUUFCQlRhQUFRVTRBQUFIaHdBQUI1d0FBQWVIQUFBSG53QUFCNGlBQUFlS0FBQUhrd0FBQjR1QUFBZU5BQUFIam9BQUI1OEFBQWVmQUFBSG5BQUFCNUFBQUFlUUFBQUhuWUFBQjVHQUFBZVRBQUFIbElBQUI1WUFBQWVjQUFCSDh3QUJCVG1BQVFVN0FBQUhsNEFBQjVlQUFBZVhnQUFIbW9BQUI1a0FBQWVaQUFBSG1RQUFCNXFBQUFlY0FBQUhuQUFBQjUyQUFBZWZBQUFIb0lBQUI2SUFja1VHZ0FBRkRJVU9BQUFGQWdBQUJReUZEZ0FBQlBNQUFBVU1oUTRBQUFUMGdBQUZESVVPQUFBRTh3QUFCUUNGRGdBQUJQU0FBQVVNaFE0QUFBVDJBQUFGRElVT0FBQUU5NEFBQlF5RkRnQUFCUGtBQUFVTWhRNEFBQVQ1QUFBRkRJVU9BQUFFK29BQUJReUZEZ0FBQlBrQUFBVUFoUTRBQUFUNmdBQUZESVVPQUFBRS9BQUFCUXlGRGdBQUJQMkFBQVVNaFE0QUFBVUNBQUFGRElVT0FBQUUvd0FBQlF5RkRnQUFCUWFBQUFVQWhRNEFBQVVDQUFBRkRJVU9BQUFGQTRBQUJReUZEZ0FBQlFVQUFBVU1oUTRBQUFVTEFBQUZESVVPQUFBRkJvQUFCUXlGRGdBQUJRZ0FBQVVNaFE0QUFBVUpnQUFGRElVT0FBQUZDd0FBQlF5RkRnQUFCUStBQUFVU2dBQUFBQVVSQUFBRkVvQUFBQUFGRkFBQUJSV0FBQUFBQncyQUFBY1BBQUFBQUFVWEFBQUhEd0FBQUFBRkdnQUFCdzhBQUFBQUJ3MkFBQVVZZ0FBQUFBVWFBQUFIRHdBQUFBQUZHNEFBQnc4QUFBQUFCU01BQUFiWGdBQUZKSVVkQUFBRkhvQUFCU0FGSXdBQUJ0ZUFBQVVraFNHQUFBYlhnQUFGSklVakFBQUcxNEFBQlNTRkpnQUFCU2VBQUFVcEJUbUFBQVU4aFQ0QUFBVTFBQUFGUElVK0FBQUZLb0FBQlR5RlBnQUFCU3dBQUFVOGhUNEFBQVVzQUFBRlBJVStBQUFGTFlBQUJUeUZQZ0FBQlN3QUFBVXpoVDRBQUFVdGdBQUZQSVUrQUFBRkx3QUFCVHlGUGdBQUJUQ0FBQVU4aFQ0QUFBVTFBQUFGUElVK0FBQUZNZ0FBQlR5RlBnQUFCVElBQUFVOGhUNEFBQVU1Z0FBRk00VStBQUFGTlFBQUJUeUZQZ0FBQlRhQUFBVThoVDRBQUFVNEFBQUZQSVUrQUFBRk93QUFCVHlGUGdBQUJUbUFBQVU4aFQ0QUFBVTdBQUFGUElVK0FBQUZQNEFBQmY0QUFBQUFCVVFBQUFWSWdBQUFBQVZCQUFBRlNJQUFBQUFGUW9BQUJVaUFBQUFBQlVLQUFBVklnQUFBQUFWRUFBQUZSWUFBQUFBRlJ3QUFCVWlBQUFBQUJVMEFBQVZMZ0FBRlVBVk5BQUFGUzRBQUJWQUZTZ0FBQlV1QUFBVlFCVTBBQUFWT2dBQUZVQVYwQUFBRlh3VmdnQUFGVVlBQUJWTUZZSUFBQlc0QUFBVmZCV0NBQUFWVWdBQUZYd1ZnZ0FBRlZnQUFCVjhGWUlBQUJWWUFBQVZmQldDQUFBVnVBQUFGWHdWZ2dBQUZWNEFBQlY4RllJQUFCVmVBQUFWZkJXQ0FBQVYwQUFBRldRVmdnQUFGYmdBQUJWOEZZSUFBQlZxQUFBVmZCV0NBQUFWY0FBQUZYd1ZnZ0FBRlhZQUFCVjhGWUlBQUJYUUFBQVZmQldDQUFBVmRnQUFGWHdWZ2dBQUZZZ0FBQldVQUFBQUFCV09BQUFWbEFBQUFBQVZvQUFBRlpvQUFBQUFGYUFBQUJXbUFBQUFBQlhRRmRZVjNBQUFGZUlWckJYV0ZiSUFBQlhpRmJnVjFoWGNBQUFWNGhYUUZkWVYzQUFBRmVJVjBCWFdGYjRBQUJYaUZkQVYxaFhjQUFBVjRoWEVGZFlWeWdBQUZlSVYwQlhXRmR3QUFCWGlGZWdBQUJYdUFBQUFBQndlQUFBY0pBQUFBQUFWOUFBQUZmb0FBQUFBRmdBQUFCd2tBQUFBQUJZR0FBQWNKQUFBQUFBY0hnQUFGZ3dBQUFBQUZoSUFBQllZQUFBQUFCWWVBQUFjSkFBQUFBQVlOQmc2R0VBWVJoaE1GbjRZT2hoQUdFWVlUQllrR0RvWVFCaEdHRXdXS2hnNkdFQVlSaGhNRmlvWU9oaEFHRVlZVEJZd0dEb1lRQmhHR0V3V0toZzZGazRZUmhoTUZqQVlPaGhBR0VZWVRCWTJHRG9ZUUJoR0dFd1dQQmc2R0VBWVJoaE1GbjRZT2hoQUdFWVlUQlpDR0RvWVFCaEdHRXdXU0JnNkdFQVlSaGhNRmtnWU9oaEFHRVlZVEJnMEdEb1dUaGhHR0V3V2ZoZzZHRUFZUmhoTUZsUVlPaGhBR0VZWVRCYW9GbklXcmhoR0dFd1dZQlp5RnE0WVJoaE1GcWdXY2haYUdFWVlUQlpnRm5JV3JoaEdHRXdXWmhaeUZxNFlSaGhNRm13V2NoYXVHRVlZVEJaK0dEb1lRQmhHR0V3V2VCZzZHRUFZUmhoTUZvUVlPaGhBR0VZWVRCZzBHRG9ZUUJoR0dFd1lOQmc2R0VBWVJoaE1GbjRZT2hoQUdFWVlUQmFFR0RvWVFCaEdHRXdXaWhnNkdFQVlSaGhNRnBBQUFCYVdBQUFBQUJhY0FBQVdvZ0FBQUFBWHdnQUFGOGdBQUFBQUZxZ0FBQmF1QUFBQUFCYTZBQUFXMGdBQUFBQVd4Z0FBRnRJQUFBQUFGclFBQUJiU0FBQUFBQmE2QUFBV3dBQUFBQUFXeGdBQUZ0SUFBQUFBRnN3QUFCYlNBQUFBQUJoU0FBQVlXQUFBQUFBVzJBQUFHRmdBQUFBQUZ1UUFBQmhZQUFBQUFCaFNBQUFXM2dBQUFBQVc1QUFBR0ZnQUFBQUFHRklBQUJicUFBQUFBQmhTQUFBVzhBQUFBQUFXOWdBQUZ2d0FBQUFBRndJQUFCY0lBQUFBQUJjbUFBQVhGQUFBRnpJWEpnQUFGeFFBQUJjeUZ3NEFBQmNVQUFBWE1oY21BQUFYR2dBQUZ6SVhKZ0FBRnlBQUFCY3lGeVlBQUJjc0FBQVhNaGQ2RjR3WGtodEFBQUFYYmhlTUY1SWJRQUFBRnpnWGpCZVNHMEFBQUJjK0Y0d1hraHRBQUFBWFBoZU1GNUliUUFBQUYyNFhqQmVTRzBBQUFCZEVGNHdYa2h0QUFBQVhVQmVNRjVJYlFBQUFGMG9YakJlU0cwQUFBQmRRRjR3WGtodEFBQUFYVmhlTUY1SWJRQUFBRjNvWGpCZGNHMEFBQUJkdUY0d1hraHRBQUFBWFloZU1GNUliUUFBQUYzb1hhQmVTRzBBQUFCZHVGMmdYa2h0QUFBQVhlaGRvRjF3YlFBQUFGMjRYYUJlU0cwQUFBQmRpRjJnWGtodEFBQUFYaGhkb0Y1SWJRQUFBRjI0WGpCZVNHMEFBQUJkMEY0d1hraHRBQUFBWGhoZU1GNUliUUFBQUYzb1hqQmVTRzBBQUFCZUFGNHdYa2h0QUFBQVhoaGVNRjVJYlFBQUFGNWdBQUJlZUFBQUFBQmVrQUFBWHZBQUFBQUFYdGdBQUY3d0FBQUFBRjZvQUFCZThBQUFBQUJld0FBQVh2QUFBQUFBWHRnQUFGN3dBQUFBQUY4SUFBQmZJQUFBQUFCZmFBQUFYK0FBQUFBQVg1Z0FBRi9nQUFBQUFGODRBQUJmNEFBQUFBQmZVQUFBWCtBQUFBQUFYMmdBQUYrQUFBQUFBRitZQUFCZjRBQUFBQUJmc0FBQVgrQUFBQUFBWDhnQUFGL2dBQUFBQUYvSUFBQmY0QUFBQUFCaGVBQUFZWkFBQUdHb1gvZ0FBR0dRQUFCaHFHQVFBQUJoa0FBQVlhaGdLQUFBWVpBQUFHR29ZRUFBQUdDNEFBQUFBR0NJQUFCZ3VBQUFBQUJnV0FBQVlMZ0FBQUFBWUhBQUFHQzRBQUFBQUdDSUFBQmd1QUFBQUFCZ29BQUFZTGdBQUFBQVlLQUFBR0M0QUFBQUFIRFlBQUJ3OEFBQUFBQndlQUFBY0pBQUFBQUFZTkJnNkdFQVlSaGhNR0ZJQUFCaFlBQUFBQUJoZUFBQVlaQUFBR0dvWW1nQUFHTElZdUFBQUdJNEFBQml5R0xnQUFCaU9BQUFZc2hpNEFBQVljQUFBR0xJWXVBQUFHSTRBQUJpQ0dMZ0FBQmh3QUFBWXNoaTRBQUFZZGdBQUdMSVl1QUFBR0h3QUFCaXlHTGdBQUJpT0FBQVlzaGk0QUFBWWpnQUFHTElZdUFBQUdIQUFBQml5R0xnQUFCaU9BQUFZZ2hpNEFBQVljQUFBR0xJWXVBQUFHSFlBQUJpeUdMZ0FBQmg4QUFBWXNoaTRBQUFZamdBQUdMSVl1QUFBR0pRQUFCaXlHTGdBQUJpYUFBQVlnaGk0QUFBWWpnQUFHTElZdUFBQUdJZ0FBQml5R0xnQUFCaU9BQUFZc2hpNEFBQVlsQUFBR0xJWXVBQUFHSm9BQUJpeUdMZ0FBQmlnQUFBWXNoaTRBQUFZcGdBQUdMSVl1QUFBR0t3QUFCaXlHTGdBQUJpK0FBQVl5Z0FBQUFBWXhBQUFHTW9BQUFBQUdOQUFBQmpXQUFBQUFCdktBQUFiMEFBQUFBQVk0Z0FBRzlBQUFBQUFHT0lBQUJ2UUFBQUFBQnZLQUFBWTNBQUFBQUFZNGdBQUc5QUFBQUFBR09nQUFCdlFBQUFBQUJqdUdRQWFnQUFBR1BRWTdoa0FHb0FBQUJqMEdPNFpBQnFBQUFBWTlCajZHUUFaQmdBQUdRd1pKQUFBR1U0WlZBQUFHVFlBQUJsT0dWUUFBQmsyQUFBWlRobFVBQUFaTmdBQUdVNFpWQUFBR1RZQUFCbE9HVlFBQUJrU0FBQVpUaGxVQUFBWk5nQUFHU29aVkFBQUdSSUFBQmxPR1ZRQUFCa1lBQUFaVGhsVUFBQVpIZ0FBR1U0WlZBQUFHVFlBQUJsT0dWUUFBQms4QUFBWlRobFVBQUFaUEFBQUdVNFpWQUFBR1NRQUFCa3FHVlFBQUJrMkFBQVpUaGxVQUFBWk1BQUFHVTRaVkFBQUdUWUFBQmxPR1ZRQUFCazhBQUFaVGhsVUFBQVpRZ0FBR1U0WlZBQUFHVWdBQUJsT0dWUUFBQmxhQUFBWllBQUFBQUFaWmdBQUdYNEFBQUFBR1d3QUFCbCtBQUFBQUJsc0FBQVpmZ0FBQUFBWmJBQUFHWDRBQUFBQUdYSUFBQmwrQUFBQUFCbDRBQUFaZmdBQUFBQVppZ0FBRys0QUFCbVFHWW9BQUJ2dUFBQVprQm1FQUFBYjdnQUFHWkFaaWdBQUdrUUFBQm1RR2JRQUFCb0lHYTRBQUJtMEFBQWFDQm11QUFBWnVnQUFHZ2dacmdBQUdib0FBQm9JR2E0QUFCbTZBQUFhQ0JtdUFBQVp1Z0FBR2dnWnJnQUFHYm9BQUJvSUdhNEFBQm1pQUFBYUNCbXVBQUFadEFBQUdnZ1pyZ0FBR2JRQUFCbVdHYTRBQUJtNkFBQWFDQm11QUFBWm5BQUFHZ2dacmdBQUdib0FBQm9JR2E0QUFCbndBQUFaOWhtdUFBQVpvZ0FBR2dnWnJnQUFHYlFBQUJvSUdhNEFBQm1vQUFBYUNCbXVBQUFadEFBQUdjQUFBQUFBR2JRQUFCbkFBQUFBQUJtNkFBQVp3QUFBQUFBWnpBQUFHY1lBQUFBQUdjd0FBQm5TQUFBQUFCbllBQUFaM2dBQUFBQVovQm9DR2dnQUFCb09HZVFhQWhvSUFBQWFEaG44R2dJYUNBQUFHZzRaL0JvQ0dlb0FBQm9PR2Z3YUFob0lBQUFhRGhud0dnSVo5Z0FBR2c0Wi9Cb0NHZ2dBQUJvT0doUUFBQm9hQUFBQUFCdldBQUFiM0FBQUFBQWJyQUFBRzl3QUFBQUFHOVlBQUJ2Y0FBQUFBQnVzQUFBYjNBQUFBQUFiMWdBQUdpQUFBQUFBR2lZQUFCb3NBQUFBQUJ1K0FBQWIzQUFBQUFBYjRodm9HKzRiOUJ2Nkdsd2I2QnZ1Ry9RYitocGNHK2diN2h2MEcvb2FYQnZvRys0YjlCdjZHbHdiNkJ2dUcvUWIraG95RytnYjdodjBHL29hWEJ2b0drUWI5QnY2R2pJYjZCdnVHL1FiK2hvNEcrZ2I3aHYwRy9vYVBodm9HKzRiOUJ2Nkdsd2I2QnZ1Ry9RYitocFdHK2diN2h2MEcvb2FQaHZvRys0YjlCdjZHajRiNkJ2dUcvUWIraHZpRytnYVJCdjBHL29hWEJ2b0crNGI5QnY2R2tvYjZCdnVHL1FiK2h2aUdsQWI3aHYwRy9vYVhCcFFHKzRiOUJ2NkcrSWFVQnBFRy9RYitocGNHbEFiN2h2MEcvb2FTaHBRRys0YjlCdjZHbUlhVUJ2dUcvUWIraHBjRytnYjdodjBHL29hWEJ2b0crNGI5QnY2R2xZYjZCdnVHL1FiK2h2aUcrZ2I3aHYwRy9vYjRodm9HKzRiOUJ2Nkdsd2I2QnZ1Ry9RYitocGlHK2diN2h2MEcvb2FhQnZvRys0YjlCdjZHbTRBQUJwMEFBQUFBQnA2QUFBYWdBQUFBQUFiSWdBQUd6b0FBQUFBR25vQUFCcUFBQUFBQUJxR0FBQWFtQUFBQUFBYWtnQUFHcGdBQUFBQUdwSUFBQnFZQUFBQUFCcUdBQUFhakFBQUFBQWFrZ0FBR3BnQUFBQUFHcElBQUJxWUFBQUFBQndBQUFBY0JnQUFBQUFhcEFBQUhBWUFBQUFBR3FRQUFCd0dBQUFBQUJ3QUFBQWFuZ0FBQUFBYXBBQUFIQVlBQUFBQUhBQUFBQnFxQUFBQUFCd0FBQUFhc0FBQUFBQWF0Z0FBR3J3QUFBQUFHc0lBQUJySUFBQUFBQnJnR3VZYXpnQUFHdklhNEJybUdzNEFBQnJ5R3VBYTVock9BQUFhOGhyZ0d1WWExQUFBR3ZJYTRCcm1HdG9BQUJyeUd1QWE1aHJzQUFBYThoc2lHelFiT2h0QUFBQWJGaHMwR3pvYlFBQUFHeFliTkJzNkcwQUFBQnNXR3pRYk9odEFBQUFiRmhzMEd6b2JRQUFBR3hZYk5CczZHMEFBQUJzY0d6UWJPaHRBQUFBYStCczBHem9iUUFBQUd2Z2JOQnM2RzBBQUFCcjRHelFiT2h0QUFBQWEvaHMwR3pvYlFBQUFHeUliTkJzRUcwQUFBQnNXR3pRYk9odEFBQUFiQ2hzMEd6b2JRQUFBR3lJYkVCczZHMEFBQUJzV0d4QWJPaHRBQUFBYkloc1FHd1FiUUFBQUd4WWJFQnM2RzBBQUFCc0tHeEFiT2h0QUFBQWJMaHNRR3pvYlFBQUFHeFliTkJzNkcwQUFBQnNXR3pRYk9odEFBQUFiSEJzMEd6b2JRQUFBR3lJYk5CczZHMEFBQUJzb0d6UWJPaHRBQUFBYkxoczBHem9iUUFBQUhBQUFBQnRHQUFBQUFCdE1BQUFiWGdBQUFBQWJXQUFBRzE0QUFBQUFHMWdBQUJ0ZUFBQUFBQnRTQUFBYlhnQUFBQUFiV0FBQUcxNEFBQUFBRzJRQUFCdHFBQUFBQUJ0d0FBQWJsQUFBQUFBYmZBQUFHNVFBQUFBQUczd0FBQnVVQUFBQUFCdUlBQUFibEFBQUFBQWJjQUFBRzNZQUFBQUFHM3dBQUJ1VUFBQUFBQnVDQUFBYmxBQUFBQUFiaUFBQUc1UUFBQUFBRzQ0QUFCdVVBQUFBQUJ3TUFBQWNFZ0FBSEJnYm1nQUFIQklBQUJ3WUc1b0FBQndTQUFBY0dCdWdBQUFjRWdBQUhCZ2IxZ0FBRzhRQUFBQUFHNndBQUJ2RUFBQUFBQnVzQUFBYnhBQUFBQUFidUFBQUc4UUFBQUFBRzlZQUFCdW1BQUFBQUJ1c0FBQWJ4QUFBQUFBYnNnQUFHOFFBQUFBQUc3Z0FBQnZFQUFBQUFCdStBQUFieEFBQUFBQWJ5Z0FBRzlBQUFBQUFHOVlBQUJ2Y0FBQUFBQnZpRytnYjdodjBHL29jQUFBQUhBWUFBQUFBSEF3QUFCd1NBQUFjR0J3MkFBQWNQQUFBQUFBY0tnQUFIREFBQUFBQUhEWUFBQnc4QUFBQUFCeENBQUFjU0FBQUFBQWNUZ0FBSEZRQUFBQUFIQjRBQUJ3a0FBQUFBQncyQUFBY1BBQUFBQUFjS2dBQUhEQUFBQUFBSERZQUFCdzhBQUFBQUJ4Q0FBQWNTQUFBQUFBY1RnQUFIRlFBQUFBQUFBRUFCZ0xpQXVNQzVBTGxBdWNDNkFBR0FBQUtiZ0FBQ25RQUFBcDZBQUFLZ0FBQUNvWUFBQXFNQUFZS2VBcCtDb1FLaWdxUUNwWUFBZ0FEQXNvQzRBQUFBdm9ERGdBWEF4OERMQUFzQURvQUFBcCtBQUFLZUFBQUNuNEFBQXFpQUFBS2hBQUFDb29BQUFxdUFBQUtrQUFBQ3BZQUFBcWNBQUFMRkFBQUNxSUFBQXNPQUFBS3FBQUFDcWdBQUFzYUFBQUxHZ0FBQ3E0QUFBcTBBQUFLdWdBQUN3NEFBQXJBQUFBS3hnQUFDc3dBQUFzZ0FBQUt6QUFBQ3l3QUFBclNBQUFLMkFBQUN2d0FBQXJlQUFBSzVBQUFDdW9BQUFzc0FBQUxMQUFBQ3lBQUFBcndBQUFLOEFBQUN5WUFBQXIyQUFBSy9BQUFDd0lBQUFzSUFBQUxJQUFBQ3c0QUFBc09BQUFMRGdBQUN4b0FBQXNVQUFBTEZBQUFDeFFBQUFzYUFBQUxJQUFBQ3lBQUFBc21BQUFMTEFBQUN6SUFBQXM0QURvS1ZBcGFDbUFLWmdwc0NuSUtlQXArQ29RS2lncVFDcFlLeGdxY0NxSUtxQXF1Q3JRS3VnckFDc1lLekFyU0N0Z0szZ3JrQ3VvSzhBcjJDdndMQWdzSUN3NExGQXNVQ3hvTElBc21DeXdMTWdzNEN6NExSQXRLQzFBTFVBdFdDMmdMWEF0Y0MySUxhQXR1QzI0TGRBdDZDNEFMaGdBQkFBSUM0UU1QQUFJQUFBc09BQUFMRkFBQ0N4QUxGZ0FCQUcwQUFBQUJBSjhCY1FBQkFXTUJjZ0FCQUc4QlpRQUJBUUVCQndBQkFLZ0Jjd0FCQVZBQlZ3QUJBVlVEUVFBQkFWVUQrUUFCQVZVRUF3QUJBVlVEM0FBQkFWVURVZ0FCQVZVRUNnQUJBVlVFRkFBQkFWVUQ3UUFCQVZVRFhBQUJBVlgvVEFBQkFWVURaZ0FCQVZVRGNBQUJBVlVEVndBQkFWVUNyZ0FCQVZZRGhRQUJBVllFUFFBQkFWVURTUUFCQVZVQUFBQUJBb0VBQUFBQkFja0NyZ0FCQWNrRFpnQUJBZWNBQUFBQkFWMENyZ0FCQVYwQUFBQUJBWDBEWmdBQkFYMy9Ud0FCQVgwRFVnQUJBWDBEWEFBQkJCRURVZ0FCQkJFQUFBQUJCQkVCVndBQkFXb0RVZ0FCQVdvQ3JnQUJBTDRCWEFBQkE5Y0N4Z0FCQTljQUFBQUJBOWNCQndBQkFXUURRUUFCQVdRRFVnQUJBV1FFQ2dBQkFXUUVGQUFCQVdRRDdRQUJBV1FEWEFBQkFXZi9UQUFCQVdRRFpnQUJBV1FEY0FBQkFXUURWd0FCQVdRQ3JnQUJBV1FEU1FBQkFXY0FBQUFCQWpRQUFBQUJBVWdDcmdBQkFaQURRUUFCQVpBRFVnQUJBWkFDcmdBQkFaSCszZ0FCQVpBRFhBQUJBWkVBQUFBQkFYRURVZ0FCQVhBQUFBQUJBWEVDcmdBQkFYRC9UQUFCQVhFQ1BRQUJBcmNDcmdBQkFpTUFBQUFCQUlZRFFRQUJBSVlEVWdBQkFJWURYQUFCQUliL1RBQUJBSVlEY0FBQkFJWURWd0FCQUlZRFNRQUJBSVlBQUFBQkFKRUFBQUFCQWF3Q3JnQUJBYXdEVWdBQkFSZ0FBQUFCQVdBQUFBQUJBV0FDcmdBQkFXRCszZ0FCQTdBQ3JnQUJBeHdBQUFBQkFJWURaZ0FCQVREKzNnQUJBb2tDRGdBQkFvbi9MZ0FCQUlZQ3JnQUJBV0VDRGdBQkFUQUFBQUFCQUtnQlhnQUJBYWdDcmdBQkFhZ0FBQUFCQklzQ3JnQUJBL2dBQUFBQkFYSURaZ0FCQVhJRFVnQUJBWEgrM2dBQkExQUNEZ0FCQTFEL0xnQUJBWElEU1FBQkFZa0RRUUFCQVlrRFVnQUJBWWtFQ2dBQkFZa0VGQUFCQVlrRDdRQUJBWWtEWEFBQkFZa0Q5d0FCQVpEL1RBQUJBWWtEY0FBQkFZci9UQUFCQVlvRFpnQUJBWW9EY0FBQkFZb0RTUUFCQXhNRFBRQUJBWWtEVndBQkFZa0RaZ0FCQVlrRFNRQUJBWWtENUFBQkFtZ0NyZ0FCQW1nQUFBQUJBVTBDcmdBQkFVMEFBQUFCQVlvQ3JnQUJBWW9BQUFBQkFXd0RVZ0FCQVd3Q3JnQUJBVy8rM2dBQkFXd0RaZ0FCQVd3RFZ3QUJBVzhBQUFBQkFWTURaZ0FCQVZmL1R3QUJBVk1EVWdBQkFWZiszZ0FCQVZmL1RBQUJBWUFDcmdBQkFZQUFBQUFCQVhzQ3JnQUJBWHNBQUFBQkFTOERVZ0FCQVM4QUFBQUJBUy8vVHdBQkFTLyszZ0FCQVM4Q3JnQUJBUy8vVEFBQkFTOEJTUUFCQVc0RFFRQUJBVzREVWdBQkFXNERYQUFCQVc0RUFBQUJBVzRFRkFBQkFXNEQ5d0FCQVczL1RBQUJBVzREY0FBQkF3MERjd0FCQVc0RFpnQUJBVzREVndBQkFXNENyZ0FCQVc0RGhRQUJBVzREU1FBQkFrTUM1QUFCQVcwQUFBQUJBVVFDcmdBQkFVUUFBQUFCQWM4Q3JnQUJBYzhEVWdBQkFjOERYQUFCQWM4RFpnQUJBYzhBQUFBQkFWUUNyZ0FCQVZRQUFBQUJBVW9EVWdBQkFVb0RYQUFCQVVvQ3JnQUJBVWovVEFBQkFVb0RaZ0FCQVVvRGNBQUJBVW9EU1FBQkFVZ0FBQUFCQVQwRFpnQUJBVDBEVWdBQkFUMERYQUFCQVU0Q3JnQUJBVTREVWdBQkFVNERYQUFCQVU0RFpnQUJBVTREU1FBQkFVNEFBQUFCQVlrQ3JnQUJBa2tDcmdBQkFaQUFBQUFCQWdzQUFBQUJBWWtCVndBQkFWTUNyZ0FCQVZjQUFBQUJBVDBDcmdBQkFUMEFBQUFCQVQwQlZ3QUJBUXNEZmdBQkFRc0RpQUFCQVFzRGFnQUJBUWIvVEFBQkFRc0MwQUFCQVFzQ3hnQUJBUXNDdkFBQkFRc0NEZ0FCQVFzQzZBQUJBUXNEb0FBQkFRc0NzZ0FCQVFZQUFBQUJBZVFBQUFBQkFjUUNEZ0FCQWNRQ3hnQUJBY1FBQUFBQkFTMENyZ0FCQVMwQUFBQUJBUVgvVHdBQkFSQUN4Z0FCQVJBQ3ZBQUJBUndDcmdBQkFaZ0NiQUFCQXpBQ3hnQUJBaG9DRGdBQkF6QUFBQUFCQXpBQkJ3QUJBUmdEZmdBQkFSZ0RpQUFCQVJnRGFnQUJBUmdDRGdBQkFTTC9UQUFCQVJnQzBBQUJBUmdDeGdBQkFSZ0N2QUFCQVJJQ0RnQUJBUmdDc2dBQkFTSUFBQUFCQVlNQUFBQUJBSWdDcmdBQkFJZ0FBQUFCQVJFQ0RnQUJBUkVDeGdBQkFSRURLd0FCQVJFQ3ZBQUJBUmYvTGdBQkFIQURVZ0FCQUhBQ3JnQUJBSjhDYkFBQkFISC9UQUFCQUhFQzBBQUJBSEVDdkFBQkFIRUNzZ0FCQUlBQUFBQUJBSEVDRGdBQkFIRUN4Z0FCQUhIL0xnQUJBUW9BQUFBQkFRb0NyZ0FCQVFyKzNnQUJBUDRDRGdBQkFQNEFBQUFCQUhFRFpnQUJBSEgrM2dBQkFWSUNEZ0FCQVZML0xnQUJBSEVDcmdBQkFNVUNEZ0FCQUhFQUFBQUJBSEVCYkFBQkFiSUNEZ0FCQWJJQUFBQUJBUnYrM2dBQkFxTUNEZ0FCQXFQL0xnQUJBUjBEZmdBQkFSMERpQUFCQVIwRGFnQUJBUjMvVEFBQkFSMEMwQUFCQW5JQ3JnQUJBUjBDdkFBQkFSMEN4Z0FCQVIwQ3NnQUJBUjBEWUFBQkFkVUNEZ0FCQWRVQUFBQUJBUndDRGdBQkFSd0FBQUFCQUxzQ0RnQUJBSEwrM2dBQkFMc0N4Z0FCQUhJQUFBQUJBUUQvVHdBQkFQMEN4Z0FCQVFEKzNnQUJBUUQvVEFBQkFUZ0NEZ0FCQVRnQUFBQUJBSWNDcmdBQkFJY0FBQUFCQUxFQUFBQUJBTEgvVHdBQkFMSCszZ0FCQUpVQ0RnQUJBTkFDRGdBQkFMSC9UQUFCQUpVQkJ3QUJBUmtEZEFBQkFSa0RhZ0FCQVJuL1RBQUJBUmtDMEFBQkFuTUMwd0FCQVJrQ3hnQUJBUmtDdkFBQkFSa0NEZ0FCQVJrQzZBQUJBUmtDc2dBQkFhb0NNd0FCQVJrQUFBQUJBZWtBQUFBQkFQMEFBQUFCQVdvQ0RnQUJBV29DdkFBQkFXb0N4Z0FCQVdvQUFBQUJBUVFDRGdBQkFQOEFBQUFCQVFZQ0RnQUJBWFgvVEFBQkFRWUN4Z0FCQVFZQzBBQUJBUVlDdkFBQkFRWUNzZ0FCQVhVQUFBQUJBUGtDeGdBQkFQa0N2QUFCQVJ2K2VnQUJBUnNDeGdBQkFSc0MwQUFCQVJzQ3ZBQUJBUnNDc2dBQkFSdi9MZ0FCQVJBQ0RnQUJBUVVBQUFBQkFSc0NEZ0FCQVJzQUFBQUJBUjBDRGdBQkFhZ0NEZ0FCQVIwQUFBQUJBWXNBQUFBQkFSMEJDQUFCQVAwQ0RnQUJBUUFBQUFBQkFQa0NEZ0FCQVBrQUFBQUJBUGtCQndBQkFYSUNyZ0FCQVhFQUFBQUJBU0FDWGdBQkFSVUFVQUFCQVgwQ3JnQUJBWDBBQUFBQkFQMENYZ0FCQVFBQVVBQUJBWXNDcmdBQkFZd0FBQUFCQURBQUFBQUJBSXdBQUFBQkFEb0FBQUFCQUYwQUFBQUJBSklBQUFBQkFKY0FBQUFCQUREL1RBQUJBSXovVFFBQkFEciszZ0FCQUYzL1R3QUJBSkwvTkFBQkFKZi9hUUFCQUkwQ0RnQUJBSXdDRGdBQkFKa0NEZ0FCQURBQ0RnQUJBSVVDRGdBQkFEUUNEZ0FCQUhjQ0RnQUJBSlFDRGdBQkFGNENEZ0FCQUpjQ0RnQUJBRWtDRGdBQkFMa0NEZ0FCQUM4Q0RnQUJBRGtDRGdBQkFJd0NyZ0FCQUpzQ3JnQUJBQzhDcmdBQkFJNENyZ0FCQUNvQ3JnQUJBSG9DcmdBQkFHTUNyZ0FCQUtFQ3JnQUJBSmtDcmdBQkFFc0NyZ0FCQU1BQ3JnQUJBSklDRGdBQkFKTUNEZ0FCQUo4Q0RnQUJBSkVDcmdBQkFKOENyZ0FCQUpjQ3JnQUJBSmdDcmdBQkFLQUNyZ0FCQUl3Q3ZBQUJBSTBEZEFBQkFJd0RkQUFCQUpRRGRBQUJBSmtEYWdBQkFEQUN2QUFCQUpjRGFnQUJBSVVDeGdBQkFEUUN4Z0FCQUhjQ3hnQUJBSk1DeGdBQkFKUUN4Z0FCQUY0QzZBQUJBRjREb0FBQkFKOENzZ0FCQUo4RFlBQUJBSmNDdkFBQkFFa0MwQUFCQUxrQ3hnQUJBSklDeGdBQkFDOERLd0FCQURrQzhnQUJBSXdEWEFBQkFKRUVGQUFCQUl3RUZBQUJBSmNFQUFBQkFKc0Q5d0FCQUM4RFhBQUJBSmtEOXdBQkFJNERaZ0FCQUNvRFpnQUJBSG9EWmdBQkFKY0RVZ0FCQUpFRFFRQUJBR01EaFFBQkFHTUVQUUFCQUo4RFNRQUJBS0VENUFBQkFKa0RTUUFCQUVzRGNBQUJBTUFEWmdBQkFKRURWd0FCQUpJRGZnQUJBSklEaUFBQkFKTURmZ0FCQUpNRGlBQUJBSjhEYWdBQkFKRUQrUUFCQUo4RDNBQUJBSmNFQ2dBQkFKZ0VDZ0FCQUtBRDdRQUJBQUFDRGdBQkFBQUNyZ0FCQU1vQ3JnQUJBTW9EUFFBQkFBRUFEZ0FjQUtJQUFBQUFBQUpFUmt4VUFPQnNZWFJ1QU9RQUZtRmhiSFFCRm1OaGMyVUJIbU5qYlhBQkpHTmpiWEFCTUdSdWIyMEJQbVp5WVdNQlJHeHBaMkVCVG14dWRXMEJWR3h2WTJ3QldteHZZMndCWUd4dlkyd0JabXh2WTJ3QmJHeHZZMndCY201MWJYSUJlRzl1ZFcwQmZtOXlaRzRCaEhCdWRXMEJqSE5wYm1ZQmtuTjFZbk1CbUhOMWNITUJublJ1ZFcwQnBIcGxjbThCcWdBbEFTb0JNZ0U2QVVnQlNBRlFBVmdCV0FGZ0FXZ0JjQUY0QVlBQmlBR1FBWmdCb0FHb0FhZ0JzQUhJQWJnQndBSElBZEFCMmdIYUFlSUI3QUgwQWZ3Q0JBSU1BaFFDSEFJa0Fpd0NyZ0FBQWVRQUNrRmFSU0FDcWtOQlZDQUNDa05TVkNBQ3FrZFZRU0FDTWt0QldpQUNxazFQVENBQ1dsQk1TeUFDZ2xKUFRTQUNxbFJCVkNBQ3FsUlNTeUFDMEFBQUFBSUFBQUFCQUFBQUFRQWlBQUFBQkFBQ0FBVUFDQUFKQUFBQUJRQUNBQVVBQ0FBSkFBa0FBQUFCQUJVQUFBQURBQllBRndBWUFBQUFBUUFqQUFBQUFRQWVBQUFBQVFBT0FBQUFBUUFNQUFBQUFRQUxBQUFBQVFBTkFBQUFBUUFLQUFBQUFRQVVBQUFBQVFBaEFBQUFBZ0FiQUIwQUFBQUJBQjhBQUFBQkFCSUFBQUFCQUJFQUFBQUJBQk1BQUFBQkFDQUFBQUFCQUNRQUFRQUFBQUVDSGdBREFBQUFBUUxlQUFZQUFBQUVBekFEUWdOV0EyZ0FBUUFBQUFFRGJBQUdBQUFBQVFQQ0FBRUFBQUFCQThvQUJBQUFBQUVFSEFBRUFBQUFBUVFxQUFFQUFBQUJCREFBQVFBQUFBRUVMZ0FCQUFBQUFRUTBBQUVBQUFBQkJGSUFCZ0FBQUFFRVpnQUJBQUFBQVFSbUFBRUFBQUFCQkdRQUFRQUFBQUVFWWdBQkFBQUFBUVIyQUFFQUFBQUJCSFFBQVFBQUFBRUVjZ0FCQUFBQUFRUndBQVlBQUFBQ0JHNEVnQUFCQUFBQUFRU0lBQVlBQUFBQ0JJWUVtQUFCQUFBQUFRU2dBQVFBQUFBQkJLWUFBUUFBQUFFRXBnQUJBQUFBQVFTa0FBRUFBQUFCQk1vQUFRQUFBQUVFOEFBQkFBQUFBUVVXQUFRQUNBQUJCYlFBQVFBQUFBRUZ0QUFBLy84QUVBQUFBQUVBQXdBRUFBVUFCZ0FIQUEwQURnQVBBQkFBRVFBU0FCTUFGQUFWQUFELy93QVJBQUFBQVFBQ0FBUUFCUUFHQUFjQUNBQU5BQTRBRHdBUUFCRUFFZ0FUQUJRQUZRQUEvLzhBRVFBQUFBRUFBZ0FFQUFVQUJnQUhBQWtBRFFBT0FBOEFFQUFSQUJJQUV3QVVBQlVBQVAvL0FCRUFBQUFCQUFJQUJBQUZBQVlBQndBS0FBMEFEZ0FQQUJBQUVRQVNBQk1BRkFBVkFBRC8vd0FSQUFBQUFRQUNBQVFBQlFBR0FBY0FDd0FOQUE0QUR3QVFBQkVBRWdBVEFCUUFGUUFBLy84QUVBQUFBQUVBQWdBRUFBVUFCZ0FIQUEwQURnQVBBQkFBRVFBU0FCTUFGQUFWQUFELy93QVJBQUFBQVFBQ0FBUUFCUUFHQUFjQURBQU5BQTRBRHdBUUFCRUFFZ0FUQUJRQUZRQUNCSjRBWVFIS0FOd0EzUUhMQU40QTN3Q2RBS1VBMVFEV0FOY0EyQURaQU5vQTJ3RGdBY29Cd0FFeEFkRUJ3UUhMQWNJQnd3Ri9BWWNCdHdHNEFia0J1Z0c3QWJ3QnZRRytBYjhCeEFIbkFoTUNGQUlWQWhZQ0Z3SVlBaGtDR2dJYkFod0NSUUpHQWpFQ1J3SllBbGtDV2dKYkFsd0MrZ0w3QXZ3Qy9RTCtBdjhEQUFNQkF3SURBd01FQXdVREJnTUhBd2dEQ1FNS0F3c0REQU1OQXc0RER3TVFBeEVERWdNVEF4UURGZ01YQXhnREdRTWFBeHNESEFNZEF5Y0RLQU1wQXlvREt3TXNBQUVJWGdBcUJKd0VyQVM2Qk1nRTFnVGtCUElGQUFVT0JSd0ZLZ1UrQlVZRlRnVldCVjRGWmdWdUJYWUZmZ1UwQlQ0RlJnVk9CVllGWGdWbUJXNEZkZ1YrQllZRmpnV1VCWm9Gb0FXbUJhd0ZzZ1c0QmI0RnhBWEtBQU1BQUFBQkJYWUFBUVdPQUFFQUFBQURBQU1BQUFBQkJXUUFBZ1ZzQlh3QUFRQUFBQVFBQXdBQkJnd0FBUVlNQUFBQUFRQUFBQU1BQXdBQkJYZ0FBUVg2QUFBQUFRQUFBQVFBQWdWMkFDd0JLZ0U3QXZvQyt3TDhBdjBDL2dML0F3QURBUU1DQXdNREJBTUZBd1lEQndNSUF3a0RDZ01MQXd3RERRTU9BdzhERUFNUkF4SURFd01VQXhVREZnTVhBeGdER1FNYUF4c0RIQU1kQXljREtBTXBBeW9ES3dNc0FBSUZpZ1YwQlV3RmRBQUNBQUFGaEFBQ0JYb0FLZ0w2QXZzQy9BTDlBdjRDL3dNQUF3RURBZ01EQXdRREJRTUdBd2NEQ0FNSkF3b0RDd01NQXcwRERnTVBBeEFERVFNU0F4TURGQU1WQXhZREZ3TVlBeGtER2dNYkF4d0RIUU1uQXlnREtRTXFBeXNETEFBQkNDZ0FDQVZJQlZJRlZnVmFCVjRGYUFWc0JYQUFBUWdtQUFRRlhnVm9CWElGZWdBQkJYUUFDQUFDQlhRQUJBQ2RBS1VCZndHSEFBSUZjZ0FRQU5VQTFnRFhBTmdBMlFEYUFOc0J0d0c0QWJrQnVnRzdBYndCdlFHK0FiOEFBZ1ZvQUFzQTNBRGRBTjRBM3dEZ0FjQUJ3UUhDQWNNQnhBTWVBQUVGYkFBQkJXWUFBUVZrQUFvQUFRVmVBQWtBQWdWZUFBc0IwUUlKQWdvQ0N3SU1BZzBDRGdJUEFoQUNFUUlTQUFFRmVnQlZBQUVGZEFCQkFBRUZSdi91QUFFRmFBQkxBQU1BQVFWQUFBRUZVQUFBQUFFQUFBQVpBQU1BQVFVMEFBRUZQZ0FBQUFFQUFBQWFBQUVGTFAvMkFBTUFBUVU0QUFFRk1BQUFBQUVBQUFBY0FBTUFBUVVtQUFFRk1BQUFBQUVBQUFBY0FBSUZKZ0FFQWNvQnl3SEtBY3NBQVFjcUFBRUZKQUFCQlNELzZnQUNCU1FBRkFIU0FkTUIxQUhWQWRZQjF3SFlBZGtCMmdIYkFlZ0I2UUhxQWVzQjdBSHRBZTRCN3dId0FmRUFBZ1VHQUJRQjh3SDBBZlVCOWdIM0FmZ0IrUUg2QWZzQi9BSCtBZjhDQUFJQkFnSUNBd0lFQWdVQ0JnSUhBQUlFNkFBVUFlZ0I2UUhxQWVzQjdBSHRBZTRCN3dId0FmRUIvZ0gvQWdBQ0FRSUNBZ01DQkFJRkFnWUNCd0FDQk1vQVVBSGRBZDRCM3dIZ0FlRUI0Z0hqQWVRQjVRSG1BZDBCM2dIZkFlQUI0UUhpQWVNQjVBSGxBZVlCM1FIZUFkOEI0QUhoQWVJQjR3SGtBZVVCNWdKRkFrWUNSd0pZQWxrQ1dnSmJBbHdDK2dMN0F2d0MvUUwrQXY4REFBTUJBd0lEQXdNRUF3VURCZ01IQXdnRENRTUtBd3NEREFNTkF3NEREd01RQXhFREVnTVRBeFFERlFNV0F4Y0RHQU1aQXhvREd3TWNBeDBESndNb0F5a0RLZ01yQXl3QUFRWHlBQUVFZkFBQkJJQUFDZ0FCQUdFQUFRQWZBR2dBYndCd0FKa0Ftd0NrQU1nQXlRREtBTXNBelFEUEFOQUEwZ0RoQVA4QktRRklBVWtCVVFGU0FYc0JmUUdHQWFvQnF3R3NBYTBCcmdHdkFiQUJzUUd5QWJRQjNRSWRBaDRDSHdJZ0FpRUNJZ0lqQWlRQ0pRSW1BanNDUFFKREFrZ0NUd0pRQWxFQ1VnSlZBc29DeXdMTUFzMEN6Z0xQQXRBQzBRTFNBdE1DMUFMVkF0WUMxd0xZQXRrQzJnTGJBdHdDM1FMZUF1RUM2d0xzQXUwQzdnTHZBdkVDOGdMekF2UUM5UUwyQXZjREhnTWZBeUFESWdNakF5UURKZ0FIQWR3QjZBSHpBZ2tDRXdJZEFpY0FCZ0hwQWZRQ0NnSVVBaDRDS0FBR0Flb0I5UUlMQWhVQ0h3SXBBQVlCNndIMkFnd0NGZ0lnQWlvQUJnSHNBZmNDRFFJWEFpRUNLd0FHQWUwQitBSU9BaGdDSWdJc0FBWUI3Z0g1QWc4Q0dRSWpBaTBBQmdIdkFmb0NFQUlhQWlRQ0xnQUdBZkFCK3dJUkFoc0NKUUl2QUFZQjhRSDhBaElDSEFJbUFqQUFCQUhTQWQwQjhnSCtBQVFCMGdIZEFmMEIvZ0FEQWRNQjNnSC9BQU1CMUFIZkFnQUFBd0hWQWVBQ0FRQURBZFlCNFFJQ0FBTUIxd0hpQWdNQUF3SFlBZU1DQkFBREFka0I1QUlGQUFNQjJnSGxBZ1lBQXdIYkFlWUNCd0FEQWQwQjZBSUlBQUlCM2dIcEFBSUIzd0hxQUFJQjRBSHJBQUlCNFFIc0FBSUI0Z0h0QUFJQjR3SHVBQUlCNUFIdkFBSUI1UUh3QUFJQjVnSHhBQUlDUndKSUFBSURGUU1lQUFFQUFnRXBBVG9BQWdBQ0F1RUM0d0FBQXVVQzdBQURBQUlBQlFMS0Fzb0FBQUxQQXM4QUFRTFJBdGNBQWdMWkF0a0FDUUxiQXVBQUNnQUNBQUlBQVFEZ0FBQUJ6UUhPQU9BQUFnQUlBU2tCS1FBQUFUb0JPZ0FCQXNvQzNnQUNBdUVDNFFBWEF1c0M5d0FZQXg0RElBQWxBeUlESkFBb0F5WURKZ0FyQUFJQUJnTEtBdDRBQVFMaEF1RUFBUUxyQXZjQUFRTWVBeUFBQVFNaUF5UUFBUU1tQXlZQUFRQUNBQUlDK2dNZEFBRURKd01zQUFFQUFnSUFBZzRBQWdBR0Fzb0MzZ0FBQXVFQzRRQVZBdXNDOXdBV0F4NERJQUFqQXlJREpBQW1BeVlESmdBcEFBUUI3Z0gwQWZvQ0FBQUJBZndBQVFIK0FBRUNBQUFFQWdJQ0NBSU9BaFFBQVFJUUFBRUNFZ0FCQWhRQUJBSVdBaHdDSWdJb0FBUUNKQUlxQWpBQ05nQURBaklDT0FJK0FBTUNQQUpDQWtnQUFRQUJBU2tBQVFBRUFKc0FwQUY5QVlZQUFnQUVBTWdBeXdBQUFNMEF6UUFFQU04QTBBQUZBYW9Cc2dBSEFBRUFDd0FmQUdnQWNBQ1pBTklBL3dGSkFWSUJld0cwQXZBQUFnSCtBZzRBQVFBQkFqNEFBZ0FDQVVnQlNBQUFBZElCMndBQkFBRUFBUUpEQUFFQUFRSXhBQUlBQVFJVEFod0FBQUFDQUFFQ0hRSW1BQUFBQVFBQ0FBRUE0UUFDQUFFQjBnSGJBQUFBQVFBQ0FHOEJVUUFCQUFRQUFRQnZBT0VCVVFBQkFid0FBZ0FCQWVnQjhRQUFBQUlBQWdIekFmd0FBQUgrQWdjQUNnQUNBQUlCMGdIYkFBQUI2QUh4QUFvQUFnQUNBZElCMndBQUFmTUIvQUFLQUFJQURnSG9BZkVBQUFIekFmd0FDZ0grQWdjQUZBSTdBanNBSGdJOUFqMEFId0pJQWtnQUlBSlBBbElBSVFKVkFsVUFKUUxLQXQ0QUpnTGhBdUVBT3dMckF2Y0FQQU1lQXlBQVNRTWlBeVFBVEFNbUF5WUFUd0FGQVM0Qk5nRStBVVFCU2dBQkFBVUIwZ0hkQWVnQjh3SCtBQUlBQmdIU0Fkc0FBQUhvQWZFQUNnSHpBZndBRkFIK0FnY0FIZ0krQWo0QUtBTHdBdkFBS1FBQUFBRUFBUUFCQUFFQUFBQUdBQUVBQVFBQkFBQUFBUUFBQUFjQ3pBQUNBdElDelFBQ0F0VUN5d0FDQXRFQ3pnQUNBdHNDMEFBQ0F0c0MyQUFDQXRJQzJnQUNBdHNDL0FBQ0F3SUMvUUFDQXdVQyt3QUNBd0VDL2dBQ0F3c0RBQUFDQXdzRENBQUNBd0lEQ2dBQ0F3c0RJd0FDQXRJREpBQUNBdEVESlFBQ0F0d0RKZ0FDQXRrREh3QUNBdElESUFBQ0F0RURJUUFDQXR3RElnQUNBdGtES2dBQ0F3SURLd0FDQXdFRExBQUNBd2tESndBQ0F3SURLQUFDQXdFREtRQUNBd2tBQVFGQUFBRUFBUUZBQUFFQUFBQVBBQUVBWFFBQkFBRUFYUUFCQUFBQUVBTERBQU1CVVFJMUFjWUFBd0VlQVNrQnh3QURBUjRCUUFIRkFBSUJIZ0hJQUFJQktRSEpBQUlCUUFBQkFBZ0N5Z0xQQXRjQzJRTDZBdjhEQndNSkFBRUFCQUxVQXRZREJBTUdBQUVBQVFCbUFBRUFBUUVlQUFBQUFRQUJBQWdBQXdBQUFCUUFBd0FBQUN3QUFuZGtkR2dCQVFBQWQyZG9kQUVBQUFGcGRHRnNBUm9BQWdBR0FCSUFJZ0FCQUFBQUFnRVhBR1FBQUFBREFBRUFBZ0VGQVpBQUFBSzhBQUFBQXdBQ0FBSUJHd0FBQUFBQUFRQUFBQUE9In0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9IkFBRUFBQUFRQVFBQUJBQUFSMFJGUmpLdE1iRUFBWVpNQUFBQXBFZFFUMU9DZEtOYUFBR0c4QUFBUEVKSFUxVkM4dWx0bHdBQnd6UUFBQTY4VDFNdk1vV3piSVVBQVZ2d0FBQUFZRk5VUVZSZTlrSnBBQUhSOEFBQUFGcGpiV0Z3NkhodFFRQUJYRkFBQUFlZVoyRnpjQUFBQUJBQUFZWkVBQUFBQ0dkc2VXWnFucHBSQUFBQkRBQUJSeHBvWldGa0czcWZsUUFCVHJnQUFBQTJhR2hsWVFlZUJPa0FBVnZNQUFBQUpHaHRkSGhvaTI5Z0FBRk84QUFBRE54c2IyTmhva3p6dHdBQlNFZ0FBQVp3YldGNGNBTkRBTFFBQVVnb0FBQUFJRzVoYldYRmR1QklBQUZqK0FBQUJsaHdiM04wT1pOSDB3QUJhbEFBQUJ2MGNISmxjR2dHaklVQUFXUHdBQUFBQndBRkFFb0FBQUkrQXJ3QUF3QUdBQWtBREFBUEFBQnpFU0VSSlNFbkJ6Y25BUkVISnpjaFNnSDAvbHdCVktySXFxb0JrS29lcXY2c0FyejlSREwvMHYvLy9nSUIvdjh0L3dBQ0FBb0FBQU1CQXJBQUJ3QVVBQUJ6RXlFVEl5Y2pCemN6Snk0REp5TU9BZ2NLK3dFQisrb2Q4UjFMbGlFRUNnb0tCQWdFRFE0SEFyRDlVR0ZoKzI0TUlpWWxEaEl1TVJZQUFBTUFDZ0FBQXdFRGRRQUhBQlFBR1FBQWN4TWhFeU1uSXdjM015Y3VBeWNqRGdJSEF6Y3pGd2NLK3dFQisrb2Q4UjFMbGlFRUNnb0tCQWdFRFE0SE1WelFBcUFDc1AxUVlXSDdiZ3dpSmlVT0VpNHhGZ0dIaFFTQkFBTUFDZ0FBQXdFRGRRQUhBQlFBSmdBQWN4TWhFeU1uSXdjM015Y3VBeWNqRGdJSEV5SW1KalV6SGdJek1qWTJOek1VQmdZSyt3RUIrK29kOFIxTGxpRUVDZ29LQkFnRURRNEhMVHBTTEdBQ0Z5Y1lHU2NZQWw4dFV3S3cvVkJoWWZ0dURDSW1KUTRTTGpFV0FYd3NReUVLR0JBUUdBb2hReXdBQkFBS0FBQURBUVFYQUFjQUZBQW1BQ3NBQUhNVElSTWpKeU1ITnpNbkxnTW5JdzRDQnhNaUppWTFNeDRDTXpJMk5qY3pGQVlHSnpjekZ3Y0srd0VCKytvZDhSMUxsaUVFQ2dvS0JBZ0VEUTRITFRwU0xHQUNGeWNZR1NjWUFsOHRVNWRjMEFLZ0FyRDlVR0ZoKzI0TUlpWWxEaEl1TVJZQmZDeERJUW9ZRUJBWUNpRkRMSzJGQklFQUJBQUsvejREQVFOMUFBY0FGQUFZQUNvQUFITVRJUk1qSnlNSE56TW5MZ01uSXc0Q0J3TTFNeFVESWlZbU5UTWVBak15TmpZM014UUdCZ3I3QVFINzZoM3hIVXVXSVFRS0Nnb0VDQVFORGdjZm1FdzZVaXhnQWhjbkdCa25HQUpmTFZNQ3NQMVFZV0g3Ymd3aUppVU9FaTR4RnYzVmhvWURweXhESVFvWUVCQVlDaUZETEFBRUFBb0FBQU1CQkJjQUJ3QVVBQ1lBS3dBQWN4TWhFeU1uSXdjM015Y3VBeWNqRGdJSEV5SW1KalV6SGdJek1qWTJOek1VQmdZM0l5YzNNd3I3QVFINzZoM3hIVXVXSVFRS0Nnb0VDQVFORGdjdE9sSXNZQUlYSnhnWkp4Z0NYeTFUTjQ2Z0F0QUNzUDFRWVdIN2Jnd2lKaVVPRWk0eEZnRjhMRU1oQ2hnUUVCZ0tJVU1zcllFRUFBQUVBQW9BQUFNQkJDTUFCd0FVQUNZQVB3QUFjeE1oRXlNbkl3YzNNeWN1QXljakRnSUhFeUltSmpVekhnSXpNalkyTnpNVUJnWW5OVE15TmpVMEppTWpOVDRDTXpJZUFoVVVCZ1lIRlFyN0FRSDc2aDN4SFV1V0lRUUtDZ29FQ0FRTkRnY3RPbElzWUFJWEp4Z1pKeGdDWHkxVFlRc1NEQklST2d3aUl3d1NMQ2NhR2lnWEFyRDlVR0ZoKzI0TUlpWWxEaEl1TVJZQmZDeERJUW9ZRUJBWUNpRkRMS2s0QndvTEJqTURBd0lIRHhrVEV4a01BaGtBQkFBS0FBQURBUVFYQUFjQUZBQW1BRDRBQUhNVElSTWpKeU1ITnpNbkxnTW5JdzRDQnhNaUppWTFNeDRDTXpJMk5qY3pGQVlHSlRRMk5qTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUhDdnNCQWZ2cUhmRWRTNVloQkFvS0NnUUlCQTBPQnkwNlVpeGdBaGNuR0JrbkdBSmZMVlArNlNNL0tpQTdOeHNUR2dWUkl6OHFJRHMzR3hNYUJRS3cvVkJoWWZ0dURDSW1KUTRTTGpFV0FYd3NReUVLR0JBUUdBb2hReXlqSkVJcEZCUVhFU1JCS2hRVUZ4RUFBd0FLQUFBREFRTjFBQWNBRkFBY0FBQnpFeUVUSXljakJ6Y3pKeTRESnlNT0FnY0RNeGNqTnpNSEl3cjdBUUg3NmgzeEhVdVdJUVFLQ2dvRUNBUU5EZ2V4bG1VNlpaaUdzZ0t3L1ZCaFlmdHVEQ0ltSlE0U0xqRVdBZ3haV1lVQUF3QUtBQUFEQVFOMUFBY0FGQUFjQUFCekV5RVRJeWNqQnpjekp5NERKeU1PQWdjRE56TVhJeWN6QndyN0FRSDc2aDN4SFV1V0lRUUtDZ29FQ0FRTkRnZXhocktHbUdVNlpRS3cvVkJoWWZ0dURDSW1KUTRTTGpFV0FZZUZoVmxaQUFBRUFBb0FBQU1CQkJjQUJ3QVVBQndBSVFBQWN4TWhFeU1uSXdjM015Y3VBeWNqRGdJSEF6Y3pGeU1uTXdjbk56TVhCd3I3QVFINzZoM3hIVXVXSVFRS0Nnb0VDQVFORGdleGhyS0dtR1U2WlJaYzBBS2dBckQ5VUdGaCsyNE1JaVlsRGhJdU1SWUJoNFdGV1ZtaWhRU0JBQUFFQUFyL1BnTUJBM1VBQndBVUFCZ0FJQUFBY3hNaEV5TW5Jd2MzTXljdUF5Y2pEZ0lIQXpVekZRRTNNeGNqSnpNSEN2c0JBZnZxSGZFZFM1WWhCQW9LQ2dRSUJBME9CeCtZL3RhR3NvYVlaVHBsQXJEOVVHRmgrMjRNSWlZbERoSXVNUmI5MVlhR0E3S0ZoVmxaQUFRQUNnQUFBd0VFRndBSEFCUUFIQUFoQUFCekV5RVRJeWNqQnpjekp5NERKeU1PQWdjRE56TVhJeWN6Qnpjakp6Y3pDdnNCQWZ2cUhmRWRTNVloQkFvS0NnUUlCQTBPQjdHR3NvYVlaVHBsdUk2Z0F0QUNzUDFRWVdIN2Jnd2lKaVVPRWk0eEZnR0hoWVZaV2FLQkJBQUVBQW9BQUFNQkJDTUFCd0FVQUJ3QU5RQUFjeE1oRXlNbkl3YzNNeWN1QXljakRnSUhBemN6RnlNbk13YzNOVE15TmpVMEppTWpOVDRDTXpJZUFoVVVCZ1lIRlFyN0FRSDc2aDN4SFV1V0lRUUtDZ29FQ0FRTkRnZXhocktHbUdVNlpTQUxFZ3dTRVRvTUlpTU1FaXduR2hvb0Z3S3cvVkJoWWZ0dURDSW1KUTRTTGpFV0FZZUZoVmxabmpnSENnc0dNd01EQWdjUEdSTVRHUXdDR1FBQUJBQUtBQUFEQVFRWEFBY0FGQUFjQURRQUFITVRJUk1qSnlNSE56TW5MZ01uSXc0Q0J3TTNNeGNqSnpNSEp6UTJOak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIQ3ZzQkFmdnFIZkVkUzVZaEJBb0tDZ1FJQkEwT0I3R0dzb2FZWlRwbGxpTS9LaUE3TnhzVEdnVlJJejhxSURzM0d4TWFCUUt3L1ZCaFlmdHVEQ0ltSlE0U0xqRVdBWWVGaFZsWm1DUkNLUlFVRnhFa1FTb1VGQmNSQUFRQUNnQUFBd0VEZFFBSEFCUUFHUUFlQUFCekV5RVRJeWNqQnpjekp5NERKeU1PQWdjVEp6Y3pGeUVuTnpNWEN2c0JBZnZxSGZFZFM1WWhCQW9LQ2dRSUJBME9CM2FMQXJ4TS9wcUxBcnhNQXJEOVVHRmgrMjRNSWlZbERoSXVNUllCaDRFRWhZRUVoUUFFQUFvQUFBTUJBM1VBQndBVUFCZ0FIQUFBY3hNaEV5TW5Jd2MzTXljdUF5Y2pEZ0lIQXpVekZUTTFNeFVLK3dFQisrb2Q4UjFMbGlFRUNnb0tCQWdFRFE0SGpaaEVtQUt3L1ZCaFlmdHVEQ0ltSlE0U0xqRVdBWUdMaTR1TEFBQURBQXIvUGdNQkFyQUFCd0FVQUJnQUFITVRJUk1qSnlNSE56TW5MZ01uSXc0Q0J3TTFNeFVLK3dFQisrb2Q4UjFMbGlFRUNnb0tCQWdFRFE0SEg1Z0NzUDFRWVdIN2Jnd2lKaVVPRWk0eEZ2M1Zob1lBQUFNQUNnQUFBd0VEZFFBSEFCUUFHUUFBY3hNaEV5TW5Jd2MzTXljdUF5Y2pEZ0lIRXlNbk56TUsrd0VCKytvZDhSMUxsaUVFQ2dvS0JBZ0VEUTRIblk2Z0F0QUNzUDFRWVdIN2Jnd2lKaVVPRWk0eEZnR0hnUVFBQUFNQUNnQUFBd0VEZ1FBSEFCUUFMUUFBY3hNaEV5TW5Jd2MzTXljdUF5Y2pEZ0lIRXpVek1qWTFOQ1lqSXpVK0FqTXlIZ0lWRkFZR0J4VUsrd0VCKytvZDhSMUxsaUVFQ2dvS0JBZ0VEUTRIQlFzU0RCSVJPZ3dpSXd3U0xDY2FHaWdYQXJEOVVHRmgrMjRNSWlZbERoSXVNUllCZ3pnSENnc0dNd01EQWdjUEdSTVRHUXdDR1FBREFBb0FBQU1CQTNVQUJ3QVVBQ1lBQUhNVElSTWpKeU1ITnpNbkxnTW5JdzRDQndNME5qWXpNaFlXRlNNdUFpTWlCZ1lIQ3ZzQkFmdnFIZkVkUzVZaEJBb0tDZ1FJQkEwT0I0c3RWRGc2VWl4Z0FoY21HUmdvR0FJQ3NQMVFZV0g3Ymd3aUppVU9FaTR4RmdGOElrSXNMRUlpQ3hjUUVCY0xBQU1BQ2dBQUF3RURUZ0FIQUJRQUdBQUFjeE1oRXlNbkl3YzNNeWN1QXljakRnSUhBelVoRlFyN0FRSDc2aDN4SFV1V0lRUUtDZ29FQ0FRTkRnZHlBVDBDc1AxUVlXSDdiZ3dpSmlVT0VpNHhGZ0dCWkdRQUF3QUsveTBEQVFLd0FBY0FGQUFvQUFCekV5RVRJeWNqQnpjekp5NERKeU1PQWdjQklpWW1OVFEyTnpNVkJnWVZGQll6TXhVR0JncjdBUUg3NmgzeEhVdVdJUVFLQ2dvRUNBUU5EZ2NCRXlBNkpDRVJhaElTR2hvOEZ6b0NzUDFRWVdIN2Jnd2lKaVVPRWk0eEZ2M0VGeklwSlRNVkJBd25FeGNqVEFjSUFBQUVBQW9BQUFNQkE3QUFCd0FVQUNBQUxBQUFjeE1oRXlNbkl3YzNNeWN1QXljakRnSUhFeUltTlRRMk16SVdGUlFHSnpJMk5UUW1JeUlHRlJRV0N2c0JBZnZxSGZFZFM1WWhCQW9LQ2dRSUJBME9CeTB5UWtJeU1rSkNNaEVYRnhFUkZ4Y0NzUDFRWVdIN2Jnd2lKaVVPRWk0eEZnRnVQUzh2UGo0dkx6MUhGaEFRRkJVUkVCUUFCUUFLQUFBREFRUlRBQWNBRkFBZ0FDd0FNUUFBY3hNaEV5TW5Jd2MzTXljdUF5Y2pEZ0lIRXlJbU5UUTJNeklXRlJRR0p6STJOVFFtSXlJR0ZSUVdKemN6RndjSyt3RUIrK29kOFIxTGxpRUVDZ29LQkFnRURRNEhMVEpDUWpJeVFrSXlFUmNYRVJFWEYwMWMwQUtnQXJEOVVHRmgrMjRNSWlZbERoSXVNUllCYmowdkx6NCtMeTg5UnhZUUVCUVZFUkFVc0lVRWdRQURBQW9BQUFNQkEzVUFCd0FVQUN3QUFITVRJUk1qSnlNSE56TW5MZ01uSXc0Q0J3TTBOall6TWhZV016STJOek1VQmdZaklpWW1JeUlHQndyN0FRSDc2aDN4SFV1V0lRUUtDZ29FQ0FRTkRnZXhJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GQXJEOVVHRmgrMjRNSWlZbERoSXVNUllCZlNSQ0tSUVVGeEVrUVNvVUZCY1JBQUFDQUFBQUFBUFJBckFBRHdBZEFBQnhBU0VWSVJjaEZTTVhJUlVoSnlNSE56TW5MZ01uSXc0REJ3RWpBcWYra3hZQkgvb1lBU0grTXhicUlsbVJMZ0VDQWdJQkJBRUVBd01DQXJDbFg1NXBwV0ZoKzlBRkNRa0tCQVFLQ1FrRkFBQURBQUFBQUFQUkEzVUFEd0FkQUNJQUFIRUJJUlVoRnlFVkl4Y2hGU0VuSXdjM015Y3VBeWNqRGdNSEV6Y3pGd2NCSXdLbi9wTVdBUi82R0FFaC9qTVc2aUpaa1M0QkFnSUNBUVFCQkFNREFpOWMwQUtnQXJDbFg1NXBwV0ZoKzlBRkNRa0tCQVFLQ1FrRkFTV0ZCSUVBQXdCS0FBQUM0Z0t3QUJNQUhRQW5BQUJ6RVNFeUZoWVZGQVlHQnhVZUFoVVVCZ1lqSnpNeU5qVTBKaVlqSXpVek1qWTJOVFFtSXlOS0FjbzBWalFnTkI4a095UTJXamp6cUJjY0RSY1BxSmdRRmcwZUZaZ0NzQ3RNTWpKQUpRa0VDQ2RHTnpkU0xxQWdJQThaRG80UEhCVVdId0FCQUMzLzlBTGRBcndBSVFBQVJTSW1KalUwTmpNeUZoWVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFHQmdHU2RaOVJ0YkJrbFZMVEhEVW9MemthR3pndExEa2R6RTZVREZDZmRiQzBRNFJnS0RvZ0tFZ3ZRQzlJS0I0NUoxNkNRd0FBQWdBdC8vUUMzUU4xQUNFQUpnQUFSU0ltSmpVME5qTXlGaFlWSXpRbUppTWlCZ1lWRlJRV0ZqTXlOalkxTXhRR0JnTTNNeGNIQVpKMW4xRzFzR1NWVXRNY05TZ3ZPUm9iT0Mwc09SM01UcFRSWE5BQ29BeFFuM1d3dEVPRVlDZzZJQ2hJTDBBdlNDZ2VPU2RlZ2tNQy9JVUVnUUFDQUMzLzlBTGRBM1VBSVFBcEFBQkZJaVltTlRRMk16SVdGaFVqTkNZbUl5SUdCaFVWRkJZV016STJOalV6RkFZR0FUTVhJemN6QnlNQmtuV2ZVYld3WkpWUzB4dzFLQzg1R2hzNExTdzVIY3hPbFA2dmxtVTZaWmlHc2d4UW4zV3d0RU9FWUNnNklDaElMMEF2U0NnZU9TZGVna01EZ1ZsWmhRQUFBZ0F0L3kwQzNRSzhBQ0VBT1FBQVJTSW1KalUwTmpNeUZoWVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFHQmdjaUppYzFNekkyTlRRbUl5TTNNd2NlQWhVVURnSUJrbldmVWJXd1pKVlMweHcxS0M4NUdoczRMU3c1SGN4T2xHZ2lUUlpwRWhZUUZpZ1VZQXNTSnhvWkppb01VSjkxc0xSRGhHQW9PaUFvU0M5QUwwZ29IamtuWG9KRHh3a0hPUVlRRHdtRFJBSVRKUjhjSlJRSUFBSUFMZi8wQXQwRGRRQWhBQ2tBQUVVaUppWTFORFl6TWhZV0ZTTTBKaVlqSWdZR0ZSVVVGaFl6TWpZMk5UTVVCZ1lCTnpNWEl5Y3pCd0dTZFo5UnRiQmtsVkxUSERVb0x6a2FHemd0TERrZHpFNlUvcStHc29hWVpUcGxERkNmZGJDMFE0UmdLRG9nS0VndlFDOUlLQjQ1SjE2Q1F3TDhoWVZaV1FBQ0FDMy85QUxkQTNVQUlRQWxBQUJGSWlZbU5UUTJNeklXRmhVak5DWW1JeUlHQmhVVkZCWVdNekkyTmpVekZBWUdBelV6RlFHU2RaOVJ0YkJrbFZMVEhEVW9MemthR3pndExEa2R6RTZVdlpnTVVKOTFzTFJEaEdBb09pQW9TQzlBTDBnb0hqa25Yb0pEQXZhTGl3QUFBZ0JLQUFBQzNRS3dBQW9BR0FBQWN4RWhNaFlXRlJRR0JpTW5NekkrQWpVMU5DNENJeU5LQVNwMm9GTlRvSFpOU1NRMUloQVFJalVrU1FLd1NwaDJkWmxLcFJRbU9DTThJemdtRkFBQUJBQktBQUFGc3dOMUFBb0FHQUFpQUNvQUFITVJJVElXRmhVVUJnWWpKek15UGdJMU5UUXVBaU1qQVRVQklUVWhGUUVoRlFFekZ5TTNNd2NqU2dFcWRxQlRVNkIyVFVra05TSVFFQ0kxSkVrQjhRRS8vdGtDZS83QkFVZjkyNVpsT21XWWhySUNzRXFZZG5XWlNxVVVKamdqUENNNEpoVDk5VWNCeEtWSC9qeWxBM1ZaV1lVQUFBTUFBQUFBQXQwQ3NBQURBQTRBSEFBQVVUVWhGUUVSSVRJV0ZoVVVCZ1lqSnpNeVBnSTFOVFF1QWlNakFaRCt1Z0VxZHFCVFU2QjJUVWtrTlNJUUVDSTFKRWtCRjRxSy91a0NzRXFZZG5XWlNxVVVKamdqUENNNEpoUUFBd0JLQUFBQzNRTjFBQW9BR0FBZ0FBQnpFU0V5RmhZVkZBWUdJeWN6TWo0Q05UVTBMZ0lqSXdNekZ5TTNNd2NqU2dFcWRxQlRVNkIyVFVra05TSVFFQ0kxSkVtRWxtVTZaWmlHc2dLd1NwaDJkWmxLcFJRbU9DTThJemdtRkFGcVdWbUZBQU1BQUFBQUF0MENzQUFEQUE0QUhBQUFVVFVoRlFFUklUSVdGaFVVQmdZakp6TXlQZ0kxTlRRdUFpTWpBWkQrdWdFcWRxQlRVNkIyVFVra05TSVFFQ0kxSkVrQkY0cUsvdWtDc0VxWWRuV1pTcVVVSmpnalBDTTRKaFFBQkFCS0FBQUZJUUxWQUFvQUdBQWlBQ29BQUhNUklUSVdGaFVVQmdZakp6TXlQZ0kxTlRRdUFpTWpBVFVUSXpVaEZRTXpGUUV6RnlNM013Y2pTZ0VxZHFCVFU2QjJUVWtrTlNJUUVDSTFKRWtCOTk3U0FlN2c2ZjRta1dVNlpaT0dxQUt3U3BoMmRabEtwUlFtT0NNOEl6Z21GUDMxUVFGSWh6Nyt0WWNDMVZsWmhRQUFBUUJOQUFBQ3B3S3dBQXNBQUhNUklSVWhGU0VWSVJVaEZVMENVLzZLQVVEK3dBRjlBckNsWDU1cHBRQUNBRTBBQUFLbkEzVUFDd0FRQUFCekVTRVZJUlVoRlNFVklSVUJOek1YQjAwQ1UvNktBVUQrd0FGOS9uVmMwQUtnQXJDbFg1NXBwUUx3aFFTQkFBSUFUUUFBQXFjRGRRQUxBQjBBQUhNUklSVWhGU0VWSVJVaEZRRWlKaVkxTXg0Q016STJOamN6RkFZR1RRSlQvb29CUVA3QUFYMyswenBTTEdBQ0Z5Y1pHQ2NZQWw4dFV3S3dwVitlYWFVQzVTeERJUW9ZRUJBWUNpRkRMQUFDQUUwQUFBS25BM1VBQ3dBVEFBQnpFU0VWSVJVaEZTRVZJUlVCTXhjak56TUhJMDBDVS82S0FVRCt3QUY5L2ZXV1pUcGxtSWF5QXJDbFg1NXBwUU4xV1ZtRkFBSUFUUUFBQXFjRGRRQUxBQk1BQUhNUklSVWhGU0VWSVJVaEZRRTNNeGNqSnpNSFRRSlQvb29CUVA3QUFYMzk5WWF5aHBobE9tVUNzS1Zmbm1tbEF2Q0ZoVmxaQUFBREFFMEFBQUtuQkJjQUN3QVRBQmdBQUhNUklSVWhGU0VWSVJVaEZRRTNNeGNqSnpNSEp6Y3pGd2ROQWxQK2lnRkEvc0FCZmYzMWhyS0dtR1U2WlJaYzBBS2dBckNsWDU1cHBRTHdoWVZaV2FLRkJJRUFBQU1BVGY4K0FxY0RkUUFMQUE4QUZ3QUFjeEVoRlNFVklSVWhGU0VWQlRVekZRRTNNeGNqSnpNSFRRSlQvb29CUVA3QUFYMytpWmorMUlheWhwaGxPbVVDc0tWZm5tbWx3b2FHQTdLRmhWbFpBQUFEQUUwQUFBS25CQmNBQ3dBVEFCZ0FBSE1SSVJVaEZTRVZJUlVoRlFFM014Y2pKek1ITnlNbk56Tk5BbFAraWdGQS9zQUJmZjMxaHJLR21HVTZaYmlPb0FMUUFyQ2xYNTVwcFFMd2hZVlpXYUtCQkFBREFFMEFBQUtuQkNNQUN3QVRBQ3dBQUhNUklSVWhGU0VWSVJVaEZRRTNNeGNqSnpNSE56VXpNalkxTkNZakl6VStBak15SGdJVkZBWUdCeFZOQWxQK2lnRkEvc0FCZmYzMWhyS0dtR1U2WlNBTEVnd1NFVG9NSXlJTUVpd25HaG9vRndLd3BWK2VhYVVDOElXRldWbWVPQWNLQ3dZekF3TUNCdzhaRXhNWkRBSVpBQUFEQUUwQUFBS25CQmNBQ3dBVEFDc0FBSE1SSVJVaEZTRVZJUlVoRlFFM014Y2pKek1ISnpRMk5qTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUhUUUpUL29vQlFQN0FBWDM5OVlheWhwaGxPbVdXSXo4cUlEczNHeE1hQlZFalB5b2dPemNiRXhvRkFyQ2xYNTVwcFFMd2hZVlpXWmdrUWlrVUZCY1JKRUVxRkJRWEVRQURBRTBBQUFLbkEzVUFDd0FRQUJVQUFITVJJUlVoRlNFVklSVWhGUU1uTnpNWElTYzNNeGROQWxQK2lnRkEvc0FCZmVTTEFyeE0vcHFMQXJ4TUFyQ2xYNTVwcFFMd2dRU0ZnUVNGQUFBREFFMEFBQUtuQTNVQUN3QVBBQk1BQUhNUklSVWhGU0VWSVJVaEZRRTFNeFV6TlRNVlRRSlQvb29CUVA3QUFYMytHWmhFbUFLd3BWK2VhYVVDNm91TGk0c0FBQUlBVFFBQUFxY0RkUUFMQUE4QUFITVJJUlVoRlNFVklSVWhGUUUxTXhWTkFsUCtpZ0ZBL3NBQmZmNkptQUt3cFYrZWFhVUM2b3VMQUFBQ0FFMy9QZ0tuQXJBQUN3QVBBQUJ6RVNFVklSVWhGU0VWSVJVRk5UTVZUUUpUL29vQlFQN0FBWDMraVpnQ3NLVmZubW1sd29hR0FBSUFUUUFBQXFjRGRRQUxBQkFBQUhNUklSVWhGU0VWSVJVaEZRTWpKemN6VFFKVC9vb0JRUDdBQVgyOWpxQUMwQUt3cFYrZWFhVUM4SUVFQUFJQVRRQUFBcWNEZ1FBTEFDUUFBSE1SSVJVaEZTRVZJUlVoRlFFMU16STJOVFFtSXlNMVBnSXpNaDRDRlJRR0JnY1ZUUUpUL29vQlFQN0FBWDMrcXdzU0RCSVJPZ3dqSWd3U0xDY2FHaWdYQXJDbFg1NXBwUUxzT0FjS0N3WXpBd01DQnc4WkV4TVpEQUlaQUFJQVRRQUFBcWNEZFFBTEFCMEFBSE1SSVJVaEZTRVZJUlVoRlFFME5qWXpNaFlXRlNNdUFpTWlCZ1lIVFFKVC9vb0JRUDdBQVgzK0d5MVVPRHBTTEdBQ0Z5WVpHQ2dZQWdLd3BWK2VhYVVDNVNKQ0xDeENJZ3NYRUJBWEN3QUNBRTBBQUFLbkEwNEFDd0FQQUFCekVTRVZJUlVoRlNFVklSVUJOU0VWVFFKVC9vb0JRUDdBQVgzK05BRTlBckNsWDU1cHBRTHFaR1FBQWdCTi95MENwd0t3QUFzQUh3QUFjeEVoRlNFVklSVWhGU0VWQnlJbUpqVTBOamN6RlFZR0ZSUVdNek1WQmdaTkFsUCtpZ0ZBL3NBQmZXb2dPaVFoRVdvU0Vob2FQQmM2QXJDbFg1NXBwZE1YTWlrbE14VUVEQ2NURnlOTUJ3Z0FBZ0JOQUFBQ3B3TjFBQXNBSXdBQWN4RWhGU0VWSVJVaEZTRVZBVFEyTmpNeUZoWXpNalkzTXhRR0JpTWlKaVlqSWdZSFRRSlQvb29CUVA3QUFYMzk5U00vS2lBN054c1RHZ1ZSSXo4cUlEczNHeE1hQlFLd3BWK2VhYVVDNWlSQ0tSUVVGeEVrUVNvVUZCY1JBQUFCQUVvQUFBSjJBckFBQ1FBQWN4RWhGU0VWSVJVaEZVb0NMUDZ4QVNEKzRBS3dwWGFlOXdBQUFRQXQvL1FEQWdLOEFDb0FBRVVpSmpVME5qWXpNaDRDRlNNMExnSWpJZzRDRlJVVUZoWXpNalkyTlRVak5TRVJJeWNPQWdHRXJLdFlxSGRJZjJFMjB4VWtMeG9uUENjVUkwYzBJenNrbkFGdmNoWWZTbGdNdExCMm5sQWhRV0pCRmlRWkRSVXFPaVpBTWtjbUZTZ2FCSXorZ0VRYUpCSUFBZ0F0Ly9RREFnTjFBQ29BUEFBQVJTSW1OVFEyTmpNeUhnSVZJelF1QWlNaURnSVZGUlFXRmpNeU5qWTFOU00xSVJFakp3NENBeUltSmpVekhnSXpNalkyTnpNVUJnWUJoS3lyV0toM1NIOWhOdE1WSkM4YUp6d25GQ05ITkNNN0pKd0JiM0lXSDBwWUhqcFNMR0FDRnljWUdTY1lBbDh0VXd5MHNIYWVVQ0ZCWWtFV0pCa05GU282SmtBeVJ5WVZLQm9FalA2QVJCb2tFZ0x4TEVNaENoZ1FFQmdLSVVNc0FBQUNBQzMvOUFNQ0EzVUFLZ0F5QUFCRklpWTFORFkyTXpJZUFoVWpOQzRDSXlJT0FoVVZGQllXTXpJMk5qVTFJelVoRVNNbkRnSURNeGNqTnpNSEl3R0VyS3RZcUhkSWYyRTIweFVrTHhvblBDY1VJMGMwSXpza25BRnZjaFlmU2xqOGxtVTZaWmlHc2d5MHNIYWVVQ0ZCWWtFV0pCa05GU282SmtBeVJ5WVZLQm9FalA2QVJCb2tFZ09CV1ZtRkFBQUNBQzMvOUFNQ0EzVUFLZ0F5QUFCRklpWTFORFkyTXpJZUFoVWpOQzRDSXlJT0FoVVZGQllXTXpJMk5qVTFJelVoRVNNbkRnSUROek1YSXljekJ3R0VyS3RZcUhkSWYyRTIweFVrTHhvblBDY1VJMGMwSXpza25BRnZjaFlmU2xqOGhyS0dtR1U2WlF5MHNIYWVVQ0ZCWWtFV0pCa05GU282SmtBeVJ5WVZLQm9FalA2QVJCb2tFZ0w4aFlWWldRQUNBQzMrdGdNQ0Fyd0FLZ0EyQUFCRklpWTFORFkyTXpJZUFoVWpOQzRDSXlJT0FoVVZGQllXTXpJMk5qVTFJelVoRVNNbkRnSUROVEkyTlNNMU14VVVCZ1lCaEt5cldLaDNTSDloTnRNVkpDOGFKenduRkNOSE5DTTdKSndCYjNJV0gwcFliQ2dmUjVnZFF3eTBzSGFlVUNGQllrRVdKQmtORlNvNkprQXlSeVlWS0JvRWpQNkFSQm9rRXY3Q1FSOG9pM0E4U0I4QUFBSUFMZi8wQXdJRGRRQXFBQzRBQUVVaUpqVTBOall6TWg0Q0ZTTTBMZ0lqSWc0Q0ZSVVVGaFl6TWpZMk5UVWpOU0VSSXljT0FnTTFNeFVCaEt5cldLaDNTSDloTnRNVkpDOGFKenduRkNOSE5DTTdKSndCYjNJV0gwcFlhSmdNdExCMm5sQWhRV0pCRmlRWkRSVXFPaVpBTWtjbUZTZ2FCSXorZ0VRYUpCSUM5b3VMQUFFQVNnQUFBdmNDc0FBTEFBQnpFVE1WTXpVekVTTVJJeEZLM2ZQZDNmTUNzUHY3L1ZBQkJmNzdBQUlBQVFBQUF6OENzQUFMQUE4QUFITVJNeFV6TlRNUkl4RWpFUUUxSVJWSzNmUGQzZlArMmdNK0FyRDcrLzFRQVFYKyt3SHpkbllBQWdCS0FBQUM5d04xQUFzQUV3QUFjeEV6RlRNMU14RWpFU01SQXpjekZ5TW5Nd2RLM2ZQZDNmTmxocktHbUdVNlpRS3crL3Y5VUFFRi92c0M4SVdGV1ZrQUFnQksvejRDOXdLd0FBc0FEd0FBY3hFekZUTTFNeEVqRVNNUkZ6VXpGVXJkODkzZDh5dVlBckQ3Ky8xUUFRWCsrOEtHaGdBQUFRQktBQUFCSndLd0FBTUFBSE1STXhGSzNRS3cvVkFBQWdCSy8vUUR3Z0t3QUFNQUZ3QUFjeEV6RVFVaUppWTFOVE1WRkJZek1qWTFFVE1SRkFZR1N0MEJmbG1BUk04a0l5TWszVVNBQXJEOVVBdzBiMWdKQ0RBbkp6QUJ3UDQvV0c4MEFBSUFTZ0FBQVlrRGRRQURBQWdBQUhNUk14RUROek1YQjByZHpGelFBcUFDc1AxUUF2Q0ZCSUVBQUFJQUFRQUFBWElEZFFBREFCVUFBSE1STXhFRElpWW1OVE1lQWpNeU5qWTNNeFFHQmtyZGJqcFNMR0FDRnljWUdTY1lBbDh0VXdLdy9WQUM1U3hESVFvWUVCQVlDaUZETEFBQUF2L2JBQUFCbVFOMUFBTUFDd0FBY3hFekVRRXpGeU0zTXdjalN0Myt0SlpsT21XWWhySUNzUDFRQTNWWldZVUFBdi9iQUFBQm1RTjFBQU1BQ3dBQWN4RXpFUUUzTXhjakp6TUhTdDMrdElheWhwaGxPbVVDc1AxUUF2Q0ZoVmxaQUFBRC81QUFBQUdCQTNVQUF3QUlBQTBBQUhNUk14RURKemN6RnlFbk56TVhTdDBsaXdLOFRQNmFpd0s4VEFLdy9WQUM4SUVFaFlFRWhRQUFBLy8vQUFBQmN3TjFBQU1BQndBTEFBQnpFVE1SQVRVekZUTTFNeFZLM2Y3WW1FU1lBckQ5VUFMcWk0dUxpd0FBQWdCS0FBQUJKd04xQUFNQUJ3QUFjeEV6RVFNMU14VkszYmlZQXJEOVVBTHFpNHNBQWdCSy96NEJKd0t3QUFNQUJ3QUFjeEV6RVFjMU14VkszYnVZQXJEOVVNS0doZ0FBQXYvN0FBQUJLUU4xQUFNQUNBQUFjeEV6RVJNakp6Y3pTdDBDanFBQzBBS3cvVkFDOElFRUFBSUFTZ0FBQVRrRGdRQURBQndBQUhNUk14RUROVE15TmpVMEppTWpOVDRDTXpJZUFoVVVCZ1lIRlVyZGxnc1NEQklST2d3aklnd1NMQ2NhR2lnWEFyRDlVQUxzT0FjS0N3WXpBd01DQnc4WkV4TVpEQUlaQUFBQ0FBRUFBQUZ5QTNVQUF3QVZBQUJ6RVRNUkFUUTJOak15RmhZVkl5NENJeUlHQmdkSzNmN2FMVlE0T2xJc1lBSVhKaGtZS0JnQ0FyRDlVQUxsSWtJc0xFSWlDeGNRRUJjTEFBSUFHZ0FBQVZjRFRnQURBQWNBQUhNUk14RUJOU0VWU3QzKzh3RTlBckQ5VUFMcVpHUUFBZ0EvL3kwQkp3S3dBQU1BRndBQWN4RXpFUWNpSmlZMU5EWTNNeFVHQmhVVUZqTXpGUVlHU3QxcUlEb2tJUkZxRWhJYUdqd1hPZ0t3L1ZEVEZ6SXBKVE1WQkF3bkV4Y2pUQWNJQUFMLzJ3QUFBWmNEZFFBREFCc0FBSE1STXhFQk5EWTJNeklXRmpNeU5qY3pGQVlHSXlJbUppTWlCZ2RLM2Y2MEl6OHFJRHMzR3hNYUJWRWpQeW9nT3pjYkV4b0ZBckQ5VUFMbUpFSXBGQlFYRVNSQktoUVVGeEVBQUFFQUYvLzBBbEVDc0FBVEFBQkZJaVltTlRVekZSUVdNekkyTlJFekVSUUdCZ0UwV1lCRXp5UWpJeVRkUklBTU5HOVlDUWd3Snljd0FjRCtQMWh2TkFBQ0FCZi85QUxEQTNVQUV3QWJBQUJGSWlZbU5UVXpGUlFXTXpJMk5SRXpFUlFHQmdNM014Y2pKek1IQVRSWmdFVFBKQ01qSk4xRWdJaUdzb2FZWlRwbEREUnZXQWtJTUNjbk1BSEEvajlZYnpRQy9JV0ZXVmtBQVFCS0FBQURNd0t3QUFzQUFITVJNeEVUSVFNVElRTUhGVXJkOVFFUzkveisrNUoxQXJEKzJnRW0vdVgrYXdFQmNaQUFBQUlBU3Y2MkF6TUNzQUFMQUJjQUFITVJNeEVUSVFNVElRTUhGUk0xTWpZMUl6VXpGUlFHQmtyZDlRRVM5L3orKzVKMU55Z2ZSNWdkUXdLdy90b0JKdjdsL21zQkFYR1EvclpCSHlpTGNEeElId0FCQUVvQUFBS0lBckFBQlFBQWN4RXpFU0VWU3QwQllRS3cvZ0N3QUFBQ0FFci85QVRZQXJBQUJRQVpBQUJ6RVRNUklSVUZJaVltTlRVekZSUVdNekkyTlJFekVSUUdCa3JkQVdFQk0xbUFSTThrSXlNazNVU0FBckQrQUxBTU5HOVlDUWd3Snljd0FjRCtQMWh2TkFBQUFnQktBQUFDaUFOMUFBVUFDZ0FBY3hFekVTRVZBVGN6RndkSzNRRmgvZEpjMEFLZ0FyRCtBTEFDOElVRWdRQUFBZ0JLQUFBQ2lBTFZBQVVBQ1FBQWN4RXpFU0VWQXpVekIwcmRBV0hPb2l3Q3NQNEFzQUlycXFvQUFnQksvcllDaUFLd0FBVUFFUUFBY3hFekVTRVZBVFV5TmpVak5UTVZGQVlHU3QwQllmNmVLQjlIbUIxREFyRCtBTEQrdGtFZktJdHdQRWdmQUFBQ0FFb0FBQUtJQXJBQUJRQUpBQUJ6RVRNUklSVUROVE1WU3QwQlljK1pBckQrQUxBQk5vdUxBQUFEQUVyL0xnT2VBdFVBQlFBSkFCa0FBSE1STXhFaEZSTTFNeFVESWlZbUp6VXpNalkxRVRNUkZBWUdTdDBCWVUvSHR4QXVMaEEwSGhySEpsRUNzUDRBc0FKT2g0Zjg0QVFKQlhjaEh3SVovZE5BVUNVQUFBSUFBQUFBQW9nQ3NBQUZBQWtBQUhNUk14RWhGU1UxQVJWSzNRRmgvWGdCdkFLdy9nQ3dwR0lCRW1RQUFRQktBQUFEZ2dLd0FDY0FBSE1SSVJjZUFoY3pQZ0kzTnlFUkl6VTBOalkxSXc0Q0J3TWpBeTRDSnlNZUFoVVZTZ0UwUHdRUEVRY0lCUThRQmo4QktkTUJBUWdEQ3d3R1dhVmFCUTBLQkFnQkFnRUNzUElOUEVZZUZqMUFHdkw5VVBnb1ZVd1pGRFkxRlA2NUFVY1VOVFlUR1V4VUtQZ0FBUUJLQUFBQzl3S3dBQmdBQUhNUk14Y2VBaGMzSmpRMU5UTVJJd01tSmljSEZoUVZFVXE4MWdrZUh3Z0ZBY203OFJFWUN3VUJBckQzQ2lZbkRBSWNOdzczL1ZBQkV4UWhEd0lUSmduKzdRQUNBRXIvOUFXU0FyQUFHQUFzQUFCekVUTVhIZ0lYTnlZME5UVXpFU01ESmlZbkJ4WVVGUkVGSWlZbU5UVXpGUlFXTXpJMk5SRXpFUlFHQmtxODFna2VId2dGQWNtNzhSRVlDd1VCQTJKWmdFVFBKQ01qSk4xRWdBS3c5d29tSnd3Q0hEY085LzFRQVJNVUlROENFeVlKL3UwTU5HOVlDUWd3Snljd0FjRCtQMWh2TkFBQ0FFb0FBQUwzQTNVQUdBQWRBQUJ6RVRNWEhnSVhOeVkwTlRVekVTTURKaVluQnhZVUZSRVROek1YQjBxODFna2VId2dGQWNtNzhSRVlDd1VCTUZ6UUFxQUNzUGNLSmljTUFodzNEdmY5VUFFVEZDRVBBaE1tQ2Y3dEF2Q0ZCSUVBQUFJQVNnQUFBdmNEZFFBWUFDQUFBSE1STXhjZUFoYzNKalExTlRNUkl3TW1KaWNIRmhRVkVRTXpGeU0zTXdjalNyeldDUjRmQ0FVQnlidnhFUmdMQlFGUWxtVTZaWmlHc2dLdzl3b21Kd3dDSERjTzkvMVFBUk1VSVE4Q0V5WUovdTBEZFZsWmhRQUFBZ0JLL3JZQzl3S3dBQmdBSkFBQWN4RXpGeDRDRnpjbU5EVTFNeEVqQXlZbUp3Y1dGQlVSRXpVeU5qVWpOVE1WRkFZR1NyeldDUjRmQ0FVQnlidnhFUmdMQlFFL0tCOUhtQjFEQXJEM0NpWW5EQUljTnc3My9WQUJFeFFoRHdJVEpnbis3ZjYyUVI4b2kzQThTQjhBQUFFQVN2OHVBdmNDc0FBbUFBQkZJaVltSnpVek1qWTFOUU1tSmljSEZCUVZFU01STXhjZUFoYzNORFExTlRNUkZBNENBa0FRTGk0UU5CNGE1dzhXQ2dYTHZ0WUlIQjBJQmNzVkxVWFNCQWtGZHlFZkZBRUlFUndOQXcwY0R2N3RBckQzQ1NJakN3SVhLaGIzL1RNd1JTc1ZBQUgvM3Y4dUF2Y0NzQUFsQUFCWElpWW1KelV6TWpZMUVUTVhIZ0lYTnpRME5UVXpFU01ESmlZbkJ4UVVGUkVVRGdKYUVDNHVFRFFlR3I3V0NCd2RDQVhMdmZFUEZnb0ZGaTlHMGdRSkJYY2hId0s1OXdraUl3c0RGaW9XOS8xUUFSTVJIQTBERHhvTy90QXdSU3NWQUFBREFFci9MZ1JFQXRVQUdBQWNBQ3dBQUhNUk14Y2VBaGMzSmpRMU5UTVJJd01tSmljSEZoUVZFUUUxTXhVRElpWW1KelV6TWpZMUVUTVJGQVlHU3J6V0NSNGZDQVVCeWJ2eEVSZ0xCUUVDYXNlM0VDNHVFRFFlR3NjbVVRS3c5d29tSnd3Q0hEY085LzFRQVJNVUlROENFeVlKL3UwQ1RvZUgvT0FFQ1FWM0lSOENHZjNUUUZBbEFBQUNBRW9BQUFMM0EzVUFHQUF3QUFCekVUTVhIZ0lYTnlZME5UVXpFU01ESmlZbkJ4WVVGUkVETkRZMk16SVdGak15TmpjekZBWUdJeUltSmlNaUJnZEt2TllKSGg4SUJRSEp1L0VSR0FzRkFWQWpQeW9nT3pjYkV4b0ZVU00vS2lBN054c1RHZ1VDc1BjS0ppY01BaHczRHZmOVVBRVRGQ0VQQWhNbUNmN3RBdVlrUWlrVUZCY1JKRUVxRkJRWEVRQUNBQzMvOUFNVUFyd0FEd0FsQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQWFCMXBsaFlwblYycGxoWXBuWWtOeVVTRWlVM0pDUTNKQklTSkRjTVVKOTFkcDVRVUo1MmRaOVFwUmNxT3lOQUl6c3FGeGNxT3lOQUl6c3FGd0FBQXdBdC8vUURGQU4xQUE4QUpRQXFBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENBemN6RndjQm9IV21XRmltZFhhbVdGaW1kaVEzSlJJU0pUY2tKRGNrRWhJa056cGMwQUtnREZDZmRYYWVVRkNlZG5XZlVLVVhLanNqUUNNN0toY1hLanNqUUNNN0toY0NWNFVFZ1FBREFDMy85QU1VQTNVQUR3QWxBRGNBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lUSWlZbU5UTWVBak15TmpZM014UUdCZ0dnZGFaWVdLWjFkcVpZV0taMkpEY2xFaElsTnlRa055UVNFaVEzSkRwU0xHQUNGeWNZR1NjWUFsOHRVd3hRbjNWMm5sQlFubloxbjFDbEZ5bzdJMEFqT3lvWEZ5bzdJMEFqT3lvWEFrd3NReUVLR0JBUUdBb2hReXdBQXdBdC8vUURGQU4xQUE4QUpRQXRBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENBek1YSXpjekJ5TUJvSFdtV0ZpbWRYYW1XRmltZGlRM0pSSVNKVGNrSkRja0VoSWtON3FXWlRwbG1JYXlERkNmZFhhZVVGQ2VkbldmVUtVWEtqc2pRQ003S2hjWEtqc2pRQ003S2hjQzNGbFpoUUFEQUMzLzlBTVVBM1VBRHdBbEFDMEFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSUROek1YSXljekJ3R2dkYVpZV0taMWRxWllXS1oySkRjbEVoSWxOeVFrTnlRU0VpUTN1b2F5aHBobE9tVU1VSjkxZHA1UVVKNTJkWjlRcFJjcU95TkFJenNxRnhjcU95TkFJenNxRndKWGhZVlpXUUFBQkFBdC8vUURGQVFYQUE4QUpRQXRBRElBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lETnpNWEl5Y3pCeWMzTXhjSEFhQjFwbGhZcG5WMnBsaFlwbllrTnlVU0VpVTNKQ1EzSkJJU0pEZTZocktHbUdVNlpSWmMwQUtnREZDZmRYYWVVRkNlZG5XZlVLVVhLanNqUUNNN0toY1hLanNqUUNNN0toY0NWNFdGV1ZtaWhRU0JBQUFFQUMzL1BnTVVBM1VBRHdBbEFDa0FNUUFBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5UGdJMU5UUXVBaU1pRGdJVkZSUWVBZ00xTXhVQk56TVhJeWN6QndHZ2RhWllXS1oxZHFaWVdLWjJKRGNsRWhJbE55UWtOeVFTRWlRM0o1aisxWWF5aHBobE9tVU1VSjkxZHA1UVVKNTJkWjlRcFJjcU95TkFJenNxRnhjcU95TkFJenNxRi82bGhvWURzb1dGV1ZrQUJBQXQvL1FERkFRWEFBOEFKUUF0QURJQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJRE56TVhJeWN6Qnpjakp6Y3pBYUIxcGxoWXBuVjJwbGhZcG5Za055VVNFaVUzSkNRM0pCSVNKRGU2aHJLR21HVTZaYmlPb0FMUURGQ2ZkWGFlVUZDZWRuV2ZVS1VYS2pzalFDTTdLaGNYS2pzalFDTTdLaGNDVjRXRldWbWlnUVFBQkFBdC8vUURGQVFqQUE4QUpRQXRBRVlBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lETnpNWEl5Y3pCemMxTXpJMk5UUW1JeU0xUGdJek1oNENGUlFHQmdjVkFhQjFwbGhZcG5WMnBsaFlwbllrTnlVU0VpVTNKQ1EzSkJJU0pEZTZocktHbUdVNlpTQUxFZ3dTRVRvTUlpTU1FaXduR2hvb0Z3eFFuM1YybmxCUW5uWjFuMUNsRnlvN0kwQWpPeW9YRnlvN0kwQWpPeW9YQWxlRmhWbFpuamdIQ2dzR013TURBZ2NQR1JNVEdRd0NHUUFBQkFBdC8vUURGQVFYQUE4QUpRQXRBRVVBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lETnpNWEl5Y3pCeWMwTmpZek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0J3R2dkYVpZV0taMWRxWllXS1oySkRjbEVoSWxOeVFrTnlRU0VpUTN1b2F5aHBobE9tV1dJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GREZDZmRYYWVVRkNlZG5XZlVLVVhLanNqUUNNN0toY1hLanNqUUNNN0toY0NWNFdGV1ZtWUpFSXBGQlFYRVNSQktoUVVGeEVBQkFBdC8vUURGQU4xQUE4QUpRQXFBQzhBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lUSnpjekZ5RW5Oek1YQWFCMXBsaFlwblYycGxoWXBuWWtOeVVTRWlVM0pDUTNKQklTSkRkdGl3SzhUUDZhaXdLOFRBeFFuM1YybmxCUW5uWjFuMUNsRnlvN0kwQWpPeW9YRnlvN0kwQWpPeW9YQWxlQkJJV0JCSVVBQkFBdC8vUURGQU4xQUE4QUpRQXBBQzBBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lETlRNVk16VXpGUUdnZGFaWVdLWjFkcVpZV0taMkpEY2xFaElsTnlRa055UVNFaVEzbHBoRW1BeFFuM1YybmxCUW5uWjFuMUNsRnlvN0kwQWpPeW9YRnlvN0kwQWpPeW9YQWxHTGk0dUxBQUFGQUMzLzlBTVVCQVFBRHdBbEFDa0FMUUF4QUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQXpVekZUTTFNeFVsTlNFVkFhQjFwbGhZcG5WMnBsaFlwbllrTnlVU0VpVTNKQ1EzSkJJU0pEZVdtRVNZL3FjQlBReFFuM1YybmxCUW5uWjFuMUNsRnlvN0kwQWpPeW9YRnlvN0kwQWpPeW9YQWxHTGk0dUx0bVJrQUFRQUxmLzBBeFFFQkFBUEFDVUFLUUF0QUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQXpVekZTYzFJUlVCb0hXbVdGaW1kWGFtV0ZpbWRpUTNKUklTSlRja0pEY2tFaElrTnlhWTZ3RTlERkNmZFhhZVVGQ2VkbldmVUtVWEtqc2pRQ003S2hjWEtqc2pRQ003S2hjQ1VZdUx0bVJrQUFBREFDMy9QZ01VQXJ3QUR3QWxBQ2tBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lETlRNVkFhQjFwbGhZcG5WMnBsaFlwbllrTnlVU0VpVTNKQ1EzSkJJU0pEY25tQXhRbjNWMm5sQlFubloxbjFDbEZ5bzdJMEFqT3lvWEZ5bzdJMEFqT3lvWC9xV0doZ0FBQXdBdC8vUURGQU4xQUE4QUpRQXFBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENFeU1uTnpNQm9IV21XRmltZFhhbVdGaW1kaVEzSlJJU0pUY2tKRGNrRWhJa041U09vQUxRREZDZmRYYWVVRkNlZG5XZlVLVVhLanNqUUNNN0toY1hLanNqUUNNN0toY0NWNEVFQUFBREFDMy85QU1VQTRFQUR3QWxBRDRBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lETlRNeU5qVTBKaU1qTlQ0Q016SWVBaFVVQmdZSEZRR2dkYVpZV0taMWRxWllXS1oySkRjbEVoSWxOeVFrTnlRU0VpUTNCQXNTREJJUk9nd2lJd3dTTENjYUdpZ1hERkNmZFhhZVVGQ2VkbldmVUtVWEtqc2pRQ003S2hjWEtqc2pRQ003S2hjQ1V6Z0hDZ3NHTXdNREFnY1BHUk1UR1F3Q0dRQURBQzMvOUFOMUF6MEFEd0FsQURFQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJQk5USTJOeU0xTXhVVUJnWUJvSFdtV0ZpbWRYYW1XRmltZGlRM0pSSVNKVGNrSkRja0VoSWtOd0VoS1RrSVJyUXdZQXhRbjNWMm5sQlFubloxbjFDbEZ5bzdJMEFqT3lvWEZ5bzdJMEFqT3lvWEFZTlhHeHlUVjBCYkx3QUVBQzMvOUFOMUEzVUFEd0FsQURFQU5nQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFnRTFNalkzSXpVekZSUUdCaVUzTXhjSEFhQjFwbGhZcG5WMnBsaFlwbllrTnlVU0VpVTNKQ1EzSkJJU0pEY0JJU2s1Q0VhME1HRCtYbHpRQXFBTVVKOTFkcDVRVUo1MmRaOVFwUmNxT3lOQUl6c3FGeGNxT3lOQUl6c3FGd0dEVnhzY2sxZEFXeS9VaFFTQkFBQUVBQzMvUGdOMUF6MEFEd0FsQURFQU5RQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lQZ0kxTlRRdUFpTWlEZ0lWRlJRZUFnRTFNalkzSXpVekZSUUdCZ0UxTXhVQm9IV21XRmltZFhhbVdGaW1kaVEzSlJJU0pUY2tKRGNrRWhJa053RWhLVGtJUnJRd1lQNXdtQXhRbjNWMm5sQlFubloxbjFDbEZ5bzdJMEFqT3lvWEZ5bzdJMEFqT3lvWEFZTlhHeHlUVjBCYkwvMGlob1lBQUFRQUxmLzBBM1VEZFFBUEFDVUFNUUEyQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQVRVeU5qY2pOVE1WRkFZR0p5TW5Oek1Cb0hXbVdGaW1kWGFtV0ZpbWRpUTNKUklTSlRja0pEY2tFaElrTndFaEtUa0lSclF3WU5TT29BTFFERkNmZFhhZVVGQ2VkbldmVUtVWEtqc2pRQ003S2hjWEtqc2pRQ003S2hjQmcxY2JISk5YUUZzdjFJRUVBQUFFQUMzLzlBTjFBNEVBRHdBbEFERUFTZ0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5UGdJMU5UUXVBaU1pRGdJVkZSUWVBZ0UxTWpZM0l6VXpGUlFHQmlVMU16STJOVFFtSXlNMVBnSXpNaDRDRlJRR0JnY1ZBYUIxcGxoWXBuVjJwbGhZcG5Za055VVNFaVUzSkNRM0pCSVNKRGNCSVNrNUNFYTBNR0QrbEFzU0RCSVJPZ3dpSXd3U0xDY2FHaWdYREZDZmRYYWVVRkNlZG5XZlVLVVhLanNqUUNNN0toY1hLanNqUUNNN0toY0JnMWNiSEpOWFFGc3YwRGdIQ2dzR013TURBZ2NQR1JNVEdRd0NHUUFBQkFBdC8vUURkUU4xQUE4QUpRQXhBRWtBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWo0Q05UVTBMZ0lqSWc0Q0ZSVVVIZ0lCTlRJMk55TTFNeFVVQmdZbE5EWTJNeklXRmpNeU5qY3pGQVlHSXlJbUppTWlCZ2NCb0hXbVdGaW1kWGFtV0ZpbWRpUTNKUklTSlRja0pEY2tFaElrTndFaEtUa0lSclF3WVAzZUl6OHFJRHMzR3hNYUJWRWpQeW9nT3pjYkV4b0ZERkNmZFhhZVVGQ2VkbldmVUtVWEtqc2pRQ003S2hjWEtqc2pRQ003S2hjQmcxY2JISk5YUUZzdnlpUkNLUlFVRnhFa1FTb1VGQmNSQUFRQUxmLzBBeFFEZFFBUEFDVUFLZ0F2QUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDRXpjekZ3Y2hOek1YQndHZ2RhWllXS1oxZHFaWVdLWjJKRGNsRWhJbE55UWtOeVFTRWlRM1ZFeThBb3YrbWt5OEFvc01VSjkxZHA1UVVKNTJkWjlRcFJjcU95TkFJenNxRnhjcU95TkFJenNxRndKWGhRU0JoUVNCQUFNQUxmLzBBeFFEZFFBUEFDVUFOd0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5UGdJMU5UUXVBaU1pRGdJVkZSUWVBZ00wTmpZek1oWVdGU011QWlNaUJnWUhBYUIxcGxoWXBuVjJwbGhZcG5Za055VVNFaVUzSkNRM0pCSVNKRGVVTFZRNE9sSXNZQUlYSmhrWUtCZ0NERkNmZFhhZVVGQ2VkbldmVUtVWEtqc2pRQ003S2hjWEtqc2pRQ003S2hjQ1RDSkNMQ3hDSWdzWEVCQVhDd0FEQUMzLzlBTVVBMDRBRHdBbEFDa0FBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSUROU0VWQWFCMXBsaFlwblYycGxoWXBuWWtOeVVTRWlVM0pDUTNKQklTSkRkN0FUME1VSjkxZHA1UVVKNTJkWjlRcFJjcU95TkFJenNxRnhjcU95TkFJenNxRndKUlpHUUFBd0F0L3kwREZBSzhBQThBSlFBNUFBQkZJaVltTlRRMk5qTXlGaFlWRkFZR0p6SStBalUxTkM0Q0l5SU9BaFVWRkI0Q0V5SW1KalUwTmpjekZRWUdGUlFXTXpNVkJnWUJvSFdtV0ZpbWRYYW1XRmltZGlRM0pSSVNKVGNrSkRja0VoSWtONW9nT2lRaEVXb1NFaG9hUEJjNkRGQ2ZkWGFlVUZDZWRuV2ZVS1VYS2pzalFDTTdLaGNYS2pzalFDTTdLaGYrbEJjeUtTVXpGUVFNSnhNWEkwd0hDQUFEQUMzLzJ3TVVBdFFBRHdBbEFDa0FBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NajRDTlRVMExnSWpJZzRDRlJVVUhnSUZBVE1CQWFCMXBsaFlwblYycGxoWXBuWWtOeVVTRWlVM0pDUTNKQklTSkRmK3VRSnBiUDJYREZDZmRYYWVVRkNlZG5XZlVLVVhLanNqUUNNN0toY1hLanNqUUNNN0toZStBdm45QndBQUJBQXQvOXNERkFOMUFBOEFKUUFwQUM0QUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJRkFUTUJFemN6RndjQm9IV21XRmltZFhhbVdGaW1kaVEzSlJJU0pUY2tKRGNrRWhJa04vNjVBbWxzL1plaFhOQUNvQXhRbjNWMm5sQlFubloxbjFDbEZ5bzdJMEFqT3lvWEZ5bzdJMEFqT3lvWHZnTDUvUWNERllVRWdRQURBQzMvOUFNVUEzVUFEd0FsQUQwQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qNENOVFUwTGdJaklnNENGUlVVSGdJRE5EWTJNeklXRmpNeU5qY3pGQVlHSXlJbUppTWlCZ2NCb0hXbVdGaW1kWGFtV0ZpbWRpUTNKUklTSlRja0pEY2tFaElrTjdvalB5b2dPemNiRXhvRlVTTS9LaUE3TnhzVEdnVU1VSjkxZHA1UVVKNTJkWjlRcFJjcU95TkFJenNxRnhjcU95TkFJenNxRndKTkpFSXBGQlFYRVNSQktoUVVGeEVBQUFRQUxmLzBBeFFFQkFBUEFDVUFQUUJCQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQXpRMk5qTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUhKelVoRlFHZ2RhWllXS1oxZHFaWVdLWjJKRGNsRWhJbE55UWtOeVFTRWlRM3VpTS9LaUE3TnhzVEdnVlJJejhxSURzM0d4TWFCUklCUFF4UW4zVjJubEJRbm5aMW4xQ2xGeW83STBBak95b1hGeW83STBBak95b1hBazBrUWlrVUZCY1JKRUVxRkJRWEVicGtaQUFBQWdBdC8vUUVqQUs4QUJvQU1BQUFSU0ltSmpVME5qWXpNaFlYTlNFVklSVWhGU0VWSVJVaE5RWUdKekkrQWpVMU5DNENJeUlPQWhVVkZCNENBWGgxa2tSRWtuVTRYU1VDVS82S0FVRCt3QUY5L2FZbFhSQWtOeVVTRWlVM0pDUTNKQklTSkRjTVVKOTFkcDVRR3hrb3BWK2VhYVVvR1J1bEZ5bzdJMEFqT3lvWEZ5bzdJMEFqT3lvWEFBQUNBRW9BQUFLOEFyQUFEQUFXQUFCekVTRXlGaFlWRkFZR0l5TVZFVE15TmpVMEppWWpJMG9CbGtGak9EbGpRTGx2SXlNUEh4aHZBckE3YUVWSGFUcmVBWDhrSXhnZkVBQUNBRW9BQUFLb0FyQUFEZ0FZQUFCekVUTVZNeklXRmhVVUJnWWpJeFVSTXpJMk5UUW1KaU1qU3QybFFXTTRPV05BcFZzakl3OGZHRnNDc0dRNmFVVkhhVHA2QVJza0l4Z2ZFQUFBQWdBdC8zMERGQUs4QUJRQUtnQUFSU2NHQmlNaUppWTFORFkyTXpJV0ZoVVVCZ2NYQVRJK0FqVTFOQzRDSXlJT0FoVVZGQjRDQWdCckJBc0ZhcGhTV0taMWRxWllXRktkL3Bra055VVNFaVUzSkNRM0pCSVNKRGVEZXdFQlU1OXdkcDVRVUo1MmRaNHBud0VjRnlvN0kwQWpPeW9YRnlvN0kwQWpPeW9YQUFBQ0FFb0FBQUwxQXJBQURnQVlBQUJ6RVNFeUZoWVZGQVlIRXlNbkl4VVJNekkyTlRRbUppTWpTZ0d2VFdjMFBqV0grR2x0bXhva0VCd1Ntd0t3UG1RNlFtY2YvdlRuNXdHQUtTSVZJQk1BQUFNQVNnQUFBdlVEZFFBT0FCZ0FIUUFBY3hFaE1oWVdGUlFHQnhNakp5TVZFVE15TmpVMEppWWpJeWMzTXhjSFNnR3ZUV2MwUGpXSCtHbHRteG9rRUJ3U213dGMwQUtnQXJBK1pEcENaeC8rOU9mbkFZQXBJaFVnRTkyRkJJRUFBQU1BU2dBQUF2VURkUUFPQUJnQUlBQUFjeEVoTWhZV0ZSUUdCeE1qSnlNVkVUTXlOalUwSmlZakl3TXpGeU0zTXdjalNnR3ZUV2MwUGpXSCtHbHRteG9rRUJ3U200dVdaVHBsbUlheUFyQStaRHBDWngvKzlPZm5BWUFwSWhVZ0V3RmlXVm1GQUFNQVN2NjJBdlVDc0FBT0FCZ0FKQUFBY3hFaE1oWVdGUlFHQnhNakp5TVZFVE15TmpVMEppWWpJeE0xTWpZMUl6VXpGUlFHQmtvQnIwMW5ORDQxaC9ocGJac2FKQkFjRXBzV0tCOUhtQjFEQXJBK1pEcENaeC8rOU9mbkFZQXBJaFVnRS95alFSOG9pM0E4U0I4QUJBQktBQUFDOVFOMUFBNEFHQUFkQUNJQUFITVJJVElXRmhVVUJnY1RJeWNqRlJFek1qWTFOQ1ltSXlNM0p6Y3pGeUVuTnpNWFNnR3ZUV2MwUGpXSCtHbHRteG9rRUJ3U201eUxBcnhNL3BxTEFyeE1BckErWkRwQ1p4Lys5T2ZuQVlBcEloVWdFOTJCQklXQkJJVUFBQU1BU2dBQUF2VURkUUFPQUJnQUtnQUFjeEVoTWhZV0ZSUUdCeE1qSnlNVkVUTXlOalUwSmlZakl5YzBOall6TWhZV0ZTTXVBaU1pQmdZSFNnR3ZUV2MwUGpXSCtHbHRteG9rRUJ3U20yVXRWRGc2VWl4Z0FoY21HUmdvR0FJQ3NENWtPa0puSC83MDUrY0JnQ2tpRlNBVDBpSkNMQ3hDSWdzWEVCQVhDd0FBQVFBci8vUUNyZ0s4QUVBQUFFVWlMZ0kxTkRRM013WVVGUlFXRmpNeVBnTTFOQzRHTlRRK0FqTXlIZ0lYRlNNMU5DWW1JeUlHQmhVVUhnWVZGQVlHQVg5SGUxMDFBZEVCSERNZ0RCc1pGUXdpT2toT1NEb2lNbGR2UFQ1dFZEQUJ6eEluSUI0cEZDSTZTRTVJT2lKUGlRd1ZNMXRGQWdjRUJBY0RIaUFMQVFVS0VRMFRGaEFPRXg0dlJ6SThWRFFZR1RSUU53d0VFaUFVREJVTUV4Z1FEaEVjTFVJd1ZXb3hBQUFDQUN2LzlBS3VBM1VBUUFCRkFBQkZJaTRDTlRRME56TUdGQlVVRmhZek1qNEROVFF1QmpVMFBnSXpNaDRDRnhVak5UUW1KaU1pQmdZVkZCNEdGUlFHQmdNM014Y0hBWDlIZTEwMUFkRUJIRE1nREJzWkZRd2lPa2hPU0RvaU1sZHZQVDV0VkRBQnp4SW5JQjRwRkNJNlNFNUlPaUpQaWNOYzBBS2dEQlV6VzBVQ0J3UUVCd01lSUFzQkJRb1JEUk1XRUE0VEhpOUhNanhVTkJnWk5GQTNEQVFTSUJRTUZRd1RHQkFPRVJ3dFFqQlZhakVDL0lVRWdRQUNBQ3YvOUFLdUEzVUFRQUJJQUFCRklpNENOVFEwTnpNR0ZCVVVGaFl6TWo0RE5UUXVCalUwUGdJek1oNENGeFVqTlRRbUppTWlCZ1lWRkI0R0ZSUUdCZ0V6RnlNM013Y2pBWDlIZTEwMUFkRUJIRE1nREJzWkZRd2lPa2hPU0RvaU1sZHZQVDV0VkRBQnp4SW5JQjRwRkNJNlNFNUlPaUpQaWY2OWxtVTZaWmlHc2d3Vk0xdEZBZ2NFQkFjREhpQUxBUVVLRVEwVEZoQU9FeDR2UnpJOFZEUVlHVFJRTnd3RUVpQVVEQlVNRXhnUURoRWNMVUl3VldveEE0RlpXWVVBQUFJQUsvOHRBcTRDdkFCQUFGZ0FBRVVpTGdJMU5EUTNNd1lVRlJRV0ZqTXlQZ00xTkM0R05UUStBak15SGdJWEZTTTFOQ1ltSXlJR0JoVVVIZ1lWRkFZR0J5SW1KelV6TWpZMU5DWWpJemN6Qng0Q0ZSUU9BZ0YvUjN0ZE5RSFJBUnd6SUF3YkdSVU1JanBJVGtnNklqSlhiejArYlZRd0FjOFNKeUFlS1JRaU9raE9TRG9pVDRscUlrMFdhUklXRUJZb0ZHQUxFaWNhR1NZcURCVXpXMFVDQndRRUJ3TWVJQXNCQlFvUkRSTVdFQTRUSGk5SE1qeFVOQmdaTkZBM0RBUVNJQlFNRlF3VEdCQU9FUnd0UWpCVmFqSEhDUWM1QmhBUENZTkVBaE1sSHh3bEZBZ0FBZ0FyLy9RQ3JnTjFBRUFBU0FBQVJTSXVBalUwTkRjekJoUVZGQllXTXpJK0F6VTBMZ1kxTkQ0Q016SWVBaGNWSXpVMEppWWpJZ1lHRlJRZUJoVVVCZ1lCTnpNWEl5Y3pCd0YvUjN0ZE5RSFJBUnd6SUF3YkdSVU1JanBJVGtnNklqSlhiejArYlZRd0FjOFNKeUFlS1JRaU9raE9TRG9pVDRuK3ZZYXlocGhsT21VTUZUTmJSUUlIQkFRSEF4NGdDd0VGQ2hFTkV4WVFEaE1lTDBjeVBGUTBHQmswVURjTUJCSWdGQXdWREJNWUVBNFJIQzFDTUZWcU1RTDhoWVZaV1FBQ0FDdit0Z0t1QXJ3QVFBQk1BQUJGSWk0Q05UUTBOek1HRkJVVUZoWXpNajRETlRRdUJqVTBQZ0l6TWg0Q0Z4VWpOVFFtSmlNaUJnWVZGQjRHRlJRR0JnTTFNalkxSXpVekZSUUdCZ0YvUjN0ZE5RSFJBUnd6SUF3YkdSVU1JanBJVGtnNklqSlhiejArYlZRd0FjOFNKeUFlS1JRaU9raE9TRG9pVDRtOEtCOUhtQjFEREJVelcwVUNCd1FFQndNZUlBc0JCUW9SRFJNV0VBNFRIaTlITWp4VU5CZ1pORkEzREFRU0lCUU1GUXdUR0JBT0VSd3RRakJWYWpIK3drRWZLSXR3UEVnZi8vOEFLLzgrQXE0Q3ZBWW1BSmdBQUFBSEF1SUJHZ0FBQUFFQVNnQUFBejRDdkFBdkFBQnpFVFEyTmpNeUhnSVZGQVlHQnhVV0ZoVVVCZ1lqSVRVek1qWTJOVFFtSmlNak5UTXlOalUwSmlNaUJnWVZFVXBVcllaQmVXQTRHeWdUTmpzMlkwYisvN29ZSGc4UEhoaTZtU1VuUDBVK1FoZ0JrVnVHU2hVdVNUTXJQQ2NOQ1E5UVBUWlZNcUFMRmhJVUZ3cVBLQjBwSHlSRU12NTJBQUlBTHYvMEF4UUN2QUFkQUNjQUFFVWlMZ0kxTlNFMEppWWpJZzRDQnlNK0F6TXlGaFlWRkFZR0p6STJOalVoRkI0Q0FhQlRpR0kxQWdRaFF6TWdNeVVVQXQ4RlBHT0NUSGFtV0ZpbWRpaEFKdjdsRlNjekREQmNoRlVyUGtvaUR4MHBHMEJnUHg5UW5uWjFuMUNsSERNaUdpb2RFQUFCQUJjQUFBSzNBckFBQndBQWN4RWpOU0VWSXhINTRnS2c0UUlBc0xEK0FBQUFBZ0FYQUFBQ3R3S3dBQWNBQ3dBQWN4RWpOU0VWSXhFbE5TRVYrZUlDb09IK3VRR3lBZ0N3c1A0QS8zWjJBQUlBRndBQUFyY0RkUUFIQUE4QUFITVJJelVoRlNNUkFUTVhJemN6QnlQNTRnS2c0ZjYwbG1VNlpaaUdzZ0lBc0xEK0FBTjFXVm1GQUFBQ0FCZi9MUUszQXJBQUJ3QWZBQUJ6RVNNMUlSVWpFUWNpSmljMU16STJOVFFtSXlNM013Y2VBaFVVRGdMNTRnS2c0V2dpVFJacEVoWVFGaWdVWUFzU0p4b1pKaW9DQUxDdy9nRFRDUWM1QmhBUENZTkVBaE1sSHh3bEZBZ0FBZ0FYL3JZQ3R3S3dBQWNBRXdBQWN4RWpOU0VWSXhFRE5USTJOU00xTXhVVUJnYjU0Z0tnNGJvb0gwZVlIVU1DQUxDdy9nRCt0a0VmS0l0d1BFZ2ZBQUlBRi84K0FyY0NzQUFIQUFzQUFITVJJelVoRlNNUkJ6VXpGZm5pQXFEaHVwZ0NBTEN3L2dEQ2hvWUFBUUJLLy9RQzl3S3dBQk1BQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0FhRnNtVkxkUEQwOVBkMVJtUXhCZ1Y4Qm0vNW9OMGhJTndHWS9tVmZnVUVBQWdCSy8vUUM5d04xQUJNQUdBQUFSU0ltSmpVUk14RVVGak15TmpVUk14RVVCZ1lETnpNWEJ3R2hiSmxTM1R3OVBUM2RVWm5KWE5BQ29BeEJnVjhCbS81b04waElOd0dZL21WZmdVRUMvSVVFZ1FBQUFnQksvL1FDOXdOMUFCTUFKUUFBUlNJbUpqVVJNeEVVRmpNeU5qVVJNeEVVQmdZRElpWW1OVE1lQWpNeU5qWTNNeFFHQmdHaGJKbFMzVHc5UFQzZFVabHJPbElzWUFJWEp4Z1pKeGdDWHkxVERFR0JYd0diL21nM1NFZzNBWmorWlYrQlFRTHhMRU1oQ2hnUUVCZ0tJVU1zQUFBQ0FFci85QUwzQTNVQUV3QWJBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmdFekZ5TTNNd2NqQWFGc21WTGRQRDA5UGQxUm1mNjNsbVU2WlppR3NneEJnVjhCbS81b04waElOd0dZL21WZmdVRURnVmxaaFFBQ0FFci85QUwzQTNVQUV3QWJBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmdFM014Y2pKek1IQWFGc21WTGRQRDA5UGQxUm1mNjNocktHbUdVNlpReEJnVjhCbS81b04waElOd0dZL21WZmdVRUMvSVdGV1ZrQUFBTUFTdi8wQXZjRGRRQVRBQmdBSFFBQVJTSW1KalVSTXhFVUZqTXlOalVSTXhFVUJnWURKemN6RnlFbk56TVhBYUZzbVZMZFBEMDlQZDFSbVNLTEFyeE0vcHFMQXJ4TURFR0JYd0diL21nM1NFZzNBWmorWlYrQlFRTDhnUVNGZ1FTRkFBQURBRXIvOUFMM0EzVUFFd0FYQUJzQUFFVWlKaVkxRVRNUkZCWXpNalkxRVRNUkZBWUdBVFV6RlRNMU14VUJvV3laVXQwOFBUMDkzVkdaL3R1WVJKZ01RWUZmQVp2K2FEZElTRGNCbVA1bFg0RkJBdmFMaTR1TEFBQUVBRXIvOUFMM0JDc0FFd0FYQUJzQUlBQUFSU0ltSmpVUk14RVVGak15TmpVUk14RVVCZ1lCTlRNVk16VXpGU1UzTXhjSEFhRnNtVkxkUEQwOVBkMVJtZjdibUVTWS91aGMwQUtnREVHQlh3R2IvbWczU0VnM0FaaitaVitCUVFMMmk0dUxpN3lGQklFQUJBQksvL1FDOXdRckFCTUFGd0FiQUNNQUFFVWlKaVkxRVRNUkZCWXpNalkxRVRNUkZBWUdBVFV6RlRNMU14VUJNeGNqTnpNSEl3R2hiSmxTM1R3OVBUM2RVWm4rMjVoRW1QNW9sbVU2WlppR3NneEJnVjhCbS81b04waElOd0dZL21WZmdVRUM5b3VMaTRzQlFWbFpoUUFBQkFCSy8vUUM5d1FyQUJNQUZ3QWJBQ0FBQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0FUVXpGVE0xTXhVbkl5YzNNd0doYkpsUzNUdzlQVDNkVVpuKzI1aEVtRXFPb0FMUURFR0JYd0diL21nM1NFZzNBWmorWlYrQlFRTDJpNHVMaTd5QkJBQUVBRXIvOUFMM0JBUUFFd0FYQUJzQUh3QUFSU0ltSmpVUk14RVVGak15TmpVUk14RVVCZ1lCTlRNVk16VXpGU1UxSVJVQm9XeVpVdDA4UFQwOTNWR1ovdHVZUkpqK3B3RTlERUdCWHdHYi9tZzNTRWczQVpqK1pWK0JRUUwyaTR1TGk3WmtaQUFDQUVyL1BnTDNBckFBRXdBWEFBQkZJaVltTlJFekVSUVdNekkyTlJFekVSUUdCZ2MxTXhVQm9XeVpVdDA4UFQwOTNWR1p1WmdNUVlGZkFadithRGRJU0RjQm1QNWxYNEZCdG9hR0FBQUNBRXIvOUFMM0EzVUFFd0FZQUFCRklpWW1OUkV6RVJRV016STJOUkV6RVJRR0JoTWpKemN6QWFGc21WTGRQRDA5UGQxUm1RV09vQUxRREVHQlh3R2IvbWczU0VnM0FaaitaVitCUVFMOGdRUUFBZ0JLLy9RQzl3T0JBQk1BTEFBQVJTSW1KalVSTXhFVUZqTXlOalVSTXhFVUJnWUROVE15TmpVMEppTWpOVDRDTXpJZUFoVVVCZ1lIRlFHaGJKbFMzVHc5UFQzZFVabVRDeElNRWhFNkRDSWpEQklzSnhvYUtCY01RWUZmQVp2K2FEZElTRGNCbVA1bFg0RkJBdmc0QndvTEJqTURBd0lIRHhrVEV4a01BaGtBQUFJQVN2LzBBM3NEZWdBVEFCOEFBRVVpSmlZMUVUTVJGQll6TWpZMUVUTVJGQVlHRXpVeU5qY2pOVE1WRkFZR0FhRnNtVkxkUEQwOVBkMVJtWllwT1FoR3REQmdERUdCWHdHYi9tZzNTRWczQVpqK1pWK0JRUUpsVnhzY2sxZEFXeThBQXdCSy8vUURld042QUJNQUh3QWtBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmhNMU1qWTNJelV6RlJRR0JpVTNNeGNIQWFGc21WTGRQRDA5UGQxUm1aWXBPUWhHdERCZy9sbGMwQUtnREVHQlh3R2IvbWczU0VnM0FaaitaVitCUVFKbFZ4c2NrMWRBV3krWGhRU0JBQUFEQUVyL1BnTjdBM29BRXdBZkFDTUFBRVVpSmlZMUVUTVJGQll6TWpZMUVUTVJGQVlHRXpVeU5qY2pOVE1WRkFZR0FUVXpGUUdoYkpsUzNUdzlQVDNkVVptV0tUa0lSclF3WVA1cG1BeEJnVjhCbS81b04waElOd0dZL21WZmdVRUNaVmNiSEpOWFFGc3YvT1dHaGdBQUF3QksvL1FEZXdONkFCTUFId0FrQUFCRklpWW1OUkV6RVJRV016STJOUkV6RVJRR0JoTTFNalkzSXpVekZSUUdCaWNqSnpjekFhRnNtVkxkUEQwOVBkMVJtWllwT1FoR3REQmcyWTZnQXRBTVFZRmZBWnYrYURkSVNEY0JtUDVsWDRGQkFtVlhHeHlUVjBCYkw1ZUJCQUFBQXdCSy8vUURld09CQUJNQUh3QTRBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmhNMU1qWTNJelV6RlJRR0JpVTFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWQWFGc21WTGRQRDA5UGQxUm1aWXBPUWhHdERCZy9vOExFZ3dTRVRvTUlpTU1FaXduR2hvb0Z3eEJnVjhCbS81b04waElOd0dZL21WZmdVRUNaVmNiSEpOWFFGc3ZremdIQ2dzR013TURBZ2NQR1JNVEdRd0NHUUFBQXdCSy8vUURld042QUJNQUh3QTNBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmhNMU1qWTNJelV6RlJRR0JpVTBOall6TWhZV016STJOek1VQmdZaklpWW1JeUlHQndHaGJKbFMzVHc5UFQzZFVabVdLVGtJUnJRd1lQM1pJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GREVHQlh3R2IvbWczU0VnM0FaaitaVitCUVFKbFZ4c2NrMWRBV3krTkpFSXBGQlFYRVNSQktoUVVGeEVBQXdCSy8vUUM5d04xQUJNQUdBQWRBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmdNM014Y0hJVGN6RndjQm9XeVpVdDA4UFQwOTNWR1pPMHk4QW92K21reThBb3NNUVlGZkFadithRGRJU0RjQm1QNWxYNEZCQXZ5RkJJR0ZCSUVBQUFJQVN2LzBBdmNEZFFBVEFDVUFBRVVpSmlZMUVUTVJGQll6TWpZMUVUTVJGQVlHQVRRMk5qTXlGaFlWSXk0Q0l5SUdCZ2NCb1d5WlV0MDhQVDA5M1ZHWi90MHRWRGc2VWl4Z0FoY21HUmdvR0FJTVFZRmZBWnYrYURkSVNEY0JtUDVsWDRGQkF2RWlRaXdzUWlJTEZ4QVFGd3NBQWdCSy8vUUM5d05PQUJNQUZ3QUFSU0ltSmpVUk14RVVGak15TmpVUk14RVVCZ1lCTlNFVkFhRnNtVkxkUEQwOVBkMVJtZjcyQVQwTVFZRmZBWnYrYURkSVNEY0JtUDVsWDRGQkF2WmtaQUFDQUVyL0xRTDNBckFBRXdBbkFBQkZJaVltTlJFekVSUVdNekkyTlJFekVSUUdCaGNpSmlZMU5EWTNNeFVHQmhVVUZqTXpGUVlHQWFGc21WTGRQRDA5UGQxUm1Rc2dPaVFoRVdvU0Vob2FQQmM2REVHQlh3R2IvbWczU0VnM0FaaitaVitCUWNjWE1pa2xNeFVFRENjVEZ5Tk1Cd2dBQXdCSy8vUUM5d093QUJNQUh3QXJBQUJGSWlZbU5SRXpFUlFXTXpJMk5SRXpFUlFHQmdNaUpqVTBOak15RmhVVUJpY3lOalUwSmlNaUJoVVVGZ0doYkpsUzNUdzlQVDNkVVpsck1rSkNNakpDUWpJUkZ4Y1JFUmNYREVHQlh3R2IvbWczU0VnM0FaaitaVitCUVFMalBTOHZQajR2THoxSEZoQVFGQlVSRUJRQUFBSUFTdi8wQXZjRGRRQVRBQ3NBQUVVaUppWTFFVE1SRkJZek1qWTFFVE1SRkFZR0FUUTJOak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIQWFGc21WTGRQRDA5UGQxUm1mNjNJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GREVHQlh3R2IvbWczU0VnM0FaaitaVitCUVFMeUpFSXBGQlFYRVNSQktoUVVGeEVBQUFFQUVRQUFBdmdDc0FBUEFBQmhBek1USGdJWE16NENOeE16QXdFRjlPeGZCQTRSQmdnR0VBOEVZT0x6QXJEK3dnMHlPQmNWTmpNUUFUNzlVQUFBQVFBRkFBQUQ0d0t3QUNrQUFITURNeE1lQWhjelBnTTNFek1USGdJWE16NEROeE16QXlNRExnSW5JdzRDQndPbW9lWThBZ1lJQXdRQ0JRVUZBanZhUHdJSENBTUVBZ1VFQlFJNDNLSHpSQUlJQ0FNRUF3Y0lBMFFDc1A3YUNDRW5FQWtaR2hvS0FTYisyZ29pSlE4S0dSb1pDZ0VtL1ZBQlFnMGpKQTBNSXlNUC9yNEFBZ0FGQUFBRDR3TjFBQ2tBTGdBQWN3TXpFeDRDRnpNK0F6Y1RNeE1lQWhjelBnTTNFek1ESXdNdUFpY2pEZ0lIQXdNM014Y0hwcUhtUEFJR0NBTUVBZ1VGQlFJNzJqOENCd2dEQkFJRkJBVUNPTnloODBRQ0NBZ0RCQU1IQ0FORUFWelFBcUFDc1A3YUNDRW5FQWtaR2hvS0FTYisyZ29pSlE4S0dSb1pDZ0VtL1ZBQlFnMGpKQTBNSXlNUC9yNEM4SVVFZ1FBQUFnQUZBQUFENHdOMUFDa0FNUUFBY3dNekV4NENGek0rQXpjVE14TWVBaGN6UGdNM0V6TURJd011QWljakRnSUhBd00zTXhjakp6TUhwcUhtUEFJR0NBTUVBZ1VGQlFJNzJqOENCd2dEQkFJRkJBVUNPTnloODBRQ0NBZ0RCQU1IQ0FORWdZYXlocGhsT21VQ3NQN2FDQ0VuRUFrWkdob0tBU2IrMmdvaUpROEtHUm9aQ2dFbS9WQUJRZzBqSkEwTUl5TVAvcjRDOElXRldWa0FBd0FGQUFBRDR3TjFBQ2tBTFFBeEFBQnpBek1USGdJWE16NEROeE16RXg0Q0Z6TStBemNUTXdNakF5NENKeU1PQWdjREF6VXpGVE0xTXhXbW9lWThBZ1lJQXdRQ0JRVUZBanZhUHdJSENBTUVBZ1VFQlFJNDNLSHpSQUlJQ0FNRUF3Y0lBMFJkbUVTWUFyRCsyZ2doSnhBSkdSb2FDZ0VtL3RvS0lpVVBDaGthR1FvQkp2MVFBVUlOSXlRTkRDTWpELzYrQXVxTGk0dUxBQUlBQlFBQUErTURkUUFwQUM0QUFITURNeE1lQWhjelBnTTNFek1USGdJWE16NEROeE16QXlNRExnSW5JdzRDQndNVEl5YzNNNmFoNWp3Q0JnZ0RCQUlGQlFVQ085by9BZ2NJQXdRQ0JRUUZBampjb2ZORUFnZ0lBd1FEQndnRFJNMk9vQUxRQXJEKzJnZ2hKeEFKR1JvYUNnRW0vdG9LSWlVUENoa2FHUW9CSnYxUUFVSU5JeVFORENNakQvNitBdkNCQkFBQkFBUUFBQU1LQXJBQURRQUFjeE1ESVJjek56TURFeUVuSXdjRTl0NEJDMmdFYWZmZjl2NzBmd1IvQVd3QlJMQ3cvcnYrbGRiV0FBRUFCd0FBQXdJQ3NBQUpBQUJoRVFFekZ6TTNNd0VSQVJqKzcvNkVCSVR4L3ZNQkN3R2w1ZVgrVy83MUFBQUNBQWNBQUFNQ0EzVUFDUUFPQUFCaEVRRXpGek0zTXdFUkF6Y3pGd2NCR1A3di9vUUVoUEgrODhaYzBBS2dBUXNCcGVYbC9sdis5UUx3aFFTQkFBSUFCd0FBQXdJRGRRQUpBQkVBQUdFUkFUTVhNemN6QVJFQk56TVhJeWN6QndFWS91LytoQVNFOGY3ei9ycUdzb2FZWlRwbEFRc0JwZVhsL2x2KzlRTHdoWVZaV1FBREFBY0FBQU1DQTNVQUNRQU5BQkVBQUdFUkFUTVhNemN6QVJFQk5UTVZNelV6RlFFWS91LytoQVNFOGY3ei90NllSSmdCQ3dHbDVlWCtXLzcxQXVxTGk0dUxBQUlBQi84K0F3SUNzQUFKQUEwQUFHRVJBVE1YTXpjekFSRUhOVE1WQVJqKzcvNkVCSVR4L3ZPMm1BRUxBYVhsNWY1Yi92WENob1lBQWdBSEFBQURBZ04xQUFrQURnQUFZUkVCTXhjek56TUJFUk1qSnpjekFSais3LzZFQklUeC92TUlqcUFDMEFFTEFhWGw1ZjViL3ZVQzhJRUVBQUFDQUFjQUFBTUNBNEVBQ1FBaUFBQmhFUUV6RnpNM013RVJBelV6TWpZMU5DWWpJelUrQWpNeUhnSVZGQVlHQnhVQkdQN3Yvb1FFaFBIKzg1QUxFZ3dTRVRvTUl5SU1FaXduR2hvb0Z3RUxBYVhsNWY1Yi92VUM3RGdIQ2dzR013TURBZ2NQR1JNVEdRd0NHUUFDQUFjQUFBTUNBMDRBQ1FBTkFBQmhFUUV6RnpNM013RVJBVFVoRlFFWS91LytoQVNFOGY3ei92a0JQUUVMQWFYbDVmNWIvdlVDNm1Sa0FBQUNBQWNBQUFNQ0EzVUFDUUFoQUFCaEVRRXpGek0zTXdFUkFUUTJOak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIQVJqKzcvNkVCSVR4L3ZQK3VpTS9LaUE3TnhzVEdnVlJJejhxSURzM0d4TWFCUUVMQWFYbDVmNWIvdlVDNWlSQ0tSUVVGeEVrUVNvVUZCY1JBQUVBR0FBQUFyTUNzQUFKQUFCek5RRWhOU0VWQVNFVkdBRS8vdGtDZS83QkFVZEhBY1NsUi80OHBRQUFBZ0FZQUFBQ3N3TjFBQWtBRGdBQWN6VUJJVFVoRlFFaEZRRTNNeGNIR0FFLy90a0NlLzdCQVVmK1cxelFBcUJIQWNTbFIvNDhwUUx3aFFTQkFBQUNBQmdBQUFLekEzVUFDUUFSQUFCek5RRWhOU0VWQVNFVkFUTVhJemN6QnlNWUFULysyUUo3L3NFQlIvM2JsbVU2WlppR3NrY0J4S1ZIL2p5bEEzVlpXWVVBQUFJQUdBQUFBck1EZFFBSkFBMEFBSE0xQVNFMUlSVUJJUlVCTlRNVkdBRS8vdGtDZS83QkFVZitiNWhIQWNTbFIvNDhwUUxxaTRzQUFRQkYvL1FDeGdLd0FDZ0FBRVVpSmlZMU5UTVVGaFl6TWpZMk5UVWpCZ1lqSWlZbU5SRXpGUlFXTXpJMk5qVTFNeEVVRGdJQmFsU0ZUTjBTS2lRcUx4UUhHbFE0U0hOQzNTMHZLUzhUM1ROZWZ3d2lUVDRlRWhVSkZDb2hMaVVoS1Z4S0FRdlNNekloUnptVy9rUkdZVDBjQUFBQ0FFWC85QUxHQTNVQUtBQXRBQUJGSWlZbU5UVXpGQllXTXpJMk5qVTFJd1lHSXlJbUpqVVJNeFVVRmpNeU5qWTFOVE1SRkE0Q0F6Y3pGd2NCYWxTRlROMFNLaVFxTHhRSEdsUTRTSE5DM1MwdktTOFQzVE5lZjQ5YzBBS2dEQ0pOUGg0U0ZRa1VLaUV1SlNFcFhFb0JDOUl6TWlGSE9aYitSRVpoUFJ3Qy9JVUVnUUFDQUVYLzlBTEdBM1VBS0FBd0FBQkZJaVltTlRVekZCWVdNekkyTmpVMUl3WUdJeUltSmpVUk14VVVGak15TmpZMU5UTVJGQTRDQVRjekZ5TW5Nd2NCYWxTRlROMFNLaVFxTHhRSEdsUTRTSE5DM1MwdktTOFQzVE5lZi83eGhyS0dtR1U2WlF3aVRUNGVFaFVKRkNvaExpVWhLVnhLQVF2U016SWhSem1XL2tSR1lUMGNBdnlGaFZsWkFBTUFSZi8wQXNZRGRRQW9BQ3dBTUFBQVJTSW1KalUxTXhRV0ZqTXlOalkxTlNNR0JpTWlKaVkxRVRNVkZCWXpNalkyTlRVekVSUU9BZ00xTXhVek5UTVZBV3BVaFV6ZEVpb2tLaThVQnhwVU9FaHpRdDB0THlrdkU5MHpYbi9ybUVTWURDSk5QaDRTRlFrVUtpRXVKU0VwWEVvQkM5SXpNaUZIT1piK1JFWmhQUndDOW91TGk0c0FBQUlBUmYvMEFzWURkUUFvQUMwQUFFVWlKaVkxTlRNVUZoWXpNalkyTlRVakJnWWpJaVltTlJFekZSUVdNekkyTmpVMU14RVVEZ0lUSXljM013RnFWSVZNM1JJcUpDb3ZGQWNhVkRoSWMwTGRMUzhwTHhQZE0xNS9QNDZnQXRBTUlrMCtIaElWQ1JRcUlTNGxJU2xjU2dFTDBqTXlJVWM1bHY1RVJtRTlIQUw4Z1FRQUFBSUFSZi8wQXNZRFRnQW9BQ3dBQUVVaUppWTFOVE1VRmhZek1qWTJOVFVqQmdZaklpWW1OUkV6RlJRV016STJOalUxTXhFVURnSUROU0VWQVdwVWhVemRFaW9rS2k4VUJ4cFVPRWh6UXQwdEx5a3ZFOTB6WG4vUUFUME1JazArSGhJVkNSUXFJUzRsSVNsY1NnRUwwak15SVVjNWx2NUVSbUU5SEFMMlpHUUFBZ0JGLy9RQ3hnTjFBQ2dBUUFBQVJTSW1KalUxTXhRV0ZqTXlOalkxTlNNR0JpTWlKaVkxRVRNVkZCWXpNalkyTlRVekVSUU9BZ0UwTmpZek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0J3RnFWSVZNM1JJcUpDb3ZGQWNhVkRoSWMwTGRMUzhwTHhQZE0xNS8vdkVqUHlvZ096Y2JFeG9GVVNNL0tpQTdOeHNUR2dVTUlrMCtIaElWQ1JRcUlTNGxJU2xjU2dFTDBqTXlJVWM1bHY1RVJtRTlIQUx5SkVJcEZCUVhFU1JCS2hRVUZ4RUFBZ0F0Ly9RQzNRTjFBQ0VBSmdBQVJTSW1KalUwTmpNeUZoWVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFHQmdNM014Y0hBWkoxbjFHMXNHU1ZVdE1jTlNndk9Sb2JPQzBzT1IzTVRwU3ZHS1VFT2d4UW4zV3d0RU9FWUNnNklDaElMMEF2U0NnZU9TZGVna01DL0lVS2V3QUNBRW9BQUFMM0EzVUFHQUFkQUFCekVUTVhIZ0lYTnlZME5UVXpFU01ESmlZbkJ4WVVGUkVUTnpNWEIwcTgxZ2tlSHdnRkFjbTc4UkVZQ3dVQlVoaWxCRG9Dc1BjS0ppY01BaHczRHZmOVVBRVRGQ0VQQWhNbUNmN3RBdkNGQ25zQUFBTUFMZi8wQXhRRGRRQVBBQ1VBS2dBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeVBnSTFOVFF1QWlNaURnSVZGUlFlQWdNM014Y0hBYUIxcGxoWXBuVjJwbGhZcG5Za055VVNFaVUzSkNRM0pCSVNKRGNZR0tVRU9neFFuM1YybmxCUW5uWjFuMUNsRnlvN0kwQWpPeW9YRnlvN0kwQWpPeW9YQWxlRkNuc0FBZ0FyLy9RQ3JnTjFBRUFBUlFBQVJTSXVBalUwTkRjekJoUVZGQllXTXpJK0F6VTBMZ1kxTkQ0Q016SWVBaGNWSXpVMEppWWpJZ1lHRlJRZUJoVVVCZ1lETnpNWEJ3Ri9SM3RkTlFIUkFSd3pJQXdiR1JVTUlqcElUa2c2SWpKWGJ6MCtiVlF3QWM4U0p5QWVLUlFpT2toT1NEb2lUNG1oR0tVRU9nd1ZNMXRGQWdjRUJBY0RIaUFMQVFVS0VRMFRGaEFPRXg0dlJ6SThWRFFZR1RSUU53d0VFaUFVREJVTUV4Z1FEaEVjTFVJd1ZXb3hBdnlGQ25zQUFnQVlBQUFDc3dOMUFBa0FEZ0FBY3pVQklUVWhGUUVoRlFFM014Y0hHQUUvL3RrQ2UvN0JBVWYrZlJpbEJEcEhBY1NsUi80OHBRTHdoUXA3QUFBQ0FCNy85QUtXQWh3QU1RQS9BQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkZSUVdNek1WQmdZaklpWW1KeU1PQWpjeVBnSTFOU0lHQmhVVUZoYllLVVF5R3pGZWgxY1ZJaFlSSkJmRUFUOTdXa2w4VEJBUUpBdzNKU2c4SlFjSEZUZEdKQk1qSEJBN1NTSVVId3dQSXprcE8wb29EeG9XR3c0SUZCSUVCQVlFTVVrcElFdEJ6aEFYY3djTkVCNFVFeDRSZkFzVEd4QXRFaDRVRkJZSUFBQURBQjcvOUFLV0F0TUFNUUEvQUVRQUFGY2lMZ0kxTkQ0Q016VTBKaVlqSWdZR0ZSVWpKalExTkRZMk16SVdGaFVWRkJZek14VUdCaU1pSmlZbkl3NENOekkrQWpVMUlnWUdGUlFXRmdNM014Y0gyQ2xFTWhzeFhvZFhGU0lXRVNRWHhBRS9lMXBKZkV3UUVDUU1OeVVvUENVSEJ4VTNSaVFUSXh3UU8wa2lGQjg4WE1zQ29Bd1BJemtwTzBvb0R4b1dHdzRJRkJJRUJBWUVNVWtwSUV0QnpoQVhjd2NORUI0VUV4NFJmQXNUR3hBdEVoNFVGQllJQWQ2RkJJRUFBd0FlLy9RQ2xnTFRBREVBUHdCUkFBQlhJaTRDTlRRK0FqTTFOQ1ltSXlJR0JoVVZJeVkwTlRRMk5qTXlGaFlWRlJRV016TVZCZ1lqSWlZbUp5TU9BamN5UGdJMU5TSUdCaFVVRmhZVElpWW1OVE1lQWpNeU5qWTNNeFFHQnRncFJESWJNVjZIVnhVaUZoRWtGOFFCUDN0YVNYeE1FQkFrRERjbEtEd2xCd2NWTjBZa0V5TWNFRHRKSWhRZkp6bFRMR0FESENjU0dTY1lBbDh0VXd3UEl6a3BPMG9vRHhvV0d3NElGQklFQkFZRU1Va3BJRXRCemhBWGN3Y05FQjRVRXg0UmZBc1RHeEF0RWg0VUZCWUlBZE1zUXlFT0Z3MFFHQW9oUXl3QUJBQWUvL1FDbGdPSkFERUFQd0JSQUZZQUFGY2lMZ0kxTkQ0Q016VTBKaVlqSWdZR0ZSVWpKalExTkRZMk16SVdGaFVWRkJZek14VUdCaU1pSmlZbkl3NENOekkrQWpVMUlnWUdGUlFXRmhNaUppWTFNeDRDTXpJMk5qY3pGQVlHSnpjekZ3ZllLVVF5R3pGZWgxY1ZJaFlSSkJmRUFUOTdXa2w4VEJBUUpBdzNKU2c4SlFjSEZUZEdKQk1qSEJBN1NTSVVIeWM1VXl4Z0F4d25FaGtuR0FKZkxWT2NYTXNDb0F3UEl6a3BPMG9vRHhvV0d3NElGQklFQkFZRU1Va3BJRXRCemhBWGN3Y05FQjRVRXg0UmZBc1RHeEF0RWg0VUZCWUlBZE1zUXlFT0Z3MFFHQW9oUXl6QmhRU0JBQVFBSHY4K0FwWUMwd0F4QUQ4QVF3QlZBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkZSUVdNek1WQmdZaklpWW1KeU1PQWpjeVBnSTFOU0lHQmhVVUZoWUROVE1WQXlJbUpqVXpIZ0l6TWpZMk56TVVCZ2JZS1VReUd6RmVoMWNWSWhZUkpCZkVBVDk3V2tsOFRCQVFKQXczSlNnOEpRY0hGVGRHSkJNakhCQTdTU0lVSHlhWVN6bFRMR0FESENjU0dTY1lBbDh0VXd3UEl6a3BPMG9vRHhvV0d3NElGQklFQkFZRU1Va3BJRXRCemhBWGN3Y05FQjRVRXg0UmZBc1RHeEF0RWg0VUZCWUkvczZHaGdNRkxFTWhEaGNORUJnS0lVTXNBQVFBSHYvMEFwWURpUUF4QUQ4QVVRQldBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkZSUVdNek1WQmdZaklpWW1KeU1PQWpjeVBnSTFOU0lHQmhVVUZoWVRJaVltTlRNZUFqTXlOalkzTXhRR0JqY2pKemN6MkNsRU1oc3hYb2RYRlNJV0VTUVh4QUUvZTFwSmZFd1FFQ1FNTnlVb1BDVUhCeFUzUmlRVEl4d1FPMGtpRkI4bk9WTXNZQU1jSnhJWkp4Z0NYeTFUSzRtZ0Fzc01EeU01S1R0S0tBOGFGaHNPQ0JRU0JBUUdCREZKS1NCTFFjNFFGM01IRFJBZUZCTWVFWHdMRXhzUUxSSWVGQlFXQ0FIVExFTWhEaGNORUJnS0lVTXN3WUVFQUFBRUFCNy85QUtXQTVnQU1RQS9BRkVBYWdBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUlVVRmpNekZRWUdJeUltSmljakRnSTNNajRDTlRVaUJnWVZGQllXRXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1luTlRNeU5qVTBKaU1qTlQ0Q016SWVBaFVVQmdZSEZkZ3BSREliTVY2SFZ4VWlGaEVrRjhRQlAzdGFTWHhNRUJBa0REY2xLRHdsQndjVk4wWWtFeU1jRUR0SkloUWZKemxUTEdBREhDY1NHU2NZQWw4dFUxOExFZ3dTRVRvTUlpTU1FaXduR2hvb0Z3d1BJemtwTzBvb0R4b1dHdzRJRkJJRUJBWUVNVWtwSUV0QnpoQVhjd2NORUI0VUV4NFJmQXNUR3hBdEVoNFVGQllJQWRNc1F5RU9GdzBRR0FvaFF5ekFPQWNLQ3dZekF3TUNCdzhaRXhNWkRBSVpBQVFBSHYvMEFwWURpUUF4QUQ4QVVRQnBBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkZSUVdNek1WQmdZaklpWW1KeU1PQWpjeVBnSTFOU0lHQmhVVUZoWVRJaVltTlRNZUFqTXlOalkzTXhRR0JpVTBOall6TWhZV016STJOek1VQmdZaklpWW1JeUlHQjlncFJESWJNVjZIVnhVaUZoRWtGOFFCUDN0YVNYeE1FQkFrRERjbEtEd2xCd2NWTjBZa0V5TWNFRHRKSWhRZkp6bFRMR0FESENjU0dTY1lBbDh0VS83cUl6OHFJRHMzR3hNYUJWRWpQeW9nT3pjYkV4b0ZEQThqT1NrN1NpZ1BHaFliRGdnVUVnUUVCZ1F4U1NrZ1MwSE9FQmR6QncwUUhoUVRIaEY4Q3hNYkVDMFNIaFFVRmdnQjB5eERJUTRYRFJBWUNpRkRMTGNrUWlrVUZCY1JKRUVxRkJRWEVRQURBQjcvOUFLV0F0TUFNUUEvQUVjQUFGY2lMZ0kxTkQ0Q016VTBKaVlqSWdZR0ZSVWpKalExTkRZMk16SVdGaFVWRkJZek14VUdCaU1pSmlZbkl3NENOekkrQWpVMUlnWUdGUlFXRmdNekZ5TTNNd2NqMkNsRU1oc3hYb2RYRlNJV0VTUVh4QUUvZTFwSmZFd1FFQ1FNTnlVb1BDVUhCeFUzUmlRVEl4d1FPMGtpRkIreGtXVTZaWk9HcUF3UEl6a3BPMG9vRHhvV0d3NElGQklFQkFZRU1Va3BJRXRCemhBWGN3Y05FQjRVRXg0UmZBc1RHeEF0RWg0VUZCWUlBbU5aV1lVQUF3QWUvL1FDbGdMVEFERUFQd0JIQUFCWElpNENOVFErQWpNMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUZoWVZGUlFXTXpNVkJnWWpJaVltSnlNT0FqY3lQZ0kxTlNJR0JoVVVGaFlETnpNWEl5Y3pCOWdwUkRJYk1WNkhWeFVpRmhFa0Y4UUJQM3RhU1h4TUVCQWtERGNsS0R3bEJ3Y1ZOMFlrRXlNY0VEdEpJaFFmc1lhb2hwTmxPbVVNRHlNNUtUdEtLQThhRmhzT0NCUVNCQVFHQkRGSktTQkxRYzRRRjNNSERSQWVGQk1lRVh3TEV4c1FMUkllRkJRV0NBSGVoWVZaV1FBQUJBQWUvL1FDbGdPSkFERUFQd0JIQUV3QUFGY2lMZ0kxTkQ0Q016VTBKaVlqSWdZR0ZSVWpKalExTkRZMk16SVdGaFVWRkJZek14VUdCaU1pSmlZbkl3NENOekkrQWpVMUlnWUdGUlFXRmdNM014Y2pKek1ISnpjekZ3ZllLVVF5R3pGZWgxY1ZJaFlSSkJmRUFUOTdXa2w4VEJBUUpBdzNKU2c4SlFjSEZUZEdKQk1qSEJBN1NTSVVIN0dHcUlhVFpUcGxIRnpMQXFBTUR5TTVLVHRLS0E4YUZoc09DQlFTQkFRR0JERkpLU0JMUWM0UUYzTUhEUkFlRkJNZUVYd0xFeHNRTFJJZUZCUVdDQUhlaFlWWldiYUZCSUVBQUFRQUh2OCtBcFlDMHdBeEFEOEFRd0JMQUFCWElpNENOVFErQWpNMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUZoWVZGUlFXTXpNVkJnWWpJaVltSnlNT0FqY3lQZ0kxTlNJR0JoVVVGaFlETlRNVkFUY3pGeU1uTXdmWUtVUXlHekZlaDFjVkloWVJKQmZFQVQ5N1drbDhUQkFRSkF3M0pTZzhKUWNIRlRkR0pCTWpIQkE3U1NJVUh5YVkvdDJHcUlhVFpUcGxEQThqT1NrN1NpZ1BHaFliRGdnVUVnUUVCZ1F4U1NrZ1MwSE9FQmR6QncwUUhoUVRIaEY4Q3hNYkVDMFNIaFFVRmdqK3pvYUdBeENGaFZsWkFBUUFIdi8wQXBZRGlRQXhBRDhBUndCTUFBQlhJaTRDTlRRK0FqTTFOQ1ltSXlJR0JoVVZJeVkwTlRRMk5qTXlGaFlWRlJRV016TVZCZ1lqSWlZbUp5TU9BamN5UGdJMU5TSUdCaFVVRmhZRE56TVhJeWN6Qnpjakp6Y3oyQ2xFTWhzeFhvZFhGU0lXRVNRWHhBRS9lMXBKZkV3UUVDUU1OeVVvUENVSEJ4VTNSaVFUSXh3UU8wa2lGQit4aHFpR2syVTZaYXVKb0FMTERBOGpPU2s3U2lnUEdoWWJEZ2dVRWdRRUJnUXhTU2tnUzBIT0VCZHpCdzBRSGhRVEhoRjhDeE1iRUMwU0hoUVVGZ2dCM29XRldWbTJnUVFBQkFBZS8vUUNsZ09ZQURFQVB3QkhBR0FBQUZjaUxnSTFORDRDTXpVMEppWWpJZ1lHRlJVakpqUTFORFkyTXpJV0ZoVVZGQll6TXhVR0JpTWlKaVluSXc0Q056SStBalUxSWdZR0ZSUVdGZ00zTXhjakp6TUhOelV6TWpZMU5DWWpJelUrQWpNeUhnSVZGQVlHQnhYWUtVUXlHekZlaDFjVkloWVJKQmZFQVQ5N1drbDhUQkFRSkF3M0pTZzhKUWNIRlRkR0pCTWpIQkE3U1NJVUg3R0dxSWFUWlRwbElRc1NEQklST2d3aUl3d1NMQ2NhR2lnWERBOGpPU2s3U2lnUEdoWWJEZ2dVRWdRRUJnUXhTU2tnUzBIT0VCZHpCdzBRSGhRVEhoRjhDeE1iRUMwU0hoUVVGZ2dCM29XRldWbTFPQWNLQ3dZekF3TUNCdzhaRXhNWkRBSVpBQUFFQUI3LzlBS1dBNGtBTVFBL0FFY0FYd0FBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSVVVGak16RlFZR0l5SW1KaWNqRGdJM01qNENOVFVpQmdZVkZCWVdBemN6RnlNbk13Y25ORFkyTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdmWUtVUXlHekZlaDFjVkloWVJKQmZFQVQ5N1drbDhUQkFRSkF3M0pTZzhKUWNIRlRkR0pCTWpIQkE3U1NJVUg3R0dxSWFUWlRwbGxpTS9LaUE3TnhzVEdnVlJJejhxSURzM0d4TWFCUXdQSXprcE8wb29EeG9XR3c0SUZCSUVCQVlFTVVrcElFdEJ6aEFYY3djTkVCNFVFeDRSZkFzVEd4QXRFaDRVRkJZSUFkNkZoVmxackNSQ0tSUVVGeEVrUVNvVUZCY1JBQVFBR3YvMEFwWUMxQUF4QUQ4QVJBQkpBQUJYSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkZSUVdNek1WQmdZaklpWW1KeU1PQWpjeVBnSTFOU0lHQmhVVUZoWVRKemN6RnlFbk56TVgyQ2xFTWhzeFhvZFhGU0lXRVNRWHhBRS9lMXBKZkV3UUVDUU1OeVVvUENVSEJ4VTNSaVFUSXh3UU8wa2lGQjlnaXdLeVRQNjRpd0t5VEF3UEl6a3BPMG9vRHhvV0d3NElGQklFQkFZRU1Va3BJRXRCemhBWGN3Y05FQjRVRXg0UmZBc1RHeEF0RWg0VUZCWUlBZDZDQklhQ0JJWUFCQUFlLy9RQ2xnTFRBREVBUHdCREFFY0FBRmNpTGdJMU5ENENNelUwSmlZaklnWUdGUlVqSmpRMU5EWTJNeklXRmhVVkZCWXpNeFVHQmlNaUppWW5JdzRDTnpJK0FqVTFJZ1lHRlJRV0ZnTTFNeFV6TlRNVjJDbEVNaHN4WG9kWEZTSVdFU1FYeEFFL2UxcEpmRXdRRUNRTU55VW9QQ1VIQnhVM1JpUVRJeHdRTzBraUZCK1NtRVNZREE4ak9TazdTaWdQR2hZYkRnZ1VFZ1FFQmdReFNTa2dTMEhPRUJkekJ3MFFIaFFUSGhGOEN4TWJFQzBTSGhRVUZnZ0IySXVMaTRzQUFBTUFIdjgrQXBZQ0hBQXhBRDhBUXdBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUlVVRmpNekZRWUdJeUltSmljakRnSTNNajRDTlRVaUJnWVZGQllXQXpVekZkZ3BSREliTVY2SFZ4VWlGaEVrRjhRQlAzdGFTWHhNRUJBa0REY2xLRHdsQndjVk4wWWtFeU1jRUR0SkloUWZKcGdNRHlNNUtUdEtLQThhRmhzT0NCUVNCQVFHQkRGSktTQkxRYzRRRjNNSERSQWVGQk1lRVh3TEV4c1FMUkllRkJRV0NQN09ob1lBQUFNQUh2LzBBcFlDMHdBeEFEOEFSQUFBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSVVVGak16RlFZR0l5SW1KaWNqRGdJM01qNENOVFVpQmdZVkZCWVdFeU1uTnpQWUtVUXlHekZlaDFjVkloWVJKQmZFQVQ5N1drbDhUQkFRSkF3M0pTZzhKUWNIRlRkR0pCTWpIQkE3U1NJVUg0dUpvQUxMREE4ak9TazdTaWdQR2hZYkRnZ1VFZ1FFQmdReFNTa2dTMEhPRUJkekJ3MFFIaFFUSGhGOEN4TWJFQzBTSGhRVUZnZ0Izb0VFQUFBREFCNy85QUtXQXVJQU1RQS9BRmdBQUZjaUxnSTFORDRDTXpVMEppWWpJZ1lHRlJVakpqUTFORFkyTXpJV0ZoVVZGQll6TXhVR0JpTWlKaVluSXc0Q056SStBalUxSWdZR0ZSUVdGaE0xTXpJMk5UUW1JeU0xUGdJek1oNENGUlFHQmdjVjJDbEVNaHN4WG9kWEZTSVdFU1FYeEFFL2UxcEpmRXdRRUNRTU55VW9QQ1VIQnhVM1JpUVRJeHdRTzBraUZCOEJDeElNRWhFNkRDSWpEQklzSnhvYUtCY01EeU01S1R0S0tBOGFGaHNPQ0JRU0JBUUdCREZKS1NCTFFjNFFGM01IRFJBZUZCTWVFWHdMRXhzUUxSSWVGQlFXQ0FIZE9BY0tDd1l6QXdNQ0J3OFpFeE1aREFJWkFBTUFIdi8wQXBZQzB3QXhBRDhBVVFBQVZ5SXVBalUwUGdJek5UUW1KaU1pQmdZVkZTTW1ORFUwTmpZek1oWVdGUlVVRmpNekZRWUdJeUltSmljakRnSTNNajRDTlRVaUJnWVZGQllXRXpJV0ZoVWpMZ0lqSWdZR0J5TTBOamJZS1VReUd6RmVoMWNWSWhZUkpCZkVBVDk3V2tsOFRCQVFKQXczSlNnOEpRY0hGVGRHSkJNakhCQTdTU0lVSHljNVV5MWZBaGduR1JJbkhBTmdMRk1NRHlNNUtUdEtLQThhRmhzT0NCUVNCQVFHQkRGSktTQkxRYzRRRjNNSERSQWVGQk1lRVh3TEV4c1FMUkllRkJRV0NBSmpMRUlpQ3hjUURSWVBJa0lzQUFNQUh2LzBBcFlDdWdBeEFEOEFRd0FBVnlJdUFqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSVVVGak16RlFZR0l5SW1KaWNqRGdJM01qNENOVFVpQmdZVkZCWVdBelVoRmRncFJESWJNVjZIVnhVaUZoRWtGOFFCUDN0YVNYeE1FQkFrRERjbEtEd2xCd2NWTjBZa0V5TWNFRHRKSWhRZmRnRThEQThqT1NrN1NpZ1BHaFliRGdnVUVnUUVCZ1F4U1NrZ1MwSE9FQmR6QncwUUhoUVRIaEY4Q3hNYkVDMFNIaFFVRmdnQjVtUmtBQU1BSHY4dEFwWUNIQUF4QUQ4QVV3QUFWeUl1QWpVMFBnSXpOVFFtSmlNaUJnWVZGU01tTkRVME5qWXpNaFlXRlJVVUZqTXpGUVlHSXlJbUppY2pEZ0kzTWo0Q05UVWlCZ1lWRkJZV0FTSW1KalUwTmpjekZRWUdGUlFXTXpNVkJnYllLVVF5R3pGZWgxY1ZJaFlSSkJmRUFUOTdXa2w4VEJBUUpBdzNKU2c4SlFjSEZUZEdKQk1qSEJBN1NTSVVId0VVSURva0lSRnFFaElhR2p3WE9nd1BJemtwTzBvb0R4b1dHdzRJRkJJRUJBWUVNVWtwSUV0QnpoQVhjd2NORUI0VUV4NFJmQXNUR3hBdEVoNFVGQllJL3IwWE1pa2xNeFVFRENjVEZ5Tk1Cd2dBQUFRQUh2LzBBcFlER0FBeEFEOEFTd0JYQUFCWElpNENOVFErQWpNMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUZoWVZGUlFXTXpNVkJnWWpJaVltSnlNT0FqY3lQZ0kxTlNJR0JoVVVGaFlUSWlZMU5EWXpNaFlWRkFZbk1qWTFOQ1lqSWdZVkZCYllLVVF5R3pGZWgxY1ZJaFlSSkJmRUFUOTdXa2w4VEJBUUpBdzNKU2c4SlFjSEZUZEdKQk1qSEJBN1NTSVVIeWd2UGo0dkx6NCtMeEVYRnhFUkZ4Y01EeU01S1R0S0tBOGFGaHNPQ0JRU0JBUUdCREZKS1NCTFFjNFFGM01IRFJBZUZCTWVFWHdMRXhzUUxSSWVGQlFXQ0FIUFBTOHZQajR2THoxQ0dCTVNGeGdURWhjQUJRQWUvL1FDbGdPN0FERUFQd0JMQUZjQVhBQUFWeUl1QWpVMFBnSXpOVFFtSmlNaUJnWVZGU01tTkRVME5qWXpNaFlXRlJVVUZqTXpGUVlHSXlJbUppY2pEZ0kzTWo0Q05UVWlCZ1lWRkJZV0V5SW1OVFEyTXpJV0ZSUUdKekkyTlRRbUl5SUdGUlFXSnpjekZ3ZllLVVF5R3pGZWgxY1ZJaFlSSkJmRUFUOTdXa2w4VEJBUUpBdzNKU2c4SlFjSEZUZEdKQk1qSEJBN1NTSVVIeWd2UGo0dkx6NCtMeEVYRnhFUkZ4ZFRYTXNDb0F3UEl6a3BPMG9vRHhvV0d3NElGQklFQkFZRU1Va3BJRXRCemhBWGN3Y05FQjRVRXg0UmZBc1RHeEF0RWg0VUZCWUlBYzg5THk4K1BpOHZQVUlZRXhJWEdCTVNGN1dGQklFQUF3QWUvL1FDbGdMVEFERUFQd0JYQUFCWElpNENOVFErQWpNMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUZoWVZGUlFXTXpNVkJnWWpJaVltSnlNT0FqY3lQZ0kxTlNJR0JoVVVGaFlETkRZMk16SVdGak15TmpjekZBWUdJeUltSmlNaUJnZllLVVF5R3pGZWgxY1ZJaFlSSkJmRUFUOTdXa2w4VEJBUUpBdzNKU2c4SlFjSEZUZEdKQk1qSEJBN1NTSVVIN1lqUHlvZ096Y2JFeG9GVVNNL0tpQTdOeHNUR2dVTUR5TTVLVHRLS0E4YUZoc09DQlFTQkFRR0JERkpLU0JMUWM0UUYzTUhEUkFlRkJNZUVYd0xFeHNRTFJJZUZCUVdDQUhVSkVJcEZCUVhFU1JCS2hRVUZ4RUFBQU1BSHYvMEE4d0NIQUE5QUVzQVZRQUFSU0l1QWpVMFBnSXpOVFFtSmlNaUJnWVZGU01tTkRVME5qWXpNaFlYTmpZek1oWVdGUlVoRkJZV016SStBalV6RkE0Q0l5SW1KdzRDSnpJK0FqVTFJZ1lHRlJRV0ZpVXpOQzRDSXlJR0JnRUFORlE3SHpGZGlGY1RJUlVTSlJuRUFUOTdXamhvSlNSWk0xbDhRZjZJRXlzaUdDRVZDY0VpUW1SQ1MzY29HVUZQQmhNakhCQTdTU0lVSHdFOXJnc1ZIeFFkSmhVTUR5UTlMamhHSmc0YUZoc09DQlFTQkFRR0JERkpLUllhR0JnN2VsOGlKRFFiREJVY0VDOU1OUndrSlJNaEZYd0xFeHNRTFJJZUZCUVdDTlFWSVJjTUZpY0FBQVFBSHYvMEE4d0MxUUE5QUVzQVZRQmFBQUJGSWk0Q05UUStBak0xTkNZbUl5SUdCaFVWSXlZME5UUTJOak15RmhjMk5qTXlGaFlWRlNFVUZoWXpNajRDTlRNVURnSWpJaVluRGdJbk1qNENOVFVpQmdZVkZCWVdKVE0wTGdJaklnWUdKemN6RndjQkFEUlVPeDh4WFloWEV5RVZFaVVaeEFFL2UxbzRhQ1VrV1ROWmZFSCtpQk1ySWhnaEZRbkJJa0prUWt0M0tCbEJUd1lUSXh3UU8wa2lGQjhCUGE0TEZSOFVIU1lWdVZ6TEFxQU1EeVE5TGpoR0pnNGFGaHNPQ0JRU0JBUUdCREZKS1JZYUdCZzdlbDhpSkRRYkRCVWNFQzlNTlJ3a0pSTWhGWHdMRXhzUUxSSWVGQlFXQ05RVklSY01GaWZ3aFFTQkFBQUNBRDMvOUFKM0F0VUFGUUFvQUFCRklpWW5Jd2NqRVRNVk16NENNeklXRmhVVUJnWW5NalkyTlRVMEppWWpJZzRDRlJVVUZoWUJtRE5YR2djT29zY0hFQ3cxSEVaa05UVmtoQjhtRVJFbUh4Y2lGUW9TSnd3cUxVc0MxZllVR3c0OWVseGRlejJUR1M0Zk5SOHVHaElmS1JjaEh6TWVBQUFCQUNULzlBSndBaDBBSkFBQVJTSW1KalUwTmpZek1oNENGU00wSmlZaklnWUdGUlVVRmhZek1qWTJOVE1VRGdJQlRWcUZTa3FGV2p4cVVDM0JGeXdmSXlzVUZTMGtJUzBZdVMxUWFndzllMXhkZXowYU5sWThIeWdUR3pNak9TTXlHeE1wSUR4WE5ob0FBZ0FrLy9RQ2NBTFRBQ1FBS1FBQVJTSW1KalUwTmpZek1oNENGU00wSmlZaklnWUdGUlVVRmhZek1qWTJOVE1VRGdJRE56TVhCd0ZOV29WS1NvVmFQR3BRTGNFWExCOGpLeFFWTFNRaExSaTVMVkJxb0Z6TEFxQU1QWHRjWFhzOUdqWldQQjhvRXhzekl6a2pNaHNUS1NBOFZ6WWFBbHFGQklFQUFBSUFKUC8wQW5BQzB3QWtBQ3dBQUVVaUppWTFORFkyTXpJZUFoVWpOQ1ltSXlJR0JoVVZGQllXTXpJMk5qVXpGQTRDQVRNWEl6Y3pCeU1CVFZxRlNrcUZXanhxVUMzQkZ5d2ZJeXNVRlMwa0lTMFl1UzFRYXY3cmtXVTZaWk9HcUF3OWUxeGRlejBhTmxZOEh5Z1RHek1qT1NNeUd4TXBJRHhYTmhvQzMxbFpoUUFDQUNUL0xRSndBaDBBSkFBOEFBQkZJaVltTlRRMk5qTXlIZ0lWSXpRbUppTWlCZ1lWRlJRV0ZqTXlOalkxTXhRT0FnY2lKaWMxTXpJMk5UUW1JeU0zTXdjZUFoVVVEZ0lCVFZxRlNrcUZXanhxVUMzQkZ5d2ZJeXNVRlMwa0lTMFl1UzFRYWpjaVRSWnBFaFlRRmlnVVlBc1NKeG9aSmlvTVBYdGNYWHM5R2paV1BCOG9FeHN6SXprak1oc1RLU0E4VnpZYXh3a0hPUVlRRHdtRFJBSVRKUjhjSlJRSUFBQUNBQ1QvOUFKd0F0TUFKQUFzQUFCRklpWW1OVFEyTmpNeUhnSVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFPQWdFM014Y2pKek1IQVUxYWhVcEtoVm84YWxBdHdSY3NIeU1yRkJVdEpDRXRHTGt0VUdyKzY0YW9ocE5sT21VTVBYdGNYWHM5R2paV1BCOG9FeHN6SXprak1oc1RLU0E4VnpZYUFscUZoVmxaQUFBQ0FDVC85QUp3QXM0QUpBQW9BQUJGSWlZbU5UUTJOak15SGdJVkl6UW1KaU1pQmdZVkZSUVdGak15TmpZMU14UU9BZ00xTXhVQlRWcUZTa3FGV2p4cVVDM0JGeXdmSXlzVUZTMGtJUzBZdVMxUWFvZVlERDE3WEYxN1BSbzJWandmS0JNYk15TTVJekliRXlrZ1BGYzJHZ0pVaG9ZQUFnQWsvL1FDWGdMVkFCVUFLQUFBUlNJbUpqVTBOall6TWhZV0Z6TTFNeEVqSnlNR0JqY3lOalkxTlRRdUFpTWlCZ1lWRlJRV0ZnRURSbVExTldSR0hEVXREd2ZIb2c0SEhGUUtIeWNTQ2hVaUZ4OG1FUkVtREQxN1hWeDZQUTBiRmZiOUswc3RLcE1lTXg4aEZ5a2ZFaG91SHpVZkxoa0FBZ0FrLy9RQ2R3TFZBQ1VBTndBQVJTSW1KalUwTmpZek1oWVhOeVltSndjMU55WW1KemN6SGdJWE54VUhIZ0lWRkFZR0p6STJOalUxTkNZbUl5SUdCaFVWRkJZV0FVMWFoVXBBZFZFUUlnMEdEQnNPcFdJWkxBNEJ4Z1lWR3c2TFJDRTdKVXFHV2lNc0ZCUXNJeU1yRkJRckREMTdYRTExUWdnRkJ4TWhFQk5PQ3hjaENRUUREUk1NRUU0SUptVi9UbHg3UFljYk1pTTVJek1iR3pNak9TTXlHd0FEQUNULzlBTW9BdFVBRlFBb0FDd0FBRVVpSmlZMU5EWTJNeklXRmhjek5UTVJJeWNqQmdZM01qWTJOVFUwTGdJaklnWUdGUlVVRmhZQk5UTUhBUU5HWkRVMVpFWWNOUzBQQjhlaURnY2NWQW9mSnhJS0ZTSVhIeVlSRVNZQlpLSXNERDE3WFZ4NlBRMGJGZmI5SzBzdEtwTWVNeDhoRnlrZkVob3VIelVmTGhrQnBLcXFBQU1BSlAvMEFwc0MxUUFWQUNnQUxBQUFSU0ltSmpVME5qWXpNaFlXRnpNMU14RWpKeU1HQmpjeU5qWTFOVFF1QWlNaUJnWVZGUlFXRmdNMUlSVUJBMFprTlRWa1JodzFMUThIeDZJT0J4eFVDaDhuRWdvVkloY2ZKaEVSSmprQnNndzllMTFjZWowTkd4WDIvU3RMTFNxVEhqTWZJUmNwSHhJYUxoODFIeTRaQWJCcWFnQUFCQUFrLy9RRXNnTFZBQlVBS0FBeUFEb0FBRVVpSmlZMU5EWTJNeklXRmhjek5UTVJJeWNqQmdZM01qWTJOVFUwTGdJaklnWUdGUlVVRmhZRk5STWpOU0VWQXpNVkFUTVhJemN6QnlNQkEwWmtOVFZrUmh3MUxROEh4NklPQnh4VUNoOG5FZ29WSWhjZkpoRVJKZ0dOM3RJQjd1RHAvaWFSWlRwbGs0YW9ERDE3WFZ4NlBRMGJGZmI5SzBzdEtwTWVNeDhoRnlrZkVob3VIelVmTGhtSFFRRkloejcrdFljQzFWbFpoUUFBQWdBay8vUUNkd0ljQUJ3QUpnQUFSU0ltSmpVME5qWXpNaFlXRlJVaEZCWVdNekkrQWpVekZBNENBek0wTGdJaklnWUdBVmxmaTB0S2hWcGZoVWIrZEJVdkpoc2xGd3JCSkVocnRNSU1GeUVWSVN3WUREdDZYMTE2UFR0Nlh5SWtOQnNNRlJ3UUwwdzFIQUZRRlNFWERCWW5BQUFEQUNULzlBSjNBdFVBSEFBbUFDc0FBRVVpSmlZMU5EWTJNeklXRmhVVklSUVdGak15UGdJMU14UU9BZ016TkM0Q0l5SUdCaWMzTXhjSEFWbGZpMHRLaFZwZmhVYitkQlV2SmhzbEZ3ckJKRWhydE1JTUZ5RVZJU3dZQ0Z6TEFxQU1PM3BmWFhvOU8zcGZJaVEwR3d3VkhCQXZURFVjQVZBVklSY01GaWZ3aFFTQkFBQURBQ1QvOUFKM0F0VUFIQUFtQURnQUFFVWlKaVkxTkRZMk16SVdGaFVWSVJRV0ZqTXlQZ0kxTXhRT0FnTXpOQzRDSXlJR0JqY2lKaVkxTXg0Q016STJOamN6RkFZR0FWbGZpMHRLaFZwZmhVYitkQlV2SmhzbEZ3ckJKRWhydE1JTUZ5RVZJU3dZV3psVExHQURIQ2NTR1NjWUFsOHRVd3c3ZWw5ZGVqMDdlbDhpSkRRYkRCVWNFQzlNTlJ3QlVCVWhGd3dXSitVc1F5RU9GdzBRR0FvaFF5d0FBQU1BSlAvMEFuY0MxUUFjQUNZQUxnQUFSU0ltSmpVME5qWXpNaFlXRlJVaEZCWVdNekkrQWpVekZBNENBek0wTGdJaklnWUdBek1YSXpjekJ5TUJXVitMUzBxRldsK0ZSdjUwRlM4bUd5VVhDc0VrU0d1MHdnd1hJUlVoTEJoOWtXVTZaWk9HcUF3N2VsOWRlajA3ZWw4aUpEUWJEQlVjRUM5TU5Sd0JVQlVoRnd3V0p3RjFXVm1GQUFNQUpQLzBBbmNDMVFBY0FDWUFMZ0FBUlNJbUpqVTBOall6TWhZV0ZSVWhGQllXTXpJK0FqVXpGQTRDQXpNMExnSWpJZ1lHSnpjekZ5TW5Nd2NCV1YrTFMwcUZXbCtGUnY1MEZTOG1HeVVYQ3NFa1NHdTB3Z3dYSVJVaExCaDlocWlHazJVNlpRdzdlbDlkZWowN2VsOGlKRFFiREJVY0VDOU1OUndCVUJVaEZ3d1dKL0NGaFZsWkFBUUFKUC8wQW5jRGl3QWNBQ1lBTGdBekFBQkZJaVltTlRRMk5qTXlGaFlWRlNFVUZoWXpNajRDTlRNVURnSURNelF1QWlNaUJnWW5Oek1YSXljekJ5YzNNeGNIQVZsZmkwdEtoVnBmaFViK2RCVXZKaHNsRndyQkpFaHJ0TUlNRnlFVklTd1lmWWFvaHBObE9tVWNYTXNDb0F3N2VsOWRlajA3ZWw4aUpEUWJEQlVjRUM5TU5Sd0JVQlVoRnd3V0ovQ0ZoVmxadG9VRWdRQUVBQ1QvUGdKM0F0VUFIQUFtQUNvQU1nQUFSU0ltSmpVME5qWXpNaFlXRlJVaEZCWVdNekkrQWpVekZBNENBek0wTGdJaklnWUdFelV6RlFFM014Y2pKek1IQVZsZmkwdEtoVnBmaFViK2RCVXZKaHNsRndyQkpFaHJ0TUlNRnlFVklTd1lGSmorMTRhb2hwTmxPbVVNTzNwZlhYbzlPM3BmSWlRMEd3d1ZIQkF2VERVY0FWQVZJUmNNRmlmOTNvYUdBeEtGaFZsWkFBUUFKUC8wQW5jRGl3QWNBQ1lBTGdBekFBQkZJaVltTlRRMk5qTXlGaFlWRlNFVUZoWXpNajRDTlRNVURnSURNelF1QWlNaUJnWW5Oek1YSXljekJ6Y2pKemN6QVZsZmkwdEtoVnBmaFViK2RCVXZKaHNsRndyQkpFaHJ0TUlNRnlFVklTd1lmWWFvaHBObE9tV3JpYUFDeXd3N2VsOWRlajA3ZWw4aUpEUWJEQlVjRUM5TU5Sd0JVQlVoRnd3V0ovQ0ZoVmxadG9FRUFBQUVBQ1QvOUFKM0E1b0FIQUFtQUM0QVJ3QUFSU0ltSmpVME5qWXpNaFlXRlJVaEZCWVdNekkrQWpVekZBNENBek0wTGdJaklnWUdKemN6RnlNbk13YzNOVE15TmpVMEppTWpOVDRDTXpJZUFoVVVCZ1lIRlFGWlg0dExTb1ZhWDRWRy9uUVZMeVliSlJjS3dTUklhN1RDREJjaEZTRXNHSDJHcUlhVFpUcGxJUXNTREJJUk9nd2lJd3dTTENjYUdpZ1hERHQ2WDExNlBUdDZYeUlrTkJzTUZSd1FMMHcxSEFGUUZTRVhEQlluOElXRldWbTFPQWNLQ3dZekF3TUNCdzhaRXhNWkRBSVpBQVFBSlAvMEFuY0Rpd0FjQUNZQUxnQkdBQUJGSWlZbU5UUTJOak15RmhZVkZTRVVGaFl6TWo0Q05UTVVEZ0lETXpRdUFpTWlCZ1luTnpNWEl5Y3pCeWMwTmpZek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0J3RlpYNHRMU29WYVg0VkcvblFWTHlZYkpSY0t3U1JJYTdUQ0RCY2hGU0VzR0gyR3FJYVRaVHBsbGlNL0tpQTdOeHNUR2dWUkl6OHFJRHMzR3hNYUJRdzdlbDlkZWowN2VsOGlKRFFiREJVY0VDOU1OUndCVUJVaEZ3d1dKL0NGaFZsWnJDUkNLUlFVRnhFa1FTb1VGQmNSQUFBRUFDVC85QUozQXRZQUhBQW1BQ3NBTUFBQVJTSW1KalUwTmpZek1oWVdGUlVoRkJZV016SStBalV6RkE0Q0F6TTBMZ0lqSWdZR055YzNNeGNoSnpjekZ3RlpYNHRMU29WYVg0VkcvblFWTHlZYkpSY0t3U1JJYTdUQ0RCY2hGU0VzR0pTTEFySk0vcmlMQXJKTUREdDZYMTE2UFR0Nlh5SWtOQnNNRlJ3UUwwdzFIQUZRRlNFWERCWW44SUlFaG9JRWhnQUFCQUFrLy9RQ2R3TFZBQndBSmdBcUFDNEFBRVVpSmlZMU5EWTJNeklXRmhVVklSUVdGak15UGdJMU14UU9BZ016TkM0Q0l5SUdCaWMxTXhVek5UTVZBVmxmaTB0S2hWcGZoVWIrZEJVdkpoc2xGd3JCSkVocnRNSU1GeUVWSVN3WVhwaEVtQXc3ZWw5ZGVqMDdlbDhpSkRRYkRCVWNFQzlNTlJ3QlVCVWhGd3dXSitxTGk0dUxBQU1BSlAvMEFuY0MwQUFjQUNZQUtnQUFSU0ltSmpVME5qWXpNaFlXRlJVaEZCWVdNekkrQWpVekZBNENBek0wTGdJaklnWUdOelV6RlFGWlg0dExTb1ZhWDRWRy9uUVZMeVliSlJjS3dTUklhN1RDREJjaEZTRXNHQkdZRER0NlgxMTZQVHQ2WHlJa05Cc01GUndRTDB3MUhBRlFGU0VYREJZbjZvYUdBQU1BSlA4K0FuY0NIQUFjQUNZQUtnQUFSU0ltSmpVME5qWXpNaFlXRlJVaEZCWVdNekkrQWpVekZBNENBek0wTGdJaklnWUdFelV6RlFGWlg0dExTb1ZhWDRWRy9uUVZMeVliSlJjS3dTUklhN1RDREJjaEZTRXNHQlNZRER0NlgxMTZQVHQ2WHlJa05Cc01GUndRTDB3MUhBRlFGU0VYREJZbi9kNkdoZ0FBQXdBay8vUUNkd0xWQUJ3QUpnQXJBQUJGSWlZbU5UUTJOak15RmhZVkZTRVVGaFl6TWo0Q05UTVVEZ0lETXpRdUFpTWlCZ1kzSXljM013RlpYNHRMU29WYVg0VkcvblFWTHlZYkpSY0t3U1JJYTdUQ0RCY2hGU0VzR0wrSm9BTExERHQ2WDExNlBUdDZYeUlrTkJzTUZSd1FMMHcxSEFGUUZTRVhEQlluOElFRUFBTUFKUC8wQW5jQzVBQWNBQ1lBUHdBQVJTSW1KalUwTmpZek1oWVdGUlVoRkJZV016SStBalV6RkE0Q0F6TTBMZ0lqSWdZR056VXpNalkxTkNZakl6VStBak15SGdJVkZBWUdCeFVCV1YrTFMwcUZXbCtGUnY1MEZTOG1HeVVYQ3NFa1NHdTB3Z3dYSVJVaExCZzFDeElNRWhFNkRDSWpEQklzSnhvYUtCY01PM3BmWFhvOU8zcGZJaVEwR3d3VkhCQXZURFVjQVZBVklSY01GaWZ2T0FjS0N3WXpBd01DQnc4WkV4TVpEQUlaQUFBREFDVC85QUozQXRVQUhBQW1BRGdBQUVVaUppWTFORFkyTXpJV0ZoVVZJUlFXRmpNeVBnSTFNeFFPQWdNek5DNENJeUlHQmhNeUZoWVZJeTRDSXlJR0JnY2pORFkyQVZsZmkwdEtoVnBmaFViK2RCVXZKaHNsRndyQkpFaHJ0TUlNRnlFVklTd1lXemxUTFY4Q0dDY1pFaWNjQTJBc1V3dzdlbDlkZWowN2VsOGlKRFFiREJVY0VDOU1OUndCVUJVaEZ3d1dKd0YxTEVJaUN4Y1FEUllQSWtJc0FBTUFKUC8wQW5jQ3ZBQWNBQ1lBS2dBQVJTSW1KalUwTmpZek1oWVdGUlVoRkJZV016SStBalV6RkE0Q0F6TTBMZ0lqSWdZR0p6VWhGUUZaWDR0TFNvVmFYNFZHL25RVkx5WWJKUmNLd1NSSWE3VENEQmNoRlNFc0dFSUJQQXc3ZWw5ZGVqMDdlbDhpSkRRYkRCVWNFQzlNTlJ3QlVCVWhGd3dXSi9oa1pBQUFBd0FrL3kwQ2R3SWNBQndBSmdBNkFBQkZJaVltTlRRMk5qTXlGaFlWRlNFVUZoWXpNajRDTlRNVURnSURNelF1QWlNaUJnWVRJaVltTlRRMk56TVZCZ1lWRkJZek14VUdCZ0ZaWDR0TFNvVmFYNFZHL25RVkx5WWJKUmNLd1NSSWE3VENEQmNoRlNFc0dOd2dPaVFoRVdvU0Vob2FQQmM2RER0NlgxMTZQVHQ2WHlJa05Cc01GUndRTDB3MUhBRlFGU0VYREJZbi9jMFhNaWtsTXhVRURDY1RGeU5NQndnQUF3QWsvL1FDZHdMVkFCd0FKZ0ErQUFCRklpWW1OVFEyTmpNeUZoWVZGU0VVRmhZek1qNENOVE1VRGdJRE16UXVBaU1pQmdZbk5EWTJNeklXRmpNeU5qY3pGQVlHSXlJbUppTWlCZ2NCV1YrTFMwcUZXbCtGUnY1MEZTOG1HeVVYQ3NFa1NHdTB3Z3dYSVJVaExCaUNJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GRER0NlgxMTZQVHQ2WHlJa05Cc01GUndRTDB3MUhBRlFGU0VYREJZbjVpUkNLUlFVRnhFa1FTb1VGQmNSQUFJQUpQLzBBbmNDSEFBY0FDWUFBRVVpSmlZMU5TRTBKaVlqSWc0Q0ZTTTBQZ0l6TWhZV0ZSUUdCaWN5TmpZM0l4UWVBZ0ZPWDRWR0FZd1ZMeVliSlJjS3dTUklhMGRmaTB0SmhtSWlMQmdEd2d3WElRdzdlbDhpSlRNYkRCVWNFQzlNTlJ3N2VsOWNlejEvRmlnYkZTRVhEQUFBQVFBSUFBQUJmd0xoQUJjQUFITVJJelV6TlRRMk5qTXlGaFlYRlNNaUJoVVZNeFVqRVZKS1NqRlhPUThvS0EwdUlSZG1aZ0dKaHhaSVVpRUZDQVYxR1J3VmgvNTNBQU1BQ3Y4dUFwTUNjd0ExQUVRQVVRQUFWeUltSmpVME5qY21KalUwTmpjbUpqVTBOall6TWhZWE5qWTFNeFFHQmdjV0ZoVVVCZ1lqSXlJR0ZSUVdNek15RmhVVUJnWWpKek15TmpZMU5DWWpJeUlHRlJRV0V6STJOVFFtSXlJR0ZSUVdGbzhrUFNReklSZ2NPeW9rTVVwOFNoNHBFQ3dpcEIwM0poMGhQbVU3VENJZEdTYTBYRlkrWlR1Nm5BOFlEaDhXbkJZZUhtTWpLaW9qSHl3U0l0SWlPeVFwUGc4Uk1Cd29Qd29YUVNaQ1NoOERBeHMwRGlzNElnb1dPeUU3U3lRUURRMFNYMG80VVN4dkRCY1BGeG9aRnhjY0FaTWdJaUlnSUNJV0hnNEFCQUFLL3k0Q2t3TFZBRFVBUkFCUkFHTUFBRmNpSmlZMU5EWTNKaVkxTkRZM0ppWTFORFkyTXpJV0Z6WTJOVE1VQmdZSEZoWVZGQVlHSXlNaUJoVVVGak16TWhZVkZBWUdJeWN6TWpZMk5UUW1JeU1pQmhVVUZoTXlOalUwSmlNaUJoVVVGaFlUSWlZbU5UTWVBak15TmpZM014UUdCbzhrUFNReklSZ2NPeW9rTVVwOFNoNHBFQ3dpcEIwM0poMGhQbVU3VENJZEdTYTBYRlkrWlR1Nm5BOFlEaDhXbkJZZUhtTWpLaW9qSHl3U0loSTVVeXhnQXh3bkVoa25HQUpmTFZQU0lqc2tLVDRQRVRBY0tEOEtGMEVtUWtvZkF3TWJOQTRyT0NJS0Zqc2hPMHNrRUEwTkVsOUtPRkVzYnd3WER4Y2FHUmNYSEFHVElDSWlJQ0FpRmg0T0FSVXNReUVPRncwUUdBb2hReXdBQUFRQUN2OHVBcE1DMVFBMUFFUUFVUUJaQUFCWElpWW1OVFEyTnlZbU5UUTJOeVltTlRRMk5qTXlGaGMyTmpVekZBWUdCeFlXRlJRR0JpTWpJZ1lWRkJZek16SVdGUlFHQmlNbk16STJOalUwSmlNaklnWVZGQllUTWpZMU5DWWpJZ1lWRkJZV0F6TVhJemN6QnlPUEpEMGtNeUVZSERzcUpERktmRW9lS1JBc0lxUWROeVlkSVQ1bE8wd2lIUmttdEZ4V1BtVTd1cHdQR0E0ZkZwd1dIaDVqSXlvcUl4OHNFaUxHa1dVNlpaT0dxTklpT3lRcFBnOFJNQndvUHdvWFFTWkNTaDhEQXhzMERpczRJZ29XT3lFN1N5UVFEUTBTWDBvNFVTeHZEQmNQRnhvWkZ4Y2NBWk1nSWlJZ0lDSVdIZzRCcFZsWmhRQUFCQUFLL3k0Q2t3TFZBRFVBUkFCUkFGa0FBRmNpSmlZMU5EWTNKaVkxTkRZM0ppWTFORFkyTXpJV0Z6WTJOVE1VQmdZSEZoWVZGQVlHSXlNaUJoVVVGak16TWhZVkZBWUdJeWN6TWpZMk5UUW1JeU1pQmhVVUZoTXlOalUwSmlNaUJoVVVGaFlETnpNWEl5Y3pCNDhrUFNReklSZ2NPeW9rTVVwOFNoNHBFQ3dpcEIwM0poMGhQbVU3VENJZEdTYTBYRlkrWlR1Nm5BOFlEaDhXbkJZZUhtTWpLaW9qSHl3U0lzYUdxSWFUWlRwbDBpSTdKQ2srRHhFd0hDZy9DaGRCSmtKS0h3TURHelFPS3pnaUNoWTdJVHRMSkJBTkRSSmZTamhSTEc4TUZ3OFhHaGtYRnh3Qmt5QWlJaUFnSWhZZURnRWdoWVZaV1FBRUFBci9MZ0tUQTJFQU5RQkVBRkVBWFFBQVZ5SW1KalUwTmpjbUpqVTBOamNtSmpVME5qWXpNaFlYTmpZMU14UUdCZ2NXRmhVVUJnWWpJeUlHRlJRV016TXlGaFVVQmdZakp6TXlOalkxTkNZakl5SUdGUlFXRXpJMk5UUW1JeUlHRlJRV0ZoTVZJZ1lWTXhVak5UUTJObzhrUFNReklSZ2NPeW9rTVVwOFNoNHBFQ3dpcEIwM0poMGhQbVU3VENJZEdTYTBYRlkrWlR1Nm5BOFlEaDhXbkJZZUhtTWpLaW9qSHl3U0lsOG9IMGVZSFVQU0lqc2tLVDRQRVRBY0tEOEtGMEVtUWtvZkF3TWJOQTRyT0NJS0Zqc2hPMHNrRUEwTkVsOUtPRkVzYnd3WER4Y2FHUmNYSEFHVElDSWlJQ0FpRmg0T0FqRkJIeWlMY0QxSEh3QUFCQUFLL3k0Q2t3TFFBRFVBUkFCUkFGVUFBRmNpSmlZMU5EWTNKaVkxTkRZM0ppWTFORFkyTXpJV0Z6WTJOVE1VQmdZSEZoWVZGQVlHSXlNaUJoVVVGak16TWhZVkZBWUdJeWN6TWpZMk5UUW1JeU1pQmhVVUZoTXlOalUwSmlNaUJoVVVGaFlETlRNVmp5UTlKRE1oR0J3N0tpUXhTbnhLSGlrUUxDS2tIVGNtSFNFK1pUdE1JaDBaSnJSY1ZqNWxPN3FjRHhnT0h4YWNGaDRlWXlNcUtpTWZMQklpT0pqU0lqc2tLVDRQRVRBY0tEOEtGMEVtUWtvZkF3TWJOQTRyT0NJS0Zqc2hPMHNrRUEwTkVsOUtPRkVzYnd3WER4Y2FHUmNYSEFHVElDSWlJQ0FpRmg0T0FScUdoZ0FCQUR3QUFBSmdBdFVBR1FBQWN4RXpGVE0rQWpNeUZoWVZFU01STkM0Q0l5SUdCaFVSUE1jSEVUUThIVDlSS01jSkVCa1JHU1VWQXRYOEZoMFFMMWcvL3FvQlBoRWJGQXNYSlJmK3lnQUNBQUFBQUFKZ0F0VUFHUUFkQUFCekVUTVZNejRDTXpJV0ZoVVJJeEUwTGdJaklnWUdGUkVCTlNFVlBNY0hFVFE4SFQ5UktNY0pFQmtSR1NVVi92MEJzZ0xWL0JZZEVDOVlQLzZxQVQ0Ukd4UUxGeVVYL3NvQ04ycHFBQUwvd0FBQUFtQURkUUFaQUNFQUFITVJNeFV6UGdJek1oWVdGUkVqRVRRdUFpTWlCZ1lWRVFFM014Y2pKek1IUE1jSEVUUThIVDlSS01jSkVCa1JHU1VWL3IyR3NvYVlaVHBsQXRYOEZoMFFMMWcvL3FvQlBoRWJGQXNYSlJmK3lnTHdoWVZaV1FBQUFnQTgvejRDWUFMVkFCa0FIUUFBY3hFekZUTStBak15RmhZVkVTTVJOQzRDSXlJR0JoVVJCelV6RlR6SEJ4RTBQQjAvVVNqSENSQVpFUmtsRlFHWUF0WDhGaDBRTDFnLy9xb0JQaEViRkFzWEpSZit5c0tHaGdBQUFnQThBQUFCQXdMVkFBTUFCd0FBVXpVekZRTVJNeEU4eDhmSEFrNkhoLzJ5QWhEOThBQUJBRHdBQUFFREFoQUFBd0FBY3hFekVUekhBaEQ5OEFBQ0FEd0FBQUZsQXRVQUF3QUlBQUJ6RVRNUkF6Y3pGd2M4eDhkY3l3S2dBaEQ5OEFKUWhRU0JBQUFDLytjQUFBRllBdFVBQXdBVkFBQnpFVE1SQXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1k4eDJRNVV5eGdBeHduRWhrbkdBSmZMVk1DRVAzd0FrVXNReUVPRncwUUdBb2hReXdBQUFML3h3QUFBWHNDMVFBREFBc0FBSE1STXhFQk14Y2pOek1ISXp6SC9zU1JaVHBsazRhb0FoRDk4QUxWV1ZtRkFBTC94d0FBQVhzQzFRQURBQXNBQUhNUk14RUJOek1YSXljekJ6ekgvc1NHcUlhVFpUcGxBaEQ5OEFKUWhZVlpXUUFBQS85NkFBQUJUUUxXQUFNQUNBQU5BQUJ6RVRNUkF5YzNNeGNoSnpjekZ6ekhLNHNDc2t6K3VJc0Nza3dDRVAzd0FsQ0NCSWFDQklZQUFBUC81Z0FBQVZvQzFRQURBQWNBQ3dBQWN4RXpFUUUxTXhVek5UTVZQTWYrNDVoRW1BSVEvZkFDU291TGk0c0FBQUlBUEFBQUFRTUMxUUFEQUFjQUFGTTFNeFVERVRNUlBNZkh4d0pPaDRmOXNnSVEvZkFBQXdBOC96NEJBd0xWQUFNQUJ3QUxBQUJUTlRNVkF4RXpFUWMxTXhVOHg4ZkhyNWdDVG9lSC9iSUNFUDN3d29hR0FBQUMvOW9BQUFFREF0VUFBd0FJQUFCekVUTVJFU01uTnpNOHg0bWdBc3NDRVAzd0FsQ0JCQUFBQWdBOEFBQUJJUUxrQUFNQUhBQUFjeEV6RVFNMU16STJOVFFtSXlNMVBnSXpNaDRDRlJRR0JnY1ZQTWVLQ3hJTUVoRTZEQ01pREJJc0p4b2FLQmNDRVAzd0FrODRCd29MQmpNREF3SUhEeGtURXhrTUFoa0FBQUwvNXdBQUFWZ0MxUUFEQUJVQUFITVJNeEVETWhZV0ZTTXVBaU1pQmdZSEl6UTJOanpIWkRsVExWOENHQ2NaRWljY0EyQXNVd0lRL2ZBQzFTeENJZ3NYRUEwV0R5SkNMQUFBQkFBOC95NENRZ0xWQUFNQUJ3QUxBQnNBQUZNMU14VURFVE1SRXpVekZRTWlKaVluTlRNeU5qVVJNeEVVQmdZOHg4ZkhlTWUzRUM0dUVEUWVHc2NtVVFKT2g0ZjlzZ0lRL2ZBQ1RvZUgvT0FFQ1FWM0lSOENHZjNUUUZBbEFBSUFBZ0FBQVQ0Q3ZBQURBQWNBQUhNUk14RUJOU0VWUE1mKy93RThBaEQ5OEFKWVpHUUFBd0FUL3kwQkF3TFZBQU1BQndBYkFBQlROVE1WQXhFekVRY2lKaVkxTkRZM014VUdCaFVVRmpNekZRWUdQTWZIeDNJZ09pUWhFV29TRWhvYVBCYzZBazZIaC8yeUFoRDk4Tk1YTWlrbE14VUVEQ2NURnlOTUJ3Z0FBdi9DQUFBQmZnTFZBQU1BR3dBQWN4RXpFUUUwTmpZek1oWVdNekkyTnpNVUJnWWpJaVltSXlJR0J6ekgvcjhqUHlvZ096Y2JFeG9GVVNNL0tpQTdOeHNUR2dVQ0VQM3dBa1lrUWlrVUZCY1JKRUVxRkJRWEVRQUFBdi9RL3k0QkF3TFZBQU1BRXdBQVV6VXpGUU1pSmlZbk5UTXlOalVSTXhFVUJnWTh4N2NRTGk0UU5CNGF4eVpSQWs2SGgvemdCQWtGZHlFZkFobjkwMEJRSlFBQi85RC9MZ0VEQWhBQUR3QUFWeUltSmljMU16STJOUkV6RVJRR0Jrd1FMaTRRTkI0YXh5WlIwZ1FKQlhjaEh3SVovZE5BVUNVQUFBTC94Lzh1QVhzQzFRQVBBQmNBQUZjaUppWW5OVE15TmpVUk14RVVCZ1lETnpNWEl5Y3pCMHdRTGk0UU5CNGF4eVpSeFlhb2hwTmxPbVhTQkFrRmR5RWZBaG45MDBCUUpRTWloWVZaV1FBQUFRQThBQUFDbVFMV0FBc0FBSE1STXhFM013Y1RJeWNIRlR6SHFlakR5T0p2UlFMVy9uREsxZjdGdFVOeUFBSUFQUDYyQXBrQzFnQUxBQmNBQUhNUk14RTNNd2NUSXljSEZSTTFNalkxSXpVekZSUUdCanpIcWVqRHlPSnZSUW9vSDBlWUhVTUMxdjV3eXRYK3hiVkRjdjYyUVI4b2kzQThTQjhBQUFFQVBBQUFBcGtDRUFBTEFBQnpFVE1WTnpNSEV5TW5CeFU4eDZub3c4amliMFVDRU1ySzFmN0Z0VU55QUFBQkFEd0FBQUVEQXRVQUF3QUFjeEV6RVR6SEF0WDlLd0FDQUR3QUFBRndBM1VBQXdBSUFBQnpFVE1SQXpjekZ3Yzh4OEZjMEFLZ0F0WDlLd0x3aFFTQkFBQUNBRHdBQUFITkF0VUFBd0FIQUFCekVUTVJFelV6Qnp6SEtLSXNBdFg5S3dJcnFxb0FBQUlBUFA2MkFRTUMxUUFEQUE4QUFITVJNeEVETlRJMk5TTTFNeFVVQmdZOHg2OG9IMGVZSFVNQzFmMHIvclpCSHlpTGNEeElId0FBQWdBOEFBQUJtd0xWQUFNQUJ3QUFjeEV6RVJNMU14VTh4eE9GQXRYOUt3RTJpNHNBQXdBOC95NENRZ0xWQUFNQUJ3QVhBQUJ6RVRNUkV6VXpGUU1pSmlZbk5UTXlOalVSTXhFVUJnWTh4M2pIdHhBdUxoQTBIaHJISmxFQzFmMHJBazZIaC96Z0JBa0ZkeUVmQWhuOTAwQlFKUUFDLytNQUFBRmNBdFVBQXdBSEFBQnpFVE1SSlRVbEZUekgvdUFCZVFMVi9TdktZdUprQUFFQVBBQUFBNjBDSEFBdEFBQnpFVE1YTXo0Q016SVdGek0rQWpNeUZoWVZFU01STkM0Q0l5SUdCaFVSSXhFMExnSWpJZ1lHRlJFOG93MEhFemhESXoxUUV3Y1ROMElpUFZBbnh3Z1FHQThZSkJQSENCQVlEeGdqRkFJUVR4NHBGQzhzSGlrVUwxZy8vcW9CUGhFYkZBc1hKUmYreWdFK0VSc1VDeGNsRi83S0FBQUJBRHdBQUFKZ0Fod0FHUUFBY3hFekZ6TStBak15RmhZVkVTTVJOQzRDSXlJR0JoVVJQS01OQnhVNFJDUS9VU2pIQ1JBWkVSa2xGUUlRVUI4cEZDOVlQLzZxQVQ0Ukd4UUxGeVVYL3NvQUFBSUFQQUFBQW1BQzFRQVpBQjRBQUhNUk14Y3pQZ0l6TWhZV0ZSRWpFVFF1QWlNaUJnWVZFUU0zTXhjSFBLTU5CeFU0UkNRL1VTakhDUkFaRVJrbEZSaGN5d0tnQWhCUUh5a1VMMWcvL3FvQlBoRWJGQXNYSlJmK3lnSlFoUVNCQUFJQUFBQUFBbUFEUXdBWkFDVUFBSE1STXhjelBnSXpNaFlXRlJFakVUUXVBaU1pQmdZVkVRRTFNalkxSXpVekZSUUdCanlqRFFjVk9FUWtQMUVveHdrUUdSRVpKUlgrL1NnZlI1Z2RRd0lRVUI4cEZDOVlQLzZxQVQ0Ukd4UUxGeVVYL3NvQ01FRWZLSXR3UEVnZkFBQUNBRHdBQUFKZ0F0VUFHUUFoQUFCekVUTVhNejRDTXpJV0ZoVVJJeEUwTGdJaklnWUdGUkVETXhjak56TUhJenlqRFFjVk9FUWtQMUVveHdrUUdSRVpKUldOa1dVNlpaT0dxQUlRVUI4cEZDOVlQLzZxQVQ0Ukd4UUxGeVVYL3NvQzFWbFpoUUFDQUR6K3RnSmdBaHdBR1FBbEFBQnpFVE1YTXo0Q016SVdGaFVSSXhFMExnSWpJZ1lHRlJFVE5USTJOU00xTXhVVUJnWThvdzBIRlRoRUpEOVJLTWNKRUJrUkdTVVZBU2dmUjVnZFF3SVFVQjhwRkM5WVAvNnFBVDRSR3hRTEZ5VVgvc3IrdGtFZktJdHdQRWdmQUFFQVBQOHVBbUFDSEFBbUFBQkZJaVltSnpVek1qWTFFVFF1QWlNaUJnWVZFU01STXhjelBnSXpNaFlXRlJFVURnSUJxUkF1TGhBMEhob0pFQmtSR1NVVng2TU5CeFU0UkNRL1VTZ1ZMVVhTQkFrRmR5RWZBVWNSR3hRTEZ5VVgvc29DRUZBZktSUXZXRC8ralRCRkt4VUFBQUgvMFA4dUFtQUNIQUFtQUFCWElpWW1KelV6TWpZMUVUTVhNejRDTXpJV0ZoVVJJeEUwTGdJaklnWUdGUkVVRGdKTUVDNHVFRFFlR3FNTkJ4VTRSQ1EvVVNqSENSQVpFUmtsRlJVdFJkSUVDUVYzSVI4Q0dWQWZLUlF2V0QvK3FnRStFUnNVQ3hjbEYvNnRNRVVyRlFBREFEei9MZ09lQXRVQUdRQWRBQzBBQUhNUk14Y3pQZ0l6TWhZV0ZSRWpFVFF1QWlNaUJnWVZFUUUxTXhVRElpWW1KelV6TWpZMUVUTVJGQVlHUEtNTkJ4VTRSQ1EvVVNqSENSQVpFUmtsRlFIVXg3Y1FMaTRRTkI0YXh5WlJBaEJRSHlrVUwxZy8vcW9CUGhFYkZBc1hKUmYreWdKT2g0Zjg0QVFKQlhjaEh3SVovZE5BVUNVQUFnQThBQUFDWUFMVkFCa0FNUUFBY3hFekZ6TStBak15RmhZVkVTTVJOQzRDSXlJR0JoVVJBelEyTmpNeUZoWXpNalkzTXhRR0JpTWlKaVlqSWdZSFBLTU5CeFU0UkNRL1VTakhDUkFaRVJrbEZaSWpQeW9nT3pjYkV4b0ZVU00vS2lBN054c1RHZ1VDRUZBZktSUXZXRC8rcWdFK0VSc1VDeGNsRi83S0FrWWtRaWtVRkJjUkpFRXFGQlFYRVFBQUFnQWsvL1FDZHdJY0FBOEFJUUFBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGZ0ZOV29WS1NvVmFXb1pLU29aYUl5d1VGQ3dqSXlzVUZDc01QWHRjWFhvOVBYcGRYSHM5aHhzeUl6a2pNeHNiTXlNNUl6SWJBQUFEQUNULzlBSjNBdFVBRHdBaEFDWUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUROek1YQndGTldvVktTb1ZhV29aS1NvWmFJeXdVRkN3akl5c1VGQ3RBWE1zQ29BdzllMXhkZWowOWVsMWNlejJIR3pJak9TTXpHeHN6SXprak1oc0IxWVVFZ1FBREFDVC85QUozQXRVQUR3QWhBRE1BQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMk5UVTBKaVlqSWdZR0ZSVVVGaFlUSWlZbU5UTWVBak15TmpZM014UUdCZ0ZOV29WS1NvVmFXb1pLU29aYUl5d1VGQ3dqSXlzVUZDc2pPVk1zWUFNY0p4SVpKeGdDWHkxVEREMTdYRjE2UFQxNlhWeDdQWWNiTWlNNUl6TWJHek1qT1NNeUd3SEtMRU1oRGhjTkVCZ0tJVU1zQUFNQUpQLzBBbmNDMVFBUEFDRUFLUUFBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGZ016RnlNM013Y2pBVTFhaFVwS2hWcGFoa3BLaGxvakxCUVVMQ01qS3hRVUs3V1JaVHBsazRhb0REMTdYRjE2UFQxNlhWeDdQWWNiTWlNNUl6TWJHek1qT1NNeUd3SmFXVm1GQUFNQUpQLzBBbmNDMVFBUEFDRUFLUUFBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGZ00zTXhjakp6TUhBVTFhaFVwS2hWcGFoa3BLaGxvakxCUVVMQ01qS3hRVUs3V0dxSWFUWlRwbEREMTdYRjE2UFQxNlhWeDdQWWNiTWlNNUl6TWJHek1qT1NNeUd3SFZoWVZaV1FBQUJBQWsvL1FDZHdPTEFBOEFJUUFwQUM0QUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZRE56TVhJeWN6QnljM014Y0hBVTFhaFVwS2hWcGFoa3BLaGxvakxCUVVMQ01qS3hRVUs3V0dxSWFUWlRwbEhGekxBcUFNUFh0Y1hYbzlQWHBkWEhzOWh4c3lJemtqTXhzYk15TTVJekliQWRXRmhWbFp0b1VFZ1FBQUJBQWsvejRDZHdMVkFBOEFJUUFsQUMwQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZRE5UTVZBVGN6RnlNbk13Y0JUVnFGU2txRldscUdTa3FHV2lNc0ZCUXNJeU1yRkJRcktKaisyNGFvaHBObE9tVU1QWHRjWFhvOVBYcGRYSHM5aHhzeUl6a2pNeHNiTXlNNUl6SWIvc09HaGdNU2hZVlpXUUFFQUNULzlBSjNBNHNBRHdBaEFDa0FMZ0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGZ00zTXhjakp6TUhOeU1uTnpNQlRWcUZTa3FGV2xxR1NrcUdXaU1zRkJRc0l5TXJGQlFydFlhb2hwTmxPbVdyaWFBQ3l3dzllMXhkZWowOWVsMWNlejJIR3pJak9TTXpHeHN6SXprak1oc0IxWVdGV1ZtMmdRUUFCQUFrLy9RQ2R3T2FBQThBSVFBcEFFSUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUROek1YSXljekJ6YzFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWQVUxYWhVcEtoVnBhaGtwS2hsb2pMQlFVTENNakt4UVVLN1dHcUlhVFpUcGxJUXNTREJJUk9nd2lJd3dTTENjYUdpZ1hERDE3WEYxNlBUMTZYVng3UFljYk1pTTVJek1iR3pNak9TTXlHd0hWaFlWWldiVTRCd29MQmpNREF3SUhEeGtURXhrTUFoa0FBQVFBSlAvMEFuY0Rpd0FQQUNFQUtRQkJBQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdBemN6RnlNbk13Y25ORFkyTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdjQlRWcUZTa3FGV2xxR1NrcUdXaU1zRkJRc0l5TXJGQlFydFlhb2hwTmxPbVdXSXo4cUlEczNHeE1hQlZFalB5b2dPemNiRXhvRkREMTdYRjE2UFQxNlhWeDdQWWNiTWlNNUl6TWJHek1qT1NNeUd3SFZoWVZaV2F3a1Fpa1VGQmNSSkVFcUZCUVhFUUFFQUNULzlBSjNBdFlBRHdBaEFDWUFLd0FBUlNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpZMU5UUW1KaU1pQmdZVkZSUVdGaE1uTnpNWElTYzNNeGNCVFZxRlNrcUZXbHFHU2txR1dpTXNGQlFzSXlNckZCUXJYSXNDc2t6K3VJc0Nza3dNUFh0Y1hYbzlQWHBkWEhzOWh4c3lJemtqTXhzYk15TTVJekliQWRXQ0JJYUNCSVlBQkFBay8vUUNkd0xWQUE4QUlRQWxBQ2tBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMk5UVTBKaVlqSWdZR0ZSVVVGaFlETlRNVk16VXpGUUZOV29WS1NvVmFXb1pLU29aYUl5d1VGQ3dqSXlzVUZDdVdtRVNZREQxN1hGMTZQVDE2WFZ4N1BZY2JNaU01SXpNYkd6TWpPU015R3dIUGk0dUxpd0FBQlFBay8vUUNkd05vQUE4QUlRQWxBQ2tBTFFBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmdNMU14VXpOVE1WSlRVaEZRRk5Xb1ZLU29WYVdvWktTb1phSXl3VUZDd2pJeXNVRkN1V21FU1kvcWdCUEF3OWUxeGRlajA5ZWwxY2V6MkhHeklqT1NNekd4c3pJemtqTWhzQno0dUxpNHU2WkdRQUJBQWsvL1FDZHdOb0FBOEFJUUFsQUNrQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZRE5UTVZKelVoRlFGTldvVktTb1ZhV29aS1NvWmFJeXdVRkN3akl5c1VGQ3NubU9vQlBBdzllMXhkZWowOWVsMWNlejJIR3pJak9TTXpHeHN6SXprak1oc0J6NGFHdW1Sa0FBQURBQ1QvUGdKM0Fod0FEd0FoQUNVQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZRE5UTVZBVTFhaFVwS2hWcGFoa3BLaGxvakxCUVVMQ01qS3hRVUt5aVlERDE3WEYxNlBUMTZYVng3UFljYk1pTTVJek1iR3pNak9TTXlHLzdEaG9ZQUFBTUFKUC8wQW5jQzFRQVBBQ0VBSmdBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmhNakp6Y3pBVTFhaFVwS2hWcGFoa3BLaGxvakxCUVVMQ01qS3hRVUs0ZUpvQUxMREQxN1hGMTZQVDE2WFZ4N1BZY2JNaU01SXpNYkd6TWpPU015R3dIVmdRUUFBQU1BSlAvMEFuY0M1QUFQQUNFQU9nQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalkxTlRRbUppTWlCZ1lWRlJRV0ZnTTFNekkyTlRRbUl5TTFQZ0l6TWg0Q0ZSUUdCZ2NWQVUxYWhVcEtoVnBhaGtwS2hsb2pMQlFVTENNakt4UVVLd01MRWd3U0VUb01JaU1NRWl3bkdob29Gd3c5ZTF4ZGVqMDllbDFjZXoySEd6SWpPU016R3hzekl6a2pNaHNCMURnSENnc0dNd01EQWdjUEdSTVRHUXdDR1FBREFDVC85QUxhQXJBQUR3QWhBQzBBQUVVaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMk5UVTBKaVlqSWdZR0ZSVVVGaFlUTlRJMk55TTFNeFVVQmdZQlRWcUZTa3FGV2xxR1NrcUdXaU1zRkJRc0l5TXJGQlFyMkNrNUNFYTBNR0FNUFh0Y1hYbzlQWHBkWEhzOWh4c3lJemtqTXhzYk15TTVJekliQVJKWEhSeVRWMEZiTHdBQUJBQWsvL1FDMmdMVkFBOEFJUUF0QURJQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZVE5USTJOeU0xTXhVVUJnWWxOek1YQndGTldvVktTb1ZhV29aS1NvWmFJeXdVRkN3akl5c1VGQ3ZZS1RrSVJyUXdZUDZnWE1zQ29BdzllMXhkZWowOWVsMWNlejJIR3pJak9TTXpHeHN6SXprak1oc0JFbGNkSEpOWFFWc3Z3b1VFZ1FBRUFDVC9QZ0xhQXJBQUR3QWhBQzBBTVFBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmhNMU1qWTNJelV6RlJRR0JnRTFNeFVCVFZxRlNrcUZXbHFHU2txR1dpTXNGQlFzSXlNckZCUXIyQ2s1Q0VhME1HRCt1SmdNUFh0Y1hYbzlQWHBkWEhzOWh4c3lJemtqTXhzYk15TTVJekliQVJKWEhSeVRWMEZiTC8yd2hvWUFCQUFrLy9RQzJnTFZBQThBSVFBdEFESUFBRVVpSmlZMU5EWTJNeklXRmhVVUJnWW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWVROVEkyTnlNMU14VVVCZ1luSXljM013Rk5Xb1ZLU29WYVdvWktTb1phSXl3VUZDd2pJeXNVRkN2WUtUa0lSclF3WUptSm9BTExERDE3WEYxNlBUMTZYVng3UFljYk1pTTVJek1iR3pNak9TTXlHd0VTVngwY2sxZEJXeS9DZ1FRQUJBQWsvL1FDMmdMa0FBOEFJUUF0QUVZQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZVE5USTJOeU0xTXhVVUJnWWxOVE15TmpVMEppTWpOVDRDTXpJZUFoVVVCZ1lIRlFGTldvVktTb1ZhV29aS1NvWmFJeXdVRkN3akl5c1VGQ3ZZS1RrSVJyUXdZUDdkQ3hJTUVoRTZEQ0lqREJJc0p4b2FLQmNNUFh0Y1hYbzlQWHBkWEhzOWh4c3lJemtqTXhzYk15TTVJekliQVJKWEhSeVRWMEZiTDhFNEJ3b0xCak1EQXdJSER4a1RFeGtNQWhrQUJBQWsvL1FDMmdMVkFBOEFJUUF0QUVVQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZVE5USTJOeU0xTXhVVUJnWWxORFkyTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdjQlRWcUZTa3FGV2xxR1NrcUdXaU1zRkJRc0l5TXJGQlFyMkNrNUNFYTBNR0QrU2gwMUpCb3lMaGNRRmdSRUhUVWtHekV1RnhBV0JBdzllMXhkZWowOWVsMWNlejJIR3pJak9TTXpHeHN6SXprak1oc0JFbGNkSEpOWFFWc3Z1Q1JDS1JRVUZ4RWtRU29VRkJjUkFBQUVBQ1QvOUFLREF0VUFEd0FoQUNZQUt3QUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalkxTlRRbUppTWlCZ1lWRlJRV0ZnTTNNeGNITXpjekZ3Y0JUVnFGU2txRldscUdTa3FHV2lNc0ZCUXNJeU1yRkJRcm1FeThBb3RvVEx3Q2l3dzllMXhkZWowOWVsMWNlejJIR3pJak9TTXpHeHN6SXprak1oc0IxWVVFZ1lVRWdRQUFBd0FrLy9RQ2R3TFZBQThBSVFBekFBQkZJaVltTlRRMk5qTXlGaFlWRkFZR0p6STJOalUxTkNZbUl5SUdCaFVWRkJZV0V6SVdGaFVqTGdJaklnWUdCeU0wTmpZQlRWcUZTa3FGV2xxR1NrcUdXaU1zRkJRc0l5TXJGQlFySXpsVExWOENHQ2NaRWljY0EyQXNVd3c5ZTF4ZGVqMDllbDFjZXoySEd6SWpPU016R3hzekl6a2pNaHNDV2l4Q0lnc1hFQTBXRHlKQ0xBQURBQ1QvOUFKM0Fyd0FEd0FoQUNVQUFFVWlKaVkxTkRZMk16SVdGaFVVQmdZbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZRE5TRVZBVTFhaFVwS2hWcGFoa3BLaGxvakxCUVVMQ01qS3hRVUszb0JQQXc5ZTF4ZGVqMDllbDFjZXoySEd6SWpPU016R3hzekl6a2pNaHNCM1dSa0FBTUFKUDh0QW5jQ0hBQVBBQ0VBTlFBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmhNaUppWTFORFkzTXhVR0JoVVVGak16RlFZR0FVMWFoVXBLaFZwYWhrcEtobG9qTEJRVUxDTWpLeFFVSzRnZ09pUWhFV29TRWhvYVBCYzZERDE3WEYxNlBUMTZYVng3UFljYk1pTTVJek1iR3pNak9TTXlHLzZ5RnpJcEpUTVZCQXduRXhjalRBY0lBQU1BSlAvYUFuY0NOZ0FQQUNFQUpRQUFSU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalkxTlRRbUppTWlCZ1lWRlJRV0ZnY0JNd0VCVFZxRlNrcUZXbHFHU2txR1dpTXNGQlFzSXlNckZCUXIvQUhrWFA0Y0REMTdYRjE2UFQxNlhWeDdQWWNiTWlNNUl6TWJHek1qT1NNeUc2RUNYUDJrQUFRQUpQL2FBbmNDMVFBUEFDRUFKUUFxQUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXQndFekFSTTNNeGNIQVUxYWhVcEtoVnBhaGtwS2hsb2pMQlFVTENNakt4UVVLL3dCNUZ6K0hHQmN5d0tnREQxN1hGMTZQVDE2WFZ4N1BZY2JNaU01SXpNYkd6TWpPU015RzZFQ1hQMmtBbmFGQklFQUFBTUFKUC8wQW5jQzFRQVBBQ0VBT1FBQVJTSW1KalUwTmpZek1oWVdGUlFHQmljeU5qWTFOVFFtSmlNaUJnWVZGUlFXRmdNME5qWXpNaFlXTXpJMk56TVVCZ1lqSWlZbUl5SUdCd0ZOV29WS1NvVmFXb1pLU29aYUl5d1VGQ3dqSXlzVUZDdTZJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GREQxN1hGMTZQVDE2WFZ4N1BZY2JNaU01SXpNYkd6TWpPU015R3dITEpFSXBGQlFYRVNSQktoUVVGeEVBQUFRQUpQLzBBbmNEYUFBUEFDRUFPUUE5QUFCRklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXQXpRMk5qTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUhKelVoRlFGTldvVktTb1ZhV29aS1NvWmFJeXdVRkN3akl5c1VGQ3U2SXo4cUlEczNHeE1hQlZFalB5b2dPemNiRXhvRkVRRThERDE3WEYxNlBUMTZYVng3UFljYk1pTTVJek1iR3pNak9TTXlHd0hMSkVJcEZCUVhFU1JCS2hRVUZ4RytaR1FBQUFNQUpQLzBBOVVDSEFBb0FEb0FSQUFBUlNJbUpqVTBOall6TWhZWE5qWXpNaFlXRlJVaEZCWVdNekkrQWpVekZBNENJeUltSndZR0p6STJOalUxTkNZbUl5SUdCaFVWRkJZV0pUTTBMZ0lqSWdZR0FVTlhnVWRIZ1ZjNFhpUWtYVGRjZ1VQK2lCTXJJaGdoRlFuQkkwVm5SVHhpSmlWZE9DQW5FaEluSUI4bkVoSW5BVHF1Q3hRZEV4NG9GZ3c5ZTF4ZGVqMFpHUmtaTzNwZklpUTBHd3dWSEJBdlREVWNHUmtaR1ljYk1pTTVJek1iR3pNak9TTXlHOGtWSVJjTUZpY0FBZ0E5L3pzQ2R3SWNBQlVBS0FBQVZ4RXpGek0yTmpNeUZoWVZGQVlHSXlJbUppY2pGUk15TmpZMU5UUW1KaU1pQmdZVkZSUWVBajJpRVFjY1VqTkdaRFUxWkVZY05Td1FCMVlmSmhFUkpoOGZKeElLRlNMRkF0VkxMeWc5ZTExY2VqME1HeFgxQVV3YUxoODFIeTRaSGpNZklSY3BIeElBQWdBOC96c0NkZ0xZQUJZQUtRQUFWeEV6RVRNK0FqTXlGaFlWRkFZR0l5SW1KaWNqRlJNeU5qWTFOVFFtSmlNaURnSVZGUlFXRmp6SEJ3c29PQ0pHWkRVMVpFWWNOU3dRQjFZZkpoRVJKaDhYSWhVS0VpZkZBNTMrN1JrbkZ6MTdYVng2UFF3YkZmVUJUQm91SHpVZkxoa1JIeWtYSVI4ekh3QUNBQ1QvT3dKZUFod0FGUUFvQUFCRk5TTU9BaU1pSmlZMU5EWTJNeklXRnpNM014RUJNajRDTlRVMEppWWpJZ1lHRlJVVUZoWUJsd2NTTERNY1JtUTFOV1JHTTFVWkJ4R2kvdU1YSWhVS0VpY2ZIeVlSRVNiRjlSTWJEajE2WEYxN1BTd3JTLzByQVV3U0h5a1hJUjh6SGhrdUh6VWZMaG9BQUFFQVBBQUFBYmdDSFFBVEFBQnpFVE1YTXo0Q016SVdGeFVqSWc0Q0ZSVThvdzBIRFNrMkhoUWdCMEFnTFJzTkFoQlFIaW9WQ0FTbkVTRXZIdXNBQWdBOEFBQUJ1QUxWQUJNQUdBQUFjeEV6RnpNK0FqTXlGaGNWSXlJT0FoVVZBemN6RndjOG93MEhEU2sySGhRZ0IwQWdMUnNOZEZ6TEFxQUNFRkFlS2hVSUJLY1JJUzhlNndKUWhRU0JBQUFDQUJvQUFBSE9BdFVBRXdBYkFBQnpFVE1YTXo0Q016SVdGeFVqSWc0Q0ZSVURNeGNqTnpNSEl6eWpEUWNOS1RZZUZDQUhRQ0F0R3czcGtXVTZaWk9HcUFJUVVCNHFGUWdFcHhFaEx4N3JBdFZaV1lVQUFBSUFQUDYyQWJnQ0hRQVRBQjhBQUhNUk14Y3pQZ0l6TWhZWEZTTWlEZ0lWRlFNMU1qWTFJelV6RlJRR0JqeWpEUWNOS1RZZUZDQUhRQ0F0R3cyeEtCOUhtQjFEQWhCUUhpb1ZDQVNuRVNFdkh1dit0a0VmS0l0d1BFZ2ZBQUFELzgwQUFBRzRBdFlBRXdBWUFCMEFBSE1STXhjelBnSXpNaFlYRlNNaURnSVZGUk1uTnpNWElTYzNNeGM4b3cwSERTazJIaFFnQjBBZ0xSc05LSXNDc2t6K3VJc0Nza3dDRUZBZUtoVUlCS2NSSVM4ZTZ3SlFnZ1NHZ2dTR0FBQUNBRG9BQUFHNEF0VUFFd0FsQUFCekVUTVhNejRDTXpJV0Z4VWpJZzRDRlJVRE1oWVdGU011QWlNaUJnWUhJelEyTmp5akRRY05LVFllRkNBSFFDQXRHdzBST1ZNdFh3SVlKeGtTSnh3RFlDeFRBaEJRSGlvVkNBU25FU0V2SHVzQzFTeENJZ3NYRUEwV0R5SkNMQUFBQVFBaS8vUUNRUUlkQUVJQUFFVWlMZ0kxTkRRM013WVVGUjRDTXpJMk5qVTBKaVluTGdNMU5ENENNekllQWhVVUZBY2pOVFFtSmlNaURnSVZGQllXRng0REZSUU9BZ0V3TUY5UE1BRzVBUUVYSmhjT0p4NGpPU0lsUzBBbkswdGZOQzFaU2l3QnR4VWhFUVlZR1JFWEp4Z21XRTh5TEV4akRCTXBRQzREQndRREJnSVNHQXdFRUJNUkVRc0dCaE1qT2k0MFJpa1JFU1U4S3dNSkFnZ1BFd2tCQmc0TkRBOEpCUWNOSHo4NU5ra3FFZ0FBQWdBaS8vUUNRUUxWQUVJQVJ3QUFSU0l1QWpVME5EY3pCaFFWSGdJek1qWTJOVFFtSmljdUF6VTBQZ0l6TWg0Q0ZSUVVCeU0xTkNZbUl5SU9BaFVVRmhZWEhnTVZGQTRDQXpjekZ3Y0JNREJmVHpBQnVRRUJGeVlYRGljZUl6a2lKVXRBSnl0TFh6UXRXVW9zQWJjVklSRUdHQmtSRnljWUpsaFBNaXhNWTZCY3l3S2dEQk1wUUM0REJ3UURCZ0lTR0F3RUVCTVJFUXNHQmhNak9pNDBSaWtSRVNVOEt3TUpBZ2dQRXdrQkJnNE5EQThKQlFjTkh6ODVOa2txRWdKY2hRU0JBQUlBSXYvMEFrRUMxUUJDQUVvQUFFVWlMZ0kxTkRRM013WVVGUjRDTXpJMk5qVTBKaVluTGdNMU5ENENNekllQWhVVUZBY2pOVFFtSmlNaURnSVZGQllXRng0REZSUU9BZ0V6RnlNM013Y2pBVEF3WDA4d0Fia0JBUmNtRnc0bkhpTTVJaVZMUUNjclMxODBMVmxLTEFHM0ZTRVJCaGdaRVJjbkdDWllUeklzVEdQKzY1RmxPbVdUaHFnTUV5bEFMZ01IQkFNR0FoSVlEQVFRRXhFUkN3WUdFeU02TGpSR0tSRVJKVHdyQXdrQ0NBOFRDUUVHRGcwTUR3a0ZCdzBmUHprMlNTb1NBdUZaV1lVQUFBSUFJdjh0QWtFQ0hRQkNBRm9BQUVVaUxnSTFORFEzTXdZVUZSNENNekkyTmpVMEppWW5MZ00xTkQ0Q016SWVBaFVVRkFjak5UUW1KaU1pRGdJVkZCWVdGeDRERlJRT0FnY2lKaWMxTXpJMk5UUW1JeU0zTXdjZUFoVVVEZ0lCTURCZlR6QUJ1UUVCRnlZWERpY2VJemtpSlV0QUp5dExYelF0V1Vvc0FiY1ZJUkVHR0JrUkZ5Y1lKbGhQTWl4TVl5MGlUUlpwRWhZUUZpZ1VZQXNTSnhvWkppb01FeWxBTGdNSEJBTUdBaElZREFRUUV4RVJDd1lHRXlNNkxqUkdLUkVSSlR3ckF3a0NDQThUQ1FFR0RnME1Ed2tGQncwZlB6azJTU29TeHdrSE9RWVFEd21EUkFJVEpSOGNKUlFJQUFJQUl2LzBBa0VDMVFCQ0FFb0FBRVVpTGdJMU5EUTNNd1lVRlI0Q016STJOalUwSmlZbkxnTTFORDRDTXpJZUFoVVVGQWNqTlRRbUppTWlEZ0lWRkJZV0Z4NERGUlFPQWdFM014Y2pKek1IQVRBd1gwOHdBYmtCQVJjbUZ3NG5IaU01SWlWTFFDY3JTMTgwTFZsS0xBRzNGU0VSQmhnWkVSY25HQ1pZVHpJc1RHUCs2NGFvaHBObE9tVU1FeWxBTGdNSEJBTUdBaElZREFRUUV4RVJDd1lHRXlNNkxqUkdLUkVSSlR3ckF3a0NDQThUQ1FFR0RnME1Ed2tGQncwZlB6azJTU29TQWx5RmhWbFpBQUlBSXY2MkFrRUNIUUJDQUU0QUFFVWlMZ0kxTkRRM013WVVGUjRDTXpJMk5qVTBKaVluTGdNMU5ENENNekllQWhVVUZBY2pOVFFtSmlNaURnSVZGQllXRng0REZSUU9BZ00xTWpZMUl6VXpGUlFHQmdFd01GOVBNQUc1QVFFWEpoY09KeDRqT1NJbFMwQW5LMHRmTkMxWlNpd0J0eFVoRVFZWUdSRVhKeGdtV0U4eUxFeGpmeWdmUjVnZFF3d1RLVUF1QXdjRUF3WUNFaGdNQkJBVEVSRUxCZ1lUSXpvdU5FWXBFUkVsUENzRENRSUlEeE1KQVFZT0RRd1BDUVVIRFI4L09UWkpLaEwrd2tFZktJdHdQRWdmLy84QUl2OCtBa0VDSFFZbUFYb0FBQUFIQXVJQTV3QUFBQUVBUXdBQUFuQUM0UUF3QUFCekVUUStBak15SGdJVkZBWUhGUllXRlJRR0JpTWpOVE15TmpZMU5DWW1JeU0xTXpJMk5qVTBKaU1pQmdZVkVVTXZUbDh4TGx4TkxqSXNOVVJBYjBkQUhCY21GaGNsRnh3YkV4MFJKU0VWSUJFQ0JUdFVOUmdTSzBrM01GSVNCUk5tUEVoZkw0Z2FLaGtiS3hxTkVoOFRIU2dTSHhUOTZnQUFBUUFJQUFBQmZ3TGhBQk1BQUhNUkl6VXpOVFEyTmpNeUZoWVhGU01pQmhVUlVrcEtNVmM1RHlnb0RTNGhGd0dKaHhaSVVpRUZDQVYxR1J6OTJ3QUJBQnYvOUFHY0FyQUFGd0FBUlNJbUpqVVJJelV6TnpNVk14VWpGUlFXTXpNVkRnSUJIRFpUTGtwU0s1UndjQllpT0JBdkx3d1pQallCQ0llZ29JZkpJaU4xQlFrRUFBQUNBQnYvOUFHY0FyQUFBd0FiQUFCM05TRVZCeUltSmpVUkl6VXpOek1WTXhVakZSUVdNek1WRGdJYkFYZDJObE11U2xJcmxIQndGaUk0RUM4djFuSnk0aGsrTmdFSWg2Q2doOGtpSTNVRkNRUUFBZ0FiLy9RQjhRTFZBQmNBR3dBQVJTSW1KalVSSXpVek56TVZNeFVqRlJRV016TVZEZ0lUTlRNSEFSdzJVeTVLVWl1VWNIQVdJamdRTHk4aG9pd01HVDQyQVFpSG9LQ0h5U0lqZFFVSkJBSTNxcW9BQWdBYi95MEJuQUt3QUJjQUx3QUFSU0ltSmpVUkl6VXpOek1WTXhVakZSUVdNek1WRGdJSElpWW5OVE15TmpVMEppTWpOek1ISGdJVkZBNENBUncyVXk1S1VpdVVjSEFXSWpnUUx5ODVJazBXYVJJV0VCWW9GR0FMRWljYUdTWXFEQmsrTmdFSWg2Q2doOGtpSTNVRkNRVEhDUWM1QmhBUENZTkVBaE1sSHh3bEZBZ0FBZ0FiL3JZQm5BS3dBQmNBSXdBQVJTSW1KalVSSXpVek56TVZNeFVqRlJRV016TVZEZ0lETlRJMk5TTTFNeFVVQmdZQkhEWlRMa3BTSzVSd2NCWWlPQkF2TDRzb0gwZVlIVU1NR1Q0MkFRaUhvS0NIeVNJamRRVUpCUDdDUVI4b2kzQThTQjhBQWdBYi96NEJuQUt3QUJjQUd3QUFSU0ltSmpVUkl6VXpOek1WTXhVakZSUVdNek1WRGdJSE5UTVZBUncyVXk1S1VpdVVjSEFXSWpnUUx5K0xtQXdaUGpZQkNJZWdvSWZKSWlOMUJRa0V0b2FHQUFFQU92LzBBbDRDRUFBWUFBQlhJaVkxRVRNUkZCNENNekkyTmpVUk14RWpKeU1PQXZKZVdzY0pFQm9RR1NVVng2TUtCeE03Umd4b1hnRlcvc0lRSEJRTEZ5WVdBVGI5OEZBZEtoVUFBQUlBT3YvMEFsNEMxUUFZQUIwQUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDQXpjekZ3ZnlYbHJIQ1JBYUVCa2xGY2VqQ2djVE8wWXNYTXNDb0F4b1hnRlcvc0lRSEJRTEZ5WVdBVGI5OEZBZEtoVUNYSVVFZ1FBQ0FEci85QUplQXRVQUdBQXFBQUJYSWlZMUVUTVJGQjRDTXpJMk5qVVJNeEVqSnlNT0FoTWlKaVkxTXg0Q016STJOamN6RkFZRzhsNWF4d2tRR2hBWkpSWEhvd29IRXp0R056bFRMR0FESENjU0dTY1lBbDh0VXd4b1hnRlcvc0lRSEJRTEZ5WVdBVGI5OEZBZEtoVUNVU3hESVE0WERSQVlDaUZETEFBQ0FEci85QUplQXRVQUdBQWdBQUJYSWlZMUVUTVJGQjRDTXpJMk5qVVJNeEVqSnlNT0FnTXpGeU0zTXdjajhsNWF4d2tRR2hBWkpSWEhvd29IRXp0R29aRmxPbVdUaHFnTWFGNEJWdjdDRUJ3VUN4Y21GZ0UyL2ZCUUhTb1ZBdUZaV1lVQUFnQTYvL1FDWGdMVkFCZ0FJQUFBVnlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SSXljakRnSUROek1YSXljekIvSmVXc2NKRUJvUUdTVVZ4Nk1LQnhNN1JxR0dxSWFUWlRwbERHaGVBVmIrd2hBY0ZBc1hKaFlCTnYzd1VCMHFGUUpjaFlWWldRQUFBd0FvLy9RQ1hnTFdBQmdBSFFBaUFBQlhJaVkxRVRNUkZCNENNekkyTmpVUk14RWpKeU1PQWhNbk56TVhJU2MzTXhmeVhsckhDUkFhRUJrbEZjZWpDZ2NUTzBad2l3S3lUUDY0aXdLeVRBeG9YZ0ZXL3NJUUhCUUxGeVlXQVRiOThGQWRLaFVDWElJRWhvSUVoZ0FEQURyLzlBSmVBdFVBR0FBY0FDQUFBRmNpSmpVUk14RVVIZ0l6TWpZMk5SRXpFU01uSXc0Q0F6VXpGVE0xTXhYeVhsckhDUkFhRUJrbEZjZWpDZ2NUTzBhQ21FU1lER2hlQVZiK3doQWNGQXNYSmhZQk52M3dVQjBxRlFKV2k0dUxpd0FBQkFBNi8vUUNYZ09CQUJnQUhBQWdBQ1VBQUZjaUpqVVJNeEVVSGdJek1qWTJOUkV6RVNNbkl3NENBelV6RlRNMU14VWxOek1YQi9KZVdzY0pFQm9RR1NVVng2TUtCeE03Um9LWVJKais0bHpMQXFBTWFGNEJWdjdDRUJ3VUN4Y21GZ0UyL2ZCUUhTb1ZBbGFMaTR1THNvVUVnUUFFQURyLzlBSmVBNEVBR0FBY0FDQUFLQUFBVnlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SSXljakRnSUROVE1WTXpVekZRRXpGeU0zTXdjajhsNWF4d2tRR2hBWkpSWEhvd29IRXp0R2dwaEVtUDV0a1dVNlpaT0dxQXhvWGdGVy9zSVFIQlFMRnlZV0FUYjk4RkFkS2hVQ1ZvdUxpNHNCTjFsWmhRQUFCQUE2Ly9RQ1hnT0JBQmdBSEFBZ0FDVUFBRmNpSmpVUk14RVVIZ0l6TWpZMk5SRXpFU01uSXc0Q0F6VXpGVE0xTXhVbkl5YzNNL0plV3NjSkVCb1FHU1VWeDZNS0J4TTdSb0tZUkpoWGlhQUN5d3hvWGdGVy9zSVFIQlFMRnlZV0FUYjk4RkFkS2hVQ1ZvdUxpNHV5Z1FRQUJBQTYvL1FDWGdOb0FCZ0FIQUFnQUNRQUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDQXpVekZUTTFNeFVsTlNFVjhsNWF4d2tRR2hBWkpSWEhvd29IRXp0R2dwaEVtUDZvQVR3TWFGNEJWdjdDRUJ3VUN4Y21GZ0UyL2ZCUUhTb1ZBbGFMaTR1THVtUmtBQUlBT3Y4K0FsNENFQUFZQUJ3QUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDQnpVekZmSmVXc2NKRUJvUUdTVVZ4Nk1LQnhNN1JoU1lER2hlQVZiK3doQWNGQXNYSmhZQk52M3dVQjBxRmJhR2hnQUNBRHIvOUFKZUF0VUFHQUFkQUFCWElpWTFFVE1SRkI0Q016STJOalVSTXhFakp5TU9BaE1qSnpjejhsNWF4d2tRR2hBWkpSWEhvd29IRXp0R200bWdBc3NNYUY0QlZ2N0NFQndVQ3hjbUZnRTIvZkJRSFNvVkFseUJCQUFBQWdBNi8vUUNYZ0xrQUJnQU1RQUFWeUltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJVE5UTXlOalUwSmlNak5UNENNekllQWhVVUJnWUhGZkplV3NjSkVCb1FHU1VWeDZNS0J4TTdSaEVMRWd3U0VUb01JaU1NRWl3bkdob29Gd3hvWGdGVy9zSVFIQlFMRnlZV0FUYjk4RkFkS2hVQ1d6Z0hDZ3NHTXdNREFnY1BHUk1UR1F3Q0dRQUNBRHIvOUFMVEF0d0FHQUFrQUFCWElpWTFFVE1SRkI0Q016STJOalVSTXhFakp5TU9BaE0xTWpZM0l6VXpGUlFHQnZKZVdzY0pFQm9RR1NVVng2TUtCeE03UnVVcE9RaEd0REJnREdoZUFWYit3aEFjRkFzWEpoWUJOdjN3VUIwcUZRSEZWeDBjazFkQld5OEFBQU1BT3YvMEF0TUMzQUFZQUNRQUtRQUFWeUltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJVE5USTJOeU0xTXhVVUJnWWxOek1YQi9KZVdzY0pFQm9RR1NVVng2TUtCeE03UnVVcE9RaEd0REJnL3FkY3l3S2dER2hlQVZiK3doQWNGQXNYSmhZQk52M3dVQjBxRlFIRlZ4MGNrMWRCV3krV2hRU0JBQU1BT3Y4K0F0TUMzQUFZQUNRQUtBQUFWeUltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJVE5USTJOeU0xTXhVVUJnWUJOVE1WOGw1YXh3a1FHaEFaSlJYSG93b0hFenRHNVNrNUNFYTBNR0QrdjVnTWFGNEJWdjdDRUJ3VUN4Y21GZ0UyL2ZCUUhTb1ZBY1ZYSFJ5VFYwRmJMLzJFaG9ZQUF3QTYvL1FDMHdMY0FCZ0FKQUFwQUFCWElpWTFFVE1SRkI0Q016STJOalVSTXhFakp5TU9BaE0xTWpZM0l6VXpGUlFHQmljakp6Y3o4bDVheHdrUUdoQVpKUlhIb3dvSEV6dEc1U2s1Q0VhME1HQ1NpYUFDeXd4b1hnRlcvc0lRSEJRTEZ5WVdBVGI5OEZBZEtoVUJ4VmNkSEpOWFFWc3Zsb0VFQUFNQU92LzBBdE1DNUFBWUFDUUFQUUFBVnlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SSXljakRnSVROVEkyTnlNMU14VVVCZ1lsTlRNeU5qVTBKaU1qTlQ0Q016SWVBaFVVQmdZSEZmSmVXc2NKRUJvUUdTVVZ4Nk1LQnhNN1J1VXBPUWhHdERCZy91UUxFZ3dTRVRvTUlpTU1FaXduR2hvb0Z3eG9YZ0ZXL3NJUUhCUUxGeVlXQVRiOThGQWRLaFVCeFZjZEhKTlhRVnN2bFRnSENnc0dNd01EQWdjUEdSTVRHUXdDR1FBREFEci85QUxUQXR3QUdBQWtBRHdBQUZjaUpqVVJNeEVVSGdJek1qWTJOUkV6RVNNbkl3NENFelV5Tmpjak5UTVZGQVlHSlRRMk5qTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUg4bDVheHdrUUdoQVpKUlhIb3dvSEV6dEc1U2s1Q0VhME1HRCtXUnd5SWhvdkxCVVBGUVJCSERJaUdTOHRGUThWQkF4b1hnRlcvc0lRSEJRTEZ5WVdBVGI5OEZBZEtoVUJ4VmNkSEpOWFFWc3ZqQ1JDS1JRVUZ4RWtRU29VRkJjUkFBQURBRHIvOUFLREF0VUFHQUFkQUNJQUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDQXpjekZ3Y3pOek1YQi9KZVdzY0pFQm9RR1NVVng2TUtCeE03Um9STXZBS0xhRXk4QW9zTWFGNEJWdjdDRUJ3VUN4Y21GZ0UyL2ZCUUhTb1ZBbHlGQklHRkJJRUFBQUlBT3YvMEFsNEMxUUFZQUNvQUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDRXpJV0ZoVWpMZ0lqSWdZR0J5TTBOamJ5WGxySENSQWFFQmtsRmNlakNnY1RPMFkzT1ZNdFh3SVlKeGtTSnh3RFlDeFRER2hlQVZiK3doQWNGQXNYSmhZQk52M3dVQjBxRlFMaExFSWlDeGNRRFJZUElrSXNBQUlBT3YvMEFsNEN2QUFZQUJ3QUFGY2lKalVSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDQXpVaEZmSmVXc2NKRUJvUUdTVVZ4Nk1LQnhNN1JtWUJQQXhvWGdGVy9zSVFIQlFMRnlZV0FUYjk4RkFkS2hVQ1pHUmtBQUlBT3Y4dEFub0NFQUFUQUN3QUFFVWlKaVkxTkRZM014VUdCaFVVRmpNekZRWUdKU0ltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJQ0VDQTZKQ0VSYWhJU0dobzhGenIreVY1YXh3a1FHaEFaSlJYSG93b0hFenRHMHhjeUtTVXpGUVFNSnhNWEkwd0hDTWRvWGdGVy9zSVFIQlFMRnlZV0FUYjk4RkFkS2hVQUFBTUFPdi8wQWw0REdnQVlBQ1FBTUFBQVZ5SW1OUkV6RVJRZUFqTXlOalkxRVRNUkl5Y2pEZ0lUSWlZMU5EWXpNaFlWRkFZbk1qWTFOQ1lqSWdZVkZCYnlYbHJIQ1JBYUVCa2xGY2VqQ2djVE8wWTRMejQrTHk4K1BpOFJGeGNSRVJjWERHaGVBVmIrd2hBY0ZBc1hKaFlCTnYzd1VCMHFGUUpOUFM4dlBqNHZMejFDR0JNU0Z4Z1RFaGNBQWdBNi8vUUNYZ0xWQUJnQU1BQUFWeUltTlJFekVSUWVBak15TmpZMUVUTVJJeWNqRGdJRE5EWTJNeklXRmpNeU5qY3pGQVlHSXlJbUppTWlCZ2Z5WGxySENSQWFFQmtsRmNlakNnY1RPMGFtSXo4cUlEczNHeE1hQlZFalB5b2dPemNiRXhvRkRHaGVBVmIrd2hBY0ZBc1hKaFlCTnYzd1VCMHFGUUpTSkVJcEZCUVhFU1JCS2hRVUZ4RUFBQUVBQUFBQUFtTUNFQUFQQUFCekF6TVhIZ0lYTXo0Q056Y3pBOGpJMWpNRkR4TUhCd2NTRUFVenhNb0NFS3NPT0Q0YUdEMDRFYXY5OEFBQkFBQUFBQU93QWhBQUp3QUFjd016Rng0Q0Z6TStBamMzTXhjZUFoY3pQZ0kzTnpNREl5Y3VBaWNqRGdJSEI4SEIxeWtFRFE4R0J3Y05EZ1lyeGlvRURROEdCd1VPRGdVcndzTENNZ1VNQ3dRRUF3c01Cak1DRUtFTk5Ud1pHVEl5R2FLakRqVTZHQlEyTnhTai9mQ3lFU3NwRHc0b0toT3pBQUlBQUFBQUE3QUMxUUFuQUN3QUFITURNeGNlQWhjelBnSTNOek1YSGdJWE16NENOemN6QXlNbkxnSW5JdzRDQndjRE56TVhCOEhCMXlrRURROEdCd2NORGdZcnhpb0VEUThHQndVT0RnVXJ3c0xDTWdVTUN3UUVBd3NNQmpNTFhNc0NvQUlRb1EwMVBCa1pNaklab3FNT05Ub1lGRFkzRktQOThMSVJLeWtQRGlncUU3TUNVSVVFZ1FBQUFnQUFBQUFEc0FMVkFDY0FMd0FBY3dNekZ4NENGek0rQWpjM014Y2VBaGN6UGdJM056TURJeWN1QWljakRnSUhCd00zTXhjakp6TUh3Y0hYS1FRTkR3WUhCdzBPQml2R0tnUU5Ed1lIQlE0T0JTdkN3c0l5QlF3TEJBUURDd3dHTTRDR3FJYVRaVHBsQWhDaERUVThHUmt5TWhtaW93NDFPaGdVTmpjVW8vM3dzaEVyS1E4T0tDb1Rzd0pRaFlWWldRQURBQUFBQUFPd0F0VUFKd0FyQUM4QUFITURNeGNlQWhjelBnSTNOek1YSGdJWE16NENOemN6QXlNbkxnSW5JdzRDQndjRE5UTVZNelV6RmNIQjF5a0VEUThHQndjTkRnWXJ4aW9FRFE4R0J3VU9EZ1Vyd3NMQ01nVU1Dd1FFQXdzTUJqTmhtRVNZQWhDaERUVThHUmt5TWhtaW93NDFPaGdVTmpjVW8vM3dzaEVyS1E4T0tDb1Rzd0pLaTR1TGl3QUNBQUFBQUFPd0F0VUFKd0FzQUFCekF6TVhIZ0lYTXo0Q056Y3pGeDRDRnpNK0FqYzNNd01qSnk0Q0p5TU9BZ2NIRXlNbk56UEJ3ZGNwQkEwUEJnY0hEUTRHSzhZcUJBMFBCZ2NGRGc0Rks4TEN3aklGREFzRUJBTUxEQVl6dkltZ0Fzc0NFS0VOTlR3WkdUSXlHYUtqRGpVNkdCUTJOeFNqL2ZDeUVTc3BEdzRvS2hPekFsQ0JCQUFCQUFRQUFBS1dBaEFBRFFBQWN4TW5NeGN6TnpNSEV5TW5Jd2NFeTdmcVZBUlUzTHJHNkdRRVpRRVkrSXlNL2Y3dHBxWUFBUUFBL3k0Q1l3SVFBQjBBQUZjaUppYzFNekkyTmpjRE14Y2VBaGN6UGdNM056TUREZ09jSkR3VFVDTWxEd0xTMWo0RkRnOEZCd1FKQ2dvRE9jUzhFaTA5VmRJTEIzY2FJZzBDRU5ZUE1qUVVEaVFuSWczWC9nQXhVejBoQUFJQUFQOHVBbU1DMVFBZEFDSUFBRmNpSmljMU16STJOamNETXhjZUFoY3pQZ00zTnpNRERnTVROek1YQjV3a1BCTlFJeVVQQXRMV1BnVU9Ed1VIQkFrS0NnTTV4THdTTFQxVkJGekxBcURTQ3dkM0dpSU5BaERXRHpJMEZBNGtKeUlOMS80QU1WTTlJUU1paFFTQkFBQUNBQUQvTGdKakF0VUFIUUFsQUFCWElpWW5OVE15TmpZM0F6TVhIZ0lYTXo0RE56Y3pBdzREQXpjekZ5TW5Nd2VjSkR3VFVDTWxEd0xTMWo0RkRnOEZCd1FKQ2dvRE9jUzhFaTA5VlhHR3FJYVRaVHBsMGdzSGR4b2lEUUlRMWc4eU5CUU9KQ2NpRGRmK0FERlRQU0VESW9XRldWa0FBd0FBL3k0Q1l3TFZBQjBBSVFBbEFBQlhJaVluTlRNeU5qWTNBek1YSGdJWE16NEROemN6QXc0REF6VXpGVE0xTXhXY0pEd1RVQ01sRHdMUzFqNEZEZzhGQndRSkNnb0RPY1M4RWkwOVZWS1lSSmpTQ3dkM0dpSU5BaERXRHpJMEZBNGtKeUlOMS80QU1WTTlJUU1jaTR1TGl3QUNBQUQvTGdKakFoQUFIUUFoQUFCWElpWW5OVE15TmpZM0F6TVhIZ0lYTXo0RE56Y3pBdzRETnpVekZad2tQQk5RSXlVUEF0TFdQZ1VPRHdVSEJBa0tDZ001eEx3U0xUMVYyWmpTQ3dkM0dpSU5BaERXRHpJMEZBNGtKeUlOMS80QU1WTTlJUkNHaGdBQUFnQUEveTRDWXdMVkFCMEFJZ0FBVnlJbUp6VXpNalkyTndNekZ4NENGek0rQXpjM013TU9BeE1qSnpjem5DUThFMUFqSlE4QzB0WStCUTRQQlFjRUNRb0tBem5FdkJJdFBWWExpYUFDeTlJTEIzY2FJZzBDRU5ZUE1qUVVEaVFuSWczWC9nQXhVejBoQXlLQkJBQUNBQUQvTGdKakF1UUFIUUEyQUFCWElpWW5OVE15TmpZM0F6TVhIZ0lYTXo0RE56Y3pBdzRERXpVek1qWTFOQ1lqSXpVK0FqTXlIZ0lWRkFZR0J4V2NKRHdUVUNNbER3TFMxajRGRGc4RkJ3UUpDZ29ET2NTOEVpMDlWVUVMRWd3U0VUb01JaU1NRWl3bkdob29GOUlMQjNjYUlnMENFTllQTWpRVURpUW5JZzNYL2dBeFV6MGhBeUU0QndvTEJqTURBd0lIRHhrVEV4a01BaGtBQUFJQUFQOHVBbU1DdkFBZEFDRUFBRmNpSmljMU16STJOamNETXhjZUFoY3pQZ00zTnpNRERnTUROU0VWbkNROEUxQWpKUThDMHRZK0JRNFBCUWNFQ1FvS0F6bkV2Qkl0UFZVMkFUelNDd2QzR2lJTkFoRFdEekkwRkE0a0p5SU4xLzRBTVZNOUlRTXFaR1FBQUFJQUFQOHVBbU1DMVFBZEFEVUFBRmNpSmljMU16STJOamNETXhjZUFoY3pQZ00zTnpNRERnTURORFkyTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdlY0pEd1RVQ01sRHdMUzFqNEZEZzhGQndRSkNnb0RPY1M4RWkwOVZYWWpQeW9nT3pjYkV4b0ZVU00vS2lBN054c1RHZ1hTQ3dkM0dpSU5BaERXRHpJMEZBNGtKeUlOMS80QU1WTTlJUU1ZSkVJcEZCUVhFU1JCS2hRVUZ4RUFBUUFVQUFBQ0Z3SVFBQWtBQUhNMUV5TTFJUlVETXhVVTN0SUI3dURwUVFGSWh6Nyt0WWNBQUFJQUZBQUFBaGNDMVFBSkFBNEFBSE0xRXlNMUlSVURNeFVCTnpNWEJ4VGUwZ0h1NE9uK20xekxBcUJCQVVpSFB2NjFod0pRaFFTQkFBQUNBQlFBQUFJWEF0VUFDUUFSQUFCek5STWpOU0VWQXpNVkFUTVhJemN6QnlNVTN0SUI3dURwL2lhUlpUcGxrNGFvUVFGSWh6Nyt0WWNDMVZsWmhRQUFBZ0FVQUFBQ0Z3TFFBQWtBRFFBQWN6VVRJelVoRlFNekZRRTFNeFVVM3RJQjd1RHAvclNZUVFGSWh6Nyt0WWNDU29hR0FBRUFPLzh2QWw4Q0VBQXFBQUJGSWlZbU5UVXpGQllXTXpJMk5qVTFJdzRDSXlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SRkE0Q0FVTmVkVFhHREI0YklpWVFCeEkxUUNGYldjY0pFQm9RR1NVVnh5eE9aOUVvU2pFZkR4a1BHQ2NXWXgwcUZXaGVBVFQrN0JBY0ZBc1hKaFlCRFA0U1BsdzhIUUFBQWdBNy95OENYd0xWQUNvQUx3QUFSU0ltSmpVMU14UVdGak15TmpZMU5TTU9BaU1pSmpVUk14RVVIZ0l6TWpZMk5SRXpFUlFPQWdNM014Y0hBVU5lZFRYR0RCNGJJaVlRQnhJMVFDRmJXY2NKRUJvUUdTVVZ4eXhPWjVSY3l3S2cwU2hLTVI4UEdROFlKeFpqSFNvVmFGNEJOUDdzRUJ3VUN4Y21GZ0VNL2hJK1hEd2RBeUdGQklFQUFnQTcveThDWHdMVkFDb0FNZ0FBUlNJbUpqVTFNeFFXRmpNeU5qWTFOU01PQWlNaUpqVVJNeEVVSGdJek1qWTJOUkV6RVJRT0FnRTNNeGNqSnpNSEFVTmVkVFhHREI0YklpWVFCeEkxUUNGYldjY0pFQm9RR1NVVnh5eE9aLzczaHFpR2syVTZaZEVvU2pFZkR4a1BHQ2NXWXgwcUZXaGVBVFQrN0JBY0ZBc1hKaFlCRFA0U1BsdzhIUU1oaFlWWldRQURBRHYvTHdKZkF0VUFLZ0F1QURJQUFFVWlKaVkxTlRNVUZoWXpNalkyTlRVakRnSWpJaVkxRVRNUkZCNENNekkyTmpVUk14RVVEZ0lETlRNVk16VXpGUUZEWG5VMXhnd2VHeUltRUFjU05VQWhXMW5IQ1JBYUVCa2xGY2NzVG1mcW1FU1kwU2hLTVI4UEdROFlKeFpqSFNvVmFGNEJOUDdzRUJ3VUN4Y21GZ0VNL2hJK1hEd2RBeHVMaTR1TEFBQUNBRHYrYkFKZkFoQUFLZ0F1QUFCRklpWW1OVFV6RkJZV016STJOalUxSXc0Q0l5SW1OUkV6RVJRZUFqTXlOalkxRVRNUkZBNENCelV6RlFGRFhuVTF4Z3dlR3lJbUVBY1NOVUFoVzFuSENSQWFFQmtsRmNjc1RtZDhtTkVvU2pFZkR4a1BHQ2NXWXgwcUZXaGVBVFQrN0JBY0ZBc1hKaFlCRFA0U1BsdzhIY09HaGdBQ0FEdi9Md0pmQXRVQUtnQXZBQUJGSWlZbU5UVXpGQllXTXpJMk5qVTFJdzRDSXlJbU5SRXpFUlFlQWpNeU5qWTFFVE1SRkE0Q0V5TW5Oek1CUTE1MU5jWU1IaHNpSmhBSEVqVkFJVnRaeHdrUUdoQVpKUlhITEU1bk00bWdBc3ZSS0VveEh3OFpEeGduRm1NZEtoVm9YZ0UwL3V3UUhCUUxGeVlXQVF6K0VqNWNQQjBESVlFRUFBQUNBRHYvTHdKZkF1UUFLZ0JEQUFCRklpWW1OVFV6RkJZV016STJOalUxSXc0Q0l5SW1OUkV6RVJRZUFqTXlOalkxRVRNUkZBNENBelV6TWpZMU5DWWpJelUrQWpNeUhnSVZGQVlHQnhVQlExNTFOY1lNSGhzaUpoQUhFalZBSVZ0Wnh3a1FHaEFaSlJYSExFNW5Wd3NTREJJUk9nd2lJd3dTTENjYUdpZ1gwU2hLTVI4UEdROFlKeFpqSFNvVmFGNEJOUDdzRUJ3VUN4Y21GZ0VNL2hJK1hEd2RBeUE0QndvTEJqTURBd0lIRHhrVEV4a01BaGtBQWdBNy95OENYd0s4QUNvQUxnQUFSU0ltSmpVMU14UVdGak15TmpZMU5TTU9BaU1pSmpVUk14RVVIZ0l6TWpZMk5SRXpFUlFPQWdNMUlSVUJRMTUxTmNZTUhoc2lKaEFIRWpWQUlWdFp4d2tRR2hBWkpSWEhMRTVuemdFODBTaEtNUjhQR1E4WUp4WmpIU29WYUY0Qk5QN3NFQndVQ3hjbUZnRU0vaEkrWER3ZEF5bGtaQUFDQUR2L0x3SmZBdFVBS2dCQ0FBQkZJaVltTlRVekZCWVdNekkyTmpVMUl3NENJeUltTlJFekVSUWVBak15TmpZMUVUTVJGQTRDQVRRMk5qTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUhBVU5lZFRYR0RCNGJJaVlRQnhJMVFDRmJXY2NKRUJvUUdTVVZ4eXhPWi83eUl6OHFJRHMzR3hNYUJWRWpQeW9nT3pjYkV4b0YwU2hLTVI4UEdROFlKeFpqSFNvVmFGNEJOUDdzRUJ3VUN4Y21GZ0VNL2hJK1hEd2RBeGNrUWlrVUZCY1JKRUVxRkJRWEVRQUNBQ1QvOUFKd0F0TUFKQUFwQUFCRklpWW1OVFEyTmpNeUhnSVZJelFtSmlNaUJnWVZGUlFXRmpNeU5qWTFNeFFPQWdNM014Y0hBVTFhaFVwS2hWbzhhbEF0d1Jjc0h5TXJGQlV0SkNFdEdMa3RVR3A2R0tBRU9ndzllMXhkZXowYU5sWThIeWdUR3pNak9TTXlHeE1wSUR4WE5ob0NXb1VLZXdBQUFnQThBQUFDWUFMVkFCa0FIZ0FBY3hFekZ6TStBak15RmhZVkVTTVJOQzRDSXlJR0JoVVJFemN6RndjOG93MEhGVGhFSkQ5UktNY0pFQmtSR1NVVkRoaWdCRG9DRUZBZktSUXZXRC8rcWdFK0VSc1VDeGNsRi83S0FsQ0ZDbnNBQXdBay8vUUNkd0xWQUE4QUlRQW1BQUJGSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdBemN6RndjQlRWcUZTa3FGV2xxR1NrcUdXaU1zRkJRc0l5TXJGQlFyR2hpZ0JEb01QWHRjWFhvOVBYcGRYSHM5aHhzeUl6a2pNeHNiTXlNNUl6SWJBZFdGQ25zQUFnQWkvL1FDUVFMVkFFSUFSd0FBUlNJdUFqVTBORGN6QmhRVkhnSXpNalkyTlRRbUppY3VBelUwUGdJek1oNENGUlFVQnlNMU5DWW1JeUlPQWhVVUZoWVhIZ01WRkE0Q0F6Y3pGd2NCTURCZlR6QUJ1UUVCRnlZWERpY2VJemtpSlV0QUp5dExYelF0V1Vvc0FiY1ZJUkVHR0JrUkZ5Y1lKbGhQTWl4TVkzb1lvQVE2REJNcFFDNERCd1FEQmdJU0dBd0VFQk1SRVFzR0JoTWpPaTQwUmlrUkVTVThLd01KQWdnUEV3a0JCZzROREE4SkJRY05Iejg1TmtrcUVnSmNoUXA3QUFJQUZBQUFBaGNDMVFBSkFBNEFBSE0xRXlNMUlSVURNeFVCTnpNWEJ4VGUwZ0h1NE9uK3dSaWdCRHBCQVVpSFB2NjFod0pRaFFwN0FBQUJBQWdBQUFMdUF1RUFLd0FBY3hFak5UTTFORFkyTXpJV0ZoY1ZJeUlHRlJVek5UUTJOak15RmhZWEZTTWlCaFVWTXhVakVTTVJJeEZTU2tveFZ6a1BLQ2dOTGlFWHFERlhPUThvS0EwdUlSZG1ac2VvQVltSEZraFNJUVVJQlhVWkhCVVdTRkloQlFnRmRSa2NGWWYrZHdHSi9uY0FBd0FJQUFBRDl3TGhBQ3NBTHdBekFBQnpFU00xTXpVME5qWXpNaFlXRnhVaklnWVZGVE0xTkRZMk16SVdGaGNWSXlJR0ZSVXpGU01SSXhFakVRRTFNeFVERVRNUlVrcEtNVmM1RHlnb0RTNGhGNmd4VnprUEtDZ05MaUVYWm1iSHFBSVh4OGZIQVltSEZraFNJUVVJQlhVWkhCVVdTRkloQlFnRmRSa2NGWWYrZHdHSi9uY0NUb2VIL2JJQ0VQM3dBQUFDQUFnQUFBUDNBdUVBS3dBdkFBQnpFU00xTXpVME5qWXpNaFlXRnhVaklnWVZGVE0xTkRZMk16SVdGaGNWSXlJR0ZSVXpGU01SSXhFakVTRVJNeEZTU2tveFZ6a1BLQ2dOTGlFWHFERlhPUThvS0EwdUlSZG1ac2VvQWhmSEFZbUhGa2hTSVFVSUJYVVpIQlVXU0ZJaEJRZ0ZkUmtjRllmK2R3R0ovbmNDMWYwckFBQURBQWdBQUFLSUF1RUFGd0FiQUI4QUFITVJJelV6TlRRMk5qTXlGaFlYRlNNaUJoVVZNeFVqRVJNMU14VURFVE1SVWtwS01WYzVEeWdvRFM0aEYyWm1xTWZIeHdHSmh4WklVaUVGQ0FWMUdSd1ZoLzUzQWs2SGgvMnlBaEQ5OEFBQ0FBZ0FBQUtJQXVFQUZ3QWJBQUJ6RVNNMU16VTBOall6TWhZV0Z4VWpJZ1lWRlRNVkl4RXpFVE1SVWtwS01WYzVEeWdvRFM0aEYyWm1xTWNCaVljV1NGSWhCUWdGZFJrY0ZZZitkd0xWL1NzQUFnQU1BVW9CcWdLNkFDMEFPZ0FBVXlJbUpqVTBQZ0l6TlRRbUppTWlCZ1lWRlNNbU5EVTBOak15RmhZVkZSUVdNek1WQmdZaklpWW5Jd1lHTnpJMk5qVTFJZ1lHRlJRV0ZvWWtOeDhnUGxrNERSY09FUllMZ0FGZFdDOVJNZzBJR0FZaEhTY3RDUWNYUEF3UkhSSW1NQllORkFGS0Vpc2xKekViQ2hVT0V3b0pEUWNJQWdnQ0x6c1hNaW1QRFExR0F3d1lGQlVYVHc0YUVCc0xGZzhORUFZQUFnQUdBVWtCaXdLNkFBOEFIUUFBVXlJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpVMU5DWWpJZ1lWRlJRV3lEcFlNREJZT2p0WU1EQllPeU1lSGlNbEd4NEJTU2xTUGo1UktTbFJQajVTS1ZVdEp4OG5MQzhrSHljdEFBQUJBQ3NCVkFHUkFyc0FGUUFBVXhFekZ6TTJOak15RmhVVkl6VTBKaU1pQmdZVkZTdHFDUWNUUHlJK09vSVdGaEFZRGdGVUFWb3VIQjlEUHViV0dSd1JHeEhPQUFJQUdnQUFBdjRDc0FBREFCY0FBSE1USVJNbE15WW1KeWN1QWljakRnTUhCdzRDR3U4QkJmRCtFK2dEREFVL0F3c0tCQVFEQ0FnSUEwSURDQWNDc1AxUW1Rb2tFOU1MSWlRT0NSa2FHUXJRQ2hrWUFBRUFId0FBQXpnQ3ZBQXZBQUJ6TlRNeUZoWVhKaVkxTkRZMk16SVdGaFVVQmdjK0FqTXpGU0UxUGdJMU5UUW1KaU1pQmdZVkZSUVdGaGNWSHhVUEp5Z1FManRacG5OMHBsbzhMeEVuSnc4Vy9yQWRKaE1oUVRFd1FDQVNKaHltQmdrRkxIaE1ZWXhOVFl4aFRIZ3NCUWtHcHBNTEt6c2tVQzlJS0NoSUwxQWtPeW9Na3dBQUFRQTgvenNDWUFJUUFCMEFBRmNSTXhFVUhnSXpNalkyTlJFekVTTW5JdzRDSXlJbUp4WVdGUlU4eHdrUUdoQVpKUlhIb3dvSERDTXNIQTBlRVFRR3hRTFYvc0lRSEJRTEZ5WVdBVGI5OEZBYUpCSUZCQll6RG5jQUFRQVdBQUFDcHdJUUFCNEFBSE0rQXpVaUJnY25Oall6SVFjakZSUVdGeU1tSmpVMUl3NERCMUVNRmhJS0lUVVVEeE5oVVFITURVa0lCYThLQ1Z3QkN4RVZEU2RvY1dzb0JRVmpFUk45N2poVUdRNVdOZm9zY1hWakhnQUJBQ3YvZmdHUkFPVUFGUUFBVnhFekZ6TTJOak15RmhVVkl6VTBKaU1pQmdZVkZTdHFDUWNUUHlJK09vSVdGaEFZRG9JQldpNGNIME0rNXRZWkhCRWJFYzRBQUFJQUtmLzBBbklDdkFBVEFDVUFBRVVpTGdJMU5ENENNekllQWhVVURnSW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUJUbFZ5UWh3Y1FuSlZWbkZCSEJ4QmNWWWpLaElTS2lNaktoTVRLZ3d6WG9OUVVJTmVNek5lZzFCUWcxNHpoeVJNUEdNOVN5TWpTejFqUEV3a0FBQUJBR2tBQUFKd0FyRUFEUUFBY3pVekVTTTFQZ0kzTXhFekZXbWpveTlyWmlkRG5ab0JOM1FESURBWi9lbWFBQUFCQURFQUFBSnJBcndBS3dBQWN6VTBQZ0kzUGdJMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUhnSVZGQTRDQnc0Q0J5RVZNU1E5U2ljb1Jpd1NKUjhmS3hleUFVR0RZejFpUlNVaVBsQXZHQjRPQWdFdE1DcExRejBkSGpJMElCTWhGUmdyR3hRR0N3VkhhRG9kTjB3dkxrcEFQQjhRRlFvQ3FRQUFBUUFxLy9RQ2NRSzhBRFlBQUVVaUppWTFOVE1WRkJZek1qWTFOQ1ltSXlNMU16STJOalUwSmlZaklnWUdGUlVqTlRRMk5qTXlGaFlWRkFZR0J4VVdGaFVPQWdGUFpJSS9zRE0xT2k0VEh4UkpPUlFmRXhRbkhSa3FHS2RBZTFoVmR6NFpMUjQ1UHdJL2ZndzJXallWRXhvbE5DZ1pIeEI3RUNBWUZTUVdFeDRSQ2hrMFZUTXpWVE1pUGkwTEJCSlpQemRhTmdBQUFRQVhBQUFDaEFLOEFCc0FBR0UxSVRVK0FqY3pEZ1FITXpVK0F6Y3pFVE1WSXhVQlp2NnhJVWRDRnNRRUpEWkFRQjNHRFI4Z0dBVlZZR0NObFRDRG1VNGhWRjViVVIyUEVqUTVOeFgrcHBPTkFBRUFKLy8wQW5FQ3NBQW1BQUJGSWlZbU5UTVVGaFl6TWpZMk5UUW1KaU1pQmdZSEp4TWhGU0VITURZMk16SVdGaFVVQmdZQlYyU0hSYkFZTUNNakx4Z1lMeUloSmhNR25oMEIzUDY1Q0NOQ0xrbHJPMFYrRER0cFJob3NHaHN1SFI0dUd4UVhCeFlCZ2Fwb0ZoYzRhVWxCYkVBQUFnQXAvL1FDZHdLOEFDSUFNZ0FBUlNJdUFqVTBQZ0l6TWhZV0ZTTTBKaVlqSWdZR0ZUNENNeklXRmhVVUJnWW5NalkyTlRRbUppTWlCZ1lWRkJZV0FWTkxjRW9sSlVwd1MxSjdScklYS2gwb0xCQVZNelFWUkc5QlNJTlpJQ3dYRnlzZ0h5d1hGaXdNS1ZPQVYyU09XU28xWjB3aEt4VWtUejhURmdzd1hrVk5hemlIRmlzZklDd1lGeXNnSHl3WEFBQUJBQzBBQUFKeEFyQUFFQUFBY3pRK0FqY2hOU0VWRGdRVkZaNGdPMDh2L3JZQ1JDWklQaThhUjRxRGVUZXNXeTlqYVc1MFBUc0FBQU1BS2YvMEFuSUN2QUFiQUNjQU13QUFSU0ltSmpVME5qY21KalUwTmpZek1oWVdGUlFHQnhZV0ZSUUdCaWN5TmpVMEppTWlCaFVVRmhNeU5qVTBKaU1pQmhVVUZnRk1XWU5IUERFeUlrZDVTa3A2U0NNeE1qeEpoRmtwTmprbUpUYzBLQ1k1Tmlrb05EY01MbHBCUGtZY0tFRXJRbG92TDFwQ0xVRW1IRVkrUVZvdWh5b29LU2twS1NncUFTTWpLQ2tqSXlrb0l3QUFBZ0FrLy9RQ2NnSzhBQ0lBTWdBQVJTSW1KalV6RkJZV016STJOalVPQWlNaUppWTFORFkyTXpJZUFoVVVEZ0lETWpZMk5UUW1KaU1pQmdZVkZCWVdBVWhSZkVheUZ5c2NLU3NRRkRRekZrUnZRVWlEV1V0d1NpVWxTbkJOSUN3WEZ5c2dIeXdYRml3TU5XZE1JQ3dWSlU0L0VoY0xNRjlFVFdzNEtWT0FWMlNPV1NvQmZSWXJIeUFzR0JjcklCOHNGd0FEQUNuLzlBSnlBcndBQXdBWEFDa0FBR1VuRXhjRElpNENOVFErQWpNeUhnSVZGQTRDSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXQVJnb2tDbGJWWEpDSEJ4Q2NsVldjVUVjSEVGeFZpTXFFaElxSXlNcUV4TXFlRUlCZ1QzOTlqTmVnMUJRZzE0ek0xNkRVRkNEWGpPSEpFdzhZejFMSXlOTFBXTThUQ1FBQUFJQUtmLzBBbklDdkFBVEFDVUFBRVVpTGdJMU5ENENNekllQWhVVURnSW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUJUbFZ5UWh3Y1FuSlZWbkZCSEJ4QmNWWWpLaElTS2lNaktoTVRLZ3d6WG9OUVVJTmVNek5lZzFCUWcxNHpoeVJNUEdNOVN5TWpTejFqUEV3a0FBQUJBR2tBQUFKd0FyRUFEUUFBY3pVekVTTTFQZ0kzTXhFekZXbWpveTlyWmlkRG5ab0JOM1FESURBWi9lbWFBQUFCQURFQUFBSnJBcndBS3dBQWN6VTBQZ0kzUGdJMU5DWW1JeUlHQmhVVkl5WTBOVFEyTmpNeUhnSVZGQTRDQnc0Q0J5RVZNU1E5U2ljb1Jpd1NKUjhmS3hleUFVR0RZejFpUlNVaVBsQXZHQjRPQWdFdE1DcExRejBkSGpJMElCTWhGUmdyR3hRR0N3VkhhRG9kTjB3dkxrcEFQQjhRRlFvQ3FRQUFBUUFxLy9RQ2NRSzhBRFlBQUVVaUppWTFOVE1WRkJZek1qWTFOQ1ltSXlNMU16STJOalUwSmlZaklnWUdGUlVqTlRRMk5qTXlGaFlWRkFZR0J4VVdGaFVPQWdGUFpJSS9zRE0xT2k0VEh4UkpPUlFmRXhRbkhSa3FHS2RBZTFoVmR6NFpMUjQ1UHdJL2ZndzJXallWRXhvbE5DZ1pIeEI3RUNBWUZTUVdFeDRSQ2hrMFZUTXpWVE1pUGkwTEJCSlpQemRhTmdBQUFRQVhBQUFDaEFLOEFCc0FBR0UxSVRVK0FqY3pEZ1FITXpVK0F6Y3pFVE1WSXhVQlp2NnhJVWRDRnNRRUpEWkFRQjNHRFI4Z0dBVlZZR0NObFRDRG1VNGhWRjViVVIyUEVqUTVOeFgrcHBPTkFBRUFKLy8wQW5FQ3NBQW1BQUJGSWlZbU5UTVVGaFl6TWpZMk5UUW1KaU1pQmdZSEp4TWhGU0VITURZMk16SVdGaFVVQmdZQlYyU0hSYkFZTUNNakx4Z1lMeUloSmhNR25oMEIzUDY1Q0NOQ0xrbHJPMFYrRER0cFJob3NHaHN1SFI0dUd4UVhCeFlCZ2Fwb0ZoYzRhVWxCYkVBQUFnQXAvL1FDZHdLOEFDSUFNZ0FBUlNJdUFqVTBQZ0l6TWhZV0ZTTTBKaVlqSWdZR0ZUNENNeklXRmhVVUJnWW5NalkyTlRRbUppTWlCZ1lWRkJZV0FWTkxjRW9sSlVwd1MxSjdScklYS2gwb0xCQVZNelFWUkc5QlNJTlpJQ3dYRnlzZ0h5d1hGaXdNS1ZPQVYyU09XU28xWjB3aEt4VWtUejhURmdzd1hrVk5hemlIRmlzZklDd1lGeXNnSHl3WEFBQUJBQzBBQUFKeEFyQUFFQUFBY3pRK0FqY2hOU0VWRGdRVkZaNGdPMDh2L3JZQ1JDWklQaThhUjRxRGVUZXNXeTlqYVc1MFBUc0FBQU1BS2YvMEFuSUN2QUFiQUNjQU13QUFSU0ltSmpVME5qY21KalUwTmpZek1oWVdGUlFHQnhZV0ZSUUdCaWN5TmpVMEppTWlCaFVVRmhNeU5qVTBKaU1pQmhVVUZnRk1XWU5IUERFeUlrZDVTa3A2U0NNeE1qeEpoRmtwTmprbUpUYzBLQ1k1Tmlrb05EY01MbHBCUGtZY0tFRXJRbG92TDFwQ0xVRW1IRVkrUVZvdWh5b29LU2twS1NncUFTTWpLQ2tqSXlrb0l3QUFBZ0FrLy9RQ2NnSzhBQ0lBTWdBQVJTSW1KalV6RkJZV016STJOalVPQWlNaUppWTFORFkyTXpJZUFoVVVEZ0lETWpZMk5UUW1KaU1pQmdZVkZCWVdBVWhSZkVheUZ5c2NLU3NRRkRRekZrUnZRVWlEV1V0d1NpVWxTbkJOSUN3WEZ5c2dIeXdYRml3TU5XZE1JQ3dWSlU0L0VoY0xNRjlFVFdzNEtWT0FWMlNPV1NvQmZSWXJIeUFzR0JjcklCOHNGd0FEQUNuLzlBSnlBcndBQXdBWEFDa0FBR1VuRXhjRElpNENOVFErQWpNeUhnSVZGQTRDSnpJMk5qVTFOQ1ltSXlJR0JoVVZGQllXQVJnb2tDbGJWWEpDSEJ4Q2NsVldjVUVjSEVGeFZpTXFFaElxSXlNcUV4TXFlRUlCZ1QzOTlqTmVnMUJRZzE0ek0xNkRVRkNEWGpPSEpFdzhZejFMSXlOTFBXTThUQ1FBQUFJQUtmLzBBbklDSFFBVEFDVUFBRVVpTGdJMU5ENENNekllQWhVVURnSW5NalkyTlRVMEppWWpJZ1lHRlJVVUZoWUJUbEp3UkI4ZlJIQlNVbkJFSGg1RWNGSWpLUklTS1NNaktoTVRLZ3dyVEdRNU9XUk1MQ3hNWkRrNVpFd3JoeGtxR1dJYUtSZ1lLUnBpR1NvWkFBQUJBRGNBQUFJK0FoTUFEUUFBY3pVek5TTTFQZ0kzTXhFekZUZWpveTlyWmlkRG5acWpkQU1kS3hmK2g1b0FBUUF4QUFBQ2F3SWRBQzBBQUhNMU5ENENOejRDTlRRbUppTWlCZ1lWRlNNbU5EVTBQZ0l6TWg0Q0ZSUU9BZ2NPQXhVaEZURXJSVk1uSkRzakR5VWlJU3NWc2dFa1NXOUxQbUpGSkNRNVFSMEtHQlFNQVFVNkwwTXVJZzROR0IwVEN4a1JGaVFVRlFVT0JDMU9PaUFhTUVBbktqc3BHd3NEQ0FnR0E1d0FBUUFxLzFVQ2NRSWRBRFlBQUVVaUppWTFOVE1WRkJZek1qWTFOQ1ltSXlNMU16STJOalUwSmlZaklnWUdGUlVqTlRRMk5qTXlGaFlWRkFZR0J4VVdGaFVPQWdGUFpJSS9zRE0xT2k0VEh4UkpPUlFmRXhRbkhSa3FHS2RBZTFoVmR6NFpMUjQ1UHdJL2ZxczJXallWRXhvbE5DZ1pIeEI3RUNBWUZTUVdFeDRSQ2hrMFZUTXpWVE1pUGkwTEJCSlpQemRhTmdBQUFRQVgvMkVDaEFJZEFCb0FBRVUxSVRVK0FqY3pEZ1FITXpVK0FqY3pFVE1WSXhVQlp2NnhJVWRDRnNRRUpEVS9RUjdHRVN3bEIxVmdZSitmbFM1K2trb2ZWRjFaU2hkN0dVcE9IUDY0azU4QUFBRUFKLzlVQW5FQ0VBQWxBQUJGSWlZbU5UTVVGaFl6TWpZMk5UUW1KaU1pQmdZSEp4TWhGU0VITmpZek1oWVdGUlFHQmdGWFpJZEZzQmd3SXlNdkdCZ3ZJaUVtRXdhZUhRSGMvcmtJRVU4elNXczdSWDZzTzJsR0dpd2FHeTRkSGk0YkZCY0hGZ0dCcW1nT0h6aHBTVUZzUUFBQUFnQXAvL1FDZHdLOEFDSUFNZ0FBUlNJdUFqVTBQZ0l6TWhZV0ZTTTBKaVlqSWdZR0ZUNENNeklXRmhVVUJnWW5NalkyTlRRbUppTWlCZ1lWRkJZV0FWTkxjRW9sSlVwd1MxSjdScklYS2gwb0xCQVZNelFWUkc5QlNJTlpJQ3dYRnlzZ0h5d1hGaXdNS1ZPQVYyU09XU28xWjB3aEt4VWtUejhURmdzd1hrVk5hemlIRmlzZklDd1lGeXNnSHl3WEFBQUJBQzMvWUFKeEFoQUFFZ0FBVnpRK0FqY2hOU0VWRGdRVkZCUVZuaUE3VHkvK3RnSkVKa2crTHhxZ1I0cURlVGVzV3k5amFXNTBQUThkRHdBREFDbi85QUp5QXJ3QUd3QW5BRE1BQUVVaUppWTFORFkzSmlZMU5EWTJNeklXRmhVVUJnY1dGaFVVQmdZbk1qWTFOQ1lqSWdZVkZCWVRNalkxTkNZaklnWVZGQllCVEZtRFJ6d3hNaUpIZVVwS2VrZ2pNVEk4U1lSWktUZzdKaVk0TlNrbU9UWXBLRFEzREM1YVFUNUdIQ2hCSzBKYUx5OWFRaTFCSmh4R1BrRmFMb2NxS0NrcEtTa29LZ0VqSXlncEl5TXBLQ01BQUFJQUpQOVZBbklDSFFBaUFESUFBRVVpSmlZMU14UVdGak15TmpZMURnSWpJaVltTlRRMk5qTXlIZ0lWRkE0Q0F6STJOalUwSmlZaklnWUdGUlFXRmdGSVVYeEdzaGNySENrckVCUTBNeFpFYjBGSWcxbExjRW9sSlVwd1RTQXNGeGNySUI4c0Z4WXNxelZuVENBc0ZTUlBQeE1XQ3pCZlJFMXJPQ2xUZ0Zka2psa3FBWDBXS3g4Z0xCZ1hLeUFmTEJjQUF3QXAvL1FDY2dJZEFCTUFId0FyQUFCRklpNENOVFErQWpNeUhnSVZGQTRDSnpjaUppTWlCZ1lWRlJRV0Z6STJOalUxTkNZbkJ4WXlBVTVTY0VRZkgwUndVbEp3UkI0ZVJIQ2VYUVFJQlNNcUV3cFdJeWtTQ2d0ZUJRb01LMHhrT1Rsa1RDd3NUR1E1T1dSTUs2UDhBUmdwR21JVElDa1pLaGxpRkNBTi9nRUFBQUlBS2YvMEFuSUN2QUFUQUNVQUFFVWlMZ0kxTkQ0Q016SWVBaFVVRGdJbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZQlRsVnlRaHdjUW5KVlZuRkJIQnhCY1ZZaktoSVNLaU1qS2hNVEtnd3pYb05RVUlOZU16TmVnMUJRZzE0emh5Uk1QR005U3lNalN6MWpQRXdrQUFBQkFHa0FBQUp3QXJFQURRQUFjelV6RVNNMVBnSTNNeEV6Rldtam95OXJaaWREblpvQk4zUURJREFaL2VtYUFBQUJBREVBQUFKckFyd0FLd0FBY3pVMFBnSTNQZ0kxTkNZbUl5SUdCaFVWSXlZME5UUTJOak15SGdJVkZBNENCdzRDQnlFVk1TUTlTaWNvUml3U0pSOGZLeGV5QVVHRFl6MWlSU1VpUGxBdkdCNE9BZ0V0TUNwTFF6MGRIakkwSUJNaEZSZ3JHeFFHQ3dWSGFEb2ROMHd2TGtwQVBCOFFGUW9DcVFBQUFRQXEvL1FDY1FLOEFEWUFBRVVpSmlZMU5UTVZGQll6TWpZMU5DWW1JeU0xTXpJMk5qVTBKaVlqSWdZR0ZSVWpOVFEyTmpNeUZoWVZGQVlHQnhVV0ZoVU9BZ0ZQWklJL3NETTFPaTRUSHhSSk9SUWZFeFFuSFJrcUdLZEFlMWhWZHo0WkxSNDVQd0kvZmd3MldqWVZFeG9sTkNnWkh4QjdFQ0FZRlNRV0V4NFJDaGswVlRNelZUTWlQaTBMQkJKWlB6ZGFOZ0FBQVFBWEFBQUNoQUs4QUJzQUFHRTFJVFUrQWpjekRnUUhNelUrQXpjekVUTVZJeFVCWnY2eElVZENGc1FFSkRaQVFCM0dEUjhnR0FWVllHQ05sVENEbVU0aFZGNWJVUjJQRWpRNU54WCtwcE9OQUFFQUovLzBBbkVDc0FBbUFBQkZJaVltTlRNVUZoWXpNalkyTlRRbUppTWlCZ1lISnhNaEZTRUhNRFkyTXpJV0ZoVVVCZ1lCVjJTSFJiQVlNQ01qTHhnWUx5SWhKaE1HbmgwQjNQNjVDQ05DTGtsck8wVitERHRwUmhvc0doc3VIUjR1R3hRWEJ4WUJnYXBvRmhjNGFVbEJiRUFBQWdBcC8vUUNkd0s4QUNJQU1nQUFSU0l1QWpVMFBnSXpNaFlXRlNNMEppWWpJZ1lHRlQ0Q016SVdGaFVVQmdZbk1qWTJOVFFtSmlNaUJnWVZGQllXQVZOTGNFb2xKVXB3UzFKN1JySVhLaDBvTEJBVk16UVZSRzlCU0lOWklDd1hGeXNnSHl3WEZpd01LVk9BVjJTT1dTbzFaMHdoS3hVa1R6OFRGZ3N3WGtWTmF6aUhGaXNmSUN3WUZ5c2dIeXdYQUFBQkFDMEFBQUp4QXJBQUVBQUFjelErQWpjaE5TRVZEZ1FWRlo0Z08wOHYvcllDUkNaSVBpOGFSNHFEZVRlc1d5OWphVzUwUFRzQUFBTUFLZi8wQW5JQ3ZBQWJBQ2NBTXdBQVJTSW1KalUwTmpjbUpqVTBOall6TWhZV0ZSUUdCeFlXRlJRR0JpY3lOalUwSmlNaUJoVVVGaE15TmpVMEppTWlCaFVVRmdGTVdZTkhQREV5SWtkNVNrcDZTQ014TWp4SmhGa3BOamttSlRjMEtDWTVOaWtvTkRjTUxscEJQa1ljS0VFclFsb3ZMMXBDTFVFbUhFWStRVm91aHlvb0tTa3BLU2dxQVNNaktDa2pJeWtvSXdBQUFnQWsvL1FDY2dLOEFDSUFNZ0FBUlNJbUpqVXpGQllXTXpJMk5qVU9BaU1pSmlZMU5EWTJNekllQWhVVURnSURNalkyTlRRbUppTWlCZ1lWRkJZV0FVaFJmRWF5RnlzY0tTc1FGRFF6RmtSdlFVaURXVXR3U2lVbFNuQk5JQ3dYRnlzZ0h5d1hGaXdNTldkTUlDd1ZKVTQvRWhjTE1GOUVUV3M0S1ZPQVYyU09XU29CZlJZckh5QXNHQmNySUI4c0Z3QURBQ24vOUFKeUFyd0FBd0FYQUNrQUFHVW5FeGNESWk0Q05UUStBak15SGdJVkZBNENKekkyTmpVMU5DWW1JeUlHQmhVVkZCWVdBUmdva0NsYlZYSkNIQnhDY2xWV2NVRWNIRUZ4VmlNcUVoSXFJeU1xRXhNcWVFSUJnVDM5OWpOZWcxQlFnMTR6TTE2RFVGQ0RYak9ISkV3OFl6MUxJeU5MUFdNOFRDUUFBQUlBS2YvMEFuSUNIUUFUQUNVQUFFVWlMZ0kxTkQ0Q016SWVBaFVVRGdJbk1qWTJOVFUwSmlZaklnWUdGUlVVRmhZQlRsSndSQjhmUkhCU1VuQkVIaDVFY0ZJaktSSVNLU01qS2hNVEtnd3JUR1E1T1dSTUxDeE1aRGs1WkV3cmh4a3FHV0lhS1JnWUtScGlHU29aQUFBQkFHa0FBQUp3QWhNQURRQUFjelV6TlNNMVBnSTNNeEV6Rldtam95OXJaaWREblpxamRBTWRLeGYraDVvQUFRQXhBQUFDYXdJZEFDMEFBSE0xTkQ0Q056NENOVFFtSmlNaUJnWVZGU01tTkRVMFBnSXpNaDRDRlJRT0FnY09BeFVoRlRFclJWTW5KRHNqRHlVaUlTc1ZzZ0VrU1c5TFBtSkZKQ1E1UVIwS0dCUU1BUVU2TDBNdUlnNE5HQjBUQ3hrUkZpUVVGUVVPQkMxT09pQWFNRUFuS2pzcEd3c0RDQWdHQTV3QUFRQXEvMVVDY1FJZEFEWUFBRVVpSmlZMU5UTVZGQll6TWpZMU5DWW1JeU0xTXpJMk5qVTBKaVlqSWdZR0ZSVWpOVFEyTmpNeUZoWVZGQVlHQnhVV0ZoVU9BZ0ZQWklJL3NETTFPaTRUSHhSSk9SUWZFeFFuSFJrcUdLZEFlMWhWZHo0WkxSNDVQd0kvZnFzMldqWVZFeG9sTkNnWkh4QjdFQ0FZRlNRV0V4NFJDaGswVlRNelZUTWlQaTBMQkJKWlB6ZGFOZ0FBQVFBWC8yRUNoQUlkQUJvQUFFVTFJVFUrQWpjekRnUUhNelUrQWpjekVUTVZJeFVCWnY2eElVZENGc1FFSkRVL1FSN0dFU3dsQjFWZ1lKK2ZsUzUra2tvZlZGMVpTaGQ3R1VwT0hQNjRrNThBQUFFQUovOVVBbkVDRUFBbEFBQkZJaVltTlRNVUZoWXpNalkyTlRRbUppTWlCZ1lISnhNaEZTRUhOall6TWhZV0ZSUUdCZ0ZYWklkRnNCZ3dJeU12R0JndklpRW1Fd2FlSFFIYy9ya0lFVTh6U1dzN1JYNnNPMmxHR2l3YUd5NGRIaTRiRkJjSEZnR0JxbWdPSHpocFNVRnNRQUFBQWdBcC8vUUNkd0s4QUNJQU1nQUFSU0l1QWpVMFBnSXpNaFlXRlNNMEppWWpJZ1lHRlQ0Q016SVdGaFVVQmdZbk1qWTJOVFFtSmlNaUJnWVZGQllXQVZOTGNFb2xKVXB3UzFKN1JySVhLaDBvTEJBVk16UVZSRzlCU0lOWklDd1hGeXNnSHl3WEZpd01LVk9BVjJTT1dTbzFaMHdoS3hVa1R6OFRGZ3N3WGtWTmF6aUhGaXNmSUN3WUZ5c2dIeXdYQUFBQkFDMy9ZQUp4QWhBQUVnQUFWelErQWpjaE5TRVZEZ1FWRkJRVm5pQTdUeS8rdGdKRUprZytMeHFnUjRxRGVUZXNXeTlqYVc1MFBROGREd0FEQUNuLzlBSnlBcndBR3dBbkFETUFBRVVpSmlZMU5EWTNKaVkxTkRZMk16SVdGaFVVQmdjV0ZoVVVCZ1luTWpZMU5DWWpJZ1lWRkJZVE1qWTFOQ1lqSWdZVkZCWUJURm1EUnp3eE1pSkhlVXBLZWtnak1USThTWVJaS1RnN0ppWTROU2ttT1RZcEtEUTNEQzVhUVQ1R0hDaEJLMEphTHk5YVFpMUJKaHhHUGtGYUxvY3FLQ2twS1Nrb0tnRWpJeWdwSXlNcEtDTUFBQUlBSlA5VkFuSUNIUUFpQURJQUFFVWlKaVkxTXhRV0ZqTXlOalkxRGdJaklpWW1OVFEyTmpNeUhnSVZGQTRDQXpJMk5qVTBKaVlqSWdZR0ZSUVdGZ0ZJVVh4R3NoY3JIQ2tyRUJRME14WkViMEZJZzFsTGNFb2xKVXB3VFNBc0Z4Y3JJQjhzRnhZc3F6Vm5UQ0FzRlNSUFB4TVdDekJmUkUxck9DbFRnRmRramxrcUFYMFdLeDhnTEJnWEt5QWZMQmNBQXdBcC8vUUNjZ0lkQUJNQUh3QXJBQUJGSWk0Q05UUStBak15SGdJVkZBNENKemNpSmlNaUJnWVZGUlFXRnpJMk5qVTFOQ1luQnhZeUFVNVNjRVFmSDBSd1VsSndSQjRlUkhDZVhRUUlCU01xRXdwV0l5a1NDZ3RlQlFvTUsweGtPVGxrVEN3c1RHUTVPV1JNSzZQOEFSZ3BHbUlUSUNrWktobGlGQ0FOL2dFQUFBSUFMLzlVQVhZQXpRQVBBQjBBQUZjaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMU5UUW1JeUlHRlJVVUZ0TS9TQjBkU0Q5QVJoMGRSa0FkR0JnZEhSa1pyQzlWT1RsVUx5OVVPVGxWTDBnck1EUXhLaW94TkRBckFBRUFOUDlnQVgwQXh3QU5BQUJYTlRNMUl6VStBamN6RVRNVk5HOWxIRDg4Rnlacm9GS2VQZ0lSR1EzKzYxSUFBQUVBTXY5Z0FYQUF6UUFtQUFCWE5UUTJOamMyTmpVMEppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSUU9BZ2NHQmdjekZUSWlOaHdqTkJZYUVSZ05Zd0VsU1RjdVFTUVVJU2dWRFJrTHFLQVpIVEVxRkJrckV3OFlEUmNPQ3dRRkF5WTNIaHN4SVJnbklCc05CeEVJV1FBQkFERC9WQUYxQU0wQU5RQUFWeUltTlRVekZSUVdNekkyTmpVMEppWWpJelV6TWpZMk5UUW1KaU1pQmdZVkZTTTFORFkyTXpJV0ZoVVVCZ2NWRmhZVkRnTFRWRTlpSEI0V0dRc0tFZ3NwSUFzU0Nnc1dFQTRYRGwwa1JURXZRaU1mR1NBakFTTkdyRDRyQ3dvTkZBMFdEZzBSQ0VFSUVRMExFd3dLRUFrRkRSc3RHeHN0R3hzc0NRSUtMeUVkTUIwQUFBRUFKdjlnQVlFQXpRQVlBQUJYTlNNMU5qWTNNdzREQnpNMVBnSTNNeFV6RlNNVjRic2NQQk51QXg0cExoUnVDaGdWQkM4Mk5xQktUeVp3UGhVNVBUWVVSdzBuS0EreVRrb0FBUUEwLzFRQmVnREJBQ0FBQUZjaUpqVXpGQllXTXpJMk5UUW1JeUlHQnljM0lSVWpCelkyTXpJV0ZoVVVCdDFUVm1JTkd4TWRIeDRkSEJVRldCRUJDYllGQ2l3Y0tUd2dWS3hFT0E0WERoOFhGeDhWQlF2SFZUY0lFQjQzSnpSSkFBQUNBQzcvVkFGM0FNMEFHd0FuQUFCWElpWW1OVFEyTmpNeUZoVWpOQ1lqSWdZVk5qWXpNaFlXRlJRR0p6STJOVFFtSXlJR0ZSUVcxRGRLSlNWS04wUldaQndZSWhZUkxoSW1QaVJaU2hvZEhCb2FIUnlzSmxBOVIxY29QajBhR2kweUR3MGFNU1U5UWtjYUdSb2JHaG9aR3dBQkFERC9ZQUYwQU1FQUR3QUFWelEyTmpjak5TRVZEZ0lWRkJRVmJ4d3pJckFCUkNNL0o2QXlYRlVtV0NvcFdXRTFCeEFJQUFBREFDLy9WQUYyQU0wQUd3QW5BRE1BQUZjaUppWTFORFkzSmlZMU5EWTJNeklXRmhVVUJnY1dGaFVVQmdZbk1qWTFOQ1lqSWdZVkZCWTNNalkxTkNZaklnWVZGQmJTTWtrb0lSd2NFeWhFS1NsRUtCTWNIQ0lwU1RJWEhpQVZGUjhlRmhVZ0hoY1dIaCtzR1RBaUlDWVBGU0lYSXk4WkdTOGpHQ0lVRHlZZ0lqQVpTQllWRmhZV0ZoVVdtaElXRlJNVEZSWVNBQUFDQUM3L1ZBRjRBTTBBR3dBbkFBQlhJaVkxTXhRV016STJOUVlHSXlJbUpqVTBOak15RmhZVkZBWUdKekkyTlRRbUl5SUdGUlFXMFVSVll4MFlJaFVRTGhJbVBpVlpTamhLSlNWS09Sb2RIQm9hSFJ5c1B6d1pHaTB4RGcwYU1TUStRU1pQUGtaWUtNb2FHUmtjR3hrWkd3QUNBQy8vOUFGMkFXMEFEd0FkQUFCWElpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5UVTBKaU1pQmhVVkZCYlRQMGdkSFVnL1FFWWRIVVpBSFJnWUhSMFpHUXd2VmpnNVZDOHZWRGs0Vmk5SUt6QTBNU29xTVRRd0t3QUJBRFFBQUFGOUFXY0FEUUFBY3pVek5TTTFQZ0kzTXhFekZUUnZaUncvUEJjbWExS2VQZ0lSR1EzKzYxSUFBUUF5QUFBQmNBRnRBQ1lBQUhNMU5EWTJOelkyTlRRbUl5SUdCaFVWSXlZME5UUTJOak15RmhZVkZBNENCd1lHQnpNVk1pSTJIQ00wRmhvUkdBMWpBU1ZKTnk1QkpCUWhLQlVOR1F1b0dSMHhLaFFaS3hNUEdBMFhEZ3NFQlFNbU54NGJNU0VZSnlBYkRRY1JDRmtBQUFFQU1QLzBBWFVCYlFBMUFBQlhJaVkxTlRNVkZCWXpNalkyTlRRbUppTWpOVE15TmpZMU5DWW1JeUlHQmhVVkl6VTBOall6TWhZV0ZSUUdCeFVXRmhVT0F0TlVUMkljSGhZWkN3b1NDeWtnQ3hJS0N4WVFEaGNPWFNSRk1TOUNJeDhaSUNNQkkwWU1QaXNMQ2cwVURSWU9EUkVJUVFnUkRRc1REQW9RQ1FVTkd5MGJHeTBiR3l3SkFnb3ZJUjB3SFFBQUFRQW1BQUFCZ1FGdEFCZ0FBSE0xSXpVMk5qY3pEZ01ITXpVK0FqY3pGVE1WSXhYaHV4dzhFMjRESGlrdUZHNEtHQlVFTHpZMlNrOG1jRDRWT1QwMkZFY05KeWdQc2s1S0FBQUJBRFQvOUFGNkFXRUFJQUFBVnlJbU5UTVVGaFl6TWpZMU5DWWpJZ1lISnpjaEZTTUhOall6TWhZV0ZSUUczVk5XWWcwYkV4MGZIaDBjRlFWWUVRRUp0Z1VLTEJ3cFBDQlVERVE0RGhjT0h4Y1hIeFVGQzhkVk53Z1FIamNuTkVrQUFBSUFMdi8wQVhjQmJRQWJBQ2NBQUZjaUppWTFORFkyTXpJV0ZTTTBKaU1pQmhVMk5qTXlGaFlWRkFZbk1qWTFOQ1lqSWdZVkZCYlVOMG9sSlVvM1JGWmtIQmdpRmhFdUVpWStKRmxLR2gwY0dob2RIQXdtVUQxSFZ5ZytQUm9hTFRJUERSb3hKVDFDUnhvWkdoc2FHaGtiQUFFQU1BQUFBWFFCWVFBUEFBQnpORFkyTnlNMUlSVU9BaFVVRkJWdkhETWlzQUZFSXo4bk1seFZKbGdxS1ZsaE5RY1FDQUFEQUMvLzlBRjJBVzBBR3dBbkFETUFBRmNpSmlZMU5EWTNKaVkxTkRZMk16SVdGaFVVQmdjV0ZoVVVCZ1luTWpZMU5DWWpJZ1lWRkJZM01qWTFOQ1lqSWdZVkZCYlNNa2tvSVJ3Y0V5aEVLU2xFS0JNY0hDSXBTVElYSGlBVkZSOGVGaFVnSGhjV0hoOE1HVEFpSUNZUEZTSVhJeThaR1M4akdDSVVEeVlnSWpBWlNCWVZGaFlXRmhVV21oSVdGUk1URlJZU0FBQUNBQzcvOUFGNEFXMEFHd0FuQUFCWElpWTFNeFFXTXpJMk5RWUdJeUltSmpVME5qTXlGaFlWRkFZR0p6STJOVFFtSXlJR0ZSUVcwVVJWWXgwWUloVVFMaEltUGlWWlNqaEtKU1ZLT1JvZEhCb2FIUndNUHp3WkdpMHhEZzBhTVNRK1FTWlBQa1pZS01vYUdSa2NHeGtaR3dBQ0FDOEJTQUYyQXNFQUR3QWRBQUJUSWlZbU5UUTJOak15RmhZVkZBWUdKekkyTlRVMEppTWlCaFVWRkJiVFAwZ2RIVWcvUUVZZEhVWkFIUmdZSFIwWkdRRklMMVk0T1ZRdkwxUTVPRll2U0Nzd05ERXFLakUwTUNzQUFBRUFOQUZVQVgwQ3V3QU5BQUJUTlRNMUl6VStBamN6RVRNVk5HOWxIRDg4RnlackFWUlNuajRDRVJrTi91dFNBQUVBTWdGVUFYQUN3UUFtQUFCVE5UUTJOamMyTmpVMEppTWlCZ1lWRlNNbU5EVTBOall6TWhZV0ZSUU9BZ2NHQmdjekZUSWlOaHdqTkJZYUVSZ05Zd0VsU1RjdVFTUVVJU2dWRFJrTHFBRlVHUjB4S2hRWkt4TVBHQTBYRGdzRUJRTW1OeDRiTVNFWUp5QWJEUWNSQ0ZrQUFBRUFNQUZJQVhVQ3dRQTFBQUJUSWlZMU5UTVZGQll6TWpZMk5UUW1KaU1qTlRNeU5qWTFOQ1ltSXlJR0JoVVZJelUwTmpZek1oWVdGUlFHQnhVV0ZoVU9BdE5VVDJJY0hoWVpDd29TQ3lrZ0N4SUtDeFlRRGhjT1hTUkZNUzlDSXg4WklDTUJJMFlCU0Q0ckN3b05GQTBXRGcwUkNFRUlFUTBMRXd3S0VBa0ZEUnN0R3hzdEd4c3NDUUlLTHlFZE1CMEFBUUFtQVZRQmdRTEJBQmdBQUZNMUl6VTJOamN6RGdNSE16VStBamN6RlRNVkl4WGh1eHc4RTI0REhpa3VGRzRLR0JVRUx6WTJBVlJLVHlad1BoVTVQVFlVUncwbktBK3lUa29BQUFFQU5BRklBWG9DdFFBZ0FBQlRJaVkxTXhRV0ZqTXlOalUwSmlNaUJnY25OeUVWSXdjMk5qTXlGaFlWRkFiZFUxWmlEUnNUSFI4ZUhSd1ZCVmdSQVFtMkJRb3NIQ2s4SUZRQlNFUTREaGNPSHhjWEh4VUZDOGRWTndnUUhqY25ORWtBQWdBdUFVZ0Jkd0xCQUJzQUp3QUFVeUltSmpVME5qWXpNaFlWSXpRbUl5SUdGVFkyTXpJV0ZoVVVCaWN5TmpVMEppTWlCaFVVRnRRM1NpVWxTamRFVm1RY0dDSVdFUzRTSmo0a1dVb2FIUndhR2gwY0FVZ21VRDFIVnlnK1BSb2FMVElQRFJveEpUMUNSeG9aR2hzYUdoa2JBQUFCQURBQlZBRjBBclVBRHdBQVV6UTJOamNqTlNFVkRnSVZGQlFWYnh3eklyQUJSQ00vSndGVU1seFZKbGdxS1ZsaE5RY1FDQUFEQUM4QlNBRjJBc0VBR3dBbkFETUFBRk1pSmlZMU5EWTNKaVkxTkRZMk16SVdGaFVVQmdjV0ZoVVVCZ1luTWpZMU5DWWpJZ1lWRkJZM01qWTFOQ1lqSWdZVkZCYlNNa2tvSVJ3Y0V5aEVLU2xFS0JNY0hDSXBTVElYSGlBVkZSOGVGaFVnSGhjV0hoOEJTQmt3SWlBbUR4VWlGeU12R1Jrdkl4Z2lGQThtSUNJd0dVZ1dGUllXRmhZVkZwb1NGaFVURXhVV0VnQUNBQzRCU0FGNEFzRUFHd0FuQUFCVElpWTFNeFFXTXpJMk5RWUdJeUltSmpVME5qTXlGaFlWRkFZR0p6STJOVFFtSXlJR0ZSUVcwVVJWWXgwWUloVVFMaEltUGlWWlNqaEtKU1ZLT1JvZEhCb2FIUndCU0Q4OEdSb3RNUTROR2pFa1BrRW1UejVHV0NqS0doa1pIQnNaR1JzQUFBSUFMd0dzQVhZREpRQVBBQjBBQUZNaUppWTFORFkyTXpJV0ZoVVVCZ1luTWpZMU5UUW1JeUlHRlJVVUZ0TS9TQjBkU0Q5QVJoMGRSa0FkR0JnZEhSa1pBYXd2VmpnNVZDOHZWRGs0Vmk5SUt6QTBNU29xTVRRd0t3QUFBUUEwQWJnQmZRTWZBQTBBQUZNMU16VWpOVDRDTnpNUk14VTBiMlVjUHp3WEptc0J1RktlUGdJUkdRMys2MUlBQVFBeUFiZ0JjQU1sQUNZQUFGTTFORFkyTnpZMk5UUW1JeUlHQmhVVkl5WTBOVFEyTmpNeUZoWVZGQTRDQndZR0J6TVZNaUkySENNMEZob1JHQTFqQVNWSk55NUJKQlFoS0JVTkdRdW9BYmdaSFRFcUZCa3JFdzhZRFJjT0N3UUZBeVkzSGhzeElSZ25JQnNOQnhFSVdRQUFBUUF3QWF3QmRRTWxBRFVBQUZNaUpqVTFNeFVVRmpNeU5qWTFOQ1ltSXlNMU16STJOalUwSmlZaklnWUdGUlVqTlRRMk5qTXlGaFlWRkFZSEZSWVdGUTRDMDFSUFlod2VGaGtMQ2hJTEtTQUxFZ29MRmhBT0Z3NWRKRVV4TDBJakh4a2dJd0VqUmdHc1Bpc0xDZzBVRFJZT0RSRUlRUWdSRFFzVERBb1FDUVVOR3kwYkd5MGJHeXdKQWdvdklSMHdIUUFCQUNZQnVBR0JBeVVBR0FBQVV6VWpOVFkyTnpNT0F3Y3pOVDRDTnpNVk14VWpGZUc3SER3VGJnTWVLUzRVYmdvWUZRUXZOallCdUVwUEpuQStGVGs5TmhSSERTY29EN0pPU2dBQUFRQTBBYXdCZWdNWkFDQUFBRk1pSmpVekZCWVdNekkyTlRRbUl5SUdCeWMzSVJVakJ6WTJNeklXRmhVVUJ0MVRWbUlOR3hNZEh4NGRIQlVGV0JFQkNiWUZDaXdjS1R3Z1ZBR3NSRGdPRnc0ZkZ4Y2ZGUVVMeDFVM0NCQWVOeWMwU1FBQ0FDNEJyQUYzQXlVQUd3QW5BQUJUSWlZbU5UUTJOak15RmhVak5DWWpJZ1lWTmpZek1oWVdGUlFHSnpJMk5UUW1JeUlHRlJRVzFEZEtKU1ZLTjBSV1pCd1lJaFlSTGhJbVBpUlpTaG9kSEJvYUhSd0JyQ1pRUFVkWEtENDlHaG90TWc4TkdqRWxQVUpIR2hrYUd4b2FHUnNBQUFFQU1BRzRBWFFER1FBUEFBQlRORFkyTnlNMUlSVU9BaFVVRkJWdkhETWlzQUZFSXo4bkFiZ3lYRlVtV0NvcFdXRTFCeEFJQUFNQUx3R3NBWFlESlFBYkFDY0FNd0FBVXlJbUpqVTBOamNtSmpVME5qWXpNaFlXRlJRR0J4WVdGUlFHQmljeU5qVTBKaU1pQmhVVUZqY3lOalUwSmlNaUJoVVVGdEl5U1NnaEhCd1RLRVFwS1VRb0V4d2NJaWxKTWhjZUlCVVZIeDRXRlNBZUZ4WWVId0dzR1RBaUlDWVBGU0lYSXk4WkdTOGpHQ0lVRHlZZ0lqQVpTQllWRmhZV0ZoVVdtaElXRlJNVEZSWVNBQUlBTGdHc0FYZ0RKUUFiQUNjQUFGTWlKalV6RkJZek1qWTFCZ1lqSWlZbU5UUTJNeklXRmhVVUJnWW5NalkxTkNZaklnWVZGQmJSUkZWakhSZ2lGUkF1RWlZK0pWbEtPRW9sSlVvNUdoMGNHaG9kSEFHc1B6d1pHaTB4RGcwWk1pUStRU1pQUGtaWUtNb2FHUmtjR3hrWkd3QUFBZjlYLy9RQlVRSzhBQU1BQUVjQk13R3BBWnBnL21VTUFzajlPQUFBQXdBMC8vUURvd0s4QUFNQUtnQTRBQUJGQVRNQkpUVTBOalkzTmpZMU5DWWpJZ1lHRlJVakpqUTFORFkyTXpJV0ZoVVVEZ0lIQmdZSE14VUJOVE0xSXpVK0FqY3pFVE1WQVFRQm1tRCtaUUVDSWpZY0l6UVdHaEVZRFdNQkpVazNMa0VrRkNFb0ZRMFpDNmo4a1c5bEhEODhGeVpyREFMSS9UZ01HUjB4S2hRWkt4TVBHQTBYRGdzRUJRTW1OeDRiTVNFWUp5QWJEUWNSQ0ZrQlZGS2VQZ0lSR1EzKzYxSUFBd0EwLy9RRG53SzhBQU1BRVFBcUFBQkZBVE1CQVRVek5TTTFQZ0kzTXhFekZRRTFJelUyTmpjekRnTUhNelUrQWpjekZUTVZJeFVCQkFHYVlQNWwvdEZ2WlJ3L1BCY21hd0dDdXh3OEUyNERIaWt1Rkc0S0dCVUVMelkyREFMSS9UZ0JZRktlUGdJUkdRMys2MUwrckVwUEpuQStGVGs5TmhSSERTY29EN0pPU2dBQUF3QXcvL1FEbndMQkFBTUFPUUJTQUFCRkFUTUJBeUltTlRVekZSUVdNekkyTmpVMEppWWpJelV6TWpZMk5UUW1KaU1pQmdZVkZTTTFORFkyTXpJV0ZoVVVCZ2NWRmhZVkRnSUJOU00xTmpZM013NERCek0xUGdJM014VXpGU01WQVFRQm1tRCtaWkJVVDJJY0hoWVpDd29TQ3lrZ0N4SUtDeFlRRGhjT1hTUkZNUzlDSXg4WklDTUJJMFlCOUxzY1BCTnVBeDRwTGhSdUNoZ1ZCQzgyTmd3Q3lQMDRBVlErS3dzS0RSUU5GZzRORVFoQkNCRU5DeE1NQ2hBSkJRMGJMUnNiTFJzYkxBa0NDaThoSFRBZC9yaEtUeVp3UGhVNVBUWVVSdzBuS0EreVRrb0FBUUE5QUFBQkVRREhBQU1BQUhNMU14VTkxTWZIQUFFQVBmOUFBUkVBeHdBTUFBQlhOVDRDTlNNMU14VVVCZ1k5R1M4Zlo5UTdZY0JWQWgwd0hNZXdSRnd5QUFBQ0FEMEFBQUVSQWhBQUF3QUhBQUJUTlRNVkF6VXpGVDNVMU5RQlNNakkvcmpIeHdBQ0FEMy9RQUVSQWhBQURBQVFBQUJYTlQ0Q05TTTFNeFVVQmdZRE5UTVZQUmt2SDJmVU8yRTQxTUJWQWgwd0hNZXdSRnd5QWdQSXlBQUFBd0E5QUFBRHJBREhBQU1BQndBTEFBQnpOVE1WTXpVekZUTTFNeFU5MUhuVWV0VEh4OGZIeDhjQUFnQkFBQUFCRGdLd0FBTUFCd0FBZHdNekF3YzFNeFZwS2M0cW9NYjJBYnIrUnZhNXVRQUNBRC8vWUFFTkFoQUFBd0FIQUFCWEV6TVRBelV6RlQ4cGV5ckt4cUFCdXY1R0FmZTV1UUFBQWdBbEFBQUNOZ0s4QUMwQU1RQUFkelUwUGdRMU5DNENJeUlPQWhVVUZCY2pKaVkxTkQ0RE16SWVBeFVVRGdRVkZRYzFNeFhnRXgwaUhSTUlFQllQRmhzUEJnRzRBUUlhTVVSVEx5NVBQeXdZR1Njckp4bTN4dll5RWlBZUhoOGpGQTRaRkFzT0dCNFFCdzBIQ2hJS0owSXpKQk1USXpJL0pTSTFLaUVjR2cwVjlybTVBQUFDQUM3L1ZBSS9BaEFBTFFBeEFBQkZJaTRETlRRK0JEVTFNeFVVRGdRVkZCNENNekkrQWpVME5DY3pGaFlWRkE0REF6VXpGUUV1TGs4L0xCZ1pKeXNuR2FzVEhTSWRFd2dRRmc4V0d3OEdBYmdCQWhveFJGT1R4cXdUSXpJL0pTSTFLaUVjR2cwVk1oSWdIaDRmSXhRT0dSUUxEaGdlRUFjTkJ3b1NDaWRDTXlRVEFnTzV1UUFBQVFCSEFPc0JCZ0dpQUFNQUFIYzFNeFZIdit1M3R3QUFBUUJZQUxjQm5BSDdBQThBQUhjaUppWTFORFkyTXpJV0ZoVVVCZ2I2TDBrcUtra3ZMMGtxS2ttM0tra3ZMMGtxS2trdkwwa3FBQUFCQUJVQlFnR0NBckFBRVFBQVV6Y0hKemNuTnhjbk13YzNGd2NYQnljWG5ReGxMM0J3TDJVTVhReGxMM0J3TDJVTUFVSjZSMUV6TkZCSGVubEdVRFF6VVVkNkFBSUFGZi8xQW9BQ3ZBQWJBQjhBQUZjM0l6VXpOeU0xTXpjekJ6TTNNd2N6RlNNSE14VWpCeU0zSXdjVE16Y2pWU1JrZmh4c2dpeDZMVzhzZUM1ZGNScHFoaVYxSlhNa1BYSWJjZ3VxYlhwd3hzYkd4bkI2YmFxcXFnRVdld0FCQUFBRERBSDBBMG9BQXdBQVVUVWhGUUgwQXd3K1BnQUJBQUQvMEFFeUF1QUFBd0FBVlJNekE3bDV1VEFERVB6d0FBRUFBUC9RQVRJQzRBQURBQUJGSXdNekFUSjV1WGt3QXhBQUFnQS9BQUFCRFFLd0FBTUFCd0FBY3hNekV3TTFNeFUvS1hzcXlzWUJ1djVHQWZlNXVRQUNBQzcvOUFJL0FyQUFMUUF4QUFCRklpNEROVFErQkRVMU14VVVEZ1FWRkI0Q016SStBalUwTkNjekZoWVZGQTREQXpVekZRRXVMazgvTEJnWkp5c25HYXNUSFNJZEV3Z1FGZzhXR3c4R0FiZ0JBaG94UkZPVHhnd1RJekkvSlNJMUtpRWNHZzBWTWhJZ0hoNGZJeFFPR1JRTERoZ2VFQWNOQndvU0NpZENNeVFUQWdPNXVRQUFBUUFVQVRZQXJRSEJBQU1BQUZNMU14VVVtUUUyaTRzQUFRQWVBVFlBb3dIQkFBTUFBRk0xTXhVZWhRRTJpNHNBQVFBMy8yQUJZd0xoQUE4QUFGY21KalUwTmpjekRnSVZGQllXRit0V1hsNVdlQ2M4SWlJOEo2QmM2bnA3Nmx3OW5LRkhSNkdhUGdBQkFDTC9ZUUZPQXVJQUR3QUFVeFlXRlJRR0J5TStBalUwSmlZbm1sWmVYbFo0S0RzaUlqc29BdUpjNm5wNzZsdyttNkpHUjZHYlBRQUFBUUFlLzJBQlhRTGhBQ2dBQUVVaUxnSTFOVFFtSmlNMU1qWTJOVFUwUGdJekZTSUdCZ2NIQmdZakZUSVdGaGNYSGdJekFWMC9XVGNaR1NjWEZDZ2JHamhZUGc0akdnRUtBakV5SWlzWEFRb0JHaU1Pb0FvWUxDTHpGQmdMVHd3WkZPOGpLeGtKWWdVUkU4a3hOZ2tZTGlIS0V4SUZBQUVBS1A5ZkFXY0M0QUFvQUFCVE1oNENGUlVVRmhZekZTSUdCaFVWRkE0Q0l6VXlOalkzTnpZMk16VWlKaVluSnk0Q0l5Zy9XVGNaR1NnV0ZDZ2JHamhZUGc0akdnRUtBakV5SVN3V0Fnb0JHaUlQQXVBS0dDd2k4eFFZQzA4TUdSVHZJaXdaQ1dJRkVoTEpNVFlKR0M4Z3loTVNCUUFCQUV6L1lBRmRBdUVBQndBQVZ4RWhGU01STXhWTUFSRnljcUFEZ1dmOVRXY0FBUUFvLzEwQk9RTGVBQWNBQUVFUklUVXpFU00xQVRuKzczSnlBdDc4ZjJjQ3MyY0FBUUFvQU1RQkpRRmlBQU1BQUhjMU14VW8vY1NlbmdBQUFRQW9BTVFCSlFGaUFBTUFBSGMxTXhVby9jU2VuZ0FBQVFBQUFNUUI5QUZPQUFNQUFIVTFJUlVCOU1TS2lnQUFBUUFBQU1RRDZBRk9BQU1BQUhVMUlSVUQ2TVNLaWdBQUFRQUFBTVFDN2dGT0FBTUFBSFUxSVJVQzdzU0tpZ0FBQVFBbkFNUUJKZ0ZpQUFNQUFIYzFNeFVuLzhTZW5nQUFBUUFvQU1RQkpRRmlBQU1BQUhjMU14VW8vY1NlbmdBQUFRQUEvMHdDTFAvQ0FBTUFBRlUxSVJVQ0xMUjJkZ0FBQWdBQS9zb0NMUC9NQUFNQUJ3QUFWVFVoRlFVMUlSVUNMUDNVQWl5V1ltS2dZbUlBQVFBb0FSUUJKUUd5QUFNQUFGTTFNeFVvL1FFVW5wNEFBUUFvQVJRQkpRR3lBQU1BQUZNMU14VW8vUUVVbnA0QUFRQUFBUlFCOUFHZUFBTUFBRkUxSVJVQjlBRVVpb29BQVFBQUFSUUQ2QUdlQUFNQUFGRTFJUlVENkFFVWlvb0FBUUFvQVJRQkpRR3lBQU1BQUZNMU14VW8vUUVVbnA0QUFRQXUvMFFBNkFDdkFBd0FBRmMxUGdJMUl6VXpGUlFHQmk0V0todGJ1alJWdkVzQ0h6TWRyNXBDV3pBQUFBSUFMdjlFQWM0QXJ3QU1BQmtBQUZjMVBnSTFJelV6RlJRR0JoYzFQZ0kxSXpVekZSUUdCaTRXS2h0YnVqUlZ0UllxRzF1Nk5GVzhTd0lmTXgydm1rSmJNQVJMQWg4ekhhK2FRbHN3QUFJQUxnRkZBYzRDc0FBTUFCa0FBRUVWRGdJVk14VWpOVFEyTmljVkRnSVZNeFVqTlRRMk5nSE9GaW9iVzdvMFZiVVdLaHRidWpSVkFyQkxBU0F5SHErYVFsc3hBMHNCSURJZXI1cENXekVBQWdBdUFVVUJ6Z0t3QUF3QUdRQUFVelUrQWpVak5UTVZGQVlHRnpVK0FqVWpOVE1WRkFZR0xoWXFHMXU2TkZXMUZpb2JXN28wVlFGRlN3SWZNeDJ2bWtKYk1BUkxBaDh6SGErYVFsc3dBQUFCQUM0QlJRRG9BckFBREFBQVV4VU9BaFV6RlNNMU5EWTI2QllxRzF1Nk5GVUNzRXNCSURJZXI1cENXekVBQVFBdUFVVUE2QUt3QUF3QUFGTTFQZ0kxSXpVekZSUUdCaTRXS2h0YnVqUlZBVVZMQWg4ekhhK2FRbHN3QUFJQUZnQjNBamdDRUFBRkFBc0FBSGNuTnpNSEZ6TW5Oek1IRjcybnA0K0tpbDJucDQrS2luZk56TXpOemN6TXpRQUFBZ0FiQUhjQ1BRSVFBQVVBQ3dBQVFSY0hJemNuSXhjSEl6Y25BWmFucDQrS2lsMm5wNCtLaWdJUXpjek16YzNNek0wQUFBRUFGZ0IzQVV3Q0VBQUZBQUIzSnpjekJ4ZTlwNmVQaW9wM3pjek16UUFBQVFBYkFId0JVUUlWQUFVQUFGTVhCeU0zSjZxbnA0K0tpZ0lWemN6TXpRQUNBRGtCamdHM0FyQUFCUUFMQUFCVEp6VXpGUWN6SnpVekZRZG9MNk13bHkrak1BR09qNU9UajQrVGs0OEFBUUE1QVk0QTNBS3dBQVVBQUZNbk5UTVZCMmd2b3pBQmpvK1RrNDhBQVFBMy80Z0NDZ0pOQUFVQUFFVUJBVE1CQVFGaC90WUJLYW4rMVFFc2VBRmpBV0wrbnY2ZEFBRUFOLytJQWdvQ1RRQUZBQUJUQVFFakFRSGdBU3IrMTZrQksvN1VBazMrbmY2ZUFXSUJZd0FDQUMzL3FBTGRBd1FBQXdBbEFBQlhBVE1CTnlJbUpqVTBOak15RmhZVkl6UW1KaU1pQmdZVkZSUVdGak15TmpZMU14UUdCcjBCUGtEK3dwVjFuMUcxc0dTVlV0TWNOU2d2T1JvYk9DMHNPUjNNVHBSWUExejhwRXhRbjNXd3RFT0VZQ2c2SUNoSUwwQXZTQ2dlT1NkZWdrTUFBQUlBSlArOUFuQUM5QUFEQUNnQUFFVVJNeEVuSWlZbU5UUTJOak15SGdJVkl6UW1KaU1pQmdZVkZSUVdGak15TmpZMU14UU9BZ0VwVFNsYWhVcEtoVm84YWxBdHdSY3NIeU1yRkJVdEpDRXRHTGt0VUdwREF6Zjh5WWc5ZWwxZGV6MGFObFk4SHlnVEd6TWpPU015R3hNcElEeFhOaG9BQUFNQUxmK29BdDBEQkFBREFBY0FLUUFBVndFekFTTUJNd0UzSWlZbU5UUTJNeklXRmhVak5DWW1JeUlHQmhVVkZCWVdNekkyTmpVekZBWUc5Z0UrUVA3Q3JBRStRUDdDeUhXZlViV3daSlZTMHh3MUtDODVHaHM0TFN3NUhjeE9sRmdEWFB5a0ExejhwRXhRbjNXd3RFT0VZQ2c2SUNoSUwwQXZTQ2dlT1NkZWdrTUFBQUlBUlFCUUFrOENXd0FqQURNQUFIY25OeVltTlRRMk55YzNGelkyTXpJV0Z6Y1hCeFlXRlJRR0J4Y0hKd1lHSXlJbUp6Y3lOalkxTkNZbUl5SUdCaFVVRmhhQ1BUb1dHQmNYT2o4NUYwMG9La3NUT2tRNEZCWVhGVGc4T2haTkt5cE1HSTRuT1NBZ09TY2xPaUVpT2xBOU9obEpLaWxORmpvL09SUVlHQkk2UkRnVlRTb29UQm80UERvV0doZ1dRQ1kvSlNVL0ppVS9KaVkvSlFBQUFnQWkvNzBDUVFMMEFBTUFSZ0FBUlJFekVTY2lMZ0kxTkRRM013WVVGUjRDTXpJMk5qVTBKaVluTGdNMU5ENENNekllQWhVVUZBY2pOVFFtSmlNaURnSVZGQllXRng0REZSUU9BZ0VJVGlZd1gwOHdBYmtCQVJjbUZ3NG5IaU01SWlWTFFDY3JTMTgwTFZsS0xBRzNGU0VSQmhnWkVSY25HQ1pZVHpJc1RHTkRBemY4eVljVEtVQXVBd2NFQXdZQ0VoZ01CQkVTRVJFTEJnWVRJem91TkVZcEVSRWxQQ3NEQ1FJSUR4TUpBUVlPRFF3UENRVUhEUjgvT1RaSktoSUFBd0FrLzBFQ21nTFZBQjBBSVFBMEFBQkZJaVltTlRRMk5qTXlGaFlYTXpVak5UTTFNeFV6RlNNUkl5Y2pCZ1lITlNFVkF6STJOalUxTkM0Q0l5SUdCaFVWRkJZV0FRTkdaRFUxWkVZY05TMFBCMjl2eHp3OG9nNEhIRlM4QWJMc0h5Y1NDaFVpRng4bUVSRW1ERDE3WFZ4NlBRMGJGVmhsT1RsbC9jbExMU3F6ZG5ZQlJoNHpIeUVYS1I4U0dpNGZOUjh1R1FBQUFRQVovL1FDZGdLOEFEY0FBRVVpTGdJbkl6VXpKalExTkRRM0l6VXpQZ016TWhZWEZTWW1JeUlHQmdjekZTTUdGQlVVRmhjekZTTWVBak15TmpjVkJnWUIyUzlwWWt3VFoxb0JBVnBuRTB0aGFqTXhUeG9RUXlnclJEQVAwZWNCQVFIbTBBOHdReXNvUXhBZlVBd1hObDFGWFFnS0J3Y0pCMTFGWERjWEN3aVJDQkVZTFI5ZEF3d0hCdzhFWFI4dEdCSUpqUW9QQUFBQkFDVC9MZ0o1QXVFQUl3QUFWeUltSmljM016STJOeE1qTnpNM1BnSXpNaFlXRndjaklnWUhCek1ISXdNT0Fvd09LQ1VOR1M0aEhBWlFTaDFLRFJCQ1hqa1BKeVlNR1M0aEhBWU5aaDFtVUE5RFh0SUZDQVYxR1J3QmVJYzlTRkloQlFnRmRSa2NQSWYraDBoUklnQUFBUUFmQUFBQ2lnS3dBQkVBQUhNMUl6VXpFU0VWSVJVaEZTRVZNeFVqRlY0L1B3SXMvckVCSVA3Z21KaGhVd0g4cFc2ZVMxTmhBQUFDQUMzL3NRTUNBdkVBQXdBdUFBQkZFVE1SSnlJbU5UUTJOak15SGdJVkl6UXVBaU1pRGdJVkZSUVdGak15TmpZMU5TTTFJUkVqSnc0Q0FZRkdRNnlyV0toM1NIOWhOdE1WSkM4YUp6d25GQ05ITkNNN0pKd0JiM0lXSDBwWVR3TkEvTUJEdExCMm5sQWhRV0pCRmlRWkRSVXFPaVpBTWtjbUZTZ2FCSXorZ0VRYUpCSUFBQUVBSkFBQUF5Z0NzQUFUQUFCekVTTTFNeEV6RVRNVE13TXpGU01USXdNakVWNDZPdDB0eXZiWXhNVFk5c290QVROS0FUUCt6UUV6L3MxSy9zMEJNLzdOQUFFQUh3QUFBbjRDdkFBcEFBQnpOVE0xSXpVek5TTTFNelUwTmpZek1oWVdGUlVqTlRRbUppTWlCZ1lWRlRNVkl3Y3pGU01ISVJVOVFGNWVYbDQyY1ZsVmNqckhFQm9RRUJzUWRYVUdlNGNKQVNHVFJGTXNVMFE2WFRnNFhUa1lHQkFhRUJBYUVFVlVLMU5Fa3dBQUFRQUtBQUFDaUFLd0FCNEFBSE0xQnpVM05RYzFOeEV6RlRjVkJ4VTNGUWNWTXpJMk5UVXpGUlFHQmlOS1FFQkFRTjFMUzB0TFN5TWt6MEo5VjlJa1VDUXlKRkFrQVF5U0tsQXFNaXBRS3B3bk1EQXhWM1U2QUFFQVFRQUFBdTREQlFBWkFBQnpFVFEyTmpjMU14VWVBaFVSSXhFMEppY1JJeEVHQmhVUlFVbUpZVWRoaVVuZEt5dEhLeXNCbTFwOFJRVktTZ1ZGZkZyK1pRR1lMMElLL21ZQm1ncENMLzVvQUFBREFDUUFBQU5GQXJBQUhBQWdBQ1FBQUhNUk14Y2VBaGN6TGdJMU5UTVJJeWN1QXljakhnSVZGUUUxSVJVRk5TRVZYcjZrR0RBckRRVUJBd0hMdmFZUEl5SWZEQVVCQWdMKyt3TWgvTjhESVFLd3dCdEFQQmNYUEVBYndQMVF3QklyTGkwVEVDYy9OY0FCcDBsSjUwbEpBQUFEQUI0QUFBTHRBckFBRXdBWkFCOEFBSE1SSXpVek5TRXlGaFlYTXhVakRnSWpJeFVSTXpJMk55TTFNeVltSXlOZVFFQUJnanhlT2dZek13YzdYVHVsV3hvZ0I1eWNCeUFhV3dHbVFNb3pXajFBUFZveDNnRi9GQk5BRkJNQUFnQWVBQUFDOWdLd0FCNEFLQUFBY3hFak5UTTFJelV6TlNFeUZoY3pGU01XRmhVVUJnY3pGU01HQmlNakZSRXpNalkxTkNZbUl5TmVRRUJBUUFHQ1Ntc1hTandCQVFFQ1BWQVphVVNsV3lNakR4OFlXd0ZiUUVoQWpVeEJRQWNOQnd3V0MwQTZROTRCZnlRakdCOFFBQUlBSGdBQUFyd0NzQUFZQUNJQUFITTFJelV6TlNNMU14RWhNaFlXRlJRR0JpTWpGVE1WSXhVUk16STJOVFFtSmlNalhrQkFRRUFCZ2tGak9EbGpRS1dZbUZzakl3OGZHRnRRVXp1Z0FUSTdhRVZIYVRvN1UxQUJmeVFqR0I4UUFBRUFRQUFBQW4wQ3NBQWRBQUJoSnpVek1qWTNJVFVoSmlZakl6VWhGU01XRmhjekZTTU9BaU1qRndFTnpjWWdKUWYrN2dFU0J5VWd4Z0k5aEJnZkJFbEpCanRlT3dyTTNwY2FHVUFhR1pWQUdrVXBRRDViTWQ0QUFBRUFId0FBQW40Q3ZBQWhBQUJ6TlRNMUl6VXpOVFEyTmpNeUZoWVZGU00xTkNZbUl5SUdCaFVWTXhVakJ5RVZQVUJlWGpaeFdWVnlPc2NRR2hBUUdoQjBkUlFCTHBPQmYxbzZYVGc0WFRrY0hCQWFFQkFhRUZ0L2daTUFBd0FSQUFBRDd3S3dBQzhBTXdBM0FBQnpBek1USGdNWE16NEVOeE16RXg0Q0Z6TStCRGNUTXdNakF5NERKeU1PQkFjREFUVWhGUVUxSVJXeW9lUStBd1FFQXdFS0FRSURCQVFDUE9CQUJBY0ZBUW9CQWdNREJBSTUxS0h6U2dJREF3TUJDZ0VDQXdNQ0FrbitlQVBHL0RvRHhnS3cvbFVUSXg0WkNnZ1NGaGtlRVFHcS9sVWFMQ01PQnhFVkdSOFNBYXY5VUFIUURCZ1hGZ2tIRWhNVEV3bitNUUdJU1VtTFNVa0FBQUVBQndBQUFwNENzQUFsQUFCek5TTTFNelVqTlRNbUppY25NeGNlQWhjelBnSTNOek1IQmdZSE14VWpGVE1WSXhYd3k4dkxqdzBpQ0hibVNnUU1EQVFFQlF3TUEwclpkQTRlQ1k3S3lzcVBZQ3BnRnowUDFLQUlHUm9LQ3hvWkNKL1VHVGtSWUNwZ2p3QUJBRmtBc1FEMUFVMEFDd0FBZHlJbU5UUTJNeklXRlJRR3B5SXNMQ0lpTEN5eExDSWlMQ3dpSWl3QUFBTUFLUC9rQW1NQzlBQURBQWNBQ3dBQVZ4TXpBemMxTXhVQk5UTVZ1NkI1bjFyVS9jWFVIQU1RL1BBeHg4Y0I1c2ZIQUFBQi96ci85QUUwQXJ3QUF3QUFSd0V6QWNZQm1tRCtaUXdDeVAwNEFBQURBRDRBRmdJWkFmb0FBd0FIQUFzQUFGTTFJUlVCTlNFVkpUVWhGVDRCMi80bEFkditKUUhiQVlwd2NQNk1jSEM2Y0hBQUFRQ2wvd1lCZndOUUFBc0FBRmMxTWpZMkp3TXpFeFFHQnFVT0poNEJEb3NNTEdEMFJBUVJGQVBYL0N3dE5SUUFBUURZL3dZQnNnTlFBQXNBQUZjRE5EWTJGeFVpQmdZVkUrUU1MR0ZORFNjZER2b0QxQzAyRXdaRUJCRVUvQ2tBQVFBNkFKb0NaQUhxQUFVQUFIY1JJUlVoRlRvQ0t2NXdtZ0ZRbTdVQUFRQkNBQUFDVWdJUUFBc0FBR0UxSXpVek5UTVZNeFVqRlFFSXhzYUV4c2JHaE1iR2hNWUFBQUVBUWdER0FsSUJTZ0FEQUFCM05TRVZRZ0lReG9TRUFBRUFSQUFDQWxBQ0RnQUxBQUIzSnpjbk54YzNGd2NYQnllaVhxbXBYcWlvWHFtcFhxZ0NYcWlvWHFtcFhxaW9YcWtBQXdCQ0FBOENVZ0g4QUFNQUJ3QUxBQUIzTlNFVkJUVXpGUU0xTXhWQ0FoRCt1SU9EZzhTRWhMV0Rnd0ZxZzRNQUFnQkNBRlVDVWdHN0FBTUFCd0FBVXpVaEZRVTFJUlZDQWhEOThBSVFBVGVFaE9LRWhBQUJBRUlBQUFKU0FoQUFFd0FBY3pjak5UTTNJelVoTnpNSE14VWpCek1WSVFkbk4xeXhQZTRCUXpkeE4xeXhQZTcrdlRkVmhGNkVWVldFWG9SVkFBRUFUdi96QWxzQ0Z3QUdBQUJYTlNVbE5RVVZUZ0ZuL3BrQ0RRMk9nNFNQeTQ4QUFBRUFPZi96QWtZQ0Z3QUdBQUJGSlRVbEZRVUZBa2I5OHdJTi9wa0JadzNLajh1UGhJTUFBZ0JDQUFBQ1VnS2pBQVlBQ2dBQWR6VWxKVFVGRlFFMUlSVkNBWFQrakFJUS9mQUNFS09PY1hLUHVZLytwWVNFQUFBQ0FFSUFBQUpTQXFNQUJnQUtBQUJsSlRVbEZRVUZBVFVoRlFKUy9mQUNFUDZNQVhUOThBSVFvN2lQdVk5eWNmN1BoSVFBQWdCQ0FBQUNVZ0tnQUFzQUR3QUFaVFVqTlRNMU14VXpGU01WQlRVaEZRRUl4c2FFeHNiK3RnSVFzTGFFdHJhRXRyQ0VoQUFBQWdBbkFDa0NiUUh4QUJzQU53QUFVelUrQWpNeUhnSXpNalkyTnhVT0FpTWlMZ0lqSWdZR0J6VStBak15SGdJek1qWTJOeFVPQWlNaUxnSWpJZ1lHSnc4MFFTUWhQRG85SWlSQ013OFBOVUVqSVR3NlBTSWtRak1QRHpSQkpDRThPajBpSkVJekR3ODFRU01oUERvOUlpUkNNd0VUZ2hFbEdoVWFGUm9sRVlJUkpSb1ZHaFVhSmZ1Q0VTVWFGUm9WR2lVUmdoRWxHaFVhRlJvbEFBQUJBQ2NBdXdKdEFaa0FHd0FBZHpVK0FqTXlIZ0l6TWpZMk54VU9BaU1pTGdJaklnWUdKdzgwUVNRaFBEbzlJaVJDTXc4UE5VRWpJVHc2UFNJa1FqTzdnaEVsR2hVYUZSb2xFWUlSSlJvVkdoVWFKUUFCQURBQW1nSmFBZW9BQlFBQVpUVWhOU0VSQWNEK2NBSXFtcldiL3JBQUFBRUFWZ0ZSQWo4Q3NBQUdBQUJURXpNVEl5Y0hWcTJQclk1bFpnRlJBVi8rb2RUVUFBTUFNQUNLQXBrQnlRQWVBQ29BTmdBQWR5SW1KalUwTmpZek1oWVdGejRDTXpJV0ZoVVVCZ1lqSWlZbUp3WUdKekkyTnlZbUl5SUdGUlFXSVRJMk5UUW1JeUlHQnhZV3hTZEVLaWxJTENJM01CVVBLRGduS1VVcUxFVW5GRFE1SFNKSkhSZ3dEaEl0R0I4aElRRTNIU0FnSUJJbkhSY3hpaWRITURCSktCUWxIQkluSENWRk1UUkpKd3dtSnlvdlhTUWFKU01vR1Jrc0tCa2FLeHNvSmgwQUFBTUFSUUJRQWs4Q1d3QVpBQ1FBTGdBQWR5YzNKaVkxTkRZMk16SVdGemNYQnhZV0ZSUUdCaU1pSmljM01qWTJOVFFtSndjV0ZpYzNKaVlqSWdZR0ZSU0NQVG9XR0VKeFJTcExFenBFT0JRV1JYQkRLa3dZamljNUlBWUZ0QTRnWnE0TUhBOGxPaUZRUFRvWlNTcERjVVFZRWpwRU9CVk5La1p4UVJnV1FDWS9KUThkRGJJSUNWZXhCZ1lsUHlZYkFBRUFSUUFBQW9nQ3NBQVhBQUJoRVRRdUFpTWlEZ0lWRVNNUk5EWTJNeklXRmhVUkFmc0tIanN5S2prakQ0dzFmbTV2ZmpVQndCTXNLQmtaSnl3VS9rRUJ1MFp1UUVCdVJ2NUVBQUFCLy8vL21RRVFBNUVBRXdBQVJ6VXlOalluQXlZMk5oY1ZJZ1lHRlJNV0JnWUJEaVllQVJvQk5tTkNEU2NkR2dJM1kySkVCQklUQXd3dE9SUUtSQVFSRlB6MExUVVRBQUFCQUI4QUFBTTRBcndBTHdBQWN6VXpNaFlXRnlZbU5UUTJOak15RmhZVkZBWUhQZ0l6TXhVaE5UNENOVFUwSmlZaklnWUdGUlVVRmhZWEZSOFZEeWNvRUM0N1dhWnpkS1phUEM4Ukp5Y1BGdjZ3SFNZVElVRXhNRUFnRWlZY3BnWUpCU3g0VEdHTVRVMk1ZVXg0TEFVSkJxYVRDeXM3SkZBdlNDZ29TQzlRSkRzcURKTUFBQUlBR2dBQUF2NENzQUFEQUJjQUFITVRJUk1sTXlZbUp5Y3VBaWNqRGdNSEJ3NENHdThCQmZEK0UrZ0REQVUvQXdzS0JBUURDQWdJQTBJRENBY0NzUDFRbVFva0U5TUxJaVFPQ1JrYUdRclFDaGtZQUFFQUZmOTJBeU1DMVFBTEFBQlhFU00xSVJVakVTTVJJeEdLZFFNT2RhM0tpZ0xOa3BMOU13TE4vVE1BQVFBZC8zWUNyQUxXQUEwQUFGYzFFd00xSVJVaEZSTURGU0VWSGUvaUFtaittN0hUQWFHS1ZRRmFBVUp2bEFUL0FQN1JCWlFBQWYvZi8yNENWd05LQUF3QUFGY0RCeWMzRXg0Q0Z4TXpBL3l1VXh6VWRBWUtDUU9xYXRPU0FhOGhWVmYreHc4ZkhnMEROUHdrQUFBQ0FBNy84d0htQXJ3QUpBQXpBQUJYSWlZbU5UUTJOak15RmhZWE16UTJOVFF1QWlNaUJnYzFOall6TWg0Q0ZSUUdCaWN5TmpZM0xnSWpJZ1lHRlJRVzUwbGhMekJYT0NRMElRWUhBUk1tTnlRclBBOFpSekE0WWtrcE8zSlRHeWdhQXdJVkloY1pKUlVtRFVGbE5VUnBQUm9rRGdVTEJTTkNOUjhYQ0lBTkZEQmFnRkZxcGw1NExVUWdEU01hSWpjaUtEZ0FBUUE4L3pzQ1lBSVFBQjBBQUZjUk14RVVIZ0l6TWpZMk5SRXpFU01uSXc0Q0l5SW1KeFlXRlJVOHh3a1FHaEFaSlJYSG93b0hEQ01zSEEwZUVRUUd4UUxWL3NJUUhCUUxGeVlXQVRiOThGQWFKQklGQkJZekRuY0FBUUN4QUFBRElnSnhBQVVBQUhNUk14RWhGYkY2QWZjQ2NmMy9jQUFBQlFBei8vUUR0Z0s4QUFNQUV3QWlBRElBUVFBQWN3RXpBUU1pSmlZMU5EWTJNeklXRmhVVUJnWW5NalkxTlRRbUppTWlCaFVWRkJZQklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5UVTBKaVlqSWdZVkZSUVc3QUdqYmY1ZmNFRlJKaVpSUVVGUkpTVlJRU0VhQ3hvV0lCd2NBalJCVVNZbVVVRkJVU1VsVVVFaEdnc2FGaUFjSEFLdi9WRUJWaTFRTlRaUkxTMVJOalZRTFV3eUpTQVpKeGN4SmlBbE12NVNMVkExTmxFdExWRTJOVkF0VERJbElCa25GekVtSUNVeUFBQUhBQUQvOUFQb0Fyd0FBd0FUQUNJQU1nQkJBRkVBWUFBQWN4TXpBd01pSmlZMU5EWTJNeklXRmhVVUJnWW5NalkxTlRRbUppTWlCaFVWRkJZQklpWW1OVFEyTmpNeUZoWVZGQVlHSnpJMk5UVTBKaVlqSWdZVkZSUVdCU0ltSmpVME5qWXpNaFlXRlJRR0JpY3lOalUxTkNZbUl5SUdGUlVVRnFmNlYvdHFPVUFhR2tBNU9qOGFHajg2R2hVSkZCSWFGaFlCa1RsQUdocEFPVG8vR2hvL09ob1ZDUlFTR2hZV0FXVTVRQm9hUURrNlB4b2FQem9hRlFrVUVob1dGZ0t3L1ZBQlZpMVJOVFpRTFMxUU5qVlJMVVFvTGpJZkpSSW9Makl1S1A1YUxWRTFObEF0TFZBMk5WRXRSQ2d1TWg4bEVpZ3VNaTRvUkMxUk5UWlFMUzFRTmpWUkxVUW9MaklmSlJJb0xqSXVLQUFBQVFBdi96SUJ4UUxIQUFrQUFGY1JCelUzTXhjVkp4RzdqTUVWd0l6T0FyUXJSOFhGUnl2OVRBQUFBUUFwQURJRHZ3SEhBQWtBQUdVM0lUVWhKek1YRlFjQ3N5djlTd0sxSzBmRnhUS0xmNHZBRmNBQUFRQXUveklCeEFMSEFBa0FBRmNuTlJjUk14RTNGUWZ2d1l4K2pNRE94VWNyQXJUOVRDdEh4UUFBQVFBcEFESUR2d0hIQUFrQUFIY25OVGN6QnlFVklSZnV4Y1ZIS3dLMS9Vc3JNc0FWd0l0L2l3QUFBUUFwQURJRHZ3SEhBQThBQUhjbk5UY3pCeUVuTXhjVkJ5TTNJUmZ1eGNWSEt3SFVLMGZGeFVjci9pd3JNc0FWd0l1THdCWEFpNHNBQUFFQUwvOHlBY1VDeHdBUEFBQlhKelVYRVFjMU56TVhGU2NSTnhVSDhNR01qTUVWd0l5TXdNN0ZSeXNCMHl0SHhjVkhLLzR0SzBmRkFBQUNBQy8vSkFIRkFzY0FEd0FUQUFCWEp6VVhFUWMxTnpNWEZTY1JOeFVIQnpVaEZmREJqSXpCRmNDTWpNRFdBWlo3eFVjckFZQXJSOFhGUnl2K2dDdEh4V0UrUGdBQUFnQW8vM3NDTHdMWUFBVUFDUUFBVndNVE14TURKeE1EQTcyVmxkNlVsRzFXVmxhRkFhOEJydjVTL2xHaEFRNEJEZjd6QUFJQUxmOWlBOFVDdndCWUFHWUFBRVVpSmlZMU5ENENNekllQWhVVURnTWpJaVltSnlNT0FpTWlMZ0kxTkQ0Q016VTBKaVlqSWdZR0ZSVWpKalExTkRZMk16SVdGaFVWRkJZek1qWTJOVFFtSmlNaUJnWVZGQll6TWpZMk54VU9BZ015UGdJMU5TSUdCaFVVRmhZQjFvYStaVXlFcTE5Zm9ubEVHeTg4UkNJbU55QUdCaEFvTnljYk5pd2JLa3hvUGdrWUdCNGRDSWNCTTFvNlExa3RGaEVlTEJoVWxtTndvVmVjcGh4S1J4VWJTRXNPSENNU0J5cEFKUXdabmxpNmtuaW9hVEFzWFpCbFJHVkZLaE1VSFEwU0hSQVJJelVrTUVBbkVSb1RIUklRRlFvT0JRa0dLRDhsSlVVeHlSZ1JKbGRKWlhvNFNaWjFucDhKRGdsbkNBOElBUlVQSENZV0R3a2RIZ3NZRHdBQUFRQkwvL1FEZUFLOEFEb0FBRVVpSmlZMU5EWTNOU1ltTlRRMk5qTXlGaFlWRlNNbkxnSWpJZzRDRlJRV0ZqTXpGU01pQmdZVkZCWVdNekkyTmpVMUlSVWpGUlFHQmdHbmVacEpRRGdxT2tpUGEybVZUckVCQVI4OExpTXpJQkFVSVJKb2ZoTWdFeHhBTkR0QkdnRThpVUtSRERaY09qMVdFZ1FRVFRFMVdqWXpWVFFaRGhFYUR3NFlIaEFXSEExN0VCOFpHU2dYR0NrWXdudERSMm81QUFFQUxmOWZBcWdDc0FBUkFBQlhFUzRDTlRRMk5qTWhGU01SSXhFakVmdzZYamM2WWp3Qm8wS0FhcUVCb0FJN1lUbzhZenA1L1NnQzJQMG9BQUlBTnY5SUFtVUN2QUJOQUYwQUFFVWlMZ0kxTkRRMU14VVVIZ0l6TWpZMk5UUXVCVFUwTmpZM0ppWTFORDRDTXpJZUFoVVVGQlVqTlRRdUFpTWlCZ1lWRkI0RkZSUUdCZ2NXRmhVVURnSVROalkxTkM0Q0p3WUdGUlFlQWdGUktWcFBNclVORlJrTEVTTVlKajVMU3o0bUlDc1BJU294VDFzcUtWcFBNclVORmhnTEVTTVlKajVMU3o0bUlTb1FJaW94VDFza0N4UWhPRVVrQ3hRaE9FVzREeUk3TFFJR0FnUUtFQW9GQnhBTkZCNGFHeUV0UGlvb1BTa0tGenNvTVVJbkVROGlPeTBDQmdJRkNnOEtCUWNQRGhRZUdoc2hMVDRxS0Qwb0N4YzdLREZDSnhFQlhRa1pFQmNsSUIwUENSa1FGeVVnSFFBQUF3QXIvL1FDOVFLOEFCTUFOUUJGQUFCRklpNENOVFErQWpNeUhnSVZGQTRDSnlJbUpqVTBOall6TWhZV0ZTTTBKaVlqSWdZVkZSUVdGak15TmpZMU14UUdCZ2N5TmpZMU5DWW1JeUlHQmhVVUZoWUJrRTZDWURVMVlJSk9UWU5nTlRWZ2cwbEhZREF3WUVjOFdqRi9FU0FZTENJUElod2FJeEY3TDFsRVVuNUpTWDVTVVg1SVNINE1OV0NDVGsyQ1h6VTFYNEpOVG9KZ05ZNHdZRWRHWHpBcFRqb1lJeE0zTlFvbk1SZ1NJaGc1VGloTlRJUlVWWU5MUzROVVZZUk1BQUFFQUN2LzlBTDFBcndBRXdBakFERUFPZ0FBUlNJdUFqVTBQZ0l6TWg0Q0ZSUU9BaWN5TmpZMU5DWW1JeUlHQmhVVUZoWW5FVE15RmhVVUJnY1hJeWNqRlRVek1qWTFOQ1lqSXdHUVRvSmdOVFZnZ2s1TmcyQTFOV0NEVGxKK1NVbCtVbEYrU0VoK1Y5TkJSaVFaVVpFNElDZ1FGaFlRS0F3MVlJSk9UWUpmTlRWZmdrMU9nbUExUVV5RVZGV0RTMHVEVkZXRVRGVUJuVVU0Snp3VnFKS1M3aGNTRVJjQUJBQXIvL1FDOVFLOEFCTUFJd0F2QURnQUFFVWlMZ0kxTkQ0Q016SWVBaFVVRGdJbk1qWTJOVFFtSmlNaUJnWVZGQllXSnhFek1oWVZGQVlHSXlNVk5UTXlOalUwSmlNakFaQk9nbUExTldDQ1RrMkRZRFUxWUlOT1VuNUpTWDVTVVg1SVNINUEwMEZHSjBBa1NpZ1FGaFlRS0F3MVlJSk9UWUpmTlRWZmdrMU9nbUExUVV5RVZGV0RTMHVEVkZXRVRGVUJuVVU0T1QwWWt1NFhFaEVYQUFJQUZBRWlBNVFDc0FBUEFCY0FBRUVSTXhjek56TVJJelVqQnlNbkl4VWhFU00xSVJVakVRRzR0RHNGT3E1K0JEOWtQZ1QrYW9NQmhZSUJJZ0dPNXViK2N2RHc3KzhCS0dabS90Z0FBQVFBTHYvMEE3a0N2QUFEQUNRQU5BQkNBQUJYQVRNQkF5SW1KalUwTmpZek1oWVdGU00wSmlZaklnWVZGUlFXTXpJMk5qVXpGQVlHQVNJbUpqVTBOall6TWhZV0ZSUUdCaWN5TmpVMU5DWWpJZ1lWRlJRVzl3R2FZUDVsWkR0Wk1EQlpPelZYTkg4UEhSVWlIeDhsRmgwUWVqUlhBYzA3V1RBd1dUczhXREV4V0R3akh4OGpJaDhmREFMSS9UZ0JXeWhSUFQxUktCNUJOUlVhRENjakppSW9EUnNWTlVJZi9xVW9VVDA5VVNnb1VUMDlVU2haS0NJbEl5Z29JeVVpS0FBQUFnQXlBWkFCWGdLOEFBOEFHd0FBVXlJbUppYzBOall6TWhZV0ZSUUdCaWN5TmpVMEppTWlCaFVVRnNncFJDZ0JLRVVwS1VRcEtVUXFHaVFsR2hnbEpRR1FLRVVwS1VRcEtVUXBLVVVvVnlVWkdpUWtHaGtsQUFFQUhBSC9BTndDMVFBRUFBQlROek1YQnh3UXJnSlBBZi9XQk5JQUFBSUFIQUgvQWE0QzFRQUVBQWtBQUZNM014Y0hNemN6RndjY0VLNENUMkVRcmdKUEFmL1dCTkxXQk5JQUFRQksveTRBMEFMV0FBTUFBRmNSTXhGS2h0SURxUHhZQUFBQ0FFci9MZ0RRQXRZQUF3QUhBQUJURVRNUkF4RXpFVXFHaG9ZQlVBR0cvbnI5M2dHRy9ub0FBUUJDLzBjQ1dRS3dBQXNBQUVVVEJ6VVhKek1ITnhVbkV3RUVGTmJXRkpNVTF0WVV1UUkyRlpNVnlzb1ZreFg5eWdBQ0FEWC85QUlHQXVFQUhnQXFBQUJGSWlZbU5RYzFOelUwTmpZek1oWVdGUlFHQmdjWEZoWXpNalkzRlFZR0F6NENOVFFtSXlJR0JoVUJSME5lTVVBOE5tSkJQMDhtT0dkSEFRSXZLQ1pNSWl0allDTXdHUmNhRGhzU0RDcEdLQ3B6S2ROZWVEb3pWREk2YTJvNUdpUXFMaWVYSkI0QmVDSkZRaDBlSlJnNk13QUFBUUJDL3prQ1dRS3dBQlVBQUVVM0J6VVhKemNITlJjbk13YzNGU2NYQnpjVkp4Y0JCQlRXMWhRVTF0WVVreFRXMWhRVTF0WVV4OHNWa3hXSmh4V1RGY3JLRlpNVmg0a1ZreFhMQUFRQVNnQUFCUWtDdkFBREFCTUFJUUE2QUFCbE5TRVZKeUltSmpVME5qWXpNaFlXRlJRR0JpY3lOalUxTkNZaklnWVZGUlFXQVJFekZ4NENGemNtTkRVMU14RWpBeVltSndjV0ZCVVJBMGtCcU5SSGF6bzZhMGRIYWpzN2FrY3BKU1VwS2lRay9GZTgxZ2tlSHdnRkFjbTc4UkVZQ3dVQmtIWjJuaXhaUWtOWUxDeFlRMEpaTEdzd0tRVXFNREFxQlNrdy9tY0NzUGNLSmljTUFodzNEdmY5VUFFVEZDRVBBaE1tQ2Y3dEFBSUFMZi8wQWk4Q0dnQVlBQ0VBQUVVaUppWTFORFkyTXpJV0ZoVVZJUlVXRmpNeU5qY1hCZ1lESVRVbUppTWlCZ2NCTGxCelBqNXpVRkJ6UHY1cUhFc3VRbU1aSWg5ejR3RXFIRXN1TGtzY0RFZDlUMUI4UjBxQVV3V2xHUnc3TWhVOFJnRXVseG9kSEJvQUFBSUFTd0FBQWcwQ013QUVBQWtBQUhNUk54Y1JKVE0xSndkTDRlSCtuLzkvZ0FFMi9mMyt5ay9Oam80QUFRQUFBakFBbUFOREFBc0FBRkUxTWpZMUl6VXpGUlFHQmlnZlI1Z2RRd0l3UVI4b2kzQThTQjhBQWdBQUFoQUI1Z0xWQUFRQUNRQUFVVGN6Rndjek56TVhCMHk4QW90ZFRMd0Npd0lReFFUQnhRVEJBQUFCQUFBQ0pnSWtBckFBQXdBQVVUVWhGUUlrQWlhS2lnQUJBQUFDRUFFS0F0VUFCQUFBVVRjekZ3ZE12QUtMQWhERkJNRUFBZ0FBQWtvQmRBTFZBQU1BQndBQVVUVXpGVE0xTXhXWVJKZ0NTb3VMaTRzQUFBTUFBQUpLQVlBRGdRQURBQWNBREFBQVV6VXpGVE0xTXhVbkl5YzNNd3lZUkpoWGlhQUN5d0pLaTR1TGk3S0JCQUFBQXdBQUFrb0Jmd09CQUFNQUJ3QU1BQUJSTlRNVk16VXpGU1UzTXhjSG1FU1kvdUpjeXdLZ0FrcUxpNHVMc29VRWdRQURBQUFDU2dHMEE0RUFBd0FIQUE4QUFGTTFNeFV6TlRNVkFUTVhJemN6QnlNZm1FU1kvbTJSWlRwbGs0YW9Ba3FMaTR1TEFUZFpXWVVBQXdBQUFrb0JkQU5vQUFNQUJ3QUxBQUJSTlRNVk16VXpGU1UxSVJXWVJKaitxQUU4QWtxTGk0dUx1bVJrQUFFQUFBSktBSmdDMEFBREFBQlJOVE1WbUFKS2hvWUFBQUlBQUFKS0FUd0RhQUFEQUFjQUFGTTFNeFVuTlNFVlVwanFBVHdDU29hR3VtUmtBQUVBQUFKUUFTa0MxUUFFQUFCQkl5YzNNd0VwaWFBQ3l3SlFnUVFBQUFFQUFBSlFBU2tDMVFBRUFBQlJOek1YQjF6TEFxQUNVSVVFZ1FBQ0FBQUNVQUh4QXRVQUJBQUpBQUJSTnpNWEJ6TTNNeGNIVEx3Q2kyaE12QUtMQWxDRkJJR0ZCSUVBQUFFQUFBSlFBYlFDMVFBSEFBQlJOek1YSXljekI0YW9ocE5sT21VQ1VJV0ZXVmtBQUFFQUFBSlFBYlFDMVFBSEFBQlJNeGNqTnpNSEk1RmxPbVdUaHFnQzFWbFpoUUFCQUFBQ1JRRnhBdFVBRVFBQVV5SW1KalV6SGdJek1qWTJOek1VQmdhNE9sSXNZQU1jSnhJWkp4Z0NYeTFUQWtVc1F5RU9GdzBRR0FvaFF5d0FBQUlBQUFKQkFOb0RHZ0FMQUJjQUFGTWlKalUwTmpNeUZoVVVCaWN5TmpVMEppTWlCaFVVRm0wdlBqNHZMejQrTHhFWEZ4RVJGeGNDUVQwdkx6NCtMeTg5UWhnVEVoY1lFaE1YQUFBREFBQUNRUUV5QTcwQUN3QVhBQndBQUZNaUpqVTBOak15RmhVVUJpY3lOalUwSmlNaUJoVVVGaWMzTXhjSGJTOCtQaTh2UGo0dkVSY1hFUkVYRjFOY3l3S2dBa0U5THk4K1BpOHZQVUlZRXhJWEdCSVRGN1dGQklFQUFBRUFBQUpHQWJ3QzFRQVhBQUJSTkRZMk16SVdGak15TmpjekZBWUdJeUltSmlNaUJnY2pQeW9nT3pjYkV4b0ZVU00vS2lBN054c1RHZ1VDUmlSQ0tSUVVGeEVrUVNvVUZCY1JBQUFDQUFBQ1JnRzhBMmdBRndBYkFBQlJORFkyTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdjbk5TRVZJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GRVFFOEFrWWtRaWtVRkJjUkpFRXFGQlFYRWI1a1pBQUFBUUFBQWxnQlBBSzhBQU1BQUZFMUlSVUJQQUpZWkdRQUFRQUFBazhBM0FMa0FCZ0FBRk0xTXpJMk5UUW1JeU0xUGdJek1oNENGUlFHQmdjVk5Bc1NEQklST2d3aklnd1NMQ2NhR2lnWEFrODRCd29MQmpNREF3SUhEeGtURXhrTUFoa0FBQUlBQUFKUUFkTUMxZ0FFQUFrQUFFRW5Oek1YSVNjM014Y0JYb3NDc2t6K3VJc0Nza3dDVUlJRWhvSUVoZ0FCQUFBQ1JRRnhBdFVBRVFBQVV6SVdGaFVqTGdJaklnWUdCeU0wTmphNE9WTXRYd0lZSnhrU0p4d0RZQ3hTQXRVc1FpSUxGeEFORmc4aVFpd0FBQUVBQUFKT0FKZ0RZUUFMQUFCVEZTSUdGVE1WSXpVME5qYVlLQjlIbUIxREEyRkJIeWlMY0QxSEh3QUFBUUFBQWlzQW1BTStBQXNBQUZFMU1qWTFJelV6RlJRR0JpZ2ZSNWdkUXdJclFSOG9pM0E4U0I4QUFRQUFBWTBBMkFLd0FBc0FBRkUxTWpZM0l6VXpGUlFHQmlrNUNFYTBNR0FCalZjZEhKTlhRVnN2QUFBQkFBRC9QZ0NZLzhRQUF3QUFWVFV6RlpqQ2hvWUFBZ0FBL3o0QmRQL0pBQU1BQndBQVZUVXpGVE0xTXhXWVJKakNpNHVMaXdBQkFBRCt0Z0NZLzhrQUN3QUFVVFV5TmpVak5UTVZGQVlHS0I5SG1CMUQvclpCSHlpTGNEeElId0FCQUFEL0xRRC9BQ2NBRndBQVZ5SW1KelV6TWpZMU5DWWpJemN6Qng0Q0ZSUU9Bb1VpVFJacEVoWVFGaWdVWUFzU0p4b1pKaXJUQ1FjNUJoQVBDWU5FQWhNbEh4d2xGQWdBQUFFQUFQOHRBT2dBREFBVEFBQlhJaVltTlRRMk56TVZCZ1lWRkJZek14VUdCbjRnT2lRaEVXb1NFaG9hUEJjNjB4Y3lLU1V6RlFRTUp4TVhJMHdIQ0FBQkFBRC9PUUZ4LzhrQUVRQUFWeUltSmpVekhnSXpNalkyTnpNVUJnYTRPbElzWUFNY0p4SVpKeGdDWHkxVHh5eERJUTRYRFJBWUNpRkRMQUFCQUFEL1lBRTgvOFFBQXdBQVZUVWhGUUU4b0dSa0FBQUJBQUFCTndHeUFhMEFBd0FBVVRVaEZRR3lBVGQyZGdBQkFBQUJOd00rQWEwQUF3QUFVVFVoRlFNK0FUZDJkZ0FCQUFBQXVRRjVBZjBBQXdBQWRUVWxGUUY1dVdMaVpBQUJBQUQvMHdKQUFpOEFBd0FBVlFFekFRSGtYUDRjTFFKYy9hUUFBZ0FBQWtvQmRBTFZBQU1BQndBQVVUVXpGVE0xTXhXWVJKZ0NTb3VMaTRzQUFBRUFBQUpLQUpnQzBBQURBQUJSTlRNVm1BSktob1lBQUFFQUFBSlFBU2tDMVFBRUFBQkJJeWMzTXdFcGlhQUN5d0pRZ1FRQUFBRUFBQUpRQVNrQzFRQUVBQUJSTnpNWEIxekxBcUFDVUlVRWdRQUNBQUFDVUFIeEF0VUFCQUFKQUFCUk56TVhCek0zTXhjSFRMd0NpMmhNdkFLTEFsQ0ZCSUdGQklFQUFBRUFBQUpRQWJRQzFRQUhBQUJSTnpNWEl5Y3pCNGFvaHBObE9tVUNVSVdGV1ZrQUFBRUFBQUpRQWJRQzFRQUhBQUJSTXhjak56TUhJNUZsT21XVGhxZ0MxVmxaaFFBQkFBQUNSUUZ4QXRVQUVRQUFVeUltSmpVekhnSXpNalkyTnpNVUJnYTRPbElzWUFNY0p4SVpKeGdDWHkxVEFrVXNReUVPRncwUUdBb2hReXdBQUFJQUFBSkJBTm9ER2dBTEFCY0FBRk1pSmpVME5qTXlGaFVVQmljeU5qVTBKaU1pQmhVVUZtMHZQajR2THo0K0x4RVhGeEVSRnhjQ1FUMHZMejQrTHk4OVFoZ1RFaGNZRWhNWEFBQUJBQUFDUmdHOEF0VUFGd0FBVVRRMk5qTXlGaFl6TWpZM014UUdCaU1pSmlZaklnWUhJejhxSURzM0d4TWFCVkVqUHlvZ096Y2JFeG9GQWtZa1Fpa1VGQmNSSkVFcUZCUVhFUUFBQVFBQUFsZ0JQQUs4QUFNQUFGRTFJUlVCUEFKWVpHUUFBUUFBL3kwQS93QW5BQmNBQUZjaUppYzFNekkyTlRRbUl5TTNNd2NlQWhVVURnS0ZJazBXYVJJV0VCWW9GR0FMRWljYUdTWXEwd2tIT1FZUUR3bURSQUlUSlI4Y0pSUUlBQUFCQUFEL0xRRG9BQXdBRXdBQVZ5SW1KalUwTmpjekZRWUdGUlFXTXpNVkJnWitJRG9rSVJGcUVoSWFHandYT3RNWE1pa2xNeFVFRENjVEZ5Tk1Cd2dBQWdBQUF1b0JkQU4xQUFNQUJ3QUFVVFV6RlRNMU14V1lSSmdDNm91TGk0c0FBQU1BQUFMcUFYZ0VLd0FEQUFjQURBQUFVelV6RlRNMU14VW5JeWMzTXdTWVJKaEtqcUFDMEFMcWk0dUxpN3lCQkFBQUF3QUFBdW9CaWdRckFBTUFCd0FNQUFCUk5UTVZNelV6RlNVM014Y0htRVNZL3VoYzBBS2dBdXFMaTR1THZJVUVnUUFEQUFBQzZnRytCQ3NBQXdBSEFBOEFBRk0xTXhVek5UTVZBVE1YSXpjekJ5TWttRVNZL21pV1pUcGxtSWF5QXVxTGk0dUxBVUZaV1lVQUF3QUFBdW9CZEFRRUFBTUFCd0FMQUFCUk5UTVZNelV6RlNVMUlSV1lSSmorcHdFOUF1cUxpNHVMdG1Sa0FBRUFBQUxxQUpnRGRRQURBQUJSTlRNVm1BTHFpNHNBQUFJQUFBTHFBVDBFQkFBREFBY0FBRk0xTXhVbk5TRVZVNWpyQVQwQzZvdUx0bVJrQUFFQUFBTHdBUzREZFFBRUFBQkJJeWMzTXdFdWpxQUMwQUx3Z1FRQUFBRUFBQUx3QVM0RGRRQUVBQUJSTnpNWEIxelFBcUFDOElVRWdRQUNBQUFDOEFIeEEzVUFCQUFKQUFCVE56TVhCeUUzTXhjSDUweThBb3YrbWt5OEFvc0M4SVVFZ1lVRWdRQUFBUUFBQXZBQnZnTjFBQWNBQUZFM014Y2pKek1IaHJLR21HVTZaUUx3aFlWWldRQUFBUUFBQXZBQnZnTjFBQWNBQUZFekZ5TTNNd2NqbG1VNlpaaUdzZ04xV1ZtRkFBRUFBQUxsQVhFRGRRQVJBQUJUSWlZbU5UTWVBak15TmpZM014UUdCcmc2VWl4Z0FoY25HQmtuR0FKZkxWTUM1U3hESVFvWUVCQVlDaUZETEFBQUFnQUFBdGNBNkFPd0FBc0FGd0FBVXlJbU5UUTJNeklXRlJRR0p6STJOVFFtSXlJR0ZSUVdkREpDUWpJeVFrSXlFUmNYRVJFWEZ3TFhQUzh2UGo0dkx6MUhGaEFRRkJVUUVSUUFBQU1BQUFMWEFVUUVVd0FMQUJjQUhBQUFVeUltTlRRMk16SVdGUlFHSnpJMk5UUW1JeUlHRlJRV0p6Y3pGd2QwTWtKQ01qSkNRaklSRnhjUkVSY1hUVnpRQXFBQzF6MHZMejQrTHk4OVJ4WVFFQlFWRUJFVXNJVUVnUUFBQVFBQUF1WUJ2QU4xQUJjQUFGRTBOall6TWhZV016STJOek1VQmdZaklpWW1JeUlHQnlNL0tpQTdOeHNUR2dWUkl6OHFJRHMzR3hNYUJRTG1KRUlwRkJRWEVTUkJLaFFVRnhFQUFBSUFBQUxtQWJ3RUJBQVhBQnNBQUZFME5qWXpNaFlXTXpJMk56TVVCZ1lqSWlZbUl5SUdCeWMxSVJValB5b2dPemNiRXhvRlVTTS9LaUE3TnhzVEdnVVNBVDBDNWlSQ0tSUVVGeEVrUVNvVUZCY1J1bVJrQUFBQkFBQUM2Z0U5QTA0QUF3QUFVVFVoRlFFOUF1cGtaQUFCQUFBQzdBRGNBNEVBR0FBQVV6VXpNalkxTkNZakl6VStBak15SGdJVkZBWUdCeFUwQ3hJTUVoRTZEQ01pREJJc0p4b2FLQmNDN0RnSENnc0dNd01EQWdjUEdSTVRHUXdDR1FBQUFnQUFBdkFCOFFOMUFBUUFDUUFBUVNjM014Y2hKemN6RndGeWl3SzhUUDZhaXdLOFRBTHdnUVNGZ1FTRkFBRUFBQUxsQVhFRGRRQVJBQUJSTkRZMk16SVdGaFVqTGdJaklnWUdCeTFVT0RwU0xHQUNGeVlaR0NnWUFnTGxJa0lzTEVJaUN4Y1FFQmNMQUFFQUFBSWNBTmdEUFFBTEFBQlJOVEkyTnlNMU14VVVCZ1lwT1FoR3REQmdBaHhYR3h5VFYwQmJMd0FBQVFBQUFMZ0J2QUlzQUFNQUFIVTFBUlVCdkxoaUFSSmtBQUFCQUFELzNBTFZBdFVBQXdBQVZRRXpBUUpwYlAyWEpBTDUvUWNBQWdBQUF1b0JkQU4xQUFNQUJ3QUFVVFV6RlRNMU14V1lSSmdDNm91TGk0c0FBQUVBQUFMcUFKZ0RkUUFEQUFCUk5UTVZtQUxxaTRzQUFBRUFBQUx3QVM0RGRRQUVBQUJCSXljM013RXVqcUFDMEFMd2dRUUFBQUVBQUFMd0FTNERkUUFFQUFCUk56TVhCMXpRQXFBQzhJVUVnUUFDQUFBQzhBSHhBM1VBQkFBSkFBQlROek1YQnlFM014Y0g1MHk4QW92K21reThBb3NDOElVRWdZVUVnUUFBQVFBQUF2QUJ2Z04xQUFjQUFGRTNNeGNqSnpNSGhyS0dtR1U2WlFMd2hZVlpXUUFBQVFBQUF2QUJ2Z04xQUFjQUFGRXpGeU0zTXdjamxtVTZaWmlHc2dOMVdWbUZBQUVBQUFMbEFYRURkUUFSQUFCVElpWW1OVE1lQWpNeU5qWTNNeFFHQnJnNlVpeGdBaGNuR0JrbkdBSmZMVk1DNVN4RElRb1lFQkFZQ2lGRExBQUFBZ0FBQXRjQTZBT3dBQXNBRndBQVV5SW1OVFEyTXpJV0ZSUUdKekkyTlRRbUl5SUdGUlFXZERKQ1FqSXlRa0l5RVJjWEVSRVhGd0xYUFM4dlBqNHZMejFIRmhBUUZCVVFFUlFBQUFFQUFBTG1BYndEZFFBWEFBQlJORFkyTXpJV0ZqTXlOamN6RkFZR0l5SW1KaU1pQmdjalB5b2dPemNiRXhvRlVTTS9LaUE3TnhzVEdnVUM1aVJDS1JRVUZ4RWtRU29VRkJjUkFBQUJBQUFDNmdFOUEwNEFBd0FBVVRVaEZRRTlBdXBrWkFBQkFBQUM4QURCQTNVQUJBQUFVVGN6RndjWXBRUTZBdkNGQ25zQUFRQUFBbEFBdkFMVkFBUUFBRkUzTXhjSEdLQUVPZ0pRaFFwN0FBSUFBQUpGQVg0RGl3QVJBQllBQUZNaUppWTFNeDRDTXpJMk5qY3pGQVlHSnpjekZ3ZTRPbElzWUFNY0p4SVpKeGdDWHkxVG5GekxBcUFDUlN4RElRNFhEUkFZQ2lGRExNR0ZCSUVBQUFJQUFBSkZBWDREaXdBUkFCWUFBRk1pSmlZMU14NENNekkyTmpjekZBWUdOeU1uTnpQRk9WTXNZQU1jSnhJWkp4Z0NYeTFUSzRtZ0Fzc0NSU3hESVE0WERSQVlDaUZETE1HQkJBQUNBQUFDUlFGeEE1b0FFUUFxQUFCVElpWW1OVE1lQWpNeU5qWTNNeFFHQmljMU16STJOVFFtSXlNMVBnSXpNaDRDRlJRR0JnY1Z1RHBTTEdBREhDY1NHU2NZQWw4dFUxOExFZ3dTRVRvTUlpTU1FaXduR2hvb0Z3SkZMRU1oRGhjTkVCZ0tJVU1zd0RnSENnc0dNd01EQWdjUEdSTVRHUXdDR1FBQUFnQUFBa1VCdkFPTEFCRUFLUUFBVXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1lsTkRZMk16SVdGak15TmpjekZBWUdJeUltSmlNaUJnZmRPVk1zWUFNY0p4SVpKeGdDWHkxVC91b2pQeW9nT3pjYkV4b0ZVU00vS2lBN054c1RHZ1VDUlN4RElRNFhEUkFZQ2lGRExMY2tRaWtVRkJjUkpFRXFGQlFYRVFBQUFnQUFBbEFCdEFPTEFBY0FEQUFBVVRjekZ5TW5Nd2NuTnpNWEI0YW9ocE5sT21VY1hNc0NvQUpRaFlWWldiYUZCSUVBQUFJQUFBSlFBYlFEaXdBSEFBd0FBRkUzTXhjakp6TUhOeU1uTnpPR3FJYVRaVHBscTRtZ0Fzc0NVSVdGV1ZtMmdRUUFBZ0FBQWxBQnRBT2FBQWNBSUFBQVVUY3pGeU1uTXdjM05UTXlOalUwSmlNak5UNENNekllQWhVVUJnWUhGWWFvaHBObE9tVWhDeElNRWhFNkRDTWlEQklzSnhvYUtCY0NVSVdGV1ZtMU9BY0tDd1l6QXdNQ0J3OFpFeE1aREFJWkFBQUNBQUFDVUFHOEE0c0FCd0FmQUFCVE56TVhJeWN6QnljME5qWXpNaFlXTXpJMk56TVVCZ1lqSWlZbUl5SUdCd1dHcUlhVFpUcGxsaU0vS2lBN054c1RHZ1ZSSXo4cUlEczNHeE1hQlFKUWhZVlpXYXdrUWlrVUZCY1JKRUVxRkJRWEVRQUFBZ0FBQXVVQmlBUVhBQkVBRmdBQVV5SW1KalV6SGdJek1qWTJOek1VQmdZbk56TVhCN2c2VWl4Z0FoY25HQmtuR0FKZkxWT1hYTkFDb0FMbExFTWhDaGdRRUJnS0lVTXNyWVVFZ1FBQUFnQUFBdVVCZHdRWEFCRUFGZ0FBVXlJbUpqVXpIZ0l6TWpZMk56TVVCZ1kzSXljM003NDZVaXhnQWhjbkdCa25HQUpmTFZNM2pxQUMwQUxsTEVNaENoZ1FFQmdLSVVNc3JZRUVBQUlBQUFMbEFid0VGd0FSQUNrQUFGTWlKaVkxTXg0Q016STJOamN6RkFZR0pUUTJOak15RmhZek1qWTNNeFFHQmlNaUppWWpJZ1lIM2pwU0xHQUNGeWNZR1NjWUFsOHRVLzdwSXo4cUlEczNHeE1hQlZFalB5b2dPemNiRXhvRkF1VXNReUVLR0JBUUdBb2hReXlqSkVJcEZCUVhFU1JCS2hRVUZ4RUFBQUlBQUFMd0FiNEVGd0FIQUF3QUFGRTNNeGNqSnpNSEp6Y3pGd2VHc29hWVpUcGxGbHpRQXFBQzhJV0ZXVm1paFFTQkFBQUNBQUFDOEFHK0JCY0FCd0FNQUFCUk56TVhJeWN6Qnpjakp6Y3pocktHbUdVNlpiaU9vQUxRQXZDRmhWbFpvb0VFQUFJQUFBTHdBYjRFRndBSEFCOEFBRkUzTXhjakp6TUhKelEyTmpNeUZoWXpNalkzTXhRR0JpTWlKaVlqSWdZSGhyS0dtR1U2WlpZalB5b2dPemNiRXhvRlVTTS9LaUE3TnhzVEdnVUM4SVdGV1ZtWUpFSXBGQlFYRVNSQktoUVVGeEVBQXdBdC82Z0MzUU1FQUFNQUJ3QXBBQUJYTnpNSEV6Y3pCd01pSmlZMU5EWXpNaFlXRlNNMEppWWpJZ1lHRlJVVUZoWXpNalkyTlRNVUJnYTlSRUJFd2p4QVBHMTFuMUcxc0dTVlV0TWNOU2d2T1JvYk9DMHNPUjNNVHBSWXQ3Y0N1YU9qL1pOUW4zV3d0RU9FWUNnNklDaElMMEF2U0NnZU9TZGVna01BQXdBay83MENjQUwwQUFNQUJ3QXNBQUJCTlRNVkF6VXpGU2NpSmlZMU5EWTJNekllQWhVak5DWW1JeUlHQmhVVkZCWVdNekkyTmpVekZBNENBU2xOVFUwcFdvVktTb1ZhUEdwUUxjRVhMQjhqS3hRVkxTUWhMUmk1TFZCcUFpbkx5LzJVek15SVBYcGRYWHM5R2paV1BCOG9FeHN6SXprak1oc1RLU0E4VnpZYUFBVUFMZitvQXQwREJBQURBQWNBQ3dBUEFERUFBRmMzTXdjek56TUhFemN6QnpNM013Y0RJaVltTlRRMk16SVdGaFVqTkNZbUl5SUdCaFVWRkJZV016STJOalV6RkFZR2lrSkFRaXhDUUVKUFEwQkRMRU5BUTU5MW4xRzFzR1NWVXRNY05TZ3ZPUm9iT0Mwc09SM01UcFJZczdPenN3S250YlcxdGYybFVKOTFzTFJEaEdBb09pQW9TQzlBTDBnb0hqa25Yb0pEQUFNQUl2KzlBa0VDOUFBREFBY0FTZ0FBUVRVekZRTTFNeFVuSWk0Q05UUTBOek1HRkJVZUFqTXlOalkxTkNZbUp5NEROVFErQWpNeUhnSVZGQlFISXpVMEppWWpJZzRDRlJRV0ZoY2VBeFVVRGdJQkNFNU9UaVl3WDA4d0Fia0JBUmNtRnc0bkhpTTVJaVZMUUNjclMxODBMVmxLTEFHM0ZTRVJCaGdaRVJjbkdDWllUeklzVEdNQ0xzYkcvWS9HeG9jVEtVQXVBd2NFQXdZQ0VoZ01CQkVTRVJFTEJnWVRJem91TkVZcEVSRWxQQ3NEQ1FJSUR4TUpBUVlPRFF3UENRVUhEUjgvT1RaSktoSUFBQU1BTGYreEF3SUM4UUFEQUFjQU1nQUFSVFV6RlFNMU14VURJaVkxTkRZMk16SWVBaFVqTkM0Q0l5SU9BaFVWRkJZV016STJOalUxSXpVaEVTTW5EZ0lCZ1VaR1JrT3NxMWlvZDBoL1lUYlRGU1F2R2ljOEp4UWpSelFqT3lTY0FXOXlGaDlLV0UrVGt3SzFpNHY5anJTd2RwNVFJVUZpUVJZa0dRMFZLam9tUURKSEpoVW9HZ1NNL29CRUdpUVNBQVVBSkFBQUEwVUNzQUFjQUNBQUpBQW9BQ3dBQUhNUk14Y2VBaGN6TGdJMU5UTVJJeWN1QXljakhnSVZGUUUxTXhVaE5UTVZCVFV6RlNFMU14VmV2cVFZTUNzTkJRRURBY3U5cGc4akloOE1CUUVDQXY3N25RSGlvdnpmblFIaW9nS3d3QnRBUEJjWFBFQWJ3UDFRd0JJckxpMFRFQ2MvTmNBQnAwbEpTVW5uU1VsSlNRQUFCUUFSQUFBRDd3S3dBQzhBTXdBM0FEc0FQd0FBY3dNekV4NERGek0rQkRjVE14TWVBaGN6UGdRM0V6TURJd011QXljakRnUUhBd0UxTXhjaE56TVZCVFV6RnlFM014V3lvZVErQXdVREF3RUtBUUlEQkFRQ1BPQkFCQWNGQVFvQkFnTURCQUk1MUtIelNnSURBd01CQ2dFQ0F3TUNBa24rZUk4UEFwSU5pZnc2cVE4Q1hRNmpBckQrVlJNakhoa0tDQklXR1I0UkFhcitWUm9zSXc0SEVSVVpIeElCcS8xUUFkQU1HQmNXQ1FjU0V4TVRDZjR4QVloSlNVbEppMGxKU1VrQUFBQUFBUUFBQXpjQWF3QUhBRWNBQWdBQkFBQUFBQUFBQUFBQUFBQUFBQUlBQVFBQUFDUUFTUUIyQUxNQStBRTdBWUFCM0FJNUFta0NtZ0xUQXdvRFFnT1NBK0lFRndSSEJISUVud1RqQlNBRlN3V0xCYzhHR3daZ0JwQUd5QWNDQnpRSGJnZXNCL3dJT2doeUNKa0kzUWtMQ1QwSmF3bXRDY01KNGdvUkNqTUtWZ3FCQ3FvSzFBc1dDMWdMZnd1aEM3NEwyZ3Y0REM0TVhReDZES29NNFF6MURURU5oZzNPRGhZT1lnNmtEcmtPMVE3MkR4RVBIUTlERDFnUGZRK1ZENjRQeXcvakQvVVFCeEFiRUVjUWJCQi9FS1VRMGhEeUVSNFJPQkZoRVhBUm1SR3hFY1lSNVJINkVpVVNPeEozRXA4UzRSTVNFMFlUZmhPM0UrOFVOQlI4RkxRVTlCVkVGWWNWeXhZWEZtRVdyQmNQRjNJWHVoZjlHRVlZaWhqSUdRZ1pYeG1uR2ZnYVJ4cVhHdjhiWnh1dkcvOGNQUnlQSE5BZEdSMXhIYzhlRlI0NUhsOGVueDdISHZjZktoOWhINWtmMlNBdUlJc2c3Q0ZmSWNBaUpDSXdJbklpclNLK0l0VWk4aU1oSTBFalZ5TjRJNklqM0NRSkpEY2thU1NXSk1zbEJDVTRKV3Nsa2lXN0pmd21MU1puSnA4bTJDY3BKM29uckNmbUtBNG9TU2lLS013bzZ5a3RLWGdweGlvVEtsMHFlU3FRS3E4cTBpcjBLeEFyTHl0bEs0TXJ1aXZRSys4c0VTd3RMR2NzcVN6dkxUUXRkaTIyTGhBdVNpNTdMcnN2R0M4M0w0NHY3VEJjTU5NeFNERy9NazB5M0RNK002RTBERFIxTk44MVlUWGpOa28yckRjSk4yZzMzamhOT0tvNUhEbVNPaEE2aHpyOE8zazd0VHZxUENnOGFUeTlQUDg5T2oxMlBjZytDejVPUHFVKzN6OGhQM00vdUQvOVFFcEFsa0RqUVVkQnJFSDJRanBDZVVLNVF2cERVME9sUStWRU9VU1NSTXhFNzBWZlJlaEdaRWJnUjJCSDFrZjlTQ3RJWDBpTVNKOUlxMGpBU09WSS9Va1dTVE5KUzBsZVNYZEppMG0zU2R4S0Mwb2VTa3RLZUVxYVNyWksza3IxU3h4TE0wcy9TMVJMWjB1RFM1Vkx2VXZRVEJGTU9VeHBUS0ZNMUUwTFRVUk5mRTNBVGdoT1BFNTRUc1JQQTA5RFQ0dFAwVkFZVUhkUTFsRWFVVmxSbmxIZVVoaFNWRktuVXV0VE4xT0JVOHhVTDFTVFZOZFZJMVZkVmF0VjUxWXNWb0JXMmxjN1YzZFh0RmZ4V0JCWU9GaGpXSkpZd2xqNldWUlp0bG9jV3BSYStsdGpXMjlic2x2UlcvVmNIbHhJWElwY3ZWem1YUTFkUEYxN1hhMWQ0RjRYWGtsZWcxN0JYdnBmTWw5ZVg0MWYwMkFLWUVsZ2htREVZUnBoY1dHb1llZGlGR0pXWXB4aTQyTUFZejFqZzJQTVpCUmtXV1J6WktKazJtVVZaVTlsaEdXN1pncG1RR2FQWnFObXdHYmdadnBuTjJkOFo4Vm9EV2hQYUpSbzhHa3phWkJwem1uK2FqcHFuR3E1YXZSclBXdC9hNjlyMkd3cGJGZHNlV3lqYk9adEUyMUJiV050bTIyemJmRnVQRzVsYnA5dTZHOEViMUJ2bVcvWmNCRndLWEJuY0xKdzIzRVZjVjV4ZW5IR2NnOXlUM0tIY3A1eTNYTW9jMUZ6aTNQVWMvSjBQblNIZE1oMUFIVVlkVloxb1hYS2RnUjJUWFpwZHJWMi9uYytkM1ozalhmTWVCZDRRSGg2ZU1ONDRYa3RlWFo1dDNua2VmeDZOSHA5ZXFKNjAzc01leWQ3Y251cmU5aDc3M3duZkhCOGxYekdmUDk5R1gxa2ZaMTl5MzNqZmh4K1pYNkxmcngrOW44UmYxeC9sbi9FZjl5QUZZQmVnSVNBdFlEdmdRcUJWWUdQZ1o2QjhvSTBncWFDc1lMSWd0cUM5NE1NZ3grRE00TjJnN3FEeG9QaWhBU0VNNFEvaEV5RVdZUnNoTENFdklUSWhPU0ZBWVU4aFhlRmlJV2FoYWFGc29XK2hjcUYxb1hpaGU2RitvWU1oaGlHSklZd2hqeUdTSVpmaG9hR3JvYldodTJIQkljZGh6ZUhSNGRYaDI2SGZZZVJoNldIcFllbGg2V0hwWWVsaDkrSUc0aGRpS3lKRElsWGlhT0oyNG4zaWpxS1c0cVNpcjZLNTRzZ2kwK0xoNHUzaStTTUVveG9qSjJNczR6TmpOeU05bzBPalNhTk5ZMUpqVldOYm8yR2pabU51STNLamQyTjlvNFFqaXVPZW82a2pyU094bzhYajErUGhZK3BqK3lRRnBBc2tFZVFZNUN0a05xUTZaRktrZE9SNkpIOWtoS1NKNUpFa21HU2hKS2VreWFUZHBPVWxCQ1VjWlRFbFJTVk81V2NsY2lWMTVYdGxmcVdEcFlubG1pV2pwYmxseHVYTVpkR2wxeVhhSmQybDRlWG9KZTVsOWFYN1pmNW1BdVlHcGdvbUQ2WVVKaGhtSUNZcHBqVW1QcVpKcGt5bVZpWmI1bU9tYVNadVpuUG1kcVo2cG4vbWlTYVJKcGltbTZhZXBxR21wS2FvSnF4bXIyYXpKcmFtdkNiQXBzVG16S2JXSnQrbTRxYnI1dlBtK0NiK1p3U25DK2NScHhTbkdTY2M1eUJuSmljcXB5N25OcWRBSjB1blZTZGdKMk1uYktkeVozbm5mMmVDcDRZbmltZU5aNUVubEtlYVo1N25veWVxNTdSbnZlZkE1OFJueCtmUnA5c242cWY2YUFEb0J5Z1RhQi9vS2FnektFTG9TV2hQcUZ2b1craGI2RnZvYTZoNzZJNm9xQ2k2S01ybzQwQUFRQUFBQUlBUXJSSXpVVmZEenoxQUFNRDZBQUFBQURiL1J5eEFBQUFBTnc0UHhIL0N2NXFCU01FUkFBQUFBWUFBZ0FBQUFBQUFBS0lBRW9EQ2dBS0F3b0FDZ01LQUFvRENnQUtBd29BQ2dNS0FBb0RDZ0FLQXdvQUNnTUtBQW9EQ2dBS0F3b0FDZ01LQUFvRENnQUtBd29BQ2dNS0FBb0RDZ0FLQXdvQUNnTUtBQW9EQ2dBS0F3b0FDZ01LQUFvRENnQUtBd29BQ2dNS0FBb0RDZ0FLQXdvQUNnUDhBQUFEL0FBQUF3b0FTZ01LQUMwRENnQXRBd29BTFFNS0FDMERDZ0F0QXdvQUxRTUtBRW9GMGdCS0F3b0FBQU1LQUVvRENnQUFCVFlBU2dMU0FFMEMwZ0JOQXRJQVRRTFNBRTBDMGdCTkF0SUFUUUxTQUUwQzBnQk5BdElBVFFMU0FFMEMwZ0JOQXRJQVRRTFNBRTBDMGdCTkF0SUFUUUxTQUUwQzBnQk5BdElBVFFMU0FFMEMwZ0JOQXBzQVNnTkJBQzBEUVFBdEEwRUFMUU5CQUMwRFFRQXRBMEVBTFFOQkFFb0RRUUFCQTBFQVNnTkJBRW9CY1FCS0JBd0FTZ0Z4QUVvQmNRQUJBWEgvMndGeC85c0JjZitRQVhILy93RnhBRW9CY1FCS0FYSC8rd0Z4QUVvQmNRQUJBWEVBR2dGeEFEOEJjZi9iQXBzQUZ3S2JBQmNEUVFCS0EwRUFTZ0tiQUVvRklnQktBcHNBU2dLYkFFb0Ntd0JLQXBzQVNnUFhBRW9DbXdBQUE4d0FTZ05CQUVvRjNBQktBMEVBU2dOQkFFb0RRUUJLQTBFQVNnTkIvOTRFZlFCS0EwRUFTZ05CQUMwRFFRQXRBMEVBTFFOQkFDMERRUUF0QTBFQUxRTkJBQzBEUVFBdEEwRUFMUU5CQUMwRFFRQXRBMEVBTFFOQkFDMERRUUF0QTBFQUxRTkJBQzBEUVFBdEEwRUFMUU5CQUMwRFFRQXRBMEVBTFFOQkFDMERRUUF0QTBFQUxRTkJBQzBEUVFBdEEwRUFMUU5CQUMwRFFRQXRBMEVBTFFOQkFDMEV0d0F0QXRJQVNnTFNBRW9EUVFBdEF3b0FTZ01LQUVvRENnQktBd29BU2dNS0FFb0RDZ0JLQXRJQUt3TFNBQ3NDMGdBckF0SUFLd0xTQUNzQzBnQXJBdElBS3dObUFFb0RRUUF1QXRJQUZ3TFNBQmNDMGdBWEF0SUFGd0xTQUJjQzBnQVhBMEVBU2dOQkFFb0RRUUJLQTBFQVNnTkJBRW9EUVFCS0EwRUFTZ05CQUVvRFFRQktBMEVBU2dOQkFFb0RRUUJLQTBFQVNnTkJBRW9EUVFCS0EwRUFTZ05CQUVvRFFRQktBMEVBU2dOQkFFb0RRUUJLQTBFQVNnTkJBRW9EUVFCS0EwRUFTZ05CQUVvRENnQVJBK2dBQlFQb0FBVUQ2QUFGQStnQUJRUG9BQVVEQ2dBRUF3b0FCd01LQUFjRENnQUhBd29BQndNS0FBY0RDZ0FIQXdvQUJ3TUtBQWNEQ2dBSEF0SUFHQUxTQUJnQzBnQVlBdElBR0FNTEFFVURDd0JGQXdzQVJRTUxBRVVEQ3dCRkF3c0FSUU1MQUVVRENnQXRBMEVBU2dOQkFDMEMwZ0FyQXRJQUdBS2JBQjRDbXdBZUFwc0FIZ0tiQUI0Q213QWVBcHNBSGdLYkFCNENtd0FlQXBzQUhnS2JBQjRDbXdBZUFwc0FIZ0tiQUI0Q213QWVBcHNBSGdLYkFCb0Ntd0FlQXBzQUhnS2JBQjRDbXdBZUFwc0FIZ0tiQUI0Q213QWVBcHNBSGdLYkFCNENtd0FlQS9BQUhnUHdBQjRDbXdBOUFwc0FKQUtiQUNRQ213QWtBcHNBSkFLYkFDUUNtd0FrQXBzQUpBS2JBQ1FDbXdBa0Fwc0FKQVRIQUNRQ213QWtBcHNBSkFLYkFDUUNtd0FrQXBzQUpBS2JBQ1FDbXdBa0Fwc0FKQUtiQUNRQ213QWtBcHNBSkFLYkFDUUNtd0FrQXBzQUpBS2JBQ1FDbXdBa0Fwc0FKQUtiQUNRQ213QWtBcHNBSkFLYkFDUUJoUUFJQXBvQUNnS2FBQW9DbWdBS0Fwb0FDZ0thQUFvQ21nQUtBcHNBUEFLYkFBQUNtLy9BQXBzQVBBRS9BRHdCUHdBOEFUOEFQQUUvLytjQlAvL0hBVC8veHdFLy8zb0JQLy9tQVQ4QVBBRS9BRHdCUC8vYUFUOEFQQUUvLytjQ2V3QThBVDhBQWdFL0FCTUJQLy9DQVR6LzBBRTgvOUFCUFAvSEFwc0FQQUtiQUR3Q213QThBVDhBUEFFL0FEd0JQd0E4QVQ4QVBBRS9BRHdDZXdBOEFULy80d1BvQUR3Q213QThBcHNBUEFLYkFBQUNtd0E4QXBzQVBBS2JBRHdDbS8vUUE5Y0FQQUtiQUR3Q213QWtBcHNBSkFLYkFDUUNtd0FrQXBzQUpBS2JBQ1FDbXdBa0Fwc0FKQUtiQUNRQ213QWtBcHNBSkFLYkFDUUNtd0FrQXBzQUpBS2JBQ1FDbXdBa0Fwc0FKQUtiQUNRQ213QWtBcHNBSkFLYkFDUUNtd0FrQXBzQUpBS2JBQ1FDbXdBa0Fwc0FKQUtiQUNRQ213QWtBcHNBSkFLYkFDUUNtd0FrQS9rQUpBS2JBRDBDbWdBOEFwc0FKQUc4QUR3QnZBQThBYndBR2dHOEFEd0J2UC9OQWJ3QU9nSmpBQ0lDWXdBaUFtTUFJZ0pqQUNJQ1l3QWlBbU1BSWdKakFDSUNtd0JEQVlVQUNBRzhBQnNCdkFBYkFid0FHd0c4QUJzQnZBQWJBYndBR3dLYkFEb0Ntd0E2QXBzQU9nS2JBRG9DbXdBNkFwc0FLQUtiQURvQ213QTZBcHNBT2dLYkFEb0Ntd0E2QXBzQU9nS2JBRG9DbXdBNkFwc0FPZ0tiQURvQ213QTZBcHNBT2dLYkFEb0Ntd0E2QXBzQU9nS2JBRG9DbXdBNkFwc0FPZ0tiQURvQ213QTZBbU1BQUFPd0FBQURzQUFBQTdBQUFBT3dBQUFEc0FBQUFwc0FCQUpqQUFBQ1l3QUFBbU1BQUFKakFBQUNZd0FBQW1NQUFBSmpBQUFDWXdBQUFtTUFBQUlzQUJRQ0xBQVVBaXdBRkFJc0FCUUNuQUE3QXB3QU93S2NBRHNDbkFBN0Fwd0FPd0tjQURzQ25BQTdBcHdBT3dLY0FEc0Ntd0FrQXBzQVBBS2JBQ1FDWXdBaUFpd0FGQUwwQUFnRU13QUlCRE1BQ0FMRUFBZ0N4QUFJQVpBQURBR1FBQVlCdEFBckF4UUFHZ05XQUI4Q25RQThBc01BRmdHMEFDc0Ntd0FwQXBzQWFRS2JBREVDbXdBcUFwc0FGd0tiQUNjQ213QXBBcHNBTFFLYkFDa0Ntd0FrQXBzQUtRS2JBQ2tDbXdCcEFwc0FNUUtiQUNvQ213QVhBcHNBSndLYkFDa0Ntd0F0QXBzQUtRS2JBQ1FDbXdBcEFwc0FLUUkzQURjQ213QXhBcHNBS2dLYkFCY0Ntd0FuQXBzQUtRS2JBQzBDbXdBcEFwc0FKQUtiQUNrQ213QXBBcHNBYVFLYkFERUNtd0FxQXBzQUZ3S2JBQ2NDbXdBcEFwc0FMUUtiQUNrQ213QWtBcHNBS1FLYkFDa0Ntd0JwQXBzQU1RS2JBQ29DbXdBWEFwc0FKd0tiQUNrQ213QXRBcHNBS1FLYkFDUUNtd0FwQWFRQUx3R2tBRFFCcEFBeUFhUUFNQUdrQUNZQnBBQTBBYVFBTGdHa0FEQUJwQUF2QWFRQUxnR2tBQzhCcEFBMEFhUUFNZ0drQURBQnBBQW1BYVFBTkFHa0FDNEJwQUF3QWFRQUx3R2tBQzRCcEFBdkFhUUFOQUdrQURJQnBBQXdBYVFBSmdHa0FEUUJwQUF1QWFRQU1BR2tBQzhCcEFBdUFhUUFMd0drQURRQnBBQXlBYVFBTUFHa0FDWUJwQUEwQWFRQUxnR2tBREFCcEFBdkFhUUFMZ0NuLzFjRDZBQTBBK2dBTkFQb0FEQUJUUUE5QVUwQVBRRk5BRDBCVFFBOUErZ0FQUUZOQUVBQlRRQS9BbU1BSlFKakFDNEJUUUJIQWZRQVdBR1hBQlVDbEFBVkFmUUFBQUV5QUFBQk1nQUFBVTBBUHdKakFDNEF3UUFVQU1FQUhnR0ZBRGNCaFFBaUFZVUFIZ0dGQUNnQmhRQk1BWVVBS0FGTkFDZ0JUUUFvQWZRQUFBUG9BQUFDN2dBQUFsZ0FKd0ZOQUNnQ0xBQUFBaXdBQUFGTkFDZ0JUUUFvQWZRQUFBUG9BQUFCVFFBb0FSWUFMZ0g4QUM0Qi9BQXVBZndBTGdFV0FDNEJGZ0F1QWxNQUZnSlRBQnNCWndBV0FXY0FHd0h4QURrQkZnQTVBa0VBTndKQkFEY0F0QUFBQUxRQUFBRHBBQUFDV0FBQUFBQUFBQU1LQUMwQ213QWtBd29BTFFLVUFFVUNZd0FpQXBvQUpBS2JBQmtDbXdBa0FxOEFId05CQUMwRE5nQWtBcHNBSHdLYkFBb0RMZ0JCQTJrQUpBTUVBQjREQkFBZUF1WUFIZ0tMQUVBQ213QWZCQUVBRVFLbUFBY0JUUUJaQW9zQUtBQnUvem9DV0FBK0FsZ0FwUUpZQU5nQ2xBQTZBcFFBUWdLVUFFSUNsQUJFQXBRQVFnS1VBRUlDbEFCQ0FwUUFUZ0tVQURrQ2xBQkNBcFFBUWdLVUFFSUNsQUFuQXBRQUp3S1VBREFDbEFCV0Fza0FNQUtVQUVVQ3p3QkZBUS8vL3dOV0FCOERGQUFhQXpjQUZRTEpBQjBDSmYvZkFmUUFEZ0tkQUR3RDB3Q3hBK2dBTXdQb0FBQUI5QUF2QStnQUtRSDBBQzRENkFBcEErZ0FLUUgwQUM4QjlBQXZBbFlBS0FQeUFDMERlUUJMQXNRQUxRS2JBRFlESUFBckF5QUFLd01nQUNzRHRnQVVBK2dBTGdHUUFESUF1QUFjQVlvQUhBRWFBRW9CR2dCS0Fwc0FRZ0pLQURVQ213QkNCVUVBU2dKWUFDMENXQUJMQUpnQUFBSG1BQUFDSkFBQUFRb0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFYUUFBQUNZQUFBQktRQUFBU2tBQUFIeEFBQUJ0QUFBQWJRQUFBRnhBQUFBMmdBQUFid0FBQUU4QUFBQS93QUFBT2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUYwQUFBQW1BQUFBUzRBQUFFdUFBQUI4UUFBQWI0QUFBRytBQUFCY1FBQUFPZ0FBQUc4QUFBQlBRQUFBTUVBQUFDOEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUpZQUFBQ1dBQUFBbGdBQUFNS0FDMENtd0FrQXdvQUxRSmpBQ0lEUVFBdEEya0FKQVFCQUJFQUFRQUFBMjcvTGdBQUJVai9DdjA3QlNNQUFRQUFBQUFBQUFBQUFBQUFBQUFBQXpjQUJBSS9BNFFBQlFBQUFyd0NpZ0FBQUl3Q3ZBS0tBQUFCM1FBeUFQb0FBQUFBQUFBQUFBQUFBQUNnQUFEL1VBQWc2d0FBQUFnQUFBQUFUMDFPU1FEQUFBMysvd051L3k0QUFBUk1BWm9nQUFHVEFBQUFBQUlPQXE0QUFBQWdBQU1BQUFBQ0FBQUFBd0FBQUJRQUF3QUJBQUFBRkFBRUI0b0FBQURNQUlBQUJnQk1BQTBBTHdBNUFINEJmd0dQQVpJQm5RR2hBYkFCM0FIbkFlc0NHd0l0QWpNQ053SlpBbklDdWdLOEFzY0N5UUxkQXdRRERBTVBBeE1ER3dNa0F5Z0RMZ014QXpnRGxBT3BBN3dEd0I0bEhtTWViUjZGSHA0ZStTQUpJQkVnRlNBYUlCNGdJaUFtSURBZ015QTZJRDRnUkNCU0lIQWdlU0IvSUlrZ21TQ2hJS1FncHlDcElLMGdzaUMxSUxvZ3ZTRUZJUk1oRnlFaUlTWWhMaUdWSWFnaUFpSUdJZzhpRWlJVklob2lIeUlwSWlzaVNDSmhJbVVqQWlNUUl5RWx5aWZwNFAvdi9mQUErd0wrLy8vL0FBQUFEUUFnQURBQU9nQ2dBWThCa2dHZEFhQUJyd0hFQWVZQjZnSDZBaW9DTUFJM0Fsa0NjZ0s1QXJ3Q3hnTEpBdGdEQUFNR0F3OERFUU1iQXlNREpnTXVBekVETlFPVUE2a0R2QVBBSGlRZVloNXNIb0Flbmg2Z0lBa2dFQ0FUSUJjZ0hDQWdJQ1lnTUNBeUlEa2dQaUJFSUZJZ2NDQjBJSDhnZ0NDWklLRWdveUNtSUtrZ3F5Q3hJTFVndVNDOElRVWhFeUVXSVNJaEppRXVJWkFocUNJQ0lnVWlEeUlSSWhVaUdTSWVJaWtpS3lKSUltQWlaQ01DSXhBaklDWEtKK2pnLysvOThBRDdBZjcvLy84Q1lRQUFBYUlBQUFBQS94RUE1ZjdQQUFBQUFBQUFBQUFBQUFBQUFBQUFBUDhFL3NUKzNBQUFBQW9BTFAvL0FBQUFBQUFBLzg3L3pmL0cvNy8vdnYrNS83Zi90UDQ1L2lYK0UvNFFBQUFBQUFBQUFBRGlBUUFBNG1UaVJPSStBQUFBQUFBQTRoUGllZUtLNGl6aUJPSHQ0alhodCtHMzRVM2hpZUU0NGRFQUFPSFk0ZHNBQUFBQTRic0FBQUFBNGJYaHJnQUE0WmZoZXVHV0FBRGhDT0NqQUFEZ2t3QUE0SE1BQUFBQTRIWGdkT0JRQUFBQUFOL0QzM3dBQU56bjJvRWlMaE14RXk4R3h3TndBQUVBQUFES0FBQUE1Z0Z1QUFBQUFBQUFBeVlES0FNcUExb0RYQU5lQTZBRHBnQUFBQUFBQUFPbUFBQUFBQUFBQTZJRHJBTzBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE2Z0RxZ09zQTY0QUFBTzJBQUFBQUFBQUJHSUVhQVJzQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFVmdBQUFBQUVWQVJZQUFBRVdBUmFBQUFBQUFSWUFBQUFBQUFBQkZRQUFBQUFCRm9BQUFSYUFBQUVXZ1JjQUFBQUFBQUFCRmdFV2dBQUFBQUVXQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNhd0k2QW1jQ1FRSjBBcWdDc3dKb0Fra0NTZ0pBQW8wQ05nSlBBalVDUXdJM0FqZ0NsQUtSQXBNQ1BBS3lBQUVBSFFBZUFDUUFLZ0ErQUQ4QVJRQkpBRmtBV3dCZEFHVUFaZ0J2QUk4QWtRQ1NBSmdBb1FDbkFNRUF3Z0RIQU1nQTBRSk5Ba1FDVGdLYkFsWUM3d0RoQVAwQS9nRUVBUWtCSGdFZkFTVUJLUUU2QVQwQlFBRkhBVWdCVVFGeEFYTUJkQUY2QVlNQmlRR2pBYVFCcVFHcUFiTUNTd0srQWt3Q21RSnNBanNDY1FLREFuTUNoUUsvQXJVQzdRSzJBY29DWXdLYUFsQUN0d0wzQXJzQ2x3SXBBaW9DOEFLbUFyUUNQZ0w0QWlnQnl3SmtBak1DTWdJMEFqMEFFd0FDQUFvQUdnQVJBQmdBR3dBaEFEZ0FLd0F1QURVQVV3QkxBRTRBVUFBbUFHNEFmZ0J3QUhNQWpBQjZBbzhBaWdDekFLZ0Fxd0N0QU1rQWtBR0JBUE1BNGdEcUFQb0E4UUQ0QVBzQkFRRVhBUW9CRFFFVUFUTUJLd0V1QVRBQkJRRlFBV0FCVWdGVkFXNEJYQUtRQVd3QmxRR0tBWTBCandHckFYSUJyUUFXQVBZQUF3RGpBQmNBOXdBZkFQOEFJZ0VDQUNNQkF3QWdBUUFBSndFR0FDZ0JCd0E3QVJvQUxBRUxBRFlCRlFBOEFSc0FMUUVNQUVJQklnQkFBU0FBUkFFa0FFTUJJd0JIQVNjQVJnRW1BRmdCT1FCV0FUY0FUQUVzQUZjQk9BQlJBU29BU2dFMkFGb0JQQUJjQVQ0QlB3QmZBVUVBWVFGREFHQUJRZ0JpQVVRQVpBRkdBR2dCU1FCcUFVd0FhUUZMQVVvQWF3Rk5BSWdCYWdCeEFWTUFoZ0ZvQUk0QmNBQ1RBWFVBbFFGM0FKUUJkZ0NaQVhzQW5BRitBSnNCZlFDYUFYd0FwQUdHQUtNQmhRQ2lBWVFBd0FHaUFMMEJud0NwQVlzQXZ3R2hBTHNCblFDK0FhQUF4QUdtQU1vQnJBRExBTklCdEFEVUFiWUEwd0cxQVlJQWdBRmlBTFVCbHdBbEFDa0JDQUJlQUdNQlJRQm5BRzBCVHdBSkFPa0FUUUV0QUhJQlZBQ3FBWXdBc1FHVEFLNEJrQUN2QVpFQXNBR1NBRUVCSVFDSkFXc0FHUUQ1QUJ3QS9BQ0xBVzBBRUFEd0FCVUE5UUEwQVJNQU9nRVpBRThCTHdCVkFUVUFlUUZiQUljQmFRQ1dBWGdBbHdGNUFLd0JqZ0M4QVo0QW5RRi9BS1VCaHdCN0FWMEFqUUZ2QUh3QlhnRFBBYkVDeVFMSEF2UUM3Z0wxQXZrQzlnTHhBdEVDMGdMVUF0a0Myd0xXQXM4Q3lnTGNBdGNDMHdMVkFFZ0JLQUNlQVlBQXBnR0lBTVlCcUFEREFhVUF4UUduQUJJQThnQVVBUFFBQ3dEckFBMEE3UUFPQU80QUR3RHZBQXdBN0FBRUFPUUFCZ0RtQUFjQTV3QUlBT2dBQlFEbEFEY0JGZ0E1QVJnQVBRRWNBQzhCRGdBeEFSQUFNZ0VSQURNQkVnQXdBUThBVkFFMEFGSUJNZ0I5QVY4QWZ3RmhBSFFCVmdCMkFWZ0Fkd0ZaQUhnQldnQjFBVmNBZ1FGakFJTUJaUUNFQVdZQWhRRm5BSUlCWkFDeUFaUUF0QUdXQUxZQm1BQzRBWm9BdVFHYkFMb0JuQUMzQVprQXpRR3ZBTXdCcmdET0FiQUEwQUd5QWxjQ1lRSmlBbDBDWHdKZ0FsNEN3QUxDQWo4Q2VBSjdBblVDZGdKNkFvQUNlUUtDQW53Q2ZRS0JBc01DdUFLdEFxb0Nxd0tzQXE0Q3J3S2RBcUVDb3dLT0FvWUNwQUtjQXFjQ2tnS0pBcFlDbFFLTEFvb0FBTGdCLzRXd0JJMEFBQUFBR0FFbUFBTUFBUVFKQUFBQXFBQUFBQU1BQVFRSkFBRUFHZ0NvQUFNQUFRUUpBQUlBRGdEQ0FBTUFBUVFKQUFNQU1BRFFBQU1BQVFRSkFBUUFHZ0NvQUFNQUFRUUpBQVVBR2dFQUFBTUFBUVFKQUFZQUdnRWFBQU1BQVFRSkFBY0FUZ0UwQUFNQUFRUUpBQWdBR0FHQ0FBTUFBUVFKQUFrQUdBR2FBQU1BQVFRSkFBb0JqZ0d5QUFNQUFRUUpBQXNBTmdOQUFBTUFBUVFKQUF3QU5nTkFBQU1BQVFRSkFBMEJJQU4yQUFNQUFRUUpBQTRBTkFTV0FBTUFBUVFKQUJBQURnVEtBQU1BQVFRSkFCRUFDZ1RZQUFNQUFRUUpBQmtBR0FUaUFBTUFBUVFKQVFBQURBVDZBQU1BQVFRSkFRRUFDZ1VHQUFNQUFRUUpBUW9BQ2dUWUFBTUFBUVFKQVJjQURBVVFBQU1BQVFRSkFSb0FEQVVjQUFNQUFRUUpBUnNBQ2dVb0FFTUFid0J3QUhrQWNnQnBBR2NBYUFCMEFDQUFNZ0F3QURJQU1BQWdBRlFBYUFCbEFDQUFRUUJ5QUdNQWFBQnBBSFlBYndBZ0FGQUFjZ0J2QUdvQVpRQmpBSFFBSUFCQkFIVUFkQUJvQUc4QWNnQnpBQ0FBS0FCb0FIUUFkQUJ3QUhNQU9nQXZBQzhBWndCcEFIUUFhQUIxQUdJQUxnQmpBRzhBYlFBdkFFOEFiUUJ1QUdrQVlnQjFBSE1BTFFCVUFIa0FjQUJsQUM4QVFRQnlBR01BYUFCcEFIWUFid0FwQUVFQWNnQmpBR2dBYVFCMkFHOEFJQUJDQUd3QVlRQmpBR3NBVWdCbEFHY0FkUUJzQUdFQWNnQXlBQzRBTUFBd0FERUFPd0JQQUUwQVRnQkpBRHNBUVFCeUFHTUFhQUJwQUhZQWJ3QXRBRUlBYkFCaEFHTUFhd0JXQUdVQWNnQnpBR2tBYndCdUFDQUFNZ0F1QURBQU1BQXhBRUVBY2dCakFHZ0FhUUIyQUc4QUxRQkNBR3dBWVFCakFHc0FRUUJ5QUdNQWFBQnBBSFlBYndBZ0FHa0Fjd0FnQUdFQUlBQjBBSElBWVFCa0FHVUFiUUJoQUhJQWF3QWdBRzhBWmdBZ0FFOEFiUUJ1QUdrQVlnQjFBSE1BTFFCVUFIa0FjQUJsQUM0QVR3QnRBRzRBYVFCaUFIVUFjd0F0QUZRQWVRQndBR1VBU0FCbEFHTUFkQUJ2QUhJQUlBQkhBR0VBZEFCMEFHa0FRUUJ5QUdNQWFBQnBBSFlBYndBZ0FHa0Fjd0FnQUdFQUlBQm5BSElBYndCMEFHVUFjd0J4QUhVQVpRQWdBSE1BWVFCdUFITUFJQUJ6QUdVQWNnQnBBR1lBSUFCMEFIa0FjQUJsQUdZQVlRQmpBR1VBSUFCbUFHRUFiUUJwQUd3QWVRQWdBR1lBY2dCdkFHMEFJQUJQQUcwQWJnQnBBR0lBZFFCekFDMEFWQUI1QUhBQVpRQXVBQ0FBU1FCMEFDQUFkd0JoQUhNQUlBQnZBSElBYVFCbkFHa0FiZ0JoQUd3QWJBQjVBQ0FBWkFCbEFITUFhUUJuQUc0QVpRQmtBQ0FBWmdCdkFISUFJQUJvQUdrQVp3Qm9BR3dBYVFCbkFHZ0FkQUJ6QUNBQVlRQnVBR1FBSUFCb0FHVUFZUUJrQUd3QWFRQnVBR1VBY3dBdUFDQUFWQUJvQUdrQWN3QWdBR1lBWVFCdEFHa0FiQUI1QUNBQWFRQnpBQ0FBY2dCbEFHMEFhUUJ1QUdrQWN3QmpBR1VBYmdCMEFDQUFid0JtQUNBQWJBQmhBSFFBWlFBZ0FHNEFhUUJ1QUdVQWRBQmxBR1VBYmdCMEFHZ0FJQUJqQUdVQWJnQjBBSFVBY2dCNUFDQUFRUUJ0QUdVQWNnQnBBR01BWVFCdUFDQUFkQUI1QUhBQVpRQm1BR0VBWXdCbEFITUFMZ0JvQUhRQWRBQndBRG9BTHdBdkFIY0Fkd0IzQUM0QWJ3QnRBRzRBYVFCaUFIVUFjd0F0QUhRQWVRQndBR1VBTGdCakFHOEFiUUJVQUdnQWFRQnpBQ0FBUmdCdkFHNEFkQUFnQUZNQWJ3Qm1BSFFBZHdCaEFISUFaUUFnQUdrQWN3QWdBR3dBYVFCakFHVUFiZ0J6QUdVQVpBQWdBSFVBYmdCa0FHVUFjZ0FnQUhRQWFBQmxBQ0FBVXdCSkFFd0FJQUJQQUhBQVpRQnVBQ0FBUmdCdkFHNEFkQUFnQUV3QWFRQmpBR1VBYmdCekFHVUFMQUFnQUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1RQXVBQ0FBVkFCb0FHa0Fjd0FnQUd3QWFRQmpBR1VBYmdCekFHVUFJQUJwQUhNQUlBQmhBSFlBWVFCcEFHd0FZUUJpQUd3QVpRQWdBSGNBYVFCMEFHZ0FJQUJoQUNBQVJnQkJBRkVBSUFCaEFIUUFPZ0FnQUdnQWRBQjBBSEFBT2dBdkFDOEFjd0JqQUhJQWFRQndBSFFBY3dBdUFITUFhUUJzQUM0QWJ3QnlBR2NBTHdCUEFFWUFUQUJvQUhRQWRBQndBRG9BTHdBdkFITUFZd0J5QUdrQWNBQjBBSE1BTGdCekFHa0FiQUF1QUc4QWNnQm5BQzhBVHdCR0FFd0FRUUJ5QUdNQWFBQnBBSFlBYndCQ0FHd0FZUUJqQUdzQVFRQnlBR01BYUFCcEFIWUFid0JTQUc4QWJRQmhBRzRBVndCbEFHa0Fad0JvQUhRQVZ3QnBBR1FBZEFCb0FFNEFid0J5QUcwQVlRQnNBRWtBZEFCaEFHd0FhUUJqQUZJQWJ3QnRBR0VBYmdBQ0FBQUFBQUFBLzJ3QUxBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBemNBQUFBa0FNa0JBZ0VEQVFRQkJRRUdBUWNCQ0FESEFRa0JDZ0VMQVF3QkRRRU9BR0lCRHdDdEFSQUJFUUVTQVJNQVl3RVVBSzRBa0FFVkFDVUFKZ0Q5QVA4QVpBRVdBUmNBSndFWUFPa0JHUUVhQVJzQUtBQmxBUndCSFFESUFSNEJId0VnQVNFQklnRWpBTW9CSkFFbEFNc0JKZ0VuQVNnQktRRXFBQ2tBS2dENEFTc0JMQUV0QVM0QUt3RXZBVEFCTVFBc0FUSUF6QUV6QVRRQXpRRTFBTTRBK2dFMkFNOEJOd0U0QVRrQk9nRTdBQzBCUEFBdUFUMEFMd0UrQVQ4QlFBRkJBVUlCUXdEaUFEQUFNUUZFQVVVQlJnRkhBVWdCU1FGS0FHWUFNZ0RRQVVzQlRBRFJBVTBCVGdGUEFWQUJVUUZTQUdjQlV3RlVBVlVBMHdGV0FWY0JXQUZaQVZvQld3RmNBVjBCWGdGZkFXQUFrUUZoQUs4QllnQ3dBRE1BN1FBMEFEVUJZd0ZrQVdVQlpnRm5BRFlCYUFEa0FQc0JhUUZxQVdzQmJBRnRBRGNCYmdGdkFYQUJjUUZ5QURnQTFBRnpBWFFBMVFGMUFHZ0JkZ0YzQVhnQmVRRjZBTllCZXdGOEFYMEJmZ0YvQVlBQmdRR0NBWU1CaEFHRkFZWUJod0E1QURvQmlBR0pBWW9CaXdBN0FEd0E2d0dNQUxzQmpRR09BWThCa0FHUkFEMEJrZ0RtQVpNQmxBR1ZBWllCbHdHWUFaa0JtZ0diQVp3Qm5RR2VBWjhBUkFCcEFhQUJvUUdpQWFNQnBBR2xBYVlBYXdHbkFhZ0JxUUdxQWFzQnJBQnNBYTBBYWdHdUFhOEJzQUd4QUc0QnNnQnRBS0FCc3dCRkFFWUEvZ0VBQUc4QnRBRzFBRWNBNmdHMkFRRUJ0d0JJQUhBQnVBRzVBSElCdWdHN0Fid0J2UUcrQWI4QWN3SEFBY0VBY1FIQ0FjTUJ4QUhGQWNZQnh3QkpBRW9BK1FISUFja0J5Z0hMQUVzQnpBSE5BYzRBVEFEWEFIUUJ6d0hRQUhZQjBRQjNBZElCMHdCMUFkUUIxUUhXQWRjQjJBSFpBRTBCMmdIYkFFNEIzQUhkQUU4QjNnSGZBZUFCNFFIaUFPTUFVQUJSQWVNQjVBSGxBZVlCNXdIb0Fla0FlQUJTQUhrQjZnSHJBSHNCN0FIdEFlNEI3d0h3QWZFQWZBSHlBZk1COUFCNkFmVUI5Z0gzQWZnQitRSDZBZnNCL0FIOUFmNEIvd0NoQWdBQWZRSUJBTEVBVXdEdUFGUUFWUUlDQWdNQ0JBSUZBZ1lBVmdJSEFPVUEvQUlJQWdrQ0NnQ0pBZ3NBVndJTUFnMENEZ0lQQWhBQVdBQitBaEVDRWdDQUFoTUFnUUlVQWhVQ0ZnSVhBaGdBZndJWkFob0NHd0ljQWgwQ0hnSWZBaUFDSVFJaUFpTUNKQUlsQUZrQVdnSW1BaWNDS0FJcEFGc0FYQURzQWlvQXVnSXJBaXdDTFFJdUFpOEFYUUl3QU9jQ01RSXlBak1DTkFJMUFqWUNOd0k0QWprQ09nSTdBandDUFFJK0FqOENRQUpCQWtJQXdBREJBSjBBbmdKREFrUUNSUUpHQUpzQ1J3QVRBQlFBRlFBV0FCY0FHQUFaQUJvQUd3QWNBa2dDU1FKS0Frc0NUQUpOQWs0Q1R3SlFBbEVDVWdKVEFsUUNWUUpXQWxjQ1dBSlpBbG9DV3dKY0FsMENYZ0pmQW1BQ1lRSmlBbU1DWkFKbEFtWUNad0pvQW1rQ2FnSnJBbXdDYlFKdUFtOENjQUp4QW5JQ2N3SjBBblVDZGdKM0FuZ0NlUUo2QW5zQ2ZBSjlBbjRDZndLQUFvRUNnZ0tEQW9RQ2hRS0dBb2NDaUFLSkFvb0Npd0tNQW8wQ2pnS1BBcEFDa1FLU0FwTUNsQUtWQXBZQ2x3S1lBcGtDbWdLYkFwd0F2QUQwQVBVQTlnQVJBQThBSFFBZUFLc0FCQUNqQUNJQW9nRERBSWNBRFFBR0FwMEFFZ0EvQXA0Q253S2dBcUVBQ3dBTUFGNEFZQUErQUVBQUVBS2lBTElBc3dLakFxUUNwUUJDQXFZQ3B3S29BcWtDcWdLckFNUUF4UUMwQUxVQXRnQzNBS2tBcWdDK0FMOEFCUUFLQXF3Q3JRQURBcTRDcndLd0FyRUNzZ0NFQXJNQXZRQUhBclFDdFFDbUFQY0N0Z0szQXJnQ3VRSzZBcnNDdkFLOUFyNEN2d0NGQXNBQWxnTEJBc0lDd3dMRUFzVUN4Z0xIQUE0QTd3RHdBTGdBSUFDUEFDRUFId0NWQUpRQWt3Q25BR0VBcEFCQkFKSUN5QUxKQUp3Q3lnTExBSm9BbVFDbEFKZ0N6QUxOQUFnQXhnTE9BczhDMEFMUkF0SUMwd0xVQUxrQUl3QUpBSWdBaGdDTEFJb0MxUUNNQXRZQWd3TFhBdGdBWHdEb0FJSUMyUURDQXRvQzJ3TGNBdDBDM2dMZkF1QUM0UUxpQXVNQzVBTGxBdVlDNXdMb0F1a0M2Z0xyQXV3QzdRTHVBdThDOEFMeEF2SUM4d0wwQXZVQzlnTDNBdmdDK1FMNkF2c0MvQUw5QXY0Qy93TUFBd0VEQWdNREFJNEEzQUJEQUkwQTN3RFlBT0VBMndEZEFOa0EyZ0RlQU9BREJBTUZBd1lEQndNSUF3a0RDZ01MQXd3RERRTU9BdzhERUFNUkF4SURFd01VQXhVREZnTVhBeGdER1FNYUF4c0RIQU1kQXg0REh3TWdBeUVESWdNakF5UURKUU1tQXljREtBTXBBeW9ES3dNc0F5MERMZ012QXpBRE1RTXlBek1ETkFNMUF6WUROd000QXprRE9nTTdBendEUFFNK0F6OERRQVpCWW5KbGRtVUhkVzVwTVVWQlJRZDFibWt4UlVJMkIzVnVhVEZGUWpBSGRXNXBNVVZDTWdkMWJta3hSVUkwQjNWdWFUQXhRMFFIZFc1cE1VVkJOQWQxYm1reFJVRkRCM1Z1YVRGRlFUWUhkVzVwTVVWQk9BZDFibWt4UlVGQkIzVnVhVEF5TURBSGRXNXBNVVZCTUFkMWJta3hSVUV5QjNWdWFUQXlNRElIUVcxaFkzSnZiZ2RCYjJkdmJtVnJDa0Z5YVc1bllXTjFkR1VIUVVWaFkzVjBaUXREWTJseVkzVnRabXhsZUFwRFpHOTBZV05qWlc1MEIzVnVhVEF4UXpRR1JHTmhjbTl1QmtSamNtOWhkQWQxYm1rd01VTTFCa1ZpY21WMlpRWkZZMkZ5YjI0SGRXNXBNVVZDUlFkMWJta3hSVU0yQjNWdWFURkZRekFIZFc1cE1VVkRNZ2QxYm1reFJVTTBCM1Z1YVRBeU1EUUtSV1J2ZEdGalkyVnVkQWQxYm1reFJVSTRCM1Z1YVRGRlFrRUhkVzVwTURJd05nZEZiV0ZqY205dUIwVnZaMjl1WldzSGRXNXBNVVZDUXdaSFkyRnliMjRMUjJOcGNtTjFiV1pzWlhnSGRXNXBNREV5TWdwSFpHOTBZV05qWlc1MEJFaGlZWElMU0dOcGNtTjFiV1pzWlhnSGRXNXBNVVV5TkFKSlNnWkpZbkpsZG1VSGRXNXBNREZEUmdkMWJta3dNakE0QjNWdWFURkZRMEVIZFc1cE1VVkRPQWQxYm1rd01qQkJCMGx0WVdOeWIyNEhTVzluYjI1bGF3WkpkR2xzWkdVTFNtTnBjbU4xYldac1pYZ0hkVzVwTURFek5nZDFibWt3TVVNM0JreGhZM1YwWlFaTVkyRnliMjRIZFc1cE1ERXpRZ1JNWkc5MEIzVnVhVEF4UXpnSGRXNXBNREZEUVFaT1lXTjFkR1VHVG1OaGNtOXVCM1Z1YVRBeE5EVURSVzVuQjNWdWFUQXhPVVFIZFc1cE1ERkRRZ1pQWW5KbGRtVUhkVzVwTURGRU1RZDFibWt4UlVRd0IzVnVhVEZGUkRnSGRXNXBNVVZFTWdkMWJta3hSVVEwQjNWdWFURkZSRFlIZFc1cE1ESXdRd2QxYm1rd01qSkJCM1Z1YVRBeU16QUhkVzVwTVVWRFF3ZDFibWt4UlVORkJVOW9iM0p1QjNWdWFURkZSRUVIZFc1cE1VVkZNZ2QxYm1reFJVUkRCM1Z1YVRGRlJFVUhkVzVwTVVWRk1BMVBhSFZ1WjJGeWRXMXNZWFYwQjNWdWFUQXlNRVVIVDIxaFkzSnZiZ2QxYm1rd01VVkJDMDl6YkdGemFHRmpkWFJsQjNWdWFUQXlNa01HVW1GamRYUmxCbEpqWVhKdmJnZDFibWt3TVRVMkIzVnVhVEF5TVRBSGRXNXBNREl4TWdaVFlXTjFkR1VMVTJOcGNtTjFiV1pzWlhnSGRXNXBNREl4T0FkMWJta3hSVFl5QjNWdWFURkZPVVVIZFc1cE1ERTRSZ1JVWW1GeUJsUmpZWEp2YmdkMWJta3dNVFl5QjNWdWFUQXlNVUVIZFc1cE1VVTJRd1pWWW5KbGRtVUhkVzVwTURGRU13ZDFibWt3TWpFMEIzVnVhVEF4UkRjSGRXNXBNREZFT1FkMWJta3dNVVJDQjNWdWFUQXhSRFVIZFc1cE1VVkZOQWQxYm1reFJVVTJCVlZvYjNKdUIzVnVhVEZGUlRnSGRXNXBNVVZHTUFkMWJta3hSVVZCQjNWdWFURkZSVU1IZFc1cE1VVkZSUTFWYUhWdVoyRnlkVzFzWVhWMEIzVnVhVEF5TVRZSFZXMWhZM0p2YmdkVmIyZHZibVZyQlZWeWFXNW5CbFYwYVd4a1pRWlhZV04xZEdVTFYyTnBjbU4xYldac1pYZ0pWMlJwWlhKbGMybHpCbGRuY21GMlpRdFpZMmx5WTNWdFpteGxlQWQxYm1reFJVWTBCbGxuY21GMlpRZDFibWt4UlVZMkIzVnVhVEF5TXpJSGRXNXBNVVZHT0FaYVlXTjFkR1VLV21SdmRHRmpZMlZ1ZEFsWkxteHZZMnhIVlVFT1dXRmpkWFJsTG14dlkyeEhWVUVUV1dOcGNtTjFiV1pzWlhndWJHOWpiRWRWUVJGWlpHbGxjbVZ6YVhNdWJHOWpiRWRWUVE1WlozSmhkbVV1Ykc5amJFZFZRUTkxYm1rd01qTXlMbXh2WTJ4SFZVRVBkVzVwTVVWR09DNXNiMk5zUjFWQkRrTmhZM1YwWlM1c2IyTnNVRXhMRGs1aFkzVjBaUzVzYjJOc1VFeExEazloWTNWMFpTNXNiMk5zVUV4TERsTmhZM1YwWlM1c2IyTnNVRXhMRGxwaFkzVjBaUzVzYjJOc1VFeExCbUZpY21WMlpRZDFibWt4UlVGR0IzVnVhVEZGUWpjSGRXNXBNVVZDTVFkMWJta3hSVUl6QjNWdWFURkZRalVIZFc1cE1ERkRSUWQxYm1reFJVRTFCM1Z1YVRGRlFVUUhkVzVwTVVWQk53ZDFibWt4UlVFNUIzVnVhVEZGUVVJSGRXNXBNREl3TVFkMWJta3hSVUV4QjNWdWFURkZRVE1IZFc1cE1ESXdNd2RoYldGamNtOXVCMkZ2WjI5dVpXc0tZWEpwYm1kaFkzVjBaUWRoWldGamRYUmxDMk5qYVhKamRXMW1iR1Y0Q21Oa2IzUmhZMk5sYm5RR1pHTmhjbTl1QjNWdWFUQXhRellHWldKeVpYWmxCbVZqWVhKdmJnZDFibWt4UlVKR0IzVnVhVEZGUXpjSGRXNXBNVVZETVFkMWJta3hSVU16QjNWdWFURkZRelVIZFc1cE1ESXdOUXBsWkc5MFlXTmpaVzUwQjNWdWFURkZRamtIZFc1cE1VVkNRZ2QxYm1rd01qQTNCMlZ0WVdOeWIyNEhaVzluYjI1bGF3ZDFibWt4UlVKRUIzVnVhVEF5TlRrR1oyTmhjbTl1QzJkamFYSmpkVzFtYkdWNEIzVnVhVEF4TWpNS1oyUnZkR0ZqWTJWdWRBUm9ZbUZ5QzJoamFYSmpkVzFtYkdWNEIzVnVhVEZGTWpVR2FXSnlaWFpsQjNWdWFUQXhSREFIZFc1cE1ESXdPUWxwTG14dlkyeFVVa3NIZFc1cE1VVkRRZ2QxYm1reFJVTTVCM1Z1YVRBeU1FSUNhV29IYVcxaFkzSnZiZ2RwYjJkdmJtVnJCbWwwYVd4a1pRZDFibWt3TWpNM0MycGphWEpqZFcxbWJHVjRCM1Z1YVRBeE16Y01hMmR5WldWdWJHRnVaR2xqQm14aFkzVjBaUVpzWTJGeWIyNEhkVzVwTURFelF3UnNaRzkwQjNWdWFUQXhRemtHYm1GamRYUmxDMjVoY0c5emRISnZjR2hsQm01allYSnZiZ2QxYm1rd01UUTJBMlZ1WndkMWJta3dNamN5QjNWdWFUQXhRME1HYjJKeVpYWmxCM1Z1YVRBeFJESUhkVzVwTVVWRU1RZDFibWt4UlVRNUIzVnVhVEZGUkRNSGRXNXBNVVZFTlFkMWJta3hSVVEzQjNWdWFUQXlNRVFIZFc1cE1ESXlRZ2QxYm1rd01qTXhCM1Z1YVRGRlEwUUhkVzVwTVVWRFJnVnZhRzl5YmdkMWJta3hSVVJDQjNWdWFURkZSVE1IZFc1cE1VVkVSQWQxYm1reFJVUkdCM1Z1YVRGRlJURU5iMmgxYm1kaGNuVnRiR0YxZEFkMWJta3dNakJHQjI5dFlXTnliMjRIZFc1cE1ERkZRZ3R2YzJ4aGMyaGhZM1YwWlFkMWJta3dNakpFQm5KaFkzVjBaUVp5WTJGeWIyNEhkVzVwTURFMU53ZDFibWt3TWpFeEIzVnVhVEF5TVRNR2MyRmpkWFJsQzNOamFYSmpkVzFtYkdWNEIzVnVhVEF5TVRrSGRXNXBNVVUyTXdWc2IyNW5jd1IwWW1GeUJuUmpZWEp2YmdkMWJta3dNVFl6QjNWdWFUQXlNVUlIZFc1cE1VVTJSQVoxWW5KbGRtVUhkVzVwTURGRU5BZDFibWt3TWpFMUIzVnVhVEF4UkRnSGRXNXBNREZFUVFkMWJta3dNVVJEQjNWdWFUQXhSRFlIZFc1cE1VVkZOUWQxYm1reFJVVTNCWFZvYjNKdUIzVnVhVEZGUlRrSGRXNXBNVVZHTVFkMWJta3hSVVZDQjNWdWFURkZSVVFIZFc1cE1VVkZSZzExYUhWdVoyRnlkVzFzWVhWMEIzVnVhVEF5TVRjSGRXMWhZM0p2YmdkMWIyZHZibVZyQlhWeWFXNW5CblYwYVd4a1pRWjNZV04xZEdVTGQyTnBjbU4xYldac1pYZ0pkMlJwWlhKbGMybHpCbmRuY21GMlpRdDVZMmx5WTNWdFpteGxlQWQxYm1reFJVWTFCbmxuY21GMlpRZDFibWt4UlVZM0IzVnVhVEF5TXpNSGRXNXBNVVZHT1FaNllXTjFkR1VLZW1SdmRHRmpZMlZ1ZEFsNUxteHZZMnhIVlVFT2VXRmpkWFJsTG14dlkyeEhWVUVUZVdOcGNtTjFiV1pzWlhndWJHOWpiRWRWUVJGNVpHbGxjbVZ6YVhNdWJHOWpiRWRWUVE5MWJta3hSVVkxTG14dlkyeEhWVUVPZVdkeVlYWmxMbXh2WTJ4SFZVRVBkVzVwTVVWR055NXNiMk5zUjFWQkQzVnVhVEF5TXpNdWJHOWpiRWRWUVE5MWJta3hSVVk1TG14dlkyeEhWVUVPWTJGamRYUmxMbXh2WTJ4UVRFc09ibUZqZFhSbExteHZZMnhRVEVzT2IyRmpkWFJsTG14dlkyeFFURXNPYzJGamRYUmxMbXh2WTJ4UVRFc09lbUZqZFhSbExteHZZMnhRVEVzRFpsOW1CV1pmWmw5cEJXWmZabDlzQjNWdWFUSXdOMFlIZFc1cE1ETTVOQWQxYm1rd00wRTVCM1Z1YVRBelFrTUhkVzVwTWpBNU9RbDZaWEp2TG5wbGNtOEhlbVZ5Ynk1c1pnWnZibVV1YkdZR2RIZHZMbXhtQ0hSb2NtVmxMbXhtQjJadmRYSXViR1lIWm1sMlpTNXNaZ1p6YVhndWJHWUljMlYyWlc0dWJHWUlaV2xuYUhRdWJHWUhibWx1WlM1c1pneDZaWEp2TG14bUxucGxjbThJZW1WeWJ5NXZjMllIYjI1bExtOXpaZ2QwZDI4dWIzTm1DWFJvY21WbExtOXpaZ2htYjNWeUxtOXpaZ2htYVhabExtOXpaZ2R6YVhndWIzTm1DWE5sZG1WdUxtOXpaZ2xsYVdkb2RDNXZjMllJYm1sdVpTNXZjMllOZW1WeWJ5NXZjMll1ZW1WeWJ3ZDZaWEp2TG5SbUJtOXVaUzUwWmdaMGQyOHVkR1lJZEdoeVpXVXVkR1lIWm05MWNpNTBaZ2RtYVhabExuUm1Cbk5wZUM1MFpnaHpaWFpsYmk1MFpnaGxhV2RvZEM1MFpnZHVhVzVsTG5SbURIcGxjbTh1ZEdZdWVtVnlid2w2WlhKdkxuUnZjMllJYjI1bExuUnZjMllJZEhkdkxuUnZjMllLZEdoeVpXVXVkRzl6WmdsbWIzVnlMblJ2YzJZSlptbDJaUzUwYjNObUNITnBlQzUwYjNObUNuTmxkbVZ1TG5SdmMyWUtaV2xuYUhRdWRHOXpaZ2x1YVc1bExuUnZjMllPZW1WeWJ5NTBiM05tTG5wbGNtOEhkVzVwTWpBNE1BZDFibWt5TURneEIzVnVhVEl3T0RJSGRXNXBNakE0TXdkMWJta3lNRGcwQjNWdWFUSXdPRFVIZFc1cE1qQTROZ2QxYm1reU1EZzNCM1Z1YVRJd09EZ0hkVzVwTWpBNE9RbDZaWEp2TG1SdWIyMEliMjVsTG1SdWIyMElkSGR2TG1SdWIyMEtkR2h5WldVdVpHNXZiUWxtYjNWeUxtUnViMjBKWm1sMlpTNWtibTl0Q0hOcGVDNWtibTl0Q25ObGRtVnVMbVJ1YjIwS1pXbG5hSFF1Wkc1dmJRbHVhVzVsTG1SdWIyMEplbVZ5Ynk1dWRXMXlDRzl1WlM1dWRXMXlDSFIzYnk1dWRXMXlDblJvY21WbExtNTFiWElKWm05MWNpNXVkVzF5Q1dacGRtVXViblZ0Y2doemFYZ3ViblZ0Y2dwelpYWmxiaTV1ZFcxeUNtVnBaMmgwTG01MWJYSUpibWx1WlM1dWRXMXlCM1Z1YVRJd056QUhkVzVwTURCQ09RZDFibWt3TUVJeUIzVnVhVEF3UWpNSGRXNXBNakEzTkFkMWJta3lNRGMxQjNWdWFUSXdOellIZFc1cE1qQTNOd2QxYm1reU1EYzRCM1Z1YVRJd056a0hkVzVwTWpBelJROWxlR05zWVcxa2IzZHVMbU5oYzJVUmNYVmxjM1JwYjI1a2IzZHVMbU5oYzJVYmNHVnlhVzlrWTJWdWRHVnlaV1F1Ykc5amJFTkJWQzVqWVhObEZuQmxjbWx2WkdObGJuUmxjbVZrTG14dlkyeERRVlFIZFc1cE1EQkJSQWQxYm1reU1ERTFCM1Z1YVRJd01UQUhkVzVwTWpBeE1RMTFibVJsY25OamIzSmxaR0pzQzJoNWNHaGxiaTVqWVhObERIVnVhVEF3UVVRdVkyRnpaUXRsYm1SaGMyZ3VZMkZ6WlF0bGJXUmhjMmd1WTJGelpReDFibWt5TURFeExtTmhjMlVIZFc1cE1qZEZPQWQxYm1reU4wVTVCM1Z1YVRBd1FUQUhkVzVwTWpBd09RSkRVZ2QxYm1sR1JVWkdCM1Z1YVRJd1FqVU5ZMjlzYjI1dGIyNWxkR0Z5ZVFSa2IyNW5CRVYxY204SGRXNXBNakJDTWdkMWJta3lNRUZFQkd4cGNtRUhkVzVwTWpCQ1FRZDFibWt5TUVKREIzVnVhVEl3UVRZR2NHVnpaWFJoQjNWdWFUSXdRakVIZFc1cE1qQkNSQWQxYm1reU1FSTVCM1Z1YVRJd1FUa0hkVzVwTWpJeE9RZDFibWt5TURVeUIzVnVhVEl5TVRVTFpYRjFhWFpoYkdWdVkyVUthVzUwWldkeVlXeGlkQXBwYm5SbFozSmhiSFJ3RFhKbGRteHZaMmxqWVd4dWIzUUlaVzF3ZEhselpYUU1hVzUwWlhKelpXTjBhVzl1QjNWdWFUSXhNallIZFc1cE1qSXdOZ2QxYm1rd01FSTFDbTl5ZEdodloyOXVZV3dIWVhKeWIzZDFjQXBoY25KdmQzSnBaMmgwQ1dGeWNtOTNaRzkzYmdsaGNuSnZkMnhsWm5RSllYSnliM2RpYjNSb0NXRnljbTkzZFhCa2JneGhjbkp2ZDNWd1pHNWljMlVIZFc1cE1qRXhOd2QxYm1reU1UQTFCbTFwYm5WMFpRWnpaV052Ym1RSGRXNXBNakV4TXdkMWJta3lNVEUyQ1dWemRHbHRZWFJsWkFWb2IzVnpaUWQxYm1rd01rSkRCM1Z1YVRBeVFrRUhkVzVwTURKRE9RZDFibWt3TWtJNUIzVnVhVEF6TURnTGRXNXBNRE13T0RBek1EQUxkVzVwTURNd09EQXpNREVMZFc1cE1ETXdPREF6TUVNTGRXNXBNRE13T0RBek1EUUhkVzVwTURNd053dDFibWt3TXpBM01ETXdOQWxuY21GMlpXTnZiV0lKWVdOMWRHVmpiMjFpQjNWdWFUQXpNRUlIZFc1cE1ETXdNZ2QxYm1rd016QkRCM1Z1YVRBek1EWUhkVzVwTURNd1FRdDFibWt3TXpCQk1ETXdNUWwwYVd4a1pXTnZiV0lMZFc1cE1ETXdNekF6TURRSGRXNXBNRE13TkExb2IyOXJZV0p2ZG1WamIyMWlCM1Z1YVRBek1FWUhkVzVwTURNeE1RZDFibWt3TXpFeUIzVnVhVEF6TVRNSGRXNXBNRE14UWd4a2IzUmlaV3h2ZDJOdmJXSUhkVzVwTURNeU5BZDFibWt3TXpJMkIzVnVhVEF6TWpjSGRXNXBNRE15T0FkMWJta3dNekpGQjNWdWFUQXpNekVIZFc1cE1ETXpOUWQxYm1rd016TTJCM1Z1YVRBek16Y0hkVzVwTURNek9BeDFibWt3TXpBNExtTmhjMlVRZFc1cE1ETXdPREF6TURBdVkyRnpaUkIxYm1rd016QTRNRE13TVM1allYTmxFSFZ1YVRBek1EZ3dNekJETG1OaGMyVVFkVzVwTURNd09EQXpNRFF1WTJGelpReDFibWt3TXpBM0xtTmhjMlVRZFc1cE1ETXdOekF6TURRdVkyRnpaUTVuY21GMlpXTnZiV0l1WTJGelpRNWhZM1YwWldOdmJXSXVZMkZ6WlF4MWJta3dNekJDTG1OaGMyVU1kVzVwTURNd01pNWpZWE5sREhWdWFUQXpNRU11WTJGelpReDFibWt3TXpBMkxtTmhjMlVNZFc1cE1ETXdRUzVqWVhObEVIVnVhVEF6TUVFd016QXhMbU5oYzJVT2RHbHNaR1ZqYjIxaUxtTmhjMlVRZFc1cE1ETXdNekF6TURRdVkyRnpaUXgxYm1rd016QTBMbU5oYzJVU2FHOXZhMkZpYjNabFkyOXRZaTVqWVhObERIVnVhVEF6TUVZdVkyRnpaUXgxYm1rd016RXhMbU5oYzJVTWRXNXBNRE14UWk1allYTmxESFZ1YVRBek16Y3VZMkZ6WlF4MWJta3dNek00TG1OaGMyVU5aR2xsY21WemFYTXVZMkZ6WlE1a2IzUmhZMk5sYm5RdVkyRnpaUXBuY21GMlpTNWpZWE5sQ21GamRYUmxMbU5oYzJVUmFIVnVaMkZ5ZFcxc1lYVjBMbU5oYzJVUFkybHlZM1Z0Wm14bGVDNWpZWE5sQ21OaGNtOXVMbU5oYzJVS1luSmxkbVV1WTJGelpRbHlhVzVuTG1OaGMyVUtkR2xzWkdVdVkyRnpaUXR0WVdOeWIyNHVZMkZ6WlJKaFkzVjBaUzVzYjJOc1VFeExMbU5oYzJVTllXTjFkR1V1Ykc5amJGQk1Td3QxYm1rd016QTJNRE13TVF0MWJta3dNekEyTURNd01BdDFibWt3TXpBMk1ETXdPUXQxYm1rd016QTJNRE13TXd0MWJta3dNekF5TURNd01RdDFibWt3TXpBeU1ETXdNQXQxYm1rd016QXlNRE13T1F0MWJta3dNekF5TURNd014QjFibWt3TXpBMk1ETXdNUzVqWVhObEVIVnVhVEF6TURZd016QXdMbU5oYzJVUWRXNXBNRE13TmpBek1ETXVZMkZ6WlJCMWJta3dNekF5TURNd01TNWpZWE5sRUhWdWFUQXpNREl3TXpBd0xtTmhjMlVRZFc1cE1ETXdNakF6TURNdVkyRnpaUWQxYm1sRk1FWkdCM1Z1YVVWR1JrUUhkVzVwUmpBd01CTjFibWt5TUVJMUxrSlNRVU5MUlZRdU1URXdFR05sYm5RdVFsSkJRMHRGVkM0eE1UQVpZMjlzYjI1dGIyNWxkR0Z5ZVM1Q1VrRkRTMFZVTGpFeE1CSmtiMnhzWVhJdVFsSkJRMHRGVkM0eE1UQVRkVzVwTWpCQ01pNUNVa0ZEUzBWVUxqRXhNQk4xYm1reU1FRTJMa0pTUVVOTFJWUXVNVEV3RTNWdWFUSXdRVGt1UWxKQlEwdEZWQzR4TVRBQUFRQUIvLzhBRHdBQkFBSUFEZ0FBQUFBQUFBQm1BQUlBRGdBQkFHb0FBUUJ0QVFRQUFRRUdBUndBQVFFZUFVd0FBUUZQQWNRQUFRSEdBY2tBQWdKd0FuSUFBUUowQW5RQUFRSjVBbmtBQVFMREFzTUFBUUxLQXV3QUF3TDZBeEVBQXdNZkF5d0FBd013QXpRQUFRQUJBQU1BQUFBUUFBQUFJQUFBQURZQUFRQUdBdUlDNHdMa0F1VUM1d0xvQUFJQUF3TEtBdUFBQUFMNkF3NEFGd01mQXl3QUxBQUJBQUlDNFFNUEFBRUFBQUFLQUJnQUxBQUNSRVpNVkFBdWJHRjBiZ0F1QUFOclpYSnVBQ1J0WVhKckFDcHRhMjFyQURBQUJRQW1BREFBT0FCQ0FFd0FTZ0FBQUFBQUFRQUFBQUFBQVFBQkFBQUFBd0FDQUFNQUJBQUNBQWdBQWdBOEFQb0FCQUFBQUFFUHhBQUdBQkFBQVEvSUFBQUFCZ0FRQUFFUHlnQUJBQVlBRUFBQkQ4d0FBZ0FBLy84QUF3QUFBQUVBQWdBQkQ4SUFCQUFBQUZvUWFCQm9FR2dRYUJCb0VHZ1FhQkJvRUdnUWFCQm9FR2dRYUJCb0VHZ1FhQkJvRUdnUWFCQm9FR2dRYUJCb0VHZ1FhQkJvRnpvWFFCZEFFSDRRZmhCK0VINFFmaEIrRjFJWFVoQ1lFSmdRbUJDWUVKZ1FtQkNlRUtnUXFCQ29FS2dRcUJDb0VLZ1FxQkNvRU1vWE9oYzZGem9RdWhDNkVMb1F1aEM2RUxvUXloREVFTVFReEJERUVNUVF4QkRLRU9vUTRCRHFFT29RNEJEcUVQQVNhaEowRXhZVGtCT2VGYndYT2hkQUYxSVhVaGRTRjFnQUFoZklBQVFBQUJpR0dxQUFMUUFxQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFQL2lBQUQvN0FBQUFBRC80Z0FBQUFELzlnQUFBQUFBQUFBQS8rd0FBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUEvK0lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBQUFBQUFBQUFELzJBQUFBQUFBQVAvcy8rd0FBQUFBLy9FQUFBQUEvK0lBQVArbUFBRC96Z0FBQUFEL3NBQUFBQUFBQUFBQS83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQK1NBQUFBQUFBQS8rTC85di9kQUFBQUFBQUFBQUQvOFFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL3NBQUFBQUFBQUFBRC8rd0FBQUFBQUFBQUFBQUFBQVAvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS83QUFBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUDlxQUFEL3hBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUtBQUFBQUFBQUFBQUFBQUFIZ0FvQUNnQUFBQUFBQlFBS0FBQUFDZ0FLQUFvLzg3LzRnQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQVAvc0FBRC84UUFBQUFELzdBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vRUFBQUFBQUFEL2t2L2kvNmIvcHYrU0FBRC91Z0FBLzhUL2FnQUEvOFQvN1Ardy81TC83UCttLzg0QUFQK3dBQUFBQUFBQS96ai9mdi9PLzhRQUFBQUFBQUQvNGdBQUFBQUFBQUFBQUFBQUFBQUEvK0wvdWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELyt3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEL3hQL3MvODcvenYvRUFBRC85Z0FBLyt6L3hQL3NBQUFBQUFBQS84NEFBQUFBQUFBQUFQL2lBQUFBQUFBQS80ai9uQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3ovNHYvc0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzJQL3hBQUQvN0FBQUFBQUFBUC9zQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUFBQUFBQS85MEFBQUFBLzlqLzR2OTBBQUQvc0FBQUFBRC9rZ0FBQUFELzdBQUEvNllBQUFBQUFBRC83UDlxQUFBQUFBQUFBQUQvcHYvaUFBQUFBUCtjQUFBQUFBQUEveEQvN1AvWUFBRC83QUFBLyt3QUFQL3MvL3NBQUFBQS8vWUFBUC9zQUFELyt3QUFBQUQvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUQvNGdBQUFBQUFBQUFBQUFELyt3QUFBQUFBQUFBQUFBQUFBQUFBLyt3QUFQLzJBQUQvc1AvaS83ci9zUCt3QUFEL3VnQUEvK3dBQVAvc0FBQUFBQUFBLzdBQUFBQUEvOWovN1Avc0FBQUFBQUFBLzg3L2lBQUEvK3dBQUFBQUFBRC96Z0FBQUFBQUFBQUFBQUFBQUFBQS8rei83UC9zQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFEL3NBQUFBQUFBQUFBQUFBRC83QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBRC85Z0FBQUFBQUFQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvNGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUQvenYvc0FBQUFBQUFBQUFBQUFQL09BQUFBQUFBQUFBRC85Z0FBQUFELzRnQUFBQUFBQUFBQS82Yi91Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOFFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMlAvRS85ai96di9ZQUFBQUFBQUEvODcvdXYvT0FBRC96Z0FBQUFELzRnQUFBQUQvOWdBQS8rSUFBQUFBQUFEL3p2K3dBQUFBQUFBQUFBRC9rZ0FBQUFBQUFQLzJBQUFBQUFBQS8rd0FBUC9PQUFELyt3QUFBQUFBQVAvN0FBQUFBQUFBQUFELzlnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQW9BQUFBVS85Z0FBQUFBLy9ZQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBRC80Z0FBQUFBQUFQL3NBQUFBQUFBQS8vYi94QUFBQUFBQUFBQUEvK0lBQUFBQUFBQUFBUC8yQUFBQUFBQUFBQUFBQVAvWUFBQUFBQUFBQUFEL3VnQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdQLzJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVAvc0FBRC85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vWUFBQUFBQUFELzJBQUFBQUQveWYvWUFBQUFBQUFBQUFELzdQL1lBQUFBQUFBQUFBQUFBQUFBQUFELzRnQUFBQUFBQUFBQS84VC9wZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9PQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBLzg0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQmtBQUFBQUFBQUFBQUFBQUF5QUFBQUFBQUFBQW9BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUhnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBS0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL2lBQUFBQUFBQUFBRC96Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEvK3dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBS0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFQL1lBQUFBQUFBQUFBQUFBQUFBQUFELzdBQUFBQUQva2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS84Ny9uQUFBQUFBQUFBQUEvL1lBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC9pQUFBQUhnQUFBQUFBQUFBQS85Z0FBUCttQUFEL3p2L1lBQUQvN0FBQS85Z0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8yLzRnQUFBQUFBQUFBQUFBQUFBRC8rd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUZBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFELzdQL2kvK3ovNHYvc0FBQUFBQUFBLzlqL3p2L2lBQUQvN0FBQS8rei83QUFBLzhULzdQL3NBQUFBQUFBQUFBQUFBUC9PQUFBQUFBQUFBQUQvN0FBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMlAvWUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBeUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUQvMkFBQUFBQUFBUC9pQUFBQUFBQUFBQUQvNGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFT0VBNG1BQVVPWmcrTUFBRWhYQ0ZjQUFFaGJDR0dBQUVoaUNHSUFBRWhuaUtJQUFFaThpTHlBQUVpK2lNRUFBSUFHd0FCQUJvQUFBQStBRDRBR2dCYkFGMEFHd0JmQUdJQUhnQmtBR1FBSWdDUEFKQUFJd0NoQUtZQUpRREhBTkFBS3dFZUFSNEFOUUU5QVQ4QU5nRjBBWGtBT1FHQ0FZZ0FQd0hGQWNVQVJnSFNBZElBUndIWkFka0FTQUhjQWQwQVNRSGtBZVFBU3dIbkFlY0FUQUk5QWowQVRRSkRBa1FBVGdKZkFtQUFVQUppQW1JQVVnSnJBbXNBVXdKNEFuZ0FWQUo2QW5vQVZRSi9Bb0VBVmdMd0F2QUFXUUFGQWp6LzRnSkRBQjRDWC8vRUFtRC94QUs3LzVJQUJnSTgvODRDUXdBZUFsLy9kQUpnLzV3Q1l2K2NBcnYrNkFBQkFrUC8yQUFDQWwvLzRnSzcvK0lBQkFKRC85Z0NYLy9pQW12L3pnSzcvK0lBQWdKaUFCUUNhLy9zQUFFQ1NnQUtBQVVDUEFBVUFrb0FGQUpNQUJRQ1lnQVVBdkFBRkFBQ0Frci85Z0pNLy9ZQUFRTHdBQjRBWGdBZS8rd0FILy9zQUNELzdBQWgvK3dBSXYvc0FDUC83QUEvLyt3QVFQL3NBRUgvN0FCQy8rd0FRLy9zQUVULzdBQnYvK3dBY1Avc0FISC83QUJ5Lyt3QWMvL3NBSFQvN0FCMS8rd0Fkdi9zQUhmLzdBQjQvK3dBZWYvc0FIci83QUI3Lyt3QWZQL3NBSDMvN0FCKy8rd0FmLy9zQUlELzdBQ0IvK3dBZ3Yvc0FJUC83QUNFLyt3QWhmL3NBSWIvN0FDSC8rd0FpUC9zQUluLzdBQ0svK3dBaS8vc0FJei83QUNOLyt3QWp2L3NBSkgvN0FDZy8rd0FvZi9zQUtMLzdBQ2ovK3dBcFAvc0FLWC83QUNtLyt3QXdmL3NBTUwvN0FERC8rd0F4UC9zQU1YLzdBREcvK3dBeVAvc0FNbi83QURLLyt3QXkvL3NBTXovN0FETi8rd0F6di9zQU0vLzdBRFEvK3dBM1Avc0FONy83QUVlLyt3Qmd2L3NBYVAvOWdHay8vWUJwZi8yQWFiLzlnR24vL1lCcVAvMkFhdi85Z0dzLy9ZQnJmLzJBYTcvOWdHdi8vWUJzUC8yQWJILzlnR3kvL1lCeGYvc0FjYi83QUhILyt3QnlQL3NBY24vN0FKdy8rd0Njdi9zQW5uLzdBS0UvK3dBQWdCWi8rd0FXdi9zQUNnQUFRQVVBQUlBRkFBREFCUUFCQUFVQUFVQUZBQUdBQlFBQndBVUFBZ0FGQUFKQUJRQUNnQVVBQXNBRkFBTUFCUUFEUUFVQUE0QUZBQVBBQlFBRUFBVUFCRUFGQUFTQUJRQUV3QVVBQlFBRkFBVkFCUUFGZ0FVQUJjQUZBQVlBQlFBR1FBVUFCb0FGQUFiQUJRQUhBQVVBTWovMkFESi85Z0F5di9ZQU12LzJBRE0vOWdBemYvWUFNNy8yQURQLzlnQTBQL1lBZG4vN0FIay8rd0NUdi9zQUI0QUFmL0VBQUwveEFBRC84UUFCUC9FQUFYL3hBQUcvOFFBQi8vRUFBai94QUFKLzhRQUN2L0VBQXYveEFBTS84UUFEZi9FQUE3L3hBQVAvOFFBRVAvRUFCSC94QUFTLzhRQUUvL0VBQlQveEFBVi84UUFGdi9FQUJmL3hBQVkvOFFBR2YvRUFCci94QUFiLzhRQUhQL0VBRm4vbkFCYS81d0FBd0kxLzg0Q052L09Bam4vemdDSEFBSC9rZ0FDLzVJQUEvK1NBQVQva2dBRi81SUFCditTQUFmL2tnQUkvNUlBQ2YrU0FBci9rZ0FMLzVJQURQK1NBQTMva2dBTy81SUFELytTQUJEL2tnQVIvNUlBRXYrU0FCUC9rZ0FVLzVJQUZmK1NBQmIva2dBWC81SUFHUCtTQUJuL2tnQWEvNUlBRy8rU0FCei9rZ0QrLzhRQS8vL0VBUUQveEFFQi84UUJBdi9FQVFQL3hBRUUvOFFCQmYvRUFRYi94QUVILzhRQkNQL0VBUW4veEFFSy84UUJDLy9FQVF6L3hBRU4vOFFCRHYvRUFRLy94QUVRLzhRQkVmL0VBUkwveEFFVC84UUJGUC9FQVJYL3hBRVcvOFFCRi8vRUFSai94QUVaLzhRQkd2L0VBUnYveEFFYy84UUJIZi9FQVIvL3hBRWcvOFFCSWYvRUFTTC94QUVqLzhRQkpQL0VBVC8vN0FGSC8rd0JTUC9zQVVuLzdBRksvK3dCUy8vc0FVei83QUZOLyt3QlR2L3NBVS8vN0FGUS8rd0JVZi9FQVZML3hBRlQvOFFCVlAvRUFWWC94QUZXLzhRQlYvL0VBVmoveEFGWi84UUJXdi9FQVZ2L3hBRmMvOFFCWGYvRUFWNy94QUZmLzhRQllQL0VBV0gveEFGaS84UUJZLy9FQVdUL3hBRmwvOFFCWnYvRUFXZi94QUZvLzhRQmFmL0VBV3IveEFGci84UUJiUC9FQVczL3hBRnUvOFFCYi8vRUFYRC94QUZ4Lyt3QmMvL0VBWFQvN0FGMS8rd0Jkdi9zQVhmLzdBRjQvK3dCZWYvc0FYci94QUY3LzhRQmZQL0VBWDMveEFGKy84UUJmLy9FQWJQLzlnRzAvL1lCdGYvMkFiYi85Z0hBLzhRQndmL3NBY0wveEFIRC84UUJ4UC8yQWMvLzdBSjEvOFFDcHYvc0FGOEFIUUFBQUNRQUFBQWxBQUFBSmdBQUFDY0FBQUFvQUFBQUtRQUFBQ29BQUFBckFBQUFMQUFBQUMwQUFBQXVBQUFBTHdBQUFEQUFBQUF4QUFBQU1nQUFBRE1BQUFBMEFBQUFOUUFBQURZQUFBQTNBQUFBT0FBQUFEa0FBQUE2QUFBQU93QUFBRHdBQUFBOUFBQUFQZ0FBQUVVQUFBQkdBQUFBUndBQUFFZ0FBQUJKQUFBQVNnQUFBRXNBQUFCTUFBQUFUUUFBQUU0QUFBQlBBQUFBVUFBQUFGRUFBQUJTQUFBQVV3QUFBRlFBQUFCVkFBQUFWZ0FBQUZjQUFBQllBQUFBV3dBQUFGd0FBQUJkQUFBQVhnQUFBRjhBQUFCZ0FBQUFZUUFBQUdJQUFBQmpBQUFBWkFBQUFHVUFBQUJtQUFBQVp3QUFBR2dBQUFCcEFBQUFhZ0FBQUdzQUFBQnNBQUFBYlFBQUFHNEFBQUNQQUFBQWtBQUFBSklBQUFDVEFBQUFsQUFBQUpVQUFBQ1dBQUFBbHdBQUFKOEFBQURJLzg0QXlmL09BTXIvemdETC84NEF6UC9PQU0zL3pnRE8vODRBei8vT0FORC96Z0RkQUFBQ2VBQUFBbm9BQUFKL0FBQUNnQUFBQW9FQUFBSytBQUFDdndBQUFzTUFBQUFCQW12LzdBQUVBa01BSGdKZi84UUNhLy9pQXJ2LzdBQUJBbXYvemdCTEFQNy9uQUQvLzV3QkFQK2NBUUgvbkFFQy81d0JBLytjQVFUL25BRUYvNXdCQnYrY0FRZi9uQUVJLzV3QkNmK2NBUXIvbkFFTC81d0JEUCtjQVEzL25BRU8vNXdCRC8rY0FSRC9uQUVSLzV3QkV2K2NBUlAvbkFFVS81d0JGZitjQVJiL25BRVgvNXdCR1ArY0FSbi9uQUVhLzV3QkcvK2NBUnovbkFFZC81d0JVZitjQVZML25BRlQvNXdCVlArY0FWWC9uQUZXLzV3QlYvK2NBVmovbkFGWi81d0JXditjQVZ2L25BRmMvNXdCWGYrY0FWNy9uQUZmLzV3QllQK2NBV0gvbkFGaS81d0JZLytjQVdUL25BRmwvNXdCWnYrY0FXZi9uQUZvLzV3QmFmK2NBV3IvbkFGci81d0JiUCtjQVczL25BRnUvNXdCYi8rY0FYRC9uQUZ6LzV3QmV2K2NBWHYvbkFGOC81d0JmZitjQVg3L25BRi8vNXdCd1ArY0FjTC9uQUhELzV3Q2RmK2NBQUlBSHdBQkFFUUFBQUJiQUYwQVJBQmZBR0lBUndCa0FHUUFTd0J2QUowQVRBQ2ZBTlFBZXdEY0FOd0FzUURlQU9BQXNnRDdBUDBBdFFFRkFRWUF1QUVJQVI0QXVnRTlBVDhBMFFGQ0FVSUExQUZFQVVRQTFRRlJBWElBMWdGMEFYOEErQUdDQVlnQkJBR2pBYllCQ3dIQ0FjVUJId0hTQWVjQkl3SStBajhCT1FKUEFsSUJPd0pVQWxVQlB3SllBbDRCUVFKa0FtUUJTQUptQW1nQlNRSndBbkFCVEFKeUFuSUJUUUo0QW5vQlRnSi9Bb0VCVVFLRUFvUUJWQUFDQUZrQUFRQWFBQUlBR3dBY0FBUUFIUUFkQUJvQUhnQWpBQWdBSlFBbEFCSUFLUUFwQUE0QUtnQTlBQVFBUGdBK0FCc0FQd0JFQUFvQVd3QmNBQmNBWFFCZEFBOEFYd0JpQUE4QVpBQmtBQThBamdDT0FBUUFqd0NRQUJVQWtnQ1hBQkFBbUFDZEFBc0Fud0NmQUJvQW9RQ21BQkVBcHdEQUFBTUF3UURHQUF3QXh3REhBQ29BeUFEUUFBa0EwUURVQUJJQTNBRGNBQWdBM3dEZkFBc0E0QURnQUJJQSt3RDhBQVVBL1FEOUFBRUJCUUVGQUFFQkJnRUdBQjBCQ0FFSUFBNEJDUUVjQUFVQkhRRWRBQUVCSGdFZUFCZ0JQUUUvQUJrQlFnRkNBQjBCUkFGRUFDc0JVUUZ2QUFFQmNBRndBQVVCY1FGeUFBRUJkQUY1QUJNQmVnRi9BQTBCZ2dHQ0FCZ0Jnd0dJQUJRQm93R29BQVlCcVFHcEFDd0JxZ0d5QUFZQnN3RzJBQTRCd2dIQ0FBRUJ3d0hEQUEwQnhBSEVBQTRCeFFIRkFCZ0IwZ0hTQUJZQjB3SFRBQ01CMUFIVUFDa0IxUUhWQUNnQjFnSFdBQ0FCMXdIWEFCOEIyQUhZQUNjQjJRSFpBQ1lCMmdIYUFCNEIyd0hiQUNJQjNBSGRBQllCM2dIZUFDTUIzd0hmQUNrQjRBSGdBQ2dCNFFIaEFDQUI0Z0hpQUI4QjR3SGpBQ2NCNUFIa0FDWUI1UUhsQUI0QjVnSG1BQ0lCNXdIbkFCWUNQZ0kvQUJ3Q1R3SlNBQWNDVkFKVkFBY0NXQUpjQUFjQ1hRSmVBQ1VDWkFKa0FDRUNaZ0ptQUNFQ1p3Sm9BQ1FDY0FKd0FBZ0NjZ0p5QUFnQ2VBSjRBQnNDZVFKNUFBb0NlZ0o2QUJjQ2Z3S0JBQlVDaEFLRUFBd0FBZ0JnQUFFQUhBQUVBQjRBSXdBQ0FEOEFSQUFDQUZrQVdnQVpBRzhBamdBQ0FKRUFrUUFDQUpnQW5RQU1BS0FBb0FBQ0FLRUFwZ0FRQUtjQXdBQUdBTUVBeGdBTkFNY0F4d0FuQU1nQTBBQUxBTkVBMUFBVEFOd0EzQUFDQU40QTNnQUNBTjhBM3dBTUFPQUE0QUFUQU9FQS9BQUZBUDBBL1FBSUFQNEJIUUFCQVI0QkhnQU9BUjhCSkFBUkFTVUJLQUFJQVQwQlBnQUlBVDhCUHdBSEFVQUJSZ0FJQVVjQlVBQUhBVkVCY0FBQkFYRUJjUUFIQVhJQmNnQUlBWE1CY3dBQkFYUUJlUUFIQVhvQmZ3QVBBWUVCZ1FBSUFZSUJnZ0FPQVlNQmlBQVNBWWtCb2dBREFhTUJxQUFKQWFrQnFRQW9BYW9CcWdBcEFhc0JzZ0FKQWJNQnRnQVVBYmNCdWdBREFid0J2QUFEQWI0QnZ3QURBY0FCd0FBQkFjRUJ3UUFIQWNJQndnQUJBY01Cd3dBUEFjUUJ4QUFVQWNVQnlRQU9BY29CeXdBVkFjOEJ6d0FIQWRJQjBnQVdBZE1CMHdBaUFkUUIxQUFtQWRVQjFRQWxBZFlCMWdBZUFkY0Ixd0FkQWRnQjJBQWtBZGtCMlFBWEFkb0IyZ0FjQWRzQjJ3QWhBZHdCM1FBV0FkNEIzZ0FpQWQ4QjN3QW1BZUFCNEFBbEFlRUI0UUFlQWVJQjRnQWRBZU1CNHdBa0FlUUI1QUFYQWVVQjVRQWNBZVlCNWdBaEFlY0I1d0FXQWpVQ05nQVlBamNDT0FBYkFqa0NPUUFZQWo0Q1B3QWFBa0FDUUFBVkFrNENUZ0FYQWs4Q1VnQUtBbFFDVlFBS0FsZ0NYQUFLQW1NQ1l3QWZBbVFDWkFBZ0FtVUNaUUFmQW1ZQ1pnQWdBbWNDYUFBakFuQUNjQUFDQW5JQ2NnQUNBblVDZFFBQkFua0NlUUFDQW9RQ2hBQU5BcVlDcGdBSEFya0N1UUFWQUFJQUF3TEtBdXdBQUFMNkF4RUFJd01mQXl3QU93QUNBQW9BQVFCcUFBQUFiUUVFQUdvQkJnRWNBUUlCSGdGTUFSa0JUd0hFQVVnQ2NBSnlBYjRDZEFKMEFjRUNlUUo1QWNJQ3d3TERBY01ETUFNMEFjUUFTUUFBRytJQUFCeFVBQUFiNGdBQUhHQUFBQnZpQUFBYjZBQUFHKzRBQUJ4VUFBQWI5QUFBRy9vQUFCeGdBQUFjWUFBQUhGb0FBQndBQUFBY0FBQUFIR1lBQUJ4bUFBQWNCZ0FBSEF3QUFCd1NBQUFjV2dBQUhCZ0FBQndZQUFFZHBBQUNHNllBQWh1Z0FBSWJwZ0FDRzZ3QUF4VElBQUlic2dBQ0c3Z0FCQlRPQUFRVTFBQUVGTm9BQkJUZ0FBQWNIZ0FBSEhJQUFCd2VBQUFjZUFBQUhCNEFBQndrQUFBY0tnQUFISElBQUJ3d0FBQWNOZ0FBSEhnQUFCeDRBQUFjYkFBQUhEd0FBQnc4QUFBY2VBQUFISGdBQUJ4Q0FBQWNTQUFBSEU0QUFCeHNBQUVkcWdBRUZPWUFCQlRzQUFBY1dnQUFIRlFBQUJ4YUFBQWNaZ0FBSEdBQUFCeGdBQUFjWUFBQUhHWUFBQnhzQUFBY2NnQUFISGdBQUJ4NEFBQWNlQUFBSEhnQnlSYlNBQUFXNmhQd0FBQVc1QUFBRnVvVDhBQUFGdGdBQUJicUUvQUFBQlBTQUFBVzZoUHdBQUFXMkFBQUU5Z1Q4QUFBRTlJQUFCYnFFL0FBQUJQTUFBQVc2aFB3QUFBVDBnQUFGdW9UOEFBQUZ0Z0FBQmJxRS9BQUFCYllBQUFXNmhQd0FBQVQwZ0FBRnVvVDhBQUFGdGdBQUJQWUUvQUFBQlBTQUFBVzZoUHdBQUFUekFBQUZ1b1Q4QUFBRTlJQUFCYnFFL0FBQUJia0FBQVc2aFB3QUFBVzVBQUFGdW9UOEFBQUZ0SUFBQlBZRS9BQUFCYmtBQUFXNmhQd0FBQVQzZ0FBRnVvVDhBQUFGdVFBQUJicUUvQUFBQmJlQUFBVzZoUHdBQUFXMGdBQUZ1b1Q4QUFBRStRQUFCYnFFL0FBQUJQcUFBQVc2aFB3QUFBVzVBQUFGdW9UOEFBQUUvWUFBQlFDQUFBQUFCUDhBQUFVQWdBQUFBQVcwZ0FBRnVvQUFBQUFHbFlBQUJwY0FBQUFBQlFJQUFBYVhBQUFBQUFVRkFBQUdsd0FBQUFBR2xZQUFCUU9BQUFBQUJRVUFBQWFYQUFBQUFBVUdnQUFHbHdBQUFBQUZEZ0FBQlErQUFBVVJCUWdBQUFVSmdBQUZDd1VPQUFBRkQ0QUFCUkVGRElBQUJRK0FBQVVSQlE0QUFBVVBnQUFGRVFVU2dBQUZGQUFBQlJXRmNRQUFCU0FGSVlBQUJYUUFBQVVnQlNHQUFBVnZnQUFGSUFVaGdBQUZiNEFBQlNBRklZQUFCVytBQUFVZ0JTR0FBQVVZZ0FBRklBVWhnQUFGYjRBQUJSdUZJWUFBQlJpQUFBVWdCU0dBQUFVWEFBQUZJQVVoZ0FBRkdJQUFCU0FGSVlBQUJYUUFBQVVnQlNHQUFBVjBBQUFGSUFVaGdBQUZHZ0FBQlNBRklZQUFCWEVBQUFVYmhTR0FBQVYwQUFBRklBVWhnQUFGSFFBQUJTQUZJWUFBQlhRQUFBVWdCU0dBQUFVZWdBQUZJQVVoZ0FBRmNRQUFCU0FGSVlBQUJYUUFBQVVnQlNHQUFBVWpBQUFGSklBQUFBQUdtNEFBQnAwQUFBQUFCU1lBQUFhZEFBQUFBQVVtQUFBR25RQUFBQUFGSmdBQUJwMEFBQUFBQnB1QUFBVW5nQUFBQUFVcEFBQUduUUFBQUFBRnZBQUFCcEVBQUFVc0Jid0FBQWFSQUFBRkxBVlpBQUFHa1FBQUJTd0Z2QUFBQlNxQUFBVXNCa2VBQUFVNWhUc0FBQVV0Z0FBRkx3VTdBQUFGT0FBQUJUbUZPd0FBQlRDQUFBVTVoVHNBQUFVd2dBQUZPWVU3QUFBRk1JQUFCVG1GT3dBQUJUZ0FBQVU1aFRzQUFBVTRBQUFGT1lVN0FBQUZNZ0FBQlRtRk93QUFCa2VBQUFVemhUc0FBQVU0QUFBRk9ZVTdBQUFGTlFBQUJUbUZPd0FBQlRnQUFBVTVoVHNBQUFVMmdBQUZPWVU3QUFBR1I0QUFCVG1GT3dBQUJUZ0FBQVU1aFRzQUFBVThnQUFHZzRBQUFBQUZQZ0FBQm9PQUFBQUFCVUVBQUFVL2dBQUFBQVZCQUFBRlFvQUFBQUFHMFlWSWhVb0FBQVZMaFVRRlNJVkZnQUFGUzRjUWhVaUZTZ0FBQlV1RzBZVkloVW9BQUFWTGh0R0ZTSVZIQUFBRlM0YlJoVWlGU2dBQUJVdUdMSVZJaGk0QUFBVkxodEdGU0lWS0FBQUZTNFZOQUFBRlRvQUFBQUFHajRBQUJwRUFBQUFBQlZBQUFBVlJnQUFBQUFWaUFBQUdrUUFBQUFBRlV3QUFCcEVBQUFBQUJvK0FBQVZVZ0FBQUFBVldBQUFGVjRBQUFBQUZZZ0FBQnBFQUFBQUFCYndGdllXL0JjQ0Z3Z1ZtaGIyRnZ3WEFoY0lGV1FXOWhiOEZ3SVhDQlZrRnZZVy9CY0NGd2dWWkJiMkZ2d1hBaGNJRlhBVzloYjhGd0lYQ0JWa0Z2WVZmQmNDRndnVmNCYjJGdndYQWhjSUZXb1c5aGI4RndJWENCVndGdllXL0JjQ0Z3Z1ZtaGIyRnZ3WEFoY0lGWm9XOWhiOEZ3SVhDQldnRnZZVy9CY0NGd2dXUWhiMkZ2d1hBaGNJRnZBVzloVjhGd0lYQ0JXYUZ2WVcvQmNDRndnVmRoYjJGdndYQWhjSUdqNFZqaGI4RndJWENCV0lGWTRXL0JjQ0Z3Z2FQaFdPRlh3WEFoY0lGWWdWamhiOEZ3SVhDQldDRlk0Vy9CY0NGd2dWaUJXT0Z2d1hBaGNJRlpvVzloYjhGd0lYQ0JXYUZ2WVcvQmNDRndnVmxCYjJGdndYQWhjSUZ2QVc5aGI4RndJWENCYndGdllXL0JjQ0Z3Z1ZtaGIyRnZ3WEFoY0lGWm9XOWhiOEZ3SVhDQldnRnZZVy9CY0NGd2dWcGdBQUZhd0FBQUFBRmJJQUFCVzRBQUFBQUJXeUFBQVZ1QUFBQUFBYVBnQUFGdndBQUFBQUZjUUFBQlhXQUFBQUFCWFFBQUFWMWdBQUFBQVZ2Z0FBRmRZQUFBQUFGY1FBQUJYS0FBQUFBQlhRQUFBVjFnQUFBQUFWMEFBQUZkWUFBQUFBRnc0QUFCY1VBQUFBQUJYY0FBQVhGQUFBQUFBVjZBQUFGeFFBQUFBQUZ3NEFBQlhpQUFBQUFCWG9BQUFYRkFBQUFBQVhEZ0FBRmU0QUFBQUFGdzRBQUJYMEFBQUFBQlg2QUFBV0FBQUFBQUFhUGdBQUZ2d0FBQUFBRmg0QUFCWU1BQUFXS2hZZUFBQVdEQUFBRmlvV0JnQUFGZ3dBQUJZcUZoNEFBQllTQUFBV0toWWVBQUFXR0FBQUZpb1dIZ0FBRmlRQUFCWXFGbUFXY2haNEZuNEFBQlpzRm5JV2VCWitBQUFXTUJaeUZuZ1dmZ0FBRmpBV2NoWjRGbjRBQUJZd0ZuSVdlQlorQUFBV2JCWnlGbmdXZmdBQUZtd1djaFo0Rm40QUFCWThGbklXZUJaK0FBQVdOaFp5Rm5nV2ZnQUFGandXY2haNEZuNEFBQlpDRm5JV2VCWitBQUFXWUJaeUZrZ1dmZ0FBRm13V2NoWjRGbjRBQUJaT0ZuSVdlQlorQUFBV1lCWlVGbmdXZmdBQUZtd1dWQlo0Rm40QUFCWmdGbFFXU0JaK0FBQVdiQlpVRm5nV2ZnQUFGazRXVkJaNEZuNEFBQlpzRmxRV2VCWitBQUFXYkJaeUZuZ1dmZ0FBRm13V2NoWjRGbjRBQUJaYUZuSVdlQlorQUFBV1lCWnlGbmdXZmdBQUZtWVdjaFo0Rm40QUFCWnNGbklXZUJaK0FBQVcwZ0FBRnVvQUFBQUFGb1FBQUJpZ0FBQUFBQmFRQUFBWW9BQUFBQUFXaWdBQUdLQUFBQUFBRnBBQUFCaWdBQUFBQUJhUUFBQVlvQUFBQUFBVzBnQUFGdW9BQUFBQUZwd0FBQmE2QUFBQUFCYTBBQUFXdWdBQUFBQVdsZ0FBRnJvQUFBQUFGclFBQUJhNkFBQUFBQmFjQUFBV29nQUFBQUFXdEFBQUZyb0FBQUFBRnFnQUFCYTZBQUFBQUJhdUFBQVd1Z0FBQUFBV3RBQUFGcm9BQUFBQUZ4b0FBQmNnQUFBWEpoYkFBQUFYSUFBQUZ5WVd4Z0FBRnlBQUFCY21Gc3dBQUJjZ0FBQVhKaGJTQUFBVzZnQUFBQUFXNUFBQUZ1b0FBQUFBRnRnQUFCYnFBQUFBQUJia0FBQVc2Z0FBQUFBVzVBQUFGdW9BQUFBQUZ0NEFBQmJxQUFBQUFCYmtBQUFXNmdBQUFBQWFWZ0FBR2x3QUFBQUFHajRBQUJwRUFBQUFBQmJ3RnZZVy9CY0NGd2dYRGdBQUZ4UUFBQUFBRnhvQUFCY2dBQUFYSmhkUUFBQVhhQmR1QUFBWFNnQUFGMmdYYmdBQUYwb0FBQmRvRjI0QUFCY3NBQUFYYUJkdUFBQVhTZ0FBRno0WGJnQUFGeXdBQUJkb0YyNEFBQmN5QUFBWGFCZHVBQUFYT0FBQUYyZ1hiZ0FBRjBvQUFCZG9GMjRBQUJkS0FBQVhhQmR1QUFBWExBQUFGMmdYYmdBQUYwb0FBQmMrRjI0QUFCY3NBQUFYYUJkdUFBQVhNZ0FBRjJnWGJnQUFGemdBQUJkb0YyNEFBQmRLQUFBWGFCZHVBQUFYWWdBQUYyZ1hiZ0FBRjFBQUFCYytGMjRBQUJkS0FBQVhhQmR1QUFBWFJBQUFGMmdYYmdBQUYwb0FBQmRvRjI0QUFCZGlBQUFYYUJkdUFBQVhVQUFBRjJnWGJnQUFGMVlBQUJkb0YyNEFBQmRjQUFBWGFCZHVBQUFYWWdBQUYyZ1hiZ0FBRjNRQUFCZUFBQUFBQUJkNkFBQVhnQUFBQUFBWVhnQUFHRmdBQUFBQUdlb0FBQm53QUFBQUFCZU1BQUFaOEFBQUFBQVhqQUFBR2ZBQUFBQUFHZW9BQUJlR0FBQUFBQmVNQUFBWjhBQUFBQUFYa2dBQUdmQUFBQUFBRjVnWHFob09BQUFYbmhlWUY2b2FEZ0FBRjU0WG1CZXFHZzRBQUJlZUY2UVhxaGV3QUFBWHRoZlVBQUFaL0JmeUFBQVg1Z0FBR2Z3WDhnQUFGK1lBQUJuOEYvSUFBQmZtQUFBWi9CZnlBQUFYNWdBQUdmd1g4Z0FBRjd3QUFCbjhGL0lBQUJmbUFBQVgyaGZ5QUFBWHZBQUFHZndYOGdBQUY4SUFBQm44Ri9JQUFCZklBQUFaL0JmeUFBQVg1Z0FBR2Z3WDhnQUFGK3dBQUJuOEYvSUFBQmZPQUFBWi9CZnlBQUFYMUFBQUY5b1g4Z0FBRitZQUFCbjhGL0lBQUJmZ0FBQVovQmZ5QUFBWDVnQUFHZndYOGdBQUYrd0FBQm44Ri9JQUFCb0NBQUFaL0JmeUFBQVg3QUFBR2Z3WDhnQUFGL2dBQUJmK0FBQUFBQmdFQUFBWjVBQUFBQUFZQ2dBQUdlUUFBQUFBR0FvQUFCbmtBQUFBQUJnS0FBQVo1QUFBQUFBWUVBQUFHZVFBQUFBQUdCWUFBQm5rQUFBQUFCZ2lBQUFhRGdBQUdDZ1lJZ0FBR2c0QUFCZ29HQndBQUJvT0FBQVlLQmdpQUFBWlRnQUFHQ2dZUmdBQUdJNFlRQUFBR0VZQUFCaU9HRUFBQUJoTUFBQVlqaGhBQUFBWVRBQUFHSTRZUUFBQUdFd0FBQmlPR0VBQUFCaE1BQUFZamhoQUFBQVlUQUFBR0k0WVFBQUFHRG9BQUJpT0dFQUFBQmhHQUFBWWpoaEFBQUFZUmdBQUdDNFlRQUFBR0V3QUFCaU9HRUFBQUJnMEFBQVlqaGhBQUFBWVRBQUFHSTRZUUFBQUdIWUFBQmg4R0VBQUFCZzZBQUFZamhoQUFBQVlSZ0FBR0k0WVFBQUFHRG9BQUJpT0dFQUFBQmhHQUFBWVVnQUFBQUFZUmdBQUdGSUFBQUFBR0V3QUFCaFNBQUFBQUJoZUFBQVlXQUFBQUFBWVhnQUFHR1FBQUFBQUdnSUFBQm9PQUFBQUFCaUNHSWdZamdBQUdKUVlhaGlJR0k0QUFCaVVHSUlZaUJpT0FBQVlsQmlDR0lnWWNBQUFHSlFZZ2hpSUdJNEFBQmlVR0hZWWlCaDhBQUFZbEJpQ0dJZ1lqZ0FBR0pRWW1nQUFHS0FBQUFBQUdmWUFBQm44QUFBQUFCaW1BQUFaL0FBQUFBQVo5Z0FBR2Z3QUFBQUFHS1lBQUJuOEFBQUFBQm4yQUFBWXJBQUFBQUFZc2dBQUdMZ0FBQUFBR0w0QUFCbjhBQUFBQUJvQ0dnZ2FEaG9VR2hvWjBob0lHZzRhRkJvYUdkSWFDQm9PR2hRYUdoblNHZ2dhRGhvVUdob1owaG9JR2c0YUZCb2FHTVFhQ0JvT0doUWFHaG5TR2dnWlRob1VHaG9ZeEJvSUdnNGFGQm9hR01vYUNCb09HaFFhR2hsQ0dnZ2FEaG9VR2hvWjBob0lHZzRhRkJvYUdkNGFDQm9PR2hRYUdobElHZ2dhRGhvVUdob1kwQm9JR2c0YUZCb2FHZ0lhQ0JsT0doUWFHaG5TR2dnYURob1VHaG9aMkJvSUdnNGFGQm9hR2dJWTFob09HaFFhR2huU0dOWWFEaG9VR2hvYUFoaldHVTRhRkJvYUdkSVkxaG9PR2hRYUdobllHTllhRGhvVUdob1ozaGpXR2c0YUZCb2FHZElhQ0JvT0doUWFHaG5TR2dnYURob1VHaG9aM2hvSUdnNGFGQm9hR2dJYUNCb09HaFFhR2hvQ0dnZ2FEaG9VR2hvWjBob0lHZzRhRkJvYUdkNGFDQm9PR2hRYUdobElHZ2dhRGhvVUdob1kzQUFBR09JQUFBQUFHZ0lBQUJvT0FBQUFBQmpvQUFBWTdnQUFBQUFhQWdBQUdnNEFBQUFBR1BRQUFCcVNBQUFBQUJrQUFBQWFrZ0FBQUFBWkFBQUFHcElBQUFBQUdQUUFBQmo2QUFBQUFCa0FBQUFha2dBQUFBQVpBQUFBR3BJQUFBQUFHaUFBQUJvbUFBQUFBQmtNQUFBYUpnQUFBQUFaREFBQUdpWUFBQUFBR2lBQUFCa0dBQUFBQUJrTUFBQWFKZ0FBQUFBYUlBQUFHUklBQUFBQUdpQUFBQmtZQUFBQUFCb0NBQUFhRGdBQUFBQVpIZ0FBR293QUFBQUFHMEFaOWhra0FBQVpQQnRBR2ZZWkpBQUFHVHdiUUJuMkdTUUFBQms4RzBBWjloa3FBQUFaUEJ0QUdmWVpNQUFBR1R3YlFCbjJHVFlBQUJrOEdnSVpZQm9PR1dZQUFCblNHV0FhRGhsbUFBQVowaGxnR2c0WlpnQUFHZElaWUJvT0dXWUFBQm5TR1dBYURobG1BQUFaMGhsZ0dnNFpaZ0FBR2Q0WllCb09HV1lBQUJsQ0dXQWFEaGxtQUFBWlFobGdHZzRaWmdBQUdVSVpZQm9PR1dZQUFCbElHV0FhRGhsbUFBQWFBaGxnR1U0WlpnQUFHZElaWUJvT0dXWUFBQm5ZR1dBYURobG1BQUFhQWhsVUdnNFpaZ0FBR2RJWlZCb09HV1lBQUJvQ0dWUVpUaGxtQUFBWjBobFVHZzRaWmdBQUdkZ1pWQm9PR1dZQUFCbmVHVlFhRGhsbUFBQVowaGxnR2c0WlpnQUFHZElaWUJvT0dXWUFBQm5lR1dBYURobG1BQUFhQWhsZ0dnNFpaZ0FBR1ZvWllCb09HV1lBQUJuZUdXQWFEaGxtQUFBWmJBQUFHWElBQUFBQUdYZ0FBQm1LQUFBQUFCbUVBQUFaaWdBQUFBQVpoQUFBR1lvQUFBQUFHWDRBQUJtS0FBQUFBQm1FQUFBWmlnQUFBQUFaa0FBQUdaWUFBQUFBR1p3QUFCbTZBQUFBQUJtb0FBQVp1Z0FBQUFBWnFBQUFHYm9BQUFBQUdiUUFBQm02QUFBQUFCbWNBQUFab2dBQUFBQVpxQUFBR2JvQUFBQUFHYTRBQUJtNkFBQUFBQm0wQUFBWnVnQUFBQUFadEFBQUdib0FBQUFBR2l3QUFCb3lBQUFhT0JuQUFBQWFNZ0FBR2pnWndBQUFHaklBQUJvNEdjWUFBQm95QUFBYU9Cb0NBQUFaNUFBQUFBQVowZ0FBR2VRQUFBQUFHZElBQUJua0FBQUFBQm5lQUFBWjVBQUFBQUFhQWdBQUdjd0FBQUFBR2RJQUFCbmtBQUFBQUJuWUFBQVo1QUFBQUFBWjNnQUFHZVFBQUFBQUdkNEFBQm5rQUFBQUFCbnFBQUFaOEFBQUFBQVo5Z0FBR2Z3QUFBQUFHZ0lhQ0JvT0doUWFHaG9nQUFBYUpnQUFBQUFhTEFBQUdqSUFBQm80R2xZQUFCcGNBQUFBQUJwS0FBQWFVQUFBQUFBYVZnQUFHbHdBQUFBQUdtSUFBQnBvQUFBQUFCcHVBQUFhZEFBQUFBQWFQZ0FBR2tRQUFBQUFHbFlBQUJwY0FBQUFBQnBLQUFBYVVBQUFBQUFhVmdBQUdsd0FBQUFBR21JQUFCcG9BQUFBQUJwdUFBQWFkQUFBQUFBQUFRQUdBdUlDNHdMa0F1VUM1d0xvQUFZQUFBaVVBQUFJamdBQUNKUUFBQWlhQUFBSW9BQUFDS1lBQmdpU0NKZ0luZ2lrQ0tvSXNBQUNBQU1DeWdMZ0FBQUMrZ01PQUJjREh3TXNBQ3dBT2dBQUNKSUFBQWtFQUFBSWtnQUFDUkFBQUFpU0FBQUltQUFBQ0o0QUFBa0VBQUFJcEFBQUNLb0FBQWtRQUFBSkVBQUFDUW9BQUFpd0FBQUlzQUFBQ1JZQUFBa1dBQUFJdGdBQUNMd0FBQWpDQUFBSkNnQUFDTWdBQUFqSUFBQUl6Z0FBQ1NJQUFBak9BQUFKS0FBQUNNNEFBQWpVQUFBSTJnQUFDU0lBQUFqZ0FBQUk1Z0FBQ1NnQUFBa29BQUFKSEFBQUNPd0FBQWpzQUFBSktBQUFDU2dBQUFqeUFBQUkrQUFBQ1A0QUFBa2NBQUFKQ2dBQUNRUUFBQWtLQUFBSkZnQUFDUkFBQUFrUUFBQUpFQUFBQ1JZQUFBa2NBQUFKSWdBQUNTZ0FBQWtvQUFBSktBQUFDU2dBT2doRUNFb0lVQWhXQ0Z3SVlnaG9DRzRJZEFoNkNJQUlnQWl3Q0lZSWpBaVNDSmdJbmdpa0NLb0lzQWkyQ0x3SXdnaklDTTRKWkFqVUNOb0k0QWptQ093SThnajRDUGdJL2drRUNRb0pFQWtXQ1J3Sklna29DUzRKTkFrNkNVQUpVZ2xHQ1VZSlRBbFNDVmdKWGdsa0NXUUpaQWxrQUFFQUFnTGhBdzhBQWdBQUNPd0FBQWp5QUFJSTdnajBBQUVBbkFBQUFBRUEyUUZ5QUFFQm53RnlBQUVBdlFGYkFBRUJJQUVCQUFFQTNnRnlBQUVCYXdGWkFBRUJoUVFqQUFFQmhRUUlBQUVCaGY4OUFBRUJoUU9CQUFFQmhRT09BQUVCaFFSRUFBRUNpUUFBQUFFQ0VnS3dBQUVDRWdObUFBRUI2UUFBQUFFQmlBTm1BQUVCamY5UEFBRUJpQU5TQUFFQmlnTm1BQUVFYkFOU0FBRUViQUFBQUFFRWJBRllBQUVCZ1FOU0FBRUJnUUt3QUFFQmdRQUFBQUVBMHdGY0FBRUVJQUxHQUFFRUlBQUFBQUVFSUFFSUFBRUJlZ1FqQUFFQmVnUUlBQUVCZkFObUFBRUJmUDg5QUFFQmVnT0JBQUVCZWdOT0FBRUJmQUFBQUFFQ1d3QUFBQUVCWUFLd0FBRUJZQUFBQUFFQm13TlNBQUVCbWY2ekFBRUJuUU5tQUFFQm52ODlBQUVCb0FJdUFBRURWQUt3QUFFQ3Z3QUFBQUVBdVFOU0FBRUF1d05tQUFFQXVQODlBQUVBdVFPQkFBRUF1UU5PQUFFQXVRTm1BQUVBdUFBQUFBRUEyd0FBQUFFQjR3S3dBQUVCNHdOU0FBRUJxZ0FBQUFFQnFnS3dBQUVCcXY2ekFBRUVhZ0t3QUFFRDFRQUFBQUVCY3Y2ekFBRUJ1Z0lRQUFFQmNnQUFBQUVBM2dGZUFBRUI1Z0t3QUFFQjVnQUFBQUVGSkFLd0FBRUVqd0FBQUFFQm9RTlNBQUVCbnY2ekFBRUQ0UUlRQUFFRDRmOHVBQUVCb0FOU0FBRUJvQVFqQUFFQm9BUUlBQUVCb0FPQkFBRUJvZjg5QUFFQm9RT0JBQUVCb1FObUFBRURkUU05QUFFQm9BTk9BQUVCb0FObUFBRUJvQVFFQUFFQ1hBS3dBQUVDWEFBQUFBRUJhUUt3QUFFQmFRQUFBQUVCZWdOU0FBRUJlZ0t3QUFFQmlmNnpBQUVCZWdObUFBRUJpUUFBQUFFQmNRTm1BQUVCWnY5UEFBRUJjUU5TQUFFQlp2NnpBQUVCWnY4OUFBRUJzd0t3QUFFQnN3QUFBQUVCYUFOU0FBRUJhQUFBQUFFQmFQOVBBQUVCYVA2ekFBRUJhQUt3QUFFQmFQODlBQUVCYUFFNkFBRUJvZ05TQUFFQm9nUUlBQUVCb2dRY0FBRUJvZ1FFQUFFQm9QODlBQUVCb2dPQkFBRURld042QUFFQm9nTk9BQUVCb2dLd0FBRUJvZ09PQUFFQm9nTm1BQUVDb3dMdEFBRUJvQUFBQUFFQ05nQUFBQUVCOWdLd0FBRUI5Z05TQUFFQjlnTm1BQUVCalFOU0FBRUJqUUt3QUFFQmkvODlBQUVCalFPQkFBRUJqUU5PQUFFQmpRTm1BQUVCaXdBQUFBRUJiQU5tQUFFQmJBTlNBQUVCYmdObUFBRUJoUUt3QUFFQmhRTlNBQUVCaFFOT0FBRUJoUU5tQUFFQmhRQUFBQUVCb0FLd0FBRUNuUUt3QUFFQm9RQUFBQUVDTkFBQUFBRUJvQUZZQUFFQmNRS3dBQUVCWmdBQUFBRUJiQUt3QUFFQmJBQUFBQUVCYkFGWUFBRUJRQU42QUFFQlFBT0VBQUVCUUFOd0FBRUJQdjg5QUFFQlFBTE9BQUVCUUFMRUFBRUJRQUlPQUFFQlFBTDJBQUVCUUFPc0FBRUJRQUs2QUFFQlBnQUFBQUVDU2dBQUFBRUNBd0lRQUFFQ0F3TEdBQUVDQXdBQUFBRUJUUDlQQUFFQlRRTEVBQUVCVGdLNkFBRUJUZ0t3QUFFQndnSnNBQUVEc1FMR0FBRUNoZ0lRQUFFRHNRQUFBQUVEc1FFSUFBRUJUQU44QUFFQlRBT0dBQUVCVEFOeUFBRUJUUUs4QUFFQlRBSVFBQUVCVVA4OUFBRUJUQUxRQUFFQlRBTEdBQUVCVEFLOEFBRUI2Z0FBQUFFQXV3S3dBQUVBdXdBQUFBRUJSQUlRQUFFQlJBTEdBQUVCUkFOSUFBRUJSUUs4QUFFQW5nTlNBQUVBbmdLd0FBRUEyUUpzQUFFQW9QODlBQUVBb0FMUUFBRUFvQUs4QUFFQXJ3QUFBQUVBb0FJUUFBRUFvQUxHQUFFQW9QOHVBQUVCV1FBQUFBRUJXUUt3QUFFQldmNnpBQUVBb0FObUFBRUFvUDZ6QUFFQjN3SVFBQUVCMy84dUFBRUFvQUt3QUFFQkt3SVFBQUVBb0FBQUFBRUFvQUZzQUFFQjlnSVFBQUVCOWdBQUFBRUJUd0xHQUFFQlVQNnpBQUVET3dJUUFBRURPLzh1QUFFQlR3SzhBQUVCVGdOOEFBRUJUZ09HQUFFQlR3Tm9BQUVDMmdLd0FBRUIvUUlRQUFFQi9RQUFBQUVCVFFJUUFBRUJUUUFBQUFFQTh3SVFBQUVBbnY2ekFBRUE4d0xHQUFFQk0vOVBBQUVCS2dMR0FBRUJNLzZ6QUFFQk0vODlBQUVBdVFLd0FBRUE3d0FBQUFFQTcvOVBBQUVBNy82ekFBRUE3Lzg5QUFFQTNnRUlBQUVCVGdOeUFBRUJUZ05vQUFFQlR2ODlBQUVDMHdMY0FBRUJUZ0w0QUFFQit3SThBQUVDTGdBQUFBRUJNZ0lRQUFFQk1nQUFBQUVCM0FJUUFBRUIzQUs4QUFFQjNBTEdBQUVCMkFBQUFBRUJXQUlRQUFFQlNBQUFBQUVCUGdJUUFBRUIrLzg5QUFFQlBnTEdBQUVCUGdMUUFBRUJQZ0s4QUFFQit3QUFBQUVCRmdMR0FBRUJGd0s4QUFFQlR2NXJBQUVCVGdMR0FBRUJUZ0xRQUFFQlRnSzhBQUVCVHY4dUFBRUJUUUlPQUFFQlRBQUFBQUVCVHdJUUFBRUJVQUFBQUFFQlRnSVFBQUVDQWdJUUFBRUJUZ0FBQUFFQjBBQUFBQUVCVGdFSUFBRUJLZ0lRQUFFQk13QUFBQUVCRmdJUUFBRUJGZ0FBQUFFQkZnRUlBQUVCb1FLd0FBRUJuZ0FBQUFFQlRRSmZBQUVCVEFCUkFBRUJpQUt3QUFFQmpRQUFBQUVCS2dKZ0FBRUJNd0JRQUFFQm13S3dBQUVCbVFBQUFBRUF1Z0FBQUFFQVRBQUFBQUVBZndBQUFBRUF1UUFBQUFFQW5nQUFBQUVBVFA4OUFBRUF1djgrQUFFQVRQNnpBQUVBZi85UEFBRUF1Zjg1QUFFQW52OWdBQUVBdWdJUUFBRUFTd0lRQUFFQW5RSVFBQUVBWkFJUUFBRUF2QUlRQUFFQWJRSVFBQUVBbmdJUUFBRUFXd0lRQUFFQkpnSVFBQUVBVEFJUUFBRUF1Z0t3QUFFQVNnS3dBQUVBblFLd0FBRUFYZ0t3QUFFQXR3S3dBQUVBZEFLd0FBRUFud0t3QUFFQVhBS3dBQUVCS1FLd0FBRUF4Z0lRQUFFQXVRSVFBQUVBMlFJUUFBRUEzZ0lRQUFFQXVBS3dBQUVBdmdLd0FBRUEzZ0t3QUFFQXVnSzhBQUVBeGdOeUFBRUF1Z055QUFFQTJRTnlBQUVBdWdOb0FBRUFUQUs4QUFFQW5nTm9BQUVBeGdMR0FBRUFaQUxHQUFFQXZBTEdBQUVBMlFMR0FBRUFiUUw0QUFFQWJRT3VBQUVBM2dLOEFBRUEzZ05vQUFFQW5nSzhBQUVBV3dMUUFBRUJKZ0xHQUFFQXVRTEdBQUVBVEFOSUFBRUFUQU1xQUFFQXVnTm1BQUVBdmdRY0FBRUF1Z1FjQUFFQXVnUUVBQUVBVEFObUFBRUFud1FFQUFFQXZnTm1BQUVBWGdObUFBRUF0d05tQUFFQTNnTlNBQUVBdUFOU0FBRUFkQU9PQUFFQWRBUkVBQUVBM2dObUFBRUEzZ1FFQUFFQW53Tk9BQUVBWEFPQkFBRUJLUU5tQUFFQXVBTm1BQUVBdVFOOEFBRUF4Z044QUFFQXVRT0dBQUVBMlFOOEFBRUEyUU9HQUFFQTNnTnlBQUVBdUFRSUFBRUF2Z1FJQUFFQTNnUUlBQUVBQUFJUUFBRUFBQUt3QUFFQTJBS3dBQUVBMkFNOUFBQUFBUUFCQUE0QUhBQ29BQUFBQUFBQ1JFWk1WQURvYkdGMGJnRHNBQmRoWVd4MEFSNWpZWE5sQVNaalkyMXdBU3hqWTIxd0FUaGtibTl0QVVabWNtRmpBVXhzYVdkaEFWWnNiblZ0QVZ4c2IyTnNBV0pzYjJOc0FXaHNiMk5zQVc1c2IyTnNBWFJzYjJOc0FYcHVkVzF5QVlCdmJuVnRBWVp2Y21SdUFZeHdiblZ0QVpSeWRuSnVBWnB6YVc1bUFhQnpkV0p6QWFaemRYQnpBYXgwYm5WdEFiSjZaWEp2QWJnQUpnRXlBVG9CUWdGUUFWQUJXQUZnQVdBQmFBRndBWGdCZ0FHSUFaQUJtQUdnQWFnQnNBR3dBYmdCMEFIQUFjZ0IwQUhZQWVJQjRnSHFBZlFCL0FJRUFnd0NGQUljQWlRQ0xBSTBBandDeGdBQUFmSUFDa0ZhUlNBQ3drTkJWQ0FDR2tOU1ZDQUN3a2RWUVNBQ1JFdEJXaUFDd2sxUFRDQUNibEJNU3lBQ21GSlBUU0FDd2xSQlZDQUN3bFJTU3lBQzZnQUFBQUlBQUFBQkFBQUFBUUFpQUFBQUJBQUNBQVVBQ0FBSkFBQUFCUUFDQUFVQUNBQUpBQWtBQUFBQkFCVUFBQUFEQUJZQUZ3QVlBQUFBQVFBakFBQUFBUUFlQUFBQUFRQU9BQUFBQVFBTUFBQUFBUUFMQUFBQUFRQU5BQUFBQVFBS0FBQUFBUUFVQUFBQUFRQWhBQUFBQWdBYkFCMEFBQUFCQUI4QUFBQUJBQ1VBQUFBQkFCSUFBQUFCQUJFQUFBQUJBQk1BQUFBQkFDQUFBQUFCQUNRQUFRQUFBQUVDTkFBREFBQUFBUUwwQUFZQUFBQUVBMFlEV0FOc0EzNEFBUUFBQUFFRGdnQUdBQUFBQVFQWUFBRUFBQUFCQStBQUJBQUFBQUVFTWdBRUFBQUFBUVJBQUFFQUFBQUJCRVlBQVFBQUFBRUVSQUFCQUFBQUFRUktBQUVBQUFBQkJHZ0FCZ0FBQUFFRWZBQUJBQUFBQVFSOEFBRUFBQUFCQkhvQUFRQUFBQUVFZUFBQkFBQUFBUVNNQUFFQUFBQUJCSW9BQVFBQUFBRUVpQUFCQUFBQUFRU0dBQVlBQUFBQ0JJUUVsZ0FCQUFBQUFRU2VBQVlBQUFBQ0JKd0VyZ0FCQUFBQUFRUzJBQVFBQUFBQkJMd0FBUUFBQUFFRXZBQUJBQUFBQVFTNkFBRUFBQUFCQk9BQUFRQUFBQUVGQmdBQkFBQUFBUVVzQUFRQUNBQUJCY29BQVFBQUFBRUZ5Z0FCQUFBQUFRWElBQUQvL3dBUkFBQUFBUUFEQUFRQUJRQUdBQWNBRFFBT0FBOEFFQUFTQUJNQUZBQVZBQllBRVFBQS8vOEFFZ0FBQUFFQUFnQUVBQVVBQmdBSEFBZ0FEUUFPQUE4QUVBQVNBQk1BRkFBVkFCWUFFUUFBLy84QUVnQUFBQUVBQWdBRUFBVUFCZ0FIQUFrQURRQU9BQThBRUFBU0FCTUFGQUFWQUJZQUVRQUEvLzhBRWdBQUFBRUFBZ0FFQUFVQUJnQUhBQW9BRFFBT0FBOEFFQUFTQUJNQUZBQVZBQllBRVFBQS8vOEFFZ0FBQUFFQUFnQUVBQVVBQmdBSEFBc0FEUUFPQUE4QUVBQVNBQk1BRkFBVkFCWUFFUUFBLy84QUVRQUFBQUVBQWdBRUFBVUFCZ0FIQUEwQURnQVBBQkFBRWdBVEFCUUFGUUFXQUJFQUFQLy9BQklBQUFBQkFBSUFCQUFGQUFZQUJ3QU1BQTBBRGdBUEFCQUFFZ0FUQUJRQUZRQVdBQkVBQWdTeUFHRUJ5Z0RjQU4wQnl3RGVBTjhBblFDbEFOVUExZ0RYQU5nQTJRRGFBTnNBNEFIS0FjQUJNUUhSQWNFQnl3SENBY01CZndHSEFiY0J1QUc1QWJvQnV3RzhBYjBCdmdHL0FjUUI1d0lUQWhRQ0ZRSVdBaGNDR0FJWkFob0NHd0ljQWtVQ1JnSXhBa2NDV0FKWkFsb0NXd0pjQXZvQyt3TDhBdjBDL2dML0F3QURBUU1DQXdNREJBTUZBd1lEQndNSUF3a0RDZ01MQXd3RERRTU9BdzhERUFNUkF4SURFd01VQXhZREZ3TVlBeGtER2dNYkF4d0RIUU1uQXlnREtRTXFBeXNETEFBQkNJUUFLZ1N3Qk1BRXpnVGNCT29FK0FVR0JSUUZJZ1V3QlQ0RlVnVmFCV0lGYWdWeUJYb0ZnZ1dLQlpJRlNBVlNCVm9GWWdWcUJYSUZlZ1dDQllvRmtnV2FCYUlGcUFXdUJiUUZ1Z1hBQmNZRnpBWFNCZGdGM2dBREFBQUFBUVdLQUFFRm9nQUJBQUFBQXdBREFBQUFBUVY0QUFJRmdBV1FBQUVBQUFBRUFBTUFBUVlnQUFFR0lBQUFBQUVBQUFBREFBTUFBUVdNQUFFR0RnQUFBQUVBQUFBRUFBSUZpZ0FzQVNvQk93TDZBdnNDL0FMOUF2NEMvd01BQXdFREFnTURBd1FEQlFNR0F3Y0RDQU1KQXdvREN3TU1BdzBERGdNUEF4QURFUU1TQXhNREZBTVZBeFlERndNWUF4a0RHZ01iQXh3REhRTW5BeWdES1FNcUF5c0RMQUFDQlo0RmlBVmdCWWdBQWdBQUJaZ0FBZ1dPQUNvQytnTDdBdndDL1FMK0F2OERBQU1CQXdJREF3TUVBd1VEQmdNSEF3Z0RDUU1LQXdzRERBTU5BdzRERHdNUUF4RURFZ01UQXhRREZRTVdBeGNER0FNWkF4b0RHd01jQXgwREp3TW9BeWtES2dNckF5d0FBUWhPQUFnRlhBVm1CV29GYmdWeUJYd0ZnQVdFQUFFSVRBQUVCWElGZkFXR0JZNEFBUVdJQUFnQUFnV0lBQVFBblFDbEFYOEJod0FDQllZQUVBRFZBTllBMXdEWUFOa0EyZ0RiQWJjQnVBRzVBYm9CdXdHOEFiMEJ2Z0cvQUFJRmZBQUxBTndBM1FEZUFOOEE0QUhBQWNFQndnSERBY1FESGdBQkJZQUFBUVY2QUFFRmVBQUtBQUVGY2dBSkFBSUZjZ0FMQWRFQ0NRSUtBZ3NDREFJTkFnNENEd0lRQWhFQ0VnQUJCWTRBVlFBQkJZZ0FRUUFCQlZyLzdnQUJCWHdBU3dBREFBRUZWQUFCQldRQUFBQUJBQUFBR1FBREFBRUZTQUFCQlZJQUFBQUJBQUFBR2dBQkJVRC85Z0FEQUFFRlRBQUJCVVFBQUFBQkFBQUFIQUFEQUFFRk9nQUJCVVFBQUFBQkFBQUFIQUFDQlRvQUJBSEtBY3NCeWdITEFBRUhVQUFCQlRnQUFRVTAvK29BQWdVNEFCUUIwZ0hUQWRRQjFRSFdBZGNCMkFIWkFkb0Iyd0hvQWVrQjZnSHJBZXdCN1FIdUFlOEI4QUh4QUFJRkdnQVVBZk1COUFIMUFmWUI5d0g0QWZrQitnSDdBZndCL2dIL0FnQUNBUUlDQWdNQ0JBSUZBZ1lDQndBQ0JQd0FGQUhvQWVrQjZnSHJBZXdCN1FIdUFlOEI4QUh4QWY0Qi93SUFBZ0VDQWdJREFnUUNCUUlHQWdjQUFnVGVBRkFCM1FIZUFkOEI0QUhoQWVJQjR3SGtBZVVCNWdIZEFkNEIzd0hnQWVFQjRnSGpBZVFCNVFIbUFkMEIzZ0hmQWVBQjRRSGlBZU1CNUFIbEFlWUNSUUpHQWtjQ1dBSlpBbG9DV3dKY0F2b0Mrd0w4QXYwQy9nTC9Bd0FEQVFNQ0F3TURCQU1GQXdZREJ3TUlBd2tEQ2dNTEF3d0REUU1PQXc4REVBTVJBeElERXdNVUF4VURGZ01YQXhnREdRTWFBeHNESEFNZEF5Y0RLQU1wQXlvREt3TXNBQUVHR0FBQkJKQUFBUVNVQUFvQUFnU2NBQWNETUFNeEF6SURNd00wQXpVRE5nQUJBR0VBQVFBZkFHZ0Fid0J3QUprQW13Q2tBTWdBeVFES0FNc0F6UURQQU5BQTBnRGhBUDhCS1FGSUFVa0JVUUZTQVhzQmZRR0dBYW9CcXdHc0FhMEJyZ0d2QWJBQnNRR3lBYlFCM1FJZEFoNENId0lnQWlFQ0lnSWpBaVFDSlFJbUFqc0NQUUpEQWtnQ1R3SlFBbEVDVWdKVkFzb0N5d0xNQXMwQ3pnTFBBdEFDMFFMU0F0TUMxQUxWQXRZQzF3TFlBdGtDMmdMYkF0d0MzUUxlQXVFQzZ3THNBdTBDN2dMdkF2RUM4Z0x6QXZRQzlRTDJBdmNESGdNZkF5QURJZ01qQXlRREpnQUhBZHdCNkFIekFna0NFd0lkQWljQUJnSHBBZlFDQ2dJVUFoNENLQUFHQWVvQjlRSUxBaFVDSHdJcEFBWUI2d0gyQWd3Q0ZnSWdBaW9BQmdIc0FmY0NEUUlYQWlFQ0t3QUdBZTBCK0FJT0FoZ0NJZ0lzQUFZQjdnSDVBZzhDR1FJakFpMEFCZ0h2QWZvQ0VBSWFBaVFDTGdBR0FmQUIrd0lSQWhzQ0pRSXZBQVlCOFFIOEFoSUNIQUltQWpBQUJBSFNBZDBCOGdIK0FBUUIwZ0hkQWYwQi9nQURBZE1CM2dIL0FBTUIxQUhmQWdBQUF3SFZBZUFDQVFBREFkWUI0UUlDQUFNQjF3SGlBZ01BQXdIWUFlTUNCQUFEQWRrQjVBSUZBQU1CMmdIbEFnWUFBd0hiQWVZQ0J3QURBZDBCNkFJSUFBSUIzZ0hwQUFJQjN3SHFBQUlCNEFIckFBSUI0UUhzQUFJQjRnSHRBQUlCNHdIdUFBSUI1QUh2QUFJQjVRSHdBQUlCNWdIeEFBSUNSd0pJQUFJREZRTWVBQUVBQWdFcEFUb0FBZ0FDQXVFQzR3QUFBdVVDN0FBREFBSUFCUUxLQXNvQUFBTFBBczhBQVFMUkF0Y0FBZ0xaQXRrQUNRTGJBdUFBQ2dBQ0FBSUFBUURnQUFBQnpRSE9BT0FBQWdBSUFTa0JLUUFBQVRvQk9nQUJBc29DM2dBQ0F1RUM0UUFYQXVzQzl3QVlBeDRESUFBbEF5SURKQUFvQXlZREpnQXJBQUlBQmdMS0F0NEFBUUxoQXVFQUFRTHJBdmNBQVFNZUF5QUFBUU1pQXlRQUFRTW1BeVlBQVFBQ0FBSUMrZ01kQUFFREp3TXNBQUVBQWdJU0FpQUFBZ0FHQXNvQzNnQUFBdUVDNFFBVkF1c0M5d0FXQXg0RElBQWpBeUlESkFBbUF5WURKZ0FwQUFRQ0FBSUdBZ3dDRWdBQkFnNEFBUUlRQUFFQ0VnQUVBaFFDR2dJZ0FpWUFBUUlpQUFFQ0pBQUJBaVlBQkFJb0FpNENOQUk2QUFRQ05nSThBa0lDU0FBREFrUUNTZ0pRQUFNQ1RnSlVBbG9BQVFBQkFTa0FBUUFFQUpzQXBBRjlBWVlBQWdBRUFNZ0F5d0FBQU0wQXpRQUVBTThBMEFBRkFhb0JzZ0FIQUFFQUN3QWZBR2dBY0FDWkFOSUEvd0ZKQVZJQmV3RzBBdkFBQWdJUUFpQUFBUUFCQWo0QUFnQUNBVWdCU0FBQUFkSUIyd0FCQUFFQUFRSkRBQUVBQVFJeEFBSUFBUUlUQWh3QUFBQUNBQUVDSFFJbUFBQUFBUUFDQUFFQTRRQUNBQUVCMGdIYkFBQUFBUUFDQUc4QlVRQUJBQVFBQVFCdkFPRUJVUUFCQWM0QUFnQUJBZWdCOFFBQUFBSUFBZ0h6QWZ3QUFBSCtBZ2NBQ2dBQ0FBSUIwZ0hiQUFBQjZBSHhBQW9BQWdBQ0FkSUIyd0FBQWZNQi9BQUtBQUlBRGdIb0FmRUFBQUh6QWZ3QUNnSCtBZ2NBRkFJN0Fqc0FIZ0k5QWowQUh3SklBa2dBSUFKUEFsSUFJUUpWQWxVQUpRTEtBdDRBSmdMaEF1RUFPd0xyQXZjQVBBTWVBeUFBU1FNaUF5UUFUQU1tQXlZQVR3QUZBVUFCU0FGUUFWWUJYQUFCQUFVQjBnSGRBZWdCOHdIK0FBRUFCd0p3QW5FQ2NnSjBBbmtDZmdLRUFBSUFCZ0hTQWRzQUFBSG9BZkVBQ2dIekFmd0FGQUgrQWdjQUhnSStBajRBS0FMd0F2QUFLUUFBQUFFQUFRQUJBQUVBQUFBR0FBRUFBUUFCQUFBQUFRQUFBQWNDekFBQ0F0SUN6UUFDQXRVQ3l3QUNBdEVDemdBQ0F0c0MwQUFDQXRzQzJBQUNBdElDMmdBQ0F0c0MvQUFDQXdJQy9RQUNBd1VDK3dBQ0F3RUMvZ0FDQXdzREFBQUNBd3NEQ0FBQ0F3SURDZ0FDQXdzREl3QUNBdElESkFBQ0F0RURKUUFDQXR3REpnQUNBdGtESHdBQ0F0SURJQUFDQXRFRElRQUNBdHdESWdBQ0F0a0RLZ0FDQXdJREt3QUNBd0VETEFBQ0F3a0RKd0FDQXdJREtBQUNBd0VES1FBQ0F3a0FBUUZBQUFFQUFRRkFBQUVBQUFBUEFBRUFYUUFCQUFFQVhRQUJBQUFBRUFMREFBTUJVUUkxQWNZQUF3RWVBU2tCeHdBREFSNEJRQUhGQUFJQkhnSElBQUlCS1FISkFBSUJRQUFCQUFnQ3lnTFBBdGNDMlFMNkF2OERCd01KQUFFQUJBTFVBdFlEQkFNR0FBRUFBUUJtQUFFQUFRRWVBQUVBQVFBSUFBTUFBQUFVQUFNQUFBQXNBQUozWkhSb0FRRUFBSGRuYUhRQkFBQUJhWFJoYkFFYUFBSUFCZ0FTQUI0QUFRQUFBQUlCRndCa0FBQUFBUUFCQUFBQkNnT0VBQUFBQXdBQ0FBSUJHd0FBQUFBQUFRQUFBQUE9In0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0MzcpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3RvcihBLGUpe3RoaXMuX21ha2VJbWFnZT1BfHwoKCk9Pm5ldyBJbWFnZSksdGhpcy5fbWFrZUNhbnZhcz1lfHwoKCk9PmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpKSx0aGlzLnN0YWdlV2lkdGg9NDgwLHRoaXMuc3RhZ2VIZWlnaHQ9MzYwfXNldFN0YWdlU2l6ZShBLGUpe3RoaXMuc3RhZ2VXaWR0aD1BLHRoaXMuc3RhZ2VIZWlnaHQ9ZX1yZXNpemUoQSxlLHQpe2NvbnN0IG49dGhpcy5fbWFrZUNhbnZhcygpO24ud2lkdGg9ZSxuLmhlaWdodD1BLmhlaWdodDtsZXQgaT1uLmdldENvbnRleHQoIjJkIik7aS5pbWFnZVNtb290aGluZ0VuYWJsZWQ9ITEsaS5kcmF3SW1hZ2UoQSwwLDAsbi53aWR0aCxuLmhlaWdodCk7Y29uc3Qgcj10aGlzLl9tYWtlQ2FudmFzKCk7cmV0dXJuIHIud2lkdGg9ZSxyLmhlaWdodD10LGk9ci5nZXRDb250ZXh0KCIyZCIpLGkuaW1hZ2VTbW9vdGhpbmdFbmFibGVkPSExLGkuZHJhd0ltYWdlKG4sMCwwLHIud2lkdGgsci5oZWlnaHQpLHJ9Y29udmVydFJlc29sdXRpb24xQml0bWFwKEEsZSl7Y29uc3QgdD10aGlzLl9tYWtlSW1hZ2UoKTt0LnNyYz1BLHQub25sb2FkPSgpPT57ZShudWxsLHRoaXMucmVzaXplKHQsMip0LndpZHRoLDIqdC5oZWlnaHQpLnRvRGF0YVVSTCgpKX0sdC5vbmVycm9yPSgpPT57ZSgiSW1hZ2UgbG9hZCBmYWlsZWQiKX19Z2V0UmVzaXplZFdpZHRoSGVpZ2h0KEEsZSl7Y29uc3QgdD10aGlzLnN0YWdlV2lkdGgsbj10aGlzLnN0YWdlSGVpZ2h0O2lmKEE8PXQmJmU8PW4pcmV0dXJue3dpZHRoOjIqQSxoZWlnaHQ6MiplfTtpZihBPD0yKnQmJmU8PTIqbilyZXR1cm57d2lkdGg6QSxoZWlnaHQ6ZX07Y29uc3QgaT1BL2U7cmV0dXJuIGk+PXQvbj97d2lkdGg6Mip0LGhlaWdodDoyKnQvaX06e3dpZHRoOjIqbippLGhlaWdodDoyKm59fWltcG9ydEJpdG1hcChBLGUpe2xldCB0PUE7cmV0dXJuIEEgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlciYmKHQ9dGhpcy5jb252ZXJ0QmluYXJ5VG9EYXRhVVJJKEEsZSkpLG5ldyBQcm9taXNlKChBLGUpPT57Y29uc3Qgbj10aGlzLl9tYWtlSW1hZ2UoKTtuLnNyYz10LG4ub25sb2FkPSgpPT57Y29uc3QgZT10aGlzLmdldFJlc2l6ZWRXaWR0aEhlaWdodChuLndpZHRoLG4uaGVpZ2h0KSx0PXRoaXMucmVzaXplKG4sZS53aWR0aCxlLmhlaWdodCkudG9EYXRhVVJMKCk7QSh0aGlzLmNvbnZlcnREYXRhVVJJVG9CaW5hcnkodCkpfSxuLm9uZXJyb3I9KCk9PntlKCJJbWFnZSBsb2FkIGZhaWxlZCIpfX0pfWNvbnZlcnREYXRhVVJJVG9CaW5hcnkoQSl7Y29uc3QgZT1BLmluZGV4T2YoIjtiYXNlNjQsIikrIjtiYXNlNjQsIi5sZW5ndGgsdD1BLnN1YnN0cmluZyhlKSxuPXdpbmRvdy5hdG9iKHQpLGk9bi5sZW5ndGgscj1uZXcgVWludDhBcnJheShuZXcgQXJyYXlCdWZmZXIoaSkpO2ZvcihsZXQgQT0wO0E8aTtBKyspcltBXT1uLmNoYXJDb2RlQXQoQSk7cmV0dXJuIHJ9Y29udmVydEJpbmFyeVRvRGF0YVVSSShBLGUpe3JldHVybiJkYXRhOiIuY29uY2F0KGUsIjtiYXNlNjQsIikuY29uY2F0KG4uZnJvbUJ5dGVBcnJheShuZXcgVWludDhBcnJheShBKSkpfX19LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5ieXRlTGVuZ3RoPWZ1bmN0aW9uKEEpe3JldHVybiAzKkEubGVuZ3RoLzQtQihBKX0sZS50b0J5dGVBcnJheT1mdW5jdGlvbihBKXt2YXIgZSx0LG4sbyxzLGE9QS5sZW5ndGg7bz1CKEEpLHM9bmV3IHIoMyphLzQtbyksdD1vPjA/YS00OmE7dmFyIGM9MDtmb3IoZT0wO2U8dDtlKz00KW49aVtBLmNoYXJDb2RlQXQoZSldPDwxOHxpW0EuY2hhckNvZGVBdChlKzEpXTw8MTJ8aVtBLmNoYXJDb2RlQXQoZSsyKV08PDZ8aVtBLmNoYXJDb2RlQXQoZSszKV0sc1tjKytdPW4+PjE2JjI1NSxzW2MrK109bj4+OCYyNTUsc1tjKytdPTI1NSZuOzI9PT1vPyhuPWlbQS5jaGFyQ29kZUF0KGUpXTw8MnxpW0EuY2hhckNvZGVBdChlKzEpXT4+NCxzW2MrK109MjU1Jm4pOjE9PT1vJiYobj1pW0EuY2hhckNvZGVBdChlKV08PDEwfGlbQS5jaGFyQ29kZUF0KGUrMSldPDw0fGlbQS5jaGFyQ29kZUF0KGUrMildPj4yLHNbYysrXT1uPj44JjI1NSxzW2MrK109MjU1Jm4pO3JldHVybiBzfSxlLmZyb21CeXRlQXJyYXk9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlLHQ9QS5sZW5ndGgsaT10JTMscj0iIixvPVtdLHM9MCxhPXQtaTtzPGE7cys9MTYzODMpby5wdXNoKGMoQSxzLHMrMTYzODM+YT9hOnMrMTYzODMpKTsxPT09aT8oZT1BW3QtMV0scis9bltlPj4yXSxyKz1uW2U8PDQmNjNdLHIrPSI9PSIpOjI9PT1pJiYoZT0oQVt0LTJdPDw4KStBW3QtMV0scis9bltlPj4xMF0scis9bltlPj40JjYzXSxyKz1uW2U8PDImNjNdLHIrPSI9Iik7cmV0dXJuIG8ucHVzaChyKSxvLmpvaW4oIiIpfTtmb3IodmFyIG49W10saT1bXSxyPSJ1bmRlZmluZWQiIT10eXBlb2YgVWludDhBcnJheT9VaW50OEFycmF5OkFycmF5LG89IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLHM9MCxhPW8ubGVuZ3RoO3M8YTsrK3MpbltzXT1vW3NdLGlbby5jaGFyQ29kZUF0KHMpXT1zO2Z1bmN0aW9uIEIoQSl7dmFyIGU9QS5sZW5ndGg7aWYoZSU0PjApdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIHN0cmluZy4gTGVuZ3RoIG11c3QgYmUgYSBtdWx0aXBsZSBvZiA0Iik7cmV0dXJuIj0iPT09QVtlLTJdPzI6Ij0iPT09QVtlLTFdPzE6MH1mdW5jdGlvbiBjKEEsZSx0KXtmb3IodmFyIGkscixvPVtdLHM9ZTtzPHQ7cys9MylpPShBW3NdPDwxNikrKEFbcysxXTw8OCkrQVtzKzJdLG8ucHVzaChuWyhyPWkpPj4xOCY2M10rbltyPj4xMiY2M10rbltyPj42JjYzXStuWzYzJnJdKTtyZXR1cm4gby5qb2luKCIiKX1pWyItIi5jaGFyQ29kZUF0KDApXT02MixpWyJfIi5jaGFyQ29kZUF0KDApXT02M30sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxMDUpLGk9dCg2OSkscj17c2FuaXRpemVCeXRlU3RyZWFtOmZ1bmN0aW9uKEEpe2NvbnN0IGU9bmV3IFRleHREZWNvZGVyLHQ9bmV3IFRleHRFbmNvZGVyLG49ci5zYW5pdGl6ZVN2Z1RleHQoZS5kZWNvZGUoQSkpO3JldHVybiB0LmVuY29kZShuKX19LG89IjwhIi5jb25jYXQoIi0iLnJlcGVhdCgyKSkscz0iIi5jb25jYXQoIi0iLnJlcGVhdCgyKSwiPiIpLGE9bmV3IFJlZ0V4cCgiIi5jb25jYXQobywicm90YXRpb25DZW50ZXI6KC0/W1xcZFxcLl0rKTooLT9bXFxkXFwuXSspIikuY29uY2F0KHMsIiQiKSk7ci5zYW5pdGl6ZVN2Z1RleHQ9ZnVuY3Rpb24oQSl7bGV0IGU9aS5zYW5pdGl6ZShBLHtVU0VfUFJPRklMRVM6e3N2ZzohMH19KTtlLmluZGV4T2YoIl0mZ3Q7Iik+PTAmJihlPWUuc3Vic3RyaW5nKDUsZS5sZW5ndGgpKSxlPW4oZSk7Y29uc3QgdD1BLm1hdGNoKGEpO3JldHVybiB0JiYoZSs9dFswXSksZX0sQS5leHBvcnRzPXJ9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPUE9Pntjb25zdCBlPShuZXcgVGV4dERlY29kZXIpLmRlY29kZShBKSx0PShuZXcgRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoZSwiaW1hZ2Uvc3ZnK3htbCIpLG49dC5kb2N1bWVudEVsZW1lbnQ7bGV0IGk9ITE7aWYoaT0oQT0+IjEwMCUiPT09QS5nZXRBdHRyaWJ1dGUoIndpZHRoIikmJiIxMDAlIj09PUEuZ2V0QXR0cmlidXRlKCJoZWlnaHQiKSYmKEEucmVtb3ZlQXR0cmlidXRlKCJ3aWR0aCIpLEEucmVtb3ZlQXR0cmlidXRlKCJoZWlnaHQiKSwhMCkpKG4pfHxpLGk9KEE9PntsZXQgZT0hMTtjb25zdCB0PUE9PnsicmVjdCI9PT1BLnRhZ05hbWUmJihBLmhhc0F0dHJpYnV0ZSgicngiKSYmIUEuaGFzQXR0cmlidXRlKCJyeSIpPyhlPSEwLEEuc2V0QXR0cmlidXRlKCJyeSIsQS5nZXRBdHRyaWJ1dGUoInJ4IikpKTpBLmhhc0F0dHJpYnV0ZSgicnkiKSYmIUEuaGFzQXR0cmlidXRlKCJyeCIpJiYoZT0hMCxBLnNldEF0dHJpYnV0ZSgicngiLEEuZ2V0QXR0cmlidXRlKCJyeSIpKSkpO2NvbnN0IG49QS5jaGlsZE5vZGVzO2lmKG4pZm9yKGxldCBBPTA7QTxuLmxlbmd0aDtBKyspdChuW0FdKX07cmV0dXJuIHQoQSksZX0pKG4pfHxpLGkpe2NvbnN0IEE9KG5ldyBYTUxTZXJpYWxpemVyKS5zZXJpYWxpemVUb1N0cmluZyh0KTtyZXR1cm4obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoQSl9cmV0dXJuIEF9fSxmdW5jdGlvbihBLGUpe2NvbnN0IHQ9ZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dD9bQS5nZXRUYXJnZXRCeUlkKHQpXTpBLnRhcmdldHMsaT1bXTtmb3IobGV0IEE9MDtBPG4ubGVuZ3RoO0ErKyl7Y29uc3QgdD1uW0FdLnNwcml0ZVtlXTtmb3IobGV0IEE9MDtBPHQubGVuZ3RoO0ErKyl7Y29uc3QgZT10W0FdLG49ZS5icm9rZW4/ZS5icm9rZW4uYXNzZXQ6ZS5hc3NldDtuJiZpLnB1c2goe2ZpbGVOYW1lOiIiLmNvbmNhdChuLmFzc2V0SWQsIi4iKS5jb25jYXQobi5kYXRhRm9ybWF0KSxmaWxlQ29udGVudDpuLmRhdGF9KX19cmV0dXJuIGl9O0EuZXhwb3J0cz17c2VyaWFsaXplU291bmRzOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHQoQSwic291bmRzIixlKX0sc2VyaWFsaXplQ29zdHVtZXM6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdChBLCJjb3N0dW1lcyIsZSl9fX0sZnVuY3Rpb24oQSxlKXsKLyohIEBzb3VyY2UgaHR0cDovL3B1cmwuZWxpZ3JleS5jb20vZ2l0aHViL2NhbnZhcy10b0Jsb2IuanMvYmxvYi9tYXN0ZXIvY2FudmFzLXRvQmxvYi5qcyAqLwohZnVuY3Rpb24oQSl7InVzZSBzdHJpY3QiO3ZhciBlLHQ9QS5VaW50OEFycmF5LG49QS5IVE1MQ2FudmFzRWxlbWVudCxpPW4mJm4ucHJvdG90eXBlLHI9L1xzKjtccypiYXNlNjRccyooPzo7fCQpL2ksbz0idG9EYXRhVVJMIixzPWZ1bmN0aW9uKEEpe2Zvcih2YXIgbixpLHI9QS5sZW5ndGgsbz1uZXcgdChyLzQqM3wwKSxzPTAsYT0wLEI9WzAsMF0sYz0wLGc9MDtyLS07KWk9QS5jaGFyQ29kZUF0KHMrKyksMjU1IT09KG49ZVtpLTQzXSkmJnZvaWQgMCE9PW4mJihCWzFdPUJbMF0sQlswXT1pLGc9Zzw8NnxuLDQ9PT0rK2MmJihvW2ErK109Zz4+PjE2LDYxIT09QlsxXSYmKG9bYSsrXT1nPj4+OCksNjEhPT1CWzBdJiYob1thKytdPWcpLGM9MCkpO3JldHVybiBvfTt0JiYoZT1uZXcgdChbNjIsLTEsLTEsLTEsNjMsNTIsNTMsNTQsNTUsNTYsNTcsNTgsNTksNjAsNjEsLTEsLTEsLTEsMCwtMSwtMSwtMSwwLDEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0LDE1LDE2LDE3LDE4LDE5LDIwLDIxLDIyLDIzLDI0LDI1LC0xLC0xLC0xLC0xLC0xLC0xLDI2LDI3LDI4LDI5LDMwLDMxLDMyLDMzLDM0LDM1LDM2LDM3LDM4LDM5LDQwLDQxLDQyLDQzLDQ0LDQ1LDQ2LDQ3LDQ4LDQ5LDUwLDUxXSkpLCFufHxpLnRvQmxvYiYmaS50b0Jsb2JIRHx8KGkudG9CbG9ifHwoaS50b0Jsb2I9ZnVuY3Rpb24oQSxlKXtpZihlfHwoZT0iaW1hZ2UvcG5nIiksdGhpcy5tb3pHZXRBc0ZpbGUpQSh0aGlzLm1vekdldEFzRmlsZSgiY2FudmFzIixlKSk7ZWxzZSBpZih0aGlzLm1zVG9CbG9iJiYvXlxzKmltYWdlXC9wbmdccyooPzokfDspL2kudGVzdChlKSlBKHRoaXMubXNUb0Jsb2IoKSk7ZWxzZXt2YXIgbixpPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxhPXRoaXNbb10uYXBwbHkodGhpcyxpKSxCPWEuaW5kZXhPZigiLCIpLGM9YS5zdWJzdHJpbmcoQisxKSxnPXIudGVzdChhLnN1YnN0cmluZygwLEIpKTtCbG9iLmZha2U/KChuPW5ldyBCbG9iKS5lbmNvZGluZz1nPyJiYXNlNjQiOiJVUkkiLG4uZGF0YT1jLG4uc2l6ZT1jLmxlbmd0aCk6dCYmKG49Zz9uZXcgQmxvYihbcyhjKV0se3R5cGU6ZX0pOm5ldyBCbG9iKFtkZWNvZGVVUklDb21wb25lbnQoYyldLHt0eXBlOmV9KSksQShuKX19KSwhaS50b0Jsb2JIRCYmaS50b0RhdGFVUkxIRD9pLnRvQmxvYkhEPWZ1bmN0aW9uKCl7bz0idG9EYXRhVVJMSEQiO3ZhciBBPXRoaXMudG9CbG9iKCk7cmV0dXJuIG89InRvRGF0YVVSTCIsQX06aS50b0Jsb2JIRD1pLnRvQmxvYil9KCJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZnx8InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvd3x8dGhpcy5jb250ZW50fHx0aGlzKX0sZnVuY3Rpb24obW9kdWxlLGV4cG9ydHMpe3ZhciBpbmRleE9mPWZ1bmN0aW9uKEEsZSl7aWYoQS5pbmRleE9mKXJldHVybiBBLmluZGV4T2YoZSk7Zm9yKHZhciB0PTA7dDxBLmxlbmd0aDt0KyspaWYoQVt0XT09PWUpcmV0dXJuIHQ7cmV0dXJuLTF9LE9iamVjdF9rZXlzPWZ1bmN0aW9uKEEpe2lmKE9iamVjdC5rZXlzKXJldHVybiBPYmplY3Qua2V5cyhBKTt2YXIgZT1bXTtmb3IodmFyIHQgaW4gQSllLnB1c2godCk7cmV0dXJuIGV9LGZvckVhY2g9ZnVuY3Rpb24oQSxlKXtpZihBLmZvckVhY2gpcmV0dXJuIEEuZm9yRWFjaChlKTtmb3IodmFyIHQ9MDt0PEEubGVuZ3RoO3QrKyllKEFbdF0sdCxBKX0sZGVmaW5lUHJvcD1mdW5jdGlvbigpe3RyeXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJfIix7fSksZnVuY3Rpb24oQSxlLHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShBLGUse3dyaXRhYmxlOiEwLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwLHZhbHVlOnR9KX19Y2F0Y2goQSl7cmV0dXJuIGZ1bmN0aW9uKEEsZSx0KXtBW2VdPXR9fX0oKSxnbG9iYWxzPVsiQXJyYXkiLCJCb29sZWFuIiwiRGF0ZSIsIkVycm9yIiwiRXZhbEVycm9yIiwiRnVuY3Rpb24iLCJJbmZpbml0eSIsIkpTT04iLCJNYXRoIiwiTmFOIiwiTnVtYmVyIiwiT2JqZWN0IiwiUmFuZ2VFcnJvciIsIlJlZmVyZW5jZUVycm9yIiwiUmVnRXhwIiwiU3RyaW5nIiwiU3ludGF4RXJyb3IiLCJUeXBlRXJyb3IiLCJVUklFcnJvciIsImRlY29kZVVSSSIsImRlY29kZVVSSUNvbXBvbmVudCIsImVuY29kZVVSSSIsImVuY29kZVVSSUNvbXBvbmVudCIsImVzY2FwZSIsImV2YWwiLCJpc0Zpbml0ZSIsImlzTmFOIiwicGFyc2VGbG9hdCIsInBhcnNlSW50IiwidW5kZWZpbmVkIiwidW5lc2NhcGUiXTtmdW5jdGlvbiBDb250ZXh0KCl7fUNvbnRleHQucHJvdG90eXBlPXt9O3ZhciBTY3JpcHQ9ZXhwb3J0cy5TY3JpcHQ9ZnVuY3Rpb24oQSl7aWYoISh0aGlzIGluc3RhbmNlb2YgU2NyaXB0KSlyZXR1cm4gbmV3IFNjcmlwdChBKTt0aGlzLmNvZGU9QX07U2NyaXB0LnByb3RvdHlwZS5ydW5JbkNvbnRleHQ9ZnVuY3Rpb24oQSl7aWYoIShBIGluc3RhbmNlb2YgQ29udGV4dCkpdGhyb3cgbmV3IFR5cGVFcnJvcigibmVlZHMgYSAnY29udGV4dCcgYXJndW1lbnQuIik7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7ZS5zdHlsZXx8KGUuc3R5bGU9e30pLGUuc3R5bGUuZGlzcGxheT0ibm9uZSIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlKTt2YXIgdD1lLmNvbnRlbnRXaW5kb3csbj10LmV2YWwsaT10LmV4ZWNTY3JpcHQ7IW4mJmkmJihpLmNhbGwodCwibnVsbCIpLG49dC5ldmFsKSxmb3JFYWNoKE9iamVjdF9rZXlzKEEpLChmdW5jdGlvbihlKXt0W2VdPUFbZV19KSksZm9yRWFjaChnbG9iYWxzLChmdW5jdGlvbihlKXtBW2VdJiYodFtlXT1BW2VdKX0pKTt2YXIgcj1PYmplY3Rfa2V5cyh0KSxvPW4uY2FsbCh0LHRoaXMuY29kZSk7cmV0dXJuIGZvckVhY2goT2JqZWN0X2tleXModCksKGZ1bmN0aW9uKGUpeyhlIGluIEF8fC0xPT09aW5kZXhPZihyLGUpKSYmKEFbZV09dFtlXSl9KSksZm9yRWFjaChnbG9iYWxzLChmdW5jdGlvbihlKXtlIGluIEF8fGRlZmluZVByb3AoQSxlLHRbZV0pfSkpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZSksb30sU2NyaXB0LnByb3RvdHlwZS5ydW5JblRoaXNDb250ZXh0PWZ1bmN0aW9uKCl7cmV0dXJuIGV2YWwodGhpcy5jb2RlKX0sU2NyaXB0LnByb3RvdHlwZS5ydW5Jbk5ld0NvbnRleHQ9ZnVuY3Rpb24oQSl7dmFyIGU9U2NyaXB0LmNyZWF0ZUNvbnRleHQoQSksdD10aGlzLnJ1bkluQ29udGV4dChlKTtyZXR1cm4gQSYmZm9yRWFjaChPYmplY3Rfa2V5cyhlKSwoZnVuY3Rpb24odCl7QVt0XT1lW3RdfSkpLHR9LGZvckVhY2goT2JqZWN0X2tleXMoU2NyaXB0LnByb3RvdHlwZSksKGZ1bmN0aW9uKEEpe2V4cG9ydHNbQV09U2NyaXB0W0FdPWZ1bmN0aW9uKGUpe3ZhciB0PVNjcmlwdChlKTtyZXR1cm4gdFtBXS5hcHBseSh0LFtdLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpKX19KSksZXhwb3J0cy5pc0NvbnRleHQ9ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBDb250ZXh0fSxleHBvcnRzLmNyZWF0ZVNjcmlwdD1mdW5jdGlvbihBKXtyZXR1cm4gZXhwb3J0cy5TY3JpcHQoQSl9LGV4cG9ydHMuY3JlYXRlQ29udGV4dD1TY3JpcHQuY3JlYXRlQ29udGV4dD1mdW5jdGlvbihBKXt2YXIgZT1uZXcgQ29udGV4dDtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIEEmJmZvckVhY2goT2JqZWN0X2tleXMoQSksKGZ1bmN0aW9uKHQpe2VbdF09QVt0XX0pKSxlfX0sZnVuY3Rpb24oQSxlKXsoZnVuY3Rpb24oZSl7QS5leHBvcnRzPWV9KS5jYWxsKHRoaXMse30pfSxmdW5jdGlvbihBLGUpe2NvbnN0IHQ9ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVohIyUoKSorLC0uLzo7PT9AW11eX2B7fH1+IixuPUE9PntsZXQgZT0iIjtmb3IoO0E+PTA7KWU9dFtBJXQubGVuZ3RoXStlLEE9TWF0aC5mbG9vcihBL3QubGVuZ3RoKS0xO3JldHVybiBlfTtjbGFzcyBpe2NvbnN0cnVjdG9yKCl7dGhpcy5nZW5lcmF0ZWRJZHM9bmV3IE1hcCx0aGlzLnJlZmVyZW5jZXM9bmV3IE1hcCx0aGlzLnNraXBwZWRJZHM9bmV3IFNldCx0aGlzLnNraXBwZWRJZHMuYWRkKCJvZiIpfXNraXAoQSl7dGhpcy5za2lwcGVkSWRzLmFkZChBKX1hZGRSZWZlcmVuY2UoQSl7Y29uc3QgZT10aGlzLnJlZmVyZW5jZXMuZ2V0KEEpfHwwO3RoaXMucmVmZXJlbmNlcy5zZXQoQSxlKzEpfWdlbmVyYXRlTmV3SWRzKCl7Y29uc3QgQT1BcnJheS5mcm9tKHRoaXMucmVmZXJlbmNlcy5lbnRyaWVzKCkpO0Euc29ydCgoQSxlKT0+ZVsxXS1BWzFdKTtsZXQgZT0wO2Zvcihjb25zdCB0IG9mIEEpe2NvbnN0IEE9dFswXTtsZXQgaT1uKGUpO2Zvcig7dGhpcy5za2lwcGVkSWRzLmhhcyhpKTspZSsrLGk9bihlKTt0aGlzLmdlbmVyYXRlZElkcy5zZXQoQSxpKSxlKyt9fWdldE5ld0lkKEEpe3JldHVybiB0aGlzLmdlbmVyYXRlZElkcy5oYXMoQSk/dGhpcy5nZW5lcmF0ZWRJZHMuZ2V0KEEpOkF9fUEuZXhwb3J0cz1BPT57Y29uc3QgZT1uZXcgaTtmb3IoY29uc3QgdCBvZiBBLnRhcmdldHMpe2Zvcihjb25zdCBBIG9mIE9iamVjdC5rZXlzKHQudmFyaWFibGVzKSllLnNraXAoQSk7Zm9yKGNvbnN0IEEgb2YgT2JqZWN0LmtleXModC5saXN0cykpZS5za2lwKEEpO2Zvcihjb25zdCBBIG9mIE9iamVjdC5rZXlzKHQuYnJvYWRjYXN0cykpZS5za2lwKEEpO2Zvcihjb25zdCBBIG9mIE9iamVjdC5rZXlzKHQuYmxvY2tzKSl7Y29uc3Qgbj10LmJsb2Nrc1tBXTtpZihlLmFkZFJlZmVyZW5jZShBKSwhQXJyYXkuaXNBcnJheShuKSl7bi5wYXJlbnQmJmUuYWRkUmVmZXJlbmNlKG4ucGFyZW50KSxuLm5leHQmJmUuYWRkUmVmZXJlbmNlKG4ubmV4dCksbi5jb21tZW50JiZlLmFkZFJlZmVyZW5jZShuLmNvbW1lbnQpO2Zvcihjb25zdCBBIG9mIE9iamVjdC52YWx1ZXMobi5pbnB1dHMpKWZvcihsZXQgdD0xO3Q8QS5sZW5ndGg7dCsrKXtjb25zdCBuPUFbdF07InN0cmluZyI9PXR5cGVvZiBuJiZlLmFkZFJlZmVyZW5jZShuKX19fWZvcihjb25zdCBBIG9mIE9iamVjdC5rZXlzKHQuY29tbWVudHMpKXtjb25zdCBuPXQuY29tbWVudHNbQV07ZS5hZGRSZWZlcmVuY2UoQSksbi5ibG9ja0lkJiZlLmFkZFJlZmVyZW5jZShuLmJsb2NrSWQpfX1lLmdlbmVyYXRlTmV3SWRzKCk7Zm9yKGNvbnN0IHQgb2YgQS50YXJnZXRzKXtjb25zdCBBPXt9LG49e307Zm9yKGNvbnN0IG4gb2YgT2JqZWN0LmtleXModC5ibG9ja3MpKXtjb25zdCBpPXQuYmxvY2tzW25dO2lmKEFbZS5nZXROZXdJZChuKV09aSwhQXJyYXkuaXNBcnJheShpKSl7aS5wYXJlbnQmJihpLnBhcmVudD1lLmdldE5ld0lkKGkucGFyZW50KSksaS5uZXh0JiYoaS5uZXh0PWUuZ2V0TmV3SWQoaS5uZXh0KSksaS5jb21tZW50JiYoaS5jb21tZW50PWUuZ2V0TmV3SWQoaS5jb21tZW50KSk7Zm9yKGNvbnN0IEEgb2YgT2JqZWN0LnZhbHVlcyhpLmlucHV0cykpZm9yKGxldCB0PTE7dDxBLmxlbmd0aDt0Kyspe2NvbnN0IG49QVt0XTsic3RyaW5nIj09dHlwZW9mIG4mJihBW3RdPWUuZ2V0TmV3SWQobikpfX19Zm9yKGNvbnN0IEEgb2YgT2JqZWN0LmtleXModC5jb21tZW50cykpe2NvbnN0IGk9dC5jb21tZW50c1tBXTtuW2UuZ2V0TmV3SWQoQSldPWksaS5ibG9ja0lkJiYoaS5ibG9ja0lkPWUuZ2V0TmV3SWQoaS5ibG9ja0lkKSl9dC5ibG9ja3M9QSx0LmNvbW1lbnRzPW59fX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSl7dGhpcy5ydW50aW1lPUEsdGhpcy5leHRlbnNpb25zPXt9LHRoaXMubG9hZGVkPVtdfWJhc2ljUGF0Y2goQSxlLHQpe3QuZXh0ZW5zaW9uVVJMcy5zZXQoQSxlKX1ydW5FeHRlbnNpb25QYXRjaChBLGUsdCl7Y29uc3Qgbj10aGlzLmV4dGVuc2lvbnNbQV07aWYoIm9iamVjdCI9PXR5cGVvZiBuKXJldHVybiB0aGlzLmxvYWRlZC5pbmNsdWRlcyhBKXx8KHRoaXMucnVudGltZS5leHRlbnNpb25NYW5hZ2VyLmxvYWRFeHRlbnNpb25VUkwobi51cmwpLHRoaXMubG9hZGVkLnB1c2goQSkpLHZvaWQgdGhpcy5iYXNpY1BhdGNoKG4uaWQsbi51cmwsZSk7bihlLHQsdGhpcy5ydW50aW1lKX1yZWdpc3RlckV4dGVuc2lvbnMoQSl7dGhpcy5leHRlbnNpb25zPU9iamVjdC5hc3NpZ24odGhpcy5leHRlbnNpb25zLEEpfXBhdGNoRXhpc3RzKEEpe3JldHVybiEhdGhpcy5leHRlbnNpb25zW0FdfX19LGZ1bmN0aW9uKEEpe0EuZXhwb3J0cz1KU09OLnBhcnNlKCd7InZhcmlhYmxlcyI6eyJfdGV4dCI6WyJfdGV4dCIsIiJdLCJfcmVwbGFjZXJzIjpbIl9yZXBsYWNlcnMiLCJbXSJdLCJfcmVwbGFjZXIiOlsiX3JlcGxhY2VyIiwxXSwiX3JlcCI6WyJfcmVwIiwiIl19LCJibG9ja3MiOnsic2V0UmVwbGFjZXJUb0RlZmluaXRpb24iOnsib3Bjb2RlIjoicHJvY2VkdXJlc19kZWZpbml0aW9uIiwibmV4dCI6InNldFJlcGxhY2Vyc1ZhclRvUmVwbGFjZXJKc29uIiwicGFyZW50IjpudWxsLCJpbnB1dHMiOnsiY3VzdG9tX2Jsb2NrIjpbMSwic2V0UmVwbGFjZXJUb0Rpc3BsYXkiXX0sImZpZWxkcyI6e30sInNoYWRvdyI6ZmFsc2UsInRvcExldmVsIjp0cnVlLCJ4Ijo0OCwieSI6NjR9LCJzZXRSZXBsYWNlclRvRGlzcGxheSI6eyJvcGNvZGUiOiJwcm9jZWR1cmVzX3Byb3RvdHlwZSIsIm5leHQiOm51bGwsInBhcmVudCI6InNldFJlcGxhY2VyVG9EZWZpbml0aW9uIiwiaW5wdXRzIjp7IlJFUExBQ0VSIjpbMSwic2V0UmVwbGFjZXJBcmd1bWVudFJFUExBQ0VSIl0sIlZBTFVFIjpbMSwic2V0UmVwbGFjZXJBcmd1bWVudFZBTFVFIl19LCJmaWVsZHMiOnt9LCJzaGFkb3ciOnRydWUsInRvcExldmVsIjpmYWxzZSwibXV0YXRpb24iOnsidGFnTmFtZSI6Im11dGF0aW9uIiwiY2hpbGRyZW4iOltdLCJwcm9jY29kZSI6InJlcGxhY2VyICVzIHRvICVzIiwiYXJndW1lbnRpZHMiOiJbXFwiUkVQTEFDRVJcXCIsXFwiVkFMVUVcXCJdIiwiYXJndW1lbnRuYW1lcyI6IltcXCJSRVBMQUNFUlxcIixcXCJWQUxVRVxcIl0iLCJhcmd1bWVudGRlZmF1bHRzIjoiW1xcIlxcIixcXCJcXCIsXFwiXFwiXSIsIndhcnAiOiJ0cnVlIiwicmV0dXJucyI6ImZhbHNlIiwiZWRpdGVkIjoidHJ1ZSJ9fSwic2V0UmVwbGFjZXJBcmd1bWVudFJFUExBQ0VSIjp7Im9wY29kZSI6ImFyZ3VtZW50X3JlcG9ydGVyX3N0cmluZ19udW1iZXIiLCJuZXh0IjpudWxsLCJwYXJlbnQiOiJSRVBMQUNFUiIsImlucHV0cyI6e30sImZpZWxkcyI6eyJWQUxVRSI6WyJSRVBMQUNFUiIsIlJFUExBQ0VSIl19LCJzaGFkb3ciOnRydWUsInRvcExldmVsIjpmYWxzZX0sInNldFJlcGxhY2VyQXJndW1lbnRWQUxVRSI6eyJvcGNvZGUiOiJhcmd1bWVudF9yZXBvcnRlcl9zdHJpbmdfbnVtYmVyIiwibmV4dCI6bnVsbCwicGFyZW50IjoiVkFMVUUiLCJpbnB1dHMiOnt9LCJmaWVsZHMiOnsiVkFMVUUiOlsiVkFMVUUiLCJWQUxVRSJdfSwic2hhZG93Ijp0cnVlLCJ0b3BMZXZlbCI6ZmFsc2V9LCJzZXRSZXBsYWNlcnNWYXJUb1JlcGxhY2VySnNvbiI6eyJvcGNvZGUiOiJkYXRhX3NldHZhcmlhYmxldG8iLCJuZXh0IjpudWxsLCJwYXJlbnQiOiJzZXRSZXBsYWNlclRvRGVmaW5pdGlvbiIsImlucHV0cyI6eyJWQUxVRSI6WzMsInNldFJlcGxhY2VyVmFsdWVUbyIsWzEwLCIwIl1dfSwiZmllbGRzIjp7IlZBUklBQkxFIjpbInJlcGxhY2VycyIsInJlcGxhY2VycyJdfSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwic2V0UmVwbGFjZXJWYWx1ZVRvIjp7Im9wY29kZSI6ImpnSlNPTl9zZXRWYWx1ZVRvS2V5SW5KU09OIiwibmV4dCI6bnVsbCwicGFyZW50Ijoic2V0UmVwbGFjZXJzVmFyVG9SZXBsYWNlckpzb24iLCJpbnB1dHMiOnsiS0VZIjpbMywibGVmdEFuZE1pZGxlSGFsZiIsWzEwLCJrZXkiXV0sIlZBTFVFIjpbMywiVkFMVUUiLFsxMCwidmFsdWUiXV0sIkpTT04iOlszLFsxMiwicmVwbGFjZXJzIiwicmVwbGFjZXJzIl0sWzEwLCJ7fSJdXX0sImZpZWxkcyI6e30sInNoYWRvdyI6ZmFsc2UsInRvcExldmVsIjpmYWxzZX0sIlJFUExBQ0VSIjp7Im9wY29kZSI6ImFyZ3VtZW50X3JlcG9ydGVyX3N0cmluZ19udW1iZXIiLCJuZXh0IjpudWxsLCJwYXJlbnQiOiJyaWdodEhhbGYiLCJpbnB1dHMiOnt9LCJmaWVsZHMiOnsiVkFMVUUiOlsiUkVQTEFDRVIiLCJSRVBMQUNFUiJdfSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwiVkFMVUUiOnsib3Bjb2RlIjoiYXJndW1lbnRfcmVwb3J0ZXJfc3RyaW5nX251bWJlciIsIm5leHQiOm51bGwsInBhcmVudCI6InNldFJlcGxhY2VyVmFsdWVUbyIsImlucHV0cyI6e30sImZpZWxkcyI6eyJWQUxVRSI6WyJWQUxVRSIsIlZBTFVFIl19LCJzaGFkb3ciOmZhbHNlLCJ0b3BMZXZlbCI6ZmFsc2V9LCJyZXBsYWNlV2l0aFJlcGxhY2Vyc0RlZmluaXRpb24iOnsib3Bjb2RlIjoicHJvY2VkdXJlc19kZWZpbml0aW9uX3JldHVybiIsIm5leHQiOiJkZWZpbmVUZW1wUmVwbGFjZXJzTGlzdCIsInBhcmVudCI6bnVsbCwiaW5wdXRzIjp7ImN1c3RvbV9ibG9jayI6WzEsInJlcGxhY2VXaXRoUmVwbGFjZXJzRGlzcGxheSJdfSwiZmllbGRzIjp7fSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOnRydWUsIngiOjQ4LCJ5IjoyODB9LCJyZXBsYWNlV2l0aFJlcGxhY2Vyc0Rpc3BsYXkiOnsib3Bjb2RlIjoicHJvY2VkdXJlc19wcm90b3R5cGUiLCJuZXh0IjpudWxsLCJwYXJlbnQiOiJyZXBsYWNlV2l0aFJlcGxhY2Vyc0RlZmluaXRpb24iLCJpbnB1dHMiOnsiU1RSSU5HIjpbMSwiU1RSSU5HIl19LCJmaWVsZHMiOnt9LCJzaGFkb3ciOnRydWUsInRvcExldmVsIjpmYWxzZSwibXV0YXRpb24iOnsidGFnTmFtZSI6Im11dGF0aW9uIiwiY2hpbGRyZW4iOltdLCJwcm9jY29kZSI6InJlcGxhY2UgJXMgd2l0aCByZXBsYWNlcnMiLCJhcmd1bWVudGlkcyI6IltcXCJTVFJJTkdcXCJdIiwiYXJndW1lbnRuYW1lcyI6IltcXCJTVFJJTkdcXCJdIiwiYXJndW1lbnRkZWZhdWx0cyI6IltcXCJcXCJdIiwid2FycCI6ImZhbHNlIiwicmV0dXJucyI6InRydWUiLCJlZGl0ZWQiOiJ0cnVlIn19LCJTVFJJTkciOnsib3Bjb2RlIjoiYXJndW1lbnRfcmVwb3J0ZXJfc3RyaW5nX251bWJlciIsIm5leHQiOm51bGwsInBhcmVudCI6InJlcGxhY2VXaXRoUmVwbGFjZXJzRGlzcGxheSIsImlucHV0cyI6e30sImZpZWxkcyI6eyJWQUxVRSI6WyJTVFJJTkciLCJTVFJJTkciXX0sInNoYWRvdyI6dHJ1ZSwidG9wTGV2ZWwiOmZhbHNlfSwicnVuVGhyb3VnaEVhY2hSZXBsYWNlciI6eyJvcGNvZGUiOiJjb250cm9sX2Zvcl9lYWNoIiwibmV4dCI6InJldHVyblRoZUZpbm5hbFRleHQiLCJwYXJlbnQiOiJkZWZpbmVUZW1wVGV4dCIsImlucHV0cyI6eyJWQUxVRSI6WzMsInRoZU51bWJlck9mUmVwbGFjZXJzIixbNiwiMTAiXV0sIlNVQlNUQUNLIjpbMiwiZGVmaW5lVGVtcFJlcGxhY2VyTmFtZSJdfSwiZmllbGRzIjp7IlZBUklBQkxFIjpbIl9yZXBsYWNlciIsIl9yZXBsYWNlciJdfSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwiZGVmaW5lVGVtcFJlcGxhY2Vyc0xpc3QiOnsib3Bjb2RlIjoiZGF0YV9zZXR2YXJpYWJsZXRvIiwibmV4dCI6ImRlZmluZVRlbXBUZXh0IiwicGFyZW50IjoicmVwbGFjZVdpdGhSZXBsYWNlcnNEZWZpbml0aW9uIiwiaW5wdXRzIjp7IlZBTFVFIjpbMywiZ2V0QWxsUmVwbGFjZXJzIixbMTAsIjAiXV19LCJmaWVsZHMiOnsiVkFSSUFCTEUiOlsiX3JlcGxhY2VycyIsIl9yZXBsYWNlcnMiXX0sInNoYWRvdyI6ZmFsc2UsInRvcExldmVsIjpmYWxzZX0sImdldEFsbFJlcGxhY2VycyI6eyJvcGNvZGUiOiJqZ0pTT05fanNvbl9rZXlzIiwibmV4dCI6bnVsbCwicGFyZW50IjoiZGVmaW5lVGVtcFJlcGxhY2Vyc0xpc3QiLCJpbnB1dHMiOnsianNvbiI6WzMsWzEyLCJyZXBsYWNlcnMiLCJyZXBsYWNlcnMiXSxbMTAsInt9Il1dfSwiZmllbGRzIjp7fSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwicmlnaHRIYWxmIjp7Im9wY29kZSI6Im9wZXJhdG9yX2pvaW4iLCJuZXh0IjpudWxsLCJwYXJlbnQiOiJsZWZ0QW5kTWlkbGVIYWxmIiwiaW5wdXRzIjp7IlNUUklORzEiOlsxLFsxMCwieyJdXSwiU1RSSU5HMiI6WzMsIlJFUExBQ0VSIixbMTAsImJhbmFuYSJdXX0sImZpZWxkcyI6e30sInNoYWRvdyI6ZmFsc2UsInRvcExldmVsIjpmYWxzZX0sImxlZnRBbmRNaWRsZUhhbGYiOnsib3Bjb2RlIjoib3BlcmF0b3Jfam9pbiIsIm5leHQiOm51bGwsInBhcmVudCI6InNldFJlcGxhY2VyVmFsdWVUbyIsImlucHV0cyI6eyJTVFJJTkcxIjpbMywicmlnaHRIYWxmIixbMTAsImZvbyJdXSwiU1RSSU5HMiI6WzEsWzEwLCJ9Il1dfSwiZmllbGRzIjp7fSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwidGhlTnVtYmVyT2ZSZXBsYWNlcnMiOnsib3Bjb2RlIjoiamdKU09OX2pzb25fYXJyYXlfbGVuZ3RoIiwibmV4dCI6bnVsbCwicGFyZW50IjoicnVuVGhyb3VnaEVhY2hSZXBsYWNlciIsImlucHV0cyI6eyJhcnJheSI6WzMsWzEyLCJfcmVwbGFjZXJzIiwiX3JlcGxhY2VycyJdLFsxMCwiW10iXV19LCJmaWVsZHMiOnt9LCJzaGFkb3ciOmZhbHNlLCJ0b3BMZXZlbCI6ZmFsc2V9LCJnZXRDdXJyZW50UmVwbGFjZXIiOnsib3Bjb2RlIjoiamdKU09OX2pzb25fYXJyYXlfZ2V0IiwibmV4dCI6bnVsbCwicGFyZW50IjoiZGVmaW5lVGVtcFJlcGxhY2VyTmFtZSIsImlucHV0cyI6eyJhcnJheSI6WzMsWzEyLCJfcmVwbGFjZXJzIiwiX3JlcGxhY2VycyJdLFsxMCwiW1xcIkFcXCIsIFxcIkJcXCIsIFxcIkNcXCJdIl1dLCJpbmRleCI6WzMsIm9mZnNldEluZGV4QnkiLFs0LCIyIl1dfSwiZmllbGRzIjp7fSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwicmVwbGFjZUFsbFJlcGxhY2Vyc1dpdGhWYWx1ZSI6eyJvcGNvZGUiOiJvcGVyYXRvcl9yZXBsYWNlQWxsIiwibmV4dCI6bnVsbCwicGFyZW50IjoicmVwbGFjZVRleHRXaXRoVGhpc1JlcGxhY2VyIiwiaW5wdXRzIjp7InRleHQiOlszLFsxMiwiX3RleHQiLCJfdGV4dCJdLFsxMCwiZm9vIGJhciJdXSwidGVybSI6WzMsWzEyLCJfcmVwIiwiX3JlcCJdLFsxMCwiZm9vIl1dLCJyZXMiOlszLCJnZXRSZXBsYWNlclZhbHVlRnJvbVJlcGxhY2VyTGlzdCIsWzEwLCJiYXIiXV19LCJmaWVsZHMiOnt9LCJzaGFkb3ciOmZhbHNlLCJ0b3BMZXZlbCI6ZmFsc2V9LCJkZWZpbmVUZW1wUmVwbGFjZXJOYW1lIjp7Im9wY29kZSI6ImRhdGFfc2V0dmFyaWFibGV0byIsIm5leHQiOiJyZXBsYWNlVGV4dFdpdGhUaGlzUmVwbGFjZXIiLCJwYXJlbnQiOiJydW5UaHJvdWdoRWFjaFJlcGxhY2VyIiwiaW5wdXRzIjp7IlZBTFVFIjpbMywiZ2V0Q3VycmVudFJlcGxhY2VyIixbMTAsIjAiXV19LCJmaWVsZHMiOnsiVkFSSUFCTEUiOlsiX3JlcCIsIl9yZXAiXX0sInNoYWRvdyI6ZmFsc2UsInRvcExldmVsIjpmYWxzZX0sImdldFJlcGxhY2VyVmFsdWVGcm9tUmVwbGFjZXJMaXN0Ijp7Im9wY29kZSI6ImpnSlNPTl9nZXRWYWx1ZUZyb21KU09OIiwibmV4dCI6bnVsbCwicGFyZW50IjoicmVwbGFjZUFsbFJlcGxhY2Vyc1dpdGhWYWx1ZSIsImlucHV0cyI6eyJWQUxVRSI6WzMsWzEyLCJfcmVwIiwiX3JlcCJdLFsxMCwia2V5Il1dLCJKU09OIjpbMyxbMTIsInJlcGxhY2VycyIsInJlcGxhY2VycyJdLFsxMCwie1xcImtleVxcIjogXFwidmFsdWVcXCJ9Il1dfSwiZmllbGRzIjp7fSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwiZGVmaW5lVGVtcFRleHQiOnsib3Bjb2RlIjoiZGF0YV9zZXR2YXJpYWJsZXRvIiwibmV4dCI6InJ1blRocm91Z2hFYWNoUmVwbGFjZXIiLCJwYXJlbnQiOiJkZWZpbmVUZW1wUmVwbGFjZXJzTGlzdCIsImlucHV0cyI6eyJWQUxVRSI6WzMsIlNUUklOR2FyZ3VtZW50IixbMTAsIjAiXV19LCJmaWVsZHMiOnsiVkFSSUFCTEUiOlsiX3RleHQiLCJfdGV4dCJdfSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwiU1RSSU5HYXJndW1lbnQiOnsib3Bjb2RlIjoiYXJndW1lbnRfcmVwb3J0ZXJfc3RyaW5nX251bWJlciIsIm5leHQiOm51bGwsInBhcmVudCI6ImRlZmluZVRlbXBUZXh0IiwiaW5wdXRzIjp7fSwiZmllbGRzIjp7IlZBTFVFIjpbIlNUUklORyIsIlNUUklORyJdfSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwicmVwbGFjZVRleHRXaXRoVGhpc1JlcGxhY2VyIjp7Im9wY29kZSI6ImRhdGFfc2V0dmFyaWFibGV0byIsIm5leHQiOm51bGwsInBhcmVudCI6ImRlZmluZVRlbXBSZXBsYWNlck5hbWUiLCJpbnB1dHMiOnsiVkFMVUUiOlszLCJyZXBsYWNlQWxsUmVwbGFjZXJzV2l0aFZhbHVlIixbMTAsIjAiXV19LCJmaWVsZHMiOnsiVkFSSUFCTEUiOlsiX3RleHQiLCJfdGV4dCJdfSwic2hhZG93IjpmYWxzZSwidG9wTGV2ZWwiOmZhbHNlfSwicmV0dXJuVGhlRmlubmFsVGV4dCI6eyJvcGNvZGUiOiJwcm9jZWR1cmVzX3JldHVybiIsIm5leHQiOm51bGwsInBhcmVudCI6InJ1blRocm91Z2hFYWNoUmVwbGFjZXIiLCJpbnB1dHMiOnsicmV0dXJuIjpbMyxbMTIsIl90ZXh0IiwiX3RleHQiXSxbMTAsIjEiXV19LCJmaWVsZHMiOnt9LCJzaGFkb3ciOmZhbHNlLCJ0b3BMZXZlbCI6ZmFsc2V9LCJvZmZzZXRJbmRleEJ5Ijp7Im9wY29kZSI6Im9wZXJhdG9yX3N1YnRyYWN0IiwibmV4dCI6bnVsbCwicGFyZW50IjoiZ2V0Q3VycmVudFJlcGxhY2VyIiwiaW5wdXRzIjp7Ik5VTTEiOlszLFsxMiwiX3JlcGxhY2VyIiwiX3JlcGxhY2VyIl0sWzQsIiJdXSwiTlVNMiI6WzEsWzQsIjEiXV19LCJmaWVsZHMiOnt9LCJzaGFkb3ciOmZhbHNlLCJ0b3BMZXZlbCI6ZmFsc2V9fX0nKX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxOSksaT17ImZvcndhcmQ6Ijp7b3Bjb2RlOiJtb3Rpb25fbW92ZXN0ZXBzIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiU1RFUFMifV19LCJ0dXJuUmlnaHQ6Ijp7b3Bjb2RlOiJtb3Rpb25fdHVybnJpZ2h0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiREVHUkVFUyJ9XX0sInR1cm5MZWZ0OiI6e29wY29kZToibW90aW9uX3R1cm5sZWZ0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiREVHUkVFUyJ9XX0sImhlYWRpbmc6Ijp7b3Bjb2RlOiJtb3Rpb25fcG9pbnRpbmRpcmVjdGlvbiIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfYW5nbGUiLGlucHV0TmFtZToiRElSRUNUSU9OIn1dfSwicG9pbnRUb3dhcmRzOiI6e29wY29kZToibW90aW9uX3BvaW50dG93YXJkcyIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1vdGlvbl9wb2ludHRvd2FyZHNfbWVudSIsaW5wdXROYW1lOiJUT1dBUkRTIn1dfSwiZ290b1g6eToiOntvcGNvZGU6Im1vdGlvbl9nb3RveHkiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJYIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJZIn1dfSwiZ290b1Nwcml0ZU9yTW91c2U6Ijp7b3Bjb2RlOiJtb3Rpb25fZ290byIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1vdGlvbl9nb3RvX21lbnUiLGlucHV0TmFtZToiVE8ifV19LCJnbGlkZVNlY3M6dG9YOnk6ZWxhcHNlZDpmcm9tOiI6e29wY29kZToibW90aW9uX2dsaWRlc2Vjc3RveHkiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJTRUNTIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJYIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJZIn1dfSwiY2hhbmdlWHBvc0J5OiI6e29wY29kZToibW90aW9uX2NoYW5nZXhieSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IkRYIn1dfSwieHBvczoiOntvcGNvZGU6Im1vdGlvbl9zZXR4IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiWCJ9XX0sImNoYW5nZVlwb3NCeToiOntvcGNvZGU6Im1vdGlvbl9jaGFuZ2V5YnkiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJEWSJ9XX0sInlwb3M6Ijp7b3Bjb2RlOiJtb3Rpb25fc2V0eSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlkifV19LGJvdW5jZU9mZkVkZ2U6e29wY29kZToibW90aW9uX2lmb25lZGdlYm91bmNlIixhcmdNYXA6W119LHNldFJvdGF0aW9uU3R5bGU6e29wY29kZToibW90aW9uX3NldHJvdGF0aW9uc3R5bGUiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IlNUWUxFIn1dfSx4cG9zOntvcGNvZGU6Im1vdGlvbl94cG9zaXRpb24iLGFyZ01hcDpbXX0seXBvczp7b3Bjb2RlOiJtb3Rpb25feXBvc2l0aW9uIixhcmdNYXA6W119LGhlYWRpbmc6e29wY29kZToibW90aW9uX2RpcmVjdGlvbiIsYXJnTWFwOltdfSxzY3JvbGxSaWdodDp7b3Bjb2RlOiJtb3Rpb25fc2Nyb2xsX3JpZ2h0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiRElTVEFOQ0UifV19LHNjcm9sbFVwOntvcGNvZGU6Im1vdGlvbl9zY3JvbGxfdXAiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJESVNUQU5DRSJ9XX0sc2Nyb2xsQWxpZ246e29wY29kZToibW90aW9uX2FsaWduX3NjZW5lIixhcmdNYXA6W3t0eXBlOiJmaWVsZCIsZmllbGROYW1lOiJBTElHTk1FTlQifV19LHhTY3JvbGw6e29wY29kZToibW90aW9uX3hzY3JvbGwiLGFyZ01hcDpbXX0seVNjcm9sbDp7b3Bjb2RlOiJtb3Rpb25feXNjcm9sbCIsYXJnTWFwOltdfSwic2F5OmR1cmF0aW9uOmVsYXBzZWQ6ZnJvbToiOntvcGNvZGU6Imxvb2tzX3NheWZvcnNlY3MiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ0ZXh0IixpbnB1dE5hbWU6Ik1FU1NBR0UifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlNFQ1MifV19LCJzYXk6Ijp7b3Bjb2RlOiJsb29rc19zYXkiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ0ZXh0IixpbnB1dE5hbWU6Ik1FU1NBR0UifV19LCJ0aGluazpkdXJhdGlvbjplbGFwc2VkOmZyb206Ijp7b3Bjb2RlOiJsb29rc190aGlua2ZvcnNlY3MiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ0ZXh0IixpbnB1dE5hbWU6Ik1FU1NBR0UifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlNFQ1MifV19LCJ0aGluazoiOntvcGNvZGU6Imxvb2tzX3RoaW5rIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoidGV4dCIsaW5wdXROYW1lOiJNRVNTQUdFIn1dfSxzaG93OntvcGNvZGU6Imxvb2tzX3Nob3ciLGFyZ01hcDpbXX0saGlkZTp7b3Bjb2RlOiJsb29rc19oaWRlIixhcmdNYXA6W119LGhpZGVBbGw6e29wY29kZToibG9va3NfaGlkZWFsbHNwcml0ZXMiLGFyZ01hcDpbXX0sImxvb2tMaWtlOiI6e29wY29kZToibG9va3Nfc3dpdGNoY29zdHVtZXRvIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibG9va3NfY29zdHVtZSIsaW5wdXROYW1lOiJDT1NUVU1FIn1dfSxuZXh0Q29zdHVtZTp7b3Bjb2RlOiJsb29rc19uZXh0Y29zdHVtZSIsYXJnTWFwOltdfSxzdGFydFNjZW5lOntvcGNvZGU6Imxvb2tzX3N3aXRjaGJhY2tkcm9wdG8iLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJsb29rc19iYWNrZHJvcHMiLGlucHV0TmFtZToiQkFDS0RST1AifV19LCJjaGFuZ2VHcmFwaGljRWZmZWN0OmJ5OiI6e29wY29kZToibG9va3NfY2hhbmdlZWZmZWN0YnkiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IkVGRkVDVCJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiQ0hBTkdFIn1dfSwic2V0R3JhcGhpY0VmZmVjdDp0bzoiOntvcGNvZGU6Imxvb2tzX3NldGVmZmVjdHRvIixhcmdNYXA6W3t0eXBlOiJmaWVsZCIsZmllbGROYW1lOiJFRkZFQ1QifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlZBTFVFIn1dfSxmaWx0ZXJSZXNldDp7b3Bjb2RlOiJsb29rc19jbGVhcmdyYXBoaWNlZmZlY3RzIixhcmdNYXA6W119LCJjaGFuZ2VTaXplQnk6Ijp7b3Bjb2RlOiJsb29rc19jaGFuZ2VzaXplYnkiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJDSEFOR0UifV19LCJzZXRTaXplVG86Ijp7b3Bjb2RlOiJsb29rc19zZXRzaXpldG8iLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJTSVpFIn1dfSwiY2hhbmdlU3RyZXRjaEJ5OiI6e29wY29kZToibG9va3NfY2hhbmdlc3RyZXRjaGJ5IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiQ0hBTkdFIn1dfSwic2V0U3RyZXRjaFRvOiI6e29wY29kZToibG9va3Nfc2V0c3RyZXRjaHRvIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiU1RSRVRDSCJ9XX0sY29tZVRvRnJvbnQ6e29wY29kZToibG9va3NfZ290b2Zyb250YmFjayIsYXJnTWFwOltdfSwiZ29CYWNrQnlMYXllcnM6Ijp7b3Bjb2RlOiJsb29rc19nb2ZvcndhcmRiYWNrd2FyZGxheWVycyIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfaW50ZWdlciIsaW5wdXROYW1lOiJOVU0ifV19LGNvc3R1bWVJbmRleDp7b3Bjb2RlOiJsb29rc19jb3N0dW1lbnVtYmVybmFtZSIsYXJnTWFwOltdfSxjb3N0dW1lTmFtZTp7b3Bjb2RlOiJsb29rc19jb3N0dW1lbnVtYmVybmFtZSIsYXJnTWFwOltdfSxzY2VuZU5hbWU6e29wY29kZToibG9va3NfYmFja2Ryb3BudW1iZXJuYW1lIixhcmdNYXA6W119LHNjYWxlOntvcGNvZGU6Imxvb2tzX3NpemUiLGFyZ01hcDpbXX0sc3RhcnRTY2VuZUFuZFdhaXQ6e29wY29kZToibG9va3Nfc3dpdGNoYmFja2Ryb3B0b2FuZHdhaXQiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJsb29rc19iYWNrZHJvcHMiLGlucHV0TmFtZToiQkFDS0RST1AifV19LG5leHRTY2VuZTp7b3Bjb2RlOiJsb29rc19uZXh0YmFja2Ryb3AiLGFyZ01hcDpbXX0sYmFja2dyb3VuZEluZGV4OntvcGNvZGU6Imxvb2tzX2JhY2tkcm9wbnVtYmVybmFtZSIsYXJnTWFwOltdfSwicGxheVNvdW5kOiI6e29wY29kZToic291bmRfcGxheSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6InNvdW5kX3NvdW5kc19tZW51IixpbnB1dE5hbWU6IlNPVU5EX01FTlUifV19LGRvUGxheVNvdW5kQW5kV2FpdDp7b3Bjb2RlOiJzb3VuZF9wbGF5dW50aWxkb25lIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoic291bmRfc291bmRzX21lbnUiLGlucHV0TmFtZToiU09VTkRfTUVOVSJ9XX0sc3RvcEFsbFNvdW5kczp7b3Bjb2RlOiJzb3VuZF9zdG9wYWxsc291bmRzIixhcmdNYXA6W119LHBsYXlEcnVtOntvcGNvZGU6Im11c2ljX3BsYXlEcnVtRm9yQmVhdHMiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtdXNpY19tZW51X0RSVU0iLGlucHV0TmFtZToiRFJVTSJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiQkVBVFMifV19LCJkcnVtOmR1cmF0aW9uOmVsYXBzZWQ6ZnJvbToiOntvcGNvZGU6Im11c2ljX21pZGlQbGF5RHJ1bUZvckJlYXRzIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiRFJVTSJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiQkVBVFMifV19LCJyZXN0OmVsYXBzZWQ6ZnJvbToiOntvcGNvZGU6Im11c2ljX3Jlc3RGb3JCZWF0cyIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IkJFQVRTIn1dfSwibm90ZU9uOmR1cmF0aW9uOmVsYXBzZWQ6ZnJvbToiOntvcGNvZGU6Im11c2ljX3BsYXlOb3RlRm9yQmVhdHMiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJub3RlIixpbnB1dE5hbWU6Ik5PVEUifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IkJFQVRTIn1dfSwiaW5zdHJ1bWVudDoiOntvcGNvZGU6Im11c2ljX3NldEluc3RydW1lbnQiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtdXNpY19tZW51X0lOU1RSVU1FTlQiLGlucHV0TmFtZToiSU5TVFJVTUVOVCJ9XX0sIm1pZGlJbnN0cnVtZW50OiI6e29wY29kZToibXVzaWNfbWlkaVNldEluc3RydW1lbnQiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJJTlNUUlVNRU5UIn1dfSwiY2hhbmdlVm9sdW1lQnk6Ijp7b3Bjb2RlOiJzb3VuZF9jaGFuZ2V2b2x1bWVieSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlZPTFVNRSJ9XX0sInNldFZvbHVtZVRvOiI6e29wY29kZToic291bmRfc2V0dm9sdW1ldG8iLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJWT0xVTUUifV19LHZvbHVtZTp7b3Bjb2RlOiJzb3VuZF92b2x1bWUiLGFyZ01hcDpbXX0sImNoYW5nZVRlbXBvQnk6Ijp7b3Bjb2RlOiJtdXNpY19jaGFuZ2VUZW1wbyIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlRFTVBPIn1dfSwic2V0VGVtcG9UbzoiOntvcGNvZGU6Im11c2ljX3NldFRlbXBvIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiVEVNUE8ifV19LHRlbXBvOntvcGNvZGU6Im11c2ljX2dldFRlbXBvIixhcmdNYXA6W119LGNsZWFyUGVuVHJhaWxzOntvcGNvZGU6InBlbl9jbGVhciIsYXJnTWFwOltdfSxzdGFtcENvc3R1bWU6e29wY29kZToicGVuX3N0YW1wIixhcmdNYXA6W119LHB1dFBlbkRvd246e29wY29kZToicGVuX3BlbkRvd24iLGFyZ01hcDpbXX0scHV0UGVuVXA6e29wY29kZToicGVuX3BlblVwIixhcmdNYXA6W119LCJwZW5Db2xvcjoiOntvcGNvZGU6InBlbl9zZXRQZW5Db2xvclRvQ29sb3IiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJjb2xvdXJfcGlja2VyIixpbnB1dE5hbWU6IkNPTE9SIn1dfSwiY2hhbmdlUGVuSHVlQnk6Ijp7b3Bjb2RlOiJwZW5fY2hhbmdlUGVuSHVlQnkiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJIVUUifV19LCJzZXRQZW5IdWVUbzoiOntvcGNvZGU6InBlbl9zZXRQZW5IdWVUb051bWJlciIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IkhVRSJ9XX0sImNoYW5nZVBlblNoYWRlQnk6Ijp7b3Bjb2RlOiJwZW5fY2hhbmdlUGVuU2hhZGVCeSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlNIQURFIn1dfSwic2V0UGVuU2hhZGVUbzoiOntvcGNvZGU6InBlbl9zZXRQZW5TaGFkZVRvTnVtYmVyIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiU0hBREUifV19LCJjaGFuZ2VQZW5TaXplQnk6Ijp7b3Bjb2RlOiJwZW5fY2hhbmdlUGVuU2l6ZUJ5IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiU0laRSJ9XX0sInBlblNpemU6Ijp7b3Bjb2RlOiJwZW5fc2V0UGVuU2l6ZVRvIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiU0laRSJ9XX0sc2Vuc2VWaWRlb01vdGlvbjp7b3Bjb2RlOiJ2aWRlb1NlbnNpbmdfdmlkZW9PbiIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6InZpZGVvU2Vuc2luZ19tZW51X0FUVFJJQlVURSIsaW5wdXROYW1lOiJBVFRSSUJVVEUifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InZpZGVvU2Vuc2luZ19tZW51X1NVQkpFQ1QiLGlucHV0TmFtZToiU1VCSkVDVCJ9XX0sd2hlbkdyZWVuRmxhZzp7b3Bjb2RlOiJldmVudF93aGVuZmxhZ2NsaWNrZWQiLGFyZ01hcDpbXX0sd2hlbktleVByZXNzZWQ6e29wY29kZToiZXZlbnRfd2hlbmtleXByZXNzZWQiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IktFWV9PUFRJT04ifV19LHdoZW5DbGlja2VkOntvcGNvZGU6ImV2ZW50X3doZW50aGlzc3ByaXRlY2xpY2tlZCIsYXJnTWFwOltdfSx3aGVuU2NlbmVTdGFydHM6e29wY29kZToiZXZlbnRfd2hlbmJhY2tkcm9wc3dpdGNoZXN0byIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiQkFDS0RST1AifV19LHdoZW5TZW5zb3JHcmVhdGVyVGhhbjpBPT57bGV0WyxlXT1BO3JldHVybiJ2aWRlbyBtb3Rpb24iPT09ZT97b3Bjb2RlOiJ2aWRlb1NlbnNpbmdfd2hlbk1vdGlvbkdyZWF0ZXJUaGFuIixhcmdNYXA6W3t9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiUkVGRVJFTkNFIn1dfTp7b3Bjb2RlOiJldmVudF93aGVuZ3JlYXRlcnRoYW4iLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IldIRU5HUkVBVEVSVEhBTk1FTlUifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlZBTFVFIn1dfX0sd2hlbklSZWNlaXZlOntvcGNvZGU6ImV2ZW50X3doZW5icm9hZGNhc3RyZWNlaXZlZCIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiQlJPQURDQVNUX09QVElPTiIsdmFyaWFibGVUeXBlOm4uQlJPQURDQVNUX01FU1NBR0VfVFlQRX1dfSwiYnJvYWRjYXN0OiI6e29wY29kZToiZXZlbnRfYnJvYWRjYXN0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoiZXZlbnRfYnJvYWRjYXN0X21lbnUiLGlucHV0TmFtZToiQlJPQURDQVNUX0lOUFVUIix2YXJpYWJsZVR5cGU6bi5CUk9BRENBU1RfTUVTU0FHRV9UWVBFfV19LGRvQnJvYWRjYXN0QW5kV2FpdDp7b3Bjb2RlOiJldmVudF9icm9hZGNhc3RhbmR3YWl0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoiZXZlbnRfYnJvYWRjYXN0X21lbnUiLGlucHV0TmFtZToiQlJPQURDQVNUX0lOUFVUIix2YXJpYWJsZVR5cGU6bi5CUk9BRENBU1RfTUVTU0FHRV9UWVBFfV19LCJ3YWl0OmVsYXBzZWQ6ZnJvbToiOntvcGNvZGU6ImNvbnRyb2xfd2FpdCIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfcG9zaXRpdmVfbnVtYmVyIixpbnB1dE5hbWU6IkRVUkFUSU9OIn1dfSxkb1JlcGVhdDp7b3Bjb2RlOiJjb250cm9sX3JlcGVhdCIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfd2hvbGVfbnVtYmVyIixpbnB1dE5hbWU6IlRJTUVTIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJzdWJzdGFjayIsaW5wdXROYW1lOiJTVUJTVEFDSyJ9XX0sZG9Gb3JldmVyOntvcGNvZGU6ImNvbnRyb2xfZm9yZXZlciIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6InN1YnN0YWNrIixpbnB1dE5hbWU6IlNVQlNUQUNLIn1dfSxkb0lmOntvcGNvZGU6ImNvbnRyb2xfaWYiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJib29sZWFuIixpbnB1dE5hbWU6IkNPTkRJVElPTiJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoic3Vic3RhY2siLGlucHV0TmFtZToiU1VCU1RBQ0sifV19LGRvSWZFbHNlOntvcGNvZGU6ImNvbnRyb2xfaWZfZWxzZSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6ImJvb2xlYW4iLGlucHV0TmFtZToiQ09ORElUSU9OIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJzdWJzdGFjayIsaW5wdXROYW1lOiJTVUJTVEFDSyJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoic3Vic3RhY2siLGlucHV0TmFtZToiU1VCU1RBQ0syIn1dfSxkb1dhaXRVbnRpbDp7b3Bjb2RlOiJjb250cm9sX3dhaXRfdW50aWwiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJib29sZWFuIixpbnB1dE5hbWU6IkNPTkRJVElPTiJ9XX0sZG9VbnRpbDp7b3Bjb2RlOiJjb250cm9sX3JlcGVhdF91bnRpbCIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6ImJvb2xlYW4iLGlucHV0TmFtZToiQ09ORElUSU9OIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJzdWJzdGFjayIsaW5wdXROYW1lOiJTVUJTVEFDSyJ9XX0sZG9XaGlsZTp7b3Bjb2RlOiJjb250cm9sX3doaWxlIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoiYm9vbGVhbiIsaW5wdXROYW1lOiJDT05ESVRJT04ifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InN1YnN0YWNrIixpbnB1dE5hbWU6IlNVQlNUQUNLIn1dfSxkb0Zvckxvb3A6e29wY29kZToiY29udHJvbF9mb3JfZWFjaCIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiVkFSSUFCTEUifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiVkFMVUUifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InN1YnN0YWNrIixpbnB1dE5hbWU6IlNVQlNUQUNLIn1dfSxzdG9wU2NyaXB0czp7b3Bjb2RlOiJjb250cm9sX3N0b3AiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IlNUT1BfT1BUSU9OIn1dfSx3aGVuQ2xvbmVkOntvcGNvZGU6ImNvbnRyb2xfc3RhcnRfYXNfY2xvbmUiLGFyZ01hcDpbXX0sY3JlYXRlQ2xvbmVPZjp7b3Bjb2RlOiJjb250cm9sX2NyZWF0ZV9jbG9uZV9vZiIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6ImNvbnRyb2xfY3JlYXRlX2Nsb25lX29mX21lbnUiLGlucHV0TmFtZToiQ0xPTkVfT1BUSU9OIn1dfSxkZWxldGVDbG9uZTp7b3Bjb2RlOiJjb250cm9sX2RlbGV0ZV90aGlzX2Nsb25lIixhcmdNYXA6W119LENPVU5UOntvcGNvZGU6ImNvbnRyb2xfZ2V0X2NvdW50ZXIiLGFyZ01hcDpbXX0sSU5DUl9DT1VOVDp7b3Bjb2RlOiJjb250cm9sX2luY3JfY291bnRlciIsYXJnTWFwOltdfSxDTFJfQ09VTlQ6e29wY29kZToiY29udHJvbF9jbGVhcl9jb3VudGVyIixhcmdNYXA6W119LHdhcnBTcGVlZDp7b3Bjb2RlOiJjb250cm9sX2FsbF9hdF9vbmNlIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoic3Vic3RhY2siLGlucHV0TmFtZToiU1VCU1RBQ0sifV19LCJ0b3VjaGluZzoiOntvcGNvZGU6InNlbnNpbmdfdG91Y2hpbmdvYmplY3QiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJzZW5zaW5nX3RvdWNoaW5nb2JqZWN0bWVudSIsaW5wdXROYW1lOiJUT1VDSElOR09CSkVDVE1FTlUifV19LCJ0b3VjaGluZ0NvbG9yOiI6e29wY29kZToic2Vuc2luZ190b3VjaGluZ2NvbG9yIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoiY29sb3VyX3BpY2tlciIsaW5wdXROYW1lOiJDT0xPUiJ9XX0sImNvbG9yOnNlZXM6Ijp7b3Bjb2RlOiJzZW5zaW5nX2NvbG9yaXN0b3VjaGluZ2NvbG9yIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoiY29sb3VyX3BpY2tlciIsaW5wdXROYW1lOiJDT0xPUiJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoiY29sb3VyX3BpY2tlciIsaW5wdXROYW1lOiJDT0xPUjIifV19LCJkaXN0YW5jZVRvOiI6e29wY29kZToic2Vuc2luZ19kaXN0YW5jZXRvIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoic2Vuc2luZ19kaXN0YW5jZXRvbWVudSIsaW5wdXROYW1lOiJESVNUQU5DRVRPTUVOVSJ9XX0sZG9Bc2s6e29wY29kZToic2Vuc2luZ19hc2thbmR3YWl0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoidGV4dCIsaW5wdXROYW1lOiJRVUVTVElPTiJ9XX0sYW5zd2VyOntvcGNvZGU6InNlbnNpbmdfYW5zd2VyIixhcmdNYXA6W119LCJrZXlQcmVzc2VkOiI6e29wY29kZToic2Vuc2luZ19rZXlwcmVzc2VkIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoic2Vuc2luZ19rZXlvcHRpb25zIixpbnB1dE5hbWU6IktFWV9PUFRJT04ifV19LG1vdXNlUHJlc3NlZDp7b3Bjb2RlOiJzZW5zaW5nX21vdXNlZG93biIsYXJnTWFwOltdfSxtb3VzZVg6e29wY29kZToic2Vuc2luZ19tb3VzZXgiLGFyZ01hcDpbXX0sbW91c2VZOntvcGNvZGU6InNlbnNpbmdfbW91c2V5IixhcmdNYXA6W119LHNvdW5kTGV2ZWw6e29wY29kZToic2Vuc2luZ19sb3VkbmVzcyIsYXJnTWFwOltdfSxpc0xvdWQ6e29wY29kZToic2Vuc2luZ19sb3VkIixhcmdNYXA6W119LHNldFZpZGVvU3RhdGU6e29wY29kZToidmlkZW9TZW5zaW5nX3ZpZGVvVG9nZ2xlIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoidmlkZW9TZW5zaW5nX21lbnVfVklERU9fU1RBVEUiLGlucHV0TmFtZToiVklERU9fU1RBVEUifV19LHNldFZpZGVvVHJhbnNwYXJlbmN5OntvcGNvZGU6InZpZGVvU2Vuc2luZ19zZXRWaWRlb1RyYW5zcGFyZW5jeSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlRSQU5TUEFSRU5DWSJ9XX0sdGltZXI6e29wY29kZToic2Vuc2luZ190aW1lciIsYXJnTWFwOltdfSx0aW1lclJlc2V0OntvcGNvZGU6InNlbnNpbmdfcmVzZXR0aW1lciIsYXJnTWFwOltdfSwiZ2V0QXR0cmlidXRlOm9mOiI6e29wY29kZToic2Vuc2luZ19vZiIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiUFJPUEVSVFkifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InNlbnNpbmdfb2Zfb2JqZWN0X21lbnUiLGlucHV0TmFtZToiT0JKRUNUIn1dfSx0aW1lQW5kRGF0ZTp7b3Bjb2RlOiJzZW5zaW5nX2N1cnJlbnQiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IkNVUlJFTlRNRU5VIn1dfSx0aW1lc3RhbXA6e29wY29kZToic2Vuc2luZ19kYXlzc2luY2UyMDAwIixhcmdNYXA6W119LGdldFVzZXJOYW1lOntvcGNvZGU6InNlbnNpbmdfdXNlcm5hbWUiLGFyZ01hcDpbXX0sZ2V0VXNlcklkOntvcGNvZGU6InNlbnNpbmdfdXNlcmlkIixhcmdNYXA6W119LCIrIjp7b3Bjb2RlOiJvcGVyYXRvcl9hZGQiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0xIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0yIn1dfSwiLSI6e29wY29kZToib3BlcmF0b3Jfc3VidHJhY3QiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0xIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0yIn1dfSwiKiI6e29wY29kZToib3BlcmF0b3JfbXVsdGlwbHkiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0xIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0yIn1dfSwiLyI6e29wY29kZToib3BlcmF0b3JfZGl2aWRlIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiTlVNMSJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiTlVNMiJ9XX0sInJhbmRvbUZyb206dG86Ijp7b3Bjb2RlOiJvcGVyYXRvcl9yYW5kb20iLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJGUk9NIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJUTyJ9XX0sIjwiOntvcGNvZGU6Im9wZXJhdG9yX2x0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoidGV4dCIsaW5wdXROYW1lOiJPUEVSQU5EMSJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoidGV4dCIsaW5wdXROYW1lOiJPUEVSQU5EMiJ9XX0sIj0iOntvcGNvZGU6Im9wZXJhdG9yX2VxdWFscyIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiT1BFUkFORDEifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiT1BFUkFORDIifV19LCI+Ijp7b3Bjb2RlOiJvcGVyYXRvcl9ndCIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiT1BFUkFORDEifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiT1BFUkFORDIifV19LCImIjp7b3Bjb2RlOiJvcGVyYXRvcl9hbmQiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJib29sZWFuIixpbnB1dE5hbWU6Ik9QRVJBTkQxIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJib29sZWFuIixpbnB1dE5hbWU6Ik9QRVJBTkQyIn1dfSwifCI6e29wY29kZToib3BlcmF0b3Jfb3IiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJib29sZWFuIixpbnB1dE5hbWU6Ik9QRVJBTkQxIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJib29sZWFuIixpbnB1dE5hbWU6Ik9QRVJBTkQyIn1dfSxub3Q6e29wY29kZToib3BlcmF0b3Jfbm90IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoiYm9vbGVhbiIsaW5wdXROYW1lOiJPUEVSQU5EIn1dfSwiY29uY2F0ZW5hdGU6d2l0aDoiOntvcGNvZGU6Im9wZXJhdG9yX2pvaW4iLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ0ZXh0IixpbnB1dE5hbWU6IlNUUklORzEifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiU1RSSU5HMiJ9XX0sImxldHRlcjpvZjoiOntvcGNvZGU6Im9wZXJhdG9yX2xldHRlcl9vZiIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfd2hvbGVfbnVtYmVyIixpbnB1dE5hbWU6IkxFVFRFUiJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoidGV4dCIsaW5wdXROYW1lOiJTVFJJTkcifV19LCJzdHJpbmdMZW5ndGg6Ijp7b3Bjb2RlOiJvcGVyYXRvcl9sZW5ndGgiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ0ZXh0IixpbnB1dE5hbWU6IlNUUklORyJ9XX0sIiUiOntvcGNvZGU6Im9wZXJhdG9yX21vZCIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6Ik5VTTEifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6Ik5VTTIifV19LHJvdW5kZWQ6e29wY29kZToib3BlcmF0b3Jfcm91bmQiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0ifV19LCJjb21wdXRlRnVuY3Rpb246b2Y6Ijp7b3Bjb2RlOiJvcGVyYXRvcl9tYXRob3AiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6Ik9QRVJBVE9SIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJOVU0ifV19LHJlYWRWYXJpYWJsZTp7b3Bjb2RlOiJkYXRhX3ZhcmlhYmxlIixhcmdNYXA6W3t0eXBlOiJmaWVsZCIsZmllbGROYW1lOiJWQVJJQUJMRSIsdmFyaWFibGVUeXBlOm4uU0NBTEFSX1RZUEV9XX0sImdldFZhcjoiOntvcGNvZGU6ImRhdGFfdmFyaWFibGUiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IlZBUklBQkxFIix2YXJpYWJsZVR5cGU6bi5TQ0FMQVJfVFlQRX1dfSwic2V0VmFyOnRvOiI6e29wY29kZToiZGF0YV9zZXR2YXJpYWJsZXRvIixhcmdNYXA6W3t0eXBlOiJmaWVsZCIsZmllbGROYW1lOiJWQVJJQUJMRSIsdmFyaWFibGVUeXBlOm4uU0NBTEFSX1RZUEV9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoidGV4dCIsaW5wdXROYW1lOiJWQUxVRSJ9XX0sImNoYW5nZVZhcjpieToiOntvcGNvZGU6ImRhdGFfY2hhbmdldmFyaWFibGVieSIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiVkFSSUFCTEUiLHZhcmlhYmxlVHlwZTpuLlNDQUxBUl9UWVBFfSx7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IlZBTFVFIn1dfSwic2hvd1ZhcmlhYmxlOiI6e29wY29kZToiZGF0YV9zaG93dmFyaWFibGUiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IlZBUklBQkxFIix2YXJpYWJsZVR5cGU6bi5TQ0FMQVJfVFlQRX1dfSwiaGlkZVZhcmlhYmxlOiI6e29wY29kZToiZGF0YV9oaWRldmFyaWFibGUiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IlZBUklBQkxFIix2YXJpYWJsZVR5cGU6bi5TQ0FMQVJfVFlQRX1dfSwiY29udGVudHNPZkxpc3Q6Ijp7b3Bjb2RlOiJkYXRhX2xpc3Rjb250ZW50cyIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiTElTVCIsdmFyaWFibGVUeXBlOm4uTElTVF9UWVBFfV19LCJhcHBlbmQ6dG9MaXN0OiI6e29wY29kZToiZGF0YV9hZGR0b2xpc3QiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ0ZXh0IixpbnB1dE5hbWU6IklURU0ifSx7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiTElTVCIsdmFyaWFibGVUeXBlOm4uTElTVF9UWVBFfV19LCJkZWxldGVMaW5lOm9mTGlzdDoiOntvcGNvZGU6ImRhdGFfZGVsZXRlb2ZsaXN0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9pbnRlZ2VyIixpbnB1dE5hbWU6IklOREVYIn0se3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IkxJU1QiLHZhcmlhYmxlVHlwZTpuLkxJU1RfVFlQRX1dfSwiaW5zZXJ0OmF0Om9mTGlzdDoiOntvcGNvZGU6ImRhdGFfaW5zZXJ0YXRsaXN0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoidGV4dCIsaW5wdXROYW1lOiJJVEVNIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX2ludGVnZXIiLGlucHV0TmFtZToiSU5ERVgifSx7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiTElTVCIsdmFyaWFibGVUeXBlOm4uTElTVF9UWVBFfV19LCJzZXRMaW5lOm9mTGlzdDp0bzoiOntvcGNvZGU6ImRhdGFfcmVwbGFjZWl0ZW1vZmxpc3QiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX2ludGVnZXIiLGlucHV0TmFtZToiSU5ERVgifSx7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiTElTVCIsdmFyaWFibGVUeXBlOm4uTElTVF9UWVBFfSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiSVRFTSJ9XX0sImdldExpbmU6b2ZMaXN0OiI6e29wY29kZToiZGF0YV9pdGVtb2ZsaXN0IixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9pbnRlZ2VyIixpbnB1dE5hbWU6IklOREVYIn0se3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IkxJU1QiLHZhcmlhYmxlVHlwZTpuLkxJU1RfVFlQRX1dfSwibGluZUNvdW50T2ZMaXN0OiI6e29wY29kZToiZGF0YV9sZW5ndGhvZmxpc3QiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IkxJU1QiLHZhcmlhYmxlVHlwZTpuLkxJU1RfVFlQRX1dfSwibGlzdDpjb250YWluczoiOntvcGNvZGU6ImRhdGFfbGlzdGNvbnRhaW5zaXRlbSIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiTElTVCIsdmFyaWFibGVUeXBlOm4uTElTVF9UWVBFfSx7dHlwZToiaW5wdXQiLGlucHV0T3A6InRleHQiLGlucHV0TmFtZToiSVRFTSJ9XX0sInNob3dMaXN0OiI6e29wY29kZToiZGF0YV9zaG93bGlzdCIsYXJnTWFwOlt7dHlwZToiZmllbGQiLGZpZWxkTmFtZToiTElTVCIsdmFyaWFibGVUeXBlOm4uTElTVF9UWVBFfV19LCJoaWRlTGlzdDoiOntvcGNvZGU6ImRhdGFfaGlkZWxpc3QiLGFyZ01hcDpbe3R5cGU6ImZpZWxkIixmaWVsZE5hbWU6IkxJU1QiLHZhcmlhYmxlVHlwZTpuLkxJU1RfVFlQRX1dfSxwcm9jRGVmOntvcGNvZGU6InByb2NlZHVyZXNfZGVmaW5pdGlvbiIsYXJnTWFwOltdfSxnZXRQYXJhbTp7b3Bjb2RlOiJhcmd1bWVudF9yZXBvcnRlcl9zdHJpbmdfbnVtYmVyIixhcmdNYXA6W3t0eXBlOiJmaWVsZCIsZmllbGROYW1lOiJWQUxVRSJ9XX0sY2FsbDp7b3Bjb2RlOiJwcm9jZWR1cmVzX2NhbGwiLGFyZ01hcDpbXX19LHI9ZnVuY3Rpb24oQSxlLHQpe2lbIiIuY29uY2F0KEEpLmNvbmNhdCgiHyIpLmNvbmNhdChlKV09dCxpWyIiLmNvbmNhdChBLCIuIikuY29uY2F0KGUpXT10fSxvPSJMRUdPIFdlRG8gMi4wIjtyKG8sIm1vdG9yT25Gb3IiLHtvcGNvZGU6IndlZG8yX21vdG9yT25Gb3IiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ3ZWRvMl9tZW51X01PVE9SX0lEIixpbnB1dE5hbWU6Ik1PVE9SX0lEIn0se3R5cGU6ImlucHV0IixpbnB1dE9wOiJtYXRoX251bWJlciIsaW5wdXROYW1lOiJEVVJBVElPTiJ9XX0pLHIobywibW90b3JPbiIse29wY29kZToid2VkbzJfbW90b3JPbiIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6IndlZG8yX21lbnVfTU9UT1JfSUQiLGlucHV0TmFtZToiTU9UT1JfSUQifV19KSxyKG8sIm1vdG9yT2ZmIix7b3Bjb2RlOiJ3ZWRvMl9tb3Rvck9mZiIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6IndlZG8yX21lbnVfTU9UT1JfSUQiLGlucHV0TmFtZToiTU9UT1JfSUQifV19KSxyKG8sInN0YXJ0TW90b3JQb3dlciIse29wY29kZToid2VkbzJfc3RhcnRNb3RvclBvd2VyIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoid2VkbzJfbWVudV9NT1RPUl9JRCIsaW5wdXROYW1lOiJNT1RPUl9JRCJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiUE9XRVIifV19KSxyKG8sInNldE1vdG9yRGlyZWN0aW9uIix7b3Bjb2RlOiJ3ZWRvMl9zZXRNb3RvckRpcmVjdGlvbiIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6IndlZG8yX21lbnVfTU9UT1JfSUQiLGlucHV0TmFtZToiTU9UT1JfSUQifSx7dHlwZToiaW5wdXQiLGlucHV0T3A6IndlZG8yX21lbnVfTU9UT1JfRElSRUNUSU9OIixpbnB1dE5hbWU6Ik1PVE9SX0RJUkVDVElPTiJ9XX0pLHIobywic2V0TEVEIix7b3Bjb2RlOiJ3ZWRvMl9zZXRMaWdodEh1ZSIsYXJnTWFwOlt7dHlwZToiaW5wdXQiLGlucHV0T3A6Im1hdGhfbnVtYmVyIixpbnB1dE5hbWU6IkhVRSJ9XX0pLHIobywicGxheU5vdGUiLHtvcGNvZGU6IndlZG8yX3BsYXlOb3RlRm9yIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiTk9URSJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiRFVSQVRJT04ifV19KSxyKG8sIndoZW5EaXN0YW5jZSIse29wY29kZToid2VkbzJfd2hlbkRpc3RhbmNlIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoid2VkbzJfbWVudV9PUCIsaW5wdXROYW1lOiJPUCJ9LHt0eXBlOiJpbnB1dCIsaW5wdXRPcDoibWF0aF9udW1iZXIiLGlucHV0TmFtZToiUkVGRVJFTkNFIn1dfSkscihvLCJ3aGVuVGlsdGVkIix7b3Bjb2RlOiJ3ZWRvMl93aGVuVGlsdGVkIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoid2VkbzJfbWVudV9USUxUX0RJUkVDVElPTl9BTlkiLGlucHV0TmFtZToiVElMVF9ESVJFQ1RJT05fQU5ZIn1dfSkscihvLCJnZXREaXN0YW5jZSIse29wY29kZToid2VkbzJfZ2V0RGlzdGFuY2UiLGFyZ01hcDpbXX0pLHIobywiaXNUaWx0ZWQiLHtvcGNvZGU6IndlZG8yX2lzVGlsdGVkIixhcmdNYXA6W3t0eXBlOiJpbnB1dCIsaW5wdXRPcDoid2VkbzJfbWVudV9USUxUX0RJUkVDVElPTl9BTlkiLGlucHV0TmFtZToiVElMVF9ESVJFQ1RJT05fQU5ZIn1dfSkscihvLCJnZXRUaWx0Iix7b3Bjb2RlOiJ3ZWRvMl9nZXRUaWx0QW5nbGUiLGFyZ01hcDpbe3R5cGU6ImlucHV0IixpbnB1dE9wOiJ3ZWRvMl9tZW51X1RJTFRfRElSRUNUSU9OIixpbnB1dE5hbWU6IlRJTFRfRElSRUNUSU9OIn1dfSksQS5leHBvcnRzPWl9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPXthdWRpb3N0cjoiaHR0cHM6Ly9leHRlbnNpb25zLnR1cmJvd2FycC5vcmcvdHVyYm9sb2FkZXIvYXVkaW9zdHJlYW0uanMiLGZhY2VTZW5zaW5nOiJodHRwczovL2V4dGVuc2lvbnMudHVyYm93YXJwLm9yZy9sYWIvZmFjZS1zZW5zaW5nLmpzIn19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPUE9PmZ1bmN0aW9uKCl7Zm9yKHZhciBlPWFyZ3VtZW50cy5sZW5ndGgsdD1uZXcgQXJyYXkoZSksbj0wO248ZTtuKyspdFtuXT1hcmd1bWVudHNbbl07cmV0dXJuIG5ldyBQcm9taXNlKChlLG4pPT57QSguLi50LChBLHQpPT57QT9uKCJzdHJpbmciPT10eXBlb2YgQT9uZXcgRXJyb3IoQSk6QSk6ZSh0KX0pfSl9O3ZhciBpPW4odCg0NTApKSxyPW4odCg0NTIpKSxvPW4odCg0NTMpKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe2koQSxlKS50aGVuKChmdW5jdGlvbihBKXtyZXR1cm4gcihBWzBdKS50aGVuKG8uYmluZChudWxsLGUpKS50aGVuKChmdW5jdGlvbihlKXtyZXR1cm5bZSxBWzFdXX0pKX0pKS50aGVuKHQuYmluZChudWxsLG51bGwpLHQpfX0sZnVuY3Rpb24oQSxlLHQpeyhmdW5jdGlvbihlKXt2YXIgbj10KDQ1MSk7QS5leHBvcnRzPWZ1bmN0aW9uKEEsdCxpKXtpZigic3RyaW5nIj09dHlwZW9mIEEpcmV0dXJuIGkobnVsbCxbQSxudWxsXSk7aWYoIWUuaXNCdWZmZXIoQSkpdHJ5e0E9bmV3IGUoQSl9Y2F0Y2goQSl7cmV0dXJuIGkoIklucHV0IG11c3QgYmUgYSBCdWZmZXIgb3IgYSBzdHJpbmcuIil9dmFyIHI9QS5zbGljZSgwLDMpLmpvaW4oIiAiKSxvPSExLHM9ITE7cmV0dXJuIDA9PT1yLmluZGV4T2YoIjgzIDk5IDExNCIpJiYobz0hMCksMD09PXIuaW5kZXhPZigiODAgNzUiKSYmKHM9ITApLHN8fG8/bz9pKCJQYXJzZXIgb25seSBzdXBwb3J0cyBTY3JhdGNoIDIuWCBhbmQgYWJvdmUiKTp2b2lkIG4oQSx0LGkpOmkobnVsbCxbQS50b1N0cmluZygidXRmLTgiKSxudWxsXSl9fSkuY2FsbCh0aGlzLHQoMjApLkJ1ZmZlcil9LGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10KDMzKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe3ZhciBpPSJGYWlsZWQgdG8gdW56aXAgYW5kIGV4dHJhY3QgcHJvamVjdC5qc29uLCB3aXRoIGVycm9yOiAiO3JldHVybiBuLmxvYWRBc3luYyhBKS50aGVuKChmdW5jdGlvbihBKXtjb25zdCBuPWU/QS5maWxlKC9eKFteL10qXC8pP3Nwcml0ZVwuanNvbiQvKVswXTpBLmZpbGUoL14oW14vXSpcLyk/cHJvamVjdFwuanNvbiQvKVswXTtyZXR1cm4gbj9uLmFzeW5jKCJzdHJpbmciKS50aGVuKChmdW5jdGlvbihlKXtyZXR1cm4gdChudWxsLFtlLEFdKX0pKTp0KGkrIm1pc3NpbmcgcHJvamVjdCBvciBzcHJpdGUganNvbiIpfSkpLmNhdGNoKChmdW5jdGlvbihBKXtyZXR1cm4gdChpK0EpfSkpfX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg5Mik7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQ7dHJ5e3Q9bi5wYXJzZShBLnJlcGxhY2UoLyhcXCspKGJ8dTAwMDgpL2csKEEsZSx0KT0+ZS5sZW5ndGglMj9BLnJlcGxhY2UoIlxcIit0LCIiKTpBKSl9Y2F0Y2goQSl7cmV0dXJuIGUoQS50b1N0cmluZygpKX1yZXR1cm4gZShudWxsLHQpfX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9ZnVuY3Rpb24oQSxlLHQpe2lmKCJvYmpOYW1lImluIGUpcmV0dXJuIGUucHJvamVjdFZlcnNpb249Mix0KG51bGwsZSk7aWYoQSl7aWYoIm5hbWUiaW4gZSlyZXR1cm4gZS5wcm9qZWN0VmVyc2lvbj0zLHQobnVsbCxlKX1lbHNlIGlmKCJ0YXJnZXRzImluIGUpcmV0dXJuIGUucHJvamVjdFZlcnNpb249Myx0KG51bGwsZSk7dChuZXcgRXJyb3IoIkNvdWxkIG5vdCBwYXJzZSBhcyBhIHZhbGlkIFNCMiBvciBTQjMgcHJvamVjdC4iKSl9fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDI3KSxpPXQoNDU1KSxyPXQoMTcpLG89dCgzMSkscz10KDI5KSxhPXQoNDYxKSxCPXQoNDYyKSxjPXQoMTEyKSxnPXQoNDY2KSxFPXQoNTApLFE9dCgzOSksdT10KDQ2NyksbD10KDQ2OCksaD10KDQ2OSksdz10KDExMyksQz10KDcyKSxJPXQoMTE0KSxNPXIudjMuY3JlYXRlKCksZD1uZXcgYyxwPW5ldyBjLG09bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KDQpLEY9bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KDQpLEQ9WzMsM10sWT0oQSxlLHQpPT4oMjQ4JkFbMF0pPT0oMjQ4JmVbdCswXSkmJigyNDgmQVsxXSk9PSgyNDgmZVt0KzFdKSYmKDI0MCZBWzJdKT09KDI0MCZlW3QrMl0pO2xldCBmO2xldCBOO2NsYXNzIFUgZXh0ZW5kcyBue3N0YXRpYyBpc1N1cHBvcnRlZChBKXt0cnl7QT1BfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTtjb25zdCBlPXthbHBoYTohMCxzdGVuY2lsOiEwLGFudGlhbGlhczohMSx4ckNvbXBhdGlibGU6ITB9O3JldHVybiEhKEEuZ2V0Q29udGV4dCgid2ViZ2wyIixlKXx8QS5nZXRDb250ZXh0KCJleHBlcmltZW50YWwtd2ViZ2wiLGUpfHxBLmdldENvbnRleHQoIndlYmdsIixlKSl9Y2F0Y2goQSl7cmV0dXJuITF9fXN0YXRpYyBfZ2V0Q29udGV4dChBKXtjb25zdCBlPXthbHBoYTohMCxzdGVuY2lsOiEwLGFudGlhbGlhczohMSx4ckNvbXBhdGlibGU6ITAscG93ZXJQcmVmZXJlbmNlOlUucG93ZXJQcmVmZXJlbmNlfTtyZXR1cm4gci5nZXRDb250ZXh0KEEsZSl8fHIuZ2V0V2ViR0xDb250ZXh0KEEsZSl9Y29uc3RydWN0b3IoQSxlLG4saSxoKXtzdXBlcigpO2NvbnN0IHc9dGhpcy5fZ2w9VS5fZ2V0Q29udGV4dChBKTtpZighdyl0aHJvdyBuZXcgRXJyb3IoIkNvdWxkIG5vdCBnZXQgV2ViR0wgY29udGV4dDogdGhpcyBicm93c2VyIG9yIGVudmlyb25tZW50IG1heSBub3Qgc3VwcG9ydCBXZWJHTC4iKTt0aGlzLl91c2VHcHVNb2RlPVUuVXNlR3B1TW9kZXMuQXV0b21hdGljLHRoaXMuX2FsbERyYXdhYmxlcz1bXSx0aGlzLl9hbGxTa2lucz1bXSx0aGlzLl9kcmF3TGlzdD1bXSx0aGlzLl9ncm91cE9yZGVyaW5nPVtdLHRoaXMuX2xheWVyR3JvdXBzPXt9LHRoaXMuX25leHREcmF3YWJsZUlkPUUuSURfTk9ORSsxLHRoaXMuX25leHRTa2luSWQ9RS5JRF9OT05FKzEsdGhpcy5fcHJvamVjdGlvbj1yLm00LmlkZW50aXR5KCksdGhpcy5fc2hhZGVyTWFuYWdlcj1uZXcgUSh3KSx0aGlzLl9yZWdpb25JZD1udWxsLHRoaXMuX2V4aXRSZWdpb249bnVsbCx0aGlzLl9iYWNrZ3JvdW5kRHJhd1JlZ2lvbklkPXtlbnRlcjooKT0+dGhpcy5fZW50ZXJEcmF3QmFja2dyb3VuZCgpLGV4aXQ6KCk9PnRoaXMuX2V4aXREcmF3QmFja2dyb3VuZCgpfSx0aGlzLl9zbmFwc2hvdENhbGxiYWNrcz1bXSx0aGlzLl9iYWNrZ3JvdW5kQ29sb3I0Zj1bMCwwLDAsMV0sdGhpcy5fYmFja2dyb3VuZENvbG9yM2I9bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KDMpLHRoaXMuX3BlblNraW5JZD1udWxsLHRoaXMuY3VzdG9tUmVuZGVyQ29uZmlnPXt0ZXh0Q29zdHVtZVJlc29sdXRpb246e2NhcHBlZDohMSxmaXhlZDohMSx2YWx1ZToxfX0sdGhpcy51c2VIaWdoUXVhbGl0eVJlbmRlcj0hMCx0aGlzLm9mZnNjcmVlblRvdWNoaW5nPSExLHRoaXMuZGlydHk9ITAsdGhpcy5vdmVybGF5Q29udGFpbmVyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMub3ZlcmxheUNvbnRhaW5lci5jbGFzc05hbWU9InNjcmF0Y2gtcmVuZGVyLW92ZXJsYXlzIix0aGlzLl9vdmVybGF5cz1bXSxOfHwoTj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpLE4udGV4dENvbnRlbnQ9dCg0NzcpLE4uY2xhc3NOYW1lPSJzY3JhdGNoLXJlbmRlci1zdHlsZXMiLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoTikpLHRoaXMuX2NyZWF0ZUdlb21ldHJ5KCksdGhpcy5vbihFLkV2ZW50cy5OYXRpdmVTaXplQ2hhbmdlZCx0aGlzLm9uTmF0aXZlU2l6ZUNoYW5nZWQpLHRoaXMuc2V0QmFja2dyb3VuZENvbG9yKDEsMSwxKSx0aGlzLnNldFN0YWdlU2l6ZShlfHwtMjQwLG58fDI0MCxpfHwtMTgwLGh8fDE4MCksdGhpcy5yZXNpemUodGhpcy5fbmF0aXZlU2l6ZVswXSx0aGlzLl9uYXRpdmVTaXplWzFdKSx3LmRpc2FibGUody5ERVBUSF9URVNUKSx3LmVuYWJsZSh3LkJMRU5EKSx3LmJsZW5kRnVuYyh3Lk9ORSx3Lk9ORV9NSU5VU19TUkNfQUxQSEEpLHRoaXMueHJFbmFibGVkPSExLHRoaXMueHJTcGxpdHRpbmc9ITEsdGhpcy54clNwbGl0T2Zmc2V0PTAsdGhpcy54ckxheWVyPW51bGwsdGhpcy5yZW5kZXJPZmZzY3JlZW49ITAsdGhpcy5hbGxvd1ByaXZhdGVTa2luQWNjZXNzPSEwLHRoaXMubWF4VGV4dHVyZURpbWVuc2lvbj0yMDQ4LHRoaXMuY3VzdG9tRm9udHM9e30sdGhpcy5fY3VzdG9tRm9udFN0eWxlcz1udWxsLHRoaXMuZXhwb3J0cz17dHdnbDpyLFNWR1JlbmRlcmVyOm8sRHJhd2FibGU6QixTa2luOnMsQml0bWFwU2tpbjphLFRleHRCdWJibGVTa2luOmwsUGVuU2tpbjpnLFNWR1NraW46dSxDYW52YXNNZWFzdXJlbWVudFByb3ZpZGVyOkMsUmVjdGFuZ2xlOmN9fXNldFJlbmRlck9mZnNjcmVlbihBKXt0aGlzLnJlbmRlck9mZnNjcmVlbj1BLHRoaXMuZGlydHk9ITAsdGhpcy5kcmF3KCl9c2V0VXNlSGlnaFF1YWxpdHlSZW5kZXIoQSl7dGhpcy5kaXJ0eT0hMCx0aGlzLnVzZUhpZ2hRdWFsaXR5UmVuZGVyPUEsdGhpcy5lbWl0KEUuRXZlbnRzLlVzZUhpZ2hRdWFsaXR5UmVuZGVyQ2hhbmdlZCxBKSx0aGlzLl91cGRhdGVSZW5kZXJRdWFsaXR5KCl9X3VwZGF0ZVJlbmRlclF1YWxpdHkoKXtpZihudWxsIT09dGhpcy5fcGVuU2tpbklkKXtjb25zdCBBPXRoaXMuX2FsbFNraW5zW3RoaXMuX3BlblNraW5JZF07QSYmKHRoaXMudXNlSGlnaFF1YWxpdHlSZW5kZXI/QS5zZXRSZW5kZXJRdWFsaXR5KHRoaXMuY2FudmFzLndpZHRoL3RoaXMuX25hdGl2ZVNpemVbMF0pOkEuc2V0UmVuZGVyUXVhbGl0eSgxKSl9Zm9yKGNvbnN0IEEgb2YgdGhpcy5fYWxsRHJhd2FibGVzKUEmJkEuc2V0SGlnaFF1YWxpdHkodGhpcy51c2VIaWdoUXVhbGl0eVJlbmRlcil9c2V0UHJpdmF0ZVNraW5BY2Nlc3MoQSl7dGhpcy5hbGxvd1ByaXZhdGVTa2luQWNjZXNzPUEsdGhpcy5lbWl0KEUuRXZlbnRzLkFsbG93UHJpdmF0ZVNraW5BY2Nlc3NDaGFuZ2VkLEEpfXNldE1heFRleHR1cmVEaW1lbnNpb24oQSl7Y29uc3QgZT10aGlzLl9nbC5nZXRQYXJhbWV0ZXIodGhpcy5fZ2wuTUFYX1RFWFRVUkVfU0laRSk7dGhpcy5tYXhUZXh0dXJlRGltZW5zaW9uPU1hdGgubWluKEEsZSl9Z2V0IGdsKCl7cmV0dXJuIHRoaXMuX2dsfWdldCBjYW52YXMoKXtyZXR1cm4gdGhpcy5fZ2wmJnRoaXMuX2dsLmNhbnZhc31yZXNpemUoQSxlKXtjb25zdHtjYW52YXM6dH09dGhpcy5fZ2wsbj13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSxpPUEqbixyPWUqbjt0LndpZHRoPT09aSYmdC5oZWlnaHQ9PT1yfHwodC53aWR0aD1pLHQuaGVpZ2h0PXIsdGhpcy5fdXBkYXRlUmVuZGVyUXVhbGl0eSgpLHRoaXMuX3VwZGF0ZU92ZXJsYXlzKCksdGhpcy5kaXJ0eT0hMCx0aGlzLmRyYXcoKSl9c2V0QmFja2dyb3VuZENvbG9yKEEsZSx0KXtsZXQgbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106MTt0aGlzLmRpcnR5PSEwLHRoaXMuX2JhY2tncm91bmRDb2xvcjRmWzBdPUEqbix0aGlzLl9iYWNrZ3JvdW5kQ29sb3I0ZlsxXT1lKm4sdGhpcy5fYmFja2dyb3VuZENvbG9yNGZbMl09dCpuLHRoaXMuX2JhY2tncm91bmRDb2xvcjRmWzNdPW4sdGhpcy5fYmFja2dyb3VuZENvbG9yM2JbMF09QSpuKjI1NSx0aGlzLl9iYWNrZ3JvdW5kQ29sb3IzYlsxXT1lKm4qMjU1LHRoaXMuX2JhY2tncm91bmRDb2xvcjNiWzJdPXQqbioyNTV9c2V0RGVidWdDYW52YXMoQSl7dGhpcy5fZGVidWdDYW52YXM9QX1zZXRVc2VHcHVNb2RlKEEpe3RoaXMuX3VzZUdwdU1vZGU9QX1zZXRTdGFnZVNpemUoQSxlLHQsbil7dGhpcy5feExlZnQ9QSx0aGlzLl94UmlnaHQ9ZSx0aGlzLl95Qm90dG9tPXQsdGhpcy5feVRvcD1uLHRoaXMuX3Byb2plY3Rpb249ci5tNC5vcnRobyhBLGUsdCxuLC0xLDEpLHRoaXMuX3NldE5hdGl2ZVNpemUoTWF0aC5hYnMoZS1BKSxNYXRoLmFicyh0LW4pKX1nZXROYXRpdmVTaXplKCl7cmV0dXJuW3RoaXMuX25hdGl2ZVNpemVbMF0sdGhpcy5fbmF0aXZlU2l6ZVsxXV19X3NldE5hdGl2ZVNpemUoQSxlKXt0aGlzLl9uYXRpdmVTaXplPVtBLGVdLHRoaXMuX3VwZGF0ZU92ZXJsYXlzKCksdGhpcy5lbWl0KEUuRXZlbnRzLk5hdGl2ZVNpemVDaGFuZ2VkLHtuZXdTaXplOnRoaXMuX25hdGl2ZVNpemV9KX1hZGRPdmVybGF5KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXToic2NhbGUiO2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5hcHBlbmRDaGlsZChBKSx0aGlzLm92ZXJsYXlDb250YWluZXIuYXBwZW5kQ2hpbGQodCk7Y29uc3Qgbj17Y29udGFpbmVyOnQsdXNlckVsZW1lbnQ6QSxtb2RlOmV9O3JldHVybiB0aGlzLl9vdmVybGF5cy5wdXNoKG4pLHRoaXMuX3VwZGF0ZU92ZXJsYXlzKCksbn1yZW1vdmVPdmVybGF5KEEpe2NvbnN0IGU9dGhpcy5fb3ZlcmxheXMuZmluZEluZGV4KGU9PmUudXNlckVsZW1lbnQ9PT1BKTstMSE9PWUmJih0aGlzLl9vdmVybGF5c1tlXS5jb250YWluZXIucmVtb3ZlKCksdGhpcy5fb3ZlcmxheXMuc3BsaWNlKGUsMSkpfV91cGRhdGVPdmVybGF5cygpe2NvbnN0W0EsZV09dGhpcy5fbmF0aXZlU2l6ZSx0PXRoaXMuY2FudmFzLndpZHRoL3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvLG49dGhpcy5jYW52YXMuaGVpZ2h0L3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvO3RoaXMub3ZlcmxheUNvbnRhaW5lci5zdHlsZS53aWR0aD0iIi5jb25jYXQodCwicHgiKSx0aGlzLm92ZXJsYXlDb250YWluZXIuc3R5bGUuaGVpZ2h0PSIiLmNvbmNhdChuLCJweCIpO2Zvcihjb25zdCBpIG9mIHRoaXMuX292ZXJsYXlzKXtjb25zdCByPWkuY29udGFpbmVyO2lmKCJzY2FsZSI9PT1pLm1vZGV8fCJzY2FsZS1jZW50ZXJlZCI9PT1pLm1vZGUpe2NvbnN0IG89dC9BLHM9bi9lO3Iuc3R5bGUud2lkdGg9IiIuY29uY2F0KEEsInB4Iiksci5zdHlsZS5oZWlnaHQ9IiIuY29uY2F0KGUsInB4Iik7Y29uc3QgYT0ic2NhbGUoIi5jb25jYXQobywiLCAiKS5jb25jYXQocywiKSIpO2lmKHIuc3R5bGUudHJhbnNmb3JtT3JpZ2luPSJ0b3AgbGVmdCIsInNjYWxlIj09PWkubW9kZSlyLnN0eWxlLnRyYW5zZm9ybT1hO2Vsc2V7Y29uc3QgdD0idHJhbnNsYXRlKCIuY29uY2F0KEEvMiwicHgsICIpLmNvbmNhdChlLzIsInB4KSIpO3Iuc3R5bGUudHJhbnNmb3JtPSIiLmNvbmNhdChhLCIgIikuY29uY2F0KHQpfX1lbHNlIHIuc3R5bGUudHJhbnNmb3JtPSIiLHIuc3R5bGUud2lkdGg9IjEwMCUiLHIuc3R5bGUuaGVpZ2h0PSIxMDAlIn19Y3JlYXRlQml0bWFwU2tpbihBLGUsdCl7Y29uc3Qgbj10aGlzLl9uZXh0U2tpbklkKyssaT1uZXcgYShuLHRoaXMpO3JldHVybiBpLnNldEJpdG1hcChBLGUsdCksdGhpcy5fYWxsU2tpbnNbbl09aSxufWNyZWF0ZVNWR1NraW4oQSxlKXtjb25zdCB0PXRoaXMuX25leHRTa2luSWQrKyxuPW5ldyB1KHQsdGhpcyk7cmV0dXJuIG4uc2V0U1ZHKEEsZSksdGhpcy5fYWxsU2tpbnNbdF09bix0fWNyZWF0ZVBlblNraW4oKXtjb25zdCBBPXRoaXMuX25leHRTa2luSWQrKyxlPW5ldyBnKEEsdGhpcyk7cmV0dXJuIHRoaXMuX2FsbFNraW5zW0FdPWUsdGhpcy5fcGVuU2tpbklkPUEsdGhpcy5fdXBkYXRlUmVuZGVyUXVhbGl0eSgpLEF9Y3JlYXRlVGV4dFNraW4oQSxlLHQsbil7Y29uc3QgaT10aGlzLl9uZXh0U2tpbklkKysscj1uZXcgbChpLHRoaXMpO3JldHVybiByLnNldFRleHRCdWJibGUoQSxlLHQsbiksdGhpcy5fYWxsU2tpbnNbaV09cixpfXVwZGF0ZVNWR1NraW4oQSxlLHQpe2lmKHRoaXMuX2FsbFNraW5zW0FdaW5zdGFuY2VvZiB1KXJldHVybiB2b2lkIHRoaXMuX2FsbFNraW5zW0FdLnNldFNWRyhlLHQpO2NvbnN0IG49bmV3IHUoQSx0aGlzKTtuLnNldFNWRyhlLHQpLHRoaXMuX3Jlc2tpbihBLG4pfXVwZGF0ZUJpdG1hcFNraW4oQSxlLHQsbil7aWYodGhpcy5fYWxsU2tpbnNbQV1pbnN0YW5jZW9mIGEpcmV0dXJuIHZvaWQgdGhpcy5fYWxsU2tpbnNbQV0uc2V0Qml0bWFwKGUsdCxuKTtjb25zdCBpPW5ldyBhKEEsdGhpcyk7aS5zZXRCaXRtYXAoZSx0LG4pLHRoaXMuX3Jlc2tpbihBLGkpfV9yZXNraW4oQSxlKXtjb25zdCB0PXRoaXMuX2FsbFNraW5zW0FdO3RoaXMuX2FsbFNraW5zW0FdPWU7Zm9yKGNvbnN0IEEgb2YgdGhpcy5fYWxsRHJhd2FibGVzKUEmJkEuc2tpbj09PXQmJihBLnNraW49ZSk7dC5kaXNwb3NlKCl9dXBkYXRlVGV4dFNraW4oQSxlLHQsbixpKXtpZih0aGlzLl9hbGxTa2luc1tBXWluc3RhbmNlb2YgbClyZXR1cm4gdm9pZCB0aGlzLl9hbGxTa2luc1tBXS5zZXRUZXh0QnViYmxlKGUsdCxuLGkpO2NvbnN0IHI9bmV3IGwoQSx0aGlzKTtyLnNldFRleHRCdWJibGUoZSx0LG4saSksdGhpcy5fcmVza2luKEEscil9dXBkYXRlVGV4dENvc3R1bWVTa2luKEEpe2lmKEEuc2tpbklkJiZ0aGlzLl9hbGxTa2luc1tBLnNraW5JZF1pbnN0YW5jZW9mIGgpcmV0dXJuIHRoaXMuX2FsbFNraW5zW0Euc2tpbklkXS5zZXRUZXh0QW5kU3R5bGUoQSksQS5za2luSWQ7Y29uc3QgZT10aGlzLl9uZXh0U2tpbklkKyssdD1uZXcgaChlLHRoaXMpO3JldHVybiB0aGlzLl9hbGxTa2luc1tlXT10LHQuc2V0VGV4dEFuZFN0eWxlKEEpLGV9ZGVzdHJveVNraW4oQSl7dGhpcy5fYWxsU2tpbnNbQV0uZGlzcG9zZSgpLGRlbGV0ZSB0aGlzLl9hbGxTa2luc1tBXX1jcmVhdGVEcmF3YWJsZShBKXtpZighQXx8IU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLl9sYXllckdyb3VwcyxBKSlyZXR1cm4gdm9pZCBJLndhcm4oIkNhbm5vdCBjcmVhdGUgYSBkcmF3YWJsZSB3aXRob3V0IGEga25vd24gbGF5ZXIgZ3JvdXAiKTtjb25zdCBlPXRoaXMuX25leHREcmF3YWJsZUlkKyssdD1uZXcgQihlLHRoaXMpO3JldHVybiB0aGlzLl9hbGxEcmF3YWJsZXNbZV09dCx0aGlzLl9hZGRUb0RyYXdMaXN0KGUsQSksdC5zZXRIaWdoUXVhbGl0eSh0aGlzLnVzZUhpZ2hRdWFsaXR5UmVuZGVyKSx0LnNraW49bnVsbCxlfWNyZWF0ZVRleHRXcmFwcGVyKEEpe3JldHVybiBuZXcoZnx8KGY9dCgxMTUpKSxmKShBKX1tYXJrU2tpbkFzUHJpdmF0ZShBKXtjb25zdCBlPXRoaXMuX2FsbFNraW5zW0FdO2UmJihlLnByaXZhdGU9ITApfXNldExheWVyR3JvdXBPcmRlcmluZyhBKXtjb25zdCBlPXt9O2ZvcihsZXQgQT0wO0E8dGhpcy5fZ3JvdXBPcmRlcmluZy5sZW5ndGg7QSsrKXtjb25zdCB0PXRoaXMuX2dyb3VwT3JkZXJpbmdbQV0sbj10aGlzLl9sYXllckdyb3Vwc1t0XSxpPW4uZHJhd0xpc3RPZmZzZXQscj10aGlzLl9lbmRJbmRleEZvcktub3duTGF5ZXJHcm91cChuKTtlW3RdPXRoaXMuX2RyYXdMaXN0LnNsaWNlKGkscil9dGhpcy5fZHJhd0xpc3Q9W10sdGhpcy5fZ3JvdXBPcmRlcmluZz1BO2ZvcihsZXQgQT0wO0E8dGhpcy5fZ3JvdXBPcmRlcmluZy5sZW5ndGg7QSsrKXtjb25zdCB0PXRoaXMuX2dyb3VwT3JkZXJpbmdbQV0sbj1lW3RdO24mJih0aGlzLl9kcmF3TGlzdD10aGlzLl9kcmF3TGlzdC5jb25jYXQobikpLHRoaXMuX2xheWVyR3JvdXBzW3RdPXtncm91cEluZGV4OkEsZHJhd0xpc3RPZmZzZXQ6dGhpcy5fZHJhd0xpc3QubGVuZ3RofX19X2FkZFRvRHJhd0xpc3QoQSxlKXtjb25zdCB0PXRoaXMuX2xheWVyR3JvdXBzW2VdLG49dC5ncm91cEluZGV4LGk9dGhpcy5fZW5kSW5kZXhGb3JLbm93bkxheWVyR3JvdXAodCk7dGhpcy5fZHJhd0xpc3Quc3BsaWNlKGksMCxBKSx0aGlzLl91cGRhdGVPZmZzZXRzKCJhZGQiLG4pfV91cGRhdGVPZmZzZXRzKEEsZSl7Zm9yKGxldCB0PWUrMTt0PHRoaXMuX2dyb3VwT3JkZXJpbmcubGVuZ3RoO3QrKyl7Y29uc3QgZT10aGlzLl9ncm91cE9yZGVyaW5nW3RdOyJhZGQiPT09QT90aGlzLl9sYXllckdyb3Vwc1tlXS5kcmF3TGlzdE9mZnNldCsrOiJkZWxldGUiPT09QSYmdGhpcy5fbGF5ZXJHcm91cHNbZV0uZHJhd0xpc3RPZmZzZXQtLX19Z2V0IF92aXNpYmxlRHJhd0xpc3QoKXtyZXR1cm4gdGhpcy5fZHJhd0xpc3QuZmlsdGVyKEE9PnRoaXMuX2FsbERyYXdhYmxlc1tBXS5fdmlzaWJsZSl9X2VuZEluZGV4Rm9yS25vd25MYXllckdyb3VwKEEpe2NvbnN0IGU9QS5ncm91cEluZGV4O3JldHVybiBlPT09dGhpcy5fZ3JvdXBPcmRlcmluZy5sZW5ndGgtMT90aGlzLl9kcmF3TGlzdC5sZW5ndGg6dGhpcy5fbGF5ZXJHcm91cHNbdGhpcy5fZ3JvdXBPcmRlcmluZ1tlKzFdXS5kcmF3TGlzdE9mZnNldH1kZXN0cm95RHJhd2FibGUoQSxlKXtpZighZXx8IU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLl9sYXllckdyb3VwcyxlKSlyZXR1cm4gdm9pZCBJLndhcm4oIkNhbm5vdCBkZXN0cm95IGRyYXdhYmxlIHdpdGhvdXQga25vd24gbGF5ZXIgZ3JvdXAuIik7dGhpcy5kaXJ0eT0hMDt0aGlzLl9hbGxEcmF3YWJsZXNbQV0uZGlzcG9zZSgpLGRlbGV0ZSB0aGlzLl9hbGxEcmF3YWJsZXNbQV07Y29uc3QgdD10aGlzLl9sYXllckdyb3Vwc1tlXSxuPXRoaXMuX2VuZEluZGV4Rm9yS25vd25MYXllckdyb3VwKHQpO2xldCBpPXQuZHJhd0xpc3RPZmZzZXQ7Zm9yKDtpPG4mJnRoaXMuX2RyYXdMaXN0W2ldIT09QTspaSsrO2k8bj8odGhpcy5fZHJhd0xpc3Quc3BsaWNlKGksMSksdGhpcy5fdXBkYXRlT2Zmc2V0cygiZGVsZXRlIix0Lmdyb3VwSW5kZXgpKTpJLndhcm4oIkNvdWxkIG5vdCBkZXN0cm95IGRyYXdhYmxlIHRoYXQgY291bGQgbm90IGJlIGZvdW5kIGluIGxheWVyIGdyb3VwLiIpfWdldERyYXdhYmxlT3JkZXIoQSl7cmV0dXJuIHRoaXMuX2RyYXdMaXN0LmluZGV4T2YoQSl9c2V0RHJhd2FibGVPcmRlcihBLGUsdCxuLGkpe2lmKCF0fHwhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuX2xheWVyR3JvdXBzLHQpKXJldHVybiB2b2lkIEkud2FybigiQ2Fubm90IHNldCB0aGUgb3JkZXIgb2YgYSBkcmF3YWJsZSB3aXRob3V0IGEga25vd24gbGF5ZXIgZ3JvdXAuIik7dGhpcy5kaXJ0eT0hMDtjb25zdCByPXRoaXMuX2xheWVyR3JvdXBzW3RdLG89ci5kcmF3TGlzdE9mZnNldCxzPXRoaXMuX2VuZEluZGV4Rm9yS25vd25MYXllckdyb3VwKHIpO2xldCBhPW87Zm9yKDthPHMmJnRoaXMuX2RyYXdMaXN0W2FdIT09QTspYSsrO2lmKGE8cyl7aWYoMD09PWUpcmV0dXJuIGE7dGhpcy5fZHJhd0xpc3Quc3BsaWNlKGEsMSlbMF07bGV0IHQ9ZTtuJiYodCs9YSk7Y29uc3Qgcj0oaXx8MCkrbyxCPXI+PW8mJnI8cz9yOm87cmV0dXJuIHQ9TWF0aC5tYXgodCxCKSx0PU1hdGgubWluKHQscyksdGhpcy5fZHJhd0xpc3Quc3BsaWNlKHQsMCxBKSx0fXJldHVybiBudWxsfXNraW5XYXNBbHRlcmVkKEEpe2ZvcihsZXQgZT0wO2U8dGhpcy5fZHJhd0xpc3QubGVuZ3RoO2UrKyl7Y29uc3QgdD10aGlzLl9kcmF3TGlzdFtlXSxuPXRoaXMuX2FsbERyYXdhYmxlc1t0XTtuLl9za2luPT09QSYmbi5fc2tpbldhc0FsdGVyZWQoKX19ZHJhdygpe2lmKCF0aGlzLmRpcnR5KXJldHVybjtpZih0aGlzLnhyRW5hYmxlZCYmIXRoaXMueHJMYXllcilyZXR1cm47dGhpcy5kaXJ0eT0hMSx0aGlzLl9kb0V4aXREcmF3UmVnaW9uKCk7Y29uc3QgQT10aGlzLl9nbCxlPXRoaXMueHJMYXllcjt0aGlzLnhyRW5hYmxlZD8oQS5iaW5kRnJhbWVidWZmZXIoQS5GUkFNRUJVRkZFUixlLmZyYW1lYnVmZmVyKSxBLnZpZXdwb3J0KDAsMCxlLmZyYW1lYnVmZmVyV2lkdGgsZS5mcmFtZWJ1ZmZlckhlaWdodCksQS5jbGVhckNvbG9yKDAsMCwwLDApKTooci5iaW5kRnJhbWVidWZmZXJJbmZvKEEsbnVsbCksQS52aWV3cG9ydCgwLDAsQS5jYW52YXMud2lkdGgsQS5jYW52YXMuaGVpZ2h0KSxBLmNsZWFyQ29sb3IoLi4udGhpcy5fYmFja2dyb3VuZENvbG9yNGYpKSxBLmNsZWFyKEEuQ09MT1JfQlVGRkVSX0JJVCk7Y29uc3QgdD10aGlzLl9zbmFwc2hvdENhbGxiYWNrcy5sZW5ndGg+MDtpZih0aGlzLnhyU3BsaXR0aW5nKXtjb25zdCBuPXRoaXMueHJFbmFibGVkP2UuZnJhbWVidWZmZXJXaWR0aDpBLmNhbnZhcy53aWR0aCxpPXRoaXMueHJFbmFibGVkP2UuZnJhbWVidWZmZXJIZWlnaHQ6QS5jYW52YXMuaGVpZ2h0LG89dGhpcy5feFJpZ2h0LXRoaXMuX3hMZWZ0LHM9ci5tNC5vcnRobyh0aGlzLl94TGVmdCt0aGlzLnhyU3BsaXRPZmZzZXQsdGhpcy5feFJpZ2h0K28rdGhpcy54clNwbGl0T2Zmc2V0LHRoaXMuX3lCb3R0b20sdGhpcy5feVRvcCwtMSwxKSxhPXIubTQub3J0aG8odGhpcy5feExlZnQtby10aGlzLnhyU3BsaXRPZmZzZXQsdGhpcy5feFJpZ2h0K28tby10aGlzLnhyU3BsaXRPZmZzZXQsdGhpcy5feUJvdHRvbSx0aGlzLl95VG9wLC0xLDEpO0EuZW5hYmxlKEEuU0NJU1NPUl9URVNUKSxBLnNjaXNzb3IoMCwwLG4vMixpKSx0aGlzLl9kcmF3VGhlc2UodGhpcy5fZHJhd0xpc3QsUS5EUkFXX01PREUuZGVmYXVsdCxzLHtmcmFtZWJ1ZmZlcldpZHRoOm4sZnJhbWVidWZmZXJIZWlnaHQ6aSxza2lwUHJpdmF0ZVNraW5zOnR9KSxBLnNjaXNzb3Iobi8yLDAsbi8yLGkpLHRoaXMuX2RyYXdUaGVzZSh0aGlzLl9kcmF3TGlzdCxRLkRSQVdfTU9ERS5kZWZhdWx0LGEse2ZyYW1lYnVmZmVyV2lkdGg6bixmcmFtZWJ1ZmZlckhlaWdodDppLHNraXBQcml2YXRlU2tpbnM6dH0pLEEuZGlzYWJsZShBLlNDSVNTT1JfVEVTVCl9ZWxzZSB0aGlzLl9kcmF3VGhlc2UodGhpcy5fZHJhd0xpc3QsUS5EUkFXX01PREUuZGVmYXVsdCx0aGlzLl9wcm9qZWN0aW9uLHtmcmFtZWJ1ZmZlcldpZHRoOkEuY2FudmFzLndpZHRoLGZyYW1lYnVmZmVySGVpZ2h0OkEuY2FudmFzLmhlaWdodCxza2lwUHJpdmF0ZVNraW5zOnR9KTtpZih0KXtjb25zdCBlPUEuY2FudmFzLnRvRGF0YVVSTCgpO3RoaXMuX3NuYXBzaG90Q2FsbGJhY2tzLmZvckVhY2goQT0+QShlKSksdGhpcy5fc25hcHNob3RDYWxsYmFja3M9W10sdGhpcy5kaXJ0eT0hMH19Z2V0Qm91bmRzKEEpe2NvbnN0IGU9dGhpcy5fYWxsRHJhd2FibGVzW0FdO2lmKGUubmVlZHNDb252ZXhIdWxsUG9pbnRzKCkpe2NvbnN0IHQ9dGhpcy5fZ2V0Q29udmV4SHVsbFBvaW50c0ZvckRyYXdhYmxlKEEpO2Uuc2V0Q29udmV4SHVsbFBvaW50cyh0KX1jb25zdCB0PWUuZ2V0RmFzdEJvdW5kcygpO2lmKHRoaXMuX2RlYnVnQ2FudmFzKXtjb25zdCBBPXRoaXMuX2dsO3RoaXMuX2RlYnVnQ2FudmFzLndpZHRoPUEuY2FudmFzLndpZHRoLHRoaXMuX2RlYnVnQ2FudmFzLmhlaWdodD1BLmNhbnZhcy5oZWlnaHQ7Y29uc3QgZT10aGlzLl9kZWJ1Z0NhbnZhcy5nZXRDb250ZXh0KCIyZCIse3dpbGxSZWFkRnJlcXVlbnRseTohMH0pO2UuZHJhd0ltYWdlKEEuY2FudmFzLDAsMCksZS5zdHJva2VTdHlsZT0iI0ZGMDAwMCI7Y29uc3Qgbj13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbztlLnN0cm9rZVJlY3QobioodC5sZWZ0K3RoaXMuX25hdGl2ZVNpemVbMF0vMiksbiooLXQudG9wK3RoaXMuX25hdGl2ZVNpemVbMV0vMiksbioodC5yaWdodC10LmxlZnQpLG4qKC10LmJvdHRvbSt0LnRvcCkpfXJldHVybiB0fWdldEJvdW5kc0ZvckJ1YmJsZShBKXtjb25zdCBlPXRoaXMuX2FsbERyYXdhYmxlc1tBXTtpZihlLm5lZWRzQ29udmV4SHVsbFBvaW50cygpKXtjb25zdCB0PXRoaXMuX2dldENvbnZleEh1bGxQb2ludHNGb3JEcmF3YWJsZShBKTtlLnNldENvbnZleEh1bGxQb2ludHModCl9Y29uc3QgdD1lLmdldEJvdW5kc0ZvckJ1YmJsZSgpO2lmKHRoaXMuX2RlYnVnQ2FudmFzKXtjb25zdCBBPXRoaXMuX2dsO3RoaXMuX2RlYnVnQ2FudmFzLndpZHRoPUEuY2FudmFzLndpZHRoLHRoaXMuX2RlYnVnQ2FudmFzLmhlaWdodD1BLmNhbnZhcy5oZWlnaHQ7Y29uc3QgZT10aGlzLl9kZWJ1Z0NhbnZhcy5nZXRDb250ZXh0KCIyZCIse3dpbGxSZWFkRnJlcXVlbnRseTohMH0pO2UuZHJhd0ltYWdlKEEuY2FudmFzLDAsMCksZS5zdHJva2VTdHlsZT0iI0ZGMDAwMCI7Y29uc3Qgbj13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbztlLnN0cm9rZVJlY3QobioodC5sZWZ0K3RoaXMuX25hdGl2ZVNpemVbMF0vMiksbiooLXQudG9wK3RoaXMuX25hdGl2ZVNpemVbMV0vMiksbioodC5yaWdodC10LmxlZnQpLG4qKC10LmJvdHRvbSt0LnRvcCkpfXJldHVybiB0fWdldEN1cnJlbnRTa2luU2l6ZShBKXtjb25zdCBlPXRoaXMuX2FsbERyYXdhYmxlc1tBXTtyZXR1cm4gdGhpcy5nZXRTa2luU2l6ZShlLnNraW4uaWQpfWdldFNraW5TaXplKEEpe3JldHVybiB0aGlzLl9hbGxTa2luc1tBXS5zaXplfWdldFNraW5Sb3RhdGlvbkNlbnRlcihBKXtyZXR1cm4gdGhpcy5fYWxsU2tpbnNbQV0uY2FsY3VsYXRlUm90YXRpb25DZW50ZXIoKX1pc1RvdWNoaW5nQ29sb3IoQSxlLHQpe2NvbnN0IG49dGhpcy5fY2FuZGlkYXRlc1RvdWNoaW5nKEEsdGhpcy5fdmlzaWJsZURyYXdMaXN0KTtsZXQgaTtpZihZKGUsdGhpcy5fYmFja2dyb3VuZENvbG9yM2IsMCkpe2lmKGk9dGhpcy5fdG91Y2hpbmdCb3VuZHMoQSksbnVsbD09PWkpcmV0dXJuITF9ZWxzZXtpZigwPT09bi5sZW5ndGgpcmV0dXJuITE7aT10aGlzLl9jYW5kaWRhdGVzQm91bmRzKG4pfWNvbnN0IHI9dGhpcy5fZ2V0TWF4UGl4ZWxzRm9yQ1BVKCksbz10aGlzLl9kZWJ1Z0NhbnZhcyYmdGhpcy5fZGVidWdDYW52YXMuZ2V0Q29udGV4dCgiMmQiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KTtvJiYodGhpcy5fZGVidWdDYW52YXMud2lkdGg9aS53aWR0aCx0aGlzLl9kZWJ1Z0NhbnZhcy5oZWlnaHQ9aS5oZWlnaHQpLGkud2lkdGgqaS5oZWlnaHQqKG4ubGVuZ3RoKzEpPj1yJiZ0aGlzLl9pc1RvdWNoaW5nQ29sb3JHcHVTdGFydChBLG4ubWFwKEE9PntsZXR7aWQ6ZX09QTtyZXR1cm4gZX0pLnJldmVyc2UoKSxpLGUsdCk7Y29uc3Qgcz10aGlzLl9hbGxEcmF3YWJsZXNbQV0sYT1NLGM9bSxnPUJvb2xlYW4odCk7cy51cGRhdGVDUFVSZW5kZXJBdHRyaWJ1dGVzKCk7Y29uc3QgRT1+US5FRkZFQ1RfSU5GTy5naG9zdC5tYXNrO2ZvcihsZXQgQT1pLmJvdHRvbTtBPD1pLnRvcDtBKyspe2lmKGkud2lkdGgqKEEtaS5ib3R0b20pKihuLmxlbmd0aCsxKT49cilyZXR1cm4gdGhpcy5faXNUb3VjaGluZ0NvbG9yR3B1RmluKGksZSxBLWkuYm90dG9tKTtmb3IobGV0IHI9aS5sZWZ0O3I8PWkucmlnaHQ7cisrKWlmKGFbMV09QSxhWzBdPXIsKGc/KHU9Qi5zYW1wbGVDb2xvcjRiKGEscyxjLEUpLGw9dCx1WzNdPjAmJigyNTImdVswXSk9PSgyNTImbFswXSkmJigyNTImdVsxXSk9PSgyNTImbFsxXSkmJigyNTImdVsyXSk9PSgyNTImbFsyXSkpOnMuaXNUb3VjaGluZyhhKSkmJihVLnNhbXBsZUNvbG9yM2IoYSxuLGMpLG8mJihvLmZpbGxTdHlsZT0icmdiKCIuY29uY2F0KGNbMF0sIiwiKS5jb25jYXQoY1sxXSwiLCIpLmNvbmNhdChjWzJdLCIpIiksby5maWxsUmVjdChyLWkubGVmdCxpLmJvdHRvbS1BLDEsMSkpLFkoYyxlLDApKSlyZXR1cm4hMH12YXIgdSxsO3JldHVybiExfV9nZXRNYXhQaXhlbHNGb3JDUFUoKXtzd2l0Y2godGhpcy5fdXNlR3B1TW9kZSl7Y2FzZSBVLlVzZUdwdU1vZGVzLkZvcmNlQ1BVOnJldHVybiAxLzA7Y2FzZSBVLlVzZUdwdU1vZGVzLkZvcmNlR1BVOnJldHVybiAwO2Nhc2UgVS5Vc2VHcHVNb2Rlcy5BdXRvbWF0aWM6ZGVmYXVsdDpyZXR1cm4gNGU0fX1fZW50ZXJEcmF3QmFja2dyb3VuZCgpe2NvbnN0IEE9dGhpcy5nbCxlPXRoaXMuX3NoYWRlck1hbmFnZXIuZ2V0U2hhZGVyKFEuRFJBV19NT0RFLmJhY2tncm91bmQsMCk7QS5kaXNhYmxlKEEuQkxFTkQpLEEudXNlUHJvZ3JhbShlLnByb2dyYW0pLHIuc2V0QnVmZmVyc0FuZEF0dHJpYnV0ZXMoQSxlLHRoaXMuX2J1ZmZlckluZm8pfV9leGl0RHJhd0JhY2tncm91bmQoKXtjb25zdCBBPXRoaXMuZ2w7QS5lbmFibGUoQS5CTEVORCl9X2lzVG91Y2hpbmdDb2xvckdwdVN0YXJ0KEEsZSx0LG4saSl7dGhpcy5fZG9FeGl0RHJhd1JlZ2lvbigpO2NvbnN0IG89dGhpcy5fZ2w7ci5iaW5kRnJhbWVidWZmZXJJbmZvKG8sdGhpcy5fcXVlcnlCdWZmZXJJbmZvKSxvLnZpZXdwb3J0KDAsMCx0LndpZHRoLHQuaGVpZ2h0KTtjb25zdCBzPXIubTQub3J0aG8odC5sZWZ0LHQucmlnaHQsdC50b3AsdC5ib3R0b20sLTEsMSk7bGV0IGE7by5jbGVhckNvbG9yKDAsMCwwLDApLG8uY2xlYXIoby5DT0xPUl9CVUZGRVJfQklUfG8uU1RFTkNJTF9CVUZGRVJfQklUKSxpJiYoYT17dV9jb2xvck1hc2s6W2lbMF0vMjU1LGlbMV0vMjU1LGlbMl0vMjU1XSx1X2NvbG9yTWFza1RvbGVyYW5jZToyLzI1NX0pO3RyeXtvLmVuYWJsZShvLlNURU5DSUxfVEVTVCksby5zdGVuY2lsRnVuYyhvLkFMV0FZUywxLDEpLG8uc3RlbmNpbE9wKG8uS0VFUCxvLktFRVAsby5SRVBMQUNFKSxvLmNvbG9yTWFzayghMSwhMSwhMSwhMSksdGhpcy5fZHJhd1RoZXNlKFtBXSxpP1EuRFJBV19NT0RFLmNvbG9yTWFzazpRLkRSQVdfTU9ERS5zaWxob3VldHRlLHMse2V4dHJhVW5pZm9ybXM6YSxpZ25vcmVWaXNpYmlsaXR5OiEwLGVmZmVjdE1hc2s6flEuRUZGRUNUX0lORk8uZ2hvc3QubWFza30pLG8uc3RlbmNpbEZ1bmMoby5FUVVBTCwxLDEpLG8uc3RlbmNpbE9wKG8uS0VFUCxvLktFRVAsby5LRUVQKSxvLmNvbG9yTWFzayghMCwhMCwhMCwhMCksdGhpcy5lbnRlckRyYXdSZWdpb24odGhpcy5fYmFja2dyb3VuZERyYXdSZWdpb25JZCk7Y29uc3QgdD17dV9iYWNrZ3JvdW5kQ29sb3I6dGhpcy5fYmFja2dyb3VuZENvbG9yNGZ9LG49dGhpcy5fc2hhZGVyTWFuYWdlci5nZXRTaGFkZXIoUS5EUkFXX01PREUuYmFja2dyb3VuZCwwKTtyLnNldFVuaWZvcm1zKG4sdCksci5kcmF3QnVmZmVySW5mbyhvLHRoaXMuX2J1ZmZlckluZm8sby5UUklBTkdMRVMpLHRoaXMuX2RyYXdUaGVzZShlLFEuRFJBV19NT0RFLmRlZmF1bHQscyx7aWRGaWx0ZXJGdW5jOmU9PmUhPT1BfSl9ZmluYWxseXtvLmNvbG9yTWFzayghMCwhMCwhMCwhMCksby5kaXNhYmxlKG8uU1RFTkNJTF9URVNUKSx0aGlzLl9kb0V4aXREcmF3UmVnaW9uKCl9fV9pc1RvdWNoaW5nQ29sb3JHcHVGaW4oQSxlLHQpe2NvbnN0IG49dGhpcy5fZ2wsaT1uZXcgVWludDhBcnJheShNYXRoLmZsb29yKEEud2lkdGgqKEEuaGVpZ2h0LXQpKjQpKTtpZihuLnJlYWRQaXhlbHMoMCwwLEEud2lkdGgsQS5oZWlnaHQtdCxuLlJHQkEsbi5VTlNJR05FRF9CWVRFLGkpLHRoaXMuX2RlYnVnQ2FudmFzKXt0aGlzLl9kZWJ1Z0NhbnZhcy53aWR0aD1BLndpZHRoLHRoaXMuX2RlYnVnQ2FudmFzLmhlaWdodD1BLmhlaWdodDtjb25zdCBlPXRoaXMuX2RlYnVnQ2FudmFzLmdldENvbnRleHQoIjJkIix7d2lsbFJlYWRGcmVxdWVudGx5OiEwfSksbj1lLmdldEltYWdlRGF0YSgwLDAsQS53aWR0aCxBLmhlaWdodC10KTtuLmRhdGEuc2V0KGkpLGUucHV0SW1hZ2VEYXRhKG4sMCwwKX1mb3IobGV0IEE9MDtBPGkubGVuZ3RoO0ErPTQpaWYoMCE9PWlbQSszXSYmWShlLGksQSkpcmV0dXJuITA7cmV0dXJuITF9aXNUb3VjaGluZ0RyYXdhYmxlcyhBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06dGhpcy5fZHJhd0xpc3Q7Y29uc3QgdD10aGlzLl9jYW5kaWRhdGVzVG91Y2hpbmcoQSxlLmZpbHRlcihBPT50aGlzLl9hbGxEcmF3YWJsZXNbQV0uX3Zpc2libGUpKTtpZigwPT09dC5sZW5ndGh8fCF0aGlzLl9hbGxEcmF3YWJsZXNbQV0uX3Zpc2libGUpcmV0dXJuITE7Y29uc3Qgbj10aGlzLl9jYW5kaWRhdGVzQm91bmRzKHQpLGk9dGhpcy5fYWxsRHJhd2FibGVzW0FdLHI9TTtpLnVwZGF0ZUNQVVJlbmRlckF0dHJpYnV0ZXMoKTtmb3IobGV0IEE9bi5sZWZ0O0E8PW4ucmlnaHQ7QSsrKXtyWzBdPUE7Zm9yKGxldCBBPW4uYm90dG9tO0E8PW4udG9wO0ErKylpZihyWzFdPUEsaS5pc1RvdWNoaW5nKHIpKWZvcihsZXQgQT0wO0E8dC5sZW5ndGg7QSsrKWlmKHRbQV0uZHJhd2FibGUuaXNUb3VjaGluZyhyKSlyZXR1cm4hMH1yZXR1cm4hMX1nZXRUb3VjaGluZ0RyYXdhYmxlc1BvaW50KEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTp0aGlzLl9kcmF3TGlzdDtjb25zdCB0PXRoaXMuX2NhbmRpZGF0ZXNUb3VjaGluZyhBLGUuZmlsdGVyKEE9PnRoaXMuX2FsbERyYXdhYmxlc1tBXS5fdmlzaWJsZSkpO2lmKDA9PT10Lmxlbmd0aHx8IXRoaXMuX2FsbERyYXdhYmxlc1tBXS5fdmlzaWJsZSlyZXR1cm4gbnVsbDtjb25zdCBuPXRoaXMuX2NhbmRpZGF0ZXNCb3VuZHModCksaT10aGlzLl9hbGxEcmF3YWJsZXNbQV0scj1NO2kudXBkYXRlQ1BVUmVuZGVyQXR0cmlidXRlcygpO2ZvcihsZXQgQT1uLmxlZnQ7QTw9bi5yaWdodDtBKyspe3JbMF09QTtmb3IobGV0IEE9bi5ib3R0b207QTw9bi50b3A7QSsrKWlmKHJbMV09QSxpLmlzVG91Y2hpbmcocikpZm9yKGxldCBBPTA7QTx0Lmxlbmd0aDtBKyspaWYodFtBXS5kcmF3YWJsZS5pc1RvdWNoaW5nKHIpKXJldHVybiByfXJldHVybiBudWxsfWNsaWVudFNwYWNlVG9TY3JhdGNoQm91bmRzKEEsZSl7bGV0IHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOjEsbj1hcmd1bWVudHMubGVuZ3RoPjMmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106MTtjb25zdCBpPXRoaXMuX2dsLHI9dGhpcy5fbmF0aXZlU2l6ZVswXS9pLmNhbnZhcy5jbGllbnRXaWR0aCxvPXRoaXMuX25hdGl2ZVNpemVbMV0vaS5jYW52YXMuY2xpZW50SGVpZ2h0O3QqPXIsbio9byx0PU1hdGgubWF4KDEsTWF0aC5taW4oTWF0aC5yb3VuZCh0KSxEWzBdKSksbj1NYXRoLm1heCgxLE1hdGgubWluKE1hdGgucm91bmQobiksRFsxXSkpO2NvbnN0IHM9QSpyLSh0LTEpLzIsYT1lKm8rKG4tMSkvMixCPXQlMj8wOi0uNSxnPW4lMj8wOi0uNSxFPW5ldyBjO3JldHVybiBFLmluaXRGcm9tQm91bmRzKE1hdGguZmxvb3IodGhpcy5feExlZnQrcytCKSxNYXRoLmZsb29yKHRoaXMuX3hMZWZ0K3MrQit0LTEpLE1hdGguY2VpbCh0aGlzLl95VG9wLWErZyksTWF0aC5jZWlsKHRoaXMuX3lUb3AtYStnK24tMSkpLEV9ZHJhd2FibGVUb3VjaGluZyhBLGUsdCxuLGkpe2NvbnN0IG89dGhpcy5fYWxsRHJhd2FibGVzW0FdO2lmKCFvKXJldHVybiExO2NvbnN0IHM9dGhpcy5jbGllbnRTcGFjZVRvU2NyYXRjaEJvdW5kcyhlLHQsbixpKSxhPW8uZ2V0RmFzdEJvdW5kcygpO2lmKGEuc25hcFRvSW50KCksIWEuaW50ZXJzZWN0cyhzKSlyZXR1cm4hMTtvLnVwZGF0ZUNQVVJlbmRlckF0dHJpYnV0ZXMoKTtjb25zdCBCPXIudjMuY3JlYXRlKCk7Zm9yKEJbMV09cy5ib3R0b207QlsxXTw9cy50b3A7QlsxXSsrKWZvcihCWzBdPXMubGVmdDtCWzBdPD1zLnJpZ2h0O0JbMF0rKylpZihvLmlzVG91Y2hpbmcoQikpcmV0dXJuITA7cmV0dXJuITF9cGljayhBLGUsdCxuLGkpe2NvbnN0IG89dGhpcy5jbGllbnRTcGFjZVRvU2NyYXRjaEJvdW5kcyhBLGUsdCxuKTtpZihvLmxlZnQ9PT0tMS8wfHxvLmJvdHRvbT09PS0xLzApcmV0dXJuITE7aWYoMD09PShpPShpfHx0aGlzLl9kcmF3TGlzdCkuZmlsdGVyKEE9Pntjb25zdCBlPXRoaXMuX2FsbERyYXdhYmxlc1tBXTtpZihlLmdldFZpc2libGUoKSYmMCE9PWUuZ2V0VW5pZm9ybXMoKS51X2dob3N0KXtjb25zdCBBPWUuZ2V0RmFzdEJvdW5kcygpO3JldHVybiEhby5pbnRlcnNlY3RzKEEpJiYoIShlLnNraW4gaW5zdGFuY2VvZiBnKSYmKGUudXBkYXRlQ1BVUmVuZGVyQXR0cmlidXRlcygpLCEwKSl9cmV0dXJuITF9KSkubGVuZ3RoKXJldHVybiExO2NvbnN0IHM9W10sYT1yLnYzLmNyZWF0ZSgwLDAsMCk7Zm9yKGFbMV09by5ib3R0b207YVsxXTw9by50b3A7YVsxXSsrKWZvcihhWzBdPW8ubGVmdDthWzBdPD1vLnJpZ2h0O2FbMF0rKylmb3IobGV0IEE9aS5sZW5ndGgtMTtBPj0wO0EtLSl7Y29uc3QgZT1pW0FdO2lmKHRoaXMuX2FsbERyYXdhYmxlc1tlXS5pc1RvdWNoaW5nKGEpKXtzW2VdPShzW2VdfHwwKSsxO2JyZWFrfX1zW0UuSURfTk9ORV09MDtsZXQgQj1FLklEX05PTkU7Zm9yKGNvbnN0IEEgaW4gcylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocyxBKSYmc1tBXT5zW0JdJiYoQj1BKTtyZXR1cm4gTnVtYmVyKEIpfWV4dHJhY3REcmF3YWJsZVNjcmVlblNwYWNlKEEpe2NvbnN0IGU9dGhpcy5fYWxsRHJhd2FibGVzW0FdO2lmKCFlKXRocm93IG5ldyBFcnJvcigiQ291bGQgbm90IGV4dHJhY3QgZHJhd2FibGUgd2l0aCBJRCAiLmNvbmNhdChBLCI7IGl0IGRvZXMgbm90IGV4aXN0IikpO3RoaXMuX2RvRXhpdERyYXdSZWdpb24oKTtjb25zdCB0PS41KnRoaXMuX25hdGl2ZVNpemVbMF0sbj0uNSp0aGlzLl9uYXRpdmVTaXplWzFdLGk9ZS5nZXRGYXN0Qm91bmRzKCksbz10aGlzLmNhbnZhcyxzPW8ud2lkdGgvdGhpcy5fbmF0aXZlU2l6ZVswXSxhPW5ldyBjO2EuaW5pdEZyb21Cb3VuZHMoKGkubGVmdCt0KSpzLChpLnJpZ2h0K3QpKnMsKG4taS50b3ApKnMsKG4taS5ib3R0b20pKnMpLGEuc25hcFRvSW50KCksaS5pbml0RnJvbUJvdW5kcyhhLmxlZnQvcy10LGEucmlnaHQvcy10LG4tYS50b3AvcyxuLWEuYm90dG9tL3MpO2NvbnN0IEI9dGhpcy5fZ2wsZz1CLmdldFBhcmFtZXRlcihCLk1BWF9URVhUVVJFX1NJWkUpLEU9TWF0aC5taW4oMjA0OCxhLndpZHRoLGcpLHU9TWF0aC5taW4oMjA0OCxhLmhlaWdodCxnKSxsPXIuY3JlYXRlRnJhbWVidWZmZXJJbmZvKEIsW3tmb3JtYXQ6Qi5SR0JBfV0sRSx1KTt0cnl7ci5iaW5kRnJhbWVidWZmZXJJbmZvKEIsbCksQi52aWV3cG9ydCgwLDAsRSx1KTtjb25zdCBlPXIubTQub3J0aG8oaS5sZWZ0LGkucmlnaHQsaS50b3AsaS5ib3R0b20sLTEsMSk7Qi5jbGVhckNvbG9yKDAsMCwwLDApLEIuY2xlYXIoQi5DT0xPUl9CVUZGRVJfQklUKSx0aGlzLl9kcmF3VGhlc2UoW0FdLFEuRFJBV19NT0RFLnN0cmFpZ2h0QWxwaGEsZSx7ZnJhbWVidWZmZXJXaWR0aDpvLndpZHRoLGZyYW1lYnVmZmVySGVpZ2h0Om8uaGVpZ2h0fSk7Y29uc3QgdD1uZXcgVWludDhBcnJheShNYXRoLmZsb29yKEUqdSo0KSk7Qi5yZWFkUGl4ZWxzKDAsMCxFLHUsQi5SR0JBLEIuVU5TSUdORURfQllURSx0KTtjb25zdCBuPW5ldyBJbWFnZURhdGEobmV3IFVpbnQ4Q2xhbXBlZEFycmF5KHQuYnVmZmVyKSxFLHUpLHM9by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aC9vLndpZHRoO3JldHVybntpbWFnZURhdGE6bix4OmEubGVmdCpzLHk6YS5ib3R0b20qcyx3aWR0aDphLndpZHRoKnMsaGVpZ2h0OmEuaGVpZ2h0KnN9fWZpbmFsbHl7Qi5kZWxldGVGcmFtZWJ1ZmZlcihsLmZyYW1lYnVmZmVyKX19ZXh0cmFjdENvbG9yKEEsZSx0KXt0aGlzLl9kb0V4aXREcmF3UmVnaW9uKCk7Y29uc3Qgbj1NYXRoLnJvdW5kKHRoaXMuX25hdGl2ZVNpemVbMF0qKEEvdGhpcy5fZ2wuY2FudmFzLmNsaWVudFdpZHRoLS41KSksaT1NYXRoLnJvdW5kKC10aGlzLl9uYXRpdmVTaXplWzFdKihlL3RoaXMuX2dsLmNhbnZhcy5jbGllbnRIZWlnaHQtLjUpKSxvPXRoaXMuX2dsO3IuYmluZEZyYW1lYnVmZmVySW5mbyhvLHRoaXMuX3F1ZXJ5QnVmZmVySW5mbyk7Y29uc3Qgcz1uZXcgYztzLmluaXRGcm9tQm91bmRzKG4tdCxuK3QsaS10LGkrdCk7Y29uc3QgYT1uLXMubGVmdCxCPXMudG9wLWk7by52aWV3cG9ydCgwLDAscy53aWR0aCxzLmhlaWdodCk7Y29uc3QgZz1yLm00Lm9ydGhvKHMubGVmdCxzLnJpZ2h0LHMudG9wLHMuYm90dG9tLC0xLDEpO28uY2xlYXJDb2xvciguLi50aGlzLl9iYWNrZ3JvdW5kQ29sb3I0Ziksby5jbGVhcihvLkNPTE9SX0JVRkZFUl9CSVQpLHRoaXMuX2RyYXdUaGVzZSh0aGlzLl9kcmF3TGlzdCxRLkRSQVdfTU9ERS5kZWZhdWx0LGcpO2NvbnN0IEU9bmV3IFVpbnQ4QXJyYXkoTWF0aC5mbG9vcihzLndpZHRoKnMuaGVpZ2h0KjQpKTtvLnJlYWRQaXhlbHMoMCwwLHMud2lkdGgscy5oZWlnaHQsby5SR0JBLG8uVU5TSUdORURfQllURSxFKTtjb25zdCB1PU1hdGguZmxvb3IoNCooQipzLndpZHRoK2EpKSxsPXtyOkVbdV0sZzpFW3UrMV0sYjpFW3UrMl0sYTpFW3UrM119O2lmKHRoaXMuX2RlYnVnQ2FudmFzKXt0aGlzLl9kZWJ1Z0NhbnZhcy53aWR0aD1zLndpZHRoLHRoaXMuX2RlYnVnQ2FudmFzLmhlaWdodD1zLmhlaWdodDtjb25zdCBBPXRoaXMuX2RlYnVnQ2FudmFzLmdldENvbnRleHQoIjJkIix7d2lsbFJlYWRGcmVxdWVudGx5OiEwfSksZT1BLmNyZWF0ZUltYWdlRGF0YShzLndpZHRoLHMuaGVpZ2h0KTtlLmRhdGEuc2V0KEUpLEEucHV0SW1hZ2VEYXRhKGUsMCwwKSxBLnN0cm9rZVN0eWxlPSJibGFjayIsQS5maWxsU3R5bGU9InJnYmEoIi5jb25jYXQobC5yLCIsICIpLmNvbmNhdChsLmcsIiwgIikuY29uY2F0KGwuYiwiLCAiKS5jb25jYXQobC5hLCIpIiksQS5yZWN0KGEtNCxCLTQsOCw4KSxBLmZpbGwoKSxBLnN0cm9rZSgpfXJldHVybntkYXRhOkUsd2lkdGg6cy53aWR0aCxoZWlnaHQ6cy5oZWlnaHQsY29sb3I6bH19X3RvdWNoaW5nQm91bmRzKEEpe2NvbnN0IGU9dGhpcy5fYWxsRHJhd2FibGVzW0FdO2lmKCFlLnNraW58fCFlLnNraW4uZ2V0VGV4dHVyZShbMTAwLDEwMF0pKXJldHVybiBudWxsO2NvbnN0IHQ9ZS5nZXRGYXN0Qm91bmRzKCk7cmV0dXJuIHRoaXMub2Zmc2NyZWVuVG91Y2hpbmd8fHQuY2xhbXAodGhpcy5feExlZnQsdGhpcy5feFJpZ2h0LHRoaXMuX3lCb3R0b20sdGhpcy5feVRvcCksdC5zbmFwVG9JbnQoKSwwPT09dC53aWR0aHx8MD09PXQuaGVpZ2h0P251bGw6dH1fdW5zbmFwcGVkVG91Y2hpbmdCb3VuZHMoQSl7Y29uc3QgZT10aGlzLl9hbGxEcmF3YWJsZXNbQV07aWYoIWUuc2tpbnx8IWUuc2tpbi5nZXRUZXh0dXJlKFsxMDAsMTAwXSkpcmV0dXJuIG51bGw7Y29uc3QgdD1lLmdldEZhc3RCb3VuZHMoKTtyZXR1cm4gdGhpcy5vZmZzY3JlZW5Ub3VjaGluZ3x8dC5jbGFtcCh0aGlzLl94TGVmdCx0aGlzLl94UmlnaHQsdGhpcy5feUJvdHRvbSx0aGlzLl95VG9wKSwwPT09dC53aWR0aHx8MD09PXQuaGVpZ2h0P251bGw6dH1fY2FuZGlkYXRlc1RvdWNoaW5nKEEsZSl7Y29uc3QgdD10aGlzLl90b3VjaGluZ0JvdW5kcyhBKSxuPVtdO2lmKG51bGw9PT10KXJldHVybiBuO2ZvcihsZXQgaT1lLmxlbmd0aC0xO2k+PTA7aS0tKXtjb25zdCByPWVbaV07aWYociE9PUEpe2NvbnN0IEE9dGhpcy5fYWxsRHJhd2FibGVzW3JdO2lmKEEuc2tpbiBpbnN0YW5jZW9mIGwpY29udGludWU7aWYoQS5za2luJiZBLl92aXNpYmxlKXtpZighdGhpcy5hbGxvd1ByaXZhdGVTa2luQWNjZXNzJiZBLnNraW4ucHJpdmF0ZSljb250aW51ZTtBLnVwZGF0ZUNQVVJlbmRlckF0dHJpYnV0ZXMoKTtjb25zdCBlPUEuZ2V0RmFzdEJvdW5kcygpO2Uuc25hcFRvSW50KCksdC5pbnRlcnNlY3RzKGUpJiZuLnB1c2goe2lkOnIsZHJhd2FibGU6QSxpbnRlcnNlY3Rpb246Yy5pbnRlcnNlY3QodCxlKX0pfX19cmV0dXJuIG59X2NhbmRpZGF0ZXNCb3VuZHMoQSl7cmV0dXJuIEEucmVkdWNlKChBLGUpPT57bGV0e2ludGVyc2VjdGlvbjp0fT1lO3JldHVybiBBP2MudW5pb24oQSx0LGQpOnR9LG51bGwpfXVwZGF0ZURyYXdhYmxlU2tpbklkKEEsZSl7Y29uc3QgdD10aGlzLl9hbGxEcmF3YWJsZXNbQV07dCYmKHQuc2tpbj10aGlzLl9hbGxTa2luc1tlXSl9dXBkYXRlRHJhd2FibGVQb3NpdGlvbihBLGUpe2NvbnN0IHQ9dGhpcy5fYWxsRHJhd2FibGVzW0FdO3QmJnQudXBkYXRlUG9zaXRpb24oZSl9dXBkYXRlRHJhd2FibGVEaXJlY3Rpb24oQSxlKXtjb25zdCB0PXRoaXMuX2FsbERyYXdhYmxlc1tBXTt0JiZ0LnVwZGF0ZURpcmVjdGlvbihlKX11cGRhdGVEcmF3YWJsZVNjYWxlKEEsZSl7Y29uc3QgdD10aGlzLl9hbGxEcmF3YWJsZXNbQV07dCYmdC51cGRhdGVTY2FsZShlKX11cGRhdGVEcmF3YWJsZURpcmVjdGlvblNjYWxlKEEsZSx0LG4pe2NvbnN0IGk9dGhpcy5fYWxsRHJhd2FibGVzW0FdO2kmJihpLnVwZGF0ZURpcmVjdGlvbihlKSxpLnVwZGF0ZVNjYWxlKHQpLG4mJmkudXBkYXRlVHJhbnNmb3JtKG4pKX11cGRhdGVEcmF3YWJsZVZpc2libGUoQSxlKXtjb25zdCB0PXRoaXMuX2FsbERyYXdhYmxlc1tBXTt0JiZ0LnVwZGF0ZVZpc2libGUoZSl9dXBkYXRlRHJhd2FibGVFZmZlY3QoQSxlLHQpe2NvbnN0IG49dGhpcy5fYWxsRHJhd2FibGVzW0FdO24mJm4udXBkYXRlRWZmZWN0KGUsdCl9dXBkYXRlRHJhd2FibGVQcm9wZXJ0aWVzKEEsZSl7Y29uc3QgdD10aGlzLl9hbGxEcmF3YWJsZXNbQV07dCYmKCJza2luSWQiaW4gZSYmdGhpcy51cGRhdGVEcmF3YWJsZVNraW5JZChBLGUuc2tpbklkKSx0LnVwZGF0ZVByb3BlcnRpZXMoZSkpfWdldEZlbmNlZFBvc2l0aW9uT2ZEcmF3YWJsZShBLGUpe2xldCB0PWVbMF0sbj1lWzFdO2NvbnN0IGk9dGhpcy5fYWxsRHJhd2FibGVzW0FdO2lmKCFpKXJldHVyblt0LG5dO2NvbnN0IHI9dC1pLl9wb3NpdGlvblswXSxvPW4taS5fcG9zaXRpb25bMV0scz1pLl9za2luLmdldEZlbmNlQm91bmRzKGkscCksYT1NYXRoLmZsb29yKE1hdGgubWluKHMud2lkdGgscy5oZWlnaHQpLzIpLEI9dGhpcy5feFJpZ2h0LU1hdGgubWluKDE1LGEpO3MucmlnaHQrcjwtQj90PU1hdGguY2VpbChpLl9wb3NpdGlvblswXS0oQitzLnJpZ2h0KSk6cy5sZWZ0K3I+QiYmKHQ9TWF0aC5mbG9vcihpLl9wb3NpdGlvblswXSsoQi1zLmxlZnQpKSk7Y29uc3QgYz10aGlzLl95VG9wLU1hdGgubWluKDE1LGEpO3JldHVybiBzLnRvcCtvPC1jP249TWF0aC5jZWlsKGkuX3Bvc2l0aW9uWzFdLShjK3MudG9wKSk6cy5ib3R0b20rbz5jJiYobj1NYXRoLmZsb29yKGkuX3Bvc2l0aW9uWzFdKyhjLXMuYm90dG9tKSkpLFt0LG5dfXBlblRyYW5zbGF0ZShBLGUsdCxuLGkpe3RoaXMuZGlydHk9ITA7dGhpcy5fYWxsU2tpbnNbQV0udXBkYXRlUGVuUG9pbnRPZmZzZXQoZSx0LG4saSl9cGVuQ2xlYXIoQSl7dGhpcy5kaXJ0eT0hMDt0aGlzLl9hbGxTa2luc1tBXS5jbGVhcigpfXBlblBvaW50KEEsZSx0LG4pe3RoaXMuZGlydHk9ITA7dGhpcy5fYWxsU2tpbnNbQV0uZHJhd1BvaW50KGUsdCxuKX1wZW5MaW5lKEEsZSx0LG4saSxyKXt0aGlzLmRpcnR5PSEwO3RoaXMuX2FsbFNraW5zW0FdLmRyYXdMaW5lKGUsdCxuLGkscil9cGVuU3RhbXAoQSxlKXt0aGlzLmRpcnR5PSEwO2lmKCF0aGlzLl9hbGxEcmF3YWJsZXNbZV0pcmV0dXJuO2NvbnN0IHQ9dGhpcy5fdW5zbmFwcGVkVG91Y2hpbmdCb3VuZHMoZSk7aWYoIXQpcmV0dXJuO3RoaXMuX2RvRXhpdERyYXdSZWdpb24oKTtjb25zdCBuPXRoaXMuX2FsbFNraW5zW0FdLGk9dGhpcy5fZ2w7ci5iaW5kRnJhbWVidWZmZXJJbmZvKGksbi5fZnJhbWVidWZmZXIpO2NvbnN0IG89bi5yZW5kZXJRdWFsaXR5O3QubGVmdCo9byx0LnJpZ2h0Kj1vLHQudG9wKj1vLHQuYm90dG9tKj1vLHQuc25hcFRvSW50KCksaS52aWV3cG9ydCguNSp0aGlzLl9uYXRpdmVTaXplWzBdKm8rdC5sZWZ0LC41KnRoaXMuX25hdGl2ZVNpemVbMV0qby10LnRvcCx0LndpZHRoLHQuaGVpZ2h0KTtjb25zdCBzPXIubTQub3J0aG8odC5sZWZ0L28sdC5yaWdodC9vLHQudG9wL28sdC5ib3R0b20vbywtMSwxKTt0aGlzLl9kcmF3VGhlc2UoW2VdLFEuRFJBV19NT0RFLmRlZmF1bHQscyx7aWdub3JlVmlzaWJpbGl0eTohMCxmcmFtZWJ1ZmZlcldpZHRoOnRoaXMuX25hdGl2ZVNpemVbMF0qbyxmcmFtZWJ1ZmZlckhlaWdodDp0aGlzLl9uYXRpdmVTaXplWzFdKm99KSxuLl9zaWxob3VldHRlRGlydHk9ITB9X2NyZWF0ZUdlb21ldHJ5KCl7dGhpcy5fYnVmZmVySW5mbz1yLmNyZWF0ZUJ1ZmZlckluZm9Gcm9tQXJyYXlzKHRoaXMuX2dsLHthX3Bvc2l0aW9uOntudW1Db21wb25lbnRzOjIsZGF0YTpbLS41LC0uNSwuNSwtLjUsLS41LC41LC0uNSwuNSwuNSwtLjUsLjUsLjVdfSxhX3RleENvb3JkOntudW1Db21wb25lbnRzOjIsZGF0YTpbMSwwLDAsMCwxLDEsMSwxLDAsMCwwLDFdfX0pfW9uTmF0aXZlU2l6ZUNoYW5nZWQoQSl7dGhpcy5kaXJ0eT0hMDtjb25zdFtlLHRdPUEubmV3U2l6ZSxuPXRoaXMuX2dsLGk9W3tmb3JtYXQ6bi5SR0JBfSx7Zm9ybWF0Om4uREVQVEhfU1RFTkNJTH1dO3RoaXMuX3BpY2tCdWZmZXJJbmZvfHwodGhpcy5fcGlja0J1ZmZlckluZm89ci5jcmVhdGVGcmFtZWJ1ZmZlckluZm8obixpLERbMF0sRFsxXSkpLHRoaXMuX3F1ZXJ5QnVmZmVySW5mbz9yLnJlc2l6ZUZyYW1lYnVmZmVySW5mbyhuLHRoaXMuX3F1ZXJ5QnVmZmVySW5mbyxpLGUsdCk6dGhpcy5fcXVlcnlCdWZmZXJJbmZvPXIuY3JlYXRlRnJhbWVidWZmZXJJbmZvKG4saSxlLHQpfWVudGVyRHJhd1JlZ2lvbihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06QS5lbnRlcix0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpBLmV4aXQ7dGhpcy5fcmVnaW9uSWQhPT1BJiYodGhpcy5fZG9FeGl0RHJhd1JlZ2lvbigpLHRoaXMuX3JlZ2lvbklkPUEsZSgpLHRoaXMuX2V4aXRSZWdpb249dCl9X2RvRXhpdERyYXdSZWdpb24oKXtudWxsIT09dGhpcy5fZXhpdFJlZ2lvbiYmdGhpcy5fZXhpdFJlZ2lvbigpLHRoaXMuX2V4aXRSZWdpb249bnVsbCx0aGlzLl9yZWdpb25JZD1udWxsfV9kcmF3VGhlc2UoQSxlLHQpe2xldCBuPWFyZ3VtZW50cy5sZW5ndGg+MyYmdm9pZCAwIT09YXJndW1lbnRzWzNdP2FyZ3VtZW50c1szXTp7fTtjb25zdCBpPXRoaXMuX2dsO2xldCBvPW51bGw7Y29uc3Qgcz10aGlzLl9uYXRpdmVTaXplWzBdLzIsYT10aGlzLl9uYXRpdmVTaXplWzFdLzIsQj0iZnJhbWVidWZmZXJXaWR0aCJpbiBuJiYiZnJhbWVidWZmZXJIZWlnaHQiaW4gbiYmbi5mcmFtZWJ1ZmZlcldpZHRoIT09dGhpcy5fbmF0aXZlU2l6ZVswXSYmbi5mcmFtZWJ1ZmZlckhlaWdodCE9PXRoaXMuX25hdGl2ZVNpemVbMV0sYz1BLmxlbmd0aDtmb3IobGV0IGc9MDtnPGM7KytnKXtjb25zdCBjPUFbZ107aWYobi5maWx0ZXImJiFuLmZpbHRlcihjKSljb250aW51ZTtjb25zdCBFPXRoaXMuX2FsbERyYXdhYmxlc1tjXTtpZighRSljb250aW51ZTtjb25zdCB1PXt9O2lmKCF0aGlzLnJlbmRlck9mZnNjcmVlbiYmRS51bmlmb3JtQXBwbGllZClpZihlPT09US5EUkFXX01PREUuZGVmYXVsdCYmRS5za2luKXtsZXQgQT0hMTtpZihFLnRyYW5zZm9ybUJlZm9yZUNoZWNrVmlld3BvcnQoKSYmKE9iamVjdC5hc3NpZ24odSxFLmdldFVuaWZvcm1zKCkpLEE9ITApLCFFLmluVmlld3BvcnQocyxhKSljb250aW51ZTtBfHxPYmplY3QuYXNzaWduKHUsRS5nZXRVbmlmb3JtcygpKX1lbHNlIE9iamVjdC5hc3NpZ24odSxFLmdldFVuaWZvcm1zKCkpO2lmKCFFLmdldFZpc2libGUoKSYmIW4uaWdub3JlVmlzaWJpbGl0eSljb250aW51ZTtjb25zdCBsPUI/W0Uuc2NhbGVbMF0qbi5mcmFtZWJ1ZmZlcldpZHRoL3RoaXMuX25hdGl2ZVNpemVbMF0sRS5zY2FsZVsxXSpuLmZyYW1lYnVmZmVySGVpZ2h0L3RoaXMuX25hdGl2ZVNpemVbMV1dOkUuc2NhbGUsaD1FLnRyYW5zZm9ybXx8WzAsMF07aWYoIUUuc2tpbnx8IUUuc2tpbi5nZXRUZXh0dXJlKGwsaCkpY29udGludWU7aWYobi5za2lwUHJpdmF0ZVNraW5zJiZFLnNraW4ucHJpdmF0ZSljb250aW51ZTtsZXQgdz1FLmVuYWJsZWRFZmZlY3RzO3cmPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLCJlZmZlY3RNYXNrIik/bi5lZmZlY3RNYXNrOnc7Y29uc3QgQz10aGlzLl9zaGFkZXJNYW5hZ2VyLmdldFNoYWRlcihlLHcpO3RoaXMuX3JlZ2lvbklkIT09QyYmKHRoaXMuX2RvRXhpdERyYXdSZWdpb24oKSx0aGlzLl9yZWdpb25JZD1DLG89QyxpLnVzZVByb2dyYW0oby5wcm9ncmFtKSxyLnNldEJ1ZmZlcnNBbmRBdHRyaWJ1dGVzKGksbyx0aGlzLl9idWZmZXJJbmZvKSxPYmplY3QuYXNzaWduKHUse3VfcHJvamVjdGlvbk1hdHJpeDp0fSkpLEUudW5pZm9ybUFwcGxpZWQ9ITAsT2JqZWN0LmFzc2lnbih1LEUuc2tpbi5nZXRVbmlmb3JtcyhsKSxFLmdldFVuaWZvcm1zKCkpLG4uZXh0cmFVbmlmb3JtcyYmT2JqZWN0LmFzc2lnbih1LG4uZXh0cmFVbmlmb3JtcyksdS51X3NraW4mJnIuc2V0VGV4dHVyZVBhcmFtZXRlcnMoaSx1LnVfc2tpbix7bWluTWFnOkUuc2tpbi51c2VOZWFyZXN0KGwsRSk/aS5ORUFSRVNUOmkuTElORUFSfSksci5zZXRVbmlmb3JtcyhvLHUpLHIuZHJhd0J1ZmZlckluZm8oaSx0aGlzLl9idWZmZXJJbmZvLGkuVFJJQU5HTEVTKX10aGlzLl9yZWdpb25JZD1udWxsfV9nZXRDb252ZXhIdWxsUG9pbnRzRm9yRHJhd2FibGUoQSl7Y29uc3QgZT10aGlzLl9hbGxEcmF3YWJsZXNbQV0sW3Qsbl09ZS5za2luLnNpemU7aWYoIWUuZ2V0VmlzaWJsZSgpfHwwPT09dHx8MD09PW4pcmV0dXJuW107ZS51cGRhdGVDUFVSZW5kZXJBdHRyaWJ1dGVzKCk7Y29uc3Qgbz1mdW5jdGlvbihBLGUsdCl7cmV0dXJuKGVbMF0tQVswXSkqKHRbMV0tQVsxXSktKGVbMV0tQVsxXSkqKHRbMF0tQVswXSl9LHM9W10sYT1bXTtsZXQgQj0tMSxjPS0xO2NvbnN0IGc9ci52My5jcmVhdGUoKSxFPXIudjMuY3JlYXRlKCk7bGV0IFE7Zm9yKGxldCBBPTA7QTxuO0ErKyl7Z1sxXT1BL247bGV0IGk9MDtmb3IoO2k8dDtpKyspaWYoZ1swXT1pL3Qsdy50cmFuc2Zvcm1Qb2ludChlLGcsRSksZS5za2luLmlzVG91Y2hpbmdMaW5lYXIoRSkpe1E9W2ksQV07YnJlYWt9aWYoIShpPj10KSl7Zm9yKDtCPjAmJiEobyhzW0JdLHNbQi0xXSxRKT4wKTspLS1CO2ZvcihzWysrQl09USxpPXQtMTtpPj0wO2ktLSlpZihnWzBdPWkvdCx3LnRyYW5zZm9ybVBvaW50KGUsZyxFKSxlLnNraW4uaXNUb3VjaGluZ0xpbmVhcihFKSl7UT1baSxBXTticmVha31mb3IoO2M+MCYmIShvKGFbY10sYVtjLTFdLFEpPDApOyktLWM7YVsrK2NdPVF9fWNvbnN0IHU9czt1Lmxlbmd0aD1CKzE7Zm9yKGxldCBBPWM7QT49MDstLUEpdS5wdXNoKGFbQV0pO3JldHVybiBpKHUsMS8wKX1zdGF0aWMgc2FtcGxlQ29sb3IzYihBLGUsdCl7KHQ9dHx8bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KDMpKS5maWxsKDApO2xldCBuPTE7Zm9yKGxldCBpPTA7MCE9PW4mJmk8ZS5sZW5ndGg7aSsrKUIuc2FtcGxlQ29sb3I0YihBLGVbaV0uZHJhd2FibGUsRiksdFswXSs9RlswXSpuLHRbMV0rPUZbMV0qbix0WzJdKz1GWzJdKm4sbio9MS1GWzNdLzI1NTtyZXR1cm4gdFswXSs9MjU1Km4sdFsxXSs9MjU1Km4sdFsyXSs9MjU1Km4sdH1yZXF1ZXN0U25hcHNob3QoQSl7dGhpcy5kaXJ0eT0hMCx0aGlzLl9zbmFwc2hvdENhbGxiYWNrcy5wdXNoKEEpfWdldEJ1YmJsZURlZmF1bHRzKCl7Y29uc3QgQT1uZXcgbCxlPUEuZ2V0QWxsUHJvcHMoKTtyZXR1cm4gQS5kaXNwb3NlKCksZX1nZXRQZW5EcmF3YWJsZUlkKCl7cmV0dXJuIHRoaXMuX2FsbERyYXdhYmxlcy5maW5kSW5kZXgoQT0+QS5fc2tpbi5faWQ9PT10aGlzLl9wZW5Ta2luSWQpfXNldEN1c3RvbUZvbnRzKEEpe3RoaXMuY3VzdG9tRm9udHM9QTtjb25zdCBlPU9iamVjdC52YWx1ZXMoQSkuam9pbigiXG4iKTtlLmxlbmd0aD8odGhpcy5fY3VzdG9tRm9udFN0eWxlc3x8KHRoaXMuX2N1c3RvbUZvbnRTdHlsZXM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSx0aGlzLl9jdXN0b21Gb250U3R5bGVzLmNsYXNzTmFtZT0icmVuZGVyZXItY3VzdG9tLWZvbnRzIixkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHRoaXMuX2N1c3RvbUZvbnRTdHlsZXMpKSx0aGlzLl9jdXN0b21Gb250U3R5bGVzLnRleHRDb250ZW50PWUpOnRoaXMuX2N1c3RvbUZvbnRTdHlsZXMmJih0aGlzLl9jdXN0b21Gb250U3R5bGVzLnJlbW92ZSgpLHRoaXMuX2N1c3RvbUZvbnRTdHlsZXM9bnVsbCl9fVUucHJvdG90eXBlLmNhbkhhelBpeGVscz1VLnByb3RvdHlwZS5leHRyYWN0RHJhd2FibGVTY3JlZW5TcGFjZSxVLlVzZUdwdU1vZGVzPXtBdXRvbWF0aWM6IkF1dG9tYXRpYyIsRm9yY2VHUFU6IkZvcmNlR1BVIixGb3JjZUNQVToiRm9yY2VDUFUifSxVLnBvd2VyUHJlZmVyZW5jZT0iZGVmYXVsdCIsQS5leHBvcnRzPVV9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7dmFyIG49dCg0NTYpLGk9dCg0NTcpLHI9dCg0NTgpLG89dCg0NTkpO2Z1bmN0aW9uIHMoQSxlKXtyZXR1cm4gTWF0aC5wb3coZVswXS1BWzBdLDIpK01hdGgucG93KGVbMV0tQVsxXSwyKX1mdW5jdGlvbiBhKEEsZSx0KXt2YXIgbj1bZVswXS1BWzBdLGVbMV0tQVsxXV0saT1bdFswXS1BWzBdLHRbMV0tQVsxXV0scj1zKEEsZSksbz1zKEEsdCk7cmV0dXJuKG5bMF0qaVswXStuWzFdKmlbMV0pL01hdGguc3FydChyKm8pfWZ1bmN0aW9uIEIoQSxlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoLTE7dCsrKXt2YXIgaT1bZVt0XSxlW3QrMV1dO2lmKCEoQVswXVswXT09PWlbMF1bMF0mJkFbMF1bMV09PT1pWzBdWzFdfHxBWzBdWzBdPT09aVsxXVswXSYmQVswXVsxXT09PWlbMV1bMV0pJiZuKEEsaSkpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gYyhBKXtyZXR1cm5bTWF0aC5taW4oQVswXVswXSxBWzFdWzBdKSxNYXRoLm1pbihBWzBdWzFdLEFbMV1bMV0pLE1hdGgubWF4KEFbMF1bMF0sQVsxXVswXSksTWF0aC5tYXgoQVswXVsxXSxBWzFdWzFdKV19ZnVuY3Rpb24gZyhBLGUsdCl7Zm9yKHZhciBuLGkscj1udWxsLG89RSxzPUUsYz0wO2M8ZS5sZW5ndGg7YysrKW49YShBWzBdLEFbMV0sZVtjXSksaT1hKEFbMV0sQVswXSxlW2NdKSxuPm8mJmk+cyYmIUIoW0FbMF0sZVtjXV0sdCkmJiFCKFtBWzFdLGVbY11dLHQpJiYobz1uLHM9aSxyPWVbY10pO3JldHVybiByfXZhciBFPU1hdGguY29zKDkwLygxODAvTWF0aC5QSSkpLFE9LjY7QS5leHBvcnRzPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbixhLEIsRSx1LGwsaCx3PWV8fDIwO3JldHVybiBBLmxlbmd0aDw0P0Euc2xpY2UoKToodT1bKEU9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPTEvMCx0PTEvMCxuPS0xLzAsaT0tMS8wLHI9QS5sZW5ndGgtMTtyPj0wO3ItLSlBW3JdWzBdPGUmJihlPUFbcl1bMF0pLEFbcl1bMV08dCYmKHQ9QVtyXVsxXSksQVtyXVswXT5uJiYobj1BW3JdWzBdKSxBW3JdWzFdPmkmJihpPUFbcl1bMV0pO3JldHVybltuLWUsaS10XX0oaD1mdW5jdGlvbihBKXtyZXR1cm4gQS5maWx0ZXIoKGZ1bmN0aW9uKEEsZSx0KXt2YXIgbj10W2UtMV07cmV0dXJuIDA9PT1lfHwhKG5bMF09PT1BWzBdJiZuWzFdPT09QVsxXSl9KSl9KGZ1bmN0aW9uKEEpe3JldHVybiBBLnNvcnQoKGZ1bmN0aW9uKEEsZSl7cmV0dXJuIEFbMF09PWVbMF0/QVsxXS1lWzFdOkFbMF0tZVswXX0pKX0oci50b1h5KEEsdCkpKSkpWzBdKlEsRVsxXSpRXSxuPW8oaCksQj1oLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIG4uaW5kZXhPZihBKTwwfSkpLGw9TWF0aC5jZWlsKDEvKGgubGVuZ3RoLyhFWzBdKkVbMV0pKSksYT1mdW5jdGlvbiBBKGUsdCxuLGkscil7Zm9yKHZhciBvLGEsQixFLFEsdSxsLGg9ITEsdz0wO3c8ZS5sZW5ndGgtMTt3KyspaWYoYT0obz1bZVt3XSxlW3crMV1dKVswXS5qb2luKCkrIiwiK29bMV0uam9pbigpLCEocyhvWzBdLG9bMV0pPHR8fCEwPT09clthXSkpe0I9MCxRPWMobyk7ZG97dT0oUT1pLmV4dGVuZEJib3goUSxCKSlbMl0tUVswXSxsPVFbM10tUVsxXSxFPWcobyxpLnJhbmdlUG9pbnRzKFEpLGUpLEIrK313aGlsZShudWxsPT09RSYmKG5bMF0+dXx8blsxXT5sKSk7dT49blswXSYmbD49blsxXSYmKHJbYV09ITApLG51bGwhPT1FJiYoZS5zcGxpY2UodysxLDAsRSksaS5yZW1vdmVQb2ludChFKSxoPSEwKX1yZXR1cm4gaD9BKGUsdCxuLGkscik6ZX0obixNYXRoLnBvdyh3LDIpLHUsaShCLGwpLHt9KSxyLmZyb21YeShhLHQpKX19LGZ1bmN0aW9uKEEsZSl7ZnVuY3Rpb24gdChBLGUsdCxuLGkscil7dmFyIG89KHItZSkqKHQtQSktKG4tZSkqKGktQSk7cmV0dXJuIG8+MHx8IShvPDApfUEuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3ZhciBuPUFbMF1bMF0saT1BWzBdWzFdLHI9QVsxXVswXSxvPUFbMV1bMV0scz1lWzBdWzBdLGE9ZVswXVsxXSxCPWVbMV1bMF0sYz1lWzFdWzFdO3JldHVybiB0KG4saSxzLGEsQixjKSE9PXQocixvLHMsYSxCLGMpJiZ0KG4saSxyLG8scyxhKSE9PXQobixpLHIsbyxCLGMpfX0sZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSl7dGhpcy5fY2VsbHM9W10sdGhpcy5fY2VsbFNpemU9ZSxBLmZvckVhY2goKGZ1bmN0aW9uKEEpe3ZhciBlPXRoaXMucG9pbnQyQ2VsbFhZKEEpLHQ9ZVswXSxuPWVbMV07dm9pZCAwPT09dGhpcy5fY2VsbHNbdF0mJih0aGlzLl9jZWxsc1t0XT1bXSksdm9pZCAwPT09dGhpcy5fY2VsbHNbdF1bbl0mJih0aGlzLl9jZWxsc1t0XVtuXT1bXSksdGhpcy5fY2VsbHNbdF1bbl0ucHVzaChBKX0pLHRoaXMpfXQucHJvdG90eXBlPXtjZWxsUG9pbnRzOmZ1bmN0aW9uKEEsZSl7cmV0dXJuIHZvaWQgMCE9PXRoaXMuX2NlbGxzW0FdJiZ2b2lkIDAhPT10aGlzLl9jZWxsc1tBXVtlXT90aGlzLl9jZWxsc1tBXVtlXTpbXX0scmFuZ2VQb2ludHM6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPXRoaXMucG9pbnQyQ2VsbFhZKFtBWzBdLEFbMV1dKSx0PXRoaXMucG9pbnQyQ2VsbFhZKFtBWzJdLEFbM11dKSxuPVtdLGk9ZVswXTtpPD10WzBdO2krKylmb3IodmFyIHI9ZVsxXTtyPD10WzFdO3IrKyluPW4uY29uY2F0KHRoaXMuY2VsbFBvaW50cyhpLHIpKTtyZXR1cm4gbn0scmVtb3ZlUG9pbnQ6ZnVuY3Rpb24oQSl7Zm9yKHZhciBlLHQ9dGhpcy5wb2ludDJDZWxsWFkoQSksbj10aGlzLl9jZWxsc1t0WzBdXVt0WzFdXSxpPTA7aTxuLmxlbmd0aDtpKyspaWYobltpXVswXT09PUFbMF0mJm5baV1bMV09PT1BWzFdKXtlPWk7YnJlYWt9cmV0dXJuIG4uc3BsaWNlKGUsMSksbn0scG9pbnQyQ2VsbFhZOmZ1bmN0aW9uKEEpe3JldHVybltwYXJzZUludChBWzBdL3RoaXMuX2NlbGxTaXplKSxwYXJzZUludChBWzFdL3RoaXMuX2NlbGxTaXplKV19LGV4dGVuZEJib3g6ZnVuY3Rpb24oQSxlKXtyZXR1cm5bQVswXS1lKnRoaXMuX2NlbGxTaXplLEFbMV0tZSp0aGlzLl9jZWxsU2l6ZSxBWzJdK2UqdGhpcy5fY2VsbFNpemUsQVszXStlKnRoaXMuX2NlbGxTaXplXX19LEEuZXhwb3J0cz1mdW5jdGlvbihBLGUpe3JldHVybiBuZXcgdChBLGUpfX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e3RvWHk6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdm9pZCAwPT09ZT9BLnNsaWNlKCk6QS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgRnVuY3Rpb24oInB0IiwicmV0dXJuIFtwdCIrZVswXSsiLHB0IitlWzFdKyJdOyIpKEEpfSkpfSxmcm9tWHk6ZnVuY3Rpb24oQSxlKXtyZXR1cm4gdm9pZCAwPT09ZT9BLnNsaWNlKCk6QS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgRnVuY3Rpb24oInB0IiwidmFyIG8gPSB7fTsgbyIrZVswXSsiPSBwdFswXTsgbyIrZVsxXSsiPSBwdFsxXTsgcmV0dXJuIG87IikoQSl9KSl9fX0sZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KEEsZSx0KXtyZXR1cm4oZVswXS1BWzBdKSoodFsxXS1BWzFdKS0oZVsxXS1BWzFdKSoodFswXS1BWzBdKX1BLmV4cG9ydHM9ZnVuY3Rpb24oQSl7dmFyIGUsbj1mdW5jdGlvbihBKXtmb3IodmFyIGU9W10sbj0wO248QS5sZW5ndGg7bisrKXtmb3IoO2UubGVuZ3RoPj0yJiZ0KGVbZS5sZW5ndGgtMl0sZVtlLmxlbmd0aC0xXSxBW25dKTw9MDspZS5wb3AoKTtlLnB1c2goQVtuXSl9cmV0dXJuIGUucG9wKCksZX0oQSk7cmV0dXJuKGU9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlPUEucmV2ZXJzZSgpLG49W10saT0wO2k8ZS5sZW5ndGg7aSsrKXtmb3IoO24ubGVuZ3RoPj0yJiZ0KG5bbi5sZW5ndGgtMl0sbltuLmxlbmd0aC0xXSxlW2ldKTw9MDspbi5wb3AoKTtuLnB1c2goZVtpXSl9cmV0dXJuIG4ucG9wKCksbn0oQSkuY29uY2F0KG4pKS5wdXNoKEFbMF0pLGV9fSxmdW5jdGlvbihBLGUpe2xldCB0O2NvbnN0IG49KEEsZSk9PmVeKEFeZSkmQS1lPj4zMSxpPShBLGUpPT5BXihBXmUpJkEtZT4+MzEscj0oQSxlLHQpPT57bGV0e193aWR0aDpuLF9oZWlnaHQ6aSxfY29sb3JEYXRhOnJ9PUE7cmV0dXJuIGU+PW58fHQ+PWl8fGU8MHx8dDwwPzA6cls0Kih0Km4rZSkrM119LG89W25ldyBVaW50OENsYW1wZWRBcnJheSg0KSxuZXcgVWludDhDbGFtcGVkQXJyYXkoNCksbmV3IFVpbnQ4Q2xhbXBlZEFycmF5KDQpLG5ldyBVaW50OENsYW1wZWRBcnJheSg0KV0scz0oQSxlLHQscik9PntsZXR7X3dpZHRoOm8sX2hlaWdodDpzLF9jb2xvckRhdGE6YX09QTtpZihlPWkoMCxuKGUsby0xKSksdD1pKDAsbih0LHMtMSkpLGU+PW98fHQ+PXN8fGU8MHx8dDwwKXJldHVybiByLmZpbGwoMCk7Y29uc3QgQj00Kih0Km8rZSksYz1hW0IrM10vMjU1O3JldHVybiByWzBdPWFbQl0qYyxyWzFdPWFbQisxXSpjLHJbMl09YVtCKzJdKmMsclszXT1hW0IrM10scn0sYT0oQSxlLHQscik9PntsZXR7X3dpZHRoOm8sX2hlaWdodDpzLF9jb2xvckRhdGE6YX09QTtlPWkoMCxuKGUsby0xKSk7Y29uc3QgQj00KigodD1pKDAsbih0LHMtMSkpKSpvK2UpO3JldHVybiByWzBdPWFbQl0sclsxXT1hW0IrMV0sclsyXT1hW0IrMl0sclszXT1hW0IrM10scn07Y2xhc3MgQntjb25zdHJ1Y3Rvcigpe3RoaXMuX3dpZHRoPTAsdGhpcy5faGVpZ2h0PTAsdGhpcy5fbGF6eURhdGE9bnVsbCx0aGlzLl9jb2xvckRhdGE9bnVsbCx0aGlzLl9nZXRDb2xvcj1zLHRoaXMuY29sb3JBdE5lYXJlc3Q9dGhpcy5jb2xvckF0TGluZWFyPShBLGUpPT5lLmZpbGwoMCl9dXBkYXRlKEEpe2xldCBlLHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0mJmFyZ3VtZW50c1sxXTtpZihBIGluc3RhbmNlb2YgSW1hZ2VEYXRhKWU9QSx0aGlzLl93aWR0aD1BLndpZHRoLHRoaXMuX2hlaWdodD1BLmhlaWdodCx0aGlzLl9sYXp5RGF0YT1udWxsLHRoaXMuX2NvbG9yRGF0YT1lLmRhdGE7ZWxzZXtpZih0aGlzLl93aWR0aD1BLndpZHRoLHRoaXMuX2hlaWdodD1BLmhlaWdodCwhdGhpcy5fd2lkdGh8fCF0aGlzLl9oZWlnaHQpcmV0dXJuO3RoaXMuX2xhenlEYXRhPUEsdGhpcy5fY29sb3JEYXRhPW51bGx9dGhpcy5fZ2V0Q29sb3I9dD9hOnMsZGVsZXRlIHRoaXMuY29sb3JBdE5lYXJlc3QsZGVsZXRlIHRoaXMuY29sb3JBdExpbmVhcn11bmxhenkoKXtpZighdGhpcy5fbGF6eURhdGEpcmV0dXJuO2NvbnN0IEE9dGhpcy5fbGF6eURhdGEud2lkdGgsZT10aGlzLl9sYXp5RGF0YS5oZWlnaHQ7aWYoQSYmZSl7Y29uc3QgdD1CLl91cGRhdGVDYW52YXMoKTt0LndpZHRoPUEsdC5oZWlnaHQ9ZTtjb25zdCBuPXQuZ2V0Q29udGV4dCgiMmQiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KTtuLmNsZWFyUmVjdCgwLDAsQSxlKSxuLmRyYXdJbWFnZSh0aGlzLl9sYXp5RGF0YSwwLDAsQSxlKTtjb25zdCBpPW4uZ2V0SW1hZ2VEYXRhKDAsMCxBLGUpO3RoaXMuX2NvbG9yRGF0YT1pLmRhdGF9dGhpcy5fbGF6eURhdGE9bnVsbH1jb2xvckF0TmVhcmVzdChBLGUpe3JldHVybiB0aGlzLl9nZXRDb2xvcih0aGlzLE1hdGguZmxvb3IoQVswXSoodGhpcy5fd2lkdGgtMSkpLE1hdGguZmxvb3IoQVsxXSoodGhpcy5faGVpZ2h0LTEpKSxlKX1jb2xvckF0TGluZWFyKEEsZSl7Y29uc3QgdD1BWzBdKih0aGlzLl93aWR0aC0xKSxuPUFbMV0qKHRoaXMuX2hlaWdodC0xKSxpPXQlMSxyPW4lMSxzPTEtaSxhPTEtcixCPU1hdGguZmxvb3IodCksYz1NYXRoLmZsb29yKG4pLGc9dGhpcy5fZ2V0Q29sb3IodGhpcyxCLGMsb1swXSksRT10aGlzLl9nZXRDb2xvcih0aGlzLEIrMSxjLG9bMV0pLFE9dGhpcy5fZ2V0Q29sb3IodGhpcyxCLGMrMSxvWzJdKSx1PXRoaXMuX2dldENvbG9yKHRoaXMsQisxLGMrMSxvWzNdKTtyZXR1cm4gZVswXT1nWzBdKnMqYStRWzBdKnMqcitFWzBdKmkqYSt1WzBdKmkqcixlWzFdPWdbMV0qcyphK1FbMV0qcypyK0VbMV0qaSphK3VbMV0qaSpyLGVbMl09Z1syXSpzKmErUVsyXSpzKnIrRVsyXSppKmErdVsyXSppKnIsZVszXT1nWzNdKnMqYStRWzNdKnMqcitFWzNdKmkqYSt1WzNdKmkqcixlfWlzVG91Y2hpbmdOZWFyZXN0KEEpe2lmKHRoaXMuX2NvbG9yRGF0YSlyZXR1cm4gcih0aGlzLE1hdGguZmxvb3IoQVswXSoodGhpcy5fd2lkdGgtMSkpLE1hdGguZmxvb3IoQVsxXSoodGhpcy5faGVpZ2h0LTEpKSk+MH1pc1RvdWNoaW5nTGluZWFyKEEpe2lmKCF0aGlzLl9jb2xvckRhdGEpcmV0dXJuO2NvbnN0IGU9TWF0aC5mbG9vcihBWzBdKih0aGlzLl93aWR0aC0xKSksdD1NYXRoLmZsb29yKEFbMV0qKHRoaXMuX2hlaWdodC0xKSk7cmV0dXJuIHIodGhpcyxlLHQpPjB8fHIodGhpcyxlKzEsdCk+MHx8cih0aGlzLGUsdCsxKT4wfHxyKHRoaXMsZSsxLHQrMSk+MH1zdGF0aWMgX3VwZGF0ZUNhbnZhcygpe3JldHVybiB2b2lkIDA9PT10JiYodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKSksdH19QS5leHBvcnRzPUJ9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMTcpLGk9dCgyOSk7Y2xhc3MgciBleHRlbmRzIGl7Y29uc3RydWN0b3IoQSxlKXtzdXBlcihBLGUpLHRoaXMuX2Nvc3R1bWVSZXNvbHV0aW9uPTEsdGhpcy5fdGV4dHVyZVNpemU9WzAsMF19ZGlzcG9zZSgpe3RoaXMuX3RleHR1cmUmJih0aGlzLl9yZW5kZXJlci5nbC5kZWxldGVUZXh0dXJlKHRoaXMuX3RleHR1cmUpLHRoaXMuX3RleHR1cmU9bnVsbCksc3VwZXIuZGlzcG9zZSgpfWdldCBzaXplKCl7cmV0dXJuW3RoaXMuX3RleHR1cmVTaXplWzBdL3RoaXMuX2Nvc3R1bWVSZXNvbHV0aW9uLHRoaXMuX3RleHR1cmVTaXplWzFdL3RoaXMuX2Nvc3R1bWVSZXNvbHV0aW9uXX1nZXRUZXh0dXJlKEEpe3JldHVybiB0aGlzLl90ZXh0dXJlfHxzdXBlci5nZXRUZXh0dXJlKCl9c2V0Qml0bWFwKEEsZSx0KXtpZighQS53aWR0aHx8IUEuaGVpZ2h0KXJldHVybiB2b2lkIHN1cGVyLnNldEVtcHR5SW1hZ2VEYXRhKCk7Y29uc3QgaT10aGlzLl9yZW5kZXJlci5nbDtsZXQgbz1BO2lmKEEgaW5zdGFuY2VvZiBIVE1MQ2FudmFzRWxlbWVudCYmITEhPT1BLnJldXNhYmxlKXtvPUEuZ2V0Q29udGV4dCgiMmQiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KS5nZXRJbWFnZURhdGEoMCwwLEEud2lkdGgsQS5oZWlnaHQpfWlmKG51bGw9PT10aGlzLl90ZXh0dXJlKXtjb25zdCBBPXthdXRvOiExLHdyYXA6aS5DTEFNUF9UT19FREdFfTt0aGlzLl90ZXh0dXJlPW4uY3JlYXRlVGV4dHVyZShpLEEpfXRoaXMuX3NldFRleHR1cmUobyksdGhpcy5fY29zdHVtZVJlc29sdXRpb249ZXx8Mix0aGlzLl90ZXh0dXJlU2l6ZT1yLl9nZXRCaXRtYXBTaXplKEEpLHZvaWQgMD09PXQmJih0PXRoaXMuY2FsY3VsYXRlUm90YXRpb25DZW50ZXIoKSksdGhpcy5fcm90YXRpb25DZW50ZXJbMF09dFswXSx0aGlzLl9yb3RhdGlvbkNlbnRlclsxXT10WzFdLHRoaXMuZW1pdFdhc0FsdGVyZWQoKX1zdGF0aWMgX2dldEJpdG1hcFNpemUoQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBIVE1MSW1hZ2VFbGVtZW50P1tBLm5hdHVyYWxXaWR0aHx8QS53aWR0aCxBLm5hdHVyYWxIZWlnaHR8fEEuaGVpZ2h0XTpBIGluc3RhbmNlb2YgSFRNTFZpZGVvRWxlbWVudD9bQS52aWRlb1dpZHRofHxBLndpZHRoLEEudmlkZW9IZWlnaHR8fEEuaGVpZ2h0XTpbQS53aWR0aCxBLmhlaWdodF19fUEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDE3KSxpPXQoMTEyKSxyPXQoNTApLG89dCgzOSkscz10KDExMyksYT10KDExNCksQj1uLnYzLmNyZWF0ZSgpLGM9KEEsZSk9Pntjb25zdCB0PUIsbj1lWzBdLGk9ZVsxXSxyPUEuX2ludmVyc2VNYXRyaXgsbz1uKnJbM10raSpyWzddK3JbMTVdO3JldHVybiB0WzBdPS41LShuKnJbMF0raSpyWzRdK3JbMTJdKS9vLHRbMV09KG4qclsxXStpKnJbNV0rclsxM10pL28rLjUsTWF0aC5hYnModFswXSk8MWUtNiYmKHRbMF09MCksTWF0aC5hYnModFsxXSk8MWUtNiYmKHRbMV09MCksMCE9PUEuZW5hYmxlZEVmZmVjdHMmJnRbMF0+PTAmJnRbMF08MSYmdFsxXT49MCYmdFsxXTwxJiZzLnRyYW5zZm9ybVBvaW50KEEsdCx0KSx0fTtjbGFzcyBne2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5faWQ9QSx0aGlzLl9yZW5kZXJlcj1lLHRoaXMuX3VuaWZvcm1zPXt1X21vZGVsTWF0cml4Om4ubTQuaWRlbnRpdHkoKSx1X3NpbGhvdWV0dGVDb2xvcjpnLmNvbG9yNGZGcm9tSUQodGhpcy5faWQpfTtjb25zdCB0PW8uRUZGRUNUUy5sZW5ndGg7Zm9yKGxldCBBPTA7QTx0OysrQSl7Y29uc3QgZT1vLkVGRkVDVFNbQV0sdD1vLkVGRkVDVF9JTkZPW2VdLG49dC5jb252ZXJ0ZXI7dGhpcy5fdW5pZm9ybXNbdC51bmlmb3JtTmFtZV09bigwKX10aGlzLl9wb3NpdGlvbj1uLnYzLmNyZWF0ZSgwLDApLHRoaXMuX3NjYWxlPW4udjMuY3JlYXRlKDEwMCwxMDApLHRoaXMuX3RyYW5zZm9ybT1bXSx0aGlzLl9kaXJlY3Rpb249OTAsdGhpcy5fdHJhbnNmb3JtRGlydHk9ITAsdGhpcy5fcm90YXRpb25NYXRyaXg9bi5tNC5pZGVudGl0eSgpLHRoaXMuX3JvdGF0aW9uVHJhbnNmb3JtRGlydHk9ITAsdGhpcy5fcm90YXRpb25BZGp1c3RlZD1uLnYzLmNyZWF0ZSgpLHRoaXMuX3JvdGF0aW9uQ2VudGVyRGlydHk9ITAsdGhpcy5fc2tpblNjYWxlPW4udjMuY3JlYXRlKDAsMCwwKSx0aGlzLl9za2luU2NhbGVEaXJ0eT0hMCx0aGlzLl9pbnZlcnNlTWF0cml4PW4ubTQuaWRlbnRpdHkoKSx0aGlzLl9pbnZlcnNlVHJhbnNmb3JtRGlydHk9ITAsdGhpcy5fdmlzaWJsZT0hMCx0aGlzLmVuYWJsZWRFZmZlY3RzPTAsdGhpcy5fY29udmV4SHVsbFBvaW50cz1udWxsLHRoaXMuX2NvbnZleEh1bGxEaXJ0eT0hMCx0aGlzLl90cmFuc2Zvcm1lZEh1bGxQb2ludHM9bnVsbCx0aGlzLl90cmFuc2Zvcm1lZEh1bGxEaXJ0eT0hMCx0aGlzLl9za2luV2FzQWx0ZXJlZD10aGlzLl9za2luV2FzQWx0ZXJlZC5iaW5kKHRoaXMpLHRoaXMuaXNUb3VjaGluZz10aGlzLl9pc1RvdWNoaW5nTmV2ZXIsdGhpcy5faGlnaFF1YWxpdHk9ITF9c2V0SGlnaFF1YWxpdHkoQSl7dGhpcy5faGlnaFF1YWxpdHk9QX1kaXNwb3NlKCl7dGhpcy5za2luPW51bGx9c2V0VHJhbnNmb3JtRGlydHkoKXt0aGlzLl90cmFuc2Zvcm1EaXJ0eT0hMCx0aGlzLl9pbnZlcnNlVHJhbnNmb3JtRGlydHk9ITAsdGhpcy5fdHJhbnNmb3JtZWRIdWxsRGlydHk9ITB9Z2V0IGlkKCl7cmV0dXJuIHRoaXMuX2lkfWdldCBza2luKCl7cmV0dXJuIHRoaXMuX3NraW59c2V0IHNraW4oQSl7dGhpcy5fc2tpbiE9PUEmJih0aGlzLl9za2luPUEsdGhpcy5fc2tpbldhc0FsdGVyZWQoKSl9Z2V0IHNjYWxlKCl7cmV0dXJuW3RoaXMuX3NjYWxlWzBdLHRoaXMuX3NjYWxlWzFdXX1nZXQgdHJhbnNmb3JtKCl7cmV0dXJuIHRoaXMuX3RyYW5zZm9ybX1nZXRVbmlmb3Jtcygpe3JldHVybiB0aGlzLl90cmFuc2Zvcm1EaXJ0eSYmdGhpcy5fY2FsY3VsYXRlVHJhbnNmb3JtKCksdGhpcy5fdW5pZm9ybXN9Z2V0VmlzaWJsZSgpe3JldHVybiB0aGlzLl92aXNpYmxlfXVwZGF0ZVBvc2l0aW9uKEEpe3RoaXMuX3Bvc2l0aW9uWzBdPT09QVswXSYmdGhpcy5fcG9zaXRpb25bMV09PT1BWzFdfHwodGhpcy5faGlnaFF1YWxpdHk/KHRoaXMuX3Bvc2l0aW9uWzBdPUFbMF0sdGhpcy5fcG9zaXRpb25bMV09QVsxXSk6KHRoaXMuX3Bvc2l0aW9uWzBdPU1hdGgucm91bmQoQVswXSksdGhpcy5fcG9zaXRpb25bMV09TWF0aC5yb3VuZChBWzFdKSksdGhpcy5fcmVuZGVyZXIuZGlydHk9ITAsdGhpcy5zZXRUcmFuc2Zvcm1EaXJ0eSgpKX11cGRhdGVEaXJlY3Rpb24oQSl7dGhpcy5fZGlyZWN0aW9uIT09QSYmKHRoaXMuX2RpcmVjdGlvbj1BLHRoaXMuX3JlbmRlcmVyLmRpcnR5PSEwLHRoaXMuX3JvdGF0aW9uVHJhbnNmb3JtRGlydHk9ITAsdGhpcy5zZXRUcmFuc2Zvcm1EaXJ0eSgpKX11cGRhdGVTY2FsZShBKXt0aGlzLl9zY2FsZVswXT09PUFbMF0mJnRoaXMuX3NjYWxlWzFdPT09QVsxXXx8KHRoaXMuX3NjYWxlWzBdPUFbMF0sdGhpcy5fc2NhbGVbMV09QVsxXSx0aGlzLl9yZW5kZXJlci5kaXJ0eT0hMCx0aGlzLl9yb3RhdGlvbkNlbnRlckRpcnR5PSEwLHRoaXMuX3NraW5TY2FsZURpcnR5PSEwLHRoaXMuc2V0VHJhbnNmb3JtRGlydHkoKSl9dXBkYXRlVHJhbnNmb3JtKEEpe3RoaXMuX3RyYW5zZm9ybT1BLHRoaXMuX3JlbmRlcmVyLmRpcnR5PSEwLHRoaXMuX3JvdGF0aW9uQ2VudGVyRGlydHk9ITAsdGhpcy5fc2tpblNjYWxlRGlydHk9ITAsdGhpcy5zZXRUcmFuc2Zvcm1EaXJ0eSgpfXVwZGF0ZVZpc2libGUoQSl7dGhpcy5fdmlzaWJsZSE9PUEmJih0aGlzLl92aXNpYmxlPUEsdGhpcy5fcmVuZGVyZXIuZGlydHk9ITAsdGhpcy5zZXRDb252ZXhIdWxsRGlydHkoKSl9dXBkYXRlRWZmZWN0KEEsZSl7dGhpcy5fcmVuZGVyZXIuZGlydHk9ITA7Y29uc3QgdD1vLkVGRkVDVF9JTkZPW0FdO2U/dGhpcy5lbmFibGVkRWZmZWN0c3w9dC5tYXNrOnRoaXMuZW5hYmxlZEVmZmVjdHMmPX50Lm1hc2s7Y29uc3Qgbj10LmNvbnZlcnRlcjt0aGlzLl91bmlmb3Jtc1t0LnVuaWZvcm1OYW1lXT1uKGUpLHQuc2hhcGVDaGFuZ2VzJiZ0aGlzLnNldENvbnZleEh1bGxEaXJ0eSgpfXVwZGF0ZVByb3BlcnRpZXMoQSl7InBvc2l0aW9uImluIEEmJnRoaXMudXBkYXRlUG9zaXRpb24oQS5wb3NpdGlvbiksImRpcmVjdGlvbiJpbiBBJiZ0aGlzLnVwZGF0ZURpcmVjdGlvbihBLmRpcmVjdGlvbiksInNjYWxlImluIEEmJnRoaXMudXBkYXRlU2NhbGUoQS5zY2FsZSksInZpc2libGUiaW4gQSYmdGhpcy51cGRhdGVWaXNpYmxlKEEudmlzaWJsZSk7Y29uc3QgZT1vLkVGRkVDVFMubGVuZ3RoO2ZvcihsZXQgdD0wO3Q8ZTsrK3Qpe2NvbnN0IGU9by5FRkZFQ1RTW3RdO2UgaW4gQSYmdGhpcy51cGRhdGVFZmZlY3QoZSxBW2VdKX19dHJhbnNmb3JtQmVmb3JlQ2hlY2tWaWV3cG9ydCgpe3JldHVybiB0aGlzLl9yb3RhdGlvbkNlbnRlckRpcnR5fHx0aGlzLl9za2luU2NhbGVEaXJ0eX1pblZpZXdwb3J0KEEsZSl7Y29uc3QgdD1+fih0aGlzLl9wb3NpdGlvblswXSsuNS10aGlzLl9yb3RhdGlvbkFkanVzdGVkWzBdKSxuPX5+KHRoaXMuX3Bvc2l0aW9uWzFdKy41LXRoaXMuX3JvdGF0aW9uQWRqdXN0ZWRbMV0pLGk9fn4odGhpcy5fc2tpblNjYWxlWzBdLzIrLjUpLHI9fn4odGhpcy5fc2tpblNjYWxlWzFdLzIrLjUpLG89TWF0aC5tYXgoaSxyKTtyZXR1cm4hKHQraStvPC1BfHxuLXItbz5lKSYmISh0LWktbz5BfHxuK3IrbzwtZSl9X2NhbGN1bGF0ZVRyYW5zZm9ybSgpe2lmKHRoaXMuX3JvdGF0aW9uVHJhbnNmb3JtRGlydHkpe2NvbnN0IEE9KDI3MC10aGlzLl9kaXJlY3Rpb24pKk1hdGguUEkvMTgwLGU9TWF0aC5jb3MoQSksdD1NYXRoLnNpbihBKTt0aGlzLl9yb3RhdGlvbk1hdHJpeFswXT1lLHRoaXMuX3JvdGF0aW9uTWF0cml4WzFdPXQsdGhpcy5fcm90YXRpb25NYXRyaXhbNF09LXQsdGhpcy5fcm90YXRpb25NYXRyaXhbNV09ZSx0aGlzLl9yb3RhdGlvblRyYW5zZm9ybURpcnR5PSExfWlmKHRoaXMuX3JvdGF0aW9uQ2VudGVyRGlydHkmJm51bGwhPT10aGlzLnNraW4pe2NvbnN0IEE9dGhpcy5za2luLnJvdGF0aW9uQ2VudGVyLGU9dGhpcy5za2luLnNpemUsdD1BWzBdLG49QVsxXSxpPWVbMF0scj1lWzFdLG89dGhpcy5fc2NhbGVbMF0scz10aGlzLl9zY2FsZVsxXSxhPXRoaXMuX3JvdGF0aW9uQWRqdXN0ZWQ7YVswXT0odC1pLzIpKm8vMTAwLGFbMV09KG4tci8yKSpzLzEwMCotMSx0aGlzLl9yb3RhdGlvbkNlbnRlckRpcnR5PSExfWlmKHRoaXMuX3NraW5TY2FsZURpcnR5JiZudWxsIT09dGhpcy5za2luKXtjb25zdCBBPXRoaXMuc2tpbi5zaXplLGU9dGhpcy5fc2tpblNjYWxlO2VbMF09QVswXSp0aGlzLl9zY2FsZVswXS8xMDAsZVsxXT1BWzFdKnRoaXMuX3NjYWxlWzFdLzEwMCx0aGlzLl9za2luU2NhbGVEaXJ0eT0hMX1jb25zdCBBPXRoaXMuX3VuaWZvcm1zLnVfbW9kZWxNYXRyaXgsZT10aGlzLl9za2luU2NhbGVbMF0sdD10aGlzLl9za2luU2NhbGVbMV0sbj10aGlzLl9yb3RhdGlvbk1hdHJpeFswXSxpPXRoaXMuX3JvdGF0aW9uTWF0cml4WzFdLHI9dGhpcy5fcm90YXRpb25NYXRyaXhbNF0sbz10aGlzLl9yb3RhdGlvbk1hdHJpeFs1XSxzPXRoaXMuX3JvdGF0aW9uQWRqdXN0ZWRbMF0sYT10aGlzLl9yb3RhdGlvbkFkanVzdGVkWzFdLEI9dGhpcy5fcG9zaXRpb25bMF0sYz10aGlzLl9wb3NpdGlvblsxXTtBWzBdPWUqbixBWzFdPWUqaSxBWzRdPXQqcixBWzVdPXQqbyxBWzEyXT1uKnMrciphK0IsQVsxM109aSpzK28qYStjLHRoaXMuX3RyYW5zZm9ybURpcnR5PSExfW5lZWRzQ29udmV4SHVsbFBvaW50cygpe3JldHVybiF0aGlzLl9jb252ZXhIdWxsUG9pbnRzfHx0aGlzLl9jb252ZXhIdWxsRGlydHl8fDA9PT10aGlzLl9jb252ZXhIdWxsUG9pbnRzLmxlbmd0aH1zZXRDb252ZXhIdWxsRGlydHkoKXt0aGlzLl9jb252ZXhIdWxsRGlydHk9ITB9c2V0Q29udmV4SHVsbFBvaW50cyhBKXt0aGlzLl9jb252ZXhIdWxsUG9pbnRzPUEsdGhpcy5fY29udmV4SHVsbERpcnR5PSExLHRoaXMuX3RyYW5zZm9ybWVkSHVsbFBvaW50cz1bXTtmb3IobGV0IGU9MDtlPEEubGVuZ3RoO2UrKyl0aGlzLl90cmFuc2Zvcm1lZEh1bGxQb2ludHMucHVzaChuLnYzLmNyZWF0ZSgpKTt0aGlzLl90cmFuc2Zvcm1lZEh1bGxEaXJ0eT0hMH1faXNUb3VjaGluZ05ldmVyKEEpe3JldHVybiExfV9pc1RvdWNoaW5nTmVhcmVzdChBKXtyZXR1cm4gdGhpcy5za2luLmlzVG91Y2hpbmdOZWFyZXN0KGModGhpcyxBKSl9X2lzVG91Y2hpbmdMaW5lYXIoQSl7cmV0dXJuIHRoaXMuc2tpbi5pc1RvdWNoaW5nTGluZWFyKGModGhpcyxBKSl9Z2V0Qm91bmRzKEEpe2lmKHRoaXMubmVlZHNDb252ZXhIdWxsUG9pbnRzKCkpdGhyb3cgbmV3IEVycm9yKCJOZWVkcyB1cGRhdGVkIGNvbnZleCBodWxsIHBvaW50cyBiZWZvcmUgYm91bmRzIGNhbGN1bGF0aW9uLiIpO3RoaXMuX3RyYW5zZm9ybURpcnR5JiZ0aGlzLl9jYWxjdWxhdGVUcmFuc2Zvcm0oKTtjb25zdCBlPXRoaXMuX2dldFRyYW5zZm9ybWVkSHVsbFBvaW50cygpO3JldHVybihBPUF8fG5ldyBpKS5pbml0RnJvbVBvaW50c0FBQkIoZSksQX1nZXRCb3VuZHNGb3JCdWJibGUoQSl7aWYodGhpcy5uZWVkc0NvbnZleEh1bGxQb2ludHMoKSl0aHJvdyBuZXcgRXJyb3IoIk5lZWRzIHVwZGF0ZWQgY29udmV4IGh1bGwgcG9pbnRzIGJlZm9yZSBidWJibGUgYm91bmRzIGNhbGN1bGF0aW9uLiIpO3RoaXMuX3RyYW5zZm9ybURpcnR5JiZ0aGlzLl9jYWxjdWxhdGVUcmFuc2Zvcm0oKTtjb25zdCBlPXRoaXMuX2dldFRyYW5zZm9ybWVkSHVsbFBvaW50cygpLHQ9TWF0aC5tYXguYXBwbHkobnVsbCxlLm1hcChBPT5BWzFdKSksbj1lLmZpbHRlcihBPT5BWzFdPnQtOCk7cmV0dXJuKEE9QXx8bmV3IGkpLmluaXRGcm9tUG9pbnRzQUFCQihuKSxBfWdldEFBQkIoQSl7dGhpcy5fdHJhbnNmb3JtRGlydHkmJnRoaXMuX2NhbGN1bGF0ZVRyYW5zZm9ybSgpO2NvbnN0IGU9dGhpcy5fdW5pZm9ybXMudV9tb2RlbE1hdHJpeDtyZXR1cm4oQT1BfHxuZXcgaSkuaW5pdEZyb21Nb2RlbE1hdHJpeChlKSxBfWdldEZhc3RCb3VuZHMoQSl7cmV0dXJuIHRoaXMubmVlZHNDb252ZXhIdWxsUG9pbnRzKCk/dGhpcy5nZXRBQUJCKEEpOnRoaXMuZ2V0Qm91bmRzKEEpfV9nZXRUcmFuc2Zvcm1lZEh1bGxQb2ludHMoKXtpZighdGhpcy5fdHJhbnNmb3JtZWRIdWxsRGlydHkpcmV0dXJuIHRoaXMuX3RyYW5zZm9ybWVkSHVsbFBvaW50cztjb25zdCBBPW4ubTQub3J0aG8oLTEsMSwtMSwxLC0xLDEpLGU9dGhpcy5za2luLnNpemUsdD0xL2VbMF0vMixpPTEvZVsxXS8yLHI9bi5tNC5tdWx0aXBseSh0aGlzLl91bmlmb3Jtcy51X21vZGVsTWF0cml4LEEpO2ZvcihsZXQgQT0wO0E8dGhpcy5fY29udmV4SHVsbFBvaW50cy5sZW5ndGg7QSsrKXtjb25zdCBvPXRoaXMuX2NvbnZleEh1bGxQb2ludHNbQV0scz10aGlzLl90cmFuc2Zvcm1lZEh1bGxQb2ludHNbQV07c1swXT0uNSstb1swXS9lWzBdLXQsc1sxXT1vWzFdL2VbMV0tLjUraSxuLm00LnRyYW5zZm9ybVBvaW50KHIscyxzKX1yZXR1cm4gdGhpcy5fdHJhbnNmb3JtZWRIdWxsRGlydHk9ITEsdGhpcy5fdHJhbnNmb3JtZWRIdWxsUG9pbnRzfXVwZGF0ZU1hdHJpeCgpe2lmKHRoaXMuX3RyYW5zZm9ybURpcnR5JiZ0aGlzLl9jYWxjdWxhdGVUcmFuc2Zvcm0oKSx0aGlzLl9pbnZlcnNlVHJhbnNmb3JtRGlydHkpe2NvbnN0IEE9dGhpcy5faW52ZXJzZU1hdHJpeDtuLm00LmNvcHkodGhpcy5fdW5pZm9ybXMudV9tb2RlbE1hdHJpeCxBKSxBWzEwXT0xLG4ubTQuaW52ZXJzZShBLEEpLHRoaXMuX2ludmVyc2VUcmFuc2Zvcm1EaXJ0eT0hMX19dXBkYXRlQ1BVUmVuZGVyQXR0cmlidXRlcygpe3RoaXMudXBkYXRlTWF0cml4KCksdGhpcy5za2luPyh0aGlzLnNraW4udXBkYXRlU2lsaG91ZXR0ZSh0aGlzLl9zY2FsZSksdGhpcy5za2luLnVzZU5lYXJlc3QodGhpcy5fc2NhbGUsdGhpcyk/dGhpcy5pc1RvdWNoaW5nPXRoaXMuX2lzVG91Y2hpbmdOZWFyZXN0OnRoaXMuaXNUb3VjaGluZz10aGlzLl9pc1RvdWNoaW5nTGluZWFyKTooYS53YXJuKCJDb3VsZCBub3QgZmluZCBza2luIGZvciBkcmF3YWJsZSB3aXRoIGlkOiAiLmNvbmNhdCh0aGlzLl9pZCkpLHRoaXMuaXNUb3VjaGluZz10aGlzLl9pc1RvdWNoaW5nTmV2ZXIpfV9za2luV2FzQWx0ZXJlZCgpe3RoaXMuX3JlbmRlcmVyLmRpcnR5PSEwLHRoaXMuX3JvdGF0aW9uQ2VudGVyRGlydHk9ITAsdGhpcy5fc2tpblNjYWxlRGlydHk9ITAsdGhpcy5zZXRDb252ZXhIdWxsRGlydHkoKSx0aGlzLnNldFRyYW5zZm9ybURpcnR5KCl9c3RhdGljIGNvbG9yNGZGcm9tSUQoQSl7cmV0dXJuWygoQS09ci5JRF9OT05FKT4+MCYyNTUpLzI1NSwoQT4+OCYyNTUpLzI1NSwoQT4+MTYmMjU1KS8yNTUsMV19c3RhdGljIGNvbG9yM2JUb0lEKEEsZSx0KXtsZXQgbjtyZXR1cm4gbj0oMjU1JkEpPDwwLG58PSgyNTUmZSk8PDgsbnw9KDI1NSZ0KTw8MTYsbityLklEX05PTkV9c3RhdGljIHNhbXBsZUNvbG9yNGIoQSxlLHQsbil7Y29uc3QgaT1jKGUsQSk7aWYoaVswXTwwfHxpWzFdPDB8fGlbMF0+MXx8aVsxXT4xKXJldHVybiB0WzBdPTAsdFsxXT0wLHRbMl09MCx0WzNdPTAsdDtjb25zdCByPWUuc2tpbi5fc2lsaG91ZXR0ZS5jb2xvckF0TmVhcmVzdChpLHQpO3JldHVybiAwPT09ZS5lbmFibGVkRWZmZWN0cz9yOnMudHJhbnNmb3JtQ29sb3IoZSxyLG4pfX1BLmV4cG9ydHM9Z30sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9InByZWNpc2lvbiBtZWRpdW1wIGZsb2F0O1xuXG4jaWZkZWYgRFJBV19NT0RFX2xpbmVcbnVuaWZvcm0gdmVjMiB1X3N0YWdlU2l6ZTtcbmF0dHJpYnV0ZSB2ZWMyIGFfbGluZVRoaWNrbmVzc0FuZExlbmd0aDtcbmF0dHJpYnV0ZSB2ZWM0IGFfcGVuUG9pbnRzO1xuYXR0cmlidXRlIHZlYzQgYV9saW5lQ29sb3I7XG5cbnZhcnlpbmcgdmVjNCB2X2xpbmVDb2xvcjtcbnZhcnlpbmcgZmxvYXQgdl9saW5lVGhpY2tuZXNzO1xudmFyeWluZyBmbG9hdCB2X2xpbmVMZW5ndGg7XG52YXJ5aW5nIHZlYzQgdl9wZW5Qb2ludHM7XG5cbi8vIEFkZCB0aGlzIHRvIGRpdmlzb3JzIHRvIHByZXZlbnQgZGl2aXNpb24gYnkgMCwgd2hpY2ggcmVzdWx0cyBpbiBOYU5zIHByb3BhZ2F0aW5nIHRocm91Z2ggY2FsY3VsYXRpb25zLlxuLy8gU21hbGxlciB2YWx1ZXMgY2FuIGNhdXNlIHByb2JsZW1zIG9uIHNvbWUgbW9iaWxlIGRldmljZXMuXG5jb25zdCBmbG9hdCBlcHNpbG9uID0gMWUtMztcbiNlbmRpZlxuXG4jaWYgIShkZWZpbmVkKERSQVdfTU9ERV9saW5lKSB8fCBkZWZpbmVkKERSQVdfTU9ERV9iYWNrZ3JvdW5kKSlcbnVuaWZvcm0gbWF0NCB1X3Byb2plY3Rpb25NYXRyaXg7XG51bmlmb3JtIG1hdDQgdV9tb2RlbE1hdHJpeDtcbmF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7XG4jaWZkZWYgRU5BQkxFX2hvcml6b250YWxfc2hlYXJcbnVuaWZvcm0gZmxvYXQgdV9ob3Jpem9udGFsU2hlYXI7XG4jZW5kaWZcbiNpZmRlZiBFTkFCTEVfdmVydGljYWxfc2hlYXJcbnVuaWZvcm0gZmxvYXQgdV92ZXJ0aWNhbFNoZWFyO1xuI2VuZGlmXG4jZW5kaWZcblxuYXR0cmlidXRlIHZlYzIgYV9wb3NpdGlvbjtcblxudmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7XG5cbnZvaWQgbWFpbigpIHtcblx0I2lmZGVmIERSQVdfTU9ERV9saW5lXG5cdC8vIENhbGN1bGF0ZSBhIHJvdGF0ZWQgKFwidGlnaHRcIikgYm91bmRpbmcgYm94IGFyb3VuZCB0aGUgdHdvIHBlbiBwb2ludHMuXG5cdC8vIFllcywgd2UncmUgZG9pbmcgdGhpcyA2IHRpbWVzIChvbmNlIHBlciB2ZXJ0ZXgpLCBidXQgb24gYWN0dWFsIEdQVSBoYXJkd2FyZSxcblx0Ly8gaXQncyBzdGlsbCBmYXN0ZXIgdGhhbiBkb2luZyBpdCBpbiBKUyBjb21iaW5lZCB3aXRoIHRoZSBjb3N0IG9mIHVuaWZvcm1NYXRyaXg0ZnYuXG5cblx0Ly8gRXhwYW5kIGxpbmUgYm91bmRzIGJ5IHNxcnQoMikgLyAyIGVhY2ggc2lkZS0tIHRoaXMgZW5zdXJlcyB0aGF0IGFsbCBhbnRpYWxpYXNlZCBwaXhlbHNcblx0Ly8gZmFsbCB3aXRoaW4gdGhlIHF1YWQsIGV2ZW4gYXQgYSA0NS1kZWdyZWUgZGlhZ29uYWxcblx0dmVjMiBwb3NpdGlvbiA9IGFfcG9zaXRpb247XG5cdGZsb2F0IGV4cGFuZGVkUmFkaXVzID0gKGFfbGluZVRoaWNrbmVzc0FuZExlbmd0aC54ICogMC41KSArIDEuNDE0MjEzNTYyMzczMDk1MTtcblxuXHQvLyBUaGUgWCBjb29yZGluYXRlIGluY3JlYXNlcyBhbG9uZyB0aGUgbGVuZ3RoIG9mIHRoZSBsaW5lLiBJdCdzIDAgYXQgdGhlIGNlbnRlciBvZiB0aGUgb3JpZ2luIHBvaW50XG5cdC8vIGFuZCBpcyBpbiBwaXhlbC1zcGFjZSAoc28gYXQgbiBwaXhlbHMgYWxvbmcgdGhlIGxpbmUsIGl0cyB2YWx1ZSBpcyBuKS5cblx0dl90ZXhDb29yZC54ID0gbWl4KDAuMCwgYV9saW5lVGhpY2tuZXNzQW5kTGVuZ3RoLnkgKyAoZXhwYW5kZWRSYWRpdXMgKiAyLjApLCBhX3Bvc2l0aW9uLngpIC0gZXhwYW5kZWRSYWRpdXM7XG5cdC8vIFRoZSBZIGNvb3JkaW5hdGUgaXMgcGVycGVuZGljdWxhciB0byB0aGUgbGluZS4gSXQncyBhbHNvIGluIHBpeGVsLXNwYWNlLlxuXHR2X3RleENvb3JkLnkgPSAoKGFfcG9zaXRpb24ueSAtIDAuNSkgKiBleHBhbmRlZFJhZGl1cykgKyAwLjU7XG5cblx0cG9zaXRpb24ueCAqPSBhX2xpbmVUaGlja25lc3NBbmRMZW5ndGgueSArICgyLjAgKiBleHBhbmRlZFJhZGl1cyk7XG5cdHBvc2l0aW9uLnkgKj0gMi4wICogZXhwYW5kZWRSYWRpdXM7XG5cblx0Ly8gMS4gQ2VudGVyIGFyb3VuZCBmaXJzdCBwZW4gcG9pbnRcblx0cG9zaXRpb24gLT0gZXhwYW5kZWRSYWRpdXM7XG5cblx0Ly8gMi4gUm90YXRlIHF1YWQgdG8gbGluZSBhbmdsZVxuXHR2ZWMyIHBvaW50RGlmZiA9IGFfcGVuUG9pbnRzLnp3O1xuXHQvLyBFbnN1cmUgbGluZSBoYXMgYSBub256ZXJvIGxlbmd0aCBzbyBpdCdzIHJlbmRlcmVkIHByb3Blcmx5XG5cdC8vIEFzIGxvbmcgYXMgZWl0aGVyIGNvbXBvbmVudCBpcyBub256ZXJvLCB0aGUgbGluZSBsZW5ndGggd2lsbCBiZSBub256ZXJvXG5cdC8vIElmIHRoZSBsaW5lIGlzIHplcm8tbGVuZ3RoLCBnaXZlIGl0IGEgYml0IG9mIGhvcml6b250YWwgbGVuZ3RoXG5cdHBvaW50RGlmZi54ID0gKGFicyhwb2ludERpZmYueCkgPCBlcHNpbG9uICYmIGFicyhwb2ludERpZmYueSkgPCBlcHNpbG9uKSA/IGVwc2lsb24gOiBwb2ludERpZmYueDtcblx0Ly8gVGhlIGBub3JtYWxpemVkYCB2ZWN0b3IgaG9sZHMgcm90YXRpb25hbCB2YWx1ZXMgZXF1aXZhbGVudCB0byBzaW5lL2Nvc2luZVxuXHQvLyBXZSdyZSBhcHBseWluZyB0aGUgc3RhbmRhcmQgcm90YXRpb24gbWF0cml4IGZvcm11bGEgdG8gdGhlIHBvc2l0aW9uIHRvIHJvdGF0ZSB0aGUgcXVhZCB0byB0aGUgbGluZSBhbmdsZVxuXHQvLyBwb2ludERpZmYgY2FuIGhvbGQgbGFyZ2UgdmFsdWVzIHNvIHdlIG11c3QgZGl2aWRlIGJ5IHVfbGluZUxlbmd0aCBpbnN0ZWFkIG9mIGNhbGxpbmcgR0xTTCdzIG5vcm1hbGl6ZSBmdW5jdGlvbjpcblx0Ly8gaHR0cHM6Ly9hc2F3aWNraS5pbmZvL25ld3NfMTU5Nl93YXRjaF9vdXRfZm9yX3JlZHVjZWRfcHJlY2lzaW9uX25vcm1hbGl6ZWxlbmd0aF9pbl9vcGVuZ2xfZXNcblx0dmVjMiBub3JtYWxpemVkID0gcG9pbnREaWZmIC8gbWF4KGFfbGluZVRoaWNrbmVzc0FuZExlbmd0aC55LCBlcHNpbG9uKTtcblx0cG9zaXRpb24gPSBtYXQyKG5vcm1hbGl6ZWQueCwgbm9ybWFsaXplZC55LCAtbm9ybWFsaXplZC55LCBub3JtYWxpemVkLngpICogcG9zaXRpb247XG5cblx0Ly8gMy4gVHJhbnNsYXRlIHF1YWRcblx0cG9zaXRpb24gKz0gYV9wZW5Qb2ludHMueHk7XG5cblx0Ly8gNC4gQXBwbHkgdmlldyB0cmFuc2Zvcm1cblx0cG9zaXRpb24gKj0gMi4wIC8gdV9zdGFnZVNpemU7XG5cdGdsX1Bvc2l0aW9uID0gdmVjNChwb3NpdGlvbiwgMCwgMSk7XG5cblx0dl9saW5lQ29sb3IgPSBhX2xpbmVDb2xvcjtcblx0dl9saW5lVGhpY2tuZXNzID0gYV9saW5lVGhpY2tuZXNzQW5kTGVuZ3RoLng7XG5cdHZfbGluZUxlbmd0aCA9IGFfbGluZVRoaWNrbmVzc0FuZExlbmd0aC55O1xuXHR2X3BlblBvaW50cyA9IGFfcGVuUG9pbnRzO1xuXHQjZWxpZiBkZWZpbmVkKERSQVdfTU9ERV9iYWNrZ3JvdW5kKVxuXHRnbF9Qb3NpdGlvbiA9IHZlYzQoYV9wb3NpdGlvbiAqIDIuMCwgMCwgMSk7XG5cdCNlbHNlXG5cdGZsb2F0IHggPSBhX3Bvc2l0aW9uLng7XG5cdGZsb2F0IHkgPSBhX3Bvc2l0aW9uLnk7XG5cdCNpZmRlZiBFTkFCTEVfaG9yaXpvbnRhbF9zaGVhclxuXHRpZiAoYV9wb3NpdGlvbi55IDwgMC4wKVxuXHRcdHggKz0gdV9ob3Jpem9udGFsU2hlYXI7XG5cdCNlbmRpZlxuXHQjaWZkZWYgRU5BQkxFX3ZlcnRpY2FsX3NoZWFyXG5cdGlmIChhX3Bvc2l0aW9uLnggPCAwLjApXG5cdFx0eSArPSB1X3ZlcnRpY2FsU2hlYXI7XG5cdCNlbmRpZlxuXHRnbF9Qb3NpdGlvbiA9IHVfcHJvamVjdGlvbk1hdHJpeCAqIHVfbW9kZWxNYXRyaXggKiB2ZWM0KHgseSwgMCwgMSk7XG5cdHZfdGV4Q29vcmQgPSBhX3RleENvb3JkO1xuXHQjZW5kaWZcbn1cbiJ9LGZ1bmN0aW9uKEEsZSl7QS5leHBvcnRzPSdwcmVjaXNpb24gbWVkaXVtcCBmbG9hdDtcblxuI2lmZGVmIERSQVdfTU9ERV9zaWxob3VldHRlXG51bmlmb3JtIHZlYzQgdV9zaWxob3VldHRlQ29sb3I7XG4jZWxzZSAvLyBEUkFXX01PREVfc2lsaG91ZXR0ZVxuIyBpZmRlZiBFTkFCTEVfY29sb3JcbnVuaWZvcm0gZmxvYXQgdV9jb2xvcjtcbiMgZW5kaWYgLy8gRU5BQkxFX2NvbG9yXG4jIGlmZGVmIEVOQUJMRV9icmlnaHRuZXNzXG51bmlmb3JtIGZsb2F0IHVfYnJpZ2h0bmVzcztcbiMgZW5kaWYgLy8gRU5BQkxFX2JyaWdodG5lc3NcbiNlbmRpZiAvLyBEUkFXX01PREVfc2lsaG91ZXR0ZVxuXG4jaWZkZWYgRFJBV19NT0RFX2NvbG9yTWFza1xudW5pZm9ybSB2ZWMzIHVfY29sb3JNYXNrO1xudW5pZm9ybSBmbG9hdCB1X2NvbG9yTWFza1RvbGVyYW5jZTtcbiNlbmRpZiAvLyBEUkFXX01PREVfY29sb3JNYXNrXG5cbiNpZmRlZiBFTkFCTEVfZmlzaGV5ZVxudW5pZm9ybSBmbG9hdCB1X2Zpc2hleWU7XG4jZW5kaWYgLy8gRU5BQkxFX2Zpc2hleWVcbiNpZmRlZiBFTkFCTEVfd2hpcmxcbnVuaWZvcm0gZmxvYXQgdV93aGlybDtcbiNlbmRpZiAvLyBFTkFCTEVfd2hpcmxcbiNpZmRlZiBFTkFCTEVfcGl4ZWxhdGVcbnVuaWZvcm0gZmxvYXQgdV9waXhlbGF0ZTtcbnVuaWZvcm0gdmVjMiB1X3NraW5TaXplO1xuI2VuZGlmIC8vIEVOQUJMRV9waXhlbGF0ZVxuI2lmZGVmIEVOQUJMRV9tb3NhaWNcbnVuaWZvcm0gZmxvYXQgdV9tb3NhaWM7XG4jZW5kaWYgLy8gRU5BQkxFX21vc2FpY1xuI2lmZGVmIEVOQUJMRV9naG9zdFxudW5pZm9ybSBmbG9hdCB1X2dob3N0O1xuI2VuZGlmIC8vIEVOQUJMRV9naG9zdFxuI2lmZGVmIEVOQUJMRV9yZWRcbnVuaWZvcm0gZmxvYXQgdV9yZWQ7XG4jZW5kaWYgLy8gRU5BQkxFX3JlZFxuI2lmZGVmIEVOQUJMRV9ncmVlblxudW5pZm9ybSBmbG9hdCB1X2dyZWVuO1xuI2VuZGlmIC8vIEVOQUJMRV9ncmVlblxuI2lmZGVmIEVOQUJMRV9ibHVlXG51bmlmb3JtIGZsb2F0IHVfYmx1ZTtcbiNlbmRpZiAvLyBFTkFCTEVfYmx1ZVxuI2lmZGVmIEVOQUJMRV9vcGFxdWVcbnVuaWZvcm0gZmxvYXQgdV9vcGFxdWU7XG4jZW5kaWYgLy8gRU5BQkxFX29wYXF1ZVxuI2lmZGVmIEVOQUJMRV9zYXR1cmF0aW9uXG51bmlmb3JtIGZsb2F0IHVfc2F0dXJhdGlvbjtcbiNlbmRpZiAvLyBFTkFCTEVfc2F0dXJhdGlvblxuI2lmZGVmIEVOQUJMRV90aW50Q29sb3JcbnVuaWZvcm0gaGlnaHAgZmxvYXQgdV90aW50Q29sb3I7XG4jZW5kaWYgLy8gRU5BQkxFX3RpbnRDb2xvclxuXG4jaWZkZWYgRFJBV19NT0RFX2xpbmVcbnZhcnlpbmcgdmVjNCB2X2xpbmVDb2xvcjtcbnZhcnlpbmcgZmxvYXQgdl9saW5lVGhpY2tuZXNzO1xudmFyeWluZyBmbG9hdCB2X2xpbmVMZW5ndGg7XG4jZW5kaWYgLy8gRFJBV19NT0RFX2xpbmVcblxuI2lmZGVmIERSQVdfTU9ERV9iYWNrZ3JvdW5kXG51bmlmb3JtIHZlYzQgdV9iYWNrZ3JvdW5kQ29sb3I7XG4jZW5kaWYgLy8gRFJBV19NT0RFX2JhY2tncm91bmRcblxudW5pZm9ybSBzYW1wbGVyMkQgdV9za2luO1xuXG4jaWZuZGVmIERSQVdfTU9ERV9iYWNrZ3JvdW5kXG52YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDtcbiNlbmRpZlxuXG4vLyBBZGQgdGhpcyB0byBkaXZpc29ycyB0byBwcmV2ZW50IGRpdmlzaW9uIGJ5IDAsIHdoaWNoIHJlc3VsdHMgaW4gTmFOcyBwcm9wYWdhdGluZyB0aHJvdWdoIGNhbGN1bGF0aW9ucy5cbi8vIFNtYWxsZXIgdmFsdWVzIGNhbiBjYXVzZSBwcm9ibGVtcyBvbiBzb21lIG1vYmlsZSBkZXZpY2VzLlxuY29uc3QgZmxvYXQgZXBzaWxvbiA9IDFlLTM7XG5cbiNpZiAhZGVmaW5lZChEUkFXX01PREVfc2lsaG91ZXR0ZSkgJiYgKGRlZmluZWQoRU5BQkxFX2NvbG9yKSB8fCBkZWZpbmVkKEVOQUJMRV9zYXR1cmF0aW9uKSB8fCBkZWZpbmVkKEVOQUJMRV90aW50Q29sb3IpKVxuLy8gQnJhbmNobGVzcyBjb2xvciBjb252ZXJzaW9ucyBiYXNlZCBvbiBjb2RlIGZyb206XG4vLyBodHRwOi8vd3d3LmNoaWxsaWFudC5jb20vcmdiMmhzdi5odG1sIGJ5IElhbiBUYXlsb3Jcbi8vIEJhc2VkIGluIHBhcnQgb24gd29yayBieSBTYW0gSG9jZXZhciBhbmQgRW1pbCBQZXJzc29uXG4vLyBTZWUgYWxzbzogaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvSFNMX2FuZF9IU1YjRm9ybWFsX2Rlcml2YXRpb25cblxuXG4vLyBDb252ZXJ0IGFuIFJHQiBjb2xvciB0byBIdWUsIFNhdHVyYXRpb24sIGFuZCBWYWx1ZS5cbi8vIEFsbCBjb21wb25lbnRzIG9mIGlucHV0IGFuZCBvdXRwdXQgYXJlIGV4cGVjdGVkIHRvIGJlIGluIHRoZSBbMCwxXSByYW5nZS5cbnZlYzMgY29udmVydFJHQjJIU1YodmVjMyByZ2IpXG57XG5cdC8vIEh1ZSBjYWxjdWxhdGlvbiBoYXMgMyBjYXNlcywgZGVwZW5kaW5nIG9uIHdoaWNoIFJHQiBjb21wb25lbnQgaXMgbGFyZ2VzdCwgYW5kIG9uZSBvZiB0aG9zZSBjYXNlcyBpbnZvbHZlcyBhICJtb2QiXG5cdC8vIG9wZXJhdGlvbi4gSW4gb3JkZXIgdG8gYXZvaWQgdGhhdCAibW9kIiB3ZSBzcGxpdCB0aGUgTT09UiBjYXNlIGluIHR3bzogb25lIGZvciBHPEIgYW5kIG9uZSBmb3IgQj5HLiBUaGUgQj5HIGNhc2Vcblx0Ly8gd2lsbCBiZSBjYWxjdWxhdGVkIGluIHRoZSBuZWdhdGl2ZSBhbmQgZmVkIHRocm91Z2ggYWJzKCkgaW4gdGhlIGh1ZSBjYWxjdWxhdGlvbiBhdCB0aGUgZW5kLlxuXHQvLyBTZWUgYWxzbzogaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvSFNMX2FuZF9IU1YjSHVlX2FuZF9jaHJvbWFcblx0Y29uc3QgdmVjNCBodWVPZmZzZXRzID0gdmVjNCgwLjAsIC0xLjAgLyAzLjAsIDIuMCAvIDMuMCwgLTEuMCk7XG5cblx0Ly8gdGVtcDEueHkgPSBzb3J0IEIgJiBHIChsYXJnZXN0IGZpcnN0KVxuXHQvLyB0ZW1wMS56ID0gdGhlIGh1ZSBvZmZzZXQgd2VcJ2xsIHVzZSBpZiBpdCB0dXJucyBvdXQgdGhhdCBSIGlzIHRoZSBsYXJnZXN0IGNvbXBvbmVudCAoTT09Uilcblx0Ly8gdGVtcDEudyA9IHRoZSBodWUgb2Zmc2V0IHdlXCdsbCB1c2UgaWYgaXQgdHVybnMgb3V0IHRoYXQgUiBpcyBub3QgdGhlIGxhcmdlc3QgY29tcG9uZW50IChNPT1HIG9yIE09PUIpXG5cdHZlYzQgdGVtcDEgPSByZ2IuYiA+IHJnYi5nID8gdmVjNChyZ2IuYmcsIGh1ZU9mZnNldHMud3opIDogdmVjNChyZ2IuZ2IsIGh1ZU9mZnNldHMueHkpO1xuXG5cdC8vIHRlbXAyLnggPSB0aGUgbGFyZ2VzdCBjb21wb25lbnQgb2YgUkdCICgiTSIgLyAiTWF4Iilcblx0Ly8gdGVtcDIueXcgPSB0aGUgc21hbGxlciBjb21wb25lbnRzIG9mIFJHQiwgb3JkZXJlZCBmb3IgdGhlIGh1ZSBjYWxjdWxhdGlvbiAobm90IG5lY2Vzc2FyaWx5IHNvcnRlZCBieSBtYWduaXR1ZGUhKVxuXHQvLyB0ZW1wMi56ID0gdGhlIGh1ZSBvZmZzZXQgd2VcJ2xsIHVzZSBpbiB0aGUgaHVlIGNhbGN1bGF0aW9uXG5cdHZlYzQgdGVtcDIgPSByZ2IuciA+IHRlbXAxLnggPyB2ZWM0KHJnYi5yLCB0ZW1wMS55engpIDogdmVjNCh0ZW1wMS54eXcsIHJnYi5yKTtcblxuXHQvLyBtID0gdGhlIHNtYWxsZXN0IGNvbXBvbmVudCBvZiBSR0IgKCJtaW4iKVxuXHRmbG9hdCBtID0gbWluKHRlbXAyLnksIHRlbXAyLncpO1xuXG5cdC8vIENocm9tYSA9IE0gLSBtXG5cdGZsb2F0IEMgPSB0ZW1wMi54IC0gbTtcblxuXHQvLyBWYWx1ZSA9IE1cblx0ZmxvYXQgViA9IHRlbXAyLng7XG5cblx0cmV0dXJuIHZlYzMoXG5cdFx0YWJzKHRlbXAyLnogKyAodGVtcDIudyAtIHRlbXAyLnkpIC8gKDYuMCAqIEMgKyBlcHNpbG9uKSksIC8vIEh1ZVxuXHRcdEMgLyAodGVtcDIueCArIGVwc2lsb24pLCAvLyBTYXR1cmF0aW9uXG5cdFx0Vik7IC8vIFZhbHVlXG59XG5cbnZlYzMgY29udmVydEh1ZTJSR0IoZmxvYXQgaHVlKVxue1xuXHRmbG9hdCByID0gYWJzKGh1ZSAqIDYuMCAtIDMuMCkgLSAxLjA7XG5cdGZsb2F0IGcgPSAyLjAgLSBhYnMoaHVlICogNi4wIC0gMi4wKTtcblx0ZmxvYXQgYiA9IDIuMCAtIGFicyhodWUgKiA2LjAgLSA0LjApO1xuXHRyZXR1cm4gY2xhbXAodmVjMyhyLCBnLCBiKSwgMC4wLCAxLjApO1xufVxuXG52ZWMzIGNvbnZlcnRIU1YyUkdCKHZlYzMgaHN2KVxue1xuXHR2ZWMzIHJnYiA9IGNvbnZlcnRIdWUyUkdCKGhzdi54KTtcblx0ZmxvYXQgYyA9IGhzdi56ICogaHN2Lnk7XG5cdHJldHVybiByZ2IgKiBjICsgaHN2LnogLSBjO1xufVxuXG52ZWMzIGRlY2ltYWxUb1JHQihoaWdocCBmbG9hdCBkZWNpbWFsQ29sb3IpIHtcblx0aGlnaHAgZmxvYXQgYmx1ZSA9IG1vZChkZWNpbWFsQ29sb3IsIDI1Ni4wKSAvIDI1NS4wO1xuXHRoaWdocCBmbG9hdCBncmVlbiA9IG1vZChmbG9vcihkZWNpbWFsQ29sb3IgLyAyNTYuMCksIDI1Ni4wKSAvIDI1NS4wO1xuXHRoaWdocCBmbG9hdCByZWQgPSBtb2QoZmxvb3IoZGVjaW1hbENvbG9yIC8gNjU1MzYuMCksIDI1Ni4wKSAvIDI1NS4wO1xuXG5cdHJldHVybiB2ZWMzKHJlZCwgZ3JlZW4sIGJsdWUpO1xufVxuI2VuZGlmIC8vICFkZWZpbmVkKERSQVdfTU9ERV9zaWxob3VldHRlKSAmJiAoZGVmaW5lZChFTkFCTEVfY29sb3IpIHx8IGRlZmluZWQoRU5BQkxFX3NhdHVyYXRpb24pIHx8IGRlZmluZWQoRU5BQkxFX3RpbnRDb2xvcikpXG5cbmNvbnN0IHZlYzIga0NlbnRlciA9IHZlYzIoMC41LCAwLjUpO1xuXG52b2lkIG1haW4oKVxue1xuXHQjaWYgIShkZWZpbmVkKERSQVdfTU9ERV9saW5lKSB8fCBkZWZpbmVkKERSQVdfTU9ERV9iYWNrZ3JvdW5kKSlcblx0dmVjMiB0ZXhjb29yZDAgPSB2X3RleENvb3JkO1xuXG5cdCNpZmRlZiBFTkFCTEVfbW9zYWljXG5cdHRleGNvb3JkMCA9IGZyYWN0KHVfbW9zYWljICogdGV4Y29vcmQwKTtcblx0I2VuZGlmIC8vIEVOQUJMRV9tb3NhaWNcblxuXHQjaWZkZWYgRU5BQkxFX3BpeGVsYXRlXG5cdHtcblx0XHQvLyBUT0RPOiBjbGVhbiB1cCAicGl4ZWwiIGVkZ2VzXG5cdFx0dmVjMiBwaXhlbFRleGVsU2l6ZSA9IHVfc2tpblNpemUgLyB1X3BpeGVsYXRlO1xuXHRcdHRleGNvb3JkMCA9IChmbG9vcih0ZXhjb29yZDAgKiBwaXhlbFRleGVsU2l6ZSkgKyBrQ2VudGVyKSAvIHBpeGVsVGV4ZWxTaXplO1xuXHR9XG5cdCNlbmRpZiAvLyBFTkFCTEVfcGl4ZWxhdGVcblxuXHQjaWZkZWYgRU5BQkxFX3doaXJsXG5cdHtcblx0XHRjb25zdCBmbG9hdCBrUmFkaXVzID0gMC41O1xuXHRcdHZlYzIgb2Zmc2V0ID0gdGV4Y29vcmQwIC0ga0NlbnRlcjtcblx0XHRmbG9hdCBvZmZzZXRNYWduaXR1ZGUgPSBsZW5ndGgob2Zmc2V0KTtcblx0XHRmbG9hdCB3aGlybEZhY3RvciA9IG1heCgxLjAgLSAob2Zmc2V0TWFnbml0dWRlIC8ga1JhZGl1cyksIDAuMCk7XG5cdFx0ZmxvYXQgd2hpcmxBY3R1YWwgPSB1X3doaXJsICogd2hpcmxGYWN0b3IgKiB3aGlybEZhY3Rvcjtcblx0XHRmbG9hdCBzaW5XaGlybCA9IHNpbih3aGlybEFjdHVhbCk7XG5cdFx0ZmxvYXQgY29zV2hpcmwgPSBjb3Mod2hpcmxBY3R1YWwpO1xuXHRcdG1hdDIgcm90YXRpb25NYXRyaXggPSBtYXQyKFxuXHRcdFx0Y29zV2hpcmwsIC1zaW5XaGlybCxcblx0XHRcdHNpbldoaXJsLCBjb3NXaGlybFxuXHRcdCk7XG5cblx0XHR0ZXhjb29yZDAgPSByb3RhdGlvbk1hdHJpeCAqIG9mZnNldCArIGtDZW50ZXI7XG5cdH1cblx0I2VuZGlmIC8vIEVOQUJMRV93aGlybFxuXG5cdCNpZmRlZiBFTkFCTEVfZmlzaGV5ZVxuXHR7XG5cdFx0dmVjMiB2ZWMgPSAodGV4Y29vcmQwIC0ga0NlbnRlcikgLyBrQ2VudGVyO1xuXHRcdGZsb2F0IHZlY0xlbmd0aCA9IGxlbmd0aCh2ZWMpO1xuXHRcdGZsb2F0IHIgPSBwb3cobWluKHZlY0xlbmd0aCwgMS4wKSwgdV9maXNoZXllKSAqIG1heCgxLjAsIHZlY0xlbmd0aCk7XG5cdFx0dmVjMiB1bml0ID0gdmVjIC8gdmVjTGVuZ3RoO1xuXG5cdFx0dGV4Y29vcmQwID0ga0NlbnRlciArIHIgKiB1bml0ICoga0NlbnRlcjtcblx0fVxuXHQjZW5kaWYgLy8gRU5BQkxFX2Zpc2hleWVcblxuXHRnbF9GcmFnQ29sb3IgPSB0ZXh0dXJlMkQodV9za2luLCB0ZXhjb29yZDApO1xuXG5cdCNpZiBkZWZpbmVkKEVOQUJMRV9jb2xvcikgfHwgZGVmaW5lZChFTkFCTEVfYnJpZ2h0bmVzcykgfHwgZGVmaW5lZChFTkFCTEVfc2F0dXJhdGlvbikgfHwgZGVmaW5lZChFTkFCTEVfdGludENvbG9yKVxuXHQvLyBEaXZpZGUgcHJlbXVsdGlwbGllZCBhbHBoYSB2YWx1ZXMgZm9yIHByb3BlciBjb2xvciBwcm9jZXNzaW5nXG5cdC8vIEFkZCBlcHNpbG9uIHRvIGF2b2lkIGRpdmlkaW5nIGJ5IDAgZm9yIGZ1bGx5IHRyYW5zcGFyZW50IHBpeGVsc1xuXHRnbF9GcmFnQ29sb3IucmdiID0gY2xhbXAoZ2xfRnJhZ0NvbG9yLnJnYiAvIChnbF9GcmFnQ29sb3IuYSArIGVwc2lsb24pLCAwLjAsIDEuMCk7XG5cblx0I2lmZGVmIEVOQUJMRV9jb2xvclxuXHR7XG5cdFx0dmVjMyBoc3YgPSBjb252ZXJ0UkdCMkhTVihnbF9GcmFnQ29sb3IueHl6KTtcblxuXHRcdC8vIHRoaXMgY29kZSBmb3JjZXMgZ3JheXNjYWxlIHZhbHVlcyB0byBiZSBzbGlnaHRseSBzYXR1cmF0ZWRcblx0XHQvLyBzbyB0aGF0IHNvbWUgc2xpZ2h0IGNoYW5nZSBvZiBodWUgd2lsbCBiZSB2aXNpYmxlXG5cdFx0XG5cdFx0Ly8gcG06IHRoaXMgdXN1YWxseSBlbmRzIHVwIGxvb2tpbmcgdWdseSBpbiBtZW51cyBhbmQgc3VjaCwgc28gZG9udCBkbyB0aGlzIGFjdHVhbGx5XG5cdFx0Ly8gXHQgICB0aGlzIG1pZ2h0IGJlIHJldmVydGVkIHRvIGRvIHRoaXMgYWdhaW4gdGhvdWdoIGlmIGl0IGlzIGdlbnVpbmVseSBiZXR0ZXJcblxuXHRcdC8vIGNvbnN0IGZsb2F0IG1pbkxpZ2h0bmVzcyA9IDAuMTEgLyAyLjA7XG5cdFx0Ly8gY29uc3QgZmxvYXQgbWluU2F0dXJhdGlvbiA9IDAuMDk7XG5cdFx0Ly8gaWYgKGhzdi56IDwgbWluTGlnaHRuZXNzKSBoc3YgPSB2ZWMzKDAuMCwgMS4wLCBtaW5MaWdodG5lc3MpO1xuXHRcdC8vIGVsc2UgaWYgKGhzdi55IDwgbWluU2F0dXJhdGlvbikgaHN2ID0gdmVjMygwLjAsIG1pblNhdHVyYXRpb24sIGhzdi56KTtcblxuXHRcdGhzdi54ID0gbW9kKGhzdi54ICsgdV9jb2xvciwgMS4wKTtcblx0XHRpZiAoaHN2LnggPCAwLjApIGhzdi54ICs9IDEuMDtcblxuXHRcdGdsX0ZyYWdDb2xvci5yZ2IgPSBjb252ZXJ0SFNWMlJHQihoc3YpO1xuXHR9XG5cdCNlbmRpZiAvLyBFTkFCTEVfY29sb3Jcblx0XG5cdCNpZmRlZiBFTkFCTEVfc2F0dXJhdGlvblxuXHR7XG5cdFx0dmVjMyBoc3YgPSBjb252ZXJ0UkdCMkhTVihnbF9GcmFnQ29sb3IueHl6KTtcblxuXHRcdGhzdi55ICo9IHVfc2F0dXJhdGlvbjtcblxuXHRcdGdsX0ZyYWdDb2xvci5yZ2IgPSBjb252ZXJ0SFNWMlJHQihoc3YpO1xuXHR9XG5cdCNlbmRpZiAvLyBFTkFCTEVfc2F0dXJhdGlvblxuXHRcblx0I2lmZGVmIEVOQUJMRV90aW50Q29sb3Jcblx0e1xuXHRcdHZlYzMgdGludFJnYiA9IGRlY2ltYWxUb1JHQih1X3RpbnRDb2xvcik7XG5cblx0XHRnbF9GcmFnQ29sb3IucmdiICo9IHRpbnRSZ2I7XG5cdH1cblx0I2VuZGlmIC8vIEVOQUJMRV90aW50Q29sb3JcblxuXHQjaWZkZWYgRU5BQkxFX2JyaWdodG5lc3Ncblx0Z2xfRnJhZ0NvbG9yLnJnYiA9IGNsYW1wKGdsX0ZyYWdDb2xvci5yZ2IgKyB2ZWMzKHVfYnJpZ2h0bmVzcyksIHZlYzMoMCksIHZlYzMoMSkpO1xuXHQjZW5kaWYgLy8gRU5BQkxFX2JyaWdodG5lc3NcblxuXHQvLyBSZS1tdWx0aXBseSBjb2xvciB2YWx1ZXNcblx0Z2xfRnJhZ0NvbG9yLnJnYiAqPSBnbF9GcmFnQ29sb3IuYSArIGVwc2lsb247XG5cblx0I2VuZGlmIC8vIGRlZmluZWQoRU5BQkxFX2NvbG9yKSB8fCBkZWZpbmVkKEVOQUJMRV9icmlnaHRuZXNzKSB8fCBkZWZpbmVkKEVOQUJMRV9zYXR1cmF0aW9uKSB8fCBkZWZpbmVkKEVOQUJMRV90aW50Q29sb3IpXG5cblx0I2lmZGVmIEVOQUJMRV9naG9zdFxuXHRnbF9GcmFnQ29sb3IgKj0gdV9naG9zdDtcblx0I2VuZGlmIC8vIEVOQUJMRV9naG9zdFxuXHRcblx0I2lmZGVmIEVOQUJMRV9yZWRcblx0Z2xfRnJhZ0NvbG9yLnIgKj0gdV9yZWQ7XG5cdCNlbmRpZiAvLyBFTkFCTEVfcmVkXG5cdFxuXHQjaWZkZWYgRU5BQkxFX2dyZWVuXG5cdGdsX0ZyYWdDb2xvci5nICo9IHVfZ3JlZW47XG5cdCNlbmRpZiAvLyBFTkFCTEVfZ3JlZW5cblx0XG5cdCNpZmRlZiBFTkFCTEVfYmx1ZVxuXHRnbF9GcmFnQ29sb3IuYiAqPSB1X2JsdWU7XG5cdCNlbmRpZiAvLyBFTkFCTEVfYmx1ZVxuXHRcblx0I2lmZGVmIEVOQUJMRV9vcGFxdWVcblx0Z2xfRnJhZ0NvbG9yLmEgKj0gdV9vcGFxdWU7XG5cdCNlbmRpZiAvLyBFTkFCTEVfb3BhcXVlXG5cblx0I2lmZGVmIERSQVdfTU9ERV9zaWxob3VldHRlXG5cdC8vIERpc2NhcmQgZnVsbHkgdHJhbnNwYXJlbnQgcGl4ZWxzIGZvciBzdGVuY2lsIHRlc3Rcblx0aWYgKGdsX0ZyYWdDb2xvci5hID09IDAuMCkge1xuXHRcdGRpc2NhcmQ7XG5cdH1cblx0Ly8gc3dpdGNoIHRvIHVfc2lsaG91ZXR0ZUNvbG9yIG9ubHkgQUZURVIgdGhlIGFscGhhIHRlc3Rcblx0Z2xfRnJhZ0NvbG9yID0gdV9zaWxob3VldHRlQ29sb3I7XG5cdCNlbHNlIC8vIERSQVdfTU9ERV9zaWxob3VldHRlXG5cblx0I2lmZGVmIERSQVdfTU9ERV9jb2xvck1hc2tcblx0dmVjMyBtYXNrRGlzdGFuY2UgPSBhYnMoZ2xfRnJhZ0NvbG9yLnJnYiAtIHVfY29sb3JNYXNrKTtcblx0dmVjMyBjb2xvck1hc2tUb2xlcmFuY2UgPSB2ZWMzKHVfY29sb3JNYXNrVG9sZXJhbmNlLCB1X2NvbG9yTWFza1RvbGVyYW5jZSwgdV9jb2xvck1hc2tUb2xlcmFuY2UpO1xuXHRpZiAoYW55KGdyZWF0ZXJUaGFuKG1hc2tEaXN0YW5jZSwgY29sb3JNYXNrVG9sZXJhbmNlKSkpXG5cdHtcblx0XHRkaXNjYXJkO1xuXHR9XG5cdCNlbmRpZiAvLyBEUkFXX01PREVfY29sb3JNYXNrXG5cdCNlbmRpZiAvLyBEUkFXX01PREVfc2lsaG91ZXR0ZVxuXG5cdCNpZmRlZiBEUkFXX01PREVfc3RyYWlnaHRBbHBoYVxuXHQvLyBVbi1wcmVtdWx0aXBseSBhbHBoYS5cblx0Z2xfRnJhZ0NvbG9yLnJnYiAvPSBnbF9GcmFnQ29sb3IuYSArIGVwc2lsb247XG5cdCNlbmRpZlxuXG5cdCNlbmRpZiAvLyAhKGRlZmluZWQoRFJBV19NT0RFX2xpbmUpIHx8IGRlZmluZWQoRFJBV19NT0RFX2JhY2tncm91bmQpKVxuXG5cdCNpZmRlZiBEUkFXX01PREVfbGluZVxuXHQvLyBNYWFhYWFnaWMgYW50aWFsaWFzZWQtbGluZS13aXRoLXJvdW5kLWNhcHMgc2hhZGVyLlxuXG5cdC8vICJhbG9uZy10aGUtbGluZW5lc3MiLiBUaGlzIGluY3JlYXNlcyBwYXJhbGxlbCB0byB0aGUgbGluZS5cblx0Ly8gSXQgZ29lcyBmcm9tIG5lZ2F0aXZlIGJlZm9yZSB0aGUgc3RhcnQgcG9pbnQsIHRvIDAuNSB0aHJvdWdoIHRoZSBzdGFydCB0byB0aGUgZW5kLCB0aGVuIHJhbXBzIHVwIGFnYWluXG5cdC8vIHBhc3QgdGhlIGVuZCBwb2ludC5cblx0ZmxvYXQgZCA9ICgodl90ZXhDb29yZC54IC0gY2xhbXAodl90ZXhDb29yZC54LCAwLjAsIHZfbGluZUxlbmd0aCkpICogMC41KSArIDAuNTtcblxuXHQvLyBEaXN0YW5jZSBmcm9tICgwLjUsIDAuNSkgdG8gKGQsIHRoZSBwZXJwZW5kaWN1bGFyIGNvb3JkaW5hdGUpLiBXaGVuIHdlXCdyZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBsaW5lLFxuXHQvLyBkIHdpbGwgYmUgMC41LCBzbyB0aGUgZGlzdGFuY2Ugd2lsbCBiZSAwIGF0IHBvaW50cyBjbG9zZSB0byB0aGUgbGluZSBhbmQgd2lsbCBncm93IGF0IHBvaW50cyBmdXJ0aGVyIGZyb20gaXQuXG5cdC8vIEZvciB0aGUgImNhcHMiLCBkIHdpbGwgcmFtcCBkb3duL3VwLCBnaXZpbmcgdXMgcm91bmRpbmcuXG5cdC8vIFNlZSBodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PVBNbHRNZGkxV3pnIGZvciBhIHJvdWdoIG91dGxpbmUgb2YgdGhlIHRlY2huaXF1ZSB1c2VkIHRvIHJvdW5kIHRoZSBsaW5lcy5cblx0ZmxvYXQgbGluZSA9IGRpc3RhbmNlKHZlYzIoMC41KSwgdmVjMihkLCB2X3RleENvb3JkLnkpKSAqIDIuMDtcblx0Ly8gRXhwYW5kIG91dCB0aGUgbGluZSBieSBpdHMgdGhpY2tuZXNzLlxuXHRsaW5lIC09ICgodl9saW5lVGhpY2tuZXNzIC0gMS4wKSAqIDAuNSk7XG5cdC8vIEJlY2F1c2UgImRpc3RhbmNlIHRvIHRoZSBjZW50ZXIgb2YgdGhlIGxpbmUiIGRlY3JlYXNlcyB0aGUgY2xvc2VyIHdlIGdldCB0byB0aGUgbGluZSwgYnV0IHdlIHdhbnQgbW9yZSBvcGFjaXR5XG5cdC8vIHRoZSBjbG9zZXIgd2UgYXJlIHRvIHRoZSBsaW5lLCBpbnZlcnQgaXQuXG5cdGdsX0ZyYWdDb2xvciA9IHZfbGluZUNvbG9yICogY2xhbXAoMS4wIC0gbGluZSwgMC4wLCAxLjApO1xuXHQjZW5kaWYgLy8gRFJBV19NT0RFX2xpbmVcblxuXHQjaWZkZWYgRFJBV19NT0RFX2JhY2tncm91bmRcblx0Z2xfRnJhZ0NvbG9yID0gdV9iYWNrZ3JvdW5kQ29sb3I7XG5cdCNlbmRpZlxufVxuJ30sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9e3JnYlRvSHN2OihBLGUpPT57bGV0W3QsbixpXT1BLHI9MDt0Lz0yNTUsbi89MjU1LGkvPTI1NTtsZXQgbz0wO248aSYmKG89bixuPWksaT1vLHI9LTEpLHQ8biYmKG89dCx0PW4sbj1vLHI9LTIvNi1yKTtjb25zdCBzPXQtTWF0aC5taW4obixpKSxhPU1hdGguYWJzKHIrKG4taSkvKDYqcytOdW1iZXIuRVBTSUxPTikpLEI9cy8odCtOdW1iZXIuRVBTSUxPTiksYz10O3JldHVybiBlWzBdPWEsZVsxXT1CLGVbMl09YyxlfSxoc3ZUb1JnYjooQSxlKT0+e2xldFt0LG4saV09QTtpZigwPT09bilyZXR1cm4gZVswXT1lWzFdPWVbMl09MjU1KmkrLjUsZTt0JT0xO2NvbnN0IHI9Nip0fDAsbz02KnQtcixzPWkqKDEtbiksYT1pKigxLW4qbyksQj1pKigxLW4qKDEtbykpO2xldCBjPTAsZz0wLEU9MDtzd2l0Y2gocil7Y2FzZSAwOmM9aSxnPUIsRT1zO2JyZWFrO2Nhc2UgMTpjPWEsZz1pLEU9czticmVhaztjYXNlIDI6Yz1zLGc9aSxFPUI7YnJlYWs7Y2FzZSAzOmM9cyxnPWEsRT1pO2JyZWFrO2Nhc2UgNDpjPUIsZz1zLEU9aTticmVhaztjYXNlIDU6Yz1pLGc9cyxFPWF9cmV0dXJuIGVbMF09MjU1KmMrLjUsZVsxXT0yNTUqZysuNSxlWzJdPTI1NSpFKy41LGV9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxNyksaT10KDUwKSxyPXQoMjkpLG89dCgzOSkscz17Y29sb3I0ZjpbMCwwLDEsMV0sZGlhbWV0ZXI6MX07QS5leHBvcnRzPWNsYXNzIGV4dGVuZHMgcntjb25zdHJ1Y3RvcihBLGUpe3N1cGVyKEEsZSksdGhpcy5fc2l6ZT1udWxsLHRoaXMuX2ZyYW1lYnVmZmVyPW51bGwsdGhpcy5fc2lsaG91ZXR0ZURpcnR5PSExLHRoaXMuX3NpbGhvdWV0dGVQaXhlbHM9bnVsbCx0aGlzLl9zaWxob3VldHRlSW1hZ2VEYXRhPW51bGwsdGhpcy5fbGluZU9uQnVmZmVyRHJhd1JlZ2lvbklkPXtlbnRlcjooKT0+dGhpcy5fZW50ZXJEcmF3TGluZU9uQnVmZmVyKCksZXhpdDooKT0+dGhpcy5fZXhpdERyYXdMaW5lT25CdWZmZXIoKX0sdGhpcy5fdXNlUGVuQnVmZmVyRHJhd1JlZ2lvbklkPXtlbnRlcjooKT0+dGhpcy5fZW50ZXJVc2VQZW5CdWZmZXIoKSxleGl0OigpPT50aGlzLl9leGl0VXNlUGVuQnVmZmVyKCl9O2NvbnN0IHQ9dGhpcy5fcmVuZGVyZXIuZ2w7dGhpcy5yZW5kZXJRdWFsaXR5PTEsdGhpcy5fbmF0aXZlU2l6ZT1lLmdldE5hdGl2ZVNpemUoKTtpZih0aGlzLl9saW5lU2hhZGVyPXRoaXMuX3JlbmRlcmVyLl9zaGFkZXJNYW5hZ2VyLmdldFNoYWRlcihvLkRSQVdfTU9ERS5saW5lLDApLHRoaXMuX2RyYXdUZXh0dXJlU2hhZGVyPXRoaXMuX3JlbmRlcmVyLl9zaGFkZXJNYW5hZ2VyLmdldFNoYWRlcihvLkRSQVdfTU9ERS5kZWZhdWx0LDApLHRoaXMuX2RyYXdUZXh0dXJlUmVnaW9uSWQ9e2VudGVyOigpPT50aGlzLl9lbnRlckRyYXdUZXh0dXJlKCksZXhpdDooKT0+dGhpcy5fZXhpdERyYXdUZXh0dXJlKCl9LHRoaXMuYV9wb3NpdGlvbl9nbGJ1ZmZlcj10LmNyZWF0ZUJ1ZmZlcigpLHRoaXMuYV9wb3NpdGlvbl9sb2M9dC5nZXRBdHRyaWJMb2NhdGlvbih0aGlzLl9saW5lU2hhZGVyLnByb2dyYW0sImFfcG9zaXRpb24iKSx0aGlzLmFfbGluZUNvbG9yX2xvYz10LmdldEF0dHJpYkxvY2F0aW9uKHRoaXMuX2xpbmVTaGFkZXIucHJvZ3JhbSwiYV9saW5lQ29sb3IiKSx0aGlzLmFfbGluZVRoaWNrbmVzc0FuZExlbmd0aF9sb2M9dC5nZXRBdHRyaWJMb2NhdGlvbih0aGlzLl9saW5lU2hhZGVyLnByb2dyYW0sImFfbGluZVRoaWNrbmVzc0FuZExlbmd0aCIpLHRoaXMuYV9wZW5Qb2ludHNfbG9jPXQuZ2V0QXR0cmliTG9jYXRpb24odGhpcy5fbGluZVNoYWRlci5wcm9ncmFtLCJhX3BlblBvaW50cyIpLHRoaXMuYXR0cmlidXRlX2dsYnVmZmVyPXQuY3JlYXRlQnVmZmVyKCksdGhpcy5hdHRyaWJ1dGVfaW5kZXg9MCx0aGlzLmF0dHJpYnV0ZV9kYXRhPW5ldyBGbG9hdDMyQXJyYXkoMTYzODAwKSx0LmJpbmRCdWZmZXIodC5BUlJBWV9CVUZGRVIsdGhpcy5hdHRyaWJ1dGVfZ2xidWZmZXIpLHQuYnVmZmVyRGF0YSh0LkFSUkFZX0JVRkZFUiw0KnRoaXMuYXR0cmlidXRlX2RhdGEubGVuZ3RoLHQuU1RSRUFNX0RSQVcpLHQuZHJhd0FycmF5c0luc3RhbmNlZCl0aGlzLmluc3RhbmNlZFJlbmRlcmluZz0hMCx0aGlzLmdsRHJhd0FycmF5c0luc3RhbmNlZD10LmRyYXdBcnJheXNJbnN0YW5jZWQuYmluZCh0KSx0aGlzLmdsVmVydGV4QXR0cmliRGl2aXNvcj10LnZlcnRleEF0dHJpYkRpdmlzb3IuYmluZCh0KTtlbHNle2NvbnN0IEE9dC5nZXRFeHRlbnNpb24oIkFOR0xFX2luc3RhbmNlZF9hcnJheXMiKTtBPyh0aGlzLmluc3RhbmNlZFJlbmRlcmluZz0hMCx0aGlzLmdsRHJhd0FycmF5c0luc3RhbmNlZD1BLmRyYXdBcnJheXNJbnN0YW5jZWRBTkdMRS5iaW5kKEEpLHRoaXMuZ2xWZXJ0ZXhBdHRyaWJEaXZpc29yPUEudmVydGV4QXR0cmliRGl2aXNvckFOR0xFLmJpbmQoQSkpOnRoaXMuaW5zdGFuY2VkUmVuZGVyaW5nPSExfWlmKHRoaXMuaW5zdGFuY2VkUmVuZGVyaW5nKXQuYmluZEJ1ZmZlcih0LkFSUkFZX0JVRkZFUix0aGlzLmFfcG9zaXRpb25fZ2xidWZmZXIpLHQuYnVmZmVyRGF0YSh0LkFSUkFZX0JVRkZFUixuZXcgRmxvYXQzMkFycmF5KFsxLDAsMCwwLDEsMSwwLDFdKSx0LlNUQVRJQ19EUkFXKTtlbHNle2NvbnN0IEE9bmV3IEZsb2F0MzJBcnJheSgzMjc2MCk7Zm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKz0xMilBW2UrMF09MSxBW2UrMV09MCxBW2UrMl09MCxBW2UrM109MCxBW2UrNF09MSxBW2UrNV09MSxBW2UrNl09MSxBW2UrN109MSxBW2UrOF09MCxBW2UrOV09MCxBW2UrMTBdPTAsQVtlKzExXT0xO3QuYmluZEJ1ZmZlcih0LkFSUkFZX0JVRkZFUix0aGlzLmFfcG9zaXRpb25fZ2xidWZmZXIpLHQuYnVmZmVyRGF0YSh0LkFSUkFZX0JVRkZFUixBLHQuU1RBVElDX0RSQVcpfXRoaXMub25OYXRpdmVTaXplQ2hhbmdlZD10aGlzLm9uTmF0aXZlU2l6ZUNoYW5nZWQuYmluZCh0aGlzKSx0aGlzLl9yZW5kZXJlci5vbihpLkV2ZW50cy5OYXRpdmVTaXplQ2hhbmdlZCx0aGlzLm9uTmF0aXZlU2l6ZUNoYW5nZWQpLHRoaXMuX3NldENhbnZhc1NpemUoZS5nZXROYXRpdmVTaXplKCkpfWRpc3Bvc2UoKXt0aGlzLl9yZW5kZXJlci5yZW1vdmVMaXN0ZW5lcihpLkV2ZW50cy5OYXRpdmVTaXplQ2hhbmdlZCx0aGlzLm9uTmF0aXZlU2l6ZUNoYW5nZWQpLHRoaXMuX3JlbmRlcmVyLmdsLmRlbGV0ZVRleHR1cmUodGhpcy5fdGV4dHVyZSksdGhpcy5fdGV4dHVyZT1udWxsLHN1cGVyLmRpc3Bvc2UoKX1nZXQgc2l6ZSgpe3JldHVybiB0aGlzLl9uYXRpdmVTaXplfXVzZU5lYXJlc3QoQSl7cmV0dXJuIE1hdGgubWF4KEFbMF0sQVsxXSk+PTEwMH1nZXRUZXh0dXJlKEEsZSl7cmV0dXJuIHRoaXMuX3RleHR1cmV9Y2xlYXIoKXt0aGlzLl9yZW5kZXJlci5lbnRlckRyYXdSZWdpb24odGhpcy5fdXNlUGVuQnVmZmVyRHJhd1JlZ2lvbklkKTtjb25zdCBBPXRoaXMuX3JlbmRlcmVyLmdsO0EuY2xlYXJDb2xvcigwLDAsMCwwKSxBLmNsZWFyKEEuQ09MT1JfQlVGRkVSX0JJVCksdGhpcy5fc2lsaG91ZXR0ZURpcnR5PSEwfWRyYXdQb2ludChBLGUsdCl7dGhpcy5kcmF3TGluZShBLGUsdCxlLHQpfWRyYXdMaW5lKEEsZSx0LG4saSl7Y29uc3Qgcj1BLmRpYW1ldGVyfHxzLmRpYW1ldGVyLG89MT09PXJ8fDM9PT1yPy41OjA7dGhpcy5fZHJhd0xpbmVPbkJ1ZmZlcihBLGUrbyx0K28sbitvLGkrbyksdGhpcy5fc2lsaG91ZXR0ZURpcnR5PSEwfV9lbnRlckRyYXdMaW5lT25CdWZmZXIoKXtjb25zdCBBPXRoaXMuX3JlbmRlcmVyLmdsO24uYmluZEZyYW1lYnVmZmVySW5mbyhBLHRoaXMuX2ZyYW1lYnVmZmVyKSxBLnZpZXdwb3J0KDAsMCx0aGlzLl9zaXplWzBdLHRoaXMuX3NpemVbMV0pO2NvbnN0IGU9dGhpcy5fbGluZVNoYWRlcjtBLnVzZVByb2dyYW0oZS5wcm9ncmFtKTtjb25zdCB0PXt1X3NraW46dGhpcy5fdGV4dHVyZSx1X3N0YWdlU2l6ZTp0aGlzLl9zaXplfTtuLnNldFVuaWZvcm1zKGUsdCksQS5iaW5kQnVmZmVyKEEuQVJSQVlfQlVGRkVSLHRoaXMuYV9wb3NpdGlvbl9nbGJ1ZmZlciksQS5lbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSh0aGlzLmFfcG9zaXRpb25fbG9jKSxBLnZlcnRleEF0dHJpYlBvaW50ZXIodGhpcy5hX3Bvc2l0aW9uX2xvYywyLEEuRkxPQVQsITEsOCwwKSx0aGlzLmF0dHJpYnV0ZV9pbmRleD0wfV9leGl0RHJhd0xpbmVPbkJ1ZmZlcigpe3RoaXMuYXR0cmlidXRlX2luZGV4JiZ0aGlzLl9mbHVzaExpbmVzKCk7Y29uc3QgQT10aGlzLl9yZW5kZXJlci5nbDtuLmJpbmRGcmFtZWJ1ZmZlckluZm8oQSxudWxsKX1fZW50ZXJVc2VQZW5CdWZmZXIoKXtuLmJpbmRGcmFtZWJ1ZmZlckluZm8odGhpcy5fcmVuZGVyZXIuZ2wsdGhpcy5fZnJhbWVidWZmZXIpfV9leGl0VXNlUGVuQnVmZmVyKCl7bi5iaW5kRnJhbWVidWZmZXJJbmZvKHRoaXMuX3JlbmRlcmVyLmdsLG51bGwpfV9lbnRlckRyYXdUZXh0dXJlKCl7dGhpcy5fZW50ZXJVc2VQZW5CdWZmZXIoKTtjb25zdCBBPXRoaXMuX3JlbmRlcmVyLmdsO0Eudmlld3BvcnQoMCwwLHRoaXMuX3NpemVbMF0sdGhpcy5fc2l6ZVsxXSksQS51c2VQcm9ncmFtKHRoaXMuX2RyYXdUZXh0dXJlU2hhZGVyLnByb2dyYW0pLG4uc2V0QnVmZmVyc0FuZEF0dHJpYnV0ZXMoQSx0aGlzLl9kcmF3VGV4dHVyZVNoYWRlcix0aGlzLl9yZW5kZXJlci5fYnVmZmVySW5mbyl9X2V4aXREcmF3VGV4dHVyZSgpe3RoaXMuX2V4aXRVc2VQZW5CdWZmZXIoKX1fZHJhd1BlblRleHR1cmUoQSl7dGhpcy5fcmVuZGVyZXIuZW50ZXJEcmF3UmVnaW9uKHRoaXMuX2RyYXdUZXh0dXJlUmVnaW9uSWQpO2NvbnN0IGU9dGhpcy5fcmVuZGVyZXIuZ2wsdD10aGlzLl9zaXplWzBdLGk9dGhpcy5fc2l6ZVsxXSxyPXt1X3NraW46QSx1X3Byb2plY3Rpb25NYXRyaXg6bi5tNC5vcnRobyh0LzIsdC8tMixpLy0yLGkvMiwtMSwxLG4ubTQuaWRlbnRpdHkoKSksdV9tb2RlbE1hdHJpeDpuLm00LnNjYWxpbmcobi52My5jcmVhdGUodCxpLDApLG4ubTQuaWRlbnRpdHkoKSl9O24uc2V0VGV4dHVyZVBhcmFtZXRlcnMoZSxBLHttaW5NYWc6ZS5ORUFSRVNUfSksbi5zZXRVbmlmb3Jtcyh0aGlzLl9kcmF3VGV4dHVyZVNoYWRlcixyKSxuLmRyYXdCdWZmZXJJbmZvKGUsdGhpcy5fcmVuZGVyZXIuX2J1ZmZlckluZm8sZS5UUklBTkdMRVMpfV9kcmF3TGluZU9uQnVmZmVyKEEsZSx0LG4saSl7dGhpcy5fcmVuZGVyZXIuZW50ZXJEcmF3UmVnaW9uKHRoaXMuX2xpbmVPbkJ1ZmZlckRyYXdSZWdpb25JZCk7Y29uc3Qgcj10aGlzLmluc3RhbmNlZFJlbmRlcmluZz8xOjY7dGhpcy5hdHRyaWJ1dGVfaW5kZXgrMTAqcj4xNjM4MDAmJnRoaXMuX2ZsdXNoTGluZXMoKTtjb25zdCBvPUEuY29sb3I0Znx8cy5jb2xvcjRmO2UqPXRoaXMucmVuZGVyUXVhbGl0eSx0Kj10aGlzLnJlbmRlclF1YWxpdHk7Y29uc3QgYT0obio9dGhpcy5yZW5kZXJRdWFsaXR5KS1lLEI9KGkqPXRoaXMucmVuZGVyUXVhbGl0eSktdCxjPU1hdGguc3FydChhKmErQipCKSxnPShBLmRpYW1ldGVyfHxzLmRpYW1ldGVyKSp0aGlzLnJlbmRlclF1YWxpdHk7Zm9yKGxldCBBPTA7QTxyO0ErKyl0aGlzLmF0dHJpYnV0ZV9kYXRhW3RoaXMuYXR0cmlidXRlX2luZGV4XT1vWzBdKm9bM10sdGhpcy5hdHRyaWJ1dGVfaW5kZXgrKyx0aGlzLmF0dHJpYnV0ZV9kYXRhW3RoaXMuYXR0cmlidXRlX2luZGV4XT1vWzFdKm9bM10sdGhpcy5hdHRyaWJ1dGVfaW5kZXgrKyx0aGlzLmF0dHJpYnV0ZV9kYXRhW3RoaXMuYXR0cmlidXRlX2luZGV4XT1vWzJdKm9bM10sdGhpcy5hdHRyaWJ1dGVfaW5kZXgrKyx0aGlzLmF0dHJpYnV0ZV9kYXRhW3RoaXMuYXR0cmlidXRlX2luZGV4XT1vWzNdLHRoaXMuYXR0cmlidXRlX2luZGV4KyssdGhpcy5hdHRyaWJ1dGVfZGF0YVt0aGlzLmF0dHJpYnV0ZV9pbmRleF09Zyx0aGlzLmF0dHJpYnV0ZV9pbmRleCsrLHRoaXMuYXR0cmlidXRlX2RhdGFbdGhpcy5hdHRyaWJ1dGVfaW5kZXhdPWMsdGhpcy5hdHRyaWJ1dGVfaW5kZXgrKyx0aGlzLmF0dHJpYnV0ZV9kYXRhW3RoaXMuYXR0cmlidXRlX2luZGV4XT1lLHRoaXMuYXR0cmlidXRlX2luZGV4KyssdGhpcy5hdHRyaWJ1dGVfZGF0YVt0aGlzLmF0dHJpYnV0ZV9pbmRleF09LXQsdGhpcy5hdHRyaWJ1dGVfaW5kZXgrKyx0aGlzLmF0dHJpYnV0ZV9kYXRhW3RoaXMuYXR0cmlidXRlX2luZGV4XT1hLHRoaXMuYXR0cmlidXRlX2luZGV4KyssdGhpcy5hdHRyaWJ1dGVfZGF0YVt0aGlzLmF0dHJpYnV0ZV9pbmRleF09LUIsdGhpcy5hdHRyaWJ1dGVfaW5kZXgrK31fZmx1c2hMaW5lcygpe2NvbnN0IEE9dGhpcy5fcmVuZGVyZXIuZ2w7QS5iaW5kQnVmZmVyKEEuQVJSQVlfQlVGRkVSLHRoaXMuYXR0cmlidXRlX2dsYnVmZmVyKSxBLmJ1ZmZlclN1YkRhdGEoQS5BUlJBWV9CVUZGRVIsMCxuZXcgRmxvYXQzMkFycmF5KHRoaXMuYXR0cmlidXRlX2RhdGEuYnVmZmVyLDAsdGhpcy5hdHRyaWJ1dGVfaW5kZXgpKSxBLmVuYWJsZVZlcnRleEF0dHJpYkFycmF5KHRoaXMuYV9saW5lQ29sb3JfbG9jKSxBLnZlcnRleEF0dHJpYlBvaW50ZXIodGhpcy5hX2xpbmVDb2xvcl9sb2MsNCxBLkZMT0FULCExLDQwLDApLEEuZW5hYmxlVmVydGV4QXR0cmliQXJyYXkodGhpcy5hX2xpbmVUaGlja25lc3NBbmRMZW5ndGhfbG9jKSxBLnZlcnRleEF0dHJpYlBvaW50ZXIodGhpcy5hX2xpbmVUaGlja25lc3NBbmRMZW5ndGhfbG9jLDIsQS5GTE9BVCwhMSw0MCwxNiksQS5lbmFibGVWZXJ0ZXhBdHRyaWJBcnJheSh0aGlzLmFfcGVuUG9pbnRzX2xvYyksQS52ZXJ0ZXhBdHRyaWJQb2ludGVyKHRoaXMuYV9wZW5Qb2ludHNfbG9jLDQsQS5GTE9BVCwhMSw0MCwyNCksdGhpcy5pbnN0YW5jZWRSZW5kZXJpbmc/KHRoaXMuZ2xWZXJ0ZXhBdHRyaWJEaXZpc29yKHRoaXMuYV9saW5lQ29sb3JfbG9jLDEpLHRoaXMuZ2xWZXJ0ZXhBdHRyaWJEaXZpc29yKHRoaXMuYV9saW5lVGhpY2tuZXNzQW5kTGVuZ3RoX2xvYywxKSx0aGlzLmdsVmVydGV4QXR0cmliRGl2aXNvcih0aGlzLmFfcGVuUG9pbnRzX2xvYywxKSx0aGlzLmdsRHJhd0FycmF5c0luc3RhbmNlZChBLlRSSUFOR0xFX1NUUklQLDAsNCx0aGlzLmF0dHJpYnV0ZV9pbmRleC8xMCksdGhpcy5nbFZlcnRleEF0dHJpYkRpdmlzb3IodGhpcy5hX2xpbmVDb2xvcl9sb2MsMCksdGhpcy5nbFZlcnRleEF0dHJpYkRpdmlzb3IodGhpcy5hX2xpbmVUaGlja25lc3NBbmRMZW5ndGhfbG9jLDApLHRoaXMuZ2xWZXJ0ZXhBdHRyaWJEaXZpc29yKHRoaXMuYV9wZW5Qb2ludHNfbG9jLDApKTpBLmRyYXdBcnJheXMoQS5UUklBTkdMRVMsMCx0aGlzLmF0dHJpYnV0ZV9pbmRleC8xMCksdGhpcy5hdHRyaWJ1dGVfaW5kZXg9MCx0aGlzLl9zaWxob3VldHRlRGlydHk9ITB9b25OYXRpdmVTaXplQ2hhbmdlZChBKXt0aGlzLl9uYXRpdmVTaXplPUEubmV3U2l6ZSx0aGlzLl9zZXRDYW52YXNTaXplKFtBLm5ld1NpemVbMF0qdGhpcy5yZW5kZXJRdWFsaXR5LEEubmV3U2l6ZVsxXSp0aGlzLnJlbmRlclF1YWxpdHldKSx0aGlzLmVtaXRXYXNBbHRlcmVkKCl9X3NldENhbnZhc1NpemUoQSl7Y29uc3RbZSx0XT1BO2lmKHRoaXMuX3NpemUmJnRoaXMuX3NpemVbMF09PT1lJiZ0aGlzLl9zaXplWzFdPT09dClyZXR1cm47dGhpcy5fc2l6ZT1BLHRoaXMuX3JvdGF0aW9uQ2VudGVyWzBdPXRoaXMuX25hdGl2ZVNpemVbMF0vMix0aGlzLl9yb3RhdGlvbkNlbnRlclsxXT10aGlzLl9uYXRpdmVTaXplWzFdLzI7Y29uc3QgaT10aGlzLl9yZW5kZXJlci5nbCxyPXRoaXMuX3RleHR1cmU7dGhpcy5fdGV4dHVyZT1uLmNyZWF0ZVRleHR1cmUoaSx7bWFnOmkuTkVBUkVTVCxtaW46aS5ORUFSRVNULHdyYXA6aS5DTEFNUF9UT19FREdFLHdpZHRoOmUsaGVpZ2h0OnR9KTtjb25zdCBvPVt7Zm9ybWF0OmkuUkdCQSxhdHRhY2htZW50OnRoaXMuX3RleHR1cmV9XTt0aGlzLl9mcmFtZWJ1ZmZlcix0aGlzLl9mcmFtZWJ1ZmZlcj1uLmNyZWF0ZUZyYW1lYnVmZmVySW5mbyhpLG8sZSx0KSxpLmNsZWFyQ29sb3IoMCwwLDAsMCksaS5jbGVhcihpLkNPTE9SX0JVRkZFUl9CSVQpLHImJnRoaXMuX2RyYXdQZW5UZXh0dXJlKHIpLHRoaXMuX3NpbGhvdWV0dGVQaXhlbHM9bmV3IFVpbnQ4QXJyYXkoTWF0aC5mbG9vcihlKnQqNCkpLHRoaXMuX3NpbGhvdWV0dGVJbWFnZURhdGE9bmV3IEltYWdlRGF0YShlLHQpLHRoaXMuX3NpbGhvdWV0dGVEaXJ0eT0hMH1zZXRSZW5kZXJRdWFsaXR5KEEpe3RoaXMucmVuZGVyUXVhbGl0eSE9PUEmJih0aGlzLnJlbmRlclF1YWxpdHk9QSx0aGlzLl9zZXRDYW52YXNTaXplKFtNYXRoLnJvdW5kKHRoaXMuX25hdGl2ZVNpemVbMF0qQSksTWF0aC5yb3VuZCh0aGlzLl9uYXRpdmVTaXplWzFdKkEpXSkpfXVwZGF0ZVNpbGhvdWV0dGUoKXtpZih0aGlzLl9zaWxob3VldHRlRGlydHkpe3RoaXMuX3JlbmRlcmVyLmVudGVyRHJhd1JlZ2lvbih0aGlzLl91c2VQZW5CdWZmZXJEcmF3UmVnaW9uSWQpO2NvbnN0IEE9dGhpcy5fcmVuZGVyZXIuZ2w7QS5yZWFkUGl4ZWxzKDAsMCx0aGlzLl9zaXplWzBdLHRoaXMuX3NpemVbMV0sQS5SR0JBLEEuVU5TSUdORURfQllURSx0aGlzLl9zaWxob3VldHRlUGl4ZWxzKSx0aGlzLl9zaWxob3VldHRlSW1hZ2VEYXRhLmRhdGEuc2V0KHRoaXMuX3NpbGhvdWV0dGVQaXhlbHMpLHRoaXMuX3NpbGhvdWV0dGUudXBkYXRlKHRoaXMuX3NpbGhvdWV0dGVJbWFnZURhdGEsITApLHRoaXMuX3NpbGhvdWV0dGVEaXJ0eT0hMX19dXBkYXRlUGVuUG9pbnRPZmZzZXQoQSxlLHQsbil7Zm9yKGxldCBpPTA7aTwyNDtpKz00KXRoaXMuYV9jYW1lcmFPZmZzZXRbaSswXT1BLHRoaXMuYV9jYW1lcmFPZmZzZXRbaSsxXT1lLHRoaXMuYV9jYW1lcmFPZmZzZXRbaSsyXT10LHRoaXMuYV9jYW1lcmFPZmZzZXRbaSszXT1uO3RoaXMuX3NpbGhvdWV0dGVEaXJ0eT0hMH19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDE3KSxpPXQoMjkpLHtsb2FkU3ZnU3RyaW5nOnIsc2VyaWFsaXplU3ZnVG9TdHJpbmc6b309dCgzMSkscz10KDM5KTtBLmV4cG9ydHM9Y2xhc3MgZXh0ZW5kcyBpe2NvbnN0cnVjdG9yKEEsZSl7c3VwZXIoQSxlKSx0aGlzLl9zdmdJbWFnZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKSx0aGlzLl9zdmdJbWFnZUxvYWRlZD0hMSx0aGlzLl9zaXplPVswLDBdLHRoaXMuX3RyYW5zZm9ybT1bMCwwXSx0aGlzLl9jYW52YXM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIiksdGhpcy5fY29udGV4dD10aGlzLl9jYW52YXMuZ2V0Q29udGV4dCgiMmQiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KSx0aGlzLl9zY2FsZWRNSVBzPVtdLHRoaXMuX2xhcmdlc3RNSVBTY2FsZT0wLHRoaXMuX21heFRleHR1cmVTY2FsZT0xfWRpc3Bvc2UoKXt0aGlzLnJlc2V0TUlQcygpLHN1cGVyLmRpc3Bvc2UoKX1nZXQgc2l6ZSgpe3JldHVyblt0aGlzLl9zaXplWzBdLHRoaXMuX3NpemVbMV1dfXVzZU5lYXJlc3QoQSxlKXtyZXR1cm4gMD09KGUuZW5hYmxlZEVmZmVjdHMmKHMuRUZGRUNUX0lORk8uZmlzaGV5ZS5tYXNrfHMuRUZGRUNUX0lORk8ud2hpcmwubWFza3xzLkVGRkVDVF9JTkZPLnBpeGVsYXRlLm1hc2t8cy5FRkZFQ1RfSU5GTy5tb3NhaWMubWFzaykpJiYoZS5fZGlyZWN0aW9uJTkwPT0wJiYoTWF0aC5hYnMoQVswXSk+OTkmJk1hdGguYWJzKEFbMF0pPDEwMSYmTWF0aC5hYnMoQVsxXSk+OTkmJk1hdGguYWJzKEFbMV0pPDEwMSkpfWNyZWF0ZU1JUChBLGUpe2NvbnN0IHQ9dGhpcy5fbGFyZ2VzdE1JUFNjYWxlPEE7dHx8dGhpcy5fc2lsaG91ZXR0ZS51bmxhenkoKSxlfHwoZT1bMCwwXSksZVswXXx8KGU9WzAsMF0pLGVbMV18fChlPVswLDBdKTtjb25zdCBpPTEwMCplWzBdLzIwMCsxLHI9MTAwKmVbMV0vMjAwKzEsW28sc109dGhpcy5fc2l6ZTtpZih0aGlzLl9jYW52YXMud2lkdGg9bypBKmksdGhpcy5fY2FudmFzLmhlaWdodD1zKkEqcix0aGlzLl9jYW52YXMud2lkdGg8PTB8fHRoaXMuX2NhbnZhcy5oZWlnaHQ8PTB8fHRoaXMuX3N2Z0ltYWdlLm5hdHVyYWxXaWR0aDw9MHx8dGhpcy5fc3ZnSW1hZ2UubmF0dXJhbEhlaWdodDw9MClyZXR1cm4gc3VwZXIuZ2V0VGV4dHVyZSgpO3RoaXMuX2NvbnRleHQuY2xlYXJSZWN0KDAsMCx0aGlzLl9jYW52YXMud2lkdGgsdGhpcy5fY2FudmFzLmhlaWdodCksdGhpcy5fY29udGV4dC5zZXRUcmFuc2Zvcm0oQSxlWzBdLGVbMV0sQSwwLDApLHRoaXMuX2NvbnRleHQuZHJhd0ltYWdlKHRoaXMuX3N2Z0ltYWdlLDAsMCk7Y29uc3QgYT10aGlzLl9jYW52YXMsQj17YXV0bzohMSx3cmFwOnRoaXMuX3JlbmRlcmVyLmdsLkNMQU1QX1RPX0VER0Usc3JjOmEscHJlbXVsdGlwbHlBbHBoYTohMH0sYz1uLmNyZWF0ZVRleHR1cmUodGhpcy5fcmVuZGVyZXIuZ2wsQik7cmV0dXJuIHQmJih0aGlzLl9zaWxob3VldHRlLnVwZGF0ZShhKSx0aGlzLl9sYXJnZXN0TUlQU2NhbGU9QSksY311cGRhdGVTaWxob3VldHRlKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOlsxMDAsMTAwXTt0aGlzLmdldFRleHR1cmUoQSksdGhpcy5fc2lsaG91ZXR0ZS51bmxhenkoKX1nZXRUZXh0dXJlKEEsZSl7ZXx8KGU9WzAsMF0pLCJudW1iZXIiIT10eXBlb2YgZVswXSYmKGU9WzAsMF0pLCJudW1iZXIiIT10eXBlb2YgZVsxXSYmKGU9WzAsMF0pO2NvbnN0IHQ9QT9NYXRoLm1heChNYXRoLmFicyhBWzBdKSxNYXRoLmFicyhBWzFdKSk6MTAwLG49TWF0aC5taW4odC8xMDAsdGhpcy5fbWF4VGV4dHVyZVNjYWxlKSxpPU1hdGgubWF4KE1hdGguY2VpbChNYXRoLmxvZzIobikpKzgsMCkscj1NYXRoLnBvdygyLGktOCk7cmV0dXJuIHRoaXMuX3N2Z0ltYWdlTG9hZGVkJiYodGhpcy5fc2NhbGVkTUlQc1tpXSYmdGhpcy5pc1RyYW5zZm9ybUVxdWFsKHRoaXMuX3RyYW5zZm9ybSxlKXx8KHRoaXMuX3NjYWxlZE1JUHNbaV09dGhpcy5jcmVhdGVNSVAocixlfHxbMCwwXSksdGhpcy5fdHJhbnNmb3JtPWUpKSx0aGlzLl9zY2FsZWRNSVBzW2ldfHxzdXBlci5nZXRUZXh0dXJlKCl9aXNUcmFuc2Zvcm1FcXVhbChBLGUpe2lmKCFBKXJldHVybiExO2lmKCFlKXJldHVybiExO2xldCB0PTA7cmV0dXJuIEFbMF09PT1lWzBdJiZ0KyssQVsxXT09PWVbMV0mJnQrKywyPT09dH1yZXNldE1JUHMoKXt0aGlzLl9zY2FsZWRNSVBzLmZvckVhY2goQT0+dGhpcy5fcmVuZGVyZXIuZ2wuZGVsZXRlVGV4dHVyZShBKSksdGhpcy5fc2NhbGVkTUlQcy5sZW5ndGg9MCx0aGlzLl9sYXJnZXN0TUlQU2NhbGU9MH1zZXRTVkcoQSxlKXtjb25zdCB0PXIoQSksbj1vKHQsdGhpcy5fcmVuZGVyZXIuY3VzdG9tRm9udHMpO3RoaXMuX3N2Z0ltYWdlTG9hZGVkPSExO2NvbnN0e3g6aSx5OnMsd2lkdGg6YSxoZWlnaHQ6Qn09dC52aWV3Qm94LmJhc2VWYWw7dGhpcy5fc2l6ZVswXT1hLHRoaXMuX3NpemVbMV09Qix0aGlzLl9zdmdJbWFnZS5vbmxvYWQ9KCk9PntpZigwPT09YXx8MD09PUIpcmV0dXJuIHZvaWQgc3VwZXIuc2V0RW1wdHlJbWFnZURhdGEoKTtjb25zdCBBPU1hdGguY2VpbChNYXRoLm1heChhLEIpKSx0PXRoaXMuX3JlbmRlcmVyLm1heFRleHR1cmVEaW1lbnNpb247bGV0IG49Mjtmb3IoO0Eqbjw9dDtuKj0yKXRoaXMuX21heFRleHR1cmVTY2FsZT1uO3RoaXMucmVzZXRNSVBzKCksdm9pZCAwPT09ZSYmKGU9dGhpcy5jYWxjdWxhdGVSb3RhdGlvbkNlbnRlcigpKSx0aGlzLl9yb3RhdGlvbkNlbnRlclswXT1lWzBdLWksdGhpcy5fcm90YXRpb25DZW50ZXJbMV09ZVsxXS1zLHRoaXMuX3N2Z0ltYWdlTG9hZGVkPSEwLHRoaXMuZW1pdFdhc0FsdGVyZWQoKX0sdGhpcy5fc3ZnSW1hZ2Uuc3JjPSJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCwiLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQobikpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoMTcpLGk9dCg3Mikscj10KDI5KSxvPXtNQVhfTElORV9XSURUSDoxNzAsTUlOX1dJRFRIOjUwLFNUUk9LRV9XSURUSDo0LFBBRERJTkc6MTAsQ09STkVSX1JBRElVUzoxNixUQUlMX0hFSUdIVDoxMixGT05UOiJIZWx2ZXRpY2EiLEZPTlRfU0laRToxNCxGT05UX0hFSUdIVF9SQVRJTzouOSxMSU5FX0hFSUdIVDoxNixDT0xPUlM6e0JVQkJMRV9GSUxMOiJ3aGl0ZSIsQlVCQkxFX1NUUk9LRToicmdiYSgwLCAwLCAwLCAwLjE1KSIsVEVYVF9GSUxMOiIjNTc1RTc1In19O0EuZXhwb3J0cz1jbGFzcyBleHRlbmRzIHJ7Y29uc3RydWN0b3IoQSxlKXtzdXBlcihBLGUpLHRoaXMuX2NhbnZhcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKSx0aGlzLl9zaXplPVswLDBdLHRoaXMuX3JlbmRlcmVkU2NhbGU9MCx0aGlzLl9saW5lcz1bXSx0aGlzLl90ZXh0QXJlYVNpemU9e3dpZHRoOjAsaGVpZ2h0OjB9LHRoaXMuX2J1YmJsZVR5cGU9IiIsdGhpcy5fcG9pbnRzTGVmdD0hMSx0aGlzLl90ZXh0RGlydHk9ITAsdGhpcy5fdGV4dHVyZURpcnR5PSEwLHRoaXMubWVhc3VyZW1lbnRQcm92aWRlcj1uZXcgaSh0aGlzLl9jYW52YXMuZ2V0Q29udGV4dCgiMmQiKSksdGhpcy50ZXh0V3JhcHBlcj1lLmNyZWF0ZVRleHRXcmFwcGVyKHRoaXMubWVhc3VyZW1lbnRQcm92aWRlciksdGhpcy5fcHJvcHM9byx0aGlzLl9yZXN0eWxlQ2FudmFzKCl9ZGlzcG9zZSgpe3RoaXMuX3RleHR1cmUmJih0aGlzLl9yZW5kZXJlci5nbC5kZWxldGVUZXh0dXJlKHRoaXMuX3RleHR1cmUpLHRoaXMuX3RleHR1cmU9bnVsbCksdGhpcy5fY2FudmFzPW51bGwsc3VwZXIuZGlzcG9zZSgpfWdldCBzaXplKCl7cmV0dXJuIHRoaXMuX3RleHREaXJ0eSYmdGhpcy5fcmVmbG93TGluZXMoKSx0aGlzLl9zaXplfXNldFRleHRCdWJibGUoQSxlLHQsbil7dGhpcy5fdGV4dD1lLHRoaXMuX2J1YmJsZVR5cGU9QSx0aGlzLl9wb2ludHNMZWZ0PXQsIm9iamVjdCI9PXR5cGVvZiBuJiYodGhpcy5fcHJvcHM9biksdGhpcy5fcmVzdHlsZUNhbnZhcygpLHRoaXMuX3RleHREaXJ0eT0hMCx0aGlzLl90ZXh0dXJlRGlydHk9ITAsdGhpcy5lbWl0V2FzQWx0ZXJlZCgpfV9yZXN0eWxlQ2FudmFzKCl7dGhpcy5fY2FudmFzLmdldENvbnRleHQoIjJkIikuZm9udD0iIi5jb25jYXQodGhpcy5fcHJvcHMuRk9OVF9TSVpFLCJweCAiKS5jb25jYXQodGhpcy5fcHJvcHMuRk9OVCwiLCBzYW5zLXNlcmlmIil9X3JlZmxvd0xpbmVzKCl7dGhpcy5fY2FudmFzLmdldENvbnRleHQoIjJkIik7dGhpcy5fbGluZXM9dGhpcy50ZXh0V3JhcHBlci53cmFwVGV4dCh0aGlzLl9wcm9wcy5NQVhfTElORV9XSURUSCx0aGlzLl90ZXh0KTtsZXQgQT0wO2Zvcihjb25zdCBlIG9mIHRoaXMuX2xpbmVzKUE9TWF0aC5tYXgoQSx0aGlzLm1lYXN1cmVtZW50UHJvdmlkZXIubWVhc3VyZVRleHQoZSkpO3RoaXMuX3Byb3BzLkxJTkVfSEVJR0hUPTEuMjMqdGhpcy5fcHJvcHMuRk9OVF9TSVpFO2NvbnN0IGU9TWF0aC5tYXgoQSx0aGlzLl9wcm9wcy5NSU5fV0lEVEgpKzIqdGhpcy5fcHJvcHMuUEFERElORyx0PXRoaXMuX3Byb3BzLkxJTkVfSEVJR0hUKnRoaXMuX2xpbmVzLmxlbmd0aCsyKnRoaXMuX3Byb3BzLlBBRERJTkc7dGhpcy5fdGV4dEFyZWFTaXplLndpZHRoPWUsdGhpcy5fdGV4dEFyZWFTaXplLmhlaWdodD10LHRoaXMuX3NpemVbMF09ZSt0aGlzLl9wcm9wcy5TVFJPS0VfV0lEVEgsdGhpcy5fc2l6ZVsxXT10K3RoaXMuX3Byb3BzLlNUUk9LRV9XSURUSCt0aGlzLl9wcm9wcy5UQUlMX0hFSUdIVCx0aGlzLl90ZXh0RGlydHk9ITF9X3JlbmRlclRleHRCdWJibGUoQSl7Y29uc3QgZT10aGlzLl9jYW52YXMuZ2V0Q29udGV4dCgiMmQiKTt0aGlzLl90ZXh0RGlydHkmJnRoaXMuX3JlZmxvd0xpbmVzKCk7Y29uc3QgdD10aGlzLl90ZXh0QXJlYVNpemUud2lkdGgsbj10aGlzLl90ZXh0QXJlYVNpemUuaGVpZ2h0O3RoaXMuX2NhbnZhcy53aWR0aD1NYXRoLmNlaWwodGhpcy5fc2l6ZVswXSpBKSx0aGlzLl9jYW52YXMuaGVpZ2h0PU1hdGguY2VpbCh0aGlzLl9zaXplWzFdKkEpLHRoaXMuX3Jlc3R5bGVDYW52YXMoKSxlLnNldFRyYW5zZm9ybSgxLDAsMCwxLDAsMCksZS5jbGVhclJlY3QoMCwwLHRoaXMuX2NhbnZhcy53aWR0aCx0aGlzLl9jYW52YXMuaGVpZ2h0KSxlLnNjYWxlKEEsQSksZS50cmFuc2xhdGUoLjUqdGhpcy5fcHJvcHMuU1RST0tFX1dJRFRILC41KnRoaXMuX3Byb3BzLlNUUk9LRV9XSURUSCksZS5zYXZlKCksdGhpcy5fcG9pbnRzTGVmdCYmKGUuc2NhbGUoLTEsMSksZS50cmFuc2xhdGUoLXQsMCkpLGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8odGhpcy5fcHJvcHMuQ09STkVSX1JBRElVUyxuKSxlLmFyY1RvKDAsbiwwLG4tdGhpcy5fcHJvcHMuQ09STkVSX1JBRElVUyx0aGlzLl9wcm9wcy5DT1JORVJfUkFESVVTKSxlLmFyY1RvKDAsMCx0LDAsdGhpcy5fcHJvcHMuQ09STkVSX1JBRElVUyksZS5hcmNUbyh0LDAsdCxuLHRoaXMuX3Byb3BzLkNPUk5FUl9SQURJVVMpLGUuYXJjVG8odCxuLHQtdGhpcy5fcHJvcHMuQ09STkVSX1JBRElVUyxuLHRoaXMuX3Byb3BzLkNPUk5FUl9SQURJVVMpLGUuc2F2ZSgpLGUudHJhbnNsYXRlKHQtdGhpcy5fcHJvcHMuQ09STkVSX1JBRElVUyxuKSwic2F5Ij09PXRoaXMuX2J1YmJsZVR5cGU/KGUuYmV6aWVyQ3VydmVUbygwLDQsNCw4LDQsMTApLGUuYXJjVG8oNCwxMiwyLDEyLDIpLGUuYmV6aWVyQ3VydmVUbygtMSwxMiwtMTEsOCwtMTYsMCksZS5jbG9zZVBhdGgoKSk6KGUuYXJjKC0xNiwwLDQsMCxNYXRoLlBJKSxlLmNsb3NlUGF0aCgpLGUubW92ZVRvKC03LDcuMjUpLGUuYXJjKC05LjI1LDcuMjUsMi4yNSwwLDIqTWF0aC5QSSksZS5tb3ZlVG8oMCw5LjUpLGUuYXJjKC0xLjUsOS41LDEuNSwwLDIqTWF0aC5QSSkpLGUucmVzdG9yZSgpLGUuZmlsbFN0eWxlPXRoaXMuX3Byb3BzLkNPTE9SUy5CVUJCTEVfRklMTCxlLnN0cm9rZVN0eWxlPXRoaXMuX3Byb3BzLkNPTE9SUy5CVUJCTEVfU1RST0tFLGUubGluZVdpZHRoPXRoaXMuX3Byb3BzLlNUUk9LRV9XSURUSCxlLnN0cm9rZSgpLGUuZmlsbCgpLGUucmVzdG9yZSgpLGUuZmlsbFN0eWxlPXRoaXMuX3Byb3BzLkNPTE9SUy5URVhUX0ZJTEwsZS5mb250PSIiLmNvbmNhdCh0aGlzLl9wcm9wcy5GT05UX1NJWkUsInB4ICIpLmNvbmNhdCh0aGlzLl9wcm9wcy5GT05ULCIsIHNhbnMtc2VyaWYiKTtjb25zdCBpPXRoaXMuX2xpbmVzO2ZvcihsZXQgQT0wO0E8aS5sZW5ndGg7QSsrKXtjb25zdCB0PWlbQV07ZS5maWxsVGV4dCh0LHRoaXMuX3Byb3BzLlBBRERJTkcsdGhpcy5fcHJvcHMuUEFERElORyt0aGlzLl9wcm9wcy5MSU5FX0hFSUdIVCpBK3RoaXMuX3Byb3BzLkZPTlRfSEVJR0hUX1JBVElPKnRoaXMuX3Byb3BzLkZPTlRfU0laRSl9dGhpcy5fcmVuZGVyZWRTY2FsZT1BfXVwZGF0ZVNpbGhvdWV0dGUoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06WzEwMCwxMDBdO3RoaXMuZ2V0VGV4dHVyZShBKX1nZXRUZXh0dXJlKEEpe2NvbnN0IGU9QT9NYXRoLm1heChNYXRoLmFicyhBWzBdKSxNYXRoLmFicyhBWzFdKSk6MTAwLHQ9TWF0aC5taW4oMTAsZS8xMDApO2lmKHRoaXMuX3RleHR1cmVEaXJ0eXx8dGhpcy5fcmVuZGVyZWRTY2FsZSE9PXQpe3RoaXMuX3JlbmRlclRleHRCdWJibGUodCksdGhpcy5fdGV4dHVyZURpcnR5PSExO2NvbnN0IEE9dGhpcy5fY2FudmFzLmdldENvbnRleHQoIjJkIikuZ2V0SW1hZ2VEYXRhKDAsMCx0aGlzLl9jYW52YXMud2lkdGgsdGhpcy5fY2FudmFzLmhlaWdodCksZT10aGlzLl9yZW5kZXJlci5nbDtpZihudWxsPT09dGhpcy5fdGV4dHVyZSl7Y29uc3QgQT17YXV0bzohMSx3cmFwOmUuQ0xBTVBfVE9fRURHRX07dGhpcy5fdGV4dHVyZT1uLmNyZWF0ZVRleHR1cmUoZSxBKX10aGlzLl9zZXRUZXh0dXJlKEEpfXJldHVybiB0aGlzLl90ZXh0dXJlfWdldEFsbFByb3BzKCl7cmV0dXJuIG99fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCgxNyksaT10KDExNSkscj10KDcyKSxvPXQoMjkpO0EuZXhwb3J0cz1jbGFzcyBleHRlbmRzIG97Y29uc3RydWN0b3IoQSxlKXtzdXBlcihBKSx0aGlzLl9yZW5kZXJlcj1lLHRoaXMuX2NhbnZhcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKSx0aGlzLl90ZXh0dXJlPW51bGwsdGhpcy5fc2l6ZT1bMCwwXSx0aGlzLl9yZW5kZXJlZFNjYWxlPTAsdGhpcy5fbGluZXM9W10sdGhpcy5fdGV4dEFyZWFTaXplPXt3aWR0aDowLGhlaWdodDowfSx0aGlzLl90ZXh0RGlydHk9ITAsdGhpcy5fdGV4dHVyZURpcnR5PSEwLHRoaXMubWVhc3VyZW1lbnRQcm92aWRlcj1uZXcgcih0aGlzLl9jYW52YXMuZ2V0Q29udGV4dCgiMmQiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KSksdGhpcy50ZXh0V3JhcHBlcj1uZXcgaSh0aGlzLm1lYXN1cmVtZW50UHJvdmlkZXIpLHRoaXMuc3R5bGU9e319ZGlzcG9zZSgpe3RoaXMuX3RleHR1cmUmJih0aGlzLl9yZW5kZXJlci5nbC5kZWxldGVUZXh0dXJlKHRoaXMuX3RleHR1cmUpLHRoaXMuX3RleHR1cmU9bnVsbCksdGhpcy5fY2FudmFzPW51bGwsdGhpcy50ZXh0V3JhcHBlcj1udWxsLHRoaXMubWVhc3VyZW1lbnRQcm92aWRlcj1udWxsfXNldFRleHRBbmRTdHlsZShBKXt0aGlzLl90ZXh0PUEudGV4dCx0aGlzLnN0eWxlLkZPTlQ9QS5mb250LHRoaXMuc3R5bGUuQ09MT1I9QS5jb2xvcix0aGlzLnN0eWxlLk1BWF9MSU5FX1dJRFRIPUEubWF4V2lkdGgsdGhpcy5zdHlsZS5GT05UX1NJWkU9QS5zaXplLHRoaXMuc3R5bGUuTElORV9IRUlHSFQ9QS5zaXplK0Euc2l6ZS83LHRoaXMuc3R5bGUuQUxJR049QS5hbGlnbix0aGlzLnN0eWxlLlNUUk9LRV9XSURUSD1BLnN0cm9rZVdpZHRoLHRoaXMuc3R5bGUuU1RST0tFX0NPTE9SPUEuc3Ryb2tlQ29sb3IsdGhpcy5zdHlsZS5WRVJUSUNBTF9QQURESU5HPUEuc2l6ZS83LHRoaXMuc3R5bGUuUkFJTkJPVz1BLnJhaW5ib3csdGhpcy5tZWFzdXJlbWVudFByb3ZpZGVyLnNldEZvbnRBbmRTaXplKHRoaXMuc3R5bGUuRk9OVCx0aGlzLnN0eWxlLkZPTlRfU0laRSksdGhpcy5fdGV4dERpcnR5PSEwLHRoaXMuX3RleHR1cmVEaXJ0eT0hMCx0aGlzLmVtaXRXYXNBbHRlcmVkKCl9X3Jlc3R5bGVDYW52YXMoKXt0aGlzLl9jYW52YXMuZ2V0Q29udGV4dCgiMmQiLHt3aWxsUmVhZEZyZXF1ZW50bHk6ITB9KS5mb250PSIiLmNvbmNhdCh0aGlzLnN0eWxlLkZPTlRfU0laRSwicHggIikuY29uY2F0KHRoaXMuc3R5bGUuRk9OVCwiLCBzYW5zLXNlcmlmIil9X3JlZmxvd0xpbmVzKEEpe2NvbnN0IGU9dGhpcy5zdHlsZS5NQVhfTElORV9XSURUSDt0aGlzLl9saW5lcz10aGlzLnRleHRXcmFwcGVyLndyYXBUZXh0KGUsdGhpcy5fdGV4dCx0aGlzLnN0eWxlLkZPTlRfU0laRSx0aGlzLnN0eWxlLkZPTlQpLHRoaXMuX3NpemVbMF09ZSx0aGlzLl9zaXplWzFdPXRoaXMuc3R5bGUuTElORV9IRUlHSFQqdGhpcy5fbGluZXMubGVuZ3RoKzIqdGhpcy5zdHlsZS5WRVJUSUNBTF9QQURESU5HLHRoaXMuc3R5bGUuU1RST0tFX1dJRFRIPjAmJih0aGlzLl9zaXplWzBdKz0yKnRoaXMuc3R5bGUuU1RST0tFX1dJRFRILHRoaXMuX3NpemVbMV0rPTIqdGhpcy5zdHlsZS5TVFJPS0VfV0lEVEgpLHRoaXMuX3RleHREaXJ0eT0hMX1nZXQgd2lkdGgoKXtsZXQgQT0wO2Zvcihjb25zdCBlIG9mIHRoaXMuX2xpbmVzKUE9TWF0aC5tYXgoQSx0aGlzLm1lYXN1cmVtZW50UHJvdmlkZXIubWVhc3VyZVRleHQoZSkpO3JldHVybiBBfWdldCBoZWlnaHQoKXtyZXR1cm4gdGhpcy5fc2l6ZVsxXX1fcmVuZGVyVGV4dChBKXtjb25zdCBlPXRoaXMuX2NhbnZhcy5nZXRDb250ZXh0KCIyZCIse3dpbGxSZWFkRnJlcXVlbnRseTohMH0pO3RoaXMuX3RleHREaXJ0eSYmdGhpcy5fcmVmbG93TGluZXMoQSksdGhpcy5fY2FudmFzLndpZHRoPU1hdGguY2VpbCh0aGlzLl9zaXplWzBdKkEpLHRoaXMuX2NhbnZhcy5oZWlnaHQ9TWF0aC5jZWlsKHRoaXMuX3NpemVbMV0qQSksdGhpcy5fcmVzdHlsZUNhbnZhcygpLGUuc2V0VHJhbnNmb3JtKDEsMCwwLDEsMCwwKSxlLmNsZWFyUmVjdCgwLDAsdGhpcy5fY2FudmFzLndpZHRoLHRoaXMuX2NhbnZhcy5oZWlnaHQpLGUuc2NhbGUoQSxBKSxlLnN0cm9rZSgpLGUuZmlsbCgpLGUuZmlsbFN0eWxlPXRoaXMuc3R5bGUuQ09MT1IsZS5mb250PSIiLmNvbmNhdCh0aGlzLnN0eWxlLkZPTlRfU0laRSwicHggIikuY29uY2F0KHRoaXMuc3R5bGUuRk9OVCwiLCBzYW5zLXNlcmlmIik7Y29uc3QgdD10aGlzLl9saW5lcztmb3IobGV0IEE9MDtBPHQubGVuZ3RoO0ErKyl7Y29uc3Qgbj10W0FdLGk9dGhpcy5tZWFzdXJlbWVudFByb3ZpZGVyLm1lYXN1cmVUZXh0KG4pO2xldCByPTA7ImNlbnRlciI9PT10aGlzLnN0eWxlLkFMSUdOJiYocj10aGlzLl9zaXplWzBdLzItaS8yKSwicmlnaHQiPT09dGhpcy5zdHlsZS5BTElHTiYmKHI9dGhpcy5fc2l6ZVswXS1pKTtsZXQgbz10aGlzLnN0eWxlLkxJTkVfSEVJR0hUKkErLjkqdGhpcy5zdHlsZS5GT05UX1NJWkUrdGhpcy5zdHlsZS5WRVJUSUNBTF9QQURESU5HO2lmKHRoaXMuc3R5bGUuU1RST0tFX1dJRFRIPjAmJihvKz10aGlzLnN0eWxlLlNUUk9LRV9XSURUSCxlLmxpbmVXaWR0aD0yKnRoaXMuc3R5bGUuU1RST0tFX1dJRFRILGUuc3Ryb2tlU3R5bGU9dGhpcy5zdHlsZS5TVFJPS0VfQ09MT1IsZS5zdHJva2VUZXh0KG4scixvKSksdGhpcy5zdHlsZS5SQUlOQk9XKXtjb25zdCBBPWUuY3JlYXRlTGluZWFyR3JhZGllbnQociwwLHIraSwwKSx0PTEyO2ZvcihsZXQgZT0wO2U8dDtlKyspQS5hZGRDb2xvclN0b3AoZS90LCJoc2woIi5jb25jYXQoMzYwKmUvdCwiLCAxMDAlLCA1MCUpIikpO2UuZmlsbFN0eWxlPUF9ZS5maWxsVGV4dChuLHIsbyl9Y29uc3Qgbj1bdGhpcy5fc2l6ZVswXS8yLC45KnRoaXMuc3R5bGUuRk9OVF9TSVpFXTt0aGlzLl9yb3RhdGlvbkNlbnRlcj1uLHRoaXMuX3JlbmRlcmVkU2NhbGU9QX1nZXRUZXh0dXJlKEEpe2xldCBlPShBP01hdGgubWF4KE1hdGguYWJzKEFbMF0pLE1hdGguYWJzKEFbMV0pKToxMDApLzEwMDtjb25zdCB0PXRoaXMuX3JlbmRlcmVyLmN1c3RvbVJlbmRlckNvbmZpZy50ZXh0Q29zdHVtZVJlc29sdXRpb247aWYoKHQuZml4ZWR8fHQuY2FwcGVkJiZlPnQudmFsdWUpJiYoZT10LnZhbHVlKSx0aGlzLl90ZXh0dXJlRGlydHl8fHRoaXMuX3JlbmRlcmVkU2NhbGUhPT1lKXtpZih0aGlzLl9yZW5kZXJlZFNjYWxlIT09ZSYmKHRoaXMuX3RleHREaXJ0eT0hMCksdGhpcy5fcmVuZGVyVGV4dChlKSwwPT09dGhpcy5fY2FudmFzLndpZHRofHwwPT09dGhpcy5fY2FudmFzLmhlaWdodClyZXR1cm4gc3VwZXIuZ2V0VGV4dHVyZSgpO3RoaXMuX3RleHR1cmVEaXJ0eT0hMTtjb25zdCBBPXRoaXMuX2NhbnZhcy5nZXRDb250ZXh0KCIyZCIse3dpbGxSZWFkRnJlcXVlbnRseTohMH0pLmdldEltYWdlRGF0YSgwLDAsdGhpcy5fY2FudmFzLndpZHRoLHRoaXMuX2NhbnZhcy5oZWlnaHQpLHQ9dGhpcy5fcmVuZGVyZXIuZ2w7aWYobnVsbD09PXRoaXMuX3RleHR1cmUpe2NvbnN0IEE9e2F1dG86ITEsd3JhcDp0LkNMQU1QX1RPX0VER0V9O3RoaXMuX3RleHR1cmU9bi5jcmVhdGVUZXh0dXJlKHQsQSl9dGhpcy5fc2V0VGV4dHVyZShBKX1yZXR1cm4gdGhpcy5fdGV4dHVyZX1nZXQgc2l6ZSgpe3JldHVybiB0aGlzLl90ZXh0RGlydHkmJnRoaXMuX3JlZmxvd0xpbmVzKHRoaXMuX3JlbmRlcmVkU2NhbGUpLHRoaXMuX3NpemV9Z2V0IG1heFNjYWxlKCl7cmV0dXJuIDEwfX19LGZ1bmN0aW9uKEEsZSx0KXsoZnVuY3Rpb24oKXt2YXIgZSxuLGkscixvLHMsYSxCLGMsZyxFLFEsdSxsLGgsdyxDLEksTSxkLHAsbSxGLEQsWSxmLE47TT10KDExNiksbT10KDQ3MiksZj10KDQ3MyksZi5CSyxjPWYuQ1IsZi5MRixmLk5MLG89Zi5DQixpPWYuQkEsZi5TUCxkPWYuV0osST1mLlNQLHI9Zi5CSyxRPWYuTEYsbD1mLk5MLGU9Zi5BSSxuPWYuQUwsdz1mLlNBLEM9Zi5TRyxwPWYuWFgsYT1mLkNKLGYuSUQsaD1mLk5TLGYuY2hhcmFjdGVyQ2xhc3NlcyxOPXQoNDc0KSxnPU4uRElfQlJLLEU9Ti5JTl9CUksscz1OLkNJX0JSSyxCPU4uQ1BfQlJLLE4uUFJfQlJLLFk9Ti5wYWlyVGFibGUsRD1tLnRvQnl0ZUFycmF5KCJBQTRJQUFBQUFBQUFBaHFnNVZWN05KdFp2ejdmVEM4elU1ZGVwbFVsTXJRb1dxbXFhaEQ1U28wYWlwWVdyVWhWRlNWQlExMGlTVHRVdFc2bktEVkY2azdkNzVlUWZFVWJGY1E5S2lGUzkwdFFFb2xjUDIzbnJMUG1PK2Vzci8rZjM5cnIvYTI5M3QvZTcvUDhubWZ2bHowTzZSdnJCSkFEdGJCTmFEODhJT0tUT21PckNxaHU5ekU3NzB2YzFwQlYveEw1ZHhqMlY3Wmo0RkdTb21GS1N0Q1dObFY3aEcxVmFiWmZaMUxhSGJGclJ3enpManpQb2kxVUhEbmxWL2xXYmhnSUlKdkxCcC9wdTdBSEVkUm5JWStST2RYeGc0Zk5wTWRUeFZubm0wOE9qb3plakFWc0Jxd3F6OGtkZEdSbFJ4c2Q4YzU1ZE5ab1B1ZXg2YTdEdDZMME5OYjAzc3FnVGxSMi9PVDdlVHQwWTBXbnBVWHhMc3A1U01BTmM0RHNtWDR6SlVCUXZ6bndleG05dHNNSCtDOXVSWU1QT2Q5NlpIQjI5TlpqQ0lNMm5mTzd0c21RdmVYM2wycjdmdDBONC9TUko3a082WThaQ2FldVVRNGdNVFo2N2NwN1RneHZsTkRzUGdPQmRaaTJZVGFtNVE3bTMrMDBsK1hHN1ByRGU2WW9QbUhnSyt5TGloN2ZBUjE2WkZDZUQ5V3ZPVnQrZ2ZOVy9LVDUvTTZyYi85S0VSdCtOMWxhZDVSbmVWanp4WEhzTG9mdVUrVHZyRXNyMysyNnNWejVXSmg2TC9zdm9QSzNxZXBGSDlieXNEbGpXdEQxRjdLcnh6VzFpOXIrZS9OTHhWL2FjdHM3enVvMzA0SjkrdDNQZDZZNnU4ZjNFQXF4TlJndjVEWmphSTN1bnl2a3ZIUHlhL3YzbVdWWU9DMzhxQnExMSt5SFoyYkF5UDFIYmtWOTJ2ZG5vN3IybHh6OVV3Q2RDSlZmZDE0TkxjcE8yQ2FkSFMvWFBKOWRvWGd6NXZMdi8xT0JWUzNnWDBEOW42TGlOSURmcGlsTzlSc0xnWjJXL3dJeThXL1JoOTNqZm96NHFtUlYyeEVsdjZwMmxSWFFkTzYvQ3Y4ZjVuR24zdTB3TFhqaG52Q2xhYkwxbys3eXZJcHZMZlQveHNLRzMweS9zVHZxMzBpYTlDenhwOWRyOXYvZTdZbi9PMFFKWHh4Qk9KbWNlUC9EQkZhMXExdjZvdWRuL2U2cWMvMzdkVW9Odm5ZTDRwbFE5T29uZVlPaC9yOGZPRm03eWw3RkVUSFk5ZFhkNUsybi9xRWM1M2RPRWUxVFRKY3ZDZnAxZHBUQzMzNGwwdnlhRkw2bXR0TkViRmp6TytaVjJtTGswcWMzQnJ4SjRkOWd3ZU1talJvcnhiN3ZpYzByU3E2RDR3ekF5RldhczFUcVBFMHNMSThYTEFyeUM4dFBDaGFOM0FMRVpTV210QjM0U3laY3hYWW4vRTRUZzBMZU1JUGhnUEtEOXp5SEdNeHhoeG5ERGloN2VJODZ4RUNUTTh6b2RVQ2RnZmZVbVJoNHJROHp5QTZvdy9BZWkrMDFhOE9NZnppUVErR0FFa2h3Ti9jcVVGWUFWekE5ZXg0bjZqZ3RzaU12WGY1QnRYeEVVNGhTcGh2eDN2OCs5YXU4ZUVla0VFcGtya25lL3pCMU0rSEFQdVhJejNwYXhLbGZlOGFETWZHV0FYNk1kNlB1dUFkS0hGVkgrK0VkNUxFamk5NFo1emVpSkl4Ym1XZU43cnIxL1pjYUJsNS9uaW1kSHNIZ0lIL3NzeUxVWFo0ZkRRNDZIbkJiK2hRcUc4eU5pS1JyWEwvYjFJUFlEVXN1M2RGS3RSTWNqcWxSdk9OZDR4QnZPdWZ4MmNVSHVrOHBtRzFEN1B5T1FtVW1sdWlzVkZTOU9XUzhmUEllOExpQ3Rqd0pLbkVDOWhyUzl1S21JU0kzV2E1K3ZkWFVHOWR0eWZyN2cvb0p2MndiemVaVTgzOEc2bUV2bnRVYjNTVlYvZkJaNkgvc0wrbEVsemVSckh5MlhiZTdVV1gxcTVzZ09RODFydisyYmFlajRmUDRtNU1mL0drb3hmRHRUMysrS1A3ZG85Sm4yNmFhNnhBaENmNUw5UlpWZmtXS0NjakkxZVlibTJwbHZURXFrRHhLQzQwMmJHelhDWWFHbnVBTEhhYkJUMWRGTHVPU0I3Um9yT1BFaFphaDFOalpJZ1IvVUZHZkszcDFFbFluZXZPTUJETFVSZHBJanJJK3FaazRzZmZHYlJGaVh1RW1kRmppQU9EbFFDSnZJYUIxclc2MUxqZzN5NGVTNExBY1NnRHh4WlFzMERZYTE1d0EwMzJaK2xHVWZwb3lPckZvM21nMXNSUXROL2ZISEN4M1RyTThlVHJsZE1iWWlzRExYYlVEb1hNTGVqU3EwZlVOdU8xbXVYMGdFYTh2Z3llZ2txaXFxYkMzVzBTNGNDOUttdDhNdVMvaEZPN1hlaTNmOHJTdklqZXZlTU03a3hqVWl4T3JsNmdKc2hlNEpVN1BoT0hwZnJSWXZ1N3lvQVpLYTNCdXlrMkorSzVXK25OVHoxbmhKRGhSVWZESkxpVVh4anhYQ0plZWFPZS9yN0hsQlAvdVVSYy81ZWZhWkVQeHI1NVFqMzlyZlRMa3VnVUd5TXJ3bzdIQWdsZkVqRHJpZWhGMWpYdHdKa1BvaVlrWVE1YW9YU0E3cWJDQkdLcTVod3R1MlZrcEk5eFZEb3AvMXhyQzUyZWlJdkNvUFd4NGxMbDQwam05dXB2eWNWUGZwYUg5L28yRDR4S1hwZU5qRTJIUFFSUyszUkZhWVRjNFR4dzdEdnE1WDZKQlJ3enM5bXZvQjQ5Qks2YitYZ3NaVkpZaUluVGxTWForNjJGVDE4bWtGVmNQS0NKc29GNWFoYjE5V2hlWkxVWXNTd2RyclZNM2FRMlhFNlN6VTJ4SERTNmlXa29kazVBRjZGOFdVTm1tdXNoaThhVnBNUHdpSWZFaVFXbzNDQXBPTkRSanJoRGlWbmthRnNhUDVyaklKa21zTjZWMjZsaTVMTk0zSnhHU3lLZ29ta25UeXlyaGNud3Y5UWNxYXE1dXRBaDQ0VzMwU1dvOFEwWEhLUjBnbFBGNGZXc3QxRlVDbmsyd29GcTNpeTlmQWJ6Y2pKOGZ2U2pnS1ZPZm4xNFJEcXlRdUlnYUdKWnVzd1R5d2RDRlNhODlTYWtNZjZmZSs5S2FRTVlRbEt4aUpCY3p1UFNobzR3bUJqZEErYWc2UVVPcjJHZHBjYlNsNTFBeTZraGhCdDVVWGRybnhjN1pHTXhDdno5NkE0b0xvY3hoMitweCsxemt5TGFjQ0dyeG5QelRSU2dyTEtwU3RGcEg1cHBLV203UGdNS1p0d2d5dEtMT2piR0NPUUxUbStLT293cWExc2R1dDlyYWoxQ1pGa1pEMGpiYUtOTHBKVWFyU0g1UWtueDFZaU94ZEE1TDZkNXNmSS91bm1rU0Y2NUljL0F2dFh0OThQbnJkd2w1dmdwcFEzZFl6V0Z3a25ac3k2eGgybGxtTHhwZWdGOGF5THduaWtubFhSSGlGNGh6enJnQjhqUTR3ZElxY2FIQ0VBeHlKd0NlR2tYUEJaWVNyckdhNHZNd1p2Tk45YUswRjRKQk9LOW1ROGc4RWpFYklRVnd2ZlMyRDhHdUNZc2Rxd3FTV2JRcmZXZFRSVUpNcW1wbldQYXg0WjdFMTM3STZickhidmpwUGxmTlpwRjFkN1BQN0hCL01QSGNIVktUTWhMTzRmM0NaY2FjY1pFT2lTMkRwS2lRQjVLWERKK09zcGN6NHFUUkNSeGdyS0VRSWdVa0tMVEtLd3NrZHgyRFdvM2JnM1BFb0I1aDJuQTI0b2x3ZktTUitRUjZUQXZFRGkvMGN6aFVUNTlSWm1PMU1HZUtHZUVmdU9TUFdmTCtYS21ocXBabU9WUjltSlZORFBLT1M0OUxxK1VtMTBZc0J5YnpETXRlbWxQQ09KRXRFOHphWGhzYXFFczlibmdTSkdobE9UVE1sQ1hseTlRdjVjUk4zUFZMSzd6b01wdHV0ZjdpaHV0clEvWGo3VnFlQ2RVd2xlVFRLa2xPSThXZXA5aDdmQ1kwa1Z0RHRJV0tudWJXQXZiTlp0c1JScU9ZbDgwMnZlYlBFa1pSU1pjNndYT2ZQdHBQdE41SEk2M0VVRmZzeTdVL1RMcjhOa0l6YVkzdng0QTI4eDc2NVhaTXpSWlRwTWs4MVlJTXV3SjUrL3pvQ3VaajF3R25hSE9ieGE1cnBLWmo0V2hUNjcwbWFSdzA0dzBlM2NaVzc0WjBhWmUybjA1aGpaYXhtNnVyZW56OEVmNU82WXUxSjJhcVlBbHFzQ1hzNVpCNW8xSko1bDN4a1RWcjhySlEwOU5Mc0JxUlJEVDJJSWpPUG1jSmE2eFExUjV5R1A5akFzajIzeFlEVGV6ZHlxRzhZV1o3dkpCSVdLNTZLK2lEZ2NIaW1pUU9USWFzTlN1YTFmT0J4c0tNTUVLZDE1anhUbCszQ3l2R0NSK1V5Und1U0kyWHV3UklQb05OY2xQaWhmSmhhcTJtS2tOaWp3WUxZNmZlcW9oa3R1a21JM0tEdk9wTjdJdENxSEhoTnVLbHhNZkJBRU81TGpXMlJLaDZsRTVIZDFkdEFPb3BhYy9aNEZkc05zak1oWHovdWc4SkdtYlZKVEErVk9CSlhkcll5SmNJbjUrT0Vlb0s4a1dFV0Yrd2RHOFp0WkhLU3F1V0R0RFZ5aEZQa1JWcWd1S0ZrTGtLQ3o0NmhjVTFTVVk5b0oyU2srZG1xMGtnbHFrNGtxS1QxQ1Y5SkRFTFBqSzFXc1dHa0VYRjg3ZzlQOThlNWZmMG1JdXBtL3c2dmMza0NlcTA0WDViZ0pRbGNNRlJqbEZXbVNrK2tzc1hDQVZpa2ZlQWxNdXpwVXZDU2RYaUcrZGM2S3JJaUx4eGhiRVZ1S2Y3dlc3S21EUUk5NWJaZTNIOW1OMy83N0Y2ZloyWXgvRjl5Q2xsbGo4Z1hwTFdMcGQ1K3Y5MGlPYUZhOXNkN1B2eDBsTmExbzErYmtpWjY5d0NpQzJ4OVVJYjYvYm9CQ3VOTUIvSFlSMFJDNitGRDlPZTVxcmdRbDZKYlh0a2FZbjB3a2ROaFJPTHF5aHY2Y0t2eU1qMUZ2czJvM09PS29NWVR1YkdFTkxmWTVGNkg5ZDh3WDFjbklOc3Z6K3daRlF1M3poV1Zsd0p2d0JFcDY5RHF1L1pua0JmM25JZmJ4NFRLN3pPVkpINXNHSlgrSU13a24xdlZCbjM4R2JwVGc5YkpuTWNUT2I1RjZDaTVnT245RmN5NlF6Y3UrRkw2bVlKSitmMlpaSkdkYTFWcXJ1WjBKUlhJdHA4WDBhVGpJY0pnemRhWGxoYTdxN2tWNGVick1zdW5mc1J5UmE5cVl1cnlCSEEwaGMxS1ZzS2RFK29JMGxqTG1TQXlNemU4bFdtYzUvbFExOHNseVRWQy92QURUYytTTk01KytnenRUQkx6NG0wYVZVS2NmZ09FRXh1S1ZvbUo3WFFEWnV6aU1Eakc2SlA5dGdSN0pYWlRlbzlSR2V0Vy9YbTkvVGdQSnBUZ0hBQ1BPR3ZteTJtRG05ZmwwOVdlTW05c1FVQVhQM1N1MnVBcGVDd0pWVDVpV0NYRGdtY3VUc0ZnVTlObTYvUHVzSnpTYkRRSU1mbDZJTlkvT0FFdlpSTjU0QlNTWFVDbE01MWltNlduOVZoVmFtS0ptek9hRkpFcmdKY3MwZXRGWjQwTElGM0VQa2pGVGpHbUFoc2QxNzRObk93Slc4VGRKMURqYStFNldhNkZWUzIySGFqMUREQTQ3NEVlc29NUDVuYnNwQVBKTFdKOHJZY1AxRHdDc2xobm4rZ1RGbStzUzl3WStVNlNvZ0FhOXRpd3BveHVhRmVxbTJPSyt1b3pSNlNmaUxDT1B6MzZMaURselhyNlVXZDdCcFk2bWxyTkFOa1RPZW1lNUVnbm5Ba1FSVEdvOVQ2aVl4YlVLZkdKY0k5Qit1YjJQY3lVT2dwd1hiT2YzYkhGV3R5Z0Q3RlliUmhiK3Zremk4N2RCMEplWGwvdkJwQlV6OTNWdHFaaTdBTDdDMVZvd1RGK3RHbXl1cnc3REJja3RjK1VNWTBFMTBKdzRVUm9qZjhOZGFOcE42RTFxNCtPeis0WWVQdE1MeThGUFJQIiksRj1uZXcgTShEKSx1PWZ1bmN0aW9uKCl7dmFyIEEsdCx1O2Z1bmN0aW9uIE0oQSl7dGhpcy5zdHJpbmc9QSx0aGlzLnBvcz0wLHRoaXMubGFzdFBvcz0wLHRoaXMuY3VyQ2xhc3M9bnVsbCx0aGlzLm5leHRDbGFzcz1udWxsfXJldHVybiBNLnByb3RvdHlwZS5uZXh0Q29kZVBvaW50PWZ1bmN0aW9uKCl7dmFyIEEsZTtyZXR1cm4gQT10aGlzLnN0cmluZy5jaGFyQ29kZUF0KHRoaXMucG9zKyspLGU9dGhpcy5zdHJpbmcuY2hhckNvZGVBdCh0aGlzLnBvcyksNTUyOTY8PUEmJkE8PTU2MzE5JiY1NjMyMDw9ZSYmZTw9NTczNDM/KHRoaXMucG9zKyssMTAyNCooQS01NTI5NikrKGUtNTYzMjApKzY1NTM2KTpBfSx0PWZ1bmN0aW9uKEEpe3N3aXRjaChBKXtjYXNlIGU6cmV0dXJuIG47Y2FzZSB3OmNhc2UgQzpjYXNlIHA6cmV0dXJuIG47Y2FzZSBhOnJldHVybiBoO2RlZmF1bHQ6cmV0dXJuIEF9fSx1PWZ1bmN0aW9uKEEpe3N3aXRjaChBKXtjYXNlIFE6Y2FzZSBsOnJldHVybiByO2Nhc2UgbzpyZXR1cm4gaTtjYXNlIEk6cmV0dXJuIGQ7ZGVmYXVsdDpyZXR1cm4gQX19LE0ucHJvdG90eXBlLm5leHRDaGFyQ2xhc3M9ZnVuY3Rpb24oQSl7cmV0dXJuIG51bGw9PUEmJihBPSExKSx0KEYuZ2V0KHRoaXMubmV4dENvZGVQb2ludCgpKSl9LEE9ZnVuY3Rpb24oQSxlKXt0aGlzLnBvc2l0aW9uPUEsdGhpcy5yZXF1aXJlZD1udWxsIT1lJiZlfSxNLnByb3RvdHlwZS5uZXh0QnJlYWs9ZnVuY3Rpb24oKXt2YXIgZSxuLGE7Zm9yKG51bGw9PXRoaXMuY3VyQ2xhc3MmJih0aGlzLmN1ckNsYXNzPXUodGhpcy5uZXh0Q2hhckNsYXNzKCkpKTt0aGlzLnBvczx0aGlzLnN0cmluZy5sZW5ndGg7KXtpZih0aGlzLmxhc3RQb3M9dGhpcy5wb3Msbj10aGlzLm5leHRDbGFzcyx0aGlzLm5leHRDbGFzcz10aGlzLm5leHRDaGFyQ2xhc3MoKSx0aGlzLmN1ckNsYXNzPT09cnx8dGhpcy5jdXJDbGFzcz09PWMmJnRoaXMubmV4dENsYXNzIT09USlyZXR1cm4gdGhpcy5jdXJDbGFzcz11KHQodGhpcy5uZXh0Q2xhc3MpKSxuZXcgQSh0aGlzLmxhc3RQb3MsITApO2lmKG51bGw9PShlPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMubmV4dENsYXNzKXtjYXNlIEk6cmV0dXJuIHRoaXMuY3VyQ2xhc3M7Y2FzZSByOmNhc2UgUTpjYXNlIGw6cmV0dXJuIHI7Y2FzZSBjOnJldHVybiBjO2Nhc2UgbzpyZXR1cm4gaX19LmNhbGwodGhpcykpKXtzd2l0Y2goYT0hMSxZW3RoaXMuY3VyQ2xhc3NdW3RoaXMubmV4dENsYXNzXSl7Y2FzZSBnOmE9ITA7YnJlYWs7Y2FzZSBFOmE9bj09PUk7YnJlYWs7Y2FzZSBzOmlmKCEoYT1uPT09SSkpY29udGludWU7YnJlYWs7Y2FzZSBCOmlmKG4hPT1JKWNvbnRpbnVlfWlmKHRoaXMuY3VyQ2xhc3M9dGhpcy5uZXh0Q2xhc3MsYSlyZXR1cm4gbmV3IEEodGhpcy5sYXN0UG9zKX1lbHNlIGlmKHRoaXMuY3VyQ2xhc3M9ZSx0aGlzLm5leHRDbGFzcz09PW8pcmV0dXJuIG5ldyBBKHRoaXMubGFzdFBvcyl9aWYodGhpcy5wb3M+PXRoaXMuc3RyaW5nLmxlbmd0aClyZXR1cm4gdGhpcy5sYXN0UG9zPHRoaXMuc3RyaW5nLmxlbmd0aD8odGhpcy5sYXN0UG9zPXRoaXMuc3RyaW5nLmxlbmd0aCxuZXcgQSh0aGlzLnN0cmluZy5sZW5ndGgpKTpudWxsfSxNfSgpLEEuZXhwb3J0cz11fSkuY2FsbCh0aGlzKX0sZnVuY3Rpb24oQSxlKXtmdW5jdGlvbiB0KCl7dGhpcy50YWJsZT1uZXcgVWludDE2QXJyYXkoMTYpLHRoaXMudHJhbnM9bmV3IFVpbnQxNkFycmF5KDI4OCl9ZnVuY3Rpb24gbihBLGUpe3RoaXMuc291cmNlPUEsdGhpcy5zb3VyY2VJbmRleD0wLHRoaXMudGFnPTAsdGhpcy5iaXRjb3VudD0wLHRoaXMuZGVzdD1lLHRoaXMuZGVzdExlbj0wLHRoaXMubHRyZWU9bmV3IHQsdGhpcy5kdHJlZT1uZXcgdH12YXIgaT1uZXcgdCxyPW5ldyB0LG89bmV3IFVpbnQ4QXJyYXkoMzApLHM9bmV3IFVpbnQxNkFycmF5KDMwKSxhPW5ldyBVaW50OEFycmF5KDMwKSxCPW5ldyBVaW50MTZBcnJheSgzMCksYz1uZXcgVWludDhBcnJheShbMTYsMTcsMTgsMCw4LDcsOSw2LDEwLDUsMTEsNCwxMiwzLDEzLDIsMTQsMSwxNV0pLGc9bmV3IHQsRT1uZXcgVWludDhBcnJheSgzMjApO2Z1bmN0aW9uIFEoQSxlLHQsbil7dmFyIGkscjtmb3IoaT0wO2k8dDsrK2kpQVtpXT0wO2ZvcihpPTA7aTwzMC10OysraSlBW2krdF09aS90fDA7Zm9yKHI9bixpPTA7aTwzMDsrK2kpZVtpXT1yLHIrPTE8PEFbaV19dmFyIHU9bmV3IFVpbnQxNkFycmF5KDE2KTtmdW5jdGlvbiBsKEEsZSx0LG4pe3ZhciBpLHI7Zm9yKGk9MDtpPDE2OysraSlBLnRhYmxlW2ldPTA7Zm9yKGk9MDtpPG47KytpKUEudGFibGVbZVt0K2ldXSsrO2ZvcihBLnRhYmxlWzBdPTAscj0wLGk9MDtpPDE2OysraSl1W2ldPXIscis9QS50YWJsZVtpXTtmb3IoaT0wO2k8bjsrK2kpZVt0K2ldJiYoQS50cmFuc1t1W2VbdCtpXV0rK109aSl9ZnVuY3Rpb24gaChBKXtBLmJpdGNvdW50LS18fChBLnRhZz1BLnNvdXJjZVtBLnNvdXJjZUluZGV4KytdLEEuYml0Y291bnQ9Nyk7dmFyIGU9MSZBLnRhZztyZXR1cm4gQS50YWc+Pj49MSxlfWZ1bmN0aW9uIHcoQSxlLHQpe2lmKCFlKXJldHVybiB0O2Zvcig7QS5iaXRjb3VudDwyNDspQS50YWd8PUEuc291cmNlW0Euc291cmNlSW5kZXgrK108PEEuYml0Y291bnQsQS5iaXRjb3VudCs9ODt2YXIgbj1BLnRhZyY2NTUzNT4+PjE2LWU7cmV0dXJuIEEudGFnPj4+PWUsQS5iaXRjb3VudC09ZSxuK3R9ZnVuY3Rpb24gQyhBLGUpe2Zvcig7QS5iaXRjb3VudDwyNDspQS50YWd8PUEuc291cmNlW0Euc291cmNlSW5kZXgrK108PEEuYml0Y291bnQsQS5iaXRjb3VudCs9ODt2YXIgdD0wLG49MCxpPTAscj1BLnRhZztkb3tuPTIqbisoMSZyKSxyPj4+PTEsKytpLHQrPWUudGFibGVbaV0sbi09ZS50YWJsZVtpXX13aGlsZShuPj0wKTtyZXR1cm4gQS50YWc9cixBLmJpdGNvdW50LT1pLGUudHJhbnNbdCtuXX1mdW5jdGlvbiBJKEEsZSx0KXt2YXIgbixpLHIsbyxzLGE7Zm9yKG49dyhBLDUsMjU3KSxpPXcoQSw1LDEpLHI9dyhBLDQsNCksbz0wO288MTk7KytvKUVbb109MDtmb3Iobz0wO288cjsrK28pe3ZhciBCPXcoQSwzLDApO0VbY1tvXV09Qn1mb3IobChnLEUsMCwxOSkscz0wO3M8bitpOyl7dmFyIFE9QyhBLGcpO3N3aXRjaChRKXtjYXNlIDE2OnZhciB1PUVbcy0xXTtmb3IoYT13KEEsMiwzKTthOy0tYSlFW3MrK109dTticmVhaztjYXNlIDE3OmZvcihhPXcoQSwzLDMpO2E7LS1hKUVbcysrXT0wO2JyZWFrO2Nhc2UgMTg6Zm9yKGE9dyhBLDcsMTEpO2E7LS1hKUVbcysrXT0wO2JyZWFrO2RlZmF1bHQ6RVtzKytdPVF9fWwoZSxFLDAsbiksbCh0LEUsbixpKX1mdW5jdGlvbiBNKEEsZSx0KXtmb3IoOzspe3ZhciBuLGkscixjLGc9QyhBLGUpO2lmKDI1Nj09PWcpcmV0dXJuIDA7aWYoZzwyNTYpQS5kZXN0W0EuZGVzdExlbisrXT1nO2Vsc2UgZm9yKG49dyhBLG9bZy09MjU3XSxzW2ddKSxpPUMoQSx0KSxjPXI9QS5kZXN0TGVuLXcoQSxhW2ldLEJbaV0pO2M8cituOysrYylBLmRlc3RbQS5kZXN0TGVuKytdPUEuZGVzdFtjXX19ZnVuY3Rpb24gZChBKXtmb3IodmFyIGUsdDtBLmJpdGNvdW50Pjg7KUEuc291cmNlSW5kZXgtLSxBLmJpdGNvdW50LT04O2lmKChlPTI1NiooZT1BLnNvdXJjZVtBLnNvdXJjZUluZGV4KzFdKStBLnNvdXJjZVtBLnNvdXJjZUluZGV4XSkhPT0oNjU1MzUmfigyNTYqQS5zb3VyY2VbQS5zb3VyY2VJbmRleCszXStBLnNvdXJjZVtBLnNvdXJjZUluZGV4KzJdKSkpcmV0dXJuLTM7Zm9yKEEuc291cmNlSW5kZXgrPTQsdD1lO3Q7LS10KUEuZGVzdFtBLmRlc3RMZW4rK109QS5zb3VyY2VbQS5zb3VyY2VJbmRleCsrXTtyZXR1cm4gQS5iaXRjb3VudD0wLDB9IWZ1bmN0aW9uKEEsZSl7dmFyIHQ7Zm9yKHQ9MDt0PDc7Kyt0KUEudGFibGVbdF09MDtmb3IoQS50YWJsZVs3XT0yNCxBLnRhYmxlWzhdPTE1MixBLnRhYmxlWzldPTExMix0PTA7dDwyNDsrK3QpQS50cmFuc1t0XT0yNTYrdDtmb3IodD0wO3Q8MTQ0OysrdClBLnRyYW5zWzI0K3RdPXQ7Zm9yKHQ9MDt0PDg7Kyt0KUEudHJhbnNbMTY4K3RdPTI4MCt0O2Zvcih0PTA7dDwxMTI7Kyt0KUEudHJhbnNbMTc2K3RdPTE0NCt0O2Zvcih0PTA7dDw1OysrdCllLnRhYmxlW3RdPTA7Zm9yKGUudGFibGVbNV09MzIsdD0wO3Q8MzI7Kyt0KWUudHJhbnNbdF09dH0oaSxyKSxRKG8scyw0LDMpLFEoYSxCLDIsMSksb1syOF09MCxzWzI4XT0yNTgsQS5leHBvcnRzPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbyxzPW5ldyBuKEEsZSk7ZG97c3dpdGNoKHQ9aChzKSx3KHMsMiwwKSl7Y2FzZSAwOm89ZChzKTticmVhaztjYXNlIDE6bz1NKHMsaSxyKTticmVhaztjYXNlIDI6SShzLHMubHRyZWUscy5kdHJlZSksbz1NKHMscy5sdHJlZSxzLmR0cmVlKTticmVhaztkZWZhdWx0Om89LTN9aWYoMCE9PW8pdGhyb3cgbmV3IEVycm9yKCJEYXRhIGVycm9yIil9d2hpbGUoIXQpO3JldHVybiBzLmRlc3RMZW48cy5kZXN0Lmxlbmd0aD8iZnVuY3Rpb24iPT10eXBlb2Ygcy5kZXN0LnNsaWNlP3MuZGVzdC5zbGljZSgwLHMuZGVzdExlbik6cy5kZXN0LnN1YmFycmF5KDAscy5kZXN0TGVuKTpzLmRlc3R9fSxmdW5jdGlvbihBLGUsdCl7IWZ1bmN0aW9uKEEpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT0idW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQ4QXJyYXk/VWludDhBcnJheTpBcnJheSx0PSIrIi5jaGFyQ29kZUF0KDApLG49Ii8iLmNoYXJDb2RlQXQoMCksaT0iMCIuY2hhckNvZGVBdCgwKSxyPSJhIi5jaGFyQ29kZUF0KDApLG89IkEiLmNoYXJDb2RlQXQoMCkscz0iLSIuY2hhckNvZGVBdCgwKSxhPSJfIi5jaGFyQ29kZUF0KDApO2Z1bmN0aW9uIEIoQSl7dmFyIGU9QS5jaGFyQ29kZUF0KDApO3JldHVybiBlPT09dHx8ZT09PXM/NjI6ZT09PW58fGU9PT1hPzYzOmU8aT8tMTplPGkrMTA/ZS1pKzI2KzI2OmU8bysyNj9lLW86ZTxyKzI2P2UtcisyNjp2b2lkIDB9QS50b0J5dGVBcnJheT1mdW5jdGlvbihBKXt2YXIgdCxuLGkscixvLHM7aWYoQS5sZW5ndGglND4wKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBzdHJpbmcuIExlbmd0aCBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgNCIpO3ZhciBhPUEubGVuZ3RoO289Ij0iPT09QS5jaGFyQXQoYS0yKT8yOiI9Ij09PUEuY2hhckF0KGEtMSk/MTowLHM9bmV3IGUoMypBLmxlbmd0aC80LW8pLGk9bz4wP0EubGVuZ3RoLTQ6QS5sZW5ndGg7dmFyIGM9MDtmdW5jdGlvbiBnKEEpe3NbYysrXT1BfWZvcih0PTAsbj0wO3Q8aTt0Kz00LG4rPTMpZygoMTY3MTE2ODAmKHI9QihBLmNoYXJBdCh0KSk8PDE4fEIoQS5jaGFyQXQodCsxKSk8PDEyfEIoQS5jaGFyQXQodCsyKSk8PDZ8QihBLmNoYXJBdCh0KzMpKSkpPj4xNiksZygoNjUyODAmcik+PjgpLGcoMjU1JnIpO3JldHVybiAyPT09bz9nKDI1NSYocj1CKEEuY2hhckF0KHQpKTw8MnxCKEEuY2hhckF0KHQrMSkpPj40KSk6MT09PW8mJihnKChyPUIoQS5jaGFyQXQodCkpPDwxMHxCKEEuY2hhckF0KHQrMSkpPDw0fEIoQS5jaGFyQXQodCsyKSk+PjIpPj44JjI1NSksZygyNTUmcikpLHN9LEEuZnJvbUJ5dGVBcnJheT1mdW5jdGlvbihBKXt2YXIgZSx0LG4saSxyPUEubGVuZ3RoJTMsbz0iIjtmdW5jdGlvbiBzKEEpe3JldHVybiJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIi5jaGFyQXQoQSl9Zm9yKGU9MCxuPUEubGVuZ3RoLXI7ZTxuO2UrPTMpdD0oQVtlXTw8MTYpKyhBW2UrMV08PDgpK0FbZSsyXSxvKz1zKChpPXQpPj4xOCY2MykrcyhpPj4xMiY2MykrcyhpPj42JjYzKStzKDYzJmkpO3N3aXRjaChyKXtjYXNlIDE6bys9cygodD1BW0EubGVuZ3RoLTFdKT4+Miksbys9cyh0PDw0JjYzKSxvKz0iPT0iO2JyZWFrO2Nhc2UgMjpvKz1zKCh0PShBW0EubGVuZ3RoLTJdPDw4KStBW0EubGVuZ3RoLTFdKT4+MTApLG8rPXModD4+NCY2Myksbys9cyh0PDwyJjYzKSxvKz0iPSJ9cmV0dXJuIG99fShlKX0sZnVuY3Rpb24oQSxlKXsoZnVuY3Rpb24oKXtlLk9QPTAsZS5DTD0xLGUuQ1A9MixlLlFVPTMsZS5HTD00LGUuTlM9NSxlLkVYPTYsZS5TWT03LGUuSVM9OCxlLlBSPTksZS5QTz0xMCxlLk5VPTExLGUuQUw9MTIsZS5ITD0xMyxlLklEPTE0LGUuSU49MTUsZS5IWT0xNixlLkJBPTE3LGUuQkI9MTgsZS5CMj0xOSxlLlpXPTIwLGUuQ009MjEsZS5XSj0yMixlLkgyPTIzLGUuSDM9MjQsZS5KTD0yNSxlLkpWPTI2LGUuSlQ9MjcsZS5SST0yOCxlLkFJPTI5LGUuQks9MzAsZS5DQj0zMSxlLkNKPTMyLGUuQ1I9MzMsZS5MRj0zNCxlLk5MPTM1LGUuU0E9MzYsZS5TRz0zNyxlLlNQPTM4LGUuWFg9Mzl9KS5jYWxsKHRoaXMpfSxmdW5jdGlvbihBLGUpeyhmdW5jdGlvbigpe2UuRElfQlJLPTAsZS5JTl9CUks9MSxlLkNJX0JSSz0yLGUuQ1BfQlJLPTMsZS5QUl9CUks9NCxlLnBhaXJUYWJsZT1bWzQsNCw0LDQsNCw0LDQsNCw0LDQsNCw0LDQsNCw0LDQsNCw0LDQsNCw0LDMsNCw0LDQsNCw0LDQsNF0sWzAsNCw0LDEsMSw0LDQsNCw0LDEsMSwwLDAsMCwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMSw0LDQsNCw0LDEsMSwxLDEsMSwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzQsNCw0LDEsMSwxLDQsNCw0LDEsMSwxLDEsMSwxLDEsMSwxLDEsMSw0LDIsNCwxLDEsMSwxLDEsMV0sWzEsNCw0LDEsMSwxLDQsNCw0LDEsMSwxLDEsMSwxLDEsMSwxLDEsMSw0LDIsNCwxLDEsMSwxLDEsMV0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMCwwLDAsMCwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMCwwLDAsMCwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMCwxLDAsMCwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMCwxLDEsMSwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDAsMCwxLDEsMSwxLDAsMSwxLDAsMCw0LDIsNCwxLDEsMSwxLDEsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDAsMCwxLDEsMSwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDEsMSwxLDEsMSwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDAsMCwxLDEsMSwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDAsMCwxLDEsMSwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMSwwLDAsMCwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMCwwLDAsMCwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMCwxLDQsNCw0LDAsMCwxLDAsMCwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsNCw0LDEsMCwxLDQsNCw0LDAsMCwwLDAsMCwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDEsMSwxLDEsMSwxLDEsMSwxLDEsMSw0LDIsNCwxLDEsMSwxLDEsMV0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMCwwLDAsMCwwLDAsMSwxLDAsNCw0LDIsNCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0LDAsMCwwLDAsMCwwLDAsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDAsMCwxLDEsMSwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMF0sWzEsNCw0LDEsMSwxLDQsNCw0LDEsMSwxLDEsMSwxLDEsMSwxLDEsMSw0LDIsNCwxLDEsMSwxLDEsMV0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMSwwLDAsMCwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwxLDEsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMSwwLDAsMCwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDEsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMSwwLDAsMCwwLDEsMSwxLDAsMCw0LDIsNCwxLDEsMSwxLDAsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMSwwLDAsMCwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwxLDEsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMSwwLDAsMCwwLDEsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDEsMF0sWzAsNCw0LDEsMSwxLDQsNCw0LDAsMCwwLDAsMCwwLDAsMSwxLDAsMCw0LDIsNCwwLDAsMCwwLDAsMV1dfSkuY2FsbCh0aGlzKX0sZnVuY3Rpb24oQSxlLHQpeyhmdW5jdGlvbihBKXsoZnVuY3Rpb24oKXt2YXIgbixpLHIsbyxzLGEsQixjLGcsRSxRLHUsbCxoLHcsQztDPXQoNDc2KSxuPUMuQ1Iscz1DLkxGLGk9Qy5Db250cm9sLHI9Qy5FeHRlbmQsYz1DLlJlZ2lvbmFsX0luZGljYXRvcixnPUMuU3BhY2luZ01hcmssbz1DLkwsdT1DLlYsRT1DLlQsYT1DLkxWLEI9Qy5MVlQsUT10KDExNiksbD1uZXcgUShBKCJBQTRRQUFBQUFBQUFBSGJnQVFnRzkvbnRta3VJWGpVVXh6TityM2s0YlVXUVZvdFNIVkNzb292NnFJb2lUb1dLRll2TXVMSFZ0bGFvTHFRaWxMcnd0YWt1eEZZb0xtUVFZV2FsUllwVUtZSlYwYW00bU1Vb29vamdTRUc3RUMyQ2RpSHEvM3J6TWNjMHlUMzMzanl1MHh6NGtkd2tOK2NrT1huY2ZOOVFTNGp6d0Nxd0Jxd0h0NU8wdXVGR3NCbHNBaE9NOGx2QVRrditMckFiN0FYUGdSZkJBZkFxZUoyVW13WnZnY1BnS0RnR2pvTlpNQWUrQU4rQzVXMGhMZ0FYdHZOM0taY2k3VXB3RlZnSGJnSGpZQVBZSko4bndDVFlDbmFRNThkSStjZkJIdm44REZnTDlrbDlMeVA4TExPZmxKOENNK1E1SzM5SVBvLzI4dmZleWQ2WDhmY1IvNWpZUDR2NG5IeWVSL2lOakM4Z1BBbCtCVStUOHFjUkZ4MGhCc0dLem4vNzRMcmVJcmRLeHNHa1JPMHpFNDh3eTdsbVpTZm5Za21XZGhuQ3RUSytvSG5uV3FVUGJ1eVk2NzlONXQySjhCNFpueVRsdHlLK0RlenE1UDYyRytGZW1mK3NEUGRwNm44SmFRY3Rlck41TldYSjUvSWorRm5HUjBuNkJ2Q2JaazRrd2pHampPOHJHaDl3b2VkTm91ZHRCejZWU0NRU2lVUWlrVWdrRW9tRVQ5N3Q1SGRwL2VjdkdmY1hIK0NkV2ZMTnU2b254R293aDdTdlpQcDNDRStBNjN2NWZlQkp4TWNRUHlYei8wRDROMmgxOCtjUmhFY1FudCsxNjc0SStRK2lub2ZBTnJBZDdBQVBnNTI5bEpmeVVsN0tTM211OCs0Rzk0SDdlL0gzclBXUmlkMytSR0lwYzBuQkdiQXVFNjNGMzlWVjFtalM2UG40VkN2KytqTjliczRKTU01Z2JGU0lkYU5ucGorcHBFM2orUVFZV3liRUE4dnl0UDBJUHdGL2dwWExzUStBaFdIMHhZZ1FQd3dKTVRqQTQ2WVJYcm5WdzR2eHpZanZrZThkenZReDYwZ2tFb25FMHVRQTlvVTN3QjA0Sjd5SC9mRERWdjQvait4L1FxZkpYdjBSdUV1ZUplN3Q1dmtUQ0xlUTg4VjJ6VmtqcSt0UnBEL1J6ZiszOWhUQzU1bG5raGRRYnIrbDdFSGtUWkg4R2NUblNmNGhrcGY5Lyt1STU3TlFGVDZIVFNzQzZoTVlnM25vL0ZyVEY5ODNzSDg0RkozeE5scm90ZU9mUVdOVHArOHZML0NaZWVYNW1nYjYyQTJ3NldhRFhhLzlELzZEZUZUYWZxd0JmWHRGVDRpcndhY09iTW5tNTAvZFBQd0Y0ZS9ncndhMGtVc1R4aU1FblFiY1k5WmxzRFh3TDRpeU9JZkVCNWp2Y0VnU1QxTC91L1Bqa1A3dmN0emFaemt1SlpTZXBrbnNNYXc2N2pRMHhaZTYxRjJYeXZaNWsvZWNKcTR2b1h6UTFvWldRUm0xRGwxWkgwTHRpaVZOOHBVbXk5blFENzdicHB1VExxV2wxTzlDaCs5dnY5RGZtMTJDT3JacU9yWFJKdjEzVFg2aTAwWEh5SVNMTmFtcDMvZTZlV1dhYjl4eW9ZU3IxK1hlVW9XdWc3WldGVG9uaExEUE85TThwT1g3Y1ZId2JobjdZdTFWYW50QzYxWnRNUFdoYWlNdFgwWVhwMXdzZjdYNXA2NXNXL09zbG5YcFYzWHJOODAzV25lWGxDMHp2ajVFWjVzUC82eXlYc1FRMDFyUlZkSlYvK1hXWFVaL3JQbXA3Z2Y5ZE51Wm9Lak9tT09aaWJxdjZmWTQzZmk2YnA5cGZvWHlMMXRaMHg1Rnk2dStVY1ZPcm0xRlp4ZE9QUzdPTGk3c0ZhS2FYdCsyYy9YNzFxRUxxYmhjRDR2OHdnUm5iNitycjQ1OXJxZ3IzSDVUMjF0bXphMHIzTE9uai82b1drY21uUDZwYTdPUHZ2ZTlkdm1xbStQRDFIZHRleVAzZTd4c1gvbWNLN1kyNnRKVjBiWGZWSS92T2E5Ylozd0liUzlucmFlaEtIaUgyNDhjbi9LeHRwWDFiVjNiUW9wdG5HeCtTOU5EMnh1am42am8ra3UzSnZpYzE2b08zZGpvN0Nzcm5IV2RNMWRkOVVQUi9PRlE5cnRLbDJaYVE0dmFXV2U5S0dPelNWOGRjZW5QWmR2aFVueTFRWmRXMWNlNGZ1aFNkR3VZYi9GMWg4SVYzL1BQbFIwK3BPeWE2ZG9mZFB1RGJ0OG91Zzl1aXMrWXZndXFqaUhublZEejFLYmZSMzA2MzdmMVk1VSsxbzJWclZ4Wk1YMzdxdmZjb2YxWEp6RnRDS0c3NnBsSkNKN2ZoVHEvRkowaHFJL0ZGdE1hR1dPdjY5dmpVc3JlUFpUWlEzMzFoOGxtMDdkajFmcENuMkZpM0VYMDlhdG4yTDZZbnN2NEFGZlVlcm5qNEh1Y2JHYzhkVTB3K2FETCs0TTZZbXRMWDB6M0k3SGE0RnBuMWJ1Zkt1Y2NrMi9ZZkloclAzZGZjaTBoNXB1djlUZlVQczIxZzhiYm12elFaNHRRZmhOU2l1WjRIVnpwNHJTaFRIdDlpY2wybDMxWVZUcUI2RXVzODFwZC9VMnh1d3l4cFlyTlBzaWsxd0NvREVabXlETWpDbVhGWlZ0VjhkMTJEcW9NaXpQN3pDZWg5YW55RHc9PSIsImJhc2U2NCIpKSxoPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpO3JldHVybiBlPWV8fDAsNTUyOTY8PSh0PUEuY2hhckNvZGVBdChlKSkmJnQ8PTU2MzE5PyhuPXQsNTYzMjA8PShpPUEuY2hhckNvZGVBdChlKzEpKSYmaTw9NTczNDM/MTAyNCoobi01NTI5NikrKGktNTYzMjApKzY1NTM2Om4pOjU2MzIwPD10JiZ0PD01NzM0Mz8oaT10LDU1Mjk2PD0obj1BLmNoYXJDb2RlQXQoZS0xKSkmJm48PTU2MzE5PzEwMjQqKG4tNTUyOTYpKyhpLTU2MzIwKSs2NTUzNjppKTp0fSx3PWZ1bmN0aW9uKEEsZSl7cmV0dXJuKEEhPT1ufHxlIT09cykmJihBPT09aXx8QT09PW58fEE9PT1zfHwoZT09PWl8fGU9PT1ufHxlPT09c3x8KEEhPT1vfHxlIT09byYmZSE9PXUmJmUhPT1hJiZlIT09QikmJigoQSE9PWEmJkEhPT11fHxlIT09dSYmZSE9PUUpJiYoKEEhPT1CJiZBIT09RXx8ZSE9PUUpJiYoKEEhPT1jfHxlIT09YykmJihlIT09ciYmZSE9PWcpKSkpKSl9LGUubmV4dEJyZWFrPWZ1bmN0aW9uKEEsZSl7dmFyIHQsbixpLHIsbyxzLGE7aWYobnVsbD09ZSYmKGU9MCksZTwwKXJldHVybiAwO2lmKGU+PUEubGVuZ3RoLTEpcmV0dXJuIEEubGVuZ3RoO2ZvcihpPWwuZ2V0KGgoQSxlKSksdD1yPWUrMSxvPUEubGVuZ3RoO3I8bzt0PXIrPTEpaWYoISg1NTI5Njw9KHM9QS5jaGFyQ29kZUF0KHQtMSkpJiZzPD01NjMxOSYmNTYzMjA8PShhPUEuY2hhckNvZGVBdCh0KSkmJmE8PTU3MzQzKSl7aWYobj1sLmdldChoKEEsdCkpLHcoaSxuKSlyZXR1cm4gdDtpPW59cmV0dXJuIEEubGVuZ3RofSxlLnByZXZpb3VzQnJlYWs9ZnVuY3Rpb24oQSxlKXt2YXIgdCxuLGkscixvLHM7aWYobnVsbD09ZSYmKGU9QS5sZW5ndGgpLGU+QS5sZW5ndGgpcmV0dXJuIEEubGVuZ3RoO2lmKGU8PTEpcmV0dXJuIDA7Zm9yKGUtLSxuPWwuZ2V0KGgoQSxlKSksdD1yPWUtMTtyPj0wO3Q9cis9LTEpaWYoISg1NTI5Njw9KG89QS5jaGFyQ29kZUF0KHQpKSYmbzw9NTYzMTkmJjU2MzIwPD0ocz1BLmNoYXJDb2RlQXQodCsxKSkmJnM8PTU3MzQzKSl7aWYoaT1sLmdldChoKEEsdCkpLHcoaSxuKSlyZXR1cm4gdCsxO249aX1yZXR1cm4gMH0sZS5icmVhaz1mdW5jdGlvbihBKXt2YXIgdCxuLGk7Zm9yKGk9W10sbj0wOyh0PWUubmV4dEJyZWFrKEEsbikpPEEubGVuZ3RoOylpLnB1c2goQS5zbGljZShuLHQpKSxuPXQ7cmV0dXJuIG48QS5sZW5ndGgmJmkucHVzaChBLnNsaWNlKG4pKSxpfSxlLmNvdW50QnJlYWtzPWZ1bmN0aW9uKEEpe3ZhciB0LG4saTtmb3Iobj0wLGk9MDsodD1lLm5leHRCcmVhayhBLGkpKTxBLmxlbmd0aDspaT10LG4rKztyZXR1cm4gaTxBLmxlbmd0aCYmbisrLG59fSkuY2FsbCh0aGlzKX0pLmNhbGwodGhpcyx0KDIwKS5CdWZmZXIpfSxmdW5jdGlvbihBKXtBLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJPdGhlciI6MCwiQ1IiOjEsIkxGIjoyLCJDb250cm9sIjozLCJFeHRlbmQiOjQsIlJlZ2lvbmFsX0luZGljYXRvciI6NSwiU3BhY2luZ01hcmsiOjYsIkwiOjcsIlYiOjgsIlQiOjksIkxWIjoxMCwiTFZUIjoxMX0nKX0sZnVuY3Rpb24oQSxlKXtBLmV4cG9ydHM9Ii5zY3JhdGNoLXJlbmRlci1vdmVybGF5cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uc2NyYXRjaC1yZW5kZXItb3ZlcmxheXMgPiAqIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG59XG4ifSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDQ3OSksaT10KDQ4NCkscj10KDczKSxvPXQoMTE3KSxzPXQoNzQpO0EuZXhwb3J0cz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZGVmYXVsdEFzc2V0SWQ9e30sdGhpcy5idWlsdGluSGVscGVyPW5ldyBuKHRoaXMpLHRoaXMud2ViSGVscGVyPW5ldyBpKHRoaXMpLHRoaXMuYnVpbHRpbkhlbHBlci5yZWdpc3RlckRlZmF1bHRBc3NldHModGhpcyksdGhpcy5faGVscGVycz1be2hlbHBlcjp0aGlzLmJ1aWx0aW5IZWxwZXIscHJpb3JpdHk6MTAwfSx7aGVscGVyOnRoaXMud2ViSGVscGVyLHByaW9yaXR5Oi0xMDB9XX1nZXQgQXNzZXQoKXtyZXR1cm4gcn1nZXQgQXNzZXRUeXBlKCl7cmV0dXJuIG99Z2V0IERhdGFGb3JtYXQoKXtyZXR1cm4gc31zdGF0aWMgZ2V0IEFzc2V0KCl7cmV0dXJuIHJ9c3RhdGljIGdldCBBc3NldFR5cGUoKXtyZXR1cm4gb31hZGRIZWxwZXIoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjA7dGhpcy5faGVscGVycy5wdXNoKHtoZWxwZXI6QSxwcmlvcml0eTplfSksdGhpcy5faGVscGVycy5zb3J0KChBLGUpPT5lLnByaW9yaXR5LUEucHJpb3JpdHkpfWdldChBKXtyZXR1cm4gdGhpcy5idWlsdGluSGVscGVyLmdldChBKX1jYWNoZShBLGUsdCxuKXtyZXR1cm4gdGhpcy5idWlsdGluSGVscGVyLl9zdG9yZShBLGUsdCxuKX1jcmVhdGVBc3NldChBLGUsdCxuLGkpe2lmKCFlKXRocm93IG5ldyBFcnJvcigiVHJpZWQgdG8gY3JlYXRlIGFzc2V0IHdpdGhvdXQgYSBkYXRhRm9ybWF0Iik7cmV0dXJuIG5ldyByKEEsbixlLHQsaSl9YWRkV2ViU3RvcmUoQSxlLHQsbil7dGhpcy53ZWJIZWxwZXIuYWRkU3RvcmUoQSxlLHQsbil9YWRkV2ViU291cmNlKEEsZSl7dGhpcy5hZGRXZWJTdG9yZShBLGUpfWdldERlZmF1bHRBc3NldElkKEEpe2lmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLmRlZmF1bHRBc3NldElkLEEubmFtZSkpcmV0dXJuIHRoaXMuZGVmYXVsdEFzc2V0SWRbQS5uYW1lXX1zZXREZWZhdWx0QXNzZXRJZChBLGUpe3RoaXMuZGVmYXVsdEFzc2V0SWRbQS5uYW1lXT1lfWxvYWQoQSxlLHQpe2NvbnN0IG49dGhpcy5faGVscGVycy5tYXAoQT0+QS5oZWxwZXIpLGk9W107dD10fHxBLnJ1bnRpbWVGb3JtYXQ7bGV0IHIsbz0wO2NvbnN0IHM9YT0+e2lmKGEmJmkucHVzaChhKSxyPW5bbysrXSxyKXtjb25zdCBuPXIubG9hZChBLGUsdCk7cmV0dXJuIG51bGw9PT1uP3MoKTpuLmNhdGNoKHMpfXJldHVybiBpLmxlbmd0aD4wP1Byb21pc2UucmVqZWN0KGkpOlByb21pc2UucmVzb2x2ZShudWxsKX07cmV0dXJuIHMoKX1zdG9yZShBLGUsdCxuKXtyZXR1cm4gZT1lfHxBLnJ1bnRpbWVGb3JtYXQsbmV3IFByb21pc2UoKGkscik9PnRoaXMud2ViSGVscGVyLnN0b3JlKEEsZSx0LG4pLnRoZW4obj0+KHRoaXMuYnVpbHRpbkhlbHBlci5fc3RvcmUoQSxlLHQsbi5pZCksaShuKSkpLmNhdGNoKEE9PnIoQSkpKX19fSxmdW5jdGlvbihBLGUsdCl7KGZ1bmN0aW9uKGUpe2NvbnN0IG49dCgzMiksaT10KDczKSxyPXQoMTE3KSxvPXQoNzQpLHM9dCgxMTgpLGE9W3t0eXBlOnIuSW1hZ2VCaXRtYXAsZm9ybWF0Om8uUE5HLGlkOm51bGwsZGF0YTplLmZyb20odCg0ODEpKX0se3R5cGU6ci5Tb3VuZCxmb3JtYXQ6by5XQVYsaWQ6bnVsbCxkYXRhOmUuZnJvbSh0KDQ4MikpfSx7dHlwZTpyLkltYWdlVmVjdG9yLGZvcm1hdDpvLlNWRyxpZDpudWxsLGRhdGE6ZS5mcm9tKHQoNDgzKSl9XSxCPWEuY29uY2F0KFtdKTtBLmV4cG9ydHM9Y2xhc3MgZXh0ZW5kcyBze2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpLHRoaXMuYXNzZXRzPXt9LEIuZm9yRWFjaChBPT57QS5pZD10aGlzLl9zdG9yZShBLnR5cGUsQS5mb3JtYXQsQS5kYXRhLEEuaWQpfSl9cmVnaXN0ZXJEZWZhdWx0QXNzZXRzKCl7Y29uc3QgQT1hLmxlbmd0aDtmb3IobGV0IGU9MDtlPEE7KytlKXtjb25zdCBBPWFbZV07dGhpcy5wYXJlbnQuc2V0RGVmYXVsdEFzc2V0SWQoQS50eXBlLEEuaWQpfX1nZXQoQSl7bGV0IGU9bnVsbDtpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5hc3NldHMsQSkpe2NvbnN0IHQ9dGhpcy5hc3NldHNbQV07ZT1uZXcgaSh0LnR5cGUsdC5pZCx0LmZvcm1hdCx0LmRhdGEpfXJldHVybiBlfWNhY2hlKEEsZSx0LG4pe3JldHVybiB0aGlzLnN0b3JlKEEsZSx0LG4pfXN0b3JlKEEsZSx0LG4pe3JldHVybiB0aGlzLl9zdG9yZShBLGUsdCxuKX1fc3RvcmUoQSxlLHQsaSl7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJEYXRhIGNhY2hlZCB3aXRob3V0IHNwZWNpZnlpbmcgaXRzIGZvcm1hdCIpO2lmKCIiIT09aSYmbnVsbCE9aSl7aWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuYXNzZXRzLGkpJiZBLmltbXV0YWJsZSlyZXR1cm4gaX1lbHNle2lmKCFBLmltbXV0YWJsZSl0aHJvdyBuZXcgRXJyb3IoIlRyaWVkIHRvIGNhY2hlIGRhdGEgd2l0aG91dCBhbiBpZCIpO2k9bih0KX1yZXR1cm4gdGhpcy5hc3NldHNbaV09e3R5cGU6QSxmb3JtYXQ6ZSxpZDppLGRhdGE6dH0saX1sb2FkKEEsZSl7cmV0dXJuIHRoaXMuZ2V0KGUpP1Byb21pc2UucmVzb2x2ZSh0aGlzLmdldChlKSk6bnVsbH19fSkuY2FsbCh0aGlzLHQoMjApLkJ1ZmZlcil9LGZ1bmN0aW9uKEEsZSx0KXsidXNlIHN0cmljdCI7ZS5ieXRlTGVuZ3RoPWZ1bmN0aW9uKEEpe3ZhciBlPUIoQSksdD1lWzBdLG49ZVsxXTtyZXR1cm4gMyoodCtuKS80LW59LGUudG9CeXRlQXJyYXk9ZnVuY3Rpb24oQSl7Zm9yKHZhciBlLHQ9QihBKSxuPXRbMF0sbz10WzFdLHM9bmV3IHIoZnVuY3Rpb24oQSxlLHQpe3JldHVybiAzKihlK3QpLzQtdH0oMCxuLG8pKSxhPTAsYz1vPjA/bi00Om4sZz0wO2c8YztnKz00KWU9aVtBLmNoYXJDb2RlQXQoZyldPDwxOHxpW0EuY2hhckNvZGVBdChnKzEpXTw8MTJ8aVtBLmNoYXJDb2RlQXQoZysyKV08PDZ8aVtBLmNoYXJDb2RlQXQoZyszKV0sc1thKytdPWU+PjE2JjI1NSxzW2ErK109ZT4+OCYyNTUsc1thKytdPTI1NSZlOzI9PT1vJiYoZT1pW0EuY2hhckNvZGVBdChnKV08PDJ8aVtBLmNoYXJDb2RlQXQoZysxKV0+PjQsc1thKytdPTI1NSZlKTsxPT09byYmKGU9aVtBLmNoYXJDb2RlQXQoZyldPDwxMHxpW0EuY2hhckNvZGVBdChnKzEpXTw8NHxpW0EuY2hhckNvZGVBdChnKzIpXT4+MixzW2ErK109ZT4+OCYyNTUsc1thKytdPTI1NSZlKTtyZXR1cm4gc30sZS5mcm9tQnl0ZUFycmF5PWZ1bmN0aW9uKEEpe2Zvcih2YXIgZSx0PUEubGVuZ3RoLGk9dCUzLHI9W10sbz0wLHM9dC1pO288cztvKz0xNjM4MylyLnB1c2goYyhBLG8sbysxNjM4Mz5zP3M6bysxNjM4MykpOzE9PT1pPyhlPUFbdC0xXSxyLnB1c2gobltlPj4yXStuW2U8PDQmNjNdKyI9PSIpKToyPT09aSYmKGU9KEFbdC0yXTw8OCkrQVt0LTFdLHIucHVzaChuW2U+PjEwXStuW2U+PjQmNjNdK25bZTw8MiY2M10rIj0iKSk7cmV0dXJuIHIuam9pbigiIil9O2Zvcih2YXIgbj1bXSxpPVtdLHI9InVuZGVmaW5lZCIhPXR5cGVvZiBVaW50OEFycmF5P1VpbnQ4QXJyYXk6QXJyYXksbz0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIscz0wLGE9by5sZW5ndGg7czxhOysrcyluW3NdPW9bc10saVtvLmNoYXJDb2RlQXQocyldPXM7ZnVuY3Rpb24gQihBKXt2YXIgZT1BLmxlbmd0aDtpZihlJTQ+MCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgc3RyaW5nLiBMZW5ndGggbXVzdCBiZSBhIG11bHRpcGxlIG9mIDQiKTt2YXIgdD1BLmluZGV4T2YoIj0iKTtyZXR1cm4tMT09PXQmJih0PWUpLFt0LHQ9PT1lPzA6NC10JTRdfWZ1bmN0aW9uIGMoQSxlLHQpe2Zvcih2YXIgaSxyLG89W10scz1lO3M8dDtzKz0zKWk9KEFbc108PDE2JjE2NzExNjgwKSsoQVtzKzFdPDw4JjY1MjgwKSsoMjU1JkFbcysyXSksby5wdXNoKG5bKHI9aSk+PjE4JjYzXStuW3I+PjEyJjYzXStuW3I+PjYmNjNdK25bNjMmcl0pO3JldHVybiBvLmpvaW4oIiIpfWlbIi0iLmNoYXJDb2RlQXQoMCldPTYyLGlbIl8iLmNoYXJDb2RlQXQoMCldPTYzfSxmdW5jdGlvbihBLGUsdCl7QS5leHBvcnRzPXQoNzUpKCJpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBSUFBQUFDQUNBQUFBQURtVlQ0WEFBQURaRWxFUVZSNDJ1M2E3MHZiUUJnSDhPLzd2T2lidnNtYkZVRUVXVUdHVWhRMjVuRHVoU0tJVUZEeGxZaTBTQWQ5NGF0Um1GaUhDSDJ4NFc4aWlOdHdvd1hSZ2QxUWlwSllZM04vMUY0a1RRNlhMS1M5eXlIY3ZXeU84TW5UNXk1M1R3NUVjSU1FU0lBRVNJQUVTSUFFU0lBRVBGVkFxLzZsOEc0b0FRQ3A0YW5pd2JVVko2QlZ6YWZ3cUtYeTFWWk1nTmIrQ0h6YnlLNFpCK0JpMG5uazBWeWhzRGlTb0FtdnZuTUhtR1VWQUY2VUcrMGZmc3hSaHNSSGt5L0F5Q3NBVXB1bVgwd0FBSXM2VDRDeERBRER0Y2Rac2FsNmdqbWRIOEFzQUVDNitzOEZhNDhTRkV4ZUFLdXNBRWp1K1YzNjdBbVVDaTlBTlEwQVUzcHdjT3cyY01FSDBGd0FBS3o1WDIyOHBSTFI1QUk0VGdJQXRJREwyNG9MVUU5NEFCNlc3THNIL2NPTk4xNElsaDQ0QU9xRDlzMkxRUjFLSGlCOXpnR2dPU0dldUEzb2NQck1FMVE0QU5hY2V5ZVBBenJjakhtQVpZczlJQmVXNC9mekhpQXdUQ3dBZ1RsZTlBQ1pLNDRBTERUOWU2eDdnTDRhVDBCUUNIYjRBcWdBNS8xVFRPTUxvSjd2WlNNTTBIL0dIbkNlRG51K0NyVTh2R1lQY041RkFEQllEMHZDYVlQRHkraTBwMzM3R1NNc1MxWjR2QTN0OVFnQVpUdDBJdUl4RlJQU0tpY0FRSGx2aGszRlhGNUdoQkJ5TWE4cW8vc0JPNkJhcnd1WWJZclluRktEWUV2RTdwaEtnY3h2RVFCcW52aGdpUUNVT2dvQU80QzNKT1MzTC9odjIzVVh4VmxkQkVDZmN1ZUFxcEFhMFdHeS9RZVVMUkVBWTZhVFhSRkRnQnVBMTMrRWxPbmNBRVJNQUdhQTloQlFENGdRUUhzSVJFMUFab0QyeHJnUVM1bk9aeUhnRkttV0RTSUc0R1JBVmlkaUFFNEdSQjZBekFCMkFLSVBRRmFBNW15SEE1QVY0RVNOdWdaaEM3QkxSNTBsSUJQQWVicnpCR1FDS0FGUU5TSU1jRHZSVFFJd0FIeE5BcE0zUkJ5Z0dLMHV5aHh3T3dHc1BBZ0VuUFdqNXljUkNOaUp0QkhsQUNoR0tRVndBTnpQWStDWFNNRE5XSVNpTEE5QWZSQTVJaEpRNjhVbm9RQXQrQXRPUElCS2hKb3NGOEI2VU0weUxrQXhRazJXQ3lEWDlTaVVoMWdrUUFJa29DdUF2akd1cXVNYnVpakF0d0c3TVBMOHlCSUNPSFNQazNXOE5lOEtjRVVkbUJpNkZBRFlvcytRbGVJSDBOL29nT3hkN0FENnVBUzZXUlU4V2NCZGxnWk1HL0VuWVVsd0VwTExvUTRQanpHYmlBNVVzUk1Sc2JRKzV6aURKbVlxSnVSNk5hTW9tZFh1RnVaeVBTQUJFaUFCRWlBQkVpQUJFaUFjOEJkNlZ5dkNFS0dxY1FBQUFBQkpSVTVFcmtKZ2dnPT0iKX0sZnVuY3Rpb24oQSxlLHQpe0EuZXhwb3J0cz10KDc1KSgiVWtsR1JpWUFBQUJYUVZaRlptMTBJQkFBQUFBQkFBRUFJbFlBQUVTc0FBQUNBQkFBWkdGMFlRSUFBQUFBQUE9PSIpfSxmdW5jdGlvbihBLGUsdCl7QS5leHBvcnRzPXQoNzUpKCJQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJajgrQ2p4emRtY2dkMmxrZEdnOUlqRXlPQ0lnYUdWcFoyaDBQU0l4TWpnaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2VHMXNibk02YzNablBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SStDaUE4Wno0S0lDQThjbVZqZENCbWFXeHNQU0lqUTBORElpQm9aV2xuYUhROUlqRXlPQ0lnZDJsa2RHZzlJakV5T0NJdlBnb2dJRHgwWlhoMElHWnBiR3c5SW1Kc1lXTnJJaUI1UFNJeE1EY2lJSGc5SWpNMUxqVWlJR1p2Ym5RdGMybDZaVDBpTVRJNElqNC9QQzkwWlhoMFBnb2dQQzluUGdvOEwzTjJaejRLIil9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNzMpLGk9dCgxMTgpLHI9dCg0ODUpLG89QT0+InN0cmluZyI9PXR5cGVvZiBBP3t1cmw6QX06QTtBLmV4cG9ydHM9Y2xhc3MgZXh0ZW5kcyBpe2NvbnN0cnVjdG9yKEEpe3N1cGVyKEEpLHRoaXMuc3RvcmVzPVtdLHRoaXMuYXNzZXRUb29sPW5ldyByLHRoaXMucHJvamVjdFRvb2w9bmV3IHIoci5UT09MX0ZJTFRFUi5SRUFEWSl9YWRkU291cmNlKEEsZSl7dGhpcy5hZGRTdG9yZShBLGUpfWFkZFN0b3JlKEEsZSx0LG4pe3RoaXMuc3RvcmVzLnB1c2goe3R5cGVzOkEubWFwKEE9PkEubmFtZSksZ2V0OmUsY3JlYXRlOnQsdXBkYXRlOm59KX1sb2FkKEEsZSx0KXtjb25zdCBpPVtdLHI9dGhpcy5zdG9yZXMuc2xpY2UoKS5maWx0ZXIoZT0+ZS50eXBlcy5pbmRleE9mKEEubmFtZSk+PTApLHM9bmV3IG4oQSxlLHQpO2xldCBhPXRoaXMuYXNzZXRUb29sOyJQcm9qZWN0Ij09PUEubmFtZSYmKGE9dGhpcy5wcm9qZWN0VG9vbCk7bGV0IEI9MDtjb25zdCBjPUE9PntBJiZpLnB1c2goQSk7Y29uc3QgZT1yW0IrK10sbj1lJiZlLmdldDtpZihuKXtjb25zdCBBPW8obihzKSk7cmV0dXJuITE9PT1BP2MoKTphLmdldChBKS50aGVuKEE9PkE/KHMuc2V0RGF0YShBLHQpLHMpOmMoKSkuY2F0Y2goYyl9cmV0dXJuIGkubGVuZ3RoPjA/UHJvbWlzZS5yZWplY3QoaSk6UHJvbWlzZS5yZXNvbHZlKG51bGwpfTtyZXR1cm4gYygpfXN0b3JlKEEsZSx0LGkpe2NvbnN0IHI9bmV3IG4oQSxpLGUpLHM9IiI9PT1pfHxudWxsPT1pLGE9dGhpcy5zdG9yZXMuZmlsdGVyKGU9Pi0xIT09ZS50eXBlcy5pbmRleE9mKEEubmFtZSkmJihzJiZlLmNyZWF0ZXx8ZS51cGRhdGUpKVswXSxCPXM/InBvc3QiOiJwdXQiO2lmKCFhKXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIk5vIGFwcHJvcHJpYXRlIHN0b3JlcyIpKTtsZXQgYz10aGlzLmFzc2V0VG9vbDsiUHJvamVjdCI9PT1BLm5hbWUmJihjPXRoaXMucHJvamVjdFRvb2wpO2NvbnN0IGc9byhzP2EuY3JlYXRlKHIpOmEudXBkYXRlKHIpKSxFPU9iamVjdC5hc3NpZ24oe2JvZHk6dCxtZXRob2Q6Qn0sZyk7cmV0dXJuIGMuc2VuZChFKS50aGVuKEE9PntpZigic3RyaW5nIj09dHlwZW9mIEEpdHJ5e0E9SlNPTi5wYXJzZShBKX1jYXRjaChlKXtyZXR1cm4gQX1yZXR1cm4gT2JqZWN0LmFzc2lnbih7aWQ6QVsiY29udGVudC1uYW1lIl18fGl9LEEpfSl9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0ODYpLGk9dCg0ODgpO2NsYXNzIHJ7Y29uc3RydWN0b3IoKXtsZXQgQTtBPShhcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06ci5UT09MX0ZJTFRFUi5BTEwpPT09ci5UT09MX0ZJTFRFUi5SRUFEWT9bbmV3IGldOltuZXcgbixuZXcgaV0sdGhpcy50b29scz1BfWdldCBpc0dldFN1cHBvcnRlZCgpe3JldHVybiB0aGlzLnRvb2xzLnNvbWUoQT0+QS5pc0dldFN1cHBvcnRlZCl9Z2V0KEEpe2xldCBlPTA7Y29uc3QgdD1uPT57Y29uc3QgaT10aGlzLnRvb2xzW2UrK107aWYoIWkpdGhyb3cgbjtyZXR1cm4gaS5pc0dldFN1cHBvcnRlZD9pLmdldChBKS5jYXRjaCh0KTp0KG4pfTtyZXR1cm4gdCgpfWdldCBpc1NlbmRTdXBwb3J0ZWQoKXtyZXR1cm4gdGhpcy50b29scy5zb21lKEE9PkEuaXNTZW5kU3VwcG9ydGVkKX1zZW5kKEEpe2xldCBlPTA7Y29uc3QgdD1uPT57Y29uc3QgaT10aGlzLnRvb2xzW2UrK107aWYoIWkpdGhyb3cgbjtyZXR1cm4gaS5pc1NlbmRTdXBwb3J0ZWQ/aS5zZW5kKEEpLmNhdGNoKHQpOnQobil9O3JldHVybiB0KCl9fXIuVE9PTF9GSUxURVI9e0FMTDoiYWxsIixSRUFEWToicmVhZHkifSxBLmV4cG9ydHM9cn0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49WyJ1cmwiXTtjbGFzcyBpe2NvbnN0cnVjdG9yKCl7dGhpcy5fd29ya2VyU3VwcG9ydD17ZmV0Y2g6InVuZGVmaW5lZCIhPXR5cGVvZiBmZXRjaH0sdGhpcy5fc3VwcG9ydEVycm9yPW51bGwsdGhpcy53b3JrZXI9bnVsbCx0aGlzLmpvYnM9e307dHJ5e2lmKHRoaXMuaXNHZXRTdXBwb3J0ZWQpe2NvbnN0IEE9dCg0ODcpO3RoaXMud29ya2VyPW5ldyBBLHRoaXMud29ya2VyLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLEE9PntsZXR7ZGF0YTplfT1BO2lmKGUuc3VwcG9ydCl0aGlzLl93b3JrZXJTdXBwb3J0PWUuc3VwcG9ydDtlbHNlIGZvcihjb25zdCBBIG9mIGUpdGhpcy5qb2JzW0EuaWRdJiYoQS5lcnJvcj90aGlzLmpvYnNbQS5pZF0ucmVqZWN0KEEuZXJyb3IpOnRoaXMuam9ic1tBLmlkXS5yZXNvbHZlKEEuYnVmZmVyKSxkZWxldGUgdGhpcy5qb2JzW0EuaWRdKX0pfX1jYXRjaChBKXt0aGlzLl9zdXBwb3J0RXJyb3I9QX19Z2V0IGlzR2V0U3VwcG9ydGVkKCl7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBXb3JrZXImJnRoaXMuX3dvcmtlclN1cHBvcnQuZmV0Y2gmJiF0aGlzLl9zdXBwb3J0RXJyb3J9Z2V0KEEpe2xldHt1cmw6ZX09QSx0PWZ1bmN0aW9uKEEsZSl7aWYobnVsbD09QSlyZXR1cm57fTt2YXIgdCxuLGk9ZnVuY3Rpb24oQSxlKXtpZihudWxsPT1BKXJldHVybnt9O3ZhciB0PXt9O2Zvcih2YXIgbiBpbiBBKWlmKHt9Lmhhc093blByb3BlcnR5LmNhbGwoQSxuKSl7aWYoLTEhPT1lLmluZGV4T2YobikpY29udGludWU7dFtuXT1BW25dfXJldHVybiB0fShBLGUpO2lmKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpe3ZhciByPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoQSk7Zm9yKG49MDtuPHIubGVuZ3RoO24rKyl0PXJbbl0sLTE9PT1lLmluZGV4T2YodCkmJnt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwoQSx0KSYmKGlbdF09QVt0XSl9cmV0dXJuIGl9KEEsbik7cmV0dXJuIG5ldyBQcm9taXNlKChBLG4pPT57Y29uc3QgaT1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDE2KS5zdWJzdHJpbmcoMik7dGhpcy53b3JrZXIucG9zdE1lc3NhZ2Uoe2lkOmksdXJsOmUsb3B0aW9uczpPYmplY3QuYXNzaWduKHttZXRob2Q6IkdFVCJ9LHQpfSksdGhpcy5qb2JzW2ldPXtpZDppLHJlc29sdmU6QSxyZWplY3Q6bn19KS50aGVuKEE9PkE/bmV3IFVpbnQ4QXJyYXkoQSk6bnVsbCl9Z2V0IGlzU2VuZFN1cHBvcnRlZCgpe3JldHVybiExfXNlbmQoKXt0aHJvdyBuZXcgRXJyb3IoIk5vdCBpbXBsZW1lbnRlZC4iKX1zdGF0aWMgZ2V0IGluc3RhbmNlKCl7cmV0dXJuIHRoaXMuX2luc3RhbmNlfHwodGhpcy5faW5zdGFuY2U9bmV3IGkpLHRoaXMuX2luc3RhbmNlfX1BLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmlubmVyPWkuaW5zdGFuY2V9Z2V0IGlzR2V0U3VwcG9ydGVkKCl7cmV0dXJuIHRoaXMuaW5uZXIuaXNHZXRTdXBwb3J0ZWR9Z2V0KEEpe3JldHVybiB0aGlzLmlubmVyLmdldChBKX1nZXQgaXNTZW5kU3VwcG9ydGVkKCl7cmV0dXJuITF9c2VuZCgpe3Rocm93IG5ldyBFcnJvcigiTm90IGltcGxlbWVudGVkLiIpfX19LGZ1bmN0aW9uKEEsZSx0KXtBLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gdCgxMDEpKCchZnVuY3Rpb24oZSl7dmFyIHQ9e307ZnVuY3Rpb24gbihyKXtpZih0W3JdKXJldHVybiB0W3JdLmV4cG9ydHM7dmFyIG89dFtyXT17aTpyLGw6ITEsZXhwb3J0czp7fX07cmV0dXJuIGVbcl0uY2FsbChvLmV4cG9ydHMsbyxvLmV4cG9ydHMsbiksby5sPSEwLG8uZXhwb3J0c31uLm09ZSxuLmM9dCxuLmQ9ZnVuY3Rpb24oZSx0LHIpe24ubyhlLHQpfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtlbnVtZXJhYmxlOiEwLGdldDpyfSl9LG4ucj1mdW5jdGlvbihlKXsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxuLnQ9ZnVuY3Rpb24oZSx0KXtpZigxJnQmJihlPW4oZSkpLDgmdClyZXR1cm4gZTtpZig0JnQmJiJvYmplY3QiPT10eXBlb2YgZSYmZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciByPU9iamVjdC5jcmVhdGUobnVsbCk7aWYobi5yKHIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCx2YWx1ZTplfSksMiZ0JiYic3RyaW5nIiE9dHlwZW9mIGUpZm9yKHZhciBvIGluIGUpbi5kKHIsbyxmdW5jdGlvbih0KXtyZXR1cm4gZVt0XX0uYmluZChudWxsLG8pKTtyZXR1cm4gcn0sbi5uPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuX19lc01vZHVsZT9mdW5jdGlvbigpe3JldHVybiBlLmRlZmF1bHR9OmZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBuLmQodCwiYSIsdCksdH0sbi5vPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfSxuLnA9IiIsbihuLnM9MCl9KFtmdW5jdGlvbihlLHQsbil7Y29uc3Qgcj1uKDEpLG89W107bGV0IHM9bnVsbDtjb25zdCB1PSgpPT57c3x8KHM9c2V0VGltZW91dCgoKT0+e3M9bnVsbCxvLmxlbmd0aCYmKHBvc3RNZXNzYWdlKG8uc2xpY2UoKSxvLm1hcChlPT5lLmJ1ZmZlcikuZmlsdGVyKEJvb2xlYW4pKSxvLmxlbmd0aD0wKX0pKX0sYT1lPT57bGV0e2RhdGE6dH09ZTtyKHQudXJsLHQub3B0aW9ucykudGhlbihlPT5vLnB1c2goe2lkOnQuaWQsYnVmZmVyOmV9KSkuY2F0Y2goZT0+by5wdXNoKHtpZDp0LmlkLGVycm9yOmUmJmUubWVzc2FnZXx8IkZhaWxlZCByZXF1ZXN0OiAiLmNvbmNhdCh0LnVybCl9KSkudGhlbih1KX07c2VsZi5mZXRjaD8ocG9zdE1lc3NhZ2Uoe3N1cHBvcnQ6e2ZldGNoOiEwfX0pLHNlbGYuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsYSkpOihwb3N0TWVzc2FnZSh7c3VwcG9ydDp7ZmV0Y2g6ITF9fSksc2VsZi5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixlPT57bGV0e2RhdGE6dH09ZTtwb3N0TWVzc2FnZShbe2lkOnQuaWQsZXJyb3I6ImZldGNoIGlzIHVuYXZhaWxhYmxlIn1dKX0pKX0sZnVuY3Rpb24oZSx0KXtsZXQgbj0wO2NvbnN0IHI9W10sbz0oKT0+e248MTAwJiZyLmxlbmd0aD4wJiYobisrLChlPT57bGV0IHQsW3Iscyx1XT1lLGE9MDtjb25zdCBsPSgpPT5mZXRjaChzLHUpLnRoZW4oZT0+ZS5va3x8MD09PWUuc3RhdHVzP2UuYXJyYXlCdWZmZXIoKTo0MDQ9PT1lLnN0YXR1cz9udWxsOlByb21pc2UucmVqZWN0KGUuc3RhdHVzKSkudGhlbihlPT4obi0tLG8oKSxlKSkuY2F0Y2goZT0+e2lmKDQwMz09PWUpdGhyb3cgZTtpZihjb25zb2xlLndhcm4oIkF0dGVtcHQgdG8gZmV0Y2ggIi5jb25jYXQocywiIGZhaWxlZCIpLGUpLHR8fCh0PWUpLGE8MilyZXR1cm4gYSsrLG5ldyBQcm9taXNlKGU9PnNldFRpbWVvdXQoZSw1ZTMqKGErTWF0aC5yYW5kb20oKS0xKSkpLnRoZW4obCk7dGhyb3cgbi0tLG8oKSx0fSk7cihsKCkpfSkoci5zaGlmdCgpKSl9O2UuZXhwb3J0cz0oZSx0KT0+bmV3IFByb21pc2Uobj0+e3IucHVzaChbbixlLHRdKSxvKCl9KX1dKTsnLG51bGwpfX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49WyJ1cmwiXSxpPVsidXJsIiwid2l0aENyZWRlbnRpYWxzIl07ZnVuY3Rpb24gcihBLGUpe2lmKG51bGw9PUEpcmV0dXJue307dmFyIHQsbixpPWZ1bmN0aW9uKEEsZSl7aWYobnVsbD09QSlyZXR1cm57fTt2YXIgdD17fTtmb3IodmFyIG4gaW4gQSlpZih7fS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEEsbikpe2lmKC0xIT09ZS5pbmRleE9mKG4pKWNvbnRpbnVlO3Rbbl09QVtuXX1yZXR1cm4gdH0oQSxlKTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgcj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKEEpO2ZvcihuPTA7bjxyLmxlbmd0aDtuKyspdD1yW25dLC0xPT09ZS5pbmRleE9mKHQpJiZ7fS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKEEsdCkmJihpW3RdPUFbdF0pfXJldHVybiBpfWNvbnN0IG89dCg0ODkpO0EuZXhwb3J0cz1jbGFzc3tnZXQgaXNHZXRTdXBwb3J0ZWQoKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIGZldGNofWdldChBKXtsZXR7dXJsOmV9PUEsdD1yKEEsbik7cmV0dXJuIG8oZSxPYmplY3QuYXNzaWduKHttZXRob2Q6IkdFVCJ9LHQpKS50aGVuKEE9PkE/bmV3IFVpbnQ4QXJyYXkoQSk6QSl9Z2V0IGlzU2VuZFN1cHBvcnRlZCgpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgZmV0Y2h9c2VuZChBKXtsZXR7dXJsOmUsd2l0aENyZWRlbnRpYWxzOnQ9ITF9PUEsbj1yKEEsaSk7cmV0dXJuIGZldGNoKGUsT2JqZWN0LmFzc2lnbih7Y3JlZGVudGlhbHM6dD8iaW5jbHVkZSI6Im9taXQifSxuKSkudGhlbihBPT5BLm9rP0EudGV4dCgpOlByb21pc2UucmVqZWN0KEEuc3RhdHVzKSl9fX0sZnVuY3Rpb24oQSxlKXtsZXQgdD0wO2NvbnN0IG49W10saT0oKT0+e3Q8MTAwJiZuLmxlbmd0aD4wJiYodCsrLChBPT57bGV0IGUsW24scixvXT1BLHM9MDtjb25zdCBhPSgpPT5mZXRjaChyLG8pLnRoZW4oQT0+QS5va3x8MD09PUEuc3RhdHVzP0EuYXJyYXlCdWZmZXIoKTo0MDQ9PT1BLnN0YXR1cz9udWxsOlByb21pc2UucmVqZWN0KEEuc3RhdHVzKSkudGhlbihBPT4odC0tLGkoKSxBKSkuY2F0Y2goQT0+e2lmKDQwMz09PUEpdGhyb3cgQTtpZihjb25zb2xlLndhcm4oIkF0dGVtcHQgdG8gZmV0Y2ggIi5jb25jYXQociwiIGZhaWxlZCIpLEEpLGV8fChlPUEpLHM8MilyZXR1cm4gcysrLG5ldyBQcm9taXNlKEE9PnNldFRpbWVvdXQoQSw1ZTMqKHMrTWF0aC5yYW5kb20oKS0xKSkpLnRoZW4oYSk7dGhyb3cgdC0tLGkoKSxlfSk7bihhKCkpfSkobi5zaGlmdCgpKSl9O0EuZXhwb3J0cz0oQSxlKT0+bmV3IFByb21pc2UodD0+e24ucHVzaChbdCxBLGVdKSxpKCl9KX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg0OTEpLGk9dCg1MSkscj10KDQ5Myksbz10KDQ5NCkscz10KDQ5NiksYT10KDQ5NyksQj10KDQ5OCksYz10KDQ5OSksZz10KDUwMCksRT10KDExOSksUT10KDUwMSk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOigoKT0+e2NvbnN0IEE9d2luZG93LkF1ZGlvQ29udGV4dHx8d2luZG93LndlYmtpdEF1ZGlvQ29udGV4dDtpZighQSl0aHJvdyBuZXcgRXJyb3IoIkJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBBdWRpb0NvbnRleHQiKTtyZXR1cm4gbmV3IEF9KSgpO3RoaXMuYXVkaW9Db250ZXh0PUEsdGhpcy5pbnB1dE5vZGU9dGhpcy5hdWRpb0NvbnRleHQuY3JlYXRlR2FpbigpLHRoaXMuaW5wdXROb2RlLmNvbm5lY3QodGhpcy5hdWRpb0NvbnRleHQuZGVzdGluYXRpb24pLHRoaXMuYXVkaW9CdWZmZXJzPXt9LHRoaXMubG91ZG5lc3M9bnVsbCx0aGlzLmVmZmVjdHM9W2MsZyxFXSxuKHRoaXMuYXVkaW9Db250ZXh0KX1nZXQgY3VycmVudFRpbWUoKXtyZXR1cm4gdGhpcy5hdWRpb0NvbnRleHQuY3VycmVudFRpbWV9Z2V0IEVGRkVDVF9OQU1FUygpe3JldHVybntwaXRjaDoicGl0Y2giLHBhbjoicGFuIn19Z2V0IERFQ0FZX0RVUkFUSU9OKCl7cmV0dXJuLjAyNX1nZXQgREVDQVlfV0FJVCgpe3JldHVybi4wNX1nZXRJbnB1dE5vZGUoKXtyZXR1cm4gdGhpcy5pbnB1dE5vZGV9X2RlY29kZVNvdW5kKEEpe2NvbnN0IGU9QS5kYXRhLmJ1ZmZlci5zbGljZSgwKSx0PXIoKTt2YXIgbixzO3JldHVybihuPXRoaXMuYXVkaW9Db250ZXh0LHM9ZSwxPT09bi5kZWNvZGVBdWRpb0RhdGEubGVuZ3RoP24uZGVjb2RlQXVkaW9EYXRhKHMpOm5ldyBQcm9taXNlKChBLGUpPT57bi5kZWNvZGVBdWRpb0RhdGEocyxlPT5BKGUpLEE9PmUoQSkpfSkpLmNhdGNoKCgpPT57aWYoMD09PUEuZGF0YS5sZW5ndGgpcmV0dXJuIHRoaXMuX2VtcHR5U291bmQoKTtjb25zdCBlPUEuZGF0YS5idWZmZXIuc2xpY2UoMCk7cmV0dXJuIG5ldyBvKHRoaXMuYXVkaW9Db250ZXh0KS5kZWNvZGUoZSkuY2F0Y2goKCk9PnRoaXMuX2VtcHR5U291bmQoKSl9KS50aGVuKEE9Plt0LEFdLEE9PntpLndhcm4oImF1ZGlvIGRhdGEgY291bGQgbm90IGJlIGRlY29kZWQiLEEpfSl9X2VtcHR5U291bmQoKXtyZXR1cm4gdGhpcy5hdWRpb0NvbnRleHQuY3JlYXRlQnVmZmVyKDEsMSx0aGlzLmF1ZGlvQ29udGV4dC5zYW1wbGVSYXRlKX1kZWNvZGVTb3VuZChBKXtyZXR1cm4gdGhpcy5fZGVjb2RlU291bmQoQSkudGhlbihBPT57bGV0W2UsdF09QTtyZXR1cm4gdGhpcy5hdWRpb0J1ZmZlcnNbZV09dCxlfSl9ZGVjb2RlU291bmRQbGF5ZXIoQSl7cmV0dXJuIHRoaXMuX2RlY29kZVNvdW5kKEEpLnRoZW4oQT0+e2xldFtlLHRdPUE7cmV0dXJuIG5ldyBhKHRoaXMse2lkOmUsYnVmZmVyOnR9KX0pfWdldExvdWRuZXNzKCl7cmV0dXJuIHRoaXMubG91ZG5lc3N8fCh0aGlzLmxvdWRuZXNzPW5ldyBzKHRoaXMuYXVkaW9Db250ZXh0KSksdGhpcy5sb3VkbmVzcy5nZXRMb3VkbmVzcygpfWNyZWF0ZUVmZmVjdENoYWluKCl7Y29uc3QgQT1uZXcgQih0aGlzLHRoaXMuZWZmZWN0cyk7cmV0dXJuIEEuY29ubmVjdCh0aGlzKSxBfWNyZWF0ZUJhbmsoKXtyZXR1cm4gbmV3IFEodGhpcyx0aGlzLmNyZWF0ZUVmZmVjdENoYWluKCkpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNDkyKTtBLmV4cG9ydHM9ZnVuY3Rpb24oQSl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudClyZXR1cm4gbihBKX19LGZ1bmN0aW9uKEEsZSl7Y29uc3QgdD1bIm1vdXNlZG93biIsIm1vdXNldXAiLCJrZXlkb3duIiwia2V5dXAiLCJ0b3VjaHN0YXJ0IiwidG91Y2hlbmQiXTtBLmV4cG9ydHM9QT0+e2lmKCJydW5uaW5nIj09PUEuc3RhdGUpcmV0dXJuO2NvbnN0IGU9KCk9PnsicnVubmluZyI9PT1BLnN0YXRlJiYoKCk9PntBLnJlbW92ZUV2ZW50TGlzdGVuZXIoInN0YXRlY2hhbmdlIixlKTtmb3IoY29uc3QgQSBvZiB0KWRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcihBLG4pfSkoKX07QS5hZGRFdmVudExpc3RlbmVyKCJzdGF0ZWNoYW5nZSIsZSk7Y29uc3Qgbj0oKT0+e0EucmVzdW1lKCl9O2Zvcihjb25zdCBBIG9mIHQpZG9jdW1lbnQuYm9keS5hZGRFdmVudExpc3RlbmVyKEEsbil9fSxmdW5jdGlvbihBLGUpe2NvbnN0IHQ9IiEjJSgpKissLS4vOjs9P0BbXV5fYHt8fX5BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSI7QS5leHBvcnRzPWZ1bmN0aW9uKCl7Y29uc3QgQT10Lmxlbmd0aCxlPVtdO2ZvcihsZXQgbj0wO248MjA7bisrKWVbbl09dC5jaGFyQXQoTWF0aC5yYW5kb20oKSpBKTtyZXR1cm4gZS5qb2luKCIiKX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNDk1KSxpPXQoNTEpLHI9WzcsOCw5LDEwLDExLDEyLDEzLDE0LDE2LDE3LDE5LDIxLDIzLDI1LDI4LDMxLDM0LDM3LDQxLDQ1LDUwLDU1LDYwLDY2LDczLDgwLDg4LDk3LDEwNywxMTgsMTMwLDE0MywxNTcsMTczLDE5MCwyMDksMjMwLDI1MywyNzksMzA3LDMzNywzNzEsNDA4LDQ0OSw0OTQsNTQ0LDU5OCw2NTgsNzI0LDc5Niw4NzYsOTYzLDEwNjAsMTE2NiwxMjgyLDE0MTEsMTU1MiwxNzA3LDE4NzgsMjA2NiwyMjcyLDI0OTksMjc0OSwzMDI0LDMzMjcsMzY2MCw0MDI2LDQ0MjgsNDg3MSw1MzU4LDU4OTQsNjQ4NCw3MTMyLDc4NDUsODYzMCw5NDkzLDEwNDQyLDExNDg3LDEyNjM1LDEzODk5LDE1Mjg5LDE2ODE4LDE4NTAwLDIwMzUwLDIyMzg1LDI0NjIzLDI3MDg2LDI5Nzk0LDMyNzY3XSxvPVstMSwtMSwtMSwtMSwyLDQsNiw4LC0xLC0xLC0xLC0xLDIsNCw2LDhdO2xldCBzPW51bGw7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMuYXVkaW9Db250ZXh0PUF9c3RhdGljIGdldCBTVEVQX1RBQkxFKCl7cmV0dXJuIHJ9c3RhdGljIGdldCBJTkRFWF9UQUJMRSgpe3JldHVybiBvfWRlY29kZShBKXtyZXR1cm4gbmV3IFByb21pc2UoKGUsdCk9Pntjb25zdCByPW5ldyBuKEEpOyJSSUZGIiE9PXIucmVhZFVpbnQ4U3RyaW5nKDQpJiYoaS53YXJuKCJpbmNvcnJlY3QgYWRwY20gd2F2IGhlYWRlciIpLHQoKSk7Y29uc3Qgbz1yLnJlYWRJbnQzMigpO28rOCE9PUEuYnl0ZUxlbmd0aCYmaS53YXJuKCJhZHBjbSB3YXYgbGVuZ3RoIGluIGhlYWRlcjogIi5jb25jYXQobywiIGlzIGluY29ycmVjdCIpKTsiV0FWRSIhPT1yLnJlYWRVaW50OFN0cmluZyg0KSYmKGkud2FybigiaW5jb3JyZWN0IGFkcGNtIHdhdiBoZWFkZXIiKSx0KCkpO2NvbnN0IHM9dGhpcy5leHRyYWN0Q2h1bmsoImZtdCAiLHIpO3RoaXMuZW5jb2Rpbmc9cy5yZWFkVWludDE2KCksdGhpcy5jaGFubmVscz1zLnJlYWRVaW50MTYoKSx0aGlzLnNhbXBsZXNQZXJTZWNvbmQ9cy5yZWFkVWludDMyKCksdGhpcy5ieXRlc1BlclNlY29uZD1zLnJlYWRVaW50MzIoKSx0aGlzLmJsb2NrQWxpZ25tZW50PXMucmVhZFVpbnQxNigpLHRoaXMuYml0c1BlclNhbXBsZT1zLnJlYWRVaW50MTYoKSxzLnBvc2l0aW9uKz0yLHRoaXMuc2FtcGxlc1BlckJsb2NrPXMucmVhZFVpbnQxNigpLHRoaXMuYWRwY21CbG9ja1NpemU9KHRoaXMuc2FtcGxlc1BlckJsb2NrLTEpLzIrNDtjb25zdCBhPXRoaXMuZXh0cmFjdENodW5rKCJkYXRhIixyKSxCPXRoaXMubnVtYmVyT2ZTYW1wbGVzKGEsdGhpcy5hZHBjbUJsb2NrU2l6ZSksYz10aGlzLmF1ZGlvQ29udGV4dC5jcmVhdGVCdWZmZXIoMSxCLHRoaXMuc2FtcGxlc1BlclNlY29uZCk7dGhpcy5pbWFEZWNvbXByZXNzKGEsdGhpcy5hZHBjbUJsb2NrU2l6ZSxjLmdldENoYW5uZWxEYXRhKDApKSxlKGMpfSl9ZXh0cmFjdENodW5rKEEsZSl7Zm9yKGUucG9zaXRpb249MTI7ZS5wb3NpdGlvbjxlLmdldExlbmd0aCgpLTg7KXtjb25zdCB0PWUucmVhZFVpbnQ4U3RyaW5nKDQpLG49ZS5yZWFkSW50MzIoKTtpZih0PT09QSl7cmV0dXJuIGUuZXh0cmFjdChuKX1lLnBvc2l0aW9uKz1ufX1udW1iZXJPZlNhbXBsZXMoQSxlKXtpZighQSlyZXR1cm4gMDtBLnBvc2l0aW9uPTA7Y29uc3QgdD1BLmdldEJ5dGVzQXZhaWxhYmxlKCk7cmV0dXJuKHQvZXwwKSooMiooZS00KSkrMSsyKk1hdGgubWF4KHQlZS00LDApK01hdGgubWluKHQlZSwxKX1pbWFEZWNvbXByZXNzKEEsZSx0KXtsZXQgbixpLGEsQj0wLGM9LTE7aWYoIUEpcmV0dXJuO0EucG9zaXRpb249MDtjb25zdCBnPXQubGVuZ3RoLEU9MiooZS00KSxRPWZ1bmN0aW9uKCl7aWYobnVsbD09PXMpe2NvbnN0IEE9ci5sZW5ndGgsZT1vLmxlbmd0aDtzPW5ldyBBcnJheShBKmUpLmZpbGwoMCk7bGV0IHQ9MDtmb3IobGV0IG49MDtuPEE7bisrKWZvcihsZXQgQT0wO0E8ZTtBKyspe2NvbnN0IGU9cltuXTtsZXQgaT0wOzQmQSYmKGkrPWUpLDImQSYmKGkrPWU+PjEpLDEmQSYmKGkrPWU+PjIpLGkrPWU+PjMsc1t0KytdPTgmQT8taTppfX1yZXR1cm4gc30oKTtsZXQgdT0wO2Zvcig7dTxnOyl7bj1BLnJlYWRJbnQxNigpLEI9QS5yZWFkVWludDgoKSxBLnBvc2l0aW9uKyssQj44OCYmKEI9ODgpLHRbdSsrXT1uLzMyNzY4O2NvbnN0IGU9TWF0aC5taW4oRSxnLXUpLHI9dTtmb3IoO3UtcjxlOyljPUEucmVhZFVpbnQ4KCksaT0xNSZjLGE9UVsxNipCK2ldLEIrPW9baV0sQj44OD9CPTg4OkI8MCYmKEI9MCksbis9YSxuPjMyNzY3P249MzI3Njc6bjwtMzI3NjgmJihuPS0zMjc2OCksdFt1KytdPW4vMzI3NjgsaT1jPj40JjE1LGE9UVsxNipCK2ldLEIrPW9baV0sQj44OD9CPTg4OkI8MCYmKEI9MCksbis9YSxuPjMyNzY3P249MzI3Njc6bjwtMzI3NjgmJihuPS0zMjc2OCksdFt1KytdPW4vMzI3Njh9fX19LGZ1bmN0aW9uKEEsZSl7Y2xhc3MgdHtjb25zdHJ1Y3RvcihBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpBLmJ5dGVMZW5ndGgse191aW50OFZpZXc6bj1uZXcgVWludDhBcnJheShBKX09YXJndW1lbnRzLmxlbmd0aD4zJiZ2b2lkIDAhPT1hcmd1bWVudHNbM10/YXJndW1lbnRzWzNdOnt9O3RoaXMuYXJyYXlCdWZmZXI9QSx0aGlzLnN0YXJ0PWUsdGhpcy5lbmQ9dCx0aGlzLl91aW50OFZpZXc9bix0aGlzLl9wb3NpdGlvbj1lfWV4dHJhY3QoQSl7cmV0dXJuIG5ldyB0KHRoaXMuYXJyYXlCdWZmZXIsdGhpcy5fcG9zaXRpb24sdGhpcy5fcG9zaXRpb24rQSx0aGlzKX1nZXRMZW5ndGgoKXtyZXR1cm4gdGhpcy5lbmQtdGhpcy5zdGFydH1nZXRCeXRlc0F2YWlsYWJsZSgpe3JldHVybiB0aGlzLmVuZC10aGlzLl9wb3NpdGlvbn1nZXQgcG9zaXRpb24oKXtyZXR1cm4gdGhpcy5fcG9zaXRpb24tdGhpcy5zdGFydH1zZXQgcG9zaXRpb24oQSl7cmV0dXJuIHRoaXMuX3Bvc2l0aW9uPUErdGhpcy5zdGFydCxBfXJlYWRVaW50OCgpe2NvbnN0IEE9dGhpcy5fdWludDhWaWV3W3RoaXMuX3Bvc2l0aW9uXTtyZXR1cm4gdGhpcy5fcG9zaXRpb24rPTEsQX1yZWFkVWludDhTdHJpbmcoQSl7Y29uc3QgZT10aGlzLl91aW50OFZpZXc7bGV0IHQ9IiI7Y29uc3Qgbj10aGlzLl9wb3NpdGlvbitBO2ZvcihsZXQgQT10aGlzLl9wb3NpdGlvbjtBPG47QSsrKXQrPVN0cmluZy5mcm9tQ2hhckNvZGUoZVtBXSk7cmV0dXJuIHRoaXMuX3Bvc2l0aW9uKz1BLHR9cmVhZEludDE2KCl7Y29uc3QgQT1uZXcgSW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyLHRoaXMuX3Bvc2l0aW9uLDEpWzBdO3JldHVybiB0aGlzLl9wb3NpdGlvbis9MixBfXJlYWRVaW50MTYoKXtjb25zdCBBPW5ldyBVaW50MTZBcnJheSh0aGlzLmFycmF5QnVmZmVyLHRoaXMuX3Bvc2l0aW9uLDEpWzBdO3JldHVybiB0aGlzLl9wb3NpdGlvbis9MixBfXJlYWRJbnQzMigpe2xldCBBO3JldHVybiBBPXRoaXMuX3Bvc2l0aW9uJTQ9PTA/bmV3IEludDMyQXJyYXkodGhpcy5hcnJheUJ1ZmZlcix0aGlzLl9wb3NpdGlvbiwxKVswXTpuZXcgSW50MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyLnNsaWNlKHRoaXMuX3Bvc2l0aW9uLHRoaXMuX3Bvc2l0aW9uKzQpKVswXSx0aGlzLl9wb3NpdGlvbis9NCxBfXJlYWRVaW50MzIoKXtjb25zdCBBPW5ldyBVaW50MzJBcnJheSh0aGlzLmFycmF5QnVmZmVyLHRoaXMuX3Bvc2l0aW9uLDEpWzBdO3JldHVybiB0aGlzLl9wb3NpdGlvbis9NCxBfX1BLmV4cG9ydHM9dH0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0IG49dCg1MSk7QS5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMuYXVkaW9Db250ZXh0PUEsdGhpcy5jb25uZWN0aW5nVG9NaWM9ITEsdGhpcy5taWM9bnVsbH1nZXRMb3VkbmVzcygpe2lmKHRoaXMubWljfHx0aGlzLmNvbm5lY3RpbmdUb01pY3x8KHRoaXMuY29ubmVjdGluZ1RvTWljPSEwLG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNlck1lZGlhKHthdWRpbzohMH0pLnRoZW4oQT0+e3RoaXMuYXVkaW9TdHJlYW09QSx0aGlzLm1pYz10aGlzLmF1ZGlvQ29udGV4dC5jcmVhdGVNZWRpYVN0cmVhbVNvdXJjZShBKSx0aGlzLmFuYWx5c2VyPXRoaXMuYXVkaW9Db250ZXh0LmNyZWF0ZUFuYWx5c2VyKCksdGhpcy5taWMuY29ubmVjdCh0aGlzLmFuYWx5c2VyKSx0aGlzLm1pY0RhdGFBcnJheT1uZXcgRmxvYXQzMkFycmF5KHRoaXMuYW5hbHlzZXIuZmZ0U2l6ZSl9KS5jYXRjaChBPT57bi53YXJuKEEpfSkpLHRoaXMubWljJiZ0aGlzLmF1ZGlvU3RyZWFtLmFjdGl2ZSl7dGhpcy5hbmFseXNlci5nZXRGbG9hdFRpbWVEb21haW5EYXRhKHRoaXMubWljRGF0YUFycmF5KTtsZXQgQT0wO2ZvcihsZXQgZT0wO2U8dGhpcy5taWNEYXRhQXJyYXkubGVuZ3RoO2UrKylBKz1NYXRoLnBvdyh0aGlzLm1pY0RhdGFBcnJheVtlXSwyKTtsZXQgZT1NYXRoLnNxcnQoQS90aGlzLm1pY0RhdGFBcnJheS5sZW5ndGgpO3JldHVybiB0aGlzLl9sYXN0VmFsdWUmJihlPU1hdGgubWF4KGUsLjYqdGhpcy5fbGFzdFZhbHVlKSksdGhpcy5fbGFzdFZhbHVlPWUsZSo9MS42MyxlPU1hdGguc3FydChlKSxlPU1hdGgucm91bmQoMTAwKmUpLGU9TWF0aC5taW4oZSwxMDApLGV9cmV0dXJuLTF9fX0sZnVuY3Rpb24oQSxlLHQpe2NvbnN0e0V2ZW50RW1pdHRlcjpufT10KDI3KSxpPXQoMTE5KTtjbGFzcyByIGV4dGVuZHMgbntjb25zdHJ1Y3RvcihBLGUpe2xldHtpZDp0LGJ1ZmZlcjpufT1lO3N1cGVyKCksdGhpcy5pZD10LHRoaXMuYXVkaW9FbmdpbmU9QSx0aGlzLmJ1ZmZlcj1uLHRoaXMub3V0cHV0Tm9kZT1udWxsLHRoaXMudm9sdW1lRWZmZWN0PW51bGwsdGhpcy50YXJnZXQ9bnVsbCx0aGlzLmluaXRpYWxpemVkPSExLHRoaXMuaXNQbGF5aW5nPSExLHRoaXMuc3RhcnRpbmdVbnRpbD0wLHRoaXMucGxheWJhY2tSYXRlPTEsdGhpcy5zdG9wRmFkZURlY2F5PTAsdGhpcy5oYW5kbGVFdmVudD10aGlzLmhhbmRsZUV2ZW50LmJpbmQodGhpcyl9Z2V0IGlzU3RhcnRpbmcoKXtyZXR1cm4gdGhpcy5pc1BsYXlpbmcmJnRoaXMuc3RhcnRpbmdVbnRpbD50aGlzLmF1ZGlvRW5naW5lLmN1cnJlbnRUaW1lfWhhbmRsZUV2ZW50KEEpeyJlbmRlZCI9PT1BLnR5cGUmJnRoaXMub25FbmRlZCgpfW9uRW5kZWQoKXt0aGlzLmVtaXQoInN0b3AiKSx0aGlzLmlzUGxheWluZz0hMX1fY3JlYXRlU291cmNlKCl7bnVsbCE9PXRoaXMub3V0cHV0Tm9kZSYmKHRoaXMub3V0cHV0Tm9kZS5yZW1vdmVFdmVudExpc3RlbmVyKCJlbmRlZCIsdGhpcy5oYW5kbGVFdmVudCksdGhpcy5vdXRwdXROb2RlLmRpc2Nvbm5lY3QoKSksdGhpcy5vdXRwdXROb2RlPXRoaXMuYXVkaW9FbmdpbmUuYXVkaW9Db250ZXh0LmNyZWF0ZUJ1ZmZlclNvdXJjZSgpLHRoaXMub3V0cHV0Tm9kZS5wbGF5YmFja1JhdGUudmFsdWU9dGhpcy5wbGF5YmFja1JhdGUsdGhpcy5vdXRwdXROb2RlLmJ1ZmZlcj10aGlzLmJ1ZmZlcix0aGlzLm91dHB1dE5vZGUuYWRkRXZlbnRMaXN0ZW5lcigiZW5kZWQiLHRoaXMuaGFuZGxlRXZlbnQpLG51bGwhPT10aGlzLnRhcmdldCYmdGhpcy5jb25uZWN0KHRoaXMudGFyZ2V0KX1pbml0aWFsaXplKCl7dGhpcy5pbml0aWFsaXplZD0hMCx0aGlzLl9jcmVhdGVTb3VyY2UoKX1jb25uZWN0KEEpe3JldHVybiBBPT09dGhpcy52b2x1bWVFZmZlY3Q/KHRoaXMub3V0cHV0Tm9kZS5kaXNjb25uZWN0KCksdm9pZCB0aGlzLm91dHB1dE5vZGUuY29ubmVjdCh0aGlzLnZvbHVtZUVmZmVjdC5nZXRJbnB1dE5vZGUoKSkpOih0aGlzLnRhcmdldD1BLHRoaXMuaW5pdGlhbGl6ZWQ/KG51bGw9PT10aGlzLnZvbHVtZUVmZmVjdD8odGhpcy5vdXRwdXROb2RlLmRpc2Nvbm5lY3QoKSx0aGlzLm91dHB1dE5vZGUuY29ubmVjdChBLmdldElucHV0Tm9kZSgpKSk6dGhpcy52b2x1bWVFZmZlY3QuY29ubmVjdChBKSx0aGlzKTp2b2lkIDApfWRpc3Bvc2UoKXt0aGlzLmluaXRpYWxpemVkJiYodGhpcy5zdG9wSW1tZWRpYXRlbHkoKSxudWxsIT09dGhpcy52b2x1bWVFZmZlY3QmJih0aGlzLnZvbHVtZUVmZmVjdC5kaXNwb3NlKCksdGhpcy52b2x1bWVFZmZlY3Q9bnVsbCksdGhpcy5vdXRwdXROb2RlLmRpc2Nvbm5lY3QoKSx0aGlzLm91dHB1dE5vZGU9bnVsbCx0aGlzLnRhcmdldD1udWxsLHRoaXMuaW5pdGlhbGl6ZWQ9ITEpfXRha2UoKXt0aGlzLm91dHB1dE5vZGUmJnRoaXMub3V0cHV0Tm9kZS5yZW1vdmVFdmVudExpc3RlbmVyKCJlbmRlZCIsdGhpcy5oYW5kbGVFdmVudCk7Y29uc3QgQT1uZXcgcih0aGlzLmF1ZGlvRW5naW5lLHRoaXMpO3JldHVybiBBLnBsYXliYWNrUmF0ZT10aGlzLnBsYXliYWNrUmF0ZSx0aGlzLmlzUGxheWluZyYmKEEuc3RhcnRpbmdVbnRpbD10aGlzLnN0YXJ0aW5nVW50aWwsQS5pc1BsYXlpbmc9dGhpcy5pc1BsYXlpbmcsQS5pbml0aWFsaXplZD10aGlzLmluaXRpYWxpemVkLEEub3V0cHV0Tm9kZT10aGlzLm91dHB1dE5vZGUsQS5vdXRwdXROb2RlLmFkZEV2ZW50TGlzdGVuZXIoImVuZGVkIixBLmhhbmRsZUV2ZW50KSxBLnZvbHVtZUVmZmVjdD10aGlzLnZvbHVtZUVmZmVjdCxBLnZvbHVtZUVmZmVjdCYmKEEudm9sdW1lRWZmZWN0LmF1ZGlvUGxheWVyPUEpLG51bGwhPT10aGlzLnRhcmdldCYmQS5jb25uZWN0KHRoaXMudGFyZ2V0KSx0aGlzLmVtaXQoInN0b3AiKSxBLmVtaXQoInBsYXkiKSksdGhpcy5vdXRwdXROb2RlPW51bGwsdGhpcy52b2x1bWVFZmZlY3Q9bnVsbCx0aGlzLmluaXRpYWxpemVkPSExLHRoaXMuc3RhcnRpbmdVbnRpbD0wLHRoaXMuaXNQbGF5aW5nPSExLEF9cGxheShBKXtpZih0aGlzLmlzU3RhcnRpbmcpcmV0dXJuIHRoaXMuZW1pdCgic3RvcCIpLHZvaWQgdGhpcy5lbWl0KCJwbGF5Iik7dGhpcy5pc1BsYXlpbmcmJnRoaXMuc3RvcCgpLHRoaXMuaW5pdGlhbGl6ZWQ/dGhpcy5fY3JlYXRlU291cmNlKCk6dGhpcy5pbml0aWFsaXplKCksIm51bWJlciI9PXR5cGVvZiBBP3RoaXMub3V0cHV0Tm9kZS5zdGFydCgwLEEpOnRoaXMub3V0cHV0Tm9kZS5zdGFydCgpLHRoaXMuaXNQbGF5aW5nPSEwO2NvbnN0e2N1cnJlbnRUaW1lOmUsREVDQVlfRFVSQVRJT046dH09dGhpcy5hdWRpb0VuZ2luZTt0aGlzLnN0YXJ0aW5nVW50aWw9ZSsodCt0aGlzLnN0b3BGYWRlRGVjYXkpLHRoaXMuZW1pdCgicGxheSIpfXN0b3AoKXtpZighdGhpcy5pc1BsYXlpbmcpcmV0dXJuO2NvbnN0IEE9dGhpcy50YWtlKCk7QS52b2x1bWVFZmZlY3Q9bmV3IGkoQS5hdWRpb0VuZ2luZSxBLG51bGwpLEEudm9sdW1lRWZmZWN0LmNvbm5lY3QoQS50YXJnZXQpLEEuZmluaXNoZWQoKS50aGVuKCgpPT5BLmRpc3Bvc2UoKSksQS52b2x1bWVFZmZlY3Quc2V0KDAsdGhpcy5zdG9wRmFkZURlY2F5KTtjb25zdHtjdXJyZW50VGltZTplLERFQ0FZX0RVUkFUSU9OOnR9PXRoaXMuYXVkaW9FbmdpbmU7QS5vdXRwdXROb2RlLnN0b3AoZSsodCt0aGlzLnN0b3BGYWRlRGVjYXkpKX1zdG9wSW1tZWRpYXRlbHkoKXt0aGlzLmlzUGxheWluZyYmKHRoaXMub3V0cHV0Tm9kZS5zdG9wKCksdGhpcy5pc1BsYXlpbmc9ITEsdGhpcy5zdGFydGluZ1VudGlsPTAsdGhpcy5lbWl0KCJzdG9wIikpfWZpbmlzaGVkKCl7cmV0dXJuIG5ldyBQcm9taXNlKEE9Pnt0aGlzLm9uY2UoInN0b3AiLEEpfSl9c2V0UGxheWJhY2tSYXRlKEEpe3RoaXMucGxheWJhY2tSYXRlPUEsdGhpcy5pbml0aWFsaXplZCYmKHRoaXMub3V0cHV0Tm9kZS5wbGF5YmFja1JhdGUudmFsdWU9QSl9fUEuZXhwb3J0cz1yfSxmdW5jdGlvbihBLGUpe2NsYXNzIHR7Y29uc3RydWN0b3IoQSxlKXt0aGlzLmF1ZGlvRW5naW5lPUEsdGhpcy5pbnB1dE5vZGU9dGhpcy5hdWRpb0VuZ2luZS5hdWRpb0NvbnRleHQuY3JlYXRlR2FpbigpLHRoaXMuZWZmZWN0cz1lO2xldCB0PW51bGw7dGhpcy5fZWZmZWN0cz1lLnJldmVyc2UoKS5tYXAoZT0+e2NvbnN0IG49bmV3IGUoQSx0aGlzLHQpO3JldHVybiB0aGlzW24ubmFtZV09bix0PW4sbn0pLnJldmVyc2UoKSx0aGlzLmZpcnN0RWZmZWN0PXRoaXMuX2VmZmVjdHNbMF0sdGhpcy5sYXN0RWZmZWN0PXRoaXMuX2VmZmVjdHNbdGhpcy5fZWZmZWN0cy5sZW5ndGgtMV0sdGhpcy5fc291bmRQbGF5ZXJzPW5ldyBTZXR9Y2xvbmUoKXtjb25zdCBBPW5ldyB0KHRoaXMuYXVkaW9FbmdpbmUsdGhpcy5lZmZlY3RzKTtyZXR1cm4gdGhpcy50YXJnZXQmJkEuY29ubmVjdCh0aGlzLnRhcmdldCksQX1hZGRTb3VuZFBsYXllcihBKXt0aGlzLl9zb3VuZFBsYXllcnMuaGFzKEEpfHwodGhpcy5fc291bmRQbGF5ZXJzLmFkZChBKSx0aGlzLnVwZGF0ZSgpKX1yZW1vdmVTb3VuZFBsYXllcihBKXt0aGlzLl9zb3VuZFBsYXllcnMucmVtb3ZlKEEpfWdldElucHV0Tm9kZSgpe3JldHVybiB0aGlzLmlucHV0Tm9kZX1jb25uZWN0KEEpe2NvbnN0e2ZpcnN0RWZmZWN0OmUsbGFzdEVmZmVjdDp0fT10aGlzO2lmKEE9PT10KXJldHVybiB0aGlzLmlucHV0Tm9kZS5kaXNjb25uZWN0KCksdm9pZCB0aGlzLmlucHV0Tm9kZS5jb25uZWN0KHQuZ2V0SW5wdXROb2RlKCkpO0EhPT1lJiYodGhpcy50YXJnZXQ9QSxlLmNvbm5lY3QoQSkpfWdldFNvdW5kUGxheWVycygpe3JldHVyblsuLi50aGlzLl9zb3VuZFBsYXllcnNdfXNldEVmZmVjdHNGcm9tVGFyZ2V0KEEpe3RoaXMuX2VmZmVjdHMuZm9yRWFjaChlPT57InNvdW5kRWZmZWN0cyJpbiBBJiZlLm5hbWUgaW4gQS5zb3VuZEVmZmVjdHM/ZS5zZXQoQS5zb3VuZEVmZmVjdHNbZS5uYW1lXSk6ZS5uYW1lIGluIEEmJmUuc2V0KEFbZS5uYW1lXSl9KX1zZXQoQSxlKXtBIGluIHRoaXMmJnRoaXNbQV0uc2V0KGUpfXVwZGF0ZSgpe3RoaXMuX2VmZmVjdHMuZm9yRWFjaChBPT5BLnVwZGF0ZSgpKX1jbGVhcigpe3RoaXMuX2VmZmVjdHMuZm9yRWFjaChBPT5BLmNsZWFyKCkpfWRpc3Bvc2UoKXt0aGlzLl9zb3VuZFBsYXllcnM9bnVsbCx0aGlzLl9lZmZlY3RzLmZvckVhY2goQT0+QS5kaXNwb3NlKCkpLHRoaXMuX2VmZmVjdHM9bnVsbH19QS5leHBvcnRzPXR9LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNzYpO0EuZXhwb3J0cz1jbGFzcyBleHRlbmRzIG57Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKEEsZSx0KSx0aGlzLmxlZnRHYWluPW51bGwsdGhpcy5yaWdodEdhaW49bnVsbCx0aGlzLmNoYW5uZWxNZXJnZXI9bnVsbH1nZXQgbmFtZSgpe3JldHVybiJwYW4ifWluaXRpYWxpemUoKXtjb25zdCBBPXRoaXMuYXVkaW9FbmdpbmUuYXVkaW9Db250ZXh0O3RoaXMuaW5wdXROb2RlPUEuY3JlYXRlR2FpbigpLHRoaXMubGVmdEdhaW49QS5jcmVhdGVHYWluKCksdGhpcy5yaWdodEdhaW49QS5jcmVhdGVHYWluKCksdGhpcy5jaGFubmVsTWVyZ2VyPUEuY3JlYXRlQ2hhbm5lbE1lcmdlcigyKSx0aGlzLm91dHB1dE5vZGU9dGhpcy5jaGFubmVsTWVyZ2VyLHRoaXMuaW5wdXROb2RlLmNvbm5lY3QodGhpcy5sZWZ0R2FpbiksdGhpcy5pbnB1dE5vZGUuY29ubmVjdCh0aGlzLnJpZ2h0R2FpbiksdGhpcy5sZWZ0R2Fpbi5jb25uZWN0KHRoaXMuY2hhbm5lbE1lcmdlciwwLDApLHRoaXMucmlnaHRHYWluLmNvbm5lY3QodGhpcy5jaGFubmVsTWVyZ2VyLDAsMSksdGhpcy5pbml0aWFsaXplZD0hMH1fc2V0KEEpe3RoaXMudmFsdWU9QTtjb25zdCBlPShBKzEwMCkvMjAwLHQ9TWF0aC5jb3MoZSpNYXRoLlBJLzIpLG49TWF0aC5zaW4oZSpNYXRoLlBJLzIpLHtjdXJyZW50VGltZTppLERFQ0FZX1dBSVQ6cixERUNBWV9EVVJBVElPTjpvfT10aGlzLmF1ZGlvRW5naW5lO3RoaXMubGVmdEdhaW4uZ2Fpbi5zZXRUYXJnZXRBdFRpbWUodCxpK3IsbyksdGhpcy5yaWdodEdhaW4uZ2Fpbi5zZXRUYXJnZXRBdFRpbWUobixpK3Isbyl9ZGlzcG9zZSgpe3RoaXMuaW5pdGlhbGl6ZWQmJih0aGlzLmlucHV0Tm9kZS5kaXNjb25uZWN0KCksdGhpcy5sZWZ0R2Fpbi5kaXNjb25uZWN0KCksdGhpcy5yaWdodEdhaW4uZGlzY29ubmVjdCgpLHRoaXMuY2hhbm5lbE1lcmdlci5kaXNjb25uZWN0KCksdGhpcy5pbnB1dE5vZGU9bnVsbCx0aGlzLmxlZnRHYWluPW51bGwsdGhpcy5yaWdodEdhaW49bnVsbCx0aGlzLmNoYW5uZWxNZXJnZXI9bnVsbCx0aGlzLm91dHB1dE5vZGU9bnVsbCx0aGlzLnRhcmdldD1udWxsLHRoaXMuaW5pdGlhbGl6ZWQ9ITEpfX19LGZ1bmN0aW9uKEEsZSx0KXtjb25zdCBuPXQoNzYpO0EuZXhwb3J0cz1jbGFzcyBleHRlbmRzIG57Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKEEsZSx0KSx0aGlzLnJhdGlvPTF9Z2V0IG5hbWUoKXtyZXR1cm4icGl0Y2gifWdldCBfaXNQYXRjaCgpe3JldHVybiExfWdldElucHV0Tm9kZSgpe3JldHVybiB0aGlzLnRhcmdldC5nZXRJbnB1dE5vZGUoKX1pbml0aWFsaXplKCl7dGhpcy5pbml0aWFsaXplZD0hMH1fc2V0KEEpe3RoaXMudmFsdWU9QSx0aGlzLnJhdGlvPXRoaXMuZ2V0UmF0aW8odGhpcy52YWx1ZSksdGhpcy51cGRhdGVQbGF5ZXJzKHRoaXMuYXVkaW9QbGF5ZXIuZ2V0U291bmRQbGF5ZXJzKCkpfXVwZGF0ZSgpe3RoaXMudXBkYXRlUGxheWVycyh0aGlzLmF1ZGlvUGxheWVyLmdldFNvdW5kUGxheWVycygpKX1nZXRSYXRpbyhBKXtjb25zdCBlPUEvMTA7cmV0dXJuIE1hdGgucG93KDIsZS8xMil9dXBkYXRlUGxheWVyKEEpe0Euc2V0UGxheWJhY2tSYXRlKHRoaXMucmF0aW8pfXVwZGF0ZVBsYXllcnMoQSl7aWYoQSlmb3IoY29uc3QgZSBpbiBBKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChBLGUpJiZ0aGlzLnVwZGF0ZVBsYXllcihBW2VdKX19fSxmdW5jdGlvbihBLGUsdCl7Y29uc3Qgbj10KDUxKTtBLmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoQSxlKXt0aGlzLmF1ZGlvRW5naW5lPUEsdGhpcy5zb3VuZFBsYXllcnM9e30sdGhpcy5wbGF5ZXJUYXJnZXRzPW5ldyBNYXAsdGhpcy5zb3VuZEVmZmVjdHM9bmV3IE1hcCx0aGlzLmVmZmVjdENoYWluUHJpbWU9ZX1hZGRTb3VuZFBsYXllcihBKXt0aGlzLnNvdW5kUGxheWVyc1tBLmlkXT1BfWdldFNvdW5kUGxheWVyKEEpe3JldHVybiB0aGlzLnNvdW5kUGxheWVyc1tBXXx8bi5lcnJvcigiU291bmRCYW5rLmdldFNvdW5kUGxheWVyKCIuY29uY2F0KEEsIik6IGNhbGxlZCBtaXNzaW5nIHNvdW5kIGluIGJhbmsiKSksdGhpcy5zb3VuZFBsYXllcnNbQV19Z2V0U291bmRFZmZlY3RzKEEpe3JldHVybiB0aGlzLnNvdW5kRWZmZWN0cy5oYXMoQSl8fHRoaXMuc291bmRFZmZlY3RzLnNldChBLHRoaXMuZWZmZWN0Q2hhaW5QcmltZS5jbG9uZSgpKSx0aGlzLnNvdW5kRWZmZWN0cy5nZXQoQSl9cGxheVNvdW5kKEEsZSx0KXtjb25zdCBuPXRoaXMuZ2V0U291bmRFZmZlY3RzKGUpLGk9dGhpcy5nZXRTb3VuZFBsYXllcihlKTtyZXR1cm4gdGhpcy5wbGF5ZXJUYXJnZXRzLmdldChlKSE9PUEmJmkuc3RvcCgpLHRoaXMucGxheWVyVGFyZ2V0cy5zZXQoZSxBKSxuLmFkZFNvdW5kUGxheWVyKGkpLG4uc2V0RWZmZWN0c0Zyb21UYXJnZXQoQSksaS5jb25uZWN0KG4pLGkucGxheSh0KSxpLmZpbmlzaGVkKCl9c2V0RWZmZWN0cyhBKXt0aGlzLnBsYXllclRhcmdldHMuZm9yRWFjaCgoZSx0KT0+e2U9PT1BJiZ0aGlzLmdldFNvdW5kRWZmZWN0cyh0KS5zZXRFZmZlY3RzRnJvbVRhcmdldChBKX0pfXN0b3AoQSxlKXt0aGlzLnBsYXllclRhcmdldHMuZ2V0KGUpPT09QSYmdGhpcy5zb3VuZFBsYXllcnNbZV0uc3RvcCgpfXN0b3BBbGxTb3VuZHMoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06IioiO3RoaXMucGxheWVyVGFyZ2V0cy5mb3JFYWNoKChlLHQpPT57IioiIT09QSYmZSE9PUF8fHRoaXMuZ2V0U291bmRQbGF5ZXIodCkuc3RvcCgpfSl9ZGlzcG9zZSgpe3RoaXMucGxheWVyVGFyZ2V0cy5jbGVhcigpLHRoaXMuc291bmRFZmZlY3RzLmZvckVhY2goQT0+QS5kaXNwb3NlKCkpLHRoaXMuc291bmRFZmZlY3RzLmNsZWFyKCk7Zm9yKGNvbnN0IEEgaW4gdGhpcy5zb3VuZFBsYXllcnMpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuc291bmRQbGF5ZXJzLEEpJiZ0aGlzLnNvdW5kUGxheWVyc1tBXS5kaXNwb3NlKCk7dGhpcy5zb3VuZFBsYXllcnM9e319fX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksdC5kKGUsIlNCMUZpbGUiLChmdW5jdGlvbigpe3JldHVybiBuZX0pKSx0LmQoZSwiQXNzZXJ0aW9uRXJyb3IiLChmdW5jdGlvbigpe3JldHVybiBufSkpLHQuZChlLCJWYWxpZGF0aW9uRXJyb3IiLChmdW5jdGlvbigpe3JldHVybiBpfSkpO2NsYXNzIG4gZXh0ZW5kcyBFcnJvcnt9Y2xhc3MgaSBleHRlbmRzIG57fWNvbnN0IHI9ZnVuY3Rpb24oQSxlKXtpZighQSl0aHJvdyBuZXcgbihlKX07ci52YWxpZGF0ZT1mdW5jdGlvbihBLGUpe2lmKCFBKXRocm93IG5ldyBpKGUpfTtjbGFzcyBve2NvbnN0cnVjdG9yKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3RoaXMuYnVmZmVyPUEsdGhpcy5wb3NpdGlvbj1lLHRoaXMudWludDhhPW5ldyBVaW50OEFycmF5KHRoaXMuYnVmZmVyKX1yZWFkKEEpe2NvbnN0IGU9QS5yZWFkKHRoaXMudWludDhhLHRoaXMucG9zaXRpb24pO3JldHVybiAwPT09QS5zaXplP3RoaXMucG9zaXRpb24rPUEuc2l6ZU9mKHRoaXMudWludDhhLHRoaXMucG9zaXRpb24pOnRoaXMucG9zaXRpb24rPUEuc2l6ZSxlfXJlYWRTdHJ1Y3QoQSl7Y29uc3QgZT1uZXcgQSh0aGlzLnVpbnQ4YSx0aGlzLnBvc2l0aW9uKTtyZXR1cm4gdGhpcy5wb3NpdGlvbis9QS5zaXplLGV9cmVzaXplKEEpe2lmKHRoaXMuYnVmZmVyLmJ5dGVMZW5ndGg8QSl7Y29uc3QgZT10aGlzLnVpbnQ4YSx0PU1hdGgucG93KDIsTWF0aC5jZWlsKE1hdGgubG9nKEEpL01hdGgubG9nKDIpKSk7dGhpcy5idWZmZXI9bmV3IEFycmF5QnVmZmVyKHQpLHRoaXMudWludDhhPW5ldyBVaW50OEFycmF5KHRoaXMuYnVmZmVyKSx0aGlzLnVpbnQ4YS5zZXQoZSl9fXdyaXRlKEEsZSl7cmV0dXJuIDA9PT1BLnNpemU/dGhpcy5yZXNpemUodGhpcy5wb3NpdGlvbitBLndyaXRlU2l6ZU9mKGUpKTp0aGlzLnJlc2l6ZSh0aGlzLnBvc2l0aW9uK0Euc2l6ZSksQS53cml0ZSh0aGlzLnVpbnQ4YSx0aGlzLnBvc2l0aW9uLGUpLDA9PT1BLnNpemU/dGhpcy5wb3NpdGlvbis9QS53cml0ZVNpemVPZih0aGlzLnVpbnQ4YSx0aGlzLnBvc2l0aW9uKTp0aGlzLnBvc2l0aW9uKz1BLnNpemUsZX13cml0ZVN0cnVjdChBLGUpe3RoaXMucmVzaXplKHRoaXMucG9zaXRpb24rQS5zaXplKTtjb25zdCB0PU9iamVjdC5hc3NpZ24obmV3IEEodGhpcy51aW50OGEsdGhpcy5wb3NpdGlvbiksZSk7cmV0dXJuIHRoaXMucG9zaXRpb24rPUEuc2l6ZSx0fXdyaXRlQnl0ZXMoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjAsdD1hcmd1bWVudHMubGVuZ3RoPjImJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06QS5sZW5ndGg7cihBIGluc3RhbmNlb2YgVWludDhBcnJheSwid3JpdGVCeXRlcyBtdXN0IGJlIHBhc3NlZCBhbiBVaW50OEFycmF5IiksdGhpcy5yZXNpemUodGhpcy5wb3NpdGlvbisodC1lKSk7Zm9yKGxldCBuPWU7bjx0O24rKyl0aGlzLnVpbnQ4YVt0aGlzLnBvc2l0aW9uK24tZV09QVtuXTtyZXR1cm4gdGhpcy5wb3NpdGlvbis9dC1lLEF9fWNsYXNzIHN7Y29uc3RydWN0b3IoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOjEvMDt0aGlzLml0ZXI9QSx0aGlzLm1heFBvc2l0aW9uPWV9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gdGhpc31uZXh0KCl7cmV0dXJuIHRoaXMuaXRlci5zdHJlYW0ucG9zaXRpb24+PXRoaXMubWF4UG9zaXRpb24/e3ZhbHVlOm51bGwsZG9uZTohMH06dGhpcy5pdGVyLm5leHQoKX19Y29uc3QgYT0oKT0+e3Rocm93IG5ldyBFcnJvcigiTm90IGltcGxlbWVudGVkIil9LEI9KCgpPT57Y29uc3QgQT1uZXcgVWludDE2QXJyYXkoMSksZT1uZXcgVWludDhBcnJheShBLmJ1ZmZlcik7cmV0dXJuIEFbMF09NDM3MDcsMTg3PT09ZVswXX0pKCk7Y2xhc3MgY3tjb25zdHJ1Y3RvcihBKXtsZXR7c2l6ZTplPTAsc2l6ZU9mOnQ9KCgpPT5lKSx3cml0ZVNpemVPZjpuPWEsdG9CeXRlczppPW5ldyBVaW50OEFycmF5KDEpLHJlYWQ6cix3cml0ZTpvPWF9PUE7dGhpcy5zaXplPWUsdGhpcy5zaXplT2Y9dCx0aGlzLndyaXRlU2l6ZU9mPW4sdGhpcy50b0J5dGVzPWksdGhpcy5ieXRlcz1uZXcgVWludDhBcnJheShpLmJ1ZmZlciksdGhpcy5yZWFkPXIsdGhpcy53cml0ZT1vfWFzUHJvcGVydHlPYmplY3QoQSl7Y29uc3QgZT10aGlzO3JldHVybntnZXQoKXtyZXR1cm4gZS5yZWFkKHRoaXMudWludDhhLEErdGhpcy5vZmZzZXQpfSxzZXQodCl7cmV0dXJuIGUud3JpdGUodGhpcy51aW50OGEsQSt0aGlzLm9mZnNldCx0KX0sZW51bWVyYWJsZTohMH19cmVhZCgpe3JldHVybiBudWxsfX1jb25zdCBnPW5ldyBjKHtzaXplOjEscmVhZDooQSxlKT0+QVtlXSx3cml0ZTooQSxlLHQpPT4oQVtlXT10LHQpfSksRT17c2l6ZToyLHJlYWQoQSxlKXtyZXR1cm4gdGhpcy5ieXRlc1sxXT1BW2UrMF0sdGhpcy5ieXRlc1swXT1BW2UrMV0sdGhpcy50b0J5dGVzWzBdfSx3cml0ZShBLGUsdCl7cmV0dXJuIHRoaXMudG9CeXRlc1swXT10LEFbZSswXT10aGlzLmJ5dGVzWzFdLEFbZSsxXT10aGlzLmJ5dGVzWzBdLHR9fSxRPXtzaXplOjIscmVhZChBLGUpe3JldHVybiB0aGlzLmJ5dGVzWzBdPUFbZSswXSx0aGlzLmJ5dGVzWzFdPUFbZSsxXSx0aGlzLnRvQnl0ZXNbMF19LHdyaXRlKEEsZSx0KXtyZXR1cm4gdGhpcy50b0J5dGVzWzBdPXQsQVtlKzBdPXRoaXMuYnl0ZXNbMF0sQVtlKzFdPXRoaXMuYnl0ZXNbMV0sdH19O2xldCB1O3U9Qj9FOlE7bmV3IGMoT2JqZWN0LmFzc2lnbih7fSx1LHt0b0J5dGVzOm5ldyBVaW50MTZBcnJheSgxKX0pKTtjb25zdCBsPW5ldyBjKE9iamVjdC5hc3NpZ24oe30sdSx7dG9CeXRlczpuZXcgSW50MTZBcnJheSgxKX0pKSxoPXtzaXplOjQscmVhZChBLGUpe3JldHVybiB0aGlzLmJ5dGVzWzNdPUFbZSswXSx0aGlzLmJ5dGVzWzJdPUFbZSsxXSx0aGlzLmJ5dGVzWzFdPUFbZSsyXSx0aGlzLmJ5dGVzWzBdPUFbZSszXSx0aGlzLnRvQnl0ZXNbMF19LHdyaXRlKEEsZSx0KXtyZXR1cm4gdGhpcy50b0J5dGVzWzBdPXQsQVtlKzBdPXRoaXMuYnl0ZXNbM10sQVtlKzFdPXRoaXMuYnl0ZXNbMl0sQVtlKzJdPXRoaXMuYnl0ZXNbMV0sQVtlKzNdPXRoaXMuYnl0ZXNbMF0sdH19LHc9e3NpemU6NCxyZWFkKEEsZSl7cmV0dXJuIHRoaXMuYnl0ZXNbMF09QVtlKzBdLHRoaXMuYnl0ZXNbMV09QVtlKzFdLHRoaXMuYnl0ZXNbMl09QVtlKzJdLHRoaXMuYnl0ZXNbM109QVtlKzNdLHRoaXMudG9CeXRlc1swXX0sd3JpdGUoQSxlLHQpe3JldHVybiB0aGlzLnRvQnl0ZXNbMF09dCxBW2UrMF09dGhpcy5ieXRlc1swXSxBW2UrMV09dGhpcy5ieXRlc1sxXSxBW2UrMl09dGhpcy5ieXRlc1syXSxBW2UrM109dGhpcy5ieXRlc1szXSx0fX07bGV0IEM7Qz1CP2g6dztjb25zdCBJPW5ldyBjKE9iamVjdC5hc3NpZ24oe30sQyx7dG9CeXRlczpuZXcgSW50MzJBcnJheSgxKX0pKSxNPW5ldyBjKE9iamVjdC5hc3NpZ24oe30sQyx7dG9CeXRlczpuZXcgVWludDMyQXJyYXkoMSl9KSk7bGV0IGQ7ZD1CP1E6RTtjb25zdCBwPW5ldyBjKE9iamVjdC5hc3NpZ24oe30sZCx7dG9CeXRlczpuZXcgVWludDE2QXJyYXkoMSl9KSk7bGV0IG07bT1CP3c6aDtjb25zdCBGPW5ldyBjKE9iamVjdC5hc3NpZ24oe30sbSx7dG9CeXRlczpuZXcgVWludDMyQXJyYXkoMSl9KSk7bGV0IEQ7RD1CP3tzaXplOjgscmVhZChBLGUpe3JldHVybiB0aGlzLmJ5dGVzWzddPUFbZSswXSx0aGlzLmJ5dGVzWzZdPUFbZSsxXSx0aGlzLmJ5dGVzWzVdPUFbZSsyXSx0aGlzLmJ5dGVzWzRdPUFbZSszXSx0aGlzLmJ5dGVzWzNdPUFbZSs0XSx0aGlzLmJ5dGVzWzJdPUFbZSs1XSx0aGlzLmJ5dGVzWzFdPUFbZSs2XSx0aGlzLmJ5dGVzWzBdPUFbZSs3XSx0aGlzLnRvQnl0ZXNbMF19fTp7c2l6ZTo4LHJlYWQoQSxlKXtyZXR1cm4gdGhpcy5ieXRlc1s3XT1BW2UrMF0sdGhpcy5ieXRlc1s2XT1BW2UrMV0sdGhpcy5ieXRlc1s1XT1BW2UrMl0sdGhpcy5ieXRlc1s0XT1BW2UrM10sdGhpcy5ieXRlc1szXT1BW2UrNF0sdGhpcy5ieXRlc1syXT1BW2UrNV0sdGhpcy5ieXRlc1sxXT1BW2UrNl0sdGhpcy5ieXRlc1swXT1BW2UrN10sdGhpcy50b0J5dGVzWzBdfX07Y29uc3QgWT1uZXcgYyhPYmplY3QuYXNzaWduKHt9LEQse3RvQnl0ZXM6bmV3IEZsb2F0NjRBcnJheSgxKX0pKTtjbGFzcyBmIGV4dGVuZHMgY3tjb25zdHJ1Y3RvcihBKXtzdXBlcih7c2l6ZTpBLHJlYWQoZSx0KXtsZXQgbj0iIjtmb3IobGV0IGk9MDtpPEE7aSsrKXtjb25zdCBBPWVbdCtpXTtyKEE8PTEyNywiTm9uLWFzY2lpIGNoYXJhY3RlciBpbiBGaXhlZEFzY2lpU3RyaW5nIiksbis9U3RyaW5nLmZyb21DaGFyQ29kZShBKX1yZXR1cm4gbn0sd3JpdGUoZSx0LG4pe2ZvcihsZXQgaT0wO2k8QTtpKyspe2NvbnN0IEE9bi5jaGFyQ29kZUF0KGkpO3IoQTw9MTI3LCJOb24tYXNjaWkgY2hhcmFjdGVyIGluIEZpeGVkQXNjaWlTdHJpbmciKSxlW3QraV09QX1yZXR1cm4gbn19KX19dmFyIE49dCgzMCk7bGV0IFU7VT1uZXcgYyhCP3tzaXplOjMscmVhZDooQSxlKT0+QVtlKzBdPDwxNnxBW2UrMV08PDh8QVtlKzJdfTp7c2l6ZTozLHJlYWQ6KEEsZSk9PkFbZSsyXTw8MTZ8QVtlKzFdPDw4fEFbZSswXX0pO2NvbnN0IHk9bmV3IGMoe3NpemVPZihBLGUpe2NvbnN0IHQ9bC5yZWFkKEEsZSk7cmV0dXJuIGwuc2l6ZSt0fSxyZWFkKEEsZSl7bGV0IHQ9MCxuPTA7Y29uc3QgaT1sLnJlYWQoQSxlKTtmb3IobGV0IHI9MDtyPGk7cisrKXQrPW4qZy5yZWFkKEEsZSsrKSxuKj0yNTY7cmV0dXJuIHR9fSksVD1uZXcgYyh7c2l6ZU9mKEEsZSl7Y29uc3QgdD1NLnJlYWQoQSxlKTtyZXR1cm4gTS5zaXplK3R9LHJlYWQoQSxlKXtjb25zdCB0PU0ucmVhZChBLGUpO3IodDwxMDQ4NTc2MCwiYXNjaWlTdHJpbmcgdG9vIGJpZyIpLGUrPTQ7bGV0IG49IiI7Zm9yKGxldCBpPTA7aTx0O2krKyluKz1TdHJpbmcuZnJvbUNoYXJDb2RlKEFbZSsrXSk7cmV0dXJuIG59fSkseD1uZXcgYyh7c2l6ZU9mOihBLGUpPT5NLnNpemUrTS5yZWFkKEEsZSkscmVhZChBLGUpe2NvbnN0IHQ9TS5yZWFkKEEsZSk7cmV0dXJuIHIodDwxMDQ4NTc2MCwiYnl0ZXMgdG9vIGJpZyIpLGUrPU0uc2l6ZSxyKHQ8MTA0ODU3NjAsInVpbnQ4YSBhcnJheSB0b28gYmlnIiksbmV3IFVpbnQ4QXJyYXkoQS5idWZmZXIsZSx0KX19KSxSPW5ldyBjKHtzaXplT2Y6KEEsZSk9Pk0uc2l6ZSsyKk0ucmVhZChBLGUpLHJlYWQoQSxlKXtjb25zdCB0PU0ucmVhZChBLGUpO3IodDwxMDQ4NTc2MCwic291bmQgdG9vIGJpZyIpLGUrPU0uc2l6ZTtjb25zdCBuPTIqdDtyZXR1cm4gcihuPDEwNDg1NzYwLCJ1aW50OGEgYXJyYXkgdG9vIGJpZyIpLG5ldyBVaW50OEFycmF5KEEuYnVmZmVyLGUsbil9fSksRz1uZXcgYyh7c2l6ZU9mOihBLGUpPT5NLnNpemUrTS5yZWFkKEEsZSkqTS5zaXplLHJlYWQoQSxlKXtjb25zdCB0PU0ucmVhZChBLGUpO3IodDwxMDQ4NTc2MCwiYml0bWFwIHRvbyBiaWciKSxlKz1NLnNpemUscih0PDEwNDg1NzYwLCJ1aW50OGEgYXJyYXkgdG9vIGJpZyIpO2NvbnN0IG49bmV3IFVpbnQzMkFycmF5KHQpO2ZvcihsZXQgaT0wO2k8dDtpKyspbltpXT1NLnJlYWQoQSxlKSxlKz1NLnNpemU7cmV0dXJuIG59fSk7bGV0IFM7Uz0idW5kZWZpbmVkIj09dHlwZW9mIFRleHREZWNvZGVyP25ldyBOLlRleHREZWNvZGVyOm5ldyBUZXh0RGVjb2Rlcjtjb25zdCBiPW5ldyBjKHtzaXplT2Y6KEEsZSk9Pk0uc2l6ZStNLnJlYWQoQSxlKSxyZWFkKEEsZSl7Y29uc3QgdD1NLnJlYWQoQSxlKTtyZXR1cm4gcih0PDEwNDg1NzYwLCJ1dGY4IHRvbyBiaWciKSxlKz1NLnNpemUscih0PDEwNDg1NzYwLCJ1aW50OGEgYXJyYXkgdG9vIGJpZyIpLFMuZGVjb2RlKG5ldyBVaW50OEFycmF5KEEuYnVmZmVyLGUsdCkpfX0pLEg9bmV3IGMoe3NpemU6NCxyZWFkKEEsZSl7Y29uc3QgdD1NLnJlYWQoQSxlKTtyZXR1cm4oMjU1PDwyNHwodD4+MjImMjU1KTw8MTZ8KHQ+PjEyJjI1NSk8PDh8dD4+MiYyNTUpPj4+MH19KSx2PW5ldyBjKHtzaXplOjUscmVhZChBLGUpe2NvbnN0IHQ9TS5yZWFkKEEsZSk7cmV0dXJuKGcucmVhZChBLGUpPDwyNHwodD4+MjImMjU1KTw8MTZ8KHQ+PjEyJjI1NSk8PDh8dD4+MiYyNTUpPj4+MH19KSxrPXtOVUxMOjEsVFJVRToyLEZBTFNFOjMsU01BTExfSU5UOjQsU01BTExfSU5UXzE2OjUsTEFSR0VfSU5UX1BPU0lUSVZFOjYsTEFSR0VfSU5UX05FR0FUSVZFOjcsRkxPQVRJTkc6OCxTVFJJTkc6OSxTWU1CT0w6MTAsQllURVM6MTEsU09VTkQ6MTIsQklUTUFQOjEzLFVURjg6MTQsQVJSQVk6MjAsT1JERVJFRF9DT0xMRUNUSU9OOjIxLFNFVDoyMixJREVOVElUWV9TRVQ6MjMsRElDVElPTkFSWToyNCxJREVOVElUWV9ESUNUSU9OQVJZOjI1LENPTE9SOjMwLFRSQU5TTFVDRU5UX0NPTE9SOjMxLFBPSU5UOjMyLFJFQ1RBTkdMRTozMyxGT1JNOjM0LFNRVUVBSzozNSxPQkpFQ1RfUkVGOjk5LE1PUlBIOjEwMCxBTElHTk1FTlQ6MTA0LFNUQVRJQ19TVFJJTkc6MTA1LFVQREFUSU5HX1NUUklORzoxMDYsU0FNUExFRF9TT1VORDoxMDksSU1BR0VfTU9SUEg6MTEwLFNQUklURToxMjQsU1RBR0U6MTI1LFdBVENIRVI6MTU1LElNQUdFX01FRElBOjE2MixTT1VORF9NRURJQToxNjQsTVVMVElMSU5FX1NUUklORzoxNzEsV0FUQ0hFUl9SRUFET1VUX0ZSQU1FOjE3MyxXQVRDSEVSX1NMSURFUjoxNzQsTElTVF9XQVRDSEVSOjE3NX0saj1PYmplY3QuZW50cmllcyhrKS5yZWR1Y2UoKEEsZSk9PntsZXRbdCxuXT1lO3JldHVybiBBW25dPXQsQX0se30pO2NsYXNzIEp7Y29uc3RydWN0b3IoQSxlKXt0aGlzLmNsYXNzSWQ9QSx0aGlzLnBvc2l0aW9uPWV9fWNvbnN0IHo9QT0+Im9iamVjdCI9PXR5cGVvZiBBJiZBP0EudmFsdWVPZigpOkE7Y2xhc3MgTCBleHRlbmRzIEp7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKEEsZSksdGhpcy52YWx1ZT10fXZhbHVlT2YoKXtyZXR1cm4gdGhpcy52YWx1ZX10b0pTT04oKXtyZXR1cm4gdGhpcy5jbGFzc0lkPT09ay5UUkFOU0xVQ0VOVF9DT0xPUnx8dGhpcy5jbGFzc0lkPT09ay5DT0xPUj8xNjc3NzIxNSZ0aGlzLnZhbHVlOnRoaXMudmFsdWV9dG9TdHJpbmcoKXtyZXR1cm4gdGhpcy52YWx1ZX19Y2xhc3MgUCBleHRlbmRzIEp7Y29uc3RydWN0b3IoQSxlLHQpe3N1cGVyKEEsZSksdGhpcy5zaXplPXR9fWNsYXNzIE8gZXh0ZW5kcyBKe2NvbnN0cnVjdG9yKEEsZSx0KXtzdXBlcihBLGUpLHRoaXMuaW5kZXg9dH12YWx1ZU9mKCl7cmV0dXJuIlJlZigiLmNvbmNhdCh0aGlzLmluZGV4LCIpIil9fWNsYXNzIFYgZXh0ZW5kcyBQe2NvbnN0cnVjdG9yKEEsZSx0LG4pe3N1cGVyKEEsZSxuKSx0aGlzLnZlcnNpb249dH19Y2xhc3MgV3tjb25zdHJ1Y3RvcihBKXtsZXR7dHlwZTplPUwscmVhZDp0LHZhbHVlOm49KHQ/QT0+QS5yZWFkKHQpOm51bGwpfT1BO3RoaXMudHlwZT1lLHRoaXMudmFsdWU9bn1uZXh0KEEsZSx0KXtyZXR1cm57dmFsdWU6bmV3IHRoaXMudHlwZShlLHQsdGhpcy52YWx1ZShBKSksZG9uZTohMX19fWNvbnN0IEs9e1trLk5VTExdOnt2YWx1ZTooKT0+bnVsbH0sW2suVFJVRV06e3ZhbHVlOigpPT4hMH0sW2suRkFMU0VdOnt2YWx1ZTooKT0+ITF9LFtrLlNNQUxMX0lOVF06e3JlYWQ6SX0sW2suU01BTExfSU5UXzE2XTp7cmVhZDpsfSxbay5MQVJHRV9JTlRfUE9TSVRJVkVdOntyZWFkOnl9LFtrLkxBUkdFX0lOVF9ORUdBVElWRV06e3JlYWQ6eX0sW2suRkxPQVRJTkddOntyZWFkOll9LFtrLlNUUklOR106e3JlYWQ6VH0sW2suU1lNQk9MXTp7cmVhZDpUfSxbay5CWVRFU106e3JlYWQ6eH0sW2suU09VTkRdOntyZWFkOlJ9LFtrLkJJVE1BUF06e3JlYWQ6R30sW2suVVRGOF06e3JlYWQ6Yn0sW2suQVJSQVldOnt0eXBlOlAscmVhZDpJfSxbay5PUkRFUkVEX0NPTExFQ1RJT05dOnt0eXBlOlAscmVhZDpJfSxbay5TRVRdOnt0eXBlOlAscmVhZDpJfSxbay5JREVOVElUWV9TRVRdOnt0eXBlOlAscmVhZDpJfSxbay5ESUNUSU9OQVJZXTp7dHlwZTpQLHZhbHVlOkE9PjIqQS5yZWFkKEkpfSxbay5JREVOVElUWV9ESUNUSU9OQVJZXTp7dHlwZTpQLHZhbHVlOkE9PjIqQS5yZWFkKEkpfSxbay5DT0xPUl06e3JlYWQ6SH0sW2suVFJBTlNMVUNFTlRfQ09MT1JdOntyZWFkOnZ9LFtrLlBPSU5UXTp7dHlwZTpQLHZhbHVlOigpPT4yfSxbay5SRUNUQU5HTEVdOnt0eXBlOlAsdmFsdWU6KCk9PjR9LFtrLkZPUk1dOnt0eXBlOlAsdmFsdWU6KCk9PjV9LFtrLlNRVUVBS106e3R5cGU6UCx2YWx1ZTooKT0+Nn0sW2suT0JKRUNUX1JFRl06e3R5cGU6TyxyZWFkOlV9fSxYPUFycmF5LmZyb20oe2xlbmd0aDoyNTZ9LChBLGUpPT5LW2VdP25ldyBXKEtbZV0pOm51bGwpLFo9bmV3IFcoe3R5cGU6Y2xhc3MgZXh0ZW5kcyBQe2NvbnN0cnVjdG9yKEEsZSl7c3VwZXIoQSxlLDApfX0sdmFsdWU6KCk9Pm51bGx9KTtjbGFzcyBfe2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5idWZmZXI9QSx0aGlzLnN0cmVhbT1uZXcgbyhBLGUpfVtTeW1ib2wuaXRlcmF0b3JdKCl7cmV0dXJuIHRoaXN9bmV4dCgpe2lmKHRoaXMuc3RyZWFtLnBvc2l0aW9uPj10aGlzLnN0cmVhbS51aW50OGEubGVuZ3RoKXJldHVybnt2YWx1ZTpudWxsLGRvbmU6ITB9O2NvbnN0IEE9dGhpcy5zdHJlYW0ucG9zaXRpb24sZT10aGlzLnN0cmVhbS5yZWFkKGcpLHQ9WFtlXTtpZihudWxsIT09dClyZXR1cm4gdC5uZXh0KHRoaXMuc3RyZWFtLGUsQSk7aWYoZTxrLk9CSkVDVF9SRUYpcmV0dXJuIFoubmV4dCh0aGlzLnN0cmVhbSxlLEEpO2NvbnN0IG49dGhpcy5zdHJlYW0ucmVhZChnKSxpPXRoaXMuc3RyZWFtLnJlYWQoZyk7cmV0dXJue3ZhbHVlOm5ldyBWKGUsQSxuLGkpLGRvbmU6ITF9fX1jbGFzcyBxe2NvbnN0cnVjdG9yKEEpe2xldHtjbGFzc0lkOmUsdmVyc2lvbjp0LGZpZWxkczpufT1BO3RoaXMuY2xhc3NJZD1lLHRoaXMudmVyc2lvbj10LHRoaXMuZmllbGRzPW59Z2V0IEZJRUxEUygpe3JldHVybltdfWdldCBSQVdfRklFTERTKCl7cmV0dXJuIHRoaXMuZmllbGRzfXN0cmluZyhBKXtyZXR1cm4gU3RyaW5nKHRoaXMuZmllbGRzW0FdKX1udW1iZXIoQSl7cmV0dXJuK3RoaXMuZmllbGRzW0FdfWJvb2xlYW4oQSl7cmV0dXJuISF0aGlzLmZpZWxkc1tBXX10b1N0cmluZygpe3JldHVybiB0aGlzLmNvbnN0cnVjdG9yPT09cT8iIi5jb25jYXQodGhpcy5jb25zdHJ1Y3Rvci5uYW1lLCIgIikuY29uY2F0KHRoaXMuY2xhc3NJZCwiICIpLmNvbmNhdChqW3RoaXMuY2xhc3NJZF0pOnRoaXMuY29uc3RydWN0b3IubmFtZX1zdGF0aWMgZGVmaW5lKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpxO2NsYXNzIHQgZXh0ZW5kcyBle2dldCBGSUVMRFMoKXtyZXR1cm4gQX1zdGF0aWMgZ2V0IEZJRUxEUygpe3JldHVybiBBfX1yZXR1cm4gT2JqZWN0LmtleXMoQSkuZm9yRWFjaChlPT57Y29uc3Qgbj1BW2VdO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LnByb3RvdHlwZSxlLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvXyhcdykvZyxBPT57bGV0WyxlXT1BO3JldHVybiBlLnRvVXBwZXJDYXNlKCl9KSx7Z2V0KCl7cmV0dXJuIHRoaXMuZmllbGRzW25dfX0pfSksdH19Y2xhc3MgJHtjb25zdHJ1Y3Rvcigpe2xldCBBO3RoaXMuYml0PW5ldyBVaW50MzJBcnJheSgxKSx0aGlzLmNyYz0wLHRoaXMuYz0wLHRoaXMudGFibGU9W107Zm9yKGxldCBlPTA7ZTwyNTY7ZSsrKXtBPWU7Zm9yKGxldCBlPTA7ZTw4O2UrKylBPTEmQT8zOTg4MjkyMzg0XkE+Pj4xOkE+Pj4xO3RoaXMudGFibGVbZV09QT4+PjB9fXVwZGF0ZShBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpBLmxlbmd0aCxuPX50aGlzLmNyYz4+PjA7Zm9yKGxldCBpPTA7aTx0O2krKyluPW4+Pj44XnRoaXMudGFibGVbMjU1JihuXkFbZStpXSldO3JldHVybiB0aGlzLmNyYz1+bj4+PjAsdGhpc31nZXQgZGlnZXN0KCl7cmV0dXJuIHRoaXMuY3JjfX1jb25zdCBBQT1bMCw0Mjc4MTkwMDgwLDQyOTQ5NjcyOTUsNDI4NjYxMTU4NCw0Mjk0OTAxNzYwLDQyNzgyNTUzNjAsNDI3ODE5MDMzNSw0Mjc4MjU1NjE1LDQyOTQ5NjcwNDAsNDI5NDkwMjAxNSw0MjgwMjk1NDU2LDQyODI0MDA4MzIsNDI4NDUwNjIwOCw0Mjg4NjUxMTY3LDQyOTA3NTY1NDMsNDI5Mjg2MTkxOSw0Mjc4NzE2NDI0LDQyNzkyNDI3NjgsNDI3OTc2OTExMiw0MjgwODIxODAwLDQyODEzNDgxNDQsNDI4MTg3NDQ4OCw0MjgyOTI3MTc2LDQyODM0NTM1MjAsNDI4Mzk3OTg2NCw0Mjg1MDMyNTUyLDQyODU1NTg4OTYsNDI4NjA4NTI0MCw0Mjg3MDcyMTM1LDQyODc1OTg0NzksNDI4ODEyNDgyMyw0Mjg5MTc3NTExLDQyODk3MDM4NTUsNDI5MDIzMDE5OSw0MjkxMjgyODg3LDQyOTE4MDkyMzEsNDI5MjMzNTU3NSw0MjkzMzg4MjYzLDQyOTM5MTQ2MDcsNDI5NDQ0MDk1MSw0Mjc4MTkwMDgwLDQyNzgyMDMxMzYsNDI3ODIxNjE5Miw0Mjc4MjI5MjQ4LDQyNzgyNDIzMDQsNDI3ODI1NTM2MCw0Mjc4MTkwMTMxLDQyNzgyMDMxODcsNDI3ODIxNjI0Myw0Mjc4MjI5Mjk5LDQyNzgyNDIzNTUsNDI3ODI1NTQxMSw0Mjc4MTkwMTgyLDQyNzgyMDMyMzgsNDI3ODIxNjI5NCw0Mjc4MjI5MzUwLDQyNzgyNDI0MDYsNDI3ODI1NTQ2Miw0Mjc4MTkwMjMzLDQyNzgyMDMyODksNDI3ODIxNjM0NSw0Mjc4MjI5NDAxLDQyNzgyNDI0NTcsNDI3ODI1NTUxMyw0Mjc4MTkwMjg0LDQyNzgyMDMzNDAsNDI3ODIxNjM5Niw0Mjc4MjI5NDUyLDQyNzgyNDI1MDgsNDI3ODI1NTU2NCw0Mjc4MTkwMzM1LDQyNzgyMDMzOTEsNDI3ODIxNjQ0Nyw0Mjc4MjI5NTAzLDQyNzgyNDI1NTksNDI3ODI1NTYxNSw0MjgxNTMyNDE2LDQyODE1NDU0NzIsNDI4MTU1ODUyOCw0MjgxNTcxNTg0LDQyODE1ODQ2NDAsNDI4MTU5NzY5Niw0MjgxNTMyNDY3LDQyODE1NDU1MjMsNDI4MTU1ODU3OSw0MjgxNTcxNjM1LDQyODE1ODQ2OTEsNDI4MTU5Nzc0Nyw0MjgxNTMyNTE4LDQyODE1NDU1NzQsNDI4MTU1ODYzMCw0MjgxNTcxNjg2LDQyODE1ODQ3NDIsNDI4MTU5Nzc5OCw0MjgxNTMyNTY5LDQyODE1NDU2MjUsNDI4MTU1ODY4MSw0MjgxNTcxNzM3LDQyODE1ODQ3OTMsNDI4MTU5Nzg0OSw0MjgxNTMyNjIwLDQyODE1NDU2NzYsNDI4MTU1ODczMiw0MjgxNTcxNzg4LDQyODE1ODQ4NDQsNDI4MTU5NzkwMCw0MjgxNTMyNjcxLDQyODE1NDU3MjcsNDI4MTU1ODc4Myw0MjgxNTcxODM5LDQyODE1ODQ4OTUsNDI4MTU5Nzk1MSw0Mjg0ODc0NzUyLDQyODQ4ODc4MDgsNDI4NDkwMDg2NCw0Mjg0OTEzOTIwLDQyODQ5MjY5NzYsNDI4NDk0MDAzMiw0Mjg0ODc0ODAzLDQyODQ4ODc4NTksNDI4NDkwMDkxNSw0Mjg0OTEzOTcxLDQyODQ5MjcwMjcsNDI4NDk0MDA4Myw0Mjg0ODc0ODU0LDQyODQ4ODc5MTAsNDI4NDkwMDk2Niw0Mjg0OTE0MDIyLDQyODQ5MjcwNzgsNDI4NDk0MDEzNCw0Mjg0ODc0OTA1LDQyODQ4ODc5NjEsNDI4NDkwMTAxNyw0Mjg0OTE0MDczLDQyODQ5MjcxMjksNDI4NDk0MDE4NSw0Mjg0ODc0OTU2LDQyODQ4ODgwMTIsNDI4NDkwMTA2OCw0Mjg0OTE0MTI0LDQyODQ5MjcxODAsNDI4NDk0MDIzNiw0Mjg0ODc1MDA3LDQyODQ4ODgwNjMsNDI4NDkwMTExOSw0Mjg0OTE0MTc1LDQyODQ5MjcyMzEsNDI4NDk0MDI4Nyw0Mjg4MjE3MDg4LDQyODgyMzAxNDQsNDI4ODI0MzIwMCw0Mjg4MjU2MjU2LDQyODgyNjkzMTIsNDI4ODI4MjM2OCw0Mjg4MjE3MTM5LDQyODgyMzAxOTUsNDI4ODI0MzI1MSw0Mjg4MjU2MzA3LDQyODgyNjkzNjMsNDI4ODI4MjQxOSw0Mjg4MjE3MTkwLDQyODgyMzAyNDYsNDI4ODI0MzMwMiw0Mjg4MjU2MzU4LDQyODgyNjk0MTQsNDI4ODI4MjQ3MCw0Mjg4MjE3MjQxLDQyODgyMzAyOTcsNDI4ODI0MzM1Myw0Mjg4MjU2NDA5LDQyODgyNjk0NjUsNDI4ODI4MjUyMSw0Mjg4MjE3MjkyLDQyODgyMzAzNDgsNDI4ODI0MzQwNCw0Mjg4MjU2NDYwLDQyODgyNjk1MTYsNDI4ODI4MjU3Miw0Mjg4MjE3MzQzLDQyODgyMzAzOTksNDI4ODI0MzQ1NSw0Mjg4MjU2NTExLDQyODgyNjk1NjcsNDI4ODI4MjYyMyw0MjkxNTU5NDI0LDQyOTE1NzI0ODAsNDI5MTU4NTUzNiw0MjkxNTk4NTkyLDQyOTE2MTE2NDgsNDI5MTYyNDcwNCw0MjkxNTU5NDc1LDQyOTE1NzI1MzEsNDI5MTU4NTU4Nyw0MjkxNTk4NjQzLDQyOTE2MTE2OTksNDI5MTYyNDc1NSw0MjkxNTU5NTI2LDQyOTE1NzI1ODIsNDI5MTU4NTYzOCw0MjkxNTk4Njk0LDQyOTE2MTE3NTAsNDI5MTYyNDgwNiw0MjkxNTU5NTc3LDQyOTE1NzI2MzMsNDI5MTU4NTY4OSw0MjkxNTk4NzQ1LDQyOTE2MTE4MDEsNDI5MTYyNDg1Nyw0MjkxNTU5NjI4LDQyOTE1NzI2ODQsNDI5MTU4NTc0MCw0MjkxNTk4Nzk2LDQyOTE2MTE4NTIsNDI5MTYyNDkwOCw0MjkxNTU5Njc5LDQyOTE1NzI3MzUsNDI5MTU4NTc5MSw0MjkxNTk4ODQ3LDQyOTE2MTE5MDMsNDI5MTYyNDk1OSw0Mjk0OTAxNzYwLDQyOTQ5MTQ4MTYsNDI5NDkyNzg3Miw0Mjk0OTQwOTI4LDQyOTQ5NTM5ODQsNDI5NDk2NzA0MCw0Mjk0OTAxODExLDQyOTQ5MTQ4NjcsNDI5NDkyNzkyMyw0Mjk0OTQwOTc5LDQyOTQ5NTQwMzUsNDI5NDk2NzA5MSw0Mjk0OTAxODYyLDQyOTQ5MTQ5MTgsNDI5NDkyNzk3NCw0Mjk0OTQxMDMwLDQyOTQ5NTQwODYsNDI5NDk2NzE0Miw0Mjk0OTAxOTEzLDQyOTQ5MTQ5NjksNDI5NDkyODAyNSw0Mjk0OTQxMDgxLDQyOTQ5NTQxMzcsNDI5NDk2NzE5Myw0Mjk0OTAxOTY0LDQyOTQ5MTUwMjAsNDI5NDkyODA3Niw0Mjk0OTQxMTMyLDQyOTQ5NTQxODgsNDI5NDk2NzI0NCw0Mjk0OTAyMDE1LDQyOTQ5MTUwNzEsNDI5NDkyODEyNyw0Mjk0OTQxMTgzLDQyOTQ5NTQyMzksNDI5NDk2NzI5NV0sZUE9WzQyOTQ5NjcyOTUsNDI3ODE5MDA4MF0sdEE9bmV3IGMoe3NpemVPZihBLGUpe2NvbnN0IHQ9QVtlXTtyZXR1cm4gdDw9MjIzPzE6dDw9MjU0PzI6NX0scmVhZChBLGUpe2NvbnN0IHQ9QVtlXTtyZXR1cm4gdDw9MjIzP3Q6dDw9MjU0PzI1NioodC0yMjQpK0FbZSsxXTpNLnJlYWQoQSxlKzEpfX0pO2NsYXNzIG5Be2RlY29kZShBLGUsdCxuLGkpe2NvbnN0IHI9dGhpcy5kZWNvZGVQaXhlbHMobiwzMj09PXQpO2lmKHQ8PTgpcmV0dXJuIGl8fChpPTE9PT10P2VBOkFBKSx0aGlzLnVucGFja1BpeGVscyhyLEEsZSx0LGkpO2lmKDE2PT09dClyZXR1cm4gdGhpcy5yYXN0ZXIxNlRvMzIocixBLGUpO2lmKDMyPT09dClyZXR1cm4gcjt0aHJvdyBuZXcgRXJyb3IoIlVuaGFuZGxlZCBTcXVlYWsgSW1hZ2UgZGVwdGguIil9ZGVjb2RlUGl4ZWxzKEEsZSl7bGV0IHQ7aWYoQXJyYXkuaXNBcnJheShBKXx8QSBpbnN0YW5jZW9mIFVpbnQzMkFycmF5KXtpZih0PW5ldyBVaW50MzJBcnJheShBKSxlKWZvcihsZXQgQT0wO0E8dC5sZW5ndGg7QSsrKTAhPT10W0FdJiYodFtBXT00Mjc4MTkwMDgwfHRbQV0pO3JldHVybiB0fWNvbnN0IG49bmV3IG8oQS5idWZmZXIsQS5ieXRlT2Zmc2V0KSxpPW4ucmVhZCh0QSk7dD1uZXcgVWludDMyQXJyYXkoaSk7bGV0IHI9MDtmb3IoO3I8aTspe2NvbnN0IEE9bi5yZWFkKHRBKSxpPUE+PjI7bGV0IG87c3dpdGNoKDMmQSl7Y2FzZSAwOnIrPWk7YnJlYWs7Y2FzZSAxOm89bi5yZWFkKGcpLG98PW88PDI0fG88PDE2fG88PDgsZSYmMCE9PW8mJihvfD00Mjc4MTkwMDgwKTtmb3IobGV0IEE9MDtBPGk7QSsrKXRbcisrXT1vO2JyZWFrO2Nhc2UgMjpvPW4ucmVhZChNKSxlJiYwIT09byYmKG98PTQyNzgxOTAwODApO2ZvcihsZXQgQT0wO0E8aTtBKyspdFtyKytdPW87YnJlYWs7Y2FzZSAzOmZvcihsZXQgQT0wO0E8aTtBKyspbz1uLnJlYWQoTSksZSYmMCE9PW8mJihvfD00Mjc4MTkwMDgwKSx0W3IrK109b319cmV0dXJuIHR9dW5wYWNrUGl4ZWxzKEEsZSx0LG4saSl7Y29uc3Qgcj1uZXcgVWludDMyQXJyYXkoZSp0KSxvPSgxPDxuKS0xLHM9MzIvbjtsZXQgYT0wLEI9MDtmb3IobGV0IGM9MDtjPHQ7YysrKXtsZXQgdCxjPS0xO2ZvcihsZXQgZz0wO2c8ZTtnKyspYzwwJiYoYz1uKihzLTEpLHQ9QVtCKytdKSxyW2ErK109aVt0Pj5jJm9dLGMtPW59cmV0dXJuIHJ9cmFzdGVyMTZUbzMyKEEsZSx0KXtjb25zdCBuPW5ldyBVaW50MzJBcnJheSgyKkEubGVuZ3RoKTtsZXQgaSxyLG8scz0wLGE9MDtmb3IobGV0IEI9MDtCPHQ7QisrKXtpPS0xO2ZvcihsZXQgdD0wO3Q8ZTt0Kyspe2lmKGk8MCYmKGk9MTYscj1BW3MrK10pLG89cj4+aSY2NTUzNSwwIT09byl7bz00Mjc4MTkwMDgwfChvPj43JjI0OCk8PDE2fChvPj4yJjI0OCk8PDh8bzw8MyYyNDh9blthKytdPW8saS09MTZ9fXJldHVybiBufWJ1aWxkQ3VzdG9tQ29sb3JtYXAoQSxlLHQpe2NvbnN0IG49bmV3IFVpbnQzMkFycmF5KDE8PEEpO2ZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7QSsrKW5bQV09dFtlW0FdLmluZGV4LTFdO3JldHVybiBufX1jb25zdCBpQT1bNyw4LDksMTAsMTEsMTIsMTMsMTQsMTYsMTcsMTksMjEsMjMsMjUsMjgsMzEsMzQsMzcsNDEsNDUsNTAsNTUsNjAsNjYsNzMsODAsODgsOTcsMTA3LDExOCwxMzAsMTQzLDE1NywxNzMsMTkwLDIwOSwyMzAsMjUzLDI3OSwzMDcsMzM3LDM3MSw0MDgsNDQ5LDQ5NCw1NDQsNTk4LDY1OCw3MjQsNzk2LDg3Niw5NjMsMTA2MCwxMTY2LDEyODIsMTQxMSwxNTUyLDE3MDcsMTg3OCwyMDY2LDIyNzIsMjQ5OSwyNzQ5LDMwMjQsMzMyNywzNjYwLDQwMjYsNDQyOCw0ODcxLDUzNTgsNTg5NCw2NDg0LDcxMzIsNzg0NSw4NjMwLDk0OTMsMTA0NDIsMTE0ODcsMTI2MzUsMTM4OTksMTUyODksMTY4MTgsMTg1MDAsMjAzNTAsMjIzODUsMjQ2MjMsMjcwODYsMjk3OTQsMzI3NjddLHJBPXsyOlstMSwyLC0xLDJdLDM6Wy0xLC0xLDIsNCwtMSwtMSwyLDRdLDQ6Wy0xLC0xLC0xLC0xLDIsNCw2LDgsLTEsLTEsLTEsLTEsMiw0LDYsOF0sNTpbLTEsLTEsLTEsLTEsLTEsLTEsLTEsLTEsMSwyLDQsNiw4LDEwLDEzLDE2LC0xLC0xLC0xLC0xLC0xLC0xLC0xLC0xLDEsMiw0LDYsOCwxMCwxMywxNl19O2NsYXNzIG9Be2NvbnN0cnVjdG9yKEEpe3RoaXMuYml0c1BlclNhbXBsZT1BLHRoaXMuaW5kZXhUYWJsZT1yQVtBXSx0aGlzLnNpZ25NYXNrPTE8PEEtMSx0aGlzLnZhbHVlTWFzaz10aGlzLnNpZ25NYXNrLTEsdGhpcy52YWx1ZUhpZ2hCaXQ9dGhpcy5zaWduTWFzaz4+MSx0aGlzLmJpdFBvc2l0aW9uPTAsdGhpcy5jdXJyZW50Qnl0ZT0wLHRoaXMuc3RyZWFtPW51bGwsdGhpcy5lbmQ9MH1kZWNvZGUoQSl7dGhpcy5iaXRQb3NpdGlvbj0wLHRoaXMuY3VycmVudEJ5dGU9MCx0aGlzLnN0cmVhbT1uZXcgbyhBLmJ1ZmZlcixBLmJ5dGVPZmZzZXQpLHRoaXMuZW5kPUEuYnl0ZU9mZnNldCtBLmxlbmd0aDtjb25zdCBlPU1hdGguZmxvb3IoOCpBLmxlbmd0aC90aGlzLmJpdHNQZXJTYW1wbGUpLHQ9bmV3IEludDE2QXJyYXkoZSk7bGV0IG49MCxpPTA7Zm9yKGxldCBBPTA7QTxlO0ErKyl7Y29uc3QgZT10aGlzLm5leHRDb2RlKCk7cihlPj0wLCJSYW4gb3V0IG9mIGJpdHMgaW4gU3F1ZWFrIFNvdW5kIik7bGV0IG89aUFbaV0scz0wO2ZvcihsZXQgQT10aGlzLnZhbHVlSGlnaEJpdDtBPjA7QT4+PTEpMCE9KGUmQSkmJihzKz1vKSxvPj49MTtzKz1vLG4rPTA9PShlJnRoaXMuc2lnbk1hc2spP3M6LXMsaSs9dGhpcy5pbmRleFRhYmxlW2VdLGk8MCYmKGk9MCksaT44OCYmKGk9ODgpLG4+MzI3NjcmJihuPTMyNzY3KSxuPC0zMjc2OCYmKG49LTMyNzY4KSx0W0FdPW59cmV0dXJuIHR9bmV4dENvZGUoKXtsZXQgQT10aGlzLmJpdHNQZXJTYW1wbGUsZT1BLXRoaXMuYml0UG9zaXRpb24sdD1lPDA/dGhpcy5jdXJyZW50Qnl0ZT4+LWU6dGhpcy5jdXJyZW50Qnl0ZTw8ZTtmb3IoO2U+MDspe2lmKEEtPXRoaXMuYml0UG9zaXRpb24sISh0aGlzLmVuZC10aGlzLnN0cmVhbS5wb3NpdGlvbj4wKSlyZXR1cm4gdGhpcy5jdXJyZW50Qnl0ZT0wLHRoaXMuYml0UG9zaXRpb249MCwtMTt0aGlzLmN1cnJlbnRCeXRlPXRoaXMuc3RyZWFtLnJlYWQoZyksdGhpcy5iaXRQb3NpdGlvbj04LGU9QS10aGlzLmJpdFBvc2l0aW9uLHQrPWU8MD90aGlzLmN1cnJlbnRCeXRlPj4tZTp0aGlzLmN1cnJlbnRCeXRlPDxlfXJldHVybiB0aGlzLmJpdFBvc2l0aW9uLT1BLHRoaXMuY3VycmVudEJ5dGU9dGhpcy5jdXJyZW50Qnl0ZSYyNTU+PjgtdGhpcy5iaXRQb3NpdGlvbix0fXN0YXRpYyBzYW1wbGVzKEEsZSl7cmV0dXJuIDgqZS5sZW5ndGgvQX19Y2xhc3Mgc0F7Y29uc3RydWN0b3IoKXtsZXQgQT1hcmd1bWVudHMubGVuZ3RoPjAmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bmV3IFVpbnQ4QXJyYXkodGhpcy5zaXplKSxlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3RoaXMudWludDhhPUEsdGhpcy5vZmZzZXQ9ZX1lcXVhbHMoQSl7Zm9yKGNvbnN0IGUgaW4gQSlpZih0aGlzW2VdIT09QVtlXSlyZXR1cm4hMTtyZXR1cm4hMH12aWV3KCl7Y29uc3QgQT10aGlzLmNvbnN0cnVjdG9yLm5hbWUsZT17dG9TdHJpbmc6KCk9PkF9O2Zvcihjb25zdCBBIGluIHRoaXMuc2hhcGUpZVtBXT10aGlzW0FdO3JldHVybiBlfXN0YXRpYyBpbml0Q29uc3RydWN0b3IoQSl7cmV0dXJuIEEuc2l6ZT1BLnByb3RvdHlwZS5zaXplLEF9c3RhdGljIGV4dGVuZChBKXtjb25zdCBlPWNsYXNzIGV4dGVuZHMgc0F7Z2V0IHNoYXBlKCl7cmV0dXJuIEF9fTtsZXQgdD0wO3JldHVybiBPYmplY3Qua2V5cyhBKS5mb3JFYWNoKG49PntpZihPYmplY3QuZGVmaW5lUHJvcGVydHkoZS5wcm90b3R5cGUsbixBW25dLmFzUHJvcGVydHlPYmplY3QodCkpLDA9PT1BW25dLnNpemUpdGhyb3cgbmV3IEVycm9yKCJQYWNrZXQgY2Fubm90IGJlIGRlZmluZWQgd2l0aCB2YXJpYWJsZSBzaXplZCBtZW1iZXJzLiIpO3QrPUFbbl0uc2l6ZX0pLGUucHJvdG90eXBlLnNpemU9dCxlLnNpemU9dCxlfX1jbGFzcyBhQSBleHRlbmRzKHNBLmV4dGVuZCh7cmlmZjpuZXcgZig0KSxsZW5ndGg6Rix3YXZlOm5ldyBmKDQpfSkpe31zQS5pbml0Q29uc3RydWN0b3IoYUEpO2NsYXNzIEJBIGV4dGVuZHMoc0EuZXh0ZW5kKHtjaHVua1R5cGU6bmV3IGYoNCksbGVuZ3RoOkZ9KSl7fXNBLmluaXRDb25zdHJ1Y3RvcihCQSk7Y2xhc3MgY0EgZXh0ZW5kcyhzQS5leHRlbmQoe2Zvcm1hdDpwLGNoYW5uZWxzOnAsc2FtcGxlUmF0ZTpGLGJ5dGVzUGVyU2VjOkYsYmxvY2tBbGlnbm1lbnQ6cCxiaXRzUGVyU2FtcGxlOnB9KSl7fXNBLmluaXRDb25zdHJ1Y3RvcihjQSk7Y2xhc3MgZ0F7ZW5jb2RlKEEpe2xldHtjaGFubmVsczplPTEsc2FtcGxlUmF0ZTp0PTIyMDUwfT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06e307Y29uc3Qgbj1uZXcgVWludDhBcnJheShBLmJ1ZmZlcixBLmJ5dGVPZmZzZXQsQS5ieXRlTGVuZ3RoKSxpPWFBLnNpemUrQkEuc2l6ZStjQS5zaXplK0JBLnNpemUrbi5sZW5ndGgscj1uZXcgbyhuZXcgQXJyYXlCdWZmZXIoaSkpO3JldHVybiByLndyaXRlU3RydWN0KGFBLHtyaWZmOiJSSUZGIixsZW5ndGg6aS04LHdhdmU6IldBVkUifSksci53cml0ZVN0cnVjdChCQSx7Y2h1bmtUeXBlOiJmbXQgIixsZW5ndGg6Y0Euc2l6ZX0pLHIud3JpdGVTdHJ1Y3QoY0Ese2Zvcm1hdDoxLGNoYW5uZWxzOmUsc2FtcGxlUmF0ZTp0LGJ5dGVzUGVyU2VjOjIqdCplLGJsb2NrQWxpZ25tZW50OjIqZSxiaXRzUGVyU2FtcGxlOjE2fSksci53cml0ZVN0cnVjdChCQSx7Y2h1bmtUeXBlOiJkYXRhIixsZW5ndGg6aS1yLnBvc2l0aW9uLUJBLnNpemV9KSxyLndyaXRlQnl0ZXMobiksci51aW50OGF9c3RhdGljIGVuY29kZShBLGUpe3JldHVybihuZXcgZ0EpLmVuY29kZShBLGUpfXN0YXRpYyBzYW1wbGVzKEEpe2NvbnN0IGU9bmV3IEJBKEEsYUEuc2l6ZSkubGVuZ3RoO3JldHVybiBuZXcgQkEoQSxhQS5zaXplK0JBLnNpemUrZSkubGVuZ3RoLzJ9fXZhciBFQT10KDMyKSxRQT10Lm4oRUEpO2NsYXNzIHVBIGV4dGVuZHMocS5kZWZpbmUoe1g6MCxZOjF9KSl7fWNsYXNzIGxBIGV4dGVuZHMocS5kZWZpbmUoe1g6MCxZOjEsWDI6MixZMjozfSkpe2dldCB3aWR0aCgpe3JldHVybiB0aGlzLngyLXRoaXMueH1nZXQgaGVpZ2h0KCl7cmV0dXJuIHRoaXMueTItdGhpcy55fX1jbGFzcyBoQSBleHRlbmRzKHEuZGVmaW5lKHtXSURUSDowLEhFSUdIVDoxLERFUFRIOjIsQllURVM6NCxDT0xPUk1BUDo1fSkpe2dldCBkZWNvZGVkKCl7cmV0dXJuIHRoaXMuX2RlY29kZWR8fCh0aGlzLl9kZWNvZGVkPShBPT57Zm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKz00KXtjb25zdCB0PUFbZSsyXSxuPUFbZSswXTtBW2UrMl09bixBW2UrMF09dH1yZXR1cm4gQX0pKG5ldyBVaW50OEFycmF5KChuZXcgbkEpLmRlY29kZSh0aGlzLndpZHRoLnZhbHVlLHRoaXMuaGVpZ2h0LnZhbHVlLHRoaXMuZGVwdGgudmFsdWUsdGhpcy5ieXRlcy52YWx1ZSx0aGlzLmNvbG9ybWFwJiZ0aGlzLmNvbG9ybWFwLm1hcChBPT5BLnZhbHVlT2YoKSkpLmJ1ZmZlcikpKSx0aGlzLl9kZWNvZGVkfWdldCBleHRlbnNpb24oKXtyZXR1cm4idW5jb21wcmVzc2VkIn19Y2xhc3Mgd0EgZXh0ZW5kcyhxLmRlZmluZSh7U1RBR0VfQ09OVEVOVFM6MixPQkpfTkFNRTo2LFZBUlM6NyxCTE9DS1NfQklOOjgsSVNfQ0xPTkU6OSxNRURJQToxMCxDVVJSRU5UX0NPU1RVTUU6MTEsWk9PTToxMixIX1BBTjoxMyxWX1BBTjoxNCxPQlNPTEVURV9TQVZFRF9TVEFURToxNSxTUFJJVEVfT1JERVJfSU5fTElCUkFSWToxNixWT0xVTUU6MTcsVEVNUE9fQlBNOjE4LFNDRU5FX1NUQVRFUzoxOSxMSVNUUzoyMH0pKXtnZXQgc3ByaXRlT3JkZXJJbkxpYnJhcnkoKXtyZXR1cm4gdGhpcy5maWVsZHNbdGhpcy5GSUVMRFMuU1BSSVRFX09SREVSX0lOX0xJQlJBUlldfHxudWxsfWdldCB0ZW1wb0JQTSgpe3JldHVybiB0aGlzLmZpZWxkc1t0aGlzLkZJRUxEUy5URU1QT19CUE1dfHwwfWdldCBsaXN0cygpe3JldHVybiB0aGlzLmZpZWxkc1t0aGlzLkZJRUxEUy5MSVNUU118fFtdfX1jbGFzcyBDQSBleHRlbmRzKHEuZGVmaW5lKHtCT1g6MCxQQVJFTlQ6MSxDT0xPUjozLFZJU0lCTEU6NCxPQkpfTkFNRTo2LFZBUlM6NyxCTE9DS1NfQklOOjgsSVNfQ0xPTkU6OSxNRURJQToxMCxDVVJSRU5UX0NPU1RVTUU6MTEsVklTSUJJTElUWToxMixTQ0FMRV9QT0lOVDoxMyxST1RBVElPTl9ERUdSRUVTOjE0LFJPVEFUSU9OX1NUWUxFOjE1LFZPTFVNRToxNixURU1QT19CUE06MTcsRFJBR0dBQkxFOjE4LFNDRU5FX1NUQVRFUzoxOSxMSVNUUzoyMH0pKXtnZXQgc2NyYXRjaFgoKXtyZXR1cm4gdGhpcy5ib3gueCt0aGlzLmN1cnJlbnRDb3N0dW1lLnJvdGF0aW9uQ2VudGVyLngtMjQwfWdldCBzY3JhdGNoWSgpe3JldHVybiAxODAtKHRoaXMuYm94LnkrdGhpcy5jdXJyZW50Q29zdHVtZS5yb3RhdGlvbkNlbnRlci55KX1nZXQgdmlzaWJsZSgpe3JldHVybiAwPT0oMSZ0aGlzLmZpZWxkc1t0aGlzLkZJRUxEUy5WSVNJQkxFXSl9Z2V0IHRlbXBvQlBNKCl7cmV0dXJuIHRoaXMuZmllbGRzW3RoaXMuRklFTERTLlRFTVBPX0JQTV18fDB9Z2V0IGxpc3RzKCl7cmV0dXJuIHRoaXMuZmllbGRzW3RoaXMuRklFTERTLkxJU1RTXXx8W119fXEuZGVmaW5lKHtSRUNUQU5HTEU6MCxGT05UOjgsQ09MT1I6OSxMSU5FUzoxMX0pO2NsYXNzIElBIGV4dGVuZHMocS5kZWZpbmUoe0NPU1RVTUVfTkFNRTowLEJJVE1BUDoxLFJPVEFUSU9OX0NFTlRFUjoyLFRFWFRfREVUQUlMUzozLEJBU0VfTEFZRVJfREFUQTo0LE9MRF9DT01QT1NJVEU6NX0pKXtnZXQgaW1hZ2UoKXtyZXR1cm4gdGhpcy5vbGRDb21wb3NpdGUgaW5zdGFuY2VvZiBoQT90aGlzLm9sZENvbXBvc2l0ZTp0aGlzLmJhc2VMYXllckRhdGEudmFsdWU/bnVsbDp0aGlzLmJpdG1hcH1nZXQgd2lkdGgoKXtyZXR1cm4gbnVsbD09PXRoaXMuaW1hZ2U/LTE6dGhpcy5pbWFnZS53aWR0aH1nZXQgaGVpZ2h0KCl7cmV0dXJuIG51bGw9PT10aGlzLmltYWdlPy0xOnRoaXMuaW1hZ2UuaGVpZ2h0fWdldCByYXdCeXRlcygpe3JldHVybiBudWxsPT09dGhpcy5pbWFnZT90aGlzLmJhc2VMYXllckRhdGEudmFsdWUuc2xpY2UoKTp0aGlzLmltYWdlLmJ5dGVzLnZhbHVlfWdldCBkZWNvZGVkKCl7cmV0dXJuIG51bGw9PT10aGlzLmltYWdlP3RoaXMuYmFzZUxheWVyRGF0YS52YWx1ZS5zbGljZSgpOnRoaXMuaW1hZ2UuZGVjb2RlZH1nZXQgY3JjKCl7aWYoIXRoaXMuX2NyYyl7Y29uc3QgQT0obmV3ICQpLnVwZGF0ZShuZXcgVWludDhBcnJheShuZXcgVWludDMyQXJyYXkoW3RoaXMuYml0bWFwLndpZHRoXSkuYnVmZmVyKSkudXBkYXRlKG5ldyBVaW50OEFycmF5KG5ldyBVaW50MzJBcnJheShbdGhpcy5iaXRtYXAuaGVpZ2h0XSkuYnVmZmVyKSkudXBkYXRlKG5ldyBVaW50OEFycmF5KG5ldyBVaW50MzJBcnJheShbdGhpcy5iaXRtYXAuZGVwdGhdKS5idWZmZXIpKS51cGRhdGUodGhpcy5yYXdCeXRlcyk7dGhpcy5fY3JjPUEuZGlnZXN0fXJldHVybiB0aGlzLl9jcmN9Z2V0IGV4dGVuc2lvbigpe3JldHVybiB0aGlzLm9sZENvbXBvc2l0ZSBpbnN0YW5jZW9mIGhBPyJ1bmNvbXByZXNzZWQiOnRoaXMuYmFzZUxheWVyRGF0YS52YWx1ZT8ianBnIjoidW5jb21wcmVzc2VkIn10b1N0cmluZygpe3JldHVybidJbWFnZU1lZGlhRGF0YSAiJy5jb25jYXQodGhpcy5jb3N0dW1lTmFtZSwnIicpfX1jbGFzcyBNQSBleHRlbmRzKHEuZGVmaW5lKHtEQVRBOjMsUkFURTo0fSkpe31jbGFzcyBkQSBleHRlbmRzKHEuZGVmaW5lKHtOQU1FOjAsVU5DT01QUkVTU0VEOjEsUkFURTo0LEJJVFNfUEVSX1NBTVBMRTo1LERBVEE6Nn0pKXtnZXQgcmF0ZSgpe3JldHVybiAwIT09dGhpcy51bmNvbXByZXNzZWQuZGF0YS52YWx1ZS5sZW5ndGg/dGhpcy51bmNvbXByZXNzZWQucmF0ZTp0aGlzLmZpZWxkc1t0aGlzLkZJRUxEUy5SQVRFXX1nZXQgcmF3Qnl0ZXMoKXtyZXR1cm4gdGhpcy5kYXRhJiZ0aGlzLmRhdGEudmFsdWU/dGhpcy5kYXRhLnZhbHVlOnRoaXMudW5jb21wcmVzc2VkLmRhdGEudmFsdWV9Z2V0IGRlY29kZWQoKXtyZXR1cm4gdGhpcy5fZGVjb2RlZHx8KHRoaXMuZGF0YSYmdGhpcy5kYXRhLnZhbHVlP3RoaXMuX2RlY29kZWQ9bmV3IG9BKHRoaXMuYml0c1BlclNhbXBsZS52YWx1ZSkuZGVjb2RlKHRoaXMuZGF0YS52YWx1ZSk6dGhpcy5fZGVjb2RlZD1uZXcgSW50MTZBcnJheSgoQT0+e2NvbnN0IGU9bmV3IFVpbnQ4QXJyYXkoQSk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kz0yKWVbdF09QVt0KzFdLGVbdCsxXT1BW3RdO3JldHVybiBlfSkodGhpcy51bmNvbXByZXNzZWQuZGF0YS52YWx1ZS5zbGljZSgpKS5idWZmZXIpKSx0aGlzLl9kZWNvZGVkfWdldCBjcmMoKXtyZXR1cm4gdGhpcy5fY3JjfHwodGhpcy5fY3JjPShuZXcgJCkudXBkYXRlKG5ldyBVaW50MzJBcnJheShbdGhpcy5yYXRlXSkpLnVwZGF0ZSh0aGlzLnJhd0J5dGVzKS5kaWdlc3QpLHRoaXMuX2NyY31nZXQgc2FtcGxlQ291bnQoKXtyZXR1cm4gdGhpcy5kYXRhJiZ0aGlzLmRhdGEudmFsdWU/b0Euc2FtcGxlcyh0aGlzLmJpdHNQZXJTYW1wbGUudmFsdWUsdGhpcy5kYXRhLnZhbHVlKTp0aGlzLnVuY29tcHJlc3NlZC5kYXRhLnZhbHVlLmxlbmd0aC8yfWdldCBleHRlbnNpb24oKXtyZXR1cm4icGNtIn1nZXQgd2F2RW5jb2RlZERhdGEoKXtyZXR1cm4gdGhpcy5fd2F2RW5jb2RlZERhdGF8fCh0aGlzLl93YXZFbmNvZGVkRGF0YT1uZXcgVWludDhBcnJheShnQS5lbmNvZGUodGhpcy5kZWNvZGVkLHtzYW1wbGVSYXRlOnRoaXMucmF0ZSYmdGhpcy5yYXRlLnZhbHVlfSkpKSx0aGlzLl93YXZFbmNvZGVkRGF0YX1nZXQgbWQ1KCl7cmV0dXJuIHRoaXMuX21kNXx8KHRoaXMuX21kNT1RQSgpKHRoaXMud2F2RW5jb2RlZERhdGEpKSx0aGlzLl9tZDV9dG9TdHJpbmcoKXtyZXR1cm4nU291bmRNZWRpYURhdGEgIicuY29uY2F0KHRoaXMubmFtZSwnIicpfX1jbGFzcyBwQSBleHRlbmRzKHEuZGVmaW5lKHtCT1g6MCxISURERU5fV0hFTl9OVUxMOjEsTElTVF9OQU1FOjgsQ09OVEVOVFM6OSxUQVJHRVQ6MTB9KSl7Z2V0IHgoKXtyZXR1cm4gbnVsbD09PXoodGhpcy5oaWRkZW5XaGVuTnVsbCk/NTp0aGlzLmJveC54KzF9Z2V0IHkoKXtyZXR1cm4gbnVsbD09PXoodGhpcy5oaWRkZW5XaGVuTnVsbCk/NTp0aGlzLmJveC55KzF9Z2V0IHdpZHRoKCl7cmV0dXJuIHRoaXMuYm94LndpZHRoLTJ9Z2V0IGhlaWdodCgpe3JldHVybiB0aGlzLmJveC5oZWlnaHQtMn19Y2xhc3MgbUEgZXh0ZW5kcyhxLmRlZmluZSh7Qk9YOjAsUEFSRU5UOjEsRlJBTUVTOjIsQ09MT1I6MyxESVJFQ1RJT046OCxBTElHTk1FTlQ6OX0pKXt9Y2xhc3MgRkEgZXh0ZW5kcyhxLmRlZmluZSh7Qk9YOjAsUEFSRU5UOjEsQ09MT1I6M30pKXt9Y2xhc3MgREEgZXh0ZW5kcyhxLmRlZmluZSh7Qk9YOjAsQ09MT1I6MyxWQUxVRTo4fSkpe31jbGFzcyBZQSBleHRlbmRzKHEuZGVmaW5lKHtCT1g6MCxSRUFET1VUX0ZSQU1FOjEsQ09MT1I6MyxGT05UOjYsVkFMVUU6OCxUQVJHRVQ6MTAsQ01EOjExLFBBUkFNOjEzfSkpe31jbGFzcyBmQSBleHRlbmRzKHEuZGVmaW5lKHtCT1g6MH0pKXt9Y29uc3QgTkE9MSxVQT0yLHlBPTM7Y2xhc3MgVEEgZXh0ZW5kcyhxLmRlZmluZSh7Qk9YOjAsVEFSR0VUOjEsU0hBUEU6MixSRUFET1VUOjE0LFJFQURPVVRfRlJBTUU6MTUsU0xJREVSOjE2LEFMSUdOTUVOVDoxNyxTTElERVJfTUlOOjIwLFNMSURFUl9NQVg6MjF9KSl7Z2V0IHgoKXtyZXR1cm4gdGhpcy5ib3gueH1nZXQgeSgpe3JldHVybiB0aGlzLmJveC55fWdldCBtb2RlKCl7cmV0dXJuIG51bGw9PT16KHRoaXMuc2xpZGVyKT90aGlzLnJlYWRvdXRGcmFtZS5ib3guaGVpZ2h0PD0xND9OQTpVQTp5QX1nZXQgaXNEaXNjcmV0ZSgpe3JldHVybiBNYXRoLmZsb29yKHRoaXMuc2xpZGVyTWluKT09PXRoaXMuc2xpZGVyTWluJiZNYXRoLmZsb29yKHRoaXMuc2xpZGVyTWF4KT09PXRoaXMuc2xpZGVyTWF4JiZNYXRoLmZsb29yKHRoaXMucmVhZG91dC52YWx1ZSk9PT10aGlzLnJlYWRvdXQudmFsdWV9fWNvbnN0IHhBPXtbay5QT0lOVF06dUEsW2suUkVDVEFOR0xFXTpsQSxbay5GT1JNXTpoQSxbay5TUVVFQUtdOmhBLFtrLlNBTVBMRURfU09VTkRdOk1BLFtrLlNQUklURV06Q0EsW2suU1RBR0VdOndBLFtrLklNQUdFX01FRElBXTpJQSxbay5TT1VORF9NRURJQV06ZEEsW2suQUxJR05NRU5UXTptQSxbay5NT1JQSF06RkEsW2suV0FUQ0hFUl9SRUFET1VUX0ZSQU1FXTpmQSxbay5TVEFUSUNfU1RSSU5HXTpEQSxbay5VUERBVElOR19TVFJJTkddOllBLFtrLldBVENIRVJdOlRBLFtrLkxJU1RfV0FUQ0hFUl06cEF9LFJBPUFycmF5LmZyb20oe2xlbmd0aDoyNTZ9LChBLGUpPT54QVtlXXx8bnVsbCk7Y2xhc3MgR0F7Y29uc3RydWN0b3IoQSl7dGhpcy52YWx1ZUl0ZXJhdG9yPUF9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gdGhpc31uZXh0KCl7Y29uc3QgQT10aGlzLnZhbHVlSXRlcmF0b3IubmV4dCgpO2lmKEEuZG9uZSlyZXR1cm4gQTtjb25zdCBlPUEudmFsdWUse2NsYXNzSWQ6dH09ZTtsZXQgbj1lO2lmKGUgaW5zdGFuY2VvZiBQKXtuPVtdO2ZvcihsZXQgQT0wO0E8ZS5zaXplO0ErKyluLnB1c2godGhpcy5uZXh0KCkudmFsdWUpfWlmKG51bGwhPT1SQVt0XXx8ZSBpbnN0YW5jZW9mIFYpe249bmV3KFJBW2UuY2xhc3NJZF18fHEpKHtjbGFzc0lkOmUuY2xhc3NJZCx2ZXJzaW9uOmUudmVyc2lvbixmaWVsZHM6bn0pfXJldHVybnt2YWx1ZTpuLGRvbmU6ITF9fX1jbGFzcyBTQXtjb25zdHJ1Y3RvcihBKXt0aGlzLnRhYmxlPUFycmF5LmZyb20oQSksdGhpcy5maXhlZD10aGlzLmZpeCh0aGlzLnRhYmxlKX1maXgoKXtjb25zdCBBPVtdO2ZvcihsZXQgZT0wO2U8dGhpcy50YWJsZS5sZW5ndGg7ZSsrKXRoaXMuZml4SXRlbSh0aGlzLnRhYmxlW2VdKSxBLnB1c2godGhpcy50YWJsZVtlXSk7cmV0dXJuIEF9Zml4SXRlbShBKXtpZih2b2lkIDAhPT1BLmZpZWxkcyYmKEE9QS5maWVsZHMpLEFycmF5LmlzQXJyYXkoQSkpZm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKyspQVtlXT10aGlzLmRlcmVmKEFbZV0pfWRlcmVmKEEpe3JldHVybiBBIGluc3RhbmNlb2YgTz90aGlzLnRhYmxlW0EuaW5kZXgtMV06QX19Y2xhc3MgYkEgZXh0ZW5kcyhzQS5leHRlbmQoe3N1cHBvcnQ4Qml0OmcscG5nOm5ldyBmKDMpLGRvc0xpbmVFbmRpbmc6bmV3IGYoMiksZG9zRW5kT2ZGaWxlOm5ldyBmKDEpLHVuaXhMaW5lRW5kaW5nOm5ldyBmKDEpfSkpe3N0YXRpYyB2YWxpZGF0ZSgpe3IodGhpcy5lcXVhbHMoe3N1cHBvcnQ4Qml0OjEzNyxwbmc6IlBORyIsZG9zTGluZUVuZGluZzoiXHJcbiIsZG9zRW5kT2ZGaWxlOiIaIix1bml4TGluZUVuZGluZzoiXG4ifSksIlBOR1NpZ25hdHVyZSBkb2VzIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgdmFsdWVzIil9fXNBLmluaXRDb25zdHJ1Y3RvcihiQSk7Y2xhc3MgSEEgZXh0ZW5kcyhzQS5leHRlbmQoe2xlbmd0aDpNLGNodW5rVHlwZTpuZXcgZig0KX0pKXt9c0EuaW5pdENvbnN0cnVjdG9yKEhBKTtjbGFzcyB2QSBleHRlbmRzKHNBLmV4dGVuZCh7Y2hlY2tzdW06TX0pKXt9c0EuaW5pdENvbnN0cnVjdG9yKHZBKTtjbGFzcyBrQSBleHRlbmRzKHNBLmV4dGVuZCh7d2lkdGg6TSxoZWlnaHQ6TSxiaXREZXB0aDpnLGNvbG9yVHlwZTpnLGNvbXByZXNzaW9uTWV0aG9kOmcsZmlsdGVyTWV0aG9kOmcsaW50ZXJsYWNlTWV0aG9kOmd9KSl7fXNBLmluaXRDb25zdHJ1Y3RvcihrQSk7Y2xhc3MgakEgZXh0ZW5kcyhzQS5leHRlbmQoe21ldGhvZDpnfSkpe31zQS5pbml0Q29uc3RydWN0b3IoakEpO2NsYXNzIEpBe2NvbnN0cnVjdG9yKCl7dGhpcy5hZGxlcj0xfXVwZGF0ZShBLGUsdCl7bGV0IG49NjU1MzUmdGhpcy5hZGxlcixpPXRoaXMuYWRsZXI+Pj4xNjtmb3IobGV0IHI9MDtyPHQ7cisrKW49KG4rQVtlK3JdKSU2NTUyMSxpPShpK24pJTY1NTIxO3JldHVybiB0aGlzLmFkbGVyPWk8PDE2fG4sdGhpc31nZXQgZGlnZXN0KCl7cmV0dXJuIHRoaXMuYWRsZXJ9fWNsYXNzIHpBIGV4dGVuZHMoc0EuZXh0ZW5kKHtjbWY6ZyxmbGFnOmd9KSl7fXNBLmluaXRDb25zdHJ1Y3Rvcih6QSk7Y2xhc3MgTEEgZXh0ZW5kcyhzQS5leHRlbmQoe2xhc3RQYWNrZXQ6ZyxsZW5ndGg6cCxsZW5ndGhDaGVjazpwfSkpe31zQS5pbml0Q29uc3RydWN0b3IoTEEpO2NsYXNzIFBBIGV4dGVuZHMoc0EuZXh0ZW5kKHtjaGVja3N1bTpGfSkpe31zQS5pbml0Q29uc3RydWN0b3IoUEEpO2NsYXNzIE9Be2NvbnN0cnVjdG9yKEEpe3RoaXMuc3RyZWFtPUF9Z2V0IHVpbnQ4YSgpe3JldHVybiB0aGlzLnN0cmVhbS51aW50OGF9c2V0IHVpbnQ4YShBKXtyZXR1cm4gdGhpcy5zdHJlYW0udWludDhhPUEsdGhpcy5zdHJlYW0udWludDhhfWdldCBwb3NpdGlvbigpe3JldHVybiB0aGlzLnN0cmVhbS5wb3NpdGlvbn1zZXQgcG9zaXRpb24oQSl7cmV0dXJuIHRoaXMuc3RyZWFtLnBvc2l0aW9uPUEsdGhpcy5zdHJlYW0ucG9zaXRpb259d3JpdGVTdHJ1Y3QoQSxlKXtyZXR1cm4gdGhpcy5zdHJlYW0ud3JpdGVTdHJ1Y3QoQSxlKX13cml0ZUJ5dGVzKEEpe2xldCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowLHQ9YXJndW1lbnRzLmxlbmd0aD4yJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOkEubGVuZ3RoO3JldHVybiB0aGlzLnN0cmVhbS53cml0ZUJ5dGVzKEEsZSx0KX19Y2xhc3MgVkEgZXh0ZW5kcyBPQXtjb25zdHJ1Y3RvcihBKXtzdXBlcihBKSx0aGlzLnN0cmVhbS53cml0ZVN0cnVjdCh6QSx7Y21mOjgsZmxhZzoyOX0pLHRoaXMuYWRsZXI9bmV3IEpBLHRoaXMuY2h1bms9dGhpcy5zdHJlYW0ud3JpdGVTdHJ1Y3QoTEEse2xhc3RQYWNrZXQ6MCxsZW5ndGg6MCxsZW5ndGhDaGVjazo2NTUzNX0pfWdldCBfZGVmbGF0ZUluZGV4KCl7cmV0dXJuIHRoaXMuY2h1bmsubGVuZ3RofXNldCBfZGVmbGF0ZUluZGV4KEEpe3JldHVybiB0aGlzLmNodW5rLmxlbmd0aD1BLHRoaXMuY2h1bmsubGVuZ3RoQ2hlY2s9NjU1MzVeQSx0aGlzLmNodW5rLmxlbmd0aH13cml0ZVN0cnVjdChBLGUpe3RoaXMud3JpdGVCeXRlcyhPYmplY3QuYXNzaWduKG5ldyBBLGUpLnVpbnQ4YSl9d3JpdGVCeXRlcyhBKXtsZXQgZT1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06MCx0PWFyZ3VtZW50cy5sZW5ndGg+MiYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXTpBLmxlbmd0aCxuPWU7Zm9yKDt0LW4+MDspezY1NTM1PT09dGhpcy5fZGVmbGF0ZUluZGV4JiYodGhpcy5jaHVuaz10aGlzLnN0cmVhbS53cml0ZVN0cnVjdChMQSx7bGFzdFBhY2tldDowLGxlbmd0aDowLGxlbmd0aENoZWNrOjY1NTM1fSkpO2NvbnN0IGU9TWF0aC5taW4odC1uLDY1NTM1LXRoaXMuX2RlZmxhdGVJbmRleCk7dGhpcy5zdHJlYW0ud3JpdGVCeXRlcyhBLG4sbitlKSx0aGlzLl9kZWZsYXRlSW5kZXgrPWUsbis9ZX10aGlzLmFkbGVyLnVwZGF0ZShBLGUsdC1lKX1maW5pc2goKXt0aGlzLmNodW5rLmxhc3RQYWNrZXQ9MSx0aGlzLnN0cmVhbS53cml0ZVN0cnVjdChQQSx7Y2hlY2tzdW06dGhpcy5hZGxlci5kaWdlc3R9KX1zdGF0aWMgZXN0aW1hdGVTaXplKEEpe2NvbnN0IGU9TWF0aC5jZWlsKEEvNjU1MzUpO3JldHVybiB6QS5zaXplK2UqTEEuc2l6ZStQQS5zaXplK0F9fWNsYXNzIFdBIGV4dGVuZHMgT0F7Y29uc3RydWN0b3IoQSl7bGV0IGU9YXJndW1lbnRzLmxlbmd0aD4xJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOiJJSERSIjtzdXBlcihBKSx0aGlzLnN0YXJ0PXRoaXMuc3RyZWFtLndyaXRlU3RydWN0KEhBLHtsZW5ndGg6MCxjaHVua1R5cGU6ZX0pLHRoaXMuY3JjPW5ldyAkfWZpbmlzaCgpe2NvbnN0IEE9dGhpcy5zdGFydC5vZmZzZXQrdGhpcy5zdGFydC5zaXplLGU9dGhpcy5wb3NpdGlvbi1BO3RoaXMuc3RhcnQubGVuZ3RoPWUsdGhpcy5jcmMudXBkYXRlKHRoaXMuc3RyZWFtLnVpbnQ4YSxBLU0uc2l6ZSxlK00uc2l6ZSksdGhpcy5zdHJlYW0ud3JpdGVTdHJ1Y3QodkEse2NoZWNrc3VtOnRoaXMuY3JjLmRpZ2VzdH0pfXN0YXRpYyBzaXplKEEpe3JldHVybiBIQS5zaXplK0ErdkEuc2l6ZX19Y2xhc3MgS0F7ZW5jb2RlKEEsZSx0KXtjb25zdCBuPTQqQStqQS5zaXplLGk9biplLHI9YkEuc2l6ZStXQS5zaXplKGtBLnNpemUpK1dBLnNpemUoVkEuZXN0aW1hdGVTaXplKGkpKStXQS5zaXplKDApLHM9bmV3IG8obmV3IEFycmF5QnVmZmVyKHIpKTtzLndyaXRlU3RydWN0KGJBLHtzdXBwb3J0OEJpdDoxMzcscG5nOiJQTkciLGRvc0xpbmVFbmRpbmc6IlxyXG4iLGRvc0VuZE9mRmlsZToiGiIsdW5peExpbmVFbmRpbmc6IlxuIn0pO2NvbnN0IGE9bmV3IFdBKHMsIklIRFIiKTthLndyaXRlU3RydWN0KGtBLHt3aWR0aDpBLGhlaWdodDplLGJpdERlcHRoOjgsY29sb3JUeXBlOjYsY29tcHJlc3Npb25NZXRob2Q6MCxmaWx0ZXJNZXRob2Q6MCxpbnRlcmxhY2VNZXRob2Q6MH0pLGEuZmluaXNoKCk7Y29uc3QgQj1uZXcgV0EocywiSURBVCIpLGM9bmV3IFZBKEIpO2xldCBnPTA7Zm9yKDtnPHQubGVuZ3RoOyl7Yy53cml0ZVN0cnVjdChqQSx7bWV0aG9kOjB9KTtjb25zdCBBPU1hdGgubWluKHQubGVuZ3RoLWcsbi1qQS5zaXplKTtjLndyaXRlQnl0ZXModCxnLGcrQSksZys9QX1jLmZpbmlzaCgpLEIuZmluaXNoKCk7cmV0dXJuIG5ldyBXQShzLCJJRU5EIikuZmluaXNoKCkscy5idWZmZXJ9c3RhdGljIGVuY29kZShBLGUsdCl7cmV0dXJuKG5ldyBLQSkuZW5jb2RlKEEsZSx0KX19Y2xhc3MgWEF7Y29uc3RydWN0b3IoQSl7dGhpcy5maWxlPUF9YXN5bmMoQSl7cmV0dXJuIHIoInVpbnQ4YXJyYXkiPT09QSwiU0IxRmFrZVppcEZpbGUgb25seSBzdXBwb3J0cyB1aW50OGFycmF5IiksUHJvbWlzZS5yZXNvbHZlKHRoaXMuZmlsZS5ieXRlcyl9fWNsYXNzIFpBe2NvbnN0cnVjdG9yKEEpe3RoaXMuZmlsZXM9QX1maWxlKEEpe2lmKEEgaW4gdGhpcy5maWxlcylyZXR1cm4gbmV3IFhBKHRoaXMuZmlsZXNbQV0pfX1jb25zdCBfQT1BPT4idW5jb21wcmVzc2VkIj09PUEuZXh0ZW5zaW9uP25ldyBVaW50OEFycmF5KEtBLmVuY29kZShBLndpZHRoLEEuaGVpZ2h0LEEuZGVjb2RlZCkpOkEuZGVjb2RlZCxxQT1BPT57Y29uc3QgZT1TdHJpbmcoQVtBLmxlbmd0aC0xXSksdD1BLmxlbmd0aC0xO3JldHVybiJtb3VzZSI9PT1lP0FbdF09Il9tb3VzZV8iOiJlZGdlIj09PWU/QVt0XT0iX2VkZ2VfIjpBW0EubGVuZ3RoLTFdaW5zdGFuY2VvZiB3QSYmKEFbdF09Il9zdGFnZV8iKSxBfSwkQT17Z2V0UGFyYW06QT0+e2xldFtlLHQsbixpXT1BO3JldHVybltlLHQsbixpfHwiciJdfSxjaGFuZ2VWYXJpYWJsZTpBPT5bQVsyXSxBWzFdLEFbM11dLEV2ZW50SGF0TW9ycGg6QT0+IlNjcmF0Y2gtU3RhcnRDbGlja2VkIj09PVN0cmluZyhBWzFdKT9bIndoZW5HcmVlbkZsYWciXTpbIndoZW5JUmVjZWl2ZSIsQVsxXV0sTW91c2VDbGlja0V2ZW50SGF0TW9ycGg6KCk9Plsid2hlbkNsaWNrZWQiXSxLZXlFdmVudEhhdE1vcnBoOkE9Plsid2hlbktleVByZXNzZWQiLEFbMV1dLHN0b3BTY3JpcHRzOkE9PiJvdGhlciBzY3JpcHRzIj09PVN0cmluZyhBWzFdKT9bQVswXSwib3RoZXIgc2NyaXB0cyBpbiBzcHJpdGUiXTpBLGFiczpBPT5bImNvbXB1dGVGdW5jdGlvbjpvZjoiLCJhYnMiLEFbMV1dLHNxcnQ6QT0+WyJjb21wdXRlRnVuY3Rpb246b2Y6Iiwic3FydCIsQVsxXV0sIlxcXFwiOkE9PlsiJSIsLi4uQS5zbGljZSgxKV0sZG9SZXR1cm46KCk9Plsic3RvcFNjcmlwdHMiLCJ0aGlzIHNjcmlwdCJdLHN0b3BBbGw6KCk9Plsic3RvcFNjcmlwdHMiLCJhbGwiXSwic2hvd0JhY2tncm91bmQ6IjpBPT5bInN0YXJ0U2NlbmUiLEFbMV1dLG5leHRCYWNrZ3JvdW5kOigpPT5bIm5leHRTY2VuZSJdLGRvRm9yZXZlcklmOkE9PlsiZG9Gb3JldmVyIixbWyJkb0lmIixBWzFdLEFbMl1dXV0sImdldEF0dHJpYnV0ZTpvZjoiOnFBLCJnb3RvU3ByaXRlT3JNb3VzZToiOnFBLCJkaXN0YW5jZVRvOiI6cUEsInBvaW50VG93YXJkczoiOnFBLCJ0b3VjaGluZzoiOnFBfSxBZT1BPT57Y29uc3R7aW5mbzplLHN0YWdlRGF0YTp0LGltYWdlczpuLHNvdW5kczppfT1BLHI9QT0+e2NvbnN0IGU9W107Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0Kz0yKWUucHVzaChbQVt0XSxBW3QrMV1dKTtyZXR1cm4gZX0sbz1BPT57bGV0W2UsdF09QTtyZXR1cm57bmFtZTplLHZhbHVlOnQsaXNQZXJzaXN0ZW50OiExfX0scz1BPT57bGV0Wyx7bGlzdE5hbWU6ZSxjb250ZW50czp0LHg6bix5Omksd2lkdGg6cixoZWlnaHQ6byxoaWRkZW5XaGVuTnVsbDpzfV09QTtyZXR1cm57bGlzdE5hbWU6ZSxjb250ZW50czp0LGlzUGVyc2lzdGVudDohMSx4Om4seTppLHdpZHRoOnIsaGVpZ2h0Om8sdmlzaWJsZTpudWxsIT09KGE9cywib2JqZWN0Ij09dHlwZW9mIGEmJmE/YS52YWx1ZU9mKCk6YSl9O3ZhciBhfSxhPUE9Pntjb25zdCBlPWkuZmluZEluZGV4KGU9PmUuY3JjPT09QS5jcmMpO3JldHVybntzb3VuZE5hbWU6QS5uYW1lLHNvdW5kSUQ6ZSxtZDU6IiIuY29uY2F0KEEubWQ1LCIud2F2Iiksc2FtcGxlQ291bnQ6QS5zYW1wbGVDb3VudCxyYXRlOkEucmF0ZSxmb3JtYXQ6IiJ9fSxCPUE9Pntjb25zdCBlPW4uZmluZEluZGV4KGU9PmUuY3JjPT09QS5jcmMpO3JldHVybntjb3N0dW1lTmFtZTpBLmNvc3R1bWVOYW1lLGJhc2VMYXllcklEOmUsYmFzZUxheWVyTUQ1OiIiLmNvbmNhdChRQSgpKEEucmF3Qnl0ZXMpLCIuIikuY29uY2F0KCh0PUEsInVuY29tcHJlc3NlZCI9PT10LmV4dGVuc2lvbj8icG5nIjoianBnIikpLGJpdG1hcFJlc29sdXRpb246MSxyb3RhdGlvbkNlbnRlclg6QS5yb3RhdGlvbkNlbnRlci54LHJvdGF0aW9uQ2VudGVyWTpBLnJvdGF0aW9uQ2VudGVyLnl9O3ZhciB0fSxjPUE9PntsZXQgZT1BLm1hcChFKTtjb25zdCB0PSRBW2VbMF1dO3JldHVybiB0JiYoZT10KGUpKSxlfSxnPUE9PkEubWFwKGMpLEU9QT0+QSBpbnN0YW5jZW9mIENBP0Eub2JqTmFtZTpBcnJheS5pc0FycmF5KEEpPzA9PT1BLmxlbmd0aHx8QXJyYXkuaXNBcnJheShBWzBdKT9nKEEpOmMoQSk6QSxRPUE9PltBWzBdLngsQVswXS55LGcoQVsxXSldLHU9QT0+QSBpbnN0YW5jZW9mIENBPyhBPT57Y29uc3QgZT1BLm1lZGlhLmZpbHRlcihBPT5BIGluc3RhbmNlb2YgSUEpLG49QS5tZWRpYS5maWx0ZXIoQT0+QSBpbnN0YW5jZW9mIGRBKTtyZXR1cm57b2JqTmFtZTpBLm9iak5hbWUsdmFyaWFibGVzOnIoQS52YXJzKS5tYXAobyksbGlzdHM6cihBLmxpc3RzKS5tYXAocyksc2NyaXB0czpBLmJsb2Nrc0Jpbi5tYXAoUSksY29zdHVtZXM6ZS5tYXAoQiksY3VycmVudENvc3R1bWVJbmRleDplLmZpbmRJbmRleChlPT5lLmNyYz09PUEuY3VycmVudENvc3R1bWUuY3JjKSxzb3VuZHM6bi5tYXAoYSksc2NyYXRjaFg6QS5zY3JhdGNoWCxzY3JhdGNoWTpBLnNjcmF0Y2hZLHNjYWxlOkEuc2NhbGVQb2ludC54LGRpcmVjdGlvbjpNYXRoLnJvdW5kKDFlNipBLnJvdGF0aW9uRGVncmVlcykvMWU2LTI3MCxyb3RhdGlvblN0eWxlOkEucm90YXRpb25TdHlsZSxpc0RyYWdnYWJsZTpBLmRyYWdnYWJsZSxpbmRleEluTGlicmFyeTp0LnNwcml0ZU9yZGVySW5MaWJyYXJ5LmluZGV4T2YoQSksdmlzaWJsZTpBLnZpc2libGUsc3ByaXRlSW5mbzp7fX19KShBKTpudWxsO3JldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KE9iamVjdC5hc3NpZ24oKEE9Pntjb25zdCBlPUEubWVkaWEuZmlsdGVyKEE9PkEgaW5zdGFuY2VvZiBJQSksdD1BLm1lZGlhLmZpbHRlcihBPT5BIGluc3RhbmNlb2YgZEEpO3JldHVybntvYmpOYW1lOkEub2JqTmFtZSx2YXJpYWJsZXM6cihBLnZhcnMpLm1hcChvKSxsaXN0czpyKEEubGlzdHMpLm1hcChzKSxzY3JpcHRzOkEuYmxvY2tzQmluLm1hcChRKSxjb3N0dW1lczplLm1hcChCKSxjdXJyZW50Q29zdHVtZUluZGV4OmUuZmluZEluZGV4KGU9PmUuY3JjPT09QS5jdXJyZW50Q29zdHVtZS5jcmMpLHNvdW5kczp0Lm1hcChhKSxwZW5MYXllck1ENToiNWM4MWEzMzZmYWI4YmU1N2FkYzAzOWE4YTJiMzNjYTkucG5nIixwZW5MYXllcklEOjAsdGVtcG9CUE06QS50ZW1wb0JQTSx2aWRlb0FscGhhOi41LGNoaWxkcmVuOkEuc3RhZ2VDb250ZW50cy5tYXAodSkuZmlsdGVyKEJvb2xlYW4pLnJldmVyc2UoKX19KSh0KSx7aW5mbzooQT0+e2NvbnN0IGU9e307Zm9yKGxldCB0PTA7dDxBLmxlbmd0aDt0Kz0yKSJ0aHVtYm5haWwiIT09U3RyaW5nKEFbdF0pJiYoZVtTdHJpbmcoQVt0XSldPVN0cmluZyhBW3QrMV0pKTtyZXR1cm4gZX0pKGUpfSkpKX07Y2xhc3MgZWUgZXh0ZW5kcyhzQS5leHRlbmQoe3ZlcnNpb246bmV3IGYoMTApLGluZm9CeXRlTGVuZ3RoOk19KSl7dmFsaWRhdGUoKXtyLnZhbGlkYXRlKHRoaXMuZXF1YWxzKHt2ZXJzaW9uOiJTY3JhdGNoVjAxIn0pfHx0aGlzLmVxdWFscyh7dmVyc2lvbjoiU2NyYXRjaFYwMiJ9KSwiSW52YWxpZCBTY3JhdGNoIGZpbGUgc2lnbmF0dXJlLiIpfX1zQS5pbml0Q29uc3RydWN0b3IoZWUpO2NsYXNzIHRlIGV4dGVuZHMoc0EuZXh0ZW5kKHtPYmpTOm5ldyBmKDQpLE9ialNWYWx1ZTpnLFN0Y2g6bmV3IGYoNCksU3RjaFZhbHVlOmcsbnVtT2JqZWN0czpNfSkpe3ZhbGlkYXRlKCl7ci52YWxpZGF0ZSh0aGlzLmVxdWFscyh7T2JqUzoiT2JqUyIsT2JqU1ZhbHVlOjEsU3RjaDoiU3RjaCIsU3RjaFZhbHVlOjF9KSwiSW52YWxpZCBTY3JhdGNoIGZpbGUgaW5mbyBwYWNrZXQgaGVhZGVyLiIpfX1zQS5pbml0Q29uc3RydWN0b3IodGUpO2NsYXNzIG5le2NvbnN0cnVjdG9yKEEpe3RoaXMuYnVmZmVyPUEsdGhpcy5zdHJlYW09bmV3IG8oQSksdGhpcy5zaWduYXR1cmU9dGhpcy5zdHJlYW0ucmVhZFN0cnVjdChlZSksdGhpcy5zaWduYXR1cmUudmFsaWRhdGUoKSx0aGlzLmluZm9IZWFkZXI9dGhpcy5zdHJlYW0ucmVhZFN0cnVjdCh0ZSksdGhpcy5pbmZvSGVhZGVyLnZhbGlkYXRlKCksdGhpcy5zdHJlYW0ucG9zaXRpb24rPXRoaXMuc2lnbmF0dXJlLmluZm9CeXRlTGVuZ3RoLXRlLnNpemUsdGhpcy5kYXRhSGVhZGVyPXRoaXMuc3RyZWFtLnJlYWRTdHJ1Y3QodGUpLHRoaXMuZGF0YUhlYWRlci52YWxpZGF0ZSgpfWdldCBqc29uKCl7cmV0dXJuIEFlKHtpbmZvOnRoaXMuaW5mbygpLHN0YWdlRGF0YTp0aGlzLmRhdGEoKSxpbWFnZXM6dGhpcy5pbWFnZXMoKSxzb3VuZHM6dGhpcy5zb3VuZHMoKX0pfWdldCB6aXAoKXtyZXR1cm4oQT0+e2xldHtpbWFnZXM6ZSxzb3VuZHM6dH09QTtjb25zdCBuPXt9O2xldCBpPTA7Zm9yKGNvbnN0IEEgb2YgZSluWyIiLmNvbmNhdChpKyssIi4iKS5jb25jYXQoKHI9QSwidW5jb21wcmVzc2VkIj09PXIuZXh0ZW5zaW9uPyJwbmciOiJqcGciKSldPXtieXRlczpfQShBKX07dmFyIHIsbztpPTA7Zm9yKGNvbnN0IEEgb2YgdCluWyIiLmNvbmNhdChpKyssIi53YXYiKV09e2J5dGVzOihvPUEsby53YXZFbmNvZGVkRGF0YSl9O3JldHVybiBuZXcgWkEobil9KSh7aW1hZ2VzOnRoaXMuaW1hZ2VzKCksc291bmRzOnRoaXMuc291bmRzKCl9KX12aWV3KCl7cmV0dXJue3NpZ25hdHVyZTp0aGlzLnNpZ25hdHVyZSxpbmZvSGVhZGVyOnRoaXMuaW5mb0hlYWRlcixkYXRhSGVhZGVyOnRoaXMuZGF0YUhlYWRlcix0b1N0cmluZzooKT0+IlNCMUZpbGUifX1pbmZvUmF3KCl7cmV0dXJuIG5ldyBzKG5ldyBfKHRoaXMuYnVmZmVyLHRoaXMuaW5mb0hlYWRlci5vZmZzZXQrdGUuc2l6ZSksdGhpcy5zaWduYXR1cmUuaW5mb0J5dGVMZW5ndGgrZWUuc2l6ZSl9aW5mb1RhYmxlKCl7cmV0dXJuIG5ldyBHQSh0aGlzLmluZm9SYXcoKSl9aW5mbygpe3JldHVybiB0aGlzLl9pbmZvfHwodGhpcy5faW5mbz1uZXcgU0EodGhpcy5pbmZvVGFibGUoKSkudGFibGVbMF0pLHRoaXMuX2luZm99ZGF0YVJhdygpe3JldHVybiBuZXcgcyhuZXcgXyh0aGlzLmJ1ZmZlcix0aGlzLmRhdGFIZWFkZXIub2Zmc2V0K3RlLnNpemUpLHRoaXMuc3RyZWFtLnVpbnQ4YS5sZW5ndGgpfWRhdGFUYWJsZSgpe3JldHVybiBuZXcgR0EodGhpcy5kYXRhUmF3KCkpfWRhdGFGaXhlZCgpe3JldHVybiB0aGlzLl9kYXRhfHwodGhpcy5fZGF0YT1uZXcgU0EodGhpcy5kYXRhVGFibGUoKSkudGFibGUpLHRoaXMuX2RhdGF9ZGF0YSgpe3JldHVybiB0aGlzLmRhdGFGaXhlZCgpWzBdfWltYWdlcygpe2NvbnN0IEE9bmV3IFNldDtyZXR1cm4gdGhpcy5kYXRhRml4ZWQoKS5maWx0ZXIoZT0+ZSBpbnN0YW5jZW9mIElBJiYoIUEuaGFzKGUuY3JjKSYmKEEuYWRkKGUuY3JjKSwhMCkpKX1zb3VuZHMoKXtjb25zdCBBPW5ldyBTZXQ7cmV0dXJuIHRoaXMuZGF0YUZpeGVkKCkuZmlsdGVyKGU9PmUgaW5zdGFuY2VvZiBkQSYmKCFBLmhhcyhlLmNyYykmJihBLmFkZChlLmNyYyksITApKSl9fX0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSk7dmFyIG49e307dC5yKG4pLHQuZChuLCJTY2FmZm9sZGluZyIsKGZ1bmN0aW9uKCl7cmV0dXJuIEp9KSksdC5kKG4sIkNsb3VkIiwoZnVuY3Rpb24oKXtyZXR1cm4gZH0pKSx0LmQobiwiVk0iLChmdW5jdGlvbigpe3JldHVybiByLmF9KSksdC5kKG4sIlJlbmRlcmVyIiwoZnVuY3Rpb24oKXtyZXR1cm4gcy5hfSkpLHQuZChuLCJTdG9yYWdlIiwoZnVuY3Rpb24oKXtyZXR1cm4gZ30pKSx0LmQobiwiQXVkaW9FbmdpbmUiLChmdW5jdGlvbigpe3JldHVybiBRLmF9KSksdC5kKG4sIkpTWmlwIiwoZnVuY3Rpb24oKXtyZXR1cm4gaC5hfSkpO3ZhciBpPXQoNzcpLHI9dC5uKGkpLG89dCg3OCkscz10Lm4obyksYT10KDEyMCksQj10Lm4oYSk7Y2xhc3MgYyBleHRlbmRzIEIuYXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5fdG90YWxBc3NldHM9MCx0aGlzLl9sb2FkZWRBc3NldHM9MH1fdXBkYXRlUHJvZ3Jlc3MoKXt0aGlzLm9ucHJvZ3Jlc3MmJnRoaXMub25wcm9ncmVzcyh0aGlzLl90b3RhbEFzc2V0cyx0aGlzLl9sb2FkZWRBc3NldHMpfWxvYWQoQSxlLHQpe3JldHVybiBBPT09dGhpcy5Bc3NldFR5cGUuSW1hZ2VCaXRtYXB8fEE9PT10aGlzLkFzc2V0VHlwZS5JbWFnZVZlY3Rvcnx8QT09PXRoaXMuQXNzZXRUeXBlLlNvdW5kfHxBPT09dGhpcy5Bc3NldFR5cGUuRm9udD8odGhpcy5fdG90YWxBc3NldHMrKyx0aGlzLl91cGRhdGVQcm9ncmVzcygpLHN1cGVyLmxvYWQoQSxlLHQpLnRoZW4oQT0+KHRoaXMuX2xvYWRlZEFzc2V0cysrLHRoaXMuX3VwZGF0ZVByb2dyZXNzKCksQSkpKTpzdXBlci5sb2FkKEEsZSx0KX19dmFyIGc9YyxFPXQoNzkpLFE9dC5uKEUpLHU9dCgzMSksbD10KDMzKSxoPXQubihsKTtjb25zdCB3PVtdLEM9QT0+e2xldCBlO3ZhciB0O3JldHVybiAwPT09dy5sZW5ndGg/KHQ9e2F1ZGlvOiExLHZpZGVvOkF9LGU9bmF2aWdhdG9yLm1lZGlhRGV2aWNlcz9uYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh0KTpQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoInZpZGVvIGlzIG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBjb250ZXh0IChpbnNlY3VyZSBkb21haW4/KSIpKSx3LnB1c2goZSkpOncubGVuZ3RoPjAmJihlPXdbMF0sdy5wdXNoKCEwKSksZX07Y2xhc3MgSXtjb25zdHJ1Y3Rvcigpe3RoaXMubWlycm9yPSEwLHRoaXMuX2ZyYW1lQ2FjaGVUaW1lb3V0PTE2LHRoaXMuX3ZpZGVvPW51bGwsdGhpcy5fdHJhY2s9bnVsbCx0aGlzLl93b3Jrc3BhY2U9W119c3RhdGljIGdldCBGT1JNQVRfSU1BR0VfREFUQSgpe3JldHVybiJpbWFnZS1kYXRhIn1zdGF0aWMgZ2V0IEZPUk1BVF9DQU5WQVMoKXtyZXR1cm4iY2FudmFzIn1zdGF0aWMgZ2V0IERJTUVOU0lPTlMoKXtyZXR1cm5bNDgwLDM2MF19c3RhdGljIGdldCBPUkRFUigpe3JldHVybiAxfWdldCB2aWRlbygpe3JldHVybiB0aGlzLl92aWRlb31lbmFibGVWaWRlbygpe3JldHVybiB0aGlzLmVuYWJsZWQ9ITAsdGhpcy5fc2V0dXBWaWRlbygpfWRpc2FibGVWaWRlbygpe3RoaXMuZW5hYmxlZD0hMSx0aGlzLl9zaW5nbGVTZXR1cCYmdGhpcy5fc2luZ2xlU2V0dXAudGhlbih0aGlzLl90ZWFyZG93bi5iaW5kKHRoaXMpKS5jYXRjaChBPT50aGlzLm9uRXJyb3IoQSkpfV90ZWFyZG93bigpe2lmKCExPT09dGhpcy5lbmFibGVkKXtjb25zdCBBPSh3LnBvcCgpLCEody5sZW5ndGg+MCkpO3RoaXMuX3NpbmdsZVNldHVwPW51bGwsdGhpcy5fdmlkZW89bnVsbCx0aGlzLl90cmFjayYmQSYmdGhpcy5fdHJhY2suc3RvcCgpLHRoaXMuX3RyYWNrPW51bGx9fWdldEZyYW1lKEEpe2xldHtkaW1lbnNpb25zOmU9SS5ESU1FTlNJT05TLG1pcnJvcjp0PXRoaXMubWlycm9yLGZvcm1hdDpuPUkuRk9STUFUX0lNQUdFX0RBVEEsY2FjaGVUaW1lb3V0Omk9dGhpcy5fZnJhbWVDYWNoZVRpbWVvdXR9PUE7aWYoIXRoaXMudmlkZW9SZWFkeSlyZXR1cm4gbnVsbDtjb25zdFtyLG9dPWUscz10aGlzLl9nZXRXb3Jrc3BhY2Uoe2RpbWVuc2lvbnM6ZSxtaXJyb3I6Qm9vbGVhbih0KX0pLHt2aWRlb1dpZHRoOmEsdmlkZW9IZWlnaHQ6Qn09dGhpcy5fdmlkZW8se2NhbnZhczpjLGNvbnRleHQ6ZyxsYXN0VXBkYXRlOkUsY2FjaGVEYXRhOlF9PXMsdT1EYXRlLm5vdygpO0UraTx1JiYodCYmKGcuc2NhbGUoLTEsMSksZy50cmFuc2xhdGUoLTEqciwwKSksZy5kcmF3SW1hZ2UodGhpcy5fdmlkZW8sMCwwLGEsQiwwLDAscixvKSxnLnNldFRyYW5zZm9ybSgxLDAsMCwxLDAsMCkscy5sYXN0VXBkYXRlPXUpLFFbbl18fChRW25dPXtsYXN0VXBkYXRlOjB9KTtjb25zdCBsPVFbbl07cmV0dXJuIGwubGFzdFVwZGF0ZStpPHUmJihuPT09SS5GT1JNQVRfSU1BR0VfREFUQT9sLmxhc3REYXRhPWcuZ2V0SW1hZ2VEYXRhKDAsMCxyLG8pOm49PT1JLkZPUk1BVF9DQU5WQVM/KGwubGFzdFVwZGF0ZT0xLzAsbC5sYXN0RGF0YT1jKTooY29uc29sZS5lcnJvcigidmlkZW8gaW8gZXJyb3IgLSB1bmltcGxlbWVudGVkIGZvcm1hdCAiLmNvbmNhdChuKSksbC5sYXN0VXBkYXRlPTEvMCxsLmxhc3REYXRhPW51bGwpLGwubGFzdFVwZGF0ZT1NYXRoLm1heChzLmxhc3RVcGRhdGUsbC5sYXN0VXBkYXRlKSksbC5sYXN0RGF0YX1vbkVycm9yKEEpe2NvbnNvbGUuZXJyb3IoIlVuaGFuZGxlZCB2aWRlbyBpbyBkZXZpY2UgZXJyb3IiLEEpfV9zZXR1cFZpZGVvKCl7cmV0dXJuIHRoaXMuX3NpbmdsZVNldHVwfHwodGhpcy5fc2luZ2xlU2V0dXA9Qyh7d2lkdGg6e21pbjo0ODAsaWRlYWw6NjQwfSxoZWlnaHQ6e21pbjozNjAsaWRlYWw6NDgwfX0pLnRoZW4oQT0+e3RoaXMuX3ZpZGVvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInZpZGVvIik7dHJ5e3RoaXMuX3ZpZGVvLnNyY09iamVjdD1BfWNhdGNoKGUpe3RoaXMuX3ZpZGVvLnNyYz13aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChBKX1yZXR1cm4gdGhpcy5fdmlkZW8ucGxheSgpLHRoaXMuX3RyYWNrPUEuZ2V0VHJhY2tzKClbMF0sdGhpc30pLmNhdGNoKEE9Pnt0aGlzLl9zaW5nbGVTZXR1cD1udWxsLHRoaXMub25FcnJvcihBKX0pKSx0aGlzLl9zaW5nbGVTZXR1cH1nZXQgdmlkZW9SZWFkeSgpe2lmKCF0aGlzLmVuYWJsZWQpcmV0dXJuITE7aWYoIXRoaXMuX3ZpZGVvKXJldHVybiExO2lmKCF0aGlzLl90cmFjaylyZXR1cm4hMTtjb25zdHt2aWRlb1dpZHRoOkEsdmlkZW9IZWlnaHQ6ZX09dGhpcy5fdmlkZW87cmV0dXJuIm51bWJlciI9PXR5cGVvZiBBJiYibnVtYmVyIj09dHlwZW9mIGUmJigwIT09QSYmMCE9PWUpfV9nZXRXb3Jrc3BhY2UoQSl7bGV0e2RpbWVuc2lvbnM6ZSxtaXJyb3I6dH09QSxuPXRoaXMuX3dvcmtzcGFjZS5maW5kKEE9PkEuZGltZW5zaW9ucy5qb2luKCItIik9PT1lLmpvaW4oIi0iKSYmQS5taXJyb3I9PT10KTtyZXR1cm4gbnx8KG49e2RpbWVuc2lvbnM6ZSxtaXJyb3I6dCxjYW52YXM6ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIiksbGFzdFVwZGF0ZTowLGNhY2hlRGF0YTp7fX0sbi5jYW52YXMud2lkdGg9ZVswXSxuLmNhbnZhcy5oZWlnaHQ9ZVsxXSxuLmNvbnRleHQ9bi5jYW52YXMuZ2V0Q29udGV4dCgiMmQiKSx0aGlzLl93b3Jrc3BhY2UucHVzaChuKSksbn19dmFyIE09STt2YXIgZD17Q2xvdWRNYW5hZ2VyOmNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucGFyZW50PUEsdGhpcy5wcm92aWRlcnM9W10sdGhpcy5vdmVycmlkZXM9bmV3IE1hcH1oYXNDbG91ZERhdGEoKXtyZXR1cm4gdGhpcy5wYXJlbnQudm0ucnVudGltZS5oYXNDbG91ZERhdGEoKX1wcm9qZWN0UmVhZHkoKXtpZih0aGlzLmhhc0Nsb3VkRGF0YSgpKWZvcihjb25zdCBBIG9mIHRoaXMucHJvdmlkZXJzKUEuZW5hYmxlKCl9c2V0VmFyaWFibGUoQSxlLHQpe3RoaXMub3ZlcnJpZGVzLmhhcyhlKSYmdGhpcy5vdmVycmlkZXMuZ2V0KGUpIT09QXx8dGhpcy5wYXJlbnQudm0ucG9zdElPRGF0YSgiY2xvdWQiLHt2YXJVcGRhdGU6e25hbWU6ZSx2YWx1ZTp0fX0pfWdldFVzZXJuYW1lKCl7cmV0dXJuIHRoaXMucGFyZW50Ll91c2VybmFtZX1hZGRQcm92aWRlcihBKXtBLm1hbmFnZXI9dGhpcyx0aGlzLmhhc0Nsb3VkRGF0YSgpJiZBLmVuYWJsZSgpLHRoaXMucHJvdmlkZXJzLnB1c2goQSl9cmVxdWVzdENsb3NlQ29ubmVjdGlvbigpe31jcmVhdGVWYXJpYWJsZShBLGUpe31yZW5hbWVWYXJpYWJsZShBLGUpe31kZWxldGVWYXJpYWJsZShBKXt9YWRkUHJvdmlkZXJPdmVycmlkZShBLGUpe2lmKGUmJiF0aGlzLnByb3ZpZGVycy5pbmNsdWRlcyhlKSl0aHJvdyBuZXcgRXJyb3IoIk1hbmFnZXIgaXMgbm90IGF3YXJlIG9mIHRoaXMgcHJvdmlkZXIiKTt0aGlzLm92ZXJyaWRlcy5zZXQoQSxlKX11cGRhdGVWYXJpYWJsZShBLGUpe2lmKHRoaXMub3ZlcnJpZGVzLmhhcyhBKSl7Y29uc3QgdD10aGlzLm92ZXJyaWRlcy5nZXQoQSk7dCYmdC5oYW5kbGVVcGRhdGVWYXJpYWJsZShBLGUpfWVsc2UgZm9yKGNvbnN0IHQgb2YgdGhpcy5wcm92aWRlcnMpdC5oYW5kbGVVcGRhdGVWYXJpYWJsZShBLGUpfX0sV2ViU29ja2V0UHJvdmlkZXI6Y2xhc3N7Y29uc3RydWN0b3IoQSxlKXt0aGlzLmNsb3VkSG9zdHM9QXJyYXkuaXNBcnJheShBKT9BOltBXSx0aGlzLnByb2plY3RJZD1lLHRoaXMuYXR0ZW1wdGVkQ29ubmVjdGlvbnM9MCx0aGlzLmJ1ZmZlcmVkTWVzc2FnZXM9W10sdGhpcy5zY2hlZHVsZWRCdWZmZXJlZFNlbmQ9bnVsbCx0aGlzLnJlY29ubmVjdFRpbWVvdXQ9bnVsbCx0aGlzLm9wZW5Db25uZWN0aW9uPXRoaXMub3BlbkNvbm5lY3Rpb24uYmluZCh0aGlzKSx0aGlzLl9zY2hlZHVsZWRTZW5kQnVmZmVyZWRNZXNzYWdlcz10aGlzLl9zY2hlZHVsZWRTZW5kQnVmZmVyZWRNZXNzYWdlcy5iaW5kKHRoaXMpfWVuYWJsZSgpe3RoaXMub3BlbkNvbm5lY3Rpb24oKX1zZXRQcm9qZWN0SWQoQSl7dGhpcy5wcm9qZWN0SWQ9QSx0aGlzLmNsb3NlQW5kUmVjb25uZWN0KCl9b3BlbkNvbm5lY3Rpb24oKXt0aGlzLmN1cnJlbnRDbG91ZEhvc3Q9dGhpcy5jbG91ZEhvc3RzW3RoaXMuYXR0ZW1wdGVkQ29ubmVjdGlvbnMldGhpcy5jbG91ZEhvc3RzLmxlbmd0aF0sdGhpcy5hdHRlbXB0ZWRDb25uZWN0aW9ucysrLGNvbnNvbGUubG9nKCJDb25uZWN0aW5nIHRvICIuY29uY2F0KHRoaXMuY3VycmVudENsb3VkSG9zdCwiIHdpdGggSUQgIikuY29uY2F0KHRoaXMucHJvamVjdElkLCIsIHVzZXJuYW1lICIpLmNvbmNhdCh0aGlzLm1hbmFnZXIuZ2V0VXNlcm5hbWUoKSkpO3RyeXt0aGlzLndzPW5ldyBXZWJTb2NrZXQodGhpcy5jdXJyZW50Q2xvdWRIb3N0KX1jYXRjaChBKXt0aHJvdyBjb25zb2xlLmVycm9yKEEpLG5ldyBFcnJvcigiQ2xvdWQgaG9zdCAiLmNvbmNhdCh0aGlzLmN1cnJlbnRDbG91ZEhvc3QsIiBpcyBpbnZhbGlkOiAiKS5jb25jYXQoQSkpfXRoaXMud3Mub25lcnJvcj10aGlzLm9uZXJyb3IuYmluZCh0aGlzKSx0aGlzLndzLm9ubWVzc2FnZT10aGlzLm9ubWVzc2FnZS5iaW5kKHRoaXMpLHRoaXMud3Mub25vcGVuPXRoaXMub25vcGVuLmJpbmQodGhpcyksdGhpcy53cy5vbmNsb3NlPXRoaXMub25jbG9zZS5iaW5kKHRoaXMpfW9uZXJyb3IoQSl7Y29uc29sZS5lcnJvcigiV2ViU29ja2V0IGVycm9yIixBKX1vbm1lc3NhZ2UoQSl7Zm9yKGNvbnN0IGUgb2YgQS5kYXRhLnNwbGl0KCJcbiIpKWlmKGUpe2NvbnN0IEE9SlNPTi5wYXJzZShlKTsic2V0Ij09PUEubWV0aG9kJiZ0aGlzLm1hbmFnZXIuc2V0VmFyaWFibGUodGhpcyxBLm5hbWUsQS52YWx1ZSl9fW9ub3Blbigpe3RoaXMuYXR0ZW1wdGVkQ29ubmVjdGlvbnM9MCx0aGlzLndyaXRlVG9TZXJ2ZXIoe21ldGhvZDoiaGFuZHNoYWtlIn0pLHRoaXMuc2VuZEJ1ZmZlcmVkTWVzc2FnZXMoKSxjb25zb2xlLmxvZygiV2ViU29ja2V0IGNvbm5lY3RlZCIpfW9uY2xvc2UoQSl7aWYoQSYmNDAwMj09PUEuY29kZSlyZXR1cm4gdm9pZCBjb25zb2xlLmxvZygiVXNlcm5hbWUgaXMgaW52YWxpZDsgbm90IHJlY29ubmVjdGluZy4iKTtpZihBJiY0MDAzPT09QS5jb2RlKXJldHVybiB2b2lkIGNvbnNvbGUubG9nKCJDbG91ZCB2YXJpYWJsZSBzZXJ2ZXIgaXMgZnVsbDsgbm90IHJlY29ubmVjdGluZy4iKTtpZihBJiY0MDA0PT09QS5jb2RlKXJldHVybiB2b2lkIGNvbnNvbGUubG9nKCJQcm9qZWN0IGlzIGJsb2NrZWQ7IG5vdCByZWNvbm5lY3RpbmcuIik7Y29uc3QgZT1NYXRoLnJhbmRvbSgpKihNYXRoLnBvdygyLE1hdGgubWluKHRoaXMuYXR0ZW1wdGVkQ29ubmVjdGlvbnMrMSw1KSktMSkqMWUzO2NvbnNvbGUubG9nKCJDb25uZWN0aW9uIGxvc3Q7IHJlY29ubmVjdGluZyBpbiAiLmNvbmNhdChNYXRoLnJvdW5kKGUpLCJtcyIpKSx0aGlzLnJlY29ubmVjdFRpbWVvdXQ9c2V0VGltZW91dCh0aGlzLm9wZW5Db25uZWN0aW9uLGUpfWNsb3NlQW5kUmVjb25uZWN0KCl7Y29uc29sZS5sb2coIkNsb3NpbmcgY29ubmVjdGlvbiBhbmQgcmVjb25uZWN0aW5nLiIpLHRoaXMud3MmJih0aGlzLndzLm9uY2xvc2U9bnVsbCx0aGlzLndzLm9uZXJyb3I9bnVsbCx0aGlzLndzLmNsb3NlKCkpLGNsZWFyVGltZW91dCh0aGlzLnJlY29ubmVjdFRpbWVvdXQpO3RoaXMucmVjb25uZWN0VGltZW91dD1zZXRUaW1lb3V0KHRoaXMub3BlbkNvbm5lY3Rpb24sMWUzLzMwKX1jYW5Xcml0ZVRvU2VydmVyKCl7cmV0dXJuIHRoaXMud3MmJnRoaXMud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5PUEVOfXNjaGVkdWxlQnVmZmVyZWRTZW5kKCl7dGhpcy5zY2hlZHVsZWRCdWZmZXJlZFNlbmR8fCh0aGlzLnNjaGVkdWxlZEJ1ZmZlcmVkU2VuZD0hMCxQcm9taXNlLnJlc29sdmUoKS50aGVuKHRoaXMuX3NjaGVkdWxlZFNlbmRCdWZmZXJlZE1lc3NhZ2VzKSl9X3NjaGVkdWxlZFNlbmRCdWZmZXJlZE1lc3NhZ2VzKCl7dGhpcy5zY2hlZHVsZWRCdWZmZXJlZFNlbmQ9ITEsdGhpcy5jYW5Xcml0ZVRvU2VydmVyKCkmJnRoaXMuc2VuZEJ1ZmZlcmVkTWVzc2FnZXMoKX1zZW5kQnVmZmVyZWRNZXNzYWdlcygpe2Zvcihjb25zdCBBIG9mIHRoaXMuYnVmZmVyZWRNZXNzYWdlcyl0aGlzLndyaXRlVG9TZXJ2ZXIoQSk7dGhpcy5idWZmZXJlZE1lc3NhZ2VzLmxlbmd0aD0wfWJ1ZmZlcmVkV3JpdGVUb1NlcnZlcihBKXt0aGlzLmJ1ZmZlcmVkTWVzc2FnZXMucHVzaChBKSx0aGlzLnNjaGVkdWxlQnVmZmVyZWRTZW5kKCl9d3JpdGVUb1NlcnZlcihBKXtBLnByb2plY3RfaWQ9dGhpcy5wcm9qZWN0SWQsQS51c2VyPXRoaXMubWFuYWdlci5nZXRVc2VybmFtZSgpLHRoaXMud3Muc2VuZChKU09OLnN0cmluZ2lmeShBKSl9aGFuZGxlVXBkYXRlVmFyaWFibGUoQSxlKXtmb3IoY29uc3QgdCBvZiB0aGlzLmJ1ZmZlcmVkTWVzc2FnZXMpaWYodC5uYW1lPT09QSlyZXR1cm4gdm9pZCh0LnZhbHVlPWUpO3RoaXMuYnVmZmVyZWRXcml0ZVRvU2VydmVyKHttZXRob2Q6InNldCIsbmFtZTpBLHZhbHVlOmV9KX19LExvY2FsU3RvcmFnZVByb3ZpZGVyOmNsYXNze2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOiJwNDpjbG91ZHZhcmlhYmxlcyI7dGhpcy5rZXk9QSx0aGlzLnZhcmlhYmxlcz17fSx0aGlzLmhhbmRsZVN0b3JhZ2VFdmVudD10aGlzLmhhbmRsZVN0b3JhZ2VFdmVudC5iaW5kKHRoaXMpfXJlYWRGcm9tTG9jYWxTdG9yYWdlKCl7bGV0IEE7dHJ5e2lmKEE9SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleSkpLCFBfHwib2JqZWN0IiE9dHlwZW9mIEEpcmV0dXJufWNhdGNoKEEpe3JldHVybn10aGlzLnZhcmlhYmxlcz1BO2Zvcihjb25zdCBBIG9mIE9iamVjdC5rZXlzKHRoaXMudmFyaWFibGVzKSl0aGlzLm1hbmFnZXIuc2V0VmFyaWFibGUodGhpcyxBLHRoaXMudmFyaWFibGVzW0FdKX1zdG9yZVRvTG9jYWxTdG9yYWdlKCl7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMua2V5LEpTT04uc3RyaW5naWZ5KHRoaXMudmFyaWFibGVzKSl9Y2F0Y2goQSl7fX1oYW5kbGVTdG9yYWdlRXZlbnQoQSl7QS5rZXk9PT10aGlzLmtleSYmQS5zdG9yYWdlQXJlYT09PWxvY2FsU3RvcmFnZSYmdGhpcy5yZWFkRnJvbUxvY2FsU3RvcmFnZSgpfWVuYWJsZSgpe3RoaXMucmVhZEZyb21Mb2NhbFN0b3JhZ2UoKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RvcmFnZSIsdGhpcy5oYW5kbGVTdG9yYWdlRXZlbnQpfWhhbmRsZVVwZGF0ZVZhcmlhYmxlKEEsZSl7dGhpcy52YXJpYWJsZXNbQV09ZSx0aGlzLnN0b3JlVG9Mb2NhbFN0b3JhZ2UoKX19fSxwPXQoMTIxKSxtPXQubihwKSxGPXQoODApLEQ9e2luc2VydDpBPT57dmFyIGU9ZG9jdW1lbnQuaGVhZHx8ZG9jdW1lbnQuYm9keXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O2UuaW5zZXJ0QmVmb3JlKEEsZS5maXJzdENoaWxkKX0sc2luZ2xldG9uOiExfSxZPShtKCkoRi5hLEQpLEYuYS5sb2NhbHN8fHt9KTtjb25zdCBmPUE9Pm5ldyBQcm9taXNlKChlLHQpPT57Y29uc3Qgbj1uZXcgRmlsZVJlYWRlcjtuLm9ubG9hZD0oKT0+ZShuLnJlc3VsdCksbi5vbmVycm9yPSgpPT50KG5ldyBFcnJvcigiQ2Fubm90IHJlYWQgYXMgdGV4dDogIi5jb25jYXQobi5lcnJvcikpKSxuLnJlYWRBc1RleHQoQSl9KTt2YXIgTj1jbGFzc3tjb25zdHJ1Y3RvcihBLGUpe3RoaXMuZWw9QSx0aGlzLmNhbGxiYWNrPWUsdGhpcy5lbC5hZGRFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsdGhpcy5vbmRyYWdvdmVyLmJpbmQodGhpcykpLHRoaXMuZWwuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ2xlYXZlIix0aGlzLm9uZHJhZ2xlYXZlLmJpbmQodGhpcykpLHRoaXMuZWwuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsdGhpcy5vbmRyb3AuYmluZCh0aGlzKSl9b25kcmFnb3ZlcihBKXtBLmRhdGFUcmFuc2Zlci50eXBlcy5pbmNsdWRlcygiRmlsZXMiKSYmKEEucHJldmVudERlZmF1bHQoKSxBLmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0PSJjb3B5Iix0aGlzLmVsLmNsYXNzTGlzdC5hZGQoWS5kcm9wcGluZykpfW9uZHJhZ2xlYXZlKEEpe0EucHJldmVudERlZmF1bHQoKSx0aGlzLmVsLmNsYXNzTGlzdC5yZW1vdmUoWS5kcm9wcGluZyl9b25kcm9wKEEpe0EucHJldmVudERlZmF1bHQoKSx0aGlzLmVsLmNsYXNzTGlzdC5yZW1vdmUoWS5kcm9wcGluZyksQS5kYXRhVHJhbnNmZXIudHlwZXMuaW5jbHVkZXMoIkZpbGVzIikmJkEuZGF0YVRyYW5zZmVyLmZpbGVzLmxlbmd0aD4wJiZQcm9taXNlLmFsbChBcnJheS5mcm9tKEEuZGF0YVRyYW5zZmVyLmZpbGVzKS5tYXAoZikpLnRoZW4oQT0+e3RoaXMuY2FsbGJhY2soQSl9KX19O3ZhciBVPWNsYXNze2NvbnN0cnVjdG9yKEEsZSl7dGhpcy5wYXJlbnQ9QSx0aGlzLnRleHQ9ZSx0aGlzLnJvb3Q9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5yb290LmNsYXNzTmFtZT1ZLnF1ZXN0aW9uUm9vdCx0aGlzLmlubmVyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuaW5uZXIuY2xhc3NOYW1lPVkucXVlc3Rpb25Jbm5lcixlJiYodGhpcy50ZXh0RWxlbWVudD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnRleHRFbGVtZW50LnRleHRDb250ZW50PWUsdGhpcy50ZXh0RWxlbWVudC5jbGFzc05hbWU9WS5xdWVzdGlvblRleHQpLHRoaXMuaW5wdXRDb250YWluZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5pbnB1dENvbnRhaW5lci5jbGFzc05hbWU9WS5xdWVzdGlvbklucHV0T3V0ZXIsdGhpcy5pbnB1dD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLHRoaXMuaW5wdXQuY2xhc3NOYW1lPVkucXVlc3Rpb25JbnB1dCx0aGlzLmlucHV0LmFkZEV2ZW50TGlzdGVuZXIoImtleXByZXNzIix0aGlzLm9ua2V5cHJlc3MuYmluZCh0aGlzKSksdGhpcy5kcm9wcGVyPW5ldyBOKHRoaXMuaW5wdXQsdGhpcy5kcm9wcGVyQ2FsbGJhY2suYmluZCh0aGlzKSksdGhpcy5zdWJtaXRCdXR0b249ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIiksdGhpcy5zdWJtaXRCdXR0b24uY2xhc3NOYW1lPVkucXVlc3Rpb25TdWJtaXRCdXR0b24sdGhpcy5zdWJtaXRCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMub25zdWJtaXRwcmVzc2NsaWNrLmJpbmQodGhpcykpLHRoaXMuaW5wdXRDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pbnB1dCksdGhpcy5pbnB1dENvbnRhaW5lci5hcHBlbmRDaGlsZCh0aGlzLnN1Ym1pdEJ1dHRvbiksdGhpcy50ZXh0RWxlbWVudCYmdGhpcy5pbm5lci5hcHBlbmRDaGlsZCh0aGlzLnRleHRFbGVtZW50KSx0aGlzLmlubmVyLmFwcGVuZENoaWxkKHRoaXMuaW5wdXRDb250YWluZXIpLHRoaXMucm9vdC5hcHBlbmRDaGlsZCh0aGlzLmlubmVyKSx0aGlzLnBhcmVudC5fYWRkTGF5ZXIodGhpcy5yb290KSx0aGlzLmlucHV0LmZvY3VzKCksdGhpcy5hbnN3ZXJDYWxsYmFjaz1uZXcgUHJvbWlzZShBPT57dGhpcy5jYWxsYmFjaz1BfSl9YW5zd2VyKCl7cmV0dXJuIHRoaXMuYW5zd2VyQ2FsbGJhY2t9c3VibWl0KCl7dGhpcy5jYWxsYmFjayh0aGlzLmlucHV0LnZhbHVlKSx0aGlzLmRlc3Ryb3koKX1vbmtleXByZXNzKEEpeyJFbnRlciI9PT1BLmtleSYmdGhpcy5zdWJtaXQoKX1kcm9wcGVyQ2FsbGJhY2soQSl7Y29uc3QgZT1BLmpvaW4oIiIpLnJlcGxhY2UoL1xyP1xuL2csIiAiKTt0aGlzLmlucHV0LnZhbHVlPWV9b25zdWJtaXRwcmVzc2NsaWNrKCl7dGhpcy5zdWJtaXQoKX1kZXN0cm95KCl7dGhpcy5yb290LnJlbW92ZSgpLHRoaXMucGFyZW50LnF1ZXN0aW9uPW51bGx9fTt2YXIgeT1jbGFzc3tjb25zdHJ1Y3RvcihBKXt0aGlzLnBhcmVudD1BLHRoaXMucm9vdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnJvb3QuY2xhc3NOYW1lPVkuY29udGV4dE1lbnUsdGhpcy5fb25tb3VzZWRvd249dGhpcy5fb25tb3VzZWRvd24uYmluZCh0aGlzKSx0aGlzLl9vbnJlc2l6ZT10aGlzLl9vbnJlc2l6ZS5iaW5kKHRoaXMpLHRoaXMuX29uYmx1cj10aGlzLl9vbmJsdXIuYmluZCh0aGlzKX1fb25tb3VzZWRvd24oQSl7dGhpcy5yb290LmNvbnRhaW5zKEEudGFyZ2V0KXx8dGhpcy5kZXN0cm95KCl9X29ucmVzaXplKCl7dGhpcy5kZXN0cm95KCl9X29uYmx1cigpe3RoaXMuZGVzdHJveSgpfWFkZChBKXtjb25zdCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpO2UuY2xhc3NOYW1lPVkuY29udGV4dE1lbnVJdGVtLGUudGV4dENvbnRlbnQ9QS50ZXh0LGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57dGhpcy5kZXN0cm95KCksQS5jYWxsYmFjaygpfSksZS5hZGRFdmVudExpc3RlbmVyKCJjb250ZXh0bWVudSIsQT0+e0EucHJldmVudERlZmF1bHQoKX0pLHRoaXMucm9vdC5hcHBlbmRDaGlsZChlKX1zaG93KEEpe2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsdGhpcy5fb25tb3VzZWRvd24pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuX29ucmVzaXplKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fb25ibHVyKSx0aGlzLnBhcmVudC5fYWRkTGF5ZXIodGhpcy5yb290KTtjb25zdCBlPXRoaXMucGFyZW50LmxheWVyc1JlY3QsdD10aGlzLnJvb3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7bGV0IG49QS5jbGllbnRYLWUubGVmdCxpPUEuY2xpZW50WS1lLnRvcDtuK3Qud2lkdGg+ZS53aWR0aCYmKG4tPXQud2lkdGgpLGkrdC5oZWlnaHQ+ZS5oZWlnaHQmJihpLT10LmhlaWdodCksdGhpcy5yb290LnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKCIuY29uY2F0KG4sInB4LCAiKS5jb25jYXQoaSwicHgpIiksZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLnJvb3QpLm9wYWNpdHksdGhpcy5yb290LnN0eWxlLm9wYWNpdHk9IjEifWRlc3Ryb3koKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLHRoaXMuX29ubW91c2Vkb3duKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLl9vbnJlc2l6ZSksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX29uYmx1ciksdGhpcy5yb290LnN0eWxlLm9wYWNpdHk9IjAiLHRoaXMucm9vdC5zdHlsZS5wb2ludGVyRXZlbnRzPSJub25lIixzZXRUaW1lb3V0KCgpPT57dGhpcy5yb290LnJlbW92ZSgpfSwyMDApfX07dmFyIFQ9KEEsZSk9PntpZigidW5kZWZpbmVkIiE9dHlwZW9mIEV4dGVybmFsRG93bmxvYWRIZWxwZXIpcmV0dXJuIHZvaWQgRXh0ZXJuYWxEb3dubG9hZEhlbHBlci5kb3dubG9hZChBLGUpO2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO2lmKGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCksbmF2aWdhdG9yLm1zU2F2ZU9yT3BlbkJsb2IpbmF2aWdhdG9yLm1zU2F2ZU9yT3BlbkJsb2IoZSxBKTtlbHNlIGlmKCJkb3dubG9hZCJpbiBIVE1MQW5jaG9yRWxlbWVudC5wcm90b3R5cGUpe2NvbnN0IG49d2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoZSk7dC5ocmVmPW4sdC5kb3dubG9hZD1BLHQudHlwZT1lLnR5cGUsdC5jbGljaygpLHdpbmRvdy5zZXRUaW1lb3V0KCgpPT57ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0KSx3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTChuKX0sMWUzKX1lbHNle2xldCBBPXdpbmRvdy5vcGVuKCIiLCJfYmxhbmsiKTtjb25zdCB0PW5ldyBGaWxlUmVhZGVyO3Qub25sb2FkZW5kPWZ1bmN0aW9uKCl7QS5sb2NhdGlvbi5ocmVmPXQucmVzdWx0LEE9bnVsbH0sdC5yZWFkQXNEYXRhVVJMKGUpfX07Y2xhc3MgeHtjb25zdHJ1Y3RvcihBLGUpe3RoaXMucGFyZW50PUEsdGhpcy5pZD1lLmdldCgiaWQiKSx0aGlzLnNwcml0ZU5hbWU9ZS5nZXQoInNwcml0ZU5hbWUiKSx0aGlzLnRhcmdldElkPWUuZ2V0KCJ0YXJnZXRJZCIpLHRoaXMub3Bjb2RlPWUuZ2V0KCJvcGNvZGUiKSx0aGlzLnBhcmFtcz1lLmdldCgicGFyYW1zIiksdGhpcy5yb290PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMucm9vdC5jbGFzc05hbWU9WS5tb25pdG9yUm9vdCx0aGlzLnJvb3QuZGF0YXNldC5pZD10aGlzLmlkLHRoaXMucm9vdC5kYXRhc2V0Lm9wY29kZT10aGlzLm9wY29kZSx0aGlzLnBhcmVudC5fbW9uaXRvck92ZXJsYXkuYXBwZW5kQ2hpbGQodGhpcy5yb290KX1nZXRMYWJlbCgpe2xldCBBO2lmKCJkYXRhX3ZhcmlhYmxlIj09PXRoaXMub3Bjb2RlKUE9dGhpcy5wYXJhbXMuVkFSSUFCTEU7ZWxzZSBpZigiZGF0YV9saXN0Y29udGVudHMiPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmFtcy5MSVNUO2Vsc2UgaWYoIm1vdGlvbl94cG9zaXRpb24iPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXIteCIpO2Vsc2UgaWYoIm1vdGlvbl95cG9zaXRpb24iPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXIteSIpO2Vsc2UgaWYoIm1vdGlvbl9kaXJlY3Rpb24iPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItZGlyZWN0aW9uIik7ZWxzZSBpZigic2Vuc2luZ191c2VybmFtZSI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci11c2VybmFtZSIpO2Vsc2UgaWYoImxvb2tzX2Nvc3R1bWVudW1iZXJuYW1lIj09PXRoaXMub3Bjb2RlKUE9Im51bWJlciI9PT10aGlzLnBhcmFtcy5OVU1CRVJfTkFNRT90aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItY29zdHVtZS1udW1iZXIiKTp0aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItY29zdHVtZS1uYW1lIik7ZWxzZSBpZigibG9va3NfYmFja2Ryb3BudW1iZXJuYW1lIj09PXRoaXMub3Bjb2RlKUE9Im51bWJlciI9PT10aGlzLnBhcmFtcy5OVU1CRVJfTkFNRT90aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItYmFja2Ryb3AtbnVtYmVyIik6dGhpcy5wYXJlbnQuZ2V0TWVzc2FnZSgidmFyLWJhY2tkcm9wLW5hbWUiKTtlbHNlIGlmKCJsb29rc19zaXplIj09PXRoaXMub3Bjb2RlKUE9dGhpcy5wYXJlbnQuZ2V0TWVzc2FnZSgidmFyLXNpemUiKTtlbHNlIGlmKCJsb29rc19zdHJldGNoR2V0WCI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1zdHJldGNoLXgiKTtlbHNlIGlmKCJsb29rc19zdHJldGNoR2V0WSI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1zdHJldGNoLXkiKTtlbHNlIGlmKCJsb29rc19zYXlXaWR0aCI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1zYXktd2lkdGgiKTtlbHNlIGlmKCJsb29rc19zYXlIZWlnaHQiPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItc2F5LWhlaWdodCIpO2Vsc2UgaWYoImxvb2tzX2dldEVmZmVjdFZhbHVlIj09PXRoaXMub3Bjb2RlKXtjb25zdCBlPXRoaXMucGFyYW1zLkVGRkVDVC50b0xvd2VyQ2FzZSgpO0E9dGhpcy5wYXJlbnQuZ2V0TWVzc2FnZSgidmFyLSIuY29uY2F0KGUsIi1lZmZlY3QiKSl8fHRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1lZmZlY3QiKX1lbHNlIGlmKCJsb29rc190aW50Q29sb3IiPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItdGludC1jb2xvciIpO2Vsc2UgaWYoImxvb2tzX2dldFNwcml0ZVZpc2libGUiPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItdmlzaWJsZSIpO2Vsc2UgaWYoImxvb2tzX2xheWVyc0dldExheWVyIj09PXRoaXMub3Bjb2RlKUE9dGhpcy5wYXJlbnQuZ2V0TWVzc2FnZSgidmFyLWxheWVyIik7ZWxzZSBpZigibG9va3Nfc2l6ZSI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1zaXplIik7ZWxzZSBpZigic291bmRfZ2V0RWZmZWN0VmFsdWUiPT09dGhpcy5vcGNvZGUpe2NvbnN0IGU9dGhpcy5wYXJhbXMuRUZGRUNULnRvTG93ZXJDYXNlKCk7QT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItIi5jb25jYXQoZSwiLXNvdW5kLWVmZmVjdCIpKXx8dGhpcy5wYXJlbnQuZ2V0TWVzc2FnZSgidmFyLXNvdW5kLWVmZmVjdCIpfWVsc2UgaWYoImNvbnRyb2xfZ2V0X2NvdW50ZXIiPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItZ2V0X2NvdW50ZXIiKTtlbHNlIGlmKCJzZW5zaW5nX2Fuc3dlciI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1hbnN3ZXIiKTtlbHNlIGlmKCJzZW5zaW5nX21vdXNlZG93biI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1tb3VzZWRvd24iKTtlbHNlIGlmKCJzZW5zaW5nX21vdXNlY2xpY2tlZCI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1tb3VzZWNsaWNrZWQiKTtlbHNlIGlmKCJzZW5zaW5nX21vdXNleCI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1tb3VzZXgiKTtlbHNlIGlmKCJzZW5zaW5nX21vdXNleSI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1tb3VzZXkiKTtlbHNlIGlmKCJzZW5zaW5nX2xvdWRuZXNzIj09PXRoaXMub3Bjb2RlKUE9dGhpcy5wYXJlbnQuZ2V0TWVzc2FnZSgidmFyLWxvdWRuZXNzIik7ZWxzZSBpZigic2Vuc2luZ190aW1lciI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci10aW1lciIpO2Vsc2UgaWYoInNlbnNpbmdfZGF5c3NpbmNlMjAwMCI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1kYXlzc2luY2UyMDAwIik7ZWxzZSBpZigic2Vuc2luZ19nZXRjbGlwYm9hcmQiPT09dGhpcy5vcGNvZGUpQT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItZ2V0Y2xpcGJvYXJkIik7ZWxzZSBpZigic2Vuc2luZ19nZXRkcmFnbW9kZSI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1nZXRkcmFnbW9kZSIpO2Vsc2UgaWYoInNlbnNpbmdfbG91ZCI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1sb3VkIik7ZWxzZSBpZigic2Vuc2luZ19sb2dnZWRpbiI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1sb2dnZWRpbiIpO2Vsc2UgaWYoInNvdW5kX3ZvbHVtZSI9PT10aGlzLm9wY29kZSlBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci12b2x1bWUiKTtlbHNlIGlmKCJzZW5zaW5nX2N1cnJlbnQiPT09dGhpcy5vcGNvZGUpe2NvbnN0IGU9dGhpcy5wYXJhbXMuQ1VSUkVOVE1FTlUudG9Mb3dlckNhc2UoKTsieWVhciI9PT1lP0E9dGhpcy5wYXJlbnQuZ2V0TWVzc2FnZSgidmFyLXllYXIiKToibW9udGgiPT09ZT9BPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1tb250aCIpOiJkYXRlIj09PWU/QT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItZGF0ZSIpOiJkYXlvZndlZWsiPT09ZT9BPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1kYXktb2Ytd2VlayIpOiJob3VyIj09PWU/QT10aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJ2YXItaG91ciIpOiJtaW51dGUiPT09ZT9BPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1taW51dGUiKToic2Vjb25kIj09PWUmJihBPXRoaXMucGFyZW50LmdldE1lc3NhZ2UoInZhci1zZWNvbmQiKSl9ZWxzZXtjb25zdCBlPXRoaXMucGFyZW50LnZtLnJ1bnRpbWUuZ2V0TGFiZWxGb3JPcGNvZGUodGhpcy5vcGNvZGUpO0E9ZT9lLmxhYmVsOnRoaXMub3Bjb2RlfXJldHVybiB0aGlzLnNwcml0ZU5hbWU/IiIuY29uY2F0KHRoaXMuc3ByaXRlTmFtZSwiOiAiKS5jb25jYXQoQSk6QX1nZXRUYXJnZXQoKXtyZXR1cm4gdGhpcy50YXJnZXRJZD90aGlzLnBhcmVudC52bS5ydW50aW1lLmdldFRhcmdldEJ5SWQodGhpcy50YXJnZXRJZCk6dGhpcy5wYXJlbnQudm0ucnVudGltZS5nZXRUYXJnZXRGb3JTdGFnZSgpfWdldFZtVmFyaWFibGUoKXtyZXR1cm4gdGhpcy5nZXRUYXJnZXQoKS52YXJpYWJsZXNbdGhpcy5pZF19dXBkYXRlKEEpe3RoaXMueD1BLmdldCgieCIpLHRoaXMueT1BLmdldCgieSIpLHRoaXMudmlzaWJsZT1BLmdldCgidmlzaWJsZSIpLHRoaXMucm9vdC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZSgiLmNvbmNhdChNYXRoLnJvdW5kKHRoaXMueCksInB4LCAiKS5jb25jYXQoTWF0aC5yb3VuZCh0aGlzLnkpLCJweCkiKSx0aGlzLnJvb3Quc3R5bGUuZGlzcGxheT10aGlzLnZpc2libGU/IiI6Im5vbmUifX1jbGFzcyBSIGV4dGVuZHMgeHtjb25zdHJ1Y3RvcihBLGUpe3N1cGVyKEEsZSksdGhpcy5tb2RlPWUuZ2V0KCJtb2RlIiksImxhcmdlIj09PXRoaXMubW9kZT8odGhpcy52YWx1ZUVsZW1lbnQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy52YWx1ZUVsZW1lbnQuY2xhc3NOYW1lPVkubW9uaXRvckxhcmdlVmFsdWUrIiAiK1kubW9uaXRvclZhbHVlQ29sb3IsdGhpcy5yb290LmFwcGVuZENoaWxkKHRoaXMudmFsdWVFbGVtZW50KSk6KHRoaXMuaW5uZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5pbm5lci5jbGFzc05hbWU9WS5tb25pdG9ySW5uZXIsdGhpcy52YWx1ZVJvdz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnZhbHVlUm93LmNsYXNzTmFtZT1ZLm1vbml0b3JSb3csdGhpcy5sYWJlbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLmxhYmVsLmNsYXNzTmFtZT1ZLm1vbml0b3JMYWJlbCx0aGlzLmxhYmVsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKSx0aGlzLnZhbHVlRWxlbWVudD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnZhbHVlRWxlbWVudC5jbGFzc05hbWU9WS5tb25pdG9yVmFsdWUrIiAiK1kubW9uaXRvclZhbHVlQ29sb3IsdGhpcy52YWx1ZVJvdy5hcHBlbmRDaGlsZCh0aGlzLmxhYmVsKSx0aGlzLnZhbHVlUm93LmFwcGVuZENoaWxkKHRoaXMudmFsdWVFbGVtZW50KSx0aGlzLmlubmVyLmFwcGVuZENoaWxkKHRoaXMudmFsdWVSb3cpLCJzbGlkZXIiPT09dGhpcy5tb2RlJiYodGhpcy5zbGlkZXJSb3c9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5zbGlkZXJSb3cuY2xhc3NOYW1lPVkubW9uaXRvclJvdyx0aGlzLnNsaWRlcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLHRoaXMuc2xpZGVyLmNsYXNzTmFtZT1ZLm1vbml0b3JTbGlkZXIsdGhpcy5zbGlkZXIudHlwZT0icmFuZ2UiLHRoaXMuc2xpZGVyLm1pbj1lLmdldCgic2xpZGVyTWluIiksdGhpcy5zbGlkZXIubWF4PWUuZ2V0KCJzbGlkZXJNYXgiKSx0aGlzLnNsaWRlci5zdGVwPWUuZ2V0KCJpc0Rpc2NyZXRlIik/MTouMDEsdGhpcy5zbGlkZXIuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLHRoaXMub25zbGlkZXJjaGFuZ2UuYmluZCh0aGlzKSksdGhpcy5zbGlkZXJSb3cuYXBwZW5kQ2hpbGQodGhpcy5zbGlkZXIpLHRoaXMuaW5uZXIuYXBwZW5kQ2hpbGQodGhpcy5zbGlkZXJSb3cpKSx0aGlzLnJvb3QuYXBwZW5kQ2hpbGQodGhpcy5pbm5lcikpLHRoaXMucGFyZW50Ll9tb25pdG9yT3ZlcmxheS5hcHBlbmRDaGlsZCh0aGlzLnJvb3QpLHRoaXMuX3ZhbHVlPSIifXNldFZhcmlhYmxlVmFsdWUoQSl7Y29uc3QgZT10aGlzLmdldFZtVmFyaWFibGUoKTtpZihlLnZhbHVlPUEsZS5pc0Nsb3VkKXt0aGlzLnBhcmVudC52bS5ydW50aW1lLmlvRGV2aWNlcy5jbG91ZC5yZXF1ZXN0VXBkYXRlVmFyaWFibGUoZS5uYW1lLGUudmFsdWUpfXRoaXMuX3ZhbHVlPUEsdGhpcy52YWx1ZUVsZW1lbnQudGV4dENvbnRlbnQ9QX1vbnNsaWRlcmNoYW5nZShBKXt0aGlzLnNldFZhcmlhYmxlVmFsdWUoK0EudGFyZ2V0LnZhbHVlKX11cGRhdGUoQSl7aWYoc3VwZXIudXBkYXRlKEEpLCF0aGlzLnZpc2libGUpcmV0dXJuO2xldCBlPUEuZ2V0KCJ2YWx1ZSIpOyJudW1iZXIiPT10eXBlb2YgZSYmKGU9TnVtYmVyKGUudG9GaXhlZCg2KSkpLHRoaXMuX3ZhbHVlIT09ZSYmKHRoaXMuX3ZhbHVlPWUsdGhpcy52YWx1ZUVsZW1lbnQudGV4dENvbnRlbnQ9ZSx0aGlzLnNsaWRlciYmKHRoaXMuc2xpZGVyLnZhbHVlPWUpKX19Y2xhc3MgR3tjb25zdHJ1Y3RvcihBKXt0aGlzLm1vbml0b3I9QSx0aGlzLmluZGV4PS0xLHRoaXMudmFsdWU9IiIsdGhpcy5sb2NrZWQ9ITEsdGhpcy5yb290PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxhYmVsIiksdGhpcy5yb290LmNsYXNzTmFtZT1ZLm1vbml0b3JSb3dSb290LHRoaXMuaW5kZXhFbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLmluZGV4RWwuY2xhc3NOYW1lPVkubW9uaXRvclJvd0luZGV4LHRoaXMudmFsdWVPdXRlcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnZhbHVlT3V0ZXIuY2xhc3NOYW1lPVkubW9uaXRvclJvd1ZhbHVlT3V0ZXIsdGhpcy5lZGl0YWJsZT10aGlzLm1vbml0b3IuZWRpdGFibGUsdGhpcy5lZGl0YWJsZT8odGhpcy52YWx1ZUlubmVyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IiksdGhpcy52YWx1ZUlubmVyLnRhYkluZGV4PS0xLHRoaXMudmFsdWVJbm5lci5jbGFzc05hbWU9WS5tb25pdG9yUm93VmFsdWVJbm5lcix0aGlzLnZhbHVlSW5uZXIucmVhZE9ubHk9ITAsdGhpcy52YWx1ZUlubmVyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLl9vbmNsaWNraW5wdXQuYmluZCh0aGlzKSksdGhpcy52YWx1ZUlubmVyLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX29uYmx1cmlucHV0LmJpbmQodGhpcykpLHRoaXMudmFsdWVJbm5lci5hZGRFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsdGhpcy5fb25rZXlwcmVzc2lucHV0LmJpbmQodGhpcykpLHRoaXMudmFsdWVJbm5lci5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9vbmtleXByZXNzZG93bi5iaW5kKHRoaXMpKSx0aGlzLnZhbHVlSW5uZXIuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLHRoaXMuX29uY29udGV4dG1lbnUuYmluZCh0aGlzKSksdGhpcy52YWx1ZUlubmVyLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0Iix0aGlzLl9vbmlucHV0LmJpbmQodGhpcykpLHRoaXMudmFsdWVPdXRlci5hcHBlbmRDaGlsZCh0aGlzLnZhbHVlSW5uZXIpLHRoaXMuZGVsZXRlQnV0dG9uPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpLHRoaXMuZGVsZXRlQnV0dG9uLmNsYXNzTmFtZT1ZLm1vbml0b3JSb3dEZWxldGUsdGhpcy5kZWxldGVCdXR0b24udGV4dENvbnRlbnQ9IsOXIix0aGlzLmRlbGV0ZUJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLHRoaXMuX29uY2xpY2tkZWxldGUuYmluZCh0aGlzKSksdGhpcy52YWx1ZU91dGVyLmFwcGVuZENoaWxkKHRoaXMuZGVsZXRlQnV0dG9uKSk6KHRoaXMudmFsdWVJbm5lcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnZhbHVlSW5uZXIuY2xhc3NOYW1lPVkubW9uaXRvclJvd1ZhbHVlSW5uZXIsdGhpcy52YWx1ZU91dGVyLmFwcGVuZENoaWxkKHRoaXMudmFsdWVJbm5lciksdGhpcy52YWx1ZUlubmVyLmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRtZW51Iix0aGlzLl9vbmNvbnRleHRtZW51dW5lZGl0YWJsZS5iaW5kKHRoaXMpKSksdGhpcy5yb290LmFwcGVuZENoaWxkKHRoaXMuaW5kZXhFbCksdGhpcy5yb290LmFwcGVuZENoaWxkKHRoaXMudmFsdWVPdXRlcil9X29uY2xpY2tpbnB1dCgpe3RoaXMudmFsdWVJbm5lci5mb2N1cygpLHRoaXMubG9ja2VkfHwodGhpcy52YWx1ZUlubmVyLnNlbGVjdCgpLHRoaXMudmFsdWVJbm5lci5yZWFkT25seT0hMSx0aGlzLmxvY2tlZD0hMCx0aGlzLnJvb3QuY2xhc3NMaXN0LmFkZChZLm1vbml0b3JSb3dWYWx1ZUVkaXRpbmcpLHRoaXMuYWRkTmV3VmFsdWU9ITEsdGhpcy5kZWxldGVWYWx1ZT0hMSx0aGlzLnZhbHVlV2FzQ2hhbmdlZD0hMSl9X29uYmx1cmlucHV0KCl7aWYodGhpcy5sb2NrZWQpaWYodGhpcy51bmZvY3VzKCksdGhpcy5kZWxldGVWYWx1ZSl7Y29uc3QgQT1bLi4udGhpcy5tb25pdG9yLnZhbHVlXTtBLnNwbGljZSh0aGlzLmluZGV4LDEpLHRoaXMubW9uaXRvci5zZXRWYWx1ZShBKSx0aGlzLm1vbml0b3IudHJ5VG9Gb2N1c1JvdyhNYXRoLm1pbihBLmxlbmd0aC0xLHRoaXMuaW5kZXgpKX1lbHNlIGlmKHRoaXMudmFsdWVXYXNDaGFuZ2VkfHx0aGlzLmFkZE5ld1ZhbHVlKXtjb25zdCBBPVsuLi50aGlzLm1vbml0b3IudmFsdWVdO0FbdGhpcy5pbmRleF09dGhpcy52YWx1ZUlubmVyLnZhbHVlLHRoaXMuYWRkTmV3VmFsdWUmJkEuc3BsaWNlKHRoaXMuaW5kZXgrMSwwLCIiKSx0aGlzLm1vbml0b3Iuc2V0VmFsdWUoQSksdGhpcy5hZGROZXdWYWx1ZSYmdGhpcy5tb25pdG9yLnRyeVRvRm9jdXNSb3codGhpcy5pbmRleCsxKX19X29uaW5wdXQoKXt0aGlzLnZhbHVlV2FzQ2hhbmdlZD0hMH1fb25rZXlwcmVzc2lucHV0KEEpeyJFbnRlciI9PT1BLmtleSYmKHRoaXMuYWRkTmV3VmFsdWU9ITAsdGhpcy52YWx1ZUlubmVyLmJsdXIoKSl9X29ua2V5cHJlc3Nkb3duKEEpe2lmKCJFc2NhcGUiPT09QS5rZXkpdGhpcy52YWx1ZUlubmVyLmJsdXIoKTtlbHNlIGlmKCJBcnJvd1VwIj09PUEua2V5fHwiQXJyb3dEb3duIj09PUEua2V5fHwiVGFiIj09PUEua2V5KXtBLnByZXZlbnREZWZhdWx0KCk7bGV0IGU9dGhpcy5pbmRleDsiQXJyb3dVcCI9PT1BLmtleXx8IlRhYiI9PT1BLmtleSYmQS5zaGlmdEtleT8oZS0tLGU8MCYmKGU9dGhpcy5tb25pdG9yLnZhbHVlLmxlbmd0aC0xKSk6KGUrKyxlPj10aGlzLm1vbml0b3IudmFsdWUubGVuZ3RoJiYoZT0wKSksdGhpcy5tb25pdG9yLnRyeVRvRm9jdXNSb3coZSl9fV9vbmNsaWNrZGVsZXRlKEEpe0EucHJldmVudERlZmF1bHQoKSx0aGlzLmRlbGV0ZVZhbHVlPSEwLHRoaXMudmFsdWVJbm5lci5ibHVyKCl9X29uY29udGV4dG1lbnUoQSl7dGhpcy5sb2NrZWQ/QS5zdG9wUHJvcGFnYXRpb24oKTpBLnByZXZlbnREZWZhdWx0KCl9X29uY29udGV4dG1lbnV1bmVkaXRhYmxlKEEpe2NvbnN0IGU9Z2V0U2VsZWN0aW9uKCk7dGhpcy52YWx1ZUlubmVyLmNvbnRhaW5zKGUuYW5jaG9yTm9kZSkmJiFlLmlzQ29sbGFwc2VkJiZBLnN0b3BQcm9wYWdhdGlvbigpfXNldEluZGV4KEEpe3RoaXMuaW5kZXghPT1BJiYodGhpcy5pbmRleD1BLHRoaXMucm9vdC5kYXRhc2V0LmluZGV4PUEsdGhpcy5yb290LnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlWSgiLmNvbmNhdCgyNCpBLCJweCkiKSx0aGlzLmluZGV4RWwudGV4dENvbnRlbnQ9QSsxKX1zZXRWYWx1ZShBKXt0aGlzLnZhbHVlPT09QXx8dGhpcy5sb2NrZWR8fCh0aGlzLnZhbHVlPUEsdGhpcy5lZGl0YWJsZT90aGlzLnZhbHVlSW5uZXIudmFsdWU9QTp0aGlzLnZhbHVlSW5uZXIudGV4dENvbnRlbnQ9QSl9Zm9jdXMoKXt0aGlzLnZhbHVlSW5uZXIuY2xpY2soKSxkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09dGhpcy52YWx1ZUlubmVyJiZzZXRUaW1lb3V0KCgpPT50aGlzLnZhbHVlSW5uZXIuY2xpY2soKSl9dW5mb2N1cygpe3RoaXMubG9ja2VkJiYodGhpcy5sb2NrZWQ9ITEsdGhpcy52YWx1ZUlubmVyLnJlYWRPbmx5PSEwLHRoaXMucm9vdC5jbGFzc0xpc3QucmVtb3ZlKFkubW9uaXRvclJvd1ZhbHVlRWRpdGluZykpfX1jbGFzcyBTIGV4dGVuZHMgeHtjb25zdHJ1Y3RvcihBLGUpe3N1cGVyKEEsZSksdGhpcy5lZGl0YWJsZT1BLmVkaXRhYmxlTGlzdHMsdGhpcy5yb3dzPW5ldyBNYXAsdGhpcy5jYWNoZWRSb3dzPVtdLHRoaXMuc2Nyb2xsVG9wPTAsdGhpcy5vbGRMZW5ndGg9LTEsdGhpcy5sYWJlbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLmxhYmVsLmNsYXNzTmFtZT1ZLm1vbml0b3JMaXN0TGFiZWwsdGhpcy5sYWJlbC50ZXh0Q29udGVudD10aGlzLmdldExhYmVsKCksdGhpcy5mb290ZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5mb290ZXIuY2xhc3NOYW1lPVkubW9uaXRvckxpc3RGb290ZXIsdGhpcy5mb290ZXJUZXh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuZm9vdGVyVGV4dC5jbGFzc05hbWU9WS5tb25pdG9yTGlzdEZvb3RlclRleHQsdGhpcy5yb3dzT3V0ZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5yb3dzT3V0ZXIuY2xhc3NOYW1lPVkubW9uaXRvclJvd3NPdXRlcix0aGlzLnJvd3NJbm5lcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnJvd3NJbm5lci5jbGFzc05hbWU9WS5tb25pdG9yUm93c0lubmVyLHRoaXMucm93c0lubmVyLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsdGhpcy5fb25zY3JvbGwuYmluZCh0aGlzKSx7cGFzc2l2ZTohMH0pLHRoaXMuZW5kUG9pbnQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5lbmRQb2ludC5jbGFzc05hbWU9WS5tb25pdG9yUm93c0VuZHBvaW50LHRoaXMuZW1wdHlMYWJlbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLmVtcHR5TGFiZWwudGV4dENvbnRlbnQ9QS5nZXRNZXNzYWdlKCJsaXN0LWVtcHR5IiksdGhpcy5lbXB0eUxhYmVsLmNsYXNzTmFtZT1ZLm1vbml0b3JFbXB0eSx0aGlzLmVkaXRhYmxlJiYodGhpcy5hZGRCdXR0b249ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIiksdGhpcy5hZGRCdXR0b24uY2xhc3NOYW1lPVkubW9uaXRvckxpc3RBZGQsdGhpcy5hZGRCdXR0b24udGV4dENvbnRlbnQ9IisiLHRoaXMuYWRkQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLl9vbmNsaWNrYWRkYnV0dG9uLmJpbmQodGhpcykpLHRoaXMuZm9vdGVyLmFwcGVuZENoaWxkKHRoaXMuYWRkQnV0dG9uKSksdGhpcy5yb3dzSW5uZXIuYXBwZW5kQ2hpbGQodGhpcy5lbmRQb2ludCksdGhpcy5yb3dzSW5uZXIuYXBwZW5kQ2hpbGQodGhpcy5lbXB0eUxhYmVsKSx0aGlzLnJvd3NPdXRlci5hcHBlbmRDaGlsZCh0aGlzLnJvd3NJbm5lciksdGhpcy5mb290ZXIuYXBwZW5kQ2hpbGQodGhpcy5mb290ZXJUZXh0KSx0aGlzLnJvb3QuYXBwZW5kQ2hpbGQodGhpcy5sYWJlbCksdGhpcy5yb290LmFwcGVuZENoaWxkKHRoaXMucm93c091dGVyKSx0aGlzLnJvb3QuYXBwZW5kQ2hpbGQodGhpcy5mb290ZXIpLHRoaXMuZHJvcHBlcj1uZXcgTih0aGlzLnJvd3NPdXRlcix0aGlzLmRyb3BwZXJDYWxsYmFjay5iaW5kKHRoaXMpKSx0aGlzLmhhbmRsZUltcG9ydD10aGlzLmhhbmRsZUltcG9ydC5iaW5kKHRoaXMpLHRoaXMuaGFuZGxlRXhwb3J0PXRoaXMuaGFuZGxlRXhwb3J0LmJpbmQodGhpcyksdGhpcy5yb290LmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRtZW51Iix0aGlzLl9vbmNvbnRleHRtZW51LmJpbmQodGhpcykpfV9vbmNsaWNrYWRkYnV0dG9uKEEpe3RoaXMuc2V0VmFsdWUoWy4uLnRoaXMudmFsdWUsIiJdKSx0aGlzLnRyeVRvRm9jdXNSb3codGhpcy52YWx1ZS5sZW5ndGgtMSl9dW5mb2N1c0FsbFJvd3MoKXtmb3IoY29uc3QgQSBvZiB0aGlzLnJvd3MudmFsdWVzKCkpQS51bmZvY3VzKCl9dHJ5VG9Gb2N1c1JvdyhBKXtpZihBPj0wJiZBPHRoaXMudmFsdWUubGVuZ3RoKXt0aGlzLnVuZm9jdXNBbGxSb3dzKCk7bGV0IGU9dGhpcy5yb3dzLmdldChBKTtlfHwoZT10aGlzLmNyZWF0ZVJvdyhBKSksZS5mb2N1cygpfX1fb25zY3JvbGwoQSl7dGhpcy5zY3JvbGxUb3A9QS50YXJnZXQuc2Nyb2xsVG9wLHRoaXMudXBkYXRlVmFsdWUodGhpcy52YWx1ZSl9X29uY29udGV4dG1lbnUoQSl7QS5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IGU9bmV3IHkodGhpcy5wYXJlbnQpO2UuYWRkKHt0ZXh0OnRoaXMucGFyZW50LmdldE1lc3NhZ2UoImxpc3QtaW1wb3J0IiksY2FsbGJhY2s6dGhpcy5oYW5kbGVJbXBvcnR9KSxlLmFkZCh7dGV4dDp0aGlzLnBhcmVudC5nZXRNZXNzYWdlKCJsaXN0LWV4cG9ydCIpLGNhbGxiYWNrOnRoaXMuaGFuZGxlRXhwb3J0fSksZS5zaG93KEEpfWhhbmRsZUltcG9ydCgpe2NvbnN0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTtBLnR5cGU9ImZpbGUiLEEuYWNjZXB0PSIudHh0LC5jc3YsLnRzdiIsQS5zdHlsZS5kaXNwbGF5PSJub25lIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKEEpLEEuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixBPT57Y29uc3QgZT1BLnRhcmdldC5maWxlcztpZigwPT09ZS5sZW5ndGgpcmV0dXJuO2NvbnN0IHQ9ZVswXTtmKHQpLnRoZW4oQT0+dGhpcy5pbXBvcnQoQSkpfSksQS5jbGljaygpfWltcG9ydChBKXtjb25zdCBlPUEuc3BsaXQoL1xyP1xuLyk7dGhpcy5zZXRWYWx1ZShlKX1oYW5kbGVFeHBvcnQoKXtjb25zdCBBPXRoaXMuZ2V0VmFsdWUoKS5qb2luKCJcbiIpLGU9bmV3IEJsb2IoW0FdLHt0eXBlOiJ0ZXh0L3BsYWluIn0pO1QoIiIuY29uY2F0KHRoaXMuZ2V0TGFiZWwoKSwiLnR4dCIpLGUpfWRyb3BwZXJDYWxsYmFjayhBKXt0aGlzLmltcG9ydChBLmpvaW4oIlxuIikpfWdldFZhbHVlKCl7cmV0dXJuIHRoaXMuZ2V0Vm1WYXJpYWJsZSgpLnZhbHVlfXNldFZhbHVlKEEpe3RoaXMuZ2V0Vm1WYXJpYWJsZSgpLnZhbHVlPUEsdGhpcy51cGRhdGVWYWx1ZShBKX11cGRhdGUoQSl7c3VwZXIudXBkYXRlKEEpLHRoaXMudmlzaWJsZSYmKHRoaXMud2lkdGg9QS5nZXQoIndpZHRoIil8fDEwMCx0aGlzLmhlaWdodD1BLmdldCgiaGVpZ2h0Iil8fDIwMCx0aGlzLnJvb3Quc3R5bGUud2lkdGg9IiIuY29uY2F0KHRoaXMud2lkdGgsInB4IiksdGhpcy5yb290LnN0eWxlLmhlaWdodD0iIi5jb25jYXQodGhpcy5oZWlnaHQsInB4IiksdGhpcy51cGRhdGVWYWx1ZShBLmdldCgidmFsdWUiKSkpfWNyZWF0ZVJvdyhBKXtjb25zdCBlPXRoaXMuY2FjaGVkUm93cy5wb3AoKXx8bmV3IEcodGhpcyk7ZS5zZXRJbmRleChBKSxlLnNldFZhbHVlKHRoaXMudmFsdWVbQV0pLHRoaXMucm93cy5zZXQoQSxlKTtsZXQgdD0hMTtmb3IoY29uc3QgbiBvZiB0aGlzLnJvd3NJbm5lci5jaGlsZHJlbil7Y29uc3QgaT1uLmRhdGFzZXQuaW5kZXg7aWYoIWkpY29udGludWU7aWYoK2k+QSl7dGhpcy5yb3dzSW5uZXIuaW5zZXJ0QmVmb3JlKGUucm9vdCxuKSx0PSEwO2JyZWFrfX1yZXR1cm4gdHx8dGhpcy5yb3dzSW5uZXIuYXBwZW5kQ2hpbGQoZS5yb290KSxlfXVwZGF0ZVZhbHVlKEEpe3RoaXMudmFsdWU9QSxBLmxlbmd0aCE9PXRoaXMub2xkTGVuZ3RoJiYodGhpcy5vbGRMZW5ndGg9QS5sZW5ndGgsdGhpcy5mb290ZXJUZXh0LnRleHRDb250ZW50PXRoaXMucGFyZW50LmdldE1lc3NhZ2UoImxpc3QtbGVuZ3RoIikucmVwbGFjZSgie259IixBLmxlbmd0aCksdGhpcy5lbmRQb2ludC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVkoIi5jb25jYXQoMjQqQS5sZW5ndGgsInB4KSIpLHRoaXMuZW1wdHlMYWJlbC5zdHlsZS5kaXNwbGF5PUEubGVuZ3RoPyJub25lIjoiIik7bGV0IGU9TWF0aC5mbG9vcih0aGlzLnNjcm9sbFRvcC8yNCktNTtlPDAmJihlPTApO2xldCB0PU1hdGguY2VpbCgodGhpcy5zY3JvbGxUb3ArdGhpcy5oZWlnaHQpLzI0KSszO3Q+QS5sZW5ndGgtMSYmKHQ9QS5sZW5ndGgtMSk7Zm9yKGNvbnN0IG4gb2YgdGhpcy5yb3dzLmtleXMoKSlpZihuPGV8fG4+dCl7Y29uc3QgZT10aGlzLnJvd3MuZ2V0KG4pOyghZS5sb2NrZWR8fG4+PUEubGVuZ3RoKSYmKGUudW5mb2N1cygpLGUucm9vdC5yZW1vdmUoKSx0aGlzLnJvd3MuZGVsZXRlKG4pLHRoaXMuY2FjaGVkUm93cy5sZW5ndGg8MTAmJnRoaXMuY2FjaGVkUm93cy5wdXNoKGUpKX1mb3IobGV0IG49ZTtuPD10O24rKyl7Y29uc3QgZT10aGlzLnJvd3MuZ2V0KG4pO2U/ZS5zZXRWYWx1ZShBW25dKTp0aGlzLmNyZWF0ZVJvdyhuKX19fXZhciBiPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5oYXNJdGVtPSExLHRoaXMucm9vdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnJvb3QuY2xhc3NOYW1lPVkuY29udHJvbHNCYXIsdGhpcy5zdGFydD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLmVuZD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLnJvb3QuYXBwZW5kQ2hpbGQodGhpcy5zdGFydCksdGhpcy5yb290LmFwcGVuZENoaWxkKHRoaXMuZW5kKX1hZGRUb1N0YXJ0KEEpe3RoaXMuaGFzSXRlbT0hMCx0aGlzLnN0YXJ0LmFwcGVuZENoaWxkKEEpfWFkZFRvRW5kKEEpe3RoaXMuaGFzSXRlbT0hMCx0aGlzLmVuZC5hcHBlbmRDaGlsZChBKX1jb21wdXRlSGVpZ2h0KCl7cmV0dXJuIHRoaXMuaGFzSXRlbT90aGlzLnJvb3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0OjB9fTtjb25zdCBIPUE9PiJudW1iZXIiPT10eXBlb2YgQXx8InN0cmluZyI9PXR5cGVvZiBBfHwiYm9vbGVhbiI9PXR5cGVvZiBBO3ZhciB2PXQoMTI1KTtjb25zdCBrPUE9PkEudG91Y2hlcyYmQS50b3VjaGVzWzBdP3t4OkEudG91Y2hlc1swXS5jbGllbnRYLHk6QS50b3VjaGVzWzBdLmNsaWVudFl9OkEuY2hhbmdlZFRvdWNoZXMmJkEuY2hhbmdlZFRvdWNoZXNbMF0/e3g6QS5jaGFuZ2VkVG91Y2hlc1swXS5jbGllbnRYLHk6QS5jaGFuZ2VkVG91Y2hlc1swXS5jbGllbnRZfTp7eDpBLmNsaWVudFgseTpBLmNsaWVudFl9LGo9QT0+ImZ1bmN0aW9uIj09dHlwZW9mIEE/QTooKT0+QTtjbGFzcyBKIGV4dGVuZHMgY2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLl9ldmVudHM9e319YWRkRXZlbnRMaXN0ZW5lcihBLGUpe3RoaXMuX2V2ZW50c1tBXXx8KHRoaXMuX2V2ZW50c1tBXT1bXSksdGhpcy5fZXZlbnRzW0FdLnB1c2goZSl9cmVtb3ZlRXZlbnRMaXN0ZW5lcihBLGUpe2NvbnN0IHQ9dGhpcy5fZXZlbnRzW0FdO3QmJih0aGlzLl9ldmVudHNbQV09dC5maWx0ZXIoQT0+QSE9PWUpKX1kaXNwYXRjaEV2ZW50KEEpe2NvbnN0IGU9dGhpcy5fZXZlbnRzW0EudHlwZV07aWYoZSlmb3IoY29uc3QgdCBvZiBlKXQoQSl9fXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy53aWR0aD00ODAsdGhpcy5oZWlnaHQ9MzYwLHRoaXMucmVzaXplTW9kZT0icHJlc2VydmUtcmF0aW8iLHRoaXMuZWRpdGFibGVMaXN0cz0hMSx0aGlzLnNob3VsZENvbm5lY3RQZXJpcGhlcmFscz0hMCx0aGlzLnVzZVBhY2thZ2VkUnVudGltZT0hMSx0aGlzLm1lc3NhZ2VzPXYsdGhpcy5fbW9uaXRvcnM9bmV3IE1hcCx0aGlzLl9tb3VzZWRvd25Qb3NpdGlvbj1udWxsLHRoaXMuX2RyYWdnaW5nSWQ9bnVsbCx0aGlzLl9kcmFnZ2luZ1N0YXJ0TW91c2VQb3NpdGlvbj1udWxsLHRoaXMuX2RyYWdnaW5nU3RhcnRTcHJpdGVQb3NpdGlvbj1udWxsLHRoaXMuX29mZnNldEZyb21Ub3A9MCx0aGlzLl9vZmZzZXRGcm9tQm90dG9tPTAsdGhpcy5fb2Zmc2V0RnJvbUxlZnQ9MCx0aGlzLl9vZmZzZXRGcm9tUmlnaHQ9MCx0aGlzLl9yb290PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX3Jvb3QuY2xhc3NOYW1lPVkucm9vdCx0aGlzLl9sYXllcnM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5fbGF5ZXJzLmNsYXNzTmFtZT1ZLmxheWVycyx0aGlzLl9yb290LmFwcGVuZENoaWxkKHRoaXMuX2xheWVycyksdGhpcy5fY2FudmFzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLHRoaXMuX2NhbnZhcy5jbGFzc05hbWU9WS5jYW52YXMsdGhpcy5fYWRkTGF5ZXIodGhpcy5fY2FudmFzKSx0aGlzLl9vdmVybGF5cz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLl9vdmVybGF5cy5jbGFzc05hbWU9WS5zY2FsZWRPdmVybGF5c0lubmVyLHRoaXMuX292ZXJsYXlzT3V0ZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5fb3ZlcmxheXNPdXRlci5jbGFzc05hbWU9WS5zY2FsZWRPdmVybGF5c091dGVyLHRoaXMuX292ZXJsYXlzT3V0ZXIuYXBwZW5kQ2hpbGQodGhpcy5fb3ZlcmxheXMpLHRoaXMuX2FkZExheWVyKHRoaXMuX292ZXJsYXlzT3V0ZXIpLHRoaXMuX21vbml0b3JPdmVybGF5PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX21vbml0b3JPdmVybGF5LmNsYXNzTmFtZT1ZLm1vbml0b3JPdmVybGF5LHRoaXMuX292ZXJsYXlzLmFwcGVuZENoaWxkKHRoaXMuX21vbml0b3JPdmVybGF5KSx0aGlzLl90b3BDb250cm9scz1uZXcgYix0aGlzLl9sYXllcnMuYXBwZW5kQ2hpbGQodGhpcy5fdG9wQ29udHJvbHMucm9vdCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLl9vbm1vdXNlbW92ZS5iaW5kKHRoaXMpKSx0aGlzLl9jYW52YXMuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIix0aGlzLl9vbm1vdXNlZG93bi5iaW5kKHRoaXMpKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIix0aGlzLl9vbm1vdXNldXAuYmluZCh0aGlzKSksdGhpcy5fY2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHRoaXMuX29udG91Y2hzdGFydC5iaW5kKHRoaXMpKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHRoaXMuX29udG91Y2htb3ZlLmJpbmQodGhpcykpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIix0aGlzLl9vbnRvdWNoZW5kLmJpbmQodGhpcykpLHRoaXMuX2NhbnZhcy5hZGRFdmVudExpc3RlbmVyKCJjb250ZXh0bWVudSIsdGhpcy5fb25jb250ZXh0bWVudS5iaW5kKHRoaXMpKSx0aGlzLl9jYW52YXMuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLHRoaXMuX29ud2hlZWwuYmluZCh0aGlzKSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fb25rZXlkb3duLmJpbmQodGhpcykpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9vbmtleXVwLmJpbmQodGhpcykpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuX29ucmVzaXplLmJpbmQodGhpcykpfV9hZGRMYXllcihBKXt0aGlzLl9sYXllcnMuYXBwZW5kQ2hpbGQoQSl9X3NjcmF0Y2hDb29yZGluYXRlcyhBLGUpe3JldHVybnt4OnRoaXMud2lkdGgvdGhpcy5sYXllcnNSZWN0LndpZHRoKihBLXRoaXMubGF5ZXJzUmVjdC53aWR0aC8yKSx5Oi10aGlzLmhlaWdodC90aGlzLmxheWVyc1JlY3QuaGVpZ2h0KihlLXRoaXMubGF5ZXJzUmVjdC5oZWlnaHQvMil9fV9vbm1vdXNlbW92ZShBKXtjb25zdHt4OmUseTp0fT1rKEEpLG49e3g6ZS10aGlzLmxheWVyc1JlY3QubGVmdCx5OnQtdGhpcy5sYXllcnNSZWN0LnRvcCxjYW52YXNXaWR0aDp0aGlzLmxheWVyc1JlY3Qud2lkdGgsY2FudmFzSGVpZ2h0OnRoaXMubGF5ZXJzUmVjdC5oZWlnaHR9O2lmKHRoaXMuX21vdXNlZG93blBvc2l0aW9uJiYhdGhpcy5fZHJhZ2dpbmdJZCl7TWF0aC5zcXJ0KE1hdGgucG93KG4ueC10aGlzLl9tb3VzZWRvd25Qb3NpdGlvbi54LDIpK01hdGgucG93KG4ueS10aGlzLl9tb3VzZWRvd25Qb3NpdGlvbi55LDIpKT4zJiYodGhpcy5fc3RhcnREcmFnZ2luZyhuLngsbi55KSx0aGlzLl9jYW5jZWxEcmFnVGltZW91dCgpKX1lbHNlIGlmKHRoaXMuX2RyYWdnaW5nSWQpe2NvbnN0IEE9dGhpcy5fc2NyYXRjaENvb3JkaW5hdGVzKG4ueCxuLnkpO3RoaXMudm0ucG9zdFNwcml0ZUluZm8oe3g6QS54LXRoaXMuX2RyYWdnaW5nU3RhcnRNb3VzZVBvc2l0aW9uLngrdGhpcy5fZHJhZ2dpbmdTdGFydFNwcml0ZVBvc2l0aW9uLngseTpBLnktdGhpcy5fZHJhZ2dpbmdTdGFydE1vdXNlUG9zaXRpb24ueSt0aGlzLl9kcmFnZ2luZ1N0YXJ0U3ByaXRlUG9zaXRpb24ueSxmb3JjZTohMH0pfXRoaXMudm0ucG9zdElPRGF0YSgibW91c2UiLG4pfV9zdGFydERyYWdnaW5nKEEsZSl7aWYodGhpcy5fZHJhZ2dpbmdJZClyZXR1cm47Y29uc3QgdD10aGlzLnJlbmRlcmVyLnBpY2soQSxlKTtpZihudWxsPT09dClyZXR1cm47Y29uc3Qgbj10aGlzLnZtLmdldFRhcmdldElkRm9yRHJhd2FibGVJZCh0KTtpZihudWxsPT09bilyZXR1cm47Y29uc3QgaT10aGlzLnZtLnJ1bnRpbWUuZ2V0VGFyZ2V0QnlJZChuKTtpLmRyYWdnYWJsZSYmKGkuZ29Ub0Zyb250KCksdGhpcy5fZHJhZ2dpbmdJZD1uLHRoaXMuX2RyYWdnaW5nU3RhcnRNb3VzZVBvc2l0aW9uPXRoaXMuX3NjcmF0Y2hDb29yZGluYXRlcyhBLGUpLHRoaXMuX2RyYWdnaW5nU3RhcnRTcHJpdGVQb3NpdGlvbj17eDppLngseTppLnl9LHRoaXMudm0uc3RhcnREcmFnKG4pKX1fY2FuY2VsRHJhZ1RpbWVvdXQoKXtjbGVhclRpbWVvdXQodGhpcy5fZHJhZ1RpbWVvdXQpLHRoaXMuX2RyYWdUaW1lb3V0PW51bGx9X29ubW91c2Vkb3duKEEpe2NvbnN0e3g6ZSx5OnR9PWsoQSksbj17eDplLXRoaXMubGF5ZXJzUmVjdC5sZWZ0LHk6dC10aGlzLmxheWVyc1JlY3QudG9wLGJ1dHRvbjpBLmJ1dHRvbixjYW52YXNXaWR0aDp0aGlzLmxheWVyc1JlY3Qud2lkdGgsY2FudmFzSGVpZ2h0OnRoaXMubGF5ZXJzUmVjdC5oZWlnaHQsaXNEb3duOiEwfSxpPSJ1bmRlZmluZWQiIT10eXBlb2YgVG91Y2hFdmVudCYmQSBpbnN0YW5jZW9mIFRvdWNoRXZlbnQ7KDA9PT1BLmJ1dHRvbnx8aSkmJih0aGlzLl9kcmFnVGltZW91dD1zZXRUaW1lb3V0KHRoaXMuX3N0YXJ0RHJhZ2dpbmcuYmluZCh0aGlzLG4ueCxuLnkpLDQwMCkpLGkmJihBLnByZXZlbnREZWZhdWx0KCksZG9jdW1lbnQuYWN0aXZlRWxlbWVudCYmZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5ibHVyJiZkb2N1bWVudC5hY3RpdmVFbGVtZW50LmJsdXIoKSksdGhpcy5fbW91c2Vkb3duUG9zaXRpb249e3g6bi54LHk6bi55fSx0aGlzLnZtLnBvc3RJT0RhdGEoIm1vdXNlIixuKX1fb25tb3VzZXVwKEEpe3RoaXMuX2NhbmNlbERyYWdUaW1lb3V0KCk7Y29uc3R7eDplLHk6dH09ayhBKSxuPXt4OmUtdGhpcy5sYXllcnNSZWN0LmxlZnQseTp0LXRoaXMubGF5ZXJzUmVjdC50b3AsYnV0dG9uOkEuYnV0dG9uLGNhbnZhc1dpZHRoOnRoaXMubGF5ZXJzUmVjdC53aWR0aCxjYW52YXNIZWlnaHQ6dGhpcy5sYXllcnNSZWN0LmhlaWdodCxpc0Rvd246ITEsd2FzRHJhZ2dlZDpudWxsIT09dGhpcy5fZHJhZ2dpbmdJZH07dGhpcy5fbW91c2Vkb3duUG9zaXRpb249bnVsbCx0aGlzLnZtLnBvc3RJT0RhdGEoIm1vdXNlIixuKSx0aGlzLl9kcmFnZ2luZ0lkJiYodGhpcy52bS5zdG9wRHJhZyh0aGlzLl9kcmFnZ2luZ0lkKSx0aGlzLl9kcmFnZ2luZ1N0YXJ0TW91c2VQb3NpdGlvbj1udWxsLHRoaXMuX2RyYWdnaW5nU3RhcnRTcHJpdGVQb3NpdGlvbj1udWxsLHRoaXMuX2RyYWdnaW5nSWQ9bnVsbCl9X29udG91Y2hzdGFydChBKXt0aGlzLl9vbm1vdXNlZG93bihBKX1fb250b3VjaG1vdmUoQSl7dGhpcy5fb25tb3VzZW1vdmUoQSl9X29udG91Y2hlbmQoQSl7dGhpcy5fb25tb3VzZXVwKEEpfV9vbmNvbnRleHRtZW51KEEpe0EucHJldmVudERlZmF1bHQoKX1fb253aGVlbChBKXtjb25zdCBlPXtkZWx0YVg6QS5kZWx0YVgsZGVsdGFZOkEuZGVsdGFZfTt0aGlzLnZtLnBvc3RJT0RhdGEoIm1vdXNlV2hlZWwiLGUpfV9vbmtleWRvd24oQSl7aWYoQS50YXJnZXQhPT1kb2N1bWVudCYmQS50YXJnZXQhPT1kb2N1bWVudC5ib2R5KXJldHVybjtjb25zdCBlPXtrZXk6QS5rZXksa2V5Q29kZTpBLmtleUNvZGUsaXNEb3duOiEwfTt0aGlzLnZtLnBvc3RJT0RhdGEoImtleWJvYXJkIixlKSwoMzI9PT1BLmtleUNvZGV8fEEua2V5Q29kZT49MzcmJkEua2V5Q29kZTw9NDB8fDg9PT1BLmtleUNvZGV8fDIyMj09PUEua2V5Q29kZXx8MTkxPT09QS5rZXlDb2RlKSYmQS5wcmV2ZW50RGVmYXVsdCgpfV9vbmtleXVwKEEpe2NvbnN0IGU9e2tleTpBLmtleSxrZXlDb2RlOkEua2V5Q29kZSxpc0Rvd246ITF9O3RoaXMudm0ucG9zdElPRGF0YSgia2V5Ym9hcmQiLGUpLEEudGFyZ2V0IT09ZG9jdW1lbnQmJkEudGFyZ2V0IT09ZG9jdW1lbnQuYm9keSYmQS5wcmV2ZW50RGVmYXVsdCgpfV9vbnJlc2l6ZSgpe3RoaXMucmVsYXlvdXQoKX1yZWxheW91dCgpe2NvbnN0IEE9TWF0aC5tYXgoMSx0aGlzLl9yb290Lm9mZnNldFdpZHRoKSxlPU1hdGgubWF4KDEsdGhpcy5fcm9vdC5vZmZzZXRIZWlnaHQpLHQ9dGhpcy5fb2Zmc2V0RnJvbVRvcCt0aGlzLl90b3BDb250cm9scy5jb21wdXRlSGVpZ2h0KCksbj10aGlzLl9vZmZzZXRGcm9tQm90dG9tLGk9dGhpcy5fb2Zmc2V0RnJvbUxlZnQscj10aGlzLl9vZmZzZXRGcm9tUmlnaHQsbz1NYXRoLm1heCgxLEEtaS1yKSxzPU1hdGgubWF4KDEsZS10LW4pOyJkeW5hbWljLXJlc2l6ZSI9PT10aGlzLnJlc2l6ZU1vZGUmJih0aGlzLnZtLnNldFN0YWdlU2l6ZT8odGhpcy53aWR0aD1vLHRoaXMuaGVpZ2h0PXMsdGhpcy52bS5zZXRTdGFnZVNpemUodGhpcy53aWR0aCx0aGlzLmhlaWdodCkpOmNvbnNvbGUud2FybigiZHluYW1pYy1yZXNpemUgbm90IHN1cHBvcnRlZDogdm0gZG9lcyBub3QgaW1wbGVtZW50IHNldFN0YWdlU2l6ZSIpKTtsZXQgYT1vLEI9czsic3RyZXRjaCIhPT10aGlzLnJlc2l6ZU1vZGUmJihhPUIvdGhpcy5oZWlnaHQqdGhpcy53aWR0aCxhPm8mJihCPW8vdGhpcy53aWR0aCp0aGlzLmhlaWdodCxhPW8pKTtjb25zdCBjPWUtQixnPUEtYSxFPShnLWktcikvMitpLWcvMixRPShjLXQtbikvMit0LWMvMjt0aGlzLl9sYXllcnMuc3R5bGUudHJhbnNmb3JtPSJ0cmFuc2xhdGUoIi5jb25jYXQoRSwicHgsICIpLmNvbmNhdChRLCJweCkiKSx0aGlzLl9sYXllcnMuc3R5bGUud2lkdGg9IiIuY29uY2F0KGEsInB4IiksdGhpcy5fbGF5ZXJzLnN0eWxlLmhlaWdodD0iIi5jb25jYXQoQiwicHgiKSx0aGlzLl9vdmVybGF5cy5zdHlsZS50cmFuc2Zvcm09InNjYWxlKCIuY29uY2F0KGEvdGhpcy53aWR0aCwiLCAiKS5jb25jYXQoQi90aGlzLmhlaWdodCwiKSIpLHRoaXMucmVuZGVyZXIucmVzaXplKGEsQiksdGhpcy5sYXllcnNSZWN0PXRoaXMuX2xheWVycy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX1hcHBlbmRUbyhBKXtBLmFwcGVuZENoaWxkKHRoaXMuX3Jvb3QpLHRoaXMucmVsYXlvdXQoKX1zZXR1cCgpe3RoaXMudm09bmV3IHIuYSx0aGlzLnZtLnNldENvbXBhdGliaWxpdHlNb2RlKCEwKSx0aGlzLnZtLnNldExvY2FsZShuYXZpZ2F0b3IubGFuZ3VhZ2UpLHRoaXMudm0ub24oIk1PTklUT1JTX1VQREFURSIsdGhpcy5fb25tb25pdG9yc3VwZGF0ZS5iaW5kKHRoaXMpKSx0aGlzLnZtLnJ1bnRpbWUub24oIlFVRVNUSU9OIix0aGlzLl9vbnF1ZXN0aW9uLmJpbmQodGhpcykpLHRoaXMudm0ub24oIlBST0pFQ1RfUlVOX1NUQVJUIiwoKT0+dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiUFJPSkVDVF9SVU5fU1RBUlQiKSkpLHRoaXMudm0ub24oIlBST0pFQ1RfUlVOX1NUT1AiLCgpPT50aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJQUk9KRUNUX1JVTl9TVE9QIikpKSx0aGlzLnVzZVBhY2thZ2VkUnVudGltZSYmdGhpcy52bS5jb252ZXJ0VG9QYWNrYWdlZFJ1bnRpbWUmJnRoaXMudm0uY29udmVydFRvUGFja2FnZWRSdW50aW1lKCksdGhpcy52bS5zZXRTdGFnZVNpemUmJnRoaXMudm0uc2V0U3RhZ2VTaXplKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpLHRoaXMudm0ucnVudGltZS5jbG91ZE9wdGlvbnMmJih0aGlzLnZtLnJ1bnRpbWUuY2xvdWRPcHRpb25zLmxpbWl0PTEvMCksdGhpcy52bS5vbigiU1RBR0VfU0laRV9DSEFOR0VEIiwoQSxlKT0+e3RoaXMud2lkdGg9PT1BJiZ0aGlzLmhlaWdodD09PWV8fCh0aGlzLndpZHRoPUEsdGhpcy5oZWlnaHQ9ZSx0aGlzLnJlbGF5b3V0KCkpfSksdGhpcy5jbG91ZE1hbmFnZXI9bmV3IGQuQ2xvdWRNYW5hZ2VyKHRoaXMpLHRoaXMucmVuZGVyZXI9bmV3IHMuYSh0aGlzLl9jYW52YXMsLXRoaXMud2lkdGgvMix0aGlzLndpZHRoLzIsLXRoaXMuaGVpZ2h0LzIsdGhpcy5oZWlnaHQvMiksdGhpcy52bS5hdHRhY2hSZW5kZXJlcih0aGlzLnJlbmRlcmVyKSx0aGlzLnJlbmRlcmVyLm92ZXJsYXlDb250YWluZXImJnRoaXMuX2xheWVycy5pbnNlcnRCZWZvcmUodGhpcy5yZW5kZXJlci5vdmVybGF5Q29udGFpbmVyLHRoaXMuX292ZXJsYXlzT3V0ZXIpLHRoaXMuc3RvcmFnZT1uZXcgZyx0aGlzLnZtLmF0dGFjaFN0b3JhZ2UodGhpcy5zdG9yYWdlKSwidW5kZWZpbmVkIiE9dHlwZW9mIEF1ZGlvQ29udGV4dHx8InVuZGVmaW5lZCIhPXR5cGVvZiB3ZWJraXRBdWRpb0NvbnRleHQ/KHRoaXMuYXVkaW9FbmdpbmU9bmV3IFEuYSx0aGlzLnZtLmF0dGFjaEF1ZGlvRW5naW5lKHRoaXMuYXVkaW9FbmdpbmUpKTpjb25zb2xlLndhcm4oIkF1ZGlvQ29udGV4dCBub3Qgc3VwcG9ydGVkLiBTb3VuZCB3aWxsIG5vdCB3b3JrLiIpLHRoaXMuYml0bWFwQWRhcHRlcj1uZXcgdS5CaXRtYXBBZGFwdGVyLHRoaXMudm0uYXR0YWNoVjJCaXRtYXBBZGFwdGVyKHRoaXMuYml0bWFwQWRhcHRlciksdGhpcy52aWRlb1Byb3ZpZGVyPW5ldyBNLHRoaXMudm0uc2V0VmlkZW9Qcm92aWRlcih0aGlzLnZpZGVvUHJvdmlkZXIpfWFzeW5jIF9jb25uZWN0UGVyaXBoZXJhbHMoKXtjb25zdCBBPUE9Pm5ldyBQcm9taXNlKGU9Pntjb25zdCB0PWU9Pntjb25zdCB0PU9iamVjdC5rZXlzKGUpLm1hcChBPT5lW0FdKTtpZih0Lmxlbmd0aD4wKXtjb25zdCBlPXRbMF07Y29uc29sZS5sb2coIkNvbm5lY3RpbmcgdG8gcGVyaXBoZXJhbCIsZSksdGhpcy52bS5jb25uZWN0UGVyaXBoZXJhbChBLGUucGVyaXBoZXJhbElkKX1lbHNlIGNvbnNvbGUuZXJyb3IoIk5vIHBlcmlwaGVyYWxzIGZvdW5kIGZvciIsQSk7aSgpfSxuPSgpPT57Y29uc29sZS5lcnJvcigiUGVyaXBoZXJhbCBzY2FuIHRpbWVkIG91dCBmb3IiLEEpLGkoKX0saT0oKT0+e3RoaXMudm0ucmVtb3ZlTGlzdGVuZXIoIlBFUklQSEVSQUxfTElTVF9VUERBVEUiLHQpLHRoaXMudm0ucmVtb3ZlTGlzdGVuZXIoIlBFUklQSEVSQUxfU0NBTl9USU1FT1VUIixuKSxlKCl9O3RoaXMudm0ub24oIlBFUklQSEVSQUxfTElTVF9VUERBVEUiLHQpLHRoaXMudm0ub24oIlBFUklQSEVSQUxfU0NBTl9USU1FT1VUIixuKSx0aGlzLnZtLnNjYW5Gb3JQZXJpcGhlcmFsKEEpfSk7Zm9yKGNvbnN0IGUgb2YgT2JqZWN0LmtleXModGhpcy52bS5ydW50aW1lLnBlcmlwaGVyYWxFeHRlbnNpb25zKSlhd2FpdCBBKGUpfV9vbm1vbml0b3JzdXBkYXRlKEEpe2Zvcihjb25zdCBlIG9mIEEudmFsdWVTZXEoKSl7Y29uc3QgQT1lLmdldCgiaWQiKTtpZighdGhpcy5fbW9uaXRvcnMuaGFzKEEpKXtpZighZS5nZXQoInZpc2libGUiKSljb250aW51ZTsibGlzdCI9PT1lLmdldCgibW9kZSIpP3RoaXMuX21vbml0b3JzLnNldChBLG5ldyBTKHRoaXMsZSkpOnRoaXMuX21vbml0b3JzLnNldChBLG5ldyBSKHRoaXMsZSkpfXRoaXMuX21vbml0b3JzLmdldChBKS51cGRhdGUoZSl9fWFzayhBKXtyZXR1cm4gdGhpcy5fcXVlc3Rpb249bmV3IFUodGhpcyxBKSx0aGlzLl9xdWVzdGlvbi5hbnN3ZXIoKX1fb25xdWVzdGlvbihBKXt0aGlzLl9xdWVzdGlvbiYmdGhpcy5fcXVlc3Rpb24uZGVzdHJveSgpLG51bGwhPT1BJiZ0aGlzLmFzayhBKS50aGVuKEE9Pnt0aGlzLnZtLnJ1bnRpbWUuZW1pdCgiQU5TV0VSIixBKX0pfWxvYWRQcm9qZWN0KEEpe3JldHVybiB0aGlzLnZtLmxvYWRQcm9qZWN0KEEpLnRoZW4oKCk9Pnt0aGlzLnZtLnNldENsb3VkUHJvdmlkZXIodGhpcy5jbG91ZE1hbmFnZXIpLHRoaXMuY2xvdWRNYW5hZ2VyLnByb2plY3RSZWFkeSgpLHRoaXMucmVuZGVyZXIuZHJhdygpLHNldFRpbWVvdXQoKCk9Pnt0aGlzLnJlbmRlcmVyLmRyYXcoKX0pLHRoaXMuc2hvdWxkQ29ubmVjdFBlcmlwaGVyYWxzJiZ0aGlzLl9jb25uZWN0UGVyaXBoZXJhbHMoKX0pfXNldFVzZXJuYW1lKEEpe3RoaXMuX3VzZXJuYW1lPUEsdGhpcy52bS5wb3N0SU9EYXRhKCJ1c2VyRGF0YSIse3VzZXJuYW1lOkF9KX1hZGRDbG91ZFByb3ZpZGVyKEEpe3RoaXMuY2xvdWRNYW5hZ2VyLmFkZFByb3ZpZGVyKEEpfWFkZENsb3VkUHJvdmlkZXJPdmVycmlkZShBLGUpe3RoaXMuY2xvdWRNYW5hZ2VyLmFkZFByb3ZpZGVyT3ZlcnJpZGUoQSxlKX1hZGRDb250cm9sQnV0dG9uKEEpe2xldHtlbGVtZW50OmUsd2hlcmU6dH09QTtpZigidG9wLWxlZnQiPT09dCl0aGlzLl90b3BDb250cm9scy5hZGRUb1N0YXJ0KGUpO2Vsc2V7aWYoInRvcC1yaWdodCIhPT10KXRocm93IG5ldyBFcnJvcigiVW5rbm93biAnd2hlcmUnOiAiLmNvbmNhdCh0KSk7dGhpcy5fdG9wQ29udHJvbHMuYWRkVG9FbmQoZSl9dGhpcy5yZWxheW91dCgpfWdldE1lc3NhZ2UoQSl7cmV0dXJuIHRoaXMubWVzc2FnZXNbQV18fEF9c2V0QWNjZW50Q29sb3IoQSl7dGhpcy5fcm9vdC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1zYy1hY2NlbnQtY29sb3IiLEEpLHRoaXMuX3Jvb3Quc3R5bGUuc2V0UHJvcGVydHkoIi0tc2MtYWNjZW50LWNvbG9yLXRyYW5zcGFyZW50IiwiIi5jb25jYXQoQSwiNTkiKSl9c3RhcnQoKXt0aGlzLnZtLnN0YXJ0KCksdGhpcy52bS5ncmVlbkZsYWcoKX1ncmVlbkZsYWcoKXt0aGlzLnN0YXJ0KCl9c3RvcEFsbCgpe3RoaXMudm0uc3RvcEFsbCgpfV9sb29rdXBWYXJpYWJsZShBLGUpe2NvbnN0IHQ9dGhpcy52bS5ydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCkubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKEEsZSk7aWYoIXQpdGhyb3cgbmV3IEVycm9yKCJHbG9iYWwgIi5jb25jYXQoZXx8InZhcmlhYmxlIiwiIGRvZXMgbm90IGV4aXN0OiAiKS5jb25jYXQoQSkpO3JldHVybiB0fXNldEV4dGVuc2lvblNlY3VyaXR5TWFuYWdlcihBKXtjb25zdCBlPXRoaXMudm0uZXh0ZW5zaW9uTWFuYWdlci5zZWN1cml0eU1hbmFnZXI7aWYoZSlmb3IoY29uc3RbdCxuXW9mIE9iamVjdC5lbnRyaWVzKEEpKWVbdF09aihuKTtlbHNlIGNvbnNvbGUud2Fybigic2V0RXh0ZW5zaW9uU2VjdXJpdHlNYW5hZ2VyIG5vdCBzdXBwb3J0ZWQ6IHRoZXJlIGlzIG5vIHNlY3VyaXR5IG1hbmFnZXIiKX1nZXRWYXJpYWJsZShBKXtyZXR1cm4gdGhpcy5fbG9va3VwVmFyaWFibGUoQSwiIikudmFsdWV9c2V0VmFyaWFibGUoQSxlKXtpZighSChlKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgdmFyaWFibGUgdmFsdWUiKTt0aGlzLl9sb29rdXBWYXJpYWJsZShBLCIiKS52YWx1ZT1lfWdldExpc3QoQSl7cmV0dXJuIHRoaXMuX2xvb2t1cFZhcmlhYmxlKEEsImxpc3QiKS52YWx1ZX1zZXRMaXN0KEEsZSl7aWYoIShBPT57aWYoIUFycmF5LmlzQXJyYXkoQSkpcmV0dXJuITE7Zm9yKGxldCBlPTA7ZTxBLmxlbmd0aDtlKyspaWYoIUgoQVtlXSkpcmV0dXJuITE7cmV0dXJuITB9KShlKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgbGlzdCB2YWx1ZSIpO3RoaXMuX2xvb2t1cFZhcmlhYmxlKEEsImxpc3QiKS52YWx1ZT1lfX1pZih3aW5kb3cuU2NhZmZvbGRpbmcpdGhyb3cgbmV3IEVycm9yKCJTY2FmZm9sZGluZyBhbHJlYWR5IGV4aXN0cyBvbiB0aGlzIHBhZ2UiKTt3aW5kb3cuU2NhZmZvbGRpbmc9bn0sZnVuY3Rpb24oQSxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSksdC5kKGUsIkZCWExvYWRlciIsKGZ1bmN0aW9uKCl7cmV0dXJuIEx9KSk7dmFyIG49dCgwKSxpPWZ1bmN0aW9uKEEpe3JldHVybiBVUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtBXSx7dHlwZToidGV4dC9qYXZhc2NyaXB0In0pKX07Ci8qIQpmZmxhdGUgLSBmYXN0IEphdmFTY3JpcHQgY29tcHJlc3Npb24vZGVjb21wcmVzc2lvbgo8aHR0cHM6Ly8xMDFhcnJvd3ouZ2l0aHViLmlvL2ZmbGF0ZT4KTGljZW5zZWQgdW5kZXIgTUlULiBodHRwczovL2dpdGh1Yi5jb20vMTAxYXJyb3d6L2ZmbGF0ZS9ibG9iL21hc3Rlci9MSUNFTlNFCnZlcnNpb24gMC42LjkKKi90cnl7VVJMLnJldm9rZU9iamVjdFVSTChpKCIiKSl9Y2F0Y2goQSl7aT1mdW5jdGlvbihBKXtyZXR1cm4iZGF0YTphcHBsaWNhdGlvbi9qYXZhc2NyaXB0O2NoYXJzZXQ9VVRGLTgsIitlbmNvZGVVUkkoQSl9LGZ1bmN0aW9uKEEpe3JldHVybiBuZXcgV29ya2VyKEEse3R5cGU6Im1vZHVsZSJ9KX19dmFyIHI9VWludDhBcnJheSxvPVVpbnQxNkFycmF5LHM9VWludDMyQXJyYXksYT1uZXcgcihbMCwwLDAsMCwwLDAsMCwwLDEsMSwxLDEsMiwyLDIsMiwzLDMsMywzLDQsNCw0LDQsNSw1LDUsNSwwLDAsMCwwXSksQj1uZXcgcihbMCwwLDAsMCwxLDEsMiwyLDMsMyw0LDQsNSw1LDYsNiw3LDcsOCw4LDksOSwxMCwxMCwxMSwxMSwxMiwxMiwxMywxMywwLDBdKSxjPW5ldyByKFsxNiwxNywxOCwwLDgsNyw5LDYsMTAsNSwxMSw0LDEyLDMsMTMsMiwxNCwxLDE1XSksZz1mdW5jdGlvbihBLGUpe2Zvcih2YXIgdD1uZXcgbygzMSksbj0wO248MzE7KytuKXRbbl09ZSs9MTw8QVtuLTFdO3ZhciBpPW5ldyBzKHRbMzBdKTtmb3Iobj0xO248MzA7KytuKWZvcih2YXIgcj10W25dO3I8dFtuKzFdOysrcilpW3JdPXItdFtuXTw8NXxuO3JldHVyblt0LGldfSxFPWcoYSwyKSxRPUVbMF0sdT1FWzFdO1FbMjhdPTI1OCx1WzI1OF09Mjg7Zm9yKHZhciBsPWcoQiwwKSxoPWxbMF0sdz0obFsxXSxuZXcgbygzMjc2OCkpLEM9MDtDPDMyNzY4OysrQyl7dmFyIEk9KDQzNjkwJkMpPj4+MXwoMjE4NDUmQyk8PDE7ST0oNjE2ODAmKEk9KDUyNDI4JkkpPj4+MnwoMTMxMDcmSSk8PDIpKT4+PjR8KDM4NTUmSSk8PDQsd1tDXT0oKDY1MjgwJkkpPj4+OHwoMjU1JkkpPDw4KT4+PjF9dmFyIE09ZnVuY3Rpb24oQSxlLHQpe2Zvcih2YXIgbj1BLmxlbmd0aCxpPTAscj1uZXcgbyhlKTtpPG47KytpKSsrcltBW2ldLTFdO3ZhciBzLGE9bmV3IG8oZSk7Zm9yKGk9MDtpPGU7KytpKWFbaV09YVtpLTFdK3JbaS0xXTw8MTtpZih0KXtzPW5ldyBvKDE8PGUpO3ZhciBCPTE1LWU7Zm9yKGk9MDtpPG47KytpKWlmKEFbaV0pZm9yKHZhciBjPWk8PDR8QVtpXSxnPWUtQVtpXSxFPWFbQVtpXS0xXSsrPDxnLFE9RXwoMTw8ZyktMTtFPD1ROysrRSlzW3dbRV0+Pj5CXT1jfWVsc2UgZm9yKHM9bmV3IG8obiksaT0wO2k8bjsrK2kpQVtpXSYmKHNbaV09d1thW0FbaV0tMV0rK10+Pj4xNS1BW2ldKTtyZXR1cm4gc30sZD1uZXcgcigyODgpO2ZvcihDPTA7QzwxNDQ7KytDKWRbQ109ODtmb3IoQz0xNDQ7QzwyNTY7KytDKWRbQ109OTtmb3IoQz0yNTY7QzwyODA7KytDKWRbQ109Nztmb3IoQz0yODA7QzwyODg7KytDKWRbQ109ODt2YXIgcD1uZXcgcigzMik7Zm9yKEM9MDtDPDMyOysrQylwW0NdPTU7dmFyIG09TShkLDksMSksRj1NKHAsNSwxKSxEPWZ1bmN0aW9uKEEpe2Zvcih2YXIgZT1BWzBdLHQ9MTt0PEEubGVuZ3RoOysrdClBW3RdPmUmJihlPUFbdF0pO3JldHVybiBlfSxZPWZ1bmN0aW9uKEEsZSx0KXt2YXIgbj1lLzh8MDtyZXR1cm4oQVtuXXxBW24rMV08PDgpPj4oNyZlKSZ0fSxmPWZ1bmN0aW9uKEEsZSl7dmFyIHQ9ZS84fDA7cmV0dXJuKEFbdF18QVt0KzFdPDw4fEFbdCsyXTw8MTYpPj4oNyZlKX0sTj1mdW5jdGlvbihBKXtyZXR1cm4oQS84fDApKyg3JkEmJjEpfSxVPWZ1bmN0aW9uKEEsZSx0KXsobnVsbD09ZXx8ZTwwKSYmKGU9MCksKG51bGw9PXR8fHQ+QS5sZW5ndGgpJiYodD1BLmxlbmd0aCk7dmFyIG49bmV3KEEgaW5zdGFuY2VvZiBvP286QSBpbnN0YW5jZW9mIHM/czpyKSh0LWUpO3JldHVybiBuLnNldChBLnN1YmFycmF5KGUsdCkpLG59LHk9ZnVuY3Rpb24oQSxlLHQpe3ZhciBuPUEubGVuZ3RoO2lmKCFufHx0JiYhdC5sJiZuPDUpcmV0dXJuIGV8fG5ldyByKDApO3ZhciBpPSFlfHx0LG89IXR8fHQuaTt0fHwodD17fSksZXx8KGU9bmV3IHIoMypuKSk7dmFyIHM9ZnVuY3Rpb24oQSl7dmFyIHQ9ZS5sZW5ndGg7aWYoQT50KXt2YXIgbj1uZXcgcihNYXRoLm1heCgyKnQsQSkpO24uc2V0KGUpLGU9bn19LGc9dC5mfHwwLEU9dC5wfHwwLHU9dC5ifHwwLGw9dC5sLHc9dC5kLEM9dC5tLEk9dC5uLGQ9OCpuO2Rve2lmKCFsKXt0LmY9Zz1ZKEEsRSwxKTt2YXIgcD1ZKEEsRSsxLDMpO2lmKEUrPTMsIXApe3ZhciB5PUFbKEo9TihFKSs0KS00XXxBW0otM108PDgsVD1KK3k7aWYoVD5uKXtpZihvKXRocm93InVuZXhwZWN0ZWQgRU9GIjticmVha31pJiZzKHUreSksZS5zZXQoQS5zdWJhcnJheShKLFQpLHUpLHQuYj11Kz15LHQucD1FPTgqVDtjb250aW51ZX1pZigxPT1wKWw9bSx3PUYsQz05LEk9NTtlbHNle2lmKDIhPXApdGhyb3ciaW52YWxpZCBibG9jayB0eXBlIjt2YXIgeD1ZKEEsRSwzMSkrMjU3LFI9WShBLEUrMTAsMTUpKzQsRz14K1koQSxFKzUsMzEpKzE7RSs9MTQ7Zm9yKHZhciBTPW5ldyByKEcpLGI9bmV3IHIoMTkpLEg9MDtIPFI7KytIKWJbY1tIXV09WShBLEUrMypILDcpO0UrPTMqUjt2YXIgdj1EKGIpLGs9KDE8PHYpLTEsaj1NKGIsdiwxKTtmb3IoSD0wO0g8Rzspe3ZhciBKLHo9altZKEEsRSxrKV07aWYoRSs9MTUmeiwoSj16Pj4+NCk8MTYpU1tIKytdPUo7ZWxzZXt2YXIgTD0wLFA9MDtmb3IoMTY9PUo/KFA9MytZKEEsRSwzKSxFKz0yLEw9U1tILTFdKToxNz09Sj8oUD0zK1koQSxFLDcpLEUrPTMpOjE4PT1KJiYoUD0xMStZKEEsRSwxMjcpLEUrPTcpO1AtLTspU1tIKytdPUx9fXZhciBPPVMuc3ViYXJyYXkoMCx4KSxWPVMuc3ViYXJyYXkoeCk7Qz1EKE8pLEk9RChWKSxsPU0oTyxDLDEpLHc9TShWLEksMSl9aWYoRT5kKXtpZihvKXRocm93InVuZXhwZWN0ZWQgRU9GIjticmVha319aSYmcyh1KzEzMTA3Mik7Zm9yKHZhciBXPSgxPDxDKS0xLEs9KDE8PEkpLTEsWD1FOztYPUUpe3ZhciBaPShMPWxbZihBLEUpJlddKT4+PjQ7aWYoKEUrPTE1JkwpPmQpe2lmKG8pdGhyb3cidW5leHBlY3RlZCBFT0YiO2JyZWFrfWlmKCFMKXRocm93ImludmFsaWQgbGVuZ3RoL2xpdGVyYWwiO2lmKFo8MjU2KWVbdSsrXT1aO2Vsc2V7aWYoMjU2PT1aKXtYPUUsbD1udWxsO2JyZWFrfXZhciBfPVotMjU0O2lmKFo+MjY0KXt2YXIgcT1hW0g9Wi0yNTddO189WShBLEUsKDE8PHEpLTEpK1FbSF0sRSs9cX12YXIgJD13W2YoQSxFKSZLXSxBQT0kPj4+NDtpZighJCl0aHJvdyJpbnZhbGlkIGRpc3RhbmNlIjtFKz0xNSYkO1Y9aFtBQV07aWYoQUE+Myl7cT1CW0FBXTtWKz1mKEEsRSkmKDE8PHEpLTEsRSs9cX1pZihFPmQpe2lmKG8pdGhyb3cidW5leHBlY3RlZCBFT0YiO2JyZWFrfWkmJnModSsxMzEwNzIpO2Zvcih2YXIgZUE9dStfO3U8ZUE7dSs9NCllW3VdPWVbdS1WXSxlW3UrMV09ZVt1KzEtVl0sZVt1KzJdPWVbdSsyLVZdLGVbdSszXT1lW3UrMy1WXTt1PWVBfX10Lmw9bCx0LnA9WCx0LmI9dSxsJiYoZz0xLHQubT1DLHQuZD13LHQubj1JKX13aGlsZSghZyk7cmV0dXJuIHU9PWUubGVuZ3RoP2U6VShlLDAsdSl9LFQ9bmV3IHIoMCkseD1mdW5jdGlvbihBKXtpZig4IT0oMTUmQVswXSl8fEFbMF0+Pj40Pjd8fChBWzBdPDw4fEFbMV0pJTMxKXRocm93ImludmFsaWQgemxpYiBkYXRhIjtpZigzMiZBWzFdKXRocm93ImludmFsaWQgemxpYiBkYXRhOiBwcmVzZXQgZGljdGlvbmFyaWVzIG5vdCBzdXBwb3J0ZWQifTtmdW5jdGlvbiBSKEEsZSl7cmV0dXJuIHkoKHgoQSksQS5zdWJhcnJheSgyLC00KSksZSl9dmFyIEc9InVuZGVmaW5lZCIhPXR5cGVvZiBUZXh0RGVjb2RlciYmbmV3IFRleHREZWNvZGVyO3RyeXtHLmRlY29kZShULHtzdHJlYW06ITB9KSwxfWNhdGNoKEEpe31mdW5jdGlvbiBTKEEsZSx0KXtjb25zdCBuPXQubGVuZ3RoLUEtMTtpZihlPj10W25dKXJldHVybiBuLTE7aWYoZTw9dFtBXSlyZXR1cm4gQTtsZXQgaT1BLHI9bixvPU1hdGguZmxvb3IoKGkrcikvMik7Zm9yKDtlPHRbb118fGU+PXRbbysxXTspZTx0W29dP3I9bzppPW8sbz1NYXRoLmZsb29yKChpK3IpLzIpO3JldHVybiBvfWZ1bmN0aW9uIGIoQSxlLHQsbil7Y29uc3QgaT1bXSxyPVtdLG89W107aVswXT0xO2ZvcihsZXQgcz0xO3M8PXQ7KytzKXtyW3NdPWUtbltBKzEtc10sb1tzXT1uW0Erc10tZTtsZXQgdD0wO2ZvcihsZXQgQT0wO0E8czsrK0Epe2NvbnN0IGU9b1tBKzFdLG49cltzLUFdLGE9aVtBXS8oZStuKTtpW0FdPXQrZSphLHQ9biphfWlbc109dH1yZXR1cm4gaX1mdW5jdGlvbiBIKEEsZSl7bGV0IHQ9MTtmb3IobGV0IGU9MjtlPD1BOysrZSl0Kj1lO2xldCBuPTE7Zm9yKGxldCBBPTI7QTw9ZTsrK0Epbio9QTtmb3IobGV0IHQ9Mjt0PD1BLWU7Kyt0KW4qPXQ7cmV0dXJuIHQvbn1mdW5jdGlvbiB2KEEsZSx0LGkscil7cmV0dXJuIGZ1bmN0aW9uKEEpe2NvbnN0IGU9QS5sZW5ndGgsdD1bXSxpPVtdO2ZvcihsZXQgcj0wO3I8ZTsrK3Ipe2NvbnN0IGU9QVtyXTt0W3JdPW5ldyBuLlZlY3RvcjMoZS54LGUueSxlLnopLGlbcl09ZS53fWNvbnN0IHI9W107Zm9yKGxldCBBPTA7QTxlOysrQSl7Y29uc3QgZT10W0FdLmNsb25lKCk7Zm9yKGxldCB0PTE7dDw9QTsrK3QpZS5zdWIocltBLXRdLmNsb25lKCkubXVsdGlwbHlTY2FsYXIoSChBLHQpKmlbdF0pKTtyW0FdPWUuZGl2aWRlU2NhbGFyKGlbMF0pfXJldHVybiByfShmdW5jdGlvbihBLGUsdCxpLHIpe2NvbnN0IG89cjxBP3I6QSxzPVtdLGE9UyhBLGksZSksQj1mdW5jdGlvbihBLGUsdCxuLGkpe2NvbnN0IHI9W107Zm9yKGxldCBBPTA7QTw9dDsrK0EpcltBXT0wO2NvbnN0IG89W107Zm9yKGxldCBBPTA7QTw9bjsrK0Epb1tBXT1yLnNsaWNlKDApO2NvbnN0IHM9W107Zm9yKGxldCBBPTA7QTw9dDsrK0Epc1tBXT1yLnNsaWNlKDApO3NbMF1bMF09MTtjb25zdCBhPXIuc2xpY2UoMCksQj1yLnNsaWNlKDApO2ZvcihsZXQgbj0xO248PXQ7KytuKXthW25dPWUtaVtBKzEtbl0sQltuXT1pW0Erbl0tZTtsZXQgdD0wO2ZvcihsZXQgQT0wO0E8bjsrK0Epe2NvbnN0IGU9QltBKzFdLGk9YVtuLUFdO3Nbbl1bQV09ZStpO2NvbnN0IHI9c1tBXVtuLTFdL3Nbbl1bQV07c1tBXVtuXT10K2Uqcix0PWkqcn1zW25dW25dPXR9Zm9yKGxldCBBPTA7QTw9dDsrK0Epb1swXVtBXT1zW0FdW3RdO2ZvcihsZXQgQT0wO0E8PXQ7KytBKXtsZXQgZT0wLGk9MTtjb25zdCBhPVtdO2ZvcihsZXQgQT0wO0E8PXQ7KytBKWFbQV09ci5zbGljZSgwKTthWzBdWzBdPTE7Zm9yKGxldCByPTE7cjw9bjsrK3Ipe2xldCBuPTA7Y29uc3QgQj1BLXIsYz10LXI7QT49ciYmKGFbaV1bMF09YVtlXVswXS9zW2MrMV1bQl0sbj1hW2ldWzBdKnNbQl1bY10pO2NvbnN0IGc9QS0xPD1jP3ItMTp0LUE7Zm9yKGxldCBBPUI+PS0xPzE6LUI7QTw9ZzsrK0EpYVtpXVtBXT0oYVtlXVtBXS1hW2VdW0EtMV0pL3NbYysxXVtCK0FdLG4rPWFbaV1bQV0qc1tCK0FdW2NdO0E8PWMmJihhW2ldW3JdPS1hW2VdW3ItMV0vc1tjKzFdW0FdLG4rPWFbaV1bcl0qc1tBXVtjXSksb1tyXVtBXT1uO2NvbnN0IEU9ZTtlPWksaT1FfX1sZXQgYz10O2ZvcihsZXQgQT0xO0E8PW47KytBKXtmb3IobGV0IGU9MDtlPD10OysrZSlvW0FdW2VdKj1jO2MqPXQtQX1yZXR1cm4gb30oYSxpLEEsbyxlKSxjPVtdO2ZvcihsZXQgQT0wO0E8dC5sZW5ndGg7KytBKXtjb25zdCBlPXRbQV0uY2xvbmUoKSxuPWUudztlLngqPW4sZS55Kj1uLGUueio9bixjW0FdPWV9Zm9yKGxldCBlPTA7ZTw9bzsrK2Upe2NvbnN0IHQ9Y1thLUFdLmNsb25lKCkubXVsdGlwbHlTY2FsYXIoQltlXVswXSk7Zm9yKGxldCBuPTE7bjw9QTsrK24pdC5hZGQoY1thLUErbl0uY2xvbmUoKS5tdWx0aXBseVNjYWxhcihCW2VdW25dKSk7c1tlXT10fWZvcihsZXQgQT1vKzE7QTw9cisxOysrQSlzW0FdPW5ldyBuLlZlY3RvcjQoMCwwLDApO3JldHVybiBzfShBLGUsdCxpLHIpKX1jbGFzcyBrIGV4dGVuZHMgbi5DdXJ2ZXtjb25zdHJ1Y3RvcihBLGUsdCxpLHIpe3N1cGVyKCksdGhpcy5kZWdyZWU9QSx0aGlzLmtub3RzPWUsdGhpcy5jb250cm9sUG9pbnRzPVtdLHRoaXMuc3RhcnRLbm90PWl8fDAsdGhpcy5lbmRLbm90PXJ8fHRoaXMua25vdHMubGVuZ3RoLTE7Zm9yKGxldCBBPTA7QTx0Lmxlbmd0aDsrK0Epe2NvbnN0IGU9dFtBXTt0aGlzLmNvbnRyb2xQb2ludHNbQV09bmV3IG4uVmVjdG9yNChlLngsZS55LGUueixlLncpfX1nZXRQb2ludChBKXtjb25zdCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgbi5WZWN0b3IzLHQ9dGhpcy5rbm90c1t0aGlzLnN0YXJ0S25vdF0rQSoodGhpcy5rbm90c1t0aGlzLmVuZEtub3RdLXRoaXMua25vdHNbdGhpcy5zdGFydEtub3RdKSxpPWZ1bmN0aW9uKEEsZSx0LGkpe2NvbnN0IHI9UyhBLGksZSksbz1iKHIsaSxBLGUpLHM9bmV3IG4uVmVjdG9yNCgwLDAsMCwwKTtmb3IobGV0IGU9MDtlPD1BOysrZSl7Y29uc3Qgbj10W3ItQStlXSxpPW9bZV0sYT1uLncqaTtzLngrPW4ueCphLHMueSs9bi55KmEscy56Kz1uLnoqYSxzLncrPW4udyppfXJldHVybiBzfSh0aGlzLmRlZ3JlZSx0aGlzLmtub3RzLHRoaXMuY29udHJvbFBvaW50cyx0KTtyZXR1cm4gMSE9PWkudyYmaS5kaXZpZGVTY2FsYXIoaS53KSxlLnNldChpLngsaS55LGkueil9Z2V0VGFuZ2VudChBKXtjb25zdCBlPWFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpuZXcgbi5WZWN0b3IzLHQ9dGhpcy5rbm90c1swXStBKih0aGlzLmtub3RzW3RoaXMua25vdHMubGVuZ3RoLTFdLXRoaXMua25vdHNbMF0pLGk9dih0aGlzLmRlZ3JlZSx0aGlzLmtub3RzLHRoaXMuY29udHJvbFBvaW50cyx0LDEpO3JldHVybiBlLmNvcHkoaVsxXSkubm9ybWFsaXplKCksZX19bGV0IGosSix6O2NsYXNzIEwgZXh0ZW5kcyBuLkxvYWRlcntjb25zdHJ1Y3RvcihBKXtzdXBlcihBKX1sb2FkKEEsZSx0LGkpe2NvbnN0IHI9dGhpcyxvPSIiPT09ci5wYXRoP24uTG9hZGVyVXRpbHMuZXh0cmFjdFVybEJhc2UoQSk6ci5wYXRoLHM9bmV3IG4uRmlsZUxvYWRlcih0aGlzLm1hbmFnZXIpO3Muc2V0UGF0aChyLnBhdGgpLHMuc2V0UmVzcG9uc2VUeXBlKCJhcnJheWJ1ZmZlciIpLHMuc2V0UmVxdWVzdEhlYWRlcihyLnJlcXVlc3RIZWFkZXIpLHMuc2V0V2l0aENyZWRlbnRpYWxzKHIud2l0aENyZWRlbnRpYWxzKSxzLmxvYWQoQSwoZnVuY3Rpb24odCl7dHJ5e2Uoci5wYXJzZSh0LG8pKX1jYXRjaChlKXtpP2koZSk6Y29uc29sZS5lcnJvcihlKSxyLm1hbmFnZXIuaXRlbUVycm9yKEEpfX0pLHQsaSl9cGFyc2UoQSxlKXtpZihmdW5jdGlvbihBKXtjb25zdCBlPSJLYXlkYXJhIEZCWCBCaW5hcnkgIFwwIjtyZXR1cm4gQS5ieXRlTGVuZ3RoPj1lLmxlbmd0aCYmZT09PW9BKEEsMCxlLmxlbmd0aCl9KEEpKWo9KG5ldyBLKS5wYXJzZShBKTtlbHNle2NvbnN0IGU9b0EoQSk7aWYoIWZ1bmN0aW9uKEEpe2NvbnN0IGU9WyJLIiwiYSIsInkiLCJkIiwiYSIsInIiLCJhIiwiXFwiLCJGIiwiQiIsIlgiLCJcXCIsIkIiLCJpIiwibiIsImEiLCJyIiwieSIsIlxcIiwiXFwiXTtsZXQgdD0wO2Z1bmN0aW9uIG4oZSl7Y29uc3Qgbj1BW2UtMV07cmV0dXJuIEE9QS5zbGljZSh0K2UpLHQrKyxufWZvcihsZXQgQT0wO0E8ZS5sZW5ndGg7KytBKXtpZihuKDEpPT09ZVtBXSlyZXR1cm4hMX1yZXR1cm4hMH0oZSkpdGhyb3cgbmV3IEVycm9yKCJUSFJFRS5GQlhMb2FkZXI6IFVua25vd24gZm9ybWF0LiIpO2lmKF8oZSk8N2UzKXRocm93IG5ldyBFcnJvcigiVEhSRUUuRkJYTG9hZGVyOiBGQlggdmVyc2lvbiBub3Qgc3VwcG9ydGVkLCBGaWxlVmVyc2lvbjogIitfKGUpKTtqPShuZXcgVykucGFyc2UoZSl9Y29uc3QgdD1uZXcgbi5UZXh0dXJlTG9hZGVyKHRoaXMubWFuYWdlcikuc2V0UGF0aCh0aGlzLnJlc291cmNlUGF0aHx8ZSkuc2V0Q3Jvc3NPcmlnaW4odGhpcy5jcm9zc09yaWdpbik7cmV0dXJuIG5ldyBQKHQsdGhpcy5tYW5hZ2VyKS5wYXJzZShqKX19Y2xhc3MgUHtjb25zdHJ1Y3RvcihBLGUpe3RoaXMudGV4dHVyZUxvYWRlcj1BLHRoaXMubWFuYWdlcj1lfXBhcnNlKCl7Sj10aGlzLnBhcnNlQ29ubmVjdGlvbnMoKTtjb25zdCBBPXRoaXMucGFyc2VJbWFnZXMoKSxlPXRoaXMucGFyc2VUZXh0dXJlcyhBKSx0PXRoaXMucGFyc2VNYXRlcmlhbHMoZSksbj10aGlzLnBhcnNlRGVmb3JtZXJzKCksaT0obmV3IE8pLnBhcnNlKG4pO3JldHVybiB0aGlzLnBhcnNlU2NlbmUobixpLHQpLHp9cGFyc2VDb25uZWN0aW9ucygpe2NvbnN0IEE9bmV3IE1hcDtpZigiQ29ubmVjdGlvbnMiaW4gail7ai5Db25uZWN0aW9ucy5jb25uZWN0aW9ucy5mb3JFYWNoKChmdW5jdGlvbihlKXtjb25zdCB0PWVbMF0sbj1lWzFdLGk9ZVsyXTtBLmhhcyh0KXx8QS5zZXQodCx7cGFyZW50czpbXSxjaGlsZHJlbjpbXX0pO2NvbnN0IHI9e0lEOm4scmVsYXRpb25zaGlwOml9O0EuZ2V0KHQpLnBhcmVudHMucHVzaChyKSxBLmhhcyhuKXx8QS5zZXQobix7cGFyZW50czpbXSxjaGlsZHJlbjpbXX0pO2NvbnN0IG89e0lEOnQscmVsYXRpb25zaGlwOml9O0EuZ2V0KG4pLmNoaWxkcmVuLnB1c2gobyl9KSl9cmV0dXJuIEF9cGFyc2VJbWFnZXMoKXtjb25zdCBBPXt9LGU9e307aWYoIlZpZGVvImluIGouT2JqZWN0cyl7Y29uc3QgdD1qLk9iamVjdHMuVmlkZW87Zm9yKGNvbnN0IG4gaW4gdCl7Y29uc3QgaT10W25dO2lmKEFbcGFyc2VJbnQobildPWkuUmVsYXRpdmVGaWxlbmFtZXx8aS5GaWxlbmFtZSwiQ29udGVudCJpbiBpKXtjb25zdCBBPWkuQ29udGVudCBpbnN0YW5jZW9mIEFycmF5QnVmZmVyJiZpLkNvbnRlbnQuYnl0ZUxlbmd0aD4wLHI9InN0cmluZyI9PXR5cGVvZiBpLkNvbnRlbnQmJiIiIT09aS5Db250ZW50O2lmKEF8fHIpe2NvbnN0IEE9dGhpcy5wYXJzZUltYWdlKHRbbl0pO2VbaS5SZWxhdGl2ZUZpbGVuYW1lfHxpLkZpbGVuYW1lXT1BfX19fWZvcihjb25zdCB0IGluIEEpe2NvbnN0IG49QVt0XTt2b2lkIDAhPT1lW25dP0FbdF09ZVtuXTpBW3RdPUFbdF0uc3BsaXQoIlxcIikucG9wKCl9cmV0dXJuIEF9cGFyc2VJbWFnZShBKXtjb25zdCBlPUEuQ29udGVudCx0PUEuUmVsYXRpdmVGaWxlbmFtZXx8QS5GaWxlbmFtZSxuPXQuc2xpY2UodC5sYXN0SW5kZXhPZigiLiIpKzEpLnRvTG93ZXJDYXNlKCk7bGV0IGk7c3dpdGNoKG4pe2Nhc2UiYm1wIjppPSJpbWFnZS9ibXAiO2JyZWFrO2Nhc2UianBnIjpjYXNlImpwZWciOmk9ImltYWdlL2pwZWciO2JyZWFrO2Nhc2UicG5nIjppPSJpbWFnZS9wbmciO2JyZWFrO2Nhc2UidGlmIjppPSJpbWFnZS90aWZmIjticmVhaztjYXNlInRnYSI6bnVsbD09PXRoaXMubWFuYWdlci5nZXRIYW5kbGVyKCIudGdhIikmJmNvbnNvbGUud2FybigiRkJYTG9hZGVyOiBUR0EgbG9hZGVyIG5vdCBmb3VuZCwgc2tpcHBpbmcgIix0KSxpPSJpbWFnZS90Z2EiO2JyZWFrO2RlZmF1bHQ6cmV0dXJuIHZvaWQgY29uc29sZS53YXJuKCdGQlhMb2FkZXI6IEltYWdlIHR5cGUgIicrbisnIiBpcyBub3Qgc3VwcG9ydGVkLicpfWlmKCJzdHJpbmciPT10eXBlb2YgZSlyZXR1cm4iZGF0YToiK2krIjtiYXNlNjQsIitlO3tjb25zdCBBPW5ldyBVaW50OEFycmF5KGUpO3JldHVybiB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChuZXcgQmxvYihbQV0se3R5cGU6aX0pKX19cGFyc2VUZXh0dXJlcyhBKXtjb25zdCBlPW5ldyBNYXA7aWYoIlRleHR1cmUiaW4gai5PYmplY3RzKXtjb25zdCB0PWouT2JqZWN0cy5UZXh0dXJlO2Zvcihjb25zdCBuIGluIHQpe2NvbnN0IGk9dGhpcy5wYXJzZVRleHR1cmUodFtuXSxBKTtlLnNldChwYXJzZUludChuKSxpKX19cmV0dXJuIGV9cGFyc2VUZXh0dXJlKEEsZSl7Y29uc3QgdD10aGlzLmxvYWRUZXh0dXJlKEEsZSk7dC5JRD1BLmlkLHQubmFtZT1BLmF0dHJOYW1lO2NvbnN0IGk9QS5XcmFwTW9kZVUscj1BLldyYXBNb2RlVixvPXZvaWQgMCE9PWk/aS52YWx1ZTowLHM9dm9pZCAwIT09cj9yLnZhbHVlOjA7aWYodC53cmFwUz0wPT09bz9uLlJlcGVhdFdyYXBwaW5nOm4uQ2xhbXBUb0VkZ2VXcmFwcGluZyx0LndyYXBUPTA9PT1zP24uUmVwZWF0V3JhcHBpbmc6bi5DbGFtcFRvRWRnZVdyYXBwaW5nLCJTY2FsaW5nImluIEEpe2NvbnN0IGU9QS5TY2FsaW5nLnZhbHVlO3QucmVwZWF0Lng9ZVswXSx0LnJlcGVhdC55PWVbMV19aWYoIlRyYW5zbGF0aW9uImluIEEpe2NvbnN0IGU9QS5UcmFuc2xhdGlvbi52YWx1ZTt0Lm9mZnNldC54PWVbMF0sdC5vZmZzZXQueT1lWzFdfXJldHVybiB0fWxvYWRUZXh0dXJlKEEsZSl7bGV0IHQ7Y29uc3QgaT10aGlzLnRleHR1cmVMb2FkZXIucGF0aCxyPUouZ2V0KEEuaWQpLmNoaWxkcmVuO2xldCBvO3ZvaWQgMCE9PXImJnIubGVuZ3RoPjAmJnZvaWQgMCE9PWVbclswXS5JRF0mJih0PWVbclswXS5JRF0sMCE9PXQuaW5kZXhPZigiYmxvYjoiKSYmMCE9PXQuaW5kZXhPZigiZGF0YToiKXx8dGhpcy50ZXh0dXJlTG9hZGVyLnNldFBhdGgodm9pZCAwKSk7Y29uc3Qgcz1BLkZpbGVOYW1lLnNsaWNlKC0zKS50b0xvd2VyQ2FzZSgpO2lmKCJ0Z2EiPT09cyl7Y29uc3QgZT10aGlzLm1hbmFnZXIuZ2V0SGFuZGxlcigiLnRnYSIpO251bGw9PT1lPyhjb25zb2xlLndhcm4oIkZCWExvYWRlcjogVEdBIGxvYWRlciBub3QgZm91bmQsIGNyZWF0aW5nIHBsYWNlaG9sZGVyIHRleHR1cmUgZm9yIixBLlJlbGF0aXZlRmlsZW5hbWUpLG89bmV3IG4uVGV4dHVyZSk6KGUuc2V0UGF0aCh0aGlzLnRleHR1cmVMb2FkZXIucGF0aCksbz1lLmxvYWQodCkpfWVsc2UicHNkIj09PXM/KGNvbnNvbGUud2FybigiRkJYTG9hZGVyOiBQU0QgdGV4dHVyZXMgYXJlIG5vdCBzdXBwb3J0ZWQsIGNyZWF0aW5nIHBsYWNlaG9sZGVyIHRleHR1cmUgZm9yIixBLlJlbGF0aXZlRmlsZW5hbWUpLG89bmV3IG4uVGV4dHVyZSk6bz10aGlzLnRleHR1cmVMb2FkZXIubG9hZCh0KTtyZXR1cm4gdGhpcy50ZXh0dXJlTG9hZGVyLnNldFBhdGgoaSksb31wYXJzZU1hdGVyaWFscyhBKXtjb25zdCBlPW5ldyBNYXA7aWYoIk1hdGVyaWFsImluIGouT2JqZWN0cyl7Y29uc3QgdD1qLk9iamVjdHMuTWF0ZXJpYWw7Zm9yKGNvbnN0IG4gaW4gdCl7Y29uc3QgaT10aGlzLnBhcnNlTWF0ZXJpYWwodFtuXSxBKTtudWxsIT09aSYmZS5zZXQocGFyc2VJbnQobiksaSl9fXJldHVybiBlfXBhcnNlTWF0ZXJpYWwoQSxlKXtjb25zdCB0PUEuaWQsaT1BLmF0dHJOYW1lO2xldCByPUEuU2hhZGluZ01vZGVsO2lmKCJvYmplY3QiPT10eXBlb2YgciYmKHI9ci52YWx1ZSksIUouaGFzKHQpKXJldHVybiBudWxsO2NvbnN0IG89dGhpcy5wYXJzZVBhcmFtZXRlcnMoQSxlLHQpO2xldCBzO3N3aXRjaChyLnRvTG93ZXJDYXNlKCkpe2Nhc2UicGhvbmciOnM9bmV3IG4uTWVzaFBob25nTWF0ZXJpYWw7YnJlYWs7Y2FzZSJsYW1iZXJ0IjpzPW5ldyBuLk1lc2hMYW1iZXJ0TWF0ZXJpYWw7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLndhcm4oJ1RIUkVFLkZCWExvYWRlcjogdW5rbm93biBtYXRlcmlhbCB0eXBlICIlcyIuIERlZmF1bHRpbmcgdG8gTWVzaFBob25nTWF0ZXJpYWwuJyxyKSxzPW5ldyBuLk1lc2hQaG9uZ01hdGVyaWFsfXJldHVybiBzLnNldFZhbHVlcyhvKSxzLm5hbWU9aSxzfXBhcnNlUGFyYW1ldGVycyhBLGUsdCl7Y29uc3QgaT17fTtBLkJ1bXBGYWN0b3ImJihpLmJ1bXBTY2FsZT1BLkJ1bXBGYWN0b3IudmFsdWUpLEEuRGlmZnVzZT9pLmNvbG9yPShuZXcgbi5Db2xvcikuZnJvbUFycmF5KEEuRGlmZnVzZS52YWx1ZSkuY29udmVydFNSR0JUb0xpbmVhcigpOiFBLkRpZmZ1c2VDb2xvcnx8IkNvbG9yIiE9PUEuRGlmZnVzZUNvbG9yLnR5cGUmJiJDb2xvclJHQiIhPT1BLkRpZmZ1c2VDb2xvci50eXBlfHwoaS5jb2xvcj0obmV3IG4uQ29sb3IpLmZyb21BcnJheShBLkRpZmZ1c2VDb2xvci52YWx1ZSkuY29udmVydFNSR0JUb0xpbmVhcigpKSxBLkRpc3BsYWNlbWVudEZhY3RvciYmKGkuZGlzcGxhY2VtZW50U2NhbGU9QS5EaXNwbGFjZW1lbnRGYWN0b3IudmFsdWUpLEEuRW1pc3NpdmU/aS5lbWlzc2l2ZT0obmV3IG4uQ29sb3IpLmZyb21BcnJheShBLkVtaXNzaXZlLnZhbHVlKS5jb252ZXJ0U1JHQlRvTGluZWFyKCk6IUEuRW1pc3NpdmVDb2xvcnx8IkNvbG9yIiE9PUEuRW1pc3NpdmVDb2xvci50eXBlJiYiQ29sb3JSR0IiIT09QS5FbWlzc2l2ZUNvbG9yLnR5cGV8fChpLmVtaXNzaXZlPShuZXcgbi5Db2xvcikuZnJvbUFycmF5KEEuRW1pc3NpdmVDb2xvci52YWx1ZSkuY29udmVydFNSR0JUb0xpbmVhcigpKSxBLkVtaXNzaXZlRmFjdG9yJiYoaS5lbWlzc2l2ZUludGVuc2l0eT1wYXJzZUZsb2F0KEEuRW1pc3NpdmVGYWN0b3IudmFsdWUpKSxBLk9wYWNpdHkmJihpLm9wYWNpdHk9cGFyc2VGbG9hdChBLk9wYWNpdHkudmFsdWUpKSxpLm9wYWNpdHk8MSYmKGkudHJhbnNwYXJlbnQ9ITApLEEuUmVmbGVjdGlvbkZhY3RvciYmKGkucmVmbGVjdGl2aXR5PUEuUmVmbGVjdGlvbkZhY3Rvci52YWx1ZSksQS5TaGluaW5lc3MmJihpLnNoaW5pbmVzcz1BLlNoaW5pbmVzcy52YWx1ZSksQS5TcGVjdWxhcj9pLnNwZWN1bGFyPShuZXcgbi5Db2xvcikuZnJvbUFycmF5KEEuU3BlY3VsYXIudmFsdWUpLmNvbnZlcnRTUkdCVG9MaW5lYXIoKTpBLlNwZWN1bGFyQ29sb3ImJiJDb2xvciI9PT1BLlNwZWN1bGFyQ29sb3IudHlwZSYmKGkuc3BlY3VsYXI9KG5ldyBuLkNvbG9yKS5mcm9tQXJyYXkoQS5TcGVjdWxhckNvbG9yLnZhbHVlKS5jb252ZXJ0U1JHQlRvTGluZWFyKCkpO2NvbnN0IHI9dGhpcztyZXR1cm4gSi5nZXQodCkuY2hpbGRyZW4uZm9yRWFjaCgoZnVuY3Rpb24oQSl7Y29uc3QgdD1BLnJlbGF0aW9uc2hpcDtzd2l0Y2godCl7Y2FzZSJCdW1wIjppLmJ1bXBNYXA9ci5nZXRUZXh0dXJlKGUsQS5JRCk7YnJlYWs7Y2FzZSJNYXlhfFRFWF9hb19tYXAiOmkuYW9NYXA9ci5nZXRUZXh0dXJlKGUsQS5JRCk7YnJlYWs7Y2FzZSJEaWZmdXNlQ29sb3IiOmNhc2UiTWF5YXxURVhfY29sb3JfbWFwIjppLm1hcD1yLmdldFRleHR1cmUoZSxBLklEKSx2b2lkIDAhPT1pLm1hcCYmKGkubWFwLmNvbG9yU3BhY2U9bi5TUkdCQ29sb3JTcGFjZSk7YnJlYWs7Y2FzZSJEaXNwbGFjZW1lbnRDb2xvciI6aS5kaXNwbGFjZW1lbnRNYXA9ci5nZXRUZXh0dXJlKGUsQS5JRCk7YnJlYWs7Y2FzZSJFbWlzc2l2ZUNvbG9yIjppLmVtaXNzaXZlTWFwPXIuZ2V0VGV4dHVyZShlLEEuSUQpLHZvaWQgMCE9PWkuZW1pc3NpdmVNYXAmJihpLmVtaXNzaXZlTWFwLmNvbG9yU3BhY2U9bi5TUkdCQ29sb3JTcGFjZSk7YnJlYWs7Y2FzZSJOb3JtYWxNYXAiOmNhc2UiTWF5YXxURVhfbm9ybWFsX21hcCI6aS5ub3JtYWxNYXA9ci5nZXRUZXh0dXJlKGUsQS5JRCk7YnJlYWs7Y2FzZSJSZWZsZWN0aW9uQ29sb3IiOmkuZW52TWFwPXIuZ2V0VGV4dHVyZShlLEEuSUQpLHZvaWQgMCE9PWkuZW52TWFwJiYoaS5lbnZNYXAubWFwcGluZz1uLkVxdWlyZWN0YW5ndWxhclJlZmxlY3Rpb25NYXBwaW5nLGkuZW52TWFwLmNvbG9yU3BhY2U9bi5TUkdCQ29sb3JTcGFjZSk7YnJlYWs7Y2FzZSJTcGVjdWxhckNvbG9yIjppLnNwZWN1bGFyTWFwPXIuZ2V0VGV4dHVyZShlLEEuSUQpLHZvaWQgMCE9PWkuc3BlY3VsYXJNYXAmJihpLnNwZWN1bGFyTWFwLmNvbG9yU3BhY2U9bi5TUkdCQ29sb3JTcGFjZSk7YnJlYWs7Y2FzZSJUcmFuc3BhcmVudENvbG9yIjpjYXNlIlRyYW5zcGFyZW5jeUZhY3RvciI6aS5hbHBoYU1hcD1yLmdldFRleHR1cmUoZSxBLklEKSxpLnRyYW5zcGFyZW50PSEwO2JyZWFrO2Nhc2UiQW1iaWVudENvbG9yIjpjYXNlIlNoaW5pbmVzc0V4cG9uZW50IjpjYXNlIlNwZWN1bGFyRmFjdG9yIjpjYXNlIlZlY3RvckRpc3BsYWNlbWVudENvbG9yIjpkZWZhdWx0OmNvbnNvbGUud2FybigiVEhSRUUuRkJYTG9hZGVyOiAlcyBtYXAgaXMgbm90IHN1cHBvcnRlZCBpbiB0aHJlZS5qcywgc2tpcHBpbmcgdGV4dHVyZS4iLHQpfX0pKSxpfWdldFRleHR1cmUoQSxlKXtyZXR1cm4iTGF5ZXJlZFRleHR1cmUiaW4gai5PYmplY3RzJiZlIGluIGouT2JqZWN0cy5MYXllcmVkVGV4dHVyZSYmKGNvbnNvbGUud2FybigiVEhSRUUuRkJYTG9hZGVyOiBsYXllcmVkIHRleHR1cmVzIGFyZSBub3Qgc3VwcG9ydGVkIGluIHRocmVlLmpzLiBEaXNjYXJkaW5nIGFsbCBidXQgZmlyc3QgbGF5ZXIuIiksZT1KLmdldChlKS5jaGlsZHJlblswXS5JRCksQS5nZXQoZSl9cGFyc2VEZWZvcm1lcnMoKXtjb25zdCBBPXt9LGU9e307aWYoIkRlZm9ybWVyImluIGouT2JqZWN0cyl7Y29uc3QgdD1qLk9iamVjdHMuRGVmb3JtZXI7Zm9yKGNvbnN0IG4gaW4gdCl7Y29uc3QgaT10W25dLHI9Si5nZXQocGFyc2VJbnQobikpO2lmKCJTa2luIj09PWkuYXR0clR5cGUpe2NvbnN0IGU9dGhpcy5wYXJzZVNrZWxldG9uKHIsdCk7ZS5JRD1uLHIucGFyZW50cy5sZW5ndGg+MSYmY29uc29sZS53YXJuKCJUSFJFRS5GQlhMb2FkZXI6IHNrZWxldG9uIGF0dGFjaGVkIHRvIG1vcmUgdGhhbiBvbmUgZ2VvbWV0cnkgaXMgbm90IHN1cHBvcnRlZC4iKSxlLmdlb21ldHJ5SUQ9ci5wYXJlbnRzWzBdLklELEFbbl09ZX1lbHNlIGlmKCJCbGVuZFNoYXBlIj09PWkuYXR0clR5cGUpe2NvbnN0IEE9e2lkOm59O0EucmF3VGFyZ2V0cz10aGlzLnBhcnNlTW9ycGhUYXJnZXRzKHIsdCksQS5pZD1uLHIucGFyZW50cy5sZW5ndGg+MSYmY29uc29sZS53YXJuKCJUSFJFRS5GQlhMb2FkZXI6IG1vcnBoIHRhcmdldCBhdHRhY2hlZCB0byBtb3JlIHRoYW4gb25lIGdlb21ldHJ5IGlzIG5vdCBzdXBwb3J0ZWQuIiksZVtuXT1BfX19cmV0dXJue3NrZWxldG9uczpBLG1vcnBoVGFyZ2V0czplfX1wYXJzZVNrZWxldG9uKEEsZSl7Y29uc3QgdD1bXTtyZXR1cm4gQS5jaGlsZHJlbi5mb3JFYWNoKChmdW5jdGlvbihBKXtjb25zdCBpPWVbQS5JRF07aWYoIkNsdXN0ZXIiIT09aS5hdHRyVHlwZSlyZXR1cm47Y29uc3Qgcj17SUQ6QS5JRCxpbmRpY2VzOltdLHdlaWdodHM6W10sdHJhbnNmb3JtTGluazoobmV3IG4uTWF0cml4NCkuZnJvbUFycmF5KGkuVHJhbnNmb3JtTGluay5hKX07IkluZGV4ZXMiaW4gaSYmKHIuaW5kaWNlcz1pLkluZGV4ZXMuYSxyLndlaWdodHM9aS5XZWlnaHRzLmEpLHQucHVzaChyKX0pKSx7cmF3Qm9uZXM6dCxib25lczpbXX19cGFyc2VNb3JwaFRhcmdldHMoQSxlKXtjb25zdCB0PVtdO2ZvcihsZXQgbj0wO248QS5jaGlsZHJlbi5sZW5ndGg7bisrKXtjb25zdCBpPUEuY2hpbGRyZW5bbl0scj1lW2kuSURdLG89e25hbWU6ci5hdHRyTmFtZSxpbml0aWFsV2VpZ2h0OnIuRGVmb3JtUGVyY2VudCxpZDpyLmlkLGZ1bGxXZWlnaHRzOnIuRnVsbFdlaWdodHMuYX07aWYoIkJsZW5kU2hhcGVDaGFubmVsIiE9PXIuYXR0clR5cGUpcmV0dXJuO28uZ2VvSUQ9Si5nZXQocGFyc2VJbnQoaS5JRCkpLmNoaWxkcmVuLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIHZvaWQgMD09PUEucmVsYXRpb25zaGlwfSkpWzBdLklELHQucHVzaChvKX1yZXR1cm4gdH1wYXJzZVNjZW5lKEEsZSx0KXt6PW5ldyBuLkdyb3VwO2NvbnN0IGk9dGhpcy5wYXJzZU1vZGVscyhBLnNrZWxldG9ucyxlLHQpLHI9ai5PYmplY3RzLk1vZGVsLG89dGhpcztpLmZvckVhY2goKGZ1bmN0aW9uKEEpe2NvbnN0IGU9cltBLklEXTtvLnNldExvb2tBdFByb3BlcnRpZXMoQSxlKTtKLmdldChBLklEKS5wYXJlbnRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9aS5nZXQoZS5JRCk7dm9pZCAwIT09dCYmdC5hZGQoQSl9KSksbnVsbD09PUEucGFyZW50JiZ6LmFkZChBKX0pKSx0aGlzLmJpbmRTa2VsZXRvbihBLnNrZWxldG9ucyxlLGkpLHRoaXMuY3JlYXRlQW1iaWVudExpZ2h0KCksei50cmF2ZXJzZSgoZnVuY3Rpb24oQSl7aWYoQS51c2VyRGF0YS50cmFuc2Zvcm1EYXRhKXtBLnBhcmVudCYmKEEudXNlckRhdGEudHJhbnNmb3JtRGF0YS5wYXJlbnRNYXRyaXg9QS5wYXJlbnQubWF0cml4LEEudXNlckRhdGEudHJhbnNmb3JtRGF0YS5wYXJlbnRNYXRyaXhXb3JsZD1BLnBhcmVudC5tYXRyaXhXb3JsZCk7Y29uc3QgZT1uQShBLnVzZXJEYXRhLnRyYW5zZm9ybURhdGEpO0EuYXBwbHlNYXRyaXg0KGUpLEEudXBkYXRlV29ybGRNYXRyaXgoKX19KSk7Y29uc3Qgcz0obmV3IFYpLnBhcnNlKCk7MT09PXouY2hpbGRyZW4ubGVuZ3RoJiZ6LmNoaWxkcmVuWzBdLmlzR3JvdXAmJih6LmNoaWxkcmVuWzBdLmFuaW1hdGlvbnM9cyx6PXouY2hpbGRyZW5bMF0pLHouYW5pbWF0aW9ucz1zfXBhcnNlTW9kZWxzKEEsZSx0KXtjb25zdCBpPW5ldyBNYXAscj1qLk9iamVjdHMuTW9kZWw7Zm9yKGNvbnN0IG8gaW4gcil7Y29uc3Qgcz1wYXJzZUludChvKSxhPXJbb10sQj1KLmdldChzKTtsZXQgYz10aGlzLmJ1aWxkU2tlbGV0b24oQixBLHMsYS5hdHRyTmFtZSk7aWYoIWMpe3N3aXRjaChhLmF0dHJUeXBlKXtjYXNlIkNhbWVyYSI6Yz10aGlzLmNyZWF0ZUNhbWVyYShCKTticmVhaztjYXNlIkxpZ2h0IjpjPXRoaXMuY3JlYXRlTGlnaHQoQik7YnJlYWs7Y2FzZSJNZXNoIjpjPXRoaXMuY3JlYXRlTWVzaChCLGUsdCk7YnJlYWs7Y2FzZSJOdXJic0N1cnZlIjpjPXRoaXMuY3JlYXRlQ3VydmUoQixlKTticmVhaztjYXNlIkxpbWJOb2RlIjpjYXNlIlJvb3QiOmM9bmV3IG4uQm9uZTticmVhaztjYXNlIk51bGwiOmRlZmF1bHQ6Yz1uZXcgbi5Hcm91cH1jLm5hbWU9YS5hdHRyTmFtZT9uLlByb3BlcnR5QmluZGluZy5zYW5pdGl6ZU5vZGVOYW1lKGEuYXR0ck5hbWUpOiIiLGMuSUQ9c310aGlzLmdldFRyYW5zZm9ybURhdGEoYyxhKSxpLnNldChzLGMpfXJldHVybiBpfWJ1aWxkU2tlbGV0b24oQSxlLHQsaSl7bGV0IHI9bnVsbDtyZXR1cm4gQS5wYXJlbnRzLmZvckVhY2goKGZ1bmN0aW9uKEEpe2Zvcihjb25zdCBvIGluIGUpe2NvbnN0IHM9ZVtvXTtzLnJhd0JvbmVzLmZvckVhY2goKGZ1bmN0aW9uKGUsbyl7aWYoZS5JRD09PUEuSUQpe2NvbnN0IEE9cjtyPW5ldyBuLkJvbmUsci5tYXRyaXhXb3JsZC5jb3B5KGUudHJhbnNmb3JtTGluayksci5uYW1lPWk/bi5Qcm9wZXJ0eUJpbmRpbmcuc2FuaXRpemVOb2RlTmFtZShpKToiIixyLklEPXQscy5ib25lc1tvXT1yLG51bGwhPT1BJiZyLmFkZChBKX19KSl9fSkpLHJ9Y3JlYXRlQ2FtZXJhKEEpe2xldCBlLHQ7aWYoQS5jaGlsZHJlbi5mb3JFYWNoKChmdW5jdGlvbihBKXtjb25zdCBlPWouT2JqZWN0cy5Ob2RlQXR0cmlidXRlW0EuSURdO3ZvaWQgMCE9PWUmJih0PWUpfSkpLHZvaWQgMD09PXQpZT1uZXcgbi5PYmplY3QzRDtlbHNle2xldCBBPTA7dm9pZCAwIT09dC5DYW1lcmFQcm9qZWN0aW9uVHlwZSYmMT09PXQuQ2FtZXJhUHJvamVjdGlvblR5cGUudmFsdWUmJihBPTEpO2xldCBpPTE7dm9pZCAwIT09dC5OZWFyUGxhbmUmJihpPXQuTmVhclBsYW5lLnZhbHVlLzFlMyk7bGV0IHI9MWUzO3ZvaWQgMCE9PXQuRmFyUGxhbmUmJihyPXQuRmFyUGxhbmUudmFsdWUvMWUzKTtsZXQgbz13aW5kb3cuaW5uZXJXaWR0aCxzPXdpbmRvdy5pbm5lckhlaWdodDt2b2lkIDAhPT10LkFzcGVjdFdpZHRoJiZ2b2lkIDAhPT10LkFzcGVjdEhlaWdodCYmKG89dC5Bc3BlY3RXaWR0aC52YWx1ZSxzPXQuQXNwZWN0SGVpZ2h0LnZhbHVlKTtjb25zdCBhPW8vcztsZXQgQj00NTt2b2lkIDAhPT10LkZpZWxkT2ZWaWV3JiYoQj10LkZpZWxkT2ZWaWV3LnZhbHVlKTtjb25zdCBjPXQuRm9jYWxMZW5ndGg/dC5Gb2NhbExlbmd0aC52YWx1ZTpudWxsO3N3aXRjaChBKXtjYXNlIDA6ZT1uZXcgbi5QZXJzcGVjdGl2ZUNhbWVyYShCLGEsaSxyKSxudWxsIT09YyYmZS5zZXRGb2NhbExlbmd0aChjKTticmVhaztjYXNlIDE6ZT1uZXcgbi5PcnRob2dyYXBoaWNDYW1lcmEoLW8vMixvLzIscy8yLC1zLzIsaSxyKTticmVhaztkZWZhdWx0OmNvbnNvbGUud2FybigiVEhSRUUuRkJYTG9hZGVyOiBVbmtub3duIGNhbWVyYSB0eXBlICIrQSsiLiIpLGU9bmV3IG4uT2JqZWN0M0R9fXJldHVybiBlfWNyZWF0ZUxpZ2h0KEEpe2xldCBlLHQ7aWYoQS5jaGlsZHJlbi5mb3JFYWNoKChmdW5jdGlvbihBKXtjb25zdCBlPWouT2JqZWN0cy5Ob2RlQXR0cmlidXRlW0EuSURdO3ZvaWQgMCE9PWUmJih0PWUpfSkpLHZvaWQgMD09PXQpZT1uZXcgbi5PYmplY3QzRDtlbHNle2xldCBBO0E9dm9pZCAwPT09dC5MaWdodFR5cGU/MDp0LkxpZ2h0VHlwZS52YWx1ZTtsZXQgaT0xNjc3NzIxNTt2b2lkIDAhPT10LkNvbG9yJiYoaT0obmV3IG4uQ29sb3IpLmZyb21BcnJheSh0LkNvbG9yLnZhbHVlKS5jb252ZXJ0U1JHQlRvTGluZWFyKCkpO2xldCByPXZvaWQgMD09PXQuSW50ZW5zaXR5PzE6dC5JbnRlbnNpdHkudmFsdWUvMTAwO3ZvaWQgMCE9PXQuQ2FzdExpZ2h0T25PYmplY3QmJjA9PT10LkNhc3RMaWdodE9uT2JqZWN0LnZhbHVlJiYocj0wKTtsZXQgbz0wO3ZvaWQgMCE9PXQuRmFyQXR0ZW51YXRpb25FbmQmJihvPXZvaWQgMCE9PXQuRW5hYmxlRmFyQXR0ZW51YXRpb24mJjA9PT10LkVuYWJsZUZhckF0dGVudWF0aW9uLnZhbHVlPzA6dC5GYXJBdHRlbnVhdGlvbkVuZC52YWx1ZSk7Y29uc3Qgcz0xO3N3aXRjaChBKXtjYXNlIDA6ZT1uZXcgbi5Qb2ludExpZ2h0KGkscixvLHMpO2JyZWFrO2Nhc2UgMTplPW5ldyBuLkRpcmVjdGlvbmFsTGlnaHQoaSxyKTticmVhaztjYXNlIDI6bGV0IEE9TWF0aC5QSS8zO3ZvaWQgMCE9PXQuSW5uZXJBbmdsZSYmKEE9bi5NYXRoVXRpbHMuZGVnVG9SYWQodC5Jbm5lckFuZ2xlLnZhbHVlKSk7bGV0IGE9MDt2b2lkIDAhPT10Lk91dGVyQW5nbGUmJihhPW4uTWF0aFV0aWxzLmRlZ1RvUmFkKHQuT3V0ZXJBbmdsZS52YWx1ZSksYT1NYXRoLm1heChhLDEpKSxlPW5ldyBuLlNwb3RMaWdodChpLHIsbyxBLGEscyk7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLndhcm4oIlRIUkVFLkZCWExvYWRlcjogVW5rbm93biBsaWdodCB0eXBlICIrdC5MaWdodFR5cGUudmFsdWUrIiwgZGVmYXVsdGluZyB0byBhIFBvaW50TGlnaHQuIiksZT1uZXcgbi5Qb2ludExpZ2h0KGkscil9dm9pZCAwIT09dC5DYXN0U2hhZG93cyYmMT09PXQuQ2FzdFNoYWRvd3MudmFsdWUmJihlLmNhc3RTaGFkb3c9ITApfXJldHVybiBlfWNyZWF0ZU1lc2goQSxlLHQpe2xldCBpLHI9bnVsbCxvPW51bGw7Y29uc3Qgcz1bXTtyZXR1cm4gQS5jaGlsZHJlbi5mb3JFYWNoKChmdW5jdGlvbihBKXtlLmhhcyhBLklEKSYmKHI9ZS5nZXQoQS5JRCkpLHQuaGFzKEEuSUQpJiZzLnB1c2godC5nZXQoQS5JRCkpfSkpLHMubGVuZ3RoPjE/bz1zOnMubGVuZ3RoPjA/bz1zWzBdOihvPW5ldyBuLk1lc2hQaG9uZ01hdGVyaWFsKHtjb2xvcjoxMzQyMTc3Mn0pLHMucHVzaChvKSksImNvbG9yImluIHIuYXR0cmlidXRlcyYmcy5mb3JFYWNoKChmdW5jdGlvbihBKXtBLnZlcnRleENvbG9ycz0hMH0pKSxyLkZCWF9EZWZvcm1lcj8oaT1uZXcgbi5Ta2lubmVkTWVzaChyLG8pLGkubm9ybWFsaXplU2tpbldlaWdodHMoKSk6aT1uZXcgbi5NZXNoKHIsbyksaX1jcmVhdGVDdXJ2ZShBLGUpe2NvbnN0IHQ9QS5jaGlsZHJlbi5yZWR1Y2UoKGZ1bmN0aW9uKEEsdCl7cmV0dXJuIGUuaGFzKHQuSUQpJiYoQT1lLmdldCh0LklEKSksQX0pLG51bGwpLGk9bmV3IG4uTGluZUJhc2ljTWF0ZXJpYWwoe2NvbG9yOjMzNDI1OTEsbGluZXdpZHRoOjF9KTtyZXR1cm4gbmV3IG4uTGluZSh0LGkpfWdldFRyYW5zZm9ybURhdGEoQSxlKXtjb25zdCB0PXt9OyJJbmhlcml0VHlwZSJpbiBlJiYodC5pbmhlcml0VHlwZT1wYXJzZUludChlLkluaGVyaXRUeXBlLnZhbHVlKSksdC5ldWxlck9yZGVyPSJSb3RhdGlvbk9yZGVyImluIGU/aUEoZS5Sb3RhdGlvbk9yZGVyLnZhbHVlKToiWllYIiwiTGNsX1RyYW5zbGF0aW9uImluIGUmJih0LnRyYW5zbGF0aW9uPWUuTGNsX1RyYW5zbGF0aW9uLnZhbHVlKSwiUHJlUm90YXRpb24iaW4gZSYmKHQucHJlUm90YXRpb249ZS5QcmVSb3RhdGlvbi52YWx1ZSksIkxjbF9Sb3RhdGlvbiJpbiBlJiYodC5yb3RhdGlvbj1lLkxjbF9Sb3RhdGlvbi52YWx1ZSksIlBvc3RSb3RhdGlvbiJpbiBlJiYodC5wb3N0Um90YXRpb249ZS5Qb3N0Um90YXRpb24udmFsdWUpLCJMY2xfU2NhbGluZyJpbiBlJiYodC5zY2FsZT1lLkxjbF9TY2FsaW5nLnZhbHVlKSwiU2NhbGluZ09mZnNldCJpbiBlJiYodC5zY2FsaW5nT2Zmc2V0PWUuU2NhbGluZ09mZnNldC52YWx1ZSksIlNjYWxpbmdQaXZvdCJpbiBlJiYodC5zY2FsaW5nUGl2b3Q9ZS5TY2FsaW5nUGl2b3QudmFsdWUpLCJSb3RhdGlvbk9mZnNldCJpbiBlJiYodC5yb3RhdGlvbk9mZnNldD1lLlJvdGF0aW9uT2Zmc2V0LnZhbHVlKSwiUm90YXRpb25QaXZvdCJpbiBlJiYodC5yb3RhdGlvblBpdm90PWUuUm90YXRpb25QaXZvdC52YWx1ZSksQS51c2VyRGF0YS50cmFuc2Zvcm1EYXRhPXR9c2V0TG9va0F0UHJvcGVydGllcyhBLGUpe2lmKCJMb29rQXRQcm9wZXJ0eSJpbiBlKXtKLmdldChBLklEKS5jaGlsZHJlbi5mb3JFYWNoKChmdW5jdGlvbihlKXtpZigiTG9va0F0UHJvcGVydHkiPT09ZS5yZWxhdGlvbnNoaXApe2NvbnN0IHQ9ai5PYmplY3RzLk1vZGVsW2UuSURdO2lmKCJMY2xfVHJhbnNsYXRpb24iaW4gdCl7Y29uc3QgZT10LkxjbF9UcmFuc2xhdGlvbi52YWx1ZTt2b2lkIDAhPT1BLnRhcmdldD8oQS50YXJnZXQucG9zaXRpb24uZnJvbUFycmF5KGUpLHouYWRkKEEudGFyZ2V0KSk6QS5sb29rQXQoKG5ldyBuLlZlY3RvcjMpLmZyb21BcnJheShlKSl9fX0pKX19YmluZFNrZWxldG9uKEEsZSx0KXtjb25zdCBpPXRoaXMucGFyc2VQb3NlTm9kZXMoKTtmb3IoY29uc3QgciBpbiBBKXtjb25zdCBvPUFbcl07Si5nZXQocGFyc2VJbnQoby5JRCkpLnBhcmVudHMuZm9yRWFjaCgoZnVuY3Rpb24oQSl7aWYoZS5oYXMoQS5JRCkpe2NvbnN0IGU9QS5JRDtKLmdldChlKS5wYXJlbnRzLmZvckVhY2goKGZ1bmN0aW9uKEEpe2lmKHQuaGFzKEEuSUQpKXt0LmdldChBLklEKS5iaW5kKG5ldyBuLlNrZWxldG9uKG8uYm9uZXMpLGlbQS5JRF0pfX0pKX19KSl9fXBhcnNlUG9zZU5vZGVzKCl7Y29uc3QgQT17fTtpZigiUG9zZSJpbiBqLk9iamVjdHMpe2NvbnN0IGU9ai5PYmplY3RzLlBvc2U7Zm9yKGNvbnN0IHQgaW4gZSlpZigiQmluZFBvc2UiPT09ZVt0XS5hdHRyVHlwZSYmZVt0XS5OYlBvc2VOb2Rlcz4wKXtjb25zdCBpPWVbdF0uUG9zZU5vZGU7QXJyYXkuaXNBcnJheShpKT9pLmZvckVhY2goKGZ1bmN0aW9uKGUpe0FbZS5Ob2RlXT0obmV3IG4uTWF0cml4NCkuZnJvbUFycmF5KGUuTWF0cml4LmEpfSkpOkFbaS5Ob2RlXT0obmV3IG4uTWF0cml4NCkuZnJvbUFycmF5KGkuTWF0cml4LmEpfX1yZXR1cm4gQX1jcmVhdGVBbWJpZW50TGlnaHQoKXtpZigiR2xvYmFsU2V0dGluZ3MiaW4gaiYmIkFtYmllbnRDb2xvciJpbiBqLkdsb2JhbFNldHRpbmdzKXtjb25zdCBBPWouR2xvYmFsU2V0dGluZ3MuQW1iaWVudENvbG9yLnZhbHVlLGU9QVswXSx0PUFbMV0saT1BWzJdO2lmKDAhPT1lfHwwIT09dHx8MCE9PWkpe2NvbnN0IEE9bmV3IG4uQ29sb3IoZSx0LGkpLmNvbnZlcnRTUkdCVG9MaW5lYXIoKTt6LmFkZChuZXcgbi5BbWJpZW50TGlnaHQoQSwxKSl9fX19Y2xhc3MgT3tjb25zdHJ1Y3Rvcigpe3RoaXMubmVnYXRpdmVNYXRlcmlhbEluZGljZXM9ITF9cGFyc2UoQSl7Y29uc3QgZT1uZXcgTWFwO2lmKCJHZW9tZXRyeSJpbiBqLk9iamVjdHMpe2NvbnN0IHQ9ai5PYmplY3RzLkdlb21ldHJ5O2Zvcihjb25zdCBuIGluIHQpe2NvbnN0IGk9Si5nZXQocGFyc2VJbnQobikpLHI9dGhpcy5wYXJzZUdlb21ldHJ5KGksdFtuXSxBKTtlLnNldChwYXJzZUludChuKSxyKX19cmV0dXJuITA9PT10aGlzLm5lZ2F0aXZlTWF0ZXJpYWxJbmRpY2VzJiZjb25zb2xlLndhcm4oIlRIUkVFLkZCWExvYWRlcjogVGhlIEZCWCBmaWxlIGNvbnRhaW5zIGludmFsaWQgKG5lZ2F0aXZlKSBtYXRlcmlhbCBpbmRpY2VzLiBUaGUgYXNzZXQgbWlnaHQgbm90IHJlbmRlciBhcyBleHBlY3RlZC4iKSxlfXBhcnNlR2VvbWV0cnkoQSxlLHQpe3N3aXRjaChlLmF0dHJUeXBlKXtjYXNlIk1lc2giOnJldHVybiB0aGlzLnBhcnNlTWVzaEdlb21ldHJ5KEEsZSx0KTtjYXNlIk51cmJzQ3VydmUiOnJldHVybiB0aGlzLnBhcnNlTnVyYnNHZW9tZXRyeShlKX19cGFyc2VNZXNoR2VvbWV0cnkoQSxlLHQpe2NvbnN0IG49dC5za2VsZXRvbnMsaT1bXSxyPUEucGFyZW50cy5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBqLk9iamVjdHMuTW9kZWxbQS5JRF19KSk7aWYoMD09PXIubGVuZ3RoKXJldHVybjtjb25zdCBvPUEuY2hpbGRyZW4ucmVkdWNlKChmdW5jdGlvbihBLGUpe3JldHVybiB2b2lkIDAhPT1uW2UuSURdJiYoQT1uW2UuSURdKSxBfSksbnVsbCk7QS5jaGlsZHJlbi5mb3JFYWNoKChmdW5jdGlvbihBKXt2b2lkIDAhPT10Lm1vcnBoVGFyZ2V0c1tBLklEXSYmaS5wdXNoKHQubW9ycGhUYXJnZXRzW0EuSURdKX0pKTtjb25zdCBzPXJbMF0sYT17fTsiUm90YXRpb25PcmRlciJpbiBzJiYoYS5ldWxlck9yZGVyPWlBKHMuUm90YXRpb25PcmRlci52YWx1ZSkpLCJJbmhlcml0VHlwZSJpbiBzJiYoYS5pbmhlcml0VHlwZT1wYXJzZUludChzLkluaGVyaXRUeXBlLnZhbHVlKSksIkdlb21ldHJpY1RyYW5zbGF0aW9uImluIHMmJihhLnRyYW5zbGF0aW9uPXMuR2VvbWV0cmljVHJhbnNsYXRpb24udmFsdWUpLCJHZW9tZXRyaWNSb3RhdGlvbiJpbiBzJiYoYS5yb3RhdGlvbj1zLkdlb21ldHJpY1JvdGF0aW9uLnZhbHVlKSwiR2VvbWV0cmljU2NhbGluZyJpbiBzJiYoYS5zY2FsZT1zLkdlb21ldHJpY1NjYWxpbmcudmFsdWUpO2NvbnN0IEI9bkEoYSk7cmV0dXJuIHRoaXMuZ2VuR2VvbWV0cnkoZSxvLGksQil9Z2VuR2VvbWV0cnkoQSxlLHQsaSl7Y29uc3Qgcj1uZXcgbi5CdWZmZXJHZW9tZXRyeTtBLmF0dHJOYW1lJiYoci5uYW1lPUEuYXR0ck5hbWUpO2NvbnN0IG89dGhpcy5wYXJzZUdlb05vZGUoQSxlKSxzPXRoaXMuZ2VuQnVmZmVycyhvKSxhPW5ldyBuLkZsb2F0MzJCdWZmZXJBdHRyaWJ1dGUocy52ZXJ0ZXgsMyk7aWYoYS5hcHBseU1hdHJpeDQoaSksci5zZXRBdHRyaWJ1dGUoInBvc2l0aW9uIixhKSxzLmNvbG9ycy5sZW5ndGg+MCYmci5zZXRBdHRyaWJ1dGUoImNvbG9yIixuZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKHMuY29sb3JzLDMpKSxlJiYoci5zZXRBdHRyaWJ1dGUoInNraW5JbmRleCIsbmV3IG4uVWludDE2QnVmZmVyQXR0cmlidXRlKHMud2VpZ2h0c0luZGljZXMsNCkpLHIuc2V0QXR0cmlidXRlKCJza2luV2VpZ2h0IixuZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKHMudmVydGV4V2VpZ2h0cyw0KSksci5GQlhfRGVmb3JtZXI9ZSkscy5ub3JtYWwubGVuZ3RoPjApe2NvbnN0IEE9KG5ldyBuLk1hdHJpeDMpLmdldE5vcm1hbE1hdHJpeChpKSxlPW5ldyBuLkZsb2F0MzJCdWZmZXJBdHRyaWJ1dGUocy5ub3JtYWwsMyk7ZS5hcHBseU5vcm1hbE1hdHJpeChBKSxyLnNldEF0dHJpYnV0ZSgibm9ybWFsIixlKX1pZihzLnV2cy5mb3JFYWNoKChmdW5jdGlvbihBLGUpe2NvbnN0IHQ9MD09PWU/InV2IjoidXYiLmNvbmNhdChlKTtyLnNldEF0dHJpYnV0ZSh0LG5ldyBuLkZsb2F0MzJCdWZmZXJBdHRyaWJ1dGUocy51dnNbZV0sMikpfSkpLG8ubWF0ZXJpYWwmJiJBbGxTYW1lIiE9PW8ubWF0ZXJpYWwubWFwcGluZ1R5cGUpe2xldCBBPXMubWF0ZXJpYWxJbmRleFswXSxlPTA7aWYocy5tYXRlcmlhbEluZGV4LmZvckVhY2goKGZ1bmN0aW9uKHQsbil7dCE9PUEmJihyLmFkZEdyb3VwKGUsbi1lLEEpLEE9dCxlPW4pfSkpLHIuZ3JvdXBzLmxlbmd0aD4wKXtjb25zdCBlPXIuZ3JvdXBzW3IuZ3JvdXBzLmxlbmd0aC0xXSx0PWUuc3RhcnQrZS5jb3VudDt0IT09cy5tYXRlcmlhbEluZGV4Lmxlbmd0aCYmci5hZGRHcm91cCh0LHMubWF0ZXJpYWxJbmRleC5sZW5ndGgtdCxBKX0wPT09ci5ncm91cHMubGVuZ3RoJiZyLmFkZEdyb3VwKDAscy5tYXRlcmlhbEluZGV4Lmxlbmd0aCxzLm1hdGVyaWFsSW5kZXhbMF0pfXJldHVybiB0aGlzLmFkZE1vcnBoVGFyZ2V0cyhyLEEsdCxpKSxyfXBhcnNlR2VvTm9kZShBLGUpe2NvbnN0IHQ9e307aWYodC52ZXJ0ZXhQb3NpdGlvbnM9dm9pZCAwIT09QS5WZXJ0aWNlcz9BLlZlcnRpY2VzLmE6W10sdC52ZXJ0ZXhJbmRpY2VzPXZvaWQgMCE9PUEuUG9seWdvblZlcnRleEluZGV4P0EuUG9seWdvblZlcnRleEluZGV4LmE6W10sQS5MYXllckVsZW1lbnRDb2xvciYmKHQuY29sb3I9dGhpcy5wYXJzZVZlcnRleENvbG9ycyhBLkxheWVyRWxlbWVudENvbG9yWzBdKSksQS5MYXllckVsZW1lbnRNYXRlcmlhbCYmKHQubWF0ZXJpYWw9dGhpcy5wYXJzZU1hdGVyaWFsSW5kaWNlcyhBLkxheWVyRWxlbWVudE1hdGVyaWFsWzBdKSksQS5MYXllckVsZW1lbnROb3JtYWwmJih0Lm5vcm1hbD10aGlzLnBhcnNlTm9ybWFscyhBLkxheWVyRWxlbWVudE5vcm1hbFswXSkpLEEuTGF5ZXJFbGVtZW50VVYpe3QudXY9W107bGV0IGU9MDtmb3IoO0EuTGF5ZXJFbGVtZW50VVZbZV07KUEuTGF5ZXJFbGVtZW50VVZbZV0uVVYmJnQudXYucHVzaCh0aGlzLnBhcnNlVVZzKEEuTGF5ZXJFbGVtZW50VVZbZV0pKSxlKyt9cmV0dXJuIHQud2VpZ2h0VGFibGU9e30sbnVsbCE9PWUmJih0LnNrZWxldG9uPWUsZS5yYXdCb25lcy5mb3JFYWNoKChmdW5jdGlvbihBLGUpe0EuaW5kaWNlcy5mb3JFYWNoKChmdW5jdGlvbihuLGkpe3ZvaWQgMD09PXQud2VpZ2h0VGFibGVbbl0mJih0LndlaWdodFRhYmxlW25dPVtdKSx0LndlaWdodFRhYmxlW25dLnB1c2goe2lkOmUsd2VpZ2h0OkEud2VpZ2h0c1tpXX0pfSkpfSkpKSx0fWdlbkJ1ZmZlcnMoQSl7Y29uc3QgZT17dmVydGV4OltdLG5vcm1hbDpbXSxjb2xvcnM6W10sdXZzOltdLG1hdGVyaWFsSW5kZXg6W10sdmVydGV4V2VpZ2h0czpbXSx3ZWlnaHRzSW5kaWNlczpbXX07bGV0IHQ9MCxuPTAsaT0hMSxyPVtdLG89W10scz1bXSxhPVtdLEI9W10sYz1bXTtjb25zdCBnPXRoaXM7cmV0dXJuIEEudmVydGV4SW5kaWNlcy5mb3JFYWNoKChmdW5jdGlvbihFLFEpe2xldCB1LGw9ITE7RTwwJiYoRV49LTEsbD0hMCk7bGV0IGg9W10sdz1bXTtpZihyLnB1c2goMypFLDMqRSsxLDMqRSsyKSxBLmNvbG9yKXtjb25zdCBlPUFBKFEsdCxFLEEuY29sb3IpO3MucHVzaChlWzBdLGVbMV0sZVsyXSl9aWYoQS5za2VsZXRvbil7aWYodm9pZCAwIT09QS53ZWlnaHRUYWJsZVtFXSYmQS53ZWlnaHRUYWJsZVtFXS5mb3JFYWNoKChmdW5jdGlvbihBKXt3LnB1c2goQS53ZWlnaHQpLGgucHVzaChBLmlkKX0pKSx3Lmxlbmd0aD40KXtpfHwoY29uc29sZS53YXJuKCJUSFJFRS5GQlhMb2FkZXI6IFZlcnRleCBoYXMgbW9yZSB0aGFuIDQgc2tpbm5pbmcgd2VpZ2h0cyBhc3NpZ25lZCB0byB2ZXJ0ZXguIERlbGV0aW5nIGFkZGl0aW9uYWwgd2VpZ2h0cy4iKSxpPSEwKTtjb25zdCBBPVswLDAsMCwwXSxlPVswLDAsMCwwXTt3LmZvckVhY2goKGZ1bmN0aW9uKHQsbil7bGV0IGk9dCxyPWhbbl07ZS5mb3JFYWNoKChmdW5jdGlvbihlLHQsbil7aWYoaT5lKXtuW3RdPWksaT1lO2NvbnN0IG89QVt0XTtBW3RdPXIscj1vfX0pKX0pKSxoPUEsdz1lfWZvcig7dy5sZW5ndGg8NDspdy5wdXNoKDApLGgucHVzaCgwKTtmb3IobGV0IEE9MDtBPDQ7KytBKUIucHVzaCh3W0FdKSxjLnB1c2goaFtBXSl9aWYoQS5ub3JtYWwpe2NvbnN0IGU9QUEoUSx0LEUsQS5ub3JtYWwpO28ucHVzaChlWzBdLGVbMV0sZVsyXSl9QS5tYXRlcmlhbCYmIkFsbFNhbWUiIT09QS5tYXRlcmlhbC5tYXBwaW5nVHlwZSYmKHU9QUEoUSx0LEUsQS5tYXRlcmlhbClbMF0sdTwwJiYoZy5uZWdhdGl2ZU1hdGVyaWFsSW5kaWNlcz0hMCx1PTApKSxBLnV2JiZBLnV2LmZvckVhY2goKGZ1bmN0aW9uKEEsZSl7Y29uc3Qgbj1BQShRLHQsRSxBKTt2b2lkIDA9PT1hW2VdJiYoYVtlXT1bXSksYVtlXS5wdXNoKG5bMF0pLGFbZV0ucHVzaChuWzFdKX0pKSxuKyssbCYmKG4+NCYmY29uc29sZS53YXJuKCJUSFJFRS5GQlhMb2FkZXI6IFBvbHlnb25zIHdpdGggbW9yZSB0aGFuIGZvdXIgc2lkZXMgYXJlIG5vdCBzdXBwb3J0ZWQuIE1ha2Ugc3VyZSB0byB0cmlhbmd1bGF0ZSB0aGUgZ2VvbWV0cnkgZHVyaW5nIGV4cG9ydC4iKSxnLmdlbkZhY2UoZSxBLHIsdSxvLHMsYSxCLGMsbiksdCsrLG49MCxyPVtdLG89W10scz1bXSxhPVtdLEI9W10sYz1bXSl9KSksZX1nZW5GYWNlKEEsZSx0LG4saSxyLG8scyxhLEIpe2ZvcihsZXQgYz0yO2M8QjtjKyspQS52ZXJ0ZXgucHVzaChlLnZlcnRleFBvc2l0aW9uc1t0WzBdXSksQS52ZXJ0ZXgucHVzaChlLnZlcnRleFBvc2l0aW9uc1t0WzFdXSksQS52ZXJ0ZXgucHVzaChlLnZlcnRleFBvc2l0aW9uc1t0WzJdXSksQS52ZXJ0ZXgucHVzaChlLnZlcnRleFBvc2l0aW9uc1t0WzMqKGMtMSldXSksQS52ZXJ0ZXgucHVzaChlLnZlcnRleFBvc2l0aW9uc1t0WzMqKGMtMSkrMV1dKSxBLnZlcnRleC5wdXNoKGUudmVydGV4UG9zaXRpb25zW3RbMyooYy0xKSsyXV0pLEEudmVydGV4LnB1c2goZS52ZXJ0ZXhQb3NpdGlvbnNbdFszKmNdXSksQS52ZXJ0ZXgucHVzaChlLnZlcnRleFBvc2l0aW9uc1t0WzMqYysxXV0pLEEudmVydGV4LnB1c2goZS52ZXJ0ZXhQb3NpdGlvbnNbdFszKmMrMl1dKSxlLnNrZWxldG9uJiYoQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1swXSksQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1sxXSksQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1syXSksQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1szXSksQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1s0KihjLTEpXSksQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1s0KihjLTEpKzFdKSxBLnZlcnRleFdlaWdodHMucHVzaChzWzQqKGMtMSkrMl0pLEEudmVydGV4V2VpZ2h0cy5wdXNoKHNbNCooYy0xKSszXSksQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1s0KmNdKSxBLnZlcnRleFdlaWdodHMucHVzaChzWzQqYysxXSksQS52ZXJ0ZXhXZWlnaHRzLnB1c2goc1s0KmMrMl0pLEEudmVydGV4V2VpZ2h0cy5wdXNoKHNbNCpjKzNdKSxBLndlaWdodHNJbmRpY2VzLnB1c2goYVswXSksQS53ZWlnaHRzSW5kaWNlcy5wdXNoKGFbMV0pLEEud2VpZ2h0c0luZGljZXMucHVzaChhWzJdKSxBLndlaWdodHNJbmRpY2VzLnB1c2goYVszXSksQS53ZWlnaHRzSW5kaWNlcy5wdXNoKGFbNCooYy0xKV0pLEEud2VpZ2h0c0luZGljZXMucHVzaChhWzQqKGMtMSkrMV0pLEEud2VpZ2h0c0luZGljZXMucHVzaChhWzQqKGMtMSkrMl0pLEEud2VpZ2h0c0luZGljZXMucHVzaChhWzQqKGMtMSkrM10pLEEud2VpZ2h0c0luZGljZXMucHVzaChhWzQqY10pLEEud2VpZ2h0c0luZGljZXMucHVzaChhWzQqYysxXSksQS53ZWlnaHRzSW5kaWNlcy5wdXNoKGFbNCpjKzJdKSxBLndlaWdodHNJbmRpY2VzLnB1c2goYVs0KmMrM10pKSxlLmNvbG9yJiYoQS5jb2xvcnMucHVzaChyWzBdKSxBLmNvbG9ycy5wdXNoKHJbMV0pLEEuY29sb3JzLnB1c2goclsyXSksQS5jb2xvcnMucHVzaChyWzMqKGMtMSldKSxBLmNvbG9ycy5wdXNoKHJbMyooYy0xKSsxXSksQS5jb2xvcnMucHVzaChyWzMqKGMtMSkrMl0pLEEuY29sb3JzLnB1c2goclszKmNdKSxBLmNvbG9ycy5wdXNoKHJbMypjKzFdKSxBLmNvbG9ycy5wdXNoKHJbMypjKzJdKSksZS5tYXRlcmlhbCYmIkFsbFNhbWUiIT09ZS5tYXRlcmlhbC5tYXBwaW5nVHlwZSYmKEEubWF0ZXJpYWxJbmRleC5wdXNoKG4pLEEubWF0ZXJpYWxJbmRleC5wdXNoKG4pLEEubWF0ZXJpYWxJbmRleC5wdXNoKG4pKSxlLm5vcm1hbCYmKEEubm9ybWFsLnB1c2goaVswXSksQS5ub3JtYWwucHVzaChpWzFdKSxBLm5vcm1hbC5wdXNoKGlbMl0pLEEubm9ybWFsLnB1c2goaVszKihjLTEpXSksQS5ub3JtYWwucHVzaChpWzMqKGMtMSkrMV0pLEEubm9ybWFsLnB1c2goaVszKihjLTEpKzJdKSxBLm5vcm1hbC5wdXNoKGlbMypjXSksQS5ub3JtYWwucHVzaChpWzMqYysxXSksQS5ub3JtYWwucHVzaChpWzMqYysyXSkpLGUudXYmJmUudXYuZm9yRWFjaCgoZnVuY3Rpb24oZSx0KXt2b2lkIDA9PT1BLnV2c1t0XSYmKEEudXZzW3RdPVtdKSxBLnV2c1t0XS5wdXNoKG9bdF1bMF0pLEEudXZzW3RdLnB1c2gob1t0XVsxXSksQS51dnNbdF0ucHVzaChvW3RdWzIqKGMtMSldKSxBLnV2c1t0XS5wdXNoKG9bdF1bMiooYy0xKSsxXSksQS51dnNbdF0ucHVzaChvW3RdWzIqY10pLEEudXZzW3RdLnB1c2gob1t0XVsyKmMrMV0pfSkpfWFkZE1vcnBoVGFyZ2V0cyhBLGUsdCxuKXtpZigwPT09dC5sZW5ndGgpcmV0dXJuO0EubW9ycGhUYXJnZXRzUmVsYXRpdmU9ITAsQS5tb3JwaEF0dHJpYnV0ZXMucG9zaXRpb249W107Y29uc3QgaT10aGlzO3QuZm9yRWFjaCgoZnVuY3Rpb24odCl7dC5yYXdUYXJnZXRzLmZvckVhY2goKGZ1bmN0aW9uKHQpe2NvbnN0IHI9ai5PYmplY3RzLkdlb21ldHJ5W3QuZ2VvSURdO3ZvaWQgMCE9PXImJmkuZ2VuTW9ycGhHZW9tZXRyeShBLGUscixuLHQubmFtZSl9KSl9KSl9Z2VuTW9ycGhHZW9tZXRyeShBLGUsdCxpLHIpe2NvbnN0IG89dm9pZCAwIT09ZS5Qb2x5Z29uVmVydGV4SW5kZXg/ZS5Qb2x5Z29uVmVydGV4SW5kZXguYTpbXSxzPXZvaWQgMCE9PXQuVmVydGljZXM/dC5WZXJ0aWNlcy5hOltdLGE9dm9pZCAwIT09dC5JbmRleGVzP3QuSW5kZXhlcy5hOltdLEI9MypBLmF0dHJpYnV0ZXMucG9zaXRpb24uY291bnQsYz1uZXcgRmxvYXQzMkFycmF5KEIpO2ZvcihsZXQgQT0wO0E8YS5sZW5ndGg7QSsrKXtjb25zdCBlPTMqYVtBXTtjW2VdPXNbMypBXSxjW2UrMV09c1szKkErMV0sY1tlKzJdPXNbMypBKzJdfWNvbnN0IGc9e3ZlcnRleEluZGljZXM6byx2ZXJ0ZXhQb3NpdGlvbnM6Y30sRT10aGlzLmdlbkJ1ZmZlcnMoZyksUT1uZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKEUudmVydGV4LDMpO1EubmFtZT1yfHx0LmF0dHJOYW1lLFEuYXBwbHlNYXRyaXg0KGkpLEEubW9ycGhBdHRyaWJ1dGVzLnBvc2l0aW9uLnB1c2goUSl9cGFyc2VOb3JtYWxzKEEpe2NvbnN0IGU9QS5NYXBwaW5nSW5mb3JtYXRpb25UeXBlLHQ9QS5SZWZlcmVuY2VJbmZvcm1hdGlvblR5cGUsbj1BLk5vcm1hbHMuYTtsZXQgaT1bXTtyZXR1cm4iSW5kZXhUb0RpcmVjdCI9PT10JiYoIk5vcm1hbEluZGV4ImluIEE/aT1BLk5vcm1hbEluZGV4LmE6Ik5vcm1hbHNJbmRleCJpbiBBJiYoaT1BLk5vcm1hbHNJbmRleC5hKSkse2RhdGFTaXplOjMsYnVmZmVyOm4saW5kaWNlczppLG1hcHBpbmdUeXBlOmUscmVmZXJlbmNlVHlwZTp0fX1wYXJzZVVWcyhBKXtjb25zdCBlPUEuTWFwcGluZ0luZm9ybWF0aW9uVHlwZSx0PUEuUmVmZXJlbmNlSW5mb3JtYXRpb25UeXBlLG49QS5VVi5hO2xldCBpPVtdO3JldHVybiJJbmRleFRvRGlyZWN0Ij09PXQmJihpPUEuVVZJbmRleC5hKSx7ZGF0YVNpemU6MixidWZmZXI6bixpbmRpY2VzOmksbWFwcGluZ1R5cGU6ZSxyZWZlcmVuY2VUeXBlOnR9fXBhcnNlVmVydGV4Q29sb3JzKEEpe2NvbnN0IGU9QS5NYXBwaW5nSW5mb3JtYXRpb25UeXBlLHQ9QS5SZWZlcmVuY2VJbmZvcm1hdGlvblR5cGUsaT1BLkNvbG9ycy5hO2xldCByPVtdOyJJbmRleFRvRGlyZWN0Ij09PXQmJihyPUEuQ29sb3JJbmRleC5hKTtmb3IobGV0IEE9MCxlPW5ldyBuLkNvbG9yO0E8aS5sZW5ndGg7QSs9NCllLmZyb21BcnJheShpLEEpLmNvbnZlcnRTUkdCVG9MaW5lYXIoKS50b0FycmF5KGksQSk7cmV0dXJue2RhdGFTaXplOjQsYnVmZmVyOmksaW5kaWNlczpyLG1hcHBpbmdUeXBlOmUscmVmZXJlbmNlVHlwZTp0fX1wYXJzZU1hdGVyaWFsSW5kaWNlcyhBKXtjb25zdCBlPUEuTWFwcGluZ0luZm9ybWF0aW9uVHlwZSx0PUEuUmVmZXJlbmNlSW5mb3JtYXRpb25UeXBlO2lmKCJOb01hcHBpbmdJbmZvcm1hdGlvbiI9PT1lKXJldHVybntkYXRhU2l6ZToxLGJ1ZmZlcjpbMF0saW5kaWNlczpbMF0sbWFwcGluZ1R5cGU6IkFsbFNhbWUiLHJlZmVyZW5jZVR5cGU6dH07Y29uc3Qgbj1BLk1hdGVyaWFscy5hLGk9W107Zm9yKGxldCBBPTA7QTxuLmxlbmd0aDsrK0EpaS5wdXNoKEEpO3JldHVybntkYXRhU2l6ZToxLGJ1ZmZlcjpuLGluZGljZXM6aSxtYXBwaW5nVHlwZTplLHJlZmVyZW5jZVR5cGU6dH19cGFyc2VOdXJic0dlb21ldHJ5KEEpe2NvbnN0IGU9cGFyc2VJbnQoQS5PcmRlcik7aWYoaXNOYU4oZSkpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIlRIUkVFLkZCWExvYWRlcjogSW52YWxpZCBPcmRlciAlcyBnaXZlbiBmb3IgZ2VvbWV0cnkgSUQ6ICVzIixBLk9yZGVyLEEuaWQpLG5ldyBuLkJ1ZmZlckdlb21ldHJ5O2NvbnN0IHQ9ZS0xLGk9QS5Lbm90VmVjdG9yLmEscj1bXSxvPUEuUG9pbnRzLmE7Zm9yKGxldCBBPTAsZT1vLmxlbmd0aDtBPGU7QSs9NClyLnB1c2goKG5ldyBuLlZlY3RvcjQpLmZyb21BcnJheShvLEEpKTtsZXQgcyxhO2lmKCJDbG9zZWQiPT09QS5Gb3JtKXIucHVzaChyWzBdKTtlbHNlIGlmKCJQZXJpb2RpYyI9PT1BLkZvcm0pe3M9dCxhPWkubGVuZ3RoLTEtcztmb3IobGV0IEE9MDtBPHQ7KytBKXIucHVzaChyW0FdKX1jb25zdCBCPW5ldyBrKHQsaSxyLHMsYSkuZ2V0UG9pbnRzKDEyKnIubGVuZ3RoKTtyZXR1cm4obmV3IG4uQnVmZmVyR2VvbWV0cnkpLnNldEZyb21Qb2ludHMoQil9fWNsYXNzIFZ7cGFyc2UoKXtjb25zdCBBPVtdLGU9dGhpcy5wYXJzZUNsaXBzKCk7aWYodm9pZCAwIT09ZSlmb3IoY29uc3QgdCBpbiBlKXtjb25zdCBuPWVbdF0saT10aGlzLmFkZENsaXAobik7QS5wdXNoKGkpfXJldHVybiBBfXBhcnNlQ2xpcHMoKXtpZih2b2lkIDA9PT1qLk9iamVjdHMuQW5pbWF0aW9uQ3VydmUpcmV0dXJuO2NvbnN0IEE9dGhpcy5wYXJzZUFuaW1hdGlvbkN1cnZlTm9kZXMoKTt0aGlzLnBhcnNlQW5pbWF0aW9uQ3VydmVzKEEpO2NvbnN0IGU9dGhpcy5wYXJzZUFuaW1hdGlvbkxheWVycyhBKTtyZXR1cm4gdGhpcy5wYXJzZUFuaW1TdGFja3MoZSl9cGFyc2VBbmltYXRpb25DdXJ2ZU5vZGVzKCl7Y29uc3QgQT1qLk9iamVjdHMuQW5pbWF0aW9uQ3VydmVOb2RlLGU9bmV3IE1hcDtmb3IoY29uc3QgdCBpbiBBKXtjb25zdCBuPUFbdF07aWYobnVsbCE9PW4uYXR0ck5hbWUubWF0Y2goL1N8UnxUfERlZm9ybVBlcmNlbnQvKSl7Y29uc3QgQT17aWQ6bi5pZCxhdHRyOm4uYXR0ck5hbWUsY3VydmVzOnt9fTtlLnNldChBLmlkLEEpfX1yZXR1cm4gZX1wYXJzZUFuaW1hdGlvbkN1cnZlcyhBKXtjb25zdCBlPWouT2JqZWN0cy5BbmltYXRpb25DdXJ2ZTtmb3IoY29uc3QgdCBpbiBlKXtjb25zdCBuPXtpZDplW3RdLmlkLHRpbWVzOmVbdF0uS2V5VGltZS5hLm1hcChxKSx2YWx1ZXM6ZVt0XS5LZXlWYWx1ZUZsb2F0LmF9LGk9Si5nZXQobi5pZCk7aWYodm9pZCAwIT09aSl7Y29uc3QgZT1pLnBhcmVudHNbMF0uSUQsdD1pLnBhcmVudHNbMF0ucmVsYXRpb25zaGlwO3QubWF0Y2goL1gvKT9BLmdldChlKS5jdXJ2ZXMueD1uOnQubWF0Y2goL1kvKT9BLmdldChlKS5jdXJ2ZXMueT1uOnQubWF0Y2goL1ovKT9BLmdldChlKS5jdXJ2ZXMuej1uOnQubWF0Y2goL0RlZm9ybVBlcmNlbnQvKSYmQS5oYXMoZSkmJihBLmdldChlKS5jdXJ2ZXMubW9ycGg9bil9fX1wYXJzZUFuaW1hdGlvbkxheWVycyhBKXtjb25zdCBlPWouT2JqZWN0cy5BbmltYXRpb25MYXllcix0PW5ldyBNYXA7Zm9yKGNvbnN0IGkgaW4gZSl7Y29uc3QgZT1bXSxyPUouZ2V0KHBhcnNlSW50KGkpKTtpZih2b2lkIDAhPT1yKXtyLmNoaWxkcmVuLmZvckVhY2goKGZ1bmN0aW9uKHQsaSl7aWYoQS5oYXModC5JRCkpe2NvbnN0IHI9QS5nZXQodC5JRCk7aWYodm9pZCAwIT09ci5jdXJ2ZXMueHx8dm9pZCAwIT09ci5jdXJ2ZXMueXx8dm9pZCAwIT09ci5jdXJ2ZXMueil7aWYodm9pZCAwPT09ZVtpXSl7Y29uc3QgQT1KLmdldCh0LklEKS5wYXJlbnRzLmZpbHRlcigoZnVuY3Rpb24oQSl7cmV0dXJuIHZvaWQgMCE9PUEucmVsYXRpb25zaGlwfSkpWzBdLklEO2lmKHZvaWQgMCE9PUEpe2NvbnN0IHI9ai5PYmplY3RzLk1vZGVsW0EudG9TdHJpbmcoKV07aWYodm9pZCAwPT09cilyZXR1cm4gdm9pZCBjb25zb2xlLndhcm4oIlRIUkVFLkZCWExvYWRlcjogRW5jb3VudGVyZWQgYSB1bnVzZWQgY3VydmUuIix0KTtjb25zdCBvPXttb2RlbE5hbWU6ci5hdHRyTmFtZT9uLlByb3BlcnR5QmluZGluZy5zYW5pdGl6ZU5vZGVOYW1lKHIuYXR0ck5hbWUpOiIiLElEOnIuaWQsaW5pdGlhbFBvc2l0aW9uOlswLDAsMF0saW5pdGlhbFJvdGF0aW9uOlswLDAsMF0saW5pdGlhbFNjYWxlOlsxLDEsMV19O3oudHJhdmVyc2UoKGZ1bmN0aW9uKEEpe0EuSUQ9PT1yLmlkJiYoby50cmFuc2Zvcm09QS5tYXRyaXgsQS51c2VyRGF0YS50cmFuc2Zvcm1EYXRhJiYoby5ldWxlck9yZGVyPUEudXNlckRhdGEudHJhbnNmb3JtRGF0YS5ldWxlck9yZGVyKSl9KSksby50cmFuc2Zvcm18fChvLnRyYW5zZm9ybT1uZXcgbi5NYXRyaXg0KSwiUHJlUm90YXRpb24iaW4gciYmKG8ucHJlUm90YXRpb249ci5QcmVSb3RhdGlvbi52YWx1ZSksIlBvc3RSb3RhdGlvbiJpbiByJiYoby5wb3N0Um90YXRpb249ci5Qb3N0Um90YXRpb24udmFsdWUpLGVbaV09b319ZVtpXSYmKGVbaV1bci5hdHRyXT1yKX1lbHNlIGlmKHZvaWQgMCE9PXIuY3VydmVzLm1vcnBoKXtpZih2b2lkIDA9PT1lW2ldKXtjb25zdCBBPUouZ2V0KHQuSUQpLnBhcmVudHMuZmlsdGVyKChmdW5jdGlvbihBKXtyZXR1cm4gdm9pZCAwIT09QS5yZWxhdGlvbnNoaXB9KSlbMF0uSUQscj1KLmdldChBKS5wYXJlbnRzWzBdLklELG89Si5nZXQocikucGFyZW50c1swXS5JRCxzPUouZ2V0KG8pLnBhcmVudHNbMF0uSUQsYT1qLk9iamVjdHMuTW9kZWxbc10sQj17bW9kZWxOYW1lOmEuYXR0ck5hbWU/bi5Qcm9wZXJ0eUJpbmRpbmcuc2FuaXRpemVOb2RlTmFtZShhLmF0dHJOYW1lKToiIixtb3JwaE5hbWU6ai5PYmplY3RzLkRlZm9ybWVyW0FdLmF0dHJOYW1lfTtlW2ldPUJ9ZVtpXVtyLmF0dHJdPXJ9fX0pKSx0LnNldChwYXJzZUludChpKSxlKX19cmV0dXJuIHR9cGFyc2VBbmltU3RhY2tzKEEpe2NvbnN0IGU9ai5PYmplY3RzLkFuaW1hdGlvblN0YWNrLHQ9e307Zm9yKGNvbnN0IG4gaW4gZSl7Y29uc3QgaT1KLmdldChwYXJzZUludChuKSkuY2hpbGRyZW47aS5sZW5ndGg+MSYmY29uc29sZS53YXJuKCJUSFJFRS5GQlhMb2FkZXI6IEVuY291bnRlcmVkIGFuIGFuaW1hdGlvbiBzdGFjayB3aXRoIG11bHRpcGxlIGxheWVycywgdGhpcyBpcyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZC4gSWdub3Jpbmcgc3Vic2VxdWVudCBsYXllcnMuIik7Y29uc3Qgcj1BLmdldChpWzBdLklEKTt0W25dPXtuYW1lOmVbbl0uYXR0ck5hbWUsbGF5ZXI6cn19cmV0dXJuIHR9YWRkQ2xpcChBKXtsZXQgZT1bXTtjb25zdCB0PXRoaXM7cmV0dXJuIEEubGF5ZXIuZm9yRWFjaCgoZnVuY3Rpb24oQSl7ZT1lLmNvbmNhdCh0LmdlbmVyYXRlVHJhY2tzKEEpKX0pKSxuZXcgbi5BbmltYXRpb25DbGlwKEEubmFtZSwtMSxlKX1nZW5lcmF0ZVRyYWNrcyhBKXtjb25zdCBlPVtdO2xldCB0PW5ldyBuLlZlY3RvcjMsaT1uZXcgbi5RdWF0ZXJuaW9uLHI9bmV3IG4uVmVjdG9yMztpZihBLnRyYW5zZm9ybSYmQS50cmFuc2Zvcm0uZGVjb21wb3NlKHQsaSxyKSx0PXQudG9BcnJheSgpLGk9KG5ldyBuLkV1bGVyKS5zZXRGcm9tUXVhdGVybmlvbihpLEEuZXVsZXJPcmRlcikudG9BcnJheSgpLHI9ci50b0FycmF5KCksdm9pZCAwIT09QS5UJiZPYmplY3Qua2V5cyhBLlQuY3VydmVzKS5sZW5ndGg+MCl7Y29uc3Qgbj10aGlzLmdlbmVyYXRlVmVjdG9yVHJhY2soQS5tb2RlbE5hbWUsQS5ULmN1cnZlcyx0LCJwb3NpdGlvbiIpO3ZvaWQgMCE9PW4mJmUucHVzaChuKX1pZih2b2lkIDAhPT1BLlImJk9iamVjdC5rZXlzKEEuUi5jdXJ2ZXMpLmxlbmd0aD4wKXtjb25zdCB0PXRoaXMuZ2VuZXJhdGVSb3RhdGlvblRyYWNrKEEubW9kZWxOYW1lLEEuUi5jdXJ2ZXMsaSxBLnByZVJvdGF0aW9uLEEucG9zdFJvdGF0aW9uLEEuZXVsZXJPcmRlcik7dm9pZCAwIT09dCYmZS5wdXNoKHQpfWlmKHZvaWQgMCE9PUEuUyYmT2JqZWN0LmtleXMoQS5TLmN1cnZlcykubGVuZ3RoPjApe2NvbnN0IHQ9dGhpcy5nZW5lcmF0ZVZlY3RvclRyYWNrKEEubW9kZWxOYW1lLEEuUy5jdXJ2ZXMsciwic2NhbGUiKTt2b2lkIDAhPT10JiZlLnB1c2godCl9aWYodm9pZCAwIT09QS5EZWZvcm1QZXJjZW50KXtjb25zdCB0PXRoaXMuZ2VuZXJhdGVNb3JwaFRyYWNrKEEpO3ZvaWQgMCE9PXQmJmUucHVzaCh0KX1yZXR1cm4gZX1nZW5lcmF0ZVZlY3RvclRyYWNrKEEsZSx0LGkpe2NvbnN0IHI9dGhpcy5nZXRUaW1lc0ZvckFsbEF4ZXMoZSksbz10aGlzLmdldEtleWZyYW1lVHJhY2tWYWx1ZXMocixlLHQpO3JldHVybiBuZXcgbi5WZWN0b3JLZXlmcmFtZVRyYWNrKEErIi4iK2kscixvKX1nZW5lcmF0ZVJvdGF0aW9uVHJhY2soQSxlLHQsaSxyLG8pe3ZvaWQgMCE9PWUueCYmKHRoaXMuaW50ZXJwb2xhdGVSb3RhdGlvbnMoZS54KSxlLngudmFsdWVzPWUueC52YWx1ZXMubWFwKG4uTWF0aFV0aWxzLmRlZ1RvUmFkKSksdm9pZCAwIT09ZS55JiYodGhpcy5pbnRlcnBvbGF0ZVJvdGF0aW9ucyhlLnkpLGUueS52YWx1ZXM9ZS55LnZhbHVlcy5tYXAobi5NYXRoVXRpbHMuZGVnVG9SYWQpKSx2b2lkIDAhPT1lLnomJih0aGlzLmludGVycG9sYXRlUm90YXRpb25zKGUueiksZS56LnZhbHVlcz1lLnoudmFsdWVzLm1hcChuLk1hdGhVdGlscy5kZWdUb1JhZCkpO2NvbnN0IHM9dGhpcy5nZXRUaW1lc0ZvckFsbEF4ZXMoZSksYT10aGlzLmdldEtleWZyYW1lVHJhY2tWYWx1ZXMocyxlLHQpO3ZvaWQgMCE9PWkmJigoaT1pLm1hcChuLk1hdGhVdGlscy5kZWdUb1JhZCkpLnB1c2gobyksaT0obmV3IG4uRXVsZXIpLmZyb21BcnJheShpKSxpPShuZXcgbi5RdWF0ZXJuaW9uKS5zZXRGcm9tRXVsZXIoaSkpLHZvaWQgMCE9PXImJigocj1yLm1hcChuLk1hdGhVdGlscy5kZWdUb1JhZCkpLnB1c2gobykscj0obmV3IG4uRXVsZXIpLmZyb21BcnJheShyKSxyPShuZXcgbi5RdWF0ZXJuaW9uKS5zZXRGcm9tRXVsZXIocikuaW52ZXJ0KCkpO2NvbnN0IEI9bmV3IG4uUXVhdGVybmlvbixjPW5ldyBuLkV1bGVyLGc9W107Zm9yKGxldCBBPTA7QTxhLmxlbmd0aDtBKz0zKWMuc2V0KGFbQV0sYVtBKzFdLGFbQSsyXSxvKSxCLnNldEZyb21FdWxlcihjKSx2b2lkIDAhPT1pJiZCLnByZW11bHRpcGx5KGkpLHZvaWQgMCE9PXImJkIubXVsdGlwbHkociksQi50b0FycmF5KGcsQS8zKjQpO3JldHVybiBuZXcgbi5RdWF0ZXJuaW9uS2V5ZnJhbWVUcmFjayhBKyIucXVhdGVybmlvbiIscyxnKX1nZW5lcmF0ZU1vcnBoVHJhY2soQSl7Y29uc3QgZT1BLkRlZm9ybVBlcmNlbnQuY3VydmVzLm1vcnBoLHQ9ZS52YWx1ZXMubWFwKChmdW5jdGlvbihBKXtyZXR1cm4gQS8xMDB9KSksaT16LmdldE9iamVjdEJ5TmFtZShBLm1vZGVsTmFtZSkubW9ycGhUYXJnZXREaWN0aW9uYXJ5W0EubW9ycGhOYW1lXTtyZXR1cm4gbmV3IG4uTnVtYmVyS2V5ZnJhbWVUcmFjayhBLm1vZGVsTmFtZSsiLm1vcnBoVGFyZ2V0SW5mbHVlbmNlc1siK2krIl0iLGUudGltZXMsdCl9Z2V0VGltZXNGb3JBbGxBeGVzKEEpe2xldCBlPVtdO2lmKHZvaWQgMCE9PUEueCYmKGU9ZS5jb25jYXQoQS54LnRpbWVzKSksdm9pZCAwIT09QS55JiYoZT1lLmNvbmNhdChBLnkudGltZXMpKSx2b2lkIDAhPT1BLnomJihlPWUuY29uY2F0KEEuei50aW1lcykpLGU9ZS5zb3J0KChmdW5jdGlvbihBLGUpe3JldHVybiBBLWV9KSksZS5sZW5ndGg+MSl7bGV0IEE9MSx0PWVbMF07Zm9yKGxldCBuPTE7bjxlLmxlbmd0aDtuKyspe2NvbnN0IGk9ZVtuXTtpIT09dCYmKGVbQV09aSx0PWksQSsrKX1lPWUuc2xpY2UoMCxBKX1yZXR1cm4gZX1nZXRLZXlmcmFtZVRyYWNrVmFsdWVzKEEsZSx0KXtjb25zdCBuPXQsaT1bXTtsZXQgcj0tMSxvPS0xLHM9LTE7cmV0dXJuIEEuZm9yRWFjaCgoZnVuY3Rpb24oQSl7aWYoZS54JiYocj1lLngudGltZXMuaW5kZXhPZihBKSksZS55JiYobz1lLnkudGltZXMuaW5kZXhPZihBKSksZS56JiYocz1lLnoudGltZXMuaW5kZXhPZihBKSksLTEhPT1yKXtjb25zdCBBPWUueC52YWx1ZXNbcl07aS5wdXNoKEEpLG5bMF09QX1lbHNlIGkucHVzaChuWzBdKTtpZigtMSE9PW8pe2NvbnN0IEE9ZS55LnZhbHVlc1tvXTtpLnB1c2goQSksblsxXT1BfWVsc2UgaS5wdXNoKG5bMV0pO2lmKC0xIT09cyl7Y29uc3QgQT1lLnoudmFsdWVzW3NdO2kucHVzaChBKSxuWzJdPUF9ZWxzZSBpLnB1c2goblsyXSl9KSksaX1pbnRlcnBvbGF0ZVJvdGF0aW9ucyhBKXtmb3IobGV0IGU9MTtlPEEudmFsdWVzLmxlbmd0aDtlKyspe2NvbnN0IHQ9QS52YWx1ZXNbZS0xXSxuPUEudmFsdWVzW2VdLXQsaT1NYXRoLmFicyhuKTtpZihpPj0xODApe2NvbnN0IHI9aS8xODAsbz1uL3I7bGV0IHM9dCtvO2NvbnN0IGE9QS50aW1lc1tlLTFdLEI9KEEudGltZXNbZV0tYSkvcjtsZXQgYz1hK0I7Y29uc3QgZz1bXSxFPVtdO2Zvcig7YzxBLnRpbWVzW2VdOylnLnB1c2goYyksYys9QixFLnB1c2gocykscys9bztBLnRpbWVzPXNBKEEudGltZXMsZSxnKSxBLnZhbHVlcz1zQShBLnZhbHVlcyxlLEUpfX19fWNsYXNzIFd7Z2V0UHJldk5vZGUoKXtyZXR1cm4gdGhpcy5ub2RlU3RhY2tbdGhpcy5jdXJyZW50SW5kZW50LTJdfWdldEN1cnJlbnROb2RlKCl7cmV0dXJuIHRoaXMubm9kZVN0YWNrW3RoaXMuY3VycmVudEluZGVudC0xXX1nZXRDdXJyZW50UHJvcCgpe3JldHVybiB0aGlzLmN1cnJlbnRQcm9wfXB1c2hTdGFjayhBKXt0aGlzLm5vZGVTdGFjay5wdXNoKEEpLHRoaXMuY3VycmVudEluZGVudCs9MX1wb3BTdGFjaygpe3RoaXMubm9kZVN0YWNrLnBvcCgpLHRoaXMuY3VycmVudEluZGVudC09MX1zZXRDdXJyZW50UHJvcChBLGUpe3RoaXMuY3VycmVudFByb3A9QSx0aGlzLmN1cnJlbnRQcm9wTmFtZT1lfXBhcnNlKEEpe3RoaXMuY3VycmVudEluZGVudD0wLHRoaXMuYWxsTm9kZXM9bmV3IFosdGhpcy5ub2RlU3RhY2s9W10sdGhpcy5jdXJyZW50UHJvcD1bXSx0aGlzLmN1cnJlbnRQcm9wTmFtZT0iIjtjb25zdCBlPXRoaXMsdD1BLnNwbGl0KC9bXHJcbl0rLyk7cmV0dXJuIHQuZm9yRWFjaCgoZnVuY3Rpb24oQSxuKXtjb25zdCBpPUEubWF0Y2goL15bXHNcdF0qOy8pLHI9QS5tYXRjaCgvXltcc1x0XSokLyk7aWYoaXx8cilyZXR1cm47Y29uc3Qgbz1BLm1hdGNoKCJeXFx0eyIrZS5jdXJyZW50SW5kZW50KyJ9KFxcdyspOiguKil7IiwiIikscz1BLm1hdGNoKCJeXFx0eyIrZS5jdXJyZW50SW5kZW50KyJ9KFxcdyspOltcXHNcXHRcXHJcXG5dKC4qKSIpLGE9QS5tYXRjaCgiXlxcdHsiKyhlLmN1cnJlbnRJbmRlbnQtMSkrIn19Iik7bz9lLnBhcnNlTm9kZUJlZ2luKEEsbyk6cz9lLnBhcnNlTm9kZVByb3BlcnR5KEEscyx0Wysrbl0pOmE/ZS5wb3BTdGFjaygpOkEubWF0Y2goL15bXlxzXHR9XS8pJiZlLnBhcnNlTm9kZVByb3BlcnR5Q29udGludWVkKEEpfSkpLHRoaXMuYWxsTm9kZXN9cGFyc2VOb2RlQmVnaW4oQSxlKXtjb25zdCB0PWVbMV0udHJpbSgpLnJlcGxhY2UoL14iLywiIikucmVwbGFjZSgvIiQvLCIiKSxuPWVbMl0uc3BsaXQoIiwiKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnRyaW0oKS5yZXBsYWNlKC9eIi8sIiIpLnJlcGxhY2UoLyIkLywiIil9KSksaT17bmFtZTp0fSxyPXRoaXMucGFyc2VOb2RlQXR0cihuKSxvPXRoaXMuZ2V0Q3VycmVudE5vZGUoKTswPT09dGhpcy5jdXJyZW50SW5kZW50P3RoaXMuYWxsTm9kZXMuYWRkKHQsaSk6dCBpbiBvPygiUG9zZU5vZGUiPT09dD9vLlBvc2VOb2RlLnB1c2goaSk6dm9pZCAwIT09b1t0XS5pZCYmKG9bdF09e30sb1t0XVtvW3RdLmlkXT1vW3RdKSwiIiE9PXIuaWQmJihvW3RdW3IuaWRdPWkpKToibnVtYmVyIj09dHlwZW9mIHIuaWQ/KG9bdF09e30sb1t0XVtyLmlkXT1pKToiUHJvcGVydGllczcwIiE9PXQmJihvW3RdPSJQb3NlTm9kZSI9PT10P1tpXTppKSwibnVtYmVyIj09dHlwZW9mIHIuaWQmJihpLmlkPXIuaWQpLCIiIT09ci5uYW1lJiYoaS5hdHRyTmFtZT1yLm5hbWUpLCIiIT09ci50eXBlJiYoaS5hdHRyVHlwZT1yLnR5cGUpLHRoaXMucHVzaFN0YWNrKGkpfXBhcnNlTm9kZUF0dHIoQSl7bGV0IGU9QVswXTsiIiE9PUFbMF0mJihlPXBhcnNlSW50KEFbMF0pLGlzTmFOKGUpJiYoZT1BWzBdKSk7bGV0IHQ9IiIsbj0iIjtyZXR1cm4gQS5sZW5ndGg+MSYmKHQ9QVsxXS5yZXBsYWNlKC9eKFx3Kyk6Oi8sIiIpLG49QVsyXSkse2lkOmUsbmFtZTp0LHR5cGU6bn19cGFyc2VOb2RlUHJvcGVydHkoQSxlLHQpe2xldCBuPWVbMV0ucmVwbGFjZSgvXiIvLCIiKS5yZXBsYWNlKC8iJC8sIiIpLnRyaW0oKSxpPWVbMl0ucmVwbGFjZSgvXiIvLCIiKS5yZXBsYWNlKC8iJC8sIiIpLnRyaW0oKTsiQ29udGVudCI9PT1uJiYiLCI9PT1pJiYoaT10LnJlcGxhY2UoLyIvZywiIikucmVwbGFjZSgvLCQvLCIiKS50cmltKCkpO2NvbnN0IHI9dGhpcy5nZXRDdXJyZW50Tm9kZSgpO2lmKCJQcm9wZXJ0aWVzNzAiIT09ci5uYW1lKXtpZigiQyI9PT1uKXtjb25zdCBBPWkuc3BsaXQoIiwiKS5zbGljZSgxKSxlPXBhcnNlSW50KEFbMF0pLHQ9cGFyc2VJbnQoQVsxXSk7bGV0IG89aS5zcGxpdCgiLCIpLnNsaWNlKDMpO289by5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnRyaW0oKS5yZXBsYWNlKC9eIi8sIiIpfSkpLG49ImNvbm5lY3Rpb25zIixpPVtlLHRdLGZ1bmN0aW9uKEEsZSl7Zm9yKGxldCB0PTAsbj1BLmxlbmd0aCxpPWUubGVuZ3RoO3Q8aTt0KyssbisrKUFbbl09ZVt0XX0oaSxvKSx2b2lkIDA9PT1yW25dJiYocltuXT1bXSl9Ik5vZGUiPT09biYmKHIuaWQ9aSksbiBpbiByJiZBcnJheS5pc0FycmF5KHJbbl0pP3Jbbl0ucHVzaChpKToiYSIhPT1uP3Jbbl09aTpyLmE9aSx0aGlzLnNldEN1cnJlbnRQcm9wKHIsbiksImEiPT09biYmIiwiIT09aS5zbGljZSgtMSkmJihyLmE9ckEoaSkpfWVsc2UgdGhpcy5wYXJzZU5vZGVTcGVjaWFsUHJvcGVydHkoQSxuLGkpfXBhcnNlTm9kZVByb3BlcnR5Q29udGludWVkKEEpe2NvbnN0IGU9dGhpcy5nZXRDdXJyZW50Tm9kZSgpO2UuYSs9QSwiLCIhPT1BLnNsaWNlKC0xKSYmKGUuYT1yQShlLmEpKX1wYXJzZU5vZGVTcGVjaWFsUHJvcGVydHkoQSxlLHQpe2NvbnN0IG49dC5zcGxpdCgnIiwnKS5tYXAoKGZ1bmN0aW9uKEEpe3JldHVybiBBLnRyaW0oKS5yZXBsYWNlKC9eXCIvLCIiKS5yZXBsYWNlKC9ccy8sIl8iKX0pKSxpPW5bMF0scj1uWzFdLG89blsyXSxzPW5bM107bGV0IGE9bls0XTtzd2l0Y2gocil7Y2FzZSJpbnQiOmNhc2UiZW51bSI6Y2FzZSJib29sIjpjYXNlIlVMb25nTG9uZyI6Y2FzZSJkb3VibGUiOmNhc2UiTnVtYmVyIjpjYXNlIkZpZWxkT2ZWaWV3IjphPXBhcnNlRmxvYXQoYSk7YnJlYWs7Y2FzZSJDb2xvciI6Y2FzZSJDb2xvclJHQiI6Y2FzZSJWZWN0b3IzRCI6Y2FzZSJMY2xfVHJhbnNsYXRpb24iOmNhc2UiTGNsX1JvdGF0aW9uIjpjYXNlIkxjbF9TY2FsaW5nIjphPXJBKGEpfXRoaXMuZ2V0UHJldk5vZGUoKVtpXT17dHlwZTpyLHR5cGUyOm8sZmxhZzpzLHZhbHVlOmF9LHRoaXMuc2V0Q3VycmVudFByb3AodGhpcy5nZXRQcmV2Tm9kZSgpLGkpfX1jbGFzcyBLe3BhcnNlKEEpe2NvbnN0IGU9bmV3IFgoQSk7ZS5za2lwKDIzKTtjb25zdCB0PWUuZ2V0VWludDMyKCk7aWYodDw2NDAwKXRocm93IG5ldyBFcnJvcigiVEhSRUUuRkJYTG9hZGVyOiBGQlggdmVyc2lvbiBub3Qgc3VwcG9ydGVkLCBGaWxlVmVyc2lvbjogIit0KTtjb25zdCBuPW5ldyBaO2Zvcig7IXRoaXMuZW5kT2ZDb250ZW50KGUpOyl7Y29uc3QgQT10aGlzLnBhcnNlTm9kZShlLHQpO251bGwhPT1BJiZuLmFkZChBLm5hbWUsQSl9cmV0dXJuIG59ZW5kT2ZDb250ZW50KEEpe3JldHVybiBBLnNpemUoKSUxNj09MD8oQS5nZXRPZmZzZXQoKSsxNjArMTYmLTE2KT49QS5zaXplKCk6QS5nZXRPZmZzZXQoKSsxNjArMTY+PUEuc2l6ZSgpfXBhcnNlTm9kZShBLGUpe2NvbnN0IHQ9e30sbj1lPj03NTAwP0EuZ2V0VWludDY0KCk6QS5nZXRVaW50MzIoKSxpPWU+PTc1MDA/QS5nZXRVaW50NjQoKTpBLmdldFVpbnQzMigpO2U+PTc1MDA/QS5nZXRVaW50NjQoKTpBLmdldFVpbnQzMigpO2NvbnN0IHI9QS5nZXRVaW50OCgpLG89QS5nZXRTdHJpbmcocik7aWYoMD09PW4pcmV0dXJuIG51bGw7Y29uc3Qgcz1bXTtmb3IobGV0IGU9MDtlPGk7ZSsrKXMucHVzaCh0aGlzLnBhcnNlUHJvcGVydHkoQSkpO2NvbnN0IGE9cy5sZW5ndGg+MD9zWzBdOiIiLEI9cy5sZW5ndGg+MT9zWzFdOiIiLGM9cy5sZW5ndGg+Mj9zWzJdOiIiO2Zvcih0LnNpbmdsZVByb3BlcnR5PTE9PT1pJiZBLmdldE9mZnNldCgpPT09bjtuPkEuZ2V0T2Zmc2V0KCk7KXtjb25zdCBuPXRoaXMucGFyc2VOb2RlKEEsZSk7bnVsbCE9PW4mJnRoaXMucGFyc2VTdWJOb2RlKG8sdCxuKX1yZXR1cm4gdC5wcm9wZXJ0eUxpc3Q9cywibnVtYmVyIj09dHlwZW9mIGEmJih0LmlkPWEpLCIiIT09QiYmKHQuYXR0ck5hbWU9QiksIiIhPT1jJiYodC5hdHRyVHlwZT1jKSwiIiE9PW8mJih0Lm5hbWU9byksdH1wYXJzZVN1Yk5vZGUoQSxlLHQpe2lmKCEwPT09dC5zaW5nbGVQcm9wZXJ0eSl7Y29uc3QgQT10LnByb3BlcnR5TGlzdFswXTtBcnJheS5pc0FycmF5KEEpPyhlW3QubmFtZV09dCx0LmE9QSk6ZVt0Lm5hbWVdPUF9ZWxzZSBpZigiQ29ubmVjdGlvbnMiPT09QSYmIkMiPT09dC5uYW1lKXtjb25zdCBBPVtdO3QucHJvcGVydHlMaXN0LmZvckVhY2goKGZ1bmN0aW9uKGUsdCl7MCE9PXQmJkEucHVzaChlKX0pKSx2b2lkIDA9PT1lLmNvbm5lY3Rpb25zJiYoZS5jb25uZWN0aW9ucz1bXSksZS5jb25uZWN0aW9ucy5wdXNoKEEpfWVsc2UgaWYoIlByb3BlcnRpZXM3MCI9PT10Lm5hbWUpe09iamVjdC5rZXlzKHQpLmZvckVhY2goKGZ1bmN0aW9uKEEpe2VbQV09dFtBXX0pKX1lbHNlIGlmKCJQcm9wZXJ0aWVzNzAiPT09QSYmIlAiPT09dC5uYW1lKXtsZXQgQT10LnByb3BlcnR5TGlzdFswXSxuPXQucHJvcGVydHlMaXN0WzFdO2NvbnN0IGk9dC5wcm9wZXJ0eUxpc3RbMl0scj10LnByb3BlcnR5TGlzdFszXTtsZXQgbzswPT09QS5pbmRleE9mKCJMY2wgIikmJihBPUEucmVwbGFjZSgiTGNsICIsIkxjbF8iKSksMD09PW4uaW5kZXhPZigiTGNsICIpJiYobj1uLnJlcGxhY2UoIkxjbCAiLCJMY2xfIikpLG89IkNvbG9yIj09PW58fCJDb2xvclJHQiI9PT1ufHwiVmVjdG9yIj09PW58fCJWZWN0b3IzRCI9PT1ufHwwPT09bi5pbmRleE9mKCJMY2xfIik/W3QucHJvcGVydHlMaXN0WzRdLHQucHJvcGVydHlMaXN0WzVdLHQucHJvcGVydHlMaXN0WzZdXTp0LnByb3BlcnR5TGlzdFs0XSxlW0FdPXt0eXBlOm4sdHlwZTI6aSxmbGFnOnIsdmFsdWU6b319ZWxzZSB2b2lkIDA9PT1lW3QubmFtZV0/Im51bWJlciI9PXR5cGVvZiB0LmlkPyhlW3QubmFtZV09e30sZVt0Lm5hbWVdW3QuaWRdPXQpOmVbdC5uYW1lXT10OiJQb3NlTm9kZSI9PT10Lm5hbWU/KEFycmF5LmlzQXJyYXkoZVt0Lm5hbWVdKXx8KGVbdC5uYW1lXT1bZVt0Lm5hbWVdXSksZVt0Lm5hbWVdLnB1c2godCkpOnZvaWQgMD09PWVbdC5uYW1lXVt0LmlkXSYmKGVbdC5uYW1lXVt0LmlkXT10KX1wYXJzZVByb3BlcnR5KEEpe2NvbnN0IGU9QS5nZXRTdHJpbmcoMSk7bGV0IHQ7c3dpdGNoKGUpe2Nhc2UiQyI6cmV0dXJuIEEuZ2V0Qm9vbGVhbigpO2Nhc2UiRCI6cmV0dXJuIEEuZ2V0RmxvYXQ2NCgpO2Nhc2UiRiI6cmV0dXJuIEEuZ2V0RmxvYXQzMigpO2Nhc2UiSSI6cmV0dXJuIEEuZ2V0SW50MzIoKTtjYXNlIkwiOnJldHVybiBBLmdldEludDY0KCk7Y2FzZSJSIjpyZXR1cm4gdD1BLmdldFVpbnQzMigpLEEuZ2V0QXJyYXlCdWZmZXIodCk7Y2FzZSJTIjpyZXR1cm4gdD1BLmdldFVpbnQzMigpLEEuZ2V0U3RyaW5nKHQpO2Nhc2UiWSI6cmV0dXJuIEEuZ2V0SW50MTYoKTtjYXNlImIiOmNhc2UiYyI6Y2FzZSJkIjpjYXNlImYiOmNhc2UiaSI6Y2FzZSJsIjpjb25zdCBuPUEuZ2V0VWludDMyKCksaT1BLmdldFVpbnQzMigpLHI9QS5nZXRVaW50MzIoKTtpZigwPT09aSlzd2l0Y2goZSl7Y2FzZSJiIjpjYXNlImMiOnJldHVybiBBLmdldEJvb2xlYW5BcnJheShuKTtjYXNlImQiOnJldHVybiBBLmdldEZsb2F0NjRBcnJheShuKTtjYXNlImYiOnJldHVybiBBLmdldEZsb2F0MzJBcnJheShuKTtjYXNlImkiOnJldHVybiBBLmdldEludDMyQXJyYXkobik7Y2FzZSJsIjpyZXR1cm4gQS5nZXRJbnQ2NEFycmF5KG4pfWNvbnN0IG89UihuZXcgVWludDhBcnJheShBLmdldEFycmF5QnVmZmVyKHIpKSkscz1uZXcgWChvLmJ1ZmZlcik7c3dpdGNoKGUpe2Nhc2UiYiI6Y2FzZSJjIjpyZXR1cm4gcy5nZXRCb29sZWFuQXJyYXkobik7Y2FzZSJkIjpyZXR1cm4gcy5nZXRGbG9hdDY0QXJyYXkobik7Y2FzZSJmIjpyZXR1cm4gcy5nZXRGbG9hdDMyQXJyYXkobik7Y2FzZSJpIjpyZXR1cm4gcy5nZXRJbnQzMkFycmF5KG4pO2Nhc2UibCI6cmV0dXJuIHMuZ2V0SW50NjRBcnJheShuKX1icmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVEhSRUUuRkJYTG9hZGVyOiBVbmtub3duIHByb3BlcnR5IHR5cGUgIitlKX19fWNsYXNzIFh7Y29uc3RydWN0b3IoQSxlKXt0aGlzLmR2PW5ldyBEYXRhVmlldyhBKSx0aGlzLm9mZnNldD0wLHRoaXMubGl0dGxlRW5kaWFuPXZvaWQgMD09PWV8fGUsdGhpcy5fdGV4dERlY29kZXI9bmV3IFRleHREZWNvZGVyfWdldE9mZnNldCgpe3JldHVybiB0aGlzLm9mZnNldH1zaXplKCl7cmV0dXJuIHRoaXMuZHYuYnVmZmVyLmJ5dGVMZW5ndGh9c2tpcChBKXt0aGlzLm9mZnNldCs9QX1nZXRCb29sZWFuKCl7cmV0dXJuIDE9PSgxJnRoaXMuZ2V0VWludDgoKSl9Z2V0Qm9vbGVhbkFycmF5KEEpe2NvbnN0IGU9W107Zm9yKGxldCB0PTA7dDxBO3QrKyllLnB1c2godGhpcy5nZXRCb29sZWFuKCkpO3JldHVybiBlfWdldFVpbnQ4KCl7Y29uc3QgQT10aGlzLmR2LmdldFVpbnQ4KHRoaXMub2Zmc2V0KTtyZXR1cm4gdGhpcy5vZmZzZXQrPTEsQX1nZXRJbnQxNigpe2NvbnN0IEE9dGhpcy5kdi5nZXRJbnQxNih0aGlzLm9mZnNldCx0aGlzLmxpdHRsZUVuZGlhbik7cmV0dXJuIHRoaXMub2Zmc2V0Kz0yLEF9Z2V0SW50MzIoKXtjb25zdCBBPXRoaXMuZHYuZ2V0SW50MzIodGhpcy5vZmZzZXQsdGhpcy5saXR0bGVFbmRpYW4pO3JldHVybiB0aGlzLm9mZnNldCs9NCxBfWdldEludDMyQXJyYXkoQSl7Y29uc3QgZT1bXTtmb3IobGV0IHQ9MDt0PEE7dCsrKWUucHVzaCh0aGlzLmdldEludDMyKCkpO3JldHVybiBlfWdldFVpbnQzMigpe2NvbnN0IEE9dGhpcy5kdi5nZXRVaW50MzIodGhpcy5vZmZzZXQsdGhpcy5saXR0bGVFbmRpYW4pO3JldHVybiB0aGlzLm9mZnNldCs9NCxBfWdldEludDY0KCl7bGV0IEEsZTtyZXR1cm4gdGhpcy5saXR0bGVFbmRpYW4/KEE9dGhpcy5nZXRVaW50MzIoKSxlPXRoaXMuZ2V0VWludDMyKCkpOihlPXRoaXMuZ2V0VWludDMyKCksQT10aGlzLmdldFVpbnQzMigpKSwyMTQ3NDgzNjQ4JmU/KGU9NDI5NDk2NzI5NSZ+ZSxBPTQyOTQ5NjcyOTUmfkEsNDI5NDk2NzI5NT09PUEmJihlPWUrMSY0Mjk0OTY3Mjk1KSxBPUErMSY0Mjk0OTY3Mjk1LC0oNDI5NDk2NzI5NiplK0EpKTo0Mjk0OTY3Mjk2KmUrQX1nZXRJbnQ2NEFycmF5KEEpe2NvbnN0IGU9W107Zm9yKGxldCB0PTA7dDxBO3QrKyllLnB1c2godGhpcy5nZXRJbnQ2NCgpKTtyZXR1cm4gZX1nZXRVaW50NjQoKXtsZXQgQSxlO3JldHVybiB0aGlzLmxpdHRsZUVuZGlhbj8oQT10aGlzLmdldFVpbnQzMigpLGU9dGhpcy5nZXRVaW50MzIoKSk6KGU9dGhpcy5nZXRVaW50MzIoKSxBPXRoaXMuZ2V0VWludDMyKCkpLDQyOTQ5NjcyOTYqZStBfWdldEZsb2F0MzIoKXtjb25zdCBBPXRoaXMuZHYuZ2V0RmxvYXQzMih0aGlzLm9mZnNldCx0aGlzLmxpdHRsZUVuZGlhbik7cmV0dXJuIHRoaXMub2Zmc2V0Kz00LEF9Z2V0RmxvYXQzMkFycmF5KEEpe2NvbnN0IGU9W107Zm9yKGxldCB0PTA7dDxBO3QrKyllLnB1c2godGhpcy5nZXRGbG9hdDMyKCkpO3JldHVybiBlfWdldEZsb2F0NjQoKXtjb25zdCBBPXRoaXMuZHYuZ2V0RmxvYXQ2NCh0aGlzLm9mZnNldCx0aGlzLmxpdHRsZUVuZGlhbik7cmV0dXJuIHRoaXMub2Zmc2V0Kz04LEF9Z2V0RmxvYXQ2NEFycmF5KEEpe2NvbnN0IGU9W107Zm9yKGxldCB0PTA7dDxBO3QrKyllLnB1c2godGhpcy5nZXRGbG9hdDY0KCkpO3JldHVybiBlfWdldEFycmF5QnVmZmVyKEEpe2NvbnN0IGU9dGhpcy5kdi5idWZmZXIuc2xpY2UodGhpcy5vZmZzZXQsdGhpcy5vZmZzZXQrQSk7cmV0dXJuIHRoaXMub2Zmc2V0Kz1BLGV9Z2V0U3RyaW5nKEEpe2NvbnN0IGU9dGhpcy5vZmZzZXQ7bGV0IHQ9bmV3IFVpbnQ4QXJyYXkodGhpcy5kdi5idWZmZXIsZSxBKTt0aGlzLnNraXAoQSk7Y29uc3Qgbj10LmluZGV4T2YoMCk7cmV0dXJuIG4+PTAmJih0PW5ldyBVaW50OEFycmF5KHRoaXMuZHYuYnVmZmVyLGUsbikpLHRoaXMuX3RleHREZWNvZGVyLmRlY29kZSh0KX19Y2xhc3MgWnthZGQoQSxlKXt0aGlzW0FdPWV9fWZ1bmN0aW9uIF8oQSl7Y29uc3QgZT1BLm1hdGNoKC9GQlhWZXJzaW9uOiAoXGQrKS8pO2lmKGUpe3JldHVybiBwYXJzZUludChlWzFdKX10aHJvdyBuZXcgRXJyb3IoIlRIUkVFLkZCWExvYWRlcjogQ2Fubm90IGZpbmQgdGhlIHZlcnNpb24gbnVtYmVyIGZvciB0aGUgZmlsZSBnaXZlbi4iKX1mdW5jdGlvbiBxKEEpe3JldHVybiBBLzQ2MTg2MTU4ZTN9Y29uc3QgJD1bXTtmdW5jdGlvbiBBQShBLGUsdCxuKXtsZXQgaTtzd2l0Y2gobi5tYXBwaW5nVHlwZSl7Y2FzZSJCeVBvbHlnb25WZXJ0ZXgiOmk9QTticmVhaztjYXNlIkJ5UG9seWdvbiI6aT1lO2JyZWFrO2Nhc2UiQnlWZXJ0aWNlIjppPXQ7YnJlYWs7Y2FzZSJBbGxTYW1lIjppPW4uaW5kaWNlc1swXTticmVhaztkZWZhdWx0OmNvbnNvbGUud2FybigiVEhSRUUuRkJYTG9hZGVyOiB1bmtub3duIGF0dHJpYnV0ZSBtYXBwaW5nIHR5cGUgIituLm1hcHBpbmdUeXBlKX0iSW5kZXhUb0RpcmVjdCI9PT1uLnJlZmVyZW5jZVR5cGUmJihpPW4uaW5kaWNlc1tpXSk7Y29uc3Qgcj1pKm4uZGF0YVNpemUsbz1yK24uZGF0YVNpemU7cmV0dXJuIGZ1bmN0aW9uKEEsZSx0LG4pe2ZvcihsZXQgaT10LHI9MDtpPG47aSsrLHIrKylBW3JdPWVbaV07cmV0dXJuIEF9KCQsbi5idWZmZXIscixvKX1jb25zdCBlQT1uZXcgbi5FdWxlcix0QT1uZXcgbi5WZWN0b3IzO2Z1bmN0aW9uIG5BKEEpe2NvbnN0IGU9bmV3IG4uTWF0cml4NCx0PW5ldyBuLk1hdHJpeDQsaT1uZXcgbi5NYXRyaXg0LHI9bmV3IG4uTWF0cml4NCxvPW5ldyBuLk1hdHJpeDQscz1uZXcgbi5NYXRyaXg0LGE9bmV3IG4uTWF0cml4NCxCPW5ldyBuLk1hdHJpeDQsYz1uZXcgbi5NYXRyaXg0LGc9bmV3IG4uTWF0cml4NCxFPW5ldyBuLk1hdHJpeDQsUT1uZXcgbi5NYXRyaXg0LHU9QS5pbmhlcml0VHlwZT9BLmluaGVyaXRUeXBlOjA7aWYoQS50cmFuc2xhdGlvbiYmZS5zZXRQb3NpdGlvbih0QS5mcm9tQXJyYXkoQS50cmFuc2xhdGlvbikpLEEucHJlUm90YXRpb24pe2NvbnN0IGU9QS5wcmVSb3RhdGlvbi5tYXAobi5NYXRoVXRpbHMuZGVnVG9SYWQpO2UucHVzaChBLmV1bGVyT3JkZXJ8fG4uRXVsZXIuREVGQVVMVF9PUkRFUiksdC5tYWtlUm90YXRpb25Gcm9tRXVsZXIoZUEuZnJvbUFycmF5KGUpKX1pZihBLnJvdGF0aW9uKXtjb25zdCBlPUEucm90YXRpb24ubWFwKG4uTWF0aFV0aWxzLmRlZ1RvUmFkKTtlLnB1c2goQS5ldWxlck9yZGVyfHxuLkV1bGVyLkRFRkFVTFRfT1JERVIpLGkubWFrZVJvdGF0aW9uRnJvbUV1bGVyKGVBLmZyb21BcnJheShlKSl9aWYoQS5wb3N0Um90YXRpb24pe2NvbnN0IGU9QS5wb3N0Um90YXRpb24ubWFwKG4uTWF0aFV0aWxzLmRlZ1RvUmFkKTtlLnB1c2goQS5ldWxlck9yZGVyfHxuLkV1bGVyLkRFRkFVTFRfT1JERVIpLHIubWFrZVJvdGF0aW9uRnJvbUV1bGVyKGVBLmZyb21BcnJheShlKSksci5pbnZlcnQoKX1BLnNjYWxlJiZvLnNjYWxlKHRBLmZyb21BcnJheShBLnNjYWxlKSksQS5zY2FsaW5nT2Zmc2V0JiZhLnNldFBvc2l0aW9uKHRBLmZyb21BcnJheShBLnNjYWxpbmdPZmZzZXQpKSxBLnNjYWxpbmdQaXZvdCYmcy5zZXRQb3NpdGlvbih0QS5mcm9tQXJyYXkoQS5zY2FsaW5nUGl2b3QpKSxBLnJvdGF0aW9uT2Zmc2V0JiZCLnNldFBvc2l0aW9uKHRBLmZyb21BcnJheShBLnJvdGF0aW9uT2Zmc2V0KSksQS5yb3RhdGlvblBpdm90JiZjLnNldFBvc2l0aW9uKHRBLmZyb21BcnJheShBLnJvdGF0aW9uUGl2b3QpKSxBLnBhcmVudE1hdHJpeFdvcmxkJiYoRS5jb3B5KEEucGFyZW50TWF0cml4KSxnLmNvcHkoQS5wYXJlbnRNYXRyaXhXb3JsZCkpO2NvbnN0IGw9dC5jbG9uZSgpLm11bHRpcGx5KGkpLm11bHRpcGx5KHIpLGg9bmV3IG4uTWF0cml4NDtoLmV4dHJhY3RSb3RhdGlvbihnKTtjb25zdCB3PW5ldyBuLk1hdHJpeDQ7dy5jb3B5UG9zaXRpb24oZyk7Y29uc3QgQz13LmNsb25lKCkuaW52ZXJ0KCkubXVsdGlwbHkoZyksST1oLmNsb25lKCkuaW52ZXJ0KCkubXVsdGlwbHkoQyksTT1vLGQ9bmV3IG4uTWF0cml4NDtpZigwPT09dSlkLmNvcHkoaCkubXVsdGlwbHkobCkubXVsdGlwbHkoSSkubXVsdGlwbHkoTSk7ZWxzZSBpZigxPT09dSlkLmNvcHkoaCkubXVsdGlwbHkoSSkubXVsdGlwbHkobCkubXVsdGlwbHkoTSk7ZWxzZXtjb25zdCBBPShuZXcgbi5NYXRyaXg0KS5zY2FsZSgobmV3IG4uVmVjdG9yMykuc2V0RnJvbU1hdHJpeFNjYWxlKEUpKS5jbG9uZSgpLmludmVydCgpLGU9SS5jbG9uZSgpLm11bHRpcGx5KEEpO2QuY29weShoKS5tdWx0aXBseShsKS5tdWx0aXBseShlKS5tdWx0aXBseShNKX1jb25zdCBwPWMuY2xvbmUoKS5pbnZlcnQoKSxtPXMuY2xvbmUoKS5pbnZlcnQoKTtsZXQgRj1lLmNsb25lKCkubXVsdGlwbHkoQikubXVsdGlwbHkoYykubXVsdGlwbHkodCkubXVsdGlwbHkoaSkubXVsdGlwbHkocikubXVsdGlwbHkocCkubXVsdGlwbHkoYSkubXVsdGlwbHkocykubXVsdGlwbHkobykubXVsdGlwbHkobSk7Y29uc3QgRD0obmV3IG4uTWF0cml4NCkuY29weVBvc2l0aW9uKEYpLFk9Zy5jbG9uZSgpLm11bHRpcGx5KEQpO3JldHVybiBRLmNvcHlQb3NpdGlvbihZKSxGPVEuY2xvbmUoKS5tdWx0aXBseShkKSxGLnByZW11bHRpcGx5KGcuaW52ZXJ0KCkpLEZ9ZnVuY3Rpb24gaUEoQSl7Y29uc3QgZT1bIlpZWCIsIllaWCIsIlhaWSIsIlpYWSIsIllYWiIsIlhZWiJdO3JldHVybiA2PT09KEE9QXx8MCk/KGNvbnNvbGUud2FybigiVEhSRUUuRkJYTG9hZGVyOiB1bnN1cHBvcnRlZCBFdWxlciBPcmRlcjogU3BoZXJpY2FsIFhZWi4gQW5pbWF0aW9ucyBhbmQgcm90YXRpb25zIG1heSBiZSBpbmNvcnJlY3QuIiksZVswXSk6ZVtBXX1mdW5jdGlvbiByQShBKXtyZXR1cm4gQS5zcGxpdCgiLCIpLm1hcCgoZnVuY3Rpb24oQSl7cmV0dXJuIHBhcnNlRmxvYXQoQSl9KSl9ZnVuY3Rpb24gb0EoQSxlLHQpe3JldHVybiB2b2lkIDA9PT1lJiYoZT0wKSx2b2lkIDA9PT10JiYodD1BLmJ5dGVMZW5ndGgpLChuZXcgVGV4dERlY29kZXIpLmRlY29kZShuZXcgVWludDhBcnJheShBLGUsdCkpfWZ1bmN0aW9uIHNBKEEsZSx0KXtyZXR1cm4gQS5zbGljZSgwLGUpLmNvbmNhdCh0KS5jb25jYXQoQS5zbGljZShlKSl9fSxmdW5jdGlvbihBLGUsdCl7InVzZSBzdHJpY3QiO3QucihlKSx0LmQoZSwiQ29udmV4R2VvbWV0cnkiLChmdW5jdGlvbigpe3JldHVybiB1fSkpO3ZhciBuPXQoMCk7Y29uc3QgaT1uZXcgbi5WZWN0b3IzLHI9bmV3IG4uTGluZTMsbz1uZXcgbi5QbGFuZSxzPW5ldyBuLlZlY3RvcjMsYT1uZXcgbi5UcmlhbmdsZTtjbGFzcyBCe2NvbnN0cnVjdG9yKCl7dGhpcy50b2xlcmFuY2U9LTEsdGhpcy5mYWNlcz1bXSx0aGlzLm5ld0ZhY2VzPVtdLHRoaXMuYXNzaWduZWQ9bmV3IFEsdGhpcy51bmFzc2lnbmVkPW5ldyBRLHRoaXMudmVydGljZXM9W119c2V0RnJvbVBvaW50cyhBKXtpZihBLmxlbmd0aD49NCl7dGhpcy5tYWtlRW1wdHkoKTtmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspdGhpcy52ZXJ0aWNlcy5wdXNoKG5ldyBFKEFbZV0pKTt0aGlzLmNvbXB1dGUoKX1yZXR1cm4gdGhpc31zZXRGcm9tT2JqZWN0KEEpe2NvbnN0IGU9W107cmV0dXJuIEEudXBkYXRlTWF0cml4V29ybGQoITApLEEudHJhdmVyc2UoKGZ1bmN0aW9uKEEpe2NvbnN0IHQ9QS5nZW9tZXRyeTtpZih2b2lkIDAhPT10KXtjb25zdCBpPXQuYXR0cmlidXRlcy5wb3NpdGlvbjtpZih2b2lkIDAhPT1pKWZvcihsZXQgdD0wLHI9aS5jb3VudDt0PHI7dCsrKXtjb25zdCByPW5ldyBuLlZlY3RvcjM7ci5mcm9tQnVmZmVyQXR0cmlidXRlKGksdCkuYXBwbHlNYXRyaXg0KEEubWF0cml4V29ybGQpLGUucHVzaChyKX19fSkpLHRoaXMuc2V0RnJvbVBvaW50cyhlKX1jb250YWluc1BvaW50KEEpe2NvbnN0IGU9dGhpcy5mYWNlcztmb3IobGV0IHQ9MCxuPWUubGVuZ3RoO3Q8bjt0Kyspe2lmKGVbdF0uZGlzdGFuY2VUb1BvaW50KEEpPnRoaXMudG9sZXJhbmNlKXJldHVybiExfXJldHVybiEwfWludGVyc2VjdFJheShBLGUpe2NvbnN0IHQ9dGhpcy5mYWNlcztsZXQgbj0tMS8wLGk9MS8wO2ZvcihsZXQgZT0wLHI9dC5sZW5ndGg7ZTxyO2UrKyl7Y29uc3Qgcj10W2VdLG89ci5kaXN0YW5jZVRvUG9pbnQoQS5vcmlnaW4pLHM9ci5ub3JtYWwuZG90KEEuZGlyZWN0aW9uKTtpZihvPjAmJnM+PTApcmV0dXJuIG51bGw7Y29uc3QgYT0wIT09cz8tby9zOjA7aWYoIShhPD0wKSYmKHM+MD9pPU1hdGgubWluKGEsaSk6bj1NYXRoLm1heChhLG4pLG4+aSkpcmV0dXJuIG51bGx9cmV0dXJuIG4hPT0tMS8wP0EuYXQobixlKTpBLmF0KGksZSksZX1pbnRlcnNlY3RzUmF5KEEpe3JldHVybiBudWxsIT09dGhpcy5pbnRlcnNlY3RSYXkoQSxpKX1tYWtlRW1wdHkoKXtyZXR1cm4gdGhpcy5mYWNlcz1bXSx0aGlzLnZlcnRpY2VzPVtdLHRoaXN9YWRkVmVydGV4VG9GYWNlKEEsZSl7cmV0dXJuIEEuZmFjZT1lLG51bGw9PT1lLm91dHNpZGU/dGhpcy5hc3NpZ25lZC5hcHBlbmQoQSk6dGhpcy5hc3NpZ25lZC5pbnNlcnRCZWZvcmUoZS5vdXRzaWRlLEEpLGUub3V0c2lkZT1BLHRoaXN9cmVtb3ZlVmVydGV4RnJvbUZhY2UoQSxlKXtyZXR1cm4gQT09PWUub3V0c2lkZSYmKG51bGwhPT1BLm5leHQmJkEubmV4dC5mYWNlPT09ZT9lLm91dHNpZGU9QS5uZXh0OmUub3V0c2lkZT1udWxsKSx0aGlzLmFzc2lnbmVkLnJlbW92ZShBKSx0aGlzfXJlbW92ZUFsbFZlcnRpY2VzRnJvbUZhY2UoQSl7aWYobnVsbCE9PUEub3V0c2lkZSl7Y29uc3QgZT1BLm91dHNpZGU7bGV0IHQ9QS5vdXRzaWRlO2Zvcig7bnVsbCE9PXQubmV4dCYmdC5uZXh0LmZhY2U9PT1BOyl0PXQubmV4dDtyZXR1cm4gdGhpcy5hc3NpZ25lZC5yZW1vdmVTdWJMaXN0KGUsdCksZS5wcmV2PXQubmV4dD1udWxsLEEub3V0c2lkZT1udWxsLGV9fWRlbGV0ZUZhY2VWZXJ0aWNlcyhBLGUpe2NvbnN0IHQ9dGhpcy5yZW1vdmVBbGxWZXJ0aWNlc0Zyb21GYWNlKEEpO2lmKHZvaWQgMCE9PXQpaWYodm9pZCAwPT09ZSl0aGlzLnVuYXNzaWduZWQuYXBwZW5kQ2hhaW4odCk7ZWxzZXtsZXQgQT10O2Rve2NvbnN0IHQ9QS5uZXh0O2UuZGlzdGFuY2VUb1BvaW50KEEucG9pbnQpPnRoaXMudG9sZXJhbmNlP3RoaXMuYWRkVmVydGV4VG9GYWNlKEEsZSk6dGhpcy51bmFzc2lnbmVkLmFwcGVuZChBKSxBPXR9d2hpbGUobnVsbCE9PUEpfXJldHVybiB0aGlzfXJlc29sdmVVbmFzc2lnbmVkUG9pbnRzKEEpe2lmKCExPT09dGhpcy51bmFzc2lnbmVkLmlzRW1wdHkoKSl7bGV0IGU9dGhpcy51bmFzc2lnbmVkLmZpcnN0KCk7ZG97Y29uc3QgdD1lLm5leHQ7bGV0IG49dGhpcy50b2xlcmFuY2UsaT1udWxsO2ZvcihsZXQgdD0wO3Q8QS5sZW5ndGg7dCsrKXtjb25zdCByPUFbdF07aWYoMD09PXIubWFyayl7Y29uc3QgQT1yLmRpc3RhbmNlVG9Qb2ludChlLnBvaW50KTtpZihBPm4mJihuPUEsaT1yKSxuPjFlMyp0aGlzLnRvbGVyYW5jZSlicmVha319bnVsbCE9PWkmJnRoaXMuYWRkVmVydGV4VG9GYWNlKGUsaSksZT10fXdoaWxlKG51bGwhPT1lKX1yZXR1cm4gdGhpc31jb21wdXRlRXh0cmVtZXMoKXtjb25zdCBBPW5ldyBuLlZlY3RvcjMsZT1uZXcgbi5WZWN0b3IzLHQ9W10saT1bXTtmb3IobGV0IEE9MDtBPDM7QSsrKXRbQV09aVtBXT10aGlzLnZlcnRpY2VzWzBdO0EuY29weSh0aGlzLnZlcnRpY2VzWzBdLnBvaW50KSxlLmNvcHkodGhpcy52ZXJ0aWNlc1swXS5wb2ludCk7Zm9yKGxldCBuPTAscj10aGlzLnZlcnRpY2VzLmxlbmd0aDtuPHI7bisrKXtjb25zdCByPXRoaXMudmVydGljZXNbbl0sbz1yLnBvaW50O2ZvcihsZXQgZT0wO2U8MztlKyspby5nZXRDb21wb25lbnQoZSk8QS5nZXRDb21wb25lbnQoZSkmJihBLnNldENvbXBvbmVudChlLG8uZ2V0Q29tcG9uZW50KGUpKSx0W2VdPXIpO2ZvcihsZXQgQT0wO0E8MztBKyspby5nZXRDb21wb25lbnQoQSk+ZS5nZXRDb21wb25lbnQoQSkmJihlLnNldENvbXBvbmVudChBLG8uZ2V0Q29tcG9uZW50KEEpKSxpW0FdPXIpfXJldHVybiB0aGlzLnRvbGVyYW5jZT0zKk51bWJlci5FUFNJTE9OKihNYXRoLm1heChNYXRoLmFicyhBLngpLE1hdGguYWJzKGUueCkpK01hdGgubWF4KE1hdGguYWJzKEEueSksTWF0aC5hYnMoZS55KSkrTWF0aC5tYXgoTWF0aC5hYnMoQS56KSxNYXRoLmFicyhlLnopKSkse21pbjp0LG1heDppfX1jb21wdXRlSW5pdGlhbEh1bGwoKXtjb25zdCBBPXRoaXMudmVydGljZXMsZT10aGlzLmNvbXB1dGVFeHRyZW1lcygpLHQ9ZS5taW4sbj1lLm1heDtsZXQgaT0wLGE9MDtmb3IobGV0IEE9MDtBPDM7QSsrKXtjb25zdCBlPW5bQV0ucG9pbnQuZ2V0Q29tcG9uZW50KEEpLXRbQV0ucG9pbnQuZ2V0Q29tcG9uZW50KEEpO2U+aSYmKGk9ZSxhPUEpfWNvbnN0IEI9dFthXSxnPW5bYV07bGV0IEUsUTtpPTAsci5zZXQoQi5wb2ludCxnLnBvaW50KTtmb3IobGV0IGU9MCx0PXRoaXMudmVydGljZXMubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QVtlXTtpZih0IT09QiYmdCE9PWcpe3IuY2xvc2VzdFBvaW50VG9Qb2ludCh0LnBvaW50LCEwLHMpO2NvbnN0IEE9cy5kaXN0YW5jZVRvU3F1YXJlZCh0LnBvaW50KTtBPmkmJihpPUEsRT10KX19aT0tMSxvLnNldEZyb21Db3BsYW5hclBvaW50cyhCLnBvaW50LGcucG9pbnQsRS5wb2ludCk7Zm9yKGxldCBlPTAsdD10aGlzLnZlcnRpY2VzLmxlbmd0aDtlPHQ7ZSsrKXtjb25zdCB0PUFbZV07aWYodCE9PUImJnQhPT1nJiZ0IT09RSl7Y29uc3QgQT1NYXRoLmFicyhvLmRpc3RhbmNlVG9Qb2ludCh0LnBvaW50KSk7QT5pJiYoaT1BLFE9dCl9fWNvbnN0IHU9W107aWYoby5kaXN0YW5jZVRvUG9pbnQoUS5wb2ludCk8MCl7dS5wdXNoKGMuY3JlYXRlKEIsZyxFKSxjLmNyZWF0ZShRLGcsQiksYy5jcmVhdGUoUSxFLGcpLGMuY3JlYXRlKFEsQixFKSk7Zm9yKGxldCBBPTA7QTwzO0ErKyl7Y29uc3QgZT0oQSsxKSUzO3VbQSsxXS5nZXRFZGdlKDIpLnNldFR3aW4odVswXS5nZXRFZGdlKGUpKSx1W0ErMV0uZ2V0RWRnZSgxKS5zZXRUd2luKHVbZSsxXS5nZXRFZGdlKDApKX19ZWxzZXt1LnB1c2goYy5jcmVhdGUoQixFLGcpLGMuY3JlYXRlKFEsQixnKSxjLmNyZWF0ZShRLGcsRSksYy5jcmVhdGUoUSxFLEIpKTtmb3IobGV0IEE9MDtBPDM7QSsrKXtjb25zdCBlPShBKzEpJTM7dVtBKzFdLmdldEVkZ2UoMikuc2V0VHdpbih1WzBdLmdldEVkZ2UoKDMtQSklMykpLHVbQSsxXS5nZXRFZGdlKDApLnNldFR3aW4odVtlKzFdLmdldEVkZ2UoMSkpfX1mb3IobGV0IEE9MDtBPDQ7QSsrKXRoaXMuZmFjZXMucHVzaCh1W0FdKTtmb3IobGV0IGU9MCx0PUEubGVuZ3RoO2U8dDtlKyspe2NvbnN0IHQ9QVtlXTtpZih0IT09QiYmdCE9PWcmJnQhPT1FJiZ0IT09USl7aT10aGlzLnRvbGVyYW5jZTtsZXQgQT1udWxsO2ZvcihsZXQgZT0wO2U8NDtlKyspe2NvbnN0IG49dGhpcy5mYWNlc1tlXS5kaXN0YW5jZVRvUG9pbnQodC5wb2ludCk7bj5pJiYoaT1uLEE9dGhpcy5mYWNlc1tlXSl9bnVsbCE9PUEmJnRoaXMuYWRkVmVydGV4VG9GYWNlKHQsQSl9fXJldHVybiB0aGlzfXJlaW5kZXhGYWNlcygpe2NvbnN0IEE9W107Zm9yKGxldCBlPTA7ZTx0aGlzLmZhY2VzLmxlbmd0aDtlKyspe2NvbnN0IHQ9dGhpcy5mYWNlc1tlXTswPT09dC5tYXJrJiZBLnB1c2godCl9cmV0dXJuIHRoaXMuZmFjZXM9QSx0aGlzfW5leHRWZXJ0ZXhUb0FkZCgpe2lmKCExPT09dGhpcy5hc3NpZ25lZC5pc0VtcHR5KCkpe2xldCBBLGU9MDtjb25zdCB0PXRoaXMuYXNzaWduZWQuZmlyc3QoKS5mYWNlO2xldCBuPXQub3V0c2lkZTtkb3tjb25zdCBpPXQuZGlzdGFuY2VUb1BvaW50KG4ucG9pbnQpO2k+ZSYmKGU9aSxBPW4pLG49bi5uZXh0fXdoaWxlKG51bGwhPT1uJiZuLmZhY2U9PT10KTtyZXR1cm4gQX19Y29tcHV0ZUhvcml6b24oQSxlLHQsbil7bGV0IGk7dGhpcy5kZWxldGVGYWNlVmVydGljZXModCksdC5tYXJrPTEsaT1udWxsPT09ZT9lPXQuZ2V0RWRnZSgwKTplLm5leHQ7ZG97Y29uc3QgZT1pLnR3aW4sdD1lLmZhY2U7MD09PXQubWFyayYmKHQuZGlzdGFuY2VUb1BvaW50KEEpPnRoaXMudG9sZXJhbmNlP3RoaXMuY29tcHV0ZUhvcml6b24oQSxlLHQsbik6bi5wdXNoKGkpKSxpPWkubmV4dH13aGlsZShpIT09ZSk7cmV0dXJuIHRoaXN9YWRkQWRqb2luaW5nRmFjZShBLGUpe2NvbnN0IHQ9Yy5jcmVhdGUoQSxlLnRhaWwoKSxlLmhlYWQoKSk7cmV0dXJuIHRoaXMuZmFjZXMucHVzaCh0KSx0LmdldEVkZ2UoLTEpLnNldFR3aW4oZS50d2luKSx0LmdldEVkZ2UoMCl9YWRkTmV3RmFjZXMoQSxlKXt0aGlzLm5ld0ZhY2VzPVtdO2xldCB0PW51bGwsbj1udWxsO2ZvcihsZXQgaT0wO2k8ZS5sZW5ndGg7aSsrKXtjb25zdCByPWVbaV0sbz10aGlzLmFkZEFkam9pbmluZ0ZhY2UoQSxyKTtudWxsPT09dD90PW86by5uZXh0LnNldFR3aW4obiksdGhpcy5uZXdGYWNlcy5wdXNoKG8uZmFjZSksbj1vfXJldHVybiB0Lm5leHQuc2V0VHdpbihuKSx0aGlzfWFkZFZlcnRleFRvSHVsbChBKXtjb25zdCBlPVtdO3JldHVybiB0aGlzLnVuYXNzaWduZWQuY2xlYXIoKSx0aGlzLnJlbW92ZVZlcnRleEZyb21GYWNlKEEsQS5mYWNlKSx0aGlzLmNvbXB1dGVIb3Jpem9uKEEucG9pbnQsbnVsbCxBLmZhY2UsZSksdGhpcy5hZGROZXdGYWNlcyhBLGUpLHRoaXMucmVzb2x2ZVVuYXNzaWduZWRQb2ludHModGhpcy5uZXdGYWNlcyksdGhpc31jbGVhbnVwKCl7cmV0dXJuIHRoaXMuYXNzaWduZWQuY2xlYXIoKSx0aGlzLnVuYXNzaWduZWQuY2xlYXIoKSx0aGlzLm5ld0ZhY2VzPVtdLHRoaXN9Y29tcHV0ZSgpe2xldCBBO2Zvcih0aGlzLmNvbXB1dGVJbml0aWFsSHVsbCgpO3ZvaWQgMCE9PShBPXRoaXMubmV4dFZlcnRleFRvQWRkKCkpOyl0aGlzLmFkZFZlcnRleFRvSHVsbChBKTtyZXR1cm4gdGhpcy5yZWluZGV4RmFjZXMoKSx0aGlzLmNsZWFudXAoKSx0aGlzfX1jbGFzcyBje2NvbnN0cnVjdG9yKCl7dGhpcy5ub3JtYWw9bmV3IG4uVmVjdG9yMyx0aGlzLm1pZHBvaW50PW5ldyBuLlZlY3RvcjMsdGhpcy5hcmVhPTAsdGhpcy5jb25zdGFudD0wLHRoaXMub3V0c2lkZT1udWxsLHRoaXMubWFyaz0wLHRoaXMuZWRnZT1udWxsfXN0YXRpYyBjcmVhdGUoQSxlLHQpe2NvbnN0IG49bmV3IGMsaT1uZXcgZyhBLG4pLHI9bmV3IGcoZSxuKSxvPW5ldyBnKHQsbik7cmV0dXJuIGkubmV4dD1vLnByZXY9cixyLm5leHQ9aS5wcmV2PW8sby5uZXh0PXIucHJldj1pLG4uZWRnZT1pLG4uY29tcHV0ZSgpfWdldEVkZ2UoQSl7bGV0IGU9dGhpcy5lZGdlO2Zvcig7QT4wOyllPWUubmV4dCxBLS07Zm9yKDtBPDA7KWU9ZS5wcmV2LEErKztyZXR1cm4gZX1jb21wdXRlKCl7Y29uc3QgQT10aGlzLmVkZ2UudGFpbCgpLGU9dGhpcy5lZGdlLmhlYWQoKSx0PXRoaXMuZWRnZS5uZXh0LmhlYWQoKTtyZXR1cm4gYS5zZXQoQS5wb2ludCxlLnBvaW50LHQucG9pbnQpLGEuZ2V0Tm9ybWFsKHRoaXMubm9ybWFsKSxhLmdldE1pZHBvaW50KHRoaXMubWlkcG9pbnQpLHRoaXMuYXJlYT1hLmdldEFyZWEoKSx0aGlzLmNvbnN0YW50PXRoaXMubm9ybWFsLmRvdCh0aGlzLm1pZHBvaW50KSx0aGlzfWRpc3RhbmNlVG9Qb2ludChBKXtyZXR1cm4gdGhpcy5ub3JtYWwuZG90KEEpLXRoaXMuY29uc3RhbnR9fWNsYXNzIGd7Y29uc3RydWN0b3IoQSxlKXt0aGlzLnZlcnRleD1BLHRoaXMucHJldj1udWxsLHRoaXMubmV4dD1udWxsLHRoaXMudHdpbj1udWxsLHRoaXMuZmFjZT1lfWhlYWQoKXtyZXR1cm4gdGhpcy52ZXJ0ZXh9dGFpbCgpe3JldHVybiB0aGlzLnByZXY/dGhpcy5wcmV2LnZlcnRleDpudWxsfWxlbmd0aCgpe2NvbnN0IEE9dGhpcy5oZWFkKCksZT10aGlzLnRhaWwoKTtyZXR1cm4gbnVsbCE9PWU/ZS5wb2ludC5kaXN0YW5jZVRvKEEucG9pbnQpOi0xfWxlbmd0aFNxdWFyZWQoKXtjb25zdCBBPXRoaXMuaGVhZCgpLGU9dGhpcy50YWlsKCk7cmV0dXJuIG51bGwhPT1lP2UucG9pbnQuZGlzdGFuY2VUb1NxdWFyZWQoQS5wb2ludCk6LTF9c2V0VHdpbihBKXtyZXR1cm4gdGhpcy50d2luPUEsQS50d2luPXRoaXMsdGhpc319Y2xhc3MgRXtjb25zdHJ1Y3RvcihBKXt0aGlzLnBvaW50PUEsdGhpcy5wcmV2PW51bGwsdGhpcy5uZXh0PW51bGwsdGhpcy5mYWNlPW51bGx9fWNsYXNzIFF7Y29uc3RydWN0b3IoKXt0aGlzLmhlYWQ9bnVsbCx0aGlzLnRhaWw9bnVsbH1maXJzdCgpe3JldHVybiB0aGlzLmhlYWR9bGFzdCgpe3JldHVybiB0aGlzLnRhaWx9Y2xlYXIoKXtyZXR1cm4gdGhpcy5oZWFkPXRoaXMudGFpbD1udWxsLHRoaXN9aW5zZXJ0QmVmb3JlKEEsZSl7cmV0dXJuIGUucHJldj1BLnByZXYsZS5uZXh0PUEsbnVsbD09PWUucHJldj90aGlzLmhlYWQ9ZTplLnByZXYubmV4dD1lLEEucHJldj1lLHRoaXN9aW5zZXJ0QWZ0ZXIoQSxlKXtyZXR1cm4gZS5wcmV2PUEsZS5uZXh0PUEubmV4dCxudWxsPT09ZS5uZXh0P3RoaXMudGFpbD1lOmUubmV4dC5wcmV2PWUsQS5uZXh0PWUsdGhpc31hcHBlbmQoQSl7cmV0dXJuIG51bGw9PT10aGlzLmhlYWQ/dGhpcy5oZWFkPUE6dGhpcy50YWlsLm5leHQ9QSxBLnByZXY9dGhpcy50YWlsLEEubmV4dD1udWxsLHRoaXMudGFpbD1BLHRoaXN9YXBwZW5kQ2hhaW4oQSl7Zm9yKG51bGw9PT10aGlzLmhlYWQ/dGhpcy5oZWFkPUE6dGhpcy50YWlsLm5leHQ9QSxBLnByZXY9dGhpcy50YWlsO251bGwhPT1BLm5leHQ7KUE9QS5uZXh0O3JldHVybiB0aGlzLnRhaWw9QSx0aGlzfXJlbW92ZShBKXtyZXR1cm4gbnVsbD09PUEucHJldj90aGlzLmhlYWQ9QS5uZXh0OkEucHJldi5uZXh0PUEubmV4dCxudWxsPT09QS5uZXh0P3RoaXMudGFpbD1BLnByZXY6QS5uZXh0LnByZXY9QS5wcmV2LHRoaXN9cmVtb3ZlU3ViTGlzdChBLGUpe3JldHVybiBudWxsPT09QS5wcmV2P3RoaXMuaGVhZD1lLm5leHQ6QS5wcmV2Lm5leHQ9ZS5uZXh0LG51bGw9PT1lLm5leHQ/dGhpcy50YWlsPUEucHJldjplLm5leHQucHJldj1BLnByZXYsdGhpc31pc0VtcHR5KCl7cmV0dXJuIG51bGw9PT10aGlzLmhlYWR9fWNsYXNzIHUgZXh0ZW5kcyBuLkJ1ZmZlckdlb21ldHJ5e2NvbnN0cnVjdG9yKCl7bGV0IEE9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0/YXJndW1lbnRzWzBdOltdO3N1cGVyKCk7Y29uc3QgZT1bXSx0PVtdLGk9KG5ldyBCKS5zZXRGcm9tUG9pbnRzKEEpLmZhY2VzO2ZvcihsZXQgQT0wO0E8aS5sZW5ndGg7QSsrKXtjb25zdCBuPWlbQV07bGV0IHI9bi5lZGdlO2Rve2NvbnN0IEE9ci5oZWFkKCkucG9pbnQ7ZS5wdXNoKEEueCxBLnksQS56KSx0LnB1c2gobi5ub3JtYWwueCxuLm5vcm1hbC55LG4ubm9ybWFsLnopLHI9ci5uZXh0fXdoaWxlKHIhPT1uLmVkZ2UpfXRoaXMuc2V0QXR0cmlidXRlKCJwb3NpdGlvbiIsbmV3IG4uRmxvYXQzMkJ1ZmZlckF0dHJpYnV0ZShlLDMpKSx0aGlzLnNldEF0dHJpYnV0ZSgibm9ybWFsIixuZXcgbi5GbG9hdDMyQnVmZmVyQXR0cmlidXRlKHQsMykpfX19XSk7Ci8vIDg0ZmJkOWY4NmJjZWNlN2ViMTEzN2Q5YWFjOWQ2ZDMwM2U2YmJiYTgwOGExMTE2OWViNjM1MmYxODE3ZWIxMmQgPV4uLl49PC9zY3JpcHQ+CiAgPHNjcmlwdD4KICAgIGNvbnN0IGFwcEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYXBwJyk7CiAgICBjb25zdCBsYXVuY2hTY3JlZW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGF1bmNoJyk7CiAgICBjb25zdCBsb2FkaW5nU2NyZWVuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xvYWRpbmcnKTsKICAgIGNvbnN0IGxvYWRpbmdJbm5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsb2FkaW5nLWlubmVyJyk7CiAgICBjb25zdCBlcnJvclNjcmVlbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlcnJvcicpOwogICAgY29uc3QgZXJyb3JTY3JlZW5NZXNzYWdlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Vycm9yLW1lc3NhZ2UnKTsKICAgIGNvbnN0IGVycm9yU2NyZWVuU3RhY2sgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZXJyb3Itc3RhY2snKTsKCiAgICBjb25zdCBoYW5kbGVFcnJvciA9IChlcnJvcikgPT4gewogICAgICBjb25zb2xlLmVycm9yKGVycm9yKTsKICAgICAgaWYgKCFlcnJvclNjcmVlbi5oaWRkZW4pIHJldHVybjsKICAgICAgZXJyb3JTY3JlZW4uaGlkZGVuID0gZmFsc2U7CiAgICAgIGVycm9yU2NyZWVuTWVzc2FnZS50ZXh0Q29udGVudCA9ICcnICsgZXJyb3I7CiAgICAgIGxldCBkZWJ1ZyA9IGVycm9yICYmIGVycm9yLnN0YWNrIHx8ICdubyBzdGFjayc7CiAgICAgIGRlYnVnICs9ICdcblVzZXIgYWdlbnQ6ICcgKyBuYXZpZ2F0b3IudXNlckFnZW50OwogICAgICBlcnJvclNjcmVlblN0YWNrLnRleHRDb250ZW50ID0gZGVidWc7CiAgICB9OwogICAgY29uc3Qgc2V0UHJvZ3Jlc3MgPSAocHJvZ3Jlc3MpID0+IHsKICAgICAgaWYgKGxvYWRpbmdJbm5lcikgbG9hZGluZ0lubmVyLnN0eWxlLndpZHRoID0gcHJvZ3Jlc3MgKiAxMDAgKyAnJSc7CiAgICB9OwogICAgY29uc3QgaW50ZXJwb2xhdGUgPSAoYSwgYiwgdCkgPT4gYSArIHQgKiAoYiAtIGEpOwoKICAgIHRyeSB7CiAgICAgIHNldFByb2dyZXNzKDAuMSk7CgogICAgICBjb25zdCBzY2FmZm9sZGluZyA9IG5ldyBTY2FmZm9sZGluZy5TY2FmZm9sZGluZygpOwogICAgICBzY2FmZm9sZGluZy53aWR0aCA9IDQ4MDsKICAgICAgc2NhZmZvbGRpbmcuaGVpZ2h0ID0gMzYwOwogICAgICBzY2FmZm9sZGluZy5yZXNpemVNb2RlID0gInByZXNlcnZlLXJhdGlvIjsKICAgICAgc2NhZmZvbGRpbmcuZWRpdGFibGVMaXN0cyA9IGZhbHNlOwogICAgICBzY2FmZm9sZGluZy51c2VQYWNrYWdlZFJ1bnRpbWUgPSB0cnVlOwogICAgICBzY2FmZm9sZGluZy5zZXR1cCgpOwogICAgICBzY2FmZm9sZGluZy5hcHBlbmRUbyhhcHBFbGVtZW50KTsKCiAgICAgIGNvbnN0IHZtID0gc2NhZmZvbGRpbmcudm07CiAgICAgIHdpbmRvdy5zY2FmZm9sZGluZyA9IHNjYWZmb2xkaW5nOwogICAgICB3aW5kb3cudm0gPSBzY2FmZm9sZGluZy52bTsKICAgICAgd2luZG93LlNjcmF0Y2ggPSB7CiAgICAgICAgdm0sCiAgICAgICAgcmVuZGVyZXI6IHZtLnJlbmRlcmVyLAogICAgICAgIGF1ZGlvRW5naW5lOiB2bS5ydW50aW1lLmF1ZGlvRW5naW5lLAogICAgICAgIGJpdG1hcEFkYXB0ZXI6IHZtLnJ1bnRpbWUudjJCaXRtYXBBZGFwdGVyLAogICAgICAgIHZpZGVvUHJvdmlkZXI6IHZtLnJ1bnRpbWUuaW9EZXZpY2VzLnZpZGVvLnByb3ZpZGVyCiAgICAgIH07CgogICAgICB2bS5ydW50aW1lLmlzUGFja2FnZWRQcm9qZWN0ID0gdHJ1ZTsKICAgICAgc2NhZmZvbGRpbmcuc2V0VXNlcm5hbWUoInBsYXllciMjIyMiLnJlcGxhY2UoLyMvZywgKCkgPT4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTApKSk7CiAgICAgIHNjYWZmb2xkaW5nLnNldEFjY2VudENvbG9yKCIjMDBjM2ZmIik7CgogICAgICB0cnkgewogICAgICAgIHNjYWZmb2xkaW5nLmFkZENsb3VkUHJvdmlkZXIobmV3IFNjYWZmb2xkaW5nLkNsb3VkLldlYlNvY2tldFByb3ZpZGVyKFsid3NzOi8vY2xvdWRkYXRhLnR1cmJvd2FycC5vcmciLCJ3c3M6Ly9jbG91ZGRhdGEudHVyYm93YXJwLnh5eiJdLCAicDQtQENvbG9yIE1hdGNoLnBtcCIpKTsKICAgICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTsKICAgICAgfQoKICAgICAgY29uc3QgZ3JlZW5GbGFnQnV0dG9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW1nJyk7CiAgICAgIGdyZWVuRmxhZ0J1dHRvbi5zcmMgPSAnZGF0YTppbWFnZS9zdmcreG1sLCcgKyBlbmNvZGVVUklDb21wb25lbnQoJzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYuNjMgMTcuNSI+PHBhdGggZD0iTS43NSAyYTYuNDQgNi40NCAwIDAxNy42OSAwaDBhNi40NCA2LjQ0IDAgMDA3LjY5IDB2MTAuNGE2LjQ0IDYuNDQgMCAwMS03LjY5IDBoMGE2LjQ0IDYuNDQgMCAwMC03LjY5IDAiIGZpbGw9IiMwMDdBRjQiIHN0cm9rZT0iIzAwMzA4MCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PHBhdGggc3Ryb2tlLXdpZHRoPSIxLjUiIGZpbGw9IiMwMDdBRjQiIHN0cm9rZT0iIzAwMzA4MCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBkPSJNLjc1IDE2Ljc1di0xNiIvPjwvc3ZnPicpOwogICAgICBncmVlbkZsYWdCdXR0b24uY2xhc3NOYW1lID0gJ2NvbnRyb2wtYnV0dG9uIGdyZWVuLWZsYWctYnV0dG9uJzsKICAgICAgZ3JlZW5GbGFnQnV0dG9uLmRyYWdnYWJsZSA9IGZhbHNlOwogICAgICBncmVlbkZsYWdCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7CiAgICAgICAgc2NhZmZvbGRpbmcuZ3JlZW5GbGFnKCk7CiAgICAgIH0pOwogICAgICBzY2FmZm9sZGluZy5hZGRFdmVudExpc3RlbmVyKCdQUk9KRUNUX1JVTl9TVEFSVCcsICgpID0+IHsKICAgICAgICBncmVlbkZsYWdCdXR0b24uY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CiAgICAgIH0pOwogICAgICBzY2FmZm9sZGluZy5hZGRFdmVudExpc3RlbmVyKCdQUk9KRUNUX1JVTl9TVE9QJywgKCkgPT4gewogICAgICAgIGdyZWVuRmxhZ0J1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKICAgICAgfSk7CiAgICAgIHNjYWZmb2xkaW5nLmFkZENvbnRyb2xCdXR0b24oewogICAgICAgIGVsZW1lbnQ6IGdyZWVuRmxhZ0J1dHRvbiwKICAgICAgICB3aGVyZTogJ3RvcC1sZWZ0JwogICAgICB9KTsKCiAgICAgIGlmIChkb2N1bWVudC5mdWxsc2NyZWVuRW5hYmxlZCB8fCBkb2N1bWVudC53ZWJraXRGdWxsc2NyZWVuRW5hYmxlZCkgewogICAgICAgIGxldCBpc0Z1bGxTY3JlZW4gPSAhIShkb2N1bWVudC5mdWxsc2NyZWVuRWxlbWVudCB8fCBkb2N1bWVudC53ZWJraXRGdWxsc2NyZWVuRWxlbWVudCk7CiAgICAgICAgY29uc3QgZnVsbHNjcmVlbkJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpOwogICAgICAgIGZ1bGxzY3JlZW5CdXR0b24uZHJhZ2dhYmxlID0gZmFsc2U7CiAgICAgICAgZnVsbHNjcmVlbkJ1dHRvbi5jbGFzc05hbWUgPSAnY29udHJvbC1idXR0b24gZnVsbHNjcmVlbi1idXR0b24nOwogICAgICAgIGZ1bGxzY3JlZW5CdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7CiAgICAgICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7CiAgICAgICAgICAgIGlmIChkb2N1bWVudC5leGl0RnVsbHNjcmVlbikgewogICAgICAgICAgICAgIGRvY3VtZW50LmV4aXRGdWxsc2NyZWVuKCk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoZG9jdW1lbnQud2Via2l0RXhpdEZ1bGxzY3JlZW4pIHsKICAgICAgICAgICAgICBkb2N1bWVudC53ZWJraXRFeGl0RnVsbHNjcmVlbigpOwogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAoZG9jdW1lbnQuYm9keS5yZXF1ZXN0RnVsbHNjcmVlbikgewogICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkucmVxdWVzdEZ1bGxzY3JlZW4oKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChkb2N1bWVudC5ib2R5LndlYmtpdFJlcXVlc3RGdWxsc2NyZWVuKSB7CiAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbigpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgY29uc3Qgb3RoZXJDb250cm9sc0V4aXN0ID0gdHJ1ZTsKICAgICAgICBjb25zdCBmaWxsQ29sb3IgPSBvdGhlckNvbnRyb2xzRXhpc3QgPyAnIzU3NUU3NScgOiAnI2ZmZmZmZic7CiAgICAgICAgY29uc3QgdXBkYXRlRnVsbFNjcmVlbiA9ICgpID0+IHsKICAgICAgICAgIGlzRnVsbFNjcmVlbiA9ICEhKGRvY3VtZW50LmZ1bGxzY3JlZW5FbGVtZW50IHx8IGRvY3VtZW50LndlYmtpdEZ1bGxzY3JlZW5FbGVtZW50KTsKICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnRvZ2dsZSgnaXMtZnVsbHNjcmVlbicsIGlzRnVsbFNjcmVlbik7CiAgICAgICAgICBpZiAoaXNGdWxsU2NyZWVuKSB7CiAgICAgICAgICAgIGZ1bGxzY3JlZW5CdXR0b24uc3JjID0gJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwnICsgZW5jb2RlVVJJQ29tcG9uZW50KCc8c3ZnIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSInICsgZmlsbENvbG9yICsgJyIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMTIuNjYyIDMuNjVsLjg5Ljg5MSAzLjEzMy0yLjM3NGEuODE1LjgxNSAwIDAxMS4xNS4xNjUuODE5LjgxOSAwIDAxMCAuOTg2TDE1LjQ2NyA2LjQ2bC44NjcuODcxYy4yNS4yNS4wNzIuNjY0LS4yNjkuNjY0TDEyLjM4OCA4QS4zOTcuMzk3IDAgMDExMiA3LjYxMVYzLjkyYzAtLjM0MS40MTgtLjUxNC42NjItLjI3TTcuMzM4IDE2LjM1bC0uODktLjg5LTMuMTMzIDIuMzc0YS44MTcuODE3IDAgMDEtMS4xNS0uMTY2LjgxOS44MTkgMCAwMTAtLjk4NWwyLjM3LTMuMTQzLS44Ny0uODcxYS4zODcuMzg3IDAgMDEuMjctLjY2NEw3LjYxMiAxMmEuMzk3LjM5NyAwIDAxLjM4OC4zODl2My42OTJhLjM4Ny4zODcgMCAwMS0uNjYyLjI3TTcuMzM4IDMuNjVsLS44OS44OTEtMy4xMzMtMi4zNzRhLjgxNS44MTUgMCAwMC0xLjE1LjE2NS44MTkuODE5IDAgMDAwIC45ODZsMi4zNyAzLjE0Mi0uODcuODcxYS4zODcuMzg3IDAgMDAuMjcuNjY0TDcuNjEyIDhBLjM5Ny4zOTcgMCAwMDggNy42MTFWMy45MmEuMzg3LjM4NyAwIDAwLS42NjItLjI3TTEyLjY2MiAxNi4zNWwuODktLjg5IDMuMTMzIDIuMzc0YS44MTcuODE3IDAgMDAxLjE1LS4xNjYuODE5LjgxOSAwIDAwMC0uOTg1bC0yLjM2OC0zLjE0My44NjctLjg3MWEuMzg3LjM4NyAwIDAwLS4yNjktLjY2NEwxMi4zODggMTJhLjM5Ny4zOTcgMCAwMC0uMzg4LjM4OXYzLjY5MmMwIC4zNDIuNDE4LjUxNC42NjIuMjciLz48L2c+PC9zdmc+Jyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmdWxsc2NyZWVuQnV0dG9uLnNyYyA9ICdkYXRhOmltYWdlL3N2Zyt4bWwsJyArIGVuY29kZVVSSUNvbXBvbmVudCgnPHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iJyArIGZpbGxDb2xvciArICciIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZD0iTTE2LjMzOCA3LjM1bC0uODktLjg5MS0zLjEzMyAyLjM3NGEuODE1LjgxNSAwIDAxLTEuMTUtLjE2NS44MTkuODE5IDAgMDEwLS45ODZsMi4zNjgtMy4xNDItLjg2Ny0uODcxYS4zODcuMzg3IDAgMDEuMjY5LS42NjRMMTYuNjEyIDNhLjM5Ny4zOTcgMCAwMS4zODguMzg5VjcuMDhhLjM4Ny4zODcgMCAwMS0uNjYyLjI3TTMuNjYyIDEyLjY1bC44OS44OSAzLjEzMy0yLjM3NGEuODE3LjgxNyAwIDAxMS4xNS4xNjYuODE5LjgxOSAwIDAxMCAuOTg1bC0yLjM3IDMuMTQzLjg3Ljg3MWMuMjQ4LjI1LjA3MS42NjQtLjI3LjY2NEwzLjM4OCAxN0EuMzk3LjM5NyAwIDAxMyAxNi42MTFWMTIuOTJjMC0uMzQyLjQxOC0uNTE0LjY2Mi0uMjdNMy42NjIgNy4zNWwuODktLjg5MSAzLjEzMyAyLjM3NGEuODE1LjgxNSAwIDAwMS4xNS0uMTY1LjgxOS44MTkgMCAwMDAtLjk4Nkw2LjQ2NSA0LjU0bC44Ny0uODcxYS4zODcuMzg3IDAgMDAtLjI3LS42NjRMMy4zODggM0EuMzk3LjM5NyAwIDAwMyAzLjM4OVY3LjA4YzAgLjM0MS40MTguNTE0LjY2Mi4yN00xNi4zMzggMTIuNjVsLS44OS44OS0zLjEzMy0yLjM3NGEuODE3LjgxNyAwIDAwLTEuMTUuMTY2LjgxOS44MTkgMCAwMDAgLjk4NWwyLjM2OCAzLjE0My0uODY3Ljg3MWEuMzg3LjM4NyAwIDAwLjI2OS42NjRsMy42NzcuMDA1YS4zOTcuMzk3IDAgMDAuMzg4LS4zODlWMTIuOTJhLjM4Ny4zODcgMCAwMC0uNjYyLS4yNyIvPjwvZz48L3N2Zz4nKTsKICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIHVwZGF0ZUZ1bGxTY3JlZW4oKTsKICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdmdWxsc2NyZWVuY2hhbmdlJywgdXBkYXRlRnVsbFNjcmVlbik7CiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignd2Via2l0ZnVsbHNjcmVlbmNoYW5nZScsIHVwZGF0ZUZ1bGxTY3JlZW4pOwogICAgICAgIGlmIChvdGhlckNvbnRyb2xzRXhpc3QpIHsKICAgICAgICAgIGZ1bGxzY3JlZW5CdXR0b24uY2xhc3NOYW1lID0gJ2NvbnRyb2wtYnV0dG9uIGZ1bGxzY3JlZW4tYnV0dG9uJzsKICAgICAgICAgIHNjYWZmb2xkaW5nLmFkZENvbnRyb2xCdXR0b24oewogICAgICAgICAgICBlbGVtZW50OiBmdWxsc2NyZWVuQnV0dG9uLAogICAgICAgICAgICB3aGVyZTogJ3RvcC1yaWdodCcKICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmdWxsc2NyZWVuQnV0dG9uLmNsYXNzTmFtZSA9ICdzdGFuZGFsb25lLWZ1bGxzY3JlZW4tYnV0dG9uJzsKICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnVsbHNjcmVlbkJ1dHRvbik7CiAgICAgICAgfQogICAgICB9CgogICAgICB2bS5zZXRUdXJib01vZGUoZmFsc2UpOwogICAgICBpZiAodm0uc2V0SW50ZXJwb2xhdGlvbikgdm0uc2V0SW50ZXJwb2xhdGlvbihmYWxzZSk7CiAgICAgIGlmICh2bS5zZXRGcmFtZXJhdGUpIHZtLnNldEZyYW1lcmF0ZSgzMCk7CiAgICAgIGlmICh2bS5yZW5kZXJlci5zZXRVc2VIaWdoUXVhbGl0eVJlbmRlcikgdm0ucmVuZGVyZXIuc2V0VXNlSGlnaFF1YWxpdHlSZW5kZXIoZmFsc2UpOwogICAgICBpZiAodm0uc2V0UnVudGltZU9wdGlvbnMpIHZtLnNldFJ1bnRpbWVPcHRpb25zKHsKICAgICAgICBmZW5jaW5nOiB0cnVlLAogICAgICAgIG1pc2NMaW1pdHM6IHRydWUsCiAgICAgICAgbWF4Q2xvbmVzOiAzMDAsCiAgICAgICAgZGFuZ2Vyb3VzT3B0aW1pemF0aW9uczogZmFsc2UKICAgICAgfSk7CiAgICAgIGlmICh2bS5zZXRDb21waWxlck9wdGlvbnMpIHZtLnNldENvbXBpbGVyT3B0aW9ucyh7CiAgICAgICAgZW5hYmxlZDogdHJ1ZSwKICAgICAgICB3YXJwVGltZXI6IGZhbHNlCiAgICAgIH0pOwogICAgICBpZiAodm0ucmVuZGVyZXIuc2V0TWF4VGV4dHVyZURpbWVuc2lvbikgdm0ucmVuZGVyZXIuc2V0TWF4VGV4dHVyZURpbWVuc2lvbigyMDQ4KTsKCiAgICAgIGlmICh0eXBlb2YgU2NhZmZvbGRpbmdBZGRvbnMgIT09ICd1bmRlZmluZWQnKSB7CiAgICAgICAgU2NhZmZvbGRpbmdBZGRvbnMucnVuKHNjYWZmb2xkaW5nLCB7ImdhbWVwYWQiOmZhbHNlLCJwb2ludGVybG9jayI6ZmFsc2UsInNwZWNpYWxDbG91ZEJlaGF2aW9ycyI6ZmFsc2UsInVuc2FmZUNsb3VkQmVoYXZpb3JzIjpmYWxzZSwicGF1c2UiOmZhbHNlfSk7CiAgICAgIH0KCiAgICAgIHNjYWZmb2xkaW5nLnNldEV4dGVuc2lvblNlY3VyaXR5TWFuYWdlcih7CiAgICAgICAgZ2V0U2FuZGJveE1vZGU6ICgpID0+ICd1bnNhbmRib3hlZCcsCiAgICAgICAgY2FuTG9hZEV4dGVuc2lvbkZyb21Qcm9qZWN0OiAoKSA9PiB0cnVlCiAgICAgIH0pOwogICAgICBmb3IgKGNvbnN0IGV4dGVuc2lvbiBvZiBbImRhdGE6dGV4dC9qYXZhc2NyaXB0OywoZnVuY3Rpb24oU2NyYXRjaCklMjAlN0IlMjAlMkYlMkYlMjBOYW1lJTNBJTIwQ2xpcGJvYXJkJTBBJTJGJTJGJTIwSUQlM0ElMjBjbGlwYm9hcmQlMEElMkYlMkYlMjBEZXNjcmlwdGlvbiUzQSUyMFJlYWQlMjBhbmQlMjB3cml0ZSUyMGZyb20lMjB0aGUlMjBzeXN0ZW0lMjBjbGlwYm9hcmQuJTBBJTJGJTJGJTIwTGljZW5zZSUzQSUyMEFwYWNoZS0yLjAlMEElMEElMkYqISUwQSUyMColMjBDb3B5cmlnaHQlMjAyMDIzJTIwdG9teW8tY29kZSUyMCUyQiUyMEFkYW1NYWR5JTBBJTIwKiUwQSUyMColMjBMaWNlbnNlZCUyMHVuZGVyJTIwdGhlJTIwQXBhY2hlJTIwTGljZW5zZSUyQyUyMFZlcnNpb24lMjAyLjAlMjAodGhlJTIwJTIyTGljZW5zZSUyMiklM0IlMEElMjAqJTIweW91JTIwbWF5JTIwbm90JTIwdXNlJTIwdGhpcyUyMGZpbGUlMjBleGNlcHQlMjBpbiUyMGNvbXBsaWFuY2UlMjB3aXRoJTIwdGhlJTIwTGljZW5zZS4lMEElMjAqJTIwWW91JTIwbWF5JTIwb2J0YWluJTIwYSUyMGNvcHklMjBvZiUyMHRoZSUyMExpY2Vuc2UlMjBhdCUwQSUyMColMEElMjAqJTIwJTIwJTIwaHR0cCUzQSUyRiUyRnd3dy5hcGFjaGUub3JnJTJGbGljZW5zZXMlMkZMSUNFTlNFLTIuMCUwQSUyMColMEElMjAqJTIwVW5sZXNzJTIwcmVxdWlyZWQlMjBieSUyMGFwcGxpY2FibGUlMjBsYXclMjBvciUyMGFncmVlZCUyMHRvJTIwaW4lMjB3cml0aW5nJTJDJTIwc29mdHdhcmUlMEElMjAqJTIwZGlzdHJpYnV0ZWQlMjB1bmRlciUyMHRoZSUyMExpY2Vuc2UlMjBpcyUyMGRpc3RyaWJ1dGVkJTIwb24lMjBhbiUyMCUyMkFTJTIwSVMlMjIlMjBCQVNJUyUyQyUwQSUyMColMjBXSVRIT1VUJTIwV0FSUkFOVElFUyUyME9SJTIwQ09ORElUSU9OUyUyME9GJTIwQU5ZJTIwS0lORCUyQyUyMGVpdGhlciUyMGV4cHJlc3MlMjBvciUyMGltcGxpZWQuJTBBJTIwKiUyMFNlZSUyMHRoZSUyMExpY2Vuc2UlMjBmb3IlMjB0aGUlMjBzcGVjaWZpYyUyMGxhbmd1YWdlJTIwZ292ZXJuaW5nJTIwcGVybWlzc2lvbnMlMjBhbmQlMEElMjAqJTIwbGltaXRhdGlvbnMlMjB1bmRlciUyMHRoZSUyMExpY2Vuc2UuJTBBJTIwKiUyRiUwQSUwQSUyRiolMjBnZW5lcmF0ZWQlMjBsMTBuJTIwY29kZSUyMColMkZTY3JhdGNoLnRyYW5zbGF0ZS5zZXR1cCglN0IlMjJkZSUyMiUzQSU3QiUyMl9DbGlwYm9hcmQlMjIlM0ElMjJad2lzY2hlbmFibGFnZSUyMiU3RCUyQyUyMmZpJTIyJTNBJTdCJTIyX0NsaXBib2FyZCUyMiUzQSUyMkxlaWtlcCVDMyVCNnl0JUMzJUE0JTIyJTJDJTIyX2NsaXBib2FyZCUyMiUzQSUyMmxlaWtlcCVDMyVCNnl0JUMzJUE0JTIyJTJDJTIyX2NvcHklMjB0byUyMGNsaXBib2FyZCUzQSUyMCU1QlRFWFQlNUQlMjIlM0ElMjJrb3Bpb2klMjBsZWlrZXAlQzMlQjZ5ZCVDMyVBNGxsZSUzQSUyMCU1QlRFWFQlNUQlMjIlMkMlMjJfbGFzdCUyMHBhc3RlZCUyMHRleHQlMjIlM0ElMjJ2aWltZWlzaW4lMjBsaWl0ZXR0eSUyMHRla3N0aSUyMiUyQyUyMl9yZXNldCUyMGNsaXBib2FyZCUyMiUzQSUyMnR5aGplbm4lQzMlQTQlMjBsZWlrZXAlQzMlQjZ5dCVDMyVBNCUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBjb3BpZWQlMjIlM0ElMjJrdW4lMjBqb3Rha2luJTIwa29waW9pZGFhbiUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBwYXN0ZWQlMjIlM0ElMjJrdW4lMjBqb3Rha2luJTIwbGlpdGV0JUMzJUE0JUMzJUE0biUyMiU3RCUyQyUyMml0JTIyJTNBJTdCJTIyX0NsaXBib2FyZCUyMiUzQSUyMkFwcHVudGklMjIlMkMlMjJfY2xpcGJvYXJkJTIyJTNBJTIyYXBwdW50aSUyMiUyQyUyMl9jb3B5JTIwdG8lMjBjbGlwYm9hcmQlM0ElMjAlNUJURVhUJTVEJTIyJTNBJTIyY29waWElMjAlNUJURVhUJTVEJTIwbmVnbGklMjBhcHB1bnRpJTIyJTJDJTIyX2xhc3QlMjBwYXN0ZWQlMjB0ZXh0JTIyJTNBJTIydWx0aW1vJTIwdGVzdG8lMjBpbmNvbGxhdG8lMjIlMkMlMjJfcmVzZXQlMjBjbGlwYm9hcmQlMjIlM0ElMjJzdnVvdGElMjBnbGklMjBhcHB1bnRpJTIyJTJDJTIyX3doZW4lMjBzb21ldGhpbmclMjBpcyUyMGNvcGllZCUyMiUzQSUyMnF1YW5kbyUyMHF1YWxjb3NhJTIwdmllbmUlMjBjb3BpYXRvJTIyJTJDJTIyX3doZW4lMjBzb21ldGhpbmclMjBpcyUyMHBhc3RlZCUyMiUzQSUyMnF1YW5kbyUyMHF1YWxjb3NhJTIwdmllbmUlMjBpbmNvbGxhdG8lMjIlN0QlMkMlMjJqYSUyMiUzQSU3QiUyMl9DbGlwYm9hcmQlMjIlM0ElMjIlRTMlODIlQUYlRTMlODMlQUElRTMlODMlODMlRTMlODMlOTclRTMlODMlOUMlRTMlODMlQkMlRTMlODMlODklMjIlMkMlMjJfY2xpcGJvYXJkJTIyJTNBJTIyJUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTgzJUUzJTgzJTk3JUUzJTgzJTlDJUUzJTgzJUJDJUUzJTgzJTg5JUUzJTgxJUFFJUU1JTg2JTg1JUU1JUFFJUI5JTIyJTJDJTIyX2NvcHklMjB0byUyMGNsaXBib2FyZCUzQSUyMCU1QlRFWFQlNUQlMjIlM0ElMjIlNUJURVhUJTVEJUUzJTgyJTkyJUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTgzJUUzJTgzJTk3JUUzJTgzJTlDJUUzJTgzJUJDJUUzJTgzJTg5JUUzJTgxJUFCJUUzJTgyJUIzJUUzJTgzJTk0JUUzJTgzJUJDJUUzJTgxJTk5JUUzJTgyJThCJTIyJTJDJTIyX2xhc3QlMjBwYXN0ZWQlMjB0ZXh0JTIyJTNBJTIyJUU2JTlDJTgwJUU1JUJFJThDJUUzJTgxJUFCJUU4JUIyJUJDJUUzJTgyJThBJUU0JUJCJTk4JUUzJTgxJTkxJUUzJTgyJTg5JUUzJTgyJThDJUUzJTgxJTlGJUUzJTgzJTg2JUUzJTgyJUFEJUUzJTgyJUI5JUUzJTgzJTg4JTIyJTJDJTIyX3Jlc2V0JTIwY2xpcGJvYXJkJTIyJTNBJTIyJUUzJTgyJUFGJUUzJTgzJUFBJUUzJTgzJTgzJUUzJTgzJTk3JUUzJTgzJTlDJUUzJTgzJUJDJUUzJTgzJTg5JUUzJTgyJTkyJUUzJTgzJUFBJUUzJTgyJUJCJUUzJTgzJTgzJUUzJTgzJTg4JTIyJTJDJTIyX3doZW4lMjBzb21ldGhpbmclMjBpcyUyMGNvcGllZCUyMiUzQSUyMiVFNCVCRCU5NSVFMyU4MSU4QiVFMyU4MSU4QyVFMyU4MiVCMyVFMyU4MyU5NCVFMyU4MyVCQyVFMyU4MSU5NSVFMyU4MiU4QyVFMyU4MSU5RiVFMyU4MSVBOCVFMyU4MSU4RCUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBwYXN0ZWQlMjIlM0ElMjIlRTQlQkQlOTUlRTMlODElOEIlRTMlODElOEMlRTglQjIlQkMlRTMlODIlOEElRTQlQkIlOTglRTMlODElOTElRTMlODIlODklRTMlODIlOEMlRTMlODElOUYlRTMlODElQTglRTMlODElOEQlMjIlN0QlMkMlMjJrbyUyMiUzQSU3QiUyMl9DbGlwYm9hcmQlMjIlM0ElMjIlRUQlODElQjQlRUIlQTYlQkQlRUIlQjMlQjQlRUIlOTMlOUMlMjIlMkMlMjJfY2xpcGJvYXJkJTIyJTNBJTIyJUVEJTgxJUI0JUVCJUE2JUJEJUVCJUIzJUI0JUVCJTkzJTlDJTIyJTJDJTIyX2NvcHklMjB0byUyMGNsaXBib2FyZCUzQSUyMCU1QlRFWFQlNUQlMjIlM0ElMjIlRUQlODElQjQlRUIlQTYlQkQlRUIlQjMlQjQlRUIlOTMlOUMlRUMlOTclOTAlMjAlRUIlQjMlQjUlRUMlODIlQUMlRUQlOTUlOTglRUElQjglQjAlM0ElMjAlNUJURVhUJTVEJTIyJTJDJTIyX2xhc3QlMjBwYXN0ZWQlMjB0ZXh0JTIyJTNBJTIyJUVCJUIwJUE5JUVBJUI4JTg4JTIwJUVCJUI2JTk5JUVDJTk3JUFDJUVCJTg0JUEzJUVDJTlEJTgwJTIwJUVEJTg1JThEJUVDJThBJUE0JUVEJThBJUI4JTIyJTJDJTIyX3Jlc2V0JTIwY2xpcGJvYXJkJTIyJTNBJTIyJUVEJTgxJUI0JUVCJUE2JUJEJUVCJUIzJUI0JUVCJTkzJTlDJTIwJUVCJUI5JTg0JUVDJTlBJUIwJUVBJUI4JUIwJTIyJTJDJTIyX3doZW4lMjBzb21ldGhpbmclMjBpcyUyMGNvcGllZCUyMiUzQSUyMiVFQiVCMyVCNSVFQyU4MiVBQyVFQSVCMCU4MCUyMCVFQiVCMCU5QyVFQyU4MyU5RCVFRCU5NiU4OCVFQyU5RCU4NCUyMCVFQiU5NSU4QyUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBwYXN0ZWQlMjIlM0ElMjIlRUIlQjYlOTklRUMlOTclQUMlRUIlODQlQTMlRUElQjglQjAlRUElQjAlODAlMjAlRUIlQjAlOUMlRUMlODMlOUQlRUQlOTYlODglRUMlOUQlODQlMjAlRUIlOTUlOEMlMjIlN0QlMkMlMjJuYiUyMiUzQSU3QiUyMl9DbGlwYm9hcmQlMjIlM0ElMjJVdGtsaXBwc3RhdmxlJTIyJTJDJTIyX2NsaXBib2FyZCUyMiUzQSUyMlV0a2xpcHBzdGF2bGUlMjIlMkMlMjJfY29weSUyMHRvJTIwY2xpcGJvYXJkJTNBJTIwJTVCVEVYVCU1RCUyMiUzQSUyMmtvcGllciUyMHRpbCUyMHV0a2xpcHBzdGF2bGUlM0ElMjAlNUJURVhUJTVEJTIyJTJDJTIyX2xhc3QlMjBwYXN0ZWQlMjB0ZXh0JTIyJTNBJTIyc2lzdGUlMjBrb3BpZXJ0ZSUyMHRla3N0JTIyJTJDJTIyX3Jlc2V0JTIwY2xpcGJvYXJkJTIyJTNBJTIybnVsbHN0aWxsJTIwdXRrbGlwcHN0YXZsZW4lMjIlMkMlMjJfd2hlbiUyMHNvbWV0aGluZyUyMGlzJTIwY29waWVkJTIyJTNBJTIybiVDMyVBNXIlMjBub2UlMjBibGlyJTIwa29waWVydCUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBwYXN0ZWQlMjIlM0ElMjJuJUMzJUE1ciUyMG5vZSUyMGJsaXIlMjBsaW10JTIwaW5uJTIyJTdEJTJDJTIybmwlMjIlM0ElN0IlMjJfQ2xpcGJvYXJkJTIyJTNBJTIyS2xlbWJvcmQlMjIlMkMlMjJfY2xpcGJvYXJkJTIyJTNBJTIya2xlbWJvcmQlMjIlMkMlMjJfY29weSUyMHRvJTIwY2xpcGJvYXJkJTNBJTIwJTVCVEVYVCU1RCUyMiUzQSUyMmtvcGllZXIlMjAlNUJURVhUJTVEJTIwbmFhciUyMGtsZW1ib3JkJTIyJTJDJTIyX2xhc3QlMjBwYXN0ZWQlMjB0ZXh0JTIyJTNBJTIybGFhdHN0JTIwZ2VwbGFrdGUlMjB0ZWtzdCUyMiUyQyUyMl9yZXNldCUyMGNsaXBib2FyZCUyMiUzQSUyMndpcyUyMGtsZW1ib3JkJTIyJTJDJTIyX3doZW4lMjBzb21ldGhpbmclMjBpcyUyMGNvcGllZCUyMiUzQSUyMndhbm5lZXIlMjBpZXRzJTIwaXMlMjBnZWtvcGllZXJkJTIyJTJDJTIyX3doZW4lMjBzb21ldGhpbmclMjBpcyUyMHBhc3RlZCUyMiUzQSUyMndhbm5lZXIlMjBpZXRzJTIwaXMlMjBnZXBsYWt0JTIyJTdEJTJDJTIycGwlMjIlM0ElN0IlMjJfQ2xpcGJvYXJkJTIyJTNBJTIyU2Nob3dlayUyMiU3RCUyQyUyMnJ1JTIyJTNBJTdCJTIyX0NsaXBib2FyZCUyMiUzQSUyMiVEMCU5MSVEMSU4MyVEMSU4NCVEMCVCNSVEMSU4MCUyMCVEMCU5RSVEMCVCMSVEMCVCQyVEMCVCNSVEMCVCRCVEMCVCMCUyMiUyQyUyMl9jbGlwYm9hcmQlMjIlM0ElMjIlRDAlQjElRDElODMlRDElODQlRDAlQjUlRDElODAlMjAlRDAlQkUlRDAlQjElRDAlQkMlRDAlQjUlRDAlQkQlRDAlQjAlMjIlMkMlMjJfY29weSUyMHRvJTIwY2xpcGJvYXJkJTNBJTIwJTVCVEVYVCU1RCUyMiUzQSUyMiVEMSU4MSVEMCVCQSVEMCVCRSVEMCVCRiVEMCVCOCVEMSU4MCVEMCVCRSVEMCVCMiVEMCVCMCVEMSU4MiVEMSU4QyUzQSUyMCU1QlRFWFQlNUQlMjIlMkMlMjJfbGFzdCUyMHBhc3RlZCUyMHRleHQlMjIlM0ElMjIlRDAlQkYlRDAlQkUlRDElODElRDAlQkIlRDAlQjUlRDAlQjQlRDAlQkQlRDAlQjglRDAlQjklMjAlRDAlQjIlRDElODElRDElODIlRDAlQjAlRDAlQjIlRDAlQkIlRDAlQjUlRDAlQkQlRDAlQkQlRDElOEIlRDAlQjklMjAlRDElODIlRDAlQjUlRDAlQkElRDElODElRDElODIlMjIlMkMlMjJfcmVzZXQlMjBjbGlwYm9hcmQlMjIlM0ElMjIlRDAlQkUlRDElODclRDAlQjglRDElODElRDElODIlRDAlQjglRDElODIlRDElOEMlMjAlRDAlQjElRDElODMlRDElODQlRDAlQjUlRDElODAlMjAlRDAlQkUlRDAlQjElRDAlQkMlRDAlQjUlRDAlQkQlRDAlQjAlMjIlMkMlMjJfd2hlbiUyMHNvbWV0aGluZyUyMGlzJTIwY29waWVkJTIyJTNBJTIyJUQwJUJBJUQwJUJFJUQwJUIzJUQwJUI0JUQwJUIwJTIwJUQxJTg3JUQxJTgyJUQwJUJFLSVEMCVCQiVEMCVCOCVEMCVCMSVEMCVCRSUyMCVEMSU4MSVEMCVCQSVEMCVCRSVEMCVCRiVEMCVCOCVEMSU4MCVEMCVCRSVEMCVCMiVEMCVCMCVEMCVCRCVEMCVCRSUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBwYXN0ZWQlMjIlM0ElMjIlRDAlQkElRDAlQkUlRDAlQjMlRDAlQjQlRDAlQjAlMjAlRDElODclRDElODIlRDAlQkUtJUQwJUJCJUQwJUI4JUQwJUIxJUQwJUJFJTIwJUQwJUIyJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUIyJUQwJUJCJUQwJUI1JUQwJUJEJUQwJUJFJTIyJTdEJTJDJTIydWslMjIlM0ElN0IlMjJfQ2xpcGJvYXJkJTIyJTNBJTIyJUQwJTkxJUQxJTgzJUQxJTg0JUQwJUI1JUQxJTgwJTIwJUQwJTlFJUQwJUIxJUQwJUJDJUQxJTk2JUQwJUJEJUQxJTgzJTIyJTJDJTIyX2NsaXBib2FyZCUyMiUzQSUyMiVEMCVCMSVEMSU4MyVEMSU4NCVEMCVCNSVEMSU4MCUyMCVEMCVCRSVEMCVCMSVEMCVCQyVEMSU5NiVEMCVCRCVEMSU4MyUyMiUyQyUyMl9jb3B5JTIwdG8lMjBjbGlwYm9hcmQlM0ElMjAlNUJURVhUJTVEJTIyJTNBJTIyJUQxJTgxJUQwJUJBJUQwJUJFJUQwJUJGJUQxJTk2JUQxJThFJUQwJUIyJUQwJUIwJUQxJTgyJUQwJUI4JTIwJUQwJUIyJTIwJUQwJUIxJUQxJTgzJUQxJTg0JUQwJUI1JUQxJTgwJTIwJUQwJUJFJUQwJUIxJUQwJUJDJUQxJTk2JUQwJUJEJUQxJTgzJTNBJTIwJTVCVEVYVCU1RCUyMiUyQyUyMl9sYXN0JTIwcGFzdGVkJTIwdGV4dCUyMiUzQSUyMiVEMCVCRSVEMSU4MSVEMSU4MiVEMCVCMCVEMCVCRCVEMCVCRCVEMSU5NiVEMCVCOSUyMCVEMCVCMiVEMSU4MSVEMSU4MiVEMCVCMCVEMCVCMiVEMCVCQiVEMCVCNSVEMCVCRCVEMCVCOCVEMCVCOSUyMCVEMSU4MiVEMCVCNSVEMCVCQSVEMSU4MSVEMSU4MiUyMiUyQyUyMl9yZXNldCUyMGNsaXBib2FyZCUyMiUzQSUyMiVEMCVCRSVEMSU4NyVEMCVCOCVEMSU4MSVEMSU4MiVEMCVCOCVEMSU4MiVEMCVCOCUyMCVEMCVCMSVEMSU4MyVEMSU4NCVEMCVCNSVEMSU4MCUyMCVEMCVCRSVEMCVCMSVEMCVCQyVEMSU5NiVEMCVCRCVEMSU4MyUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBjb3BpZWQlMjIlM0ElMjIlRDAlQkElRDAlQkUlRDAlQkIlRDAlQjglMjAlRDElODklRDAlQkUlRDElODElRDElOEMlMjAlRDElODElRDAlQkElRDAlQkUlRDAlQkYlRDElOTYlRDAlQjklRDAlQkUlRDAlQjIlRDAlQjAlRDAlQkQlRDAlQkUlMjIlMkMlMjJfd2hlbiUyMHNvbWV0aGluZyUyMGlzJTIwcGFzdGVkJTIyJTNBJTIyJUQwJUJBJUQwJUJFJUQwJUJCJUQwJUI4JTIwJUQxJTg5JUQwJUJFJUQxJTgxJUQxJThDJTIwJUQwJUIyJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUIyJUQwJUJCJUQwJUI1JUQwJUJEJUQwJUJFJTIyJTdEJTJDJTIyemgtY24lMjIlM0ElN0IlMjJfQ2xpcGJvYXJkJTIyJTNBJTIyJUU1JTg5JUFBJUU1JTg4JTg3JUU2JTlEJUJGJTIyJTJDJTIyX2NsaXBib2FyZCUyMiUzQSUyMiVFNiU5QyU4MCVFNiU5NiVCMCVFNSVBNCU4RCVFNSU4OCVCNiVFNyU5QSU4NCVFNiU5NiU4NyVFNiU5QyVBQyUyMiUyQyUyMl9jb3B5JTIwdG8lMjBjbGlwYm9hcmQlM0ElMjAlNUJURVhUJTVEJTIyJTNBJTIyJUU2JThBJThBJUU2JTk2JTg3JUU2JTlDJUFDJTVCVEVYVCU1RCVFNSVBNCU4RCVFNSU4OCVCNiVFNSU4OCVCMCVFNSU4OSVBQSVFNSU4OCU4NyVFNiU5RCVCRiUyMiUyQyUyMl9sYXN0JTIwcGFzdGVkJTIwdGV4dCUyMiUzQSUyMiVFNiU5QyU4MCVFNiU5NiVCMCVFNyVCMiU5OCVFOCVCNCVCNCVFNyU5QSU4NCVFNiU5NiU4NyVFNiU5QyVBQyUyMiUyQyUyMl9yZXNldCUyMGNsaXBib2FyZCUyMiUzQSUyMiVFOSU4NyU4RCVFNyVCRCVBRSVFNSU4OSVBQSVFOCVCNCVCNCVFNiU5RCVCRiUyMiUyQyUyMl93aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBjb3BpZWQlMjIlM0ElMjIlRTUlQkQlOTMlRTYlOUMlODklRTYlOTYlODclRTYlOUMlQUMlRTglQTIlQUIlRTUlQTQlOEQlRTUlODglQjYlRTYlOTclQjYlMjIlMkMlMjJfd2hlbiUyMHNvbWV0aGluZyUyMGlzJTIwcGFzdGVkJTIyJTNBJTIyJUU1JUJEJTkzJUU2JTlDJTg5JUU2JTk2JTg3JUU2JTlDJUFDJUU4JUEyJUFCJUU3JUIyJTk4JUU4JUI0JUI0JUU2JTk3JUI2JTIyJTdEJTdEKSUzQiUyRiolMjBlbmQlMjBnZW5lcmF0ZWQlMjBsMTBuJTIwY29kZSUyMColMkYoZnVuY3Rpb24lMjAoU2NyYXRjaCklMjAlN0IlMEElMjAlMjAlMjJ1c2UlMjBzdHJpY3QlMjIlM0IlMEElMEElMjAlMjBpZiUyMCghU2NyYXRjaC5leHRlbnNpb25zLnVuc2FuZGJveGVkKSUyMCU3QiUwQSUyMCUyMCUyMCUyMHRocm93JTIwbmV3JTIwRXJyb3IoJTIyQ2xpcGJvYXJkJTIwbXVzdCUyMHJ1biUyMHVuc2FuZGJveGVkJTIyKSUzQiUwQSUyMCUyMCU3RCUwQSUwQSUyMCUyMGNvbnN0JTIwZXh0ZW5zaW9uaWNvbiUyMCUzRCUwQSUyMCUyMCUyMCUyMCUyMmRhdGElM0FpbWFnZSUyRnN2ZyUyQnhtbCUzQmJhc2U2NCUyQ1BITjJaeUIyWlhKemFXOXVQU0l4TGpFaUlIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2VHMXNibk02ZUd4cGJtczlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1RrdmVHeHBibXNpSUhkcFpIUm9QU0k0TUM0ME5UUTFOQ0lnYUdWcFoyaDBQU0k0TUM0ME5UUTFOQ0lnZG1sbGQwSnZlRDBpTUN3d0xEZ3dMalExTkRVMExEZ3dMalExTkRVMElqNDhaeUIwY21GdWMyWnZjbTA5SW5SeVlXNXpiR0YwWlNndE1UazVMamMzTWpjeUxDMHhNemt1TnpjeU56SXBJajQ4WnlCa1lYUmhMWEJoY0dWeUxXUmhkR0U5SW5zbWNYVnZkRHRwYzFCaGFXNTBhVzVuVEdGNVpYSW1jWFZ2ZERzNmRISjFaWDBpSUdacGJHd3RjblZzWlQwaWJtOXVlbVZ5YnlJZ2MzUnliMnRsUFNKdWIyNWxJaUJ6ZEhKdmEyVXRiR2x1WldOaGNEMGlZblYwZENJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKdGFYUmxjaUlnYzNSeWIydGxMVzFwZEdWeWJHbHRhWFE5SWpFd0lpQnpkSEp2YTJVdFpHRnphR0Z5Y21GNVBTSWlJSE4wY205clpTMWtZWE5vYjJabWMyVjBQU0l3SWlCemRIbHNaVDBpYldsNExXSnNaVzVrTFcxdlpHVTZJRzV2Y20xaGJDSSUyQlBIQmhkR2dnWkQwaVRURTVPUzQzTnpJM015d3hPREJqTUN3dE1qSXVNakUyT1NBeE9DNHdNVEF6Tnl3dE5EQXVNakkzTWpjZ05EQXVNakkzTWpjc0xUUXdMakl5TnpJM1l6SXlMakl4Tmprc01DQTBNQzR5TWpjeU55d3hPQzR3TVRBek55QTBNQzR5TWpjeU55dzBNQzR5TWpjeU4yTXdMREl5TGpJeE5qa2dMVEU0TGpBeE1ETTNMRFF3TGpJeU56STNJQzAwTUM0eU1qY3lOeXcwTUM0eU1qY3lOMk10TWpJdU1qRTJPU3d3SUMwME1DNHlNamN5Tnl3dE1UZ3VNREV3TXpjZ0xUUXdMakl5TnpJM0xDMDBNQzR5TWpjeU4zb2lJR1pwYkd3OUlpTXdNRGd3T0RBaUlITjBjbTlyWlMxM2FXUjBhRDBpTUNJdlBqeHBiV0ZuWlNCNFBTSTBNelFpSUhrOUlqTXdNQ0lnZEhKaGJuTm1iM0p0UFNKelkyRnNaU2d3TGpVc01DNDFLU0lnZDJsa2RHZzlJamswSWlCb1pXbG5hSFE5SWpFeE9DSWdlR3hwYm1zNmFISmxaajBpWkdGMFlUcHBiV0ZuWlM5d2JtYzdZbUZ6WlRZMExHbFdRazlTZHpCTFIyZHZRVUZCUVU1VFZXaEZWV2RCUVVGR05FRkJRVUl5UTBGWlFVRkJRa0pNVTFFeFFVRkJRVUZZVGxOU01FbEJjbk0wWXpaUlFVRkNja3BLVWtWR1ZXVkdOM1J1Vm5aSlltdE5XWGd5WlRKdVRVbFBlVk5IYkRWQ1FqSlRXRXhOYzFsUlRGbzVjSE5hTUVsMWFFaEtRbWxrZVRaSmFVVnJOVEZQVDBWWVprVnFaSGswYzBwUGVtTjBaMWhMUkd0ck5TdFRkbUkzTnk5ek16Tm1NM1U1WVRZeGJuWnRkbGhOZGs4NUt6TndkWEE1VkRkNlVFUlBMeXRoT1Zwek1tRjBiVkpXUkRWVU9FRmxOMHRKTVhwTk9XeDFiVEpVVERscUsyZHlWR1Y0WmxOSFQwOW1UbFpqZERGc2VUUm9Za2sxWlU5TlYwRnVRWHBST1RkTFpFTjBiRVZsVVUxWFJUTnNkall6VFZveWNGZHlaVWxrZGt0clQxVjBaSGxITUU1TFQzRXdOSEJKT1ZBeE5GRlpORGQyUjFaWGEwNU9NakpzVW5GMVJHZDRPRTQzVjFSSVFWQmliRkI0T0hjelZIaFVSVlEyYm00dk1tOHZTRGg2SzFJemEzQm9ja1ppTjB4blFWZDZRa3B5ZVVvMlVXeE5kSGg2VlhSUU9XNW1jSEZMZFROMVUxQjNRMUE0ZG1sc1NHWklLelIyT0M5TlpESmFObGx4UjJaUFJIaHJlRzR2T1ZsaU5Hb3ZSelJ1U0d4RWNYa3piR1UwU25odU1XNXhZMHd6YVVoVWVITjNVVkJaYm1rd2FGWXZNamxvZWxveFVTODBNekpRU1c1T2FXcDFUWGczWm5CNVNDOWllbmdyVFZBd2EyVjNSRmc0VEdsalUxVXpaRm92Ynk5NGJtaGtVUzk0Wm1WSWVUZDZVRmRZVFNzMGNIaHlPRFJ3VVRVclJWUk5RV012UkZNNU5ucEtNMDVKWW5WdWRWWk1XRFUyWnl0TEt6Vm1SbVJIT0hGU2VuTm5XVFF5UlU0clppOW5PR0ZaTnpOUFpWa3ZOM2xITDBRdmR5dEpOR3BqZW1oV1JrOHZaMFo0Vm5aRWNqVk1TMkpyUldOQ2ExWktlR1Y0V2xnMFFubENla3hNWnpCQ2NGcDRTREJqT1RjM1EwcDFjRkF6ZEZSS2RqWXJUMlZhTnpsM1IzaGlMMGMwTm1acmNXNURSRzR6VjJsbFFXVXZjVWhvZWpoSVRGWTNWM0p2WmpKblp6UXJaM1ZsTW01UlFqWnBNRmM1YjNsQlQycHhOSGxYTjJ4RlRYVm9hblF3UzBZemVXUm1XSGhMTW0xWk4wVkpTVko2VEdSeVMwOXBZMjlhZEhKVGVFaE5iSE5aTVZScU5GSmpWbGhDTHpWSWRIVlJlRlJFTDNCcmFtOVdNMjEwVDBKTlJETTVUSFZVZUhZNFZVNTFhMHBXV1hwNGVrUTFOVUZVVkdSRldYTmlLMlk0VTBodWFWRmhWM01yYW1WSlpHWklkRXhxVVZrclJGUmthbXBDWmpCVldYSlhSbk5DY0hSSU1WcHZlRk4wTTNkc01rbHhRemxYU2l0bVFpOW9jWHBMYnpsamVsZExaQzlCT1ZkcFoyNHJUV1Z3YTBzMVdsRXhXSGhCU25oRmR6WjFXVzV6UlRBeEwzZzNWbnB1YTFKMWJHaEhjVnBhTUZKcWFsSXhNRnBPWmpoeU4ydGxVMGMwTTJsSVlubEhUMGN4ZVdkdUsxTnBhMmw2WVc0eEwwRlBVazg0U0RkdE0xb3hjRXhST1dnMVREVkJXbTFtVUZsWU0yeDJjVXBZYkZJeU9FaDBaRGhuVVdSM1RrOTJLM0J1UldaeWEyTXJNbFJNVG5CWlVWRldiRWcxZGk5YWVGZEdlbmhFYWpRd1ZHWmhjRXcyTlZRNVprVkJXa3BUZDJaNEwwWldSMUkzU25oV0wxRTFPSGt4WVVJMFFqa3ZVMWx3Y21oYVF5OUdRWHBwUVRoa05XNHlhbGMzTVRCa1VXeHlZbVpWVUVWNVEyeFFSa3h4V2pSQ09TODFVVWRsWTFCdU4wcFZMemszVmtKTGNERXdhVWR0V0hZd1IyUmxXRlpNZVRoaWRVaG5ReTlZZUhabFlUbExlRk1yVUVWR04ybEpjVmhLTVRaMFVsTXljR1ZNYlRSUGJtaE1lRlpsYjFoT1RXbEdWazg0WVZNd2NrUlBZbWREZWxkTFp6Tm1kMmhSWjFWRGRYVkxiak5tZDBGUFZGbzJaVmhIWkdJeVREUXJkRzVxWlZCWFRWazFNemhOZG1KM1lYbHlRVnBFWldWM09HaHdVR1VyUkZndmNISmxUVmxaTTI5TWRWcGhabWQ1TDFWRmNHSm5XbFV5VWpsUVZsZFdZalpFYVc0dlJVdHhRVzFxYjFCWVZVSnlRbmhuZWpoRFIxZG1ZVnBqVDNac1JIbzFVVkYyTm5wTmRrdHNVMWh0VVhKeU5FRnpNV3cwVGpNNFNWVkpSa0Z3Y25CdVowRkNOMHRQUlRGa1kwWTJjQzlxY2tONWR6bE9USFpHTHpSWVpWQlZkMWR6YjNSa2RGVkVMelZHYkhZdmN6UllWM1I1YjAxelVUVllaRkYwV25GVGNXUmtjalowTldoaE9URlBRVzVCZDFNNWNFVlZkbmRoWlZZeVEwMUdObEJzTkdwM1EwVXlabmtyT1dSdGJsaFRSRzQwU1dObldEZ3hXVkJZZG1JMGVtSXllakJZUWpCM2VucEplWFpUTURScWVrZHhSbkZ3WW5Gc05FSXhLMmxxZURodGNYWnVUR0poWWpRclZVMHpja1ZaVDJab2FTOXhXRTAzSzB0dVVrUmpkRzlDYmpkS1VuRkhlVlVyZFhkcmJ5dFlUell6ZDBkUWRFeERaelVyTkhkaFkwOHZRM2wzSzIxV05EUnJNV2tyWTFCeFptaEVjMjVvY21OSFMzQmxRV1JtV1doM1VFbE5NVmhvZUVSUFIyeE9Ta2RZZVc1bVV6RnFha3gwYkRoT1dHOTNiRXg0UkhJMlVUUm5PVzR6VDFCSFZrWkpSek14T1ZFNFV6bHJPRVpYUmpSb01UaERZMWRRY1ZvMVdqbEhNMWQ0T0RocGJrUklURGRQUkVod1RuWnBNamhJVUVGbWFGSk9MM2R6ZUVkbE1ITkVhMVkzSzBJM1RrcE5XbVZCUWxoek1YaFdjbFZXVTNOUWNVczBMM0o2Um1KYWNVVjNabVpxVjNKdGQxcGtZVGxrWlU1MGREQnBkbUZKV0ZrMVVYWklVWG94YkM5S1lrdDBOMEpxTTFSdU1tNXdlRUpZUVhRME1UWlNVbFJLTWxSeU5tczBjbEJQY1d4dmNUTnpSMWhWVEhsa1VVZGphbXR3Ym1sYWQwOUlXRk5yWkhaQ00zSmFXa1ZqZGtsTmRsSkxRbEZYUm1ZNGRrbE5TR05DUkhKbFJWTm9kV3R5V1ZSNmEzVm1OblJyVDJOM1ZUY3JRMWhPTjAxc0swWnZWMjR6TVUxNFkzTlhkVEJYUlRjclEweFpUR1ZrU2t4MWRtdHliV0ZrTm1vME5IZHplRTQxSzJSa1VFRnNOVzF2UVhsR1ptaGFVa1poUzJOSVNpOUljWFkzZW1Kc1RIRjRiRWdyTDJkVGVXY3JkREpLYlROYUsxbzBiV05rVms4M2VVOHZhbU5TU2xnclNFeDNVMVpITkhwQ05TdGljVTVMWm1jeFpVTjViVEpYUlRONllXNTZNMGQxUTFvelNXVm1VbGc0TkRsNVVuZzRSRFJZYTBKS0x6SmhkMnRvU0VWeWJHWTVNbXBJU25WTlMxbEVWbkpIZURaRWVXMUZNRkJ3VmxRNE1tVmFRVFZsU1ZvNGVIZEZkRmt5VTNCTGRtOUhia3RGTlZaS2JrZHJNRzlxWm1KbGFDOW9VMkZQVW5aRlQzWndNMnN4VDBKR2QxUk1XbkJYYTNkME5XMWxkMHh3TUhKUlZHYzBTMlZJVDBVelR6bGxSRlJPTjJ4RVEwSmtUelE0V0hweFFXNUplbkV6Y0RZd1JVeHBibVozWVc1aFJFUkVZME4yTlV4MU1HcFFURVZOUzNGUlpUUTVPRFJaUlVKTWFEaERWR3c1VUZkb1FqaFJOU3RZVEVaTlFsQTRaalZxUjA0eVEzTjBjVGt3UVVGQlFVRlRWVlpQVWtzMVExbEpTVDBpSUdacGJHdzlJbTV2Ym1VaUlITjBjbTlyWlMxM2FXUjBhRDBpTUM0MUlpOCUyQlBDOW5Qand2Wno0OEwzTjJaejQlM0QlMjIlM0IlMEElMEElMjAlMjBsZXQlMjBsYXN0UGFzdGVkVGV4dCUyMCUzRCUyMCUyMiUyMiUzQiUwQSUwQSUyMCUyMHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCUyMmNvcHklMjIlMkMlMjAoZXZlbnQpJTIwJTNEJTNFJTIwJTdCJTBBJTIwJTIwJTIwJTIwU2NyYXRjaC52bS5ydW50aW1lLnN0YXJ0SGF0cyglMjJjbGlwYm9hcmRfd2hlbkNvcGllZCUyMiklM0IlMEElMjAlMjAlN0QpJTNCJTBBJTIwJTIwd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJTIycGFzdGUlMjIlMkMlMjAoZXZlbnQpJTIwJTNEJTNFJTIwJTdCJTBBJTIwJTIwJTIwJTIwU2NyYXRjaC52bS5ydW50aW1lLnN0YXJ0SGF0cyglMjJjbGlwYm9hcmRfd2hlblBhc3RlZCUyMiklM0IlMEElMjAlMjAlMjAlMjBjb25zdCUyMGNsaXBib2FyZERhdGElMjAlM0QlMjBldmVudC5jbGlwYm9hcmREYXRhJTIwJTdDJTdDJTIwd2luZG93LmNsaXBib2FyZERhdGElM0IlMEElMjAlMjAlMjAlMjBjb25zdCUyMHBhc3RlZFRleHQlMjAlM0QlMjBjbGlwYm9hcmREYXRhLmdldERhdGEoJTIyVGV4dCUyMiklM0IlMEElMjAlMjAlMjAlMjBsYXN0UGFzdGVkVGV4dCUyMCUzRCUyMHBhc3RlZFRleHQlM0IlMEElMjAlMjAlN0QpJTNCJTBBJTBBJTIwJTIwY2xhc3MlMjBDbGlwYm9hcmQlMjAlN0IlMEElMjAlMjAlMjAlMjBnZXRJbmZvKCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZCUzQSUyMCUyMmNsaXBib2FyZCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG5hbWUlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJDbGlwYm9hcmQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tJY29uVVJJJTNBJTIwZXh0ZW5zaW9uaWNvbiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbG9yMSUzQSUyMCUyMiUyMzAwODA4MCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbG9yMiUzQSUyMCUyMiUyMzAwNjY2NiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrcyUzQSUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMndoZW5Db3BpZWQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5FVkVOVCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJ3aGVuJTIwc29tZXRoaW5nJTIwaXMlMjBjb3BpZWQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaXNFZGdlQWN0aXZhdGVkJTNBJTIwZmFsc2UlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ3aGVuUGFzdGVkJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuRVZFTlQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyd2hlbiUyMHNvbWV0aGluZyUyMGlzJTIwcGFzdGVkJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlzRWRnZUFjdGl2YXRlZCUzQSUyMGZhbHNlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyc2V0Q2xpcGJvYXJkJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJjb3B5JTIwdG8lMjBjbGlwYm9hcmQlM0ElMjAlNUJURVhUJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRFWFQlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycmVzZXRDbGlwYm9hcmQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5DT01NQU5EJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJlc2V0JTIwY2xpcGJvYXJkJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmNsaXBib2FyZCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmNsaXBib2FyZCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkaXNhYmxlTW9uaXRvciUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJnZXRMYXN0UGFzdGVkVGV4dCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmxhc3QlMjBwYXN0ZWQlMjB0ZXh0JTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRpc2FibGVNb25pdG9yJTNBJTIwdHJ1ZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHNldENsaXBib2FyZChhcmdzKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGFyZ3MuVEVYVCklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjByZXNldENsaXBib2FyZCgpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoJTIyJTIyKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGNsaXBib2FyZCgpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobmF2aWdhdG9yLmNsaXBib2FyZCUyMCUyNiUyNiUyMG5hdmlnYXRvci5jbGlwYm9hcmQucmVhZFRleHQpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwU2NyYXRjaC5jYW5SZWFkQ2xpcGJvYXJkKCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAudGhlbigoYWxsb3dlZCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChhbGxvd2VkKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMG5hdmlnYXRvci5jbGlwYm9hcmQucmVhZFRleHQoKSUyMCUzRiUzRiUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuY2F0Y2goKCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTIyJTIyJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwZ2V0TGFzdFBhc3RlZFRleHQoKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGxhc3RQYXN0ZWRUZXh0JTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTdEJTBBJTBBJTIwJTIwU2NyYXRjaC5leHRlbnNpb25zLnJlZ2lzdGVyKG5ldyUyMENsaXBib2FyZCgpKSUzQiUwQSU3RCkoU2NyYXRjaCklM0IlMEElMjAlN0QpKFNjcmF0Y2gpJTNCIiwiZGF0YTp0ZXh0L2phdmFzY3JpcHQ7LChmdW5jdGlvbihTY3JhdGNoKSUyMCU3QiUyMCUyRiUyRiUyME5hbWUlM0ElMjBNYXRoJTBBJTJGJTJGJTIwSUQlM0ElMjB0cnVlZmFudG9tbWF0aCUwQSUyRiUyRiUyMERlc2NyaXB0aW9uJTNBJTIwQSUyMGxvdCUyMG9mJTIwb3BlcmF0b3JzJTIwYmxvY2tzJTJDJTIwZnJvbSUyMGV4cG9uZW50aWF0aW9uJTIwdG8lMjB0cmlnb25vbWV0cmljJTIwZnVuY3Rpb25zLiUwQSUyRiUyRiUyMEJ5JTNBJTIwVHJ1ZUZhbnRvbSUyMCUzQ2h0dHBzJTNBJTJGJTJGc2NyYXRjaC5taXQuZWR1JTJGdXNlcnMlMkZUcnVlRmFudG9tJTJGJTNFJTBBJTJGJTJGJTIwTGljZW5zZSUzQSUyME1JVCUwQSUwQSUyRiolMjBnZW5lcmF0ZWQlMjBsMTBuJTIwY29kZSUyMColMkZTY3JhdGNoLnRyYW5zbGF0ZS5zZXR1cCglN0IlMjJkZSUyMiUzQSU3QiUyMl9NYXRoJTIyJTNBJTIyTWF0aGUlMjIlN0QlMkMlMjJmaSUyMiUzQSU3QiUyMl9NYXRoJTIyJTNBJTIyTWF0ZW1hdGlpa2thJTIyJTJDJTIyXyU1QkElNUQlMjBleGFjdGx5JTIwY29udGFpbnMlMjAlNUJCJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCUyMHNpcyVDMyVBNGx0JUMzJUE0JUMzJUE0JTIwdGFya2FsbGVlbiUyMCU1QkIlNUQlM0YlMjIlMkMlMjJfJTVCQSU1RCUyMGlzJTIwbXVsdGlwbGUlMjBvZiUyMCU1QkIlNUQlM0YlMjIlM0ElMjJvbmtvJTIwJTVCQSU1RCUyMGx1dnVuJTIwJTVCQiU1RCUyMGtlcnJhbm5haW5lbiUzRiUyMiUyQyUyMl9jbGFtcCUyMCU1QkElNUQlMjBiZXR3ZWVuJTIwJTVCQiU1RCUyMGFuZCUyMCU1QkMlNUQlMjIlM0ElMjJyYWpvaXRhJTIwJTVCQSU1RCUyMHYlQzMlQTRsaWxsJUMzJUE0JTIwJTVCQiU1RCUyMCVFMiU4MCU5MyUyMCU1QkMlNUQlMjIlMkMlMjJfaXMlMjBmbG9hdCUyMCU1QkElNUQlM0YlMjIlM0ElMjJvbmtvJTIwJTVCQSU1RCUyMGxpdWt1bHVrdSUzRiUyMiUyQyUyMl9pcyUyMGludCUyMCU1QkElNUQlM0YlMjIlM0ElMjJvbmtvJTIwJTVCQSU1RCUyMGtva29uYWlzbHVrdSUzRiUyMiUyQyUyMl9pcyUyMG51bWJlciUyMCU1QkElNUQlM0YlMjIlM0ElMjJvbmtvJTIwJTVCQSU1RCUyMGx1a3UlM0YlMjIlMkMlMjJfaXMlMjBzYWZlJTIwbnVtYmVyJTIwJTVCQSU1RCUzRiUyMiUzQSUyMm9ua28lMjBsdWt1JTIwJTVCQSU1RCUyMHR1cnZhbGxpbmVuJTNGJTIyJTJDJTIyX2xvZyUyMG9mJTIwJTVCQSU1RCUyMHdpdGglMjBiYXNlJTIwJTVCQiU1RCUyMiUzQSUyMmxvZ2FyaXRtaSUyMGx1dnVzdGElMjAlNUJBJTVEJTIwa2FubmFsbGElMjAlNUJCJTVEJTIyJTJDJTIyX21hcCUyMCU1QkElNUQlMjBmcm9tJTIwcmFuZ2UlMjAlNUJtMSU1RCUyMC0lMjAlNUJNMSU1RCUyMHRvJTIwcmFuZ2UlMjAlNUJtMiU1RCUyMC0lMjAlNUJNMiU1RCUyMiUzQSUyMm11dW5uYSUyMCU1QkElNUQlMjB2JUMzJUE0bGlsdCVDMyVBNCUyMCU1Qm0xJTVEJTIwJUUyJTgwJTkzJTIwJTVCTTElNUQlMjB2JUMzJUE0bGlsbGUlMjAlNUJtMiU1RCUyMCVFMiU4MCU5MyUyMCU1Qk0yJTVEJTIyJTJDJTIyX3NpZ24lMjBvZiUyMCU1QkElNUQlMjIlM0ElMjJsdXZ1biUyMCU1QkElNUQlMjBldHVtZXJra2klMjIlMkMlMjJfdHJ1ZSUyMCU1Qk9QRVJBVE9SJTVEJTIwJTVCTlVNJTVEJTIyJTNBJTIydG9zaSUyMCU1Qk9QRVJBVE9SJTVEJTIwJTVCTlVNJTVEJTIyJTJDJTIyX3RydW5jJTIwb2YlMjAlNUJBJTVEJTIyJTNBJTIya2F0a2Fpc2UlMjAlNUJBJTVEJTIyJTJDJTIyX3RydW5jJTIwb2YlMjAlNUJBJTVEJTIwd2l0aCUyMCU1QkIlNUQlMjBkaWdpdHMlMjBhZnRlciUyMGRvdCUyMiUzQSUyMmthdGthaXNlJTIwJTVCQSU1RCUyMCU1QkIlNUQuJTIwcGlzdGVlbiUyMGolQzMlQTRsa2Vpc2VuJTIwbWVya2luJTIwa29oZGFsdGElMjIlN0QlMkMlMjJpdCUyMiUzQSU3QiUyMl9NYXRoJTIyJTNBJTIyTWF0ZW1hdGljYSUyMiUyQyUyMl8lNUJBJTVEJTIwZXhhY3RseSUyMGNvbnRhaW5zJTIwJTVCQiU1RCUzRiUyMiUzQSUyMiU1QkElNUQlMjBjb250aWVuZSUyMHNlcXVlbnphJTIwJTVCQiU1RCUyMiUyQyUyMl8lNUJBJTVEJTIwaXMlMjBtdWx0aXBsZSUyMG9mJTIwJTVCQiU1RCUzRiUyMiUzQSUyMiU1QkElNUQlMjAlQzMlQTglMjBtdWx0aXBsbyUyMGRpJTIwJTVCQiU1RCUyMiUyQyUyMl9jbGFtcCUyMCU1QkElNUQlMjBiZXR3ZWVuJTIwJTVCQiU1RCUyMGFuZCUyMCU1QkMlNUQlMjIlM0ElMjJ2aW5jb2xhJTIwJTVCQSU1RCUyMHRyYSUyMCU1QkIlNUQlMjBlJTIwJTVCQyU1RCUyMiUyQyUyMl9pcyUyMGZsb2F0JTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlMjB2aXJnb2xhJTIwbW9iaWxlJTIyJTJDJTIyX2lzJTIwaW50JTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlMjBpbnRlcm8lMjIlMkMlMjJfaXMlMjBudW1iZXIlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RG51bWVybyUyMiUyQyUyMl9pcyUyMHNhZmUlMjBudW1iZXIlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCUyMG51bWVybyUyMHByaW1vJTIwc2ljdXJvJTIyJTJDJTIyX2xvZyUyMG9mJTIwJTVCQSU1RCUyMHdpdGglMjBiYXNlJTIwJTVCQiU1RCUyMiUzQSUyMmxvZyUyMGRpJTIwJTVCQSU1RCUyMGNvbiUyMGJhc2UlMjAlNUJCJTVEJTIyJTJDJTIyX21hcCUyMCU1QkElNUQlMjBmcm9tJTIwcmFuZ2UlMjAlNUJtMSU1RCUyMC0lMjAlNUJNMSU1RCUyMHRvJTIwcmFuZ2UlMjAlNUJtMiU1RCUyMC0lMjAlNUJNMiU1RCUyMiUzQSUyMm1hcHBhJTIwJTVCQSU1RCUyMGRhJTIwcmFuZ2UlMjAlNUJtMSU1RCUyMC0lMjAlNUJNMSU1RCUyMGElMjByYW5nZSUyMCU1Qm0yJTVEJTIwLSUyMCU1Qk0yJTVEJTIyJTJDJTIyX3NpZ24lMjBvZiUyMCU1QkElNUQlMjIlM0ElMjJzZWdubyUyMGRpJTIwJTVCQSU1RCUyMiUyQyUyMl90cnVlJTIwJTVCT1BFUkFUT1IlNUQlMjAlNUJOVU0lNUQlMjIlM0ElMjJ2YWxvcmUlMjByZWFsZSUyMGRpJTIwJTVCT1BFUkFUT1IlNUQlMjBkaSUyMCU1Qk5VTSU1RCUyMiUyQyUyMl90cnVuYyUyMG9mJTIwJTVCQSU1RCUyMiUzQSUyMnRyb25jYSUyMCU1QkElNUQlMjIlMkMlMjJfdHJ1bmMlMjBvZiUyMCU1QkElNUQlMjB3aXRoJTIwJTVCQiU1RCUyMGRpZ2l0cyUyMGFmdGVyJTIwZG90JTIyJTNBJTIydHJvbmNhJTIwJTVCQSU1RCUyMGNvbiUyMCU1QkIlNUQlMjBjaWZyZSUyMGRvcG8lMjBsYSUyMHZpcmdvbGElMjIlN0QlMkMlMjJqYSUyMiUzQSU3QiUyMl9NYXRoJTIyJTNBJTIyJUU2JTk1JUIwJUU1JUFEJUE2JTIyJTJDJTIyXyU1QkElNUQlMjBleGFjdGx5JTIwY29udGFpbnMlMjAlNUJCJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCVFMyU4MSU4QyVFNyVBMiVCQSVFMyU4MSU4QiVFMyU4MSVBQiU1QkIlNUQlRTMlODIlOTIlRTUlOTAlQUIlRTMlODIlOTMlRTMlODElQTclRTMlODElODQlRTMlODIlOEIlMjIlMkMlMjJfY2xhbXAlMjAlNUJBJTVEJTIwYmV0d2VlbiUyMCU1QkIlNUQlMjBhbmQlMjAlNUJDJTVEJTIyJTNBJTIyJTVCQSU1RCVFMyU4MiU5MiU1QkIlNUQlRTMlODElOEIlRTMlODIlODklNUJDJTVEJUUzJTgxJUJFJUUzJTgxJUE3JUUzJTgxJUE3JUU4JUExJUE4JUUzJTgxJTk5JTIyJTJDJTIyX2lzJTIwZmxvYXQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCVFMyU4MSU4QyVFNSVCMCU4RiVFNiU5NSVCMCUyMiUyQyUyMl9pcyUyMGludCUyMCU1QkElNUQlM0YlMjIlM0ElMjIlNUJBJTVEJUUzJTgxJThDJUU2JTk1JUI0JUU2JTk1JUIwJTIyJTJDJTIyX2lzJTIwbnVtYmVyJTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlRTMlODElOEMlRTYlOTUlQjAlRTUlQUQlOTclMjIlMkMlMjJfaXMlMjBzYWZlJTIwbnVtYmVyJTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlRTMlODElOEMlRTUlQUUlODklRTUlODUlQTglRTMlODElQUElRTYlOTUlQjAlRTUlQUQlOTclMjIlMkMlMjJfbWFwJTIwJTVCQSU1RCUyMGZyb20lMjByYW5nZSUyMCU1Qm0xJTVEJTIwLSUyMCU1Qk0xJTVEJTIwdG8lMjByYW5nZSUyMCU1Qm0yJTVEJTIwLSUyMCU1Qk0yJTVEJTIyJTNBJTIyJTVCQSU1RCVFMyU4MSVBRSU1Qm0xJTVEJUUzJTgxJThCJUUzJTgyJTg5JTVCTTElNUQlRTMlODElQkUlRTMlODElQTclRTMlODElQUUlRTclQUYlODQlRTUlOUIlQjIlRTMlODIlOTIlNUJtMiU1RCVFMyU4MSU4QiVFMyU4MiU4OSU1Qk0yJTVEJUUzJTgxJUJFJUUzJTgxJUE3JUUzJTgxJUFFJUU3JUFGJTg0JUU1JTlCJUIyJUUzJTgxJUFCJUUzJTgxJTk5JUUzJTgyJThCJTIyJTdEJTJDJTIya28lMjIlM0ElN0IlMjJfTWF0aCUyMiUzQSUyMiVFQyU4OCU5OCVFRCU5NSU5OSUyMiUyQyUyMl8lNUJBJTVEJTIwZXhhY3RseSUyMGNvbnRhaW5zJTIwJTVCQiU1RCUzRiUyMiUzQSUyMiU1QkElNUQlRUMlOUQlQjQoJUVBJUIwJTgwKSUyMCU1QkIlNUQlRUMlOUQlODQoJUVCJUE1JUJDKSUyMCVFQyVBMCU5NSVFRCU5OSU5NSVFRCU5RSU4OCUyMCVFRCU4RiVBQyVFRCU5NSVBOCVFRCU5NSU5OCVFQiU4QSU5NCVFQSVCMCU4MCUzRiUyMiUyQyUyMl8lNUJBJTVEJTIwaXMlMjBtdWx0aXBsZSUyMG9mJTIwJTVCQiU1RCUzRiUyMiUzQSUyMiU1QkElNUQlRUMlOUQlQjQoJUVBJUIwJTgwKSUyMCU1QkIlNUQlRUMlOUQlOTglMjAlRUIlQjAlQjAlRUMlODglOTglRUMlOUQlQjglRUElQjAlODAlM0YlMjIlMkMlMjJfY2xhbXAlMjAlNUJBJTVEJTIwYmV0d2VlbiUyMCU1QkIlNUQlMjBhbmQlMjAlNUJDJTVEJTIyJTNBJTIyJTVCQSU1RCUyMCVFQSVCMCU5MiVFQyU5RCU4NCUyMCU1QkIlNUQlRUIlQjYlODAlRUQlODQlQjAlMjAlNUJDJTVEJUVBJUI5JThDJUVDJUE3JTgwJTIwJUVCJUIyJTk0JUVDJTlDJTg0JUVCJUExJTlDJTIwJUVDJUEwJTlDJUVEJTk1JTlDJTIyJTJDJTIyX2lzJTIwZmxvYXQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCVFQyU5RCVCNCglRUElQjAlODApJTIwJUVCJUI2JTgwJUVCJThGJTk5JUVDJTg2JThDJUVDJTg4JTk4JUVDJUEwJTkwJUVDJTlEJUI4JUVBJUIwJTgwJTNGJTIyJTJDJTIyX2lzJTIwaW50JTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlRUMlOUQlQjQoJUVBJUIwJTgwKSUyMCVFQyVBMCU5NSVFQyU4OCU5OCVFQyU5RCVCOCVFQSVCMCU4MCUzRiUyMiUyQyUyMl9pcyUyMG51bWJlciUyMCU1QkElNUQlM0YlMjIlM0ElMjIlNUJBJTVEKCVFQyU5RCVCNCklRUElQjAlODAlMjAlRUMlODglQUIlRUMlOUUlOTAlRUMlOUQlQjglRUElQjAlODAlM0YlMjIlMkMlMjJfaXMlMjBzYWZlJTIwbnVtYmVyJTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlRUMlOUQlQjQoJUVBJUIwJTgwKSUyMCVFQyU5NSU4OCVFQyVBMCU4NCVFRCU5NSU5QyUyMCVFQyU4OCVBQiVFQyU5RSU5MCVFQyU5RCVCOCVFQSVCMCU4MCUzRiUyMiUyQyUyMl9sb2clMjBvZiUyMCU1QkElNUQlMjB3aXRoJTIwYmFzZSUyMCU1QkIlNUQlMjIlM0ElMjIlRUIlQjAlOTElRUMlOUQlQjQlMjAlNUJCJTVEJUVDJTlEJUI4JTIwbG9nJTIwJTVCQSU1RCUyMiUyQyUyMl9tYXAlMjAlNUJBJTVEJTIwZnJvbSUyMHJhbmdlJTIwJTVCbTElNUQlMjAtJTIwJTVCTTElNUQlMjB0byUyMHJhbmdlJTIwJTVCbTIlNUQlMjAtJTIwJTVCTTIlNUQlMjIlM0ElMjIlNUJBJTVEJTIwJUVBJUIwJTkyJUVDJTlEJTk4JTIwJTVCbTElNUQlMjAtJTIwJTVCTTElNUQlMjAlRUIlQjIlOTQlRUMlOUMlODQlRUIlQTUlQkMlMjAlNUJtMiU1RCUyMC0lMjAlNUJNMiU1RCUyMCVFQiVCMiU5NCVFQyU5QyU4NCVFQyU5NyU5MCUyMCVFQiU4QyU4MCVFQyU5RCU5MSUyMiUyQyUyMl90cnVuYyUyMG9mJTIwJTVCQSU1RCUyMiUzQSUyMiVFQiVCMiU4NCVFQiVBNiVCQyUyMCU1QkElNUQlMjIlMkMlMjJfdHJ1bmMlMjBvZiUyMCU1QkElNUQlMjB3aXRoJTIwJTVCQiU1RCUyMGRpZ2l0cyUyMGFmdGVyJTIwZG90JTIyJTNBJTIyJTVCQSU1RCVFQyU5RCU4NCglRUIlQTUlQkMpJTIwJUVDJTg2JThDJUVDJTg4JUFCJUVDJUEwJTkwJTIwJTVCQiU1RCVFQyU5RSU5MCVFQiVBNiVBQyUyMCVFQyU5RCVCNCVFRCU5QiU4NCVFQiVBMSU5QyUyMCVFQiVCMiU4NCVFQiVBNiVCQyUyMiU3RCUyQyUyMm5iJTIyJTNBJTdCJTIyX01hdGglMjIlM0ElMjJNYXR0ZSUyMiU3RCUyQyUyMm5sJTIyJTNBJTdCJTIyX01hdGglMjIlM0ElMjJXaXNrdW5kZSUyMiU3RCUyQyUyMnJ1JTIyJTNBJTdCJTIyX01hdGglMjIlM0ElMjIlRDAlOUMlRDAlQjAlRDElODIlRDAlQjUlRDAlQkMlRDAlQjAlRDElODIlRDAlQjglRDAlQkElRDAlQjAlMjIlMkMlMjJfJTVCQSU1RCUyMGV4YWN0bHklMjBjb250YWlucyUyMCU1QkIlNUQlM0YlMjIlM0ElMjIlNUJBJTVEJTIwJUQxJTgxJUQwJUJFJUQwJUI0JUQwJUI1JUQxJTgwJUQwJUI2JUQwJUI4JUQxJTgyJTIwJUQwJUI4JUQwJUJDJUQwJUI1JUQwJUJEJUQwJUJEJUQwJUJFJTIwJTVCQiU1RCUzRiUyMiUyQyUyMl8lNUJBJTVEJTIwaXMlMjBtdWx0aXBsZSUyMG9mJTIwJTVCQiU1RCUzRiUyMiUzQSUyMiU1QkElNUQlMjAlRDElODMlRDAlQkMlRDAlQkQlRDAlQkUlRDAlQjYlRDAlQjUlRDAlQkQlMjAlNUJCJTVEJTNGJTIyJTJDJTIyX2NsYW1wJTIwJTVCQSU1RCUyMGJldHdlZW4lMjAlNUJCJTVEJTIwYW5kJTIwJTVCQyU1RCUyMiUzQSUyMiVEMCVCNyVEMCVCMCVEMCVCNiVEMCVCMCVEMSU4MiVEMSU4QyUyMCU1QkElNUQlMjAlRDAlQkMlRDAlQjUlRDAlQjYlRDAlQjQlRDElODMlNUJCJTVEJTIwJUQwJUI4JTIwJTVCQyU1RCUyMiUyQyUyMl9pcyUyMGZsb2F0JTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlMjAlRDElODclRDAlQjglRDElODElRDAlQkIlRDAlQkUlM0YlMjIlMkMlMjJfaXMlMjBpbnQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCUyMCVEMCVCRSVEMCVCQSVEMSU4MCVEMSU4MyVEMCVCMyVEMCVCQiVEMSU5MSVEMCVCRCVEMCVCRCVEMCVCRSVEMCVCNSUyMCVEMSU4NyVEMCVCOCVEMSU4MSVEMCVCQiVEMCVCRSUzRiUyMiUyQyUyMl9pcyUyMG51bWJlciUyMCU1QkElNUQlM0YlMjIlM0ElMjIlNUJBJTVEJTIwJUQxJTg2JUQwJUI4JUQxJTg0JUQxJTgwJUQwJUIwJTNGJTIyJTJDJTIyX2lzJTIwc2FmZSUyMG51bWJlciUyMCU1QkElNUQlM0YlMjIlM0ElMjIlNUJBJTVEJTIwJUQwJUIxJUQwJUI1JUQwJUI3JUQwJUJFJUQwJUJGJUQwJUIwJUQxJTgxJUQwJUJEJUQwJUJFJUQwJUI1JTIwJUQxJTg3JUQwJUI4JUQxJTgxJUQwJUJCJUQwJUJFJTNGJTIyJTJDJTIyX2xvZyUyMG9mJTIwJTVCQSU1RCUyMHdpdGglMjBiYXNlJTIwJTVCQiU1RCUyMiUzQSUyMiVEMCVCQiVEMCVCRSVEMCVCMyVEMCVCMCVEMSU4MCVEMCVCOCVEMSU4NCVEMCVCQyUyMCU1QkElNUQlMjAlRDElODElMjAlRDAlQkUlRDElODElRDAlQkQlRDAlQkUlRDAlQjIlRDAlQjAlRDAlQkQlRDAlQjglRDAlQjUlRDAlQkMlMjAlNUJCJTVEJTIyJTJDJTIyX21hcCUyMCU1QkElNUQlMjBmcm9tJTIwcmFuZ2UlMjAlNUJtMSU1RCUyMC0lMjAlNUJNMSU1RCUyMHRvJTIwcmFuZ2UlMjAlNUJtMiU1RCUyMC0lMjAlNUJNMiU1RCUyMiUzQSUyMiVEMCVCQSVEMCVCMCVEMSU4MCVEMSU4MiVEMCVCMCUyMCU1QkElNUQlMjAlRDAlQjglRDAlQjclMjAlRDElODAlRDAlQjAlRDElODElRDElODElRDElODIlRDAlQkUlRDElOEYlRDAlQkQlRDAlQjglRDElOEYlMjAlNUJtMSU1RCUyMC0lMjAlNUJNMSU1RCUyMCVEMCVCNCVEMCVCRSUyMCVEMSU4MCVEMCVCMCVEMSU4MSVEMSU4MSVEMSU4MiVEMCVCRSVEMSU4RiVEMCVCRCVEMCVCOCVEMSU4RiUyMCU1Qm0yJTVEJTIwLSUyMCU1Qk0yJTVEJTIyJTJDJTIyX3NpZ24lMjBvZiUyMCU1QkElNUQlMjIlM0ElMjIlRDAlQjclRDAlQkQlRDAlQjAlRDAlQkElMjAlNUJBJTVEJTIyJTJDJTIyX3RydWUlMjAlNUJPUEVSQVRPUiU1RCUyMCU1Qk5VTSU1RCUyMiUzQSUyMiVEMCVCRiVEMSU4MCVEMCVCMCVEMCVCMiVEMCVCNCVEMCVCMCUyMCU1Qk9QRVJBVE9SJTVEJTIwJTVCTlVNJTVEJTIwJTIyJTJDJTIyX3RydW5jJTIwb2YlMjAlNUJBJTVEJTIyJTNBJTIyJUQxJTgzJUQxJTgxJUQwJUI1JUQxJTg3JUQwJUI1JUQwJUJEJUQwJUI4JUQwJUI1JTIwJTVCQSU1RCUyMiUyQyUyMl90cnVuYyUyMG9mJTIwJTVCQSU1RCUyMHdpdGglMjAlNUJCJTVEJTIwZGlnaXRzJTIwYWZ0ZXIlMjBkb3QlMjIlM0ElMjIlRDElODMlRDElODElRDAlQjUlRDElODclRDAlQjUlRDAlQkQlRDAlQjglRDAlQjUlMjAlNUJBJTVEJTIwJUQxJTgxJTIwJTVCQiU1RCUyMCVEMSU4NiVEMCVCOCVEMSU4NCVEMSU4MCVEMCVCMCVEMCVCQyVEMCVCOCUyMCVEMCVCRiVEMCVCRSVEMSU4MSVEMCVCQiVEMCVCNSUyMCVEMSU4MiVEMCVCRSVEMSU4NyVEMCVCQSVEMCVCOCUyMiU3RCUyQyUyMnVrJTIyJTNBJTdCJTIyX01hdGglMjIlM0ElMjIlRDAlOUMlRDAlQjAlRDElODIlRDAlQjUlRDAlQkMlRDAlQjAlRDElODIlRDAlQjglRDAlQkElRDAlQjAlMjIlN0QlMkMlMjJ6aC1jbiUyMiUzQSU3QiUyMl9NYXRoJTIyJTNBJTIyJUU2JTk1JUIwJUU1JUFEJUE2JTIyJTJDJTIyXyU1QkElNUQlMjBleGFjdGx5JTIwY29udGFpbnMlMjAlNUJCJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCVFNyU5QyU5RiVFNyU5QSU4NCVFNSU4QyU4NSVFNSU5MCVBQiUyMCU1QkIlNUQlRUYlQkMlOUYlMjIlMkMlMjJfJTVCQSU1RCUyMGlzJTIwbXVsdGlwbGUlMjBvZiUyMCU1QkIlNUQlM0YlMjIlM0ElMjIlNUJBJTVEJUU2JTk4JUFGJTVCQiU1RCVFNyU5QSU4NCVFNSU4MCU4RCVFNiU5NSVCMCVFRiVCQyU5RiUyMiUyQyUyMl9jbGFtcCUyMCU1QkElNUQlMjBiZXR3ZWVuJTIwJTVCQiU1RCUyMGFuZCUyMCU1QkMlNUQlMjIlM0ElMjIlRTUlQjAlODYlNUJBJTVEJUU5JTk5JTkwJUU1JTg4JUI2JUU1JTlDJUE4JTVCQiU1RCVFNSU4OCVCMCU1QkMlNUQlRTQlQjklOEIlRTklOTclQjQlMjIlMkMlMjJfaXMlMjBmbG9hdCUyMCU1QkElNUQlM0YlMjIlM0ElMjIlNUJBJTVEJUU2JTk4JUFGJUU1JUIwJThGJUU2JTk1JUIwJUVGJUJDJTlGJTIyJTJDJTIyX2lzJTIwaW50JTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQlRTYlOTglQUYlRTYlOTUlQjQlRTYlOTUlQjAlRUYlQkMlOUYlMjIlMkMlMjJfaXMlMjBudW1iZXIlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCVFNiU5OCVBRiVFNiU5NSVCMCVFNSVBRCU5NyVFRiVCQyU5RiUyMiUyQyUyMl9pcyUyMHNhZmUlMjBudW1iZXIlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCVFNSU4RiVBRiVFOCVBMiVBQiVFNyVCMiVCRSVFNyVBMSVBRSVFOCVBMSVBOCVFNyVBNCVCQSVFRiVCQyU5RiUyMiUyQyUyMl9sb2clMjBvZiUyMCU1QkElNUQlMjB3aXRoJTIwYmFzZSUyMCU1QkIlNUQlMjIlM0ElMjJsb2clNUJBJTVEJUU0JUJCJUE1JTVCQiU1RCVFNCVCOCVCQSVFNSVCQSU5NSUyMiUyQyUyMl9tYXAlMjAlNUJBJTVEJTIwZnJvbSUyMHJhbmdlJTIwJTVCbTElNUQlMjAtJTIwJTVCTTElNUQlMjB0byUyMHJhbmdlJTIwJTVCbTIlNUQlMjAtJTIwJTVCTTIlNUQlMjIlM0ElMjIlRTUlQjAlODYlNUJBJTVEJUU0JUJCJThFJUU4JThDJTgzJUU1JTlCJUI0JTVCbTElNUQtJTVCTTElNUQlRTYlOTglQTAlRTUlQjAlODQlRTUlODglQjAlRTglOEMlODMlRTUlOUIlQjQlNUJtMiU1RC0lNUJNMiU1RCUyMiUyQyUyMl9zaWduJTIwb2YlMjAlNUJBJTVEJTIyJTNBJTIyJTVCQSU1RCVFNyU5QSU4NCVFNSU4NyVCRCVFNiU5NSVCMCVFNyVBQyVBNiVFNSU4RiVCNyUyMiUyQyUyMl90cnVlJTIwJTVCT1BFUkFUT1IlNUQlMjAlNUJOVU0lNUQlMjIlM0ElMjIlRTclQjIlQkUlRTclQTElQUUlNUJPUEVSQVRPUiU1RCU1Qk5VTSU1RCUyMiUyQyUyMl90cnVuYyUyMG9mJTIwJTVCQSU1RCUyMiUzQSUyMiU1QkElNUQlRTclOUElODQlRTYlOTUlQjQlRTYlOTUlQjAlRTklODMlQTglRTUlODglODYlMjIlMkMlMjJfdHJ1bmMlMjBvZiUyMCU1QkElNUQlMjB3aXRoJTIwJTVCQiU1RCUyMGRpZ2l0cyUyMGFmdGVyJTIwZG90JTIyJTNBJTIyJTVCQSU1RCVFNCVCRiU5RCVFNyU5NSU5OSU1QkIlNUQlRTQlQkQlOEQlRTUlQjAlOEYlRTYlOTUlQjAlMjAlMjIlN0QlN0QpJTNCJTJGKiUyMGVuZCUyMGdlbmVyYXRlZCUyMGwxMG4lMjBjb2RlJTIwKiUyRigoU2NyYXRjaCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjJ1c2UlMjBzdHJpY3QlMjIlM0IlMEElMEElMjAlMjBjb25zdCUyMGljb24lMjAlM0QlMEElMjAlMjAlMjAlMjAlMjJkYXRhJTNBaW1hZ2UlMkZzdmclMkJ4bWwlM0JiYXNlNjQlMkNQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZHBaSFJvUFNJeU1qVXVNelUwT0NJZ2FHVnBaMmgwUFNJeU1qVXVNelUwT0NJZ2RtbGxkMEp2ZUQwaU1Dd3dMREl5TlM0ek5UUTRMREl5TlM0ek5UUTRJajQ4WnlCMGNtRnVjMlp2Y20wOUluUnlZVzV6YkdGMFpTZ3RNakEzTGpNeU1qZ3NMVFkzTGpNeU1qWXBJajQ4WnlCa1lYUmhMWEJoY0dWeUxXUmhkR0U5SW5zbWNYVnZkRHRwYzFCaGFXNTBhVzVuVEdGNVpYSW1jWFZ2ZERzNmRISjFaWDBpSUdacGJHd3RjblZzWlQwaWJtOXVlbVZ5YnlJZ2MzUnliMnRsTFd4cGJtVmpZWEE5SW1KMWRIUWlJSE4wY205clpTMXNhVzVsYW05cGJqMGliV2wwWlhJaUlITjBjbTlyWlMxdGFYUmxjbXhwYldsMFBTSXhNQ0lnYzNSeWIydGxMV1JoYzJoaGNuSmhlVDBpSWlCemRISnZhMlV0WkdGemFHOW1abk5sZEQwaU1DSWdjM1I1YkdVOUltMXBlQzFpYkdWdVpDMXRiMlJsT2lCdWIzSnRZV3dpUGp4d1lYUm9JR1E5SWsweU1EY3VNekl5T0RFc01UZ3dZekFzTFRZeUxqSXpNREF4SURVd0xqUTBOek01TEMweE1USXVOamMzTkNBeE1USXVOamMzTkN3dE1URXlMalkzTnpSak5qSXVNak13TURFc01DQXhNVEl1TmpjM05DdzFNQzQwTkRjek9TQXhNVEl1TmpjM05Dd3hNVEl1TmpjM05HTXdMRFl5TGpJek1EQXhJQzAxTUM0ME5EY3pPU3d4TVRJdU5qYzNOQ0F0TVRFeUxqWTNOelFzTVRFeUxqWTNOelJqTFRZeUxqSXpNREF4TERBZ0xURXhNaTQyTnpjMExDMDFNQzQwTkRjek9TQXRNVEV5TGpZM056UXNMVEV4TWk0Mk56YzBlaUlnWm1sc2JEMGlJelU1WXpBMU9TSWdjM1J5YjJ0bFBTSnViMjVsSWlCemRISnZhMlV0ZDJsa2RHZzlJakFpTHo0OGNHRjBhQ0JrUFNKTk16azBMakV6TURrM0xERXpNaTQxTURreU4yd3RNelV1TWpRM05USXNMVEF1TURRNU1qTmpMVEF1T1RReU1EZ3NOREV1TkRRNE9Ea2dMVEl4TGpFMU9UQXhMRGswTGpVNU56VTBJRGN1TkRZd016Z3NPVFF1TWpFek16bGpNVEF1TlRBd01UZ3NMVEF1TkRRNE1UZ2dNVEV1TURZek5EZ3NMVEUyTGpBMk1URWdNVEF1T0RJMU5qZ3NMVEkyTGpNd05URTRiREU1TGpJeU9ERTBMREV6TGpNMk5qWTNZekFzTVRJdU5ESXdPVFFnTFRFd0xqRTBNVGd4TERNMExqZzFNalUwSUMwek5TNHhNVEUzTkN3ek5DNHdNakF5WXkweE5TNHhOelF3TXl3dE1DNHhNamd3TlNBdE1qa3VORFE0TmpJc0xURXhMakkwTkRBNElDMHlPUzQ0TXpJM09Dd3RNekF1TVRrMU5qSmpNQzQxTVRJeUxDMHlPQzQwT1RFek15QTJMak13T0RBeUxDMDFOaTR6TURnNE9TQTNMamszTWpZM0xDMDROUzR6TnpZME5Xd3RNall1TURBNE5EVXNMVEF1TlRZME1qaGpMVGN1TlRVMUxEZ3lMalEyTkRnZ0xURXdMakkyTmpVM0xERXhOUzQwT1RZeElDMHpOQzQxTXpJeU1pd3hNVFl1TXpJNE5ETmpMVGN1Tmpnek1EWXNMVEF1TXpJd01USWdMVEUwTGpjNE9UZzRMQzAxTGpneU5qTXlJQzB4TlM0MU5UZ3hPU3d0TVRRdU56ZzVPRGhqTFRJdU1URXlPRFFzTFRFMUxqZ3hOREk1SURNd0xqWTVNall4TEMweU5TNHhOVGs0TVNBek1TNDRORFV3Tml3dE1UQXlMakkwTmpRM1l5MHpNUzQyT1RJMk1Td3RNeTQxTWpFMElDMHpNUzQ0TURVME5Td3hOUzQyT0RRd015QXRNemN1TVRnek5UZ3NNakV1TnpZMk5EVnNMVEUwTGpNNE5qQTJMQzB4TGpVNE5ERTFZekU0TGpjMk5UVTRMQzAwTkM0NU5ETXlOaUE1TGpRMU9ESTVMQzB6T1M0eE1UVTROQ0F4TlRBdU56WTFNVElzTFRNNExqUXpNVE0xZWlJZ1ptbHNiRDBpSTJabVptWm1aaUlnYzNSeWIydGxQU0lqTlRsak1EVTVJaUJ6ZEhKdmEyVXRkMmxrZEdnOUlqSXVOU0l2UGp3dlp6NDhMMmMlMkJQQzl6ZG1jJTJCUENFdExYSnZkR0YwYVc5dVEyVnVkR1Z5T2pFeE1pNDJOemN4T1RRNU9UazVPVGs1T0RveE1USXVOamMzTkRBMUxTMCUyQiUyMiUzQiUwQSUwQSUyMCUyMGNvbnN0JTIwY2FzdCUyMCUzRCUyMFNjcmF0Y2guQ2FzdCUzQiUwQSUwQSUyMCUyMGNvbnN0JTIwaXNOb3RBY3R1YWxseVplcm8lMjAlM0QlMjAodmFsKSUyMCUzRCUzRSUyMCU3QiUwQSUyMCUyMCUyMCUyMGlmJTIwKHR5cGVvZiUyMHZhbCUyMCElM0QlM0QlMjAlMjJzdHJpbmclMjIpJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjBmb3IlMjAobGV0JTIwaSUyMCUzRCUyMDAlM0IlMjBpJTIwJTNDJTIwdmFsLmxlbmd0aCUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBjb2RlJTIwJTNEJTIwdmFsLmNoYXJDb2RlQXQoaSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjAnMCcuY2hhckNvZGVBdCgwKSUyMCUzRCUzRCUzRCUyMDQ4JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwJyU1Q3QnLmNoYXJDb2RlQXQoMCklMjAlM0QlM0QlM0QlMjA5JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwV2UlMjBpbmNsdWRlJTIwdGFiJTIwZm9yJTIwY29tcGF0aWJpbGl0eSUyMHdpdGglMjBzY3JhdGNoLXd3dydzJTIwYnJva2VuJTIwdHJpbSgpJTIwcG9seWZpbGwuJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwaHR0cHMlM0ElMkYlMkZnaXRodWIuY29tJTJGVHVyYm9XYXJwJTJGc2NyYXRjaC12bSUyRmlzc3VlcyUyRjExNSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMGh0dHBzJTNBJTJGJTJGc2NyYXRjaC5taXQuZWR1JTJGcHJvamVjdHMlMkY3ODgyNjE2OTklMkYlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChjb2RlJTIwJTNEJTNEJTNEJTIwNDglMjAlN0MlN0MlMjBjb2RlJTIwJTNEJTNEJTNEJTIwOSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMHJldHVybiUyMHRydWUlM0IlMEElMjAlMjAlN0QlM0IlMEElMEElMjAlMjBjb25zdCUyMGV4YWN0bHlDb21wYXJlJTIwJTNEJTIwKHYxJTJDJTIwdjIpJTIwJTNEJTNFJTIwJTdCJTBBJTIwJTIwJTIwJTIwbGV0JTIwbjElMjAlM0QlMjBOdW1iZXIodjEpJTNCJTBBJTIwJTIwJTIwJTIwbGV0JTIwbjIlMjAlM0QlMjBOdW1iZXIodjIpJTNCJTBBJTIwJTIwJTIwJTIwaWYlMjAobjElMjAlM0QlM0QlM0QlMjAwJTIwJTI2JTI2JTIwaXNOb3RBY3R1YWxseVplcm8odjEpKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMG4xJTIwJTNEJTIwTmFOJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTIwZWxzZSUyMGlmJTIwKG4yJTIwJTNEJTNEJTNEJTIwMCUyMCUyNiUyNiUyMGlzTm90QWN0dWFsbHlaZXJvKHYyKSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBuMiUyMCUzRCUyME5hTiUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGlmJTIwKGlzTmFOKG4xKSUyMCU3QyU3QyUyMGlzTmFOKG4yKSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBBdCUyMGxlYXN0JTIwb25lJTIwYXJndW1lbnQlMjBjYW4ndCUyMGJlJTIwY29udmVydGVkJTIwdG8lMjBhJTIwbnVtYmVyLiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMFNjcmF0Y2glMjBjb21wYXJlcyUyMHN0cmluZ3MlMjBhcyUyMGNhc2UlMjBpbnNlbnNpdGl2ZSUyQyUyMGJ1dCUyMGl0JTIwc2hvdWxkbid0JTIwYmUlMjBoZXJlJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzMSUyMCUzRCUyMFN0cmluZyh2MSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHMyJTIwJTNEJTIwU3RyaW5nKHYyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHMxJTIwJTNDJTIwczIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwLTElM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBlbHNlJTIwaWYlMjAoczElMjAlM0UlMjBzMiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAxJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyRiUyRiUyMEhhbmRsZSUyMHRoZSUyMHNwZWNpYWwlMjBjYXNlJTIwb2YlMjBJbmZpbml0eSUwQSUyMCUyMCUyMCUyMGlmJTIwKCUwQSUyMCUyMCUyMCUyMCUyMCUyMChuMSUyMCUzRCUzRCUzRCUyMEluZmluaXR5JTIwJTI2JTI2JTIwbjIlMjAlM0QlM0QlM0QlMjBJbmZpbml0eSklMjAlN0MlN0MlMEElMjAlMjAlMjAlMjAlMjAlMjAobjElMjAlM0QlM0QlM0QlMjAtSW5maW5pdHklMjAlMjYlMjYlMjBuMiUyMCUzRCUzRCUzRCUyMC1JbmZpbml0eSklMEElMjAlMjAlMjAlMjApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyRiUyRiUyMENvbXBhcmUlMjBhcyUyMG51bWJlcnMuJTBBJTIwJTIwJTIwJTIwcmV0dXJuJTIwbjElMjAtJTIwbjIlM0IlMEElMjAlMjAlN0QlM0IlMEElMEElMjAlMjBjb25zdCUyMHRvTmFOTnVtYmVyJTIwJTNEJTIwKHZhbHVlKSUyMCUzRCUzRSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyRiUyRiUyMElmJTIwdmFsdWUlMjBpcyUyMGFscmVhZHklMjBhJTIwbnVtYmVyJTIwd2UlMjBkb24ndCUyMG5lZWQlMjB0byUyMGNvZXJjZSUyMGl0JTIwd2l0aCUwQSUyMCUyMCUyMCUyMCUyRiUyRiUyME51bWJlcigpLiUwQSUyMCUyMCUyMCUyMGlmJTIwKHR5cGVvZiUyMHZhbHVlJTIwJTNEJTNEJTNEJTIwJTIybnVtYmVyJTIyKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMFNjcmF0Y2glMjB0cmVhdHMlMjBOYU4lMjBhcyUyMDAlMkMlMjB3aGVuJTIwbmVlZGVkJTIwYXMlMjBhJTIwbnVtYmVyJTJDJTIwYnV0JTIwaXQlMjBzaG91bGRuJ3QlMjBiZSUyMGhlcmUlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBFLmcuJTJDJTIwMCUyMCUyQiUyME5hTiUyMC0lM0UlMjAwLiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHZhbHVlJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBuJTIwJTNEJTIwTnVtYmVyKHZhbHVlKSUzQiUwQSUyMCUyMCUyMCUyMCUyRiUyRiUyMFNjcmF0Y2glMjB0cmVhdHMlMjBOYU4lMjBhcyUyMDAlMkMlMjB3aGVuJTIwbmVlZGVkJTIwYXMlMjBhJTIwbnVtYmVyJTJDJTIwYnV0JTIwaXQlMjBzaG91bGRuJ3QlMjBiZSUyMGhlcmUlMEElMjAlMjAlMjAlMjAlMkYlMkYlMjBFLmcuJTJDJTIwMCUyMCUyQiUyME5hTiUyMC0lM0UlMjAwLiUwQSUyMCUyMCUyMCUyMHJldHVybiUyMG4lM0IlMEElMjAlMjAlN0QlM0IlMEElMEElMjAlMjBjb25zdCUyMGlzVHJ1ZUludCUyMCUzRCUyMCh2YWwpJTIwJTNEJTNFJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTJGJTJGJTIwVmFsdWVzJTIwdGhhdCUyMGFyZSUyMGFscmVhZHklMjBudW1iZXJzLiUwQSUyMCUyMCUyMCUyMGlmJTIwKHR5cGVvZiUyMHZhbCUyMCUzRCUzRCUzRCUyMCUyMm51bWJlciUyMiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChpc05hTih2YWwpKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyME5hTiUyMGlzJTIwY29uc2lkZXJlZCUyMGFuJTIwaW50ZWdlci4lMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwVHJ1ZSUyMGlmJTIwaXQncyUyMCUyMnJvdW5kJTIyJTIwKGUuZy4lMkMlMjAyLjAlMjBhbmQlMjAyKS4lMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB2YWwlMjAlM0QlM0QlM0QlMjBNYXRoLmZsb29yKHZhbCklM0IlMEElMjAlMjAlMjAlMjAlN0QlMjBlbHNlJTIwaWYlMjAodHlwZW9mJTIwdmFsJTIwJTNEJTNEJTNEJTIwJTIyYm9vbGVhbiUyMiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjAlNjBUcnVlJTYwJTIwYW5kJTIwJTYwZmFsc2UlNjAlMjBhbHdheXMlMjByZXByZXNlbnQlMjBpbnRlZ2VyJTIwYWZ0ZXIlMjBTY3JhdGNoJTIwY2FzdC4lMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTIwZWxzZSUyMGlmJTIwKHR5cGVvZiUyMHZhbCUyMCUzRCUzRCUzRCUyMCUyMnN0cmluZyUyMiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBJZiUyMGl0JTIwY29udGFpbnMlMjBhJTIwZGVjaW1hbCUyMHBvaW50JTJDJTIwZG9uJ3QlMjBjb25zaWRlciUyMGl0JTIwYW4lMjBpbnQlMkMlMjBidXQlMjBpdCUyMHNob3VsZG4ndCUyMGJlJTIwaGVyZSUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbiUyMCUzRCUyME51bWJlcih2YWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoaXNOYU4obikpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwTmFOJTIwaXMlMjBjb25zaWRlcmVkJTIwYW4lMjBpbnRlZ2VyLiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHRydWUlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBUcnVlJTIwaWYlMjBpdCdzJTIwJTIycm91bmQlMjIlMjAoZS5nLiUyQyUyMDIuMCUyMGFuZCUyMDIpLiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMG4lMjAlM0QlM0QlM0QlMjBNYXRoLmZsb29yKG4pJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlN0QlM0IlMEElMEElMjAlMjBjbGFzcyUyMFNjcmF0Y2hNYXRoJTIwJTdCJTBBJTIwJTIwJTIwJTIwZ2V0SW5mbygpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWQlM0ElMjAlMjJ0cnVlZmFudG9tbWF0aCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG5hbWUlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJNYXRoJTIyKSUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbG9yMSUzQSUyMCUyMiUyMzU5YzA1OSUyMiUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnVJY29uVVJJJTNBJTIwaWNvbiUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrcyUzQSUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiolMjBlc2xpbnQtZGlzYWJsZSUyMGV4dGVuc2lvbiUyRnNob3VsZC10cmFuc2xhdGUlMjAqJTJGJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZXhwb25lbnRfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlNUJBJTVEJTIwJTVFJTIwJTVCQiU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJyb290X2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCQSU1RCUyMCVFMiU4OCU5QSUyMCU1QkIlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIybmVnYXRpdmVfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjItJTIwJTVCQSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIybW9yZV9vcl9lcXVhbF9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCQSU1RCUyMCVFMiU4OSVBNSUyMCU1QkIlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwNTAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJsZXNzX29yX2VxdWFsX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlNUJBJTVEJTIwJUUyJTg5JUE0JTIwJTVCQiU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjA1MCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMm5vdF9lcXVhbF9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCQSU1RCUyMCVFMiU4OSVBMCUyMCU1QkIlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwNTAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJleGFjdGx5X2VxdWFsX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlNUJBJTVEJTIwJUUyJTg5JUExJTIwJTVCQiU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjA1MCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMm5vdF9leGFjdGx5X2VxdWFsX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlNUJBJTVEJTIwJUUyJTg5JUEyJTIwJTVCQiU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjA1MCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmFsbW9zdF9lcXVhbF9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCQSU1RCUyMCVFMiU4OSU4OCUyMCU1QkIlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwNTAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJub3RfYWxtb3N0X2VxdWFsX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlNUJBJTVEJTIwJUUyJTg5JTg5JTIwJTVCQiU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjA1MCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmJldHdlZW5fb3JfZXF1YWwlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMiU1QkElNUQlMjAlRTIlODklQTQlMjAlNUJCJTVEJTIwJUUyJTg5JUE0JTIwJTVCQyU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyNTAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBDJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjEwMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmJldHdlZW4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMiU1QkElNUQlMjAlM0MlMjAlNUJCJTVEJTIwJTNDJTIwJTVCQyU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyNTAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBDJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjEwMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMm5hbmRfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMiU1QkElNUQlMjBuYW5kJTIwJTVCQiU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMm5vcl9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCQSU1RCUyMG5vciUyMCU1QkIlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBCJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ4b3JfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMiU1QkElNUQlMjB4b3IlMjAlNUJCJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyeG5vcl9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCQSU1RCUyMHhub3IlMjAlNUJCJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTJGKiUyMGVzbGludC1lbmFibGUlMjBleHRlbnNpb24lMkZzaG91bGQtdHJhbnNsYXRlJTIwKiUyRiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmV4YWN0bHlfY29udF9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyJTVCQSU1RCUyMGV4YWN0bHklMjBjb250YWlucyUyMCU1QkIlNUQlM0YlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhcHBsZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnNpZ25fb2YlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJzaWduJTIwb2YlMjAlNUJBJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwMC4xJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyY2xhbXBfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJjbGFtcCUyMCU1QkElNUQlMjBiZXR3ZWVuJTIwJTVCQiU1RCUyMGFuZCUyMCU1QkMlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBCJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBDJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjEwMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnNjYWxlX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybWFwJTIwJTVCQSU1RCUyMGZyb20lMjByYW5nZSUyMCU1Qm0xJTVEJTIwLSUyMCU1Qk0xJTVEJTIwdG8lMjByYW5nZSUyMCU1Qm0yJTVEJTIwLSUyMCU1Qk0yJTVEJTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbTElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME0xJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjEwMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG0yJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBNMiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIxJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIydHJ1bmMyX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIydHJ1bmMlMjBvZiUyMCU1QkElNUQlMjB3aXRoJTIwJTVCQiU1RCUyMGRpZ2l0cyUyMGFmdGVyJTIwZG90JTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIxJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIydHJ1bmNfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJ0cnVuYyUyMG9mJTIwJTVCQSU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmlzX211bHRpcGxlX29mX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjIlNUJBJTVEJTIwaXMlMjBtdWx0aXBsZSUyMG9mJTIwJTVCQiU1RCUzRiUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIybG9nX3dpdGhfYmFzZV9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmxvZyUyMG9mJTIwJTVCQSU1RCUyMHdpdGglMjBiYXNlJTIwJTVCQiU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwMTAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0cnVlX21hdGhfb3AlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJ0cnVlJTIwJTVCT1BFUkFUT1IlNUQlMjAlNUJOVU0lNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwT1BFUkFUT1IlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMk9QRVJBVE9SJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiolMjBlc2xpbnQtZGlzYWJsZSUyMGV4dGVuc2lvbiUyRnNob3VsZC10cmFuc2xhdGUlMjAqJTJGJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycGlfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlRjAlOUQlOUMlOEIlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJlX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJUYwJTlEJTk4JUE2JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaW5maW5pdHlfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlRTIlODglOUUlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYqJTIwZXNsaW50LWVuYWJsZSUyMGV4dGVuc2lvbiUyRnNob3VsZC10cmFuc2xhdGUlMjAqJTJGJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaXNfc2FmZV9udW1iZXJfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmlzJTIwc2FmZSUyMG51bWJlciUyMCU1QkElNUQlM0YlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJpc19udW1iZXJfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmlzJTIwbnVtYmVyJTIwJTVCQSU1RCUzRiUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmlzX2ludF9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyaXMlMjBpbnQlMjAlNUJBJTVEJTNGJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaXNfZmxvYXRfYmxvY2slMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmlzJTIwZmxvYXQlMjAlNUJBJTVEJTNGJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudXMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPUEVSQVRPUiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFjY2VwdFJlcG9ydGVycyUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpdGVtcyUzQSUyMCU1QiUyMnNpbiUyMiUyQyUyMCUyMmNvcyUyMiUyQyUyMCUyMnRhbiUyMiUyQyUyMCUyMmFzaW4lMjIlMkMlMjAlMjJhY29zJTIyJTJDJTIwJTIyYXRhbiUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGV4cG9uZW50X2Jsb2NrKCU3QiUyMEElMkMlMjBCJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGgucG93KGNhc3QudG9OdW1iZXIoQSklMkMlMjBjYXN0LnRvTnVtYmVyKEIpKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMHJvb3RfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwTWF0aC5wb3coY2FzdC50b051bWJlcihCKSUyQyUyMDElMjAlMkYlMjBjYXN0LnRvTnVtYmVyKEEpKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMG5lZ2F0aXZlX2Jsb2NrKCU3QiUyMEElMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwMCUyMC0lMjBjYXN0LnRvTnVtYmVyKEEpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwbW9yZV9vcl9lcXVhbF9ibG9jayglN0IlMjBBJTJDJTIwQiUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBjYXN0LmNvbXBhcmUoQSUyQyUyMEIpJTIwJTNFJTNEJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGxlc3Nfb3JfZXF1YWxfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY2FzdC5jb21wYXJlKEElMkMlMjBCKSUyMCUzQyUzRCUyMDAlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBub3RfZXF1YWxfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY2FzdC5jb21wYXJlKEElMkMlMjBCKSUyMCElM0QlM0QlMjAwJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwZXhhY3RseV9lcXVhbF9ibG9jayglN0IlMjBBJTJDJTIwQiUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBleGFjdGx5Q29tcGFyZShBJTJDJTIwQiklMjAlM0QlM0QlM0QlMjAwJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwbm90X2V4YWN0bHlfZXF1YWxfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwZXhhY3RseUNvbXBhcmUoQSUyQyUyMEIpJTIwISUzRCUzRCUyMDAlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBhbG1vc3RfZXF1YWxfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBjJTIwJTNEJTIwY2FzdC5jb21wYXJlKEElMkMlMjBCKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGMlMjAlM0MlM0QlMjAwLjUlMjAlMjYlMjYlMjBjJTIwJTNFJTNEJTIwLTAuNSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMG5vdF9hbG1vc3RfZXF1YWxfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBjJTIwJTNEJTIwY2FzdC5jb21wYXJlKEElMkMlMjBCKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCEoYyUyMCUzQyUzRCUyMDAuNSUyMCUyNiUyNiUyMGMlMjAlM0UlM0QlMjAtMC41KSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMG5hbmRfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwIShjYXN0LnRvQm9vbGVhbihBKSUyMCUyNiUyNiUyMGNhc3QudG9Cb29sZWFuKEIpKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMG5vcl9ibG9jayglN0IlMjBBJTJDJTIwQiUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAhKGNhc3QudG9Cb29sZWFuKEEpJTIwJTdDJTdDJTIwY2FzdC50b0Jvb2xlYW4oQikpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIweG9yX2Jsb2NrKCU3QiUyMEElMkMlMjBCJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGNhc3QudG9Cb29sZWFuKEEpJTIwISUzRCUzRCUyMGNhc3QudG9Cb29sZWFuKEIpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIweG5vcl9ibG9jayglN0IlMjBBJTJDJTIwQiUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBjYXN0LnRvQm9vbGVhbihBKSUyMCUzRCUzRCUzRCUyMGNhc3QudG9Cb29sZWFuKEIpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwYmV0d2Vlbl9vcl9lcXVhbCglN0IlMjBBJTJDJTIwQiUyQyUyMEMlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY2FzdC5jb21wYXJlKEElMkMlMjBCKSUyMCUzQyUzRCUyMDAlMjAlMjYlMjYlMjBjYXN0LmNvbXBhcmUoQiUyQyUyMEMpJTIwJTNDJTNEJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGJldHdlZW4oJTdCJTIwQSUyQyUyMEIlMkMlMjBDJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGNhc3QuY29tcGFyZShBJTJDJTIwQiklMjAlM0MlMjAwJTIwJTI2JTI2JTIwY2FzdC5jb21wYXJlKEIlMkMlMjBDKSUyMCUzQyUyMDAlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBleGFjdGx5X2NvbnRfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY2FzdC50b1N0cmluZyhBKS5pbmNsdWRlcyhjYXN0LnRvU3RyaW5nKEIpKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMHNpZ25fb2YoJTdCJTIwQSUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBNYXRoLnNpZ24oY2FzdC50b051bWJlcihBKSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBjbGFtcF9ibG9jayglN0IlMjBBJTJDJTIwQiUyQyUyMEMlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoY2FzdC5jb21wYXJlKEElMkMlMjBCKSUyMCUzQyUyMDApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwQiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGVsc2UlMjBpZiUyMChjYXN0LmNvbXBhcmUoQSUyQyUyMEMpJTIwJTNFJTIwMCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBDJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTIwZWxzZSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMEElM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBzY2FsZV9ibG9jayglN0IlMjBBJTJDJTIwbTElMkMlMjBNMSUyQyUyMG0yJTJDJTIwTTIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCgoY2FzdC50b051bWJlcihBKSUyMC0lMjBjYXN0LnRvTnVtYmVyKG0xKSklMjAqJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKGNhc3QudG9OdW1iZXIoTTIpJTIwLSUyMGNhc3QudG9OdW1iZXIobTIpKSklMjAlMkYlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAoY2FzdC50b051bWJlcihNMSklMjAtJTIwY2FzdC50b051bWJlcihtMSkpJTIwJTJCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzdC50b051bWJlcihtMiklMEElMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwdHJ1bmMyX2Jsb2NrKCU3QiUyMEElMkMlMjBCJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGxldCUyMG4lMjAlM0QlMjBNYXRoLmZsb29yKGNhc3QudG9OdW1iZXIoQikpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobiUyMCUzRSUzRCUyMDEpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbiUyMCUzRCUyMDEwJTIwKiolMjBuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobiUyMCElM0QlM0QlMjBJbmZpbml0eSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBNYXRoLnRydW5jKGNhc3QudG9OdW1iZXIoQSklMjAqJTIwbiklMjAlMkYlMjBuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY2FzdC50b051bWJlcihBKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGgudHJ1bmMoY2FzdC50b051bWJlcihBKSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjB0cnVuY19ibG9jayglN0IlMjBBJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGgudHJ1bmMoY2FzdC50b051bWJlcihBKSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBpc19tdWx0aXBsZV9vZl9ibG9jayglN0IlMjBBJTJDJTIwQiUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBjYXN0LnRvTnVtYmVyKEEpJTIwJTI1JTIwY2FzdC50b051bWJlcihCKSUyMCUzRCUzRCUzRCUyMDAlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBsb2dfd2l0aF9iYXNlX2Jsb2NrKCU3QiUyMEElMkMlMjBCJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGgubG9nKGNhc3QudG9OdW1iZXIoQSkpJTIwJTJGJTIwTWF0aC5sb2coY2FzdC50b051bWJlcihCKSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjB0cnVlX21hdGhfb3AoYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG9wZXJhdG9yJTIwJTNEJTIwY2FzdC50b1N0cmluZyhhcmdzLk9QRVJBVE9SKS50b0xvd2VyQ2FzZSgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBuJTIwJTNEJTIwY2FzdC50b051bWJlcihhcmdzLk5VTSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBzd2l0Y2glMjAob3BlcmF0b3IpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMnNpbiUyMiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGguc2luKG4pJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMmNvcyUyMiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGguY29zKG4pJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMnRhbiUyMiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGgudGFuKG4pJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMmFzaW4lMjIlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBNYXRoLmFzaW4obiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIyYWNvcyUyMiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGguYWNvcyhuKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJhdGFuJTIyJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwTWF0aC5hdGFuKG4pJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMDAlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBwaV9ibG9jaygpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwTWF0aC5QSSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGVfYmxvY2soKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyME1hdGguRSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGluZmluaXR5X2Jsb2NrKCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBJbmZpbml0eSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGlzX3NhZmVfbnVtYmVyX2Jsb2NrKCU3QiUyMEElMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwTnVtYmVyLmlzU2FmZUludGVnZXIoY2FzdC50b051bWJlcihBKSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBpc19udW1iZXJfYmxvY2soJTdCJTIwQSUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAhTnVtYmVyLmlzTmFOKHRvTmFOTnVtYmVyKEEpKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGlzX2ludF9ibG9jayglN0IlMjBBJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGlzVHJ1ZUludChBKSUyMCUyNiUyNiUyMCFOdW1iZXIuaXNOYU4odG9OYU5OdW1iZXIoQSkpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwaXNfZmxvYXRfYmxvY2soJTdCJTIwQSUyMCU3RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAhaXNUcnVlSW50KEEpJTIwJTI2JTI2JTIwIU51bWJlci5pc05hTih0b05hTk51bWJlcihBKSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlN0QlMEElMEElMjAlMjBTY3JhdGNoLmV4dGVuc2lvbnMucmVnaXN0ZXIobmV3JTIwU2NyYXRjaE1hdGgoKSklM0IlMEElN0QpKFNjcmF0Y2gpJTNCJTBBJTIwJTdEKShTY3JhdGNoKSUzQiIsImRhdGE6dGV4dC9qYXZhc2NyaXB0OywoZnVuY3Rpb24oU2NyYXRjaCklMjAlN0IlMjAlMkYlMkYlMjBOYW1lJTNBJTIwQmFzZSUwQSUyRiUyRiUyMElEJTNBJTIwdHJ1ZWZhbnRvbWJhc2UlMEElMkYlMkYlMjBEZXNjcmlwdGlvbiUzQSUyMENvbnZlcnQlMjBudW1iZXJzJTIwYmV0d2VlbiUyMGJhc2VzLiUwQSUyRiUyRiUyMEJ5JTNBJTIwVHJ1ZUZhbnRvbSUyMCUzQ2h0dHBzJTNBJTJGJTJGc2NyYXRjaC5taXQuZWR1JTJGdXNlcnMlMkZUcnVlRmFudG9tJTJGJTNFJTBBJTJGJTJGJTIwTGljZW5zZSUzQSUyME1JVCUwQSUyRiUyRiUyMENvbnRleHQlM0ElMjAlMjJCYXNlJTIyJTIwcmVmZXJzJTIwdG8lMjB0aGUlMjBtYXRoZW1hdGljYWwlMjBkZWZpbml0aW9uJTIwZWcuJTIwYmFzZSUyMDIlMjBpcyUyMGJpbmFyeSUyQyUyMGJhc2UlMjAxMCUyMGlzJTIwZGVjaW1hbCUyQyUyMGJhc2UlMjAxNiUyMGlzJTIwaGV4LiUwQSUwQSUyRiolMjBnZW5lcmF0ZWQlMjBsMTBuJTIwY29kZSUyMColMkZTY3JhdGNoLnRyYW5zbGF0ZS5zZXR1cCglN0IlMjJkZSUyMiUzQSU3QiUyMl9CYXNlJTIyJTNBJTIyQmFzaXMlMjIlN0QlMkMlMjJmaSUyMiUzQSU3QiUyMl9CYXNlJTIyJTNBJTIyS2FudGFsdXZ1dCUyMiUyQyUyMl8lNUJBJTVEJTIwZnJvbSUyMGJhc2UlMjAlNUJCJTVEJTIwdG8lMjBiYXNlJTIwJTVCQyU1RCUyMiUzQSUyMiU1QkElNUQlMjBrYW50YWx1dnVzdGElMjAlNUJCJTVEJTIwa2FudGFsdWt1dW4lMjAlNUJDJTVEJTIyJTJDJTIyX2lzJTIwYmFzZSUyMCU1QkIlNUQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyb25rbyUyMGx1dnVuJTIwJTVCQSU1RCUyMGthbnRhbHVrdSUyMCU1QkIlNUQlM0YlMjIlN0QlMkMlMjJpdCUyMiUzQSU3QiUyMl9CYXNlJTIyJTNBJTIyQmFzaSUyMiUyQyUyMl8lNUJBJTVEJTIwZnJvbSUyMGJhc2UlMjAlNUJCJTVEJTIwdG8lMjBiYXNlJTIwJTVCQyU1RCUyMiUzQSUyMiU1QkElNUQlMjBkYSUyMGJhc2UlMjAlNUJCJTVEJTIwYSUyMGJhc2UlMjAlNUJDJTVEJTIyJTJDJTIyX2lzJTIwYmFzZSUyMCU1QkIlNUQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCUyMCVDMyVBOCUyMHVuJTIwbnVtZXJvJTIwaW4lMjBiYXNlJTIwJTVCQiU1RCUyMiU3RCUyQyUyMmphJTIyJTNBJTdCJTIyX0Jhc2UlMjIlM0ElMjIlRTklODAlQjIlRTYlOTUlQjAlMjIlMkMlMjJfJTVCQSU1RCUyMGZyb20lMjBiYXNlJTIwJTVCQiU1RCUyMHRvJTIwYmFzZSUyMCU1QkMlNUQlMjIlM0ElMjIlNUJCJTVEJUU5JTgwJUIyJUU2JTk1JUIwJUUzJTgxJUFFJUU2JTk1JUIwJTVCQSU1RCVFMyU4MiU5MiU1QkMlNUQlRTklODAlQjIlRTYlOTUlQjAlRTMlODElQUIlRTUlQTQlODklRTYlOEYlOUIlRTMlODElOTklRTMlODIlOEIlMjIlMkMlMjJfaXMlMjBiYXNlJTIwJTVCQiU1RCUyMCU1QkElNUQlM0YlMjIlM0ElMjIlNUJBJTVEJUUzJTgxJUFGJTVCQiU1RCVFOSU4MCVCMiVFNiU5NSVCMCVFMyU4MSVBNyVFOCVBMSVBOCVFNyU4RiVCRSVFMyU4MSVBNyVFMyU4MSU4RCVFMyU4MiU4QiUyMiU3RCUyQyUyMmtvJTIyJTNBJTdCJTIyX0Jhc2UlMjIlM0ElMjIlRUMlQTclODQlRUIlQjIlOTUlMjIlMkMlMjJfJTVCQSU1RCUyMGZyb20lMjBiYXNlJTIwJTVCQiU1RCUyMHRvJTIwYmFzZSUyMCU1QkMlNUQlMjIlM0ElMjIlNUJBJTVEJUVDJTlEJTg0KCVFQiVBNSVCQyklMjAlNUJCJTVEJUVDJUE3JTg0JUVCJUIyJTk1JUVDJTk3JTkwJUVDJTg0JTlDJTIwJTVCQyU1RCVFQyVBNyU4NCVFQiVCMiU5NSVFQyU5QyVCQyVFQiVBMSU5QyUyMiUyQyUyMl9pcyUyMGJhc2UlMjAlNUJCJTVEJTIwJTVCQSU1RCUzRiUyMiUzQSUyMiU1QkElNUQoJUVDJTlEJUI0KSVFQSVCMCU4MCUyMCU1QkIlNUQlRUMlQTclODQlRUIlQjIlOTUlRUMlOUQlQjglRUElQjAlODAlM0YlMjIlN0QlMkMlMjJuYiUyMiUzQSU3QiUyMl8lNUJBJTVEJTIwZnJvbSUyMGJhc2UlMjAlNUJCJTVEJTIwdG8lMjBiYXNlJTIwJTVCQyU1RCUyMiUzQSUyMiU1QkElNUQlMjBmcmElMjBiYXNlJTIwJTVCQiU1RCUyMHRpbCUyMGJhc2UlMjAlNUJDJTVEJTIyJTJDJTIyX2lzJTIwYmFzZSUyMCU1QkIlNUQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyZXIlMjBiYXNlJTIwJTVCQiU1RCUyMCU1QkElNUQlM0YlMjIlN0QlMkMlMjJubCUyMiUzQSU3QiUyMl8lNUJBJTVEJTIwZnJvbSUyMGJhc2UlMjAlNUJCJTVEJTIwdG8lMjBiYXNlJTIwJTVCQyU1RCUyMiUzQSUyMnpldCUyMCU1QkElNUQlMjBvbSUyMHZhbiUyMGJhc2UtJTVCQiU1RCUyMG5hYXIlMjBiYXNlLSU1QkMlNUQlMjIlMkMlMjJfaXMlMjBiYXNlJTIwJTVCQiU1RCUyMCU1QkElNUQlM0YlMjIlM0ElMjJpcyUyMCU1QkElNUQlMjBiYXNlLSU1QkIlNUQlM0YlMjIlN0QlMkMlMjJydSUyMiUzQSU3QiUyMl9CYXNlJTIyJTNBJTIyJUQwJTkxJUQwJUIwJUQwJUI3JUQwJUIwJTIyJTJDJTIyXyU1QkElNUQlMjBmcm9tJTIwYmFzZSUyMCU1QkIlNUQlMjB0byUyMGJhc2UlMjAlNUJDJTVEJTIyJTNBJTIyJTVCQSU1RCUyMCVEMCVCOCVEMCVCNyUyMCVEMCVCMSVEMCVCMCVEMCVCNyVEMSU4QiUyMCU1QkIlNUQlMjAlRDAlQjIlMjAlRDAlQjElRDAlQjAlRDAlQjclRDElODMlMjAlNUJDJTVEJTIyJTJDJTIyX2lzJTIwYmFzZSUyMCU1QkIlNUQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJUQwJUIxJUQwJUIwJUQwJUI3JUQwJUIwJTIwJTVCQiU1RCUyMCU1QkElNUQlM0YlMjIlN0QlMkMlMjJ6aC1jbiUyMiUzQSU3QiUyMl9CYXNlJTIyJTNBJTIyJUU4JUJGJTlCJUU1JTg4JUI2JUU4JUJEJUFDJUU2JThEJUEyJTIyJTJDJTIyXyU1QkElNUQlMjBmcm9tJTIwYmFzZSUyMCU1QkIlNUQlMjB0byUyMGJhc2UlMjAlNUJDJTVEJTIyJTNBJTIyJUU2JThBJThBJTVCQiU1RCVFOCVCRiU5QiVFNSU4OCVCNiVFNyU5QSU4NCU1QkElNUQlRTglQkQlQUMlRTYlOEQlQTIlRTYlODglOTAlNUJDJTVEJTIyJTJDJTIyX2lzJTIwYmFzZSUyMCU1QkIlNUQlMjAlNUJBJTVEJTNGJTIyJTNBJTIyJTVCQSU1RCVFNiU5OCVBRiU1QkIlNUQlRTglQkYlOUIlRTUlODglQjYlRTUlOTAlOTclRUYlQkMlOUYlMjIlN0QlN0QpJTNCJTJGKiUyMGVuZCUyMGdlbmVyYXRlZCUyMGwxMG4lMjBjb2RlJTIwKiUyRigoU2NyYXRjaCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjJ1c2UlMjBzdHJpY3QlMjIlM0IlMEElMEElMjAlMjBjb25zdCUyMGljb24lMjAlM0QlMEElMjAlMjAlMjAlMjAlMjJkYXRhJTNBaW1hZ2UlMkZzdmclMkJ4bWwlM0JiYXNlNjQlMkNQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZHBaSFJvUFNJeU1qVXVNelUwT0NJZ2FHVnBaMmgwUFNJeU1qVXVNelUwT0NJZ2RtbGxkMEp2ZUQwaU1Dd3dMREl5TlM0ek5UUTRMREl5TlM0ek5UUTRJajQ4WnlCMGNtRnVjMlp2Y20wOUluUnlZVzV6YkdGMFpTZ3RNVGczTGpNeU1qazBMQzB6Tnk0ek1qSTFPU2tpUGp4bklHUmhkR0V0Y0dGd1pYSXRaR0YwWVQwaWV5WnhkVzkwTzJselVHRnBiblJwYm1kTVlYbGxjaVp4ZFc5ME96cDBjblZsZlNJZ2MzUnliMnRsTFd4cGJtVnFiMmx1UFNKdGFYUmxjaUlnYzNSeWIydGxMVzFwZEdWeWJHbHRhWFE5SWpFd0lpQnpkSEp2YTJVdFpHRnphR0Z5Y21GNVBTSWlJSE4wY205clpTMWtZWE5vYjJabWMyVjBQU0l3SWlCemRIbHNaVDBpYldsNExXSnNaVzVrTFcxdlpHVTZJRzV2Y20xaGJDSSUyQlBIQmhkR2dnWkQwaVRURTROeTR6TWpJNU5Dd3hOVEJqTUN3dE5qSXVNak13TURFZ05UQXVORFEzTXprc0xURXhNaTQyTnpjMElERXhNaTQyTnpjMExDMHhNVEl1TmpjM05HTTJNaTR5TXpBd01Td3dJREV4TWk0Mk56YzBMRFV3TGpRME56TTVJREV4TWk0Mk56YzBMREV4TWk0Mk56YzBZekFzTmpJdU1qTXdNREVnTFRVd0xqUTBOek01TERFeE1pNDJOemMwSUMweE1USXVOamMzTkN3eE1USXVOamMzTkdNdE5qSXVNak13TURFc01DQXRNVEV5TGpZM056UXNMVFV3TGpRME56TTVJQzB4TVRJdU5qYzNOQ3d0TVRFeUxqWTNOelI2SWlCbWFXeHNQU0lqWlRJd01HTmhJaUJtYVd4c0xYSjFiR1U5SW01dmJucGxjbThpSUhOMGNtOXJaVDBpYm05dVpTSWdjM1J5YjJ0bExYZHBaSFJvUFNJd0lpQnpkSEp2YTJVdGJHbHVaV05oY0QwaVluVjBkQ0l2UGp4bklHWnBiR3c5SWlObVptWm1abVlpSUhOMGNtOXJaVDBpSTJabVptWm1aaUlnYzNSeWIydGxMWGRwWkhSb1BTSTFJajQ4Y0dGMGFDQmtQU0pOTXpJMUxqQTFMREUzTXk0MU1EQXlNWFl4TWk0M2FDMDBPUzQ1ZGkweE1DNDFiREUzTGprc0xURTRMakZqTXk0MkxDMHpMamN6TXpNMElEWXVOU3d0Tmk0NE5TQTRMamNzTFRrdU16VmpNQzQzTkRReU9Td3RNQzQ0TkRJeE5pQXhMalExTnpjMkxDMHhMamN4TVRBMklESXVNVE01TEMweUxqWXdOV014TGpFek16TXpMQzB4TGpRNU5EWTJJREl1TURJd016TXNMVEl1T0RreklESXVOall4TEMwMExqRTVOV014TEMweUxqQXpNek16SURFdU5Td3ROQzR5TVRZMk55QXhMalVzTFRZdU5UVmpNQ3d0TWk0NE5qWTJOeUF0TUM0M09ETXpNeXd0TlNBdE1pNHpOU3d0Tmk0MFl5MHdMamszT0RnMUxDMHdMamcyTVRNeklDMHlMakUxTkRnMExDMHhMalEyT0RJeUlDMHpMalF5TkN3dE1TNDNOamRqTFRBdU9EQTBOallzTFRBdU1qQXhNelFnTFRFdU5qZ3hMQzB3TGpNeE1UWTNJQzB5TGpZeU9Td3RNQzR6TXpGakxUQXVNRGs0T1Rrc0xUQXVNREF4TmpVZ0xUQXVNVGs0TEMwd0xqQXdNak15SUMwd0xqSTVOeXd0TUM0d01ESmpMVEl1TmpnMU9UUXNNQzR3TURnMk1TQXROUzR6TXpVNU5Td3dMall4TnpneUlDMDNMamMxTml3eExqYzRNMk10TUM0d09ERTFPQ3d3TGpBek9EUTNJQzB3TGpFMk1qa3lMREF1TURjM05EY2dMVEF1TWpRMExEQXVNVEUzWXkweExqSTVNREE0TERBdU5qTTBNRGdnTFRJdU5UUXdNemtzTVM0ek5EWXdOeUF0TXk0M05EUXNNaTR4TXpKakxURXVNakl4TXpRc01DNDNPVElnTFRJdU5EWTVOallzTVM0Mk9URXpOQ0F0TXk0M05EVXNNaTQyT1RoakxUQXVNak00TkRNc01DNHhPRGd5TVNBdE1DNDBOelUwTXl3d0xqTTNPREl4SUMwd0xqY3hNU3d3TGpVM2JDMDRMaklzTFRrdU4yTXlMakEyTmpZMkxDMHhMamdnTkM0eU5Td3RNeTQwTmpZMk55QTJMalUxTEMwMVl6RXVORGs1TVRrc0xUQXVPVGt4TlRNZ015NHdPRFkxT0N3dE1TNDROREkzT1NBMExqYzBNaXd0TWk0MU5ETmpNUzR3TmpZeE55d3RNQzQwTlRNNU5TQXlMakUxTXpReExDMHdMamcxTmpjMUlETXVNalU0TEMweExqSXdOMk16TGpBek16TXpMQzB3TGprMk5qWTNJRFl1Tmpnek16UXNMVEV1TkRVZ01UQXVPVFVzTFRFdU5EVmpNUzQ1TWpnd055d3RNQzR3TURrNE15QXpMamcxTXpFMExEQXVNVFV6TkRrZ05TNDNOVElzTUM0ME9EaGpNaTR5T0RZMk55d3dMalF4TkRZMklEUXVNemN4TXpNc01TNHdPVFF6TXlBMkxqSTFOQ3d5TGpBek9XTXdMakF4TkRZNExEQXVNREEzTmpVZ01DNHdNamt6TlN3d0xqQXhOVE15SURBdU1EUTBMREF1TURJell6RXVPRE0wTmpJc01DNDVNRGs0SURNdU5USXpOellzTWk0d09EY3pOQ0ExTGpBeE1pd3pMalE1TkdNeExqQTJORGt4TERFdU1ERTNNalVnTWk0d01ERXlNaXd5TGpFMk1UQTVJREl1TnpnNExETXVOREEyWXpFdU9ETXpNek1zTWk0NUlESXVOelVzTmk0eE9ETXpOQ0F5TGpjMUxEa3VPRFZqTUM0d01UVXdOQ3d5TGpRM016VTRJQzB3TGpNeU5UYzRMRFF1T1RNMk5EWWdMVEV1TURFeUxEY3VNekV6WXkwd0xqTTFNVFF4TERFdU1UazJORFlnTFRBdU56azRPRFlzTWk0ek5qSTFPQ0F0TVM0ek16Z3NNeTQwT0RkakxUQXVPVE16TXl3eExqa3lNelk1SUMweUxqQTBNRFU0TERNdU56VTRJQzB6TGpNd09DdzFMalE0WXkweExqQTRNREkzTERFdU5EY3pPU0F0TWk0eU5EWXlPU3d5TGpnNE15QXRNeTQwT1RJc05DNHlNbU10TVM0ek9EWTNOQ3d4TGpRNU1UWTVJQzB5TGpnd016QXlMREl1T1RVMU5qVWdMVFF1TWpRNExEUXVNemt4WXkweExqUTNPVE16TERFdU5EY3pNek1nTFRNdU1EWTRNek1zTXk0d01EVTJOeUF0TkM0M05qY3NOQzQxT1RkakxUQXVOVGMxT1Rjc01DNDFNems0TnlBdE1TNHhOVFF6TVN3eExqQTNOekl4SUMweExqY3pOU3d4TGpZeE1td3RPUzR5TERndU5uWXdMamQ2SWlCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaUlITjBjbTlyWlMxc2FXNWxZMkZ3UFNKeWIzVnVaQ0l2UGp4bklHWnBiR3d0Y25Wc1pUMGlibTl1ZW1WeWJ5SWdjM1J5YjJ0bExXeHBibVZqWVhBOUltSjFkSFFpUGp4d1lYUm9JR1E5SWsweU16WXVOelVzT0RZdU56Vm9NVEkyTGpWMk1USXVOVGszT1RKb0xURXlOaTQxZWlJdlBqeHdZWFJvSUdROUlrMHlORGt1TXpRM09USXNPRFl1TnpWMk1USTJMalZvTFRFeUxqVTVOemt5ZGkweE1qWXVOWG9pTHo0OEwyYyUyQlBDOW5Qand2Wno0OEwyYyUyQlBDOXpkbWMlMkJQQ0V0TFhKdmRHRjBhVzl1UTJWdWRHVnlPakV4TWk0Mk56Y3dOakF3TURBd01EQXdNVG94TVRJdU5qYzNOREExTFMwJTJCJTIyJTNCJTBBJTBBJTIwJTIwY29uc3QlMjBjYXN0JTIwJTNEJTIwU2NyYXRjaC5DYXN0JTNCJTBBJTBBJTIwJTIwY29uc3QlMjBiYXNlcyUyMCUzRCUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMjIlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyNCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjUlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjI2JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyNyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjglMjIlMkMlMEElMjAlMjAlMjAlMjAlMjI5JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMTAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIxMSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjEyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMTMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIxNCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjE1JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMTYlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIxNyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjE4JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMTklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIyMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjIxJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMjIlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIyMyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjI0JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMjUlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIyNiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjI3JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMjglMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIyOSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjMwJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMzElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIzMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjMzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIyMzQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjIzNSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMjM2JTIyJTJDJTBBJTIwJTIwJTVEJTNCJTBBJTIwJTIwY29uc3QlMjBjaGFycyUyMCUzRCUyMCUyMjAxMjM0NTY3ODlBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiUyMiUzQiUwQSUwQSUyMCUyMGNsYXNzJTIwU2NyYXRjaEJhc2UlMjAlN0IlMEElMjAlMjAlMjAlMjBnZXRJbmZvKCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZCUzQSUyMCUyMnRydWVmYW50b21iYXNlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbmFtZSUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMkJhc2UlMjIpJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29sb3IxJTNBJTIwJTIyJTIzZTIwMGNhJTIyJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudUljb25VUkklM0ElMjBpY29uJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tzJTNBJTIwJTVCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaXNfYmFzZV9ibG9jayUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUyMCUyMmlzJTIwYmFzZSUyMCU1QkIlNUQlMjAlNUJBJTVEJTNGJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVzY3JpcHRpb24lM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjIlNUJCJTVEJTIwd2lsbCUyMGJlJTIwdGhlJTIwYmFzZSUyMGxpa2UlMjAnYmFzZSUyMDEwJyUyQyUyMCU1QkElNUQlMjBpcyUyMHRoZSUyMHRleHQlMjB3ZSUyMHdhbnQlMjB0byUyMGNoZWNrJTIwaWYlMjBpdCUyMGlzJTIwaW4lMjB0aGF0JTIwYmFzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjEwJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIyYmFzZV9tZW51JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyMTAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJiYXNlX2Jsb2NrJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUyMCUyMiU1QkElNUQlMjBmcm9tJTIwYmFzZSUyMCU1QkIlNUQlMjB0byUyMGJhc2UlMjAlNUJDJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVzY3JpcHRpb24lM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjIlNUJBJTVEJTIwaXMlMjB0aGUlMjBvcmlnaW5hbCUyMG51bWJlciUyQyUyMCU1QkIlNUQlMjBpcyUyMHRoZSUyMGJhc2UlMjBpdCUyMGlzJTIwY3VycmVudGx5JTIwaW4lMkMlMjAlNUJDJTVEJTIwaXMlMjB0aGUlMjBiYXNlJTIwaXQlMjB3aWxsJTIwYmUlMjBjb252ZXJ0ZWQlMjB0by4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIxMCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMmJhc2VfbWVudSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjEwJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIyYmFzZV9tZW51JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudXMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBiYXNlX21lbnUlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhY2NlcHRSZXBvcnRlcnMlM0ElMjB0cnVlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaXRlbXMlM0ElMjBiYXNlcyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGlzX2Jhc2VfYmxvY2soJTdCJTIwQSUyQyUyMEIlMjAlN0QpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoYmFzZXMuaW5jbHVkZXMoY2FzdC50b1N0cmluZyhCKSkpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwbmV3JTIwUmVnRXhwKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMiU1RSU1QiUyMiUyMCUyQiUyMGNoYXJzLnN1YnN0cmluZygwJTJDJTIwY2FzdC50b051bWJlcihCKSklMjAlMkIlMjAlMjIlNUQlMkIlMjQlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApLnRlc3QoY2FzdC50b1N0cmluZyhBKSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGJhc2VfYmxvY2soJTdCJTIwQSUyQyUyMEIlMkMlMjBDJTIwJTdEKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJhc2VzLmluY2x1ZGVzKGNhc3QudG9TdHJpbmcoQikpJTIwJTI2JTI2JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmFzZXMuaW5jbHVkZXMoY2FzdC50b1N0cmluZyhDKSklMEElMjAlMjAlMjAlMjAlMjAlMjApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbmV3JTIwUmVnRXhwKCUyMiU1RSU1QiUyMiUyMCUyQiUyMGNoYXJzLnN1YnN0cmluZygwJTJDJTIwY2FzdC50b051bWJlcihCKSklMjAlMkIlMjAlMjIlNUQlMkIlMjQlMjIpLnRlc3QoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzdC50b1N0cmluZyhBKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHBhcnNlSW50KGNhc3QudG9TdHJpbmcoQSklMkMlMjBjYXN0LnRvTnVtYmVyKEIpKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC50b1N0cmluZyhjYXN0LnRvTnVtYmVyKEMpKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC50b1VwcGVyQ2FzZSgpJTIwJTdDJTdDJTIwJTIyMCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMjAlMkYlMkYlMjBSZXR1cm4lMjBzdHJpbmclMjB6ZXJvJTIwYmVjYXVzZSUyMHRvU3RyaW5nKCklMjBmdW5jdGlvbiUyMGFsd2F5cyUyMHJldHVybiUyMHN0cmluZ3MlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlMjIwJTIyJTNCJTIwJTJGJTJGJTIwUmV0dXJuJTIwc3RyaW5nJTIwemVybyUyMGJlY2F1c2UlMjB0b1N0cmluZygpJTIwZnVuY3Rpb24lMjBhbHdheXMlMjByZXR1cm4lMjBzdHJpbmdzJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTdEJTBBJTBBJTIwJTIwU2NyYXRjaC5leHRlbnNpb25zLnJlZ2lzdGVyKG5ldyUyMFNjcmF0Y2hCYXNlKCkpJTNCJTBBJTdEKShTY3JhdGNoKSUzQiUwQSUyMCU3RCkoU2NyYXRjaCklM0IiLCJkYXRhOnRleHQvamF2YXNjcmlwdDssKGZ1bmN0aW9uKFNjcmF0Y2gpJTIwJTdCJTIwJTJGJTJGJTIwTmFtZSUzQSUyMFRleHQlMEElMkYlMkYlMjBJRCUzQSUyMHN0cmluZ3MlMEElMkYlMkYlMjBEZXNjcmlwdGlvbiUzQSUyME1hbmlwdWxhdGUlMjBjaGFyYWN0ZXJzJTIwYW5kJTIwdGV4dC4lMEElMkYlMkYlMjBCeSUzQSUyMENTVDEyMjklMjAlM0NodHRwcyUzQSUyRiUyRnNjcmF0Y2gubWl0LmVkdSUyRnVzZXJzJTJGQ1NUMTIyOSUyRiUzRSUwQSUyRiUyRiUyMEJ5JTNBJTIwQmx1ZElzQW5MZW1vbiUyMCUzQ2h0dHBzJTNBJTJGJTJGc2NyYXRjaC5taXQuZWR1JTJGdXNlcnMlMkZCbHVkSXNBbkxlbW9uJTJGJTNFJTBBJTJGJTJGJTIwQnklM0ElMjBNYW4tby1WYWxvciUyMCUzQ2h0dHBzJTNBJTJGJTJGc2NyYXRjaC5taXQuZWR1JTJGdXNlcnMlMkZtYW4tby12YWxvciUyRiUzRSUwQSUyRiUyRiUyMExpY2Vuc2UlM0ElMjBNSVQlMjBBTkQlMjBNUEwtMi4wJTBBJTBBJTJGKiUyMGdlbmVyYXRlZCUyMGwxMG4lMjBjb2RlJTIwKiUyRlNjcmF0Y2gudHJhbnNsYXRlLnNldHVwKCU3QiUyMmVzJTIyJTNBJTdCJTIyX1RleHQlMjIlM0ElMjJUZXh0byUyMiU3RCUyQyUyMmZpJTIyJTNBJTdCJTIyX0V4YWN0bHklMjBUaXRsZSUyMENhc2UlMjIlM0ElMjJBbGt1a2lyamFpbWV0JTIwVGFya2FzdGklMjBJc29sbGElMjIlMkMlMjJfTWlYZUQlMjBDYVNlJTIyJTNBJTIySXNPdCUyMGpBJTIwUGlFbkV0JTIwa0lySmFJbUV0JTIwc0VrQWlTaU4lMjIlMkMlMjJfUkFuZG9NQ2FTZSUyMiUzQSUyMlNBVHVObmFpTkVuJTIwS2lySmFJbktvS08lMjIlMkMlMjJfU2VudGVuY2UlMjBjYXNlJTIyJTNBJTIyVmlya2tlZW4lMjBhbGt1a2lyamFpbiUyMGlzb2xsYSUyMiUyQyUyMl9UZXh0JTIyJTNBJTIyVGVrc3RpJTIyJTJDJTIyX1RpdGxlJTIwQ2FzZSUyMiUzQSUyMkFsa3VraXJqYWltZXQlMjBJc29sbGElMjIlMkMlMjJfVVBQRVJDQVNFJTIyJTNBJTIySVNPVCUyMEtJUkpBSU1FVCUyMiUyQyUyMl8lNUJTVFJJTkclNUQlMjBtYXRjaGVzJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTNGJTIyJTNBJTIydmFzdGFha28lMjAlNUJTVFJJTkclNUQlMjBzJUMzJUE0JUMzJUE0bm4lQzMlQjZsbGlzdCVDMyVBNCUyMGxhdXNla2V0dGElMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTNGJTIyJTJDJTIyX2FwcGxlJTIyJTNBJTIyb21lbmElMjIlMkMlMjJfYm90aCUyMHNpZGVzJTIyJTNBJTIybW9sZW1taWx0YSUyMHB1b2xpbHRhJTIyJTJDJTIyX2NhbWVsQ2FzZSUyMiUzQSUyMmthcmF2YWFuaVR5eWxpJTIyJTJDJTIyX2NvbnZlcnQlMjAlNUJTVFJJTkclNUQlMjB0byUyMCU1QlRFWFRDQVNFJTVEJTIyJTNBJTIybXV1bm5hJTIwJTVCU1RSSU5HJTVEJTIwbXVvdG9vbiUyMCU1QlRFWFRDQVNFJTVEJTIyJTJDJTIyX2NvdW50JTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlM0ElMjJtZXJra2llbiUyMCU1QlNVQlNUUklORyU1RCUyMG0lQzMlQTQlQzMlQTRyJUMzJUE0JTIwbWVya2tpam9ub3NzYSUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9jb3VudCUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIybGFza2UlMjBzJUMzJUE0JUMzJUE0bm4lQzMlQjZsbGluZW4lMjBsYXVzZWtlJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMG1lcmtraWpvbm9zc2ElMjAlNUJTVFJJTkclNUQlMjIlMkMlMjJfaW5kZXglMjBvZiUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIybWVya2tpam9ub24lMjAlNUJTVUJTVFJJTkclNUQlMjBqJUMzJUE0cmplc3R5c251bWVybyUyMG1lcmtraWpvbm9zc2ElMjAlNUJTVFJJTkclNUQlMjIlMkMlMjJfaXMlMjAlNUJPUEVSQU5EMSU1RCUyMGlkZW50aWNhbCUyMHRvJTIwJTVCT1BFUkFORDIlNUQlM0YlMjIlM0ElMjJvbmtvJTIwJTVCT1BFUkFORDElNUQlMjB0JUMzJUE0eXNpbiUyMHNhbWElMjBrdWluJTIwJTVCT1BFUkFORDIlNUQlM0YlMjIlMkMlMjJfaXMlMjAlNUJTVFJJTkclNUQlMjAlNUJURVhUQ0FTRSU1RCUzRiUyMiUzQSUyMm9ua28lMjAlNUJTVFJJTkclNUQlMjBtdW9kb3NzYSUyMCU1QlRFWFRDQVNFJTVEJTNGJTIyJTJDJTIyX2l0ZW0lMjAlNUJJVEVNJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjBtYXRjaGVkJTIwYnklMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjIlM0ElMjJtZXJra2lqb25vbiUyMCU1QlNUUklORyU1RCUyMCU1QklURU0lNUQuJTIwa29oZGUlMkMlMjBqb2thJTIwdmFzdGFhJTIwcyVDMyVBNCVDMyVBNG5uJUMzJUI2bGxpc3QlQzMlQTQlMjBsYXVzZWtldHRhJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMiUyQyUyMl9pdGVtJTIwJTVCSVRFTSU1RCUyMG9mJTIwJTVCU1RSSU5HJTVEJTIwc3BsaXQlMjBieSUyMCU1QlNQTElUJTVEJTIyJTNBJTIyJTVCSVRFTSU1RC4lMjBrb2hkZSUyMG1lcmtraWpvbm9zdGElMjAlNUJTVFJJTkclNUQlMjBqYWV0dHVuYSUyMG1lcmtpbGwlQzMlQTQlMjAlNUJTUExJVCU1RCUyMiUyQyUyMl9sZXR0ZXJzJTIwJTVCTEVUVEVSMSU1RCUyMHRvJTIwJTVCTEVUVEVSMiU1RCUyMG9mJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIybWVya2tpam9ub24lMjAlNUJTVFJJTkclNUQlMjBtZXJraXQlMjAlNUJMRVRURVIxJTVEJTIwJUUyJTgwJTkzJTIwJTVCTEVUVEVSMiU1RCUyMiUyQyUyMl9sb3dlcmNhc2UlMjIlM0ElMjJwaWVuZXQlMjBraXJqYWltZXQlMjIlMkMlMjJfcmVwZWF0JTIwJTVCU1RSSU5HJTVEJTIwJTVCUkVQRUFUJTVEJTIwdGltZXMlMjIlM0ElMjJ0b2lzdGElMjAlNUJTVFJJTkclNUQlMjAlNUJSRVBFQVQlNUQlMjBrZXJ0YWElMjIlMkMlMjJfcmVwbGFjZSUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIwd2l0aCUyMCU1QlJFUExBQ0UlNUQlMjIlM0ElMjJrb3J2YWElMjAlNUJTVUJTVFJJTkclNUQlMjBtZXJra2lqb25vc3NhJTIwJTVCU1RSSU5HJTVEJTIwbWVya2tpam9ub2xsYSUyMCU1QlJFUExBQ0UlNUQlMjIlMkMlMjJfcmVwbGFjZSUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIwd2l0aCUyMCU1QlJFUExBQ0UlNUQlMjIlM0ElMjJrb3J2YWElMjBzJUMzJUE0JUMzJUE0bm4lQzMlQjZsbGluZW4lMjBsYXVzZWtlJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMG1lcmtraWpvbm9zc2ElMjAlNUJTVFJJTkclNUQlMjBsYXVzZWtrZWVsbGElMjAlNUJSRVBMQUNFJTVEJTIyJTJDJTIyX3JldmVyc2UlMjB0ZXh0JTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIydGVrc3RpJTIwJTVCU1RSSU5HJTVEJTIwayVDMyVBNCVDMyVBNG50ZWlzZW4lQzMlQTQlMjIlMkMlMjJfdGhlJTIwZW5kJTIyJTNBJTIybG9wdXN0YSUyMiUyQyUyMl90aGUlMjBzdGFydCUyMiUzQSUyMmFsdXN0YSUyMiUyQyUyMl90cmltJTIwd2hpdGVzcGFjZSUyMCU1QlNUUklORyU1RCUyMGZyb20lMjAlNUJNRVRIT0QlNUQlMjIlM0ElMjJwb2lzdGElMjB0dXJoYXQlMjBzYW5hdiVDMyVBNGxpdCUyMG1lcmtraWpvbm9uJTIwJTVCU1RSSU5HJTVEJTIwJTVCTUVUSE9EJTVEJTIyJTJDJTIyX3VuaWNvZGUlMjAlNUJOVU0lNUQlMjBhcyUyMGxldHRlciUyMiUzQSUyMlVuaWNvZGUta29vZGklMjAlNUJOVU0lNUQlMjBtZXJra2lqb25vbmElMjIlMkMlMjJfdW5pY29kZSUyMG9mJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIybWVya2tpam9ub24lMjAlNUJTVFJJTkclNUQlMjBVbmljb2RlLWtvb2RpJTIyJTdEJTJDJTIyaGUlMjIlM0ElN0IlMjJfVGV4dCUyMiUzQSUyMiVENyU5OCVENyVBNyVENyVBMSVENyU5OCUyMiU3RCUyQyUyMmh1JTIyJTNBJTdCJTIyX1RleHQlMjIlM0ElMjJTeiVDMyVCNnZlZyUyMiU3RCUyQyUyMml0JTIyJTNBJTdCJTIyX0V4YWN0bHklMjBUaXRsZSUyMENhc2UlMjIlM0ElMjJNYWl1c2NvbG8lMjBzdGlsZSUyMFRpdG9sbyUyMEVzYXR0byUyMiUyQyUyMl9NaVhlRCUyMENhU2UlMjIlM0ElMjJNYUl1U2NPbE8lMjBNaVN0byUyMiUyQyUyMl9SQW5kb01DYVNlJTIyJTNBJTIyTWFpVVNDb0xvQ2FTVWFMZSUyMiUyQyUyMl9TZW50ZW5jZSUyMGNhc2UlMjIlM0ElMjJNYWl1c2NvbG8lMjBjb21lJTIwZnJhc2UlMjIlMkMlMjJfVGV4dCUyMiUzQSUyMlRlc3RvJTIyJTJDJTIyX1RpdGxlJTIwQ2FzZSUyMiUzQSUyMk1haXVzY29sbyUyMHN0aWxlJTIwVEl0b2xvJTIyJTJDJTIyX1VQUEVSQ0FTRSUyMiUzQSUyMk1BSVVTQ09MTyUyMiUyQyUyMl8lNUJTVFJJTkclNUQlMjAlNUJQT1NJVElPTiU1RCUyMHdpdGglMjAlNUJTVUJTVFJJTkclNUQlM0YlMjIlM0ElMjIlNUJTVFJJTkclNUQlMjAlNUJQT1NJVElPTiU1RCUyMGNvbiUyMCU1QlNVQlNUUklORyU1RCUyMiUyQyUyMl8lNUJTVFJJTkclNUQlMjBtYXRjaGVzJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTNGJTIyJTNBJTIyJTVCU1RSSU5HJTVEJTIwY29ycmlzcG9uZGUlMjBhJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIyJTJDJTIyX2FwcGxlJTIyJTNBJTIybWVsYSUyMiUyQyUyMl9ib3RoJTIwc2lkZXMlMjIlM0ElMjJlbnRyYW1iaSUyMGklMjBsYXRpJTIyJTJDJTIyX2NhbWVsQ2FzZSUyMiUzQSUyMm1haXVzY29sZUludGVybmUlMjIlMkMlMjJfY29udmVydCUyMCU1QlNUUklORyU1RCUyMHRvJTIwJTVCVEVYVENBU0UlNUQlMjIlM0ElMjJjb252ZXJ0aSUyMCU1QlNUUklORyU1RCUyMGluJTIwJTVCVEVYVENBU0UlNUQlMjIlMkMlMjJfY291bnQlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMm9jY29ycmVuemUlMjBkaSUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX2NvdW50JTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlM0ElMjJudW1lcm8lMjBvY2NvcnJlbnplJTIwZGklMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9lbmRzJTIyJTNBJTIyZmluaXNjZSUyMiUyQyUyMl9pbmRleCUyMG9mJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlM0ElMjJwb3NpemlvbmUlMjBkaSUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX2lzJTIwJTVCT1BFUkFORDElNUQlMjBpZGVudGljYWwlMjB0byUyMCU1Qk9QRVJBTkQyJTVEJTNGJTIyJTNBJTIyJTVCT1BFUkFORDElNUQlMjAlQzMlQTglMjBpZGVudGljbyUyMGElMjAlNUJPUEVSQU5EMiU1RCUyMiUyQyUyMl9pcyUyMCU1QlNUUklORyU1RCUyMCU1QlRFWFRDQVNFJTVEJTNGJTIyJTNBJTIyJTVCU1RSSU5HJTVEJTIwJUMzJUE4JTIwJTVCVEVYVENBU0UlNUQlMjIlMkMlMjJfaXRlbSUyMCU1QklURU0lNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMG1hdGNoZWQlMjBieSUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMiUzQSUyMmVsZW1lbnRvJTIwJTVCSVRFTSU1RCUyMGRpJTIwJTVCU1RSSU5HJTVEJTIwY29ycmlzcG9uZGVudGUlMjBhJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIyJTJDJTIyX2l0ZW0lMjAlNUJJVEVNJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjBzcGxpdCUyMGJ5JTIwJTVCU1BMSVQlNUQlMjIlM0ElMjJlbGVtZW50byUyMCU1QklURU0lNUQlMjBkaSUyMCU1QlNUUklORyU1RCUyMHNwZXp6YXRhJTIwZGElMjAlNUJTUExJVCU1RCUyMiUyQyUyMl9sZXR0ZXJzJTIwJTVCTEVUVEVSMSU1RCUyMHRvJTIwJTVCTEVUVEVSMiU1RCUyMG9mJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIybGV0dGVyZSUyMGRhJTIwJTVCTEVUVEVSMSU1RCUyMGElMjAlNUJMRVRURVIyJTVEJTIwZGklMjAlNUJTVFJJTkclNUQlMjIlMkMlMjJfbG93ZXJjYXNlJTIyJTNBJTIybWludXNjb2xvJTIyJTJDJTIyX21hdGNoZXMlMjBvZiUyMCU1QlNUUklORyU1RCUyMHVzaW5nJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIwYXMlMjBhcnJheSUyMiUzQSUyMmNvcnJpc3BvbmRlbnplJTIwZGklMjAlNUJTVFJJTkclNUQlMjB1c2FuZG8lMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBjb21lJTIwYXJyYXklMjIlMkMlMjJfcmVwZWF0JTIwJTVCU1RSSU5HJTVEJTIwJTVCUkVQRUFUJTVEJTIwdGltZXMlMjIlM0ElMjJyaXBldGklMjAlNUJTVFJJTkclNUQlMjAlNUJSRVBFQVQlNUQlMjB2b2x0ZSUyMiUyQyUyMl9yZXBsYWNlJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjB3aXRoJTIwJTVCUkVQTEFDRSU1RCUyMiUzQSUyMnNvc3RpdHVpc2NpJTIwJTVCU1VCU1RSSU5HJTVEJTIwY29uJTIwJTVCUkVQTEFDRSU1RGluJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX3JlcGxhY2UlMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMHdpdGglMjAlNUJSRVBMQUNFJTVEJTIyJTNBJTIyc29zdGl0dWlzY2klMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMGNvbiUyMCU1QlJFUExBQ0UlNUQlMjIlMkMlMjJfcmV2ZXJzZSUyMHRleHQlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjJpbnZlcnRpJTIwdGVzdG8lMjAlNUJTVFJJTkclNUQlMjIlMkMlMjJfc3RhcnRzJTIyJTNBJTIyaW5pemlhJTIyJTJDJTIyX3RoZSUyMGVuZCUyMiUzQSUyMmxhJTIwZmluZSUyMiUyQyUyMl90aGUlMjBzdGFydCUyMiUzQSUyMmwnaW5pemlvJTIyJTJDJTIyX3RyaW0lMjB3aGl0ZXNwYWNlJTIwJTVCU1RSSU5HJTVEJTIwZnJvbSUyMCU1Qk1FVEhPRCU1RCUyMiUzQSUyMlJpbXVvdmklMjBzcGF6aSUyMGJpYW5jaGklMjBkaSUyMCU1QlNUUklORyU1RCUyMGRhJTIwJTVCTUVUSE9EJTVEJTIyJTJDJTIyX3VuaWNvZGUlMjAlNUJOVU0lNUQlMjBhcyUyMGxldHRlciUyMiUzQSUyMiU1Qk5VTSU1RCUyMHVuaWNvZGUlMjBjb21lJTIwbGV0dGVyYSUyMiUyQyUyMl91bmljb2RlJTIwb2YlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjJ1bmljb2RlJTIwZGklMjAlNUJTVFJJTkclNUQlMjIlN0QlMkMlMjJqYSUyMiUzQSU3QiUyMl9FeGFjdGx5JTIwVGl0bGUlMjBDYXNlJTIyJTNBJTIyJUU2JUFEJUEzJUU3JUEyJUJBJUUzJTgxJUFBJUUzJTgyJUJGJUUzJTgyJUE0JUUzJTgzJTg4JUUzJTgzJUFCJUUzJTgyJUIxJUUzJTgzJUJDJUUzJTgyJUI5JTIyJTJDJTIyX01pWGVEJTIwQ2FTZSUyMiUzQSUyMiVFMyU4MyU5RiVFMyU4MyU4MyVFMyU4MiVBRiVFMyU4MiVCOSVFMyU4MiVCMSVFMyU4MyVCQyVFMyU4MiVCOSUyMiUyQyUyMl9UZXh0JTIyJTNBJTIyJUUzJTgzJTg2JUUzJTgyJUFEJUUzJTgyJUI5JUUzJTgzJTg4JTIyJTJDJTIyX1RpdGxlJTIwQ2FzZSUyMiUzQSUyMiVFMyU4MiVCRiVFMyU4MiVBNCVFMyU4MyU4OCVFMyU4MyVBQiVFMyU4MiVCMSVFMyU4MyVCQyVFMyU4MiVCOSUyMiUyQyUyMl9VUFBFUkNBU0UlMjIlM0ElMjIlRTUlQTQlQTclRTYlOTYlODclRTUlQUQlOTclMjIlMkMlMjJfYXBwbGUlMjIlM0ElMjIlRTMlODIlOEElRTMlODIlOTMlRTMlODElOTQlMjIlMkMlMjJfY29udmVydCUyMCU1QlNUUklORyU1RCUyMHRvJTIwJTVCVEVYVENBU0UlNUQlMjIlM0ElMjIlNUJTVFJJTkclNUQlRTMlODIlOTIlNUJURVhUQ0FTRSU1RCVFMyU4MSVBQiVFNSVBNCU4OSVFNiU4RiU5QiVFMyU4MSU5OSVFMyU4MiU4QiUyMiUyQyUyMl9jb3VudCUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJTVCU1RSSU5HJTVEJUUzJTgxJUFCJTVCU1VCU1RSSU5HJTVEJUUzJTgxJThDJUU1JTg3JUJBJUUzJTgxJUE2JUUzJTgxJThEJUUzJTgxJTlGJUU1JTlCJTlFJUU2JTk1JUIwJTIyJTJDJTIyX2luZGV4JTIwb2YlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFMyU4MSVBRSU1QlNVQlNUUklORyU1RCVFMyU4MSVBRSVFNSVBMCVCNCVFNiU4OSU4MCUyMiUyQyUyMl9pcyUyMCU1Qk9QRVJBTkQxJTVEJTIwaWRlbnRpY2FsJTIwdG8lMjAlNUJPUEVSQU5EMiU1RCUzRiUyMiUzQSUyMiU1Qk9QRVJBTkQxJTVEJUUzJTgxJUE4JTVCT1BFUkFORDIlNUQlRTMlODElOEMlRTUlOTAlOEMlRTQlQjglODAlMjIlMkMlMjJfaXMlMjAlNUJTVFJJTkclNUQlMjAlNUJURVhUQ0FTRSU1RCUzRiUyMiUzQSUyMiU1QlNUUklORyU1RCVFMyU4MSU4QyU1QlRFWFRDQVNFJTVEJTIyJTJDJTIyX2l0ZW0lMjAlNUJJVEVNJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjBzcGxpdCUyMGJ5JTIwJTVCU1BMSVQlNUQlMjIlM0ElMjIlNUJTVFJJTkclNUQlRTMlODIlOTIlNUJTUExJVCU1RCVFMyU4MSVBNyVFNSU4QyVCQSVFNSU4OCU4NyVFMyU4MSVBMyVFMyU4MSU5RiVFMyU4MSVBOCVFMyU4MSU4RCVFMyU4MSVBRSU1QklURU0lNUQlRTclOTUlQUElRTclOUIlQUUlMjIlMkMlMjJfbGV0dGVycyUyMCU1QkxFVFRFUjElNUQlMjB0byUyMCU1QkxFVFRFUjIlNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFMyU4MSVBRSU1QkxFVFRFUjElNUQlRTMlODElOEIlRTMlODIlODklNUJMRVRURVIyJTVEJUU2JTk2JTg3JUU1JUFEJTk3JUU3JTlCJUFFJTIyJTJDJTIyX2xvd2VyY2FzZSUyMiUzQSUyMiVFNSVCMCU4RiVFNiU5NiU4NyVFNSVBRCU5NyUyMiUyQyUyMl9yZXBlYXQlMjAlNUJTVFJJTkclNUQlMjAlNUJSRVBFQVQlNUQlMjB0aW1lcyUyMiUzQSUyMiU1QlNUUklORyU1RCVFMyU4MiU5MiU1QlJFUEVBVCU1RCVFNSU5QiU5RSVFNyVCOSVCMCVFMyU4MiU4QSVFOCVCRiU5NCVFMyU4MSU5OSUyMiUyQyUyMl9yZXBsYWNlJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjB3aXRoJTIwJTVCUkVQTEFDRSU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFMyU4MSVBRSU1QlNVQlNUUklORyU1RCVFMyU4MiU5MiU1QlJFUExBQ0UlNUQlRTMlODElQTclRTclQkQlQUUlRTMlODElOEQlRTYlOEYlOUIlRTMlODElODglRTMlODIlOEIlMjIlMkMlMjJfdW5pY29kZSUyMCU1Qk5VTSU1RCUyMGFzJTIwbGV0dGVyJTIyJTNBJTIyVW5pY29kZSU1Qk5VTSU1RCVFMyU4MSVBRSVFNiU5NiU4NyVFNSVBRCU5NyUyMiUyQyUyMl91bmljb2RlJTIwb2YlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlNUJTVFJJTkclNUQlRTMlODElQUVVbmljb2RlJTIyJTdEJTJDJTIya28lMjIlM0ElN0IlMjJfRXhhY3RseSUyMFRpdGxlJTIwQ2FzZSUyMiUzQSUyMiVFQyVBMCU5NSVFRCU5OSU5NSVFRCU5NSU5QyUyMCVFQyVBMCU5QyVFQiVBQSVBOSUyMCVFRCU5MSU5QyVFQSVCOCVCMCVFQiVCMiU5NSUyMChBYmMlMjBBYmMpJTIyJTJDJTIyX01pWGVEJTIwQ2FTZSUyMiUzQSUyMiVFQyU4NCU5RSVFQyU5RCVCOCUyMCVFRCU5MSU5QyVFQSVCOCVCMCVFQiVCMiU5NSUyMChBYkMlMjBBYkNkKSUyMiUyQyUyMl9UZXh0JTIyJTNBJTIyJUVEJTg1JThEJUVDJThBJUE0JUVEJThBJUI4JTIyJTJDJTIyX1RpdGxlJTIwQ2FzZSUyMiUzQSUyMiVFQyVBMCU5QyVFQiVBQSVBOSUyMCVFRCU5MSU5QyVFQSVCOCVCMCVFQiVCMiU5NSUyMChBYmMlMjBBYmMpJTIyJTJDJTIyX1VQUEVSQ0FTRSUyMiUzQSUyMiVFQiU4QyU4MCVFQiVBQyVCOCVFQyU5RSU5MCUyMCVFRCU5MSU5QyVFQSVCOCVCMCVFQiVCMiU5NSUyMChBQkMpJTIyJTJDJTIyXyU1QlNUUklORyU1RCUyMG1hdGNoZXMlMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlM0YlMjIlM0ElMjIlNUJTVFJJTkclNUQlRUMlOUQlQjQoJUVBJUIwJTgwKSUyMCVFQyVBMCU5NSVFQSVCNyU5QyVFRCU5MSU5QyVFRCU5OCU4NCVFQyU4QiU5RCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjAlRUMlOTclOTAlMjAlRUMlOUQlQkMlRUMlQjklOTglRUQlOTUlOTglRUIlOEElOTQlRUElQjAlODAlM0YlMjIlMkMlMjJfY29udmVydCUyMCU1QlNUUklORyU1RCUyMHRvJTIwJTVCVEVYVENBU0UlNUQlMjIlM0ElMjIlNUJTVFJJTkclNUQlRUMlOUQlODQoJUVCJUE1JUJDKSUyMCU1QlRFWFRDQVNFJTVEKCVFQyU5QyVCQyklRUIlQTElOUMlMjAlRUIlQjMlODAlRUQlOTklOTglRUQlOTUlOTglRUElQjglQjAlMjIlMkMlMjJfY291bnQlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFQyU5NyU5MCVFQyU4NCU5QyUyMCU1QlNVQlNUUklORyU1RCVFQyU5RCU5OCUyMCVFQSVCMCU5QyVFQyU4OCU5OCUyMiUyQyUyMl9jb3VudCUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJTVCU1RSSU5HJTVEJUVDJTk3JTkwJUVDJTg0JTlDJTIwJUVDJUEwJTk1JUVBJUI3JTlDJUVEJTkxJTlDJUVEJTk4JTg0JUVDJThCJTlEJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMCVFQyU5RCU5OCUyMCVFQSVCMiVCMCVFQSVCMyVCQyUyMCVFQSVCMCU5QyVFQyU4OCU5OCUyMiUyQyUyMl9pbmRleCUyMG9mJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlNUJTVFJJTkclNUQlRUMlOTclOTAlRUMlODQlOUMlMjAlNUJTVUJTVFJJTkclNUQlRUMlOUQlOTglMjAlRUIlQjIlODglRUMlQTclQjglMjIlMkMlMjJfaXMlMjAlNUJPUEVSQU5EMSU1RCUyMGlkZW50aWNhbCUyMHRvJTIwJTVCT1BFUkFORDIlNUQlM0YlMjIlM0ElMjIlNUJPUEVSQU5EMSU1RCVFQyU5RCVCNCglRUElQjAlODApJTIwJTVCT1BFUkFORDIlNUQlRUMlOTklODAoJUVBJUIzJUJDKSUyMCVFQyVBMCU5NSVFRCU5OSU5NSVFRCU5RSU4OCUyMCVFQSVCMCU5OSVFQyVBNyU4MCUyMCVFQyU5NSU4QSVFQyU5RCU4MCVFQSVCMCU4MCUzRiUyMiUyQyUyMl9pcyUyMCU1QlNUUklORyU1RCUyMCU1QlRFWFRDQVNFJTVEJTNGJTIyJTNBJTIyJTVCU1RSSU5HJTVEJUVDJTlEJUI0KCVFQSVCMCU4MCklMjAlNUJURVhUQ0FTRSU1RCVFQyU5RCVCOCVFQSVCMCU4MCUzRiUyMiUyQyUyMl9pdGVtJTIwJTVCSVRFTSU1RCUyMG9mJTIwJTVCU1RSSU5HJTVEJTIwbWF0Y2hlZCUyMGJ5JTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIyJTNBJTIyJTVCU1RSSU5HJTVEJUVDJTk3JTkwJUVDJTg0JTlDJTIwJUVDJUEwJTk1JUVBJUI3JTlDJUVEJTkxJTlDJUVEJTk4JTg0JUVDJThCJTlEJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMCVFQyU5RCU5OCUyMCU1QklURU0lNUQlRUIlQjIlODglRUMlQTclQjglMjAlRUElQjIlQjAlRUElQjMlQkMlMjIlMkMlMjJfaXRlbSUyMCU1QklURU0lNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMHNwbGl0JTIwYnklMjAlNUJTUExJVCU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFQyU5RCU4NCglRUIlQTUlQkMpJTIwJTVCU1BMSVQlNUQoJUVDJTlDJUJDKSVFQiVBMSU5QyUyMCVFQiU4MiU5OCVFQiU4OCU4OCUyMCVFQSVCMiU4MyVFQyU5RCU5OCUyMCU1QklURU0lNUQlRUIlQjIlODglRUMlQTclQjglMjIlMkMlMjJfbGV0dGVycyUyMCU1QkxFVFRFUjElNUQlMjB0byUyMCU1QkxFVFRFUjIlNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFQyU5RCU5OCUyMCU1QlNUQVJUJTVEJUVCJUI2JTgwJUVEJTg0JUIwJTIwJTVCRU5EJTVEJUVBJUI5JThDJUVDJUE3JTgwJUVDJTlEJTk4JTIwJUVBJUI4JTgwJUVDJTlFJTkwJTIyJTJDJTIyX2xvd2VyY2FzZSUyMiUzQSUyMiVFQyU4NiU4QyVFQiVBQyVCOCVFQyU5RSU5MCUyMCVFRCU5MSU5QyVFQSVCOCVCMCVFQiVCMiU5NSUyMChhYmMpJTIyJTJDJTIyX3JlcGVhdCUyMCU1QlNUUklORyU1RCUyMCU1QlJFUEVBVCU1RCUyMHRpbWVzJTIyJTNBJTIyJTVCU1RSSU5HJTVEJTIwJUVCJUFDJUI4JUVDJTlFJTkwJUVDJTk3JUI0JTIwJTVCUkVQRUFUJTVEJUVCJUIyJTg4JTIwJUVCJUIwJTk4JUVCJUIzJUI1JTIyJTJDJTIyX3JlcGxhY2UlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMHdpdGglMjAlNUJSRVBMQUNFJTVEJTIyJTNBJTIyJTVCU1RSSU5HJTVEJUVDJTlEJTk4JTIwJTVCU1VCU1RSSU5HJTVEJUVDJTlEJTg0KCVFQiVBNSVCQyklMjAlNUJSRVBMQUNFJTVEKCVFQyU5QyVCQyklRUIlQTElOUMlMjAlRUIlQjAlOTQlRUElQkUlQjglRUElQjglQjAlMjIlMkMlMjJfcmVwbGFjZSUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIwd2l0aCUyMCU1QlJFUExBQ0UlNUQlMjIlM0ElMjIlRUMlQTAlOTUlRUElQjclOUMlRUQlOTElOUMlRUQlOTglODQlRUMlOEIlOUQlMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIwKCVFQyU5QyVCQyklRUIlQTElOUMlMjAlNUJTVFJJTkclNUQlRUMlOUQlODQoJUVCJUE1JUJDKSUyMCU1QlJFUExBQ0UlNUQoJUVDJTlDJUJDKSVFQiVBMSU5QyUyMCVFQiVCMCU5NCVFQSVCRSVCOCVFQSVCOCVCMCUyMiUyQyUyMl91bmljb2RlJTIwJTVCTlVNJTVEJTIwYXMlMjBsZXR0ZXIlMjIlM0ElMjIlRUMlOUMlQTAlRUIlOEIlODglRUMlQkQlOTQlRUIlOTMlOUMlMjAlRUIlQUMlQjglRUMlOUUlOTAlMjAlNUJOVU0lNUQlMjIlMkMlMjJfdW5pY29kZSUyMG9mJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJTVCU1RSSU5HJTVEJUVDJTlEJTk4JTIwJUVDJTlDJUEwJUVCJThCJTg4JUVDJUJEJTk0JUVCJTkzJTlDJTIyJTdEJTJDJTIybmIlMjIlM0ElN0IlMjJfVGV4dCUyMiUzQSUyMlRla3N0JTIyJTdEJTJDJTIybmwlMjIlM0ElN0IlMjJfRXhhY3RseSUyMFRpdGxlJTIwQ2FzZSUyMiUzQSUyMkFsbGVlbiUyMEJlZ2luaG9vZmRsZXR0ZXJzJTIyJTJDJTIyX01pWGVEJTIwQ2FTZSUyMiUzQSUyMkRvT3IlMjBlTGtBYVIlMjIlMkMlMjJfVGV4dCUyMiUzQSUyMlRla3N0JTIyJTJDJTIyX1RpdGxlJTIwQ2FzZSUyMiUzQSUyMkFsbGVzJTIwTWV0JTIwQmVnaW5ob29mZGxldHRlciUyMiUyQyUyMl9VUFBFUkNBU0UlMjIlM0ElMjJIT09GRExFVFRFUlMlMjIlMkMlMjJfJTVCU1RSSU5HJTVEJTIwbWF0Y2hlcyUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUzRiUyMiUzQSUyMiU1QlNUUklORyU1RCUyMGtvbXQlMjBvdmVyZWVuJTIwbWV0JTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTNGJTIyJTJDJTIyX2FwcGxlJTIyJTNBJTIyYXBwZWwlMjIlMkMlMjJfY29udmVydCUyMCU1QlNUUklORyU1RCUyMHRvJTIwJTVCVEVYVENBU0UlNUQlMjIlM0ElMjJ6ZXQlMjAlNUJTVFJJTkclNUQlMjBvbSUyMG5hYXIlMjAlNUJURVhUQ0FTRSU1RCUyMiUyQyUyMl9jb3VudCUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyYWFudGFsJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlMkMlMjJfY291bnQlMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMmFhbnRhbCUyMG92ZXJlZW5rb21zdGVuJTIwdmFuJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIwbWV0JTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX2luZGV4JTIwb2YlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMnBvc2l0aWUlMjB2YW4lMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9pcyUyMCU1Qk9QRVJBTkQxJTVEJTIwaWRlbnRpY2FsJTIwdG8lMjAlNUJPUEVSQU5EMiU1RCUzRiUyMiUzQSUyMiU1Qk9QRVJBTkQxJTVEJTIwaWRlbnRpZWslMjBhYW4lMjAlNUJPUEVSQU5EMiU1RCUzRiUyMiUyQyUyMl9pdGVtJTIwJTVCSVRFTSU1RCUyMG9mJTIwJTVCU1RSSU5HJTVEJTIwbWF0Y2hlZCUyMGJ5JTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIyJTNBJTIyaXRlbSUyMCU1QklURU0lNUQlMjB2YW4lMjAlNUJTVFJJTkclNUQlMjB3YWFybWVlJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIwb3ZlcmVlbmtvbXQlMjIlMkMlMjJfaXRlbSUyMCU1QklURU0lNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMHNwbGl0JTIwYnklMjAlNUJTUExJVCU1RCUyMiUzQSUyMml0ZW0lMjAlNUJJVEVNJTVEJTIwdmFuJTIwJTVCU1RSSU5HJTVEJTIwZ2VzcGxpdHN0JTIwZG9vciUyMCU1QlNQTElUJTVEJTIyJTJDJTIyX2xldHRlcnMlMjAlNUJMRVRURVIxJTVEJTIwdG8lMjAlNUJMRVRURVIyJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjJsZXR0ZXJzJTIwJTVCTEVUVEVSMSU1RCUyMHQlMkZtJTIwJTVCTEVUVEVSMiU1RCUyMHZhbiUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9sb3dlcmNhc2UlMjIlM0ElMjJrbGVpbmUlMjBsZXR0ZXJzJTIyJTJDJTIyX3JlcGVhdCUyMCU1QlNUUklORyU1RCUyMCU1QlJFUEVBVCU1RCUyMHRpbWVzJTIyJTNBJTIyaGVyaGFhbCUyMCU1QlNUUklORyU1RCUyMCU1QlJFUEVBVCU1RCUyMGtlZXIlMjIlMkMlMjJfcmVwbGFjZSUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIwd2l0aCUyMCU1QlJFUExBQ0UlNUQlMjIlM0ElMjJ2ZXJ2YW5nJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjBkb29yJTIwJTVCUkVQTEFDRSU1RCUyMiUyQyUyMl9yZXBsYWNlJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjB3aXRoJTIwJTVCUkVQTEFDRSU1RCUyMiUzQSUyMnZlcnZhbmclMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMGRvb3IlMjAlNUJSRVBMQUNFJTVEJTIyJTJDJTIyX3VuaWNvZGUlMjAlNUJOVU0lNUQlMjBhcyUyMGxldHRlciUyMiUzQSUyMnVuaWNvZGUlMjAlNUJOVU0lNUQlMjBhbHMlMjBsZXR0ZXIlMjIlMkMlMjJfdW5pY29kZSUyMG9mJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIydW5pY29kZSUyMHZhbiUyMCU1QlNUUklORyU1RCUyMiU3RCUyQyUyMnBsJTIyJTNBJTdCJTIyX1RleHQlMjIlM0ElMjJUZWtzdCUyMiU3RCUyQyUyMnB0LWJyJTIyJTNBJTdCJTIyX1RleHQlMjIlM0ElMjJUZXh0byUyMiU3RCUyQyUyMnJ1JTIyJTNBJTdCJTIyX0V4YWN0bHklMjBUaXRsZSUyMENhc2UlMjIlM0ElMjIlRDAlOUQlRDAlQjAlRDElODElRDElODIlRDAlQkUlRDElOEYlRDElODklRDAlQjglRDAlQjklMjAlRDAlQTIlRDAlQjAlRDAlQjklRDElODIlRDAlQkIlMjAlRDAlOUElRDAlQjUlRDAlQjklRDElODElMjIlMkMlMjJfTWlYZUQlMjBDYVNlJTIyJTNBJTIyJUQwJUExJUQwJUJDJUQwJTk1JUQxJTg4JUQwJTkwJUQwJUJEJUQwJTlEJUQxJThCJUQwJTk5JTIwJUQwJTlBJUQwJUI1JUQwJTk5JUQxJTgxJTIyJTJDJTIyX1JBbmRvTUNhU2UlMjIlM0ElMjIlRDAlQTElRDAlOUIlRDElODMlRDAlQTclRDAlQjAlRDAlQjklRDAlQkQlRDAlQUIlRDAlOTklRDAlQTAlRDAlQjUlRDAlOTMlRDAlQjglRDElODElRDAlQTIlRDAlQTAlMjIlMkMlMjJfU2VudGVuY2UlMjBjYXNlJTIyJTNBJTIyJUQwJUExJUQwJUJDJUQxJThCJUQxJTgxJUQwJUJCJUQwJUJFJUQwJUIyJUQwJUJFJUQwJUI5JTIwJUQxJTgwJUQwJUI1JUQwJUIzJUQwJUI4JUQxJTgxJUQxJTgyJUQxJTgwJTIyJTJDJTIyX1RleHQlMjIlM0ElMjIlRDAlQTIlRDAlQjUlRDAlQkElRDElODElRDElODIlMjIlMkMlMjJfVGl0bGUlMjBDYXNlJTIyJTNBJTIyJUQwJUEyJUQwJUIwJUQwJUI5JUQxJTgyJUQwJUJCJTIwJUQwJTlBJUQwJUI1JUQwJUI5JUQxJTgxJTIyJTJDJTIyX1VQUEVSQ0FTRSUyMiUzQSUyMiVEMCU5MiVEMCU5NSVEMCVBMCVEMCVBNSVEMCU5RCVEMCU5OCVEMCU5OSUyMCVEMCVBMCVEMCU5NSVEMCU5MyVEMCU5OCVEMCVBMSVEMCVBMiVEMCVBMCUyMiUyQyUyMl8lNUJTVFJJTkclNUQlMjAlNUJQT1NJVElPTiU1RCUyMHdpdGglMjAlNUJTVUJTVFJJTkclNUQlM0YlMjIlM0ElMjIlNUJTVFJJTkclNUQlMjAlNUJQT1NJVElPTiU1RCUyMCVEMCVCRCVEMCVCMCUyMCU1QlNVQlNUUklORyU1RCUzRiUyMiUyQyUyMl8lNUJTVFJJTkclNUQlMjBtYXRjaGVzJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTNGJTIyJTNBJTIyJTVCU1RSSU5HJTVEJTIwJUQxJTgxJUQwJUJFJUQwJUIyJUQwJUJGJUQwJUIwJUQwJUI0JUQwJUIwJUQwJUI1JUQxJTgyJTIwJUQxJTgxJTIwcmVnZXgnJUQwJUJFJUQwJUJDJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUzRiUyMiUyQyUyMl9hcHBsZSUyMiUzQSUyMiVEMSU4RiVEMCVCMSVEMCVCQiVEMCVCRSVEMCVCQSVEMCVCRSUyMiUyQyUyMl9ib3RoJTIwc2lkZXMlMjIlM0ElMjIlRDAlQkUlRDAlQjElRDAlQjUlMjAlRDElODElRDElODIlRDAlQkUlRDElODAlRDAlQkUlRDAlQkQlRDElOEIlMjIlMkMlMjJfY2FtZWxDYXNlJTIyJTNBJTIyJUQwJUEwJUQwJUI1JUQwJUIzJUQwJUI4JUQxJTgxJUQxJTgyJUQxJTgwJTIwJUQwJUIyJUQwJUI1JUQxJTgwJUQwJUIxJUQwJUJCJUQxJThFJUQwJUI0JUQwJUIwJTIyJTJDJTIyX2NvbnZlcnQlMjAlNUJTVFJJTkclNUQlMjB0byUyMCU1QlRFWFRDQVNFJTVEJTIyJTNBJTIyJUQxJTgxJUQwJUJBJUQwJUJFJUQwJUJEJUQwJUIyJUQwJUI1JUQxJTgwJUQxJTgyJUQwJUI4JUQxJTgwJUQwJUJFJUQwJUIyJUQwJUIwJUQxJTgyJUQxJThDJTIwJUQxJTgxJUQxJTgyJUQxJTgwJUQwJUJFJUQwJUJBJUQxJTgzJTIwJTVCU1RSSU5HJTVEJTIwJUQwJUIyJTIwJTVCVEVYVENBU0UlNUQlMjIlMkMlMjJfY291bnQlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiVEMCVCQSVEMCVCRSVEMCVCQiVEMCVCOCVEMSU4NyVEMCVCNSVEMSU4MSVEMSU4MiVEMCVCMiVEMCVCRSUyMCU1QlNVQlNUUklORyU1RCUyMCVEMCVCMiUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9jb3VudCUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJUQwJUJGJUQwJUJFJUQxJTgxJUQxJTg3JUQwJUI4JUQxJTgyJUQwJUIwJUQxJTgyJUQxJThDJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIwJUQwJUIyJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX2VuZHMlMjIlM0ElMjIlRDAlQjclRDAlQjAlRDAlQkElRDAlQjAlRDAlQkQlRDElODclRDAlQjglRDAlQjIlRDAlQjAlRDAlQjUlRDElODIlRDElODElRDElOEYlMjIlMkMlMjJfaW5kZXglMjBvZiUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJUQwJUI4JUQwJUJEJUQwJUI0JUQwJUI1JUQwJUJBJUQxJTgxJTIwJTVCU1VCU1RSSU5HJTVEJTIwJUQwJUIyJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX2lzJTIwJTVCT1BFUkFORDElNUQlMjBpZGVudGljYWwlMjB0byUyMCU1Qk9QRVJBTkQyJTVEJTNGJTIyJTNBJTIyJTVCT1BFUkFORDElNUQlMjAlRDAlQjglRDAlQjQlRDAlQjUlRDAlQkQlRDElODIlRDAlQjglRDElODclRDAlQkQlRDElOEIlRDAlQjklMjAlRDElODElMjAlNUJPUEVSQU5EMiU1RCUzRiUyMiUyQyUyMl9pcyUyMCU1QlNUUklORyU1RCUyMCU1QlRFWFRDQVNFJTVEJTNGJTIyJTNBJTIyJUQxJTgxJUQxJTgyJUQxJTgwJUQwJUJFJUQwJUJBJUQwJUIwJTIwJTVCU1RSSU5HJTVEJTIwJUQxJThEJUQxJTgyJUQwJUJFJTIwJTVCVEVYVENBU0UlNUQlM0YlMjIlMkMlMjJfaXRlbSUyMCU1QklURU0lNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMG1hdGNoZWQlMjBieSUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMiUzQSUyMiVEMCVCRiVEMSU4MCVEMCVCNSVEMCVCNCVEMCVCQyVEMCVCNSVEMSU4MiUyMCU1QklURU0lNUQlMjAlRDElODElRDElODIlRDElODAlRDAlQkUlRDAlQkElRDAlQjglMjAlNUJTVFJJTkclNUQlMjAlRDElODElRDAlQkUlRDAlQjIlRDAlQkYlRDAlQjAlRDAlQjQlRDAlQjAlRDElOEUlRDElODklRDAlQjglRDAlQjklMjByZWdleCclRDAlQkUlRDAlQkMlMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTIyJTJDJTIyX2l0ZW0lMjAlNUJJVEVNJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjBzcGxpdCUyMGJ5JTIwJTVCU1BMSVQlNUQlMjIlM0ElMjIlRDAlQkYlRDElODAlRDAlQjUlRDAlQjQlRDAlQkMlRDAlQjUlRDElODIlMjAlNUJJVEVNJTVEJTIwJUQxJTgxJUQxJTgyJUQxJTgwJUQwJUJFJUQwJUJBJUQwJUI4JTIwJTVCU1RSSU5HJTVEJTIwJUQxJTgwJUQwJUIwJUQxJTgxJUQwJUJGJUQxJTgwJUQwJUI1JUQwJUI0JUQwJUI1JUQwJUJCJUQxJTkxJUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJTVCU1BMSVQlNUQlMjIlMkMlMjJfbGV0dGVycyUyMCU1QkxFVFRFUjElNUQlMjB0byUyMCU1QkxFVFRFUjIlNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiVEMCVCMSVEMSU4MyVEMCVCQSVEMCVCMiVEMSU4QiUyMCVEMSU4MSUyMCU1QkxFVFRFUjElNUQlMjAlRDAlQjQlRDAlQkUlMjAlNUJMRVRURVIyJTVEJTIwJUQxJTgxJUQxJTgyJUQxJTgwJUQwJUJFJUQwJUJBJUQwJUI4JTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX2xvd2VyY2FzZSUyMiUzQSUyMiVEMCVCRCVEMCVCOCVEMCVCNiVEMCVCRCVEMCVCOCVEMCVCOSUyMCVEMSU4MCVEMCVCNSVEMCVCMyVEMCVCOCVEMSU4MSVEMSU4MiVEMSU4MCUyMiUyQyUyMl9yZXBlYXQlMjAlNUJTVFJJTkclNUQlMjAlNUJSRVBFQVQlNUQlMjB0aW1lcyUyMiUzQSUyMiVEMCVCRiVEMCVCRSVEMCVCMiVEMSU4MiVEMCVCRSVEMSU4MCVEMCVCOCVEMSU4MiVEMSU4QyUyMCU1QlNUUklORyU1RCUyMCU1QlJFUEVBVCU1RCUyMCVEMSU4MCVEMCVCMCVEMCVCNyUyMiUyQyUyMl9yZXBsYWNlJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjB3aXRoJTIwJTVCUkVQTEFDRSU1RCUyMiUzQSUyMiVEMCVCNyVEMCVCMCVEMCVCQyVEMCVCNSVEMCVCRCVEMCVCOCVEMSU4MiVEMSU4QyUyMCU1QlNVQlNUUklORyU1RCUyMCVEMCVCMiUyMCU1QlNUUklORyU1RCUyMCVEMCVCRCVEMCVCMCUyMCU1QlJFUExBQ0UlNUQlMjIlMkMlMjJfcmVwbGFjZSUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIwd2l0aCUyMCU1QlJFUExBQ0UlNUQlMjIlM0ElMjIlRDAlQjclRDAlQjAlRDAlQkMlRDAlQjUlRDAlQkQlRDAlQjglRDElODIlRDElOEMlMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjAlRDAlQjIlMjAlNUJTVFJJTkclNUQlMjAlRDAlQkQlRDAlQjAlMjAlNUJSRVBMQUNFJTVEJTIyJTJDJTIyX3JldmVyc2UlMjB0ZXh0JTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUI1JUQwJUIyJUQwJUI1JUQxJTgwJUQwJUJEJUQxJTgzJUQxJTgyJUQxJThDJTIwJUQxJTgyJUQwJUI1JUQwJUJBJUQxJTgxJUQxJTgyJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX3N0YXJ0cyUyMiUzQSUyMiVEMCVCRCVEMCVCMCVEMSU4NyVEMCVCOCVEMCVCRCVEMCVCMCVEMCVCNSVEMSU4MiVEMSU4MSVEMSU4RiUyMiUyQyUyMl90aGUlMjBlbmQlMjIlM0ElMjIlRDAlQkElRDAlQkUlRDAlQkQlRDElODYlRDAlQjAlMjIlMkMlMjJfdGhlJTIwc3RhcnQlMjIlM0ElMjIlRDAlQkQlRDAlQjAlRDElODclRDAlQjAlRDAlQkIlRDAlQjAlMjIlMkMlMjJfdHJpbSUyMHdoaXRlc3BhY2UlMjAlNUJTVFJJTkclNUQlMjBmcm9tJTIwJTVCTUVUSE9EJTVEJTIyJTNBJTIyJUQwJUJFJUQwJUIxJUQxJTgwJUQwJUI1JUQwJUI3JUQwJUIwJUQxJTgyJUQxJThDJTIwJUQwJUJGJUQxJTgwJUQwJUJFJUQwJUIxJUQwJUI1JUQwJUJCJUQxJThCJTIwJTVCU1RSSU5HJTVEJTIwJUQwJUI4JUQwJUI3JTIwJTVCTUVUSE9EJTVEJTIyJTJDJTIyX3VuaWNvZGUlMjAlNUJOVU0lNUQlMjBhcyUyMGxldHRlciUyMiUzQSUyMiVEMSU4RSVEMCVCRCVEMCVCOCVEMCVCQSVEMCVCRSVEMCVCNCUyMCU1Qk5VTSU1RCUyMCVEMCVCQSVEMCVCMCVEMCVCQSUyMCVEMCVCMSVEMSU4MyVEMCVCQSVEMCVCMiVEMSU4MyUyMiUyQyUyMl91bmljb2RlJTIwb2YlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlRDElOEUlRDAlQkQlRDAlQjglRDAlQkElRDAlQkUlRDAlQjQlMjAlNUJTVFJJTkclNUQlMjIlN0QlMkMlMjJzbCUyMiUzQSU3QiUyMl9UZXh0JTIyJTNBJTIyQmVzZWRpbG8lMjIlN0QlMkMlMjJ0ciUyMiUzQSU3QiUyMl9UZXh0JTIyJTNBJTIyTWV0aW4lMjIlN0QlMkMlMjJ1ayUyMiUzQSU3QiUyMl9FeGFjdGx5JTIwVGl0bGUlMjBDYXNlJTIyJTNBJTIyJUQwJUEyJUQwJUJFJUQxJTg3JUQwJUJEJUQwJUJFJTIwJUQwJTk3JUQwJUIwJUQwJUIzJUQwJUJFJUQwJUJCJUQwJUJFJUQwJUIyJUQwJUJBJUQwJUJFJUQwJUJDJTIyJTJDJTIyX01pWGVEJTIwQ2FTZSUyMiUzQSUyMiVEMCU5QyVEMSU5NiVEMCVBOCVEMCVCMCVEMCU5RCVEMCVCOCVEMCU5QyVEMCVCOCUyMiUyQyUyMl9SQW5kb01DYVNlJTIyJTNBJTIyJUQwJTkyJUQwJTk4JUQwJUJGJUQwJUIwJUQwJUI0JUQwJTlBJUQwJUJFJUQwJTkyJUQwJTk4JUQwJTlDJUQwJUI4JTIyJTJDJTIyX1NlbnRlbmNlJTIwY2FzZSUyMiUzQSUyMiVEMCVBMCVEMCVCNSVEMSU4NyVEMCVCNSVEMCVCRCVEMCVCRCVEMSU4RiUyMiUyQyUyMl9UZXh0JTIyJTNBJTIyJUQwJUEyJUQwJUI1JUQwJUJBJUQxJTgxJUQxJTgyJTIyJTJDJTIyX1RpdGxlJTIwQ2FzZSUyMiUzQSUyMiVEMCU5NyVEMCVCMCVEMCVCMyVEMCVCRSVEMCVCQiVEMCVCRSVEMCVCMiVEMCVCQSVEMCVCRSVEMCVCQyUyMiUyQyUyMl9VUFBFUkNBU0UlMjIlM0ElMjIlRDAlOTIlRDAlOTUlRDAlOUIlRDAlOTglRDAlOUElRDAlOTglRDAlOUMlRDAlOTglMjAlRDAlOTElRDAlQTMlRDAlOUElRDAlOTIlRDAlOTAlRDAlOUMlRDAlOTglMjIlMkMlMjJfYm90aCUyMHNpZGVzJTIyJTNBJTIyJUQwJUJFJUQwJUIxJUQwJUJFJUQxJTg1JTIwJUQxJTgxJUQxJTgyJUQwJUJFJUQxJTgwJUQxJTk2JUQwJUJEJTIyJTJDJTIyX2NvbnZlcnQlMjAlNUJTVFJJTkclNUQlMjB0byUyMCU1QlRFWFRDQVNFJTVEJTIyJTNBJTIyJUQwJUI3JUQxJTgwJUQwJUJFJUQwJUIxJUQwJUI4JUQxJTgyJUQwJUI4JTIwJTVCU1RSSU5HJTVEJTIwJTVCVEVYVENBU0UlNUQlMjIlMkMlMjJfY291bnQlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiVEMCVCQSVEMSU5NiVEMCVCQiVEMSU4QyVEMCVCQSVEMSU5NiVEMSU4MSVEMSU4MiVEMSU4QyUyMCU1QlNVQlNUUklORyU1RCUyMCVEMSU4MyUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9pbmRleCUyMG9mJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlRDAlQkQlRDAlQkUlRDAlQkMlRDAlQjUlRDElODAlMjAlNUJTVUJTVFJJTkclNUQlMjAlRDElODMlMjAlNUJTVFJJTkclNUQlMjIlMkMlMjJfaXMlMjAlNUJPUEVSQU5EMSU1RCUyMGlkZW50aWNhbCUyMHRvJTIwJTVCT1BFUkFORDIlNUQlM0YlMjIlM0ElMjIlNUJPUEVSQU5EMSU1RCUyMCVEMSU5NiVEMCVCNCVEMCVCNSVEMCVCRCVEMSU4MiVEMCVCOCVEMSU4NyVEMCVCRCVEMCVCMCUyMCVEMCVCNCVEMCVCRSUyMCU1Qk9QRVJBTkQyJTVEJTNGJTIyJTJDJTIyX2lzJTIwJTVCU1RSSU5HJTVEJTIwJTVCVEVYVENBU0UlNUQlM0YlMjIlM0ElMjIlNUJTVFJJTkclNUQlMjAlRDElOTQlMjAlNUJURVhUQ0FTRSU1RCUzRiUyMiUyQyUyMl9pdGVtJTIwJTVCSVRFTSU1RCUyMG9mJTIwJTVCU1RSSU5HJTVEJTIwc3BsaXQlMjBieSUyMCU1QlNQTElUJTVEJTIyJTNBJTIyJUQwJUI1JUQwJUJCJUQwJUI1JUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJTIwJTVCSVRFTSU1RCUyMCVEMSU4MyUyMCU1QlNUUklORyU1RCUyMCVEMSU4MCVEMCVCRSVEMCVCNyVEMCVCNCVEMSU5NiVEMCVCQiVEMCVCNSVEMCVCRCVEMCVCRSVEMCVCMyVEMCVCRSUyMCVEMSU4NyVEMCVCNSVEMSU4MCVEMCVCNSVEMCVCNyUyMCU1QlNQTElUJTVEJTIyJTJDJTIyX2xldHRlcnMlMjAlNUJMRVRURVIxJTVEJTIwdG8lMjAlNUJMRVRURVIyJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlRDAlQjElRDElODMlRDAlQkElRDAlQjIlRDAlQjglMjAlRDAlQjclMjAlNUJMRVRURVIxJTVEJTIwJUQwJUJGJUQwJUJFJTIwJTVCTEVUVEVSMiU1RCUyMCVEMSU4MyUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9sb3dlcmNhc2UlMjIlM0ElMjIlRDAlQkMlRDAlQjAlRDAlQkIlRDAlQjglRDAlQkMlRDAlQjglMjAlRDAlQjElRDElODMlRDAlQkElRDAlQjIlRDAlQjAlRDAlQkMlRDAlQjglMjIlMkMlMjJfcmVwZWF0JTIwJTVCU1RSSU5HJTVEJTIwJTVCUkVQRUFUJTVEJTIwdGltZXMlMjIlM0ElMjIlRDAlQkYlRDAlQkUlRDAlQjIlRDElODIlRDAlQkUlRDElODAlRDAlQjglRDElODIlRDAlQjglMjAlNUJTVFJJTkclNUQlMjAlNUJSRVBFQVQlNUQlMjAlRDElODAlRDAlQjAlRDAlQjclRDAlQjglMjIlMkMlMjJfcmVwbGFjZSUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIwd2l0aCUyMCU1QlJFUExBQ0UlNUQlMjIlM0ElMjIlRDAlQjclRDAlQjAlRDAlQkMlRDElOTYlRDAlQkQlRDAlQjglRDElODIlRDAlQjglMjAlNUJTVUJTVFJJTkclNUQlMjAlRDElODMlMjAlNUJTVFJJTkclNUQlMjAlRDAlQkQlRDAlQjAlMjAlNUJSRVBMQUNFJTVEJTIyJTJDJTIyX3JldmVyc2UlMjB0ZXh0JTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJUQxJTgwJUQwJUJFJUQwJUI3JUQwJUIyJUQwJUI1JUQxJTgwJUQwJUJEJUQxJTgzJUQxJTgyJUQwJUI4JTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX3RoZSUyMGVuZCUyMiUzQSUyMiVEMCVCRiVEMCVCRSVEMSU4NyVEMCVCMCVEMSU4MiVEMCVCQSVEMSU4MyUyMiUyQyUyMl90aGUlMjBzdGFydCUyMiUzQSUyMiVEMCVCQSVEMSU5NiVEMCVCRCVEMSU4NiVEMSU4RiUyMiUyQyUyMl90cmltJTIwd2hpdGVzcGFjZSUyMCU1QlNUUklORyU1RCUyMGZyb20lMjAlNUJNRVRIT0QlNUQlMjIlM0ElMjIlRDAlQkUlRDElODclRDAlQjglRDElODElRDElODIlRDAlQjglRDElODIlRDAlQjglMjAlRDAlQkYlRDElODAlRDAlQkUlRDAlQjElRDElOTYlRDAlQkIlRDAlQjglMjAlRDElODMlMjAlNUJTVFJJTkclNUQlMjAlRDAlQjclMjAlNUJNRVRIT0QlNUQlMjIlMkMlMjJfdW5pY29kZSUyMCU1Qk5VTSU1RCUyMGFzJTIwbGV0dGVyJTIyJTNBJTIyJUQxJTgxJUQwJUI4JUQwJUJDJUQwJUIyJUQwJUJFJUQwJUJCJTIwJUQxJThFJUQwJUJEJUQxJTk2JUQwJUJBJUQwJUJFJUQwJUI0JUQxJTgzJTIwJTVCTlVNJTVEJTIwJTIyJTJDJTIyX3VuaWNvZGUlMjBvZiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiVEMSU4RSVEMCVCRCVEMSU5NiVEMCVCQSVEMCVCRSVEMCVCNCUyMCU1QlNUUklORyU1RCUyMiU3RCUyQyUyMnpoLWNuJTIyJTNBJTdCJTIyX0V4YWN0bHklMjBUaXRsZSUyMENhc2UlMjIlM0ElMjIlRTclQjIlQkUlRTclQTElQUUlRTYlQTAlODclRTklQTIlOTglMjIlMkMlMjJfTWlYZUQlMjBDYVNlJTIyJTNBJTIyJUU2JUI3JUI3JUU1JTkwJTg4JUU1JUE0JUE3JUU1JUIwJThGJUU1JTg2JTk5JTIyJTJDJTIyX1JBbmRvTUNhU2UlMjIlM0ElMjIlRTklOUElOEYlRTYlOUMlQkElRTUlQTQlQTclRTUlQjAlOEYlRTUlODYlOTklMjIlMkMlMjJfU2VudGVuY2UlMjBjYXNlJTIyJTNBJTIyJUU1JThGJUE1JUU5JUE2JTk2JUU1JUE0JUE3JUU1JTg2JTk5JTIyJTJDJTIyX1RleHQlMjIlM0ElMjIlRTYlOTYlODclRTYlOUMlQUMlMjIlMkMlMjJfVGl0bGUlMjBDYXNlJTIyJTNBJTIyJUU2JUEwJTg3JUU5JUEyJTk4JTIyJTJDJTIyX1VQUEVSQ0FTRSUyMiUzQSUyMiVFNSVBNCVBNyVFNSU4NiU5OSUyMiUyQyUyMl8lNUJTVFJJTkclNUQlMjAlNUJQT1NJVElPTiU1RCUyMHdpdGglMjAlNUJTVUJTVFJJTkclNUQlM0YlMjIlM0ElMjIlNUJTVFJJTkclNUQlRTQlQkIlQTUlNUJTVUJTVFJJTkclNUQlNUJQT1NJVElPTiU1RCVFRiVCQyU5RiUyMiUyQyUyMl8lNUJTVFJJTkclNUQlMjBtYXRjaGVzJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTNGJTIyJTNBJTIyJTVCU1RSSU5HJTVEJTIwJUU2JUJCJUExJUU4JUI2JUIzJUU2JUFEJUEzJUU1JTg4JTk5JUU4JUExJUE4JUU4JUJFJUJFJUU1JUJDJThGJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCVFRiVCQyU5RiUyMiUyQyUyMl9hcHBsZSUyMiUzQSUyMiVFOCU4QiVCOSVFNiU5RSU5QyUyMiUyQyUyMl9ib3RoJTIwc2lkZXMlMjIlM0ElMjIlRTQlQjglQTQlRTglQkUlQjklMjIlMkMlMjJfY2FtZWxDYXNlJTIyJTNBJTIyJUU5JUE5JUJDJUU1JUIzJUIwJUU1JUJDJThGJUU1JTkxJUJEJUU1JTkwJThEJTIyJTJDJTIyX2NvbnZlcnQlMjAlNUJTVFJJTkclNUQlMjB0byUyMCU1QlRFWFRDQVNFJTVEJTIyJTNBJTIyJUU4JUJEJUFDJUU2JThEJUEyJTVCU1RSSU5HJTVEJUU0JUI4JUJBJTVCVEVYVENBU0UlNUQlMjIlMkMlMjJfY291bnQlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFNCVCOCVBRCU1QlNVQlNUUklORyU1RCVFNyU5QSU4NCVFNiU5NSVCMCVFOSU4NyU4RiUyMiUyQyUyMl9jb3VudCUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJUU0JUJEJUJGJUU3JTk0JUE4JUU2JUFEJUEzJUU1JTg4JTk5JUU4JUExJUE4JUU4JUJFJUJFJUU1JUJDJThGJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMCVFNSU5QyVBOCUyMCU1QlNUUklORyU1RCUyMCVFNSU4QyVCOSVFOSU4NSU4RCVFNyU5QSU4NCVFNiU5NSVCMCVFOSU4NyU4RiUyMiUyQyUyMl9lbmRzJTIyJTNBJTIyJUU3JUJCJTkzJUU1JUIwJUJFJTIyJTJDJTIyX2luZGV4JTIwb2YlMjAlNUJTVUJTVFJJTkclNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFNCVCOCVBRCU1QlNVQlNUUklORyU1RCVFNyU5QSU4NCVFNCVCRCU4RCVFNyVCRCVBRSUyMiUyQyUyMl9pcyUyMCU1Qk9QRVJBTkQxJTVEJTIwaWRlbnRpY2FsJTIwdG8lMjAlNUJPUEVSQU5EMiU1RCUzRiUyMiUzQSUyMiU1Qk9QRVJBTkQxJTVEJTNEJTNEJTNEJTVCT1BFUkFORDIlNUQlMjIlMkMlMjJfaXMlMjAlNUJTVFJJTkclNUQlMjAlNUJURVhUQ0FTRSU1RCUzRiUyMiUzQSUyMiU1QlNUUklORyU1RCVFNiU5OCVBRiU1QlRFWFRDQVNFJTVEJUVGJUJDJTlGJTIyJTJDJTIyX2l0ZW0lMjAlNUJJVEVNJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjBtYXRjaGVkJTIwYnklMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjIlM0ElMjIlRTQlQkQlQkYlRTclOTQlQTglRTYlQUQlQTMlRTUlODglOTklRTglQTElQTglRTglQkUlQkUlRTUlQkMlOEYlMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJUU1JThDJUI5JUU5JTg1JThEJTVCU1RSSU5HJTVEJUU3JTlBJTg0JUU3JUFDJUFDJTVCSVRFTSU1RCVFNCVCOCVBQSVFNSU4NiU4NSVFNSVBRSVCOSUyMiUyQyUyMl9pdGVtJTIwJTVCSVRFTSU1RCUyMG9mJTIwJTVCU1RSSU5HJTVEJTIwc3BsaXQlMjBieSUyMCU1QlNQTElUJTVEJTIyJTNBJTIyJUU0JUJCJUE1JTVCU1BMSVQlNUQlRTUlODglODYlRTUlODklQjIlNUJTVFJJTkclNUQlRTUlOTAlOEUlRTclOUElODQlRTclQUMlQUMlNUJJVEVNJTVEJUU5JUExJUI5JTIyJTJDJTIyX2xldHRlcnMlMjAlNUJMRVRURVIxJTVEJTIwdG8lMjAlNUJMRVRURVIyJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlNUJTVFJJTkclNUQlRTclOUElODQlRTclQUMlQUMlNUJMRVRURVIxJTVEJUU1JTg4JUIwJUU3JUFDJUFDJTVCTEVUVEVSMiU1RCVFNCVCRCU4RCUyMiUyQyUyMl9sb3dlcmNhc2UlMjIlM0ElMjIlRTUlQjAlOEYlRTUlODYlOTklMjIlMkMlMjJfcmVwZWF0JTIwJTVCU1RSSU5HJTVEJTIwJTVCUkVQRUFUJTVEJTIwdGltZXMlMjIlM0ElMjIlRTklODclOEQlRTUlQTQlOEQlNUJSRVBFQVQlNUQlRTQlQjglQUElNUJTVFJJTkclNUQlMjIlMkMlMjJfcmVwbGFjZSUyMCU1QlNVQlNUUklORyU1RCUyMGluJTIwJTVCU1RSSU5HJTVEJTIwd2l0aCUyMCU1QlJFUExBQ0UlNUQlMjIlM0ElMjIlRTYlOUIlQkYlRTYlOEQlQTIlNUJTVFJJTkclNUQlRTQlQjglQUQlRTclOUElODQlNUJTVUJTVFJJTkclNUQlRTQlQjglQkElNUJSRVBMQUNFJTVEJTIyJTJDJTIyX3JlcGxhY2UlMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMHdpdGglMjAlNUJSRVBMQUNFJTVEJTIyJTNBJTIyJUU0JUJEJUJGJUU3JTk0JUE4JUU2JUFEJUEzJUU1JTg4JTk5JUU4JUExJUE4JUU4JUJFJUJFJUU1JUJDJThGJTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMCVFNSU5QyVBOCUyMCU1QlNUUklORyU1RCVFNCVCOCVBRCVFNiU5QiVCRiVFNiU4RCVBMiVFNCVCOCVCQSUyMCUyMCU1QlJFUExBQ0UlNUQlMjIlMkMlMjJfcmV2ZXJzZSUyMHRleHQlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlRTUlOEYlOEQlRTglQkQlQUMlRTYlOTYlODclRTYlOUMlQUMlNUJTVFJJTkclNUQlMjIlMkMlMjJfc3RhcnRzJTIyJTNBJTIyJUU1JUJDJTgwJUU1JUE0JUI0JTIyJTJDJTIyX3RoZSUyMGVuZCUyMiUzQSUyMiVFNiU5QyVBQiVFNSVCMCVCRSUyMiUyQyUyMl90aGUlMjBzdGFydCUyMiUzQSUyMiVFNSVCQyU4MCVFNSVBNCVCNCUyMiUyQyUyMl90cmltJTIwd2hpdGVzcGFjZSUyMCU1QlNUUklORyU1RCUyMGZyb20lMjAlNUJNRVRIT0QlNUQlMjIlM0ElMjIlRTUlOEUlQkIlRTklOTklQTQlNUJTVFJJTkclNUQlRTQlQjglQUQlNUJNRVRIT0QlNUQlRTclOUElODQlRTclQTklQkElRTYlQTAlQkMlMjIlMkMlMjJfdW5pY29kZSUyMCU1Qk5VTSU1RCUyMGFzJTIwbGV0dGVyJTIyJTNBJTIydW5pY29kZSU1Qk5VTSU1RCVFNSVBRiVCOSVFNSVCQSU5NCVFNyU5QSU4NCVFNSVBRCU5NyVFNyVBQyVBNiUyMiUyQyUyMl91bmljb2RlJTIwb2YlMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlNUJTVFJJTkclNUQlRTclOUElODR1bmljb2RlJTIyJTdEJTdEKSUzQiUyRiolMjBlbmQlMjBnZW5lcmF0ZWQlMjBsMTBuJTIwY29kZSUyMColMkYoZnVuY3Rpb24lMjAoU2NyYXRjaCklMjAlN0IlMEElMjAlMjAlMjJ1c2UlMjBzdHJpY3QlMjIlM0IlMEElMEElMjAlMjBjb25zdCUyMENhc2VQYXJhbSUyMCUzRCUyMCU3QiUwQSUyMCUyMCUyMCUyMExPV0VSQ0FTRSUzQSUyMCUyMmxvd2VyY2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMFVQUEVSQ0FTRSUzQSUyMCUyMnVwcGVyY2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyME1JWEVEQ0FTRSUzQSUyMCUyMm1peGVkY2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMFRJVExFQ0FTRSUzQSUyMCUyMnRpdGxlY2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMEVYQUNUVElUTEVDQVNFJTNBJTIwJTIyZXhhY3R0aXRsZWNhc2UlMjIlMkMlMEElMjAlMjAlMjAlMjBSQU5ET01DQVNFJTNBJTIwJTIycmFuZG9tY2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMFNFTlRFTkNFQ0FTRSUzQSUyMCUyMnNlbnRlbmNlY2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMENBTUVMQ0FTRSUzQSUyMCUyMmNhbWVsY2FzZSUyMiUyQyUwQSUyMCUyMCU3RCUzQiUwQSUwQSUyMCUyMGxldCUyMHNwbGl0Q2FjaGUlM0IlMEElMjAlMjBsZXQlMjBtYXRjaENhY2hlJTNCJTBBJTBBJTIwJTIwY2xhc3MlMjBTdHJpbmdzRXh0JTIwJTdCJTBBJTIwJTIwJTIwJTIwY29uc3RydWN0b3IoKSUyMCU3QiU3RCUwQSUwQSUyMCUyMCUyMCUyMF9pbml0Q2FzZU1lbnUoKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0JTNBJTIwJTIybG93ZXJjYXNlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVzY3JpcHRpb24lM0ElMjAlMjJJZiUyMHlvdXIlMjBsYW5ndWFnZSUyMGhhcyUyMGxvd2VyY2FzZSUyQyUyMHN0eWxlJTIwaXQlMjBhY2NvcmRpbmdseSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YWx1ZSUzQSUyMENhc2VQYXJhbS5MT1dFUkNBU0UlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUyMCUyMlVQUEVSQ0FTRSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlc2NyaXB0aW9uJTNBJTIwJTIySWYlMjB5b3VyJTIwbGFuZ3VhZ2UlMjBoYXMlMjB1cHBlcmNhc2UlMkMlMjBzdHlsZSUyMGl0JTIwYWNjb3JkaW5nbHklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjBDYXNlUGFyYW0uVVBQRVJDQVNFJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjAlMjJTZW50ZW5jZSUyMGNhc2UlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMlN0YXJ0cyUyMHdvcmRzJTIwYWZ0ZXIlMjAuJTJDJTIwISUyQyUyMGFuZCUyMCUzRiUyMHdpdGglMjBjYXB0aWFsaXplZCUyMGxldHRlcnMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjBDYXNlUGFyYW0uU0VOVEVOQ0VDQVNFJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjAlMjJUaXRsZSUyMENhc2UlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMklmJTIweW91ciUyMGxhbmd1YWdlJTIwaGFzJTIwVGl0bGUlMjBDYXNlJTJDJTIwc3R5bGUlMjBpdCUyMGFjY29yZGluZ2x5LiUyMCdBYmMnJTIwaXMlMjB0aXRsZSUyMGNhc2UlMjBhbmQlMjBleGFjdGx5JTIwdGl0bGUlMjBjYXNlJTIwYnV0JTIwJ0FCQyclMjBpcyUyMG9ubHklMjB0aXRsZSUyMGNhc2UuJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhbHVlJTNBJTIwQ2FzZVBhcmFtLlRJVExFQ0FTRSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0JTNBJTIwJTIyRXhhY3RseSUyMFRpdGxlJTIwQ2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlc2NyaXB0aW9uJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIySWYlMjB5b3VyJTIwbGFuZ3VhZ2UlMjBoYXMlMjBUaXRsZSUyMENhc2UlMkMlMjBzdHlsZSUyMGl0JTIwYWNjb3JkaW5nbHkuJTIwJ0FiYyclMjBpcyUyMHRpdGxlJTIwY2FzZSUyMGFuZCUyMGV4YWN0bHklMjB0aXRsZSUyMGNhc2UlMjBidXQlMjAnQUJDJyUyMGlzJTIwb25seSUyMHRpdGxlJTIwY2FzZS4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjBDYXNlUGFyYW0uRVhBQ1RUSVRMRUNBU0UlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUyMCUyMk1pWGVEJTIwQ2FTZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlc2NyaXB0aW9uJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIySWYlMjB5b3VyJTIwbGFuZ3VhZ2UlMjBoYXMlMjBtaXhlZCUyMGNhc2UlMkMlMjBzdHlsZSUyMGl0JTIwYWNjb3JkaW5nbHklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjBDYXNlUGFyYW0uTUlYRURDQVNFJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjAlMjJSQW5kb01DYVNlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVzY3JpcHRpb24lM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJJZiUyMHlvdXIlMjBsYW5ndWFnZSUyMGhhcyUyMHJhbmRvbWNhc2UlMkMlMjBzdHlsZSUyMGl0JTIwYWNjb3JkaW5nbHklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjBDYXNlUGFyYW0uUkFORE9NQ0FTRSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0JTNBJTIwJTIyY2FtZWxDYXNlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVzY3JpcHRpb24lM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJSZW1vdmVzJTIwYWxsJTIwc3BhY2VzJTIwYW5kJTIwY2FwaXRhbGl6ZXMlMjBhbGwlMjB3b3JkcyUyMGFmdGVyJTIwdGhlJTIwZmlyc3QlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjBDYXNlUGFyYW0uQ0FNRUxDQVNFJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwZ2V0SW5mbygpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwaWQlMjAlMjJ0ZXh0JTIyJTIwd291bGQlMjBjb25mbGljdCUyMHdpdGglMjBTY3JhdGNoJTIwTGFiJ3MlMjBBbmltYXRlZCUyMFRleHQlMjAobGFiJTJGdGV4dC5qcyklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZCUzQSUyMCUyMnN0cmluZ3MlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBuYW1lJTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyVGV4dCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja3MlM0ElMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJsZXR0ZXJzX29mJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGV0dGVycyUyMCU1QkxFVFRFUjElNUQlMjB0byUyMCU1QkxFVFRFUjIlNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMRVRURVIxJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMDIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMRVRURVIyJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMDQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkclM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYXBwbGUlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJzcGxpdCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMml0ZW0lMjAlNUJJVEVNJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjBzcGxpdCUyMGJ5JTIwJTVCU1BMSVQlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwSVRFTSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAzJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmFwcGxlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1BMSVQlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIycCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmNvdW50JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUyMCUyMmNvdW50JTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMkNvdW50cyUyMGhvdyUyMG1hbnklMjB0aW1lJTIwJTVCU1VCU1RSSU5HJTVEJTIwYXBwZWFycyUyMGluJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNVQlNUUklORyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJwJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmFwcGxlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaW5kZXhvZiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjAlMjJpbmRleCUyMG9mJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzQSUyMCUyMlJlcG9ydHMlMjB3aGVyZSUyMCU1QlNVQlNUUklORyU1RCUyMGFwcGVhcnMlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVUJTVFJJTkclM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIycCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhcHBsZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnJlcGxhY2UlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJyZXBsYWNlJTIwJTVCU1VCU1RSSU5HJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjB3aXRoJTIwJTVCUkVQTEFDRSU1RCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVUJTVFJJTkclM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyd29ybGQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkclM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIySGVsbG8lMjB3b3JsZCElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBSRVBMQUNFJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmZlbGxvdyUyMFNjcmF0Y2hlcnMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJyZXBlYXQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJyZXBlYXQlMjAlNUJTVFJJTkclNUQlMjAlNUJSRVBFQVQlNUQlMjB0aW1lcyUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkclM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYXBwbGUlMjAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBSRVBFQVQlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwMyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnVuaWNvZGVvZiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnVuaWNvZGUlMjBvZiUyMCU1QlNUUklORyU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkclM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyQSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnVuaWNvZGVmcm9tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIydW5pY29kZSUyMCU1Qk5VTSU1RCUyMGFzJTIwbGV0dGVyJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjA2NSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnJlcGxhY2VSZWdleCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMnJlcGxhY2UlMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMHdpdGglMjAlNUJSRVBMQUNFJTVEJTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFJFR0VYJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMi4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBGTEFHUyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJnJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMkhlbGxvJTIwd29ybGQhJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwUkVQTEFDRSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIlMjQlMjYlMjQlMjYlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJtYXRjaFJlZ2V4JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMml0ZW0lMjAlNUJJVEVNJTVEJTIwb2YlMjAlNUJTVFJJTkclNUQlMjBtYXRjaGVkJTIwYnklMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMiUyRiU1QlJFR0VYJTVEJTJGJTIwaXMlMjBzdXBwb3NlZCUyMHRvJTIwbWF0Y2glMjB0aGUlMjBzeW50YXglMjB0aGF0JTIwc29tZSUyMGFjdHVhbCUyMHByb2dyYW1taW5nJTIwbGFuZ3VhZ2VzJTIwdXNlZCUyMGZvciUyMHJlZ3VsYXIlMjBleHByZXNzaW9ucy4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwSVRFTSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAxJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMkhlbGxvJTIwd29ybGQhJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwUkVHRVglM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyKC4pJTIwKC4lN0IyJTdEKSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEZMQUdTJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmclMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJtYXRjaFJlZ2V4SlNPTiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJtYXRjaGVzJTIwb2YlMjAlNUJTVFJJTkclNUQlMjB1c2luZyUyMHJlZ2V4JTIwJTJGJTVCUkVHRVglNUQlMkYlNUJGTEFHUyU1RCUyMGFzJTIwYXJyYXklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMiUyRiU1QlJFR0VYJTVEJTJGJTIwaXMlMjBzdXBwb3NlZCUyMHRvJTIwbWF0Y2glMjB0aGUlMjBzeW50YXglMjB0aGF0JTIwc29tZSUyMGFjdHVhbCUyMHByb2dyYW1taW5nJTIwbGFuZ3VhZ2VzJTIwdXNlZCUyMGZvciUyMHJlZ3VsYXIlMjBleHByZXNzaW9ucy4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMkhlbGxvJTIwd29ybGQhJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwUkVHRVglM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyKC4pJTIwKC4lN0IyJTdEKSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEZMQUdTJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmclMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0ZXN0UmVnZXglMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjAlMjIlNUJTVFJJTkclNUQlMjBtYXRjaGVzJTIwcmVnZXglMjAlMkYlNUJSRUdFWCU1RCUyRiU1QkZMQUdTJTVEJTNGJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVzY3JpcHRpb24lM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjIlMkYlNUJSRUdFWCU1RCUyRiUyMGlzJTIwc3VwcG9zZWQlMjB0byUyMG1hdGNoJTIwdGhlJTIwc3ludGF4JTIwdGhhdCUyMHNvbWUlMjBhY3R1YWwlMjBwcm9ncmFtbWluZyUyMGxhbmd1YWdlcyUyMHVzZWQlMjBmb3IlMjByZWd1bGFyJTIwZXhwcmVzc2lvbnMuJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJIZWxsbyUyMHdvcmxkISUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFJFR0VYJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmhlbGxvJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwRkxBR1MlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyaSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmNvdW50UmVnZXglMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0JTNBJTIwJTIyY291bnQlMjByZWdleCUyMCUyRiU1QlJFR0VYJTVEJTJGJTVCRkxBR1MlNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlc2NyaXB0aW9uJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyJTJGJTVCUkVHRVglNUQlMkYlMjBpcyUyMHN1cHBvc2VkJTIwdG8lMjBtYXRjaCUyMHRoZSUyMHN5bnRheCUyMHRoYXQlMjBzb21lJTIwYWN0dWFsJTIwcHJvZ3JhbW1pbmclMjBsYW5ndWFnZXMlMjB1c2VkJTIwZm9yJTIwcmVndWxhciUyMGV4cHJlc3Npb25zLiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkclM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIySGVsbG8lMjB3b3JsZCElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBSRUdFWCUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIlNUJBRUlPVSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEZMQUdTJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJpZGVudGljYWwlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmlzJTIwJTVCT1BFUkFORDElNUQlMjBpZGVudGljYWwlMjB0byUyMCU1Qk9QRVJBTkQyJTVEJTNGJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9QRVJBTkQxJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMkElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPUEVSQU5EMiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaXNDYXNlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0JTNBJTIwJTIyaXMlMjAlNUJTVFJJTkclNUQlMjAlNUJURVhUQ0FTRSU1RCUzRiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlc2NyaXB0aW9uJTNBJTIwJTIyRXhhbXBsZSUyMGJsb2NrJTIwY29udGV4dCUzQSUyMCUzQ2lzJTIwJTVCaGVsbG8lNUQlMjAlNUJsb3dlcmNhc2UlNUQlMjAlM0YlM0UlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmFwcGxlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVEVYVENBU0UlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMnRleHRDYXNlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwQ2FzZVBhcmFtLkxPV0VSQ0FTRSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnRvQ2FzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjAlMjJjb252ZXJ0JTIwJTVCU1RSSU5HJTVEJTIwdG8lMjAlNUJURVhUQ0FTRSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlc2NyaXB0aW9uJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyRXhhbXBsZSUyMGJsb2NrJTIwY29udGV4dCUzQSUyMChjb252ZXJ0JTIwJTVCSEVMTE8lNUQlMjB0byUyMCU1Qmxvd2VyY2FzZSU1RCklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmFwcGxlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVEVYVENBU0UlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMnRleHRDYXNlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwQ2FzZVBhcmFtLlVQUEVSQ0FTRSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnBvc1dpdGglMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjAlMjIlNUJTVFJJTkclNUQlMjAlNUJQT1NJVElPTiU1RCUyMHdpdGglMjAlNUJTVUJTVFJJTkclNUQlM0YlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMiU1QlBPU0lUSU9OJTVEJTIwaXMlMjBhJTIwZHJvcGRvd24lMjB3aXRoJTIwJ3N0YXJ0cyclMjBhbmQlMjAnZW5kcycuJTIwVGhlJTIwYmxvY2slMjB0aGVuJTIwdGFrZXMlMjB0aGUlMjBmb3JtJTIwJyU1QlNUUklORyU1RCUyMHN0YXJ0cyUyMHdpdGglMjAlNUJTVUJTVFJJTkclNUQlM0YnJTIwb3IlMjAnJTVCU1RSSU5HJTVEJTIwZW5kcyUyMHdpdGglMjAlNUJTVUJTVFJJTkclNUQlM0YnJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJ0dXJib3dhcnAlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBQT1NJVElPTiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIycG9zaXRpb25zJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1VCU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMnR1cmJvJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycmV2ZXJzZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJldmVyc2UlMjB0ZXh0JTIwJTVCU1RSSU5HJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJhcHBsZSUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0cmltJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIydHJpbSUyMHdoaXRlc3BhY2UlMjAlNUJTVFJJTkclNUQlMjBmcm9tJTIwJTVCTUVUSE9EJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlNjAlMjAlMjAlMjAlMjAlMjQlN0JTY3JhdGNoLnRyYW5zbGF0ZSglMjJhcHBsZSUyMiklN0QlMjAlMjAlMjAlMjAlNjAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBNRVRIT0QlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMnRyaW1NZXRob2QlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHRDYXNlJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYWNjZXB0UmVwb3J0ZXJzJTNBJTIwdHJ1ZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGl0ZW1zJTNBJTIwdGhpcy5faW5pdENhc2VNZW51KCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBwb3NpdGlvbnMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhY2NlcHRSZXBvcnRlcnMlM0ElMjB0cnVlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaXRlbXMlM0ElMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyc3RhcnRzJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhbHVlJTNBJTIwJTIyc3RhcnRzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmVuZHMlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjJlbmRzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHJpbU1ldGhvZCUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFjY2VwdFJlcG9ydGVycyUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpdGVtcyUzQSUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJib3RoJTIwc2lkZXMlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjJib3RoJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnRoZSUyMGVuZCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YWx1ZSUzQSUyMCUyMmVuZCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJ0aGUlMjBzdGFydCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YWx1ZSUzQSUyMCUyMnN0YXJ0JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwaWRlbnRpY2FsKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMFB1cnBvc2VmdWxseSUyMG5vJTIwY2FzdGluZyUyQyUyMGJlY2F1c2UlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjB0eXBlcyUyMEFSRSUyMGRpZmZlcmVudGlhdGVkJTIwaW4lMjB0aGlzJTIwYmxvY2slMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBhcmdzLk9QRVJBTkQxJTIwJTNEJTNEJTNEJTIwYXJncy5PUEVSQU5EMiUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHVuaWNvZGVvZihhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGNoYXJzJTIwJTNEJTIwQXJyYXkuZnJvbShTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5TVFJJTkcpKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGNoYXJzLm1hcCgoY2hhciklMjAlM0QlM0UlMjBjaGFyLmNoYXJDb2RlQXQoMCkpLmpvaW4oJTIyJTIwJTIyKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHVuaWNvZGVmcm9tKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMFN0cmluZy5mcm9tQ2hhckNvZGUoTnVtYmVyKGFyZ3MuTlVNKSUyMCU3QyU3QyUyMDApJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwbGV0dGVyc19vZihhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHN0cmluZyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxldHRlcjElMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9OdW1iZXIoYXJncy5MRVRURVIxKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGV0dGVyMiUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b051bWJlcihhcmdzLkxFVFRFUjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwc3RyaW5nLnN1YnN0cmluZyhsZXR0ZXIxJTIwLSUyMDElMkMlMjBsZXR0ZXIyKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMF9jYXNlSW5zZW5zaXRpdmVSZWdleChzdHIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwbmV3JTIwUmVnRXhwKHN0ci5yZXBsYWNlQWxsKCUyRiU1QiU1RWEtekEtWjAtOSU1RCUyRmclMkMlMjAlMjIlNUMlNUMlMjQlMjYlMjIpJTJDJTIwJTIyZ2klMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwc3BsaXQoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzdHJpbmclMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5TVFJJTkcpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzcGxpdCUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNQTElUKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwaXRlbSUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b051bWJlcihhcmdzLklURU0pJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwQ2FjaGUlMjB0aGUlMjBsYXN0JTIwc3BsaXQlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAhKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNwbGl0Q2FjaGUlMjAlMjYlMjYlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBzcGxpdENhY2hlLnN0cmluZyUyMCUzRCUzRCUzRCUyMHN0cmluZyUyMCUyNiUyNiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNwbGl0Q2FjaGUuc3BsaXQlMjAlM0QlM0QlM0QlMjBzcGxpdCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMEElMjAlMjAlMjAlMjAlMjAlMjApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZWdleCUyMCUzRCUyMHRoaXMuX2Nhc2VJbnNlbnNpdGl2ZVJlZ2V4KHNwbGl0KSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNwbGl0Q2FjaGUlMjAlM0QlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBzdHJpbmclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBzcGxpdCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyciUzQSUyMHN0cmluZy5zcGxpdChyZWdleCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBzcGxpdENhY2hlLmFyciU1Qml0ZW0lMjAtJTIwMSU1RCUyMCU3QyU3QyUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGNvdW50KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMEZpbGwlMjBjYWNoZSUwQSUyMCUyMCUyMCUyMCUyMCUyMHRoaXMuc3BsaXQoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1BMSVQlM0ElMjBhcmdzLlNVQlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMGFyZ3MuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwSVRFTSUzQSUyMDAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHNwbGl0Q2FjaGUuYXJyLmxlbmd0aCUyMC0lMjAxJTIwJTdDJTdDJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJlcGxhY2UoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzdHJpbmclMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5TVFJJTkcpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzdWJzdHJpbmclMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5TVUJTVFJJTkcpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZXBsYWNlJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuUkVQTEFDRSklM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHJlZ2V4JTIwJTNEJTIwdGhpcy5fY2FzZUluc2Vuc2l0aXZlUmVnZXgoc3Vic3RyaW5nKSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHN0cmluZy5yZXBsYWNlKHJlZ2V4JTJDJTIwcmVwbGFjZSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBpbmRleG9mKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMC50b0xvd2VyQ2FzZSgpJTIwZm9yJTIwY2FzZSUyMGluc2Vuc2l0aXZpdHklMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHN0cmluZyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORykudG9Mb3dlckNhc2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc3Vic3RyaW5nJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuU1VCU1RSSU5HKS50b0xvd2VyQ2FzZSgpJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwU2luY2UlMjBib3RoJTIwYXJndW1lbnRzJTIwYXJlJTIwY2FzdGVkJTIwdG8lMjBzdHJpbmdzJTIwYmVmb3JlaGFuZCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMHdlJTIwZG9uJ3QlMjBoYXZlJTIwdG8lMjB3b3JyeSUyMGFib3V0JTIwdHlwZSUyMGRpZmZlcmVuY2VzJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwbGlrZSUyMGluJTIwdGhlJTIwaXRlbSUyMG51bWJlciUyMG9mJTIwaW4lMjBsaXN0JTIwYmxvY2slMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGZvdW5kJTIwJTNEJTIwc3RyaW5nLmluZGV4T2Yoc3Vic3RyaW5nKSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMGluZGV4T2YlMjByZXR1cm5zJTIwLTElMjB3aGVuJTIwbm8lMjBtYXRjaGVzJTIwYXJlJTIwZm91bmQlMkMlMjB3ZSUyMGNhbiUyMGp1c3QlMjAlMkIxJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwZm91bmQlMjAlMkIlMjAxJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwcmVwZWF0KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc3RyaW5nJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwcmVwZWF0JTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvTnVtYmVyKGFyZ3MuUkVQRUFUKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHN0cmluZy5yZXBlYXQocmVwZWF0KSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJlcGxhY2VSZWdleChhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjB0cnklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHN0cmluZyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHJlcGxhY2VyJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuUkVQTEFDRSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHJlZ2V4JTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuUkVHRVgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBmbGFncyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkZMQUdTKSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHN0cmluZy5yZXBsYWNlKG5ldyUyMFJlZ0V4cChyZWdleCUyQyUyMGZsYWdzKSUyQyUyMHJlcGxhY2VyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGNhdGNoJTIwKGUpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc29sZS5lcnJvcihlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMG1hdGNoUmVnZXgoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwdHJ5JTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzdHJpbmclMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5TVFJJTkcpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB1bmNsZWFuUmVnZXglMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5SRUdFWCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGZsYWdzJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuRkxBR1MpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBpdGVtJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvTnVtYmVyKGFyZ3MuSVRFTSklM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBDYWNoZSUyMHRoZSUyMGxhc3QlMjBtYXRjaGVkJTIwc3RyaW5nJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwISglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtYXRjaENhY2hlJTIwJTI2JTI2JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWF0Y2hDYWNoZS5zdHJpbmclMjAlM0QlM0QlM0QlMjBzdHJpbmclMjAlMjYlMjYlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtYXRjaENhY2hlLnJlZ2V4JTIwJTNEJTNEJTNEJTIwdW5jbGVhblJlZ2V4JTIwJTI2JTI2JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWF0Y2hDYWNoZS5mbGFncyUyMCUzRCUzRCUzRCUyMGZsYWdzJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG5ld0ZsYWdzJTIwJTNEJTIwZmxhZ3MuaW5jbHVkZXMoJTIyZyUyMiklMjAlM0YlMjBmbGFncyUyMCUzQSUyMGZsYWdzJTIwJTJCJTIwJTIyZyUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwcmVnZXglMjAlM0QlMjBuZXclMjBSZWdFeHAodW5jbGVhblJlZ2V4JTJDJTIwbmV3RmxhZ3MpJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWF0Y2hDYWNoZSUyMCUzRCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHN0cmluZyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJlZ2V4JTNBJTIwdW5jbGVhblJlZ2V4JTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZmxhZ3MlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcnIlM0ElMjBzdHJpbmcubWF0Y2gocmVnZXgpJTIwJTdDJTdDJTIwJTVCJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwbWF0Y2hDYWNoZS5hcnIlNUJpdGVtJTIwLSUyMDElNUQlMjAlN0MlN0MlMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBjYXRjaCUyMChlKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnNvbGUuZXJyb3IoZSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBtYXRjaFJlZ2V4SlNPTihhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBtYXRjaFJlZ2V4JTIwYnV0JTIwaXQlMjByZXR1cm5zJTIwYW4lMjBhcnJheSUwQSUyMCUyMCUyMCUyMCUyMCUyMHRyeSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc3RyaW5nJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdW5jbGVhblJlZ2V4JTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuUkVHRVgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBmbGFncyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkZMQUdTKSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMENhY2hlJTIwdGhlJTIwbGFzdCUyMG1hdGNoZWQlMjBzdHJpbmclMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAhKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1hdGNoQ2FjaGUlMjAlMjYlMjYlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtYXRjaENhY2hlLnN0cmluZyUyMCUzRCUzRCUzRCUyMHN0cmluZyUyMCUyNiUyNiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1hdGNoQ2FjaGUucmVnZXglMjAlM0QlM0QlM0QlMjB1bmNsZWFuUmVnZXglMjAlMjYlMjYlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtYXRjaENhY2hlLmZsYWdzJTIwJTNEJTNEJTNEJTIwZmxhZ3MlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbmV3RmxhZ3MlMjAlM0QlMjBmbGFncy5pbmNsdWRlcyglMjJnJTIyKSUyMCUzRiUyMGZsYWdzJTIwJTNBJTIwZmxhZ3MlMjAlMkIlMjAlMjJnJTIyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZWdleCUyMCUzRCUyMG5ldyUyMFJlZ0V4cCh1bmNsZWFuUmVnZXglMkMlMjBuZXdGbGFncyklM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtYXRjaENhY2hlJTIwJTNEJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc3RyaW5nJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmVnZXglM0ElMjB1bmNsZWFuUmVnZXglMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmbGFncyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyciUzQSUyMHN0cmluZy5tYXRjaChyZWdleCklMjAlN0MlN0MlMjAlNUIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBKU09OLnN0cmluZ2lmeShtYXRjaENhY2hlLmFyciklMjAlN0MlN0MlMjAlMjIlNUIlNUQlMjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBjYXRjaCUyMChlKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnNvbGUuZXJyb3IoZSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBjb3VudFJlZ2V4KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMEZpbGwlMjBjYWNoZSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMChJVEVNJTIwaXMlMjBjYXN0ZWQlMjBpbnRvJTIwMCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMGJ1dCUyMHdlJTIwZG9uJ3QlMjBjYXJlJTIwYWJvdXQlMjB0aGUlMjByZXR1cm4lMjB2YWx1ZSklMEElMjAlMjAlMjAlMjAlMjAlMjB0aGlzLm1hdGNoUmVnZXgoYXJncyUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwbWF0Y2hDYWNoZS5hcnIubGVuZ3RoJTIwJTdDJTdDJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHRlc3RSZWdleChhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjB0cnklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHN0cmluZyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHJlZ2V4JTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuUkVHRVgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBmbGFncyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkZMQUdTKSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMG5ldyUyMFJlZ0V4cChyZWdleCUyQyUyMGZsYWdzKS50ZXN0KHN0cmluZyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBjYXRjaCUyMChlKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnNvbGUuZXJyb3IoZSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGlzQ2FzZShhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHN0cmluZyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRleHRDYXNlJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuVEVYVENBU0UpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwc3dpdGNoJTIwKHRleHRDYXNlKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjBDYXNlUGFyYW0uTE9XRVJDQVNFJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwc3RyaW5nLnRvTG93ZXJDYXNlKCklMjAlM0QlM0QlM0QlMjBzdHJpbmclM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwQ2FzZVBhcmFtLlVQUEVSQ0FTRSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHN0cmluZy50b1VwcGVyQ2FzZSgpJTIwJTNEJTNEJTNEJTIwc3RyaW5nJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMENhc2VQYXJhbS5NSVhFRENBU0UlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAhKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHN0cmluZy50b1VwcGVyQ2FzZSgpJTIwJTNEJTNEJTNEJTIwc3RyaW5nJTIwJTdDJTdDJTIwc3RyaW5nLnRvTG93ZXJDYXNlKCklMjAlM0QlM0QlM0QlMjBzdHJpbmclMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMENhc2VQYXJhbS5USVRMRUNBU0UlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBzdHJpbmcuc3BsaXQoJTJGJTVDYiUyRmcpLmV2ZXJ5KCh3b3JkKSUyMCUzRCUzRSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCF3b3JkKSUyMHJldHVybiUyMHRydWUlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRpdGxlQ2FzZWQlMjAlM0QlMjB3b3JkJTVCMCU1RC50b1VwcGVyQ2FzZSgpJTIwJTJCJTIwd29yZC5zdWJzdHJpbmcoMSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB3b3JkJTIwJTNEJTNEJTNEJTIwdGl0bGVDYXNlZCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwQ2FzZVBhcmFtLkVYQUNUVElUTEVDQVNFJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwc3RyaW5nLnNwbGl0KCUyRiU1Q2IlMkZnKS5ldmVyeSgod29yZCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghd29yZCklMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0aXRsZUNhc2VkJTIwJTNEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwd29yZCU1QjAlNUQudG9VcHBlckNhc2UoKSUyMCUyQiUyMHdvcmQuc3Vic3RyaW5nKDEpLnRvTG93ZXJDYXNlKCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB3b3JkJTIwJTNEJTNEJTNEJTIwdGl0bGVDYXNlZCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwQ2FzZVBhcmFtLkNBTUVMQ0FTRSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCUyRiU1RSU1QiU1RUEtWiU1Q3MlNUQlNUIlNUUlNUNzJTVEKiUyNCUyRi50ZXN0KHN0cmluZyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwQ2FzZVBhcmFtLlJBTkRPTUNBU0UlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMENhc2VQYXJhbS5TRU5URU5DRUNBU0UlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlMkYlNUUlNUJBLVolNUQlNUIlNUUlM0YuISU1RCooJTNGJTNBJTVCJTNGLiElNUQlNUNzJTJCJTVCQS1aJTVEJTVCJTVFJTNGLiElNUQqKSolMjQlMkYudGVzdChzdHJpbmcpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGZhbHNlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwdG9DYXNlKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc3RyaW5nJTIwJTNEJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdGV4dENhc2UlMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5URVhUQ0FTRSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsZXQlMjB3b3JraW5nVGV4dCUyMCUzRCUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGxldCUyMHNlbnRlbmNlQ2FwaXRhbEZsYWclMjAlM0QlMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHN3aXRjaCUyMCh0ZXh0Q2FzZSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwQ2FzZVBhcmFtLkxPV0VSQ0FTRSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHN0cmluZy50b0xvd2VyQ2FzZSgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMENhc2VQYXJhbS5VUFBFUkNBU0UlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBzdHJpbmcudG9VcHBlckNhc2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjBDYXNlUGFyYW0uTUlYRURDQVNFJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwQXJyYXkuZnJvbShzdHJpbmcpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLm1hcCgoY2hhciUyQyUyMGluZGV4KSUyMCUzRCUzRSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGluZGV4JTIwJTI1JTIwMiUyMCUzRCUzRCUzRCUyMDAlMjAlM0YlMjBjaGFyLnRvVXBwZXJDYXNlKCklMjAlM0ElMjBjaGFyLnRvTG93ZXJDYXNlKCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLmpvaW4oJTIyJTIyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjBDYXNlUGFyYW0uVElUTEVDQVNFJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwc3RyaW5nJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLnNwbGl0KCUyRiU1Q2IlMkZnKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC5tYXAoKHdvcmQpJTIwJTNEJTNFJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXdvcmQpJTIwcmV0dXJuJTIwJTIyJTIyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwd29yZCU1QjAlNUQudG9VcHBlckNhc2UoKSUyMCUyQiUyMHdvcmQuc3Vic3RyaW5nKDEpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC5qb2luKCUyMiUyMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwQ2FzZVBhcmFtLkVYQUNUVElUTEVDQVNFJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwc3RyaW5nJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLnNwbGl0KCUyRiU1Q2IlMkZnKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC5tYXAoKHdvcmQpJTIwJTNEJTNFJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXdvcmQpJTIwcmV0dXJuJTIwJTIyJTIyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwd29yZCU1QjAlNUQudG9VcHBlckNhc2UoKSUyMCUyQiUyMHdvcmQuc3Vic3RyaW5nKDEpLnRvTG93ZXJDYXNlKCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLmpvaW4oJTIyJTIyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjBDYXNlUGFyYW0uU0VOVEVOQ0VDQVNFJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZm9yJTIwKGxldCUyMGklMjAlM0QlMjAwJTNCJTIwaSUyMCUzQyUyMHN0cmluZy5sZW5ndGglM0IlMjBpJTJCJTJCKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiU1RSU1Q3MqJTI0JTJGLnRlc3Qoc3RyaW5nJTVCaSUyMC0lMjAxJTVEJTIwJTNGJTNGJTIwJTIyJTIwJTIyKSUyMCUyNiUyNiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCFzZW50ZW5jZUNhcGl0YWxGbGFnJTIwJTI2JTI2JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwc3RyaW5nJTVCaSU1RC50b1VwcGVyQ2FzZSgpJTIwISUzRCUyMHN0cmluZyU1QmklNUQudG9Mb3dlckNhc2UoKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB3b3JraW5nVGV4dCUyMCUyQiUzRCUyMHN0cmluZyU1QmklNUQudG9VcHBlckNhc2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNlbnRlbmNlQ2FwaXRhbEZsYWclMjAlM0QlMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTIwZWxzZSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHN0cmluZyU1QmklNUQlMjAlM0QlM0QlMjAlMjIuJTIyJTIwJTdDJTdDJTIwc3RyaW5nJTVCaSU1RCUyMCUzRCUzRCUyMCUyMiElMjIlMjAlN0MlN0MlMjBzdHJpbmclNUJpJTVEJTIwJTNEJTNEJTIwJTIyJTNGJTIyKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNlbnRlbmNlQ2FwaXRhbEZsYWclMjAlM0QlMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHdvcmtpbmdUZXh0JTIwJTJCJTNEJTIwc3RyaW5nJTVCaSU1RC50b0xvd2VyQ2FzZSgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwd29ya2luZ1RleHQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwQ2FzZVBhcmFtLlJBTkRPTUNBU0UlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmb3IlMjAobGV0JTIwaSUyMCUzRCUyMDAlM0IlMjBpJTIwJTNDJTIwc3RyaW5nLmxlbmd0aCUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoTWF0aC5yYW5kb20oKSUyMCUzRSUyMDAuNSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB3b3JraW5nVGV4dCUyMCUyQiUzRCUyMHN0cmluZyU1QmklNUQudG9VcHBlckNhc2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGVsc2UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB3b3JraW5nVGV4dCUyMCUyQiUzRCUyMHN0cmluZyU1QmklNUQudG9Mb3dlckNhc2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHdvcmtpbmdUZXh0JTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMENhc2VQYXJhbS5DQU1FTENBU0UlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmb3IlMjAobGV0JTIwaSUyMCUzRCUyMDAlM0IlMjBpJTIwJTNDJTIwc3RyaW5nLmxlbmd0aCUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoJTJGJTVFJTVDcyolMjQlMkYudGVzdChzdHJpbmclNUJpJTIwLSUyMDElNUQlMjAlM0YlM0YlMjAlMjJ4JTIyKSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB3b3JraW5nVGV4dCUyMCUyQiUzRCUyMHN0cmluZyU1QmklNUQudG9VcHBlckNhc2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGVsc2UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB3b3JraW5nVGV4dCUyMCUyQiUzRCUyMHN0cmluZyU1QmklNUQudG9Mb3dlckNhc2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHdvcmtpbmdUZXh0LnJlcGxhY2UoJTJGJTVDcyUyRmclMkMlMjAlMjIlMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHN0cmluZyUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMHBvc1dpdGgoYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMFNUUklORyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMFNVQlNUUklORyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNVQlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5QT1NJVElPTiklMjAlM0QlM0QlM0QlMjAlMjJzdGFydHMlMjIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwU1RSSU5HLnN0YXJ0c1dpdGgoU1VCU1RSSU5HKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMFNUUklORy5lbmRzV2l0aChTVUJTVFJJTkcpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwcmV2ZXJzZShhcmdzKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMEFycmF5LmZyb20oU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HKSkucmV2ZXJzZSgpLmpvaW4oJTIyJTIyKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMHRyaW0oYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMFNUUklORyUyMCUzRCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBzd2l0Y2glMjAoU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuTUVUSE9EKSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIyc3RhcnQlMjIlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBTVFJJTkcudHJpbVN0YXJ0KCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIyZW5kJTIyJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwU1RSSU5HLnRyaW1FbmQoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJib3RoJTIyJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMFNUUklORy50cmltKCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlN0QlMEElMEElMjAlMjBTY3JhdGNoLmV4dGVuc2lvbnMucmVnaXN0ZXIobmV3JTIwU3RyaW5nc0V4dCgpKSUzQiUwQSU3RCkoU2NyYXRjaCklM0IlMEElMjAlN0QpKFNjcmF0Y2gpJTNCIiwiZGF0YTp0ZXh0L2phdmFzY3JpcHQ7LChmdW5jdGlvbihTY3JhdGNoKSUyMCU3QiUyMCUyRiUyRiUyME5hbWUlM0ElMjBMaXN0JTIwVG9vbHMlMEElMkYlMkYlMjBJRCUzQSUyMGxtc0xpc3RUb29scyUwQSUyRiUyRiUyMERlc2NyaXB0aW9uJTNBJTIwQW4lMjBhc3NvcnRtZW50JTIwb2YlMjBuZXclMjB3YXlzJTIwdG8lMjBpbnRlcmFjdCUyMHdpdGglMjBsaXN0cy4lMEElMkYlMkYlMjBCeSUzQSUyMExpbHlNYWtlc1RoaW5ncyUyMCUzQ2h0dHBzJTNBJTJGJTJGc2NyYXRjaC5taXQuZWR1JTJGdXNlcnMlMkZMaWx5TWFrZXNUaGluZ3MlMkYlM0UlMEElMkYlMkYlMjBMaWNlbnNlJTNBJTIwTUlUJTIwQU5EJTIwTEdQTC0zLjAlMEElMEElMkYlMkYlMjAoSXQncyUyMGdldHRpbmclMjBoYXJkZXIlMjBhbmQlMjBoYXJkZXIlMjB0byUyMHRoaW5rJTIwb2YlMjBvcmlnaW5hbCUyMGRlc2NyaXB0aW9ucyUyMG5vdyklMEElMEElMkYqJTIwZ2VuZXJhdGVkJTIwbDEwbiUyMGNvZGUlMjAqJTJGU2NyYXRjaC50cmFuc2xhdGUuc2V0dXAoJTdCJTIyZGUlMjIlM0ElN0IlMjJfTGlzdCUyMFRvb2xzJTIyJTNBJTIyTGlzdGVud2Vya3pldWdlJTIyJTdEJTJDJTIyZmklMjIlM0ElN0IlMjJfJTIzJTIwb2YlMjB0aW1lcyUyMCU1QklURU0lNUQlMjBhcHBlYXJzJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJTVCSVRFTSU1RCUyMC1hcnZvaXN0ZW4lMjBrb2h0ZWlkZW4lMjBtJUMzJUE0JUMzJUE0ciVDMyVBNCUyMGxpc3Rhc3NhJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9MaXN0JTIwVG9vbHMlMjIlM0ElMjJMaXN0YXR5JUMzJUI2a2FsdXQlMjIlMkMlMjJfJTVCTElTVCU1RCUyMGFzJTIwYXJyYXklMjIlM0ElMjIlNUJMSVNUJTVEJTIwdGF1bHVra29uYSUyMiUyQyUyMl8lNUJMSVNUJTVEJTIwaXMlMjBlbXB0eSUzRiUyMiUzQSUyMm9ua28lMjAlNUJMSVNUJTVEJTIwdHloaiVDMyVBNCUzRiUyMiUyQyUyMl9hc2NlbmRpbmclMjIlM0ElMjJub3VzZXZhJTIyJTJDJTIyX2NvbmNhdGVuYXRlJTIwJTVCTElTVDElNUQlMjBvbnRvJTIwJTVCTElTVDIlNUQlMjIlM0ElMjJsaWl0JUMzJUE0JTIwJTVCTElTVDElNUQlMjBsaXN0YWFuJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfZGVsZXRlJTIwYWxsJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMnBvaXN0YSUyMGpva2FpbmVuJTIwJTVCSVRFTSU1RCUyMGxpc3Rhc3RhJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9kZWxldGUlMjBpdGVtcyUyMCU1Qk5VTTElNUQlMjB0byUyMCU1Qk5VTTIlNUQlMjBvZiUyMCU1QkxJU1QlNUQlMjIlM0ElMjJwb2lzdGElMjBrb2h0ZWV0JTIwJTVCTlVNMSU1RCUyMCVFMiU4MCU5MyUyMCU1Qk5VTTIlNUQlMjBsaXN0YXN0YSUyMCU1QkxJU1QlNUQlMjIlMkMlMjJfZGVzY2VuZGluZyUyMiUzQSUyMmxhc2tldmElMjIlMkMlMjJfZmlyc3QlMjIlM0ElMjJlbnNpbW0lQzMlQTRpbmVuJTIyJTJDJTIyX2ZvciUyMGVhY2glMjBpdGVtJTIwJTIzJTIwJTVCVkFSJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIydG9pc3RhJTIwbGlzdGFuJTIwJTVCTElTVCU1RCUyMHBpdHV1ZGVuJTIwdmVycmFuJTIwamElMjBsYXNrZSUyMG11dXR0dWphbGxhJTIwJTVCVkFSJTVEJTIyJTJDJTIyX2ZvciUyMGVhY2glMjBpdGVtJTIwdmFsdWUlMjAlNUJWQVIlNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjJ0b2lzdGElMjBsaXN0YW4lMjAlNUJMSVNUJTVEJTIwJTVCVkFSJTVEJTIwLWFydm9pc3RlbiUyMGtvaHRlaWRlbiUyMG0lQzMlQTQlQzMlQTRyJUMzJUE0biUyMHZlcnJhbiUyMiUyQyUyMl9pbmRleCUyMCUyMyUyMCU1QklOREVYJTVEJTIwb2YlMjBpdGVtJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiU1QklOREVYJTVELiUyMCU1QklURU0lNUQlMjAtYXJ2b2luZW4lMjBrb2hkZSUyMGxpc3Rhc3NhJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9pdGVtJTIwJTVCTlVNJTVEJTIwZXhpc3RzJTIwaW4lMjAlNUJMSVNUJTVEJTNGJTIyJTNBJTIyb25rbyUyMGxpc3Rhc3NhJTIwJTVCTElTVCU1RCUyMGtvaGRlJTIwJTVCTlVNJTVEJTNGJTIyJTJDJTIyX2xhc3QlMjIlM0ElMjJ2aWltZWluZW4lMjIlMkMlMjJfbGlzdCUyMCU1QkxJU1QlNUQlMjBqb2luZWQlMjBieSUyMCU1QlNUUklORyU1RCUyMiUzQSUyMmxpc3RhJTIwJTVCTElTVCU1RCUyMGVyb3RldHR1bmElMjBtZXJraWxsJUMzJUE0JTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX29yZGVyJTIwb2YlMjAlNUJMSVNUJTVEJTIwaXMlMjAlNUJPUkRFUiU1RCUzRiUyMiUzQSUyMm9ua28lMjBsaXN0YW4lMjAlNUJMSVNUJTVEJTIwaiVDMyVBNHJqZXN0eXMlMjAlNUJPUkRFUiU1RCUzRiUyMiUyQyUyMl9yYW5kb20lMjIlM0ElMjJzYXR1bm5haW5lbiUyMiUyQyUyMl9yYW5kb21pemVkJTIyJTNBJTIyc2F0dW5uYWluZW4lMjIlMkMlMjJfcmVwZWF0JTIwJTVCTElTVDElNUQlMjAlNUJOVU0lNUQlMjB0aW1lcyUyMGluJTIwJTVCTElTVDIlNUQlMjIlM0ElMjJ0b2lzdGElMjAlNUJMSVNUMSU1RCUyMCU1Qk5VTSU1RCUyMGtlcnRhYSUyMGxpc3Rhc3NhJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfcmVwbGFjZSUyMGFsbCUyMCU1QklURU0xJTVEJTIwd2l0aCUyMCU1QklURU0yJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIya29ydmFhJTIwam9rYWluZW4lMjAlNUJJVEVNMSU1RCUyMGxpc3Rhc3NhJTIwJTVCTElTVCU1RCUyMGFydm9sbGElMjAlNUJJVEVNMiU1RCUyMiUyQyUyMl9yZXZlcnNlZCUyMiUzQSUyMmslQzMlQTQlQzMlQTRudGVpbmVuJTIyJTJDJTIyX3NldCUyMCU1QkxJU1QlNUQlMjB0byUyMGFycmF5JTIwJTVCQVJSQVklNUQlMjIlM0ElMjJhc2V0YSUyMGxpc3RhbiUyMCU1QkxJU1QlNUQlMjBzaXMlQzMlQTRsbCVDMyVCNmtzaSUyMHRhdWx1a2tvJTIwJTVCQVJSQVklNUQlMjAlMjIlMkMlMjJfc2V0JTIwaXRlbXMlMjBvZiUyMCU1QkxJU1QxJTVEJTIwdG8lMjAlNUJMSVNUMiU1RCUyMiUzQSUyMmFzZXRhJTIwbGlzdGFuJTIwJTVCTElTVDElNUQlMjBrb2h0ZWlrc2klMjAlNUJMSVNUMiU1RCUyMiUyQyUyMl9zZXQlMjBvcmRlciUyMG9mJTIwJTVCTElTVCU1RCUyMHRvJTIwJTVCT1JERVIlNUQlMjIlM0ElMjJhc2V0YSUyMGxpc3RhbiUyMCU1QkxJU1QlNUQlMjBqJUMzJUE0cmplc3R5a3Nla3NpJTIwJTVCT1JERVIlNUQlMjIlN0QlMkMlMjJpdCUyMiUzQSU3QiUyMl8lMjMlMjBvZiUyMHRpbWVzJTIwJTVCSVRFTSU1RCUyMGFwcGVhcnMlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjJudW1lcm8lMjBkaSUyMHZvbHRlJTIwY2hlJTIwJTVCSVRFTSU1RCUyMGFwcGFyZSUyMGluJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9MaXN0JTIwVG9vbHMlMjIlM0ElMjJTdHJ1bWVudGklMjBBdmFuemF0aSUyMHBlciUyMExpc3RlJTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBhcyUyMGFycmF5JTIyJTNBJTIyJTVCTElTVCU1RCUyMGNvbWUlMjBlbGVuY28lMjIlMkMlMjJfJTVCTElTVCU1RCUyMGlzJTIwZW1wdHklM0YlMjIlM0ElMjIlNUJMSVNUJTVEJTIwJUMzJUE4JTIwdnVvdGElMjIlMkMlMjJfYXNjZW5kaW5nJTIyJTNBJTIyYXNjZW5kZW50ZSUyMiUyQyUyMl9jb25jYXRlbmF0ZSUyMCU1QkxJU1QxJTVEJTIwb250byUyMCU1QkxJU1QyJTVEJTIyJTNBJTIyY29uY2F0ZW5hJTIwJTVCTElTVDElNUQlMjBhJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfZGVsZXRlJTIwYWxsJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMnJpbXVvdmklMjB0dXR0aSUyMGdsaSUyMGVsZW1lbnRpJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9kZWxldGUlMjBpdGVtcyUyMCU1Qk5VTTElNUQlMjB0byUyMCU1Qk5VTTIlNUQlMjBvZiUyMCU1QkxJU1QlNUQlMjIlM0ElMjJyaW11b3ZpJTIwZWxlbWVudGklMjBkYSUyMCU1Qk5VTTElNUQlMjBhJTIwJTVCTlVNMiU1RCUyMGRpJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9kZXNjZW5kaW5nJTIyJTNBJTIyZGlzY2VuZGVudGUlMjIlMkMlMjJfZmlyc3QlMjIlM0ElMjJwcmltbyUyMiUyQyUyMl9mb3IlMjBlYWNoJTIwaXRlbSUyMCUyMyUyMCU1QlZBUiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMnBlciUyMGNpYXNjdW5hJTIwcG9zaXppb25lJTIwZGklMjAlNUJMSVNUJTVEJTIwaW4lMjAlNUJWQVIlNUQlMjIlMkMlMjJfZm9yJTIwZWFjaCUyMGl0ZW0lMjB2YWx1ZSUyMCU1QlZBUiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMnBlciUyMGNpYXNjdW4lMjB2YWxvcmUlMjBkZWxsYSUyMHZhcmlhYmlsZSUyMCU1QlZBUiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9pbmRleCUyMCUyMyUyMCU1QklOREVYJTVEJTIwb2YlMjBpdGVtJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMmVsZW1lbnRvJTIwaW4lMjBwb3NpemlvbmUlMjAlNUJJTkRFWCU1RCUyMGRpJTIwZWxlbWVudG8lMjAlNUJJVEVNJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTJDJTIyX2l0ZW0lMjAlNUJOVU0lNUQlMjBleGlzdHMlMjBpbiUyMCU1QkxJU1QlNUQlM0YlMjIlM0ElMjJlc2lzdGUlMjBlbGVtZW50byUyMCU1Qk5VTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9sYXN0JTIyJTNBJTIydWx0aW1vJTIyJTJDJTIyX2xpc3QlMjAlNUJMSVNUJTVEJTIwam9pbmVkJTIwYnklMjAlNUJTVFJJTkclNUQlMjIlM0ElMjJ1bmlzY2klMjBlbGVtZW50aSUyMGRpJTIwJTVCTElTVCU1RCUyMGNvbiUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9vcmRlciUyMG9mJTIwJTVCTElTVCU1RCUyMGlzJTIwJTVCT1JERVIlNUQlM0YlMjIlM0ElMjJvcmRpbmUlMjBkaSUyMCU1QkxJU1QlNUQlMjAlQzMlQTglMjAlNUJPUkRFUiU1RCUyMiUyQyUyMl9yYW5kb20lMjIlM0ElMjJjYXN1YWxlJTIyJTJDJTIyX3JhbmRvbWl6ZWQlMjIlM0ElMjJjYXN1YWxlJTIyJTJDJTIyX3JlcGVhdCUyMCU1QkxJU1QxJTVEJTIwJTVCTlVNJTVEJTIwdGltZXMlMjBpbiUyMCU1QkxJU1QyJTVEJTIyJTNBJTIycmlwZXRpJTIwJTVCTElTVDElNUQlMjBwZXIlMjAlNUJOVU0lNUQlMjB2b2x0ZSUyMGluJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfcmVwbGFjZSUyMGFsbCUyMCU1QklURU0xJTVEJTIwd2l0aCUyMCU1QklURU0yJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyc29zdGl0dWlzY2klMjB0dXR0aSUyMGdsaSUyMGVsZW1lbnRpJTIwJTVCSVRFTTElNUQlMjBjb24lMjAlNUJJVEVNMiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9yZXZlcnNlZCUyMiUzQSUyMmludmVyc28lMjIlMkMlMjJfc2V0JTIwJTVCTElTVCU1RCUyMHRvJTIwYXJyYXklMjAlNUJBUlJBWSU1RCUyMiUzQSUyMmltcG9zdGElMjB2YWxvcmklMjAlNUJMSVNUJTVEJTIwZGElMjBlbGVuY28lMjAlNUJBUlJBWSU1RCUyMiUyQyUyMl9zZXQlMjBpdGVtcyUyMG9mJTIwJTVCTElTVDElNUQlMjB0byUyMCU1QkxJU1QyJTVEJTIyJTNBJTIycmltcGlhenphJTIwZWxlbWVudGklMjBkaSUyMCU1QkxJU1QxJTVEJTIwY29uJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfc2V0JTIwb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjB0byUyMCU1Qk9SREVSJTVEJTIyJTNBJTIycmlvcmRpbmElMjAlNUJMSVNUJTVEJTIwaW4lMjBtb2RvJTIwJTVCT1JERVIlNUQlMjIlN0QlMkMlMjJqYSUyMiUzQSU3QiUyMl8lMjMlMjBvZiUyMHRpbWVzJTIwJTVCSVRFTSU1RCUyMGFwcGVhcnMlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlNUJMSVNUJTVEJUUzJTgxJUE3JTVCSVRFTSU1RCVFMyU4MSU4QyVFNSU4NyVCQSVFMyU4MSVBNiVFMyU4MSU4RCVFMyU4MSU5RiVFNSU5QiU5RSVFNiU5NSVCMCUyMiUyQyUyMl9MaXN0JTIwVG9vbHMlMjIlM0ElMjIlRTMlODMlQUElRTMlODIlQjklRTMlODMlODglRTMlODMlODQlRTMlODMlQkMlRTMlODMlQUIlMjIlMkMlMjJfJTVCTElTVCU1RCUyMGFzJTIwYXJyYXklMjIlM0ElMjIlNUJMSVNUJTVEJUUzJTgxJUFFYXJyYXklMjIlMkMlMjJfJTVCTElTVCU1RCUyMGlzJTIwZW1wdHklM0YlMjIlM0ElMjIlNUJMSVNUJTVEJUUzJTgxJThDJUU3JUE5JUJBJTIyJTJDJTIyX2FzY2VuZGluZyUyMiUzQSUyMiVFNiU5NSVCMCVFMyU4MSU4QyVFNSVBMiU5NyVFNSU4QSVBMCUyMiUyQyUyMl9jb25jYXRlbmF0ZSUyMCU1QkxJU1QxJTVEJTIwb250byUyMCU1QkxJU1QyJTVEJTIyJTNBJTIyJTVCTElTVDElNUQlRTMlODElQUUlRTQlQjglQUQlRTglQkElQUIlRTMlODIlOTIlNUJMSVNUMiU1RCVFMyU4MSVBQiVFOCVCRiVCRCVFNSU4QSVBMCVFMyU4MSU5OSVFMyU4MiU4QiUyMiUyQyUyMl9kZWxldGUlMjBhbGwlMjAlNUJJVEVNJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFMyU4MSVBRSU1QklURU0lNUQlRTMlODIlOTIlRTMlODElOTklRTMlODElQjklRTMlODElQTYlRTUlODklOEElRTklOTklQTQlRTMlODElOTklRTMlODIlOEIlMjIlMkMlMjJfZGVsZXRlJTIwaXRlbXMlMjAlNUJOVU0xJTVEJTIwdG8lMjAlNUJOVU0yJTVEJTIwb2YlMjAlNUJMSVNUJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFMyU4MSVBRSU1Qk5VTTElNUQlRTclOTUlQUElRTMlODElOEIlRTMlODIlODklNUJOVU0yJTVEJUU3JTk1JUFBJUUzJTgxJUJFJUUzJTgxJUE3JUUzJTgyJTkyJUU1JTg5JThBJUU5JTk5JUE0JUUzJTgxJTk5JUUzJTgyJThCJTIyJTJDJTIyX2Rlc2NlbmRpbmclMjIlM0ElMjIlRTYlOTUlQjAlRTMlODElOEMlRTYlQjglOUIlRTUlQjAlOTElMjIlMkMlMjJfZmlyc3QlMjIlM0ElMjIlRTYlOUMlODAlRTUlODglOUQlRTMlODElQUUlMjIlMkMlMjJfaW5kZXglMjAlMjMlMjAlNUJJTkRFWCU1RCUyMG9mJTIwaXRlbSUyMCU1QklURU0lNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlNUJMSVNUJTVEJUUzJTgxJUFFJTVCSVRFTSU1RCVFMyU4MSU4QyU1QklOREVYJTVEJUU3JTk1JUFBJUU3JTlCJUFFJUUzJTgxJUFCJUU1JTg3JUJBJUUzJTgxJUE2JUUzJTgxJThEJUUzJTgxJTlGJUU1JUEwJUI0JUU2JTg5JTgwJTIyJTJDJTIyX2l0ZW0lMjAlNUJOVU0lNUQlMjBleGlzdHMlMjBpbiUyMCU1QkxJU1QlNUQlM0YlMjIlM0ElMjIlNUJMSVNUJTVEJUUzJTgxJUFCJTVCTlVNJTVEJUU3JTk1JUFBJUU3JTlCJUFFJUUzJTgxJThDJUU1JUFEJTk4JUU1JTlDJUE4JUUzJTgxJTk5JUUzJTgyJThCJTIyJTJDJTIyX2xhc3QlMjIlM0ElMjIlRTYlOUMlODAlRTUlQkUlOEMlRTMlODElQUUlMjIlMkMlMjJfbGlzdCUyMCU1QkxJU1QlNUQlMjBqb2luZWQlMjBieSUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiU1QlNUUklORyU1RCVFMyU4MSVBNyVFMyU4MSVBNCVFMyU4MSVBQSVFMyU4MSU5MiVFMyU4MSU5RiU1QkxJU1QlNUQlMjIlMkMlMjJfb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjBpcyUyMCU1Qk9SREVSJTVEJTNGJTIyJTNBJTIyJTVCTElTVCU1RCVFMyU4MSU4QyU1Qk9SREVSJTVEJTIyJTJDJTIyX3JhbmRvbSUyMiUzQSUyMiVFMyU4MyVBOSVFMyU4MyVCMyVFMyU4MyU4MCVFMyU4MyVBMCUyMiUyQyUyMl9yYW5kb21pemVkJTIyJTNBJTIyJUUzJTgzJUE5JUUzJTgzJUIzJUUzJTgzJTgwJUUzJTgzJUEwJTIyJTJDJTIyX3JlcGVhdCUyMCU1QkxJU1QxJTVEJTIwJTVCTlVNJTVEJTIwdGltZXMlMjBpbiUyMCU1QkxJU1QyJTVEJTIyJTNBJTIyJTVCTElTVDElNUQlRTMlODIlOTIlNUJMSVNUMiU1RCVFMyU4MSVBNyU1Qk5VTSU1RCVFNSU5QiU5RSVFNyVCOSVCMCVFMyU4MiU4QSVFOCVCRiU5NCVFMyU4MSU5OSUyMiUyQyUyMl9yZXBsYWNlJTIwYWxsJTIwJTVCSVRFTTElNUQlMjB3aXRoJTIwJTVCSVRFTTIlNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlNUJMSVNUJTVEJUUzJTgxJUFFJUUzJTgxJTk5JUUzJTgxJUI5JUUzJTgxJUE2JUUzJTgxJUFFJTVCSVRFTTElNUQlRTMlODIlOTIlNUJJVEVNMiU1RCVFMyU4MSVBNyVFNyVCRCVBRSVFMyU4MSU4RCVFNiU4RiU5QiVFMyU4MSU4OCVFMyU4MiU4QiUyMiUyQyUyMl9yZXZlcnNlZCUyMiUzQSUyMiVFOSVBMCU4NiVFNyU5NSVBQSVFMyU4MSU4QyVFOSU4MCU4NiUyMiUyQyUyMl9zZXQlMjAlNUJMSVNUJTVEJTIwdG8lMjBhcnJheSUyMCU1QkFSUkFZJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFMyU4MiU5MmFycmF5JTVCQVJSQVklNUQlRTMlODElQUIlRTMlODIlQkIlRTMlODMlODMlRTMlODMlODglRTMlODElOTklRTMlODIlOEIlMjIlMkMlMjJfc2V0JTIwaXRlbXMlMjBvZiUyMCU1QkxJU1QxJTVEJTIwdG8lMjAlNUJMSVNUMiU1RCUyMiUzQSUyMiU1QkxJU1QxJTVEJUUzJTgxJUFFJUU0JUI4JUFEJUU4JUJBJUFCJUUzJTgyJTkyJTVCTElTVDIlNUQlRTMlODElQUIlRTMlODElOTklRTMlODIlOEIlMjIlMkMlMjJfc2V0JTIwb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjB0byUyMCU1Qk9SREVSJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFMyU4MiU5MiU1Qk9SREVSJTVEJUUzJTgxJUFCJUUzJTgxJTk5JUUzJTgyJThCJTIyJTdEJTJDJTIya28lMjIlM0ElN0IlMjJfJTIzJTIwb2YlMjB0aW1lcyUyMCU1QklURU0lNUQlMjBhcHBlYXJzJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5NyU5MCVFQyU4NCU5QyUyMCU1QklURU0lNUQlRUMlOUQlOTglMjAlRUElQjAlOUMlRUMlODglOTglMjAlMjIlMkMlMjJfTGlzdCUyMFRvb2xzJTIyJTNBJTIyJUVCJUE2JUFDJUVDJThBJUE0JUVEJThBJUI4JTIwJUVCJThGJTg0JUVBJUI1JUFDJTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBhcyUyMGFycmF5JTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5RCU4NCglRUIlQTUlQkMpJTIwJUVCJUIwJUIwJUVDJTk3JUI0JUVCJUExJTlDJTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBpcyUyMGVtcHR5JTNGJTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5RCVCNCglRUElQjAlODApJTIwJUVCJUI5JTg0JUVDJTk3JTg4JUVCJThBJTk0JUVBJUIwJTgwJTNGJTIyJTJDJTIyX2FzY2VuZGluZyUyMiUzQSUyMiVFQyU5OCVBNCVFQiVBNiU4NCVFQyVCMCVBOCVFQyU4OCU5QyUyMiUyQyUyMl9jb25jYXRlbmF0ZSUyMCU1QkxJU1QxJTVEJTIwb250byUyMCU1QkxJU1QyJTVEJTIyJTNBJTIyJTVCTElTVDIlNUQlRUMlOTclOTAlRUMlODQlOUMlMjAlNUJMSVNUMSU1RCVFQyU5RCU4NCglRUIlQTUlQkMpJTIwJUVCJThEJTlCJUVCJUI2JTk5JUVDJTlEJUI0JUVBJUI4JUIwJTIyJTJDJTIyX2RlbGV0ZSUyMGFsbCUyMCU1QklURU0lNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlNUJMSVNUJTVEJUVDJTlEJTk4JTIwJUVCJUFBJUE4JUVCJTkzJUEwJTIwJTVCSVRFTSU1RCUyMCVFQyU4MiVBRCVFQyVBMCU5QyVFRCU5NSU5OCVFQSVCOCVCMCUyMiUyQyUyMl9kZWxldGUlMjBpdGVtcyUyMCU1Qk5VTTElNUQlMjB0byUyMCU1Qk5VTTIlNUQlMjBvZiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlNUJMSVNUJTVEJUVDJTlEJTk4JTIwJTVCTlVNMSU1RCVFQiVCMiU4OCVFQyVBNyVCOCVFQiVCNiU4MCVFRCU4NCVCMCUyMCU1Qk5VTTIlNUQlRUIlQjIlODglRUMlQTclQjglRUElQjklOEMlRUMlQTclODAlMjAlRUMlODIlQUQlRUMlQTAlOUMlRUQlOTUlOTglRUElQjglQjAlMjIlMkMlMjJfZGVzY2VuZGluZyUyMiUzQSUyMiVFQiU4MiVCNCVFQiVBNiVCQyVFQyVCMCVBOCVFQyU4OCU5QyUyMiUyQyUyMl9maXJzdCUyMiUzQSUyMiVFQyVCMiVBQiVFQyVBNyVCOCUyMiUyQyUyMl9mb3IlMjBlYWNoJTIwaXRlbSUyMCUyMyUyMCU1QlZBUiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiU1QkxJU1QlNUQlRUMlOUQlOTglMjAlRUElQjAlODElMjAlRUQlOTUlQUQlRUIlQUElQTklRUMlOUQlOTglMjAlRUIlQjIlODglRUMlQTclQjglRUIlQTUlQkMlMjAlNUJWQVIlNUQoJUVDJTlDJUJDKSVFQiVBMSU5QyUyMCVFQyU4OCU5QyVFRCU5QSU4QyVFRCU5NSU5OCVFQSVCOCVCMCUyMiUyQyUyMl9mb3IlMjBlYWNoJTIwaXRlbSUyMHZhbHVlJTIwJTVCVkFSJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5RCU5OCUyMCVFQSVCMCU4MSUyMCVFRCU5NSVBRCVFQiVBQSVBOSVFQyU5RCU5OCUyMCVFQSVCMCU5MiVFQyU5RCU4NCUyMCU1QlZBUiU1RCglRUMlOUMlQkMpJUVCJUExJTlDJTIwJUVDJTg4JTlDJUVEJTlBJThDJUVEJTk1JTk4JUVBJUI4JUIwJTIyJTJDJTIyX2l0ZW0lMjAlNUJOVU0lNUQlMjBleGlzdHMlMjBpbiUyMCU1QkxJU1QlNUQlM0YlMjIlM0ElMjIlNUJMSVNUJTVEJUVDJTk3JTkwJUVDJTg0JTlDJTIwJTVCTlVNJTVEJUVDJTlEJUI0KCVFQSVCMCU4MCklMjAlRUMlQTElQjQlRUMlOUUlQUMlRUQlOTUlOTglRUIlOEElOTQlRUElQjAlODAlM0YlMjIlMkMlMjJfbGFzdCUyMiUzQSUyMiVFQiVBNyU4OCVFQyVBNyU4MCVFQiVBNyU4OSVFQyVBNyVCOCUyMiUyQyUyMl9saXN0JTIwJTVCTElTVCU1RCUyMGpvaW5lZCUyMGJ5JTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5RCU4NCglRUIlQTUlQkMpJTIwJTVCU1RSSU5HJTVEKCVFQyU5QyVCQyklRUIlQTElOUMlMjAlRUMlOUQlQjQlRUMlOTYlQjQlRUIlQjYlOTklRUMlOUUlODQlMjIlMkMlMjJfb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjBpcyUyMCU1Qk9SREVSJTVEJTNGJTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5RCVCNCglRUElQjAlODApJTIwJTVCT1JERVIlNUQlRUMlOUQlQjglRUElQjAlODAlM0YlMjIlMkMlMjJfcmFuZG9tJTIyJTNBJTIyJUVCJUFDJUI0JUVDJTlFJTkxJUVDJTlDJTg0JTIyJTJDJTIyX3JhbmRvbWl6ZWQlMjIlM0ElMjIlRUIlQUMlQjQlRUMlOUUlOTElRUMlOUMlODQlMjIlMkMlMjJfcmVwbGFjZSUyMGFsbCUyMCU1QklURU0xJTVEJTIwd2l0aCUyMCU1QklURU0yJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5RCU5OCUyMCVFQiVBQSVBOCVFQiU5MyVBMCUyMCU1QklURU0xJTVEJUVDJTlEJTg0KCVFQiVBNSVCQyklMjAlNUJJVEVNMiU1RCglRUMlOUMlQkMpJUVCJUExJTlDJTIwJUVCJUIwJTk0JUVBJUJFJUI4JUVBJUI4JUIwJTIyJTJDJTIyX3JldmVyc2VkJTIyJTNBJTIyJUVDJTk3JUFEJUVCJUIwJUE5JUVEJTk2JUE1JTIyJTJDJTIyX3NldCUyMCU1QkxJU1QlNUQlMjB0byUyMGFycmF5JTIwJTVCQVJSQVklNUQlMjIlM0ElMjIlNUJMSVNUJTVEJUVDJTlEJTg0KCVFQiVBNSVCQyklMjAlRUIlQjAlQjAlRUMlOTclQjQlMjAlNUJBUlJBWSU1RCglRUMlOUMlQkMpJUVCJUExJTlDJTIwJUVDJTg0JUE0JUVDJUEwJTk1JUVEJTk1JTk4JUVBJUI4JUIwJTIyJTJDJTIyX3NldCUyMGl0ZW1zJTIwb2YlMjAlNUJMSVNUMSU1RCUyMHRvJTIwJTVCTElTVDIlNUQlMjIlM0ElMjIlNUJMSVNUMSU1RCVFQyU5RCU4NCglRUIlQTUlQkMpJTIwJTVCTElTVDIlNUQlRUMlOUQlOTglMjAlRUQlOTUlQUQlRUIlQUElQTklRUMlOUMlQkMlRUIlQTElOUMlMjAlRUMlQTAlOTUlRUQlOTUlOTglRUElQjglQjAlMjIlMkMlMjJfc2V0JTIwb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjB0byUyMCU1Qk9SREVSJTVEJTIyJTNBJTIyJTVCTElTVCU1RCVFQyU5RCU4NCglRUIlQTUlQkMpJTIwJTVCT1JERVIlNUQoJUVDJTlDJUJDKSVFQiVBMSU5QyUyMCVFQyVBMCU5NSVFQiVBMCVBQyVFRCU5NSU5OCVFQSVCOCVCMCUyMiU3RCUyQyUyMm5iJTIyJTNBJTdCJTIyX0xpc3QlMjBUb29scyUyMiUzQSUyMkxpc3RlJTIwdmVya3QlQzMlQjh5JTIyJTdEJTJDJTIybmwlMjIlM0ElN0IlMjJfJTIzJTIwb2YlMjB0aW1lcyUyMCU1QklURU0lNUQlMjBhcHBlYXJzJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyYWFudGFsJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9MaXN0JTIwVG9vbHMlMjIlM0ElMjJMaWpzdHRvb2xzJTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBhcyUyMGFycmF5JTIyJTNBJTIyJTVCTElTVCU1RCUyMGFscyUyMGFycmF5JTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBpcyUyMGVtcHR5JTNGJTIyJTNBJTIyJTVCTElTVCU1RCUyMGlzJTIwbGVlZyUzRiUyMiUyQyUyMl9hc2NlbmRpbmclMjIlM0ElMjJvcGxvcGVuZCUyMiUyQyUyMl9jb25jYXRlbmF0ZSUyMCU1QkxJU1QxJTVEJTIwb250byUyMCU1QkxJU1QyJTVEJTIyJTNBJTIydm9lZyUyMCU1QkxJU1QxJTVEJTIwdG9lJTIwYWFuJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfZGVsZXRlJTIwYWxsJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMnZlcndpamRlciUyMGFsbGUlMjAlNUJJVEVNJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTJDJTIyX2RlbGV0ZSUyMGl0ZW1zJTIwJTVCTlVNMSU1RCUyMHRvJTIwJTVCTlVNMiU1RCUyMG9mJTIwJTVCTElTVCU1RCUyMiUzQSUyMnZlcndpamRlciUyMGl0ZW1zJTIwJTVCTlVNMSU1RCUyMHQlMkZtJTIwJTVCTlVNMiU1RCUyMHZhbiUyMCU1QkxJU1QlNUQlMjIlMkMlMjJfZGVzY2VuZGluZyUyMiUzQSUyMmFmbG9wZW5kJTIyJTJDJTIyX2luZGV4JTIwJTIzJTIwJTVCSU5ERVglNUQlMjBvZiUyMGl0ZW0lMjAlNUJJVEVNJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyaW5kZXglMjB2YW4lMjBoZXJoYWxpbmclMjAlMjMlMjAlNUJJTkRFWCU1RCUyMHZhbiUyMGl0ZW0lMjAlNUJJVEVNJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTJDJTIyX2l0ZW0lMjAlNUJOVU0lNUQlMjBleGlzdHMlMjBpbiUyMCU1QkxJU1QlNUQlM0YlMjIlM0ElMjJpdGVtJTIwJTIzJTIwJTVCTlVNJTVEJTIwYmVzdGFhdCUyMGluJTIwJTVCTElTVCU1RCUzRiUyMiUyQyUyMl9saXN0JTIwJTVCTElTVCU1RCUyMGpvaW5lZCUyMGJ5JTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIybGlqc3QlMjAlNUJMSVNUJTVEJTIwc2FtZW5nZXZvZWdkJTIwbWV0JTIwJTVCU1RSSU5HJTVEJTIyJTJDJTIyX29yZGVyJTIwb2YlMjAlNUJMSVNUJTVEJTIwaXMlMjAlNUJPUkRFUiU1RCUzRiUyMiUzQSUyMnZvbGdvcmRlJTIwdmFuJTIwJTVCTElTVCU1RCUyMGlzJTIwJTVCT1JERVIlNUQlM0YlMjIlMkMlMjJfcmFuZG9tJTIyJTNBJTIyd2lsbGVrZXVyaWclMjIlMkMlMjJfcmFuZG9taXplZCUyMiUzQSUyMndpbGxla2V1cmlnJTIyJTJDJTIyX3JlcGVhdCUyMCU1QkxJU1QxJTVEJTIwJTVCTlVNJTVEJTIwdGltZXMlMjBpbiUyMCU1QkxJU1QyJTVEJTIyJTNBJTIyaGVyaGFhbCUyMCU1QkxJU1QxJTVEJTIwJTVCTlVNJTVEJTIwa2VlciUyMGluJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfcmVwbGFjZSUyMGFsbCUyMCU1QklURU0xJTVEJTIwd2l0aCUyMCU1QklURU0yJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIydmVydmFuZyUyMGFsbGUlMjAlNUJJVEVNMSU1RCUyMGRvb3IlMjAlNUJJVEVNMiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9yZXZlcnNlZCUyMiUzQSUyMm9tZ2VrZWVyZCUyMiUyQyUyMl9zZXQlMjAlNUJMSVNUJTVEJTIwdG8lMjBhcnJheSUyMCU1QkFSUkFZJTVEJTIyJTNBJTIybWFhayUyMCU1QkxJU1QlNUQlMjBhcnJheSUyMCU1QkFSUkFZJTVEJTIyJTJDJTIyX3NldCUyMGl0ZW1zJTIwb2YlMjAlNUJMSVNUMSU1RCUyMHRvJTIwJTVCTElTVDIlNUQlMjIlM0ElMjJtYWFrJTIwJTVCTElTVDElNUQlMjAlNUJMSVNUMiU1RCUyMiUyQyUyMl9zZXQlMjBvcmRlciUyMG9mJTIwJTVCTElTVCU1RCUyMHRvJTIwJTVCT1JERVIlNUQlMjIlM0ElMjJtYWFrJTIwdm9sZ29yZGUlMjB2YW4lMjAlNUJMSVNUJTVEJTIwJTVCT1JERVIlNUQlMjIlN0QlMkMlMjJydSUyMiUzQSU3QiUyMl8lMjMlMjBvZiUyMHRpbWVzJTIwJTVCSVRFTSU1RCUyMGFwcGVhcnMlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlRDAlQkElRDAlQkUlRDAlQkIlRDAlQjglRDElODclRDAlQjUlRDElODElRDElODIlRDAlQjIlRDAlQkUlMjAlNUJJVEVNJTVEJTIwJUQwJUIyJTIwJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJBJUQwJUI1JTIwJTVCTElTVCU1RCUyMiUyQyUyMl9MaXN0JTIwVG9vbHMlMjIlM0ElMjIlRDAlOTglRDAlQkQlRDElODElRDElODIlRDElODAlRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDElOEIlMjAlRDAlQTElRDAlQkYlRDAlQjglRDElODElRDAlQkElRDAlQjAlMjIlMkMlMjJfJTVCTElTVCU1RCUyMGFzJTIwYXJyYXklMjIlM0ElMjIlNUJMSVNUJTVEJTIwJUQwJUJBJUQwJUIwJUQwJUJBJTIwJUQwJUJDJUQwJUIwJUQxJTgxJUQxJTgxJUQwJUI4JUQwJUIyJTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBpcyUyMGVtcHR5JTNGJTIyJTNBJTIyJTVCTElTVCU1RCUyMCVEMCVCRiVEMSU4MyVEMSU4MSVEMSU4MiVEMCVCRSVEMCVCOSUzRiUyMiUyQyUyMl9hc2NlbmRpbmclMjIlM0ElMjIlRDAlQkQlRDAlQjAlRDElODAlRDAlQjAlRDElODElRDElODIlRDAlQjAlRDElOEUlRDElODklRDAlQjUlRDAlQjklMjIlMkMlMjJfY29uY2F0ZW5hdGUlMjAlNUJMSVNUMSU1RCUyMG9udG8lMjAlNUJMSVNUMiU1RCUyMiUzQSUyMiVEMCVCRSVEMCVCMSVEMSU4QSVEMCVCNSVEMCVCNCVEMCVCOCVEMCVCRCVEMCVCOCVEMSU4MiVEMSU4QyUyMCVEMSU4MSVEMCVCRiVEMCVCOCVEMSU4MSVEMCVCRSVEMCVCQSUyMCU1QkxJU1QxJTVEJTIwJUQxJTgxJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfZGVsZXRlJTIwYWxsJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVEMSU4MyVEMCVCNCVEMCVCMCVEMCVCQiVEMCVCOCVEMSU4MiVEMSU4QyUyMCVEMCVCMiVEMSU4MSVEMCVCNSUyMCU1QklURU0lNUQlMjAlRDElODElRDAlQkYlRDAlQjglRDElODElRDAlQkElRDAlQjAlMjAlNUJMSVNUJTVEJTIyJTJDJTIyX2RlbGV0ZSUyMGl0ZW1zJTIwJTVCTlVNMSU1RCUyMHRvJTIwJTVCTlVNMiU1RCUyMG9mJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVEMSU4MyVEMCVCNCVEMCVCMCVEMCVCQiVEMCVCOCVEMSU4MiVEMSU4QyUyMCVEMSU4MSVEMSU4MiVEMSU4MCVEMCVCRSVEMSU4NyVEMCVCQSVEMCVCOCUyMCVEMCVCOCVEMCVCNyUyMCU1Qk5VTTElNUQlMjAlRDAlQkElMjAlNUJOVU0yJTVEJTIwJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJBJUQwJUIwJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9kZXNjZW5kaW5nJTIyJTNBJTIyJUQwJUJFJUQwJUJGJUQxJTgzJUQxJTgxJUQwJUJBJUQwJUIwJUQxJThFJUQxJTg5JUQwJUI1JUQwJUI5JTIyJTJDJTIyX2ZpcnN0JTIyJTNBJTIyJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUIyJUQxJThCJUQwJUI5JTIyJTJDJTIyX2ZvciUyMGVhY2glMjBpdGVtJTIwJTIzJTIwJTVCVkFSJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJUQwJUI0JUQwJUJCJUQxJThGJTIwJUQwJUJBJUQwJUIwJUQwJUI2JUQwJUI0JUQwJUJFJUQwJUIzJUQwJUJFJTIwJUQwJUJEJUQwJUJFJUQwJUJDJUQwJUI1JUQxJTgwJUQwJUIwJTIwJTIzJTIwJTVCVkFSJTVEJTIwJUQwJUIyJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9mb3IlMjBlYWNoJTIwaXRlbSUyMHZhbHVlJTIwJTVCVkFSJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJUQwJUI0JUQwJUJCJUQxJThGJTIwJUQwJUJBJUQwJUIwJUQwJUI2JUQwJUI0JUQwJUJFJUQwJUIzJUQwJUJFJTIwJUQwJUJEJUQwJUJFJUQwJUJDJUQwJUI1JUQxJTgwJUQwJUIwJTIwJUQwJUI3JUQwJUJEJUQwJUIwJUQxJTg3JUQwJUI1JUQwJUJEJUQwJUI4JUQwJUI1JTIwJTVCVkFSJTVEJTIwJUQwJUIyJTIwJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJBJUQwJUI1JTIwJTVCTElTVCU1RCUyMiUyQyUyMl9pbmRleCUyMCUyMyUyMCU1QklOREVYJTVEJTIwb2YlMjBpdGVtJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVEMCVCOCVEMCVCRCVEMCVCNCVEMCVCNSVEMCVCQSVEMSU4MSUyMCUyMyUyMCU1QklOREVYJTVEJTIwJUQxJThEJUQwJUJCJUQwJUI1JUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJUQwJUIwJTIwJTVCSVRFTSU1RCUyMCVEMSU4MSVEMCVCRiVEMCVCOCVEMSU4MSVEMCVCQSVEMCVCMCUyMCU1QkxJU1QlNUQlMjIlMkMlMjJfaXRlbSUyMCU1Qk5VTSU1RCUyMGV4aXN0cyUyMGluJTIwJTVCTElTVCU1RCUzRiUyMiUzQSUyMiVEMCVCRCVEMCVCRSVEMCVCQyVEMCVCNSVEMSU4MCUyMCU1Qk5VTSU1RCUyMCVEMSU4MSVEMSU4MyVEMSU4OSVEMCVCNSVEMSU4MSVEMSU4MiVEMCVCMiVEMSU4MyVEMCVCNSVEMSU4MiUyMCVEMCVCMiUyMCU1QkxJU1QlNUQlM0YlMjIlMkMlMjJfbGFzdCUyMiUzQSUyMiVEMCVCRiVEMCVCRSVEMSU4MSVEMCVCQiVEMCVCNSVEMCVCNCVEMCVCRCVEMCVCOCVEMCVCOSUyMiUyQyUyMl9saXN0JTIwJTVCTElTVCU1RCUyMGpvaW5lZCUyMGJ5JTIwJTVCU1RSSU5HJTVEJTIyJTNBJTIyJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJFJUQwJUJBJTIwJTVCTElTVCU1RCVEMCVCQSUyMCVEMCVCQSVEMCVCRSVEMSU4MiVEMCVCRSVEMSU4MCVEMCVCRSVEMCVCQyVEMSU4MyUyMCVEMCVCRiVEMSU4MCVEMCVCOCVEMSU4MSVEMCVCRSVEMCVCNSVEMCVCNCVEMCVCOCVEMCVCRCVEMSU4RiVEMCVCNSVEMSU4MiVEMSU4MSVEMSU4RiUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9vcmRlciUyMG9mJTIwJTVCTElTVCU1RCUyMGlzJTIwJTVCT1JERVIlNUQlM0YlMjIlM0ElMjIlRDElODElRDAlQkUlRDElODAlRDElODIlRDAlQjglRDElODAlRDAlQkUlRDAlQjIlRDAlQjAlRDAlQkQlMjAlRDElODElRDAlQkYlRDAlQjglRDElODElRDAlQkUlRDAlQkElMjAlNUJMSVNUJTVEJTIwJUQwJUJGJUQwJUJFJTIwJTVCT1JERVIlNUQlM0YlMjIlMkMlMjJfcmFuZG9tJTIyJTNBJTIyJUQxJTgxJUQwJUJCJUQxJTgzJUQxJTg3JUQwJUIwJUQwJUI5JUQwJUJEJUQxJThCJUQwJUI5JTIyJTJDJTIyX3JhbmRvbWl6ZWQlMjIlM0ElMjIlRDElODAlRDAlQjAlRDAlQkQlRDAlQjQlRDAlQkUlRDAlQkMlRDAlQjglRDAlQjclRDAlQjglRDElODAlRDAlQkUlRDAlQjIlRDAlQjAlRDAlQkQlRDAlQkQlRDElOEIlRDAlQjklMjIlMkMlMjJfcmVwZWF0JTIwJTVCTElTVDElNUQlMjAlNUJOVU0lNUQlMjB0aW1lcyUyMGluJTIwJTVCTElTVDIlNUQlMjIlM0ElMjIlRDAlQkYlRDAlQkUlRDAlQjIlRDElODIlRDAlQkUlRDElODAlRDAlQjglRDElODIlRDElOEMlMjAlNUJMSVNUMSU1RCUyMCU1Qk5VTSU1RCUyMCVEMSU4MCVEMCVCMCVEMCVCNyUyMCVEMCVCMiUyMCU1QkxJU1QyJTVEJTIyJTJDJTIyX3JlcGxhY2UlMjBhbGwlMjAlNUJJVEVNMSU1RCUyMHdpdGglMjAlNUJJVEVNMiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVEMCVCNyVEMCVCMCVEMCVCQyVEMCVCNSVEMCVCRCVEMCVCOCVEMSU4MiVEMSU4QyUyMCVEMCVCMiVEMSU4MSVEMSU5MSUyMCU1QklURU0xJTVEJTIwJUQwJUJEJUQwJUIwJTIwJTVCSVRFTTIlNUQlMjAlRDElODElRDAlQkYlRDAlQjglRDElODElRDAlQkElRDAlQjAlMjAlNUJMSVNUJTVEJTIyJTJDJTIyX3JldmVyc2VkJTIyJTNBJTIyJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUI1JUQwJUIyJUQxJTkxJUQxJTgwJUQwJUJEJUQxJTgzJUQxJTgyJUQxJThCJUQwJUI5JTIyJTJDJTIyX3NldCUyMCU1QkxJU1QlNUQlMjB0byUyMGFycmF5JTIwJTVCQVJSQVklNUQlMjIlM0ElMjIlRDAlQjclRDAlQjAlRDAlQjQlRDAlQjAlRDElODIlRDElOEMlMjAlRDElODElRDAlQkYlRDAlQjglRDElODElRDAlQkUlRDAlQkElMjAlNUJMSVNUJTVEJTIwJUQwJUJEJUQwJUIwJTVCQVJSQVklNUQlMjIlMkMlMjJfc2V0JTIwaXRlbXMlMjBvZiUyMCU1QkxJU1QxJTVEJTIwdG8lMjAlNUJMSVNUMiU1RCUyMiUzQSUyMiVEMCVCNyVEMCVCMCVEMCVCQyVEMCVCNSVEMCVCRCVEMCVCOCVEMSU4MiVEMSU4QyUyMCVEMSU4MSVEMCVCRiVEMCVCOCVEMSU4MSVEMCVCRSVEMCVCQSUyMCU1QkxJU1QxJTVEJTIwJUQwJUJEJUQwJUIwJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfc2V0JTIwb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjB0byUyMCU1Qk9SREVSJTVEJTIyJTNBJTIyJUQwJUI3JUQwJUIwJUQwJUI0JUQwJUIwJUQxJTgyJUQxJThDJTIwJUQxJTgxJUQwJUJFJUQxJTgwJUQxJTgyJUQwJUI4JUQxJTgwJUQwJUJFJUQwJUIyJUQwJUJBJUQxJTgzJTIwJUQxJTgxJUQwJUJGJUQwJUI4JUQxJTgxJUQwJUJBJUQwJUIwJTIwJTVCTElTVCU1RCUyMCVEMCVCRCVEMCVCMCUyMCU1Qk9SREVSJTVEJTIyJTdEJTJDJTIydHIlMjIlM0ElN0IlMjJfTGlzdCUyMFRvb2xzJTIyJTNBJTIyTGlzdGUlMjBBcmElQzMlQTdsYXIlQzQlQjElMjIlN0QlMkMlMjJ1ayUyMiUzQSU3QiUyMl8lMjMlMjBvZiUyMHRpbWVzJTIwJTVCSVRFTSU1RCUyMGFwcGVhcnMlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlRDAlQkElRDElOTYlRDAlQkIlRDElOEMlRDAlQkElRDElOTYlRDElODElRDElODIlRDElOEMlMjAlNUJJVEVNJTVEJTIwJUQxJTgzJTIwJTVCTElTVCU1RCUyMiUyQyUyMl9MaXN0JTIwVG9vbHMlMjIlM0ElMjIlRDAlODYlRDAlQkQlRDElODElRDElODIlRDElODAlRDElODMlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDAlQjglMjAlRDAlQjQlRDAlQkIlRDElOEYlMjAlRDAlQTElRDAlQkYlRDAlQjglRDElODElRDAlQkElRDElOTYlRDAlQjIlMjIlMkMlMjJfJTVCTElTVCU1RCUyMGFzJTIwYXJyYXklMjIlM0ElMjIlNUJMSVNUJTVEJTIwJUQxJThGJUQwJUJBJTIwJUQwJUJDJUQwJUIwJUQxJTgxJUQwJUI4JUQwJUIyJTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBpcyUyMGVtcHR5JTNGJTIyJTNBJTIyJTVCTElTVCU1RCUyMCVEMCVCRiVEMCVCRSVEMSU4MCVEMCVCRSVEMCVCNiVEMCVCRCVEMSU5NiVEMCVCOSUzRiUyMiUyQyUyMl9hc2NlbmRpbmclMjIlM0ElMjIlRDAlQjclRDElODAlRDAlQkUlRDElODElRDElODIlRDAlQjAlRDAlQkQlRDAlQkQlRDElOEYlMjIlMkMlMjJfY29uY2F0ZW5hdGUlMjAlNUJMSVNUMSU1RCUyMG9udG8lMjAlNUJMSVNUMiU1RCUyMiUzQSUyMiVEMCVCNCVEMCVCRSVEMSU5NCVEMCVCNCVEMCVCRCVEMCVCMCVEMSU4MiVEMCVCOCUyMCU1QkxJU1QxJTVEJTIwJUQwJUI0JUQwJUJFJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfZGVsZXRlJTIwYWxsJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVEMCVCMiVEMCVCOCVEMCVCQiVEMSU4MyVEMSU4NyVEMCVCOCVEMSU4MiVEMCVCOCUyMCVEMSU4MyVEMSU4MSVEMSU5NiUyMCU1QklURU0lNUQlMjAlRDAlQjclMjAlNUJMSVNUJTVEJTIyJTJDJTIyX2RlbGV0ZSUyMGl0ZW1zJTIwJTVCTlVNMSU1RCUyMHRvJTIwJTVCTlVNMiU1RCUyMG9mJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVEMCVCMiVEMCVCOCVEMCVCQiVEMSU4MyVEMSU4NyVEMCVCOCVEMSU4MiVEMCVCOCUyMCVEMCVCNyUyMCU1Qk5VTTElNUQlMjAlRDAlQjQlRDAlQkUlMjAlNUJOVU0yJTVEJTIwJUQwJUI3JTIwJTVCTElTVCU1RCUyMiUyQyUyMl9kZXNjZW5kaW5nJTIyJTNBJTIyJUQxJTgxJUQwJUJGJUQwJUIwJUQwJUI0JUQwJUIwJUQwJUJEJUQwJUJEJUQxJThGJTIyJTJDJTIyX2ZpcnN0JTIyJTNBJTIyJUQwJUJGJUQwJUI1JUQxJTgwJUQxJTg4JUQwJUI4JUQwJUI5JTIyJTJDJTIyX2l0ZW0lMjAlNUJOVU0lNUQlMjBleGlzdHMlMjBpbiUyMCU1QkxJU1QlNUQlM0YlMjIlM0ElMjIlNUJOVU0lNUQlMjAtJUQwJUI4JUQwJUI5JTIwJUQwJUI1JUQwJUJCJUQwJUI1JUQwJUJDJUQwJUI1JUQwJUJEJUQxJTgyJTIwJUQxJTk2JUQxJTgxJUQwJUJEJUQxJTgzJUQxJTk0JTIwJUQxJTgzJTIwJTVCTElTVCU1RCUzRiUyMiUyQyUyMl9sYXN0JTIyJTNBJTIyJUQwJUJFJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUJEJUQxJTk2JUQwJUI5JTIyJTJDJTIyX2xpc3QlMjAlNUJMSVNUJTVEJTIwam9pbmVkJTIwYnklMjAlNUJTVFJJTkclNUQlMjIlM0ElMjIlRDElODElRDAlQkYlRDAlQjglRDElODElRDAlQkUlRDAlQkElMjAlNUJMSVNUJTVEJTIwJUQwJUI3JyVEMSU5NCVEMCVCNCVEMCVCRCVEMCVCMCVEMCVCRCVEMCVCOCVEMCVCOSUyMCVEMSU4NyVEMCVCNSVEMSU4MCVEMCVCNSVEMCVCNyUyMCU1QlNUUklORyU1RCUyMiUyQyUyMl9vcmRlciUyMG9mJTIwJTVCTElTVCU1RCUyMGlzJTIwJTVCT1JERVIlNUQlM0YlMjIlM0ElMjIlRDAlQkYlRDAlQkUlRDElODAlRDElOEYlRDAlQjQlRDAlQkUlRDAlQkElMjAlRDElODMlMjAlNUJMSVNUJTVEJTIwJUQxJTk0JTIwJTVCT1JERVIlNUQlM0YlMjIlMkMlMjJfcmFuZG9tJTIyJTNBJTIyJUQwJUIyJUQwJUI4JUQwJUJGJUQwJUIwJUQwJUI0JUQwJUJBJUQwJUJFJUQwJUIyJUQwJUI1JTIyJTJDJTIyX3JhbmRvbWl6ZWQlMjIlM0ElMjIlRDAlQjIlRDAlQjglRDAlQkYlRDAlQjAlRDAlQjQlRDAlQkElRDAlQkUlRDAlQjIlRDAlQjglRDAlQjklMjIlMkMlMjJfcmVwZWF0JTIwJTVCTElTVDElNUQlMjAlNUJOVU0lNUQlMjB0aW1lcyUyMGluJTIwJTVCTElTVDIlNUQlMjIlM0ElMjIlRDAlQkYlRDAlQkUlRDAlQjIlRDElODIlRDAlQkUlRDElODAlRDAlQjglRDElODIlRDAlQjglMjAlNUJMSVNUMSU1RCUyMCU1Qk5VTSU1RCUyMCVEMSU4MCVEMCVCMCVEMCVCNyVEMSU5NiVEMCVCMiUyMCVEMSU4MyUyMCU1QkxJU1QyJTVEJTIwJTIyJTJDJTIyX3JlcGxhY2UlMjBhbGwlMjAlNUJJVEVNMSU1RCUyMHdpdGglMjAlNUJJVEVNMiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVEMCVCNyVEMCVCMCVEMCVCQyVEMSU5NiVEMCVCRCVEMCVCOCVEMSU4MiVEMCVCOCUyMCVEMSU4MyVEMSU4MSVEMSU5NiUyMCU1QklURU0xJTVEJTIwJUQwJUJEJUQwJUIwJTIwJTVCSVRFTTIlNUQlMjAlRDElODMlMjAlNUJMSVNUJTVEJTIyJTJDJTIyX3JldmVyc2VkJTIyJTNBJTIyJUQwJUI3JUQwJUIwJUQwJUI0JUQwJUJFJUQwJUJDJTIwJUQwJUJEJUQwJUIwJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUI1JUQwJUI0JTIyJTJDJTIyX3NldCUyMCU1QkxJU1QlNUQlMjB0byUyMGFycmF5JTIwJTVCQVJSQVklNUQlMjIlM0ElMjIlRDAlQjclRDAlQjAlRDAlQkMlRDElOTYlRDAlQkQlRDAlQjglRDElODIlRDAlQjglMjAlRDAlQjUlRDAlQkIlRDAlQjUlRDAlQkMlRDAlQjUlRDAlQkQlRDElODIlRDAlQjglMjAlNUJMSVNUJTVEJTIwJUQwJUJEJUQwJUIwJTIwJUQwJUJDJUQwJUIwJUQxJTgxJUQwJUI4JUQwJUIyJTIwJTVCQVJSQVklNUQlMjIlMkMlMjJfc2V0JTIwaXRlbXMlMjBvZiUyMCU1QkxJU1QxJTVEJTIwdG8lMjAlNUJMSVNUMiU1RCUyMiUzQSUyMiVEMCVCNyVEMCVCMCVEMCVCQyVEMSU5NiVEMCVCRCVEMCVCOCVEMSU4MiVEMCVCOCUyMCVEMCVCNSVEMCVCQiVEMCVCNSVEMCVCQyVEMCVCNSVEMCVCRCVEMSU4MiVEMCVCOCUyMCVEMSU4MyUyMCU1QkxJU1QxJTVEJTIwJUQwJUJEJUQwJUIwJTIwJTVCTElTVDIlNUQlMjIlMkMlMjJfc2V0JTIwb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjB0byUyMCU1Qk9SREVSJTVEJTIyJTNBJTIyJUQxJTgxJUQwJUJFJUQxJTgwJUQxJTgyJUQxJTgzJUQwJUIyJUQwJUIwJUQxJTgyJUQwJUI4JTIwJTVCTElTVCU1RCUyMCVEMSU4MyUyMCVEMCVCRiVEMCVCRSVEMSU4MCVEMSU4RiVEMCVCNCVEMCVCQSVEMSU4MyUyMCU1Qk9SREVSJTVEJTIyJTdEJTJDJTIyemgtY24lMjIlM0ElN0IlMjJfJTIzJTIwb2YlMjB0aW1lcyUyMCU1QklURU0lNUQlMjBhcHBlYXJzJTIwaW4lMjAlNUJMSVNUJTVEJTIyJTNBJTIyJTVCSVRFTSU1RCVFNSU5QyVBOCU1QkxJU1QlNUQlRTQlQjglQUQlRTUlODclQkElRTclOEUlQjAlRTclOUElODQlRTYlQUMlQTElRTYlOTUlQjAlMjIlMkMlMjJfTGlzdCUyMFRvb2xzJTIyJTNBJTIyJUU1JTg4JTk3JUU4JUExJUE4JUU1JUI3JUE1JUU1JTg1JUI3JTIyJTJDJTIyXyU1QkxJU1QlNUQlMjBhcyUyMGFycmF5JTIyJTNBJTIyJTVCTElTVCU1RCVFNCVCRCU5QyVFNCVCOCVCQSVFNiU5NSVCMCVFNyVCQiU4NCUyMiUyQyUyMl8lNUJMSVNUJTVEJTIwaXMlMjBlbXB0eSUzRiUyMiUzQSUyMiU1QkxJU1QlNUQlRTYlOTglQUYlRTclQTklQkElRTclOUElODQlRTUlOTAlOTclRUYlQkMlOUYlMjIlMkMlMjJfYXNjZW5kaW5nJTIyJTNBJTIyJUU2JUFEJUEzJUU1JUJBJThGJTIyJTJDJTIyX2NvbmNhdGVuYXRlJTIwJTVCTElTVDElNUQlMjBvbnRvJTIwJTVCTElTVDIlNUQlMjIlM0ElMjIlRTUlQjAlODYlNUJMSVNUMSU1RCVFNyU5QSU4NCVFNSU4NiU4NSVFNSVBRSVCOSVFNSU4QSVBMCVFNSU4OCVCMCU1QkxJU1QyJTVEJUU3JTlBJTg0JUU2JTlDJUFCJUU1JUIwJUJFJTIyJTJDJTIyX2RlbGV0ZSUyMGFsbCUyMCU1QklURU0lNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlRTUlODglQTAlRTklOTklQTQlNUJMSVNUJTVEJUU0JUI4JUFEJUU3JTlBJTg0JUU2JTg5JTgwJUU2JTlDJTg5JTVCSVRFTSU1RCUyMiUyQyUyMl9kZWxldGUlMjBpdGVtcyUyMCU1Qk5VTTElNUQlMjB0byUyMCU1Qk5VTTIlNUQlMjBvZiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlRTUlODglQTAlRTklOTklQTQlNUJMSVNUJTVEJUU3JTlBJTg0JUU3JUFDJUFDJTVCTlVNMSU1RCVFNSU4OCVCMCU1Qk5VTTIlNUQlRTklQTElQjklMjIlMkMlMjJfZGVzY2VuZGluZyUyMiUzQSUyMiVFNSU4MCU5MiVFNSVCQSU4RiUyMiUyQyUyMl9maXJzdCUyMiUzQSUyMiVFNyVBQyVBQyVFNCVCOCU4MCVFNCVCOCVBQSUyMiUyQyUyMl9mb3IlMjBlYWNoJTIwaXRlbSUyMCUyMyUyMCU1QlZBUiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVFOSU4MSU4RCVFNSU4RSU4NiU1QkxJU1QlNUQlRTQlQjglQUQlRTclOUElODQlRTYlQUYlOEYlRTQlQjglODAlRTklQTElQjklRTclOUElODQlRTclQkMlOTYlRTUlOEYlQjclNUJWQVIlNUQlMjIlMkMlMjJfZm9yJTIwZWFjaCUyMGl0ZW0lMjB2YWx1ZSUyMCU1QlZBUiU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiUzQSUyMiVFOSU4MSU4RCVFNSU4RSU4NiU1QkxJU1QlNUQlRTQlQjglQUQlRTclOUElODQlRTYlQUYlOEYlRTQlQjglQUElRTUlODYlODUlRTUlQUUlQjklNUJWQVIlNUQlMjIlMkMlMjJfaW5kZXglMjAlMjMlMjAlNUJJTkRFWCU1RCUyMG9mJTIwaXRlbSUyMCU1QklURU0lNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlNUJMSVNUJTVEJUU0JUI4JUFEJUU3JUFDJUFDJTVCSU5ERVglNUQlRTQlQjglQUElNUJJVEVNJTVEJUU3JTlBJTg0JUU3JUJDJTk2JUU1JThGJUI3JTIyJTJDJTIyX2l0ZW0lMjAlNUJOVU0lNUQlMjBleGlzdHMlMjBpbiUyMCU1QkxJU1QlNUQlM0YlMjIlM0ElMjIlNUJMSVNUJTVEJUU1JUFEJTk4JUU1JTlDJUE4JUU3JUFDJUFDJTVCTlVNJTVEJUU5JUExJUI5JUVGJUJDJTlGJTIyJTJDJTIyX2xhc3QlMjIlM0ElMjIlRTYlOUMlODAlRTUlOTAlOEUlRTQlQjglODAlRTQlQjglQUElMjIlMkMlMjJfbGlzdCUyMCU1QkxJU1QlNUQlMjBqb2luZWQlMjBieSUyMCU1QlNUUklORyU1RCUyMiUzQSUyMiVFNCVCRCVCRiVFNyU5NCVBOCU1QlNUUklORyU1RCVFOCVCRiU5RSVFNiU4RSVBNSVFNSU4OCU5NyVFOCVBMSVBOCU1QkxJU1QlNUQlMjIlMkMlMjJfb3JkZXIlMjBvZiUyMCU1QkxJU1QlNUQlMjBpcyUyMCU1Qk9SREVSJTVEJTNGJTIyJTNBJTIyJTVCTElTVCU1RCVFNyU5QSU4NCVFOSVBMSVCQSVFNSVCQSU4RiVFNCVCOCVCQSU1Qk9SREVSJTVEJUVGJUJDJTlGJTIyJTJDJTIyX3JhbmRvbSUyMiUzQSUyMiVFOSU5QSU4RiVFNiU5QyVCQSUyMiUyQyUyMl9yYW5kb21pemVkJTIyJTNBJTIyJUU2JTg5JTkzJUU0JUI5JUIxJTIyJTJDJTIyX3JlcGVhdCUyMCU1QkxJU1QxJTVEJTIwJTVCTlVNJTVEJTIwdGltZXMlMjBpbiUyMCU1QkxJU1QyJTVEJTIyJTNBJTIyJUU1JUIwJTg2JTVCTElTVDElNUQlRTklODclOEQlRTUlQTQlOEQlNUJOVU0lNUQlRTYlQUMlQTElRTUlOTAlOEUlRTUlOEElQTAlRTUlODUlQTUlNUJMSVNUMiU1RCUyMiUyQyUyMl9yZXBsYWNlJTIwYWxsJTIwJTVCSVRFTTElNUQlMjB3aXRoJTIwJTVCSVRFTTIlNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlM0ElMjIlRTUlQjAlODYlNUJMSVNUJTVEJUU0JUI4JUFEJUU3JTlBJTg0JUU2JTg5JTgwJUU2JTlDJTg5JTVCSVRFTTElNUQlRTYlOUIlQkYlRTYlOEQlQTIlRTQlQjglQkElNUJJVEVNMiU1RCUyMiUyQyUyMl9yZXZlcnNlZCUyMiUzQSUyMiVFNSU4RiU4RCVFOCVCRCVBQyUyMiUyQyUyMl9zZXQlMjAlNUJMSVNUJTVEJTIwdG8lMjBhcnJheSUyMCU1QkFSUkFZJTVEJTIyJTNBJTIyJUU1JUIwJTg2JTVCTElTVCU1RCVFOCVBRSVCRSVFNCVCOCVCQSVFNiU5NSVCMCVFNyVCQiU4NCU1QkFSUkFZJTVEJTIyJTJDJTIyX3NldCUyMGl0ZW1zJTIwb2YlMjAlNUJMSVNUMSU1RCUyMHRvJTIwJTVCTElTVDIlNUQlMjIlM0ElMjIlRTUlQjAlODYlNUJMSVNUMSU1RCVFNCVCOCVBRCVFNyU5QSU4NCVFNSU4NiU4NSVFNSVBRSVCOSVFOCVBRSVCRSVFNCVCOCVCQSU1QkxJU1QyJTVEJTIyJTJDJTIyX3NldCUyMG9yZGVyJTIwb2YlMjAlNUJMSVNUJTVEJTIwdG8lMjAlNUJPUkRFUiU1RCUyMiUzQSUyMiVFNSVCMCU4NiU1QkxJU1QlNUQlRTclOUElODQlRTklQTElQkElRTUlQkElOEYlRTglQUUlQkUlRTQlQjglQkElNUJPUkRFUiU1RCUyMiU3RCU3RCklM0IlMkYqJTIwZW5kJTIwZ2VuZXJhdGVkJTIwbDEwbiUyMGNvZGUlMjAqJTJGKGZ1bmN0aW9uJTIwKFNjcmF0Y2gpJTIwJTdCJTBBJTIwJTIwJTIydXNlJTIwc3RyaWN0JTIyJTNCJTBBJTBBJTIwJTIwJTJGKiUyMC0tJTIwU0VUVVAlMjAtLSUyMColMkYlMEElMjAlMjBjb25zdCUyMHZtJTIwJTNEJTIwU2NyYXRjaC52bSUzQiUwQSUyMCUyMGNvbnN0JTIwcnVudGltZSUyMCUzRCUyMHZtLnJ1bnRpbWUlM0IlMEElMEElMjAlMjBjb25zdCUyMGdldFZhck9iamVjdEZyb21OYW1lJTIwJTNEJTIwZnVuY3Rpb24lMjAobmFtZSUyQyUyMHV0aWwlMkMlMjB0eXBlKSUyMCU3QiUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwc3RhZ2VUYXJnZXQlMjAlM0QlMjBydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCklM0IlMEElMjAlMjAlMjAlMjBjb25zdCUyMHRhcmdldCUyMCUzRCUyMHV0aWwudGFyZ2V0JTNCJTBBJTIwJTIwJTIwJTIwbGV0JTIwbGlzdE9iamVjdCUyMCUzRCUyME9iamVjdC5jcmVhdGUobnVsbCklM0IlMEElMEElMjAlMjAlMjAlMjBsaXN0T2JqZWN0JTIwJTNEJTIwc3RhZ2VUYXJnZXQubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKG5hbWUlMkMlMjB0eXBlKSUzQiUwQSUyMCUyMCUyMCUyMGlmJTIwKGxpc3RPYmplY3QpJTIwcmV0dXJuJTIwbGlzdE9iamVjdCUzQiUwQSUyMCUyMCUyMCUyMGxpc3RPYmplY3QlMjAlM0QlMjB0YXJnZXQubG9va3VwVmFyaWFibGVCeU5hbWVBbmRUeXBlKG5hbWUlMkMlMjB0eXBlKSUzQiUwQSUyMCUyMCUyMCUyMGlmJTIwKGxpc3RPYmplY3QpJTIwcmV0dXJuJTIwbGlzdE9iamVjdCUzQiUwQSUyMCUyMCU3RCUzQiUwQSUwQSUyMCUyMGNsYXNzJTIwRGF0YSUyMCU3QiUwQSUyMCUyMCUyMCUyMGdldEluZm8oKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlkJTNBJTIwJTIybG1zRGF0YSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG5hbWUlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJMaXN0JTIwVG9vbHMlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29sb3IxJTNBJTIwJTIyJTIzZmY2NjFhJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29sb3IyJTNBJTIwJTIyJTIzZjI1OTBkJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29sb3IzJTNBJTIwJTIyJTIzZTY0ZDAwJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tzJTNBJTIwJTVCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZGVsZXRlSXRlbXMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5DT01NQU5EJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmRlbGV0ZSUyMGl0ZW1zJTIwJTVCTlVNMSU1RCUyMHRvJTIwJTVCTlVNMiU1RCUyMG9mJTIwJTVCTElTVCU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU0xJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU0yJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmRlbGV0ZUFsbE9mSXRlbSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkNPTU1BTkQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyZGVsZXRlJTIwYWxsJTIwJTVCSVRFTSU1RCUyMGluJTIwJTVCTElTVCU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBJVEVNJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMnRoaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTElTVCUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIybGlzdHMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJyZXBsYWNlQWxsT2ZJdGVtJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJyZXBsYWNlJTIwYWxsJTIwJTVCSVRFTTElNUQlMjB3aXRoJTIwJTVCSVRFTTIlNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwSVRFTTElM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYXBwbGUlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBJVEVNMiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJiYW5hbmElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnJlcGVhdExpc3QlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5DT01NQU5EJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJlcGVhdCUyMCU1QkxJU1QxJTVEJTIwJTVCTlVNJTVEJTIwdGltZXMlMjBpbiUyMCU1QkxJU1QyJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QxJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QyJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZ2V0TGlzdEpvaW4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJsaXN0JTIwJTVCTElTVCU1RCUyMGpvaW5lZCUyMGJ5JTIwJTVCU1RSSU5HJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRpc2FibGVNb25pdG9yJTNBJTIwdHJ1ZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMmxpc3RzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMiUyQyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnRpbWVzSXRlbUFwcGVhcnMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjIlMjMlMjBvZiUyMHRpbWVzJTIwJTVCSVRFTSU1RCUyMGFwcGVhcnMlMjBpbiUyMCU1QkxJU1QlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGlzYWJsZU1vbml0b3IlM0ElMjB0cnVlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwSVRFTSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJ0aGluZyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMmxpc3RzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaXRlbUluZGV4JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyaW5kZXglMjAlMjMlMjAlNUJJTkRFWCU1RCUyMG9mJTIwaXRlbSUyMCU1QklURU0lNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGlzYWJsZU1vbml0b3IlM0ElMjB0cnVlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwSU5ERVglM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyMSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMElURU0lM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIydGhpbmclMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmxpc3RJc0VtcHR5JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjIlNUJMSVNUJTVEJTIwaXMlMjBlbXB0eSUzRiUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkaXNhYmxlTW9uaXRvciUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMml0ZW1OdW1FeGlzdHMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMml0ZW0lMjAlNUJOVU0lNUQlMjBleGlzdHMlMjBpbiUyMCU1QkxJU1QlNUQlM0YlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGlzYWJsZU1vbml0b3IlM0ElMjB0cnVlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMjElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMm9yZGVySXMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMm9yZGVyJTIwb2YlMjAlNUJMSVNUJTVEJTIwaXMlMjAlNUJPUkRFUiU1RCUzRiUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkaXNhYmxlTW9uaXRvciUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9SREVSJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJvcmRlclR5cGVTb3J0JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyb3JkZXJMaXN0JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJzZXQlMjBvcmRlciUyMG9mJTIwJTVCTElTVCU1RCUyMHRvJTIwJTVCT1JERVIlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGlzYWJsZU1vbml0b3IlM0ElMjB0cnVlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTElTVCUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIybGlzdHMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPUkRFUiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJyZXZlcnNlZCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJvcmRlclR5cGUlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJzZXRMaXN0VG9MaXN0JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJzZXQlMjBpdGVtcyUyMG9mJTIwJTVCTElTVDElNUQlMjB0byUyMCU1QkxJU1QyJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QxJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QyJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJsaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmpvaW5MaXN0cyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkNPTU1BTkQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyY29uY2F0ZW5hdGUlMjAlNUJMSVNUMSU1RCUyMG9udG8lMjAlNUJMSVNUMiU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUMSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIybGlzdHMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMSVNUMiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIybGlzdHMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJmb3JFYWNoTGlzdEl0ZW0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5MT09QJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmZvciUyMGVhY2glMjBpdGVtJTIwdmFsdWUlMjAlNUJWQVIlNUQlMjBpbiUyMCU1QkxJU1QlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaGlkZUZyb21QYWxldHRlJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwIXJ1bnRpbWUuZXh0ZW5zaW9uTWFuYWdlci5pc0V4dGVuc2lvbkxvYWRlZCglMjJsbXNUZW1wVmFyczIlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVkFSJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMnRocmVhZCUyMHZhcmlhYmxlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTElTVCUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtZW51JTNBJTIwJTIybGlzdHMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJmb3JFYWNoTGlzdEl0ZW1OdW0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5MT09QJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmZvciUyMGVhY2glMjBpdGVtJTIwJTIzJTIwJTVCVkFSJTVEJTIwaW4lMjAlNUJMSVNUJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGhpZGVGcm9tUGFsZXR0ZSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCFydW50aW1lLmV4dGVuc2lvbk1hbmFnZXIuaXNFeHRlbnNpb25Mb2FkZWQoJTIybG1zVGVtcFZhcnMyJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFZBUiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJ0aHJlYWQlMjB2YXJpYWJsZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMmxpc3RzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyc2V0TGlzdEFycmF5JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJzZXQlMjAlNUJMSVNUJTVEJTIwdG8lMjBhcnJheSUyMCU1QkFSUkFZJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRpc2FibGVNb25pdG9yJTNBJTIwdHJ1ZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMmxpc3RzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQVJSQVklM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdFZhbHVlJTNBJTIwJyU1QiUyMmFwcGxlJTIyJTJDJTIyYmFuYW5hJTIyJTVEJyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmdldExpc3RBcnJheSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMiU1QkxJU1QlNUQlMjBhcyUyMGFycmF5JTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRpc2FibGVNb25pdG9yJTNBJTIwdHJ1ZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExJU1QlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMmxpc3RzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudXMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGVyYXRvciUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFjY2VwdFJlcG9ydGVycyUzQSUyMGZhbHNlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaXRlbXMlM0ElMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTNEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjIlM0QlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTNFJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjIlM0UlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTNDJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjIlM0MlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcmRlclR5cGUlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhY2NlcHRSZXBvcnRlcnMlM0ElMjBmYWxzZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGl0ZW1zJTNBJTIwJTVCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJldmVyc2VkJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhbHVlJTNBJTIwJTIycmV2ZXJzZWQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyYXNjZW5kaW5nJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhbHVlJTNBJTIwJTIyYXNjZW5kaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmRlc2NlbmRpbmclMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjJkZXNjZW5kaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJhbmRvbWl6ZWQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjJyYW5kb21pc2VkJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3JkZXJUeXBlU29ydCUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFjY2VwdFJlcG9ydGVycyUzQSUyMGZhbHNlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaXRlbXMlM0ElMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyYXNjZW5kaW5nJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhbHVlJTNBJTIwJTIyYXNjZW5kaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmRlc2NlbmRpbmclMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjJkZXNjZW5kaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaW5kZXhUeXBlJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYWNjZXB0UmVwb3J0ZXJzJTNBJTIwZmFsc2UlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpdGVtcyUzQSUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJmaXJzdCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YWx1ZSUzQSUyMCUyMmZpcnN0JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmxhc3QlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFsdWUlM0ElMjAlMjJsYXN0JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJhbmRvbSUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YWx1ZSUzQSUyMCUyMnJhbmRvbSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGxpc3RzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYWNjZXB0UmVwb3J0ZXJzJTNBJTIwdHJ1ZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGl0ZW1zJTNBJTIwJTIyX2dldExpc3RzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwZGVsZXRlSXRlbXMoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0JTIwJTNEJTIwZ2V0VmFyT2JqZWN0RnJvbU5hbWUoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuTElTVCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGlzdCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghbGlzdCklMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdExlbmd0aCUyMCUzRCUyMGxpc3QudmFsdWUubGVuZ3RoJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwbnVtMSUyMCUzRCUyMDAlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsZXQlMjBudW0yJTIwJTNEJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0KSUyMHJldHVybiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGFyZ3MuTlVNMSUyMCUzRSUyMGFyZ3MuTlVNMiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBudW0xJTIwJTNEJTIwYXJncy5OVU0yJTIwLSUyMDElM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBudW0yJTIwJTNEJTIwYXJncy5OVU0xJTIwLSUyMDElM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBlbHNlJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbnVtMSUyMCUzRCUyMGFyZ3MuTlVNMSUyMC0lMjAxJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbnVtMiUyMCUzRCUyMGFyZ3MuTlVNMiUyMC0lMjAxJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0UGFydDElMjAlM0QlMjBsaXN0LnZhbHVlLnNsaWNlKDAlMkMlMjBudW0xKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdFBhcnQyJTIwJTNEJTIwbGlzdC52YWx1ZS5zbGljZShudW0yJTIwJTJCJTIwMSUyQyUyMGxpc3RMZW5ndGgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGlzdC52YWx1ZSUyMCUzRCUyMGxpc3RQYXJ0MS5jb25jYXQobGlzdFBhcnQyKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGRlbGV0ZUFsbE9mSXRlbShhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxpc3QlMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0KSUyMHJldHVybiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbmV3TGlzdCUyMCUzRCUyMGxpc3QudmFsdWUuZmlsdGVyKGZ1bmN0aW9uJTIwKG1vZGVsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMG1vZGVsJTIwISUzRCUzRCUyMGFyZ3MuSVRFTSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsaXN0LnZhbHVlJTIwJTNEJTIwbmV3TGlzdCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJlcGxhY2VBbGxPZkl0ZW0oYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0JTIwJTNEJTIwZ2V0VmFyT2JqZWN0RnJvbU5hbWUoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuTElTVCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGlzdCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghbGlzdCklMjByZXR1cm4lM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxpc3RMZW5ndGglMjAlM0QlMjBsaXN0LnZhbHVlLmxlbmd0aCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwaXRlbTElMjAlM0QlMjBhcmdzLklURU0xJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBpdGVtMiUyMCUzRCUyMGFyZ3MuSVRFTTIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsZXQlMjBuZXdMaXN0JTIwJTNEJTIwJTVCJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwZm9yJTIwKGxldCUyMGklMjAlM0QlMjAwJTNCJTIwaSUyMCUzQyUyMGxpc3RMZW5ndGglM0IlMjBpJTJCJTJCKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGxpc3QudmFsdWUlNUJpJTVEJTIwJTNEJTNEJTNEJTIwaXRlbTEpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbmV3TGlzdC5wdXNoKGl0ZW0yKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGVsc2UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBuZXdMaXN0LnB1c2gobGlzdC52YWx1ZSU1QmklNUQpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGlzdC52YWx1ZSUyMCUzRCUyMG5ld0xpc3QlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjByZXBlYXRMaXN0KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdDElMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUMSklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGlzdCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghbGlzdDEpJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0MiUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0MiklMjByZXR1cm4lM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGN1cnJlbnRWYWwlMjAlM0QlMjBsaXN0MS52YWx1ZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGZvciUyMChsZXQlMjBpJTIwJTNEJTIwMCUzQiUyMGklMjAlM0MlMjBhcmdzLk5VTSUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbGlzdDIudmFsdWUlMjAlM0QlMjBsaXN0Mi52YWx1ZS5jb25jYXQoY3VycmVudFZhbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBnZXRMaXN0Sm9pbihhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxpc3QlMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0KSUyMHJldHVybiUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGxpc3QudmFsdWUuam9pbihhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjB0aW1lc0l0ZW1BcHBlYXJzKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdCUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmxpc3QlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIWxpc3QpJTIwcmV0dXJuJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGxpc3QudmFsdWUuZmlsdGVyKChtb2RlbCklMjAlM0QlM0UlMjBtb2RlbCUyMCUzRCUzRCUyMGFyZ3MuSVRFTSkubGVuZ3RoJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwaXRlbUluZGV4KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdCUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmxpc3QlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIWxpc3QpJTIwcmV0dXJuJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGxldCUyMGluZGV4ZXMlMjAlM0QlMjAlNUIlNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBmb3IlMjAobGV0JTIwaW5kZXglMjAlM0QlMjAwJTNCJTIwaW5kZXglMjAlM0MlMjBsaXN0LnZhbHVlLmxlbmd0aCUzQiUyMGluZGV4JTJCJTJCKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGxpc3QudmFsdWUlNUJpbmRleCU1RCUyMCUzRCUzRCUzRCUyMGFyZ3MuSVRFTSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpbmRleGVzLnB1c2goaW5kZXgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwc3dpdGNoJTIwKGFyZ3MuSU5ERVgpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMl9maXJzdF8lMjIlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBTY3JhdGNoLkNhc3QudG9OdW1iZXIoaW5kZXhlcyU1QjAlNUQlMjAlMkIlMjAxKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJfbGFzdF8lMjIlM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBTY3JhdGNoLkNhc3QudG9OdW1iZXIoaW5kZXhlcyU1QmluZGV4ZXMubGVuZ3RoJTIwLSUyMDElNUQlMjAlMkIlMjAxKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJfcmFuZG9tXyUyMiUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMFNjcmF0Y2guQ2FzdC50b051bWJlciglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpbmRleGVzJTVCTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpJTIwKiUyMGluZGV4ZXMubGVuZ3RoKSU1RCUyMCUyQiUyMDElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGVmYXVsdCUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMFNjcmF0Y2guQ2FzdC50b051bWJlcihpbmRleGVzJTVCYXJncy5JTkRFWCUyMC0lMjAxJTVEJTIwJTJCJTIwMSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBsaXN0SXNFbXB0eShhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxpc3QlMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0KSUyMHJldHVybiUyMHRydWUlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChsaXN0LnZhbHVlLmxlbmd0aCUyMCUzRSUyMDApJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwaXRlbU51bUV4aXN0cyhhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxpc3QlMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0KSUyMHJldHVybiUyMGZhbHNlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0SW5kZXglMjAlM0QlMjBTY3JhdGNoLkNhc3QudG9MaXN0SW5kZXgoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJncy5OVU0lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBsaXN0LnZhbHVlLmxlbmd0aCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGZhbHNlJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGxpc3RJbmRleCUyMCUzRCUzRCUzRCUyMFNjcmF0Y2guQ2FzdC5MSVNUX0lOVkFMSUQpJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwb3JkZXJJcyhhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxpc3QlMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0KSUyMHJldHVybiUyMGZhbHNlJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwZm9yJTIwKGxldCUyMGklMjAlM0QlMjAwJTNCJTIwaSUyMCUzQyUyMGxpc3QudmFsdWUubGVuZ3RoJTIwLSUyMDElM0IlMjBpJTJCJTJCKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwY29tcGFyZSUyMCUzRCUyMFNjcmF0Y2guQ2FzdC5jb21wYXJlKGxpc3QudmFsdWUlNUJpJTIwJTJCJTIwMSU1RCUyQyUyMGxpc3QudmFsdWUlNUJpJTVEKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGNvbXBhcmUlMjAlM0UlMjAwJTIwJTI2JTI2JTIwYXJncy5PUkRFUiUyMCUzRCUzRCUzRCUyMCUyMmRlc2NlbmRpbmclMjIpJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChjb21wYXJlJTIwJTNDJTIwMCUyMCUyNiUyNiUyMGFyZ3MuT1JERVIlMjAlM0QlM0QlM0QlMjAlMjJhc2NlbmRpbmclMjIpJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwb3JkZXJMaXN0KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdCUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmxpc3QlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIWxpc3QpJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoYXJncy5PUkRFUiUyMCUzRCUzRCUzRCUyMCUyMnJldmVyc2VkJTIyKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGxpc3QudmFsdWUucmV2ZXJzZSgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTIwZWxzZSUyMGlmJTIwKGFyZ3MuT1JERVIlMjAlM0QlM0QlM0QlMjAlMjJyYW5kb21pc2VkJTIyKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwcmFuZG9taXNlZCUyMCUzRCUyMGxpc3QudmFsdWUlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAubWFwKCh2YWx1ZSklMjAlM0QlM0UlMjAoJTdCJTIwdmFsdWUlMkMlMjBzb3J0JTNBJTIwTWF0aC5yYW5kb20oKSUyMCU3RCkpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLnNvcnQoKGElMkMlMjBiKSUyMCUzRCUzRSUyMGEuc29ydCUyMC0lMjBiLnNvcnQpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLm1hcCgoJTdCJTIwdmFsdWUlMjAlN0QpJTIwJTNEJTNFJTIwdmFsdWUpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbGlzdC52YWx1ZSUyMCUzRCUyMHJhbmRvbWlzZWQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBlbHNlJTIwaWYlMjAoYXJncy5PUkRFUiUyMCUzRCUzRCUzRCUyMCUyMmFzY2VuZGluZyUyMiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBsaXN0LnZhbHVlLnNvcnQoU2NyYXRjaC5DYXN0LmNvbXBhcmUpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTIwZWxzZSUyMGlmJTIwKGFyZ3MuT1JERVIlMjAlM0QlM0QlM0QlMjAlMjJkZXNjZW5kaW5nJTIyKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGxpc3QudmFsdWUuc29ydChTY3JhdGNoLkNhc3QuY29tcGFyZSkucmV2ZXJzZSgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGlzdC5fbW9uaXRvclVwVG9EYXRlJTIwJTNEJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBzZXRMaXN0VG9MaXN0KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdDElMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUMSklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGlzdCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghbGlzdDEpJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0MiUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0MiklMjByZXR1cm4lM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsaXN0MS52YWx1ZSUyMCUzRCUyMGxpc3QyLnZhbHVlJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwam9pbkxpc3RzKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdDElMjAlM0QlMjBnZXRWYXJPYmplY3RGcm9tTmFtZSglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTY3JhdGNoLkNhc3QudG9TdHJpbmcoYXJncy5MSVNUMSklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGlzdCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghbGlzdDEpJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0MiUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXN0JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFsaXN0MiklMjByZXR1cm4lM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsaXN0Mi52YWx1ZSUyMCUzRCUyMGxpc3QyLnZhbHVlLmNvbmNhdChsaXN0MS52YWx1ZSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBmb3JFYWNoTGlzdEl0ZW0oYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0JTIwJTNEJTIwZ2V0VmFyT2JqZWN0RnJvbU5hbWUoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuTElTVCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGlzdCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghbGlzdCklMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdExlbmd0aCUyMCUzRCUyMGxpc3QudmFsdWUubGVuZ3RoJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0aHJlYWQlMjAlM0QlMjB1dGlsLnRocmVhZCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCF0aHJlYWQudmFyaWFibGVzKSUyMHRocmVhZC52YXJpYWJsZXMlMjAlM0QlMjAlN0IlN0QlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHZhcnMlMjAlM0QlMjB0aHJlYWQudmFyaWFibGVzJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodHlwZW9mJTIwdXRpbC5zdGFja0ZyYW1lLmluZGV4JTIwJTNEJTNEJTNEJTIwJTIydW5kZWZpbmVkJTIyKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwuc3RhY2tGcmFtZS5pbmRleCUyMCUzRCUyMDAlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCh1dGlsLnN0YWNrRnJhbWUuaW5kZXglMjAlM0MlMjBsaXN0TGVuZ3RoKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGxldCUyMGl0ZW1JbmRleCUyMCUzRCUyMHV0aWwuc3RhY2tGcmFtZS5pbmRleCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhcnMlNUJhcmdzLlZBUiU1RCUyMCUzRCUyMGxpc3QudmFsdWUlNUJpdGVtSW5kZXglNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsLnN0YWNrRnJhbWUuaW5kZXglMkIlMkIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwZm9yRWFjaExpc3RJdGVtTnVtKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdCUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmxpc3QlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIWxpc3QpJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGxpc3RMZW5ndGglMjAlM0QlMjBsaXN0LnZhbHVlLmxlbmd0aCUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdGhyZWFkJTIwJTNEJTIwdXRpbC50aHJlYWQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGhyZWFkLnZhcmlhYmxlcyklMjB0aHJlYWQudmFyaWFibGVzJTIwJTNEJTIwJTdCJTdEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB2YXJzJTIwJTNEJTIwdGhyZWFkLnZhcmlhYmxlcyUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHR5cGVvZiUyMHV0aWwuc3RhY2tGcmFtZS5pbmRleCUyMCUzRCUzRCUzRCUyMCUyMnVuZGVmaW5lZCUyMiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsLnN0YWNrRnJhbWUuaW5kZXglMjAlM0QlMjAwJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodXRpbC5zdGFja0ZyYW1lLmluZGV4JTIwJTNDJTIwbGlzdExlbmd0aCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsLnN0YWNrRnJhbWUuaW5kZXglMkIlMkIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YXJzJTVCYXJncy5WQVIlNUQlMjAlM0QlMjB1dGlsLnN0YWNrRnJhbWUuaW5kZXglM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwc2V0TGlzdEFycmF5KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdCUyMCUzRCUyMGdldFZhck9iamVjdEZyb21OYW1lKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNjcmF0Y2guQ2FzdC50b1N0cmluZyhhcmdzLkxJU1QpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmxpc3QlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIWxpc3QpJTIwcmV0dXJuJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwYXJyYXklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjB0cnklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcnJheSUyMCUzRCUyMEpTT04ucGFyc2UoYXJncy5BUlJBWSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBjYXRjaCUyMChlcnJvciklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghQXJyYXkuaXNBcnJheShhcnJheSkpJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBuZXdBcnJheSUyMCUzRCUyMGFycmF5JTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGlzdC52YWx1ZSUyMCUzRCUyMG5ld0FycmF5JTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGlzdC5fbW9uaXRvclVwVG9EYXRlJTIwJTNEJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBnZXRMaXN0QXJyYXkoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaXN0JTIwJTNEJTIwZ2V0VmFyT2JqZWN0RnJvbU5hbWUoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU2NyYXRjaC5DYXN0LnRvU3RyaW5nKGFyZ3MuTElTVCklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGlzdCUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghbGlzdCklMjByZXR1cm4lMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBKU09OLnN0cmluZ2lmeShsaXN0LnZhbHVlKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMF9nZXRMaXN0cygpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwJTQwdHMtZXhwZWN0LWVycm9yJTIwLSUyMEJsb2NrbHklMjBub3QlMjB0eXBlZCUyMHlldCUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGlzdHMlMjAlM0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlb2YlMjBCbG9ja2x5JTIwJTNEJTNEJTNEJTIwJTIydW5kZWZpbmVkJTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNGJTIwJTVCJTVEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNBJTIwQmxvY2tseS5nZXRNYWluV29ya3NwYWNlKCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAuZ2V0VmFyaWFibGVNYXAoKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC5nZXRWYXJpYWJsZXNPZlR5cGUoJTIybGlzdCUyMiklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAubWFwKChtb2RlbCklMjAlM0QlM0UlMjBtb2RlbC5uYW1lKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGxpc3RzLmxlbmd0aCUyMCUzRSUyMDApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwbGlzdHMlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBlbHNlJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTVCJTIyJTIyJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTdEJTBBJTIwJTIwU2NyYXRjaC5leHRlbnNpb25zLnJlZ2lzdGVyKG5ldyUyMERhdGEoKSklM0IlMEElN0QpKFNjcmF0Y2gpJTNCJTBBJTIwJTdEKShTY3JhdGNoKSUzQiIsImRhdGE6dGV4dC9qYXZhc2NyaXB0OywoZnVuY3Rpb24oU2NyYXRjaCklMjAlN0IlMjAlMkYlMkYlMjBOYW1lJTNBJTIwTG9va3MlMjBFeHBhbmRlZCUwQSUyRiUyRiUyMElEJTNBJTIwU1Bsb29rc0V4cGFuZGVkJTBBJTJGJTJGJTIwRGVzY3JpcHRpb24lM0ElMjBFeHBhbnNpb24lMjBvZiUyMHRoZSUyMExvb2tzJTIwQ2F0ZWdvcnklMEElMkYlMkYlMjBCeSUzQSUyMFNoYXJrUG9vbCUwQSUyRiUyRiUyMEJ5JTNBJTIwQ1NUMTIyOSUyMCUzQ2h0dHBzJTNBJTJGJTJGc2NyYXRjaC5taXQuZWR1JTJGdXNlcnMlMkZDU1QxMjI5JTJGJTNFJTBBJTJGJTJGJTIwTGljZW5jZSUzQSUyME1JVCUwQSUwQSUyRiUyRiUyMFZlcnNpb24lMjBWLjEuMC40JTBBJTBBKGZ1bmN0aW9uJTIwKFNjcmF0Y2gpJTIwJTdCJTBBJTIwJTIwJTIydXNlJTIwc3RyaWN0JTIyJTNCJTBBJTIwJTIwaWYlMjAoIVNjcmF0Y2guZXh0ZW5zaW9ucy51bnNhbmRib3hlZCklMjB0aHJvdyUyMG5ldyUyMEVycm9yKCUyMkxvb2tzJTIwRXhwYW5kZWQlMjBtdXN0JTIwcnVuJTIwdW5zYW5kYm94ZWQhJTIyKSUzQiUwQSUwQSUyMCUyMGNvbnN0JTIwbWVudUljb25VUkklMjAlM0QlMEElMjJkYXRhJTNBaW1hZ2UlMkZzdmclMkJ4bWwlM0JiYXNlNjQlMkNQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0k1Tnk0M016a2lJR2hsYVdkb2REMGlPVGN1TnpNNUlpQjJhV1YzUW05NFBTSXdJREFnT1RjdU56TTVJRGszTGpjek9TSSUyQlBHY2djM1J5YjJ0bExXMXBkR1Z5YkdsdGFYUTlJakV3SWo0OGNHRjBhQ0JrUFNKTk1DQTBPQzQ0TjBNd0lESXhMamc0SURJeExqZzRJREFnTkRndU9EY2dNSE0wT0M0NE55QXlNUzQ0T0NBME9DNDROeUEwT0M0NE55MHlNUzQ0T0NBME9DNDROeTAwT0M0NE55QTBPQzQ0TjFNd0lEYzFMamcySURBZ05EZ3VPRGNpSUdacGJHdzlJaU0yTXpReVlUWWlMejQ4Y0dGMGFDQmtQU0pOTlM0M09ESWdORGd1T0Rkak1DMHlNeTQzT1RjZ01Ua3VNamt4TFRRekxqQTRPQ0EwTXk0d09EZ3RORE11TURnNFV6a3hMamsxT0NBeU5TNHdOek1nT1RFdU9UVTRJRFE0TGpnM0lEY3lMalkyTnlBNU1TNDVOVGdnTkRndU9EY2dPVEV1T1RVNElEVXVOemd5SURjeUxqWTJOeUExTGpjNE1pQTBPQzQ0TnlJZ1ptbHNiRDBpSXprMlppSXZQanh3WVhSb0lHUTlJazB4Tmk0eE9EWWdORFF1T1RrMll6UXVOVE15TFRVdU16RWdNVFl1TWpFNExURTJMamczTkNBek1pNHhOell0TVRjdU1ETTBJREUzTGpFeE55MHVNVGN5SURJNUxqTXpOQ0F4TWk0MU16a2dNek11TlRJZ01UY3VOakEwSURFdU1ETTVJREV1TWpVNElERXVNU0F5TGpjMk5DNHhOamNnTXk0NU1qY3RNeTQ1TXpVZ05DNDVNREV0TVRVdU9EazRJREUzTGpZNE1pMHpNeTQyT0RjZ01UY3VOelkzTFRFMkxqazFOaTR3T0MweU9DNDNNeTB4TWk0MU9TMHpNaTQzTXpZdE1UY3VOakkwTFM0NU9UTXRNUzR5TkRjdExqYzVNeTB6TGpBMU5DNDFOaTAwTGpZMElpQm1hV3hzUFNJalptWm1JaTglMkJQSEJoZEdnZ1pEMGlUVE0xTGpFME5pQTBOeTQyTVdNd0xUY3VOVE0ySURZdU1URXRNVE11TmpRMUlERXpMalkwTlMweE15NDJORFVnTnk0MU16WWdNQ0F4TXk0Mk5EVWdOaTR4TVNBeE15NDJORFVnTVRNdU5qUTFJREFnTnk0MU16WXROaTR4TVNBeE15NDJORFV0TVRNdU5qUTFJREV6TGpZME5TMDNMalV6TmlBd0xURXpMalkwTlMwMkxqRXhMVEV6TGpZME5TMHhNeTQyTkRVaUlHWnBiR3c5SWlNNU5tWWlMejQ4Y0dGMGFDQmtQU0pOTkRFdU16UXlJRFEzTGpZeFlUY3VORFE1SURjdU5EUTVJREFnTVNBeElERTBMamc1T0NBd0lEY3VORFE1SURjdU5EUTVJREFnTUNBeExURTBMamc1T0NBd0lpQm1hV3hzUFNJalptWm1JaTglMkJQSEJoZEdnZ1pEMGlUVFkxTGpZMUlEYzRMamM1WVRJdU9USWdNaTQ1TWlBd0lEQWdNUzB5TGpreE9DMHlMamt5ZGkwMkxqY3hNbWd0Tmk0M01UTmhNaTQ1TWlBeUxqa3lJREFnTUNBeExUSXVPVEU1TFRJdU9URTVWalkwTGpBMVlUSXVPVElnTWk0NU1pQXdJREFnTVNBeUxqa3hPUzB5TGpreE9HZzJMamN4TTNZdE5pNDNNVE5CTWk0NU1pQXlMamt5SURBZ01DQXhJRFkxTGpZMUlEVXhMalZvTWk0eE9XRXlMamt5SURJdU9USWdNQ0F3SURFZ01pNDVNVGdnTWk0NU1UbDJOaTQzTVROb05pNDNNVE5oTWk0NU1pQXlMamt5SURBZ01DQXhJREl1T1RFNUlESXVPVEU0ZGpJdU1UbGhNaTQ1TWlBeUxqa3lJREFnTUNBeExUSXVPVElnTWk0NU1UaG9MVFl1TnpFeWRqWXVOekV6WVRJdU9USWdNaTQ1TWlBd0lEQWdNUzB5TGpreE9TQXlMamt4T1hvaUlHWnBiR3c5SWlObVptWWlJSE4wY205clpUMGlJemsyWmlJZ2MzUnliMnRsTFhkcFpIUm9QU0k0SWk4JTJCUEhCaGRHZ2daRDBpVFRZMUxqWTFJRGM0TGpjNVlUSXVPVElnTWk0NU1pQXdJREFnTVMweUxqa3hPQzB5TGpreWRpMDJMamN4TW1ndE5pNDNNVE5oTWk0NU1pQXlMamt5SURBZ01DQXhMVEl1T1RFNUxUSXVPVEU1VmpZMExqQTFZVEl1T1RJZ01pNDVNaUF3SURBZ01TQXlMamt4T1MweUxqa3hPR2cyTGpjeE0zWXROaTQzTVROQk1pNDVNaUF5TGpreUlEQWdNQ0F4SURZMUxqWTFJRFV4TGpWb01pNHhPV0V5TGpreUlESXVPVElnTUNBd0lERWdNaTQ1TVRnZ01pNDVNVGwyTmk0M01UTm9OaTQzTVROaE1pNDVNaUF5TGpreUlEQWdNQ0F4SURJdU9URTVJREl1T1RFNGRqSXVNVGxoTWk0NU1pQXlMamt5SURBZ01DQXhMVEl1T1RJZ01pNDVNVGhvTFRZdU56RXlkall1TnpFellUSXVPVElnTWk0NU1pQXdJREFnTVMweUxqa3hPU0F5TGpreE9Yb2lJR1pwYkd3OUlpTm1abVlpTHo0OEwyYyUyQlBDOXpkbWMlMkIlMjIlM0IlMEElMEElMjAlMjBjb25zdCUyMHZtJTIwJTNEJTIwU2NyYXRjaC52bSUzQiUwQSUyMCUyMGNvbnN0JTIwQ2FzdCUyMCUzRCUyMFNjcmF0Y2guQ2FzdCUzQiUwQSUyMCUyMGNvbnN0JTIwcnVudGltZSUyMCUzRCUyMHZtLnJ1bnRpbWUlM0IlMEElMjAlMjBjb25zdCUyMGxvb2tzQ29yZSUyMCUzRCUyMHJ1bnRpbWUuZXh0X3NjcmF0Y2gzX2xvb2tzJTNCJTBBJTIwJTIwY29uc3QlMjBpc1BNJTIwJTNEJTIwU2NyYXRjaC5leHRlbnNpb25zLmlzUGVuZ3Vpbk1vZCUzQiUwQSUwQSUyMCUyMGNvbnN0JTIwcmVuZGVyJTIwJTNEJTIwdm0ucmVuZGVyZXIlM0IlMEElMjAlMjBjb25zdCUyMHR3Z2wlMjAlM0QlMjByZW5kZXIuZXhwb3J0cy50d2dsJTNCJTBBJTBBJTIwJTIwY29uc3QlMjBkcmF3YWJsZUtleSUyMCUzRCUyMFN5bWJvbCglMjJTUGxvb2tzS2V5JTIyKSUzQiUwQSUyMCUyMGNvbnN0JTIwTUFYX1JFUExBQ0VSUyUyMCUzRCUyMDE1JTNCJTBBJTBBJTIwJTIwY29uc3QlMjBuZXdTaW5nbGVFZmZlY3RzJTIwJTNEJTIwJTdCJTBBJTIwJTIwJTIwJTIwc2F0dXJhdGlvbiUzQSUyMDElMkMlMjBvcGFxdWUlM0ElMjAwJTJDJTIwY29udHJhc3QlM0ElMjAxJTJDJTBBJTIwJTIwJTIwJTIwcG9zdGVyaXplJTNBJTIwMCUyQyUyMHNlcGlhJTNBJTIwMCUyQyUyMGJsb29tJTNBJTIwMCUwQSUyMCUyMCU3RCUzQiUwQSUyMCUyMGNvbnN0JTIwZ2VuRWZmZWN0RmFjdG9yeSUyMCUzRCUyMCgpJTIwJTNEJTNFJTIwJTdCJTBBJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwd2FycCUzQSUyMCU1QjAuNSUyQyUyMC0wLjUlMkMlMjAtMC41JTJDJTIwLTAuNSUyQyUyMC0wLjUlMkMlMjAwLjUlMkMlMjAwLjUlMkMlMjAwLjUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjB0aW50JTNBJTIwJTVCMSUyQyUyMDElMkMlMjAxJTJDJTIwMSU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMHJlcGxhY2VycyUzQSUyMCU1QiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMG1hc2tUZXh0dXJlJTNBJTIwJTIyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwb2xkTWFzayUzQSUyMCUyMiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMHNob3VsZE1hc2slM0ElMjAwJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwbmV3RWZmZWN0cyUzQSUyMCU3QiUyMC4uLm5ld1NpbmdsZUVmZmVjdHMlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlM0IlMEElMjAlMjAlN0QlM0IlMEElMEElMjAlMjBjb25zdCUyMGRlZmF1bHRXYXJwQ2FjaGUlMjAlM0QlMjAlMjIwLjUlMkMtMC41JTJDLTAuNSUyQy0wLjUlMkMtMC41JTJDMC41JTJDMC41JTJDMC41JTIyJTNCJTBBJTIwJTIwY29uc3QlMjByZXBsYWNlRnJvbSUyMCUzRCUyMG5ldyUyMEZsb2F0MzJBcnJheShNQVhfUkVQTEFDRVJTJTIwKiUyMDMpLmZpbGwoMCklM0IlMEElMjAlMjBjb25zdCUyMHJlcGxhY2VUbyUyMCUzRCUyMG5ldyUyMEZsb2F0MzJBcnJheShNQVhfUkVQTEFDRVJTJTIwKiUyMDQpLmZpbGwoMCklM0IlMEElMjAlMjBjb25zdCUyMHJlcGxhY2VUaHJlc2glMjAlM0QlMjBuZXclMjBGbG9hdDMyQXJyYXkoTUFYX1JFUExBQ0VSUykuZmlsbCgxKSUzQiUwQSUwQSUyMCUyMCUyRiolMjBwYXRjaCUyMGZvciUyMG5ldyUyMGVmZmVjdHMlMjAqJTJGJTBBJTIwJTIwZnVuY3Rpb24lMjBpbml0RHJhd2FibGUoZHJhd2FibGUpJTIwJTdCJTBBJTIwJTIwJTIwJTIwaWYlMjAoIWRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQpJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RCUyMCUzRCUyMGdlbkVmZmVjdEZhY3RvcnkoKSUzQiUwQSUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyRiUyRiUyMENsZWFyJTIwdGhlJTIwcmVuZGVyZXIncyUyMHNoYWRlciUyMGNhY2hlJTIwc2luY2UlMjB3ZSdyZSUyMHBhdGNoaW5nJTIwc2hhZGVycyUwQSUyMCUyMGZvciUyMChjb25zdCUyMGNhY2hlJTIwb2YlMjBPYmplY3QudmFsdWVzKHJlbmRlci5fc2hhZGVyTWFuYWdlci5fc2hhZGVyQ2FjaGUpKSUyMCU3QiUwQSUyMCUyMCUyMCUyMGZvciUyMChjb25zdCUyMHByb2dyYW1JbmZvJTIwb2YlMjBjYWNoZSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChwcm9ncmFtSW5mbyklMjByZW5kZXIuZ2wuZGVsZXRlUHJvZ3JhbShwcm9ncmFtSW5mby5wcm9ncmFtKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGNhY2hlLmxlbmd0aCUyMCUzRCUyMDAlM0IlMEElMjAlMjAlN0QlMEElMEElMjAlMjBsZXQlMjBwYXRjaFNoYWRlcnMlMjAlM0QlMjBmYWxzZSUzQiUwQSUyMCUyMGNvbnN0JTIwb2dDcmVhdGVQcm9ncmFtSW5mbyUyMCUzRCUyMHR3Z2wuY3JlYXRlUHJvZ3JhbUluZm8lM0IlMEElMjAlMjB0d2dsLmNyZWF0ZVByb2dyYW1JbmZvJTIwJTNEJTIwZnVuY3Rpb24lMjAoLi4uYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMkYlMkYlMjBwZXJmb3JtJTIwYSUyMHN0cmluZyUyMGZpbmQtYW5kLXJlcGxhY2UlMjBvbiUyMHRoZSUyMHNoYWRlciUyMHRleHQlMEElMjAlMjAlMjAlMjBpZiUyMChwYXRjaFNoYWRlcnMlMjAlMjYlMjYlMjBhcmdzJTVCMSU1RCUyMCUyNiUyNiUyMGFyZ3MlNUIxJTVEJTVCMCU1RCUyMCUyNiUyNiUyMGFyZ3MlNUIxJTVEJTVCMSU1RCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBhcmdzJTVCMSU1RCU1QjAlNUQlMjAlM0QlMjBhcmdzJTVCMSU1RCU1QjAlNUQlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjByZXBsYWNlJTIwYXR0cmlidXRlJTIwcHJvcGVydGllcyUyMHdpdGglMjB2YXJpYWJsZXMlMjB3ZSUyMGNhbiUyMG1vZGlmeSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMC5yZXBsYWNlQWxsKCUyMnZlYzQoYV9wb3NpdGlvbiUyMiUyQyUyMCUyMnZlYzQocG9zaXRpb25TUCUyMiklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAucmVwbGFjZSglMjJ2X3RleENvb3JkJTIwJTNEJTIwYV90ZXhDb29yZCUzQiUyMiUyQyUyMCUyMiUyMiklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAucmVwbGFjZSglMjIlMjNpZiUyMCEoZGVmaW5lZChEUkFXX01PREVfbGluZSklMjAlN0MlN0MlMjBkZWZpbmVkKERSQVdfTU9ERV9iYWNrZ3JvdW5kKSklMjIlMkMlMjAlMjIlMjNpZiUyMDElMjIpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwLnJlcGxhY2UoJTYwdm9pZCUyMG1haW4oKSUyMCU3QiU2MCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU2MHVuaWZvcm0lMjB2ZWMyJTIwdV93YXJwU1AlNUI0JTVEJTNCJTBBJTBBdm9pZCUyMG1haW4oKSUyMCU3QiUwQSUyMCUyMHZlYzIlMjBwb3NpdGlvblNQJTIwJTNEJTIwYV9wb3NpdGlvbiUzQiUwQSUyMCUyMCUyM2lmbmRlZiUyMERSQVdfTU9ERV9iYWNrZ3JvdW5kJTBBJTIwJTIwdl90ZXhDb29yZCUyMCUzRCUyMGFfdGV4Q29vcmQlM0IlMEElMjAlMjAlMjNlbmRpZiUwQSUwQSUyMCUyMGZsb2F0JTIwdSUyMCUzRCUyMHZfdGV4Q29vcmQueCUzQiUwQSUyMCUyMGZsb2F0JTIwdiUyMCUzRCUyMHZfdGV4Q29vcmQueSUzQiUwQSUwQSUyMCUyMCUyRiUyRiUyMGFwcGx5JTIwcG9zaXRpb24lMjB3YXJwJTIwKGJpbGluZWFyKSUwQSUyMCUyMHZlYzIlMjB3YXJwZWRQb3MlMjAlM0QlMjAlMEElMjAlMjAlMjAlMjAoMS4wJTIwLSUyMHUpJTIwKiUyMCgxLjAlMjAtJTIwdiklMjAqJTIwdV93YXJwU1AlNUIwJTVEJTIwJTJCJTIwdSUyMColMjAoMS4wJTIwLSUyMHYpJTIwKiUyMHVfd2FycFNQJTVCMSU1RCUyMCUyQiUwQSUyMCUyMCUyMCUyMHUlMjAqJTIwdiUyMColMjB1X3dhcnBTUCU1QjIlNUQlMjAlMkIlMjAoMS4wJTIwLSUyMHUpJTIwKiUyMHYlMjAqJTIwdV93YXJwU1AlNUIzJTVEJTNCJTBBJTBBJTIwJTIwJTJGJTJGJTIwY29tcHV0ZSUyMHclMjBmb3IlMjBwZXJzcGVjdGl2ZSUyMGNvcnJlY3Rpb24lMEElMjAlMjBmbG9hdCUyMHclMjAlM0QlMjAoMS4wJTIwLSUyMHUpJTIwKiUyMCgxLjAlMjAtJTIwdiklMjAlMkIlMjB1JTIwKiUyMCgxLjAlMjAtJTIwdiklMjAlMkIlMjB1JTIwKiUyMHYlMjAlMkIlMjAoMS4wJTIwLSUyMHUpJTIwKiUyMHYlM0IlMEElMEElMjAlMjBwb3NpdGlvblNQJTIwJTNEJTIwd2FycGVkUG9zJTIwJTJGJTIwbWF4KHclMkMlMjAxZS01KSUzQiUwQSUwQSUyMCUyMCUyM2lmZGVmJTIwRFJBV19NT0RFX2JhY2tncm91bmQlMEElMjAlMjBnbF9Qb3NpdGlvbiUyMCUzRCUyMHZlYzQocG9zaXRpb25TUCUyMColMjAyLjAlMkMlMjAwJTJDJTIwMSklM0IlMEElMjAlMjAlMjNlbHNlJTBBJTIwJTIwZ2xfUG9zaXRpb24lMjAlM0QlMjB1X3Byb2plY3Rpb25NYXRyaXglMjAqJTIwdV9tb2RlbE1hdHJpeCUyMColMjB2ZWM0KHBvc2l0aW9uU1AlMkMlMjAwJTJDJTIwMSklM0IlMEElMjAlMjAlMjNlbmRpZiU2MCUwQSUyMCUyMCUyMCUyMCUyMCUyMCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChpc1BNKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMHBlbmd1aW5tb2QlMjBoYXMlMjBza2V3aW5nJTJDJTIwd2hpY2glMjB3ZSUyMGhhdmUlMjB0byUyMGRpc2FibGUlMjBmb3IlMjB3YXJwaW5nJTIwdG8lMjB3b3JrJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJncyU1QjElNUQlNUIwJTVEJTIwJTNEJTIwYXJncyU1QjElNUQlNUIwJTVELnJlcGxhY2UoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTYwZ2xfUG9zaXRpb24lMjAlM0QlMjB1X3Byb2plY3Rpb25NYXRyaXglMjAqJTIwdV9tb2RlbE1hdHJpeCUyMColMjB2ZWM0KHglMkN5JTJDJTIwMCUyQyUyMDEpJTNCJTYwJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTYwZ2xfUG9zaXRpb24lMjAlM0QlMjB1X3Byb2plY3Rpb25NYXRyaXglMjAqJTIwdV9tb2RlbE1hdHJpeCUyMColMjB2ZWM0KHBvc2l0aW9uU1AlMkMlMjAwJTJDJTIwMSklM0IlNjAlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwYXJncyU1QjElNUQlNUIxJTVEJTIwJTNEJTIwYXJncyU1QjElNUQlNUIxJTVELnJlcGxhY2UoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTYwdW5pZm9ybSUyMHNhbXBsZXIyRCUyMHVfc2tpbiUzQiU2MCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU2MHVuaWZvcm0lMjBzYW1wbGVyMkQlMjB1X3NraW4lM0IlMEF1bmlmb3JtJTIwc2FtcGxlcjJEJTIwdV9tYXNrVGV4dHVyZVNQJTNCJTBBdW5pZm9ybSUyMGZsb2F0JTIwdV9zaG91bGRNYXNrU1AlM0IlMEElMEElMjNkZWZpbmUlMjBNQVhfUkVQTEFDRVJTJTIwMTUlMEF1bmlmb3JtJTIwdmVjMyUyMHVfcmVwbGFjZUNvbG9yRnJvbVNQJTVCTUFYX1JFUExBQ0VSUyU1RCUzQiUwQXVuaWZvcm0lMjB2ZWM0JTIwdV9yZXBsYWNlQ29sb3JUb1NQJTVCTUFYX1JFUExBQ0VSUyU1RCUzQiUwQXVuaWZvcm0lMjBmbG9hdCUyMHVfcmVwbGFjZVRocmVzaG9sZFNQJTVCTUFYX1JFUExBQ0VSUyU1RCUzQiUwQXVuaWZvcm0lMjBpbnQlMjB1X251bVJlcGxhY2Vyc1NQJTNCJTBBJTBBdW5pZm9ybSUyMHZlYzQlMjB1X3RpbnRDb2xvclNQJTNCJTBBdW5pZm9ybSUyMGZsb2F0JTIwdV9zYXR1cmF0ZVNQJTNCJTBBdW5pZm9ybSUyMGZsb2F0JTIwdV9vcGFxdWVTUCUzQiUwQXVuaWZvcm0lMjBmbG9hdCUyMHVfY29udHJhc3RTUCUzQiUwQXVuaWZvcm0lMjBmbG9hdCUyMHVfcG9zdGVyaXplU1AlM0IlMEF1bmlmb3JtJTIwZmxvYXQlMjB1X3NlcGlhU1AlM0IlMEF1bmlmb3JtJTIwZmxvYXQlMjB1X2Jsb29tU1AlM0IlMEElMEF2ZWMzJTIwc3BSR0IySFNWKHZlYzMlMjBjKSUyMCU3QiUwQSUyMCUyMHZlYzQlMjBLJTIwJTNEJTIwdmVjNCgwLjAlMkMlMjAtMS4wJTIwJTJGJTIwMy4wJTJDJTIwMi4wJTIwJTJGJTIwMy4wJTJDJTIwLTEuMCklM0IlMEElMjAlMjB2ZWM0JTIwcCUyMCUzRCUyMG1peCh2ZWM0KGMuYmclMkMlMjBLLnd6KSUyQyUyMHZlYzQoYy5nYiUyQyUyMEsueHkpJTJDJTIwc3RlcChjLmIlMkMlMjBjLmcpKSUzQiUwQSUyMCUyMHZlYzQlMjBxJTIwJTNEJTIwbWl4KHZlYzQocC54eXclMkMlMjBjLnIpJTJDJTIwdmVjNChjLnIlMkMlMjBwLnl6eCklMkMlMjBzdGVwKHAueCUyQyUyMGMucikpJTNCJTBBJTBBJTIwJTIwZmxvYXQlMjBkJTIwJTNEJTIwcS54JTIwLSUyMG1pbihxLnclMkMlMjBxLnkpJTNCJTBBJTIwJTIwZmxvYXQlMjBlJTIwJTNEJTIwMS4wZS0xMCUzQiUwQSUyMCUyMHJldHVybiUyMHZlYzMoYWJzKHEueiUyMCUyQiUyMChxLnclMjAtJTIwcS55KSUyMCUyRiUyMCg2LjAlMjAqJTIwZCUyMCUyQiUyMGUpKSUyQyUyMGQlMjAlMkYlMjAocS54JTIwJTJCJTIwZSklMkMlMjBxLngpJTNCJTBBJTdEJTBBdmVjMyUyMHNwSFNWMlJHQih2ZWMzJTIwYyklMjAlN0IlMEElMjAlMjB2ZWM0JTIwSyUyMCUzRCUyMHZlYzQoMS4wJTJDJTIwMi4wJTIwJTJGJTIwMy4wJTJDJTIwMS4wJTIwJTJGJTIwMy4wJTJDJTIwMy4wKSUzQiUwQSUyMCUyMHZlYzMlMjBwJTIwJTNEJTIwYWJzKGZyYWN0KGMueHh4JTIwJTJCJTIwSy54eXopJTIwKiUyMDYuMCUyMC0lMjBLLnd3dyklM0IlMEElMjAlMjByZXR1cm4lMjBjLnolMjAqJTIwbWl4KEsueHh4JTJDJTIwY2xhbXAocCUyMC0lMjBLLnh4eCUyQyUyMDAuMCUyQyUyMDEuMCklMkMlMjBjLnkpJTNCJTBBJTdEJTYwJTBBJTIwJTIwJTIwJTIwJTIwJTIwKS5yZXBsYWNlKCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU2MGdsX0ZyYWdDb2xvci5yZ2IlMjAlM0QlMjBjbGFtcChnbF9GcmFnQ29sb3IucmdiJTIwJTJGJTIwKGdsX0ZyYWdDb2xvci5hJTIwJTJCJTIwZXBzaWxvbiklMkMlMjAwLjAlMkMlMjAxLjApJTNCJTYwJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTYwZ2xfRnJhZ0NvbG9yLnJnYiUyMCUzRCUyMGNsYW1wKGdsX0ZyYWdDb2xvci5yZ2IlMjAlMkYlMjAoZ2xfRnJhZ0NvbG9yLmElMjAlMkIlMjBlcHNpbG9uKSUyQyUyMDAuMCUyQyUyMDEuMCklM0IlMEF2ZWMzJTIwZmluYWxDb2xvciUyMCUzRCUyMGdsX0ZyYWdDb2xvci5yZ2IlM0IlMEFmbG9hdCUyMGZpbmFsQWxwaGElMjAlM0QlMjBnbF9GcmFnQ29sb3IuYSUzQiUwQSUwQWlmJTIwKHVfc2hvdWxkTWFza1NQJTIwJTNFJTIwMC41JTIwJTI2JTI2JTIwZmluYWxBbHBoYSUyMCUzRSUyMDAuMCklMjAlN0IlMEElMjAlMjB2ZWM0JTIwbWFza0NvbG9yJTIwJTNEJTIwdGV4dHVyZTJEKHVfbWFza1RleHR1cmVTUCUyQyUyMHRleGNvb3JkMCklM0IlMEElMjAlMjBtYXNrQ29sb3IucmdiJTIwJTNEJTIwY2xhbXAobWFza0NvbG9yLnJnYiUyMCUyRiUyMChtYXNrQ29sb3IuYSUyMCUyQiUyMGVwc2lsb24pJTJDJTIwMC4wJTJDJTIwMS4wKSUzQiUwQSUyMCUyMGZpbmFsQWxwaGElMjAqJTNEJTIwbWFza0NvbG9yLmElM0IlMEElN0QlMEElMEFpZiUyMCh1X251bVJlcGxhY2Vyc1NQJTIwJTNFJTIwMCklMjBmb3IlMjAoaW50JTIwaSUyMCUzRCUyMDAlM0IlMjBpJTIwJTNDJTIwTUFYX1JFUExBQ0VSUyUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwaWYlMjAoaSUyMCUzRSUzRCUyMHVfbnVtUmVwbGFjZXJzU1ApJTIwYnJlYWslM0IlMEElMEElMjAlMjBmbG9hdCUyMGRpc3QlMjAlM0QlMjBkaXN0YW5jZShmaW5hbENvbG9yJTJDJTIwdV9yZXBsYWNlQ29sb3JGcm9tU1AlNUJpJTVEKSUzQiUwQSUyMCUyMGlmJTIwKGRpc3QlMjAlM0MlM0QlMjB1X3JlcGxhY2VUaHJlc2hvbGRTUCU1QmklNUQpJTIwJTdCJTBBJTIwJTIwJTIwJTIwZmxvYXQlMjBzdHJlbmd0aCUyMCUzRCUyMDEuMCUyMC0lMjAoZGlzdCUyMCUyRiUyMCh1X3JlcGxhY2VUaHJlc2hvbGRTUCU1QmklNUQlMjAlMkIlMjAxLjApKSUzQiUwQSUyMCUyMCUyMCUyMGZpbmFsQ29sb3IlMjAlM0QlMjBtaXgoZmluYWxDb2xvciUyQyUyMHVfcmVwbGFjZUNvbG9yVG9TUCU1QmklNUQucmdiJTJDJTIwc3RyZW5ndGgpJTNCJTBBJTIwJTIwJTIwJTIwaWYlMjAodV9yZXBsYWNlQ29sb3JUb1NQJTVCaSU1RC5hJTIwJTNDJTIwMS4wJTIwJTI2JTI2JTIwc3RyZW5ndGglMjAlM0UlMjAwLjAxKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGZpbmFsQWxwaGElMjAlM0QlMjBjbGFtcChtaXgoZmluYWxBbHBoYSUyQyUyMHVfcmVwbGFjZUNvbG9yVG9TUCU1QmklNUQuYSUyQyUyMHN0cmVuZ3RoKSUyQyUyMDAuMCUyQyUyMDEuMCklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlN0QlMEElN0QlMEElMEElMEFpZiUyMCh1X3NhdHVyYXRlU1AlMjAlM0UlMjAxLjAlMjAlN0MlN0MlMjB1X3NhdHVyYXRlU1AlMjAlM0MlMjAxLjApJTIwJTdCJTBBJTIwJTIwdmVjMyUyMGhzdiUyMCUzRCUyMHNwUkdCMkhTVihmaW5hbENvbG9yKSUzQiUwQSUyMCUyMGlmJTIwKHVfc2F0dXJhdGVTUCUyMCUzQyUyMDAuMCklMjAlN0IlMEElMjAlMjAlMjAlMjBoc3YueCUyMCUzRCUyMG1vZChoc3YueCUyMCUyQiUyMDAuNSUyQyUyMDEuMCklM0IlMEElMjAlMjAlMjAlMjBoc3YueSUyMColM0QlMjAtdV9zYXR1cmF0ZVNQJTNCJTBBJTIwJTIwJTdEJTIwZWxzZSUyMCU3QiUwQSUyMCUyMCUyMCUyMGhzdi55JTIwKiUzRCUyMHVfc2F0dXJhdGVTUCUzQiUwQSUyMCUyMCU3RCUwQSUyMCUyMGZpbmFsQ29sb3IlMjAlM0QlMjBzcEhTVjJSR0IoaHN2KSUzQiUwQSU3RCUwQWZpbmFsQ29sb3IlMjAlM0QlMjAoZmluYWxDb2xvciUyMC0lMjAwLjUpJTIwKiUyMHVfY29udHJhc3RTUCUyMCUyQiUyMDAuNSUzQiUwQWlmJTIwKHVfcG9zdGVyaXplU1AlMjAlM0UlMjAwLjApJTIwZmluYWxDb2xvciUyMCUzRCUyMGZsb29yKGZpbmFsQ29sb3IlMjAqJTIwdV9wb3N0ZXJpemVTUCklMjAlMkYlMjB1X3Bvc3Rlcml6ZVNQJTNCJTBBJTBBaWYlMjAodV9zZXBpYVNQJTIwJTNFJTIwMC4wKSUyMCU3QiUwQSUyMCUyMHZlYzMlMjBzZXBpYUNvbG9yJTIwJTNEJTIwdmVjMyglMEElMjAlMjAlMjAlMjBkb3QoZmluYWxDb2xvciUyQyUyMHZlYzMoMC4zOTMlMkMlMjAwLjc2OSUyQyUyMDAuMTg5KSklMkMlMEElMjAlMjAlMjAlMjBkb3QoZmluYWxDb2xvciUyQyUyMHZlYzMoMC4zNDklMkMlMjAwLjY4NiUyQyUyMDAuMTY4KSklMkMlMEElMjAlMjAlMjAlMjBkb3QoZmluYWxDb2xvciUyQyUyMHZlYzMoMC4yNzIlMkMlMjAwLjUzNCUyQyUyMDAuMTMxKSklMEElMjAlMjApJTNCJTBBJTIwJTIwZmluYWxDb2xvciUyMCUzRCUyMG1peChmaW5hbENvbG9yJTJDJTIwc2VwaWFDb2xvciUyQyUyMHVfc2VwaWFTUCklM0IlMEElN0QlMEFpZiUyMCh1X2Jsb29tU1AlMjAlM0UlMjAwLjApJTIwJTdCJTBBJTIwJTIwdmVjMyUyMGJsb29tJTIwJTNEJTIwbWF4KGZpbmFsQ29sb3IlMjAtJTIwMC40JTJDJTIwMC4wKSUzQiUwQSUwQSUyMCUyMGJsb29tJTIwJTJCJTNEJTIwdGV4dHVyZTJEKHVfc2tpbiUyQyUyMHZfdGV4Q29vcmQlMjAlMkIlMjB2ZWMyKCUyMDAuMDAxJTJDJTIwJTIwMC4wMDEpKS5yZ2IlM0IlMEElMjAlMjBibG9vbSUyMCUyQiUzRCUyMHRleHR1cmUyRCh1X3NraW4lMkMlMjB2X3RleENvb3JkJTIwJTJCJTIwdmVjMigtMC4wMDElMkMlMjAlMjAwLjAwMSkpLnJnYiUzQiUwQSUyMCUyMGJsb29tJTIwJTJCJTNEJTIwdGV4dHVyZTJEKHVfc2tpbiUyQyUyMHZfdGV4Q29vcmQlMjAlMkIlMjB2ZWMyKCUyMDAuMDAxJTJDJTIwLTAuMDAxKSkucmdiJTNCJTBBJTIwJTIwYmxvb20lMjAlMkIlM0QlMjB0ZXh0dXJlMkQodV9za2luJTJDJTIwdl90ZXhDb29yZCUyMCUyQiUyMHZlYzIoLTAuMDAxJTJDJTIwLTAuMDAxKSkucmdiJTNCJTBBJTIwJTIwYmxvb20lMjAqJTNEJTIwMC4yNSUzQiUwQSUwQSUyMCUyMGZpbmFsQ29sb3IlMjAlMkIlM0QlMjBibG9vbSUyMColMjB1X2Jsb29tU1AlM0IlMEElMjAlMjBmaW5hbENvbG9yJTIwJTNEJTIwY2xhbXAoZmluYWxDb2xvciUyQyUyMDAuMCUyQyUyMDEuMCklM0IlMEElN0QlMEElMEFnbF9GcmFnQ29sb3IucmdiJTIwJTNEJTIwZmluYWxDb2xvciUyMColMjB1X3RpbnRDb2xvclNQLnJnYiUzQiUwQWZsb2F0JTIwYmFzZUFscGhhJTIwJTNEJTIwZmluYWxBbHBoYSUzQiUwQWlmJTIwKGJhc2VBbHBoYSUyMCUzRSUyMDAuMCUyMCUyNiUyNiUyMGJhc2VBbHBoYSUyMCUzQyUyMDEuMCklMjBiYXNlQWxwaGElMjAlM0QlMjBtaXgoYmFzZUFscGhhJTJDJTIwMS4wJTJDJTIwdV9vcGFxdWVTUCklM0IlMEFnbF9GcmFnQ29sb3IuYSUyMCUzRCUyMGJhc2VBbHBoYSUzQiU2MCUwQSUyMCUyMCUyMCUyMCUyMCUyMCkucmVwbGFjZUFsbCglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBUaGUlMjB1bnByZW11bHRpcGx5JTIwY29kZSUyMHdpbGwlMjBub3clMjBhbHdheXMlMjBydW4lMjBkdWUlMjB0byUyMHBhbGV0dGUlMjByZXBsYWNlbWVudCUyMHN0dWZmLiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMFRoaXMlMjBpcyUyMGElMjBiaXQlMjBtb3JlJTIwaW5lZmZpY2llbnQlMkMlMjBidXQlMjB3aGF0ZXZlci4lMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjIlMjNpZiUyMGRlZmluZWQoRU5BQkxFX2NvbG9yKSUyMCU3QyU3QyUyMGRlZmluZWQoRU5BQkxFX2JyaWdodG5lc3MpJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwaSUyMGhhdmUlMjBubyUyMGlkZWElMjBob3clMjB3ZWJnbCUyMHdvcmtzJTJDJTIwYW5kJTIwaSUyMGRvbiUyMnQlMjB3YW50JTIwdG8lMjBoYXZlJTIwdG8lMjByZW1vdmUlMjB0aGUlMjAlMjNlbmRpZiUyMHNvbWVob3clMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBqdXN0JTIwZG8lMjBzb21ldGhpbmclMjB0aGF0JTIwd2lsbCUyMGFsd2F5cyUyMGJlJTIwdHJ1ZSUyMC1DU1QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjIlMjNpZiUyMGRlZmluZWQoTUFYX1JFUExBQ0VSUyklMjIlMEElMjAlMjAlMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwcmV0dXJuJTIwb2dDcmVhdGVQcm9ncmFtSW5mby5hcHBseSh0aGlzJTJDJTIwYXJncyklM0IlMEElMjAlMjAlN0QlM0IlMEElMjAlMjBjb25zdCUyMG9nQnVpbGRTaGFkZXIlMjAlM0QlMjByZW5kZXIuX3NoYWRlck1hbmFnZXIuX2J1aWxkU2hhZGVyJTNCJTBBJTIwJTIwcmVuZGVyLl9zaGFkZXJNYW5hZ2VyLl9idWlsZFNoYWRlciUyMCUzRCUyMGZ1bmN0aW9uJTIwKC4uLmFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwdHJ5JTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcGF0Y2hTaGFkZXJzJTIwJTNEJTIwdHJ1ZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMG9nQnVpbGRTaGFkZXIuYXBwbHkodGhpcyUyQyUyMGFyZ3MpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTIwZmluYWxseSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHBhdGNoU2hhZGVycyUyMCUzRCUyMGZhbHNlJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTdEJTNCJTBBJTBBJTIwJTIwY29uc3QlMjBvZ0dldFVuaWZvcm1zJTIwJTNEJTIwcmVuZGVyLmV4cG9ydHMuRHJhd2FibGUucHJvdG90eXBlLmdldFVuaWZvcm1zJTNCJTBBJTIwJTIwcmVuZGVyLmV4cG9ydHMuRHJhd2FibGUucHJvdG90eXBlLmdldFVuaWZvcm1zJTIwJTNEJTIwZnVuY3Rpb24lMjAoKSUyMCU3QiUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwZ2wlMjAlM0QlMjByZW5kZXIuZ2wlM0IlMEElMjAlMjAlMjAlMjBjb25zdCUyMHVuaWZvcm1zJTIwJTNEJTIwb2dHZXRVbmlmb3Jtcy5jYWxsKHRoaXMpJTNCJTBBJTBBJTIwJTIwJTIwJTIwaW5pdERyYXdhYmxlKHRoaXMpJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBlZmZlY3REYXRhJTIwJTNEJTIwdGhpcyU1QmRyYXdhYmxlS2V5JTVEJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjByZXBsYWNlcnMlMjAlM0QlMjBlZmZlY3REYXRhLnJlcGxhY2VycyUzQiUwQSUwQSUyMCUyMCUyMCUyMGlmJTIwKHJlcGxhY2Vycy5sZW5ndGglMjAlM0UlMjAwKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGZvciUyMChsZXQlMjBpJTIwJTNEJTIwMCUzQiUyMGklMjAlM0MlMjBNYXRoLm1pbihyZXBsYWNlcnMubGVuZ3RoJTJDJTIwTUFYX1JFUExBQ0VSUyklM0IlMjBpJTJCJTJCKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJlcGxhY2VGcm9tLnNldChyZXBsYWNlcnMlNUJpJTVELnRhcmdldFZlcnQlMkMlMjBpJTIwKiUyMDMpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmVwbGFjZVRvLnNldChyZXBsYWNlcnMlNUJpJTVELnJlcGxhY2VWZXJ0JTJDJTIwaSUyMColMjA0KSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJlcGxhY2VUaHJlc2glNUJpJTVEJTIwJTNEJTIwcmVwbGFjZXJzJTVCaSU1RC5zb2Z0JTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBuZXdFZmZlY3RzJTIwJTNEJTIwZWZmZWN0RGF0YS5uZXdFZmZlY3RzJTNCJTBBJTIwJTIwJTIwJTIwdW5pZm9ybXMudV9yZXBsYWNlQ29sb3JGcm9tU1AlMjAlM0QlMjByZXBsYWNlRnJvbSUzQiUwQSUyMCUyMCUyMCUyMHVuaWZvcm1zLnVfcmVwbGFjZUNvbG9yVG9TUCUyMCUzRCUyMHJlcGxhY2VUbyUzQiUwQSUyMCUyMCUyMCUyMHVuaWZvcm1zLnVfcmVwbGFjZVRocmVzaG9sZFNQJTIwJTNEJTIwcmVwbGFjZVRocmVzaCUzQiUwQSUyMCUyMCUyMCUyMHVuaWZvcm1zLnVfbnVtUmVwbGFjZXJzU1AlMjAlM0QlMjByZXBsYWNlcnMlMjAlM0YlMjBNYXRoLm1pbihyZXBsYWNlcnMubGVuZ3RoJTJDJTIwTUFYX1JFUExBQ0VSUyklMjAlM0ElMjAwJTNCJTBBJTIwJTIwJTIwJTIwdW5pZm9ybXMudV90aW50Q29sb3JTUCUyMCUzRCUyMGVmZmVjdERhdGEudGludCUzQiUwQSUyMCUyMCUyMCUyMHVuaWZvcm1zLnVfd2FycFNQJTIwJTNEJTIwZWZmZWN0RGF0YS53YXJwJTNCJTBBJTIwJTIwJTIwJTIwdW5pZm9ybXMudV9zaG91bGRNYXNrU1AlMjAlM0QlMjBlZmZlY3REYXRhLnNob3VsZE1hc2slM0IlMEElMjAlMjAlMjAlMjB1bmlmb3Jtcy51X3NhdHVyYXRlU1AlMjAlM0QlMjBuZXdFZmZlY3RzLnNhdHVyYXRpb24lM0IlMEElMjAlMjAlMjAlMjB1bmlmb3Jtcy51X29wYXF1ZVNQJTIwJTNEJTIwbmV3RWZmZWN0cy5vcGFxdWUlM0IlMEElMjAlMjAlMjAlMjB1bmlmb3Jtcy51X2NvbnRyYXN0U1AlMjAlM0QlMjBuZXdFZmZlY3RzLmNvbnRyYXN0JTNCJTBBJTIwJTIwJTIwJTIwdW5pZm9ybXMudV9wb3N0ZXJpemVTUCUyMCUzRCUyMG5ld0VmZmVjdHMucG9zdGVyaXplJTNCJTBBJTIwJTIwJTIwJTIwdW5pZm9ybXMudV9zZXBpYVNQJTIwJTNEJTIwbmV3RWZmZWN0cy5zZXBpYSUzQiUwQSUyMCUyMCUyMCUyMHVuaWZvcm1zLnVfYmxvb21TUCUyMCUzRCUyMG5ld0VmZmVjdHMuYmxvb20lM0IlMEElMEElMjAlMjAlMjAlMjBpZiUyMChlZmZlY3REYXRhLnNob3VsZE1hc2spJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwdW5pZm9ybXMlNUIlMjJ1X21hc2tUZXh0dXJlU1AlMjIlNUQlMjAlM0QlMjBlZmZlY3REYXRhLl9tYXNrVGV4dHVyZSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJldHVybiUyMHVuaWZvcm1zJTNCJTBBJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTJGJTJGJTIwcmVzZXQlMjBvbiUyMHN0b3AlMkZzdGFydCUyRmNsZWFyJTBBJTIwJTIwY29uc3QlMjBvZ0NsZWFyRWZmZWN0cyUyMCUzRCUyMHZtLmV4cG9ydHMuUmVuZGVyZWRUYXJnZXQucHJvdG90eXBlLmNsZWFyRWZmZWN0cyUzQiUwQSUyMCUyMHZtLmV4cG9ydHMuUmVuZGVyZWRUYXJnZXQucHJvdG90eXBlLmNsZWFyRWZmZWN0cyUyMCUzRCUyMGZ1bmN0aW9uJTIwKCklMjAlN0IlMEElMjAlMjAlMjAlMjBjb25zdCUyMGRyYXdhYmxlJTIwJTNEJTIwcmVuZGVyLl9hbGxEcmF3YWJsZXMlNUJ0aGlzLmRyYXdhYmxlSUQlNUQlM0IlMEElMjAlMjAlMjAlMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVEJTIwJTNEJTIwZ2VuRWZmZWN0RmFjdG9yeSgpJTNCJTBBJTIwJTIwJTIwJTIwb2dDbGVhckVmZmVjdHMuY2FsbCh0aGlzKSUzQiUwQSUyMCUyMCU3RCUzQiUwQSUwQSUyMCUyMCUyRiUyRiUyMG1hbmlwdWxhdGUlMjBib3VuZHMlMjBmb3IlMjB3YXJwaW5nJTBBJTIwJTIwY29uc3QlMjByYWRpYW5Db252ZXJ0ZXIlMjAlM0QlMjBNYXRoLlBJJTIwJTJGJTIwMTgwJTNCJTBBJTIwJTIwZnVuY3Rpb24lMjByb3RhdGVQb2ludCh4JTJDJTIweSUyQyUyMGN4JTJDJTIwY3klMkMlMjByYWRzKSUyMCU3QiUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwY29zJTIwJTNEJTIwTWF0aC5jb3MocmFkcyklMkMlMjBzaW4lMjAlM0QlMjBNYXRoLnNpbihyYWRzKSUzQiUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwZHglMjAlM0QlMjB4JTIwLSUyMGN4JTJDJTIwZHklMjAlM0QlMjB5JTIwLSUyMGN5JTNCJTBBJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIweCUzQSUyMGN4JTIwJTJCJTIwZHglMjAqJTIwY29zJTIwLSUyMGR5JTIwKiUyMHNpbiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMHklM0ElMjBjeSUyMCUyQiUyMGR4JTIwKiUyMHNpbiUyMCUyQiUyMGR5JTIwKiUyMGNvcyUwQSUyMCUyMCUyMCUyMCU3RCUzQiUwQSUyMCUyMCU3RCUwQSUyMCUyMGZ1bmN0aW9uJTIwd2FycEJvdW5kcyhkcmF3YWJsZSUyQyUyMGJvdW5kcyklMjAlN0IlMEElMjAlMjAlMjAlMjBpZiUyMCghZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RCklMjByZXR1cm4lMjBib3VuZHMlM0IlMEElMEElMjAlMjAlMjAlMjBsZXQlMjB3YXJwVmFscyUyMCUzRCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQud2FycCUzQiUwQSUyMCUyMCUyMCUyMGlmJTIwKHdhcnBWYWxzLmpvaW4oJTIyJTJDJTIyKSUyMCUzRCUzRCUzRCUyMGRlZmF1bHRXYXJwQ2FjaGUpJTIwcmV0dXJuJTIwYm91bmRzJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTJGJTJGJTIwb3JpZ2luYWwlMjBnZXRCb3VuZHMlMjBhbHJlYWR5JTIwYWNjb3VudHMlMjBmb3IlMjByb3RhdGlvbiUyQyUyMHNvJTIwd2UlMjBoYXZlJTIwdG8lMjBtYWtlJTIwb3VyJTIwb3duJTIwc3lzdGVtJTBBJTIwJTIwJTIwJTIwJTJGJTJGJTIwZm9yJTIwZ2V0dGluZyUyMHRoZSUyMG5vbi1yb3RhdGVkJTIwc2NhbGUlMjBhbmQlMjBwb3NpdGlvbiUwQSUyMCUyMCUyMCUyMHdhcnBWYWxzJTIwJTNEJTIwd2FycFZhbHMubWFwKCh2JTJDJTIwaSklMjAlM0QlM0UlMjBpJTIwJTNFJTIwMCUyMCUyNiUyNiUyMGklMjAlM0MlMjA1JTIwJTNGJTIwdiUyMColMjAtMSUyMCUzQSUyMHYpJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBhbmdsZSUyMCUzRCUyMChkcmF3YWJsZS5fZGlyZWN0aW9uJTIwLSUyMDkwKSUyMColMjByYWRpYW5Db252ZXJ0ZXIlM0IlMEElMjAlMjAlMjAlMjBjb25zdCUyMCU1QnglMkMlMjB5JTVEJTIwJTNEJTIwZHJhd2FibGUuX3Bvc2l0aW9uJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjB3aWR0aCUyMCUzRCUyMGRyYXdhYmxlLnNraW4uc2l6ZSU1QjAlNUQlMjAqJTIwKGRyYXdhYmxlLnNjYWxlJTVCMCU1RCUyMCUyRiUyMDIwMCklM0IlMEElMjAlMjAlMjAlMjBjb25zdCUyMGhlaWdodCUyMCUzRCUyMGRyYXdhYmxlLnNraW4uc2l6ZSU1QjElNUQlMjAqJTIwKGRyYXdhYmxlLnNjYWxlJTVCMSU1RCUyMCUyRiUyMDIwMCklM0IlMEElMEElMjAlMjAlMjAlMjBjb25zdCUyMHBvaW50cyUyMCUzRCUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3QiUyMHglM0ElMjAod2FycFZhbHMlNUIwJTVEJTIwKiUyMDIpJTIwKiUyMC13aWR0aCUyMCUyQiUyMHglMkMlMjB5JTNBJTIwKHdhcnBWYWxzJTVCMSU1RCUyMColMjAtMiklMjAqJTIwaGVpZ2h0JTIwLSUyMHklMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0IlMjB4JTNBJTIwKHdhcnBWYWxzJTVCMiU1RCUyMColMjAyKSUyMColMjB3aWR0aCUyMCUyQiUyMHglMkMlMjB5JTNBJTIwKHdhcnBWYWxzJTVCMyU1RCUyMColMjAtMiklMjAqJTIwaGVpZ2h0JTIwLSUyMHklMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0IlMjB4JTNBJTIwKHdhcnBWYWxzJTVCNCU1RCUyMColMjAyKSUyMColMjB3aWR0aCUyMCUyQiUyMHglMkMlMjB5JTNBJTIwKHdhcnBWYWxzJTVCNSU1RCUyMColMjAtMiklMjAqJTIwLWhlaWdodCUyMC0lMjB5JTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIweCUzQSUyMCh3YXJwVmFscyU1QjYlNUQlMjAqJTIwMiklMjAqJTIwLXdpZHRoJTIwJTJCJTIweCUyQyUyMHklM0ElMjAod2FycFZhbHMlNUI3JTVEJTIwKiUyMC0yKSUyMColMjAtaGVpZ2h0JTIwLSUyMHklMjAlN0QlMEElMjAlMjAlMjAlMjAlNUQlM0IlMEElMEElMjAlMjAlMjAlMjBjb25zdCUyMHJvdGF0ZWRQb2ludHMlMjAlM0QlMjBwb2ludHMubWFwKHAlMjAlM0QlM0UlMjByb3RhdGVQb2ludChwLnglMkMlMjBwLnklMkMlMjB4JTJDJTIwLXklMkMlMjBhbmdsZSkpJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjB4cyUyMCUzRCUyMHJvdGF0ZWRQb2ludHMubWFwKHAlMjAlM0QlM0UlMjBwLngpJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjB5cyUyMCUzRCUyMHJvdGF0ZWRQb2ludHMubWFwKHAlMjAlM0QlM0UlMjBwLnkpJTNCJTBBJTBBJTIwJTIwJTIwJTIwYm91bmRzLmxlZnQlMjAlM0QlMjBNYXRoLm1pbiguLi54cyklM0IlMEElMjAlMjAlMjAlMjBib3VuZHMudG9wJTIwJTNEJTIwLU1hdGgubWluKC4uLnlzKSUzQiUwQSUyMCUyMCUyMCUyMGJvdW5kcy5yaWdodCUyMCUzRCUyME1hdGgubWF4KC4uLnhzKSUzQiUwQSUyMCUyMCUyMCUyMGJvdW5kcy5ib3R0b20lMjAlM0QlMjAtTWF0aC5tYXgoLi4ueXMpJTNCJTBBJTIwJTIwJTIwJTIwcmV0dXJuJTIwYm91bmRzJTNCJTBBJTIwJTIwJTdEJTBBJTBBJTIwJTIwY29uc3QlMjBvZ0dldEJvdW5kcyUyMCUzRCUyMHJlbmRlci5leHBvcnRzLkRyYXdhYmxlLnByb3RvdHlwZS5nZXRCb3VuZHMlM0IlMEElMjAlMjByZW5kZXIuZXhwb3J0cy5EcmF3YWJsZS5wcm90b3R5cGUuZ2V0Qm91bmRzJTIwJTNEJTIwZnVuY3Rpb24oKSUyMCU3QiUwQSUyMCUyMCUyMCUyMHJldHVybiUyMHdhcnBCb3VuZHModGhpcyUyQyUyMG9nR2V0Qm91bmRzLmNhbGwodGhpcykpJTNCJTBBJTIwJTIwJTdEJTNCJTBBJTIwJTIwY29uc3QlMjBvZ0dldEFBQkIlMjAlM0QlMjByZW5kZXIuZXhwb3J0cy5EcmF3YWJsZS5wcm90b3R5cGUuZ2V0QUFCQiUzQiUwQSUyMCUyMHJlbmRlci5leHBvcnRzLkRyYXdhYmxlLnByb3RvdHlwZS5nZXRBQUJCJTIwJTNEJTIwZnVuY3Rpb24oKSUyMCU3QiUwQSUyMCUyMCUyMCUyMHJldHVybiUyMHdhcnBCb3VuZHModGhpcyUyQyUyMG9nR2V0QUFCQi5jYWxsKHRoaXMpKSUzQiUwQSUyMCUyMCU3RCUzQiUwQSUwQSUyMCUyMCUyRiUyRiUyMHVwZGF0ZSUyMHRoZSUyMHBlbiUyMHNoYWRlciUwQSUyMCUyMGlmJTIwKHJ1bnRpbWUuZXh0X3BlbiUyMCUyNiUyNiUyMHJ1bnRpbWUuZXh0X3Blbi5fcGVuU2tpbklkJTIwJTNFJTIwLTEpJTIwJTdCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBwZW5Ta2luJTIwJTNEJTIwcmVuZGVyLl9hbGxTa2lucyU1QnJ1bnRpbWUuZXh0X3Blbi5fcGVuU2tpbklkJTVEJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBnbCUyMCUzRCUyMHJlbmRlci5nbCUzQiUwQSUyMCUyMCUyMCUyMHBlblNraW4uX2xpbmVTaGFkZXIlMjAlM0QlMjByZW5kZXIuX3NoYWRlck1hbmFnZXIuZ2V0U2hhZGVyKCUyMmxpbmUlMjIlMkMlMjAwKSUzQiUwQSUyMCUyMCUyMCUyMHBlblNraW4uX2RyYXdUZXh0dXJlU2hhZGVyJTIwJTNEJTIwcmVuZGVyLl9zaGFkZXJNYW5hZ2VyLmdldFNoYWRlciglMjJkZWZhdWx0JTIyJTJDJTIwMCklM0IlMEElMjAlMjAlMjAlMjBwZW5Ta2luLmFfcG9zaXRpb25fbG9jJTIwJTNEJTIwZ2wuZ2V0QXR0cmliTG9jYXRpb24ocGVuU2tpbi5fbGluZVNoYWRlci5wcm9ncmFtJTJDJTIwJTIyYV9wb3NpdGlvbiUyMiklM0IlMEElMjAlMjAlMjAlMjBwZW5Ta2luLmFfbGluZUNvbG9yX2xvYyUyMCUzRCUyMGdsLmdldEF0dHJpYkxvY2F0aW9uKHBlblNraW4uX2xpbmVTaGFkZXIucHJvZ3JhbSUyQyUyMCUyMmFfbGluZUNvbG9yJTIyKSUzQiUwQSUyMCUyMCUyMCUyMHBlblNraW4uYV9saW5lVGhpY2tuZXNzQW5kTGVuZ3RoX2xvYyUyMCUzRCUyMGdsLmdldEF0dHJpYkxvY2F0aW9uKHBlblNraW4uX2xpbmVTaGFkZXIucHJvZ3JhbSUyQyUyMCUyMmFfbGluZVRoaWNrbmVzc0FuZExlbmd0aCUyMiklM0IlMEElMjAlMjAlMjAlMjBwZW5Ta2luLmFfcGVuUG9pbnRzX2xvYyUyMCUzRCUyMGdsLmdldEF0dHJpYkxvY2F0aW9uKHBlblNraW4uX2xpbmVTaGFkZXIucHJvZ3JhbSUyQyUyMCUyMmFfcGVuUG9pbnRzJTIyKSUzQiUwQSUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyRiUyRiUyMHRoaXMlMjB3aWxsJTIwYWxsb3clMjBjbG9uZXMlMjB0byUyMGluaGVyaXQlMjBwYXJlbnQlMjBlZmZlY3RzJTBBJTIwJTIwY29uc3QlMjBvZ0luaXREcmF3YWJsZSUyMCUzRCUyMHZtLmV4cG9ydHMuUmVuZGVyZWRUYXJnZXQucHJvdG90eXBlLmluaXREcmF3YWJsZSUzQiUwQSUyMCUyMHZtLmV4cG9ydHMuUmVuZGVyZWRUYXJnZXQucHJvdG90eXBlLmluaXREcmF3YWJsZSUyMCUzRCUyMGZ1bmN0aW9uKGxheWVyR3JvdXApJTIwJTdCJTBBJTIwJTIwJTIwJTIwb2dJbml0RHJhd2FibGUuY2FsbCh0aGlzJTJDJTIwbGF5ZXJHcm91cCklM0IlMEElMjAlMjAlMjAlMjBpZiUyMCh0aGlzLmlzT3JpZ2luYWwpJTIwcmV0dXJuJTNCJTBBJTIwJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBwYXJlbnRTcHJpdGUlMjAlM0QlMjB0aGlzLnNwcml0ZS5jbG9uZXMlNUIwJTVEJTNCJTIwJTJGJTJGJTIwY2xvbmUlNUIwJTVEJTIwaXMlMjBhbHdheXMlMjB0aGUlMjBvcmlnaW5hbCUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwcGFyZW50RHJhd2FibGUlMjAlM0QlMjByZW5kZXIuX2FsbERyYXdhYmxlcyU1QnBhcmVudFNwcml0ZS5kcmF3YWJsZUlEJTVEJTNCJTBBJTIwJTIwJTIwJTIwY29uc3QlMjBwYXJlbnRFZmZlY3RzJTIwJTNEJTIwcGFyZW50RHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RCUzQiUwQSUyMCUyMCUyMCUyMGlmJTIwKCFwYXJlbnRFZmZlY3RzKSUyMHJldHVybiUzQiUwQSUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwZHJhd2FibGUlMjAlM0QlMjByZW5kZXIuX2FsbERyYXdhYmxlcyU1QnRoaXMuZHJhd2FibGVJRCU1RCUzQiUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwZWZmZWN0cyUyMCUzRCUyMGdlbkVmZmVjdEZhY3RvcnkoKSUzQiUwQSUyMCUyMCUyMCUyMGVmZmVjdHMubWFza1RleHR1cmUlMjAlM0QlMjBwYXJlbnRFZmZlY3RzLm1hc2tUZXh0dXJlJTNCJTBBJTIwJTIwJTIwJTIwZWZmZWN0cy5vbGRNYXNrJTIwJTNEJTIwcGFyZW50RWZmZWN0cy5vbGRNYXNrJTNCJTBBJTIwJTIwJTIwJTIwZWZmZWN0cy5zaG91bGRNYXNrJTIwJTNEJTIwcGFyZW50RWZmZWN0cy5zaG91bGRNYXNrJTNCJTBBJTIwJTIwJTIwJTIwZWZmZWN0cy53YXJwJTIwJTNEJTIwJTVCLi4ucGFyZW50RWZmZWN0cy53YXJwJTVEJTNCJTBBJTIwJTIwJTIwJTIwZWZmZWN0cy50aW50JTIwJTNEJTIwJTVCLi4ucGFyZW50RWZmZWN0cy50aW50JTVEJTNCJTBBJTIwJTIwJTIwJTIwZWZmZWN0cy5uZXdFZmZlY3RzJTIwJTNEJTIwJTdCJTIwLi4ucGFyZW50RWZmZWN0cy5uZXdFZmZlY3RzJTIwJTdEJTNCJTBBJTIwJTIwJTIwJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RCUyMCUzRCUyMGVmZmVjdHMlM0IlMEElMjAlMjAlN0QlM0IlMEElMEElMjAlMjAlMkYqJTIwcGF0Y2glMjBmb3IlMjAlMjJ3aGVuJTIwY29zdHVtZSUyMHN3aXRjaGVzJTIyJTIwZXZlbnQlMjAqJTJGJTBBJTIwJTIwY29uc3QlMjBvZ1NldENvcmVDb3N0dW1lJTIwJTNEJTIwbG9va3NDb3JlLmNvbnN0cnVjdG9yLnByb3RvdHlwZS5fc2V0Q29zdHVtZSUzQiUwQSUyMCUyMG9nU2V0Q29yZUNvc3R1bWUuY29uc3RydWN0b3IucHJvdG90eXBlLl9zZXRDb3N0dW1lJTIwJTNEJTIwZnVuY3Rpb24lMjAodGFyZ2V0JTJDJTIwcmVxdWVzdGVkQ29zdHVtZSUyQyUyMG9wdFplcm9JbmRleCklMjAlN0IlMEElMjAlMjAlMjAlMjBvZ1NldENvcmVDb3N0dW1lLmNhbGwodGhpcyUyQyUyMHRhcmdldCUyQyUyMHJlcXVlc3RlZENvc3R1bWUlMkMlMjBvcHRaZXJvSW5kZXgpJTNCJTBBJTIwJTIwJTIwJTIwcnVudGltZS5zdGFydEhhdHMoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIyU1Bsb29rc0V4cGFuZGVkX3doZW5Db3N0dW1lU3dpdGNoJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwQ09TVFVNRSUzQSUyMHRhcmdldC5nZXRDdXJyZW50Q29zdHVtZSgpJTNGLm5hbWUlMjAlN0MlN0MlMjAlMjIlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTdEJTNCJTBBJTIwJTIwY29uc3QlMjBvZ1NldFNwcml0ZUNvc3R1bWUlMjAlM0QlMjB2bS5leHBvcnRzLlJlbmRlcmVkVGFyZ2V0LnByb3RvdHlwZS5zZXRDb3N0dW1lJTNCJTBBJTIwJTIwdm0uZXhwb3J0cy5SZW5kZXJlZFRhcmdldC5wcm90b3R5cGUuc2V0Q29zdHVtZSUyMCUzRCUyMGZ1bmN0aW9uJTIwKGluZGV4KSUyMCU3QiUwQSUyMCUyMCUyMCUyMG9nU2V0U3ByaXRlQ29zdHVtZS5jYWxsKHRoaXMlMkMlMjBpbmRleCklM0IlMEElMjAlMjAlMjAlMjBydW50aW1lLnN0YXJ0SGF0cyglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjJTUGxvb2tzRXhwYW5kZWRfd2hlbkNvc3R1bWVTd2l0Y2glMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0IlMjBDT1NUVU1FJTNBJTIwdGhpcy5nZXRDdXJyZW50Q29zdHVtZSgpJTNGLm5hbWUlMjAlN0MlN0MlMjAlMjIlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjApJTNCJTBBJTIwJTIwJTdEJTNCJTBBJTBBJTIwJTIwY2xhc3MlMjBTUGxvb2tzRXhwYW5kZWQlMjAlN0IlMEElMjAlMjAlMjAlMjBnZXRJbmZvKCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZCUzQSUyMCUyMlNQbG9va3NFeHBhbmRlZCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG5hbWUlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJMb29rcyUyMEV4cGFuZGVkJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbG9yMSUzQSUyMCUyMiUyMzk5NjZGRiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbG9yMiUzQSUyMCUyMiUyMzg1NUNENiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbG9yMyUzQSUyMCUyMiUyMzc3NERDQiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnVJY29uVVJJJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tzJTNBJTIwJTVCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZ2V0U3BlZWNoJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19sb29rcyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJzcGVlY2glMjBmcm9tJTIwJTVCVEFSR0VUJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRBUkdFVCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyVEFSR0VUUyUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmNvc3R1bWVDbnQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX2xvb2tzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMiUyMyUyMG9mJTIwY29zdHVtZXMlMjBpbiUyMCU1QlRBUkdFVCU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUQVJHRVQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlRBUkdFVFMlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJjb3N0dW1lSW5mbyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfbG9va3MlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyJTVCSU5GTyU1RCUyMG9mJTIwY29zdHVtZSUyMCUyMyUyMCU1Qk5VTSU1RCUyMGluJTIwJTVCVEFSR0VUJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMElORk8lM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMkNPU1RVTUVfREFUQSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAxJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVEFSR0VUJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMG1lbnUlM0ElMjAlMjJUQVJHRVRTJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyc2V0VGFyZ2V0Q29zdHVtZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkNPTU1BTkQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19sb29rcyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJzd2l0Y2glMjBjb3N0dW1lJTIwb2YlMjAlNUJUQVJHRVQlNUQlMjB0byUyMCU1QlZBTFVFJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRBUkdFVCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyVEFSR0VUUyUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFZBTFVFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMi4uLiUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMndoZW5Db3N0dW1lU3dpdGNoJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuRVZFTlQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19ldmVudCUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlzRWRnZUFjdGl2YXRlZCUzQSUyMGZhbHNlJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMndoZW4lMjBjb3N0dW1lJTIwc3dpdGNoZXMlMjB0byUyMCU1QkNPU1RVTUUlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ09TVFVNRSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyQ09TVFVNRVMlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJzZXRTcHJpdGVFZmZlY3QlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5DT01NQU5EJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfbG9va3MlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyc2V0JTIwJTVCRUZGRUNUJTVEJTIwb2YlMjAlNUJUQVJHRVQlNUQlMjB0byUyMCU1QlZBTFVFJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEVGRkVDVCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyRUZGRUNUX01FTlUlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUQVJHRVQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlRBUkdFVFMlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBWQUxVRSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZWZmZWN0VmFsdWUlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX2xvb2tzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMiU1QkVGRkVDVCU1RCUyMGVmZmVjdCUyMG9mJTIwJTVCVEFSR0VUJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEVGRkVDVCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyRUZGRUNUX01FTlUlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUQVJHRVQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlRBUkdFVFMlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0aW50U3ByaXRlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX2xvb2tzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnNldCUyMHRpbnQlMjBvZiUyMCU1QlRBUkdFVCU1RCUyMHRvJTIwJTVCQ09MT1IlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVEFSR0VUJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMG1lbnUlM0ElMjAlMjJUQVJHRVRTJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ09MT1IlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuQ09MT1IlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJyZXBsYWNlQ29sb3IlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5DT01NQU5EJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfbG9va3MlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIycmVwbGFjZSUyMCU1QkNPTE9SMSU1RCUyMHdpdGglMjAlNUJDT0xPUjIlNUQlMjBpbiUyMCU1QlRBUkdFVCU1RCUyMHNvZnRuZXNzJTIwJTVCVkFMVUUlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ09MT1IxJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLkNPTE9SJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ09MT1IyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLkNPTE9SJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVEFSR0VUJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMG1lbnUlM0ElMjAlMjJUQVJHRVRTJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVkFMVUUlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMTAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJyZXNldENvbG9yJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX2xvb2tzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJlc2V0JTIwJTVCQ09MT1IxJTVEJTIwcmVwbGFjZXIlMjBpbiUyMCU1QlRBUkdFVCU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBDT0xPUjElM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuQ09MT1IlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUQVJHRVQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlRBUkdFVFMlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJyZXNldFJlcGxhY2VycyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkNPTU1BTkQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19sb29rcyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJyZXNldCUyMGNvbG9yJTIwcmVwbGFjZXJzJTIwaW4lMjAlNUJUQVJHRVQlNUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVEFSR0VUJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMG1lbnUlM0ElMjAlMjJUQVJHRVRTJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuWE1MJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIweG1sJTNBJTIwJTYwJTNDc2VwJTIwZ2FwJTNEJTIyMjQlMjIlMkYlM0UlM0NsYWJlbCUyMHRleHQlM0QlMjIlMjQlN0JTY3JhdGNoLnRyYW5zbGF0ZSglMjJXYXJwaW5nJTIwYW5kJTIwTWFza2luZyUyMGRvZXMlMjBOT1QlMjIpJTdEJTIyJTJGJTNFJTNDc2VwJTIwZ2FwJTNEJTIyMCUyMiUyRiUzRSU2MCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlhNTCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHhtbCUzQSUyMCU2MCUzQ3NlcCUyMGdhcCUzRCUyMi0xMiUyMiUyRiUzRSUzQ2xhYmVsJTIwdGV4dCUzRCUyMiUyMCUyNCU3QlNjcmF0Y2gudHJhbnNsYXRlKCUyMmFmZmVjdCUyMFRvdWNoaW5nJTIwQmxvY2tzJTIyKSU3RCUyMiUyRiUzRSUzQ3NlcCUyMGdhcCUzRCUyMjYlMjIlMkYlM0UlNjAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ3YXJwU3ByaXRlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJ3YXJwJTIwJTVCVEFSR0VUJTVEJTIwdG8lMjB4MSUzQSUyMCU1QngxJTVEJTIweTElM0ElMjAlNUJ5MSU1RCUyMHgyJTNBJTIwJTVCeDIlNUQlMjB5MiUzQSUyMCU1QnkyJTVEJTIweDMlM0ElMjAlNUJ4MyU1RCUyMHkzJTNBJTIwJTVCeTMlNUQlMjB4NCUzQSUyMCU1Qng0JTVEJTIweTQlM0ElMjAlNUJ5NCU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUQVJHRVQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlRBUkdFVFMlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB4MSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAtMTAwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIweTElM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMTAwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIweDIlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMTAwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIweTIlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMTAwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIweDMlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwLTEwMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHkzJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMC0xMDAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB4NCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAxMDAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB5NCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAtMTAwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIybWFza1Nwcml0ZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkNPTU1BTkQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIybWFzayUyMCU1QlRBUkdFVCU1RCUyMHdpdGglMjBpbWFnZSUyMCU1QklNQUdFJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRBUkdFVCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyVEFSR0VUUyUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMElNQUdFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmh0dHBzJTNBJTJGJTJGZXh0ZW5zaW9ucy50dXJib3dhcnAub3JnJTJGZGFuZ28ucG5nJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyc2hvd1Nwcml0ZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkNPTU1BTkQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyc2hvdyUyMCU1QlRBUkdFVCU1RCUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUQVJHRVQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlRBUkdFVFMlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJoaWRlU3ByaXRlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJoaWRlJTIwJTVCVEFSR0VUJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRBUkdFVCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyVEFSR0VUUyUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnNwcml0ZVNob3dpbmclMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMiU1QlRBUkdFVCU1RCUyMCU1QlRZUEUlNUQlMjAlM0YlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVEFSR0VUJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMG1lbnUlM0ElMjAlMjJUQVJHRVRTJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVFlQRSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyRElTUExBWV9UWVBFUyUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnNwcml0ZVByb3BlcnR5JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyJTVCUFJPUCU1RCUyMG9mJTIwJTVCVEFSR0VUJTVEJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFBST1AlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlNQUklURV9QUk9QUyUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRBUkdFVCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyVEFSR0VUUyUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnVzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ09TVFVNRVMlM0ElMjAlN0IlMjBhY2NlcHRSZXBvcnRlcnMlM0ElMjBmYWxzZSUyQyUyMGl0ZW1zJTNBJTIwJTIyZ2V0Q29zdHVtZXMlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUQVJHRVRTJTNBJTIwJTdCJTIwYWNjZXB0UmVwb3J0ZXJzJTNBJTIwdHJ1ZSUyQyUyMGl0ZW1zJTNBJTIwJTIyZ2V0VGFyZ2V0cyUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEVGRkVDVF9NRU5VJTNBJTIwJTdCJTIwYWNjZXB0UmVwb3J0ZXJzJTNBJTIwdHJ1ZSUyQyUyMGl0ZW1zJTNBJTIwJTIyZ2V0RWZmZWN0cyUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMERJU1BMQVlfVFlQRVMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhY2NlcHRSZXBvcnRlcnMlM0ElMjBmYWxzZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGl0ZW1zJTNBJTIwJTVCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnNob3dpbmclMjIpJTJDJTIwdmFsdWUlM0ElMjAlMjJzaG93aW5nJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnZpc2libGUlMjIpJTJDJTIwdmFsdWUlM0ElMjAlMjJ2aXNpYmxlJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ09TVFVNRV9EQVRBJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYWNjZXB0UmVwb3J0ZXJzJTNBJTIwdHJ1ZSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGl0ZW1zJTNBJTIwJTVCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMm5hbWUlMjIpJTJDJTIwdmFsdWUlM0ElMjAlMjJuYW1lJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnR5cGUlMjIpJTJDJTIwdmFsdWUlM0ElMjAlMjJ0eXBlJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMndpZHRoJTIyKSUyQyUyMHZhbHVlJTNBJTIwJTIyd2lkdGglMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyaGVpZ2h0JTIyKSUyQyUyMHZhbHVlJTNBJTIwJTIyaGVpZ2h0JTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMnJvdGF0aW9uJTIwY2VudGVyJTIweCUyMiklMkMlMjB2YWx1ZSUzQSUyMCUyMnJvdGF0aW9uJTIwY2VudGVyJTIweCUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJyb3RhdGlvbiUyMGNlbnRlciUyMHklMjIpJTJDJTIwdmFsdWUlM0ElMjAlMjJyb3RhdGlvbiUyMGNlbnRlciUyMHklMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyY29udGVudCUyMiklMkMlMjB2YWx1ZSUzQSUyMCUyMmNvbnRlbnQlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMjB0ZXh0JTNBJTIwU2NyYXRjaC50cmFuc2xhdGUoJTIyZGF0YS51cmklMjIpJTJDJTIwdmFsdWUlM0ElMjAlMjJkYXRhLnVyaSUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNQUklURV9QUk9QUyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFjY2VwdFJlcG9ydGVycyUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpdGVtcyUzQSUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJ3aWR0aCUyMiklMkMlMjB2YWx1ZSUzQSUyMCUyMndpZHRoJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMmhlaWdodCUyMiklMkMlMjB2YWx1ZSUzQSUyMCUyMmhlaWdodCUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZSglMjJsYXllciUyMCUyMyUyMiklMkMlMjB2YWx1ZSUzQSUyMCUyMmxheWVyJTIwJTIzJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwJTJGJTJGJTIwSGVscGVyJTIwRnVuY3MlMEElMjAlMjAlMjAlMjBnZXRUYXJnZXRzKCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHNwcml0ZU5hbWVzJTIwJTNEJTIwJTVCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMm15c2VsZiUyMiklMkMlMjB2YWx1ZSUzQSUyMCUyMl9teXNlbGZfJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwdGV4dCUzQSUyMFNjcmF0Y2gudHJhbnNsYXRlKCUyMlN0YWdlJTIyKSUyQyUyMHZhbHVlJTNBJTIwJTIyX3N0YWdlXyUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdGFyZ2V0cyUyMCUzRCUyMHJ1bnRpbWUudGFyZ2V0cyUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGZvciUyMChsZXQlMjBpJTIwJTNEJTIwMSUzQiUyMGklMjAlM0MlMjB0YXJnZXRzLmxlbmd0aCUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0YXJnZXRzJTVCaSU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHRhcmdldC5pc09yaWdpbmFsKSUyMHNwcml0ZU5hbWVzLnB1c2goJTdCJTIwdGV4dCUzQSUyMHRhcmdldC5nZXROYW1lKCklMkMlMjB2YWx1ZSUzQSUyMHRhcmdldC5nZXROYW1lKCklMjAlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwc3ByaXRlTmFtZXMubGVuZ3RoJTIwJTNFJTIwMCUyMCUzRiUyMHNwcml0ZU5hbWVzJTIwJTNBJTIwJTVCJTIyJTIyJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwZ2V0Q29zdHVtZXMoKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGxldCUyMGNvc3R1bWVOYW1lcyUyMCUzRCUyMCU1QiU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHZtLmVkaXRpbmdUYXJnZXQpJTIwY29zdHVtZU5hbWVzJTIwJTNEJTIwdm0uZWRpdGluZ1RhcmdldC5nZXRDb3N0dW1lcygpLm1hcCgoZSklMjAlM0QlM0UlMjAlN0IlMjByZXR1cm4lMjBlLm5hbWUlMjAlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY29zdHVtZU5hbWVzLmxlbmd0aCUyMCUzRSUyMDAlMjAlM0YlMjBjb3N0dW1lTmFtZXMlMjAlM0ElMjAlNUIlMjIlMjIlNUQlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBnZXRFZmZlY3RzKCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGVmZmVjdHMlMjAlM0QlMjBPYmplY3Qua2V5cyh2bS5lZGl0aW5nVGFyZ2V0JTNGLmVmZmVjdHMlMjAlN0MlN0MlMjAlN0IlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIWlzUE0pJTIwZWZmZWN0cy5wdXNoKCUyMnNhdHVyYXRpb24lMjIlMkMlMjAlMjJvcGFxdWUlMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwZWZmZWN0cy5wdXNoKCUyMmNvbnRyYXN0JTIyJTJDJTIwJTIycG9zdGVyaXplJTIyJTJDJTIwJTIyc2VwaWElMjIlMkMlMjAlMjJibG9vbSUyMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBlZmZlY3RzLm1hcCgoZWZmZWN0KSUyMCUzRCUzRSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCU3QiUyMHRleHQlM0ElMjBTY3JhdGNoLnRyYW5zbGF0ZShlZmZlY3QpJTJDJTIwdmFsdWUlM0ElMjBlZmZlY3QlMjAlN0QlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwZWZmZWN0cy5sZW5ndGglMjAlM0UlMjAwJTIwJTNGJTIwZWZmZWN0cyUyMCUzQSUyMCU1QiUyMiUyMiU1RCUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGdldFRhcmdldChuYW1lJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChuYW1lJTIwJTNEJTNEJTNEJTIwJTIyX215c2VsZl8lMjIpJTIwcmV0dXJuJTIwdXRpbC50YXJnZXQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChuYW1lJTIwJTNEJTNEJTNEJTIwJTIyX3N0YWdlXyUyMiklMjByZXR1cm4lMjBydW50aW1lLmdldFRhcmdldEZvclN0YWdlKCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBydW50aW1lLmdldFNwcml0ZVRhcmdldEJ5TmFtZShuYW1lKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGV4cG9ydENvc3R1bWUoY29zdHVtZSUyQyUyMGtlZXBCYXNlNjQpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBhc3NldCUyMCUzRCUyMGNvc3R1bWUuYXNzZXQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChydW50aW1lLmlzUGFja2FnZWQpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBza2luJTIwJTNEJTIwcmVuZGVyLl9hbGxTa2lucyU1QmNvc3R1bWUuc2tpbklkJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwdHlwZSUyMCUzRCUyMGNvc3R1bWUuZGF0YUZvcm1hdCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHR5cGUlMjAlM0QlM0QlM0QlMjAlMjJzdmclMjIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzdmdUZXh0JTIwJTNEJTIwZGVjb2RlVVJJQ29tcG9uZW50KHNraW4uX3N2Z0ltYWdlLnNyYy5zcGxpdCglMjIlMkMlMjIpJTVCMSU1RCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChrZWVwQmFzZTY0KSUyMHJldHVybiUyMCU2MGRhdGElM0FpbWFnZSUyRnN2ZyUyQnhtbCUzQmJhc2U2NCUyQyUyNCU3QmJ0b2Eoc3ZnVGV4dCklN0QlNjAlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBlbHNlJTIwcmV0dXJuJTIwc3ZnVGV4dCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGVsc2UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBhbHdheXMlMjByZXR1cm4lMjBiYXNlJTIwNjQlMkMlMjB0aGVyZXMlMjBsaXRlcmFsbHklMjBubyUyMHBvaW50JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBnbCUyMCUzRCUyMHJlbmRlci5nbCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwd2lkdGglMjAlM0QlMjBza2luLnNpemUlNUIwJTVEJTIwKiUyMDIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGhlaWdodCUyMCUzRCUyMHNraW4uc2l6ZSU1QjElNUQlMjAqJTIwMiUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZmJvJTIwJTNEJTIwdHdnbC5jcmVhdGVGcmFtZWJ1ZmZlckluZm8oJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZ2wlMkMlMjAlNUIlN0IlMjBhdHRhY2htZW50JTNBJTIwc2tpbi5fdGV4dHVyZSUyMCU3RCU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHdpZHRoJTJDJTIwaGVpZ2h0JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR3Z2wuYmluZEZyYW1lYnVmZmVySW5mbyhnbCUyQyUyMGZibyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHBpeGVscyUyMCUzRCUyMG5ldyUyMFVpbnQ4QXJyYXkod2lkdGglMjAqJTIwaGVpZ2h0JTIwKiUyMDQpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZ2wucmVhZFBpeGVscygwJTJDJTIwMCUyQyUyMHdpZHRoJTJDJTIwaGVpZ2h0JTJDJTIwZ2wuUkdCQSUyQyUyMGdsLlVOU0lHTkVEX0JZVEUlMkMlMjBwaXhlbHMpJTNCJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBjYW52YXMlMjAlM0QlMjBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCUyMmNhbnZhcyUyMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYW52YXMud2lkdGglMjAlM0QlMjB3aWR0aCUzQiUyMGNhbnZhcy5oZWlnaHQlMjAlM0QlMjBoZWlnaHQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGN0eCUyMCUzRCUyMGNhbnZhcy5nZXRDb250ZXh0KCUyMjJkJTIyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwaW1hZ2VEYXRhJTIwJTNEJTIwY3R4LmNyZWF0ZUltYWdlRGF0YSh3aWR0aCUyQyUyMGhlaWdodCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpbWFnZURhdGEuZGF0YS5zZXQocGl4ZWxzKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGN0eC5wdXRJbWFnZURhdGEoaW1hZ2VEYXRhJTJDJTIwMCUyQyUyMDApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY2FudmFzLnRvRGF0YVVSTCglMjJpbWFnZSUyRnBuZyUyMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBlbHNlJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoa2VlcEJhc2U2NCklMjByZXR1cm4lMjBhc3NldC5lbmNvZGVEYXRhVVJJKCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBlbHNlJTIwcmV0dXJuJTIwYXNzZXQuZGVjb2RlVGV4dCgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwaGV4MlZlYzQoaGV4KSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGhleCUyMCUzRCUyMGhleC5zdGFydHNXaXRoKCUyMiUyMyUyMiklMjAlM0YlMjBoZXguc2xpY2UoMSklMjAlM0ElMjBoZXglM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsZXQlMjBhJTIwJTNEJTIwMjU1JTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoaGV4Lmxlbmd0aCUyMCUzRCUzRCUzRCUyMDgpJTIwYSUyMCUzRCUyMHBhcnNlSW50KGhleC5zbGljZSg2JTJDJTIwOCklMkMlMjAxNiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBwYXJzZUludChoZXguc2xpY2UoMCUyQyUyMDIpJTJDJTIwMTYpJTIwJTJGJTIwMjU1JTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcGFyc2VJbnQoaGV4LnNsaWNlKDIlMkMlMjA0KSUyQyUyMDE2KSUyMCUyRiUyMDI1NSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHBhcnNlSW50KGhleC5zbGljZSg0JTJDJTIwNiklMkMlMjAxNiklMjAlMkYlMjAyNTUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhJTIwJTJGJTIwMjU1JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwYXJyYXlNYXRjaGVzKGFycjElMkMlMjBhcnIyKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGFycjEuZXZlcnkoKHZhbCUyQyUyMGkpJTIwJTNEJTNFJTIwdmFsJTIwJTNEJTNEJTNEJTIwYXJyMiU1QmklNUQpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwJTJGJTJGJTIwQmxvY2slMjBGdW5jcyUwQSUyMCUyMCUyMCUyMGdldFNwZWVjaChhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRhcmdldCUyMCUzRCUyMHRoaXMuZ2V0VGFyZ2V0KGFyZ3MuVEFSR0VUJTJDJTIwdXRpbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGFyZ2V0KSUyMHJldHVybiUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHRhcmdldC5fY3VzdG9tU3RhdGUlNUIlMjJTY3JhdGNoLmxvb2tzJTIyJTVEJTNGLnRleHQlMjAlN0MlN0MlMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBjb3N0dW1lQ250KGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdGFyZ2V0JTIwJTNEJTIwdGhpcy5nZXRUYXJnZXQoYXJncy5UQVJHRVQlMkMlMjB1dGlsKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCF0YXJnZXQpJTIwcmV0dXJuJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHRhcmdldC5zcHJpdGUuY29zdHVtZXMubGVuZ3RoJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwY29zdHVtZUluZm8oYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0aGlzLmdldFRhcmdldChhcmdzLlRBUkdFVCUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXRhcmdldCklMjByZXR1cm4lMjAlMjIlMjIlM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGNvc3R1bWVzJTIwJTNEJTIwdGFyZ2V0LmdldENvc3R1bWVzKCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGluZGV4JTIwJTNEJTIwQ2FzdC50b051bWJlcihhcmdzLk5VTSklMjAtJTIwMSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwY29zdHVtZSUyMCUzRCUyMGNvc3R1bWVzJTVCaW5kZXglNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghY29zdHVtZSklMjByZXR1cm4lMjAlMjIlMjIlM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBzd2l0Y2glMjAoYXJncy5JTkZPKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJuYW1lJTIyJTNBJTIwcmV0dXJuJTIwY29zdHVtZS5uYW1lJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMndpZHRoJTIyJTNBJTIwcmV0dXJuJTIwY29zdHVtZS5zaXplJTVCMCU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJoZWlnaHQlMjIlM0ElMjByZXR1cm4lMjBjb3N0dW1lLnNpemUlNUIxJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMnR5cGUlMjIlM0ElMjByZXR1cm4lMjBjb3N0dW1lLmRhdGFGb3JtYXQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIycm90YXRpb24lMjBjZW50ZXIlMjB4JTIyJTNBJTIwcmV0dXJuJTIwY29zdHVtZS5yb3RhdGlvbkNlbnRlclglM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIycm90YXRpb24lMjBjZW50ZXIlMjB5JTIyJTNBJTIwcmV0dXJuJTIwY29zdHVtZS5yb3RhdGlvbkNlbnRlclklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIyY29udGVudCUyMiUzQSUyMHJldHVybiUyMHRoaXMuZXhwb3J0Q29zdHVtZShjb3N0dW1lJTJDJTIwZmFsc2UpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMCUyMmRhdGEudXJpJTIyJTNBJTIwcmV0dXJuJTIwdGhpcy5leHBvcnRDb3N0dW1lKGNvc3R1bWUlMkMlMjB0cnVlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHQlM0ElMjByZXR1cm4lMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBzZXRUYXJnZXRDb3N0dW1lKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdGFyZ2V0JTIwJTNEJTIwdGhpcy5nZXRUYXJnZXQoYXJncy5UQVJHRVQlMkMlMjB1dGlsKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHRhcmdldCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCh0YXJnZXQuaXNTdGFnZSklMjBydW50aW1lLmV4dF9zY3JhdGNoM19sb29rcy5fc2V0QmFja2Ryb3AodGFyZ2V0JTJDJTIwYXJncy5WQUxVRSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBlbHNlJTIwcnVudGltZS5leHRfc2NyYXRjaDNfbG9va3MuX3NldENvc3R1bWUodGFyZ2V0JTJDJTIwYXJncy5WQUxVRSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBzZXRTcHJpdGVFZmZlY3QoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0aGlzLmdldFRhcmdldChhcmdzLlRBUkdFVCUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodGFyZ2V0KSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbmFtZSUyMCUzRCUyMENhc3QudG9TdHJpbmcoYXJncy5FRkZFQ1QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwdmFsdWUlMjAlM0QlMjBDYXN0LnRvTnVtYmVyKGFyZ3MuVkFMVUUpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobmFtZSUyMCElM0QlM0QlMjAlMjJwb3N0ZXJpemUlMjIlMjAlMjYlMjYlMjAhKGlzUE0lMjAlMjYlMjYlMjBuYW1lJTIwJTNEJTNEJTNEJTIwJTIyc2F0dXJhdGlvbiUyMikpJTIwdmFsdWUlMjAlMkYlM0QlMjAxMDAlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCglMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBuYW1lJTIwJTNEJTNEJTNEJTIwJTIyY29udHJhc3QlMjIlMjAlN0MlN0MlMjBuYW1lJTIwJTNEJTNEJTNEJTIwJTIycG9zdGVyaXplJTIyJTIwJTdDJTdDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbmFtZSUyMCUzRCUzRCUzRCUyMCUyMnNlcGlhJTIyJTIwJTdDJTdDJTIwbmFtZSUyMCUzRCUzRCUzRCUyMCUyMmJsb29tJTIyJTIwJTdDJTdDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKCFpc1BNJTIwJTI2JTI2JTIwKG5hbWUlMjAlM0QlM0QlM0QlMjAlMjJzYXR1cmF0aW9uJTIyJTIwJTdDJTdDJTIwbmFtZSUyMCUzRCUzRCUzRCUyMCUyMm9wYXF1ZSUyMikpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZHJhd2FibGUlMjAlM0QlMjByZW5kZXIuX2FsbERyYXdhYmxlcyU1QnRhcmdldC5kcmF3YWJsZUlEJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaW5pdERyYXdhYmxlKGRyYXdhYmxlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwb2xkVmFsdWUlMjAlM0QlMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELm5ld0VmZmVjdHMlNUJuYW1lJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RC5uZXdFZmZlY3RzJTVCbmFtZSU1RCUyMCUzRCUyMHZhbHVlJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAob2xkVmFsdWUlMjAhJTNEJTNEJTIwdmFsdWUpJTIwcmVuZGVyLmRpcnR5JTIwJTNEJTIwdHJ1ZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGVsc2UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0YXJnZXQuc2V0RWZmZWN0KG5hbWUlMkMlMjB2YWx1ZSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBlZmZlY3RWYWx1ZShhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRhcmdldCUyMCUzRCUyMHRoaXMuZ2V0VGFyZ2V0KGFyZ3MuVEFSR0VUJTJDJTIwdXRpbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGFyZ2V0KSUyMHJldHVybiUyMDAlM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGVmZmVjdHMlMjAlM0QlMjB0YXJnZXQuZWZmZWN0cyUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbmFtZSUyMCUzRCUyMENhc3QudG9TdHJpbmcoYXJncy5FRkZFQ1QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbmFtZSUyMCUzRCUzRCUzRCUyMCUyMmNvbnRyYXN0JTIyJTIwJTdDJTdDJTIwbmFtZSUyMCUzRCUzRCUzRCUyMCUyMnBvc3Rlcml6ZSUyMiUyMCU3QyU3QyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG5hbWUlMjAlM0QlM0QlM0QlMjAlMjJzZXBpYSUyMiUyMCU3QyU3QyUyMG5hbWUlMjAlM0QlM0QlM0QlMjAlMjJibG9vbSUyMiUyMCU3QyU3QyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCghaXNQTSUyMCUyNiUyNiUyMChuYW1lJTIwJTNEJTNEJTNEJTIwJTIyc2F0dXJhdGlvbiUyMiUyMCU3QyU3QyUyMG5hbWUlMjAlM0QlM0QlM0QlMjAlMjJvcGFxdWUlMjIpKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGRyYXdhYmxlJTIwJTNEJTIwcmVuZGVyLl9hbGxEcmF3YWJsZXMlNUJ0YXJnZXQuZHJhd2FibGVJRCU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGluaXREcmF3YWJsZShkcmF3YWJsZSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHZhbHVlJTIwJTNEJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RC5uZXdFZmZlY3RzJTVCbmFtZSU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMG5hbWUlMjAlM0QlM0QlM0QlMjAlMjJwb3N0ZXJpemUlMjIlMjAlM0YlMjB2YWx1ZSUyMCUzQSUyMHZhbHVlJTIwKiUyMDEwMCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlZmZlY3RzJTJDJTIwbmFtZSkpJTIwcmV0dXJuJTIwZWZmZWN0cyU1Qm5hbWUlNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAwJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwdGludFNwcml0ZShhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRhcmdldCUyMCUzRCUyMHRoaXMuZ2V0VGFyZ2V0KGFyZ3MuVEFSR0VUJTJDJTIwdXRpbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGFyZ2V0KSUyMHJldHVybiUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZHJhd2FibGUlMjAlM0QlMjByZW5kZXIuX2FsbERyYXdhYmxlcyU1QnRhcmdldC5kcmF3YWJsZUlEJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaW5pdERyYXdhYmxlKGRyYXdhYmxlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwb2xkVGludCUyMCUzRCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQudGludCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQudGludCUyMCUzRCUyMHRoaXMuaGV4MlZlYzQoYXJncy5DT0xPUiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGhpcy5hcnJheU1hdGNoZXMob2xkVGludCUyQyUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQudGludCkpJTIwcmVuZGVyLmRpcnR5JTIwJTNEJTIwdHJ1ZSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJlcGxhY2VDb2xvcihhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRhcmdldCUyMCUzRCUyMHRoaXMuZ2V0VGFyZ2V0KGFyZ3MuVEFSR0VUJTJDJTIwdXRpbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGFyZ2V0KSUyMHJldHVybiUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMHRoaXMucmVzZXRDb2xvcihhcmdzJTJDJTIwdXRpbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGRyYXdhYmxlJTIwJTNEJTIwcmVuZGVyLl9hbGxEcmF3YWJsZXMlNUJ0YXJnZXQuZHJhd2FibGVJRCU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGluaXREcmF3YWJsZShkcmF3YWJsZSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELnJlcGxhY2Vycy5wdXNoKCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRhcmdldEhleCUzQSUyMGFyZ3MuQ09MT1IxJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGFyZ2V0VmVydCUzQSUyMHRoaXMuaGV4MlZlYzQoYXJncy5DT0xPUjEpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmVwbGFjZVZlcnQlM0ElMjB0aGlzLmhleDJWZWM0KGFyZ3MuQ09MT1IyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNvZnQlM0ElMjBNYXRoLm1heChDYXN0LnRvTnVtYmVyKGFyZ3MuVkFMVUUpJTJDJTIwMSklMjAlMkYlMjAxMDAlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmVuZGVyLmRpcnR5JTIwJTNEJTIwdHJ1ZSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJlc2V0Q29sb3IoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0aGlzLmdldFRhcmdldChhcmdzLlRBUkdFVCUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXRhcmdldCklMjByZXR1cm4lM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGRyYXdhYmxlJTIwJTNEJTIwcmVuZGVyLl9hbGxEcmF3YWJsZXMlNUJ0YXJnZXQuZHJhd2FibGVJRCU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGluaXREcmF3YWJsZShkcmF3YWJsZSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGluZGV4JTIwJTNEJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RC5yZXBsYWNlcnMuZmluZEluZGV4KChpKSUyMCUzRCUzRSUyMCU3QiUyMHJldHVybiUyMGkudGFyZ2V0SGV4JTIwJTNEJTNEJTNEJTIwYXJncy5DT0xPUjElMjAlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoaW5kZXglMjAlM0UlMjAtMSklMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELnJlcGxhY2Vycy5zcGxpY2UoaW5kZXglMkMlMjAxKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJlbmRlci5kaXJ0eSUyMCUzRCUyMHRydWUlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjByZXNldFJlcGxhY2VycyhhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRhcmdldCUyMCUzRCUyMHRoaXMuZ2V0VGFyZ2V0KGFyZ3MuVEFSR0VUJTJDJTIwdXRpbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGFyZ2V0KSUyMHJldHVybiUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZHJhd2FibGUlMjAlM0QlMjByZW5kZXIuX2FsbERyYXdhYmxlcyU1QnRhcmdldC5kcmF3YWJsZUlEJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaW5pdERyYXdhYmxlKGRyYXdhYmxlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQucmVwbGFjZXJzLmxlbmd0aCUyMCUzRSUyMDApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RC5yZXBsYWNlcnMlMjAlM0QlMjAlNUIlNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZW5kZXIuZGlydHklMjAlM0QlMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwd2FycFNwcml0ZShhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHRhcmdldCUyMCUzRCUyMHRoaXMuZ2V0VGFyZ2V0KGFyZ3MuVEFSR0VUJTJDJTIwdXRpbCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGFyZ2V0KSUyMHJldHVybiUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZHJhd2FibGUlMjAlM0QlMjByZW5kZXIuX2FsbERyYXdhYmxlcyU1QnRhcmdldC5kcmF3YWJsZUlEJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaW5pdERyYXdhYmxlKGRyYXdhYmxlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwb2xkV2FycCUyMCUzRCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQud2FycCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQud2FycCUyMCUzRCUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMENhc3QudG9OdW1iZXIoYXJncy54MSklMjAlMkYlMjAtMjAwJTJDJTIwQ2FzdC50b051bWJlcihhcmdzLnkxKSUyMCUyRiUyMC0yMDAlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBDYXN0LnRvTnVtYmVyKGFyZ3MueDIpJTIwJTJGJTIwLTIwMCUyQyUyMENhc3QudG9OdW1iZXIoYXJncy55MiklMjAlMkYlMjAtMjAwJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ2FzdC50b051bWJlcihhcmdzLng0KSUyMCUyRiUyMC0yMDAlMkMlMjBDYXN0LnRvTnVtYmVyKGFyZ3MueTQpJTIwJTJGJTIwLTIwMCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMENhc3QudG9OdW1iZXIoYXJncy54MyklMjAlMkYlMjAtMjAwJTJDJTIwQ2FzdC50b051bWJlcihhcmdzLnkzKSUyMCUyRiUyMC0yMDAlMEElMjAlMjAlMjAlMjAlMjAlMjAlNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCghdGhpcy5hcnJheU1hdGNoZXMob2xkV2FycCUyQyUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQud2FycCkpJTIwcmVuZGVyLmRpcnR5JTIwJTNEJTIwdHJ1ZSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMG1hc2tTcHJpdGUoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0aGlzLmdldFRhcmdldChhcmdzLlRBUkdFVCUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXRhcmdldCklMjByZXR1cm4lM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGRyYXdhYmxlJTIwJTNEJTIwcmVuZGVyLl9hbGxEcmF3YWJsZXMlNUJ0YXJnZXQuZHJhd2FibGVJRCU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGluaXREcmF3YWJsZShkcmF3YWJsZSklM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHVybCUyMCUzRCUyMENhc3QudG9TdHJpbmcoYXJncy5JTUFHRSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELm9sZE1hc2slMjAlM0QlM0QlM0QlMjB1cmwpJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXVybCUyMCU3QyU3QyUyMCEodXJsLnN0YXJ0c1dpdGgoJTIyZGF0YSUzQWltYWdlJTJGJTIyKSUyMCU3QyU3QyUyMHVybC5zdGFydHNXaXRoKCUyMmh0dHBzJTNBJTJGJTJGJTIyKSkpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RC5tYXNrVGV4dHVyZSUyMCUzRCUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQub2xkTWFzayUyMCUzRCUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQuc2hvdWxkTWFzayUyMCUzRCUyMDAlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZW5kZXIuZGlydHklMjAlM0QlMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwbmV3JTIwUHJvbWlzZSgocmVzb2x2ZSklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGdsJTIwJTNEJTIwcmVuZGVyLl9nbCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELl9tYXNrVGV4dHVyZSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELl9tYXNrVGV4dHVyZSUyMCUzRCUyMGdsLmNyZWF0ZVRleHR1cmUoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGdsLmJpbmRUZXh0dXJlKGdsLlRFWFRVUkVfMkQlMkMlMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELl9tYXNrVGV4dHVyZSklM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBnbC50ZXhQYXJhbWV0ZXJpKGdsLlRFWFRVUkVfMkQlMkMlMjBnbC5URVhUVVJFX01JTl9GSUxURVIlMkMlMjBnbC5ORUFSRVNUKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGdsLnRleFBhcmFtZXRlcmkoZ2wuVEVYVFVSRV8yRCUyQyUyMGdsLlRFWFRVUkVfTUFHX0ZJTFRFUiUyQyUyMGdsLk5FQVJFU1QpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZ2wudGV4UGFyYW1ldGVyaShnbC5URVhUVVJFXzJEJTJDJTIwZ2wuVEVYVFVSRV9XUkFQX1MlMkMlMjBnbC5DTEFNUF9UT19FREdFKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGdsLnRleFBhcmFtZXRlcmkoZ2wuVEVYVFVSRV8yRCUyQyUyMGdsLlRFWFRVUkVfV1JBUF9UJTJDJTIwZ2wuQ0xBTVBfVE9fRURHRSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGltYWdlJTIwJTNEJTIwbmV3JTIwSW1hZ2UoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGltYWdlLmNyb3NzT3JpZ2luJTIwJTNEJTIwJTIyQW5vbnltb3VzJTIyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaW1hZ2Uub25sb2FkJTIwJTNEJTIwKCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBnbC5iaW5kVGV4dHVyZShnbC5URVhUVVJFXzJEJTJDJTIwZHJhd2FibGUlNUJkcmF3YWJsZUtleSU1RC5fbWFza1RleHR1cmUpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZ2wudGV4SW1hZ2UyRChnbC5URVhUVVJFXzJEJTJDJTIwMCUyQyUyMGdsLlJHQkElMkMlMjBnbC5SR0JBJTJDJTIwZ2wuVU5TSUdORURfQllURSUyQyUyMGltYWdlKSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQubWFza1RleHR1cmUlMjAlM0QlMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELl9tYXNrVGV4dHVyZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRyYXdhYmxlJTVCZHJhd2FibGVLZXklNUQuc2hvdWxkTWFzayUyMCUzRCUyMDElM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkcmF3YWJsZSU1QmRyYXdhYmxlS2V5JTVELm9sZE1hc2slMjAlM0QlMjB1cmwlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZW5kZXIuZGlydHklMjAlM0QlMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmVzb2x2ZSgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaW1hZ2Uub25lcnJvciUyMCUzRCUyMChlKSUyMCUzRCUzRSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnNvbGUud2FybihlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJlc29sdmUoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGltYWdlLnNyYyUyMCUzRCUyMHVybCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBzaG93U3ByaXRlKGFyZ3MlMkMlMjB1dGlsKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdGFyZ2V0JTIwJTNEJTIwdGhpcy5nZXRUYXJnZXQoYXJncy5UQVJHRVQlMkMlMjB1dGlsKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHRhcmdldCklMjB0YXJnZXQuc2V0VmlzaWJsZSh0cnVlKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGhpZGVTcHJpdGUoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0aGlzLmdldFRhcmdldChhcmdzLlRBUkdFVCUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodGFyZ2V0KSUyMHRhcmdldC5zZXRWaXNpYmxlKGZhbHNlKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHNwcml0ZVNob3dpbmcoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0aGlzLmdldFRhcmdldChhcmdzLlRBUkdFVCUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXRhcmdldCUyMCU3QyU3QyUyMCF0YXJnZXQudmlzaWJsZSklMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGFyZ3MuVFlQRSUyMCUzRCUzRCUzRCUyMCUyMnNob3dpbmclMjIpJTIwcmV0dXJuJTIwdHJ1ZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGVsc2UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBjaGVjayUyMGlmJTIwc3ByaXRlJTIwaXMlMjB2aXNpYmxlJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodGFyZ2V0LmVmZmVjdHMuZ2hvc3QlMjAlM0QlM0QlM0QlMjAxMDApJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBjaGVjayUyMGlmJTIwc3ByaXRlJTIwaXMlMjBvbi1zY3JlZW4lMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGJvdW5kcyUyMCUzRCUyMHRhcmdldC5nZXRCb3VuZHMoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGJvdW5kcy5sZWZ0JTIwJTNFJTIwcnVudGltZS5zdGFnZVdpZHRoJTIwJTJGJTIwMiUyMCU3QyU3QyUyMGJvdW5kcy5yaWdodCUyMCUzQyUyMHJ1bnRpbWUuc3RhZ2VXaWR0aCUyMCUyRiUyMC0yKSUyMHJldHVybiUyMGZhbHNlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoYm91bmRzLmJvdHRvbSUyMCUzRSUyMHJ1bnRpbWUuc3RhZ2VIZWlnaHQlMjAlMkYlMjAyJTIwJTdDJTdDJTIwYm91bmRzLnRvcCUyMCUzQyUyMHJ1bnRpbWUuc3RhZ2VIZWlnaHQlMjAlMkYlMjAtMiklMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMGNoZWNrJTIwaWYlMjBzcHJpdGUlMjBpcyUyMGJlaW5nJTIwY292ZXJlZCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbGF5ZXJJbmQlMjAlM0QlMjB0YXJnZXQuZ2V0TGF5ZXJPcmRlcigpJTIwJTJCJTIwMSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwcmFuZ2VJZHMlMjAlM0QlMjBuZXclMjBBcnJheShyZW5kZXIuX2FsbERyYXdhYmxlcy5sZW5ndGglMjAtJTIwbGF5ZXJJbmQpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZm9yJTIwKGxldCUyMGklMjAlM0QlMjAwJTNCJTIwaSUyMCUzQyUyMHJhbmdlSWRzLmxlbmd0aCUzQiUyMGklMkIlMkIpJTIwJTdCJTIwcmFuZ2VJZHMlNUJpJTVEJTIwJTNEJTIwbGF5ZXJJbmQlMjAlMkIlMjBpJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwIXJlbmRlci5pc1RvdWNoaW5nRHJhd2FibGVzKHRhcmdldC5kcmF3YWJsZUlEJTJDJTIwcmFuZ2VJZHMpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwc3ByaXRlUHJvcGVydHkoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0YXJnZXQlMjAlM0QlMjB0aGlzLmdldFRhcmdldChhcmdzLlRBUkdFVCUyQyUyMHV0aWwpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwc3dpdGNoJTIwKGFyZ3MuUFJPUCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIyd2lkdGglMjIlM0ElMjByZXR1cm4lMjB0YXJnZXQuZ2V0Qm91bmRzKCkud2lkdGglM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIyaGVpZ2h0JTIyJTNBJTIwcmV0dXJuJTIwdGFyZ2V0LmdldEJvdW5kcygpLmhlaWdodCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJsYXllciUyMCUyMyUyMiUzQSUyMHJldHVybiUyMHRhcmdldC5nZXRMYXllck9yZGVyKCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0JTNBJTIwcmV0dXJuJTIwJTIyJTIyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTdEJTBBJTBBJTIwJTIwU2NyYXRjaC5leHRlbnNpb25zLnJlZ2lzdGVyKG5ldyUyMFNQbG9va3NFeHBhbmRlZCgpKSUzQiUwQSU3RCkoU2NyYXRjaCklM0IlMEElMjAlN0QpKFNjcmF0Y2gpJTNCIiwiZGF0YTp0ZXh0L2phdmFzY3JpcHQ7LChmdW5jdGlvbihTY3JhdGNoKSUyMCU3QiUyMCUyRiUyRiUyME5hbWUlM0ElMjBNb3JlJTIwT3BlcmF0b3JzJTBBJTJGJTJGJTIwSUQlM0ElMjBTUG1vcmVPUHMlMEElMkYlMkYlMjBEZXNjcmlwdGlvbiUzQSUyME1vcmUlMjBQb3dlcmZ1bCUyME9wZXJhdG9yJTIwQmxvY2tzJTBBJTJGJTJGJTIwQnklM0ElMjBTaGFya1Bvb2wlMEElMEElMkYlMkYlMjBWZXJzaW9uJTIwVi4xLjIuMiUwQSUwQShmdW5jdGlvbiUyMChTY3JhdGNoKSUyMCU3QiUwQSUyMCUyMCUyMnVzZSUyMHN0cmljdCUyMiUzQiUwQSUyMCUyMGlmJTIwKCFTY3JhdGNoLmV4dGVuc2lvbnMudW5zYW5kYm94ZWQpJTIwdGhyb3clMjBuZXclMjBFcnJvciglMjJNb3JlJTIwT3BlcmF0b3JzJTIwbXVzdCUyMHJ1biUyMHVuc2FuZGJveGVkJTIyKSUzQiUwQSUwQSUyMCUyMGNvbnN0JTIwbWVudUljb25VUkklMjAlM0QlMEElMjJkYXRhJTNBaW1hZ2UlMkZzdmclMkJ4bWwlM0JiYXNlNjQlMkNQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0kzTnk0eU1qSWlJR2hsYVdkb2REMGlOemN1TWpJeUlpQjJhV1YzUW05NFBTSXdJREFnTnpjdU1qSXlJRGMzTGpJeU1pSSUyQlBHY2djM1J5YjJ0bExXMXBkR1Z5YkdsdGFYUTlJakV3SWo0OGNHRjBhQ0JrUFNKTk1pQXpPQzQyTVRGRE1pQXhPQzR6T1RFZ01UZ3VNemt4SURJZ016Z3VOakV4SURKek16WXVOakV4SURFMkxqTTVNU0F6Tmk0Mk1URWdNell1TmpFeExURTJMak01TVNBek5pNDJNVEV0TXpZdU5qRXhJRE0yTGpZeE1WTXlJRFU0TGpnek1TQXlJRE00TGpZeE1Yb2lJR1pwYkd3OUlpTTFPV013TlRraUlITjBjbTlyWlQwaUl6UTNPV0UwTnlJZ2MzUnliMnRsTFhkcFpIUm9QU0kwSWk4JTJCUEhCaGRHZ2daRDBpVFRFZ01XZzNOQzR5TWpKMk56UXVNakl5U0RGNklpQm1hV3hzUFNKdWIyNWxJaTglMkJQSEJoZEdnZ1pEMGlUVFEwTGpNMU5pQXhOUzQwTkRWakxUTXVNamt4TFM0eU9Ua3ROaTR4T1RRZ01pNHhNalV0Tmk0ME9UTWdOUzQwTkRac0xTNDNORGdnT0M0Mk5EaG9PQzQwTXpoMk5TNDVPRFJvTFRndU9UYzNiQzB4TGpNeE5pQXhOUzR4TjJFeE1TNDVNamNnTVRFdU9USTNJREFnTUNBeExURXlMamsxTnlBeE1DNDROak1nTVRFdU9Ua2dNVEV1T1RrZ01DQXdJREV0T1M0eE5UWXROUzQxT1Rac05DNDBPRGd0TkM0ME9EaGpMamN4T0NBeUxqSXhOQ0F5TGpZNU15QXpMamt5SURVdU1UYzNJRFF1TVRJNUlETXVNamt4TGpNZ05pNHhPVFF0TWk0eE1qUWdOaTQwT1RNdE5TNDBORFpzTVM0eU9EY3RNVFF1TmpNeWFDMDRMamszTjNZdE5TNDVPRFJJTXpFdU1Xd3VPREE0TFRrdU1UZzNZeTQxTmprdE5pNDFPRElnTmk0ek56UXRNVEV1TkRZZ01USXVPVFUzTFRFd0xqZzJNU0F6TGpreUxqTXlPU0EzTGpJeE1TQXlMalV4TXlBNUxqRTFOaUExTGpVNU5Xd3ROQzQwT0RnZ05DNDBPRGxqTFM0M01Ua3RNaTR5TVRVdE1pNDJPVE10TXk0NU1pMDFMakUzTnkwMExqRXpiVGd1TURnNUlEUTFMamcyTVdFeUxqWTBJREl1TmpRZ01DQXdJREV0TWk0Mk5DMHlMalkwZGkwMUxqTTJNbWd0TlM0ek5qSmhNaTQyTkNBeUxqWTBJREFnTUNBeExUSXVOak01TFRJdU5qTTVkaTB5TGpReU4yRXlMalkwSURJdU5qUWdNQ0F3SURFZ01pNDJOQzB5TGpZMGFEVXVNell5ZGkwMUxqTTJNV0V5TGpZMElESXVOalFnTUNBd0lERWdNaTQyTXprdE1pNDJOR2d5TGpReU4yRXlMalkwSURJdU5qUWdNQ0F3SURFZ01pNDJNemtnTWk0Mk5IWTFMak0yTW1nMUxqTTJNbUV5TGpZMElESXVOalFnTUNBd0lERWdNaTQyTkNBeUxqWTBkakl1TkRJMllUSXVOalFnTWk0Mk5DQXdJREFnTVMweUxqWTBJREl1TmpSb0xUVXVNell5ZGpVdU16WXlZVEl1TmpRZ01pNDJOQ0F3SURBZ01TMHlMalkwSURJdU5qTTVlaUlnWm1sc2JEMGlJMlptWmlJdlBqd3ZaejQ4TDNOMlp6NCUzRCUyMiUzQiUwQSUwQSUyMCUyMGNvbnN0JTIwdm0lMjAlM0QlMjBTY3JhdGNoLnZtJTNCJTBBJTIwJTIwY29uc3QlMjBDYXN0JTIwJTNEJTIwU2NyYXRjaC5DYXN0JTNCJTBBJTIwJTIwY29uc3QlMjByZWdlblJlcG9ydGVycyUyMCUzRCUyMCU1QiUyMlNQbW9yZU9Qc19nZXRMZXR0ZXIlMjIlMkMlMjAlMjJTUG1vcmVPUHNfZ2V0SW5kZXglMjIlNUQlM0IlMEElMjAlMjBpZiUyMChTY3JhdGNoLmd1aSklMjBTY3JhdGNoLmd1aS5nZXRCbG9ja2x5KCkudGhlbihTQiUyMCUzRCUzRSUyMCU3QiUwQSUyMCUyMCUyMCUyMGNvbnN0JTIwb3JpZ2luYWxDaGVjayUyMCUzRCUyMFNCLnNjcmF0Y2hCbG9ja3NVdGlscy5pc1NoYWRvd0FyZ3VtZW50UmVwb3J0ZXIlM0IlMEElMjAlMjAlMjAlMjBTQi5zY3JhdGNoQmxvY2tzVXRpbHMuaXNTaGFkb3dBcmd1bWVudFJlcG9ydGVyJTIwJTNEJTIwZnVuY3Rpb24lMjAoYmxvY2spJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZXN1bHQlMjAlM0QlMjBvcmlnaW5hbENoZWNrKGJsb2NrKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHJlc3VsdCklMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwYmxvY2suaXNTaGFkb3coKSUyMCUyNiUyNiUyMHJlZ2VuUmVwb3J0ZXJzLmluY2x1ZGVzKGJsb2NrLnR5cGUpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTNCJTBBJTIwJTIwJTdEKSUzQiUwQSUwQSUyMCUyMHZtLnJ1bnRpbWUub24oJTIyUFJPSkVDVF9MT0FERUQlMjIlMkMlMjAoKSUyMCUzRCUzRSUyMCU3QiUwQSUyMCUyMCUyMCUyMGlmJTIwKCFTY3JhdGNoLmV4dGVuc2lvbnMuaXNQZW5ndWluTW9kKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc3RvcmFnZSUyMCUzRCUyMHZtLnJ1bnRpbWUuZXh0ZW5zaW9uU3RvcmFnZSU1QiUyMlNQbW9yZU9QcyUyMiU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHN0b3JhZ2UlMjAlM0QlM0QlM0QlMjB1bmRlZmluZWQpJTIwcmV0dXJuJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwZm9yJTIwKGxldCUyMGklMjAlM0QlMjAwJTNCJTIwaSUyMCUzQyUyMHN0b3JhZ2UubGlicmFyeS5sZW5ndGglM0IlMjBpJTJCJTJCKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc2NyaXB0RWxlbWVudCUyMCUzRCUyMGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJTIyc2NyaXB0JTIyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNjcmlwdEVsZW1lbnQudGV4dENvbnRlbnQlMjAlM0QlMjBzdG9yYWdlLmxpYnJhcnklNUJpJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY3JpcHRFbGVtZW50KSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMGlzU29sdmVyQWRkZWQlMjAlM0QlMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbG9hZGVkTGlicmFyeSUyMCUzRCUyMHN0b3JhZ2UubGlicmFyeSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHZtLmV4dGVuc2lvbk1hbmFnZXIucmVmcmVzaEJsb2NrcygpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTdEKSUzQiUwQSUwQSUyMCUyMCUyRiUyRiUyMEJsb2NrJTIwcmVxdWlyZXMlMjBhJTIwTGlicmFyeSUyQyUyMExpYnJhcnklMjBpcyUyMGZldGNoZWQlMjBvbmNlJTIwYW5kJTIwc2F2ZWQlMjB0byUyMHRoZSUyMHByb2plY3QlMEElMjAlMjBsZXQlMjBpc1NvbHZlckFkZGVkJTIwJTNEJTIwZmFsc2UlM0IlMEElMjAlMjBsZXQlMjBsb2FkZWRMaWJyYXJ5JTIwJTNEJTIwJTVCJTVEJTNCJTBBJTBBJTIwJTIwbGV0JTIwdHh0UmVwbGFjZXJzJTIwJTNEJTIwJTdCJTdEJTNCJTBBJTBBJTIwJTIwY2xhc3MlMjBTUG1vcmVPUHMlMjAlN0IlMEElMjAlMjAlMjAlMjBnZXRJbmZvKCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZCUzQSUyMCUyMlNQbW9yZU9QcyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG5hbWUlM0ElMjAlMjJNb3JlJTIwT3BlcmF0b3JzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29sb3IxJTNBJTIwJTIyJTIzNTlDMDU5JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29sb3IyJTNBJTIwJTIyJTIzNTBhZDUwJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29sb3IzJTNBJTIwJTIyJTIzNDc5YTQ3JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudUljb25VUkklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja3MlM0ElMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJiaXRMb2dpYyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCQ09OMSU1RCUyMCU1QlRZUEUlNUQlMjAlNUJDT04yJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ09OMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5CT09MRUFOJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVFlQRSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyTE9HSUMlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBDT04yJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLkJPT0xFQU4lMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ3aXRoJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlNUJTVFJJTkcxJTVEJTIwJTVCVFlQRSU1RCUyMHdpdGglMjAlNUJTVFJJTkcyJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhcHBsZSUyMGJhbmFuYSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRZUEUlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMldJVEhTJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhcHBsZSUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMm5vQ29udGFpbiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJPT0xFQU4lMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCU1RSSU5HMSU1RCUyMG5vdCUyMGNvbnRhaW5zJTIwJTVCU1RSSU5HMiU1RCUzRiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORzElM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYXBwbGUlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkcyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmJhbmFuYSUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmV2ZW5PZGQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5CT09MRUFOJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMmlzJTIwJTVCTlVNJTVEJTIwJTVCVFlQRSU1RCUzRiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVFlQRSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyRVZFTl9PREQlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJpc1ByaW1lJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJpcyUyMCU1Qk5VTSU1RCUyMHByaW1lJTNGJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDIlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0aW1lUGFzc2VkJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQk9PTEVBTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJoYXMlMjAlNUJOVU0lNUQlMjBzZWNvbmRzJTIwcGFzc2VkJTNGJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDElMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0eXBlU3RyaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCU1RSSU5HMSU1RCUyMCU1QlRZUEUlNUQlMjAlNUJTVFJJTkcyJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjIlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBUWVBFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMG1lbnUlM0ElMjAlMjJTVFJJTkclMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkcyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMnZhbHVlJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuTEFCRUwlMkMlMjB0ZXh0JTNBJTIwJTIyTWF0aCUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGZ1bmMlM0ElMjAlMjJ0cnlBZGRTb2x2ZSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkJVVFRPTiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGhpZGVGcm9tUGFsZXR0ZSUzQSUyMGlzU29sdmVyQWRkZWQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIySW1wb3J0JTIwU3BlY2lhbCUyME1hdGglMjBCbG9ja3MlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJldmFsTnVtJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBoaWRlRnJvbVBhbGV0dGUlM0ElMjAhaXNTb2x2ZXJBZGRlZCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJldmFsJTIwJTVCU1RSSU5HJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUyMCUzQSUyMCUyMjElMjAlMkIlMjAxJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyc29sdmVGb3IlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGhpZGVGcm9tUGFsZXR0ZSUzQSUyMCFpc1NvbHZlckFkZGVkJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMnNvbHZlJTIwZm9yJTIwJTVCVkFSJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBWQVIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudSUzQSUyMCUyMlZBUklBQkxFUyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMnglMjIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkclM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwZGVmYXVsdFZhbHVlJTIwJTNBJTIwJTIyeCUyMCUyQiUyMDElMjAlM0QlMjAyJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZGVyaXZhdGl2ZU9mJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBoaWRlRnJvbVBhbGV0dGUlM0ElMjAhaXNTb2x2ZXJBZGRlZCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJkZXJpdmF0aXZlJTIwb2YlMjAlNUJTVFJJTkclNUQlMjB3aXRoJTIwcmVzcGVjdCUyMHRvJTIwJTVCVkFSJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMnglNUUyJTIwJTJCJTIwMyp4JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwVkFSJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1lbnUlM0ElMjAlMjJWQVJJQUJMRVMlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJ4JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycm9vdCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMiU1Qk4lNUQlMjAlRTIlODglOUElMjAlNUJOVU0lNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUyMCUzQSUyMDIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU0lM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTIwJTNBJTIwMjUlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJleHBvbmVudCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMiU1Qk5VTSU1RCUyMCU1RSUyMCU1Qk4lNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUyMCUzQSUyMDIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU0lM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTIwJTNBJTIwNSUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnBlcmNlbnQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjIlNUJOVU0xJTVEJTIwJTI1JTIwb2YlMjAlNUJOVU0yJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlMjAlM0ElMjA1MCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTIlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTIwJTNBJTIwNTAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJsY20lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJsY20lMjBvZiUyMCU1Qk5VTTElNUQlMjBhbmQlMjAlNUJOVU0yJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjA1JTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNMiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAxNSUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmdjZCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMmdjZCUyMG9mJTIwJTVCTlVNMSU1RCUyMGFuZCUyMCU1Qk5VTTIlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU0xJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDUlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU0yJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDE1JTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIybmVnYUFicyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMm5lZ2EtYWJzJTIwb2YlMjAlNUJOVU1CRVIlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU1CRVIlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwNSUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnNpbXBsaWZ5RnJhYyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMnNpbXBsaWZ5JTIwZnJhY3Rpb24lMjAlNUJOVU0lNUQlMjAlMkYlMjAlNUJERU5PTSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjA0JTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwREVOT00lM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwOCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnJvdW5kTmVhciUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMnJvdW5kJTIwJTVCTlVNQkVSJTVEJTIwdG8lMjBuZWFyZXN0JTIwJTVCUk9VTkRfVFlQRSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTUJFUiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAzLjE0MTUlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBST1VORF9UWVBFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDMlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0cmlwbGVPcGVyYXRvciUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMiU1Qk5VTTElNUQlMjAlNUJPUEVSQVRPUjElNUQlMjAlNUJOVU0yJTVEJTIwJTVCT1BFUkFUT1IyJTVEJTIwJTVCTlVNMyU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTElM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9QRVJBVE9SMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyT1BFUkFUT1JfTUVOVSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTIlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9QRVJBVE9SMiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyT1BFUkFUT1JfTUVOVSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTMlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnF1YWRydXBsZU9wZXJhdG9yJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyJTVCTlVNMSU1RCUyMCU1Qk9QRVJBVE9SMSU1RCUyMCU1Qk5VTTIlNUQlMjAlNUJPUEVSQVRPUjIlNUQlMjAlNUJOVU0zJTVEJTIwJTVCT1BFUkFUT1IzJTVEJTIwJTVCTlVNNCU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTElM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9QRVJBVE9SMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyT1BFUkFUT1JfTUVOVSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTIlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9QRVJBVE9SMiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyT1BFUkFUT1JfTUVOVSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTMlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9QRVJBVE9SMyUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBtZW51JTNBJTIwJTIyT1BFUkFUT1JfTUVOVSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME5VTTQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLkxBQkVMJTJDJTIwdGV4dCUzQSUyMCUyMlN0cmluZ3MlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJ0cmltJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIydHJpbSUyMCU1QlNUUklORyU1RCUyMGF0JTIwJTVCVFlQRSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhcHBsZSUyMCUyMCUyMCUyMCUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRZUEUlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlBBRFMlMjIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJib3RoJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyaW5zZXJ0U3RyaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyaW5zZXJ0JTIwJTVCU1RSSU5HMiU1RCUyMGFmdGVyJTIwbGV0dGVyJTIwJTVCTlVNJTVEJTIwaW4lMjAlNUJTVFJJTkcxJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJiYW5hJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwTlVNJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDMlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkcyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmFuJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycGFkZGluZyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMnBhZCUyMCU1QlNUUklORzElNUQlMjBhdCUyMCU1QlRZUEUlNUQlMjB3aXRoJTIwJTVCU1RSSU5HMiU1RCUyMGF0JTIwbGVuZ3RoJTIwJTVCTlVNJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhbmFuYSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRZUEUlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwbWVudSUzQSUyMCUyMlBBRFMlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkcyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmIlMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBOVU0lM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuTlVNQkVSJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwMTAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJyYW5kb21MZXR0ZXIlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJyYW5kb20lMjAlNUJMRVRURVJfVFlQRSU1RCUyMGxldHRlciUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExFVFRFUl9UWVBFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMG1lbnUlM0ElMjAlMjJMRVRURVJfVFlQRV9NRU5VJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycmFuZG9tQ2hhclJhbmdlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIycmFuZG9tJTIwY2hhcmFjdGVyJTIwJTVCT05FJTVEJTIwdG8lMjAlNUJUV08lNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPTkUlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRXTyUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJjJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycm5kU3RyaW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhbGxvd0Ryb3BBbnl3aGVyZSUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIycmFuZG9tJTIwJTVCU1RSSU5HMSU1RCUyMG9yJTIwJTVCU1RSSU5HMiU1RCUyMHdpdGglMjAlNUJDSEFOQ0UlNUQlMjUlMjBjaGFuY2UlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkcxJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmZvbyUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORzIlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYmFyJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ0hBTkNFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDUwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyLS0tJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyd29yZEluZGV4JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIyaW5kZXglMjAlMjMlNUJPUkRFUiU1RCUyMG9mJTIwJTVCU0VBUkNIJTVEJTIwaW4lMjAlNUJTVFJJTkclNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPUkRFUiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU0VBUkNIJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmJhbmFuYSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORyUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJhcHBsZSUyMGJhbmFuYSUyMGJhbmFuYSUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnJlcGxhY2VLZXklMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJyZXBsYWNlJTIwJTVCS0VZJTVEJTIwJTIzJTVCT1JERVIlNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMHdpdGglMjAlNUJSRVBMQUNFJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmFwcGxlJTIwYmFuYW5hJTIwYmFuYW5hJTIyJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwS0VZJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmJhbmFuYSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyME9SREVSJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBSRVBMQUNFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMm9yYW5nZSUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnJlcGxhY2VLZXlzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0JTNBJTIwJTIycmVwbGFjZSUyMCU1QktFWSU1RCUyMCUyMyU1Qk9SREVSJTVEJTIwdG8lMjAlMjMlNUJPUkRFUjIlNUQlMjBvZiUyMCU1QlNUUklORyU1RCUyMHdpdGglMjAlNUJSRVBMQUNFJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMmJhbmFuYSUyMGJhbmFuYSUyMG9yYW5nZSUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMEtFWSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAlMjJiYW5hbmElMjIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPUkRFUiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5OVU1CRVIlMkMlMjBkZWZhdWx0VmFsdWUlM0ElMjAxJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwT1JERVIyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLk5VTUJFUiUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMDIlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBSRVBMQUNFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMm9yYW5nZSUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnNldFJlcGxhY2VyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJzZXQlMjB0ZXh0JTIwcmVwbGFjZXIlMjAlNUJURVhUJTVEJTIwdG8lMjAlNUJWQUxVRSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFRFWFQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyJTI0JTdCdGV4dCU3RCUyMiUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFZBTFVFJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMndvcmxkISUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnJlc2V0UmVwbGFjZXJzJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuQ09NTUFORCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJyZXNldCUyMHRleHQlMjByZXBsYWNlcnMlMjIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJhcHBseVJlcGxhY2VycyUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMmFwcGx5JTIwdGV4dCUyMHJlcGxhY2UlMjB0byUyMCU1QlRFWFQlNUQlMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBURVhUJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyQyUyMGRlZmF1bHRWYWx1ZSUzQSUyMCUyMkhlbGxvJTIwJTI0JTdCdGV4dCU3RCUyMiUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMi0tLSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMnRyaXBsZUpvaW4lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBleHRlbnNpb25zJTNBJTIwJTVCJTIyY29sb3Vyc19vcGVyYXRvcnMlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5SRVBPUlRFUiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJqb2luJTIwJTVCU1RSSU5HMSU1RCUyMCU1QlNUUklORzIlNUQlMjAlNUJTVFJJTkczJTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkcyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORzMlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIycXVhZHJ1cGxlSm9pbiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMmpvaW4lMjAlNUJTVFJJTkcxJTVEJTIwJTVCU1RSSU5HMiU1RCUyMCU1QlNUUklORzMlNUQlMjAlNUJTVFJJTkc0JTVEJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYXJndW1lbnRzJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkcyJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORzMlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HNCUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBvcGNvZGUlM0ElMjAlMjJmaXZlSm9pbiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGV4dGVuc2lvbnMlM0ElMjAlNUIlMjJjb2xvdXJzX29wZXJhdG9ycyUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrVHlwZSUzQSUyMFNjcmF0Y2guQmxvY2tUeXBlLlJFUE9SVEVSJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyMmpvaW4lMjAlNUJTVFJJTkcxJTVEJTIwJTVCU1RSSU5HMiU1RCUyMCU1QlNUUklORzMlNUQlMjAlNUJTVFJJTkc0JTVEJTIwJTVCU1RSSU5HNSU1RCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFyZ3VtZW50cyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORzElM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HMiUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkczJTNBJTIwJTdCJTIwdHlwZSUzQSUyMFNjcmF0Y2guQXJndW1lbnRUeXBlLlNUUklORyUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFNUUklORzQlM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwU1RSSU5HNSUzQSUyMCU3QiUyMHR5cGUlM0ElMjBTY3JhdGNoLkFyZ3VtZW50VHlwZS5TVFJJTkclMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjItLS0lMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja1R5cGUlM0ElMjBTY3JhdGNoLkJsb2NrVHlwZS5YTUwlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB4bWwlM0ElMjAlNjAlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlM0NibG9jayUyMHR5cGUlM0QlMjJTUG1vcmVPUHNfZm9yTGV0dGVyJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNDdmFsdWUlMjBuYW1lJTNEJTIyTEVUVEVSJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMlNQbW9yZU9Qc19nZXRMZXR0ZXIlMjIlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUzQ3ZhbHVlJTIwbmFtZSUyMCUzRCUyMCUyMklOREVYJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMlNQbW9yZU9Qc19nZXRJbmRleCUyMiUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTNDdmFsdWUlMjBuYW1lJTNEJTIyU1RSSU5HJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFYmFuYW5hJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUzQyUyRmJsb2NrJTNFJTYwJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZm9yTGV0dGVyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuTE9PUCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjJmb3IlMjBlYWNoJTIwJTVCTEVUVEVSJTVEJTIwJTVCSU5ERVglNUQlMjBpbiUyMCU1QlNUUklORyU1RCUyMiUyQyUyMGhpZGVGcm9tUGFsZXR0ZSUzQSUyMHRydWUlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBhcmd1bWVudHMlM0ElMjAlN0IlMjBMRVRURVIlM0ElMjAlN0IlN0QlMkMlMjBTVFJJTkclM0ElMjAlN0IlMjB0eXBlJTNBJTIwU2NyYXRjaC5Bcmd1bWVudFR5cGUuU1RSSU5HJTJDJTIwZGVmYXVsdFZhbHVlJTNBJTIwJTIyYmFuYW5hJTIyJTdEJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwb3Bjb2RlJTNBJTIwJTIyZ2V0TGV0dGVyJTIyJTJDJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMjBoaWRlRnJvbVBhbGV0dGUlM0ElMjB0cnVlJTJDJTIwdGV4dCUzQSUyMCUyMmxldHRlciUyMiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG9wY29kZSUzQSUyMCUyMmdldEluZGV4JTIyJTJDJTIwZXh0ZW5zaW9ucyUzQSUyMCU1QiUyMmNvbG91cnNfb3BlcmF0b3JzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tUeXBlJTNBJTIwU2NyYXRjaC5CbG9ja1R5cGUuUkVQT1JURVIlMkMlMjBoaWRlRnJvbVBhbGV0dGUlM0ElMjB0cnVlJTJDJTIwdGV4dCUzQSUyMCUyMmluZGV4JTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbWVudXMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBMT0dJQyUzQSUyMCU1QiUyMmFuZCUyMiUyQyUyMCUyMm5hbmQlMjIlMkMlMjAlMjJvciUyMiUyQyUyMCUyMm5vciUyMiUyQyUyMCUyMnhvciUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMFdJVEhTJTNBJTIwJTVCJTIyc3RhcnRzJTIyJTJDJTIwJTIyZW5kcyUyMiUyQyUyMCUyMmVuY2xvc2VzJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwRVZFTl9PREQlM0ElMjAlNUIlMjJldmVuJTIyJTJDJTIwJTIyb2RkJTIyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwUEFEUyUzQSUyMCU1QiUyMnN0YXJ0JTIyJTJDJTIwJTIyZW5kJTIyJTJDJTIwJTIyYm90aCUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMExFVFRFUl9UWVBFX01FTlUlM0ElMjAlN0IlMjBhY2NlcHRSZXBvcnRlcnMlM0ElMjB0cnVlJTJDJTIwaXRlbXMlM0ElMjAlNUIlMjJsb3dlcmNhc2UlMjIlMkMlMjAlMjJ1cHBlcmNhc2UlMjIlNUQlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPUEVSQVRPUl9NRU5VJTNBJTIwJTVCJTIyJTJCJTIyJTJDJTIwJTIyLSUyMiUyQyUyMCUyMiolMjIlMkMlMjAlMjIlMkYlMjIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBTVFJJTkclM0ElMjAlN0IlMjBhY2NlcHRSZXBvcnRlcnMlM0ElMjB0cnVlJTJDJTIwaXRlbXMlM0ElMjAlNUIlMjIlN0MlN0MlMjIlMkMlMjAlMjIlM0YlM0YlMjIlNUQlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBWQVJJQUJMRVMlM0ElMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJhJTIyJTJDJTIyYiUyMiUyQyUyMmMlMjIlMkMlMjJkJTIyJTJDJTIyZSUyMiUyQyUyMmYlMjIlMkMlMjJnJTIyJTJDJTIyaCUyMiUyQyUyMmklMjIlMkMlMjJqJTIyJTJDJTIyayUyMiUyQyUyMmwlMjIlMkMlMjJtJTIyJTJDJTIybiUyMiUyQyUyMm8lMjIlMkMlMjJwJTIyJTJDJTIycSUyMiUyQyUyMnIlMjIlMkMlMjJzJTIyJTJDJTIydCUyMiUyQyUyMnUlMjIlMkMlMjJ2JTIyJTJDJTIydyUyMiUyQyUyMnglMjIlMkMlMjJ5JTIyJTJDJTIyeiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMkElMjIlMkMlMjJCJTIyJTJDJTIyQyUyMiUyQyUyMkQlMjIlMkMlMjJFJTIyJTJDJTIyRiUyMiUyQyUyMkclMjIlMkMlMjJIJTIyJTJDJTIySSUyMiUyQyUyMkolMjIlMkMlMjJLJTIyJTJDJTIyTCUyMiUyQyUyMk0lMjIlMkMlMjJOJTIyJTJDJTIyTyUyMiUyQyUyMlAlMjIlMkMlMjJRJTIyJTJDJTIyUiUyMiUyQyUyMlMlMjIlMkMlMjJUJTIyJTJDJTIyVSUyMiUyQyUyMlYlMjIlMkMlMjJXJTIyJTJDJTIyWCUyMiUyQyUyMlklMjIlMkMlMjJaJTIyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwYXN5bmMlMjB0cnlBZGRTb2x2ZSgpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobmF2aWdhdG9yLm9uTGluZSklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0cnklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB3aW5kb3cuYWxlcnQoJTIyVGhlc2UlMjBCbG9ja3MlMjByZXF1aXJlJTIwYSUyME1hdGglMjBMaWJyYXJ5JTIwdG8lMjB3b3JrLiUyMERvbnQlMjB3b3JyeSUyQyUyMHRoaXMlMjBMaWJyYXJ5JTIwaXMlMjBsb2FkZWQlMjBPbmNlJTIwKGVkaXRvciklMjBhbmQlMjBpcyUyMFNhdmVkJTIwdG8lMjB0aGUlMjBQcm9qZWN0JTIyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwYmFzZVVSTCUyMCUzRCUyMCUyMmh0dHBzJTNBJTJGJTJGcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSUyRlNoYXJrUG9vbC1TUCUyRlNoYXJrUG9vbHMtRXh0ZW5zaW9ucyUyRnJlZnMlMkZoZWFkcyUyRm1haW4lMkZleHRlbnNpb24tdXRpbHMlMkZNTyUyRm1hdGgtJTIyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsaW5rcyUyMCUzRCUyMCU1QiUyMmNvcmUuanMlMjIlMkMlMjAlMjJhbGdlYnJhLmpzJTIyJTJDJTIwJTIyY2FsY3VsdXMuanMlMjIlMkMlMjAlMjJzb2x2ZS5qcyUyMiU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwdGV4dHMlMjAlM0QlMjAlNUIlNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmb3IlMjAobGV0JTIwaSUyMCUzRCUyMDAlM0IlMjBpJTIwJTNDJTIwbGlua3MubGVuZ3RoJTNCJTIwaSUyQiUyQiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHJlc3BvbnNlJTIwJTNEJTIwYXdhaXQlMjBTY3JhdGNoLmZldGNoKGJhc2VVUkwlMjAlMkIlMjBsaW5rcyU1QmklNUQpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXJlc3BvbnNlLm9rKSUyMHRocm93JTIwbmV3JTIwRXJyb3IoJTIyRmV0Y2glMjBmYWlsZWQlMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjB0eHQlMjAlM0QlMjBhd2FpdCUyMHJlc3BvbnNlLnRleHQoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc2NyaXB0RWxlbWVudCUyMCUzRCUyMGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJTIyc2NyaXB0JTIyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNjcmlwdEVsZW1lbnQudGV4dENvbnRlbnQlMjAlM0QlMjB0eHQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0ZXh0cy5wdXNoKHR4dCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdEVsZW1lbnQpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaXNTb2x2ZXJBZGRlZCUyMCUzRCUyMHRydWUlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2bS5leHRlbnNpb25NYW5hZ2VyLnJlZnJlc2hCbG9ja3MoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGxvYWRlZExpYnJhcnklMjAlM0QlMjB0ZXh0cyUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFTY3JhdGNoLmV4dGVuc2lvbnMuaXNQZW5ndWluTW9kKSUyMHZtLnJ1bnRpbWUuZXh0ZW5zaW9uU3RvcmFnZSU1QiUyMlNQbW9yZU9QcyUyMiU1RCUyMCUzRCUyMCU3QiUyMGxvYWRlZCUyMCUzQSUyMHRydWUlMkMlMjBsaWJyYXJ5JTIwJTNBJTIwdGV4dHMlMjAlN0QlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMjBjYXRjaCUyMCU3QiUyMGFsZXJ0KCUyMkZldGNoJTIwRmFpbGVkJTJDJTIwVW5hYmxlJTIwdG8lMjBJbXBvcnQlMjB0aGlzJTIwQmxvY2slMjIpJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTIwZWxzZSUyMCU3QiUyMGFsZXJ0KCUyMllvdSUyME11c3QlMjBiZSUyME9ubGluZSUyMHRvJTIwSW1wb3J0JTIwdGhpcyUyMEJsb2NrJTIyKSUyMCU3RCUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGJpdExvZ2ljKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBjb24xJTIwJTNEJTIwQ2FzdC50b0Jvb2xlYW4oYXJncy5DT04xKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwY29uMiUyMCUzRCUyMENhc3QudG9Cb29sZWFuKGFyZ3MuQ09OMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBzd2l0Y2glMjAoYXJncy5UWVBFKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJhbmQlMjIlMjAlM0ElMjByZXR1cm4lMjBjb24xJTIwJTI2JTI2JTIwY29uMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJuYW5kJTIyJTNBJTIwcmV0dXJuJTIwIShjb24xJTIwJTI2JTI2JTIwY29uMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwJTIyb3IlMjIlMjAlM0ElMjByZXR1cm4lMjBjb24xJTIwJTdDJTdDJTIwY29uMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJub3IlMjIlM0ElMjByZXR1cm4lMjAhKGNvbjElMjAlN0MlN0MlMjBjb24yKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNhc2UlMjAlMjJ4b3IlMjIlM0ElMjByZXR1cm4lMjBjb24xJTIwISUzRCUzRCUyMGNvbjIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjB3aXRoKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzdHJpbmclMjAlM0QlMjBDYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HMSklMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChhcmdzLlRZUEUlMjAlM0QlM0QlM0QlMjAlMjJzdGFydHMlMjIpJTIwcmV0dXJuJTIwc3RyaW5nLnN0YXJ0c1dpdGgoYXJncy5TVFJJTkcyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGFyZ3MuVFlQRSUyMCUzRCUzRCUzRCUyMCUyMmVuZHMlMjIpJTIwcmV0dXJuJTIwc3RyaW5nLmVuZHNXaXRoKGFyZ3MuU1RSSU5HMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBzdHJpbmcuc3RhcnRzV2l0aChhcmdzLlNUUklORzIpJTIwJTI2JTI2JTIwc3RyaW5nLmVuZHNXaXRoKGFyZ3MuU1RSSU5HMiklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBub0NvbnRhaW4oYXJncyklMjAlN0IlMjByZXR1cm4lMjAhdm0ucnVudGltZS5leHRfc2NyYXRjaDNfb3BlcmF0b3JzLmNvbnRhaW5zKGFyZ3MpJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwdGltZVBhc3NlZChhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGlkJTIwJTNEJTIwdXRpbC50aHJlYWQuYmxvY2tDb250YWluZXIuZ2V0QmxvY2sodXRpbC50aHJlYWQuaXNDb21waWxlZCUyMCUzRiUyMHV0aWwudGhyZWFkLnBlZWtTdGFjaygpJTIwJTNBJTIwdXRpbC50aHJlYWQucGVla1N0YWNrRnJhbWUoKS5vcC5pZCklM0YuaWQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCh1dGlsLnRocmVhZC5zdGFja0ZyYW1lcyU1QjAlNUQlNUJpZCUyMCUyQiUyMCUyMnN0YXJ0VGltZSUyMiU1RCUyMCElM0QlM0QlMjB1bmRlZmluZWQpJTIwcmV0dXJuJTIwRGF0ZS5ub3coKSUyMCUzRSUyMHV0aWwudGhyZWFkLnN0YWNrRnJhbWVzJTVCMCU1RCU1QmlkJTIwJTJCJTIwJTIyc3RhcnRUaW1lJTIyJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwZWxzZSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHV0aWwudGhyZWFkLnN0YWNrRnJhbWVzJTVCMCU1RCU1QmlkJTIwJTJCJTIwJTIyc3RhcnRUaW1lJTIyJTVEJTIwJTNEJTIwRGF0ZS5ub3coKSUyMCUyQiUyMChDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNKSUyMColMjAxMDAwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGZhbHNlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwdHlwZVN0cmluZyhhcmdzKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGFyZ3MuVFlQRSUyMCUzRCUzRCUzRCUyMCUyMiU3QyU3QyUyMiklMjByZXR1cm4lMjBhcmdzLlNUUklORzElMjAlN0MlN0MlMjBhcmdzLlNUUklORzIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBlbHNlJTIwcmV0dXJuJTIwYXJncy5TVFJJTkcxJTIwJTNEJTNEJTNEJTIwJTIydW5kZWZpbmVkJTIyJTIwJTdDJTdDJTIwYXJncy5TVFJJTkcxJTIwJTNEJTNEJTNEJTIwJTIybnVsbCUyMiUyMCUzRiUyMGFyZ3MuU1RSSU5HMiUyMCUzQSUyMGFyZ3MuU1RSSU5HMSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGV2ZW5PZGQoYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG4lMjAlM0QlMjBDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGFyZ3MuVFlQRSUyMCUzRCUzRCUzRCUyMCUyMmV2ZW4lMjIpJTIwcmV0dXJuJTIwbiUyMCUyNSUyMDIlMjAlM0QlM0QlM0QlMjAwJTBBJTIwJTIwJTIwJTIwJTIwJTIwZWxzZSUyMHJldHVybiUyMG4lMjAlMjUlMjAyJTIwISUzRCUzRCUyMDAlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBpc1ByaW1lKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBuJTIwJTNEJTIwTWF0aC5hYnMoQ2FzdC50b051bWJlcihhcmdzLk5VTSkpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobiUyMCUzQyUzRCUyMDEpJTIwcmV0dXJuJTIwZmFsc2UlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChuJTIwJTNDJTNEJTIwMyklMjByZXR1cm4lMjB0cnVlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobiUyMCUyNSUyMDIlMjAlM0QlM0QlM0QlMjAwJTIwJTdDJTdDJTIwbiUyMCUyNSUyMDMlMjAlM0QlM0QlM0QlMjAwKSUyMHJldHVybiUyMGZhbHNlJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwZm9yJTIwKGxldCUyMGklMjAlM0QlMjA1JTNCJTIwaSUyMColMjBpJTIwJTNDJTNEJTIwbiUzQiUyMGklMjAlMkIlM0QlMjA2KSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKG4lMjAlMjUlMjBpJTIwJTNEJTNEJTNEJTIwMCUyMCU3QyU3QyUyMG4lMjAlMjUlMjAoaSUyMCUyQiUyMDIpJTIwJTNEJTNEJTNEJTIwMCklMjByZXR1cm4lMjBmYWxzZSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHRydWUlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjAlMkYlMkYlMjByZXF1aXJlcyUyMGxvYWRpbmclMjBsaWJyYXJ5JTIwZmlyc3QlMEElMjAlMjAlMjAlMjBldmFsTnVtKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwdHJ5JTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzb2x1dGlvbiUyMCUzRCUyMG5lcmRhbWVyKGFyZ3MuU1RSSU5HLnJlcGxhY2UoJTJGJTVDcyUyQiUyRmclMkMlMjAlMjIlMjIpKS5ldmFsdWF0ZSgpLnRleHQoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHNvbHV0aW9uJTIwJTNGJTIwJTYwJTVCJTIyJTI0JTdCc29sdXRpb24udG9TdHJpbmcoKSU3RCUyMiU1RCU2MCUyMCUzQSUyMCUyMk5vJTIwc29sdXRpb24lMjBmb3VuZCUyMiUzQiUyMCUyRiUyRiUyMENyZWF0ZSUyMGFuJTIwQXJyYXklMjBmb3IlMjBDb21wYXRpYmlsaXR5JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTIwY2F0Y2glMjAlN0IlMjByZXR1cm4lMjAlMjJ1bmRlZmluZWQlMjIlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBzb2x2ZUZvcihhcmdzKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZXhwciUyMCUzRCUyMENhc3QudG9TdHJpbmcoYXJncy5TVFJJTkcpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwdHJ5JTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzb2x1dGlvbiUyMCUzRCUyMG5lcmRhbWVyLnNvbHZlRXF1YXRpb25zKGV4cHIucmVwbGFjZSglMkYlNUNzJTJCJTJGZyUyQyUyMCUyMiUyMiklMkMlMjBhcmdzLlZBUiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGRlY2ltYWxTb2xzJTIwJTNEJTIwc29sdXRpb24ubWFwKHNvbCUyMCUzRCUzRSUyMG5lcmRhbWVyKHNvbCkuZXZhbHVhdGUoKS50ZXh0KCkpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwZGVjaW1hbFNvbHMubGVuZ3RoJTIwJTNFJTIwMCUyMCUzRiUyMEpTT04uc3RyaW5naWZ5KGRlY2ltYWxTb2xzKSUyMCUzQSUyMCUyMk5vJTIwc29sdXRpb24lMjBmb3VuZCUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGNhdGNoJTIwJTdCJTIwcmV0dXJuJTIwJTIydW5kZWZpbmVkJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwZGVyaXZhdGl2ZU9mKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBleHByJTIwJTNEJTIwQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjB0cnklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHNvbHV0aW9uJTIwJTNEJTIwbmVyZGFtZXIoZXhwci5yZXBsYWNlKCUyRiU1Q3MlMkIlMkZnJTJDJTIwJTIyJTIyKSkuZXZhbHVhdGUoKS50ZXh0KCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBzb2x1dGlvbiUyMCUzRiUyMCU2MCU1QiUyMiUyNCU3QnNvbHV0aW9uLnRvU3RyaW5nKCklN0QlMjIlNUQlNjAlMjAlM0ElMjAlMjJObyUyMHNvbHV0aW9uJTIwZm91bmQlMjIlM0IlMjAlMkYlMkYlMjBDcmVhdGUlMjBhbiUyMEFycmF5JTIwZm9yJTIwQ29tcGF0aWJpbGl0eSUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGNhdGNoJTIwJTdCJTIwcmV0dXJuJTIwJTIydW5kZWZpbmVkJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwZGVyaXZhdGl2ZU9mKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBleHByJTIwJTNEJTIwQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjB0cnklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHJlc3VsdCUyMCUzRCUyMG5lcmRhbWVyKCU2MGRpZmYoJTI0JTdCZXhwciU3RCUyQyUyMCUyNCU3QmFyZ3MuVkFSJTdEKSU2MCkudG9TdHJpbmcoKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHJlc3VsdCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyMGNhdGNoJTIwJTdCJTIwcmV0dXJuJTIwJTIydW5kZWZpbmVkJTIyJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwcm9vdChhcmdzKSUyMCU3QiUyMHJldHVybiUyME1hdGgucG93KENhc3QudG9OdW1iZXIoYXJncy5OVU0pJTJDJTIwMSUyMCUyRiUyMENhc3QudG9OdW1iZXIoYXJncy5OKSklMjAlN0QlMEElMEElMjAlMjAlMjAlMjBleHBvbmVudChhcmdzKSUyMCU3QiUyMHJldHVybiUyME1hdGgucG93KENhc3QudG9OdW1iZXIoYXJncy5OVU0pJTJDJTIwQ2FzdC50b051bWJlcihhcmdzLk4pKSUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHBlcmNlbnQoYXJncyklMjAlN0IlMjByZXR1cm4lMjBDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNMiklMjAqJTIwKENhc3QudG9OdW1iZXIoYXJncy5OVU0xKSUyMColMjAwLjAxKSUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHNpbXBsaWZ5RnJhYyhhcmdzKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwbnVtZXJhdG9yJTIwJTNEJTIwQ2FzdC50b051bWJlcihhcmdzLk5VTSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGRlbm9taW5hdG9yJTIwJTNEJTIwQ2FzdC50b051bWJlcihhcmdzLkRFTk9NKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZ2NkJTIwJTNEJTIwKGElMkMlMjBiKSUyMCUzRCUzRSUyMChiJTIwJTNGJTIwZ2NkKGIlMkMlMjBhJTIwJTI1JTIwYiklMjAlM0ElMjBhKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwZ2NkVmFsdWUlMjAlM0QlMjBnY2QobnVtZXJhdG9yJTJDJTIwZGVub21pbmF0b3IpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZXN1bHQlMjAlM0QlMjBKU09OLnN0cmluZ2lmeSglNUJudW1lcmF0b3IlMjAlMkYlMjBnY2RWYWx1ZSUyQyUyMGRlbm9taW5hdG9yJTIwJTJGJTIwZ2NkVmFsdWUlNUQpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwcmVzdWx0LmluY2x1ZGVzKCUyMm51bGwlMjIpJTIwJTNGJTIwJTIyJTVCdW5kZWZpbmVkJTVEJTIyJTIwJTNBJTIwcmVzdWx0JTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwZ2NkKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwbnVtMSUyMCUzRCUyMENhc3QudG9OdW1iZXIoYXJncy5OVU0xKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGxldCUyMG51bTIlMjAlM0QlMjBDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjB3aGlsZSUyMChudW0yJTIwISUzRCUzRCUyMDApJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwdCUyMCUzRCUyMG51bTIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBudW0yJTIwJTNEJTIwbnVtMSUyMCUyNSUyMG51bTIlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBudW0xJTIwJTNEJTIwdCUzQiUwQSUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMG51bTElM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBsY20oYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG51bTElMjAlM0QlMjBDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNMSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG51bTIlMjAlM0QlMjBDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBNYXRoLmFicyhudW0xJTIwKiUyMG51bTIpJTIwJTJGJTIwdGhpcy5nY2QoJTdCJTIwTlVNMSUyMCUzQSUyMG51bTElMkMlMjBOVU0yJTIwJTNBJTIwbnVtMiUyMCU3RCklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBuZWdhQWJzKCU3QiUyME5VTUJFUiUyMCU3RCklMjAlN0IlMjByZXR1cm4lMjAtTWF0aC5hYnMoQ2FzdC50b051bWJlcihOVU1CRVIpKSUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJvdW5kTmVhcihhcmdzKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwcHJlY2lzaW9uJTIwJTNEJTIwTWF0aC5tYXgoMCUyQyUyME1hdGgucm91bmQoQ2FzdC50b051bWJlcihhcmdzLlJPVU5EX1RZUEUpKSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG11bHRpcGxpZXIlMjAlM0QlMjBNYXRoLnBvdygxMCUyQyUyMHByZWNpc2lvbiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBNYXRoLnJvdW5kKGFyZ3MuTlVNQkVSJTIwKiUyMG11bHRpcGxpZXIpJTIwJTJGJTIwbXVsdGlwbGllciUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHRyaXBsZU9wZXJhdG9yKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBudW1zJTIwJTNEJTIwJTVCQ2FzdC50b051bWJlcihhcmdzLk5VTTEpJTJDJTIwQ2FzdC50b051bWJlcihhcmdzLk5VTTIpJTJDJTIwQ2FzdC50b051bWJlcihhcmdzLk5VTTMpJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwZXZhbCglNjAlMjQlN0JudW1zJTVCMCU1RCU3RCUyMCUyNCU3QmFyZ3MuT1BFUkFUT1IxJTdEJTIwJTI0JTdCbnVtcyU1QjElNUQlN0QlMjAlMjQlN0JhcmdzLk9QRVJBVE9SMiU3RCUyMCUyNCU3Qm51bXMlNUIyJTVEJTdEJTYwKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHF1YWRydXBsZU9wZXJhdG9yKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBudW1zJTIwJTNEJTIwJTVCQ2FzdC50b051bWJlcihhcmdzLk5VTTEpJTJDJTIwQ2FzdC50b051bWJlcihhcmdzLk5VTTIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwQ2FzdC50b051bWJlcihhcmdzLk5VTTMpJTJDJTIwQ2FzdC50b051bWJlcihhcmdzLk5VTTQpJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwZXZhbCglNjAlMjQlN0JudW1zJTVCMCU1RCU3RCUyMCUyNCU3QmFyZ3MuT1BFUkFUT1IxJTdEJTIwJTI0JTdCbnVtcyU1QjElNUQlN0QlMjAlMjQlN0JhcmdzLk9QRVJBVE9SMiU3RCUyMCUyNCU3Qm51bXMlNUIyJTVEJTdEJTIwJTI0JTdCYXJncy5PUEVSQVRPUjMlN0QlMjAlMjQlN0JudW1zJTVCMyU1RCU3RCU2MCklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjB0cmltKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklNUJhcmdzLlRZUEUlMjAlM0QlM0QlM0QlMjAlMjJzdGFydCUyMiUyMCUzRiUyMCUyMnRyaW1TdGFydCUyMiUyMCUzQSUyMGFyZ3MuVFlQRSUyMCUzRCUzRCUzRCUyMCUyMmVuZCUyMiUyMCUzRiUyMCUyMnRyaW1FbmQlMjIlMjAlM0ElMjAlMjJ0cmltJTIyJTVEKCklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBwYWRkaW5nKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBsZW5ndGglMjAlM0QlMjBDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNKSUyQyUyMHN0cmluZyUyMCUzRCUyMENhc3QudG9TdHJpbmcoYXJncy5TVFJJTkcxKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGFyZ3MuVFlQRSUyMCUzRCUzRCUzRCUyMCUyMnN0YXJ0JTIyKSUyMHJldHVybiUyMHN0cmluZy5wYWRTdGFydChsZW5ndGglMkMlMjBhcmdzLlNUUklORzIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoYXJncy5UWVBFJTIwJTNEJTNEJTNEJTIwJTIyZW5kJTIyKSUyMHJldHVybiUyMHN0cmluZy5wYWRFbmQobGVuZ3RoJTJDJTIwYXJncy5TVFJJTkcyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHN0cmluZy5wYWRTdGFydChzdHJpbmcubGVuZ3RoJTIwJTJCJTIwKChsZW5ndGglMjAtJTIwc3RyaW5nLmxlbmd0aCklMjAlMkYlMjAyKSUyQyUyMGFyZ3MuU1RSSU5HMikucGFkRW5kKGxlbmd0aCUyQyUyMGFyZ3MuU1RSSU5HMiklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBpbnNlcnRTdHJpbmcoYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHN0cmluZzElMjAlM0QlMjBDYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HMSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHN0cmluZzIlMjAlM0QlMjBDYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HMiklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG4lMjAlM0QlMjBDYXN0LnRvTnVtYmVyKGFyZ3MuTlVNKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc3RyaW5nMUFycmF5JTIwJTNEJTIwc3RyaW5nMS5zcGxpdCglMjIlMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwc3RyaW5nMUFycmF5LnNwbGljZShuJTJDJTIwMCUyQyUyMC4uLnN0cmluZzIuc3BsaXQoJTIyJTIyKSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBzdHJpbmcxQXJyYXkuam9pbiglMjIlMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwcmFuZG9tTGV0dGVyKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwbGV0dGVycyUyMCUzRCUyMCUyMmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6JTIyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoYXJncy5MRVRURVJfVFlQRSUyMCUzRCUzRCUzRCUyMCUyMnVwcGVyY2FzZSUyMiklMjBsZXR0ZXJzJTIwJTNEJTIwbGV0dGVycy50b1VwcGVyQ2FzZSgpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwbGV0dGVycy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpJTIwKiUyMDI2KSklM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjB3b3JkSW5kZXgoYXJncyklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG9yZGVyJTIwJTNEJTIwQ2FzdC50b051bWJlcihhcmdzLk9SREVSKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc2VhcmNoJTIwJTNEJTIwQ2FzdC50b1N0cmluZyhhcmdzLlNFQVJDSCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMG9yaWdpbmFsJTIwJTNEJTIwQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORyklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBsZXQlMjBpbmRleCUyMCUzRCUyMC0xJTJDJTIwZnJvbUluZGV4JTIwJTNEJTIwMCUzQiUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKG9yZGVyJTIwJTNDJTIwMSUyMCU3QyU3QyUyMCFzZWFyY2gpJTIwcmV0dXJuJTIwMCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGZvciUyMChsZXQlMjBpJTIwJTNEJTIwMCUzQiUyMGklMjAlM0MlMjBvcmRlciUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaW5kZXglMjAlM0QlMjBvcmlnaW5hbC5pbmRleE9mKHNlYXJjaCUyQyUyMGZyb21JbmRleCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChpbmRleCUyMCUzRCUzRCUzRCUyMC0xKSUyMHJldHVybiUyMDAlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmcm9tSW5kZXglMjAlM0QlMjBpbmRleCUyMCUyQiUyMHNlYXJjaC5sZW5ndGglM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBpbmRleCUyMCUyQiUyMDElM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjByZXBsYWNlS2V5KGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZWdleCUyMCUzRCUyMG5ldyUyMFJlZ0V4cChhcmdzLktFWSUyQyUyMCUyMmclMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwaW5kZXglMjAlM0QlMjAwJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORykucmVwbGFjZShyZWdleCUyQyUyMChtYXRjaCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpbmRleCUyQiUyQiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGluZGV4JTIwJTNEJTNEJTNEJTIwQ2FzdC50b051bWJlcihhcmdzLk9SREVSKSUyMCUzRiUyMGFyZ3MuUkVQTEFDRSUyMCUzQSUyMG1hdGNoJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTdEKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJlcGxhY2VLZXlzKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZWdleCUyMCUzRCUyMG5ldyUyMFJlZ0V4cChhcmdzLktFWSUyQyUyMCUyMmclMjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwaW5kZXglMjAlM0QlMjAwJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBvcmQxJTIwJTNEJTIwQ2FzdC50b051bWJlcihhcmdzLk9SREVSKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwb3JkMiUyMCUzRCUyMENhc3QudG9OdW1iZXIoYXJncy5PUkRFUjIpJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBvcmRlcjIlMjAlM0QlMjBvcmQxJTIwJTNFJTIwb3JkMiUyMCUzRiUyMG9yZDElMjAlM0ElMjBvcmQyJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwQ2FzdC50b1N0cmluZyhhcmdzLlNUUklORykucmVwbGFjZShyZWdleCUyQyUyMChtYXRjaCklMjAlM0QlM0UlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpbmRleCUyQiUyQiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGluZGV4JTIwJTNFJTNEJTIwb3JkMSUyMCUyNiUyNiUyMGluZGV4JTIwJTNDJTNEJTIwb3JkZXIyJTIwJTNGJTIwYXJncy5SRVBMQUNFJTIwJTNBJTIwbWF0Y2glM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwc2V0UmVwbGFjZXIoYXJncyklMjAlN0IlMjB0eHRSZXBsYWNlcnMlNUJDYXN0LnRvU3RyaW5nKGFyZ3MuVEVYVCklNUQlMjAlM0QlMjBDYXN0LnRvU3RyaW5nKGFyZ3MuVkFMVUUpJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwcmVzZXRSZXBsYWNlcnMoKSUyMCU3QiUyMHR4dFJlcGxhY2VycyUyMCUzRCUyMCU3QiU3RCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMGFwcGx5UmVwbGFjZXJzKGFyZ3MpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwdGV4dCUyMCUzRCUyMENhc3QudG9TdHJpbmcoYXJncy5URVhUKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGZvciUyMChjb25zdCUyMHJlcGxhY2VyJTIwaW4lMjB0eHRSZXBsYWNlcnMpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjByZXBsYWNlclZhbCUyMCUzRCUyMHR4dFJlcGxhY2VycyU1QnJlcGxhY2VyJTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUyMCUzRCUyMHRleHQucmVwbGFjZUFsbChyZXBsYWNlciUyQyUyMHJlcGxhY2VyVmFsKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMHRleHQlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjByYW5kb21DaGFyUmFuZ2UoYXJncyklMjAlN0IlMjAlMEElMjAlMjAlMjAlMjAlMjAlMjBsZXQlMjBPTkUlMjAlM0QlMjBDYXN0LnRvU3RyaW5nKGFyZ3MuT05FKS5jaGFyQ29kZUF0KDApJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwbGV0JTIwVFdPJTIwJTNEJTIwQ2FzdC50b1N0cmluZyhhcmdzLlRXTykuY2hhckNvZGVBdCgwKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMFN0cmluZy5mcm9tQ2hhckNvZGUoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpJTIwKiUyMChUV08lMjAtJTIwT05FJTIwJTJCJTIwMSklMjAlMkIlMjBPTkUpKSUzQiUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHJuZFN0cmluZyhhcmdzKSUyMCU3QiUyMHJldHVybiUyME1hdGgucmFuZG9tKCklMjAlM0UlMjBhcmdzLkNIQU5DRSUyMCUyRiUyMDEwMCUyMCUzRiUyMGFyZ3MuU1RSSU5HMiUyMCUzQSUyMGFyZ3MuU1RSSU5HMSUyMCU3RCUwQSUwQSUyMCUyMCUyMCUyMHRyaXBsZUpvaW4oJTdCJTIwU1RSSU5HMSUyQyUyMFNUUklORzIlMkMlMjBTVFJJTkczJTIwJTdEKSUyMCU3QiUyMHJldHVybiUyMCU2MCUyNCU3QlNUUklORzElN0QlMjQlN0JTVFJJTkcyJTdEJTI0JTdCU1RSSU5HMyU3RCU2MCUyMCU3RCUwQSUyMCUyMCUyMCUyMHF1YWRydXBsZUpvaW4oJTdCJTIwU1RSSU5HMSUyQyUyMFNUUklORzIlMkMlMjBTVFJJTkczJTJDJTIwU1RSSU5HNCUyMCU3RCklMjAlN0IlMjByZXR1cm4lMjAlNjAlMjQlN0JTVFJJTkcxJTdEJTI0JTdCU1RSSU5HMiU3RCUyNCU3QlNUUklORzMlN0QlMjQlN0JTVFJJTkc0JTdEJTYwJTIwJTdEJTBBJTIwJTIwJTIwJTIwZml2ZUpvaW4oJTdCJTIwU1RSSU5HMSUyQyUyMFNUUklORzIlMkMlMjBTVFJJTkczJTJDJTIwU1RSSU5HNCUyQyUyMFNUUklORzUlMjAlN0QpJTIwJTdCJTIwcmV0dXJuJTIwJTYwJTI0JTdCU1RSSU5HMSU3RCUyNCU3QlNUUklORzIlN0QlMjQlN0JTVFJJTkczJTdEJTI0JTdCU1RSSU5HNCU3RCUyNCU3QlNUUklORzUlN0QlNjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjBmb3JMZXR0ZXIoYXJncyUyQyUyMHV0aWwpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwY29uc3QlMjBzdHJpbmclMjAlM0QlMjBDYXN0LnRvU3RyaW5nKGFyZ3MuU1RSSU5HKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHV0aWwuc3RhY2tGcmFtZS5pbmRleCUyMCUzRCUzRCUzRCUyMHVuZGVmaW5lZCklMjB1dGlsLnN0YWNrRnJhbWUuaW5kZXglMjAlM0QlMjAwJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodXRpbC50aHJlYWQuc3RhY2tGcmFtZXMlNUIwJTVELlNQbGV0dGVyJTIwJTNEJTNEJTNEJTIwdW5kZWZpbmVkKSUyMHV0aWwudGhyZWFkLnN0YWNrRnJhbWVzJTVCMCU1RC5TUGxldHRlciUyMCUzRCUyMCUyMiUyMiUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHV0aWwuc3RhY2tGcmFtZS5pbmRleCUyMCUzQyUyMHN0cmluZy5sZW5ndGgpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbC50aHJlYWQuc3RhY2tGcmFtZXMlNUIwJTVELlNQbGV0dGVyJTIwJTNEJTIwc3RyaW5nJTVCdXRpbC5zdGFja0ZyYW1lLmluZGV4JTVEJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbC5zdGFja0ZyYW1lLmluZGV4JTJCJTJCJTNCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdXRpbC50aHJlYWQuc3RhY2tGcmFtZXMlNUIwJTVELlNQaW5kZXglMjAlM0QlMjB1dGlsLnN0YWNrRnJhbWUuaW5kZXglM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB1dGlsLnN0YXJ0QnJhbmNoKDElMkMlMjB0cnVlKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGdldExldHRlcihhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB1dGlsLnRocmVhZC5zdGFja0ZyYW1lcyU1QjAlNUQuU1BsZXR0ZXIlMjAlM0YlM0YlMjAlMjIlMjIlM0IlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjBnZXRJbmRleChhcmdzJTJDJTIwdXRpbCklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjB1dGlsLnRocmVhZC5zdGFja0ZyYW1lcyU1QjAlNUQuU1BpbmRleCUyMCUzRiUzRiUyMDAlMEElMjAlMjAlMjAlMjAlN0QlMEElMEElMjAlMjAlMjAlMjAlMkYlMkYlMjBIZWxwZXIlMjBGdW5jdGlvbnMlMEElMjAlMjAlMjAlMjBnZXRVbnVzZWRWYXIoZXhwcmVzc2lvbiklMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMGF2b2lkTGlzdCUyMCUzRCUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmElMjIlMkMlMjJiJTIyJTJDJTIyYyUyMiUyQyUyMmQlMjIlMkMlMjJlJTIyJTJDJTIyZiUyMiUyQyUyMmclMjIlMkMlMjJoJTIyJTJDJTIyaSUyMiUyQyUyMmolMjIlMkMlMjJrJTIyJTJDJTIybCUyMiUyQyUyMm0lMjIlMkMlMjJuJTIyJTJDJTIybyUyMiUyQyUyMnAlMjIlMkMlMjJxJTIyJTJDJTIyciUyMiUyQyUyMnMlMjIlMkMlMjJ0JTIyJTJDJTIydSUyMiUyQyUyMnYlMjIlMkMlMjJ3JTIyJTJDJTIyeCUyMiUyQyUyMnklMjIlMkMlMjJ6JTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyQSUyMiUyQyUyMkIlMjIlMkMlMjJDJTIyJTJDJTIyRCUyMiUyQyUyMkUlMjIlMkMlMjJGJTIyJTJDJTIyRyUyMiUyQyUyMkglMjIlMkMlMjJJJTIyJTJDJTIySiUyMiUyQyUyMkslMjIlMkMlMjJMJTIyJTJDJTIyTSUyMiUyQyUyMk4lMjIlMkMlMjJPJTIyJTJDJTIyUCUyMiUyQyUyMlElMjIlMkMlMjJSJTIyJTJDJTIyUyUyMiUyQyUyMlQlMjIlMkMlMjJVJTIyJTJDJTIyViUyMiUyQyUyMlclMjIlMkMlMjJYJTIyJTJDJTIyWSUyMiUyQyUyMlolMjIlMEElMjAlMjAlMjAlMjAlMjAlMjAlNUQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBjb25zdCUyMHVzZWRWYXJpYWJsZXMlMjAlM0QlMjBleHByZXNzaW9uLnNwbGl0KCUyMiUyMikuZmlsdGVyKGNoYXIlMjAlM0QlM0UlMjAlMkYlNUJhLXpBLVolNUQlMkYudGVzdChjaGFyKSklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjBmb3IlMjAobGV0JTIwaSUyMCUzRCUyMDAlM0IlMjBpJTIwJTNDJTIwYXZvaWRMaXN0Lmxlbmd0aCUzQiUyMGklMkIlMkIpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIXVzZWRWYXJpYWJsZXMuaW5jbHVkZXMoYXZvaWRMaXN0JTVCaSU1RCkpJTIwcmV0dXJuJTIwYXZvaWRMaXN0JTVCaSU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMElmJTIwYWxsJTIwYXZvaWQlMjBsaXN0JTIwdmFyaWFibGVzJTIwYXJlJTIwdXNlZCUyQyUyMGRlZmF1bHQlMjB0byUyMHVuc29sdmFibGUlMjAob3ZlcmZsb3cpJTBBJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwdW5kZWZpbmVkJTNCJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTBBJTIwJTIwJTIwJTIwJTJGJTJGJTIwUGVuZ3Vpbk1vZCUyMFN0b3JhZ2UlMEElMjAlMjAlMjAlMjBzZXJpYWxpemUoKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCU3QiUyMFNQbW9yZU9QcyUyMCUzQSUyMCU3QiUyMGxvYWRlZCUyMCUzQSUyMGlzU29sdmVyQWRkZWQlMkMlMjBsaWJyYXJ5JTIwJTNBJTIwbG9hZGVkTGlicmFyeSUyMCU3RCUyMCU3RCUwQSUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMGRlc2VyaWFsaXplKGRhdGEpJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoZGF0YS5TUG1vcmVPUHMlMjAhJTNEJTNEJTIwdW5kZWZpbmVkKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlzU29sdmVyQWRkZWQlMjAlM0QlMjBkYXRhLlNQbW9yZU9Qcy5sb2FkZWQlM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBsb2FkZWRMaWJyYXJ5JTIwJTNEJTIwZGF0YS5TUG1vcmVPUHMubGlicmFyeSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGxvYWRlZExpYnJhcnkubGVuZ3RoJTIwJTNEJTNEJTNEJTIwMCklMjByZXR1cm4lM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBmb3IlMjAobGV0JTIwaSUyMCUzRCUyMDAlM0IlMjBpJTIwJTNDJTIwbG9hZGVkTGlicmFyeS5sZW5ndGglM0IlMjBpJTJCJTJCKSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNvbnN0JTIwc2NyaXB0RWxlbWVudCUyMCUzRCUyMGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJTIyc2NyaXB0JTIyKSUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNjcmlwdEVsZW1lbnQudGV4dENvbnRlbnQlMjAlM0QlMjBsb2FkZWRMaWJyYXJ5JTVCaSU1RCUzQiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2NyaXB0RWxlbWVudCklM0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlN0QlMEElMEElMjAlMjBTY3JhdGNoLmV4dGVuc2lvbnMucmVnaXN0ZXIobmV3JTIwU1Btb3JlT1BzKCkpJTNCJTBBJTdEKShTY3JhdGNoKSUzQiUwQSUyMCU3RCkoU2NyYXRjaCklM0IiXSkgewogICAgICAgIHZtLmV4dGVuc2lvbk1hbmFnZXIubG9hZEV4dGVuc2lvblVSTChleHRlbnNpb24pOwogICAgICB9CgogICAgICB2bS5ydW50aW1lLmlzUHJvamVjdFBlcm1pc3Npb25NYW5hZ2VyRGlzYWJsZWQgPSB0cnVlOwogICAgICAKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgaGFuZGxlRXJyb3IoZSk7CiAgICB9CiAgPC9zY3JpcHQ+CiAgCiAgCiAgICAgIDxzY3JpcHQ+CiAgICAgIGNvbnN0IGdldEJhc2U4NURlY29kZVZhbHVlID0gKGNvZGUpID0+IHsKICAgICAgICBpZiAoY29kZSA9PT0gMHgyOCkgY29kZSA9IDB4M2M7CiAgICAgICAgaWYgKGNvZGUgPT09IDB4MjkpIGNvZGUgPSAweDNlOwogICAgICAgIHJldHVybiBjb2RlIC0gMHgyYTsKICAgICAgfTsKICAgICAgY29uc3QgYmFzZTg1ZGVjb2RlID0gKHN0ciwgb3V0QnVmZmVyLCBvdXRPZmZzZXQpID0+IHsKICAgICAgICBjb25zdCB2aWV3ID0gbmV3IERhdGFWaWV3KG91dEJ1ZmZlciwgb3V0T2Zmc2V0LCBNYXRoLmZsb29yKHN0ci5sZW5ndGggLyA1ICogNCkpOwogICAgICAgIGZvciAobGV0IGkgPSAwLCBqID0gMDsgaSA8IHN0ci5sZW5ndGg7IGkgKz0gNSwgaiArPSA0KSB7CiAgICAgICAgICB2aWV3LnNldFVpbnQzMihqLCAoCiAgICAgICAgICAgIGdldEJhc2U4NURlY29kZVZhbHVlKHN0ci5jaGFyQ29kZUF0KGkgKyA0KSkgKiA4NSAqIDg1ICogODUgKiA4NSArCiAgICAgICAgICAgIGdldEJhc2U4NURlY29kZVZhbHVlKHN0ci5jaGFyQ29kZUF0KGkgKyAzKSkgKiA4NSAqIDg1ICogODUgKwogICAgICAgICAgICBnZXRCYXNlODVEZWNvZGVWYWx1ZShzdHIuY2hhckNvZGVBdChpICsgMikpICogODUgKiA4NSArCiAgICAgICAgICAgIGdldEJhc2U4NURlY29kZVZhbHVlKHN0ci5jaGFyQ29kZUF0KGkgKyAxKSkgKiA4NSArCiAgICAgICAgICAgIGdldEJhc2U4NURlY29kZVZhbHVlKHN0ci5jaGFyQ29kZUF0KGkpKQogICAgICAgICAgKSwgdHJ1ZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICBsZXQgcHJvamVjdERlY29kZUJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcigxOTQ4NjQpOwogICAgICBsZXQgcHJvamVjdERlY29kZUluZGV4ID0gMDsKICAgICAgY29uc3QgZGVjb2RlQ2h1bmsgPSAoc2l6ZSkgPT4gewogICAgICAgIHRyeSB7CiAgICAgICAgICBiYXNlODVkZWNvZGUoZG9jdW1lbnQuY3VycmVudFNjcmlwdC5nZXRBdHRyaWJ1dGUoImRhdGEiKSwgcHJvamVjdERlY29kZUJ1ZmZlciwgcHJvamVjdERlY29kZUluZGV4KTsKICAgICAgICAgIGRvY3VtZW50LmN1cnJlbnRTY3JpcHQucmVtb3ZlKCk7CiAgICAgICAgICBwcm9qZWN0RGVjb2RlSW5kZXggKz0gc2l6ZTsKICAgICAgICAgIHNldFByb2dyZXNzKGludGVycG9sYXRlKDAuMSwgMC43NSwgcHJvamVjdERlY29kZUluZGV4IC8gMTk0ODYyKSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgaGFuZGxlRXJyb3IoZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICA8L3NjcmlwdD48c2NyaXB0IGRhdGE9IndDX0IrNCoqKioyKioqKjtKLXhHOGhvRF9zS3ZyWj1yQSsqYipEbE53TEt6SVVGKjJPPUoxKmdldVJZRi5vRXw3QEwvd1Z3WEdMOj1OVmFMSklYU29POk1qZEtNSXksO1txKVtcNik5WVkxblVBckBmNS5zKTBNRUhvYn5BKG1SXGx9WmNwUUVndmdhPVMsczY4OUNsdnNsZEtHVGRjTVxJNFNuUUg9QUcyMDFuKENvMTZWUUF+aWxAVmBudz1MUEdwTiwqVmFfVC0xQGlZe3teOHdwZTJxW3wrQWVxPUNPej1TaF13KHQpRV1BbS5YZkBLaEpLTWtqKHpnUDdAcigzYG1ULSl8d0ctLCw7OSsxM3t2dnJxVDspTElzZF00XkBzS3J1KmVLQGsyUEZrc1Nae18oaG00cm8tbzNjQ3xrcihcSTF+Vz13UGEqQUBxMG94bWs1PSpmdkBkPUZ4KGxgS1BkW1BRUkpfSk89LFRKaVlkZnRMZmlFaDAzP2loRk0sQ1dWZ3ppbChOflhYVGJucH5VUE5GKTBqb1hnUDNXOGVOX0dQK3x2ODp5dV1JYmhdTVtGfEhQfi95d3ZZcnZ5bUJEO1NXNTo7Q285VlEzZilzNi5ebWtMfXpeNTc0enFEdmlRUj1JQ2JfSmpBTEh5LShnUS9taE9qUi8wRnUwZFxHNGxkT0hvV31QaSlBMnVyRUFCKCh3UjVlQER8emB1YC5qKFBnc35mSkBQVlxlXlFOZWU5LSs5b1Qud1E7KHN4eFRxMFluMjorSkVNfjssRUlZdlooeEp4T2NAfldmaWFbZTRlR2t0dkNDUHZfV0VhWVN5Zy8sYXgza1QtNG9cWH5zZDZvVVFack1bWUNnXjRlXC5seUVMUWdIZFhvRF4zYT9MW1dwQ2VhUyl5N19DTGwyfk4tND8sejBkbC10b1ZuOXY9fj1xTmtURGp1bWF6TkdaOGQrRWx5MnxDWVZWZFE/SH5rKm5eYWdWZ1N3bnA1Om9jOS5zb3Q9YUJ1UjVvK19zLmFJeyh6UF5hKER5Yl1xNm5aNVErTEsyM1d0RlB0VFFtfnNaLXkrbT8oV3xzb0FHSktZWFJ3SnFYKk8/bWR7LE9dalBHZ2tHXnJwdzNMTF47MWZfVjtAMXNfSHRTT0QqSHtyTDNvXkovdFZyXlZfS0l4ZHZpX1FsRXYvfmd9bDtwSXNmO1BKQmRZNTQ/blhHak1OTVxAcjpvaC99QjJ2RUNHMixqTnR0VlttNEM/THlaRFxDYUpwYylmUmpZbUVkUlQwO01FMndQeFloR1N2RnJKQ2tPMWspOjgyWlldKjBPbWNAKXh5Rkk4MVlbSXcpXjduX11oSFVdamtmRE9WLGM9VXtnZkE7LUdnfDNGZD80XEk7PyhHRUV6WE9SfDZvQXR+Z2ltKCthLi9wTHhUfDNgdC89OGE4OjFVWGh9PTlLRlQ7elJQVD9AbUdfQFhlejFYOVlPQ2tsXEooV2RoTFt8THNdT0JbYkdoViwrRHZkZF9hSkZNblVbRlRAMG9lWGt4Mmk4WHVMbUZ1W0xML21DdFpOUGtPKWJpRixKO3RFcF44XXI/KV4vWl9ZWn1ZYz1BZ3Y1MGtWeVdLYGVFW2dqbWVbb0FFRlptSmN0cXl9MkV5KE9BLFI4X049UWptSkw0SzlaYkt+ZW1sTXZee2tOKUhiXmJud1ZMQGd7elVBV2g5d0AwR34pfW1beVRqZGlgVGNNRDFcYW85dXJcPWArSX14Py9FfFo2fWFwXE4sV2huNil0ezE7MG9DTndFdEEqeXlgUH4pWTRHV19NL2k7fC9galZgUUU4aVM7SjJnMUtNTDpmSzRENUZAaUh7Zz0uXjd3KWVUcXtgaGR7OCleRW0wNC1VVzdZRjlzbm9GcGFJVjJhfkZCK0lFVmBvZGI6fkJQbUZSO0ZvZn5hTWJVRllGLy5QTDt7aFhScTtYRXhmTVM7MDQ7NThTXkV5eHU1en59N0pJO0M7ZmFnVHA9bzQ2NWBoQmdjOVFSVzhqTHoyV2VVMD0tbUldOGd9OGttVnNULHxWcWluKi9vTy9JcWpjNy13eDdjSzFcUUYxZlJiajpTL1xUUFp2VkIyOWtGOUs0Ok9dbT9PV3lGR298U251aVo1Xyx1NTR5LWFOdUNedFJ9eU5nSVQ3KUNGPSxeYE18KlRsPTZeW05NLy4rXmc3WTFBZ2BwNzBpWXVlMD9FOmZQKmByQmpsQ3JLbGx+e3VyWyx7YzFUN2tPP0E2Rm9QZ3tTU3Itel5kSWtFe15rem89Q3ZebVxWa3V5bURDQktvN2dmXywqMW13bjpaLXhfbGsrVW00Y2xQXXBtXT8uP3M6eU94cUhHb0VsPW1PbUM0OnNwUnY3KHIzXHdhRzJOPzI6UXJpaXpVUkVKcn1xeGlMWDRyeyxTcGNXYC1LN3EqW3tefGEzLD1daGRSd3MpMGdoKkhqKlM/RkxvTl5iM294aUVxMTtjS2U2fFV1ODBbUloramU7cjI7U35IWTFBSjgrL151OzEwZ21GLExtOEtSQGFOQGdKZHwtWlRiTl9yMDlzbnlWMGJmY1Jpb3M4K2JOdXVtSzJmOkRMUGNyaVFxYGZeSzAuckVkRmFYSWFKOilyaWlUYlZGMW1ucERiXTNdWHtaa1NJenRicj1PVC0td0ZlezRBZ2FSeX1PdW1ZTFBjOjB+Q3l7a0U1W0lYMGtTNVheQnFZeDhoSDtjflRxaClZWzQzTWJYVlRoWjRjaTdcdXMrcWxmaXpEKy81QXhOc2EuamRCS29JX0M9S3U/anFxekRsL3hbbjk6S1MpOnJWVSxBeWtNK31FK1pseUguMituPzR6MVhcL2laKTlubzFyPWxWe3VgN0YzNUF5KC8pK2Z4UnBaW0F7NihcKkxFM3R6UyhUeHJPaUxRLWA4b1ozRypWaEVLNFVoUzNTPUFaeEFiMkhpWV90dzpjdT9ocWpna2NXX2dPU1hpRnxUS3p6ZV5jUkIvKzYwXTNMRXA/KXhDWFdgW2FNanNzR3BbeE1QfUYzb3cwL18vNmdMeHpnSEotP2c1Y1xHO3FiYnhsXERxZlZlNHk7KDo6ZlE5Nlo6V1FFLXt1dy1pSHhnODE9e2YyWW5kZDZdL3VKP1pdfTJcYG5MXmVtOmZYcCpcc25ydT1XNVxcdVNacVk7OjhRMlJXTj0rPTI6aWI0SE05NW1Je3V3cyxTTWg2cFYuNjRrSCo3fV9cXzBjMEJMUygtKjN5V147KF1uc0RVRDZecS4rLmpsXkZccjUxTzcpSGZBM2g3PUBibFQ7SmssODtfSUNWZ0I7d3VuSyxrYzRETUFdam84QkhXRHZxP1kvWTNAVW9ZbUd2YGIsMzRZUlk7UDJ4RD0tST8rYTg4TSpMbUtMZWxoUWsxfmZMd05rOEI4cHdORGdCRGU0NypBUEZTZDVcMC0uKm9nRntVaFZJKTpSQHo4VDs3ZWZqaFErZzV5SGxFLy9aLHRgfjRKcnI6Ny9jMGwsb3xhLXBARE83Mi0/Nmo0MTJfaktNNGVSXmB2b2VIV3BreytKPzhvYmY2REosO1BQZ15iVlBGRHFQaXBAMnNBa3hjPzopOVhZZno6MDpmMihOeio4Kk9EMWNHbTo5ejpdbFx7Ni9wbTU3dTl1bFRzSShKVixja0Eta3pZMzgqOSthME87ZDIodF86a3R9QGJxYGR8aGVtV3ZvMyxLO2lwQDdhVFM4cjFQPTdXWzFxS1ZlWEpJMVV5M0RgL2NGKS5bNXB5TGNqMF4pOVV7NzQ1RnZPMGh3K0NTSmU6YXNabzdDOUstREZINDpnODosfG5fXDZ+TDAoKnFDUDE5VWtxbG0xSj9aKzkqUUouSTlfXFl3U29MS2tfLEo6WUM5SUlyfXs0P3VkMjhWMilrZ09VR1YpWlhQZXZLaSxdSGEreXZjcl1UNyllQF53dyxjMGZXd31fX1twMj1hUGVuLmIoWi1GcXVee1VQWFZCTk41bGdIcEY6Z3ZxV0Jmay00Yi9fe0NeaEFmYjUqR1FTT0c6bjlqbjhHS2hlMnJSS1wsOWJzZihmQVZARVtFbmEoQlVcMDJUaFNJRXYqOEZEKF57KD1QP0ddPUNWLnAsN3wzSExmfjV1eVgxZXduKUtBXnNiXSx4O09oVEl7Nnh4eSxqQkVkPU9oQ3Z5PU97TGZJSHlfTztdNVpOYGUrXk1lWkxoXU1WRmNYZH5ddWtFdm5cdzstaWFNZy5eMSlPTXopdTAtTk5ieTE0bXNza2JjaV5sUWFUUDVbOj9xLS1PekpkZUVHdEMsZmhJbzE4dHF9YT85YU9jKHxbUEUqakp4QGBEYVRRNFdyaHdnaFxmS0gwOzZIcEVDOEJUdnlNfDVPTjR+eXxWdEhVPV5DQldEbHU2VGJ5TGhqL1l3QUsuTTQoVFhQdihoVHBaXjdTQFdDO3pNalB3bHFSTFliZnk2Tkl1UEMuVk9ZazBnT2wzd1AybkE0OS1+O1ZkTkx1ckJEZUwtRWZ7MWR1UnhvMShQTm5ZbixrPUhcRUlfTWIoflMoMnZia1BsOFsoTml3cUFDdTtBOktTdTB+Mj1FOkk5fi9cVj06PXxQNFdyRTphaTRyc0E4czJ+bE4uYn55blpCSlVDR3t6Z3A6P2xMT1ZuLGpCbmI5cnlmNmc/aXA5WlBuOEVfL01ET2w9VikrYjVcdHBjVEBVKVgyKHlQdjhPT3gzfTdfXUUqWl1LVmZCb0cxZnlSRFxRUyk0e1JCZCtWZnV4UGpKRFZ1bllpU1EtWT97bl9aQnMocXsobVE1KkMsL1YsZEI2M1BSLkt1KV9wVVNjM0dqOX1tUmc5Uy5DdX1VVyh1U2R1KWM7YS5EbUhpdDA1Ml5OZj9RdFo7OmRvZkEsTjhQS20pSz9zMVdlKVRWVUtXQ3xkQzs4WHNpWkFsbEpOLFtyY2RWVXJzci1wMm1tZ2FcOEdvdmIzelVeLX57OzFZWClFe3wrWmRdP3d8a1pIai5le2lqTTh5RHNmcn5zfjlZOjlMfVVRfk1La09EbjVLTHhbMm5mKXk9X2YvQmAvWV9uWWRSL3dBQ2leRD15aVpYXEFPZ3VEcDlhb1YpdlRrd3JAMzJuZjZSWW1ifk1rfFl2WHhnZW8saldZcX1Weyh3XE87YkNXaTlOMVlyKjdwLj8rR1k4OWRtUj9MKUgwQDhVVEopMG8qcXxqRUh4bmgqaU50ZU5fXXBXLlZUd2lNR0U4ZEZBSExsOTt4eG9laiowMGA2eF9kbTNsbEtbYVNqZ0kwWlpbWjY7R3wxSUxvaHAycUJ1RjdaRWcxUFs2XHlyT0R5WldnWFJhZ2pUfFw5Z3NcUm5IYkA0Uj8/LjheM0oyYTAvLEwzQz9UQnVQLWV8XEN3UXlrUm05Um5CSkkpbzZwR2JXdEg0bEZdS1YvZWRjU3FieURHLD0uPVktdTZcYncqTFV3LXhVNVE7UXBDZDFeLzM/R3IuSGJieEF8UWBzRi89T0wpTVR6WGd4OjtfcHBydFdGWzI1b0g7N2A1MWdRW01pPWZ+eDA5bmBNMXddR0tWd0c/WzRNK3AsX3hCSHFjOE5xUE9IdkMzOlRxQXBfLm9wYk8vSkJ5WjFgV1VrcWJnaHV3dmI7QDNzXXZ6LTtfO0VuVjFVQz9vXjViS1lJK2VQX1goXTN5NzBITjpUYyxOb2ljSjNGTC9STlRKdUJ4eUU1SHhGNzJzKmJORXRtVF4qeC1pdHlmY2FxYW9+TSlWdS1UMUdwPz1NRTlnZk5CM0csMC93LlpkemthYFJKe2pdeldzMWt4WkNcX3I1V1RXbW5DeTssPXtoTVlCXUYubnI4dE1VN2ZxOzJTRUd3Xz9LNXRBY1srOiwzSHVCTFthc3tdTXk1S2p8RX11X0FnVF0qUGNcaS1qY1trXE8uamFQZjNYNWVWME10ck9HKlhLVnZsbU4vaWVDWDR6VFIsYnA7ND1kXFlQaEFRfkRnL0pubm9BZFhLTWQ1WG9DLkA4Smh4Ny81SWY0Zy5WM1JNZk15TmgrRzJUT255MXxhTntAdCgwQ3o/ZHE9PVp2eC40TC92cFZoaGtEPVBseT8vOEM/aFB5SFBvKVJ1b0dJeWNqP3tHUURkbm15RmIqXzdkQHR5dzZJYXFYRCgoWEFeYFlATV9IaihnRHcyL1hjKmcocTJLQmguWFhsdXdafDZJcn1YMVJXNnM0RWgpbFBQeSs0cFB3QUQsPTt6Y1s6fXNsbm5CYzc2S0thbHtxMVROLFFKS1t9cDpmfnZzXUNUcDtjY3M4TkN9OTFZWDRmfE9iSmVTdUw5Oz9CZzVRek5SXlA9KFJzOlpjRHJjXmRbU21Xe2otMUpob350dGQvdit8bUVHLzUxXmcpSXU1dHFeQEV8Kmg9cjp7Wmx6amhgOlRYNHdORy9NR2ZjR3dCcF9cZU89MktfP2owY01IP3t4XipuTmFgTFdMNGRGPX5cSChQUG41VkgpL3BdYD9Ma31FLnJWREQ5LitJLUVNdUxQRXk5bHExN0tcYFZ5MUN5S0wuT249XltqdThnd017MnVjO2N3QDopTl8yO2htcEdUaXF1c0p1UHM6SFpydjJQYVtPVHtod2xzVn4wNXY1SDJUZV5eb2YrYXo/OktJQUNDWm5mXFQuQD9dXipNKGpRK1EzV1FgYjBifFRUSk89b19pSDVmOD9bOzJDOXQ5YThGOSluRz9LOUEzMj1YcmE6dG8/YzopZWhNVil8d2NyK1gwQ252TFAtYmF2SmpsZTswdG9hM2ZGQVhZMT8/YzpnflRWQlQ1WlYsQ0pXXWcve2Q2XFAsekRtcHdwOHhVN0dDdkRmZUp1dDU4LzZjaDdHQCo/SkxBOGBqUXsvKEFNV1ZEeEViLV5yaWBzMjtWWWJATGxpelY2VlwxSHBNLGxdSmpDZ009TV0xa1cuQzAoLEE5UXIzLWllaTQpbTZRNUxZZEpdQ3ByXFkrNk1dMDtrdCtiYik6QUs7KHp3L0xfX2tLVUc6Yn4tYUFVSTZGcEVOVTlhamdMOUFyZDIoNVpsUEY1L1gsQHcscHZFeXFgUmZAVkFhak9vcTNILUVSeXB7QVJRLW4rSGYuXE53MlQ6YCpvcG84dns1aD1OdnhbOnFENjdefjQ7WzBWNWhlfWdnbWBASWYqNHpzYFIqWjdga3dzcixOPzgpMGIsOFJ0YHU/aG5RT051eHZzLjRJKE59MldmNSxdSklQbj1iOTs3aXhFfXhuQHJoWVFFbnhvXTM9eDhaUj1FOG5RMnM9W3U0b0dqYHlDQj1hQmt0SHJ3PWB+RXwwSWhkN0lQKF17KWNYeytuNm96UTBVL1tULnh5P21aLFFye0svVVRUQFJ7Y0pyYE47eGB7eTR8TWRVVDYqTE09KHpaU10qe1doLE4wZz8/b09CYXRUc0ktfD8uZCx2dV42RHcpM1h4WEF6a0daU3hoR1suSUkrYjJpLjk1YlZfdj9QKDVsVWdrXlMvU2w0a1I4NzFacCtMTjRWWXRFZDFOM10wYnhfZGxqUCgvLHdAV11HUzFsUm13NXRlcl98Y3lmMnRzQXhuP0hEWVBsd0B+d21WWXc7Zl0tMVp8d2x7bWheODt5YWVDV19rUGJaWnlAfXA9LHRWMDU5V0V4R1N7N1NsMzhNUkx9aDlUYChzTFxOZHRadnAqeW5pT0ZzfGhXNU99Ki99Zio2TEIpKztiKFx0RktdUk1IWzo3TCtwOS12MmVyfkI/LFxRbSo4flJebHlDMXYxSU09PS46WUAvLnx1V1l8dGNefHNXMnltV3RccVI0LWA4eihFVTYuX3EwVGNee2hBfl1RMDk7bHNfVVl6YkA2Y3Q1XmVLfCwtPX0oX3hWM0NVfGkzVGZ6M28uRnliM0dNWD1nMnxlcmMsVnJfLE50MSxnb11GSDpdV2JCeGJCO3RxNGxRSmY9dHJAfmN5TkxUQnBVdkgyTCw9W3x1eFspOjFkfTdTZGNuNl1kcFpeLWNQS3lXQURmc11UUzg2MGlJbjMvZ0V+cjE7XEl4ZSwyaWAsNUNTbDZ2dWhIKVM6LDdoNkZUXD1dMytFO1FQOGReRHE0KGJqWX1XN09ua0FTSy89X2BEVWF2fVNHM1ZdN0FhaEAxektpXXZWU3BtZilRQFNxc0QtOFtuOV55LHxyT3pLKFwtSFVAeFBYb2dZOWxMcVB7fnddSndGO3FmXlV7MjQ3XW43bXlbTDowfkxMeFxRbW9cT05jOlNNR0xxLy80e053QlUqUXFoQ3dETT9JUWBUP2g1RGsoZVU3KjFlQy42UFI2b1tmenFjRUBBT2FHVC1qLC87Nl1zbUUodGM0S05hK1BML3N6b3FyTT9rS11Dd2d0KilKcyxNYntpenRDYFVdT3t1eFlxNW9fUWMqQEhUXmBYTntJOGBVTmYxdFdXYXRefUtza2ssKX45WFlpYkRVSjtTWEs3citSTHwycUF7eDErTW8/Zl5IQkAraHpmRSh3Oil+QDlUK3FWOzEtNXFFclBYdz9EYktiRGV1LCpoT1FifmUvLko/RlhCX2pVeHkySS1jLlZYP3FROUZTfShGWH1RaUt2NUdtcUo6QFlFYXBfUnZtQU1Se0NeZ0hQKGlJay9YdVs2TW53QjZ9ZFMqNWF1LHtlX0lLTWl2OFVAKT0oaFVeVXtPQTZmKDB5VihEaGJGYy9+aXNAZEhpcktWT21qNFpKNTdYR0B7W3NXTWtqVngwflArKl9RNm9ZbmI0R0RDNVI7WjVrSTR4KylPQk98TDBUVWMvWVJ4MDd2Lmw1ZXB2P0Z7OVVuYWhxTnApY05HWkFGKE1cd2FyVi5XSFE3XTZJZkloN2Rna09VNlpnMUk1Z2EoNVFFWG43Xmc1YToveS1pe0l3dUE5ZUp0aDJETTBMKDR1PTo/LXksbytNbWhGc2RHU1I9XmdVUlQsR2xtcnpOM2YyVUNDTj1RYGIvfExTYl5CVVYoMjtdYEFmPz1rL3YoaklYdWd9OFM9KUVddWNbRHRkKj13YkBZazReUF16R0hae0orSXQrTTQyUlpbUjsqY35gNkFyaGVsTjJDQHN2UkNkaSp6LjlvKjhRNTJzMikub2FvfX1MZ3FvXWlEZlhxdU4zLFlPSilIclxHSnRvNl5QZVRMP1NfX01QcTVHcGBbZ2lxOEheXGlgTyozRHtwMmRgZyt8emVxdms1KTZ9LE1hVzFUVGxvKVsodCg0Q0g9QlBcMF58fmQ4TlFIYVZRSUpHNilabHldQ3p8Ni1tN2R8Y2AyKHp+Y2lcUzZMbXJqO3pmXDBjUmk/LmFeKGo7UFRdcF81MihScERhQGl4RWEpQVpBR359LGV3RmZXMzRmWS0rMnApLDFiNGF+MmgscTF9UitkN1Z1SlVnR3FAQV1MUUZLcHM7a1l3WnhwX3tmKHB2QXJaUntQRWoxVUBZUEpiekZ4WGkvNVFkNmliZzM0aWxrZ045LWd1YGs9dHRaeVJ2fnh5Vns5L2JrenJVWTRlNmhbKWpke3J2OnxUaVBNR3M6MXZqZT1HYXBmT1U7MHF3LGJENUdMXi5HSXdrfUVHcUosN1d+VitWUEFZeFxiQTUvSnlELlA5N2VKWG1VSnFEb0NNLkosZ0guKT90d3Z8Vll2Vip5WytKTFlfdEYpKEFxZUpsNlQ5TiwyLVRxOnNZVyxHLkU1LkViPW17REZ6T1d7fVVkPS9WTlt7SF06czFvQFFuOiosTncrUGdISG50YFlGem5nK2daWD99VjdJRio5Vzgzd0FlYGt6KnpTSkIpdEdde2JzMFFYd0U3cWJGfldcTjowKSosYHg4bDosXmdJKzdfV3J3W0t4KntbNDJDR09ocStjeWl3eVRcYXAyTUldazdNQltidls2S1kpe0dhe0NAX1Y4ZnlVYWdMMC4qRzN6OntAcnVscWVwXS4zSVxeRmQ7OmpNfls0QEZ8N304altsWnwoW3NidERrd1tSeUkrfi98fXV4Z1tbV0hVSFZuTFc7Rl8sQi1EcDJwW1A9SGlMcDlQZV9ERWVPV20ze3M4enh+dExjb3M1eip9UTZJbjY2MDd7N2JUT0x7KHoxOkxoMVtfNnVNXy1Oby1xLVVcX2hrPW5ucSpwbzpoSUpENXVgZWRsWEt0RWB5NzAxKGJZSE14XFhbY0VxaEEoX0tnTHgtNkFYfm02WyprMVA5L3UoMV1PV1MqYi5BXVhpeXR5OnNZe2lXKy1yW3hxRlItVUA7KTtQd3F3N1N8Uy50NzlHTF49cUVVXU0rQzI7bHV8S3Bse3o5ZFx7O2wqOzFbNWxodHFVSkV1THsvZj9BKTFeMThPVG9XZkR1dktSfSheOG16NEU6Vzp0Ml84QmpsfUtlamxOdF9semBOYm9TTkVWVU1sNXZHSmtBd3ZkMStiYzY/Z1drWTZxaH4xQFJpVmlnVUFFaGd4Li06KlpYU3dPTForNG9RRXpyM2pHKl96fG93e19rNm5hWzNNP01FRTt6dl9QdGhNZExQfmBEcDJwW3JtbVQuYGA9OEdNU2JhaVk3S3oxNyg3fippbWdwZ2o5cX0qKTZ7UypbWk1fNEZFcDpYOC5pfHAsb3o3UmltT2FxUWRIQVdjb1BVRkd+MEAtcC9oWFM4NTAuTmlcKyszNEw9REZhZXdzLXNRbWU4XltAODtSc19PRjM/dk4tam4xe3UzTm8vVz00MTIzWV1UNStOSGNyKTZeVVRpXFovSWlnPXdPaWc9d09pTGt2cT02RWh7amIzXXk0fTMsQml3VDp+Xz02elZ0LyxBeHdVWGQzMml3VnY3OThmO2pmKSkuc3RvS146azhwQnIsZzBNZV0sfFxaL3xTcXpJVThyXEVRS285e2Rdc1VnUEwvWUt5T2MxZ1JlT0RGUU02MEl2KVRgYjdbO3dRX1hsQ09SYjBZSldQOHg/fHlDdTAvKERNY3VFaXNjSTpCLDFkeFsvNz1EX2JxKk55PU4uTjRYRG9eX1V2RzF3LSt8ZS5rXEZhKkVRMTA0SlBoRF03ZkwqMmV8MlZAWDVQYUBfY3xSanc4dVMsQypMT3Y5SkpGblB2WFkrei98Ump3RG1FKXNfR31SNHBNSmVwUUYySGwrREVueDtmaUNNSTorMXBWMHBFXDo0QWhMaUpFe05RdnZxYGBWdF96QndNZmtRQS97TH4tLVI2WXpkM1F1bWUzUXUwZjNRRX5LZEEqfHkxK0k7Ky5cKjZSTHk1US9aT104UGkuOG5eXEYsR0FmWEVVWElePSo7ZT16XX5FdXdgMVJkfl1tQ1ZCOlpaRU5yeCtRV1pFUnFSZWM9UnZgPzRpLW5waF03fjR0cn0pYy9gW3lOR3R6WjBcVlxbXztrUWVxOWVzcH4tSzY/QWI9fHYtbEBwaHIxRXhCZzVZPUw6RllOT0lVSypQUVV0Qi1oXF57bTBQR0Z5XGsqRCk9cDJUaDBYM1Jhei1EZl09OXlgXUFYVihAQ1dWLk9RcEtVVGw4SU5Vcy9eKW5CQnlhdnZoLV9dXns4QTBTODpPPzIwdVI7SWN4eitXT3JaNjsoek5bR10oWDhbLEBucFU7KSsxTjEte2sucW0sbnpcKGhtcj81YURYckxTLT82OUlxdmtWNE5sVix4QWQzP2F9YFtuNDMtXzpBeX10PVx6dmVoN0gxVGB5T2w4Z2Ric0RJZzJTemo9UjlpT0xxMSpkSylEenZWanVcYSxsLjJqdnR6RT8uNXU5QHhwLUBkY1tLKV4oQFBtVGFbVF1PdEUwP1B+SzRGYnh7R1JJZmFOOEVtW3U3b0E5WjtrZTEyU2pLfHtsdUBTS1dcKzV8ZlhCYDp2OmAuUUtWNGlGRitVLH05SThJS2pGVS9eajZrWzt2Rj8oOzBeL0BtSlRHXVRAZjddLDltMytwZ3QpbDh0Z0JdN2deOFZabHhqNWVrWj1wVm1fVWhgW0I5LixTWzI4KHNvVVBIYC5oXDl0Z3RrWjkvXV57Wld4N1F0LitSOTJWcW5AMVdmaENrRkZhLyswWi9WSjBrXGduXkxHdU5eal90P0R5YjlBYHhvVEF1bU8tUkg2Y2NPUDtOKmMzLmpcazVmPX4raUZ5U11UKTA3XmtWKTJrdUJqQS1aMTV6WG1XR2xzU05+UHB7M054eUg5WztwRFN4bH1VanZAakRANi9Hen42bmlLYG1KZnc/PW17QWFcZ2E2UEx2T1NMZX1bSl1DNFJhYzJUX1pmOWZLZjoycXtib0o5SmQ3LCp1W31vb1tseWI6MTZnWlFDMGIqTEIxUkRAcnZZLkh3KXpjYzVyQ10vOEZhZHBMYGxJe0VZVmUzbENFQ1I3QThdYG1qWlRWZVxSXmhhbFgvREdNTlNMeU05Yyl1VnJnKmd6dDtYVlN0c0BmQGRGWXwvdXJtTWsyYWFaTkt6Xkwxe3w6fnBIMnVuOi5NLF0yYkM4XTpneVEzWE10eWwoXX1kKlEsTEdBZVNeX0A9Z0IzSGNQVDkxdjJ4NVYoVy0xS1kycWF+KGdZMz9tTEJdLkB7M3FkMDtgaEZOcTNGKWxEWlRNY307e0E3QzdudS85dGdud0NXPzQ9XGdkQl9RdUd3e1dWXl9aZU9LMnNMTW0qdkl7a3hvQ1VQUTVyajN2WF0pdEJ6M3grUU9udG89bE83UmRgTmVXem0uMjhvTlgzdjFbQXowRHpfZjtMeCgwMFpRXkUtWz1bYz8sK1dTaG5WdEkvKUUsfmJAOUt5NHBbZU4sUVZlOk9yOD81MV1hQSx4UDF6X3JGYEh5eXd1dENiKEBZSWcvQUQ9Km45LDFiP0g6OEY1RnsoUzlqT1I1YlQ3PzJlVXBUXWJHY2lVTjtxK2Z5ZVJAWHlTNTNzeXJyU2hQQEIxM2g0dVtXLGlwaFFoQDloK2ZyTntWNHhCay1deWBdP3c6e2NUTCliTjBrWS9SbFhXTF1NN0t5eFtATUJtRTRdR15BPVxNdHMxSylAfXJBTHRNZmVXZWsvUTI6fG5dbVtJO1ZZZW56WWdKVD1ZYXpMbEZzN1lfUjluT0hQd0RRM11YU0F8dW92XSpsKjF9fFFza28sQWhVZz9xTCp3YTlNWEF5SVsqW21MN2VpcGZcXmc3aTNgLVVIUT1+NV1efEthZUdQZXB7dmxFeGFuLEtoTWhxNjdfR0UsSl42Q3I/c01GaHFwTG5gMlEvYH1fPXhvK3BwTVFVWHZge3V9SmRffV89c2N8KlYvS1craVBfLW45TmI2VEgqNUFGb3ZCXDlqaHMvQz9Wd1BNVDhESmYtfTR7RFUpWV9fWlNLfT0vMWYzfFIoZnwyc3xKK3t3e0BMLCl7OG49WXlPQlxhfSxIYGFfTVZYUjFZLFZvLCxeOUI1K0MsTEB2cShmYDpaZ117OUxGeGZcOCs2ME4tXHhFamloZFNTYHl2eDpUVWY4Q2xFbXs3SGtiWUNTMXk9Z0BROzNYcyspL19WO2tEfTRJeS1fMmVvVDZJOGZBYnptekVvYntWWHA5R190eFtwZmVNYDBEdygoQXVBMHBwZmVIVHA2ezMoMDg3M28sYj1DTEt0ZlFzdFtWMS1GS0o0ZDRndT1FKnpHfS15MD03WXlWdER9KFFcan5JSHAzOm9qcFJtQ052ezp2dj9XeElIa0VpTzZsQDVkbX5lQ25Jb3hDeVEzeSxRVj1xcVs0blJxSGdfS3BGXXJyMXFrX1RUeGh4dHRWclZeaE0sUndYRGluOzUqUjk2R2pnR1F1MkpMOnpsTj1QeEBPfEk4dFdwNjdMWFhdfjgzMC1NZmAoNilzZU1HR0RhRDc2Ty5yL0JvUEN6Z3heeW4/b3QoSVJaXktQTW1jT2VXa2huXipeZjVafDpJNUhoSjEsM2N8TDEyXCw2YFV6fD9aZy1gS24/ZituOExbTXp9TkpCMkVGU0BLbGBKN2xmSV5zVzZ8djpRR3RHM2BDYG8yRDNcd3x1YWNNbGpiakxKYztFS3lqcygsOF5VLD9BOTZsMUg5cEVzdFl8YVg1Unl8W1F3d2NFM2oyRFBMeUBPK0o9d25EVnV0UkhTNlNfWDVOOkg2OXV9MGA6Km5PX2BfaGZqUlNZQl54Pyg/ak9UQ3kqblpfUFZRP1NMV11OVm1SXnlSMFtoSEl8ditnWDJbNkhTS0B4XH1oR3YuZmtFNUp8X30yXkRseWxyU1ZFfU5GYC0rSjVYLm1IdHBSbi5MdUhsWFQ4N0swZEQuWSxARlVhSWFIY2Qofkh0fU5rOih+SzdJYXJYfmxvbG13LixfOWZgPTk0alRaK2ZsT1B0OHJnaXw1dEE4Sl5bZjtwKk5MQnZBNn58LUJSV2YwWHM7eHFfVXlzS3h9KkUramh2fDtmKn57cF4wOVFIel9QaEJUaUk3cWVnMDM/enEuYSlJWnJLaTZ1N2pWUHtNaWVfRHc3Xm1rc3JUUTBEO1hwKUBhRno1WFBqdChYQGVYYF1ja3R7eSxVazM6K3dTLnJyMnFFdmM6eHY5K05pR0goamNQO2ZJZkBxYjtkW2BdXWhMaUpsSmAtXU5PY1xfYnV4KCprbVg9RXxqam17d3k/NHUyezdwcjthTWRzeVBDPUN1VU59VXQ4RF1IemdzZVpOLW16bn5BRS5bL0JjKHFvWCt8MmRPfF56THNKQCtoaXtNVmhTRC5mW3lydVxlUVY6VTFvQ3Q9bnRMLCsvSjh+fUcoUWMzT01AMEdYcE54T2pAVEJeV3FSMClbZ2tUVVJKWVlBMUUvdStcelZXQUw1Z3ZqKlY9c1ljQVxjRWVHd19xOlp2Yi1ycjR6aUgwd04wSy1RcUxqYE8pTHZlVm8vW0RaS01YeHo7N2F5e1l3ZkI1TSp0cz1zeTlLen1bZ3NNb2xzQ1xqVHYsbFc1XVp4eWBqaXluTzBTX18rZF5sNHgtKENBTj0yc218TUY2RVUuQnZvS0pVQEhAcE5vfVI2Xmo5KmRoMHBgSjlvRjEuOXp8Nmo1OWlRcW8uTGBPM3BsVyh7Oip2U28yXTBLejphVTVWUFBqQzphK00oamFOX2V1UVZQWlhXOVRcWm9vSlFLSU9gSWJNWSp7czh9d0p2cDlocV9jZHoqME9qeE1NK1BiLjdLUywqSlg3YC58eDhsSHtmVHteaShqTnNrZDNxWWs4TUMsSi49cVd0MCk5T1FkQ0Jeb3QxNFpUUmUqZlxGXW97OS1HTVEtY0J4QVlMXjUoXjUtcVsuPTN3WHRHeXgxeG09MFJHMnoxKkszWTNbRiw7T3FFQVxkLHxzbj9gOlU1V0pSfU4uRmc4R2lDKlw2dkY/Y2ZpdXF9OXxfTTt3ajsxcy1wQFguXH01eTo9MXx3WGdvWTpReVY7eitNV2JETHo2WkpQfWgySF4/TUR0bGlGVnE5SStAbCt0aGpIdGRoSTteMzhuZlFbSkhhOU5RVHo4VFs1Zndiby5aW0d+NjBVTlktUigpZzg3XWc3LV9zeWxoNnNUeklPOXE0Yj9hbDJTVFJ6TGhROWN2Ni15RjFRMy1ZSFJjMV5OfGYzaTEsbjlZOWRUcmlPSGd3RW92MkpCXmYtZzU/LXdge15XXmJBSDlDTlEuOjRJMnVaenFXSDZPbms2WlkuSGk9QGQxXEJaWEM0T3Erb057OGt1X21sK19AMUpNN2ZraXkuSTNyLDNIL1I6SlkzMD1uQkZBLW8tM2g/azk4NlBMfExBWF81O1svPXx8STJddDZEXGw/fnBeYjVQe2hpaVpLZC9qWyo7KEpzSz1Ibi5uMGdIWnNYLG95VkZQRE1Ub31ESTVhdFhlYVt6WmBXWmd8TzFqSStGOV1yfGRoRFEyWjZLT2E1cF1xeGZaT19eYntYcXxBTDIqSUJfM219MFZIZTRpd0J0flNzXEROLThYWmA6a2N0OHd2UkFlUEUybiw0MzZcYlo/NjBZLlJAbHkzWmxQRGVwfGJbQ0UvdjktSmJEZnVSXWMsUzlPLmQpbUdVXikyZVs1dHBxa1psWV1Ad2xiamJaMHJPXzBPXn1kdnA2UkdJUExnS1tRUS5vLDZ1blFFSzlDdz9OKVk7KjJEem5nUC83bHg/XGlxT11USW1IKSxedXc/LHF5QmZuREYtaypVb11CcUxIeWlkc1pmRUg4cDlQZG93d0o/TSl2bVIyb0MpSFJtVV49ZExOZS0sfTEwb2lOKXFzNXJnYTtYK2tQNkRvaDZJLzExcnRNQDtvUWxhN2laK3ksVFlrKlVmY21lby1oWkhTaTVHWGxySVA1PzFLUFVjcnBPSkBVY1dxSy49Lil7VEM6YFpVSHx5b3ZwMHRjK2JUWDdEVig6fml0RE9KSEs9a2p3KV1EbUs4PWlyKFB0WHsqdU9sXXlVRHBRNHlJbig6YDN2UCs5Wk9uP0VRbl1MTT1dfnhlXVZ7TWBYOEA/LklBWUZMKl5ROmJzWEV+W1xqYmxCRFw3aD1gWmNsLypwRUFnZ2kyRWE9UFd9MDp2eUFuaFB2Si5bMGliP0pgLDdXaXlNekRoLkxVKGFtNlVOMWRZTU1jbUpBYlJBNjFURW1EeV9wSXRnMGViUmF0SjVbMWJsQ3JKR2FoQmF0cGxvOXJcbmZ9bkxAU3EwYWM2NUZWP21bTDtoc3BgemAtNEZ1VX55aSl+ZEBWL2hDVnNCa2lDaz0uOUlINVB2Nnh2SVJOTV1IPzNHckNBM28tSlxVbihxbCpwTVlibUBTZHMuWS5nbEpMUGt8NWlNP3F1cCpScHF3X1xET0ZINTh5S1duTXNyOX5FQkQ3WEFNdTM7TjtFUi5cbWtoW3ldVl9kZnJwXHN4SXc1SmxuV3Buc1Q/UWlZTm03fDQwZmNkO1d2PTRubl42OV9felhiNXo/K0hPTUVgL0dyby9SXF1uKGVSc0VbZyk/RFVmfCpLK0xYcV5vRitRUnhrZF1ZbGB3MC5La3NMNj1fN3toTk81X186UmJMZWIoYEZYNVFOSVdITlA4TUpwP186aHZOLmdbW2p9Vk05UVdPTlRQVDs5djkoXkZ7OEpeeTZLZnFKMW9OK2NlVFJ6QHNLeihHZWMvfFVxfUI6Mi4uSSlCUVQqdm1bLHlXNzpDUUlYYnctd0BOaTtpVC0zOVQrUWBiLXNlblhpQDBgYl9wSHxtUS1mN316ejRCTzFxfU1AQyhEdixXSm52aC15RGdsSE87MVtLOjhsaDtJRG0pOXcuTDVwbWd1P3dyXVk7dC5zemhuY1dmTz1cNWZoO09Gek5mZX5QMWlbYk5odUpvaUh5d3xRQjFIXDpSSD9vTjNnN0VKKlJBc2trd0g0SUhwRVN7XXV5KiwyaWAubHopcDpyWGNHbm5YY09rNUs/d3w/RVFYQi9tR3c2L31YbXVHcXdIVkdiXX4oRzdOMDhgPUl3MX5eQDRQYHxlfmMzcChTY2QxK0pgTy1pLjNfa215WGNCYzZqb2h4aHBremBANjNuelA9ZktmWTBULnE/U1NMdzVrOHZqSU9OMkh5aUBGZFh1VDBOYipESXhYYjU5O1w2KUlzL3ovVmovMW1fe3tbUlF6WFw9P2ZcRkd4W3VaU1ZENV40MmVqSmJBRVE/dnpyb3hldE8/bG9eOVV6WS1QSj1HZTVNWHk1VUJLV2s3SF0sL1gwRDVNeEY2bl9pTTRsX2lyRyhPNWlzU1kvY2Bkc1ZmejhdO3M7Xm44cSlBSzhWRSxLPTFJYEIyZGN3d0IzQHtHYEtmQkxNaU9ETVpQazNVUlgyW0RdZmk4LnR4Q217UG19amsxbD9cZlRJczMuMy5ALFA4WjV3LGZ0KClkSmZ7bTJDKn1RUVYvUTNiP0hfR19EfDBGKTZ6Li4uQ3sxZUxbdnZVdmRcO3l0V1VHeX4/eVc2NU4zV15TOkhuWm1jXC9EXEVXMzRiYzteXng1WFJiVTQ/SSl0YEBZOE5aXmA4VDZVUHFKYFsrLUdZOmBnYXB3Ol1MeWo6TE9ZRTR7QV5zditQRVFUZFlfQ0EuT29JRVE1TFk5LH5QeHl3NVh4ckVYbjdBZX5FSHRBYzt+cXZMXHl8UlpmSTtvZnc1N0h4aWFQMzNKW0M9fkl1VGlLeEt+fDlvQGd+RjpYflU2d0EoSUtdKnpoTz1hbjhpeyl8PS1HUG9eLz9VUTNKTlNIXltvVzc2LV5ERzNzeXdIfHlFU2tLT0sydT96UShhUlBoa0E9VklBQDNTaDpVZENQempWci9AKF0xK0dFTzVUYXZeZ3IsZDNCXig9WXN2NXFHdG5wL2osemNBT2VQMENNNnFSMnxsaDh9PWN2bl59LVhmV1M0cSw7WXRea31PNT85an1Rb0IvfEdjR1xjYU12Rmp2YT06Tjpobig3WlFSY1xxTChDZmhLc0VPZ0dpMkssXy5odm1zQGZbUTBPOHBpUUJIYXJzMG1OcT1SdnZ6aS9qdGNjaVN9SilIZzIpKVpuZFE3K2xgaHhjYE4uaGRhTHg3R0p0NGJ7UFd4TFJ3Mm9qZzJtNUVTbl9fcnJ3ZlZ1WnJjW3JddGRbaF9BZVU7alVbcFI7QENUc2xjWnlgdzAsTmlRNH54LVNKNihAdTN6ajdrel5GcnxVfi1DSXByS1pkZENVd3U9RE9Ec3JJcV89S0FsZVBDRE50KHIzeHdqc0NwUSlZfG52On58bHRQbz9IZ2tEeVV3V3YpTHNiOHA0Uz1rNT1CMlg/OSxqWllKL0FUZDNsdGUseyk5Uy9EMkwuUit4RyhaaGVTOD94b0pBaFhKUDZ5VjIoQEpQQUJFPXpkZWQofWZmSDNZN3dERj1pcChZPzgtLT1GZzgrcy9Hc2phcz0uMS5HdXF5fEpyLykpOUM1OUBwN2FwXyliTGJdeXlXQlZuamY0fU9HeF1oPXFyKzNzaElAYngpXHpzMXUzLnszZGE4UyxHc2QoMFtwMmVtW0JUQXdeQi5LNTkoSFVYVit2KE91VmlnYUQ4THBAV14zOzkwQHtofns1YX42UlI2TH5YUjZoTkhqLGFTV31iQFk1aHFoSGIqeC4/b1Vsfit0KkhfdmxyVn5eZ3c/d3xGOU9tRDhsRXFmeEsuPW9KXC9YMjVTXShLX081dEZtUk5lMXd8cm9AVmZVTWwzMDpMfC52MVptNz0tdXpHQFE4LGdsR3VIazBmdWJ6NndmSFRQQGwrRClcWm1MfSw9M1hsaU5jeTBtMXh3MHNscGQ3WDhZYFVeZU9GVTVKVlosZ1hPYldIT250eFZTSko3elRyKTVfc0sxMVl6KWdnTzl0NyxcLmtgMWQ5THZtWGovczs6VjtrWndvQ2A4aUw/XkVleEEwY3M0UWo9RGZhQkJpbHkrLndCOi9qOFJcRDVLRmRALHosaF5EWi1FclhZTklnN2RzWDVRNUh4MUVlRyxELkZGRUJwaX1FdyhiLTo4a3QzeVA7cFtwd34oYVVEYjhXTS9MO0RdSXpffWFZVklGNzg/bDB1e2RHeVxXVlo6UF9BUy1jeFR2X0pAaD9TcWVIcDlmNGBkMHtCTzpuLGNSYF8wSTpodEp0cFg3WVwqQlU1THxNSUFLRm0ydDJAWFBRTlVbe2x7fit6NnVPcTpxezoycmtfZHJsNnsxLz8zXENxRVhbQ0AwKzQuc2s1Z159Y3lhZVRWQFFaMFJvYXEqREhHMUFLZ20oUi1rb3ZJYD96O0w4MHQ/QFwsTWlMRzAwcmY4aDApMlJ0V29LOi4zZk0/WWlxOVI0VEpKSE1IaUB8ay42bHxHQ24pOXgyX1NbM2RVbG1OWkp5fnFwKztiX1c3Ui5dZi1dVn17LjB8VnBlTFpbM2leNXkqVlRvczh4dl94bV5UNjVPaDhnU2AwSU9AKipyKVU6fFxAPTJAUmNIQkdkallPejp3TVBCL1wpcGg9UC5kQVxRLnF0YEUzVmtCMVJpUV89PTNZUDZVYWRCbnZrRFFabEQzeWx0bz9oRlxuWzVyTGBtPVV9WllpeHt2R0Q/QywzOFlTWDgycFdDRnZ8eHVvfllNXGA/S0FhUTlIT1JxKlQ0cXBwX0lycT1HZnoza2F8dltQfXJKUTIpfFw5ai9jeT9GSFJjfkdKRTl1dVl5UkxzWXRGbElkNzdaLTRQdHFsLjs2UnxPSXhHUEB6MzR+ND90YyhbMjRhfX1HLnlXNEp3bk5EcF54UUQrckZFdF1yNmBdUUg5PWBDXTs9UH0sN21QY2pEZ3xUX0t2NzRRRnBnT2N2azc0US1oKXJOeD11TlZYUUZndzBSbjdqLFg5XEVNe3dZLnJ7fEFMUFY0TWN9bHRld1krQmxKVTlTRE5KOFAqSHE0XGJwQGQuc2Z0L1l7THAsWDk0Y0hzKl0sbDZhXzNjZHdzR2ZdRjkqSywwX1Jud1l7cD03RChdWEdgVEd9SHIvKzFQbC8tSVcvcS9wQHUxcTdwOFdDRHRbMG1hQC9YQy9qY21helEzQndKQWV6cHE0R3BwLHdCZi1VVGJaNW9eMnVVaixYZFxqT2s1aGh1Um94LGV7SlV4Ry92S0djTmRCOU4xYXE1cnZxSFBZa0ZVWy1eb0xBe2UuaVV3VGtUelM2di4xM1xXZlJ4Z0pTckBKT3x5Xi5DR3FyQyhEYDAxa1tGbDczTmN6Q2leOjZhTm5DNF5fZW5yX1p5cGZhVWUxQVB3T0hGVD1wYUpMeGYodjpRXFpxTmQ0VX5PZzVzUWNsc1Rte1FvXlI0Q2xdfE1MU117RV9IWCspYClZSFZPc0JzNUhxbkVyUilWcF0vcW1PcmlkYXNiRyotWC5ddm81Olk0RXtseGI2dlh4Olk0KVZBe29JVFVldCl2bGswPUVHL01RXChfNlgwcz1oO2FJUEd9QU8oKFVDfHIpLDJieGE/VDUuaTc9WXdcV3lWQixWbjJOWFZ4cTUsXGB7S053Nj9MfFhGbXBfcUtbXW9eWldZTTdAMTR8U05YbDg/aCs6XjVAdi9VfnJoSDZzdFspNkVdTk4xZShFdVh2MVI3MVlyQTh8Xjd3YkpaQXwsZFxPTih1cUlvV0s7aE81cHlzSllIfmZWYW9fXDBnR3ptPVM0YGE7eXkxdmBRMG1IfWlpfldYU1J9ZCpua3toLFBHZlwrLC5COG5iensucGtebDhPLj1FQCt0OEZidE1ZO0U0bWNcQVB5UkhQbGBBQWUqKF1UaFZydFZ5PypqaF1fRzsvZnZMOzJLbm1TX3tRU3dPRWMzOH4zTnR3a11seXQ0VVZsRE9oYnVSbWJAXmhOL2U5QEVNKzU9XFJXXSpiNS56c1UqWyswZ2s1eXFwOGRcSWpxVztUYFthMG5MWGR7WnRWUmFodmE7Sl1qKFtaOnRDeF8uNCllcVpTTVVTREVWLEZdUjhPOClaOEx6ai0yQnR+LWNGRGZAcnZ5LnpJbE1DcXFrXHkwMFt1dzJpSks3RlRBTjFuZnNUSm13Rytuc0V4cltORUZUbURQdFx+RVdTTXhMQ3dSK1ZaZF86KHxxNmQ3OGMpZU5gd1laKG91XzcpMDtoQmhdZU45TldXRFxYYmluQm5pTmt9XEg3MipBSFdOMllZd19iNUZCZjRpQmRlWmhxb3osLjsqLTRlMFRdcTNrYFt8Tks9LkNtNnowST15W3RzKW9jMF5mUj1yTWd0S0tiaHVqYXg/RVBQbC0rUmFEWGlTcjcxK1QrVnFcM2t4eVtTRXNTaFtpR3k6aEF5RXtyQHE7TVo4fTItVzAzRm0oWjcxK3xYaEYzcV9HUjosY1Y6LVstQzpEVkljbURGW3JjRm9uWXNQckspYldzQGBkYTJrOmRne19FdmM5MTFZKDo1Unxea0haQmhxfHd6M2EwRWRcPWVxT3psa2tMM3h8SEY7NWVAWGMrcDVtRCg/RSxlSWtzQlt+NUZBUmE0Y1hXVy57bGB6S0BKbi83SmpldSwpRzUxPzJ3XFdkWltPSDU4ZmZ8fntYcn0qNHtGZ0h0RWt6aUZ3Zy1GazZUU3ZJQE8/dTooeisoMnphX05PUlBnMTp5ZUNneXdpM242KWE9bTY/aGhwdUVIPVVtbFdIdzhjZjlmVl55LmhMNWF2eUt0UkxxSmtbSFp7SEhyNXFLRkVrfE8/NFl4Vzdeb1RfLDJGZTlxNWB4X1x4TjZcMVlTRC5VNVx2NWkpMig/X0JdbkVqZmleYWUqRVw1K2pTMXVmPTRhPzF+R19JbnRgLH5uOytaaGpdRGVXdCpIVTFxbjErT05rclE1Lko0UixcZHFiXVxjSS9CLmopYUk9a3xQKU5Zd1R3XXJNbVltVDphXG09c2spd3FweDgoK09BQE5XTXhedXliemptdn5XL05XMS5gN2JJKkdHSnJRam06fWtWTDl3P0xsdDplWWxFSDoqdGR3KE1VYERNKWJtfVF+ViltTWMyeWMsb2MyZUMsWUJxN2NHXHNCRWtNdi0teHcyQTA6U3ZeXXMwK3dcaGRaKnFUTXlaX2c4LCs2RXJIL3xYdCp7fWpjZkxUYnAoLEVeQik3PWNbVVVwaToseWtCYGtkOy9BOkxSNk1iL01YfEpGSzIpMmtwNWU7emZLQVZRbXRac2taRFFNU1JKWDhIfUF4XDEoSngoUEczSlwqdEB9fm9YV1kuZEczey03RDB4fnNcUFsqWnwtTSsreFtlQ3FfOkFwM0g0eGxDUC4xYV1PYF1MMGBPZXV6ZVRVMkEvUzopWzRcYWxVYDJbRFBOZzYwd1JcZHJROFVPaXg9bk9LTDVcemUsSzk2ei5PTXs6LGRQSTVTTzg0eD1dKHM1MHx1WUMvdV1+dEUxY0BYamZzS2JLcVw1djtzOnorQ2oyUHxDLG5pKlNBdTUrR3tbR3Nsb2M6Z2VBS0VFcWhWNU9bc09lQlVoNDc/Xy1LcnRBNHBXWmhpRnE3KkRcVDV4bDpqZFpBNV9dK3IwdGF+QncqSFhPXzN9OmYzUFNvbHlGKlhfZD94LFVeWF18T0MvZUV1VEooYHNZNzBHQ0pcZT87WEExKnl5dH1+YFBjOSxyS1dRcE5IWChCfkRmPU1SVERzfVRFWUU7LHtuajt5a0lrRDU0ZU5fKGA2fE03RHB1KzI2SSttdmF+UTZTaDJ9ZFVbOmFzekRFfk9iSlRVU1xHeTZTdXZeelN7azRNL34uYztxOFBVY0UpQ3QxcWo/aixiPUhrSU9LR3lAQHNKTXZdMHdjNEM4UGQuYEAwUDpiey00U1w4MUFcfkJ3OUlBU29NOU5NPzM4PXRRZjk6V0sqNGF1aW9wOzFLOkJuXjhLTjVNZzI9VnpINUsofSt0Zyp5eXRsZFdLOUc3RHhKPWM3RCxyM1VGeXlDfSxlcD87P3FRLHVjLTQ/U2BvNXAubFtwdy5Za3RVXDFebStoQW1dUHo9M1NkMFJNKGYqV3ZJb2sqcjNDYE9OekZdY0hrTFdSfl1gUHd3UTU9Uzk7SypUZEg9YCpCZ31Zd1hsYkNYN2p7a1tlYFFzL1Q/WjA9ay5RSmMxZk59KkBsNFVIMHNPVEhEQkI1aToxKUUsKWZ6fGE5Z1trWm5jaUFCVSs0WFAtTHxOW1M0O1h7d1E7cVEySVlvenhLUUllYlVBR3pVZWVHcUA0Vj9NXyk9KSk3SXpweChWOXZ4e3BZZWVsKV1jXDRLLHZyci1VSWttQzgydW5CRlRsSTRgTzNhOjosKTZrSTVcW0orU3o0WnhgZC1qM2diP1dXYmhkeW42djdXKlZYZ3hwLGpsd2Nddygpc0RXYGBENFxuSnJBTlpkRHRyYi5WVU1naH1ZOkh7LWR5R3JAfnoxfip+ekV2SjVTc2NjRHtkLGtAandbXV97RzVefXoxLz1+ek8/SzVTdGdqO2NnSGdHelpoP3J1YkllZHk0O3ZjeTBfXGV5b0JsQHxOKlJAakx+KmZncy9oYnBBdTspfHBSLUFzflx0QHM0Y01XKUdaNS18dGpRQXNWUWdBalA1K2ZnSFFvZns9dF1BfGFve2pPU2x6SEsoZ2JhQykuVXlDSlM9cDsrMSk0Z1haLWk0TmBtc2o0byo/XVtqSFV6OEo/M259dUwxXztBdWFBY3w5ej1RZU91TWhGT3RXcj9hL3dNQCg1ezdadUdPLFV0YyxERWZOTXM6a3pcYkxUTlU4aE1+MllzTExpMU8tLHZqMmdLakVSN11CUWlKckxzNjBGaUhObGJxeWtPbltnLVlLYntRbDFBPT1sTWo3U09zcFhMZDNaLDE2RSxgZnZ8YVpySj93LzYtbTA4bnhgRy1NOj9xXW1ybGtARl1QUXNJRT1ddUJzUnBJYS1aUC01XytxUUdvS0NCQV4oej1sZHs7bF9xd2JLW1Y1WitYUER1VVhkPUZocDthUChbNVFoVD11Kk1+Kk9hTVBXdyhEXGBhV1Y0TF9Md2U/O31MKjRcbi87UUc3aW4/WV87YlQ2SXNfZn1vbkpeSDY1YFxxTjNra0JIVkJld2dKeTdKbnl+KEh+UjFhRENNcGVUQ3M4S0AyWlA1SkNNMmFvWylHU2tPO24vcT1IUitOYSovaGR6PzdgLitWYV1jUHZHX3NeaUZ8cERvNUN8VVJCdGIxKURdaWdbTV0oSSs2OmxOQGErcFFhM1tgWi9zc1M1MX5deG9IXC8yQypcW0MyRG5CRkFtUSwvVy9QdUl7THFMenI2bllRMCswTSlpW3JGc1lIVkdwN0ZxclBcMV5HRSpiKlFQUFR9bFpvLHhWa3JkdF5XWVRDY3hcP04yUVRSW3pPTFM/N1pYWHw3eTNARGg7SDFgcl4uVFU9PW8wRntwWjlTUChIQjg4YXduUkp4VTtHUGRRalJ1X0dpS2BaUllBSzNTMVBnfVxLTXJgeW9pXEVvRWAyRjl8VlRVM10rdDlZLD82KHV4NDNnfnY2LEBpe0BhZ0U6TVRQQ1EoQjIzQmQrSjU3NzdjU0JWfjs0UWVQS0M5Lk5eXz1hLWhEcEBXfFp3W0NUb00zZiwrTUxsLktwQklQbDQoZHFYTjUoMzY6Rl5IbnUqTD94KTMtcmppP3t1bXR8QX5eWnJLb2RlR0RTVDF7dCtdbj9QeilIa29FS1ple3E/YXBEbHkxeEVNOD1bWGw2fH0uMXdfOklGOEhiXD9ceyxdN2JROnlOO3c2NG1jW29gWlx7Si9rTmlITkhNQkJ6R2VIXCtxOVdldDpzTFd5LVU2LVplNzliVDJoe09OKm5fYEx1d21bOGpHaHxnfnxSWTlJdjpSdm8yTmFkRi91OlsyXTF9TkNxLUFyblFob2Z9MUItRn18VXJhb0FCWVgtQVdSVEdsOCgqOW8/ODExOj1HeWBaX0E6XG1YflU4aW5Sc01LNzZ5PzI1WCl+NXNPY1ZYVThHfWlcXHtlR29qQ0g9LTAqKTkyOlFHelBxNHo2TjtVZWdKcGF4M1lHSW9VZSp5aV1AK0JhXDh8SzUucVRkRFMtX3JRTnR+RWtPXFZGWkdrYmdTRG15M3xic1kucmgvQ1RLL1xGMVtTZTFPdXwvPzZRND1xOjZyUjl9TUtnbjU2eVhtWjl2YStRZXBfK20oXzF4OzZ4Tl1Oe2gwfX47ei05QE0vbllgPzFQcVNDbTVOcXNvS199XkdWV1NwamlGSC17L2NGSX5CZnpcRVx8cn4uZ1wuLVNeMS9pTHBfNStmcExdKDNhQl5zdmhhOzk5Q25SU3U1b3NjeHU5Y2dVcytacFUyXn1iakV4ej0uMFQ5SWspY2N0OHgsWnY0VVwwQGB3MlJleE1oeV1hSF52ZGtwRDdIQDR5V3N9Rz1LMFA4MkhJeW9hS2RFajA9Rn02MXE4dngwZmhXVDM1KGsrQGhaMEF1PzstTlt2N3txO2o6KV5SSlArZlZOQGhONjhXRWd0U29fPT18eF9kKC9KOGhmanZKW3lYQGhFY1hxZDROVmQuKDloWERZZV1gTG42WmpYZT9MQFJIKTBmT1V9enhbK1l5a3dTWy0/TXVgeVBTcUN+eHNrNClQaXJoeGU7OVBJantHcDdCTUNkKmVycjNGWEd4VmJpRT07UG58TnRiQ0FbeC0vO3p4fWVDQ2t2Y0hbWjhwW11gSmlya3xzR0ZWKmtqP0ZGQXFdSWpAT3lNbyhVNkt5cERWR3ZMKnlraixZbk5rTURgaH5xUE17RDFhZVxZdXlbUF5Te0ZCfStQclNAYypMbW47ey5KbXxNbj8xOW9iMytyeFtHR0F3Okc3XU1aPWlvcX4wSnQqR3ZjbXszVENzUmtNK1h3Y09fOn42TVhOUndtN1ZDZ3Y/QmNxN1BaallPdiw6SVs6Ol4xZ2Rie3xyUUJPTXVXZUguYXdJbXVES29gKGswXnwyTkM6ZVlyfl5KeE5VLUJicDFdcVdneWRAYGhwOUJ9LzNPeS16YS5IZW5cYDNqZHtRTko6RihnbFVIN2RscltkLkBxTS9AbD1OWlpqRnhuR1hMPTpoRXZlWVF8TTdKUWQrP1ZvT1hiSVNpWiktPX5fcn5WVHk3OU00dCpWOWw9UWRlUFBaP3p2Mnw3UTgvXl1BPT1dQVdkMjk4aDY3SnwtQ0tRLXBsOGtVNGVGYDFxW0Muc291U2cpNmVNL2hhc3Fvd3FYXW1jcmpKeF9wZ0h7Rk1YZkZDLC50UzdXT1spYy5AN2h9Vl5ELn4wej9GXG5Bc0BPYmVwcTRdbXouL1I1dVx9NlspXVtxUGMtYG9vS1FOQThlTGJCNW4sKDZOSTpLSzErfkw2QEJwVFlkR1wpQ2s4KC5aMHc0eUQ9cWo4XENWM1JdfFtlaTIzeWpRKD1bVSpiOWJoUjN3QlZPbGxAdU9kdltHVDI5OTNwNyhHdj1uOzgsSlhZcWItNUdSaTVOTTt4XjJYT3lIbjtlRU96RXE5ZXdONkhkbGhTby86ZiltZzlvTWJJTC1bN2w7NHZvcHJVaWdAUjs/WTFzWT0tNlFqVFx+Wy5TXW1IM1dxN0Bfb091KU55RF9YdWZ9fEctbnFSMWVfRzJKVHlARF4rQ310MD8rc1JfS19IeHJDXGptYC1ZeEMrQ2AxZ2hVdXcqL3NTaTtLeGZ4XTVhen5EWTk0OShlKnY6dGxReE5lSXFwW2g/YE1sdGkyKTIyKDooflgvbDBBa15IQ15zfng4XU0uKnJ2cG0vLFw6Zm0tdl4pRDZ+SElVNzc7ZkBfQzAvUl5Sfkd5dnEweDBJYGQtLXlmL1NcMkJoTlxUP0IuSnhRU1VZSS8pXD9OazJXQzc3KFhJNnNrSGRqcE04SWBgakNDT2VkOT1hSWxJXThWfVExLWV3Q1k4ZXNYQHJOb2pAeGwpaW4tMEcxXy9eQV5yQzRwW1lDNlstOEpeY1dPUlVOXldzUS5SYFMvQVJoV1ddXGFoXGtvdHEwazpfKnUtSHk9NTYqNUJGdy9fRX5hTWpPe3tqOHEvVitHO3M4YFdDS3dJMXVOKVpWXUkxNXIwY1dmdS16SzV2amVqKyg1aVouW08xUTpiOWxCaF9QLyxoLShufFNrX1d+UjdLZG5JeUVWPVV8Mkh1eUhCSjI3WWVpLTo6Ym1BOShTSC5HRk1WaW50eTVkUTk3P31Uck80VDtaT1Q7OXY9Xm52ejZVSVgoUH50MjtJUSltSjFgM2IqbChkNFJ7Rzd3Ui9VN1hOV3l8S1tpK1dlcnAofDdeZmdcOW52OExPZVU3V089X2JeRjQuXVx6Z1NPRUl1NmRrOjNLbU9DMnh5OE9PRk0xY0VaNFZ+OlNCOkZrbjJHakVfOXA0UlpeeUx5ZSkrbnlOVWIyZz0yV2BvR15RSUUsQmArYkhgZ1QwZHl4QXZnKERMcTB3T2BzVEZLODNTYnB1QC46P3sxM3t3Z0hsTmM9c1ZATW5nTVlDQjVtK0xPR2tqVzFUdG9dPzVFP25TLFYuLXkzV3IyQzErdH1FfHVrMEFhb017Y3NRPUw1YFVPOEt4TzdmUGJCLG5nc0duOUduR3E6Y1t4bDIxfi5HcHMpbzs5XnFaVGYtbUJTRlAsWj9sT1dKQ3BZUHR3MmszLH43TS97NlExdlR8VFJgOC99fV8rQm93aktRKHk3elc3TDQ0VVExT3Y9SSl5RnRYPzhIWV1RY0RMfVl5akhpOU5NL3Z3anl5Ukd+dkhTZClQe34wXjIpNGV5cmBWaD85L29YLlhNMzpmKXBOcjorT3RkSERAaDVQaXpVN0plQ3pHLEkrWk5kL0ovWDdKcjBxVlxuWixHUUh0MXBrb0hEejIxTEdkWnxeeHk5V2BOYWU/bkNzenhgNTouXmdOVi5yZHE9a3g7OGA6L2lbNmhuWGFfazdBWlYsKHs6Ujk6YzJpL0pmLWNhb2JUej9UblFyPTJzKUdVUz9WKXNvc210Mk8oaGsuTXxuWipUcUNAanRRSnRoMG5WXDhzNi0rV1ExLDIse0xcR3V3aVBaOjdiR3A0eDtfZS9RZWk3bmlBSWRfO2ZCWERsMUI/XSpjUitsRXt6Xm0tN00rPUE/ZDBDaTlBUmQ5PW02OV84Qzkwdk9fXXkqbUIwLjBPd1tdKTM0RU8pa10tM3thbykzUVttYip8Yyw5e3AuOjBgcDtmMm9tTG1IMHo1P2hZZltXKHVlMllSOkUwR2dsU09BP1QpXi9STmw5cF9OcGB+eF9iM0dhWTZ5XzBvYVV4SCtFTXIyLzhkTVJKKXhsbHt9UUg1RypVKG5fMylkMGI2UEBWLVF5ZnozNT1uKEFNNnNseT1RdXhTZEhtTEd9a2xaOS5JZyw3ei15enspVlQqaWx8S0hbWkdQNkcpOUA2XDs3OUVYcVxbT1JdY2dLZ2RyNV00Oyk1RGh3T1I1YnBdW3JTLTNbaFNjfVJMOTMwMmJoX2FXKS5oe3t6MTsrSzFeV2M6O0pxVn0uRWdgRFF7KT9cVVpmW1J6NzpDQXNOeW1qZV4qLDMwbHpaVHx1fW1VU0IoXm8xfFctSWlmTVo6OXtUTFZicXNKKGxDTFtCNHV5ZHNTR0Vkcl1kaF9rMUtMUjRdTmgqZ1huLHFJcClsfGRMelZSRXxgOWVld0pjZXMrRDhUPWo9QEJ+OG5RTUUyNG8vO1BzRFpzNigrfjIvLy1UUWUxRnNAYm9yMkNlSylGL0REdmxseChKLVVoMmReVjEzS1BEMVxbbW4uZ01OdlFYZHpoYjgqUVBMZ0dsYF5lXnxhUXFsT1VhYC57MFx2Q3hfRDJBN3VsQzksVXRjLD1RdWM7LHc5VjdrMyxcamZ3bDdfTHE6ajd2WWooXVZ+LDYrbU95aU1LL0BDeitKU1ooanswOEYyT3hMP2VVQE02e1BkVX58QE17MS5VL3hnU1opeksoNVZcLShzd1dWdldzT3tiNlhdVGkzSHllWHY3UHUqQ1d4MHR2aStndC41KVhla0Q9O349bnN5XUs1Qmx7MEdgSStKamVbVilRTSpxLGdzVGwyNkhDcCljWlNKR0RdVHxUMms2eU5uXSg0fHJuXXtmdkMtKTV8YzpQL2ZDVFdOP2ZsYGQ2eXN4MmxrRm5nfUNkd15hKSk6PU05aVRjMlFjbEk3RjMqeXExYW58Q3RAYWQtLig9WDU7bnBZO1dDUGRsRUpIe0pUL2hxQ0d6WUQve1VgKEBNSXxydFEwVF9ATWdTaG1WUUNcOFlFZjpVYUczKXZJLnpYWF1dMX0wUUFWNTtlVTRAYFV9X0JEQHFUMnF5O2hufnowLjh7YGVHfV1hcF1JV05PaDpCVE5JTGJpa0BBLGtEK2x+cG1XO2Y6YTtZc0F6QVF2eUtzQnxla29qcThsYnEuQCxgNzNfSnE0Z2Y0eDlMVHtvKEVzY2VSd2cpenpRYFRNbC9sWShyLjZBTGtiZD1hRGFPdVJdNUhfQGVLZnRfSX1aMGRzO1xuOzReRiwrbmItSFp4SiwzZnlZLjJgNVUpKCpGUEltSE10a2BpZEhOaD1IVm1GSFRQLkMoPV5fZUJ7O1QqLjFGVUdgW0ZFVTR6NGk4L0FOKWJiU1J5LjRvOXZ6en02M2E7U2Nwbi8oLU03X1tcbXdJbC9EcDRBLFJdXH1NSXdXUWdfditJTTJ4Q0ZyajZqPTtBTlovMUNed25MMWhSWE05NzktP3B6fVNkNGRrXW90OnpzVUBfUEdce2ZVTUl2Wk0wXS5fbExVYzVfaHtZLFE3KHhPREJ6OFYsa0d7XFRBTjkuSipQc2o0dWRHVGBiQzAtKTlhRFM1dCl0UkQqW15GfnRxNncwQTgvbjpUekVYSC1HejhaTmE3fi4pX1phfX5rXXEsOCpZWGZcaDlCM3pLWkdJZU1PX1N6WTNxLjVlO2VoYXcxXjdUZStQRFJlQCpmWXM9XTBmKzdAdHxuMVt3KE14RmN+d0Uya2tHZSxKXlZ0XFJYamVDb3hfdUs1Q31qMV1ha2xhSHhFaWpaN00sVk9ISl5caXxXQlpoLClFOUFBNnRiZ0FWTTh3Sm9UQnBcSENCRV8ySXk3ZWcyRVwxYWVlRWRQOjc1e3ZFR2l7flk9fDstO0gqRU5FNzFNZk9OP05SWmg/ZUpFN0w4U2NBOkkqaHUtW1RLQ2h5fkpfZyhfWmBjdX1KV3FTWE9FXV86cEU2a1ltTC00XjtyLWRsW1BNLVpKbWFjZUlKZHJCVTlBRlVSbDVxUTFBS3hraDRcLT1oeW8rY0kybWp2MXErRXVrXjdSLU5DbzV5YWQ5fXU7MUhBdlVWPVAwUWNFd3Q7REJCXntDVjs2QFM9T3xlQClyK3orbXo3cU8tS3M7aShXaE18NGN5UTdjL1M2WVB1KnBULk9zei8yND92Kjt5dkNUPyhwa0R3bHMuO10zRjRpNURTL3MuaU0/OHgzbWxVRVNKZT97b0oyKTJGS2tiTS1CcXM0XnJPWW46R0g9XHBaTCl5WHdta1E2fXsrb19+SlNsTk44K3NWSDhLaEtPOFFyZ0BKeVdfLFwtSTdfLGx5UH44KW0pMzZ4Ri1wYkwsOCloanBbZi1dMHFKX1VTO20yL0d2ckZmaEk1azU1NjZaOjFxd2JsOztfR19XalpoZy8wb0UzemlYeUt4fnsofWhHO19jK3ZlS3h1QUpRUzh4ZGR8NGZKLWc9cXlqMlc4W01Wel4oVm9bLGtgN1lvP00ueihSVHx3KzU/Yy1LTzs/bkhMRkd0dTNteEo2eV1LWjYzMV5wb3xFTSssXyt5MFJQTDhYNCkybUlvKWV7XVVaMzdUbW5iSXAwS0dSYnprMF9fYVZuYWo9SGJIQjRcRT8qeF01U3J+UzJtQDRYYWpjOWIwLlIoZU4vOGs7SmxJZHo4czVPWm5HYHMyVzFhRS1Na0sqZTlNcFVkKzouQXk0TV0pZkhZXitiLDlnTShyWEt7UmErZ2A/NDRFP2ViP0s2YHprOFQqYTFgVF90e3FrU2hTfXFCTGRiWlwvMS5kXkZkLDAwSDVqdFB4ZUwzUGZBY0JXN24sLjBvPSw9T0M1WmM4QjVHbWE9aW13SjI9LnRxSlwrVF5aX2FhREpWQ156NlQ9XHxFYFFWUFRUM0E4ZXZuamg/UlV6MC09eCt7ejZtdUVFPW49OnppbCkvLHs9ajkraWlUWyhkM3RuR2R8LjlrKCtxLFQyVmNzKilwcil1fFE9XFV1ZkksVkNnQ29gfX46dkMzby5XOndtZDFhcEJHVUpAeWtQbHNaOEc6Z0g1bmgySy5MMTpMfX5GVV9IK1JkREdxMEY0V1loaUZPdz9vXz8wVmgrPVtddXlCPXJQM0BhSGJ1P1JmRn5EMm0raWdQaVZHfEwyeD0/QWluK2J7XnRZT0hNSlVTWjJgfmBoXmFoUWUwbj9XeSg3bitNc3QoTGF7QVFnUTZGckJ5b0RzSUtVdDg/czUpbXp5YTcuUW03KFF1T0liRlNzcF06LS9iY3VpeUgza0NFSSk0bShVP2Y6NGZ9YCpRO0RnRURVTEVaTHpnV2BLW2cqO2VdVGszWThUXl5MNntzS1s7e2JvfmxMMWl3XGRKRFA1S0hDbVkzcFx8Uyg5QSgubEJscih1VWJMZGFmXmpvYExBO3Z+R2NeYnloW00pSHVbRS0oeTI/UEVaaUBRajVVPT8wdXJMMlkwa1kxY1dvdVQyYURHck85VFVMTVcvRG9FTURdOFpaYXlLVHIsWlgqO1o1NndOSTExO1YtazJFZTczP1tPd3Y2LDZgbmlrVDlRNUZgZGw3e1VFWl8qPTVGPzY6P34oejpOYlUxXGNHM3JQN2tUbWVnajpGQn0vMlRzdWAycGlsTzZiXEh2Ky9vaF9KaU07QWhCR0FILHJ5OFxJZFg9eT0qKUxoY1NBa3EqZ2dGWmtKfHlkaChJcGlWSlo9dXhCOWZFa2dPRjpYc189c0dlXmleU29RfkZRQnM1KmAydHA4XUJhTHpuWmNNNzksTnk2US9bWzpNKFMrXVVfXExHZmhmS3lFbF19fUtUfShBZVdTNU8tMHsoW1RWW1tkSz1IKlxUOG42LD9gbz9HREExSntPezNZXUt4a11pRTksan1vW1xIZVdUV3AsUVRRXXk/NTd3KiwtXkNYNXJnL3pFeS9mfCxHXGw6e35YeVUwOWh4Wi1maG9HTXlpZkc0QWJTKFRcT09HPzlGLmsyezYqfi1sQ3pEclNMTFtScH42cixhUFh2UzhrSWViY2JcK3RwLEh3XXl7KWdwSWNaLk1hSVUwSGY1LzswR013Kl9jNVZ2LEw7c3tCTFE4WmlYUk0vPXcsQExgW1lyO01fVi9hTClgNTJBVXxAdkhrZilIX11zN3BBKCxBOW9pNlFIcnBnQmVyVEhcPTZnNE8sZHE5Q0RXVW9zQi9aaEpjSWIzUXUsS2IqVDBOLS1sXlxZa303VkVbbj12OHlJWkQ5P0BHVEApdk5fVzRHbkZXMEMqZSg1KCprLmcxP3s/aTs7P3ppZD10O2F2VFhiR3NVRkl6flZiWndUeFtNSm5tM1FwZXRVQzFjL2UxaGNiVFNlYlMqeS9OVlw6UmtLPS8uXGBgKG09aEw3REc2cjp7PWJkWGo3d2ZiQC0yRjFDfUVDW01CPUJ4LmcrQiwuSDQuNHNPKy56T3s2Yl14fGQ6dVdTWVZQZXZsRmhGaFEvLHhLMEA7Tk1edD9iUVx+VkItKG1KOFdzLnhCXkU0O0xwMU1hM1RLfUAtW1pvcDQsV2EoMn1hclVdaylhQzBhcnJMO15fbnBqVS5jc2NnNnREalZiPzRYRS5kXF1hOkAtXXAwaXhhWUlofHozQFpNM0oycDlpSj8oVWBzNillQlRocTNtZnNCcmdvXj1QN2I5bjEoOXlHZE1ELkI0fTFAVFIrRDV9KzZkeG9UU1NLWk9vaUc6ZGJYRVNJUFhefG1+XkdXY0d4O2Y7VChWXlh2RjNNe3dbOCl+KU1DLW5WTD1+Wk1cMUpySjdzUjNgfXtGaWt9dTZIUlw6S0BOeVhUQ3h0LWk5b21OSSk3Ri9QK0JccExDLipiYXFHTj8zKE9ncm1+Z3lYYDdjSEZyUmtANWtsMWRvTyhtXSlVWipbLWRNMlFoL1MycXdlUWl+KTZoVy03blo9bz92NFlYWWhXcnVZejBAcU1+YTdXNUNtTmhQLUNyOzJCQF1LYXZcSndJSzFQb0NFdnU4XzNoQDYtLEo2Sj98Nkl9MG58YVYvXm1LeCkyRDMqSTQ0e3dnaTtAMlw6cm5gMWF5WzYvU0wpVXI6YG1BQXhyMU9DXG5UbGU1YzhcKWx+W2tENXVTNnd+NHxbT2ZLbHRaLDMzP0pIbU5TeGdjXC5heFRRelstMChcSSl7VEVAM2oyZUFKdlxLVzhNcGU3Rk1XdEN1Vn1LNXxxTTZ4R3R+Xl1HWGhLSH50LnI4RksuXnRaTWkpcjVpOnAoOjItLVQyKjpNMGRzWURuSFZFVSktcExVVTNXVmM3Un0tKlR4P1NFRnlPO2kpUWlfTEV7Z156MEJAQ0VVemVMXXB0YTF0SGBXe2NHVkxfSy1kSDN9VCgxTUtHeFo0WTNfKW87TExxZ3t0TW9HPzV1Vk9pL1VwYnA/Tj97RS14fC9gSi9hQW9RWU8xcjFoPXQ/dzlZWHksWjhGVy9WVXdNZGx2R3xXU0ppWTFod2VQWzt8UENqL0BmTkM7VWR3UXpzWDtjbiw3TFUuaGluPTpFaDheKWtIZXRtYjV3Ly1sWHMuV0hfLGIqVXJyUVNdTTRpV2x9LkloSWVGXTZTU0I9fjhkS0I/dHU1aWEoRTNSfFMzdSwzZD9aQkUrRCtfNEdqdihjdVw6Ky5pSlpUXWBUUitTdU97KVt2N3FeKC5Ka1U1dEsyLmE0NngtWDdtPUJpVSx9K3cuKXNTRUtHb2Vue1tkVk86O3xTXSlgKVtqOldYN2lTYTVBYFtyTS5LRXZdRitYazlZVXMqQylqYnNuK0ByOVY3XFRCVnJacVRdMlJJfXhmP1xcejBOdWt2Tl4ycUBhcV8oKi5IdzpGODBbQndvWUEzdTJ2fkxsXHwpdWdrKnkubElTSmg9bHtoW0xZLGpcMk5UQHdkK2pXST1vNyhRaDBzTmdVVTo0X28uczJMVl41dW0sP2ZrLz9bKVtOYWA2d1lRXD1LYVpzS1hcUzljdHpkWDo6LENPQ0Z1a0tUV11SSDFlZjd3aShYR1p+OF17Wm11PWVePU14RTZEUDBhXih5bC0vUntpR3ByO145cmU5eCwzKD1meDEpfWxIMXlNZFpGSEFbVm9gWFp2VGEqM0cua3x4XUx1c1woKlY3d1IsZSk6dWIrYzQwMlg5enFnTVh6azlJXEcrdUdIKVVAVU9GXy9veVx0YzJbQGpfTEZJeEFSKmt+NkpYQjVCYkw7a2J6Rmc2XltZel1pX3dJVHt0fH0yKjQpMWEuYFw9SjRgOm10ZDl7flZtLSpzLk0uOUJcKzZhNjdWLXMxQjlcOjdFXC1EZWY4QDdNRC93UUNDen18Ki43WFVdZDJzQE5bcjNgN29gQTB8bm94MVdhRShtazdndTpsOCxwLyhrLHpxT2h6dHoxSUFSOCxHLmJvTnJTe1dYVkFiZk94OExXaDFOUzkwP1kpKjExM1J0UzVJU0tGMmliT1hBUHNzPV9tdkAxezRcU1VHSi1qQlwxSEp1Vl09OE58P1YvKlcucz9ZW11XMHRaVlkxb1FqL15hXDc6O1JcTjlEeHZSdnhcOGVYaEFWcnZ1KDc0UnB9akxOVT9jMCozKj1WOzBPSUdMXkxuZ0ttfV41OFN0O1NyMHUoL345VVhCXGRecTJtP0pKLnB3aUIuLHAxLkQvdzRKNk1CblBXU0U9RSo3Uy0oXlNjfW9lOndnZyhlRnpXLUoyLHxzK0NpaVU7NExwX21IVCxuTy1Ca2Q3eFduRihkdm4pU158eEVtfUV+eWB1ZixAVzR3ajprbUtUNk1HKS9HWjJkV2wvWXpJekU5LWU3eWhELDdESHV4RzUwRE9IcHY7O3JnaW9TaGQ6S1U1OFBHSVlQWkdRVlIwfTRXeEF3R1dBazguNHo/TFlcXHR1eC1+LGQpbykpd0xVd0I7YUZjb3AzaUt3VzltQURBYFhfcFtRNkVRfitjNHotV0F9aUZFU1ozfm9JNGg6dmpdL3dIRD9ROX45bWgyWDctM3FlUWFnYmByODp9LjIxXlRdYD1kfm5HZEdZXzRsNlpiNFQ1NGNdS1FnZilecUJXajtGSzNxQ1xVOnhxWkpMZFhyK0lANSpFSmcpdSttNDBoTSpXVTopLj81L1lKRlNnUTt2PU1dZlFFc3RnLFF5K11CMztrLndxfls1TDszUzpdTzdwVE9DMV0sMztpKX1PVHh4XVR5aDgwL2VGel9aU0FZLWx6RXNdbzZKUng5K194WmI1KG93Zy9DNzJJVHZzPT03ODlmK35TO0ZgfWpXRS94KkNxNlFFLEQ4b10oT19RdVFDVEp3eHdwSUpqRTN0P1JfalBQe2s6Kk9eKVY3ai5sOUtnOy0pK3BsRzRoKnFKPXwvVFQ7WFVGeSxxdHRAYGAwO0cvXnt5fjQobVFGdSg5Y2RWLWRBYHsvaFhJQGVYcl5VeVtENUxfSl93b2QuZlQ5Y152O0ptNihwO3J9Wj0vN0NxTj9EdzRwRVlCUV5CP0VeQi9dT2V0Y2A2QkZYfHZ8fGk1TX4uTWlbUThxYSp0Ky55XShnMVQvUWlEekBhZFc5fnhyWnIuSEQtSHtYTXl5e2JgKEYqLz09KzQzNls3dFw1emVdbkRTXWcsUi06L0VSNlFKekQrMH5sW0kwQ2s6XjVDVig1eGV8YVNgTX00VENvVns2emB0MlpjYGJnZWhWSFZGPTpVOUVrQXZyLTlSKThXPSp4VzliKkh2K3Y3QD1WTEhUUltbVVZFc2VSMmF7PV5BMS5DeWUpN3hWKC0/bG5EfUQzT1JxVVZwXys3YDZmSytEOTAxaXdtVn4tYnRBNjpRWUlxOWsqbyk6W09Yc0o5bTQ0P29oLzY6ZUs5czlNeEZ+eWhRdWpOYU9QN1NKLVxRcjk1Y1ssR0w3d1plR1Q7TTlRM1BrKilbR145ZWsuVGNAT2UrTGxCdGpte0NwaXdTZUxEYmBdeUZpRn5nWHRNUlBDeFpTSyl5QmhaaG5CLHwyK2gxRzJ2b1JzQURMRGhnRE5JaXF1YHBGaDFPV3ssdlhJMFZEQmJLSWYyXy1WUU1re1ZvemJNVC0/bC1bbDFrOjlCflx5VHh7VmdPLVszXG10VypbKXAwejJ2Wy4oa2ZbbCtPSkFbd1g/OUsoVWlSYUJ9NGV2KVk5Y3Rva0wwQGRnVSo2XWVaRkA7fGB8R2tJPU56aSlbSzp+RDZrT0AsOmtRSzFfc1Uwe0FWUzRwRnVKQmVKKUh3dC96dWl3dXcyWmMxdXdCZlgpUih3KVNMZl9QLU12PThqYUUxOW9LTUZ0aS4yM3JNVHVcbHpOSypPUmFVazFFVVtUTTpYYE1JKmlXZi1ofWQ0XGlsKVcwbTJpNUV4cXwoZkNla25PPT8uP0t6SmZ3Rz1PWHFuKkRNZUJscH5PSmFWSSg2QkZjb0t1Ty09KU9NTUk0UXd9TklfV2QsdEJwLihWWE1GeWwoWlx9XnxWbnRnOjZXcC9zfS0qMXVGekp5S2BnU1lrYFwvQXAqYzFVKnNxUEgxQlxycUovdXldPTtxaCtFe2t9Q295WDtBZlRbQzpJOnpiMD9QOUFBRXd4anllOyo7c1J6M2wzdF46Wyo0VXdZX1J2cWgzX0crQmU4fkYxeS9JM3hcc0EvYWlzOnp1Z3ozemRsODMsPVY1SDhSMHhCRlNvLzJSSklaTSh7KCpFW3RReWRUL0ZQajNUL3Brdi1ZLmBEOHVCS1IrWmxvKmgoXWw9WEVnX2cyWXZGY2xAMGVXbilhem5mOWY4KFlKXjpfQjdNcSxYT3ZPRV9CazRcfmR3OXFsajc0QVQ/Y2QtTkVPUHZMVVVAVFNqd3pqeXYwUFNtNHFhXVBfbmUxc3QpMEgvcWtxSGJBb3ctPWdPdGJyNG4yVXJbQT0uOS1NakF1L2BQfV85ZFB6KUs7QytdYzNJZ1FoaTFvejdhfCs/MjRqQTRwXityNU5zWDZ3ZTdcUCpMKDQrRUJnW1p7P3YpdihCVXRVb1RFe155R3lnX20rXzN8RndFOGF9aUJRK2tvRlFRSVhPTysqWWV5ckZlVFR0NS5wRn1sNE1IRXhQOi9ma1E7ZSxcNSxmYk0yZSpdbXN6elN8L2U/S3JJYFFEZ3lnOUwyaXE4UTRCWjdwfjFrTmxEPUF1OmtnLXhpc0k0Lz85LzlWYlg4OVVNaU12YDF9bHc2YjpLUlBMRkB0Nmo0dVRdYERdRHxRKk0xVy5heSsvdThBfElLez1RVTpSTi8pXCgsLVMwUWx8K2FjMisvNmByM2ldSihpVSs4L3MuMEVXci9xR2MybC0yaTlzemVpNUpea090fT0qV21lbmpOPz1vSUdGc2ZUbS5HOit4bWJzMks3YHNYQm80Q2R2bk49L1xMZ1RoV0J3eUlBSUhBWl0/SWc7KWpbT1ZYMmVsKFdrfH53LikoOlRpcVVpaDNZVlpPKDBnVV83LjlzbCg5OlZUXV1yOEN0Ly5GdElCPU5aYTp5XmJrKnE7KFYrdmU7dFEwLFsvOC96UC0rQFtHWWlNYnpoRjdkZmd0Oz1aVjF0RH1jU1ZKNHNHLnBIOGFXXnlDbV5uYXZ8blV0WDtUXkFELnx9XXFpP2tqa0ZaRXU/b05VWFQwbjMvNlFmZ0ZSKEp2WzB6Uz1qaGMwNnxVUXt0NXc4TTEzKFxRN1k9SlosWmo5WD9xW3ZgTlg0YG4udF1+Uy1WVEhrPU1WOkcsOFRrUi9BV0VhakJKUXdrcFl+eXNeMjFOTG9yQm47X0BqKUFKKzpKbylsXDUvWjk4Sl94SmVALWZCOzlzaUspODItOWBGNm9KNihAdVp7KT1FNWFUNEh3NTVOU3NReU14SHp1MUopYU5aRl9bb3NqQjZ7X3psZj97LDNSUS9zKVk4T1tqMykrKTFjQ1ctW1Q7P1V4Y3JNNzEqNDBOaS5WdzdwN1ZzelZxYkgtK3FsdnldS1JSVG05dzNbYzpXSnwtUFdSM0MqU0ZbKGVARkJoTmt2WFMrajBEdF07NlguSTlfMnRmLEdLSjFaO0o3U1lrXl0oYGthSXpyeGFXLi5sbDFiQFE1LF05SkVrbTZ6Q3dhbEU4SmpkS3xeLU1HYjRjN1ZVOy46cVFlYnZYWz9SVUhIKFUoPypkRUhhbGlKVy8yLk9oUXJZSFlDWjR+UDZ+YjR2Z2tqV2JWfERcazphSitrNDEtYjFMb28sOWs3ZUlBcHsraSl5fXNYPU5nLzpcSChJeVhCWGFaMC1+TkljPztpP1JOSTdLYnVZXn1QZTZUKEV8KzVkby1cU1RKVm9mOU9baXJ8LlBENmNZTGdFW1hzXTBDe20zQ0pdU2w9KmNRRDBodXJiUjBTamg6M1spMj1DK2QoKDFFeE47UHBSRHRIN0xmSm5uOk12NGBXcTVELThPVU9OdFJgcWN5dC9QYDVWQ1xnZVptZEs6NVtyK3tzSWtAXWZXej9FWT9FRzBYSWssLGs0QzR7VUN6a1FlN14rWShsemovTzVdaVNTKjJdLEVBN1tvQlMtZ1hdRkdtLzYzazNAUkI4ZVt3R30zKnkrcV9SPUFrXUpbUyt7YClTNlNSXTY4UTk5XVwqPWd5X0A3XVtUYnA5XFlnSDJyQT1XZVA4dz9mWFhALl05KUVddGtYezV6SkdpYDpVKndJRGFuW3pLOGg5fVYwODpGVzldODgyMmVeWmA5TjJtX2U3UUgoQS5PcC8tYERVNj1FVz01bGFNKDtmL0FTUGteXDtnRi9+NGpjZWYtKnBbKi40W1U/KktJQmtsXz1kMG9HakxpX1tkWjhLQ3Jtfi1dR05laENBSEc0ezBIfHw2VmNlQkEwXFFWNDZOLEppXzAsYmpVKkVLei14fkU3bW1VNEBoT3gpd242Qng2eERhMXVjNjRmLlVpcUxacWtZY05ZWkBkOkl+RjF5d3trbjVrY040SzcoMVBuTncrfFBCdFBlWnJaWjhCdFxZYlVJNn0vd0gzRTUuc1pmSWVrRCkrKT1mYUw7Ti56Z09icGVDY2BqXldOemFcOV9BeGdMRjpmbVtEU3FbZEs9SUgsdj0/Lj93WyxMXEUxKWl1Kyk1bnJsKFVUTW04fFNGbXMtKF47XEVJSTFYd2J6V0kyYltAQHJALl5CK0JFUlN2TktrKGJndVxxTCsyaFZmfXNKT1Jvc1ZcdH0zYmxJbD9MNjdTRFJPckI7XEdhYztdYl04ZVpvMzl9UVxlYUx0bUZEfkZIVjtsNWFgMmJmVV1KaDsoWFF8X0FoUTRyVn09eG1HMGNDKDFhSFsvRlhSUU9AKUctXGo7ZGl2KkpkZjIyS1EpNGktMHYpU1Zofns4Sy9cM0teSyoxdGkrSmhOTGJ9fTptKnQ5QSpDeEdWeGFrVklDcUxCUkEyLCtvQF9jXXJJc1xAP25zKX1APVt+bl14U3hOPVhQV1ljTUh9QlJ+flFwKDpAaG4qRHdbO112eDNzWlMzWXBUaUBafGEpOVpHTTo2bGs7TSkwRXRpUz1PL1poKzJ7U0dta1ZgYFtTdWNsNGU6eVdINStGQmQpTnBkOVpsKVEqQHwvRF1NcVsvZ2woT1FWTGpGN09lU0d2VzNyZm5xej13aG5AaDF6XigyZXJxZjpcREpPaDVJTE9XW25uaiktN2JHc2tldnQpd2ooSS10aFoqMUwxSldsTl5KdV9jeS45di4wNEdkVXZqfE1gMkNfTHNWeD8qbV44OjlwSmdCeGU4a1ZfflsvcTs3O157enQ6WWJ6OFtjR2Q2MUtbTzU1bGBNQ1BoRktPRU9NQWBALTNeSCt0W2c9d0VEekVLXFY0M2ZfXXcpQnNAei5fWEg2LlNgU2ptWUIpcDVeRXFzdUExa083UylcWGdGREkoX2E3flJgR09VM0VhdT9xMWVsaER7bUE3QGFNOzFJSUM3eVRgdWFmeFZUR0lcdGtHP1l+SURvTGUpV1R4QFNRNmt4TF9PUztWMmJ0LT9Uejo0S2tPLjtuQVh7MUlsKSx3dWdRNUVicElYfFV0aVwwU1g1S0M/TVozT2A/U0g9OitNKXE9RGp5LDFHX3EyNzJ9dklzeVApTkcvd0pEXm05S0p3UChkaTJzcF9Ial5nTnBWTmViNHp6KzFbSyxiKjI2P3cyN1U/MmNXRkEuLVlmM190aj97XFBqY2leK0FLVnZJOjBwLmczNXFWQCxHUDNTXFdNMD9oVipeWXwyUS5jQXNTc1diXHt0SWt7ai9eO0pZVmxRaW1NcHReUUA9T21bYlJqeVh8cS9IeFgrZGpHR3F4TV1XKzFXdWplT1NTOyhQYHNNP1BjcTcxMDpwM3xKZEoyW2gqOl1hZmd2VmxbXV5sd1pVWzhsYy9Bezp3YztgV2ZydHlAcjg/Ync2KC51MSxUO3tNcWpnWjUyLl9PbHBuLmspR0ZNU3t2OFYxK3I1ZEtPb2QwKVxsQHl2cGFybmQ0LXNEa2RrRlhVUERFKm9mfHZUQjliW0FqNS1mM0otU3ZxSmM6WkAsR25ATjNyWTpcQmwwbEU6emk0L1VZNEt3K3dWSjQ1ZDdFMytDZ2A4dD9IRmtPSTl5fV90LEI9TWJubFFCVm1WTUZ5N3xVXE5haHZtPShVRVQqUzlqfCopZSpXNWVTcTFNZ2gudGN2WXs7PW40UE1gZFw5NVd5e3hqR0l8MVp5OT1GUTZVRTVcVX0zQUhFRjRDSW01cE9NaykvWkFqLGZFazt3fVFEUDo3RzksYnd2SUU2M1JPeHFzVit0WShAOzhxcDBuNkNAUm9CMldeXjlcXzVpa3FPcz0qVVY0fHktZH4waj8pelNNVjFNQmlnfjk7LW8ydX5YKmV7bmkvUlBvdmcwLn5WXWVUUVQwdlc9fEROfktIfUpbTm0oWE02fDl7WHhvN0spKGh3P2JKNGJiSE8rLkhRSmM1XWVnM1FfX1dZallRXV1uQEV4LG9LX35pdEBWLzdXfmhhXmRheGpSW093d1lSbXFBWUFzPTd7dzUsLkdjdmJqcjdhKGQ9QHNUW3M5KzteKyloNjJbYzl6UTE/cFxBWT82b1xwVkR8ZFssO3p9NShbPzs4UWVVZmRiUWBFPThLLmF7KFRXVjdnNClAcWBpOitTWEI4SGR0fkc7aWxZRjM4aVRPT2x1NGZxVl5OXGxyPSh2RCt6M0kxSi07WT9xUytjLChNO0lgOWY1KTZeN2YrU1JMWF9RLEA0P09kby95ZHpLWEcud0kvXkEqMUptRWo9MGJxcXlSX19mWEpRfUl7S3N1cGkqTzRHOl9NWFB8LDdDUntKaHhUP2Y2LnctajV6VCpAU10zWlVCUStWNkIzaS9OMi02d0N0TTlWXFdrODdLWXBfKTAuek1kNDF9PVo5OzdPQWh3aytSfkNvVHVqTnc7Okc1Vyp9UnxpaTlfVGRRLUdtLkpQKnViWXRmPVVJKV9Rby54ZDEqOlxDczYvU3tRKFkqQ2V+LEBNKzspYmhUV1dQczRQPTpuKldgaCxnODZkaChKcmFJQGg6fTNyLEBkTUUqUUFzSysoTythcU1YYF0qd3FkODB3ckpgOmVrfFk0T0ZlRCpZQlt3YWY/c1lcNlJRSztKckwqbDVXN3MpLyhLZFo4d1RYQ218d1NncGxFN0tva3RmWnorKD1WQ1N2emxGaTlSV0AzRnl3cjNiVDJnXEV3fWxaYlJSZnxdTWtdY2ldSkNCR19rRnNRQUc1UjJLRHQzVTE7Rj8vfl9tSnxhcD0udjo1MFEvW2FRbDdwaSpUe3ZvcWteLTNxQ35aMWJxV2x8dSthOUo4TWdCdWc1bmlddkZ1blxxbyo2XkZKOGl8ZTI5bnU0KSg7XFFoaVBzaHYzclQvNSl9Y18qcU9lSGpZVkpST1pndmt4ZixTci41cilMbn4pQVo1ZmspQTlRW1VnVFNabig1Vkx9KUBqLW1cLElDXmtZR0g0OShmWlZsfG16W0l9QC1xbV4/VHYyKjBkfWZTWGJSe11iMHQ1bkVyaEs5MSp8LFM/TXNyR118WVx0WlxKW3kpM1B2c095cERIdH1vaE8yUXRxcih4eXZPR0xATDRYVS1KT34oLWB5U0x+MFVUcWArRnJ7R0s7XW9sTFA6Oz8uTmlwQV0udFRCd20wNHJkdX0qdkxgOG5WUktfK3UvQWZkT0ksRFROQGc1MmVyK1VrO3RyWlBRWntkXkFufkNSVjd4T1kpSl47d3IodjQvQmNTY2Bia1pdXn1XSGxJTXA3SytVQG1wRm1qSk5DV0o0alk6dS4rZzRHXGRnZU00M2tcdEgqN1QtV1lkXlNnMHl9ZGNUQV9UamU0KGpJKjJYT2Jcb3pXQ2prUmRMcVtiU1ZMe35DLEdeKHIueyhpb1tlRUN3NWtbbW5uX2wrUGBgeUNWL1tUbnQzSmNzODtpNztoRU9OUjJASThQUkpNdixSUy9NPUtpMC9UTUNJUF1UZWJRTDV8WCtkP05CcjpQSmQ6YUdORks3LlBTd2AtOFBbUHtJVWwxbUN7aDtTaC9NZ1JgU0ZmKVBbaWYwU0Esd11IUDQrXS9URlBBc2Y6W0tCUnF1RSh0fVUqLFFcMTA7K3Zda0FuNUQ1XWZmcClYRWBrPXxEYndfR0VrOU8/SHNbNVdmR3hqSitPPylJKX4sc2ssQ09lflltYTJIP0pbQCpfbi5DeTYtKkArVU9APV5wfVM3XmRPZDY5RFNpcFdgfEhDW19aMnlFRENLVUdqYDosKUNxQlhgajt5TE1fLH0xKjRtTnp2WEsrcSxgRXxreGNBV3FHP1lnKDBdS0dXY1Q7dmJ1a1c2aC54dmpJd14rQmwoV197e0ZjTm1BLmQ3bDI9Mm1JaFsyVVspKVl1KjBjLFhgc1w4X1BqYHRHeD11ZGhgTEo1UHFTLDhuKDc7P0tVUXEvT0s6Qyh+ZXdAeG0zWmd+SCwoWjR7XylyW2pwS11cRSlXSTBOWXVkRz8pKS9wSDhlM2p0RW1pa21FTEs7UGxDXyo4bl0xVVcrTVxVYE5LcTBlXWhsemAtN31hO211eGF9Uk9PdCtYRipLcFpwdkxfaTtnLWR3QXlBZlw/WzRbTlAuZmhAQUlJYmlndmBwOjNcPzFQY2JhLFhWen1vT1xxU1N6WHd4UExER2dcZE4uT3hKRi5wQHV1K3decT18RVgxaVxwND8wM0tKQGdzbDNmVUpfeHp6cGc5eGNdNVBUaHwxLUYqKEI2W3JrLkBxNkNMXTBcQW8qXE9OOi9VeVUrNFF7VVpFelpNYFBMakY6bHBDQ15ofGx0X3prSUR0UV5JVixefG06SitGQ2cpLTtRa2IofC93SVA1cWdTfntlLExmW15OLHtUQEljKVtlL09CdWNjQDYuLn5EX1VeNW1leTg5K3RYZVNHfV5kcXFQYUBPaSxEQ2gxenhka3RxPz0xLH50cVJULStlTytoYEdJRixQbUJyaXZiNDdZVCppc2pXU1d8KEFnVlNBb3E3KWJYTGtiNk86YVNvLChFV357YUlnN30/U25AXDtHLlkyd0RHZil6TWdXKD0qdU19W1o6SDB5ZSgoSmRHRUF+W1tncT1OW2ZsRDV8Y19ZaTkrUVk9YHpeQzZoUmM3LnplfV5xS3hgUGhBXFhNW0ktYHI2LDB6aEEqcW1zV2gwKURZUVN1T0JvMixfLVZYVlk0TWNDSV1XSFpDZF1VYj8uRTF2QXZ7KypubTkrcnh0OWxxRU9gNXNaUEsue25xQ2hqPXQxWk1lZEsvYE0wLnE9ODNiaGFXdmNGam5kVWVjZyhYNFtobUB1eSsvUzVgZDU2Kl9nQHRoOG1JbzgxU1FyR1t3RT1MTHQ6S1NONjE5Xi0sW29bb0tTOTt+cFFjOCs7aE0/e0B3fWdnaVYvQXoqKTFUa1daKUxmWkcqNnp6endHP29OS2pqey59W113X0V4W0o3TTZBKltfemR1TEFRY2ZlYURAO1F1fDp0X3Z7c2RVenh+WDoqKVVhYWRwV2Bley1dMWNrVG1JYWVMN3t7WkRMTFZTXGQzRE9neFt6U0JAKVJtL3M5cik4LkFaSEdoLkJiOXJSQyl1cXZiTktSVnZuYn5mUnROYjIsQSlcNnpAdFJMWzksWTRvTlJyK3l8ZyxfM3Q0c1xdO0E9dFhmcj8uV0tddVdNaXVwWUYsYz1cNFNkVG5fOWF6cilsV0RUbml2dldKLHhFdGhzP3NaOSk9K0JVPVx7LDs0RVF7b2A0MF1RSGkqYXJfMUZSWC40M0xdeGV6aVouSURBS1lgLXVWdHJabnlQT19rL05qZTZ6ak8oUm1kTjM1MTBYVW1edDJBN3BPOjFYNVZbUFIwXlwrZi0wZVBSW3JDSEVAXmw7RjQ6bD86cXMsN1EuLEhMandFdFYuOkxCXGAqLkB0NHdoclBMMDtiYGkwO3krallIT3lcOXdrWjpZakBbWGcxLHl2P0MtU3cqeUwvLEJ2YXg3RGdKTGVCWXw2SGg/b2U0PT8wSUdlSmV5QXg0T1loeStuMSwwbCxqS1hUV2ZGekpNVDNYb1Btc01ZeWZqcShrTGRpaUQ6d1R7e3Qtam1tfE93VH5GdnNfRHZqZWJ6NWZVSWhPaTlKVjgpP2g1Sk5eb3lpcmozflpXYWspVSx6Viw1O2F4NDUsQ0pjQlkxMTh6aHotX3QwWHcuODtfeUlnaUFWUkh8XkhPT2JDVEBxXGBpdC96Y2hSR1FYOzFbZ0V5QkZiRXFxQHR7Sih1X3tKfV9xKmJPMk96TWA4PTEpP3s2Z2VaXEJiRko/Z29gOVh+aWoxfCsvP0Z4LF9ReSlKeTh+cW15aG11cVNrOlg0UjVBN1wtZGZoVFRhSi9+KkhxTEdvSG83SilubV1bUEgxM3JlaGJDVFtQRXs3TXdgMV9nOFNNazgwb3lwPWR9ajJMPXxcTXtaVS8zZGV5Z0ZecmRIWS97djh4O0p1SDt2M05KaTdSSlk9P29TQmpydmY5TXhOaXd4S2Vve05BX1JZZF5Lb3p0dTItXjFyT0tubWhgTGQsTV4td1g1PygqMmx5ZXVLcTNNZVNEUkZtRUdVW0xsNUpodldaXURMRTF3LmBGOUF1XSs3YXxwajNRRTJkOC4qYzlcSEJdSDB8M1s7bDhoYC8qWmhdOWBuKntfLHtaYkZFd1pBVFs4RVUwZEYpcmtmLE9mUGxzZkRian1rNWA4fF1aMChPM2lyLGRoXmtYXDBqUT8xdmJxaVBcUU1seyx0dipFTW0uXl1fUHZIXkx2S0txW3k1MGNySGNHLC5pWHYsYUx7anxXX3k5S01BW1hNUV5ycDJqRFVRXHRHL1RTNEtSVzVMOUZHeXNFQUJrbzY/UW5dcUlMOk11dFN+fHw5eSpsY0VOZGRGZStycEovKWlyU1teN15YMjAwRj9OMlFCYkQyflZkfXpuZGN7VzczK1hWZUFOaEJJei5faC1ZQXR3TlY4PTppQUhZSEkxM15iYlIwSFBnYlIvcDstMXN5ZS9BRGtSezl+dkp4X15iUHotTmZbcyxNZF1DMmFoUz0xW057UndybnloQWtJQTZVMnxjUVxCe0deKk4sbj9bN3hPajU9NmU4c35WMVF8YnlPNHs4alVpRXBSLnhidmw3VnZxbVt8X0FuVVNqVUNSYXlUUURteG9QUzA2TD02RE4/azY4OXdkY3pJZk8uYjVMUF58QlR3KnNbU1dCdm4vXyxdaHg5OD9kaG9SQVtWKlhJfDNjfTFBVDEwUXV9MkV6ezMvc0R7OSppYzttNU4rQDMuWy82Z0soOlZgaVJ4XHBOYmRMblQ2ZCkuUDt3V10vNTZZL3hRdS0wMmBSOj1IVkh2d1FOKy55MixPP3hCVlhFZ2FwOV8/dTctX0kuLHB+Qk5MLE0sTCs6eTl2dUh1LnMvRkd2L3pGejFkMlxQXShUdyxZYEpMXFguPTVoYERqOTh+KXdhPyxuV1dpdlhDanE5emxvWjJuXVZJZWJLRC5XWDY/N2hnfF4wUURXQWhfdF5FaUxxcUdzNkJuVzAvQkE2QFdeQXc4UEk7fHI0KlpFV3JHcmJ9Q3czNnpAMG58RENaRGUtMl12fWxULVZIeGNMdno6Q1QwXVd4OT8zYTRPQ05qUmRScHplKzFZKmRXUVBGRWdPT0kvfG9gUGFDPXpUbnhqTVN8YEFOOipsWlh0WzdXU2goemoxLS5GZVNoZTZ8SXFFeVt6RHlcZzlpZ2JZe0d4di1wNVxvcHpdeVBaMlA2c19yb213cEkrR3EvcmVMRGVaZj9hXFtRaTJOWnVbcXooaVB2LkNzOGBXTkVAfCw5Qz18M0xHUDN2KSxdb3R2Ny1LTXxpVitsKy8vN0E6c2JJbUl+QU9XMUQ6OTVyX3woeXJ9SWlodjBFamRnTytKSWleRFNnMDtuX15DbjFDYUVUY1hpRFNtO2wuWSxPNDBaTlNdci0sPUddVC4pfGhMKypbRzE3ZDZ9R0c6Vy0oWDQ5KkV+NFE5LWZGO18sQ3cpaVNzZXVjNW84N2wvdGhEUlFnKXg2M11OSnZ0PV52fS8weVhBKDs0ZGxtKnU3cXc/X0pzaXsyLnhuW2c1RT9zLyhebUROczh9e3V9SUJfQ35kP35uXmkpeHtOLVUpZ1xYM2V4ZF44Y3FdaVwtT2k3OU00TGl2R2lieH5gZ29cbnZiKVZIZ1R3TUR6UER2WW0uVS9bRW9UUjcxVFFnfl5YfUd6ZmJce0w3ZmtGZ2djQDgucXNoMnl+K3VudDNVKnI0bFY9e2x4XSplUUxDPypvVjhKX2RVWmU9RGJ1fFxeSilXRWVgKmBEU2csUklQZS8xKEIuaUpoMlpQeEhPRjFEZTspeHBeSX5SR3t8dUxRRURyN09MXk1tanVoT2pXbTUvZjYyS3hFM2xuP1s1MGZybSlFW1I/ZllocUgyR3ZcWXdOQ3EyZygvYi97UXZvKThvWkgwUDhoLXdaYTdpLFV8Q3VafDZ4SHZtUlRiW3lyR3xVUlRANXZhQ21KRC5ycV4xKWleXylxZS1GW0duZkxeXmZwT0t2bVpFRksqQkAtQD90XVprV3VVMztnLjV0NH1+dE1rT0huYy09e1JGbH1JPV1kQH5hKE5AUGU2Tj9YcWQxb2V3cXtMYFN0WT9oTElHU1NYcWBoRX1ibjR1TjtyQ3Q6Y0J7MVIoX2gyQ0NfenNkMkhvblEzRi5ofGh7MWN0R31BVjNAL19Eay5+XTZHMWozXzIpVVlNfC9RQW53RUldQitWLENaKEg3NFcxcW9qMzRdR2s0LCgtND1ya20wK3FGSS53VF8yeUQqNj1vRm9GOltEUy5mcmlUNT98TFF6XDtbc1ZQZ2Q9a095L1JvMDVaaGdwUF49YlopSHRjKHc9WixBRUt1a0VXdihATDN2U2dHXC1HOCl4NkA5UGErbC9fSjlYTUMqRlh1O2pxTEV5YXNEXmZaPzNZYmlLaUg5L05+Rl9vP3ZpR3x3YWF3Oj8sbmR5en1QeTNKfTooW2BEbGBvTF9JL0Nda1BVVC0oZ2xXOTgufEVfSndLc0UvUWVpdTk/eFt6RVE6K0YzPTF0cDl7dyhrXCgwKTZxejQyWEhlTltZa0pWfFZmd290fW5SeHddQEg9RStVMEFKelE3dWFsTi5oYUdFPXBhdDNAeGY7R0BjUkw0UUR3RGlOQFJgTj1pWXE7blk/QjVUXUBeYmlRZHRtQWJiRkB4Py4ubDpcTVxdMnFqODZfOTs9cnFHPV9JaUV8SV1zO2gwNTRvVi89WTNcTT9tNEJ8XT96WUAwKEBOPXQoRmIpVmRZS1FjRWw1RFg7QDsvSUlMdn1zLWByV1R2UV9NSjNBXzQtW19YYlFpd09cTWhxMU97cWo1WUMzKkU0XVk2Ul5hczFxcG9RRFsxby1zQDBpXkNEUmk2cmhrQWZsai9GK0xEaSh5LUdHfmN3PUgyb0B5cjN3QEZxTS53RX03XSxgSDJ4fFkqQlZlT29cREBfLj8zPzRxd0xLQVMtQlU6aTJqT2h3entYS0prRkR0SnBRdzZ7cixzcy1YQX5ZQ251bzZlU1lRRnExKj1uZkdgaFk6cipBLWk9OE1HV2ZnQXVxPS83VDUtOjNSYlxIWC1rNEIuKj13RWg6WT8pUnVUKkVgSy9PR0NeKy1LZ3lPailoQD9de1RpQWhAVXMwZTdvTFh5ZmZHSk5YVVk4eG96P1V9SjJUKVxKOWx+NUI5fS0pUjlCUHFzYnkuSChUR25uRDozXlsvU2VoTDtRN05ILXE4RjlaWFpqc046R2VYMFNVOEdhRWcrO0pFYmdITn1QX21BN34uaT8/PW5faW9GXkBVWiwyTW1RfnplLEdIUEtseS89c11JNX1IXXQ/Wi58Y31iKG1lWT1qQmFYbS8zfFhRXFFLdl85KEVFVHxzdVFrbWVheUxtTjt3Qn1XaVdoKkg3QnhpK0RVbzU4fTJUMU40Lj1LKk45SzEveHZ+SyxwVHV3Qi4qMy11NWReQk5Jci5kaXZUSklHeDJOXHFuVUgoVXE/UzpofVFPKzYpT0p5RipYREpOVl5YS0xmcmcsUngpPXMyTWp+bXE7T1hcc3N6MkQyeEd9QEtReUFsb29CWlBQQjdWNXxFRVwoU3l7OkY1ck4ybzZ8ezVgakpPU0JKNStmO0IxdUlhKVd2ZkdHd0txSk94KEtVb3YsbHRcXi4yXVFwMGU1OzhMN0YwaGgtb1I4LVxqQVVmfUtjfC17KytMOlc0UmlVZUB8ZisrK0Yzclh+K14uTDFVd1VVcjs5d3JpYWxdPzQ5dCtNMWN4elQxbisrNj9NMVR2RXNcXFQtTWY4VVJdXCl9Y3sqdnNNamA0N1NGTWpGdTpjSjg3bURyUT9LUC1ze3VvaUBod2x9ditVe2ZpV0xhSUA7OWxdbHR2KHxMdFBXOVFCSF9qeGpUfU8zd3pVfUhKWGRmXjpRWkk/TWUwcj1HUyl4XzhxfkN3ZS9TMzJXQVdWa0dKbVhwQWc9YlowaD9uTF1KVnB3MHxcc1MrSlhvfjVKTShvY0FXSzBbY1hfTHpqfFA1MEtqUl9GclVEUHtrdVM/VSs6NWpfeS1Ifi12LG9JREt+c2hecEs3T1Ioay1fKXFONGRHbGE9ejYpKStKRSkvcl5cNW9ub3RiNis2Nlk4XzhpRy1IWl5JdlBmNHYzN2o7S3lRRnkzT000fFBxMCszOlVCKDlVb35iOy5ualYyKitFMV5aK2pGR1lwTS09KyhuM11XeTsqQnB5STE/Uz8qemZTfFJvbXdJY3ZQczRmfjlRQ1kwTmBocUxocj96Ml9wKyw3OWZ8LU1Tdm8wPUZiTjZ4LkwrfjIxNlZ9YShrRm5RKlcxeG9eZHVddXhHVFBrNl0xK0NrZnB9byxMfHZke0AzV0hLNHFFen1eUVB3UTFeQk5ePVxtKTllVy96WktAQDZzPXdOTEtXWnQoe217fWYsfEBNYF0tYmhpKDduNXtIWE1ZLkZSYk87QWkqVDFMRlRoUShPVWVTZWg2RWN2OXYpYDpeX0JzLz9mYmM1NWoqL3xpVk5qZUQvXm8zUHpHV1hpaihnK0tpOl0wQlJLPTF3e15bYUpDb099OTc2WS1IW0ZcczExeWhIbVw5Q1ouLzptLF5QVj1ENFZpYF9Jb2Q/cEA7bTVORHYrfjp2eWBZSDh0MF0zMyt+dDIqel12XFMtbVcweV5lVkBaOGgtZ0RPVj0/L0kyYHRONWA9fV5IKmwtd0pdTHpLVGRIemJLTFp5QU00cixCfmlkaixXXG5LanBhR2Bzaml9aVMvcU1WM3hHKXtmLjR8b0lwbUtrLGdzXFFhLlZtSE1ScTB6Lj9jVEk3NGR4dnFNSllvRHFbOmpVVzh0P0N0XltjenVVY1thWlA2e0U6VWxWLXNWRF4oT05KdHNJbFktVE1vcWhRWltaY15mKFBsd3hjTG01P3xyLHRiZFtocUV2QXA9REJFSTpHd2Y2YmIxdUw9TDhvTFtLcVw9aW4yOENyT0ZmLnhxaF5raFFDZHNgTGV8Z2NHW0cwQmtbXlJ5dFUtcC45anxhbT0zKTQ0UksoSzMoaylDaCxpTjVjTj81KXtZcU8uMXRCMy4uOzVze01UbFZBZ2gyUWEsXHouKSlVR0BNZUhacUluMEIqYVAqMTsyd3ooVWdKPVlIKVdLYyh3dkY5cV5XKWZFZTZLcEpONHN8UW4qaXBkcGdsK0piTX1zSShWMDJ2PVxWUGdMKndMRjZUV09xOEJ5RW1IX3xlRzlrY341P3pIKylwUUtcWHQ1VFpGT3VJdGN+UU9tfktLRlMsNnViWnMzPTIyRmpxXTBxZWpDMGtNN3ZrM2RoQiopZVpIbDt0WVhDaixaeTgzcWdqbXxNRytvfDdQel1ta2VFZUB5VHM3dnJtey0xfD9ra2NyLiorN2VTMjtiZXt+LVJKSUVRX2xmXC93LEBKXkdtYi59a1NqRl4rZWJWUTd0QE8uR25ncEJaSzdzdHE7NkVbZkw/ait+TDo9ZHMwdVlKTVg6VGh0OHFxc1RLYHAza3s1VCg3NEVzWntCKGhae0hpXG5HallPU0N5P147LDdCeEtqcCtNdTVAKkUtaWdfSV85TUtPL3pVQE5wblVdeHJvUWcpU28/WFRgR3BhLTRvQnAyYERpWDM0QjlMaUpTaDtgNEVdR1tsaE5QY0xXfUh7RF1RWlBnezVLdigsZU9fXWFJVm1EMFMxXjh4MndEVXR5WDBIL1ZBY3YvcXBkKDFCUHxeeHt4dEBDaF5nbjo5c2RIc1o9Tj1gazlJaXZHQmdbTy55Xl5Ve3VzZn1QbElXQmsyRnFKLndGRVZIKl8sMGAsNmlubGQ5QDpTUTYpaFtFd1RvQEo5X18/ZURHRz9Nc3w6VmwwfXQzUEJJelpTO1UzLGtrMH4wWG8/XUleSEhufGZLbn1dVTpZW1FZL1VteEBaLTBASTVtYntJa2JkZns7c19mMEQ0cXZGfkp6dzBDMEhXdX5bUm0sUFtWQExAQTMoWWJdMi5zVTtNREAzcTp7PUg1XXItd3QuX05la2pqVVw5NkF0eHQ3Z2pYNWk4UzpIZy5Qa2JULkt7MkFgQTU1VjczOjMoWEpBYDpAQkRHXEQpLnsyVVpwND1IemhoUi9pSFs4OTo0NEIzNzROYkErd3FlKHFkb319LUFKMFpEcUJiY0xTSFdwaj8/cGNvak9uREx+cj1HbnR3UTN5RkIxTU9YO3gyZHdrN0EoeHRZcFhYaVJPVE14aS9nW2xgQj9cT2g1bHYqVl5mMUhIc2BURyteLThsRjlELnVNO3tgX2VyLm8qaTRkfF81KDEpSHRzcmtiRFVVLzdqQTZpQkBYP1BfVDZlSEEpRXlicVlHZUFFfHNNcWFCRWpVaHVcKjpGUmtkRHQwWlQ7KS5teUZgU0E2OnI0WXRpez1qL1osZ3ZCTnFCbmRbWjVaLk86elhXRmxCYlF3ZEdydVBVMy9kYkB8STVEVWNuUzZlfigxRSxiQWBkZEBQV0pYUjB6NihANj0/YV1PZzNCYixnMC1aWEtcbS9RY3tuL3ZQZXlfNDQuYWN+eUtIVHM1MXFeMl84UWMvQWUvTio6fjg5djtLTj8sYC5URS82b2ZBK1R+SHtSXkdiS1w/dzhWR2txNS1SdHp2dGlMZFg5S3FufG5EWmlEV1FyKWN+WFd2SzBqdy9UcDE/X1hXNSxNMipfd0o2Rn1WWDQ1fTN9eD1Hcm9BZVlzTUd9aEhWYykudC1BWT1WOmBGP0UoZzg4X3lFY1l4NXtgUDhtW0xbX3BzSjEpZnF0MVdeVDZ3LkJ9TFc1VDhcVztOX1x+KnNHWU8/Nj9hUG5zYy9QcXUpXVgzLjdRdkUyOE9WTzF9dkxsTXpcLWtyL04xSC9lQl5gSHZKdSk6Oi56LWt8en1lLmRMQ2YvUkRTLDpJUEMxMTVzSSgpKXdfTmQveWdFLE17K113MXhFMEg7S3VJS0UuKTNIYTUwRlZ8Xk4qSHo0PVo5WTVMbkNJfVNMSmZ0SXIsQVlVd05OWWRuOWFTZFJAfHdJNDdcRl1GQ1hYTlxUSzFeLXNPSzpNYWZxSGc9Q31qNnRGXkYxUlUvTjF1NGFgditfN1ZXd2J+MGJtKndIUVFTKCtOejJAUmMsTEZtQTlxdmpgRy1XWitJYXFKKVc9a3N5X25KbGk0VXBxaEQ4ZE9wZ1dzelZqWlppdypPbj05QXJIX3A7aU1FLVF3MVZHeSk5clMxYnlHYnJ+ckxdWjlhZz17My9fK0JMejhJfXIqakcpN1QzcnJmX08oczUvdHhhP1Bra0dOUzA2N3lwbFxTW3h1XlQ9fkRDTDB6dnsyVlR0TVV4c3tdR2NMXm5jLS5TWXMpODc0LTFBLTBVdFZrOktyV0pGcjtUaVIzSC1icFdsQ29TdHttSHJWLUZjKSwvVF4xP2JIYXpKLldmUS5BR0BIY05lKF5KSTA/cHgsdnh6Nl1kfS1xKEhuXihGPTteKjphVU9oaV5NSUkwfSo6U2EqVDNnbXVIZzg1L35QQGJUK1VceDZvXDorajljXl9OcVJjY1x5XFJWTHhFdlN3VllMZ015ZHhHVH5kaEBTLWJNZk9FXzdfQER6L0Bfb3syQH5HSU5uU3hvanVfemhtcFFvXnZcWlcrQjNOeks9bUYqZkhJN293QEdjQVdqblFQbW04QDl7XVBSUkhiV0x4cXE3L3x3dltPWUJATTZOb2BMUnFCYnpLVlAzTVpja0l0UUNIQFFHd0pDQ3VVYzo9ZjsyKFhZW0x8N2hyMFdhSi9bUnN+entjXE1FXytiSH4xb0QofUlQKDhAXkVzUVJ5YTNBankyLTh2KEp8aEVWXk9FSVo9OXRCWDdtamkyVGxRTlwuS0kteUxEN3xmUyx+cnAoZFR7RWZjW3VlPzR6SlRKdzd2SilxYkIrP2daXT9AUylYel4rdEJcaTg7aEFjNTM7X3oxQT1sLFQ/MEk1WmxrNzU1cHQtd0xkUGl2NkFVX1BNS1JBRVFCcjdPamBSS29FNDdeQSwxNkFefE5IYXQ4U3YwR11DclIrOC8xYENrPXFRY0Fycjc7QmJjaz1EemFzMX1CeDVjUEwuLltRVkdMfnhfSUhnOVUvO3JpOE5AR0VOSkpYSVFmeGZnUmFgd1YreUxHczhtUGMwRi0uP3hQSVtFQ1BxWGFeRkNfMHwqaWdjUUduRl09aT02fm42TksqXVcvcmUtZS5iSzd9V15+MHJiR1BrbDlbTEA9X3N2cS1qPV1BcksxKkthc1RBRyxGVS9lKkV5YF1ed1ZPRmNxKXtbOEhoNmx5XWxvO3RUbWRDfHZRbjctQE8qclg9SUkoeGxabnt0K15oNHVOKGNifmkreW1zOUJaZmZaQV1TUWQ6QCxnRS10U1NLYl9FVWNQTFopXTIsTnVNKWhXMFZTTzRmd1htVV9KSE5mPWVRMnpfSHA7RHVvaXFETUM/ZDp8M0hES3ZdZUNiezh4K15lSlpJUXFzL041eV1nNVZYTUMtW2Fzdzp+akJ0LXFrU0A2e2lYS3hyUk1UZ3hTYEluOUtjZmpUby1NSUdYVXB5TShzNmNjT3g4OHBQRzQudjR+QHtVUTJ5dF9QNjkpaXt1RXQ6d1FEYCxGeFkra1ctRlIvLytkZDZUWlEvSkk5V1pwZFJlPXVKK09LS2xVXFpvRzd6K2IzcVxXNl5oTUNaWHVcaXtgfGgvbU5tWFMzY15lKUluO3tWTGQzbjhZUXJBW35rXygsakA3eXRJUTc1XmFocnlOQ1M2WURINFUvN0E5MXtSKzBtVlJMXjk7eV5SPUAuNXJOdTZJSURHcGZjfS5Ydkw2enxoal4yYT9yRFQ/M21VXyg4KjJXd21cQywramNcZHpWd1BIaGdPMDhgZmdPb0d0MEhrME49SHZnXUcsRmMuNmBtd0BBOVhHeDtTaGA3bjhpXmtPTjVBMTM5U1lrezs3bW1cOGt2Llhfdkc1YClaMm1JZF1aX0ZFV3ZTQ3szTjd8N21LSmY5aShQNjhWVWpbLzM4MTRbWzhqRWlbTnItcEZVdGZ2O1ssQzNGXTg6Zz82ZSovSF9qQzhWcn0rfmpGYXFYUTh6Nn0saHMuOlhbZDNZall8WV8oPTtSOTNfXU8uOUV8bGtTTXlrQ3FuZWcyXkApZTZaSDlKXF5wRXVvNDYzPWtacUZIKXY6YnpfKFpqTE9eMS17VVtGdnMod0g9LFUqfXt8O2FhOWhsNVtRe1FvVX1rRXhVSEZVXFpiXndeN0AsTTdDK2k/YlJtSU5WLHoqP3hvKlZMKC1Ze0w1Lmxfck45R291c3csemcwfn07X01lNDJuOztyP25ePzJQVWBtLzZ5O2VyVEdpTytbYzVve0FfeFMwZlkzVX03VmNZVWwyLG83aD0tVFI/SUp8bStIQ1loaz1FallAeFw3TE1LRFo4NGhaVEZeaShxUFhGdix7YUYsK21+KC4oa2NEYCxDMSxvQFV2WEhqfkB6eWlycWpROXNWfFR1M3Vudk5sX1leNnlFcWJgT18zUkArNUMrVjRmUmFTaUF3Yjk6OUBSKm99b1RbeXh3TmRnL014eCh7em5rc0JDcElrVixFZmVIaUJvU0VyQEh4VVZ4KzNERkBzNm9EeDltLV1Ebk5IXTZkSE1RYyxmSy1nSnwoOlVnRWhiOTBAZi5RYSo1VVYxdjdlSXJoeFhqcCwwXS46NnFgKUN5OkhFbX5xUkZpQ0hZXjFpc0EtLTQwdjQwNnd0QHw5KVBNSnQ5TzRAKjZwcVJ4fVFbc3hRN190Ll43LXZoeHcoaz9TWnlSNFFfcXhxcHp4T0I0MWJfXTNhbntqKFtxWU46NHopX2xELFdaeHo2fHV1TGBRWjZ0TTJ4SXE1eWp2QmZFK1VZVltPMFxmTSxBMF1HYy91WGNrdUZeTUlkN3JIdHFKeWU4bHVVMW9TYUhiXUlLcUZhNnJmRzFRLk9nYWYpQ2RaO1YscWEvNzI6RDouS0plKShuRC45M2ZgRWgvTmt9L2MpNit4Zl8uLWNHQTZdN0o2V30/Sz99aEQ3WktGcDQqT1VZQ3teYDZTP2lHXjVmT2BSMnVtLXk2LnZ0TXdQMS9pZTJhTTs1di19b0x2Snpdb3RTW0A6LUBPQGB6bG43V0MubFhpalVuaHB6NkVNbnFeMnA0KWZ7OExULXF5ellESEs4NVk5Z05SWFxnNztfKUZjYF9Ia0xlbz02ZWRVb00vMVI7czB8dEoyMFZLZFEwTG5obXZxemF8cnJvUGtoUzhcQX15fkRLcUlUSD1zck4qeDs5a11dUHIzVEF5YHF0e29eU3J8O3JQK35zYHZ+ZnNuRDhBX11TbURDO2RpNFV1YjUwVFpiZEtqZjlWSGBfMjJqW1RwMH00d1BILTF6a1tNVypFOTJITkI/dW9rbT02ai1vTSl6W05NQm5LM1pgN3coWlBTdzdMcDYxb3VaZ3JPe1Z1RUg5bnpOcU9LLTpuKWR9LXM0YmtSMCwvOk5DMF9xW242XGZkX2JtV3pePyl2NERmX3poZzdiWUA6Zy1ZRHU2Un05d01KWzdfb0FUOys/MEYuK0IoSS97Z0JZcmlFNURTYEYoeXRGd1QuKmFibDFAMTl8UGpAcUp5RCotUlVSWmE6TS5DLShOL2xiLnxWLnNPLmE6P3xlQ3JpWXZVYC1xbWdISnJSd0MuenpwZEwsL2poZ1phdz10L35vXlx5Mzt5SyxmSGlfL3s9aGlzOzM3SypOOk9ZQDNja11ATUAtTEEzQStAY1pqZ1JOclFRKFVOaG9SPU13LDJMR0lbMWhuXCtmQylcQDIxaGpaLlNZe2dgVGJsOkopOyhrTylzeUowVTJeVTJjLDgybGJpTix9ZilQXDRWOHtFdlAuY0hZbHZBd01LaHdOVlVPYytpLH5PfGRIVC9efXBId0F1N1p1fT9ZfS1wdCgpbjFrT2ZoSXFuN2cqZ1JsZ2cvcjpGfCo/Z2ZcRz1OanRAbC8zLFAoLF1RNG14NXV8b0xqQlZkRSw2bTFOS3xdMWhhMnpcWll9bWpOYnY7Mzs2dzZPZWUuO042O014W3VNYGluQ046YnI7RHp4bVpXTlRnLSguLHVmcV00SDBeRl4qVWkxcmd3ZXg4NXRnZE8pR1J0KEo6fHlQQlssdUpBVVtrY11rPW10RmFqRzVfRUR1e1hQdS9jcVRFXUtAY2tecjpUYWJnN2JHREtZK3x+OUtncmE9WT1Ub1k4L0VRQjU6c0hMQ3NUUk5dQk9rcThHbClxX25ITj1gVXI4WChnRk0/KlVqR3FNP3BsaikwUVQ6NWZ3KGp1fTJoXExXbWRqX3xZSVl5fndcX3k6LmxzMF1cNnw4d2JQcS4xQzpAbj1hN1hJQStsajdPUUMwd1F0dVpQe25ZO3BDUHthLVRDZXZMMkxENHp3UXI4L1MzUlRgO0VrOkQ/VFJGb089VFxaaVkwa2s/eSpDamJsU0libnRUeEh1OlRWV1ltamVSemA4Tm59OWBqTjB2Si8uPTE/eGEwQCppS2I3XFZ0bHR5LkJJTThpRX5iey1LKW9YQ2NLaihJNEtDWFptNHNQLmZwbzgxUTl1N1hJeWJ4Ym9WOEpNS2QoP30sTUAwLHJaWFBmTTpINH50QEgzbG9wUlhje0ZQP3t2LFc/O3J2NThOflNpeHpUaV1LTzdqV0t2PV89fjh0KUNSKTldZGxoQ2xJZlk4Qk5IP0RsQ2hgK2trQ2B7PUh7VzdZT21ES1F5YGlxLEotRV9sKSh9ZWA2L111SS02MCopaz9BMCooPy9NOzBlN1h6cVd7XXhBYWVtSi4uRWBuLVlXKEksLC4tKntVRistSUUtL0VhRVtDalFTbnIrdHk7MVdJeUw3Z05kWmBrNjVCdDgwblR6RlptZ29WeHZpWGBnQzcpMDlJfkhOQ2ZMMW5MP3lCNnp5Q3koTFdCNEREUi8/cVJaeFNXP2c9Y2ZOSUdfTXVOLGxSSVBpfGBtaDlcaVZ4OG0sUilWO35yX2suRTtIU2FGaT9OS01JNStoME9Cb3hsXjItTitWO3ZzRE8sW0FGM0xSLjpgT0FSMVxXVEBoRGVAc2RIfjRHT192Pzk1Nk5vVWp7YGxlbFRTZn5PVGhsUUlUQzI7PVVrKzBWWVl6bl1EailLYlZIUGMzZXd1SWIyYWpMeHE0STNUZWtlV11BTExEVztGTns7SVtGc2ZRakYsfXFnL1NBS1NlVz86VX44QFFkSi1EN193Ynp1Y053R2d5NzYxN2l9MyxxKmVfSzQ0bzZkYlU/XDI5cHBzNVY2VChFZHR5VTh2ci17SXY3S3UyZDIpeG8rbn1JZS0oay1dc1VJTmlmOyxoQlFqZ0xEZXtkZFlne3VHTmE4KkpLNUZ9bk51bkV7OS49UlxGTSlwWExffm9LcTI7eFxrQjN4NzpITzJ4aGlyfChaQ21rNSlwPV9Ybi9NYlAxYzhIKEE4X2xIUSpVRzh5bSt0QnZHX1pgNlRxQzJNQV5BR2osNFJ8dEcrSlEvLl05dEZSflJMPXprdk09diw/KGlZYnF3SF80fVg3WmRtKktTX2JWT2d5MXRzaG01KCtwOFkzT1A0blFle2RrYGcsMFk/ZS9OUXEtW3NdcWhhcn4xbk1mU1NreDRGR0tkPTQ0XTQvLVVWYU9kU09eK0YzOHpEdnA5L2N+YjA9fi1JY15ccU94WysuPUlSdTItOjJEPUtQRzZTXlg/M35EMEBwbUA9U1pnOUFiOTk5NlZWd2RROFV4ST91NXdeRDFORj09L2lyZGJkdCtfLz01Tn4oY2pKOlJBSlgwZzhvO15UcjhZXHFjV3h2anY2cVs0KEx9X0ZcT1VRP1BgVER4dFhBQ3ZFNEgwUmVZKmsobFFQUH1bMXYrMFEsMnRPSSliLT1keFNndVFlcTtzYl5sdisyPXBhRyl5OWlOaTBvSUdjcD1cXCl9Uj9rKV1LeHljdWRjRV59QFZVQ0hzcTFvKTFsOlVJTjRYdy4pdjJkQFJ7aCo3fSx0MVY/YjJIMDEtOXU5T2J9QE8pNVZxe1pvakhLTHxfKzpNXTtsRlJwfVU/dEM5VzMyZD9GSWFST3lccSx4UXgyfXFNdXVaQDd4YVpLZmdcUDJJU3cpbmRRdUBnQHZLdyovRHRzT2lhUnR3TX51UnpQP2B2LzF7YT17K31fM3VGKnYtZV1zbi0zZmpbZThzP2RPaWQtNmJRTV1edTdaRklLanI/S0RgbHR6Ois9RTthMXFpXTg4cW5dKWtmNHI1cFA6UWhLO0ooVzJIKlFISlFoKH0oV1BhUz9SK35TSTVCYn53XnpdZl52LX03Q0NgSExEKE5adnp4Omp7LldmUFFIMCpKRF96OntkaUZfPXA0RWN1Wz9YRmNWeUE0bTQwK3hvW3ZGPUhnTnd4S210c086YnkvWFNpYzpGfWQtOWMrZz1yQnVSUW1vUFJLZnBrWjJZe1kseXVdM0VyXFYpNmg3N2xHU3N6XDZyZWx3eGBvVjNzSDFOcldeVDFEQjp5P1VTUWFye00oRUdaV2RdUStybFFkWH5dUVN4KzcoUj8rdkVse0pyT29reXwzSi9FSm1MT3JRZjAvaG1OWHRLbFNVPUV2cHkoVjdVT09aN3duWno9O1F4NnVWUVFSLCg6X2tEdTZGTFhWc0tqQDZPX1kqSEYoKWhxRVgpM3JgUXBWLnBseUs9XHk9ay91Q2RlNTRidl9cXnFeT2M5OnhTOD1BZGpEeWc0e2AxQF9sXGY9Vyw0LzJnNFQqR29OdVk0Y2JVLlM5MjlZZUlCVXwuO2o7TztcQFh6X3c6MnVTUFtERnc1bElLVmR+TVZ3UWE5bG1eaDppP00xP2RoLmFPV30ueEtcY0ZgdCtERltaempMblp9dClURWV3Lk01azFSLE8qLmVSRm4xS2tOS2l7a01pX0FaM0JNR1FkLzIwNFFQdUosUldedCxea1ZVeW5wKzVGcTY6fXc0Y3hmSGJuczlHLVJ7e286NWFhMDJMN0AsSFA1SDU0V2h0K1p3eXRUKSlUTk5aNGJLZHZfNHdNNTY0XT85NmQzQnVlMWtBMm5IfC1GTVI5RT93bWpRVHJqKkItRXNUXG85NndZUU1he2hBYUYufkhtM2locmtmRldBeC9laFx4YUN2RlRsSXFGVWc4VVpeeEVmNG9TTmVReWw/Lko1VnZbMENpZUxvaXcxOmNUfXprel1vdzZ3VFFJYHgrQ10pWVl1ZjBQTl9zXENHWXpCa25gNEpKNlpRXDczdEQ9ZSpGUFRCSkxBe2pLc20vW2N4LCpcc2dCZU18fk1NdzApSHErYTJ+fHh0KW5IS0RFX1FDKndlN1ZjQkhuYHRmdFBgb15UdmROQUJFbG5STDN4Q0xPKXtBNHtSa0Ixem47LkhNNUcscCwvbGosVDVFNC1rN1ItNEpZZklIMXZbZ0VASWxeSj0xblhpfHV1Y3ZUKmR+eDdCZi06dHd4cTZVSXcyT3Ffdn5GZ1UtTjQoXWdNO29fOTs3QVRoVn5fZDJmVGR6R0Y0VnxhKzpBLVM0czk2c297RTZ1fW1fMS9TWzJ9RUkzSVlvOkJGTXh2dy19VHhiRlZiaVB3Nm5fLzVBRFZoQ1JWOzk3XC0odzZqSl93QE04Nzt+PVssOX14TnhwNUozL3crRnRdWDdjYFEuOkB4VE9cTXJ+eyhkSF0obV93L3J5V1pXZXpPQXJfeVU5bFp6SmROby0uak5+TUB4VVNrP2Z1TmVuYG5lXUBNUH5CTllhK0gwO3EzdUs9TDBha2tTey03LXRZYWxmYDphV0s3S2xjTjh+PV8tczAuLjVyYz1bTVxidnk0O202Ryg7LmxmUSxqPT1rbXc1bWB5dilYcnJ4aEU4ZUsqc1dTVS0taEBDanFjOmJXdSl3bTFOLU5kMH1uYlpWKnJAT1xEN1IsXVFBSkNBVC9WNGhlazszflVzfV9VOzU5XGUyQ3p8W0ErYVFkdmE2fFBwZjorL0pbKixyWnkpeStGTVJ+fGZmdS1BQilxckVXYDsxQCpjMU5aOVplXWtKdX5SP2ttSy9URlQ3O14sPXpnKVt5O3RbdF8tc1xBTWc9TkR6LC89MV84P3V7LkM9MmBnWVx9UVRWYyhKbzo9LkVyaC91WjtPe1dMaFo4UW1IRk8/ZXV9UChvY0k3a3t3NUwzWFBVR2pNW0p9dDVnej1eNl9AeW1xcCleZEhtPTBYTW1Se2R5NXo6Nz92O1IzMkVONFRcQ3plezE5aTp5endAV0VVW29XUztxczcocVZvYS8rUnMvLFRHcj1XdHFsVGZLbzpUbyk7RDN5d2pHKWlQMnp6Wzk6WlNJfUwoLDkuRjFSdlVWLCpRTk1CW0hkOXk9TmIsWDB1eG91T05nTnZfeGIwMToweHNydSplSGZaYi9adUdQYitNVWJicVhcWDRMQW1gMipcQD1BZmN5NXJBeVplUEFjZXYzNSkzTjRobX1mTGpSMDVmNTJaY21sfjAqfGpIa1dKa1htVTNSQ2ZNXixoNUg6Tm9adFtGZDtHQVl2YXxuNnhsKE1eVnssZilkOStOQU5oaG5BR3VnODY3WD1jbnx+dG5CTnIwUm4/UkRKci9VfnBQfFRrZy8rXzBEZWpoQFxxMmZtfU5SWjVwLTdwZHY7WTdQZ215LFUuWTdST21dOEtWR21ZNzd4PX5nYzN2MDJNSzVRRmtCUkBUdk1zTi80ckFSUSxYUGN6cjFvL1peQVxRanVlc18tR2txZjlRe09pLjdHZVVqT18vcmUuS2NkMGpkTS9YMXY3eEdROmhRRV5mRlZmYn1KOlNZTFcxKmpTam5rMUdMR1RDOW1mVzFGU3FAMUkteGxNZk8ya0V9R249OjMobUxRfCtPUH5QWUFgKFtWd30xaE5gPXRdZFpndEFLM3VIa3JgcC5BLXtPKzc1cnA1M1ZaOVgrRCtVQi9BbmZ6cUdiZ1IoeywxVC09QTdQZndTLExOeG90W2hReitTbnB6alQwWmd3SEJsNTBWfDhMaipEaWwtKjttbCk3UCtoO3NxZWpLTEdAOntBVDRncWlxZm1KXnRWV3gydERnYltKPUBCKDI0Mjh5QSxhRmlmc0Z9L0liclddcjJ2QEcqVnooUEsrLFdkK2IpaUZSRS5fMUExfntMVmZiQ01BYnJrcDtQclppMTRsflBTdnJyNTVxN1Q4WkRLZVJ+a1R2SzpOfSkydEpfWEg5bE5+bn1jV0A9TEtYMzYtRX1EaG1dNzNtaGs3d3ExZXNQfXZIMk54ZkI7MClOUXJVeXpHcEBTPTYzam1INWUpX3BMS1xCO1lJMEhsdFljZ2pQS2g1byhQSSs7TElTSGlJbWBTOmB6eDYsfHlOUnZMSnU0X1FecGxBKk1vZmwsUn5BWEcqKUlKc1VAQyt4WlRhcExDfHFdXFszdispKXVwZy9rKmJdaV1cVGVAe31aRG8yaWdgQ1EpO3BaaHMrVWV2KnM6WUdRUUlPcERxP2Y2UVpzekxJU3RfRWBoTC9kaz1ORHR+W1pFWFJTVzpMX1p7SntFWVx0UDI6WUVzdkwye0NFUkw7bCpPLitadFdTTE1Ye1x5XUV7YDtCbnUsVUJeVz1YamhhajsxUkhSKFUuVj9QYn1fbi52KWUwRy5FRUBlflZSSi5vKlM5LVpiUl1SQ2dUPTR8OHJPPTR+eFJ7R2opNXpHaG9eOlVbLnUzSnd+NEspVWgsQG89bEUsQ309dmIuS1QpdnR8SjkuVl5OMVgob3xLKXB3RjZOUjpyP1t8N2orcix0Mi5yRlk6fmspU110TitVaFtbNW8/eD0tVHFVdFljTW9PO3VPX1AuUkkvdmEpUzRJKTlIMUtXLDtxOWl+UzhORV5GZnd8OjBudndtKXUvZE1uOGxhL3dLMS5SQGhmN0hcKGRGaX5iL1EwVl5xOXBzQWJVbCg6RmlUbToxeDlzfjd4UEZpbkJwe2xtOTN1dG13W2R7ZXxTK35nQyl7ZTJOQFpBN0ZiLndEcDhpUHFqcGdUZ1tXZFk7c0M1cUFvXXxNM1JEaFcydUk/YS10NCt0ZVxULztrLUApSDNxcUNKOFl0PVBLU3MvOlRQdjV1VFV5Tmo1bS9QR1xpVlN8Lmouc2c/KFhuRFB4Qm0pP2hHLE9sRk1pc1guN0Z6MGw1eUIxSWBZb0EoR01JbDVQezlrVzdgUVY6YztwR3ksQWI9eHFLdFlxcHAyUVF7d3JSKCk6aUNqYmdLKF5gUElMaX5TK0tqW2R0dV4pdDJaQjNhP1NeYEc4cDAzcGk2TDt5PVtmZjZKLGRDaX5CXT1GQixxSDU6RUlzX3NpYTF1eUxTTkFzSW4vcWxHQk5CNmt5YzFzdDIxMWp4SjA3ZGxTVmZzNF1XYVY6PylAUkd+M3h5bzd7eHpMbnVjMEd2KVVYWlhGYD9AKlpySWs5TXh6LHpScm1qM2Z7RWBBdTFOMk5LKE9jd3N8eUdubU90TTFWLmQtaFZ0QGx+a3AzT1t5XlQxPXRPZ3ZpaGV9RE1wbzs3e1dFY3dEX3BGQCpqbjlrS0A3TGRnT0I9OzNIeF8/b1ljTGVsd0JKNUA5dnNlemYuKWc/bzFPZip1eEhcPy8yQFF0PUw2XTVjUGVyS1h5WDB1VV93W1R4ekZcdChmP3ZlOF9XOS86ail6V1t3fTo7b15uOUcwMHU5OEVFeDlNNH5ra2pOfTF4TFZHUCtCV1VDWmlzezo7NDR6SGdRYzlzbzA0VDJKc0hZSFB6Ykdse1BONFJhaEl9cl1ucld+XUtpS3RQdnY6Y3NNWTJybn1gV3VIT1ZeK11OcF9hW355NEJCR0lcRjk3KTprbXktLHpEZy1GTlIzeD04d2k5QT86VkFIZGRyZTB9YmVKakRYVS8/T3ZvW1UqPXBwUGgsX3VFWTVWU354X2g3NiliVWFLdEBxXH5YKGNuKC4pYXwqS1x3MXNVXXlbLWVGNi9NLltPNFk9YkpwRVlwOzFUY0hzQk15QCoqMkA9Q15QY3BRZ3ssUjAuPT90K29aeEJiTGdZcjlUbV5XUzRSWyxZP1JlVHw5YTh5ZitjLkMvTnp0TTA1LUwsWzh1ey5xeWlQYVNYPVEtK3JXNE5GZzVDNlhaLF14VTp4eClMK2tAXVVTdlkvWjFBTXMubmlBMj82WzszWTF3UzpaYXczOVN4O1dwM19BTmJocUpINUpObEpXY3Y3UUhDaztcLEhiYi1lLW5ve01lM0M0SVx6ZDpTW0QqdHtsSWR6Nn5WYjFRc2VtRGI4VXw7Xj9lM2xyUV1Ic25ReTtlXGJTczBFX1pTfSlQeHhTQihoWyovaDpcQDZiUkoqRkB8TVd0Zm9eSWxtKm1ZKF9aZkA4STB5MUpKX1ZScm5tTlVRO1pnXmpVeFVkUTtZWFYtZDpda2JuUztpUTNMRDAyWkJRVklCWjoqSipaPUpkdC42X2QuOj8sY3BsNk1vYTdESGosalZOUXl0em13c0hPQlpOREZqMUJca0xFYWBeeTVfeCl+WTFUR1w2UjROK2IwaitdeGpvfT0qX3ZPZGk1OFxhKTJoVW54dm53dVIuR2lUdEs/Lyx1SEhwfkU2MlF7ZW9fKDNpfShzY1h8US9iQHJIfHtcRlN7akJWOClGNio9XF07W2pFUGxRTWJHenpyWWFeSVsqQ1lpanhyOmoqTD9wb1BTYERTXUtqTys7VT9QYnsrN1pLK1xbNDU0Q3FQTmhxcDVpT2k4P3Z+Q054SUdBMHZ6Z1pYay56XWtsL11fY25zU0FvRjYoTi5COVJkSWNeYmFMbmpeT2ZmKFtjWGtjMjoqRTBTUEtuWElzXF5IQVg/OUxHR2kpSnJwNUIvODtoejZieSlcLnBoZj9vfD1SWlBPeltkVj0zZVRZQjUoOHkzZlZqM3NOYTlwRi0tdVpiZCp1STp1YVgoXXtJbnVoSUlqSXkpYlArXStwRTczO3Q7UXtdXl46eUA/ODFSaUZBdzJ8L3hpbmpXdklYeWs/M1RkXHFBMFxTWjR2QUd2ZG1gOC09NE8sQ246dmpMXDJ8YVBzLTA2KmBeP0gpYk98PVhOflktc3EyezN5d0h6QHdyfUhuUm12S1hbWiozV1FuUGhqKndLXnJsUnpIbDJ6VnI/OVRsW1NTYmlWMEFuPVtyKGdqb2UwK25rZ08zV0lscG1UVkhDcz1QLlZGLmEsdH4zND9qbFtLQmlINUQvajg3OkRxQEBUVGVbemFxOzR+S0BwWk9KTTlmdmJzYFksREl2QitNWToobSpobjhgXD1eQmQzdDU4Y3VPOXoxbVFMS2YqfT1ickRqe11ifS9iOzZqeml7NERuLkQvVDY9Q2gpaEx1aXZPbHR0Rjk0Lk07UDtjYGpLVlQ7SEc2YW9TLXBJXisoVHVcLmAtKFsrVCt+QnZ0MF1JVz0pOn1hNitXRi59Q3BwRT1hPVBaOnJ2e0Q0dT13TmF3UDQ9R0VWTlh8RDZzNHpIaW0wWTs0ZWJuVUwvdGkrZyoyYDE6cjI2PSo7aDt8ZypbSEZ+MTsqXU10e1FRXFsvcFFJQ1RmOVVyWClxVDNwW2BEYjNDd2UpNFRlVnlSaGB0bU1NWz1BSHJScTsyZk9nY30tdnpWP3o3Tn40Zy17bCtaSX4uPzh7di9PYmxXRG19Nm1dcHVUYVNCMT92K30pUF4td0ttd2R9V2E4LS0yT0tUbVhmXlNhNHUxNUBJTzt6a09YRWBfMT1tPThRMkpMVXt3NWc3LF1oXUdNbFZMazN6X2JDOEJ3aXw5XE9hd3E1ZEtxSTRTcERELWMpLmQzbV5qUWFnbC9jTHZMP1hQfUR9STk0XXNqYEBNaDhKKTNxbUtZaSpWP1hnWHQ7U0loLHtjaVpzOzZeTi1nTVFKVkc0fn5uWjB2LFlQMDQuQXlAUlJba19XNXpFfShVaTlJTUVuX0k5VkRKZTQ3MHl2KXVnZVVRcEA6Mkw1d1xPYn5PKTgoeCl6RDZsfWdTQ35WOzJJNHlKbDA2K1BhSFdrSl0/fUZZL0ZNfTZbRW4sVGRIc3hSZGEwaHFgT0UtX31WKGgvOXhPXFZoNlE9dk95OXNHK0c0MjMqNUM1RTVyVChFbEVGUXdJOFpeeHNkcjRHV2B4ZThqMENEelJxeUBhYy1uS2RhRF52b0lYXGVrbU1lbUJ9KzN3bGtmc1U9VU52YmEpQEZYd2ZIMXk7cG9JOk5VfDlQOGpBTE8sQVF3SkN2Ny9BdzFDfksyOH18VnVfVVtDNkNHQS5HLzsxaU45XHpeOCtyMS5ydW5dfmtEdGtNckJQbE97SjRSbV49MipXX30wZWJBK2p6SihwUmgxayp6MDY9ZE06WF1XY09EN2FJYT9hWFgxKD1GaERuSjBqLE9ue2taKkNpUmV1VmM3VWw7MDpSaWczKShSaCssblE5XDUoTltDXyxWXk86NUlBRWQtMThPNWZccWU1bC1uKHNtdXJnWzhDUWJEM3x5ZnNkbi0/RmFSWWheQW01Ui1yfjZjNWlSYG89fFBjZ3B2O1t8OHk3QVt8MDpvVVtNSnt4SCwrP2RzPXFoeS54YUNyc31yWDo7TUx7b0NxUzRRdFh2ZHRbb0E0d2dATWFbPX5NXXBgUF5xUi87dHAydU9rZXlTV11SZHdWT2Y3MChmQk50cm5TLmVpbixjZihLY2I2KlEpalhkKlFtWW5RRmBqMWI3d2haMntYcC49RXcrXWc4YUZ8MzNTXjJTNylOTzRoTT1RR09ucCh3TixuV2BHYk1jK3tIaHpjbmhoLy85YXlneUB2czJELU5uemdBUTdfQ1cuRHxCLDBufE4wKEl3RkFFfG1OMTV+VkM3cjBiSmwpKk9qT1F4NV9PTEBDVm40ckFNW2BCOyhOLGpzbi1xeF5EUThGN0pLUlNYNS1jTkFsRldnanpMamwwb0xhL3E9LXY1UihyPypKRU5wXzBITS5fcllAfClPdVBnKE9Pd0pGbVAoPSs5ajZgREVOKGhdOjZDUjNnekZPOmZoVlNLZDJlSDMrUFwyW05zaFliY3AtS3NjXyxrMygoPWFPXWksc29Od1FDSVVYQH1FeFtkOFw1NjgyfSk2UmZqVy98Mi9XR2dxKjdRc2pmW3NzOUhkOjhKbVwpQis1cGtDZmxcZSxmQjpYSmA7XGdmLjRHP2daclFeXGx6UX5kRGxRWyxQXkVQOVtCdlA3NypcbFIuPVNdXGJ4RjNYLUhJKCxQVzBwbF1nLDBgUDtvNmBsOmFjZl02MzphZy94RXdMVVdiRDFhZzQ/fDRjT1xxOFJJTlArKVhrN3Y7P25Ia1ZSX21TKnRUMy4oXHo0OXpDP1VsL1ctemtaSXpFOSxpWXF7ZG9sWmRkP2ZrWyosRFB9bGY7SjY0XTk7Xzl6bzk1cXp4SVxZQ3VYSHxvRnhUck5YfXVPV010YWpjXlNKKFRQZmwueFUpKFJ+MkBDSnIxWjstYFosLHFoTXg1VD1pTnxRaFNfKkhvcHxaPV06OHlRQUoqK3xcMVUoYVlgNnt9Rk0yX2Q/T1NDOStfMzNBTlg4YS9AYTNXUDpSfWZsZnssfnwoVCsuKVg5Yzp2XjQsazhkKldvKUV3UlI0XUV0KUBbbmtuSjMvZlJAcURwVStVQzt4ditANEhbVi15O1IwQTpnWWZYRGhyUjlbXEVmKnhFXylKWChqSHc2M3ZBU0UufjBCU0Z7Z2k1RHR8PypjYHpOX3dpNWNYRHVgdWo9MENsa01eU2kvdkYoPzdOX2VgTDQ2c0hiWWVpXFZgXXFKOzVIYEI4TUhpTHsuPWhqaX5lWmxzLERycWZsP11IRjhPWV4qLWZlMF1kT1hvb1E1bXdBUWpXMkE1TFtxKkk6XDd3Z01CVElZNnVZaC9Jc1BwZy9NQklYSkhgN2A2NS9qLGM1VHxPTFVYaj9CekJvclhmXC53fFcuYzs3WERxXjgwU2hLO2orfkteKlJ0dHU7YC5uczU3dGsuaWZ6cFt7Z3V1N0lPT2kueXtpO01cQy8wUUddZjMpRUdhb1JETl1ERS0wbTpUfUFzN25dVX5lSyt2R1hmV1IvLjRNRWZzSHEzXXRQW2ZUO3AzbEFeNHYoelN2fm8xbV5oTzp+N0RIL2B4ZmtlLUpEOEY9blgvN11WP0c1OVlfYlFARDR3S3xNbmpEKXVJS2xfOXErT2Q6PXQydmRXc1xmSW1JSWl0YXRHQVdsY1lOQCxpMVAqTz1PP1xAYURmUmhOK0BvZTNkLCwvL08wbWBobnVwYXVeUTtdM1h0c1FzVmE7YTheL2UyTUM7WVpqb0tmXilhZXozeXdMakZhfHJvM1tmSF87KnRpQSlGNF0sT1wrbF9wPWcrVWBFLjBSfnRtUFl0SHR0XVhNfXJIc01RXGBwRldhckxQKUBjVHtgLFVJMSlGaDYxTS10eG5dekU4aXtCYGx0a25xUTk3dUBtVXg/XzkrNE5FLHlOTmkxK1xUWlphTD9AKDp6VkRYc1JTdlNaeTVnWGpUP1g4W0dVOW1tTkVlVl9rLz9UTylob091QHd0TjhlcURnMitgQFZpWm5VcHFoa1cuQ0k/W2ZnaFopQGB7ei9LVlZLRSg/OHMzQTYzT2IvRUMoL3wsLWc/Q0ZNYndKLEU6Mm1jWlNaQ0VNXD09V3phemU5dHVKa0FmSGxnVy5KMj1hdE15K0RaXkMuTlR0SS1wR3ZSPUpWMWMoK1pZVHJmQ300b0dfRmt2NWtDanEuOGd9eD87O2FmeSp1QH1QYnRnKGE7MHs4RERlb3pZMEUpMlVRalJeRFY0aWBXQmdcUUgvWChCR1NHZ3JhcjtpYFQ7Wm1mcyw/MDMyM2x+d2ArbE81az0wXTRwY0JWRlt9cVhPZD1yN0Y0KUBTVXk/dX5lV0QzQlw/b283a3lpQXJ+XF8pTE8yN3d3bXFnODM5VFMoSihKXm5yQGkqZXRySDlcS29ZSEtkTUFUa2FnZldmcClcZm5eaFw2eGVHTHBZLjpbS21rSXBYVHk6KzRQfG89LGArKW4vKH1OZUtKe2NdP1lKR01zZkc2a3JRaVdWTnR0NG11UXFHZ1w/OCxdWzU1QWB9fUgqP2dXKmZYdk1LMDpSO35BdW4zRVhqZy5PMC9tRU44Njp5dEJWUGsrTGxpM2lBWHdnQWRBNDhGcE5IL35fQThcNkl6T1NJR3ByZmdjdl52M2MvWygrVFlkKDo0c2M1akNEejMsLGJTRltobVA5XGlVcTVbdW9WW2ViM2RqeDNyX158O3NDSF5VaUtaS1MxfFxcc0lIczoudjYzaDtnL2hDUWBzXWFoKGFNQ25GRC0tOmd1LytwRDBNQ2RuVHVWP1BdRkJSTlp1SFJnYzh6aSlhXXU2Om96WGgzeytpLkNRa1B6KW5KW31DZVVjcm9XSU5sM1plUy9sZXVTLl9RRmIpQW5CX3E5fmZkLk1VTyhSX20uRHhVaygoK0xLUjdvTmRra3ZQL2B5MXg1aih6UCo4OXxcLkA/ZygsW0NMbnBHQVlsQ3xNblhhQ2ooYUssNkdTdWtXNko1SjAxKDFiT2VBXUpAOGYsalBVPSkwUmQ3XTNkWS05REs9eEVNfnpeNGwvcFB2UD80ZGRHWFx5bV9cNGZHP3t0N1RgOjNRa1U6RzRIRXlbRixITWQ5aDI7OVlHbndEemtPa2lgTEo4ZCo1eixZcDY2SF57a3FOVF5GNkNLRnxzaFVDWHcwdHR5QSt0Qn1dSjM2UkJ8Kld7V2xFLDFVYEBnNmZiYkxkd3lYL2YpRk8weFRvVE49RFZ3SC13cGhcMnJ4cDBLbmBdTmVMQCxaOykySi5ueFVxUkR0fFc/SWV+QUhLMF80Y1hbZ1lrZ1ExXXNIKEw/LHc5LX1YZHp7LGtafn4tdkJIfXl0TWBCc0hZS1ppdXozKGIzX3dLekh2L15TXm18MVhqdEZoTlx6KEgvUXZBOHNUY2xdWjBmYHg2ZGs3WlJYW1p2TnYoMUNJeXh5S1tTKkBIUm4xKChXWmlSfWEuKFp3bDgqL0teRU86ZXc7dFY/cjRnSCwrd3g9ZDg7Kl5QWz9qTztlSVVtNS1lUDdZYzRhZSpzMiljLU5FQH5eKntAXiloaTBXXHctfHBYbHR0TCxCRiw7TjpLfn5XcHdRNXxsRXEwM2E/RXFHZHhSNnxScHdvcTBhS2pXaGJ2Z3Y9LzFIbzZQc1Bgfnk0TztSNERjZ3FOQklEeHt0ZmQ3PTl5W1xCRCxKLTJHW0RTOS5nXEZde3xHXis2dFVjUFhKTXZsYUZAP3Y5cDYxO315ZEozWUR3clApWSxHOl1cZ3xneHlXa2ZoZyw3WTlWTmR6V0JYfVRCOixGbGozcilpdT15Y0lmMFA7TnNcUGZlKj0sKTRgdTEvdE45WT1fTENaakl0OFdOPzFRe14xLzJdYmhTNzM9VEZ+KEhrW2c9d1sve2owMGdPYmNYR1xJe1c3UDRtaklfOloxR3AxWFdRMWhNO2M5aGk5S2Z6eUp8fWYxR3JLbX57X31rdk1OTlotV3FvXUsxYW9sOXRJQ2IyQWxjRWN6bDBHbEJwQXo4NV9ZUXdAOEs9Qy9jamZtWV87ZG9mRVtiKDB6LVwuVWVbL3JdL0VxdGxDTkpPRWRze3JJKW9kbXFudXw9SWB2ZWM4Ziw4XGlSc1dKamU4ZmdCbXYyMjNfN11MOUZXbGBSQlVna011Ni1VSFJ8bDJHVDk1MEd9emVfblZfX09rMVJzWWVHLVNQTTsuS0pgbW9aRFp+Lmt8WVlvZUdFLiwvZChhNmVJK2Z8OkIrWShjX0JCeFxUL1lIMW54c3xvR3trVT9NW1V2cWcxdnApN1E7R29GQytBSmxtPX1bST98cD1QejRxKWJwLn1Mcyo1THZtaV0xK2NdeH1ici1xe0Z8TWFre3U2MX1ZZC51Q0t1RnZ+bEAtTHl+PUYwfns9YWpHPV5bT0tWazRuQ2lVNDEuTlRKXDV9dW1mSjJzQmcwXXlndjVKe0dwNl1Yei1SN2NJbnIzN11PZ0Q0XGEzLUw2KmZeOFljLn1nMiw6N3dXVGY1QS06ZmtGWllvNk45SkwtWUFkMi5FLjhiLztWSlA4UFUsY1gqQUo/OFtQfWpqcGB9LzB9NFk4XGRZTlludUFALW5oMFR1cENZX1F6M2NgSlA0RmlNU25HN0t7fnlsX2NjaUY/KjBcYjgye1gycW44SDopUE1MTGI5S3UqU0l0VG5bOWA6dEN4WT0wNHxHcGk7TjluLUM7XCtTaHdIbipcej1YOS5pXkI5eTZUKTVAb3gpeyo2NDlpT2E3ZE17NnRRZjpyU3d0aU1bZCtSOShDYSp0ZDVncGVZR2doXnxfKVZCNS44PTViQHdmZGZfaGUvLkVhNDt2YW99Ri0qe1I7UT1wL2RYQEY5TUAoTWNXMnt3dUpFXjBGfnR0c3Z4UFxHK1RUcU9UQTthTDNPT3I2TXZPXHYwanQ9Uy1xNHEtVkxVMi1+VGsoV1xoYEpuMnZPVXhvaWlwTnVAdVxkMS96Ki1uSEBoVk90VD1aNmpoTlVMO11WKT8oZUFdVSs9SGI0TTZ8aGx6OkBzcC1zL1NWSn1hcjRBaVV6a0pnQl9nYFNUTTQvV3hUZ0EzcmV1fjpiYm9QUFVjeFEofGE4NVUtcWRzT1pEVkJod1dYUVxtN2Z3O3RLfWtEQHBXMU0uRWxeb2tSQzZvWn4ufWZwQ09KK292PTRxYmMuXXxjOSluKEZqN0ZucGpCR21hWkdGcHN4ckIsQ3Yvej9PTGdYMFFEVnB+TlpEQHtKLWleLjhLW3Q9LWorYE1vQDRzY2pTeykoSUR3fUQsLDVuSkM3KlYrZFRIMG5FXE9JX25JLkc4TnU3WV8xTzZ3N3dhP3tTR2BOLjo2cjpaeW9qZVlaUmdscTNKaWVrVGN7RnRQSy9zbkVKcl81SFpIN115cS9SUClAcWdRMTUqfH55WWw3a3B5KWkyPXpHMTNRTHwqaDdDMH5GT2VXbEJ6M2J3XmgrRkcoWXQ2XWgycjoxXHJ3dTRSK2ZOQn1ndSxHR0ZiP0I2SmtfMUA5aj8rO1xBeDs7YFMyfl5seDJTRzg1KFp5VW9+QkoyQUcoU0pqXmdDQzZ0eUFWUGcsVG1sYU4tL24sYWVfQjB+dEE1fn58K1Y/fUhNbiw5OzJIaE1LPylBcT1sLHNmXHFJcF5xbnIyZmBmPUY4Xi0wQztyVGQ7YTZ4TmgvPUkoSmxeU0BfKC1Semx3c31WaHdtW01jZEddTD9wOXE5Ulpjdl49UEdkKEZpcS07KTs7d1A9NVRAc2Z+MU1iZFFPeGxUXkNnYUkwX19fdzY6YV14O0drZW1yMktSLyhnTmQxemxBdHhkd0p3Uld4RXA/OWxTN15oWnJmQDtRbHhRTUY5aCxgWi83YkB0X1dcQ0JMVF1+ZzhhdWoocDFnZGlJaURVWGhWSVxUU3Fdfk9WNStyVStmWl1WVy1icURHeHQuLDl3ZzdBYGl9SEhQWGQqVDV5akM0XHBVSlwtPVZmP0xMNk9sOlpLaH1dQElNZGJgZGRvZDdbVWoxYCwpY0VDSWJFYnl4cFBuOyxvdypccC94bmt9fHVnQHZQdzAuS2wsVmFPRHBzQUJKUjktUVxLQEV+SDMpTz9sa3N4NDVzSFcyLDk4YT82Pzl3bH5xbFJoXGphdXRsfkUyOTZudXV0MDh7blFDZktkXE5wNjNuKkQsZUw1K0BiVVFVQjpXRkM9RnJHRHpUQEJNMVNiP1g6XGFsWmBDck9wajhRVEU1LGFjbjgwfmxYVFBSU3ldVXgoSXEvQGpHLEZpOX1OakVLbUc4bmpeenVaV1Vie31lQixoeSpsNix6NCxEKGllV3RheGhRb3F3SDE3V3NkamJPOixdOD9yYTY7QnBIMTByWjhsOyxKbmBrYTNQWm1vYHRqLj96QigxLlBYQTlfTmlWT3IrXHBhLXB3OS1VZyliXjtkfE5pb1xuVntXSmdZR3RbOjFRdEcsTHQxS05Qa0REfjBpUGZDKFVlL1VzRjVKLT1TRk4vW2FIL0E5dGRDQllkaVs2STprZGNVXlZUbHcoaSlIbjdifDoyeFw/TixDL3FKak0xQlNONF5lcV14RGlxbElcLjg0MW9XOi05dlMxTXhgcGBqSmVpXy9LLCtaTGo1ajtQYnBpeUNvN31Mek0uX1ZgUnt0dCw3aytSeTtueElDLXpXdG9nX3VCa0IzODooby47dnhEZDMzfn5qXW9FYVxGPVpvV2BYT3JtXkI0R0I2b2BBZHl7MTlcS1ozOm9+dURFNmc9NjhgW1FudmNkTy5oakxjRz1HbFh8WzhsdlJqcTVpXHBWcFRtY3FYejt7aylGMm5MVXwvSlVAQjkxN0EoXjBwUkNHdjljNW9eW0FcP1RZdTlJdlhyQy85c3lyZFM1eDNNbm9mZmJEO31VOilPQC5uT3dCR2xlYWNrdDNkdDZ0dXZwKlItWHx3amQ3VlpIbXNvb3dFZlFiclB7dGp8QHcvXndFV3tbcT05YS9sOmBYL2JNLXZyOHBBTzQsXUheM1tnTDVHblgrOFpbPUk4OF5zRTRLaTd2TTlMS0tcMlE2SUBON1UzXT1oXzpGXmFudCowQWVqTmZnU2xvQlk5cVRJRm5WX0wuXTpoMDRFcVJeQEpMdkBRWi5GVUhjVmhmaldRejlzc1lAQ0FeS2NjX3kvO1g0PTY0bGdzaDNdei44SWtebkxpYlNydXA1LylkZW1cLHhsK3daZEdidVh4Tn1ZQllvdHlRQi1HQVxTTC5TX29me2ozSn5TaC10VDgwcXtpLChwMVtgXS1oK29sYGApbUdpbEU4LGdwRVttV2M2eTBAU2d8OEVrSzRcWmhmUDJvNUZbLmVIYnN+a1k0KVdkWlw1MHFZN1NoY0ptVmdsQGVick1hR1x7dT9oYDlaLSh8VUJjbT84MWFXXFdbenl9K1ZyV3kveitwNzJOanZiLXlacVxjRFJ5QjVyaGZoY0U0OXorW3BYaTZzXyhkXmdTUlI0fkdAbUx5RWhhMyxRc2BESkc3N0lLMSspXClQNCpZeShyeEF9TzM0M004cHo5bGwoYC8tT2NQals/QVQuO0JIfmZPdlJdWVRYK300YDQ0TU5JL0A3O0ZcX1RbSFJ5bj1RSnloRS1hLmYzKUw7b3JwVjhkY2N4QHV2W1FbVS5IQy5QVm1uQV8xXGRhfXA9fDVGQUl7bGlTXDFJM0dmRmRCYnptbVhsYFFnLyllSHQzOkFUUlFVNVs2Z34vX3BmeH5HUEFOQVhbdzdoNDt2a2I3cjhPa1JKZDMyTEdTVF93N05fSz9PMzsraUUyTUBUTTUrSlF2M29RZkQ4M2g9MW1KXmFeZlwsVnstN1lvUnFOfDpJYmw0eWJHflJIazU7QzFzNV0qXXRAQWFUWEtAaTl+QUlhQ00zPTFmYjQsXVIofCtub3haYDJKdnAtc0RVbUd1SU00KkUrQC16N1c9P0AzUFM7czRVSVBvO0xaKVRLLm8tQmxeRlwsSUteLUlka0ctajpgTSsrQ1BVLFM6dmJyNkJGdDhWcntiY0hGdkxWWGpdbmNiZypHODRJNW8tOzdIQHJla1djUD1fdHZWQGsrXWkzb2VXenBFXDsyOm1he0t+L1o2KF0vczguNmAoSnw4eSx+YSp7Y2BeNG1JUDVAQGopc0BHLXdwRTM2QVdfYnpMKUZ+P0I0LjUrWGBYbmtTQlU2VGxuVm1hXTZGZmZOcTtaT29PaUY5WkQ/OllmYTV4V2I1XUtFdmhlW15lc2xmc143eU5wcGQqTFIvUFpuYD9BeGovRUgoOXsvRkk3OjpFWHJHWjJyOXJ9OVBzYmJxS1Zmdm95Q1FafnFrXHJxWjtzNWxDSDovT2hzVkpfdCkxTmdFM3drL3hBcFpWeDVsLzJ8Y3k2TEl0RShpeVN5VVVzVzJHPWRLXGF1UTZ8LGZwSm9TelZ6L3V1Q2VbSGdWc09uMjtRNyl0TSpeYT84MWk1LzlOM096VGgrKFFnKk58X2UxMz1AKlY/bDVSS1pCQ3hGUG1ebis5dEk4fl5Oai5Ze2JDc08tSkMxdlEyX29UZUdxRkY2WW19QEV9YDc1NU5WY2xQOm0qYWV4TV44WW1IcGFpfUpDRD1ZO1kuTk4vcCorL207W25ifXgrXUFEZ2JMbUs9alRFaU5rWjIrWSl3eUIrajhJNipLTWs0YCtKSFYqZUorNTk1bS9BfjA/QVpcdkdqZXsvUjhSa0BoKVdQKUYwZzBKN2krY2Izam13LWA1Ynx+YUVgZ1hdQmRQSU5DcmJ4am5bantmXjczOW1lXUE6eylRWjRyNjp6X2Blalh1WVgyfEk4KzJud3EqdFEuLWItQ3RXbTYuZ2BwKXV1anxVZ1xFO0ZtNV5wMHBwbHNNaFExL15LYT1Wd0AuLX5fSHZPWXBKLmVFOm9INClEVWtGV1gsdE5vPUxSKFh6UnRSQGAuX1RES2tnQkcsflBRQ3wtKWdqUzBddF1rfWpnRChcd0VaVFJETy9MR1ZXeEp+YndsOk1RaTVaT3w6XTt0aFhNTC0rezdHPyxRLl9gRjY0SW41a3FkVUJhM0JDczd+ek0xdWpfamMvMkw9fURPcF58LTg1ai47VXJEUVwyLl56LnM3RVJhbGZ9dlNdNlx2YC9DY2hYNjVDKEcuY0hKSWRWay15bH1VaW5MTlJgZ1lLeXs5RjdOTHljcFsyMk5xOzdhNjJlMUhQO1tPbzFlYV47TD0oeCpoM0hTR3ZcUFpBSUJycVtsY35YNXgvdUguW0VEbVRdW29gU1UwYm9TcVZ5al0xTXYuMlA/WjRkOGxrT2BxQXJ1RlxQKEdeNnopX3ZjNW9gYGo7M31BTkNdSS5Wb0s2UzI7VH5JdT97LUZrOH1wSz9Hamt7LlthfkpeXUNoZ0ppVVxxbFlDNFlhUT9kMWdZXkVFNSxQZ09vKk5HXH00XXZjbztNNktFMDh3dVZtUVlPO2NdLEddekJ8eGA3Lz1rSS85V2ZzdlAuX3JsVjNUZlVvZV5ndnJIYXVhYUopfjZjc29FXi1PWilJW11IeElbNTdNeElDKGY/UmhXdi9iSHQqVG1hcEtZaGM1WDI3fTRxWTVlP3duVHwtQWlbZ3VQdC1uZ2RPMVptTVR9SmRJMmxXLWwrdzlXY1coUzRSfEpXXDNvWllSOTlfVG9bbn5kWj95S1NoXEgzSmF+Z11XKjRvfDJKXjtRLzZ2NTdccXAuV01nQVwwXF9xckIqZVM7YU5XfFtdUnowSGpxb25MUnRJN2UxbzpXY2RPd2JfV2UsQEtkVmRrdndLMDp1cmAzOi9XT3k6NGZiNlJXSmQqVSp2bzJzRC9lQCwpbl8udG9QT2wxV2Bfc3paXWNAaS5xZF8xKWksQntMfT9RLWw7VFVuWC5hOVhScnlEfDcwaS1YSl5UYT1ySXJ1STZeLV5QV29tRDMqSWpZP3p0TVQ2cEhiYklFKGBqcn1SVFtqbmlfdmVobDI7R2ljXjdWMXI4N095fldxOGRQfUNnQ046bkUsW0xmSjVBXEQtTHY7XXNvbytBKkNoXVEwMDRxTys9c0VbSXtQKFxRe1dyNX12ZGFMNXNwW3ZJQWFPT0t6e21hZ3JpTFV7MF9qMnVBazpoW2U1OlFRRzdpd04sRDArZj1AV0JcWUY5dEhRaTdMfHZSRHIqaSs9SGxqUFtCUGt7ZVFHVWpeaEV7dlxpOU1AWmhCZE4pMEtqTVhKQ2ZeVnYzQD95LyhiNF5pb1g2ZGlQQVIzRGJ6Vj1dQCtPZmo7e2tdY1wxLkAuS0ZcZntodzpuLEx5USssWFJsVFRSM2ZdZUpxbHV0P01iKHZgUildOjBOckJUN249LzB2QGc3RWt9elVBZnFPNnlOT3JRd3A7T1hVbUNAeDtkZVhlWSx6dXE9VT9uLHdrMUFzW30pX201Q11GWl5rQnpcd3JOY0Q5TkJRcTo0Lyx1RlVGS1lKKzB1bVQvclZjKU9XNmZULFQ5VW5KOl0zMX4vfmlpaC1UPTNBeHVle1BbdjNAOWdaSTtlMUR9ZV9bcVxmSmtQYj13KG9kd1AqXVxlbShcbTBUKmtSLGhxZGswZkNcO3pFb0lqcC4wTCw3WFNTbTgrVnJbLTA0eztLOng3KC5WKzUuci1oXTNuV1dDfVJxZkR7eTVWSnFIUVZTMTo4NTBTWmxzSWxsLmh8ck1XUjExVl0/O2MtNmBgQm4xbU5DSGJtSiszejNFdF5vdnVGQkFAb1s6ZythPXtwbkJgRkU9Z2hpV3gyLENjamE0XlQtVVpheHdpOEVDV3NdZG4pSDJKZ3tBXD9NZGh+Tnd5NH10bmcpMFg2ZDMxMTdPfXJAVDZiTHRaUlhNcyg9NEx6fVNVezFpWi9dKUJ3Pyo1fHhJVF5sa2ZVQjdvWj8saDhkSldaXC1uQnxYfWdCXTVFXChUPzVvKWxwemNFaU9PY3JxXGwpXmNRP1ApezYwOkZqKT9fVWFVU2tCMVRSKmplTi91MChKRFt6LV1aZmBURz9vZk1cNTkyKXI/fWt1Ukd8elU5YUs5dGdjUkBzRDYob1cwLlkzQWFUdChfYzBQYXMyNDFDSyp4T0lYcWUwOEJFe3dBU3pIKGVTLXxpWHBZQk9KMmM1KndlMlhtNFJwa2VeRC9TUW18ZWVaXyk1K1BqWkhmOE5pKitJTUplKCpSLnJyLV1zZ107NXBxZj9zL0YqKDBjQWNpKm04VS8vaj1VbVw2dkxwWldJLlIydXtQZzdiXzU5ZGxkMTVTcSh+dW98QVBJKnxbXTkoWlQqOmNkQUNBVlFAS2FGclUzfW1XXU09dW1eLWcwRDFmRHRHR2M4Xz1qcEBjfmM3S3I7Q0staHI6OUBWa11Zc2dMPV0wcGxdbWJfdENPMmdENGpGeFVZSEJSTF44c1NSYjBzVnduLThMOnMuRS9sVlQ0XTEsOG8oUmdDN3t6YXZYb2xda2tGZHZuY1hIcGVvZWkwXU51SjUoV3UwVURVPW50T3ZvLj03O0RRWEE6TFFyY0xrQHRNPzhgQzpjens7Oj85KDcpLkhxSUZ+M0kyOTNzVU1IZ1o4MVVIaWBGbyw7MlIuSWBvZDhNa0FUS3A1LHFsZWNuPUJmN2xON3ZFRXNcTTJ9Y09ZWnhjXDg3aF10My9YTmM5WndqP145X24tNVNpTH1VRTBCXz1JdykpbS5aQiwpYWw1WFo1cFIvV10yNW53YW8xfCtydClLP0tpRFpwNylbRWBRW2UvNDZ8bU1GNnpkcTZvQ3A1VSpVLVJ2KDR2bn07c2B9eSphQVRsQmRpPTZSZlBMXWRrMTlCLDdWN3RAVTtzbClVY3pCUn46LVVBbFcte3YyeERcemhNTFJqd30ybTYqfitEOTRIQXlrVGtSeDtPfHdnYSt3QlR1Qis5KlB1Q1dsUTQpTzpfRThtcC1ncTsoMG5oWFBjKio5aTRWQkJCaV5odTdQcHk5YnpTMU5Ma2xjS2R7MHMxMWE0KEh4LGl9czhFLFYsO0pAP2lmZzRZUnBYZDd7cz9NMmNUZTJpTTNPckh9O3FcZnJcNz1WNXEqMFVTVUFeYHx4NTF7PWZwfmYrNWE7cVE6XTlVLzVqU0pYQ0Y/PT1QOGpERHkpcjtVXHhpXDIubUhwVGBvTXtpZmp3YHBZbHY0YkV3cClTVExhO0dReXh3PU1Nbk9eaG12cmh9bWVqcEB2M2ZWeEgvan1LNlM1VDFoWHlMdzduXC9calxcVkg3Q2Q7SmsuTjZ+anxma2o5KXNxW3tIYWpsTkMvT25pTGVqTkxFY2FyUjNhaXYyXTApfUZ7Lml0P1MqdEEteTM5eVx+cTg/aytHOGsqLUV6SmI1MmUvZngyTTFRUEpMKHkxRWVye3poU0w2NGpve1R7ZFV7bTtkLSpnaEcoRl9NRi9+bDlBKXQ1flpSVmM/Vm41LUhieGd0X3dxbDpbK1d3aykwSVJWXSpdeTRHQ3leUXBNWDhWRWUzRHhNKjZOQGtkQndyVEJVTStIKzBENGN5QENZYmxAa2tJeDluZE1uVEo2fkJ6VVM4VmtRUUJwRFcqaWxJNG5rUEYuWUxRaWxqUHZbP2NUVFotQC9OZkZdbUxXUEt1L3w4XDcxOV9ZRm89dV9yTUhWPXxfQHJRKllUaU5bN25ecG1tZHVBS35CO0ZhcXJJZFYyWltdeHFIbFVCQWUvUjVZW143LERYLEk4bT1YRWh0VX41U281anlLR1NHUmdhXnowaXhfSjgqdkZIUlhheEVyMG5vMThjYVIrOmxCei1xcTdkfEo3TjtaQnIpOTViMi1kZGNcWm9IRU9PRHU5VTNbV1VobzIvPzJHXitEd1pPS3FbWChkUUV0R3w5LjJzaENwQTE4Sih2X20wcUR2fDBjUW9NdlR9V0BxdHtyNihNRGA6LFhdWTEoSW1JKj9FcjdwcHgwNGhwW09ZTChYckhyaWQqLUVXNHM9SS8zWGBoZyt7XlFOd35Tb2x6enx0XlN3VjZ1TmhHMmNxbDdqNntlMGtKNFhENikoKWU5SnlDVy9jQ2YqKHdjVzN1bEBpS1xVQD1aRVI6dVtlPURzLEh4OC5DeG43YEJpQHE9ZllhZSlTUHlWOG4zLjFvTVJvSCswdz8peG1ndG10TXNnSToyeDZeSHFBV2hWLFtlcmlYa0dBOTFuUGdFPzlDYWBWMHhOVXZuX1JKXXZPRk9YNjlPR1Y6R0NmMVVPfm5aZmVQQy1dSjBDO2pfaUdkKyxHZjlyQXNmcmw4eGZEY0dxK2hWV29bdFY/RHg0dHdaV3JDU0JIdzJiRmt3bkY5WDFzRFcscEBUSTosLUJ1c2k5WUJgcWdFTCkzd2w5VTgzUnQ2QD1keSg4ZTFGSGAwejYoTyl2Qk1bTkM/Kjt6aUEsW3gufT1MfHJjUWAuOSl8SFo3KkxfZi5yfGVXWSxHWTphNTc0U1ksNjo1Q2ZbKlZtZCtPRDdNZztZUmd2Rl1SYjpnYF5cLllRSl5kNnNUKDhwKEhFTUZeRUZkW2FrRjFdWGRXMXNDSzpESThsZXZMP2JuXWMvWHg6KVNmfCxnS1AoWHBLbEl3O10/OGNzUnFyOGgzSFlgXzRNR0Y5X0RrYGteZHlfQ2YxXDB2OkhmfXdje31uLjRLTS4zak9iejt5T1Y3QC91Q2IteHJLbDkvc0RNLG1SezdnT2JzMyxha3hEXU5dPUhnT2tgWmovdnNJdlBIcVA6LkVBYChRZ1VKTGtQWklLbndVL3owVy42ejExYEZPcFFYLnE/XWJIL1I2RE4uUGVedDp+WHUodFd2c0t0XzZTZDs9MkAre1NfeX5qbl86S0QwYmUrT2tXZmo5e19FfFxvWGRyP0BDaUhMbjMwX2tTZGk3cGVTK0M6RkRiN0NsLXEyd3tqMSt0ZlhffXY0SDVJLkpcaHhhQW9rMGVMdT1XMXBxXTp1ZVhaXUAtNzA5MExnKSlTcjB+Ry9nQjszQXcoOEVIZUtVLzFlNG97QlpTSzIsUjtxK3oqNXJiSSpaKXk6WzczZV9KUUhhM1YyYV1AfEh0OHJ4TUNwWUdFK3h7NUV9W1JoVVxySj1sUlleSE91fG4td0EuXUdUZlNPNG5EaGA/cU0rK3QqKFRqbDh0SzVCbTJUT3k2P2ZfLlg0MlRrQSpLVz1UdFRUdEdgZ0lnaS9dNS03RUZBQG5raDZjQ3M9UHlHNEx2cG5id3UpRTZhbHl2bU5HbGJaSzNVPV94WmZmdFdBKlI6QVp8emhnVTpXTXRBWnoqKmZHKloqSnZFUTREc01xUEhEWHpZOWh3LWd5bmAzYi9BYTltMj8rUFU1cEo/MWtpeml8fUM/VCtdbTNDfWB2Z2pQLjA5a3lePUE9XTErSVIoOjoqVDF0eFg2fWFsV0QoPXlPc250QjJJWXJqYDVSM3VaZ0dEK100REcoeE05b3p1UHNLbXVfNUpCOWZjdygxPzFLdFBSX3JIZ3tSeDRLfTdaKDcvVVY4UlxrSjA4e0Q3XjlBXFZZW1VKbmBNKm06KHVHWlh0W0dZST1jUCwtbCl1YVtSdVspMVA/OThrbGJ8dGV4KXNsYmlTSk1IYDhhMX4zRkxPZU5FXXxmV0RSeXMobHlRY0s/bW41OG5hYixPWEFQZjhUQT9YaEt4M2pQXU5Nc1dPbjlyRTV0WD9EWjZ8aVY3UWpQUzB6LW0pSmVHS2tiYFtzY0t+eX5TaXVvW1lTN0kpSVJ1bHlwXGRlMmFgMkVBcmJtdm1TTT9+Q19HS2dgfEVbZGNzVlk9NTcpMDRDV2xzWn5UWWw9fVV5OFRPdTVSZitINj9zMTJQejRveWlnXWBBZ2VyUSpibkV1c1Z7NihQMFhleGNlRj0/O2hkKGV6NkhGcWBwMGBAO3RJfjZye3Z3NGVOemRBQFoweE9nSUteVUtjajpLVXlbWGtaaWUyKypUWXhkWkFmVn5+ZmcyT0ZAWF4obXF8XDhdQnRvMUhMK3Reemx2X0JyQk84fUZYV35gfD1MaTZjbWplaG1lbGtIXz18TT9QMT9bQX5Fb08zLmMsSkt3dkxyLzR0QzZKXko5VHguPS4uWn0sLUhjU084YFFeMGh0fmFcfSx9cmNQSjt7TjZjSmREczVlXldNSk9gK3B4TTFEcT81OV5CXGdyZ2dHeFJuWnxZV2d3V2ZVUHwxNywrZFoobHg0T3JdY0VMfTNwPzpqVXpFMnY9XDR8bWx2c2YpYlAqbClIR1xeXFlVQzFhc2IqTHRldDo6WDMqcX1RXlxDLUgvUWZjOTlic2NPPWJLbFNUdXhlcG1RM0tOOmRnQ3NsXDJLU2VeUXVoXUtQWWN8T25LSyw2bDJIWUJWRlxzS2hOKHl0bTV+NT1FNTE6WG0/KEtSSWxiYWd5NkFAQlZFKEp1MkYqMl94Q3VwRjZ8MXFvQ0AvfndYc3FmbDQsYGcqc2NVXl55NjoyM1xEfWJKcVsuYyp9UWVnTTZlZ1xRPWNBcEsuPVFLYUxGQzFbNkpeQ0B7bik3MEk7KG49QzhnMUB1SmArdSwtMXVuOEdTe2R9SytBWVlrN3taVGxcNmNmbD0oN0BOW2FlXGhwX04/a0JqS1VsbHY/WG5xWTlEP0RVSkV6QTUqa3x5RUdhUGAtc3Ftcyh2SzZ5OEUzbXJYU3B5Knp5V1M0WXFIa1kqLGExazFtYjJlXDJeXjdCXmdvKnBUZ2phTUJXRjZEZWhucm1ra0x1dWZsbUBTS0B8K1xmdmJWQnVubH4ucylgVipKbkEqWDMreGdePUFEKWVrMnVDLnN+dUUqZkFEd0VhU3V0NENMdGRbVGI3dS5MWmQ4fm1SLEk5QnArOX09YjBALE9HaUcoeHNWe2ZNY04uKjZuQlZ0bl1mbSpyLjA5UzNfaU9yRi87aHJ1QlJRc0FLN3hMWTR1N2JoW0dId3AuNWQ/a1pCKytSYVE9TV1WR1o1UW9hLFlWLzNGV1hwSVczMHhMdC1yO2pyYipwMHlPKl1WfXg7Xj07NVRMXHZ0V3JEVkdmLTE3WWo2bWYqZldvaWI7alJpVixzS3pmWTphZUlFfTV9cUs6KDppaztyK1EtQWVfZ2c6fW1geWJhbV9ARzpUWlY5MGtKTkkyU04rQWxvNSxsfm9+cjt7YXxiRDJiSVJwMV9oKDJ7P3MxK0BBYkM/XD07KyxZfnZzTVVJeSktXHFhYlI3LUF2YDVtXG1aV09sSmEteylcby46Q3swUmFzd006bVktbm49Q1FMRGBCZXZafjVHN2h0PWFTWkJgUkgrO15KfDt4L09DR1xSTndgX3VnREhWeTlILGR4KkJCWm8xXGlFc2pcZURUKDUtfWAxQ2gyVFVsd2RgZERvWDp7Y21ke0E4cEFwQHZvdH5MenYrSnNsbj0zbWZGND02YktKRkxubGtpQ0x7clpBPU1dYWdtTT1jZGk0V3FDN05TP0pRbHoqKHpTKkNuS3RlK1B+O2JHVDtwQ19RZFEpX2IoaDUyZ0R3T1pcOC1OY1ZDYGo/S2NzNkV4LFJtQiwyZ345bH5CczR0KH5saGpmRWlOZzAybGNaUXhQYzc1NXJWdjtRRX1GbGUzSS5qV1cuQ34obGYtQVZPZltQQkJzcmUuailkYGVaamhoOEduZE9TNkAoQW1fLTs6cmYwX05iVXE0LjJ1VGNbaGk7TnsuM1gxWFllXGY7SUFFKCg2R0pCSmwrSV5cLjJrSDooODo2WH1LRV5wV0A0UWdrWXNVOXdpRjtnZ3I3Z29ldWdPVl90PVVXZURpa1M6XFQ9SHN3PXZwb3UsSVg7UXpPSFJvNEFdSlZEOWl0XUFzL3hhaXpHWFstSXdKNn5cRDpDb0FlRmIuRGU/bFdAfDdPdmVkfjJjX18sYUJTcXV4cHhsbyxfVFExZVkyN31DYUR1c0w7RG8vLmhvWHxdeGVsRHcsQXheekRsaFJqXHg1aFJQZzY2WFN0Ojt9TSw6P3VOZnRAXHw/Ky5LWUNoNXVfYF5EfEBoMzg7NjdlTUh8ZkIsNS1VW0VUam80MW1XezZeTi8sO3NTRDg7ZmB6TmN4aWFCWUBFdXFOMXs6VHtDKzJhUWFFbXtwVi9NKjF9dVc9TFduWFAzZUVJYDhIWylTMWlidlE0ZzBJQlduaTVxWDZjaVdKdFxTQWRmTnZlbFJmc2t7aURtLmF4d1d6UXE9QyplT21Xb1xcaFctQzA3OzN9fkddcF12SEUudDp1NERwSkJbUUFUfmEvWkQ6dmBQPWhEUz83OGhZMytcXDM9clZYc2U2XzJfZzB8KkFoT0VzZHdvdDY3K1Zjd2V1anVuUVQ1cj1KQkdBbFBDcHZxRm50fihMcHdWQF9IXkdnSy85VHUoNC95Xz1QXjNMP1BdYlhuNGNSa2k6Ojc7RV58W1tNSFtsM0ozQTt3OE40YEFDLU8/UCh7djpmYH4/UTNlKTNFeWVhbFZvO1tRd3NkYEM2SnNHKE8/TC9KYnwoQVpNTGFkKD9sRTRrQiw9LGZDMjlQNFRqLzE6Um51MEB2LjFOQ3teLERNb25oZGxidkVAd2xXSnF8PTt1UERIczB2eG1TXWhOR090V1JUfEhOZWlQc2hpW1V5TDV4YFZIK2E9Z2BZdWBPVURjfj9CVkNMbi8yXClTeUZ4c2ZiMjtzQWwsd0JIREc/cTdhNFBYKFFiQTpLOjdlNGNRKjM4Pyp3OlFFaVdKcVg/SDhyUmBPN0QpcEdUZHIte2RXMjl1c3xvaSsvKXVyKEhHOG9+bDJqdl9YLjtIQlhiWWJ4bGg5e2IvU2JeREI6djpCZn5WQitUci5CWkh1dEAzUXFPWTQ0b25vQHtpMjNGZ1NZMWx8SVhwWF8pKVJpfVdcNDc3W3pBano3UG06eHxqQm1wQzJvLn0uKj00bDZFND9jKixPUipeUUNCeVFMX1UxVlFcei5EdjpzRn1EZ1dsRC1cb0RkcGBLUGxUKkZyQHksfmtPNUFYc21VajBgU2FxeTg3L0lveXlUUkUzNztnfDkwV0BoNXdlVGl+NWJGcmZqXkooLmU9amp+ZGJgVk5HW0RFYjBuUXFKWGk2MzN3O20rKVdMQDZwZHU6LDJbcS9VelA1fl5TPzpOQT9OYXIwYGBOYW9QXlhxcXZHY0dXdDhmc04wV2xvajRIOTBdYDpkNTI5cTV6LH50RUgxeGctbEtsVDcrQCpZKChSeklASkNOUlw7T0xKXE5rdUU2ZkFkbGRte2g0L0I4KTlMUUhKaFVIMG0paGdKVDZMXXlWS1tXTzo7OmhZQ3JReTJTRy1BcDEqQVNHRHBJellpQXhhTGZKc09uZmNZN1IyMHRiVWsuekdlV1xDQyl8RVN9XV0obGg2ai1uSVpmO2VgV2M5PXRAY1B6SVNfe11cTWtWSnVhOn1zXX1fK0N1KGJObDBjWXhwVWQyNVRjfl14LEdmNHooK3JmXS04WGg3ZkxaUjBZSUR6RWFmS1xJVXxGTHE2ciw7ZlpZQzg4cz1CfWRdMUhbZmVQUywqSVtFe296WUZPaDNdej96W2pEU04tUClaM0tjamYrKitrUWBSeU0vWWp2d3V9KjdgaEZlekc9MFw/UDJRPTQuSEtidzNdPzhRSVw6OjE7dGwtN2JVXHlFeX09OH4zaXJGMVRrMGVSazNqRFdkdmxkN0BbaT15Vj14cE81bXJtd2A4LkNQLy9yOih7Z1hWOFxAaytUfFlSTXpWPVwwUC9FW1g2WThlWDZyKnljejFROXByPUpfYVplSykyP349WE5UKl5XOXtKQEpDUEQ6RUJpKj1aXEYwMnF5Xm9waXpGQkBNXFRWXkssO0wrbnYwYnFLa0txVlxWMWpXQ0E7Sy96SUFbVlZkTyw3NDJLK3J0ajR7LUUvQU0oXUBxS3Iqa0p9K3I6QVZMWDZQW3VmZG46XDpdR09rWT0pRi9qWTU6alQ2QWpIVi0wWztCUSsrLn5CcTB0UTV3dXMrWUJId3JsMntkOGhUfXh1MW8uaGpUbFpYQ3dzKUV3aXtFZzEyYmdqcVhAZWYodnpDWnZJZFlRSl8veno0Z0FlamJ0V2FmYjRVZTstbjZEQnJNSy4oK1BUT19Ob0EvZDIwP3p4Uns5Vy9pbXo5aWZlM2tFXFIxa0M/LDBRKkpgM1VCVlRYcHpqd2lTQnI1VjhKeXM2QXNnTEhbTE1BLCpPbjZyS0JRY3JxSW9dW2pnLCpOK1BddXx+XXlEOEhzKUJoS2I4SkBFUEdDNHBqR05Kd0hyeFl6TjFkM19WSEZCYV5iN2l8Y3ZNfjlLVitGdH58NXRCNDVgPVtNYmovKkVAUFpbfVBHcD19Q1leP0FKT2l6UiplfEJMeWcvNnpSWUQuQlV1RC1JblJAT1ROLDh1dy1aT0U2SmxTUF5iZ3xaaXE1STZHbWRHTFh6RDJmZW1WPVZ1UylTTGFYOXRrL0Zmez1ENUBYaTp4eEYwai5Bd1I/NF9BdlB6eExwSjBObmBvSVhEb3NpSWJ1NHoqR30oOkt4fCoqRjF9cWB0WzRNXkFyQjh2dVsyTS0saTN6Lj84MWlzOkYuXXx5L0RaVW4ye0llKUswL3pxRFBpUTNJNGt4XDpIOCtZQmJ7QXgxbVZYYS5vXWZ7fGMuYUIxK3x6PVZ7Xk05WihQOzA5KHJGU2IzUTRFMUd3LUA0TihkNTRrXVllMDF1TGNLdEFWTGt6RFpAblh2LDhBWjBfaGJnZlI5ZXk3LEFYUlRKYFtGYTVSUlBIQG4wfmRFKzlaLmhfbXxcVGdGXGR6eldhWyhFKFBOQnBKTXp5YEdiV05YKUQ5ZHk/Si5pMHZobHRiW0YzflNePTtXSjk5OjdfblZmZE83emlCMzAtT0xmUW9jXS1RQSpsP2VbS3FvNCluXldYO3Y/X2x5XF1OYnhUe2Q7TGA5c35YfCtdenRIZ01+dXZEQH42YkdjL19UdXBBRS58QTVucWJQe09lUTRRY0Byb3A3MD1faWNIYFhLPU11dl54TmA0YS5gMVVpaEBqLFxtL3ZxNlZ6VC9WVmhjemd5SFlcOHEpRzUoKFo9YXBhaj82cntqLixoNVcwcStIMXlUfktrKjFzZ0dAVHNHdi9WTTsuTDJyRTNBPX49QjQ3fl1HWnd0S0FwNW51O0txTVBELFFtKTJcdHZkQEBcRjFGXzFKW0x9PTNZZy1tKnd8eCxRLy5mS3hyXUdxfFYvVUUxS3hKMDB+ZllyTk5gNy4wVEpLM0RfODVWdz9iTlxiQVs1fFhLcF9pSENfTipfLmxnblJuVEhqTzQtb2xwYV5bMWtoYSpfUGAqakowN0dKVXpjKmRxanBxZzhtXEFYQW4qe0RfR2ZsLypYNGdJSmk5MFN2Km9pSF9bRXhCLUtTb2lpYnZCLURsO1tgLXwzZVkoVjhLNF4tfU9ZTT9+ZXRnZ1grMWpmPUJlVEB6OitfQlY6YEZJbmRKPV95XV83R3wuVio9en5mYy18bX1VKWZBOkltTy99ZFQ3ZlBBSFBKKTdfXFZDcCtFZEtBVmhKaXtnW0lKOzgtY0w/K0JELHZzY098Z21CVUg/eWpycDdfLV9BbEFnT05qU3M/R2BAMi9peH1NRkpkLDtuZ25EWC1nSnRKeFBOPUt1dDQzen47ay5TMFZafit7O0hCLWNSY1w0aEBuW2x3Zj0oYWVrUUx6PTNRSCt7RW81V2ZbSXtcfGV4NXBXWVQqLmJdbGZwVChIfkNnfTBFdnB2Ri9IcmlmbGJFR3ZwNGkwLUVZLEhvYF8qeXIzZVd6WHdKPUtqO2ZdYj1paitrRjpaO2ZKWUh5VmZSZ1VmR298bU87aCkyQzd+LGhzYlU7SVNiREoqRTBKLFJ3TkFEbk9jdzFSe11zLCp1O1FxYDlWLmxAaFgoOCpXWW9JZUVyYDAre0YwUFA3OF8sS0Nka2xed3ZJX34tSVQ/R143LGwsYkl1PU5sRzlBajldLClEWHV7YlxHRjB5WUIqY3NXeThrekRHMFp5eWVjVnlzfjpcSCs/YH1oQWw1Ki1DVENma0tyO31qMHpLaXhfK219RDQ/THJCRmhsYzs6WFNFWElwVzJVeDk/dTlPMmFdQWxSSkEuM3s3XGReQGN5YGM4eFo7STIpeC9BUFthQjNDdk1TakVIaVdsfjNsQVg6Xjhmb1leMlRkLDNGekNOaGs9a3E4R3dYRjJOZ2RTbnhiXFw2MStsclZ2dm1vLlJ0Q0UpL3RiODBSMFNiRFNaS1lANUEqOmBXQHh9Y1VKfXlybk51T3hvQHBGN01Ac3kxO3lLYHZATE58a15FK0lvTzhKZEJvMU5gQFM5TztwLHgxTGZIb2dzVVApWGEvfUo2fjBKX317S1Z6XGVWQ1sxXC46NVldd0ltXF14e2NFOS1ZXVF0RlxZa1htYzsqUWNQTE00Z3w6UmVQOk1vUnA/LVVHM3RsLGwqR1lFX2YrXHo3cG9AOGsuOTJreSlRZkdMP3NkdVw/ZkFAVG9WNHZfaUcxc1NLLjJrSDh6YXBmPX5RaFh5S3FubyszYnxEdzZ3QXw6OkUsNkhRUTp1YjdbdktlUnd9Mno/WFJGWFR4a0tLb31OWjg4P1lPQmh6eilYTkY0UHYtPzJkUXFAZVBrV3RpRXIvb1wvNFJ5WFBNLGNRXkRXbS9kdlFzWDgqNn5SQFRqNVw1ZV46LE5HSVBJVWFGMVowZlsxcylsQjByfHs9MygwTWF4PVZwQFd8Kj1vMUZddXNBb0RVfnxCOilzSmhQP1V1XFZkb2JxQmArPT1Yc1k6R2RmVERULEYoXipoaS1HbDMue2UwM0U9cDRgbkVlP05gdy17eG9Za3hKMFxjNGF5MHtyMDpHOXZ6Qn06SlRmN1ppWVU/S2orQlMrW01OXCw7Y05ieE5TRlQ5QUxrdkkrWEZUSVBDM1BVQlQxO21iaGBmLGJYL1hoX2VpNnpdX2c1bTJzRE4/QTg9MmV7KU8qXmo4TlJMO2FXLnNOZWwrPVw9OzpWS0FsNn5iNi8tQGQ1eClOTnAvQHlGfHNoR2RsXj9QYURdMTEyXmFjKSpXLnB7PTZJMk9VcCpONi5wSDgvVWFEY0pncTVbdmo/d25uRyhdbi9JQWU9RVFjVixrNFw3LFFjVGBOdmwxUStpNz1DdjJbQXYvTTVYUmRTWy9UXltHY1RcZ0gxdWBPM3JaZUtgbnA9Ny0xYWFaVEFhYUJSYUJ9czt1NkZeeTtfVHt7c2hiRDRedjVIcjh8TmAzbkJwVnFWNWZsYSw3WksyZUtBUk5le1swODJmM2lzLipjL3FkM0MqXixyOV5SakxhcEA7NzpvP0E5V0paMDBCXVllZDddfUFQcj9BXEt6cVB9ZiotQHFObCsoKm5ydUx2LzJUTktXUWtYU11Vbyo2Q1ZpO1lWd31FejtQfW1OUGU4WWJKT1g9O1R7Qy5zMzBoO3NTNV1xQXJxM0BzKG9kdG04NiwpPSplZD91NF5DNkRmOik6LDN6W28wb0NpdkpjS0ZsLkNPL1h9cz9lPVd5YFFDezJdRTJRbDJWXS54Xl5NR2pDRlx9TFtMLl9ZMCk6RnlJV1JBMj9aNjtYQkE2V1xFfGZsLipXVnxXU2xGVnl8QHpCLi9zZzs4QFgoaVxpSmVcblF7bGIqOC5HUD9OT01Na0dwRC44aE98ZGs3RzRHaTtaKFxQYnp1cmA/MjI2L2c5eGFeMHlRT3RncHt+KykwajNVcFFQZkRnWm9EazsxU1o2W15AOV4yLFBMRDsveU0rUjcqa3UrSk5aXyg2OlooMWpZVlhKNFNpYVQoNUN4SXJ4YGQsRHcpQnx8Yj1kNUFSN3U6PU9rVF5vQ0EpLG56Kz8tYWxYLmVxdWlVQmQrbS90fDY7aGhAMkVvWjpQXE9IeFNlVk9hSzMtfV9xM1A4QWh+QTB+QjhZXWMyU01xTSo5Tk9YLHRgT2ZDdFJoU0VkVWVjcnJ3ekpGZlAqYlcqL0toNkM7KmlLVFlRTkh1Z1laZ0JZa1xWbGAzQFlsWmlALntgKUpeaD8tN1IzRjItfitZZGVtQW1SLDo5MkF7X3RwKX5lKz0oQmhIUWRYcFZQUH5KNEAsMkcpbFBnWEF8TG58TUsycDR4UDFxSWA0MTJXMFBzVy1SZmx5SjRHYDFrenF4W0x0Y3A9d2EzaTlMQlN1LFpEMjdlbkhhW3xHRElOSE51dF5fMS5PKkp7bk9cbTY9NnF8MkpKbGtgYjVxWjQwM35IWn5DbVI5dz8tSklqOXItcX5dcylaeGBpT3o7MkE7L3lBKjkpR3hQeGZOKD9TZmpnUFF6ZzI5VlwsWkhbbVplZm5xMDlQeFEoXytnbk42fVVdXGFAeFw7OTYsPytcLl9Kd1hTXV16XnFTRi1JXTpLQ1B2flouKXh6eShpQC4wd3luK14sO2FERFRSQGI6YCxLV1hxX09qaXFKZ0k2azJaNW5OQl0wWHo3YHkwdUYueUtvVFN9bDl7YlRIVFZbLmlBX2RnOUdFdTRJT2tqSlFIXl9vU2woVHwrZktIOmRiXnUxMXxwfHotZXZEYEREU1VbL01Qb1ZKbSpRRi1Ne2dDaHI7UlZFfjM2XDdjenMrMXBBVm9hZHk3bXd7bH1KQH5mLH5cMkdZNixyPVdAWUhoYWlUOFhhcXxRUWh8S0h6W0RnK2lISFlWb1NsUXkrdTQ0O04xQFRRRnE9MHlDRUVELV1ZLEA6PTE6bWdRLCg/W1FyKEJ6Y2N9WS4xZD9JcExnPyhIVkRBLHNtVW5IdUhffC13NHVSVlszWSpNY2FWfno7Ki1xXER3Rlh2QGlQdXFEYUx4O0U3XWdlL01dYyhiTHBsfTQ/fXArYzs/M0dnO2dCOVc4MytgOyprOkMwUkIrMX1BV2s2a3FSVCk/bWdQWGZEQ18rR3Q9VjRISmFCezYoTmBEY3hdfDh4LzdAWDZsNX1Nfk1gPy94YX58PztgOlZoXDg0emNzdmp9Vk4tXWR2SVs3Ki1tXkUuNTU6alh+Z2E1U04seEZuRHxHbGNZdlJEXXMwLlp5TmE3Vm1XN1U3YmhDY0NkTV9sLkZfSlQtZU5ZQ25HTnlhaGpGaCgucDgwdFx7QT9SR2lgOF92Z29cUWZFMmZSRTg/bkteOGRPSD9nQXlCbXsyV1dGdjEsXjddWmwwN1orYFBGTXxMMktJO29Ec3Mtd1owZ2VncktdS0Y5fEQ3fnRIblJJellZUjdIYntdTVRvbjBZei5cMzJ0VHNZLkB8UzAoVGY4dXdDfnFlXGsrMCs7N2xSQClhSithNzBBSEI2dXxCKUc7VU97QDdyOUJLLGcxTkhOSnN2TzowQ3FqP2R0Q3AwVlReNXtvSTIoeFpodF13LXlyKzFuQ0tlWE9Yd0hTOzFjMDtgcnNxSixXKGQpfVtWX3lQbVhiTW1MY2Y/O2JsbihVN3VVdCt1OFVWLm89MDd5TXBFcDFWMC87WGZ3YmA1bkRdUV0rZ3BDe3d4MG5GKWxeYDhvc3suenIvYT9bL3hSdldLKCpXfE93Wjd8QnxeR3RVNkopKEZ3KioqQFdrOWhOb2A9WW9RNWxOfVVKaFBbUDcocV9qSlQpfEAqKWg2NGlNN3UsfXVDaEppSVlaMmNed2F0dVx+MmJ1c2NeWihRXVY6dU5ESnZMW05oWGQyK2Z5QXVMKUlcKT99TFIwMjFYSTFVLShrQzlRLl5bP0xmeF1xK2hkSUNeQzUybHRwQ1NETEVeQnk9P1NWeWxaNEsxS0o0WjBhYy0tQ0dnUGgxLWouOF5jQkhQL2tcTjcsOWd3UHkpWDhzM2Rhdmkwdn1oZH4/a3pdLipxM1ZfOGlZLXlBMjEoNDVdclpRejJyQUY4KGJUOnR2aEZiNjltQWVFN1hzQS06QXtSU1FqaUk5bXJNfnxQWlM/bC89SV53bWEocUJjQkIrU319ZDV4UDs3bVtpNDJeT11He2x0cWlXeE1wfkB2amtTSktsRHcpNmZdSSxGa34zM1lmW3VlKU9EKGhgK0V2eCpfckNSOG1PYkw/eGVUX3U5T3tkRTBQeVF6YGVyV2VbOzRGNjlcVXR0R341akV4WX5kWVpgVjgrQDlASS42elNlTj9sZDBhXU5CaVFwZ194fncoMkgqcF5PR0Z1d2lsVFs2KmorWitkW2lfb3FeblVBR09ILGUsYm9pNzd7ZmtlYSwuQyo2ZU1+YEdJfH4rTlsrWDhwUGE5OTNRdzhXVGxjUHBNOEdzZjNLeXlWMlhecTUtbXhaUiw4PzE9Qzo3TlRaNlt6ZFhOKUljOllCUz1UMmtCOW1JUXlISF1geFdpYlI5PStBc19eMFIzT2FOQSgzRDpybXxRYnROSWNXdHg9TktnUm0pSlZeTy5xX1tcOHVWREFYX0lbUmNyX0h+byxANnMyZylKaEdJKmJDbVBmOFZoOltkLU1gWzFcZlBAW0NqLl1wT2JWYi9CeDQ5Nnd6Mk5NdDN0SGxOaTtxZ2ZdYnQ0NWorTmVxYHYwKENHYHhhUDdkdzhgRnBnKTtkalJ3bTozXE0zXFpKcEdZKV0zUTEtYX14aTpGWUgoUGxEQXtIeGg2SXpZXnV6bl9tcHx6WHB5fj1KNzEseC9ROFlQSExpbEtYTXJFQ3VxUnUsWVwtQVthWjV+V15DczQoSFNzaX5tb1V7ekUxcVF8N0pIOkBOTF97ZG9Vd2RXcCt8YEpnWmA/NFpffllhXW9LTHpweiwtdy1eYi55dldUcjc7XkY4QUhdeVlAYU1FL29OdXctTnM/Zl1SQmQrei5HMixBOklycVdNSy41eSpMOUk3SmZLQEVCQlsqSmlFP25eREp4KGFWRUJOVlBvdipWUjNvTVNkOSp0dFZ6MX5fMDtzZkYwNH4td0F6SFo6anBKT29xLWVTSyw/S3gzWGZkNW1ZcVUvOGk4a19FX1U/L0ZDLmNYeChoXW0peTZGXEhbekNCdGh2Lm9NbHJVWC9ySEdqU1wuLUx+YFlsfV5qRzdkMSkxdjZNK199Si9pdWZrdj12XWdBTztld2NoVTs0dktadDZHLlBnc2hac0F5PWdTQWZTVU0pYkxxbGNrTmxUNlJzUEI6RlFdMGRmaDhbMmtYLEBBNGpEP3I9YWhSU1Y1KWtfW3Z0RlFkYFhwRGhNR29JeWYpTlI7KExwaj1jMmB+bXdgQXlZXn1ZeltJNyxUSi9+dWJQO0pjflwsd2gufW9nRm9GbipLV3E6W25kZm5PdS5WTDtsMy9pKFNDWC19XFJaSzAuVW5VVm8/algwOTdlUk1ta3d0ZUl7P1U2ZStvbSwzcC1qVk1NRVxFbDEzQnI0LllMbGI9Ryxnb0ksXlhvQn5ofW92LXA2ckJOQEJKNj87OFRHaWZMYEZfU1VfXFJBNmoueVE0KEtnLClvQVYpYnU0Y3MxQkk7b2RaT1V0a1VUMWYpSExyXzNxNn1KbFkuUVx4VChsPUpjLWxcc0gzd2FFWzhPbGEpYn5hKFV9OE90LU5hQXlvT2tmMGhvfi1SOmkxQC1BOjRtYih9XzY/My1Me00oKmRlRE4objg0Z1hlQmsoTEZBRV5aYXA9MFUqKERtNnVkOVh1eSpsVix5ckNaQTV7MXdiLkR2XXMtWSlUZWlFWWBQW0U/c1Bveik0cWhhVj99UHtmWy9GPUFxfkB9P0VUey0yaHxuK0pGQC15XjR6TFNeLmp1Q3lIfVI/aXFtWTNBTHFtQV1NRXxBRGFEKFxKeXEsR0hISThOPTNXKjVvMHpvSDB2VjY0NEMybFNaQ0RtLmthZUZQeEBlbmxDYnFUSkJnQWRVbzhsQjdnM2JtQ0s4WWRle0soRTA1MnFvKHouWnVmMFl7LVtCTnRyVjk7Tyo5XllvUlwtWy87K1RqKk1NRytIQFdqRnF1S3NZeGBhc3ExOn56MW1yQDpiQGVoXlU9fm9lXFx1SUdEeVA3VWZvMC9JMUxTLTQvUz1vNEMrOE06WWdUaEFSZFo1YmI/Yjc0O0ZRa1B4U0picWBQSXdNY1JDMFROUnM4QnMtOSheQW9jUlc5WFl7UittLkVrO3tlO2BcRnpXYUpoW2g/KDpYWSosZClRdWpwQXlva0NCY1NBfW1GbS0yY0xlLlQzK1ZEZlArTDNETE81UXBVfjMoQ1s4STpLMDlHdUhRSkkoVzlPW0htSixOQ3o6Xz1bcEFJMzUxNXI7eUxXLDtFYmBlTTtvZSp0LWE6b3dSaF5pXylWZC1VRHZeU0ZNXURIQS5LKVdfe19fQ1NTWDVNQXV1QG9+eTJeTW15d154P0xEaFk6VnhlQmR4O3haU09UNFsuXUgtUnkuRms4dlQqRDRmVERuRC4zSFBXMS54NFRwO29dK3ExKFk4ZGlveGZkQygucU5hbzFQSWdLaFUwLXZROU15UX4vKVFgMzdNcDVYSl1SVjdRb2tobVRnYmBjNFExZ1NzWkVyOmFraHpiT0N2ejJTNllVcz83S0pCTGVgUjcodGNPQik1T2cuMHcwfHJRdktDa1dpcGRuPTk0UEhySGtWTzBmeXE6dkJyQGVZLTp9KVldOVpTblFMXn54SD04LXRvL1tkKk5lOShIS0lqSVFwditUUGdFSWEvfWR2Kn1odDkqQXxQLitJaSptZX5KXCpifnJjckp3eFVbKXRZMXFwcjkoWXViO3lySVxKdm0qfVFISWp5fnd3OUMtbUU9TGgoTFpZW21WaVwzOXV1SV0uXjZQfkk/UjtLai17W0cqZTsrT3dhSHdgMnUpUEkqXEZDWiheSXtJOXtLVjFJLTgoO01HUVtAXStaXXIxUWVhSGRkRFYrQXMwSSssYFYyNVFtUz8oSkRtfm42dm1AUVtbO1hSLDRRU1dKMGpZKFVxO24/b2sxd09aQDJoPUIoPUlwRXZmX0ZCfkF8d0xcaW55OypDdmtQOGJMalRLUD8vKGlwUHtuW1s3QDY9YjEsdjJwZF4pfUY/ZS1ANUYzaV44MF9AbVxjezt7ND0sSCtUeC5hOFcvfGJWSkp5OjNjTTBaQmxISzdYLVU9YWxESzFUMilTLTBDWVxjWlVefnxbZHJsfXhISk5oO0pPKUtDVWM3WV00ekV3dHRDTGpZfVpbdnUzYlNpSjptfD1AQzpEaFlFXWsxUipwTShZWHtpQ3NwX2JdZXZuKDlgNGJeTERCfH1lPUU4KEUrK2o6YlpmZWBwezlKRCpVPzRsT3FUc2lWRHJXeVxSKlVXak44eGxRTVgtNS0saTMuTm9NV21CdERvZ3cpYHpYZip9TDQuYDRgOGMsQGRaLShpXjVIN35dKUtba2RATU1XfStZY1I2PVRLT1ttaWIpKkdySytXY0dmdHRpX0JvKEJjSnJKXk9nO0ZENjkrSzJZTWJmKXNVW1JDM18wTTstNT9YaW42XzI3bk9razNQNV4uOm0yK25jKENyfjNYcC5IelZHanpMUldZVkhLNihsPUtpaXphXnVgb0B+S3NJKnoxdlJTVmJ0M0Zdd1tNVClBKnVyUytkKCxYTS98SFovND0obFhnLDt1al1vYFUrMDRLZ2RGR2pzXS10NlAuR1I6P1lmeHZATk46Qyw2YkNjcmppWjs/K2wxO2FGRHF9PW5sUjQ/OUdQQjhTS01wZ2h5SH0ydCswLFBcfXNTVlF0Ynp3c1NIa0RrfU06NzluNGwxYHxtX0srOFwrYXFfNUNJM2x4XDlORXI5KnRFWWYvMjdXUGh4QmxqeEVhYERwXjtoKHBdZDF2Ry1GVDV0K0NjNS5QRFNOTl80L0t9bSoufD8xM3gyZkVbTkNFMHNzK0F1V0s3MzcsMypuTzhhe2Buc2coY09VKCtndDgxSFAqaUFdM0Y7OGZEK2VuZEg9Tls/ZFs1ekZ3ZDVMZi1nYjlzO3N+ajAvd34qKmdDe05ecGlxaUg0Yk5DK0BPaWUuYWZqWGpSKD13bDswbmlpP3Y9YS93KztwQTswKU9zY3p9ekZweztXXVc7cGxaTE90LmB1c2FoUi95aER7RGRdX0FxNCxwbWorZldOOHhAKGVdKUtGPTY4Zl4tMj93NC9Yd3pEcl01LS89NzkraVxsR3JSXlpFe1RxMEBiQEQ0a3w0WXU9ZVxeKD9qTG83Z0lKPX5Vbm9mXGZxKDVMKUt6Sjl1XlRIO0ZmLCpcYkVSZS07eyx9eVJJRjB+LjpsLks3cDQ5dndZZzI7O3VQTEEuakBVUVtiKWw/RXZbXkM3VmtAbC9SUXxldn5KMUBMWVwqQkMrYG0wWUVzZFlZXjRlX2NJa2JxLjdwNFtValh+c2hFZ3V5NyxTR2pdTXxjejA2alZ1RXFFRi4vfXI1bWNwZVI6MDM4ZnRNNF5ofFZWZktQXCxlNyx0P3ZKU3VPQX1USDAycFVzfTM5T2w/eTk1NUJPVTVwOCwoMDk7ajhwYj9gWEF8Mi00QEJEcnk/Y0AyfFh3VFt3RXspal1Ta0FMYExlS11reD1abUE/RkoyTUVIXDRhWzJ5UnIxTFNpbmhRalJINihKaDJoR3ZOaGMye2NdKylqSkZvM1NQYHhjeFV2P1t9RTtEZH5zZGZtQU9yXm9EcEd7Q0s/VSlJd3AsT3dkOksxXFB6b0UpO21ecVc9WTtxYEk5dVRiflZeUmZbXCg3MEhIKi9oOm1nLWxyay95c0FMKUF2T2RPfHpxU0FDSFZmUk5yaj90UEg6c0NGKDc/c1B7W2ddfF5lLk91Q2N5YlxhaS1jP1NhR0VyYFJecSxMezJxcC84VmlHOWw2eHJJdFF1Mm5kSWQ6MDVwMkc7Nl5dWjlAZVtJZCwtcUcvQFlPYi5GRD18Omw4aUA9Nk1SK2VQNjpAWElpfFBsZ2dpanN1WTpEe1ROKi5GLXgucEs2YzNrbHxBXjhNXF8pTTVAbTdDT3YtQy41bmlLQmx8R1ZJVzhhfX1qcFRwKk8/bGJhdFVMSjtEQXdQcjdqXGdLQH19OFNrTmBVVEs/X3BiNnN8UH5eKGY5YTc2NUlIaWdoaTthczJeSSleVHJyOEduUjguRWVpcStZaXhzajpeNj9HQipFbCw/NS1JdEhgLl1Jck9PZmxDSXA4XnplUTRKWFg/MUtPZDo9VHpQPV8tWXIqcWZWXkIvNWtlYVpxXyxiKDMsZ3w1VT90OUE/ekFxdytOQ2N9N1dZO0E7Z3dYdV02bl07REhfR1RwXGE/Mm56LF9VbFhUKnVlVE5vQzg3R0s7XkYqYUB5KHwzfG15YWRgWkNINF1gRzhxfkQoUHM7LWU7Y19wYU0tXkE2SF55OW9gM2lDYXFvTDlLa3Z0cXU2ZDpuNUZRdy9dMW5ea1grKVQ1dGVgX0ZMQnhQQ2VGQEZ5Oz9taXlXaTdoNER+N1lpMVo/LjdUZGJzKz82YGB1e001cTZbWkg/R25qWWVyQUtUckZVe0V8eGUwNTBvXThXdWU5cVcvU2FlazhGezFyP2t1O0NSWS5mUmVTMVZ2XlpVQXpucU09OTpiRS43OClucX1RMlp8XDI0WltrNGpyKF9cU3BnPXluNHVaP1F4X2Awa1kpXkpQOV4/T08uOipiMz8yMHJES3JeWi02X2xUWWtbMG5TczM9VEZmcEVlVzpvb2tYVi59TW1eTldfR0x9cChCQEspU2FERnZ7d29uYiwwZndxfDRgVy81S2RNUkZFYlk9dEthXToxXD9re0s2TUE4KWZJeThGMlk6W21PVXMsLXJnOyl9ZXxFQ1JDNDcpTVAuclQwdl1sRlkvMXpPN3gwd2JcRX5YP2EsbkhyW3ZDcHJ8Zm5jNVMvQVtzcGtgOGNcS0RcKkdLRHhWOz9KQFE7ZVpSX2VVKnJgTHJ2O3JLTS04KVpLVVFNVUF+c1h0LmA3R2QsRCxheGs6Q19bKT11O0RxU3g9fC1laVwyOVJjXWItWCs4a045TUxTLXllaG9helFsP2lYUGozL1NxMVtFLS58OjpXV15sXHB5RDg4fnxldDhtal1+WU5xWz1ualBzYjB4Z3JiSkpIWUUyTFE3ZUJePzFdUjE0Wl5CWF9oWGFxfVQ0TkVCV2xAKmU/ZHN1ckViQ2ZoXnkyYThWfV1+TVFyX3pKN2BPKFU5VVZgK2pkTTZ0eU1wLGI3OGEobjIrcC0/bVA/Q2QyMFwpWUcvXT9hemlFaE0ofDZnR3h7OmpFcFJZanpAWUpMVUVVWjc/RWAxPUpdfW1YdGhhZFBscmtJamtGfVJaYnk5NnFjLzNxUmdNbU1uSmVAYjlmUmtKRlNERFBjNzBhUU1jYnJIQVJRN089RXczMVRnZDdFSTYtbVF7fDo7KixUR0gvQXEoKmdzfG9DezMqPXEuWkhZMF86Ol5lbDlmT3lTMFkwd3dGMHpySnlUSkpDfDpHWHRGeFNNWWpuKDArN2lmeVxwRUFQLlVEYFtTYXBsR10yXFQoVmtJRFBZTV98T1dxSS43T11PeUsvV311XmB3fFdWaVVLRCg2Kn04S2RyX0dMeWgyQ2RbVWhTd05mUX43ZzJIclczfGZeSDZRfXFSVCxFWT9LSShlMlIoT1puKV4qZ1R4Zn5uXlY4W15XMU05bjpASzIrNlpJdUhzbyk9dnBmOE95QXpFZ0pvXUMtX31sYG5dUjdMVkk2T100Y01RMXFGfilATWM6TGZMend4QStpQF9kVnY2LzZFK05BKnBOe2dReVVOTXh0QSh2RGRKTSlVbjlsUl1xQl1uWzErKVp4bGVXQ1xcMFldfS8qd3c5fVR+c0JrLlZRK0l+RHYqXkNmdlRiP0BsO01MKlxOSE1UYS5HWDBESn4sXS05azM1UHpgYmZPX18tR3dHKVllSk07NksrT0k0WWlZanVGZXF7WmtQPWc/SEhnMXtaRFFPSyg6KC9kRmJsNWB9cSlcRm5OLkZ2XThJZF95TzFcMkdnXndgTUpYYCp2Qm5AeWxrLThwRmNjTlBuXy5TV1w6NzlWLmpqRyxKb3JzTCpXempCLE1+P005ZFVxbDZFOl5XNzVhU19tal1YTjsuLCtMZW5DRy4pXzhJR1pvaVh+NFVsYHRSR0M7OWJgcnQsP01GWVItPUQyWX0tYCpnbj9bQjBUZy83aXBJeVAyYTZZaWlSXFg3RTAxOjBnVE1+UWpDRTd1RHR2fUQyWGBxPVs7RVdQOV5ASnV9cywzP10tWFpZZk9aTk1TNF4pQEZybWplanZYfnM6XGo6OXwwRjI2dG0uL0VFRTF5XywxaUFGTCpCbSpicjlSZ3ZiWkRwLS49eTlnLV1UYkx0UjhLcl5Ea2dcbS05SklGek5wK3NReE10WGhwUUIsblpNcExYdzdVWlx6ZWJEMzhfeXlRSDZ5QTRHRWBxO3Y0P2hdNHtXelo2XTE4Ml5CLHtfNDc2WSpkWmN4eS1naGhZcmw3OjtUc0JXYldzQmxDcEZOZ2xtKkQwK0ZwcC9BRXlVZFQzfngzQHM9YlVKeDZ6XltbNSxwZVM/QlE1LHs9V0ZyL3ZbWy1SY3FRW0R1Vm4/RGtUdEFvaHBbSDYuLytce1FoMFY1a2tISH1qYmNCeTBeWXguSXNgSkN9c25HLypQKT1Ka1plaGtkVFZwa1pSNj9CLC96aTQzNXBwZDBOVzVFaTUtLDo6ZytjcXd9NjdCfXhxL3prYy9EVDtHYkouU3UremxNdTRNN2BweipOX31ARn18LUh8S314OSh3bTFZM0AvRztyb3ctan4qZHNdOWI6LE4zQGRiUEVfUT1XWyxYS19vaFQzaW9tTE1XR2FfXDAzOHx1VnVqQ1hoMy57ZG1rUjYxOEssMC1tc0d4QS1uZGNQVn1GL35MLGA/cS1iK2BnSl1oRVM0TzsrQil+cmxqOF5IVTY5U0IuYXlJSmg6YVxgM2VJNUhObVZZMVB+QHcqVXo0NTZcXEV7UVswOWRaclM4SjN8SEd5SEhAT2JvRUcvQz9eMVcqZ2Jmb3BBdk5QL3E/RlxIOm9yQy04fVZTRmU5UXtkXG1ZZnJKclZ3LGkveHVSN3NfQVpSd3ZGXkpse0BUXWEqYllBSGVfNWlkRCpJNnI9TEVbYWwvRn0sezdoeUtzRT03eD1gdjVfKS0xd24xLE9zKjBtZVlnVVFIX0g1YSlZTkwwNyhURVFJST1teHVmcmJSb31MTl5MOihNP3xgUmc9RSx5bHEvLkZLMWtmeSpHV2JHbjk0YyxFLWpvQUhMbGxbaFI9d3M9THlPMnQuVVpbTS8waW9NQDpSdkcrKXBPKClhaDREO0JnV0A6WFFKUy9mRHI6TlRkVjlGVF8rbDkwP011RlMsKlFKQElSXGZfR3JrS1ZrODtIMzFPYndnN0JpP3ByWkg/QWBCfnJFX3U6ZH5PLldudWl3UFZBVVBeW0I5YWhsQ2ltXEJxKm1jOihIeUZrU3JBW1Q4fXJnUWUqLmo5OVZrWENveWtjbVQ6Omo9ZjB0PUc0ZGh5bWBzYC9RemFWTjl4Vl1veHx2dDtSTF5AUCxKVmNnKnJIU1RIZmxXMU1uU3tdZ11QKHRgcT87ekJOSEw9cClPK3d4X34tVzU9WmQ0OElPbF9sU0plP1h0XihfSH19SE1MYnp1eShuTHssa1E4cixxLllMOjlidk8tOGB1Vm54NFtUejdkVXg1YEdrQyxQPylLNUNLX3BscjJyW11mYVk5QHctWlJdQlNDNF9DO1NSfVs2Z2h7WEt5W0ZWOnN2My5MRntbKGlaZFNqaEc1N1NKRkV5S3wrVlkoe0lmKkgsX112K2tOVU8yQCtZMnxyLVRzKmlLTklCOGJmRlE1Yk5eWGdMPXpHWG5XZmxBfjZhcnRDeEVneVpUL0VWfmpqVHg4KmtrYn07QWNBWHZkNFVlTypxRTgsYUlgaytZSk43V04zXW8sdml7WW9qQkQ4MTo7fWhTWURbdF0sM15lQFs9dzJKOHRIOUBXeEpbOy9HLUM/dSlFcHFYMlpdK2JtV0pbcWh8THtCWzpvLix6KXFpSjc2dm5qV3JPc1F0V18sO1FPUEhbUC9xZnZHN21QW2E4Ml9XT1JHVlk7dHpEWHRRTCw/TWxYMk1eXGdEUnh4XUZcQGJsV3dOZn5lL1l5UzNaL3FWT0d3K01ONlNndX4qa1c/Y2IvKmpFPUQ2SGM6PWNYZDhKTjdCfkJ2RSleP2lhXEkxcTdJOHgtLzFhcXhCNzJdR0B6OGJxfmx9P0pCSmtDKUVaUE5KaS86YFFbNW9teXRyNTEqM2Q1VS9fRUAzcTIwWERvXnUqP3dZTlB4NFZXb25mZilDMVxALTEtW158MHs5STl4PTErTTRQLU16V1tjS1c7YnNocDVHZX5nT3J+REBcXWpyKTtKfF0yQkxoU2t4cWNPSDQ6MVZPWy4qYkg4eW9Ic0JgVmx1VDUuUF50cysqL1FwTy4sLnF1UFQxemNObTtqeHZ9OW1TYi10ZHh2aE9ndU9QWTp3dH5zW2xGP3p0LUxfMDUwSzEvamRdQDRFSlNWOzJtX0lWP2RiWGxqZlg1SWFXYjQtQGY7fngzfih1YzEsZURcczlzKildPXowRWBdU2VMbi1kTSxdUUIzLWJwbSp2azdxRzlAU1c6VFV2XHRZLS1dXDNcaXh7VF5tUFBtYEVHXDloRnZhZHFEYWMuW2o/MWhueTNjVXt0LkJyQywrX3dBRkdeaERROD1oeUdqSTErMFVwOFZQdm0xMnNgM2dQSHtHO0o5O1RgWmYxMlM4aExiNUFJYTZ8X1R3aTlyYFRjUnNcfDFdMGUySnY1dU86SE1IXWtkTWVIMWdrOl9MXTYvOS9UXEIzNF1aMSo7eFJROlVrbTU0XGVBR3l6Sz1YaD03UWtZXWxvLDZ0X2R7b35uQ1J6UjFhPWpKO2ZUUVg4XkhccmpcNlhyQkdnfTA9ekRFMXBzXUpLbCxpQzFPaV9scTduK0xiaipOKz9HK2Zdek5we0Y7WlxdOzNVKClfdUhnaipxUm8zcVF0VD9zTGdFMTdbV21EP315TVpVYXwpbS86ZTEyc0haaE5ieH5GVCtMXU9ANFovKC9TezApZE5mMTZwLEFnLytcXnNyK1pMU1d9WFksbFxPQEotVURLYnRMbGFlV0kwKV85LER1b3BfLVZ7aDtbbC8yXn1ubGNPUW5tTE59eE0sNmt9SypCTXw6akhGVHhGfnBldXlnOD9STmdIRXQqWVU4M1ZedjZJTV85Nz9mLz1HRjsqUX0wQEx9RzZOQDJ2Yy9NYjQ4RndiZ0I/P2FZZGhgZzk5SH5ZUXxWLnVNVFwpZz1COnBcdVE5OGRSaV14cSlsQ0JhSFFYOChxQHNtalUpXFxxUS5SWzQuYzd1eHAobWMoRzdlenJ6P2EyWmw1TSwrdH1CMntlW1RfSUFMLlh5Nm9qS20zMlJ6OjktY2BibHlPbV9wRDc4PUs5KXRfOk9eZUA2QE5cdD1dWWp8alw1cDAvflQ5VXxxeGNhMnl4WDpXZGgoRFBDKl5IS0dLb0AofGpHYy0sTThbQ1tKeUV7ZkE2WTN4cm45blVNd285TClxaHsxXUgvRy9UaFloSUBZXl9Va0h2KkY9d214cHp9aj9JW0NkfS9zK1pCaXkzNilLYEtYXVUwezE9YUJRUlRAV301QlJEbUI7U3NrVXhzazJcKXNkUkV9WkMoRFcoLmspM3woPX12Lyh+fT9RZ0ZpajlaUEBvZ3QvbkVWTl1Gc1Y5OUdcMStRW0Z6TSgsS1lWX29hL01nVml1Zlg/SjZdTF57VGIrbnhkOi8vWTpNQXRgUDRDaXc1My5ATm9WLC9IelZPTj09MWZyc1BtW2RSRSh4R1hWeGRXKUtiODBYUlFaWC0pUWlSQFdsNUpCPT0qW1lPPV1wZzBKXWU0LWhIcy86WkExUk5bMUE5VkFkYDdkbi5MNmFmXC9ySU5VUXR3e1NAX1tlYV9kdHYvXkBJWm59L2cwT3xLQDtAfmhOLUNFOW5aT2ZFNnJlQTM4RGI/bnp4bCozSVQ3PXVcPzJ6aylAbz9SLjlaOllnUGxLK2xjYzQzMmc9XXJtT3R3LzdeUVlVPU9dWWVgMn16cFxvXSo6c109WVVuNnRHM3NGRmlRYS16V350bkl3KXN2e2NwKndUeVc5aWZoNj9wc3xheVlOW1MzSXx+dzN6eWl5S3R8P3UzNWE0Y1NvfGhBP2RcNUsxYGdbZ0Z4REJJV3J+Sj9gNkNINEtueDpNKCpifHU6Ozo4XGJdV3sybmZZKl5NLFQrWEJXQX5sWWVUTXVhZntdZmRpbWR1MU5LVE19YT81P3suSUcwQVtnRzE5eShaK0NvSz9yTzh5Q3ksVlVXY2J5QFIuOlJSXXJtcDArNm45Kjc9NEZsM3s0WG9DfnNre1NLW0NrRHNYXVBNdk0uOVc5W05xVTRDLFhOTDhyRjFjRnU5a0h1QU4udXtEbjNFU0ZjSkFDdlIscSluZDU4X0FfbUZKVmJfNSlgUUNNLix0QVRMMlMvbkJbVGNxb09KQmw9RjY1NShxSzdJRngxZE9bQG1bV3xcW2J5Qjl0VmtONDNQMXMtN194LXJ8eU9bRGVmfklDTGVobnkpO20xbzRTXHx1VGpNPWNyXUE2ZEpKSXdtLStgNWxqY1k2LGg3Y0ZRfVdkUWRYKmwsZz1dPzAte1xIQFguXEZ5YmZrUFooQmguUUt4S3t+dShSQjFoQ3p8MEZnc31uZi8oNFZHeCs3UzpPOSs9dFt0U1o6OWU1QGBSVC97UC17K2A/YX1eWk5fL21jWDhGSV5zbCw5OWwrQUpUUXR8aEVOUFZRTGYocGxgdURPdTpWZy5acEFRcExnNU8xSTE4WmZwQWoxYWdeOEh3MVdkVHw5L1wxe1IzQGxTWChLOjA4WnFHXmpQY0hJV2gqSGdudGM0V2pibF1kdUhGaXJgTD9WVjFSTEA2W0o5QzExWVJAN0Nrbn1zSFgzOStQOVJnfkFzZUUyMztYOzQ/KTBaN0w2QEszWXhiUFlIUmxZME54U0VpMF4yQGNiLWtrXll6QmdhZUNob3FMNGBlY0tOOGYoajNhSER6TGRcX11SU2VadkRtSGJ3QzFeS1woUkF1Y0tBNW4sKi5GP0opdmV3Zks/XkF8TmVCd0FLVE5KWjZASHZLM2ttSnVyd11tPz09VXxqQjRSZ3ZbdE82YHB0KHotL0g2UUxaSHVBZERQMlIzfnk7SXUsU1spZEZ0dj9XWF9QYGh1WUB0RUVVd0tOMmkseFBbcWZkMSt8Kmp4OUg/ZEpSKkA7T29wRSkxM0kxKXJSK0UwLV4yLDZ4QGlHYHtIWns5dW51QVt3bm8uQVddYFlkWFxvalVQYDJ6Z1d7MVdxbVpDY3k1Z3hcaVE1bW42LVJofjM6TWIweEQrdkY4XFNOLXJmWGg6bH5Lc2A2emdSc2N5KGgzQXlUX2RTay1xSUV5ZTdqM2JbT3lgLFxALmFdNl9uaVJrXFw9d2trNV9lMzJAY0wxSDVEWlB7UTluXl5gVytLZERSMXNtMldSaE9jS2tIP0osNG5qK3gtLlBfXGdmUmdUWkpdS0NpTFVlU2h1VDNgaT00RGJlaGpNSzBmbE9jVkplcjo7RD9hM2tnXmQ6Z3dwaDI6eiouWWpqWVdWZTJ1b0tFSC1GM11ETG87fEpTQ19SUF5QfmNXRG9pSkRlXElbUXZXMnI7TnRsWVd7eF5uWzRCel9jWjtjZH1Bb1oqKyxIXEldejE6cGJBeSp0L3h1b2dyUWcyRUNifClQSVpKajZhOTlgLzNZXlNpX158TnBZNzhMTz0rTkNmNDc/fkBgZHJEUnJiOl07fDdYflxKWVYrd21LYVtwOjswXmMtZSpeYGRLKHhCSjZZZEtzSE9mUWl0PXYzRDVjN0NvXVUxcUVMTUZldU1kLVEyXCtpQHhVZGhcO3t8TXwpYSluelJGZU5lbUd+OVtyWGRVPzU3b2FaP0FAXX40RTMoRGtNZGxqYURRcWI9Ukh0TipAY2Jdb1tScnpiL1p1dCo2KzU6Yylbd1AsaklOM19xV0Ardi5ke0JjbGlqU213TTpTSHtRU2pGUixOXUNmZGVSaTUsSnE1YXl7K3M4bHssUDtxQUMxRkAwYFl2THN+K3c2MkdORzlfOTtaeWowQDBqR31eNjJiSSlidEo2Kj98KzYuLz1uUUVANGVwQnhhKGJxMCpqdmhSe2tFSj9URE9sRTBBanRhSVpjTTN3UXlWSy1PWmhqfUR8ekJ+fjlwNjR5TktuXnlPRkJATy1eQWJbeCtnUzRyT3ZDQThBNXBdcWNNSC86T25+dV16V3gxUE9BOjNcRlkwUS1IYGxJUXxGNUVNbnlWWy09d09mWkYrLlBPdGliT3hyKno2Y1FUYzREYHdwRXloY2ltWHlBcmxaWHp4W29IamJkcXN0bHFZTGZ2cys/Vy0vd15DdDtkT2l8Q2QxVis4LEhxYVU1MWIvbDA3QWlsTFkqLFlDSk5VWEtdX1lrcmpuRkJgZ1l9bCpKNTpKVkU1YmtBd0JfUUorbz97L3djZzJxNG5RSyx1O2tfYjotdWg2aENNRkI/SUEyeHdaSy9jd2xDUSs7ZEhdN3MtUFdjXl41ayopKCg9XD1QSG1EOFpcVjJJdltSQEZJQXNrbnZ+OUpVLmJvNn1NMXRRUWFhNnIsOmhtSExLL21ZPS1HWClGdWs3TlxvR3YwMDVuNlFIVDg2LzB2WVJHLGlEXzpPOikrbDtUSytcQ1V8d25LaUAwT0FIfDtlQ103eC5GUzgzUF11YGxRbVJ+P0YwQVhDLWgvKTBmW3s5eztYY10yblp6ey0sKnYqS11DRGkuKi44VktOOGBgPWUtZHEtVX03bE1wWWV6W017Z2xdMUkqalJzX1xwRU5bYVpkVVBbaTFBSTFNQE9vR1N3Ln1wZjRzPXUqPXVaUWt8R3gyUlwsVHA/Wlp3KVFQbiluTXN3b2RFeGpnckNvLEMqMz17TGRDTE9vRz15aHkzTEA7cmZuOjhvaFdtaltUXFlEeUJyajJET05vd3pPKjQ5dUgqR2pBbl0qYk10b0twKTcuMC1mbWMzVllKc0B5Vm90QW5gdDh1cS5UKTtjVU1UOWVuY2JHc0xPK2Vqbm9WKjpPQ31kXXp3N1ROQzBHNFlqaT1mQjozO3grXkQ9UTcucj9sZykoOlYxYVx6STg5YmgwUkV4dVZ5Kjp2eHVDWShOLVs1dzlAW25OLk8vQ0BkM2BkQFMocj1GdHNyL2h4N1FTL2JlWjBYQipyZXotNjFbcDNzLmJXXl1oYWEsa2VIX1s2Smp4ejNATmcwOzRVdEQxLzFtTT81QmcuQmpqMS9ZKUJXcGBqZXN+cH09Tno4aWFEQ0BZRDJzOktoOyllTjBSb1wuLTFeQioufXBjdU1QZWZxUjlDaWFEZmVPbix0MVBjUTR6KF0oNEZ9aDhUWSxXZjR4emp6cy1Xe0E2LDdWcF5aSi5dVX1sY28vVi84YWJ9V0RAXF9CfWYyfi52UFtodHpTaD05azUpb3FhM3EpSjBTWUhUVnZEYm16Q0V7THtpOW5fXHVbUzl4MDFwOFRgdD18Z2twREpjanw0aTt4bVBfRlBzYXUyTS5La0Q7d3hhbilxV3hERXViQlxFL1V1SygtbT1jYjBzQmZGXXE9ezlWcmM9M1Z9fkxkYF5cVjQrRzUtW29cR3h4WDFwdHY1XS80KXNIUW1FaTtMdUI5OW4sWkV+cVpDcm02Zz1MfkQ7PVZbZGZ6M2tzMyxBSDpuKHwrKER4amlYKTdZZy1jSyk0N1VGeU8/O1VPVTVbUkltNGhSTnA1M0VSQkB6Q3N0XmIqcGtLMWlqfDhgd1FqeTU3eGcwO2wpfU5CTEI/OjFMKWI9KWpWWFZDbUppLTJgQVEpLmVJVlltUnArbGFrTVZSbE1MeCpJXnJlZVFcMzpILEw6RC0tb25CV2UqeG5WekNAZ29NMklWeC5FTUxDfng2LEJBPzNQS0JBW3JadzkzWlhnbXN+bmh2Ln5BfEtuXFhwNGYuXmRefVctKlp+ODt1M0I6Qm9KYThTVylaTmtbSFpAcnhmfTpcP3ByXWs9ZjooNSxOdzoqRGo5NytidHtBWV1XeElgNyssZDRfbHppdmRvdkhmX0cvfHd0d2BGWHk2QXgyQFVINktZX181byxMTWhRbmxsNGNVXkw/KzM4aF5MN1ZNYFUwYW9fYU53LW19TENUOzNsMHlKMi07MTRkRV1oay83W2UtKzVIbS9nfGFeW25ER0JdOUxmWFtpLnNub3haSSttTU17cXo2M3VjOFdwbCl1MTdRTzFLLj18bGxuXX5PU0JgMks4KF9dVy5YSz1ra1ZcOGF6QF8oTyh7RHJKdzFsaEBTKnZwZW5eaDJlaT0vMFldTXJiXlE/ez1ONHBqOjZALWFzZDZDaWYqY3UxSk9SXC9fQ2ZVYl1AL04xLy93V0JdRnAvMk1kTWo4Q0sxS0c/T30qUCpmSXdNWy56UHp0Xy13LDh1Z010dnA3bzF6T0pra247WzhHOjJIN2tZRFF3WW5HeG9nQ15bU1MzKHwyekcqUEUtKVQvR3p0YWRMQEIrYmJdTy9XP0ZdKn4xaUZ6N2pJOmZUdS8xSylGekMyVzVCcEZCOFs5Y1EuNU1XWVRJV2N+L0tZRlp3cis0QHd4UGFlKEVoNkVyT0QsOU1cMz96NVkoSjleQi9abFZQOV9eZT9ReldAcStRTmJWQW5FWVMpS3RxLFRKXSgzWzs6W0k7YWJjclRUUGpsdmtWPUltUTpqdntaQ1tgWEFvcFA6ZV57L3IpP19hODpjdnFDSkFBQHQ6SCg4bHxnPV0qPzMxOklWTHtvXWlEXCpTbyxXaS03bElMX19mMXJUS2pUQSp+X1xML21XKns3M2M4MnRXUH5eNDlYUzd4TUJ9YTZKe2MyPShraygyeSxJMUIxbXp4fC1VazByQEJcMGtHe3dpamV5dWhQXEd0Kzs3LHtwXV5WTk5FLWM6UHJ6bC5oO29rMkxFKi9cZGVKVHJVTipxRUhgXmIzL1hHXHUwO2Y1Rlx0dC1tXFFXTHlufD9KYlspMmNUNE8zQWVgY3Nydlc6SUVGSmkyPzJNc1ktTGB1WjVZSHhZYHFzSFBmKykwSEo0ZHNdLWpeQ15pRDZpNXE2V057QVZadVB+VnJ6OD02KVV5S3VSO3VbSXcvTCxOVkNzeTUoMGFMKEo/OS1sMWh4OnZxVUdXT3l2UVRUY2c7dWEwYlcyOzZxUFVKV3ZQc341UlBzeUFFfV4pQHpGWHhdMlcvNkoyfSpBKUljX354ODhVMjcsbllESE9sX1woRz1vS19adXtHLTtIclpjaigrQDJSe3tAdC1ZeVEpbXA1KDRYWXNBNmlyOkJKO0FjSjhbQGc1ZzFBeFV1WVFNflw9LDZwcXk/bHg6OCspbDc0QjFCSlpAK3xeUlRVaDopQmJOLT1HS1tRP1lLQ3c1WWIzXWtEd1NFQVZYQTg0X0p9al02U05RfXpqKENJTEtGPy1lYkcteDYoXixnWXVjdEB9KWR1U2Q3Sz9xKnVgL1hebTFmUmdnQlZKZ3VoX2p1P2Y1UHNLNEVRVnE9NkN+KmBdMywoam9bYFVGOWV4SXxHT1dCUlNIeTU7RjksLjRmLFNHdk8vXnFMbGU9dHg1TVUtKmBSK1prTGB0PVdPK3JGTFd9VnRSUl9CQkhZdzo4W0x9SSxBRGpNS3hyP199SW83R0FmSzdFVihHblczeDNoUTNYUW1EcX5YY0Y5NjFzR3B6bGg4QDQrTmI6L0B7P2xlOWlrfHBxO347QHBKaTYwQzF7aklBM1deZUhXeEdYZWprbWY2aCp9R1AtUS4vS3BdbTRHR142KlZIPyxAT3l4RClcal9BVGpJW105eDNaZjdTP0IxTXpVen4rOUd3aXs1dTI7ZElnOVFpZzd4cEVUdDlIQFcoRnN9MHsye2Z7QHE0TSw6LWVAZkBNMUpeLC8/WHt3dmo2N2xMYERWQkdxaXIoaS03N11JUjluKXBbM150dTkpLEZ0N1hVbjhbZ3p+Umtzc1BBUmZMaXNReXAzUUhuNTdmU0g5TXt5NVsufFc0dEpKQVA5cT1gZVlmOzZVeixpRn17cTpgZipwVnU5QzlRKjh3SHVXXl4rW3NEd2RuNFdeWTpENjFaVFdranZ4YV5YeEh3TVB7ZXc6MFJ4bGBsZntNaWQsc3hLNjttbkRqK1FhL2lKe2FsUjhiaDZgRUV3Yz05bCxVS0hCVlNncEBhR0A9eChUXlgrVzVDNTRaL1BNVUxWWVMudktjejY4ckl1UDFxXXJEWG0pbDFqRENmaWVCTGBUfS54R096V0BueDFzQTlEK010XjsrWVwtLGZQKl9xcGFSNWVPOGdUW0t4bVBDd1V3ZnltQ1lsRDlMWCpAP05rOEFCUVZLLHNWSSxYemI9RTVCMTNzLGN4UWpKcTZscW87b2F9UXpwQntlV1UqZXUwQy1+ODZ6RkY7ZmhnNGx7TFE1bClhbmsoLTpgKktVMVFPTVJ1dTprNX02ZX5qYlFnfD1kXF4/Xjg6Um0vT2h4Y0ssLVFXfFx2QGYwaT8pKnRVbylvOm8xa1gyRnt7W2tFTW10QlkobFl6P2YrdWVYbT98YXtkXDtZWGNpK1BrYjBceG96dlRoQ1d6KVsoZztAOW8tZCtpZlF9UixYQVFgSlB4Uk02WklcZj9IZlNpS0N7WVNdWmw/T1Y3Qyp8a0p7WjhwOlN0NndLYntJRH47S0REfXpuQXVKKDpENj12PTBrQmpRKTlBQ21INVErezorRWBlTVFLdmx3WGFcLEZrWlZ5TntsWFluPSh2fFtVL2sxOWh9ellCND1iYmB2K2B7aXJJckBITkRxYzloX3B9L1N1eT87bUJnaUJ7bC02KmZKQzFVVXM1dSguMEFjNWE2bGpzLDgrZmldKDtLdm5+LEBkRTo6ekRtbVdIZWlRcyp7Vl5HIj5kZWNvZGVDaHVuayg2NTUzNik8L3NjcmlwdD4KPHNjcmlwdCBkYXRhPSIqQ0czXC5WZi8xVVtxL19wKE8wKHI0WGFley49bTMvOTVebCtAailVU0RFcFcrbEowM1Fncl1EMC4wQlkuN24tOnFSal9nW3JXcik0OmhDeF9vR25DZX5fal04NCw9YDI4VyhXT3dxWXtjbFlidEA0P0Rdfj8pWj1WZjhWbz1XSDRcOmd3bWRhQi1Ya0IqZllIdntELkdfR2xpYm09Sk5pOmcuQzN9V3BmNitoY2dzaCx3OT9MdzNjODpScChESz9yblV6NFw4VmZwYi5EUWo3TFpjLnZxK0FUQ09RZHo1fWgzKTV5YkBGTlxNRFgzLkliaDVKNE1DYzZxZ1FmdylNYWIyVUFcajMubnorangqW0sxWCg6fGE9SlVaNEM3QkRNVmBvKChBfV03K0FcP1sxdy5RXkcsWVArcWlpRWBCMW9sZ2suODVnVUY7LXw9RzRMfH1bS2grSy1nW21fcT9FXVo1MFFpWUxYND8zfHhqKTltUkBDZzlwPztsdjFnOXEqTFRRdWAxYzBMOWF3blBYNWZ3SGtSL34yXjs2Ni5lWnpKYGsrZ2tnYFFkSTNMd01CS1RXcnEvNDVoNU5jWG1AUjE2alEqRnx7OVRgdEg2RXZEXDNSaHtDTkdVMGF6YDF+WnA7djApKmhASDhpcT1dcD1tZ3lrWCh0YlouYEpSSEBGcnBpayh0MlZkU3QsVVRQUWliKTJpKVZGOUA9e3dWVHlJSmltZFlDQjs/VD1RRWM3Nk1VRzZtZm4/UXpTaF47cWA3O2hROEtaSk5mV2RFSm9fK2dwcTd6emFrdF5SOzBvMlVES1wvWGQzUng5aDNlK3pmOkF8TTkyYmZTR2VCezFlSno4KnVCLlhcNF5bVnc/U19ScHExa0NOXF9WZkc9X0lRN2syKkgzKHA2YEEuLXFOcmNEQFA0UGNxL2ssdmM5YHdUXCpQdmpZK3d0NWkyNXZPYEpcbmw0PVd0NWRQdkVZRlZySGR5aD1+QWVrMX19U29Kdz1kZkQvamZ2TUt0RnVOWGhySWZPQ2kwLGJcUS5ZaTZqdjNWWUNgbk5reS4tWG5XZWd6QWx3U1g/eHpqKjlkaV9DfUxgMHZsQVYxcnxCP0JfVmB+RGltKXxRVVU3aHArXyhmM1BAdXJvSFZaTXZ2STY2ais6elV3SVlKTUY/OTE4Z1o0TWVdUDJdYC5rXXQ1dkdfbXtqS2RuOGIxXU1SWnNnR3dwQi16ZGlAeWllT3wwQXF9UGFcMFRrSWQ5LWB+TH17U00rZ0QxVmJfRFwsSDspWkhMU1F9OXkzbC9MbnBkakV7a1wpSkhZLXpzNz1KUXhdd0F4YzpOdnxYd0pVZj89Lm5UM0FjMGo0eDlsSHxgZj9pQlY4PXIpNix3L1k4RS85QkBnckdoYVopOTU9Tlw/Kzs2KihRbDN7cHpkXi1dKVpnVT0vbXpXfChPNH52X0FTOUAxLWlIaThgWHJXKlMrKS5xKDMtYk5fbDRNU2JyaX5qY2JLeGBweGw9RHBpVEZvbHN+VT83KzdUcStzWXFYPzo7WUlNVDQ2d098V0hHdlVOVGRWRVJ7bmFlfjJiTUkpXXdSaEJ2XjdaWjpfcFBTYUIodnlXYGFkZigzRzF4UD9JY1BoaHhOc0tLVjcpWF8teCpVSjNbKD1UZnp2bjlOWyxFdFJzSE00cmpFQ2lgMCxla3QtZWNAM2cuTkw5T1dRLT1DVUsvWlkqMGgwQzFbSFsxdDcpXHBOc31gPzpgMGt8UXkwQWpEUi5IbDYxc0NDcUd+aFMpSlt5ZGZ2UHRMdHJzVnZscTZwZk87aW5ecmctK11TKGpISC9PUzZ6Yjt1KjdOdilgaG09W1M0dk1aKHxQX1piUGR6Z28oZ11KQnNEajA7Uix6OXVjczZHbH1YKCxsWWM1N2BNPVdfSl9WS0NsMztvYGFDQVdgQDRqNUhaeXQ1Z3dTdlFNZjNQR0RbeWJbbV9Fay8qSDlyX2NbMTgqZG1NUT1cSl1dWlVFZkhgTio6MGltbXpRcm1lN3hOKUErXEl4RGw1TCtDVzN0a2VfXFxdWExxQ1JHcmMtW21adl5eKG50eT1dXixoZ2BbKk1tUHUxaWo/dkB+S25IKmcvUEBQLi9JYmltbFRic2xwdFMuRWlDd3pNKUxQMkBwPX15PXBMXHpTUm5hZ2FUZ1F7SldMUmVNXi5gdmBRck59aEoxWGt1eC14LSlRKlNZRzRYPXdeKlhwe3ZTQmZUcSppTCw0dE59S0phSmRZa31ERWNRMEpWS0drWFJJOXZtfEJDbmRvXEVaS3RxaCswVW1SX2ladFosSzg5O1swbDdlZ0lBT2l0eWEpaE0uMXdNKzhnLThrSDo7LkwsMyt6Q2laQnQ3X0tDYk9JcD8xOmF7NllxQjZlL1gzWTZPKlI5LlVSZUF8amcvcUVyLjR2Wm5NZXQrS1VNZ0wxUlBEeF9Cc2dpPW10V21Gc0RofkVGcVtMK0tmTSo0QjZBblxzdX12YUVOYSkoWjksKn5rc25SOk06NV14bG11OkZ0YEZASz9oZk04PVNkT2Bqd0hiRX1AdU9sXDBOUWdSUnxRZjldMmg7K05ZfjNfbVZOKStvW3o6YFE3e25LRTZpL0YwMCkreGF3Z087bFU0ans/UW1YaG1JRW1JKig5VHJuWEZeZS85NjV2VFRtXHF0bi8/OGJ7ZDZZRm9EdHEyUF9kPUdkeT12Qk40PW0tb2ZybWlefi1GLEtOR1YtWzllS2hFOG5YOjUoR2YtbVJWa3NcMlxSVjM1ZzN0S3p7U0R2fHRkN1RUQX12VjRJQVx3VlhHQ15TSHsyWy9zeVg6TjkoLil1bDhpbVp9SUVbN1J4blFgKmZLNDhARWZzMm04em1JXzZBKUIsbFtDL0NddWI2TUc7Z3FqZGBRWGZjOG92Z2B1K2pnanJoYnpdXTVcXFNKXENSNzBRYU9Gcy5GTFNoWW9ucmZFMVtdODQ2SDc5bnhAeio/SjNyOnFPT2JCa0BrM0R+QWwqOjRbYk9wZ1gzRGg1RkhcSFIpR0NAS1lFTihFLFMpLXdrVFQ5eHBUXk5MTig/TFU3P2RxbV9ERTRfZ0pAZC1CKnxoODk7V0c/T2ddaGs4ZWpJaFpVO2tlVltucHFmNXdAMDFIZEZVREhEOmNeY3Z5LU53QitLVWxPaDdFPyxyd1heZHZ4OmU4by1AW3ZLMS16bl80dU81c0xcSEtqMlloX0BKQDd9MF1xfHheb01HXlBiSUMxelNgVUYuNE5fYnQqe3l2R2Jab0dCc0RxfHtxfFwwXTVvS3BUbkArZzBnSVJgTDVpUmhCfTYtYD80Q1VteldWZW54S01FPUw2Ty4teWFrY1hvXUErbFhwMm4vPS5Sel9kaDNAfFFwXWxhKC5GR2xLTjBRe0xhd0hHYHZAb2ssdUtlW3ZlXkZnWk19On45TGkzKSpsLHFnKlVHbyh0LWV1LDJDdjcqQ0NzfUJDVUVKd01nOj9CWjJfNyhgez8rLmVPOzBNLUQ6XEYvSmtOdmxESm9yc3AtV3g3MUJke1Evdi1fQ3Fae207eHQ6dGZRTCtHdy5NMDdxU0F6O2dWO10yWXEtcFBmQS5dSlBUMWUrNStZWG51YCxcQ25KXjlcWzNOazNdSGIvLkQxM2hub1Fkbjtyaj9HanZoTDA3Ui53KVdKUUFzbFEuNWt9d3xRRC57djJmbTZqSDE5N1JYWFZ0djREcDBRKn5TYlVCZGJFRnNZSWlzYDVvYUUqR0BeVy05S25uK29MWThpNHQueVZFe2hAe2FhZjdgU3BqXTV3TDtQbnlDVzU6X1ZrU0kyPXcvUzJ0TGFRdFp7fS9xfTdbU2h+NVsrd3xhdEBvNW03OXV9KU00Q350WmY7Zl9pNS59LmI/TXRkdG19ZDtgTnxpSWE2Ojs6XDROdkxocShMMX43VSx3WmxmSERjRm43LUM3UElFYHYzWSpJNUhJPUNZVFtPaF46dlUrVTV9U09dd1lcaGkwVkZMOTtUMmg1R2FddzBLX0NKY3U5VnNScCxoKFVNS08xXE5NY3FRfHY3e3lnMW9FcDtSY05YflIvblE4LUlYVzV6W1EtcXJEdFBIa2g0cW9UTG9ySEVpOkdAaTQqNWdTc2VOWzlCYC09R0xLWHB6d0JndCt4cURBN3M6dE9MVDVdRF9FWURJR2c/flBnX29OMUFvWkU/VllibEU5U2xLe2VgQ0NebVR7O05eNm1SQFltOzFwOVpSX2B5WkA/V1NMbHF0eFd8aU5ybTFHSDhmWD1jKmVFczdtWChVO2k9X1MtSGorRDtbX0FxNHowUDlqQygvKVxlTnJDVjVIa2prcy07RVYxOFd6aFcyYGFYXGZ1MGpmLGlBbWxqN1AydWV6PTtFV15zZWxBM0Ita2N0WUFwLjBjKT1HMix2R0RKRUFsOnk7YnJ1UW9tQkJ0NTJBVktFLitrLFpOYC5Zdjg2MDZNfnFAWFdXPUsoRXhKXjhML29zNClCZDpDTFVnOV97cFoyOTdcZnN8K1pTW1BQYFc0T0Q4NWRzSUxlQWJTXFhxTWx5ZHtDPXFuKlVJb1x4ekZISlYvU0YsTDFMNjFPPShMRmd0TzQ0UCpyLzoqOnE7d0U5TDhZaElcZDUqclNKKTpZZTsrX0hOc11bO2xMb01GVUxELDMxUi91eF8/alhgYEc1WT8uKnRQeGQoTjdCZTFAcFspWVp3VCw3eUk6SEpwWF91YG1nbFpiKlh9W1VVXUVeeixPdkNEfkRrMndHa19oUDkuWWlaUHJLLWJPKEEoOXxvdj17fXl+TEs2NTRhPShwRH1wOWJJaEs3V0lFd3BLMlt3aztKQ2N5REVdRHFOTWppLzgxWVY3ajRzeUlsMEZOOWtYXld+WTNsYnxlUClVWTh1XVpOaXBsSiw1QHJlYXFPLGE2UzNnR0ZPMXZWODYtLF1xVVtHdDVNPzl+M0hlX0RpYV1+aX4xXD8xbEVwWE84d14sLSxiSi5RbEMpMyl9ZHNLRURbZzJoeC52akVDWCttOjRjTD8zOy8wUn54Li8tREtQYnxud0ZNOjQ/VnltR102Q09tTEMzZC9kUXVRekNQLjdNUDAvTFMvZ1t5ZltZUkpPLkFLN2hWKEdHLDI2O1kqRkBbUXVnU2UoeGNiLzlsOGF7ZWFycVdPN0Y7P1hfKUN1T2VnQl5qT09wQWB3SUMtUm9iKUtZRSo5LytTY0Y6b286eFNiVU9veTpsYFo3MGRnVS5uXEdKbGtVKltqWzJZT20rQkl6fjptYERJZEJhX3JFcTtrOW5wLlotLWg1Yjo4cGtzZ1lSWXBXX152cjZvd1QpN19nYmlpYTotN2Q1WiosfEFJM2ddPW1yKDctfEhBW1VsaTFzW1s9TWlNODR5Mk4oS01JR0FKQTAzWWttOFwqUmczY0s7VVFzSV90LGgxXCphTmVlX3wwXD9bSDJYMVFQMzRsZXU1KHZxS0IpWFFUV1RxKE1FNldqcih5aihyRytRTVNOe3QrSWIte2RhYTl9anlwL1x4KE1KRnpNdkhBM35BQ35bW3xIKXZ1UixNdm1VTlQ/LU42RC5pWV58LjBNeVszNlxUWlMwNXxgV0M6WXdzLG05Oy1xcXVfN35PXC5vRn1qNW5bNWM0X2NcNihAUW1dVVQwOj1qNj9ydzoyR0l4RHtESENLNkVBa0xwKmkuc20wKnVcO3QqYmlOSUJFRi9Yc2FFSnk0LTQ2RzRgeE5ha04vSSpUY3BkUkUwRXhWWHtFTTg3MFpbO2lvOlUtQSg6XXhiWVItLV54SDlUMEJXREU/PWJicjB8Vj9re3hjT1hbWDRtRDNBckJndSxYWG16Y0NtZT1YUi1BOXA0ZHkqZHBedWRXZ1lBdWVjTzd8aV1mP35xb3d1ODtJdH1AeUNaMkF7OnpINls6L0A5Rn1MS1hlTEZoZjJTa0EtZ0MzYVllX2NUfUp2Sm9CdExDUzt4UjRJUXIwRm53VV1yQWVwcEQxWz9dY0hHTX5aTmFbd2t7Ti1OQU9nWFNkNX5NR1pEb200VkI1SUB5dldqP14rcGt4THQxYGEyaWNufXcyfGxfYzUuZ1JSSl1lQHtNdmBLS141Y2BuT3R4UHt2QWc/KzlgcTJZZiorZ1I1TmVEYUZ8UFBwbnxfNDBLK2dWODlGdC1GTkZSQnhUQTVTTzpwZmd6VWh3TDo4OlB4O0xITnpiRXJGOmh7bG0sXmZ9S0NrXlt0e2Zpb3FoP2ApNlJ5TWs9bkVOdmwwaWtob29lfXp0XEVZeT0uXFdVKD0xX2dTWEllZkZCSGh1V3duOFBMcyhnWjdJO01iOGJyX2AyWHV0cGVIMzo2UVZ5VXZdZSs/VjVjMjBgU2FGeGZZSVtcbWU9OngpZlRUeFAreUQxVW8yfFtPYUBIVGdJQzo0clY9RGU3bzF0Kmk4R1xSMDZQUH44T1JCfVBxOyxmelNKVXxATWRQNV1pSixbK0t6Myx9fjJiMXI4OERwQypcaEZuRnFSREFLN2x7Kmo2N2hQOmMxLkAtblRkeSppYUtGbj8uUlw/UlBgNGxgNmp6K3Q4XHk7MnddaE5NVn1tXXoxZEYvL2VqQHZGZHxERkRuV3tfN1VrN3gtL2oyMWFiQHBpb3N0MVBKYTA3bzFUXmJPW3NAaERMdWRvRT9kYXlvaEoqMjNqYCthTyxTRWg9fXIuaUNTUT8/bTVkUWp8cylpaGopX1RrZUt4KVVjdTFvSEFmXSt+aypqWkQ9TXdvYWFCekJMbk9JfDhsXnhXemp8YWdeMFNYTilDKGBAOlM2YCsyfTt8LF9RW09Cfl17eTpgWU5OUG9APVBjYEpUcEhZYF9NV2gvQ21eS0FWYDY7KF8tL1tIMjEoeks2RXZULUV2MigrOzluY0BIWmhcaWRIQztiLDhqWnhFd1BuXUF3YW8tXXVPPUVPRE18VTB6bV9nSFlrQHB0OF5ReFxOKH4rbERSdHVNXyp6XHNxNTA1YlBARzlVY3c/SzNZRlYvV1dUQldmSUw1QVVnMHpGSC9FMisuXXxlOzFHWX42Uy9wZ2V0UWtMN01ediw2bGk1ODl5aFEqdWdHY1NPeS9Qejk0eVFVR3I0bShjQ0dOfXBKZ0pLOjtPK3JvO2JlfEQsXzNMflNAeytgKU5CSXV+XndtfDh6KUM6PXpdT1REP15AUkZEaTd+Z0o9dl97QElDPXNDW2c9YTstdlgzOlB+fjBXbHA7TnU/LzJ5YyhXSTFuTzk3Nncybmh2TWNqaXpzZytvSFwvQH5lN3g0PShJRT1nWHo0OGNEXFtiWGlRMCpmKV02UXNgYFpSalA7NWReeEM/MzMySUFDWC1tNUNPZ3RVWXBpKmFSYFUteXp9Xi58fWJUditXcmN1dzkqRlgxPVAqKVZ5KDZNPzs7TjpaeTJZLlZXfmkxU0ROTXpNcypyOUdaMmpeL3JLNER7QDFhbl5PN2k9Sk91cUgxWjVHSVZMNVsvP35zfmIxTkhucDlNVlRUVGFZVWBCcUc6VlNMQlJSSkVUfkJhdHxcVzZwUGg7RW94UmxPPXN+K0AvfXhFXCszNF5FS3Q1aUtGYDVGN3hhN0RDdnlacmhYVDZGfVx2TkVTSFcrOUhwYEZycDNbaHN5MkE6VW4xQDpqMUlAcDg6TVpRa355cndgQkNsazdbN0RYLEcwYXFGMVJpQVdoSC53V29RSC04Z3V4LG1VZz18MWlSVC40S3s2MU5HfElWTTF9Y3pEMGM6Xy5NNH5xKG57UWxmaTlfXlBbQkF6VTh+V0F4Yi1sW21EZjVAYlV9bUhhMHNpdU1+PUZQbmtLfjlKKEhAWWBcNk14Yjp9P0J4al13ezVFQEAobnBSMmR2ZF9bYld6WEo5WTh+KUJsbGFjY3N9R3x5LGU5bE1MLjtcQD9dXDhLNF9ZW1hTLm5uaEI9Ui9VP3g1SDR3RWx2aCo2V3dnKjhNYHFFXntbQXB3LXwwZENmOikyKC1odztaYXhTb0JfYWUqS3FdO05+WHxGXTFlcVpKYFg/OzlFazteZmlTPzctNndwQDlWajFxL29lPVFgUUdqYHF9X1JMYXJpM1c4VD9kTG80Vi59amA2K1BdfkJKazcpWSk2YEJNdXJyRzN+YlZNfHZcY1xJKHEoSzBxKihGWCpCO357NyhnSGx6Olk6QGZ0O35idHdiNityN24oa2Yxd0VFZERZcEctY1FbMkxCWnZeTE1vQW5tTEV2Nn5JKTsxPyxme1NiTzdicGJEO2RdYit5MUBJQXgxOm9CeTtLM0leellxVEMpYnF8dVFFcjNdVXxSSXJadHJsKFM6ZnsvS3FKXTVfTUlscmldfDJ1Y31mKixWWVtOW1dOc29kTi9oRlxOcGBpVGh5WkVtbjpOWTZ6Lk9OXVpMVVhtdHgsNHlzS2FYVXhLO242Q3d7VStuYUNccEZsVWcwYXA4dkJcOW9HcX5HezZPNHp0blE4aWByO34xX0EoUUsqRDRGWF5QKFRjOH1WM2tuXWNkY0lgYVtwZGtrfFFzSlAtLWBSNi1ZYi5QK3IqWVB9MkQ6biooQFJaYV0yOGB2W2M2KWl1NVBKZyk3OUB0XChxa35XKWBmfWAtSXVZO1NFTT8zaDh4P3Qva2lrU3BbNzArMGw2Xi80bD0xcX09azV7KDI9WkZsYzFhUT84dkgxQGlRP2kwSjR+dFFEWk9zbi9NcFtMQHw4U2pdejUvLClFQS0wWmFNYyw7QWxKaFZTez13YzZfQmNNZC42dT1uflpPMlF3VTRvLGc0SkxLTzReLDN2P0dCP1g2Mi1ZeE4vVlg/dHQ1LnMpanBOYmxecFxvOC5RaUF1Wy1raVA0a0ZdTUtyS1xCYmZVSH05U29FM3ZDNUtDLlx6UFN4SWtvLnt2X1Z1KXRgVFtsYHNMdGhGQUBiVV9DRkYtTTt1djl4cGdxYWN7Zmg/SXk1QlgzWjNDKktqL0RBNEM9UHYzVEE1VHY5XXJ+LDRCKXNRNSorbFpqbDpMZUcqWFRPQ3d5LVVcRixye1Mzciw/QkxxdytzTEI3NW1Uez1bREg1UWVJQGkoMV1wVTdHTXZvQXxWZGE2NFV1LkteUH05YDZea2o9clhfRlovO3FTQ1FBd2BbLHFHRnJdRVh7O0cwKVBwTUBESWB2LmQ1VGpJd1NkKytMMXdaajhEKnZcUFJWVVkoLG10ay5EVkoxQ1xWYDZ1cll4bXBLNl5AQUx8XE1INC1tL009N2FZMz9UZzhdaHE4S25HN1h1RU1fcik5K2ZJU2ttNEBMKykqMzhNSloyUUV7QTZDP15AVWZiT1lla3xUYmZIKHRPQTh1c0syOTNnZntEY2pGL2t9d09MXE9yWXhiZ3MzfjRKUzNJOkN3KkxXanBBZkY6P0BeMFMtWE1bO0lFajt5QUo6KGVMMEdieXQzZVguUEsqVXVMe1c7fmpbXEdQMkl3U0J4ak94RFV9OlU4U1pycVJVU14tN1x4UVZ8VmJiUnZONG9MM0xNLWVBVF1zRVwoKWc0MUBjSjg3aT0/Ti9jW0htdEg7az1uOSh8RFxsa3BsdmhwNE4yMF1wU0BGKl9mZTJxLkF3QUI0WHg3TmRMMCg2RldzX2xyLzc/dHZpRkdXYExCOlsrK1N4WzpbRj9GLi5bRy5kekJYU2dhZk47eUs9ZnJLWTVmdFlCMixzcShjKlhtei9Lez9MW1FLQjU3M0RZZStCRDlodUFHQ0ttO1A9enNsTn1XXTQtfTE4R1UueGRqVE9NckFqdXNIR2hxL3leQzYxXUQwVy9AOCpvXEd2YUBpdHhLbmFAO0g6e0NiS0U9OEZnKStodldFaS0qXU51VH1GN0U9YXooKTBlclA6bjBOcGYobnI2Mi86TDJ4UFZudl9RL1lieVVzZUNeLT9NREZ8Q05RXjJ0K2oqbUJFWW5GdmkwRzdLN3pQQjdFNipvQjorMGVmYmdPSy9CKDVfNH5ZQnVAYzliUixnTWQ1fGJSKzN+fU82enVNOk9iYHJDVWlQaF4pW2VLYXVPSi9BMUIuaGRmSTlBTzQ/TU12NHxiNE9hZjsuaHpwSl8yZEpmcmZQKTdKOCh6Wy82S1M5SkhAa0lESjVKY3pwaXJvMzRFczJ7MDhDVnhsY2dESXZRNl42b1p+OjszPzVaWn5eXWA6cFs1VVxVSjo5Sldhfk94YlJ5dD8qbnltMEtjem4oLFF3a2ZPaHRBSFxzflVzNi4vVF1kUHQvOjdjak1kaT9hKXxSczYuVWZnTV5NeUNGXGZxZnNRdFVxU1o4aGxwR3h7RytPXXd3e1BRK1hiZ1RmeV9UcERMK3wyTDlfeGVLXmF4SEtlPzNOUm1hQVJuTHFfZ3RMfDkxSnNCMEUyYS1fTG12UDdUVj9UXGY/bHRvLlpYKl9tLGN6Mj1vbU12d3FCXWddRTR6cFF+aUtVP1c3ZHpiXSx4SHRfWDdrYWMwKkRUQW9OMXBHVyhlNytxdnZZYkhcYDs0REdjendYXWlKRHkuLWstb0xmNFsweHFnNUd+cFBqNEFwdkBfd1oxTVp6OmZuTG9lcWRaYXh+W2tLKTlFLkoxWEktNEpWbFwvST1IbGBOZlcwLUQsWlJ0YzM1R0ppS0pFWGFvQXNeajYpXVMsZVNBc2ZBKUdRZ0JbK1hWeSxcMlYuakRQYT1ZcHRXeDJ7T1I6XV40fE8yXVJaKE5eYCxYfm1ReGUoYV95dHNFbEpZLFBYNy43eXFObVBReDt6RixWfmdNWEhZPUZKaD0sMix4YnF9VEh9XVlBZU5qeHd2K017OW5xaXdcWl8uMGl5U3ZaVTRDYm5gMUNYQjpHbzRicU1ia1M7XGtvcnM3TX5DLFdEQHlEci8/dlwsNUJFKyhkL2Y2NEFWQjFsVEArK1BDL35aOGA2Rnk2K1BBKGcyZWxZTjVtUjltXXBhQTktQC5uYXZ6MzA6cjhBSVNETGwoNDFfMShucUF8LUg5c2NMe1BFRHQ2eTRvcWRHY11hR3BYV3M1dWY1MT9ufTRtVz1HMDE4ZihGTldEN2U7MEB2TkZ1R297U206O2YzbFBkWVJ7Vko9enI5dXxgXlB1LEQqOm1CXmw/ezdvYyp4ZkNiYmgreUdORDRPY0xVNng3K2hMaFB+RF5sQz1WcWhjS2kxVHpOPSxObHJ2R2MoTmdOU1h4XG05VmxYWT1Oc0JPLU0rV0lfYVFuZmFIZi9bWWNnWHF1PzRCRHgqVkBCaGs0LkM7OntTO0BqZjZ3KTkubntZem5rVihhfFlOVj9BeVF3QlhDMlhmXjhLM3dveUtYenFQMl0xMUF+Tjl9QWI2NyprU3pkSFNjNlZMMWBWfS0rO2N1S3JkYGdlMyx8VWVTV0c5LTpyYk4pVVxqaywoPTJjakpOWWV7bUZoNzRtSHU3MURzNlVVQil8VmlhVChVMGlQXStCcWlLa0x8b2p8X0U/Y11IKWVOfjJvdlp7OV9fKjI4YGUtM0QsNFRyZXspXTt3c21JQzJccD9dUT81Y11mODJaVF5MaVl9ZldiYm99cVotX1dXVyhdQ3FOKV51cktJZyx6KmFdMC07bX5WNUhEeCh9US0zOmgzRFF3KE1XMTFXNi1QbEp3akNFN1pfYFE3fnVlVDhAO1xVbSpwVS1dWzgxLU90d31bP29jMDh4LnAxcy1NKjZiW105ZE5ybTQpSUhwd1k5eGtmOHVse09zQ3EzMlBtSS80flplOFo2KXc7NzQ9NUM1PWVNdmFnTkhJNjtvTVhLc01oT2xkL1RlW1Q6OUZJP1hbc2IvdWtwP2d0L1owOHJQUU9AU1M4Z2RhVStXckQ5XVxNZ1Z4djUxdipQYTtxRSs5MmQsKj8xYCk0KnZSQTpiMk5qZjRBaF87QippK0J7Lk1hQVE3MWtgVHdEZ2xQMHVwOkVpdFY3azVjKEZaXywsXVtAUHZibDNjKm9VaEo/ZGNeKC0pK3hyTS4zO2N3ZXJfWjMvOFd7YjszNHNZRURaOytVbEA2LXg5TmNvNytGcWBaZ1hfUnN2RlBvd0JZZHB4ODtZcj89QipwNVU9SnpkSXpjc0lqaFtUU04zdEBgRnx9ekxiOWNia0s9OFpiKC1rY11wO0VIYlgzWldWfFZ6YVppMzN5QndVbT1Ge0hzXFZ1ZFlTd0lPdXE4enM4cHB+Un1mXHNnYzB8TDJbZ0dUeUtLNEpDQUhsN1lHUklMNVJ3TWx6Qlt2OjF3TDp1UWRZXD9WQnVVa01SZUpHfV9lNUwwSFRTcSlxUig7RyhWMnErQnpcdCktKFNlWHFeLDRVY1ZVN1xgbVo5LzRSKzddTjVfKldiYlZWdTlKTHFnNUtAN1xkSFVFdmlnTWJSZVlWQW0wb046OztVOSx4KjNzKTNmUDhPUVteXktxSFdNdXhycChrd2B8MnViXShpanQrbUdrVzY3KFo9PUk0OHdEfWp8REhDZytReStSZW9gOmdJXmhcXkljMzBLcmw1Wm1XXmN+ZFlNNm03fk07YTh1XWd6WGctaUpkSlVAZ05VZzFLeDlDK0t0OCxnd2JKNVpGaUE0fGRoSGxlckZCd29pXkwxdC9jZldDXztvYFlVMl9ANX1rU31uKnJvLld1QSxFUkFjU3A2aEtMSVBzO2B3c3JBODtWUGtlN2o0b2B3cl1vbmh8aWxcbDcrKH42LWpKentyNktHUGwxdkY9Sjpya2NxUWdBWnQwNVcpbzo9XGZzR1xPPXUtYGx5MkM7UWQqRCw1e0coMUJKTllvK2xFL3gsLV1OZlZOLjdkWDR7cmZianA5VlxOfDo/eVJQYmIqMUxFMzFodWJiVyliREFoPWUre0NLemxHOEVdT0syQDpcXDlkXFBgbS80KDNSTUsqN2RsLGNrOVsqU0FefHl4QUpqckR4c20tZVlyVGFeam91ZSkpYS1aQEFfSFoxLjVGbl8vRF4uckRIclNPbEV4NmBDUFByYmhyXHtWRlZGKjo9KkFAQko/YmRANmgsLUova1R+KFR8SVQtOERwcX5rTFdbe2xQRXhpcTJrM3FhLmJeTW5oUFRFOn06OjVaZ2tILWNBRDNEQ2B1KypiZz9ObGBvc2FwLzZxKjRpZF9SW0ZLP2AxYWxUYyguK0l2P3tnYXtrcGZzMkR0XjttLTZLdG98RG43WE4/USxqc0BjMV84NUoremZVeVlzREw2P2Q1XExXczAwMio4SVhfTDh9LS0/YSl3KWRFN0Eray5CSjtkTUR2LVhyKV5RZy1+QVd3M097Oz1RRF85UVBWOnY2RF8zQEhYXE9nXFRfNnNEXm9aU3FMfV5AO0Z5KWBuLTE3bFApQzVpXFVITHA9OGxQZS9CUnE1W1YtMTYxPSt7eShQLilvOmtcLn1dV2xbaCg2QClteHdbMC1YNVVPa2tPVWBGSDdLLXEyRSpZVl1OVDpTfE10dmoyalNgbFFTdi1lKi5SP0k7UjA0RzcxW2pzREt8PUVXbDB7P21RVEpDOkxfckA4WyxzUW5OdU4oX058cj9iU3wuVHF2P3JvL2pQNjNFR3cpL1poYTFkSkpeYHtaNjF7OFw3UDtAVEcrbzdmaV5ocSx+R3pqKit3TUBYOjFzcEt4KE05RnpPa2JYPWEsQEotSU5Wdn5kW11gLndtMW50fnA/Nn5yQDV7VmxUSHdsa0E9W11gTnBpY3ZzeTh5b1pJYF53cTtcX1o4QVhgWS16OVluai9pcGd7b1ZKW2g6dkVMeEx8Yms2OGhaRzdWPXxsLl52KT9edTdOalk2YHJdX3hkdl9jY3MzKSp4ZHk7e0E6YGhpLy1POVB3bCo9YXwyLUY7TnVcQENAKkM3LDBmRVQuZzI9RkheaklDLzdgYk4qO355NVE4T3BXSl1lTy5jVjtkU0JVUX5gRmRMfnc2NlZ0S3U0aFJ1VkNSYHlIRy1rNkpsL0AsPWssLUpEaUJ8OixPKnNQQkdjNmtjSHxda2pwYEFST2NqNURRMmtSS18/fFZCX0czYD05bTY2XXRlb15RT0JheGNQOk5+LytabHssMj9tSGtzdGswVHVXelw6QixiO0A7ckNhOUxXRkAzVlh3YlI2c01PMVJIOFcuWHZiS1RGaD9ee1ZeRVQpXV1HUD1FLUp7Ri19bFlEel1pOTA9ZSlxam4wYGJ9UkFAeWw5QTFYSHBvLjhbUHhoNS4qeSszditJTG8zWngyM15dOVY9dHFmYUpXTGBSP2kseE5VMEk5NXlQRDhUbmNUa2Z8alN1aFpaZDY0e2pMRE1rVTM2ZnBBOmV3ZzlQQHByXVt4ZyhXXDQuWlZkXTExTVlfUXQwNy1qeDRNfntnXVB1XF0vOzVyLEprNmhxeDJPPS53VURLd3ZzL2xGXUJJUllIbTN+K1B7b19eXlByOHdFNFdONFN1ZnJgdlJQKFxpYjVhNG01cSxmcl42VzpiOHhlZDE/QENLdW9mRWxFXlloQ1lQay1hYjYxfXNcMzM0ZTVSdU81LDNnYlpZbUQ5Rm82N19jKU58NF15cm1TKnNVU01sNDpLcWB0ZWZ3dn47VS82ezlYODc/R1s1O3lMYEpqLElbQWtBdztQVXh3Xnp0R25tRjswPzBlen0/W0NpMUF0TTdOeFkoKUJLMmZ3OXRbQndfR0R5VHRyXXp9ZEFEcXQ5Q1p8N0dWeypjPXZ1aXpqOig2YEFfR2ZRSEUxNVNNcnp3Zkc1LDtEUG10ZTluTFJXOnV3KCpFWj1Fb3t1dGYzMitVUWk5M0MpPSlPMEx6OHw2R29ReTQsRlB5T2J1WVVPUklmSjl8U0trTl5oUi1Ja3ZwfW94L3ZzdC1FLU9aSm9NKUhEN3Vabl5kaW11R2hWV25rb00zXVd6MH5MOHNJejZVWFl8c0FJbUkzXFg0MzZtNXd7MnMsUCo9UjJPOzE3WGdYSjZxXX0sXlV2XDEsKkJGKURdWVVgcVN9X1pjRzIpcDtDYFhffnVeN1R4fEoxQjk3Ym52UClgSGxURSpbVVU9OHs3ZjAxLS9cMFlgV1dmQmxaS0VqUy5OZzk5WXlqM0wrRzB1anRESjc1Qzg3YClEXF09eVArcno7ekp0b0dhSitLNSpZbCw0Yi5fLWxGPUJ0Rll3MmlAQGUyNlFXfH07fVN+RUY9N0RORWZRZilbc1hnUEdDUVlQNnNOLnlVfCx6elxyMGd6XVJLYENgMmNZfTYrP1hHUlpJdFVcVkhMalh5ZnlTM0YpLWNZe3RJMHUpW1NkVnhtcj1DfWJwQ3tlYzNHSFspVVsrYXtRLjtrbzkvcCpBa0hgQlItVT1pdFhqO2hfZzJbXS07Nz1DajFkdTJ6LTtMNklKR25XNC1ydlpyOUg6UkVVLGg/cFZIRi5zOkJVK1QseHB5XEJdUT0wdkxBUzY0KSlieGI1am9LS1tgVVRpWjViV3hvUjRnektaW3ZvVjZocGJcOzdmZjU3YltuKUo/d24oXFBqYmFaU2ZabXs0ZTduYVRJekRoQWJdRmxObTFicVx2bHlqNUh4ZmddK0A6ZUE6ZjcxQ3FKU1g7VkpYPVg2aEBkN3B0WlI1Ozc3RClUSlNJZW5eL007N0ZDbG1vTXplZTIvR0NmdG45L3lIXVJrem9OSSwvdn5DW15NU3pySS9UcnguRWQ0PzdTLVJIWElIRXkvRU5KRG1rQkkrTkM2cFRGNlBMbWs7ZXMtXVZvLnQvVVpba1lFXFI4Xks3R2tbdFE4cUtiTDAsLlIpO1UpZnB1W0wtUEB4MGpZVl5PLCwwdk1kYS4zRENTYHJgLH1xWlNtV1IqUls3MSwqX2B0bkEvSzpDMixOZ047aH54L083OlVOcVVNMSlTdWh9b0A9d2EodjA/UX1KMixWYXcrZEpaQU9XWWg5UEdvUS94Xn1PdlRqWVw/YFxZZU1oKjVWZF14TkVBalJGQlBUTzJKaVdyLC1pQEF1aHtUM0dxdTFuK3sqOStYNT9xcSxaNCl4MktAezkxP3d5TEl3Xzc9LDBiZl9wXj86OTouemp6fFV5Olp6dHl2fS9+QVlTN1taMkh0UzgzP3hTdEAzfjEoaXlDTSpFQ2B5e1ZAMF9bcjRoKDZEXUFnYWJqdkwvcnNVb0RBXVJNN2tBa3swYXdfa3VpWls5Lko4XExrN0wyRCxNaW9VfjVvN1VLQHgocH5wOkV0TVhKVEV9Kzg5Xjc0W2FrQTdJfWRsMEZFejQqUDl4TWRRNitjSntGNyhzPVNJKV46aWc4OEVgLTksajdQSzg0TmUpOHVrUmo4SnZ5UEtIZEIqaylLM3t6Tjo0WG5PVX40aGwvbytHcnAoRkphZ0RyRFdCMVExVDlYMzIpb2NxNWdCQ1N3KXpQXEJANjtscDVNa0phfHcxNFRDPXllQlVVYG1IRm5LdDhDWHAyNVxhMVhvYV11VWZGcFpYNV1aRXAtbUpnLFBtWG86PU0saUw2MDo5Ki1BRm5GR0VgRUF1KXpYT3lnaT1ncTtpZWJ3eUhAMHdtezRcUWlHfHhFLzpJP3Ftbl5aWUIrYi8vVnU/cmhEYz1kKG9XNGFcKTtmMi9zVGpYUD11Sy1ia2NnNnA4QzdVQmgsW1xmaVJvfHhodE82bl07bjBZZSxwMm4yTFl9VVtyTktoLVsqfjNnLmJeO1ZUTTF4O2hoPXQsYm46Ry9Zay1MTX43K2duQkVnc2lLP2FBfGZ9cywwbGA5TypuXmdrcDNJVXZuQy9tcnZ2dHEtQ3c5QXZMYi4ybE1RZ3A/NXBIUi1aLz86KU9UflY5cjdpOGRFdkxXRHllTkU2LC13dzVnYlksZGZTU3woSktlVS1QNigqSC1ASTtQe3w3UDBkbjFnS057MGZhcVxYREhbPURkckxmLlxrK3dWalpMcn5lWHtLNWVyeEREbXtmTHd0dmpAOE1tX0JXRHNyVW17Y3ZZLDgzLEB3MHNrfmdqOkgtTFF0L294OlIpUztLQCs/eTYwUCxpV2lvY0FgN2oqbF1zaEtOMVRbSmUvLnE1fEFJOHdAUFUpTWFGVnxmL09IQUgtdk5NXENGMmxpeExDOGkxUz85Y3lUM2t9WHEua2lDT19AelJ7RmlMPXxnMzpybjpzM2oqdShKWWZsbHYvWENIN3QwamFrKnpxb0g1bm4oQktLenpXWlRRd3R8cTF5LipkcEteVGZRe1ouWSpvTExDaV1BXmIzaUhyc0dqOy5ydFNJZT87TlJYY3Vse0NoOlNSLkBUQD01aDRHZ1JAaCowVkZKZ1FRUWhlNT1LTDdAUHBrQmA/cEN0MjNYYDByXElHL2dJakxpPXlVbEFjLXtMSFZrL2c5MUt+XS5SZEFJNXQofTNSKnlOTnFKNGpoP18qanRNQV0tQH1nXz1YS0pwU1xhelhoSXFoVjk6eXdZaik6MEV8LlI/MW5yUGV8bkpceU1zaU1yVktSU3lfejtja29GTHVOakBsWlxBOlUyWkEuVVJ4K0xhbEQ5T3FIMWlgez95amdCRHM9cksuSVs6Q1FFQmNuYXgrdT9vaGg/Zy5+XmBfNzZUa0J4SkFzX2Q4P0lOV1U3eTRpKGxxcjRJK1VkTj1tSFhLc35YNWxHXVJLKj8ueE5AbnU5QnE0K3V3eH4rWmg2UHZ+cmJTKWxQWHBEZ2MoLnNAP0x4a2R3LX1YXm9sY2IveTBhMmhsUmkyTntwWW54cEModU1qYzNiK3ApUW58M2BBSl11XnJfNnJYdTBPOE5aUXMsWWp2LzFkO111ZT8/K10vaD02VWR5NDdET3g6b3cvYGFtXVAvfXIoO3ZWV3wqM20rLTk0YGtPSWU9SjFJKS14LzpWLXx9R3VLWUhjVlxqb3NzQ0VyRWE3ailrNVVvezFScGY4OFtgMllzaEp2TUpIZ1lwXTJQYDFWZy5fLDpqTXJieG5LQlc9TUdbUFhUZVBYXk4tZU05fm98blNQSU1OXWgvNT84Oix9cVI0bDBDTkd9bC9nZ2hMQ3lVRWIqfHVqM1ZHU04vZjM9OFJxRXxfZ1t7LSxOU0VnU3ZNTkRSK3hfVG1xQl4xZmVnXzkyRGsrQHUrbG9hKUdJU1p4Vk5bMixceUU5aDVCZkMpNjVfZl9uV1E5Qzk9RytPPXJqXDEwSGZPSHI/QDlHXmdCfTBXez92eFxAT2RCKEdAXShyVWZgYS1lTENfdV52ejJgcU9qN35gT0deQjk0RHNKM1Q7NWZCVHphKDRrSWFHW1JBQipCQDhaWUs1VGBWSlR3KUhEb0g0KnVyWGhYPV9FSHBAcm1AKl1xayhHKV02OHJJN29PeFRhY0MpXG9xaEJWa1BRZ11wOFAye3g9VFN3M1MzR0Y0QDBab2pCY2xEVUhLKGw3LH5Oa0VvYGRLYkZ+RVJre3VnXz0vYGZsaD1tTVpxRHowbkp1fERSMltQMUMzcj9wR00tOFU7e0RHSjlgYXc3THBwNjJMQm94b1Z5Vi4rVk5eN2tXekF4LSpuYk40cTBeUS4/U35sMmFHRE9VSFA9Xy1fQn5ZaXFDZ1Q4SV81Ylo3Ri1kKWY3NEtxWmFWdVBUaTlfOUdvQjVVKVdPQ1lqU2REWHVgbFRTMEFQYi9EckJGSSxBTzpBNEhAVXBrbno0Zyp4UCxnPWc/fUtrMy18LlgrfXhJNk9vLEUxamxAT1BgLywuYnA2enAwLltdaTpKazc/QkkoYy9VU3ZSVDpRZjF0LV5dRWxUYm5BczJManZBSHcrU3EwSE92XUJuN0xeeDMyZXpYNm95NDdGRkledV5sO01BbHBpNnhXWHhWaFNEVWNWRDNhTUROXn5dUjdSbmhBNns0ZFFhYGJOfS1cfW52dlFAS3RDdzVzRlJqXiwxWFpkYHtPUVN4N3hjSV1id1VaRlxXKUlHP3cvdyxXaHtXSUg0OmVOVG94ekJfPTFXYUo6MzhqXkhqMXdNQVcxWzNVP3V9Kk9mV3luZ313VX5XRS0wNmE/Y095Tl5SMEVQTDAxZHVkdS9Sc1d2SFFbXzdNUyxTdnx1aXZJUGt6bHp7KFFQXVFLUH1OQWtgYDN8KjMqX1wpOV18R24/KUp5OjBQeVdWKE9iV2tFRztKK0ZTYXYsNjdmLktEQC4pN1pnV3NhaF8xe0VhMzRYOTB3LEdyM1lYdiouU01jeF55UHFZa0NcUStDK3JFT1dEek1oY2daPW57Sz9iNjd4dC9GXEBqYW0zeD8tamRdW0g2RlU9S3E0Wi1DKHxGQVNLYlNvY2pWOk9ASFhlUEssO1x0M216ZGdOcFZROmx+SktReFx7dntBY2F9dzp6RGVGcHdQX0NCO04vYihJLTp2U1VBTFBIenB7UWhcQ3JLMlhkZ2ZJT19KRC9xLUtYZTFfY2VBLnJ+fSlNRThRMFVGWGB+T21mTip1bVF+RVA/YGBiT3hTYGh1ZjpTPTp5OT9YVEk6ekpRVEExNzFbX09Ea1ZQN1JFOWNNL1tfazhPa28/ZUZJcH5scFxQL1dHNTNOSDMuLit9d0VsVDFHKHBAKHE5cFVbaWpUKElQNVo4c05AaEdAbjN4blVJN2t5Xl84WUA7aTBBdFd3M2YsbkVpNWxeKkVRaEhwVlVLTGB8eXo0Ulw0MlwwbTd+YCtzWSk7MDVKOC47MUx1cDZeQmwwcUc/aU4rMmNtXXJHLXV1UztibXVAW25lanQ5ZH0pRFUtPWU4QT9JQn53THticFwtLlJoUnQ7REpDL3l7Ql1wTUpMXUlLKHtfTlUsczduVkx9XGxkXytJYFV2PXVKN01YKTJjfDVnRHFRUHoxXGUoQGFTQl5cM3tocGhJcVFEPU1uNH40S3UxRz0uOUk9Q05YXnFMaGtvVlA0MTEoYjRFW2k0XH18KC9JeFYpP2hAeDhqME9Ce01VLUJocUVVcDlseVFbciltNHtIPXleSTo6S3l3YmlKQFxHS20zV1lNV3tGRlJXfkgzNnV4WH1PQC5aO0NUey18NVV+Nm5+ejNFaVhkQkYpd1V8NkMudCh3LTNrbiwzMXgxb3hGSnJqdnNXV356OksybXEwUXlsZFF5UURTOzBfLlhLWC81MC1WbVdyaF5xPzcsbVRZfmx6VD87XHEzVk1JMUllXUptNTV0OzJIR2VyaFQ2SFlLaD94LkFPfG1AWzNhe24rMHZIVXEvMFFIZH03SVJXRVd4fGpuK3R5KShWbEUyRGE1Myk2QV98ekUxdlJiL3dpblxrY3ZiUXlCazs/WUFJNnFAUzFuUn51WzdRWkliWGVjQF5ydV9ILntqZHpwbFpGYD8oWU47TVMrVzptTjlvVkdVSHZYUWM9NmlAKis6dXRLWFNUdDJQWTRYdDR9YlIwWX4/PVtVSExYeSxVLHxZV0ZRL1pcRGNRPS19U1xbQC13PS9vP01nXU8ydUZ7XG9NKzErUFxJOmpQfHZBZFl0UF9JX0dxa3MzWUd7Ylk7eGd2TzUzXkNSOSx0P2hWXlYpOWEsd1tTeG5QYlNvcXAtY3M4UCgrcmRWc08pfnw5Kjg2ZipneV8/bXkpLXJaYzBHL3xTKFZPQnx3Z3lcQFgqc29vZDIoS3JaTXQqbV9KYG9PYS95XlFhaX4sOlpUT3VDfHZHMGdoaVYwMkBrRDUsQitvNlg0eTNdW1xrT1ZlSEFgYy80alQyY1hmUzY1OHNkSzJ0aXswZF10U1dcYHZvVFRLWS1LLTVBb0JLZFxuKnl+TzE9OnNYZjZuZXQzKFd2SDBZSHFTRHQ/W15aRTo0cU95KEdEMGNoWDdgNHFcND00TWd6fS1FRFFCdlZGdkBdWik6eGJ9LmVid24/VmM2fEI7Ljg0bm59N1hkdU5VfFRyXV1ObWksK1FcW3ZCOnpoO2t8XzM9fDl7VjouXVxcMHJ5Q3p2cl1ITHZVMml0Rm9ddW95cmFUMElxalo9SWFYandRPzIxaXteVlE1VGtqQm83eEkwKUd3R2Q0eXlsfj1EXml3L09mc34oTE5MP3NYRzIrXn1RMmx4Mmt6fnhsaGoocytAXz9ibzpmeTt1YStSRCo6SzBWTDdjakh5VT0sVXQxSzVafmwreGNvTS1+fEI3ZVZfRHR8bVtiZktFZy5qLFlTaUQzNlM1Mz9aeWE0ZVQzRHl8bkpkQSpnS2R6fWF+bVUoZ3ozWixqWFJQTmB9aXJNOT84cihPWChpTFFrNG0sRUBNeWJUe2JraH5MQXtxPVMoT0BndSliL0VKfjNfbHcxNm9ZdFdvV2g3bE50RHBkWW5kaShLWmZnaVxsfFtNal1eREowOUhZNUk2SEhoOVgqXHMxR2JMYHc3fmZvZzltQTZFU3prTzZ2ZTJ8NXRjVjBgNVNMbWBzUDdzMylPcWp5WmVqRlMrR0kzY3hiS2JWW1hgMDAxO3NfVkczdDBzQzcwWXN+RWBjYklBM2ZsZVtrdGBMYF5rclpCdHMpTkxgP11VUnhGZXg7fl1kWzEpajE0KXZRcntiRHE5dGE9eWh8M2RXL2R5X2ljT2poP1peLWxsVXFQZVo6bUtiaXJfQ0x0Oigtd0NIWnpSK0szZjQqLGVlS1QpXS43RldjRS9kOFowUGlEbUZDKksrQUFMLWI7VHgoSng9RU1uV3U3ZS1ccVhBblgwXVRAdkBpLkg2VU5LKmxHXjJHNixKM0tQXjJDaVtQRSgscGhkTnt8bHVFeS9ibjRCRFVbVHMoR3JgbD8pQjlRRFZOVi1ZdVBtclJZeDA0Wn5ST3goelspbVouRVNwL0NbYWMwTyo4RW47SVJcenssXTBBWGUuaGk1Mz1SLz9XYnhhcV5nXGZOMGcsNmAwQjt2Nyo0MkFNU1NRSTF4bHE3fXtzKXdyTmNmNV9cSkM6MWhySHs2b0lxazVbZTpIaT1wNDNgenliZkhsUG05flNDQGZdOE9tfDQtbTA5eE4xYHhAZldqUlFNQ3pyTVZfN0JUej16dXpHSk1UN35pamxNUk1cRS1nQEhUcVVZeDN5QkQwSztbUUd+bXU9L0RSOkUsLDB6RVFIQk9ESEl1P1R7QlRfYmVCN1Jxb0ZuTS8rVjhkaXJ4W1VaTDtOVlBoKkhTN0srXjF2Qn59UWxmcXNRdjZ9UjAobnZyaEdJUChzblFhfnRvQEd6Unl5VWhGTCpoKUdTbS59R3dLSmRjQmROYmM9WEc4OFA4b2w4VmFGQlVqdDk7bzReeDUvdGNxM2c4bXVbQmRddzJmKTtHWixoVFpQPyhUNGBdP3VdXT9CNi1tW1spLkE1bWlmbF5NajNqa2tUVGMtYkdTVmZjNEs7KzlPLGVjKEpFfVxMMjp0S2lbdHBdb1kvNHcySU1iSkZkWUNLYSlnfUpUO0xURWN9N0NnLSpVc1hJSW1VNGFdSXt3bV5MeVBgK3BJNWBFVmJiK3x9USpzSVwvbHNjV0V8clZUQlhGYWp3ZSwrXzR8bn1ZW34xbjsvLGxIV3FEM1BZTylabj0oKSpIfmczOTdtZHh5OUh4d1l3MTNePShCOyw5SWV9REB4RSxUbnZQSG1bVktJenQ4S0xzMik3RzkyZ19CdFw7LHliOUwrUWpDbSl6VlpEMkJHaTQ6U3d1LGRXQTd9a2ByKVlsV0pTZW5eRUlwOms/cl4oenJxXWVkeDVVWjtSNmZQTltEd11FLil8bWReWylzfmVtYGssci9oSm0zX1lPdW5PL1AsUmNlbnJUYmstRCpfeUxxQS0obzAte11COWQsbi93WTopKTA3YnZOK2ROKjFASExmMGowQlAuRDtARldmOGE2OjguKFtnQF1EL3JmYElqekxmV0sxaUJZP0pcX3BXaEZheGR4cmlAdV40NEs7b0xjUChXaipsZWhVKityLzdXUDFzKCxkUy0tUDB+V191TTBHQVdFNVAxWW81ZFpIblRQbTkoTCtCRSpVXENtUWtsZnVeMnc6XVNfYWBOYzt5NWRSTXtWOV5ocW0wXF9qfUMuLGNvSkBZU1EpMjdRYzVWKWJUbUtmQ14uMkxvbU5RMDkyb2ZzWlV7VGlvOlBkWCg5aGtmMDBMd2tgbT8xSkFfR2ROejh0MGhQMDJAVHJBb3d1e2pKZX0/X2NsODB0S0dRYHsuQjFpYXpXQWAsfG9bY1NXNFh0OChvdys0WVBIYlwtN3BnZ3RIR3xMXlVSXzZ7QGVgPzM7XE06Z1E6Q2tHZm1AOERtLmE/MDZhZEZkKHdZeE9jYn5NUzVxenZzWzgranI2cUwyalU2XmlBej8qR1YoKjVaY2l+bFo3P1JWbVc4KEhJUzQueWdKO3VwXXtIUUVIYWQ3fkJaX0EqYmY0aFBsdEVtT0lBY2lfOnc7UDJ7SnBfT2czTD97VUxpKEtcd2h7djpKcXVFTElieTdZT1l0Y15SK3FIO0k4OWpNKGQoUylSY3lPPzkpTTl7Om1MR1ZeaHVoTzVoTmdWb1gqXlcvZ2NecGU6TCg2Xit3cVw1dllfYVpTa3hCbGVmc0IvW1liRmpQend1P1BQeVQxUUN7Qmc7c0h6XW1bU3RUQnE6bUUteV5PLHVHNzFZQ31NUzBPeFE0UCl6LH4tVmMwZFI0ZH5HSXo/eGVqUUhBXzpqNVlyO3RSKipoc3hNMnYzcVl3QmB1P1ZbO1VmX1dOYG5HOGgrKjIuQWpPdGAxYDgwYDFEcDtUY3wwcEdvWGFeN1RGd0E1b3VTKlJVd1U9NlR9djBZW11HVjN1X1ZhNHJQMltRRnxRMls2akhiSUk9LjgqXnVBc3tQYS0oQGUoe0ora1coSnxcdlE5Xm11NlxoZHFQKnNGMFNJUEpHK0B3L3wpOSprY1pJNEVjOmNWakRzVjpDXW9Jei93Rkg2Mz9XLUtPdCpVYntUdX5PWHNbKy86cVhJaVM3c3ByV1pGWUYuVDcrT3dkLns6eCp9fCxBNDJ6MkFndF1DKjgobl55RWQsTFNdLkhaQGY4My9NO194QEA7aFhkNGYpVHlMYix5QWZcLFQsZVBMeml7OmNiVGBTMmJuUGtsdjFBO1V0YzBVVTdXMjE6eGBmZTtoMihcclRHaDNrZlQoV1lzdFhGZll6K0BHP1NEemg2akN7ZmxHRk8yUipjaDRiYGZ+NnhuWGV2bTtxK2RoSm9dXE5PQm1eW0daNjAtVnkwcDNmRStPX11RZ0dvekZDenRRPTJabl89M2kxdFVYcE07SmcwanxQc2dHMG0zLDNPOHBJTWRQOFYpYVNdMER9cjRNcE9ccl9xQUF5cXgrRnFVfFthXWlQZ2xOQDcwR2M7WDBQbnp+O1hiQUdQbjFlOlliU09bQlFEMmVhTStHSXYuaylfOWFNKXBxa1c9RmhFOUE4eEVyLFpeQSt3T2ZuLEhtaS1iV1BvQzRCNnk7XmVqO2xmSl92XEQzc2ZkL2B7bUdLLU12eVhmSU5MW0BFcz1rQHE1Ql5uVz9oT3tGN1B7Xz9nNXQ3UDhPXFYqbDdRXmpiKWgoT1woNm5TaC0pek42KjtmXyg3RUR6fitOeFF2Vm1pc3BJR1tyfFo5OzpQTHE9VjBCcyo0V14welJKSFp2P11BbHsqeUNuRTRdM093XlJeWkNeanNXXSwsZ3c6Mkc4NnJEUy81RFxLWD9RYkprOilRWSxaSmJ7NGU4TVw6OC5+MVFpVzVCKXJ5ZXhdU15vLi1cVkpNaD1LW19kdE9BZG8rMHlYQEleO2hAaFpJbXFgclkwaytCS0NNZ312SFxgST8rVk87eG14Z2g4elw6fX1rakpNXENIdjUrcntRRWR+dnkqZ2s6LHdzKT06aDkxZHZsPTthSXk1OHNTLmsvKUxUSkE2ZmlYb2krV1BNaUlsLk1LZnJBdTswLlM3TmBYdl5LekxkdXNGKU02XGNyd29GKkxlczdQT04oYHJgTyp5PzZ8NmQ0YjhzMHQqKUVrbmpTd18tMHAwUUc9UEkuTCtfbyx2V0FVcVYqfXNPd0wsZU11fGI0Tix6WGpaZDd+PzRVe2c3QEBnUkNxcGZbOGwoXzgvSk8yUnh7NFRme0tKKHp5ak4zdXVjSC4sQCo0XmB0RjlRbj8uTX5Uc00/SDE/VE5pQ0JUKHdNKVMxVFcsbEBDNGtYMC1bV0JIc3J8VXNVQCxVa2tseS8oZ2hkYkBOeW1uV0BBQjJAUWheYFZlLnVkNi9jTUdtM2FmLzdOMlkvWzUtKlhncXc2VVtdLVRqZkpvOTdhMmo1aEMqfVRYRFlrWzgpR00rUHhwfik7MWV9TkVCWElGYXYoaldycVB6ZDBxXW52T1V7MDtSc1RgMUhqPWlcSGEoKWVMXUo4USp9XnsxVGUvSFBaayw1Xip6aEUoZ0deKn1ALTgyVC5kXV04dUxBZ25FKi5zcGtDLX0oa3lsKy1nQGlYejVpOWsre1BcX35fP0tEbE9dVlBpMUdHLXxPSXJmO0s3a184Tkx8dVBNQUdsQHNKPWlEXGMqUmosXnF6akVpbjpmNXNId2xBWU1tZlNeZTReajp9LXdpPVxPRClELzE5N00teGRgbzd7bUZHUUR0cE9VY3EvO3JQfVc7eX44fDRVYzJjc1pyM1o3UmQvQy9eSW8xTntaUj1NN0Q3Ym0pYTV6eWFdUD0pOC9OQGN3V09zXHBENm1nLWtbVGxtaC90PVBgV2hyVitHYmtlQjlGUX5ZVSwvbDpRTVs1U14rVng0Ki0/cCl1VUF6MylIdUFpLWA9O218OUBBUi9bVVApWT0wenVcQyhAby1MMD9VaWVoNF07RUp4dy5jfFh6TF5yRDZkTFhBSXJFbng0Q1JoLWVSNjowYlRsYHJ3QSxRW2xGYkE/SUVlSXJKSUBYS1Vmdm09fXI9Rk5wZ0A0U35GaVQ6UEZQSztQKFksKngxQnVgUlY4R0BPYXZ5ZmFbYDR1XXZse3ZrTmR6Qm99b2xKaUtyNWdUTFZmcFdWbXs4RDBQem47PTdadGExSStTaHlPXH1dQC1FVjtcVFV9PzFaL0UrcmlbK1JCO2FIMXs0PS42KWRgWEZ5TTF3S3pCQXYrO1dwVUJebWcuRms3dXI6ci55ejIyezBQPUQ7dURTcC1LM1hUb2dZXFpCKGhfbSsvbD9XPWpPYnpqMjBRW3VQb155Xm5xdjJWWFZRRnZhal81dntTOE0sfigqUjJZezthWENgSztMcFQyM3Q2O0FJX05TLCxJe3hHcF9cTjNHZSg7Q3xSVilxRGxNXn1OX3B8U0JfMnJ+alooQCp8L31LcDBfUFJpLTR6YChPZEs1cC8wLDd6WFl3SzhdaV4uV0ZpREFaMj0zQzFlRlZWanZXdmt6UUI3OF47MzB6b0EpMkluaDtoTD1VQWdUNTFZKDBVYytRYkF5T3VRYkBsaGVMKlpvSVA7dzoyPWcwN3Q0fkNjSU15cmxFQEFKYkVIVDF0ZUdKT2E7KDN2Qy1YLXh1fS8rSjcoa250WUFBMmJ8ZUxjVnYuSGJWZCwvWzJeRlZyaWFlckhoWl54QERsdEc3LjkwXHZgVS40M0pWWztCa0VpRmBnQkpHWXBjclBzcis1eVlOUHF0USlaUkYqNVRvO0c4TEpcN1RmQVw4eWVsOjR5bS9kSSxJNEovUy99cjFmUUFHWk9wfmoyamBbZTFPblg9RlgobCt+d1BlUn56PV5sQ0J0VHhnazZSKWJUO1hZYy1zd0plLFgoUGxqQTdUVCtwQkBeQzl0Z3pzR3IwVkpvcEspOXBPMUQsMVdjX3NfTEpkSmBBO0stZSpMLDF8OU1PcX1xZld0aU5yUkEwcFgqNndhNl4wZFAvRWxpTng/cWE2QzhXY2Y0aVxMQUZYK19kTWE3ZUI2NEFIYnRAYiw1eU1wRVV6KFkyeHA2WlB2SHNUXS09SS53Lk1hYW9lVmRXRD0yQFJhdFcpeC9OVC8uSkB+XCtFUz1SOXM0SGpnN0lgdzU/MS5nejdEdFhPaGd7V3FEUHRPRXhDQFgrZGc9KFR+dU9ZdD9+NytAO14uR25FOn47cjFmUUZuP1FxfmgpZ1x2WDttWFxWPT9tQVVobUM7WVRydjVhdlJASjRpbVI1aVxAa2VfLj06SWRFYXI7P2Q6dzhYWTM4Nlp0S1JIWVtGTEROMkZyeTBMNkB5aFN9OF45XlNuVnVdKSwxLSgvT0RfUnM4WGVAM1BdcWU/aENueSlKSWE7U0MoMT9EbntfSmdhQStbOEhHbV9vbFxOY11ybm1IeipPKTosO1ZaK25oOmE2Q3xvZ21yb011QFtFR0V2enxIVEopRns4Rlkqd3QrVDZmKFxkT085U1o/WlI3dnZmYUBAMUE5OS57S0Yoa24uMlY6WV5LQjJ3SzVNbi4zNXtubXtYKHF8akpIdy9DKGVTXUhjRDstbEBcTFFOZ2lJe3JFL1ljMUEvfmZcVVpkQkxeKkFYX3V1dE0wLllsXS5HU19KQFZkZGFfVTI/emROdzVuOWU4VXRZVmtvUWxKelNRQ2BvTGxfYj9ccEUpTjlBQD92akUsUzlyakVqT342NFZfXEtFPTJibXk4SyhRNHY6SWQoTUpocHkxKmYwdz1DdC1CY00pZDYzWjpedlkpXVdQOVV3PWZNZS5ndzQrLmddb2grcnRvNUEtakhXX2ppKnZwZCtvY3FlYWk/MDV6ZDFRfjhUVTdEUnM3dWtTNUspNXlYNFpRYTRRWntKQ1dET3ZmZ0BaK21iZ3xQTD85bCtRT2w0VVhpfVg2QSg0YXdnP0Y6YEpmYzZEKU5wZ29NOzk1eVdJRTBpXS07Um9VfFx5MS06bEFAKy1lLi1RZzlEKlI0SVNQaz8xdFZPMCtWLWFDOS1Md0Q4UFs5Mj12dUphY3pMSjdOb0IsTnBgXzc3ZEF6Q0l1ZWc2NnVCUURVR2E6NWkrTjJ7T0JgLzItfUtaVis5KjdFdFlScFRaX2g2SUNxKkxvLElZWjc2NFY6Q3Z8KjJOfWcwUi1BOTgtZ2ptMC57fEAwMlFWWVYrZ3B3bGptcV91c09SfDA6RzpUen0wfW9gbmpIdWltY1Q7KGV4TVlGOlVWUzosL0dpOm02dzIvQHFAcUVuK2s5V096WXNNXUp0SVFeTzA4KDJyLzJTNUhQKG81aEFPPSx3LC1MM1pbRkkvNTJKXls2P2BIVGhEcipud3wtaEBgX1I/Umkvek1SY2k5Lk4wbWBgfS9ZW0hoSFA4WG1KZ09Mb1VoYTcsVm9ENDtOfGd0RS1sTFNXXDg3M3M3ckt9Y1M7SEBlU0RIdG43bF5MXVArKEZZPW8rRzAsOnBJOzBFYiw9NGRmUmRdNHVFWEMvd1FTd2xbUHRmQn15Tmo5aC5NSF87MVJcNE80QTEwfWheQndAXVs2SFhYWEIrRWFTblF6L3EucUdfcHlLO0xERTZcV05aZl0rL3RVN3d2cllTPzdKQGw1RG11bXZUTnZVKjo0QypNdkB9MU4/aGMpRHVfamwsRmZ1fmNPKm9gQn1dKE91RER5ZTkxQWpXM3c6eHU7XWJdW11YQmJmO2l7W0VDfSxfa1tITjhsZzJ8ZkI5LHwqcmFte19bfWVwR2BiWFB7XWY/fGFxNll7amx0d3tlXXRyUjV9OGZVaEFlNFNaMU1ZZy03XXZ4cElaZVV8ezZVZz9dP2VSOHV5UXo3e2FAajosUjIvT1UsV2I3Q19sSE9BOUlnS3pga3E2K3s5fG5CKWp7ck1VXHtad2hQd1VGRH5oLGlBZjFbTElxbH5tejl6Qy9VS3t0W0ZVei1PMyx6aTJ7OnVuNFZ1UDJrR2tIOTJkcWwqLTUuU0csdlNtKHJLXlIqV0lQUUpFR25IMV0zM3xuP1ozL0JSakl2KVlncVpKUm09e3YsN2ZwVjBmWVA3N0s1U2NgfjZ7OjM4XHo9a0N+aDtSY2VwVUc6RnF9TzpGcUw0cF57Sl9ofTtELjUvd3YwN352UnA0L3cyQE57UlpVR0B8OUFKVXo6W3FseWU2UUZxQS43N2BTXmI/UnsvM1VnTj9jRHtbXntlTEgtS0A0ZTNVP11Gb1tXUlU2dFBndW9MWHkqZWM7bEJ4Yl9yMnBRU0dnTHFWZzFiNTVIZT0wVDcocXNWdX5QdUBGU1NeWHV4c2p7cXhbYDtsMFpyTVRtUzN9cVY0eD98bmxTenlEd2l4ezgtVV16fFNTVmc0MklCZys5NVYpU3QrW2d6RS80U0l6VTo0VVV8OXppVjN+cUlhWyp8RnMtZnlqQDZHdi9gWHdzcntzU3ZFMDE9ak1YWjU4Lmw/VSk4aHpRY2VUUHdNLy5vZHF6XXlfckFefF97T2x0Q3trP3p6ezBcN0tvSWB4ZV5WOz1Ee3oxUk1maVJhcUgqK09ySGRmSSxxXkdsVilrO0AsemNqWjRcdVlqcUhdP3FqSFV4a1lrazM6VXpmM2tzUjk7bGZ7PzhiO3wrNHtfaV53Yk1dWVB+emFWYXVDSW0oNlJhM2hsRE0oUHY6UXlsZWtQb0EuSVx3OTJ0Xk5GNmpXVTRbcWlMO3hDNmZGRHt7b11Da3VSOC9ieU5FMDBGRUVSXlx3OStjUUFkQDQvUEpePTczLTZ4Xjp6U1lKbWRrdE9vRls9SUZxTWJDUDMzbENKZ2g2XDIoRThLdVwuXi1gXipOczlYdkFdd3k6XDR0SVBqWT84Zn5OPVxqQm5aU11XaCpCfEEwVmdzWUZ8MDB3a11GdnZnd3BpVjdPVzRcS2dSYldeYDtXemA0eXdGWXN6TShQV0U5dlxadUpfeV82L30zcHArcjVCP2JcOCkyLW9RVzB0WFA5cGhoWzJsckRrWUQ6Mls9aX5lLDVYZ1deRFBZWWVJe2ZvLjJfMilvXGw3aTZTaS1eaH10U1VwYldIK3FzZHopdlE1QlgoeD95SnlLTUtHcG0oc2EvTVBleWldNWpjM0NJXXYqQkIuYzZXe3xMVEVeL0Y7ZVVQMDc1QE5Galg4OUBmVnFgT0tbKi96N2Y4On5qc09hVXpTUndPUEliRklkM0RNT0opRWxtL25Adz9mP21IO1xhWUxCUG1hWjlndkpGczRVdXRRcmBxYlNfQXB6YC1cZXEwdVpLWHBcLUFObFtxNndpUD1RY044NjVIQUAzdHBYYH02MHRLZEdMYjhAMExlSDh9e1pkT1tnN04/QVtRNkZKdX01Qlt7eE5HT2Q1fExRTUlTZ1ZYYGY/UD9ERFdud31iLEZrOWAtOGA5PTdfSTovTFFIRGFXcTJ1OXJjVlBKTjYqKShbT205bnpKWS1aRTB9Uig9KHU6N0RPLk1vUTtody1sfHU9aWksUm9bR2h1cDY0SyxXdG94ZFBPK3V7cF5BZkxqdVhgfmtyMmhCZnl7V0pcZS11KVNsXVd1X2swWWxOLHdNR2A3YlFNN2dPP0gvR3ZxbixGODkzW3J4OVJ3Viw7Uko3VCxxenVoXj0ybER4d1ZQN2k7MlpUQkluNDtXd0x0QWJELEJGei5kSjV5YGlrP2R4dz9Saml8PVAzWyhEZUxJSl93QjM5Ql5fbjBdUGFeQXJRVkxiXEdvOGFNTl89NkxWPXpSR28yRj9yNihjPV9paW9qO1JIQTJBM0s3fjVLM01RZHxNL29LZ1R7KDA2dE5zZ0NEUWBEdDpVZVpFbV9OdTQ4MlBwUG01Rk1vVWJSQTp1QXxhRTE1RlRCZS98W1Vqemc6X3dWK2A0cTJ5a0BVVmZnVX5sYHp9KmFJU25AfUwuQjZefnJTcU5EVlY1WjZRTihEMnI/cGcxLklKcjorTHJuXUgzcG8oKS1vR0ooazpxbXNFfCpwUV8yMyxDL0R4P2UpdD1Ad2BuWmo9enhnZzhOP0tWWS1AcExBa2RyZEpUSVw5QlArO3w7bDBHQU5PNU5WTkg5QSkzdW9VTygpOUg6MVxld3BSfCopWUxAZFgpRn5xb3kyfGApLDBVSER8XUtxYzIrUFEuaVVgVGt0bE1TWV9kMTtSU0xMTn5UOUU9LzlPOUtgTlh0bTJrTStrU2JnMm5xKCx4YDZqbkE4amwpKEBKazl8ezlVXUdpTGVqTWtSZE5keld6W3RaeS8/NkZNV19lLHFLLmk2bGN7VGRMMF4ycmtBU1R0TE5vWU5GaD82djJaM3Z4MHlnclJAclE5P2k4MVlmQlRRNE1rbF9xcC9sWFk5X3QvbVUqOHlSNC5ZbXFBZFNJaDhsaXFkZVsyOHl9SURZek9jTFl5N1VjcihjclxiMl9qaXh0MEx6dkdzaix7aCtaNnZRWXk2R0xZSHdHe3FrTEFoLSozRGEvdV1TUFRsMHdgZFRUXSgqdTRiUDo7clE5UkxrXnVnMTMrSExCcWtsXnloMlVFcDt2LE01aGdPa3VIbG1vRlwqQnlWSmxWUVFzW3coQ3wtOXdXQntffVEyajc4cGoqSWJzQXtrSls6KkZuMnIrVVdUZjBuWUhUe0JOZmwyYHdBbWR0Rz8vNzFaYHspNTI/OTR2Rmg5OEFyK1RpYUR4dzZAL3QxTFYwSzh7Yi41b3IxbVR5LGI3UkJXaShxUUdWVjlzTF52a3AtKkY4eHV6VVVqOG9dOmVlSDJGZmNMWkh0ODNxdjtgKDhfRDRyR3YxcTpeOU1SZVdkcitKRTNsMCxVekZPTVZ1Y29kX31YaXhaRDY0R11RLV5xb2FzYUp6e3YwTzNPaj1aWXtuaGMzWkJjWnRDLCpzXC44dDJIbnNTOlxxUT1gOXo5O1xQV0Rucy17SCk3L1NrKG13Ym09XWhmbDNkL1NHOVRubHpaKGg3XFAyQTBhM0hDTmI7bmZYNHpPMXt0SFpsfD93VSheaTtxSUEyVTNwYkxML0otMnNjUGVyLl0qR2hBOFY7bFFcOnFqS0ttTSpHXVUzbk5LbE4rcEIseE1VTGQuOWJNYkNSb2pdU0VbTDZQU2t1SGoyQVgpdihwUX1sT1twdSpDK1h8UUpLbDdQa0woLXQ0M0VxYTFTRSlnSUt9Vn4/Vi9kR0tvLVdfUnddOX46L3l2fUtTbS5tajouXXNuKWJSQitZP2w4YUNuMlNZXGJyLEB0UFBneixQL3koQHxMLikqQFxLdSg3VzNed05hR0plRG5OUTM0KF4tLEFtUWJJMmdTbFJ+KWk0WjFOQEIsXEkwb29EaUR+T3RoX3B5aTRfVzZUOFRQcjhwV1FkPzheKHd9Uk9uQUFJY3RZRURzODpaQ3EyLi9AS2ouW1RILEJiTSozUHhNWlBIcHZ7L3lXK0VyQ0Y7alReQVU0KzJOSS9sdmMuXDZJeywzX3cxOlY7clFdWmktb3dNT3guX2x2KWUtS2cuWkhyeW1aLzZmOUR7KFQzZCh6KVQqWUZ+QVA/YmF6Ty1nWUQte2lUTT1oeUQsdmI1ampJT2NpNVZOaHkoY2ZTUl15M2lzcip8XChodX58N0FRM2d2U10qXDByU29eRipwTnE2SmJfVGIsMGkuKmdcYkhNU2hrRD1YO31KM0Q6fGVxYXdMX1ZARzYpZFg5NVdBM2R1SyxrVkVHZWZSN0xnVnR9djJUVDk9OVVVQkk6X0hTXEooY1BbcT9FW3NVcThPUz8yYyh3S25wTFxrQ24vVUIye2JsXTJfb2tRVTlAWE1MKkFRYjFyKHt4T014NzNIcH5jfVNQVTVSKHJxc3EtLkJpai5efGFjYk1YZmxDKXZ6OitmbWBjbkAxZEh6TWVZNzBBKzZnTk53RHZMS3xNW1E2bS1eVVB+LEYoLHw1TFJ1OnRtR1k4NE9CR3tMfipVMzZwKCpMYipRfXllViotdV5WRS9NVmg1VyxnRVlKbWJjQGQ0RntmbGBAdEBSVHhtRnhLLlAxT0E9ZGoqQGVhTkQtbmA0OHJ9W0VVU0dzWig9K0cxPS5WYFRsVk4sVkRKay5JSzV4dS9hZGt9ZUQ7MzZhLU9ZMFs4Ljc5Mi42Lz1FdyhrXF9NbmR+WjNpaTpEWl9de3EzXmIrQzZfOGpbOWosN1N+LEdhY2pQMitDSWc4T0xMVUVUU25rLTM/NWN8Yi0yfElLTG9VZzkzUFlCR1U7NFh3QzYzbHxDLVdWRy01Ol9dNlNVQHNnclVvSkBlXVtRXUhEaDBgVXB8YlFZQCs0MnU9NlU5ZnNffFlLWTR+OzA6dlRpeXdEakBCOE1IZmY6NCk2MF9uNixEeEU/M3xXakg0THdUKFM5fmRMX34qdk8qSXFtPUlxcnUrL1pITDZKZjNmXVk6K2RnKjJCRTsqX25pOkFEemMwNFQ0UUVkN2BMUSw1MnZtKEIwP2YtZ3o/US0ocUBqYUZwajkyLi1xVHdkZDZ6VlJXfjQ2R1dQXF8uNi1lKWAxVjZ7fWstei5mYnlmU3kxZ2ZhNGNqWmdMVHlAcmddP0Y/YWVsXWdMTkN1WndMSW4tTnM2R1xOWyx3YEtnbU5xUTBrLDQ1MjVdaltlOipKMVF3Oj1dbFE7dk50YkgzNHB+d3soRUsqfF01bitkOl5pLmZrRk5OUE9dSUhXbTZUTGVKKi0tRldlQVlrWFoxay1tdzJgNE0xSS40TUIsO0lGWUh1Y1JZSk5veW1CMGM9NDZ2UX5OTVlbTjVJWjJkPXBQTlw5e0g6d1VLVStIWW85TTNIRFFkTURSKzt3SUk7bn1gXi0tfnE6NmF7XmNcV1EoRTduWzZJcWUpOlwtcEFucVRsY0BueE9BKVVXRlhNYHUsMlc9ZGJgV0cpYytRTC1iTHleNSw5W3lLOkZIUX5eeFk/RE9pVS50LnVCQXFkP2Q2WUAzVUQqRVdcWUt0MDt5czlhfThGPTplX0psfTtePSp1TU4/Zjt0Yzd5OHUzNi5QX1RMbWI9MWtjWTUxWnEpfl58dnUyY0NHOldnTzdDKHNGO203KWdQQmQwdSpoKS97PVhMdS86UWdWOCx6QWs6OGU0SFtiNXZdemFEVlxXc1QuLzI3RFcxP3o4bTtFZW1wO3xWU1c3X1VQdl5AXDdZQDBjezU6dFMxMHl4QTEsTWJuYnZ4YChZRngvYSs6Z0lMT1VuYURsbU50N3VCa21jOVJtc0JTVW5de2BEUSxTMmBQLzl8cTBjNE5NTnMsW3w6UGh0PStLKDlXMDI6cVNjN0hjUXBlZn5XZUtdSndfcT1IX1EqKUBsfWJfaF58flFHOC04ditraTB8QFJSWzlsSDozKT1HW1ouMDdPdmpXKDd8ZlUrLkJ7MmYqZnBuWEExOTlwZFxaPz94U0ZOcnZveCt6MWJ7Wj1YajRbMHkrWnlrYlZCQUd+XkRYTmkpK0FeNX5SQVQxVzE0ZnJNa0x4XGU4ZipoO2J4a247T1JlfChxa2Fcci96Xl58VHo4VWVnbS1WSC1faih8ZkV6REk5Qmp9MkZVdTlibXMtejpPYkhSfTdsRDhNTU9CVmEtXVBnTTd1MHtbckJiZypYS1AvXz1gdlxQKzpNOjp7Sm5bSyhWKyheeHN7eE81XkYpOHFuaV0pcWlIQ1ZeZWIsLVZNSVNlLjJRdlNGelVVS18vcEpkW354XEw0ZmFcQ0MqYWwsSEFnKyx8UXY9aTVEWkVTRG8zZDJjK19uWkd1K1JCcThBYE1bMHZmR0o7fn1dc1BvfUpebXJ9LXsxT1tlNV03TWFgSnJyZkZ0dFRrXDVtZi9mQ1RhPyxGTzBTWUpCSURULCg/M3kxfGFwMT1dazpOSm5lKGlpb144T01yQ2ZeWS9hc2JxNzp4Z31eWTQtWippWG9Vc1wxe3U4QCtJSGtZTUAtM0ZPXF8tXUYyMmE1R3lCXHhCeEJYfXxmWEo4Qk5wUC1ST1the1J1OXxWW0tJbEYsMmsuZmdMSENUeS9idThxezs6dEVdLlBweGhAPVB5MXEwVzpeV2dIYjM7VWQtbGNkUzZgM0gwNUtiQSxwRTRLY0pfM1Z9Yml0Y3VzNG9JL0A1PU90VkVgUXdZOkRIU3Y1M0ttUFFYKjV9Lmg9NHl7enxLKGMuWFFSN2JNX3IqVSxobDpabH5SLSxwSG9aeTlWZTgtbzplKWFSSTIqb3V1R2xKeHxJem9zVi1PSlVgOHJrMlpeUDIqVzZHcWc2R2ZYQTVuc2gpODhvVC5RelNdaU4tdUg3e3UrRlZzUT9cK0RuZkJYSU9HYGlcL0U3MHVyZnpfQ3U1TEMwWTNyRE5iV11hPyhdMj1hXTFkd1dnYl54Kml6bn1PRG9cc10uWWc1Mnk0cCx8ZzEwQ05venBXc0VDP2JIaEgudihxbDE4UV9sbVtQQWxrLVQ0XFp3WC9xTGk3Z2kqUVhVM2xyfklmNzNEaT9TbXc1bkNkUTdzeVhSW0w0MkZsOk5keT9CK3hwVk07KksxVGlsaEFxSDJtXld5TD8tRClAMnk7QE5Hd00rPXh6TGFqWX1jVnI5ZE1jdlA6ZWB5S2NqLjFMTkJxPUA6Qn1iRVV1Zj9lZ15Wa3xXSFoteUNjZWpLdEVfcjRpQkJ7ZD1kcUNZSC50MitpaTFkLTNJYEQxTVRHbTBWaik1W2lZbDNcXzV4fC01aXJPVzpPLE1CfS07KExIaTZSOkV5N1RDemBsbHREL1QoNDZacX1OfnZoTChoLFopMEg5X05UfXdvdFgzaWdIbDp3e0MwbUEoKU1INktkQFM2dH4vMyw5YihFdGo7eTV2bCxRQXpGK1c/WFxZOUBXUkhRZU9pQ1g9T1tbQiowcTFgMGFuQTNMWzJvQ3xNXmRxQk4wU19mUGJEb3F3QSpZLHw6aGZ6a1tqVGleYXljTk8tZHZoVGVMNG9BL3ZfPTk4QnVnckxLMkNvVGZYMzNAXU56ZFJ6dHRJQzluYDJHZS85TSkuLVErRW5yQTZBaS0tdWkyRllgQnl1UHlzWG12Nm8yZ2JJMXVrKS5+eHhAe15FbmtpXDBxQlBrd0ZdeF9TZ0dIZTE0all5T2xIXVs2LTdiVk9+fHVZMkNmdjV7WCg/YDpkQi1XfXJ+P3I6ak9RamgxUGhQSlBRS0d6X19WZnB7P2tiM2k4d3p9NT8vOyl7X3JoYnRdc1l3UWdVYTotYntNfDdtaUx4aU0vWlBHfkllYFduaGpWRUBQKyo2a0EseSxIN2F8XmJscndUZmtxTDk2YC1kZn5rez1UTEBKZE8wbj1nK08sXXx5ZnkvdncwU2UsfC8oTzlBUFx3Vi5eU15VbTs/QV9kR3tvR15jeV96Vi5YNUNcP2tQdz00ZmdFdS4yYGZ5bC9HZ1Ivez9xTkI/Py10MW91WWJCdGZLWz05ZEh3NygpalA3XixKUHdSXC9IbTctQVAza0xHM1kxL1s7aShjSG9yanIpbVAoalNnLVhcXClRTjlOYWpLcjlxMVZnM29XTkNmdlRoRmpRTHk/fGRvcXMoL1Rmb2lrY1hea2o5O0BKU3tAcmExOmBxcltbeUo/Y1N6Pzs4MSkudT9ial1DO2YzXSx+b2E3K180S3VBSy5AfFEoXkJGN2Q0TEtDK2VZe1l3TmhBV2krSy51eixLdGtxZDRNZ1hEXGRAdjR6eSlfO097aG5xUjRtezhjdUVWTmR3dmErRltXRXpAWU59LmEoMUFWcDlxYis4SnE3P2xVe2d2K2dcaHcwb3p9fXBrRHlfK2cyXkFFVSpFMzRdSGE2OWRbWUFdNXxAOGIpe3hJX1pmMHcvWnEud3haQXkoRUpzR1U2bUZAXXNTOX02MXs5cVcuSi5XPUgqeXkoXXg2KTs9M0lCdHY4T1RURzBZUjEwZyhzXnhtSTtObWQ1fVMpZ0NOLnxlXyh9XFBmTGlycENvZC9gYEllZ1Y4VU5QWi47fTo7dWNsPykwMXs6NVJKbilURDE6SntqNFQ0NXZoa1I4bUZITig3Ty51M2FHQXB2WT8xNX4qMnIpSUssYkdBQ2BKOXE3RTk/XHUsRXdLeio/cjEyZisrQGp2ZWhRKzFhQjJ0YDZ5LmF9RS8qV3JmVHooeFFKVjRQeDY9KVJ+OkxKfWtIa3xDZVxHaVRbe15BWjBYUG1ZZE5zUUtUKWMpNkJmQXZsdmswZFUvTmhlcXcvX1VVcTs0ckc4TkNoOls4WE8pal1qfTM9Rk1ZanpeL0MwRHtQYUQ1dkZ2el5sZz86OV1xcUJGRmk3KnA5ZzJybGJRdXt8LUh2NjtzW0RENS98bStqLmYrfWhZXVpGQktURS5ZdjhwVE5dNk9KNnlJb0ZWZmEyODRPNTlwW3M3dUJiR0tMLzszRnJoNjhrNEIpRTN+V2xLWi9YSVRGMU1QL2wtNVxpW1RuaV09VGNdMVd+VnwuXUMtX1NZQVswcFt+LXlQbDY6WU9fXU5lRilZKFJeTU5uQF5ZOSpvdilCLmteP2oyOT1EfnNiclgvT151VVNdUDhYP0xyTzhrcEpJd1gtdCpldjJjYFVsVWl0Wy94UWlVRi19RihwQTZFRX1nYFN4ZmQpP1xdSDA3LlFyQTtFe0l8LF9HP2ZwdFBNZnkwLFwtNT1YKTJHak9ubXJidGRyWExXdVt4VXBGUTleK2FRcitfXGYyU0M/eTsyVDVlTDlMYW9qRHo0QHFUc3JLKzlZaGxLQXJ6SGt0cnxEWGlaZSgzQ192fDJYe3owT2RDKipUZD8rS3NhL2xJZzN8KFVAe0BwcnJXV0JFKl9dWFhVU0ZoMktsNWJDezRtKyx8UXtnQGEtVVRpKlp9O012Tz9leylJfEtRZy57WGZibUFSajRiZ2FcXVQqNWw1TV58W0dxQWhpNixyXW1OUlovbTI4Q1ltLj96NTl6SlRmRWVeXilULlMwajNGWldFW1k6XyguSyxSVVNGPytqKks6W2tNdn5Ob01NKklEVClbT19XTlJ2XWVVfTtrQmtsbjN3cXktcTlyR2xmODlfMXlHMkdnT1EuRVtCZCtdMTg2VW0ycF1wLjldbjMtOGJpLzdPbVRpQD14QFQ7Vnt+RkJvKm93fm1rQm56PUZSP3AuNmc2LlpkYkZvWVFtUH5eSX1uLmhcP2lJTTZ3Z0tyZHt6QUA6cXVtSUtbOXNEOGVkOUdne18pKUVdRVlCYXw4Siw0SGFUeFlZOmZFeEI7UU5JM0dtNVF5WH00dCp0RD9VfGd8QVR1eDBZZGF2c3UtSyl0OVtbSEIzOTIvejh7fmd+QjguLldvai9QLVBpVHBQVllXeHhJbUhUST9idFFhU29CPUxFclhEfkFFfl59WWJwLmF5L1t2KklQOTEvZlhaMDQ9XkgyfStGXWFORHsrUzRhSFxDNEVIQ11ha2pILWVwOGxFOzFVU1I4MHRPKUN2YmE0WGZYb3hhcVp9PUtgVHVlbGx1QnI6VVVlWm0xU3NoVylbeGp8eThpZzd4XnBtbjEvYmh9Q1czX2ZMRUBrRFdBZlJWQ0EvMUVvcEhBPzFIZjM1YzJXdUtue1JJXVc1b3h8dUlvV1A7eTQybE4pSlFuKWI2M0ZoeFVDMXJUO00pKSl9MUpXSDZOQFBlKT0wL0AyZk47YUw3VnRSWl5kL1VhZm59SHwtOjsrX3BrPTRldWZ3Li9CaDEqMC9WS11kT0B7LXAqNDBecFltUysoT29DbkFeVltRaVZNdW9faDg7KF5afFxTT3hFaHhpMTp+ZHwyWXx9fGtnWEg3W1tvNFI/WGlGS19LOXU5d3F7Lkd0dWtUZEBHMW5RXVxKYSliXnBYNDgvZ3Y9OGc4YURcaVpmTWtxNHpPd14rXTVHLGR9Z1pWMnFQPWVZVGRlUyxHdHpQXkBKY2dOKGJOdDhlcXtWN1xYSlpRfUlHRk0rOERNYGQralF9QEswW005TEd+dTZqUT1rSXguQWE7fUYvWS01TWBkZnErYmQoYTBNX3xZOGNSRVZiKHphWzJLYVc4QUs2YVFJbFU/L0M/N2w7XWZdLHpxclZ0Kix0Vk1Ta0tzcFUsW2Y0YU9CZilud1c0ZWkzZFpBWmhUR19EQWo7W10/MHphdj02S3NJaX15azN5Q01sTSgobTJecztVMVBVd2FDZHc6TW40c00oflQ0MFV9SExNdnVyezEsYUE0OShYdDsuNlk1ZCk6ZTt3YjA/KUJpNVNdcjFWPy9DV0ZUWi9uQlJZWjgyXnhZam9KLkVqeT1pVXR4QlxiP05vZFNcZmwuVW9MOjJkS1BoQWhGOi42Qm9mLzBleDUzW1YoOkwuZmQ4YzRTYXZ9YGNSRmduL0RrLS9HUEtdfGVeeFF9ZjhjU3pbZj9vU0NiVz1KT3hcOHQsTz1DOXFtNWwpcz1QSjg6S3UsZFBQP2xrb1lydH5dOVZALz0qPWZ0YFE1SkE0PW0sZXl0WGhOMHg3M2ZnLG8qVlczVUJRYnBoU0tAZ2JDc2hOYDRma010Y2EuOGR7OXxnNmdDTXFoZj1qclZBQXUwLTRUNnh8YDVnZn4oTT9MSm1dZ2BZaElnN3t+MzVfLHMpamR5O2tYfEB7c3t3Umd6KXFEXDliM0tYKlJ9VWg/Xzs3TWtFMGtgYVtLZ3gqT3NZV3FRYVxgTngtYTFBe3hnbXFrXU9XbVc6W2FTdE54S2M6Xlw1K3IveWVodDk0ejFRb1wqRkt0UWl1Z0Q6LU4/XTtDVnRCSTpBL0Q5UGQ6dHVpT3lkQD9NQmx5XnswTnBWX1tcKlJAU2M7V2dvcmpOa0JoZDZLaUpxNjg6UDtwc2tUTVVaQSgxZC9xcmdvRGFeXiplZzRbd3EtMF19LnAqY2JrOlReQjRJOis2ekppMGhNcmYrMDsqRF1oRjF8VnBObE5FUENlVUZCLy1RLkh+dnZWM0E0dmZvVXE1VS0/L3A9bEluMiksaUhyLStKW3BMSVtMRXVbQHhbenBLYChxOGMtLFNROHh+a3dIUnZ2MUlWT249KW1UcD9rX1o3Q19HU01uUU5eVHI6e2F0czouZXx0SD1FT15MM1FaMHsyXSlRRUU0VkBpXj1mW2pJQVc5NVVBLk9NWjUsSFhOQ3ROSndTZD94VTdKSlVJaTlyfVBBN2RGT0xlQF5zWGJwZyoreSpRQ3MrNTp0KDhyZXdJRHBPMWkzKUFBdDVzV1lkPWM2YCswWkNOX0VUXG1cXV0pcW9Ne2szXl9BeGxQdn5tX184cm90Lnwub01FW3BRQHF0V10xbFBuX25TX2FzLjszeypuOjprblhqej1xUT8oclVpMns6bj1hZktZZi5lMmFxUz8ySmdeKFxLSjMoPTJ8NXMpKVBZfGRwbElic2wuYlZDW28/clg1XHZGRkBVVkl4bGhsNGNvUlJZbGtTPXJLTFozdi0rU2tSeGJRcmx0KDdCWkJiXXFBRnxURVNab3BgfW5MTVdvbUlTT3h9KDtDcTpraSg7PUJHMGhDKmVvOkRZTDE7KGFMUmFyfGZ7RUtAd1Z8Q2B1MWdOZTY/OXdfUH1kSVAqXWhUXmwvTHZIcmg6SSlDcC9lOnY0dkJRby5ReHdSYl94PU4rdDIwWTN1Xz80N3RKbnJRMV9INVsyOWFUOTM9SkFEblptU1I2VWcwbktsTD9baEcoPU1nSGgwci0qQSg0U3JwMk9FZmlDSk82O3B7ZXVAZilTaCx8cHYqblkrMG87UTdXVEFrWykzTU5GWEVeX0kqLGxzPz9rdHlgai1AO1xyKUBOcHpXdlxYQFtMXWFbSTFjb29DSzdqM3N4Wy1IaVEyUD1fZ09QMl9JZFVhWTFrPWRWTVFHTVg5a3x2OyssXGRyT2dIYXI6Tj9cNWRCKTk1dTAxSWpiPXlQfkZmbXF7NTI0PTF8ZU9hOHNkYC1RWFQveEMoM2MoRig5S1JvXzF4QkRkdX0veU04UCo9NVhwN01XUE5zWW1cR1x1fFlOUmpwQW5GM0UxLTtKbWx+TWxEWUFzR2Y1XSliOUx0WXNBeGZYRThNXkBBWilhOWJfRXYqcC1YMC54cE9qe1BbUUApRldCVDhWeTs2UTZVZ0suUDAoSjZfRSl2MVFJMzNxVGQyVypqcHY7QVpraCluekJAVjQxXWpXRjtcY2I9XF1xaWF6WnkvWz9JO0t6L1hgb2xGL0MsMTZcTFtWLGRuKCpFOlQqYTE0elJ4bHVHTVVxLDJpMj98X20tclg9X3YsSjVjT0c0YkBvLVB7Smx5KGQ9OTEpMjZEUENyUDo7Kz9ObC5EXWVyc1lkMnU1b3N+aE4rTClRMHtkfGsrR19nKjB+TCs1KWE6aUB7OXduVFQxW1RdcCgpSDpwO1ooLTpHXk9oejIxLG8pTng9QHBILGo0dF1QNjN+UVtMT0tzNEQvcCpxLzcwUy40cC01T3lqUmRuR3x8YnYsd01qNyo4QHdbNysyLndgTENqMkZGUjtMeD87cXQyT0lweGdpK3ZzSUVvK0RJNmBSWnx9L2kyZWwqa2VTQ20xPTlPMGJDTkp5XigxWiwpKmFqU0VsM2t6W2tGUE9UYn17V2pOd1hLOWZqNWhlWVxSdi4zV3ZJdGRQd2pVZi8zYU9URVlOXDkqKEM9NUk9aEwwL3dmOy9CUSkoYUNvRjFNaDgzMV1KS2Q0ai5FWUhISkM7OHQtUHRPbFpjNWdTYzIoR2FjMWFHLlZTM2BPWWFgK1trNVFrd2RoV3FTbUZjKzkxakZPRVd3UXRYYE5SWXVFK3U2bTREWmJHemgrW1pJNStNKVVGditSWXpbVHhOLWMwZXFDYVZLQX04RjdGLkNNcTlHOkp0S29OSE1IRmZDbSwxTSt5WkpWYkspOXczekAsYVtIZk5aY0xmLnBuSS14OntYO3Voe1Ysbi42RUg7SjsufWhbfV1FQzlMMXBRRF1kbkhsMi9qUShDWS9EaVk7bGpfWWthdWhhOjJnVlNednZXN0t9ajQvO3dabS0vYkV8OT9bUmN7QTd4VjkpOUplQTkuaUkvbkAtaWtnLHloSl5QXzk2ezctWmxeWkxFS1d+TXBcQDI4bkFRO2ppWD1sOVk0cEwyN2x5QW9+UmF8PWdNKVZSWylnWTJRNDJsKWVhcFwtXEx2MkJgU25GVFR7LHJcRVRVNDEueWBeU1tnL2YtY053anRZUkV0OTBRXmR6UX5ASTorQDNrfGd1bmN5ZVVqWkBSWGVLTEkze0ByWDp1VTl6RVB7OzJmdDE9N0NgSDszQ3NTNk1aLV0yTTl7alZIKzNOeVBmQ3kxbTp8RF1VZXlhNjd+M298eVUtVmsvbFR5fVB2QEdDN2NnaEBwaXdXO3J+e1N3KC51UWtuYDNzXXpZN2BndU5sOE1tbTlENTVsZHl8MVVteTZ9WE9BKzMxSUYocnw9RzYyfUh+c1w6S15TbjJaXTc7UGJUQ2JUN2p7elAob11xRy1XTT9rdGstSm9JP1RqX05MbzhHMDpiQnArO2phdi0xbzlTPXt7NG4zSHRlVkBlYmdqPVduM0g7cjUwMG0xX0ZkXUt0YWhQNGJNRFxvU05rTVgzfmgqbH1zUVJhNFBWR342an1ESXRiLmpARylWPys7LXQ/Snlffl9URHIoeGNuX2loQ3t8TS57elA7LUxaXFRLdFVSV1tfcWIwVXBoKSkrVlFROlVASilDWS5YNSxCb0spMyoqek5xU2JEZWg4Kj9yeDlvd3xKOTR+Tl5Ya2M2fC9GPVBCVFNfQzdTTlg/KnAzfnBCNEBbPU57dUg6a1t7ZlxNNG9mOkN6N2d3amIvcVguUE1rSFJCTXV2Ump+XXpbVVNbbSh0YWBbXmY3SG97YmwoaFg7ND9zSXsxP14yVGl4P292aDRGOVxnN09AcjUuKU5nZGx3VE9lKWg3W2FNMnpON3tsdjE2bXc1Y1xQLH5kYWpLTCorVDkwfEMzSjstW1krXmAxKzVkdkdfaHVGUkVGcG44aG82S2s3TWk6PU5ge254Vy9POVg/dktfM0VOVS5xSENXRUEqY2s4P046fVN2KWxPZFVOWk1dMmJaZjZHb3hdRmdYL10vLUkoMXsrUjV9KGtyL0NuWUpjVXpEYUVEdHxgS0RlOFtTenNqWjhoeXk9c0k1LHB2KGQySihrQ1pLVD9AMl9LRENSZnUsL1t0L2ZjTjtHOHJ1LHN6TVIwRDUoSHd2XmFgR2FATEIsQC1UbU5zXmpSPV5YX3hDMzRrOmMpLGVsZXU6c0Bcan5Ka0NBQ1ByPzRHMHg1ZkJaWGdFSkk6fDdJeUBMRVp5VztvU0lpbHhlPUB+ZkdCUjpHSHFuTjpoWlVCbUhyMjtSc1xROFxreDJhczUvbUB9Rl9ATSx5VnRcSDJtbno4cTRvPVVfXj9JTGFidTR4a0VfTjlMRHlId3sxZXY/YkJdNSosdTtOLix7Tyl9bWoyT09ieXk1ZigwPXtgOjgxTi1YSlFIKFtkKy1KKEFaeHMvXGctRkpxOHY6fnd6XTswRWA1aTZnOFJSWFIoa3J3QjNKckk1UENVdGtUeVZWU3l+NDNpYC5TUj9CKG97LXBAPXxlbnB8RV13Xk9WdkJ3aXZTYEt5SEhTPUM5cHh7VFRKbng0RGNkcjNGW2koP1xAcjNYWi5TfjNVLm91dnBwXn5IWV95fWp6dl9eTFtfZ3tpZnVKeUBUW0ZOLkFGXnI4Y1hhYHZHR15pVS1lRXFMPWdUTVxvdzQteElnP0gvajNBSk5oTks6VjlbXjEqU0p+bEk7YDQvT2JYfGgsXWhQLztkVEp9MTlCTylYTHNdZlYvT0VGM3suPUFhL0F+cGtQRFJVXGI1Ym9DSzs2MF5QSWZwUEQuaEVvLGNxLH5AXmw4fEcyOixWW1h6NFk0bHVYKWt3NGg0ey0rdmh9ei5pWH1jSChlTHZNZDpdO0pyfEZwfkJFWzBRUmVRXDRvKXBtbXJnMVpCSHxNX3lgN0RjNFZ7RV0xYElUXHxGO1J5U3RdMXd7QzIxXy93THgwe3FbVi5OTylxQylGbU9aXkdoUTNrTip5XGplY01WVkQob2V3Xm59RmphdmwtbjEsWUNPQXxARCpGYTQ6L1p+a2VnTStAS1xlKXo9XDlUNGpzP3RYbFU4YUwoSC4uSDVnQ0JXTWNAdlxNZ0BcfWQ3eU1pNDJlQEhJc0J8NSxpVV1wOl1UYyxYTSgufExxUlA1UFRDTEhLXD00YFZ+L2t8K2xLcWYraFRfQkVhb1gsWzleZk83L3gudj1UaVNwVVRkR3F7ZjdqVEJXTl1MYStgYkFmfmNpWEBbXzJucnYqdm1rfjdSXT0qOEJIU3poPz0xWnY/d0M2ZXFad1FgTkFOdURzUkM5ODNAclJ7WUg6amtjXDVtOTkoUTZCVzMyNl1wb3cuQmBdXXB2an49Mk17RDVgbjVlVWo4bGpnNkFLOzVXUH1odChJZW1tW0RkRVY3b11ULy1feV9JXm53ZTViX1A1TG9eN09yV2N5Ql5yO1ApZS5lfTovYHcofHNfPzBAaVkuYjFkZUUwaUBsVFQzMWkrcWZtZFYrO2YrRlRwcWd5XTM4fTpuVHdkTC9KKSp1a0NhYDdnTCprNjVqYz9NK35edG10XC19cX5BTlxpTWIoRVs2Wl9FU1kzYXkyZDBFOj80VS15PSxdV3ZmbTsuUTJAR0VlUV5sdTZmandfKF4yRC9odkhVO3peZ2x3MlBdRltWfmt0XWBUaE5WYnpwdlBHb3dfVXJ6d0w/P3BCLGxuR3JiOTF8MU9rN05wVy06Q1o5USxQPXorS0JmS2l5Z1NZLmlEQjs3XGlRZDRIaz1hL05VVXk6WCt3MygxdmkyLFByfFtyRSt5XnQpeUI7OGZBeS9SU3JkYXVHcC5qMEgvUVl1a0gsYD1yXUZRcSpgUXx2W1gsekVodjZAei95dHs2ZUpKZjY3UjN1OX1yZUd3bTlNQkVmU2tGbncpemBRfDQzNWc2Xjk7T1tcQVJWbyxmbkgoREl6P2d2fH5fWHA0KixxU21bYXt8MS1QdV0wXDJXRUFOO1RVV2ovUFxLQU5mZVlQdy5eUzJtVmswY0JfYndhYzA3b245YX1rXCltTkhlSGdNSD94bWJ2dCpKe25wRW85fThZS0NhUTRma2dJNj9lXGlXSTdneDNDM0EyRy55cWE1dz1zMzQrWUNZakVYZn1haV57PTBlW3hHXWh8X1ROKUYoKSplR0RqZ2w4Rjs9bVRPaytVS3BOQkIyQHlBRTcyLmUxLzAtWyhjfnNwLzlwP1hfMWdqUzBnSTU6djtNb0FwKG9XZEVBK0FIek9QUT1aX35CXD1tOWI5MWdxcllnaDB9czp7fj9CNi1wQCx6cDVzZGRTOS57aGFVUVJ0Qi1iejdtK3l6MXwqMVV2XyltNmNQVU1KV0IyNDp5WFJFaXkrLHYxOC0sb0FiUylmRjtZRCw5SS9kM1ZDdH5mUFBrQ3FHWnstXFY/Nz9HWypfRko4MDY0ai97dUt6QWNwMlZRanVXVXFvfFQpKmRbKjZtQ2dNb3c6O2x9L355RmQrN3RrNXJhRU12W1ksbns2MEYpVkEqVVZcXkhdfkpZPXFpPXZdMSorVkw0QiozM1VISzF6ey0/eFR+LkFyWDcpRUNRTmheYkFvSXQpRFUoQEE7TDEpN0RFei9LNFNGfWxgVnxfN19FfE5nVzN0WFJMOVN0ci5tNDpBVj8vKTlLR3g7QVcrekk2bEBtMm8zWHtjME9HW3E3c3VkZGlJSXlQQFx8T0AvXWNOeG9HUmo1TChVbXZXd1BqR2t9b00tOCp7XDdULW18VzlNQyh6LC9xckxadnFKN3ZiUE1IVGovTUE/N3pKe0huKE1aV3BwLHNkclFebSxJRmhhb3dNPyhSQVwoW0RyWHBzeGdtTypcVXRzWHh+SUBKbFJnOktzXS5VUy9jeGwxTTJURU1mfExBXV49X1R4XktOb2o9a2pPSWVqKmdhZn1UfDF4cjc0NXZdZilPQTRBN1RlWz1iY29nfUBibVk0S3QsOTd7THlESDEpXGpgUU5HcXc1Zll8TGMoV3hYfChkci97eE12eFAuUn1uMFA2KmlPdjBVUFloNnlMbltIZ0BaYT9hOmF5PXBLVkwqZ15jQl1DZUYyK1YrX2QpOjBnSUU1KzQ0Tj1gU2RLe3hwPXQoPy1LbnZuaE45YFE1YzhZeitvTS57eUZ7SGA2XTd5N1AyRWxTcnVYYHVdMi5Ec0kxdEl4Y1ZEXGhBOit6UVhSXXJVejptbVx8cktDUzB8NT0wa3tIbGo5dTlUW2NkYExxWTFeMnlaLUc7TWBNRFJXWlsyKk81O2NARzAwK0Z0aUdmcWhYS2RHdC80eXB2LTAwVlltY2Z+ZW8rdjZJdDUtVkpsYnBYS09iPTdVOElUeWxfVHNlUXIyeHVsclNVdV9xW2J2QEE6OldVVXpVdV96b2JmQVZla2BPbEY1SDs7XmJmYitdUk1NP2BFP0EqXHVJR2ZfTTgwWlhYYVllWF1gZVdpUEUwaVJwaShwKDZAYXApdzsoXFRlUDdEe1g0Mj1BZ21iUUw3VzlwSFhqTVdhX04wRWJPflpdcUl5T3BJUFZHe2paOnhKN1M3UD0/WmVxY3pSWDIvXi1QZHhiNjN1U0deaFRnOkFCL0hcK2VEV3ZEVGdsO3lQUjg6Z1JwKVpKMmouKndSW0JWWTZAMlZycFBbezY6amEsNDVIKkpUMGo/Tkh9KVBVdDlkQFpoQ3lFZFFmR0lIPSp+dldCTC9pWkY7NjlreWBYU2JxfVJjY1FrM1wvRFBsTHxIXUNvPy1wTCx3Ul9nLms/M0Asc1U1M2t0NUJKbXhjcS0qP0k3cD0uPUQqZUBgcjpETTBTWVpsPTJWUlhedW5Qe3U7bmV+KC5hRjc1VXR3XF8ubWFHLDo3aCxILTEzQFlVTG1RakBKMlxdQ3R4eEVyLjZTQWcpRz1sRGMqeEZcKytcbnNKQ2Z0T183QklhfURmYGJDcDpKQGlnY3FhMzgtd2ptd3Jcd21ZU0JHcFtBLmtHaVhydSxVVT8qV2x5bihGdzhyYj1+ekRdVHouVy4zLWZoeWRibVA7SG85eXFqL10vS1R1MTIoT2lPOStgeFdbbmFlW2oofWBpUyowaywoW3sxdllDc1xJXVVnbygqYk9YTy9IfWpSMTpXfFwwOHAvZUBnS1Z4dl1dMXooa2RnMmEyLUJCdHNxLS5vclJJZytVTltKUFBBb11tVHFpP04wSEN6dXV4XmVoPytmdm1TVzg5Oi9fT0h4YDVcNFFPRXQtbW5cZVx4OiwpUGktKlhCUlNUTH1cb0F9UGZNWkIzNSpqOH4pVkNXciooKGJ2aU5YW21VOSxxcVosQEpGd0Exc2Z0eDBVcTlXQHwzMShcVzFEelN3bTVlYStnSkhrWWJ7KkM9di8pTlU2NWNcZ046L1tcUSotQ0NaYlZcL3x0YFVEcGtBNn1nbzRCTXF7M2Y7XTszOUVXdnd6W3VwRnFwbilTbVA9VUlcdzRlUnJEQS8rfXYsT1gqNykoRU4pSDYsRmZwXlZOVEF7OnFnKEsyXmZ8em5YUz0sZCgrWnVfRGFhKW0oZlRGY0dyeXcpRT9+SzhVXTVAU19EcT14bGIvZzBxLU56V3xzcGdfcDstWnBAaUlNWVNtLHosZVMpVnVXaS8yOF1Ab1BoWWVYeHNqZzsxYDNSbGk7aUI4Uz03cUJCZiliKmtpfCtZL1ZZfXt5Kyp2NCliVGF5TWh8d3peV1JRb3NAazM6ZW45Szs1OGs3S007TnApKT9qX01TQ180QWJUZEkyQE1nfEB3KF9JeFhBWzdveGFVQlM5KGw2clNqTE5tZHktby92S19rZlgoTlw9PzM9c2Yre2ZIdENJXCtoLEZmLHB4X05tNGdiMlgsKnFpbVw5ZDBmW3BZU3JjTEd3XUdgUnJjXXlreGApVn1xc2FZcFheOkVmKE17Kjthe3gwKl8qX2plW2l4LGd4cl5ocn16TDJ0OVNXQXQvfExlTT8xK2taTjVKYzRYaUlEKWU6c1guZERob19gN31mS3FYVWYxVWxrUTp7cG9yQ1kxbWFZXFMwN0cpYSxINHIuSHdsP2QzLX5CcE5Zd3VAe3djc1FxYGlDU21IfV1LTD9aQVtoWitvUzEyQnxyYyo0QEJMQ1ZJXHZCXHdNYHRbNz0yVlp8XVNoW0J3LHlCYEdLOypNNWVadkRkY2pAUWB3Q1hmZl83S0hkYVVfWlI9ZypYKz01QlZ3aG9OSVx6KWt6NndsY2F7YjtXRUc/Sz9lSFZmUXVSYlw4cEx4U2tlM3luOzd2diwqblN2VXtHXnNte1ttOWFUbWI2QjtsRnd7NzQoMF5ceENnQS0sVzBwRWRmQUtYX0pzWFIoOlxsV3FFfkhQLHc9bV8qZCxSVktaOixXSXdkT1pZc3o3NnFhVkd3bjFmMXpXTjBPVEcsQVRlRldgU1stMkxAeTRha0ZtYUtWS1JVPVdNTEh8Ly8odHZDR05SM2FScnxVZ055T1h5PTdWRV9lUUVAOCpdLGJrQnV+VCk9QFEsSWlaOz9uUWhpdTV5TEUybks3QnxzRD14L25ifnt8d3lxXHhjek1PaE9hbWxJNUQxLWgva3dyMnY4XzcxWG8xXzkoLGJWO3tVLDNNcGA9UHxqcEAsUHhmTndqKVZEK1JkKlo1XGsrKl9HamlGTVxsU2RadkUsPVhhfk4oWj03MjM5YGZFVVRNaTZkc11NTnR8VUhyTmU2NVsofl58VGtcV3NRdTBEemo5NXFtay9oNW1DdSpaL3JCLVJcKkhoL2k7SklNK19WKTJcYHA4NFpbMDtAVkRiQ1JwX0pXZihoeDFyMnxGXHZNOy16MFw1ay1eako0aFs7WCs6Wy1fcjt2Z0pWX29OXi5NO3VifCh5M11VKGtjbH1+MXRQNVxCe1dqbjlOP3UsOSpVeF8vYGouUnpyO31hM2x7c2x1ZyloP3E2by5YLXtNen1zZih1cC1YeFlwZm1ganhwMm04O3xxd3ZQZS1gSisuMDd9cWh+SUpZeGc0OV4zOlVhNH5JSzVUbXRuSn49YHZQQ305ZktFM1NdXmFzVlU6PWtRMThIaF5ZNzNIcmBWMF5yXF0qLV54U3swcDlyTE1sci1cQDNxMzh1c0dScTcoUVNYR1NaMXN3cms5NHk4c3JocDAoLjtmTHpxSlAuYml2UV03Yl5IK1BqbGhgKFJVTT9KQTA2ZkxUXmJOKVszSk1KS2wuNFxfZmA/MHZWSTksXXlTS3RpXExWYGhhWGdhKUJcUWQ3cFwpWTIuaipLbHp5WEI2Wl1YQUxBTmlId0BWOWZubEArdjA2YnpndGZWMF1SZWxVYlJQbzRhYTJudV9BbHxDcGY3OnxnSHBVSGpoT0tycTsyPWwxeV89LlRDOVNoLTApc3hTLElkKGNNRTE0MFFoSHR1K0JmSD9CVWpXS0wyZ2pnLWBifHVrQTMwRndrM1RcPVs1Nit4K2UpKih3VDA5dDdhQUlKUHtYK2RqXXsvam54Q3VUYk8telx2TWZMekJfaG4uc2J2LWg3Y1R1ZUNyN1F2S25NVW5qWjNvRX5GRmQzMHZ0dG89T31nRSovLGUsKHxRbDltXXooQldpS1FPLUJmVGttXlVyRyljSjA3c1JbOkhsQCpdKGJPTWZ+fkI5WU01fmhgZGFWK0V1d3lOSyhUVVdeRGpEeUBURWoscT9qc0VBb1U/VTZoWy9jM0N0KEgwUlA7K2t+XDlvWXs1dk4oLGx7MjhAeT1TOWNoRCtVNGlTPWNOVDNpdEpsQkQ9eW5ndCxvd2BzcWUvZzhgQlVMW2YyLjhmV2gyRG9lLipWOVQrRjpgWjlrOWR1YFA/Z2g5P3dMKC1oMzF0RCtebTRyKTcyMVQqWCpBTEIzUXEpYlFKMGE/cnVuSU5eRHh9SWpYX2p8OmtbZnBNUD18RS9JNTgoRkBDaSlEWSg3VkZdYTc7c01IQHExKW1FKy14QE5cYWszQF1AQ0VSPTo7WzZORFZXUzNMO1JJOncrXlVRe2lEUl5cRUF3anAsUC5GWGJHdVJLbkRWKjUoeVNMXyl0LVhoTWY2YC87UXRtNjJ1VWltWHpxNzVnNTQ/Q3o/KUpnaClRM28/SH0qdDttcC5bKkBIb1kpLzljUjN1RmopLEtcZW07MHsrfFwqQTRoKk91ZTErcV5NMClWMHNKWyxYfUBoKndacDF5SS1LQFBiZyl1QWg4TSguRXIqYWdERDI5OGMofX16PWlMM09PdmN3P1k4MHxQNmZnUml1R1Q/dGRrZEs7RnZUSE5wOVItO3ZscVFcLlx5ZENLfEhVOlBVKz1Ke31jVD1pUnJiS1pRUVt7MU1Uak92V2IuZmore01AOFZwc0gtVmgpeX1IM2FPRjtSK1RyXXc4Zys1dkU1YHNlSC1gXkhtOVs6dlU4QE0obVwob3xtXGI5bl1eZE1zODJ9UDY3Sy9ENG5GWGpZekw6LmZAKTdFP0pAYEtAP19GQ11pYWIwKWx2QGIwd0hdLkxBdHFVZitFMzlqOSlOfmdbKlhLbT1JUn1CPUFgOkNUOERFKUp4enVWekdSOndKOnBCXjZWUjpfdnFSX0FSaHI1P3woWD04KnE6fGVlQS5aOz9wTXcrS2Y7Tz0xcUlAazVzP1t7XUstcG1JOmBcN0hCdUlMT1BpcUZ7VFc1RU5mQW4xXj9zKEktdjh5N3Y3ZVRVTVh5MkpkXVBpc1R0MHtFeTVdKnlneVJ1O35ub1Bvdnp9flF0dyh8LnhOUGJLdigwT1JgLl5sa0wsRVVrMk9CK3w5SzVSRjtyOkhEVmEuWH5SZ2hDR1FEeXZjX2tyZWltXXxEbFhxV1NERGxsXG87S3ZWQzlsRGdrMXMoUnovKHVaeUFmdyl0YEl9YV9Fa3s3Uyk7PWwzKUk1WiktbE1oZ2VPe25jLGBce09gPTBHX31TQ1FsOnE0U35sZ08uVV5Xe0FLOjhzPShtSG5GcHxJcS99MWJKWlFORFA2RnY3PV8xbDNwUCtMKGRtTEJlXS0xNWNNUGo/Ylp7THNrQXZeRDtIKk1BUltSaHBXLFNRa0NNZE82d3laNFFkXEtwc0s/MG0wXTY3fkpUZzZgZlprNlBWOi1gY34wOC1zXW5tcmBJQVZPczhQVWJqZE0yWTZCTDJQWkpNPVg6RF1fSmBgayx4cWBBZFBhZVRpKTJ0MEk9YSwxUkVccFhDTlV+UWNlUDF2U1p4SlNiWmd+d0FiZURuP3VYYTMpW2hbMTZBRWk9X0xIMnJ+PShUaG5aNGlEPXR3O28wazR6SD97UmVrTHlccj1sUVVhSmRzXF8yVDhHMi9BXn45Yio/QnMuMFBUeGN1cHZ+OD1bKkBIamRGPzVTWW5zOTBuT0Fse3l7aWVKU0p7bEN0Qn50LWNgTi5KVEJ9VjlUdEBRXkQ9cXJ2cEtMZ2k6eWJqMDpucHFecEl2QmNEKC1KWzZrPUEqSHk9MCo6XWhzd18yZDRrN2xvMUlQRmFDbUA6elIyckVcTF5uUGpwW3FpPUg5Wkl+XFFHdGNoLXRPfVlgPSosVik1K1JeV3AyNk1DXzliaUBdRlxdc2dkWWo3KFE0eihYY1lRc0QwRXN9SklwNlpbK25mdFZrNlspYEF3XHY5cU94fERgOVRLXVd3XW0wSTBfOlkzK3t1fisxXU5wSkg6TVJpaixRNFhlOU5gYHl4ZTF6c1xtUChxNCxwLW1gaS0wVFhjMn5KYS90LzJedTZkaVJhal1YXUBtXDZEWVw0dGNpYjJZWGtteH5IKjpWY1k3ZEpmYDJudnNLNTdpNkRVYHoyXmNgOjldd2xKUV1DKFc0bFtqNm9eW1BmW0JwLkpaMW5CVFNieHZ4czdiKihvWlE6SDAze2YzeE55M2pvajJkRHBwa2s9W1NyLmtFZH1caFdYOjtLL2ZIcFl3Zyl2QUwpXkpmZDotfmYwXzJQVU40XER1UFRWSlpvNGotVTlESWVZRDdoRTdgLjRMTmZZYEo6WzBmXV8uNW41THNJdUZqSXNJbnldTCp2LDZddSpXSXh9O0lyLk55KmpcLlZsNTReS2Q5Zk9hTy1zfHZlYi12X1Mwb3RdZkI3UEtbaWhoaF5NLX1YVVBDWjFhcU0/RHljQ244TWNUdTspP1JUWzZoYDI4ZX5qYUhyNytqM2pwRThkTkk7SSszfTAoc2Z1TispO1FdSSg4M0lyRn1NVTRbP1R7UnU5S2BkUnR5T3wtZX1PejI6a1E5e0greUJ9SWpKSlM9dFV7e0pNZWF1dX44dm06ZncrQFxMK2dXMEpceVEyRGlrZmZUMzQsLWM/cD1URXhfLkd6Zmt0LHp7XnZuSG5sdU99S0h9bD9AZGAqUmVdPXVUKnRSN016Nn1SQzR5V0NnLTNsMGdadSlYUU1yUithcio/Kyx2LExufnZgL2FNKC0wR0tQSmV9eWxvXCl3UWJ4Mlg0dDQpeVxsW1ZkMGZQOHFBWnh3U0M4eFI9QTJQPUoxKTJaKTplRElkd1t+cSpDbVIvLFVYZVtgK1ZCSk1OXUQ1XF57a31VPzJvKztWP2Z2KE1Uejg9aSl+PVhROjlKV1ZQLCxYSD8xbkReNkJqKDI9QVliW31rM2RdWlpcVWBONzZuZX5uSj1QfnVDNHFuVDc3dGBxWFNNbjVpODdWc0Y/VWJGPWJQaGtdRi1AXEh2d3VOTUI5Kn41RjRqYy1fRG9DfTg6RzUtKShMTCleOlpsYGVtOi56M3s5VW1sQVgwLF47WmZKTEhgT0ZuVVtoWHRRQkMoVHoveHd5eTBNTUQ/RkFkYDoyNyx1Mk9ZV35VZll0WDpVbnRjR29gckttQT99K0Q4dyxSREVwYDU4XVY3SVtoMWkwaFN2YUY1Vk14XFRfP1l1LHBGKUZXMmZ+dUNkLnl7TW0sNlV2KHRQOkJqd3h7VlJwNGQzWF4xWGtZNnIpTWRcfHVeSF93R1YsakNSWHotKHhLMGRYcG9XKUR2bjtQRUcxRytnOFlDQ0Z9Z1hyQFZdOThkTFdZUDFee3pSVjRafSk1KUcxXn5WVGUsfjlIUShNTmZjeC53XikxUSpjUnxucG1XV0ZwQUZpYWltalNAXz95bUhVMjlHdTRWeXVvO3ZtcHZfe11Ldk1maH5NflZcQzdbK0RcTUVVO1FKNV9tejlEU354NXxqPWR+V2lrelB9c0soOGdmMT0uODAoPXVFSjcrRlNuLmteS0JRP1c6SWM0eW8yYXpaaFhZM3QqRjpzU356VWYtdTkxQFpwazZ8TjdgXjhcYUBfSFZWNWx0SE4pNk07Lm4sOVFMM0hWU15hMUoyezRaa1hZKm1GMWY0dXNqNXZgKUtXX0Z0LT01RSw0dVZcayk5SEB2O0FcfHRqdjQqR1YtbFwoOTZydDszWmdIU3NkKlc1KzhvdEgrOG9sQEswT2pCVEZZMzk5OmNlRWpQTW8yeytuWExLT2E0RV06YDE5OHxCODhCM3dzYyopMmJANk5rOWFKeHJKXWhwZGxjdGFASjNGZ2RcUW0oUG5IMTZqZTZcMl1kU1d4Oi4zbHsvfkFTTFc5Nllgd2V4c0pxTGE2fHp9e2BzWE5LLHk7N0lCNz10L0x1Xkg5OXowUjJwRXgzVGBOeUE9UndZNHgqSCl3ZTNZbFJSKmJuZWAofkxPTFB7Q0ooe3N3bWxqQEhJP3p2Y24xOy1vVXdvLF5ARy42WXcuOV1leylIYFY2fkV1X3N1dzktSm9nT3ovbGlZX30uLXYyaWk4LGI0X1c3R05TdTgzUEBiR2oyMGlZVXM4VkZDN09xOS96R0drRD9YdTBDNHs3X3c3Qz17Z1JfS0lOfFBHXHQrR1JKOWB5SSxkdUM3VCkoUTNDZlBcKHwweWhOUS07fS0wLjJqcSg0L1NtaWRcWk9pRVlkK2tkM209TWo4bUZiSllbUGlPNjViXTFiVG0vaFpzQ3YtO0RodWJZRXF2cjtNX1U6RihfUEJ6Ni03YFQ7Q1tNYSlPbUN0Ml9FVigvaDhlfnhUKTpWMD1mbi9teUNMbi5fdDJUa2h5QV51enJja2JZc0NDUWczVmxOdmt0WVc6TStKP2Zma0hXamZhMGhPMk11Wjd5XExnbUBNMnZzbi01XmtIMm5yQmdObDphNEw6QVN4K2U3TThVcXVzZG9cSjJtMj80aDR0QHx5ZCp6e0tvKVEqN1dPO3s3LWJIeShva2M6XlJHVWdoREhES1Y7SkVaSTNnVXw0VXRGd1hedy4xcWgwQlNZdmZCfFN1L3tGTVI2L2Y/dVJ0MHgyaEE3OF14SGR5RWg6aSpLVXhWTEUpdmN3TDozW0Z8NzB8WCxeVm00S2soREtDRkNVdVs2VC9sX0JqQG16KyhvOWZROUJ6UV5FVWhHbjVXLio1dmRRKFIzdHdaLlthZ2A6SVwyUGorT25rdG1IZjh3LkNteWNqTV82S2ErYUxHalkrKDJjO0J7b3p5dzBkSVVmbCw9Q0BgO2BRR1pVRlZPO1BzRFBFQFlyK2RaWjFJYStBL1RIMGAoLGUtTlgwWz9lUElDXWtPLWd0ekEuLWJOTntUXEA/djVBbH0oTE4vSWRsd0ZMNWZmMy0zVzE7RVl8SXxAUys9KmxZdlctU2dbSjJfNzE4O1Z1RWZZeSlVM05pdWlQUjF7QyoxT0RbNFJrbllLNTk4Xnc4bDZoelQwNExRdDROfG0tKGFfWS5Wd0BiSmBkUWtIVHgoOGtCT3w/LX5VaG99dUJiakVpUHI4K0ptKzd4ZFlXWjJbWT1tP21FNDIzXXpEMip7dElUVmZ4b25lYGlgMFFwOVcpYShMK0d7fTh4YlU0YTBkMjZORWxGMWpQQV1XUTs1TWp4ezRoZV5leFZkWyxkSDN7ckBkNHlqdXhbdGhPTVUuLSksbUl0RzIrU1h0L0Zldm80LTBhVXVUX0EpP35VMmJtczQ4Rnt+djNRXkJMTGVMdFdbZWRefD1wdEsrXnNvTE9zMGA5bjdtVkZbdFh6XD9AXE5rNTdzKEZyPS80TV06L2BjW3p1SFpeQlZFL29wOGpOL3MvRFxDWlhHTEQrX1tuSFNsemd8ay56ejc4azhPKj1CMkNuKC1yOzRhOWkyWlpJOUZ7dWpLWkpMMDgxcy5NfTlxYio0TV50eCspYH07KHg5U1BRKltPW3FmVz9PPUdAb2AyYTEta2RDL3dxUmVRMU16a2RUL11aT3VkQjZSV2ZIK1I0NXJ0OGJMU1NaOTI2LUEpWDZLSjFQR2pHLSosVkpIX1RsVnBpK01ESi9uMkl3NCpDbHkoVkBDLXg/OXtkVnR0TFNXemldM2xHbWQzQC4xazstamBqQkFVUHMuNFJBL1phN3N1QzhQWlp6YVZbVk5NP254WmM0X0pIOXdtdm1YNjsuUy9Ncll1VkB5VXJOey1oe1ZsY1NJKX5wLnhfKHYzOGtUUEp5SntsdVl6akl3bWtyZX4wZXNqb1R4MTNRXFlWPSlDa0JubT1JN0hCYk97b3hKZ2BcSkRfcCtRMCk/OHE9eUxybH4vbWRXcjdZeTooVjV9KmEoTTNjKW5SZzhrM18uMEJ5aFJjLFV5WUtzOjJXckBdXFBRQC11bSxGOVRWLWQ2QSxvcUFuX1svSX15XEl5eD1yb3R1LHY7cys3eWlbN05AKEF7PWlkLjV8RkkwKWRgVWtbejUsN3t0bWBxfFtMVTBkM3w0bS9uLH42XzJ8Kl14M1wtNGA5MnhBVipQOWg9K2ZTUlhrWilRSVEoc1A9LF5wYGlmQW5EQFtLdDM3ekVnd21EQ2RyOj90OlB+QDpCaV1yU3tAfHU7RUVhKSxyemxMVnJtckE3eTBqSTRaUkNObytRd3pHM0dnbEopMzdyQXxvRjApOz1jUyxcMEZKckJfKi83SGZQNihGXntrLG9lRD1MKj9la0g7VlM3QUBSOlZeYXl1djgxSDtCUGheM1I4QEhaczY4ZGlvUUlhYXcrQzowNTB6KU5FK19MNkVURmNpbn5oKCk3MDEvcEdFe04qd29dXU9qeEo4UjArWHJbXE8uP30seHZRdjU0LU5ELk99OjMrSVBVWSlye1VBe1hyWTJddjZIZU9tdU09K01gKX1iYXpSV3h7eWVgUUV8c2JSaWFnWCtlYU0yeF5yUDl4YHNnd0MsTGtQYTtQUzp1OWBZW240fGRpPT1LOE4yTSx5bz80Q1BHXDtbPVNtMHJ1T1ZYTTFXVDd2SXdTNFg0VS5+bTR8OH5Vd0orQGoqREZsYmlyfilTQkFJMngpYGY2Ty1xXFN3aHNcMlhuaVAsVGtfekkyd3NeKko6UnZXYFxLTFJBVm1ZSERZSGx8fDgwYzl0WnRqdkJaOVBHKndPaDlMekFePzF8V0dudk5iWW1NU25qWnNkVV8uby0tbDApMzpqPUcqTVcyVHlRVkdtUUVzU1Fac3NzSl5ldHlqc1JKNzhfZmRgYEg7SXkuKStLX1VIdzE5OWh8XGFoMF5FaWMtQClBLm9ic21BY2Bed2RpSnk7R3ZfU21lRDAuUG0/ek9yNkdDZEBUSHJFaFdtRD9eOHVEaVhtRDRlSlBybHxWXzozT2YtXGloT3BENkxOOTJpOWswKm0/Z0ExckUtckteMy87dm1DK1kwNndaVHFkUTh0dTBSUGFoK2liMzJBbTVIWVwwNm1BNjYvZGFra21RL1NdKHE1MFdOYXR2T35yUEJPS1lUVDR2UVh7T1NMSml6XTdAeEh+T1UyeG1eZkA3YWI2cWZGYSwuW0wuQipXezBxVVZjXnl0ZmBaMHlEYVRMYnhbNlctL19aVGdkL2k5WHs2cCt5LCt0aWhFeFQ4MEMqN1kxbSxtNS5LM1QtLDpiOWExLTRwMXx0P1xqLjYxbTcpZntrcXdicDJ0VUd3TFBEL198SkoobXRNVVFkMks7dFUweCs0NFJeLy55VDt2ZU0tPWQ3YHI5dTspL0hlZWJ1LWBWU0dFQ3QtfUUuflIwVnYudlFlVWg2UGhxTTMsRHJ0M2BeWlgtKVEzNXcxNjlmels1eHlCe15PNmV5X25hZzlMR0NvdFReYXl4eXNxU0VqfnlabCpRfWZieV9DWDhzRy45ei9tVTRdYDF+dE5INmAqSmcxV0lyRlU1UjI1bk1eW0ZHb2xlcUd3ZmVNXlBUK2VgUjNmP2F1ez9FX3ROWGlLQjo7TF8yNzVgaF5XXGgqYy1CWH02SHJLc0g6MlF3Mn46XnVmbWpAKWksLnh0cVpVT3JSUnhgL2lmVU9qOjBjQDsvWi5tR1Z4WUszVWNpO2RYWl5xSGwoO3p0WipYb2xFKjIsOjhlR29eMnAoUHctVG5TXk9dWmtuYn47LUNHWVwvR2syaytqNVVvbVI0WVZJdGpzRTJUa3t7O3Q2Y0tOZEZ9Sik5fkBKYzQ6fl8salM3LjotcWFnKkZfeWpoVl5jXnpveS83WmBJVH52fWBWLTh7XE5tY0peeFs1L2guUDpNbVpUbUhXX3dHK1ZJW2preTpqXTBbTTRVKFFpaythLVJVXWU3clhdPUhKX1guTzRvbE5PPThvXXVPO0Q6e0VJeXZ0c0lLNVdvZlEpN11AVntkMG83WDlCT2BQTm5xa1p9VCk9dyxERGNdVnZNNVgzQFQsQW98Skw6elNcXnlaWGlWLElFR2UxWi1aV3lzdlg3NTs7NjFSYXR9X0JxQWk5aSwrYDBOTH4pfGgpLHlHQXF8eDFhZnAxVlpufWY4My9HXDZ0VCpaP1RaUkhkQVdIfENrR3hCayxRdylPLW9ybGBpeFV4anRVVG4vbUBadnU1WGBPRChBNDY/dS8yei0qZmBOY2tuX3ZPLUR+X0VkdmRRSn5pQmRIMHN2fElQQm5nNi15QlFGN2FSRE4/Mkt1dlBLSTNyfnNzdDN9ZyhLangvQmxvdFQ1MDpsaT9ZaFpMe3RQK25YNVdJO25JeVEqNno0U35cU1h5a047K2IuQl9lW1tEOmhIMn5VPWlFKF5abVBEZFg1NzlZMVNmR3BjQEN4ZihESGZVMTUsUyhWYisxXG81MksuS3dANEUtWlVtLzBQXjZab3RwMDkuYFdPLGdFP1xMTSt2ejM1LS5ZX3BmVmc7W3Zuck9QNnNHLVF4e3ljdzt6QEM2UktbZWtBdjNuc2w1VlI5TVZIXE12X1ZeXDguZitQRWVbSjhuN0BDeTpne21nYDtERUlsblVSYUpJP2JwWjVNbHVyUjpPdnQ9em46ZU9kWyouaWZoc1x4LEB0K3VUMkZeKGhlOk1ENG9sZERQblAuQTc7YlFRVz9cND80TypXdT1yRUVlTzRfU3pyVy9AZ0B4MmFGXFBmfnJwO3Z4VV9XRmVlXUBOQUl+XzNEbXp4R1hdRWBdZ2s9NltKOWMsZDFFXDVALmpdL1pjRyhdRU0zbWEpLjYxLGJxRl5vSVVvdi9xQig9d282WmtdSilNQTlYe34rS1ppNWBbKDpIfXk4SGhRRlZQT0lFbypbLTllaUA2Q2RaMWg1SHlTXm1YLG5JRil+Qk40MVFadTtkZy5yMC1IcmNmQ29SOGpha0RpQikydEliWGtScDEtLEYtNlxvUmlFMzNIUEZUNT9lXC1JbVlDKFxyOjpyNCs/Oy0pd3N8X1dvK1FtSG16TCpaVlBBLnJeQ2J4NkBYdUdqWG5LYl10VypkUEM9S2VgME0oU2MxenMpX1dFallkdSgtUmpTR1UsZV1AMzl0ay1dKWJLbDh8LmwqQFZVNypdek0pO3hHT3NSbTEpLkldXlVKLWhZbmN1ZW0paWx+LVo1Z3ZTcUtVcWZkO0M1Rlp7Wk11UjczdXRlN2liXEV9WkE0QjVVLGJzRU0qZHxETi5zbTQpbVxHSlNcQkFcejdIUFBYdXhBK2h+anRbOjV7ZHx4SygyUFxVXXZUcWUsQj90NDJBKU5yOjc7P200MFUqOEZ9e1oyQi03Kjh6an5BL0NCRndtN05BQE4zXH4yPUV8M2VJXTF2UlRBbzZaO2pucUM7N2x3TGhwaCs0THQqVEwydT9UOUVaNzlZc1d7W2YtRi0xbTJ8TlBdaWF4Ry0odDt7UXpoNm1mVWUzQmxLKTB8WnxUXU00djZgZFJ4WTtVYWxRa2ZQXlkvSFdDRGBfbV9Ee1hELWtoezNLX3gyc24vKl15flZuYVhZP2NEWUxEKFE0TD9aekFyVFZoYFFrOjs6SVtSaTkqVnJeVUc2ST1Me2dPLnJuP3pCUEx0dj97Z2tkX2BZVVlrNV5yNkIqfTNbeUc3e1s9OFU7ay9dN1d2KmgtTFFULjljdXRpSl1IMUFALFtmdilGYCtqZ3l8Tn41SGZpai0ramViSXoyKTFMWldYflwrMygsW2ooVGs5QTVRT2xgdG1EU1ZsQT19bX0xSnRhbFdtPTpVTHBiO3FtYSlOYVhwRE96YGFZK3BYdTosS2FEcVtCbU4uT2d6aHEvRE1aLTg6Lldtb1RYZFZZUG52aWJFdHc7blNQREtMMH1QMUE9S0UwVT9BUmBtYVFXbGp+ZFc1cjM7W3dwNkhUbnp9OGthTE57WE1nRlAoQix+Tn4xRWhpNn43T2VsPUwwWls3Q1tzVVhQN0ddVkpLU014Zk5EK09gWkBiRDlwT2xNLFIxNDBWbHJGT1B+e009Myh8ekdtT2lZLWFiOTVVPy1xYXhSTHNqPUkrL1ZkQ1JGKDE0eS9nbjBeZ1h8YnNiaDM0XkBURi5nTilHVzI4LFYrdyg1MSs/VF5ARHNtLUxtMWFVSXI6bSo3Zmc1N0pQZ0tWWWFAXkVwOnN8YDJ3LmZFZmFbLW46Y1FVbkFvcnhZVls3SFFnZW1gdUcoVFxXR2JJX1NEaEtjUGtncmFFXWooKkZGXy8oTDItV2NGXVguTHFRKTVhLXhwY2ZbZEhdbGc/ZUJDR2JaS2F8KkQ3bS9PNDhOV3FIW0MqPTJzbH5odHdiNi45Z1xMTGhKXGZbenMxXWdcYGBdNno4fC1ZX2g7VX44YnA2QWtyYSwwYjB8UzFaeDA/PStodC5RcGpnN3h4R3AzMWtDRC1sWWo1RnIqZH58L3R1XHgyKDRUcnExaVMxS3Q3TG16QVp3K3VHcnRSQmZVM0p2Z3VlYHN4QXFvUmpJZnR4NHx3aTp7amswX1l5YmV9QW9bTSpYMERDRFF0RzdYckk4clcoVGh3alIrakxLcWdJW2s4RGlfRHRFemliLW5ccW40UmM1XFRSYUEzUm9la3kqPXQ0MlxrRDs0TjhkYkYzMzYoSHowVzFqb2BfLGtHWjRueV57QGNgTChAX0QoLkczXHt7MThodj1YWi8pZ2NqTjtJcm1NMG1tXkc/b2tnYXZ6cjNJNl52ZjVlT0R+SmhAXWNdUnBjQUwubldVcFJKSVd+eTlUVypSKHh1SmZxelFnWURnRW9ufVh9PVA9TXkzezZ0YDssSXY5X1QsREFDQU51WWpzb0t7N3BRdl8vOTI9NGRDakd4KTFQfTh2KCl8NVIqTVJnMnF9MktISkwzczRpNTJUZXt4WS1RYm59a3VWXHBqfDRpTXljWHRjOnZTQ2w2TFVVdCt0cVFZWW17aVs3UVJ6T3l2UkpPWFVCSHlGc3F9R3JXNXB+R1lUYWRMVktxY30qQ2xScHF3P149aEVhZU0wR3c2bC1mR3dHSkJeaXYoaGUzazJpYHp0OXN6dVNeekY1YUYoZjJJTFR1eHxYTXd0LEwxLmpOdV1VWl09XFh5T0J5bX1bNS9gd1FoSkdRK3VhdFs3VS0ydUQ/MEVJVW9kO1szKVcxREIvc3lueVQpOD1iU28wbF01ZGtOMmlTbztIWUI/PXlmSFJabDQzfV9lelBidTJHT1NMcU92WyxWM3tgYDItM0xjeCl7dGFcbWldKXEtUiovfFxgUTJRNChGaGlbT3B8bnZDRG5LM2ozZnYsKTd3fntjWHVlZk0oXi5gOjdpUWU3cjpSd0J5KmJETHlrfVguZXdqL3MzeSt0Xldlc016ci5nUi4wMm5xO2w6QW0tcWdaMjFwMi43dzpobz9LVihHVUhCSCt6Uz89VyptUTAoODJxLnlDNTN0dG5ne3N5cS8tZy5VO3VXX0hTdVFMWFpvbiotO0lUXUhoRixUc1dgam1JcUBSVjs9QFRcR1doYFlAXFxMci5uTVlMQTRTQllAKGcwby9KZjBZaERbZVRsYUplcjIzXituMikoQHBhbWgwR0UoWWQrNUBzTG5XM0pvNkMrWVksMElgU1ZhSi03RE1qXyxFVG1IZzh8Snd7Y1w6ZjouQjVkcHdIZUJkWl1MTlxYd3BuaG1SP24vY0RtN2VETz9nLEFXXzovQSotYT03ZmlTbnFdOjRyOmVpYHhYUnh+WS83c3c0XXpMNWFARWBEamVwQl5FVzNkPVhdaGh6V3BMRWgveko4ZilZRjpMUWNEZTc3c3k1Z2ozOyk2OWRYKUduYkFRLTU7L05EbFtfRTFxW2g3ZC5kLnZ5U2RfXk0uMVhaVG0zbUZpOjBkW2t5TVpnLX5FeTtWV1tUUVJ5dTNAa3RKNmFKei1BXW0qLW1mUlVxSWQsfS8rKmN+SG1rP2VMTDhNWEgxc3t4XjREb3hoL0A5Q0FSQUtlMFJtfEhnPTdAbE0oWz9ONExYXVIyOmcqVElqaDtoZ3hHVzB3N01hSytpZWJgZ2NTPU11fVdndS1sMjpfP30/dkRFV0ReKGNuWEBOYEIuUG0pbWU3QSlwSz1zWzMsKWJmUDNqa09VYGdwSG1dUU1MTnBieHVxTi58QjY6bG9sKkVsfWc7W0YvU0p6blYrP1VOdltkNXZOcUZfdm5ILC9nSShOMCk/QzUyW3hOS3oxV146ZzZeZVI0LkxGMmRxUnlVPU87XikzfVN0W3hgcFNKTj19W3lxR3UsaW0yTntrLHFwXFc2cjZqWypMcCpbS3tJUm9nUy9oaHNiN3BPQ0IyUDJ7bUgyWzpQSipiY3pETW5gMHpMMEBhK1xbPzlbKkBrWHRFXUIzakdwWGVITXI6UmxkVFVmPVp1e2E2OC1CXE5zLExwbXlLSF1HKzRbWjRYfHh4bXl3ZFJhVipudV9zK1U/MlVwMkhoclthek5jO2xHSCt2UzlwdTY1d2ZPdi5kNUV3WGlVYz9sZElEUEV0eC9hcThqSXh5KHJLfihHN1pSKSlHKl04KnZmbzRUQ2t8MT1cYG1wTD83fWFLeGB7UE9HfihvVHJvPyhnZHE5Z0Itd3dQcHB9SFVkUiwwNWdYdVJvRX5xZDdbVH5OOkJAU3J3LDUvK2M5NWdAcV51bCxyRUx2YzJVKV8tVDhwXVpneFhQSUYyREQ2ZmhfNFRod01RZl8zWElFYzEwfGNhU2xAOyg5fUd9dSw3dlRMOlxGb0ZvXWs5OGtLWkZXMy1DaW1UTzReSklISk1DMDQtdUJHS2QvTGNpdmhLNU8relJFfEpQUVZiNjYvXFxfQzhLUS9pUTh1cldmVEdsLEFueUBbOWZDVDVPKEVjX2BbR3R9alM7S2VyeXwoelJTQFZPQE5NZm0qdTd4Si1icVJPRl1nYnl7NlZrRXJHZWQyS1FoLnpBRmQpMy5kY2VMYSt6SWw0K3V8cCpBWT1OSFI2K0VTQ0F4fWAoTFJZRltSeyp0Ky93Z2ssP299NWMuT2JRYXNqZ1hrXExmPTJPV0JTaVw5TTU9N1M3MH1FK0MsSjtQVFQsNFNfaVNUSjtdV34sKklken5MYFJYd0YtckVgSnU4cE1LOV5xWnpOM1BbVTJ1Ykd0VnlITHBXLjB4YTRpUT1seW00c0FyZ1dOSnREZ1FvdilcWyh6VnFnZy99RXVkOlBkQE9yQ2U6bylIKnYzZzFvQmJtYlReQk17ZVFzRjspTlJ3PVN2bFpvYVRWR0R6Py05by4pdyhCXjE7SmtHWD1qUUM5TFZ6ZU1IKjQxbHFxa1FqdFAoSU95Sl1pSitrZyhYZXphfDF0cCpScnJ4X3xCaVBNallWeWAwen4yYntIfHdnb2FZejotc2ZDdkQ3Oi9VOioxMERqSyhOUFRcXTptSj1lYXFFXWtzSW58X3E6c2EpT1xiUjs4QTJBfSsqVEd8YlxtWVFNLG5LX2hTa15CYktqeXx1eE9TKy9qOnNfUlRHX1t3ZURJdExhfGFAempTTVNuZm1gP1VOMHBfcFA1KFU6XWApd1BNOGJsYyooYHVyR0BBRWdkX3R7dnFIfC1cdVR7Z25tOTVNY0p5dVQ2XHo1U2pKdTlFYUUzMVB4YGUtTXFqYjE4fEJsYno5KWdCXj07SXk3KVAqdWRQOFNETV1eQTN7MkdCR2F0Ul5scFtbNmdzVmhhKHx5Rl40Mmc/O3E0Qi54XUx4dDoyTzp1MEFgQDJLWGE0V05fcnZveS1EekZKRmxDLGdnMFtIPUV+eVJJQlRnekRKYlprNkQ3P1hfe0liMmZ1TEVUPzJ3emI7OVY1OUpuRGlVWHouKVJfQVFQSWdsSU0zSns2W045bWwxUERnUVw5X0VicDd0dlUtfFRMPStNZF9OcEFpOm5SQy1bW2E4M3lsbHpZOXdqcVIqNEJIP25zcjdXTzM3TlV8QD9vUTkoQzhrRElvcX1YRz1rLmIvcDVVR0VWaFpaMktcZWcsYHJKSEJ3YyoxQkpTcEw4SUQufnI5MSllc0BYLlY3eFFlVktceHIxeWp1RDcueX1MZlYucipXOWstPVpzMl98dzpXKjlRL3pWQUN5SVArZDhnQHtFMGwreXlgOWdJd35dVjBgYkleLlBjKH07TDlhZVxxezhCUzhfRVlzW0d6QW83fUMrND15S0l0LlVHZmosYEp8TWxKWkV2Q0R5NGQpaEx5M1Q7QGtdZDY3RUwzXWZUWXpIVEgzQDMzXGJkYWRBW15AY2tcOFJtaE5wUl5iN35KUDh8bjNYMXJzKC5PTzBXd1FVTU0zXnNlSzh3Wy04L3tGV2x5fGoyM0gvQihfWHVMen5vcVFkTUdoNkovO1tFNj0qYWFhLDpsVkBEakwoTjNpZm19ai1cMmJmYmZTeUBBb0FYcSwyQHdyUGRzWWJdKFFfT3hgWWhGVEswR21nQjB+fS4uMDh2VTVdcS9uQmJzQDBrMmI3TUwpPVRJZFAuRGteUX5RNXVYcklMbT9yNnhSTVhQTStcRXlDQXdUb2BqQ1I3OjpqdDFHPUBEMUU9Wkkza3NbbllWanRTZW8tXjZ0Vz9ONDQ5fjRjfEJfbFk0QVNrTyord25Se3pVQzFoZkhkNmI1Lk15LkpNOk18MzhqfjgqclsxdmQqWDhcQFB6cXpieWpFfkstYF92cn1VMzpCbW9bcUB7Xmg6aXp4SDNZRmh5P25Jd0tjblFpe0xOP2FCfWpQMTBkW3xZRVM4MVh8YmNISmNjTWVcUS9SXGAtYXdseyhBKDd+WERkek0sMHI9O3tyO3t0OFU3ejRHXDtnKnJrZUdqOSktNmFIUVtJd0VTMDZ5KTJKM3kwbS1ZdClnRzZBLVh4QHozandEYTVSKDEwfUZaYDdQZ0l2OjAva1xnbkpNNjgwK2dTNDoqRWNZQFVbS3dicz10O0dueE9OUzsvUjQqb3NUa3l1Y2dqKHpzRmF0WXNGWDYqTWdfbWpSKygyQ2xUeU15VVM7VkNQbk04WFhedjhbRm57fX5kaE5xLi9hSTJRe3Y6SUk9KVBiaWhAQ3xBbFo5aWI1SldQXi9aRG9XXXxRV01DNyoueFVlXTJrKElwUUQrLE9PZVR5RnYpWXF5MVFMR0lRTWZgKStzUXhIaD06QmJ9YSphT2ZAWTV6SWdVREZaak84cUBYPTtxOlNlbHhCQzd0XmVKVV1BalJ0SD1EUXs5Kn5hK157Y0V2Lm5MXy1PZS4uajJzO1dCKlArWEdSUUhibU5iemFGcE94P20qcTZRcHRMdFtjbW5iaE9DNklaRFo0TVdiOk5pbl8qWTZKYzo/blR1bDc3VjQ7bnh6XTZiQ3VNaVNQcEhFdCludWBsXU96KUFpXThWPS4qNk9hQUxmZSw6ZWIzQGZzbz0oeltcODc9MTE9U0pVOncsP314YE1UcTQ9TCpTSyhKQz1TSWJhaXhQfmRNNV8pZXU6SDRIO3dROHM5cCx7RCtXRkxaSkMqOmBTZGZ5QjE5LURbVWB0UnNZdWA3c0B1UChdWHpCYC5cO34pc21WNk4pemRiaHYtKkAuPWZ2KWQydHJMR3J6THhaVU9sM15DZnZuQFxaYkdCSy1BOThrXzgweWdRKkB6KTRpZUBoOj9ANzpAOn1BS10xS2d2fmU4fkFjXGwyNzMsMDZQYkBlKX1KLiw/WTZkRzZSbjBDWHQ5Zil3P1xDe2MqLF5gWS12YVZEK1VTOypZeEZkNEVBKllkUj0qOVIxaklwamR3LVZdPTlcMzYpN2lzRk9yPzh+RUZkbnpqa0hJS3BeWlp2RFdocnNwU0FMWGFOTy9rOCpGLnNcYVs1cTJ3bGxQMTsucGMyfk9lbjApNjNVb3tZNG5MbWRtK3U9NCpHLkp1djUwUG9RKWd+LVVAcltvfERvV0JJcyoobTg2V3VBdktWT2NdaGxPPWpJcnxIai5jfDtBOVtfa0V2OHlnXzc6RDZhNE9KPXZnfm11OlJHSWhpNSkqMnY4LTQ6L2V7KD9zZnNpMkcqNDFAKFtscTtNZWdnOj0wPzkucS1MV1xgczFHR1VgXyxgKFM2c1p5O1s9O3BoLXZBQSpoN2h3KWlBUUZhQ1dhRHN6XmthWEVVWmYye0pRaVZAenI2MG1mRHMqclxlP15BRlNDOUloTWVTMTtme1VLb2JbZiluZywoR2BUQW1TYkJ4YChZM0xZc09HXmZXMHBzPX00LUQzM0QtSkRsb1phLnR4XEx6P0ZYLEh2e1pQdEQzYktJODtcZDkwWlxAW0lgKEREPVhoTn1vUF4tZnhadWhQYjYyOVFMK0U2SkJbNEFUb3UtbHhdTWN4b2ZbTnpiXi5kW09PKjI6ejJvMittS1BTbTpvNl07bXNSN3Nzcls2dX1XZVd1c2JHaGkse09RYGVzPXYpZlZbVTJSYl0xRDNrO3o5fVY4SkRYaGstO1FrZzc2Pz91V1EuP1VrWU0wTnZuemlbdCxGe2Q9ZXpwSV9OWDF2ZDVmO3J2bnR1KDFvX2N3UT0uZmVtcWFqMjU0UEl7WkdKZTBAcFExfWd4d3NRQE1mQWc3LHdcSTdUVDVlZUFVXDY1YExHRGhWNTJaKEM6ZntaQClOLHpeMyk9aXc6RnApLTdqZVIxOVh1VTdTSUI/S2UpLWFdVEZAdSpmVnhGYi09N0RfZFVhbF9deFZWWEBXQyk6NnNCMHVodUNmX2t5OUpNSGF9cGx+LHRjczZ7Xj9aWjNqKn5EeW9IUHVHfVEzKn47QHtoU3RFdVRUYW9YTmFZRWI1PzBPe0M6UztMZ2VTLHpaYkFIQm1eantnaE18TktEMkZvVjo7WXo6X11sR3pORng3KkNtdHN6dHVsMlpgcWd6K15MVnFyaH4xWipwWi1uRUQsP0N9flNXVkZAZHNPQz9QUlRLS1w2cHpzNHdGZHBDcy14K31jeixMYWtXRUh+N2lZNHtDeGBsQihXQDhFemQrdVpNWUg0LTIxN1puYW9LaztnbGZ8S3ZMTG9NNkE3RF5FL0VOQHYvNXA/dDhlemE3TWxDRSphOVczSytDWHNmXWN4RFtVbzZleE5zZUAqXi00Qjo6Vms0SFo5UF8uRn1LXHhbaD1LX3JObGtGUCk3RWprLUpqU1Q9e0FnXDl3aTIvYVkvdVlCKDN8dnBxdnBJZGN7W0kvcXdiOSlVY2hKcCk5SntEWXtuWXNRLUo/Tj0qdDk2cTVCdm09T2E0SW5QRFV1M1xcOUtgQHo0KDcsTzkuWThxbjNzfTJqL1Y2NnhWeCpZOnZjMVpNXHRVeEh0Lil0Z2l8c0x6YUMvN3VkdEhpY1srVUJdaVBfRHtBSntpOVh0QWEwYkZteUxpRS9xLXQocVdvSClrNUVVKjRhTi5CWlNuPVVTaE1vbDoxdFB4empJfXtgZGJNN0JId1pfanpeL21WUl47fkFQUlFyez1QSXNkSig4cllLMm0/M1pjQ2hrQlNJOWRFXUBHWilbXVhXe2dkV2Isb3ktdTUsKkRqalw3OUtpbW41a3Y1e1RDem54ai4vfC42T1F2dmhAPShBX2suU1ZESlIydj1KXnJ0bWcpSm98cSprLihWcEd7Qy09KndsMWZWOE5CVjtUU2ZCMHRmfFddZnxyWUwyTT97NTpGLkJLZixXNjFbSjtzZi9+TlB1QzIzbF9XcEhbcUFVRUtXQHRZPSpXNyhQMl5SRFxqRjl2ZW1ldX1STF9NNnExQ2AoXDJQc2lmWy8tNEcwdCgwKHJGbC1EaCg9SHY2M200QzU5ZW8pdWhdbm13e1p7MnxJLU1OTUlCZjRITCw2XFV+fTlOQCoya0hwR3MuN1A4cEJyeltVMW9mXH5BSWt7QUVuTUp5YWY0RV12Nkg4XW8wVURAPVMuL31bbV5zbT9zZShJQDg0bigsQl4wMExsO1lQKDNEVDtdZDs1Sk8tQU5oXEgxXml3XjdnTU91N2pxNFluakowUFw2emVoazFoXXlhOVVTUkQzMkZFSjptWSl6NFJRUztNblBgMGY2b2VCaVhCQCpmLmM4TFdiMlJBZThxZF1Ja3JhT11pWHJseWVfREQ9N1FaSVUpW2lUKjFSL2ROd3dzVVtwRkhyN0o3RTVRXXJ3M21uQlpbSHJlW0M1RyxTWEoyQGFPQm1efnljMjFhM3ZyYl1UUyxzT0hlWzYpRXVnNFdQTE5qbk5RMzN3Sl45U0loUk8uLi5Jcl59K2J0R29bO1d0L1RMZE93dFI2fVNlLjNFcTVdfTVLMm5Ubms2PXAxQTM3K15fZlxKKFo9ZXE3UXU4LXJkL3ArMmI/V0Z3XDpHezkzL2FiKykrVmJKLTFvMV5DKmA0RTBXVSxsXDhuRFVMT1ZRLFUreHh5QGBOSXBvVG4oaltYKEhWclgwNUlNKUtqP0l3ckZpLElvQjBsWllTYV1OKGh0YE9YZjc9MUFYU2U7c2NmfFhJMjFAREgpXC1yZVNLUE4pM1U4Q2YtL1JXPUcxbClQKytfaTY3bkxeYlhgbTgwOHJBdmZYOlJGTTpPLmJKL2RNOmMzKF0yamQzbkc9OF11SkNPcG0tVUtIR1F0ZXh5XW86Q3U3a3BQZT9ZOkhfWFY7Q0UudEZsOUU9NDBDPVg9e2dtZEpeSVMxSXhNKywqYTpidjc2NUBtZHs9bUUsbHc3TXZccEtdO2UueSxjcGZAfEFtdDFlY3tSLHVQdikuXlw3PS1PX0l9LWdsVVNpaFwyXkMyUn1FLSp4dXlVdy1ddltRWTpeNXw7dDI2VVhbYHo1aks3WTdNYEJiOGpQPTZ8XG1zOk9cY0BkNypjbix1Oi99WD9HfFI7fV9JYkEsSileOWt1NlRfSF8wW1NnO0YyRThkSFxLYngzX3A4fXR4UHdqe0syUTRhXVotfTZqbF9vanA2XEBGaF0vaURFaUwpTitxN3RtXixHK19wVipgfG45TmxyUE5oRHw/WTNZYW5UX31tekt6e09mek0xXEhDeTh6M1VcMmRMdWxjNE1AK2tYQzROeUVjOV09NUd5UlFaTzJRRF9MVlhHZ1hPdWNyQXV6TnR9V0tzYj9WbndpKE9sREQzVWhLOnReLGlMcHdSL1RbYC5FfDJraVJUS2FgNGRUL3VfeDJzfVZ3STNLWXlZQzp9NkdRSlBlLi0uMihZbnpOa2VLZjE7QDthaV9mPWZzfUFES3BVSGs4Xlp+S2Bnam1qQHtbXTZfMT9eRVhcZDheKHk6Q2osakJ6UDFGe2E6Z1xsUk51XChaPWN+YGhyVkVCUDJCKGlNUEhaRl9NcDE2MlpxLC5IWVZybVh5ejJ+cFtKRTdDN3k7Z2oobC1aKG84aF1mekJXXGZZY0BOSjd+WzVgLUVvKXpATXhNNSl6K2NgKyozUTE4d0VJWE5HLDFlXFFTYzU7cC1ibFh5TztvWH1AfDpUN15cUk5nY3RrSk1kaUx5SStbVXEoQk9mb2hVdythbHpmMmxTWClrb1wwXzhQLEwtTWhId3A4TFRYZzBfVUF9MFErYEw4OU5KRHxjVVRdXkx1NV1ZUjttRz1fQGVIMDJ4elVxP245Y1dqcThVXC9qMGw9e058XDReLUV9VFk9OHM0Nl4/QX1mL2puUDhoQUtgcHxzZGZNdGEyXXN6eCloWkVLOTsvanxxe1Y6SVBTVUtJen1hbldaaVM1ZUtndn1kVFdgY1lIZz9SXkVZL1hRQW9KYENKV2JeSmZCcmp7UGlYNmFeXFRSRWctbUw5SE1hPUhwbixuYUI7XzIqalk2K0d2Zl9CLmRjbHs0Nj83MF5BaGRhNTEvUUJ4bXwrb01tVy9CblpfcF1fXnx2UV01c2ZuSE5OPTsuRmMtV1l5LEN7cU1jencoM3dVLCoyXnpnQVdDSipvYkxbTylaQXA7OUEyYjM5T0BRNUlAaj9edDJyODtDQWJycTdkU0xWMmpnZjFyTzU6YVFVUy9PW0d4XmFJeEFvK2tebzhTbVheOzdQbS0oOUZEXmNCMTJkL2Qsbk8/VntMVUJ9aDY7ZVV4X3lZSF12dWZ9XFxacmB0MjlZQmF+dStje101az9MZGEwVl9+RG4oZGE4MS5tVEllL1YuLXZeKVlJKit6dklOKC1dbGVWdy5vakNAdGY7YHctV1d9On1ARUtqTzViZ3tFW1JKQHV3cEtAZj9rSEFmay8/YlZTMHxAe28ze1spe0FkQnk7MVpfeWRKXkVnZ0koc144US9tRXtEfV1MaFxoL2N7KU1NKVg6dGJbUz8zbV9kN0lOMl0sL0ozNzZSflNVRDJERUJ3T2E7UXs7WWxORn5ecHJVPTssdXNhcjovVUF2UzBUQmZBRFt1MTUwaFNWZGtGNiwrYyttSTBpaihxQnh0SkA3X2pNSVNvNWNULWUtS29YbUp8cDJNSlN7LEJfOlQyT3lISzNJcS1IZV8zKDV3NGVjbHVXXUg1fm1AaktifmM7R3QwNywyYT9lN0xndUZ8YjZDMldrKH1eaHpPL3JkKDI5eWFdMit8OlkxO19wclg0RHtPbSxQYTZ8bl1ERF8xK1A5OVorVjlHOHhVMlRgKD1iTjJOUzpvTzpEQUFLODBJXkNjZlthaV9dYUJJVC9PT1NRdn5WbSp9MEBnOygvNXgsXFRcLWBeLGMqT29admRcW11Re15hMD9gYzQ5K154NTlVM2osK2c/KClhXTA5eEZ8aGBFK2h6S1tiKkBpT0ZHW11TRD1eLG5SZSwpfls4Xi5KKkZ7LU5CcC8zT0trY1hlQGIyLi8oWEFGKX5+Zj06bTZpdS5AfTljMkNMWzJ0NkdBWThxPWx7MUl0Sl42K2w3TkFGLi02Wn5hUE5qdDZFe347OkwtO0hrSmNCOGR1LzNAMmJTLnQtTC18fURqQV9bQj1PTERRbkdLMFNkTlddaU1XQTV+QXFJX2JnN2NLT1RkS3Z0cC9pKXtTdmpLaUdLY1lWNEVPYCo9dF8uXmZndWMwNixURzNecExPTDJObWl7Uj1ebHNoLTZPc3lCVS9FcVd2KGl7WWxFdTleeVJjKVxJPSs9QW8pV282OC5UY1JVQmI3eH44KV5eaClNL09TNXY6Lkt0dyk5LXxNK15fbzNodlpUdFB6SFRaX1Q7OH4xZjRxSSpHQUE/bzRJOmZBbU4oWE5sRFljOzI7U2t6LVZEO1E/VGc5NnlCaVBDWFJoZDZYSjQoc1d2VmtIUVc/RGNoRzorXHcybT9SMDB+cTRWclN1XVhRYnx+RDp2ZlEvd1pgVVhlUGdLVDA9QkVkYH18UmZzXlIxPWJgLVRSXk1WUGV6X103aDI3cFE1TklkLjdQQEZEYn49by1bOFF0aHlNPzA3cl0vcHhBWkNLVGtiaGAoeC4yRHhmeVlwRyo1PUF6SmFIZWJJQEE4d0o/Z0ROQEJTQjs1Xj16Szc1TnNTS119PVk6cyxtd0NiTEhWTnBVQWBXNVhoKDlNbyhEVGNEalZabVxMYFVOKkBsL1ZKVzIudmhYU2RiU0pkW3B1enlPO3Y6cl5rb0ouZ1JoMG1BSHdZUG0uTW9jR0VYdmxjR216X29iWFJ8KmZedHx4eV9BRmhBRk1xdkw3NH1rTS5KZ2NpX056OGxcUi43WUM0aV99cElSWjJFPWQ/Myo2e0NiOjZnSnVZZHRbUW04a2VaKlE/RUhjM1R1K2E0YVd2Lm1sTXFNPUZwO3ZFWVRzMzpfejFncWRiMHt0a0pdRG54KmNMMXRZbi4zOnBwXTA7bVVaVFlkN1tvRF06UnM9VVM6TjVWM1RtMDcufEpKTkNuXjdXeGRtaEJLdWUvRVBAUHwwTSxTQDF8eG18Mm5MUUorRi0vQF5ORjhVPWt+cElCKVU0WjhpZzJmbio2QE03VmEvPTN+KzFpXi4xWjVXYnp5WXlieT1aQX5SPStRYGJceERVWzdRSS5QXXcrYVJDZWB0UlZiK09RMF1paXtVZ0FIODJmQHZSQl1fcX5dSHJ8K0QqazIqbExtXnRiam9YKEBXK0FYZDhCOnBwSWM7b3NCbEh3Vn42XzBmYngsQWJlZlFDdDVFdmNwdXBoSyxvUFZye11sXEROKXRMSlFXMjt+ODR7RFIyX3FiMTNoXlZpO3toSkt+flNgSFtPdUYyemZRSXZ7ZTl1V2FuYEg5WDArNHpWaEc4OlVGLzY9SzR4QEEwU0VAO1MudHlrb2k4KFYtQlp9Nih5bkVTTkxeXzV5Qy0sSW1IXC4qa0g5SGxMTVJ5S3Rydm10bX5jY2hFfUdWbXl2cHpfZkBTQFNvbnArOGVnYFo2cC9NYkA2cWgwbU9OWnpNeHc5P1VndDhtOl9GeCg6NVBsMXJlXXhlLy56ZEtNU2osLDJofl55Q1xYSjluN3JFQFxCNF1acz06W2hPZ0o0XkpjRTt9OXljXi5dKlE6RztqeG16WDI/cEEzbnIuV1xdQi1DOXdBYVlmR357bW13Oj9POXVzeFY0Q1RqYEcyXk9eTFoySDtFVi9fezFcX29dMkRALVJiSnhiczM7Ti5MTEJMLj9FQFZjNkp1WipaO3opTUwuRXdTanU0Mmh+YTF3WzJKWlouNztlaHNQSGUsV1N1P2xoS21jeGllaHRvWTh3bmNgfExSVGt2blVVZ0p6OlFLTExXL2xzXVZLeVZEcHM4NV1DNEU4dGVsZzQ3M3VZS1ZhXmtXKUk4YkQwWCtYOTopUCgoVGc3VStQP1Exezd4azMrNzRdMlUxXH53ci94Qi5obUR6X0BmfVZkKVo/LnlKRkUvanpnb2hOP0BvcTptTFUpcjtFOTFaQ3dEdjh3dShqTFh9Xz9fNWg/NG52OD9pP2NcT0pOQ2g5QEN3QEJhSzFxTX40LkUvTkBjSmw/ZUw0XlB2Tm9NcWhcQGt9PTpuT0FwbURpXmhVSzRaRWs4SFY2KFRQNFs0UXNAK2FvKUBTWkNAdkFcbHY2RG1zZFlOSVNbdD1ZdkVkKUw1cHRCeEBKXlswNyxkaXBNbS9EcE1scEU/b1QzazZyK0AsTzVDVXsxaG15RTFeRU9lXjZ8TUE0MkVuLWRTRm4taUtlVXpcNV58NmU2QSwoLi5UKXwpXGc4VTlUOkBpLi94N1FtRjlmT01ddV1pbVxaQF9zdnVIWFRXS20xK0ZETmkwbkMuXXR7TlBoQTpebTJWO1hddkV3Q2ZKKkNnWjVNbVpKVSooR1IyP1A1Q21yODZHO25gVFQ3TlM5Wk51czZHYXJURHRmaTg3MUUrWjNLOE1dV19sWFsuYUBfdT0rOEcyc3MsaH1hKWR7ey9RaXMxMU9xYVIpL05JekBIXD9rbk5RMCh9TzRNfGMsWEg3PV55SHBiLUNObnY/e016cXxaMXM3KDBmfS85YEpyLGFPZjtoXmtubjdBYmpKNEBbY309T3U0cVttXGlMWkAvWHctV0VWdlZ7ZVtdXTppYUFBLlVsaV1oam8vZXJ5MUoxWWVceFNfSCw4e0dhamB2XVsyN01JL2U/MXc/Y31FK1ZRR3gtQHJhR2lNKDtkamwzWWZVbnU/SygwNlFkOlxqXExxQipRdmktW3JgYVJoZ2RJOHZBKFE2e0JwMlJxVTB2XFtDS0FfSlRJXlVYeDtaZC1YfUZfOj9XcE1tTVEqc3NRYVZkdihyWGBxeDF+MWtVeUJndFMrfVkwXTs6R0Z5LGBQS0xQMnpnODN8TkpnRHYzKXRlNUVWUlxWaERKZ15bcFhvM19IalNrbix+Yilsc0syXERpYjh8VDBpN1pwMipJVzFKSktmeEtfWGlPRm1qTXJ4QSxga25ASlZBXkxSenVkKzEuQGxRWlJKKU0qWkdQaDs3L0djbFgqcEpBRjkqSWl7VHc5OEE7TmVLelItb0pjbVA9Ym1jNnt0XSswRFssTGNnVUhvWWk5NDlRTkhVSilBUGh4ZDpMfGZzdjN+PUFtXj0tbUUvNWh4KVxjNEx8OmAyakdTPWt6WkhRVGlMSW0yWXB5KylEbG12OlpeW3RBSXZJK3NqXmBMXGtoXXo2TDV5VUU7ZX5dZzsqTFtjeSpaL0N4aHdAX3VQY0c7fDByUmZKYXddS1VaPWFbU1xnRy94Tz9oNkQpUmhyL1AvbFosT0s7a151b05CY1BORWBCLF8uaF86U2ZGNlNEUEdqTmVwRkRYfmxKK0xpb3AzNTRsQXNDdDh1K0tpKTZAc2xAa3FhVy5rNC1JLTsoS1w5TEpJekhWQm07WnBCPS06bSt3ZktDcjpcS0V3e2xSaDRMVm1EajUqWVBJQGZASUZxXXdOQFtBKTZCLHFbZUZpVjRCNVZ2Nyk0VCtFQklUeUptfFI3MnNDZVQ5TFJFT2hNRjJVfFRlbF9aNkFzMGR1bUB0YHNiP1prXWxzcn5cb049WTdvc1FQYFw9dnRlRm57U1NLSTtoPzF6RURJWXUtTDlzQGhdbV8pVFc5ZDlxYio6MlIwZDB0bVM0XkJaNzR5Ty47bDpPe35kbU5VZj9YcTVPSXlyOHdISWQvXW1PUVR7cC8rSFhXOm15K1M4KGtVb0NlTVBjLS9gRHc5Wy1JW1JoLjhOSGtHLGpnQVZwK0c0LmhXcXJYQFNmTW1xZlNfTkU6QkJLenpleSxpK1k6Q1NQNVtOZk92REc3a11LeTRMVjtATnN8LnhUSF9fNEByNmM5SDNaYjV7dUE9QythaVo1VXVmfDp8SS0wUFF0SXRwaDcpNy9aNmJje3pEU0syTml0LD10Y08oTWxyWzFeYW8rOFw1YWUwbnUzdHJQUlJeKD9KYkxFQHV5LGw0SndmUThBPUE9QEFSe1l1REJZX0UrbkR8SlpGR258bil9b0lpUGw2VVl5Y1cwVFE7ZD9AdGVVXUNYZjB8bjJPWTlnckBoNTB2S3xrKDtFW1JhT0IqLFVfVXs1Rncsan5CTVpcVn5TYXlSM0R4KGlsRE91XnhDa2UrQlFMSXd7KEVdUzBvMkNlbURrT2tzTk5qMlJRYV9JU194WT93Q2A9cW1vNXNyNGNFNF5senN5L0dRTC58bD9cfEpVQygpbS1RWGg4dmpvZGRgZnssKk8zYGJec0N2LnIvXS9vfilUQmFpZFZYSitQOFxGVHwqK2QuPWpRWkc0UUZBdl5MbCstLysudFtkaUNscUJWNlssPVIwRmQpTzcxN1dsRnhrXGgpRlI3SWV8NFg6M1E5fExvMVtoOypvSGhQUn5GO204WVBOdll8WGZee1cwPVRtVHZcXkNiRXQ5ai17Vzk7MXU2P1JKbDdIfHpJRUNoUH13a1NeVXZFVCp2OT0ya21rR1lkYXk6UjJTO2UqKi0pQTR0RT1XMn5TaG98LTU3NU07O2xvZTpbTWswbURsZFVqWTBgYVlGSWh2cjArNzNPKDcxdGZCV3RlbnN7MzZidW9gLUF6QHFYOTVAcnJmZzJnX2hHQ1s/bjVgWVVJXTNTU3AuW0U6V3g/L0dzO2R7bnExXHhTalpENTlrP31gRlFhNXo9fV9ceC4pcm8tMUk/VWI5TlZ3R3F4S1w3MndAY2FLMGpNVlAzcVpde1svXy4vLWZCL1AqTHthVC1vTXVcdm5lalU1YThFejQpYHpsZ2FGYlR+cTRNeXY3YXlRc092MCtkdnFNVzcreGM3L3FkLnRPcmZ2X3tWdk1zXktXRl8xa1xXLjkwcXdoSEJQZChcY08zfV5XXW47R2U7cXFZVVNifGZ2SHdibTBIV19rNjB5RmRbRmRVTUsrbFEpaClhPWhNLHZNVEdBYVFSa247SH0qeGVpcGZFUjBLeC54dTo0N3Z5Kl8yY2wvZX1kTHg2NDFEUWVOOEBBR1leb3x3U1d8Sk9sVTp6N0c3Myp9LW5LVmQxdkF9RjIvMmwwbTRRYzEvSUp2U0w/UntSTmpXQl5gTXY1LEJPXFg5VUVyY3k9eDhJWnJcXitnQUtpblt+VVg0OUQoUU1vOVBSKEQ/LmNEMUBFLCxoZVA0fWdlVFZGZmVbXnRJZDY3R1NmO31cMipjMmtbYy95VTV9VXxoTCl2MDZ3VUt4O1VAXHIwQj89Nz02SjNlTC0zK15DTjZyfDJUX0ZbMilYXlledlEtXGkpSXdyKHZ7YHNJNmFyP2kpOGQ5M1Yub1ZnMD1ESEVWeGg9UVkoTVttQmNydjAoek1EbipOS20zfEhSQjJCaXcxeFJQWS9oO2BgOTRGemRYTFU/TEhjUzFbazlUMkNPR0NhSHpPUDRBezo1XTEuRHkxXWZFMlU/fVdrb2JvaGdpQltpQztROGRuV3BWMV5YMDV1OnBQbVMxSUhfNVQ6al9QQmR6QExNZjhXTzduM107MDM9SFgpOkNdSVs6MjoxekFyOHxELTN0cT1aSi1UbkxXWDpkR05YbSxZMlNTODMsTzBuKl9CalFHL1EqdHlHTW5GakViZ1BiZUJEeHpxNnpZalJvSmBPYlpsaitlOl5MRUQ7VS9gaHs7dGxaNkAqM0ZJcUhbeVh6ej9dMEBlRk5APyszdlpkXnNSSUpRaW5WSEIwa0l8YXRDRm9JKWZIVWk1NCt7Ylw9YChbXC05S3lbb3lKVFwwYHkxTyhMP08wdEcuRChRaihwbzVXcEx3UihBfnxpT3tNQD1YT0VqXy1sVUYvWz1PbEpwMmJ9b2p3WSo4UkZKMzpAblBVRFtjb3V0R0lfTi5CMERHS3BNRUdwY2pPLC9sTDtYblYvRUphUSxaLUdfeWdwSXpfRExxKlRESC06a3J8YlZ1a0FDWy80Yz1CS1oocDh1fFF4KHY0ZU9JcDNgOEVUWnRwQn5DKmB8LFRrOXg3Si9QTUR1Lz9hOGBwRVd+alViZTk4ZnRgNFhDQmczblxtcz9+SVl1XE5IMjs7O1AwLi9YSltPO09UMDctfXcoMEppKXo1L3xeOEk2XkNFaHYpczFZezV8aWxMXHA7WHZDWXVeRj92Xjd+VCpWbzFte3otcnM5UnUtU3JXTS5qK1Awe34xL0IyKFBXSF9RSzByOFdmRXl2cjMwSWEzKFdAazI6V0x8NTZ4eWMyLVFHKyoscWhRUDpTeDZAZ3p8VGhxOTYsVEh6Nm1qfWtzWGEuaFdqQi1gNWIpcixKZSkpVUo3dXJmRitYblRhKXZzb3xjQDlQUnRLV0lTRURRNH54Oj11aWxDNmFFYl5HM25iTkRUO3k0ZVxncDVwYWROLGtrOHlfKFw7YHROOC00LERJTmZHe3tlSDMqXnRRW2hhQUJoQS5bWTNMZDtHQi9fUFBeeHs/ei40RD1sPWZtbmsqTGJIMkNOV3hJYVlpMVQtZGRVOCpVTn15T0BgbmxVZi9uc2wvR11RSURaRVQ5empUWVNBRjFsVDhNb0leamNBTjBMd09yX3xDY0o6WTldUF1JW3x7Qjd3RUo9dkRxLmdFaXJWRnl4SVtSQTtLbVVDa252cX1dPytHdWhOcEJRPXJaVGVHcVI0KVdjTj04Oi1OaDpzWHguTDRoe0ViR3dQXXI2byh2LUdDPSl+Ni51QnRQQzJGdytsWTVWT2NbPXEyYDUwSUFHQTVpQmdxP0JCK1o9dEF2Xm5aT2JlaTguVjFNc09tbXZoLDNfWCpPN2BJM2E3KSkufFsxZnFaUUtDalVNfTBTRE5qRig4ZFM1c15XZ1lqSUZ7RFNbZmF2Y3lEMURASEFiOkY3ZG87Xl1lXm5RVmI6PyxSRHhBVUcuWSorNC8/TnR4SUNgZXN9TkhBXXA/OjJCKGEsKW5JRUFWUmZOWlRuRVlJeXp5eSk2QlY3YEdbP1hiemU3QURVaH0/WkFScFk7eSxvRzJ2dHRQeSpkKGliWGVXNEc/OzFpYlhzN297cUQpZikub0BuR1s6Vl1jT2tZUlB0UndZbFMuUntlbE1MODVuYi5UcEJsPU9heGs2MnpyRy9oSitBLi4peGtnY2NnUVVqQFsrV0tGLllnQz8wekV+S1BZYk8zMkQqaS02d3BQYjpyUFxlNjQoXmRcb3xiNFhBe05xSUVceC9zNit0UjFtO2xrayhmSHh8U3d1eU8wLFVCXi9fVEJkdlh4P2BHcmlPdVRpYVlwYHB0WShuXF51XD0uai10YH5DK1NseHVrTm1zazphRDQyem1eNnNzSkhdfnoxaz1GY1wxfGllRGZ1Knd7QWJVMWtsO2VTSkNEL1phaztgdXVtQi5pKGprcVpVLmU4eHdiZnxEYUlMcT05L1l6MztaaFd8aXRzdSpkRU87U0h5SXpjLVlJOStnXFV9XzhbLXxidzBeV3x7MClBWXgwMVBaS3pFMXc7W3ZWbFdIM14tXzhacCpmcVFsbFk6YEpMW2BWanBsNylcMGk2Tzlgem9mXm9KVTRBO3IuWSpIWCsqY2RGZnpXYnpzRTRCeCg9NEZqeEs2O20oe1huZEYqTHc/cl5fYnNcKHFBeitMXyhReWMscl1VRGVYZXthOjdwKVJfUFRZRkVRXntlMjBgYG87eklfOkNNNG9xbW5YRFxIRExDXEtaOFp0KEwrOXtPQUVhZnB5TkVqby9rZztsMGFxa1VtMFdRSmYwPU50SHZdZmRwZUNfU01tTikqdXMqXXVwZXorXi1CZStcfmVmXGlqLl1CQnFWa154YD9nQS1tVSlFeH5LS1U3ZXdIcFFefVg2OXBYX3ZwfFkob2B+XGwrTHBOVkBgZlpEPWZnKSlkSi1oSnQoWkp7c3d4U2N9TTZKeVNbKHpVS1o1TVF6VV4rX2V8X1t3NCxXd3Y3cWJzeWIrTTVOR0c2T3llOl9aZF9xKDo6OXt9Y0dgc08/dnd6SkVYYmpJXEt3W3I9cWM7YEJVbVN1VF4wdCtlc2Y/Wy5MSVM5Q1dUZU1jLmtkMjVwKHc6QXlMQUlXUnxmXG93P2NiZVNHYlBFemxtRFR5UC9hN25xRUUsVFsrXy51a1BBTT9eb2dWNTpXZEdHQn1NOE0xbEZgcT9aW0hCYlRNWms/LHQ/W15Xe2M4ZmRUNnRsb3hub20vMixEUTopNWVKbl1sRTg7OmFiL25tXTorXi9FTGg4WUw4KH44N2xiN08/eGJYVFdzVXMsanpUTUpYSnBLTDlJX1cuNlJ1TDVFdDlSYXNUOnl2Lzo0YXFlQ2hMX2gye201fHpwUnUuMTVmWy4wKExFSWdsNihyMDpMZ2VsTmg/S3NYansyRHVSe30yQGI0L3w1OmBuVHBeR0tJd3N2bldAOEVmOylWamEwXzc7OmJ0OlRBbj9fMkFNTFk3KjBEaTZFZDYuaFtoVik9bzdVNWVYTV1lO3pbWDFcflwyTWRyMEBwTlE6ZF90aEgvMyhpb1lBTlJnUTd3UkBcWnJsVGJ0R2dJeHBHeHtwcSpXZGExY0gsLkJBfnBYcUFgcVJXK29vKUhqXDBCeC56ODY/NkdOUC1xQjE2KmV3ZXxgc19EKko7fThVNFBDQDF7PXQqTDppM3FLMktgSU0yOFVNdjN+OHxlQy54VlBlP14sRWJ4KD8rQ0BBLEI4cj9ifHxnNEBaeWxHLXZgRGRxQmI/QHhoNihzTHxIUXlfSmRcOnE0VHdgVS9acGdlKEBZW0NKb3BDMTlJXVhSLFk2NUBgPUdbYW89aGNdTXpefWFQYX1XLFxWTXFSZXRJd3trWmpwWnl2fExjWTFMfCxRXGtdSVIqOHxvKVxlXzBiODUxSWRFVkI3ajkoeUV+TEhNM0leWy8wWXRse1Mofn0xZTdXb2g4Tmx9O3ZnTEYuQSpBMyovQEQwP09kNC1rVntNZFtjOkFIUUVzVDA1dj1qZCx7ZVphcWoqeW4xY3N8XDlAeTR0Y3EoVXJ9KGxDa1QxXzl+OT1cV3hMTCtYS0FkRjZ9UHpKZGlpZ2NiVysweGY6MnJvVzoxOG9aW3lNLm9wYWZ9OTs9emtsQi9nKVBqMWY7UTorfHNbMyl8LmY0RE87X3FncTApVH1aKHBqfD1gejlDd2BPRzZJQF1xSlI3eExdZCpjakgwSWxmQDRcZC0zOnZJKGl5TnlHOkwpQXE/MS1+V0lob01MO1teMHhfd3tISy9RSVxLeEA/ZzB9P3ppP2luYlZfR2xWOmIzQjcvXURISVZDfkJmTENwRWZbLlBBLDl9NDR7Kj1NdFdhS2RSNzRzKEI9OE9zdip5VS56S0ZGRGJgNT1ZNjBETGRJNixxZHtOe2FAVixdMltjUHNfXFlaO2NNVn5mVnZURDYtazdWUSpuM1JbenhuUmt2XWwvcnQwVVpATVJCP2xeVEt8ZCtrZHxZZnRXU1JBLkRTXUZwZEBIeV1RQGxvWXteSkBWRlxrRWljdHxkcS84c2JrNykoeE84Z21gTC15OktkRn5ne1NzckdrTFlJOC5gS3V+S3BgX2AtM3UybVIuPTpiOkg4Tk1uMWhcWTpmdGMrOjM4dnI1WE9ZWG5NPXNJO31mTkF+MDNHUTszRVxcNUY2c1ZHUXU7QWptYEZhNE40W2ZBe2V+Ui0rZnBQSVtockMoempxQy58clRlc0BOYm52V0xlTj9CQmpQbElIQDJTaStXQyldb2d4WC1dLCwtSmVWalV+VTJFUklzO0BaO3RjUUw6anZXQVhEcEBpeFc1XFVXKEUtQDdoXFIzbiooKl4wak4pfC82LFgrclArRC9WTmdQWVE5TEJxYl18Oj1wSU1KKF8ubFJXS3NYTUJ2T2JxRmMxVUd9cHZqLFo9WUlDdWAseExMdlRJWkBiXlBnS149NE5keHl9P09BPUlVY3stRTp5bHJoO1ozP11KRUQoQ3JYdU1qLzM2Kn0xWjk4cl98az9gd1pwRk5NVjpUOTJXPXpyUEhXP0coaVVcdDl6UU5+WlAzOF1edio/eW44b0MofC40QjcqZiw2b2tmcHF2dVFyKmU0aVNvSHIwN0BaLy9PXzQyVWdyMD1mQlJHbkBIaH06OzN7RFEyZShaZlNRNjdaYz8xRjg6NjtxMlpVbmRgbTY4O0pafW1JSU5rajlsSippZWItY3RNMCteSVhBX15bYEZUOUVQNFVmYmdbV3k/QH50dUVGTTo3YCtpUmwvUl4oRDo5MzhqKVBtaztqfmJwTTg2Wj1JQVNiXmJOdFJ8RGBCdnF4SFReR0c2UHZfSi81cVVpRFpqTDNuVUo9KkM9fThsLGdGbEJYbUJVR05vKjsqNX0yVXNAb1xdT3J6cC0xL1twTFIrdUcySS5neyhdRDtaSmZeOnBkM0BbQE4uV0Z+cW5TXlM6SG42XWF7Z2dXdHY1VH5FMjZULyhTQjNuYm5NV2Z9aVkxPzkpVGtESEVhU3BOQS4oeXtgW3hxNU1lYFtbQTBRdExTUWBTYngpc1JCfTg3T3F5NGN1ZmFmUk5JZjd8YU5lR35TYlJRaFFmTjdSQFBYZCxNfXAudVc5VmFvQWZ4cTtSXGxaNXZeell0RGF6LUNvYlNEe1t1O3J4Syl5Vk5qSjFBSTNFMmRNdV1rb1pYQjR2Y09FUDFgU0dsLFs7MHJIOHYsYFtGPzt8ayxSM0EudGBrWjpsd2gwKGlLZ3dtYzpXRlJtenFERThYaX5beDIpYCl9VW1nW2dfQCxBdHAyLnN3KlJTb0AzYnVXcXJRKXFMKVJPMkxlT2ZldF4pfVJudz9qc0djUHNzZjtHLGVuZDt4U2hdZ2ZTL3pUMkRdX2lcXG9rO0BFeFt9YVpjcEBuLEZmTn5hd3MxaDY7LDtgV2ksRXRaYi9qYEBXQmpAXFRvQEx1UThBN3QqeGZda2QyR3J0SyhbOXZzVmNWe2pATGFgd1llK0V5flRMaywsXWMxYHdfUilebDE/XD8xNXMqKSl9NGd9a0gvUTcoR1dXdXw6KlhcO0dpOWxveUxoSztdLytvLTZIT1d7L2ZeN0BebmtLOHpoYHgqS0RELWsqdzopUlEuaHVKTnNZU1JZNmp+OGk9Z3o0TFpOKzJ4RkE2Z01eMmBGcSl8fTlPKEVtYlxPW3gtfTttcUE4P2V2RThCMHZWa19tVmF9cCtgWyw/N0xbKC9cUHIoXWNaSnRPcFg3XC92Z35GZC57MW5vYHFlN2UqK1xKP0lRdUkocW5lSDZBRXx9VF80dlFzUmVnLCg3NnB2QTRzZjZOOX5UKFFbW08pdEI3W1YsTVppTzBadDVkQHt0c1MqTDFFZDk6NzNvckFjRjFOOWB6SVkybHUraWQ4NUtfYWp+XnFpVzVFW2Vwcy9RaXNvbUlQUzNcQ2F8ZCtvK3hhVFIvL1t1aih3NlQ9XG5sMi1HSVIsXlZVUVc5MSllSFJuXGNofVFkKDN+WGs5RWB4NUVeY0RufHlxb25EM2FaZT0qd01cTG9OQTZQTDJiLVZOLCtZUXF5PXJPQChvXHIqfkZuWkduRHAoYjNrY0tTKFxsc2hsRV98eiwwV0tbXlZUfSg4aDF4QVR5LUx9UWUvd3VASlo9TGAwKT9aM2p+NnpSXmBuYW9pZzlafClvRjV9Skg4YDdnKjsveEVUMlQyLVouOmBON3FJTXkocy5Lbl1sMHxrLTFgNmQ7X3YzSStoK15ZXGRIUl0rL3dMbl4tP1tUXkV6TDt+UG1ZMD9YOztkTThhOlNgRVtFd2RNN0c5cUFISEpuWlRLWlM6b0U5Zmd1TmpFWTZKP0V2bzB6ezEwXklJTmJ4aWRCdV5WRypTKGtKWGQ5KFtBSWlIfkAyW0JmQmA7Ry0weXY5fHYyUnlxVDtGazs3cUJjYCstUGdwYDNbS0tqSV1uYlZ+TVpcQi5AX3BAR0srRlxoRklOcktPakk3W313XygsNGJcang/e2xVMEFdcm9EKlRILFYxSl5XfUtGbWJLTFooVEpQcExGT0ZeeS9GPUJgLkpFUWp9QkA5XFE2cEhnL1J3e0xpb304L2xAKCp1c1tBOHxiKTNHaHtMOGdOV0J2eW9WeC5cXEwqNykyWDVEQHV5MHJxWzFRfTA/M2JsRm5NVVIvbkFuMDVMaTNgXDt6OUZKeTJlOzh8UkUrQXxmO1N3d3U3T2xoVGN8KlN8PXNLd005Zmk6YWw7am1Kfi5gXzdGYHdNVntGMTl9SVx3M0toe2RTQWpCXD8yOVlCKlA6Z1l6fGRgd0B6bkdgPWxwTENHVzRiaF9xXUhkcjtOY2NOZzBWXT9FUTpfRHQ6XS5CcThfaEZYVTJ8ZDlcWChPSEMwZjZuckVNWnQzVm8sb2FGe1FxVSpKQDZATjI4RVxZWk1oU1NXa0lSfW89SXo7YWhVd3V6ZnMzQVhqaWt9LStidnYvfDU0U1NOK0dDWUp2Qi5adDRsdUYyUnF6TDN0RCp1THVlbnVUN2J8aC5RflZLQ0dnP1pBbWA3MT8sU3xcKSssRkZsdVpKLFo7S0hvWDhiO3ZsY0dVYTBwcGdkU1luQnZzVFNsaV86ZTtSVltgU0xrUClfVSxNaGxqVF1kXDNpY1JMN1xdc2M6d1FPRWd4Ym4qNjBdfHhmNj80RHc4aTZRQkBkNl95fDBPYm5xQEV8dklmNHlMVW9ARWl2LE5oZ20pUkNLUXwqcldtTTEyWnljUihnXmRgYUEoZFxOaDB9UHBlQEhRTHdQPzh9cX1KdFEyQ0ZhT3ZDWmVONSpBX0lNV35SSFdsQFhWU015SH03QHd2aCguV2Z0TVlMZTIwNHJtWlR3N0gvZ25oNWs/TUA3LmR4P0xdX2VqN1EpaDMqWXYxMyxJNV16enlkQ1FFMWFJOFJFTGAocStLUj9MYVZpeCtzbkk/W0k3OGplZ19Se3RLclhOfCgwM2VsQ3ptR01uTmZ1cUQxTCsrQXRuLlJEYXN1YGVAK1RaXUxjK01VdVRGR3ZhZXNyVHhjdTRweUtGO2thdStoPVhrYG0wX01pVzdRQE15P3VdbXk9eTF4bj1VcHNlOU1Qc2lNcU8tNS86MUpIZUw6a1B2Zi5hXXJbX2lPb2k4KSxOTTdGZ2tKbkhnYHNLLHZJKWdzV05jN003Tjc4SHU5KXJ+fEhDVy1DUDhabFQ0Vlt4aHlVaS8zV15cUm83Yiw4UE8ucEh4KlhTRj82TndoVTBlaStLLzZPVlZLZGNaRUlkVWI0QFBBZUJvXWEvPVJKNlNXVTR6VClCNj1JZWEsXWUwWTZDMnx+ZV4pXmY1dkZraHNhVD81NE1aOFAyWmZFQmBEOjlUOUJWNE5oemkqbzhQYlk5LTNrZTdhcEZAeUxjVDs9bDg6ZC1vQEcqT1ZaUnwrNkhFc2BUanNSZGtGLEQvR1Z2Sk9XdElCOztrOFJNKTBgR01efG14cylZOGpSWnVcKCtsWkp3W0s0Y2c9YD9aTCsoSjdmXi9LP3BcYnkvU01lYHxASmp0bChdWDtYbWV7ODVeLTAuWzI1VlZDQVM9bSp3YElNNmspK0x6bywzbWtjR3szOFZ8WzM0X3hmUDU7eDJ8WkZgdTNlUXIuTGhfYSw4SlVuWF47Yj1zOX1jS2Y6S3szLV5Qb0FXXVl3aVQ4QDBsWG9Ca20sNFBgTW5LVENbZWl6KmxrMUJifCwxTzIyZ2VXKixYKk0ya3JaOVxJQGdUXXVZenJUeEAqNEFiKHgybFU7XixZYTQtUWUuUHM2MDo4SEA2dT9uXVdzU0hNYVNzVUVWUj01N0d+OURQTkdcTjg3YUF0UjFfbn47NTIxRl1FZE8xRUhnRWpebG1aQUF9dVw7UG18ZVJ+LXRfWWQ5flh7L35PbWN0OXY2YUFLWDJ4WX05aXJhdVV2Nyp8WFBcSlIqRTJ9RyheblFDOVVlX0NeMjcvY0dmRUxpTnNNR2d4ZjVVM240NitFYXs9fldRRFx1OHtZSzgxaTdzaEFTXWhfXGVCeFNnVm9ZL3JmZygre2VIQmY1LVZJelFxUGNBYm9PbkZKZG9nbXtKPUF4fkt4XlJSfTc0QS0zOE9nOUVBSzlVNSprKU1XYFx4Xkdoe0p8Mkw2eXJDN0UobixULG1xLmRFNGdnMFVLd1hMTDRjajouT31INV1oS1AtRDNzPzF1LWNaSi9rVTJQN0FffW52Xil8XChGZUtuP1soQzpEQTVsL3k3cTs4OU02fmFqaV9pTWBKS1EsRF9XY0JUN1dIQ196WkEpajFpcFFDQC5LM3d6XTgoNkxAdXhXTEtJVCh5Om9QM2E1Om9Wb1xARnJFNVUobnEwdVB4ezg2Q2tzfWRWOWhpOzMrKixDLkpnLTQ/XGhXKlAuNzU/P0I5fE0oP3hoQmxKLVV3VEVrMS9EdVJNKEUrYlpZdUo2XjZZOi9nVWdoLWx4QFJfa2FLey1aWiltUVlReUJvN08qUVV4QVcuXWh3bk1remc7KzdgMUJGL0VUXl9iS0MxOFB8YlA6ZTNlUDlDQCw7REU1YlA2MXRUckJud3VHSklUKHhIZ0hnSWhSb3QxcHI2Kkd0fW4/VlNHKTtqQGVkT0dwQE5zOGk2RjZhP35cKDtyU1xpMURCOS9aKXcoSC0tX2M9XFhSRXpfKFdBTU0sRGhMa0BnSHx3N203azFfOkMre01qMThmVkF+XGpQXltlbGBxKWV7WnFoYkBdUkFEVFtzeltocDQxW1lsVk5SM11JQHZFQV1wPWZbalAoL2piSUlDSmVAUUlRaWpCO29WaWpPQlh5TWU5M3h3THU6MXcsMHtaRjNgWjlbNX04TzJgSVhlaXdZfFAsdWh2Li9aXj1WXU50SytbMnF7dE5cUWFjOSxmSEtWQFdxVHZrMl80TGRUeUgpa1VuU0t1bFpeLHhaZTA0a2M3LWFAV0tHdy1iK3BqKDloM2NiTXZGRW49al59Onl+V2doNzVXUHF6NXA/dDQvRGBlVjo/VS9EKDdRRFR1NDZGdVN3NUZlKV1qNFtmWVw0aHpKT15yUExxLExyQnAxdXV6S0FaP0BKRVV7Kld4VXI5dml0S2ZmcnQ6fHxqOW5PfUV7XzsqeXN9fXV3UTQxNT92dlFgYztTbFpWPWhlcGg2YysuandKN0hgb2Z2SDIrVkFvYi50Ny1xXE0wfTBJTGZfMD8/KWJhQ25sa3RuLC40KzB7cllKfCx5Sno1Y2M/TzZuNVtFWTU4dWQ2ZnxjK19xYjRDOHBacTtAQipSLD17dVp0bC15WnUrdTluMEItenxEc1dtVzcsVm8ySWAvaVBxODlnPypKOHs5QDEyR0RCVmN0XTpjRF0tXGFbTUxxZHJfbVt3N2lyeHwpaWFWTHw3WnUrRWUzKit3elZCQU9RKWtrYSxEKDJwQkdiLEBPQjtKKzVbSzU2Q0xwSXltbGtTdmluamRFd3s1Lm85TXZqWntuNms4bV8zMzRheE5GUV1SRUBHUHNheGEqS3ZfP2F5UHRGNSxkYUlgNEN9aUhSey0tazt6bnNaR0NgbkBLMDVRZ0RtLy5QPVNJKXItfFR6Rl1jXFF7WFQ6eUdAb0FuZEthfEcyVWctSmZnSlZ8MkM3Vn1hZT9xWEZoKCplKSxOOFk4VTo6KFddeV5+Y1ZzXjFeU3RRW0RyL00qRTZhO0BFdlN2KElwYy94cTdkMXs9Z3E0NlN8O3pQW25kdF5GL2tHLCxBKGE9LTYvUGBLZEpqfHpBX2gscWFmfjYzLXBXR0FVQUJIY183a0FPQmJ+NitHZHpXek5Ua1xGfltXWVF1ZlFHflwsSmA9L3VKQm1TcWZQZTJcUlY/QmlKeVA4L19aLlpHQG1hTV9mKm9WKkg4KzRRNnB8enNualFgNER9Qj1eXjFrKk86UXp+XU81Nl0pUjJPVDl2azt6Li05dnZsMT9qXTN6QS44OVx3WGtZT0RycmJOKEY/dEJ4KzZZYF9aO1hOeEBuN3RJKVpvYmE0TmZvKVYvezQ9OHRlWSs6N0kweVw/dGZ2MVd3LD8/MU5aL3h7NV9KVj8vV1piXXFJZFBMeGN9M2RCYnNSPXRRR10pQzdFfE8yfkNTWztlaER4ezc5KmNKOEBeXlo2L25lVylURmpGfUEzdUFrfkR+ZWNdYDQuS0pzUV9nSWZcOXJ6Ll9tKUBeLG9uLjhFbDAxdkNEOmZgRGwsTl4tNFdfe29dLExFL29ScDtQdC83b3dwemZpdzgsTX4wZjZjT0JzRGhlYThMPVVyNl5eVix0RmFLYEprYHRkYXV5OlBhP0VvOFUpNVR1UkpLXjVkY1NEV3R2dUZnYURRSHRCb2tleDtmbCl+MyxJX1MvaVMwTmEzL3RxSVc2SzlWLzthLERodWdhQy9PSVk7UFR0Um9hcGFkOz1PellYQFpqaS8yYEJPZ2F6XERDKX5UZEFray4obGVVVV8yTU52cHN7KW4vXmFXOHdXb1VzZ2YvNHVua19PK2xiRFljb0xhfj1XNSt3cW5tUXdsKmd9RUE0VnBPWEJNVFB2dXVaKStaejBtdl52LUV0fEJrL3I3RlZSX2BybC9hXWJwb3tLb0ldYSo4aUV3OHRAZEFeSzAoaXtRaVB9djU5SzJBVGBfe1spO3hgYFN+P1IvZC9kMHJcNHlaQUg2R1p0VD1UbnwpKlJ7M2I/fFZgezsqWkJXWTJ3c3ZgVDRfMGNCfnFgey9lSzVILy9aUnRjT1FiaypCZFRbeHt0azEob3pJRD9mPzJdQUpcVVErY3pfam0/VkJydmp8Om1vKHg6bGheNzpueVI3XV9VP2ZHXi1wQF0oOC4qbkZ5NEJQXUktcmArKSg3Pz1fYUdfWzYrQXdqQDV0bGlBUmp4M1A7ZEg7SF1SYFA7aDtzcERaZyw2YW1LWmw4LDM4MTB8RXlxQHJFNC8/Ym9xLVZvcXZ1SlZ9dSx6ZzVlKnxsLHcwd28uK3JRR2pHb0tEezk6P1xhSHB0VjhNNjtGZXdEOTU6ZGIrelM7Zng7NlV5aVh4dENXLGRQOHV1WiksW3hbd3hMQV8/K2ZvM0ZHYndCMmUwUU5EMFd8ZVRGP19FNSsyU2wqUTlXMF1qan1uVFVUMXZqOEZGdExkQWAxKHJBLSk4blRHXXg0PzFnbU9LZywxcGNPQEJMKEEraCpwMzlmcjRlNXYwNV9LeFZRLm0rSTl9USk/P3xoeWBndj9sSnRtLmxuYTtAKWF0QDUvOlozfm9yVGdwUmc7TFxiRF16QWYvQl5BLkdbMlJSc3IxSk5iWkhTK0FLNVxPdVNnQXhrZW00OS98bWBdKXVIcEY5TTUvYjsrQmBrbyx1MF8uN0VQQ0hLaHNacFlJYUN8U0M2ZGt9PThiRmBnbi9kVmpZMkpEWisuZV5JaXsqcVZMY2BPT0g7Lzo4MVReTlBLUHJgOUUxUVotfFhkOjJOSDBfeVd4fVUxVlRmSVxYRVdrOSp6Mk16P0JLUy5YXEpFWUNkWD9JVzJmUFt9YTs0c1ZdO3dYN2I3ZilWe1dnS0goS3w6Si0tWUpuaCovVSxeXUNDXlllbXJ0eHdofXwwb2FgOW1tOWZqLk9oXUU3Ql1vWjN8OiorND04XmJOP3lnTWs9dzpldjNwXnVPKTNeT2Y2OXxhNlkre0xRQ2U4NVdqOm84STtNQUUtbzZRSjhVY0V3SHNcRU43LGVfSSwucVJ4Xml3LV94aFBMek4oXmJzVHdlfi54bDhvb3pUMTlyKUc9K3NkaHpsbz9iQz90ZVJSRHp7Q1R+M3pNRFxJe05Vc2ZUNjteW3hvLl5dPV1VdixBVjNHLTliYDk/Lk5UKGNTOmNIfGRTYk9dOTNJPXFOdHdVS19MNFFpYF0ua11bOEZXOHs0Wi5eWUpeRStqOVVmKDN8UDIwZkp9ZExtcGtOVlJEW2MvP1hVNmAwe1ZzUTtALT1lRE05KUA7MVhcc0BMVlR+VzBDKGwpRVg9YzFGa2k3N0ouYzRAKlA3d107LDNhdD0tP1MoTz1WVFYyK2osKDNYWFI/LW1YamFoXXZibXZ6MnBfO1Y9clpcN21KTlYrcjVwaU5BYGJoNX4xR2cwQWJsQTRLOnAzWk1LaDNvSzVLQVRDLHJfKEVoe1xDRkgpUlQuVkl3WTppTUtceV13YFJyVE10UH1VWVJmTThmWCllXzUrOTFLK09mOkI0THNxN3x5YT0/NzE9aVN0KXwtelo7emF5XHhQaWlKcWA6TT8xZDBUU0hxbmFQUHFhQ1xpUT0tSmxzKWpSSkgqYm1iWChPcTFqQHhgVl1qYFBXSVN9QStdT3t6QG9LRGh9cG97ci9YSmwrRE1iNWhtYU1xLkhmQDBBMXtscDVxVWpWQUpKQndse304Mz8qe34uSmtfdGFqNDsoKHkoTDt3cTpUdFBNZ0w7Z0ZBU0djbEgqe1VyZHRVM1JcRUQ6U3wxSy1NKWx6cVIpWzs1KFJpWmE0Rm4xQUArKFVmSVwydykxZSxEcUFSe04sQldkfFdwe2UtPTh6NWdQeEVjXWRULERoXj05bHp8NF07MEEze0hXYD81MisrLWBQMWF0My97c15JTjpqTk19SzJ8cHgwSURgKFRfUk1IXUM0ZmV4fFwwTTo9XExwXHZ7NEZrQlZFeV9FRCs/P0pgQVxjfWJ9cDBKQz1vclpGW3Z0eEUxY2VdK2NFbHJ7dkMqdVlpcV1hXElbPURkcHxea1RrQ1VkTVR1WHUuVVQ6eTh6QHM5NzJ0U0hPZUc6KnBrOUEzKjNMb3JHQFBZLzFbXXk1S0p9K0o7SkdxK0k/KERnS2NLXnx5aERYNVYwMy9nbE5ua2ZeU2t+ZnBAYFg9eG9dTEN3LX49QmdxKls0KHdsdV0pRXtiRnpUOFFXZik3TkdSUFE5UWFtdCg0PXZAdG1KdThxaC4rZ29XQXlOLUJcUSwoa3U3TF9faipmLDkveXFhVE1rOkZIUlBDW0hdMlkxdG5vPVg5aXN7WDR8RlppWDNMWUI7UE1iWVRPeEgsTit8O153dTZfQ00pb3BHR3pEdSsrUlpPSGluTkN4LVNKWGRvQnUtQVhRMj1vUUppMFopXDp4bkFOfEtPLk5yNTM9RVJZY25zOklVO0JiOjdHNS9ZezNYfVxNQTM4V3ZiKmUxM2Z4STd+K2QvZFooW2Q4NlRAQilVW1pIUmJ7Zz1nQWp4UnVGLVk6NE1WZmJmRTM3O1dvLkErZ21cKHA7bWVqcUNdUD91QF1VSDtuUWJqXWduLnQwT1F5Qy5JK2t6NlN6Wk4zfHgsSnc5R0YzOV8zN0c0OjZrSC1XUGhecFdWZEhodWotNmdRczkuRDRrP0pWQ2gyO2ZjNWVSRzNeMzZlPV1KXkooZlsrLkc9RWwtN21zMG5fKzt8OFteMXxcKzNCPVUxNXtNV0QyfjRnfjEuYXJpd3t6eHU4Y0QxQV5xeytvXCg1YX57O19GTDVyeFs7LS9XdVRcfnA0ZHY7SGVKWkpIfFtnNFNFWjlXSntccjhDcFJ+bWYpOXNFNXtodFdcbSlLbnRmRF5EZWY1cFRLMmtrVTpmaXBleVNEbTZRbFVidmdUSi1IXXdpdShcfWMsZ1Q7TnV8YFIvbC43Y3hVU11oV3JNOVpQRXN7LV5AeHFoV0B1TVNPSGZNb3RGeChbeWZYLlp3cmtSUTVSKVgrOmdgXEZoP2lQe35MSVttXGpBeDNxRE9MdX54dzJDXElqMlY7REV1Sio4XmNDOnVUbVJgWENLOU8vPXtWWntzX3RZRH5qVTJzcnpHSDZWMG5obzh1dnlGOU5ifSsqV0kpbVlWalZFOm1XX1xGcmwqO3F7UTBlR3p+eDVTUF9fc1p5QT8xQnE4Yi13RS5hRX1NMHBDWU07NExoXnM6bVs/bS1gcW9gQEI5eXw7LE1Zcl9abjRGdEE2Z0BkdXh3NVZYcmI2a016P1o9elsyTihwLXJ8X2Z6V303W0RhWVJ4MGFmeE5HM1RKSGcuWi1tcCg/clBWMEk2QVJjYGxoRm9fQT1eV0ZVNm9uXElebWtuSzRBe2xCTCpcLVB3V1MrQWBbZWM6d107TVdLTnF2NUpXbil+KVZTLS8qbFI0S0V+K0gtNyw5O19qXkpTKDgwZERfQlIyb2JES3JzVDtXaTQ3YSheRzktRFNGYUVmaXdMWzVzVysoYmRpMzVdRVtDSm05QE5RW1Y6TzM1T29YRUtTKipiSj1rdlYuNikrNUI7Mk4zcnZ8MUVKNVpnUktZMXlpXTc3SnZ+OHJSOmE/YEJaWnNhdnFcXHQ0Nm9UcU9nLl1weV5cTDN2UUc3L3FcckIvTnp6all1cEtlbG5aLXdGUi9IW20rSj1kSWR2Sl5kQjdSXWI/Ry1sXGBxWj17WF87c0o7TF1xWlFIS149ejBiMT83WENSc2FJd1JCWGVmSmpBVW5ZZy45P1ptYSx5XElDblBwZE1fSS1IcT1gMi5YKXREXEZQRTYwLG53W0NPRnleN1pbdilDSUV+OEA0fGc9YVAvcl86bnY6NzQ9Q1NSNVVqMk0tZTFRNl04Y2wsKDFQfmpCOS5dLlBaYVw0Yl9MPWRBc2t9ZnVQbixae21DSm1NVmpVXDBaT1BUcHVufkBjQDpCYWJRYX01ZmtXdURPMWZEdjtfbW5WS296SzI9WS9KXFkpZlBjR09EaWorVzZ+Vy5SbS5rTFgway1lXDRdekZpXS4pazsoeS17ZzM3MExGQllqVV93VUs/Z3tuRU4pMzNwUS93WFtiU2YyZ1w6XFxER3R0VV94UUhWMl9Ud3piKW5ySW8pbl9wOF98aVpYXHRQZ2kweHN7YS5uQmgzUStLLy0rOitYNWdGd0ZXVihzQEdZXC94LHkxNkk6amgyXTdtcm03Umh9W3U5RTZ+Lm9GODRUS2k1UW1gYUBzY3JCLXRAX015Si9sYEpTREkuQ1xzaXBGUy5NXXFlZnl6LjtNTFJQQDc1Nkh1Tm46X31JVjIyVDJob296fClYRGxSZy8uYFkoYlYvRF9Ffls1Q2VbRTVEO0kxeHJbME5iPz9GNGE1SCl3PzJLcjpwbi1rNHhAXCgpezlCX3ExUnFKRGx6Z0wrMllUdl9QX2JIYjE/KUBeKytGQG5eQDkySmdtQUNDdj0wNi90Q3Rgb2U/W2RUXzk2VVlJZTF2MmA6S11jWXksSXhza2R7aFM9ZDZrKj1UU1grUmJlKUBVMFIxclRnaEo2W3FARkQzVnhHT2l2OmBDXTBhQW9nbj97dUpIT0J5LztCaEE3OltoVTgvUjkqYHZFfTNMLjhOMlQuR29rcG50OVd7Zik0LVxPTl42c0x4cUBkflJeY1hbRl98WipcRV82LjF5dlBnR2o9dC1UUGJ5eksuanBCS2dFOTZCW1VgRT0tNzV1fndOL2VfUEMoaEZNOjdLTnk2M09QOjNhSWxYVDRhfD8vfCorYVtXaEs0Wl1kWk5TZThSOXlsSGt7ek49cHp1V3poVS5lXE1XbEU3cCwzdTVtb1pZZzNzdWsxQWJXYEx7fHB6KVA7anRoKWtJVUZ+W2tHYytodmVMS3RIWWhASEZWZHI/KzRJdkdMeHg0MHM6QTcsdkptQnJxOFZMMUIoTmBzMCpdRE0/RmlSby1rMlZqTW1yOzJaX35cLXZiVEVRUncseC5NU0NTVktUai9UZjVJRVl1c0xrTDJsXTVmWD1wYXJxVF87eXFnQFhockJnUmY1MXdGVFJvZ0c6YyhPKUI3TUlAY1pfTTAqNEg5ZV1hMXo4X35QTzpxbEVkQnwwRnx3TUVoUzlFR1lePU1yXyx4M2hlR0RsX19hfGlod2NlYy96ak4yLHlkO2dvNEA4eTJmejJeRHtrYEJPRGwpQnood0VMSDkrW1kvanRSLURWbl1dMXV+dEBOKWl0UWZiXj1LazFDP0B6TWxXZClTSlk6Slc/N2lzTV58X0AzdF86YSkuP254MjZrVjk0XVhwOy4uTUV3TS1HRHl2P2xJOkFpTUFTcFx4a1ZnNWQoTV9SUlRbaTJRMyxpMjZiLEFLUnguKCxGVDN3KC05ZXgrM0RnVHZHXihlQ2prcW9DdF11RnY2dXNvfWg7P2FAR0Vrcn0rLjRtdWd1OGBiL3BXZTBpKXZpMUVkM0w3QEhie2BdPzguTHJjYm9GfDVHb01najZedEBAQV9hfFRbOGxIYl5MPT8pO3JLMnVuVjJJLS09QGRCd09mZi51MXk5T185Q1xxUW1VeENfWk4uNF12eFlILFspRkZeW19bVUVQV2FjWXJsX1w3KGV+fmEyZXtcand8SC9sOVphaHgzS2Bje0RFP0lqQXdxLWt2d1dlUixlXHVQUEUoLnVeXDt4dTRmSThtKEh0cUhtOip+LClmS1g0MkNGNUFxNzJYMnV2OzR8S2cyKVRra1ZOc3JwMWZKRmN5Nyp2P3lkREdLYkdIe2k6ZX1lQUA6di5hLTBNTW9rMDRgcXRSNmhAWFpbNkF3QTldQF00LlVafno3ZWtZcD8xYjRBT2tqWmJDOkduTmQwbVVhRlVvSFA5O1BWTW5kandMVypAb21TbD9YRWs2L1JVbURCNyxhQFtIKXE9OWYqV11BKHlqWnsocFsoRytbXUVia0U4TjRtaEVESC9kUkU0VHBtZjt7Ni5eZkVLe2l9OlUqbWhZQ3ZHb0R9NTJQQDs0MC9rSkNIZTRsQi9YMkpyUzl0eE8yTFFoKnYsXTFUPTVZPykreHUvZ1ZzfCprSUZLOGAudHVxOnVpbih4KXp9SlZCbko4VFZjWCxTS11cTC8yfkU7KWxVTkxHeSpuZEEyWTAtNkUyR0pDQmFad3dAL3A0eE5jbDhlaWZAaTVLTShkeHFgQ3NNcj1ufTpgWHl6NlZnaS1jMTJqcHxYc1BPczJbVVR9SE5eRS9HL2d+QFN1YipLclxcRTs7XF55MFRMVS1CTlRydigzO3g4SXdkUmJGWjlpRmF5czBcSG0/R0NIe1QuQE5VQCtyWm8sLFlgc1VoKmR5Lkx2ZjlffUYrU0ZSZnVabUBQTDlGcS95aGx1d09UdF01UnkseF5+P19ATm9NZlcpKGReS2djcFMtQT9nQjNPYUpTLyh5TlxNMHFUXVRTXEEwZ198YVxNNXRjMGJ8Uncre3R6KHI/fjFDYHpJNClUb35TXV5dOjcsUkItbk0rYE1xKSk3MXMvXzAzSVMwcEJmYFJBaiwrQmI0NU5JNERHTGFaT0lgcihFNFBzYyhkVVZiPVM7RlooblssOGhlYWU1cTdLR0hxSkcyTlssVFlDdVdAXVtSe0BpQXZbSHtIRkFhNTc/SlJqVCpcZ3pWO1lnMWhtR05MfEIseHAraGUuaCw6fjdZc1NTck9uSSt3PUIzRUBveT1JdXB6eFNtdUJucyxKRUAsa19sYEpHe0JyVi5OK3IyLnFWVls0RUR5YyhgfjNje1lnfjh8b0x7RWFIdWlodkpSY35ASypwazFOTUZrM0h9dXtkK10pcktPaDRnZW1KV0twLGo6UyhIeGxOdXF3QWpXcXVieVdAeVctNGhQLnlCNHNnKjNpdU9KZWUrQ0QsQChaeU9GWFVLVm96KjRibHYtWnp8bzJfQHM7M0k/NSx1KGVZZHcyMF8zMmtQQWlhOjVQVW9iLHl0SlN2PUVnTFlKd3JOQW59P01Sa3ctLGpOanEvUVFacWllczZ1QGZvTSgoNFEvfl1Wel41MXhsXzUxc3BcV2d5RzJQMyxcSCtGN1crUl9vSlIudGxbYDEsZzB5M0JRK1xvPy1fS3xFYy1xflJdNFhsQUosbXByaD9SaEZqU3BpNC1QSXx3SFlNMkxWcyxCRXZiM1pPLmU0OXVJWzZnQ2JoTEpwTHFTYkt5R1M2bS16fElzSFFweW9cMXt8W1dMd3FcQmpYeTk1UW8wejcwMXBwLmd1VTlcPzdiUil0SmtwW1szNHQ3b2Z3Ui9TTjJGR19rKVBcakQpNGxrR3Y0TE5dL0BkSTRoNHRhZmUxaTNCMk93K11sNihWKypFcWRWTHJiKERhRl5vUkRaZ29SUnBnYi8rRVNhfkp1O11oLEVBLXZgc1RSeD89eVtacmRlP1QwUXB7c09+X34xLH1KbllMR1I6NzlZey1mV0ZjQElNZTR3PTRjUjdEanpVN15TbUtyNipVZFt2QCwtbnlja3E1XXl6Y2xGRERjVn54UEpfN0NmcnJgdDlqczJbUWQtMUdSUjM3TE41bHZZe0xHOTkzXlReNEF6N08wSnlYW0d0Z3JtUWZ5UXo7bS0tbmVBNkUxeHNNRH4uZGVWfHBQL2RcKTlIXXdofTRaW0xJMkRqRF1ibk0xK3ZDdnw2ZVdVNkhDLEc0Q3kxWzd3YEBrblhgRVZ9U1M6QTNnKXAzb3xNcCh3bnkzWElfeWgsOXFnMXl2dWd8Wj0wKT07VlNCWEVqT2FyNSg4S24vYkZWa2tCUClDTjNrc35AOS9wYnY7QVBZXEMoWlJCMTQofDVHWzNCV3dFRz1LVnxpbG4pMShkP20obWF4ZHRCa213VV42V3JzVClFO3BecXRILFltfC5mMHE1S3pnWlZmSDFBfS5iVHxDYWRcMHFZMklUc0FwazQuflZJcFNrfmRWVnBBK0lubWswKX51Q3dveXB3dDZ5LkZOSVNoVitnM3hnW19fajpMQ0NdLTBrP2VlanosRzB8VjJzfVJhRTkzNn1BYUxxRFphRT0zPV4oZWJGRk9mY2VAd2tQLCxcOkhLc1ZkbXRXTUdNWzF+U2QxdFxgcUtTR0NNcmJ8aW5GajBbeDVRc2ZIXXN7VEJfYkA5XjRYOkJGeFctXUxzLFVeWlZDeVh+S2RjYHVFTTJ1VlVaS0ovZTo1N0hmfXk/KHxnVDstQmJlVChoNz00aFtnS1BLZUtWZzBdQn51V3IzVGk4ejhxKHFBbHBcYy9gfnNcZXJ0UmxzVywxK2ljTEB7QnRdcTN2L2Q3cz8pVXdycUZQdlQ9b2RjfGJVNih3YHNQbjtQWG96PUpmfEF5SkFSVSlYdnlqNEdWY0xoUzo0fGRnYTI4eFgxfEJCYWd1KyleQG1jWl1dYTRkb2RsOWNBWWxha2YqNmF1S0NyMVJfQWlncjBQTUVSejhHLFxtOm4vTG9taUBRYFdzRj1OTClAbHtqMkd0OF0vWFJpdHZdU2VhfDR0KGooelZZZkZNVnlXWTQ7YEIpVXd1dzRgeHRGNFQxRlY/eU1pd0R6Ymsvb3Z3M2VrME9XOlp4OGooMjZOcGNUL2ZaMFtGLWordjBKYWBIWVVPVkV3dHliMHdTVFRja3pYLG0yeldSci5SPT9GZkx3d0l5QXFGPzJJfj1xMEJYY1FSWkRGXTRgW3RsVEFsKX5JNEBOUD9EOVFhSH1WXUZDZTBbNjlqMWlLLjVbS2RgLSlhak97b1Z9UkYqTmpgTTh1YEs1KXpwYHFhSkQ/X0JzVDA9PXtZTjtqe08sbnRTOnBDbXYqanp5LmZ0RWlRckVYXj1uR3ZYYy9pendTTFAzVih5bUM1SGRYbHs1P2ktVH1UZ3wxT1hfLjI2c1R6U04sbzt1R3AudnZHQC57L09eW08wbVljYmhdR3ArZnd5SmZzbS1MTFdwclR2bFNCe1xJfnZrKHczWEZKdkQvUU1LLUNFNHRvYl8rZXZeTStTRVthYCwpaTJJUyxNM1V7K3N0MGBsYlZHS3xmc3VNR0VJQnFsYnN5L1FwXUpqZDVNfTpUYXNFYjRmNWhDMkBofjpkeFldKypreXVTYXdmNlFVXk5mfigrdU1fcEovKXk2Smo4KkVNODh0UHpocEZOelFWL2Mtbl03S2hlNDJmMUlhTFtpTFZpb2ZBOm5PWG5GcFFBc0NyOk5sM2RCLi4oMm5OYyk9ZER1eWROQXF3QTdMayx4NXBNNyhSMGhsRk0ufERzeTVfRlw7R0hzTXAoXWs0VXNRenx8eEMuPVA2NkFSPTZERmwzQW12VzdWR3hSYX4oekhlOFNlckpIOzp7YC5SZHtnaUVFKXtSdWRES2FrMCgrRGltU3VnXFpfR1M/WG1uNDN2WDZiTDNHUE0wR2piL2tKYy84MEA6d31FbmdKUmBmXkNRWmRSK1xjOmx7TVJEMD83ai1vcTo2eDphTjtyaFArNXJmeG5fbn06Ql03Kz1ccDNSKTZfaitULl1NY3taQTI0ZkJwYjhyXEpPcTtNXzRULHFiLFNSKS17MF5WZXZ5K05gclp3LyspbVQzYmBCbmQyLC5XUkRPUEUrLEpLOTNgRUtFRWp0QkFYRTQyY0QpKDdkfGMoNnlxTnRnSmY7Y3BuNkY9NFpFSy44VTtROU9CMG15K0hmUi1GQFJlb2h4VS5KSTlTc1JqSFB0Kzo/c11JOWd7VT1ZWTEyO3AoaSlASHZEYilye3NiUyo9Wy9BaGBhb3ZlY1xyYlluLTI4LmFlS1ZUT2V3cmpDOzg9RFw3TT9rMChFNCxNPWtHfE1TRTdrOFljRjBkTWs9PTFWKG5CUTlKK3UycjtJeF81XVxOfnA0O10wfmMqM3ReOnxGenBfbE9LLis5KnNacmw3aXxNaykrdHA6YUl5MVJsUnxYUnNuR0FcQnJsWzZEKTgrNDQ2VUIxLmlYY0p3XCtGZGZOSFFGX2Eodkl4M0c5NjlXcVFLWilJekhXKll3XEdIXWdJNExIalNRLmQ4YE9teElrTEhpNmFlLlt0XUZkXz83KyhpXy9dQmdPQHZGUnFpU2dDWWledDBna2VcNXo1VnFNK0hNbW1RS05wZGpmfFpkXFtpQ0EoY3BRV29UL2pocXRYPWthL197VkMxRlt1LXc9Lm4vbDFkUjJ9TT1BTGEzRGZIMDRvam0wRWgsMld4LS5fVmdxQGU4YG41Rzgwa3dFL0FSV0ZuUy54LnZVQElUY2oxZER7eF5mbjZQMWk2ZTtqaEtJVkh7eCpWeTR2RUc9LUIoUD00REkuO0ZHazVLXFReWVdPKVJ3WEViWm9sRVZqayhIR3dBYFlrMUs4QG5EQkppbEdzUUB1OD1DYWZ9ZTRmOTl7QkRLVF5GMWxUcjpjbnlbWjZiWFVSSTksQzFsQ1FtYkFcX3RDXk5LeTZ+dEx6YF9hRi9CP21edWVjcStsNTRaMy1hWVxUXX5DLkBSZDtMd2docG15cEpBZHdfLyhmLW9IbERwU0p+QjBNKGMrZX4oe1VATFo6bE0/TFBXKW85QTI9SWxrbVZITzlUSlVwc3hUWGM5YFNifHFIcXByfjRXMUxYU1J6QW0oa1NmeixqQXxLeXsyMXxVNEpgOk00ZG95Mz15Lk8zdWZlX01+ZnZ6SGRsRkcwUFVickRsKGZhZVszbFsvLzVhOFFaM2Y/XVZdVT8vcDtoR2lsTTF2X2JWOHkvLExPTGZDQ3FEYGpVQEE9XkFzNm1NcGVWeW5gfFBQQTE3e3ZoQGVnS0M6enVxOWcpdFJFNGhWXWRYNE1lWHRCOkZYMkBrY3hqNnRrfDBieW5xPVE7elNGTTczQD1yXEQuai5oUU9NOVdTWTZhLHRSeXFqaHE7c1RHaU1kY2NUNjpROFRjX2EufEJDRHA7VCpecndfRDsxZjJSSTdqT30pOXVFLl5SfXReZShJb11fVFYqXXYzWD18dzZfZVR0LTtYWkw9XWo0cUEqZUA4d3dFXE94ZDFOMVR5YloqOzJwdWFhQUR4XFpIQF43S0VRNzBfUllzdFJrKy1uKVZdRksuXUA/aGBlUnhOUSpnZm9HTlxtWVJQKGt1bUFsa1orSDA2dCxxSVRMMSlbOy05REk1NlF2P0dINnRIOmtGTlNOcSt0fTpqZGVCNjpheTQwVHNXWFd0U1V1XFo3eyphUEJpK11Bb3ZObE9rcVV0dDc9TTtWN2BfaS0xVERpNVQ/c3oseGd9dXUrL0g6RXdhMGFvPV9ldEFyYUloLXlZfWo2bHV4SGluaGJrR3NnTW96MDpRNz9dd2FyW3B8Wj9nUDRtXXx2MGtaYD09Z3c5c2lCbThlPzFnQWF2eyl9ezh1SjB6KSx1XF5Hb1lSeDRVal0/MTg3fUUod31sNUVuKHFKbE01dlw2LTYsUmQqVGVJO3pHO0YpSzkvYTVhfmVofWFPeTNmXDQ1W0NrfEBWRnJrNlxWUCldaGQsWkAoVVdQLE8pWFNXR05zXVJwd0ZwQF1yZXBwY3dDKS9Lb3BqTWZmX2NSZ3phKnQ1cl56OnoybktALF5LblQ/QHp3UHs9a1Y5Z3BHQDM2OXlfQ0IqLit+c2svfjIwbmtZWnNtbzUyN2hdKFI/fmJbKEU3RTtdMTJnfWZcN00rZi1FMTIoOHdpfmlsXVJwdWhvbFZbZ0ExQ3hPQk5zdEZeLixjc21FXHpDeHYwT2R4aC14Sm5fYTN4dS5sSWBFTk5mKU9ATytkZFtzLSxZX1lnR29tfGkqTko7Zz0zP3NhTDZATnJQemdjb3RWTytOVUk9O1xRYXlVKCxlY10wKTRoNXduPWxtfDBcWlAzK1F6dEFJVSxXNTNuTSlfeyh2bz9zUUJha3loMlZXLmMqRjFNcFplKFhAVVo0Q3cxcWhPVzFBYkJlaWxMNTtWOzgrSDIoYF0uT204Py9LYzosS1FTWWNMRnNEY1oqSEtvMnk0WWVKRHAscHtxSnB1ZV5uTitIVnJ9Wl1SPypxQ0k2Nzk5ezlTZ1YobHpSZXFkcGF8R2lxXUYqLipsSVpibWFDeik0bWR7WmRGbE9CdmBEVT8zUzt7dXRFcmUtVUxOWElkP1ljSTRzdEpHQTNgemh0eD93dzpMYnQuUUlGaXhrNDIuYUBySDt1VXlELXh4dUB2L0lcTU9gQ1tefDh6akZ8RTpHLzVFSXA1Xihfcz0rbkstc0B2Kzd9XlQ3fE1iRyhsbHt0MDJJZUVeSk5HWEYpPXdKQEtVRitxei5CMmRycWdDal5IKDAtOVwtQTJcKXA/W1wpPVx2LDpbXV43fWl+MS54dHlhY19lYzpfcXltcWZ7YDVXL3lETktAZntadGg4Oy5MUFM1VWxkMi1ZO214VnZCNUh6NEtzZ0gwRC47cUxMYF9Zfmc2clpXNXdXQ090cCt0WEFHMHlZODt+RWhzYDZGQ3ZJUlk9KntQcUhkRWMpUlBNVlpmfDpiOTQsQk05YFJzXWdtcC9zS2Y3ZGR0WShmKVhYbVhBKURKe1pRdXJYfXw0dShyVTdRaEY/OzJEcSxuN2NGM0puQGQ9dWc4ZE1hdEApdV9MO3t9MUJ3el9nRDNSP2BkRS5WZWtxeU1QUFc9NUR3emVLdixrUTQ0OzB5QVNCd2pLaG1URlVIO3FsS3A/KyxQUlBBbHVLdl9nP0VtSy9vMFdHWmZaTjJkd3hUTkREYmpHVndCWkFKeURsTjsuYDNMNWVEV1FFYDBcc25pNHJDcGpIcHdrQWF1YFdNZTtJVHZjKjZ4Zkp1PTNiYFxVc091RndxUnxPW1VnTy9MQ05gLkloKXZrPUlsZl5FM15uLGp9XzFFKEI5UHNYPUt+NGZFO30vSFd5WEl2SXpUKV9dfEB2e2dcM11tW1xqcmcuZVtqKF4yaG5RaUEraS0rNF83dytcWj9IOkNbU0o6Z3Z2ZF5DcS5SeHJ4cygrd2NdcVo1cl1lQGV1NjMsTkxzS0pwZD9rVjczODNOKyhdXWQ0eFRhMGd3QzUoO3MoaGleOkdZUypLSiwxPWE0VHZqXllVYVwtLm5TZGRWekg0ZSxxbjF2UWNocWE/SWM3YixhVS8ucDMxdW5wTTpnQGw3LFljeDBifTIxS21xP0k4TEArQTNcOThhOF82dVdeYUQ4MGdBYS0oZi1MPWBAY1Y9PzZFdDt7LVY0fGVJeFFJV3lMblhfTEd5P2FxS2QvT3dQKlo/WylVTmBjNzo5NHh3UEF8UW5xbixRKVM5cVpyLnJWOXRMWF53R2ZjLnZiLTRPbF1sX1R4TW13KUhjdFR2NWpSW1cuXzE4ZSg2X2Q1Q1twLXF6MlF+UGI7QElRN1NdfD1jflZWRWBrN0FrTDFbbi5MeTdcOHwocXV7cDpqbERMdTBrYUZoKUV7Qi91RnZ3V0lPP0lGWWFNUkZCQFdpdns6WEpSLXxbMFZiSHRuNFlBV1hLM2Z2OXZra0RkUmFBPTY7XmMvUUBuWGhSQ0lKUzVydVAxMWp7MTMrLjZKTmM0RExkYzhHQV94KWBORWNPXEdyQ3d4XUR2P35kb1ppVHxCVFA/K29oKC54Yzk0bGwqVl5lLz8zQUlBeittay9nSkQwWn1PcEIqckApZS5OSW5xOHpAbDhzRikzKkhvMVlucWJRfChFVENSXCxRYC8xfWI3R0gsWGNoWlpOa2VwdCx3fDdeQGAwNjczSHhiUitFNWI6LHN+aDZkcX1yVFZYWzg4fGdCXUtBLDA2czlVOEV5W3t3c0hleEIpNzFZe35OaHdGOGpBN3xVMDgzMk1ORDBOV0VRXGdVQz97MG45UVpmRStmZV85KT85Vz0yQkhJLi5kQ1hKQ01kRFJjN1pdYVcuXDBvZk5jXVRfX3R+SFx2X3x9ZypHWGpdLzlrQ2trR25PZVl3e3g5amJJV0tcRlB4STdIfUNpSUJKQkxAKWU6U18uTGVxYnVhbUROK0J+d1UzejFkaExeYktkM2pqQEs1SkdDREV7NyouWD90M3FRe2EqTypRL3l7VVhJZG94OlxWQk4yK3lIYixwby52eTBDeVlZPzQuVH1gdEU4YHBYdjY0ek07OFhtXEY7c3JjcGtoNGdMcThadD0vK1B5VXBhQWNiZG1CZHUoPShkKls1PzMpLj9dey1PSn1pYVRaO2AtZVwyQW1rYjFqVVBrZ0JqNkNiO3hiL2NFbWYpTEpwVCxgWl1PbHY2P1h7eGFxNV1paExKcnE7SzBkcC52KWxvOl9RXihJO2VyW08zQGhoR31KcSlSXzFneWtHdy0sL25vO3AqKEBXZWJlSDVdVy9eO3d1cjBReW0vQHZiYjBlNnpKUy9iaUJ6bytGTCg/b0JxMWRKblFjMH0/XjBWb0tJTF1MSFg3WEoxZ0l5VnNoTD1GZ0pZLHp4WEMrUGA6NXxdaU53N2JzWmw9VSwyK3VWLzhDYn49SWpoXnR7fkdaX2c7bkdrL2JGfGlvPUVROC9DS3J6OW9LN3BMV2FOYkJ5UHFnTU06cVdUVT1VKVZcOixJXWQybm9eV2ovXl18Vm15a0hKcWNYd3Q0cjJ9bm49V1o0bVd3M2p2T15jeUtRcTZ8WipmWFV7fmtnMk19T2F1QTJoOmRRaUh6an55Z1lYcl4pOTBfYTJoe1s5MmxialNnXzFpYklddHZlVikufX5ARHpMLkxVRzJaZHNTKU1XOS8ta2JATj1ObWUsMWBreHp5ZHxbYDs4aF5NKnhnZ01LRlI7ZUhCbDs0V1w/SCxgaVJrMEBsNFIxa11FLShqSEJKTzkwRDd4dFpGL1VacmBYM0BuUX1VWHRqZDUxZDZicl9OKWVUaEBKLi1YOGJSSkFWUnNwXjlLRXI1Q31IMGRARUctXEwyflZkaHVlO3FkUi12YnB2UWhbTS9tSVc9XEZzQS1DWU1SZHMuXStSa0ppLHNbNFprLTJENlNoVjcpT1V4XDMveC9laU9IbWNBUnZyNDZ+UlFhQSxwdmwpLV17K3ZuRCpHcUV4bFNreV09UVU3XShKUz1VMTRdVkdwaUt0PXpdQmtoKEpcQFtvOy80PWpSWjkqOzJiK1xvZDdYR11CZGN4NUl5KCgyXl0sR1tCN209TFwpOzQoXjs6NjhnR3V9W2NUSiltNUlIfCxsVVZYfnZHTmByVmliKUcwUEt4MHZ7Ly9NRGBJYW9Fb0VdYGVRT01qTk9eUV0zd3JpKzhJZExoXjN1LkpWM3BIbGMzOz9MdmZOWHpFT1dmX3d2fko7ZygzLnt6KDh7ZXZPYDU7WFUzPy4zfFJFVCtMcGhBfVdPR0l9KD9RdytnWnxPNXRTNi9KdWN7TGB0ZWYqMkExUDIpVChKSkxwSTJ0RHt4WVp8LmIwZ1JVbVZNQXJdY3Z7QU9mS3VoSXlSNDR0bFQvWH46fHdzPXZCPSw9OndrXFBuZEdQLX5TRF83anVMZiwuZjlSZHpEKT1JaXpiYDooYnh1ZGIoezYqa18tWEdyL0NtNTF2RjNAclB+bGo6aV1nYE5WSD1SX0g/VEdiS29YcktqTk85Qik4eUBfR1E1eigycTVVfCliXU4tWEpQNkhZWzMzekZ3ZjBGPzFOUWVRSUJhVy8wTElpeV5neTBlM2QpcixHVHk1elJvNjkqQy01LjRGbzhXP1FIa2xkRHJPTTlnKVJDc0JfTFxwOGBbW0t7b0dOLy9efG1vTEguUyosXjUoazZld3BqeGgrMkdhRHl1TkJbdTh2UytpRlJCYF9CYlYoWHdEZHlPcGpvKE9WaF57di1zdGxSW0VdS0ZMM0FFLzVDYl4uNm1vM2R+N0hFUkFcVFBjbipHVChYc2J2fXA5amJpaDBSZFdxfFxndEpDMEVXQG5hbVB7bX5EUUJSRSxEZFRMcVdBd15yQXlDXmMsfGFiXnxpMG8rLDBRQVJka0F1NFhpUCtuSG1xVDd7TEZGRFFQRDZObVUtXnFbSWBJVExcLXMsdExMRmB4bm14WE9zP0xecDlDe2RhMjZ4QEFUbnMoZnYqWDAue2d4QD83dmxeVHhXSz0oRTtTVWZTLWlDcilHMlhVVzVPQkEoY3hrbVhoSjZbNTFtM15RQ2heR3xxSHF9WlFIKzcxTj9TcXtHXXFWKFJUbyx0fFFEQE0rRypXbUVrP1NHQC1eN053blVUVy1rTWwqX1BIVCheK0w5XEkrMTMzSitJdUpKXEEqWWBnQEYtXjUseHw1RkxcdXR5elpHK0B5Lnwybyh1bCg6XVRtazI5VFBKWSxxblk1eX1nKzJYYmcsUm0uZmtQK2xNbzdWaHg0UjpOXS8pQjkucFY1cHR+Z3kuT0JldlQwT1FtUyhxUl4zWixeZD9+MX1aeU1GdVBKcF8xbDFULVspKTN+TC5ENUN2NDRCM1lIKWspZFJyOXdEPy95RzItRGApMV5De1lSVng2RGVvN3wsYylLTEotOypffWY/M1tWV0EqWlVJNH46WEZvXnkqWTZ7LiooY3YwYGNtTVN4X0tnTl5+S3xHfTIzU1IpVis5R2JfKitXQl81Uls4SixOS0I2bWhrd2IsOUFQYi5pT1Q1KE5KV0ZZbmlBc15TQj00LVwtUitXO0NLdkhNMkh4dnpDblMqY3U7Vyp8fm1hZG4qcSk/bUNnXlVba1BIbVVXcVlvYmRPbixwVWppKmtcNCpDcjAsdEN3THhqLEIpMF1dOmRjUHFHKFFdakBqVUw4NmNDbEtzWWxJcGFZKldTaixfMztbcXkweWltMj98cVRYT2ZBXis1ZHNjSTBQWy5LaXpbWD01cCwsQi85T2oofFl0P194bDA1SltQSi43NS0vL05TO01eaCxBWkoyTW5jWGZqMkcxcGwvaE9LVTlue3JgPUM6M1I5dThAWjspQm9KMzYvM15wWmMwYldPSnpBaj8weV9VYUZjaDQxTGxVMTZwd08qakhCS21UeklhTTFbV29SO2JaPTQyK294VCxbbkdDb2s3VERBQitIc3pyNEt5LGopXjBheFo1KTN+dVdFcjBmazNueUJYTy1UXm5PfTBUMSpfLy06eH44dzF8Z2BdeC5icXJSanAsPy0uekVwZzpucz9WOUpaS0s2eGoqemspXmxqeHNCOixWaGVrSzVHQ152LXgqdHhBXE0xclFnKFgpOXYvR0JKOHpheDdofUd5eXVaQU5td21tQz85eldRYGQsZDAvL2lXe245RFwxUFg6Ynh1Ukgoakx2T3NGVUFPZ0NgbFFkX10yc3s9akFGNUQwQztRSShkXXpcOVhvOWMqYGU6NDNvMmBhXFJ3bWw6ZU9rWjVTeyhwdG5YdDQvNjhlRCk/S1FnTG9tWixkZ1lsKjNMVWA3NVwofHxWRXdCUSlnT3F6dzg4WVlNeUF3OmNtazhtOHJ8bEd6NmM3dCxsKDIuNStafF5ia2R3dTdKOlxxVURldD1FP0Rqb1MsTUFbKn1rQUxYLmduLS1yOHhUc1k1RlQ6Xm5Gdj9NTmE3S2p0cnlVM31eb2UzeDlEPSppSVhrOHAyenJiZEwzZWh+bVw9WUUxd2dHQz84ZFNRdyheZ2M9L1V0Q1RKODEtQnc9fVBSSmMpQTUoMlR3QF1rN3hFR211YilSckdpK25OKDdjLCprXjAzbmR0KHZpOVRvK2s0aTR5VUt2bUB7ZGMrM3AqLkxKbXppOCpeeVcxbUt9ckJgZitjUWB0N3FiWWIuN2FAbih7TkN4O103YjMpTThpXF8xayhLNysyMHNIVzF3RDBZNjZwdlR0dzZ0a2ApMk95SH5ZdTs4el4zSExRekE3bH02R05jXlFBK1ttREdAOl9PRW9pXilpdTc5S2lrLS10SSpSM1Fidy9JRzpRfj1NTDtvaUF2OE41bXJveEBmMihiNyxUZz91RjZ0d2d1dEIxeShOXml5Wkd1c1p0UXYxLmRuM3B4Yj8yOHE2Q29UNkNJSFBQWSt1UWV6dD85UDlNZkx9NWItMGApVG5XL2U5S3NYOlMzTzpXeDlbYmMoZj1WNHVUKkhTSy05eC9pX24xSlY/akBvc2cyQG41QmljUDtMTWpaR1k1fC9wQlxZYis9XS1KKUZeV0EyXnltVTV5Ukl2cSpXQFZIQW9Mdkd7aDRBKWBRKVxyOmFROHxQPVhEQXJEanlMd0duYi87dHdkM3V+S0hJW2ZUdnFzYjhmb3h+cGRLc1RNZGVUS1VSdW99L3V2XUY6dEMtT2hfQk1Kaz8tZlhXQHRCL2J0KUQ1fU5OOml2PzpkRFc3Uy9xLVFzelhYP1ZTTVVZZVRELl1jNjRaeUt5LHFJaDp2YihKM05DYDZ3eDoxfmhMUUJKUlNuKm9nLkxcXypMY2lMXV5TLWM7ZDJIRl41QE1TMldOXWE9QCo0QDZYdFdHPUAub14tLkVUbz0wc2ssMn1YQE0yTDVAQ3FFbDFeN3laQ0t5NVZMYFFuejsvOm9kOUxeSkJIQmxFfEhjTTcsSUBefEFeMzlEbllYR0ZTODhTNz1gOGZHWWlFelNpamBnTG4tR2JPYlNOSkFVVHFseSpmZ3RcXTRRaHN2RWgpZV5xcyxCKHM6eVBdKkV5UFtzOnBOcDtKUW13aEVGR35dcyo2M2h1Wm4wOmtBaShXe25jVWRbbXc3K1suSmp5dT9qMllkKlVJXHxcNERGfURiZlxGZHdfeE9ZdTh8ZVZzfFxbMXI7QXhfOl11NFV6bmBITzp9QFliOjBJSWA1QXVuVFktY0hEbDhwcSpQeVE7OExmL01pbyhyYlNzQFBPQHZuWztMbjRsd3RmfEFjfS9HcFxiWCpcP1FLbjVkdT9UMlJ1cXlvdW1EOjVgZ1FTXD1PZSpUMlg9ZSptY0R8QX1FO2tbel5ybm1mV1Jpc3AvRUxwLy1EL1BQXXo3RlcrQjZBQ0RuQ3JQZ2NKZitddUdBeztmPSlNckNaT1JFLDtcLDsrNTQ6PWtnOkd1Y31XP0hlXjdEMW03L3JFYm5sLGZZL0NNb291XiouMU9GQ0taWGc/KnVAdjo/KEk1QktqZVUzZW4pc3RMfEFraUFCXzNlW2cxb2FcVTdkaGBVV1V6Y0ZsLEEwWy5DOzYvNFxKbU5aK04qdU02a3FwXjptMltRb2pAaEl4XElwbGpDO2FXclFNS15DOHk7cmdYZi1WM3pMTlNpLUpPdStJXH5TNzA1cV9OLlhjNXtGalooOTthSm9JdV0tWz1WV0tlRXowZzhZP0dkbiprRWRSSzY3VHw9P3w7NTk1WXFeKmt2UDszZ3oodmlJOGIrYWF2ZE1nenVjbC9eNGAyYUJWKC9GcmJhLG1SQEQ/b3JYVUdlb246Mkp2S1tNNT9Ha2M2XWtPV2w9Xn1ncVYueFRhcS5Ua2xYMSpQUnhrc25fSU1RR0B6dVU7K0lBOmI2SXFWMFc7WXlYXEwyMHddb31wSHcofltFWDVDKk9ZOyptSHV5em0vL1Fza0hHOkJjO044bHZvKDZzeFgxRE41OXQ5dG5lKyxIQ2NTUnwoYmRoWDkxe0VqVXNwZl8/KTlyfUNqVm58WjI6QF90fkJOaHdNVUpPMmF6STRecmI9YlwxZEIsVFcxMn5LfEIoQmhQQS9Ed1gtNChsZVtVcW1oQVxjfCxwT2o6NkJrMTJld099WGhuLWc9M0d4QEttLjNZcndkKG9rMFp3M0NPU2pLRm0/WXotKzotc3o2Vm9Kd29bXl9hNVhSSFU0dSpkdStHblNWSSxgczRiXElgdyxmZWlYczo3NGhHSlArWi1DKUoxLC5LUSxzc2NRPWl1Y09jS016KmBYZ2w6P2hMMkZmYV1eTkc6Mkh7KUR7eGF5OE0uZGR4XGBDK3E1QzlrQWVSSW9XSmdIO1FhVmJXeDR1di9RbilpSkRlQ0JbVGZWVy5DWmY9Z0xBOkxzPU53KExWRENfREZILXVlZTE3V35iZlFoM3p3WUFdM1VFU2tWTy0/SytpMmMqamIufktPVGc3Oi9hKFxnRTVdRHl1d3Nga3xGRn5gWT9oQntXNXVVN0lKVWh6QWhwekxSS3BdX2dpW2JjXGZOR3AzfG0rZGBfZ2tKb3I6MzcsRD9ENE5acEd1aTRpMm5bTkg5RTJIRkVdMSlkRm8ySTdVU0xSU1xMNWdDKEtCTS9YUE09N0dKSFJFYUszK1toZzhbaElVUTNqRTIueTRCSTJ1NjR9XTVsNCt5cGRPeTJ0UXUvZ0dwK1hcKG92Q0dRLlIvKW14WTFaTSpEVkB0LypWVixAMGxuT1hNUF5oQzcrL2NSN05xWFtHZzVLdVp8NWFTLEdNaFFffUR3L1F5fUU4eSs2NTMzNj9VRXdQSzRzTk5dYnpjQFcoMnlFTntUNjhtUXxdSjFsND1FNTt4VWg0TnlvNy94Z183PWlNYWlwaGctWypeK1FHKDJoSlcqbH5GWEx4dEpHUUJpeGIsXkJgT0ZGQHR7WjhXfTd6V1lZKShWNVA5X0xjcnhjT2Jja11vfTVsTHdmd2lgMXpsdDdfO1h8VEY1Vkx5bkh5eXFONHNlfkBIQkV2a1ovaVhKXHlBa1dQM1JwP19De1NCcHJDa2ZofXpDLnZRc0dkP35HUjp2X2FvU346KDEwS0VSWC4pMT1WQ0xvczVXUVJrV0NXSzQ0TjVXSDhaZ2cyQGRIS08qM2tFXi9ZR1ddXTdHMHBYNjVBcC5sfVdZfTdWS00yQ35tOlJGTGdTN1o7SkNyWHoucms5bXZ8cDBIXy5PZXxaanRiZjJQQzJgR3pUYSthXVlUeEw3Qy03VSlJZHFob2pMM09MfXV6d35tckhwXGVnfGkpS207QzZ1QzZ3YGxDckh6SU56ZlQtO3piU2hQczRPV2F9Wko0RDhvfn0raUJmaStIQ3tMV2o3RXBnRmM9Mz8rbj01O3lqL2o7MHVScEB2M0krVHg7S2tVSXRAYTYybVw5eC5TNktMWGR3ZiloYDtQRVAvczkpfik0QWVebDt7X3lOMnNgKVpELHNmOmlzdm1TcStVfEhhSjRjXXFqNjdsXmM1SSw4dXI6Zk0vUWo3QjRofih6OSpFekE2cjYsdFksfU9yO1VOUSxHYHUva1RSZSx9RTNNMmNhai9RUGBvcS5NLV9wcTg5KS1XcjNJR0s2QkYrKlQxV2lXNDRWRUJZLkt5VHc0fFVbZ0s2bHh0P3VZMXR3NU9CUzcoKU42MUoybT9DMXExSm06Vls0Oy5ZbkddcmlKXHowPU9QTzlzYGdiWW1LLTlVXy5RWltKXlBQVXgpbUxZeU8/b3VGQ0h7b3pSfXpkUHZYVzlpTClySVx5Yjl5QFJ7X19pTmZMWTdpTC1ALnBUVi92YnBgUFVuU3FHZ1Y2YkZYLypIemVBdS9PW25zU2hmOGV6KWlkcnlhcy1mWzVRQUhMR299eGV5TXFZaGBjLmdgQnx6c1w3SWdgKjdMVHVGSTJSOzBLSXk0UHI9X210Om5VLXsubE8tVisrSTZ4P2ROYDtdN3ZZbkVraDh+citqV3FZUVNhYmUwN0BOR3ZaWV50djhjbSlMSWQ5XC15fkNqXGAqe2tLUHNgNDYyaEc/Syp6RWFkelhiKDh+NGQtOGdVQzF8XU1mUHxZOTMyLTpBeF8seyt1X2dINjlRKDE9PXFkMyt5Qi1oSzpibnRVOUYxSWAwTCsqU3AxUmo5U0t6QntRaWdlb2hNVHNGU20xQ0UqcXRnOHVjYmheaV9Ea283T1l+NUEyW3p5SzBgKnw6NTFBSGc0Ok0rRjpqQXIyW3lIZWt5bEgxTTpXUjdsMWBvP1VJZlI5TlQ/YCpYb2pkOC5XVFk6UUxAd0FWdmFIZUNxWjY1MFZ6bEVAPVgrRz0zLVdbRzdpR3lSMlR4L1FhSntSd2VmXkdILUgtVGpORD94Ymw4MDFxaTA6Q2YwLy8xcF8zd0VVX0o3V2lTYmV5NylZM3hUaUZtN3U6M1BSKkBnTCpOTCtUSj8zR2xzLFJhWi1bdC1IP09Lajsva0owSVFfRn07O2gzSTBvTkkzRCpOem1sN3pBSHMuSDszP2MxQmJDdXNyV2IqRW8/O0IrY0orfltWZmhJMUh0OzZQSGI7Y3Awfn5WcmNOLFEsVHUsNGM0fEVnLkZQayhtLl1+OmsqN1R7OVpQK2peZXBYenp6T11MNGx8Vk1LWExvQktJfnhnYW97MH1laWpNSnA0aUAzKGQuUkdwMXtlUX00SUBQWj9dSFAzbkZjYlxVTmNYfDU7OjhzeHtaKi9sKjlBUz9aWUxbMF5YTmFzfGl6e1szLkB4SnJvbVc2fS9aOVMvPUZvVTNgMWxySTc2NGlgNTtNKTFhLHowWC1xUVRsdi1STzN1T1Z3aF9JT1xZT19VOkp7eEg4ZVppfmBQTlBdSWg2ezsxWHIoU1tbUlZ9RiI+ZGVjb2RlQ2h1bmsoNjU1MzYpPC9zY3JpcHQ+CjxzY3JpcHQgZGF0YT0iXjRXPXRISndYdnAvRE5YcGdLcShFOnB0ckw5elVZS0d8QkRBMGtfUT1hXV4tZk1TZjRlMnJ7LFNPWFZdeWAyc0M2RlFUU2xTZmg7YkxKSXZ6QS8zK3xwaix5QT0qRWNfL0tpZH5iSltQLW40XHgsTDlxYWlId291Zy1tZUZgO3lccnxPT0duTmJ9K01ALjl2QXlSKlpWRTZPdzlYcXNfKFRASl82LlprPUZfbF9GOS5lcXEuRU5Fe3ZIQ0RHMH5+Ni1FaWNgclVwaFU4XjopSnUqNn5qKXFBPVgqPWVieVhzSG0yMEJYKTM9LGV3OGp4VnM4QihQTV9pL3g2bWNHVXJWS1otO1UoMTB7d2FHNHgvTzc3aW0oWkxCSGBySW5LN20tdTZ8blA/VTNEVVV7VkFLcVFsa0hJTy84YjRnY1Z0N0FxOkVBT09EP3FcNXJbNH12VjYoYXU7LEpdKjpTcjIySkNoQE9rXURUZnZASlVHM3lcLShqKkd2XjR5Wjtqb3p4Q0FILVVIO0l8WHt3K1ZhWGcvelktUC5ZUns4NU4ub0tgTWhJMmgtQF9qVWJCVUZ4UDdnRE1nfTdcKC8oXWs2Kns5fDlNck8pbVR6OkQ2Z2FrLVJscl99KnN0ZGpcSXhZYy9HMDk0dUhlVSt6NmNlUUBpRihFNj9yb0lAaFJibzEoSlNhLDE9K01JdjhaRkxFRlpTV0F3P2BwUn1udiw0OE40ZC8tWFtGLmR9dm07PWM9LFZhX0Z3fVFoc0oray1Fc2FhKy50aF1zWWUyO2lPdHJDUWdWQFxGUU5nKH0sQzFbfH5QLHJZeS9JQXFERytFME0rVXx4KlhvVFdkKDpbL3V0T2tzWC1HQmkyOXtsNm4ya1M5RClpdmo3QFJUXHRdY2ZBWUF2elBOKil9PVhYalRXOTIwOzZZdF58cW17amU0LGIzVy5eQ2B6WFtWd31BVW9ZaH5ud2Rufl5nOytCNHFsNGRPVy5mfFo/OlNRVEZ4KHFhSzJuU0FIcWssTmd7dlJqczgocExxUWxMOi9VfEt9YC12K10tRDBtT0lAMk5kLDJWP2ZSNDBANm4yMEt9bjZiS1xcYWI7VGhLLltiLU03UUJGRDlwXU5DLWhSTW0oOkg3XGhlekJrdFZfWX0sUF9EWnwtZDt0aGBoKllCWX5bLmlqQjAxeTk1RFNSWVZZU1VaLT9dRU1yTDR5Vl9gVjFhO1R3KHNEVl8zL0RSVUAvWkY4eHE1NW89XndWX2FDVVR6fjYqSl5eLDo/VUl5YlcrbmxNXDZVWWZHKVooaHhJLTgrP2VceE0/dnRQZl9TR3Z5dTdXK1twTypPKmAzYjZWP0QsK0Nic1kxeF8uVV5EL310e2RiNkpJfSlMbCl4NElMOXs3VDJYLDB0VnNoSihKfVVJfm5Ia29+VnJ5c11RQThcbXJvRnpdKFhlaUIzZ0hvNUY4fWtBXXxmRHllbXdtL01CW0hxPTlVbEhYOkd3Q3I7bns/YSxaN3R0fj9DZ0FPSThtdllGV0t4MEo/M1lIdnN6RzVudG52YGNHfFRFezRdSXgzPzVqcC8yWEZUZzgpUTR8WHc6bm9nL0ljUkZsRUhmYXApVHM7en4/MDV0Rm9tcWMwRmhAZEZxc0ZfZ1VTKzYpaVVYSE1UKTNCS3t+LC4rUjFjU2Y9RlRWS2BrLkZ5ak4zSnRmVXQ6a1IydVA2UWtnXDF9QnhKdWJge0gyTm46Ui9uOV4uMEF2cmZvVnZQdGY0THk6ZnNxKmEydUBra01gSVg0RWxSeWpaLmI/cUl9LTpeN0tWMVJDdDZGNFdXP21wckZNS1ttajd6OFwpelZzOixSRVw/eHVTZjZTOUY9dERRMEg3QCltUDl+cGFffjt7YE9zV2FtOmduL05CdEYsOCg3ODZdQW1+eUhfWHopOTQ0K29eM0BhQGJJLj8sOGM6azMtWisoYUR7MmVZMG5aV10qZEd9eWBGa0N0YEt5KjJMdkxJTFd4aTZYYWpaazpyQXB0N25CdDN1NzNDdDlbTV9PeDpZOkU6OWlZe25BTWxqM1MsQjY5djRUR1Y3SUMsblMsVzhCLUl8QkxTMSoyWWo0QXB+a2dYT3pxOF80XnkrNVM/cHg1NHFrRzJoYlJKOUZAYFI1clBtNV5hNlleKnA5SXliKE1ATzdvMVA1aUdQcD8zRWo/UjhvWSl1NDgoYEdnQWBbW0ozaUd7ODp4aDRbUTRsSmpBVXQ5XVx8W21fbl8yV3NxfkVCVmV1MmoxcUFsM3xIL2pFTTs5cEVpOnhHNUlEMWI9NWo4SlRcTGcvNX1ic0FkZCtZVTFzLjI1KGZOd0JrMDBgWWdwMFhlUWtWUnNlZ05qXXt4MD0wSjZlOGA3aXFGNF1XTDtpTjtIV0BIZy04aXZ6akNKQmZlLVxqLHhAOTJZRE04K15WMkV5NnJmdHJneXpDZTRielFwX3FPVGxxO01dclBwSmNBQ0F7Qld7SHU1OjNxPWRrOX5Id0FWQ1RPNDNvZjp0d0QyX0BOVWlNWU41S3FIfDhiUVxQOVEoX0w5aDowejZnSlVTWHpmd3E5VlxTay4/Pz0qV0pvejo4Y3J6fkt9cDpgKFdsflY1ZFJjR2koYmhcMXU4Ylk0Q2ZGXDE5VjJqVnpBUWF1bjNxVWkpaGB9NSt4ckFCQG8uK0MxeW1hWFRgNUVsXmpCLFJ9cFZ0fkZ5QmIoUWFyQ0I6WmdZKjg6NWcyanVMXllFUXlKRUh7VmU1Q2MscE56dDZ2d2I7KXd2LVNfRUd2MEZcbH15aUFfeShRfjZmTn43ZntEO29KS1Y7RytVdzlCL2p4UlBub1pDLShUNnBbKjM4YWFzWHBjd2oyWGo0MUNybDdbSCopYn4tLFp8XUM/XltFXlU4Zy9OK0hQTCphemVGVDBcWCotdzJNUV49ajNtazM2YnM6dkFSQ3MxXEVLU21deUYyRT1EVys4LEZEeGpLKVs9T105bkx2PzM1ZmQ2YWFRXGdUNTY2KTB6aEdWLWNYKl5bcjlda3xVbFl9U2hTVGhWcWR1NGp3SWtgXys9ZTZmKz06YXxHKEpbMDp7WjhBNjdMNnFaXSktL3R0YlVeckt6TDdRb3VCX1ZLaH1jUH5Ub0BTLD9gM2dRb1IwKTlSUFl8Km97LVY6S3JMKkx3fEo/MVVKan5ZdmIreUplPypcXzRaOmhQOVdxMmAoOy17eF1bXGtYbER9KjJeO312dGdZM0syanZiNURuQjZLWC9qLHI0aVBWO1hBSF0xdElTRF8ubiw2QF9IYWYrLWxLXn19U1YtV0gxYTF1aExMZ0RdMml4X01wRypOXjdUSywpRGRZQSpCW3hQPXB+cXteKUdZTFtzWk5lMzIwczFzLkZue2BmXztXUm89N0lkVWYtPXRoY3sucW5ydHFXKz1wWGViZC8vUm42dmRLKFd4UEhaMHhDXzU6bDVzVmlqNGNEbUpnS2xfLjkzeS1xUSpOVGlAZE5ZM1JUQW1IblpRcD1AM0B4UFFXYUosW045WUJRfHtEMl9MeVFXSWBhNlBGMWRYMWJibHRVQEQoSFZwUEh8am58ZlczKUNET3w0e1RNLit8P1VvcXVWT3F5WkZxQXdkOzFvMy5eVypgdT9IdHpsOEs3K3RwKUYwaE8xbX5YRlhjW31Fdn1OYC4qbUt9Y2Y9QHFBdUVeOGMqNjBAcFdbfDNzM35yUVEucU55ZEZ1X05cOzhnUmB5YXlxelNDN1hwLGJPMFZ+VVkrbmdUPUBmSDhne1Zca0hSQDQtSVdDYnF6ZEM7YzcxOWFbXlc/Li5jXUY0W1xdO2dDdTRGRHswLXhrLWEtZDMxdjc/TD9KeGBTbzY7QEhrPyk1RVtuYUlDamNsW145WzhNWHVePz1pQVxGOToueklydG0oNj9PemhYKDlJM11vYXJBZD16XH19dmVWaC9GY29dQGQ/a0YyKEFTQmFmc3YtYzBmM0tEZE59Ki17TDpUZ3RAMXFZeztZXXhmWDcwUGI4PTBtY0IqLS9odnRNXTldRmJfR0kxWTlQVX1rOnp0NFRPQEV+QFtaLi9hRms7VC1WNzg7a0FLYC0xQUZSbStGRG5Ic0dHOWRCTnFyVUdiQmZRe15dK2tTcSxRTEkxdU1lfFlsP3U2cE5wbENLSDYpXVIvY11ofVhGKXBnc3FxcGxaVXAtdio9WF5BalFbbntXKXhCRVEsazs9dUU5e3Zub2lzYGstVUczTVkzWVt7d202SE8pdzM6LURPYWlKY2M3Z0NBai1laUhBQXZ5ZltLQGpaOm56Zix1dXBCRnNIKkR9czlRamppTEFIcTBEd1M9M1A2SFlTME0rTVxAYUVuW15FSHNbMEwwREF1Yml1RV5LR1VINjotdEpsYjRuYm1PaF5UNn46XzEweWNNbm0oM107RUFZN05WZlcxL1ppQEtQZXZMLThNZSl9XkBVcGFmfD9gYmFWNmU7Tn0pX09cfmJlZGFIRXZiWXBFSC1pdGNYMGV0fXtwOWYtU2NEZWVDQUIzTkJZLWYpa1kzM3R6WHItdFZ7bEN+SUxjKytBWktPMUd4K1B5Rl5HdW1SX1hjMVQ3NUxuezIuV2pIXyotMG81KV4/bG9kLzNcZGdTUnF7cFI5fFgpZz1yWGRdYnIoQDJwYj9Gfjh8OVxidUhdKHs3TyhGRHZDYUVoWl9ZYG9MQ35BNkZEVUdtOm11XjBxMTNlK2V1KSxKQWA9YlNdcmJtRikpL0BwPV5dTmBbb1EuaXtsZzsyVDhvXGZAZ3gvNHk2XnQqUGB0eihEXVNkZ29hamAqXG0vP3Q2UUV0OGNMdHg4VXhFNjNVWTJweFc9aihxTTFMVF9iKEJsXWpdL1dPejtwXEdUWV5dSkY7Lkw3PTQqdms2WC9+Z1h4Lko2aGpednszK1JZQ0R7On5tT1h4cThgdHVOMWBkSD9JMzRYdjB7anthaS9FeTRBRHsqb0ZkO3ZBbHlXKTpYSW9OR0BrdVRQO1FeZCtdWyxIV2MqdWlQcDJbTndFQF99RmFOO3NkLmRnLXFYTUttN0d7NW4wLTNBYEx3OFxGfmY4ZTdOWD9pc20oKEM9T3J4dTlpZEBSdHAyMHkrKjZaQ2Fxem1hUlpuais1fUg7ZF81OkZ1W1xSRVcsN2oqKS89TkddWXJyL0svOHUrZy1VYzp3VC0zfitQZ2RTcn1jP2UzXm4pPURBfWBTTm84al5pSGVTPUtHZmxlOkNwUXs4ck5LLE12WUdkSzQ6YkZ1bl5mLDtiLnB9XW9Eail8Y2xcPzJHMmUrUio2YmdAfVt7WTtXTFB3O3w2PTc9LEt5MD18ZktkRG96MVR4UzcyOlhCMFFcbHkreH5XZ1VqZllLdENQey5Ga0FseFxHX2VIdE5CNm85UGkoNFM3N0tTR2A5NkgxKHg3WTlTN1tzSlUqOG5ISVB0eVlEa0ptPX1ObzpCZl83VVU6OlFzL1Q0WyxZMzFnLGlNNGZ+UGspaTdGM31GbH46elR3KGQwY0FeWU1wNWVzQCx6WkgxOXV7T2pUKXVMenlMdnMzTihEUzpfdV1BY3pvLjh8S29PTjNNTTBWWW5gTV10LV9BdjtOdGpbdz96ZWZ0d0VuTlFBMVxkXlNqTm0xbnZNVjFgUnNpPTU5MWxCalJQdmwwNk5PWShjUD19P1IrWktQS2pmdWdJRVUsMjQxfV15eUQxRWtYLGZpcCpVRXopQ3EzOjlPR1dDUFtoeDtxTUJEOXNYQkRXMTszKnwsTGJiLy5FK2Z7aUVpQFwxLjBeV1NmQ01TO3guXHk5NndhaTd+KDlMcFFgdVJnfGhGLGtHTnpkODBhcGg9U09mMDp9KWp5d1tMbCxLYXxXbWJ8d35YUUhuXXZ3KGUpQzo7VDM7REF6Z0hjTVFROjR4Zyw2Y2lnUTJaUVNCeS5EOCpvezdqZTdKYXtLez9+KEE6TVVGT1hVbCxQZmlOdmRkZU9fKEZuTi5xVG0sSzNzXUQyMVhLfE1lYUx+YnJ5OEZoVHxhfHJRZ2UtPyxaeVNaVX1NYVRgT21qQ0ZVN0FRNjI0dVkzdy5mNkN9SlUzaHdLNH1ke2lZaVp2Xj9hRjM9LVVdVjtbcnl4Qy9zdF1YYlRxRUBxME1BSGU0bD8/KFBuXzV4KmdwMUtrcTkzNnMpYklDRHRpRTRyMCpyQkpkX3hHO2JGUmQwXzReLnhaO1VdKnw6LHN2STtJZ0dNQDl3KUc2YjleSHlFNV1wUzAwaDs/Vl9xVXVqNEJSSD9NTEBsSnZuRGJbN18pQW9mfllQYW8oUExjZjE6R15Sam1PZ3ZTXDJvOWY9NE9AU2VIcjMvQmRgR1B7PU9efmtBN1gxSnkodF01LilGOy4vYXI2ZVx6cDQsYTM7SV41K2VLalVCWERESzAwLyoudkJsO2M5QltrbzFNc2ovKHVpa0BdYWAyLEhdYTF9TlhVN3FFVjlWLzhgYnl9alV9QjlSdX5MNkpyUyhASCpnemNEW34uZVgwUHJGe2pSd1BvRFd8RChdNVZebkJ8bz09SDo4Z2FUOS09TE0peWIsQ30/aHZhd2tyX2l9eWxaQEk5ZU17Z04qa31USl90OnJNT0dUdnhjWzN7P1xzSHVnclQsXjRfU3BXX196ai5lRXZVU3VuQXJEbSlpOHhMSHA1SlU9b2VIR1pwV143RFBfTEY0Yj9VXy9xRU9wblMsOU15LEEtRUVDdFNZQTFdSipOTEg0Q1dDfXNONHh6TnZ0XF5FYThhM3prd1BoNXI9NWhWLlpNWypCc3Z2Tl5cX2o9Xzt1Yk5MVFAyY3phZVlbQ3M1UWpzdG19bXJJLHcqT081aWtzUkBycDhKSnRzLTg9RlJdUV97LU1KRG4/a29wYzY7cVoyL0ZEc1VWLmA4N0l7ZU8xe1p3Kl8wKGJPW3o7TGMxaXs7R05vRltwd1pea1dFZFE0c103a3I3OGp9Tz1TRkY3YWs7KCpaU3lNZzREZEJSWXQwKzBmMD10TlZVeTBpOmx9QFpJWTN5a1E9VkdMYmE6KHYyOz9JWUFSbClSWzsxXHwsejFbemhYaUBAN1VhRCoyNktIQSsycChzWVRHYHJTc1wvL2RqYSw1bWxbRCx4bmpxNXZDOHM5S2ZiMW5yX1V1SStxUmMzMnxCZGpsLy1UYjlUWHJsX089N2lsKEMsQHEzQDJydGlYX2VCLihqLUs2fE52QWJ6fHdfK005aGtSeUVdOGl9VzBcZGtrZVMsLHA4TGMuRmZldVVMVHA5LV5TckVeTXhtTy8sVT82c09AblliW1JoMkV+TDJ6amUpcWNQbTkwdFdiUGUpUi9zN3F3b0NtekpzZG9wbmp7VFZ3MkV0dlVzbEpgL2xLQTlldFopP2w7fVxGfVVxdlYtND1OP0tGQCp7UEUxVHl7TFY0bStcXj86S3hRYHZLeDhFQDt0Uyl1cmpNQXVRWTNZQG8vfV4oXztPbnw0TndyZTgxLHJ+MVxaRy1rXnF0Q3llPzt+LFtMUnY0b19gNzhFR3hdNEdbMzZSc2Aufl8yY19Pdz1+Zl5YKDlrRkxUOXV0VGR9disoaWpQOFw/e2V8QWxDZVovUWNDMDtcXFplO01cXD0wRztJT1BAK0hYfnBZSGF9bjhPQk9HfD0odDItU2NockF7XG0oRVBIcnEzZH4zaUt1TzhPMkg4eVVzMUtDY00yXWM6VF5QcWlPWmM5Zl5qKlUvTnFJbXd+d1xeXnhKRUtzQGVoQm9hKmRgW1NfXGs5VThyY1x2eE1HO2xybG1GX0ArdU9tTmRRbWliSixkSS5CPzM7WjBBWWwqRilrP1FzbWFjbio4L1lRdmNgLnN2U1x8X3F1TkMvTmpdZUJIdjd0YW0zanE5W1BUYUxYYVVrUi0zMzVmR3VPSjtKaXcsR14uLURWMWdSKGsrOk1OP0c6Zit0WHpgeHJtNEVEKzVObnMvb19mYFFXX0BnSyhvfVhQSlJ7QFVeL0czRVk/Ry4yKHBKPWFxQ1lKMDE9SE1taDErdDYuLT8xZzI0QCkpQnlfOChgb3RWL3M1Wk9gRzc3eWdUMkUyTDFwLm8tOmJIVy9abXY4PUxPSEBqSEAxM1RpP2FYLzNkVXddOUJrYTlNZD02KWpSeXFTV2N5MitkXX1FUHVRVzsqPUBjXmtAKF1SMDI7QngpVnl8RzNfXHI0OWVxdjZOKkR0KVlmcXU0TTs0dCtTMUYteU47XnZOQithWzZjfUk1aipcLCo1WFxcMHZpcllaUFp7S2I5OnxbMjh3LGBMRWZCXDsrWWBUVmBxYiluVXVNOGdRPTBudTBuMGA2N0BhcTh4Xn4uLW45a0l8WGhCTGkqVzReNl5ZTFsvYF1feUMrMnU4d3xpUz1oNCp5cWcyQWx6a3hjOVxMSTAvWTdUTVpQSXFZbEBvQ1o4U3ZAejsrZlk9OExUcDUyNW1ONGBfUXdWfFR5cWsyTmcxV1l1fnctcUI7cUBgYWxgXkYtb3ldZ1l5fChJKmZ3OGw4ZSlOeXtPNi0tNVRdbHBzcGxwZ25iLm8tKy40UjNlZlE5filSZkM0U2xmMl5PXXFneEV6aW9rezZveFNnNnAyP0VseUwyNkJyOnZsSVZWNU8tKjJ7OShEWFs7aX5Da080VFVwRixnNlVwfTNhVkRCTF86ZVZ0V2I7e1JFZlB1YFU6OzFQUmxKcnA1bEtOLENNPXc6LStVQWA7fnx2ZWp2N2BWQWxZYzVwNSp0bTFYLjJGUVZ2eVVXQns9M2NANXF9NjpSb3xTW3dSXFpmWnNDekcvUi1WazpbL1xzMUFlcFdSVDRNbUAyOlFlOHJ2ZCwpNk9ZKmUtT3lfe15OcV82QXFrWm87RipCQ11bUEY/VDZvVjVoREx0fW9aKkZ2UWxYR2hGdFssOGZnQVRad0BifHZ0V058Q0F6UForaGNsTD9xKUF3ZTZkeTpeX1xDK0FhKVFmNzh0YlJWU3cyUVhhRVN1dVlIUVxbclRbP2NSWXpsK1dxL2FCUnR0Sl5ELEt6WT8ufC1+SCtgTS1rTENSTzZANHdbR040UThuV3E9Kzo5YipbXUUxazBXQjpkVitoaUYwX2dyOEIwPXBDNFxHLU1IdT1Bd34zXGhoVD0rXigrZXpMd3AvWTg3UzFKW0hSe2VDLTpDLz14XVdhOGcsLmlvZW0oOEQtKyhWTyl3R1NmfSstTlQzdE9NW0BDbmYrZz95R1hza3s6NkVoP2pfME9QQXA0Ul1YXHw7WFBfK1M9fjgxUlplcUt+akRIUDsrTXlRWkF7MjJjbUlHXVlZUkFGZkhGZGl0MV5kdD93a2MpLkpiUEZRSi4sOi46fGB0Q3NwLyl5W25FLXMrZ2B0SHUzREtWRVlaNkhTMk8tSHc5LGddQEpYSHgsTTVJN1d3P3tlXWtkSGZJS28rdEtlNSlxcXo/RXE2TjJuQXExXDJUTGIufS9XeS8vWnRPV3kwXi8uM2gzbW9wemQ/YnVZUGM4Xlg6V0kvbVU9K3JsVWMqdE9aX0t0YEhNckAqb3ZnWGkwRTZ6LjFjNTNaKmxdNld1bTM2VnN9WVRceWBVX0dYTlU0OkhYWWtUO0suPV1cakQ4UDlsL10rcX1sRy1gcGZGZHQ3ZVFzYTMoaS86RmplWntFc1IoPy0rRCxWcikoSUB2LGc/Wl1rSmkrbUxFdEA1QGAxZlszZHgsTkZCNGYsQTt3aWZBe18uXTtca0FyLFhBaXB3OWV6TXliRDpzY2xDWytDMDdMdGNfZzR2Wlt0cGV6e0luQmRgT013ZWUsTFROcUBFTGNlMkl2RTUuaztLez8wdzp4fGR4REBUalEqKnpbRFF3LXN9KS9hMm90ZGFwMXg9a1R0aFJrSzRLXm5YK01GRXNCVWBMYXxmbXxURFJ1aCpEW0VkQnlUfXB0K2RNV1FNKWVlWzpbXGAxcl1AL3RNM3FTa1Uxe2QqdGtjWlRKXzVoWWZYai5IbFhGX0BNZ2ZfbENNdSosWGwtOW9CVjdgYlltWGBPQ0laKCxNQWhZeSk7MF1oV1BfPVhgdXpwP1l4dDNNOi5pVClnSFVEO3xCdXpsbjU6LHFkSnJJOnJEOHBifGouQmxWPTtuLnJQaSp1VD9wSHpsWj86X1kqPTdnREUufXFcT2U4RjhgLWhiUkNwX1dqa1FwXHVoRV5AT0owNz82SGNJLVpeeFg0PVRMMn5PeypXe1lCUHh6SGFPQzheRy1HdkwvUV1hXS0uVnwzMG1gRUJIXnNpMHdUcVRWXTcwLEJMWC4zTkVVaHpBYFtJMk50L31HME9JUldreFYwO2g9KkJ+W3dYaWEtaTVgNlxhLkE/RzZVUn06SS1cfGRsXkFrZ0kyfjE0enQvY3ZgMF1LX3c7OmlNcH1ZK1pSSlBDR3Z2TStybDNQeXNvaUZje0cpTTkzOWVgYntkSWVsUWJxQjEtYlpzdjV0W3lUSy9mNmV5WVw9ODhgUWFIWHdrYUdHd2hcbF1QZENgaENkWkMwPT11MXtMfUIuX0Y5fXNMSElFUmBTbjdoY0ZWQz83KmRRbFRLVG9uN21qTkhYej04VjRFVHdOQ2ptMX0rcllycX50QjRqZntyTllhRzUvTkgzXFlnc3U3c1xwUmVfKD9EUileeVN8LFBzeTd8O0w3dG1fbWZsV1dnVWgxOH5Bd3lERUJjTHJbM1tPKjpaQy5eSzR3ZTtZY3pJbn1EMn5rOUtfZ2oqKT92W05ndDRleFtCSGY5XzR5VlpALkxpYy1fbUxjQj8reXgteTFVMzR5XTUpe1wuXlNeWFp2TWFqME5cY1NmaDVyazM7b01QVV1pS192TVRnMFF6NDpeXnJhOzNFdyw5UFRhM0Q/M2RuaHpffTsuZillfVw3RWR0SC9VcE16flo0amopfWEyan0ubks7R2c3KjJye3RqX1hbSUNCP206SF98d1s2bDNtOHksL3gydSkrX3hjOmFHNTIoP0hVYU9ZfDVPdnNcXnZIPW8pWVZsYVVhXElLMmtiKit+TDouSGBXRUhbYHREOmpaMCpOQEpYYDhXXE09VDYzP2hsY1wwLS52OWFwKzltfClkb29jQ21CXjh6KllGdUIuQ1BjNXVKZ09TNWVlUlkqUys6dVdcMCx1Wk5naGg7d3F5SnJzPVNcSmlddF83OHhgakdoaz86KF14WjE3YS5CKmxBW3k6UHg5Vkh5TyllZnU0QT1XZXgyP2loUHZwc0R8eEQ/K1BNZW5NfGdFQU04YVttLFdjTE5yV3RFNlo3P1Rbc09yS3Z4WWg6ZFRGb0FGOiljcFI3Vk4oT2NLT0cxeitSN3FPeldAXlh0Tk0pU0tsYXlTKDR4SHQ9WjNiP2FDXHJPMGh0LGs/alFsXWZYaGYqdEEofGd4RjBPdVgyL3tQbkNRdjBJUlA/cGpMQHpUcVFBbXRGbEdLaUFILmlCdThMW2BoY3xnV1FZeGZMZDg/YTlqX3xZK1FaU1RYKWsrdEowOjV4XjUsfXtoVVtdbEtXP05vNEhefF1QamVpeGNdZ0pkTVlQLXNPfSgwenJ0SmpoXlxEaEZeYytHMDkuMEpEXnt0U15CcTEpZFFoeHVpVD1CMk1nLng/OCtINUh7flg9SVx4VCtGN3YpWjRiKG5wVDJ3fHhQXUpvZGZnZEV7eUgwQVh8em43QChtbXxVckoxSDt7XDI7YjgyTTR8L0FDOG8sdEU1ZHteNjp3Z1AsL1dXQyg6dUZGeCl6S2t7fU84ZkctcXdqelFXW0dqRjZfczg0XXxRbTAoLCxWSzRmbDF1YHZAZkJYcFdkLXZtMDphSUMxLjBvczdfRDdbRSw9RmFYVkh5dGF+NkEuWTBiNmJgZlN2QzY7SXE4W0psQXRBekVRPTcyemRNSyhANFtnV1VkfjZDWlptUWN1Y1EsfHNxYjg6UkxWTz1CYEBjUkFCW1I7SXNrS2F7VVJMO31iZFtxKnB9cF1ubSxyWEo9VEt2dXRGczhhXGFXQF5VYF5FPXA9R0dASFJNLG5dfk1RV21FVDA4KjY6MUUwOVZdSmRXXWNrcjh1KDRKL2o5YnxTUEoteUEoQ242ZnI4Ni5heGoubi1xOnBIYE8xVnlybkZkaDszb3FcQzJ3OUJsR30qfXV4KX43aGpUXUFDRjRsYVowRWZbQ21WUHEuV0ZoSDN5cWIrYGptLnluKDJ6XG5pLDt9dW04OFdRZXNKQ1Z7WCopflFaXGFCUWVmenlTeDkqdnN2fik0QX0rLmh2Q3FNfHY7XWxJVHtPOyg0TlJCXXtEMGRZLGk6LnN6MCs1R2hQVEVgTnc1Qk45R2dFc3s4dHorUHJ0OFBlXzZPenstMlZySDtvYzZVS2teUVZsZX1paGBYZS86RipReF9xb3NDXHU2OzBbal53K3tHaVAuU1ouLyp8bSlwLCp+WkcsVzd5PXxffGlkVTVTX3JweEsyN114YER0PURjenk5NmtRSXRubFt4T3g5cG1ANV1JZGJZSkleUTlaQDN+M19FbF8vXGN1Mm5mbkdqeW9TazU4bE5CNnp7ZlB8cGFpMl5OXXNXbDYqUGVeQTptVG8/R3hiYHs5XHl1aW59YFRdcyx1bVRHR10sbl9hSmVST2NqNml9NmE7Y1FNKlpQMC90MlNyLkd7XEJEWF9jeHJXfTMwLXo9bkRybFFefj9wZ2U0dFlqL35PSjMxU0FCZHJFQ0FsNmk1UkpHUXl4ez0/Rm9UM3E0K3NpYG1wNDN4R15dUUwsKjM5NWkqU3tfTChAQ2RdM0I1Nik6fDt1em9Vd3N3dEtcNzh6bzFqeUZ8SGB7MmQrVU53YGBlNkQyQTpFazNmVkJpLmpcSXlHUHZtLGFWT2FoeCpIW3pOYzBxc2JvLy8wbl9KWWpmSkIxNVI2QjhjYUNbXDhLX0lfVWBiSzo1c3hHKy83L3xhSE9iMUVKK1hdMix6XTRqVlApT3VMayp+RVIwZTg2VylFWmlSLVRaeUN4c1tPbjluKkNkcFBRcHY3QzQqYmk2ZGAsXXJqfipaUEdGZFJSYm9JNHxGfFw5U2x3SzNwRUkrfDRgZjptPXNNTVBRNll5MUZ2VitaVVQoey4xPTpzVjcrMjprUlVtRTt6eVdRSjN4b0RMPzR6WWhQU3pHdHtmZXBgSGUwYkJ6fndlbEdmanp0KipsNGs7eTFhYVdlVV5CMnYsai5GWGxAZUs1MEY4TS80d346XTBtNUlsZDJvaTpIMVY6bSozY09XU3hiZWBHPV5lPV5TUC1xRmcwc2UtdlBxM2EuLmpCQ0tnWkZDWEdmOHYpKzQ2MGx+Z3daYDhJZmgwbUd7Om1BODU3TnFreWJMQFl8MEd1KjUpTCtyd1MuNHxmW2RUTCozbkl5M0NRdWxYMD9vcE5aUHBYaldsb1tsLVpuMkQxOihnbE9WcUFCYG0tXzFbQGMrOGtWRUs1fXJkN0lOclE3Y25tODlQS0h6cUAyXntSV0wrd3dIOkxPcGlpdHd1QCo1KE0tZjk9N2RcZlhOLzUzWk9JVktiLU9zfkFzRDY1ZlcpSkVMUStybjIuPVEzUG9sKU05fGQxNVF4NGgrXGJzYDVuUUh9S0VNV351YGdOR2d6LU9RSWNXS0E2azhjKnA6N1BhbWVUdEkpVGdySC5SQltIenJ7Py5qRjk9WmooL1cuTTt3ZE8yLmlfRmRLcjNJQVBmSV1zcDg4S1EoT2tZZ2JpRlp4RTJacnxQKU8zU0I6YVMvbUN+eW9JdnwzKDh3Kl51P1o2ekkoY0hdRklqYD91KzFCSFBIUm1KWjtISG84aD1zVD1kUUlMZDtWSjoqbWlkPXQtOio/TzU9XD90OnBANTRdcmdDU29WRmBBU2VGLGIzK0A7dnFLODpMT2dsMDZyU3cuVVJBOn1+UU5NQ2ldTld8dFlYKj1xX2RzWjgtXmFiWkBLYV5FYml9azVESDR2T3VcYmlERTRsUUk2Uy8ybkFORHZfWm9UN3F7TntOdGIsYi9eKGlZS0MzWj9mNzRxT1tAfWphUWVBVElBMT1bSE5bKCs6MF4saCtXclpPVWwxWVkobC9cN3twUS81TUJ6QDBELVVobHUqZk4/PW1BcHAyfExMSnhLaGNWKXFWLWgoYEwvenx+elJHVkRKW0dtMHI5Ti0vUS82cWJgZk8qdT1LVWpeSjVbWHxiLUdGQ0JBMy9FcX05c0d2dzljeWNOQmBeW2YzOFM/OWR+RSp9KlgzL3E4P0hqUnhcLUQpTTBdNl5hZGg6dF1ESTVDZTtuSE1eQV5bUlNIcGM7d0B5LlZHQXQqUDstMD9CbX50YklKb1VoYmM4X2s1TV4ydX1MKzE3dUpgKWdAVUpXaDE/VHUvdHFMYGBqay94fl8sOkxGPy90S3RmKDVne3NJUFUyRS8tSVpPRmxPUC1HZn5ubi03akpKN1NcdHg/VXF8fWBcbWksaitWSnVDY2J9fEYsW1NjW3YrKVFwaylQd3Vwc3hOTi9TaD9VLVFybz9pSGlSLmp8WFsxWmtNcndORTAqWU97Ni1qZH1KemFxSV9NRnRPUnpcRmlKbDoofnZ2ME04YDZ3R3NLLUJISilsVFVEbl5wLk94NGxPQ0BCLTZCeS1rRGd1RmVxeHRmVVtlQEIuO3ExK3J6cFgwWitpdWJTX1FnKCxVKC9kQyphX2A5M11mKz0uK2JLQT1BdUxUcjBjZm9TY3lnaFAvLXV0L1orbmFPanlaNCw/fmUuLGVRZ0xjTEpMYGNdYEBlVUw6cUpTL1sxLDZDQ1ZTcVZRS0ZVZFVEej1kK1lqbFwtUFdFM3JBN3xIW1wofFh5ODVGY0pGUS80Wzs/dGgyMis/UF9EOGxQcCtHUVRsZ1JKSjFacDdufSh1VTRgQUhdK2srdH1FZGNLVWZqcGVTMmpWOXRjcVFuZkZHXE51TUBrKjRRS3JGZD9QQlU4LkFGYX1wVCpkdmlkMzVFYTtsLjY/YS5SYWpfaF1ZZi0vSnYvYStIelEvWEE4R35qQlBqe0prZzJwQixcVFIpYTR1Y2dZVUhATDJINkhoeTZPUSxsRilcbChAMV0wM25+LzVoVGVPM1ZsP2UzXkltci5STClRS3NaeXU6bkJDXnVieFZmOmowX0BqTDM4fTFzO05aTmFQfjZ8cCksOCswfndiSVJNWVJ2TFAyNzlHbmFCdHpERkpAVHZuYzhwcE8wKVA6cHVpRyxJbDd1Yk5CMVBgal9MLVlQclFNN3tCVylQWlFCQV8uL2ZcVXRWLV5ELjNMQVZRdCw1ZHRIMGdQXkI7QWFvXT01Sm8rfl5qU3FMdVhZVDtkM05gVz9UTzsxcl86fmpjLy8tTGUsbG9Hc05fUjgvX0hDaz9IKDJiKnxARXBtSCtNUzRRcE4wR2tzSD80QmYwLEx0Z3JcKG5ycmZUXlgpNEY6YkMyLENdcm5uSHpHMWMuKTBiRFxhQlhAbGBYZ2B2eXdSVzVxWlctWEF3bFhBVXJKOGdmNHMpXW9IY29SOztQcWcya0RoXnZwblU0bWwxWXlhbT1UMUVzfCxsP2ZlMkFsb1lRalp5Y0w/OjpqLWJMY3ZcOVA5UVZYMi4tKns/SmQyX31MfTZQX3dAbkRwa0tPZEg0RV0zXitSRSw6PXM/cklPS1Y4VW16ZU4qPWdvLXg7Ki53MnxbRl5DYVQzZW8reD86Z31LSH1rX20vaHd3fmw1VjRqVUsseW12MTNQYGNYLHZ+MWhLZE4tfGsuZTEzOVJTPUppRC4pRUs7Wl9+fkt2LjtAVVNDOExHS1ota2NBblRfMStqbWt0YGdkfUREWG1OWWl2KHdxc0ddV1FVbWZkM1Q6fl1IeXl4akA4dXNtL1loTlM4fmBsLzk/ZFdsR3F4VjNFXUNOa35JTGJiQkVhNGRhLEBQWnRJcj96XEp5cn5hVnl3eXljREMycmNeUUZdSEcqUTguO0BpSDtLbTJAaXd+MT8wdE02fDd2K1hKOGZ6OGpbVT1bd3Y0XHdSTlJSdj06RDZiNWR6dHFvKnF5aU4/LlRHW1p2cVB3RWlAT101Y291MDBfT3AvZywqPX1fdyk5YmxBelo7W3hdV3l9aE5tYGJOYXNDblpDXTZrck5FLVxrbTtydTM2MUdELig6WUcrOURFNjh3TzRTOXtWUnxhUFQ2Rz9LZHdYTnc0Q1tSU0A6aC1zZENdLDtXP1VBY0RmQ0ZEX04zMUkzQj1IR3wtUWszcWtWaUVHRXpuPUBPQk9gbHBpTk1RYEpefCgsakhcOzBTOjMwbEguY3k3Ni9kazlkMmlcSlZ6eVpiNll9LCtVYW14PXFXfWFcXT1vcWY0eUlGSy9afjQsKGlPTFB9RylHZ2VlOl8yfjFVfUBJbnxJRGlTL009MFhpMkxJeDB7a3l4dk1tQGMwMWsvLGZ0TVBXMkpfMmVMKn1wRi8tLEd2UFFVL3tCYXdYNUBDZWUxQ1lqKEFXY1IsQXFiP1MvOUYyTDJ5Rkg1ck9vLk0yfHhTTD01N0tLYVp5SCliO1dCKnZNM3Y9YTtMaUppNmosZk4wZUZAR1A6UHRKZTFUSj1MNXJ8UUd1UykxdDB5LFhOd3BtOTZORThUVVhhTjlkPU55SXl1cFE9bm9cUV5BeUBTVExCQnxBNWp0dm1FOV4uOVVRNzBee0V7WmNRe2ZjWnBMTGcvXCh2fHA0Kk5FPytmaSkyUERXY2hjcjh5UCx6e11dOH57WGc5fGp8XVdRfWdiaE4oRk5+Z310enpsdmcuckxWfXoxOnpDdXcyM15ZQEhbKD9AYnZnY1VFSGc6cEVpMlkre3MxdDNIKXc2KFtcPS80PWE9XzEvXWB1MjtvOWd9N3p0VFxJSFE6XmF1dj0/ZEBHWF0/c0Q/UCgoaWpLaUZGNjBKYXFARVAwOzJCTFYpcV8qZ240bFN+XUtJTC0vXjQ6WDJsOll2fkgublhSKHVKS0Y1bHliW1FcdENKQktRM2Q5Z3k3X2RccH5aMGJpdW5wNl9iXG5Lcmlkdmd1TF5ETitEVm8sVHsvUUFJZVZhRStSLVJ9MzdJXS4sNEB6bnFqfkZ9Ryh2XGxeV2xxP15VTFJzakFnL2EzOC5vNnRgS1lvZy1zZE02QGhWajV+ckxMY2otNHlie1ZPbHVwSGR6c2U9YyxFQV5gaWdzQ2A3VUtPMztASDYuQC17bXhkbEhAdFlAMH0qKi1gbzJqOF5zVEZ9QXE5WVR5LmVuRj1BLE1hVn1TLX5ofi1+PzVPRjs9O0RAVzZkNkQydUU0QG1neGBWP2FrTmk0eHRUeVBHU242QEBPcXFYLW9qNTlMUm0xaGgweyk2SFE2XEJ5eGZVOFh8eSpgdC46d2NiZ0sxcmNub3JcNENTOnlHZVhUSkBXK3ZDYGFITzlzUWdtXVtRYVBaWDR9LF1WLHl1UnZMMms6a0t2WWRkelx2K0J6W0lEYTtZT3VHP1dIbG1JP1NyTDJweV1tTysuTix3MU4tP0xHWy41ZUFRb1s7YXVRYEtESTFjREN2Zj9QQFxaUytqbnZaZ1M3RnVAeGI4NWtCclkyKV9BQE5dXVZsYnozWzp7SGMsbFooW24zeVdYY2s/V04xVnxTVE1kVmktTG06TW96XC9OQUp5ZXpcNVwxKVBNK10vKChKLHhJMnM6eD1dcy92Y0FtYXxCOy1bMSphdy0vTmV8V0I5amBlK3NpcGhIdmcseGBnYilzZkYyYFo5LWZXO2dreWhaTD9LQGspOFIwemwyL2IsPS03NWBXMixxSkRQTFFIfT1DXCo/aCpkW3k1PUUoZ3EpYlZcMkFAZktLZE5fWypZck5oQDdQb189OUBrb0MvLixjPWB9Ynx1NmY4NnhLeVc7Lz8pdT1vc3U7SGc0eylDXUlebldxcUB0b3JfNCt4djAtYXBzL3V5LGNWS0hBP2RbUmUwR0ZNemF6MjgqczlAbyx1RUYuLEZVTl5wNSw6ZVguczJ2KSxRZS9xVFB+W1xheFErKVFFekA6R2wzR0RYREVePWdrKntrUEphL3FTbXdvNH5fdHZ2Wkc3P29fUVwzKGRVMmBGfGluRHZwO1ZzOER1dHRZXk5OdHtuNEdLdHlUVSlzZndEV1BjSWVNbFxWSkwsKitnOTtkVWQ1blJ5SmJCY3JJVjVLVVpwSlZyKHMqbUJTTzdCYzdNUz9CZzgoOEFaOElnLTppa0cydWpefT1LOU1ITTZNdjc4bGc9cU1raXo2P0xuV29FRDttSEhNOXNTQStJUn5vMEl3YGJpNVpYWTVaZy95RmBWPzZXX1tWQS8uQVhtWkYuS1x4cGZNcltje1N4aEdOVWJTZF4yc1FsWEJFKSxbSVIxM1pFTUJ3VE9KWUgpTVZeeENnL2pSTmVzeTYvWFtXQTk1TERBXVdRVDteelJLcTosUjViWlQqX1NNfi18cHBQN3l2bHtyfnBDLDZzLlRFUVwuX2ZMW3d7MmBAe2k2YX5JZXxbfmZJaHN8T1dCZlNhUG5mflh2WWNtKF9aKXV+KzBoUDdSUih3UVt8RzNhMyxjRzdjKTliQ0IwKDgoPVhfKkdramh7YTFVSV5NZE9PfFlWdTVadmdOVjBmWm9qV0lZXncuOGMpXntgYVouKllnWFR8dn4tQjF1NWN6dUYyS0Z6ZWY2d1tlb0llT3VkK1x7XzNHdFRJVC9kLTQrLU9rfH5IYGxWYU1eWU9mbFZyTjZUVS9xTVtWYjQ/YjBRWixVNzl8KWwrYnVbOz86a3t6emxvWC9CS1pTa2xEUDd1bkg4VVFcYTRCYzlKQ2NpRy5tbC01ZnF+Xkh6eFp9NSsoV2ZLej92amQ2cVR0OC93fipnbGVeQWJ1dClYdysyekJFYXs9ckpeKUNRb3ExM3pza1Vuc2h2YDFpTjdAQy8rLixacytbMExxXlV+dHxRRVpya0dzK1dEbGZFMFlHOUxAfTU9OXh+R1swYmc4VkFIMmFxNXk3MWdgTy0pN1otZE5LMDF8V2k4dlVFeGlUVzBFK0JeN1xOfVRBV3FQRVJQdmtwZ3BfNFxaLHJ6fjVDYWlpVVM9SmBWaEVsN2tzdGl2bVs1Vip4ekBueXFyNUR7aDRtYzJqTEFNSClkKE9USS9kfldyTDRQWjNxODs1Uk9KaihCQz02O3dBQCszSUZ1fFp2VklsMG5MZC0xSDJOZUxlUFZBOzVlXEdILGw1eDZoKV5AfHZaSC9HcGQ4elNxbGZUMlZhfUwqQzgydFhzUE5+NjRaa3xBYXBOeXNgdHBfdjpWPVw/TCpuUkJLMkJffUxpWTU6T3F9ZzA7Y1c3SEtpfHJJTkIwcmZIWlpeNDpJc2ozbDVtO20oNWdXUylHZGxAfEs4Qj91fWtTVVcxOWE3VDBCQ31OdWdwYUt9Ynt2c1dXPyh6WDI4UUxZQUd4Nj96anR7ZClhVDFSMXppKWA3MnlWX3wybUpqXV1ZYDc3Z0U9WF9cOz1rW1VsK3RhRHI3Yj9RYy1oNmUrUEBiazZ0KzF5bUllVTVXZGRnNl9vTT9LelpgOjUqMmhMTUdveT93Tj1hU2wuSSgsY0RZcmk0YU4uQXFtWldqXFo3fEdtNF5gNC4xP3wxY3R4KEs6KTFvXCxcPTApa1BGMF06b006Ukt9dlpXXi5zbytfODZvdEdtOVxdQHIwMjBNN0N6anx9OV5TZDUrZFlBbmVfK184YUMqU3wrNnp1U2tuci8rYEhmLEdGdnpZcVVwcSpWcDtqUjZaY3Q6PWFCSnIxaFdBaXpnQkVVSzgrc3ZaWzZOTX5YQzBANTcrQTUpZ2dfQlFGX2N7eUFGP2tGSHZzS1AybGNsO1JWYiosZF4xTSgrQjlvRipPNUNNTHhmalZWbXFEKUdFWVxpa2t2antAfnRZMDRhO2VSbX5CcEM2R01xRWFTaGB5V2tWaEtbZ2FITlROP00qOig/dX5Pc2s4fm9qcjtJSF80OFVDQT90bTdoMFhAblN7W1dhSGA6Qnp0Qkw0MVhUK1RWaVpeXl9MNFoyYngzbnEyWVBFL1N2cl9zdEc1XWRZXzVBZjF3T2BcRHNqKCpIMz06fEBOamIzQU1BXDlEeDMqUThRKVNidFNDSEo7Wj9kdjFfNUFASkBOKSxdN0JoPU5BYUpGc2tnYEliLVd+X3Vxc3BaaTpGMUB0LH5+Smg1OWNoR1BXcjc3K3pBNnxmc3RzXHksX1x2UjRFV0xJTTdkTHFEVk9qUDE5MjR7X1JMOnBARis9OVY1MDc9aGk2X05sYXR0ZkEpOzJwbE0wXjI3Vmc5algwKFBTVDo6X2lBKTZBYFp0Ryg0Tkc/U3ZBOHE5PzczNG1TOS1Ma0l9YSxBTlhrRy86QVE5M298V3J1TTg1c0dpWSthRnxPOkBQTFp4dkp3VytkQltPTkV5S0BQWHB7eHhsaThqXV5GbH12eWo/LXdVTWRBQCx2b3hvRVZfcG16aHFQYzZWb0B6dkQrK0lMTmt6YkJfNk8wV2EzTjNNbHdKcDNzZCkrMk8qdHkwZC1sQzJHNTl7OF8zOipBTzVtMC5XfEZRVy51M31dbm5oOVxybCpURlB7OWt9QkdcTC9Xb08xVlB5LmtHN3trV0F0M2c7KHUtXW47ZHd7VUpcLis3e05TRGtjcWFqKXdzej83bTE1L3xkZEJHcjFoUkt3Oy9+Tyx8cm11OTsrNmBhUkp1aXlCN2hFOGM0LVVIRitQfFM4aW8uS0t1bi41TGVXUng/WUQ6dlNNREFlU0JaTEBxdkZNLSp3NmU1Qi9aN3xXbDt0Qio/ZFMuN11dKTpPYU5jQExKNStEcVBIMlM7a2AvMmc2Y2d1dWlLVFBrKW0ofXs6MmBgTXFuSms2MS8yMTpwNUx5XlJCYmB5YnZGMi9cOn1rbXdCfU5yOHZDZlgoYyhELElDNEJ4dCoyLi1BSWgpOlFyU1BSWVtrMVZ2QklUfDtqdzEuYG84YUlUQCtbS1tJVkNAMC5AXVZJeG5EM2pyKWM9WHNPfXtFUX1RRipMZHBlNW1fVEFVTH1ZLVtbbGlzVDdcVUJYYG5QLjRCSks7K1Q1MC5XMnRFRHIweXtaTVJHNWArd0pWblwzQz10N0NVK1lkVHg9Y3dgT00tb0N3SipTMG05Vk8wc21uaHZcLTdwRGVZLEx0Sk9bbilHT2spKFMuXlA2QzVyT2l9NGBsaGRWU2Z7YWIwLn0ucVJ6WUw4aT1dT2NbVGkrYFQwS2VVZU01OS18bFxtUDdtSlR3Nm5aL007XG5TR3ooRX4pfkhtOjZAVmEoRkNFVjpSUnlBL2RkcWtHRVwzSi1xUDhiQ3pLUi9gWko5fHlwal5VXzJBW1RrW0UwPTVHSVRca3V5MHRiY195Zl09VjdncUY1OSxSSTUvcDBnMDBYXVN5PTAoMV1GeFdbdTIqWF1SU0xnbn52SjQvOklsTlk/OH1xX0dROFluOFUvWlZ9X0BvWTtNOiteWk83OF50TGlJfVVEeS4yfk5GND1nWltbVXtDflJLb2tUYHlEYj8pcDpfXVN2cXIsQi93RHdaNHZnO28pYCtBTn54MTRCY2xsLz1XK194KV1fWixnXi5HLmYzZGZaVF9IaixiYGx1W3ZubUVddUl5ZWg9eGl1TTtfQjZiaEpRVW9Banx7fVBqTmYxS3FvTVw4S0NUKC42VUdiMU5scGpHYUZ6W01Wc0NWVW9eK3FzUktiNy5zaUNDQ3ZUVy5hXHZRKXR3ay5AZlp7QmBdfnp4WX49XUgtRHswbVYsfEhIdHB4UitEV2RVYnopSzheb2p7KnV8WUxEKT95YG5iYnxSdXJ6Q1Y2V2FyKGhyODVnSVU5KStsc1Jjc2JjcjNzNltda10zSWA/OTF7O0t4L1FlckE5XHQycy5DWFpXLFN7Xi9fUkc6NDlIMk0zTzdFenFNMjl8dTBOeFRPN3ApRGZgTitAantyQi1DXzlIVmBdYTJWcClMXEpYXVAqR2R6KnsvNlRoXElIQDA1dX50MUJPQ0dlbWBkKjdufix0b1FgOi5JWEFKNCpQS3JvUnE5NkhWakxwc0x0aG9xd0RIUmdGTmNYWylLSlZtckk7dE01VShObzg1Nm9jb314ZXZpbVZ9Tj1lTilDZ2hUO1IsfmtkTFUuWUxwb0tZNlJtaVY/fm46OndaaUV9VzRnaXhrRFFvaTs1ZlZWXzBqS31wOzBSLEorZ1JCdihUOGJYXWxAb3VjbnNBYmdZY0paK3JoOUlTeX13XndsdEhfOTJ1QnZTUTJjR2lDdmN4N3V4ezZ6Mzk3QkFHcnsofWFkS0U6RGxRWzVtdjE5LkdPNFd0SEh2ZFAtUVtZXnpOZGgzKTNRelhaMjJdMW8xdWIxU2ZKaXFdclhPNkY7X3wpUV1qRnRGLEI4K0tUYnB0YU9JNToqcU4uLXJpV289TT1tckdiQSpaX3FRWEEoZnt5M1JkTTQwKjRgaz9EdnF8MV5IVnRrblpdYFdURnZZYkkrNVRoek9ZZC9KSFR1TV9ocVlkW3stOjFzZkAxZGYxZ10weWxjOFZtNCl0VEdgQ3BPMi5XLUo1MH5ffEoqPWorLy9Ualoyb2VtKVJWO0hZV0JVcGZpbXssTW5HO2BAdnlIe3QwLjNbUltDYi99cFVXVlB+O3M6VypuTW1DXUl2T1dPLGJgX1JdLjBLRihzTWNRey1Ra1RJVn1AQVR2blw2LmVGc01TL0RkRVE3e01uSEAySDNBLGh+NFl6L2Jae0p6Sz8rSD95alhgMktEaUBpeXMsQXE0c0hZUlZ6cG9lOlJPZDY5bDYuLX5wRHpBRmQ4QlFyYS9PbkRWOk0wR1FIbD10ZzRLXGguNFxPfnRSK09aaWMoT1VuSnNeVW0pLDloaWxxVXNPVGZkWDY4LlRYSlVNbDlQVlUxfVZ2TDdcM09CN3JkOTt0eUFHaGVsfisuWV54dkluRlp5aUovRCxwdllWQ09hb3AtS3lNL15oRig0O3ZAfWQ9WSlFSnovMVE2SkUyNip0MFxuclVNTU9icFs2VCktbSlfSnI1cnowT1hJNTNNL1dpOElkWExxeio0ODpJXlhqVkFuV1ZNa2J0VTI3SFl9NnduYE5ycm1UYUNoN3AwejpBKWhEXk4xXilPYX1WeixaRVBxR2ZEP153Wnh8cU1+LDdHMC4vZFF3MXlrZVFuakdmVlhSc2FnWkdJcDljZ0E9OVRKZHlSfnNRU0hnbEo1bXh1KlpkbTd2XXJPNF1mbD98YW1FNmlaQSgrfndmNWdaUkFoKHRxKl5iWW5nOip8SGVJXWczbHo9YXQxZU87L3IrcDNhcS98KzI5YFl9RW91Y1lCa3c4KEJCSjp8WzRjXmI9aHosVSp+aExuKGldczgwXSpBSlo7ckppWllZdmF4VUZTcztcU05gMlpTSDV3RSlQbVUrNy4uaXxxYm14W2hcK2EwR1Z2Ki5tcXVJfk1wOmlRZkNhTmwqWkRFWV1xc0YvUk02WEE7aWxkVVJBbEw3LHlEKHlIMEAyRnZlfHM9anRPUWZWRWdjOFM9Q0srb0g5NlRxZ143ak1JYVZ+XVJAKjpYSGBtVWIqNz9ONX53LldOb3FweFBsVldKdHlibGdSYk87LGNZcENcSDp+ZWV5fmJSWFAya0JPRmkoKS53VVVCLGdlXGUsfDp3e0BqRkFeYHkqYHZBZT1GUk0tKUlfNU9+UmYpc25afTIxW0s9SlpYQENfSypLSEcyLjhdXkdIRlJZLz1Xe0Q3Q21HY2lCQFhYX3leOV50NG5eZ0dLV08pdCxjVkNpPWNrSnhVfEVIXUJtZywzXHBMaWc/T14xOEBbKDlSMH5QfEB3LEh2ZmhrMF1KLVB1QzA3SDVVdXVXdD10TTRcUGRTOUUrQXtqcz84RVJvT09SO298aW1LYkwqd31zS05kOExGZFl2Xj9yLG83fkJDfF1Eay5KMH1HYEEraS5ScWhdVTIwSkw/T0x1MC99VXQ9c1pBVV9yfVhWaGRSWzFydVF3Z1xyQWt8O0ZLZnBYKjtNWlddaXw2dmh6V2g1dzZPaCpxKldPcHVnK3x6PWtrREQqQkxGZ1M6SmkoSnRyY0k7QmdJQDlVSU14QT1PX25OKSxeeFF5Nm5eTm5XY3p7YylkaTZQa1NhRlNRe35uUT9yXkVNYFNfbjdkKTdVZjBYVzZJezE2MF5DTFVUKk5PTHI0W2UtNE1+X1BBU0RGN15PUC9NaDVUP1B2TjE7ZUxMQVVoQGM9XmVLX1JSNmFsPS51YTkyR1gvcVI0NXd8WjN2PT9nWkpQP09FKDk4YywrO01wbD0wPWV+SHNGaX1OMHo5LFhSd21rfHpOKGAyL0ZPbHFybFtEL3BHaC9cKUw1bF5wSzBtL1xhd09IclJJbEwxdU8sXz1cK1w6N011dVFxQ2dsLFExfF5EZHVfbjtkR0p5LCtfLWhjQGFASikrKGNbfT1Dc3NDZW1jc0ZwekVtSVkzbjMuNmVqLy5jamhVSGQ1fkA1K3dwemRJOk1XPTlwXyx3e2dJUFZgMGA4P3ZkYWJAOzkpbHcxYnVWOHU7LVR5O3ReVVI2KTAobjJdemMzM25ncj9sYVlAPyxzelRILk1XUDQ9a35PcG1oQm50aUdqPWYxcH1tVl41cXdySHhhdWAsbVc1Wi1LPXN3TC5vTTFkfVdPKT16UGQxe2htL3VLW1VlMz1FM05TTEI6bjktYjovWmd3cFNKP098MTF1eXU9USpFd19bWGhfVDhzUlN1LVs2UCgpS3xGRW9aLVkrZmFgezd6XjArSUddalZuSXAzTU49ek9NcHNRNl1XfUZESmt4U042ZjEvbmI1VURTK1J7YUBJTmR3NC1TZkpETE9+L2AyRmQtKHQoYi50X1lmMHVZUX5HX3N5S0NPbUUrSl0pfWF3OVMocXB6MXtHcXQ9aVxuclh6R3AydFV2QHZHXDBtY11kSSh3LkxNLWRqSi5sNjQoMisvUWw/VnguSHpkQG5gRkt7SWkvTTtwKWJ4YUpYPXRzakJVcH19aHBxZFNmNFotSFNYdTdUe1Y4OlFbNXxnOXQxZnZpTlhnRl1ySG9MV1pUenBrZVAqNzRCM3oqclFwMylVeFN7TjAqb3pQM3lZRGU1QTdAQlJUaF13LV1rVS1kRFd1cShUW3B6SjVGK2V0MlEvb2c5Uy5ccF5GYUNvLGpecDM/ZllHUG0oNzhbVjlsVTlqWW99Vk9+bGE3RDFNSVNHQWJ9OGc0Kk41bzh7TShkK2NiRC81TDhfZEZfLlhLWkZ2L15ibnoxezstOz89RFNdWn44QExRblk7dmNzcXtRckNnXWUteklxclM/UldbQWVHTGktalF2Rz15cDdRYFV0Sl93Nz1PXGloXHlaOGk6djRXek9sKTAyeVZjbHhPUEpSLD0vcSkucihfUk84TVlMTVFZe1Uxak00VVRFTXo1ZFw7VlNnUGd0Siw6ek91dSswZHJvdE0rTCwyXkBlQlEycWR4cDJeZDZ2SW5zNWs3bEsqOnRhXkBiO14qNGRvazBka0cvLEI/KHNcWitTTkBCNzNOdkV3OWBKTEMxe3gvbWY/a1p+TGQpeHA4Yl8sSygpLDhwOnMyKjUwVlQ3cDBhQXF+am9vVmNuKkktbC5DZnthO0FDdS4/XVt1Rks3eUYuN2o2WWAoYzhNT14oKDB8OVBVKVlNMXR2Zyh9ZWgyLU1qd0ssW35dXEotfmwyODpsamZWTTJmNy5fX0VkTnJBbnNkamc4Oi11UFQoV3prU1ZiNzZTOjgyS19aNzEvTnk0WXJMW1w7cnhrbkd1cmR3ZC5aNTdsW1c/QGhWW3tcRS5QQj9pN35tXSxvbytQOHs5ZHgtKFg6SXlmbj9sZVRUOXhDMnxgXmx0am1VKVtRKC1hOH40LTRASzVDb2pzMlpjWGBhQG4oRUNoalNGSUZtL29mLVtRal5WOlkyd2FlVjtpZ09PVGZccH0obFxSY1ZCOEF5UVpoLUdlWFktQGs3WFlDdVM6QFg5fmJxVUksK1IsWH5iMUVRaGAwYD0qKWZxa109PWVsKTE2d3E0aik3KFc3WW8qRCh7czJvSnEqTFF3bXNcMy0pMEVzTndZRnNzckZ0dltONTdcb2UyXytMeWYwU2U/fUA3cylAeW0qaDJnSFxsM3haL28rTXB0WmsrLChLZUppOEcwUGRkczhzRz83a0hGd2xAbHRPczhYYSgxQWEvX2BsX2BOOCtfUWRmVywva2YrOSpuTkBKV01vRDoqNFxQLX0tdS1EdnNKYUI5UzBaKT81L0dVQW5wW2BqU3A5M0NEMDY3bXs2V0tEK2AsfDB4Lk5ZeDoza3B0R3xGN2tyLnkwZDdkPTpUXWkpTFUzWEpaZ1RMYlx6d11xU3AtQi1ne3tvWzdhaTReYFh7My1bbG02NnsuNFJ0SHpJaT9Pb0x+WSpVVHVBKHNXTS1sU1ZnczIveEwueFdKaWA4MWAvZ3w2NWkoOm5MRkpDQVJIQlxuM2F1YF8yS1dYfVlpXlBtRUF5NXldMnRkb2lTKGxnS3JJblI0VXYtNWI9WUl8Ni1US1Y5ZTl8QltfRmFEVjBHeDVQfEk9XGpyYE0oUmR4OWtjUHNySHVWKllla3w1OHpfZHE9Okt4b3ovKjQ7K31TcENqOGp5UFx9ZzpwW1U2YlNAUkFJTGY2YVYxRypHbWBZZV5nZl91YURdKjFxU0NuXSpVX0p0Ri9RQkZZX1t4NjNIUVxzT2IpN0Y4clB8LExmUFxbTkRhUi84XCtJTHpHQCs0ZXYyPWt6enV8NlZQY2V+Q1ljV25NfElUTy40ZW1dXihbajJpSV4tOFVZREllY0htUSleU0sxZUloRD17L1p0YlducS5McE00Ojl3VWRKN0xjMi12Y0tXYDE1bFcrYGg0KnhSLG90KS1AamNURmk9K2FzKk54Qng1Y3hiVm1aU0hZX1l7fl01Oy9wTTt0X1xVW21qXkd+ZGljNDlpd0l2Rk8vOHdQWGE7fXo5dWRBbCtxdHVJblZDUFtXX3RVT0dcQFk1TDJUcz8vVm19SC9pQFdFMzFDXVFYMzo3b05cWm9KcHF2YmppeCxvfi40R1lbLDJHWExdTmpoN2UxTXheR2tLbTE3e2c2bSwramdsandHcjtCeE5HWnpeW25Xdnc/PzYwUjYud2suZ0FyXFJMZ1V7NHptTEl4Lkd+KShkX2hnXHREX2BLenFyLSxWVWdoeUdeTllhc0J8dGtQLlEoMk9De0RfRHYvNCl8TTcxajhvUHVcU217XDU9LGhRSDRNeHFRNltPYWZuOSwxWmM7UnIyYG10RFs9d04zSFlMWnVPSHNvWipwLVFrcTY6Sy49T2ZDaWNLYntnfUdYVDNcZXoyNFFHKnA6LFYvWGFCekRlMU5cUFMuPzNuRnB9VywpL0B6YXczemU7dHIqWWRWNUZ6U1VWXC5RSENaZn42KGR9aU1LM1l2fHJLW3dyezZGfjtEdGZIVU1VN3xcU342WmVIek5se01GeW5edEdRdFZCLzJ6ZXRPNXMsVmZ6TF52RWdPQlJ2LWdeNkZ6SWBIa3F0QDVDQmV7LldmMCxXKk02bzVjbygzTX53LF5xQmZ5NkxBYXI7Y1BZM01ITy8sSCpDRGpGQ194WGY2WjptODdYVF1kUFJMXHw0UDUqaHVEKWptbU5WRlxPWkBLX0RKZz1bOUlgQHpCQHZSbWQ2VVFWbGwsUnlldWR1YW0wLDh3XFF2QT8vLGJcQ3lMNSlfTUc9WTVcTDBCRGhdYjlney5VbmNCOC9aWC5PUmI5dmNFYjVDczNCcGUoMmQ4ck44QkVLW1IqVVg5VTtuV0h7L0h0MHRBVmtsYXRvV15xYjRDTmpSKkI5XElsak1LP3B3Vn5MK3llQzdsaS0pNjpGWkJve287U3A7R0dVQ2V2SzIzPzgoY2BzZn1aNypDNUp4Vkg2flAuMmBFXFhFQ1YsO0I0Kyt0UFk7cTpfXnZgQy09cH1rT3s0NkNCZ2NHSDpJOjlAX2g4WjFERlZTO3p5ZVtwM05fUUlWY1UxLWp0VE54R0J+LFBzKm40aVU6RzhKQzJ+YlpEZVozRVo3NEw0LitSL3kxdDR0OC1gMkc1cEl0XHoyU198dih2SXx3OE0wNl9kO28yKyxSeUtGLltsZio1dS9hXXRQVXdPNUU9N28sbkxxNm5KUUtgSl5XRVA4MX5acFtzRkRiczdVXFlqQWNMSE1iP2Jqa3J0eVJSa1lQNypiVy9NM04ydDdbPzlUQipeflpWLXIoXFptUFJoLkB7TXk4S25hUClWaW5gRTAsOzpGamg/VW1yMH1BVmNlaGk9LFd0XTZKdjJGSktFNnl7VHkwRltLfU1jRXZmV3hQUnNlemV0V15hOmwoP2RjU3ZsfXZTfWAqfVcvbmN7Omo6eUxGRlk6ZitNdCxSd2oucm9UcjRya3VQRFlBNX5aWDYyb294OmBaRm9QdX04UVddXUp6ZDByczJ0RGBORWoxXTdxRnJCfnZdcX5NfnVnKllyZ1hjfVN2VUYpKmVTVDZeLlxVY2RFMileRyotOVhHY15sNnlSN1tGZFMpb0hxUzpQUU5IdXQ9O3YuT1I3Pzs5fFdRWFthalJ6Q0hvVHtdVmdfelQ1KThaX28tRyxgOHh5K1hYLkUrKmJhcj9DPzhuOkc9YnBsaCs3LjtlS19pN1FvV0dCNUhxTHtWMFRdQVBhZVdQSFFkL2ovaD9+VFtCOkcwMm9dXVxkVWcuVkNBb0lmRFAzUT1sbDVlQD9FUnhjXEpZKVQ4cXwxUVk1eGlYRWJkTXdtSjJ7VGQ3QFRhXUp6aCtjSEpHUzcweUNBLC41L1ljcS40X2FuZmtqL2gpSzVqXDZlKmdWd0R7TkpnYDhyNDYsYk4/UjY3S1tNdXBhTHM3P31zMSxKNFpVPXBJNyx5SlFsO1lBZW5Rdl9HP1pNXjVZS0pCWUUvQHRePypuRGhLdnhxOD8wbEc2bW1nT0JtYlN3KnIpPV5bNiwyT35wWEJRNzNRZ00xeDNAbUpGd3k6NHNWcE44SF9Gb2lIMC9nQT0xKUJ9M1AzQEhtaUJqX0I1NC9+clBZaU1pd1tCN0tde1ViRF9pclVmKzk9SDNDX2Rhd2E4bnhPfmJFKztXbFRvNjhvS28vRUxaUypcYmRYdTVaT1RuLGsxejNuUjhZSFZHRE9+b2VtakZlWVFxKGJiUUp9SUxAR2Y7UTRrZF1SN3NiUEZfL0Z2fDEwKkUoMXwpK1RxSDZ+cUo4OylGMUQoSFxpUltjR3BoO2lfSFlPYjo1KC5xeHJfLkZkcG4tdDo0cW4vTXktdClwMFVNR0Y5OGVweXNgbEJ9UlN9P1lWc1xvRVs3OnxIVmpjQndjX0wuQXZtbDdgXjtTP0R2Ok5AKFoxYl14bkJffT90UndlKC5cXkBVZ3RmeDpSPXZfXkBsdUkvZWx0QDstYXZ6XXgzaEkvaUl6YjpkZVFrak1OOFkyeWxUWDs2V04rdkJNQWI3KSxcW0JAXUF5VjhYSi9YL2xbfWFgSlMrb2pHdXdOLTlOVGNYSS43e1VYWHFVUEFXKG8tOWwtbHhMLURrZnhoYWRIVGV6Smc4NmNyN1w6aExxOj9pLHszKi5yLEFxMmpmREQ4Wm9TVV5baERGeG1mYU54b0dFMytSeU4qXShEfWNQT2pRVXBwTUdSYzItbnJQdUZBTTRWLG1LfEhUSWdFcj1LXF1vKFFOSUJQKzpYXGdPd0h1SXJvYGQ2Sy10RnAqKXM6bDYoczJSQjdNWUg7RnBlNTBVRHAsKllmNUlEMF94VSx+S1RNaC9FWzZhbUZmbjBaQzFfN2F6a3k9TWNEKWMsN3s2MUVcZnNZUjtHTiksakt6M29NQWk9M0ZMOURbe2NqVzk/KVEvKX5kSklRKndSU3VCMU0uRnVzMnx9eXxqSk59KVxmUilEbXxxKXgxP01DYi1yMnprYC5Qbyg7MU8scTF8dXtvNGVNZStXYDlwU2B0OSpAKEdEWFxQLlhKaDI4dlh2XFdZVFxabkFNPT1tQik0SlZgKj1mVFstTzZHS3wsU25QMSpSRUZxLGFvQWJINDpRQjE4Z3l9aHNYZm8rMDZ+bypmaWtlTTsrUitTOmFXM2xPN1tXXEBjP2BtXFNAYkU6Zyxzajl4KjZSYWpGLlJCQ0IuKXRdXk1LY01eZCxuX3o9dmteTVd+ZnZUblFkdUZINzpSR2NtRm5HLDZocS50KGFKNG12U31RYEo5aDI1QVRtdE0tR09gKytebDdEKjV8dDlJXlx9RG9DMlReQVliZHRxSVpZQzVUQjlgal5LK2I6YCxaMylwdXNnYk1uLTJ1aEI3a1ZKY0BEd017cjgqLmE1dDNHN3lLc1EvazlGallbOlQ3VlJDO1xqaV9xc1xgb21ye0A6QClDPzJPQE5IQmZyS1sobDteVjhrN2R4N2RVPXtuREFQMjk9Q1s2TyhXcW9JNip6V2lERFZIfk5ccHhAM1UqVCxSYWV0WmA6PTFBamxwLjBLXihmOzgyOkU/LjtGLGczNVlVO0BqLWNORElhUl5LP1RiMztsXXd5d15RLkhZUDp8XTBzan5OZ3pISkcva3VQcmJBYGYzMDR3ME9ePzRVTFFNYmdTbnpZMil7a2Fie3RTRGBUcDBpNnlROHRSdE54NzhueXNwMyg6aWBKS1tEZUJTSjk4NmpAaT1kZEV2U01OUFl9R11+LXBPO1gpUSxRa2VvYU9mMW5xZlBQUnA7KV05M1R0KDFqUUtbWH5NcClJMHtjOV1zS0VOR3NfOyt7dHdAdS99Yz9TUTpsWVcwTW5UTzFsendrZVxbKCtfVUY5WldmV2tvZXg9d1VNKGo4MmsvWno5OjI1QndXMn5JY0RqNlFUeUpwMzo6ZllTTmNqL3dpYHlGakJQfHxoXy9VKTpLQClZK1F6YygyUjovUShVN1dLRjJCSzp2NmRIYS8uYFl6T2ZbMzF1RFN9RnZsU0MoeStyV0tkUj9vd1NhdUJEOD0oUmYqaDZIflA7YFwwfmFebGF4TFlAW2pyUUcrMjA5TWh8S2R4dFc1ZTc4V0ErQHVASjJmQlx4K0RGYF52Oz9Idy87cmlaLHVJXl5uYjhUY2h4VTlUNy5ue0I6ODkobj84dFliQE5fKixUQyljayg3XDowamYoZ19XNWhoME9xVHdwLCxgUVUyRFlWTGJtVy1eTHNjcG0/VSlcZ0RFbTtKdUthfGI3aXJeOytoMz9aMCsyUldxcHdGLmEobU5CbTpXZjlifF4wOGhgYzJbXV1ufjAsa0U2R01dYGU2WWhwMzVZWkhnRnZbW3U2KXlwWVNYZlJqTjB2YStJP1Q1ZmU7OHRqdUlcVVcpPWp3cFY7b21NUjFoV0N2Syp4bVFJci1SSXlcU0xgOlUtUFFXWSw5UjYuY1Z7SV5wMmk6NV9RblR3Kl1bQmlLMlV3MmxeOnNre2Q6LEVVWG1sXDVHUWRORS4vKlBHazczaERIdnJQfktnS2B4LC9xd1d0cDFAX2M2M1YvdUVsfFReeGN3e15ydVM1a2M9WkhNOTJ8W0pdR2Y/M3xGWCg1dVZ4dm9iSTAvRytrfVJxVD9SKXg0Nnh7fEVHbUUxXy9pS21DaUhPeW9eNXN+Sk5FdERWKH0wODk0QGwyMnpPcClgP203Rk5Ac2k9U0l8UTBGdWc4NkYtUlFbL0E4b3ZRU3dufFVUfD16RFh9W0pzUUldVGdCdklhOjFSLmJkQToqQSl7cmhbWCtVXlVwMmo/XjdlXmxTZTs2NmkpelVhSGxpN01cclJmS0w3L1YsOW0zfGJBcF8xXCx6dj92KlRIKDtFOEFyUStvRGZOQE5BbWR2aH5cdXBfZGtZOzlIODZOX1M1YyxEOj9fUCg/fmhZZG1UKm5XM0RLfF41O0ljYjNZT0NAVEB5KUQ7YzJMZGlZcFksV1d7Llk4Xn1camdaUigyOHtxelR9c2BTckIycyhoe2VIYEAvQlplVkN3N0leRFV0YmRiQ2RGY2t3M1B1OXdlV1hYYW5iO2IzZzdNZkptTWQ3ZS5aYX49XD9aN2J3Q2hLWUFvYHZcLGhKTklhLWZuUHpzWnljeTpFOFRZXVtKcEJOTFlHbXJGNUtjfmsufGFIeilHNWlHZjZFTz9KYyhzODVDTX4zVW1fd2dyVkRZQjdgQ0lETyhCemQ3MnBwe0t8LDVELSprSHc4Z2M/Um41cVVEMS91WEp6SlZRR31IQTk9ZDdYN3FpLk59ZyxPOlcufTIwOUM1OTpTenJUbGV4eH1oUj0qbVNeWW5TZjZ0fUowYl9Ce1Q0SHRHVC8vKEJMOj1faj0/MTZTSkpfc35KUFRaazRbcDhxPTQwZ3B4VE53OGg7T1NERmNoWXpZLGh5cW05S0dhYVtec1FmMWE7bWZBcXNldjlwb0RwRFB6WUkqTE1AfS5UfFFyN0VSZD9eMEJNVTgoUjdgeitmUmtEdmdWVFR2LWMpUFMqX05mTmkufVgsMEAxTltMbDJ0QzsxP1BmUld+aW01bCw7dnFUVXBacFtOaS4ybHVHPW5bPXYxNS87TzQyNGlEKEU6TnN2MipyOFVFYEQ0SUw/azRQbjtkO2RRZyhoZlddfUN2djFQMTdjbVtXd3YyLTZZLmYpVW85dlYrMm5qTitDM15gZmZxMzk6VEFKRjorQEBaOkZHNlZyWyg1TFtHcm1iUUpHMCoodkFEMDt3RGc9XGZlW2N0cTFHZnxQVGs3UVtRb0BiW0c4VXFrMnNMOVZjSklIUih+QDR6bDEtZSg5aFp1WE9cOGE1akdrezY2PSpzT2dFVXd1SCpNfUs9YTloYE99PTgvQ3QuSV9+U0FtRExRYFNMR1dfckRDNyttb11XWC5BT2ljK2JFTip6enk4LENESChlP2M5L1lEYy8rKC9uY3VoWGpiLV9kTlsyai96eC89K0deVi45KzsuVlxaNUVfZUVqLkZTO31aSXJJRilFKSpDU189ODRWXFtybEhWNHNgODtqRUVHfjlxZjssM3hQaExicnBPeSlpcTNPW3NGOXpEdnFiazA1cn5VQ3BZeV8vZi1rYVZXa1B1O2RtR25RcTFbdVxmW2VESUNDL15wazJvQ2BMbGsoKVVARSp8Km80X1o3Km1wYUQweT17ViwuTzgyfTVCazl+RmpwbmotSShieGZVLisweVpaRnEoWTUqSzgrOlZeUT89ajhmVTFtbChbLFE/eHQ2U20rN1RqRjpUMTE3MH5bLl1GLjtWbXxFZl9bZDZDdDBAcV12L25QKyphYCxUUVxrTTp7OHIteDg1V0ZKTXZEbXpCR3FQLC04e0grYn5hfFhDck1CaUhGKDh8blBLMmFCRy1Nb3pTYHx8X2RzW1hhOkU/fF5SaVZvU20oNU1tSTN7XGtxZmFmRz99P1M9OUJockdEM35pZUxQLnhELkk6RltDMkFwT1szM2NbSGxtZWwybG49a3hIWG5ffVx0WEkufXxmN04oLmVKQFVAfig/UUhJN1szOEE6UmFAR3YrZyg1ck9CVE1RKFVtWzlmLDIqUG4wcENDZSo7RVNPUjd1WFFQXSlzbE5zbUZRN10scWR7N3xDcVBObGZ9aDpiSXszazdAdFZYXFUrWTFEZHd7KWpMZE5xNGRuLFF0XFs7RUQ9X3E/VkJ2KSxzY3d1YDssTW1oLkw6QHxwKXVMUHJ5b3JGNyt+Rm5oOyxKbi10Njl7UF1gekdQaChCTlJ5TXNpckIyMzV9bWxxSlZxQU8wUzRqe1csXStjQndLeHxNWkxzOU15YnooVzMoRllXeShzZD1GPUNnazR4LUlwYlFfMTNHTVxaNEEpUmJoKDhGb2E7bmxTd195b1doYTV+THQ5Ol9ReXs3eHRAVzl8b2xPYy19S243aWdrcEBUX2Mwc113cD1FQFZ7fEB2a3RfLUQxOE0uSzBmTTEoX0JLYTEwZWRHLiktXlBdUVk9cSphUnNeLWBQWi9bXyhSbWFPa3NCW0E3fERSSXlsLjktVDI3WC1WMEJ0cTopTFJAYTVlbi5RVXUrW0ppZmpNQzV3c2RmX3VjPVVaTHVJXjRoWipFb2hlWTdJOEhkKXp2XE5JKVNfT0VVYHouVTdUWWNgdHJdW0F4OWtNKmgvTi1zNXBuZ1NcUzlDdXRlQ082O3NKY3lhS1g/KUYwbTI4Y09CQ0FLYUtwMldecn5eeithSS5md1NCOm52Z0xDTE4tKmxINlh9Y0NWZ1BzSjpOckhNXjcoQjRfZzg5ZVQ0dTdaMkRSYSw7XXdxdmwscEw6UlViTXVJKl59T2hVcU1UPSh4eV1BaEE4M21FX0M5W1dgc1Jlc1hqS21aWThJOjdXcStjR2o9cC8vYzR1dSxHRShnXTpVUU9uUUpgSiooUDNVbU1qeVM6MG9sd3c6SmswbGBCUXpsLVZrdj1uWEhiKXA6XmpjS3t7ZU0oWXQoMkJiQm89K3s7X2RDb0oxQ04vXj1GRlssY2NpXERmcnlVXTopaSh1W11MLys4dChiU2ZhXjhQbXMwLnRcZmEzXl5nKXpkKCt6b3ZMOj0yLStPeXdXVzV4Ml4/SDozXnM4NmM5RCkuSldZcTI9XGRnX3ZEODRHWHxoRC8qOD1HY3t3YFRYMTI1WWxtM2svO21JMnxDK0NKaDpQdFNwLCg3M19yfU1zOi9UXHpWfTo/X2hqNDN0NEQwd3B9TjE6QHgzV289TmtcSHcyMTpfUkFfXXMvNX1ScERfVih9dCo9US55KF4qKzhfSnRHa04/NnopQFYtWXFGZT8pNEIyekFFakE9XEZtKGs7d3EyaUlgOUZlVG5vXy43KVpyVE1LRypeTGw0a2s2ZE1gW311ZXJeVkhTU3dTL2o1fUswN1hhdFRHSltrS3NZSmdMOVhlb2UqZ1RxbU4yU18rZXUzdV5vSHxpQ15GYUF3dzRub29CZVB7LlpKa1d3KEZCUkA0UGptTX4xcH5KNzJUV3pWUE9EOlIqZTlnTGAuQSxiTnZrNmg3UVJRWFktN0B0cU5bQkk1fmppZWN6LVgybF99WFEtZW9hNkV1K0wpSypjR051R2t6SWJBP2dsemJ2TXM5fnVHVXBVKEZzL1kxZChSX3Y0YSk5QHY7bitWQlVYQ2MwRWprOlk4ZywwOHVhXX1BaUtabG5BP3s4MTR3ZSxcbVJYX1FgKkVKeVVZTG9Yd301bUhHeEYuVl5qZ0xGVlk5b3JnaH4oQ0pgYTFxX0pSWmlKbTlWSGg2fCtubC8oYGFTWFkvdmJvTWN6bXx9ekV9a1JudT91V0dPO0FXOm1ANXU2V01YVWtpXWVsWUZOR0VXaStUeE9WV2xpe0kxSypbY2VAZE1IQGIrRWN5MnB8W21BeHFXZ3ZZZU0rNEduWHd2VWNiXF5YZzF2LVl7Ni9JKjVYS0NTOVdUc3t+TjUvNClseUIyYlMpMWteQl5Nbmc3QWUpSCtsYS9ISGJaPz9PZDNXfklFS0BWbDp7X1xNX2J0QHdxVUhcMzdgfTcpKTd2Z2NeWVdhcTk7TndoRUFlfGd9SHE5elxvZUM/ODs5RHIqNTF4L0JjT15ZTG8uKlNranIybXF2Uk43LHlcemo1KU5PZnFEUFRHMFY4fmdiTVoqKXFZKjUyOEpzdldNXipXYng6Xm1xeClQV1MwKlApVVsrcF5eR3M2KCpBdjZOY0RAV1x7fV5pSEdAO2JKMnF9cDJpdkw/W1kxUzYuVyxjOXZsQ2ZOZzpwL3pgbWNrL1t6RlAxO0pTZmxSR1g2MlRdOnNraChjVDZWdXhTaH5gbzt5Sj1mPVU4O0ZqcUJZaGZKazYofVJdendPSV9hekRRNSpHOkhIeit6NmlmQEpuQltjLF9ScXsrZVxBO3VSTVF5fFpBdWVTT15vYz1kQFsybWFiRjVefnRjM0tWY3JHMll1NyxvRjdYXT1vRilDKUdJVE05MT1vU246TEBbKzpcd0hBTCh0bjdRa0d+MzBrUnc4ZTF8XEZMOFBGKmNwW29bX3BmbVIsZmRrdHR3dnkzSE54X10xV1FeM3tfWk5bPU1We2t7P10qMTpYRVs9fmhjTzZkZVwxVDkobkgqb0pjWExxTixfL1ZmQ2BYWTgzNj87Vm9rO192aVBLT013S3VLTWtNeChdNy8oUWRjQ31jYGd7SWkpNTRkMVx6OkNCRC4zaHEuU1lwLis9T1tPNDhec3Nhemk2Tlp2W1otK2p4Zmg2ey97Nl9VYVIzKXUuOGhnSEM0fUt7LzFiSTJ5bHFYNlspaDNLan1wMXt3cE8wQHxdRn55XEIuezp+NDg5Rm1ma0c0WGt+TmFrSmVqLVlhL0dPUlFPUik1UW5kcTI0KmVtUCx3ZmFnQWJWKTpjLE9EMzRlOmxJRTBKYUxZWlNCX1Y3KnRrLWA0NmAvWTVjO1lMfHcweSxCRztvR3M/RHdFP09AbV1iR0R9a3B1KDNYZ1VPNGRUSDhVKThUcmo/KzNSYDA1XjR2fFUzcldsUCtbUTUwZ31aQWh5cFtDY0lQdCxDUFZJNUxEc3lJYUZ0Y3E2PVA/cTJAdlxlTU9nM3Y2V2dXbkB2QHFEVjprdVszVlJtMS0pQjJYcWVvSHVbSCplWGg9WUx3b1p3eylZeEZfVjRTeUtKc2s1XHBxLEpeeDQ3UXl8LEFIOFxxb3J3UmE7WG05XFdfXnREUEVgRnc4bDo7aDdZW08tMmpqQ3UtajB8akUtMXs7WHlwZ25UdW5tQmMwOnpNSiwzbk4tL0p5ei99OmI6S3pTaUhKRXRgOV9WcH5vWy1Aflc1NGEtS1JGai9uRFI/bWdYfl4rUWo9clRHbltLKS5SYEZ5d1xkTjBJM0kyWD1HOTt9Kz9ZQjt3VzIsQFFcKF4yUzFHX0dqWzlFKW1LelZcMj1paWhKWGc0TlAtO311e0d3N204V1gqP1Y5TE8uLSx5Oik1a10wVmlJcztHQzBdXU8wUGAwV1ZtKTRidzNLQEJeNzdHMHtAezp0LmA9a1FyTk0uZ0I3d1wpVWBWNms4aztGczhiSU8rN2F7XmRec2Y2V013MUJEeTJdaWBGeV9naihnLTFLdUBvbFx+XEo0MGdeeVkrP2BvZkZaSWVYMUFBWmBCQyteLTFTL3lfblxCXDV8Z1RdR2pjNm9AbzdJRDZSMUEzb1FtN1VMeCh3UnldUWFoWURveWp3W2dzYS9ecUNJVUFrVygqRj9hUDF8QEFjX1JEYUdOXCh1ZG1JWDtadHFoXEg1NXVNLDgzW3YzRXJgaWU/Ql4vRjpAXCh2U0ozQ0hiSDBvZn45aSpTe2JkZDdYNEVsL1B+LW42VUx2ZlApOD93dmplKzZ2UCl1YTJDdXo5bkAraWJEVU1JRzt+Qlw9OWRDcnB+cl0pVkM5Zyo6bzY5XmJgT197YENKNE5zOX5OWC5ufGErW2RaKGEpLko2Y3ljOW5WVzdSa216TUBmKzEsYzF3X3g5Q3lnSXc0UmBjKjU6QGRxZVBsaHM4bFV8ODI9NXhvWVQ9QlNIXmReP2JkQWVuPTk2XkZtVHdfNHAsTC1cOlgrS1w9WXQ9d1Q0LlVJUDksKXttO1V1OGlsWnwuMUlbdnptVFBtQ2IqSWstU21tb35UcXRyXGBrL3UuKWtQeTcvMWxnSnYuTH06XEJqN0coV3hLOVBvQXk6fllKQmZfXkFESVJNTjc9XH1wMj1YO1BARU5zQGVcKXgyKSlCTDU0Kih6Mi1oaTlyKGlubU4qLWViZ2l3TmU7KzNKb0JdRnQscVNLKDtPOndJPT1eXVE6UlszZGcwcm5tdG9ZeypRQ0dKczI7NVtVKEN9QzZpMmU1bWpUXlk/YFdDQzU5eWxuc3U0Ly98RT96UGZGW1J+cjg/K0A/Vm1EfVJYQlFSentUdn5hUFUzb3NmVjdHWmxiVWdfKFtoXmlwKFE4TkJjNXtGR0ZxX2ptLkUvMHRbU09+TkUvV3tvcDR6T19icDV7XS1AMmJjUCtaTGVZNDJ4MGExbVpsdHJ0SWhYNGZ+dlFzW3hdSlUqVj1UQHkoai1ZbG8qRzRqfnZLV18zZVh4RWxZR2xqNnN0V2hjSG0zb3VzU3tPRWNqVjd3QlZrTUF4MDo3VSpIN35HKjtYN0ZxU05yYX1vSmFyfFUpNzE3P2ZqSXZjKWdUXjhAWTBkOk8zWFlfbmlKKDJlZnEuez02RixfXUd+L3p1ak41ZkllWEdmRU9YWDJYUDZhVmIwVWJKWmk7cVRiPSx3Llw0e1ZeUXNjeVNjVnl6P34tOl9Kb3ZNWmVgY2c3c19uczVcOVk6RkhBZFdXTz1gaEZpMilSTF8uR09iVmF+b3BdQmA/bnhKaHtzSSkuels2VUthZUt3dkZWSk5FYzZVVTtYeXBXMzIqX1JNSHNFKG53SjNZKlIweXw2dkJTUTJVaWxPMTV1alFRbi44cXRYaXdXL09gUWNZcm0sSHFVcztmdm4oVlhpZztcXFd9PUcpaUVPKHYqNUldKDtVNSkpfFI/QW5qLytIdS44aDFzUmJDUGhLU1xdYywuKC5SfU9oRGBjVX5nKH1wRzhbUUFKSDcuTHB4YS9sUThtKERhdXM4MFtrVktxSS82aihfdShpfUBFQEdOW1ZkSW1yLU1qZ2J1SzAwfDZbTE99US44NDo2Sl9sMF5nXzpWKy5VQmNbTFtbWmgqdE5iKDNQVDdUW1U0cnBVU1NaMl8qXi87LS1DQnVGLixyLzZxN30vUVo2OXJ0UnFXak9wU0pwVl9vQGFSX2BgODEvQG9QKEplb3FKaWMtLUllenh0TXZCVmJaP1o6UFpUKTJPVyhEfipeZHtsR2pVOzZcdio2THNeaStWYn1sWyhCeTc9c2JTaC5VdWRvQDFwMWFtXDg5Yy9FbTV8RzJSVj0ucTlHblNmeVJTSEJaWyxFc2RBe344LXtEK3VmZmRSbHJiWC59RygpL3M6fE1rVmFVYT03U15PKj1VNVdWVlpKc1UsYDZDTWRpaCl1YGl+Tl5KY1JTOmNXLHBKeEZRQSxHcmt2XGZCZDdyWGwwRlBmZFVtSn4wTEJ5ZGowSEJ3L3QrU3w1UzBRXzlbXmZIWFlqQ3h7P1xSOWRlQEM0SG1xNis/QCw/SWI/V2FKXTFtM0A6fWlfbG1vXVxweFQudH1GeSh1L3RJUnhWU24pcWovTG9LYi52TSs2eT9xMWszaE9+cUBMLzZXPT1ZVV9hWkFMSihPTWpXdXNNQFdZWl9SP1E6VVBAMnxSejg1RGUobHRBai5wYHJGLTk7PUopditUZXhzSm52alNoUm1JeTF1Q3Y9bEtcanVKbHZNbW5CLFkvNkxFRFxoQHs3c2B8MD8zSGNuVDJEeHt3RURKVmdKc3VWY3tKSWNMdlI4bH1WTmByKjNzUGlZWVBtTDJsV2VGenN1dmRSQVR5Ui5ncF9+K0c2cmtoe3VRR01MV0s4R1dscVg3V29pUzhfcDFlaWpbUWN7NCtUL3xmU2xcYXtbOGlaWVxWOllpW0k6WC91eykyXlxDdik2ZXIvMEFZYUlUeWFgYG1eYzZOQD9CO29PL3I5LF9ILHhIRlEvTn1raEk5Y0J4LUV2bT8xOit1YjE0cnYvXEJPLk9yN0VyRS1aU0dKc3IqcXQxZGpwMTV2XnRNWTlcPX0zcFN8MldxSDlvcmxVbHIwZnNJM0UrQWI/M21tUHVTTEhxTD9zL1xBV3JoblF4MDlhXXdxbjlHUjB4Mls4cSlCU1svVUdXcFB6RXsrdDF+eURCVTtUYTJUYnFZfmI2ekt5KzEsMjRWQkMpOi8pT1Utd0RMXmpiVCtHUjg1ZjJ7KHNlZU4pdUpBMjNTOEhqYm5pWWZsbHFJQ2RINmFiMT97QThQU1YxbGs9RGAsOHUpK0l2NWw0Nj1kfjBHR3g6VEJqXXx5fFRBd3JnMD95e1x+flBjYHJ9XUQtT1JiLkouSjc/cyl5YHdgVE9JYUgzQ2ErTzBdWVdsQVlTK2JNNWtWd1xBfEhzPzJCP0l2P3FKbXVpO3hfKnpuL3BxKHtMQ3t9LUJoZ3lkOntgLDg0ZUNBfllFKDFfL0FyXUJUVzopZmtQN18oMHQyRjFfOTcoWEpQTzoxdCp1djZGayg/VXNTbm97TERmb2BMSFFXQDg/L1JAMElKU2Z4T2x6Ukxic2hrYDdZZ3BfY1Y6d1ZoN2MqL1lPcmcockNwVFtOPX5Kc0ZHXU9MSEM0UkYqYi5nL0tBSE94TnpbY11MYmYoMFZvT3xhZj8oQDU1Rmp6SD9lXTlueHcqM3lOLVB5VEJuKCxLKk9xd2BFL1FgdVk0NitAc3szW09+e0Awblc6WkpTTlpgZmxfaFN1NiwqWVx2KWt9bUUrXjlFOkhvM0JYT3o/SzhHKjNDcktHQi9cRWI1Z01oSXMxKGFYVmVSQ3BRTV41b0xWM3tkdnNmeFZFamszR0x9WmlzeFApRkxSVlhXXzhfNjJjQ15oKS4sP3c7RTFOb31GbUQtVWxPR2RobS4zTjliSktPfl0tYE17OW4rSm8sSC43Yio6TklwKVkxaVd4fVdmLnAsR0paSHlKZFJYS3srfmFWSUIyanA/OERLV1BFLGV6bzpHfGNtc3BseHFuOkw7M3poNm0zO3FjQG5yMSheYnddUFxyM0RbYDtDYz9cYkNSVDFqZTlFfnJFe2x5bFY0dyw2aW4xZDNKNnxyQDJSRERVdV83V2FzSzAyPTduLUlLV1ZMNShMQlh1ZzJtbGROL2goXVxRKkFFYklOezk9U2Rmd3BJe0cuei9rLihDKVpacmYvLVJFfjReRTRyeGtLKX50clZ4NDlbeVxtTUJPeWhEfF52d2lVXXt7WmpjUz9OWHFKSnovL2A/Zl84cF5ccDlBS0JUWnxhb01FfjIwUlFjKDNNVykvV19OYnJzRGx7OnlAcjRrO0U4RmhQTTVsNXVCKENlMngrRXhrQWNCKy57XVF5X15cZEwrK1JxQFc7M2o0cVBTSEc/fmREKkNwYjNkTCljKHI1dlUzSEtleC1pczR8WDRaUH1TYGEpUlwoTmIyOn5XRnQ3ZW90L117SnFkTGh0Nko5XURMZEJ3bX1TckR6UDhqU01eXHBTP211Wng1TXc3dzp1V0hkQFFrbnxdcGB6Xz97NG5vWldjTVxjd3JOOklQfWtIMXszPTg6cnNjNlRJOHNIR2YsPVFRXDhVO0REbzhba3IuRlh4a0U6LEZ4LlBGTmNPbFtrWEM7e0VjRmFRO3lhbjhydHdGeG8wU18oby1KKyxkfF9tKGBzY0RuLkErYW02W0w2MHpIW1xrUltPYC1kaDRTSURVZ3A1TmxpNk1uXUU7ODBmWWRTTilAfjBrKlU4QXRYPy9CQmd0MC5cP0hRY2k2aC13QDlCRl1kQTcoOHlFU0JucEI7TzZOLVB1dT1CUDtsS0h3Z0V7fjs0W3B+e3BuXl1qNkdpRkJGd3Zxc1tZeUNJaWhnZ2FpRGZ+bUZqWzRwKTc4KDpnTGgrbFdVd0heVGxIYjA1TlBkY1dZQzV2UVh1W11sSWM3Ty0qazcvWEZEZi44cipKP0hMLSxpWFZjSGs9TjRqcH46c1ttOSo0eF0tbHd3OUFJMVpCLDZjP2hgODN6KDVBRFZVKGVDXz8pbXt1KUFXbHszdng3Y0ZoczFjb1dnQ31QNWN0TWJ+Y20oVWsuRndFcUxWfjkqOmRAM1wpZktPN3xyXDo5VzJQfTJZZ2lmKStab1E0KVBTOmRRRkRvPWR4a0dsZmJ9QlBQcm1aYioqN1lealZze1NlTWReOmBkbVBGVFpOaTk4cXhlKF46QW1YNDRNX007X1MqKW9gaDFJd1BsT2UwS0YvYnx7ekxDL3JFS3BPcnZhWXFiWTI9Q1U2S1w6c2V0OXxxKGhCXShedzNmRStvNnNdTUlXWU1TX3wvLkZ8RHJOLzZgfHBvQ3BmSmBKVno3XHM9VzJqazhASS85M3xFQ2lmfUxGWm5nWnhjT35IXlJWeU41c1hsUDExPy98VylbSWtYRERMW0s7LWRvfChucHQ4KkV1Q3xlS2ZhZXkvMnFfYVZHVz86bTN3SUJ8Tjh3fk1YT1kzdHU7LX1hLmROWHtCSFVBUntyYVNRYl5qTUA5SmRYcG14P0dzOEhbOERYKD0vVHhNOFQtSj91Y0N1aHJpNXxFa2xKPXFyL3EtdDZXO1lWcTM6MjhpaHhzRUJIa1xWZm90R0M7KFtCYkY0eVJbVTEtaHh4YWc4PShJW0FIe1lje2Z7USpkcGU0MTQsQEoqSnpQR0xTWnxqSF9fZlFtbkcucFx0a1ZQakopZ0lya3c/KF0wczhdMi5MM1Rzeis5bXFxKS9rQ2Y0QmVLQjhgRmtyNy03UHJ4WGFpP0ppP3hFQUtJVFZLUnwqfmViQUlLQDVAWmp0QU4oWFdTYWNJVVcvRnpfN2p8K09ENTJDLWBHKzAsfFMpLzJ+ZEp0UmY9XVgqU25nXHp+bjI5a1dAS3d5azFYNXtBSjhbKjdwQCpvLDtIZjRDVWNkSkMsYjlmO0NgSjJEY2xiMHlmbnNgYkluR2RmLz9KLy9MZmBsSC9Xei54K2tWTjIqV2RRQHg2djpfKlFGSX1CdDRRXTZgSjpvNlU3S2g0byxHMXl7Sm9JNmt0OnxOey4/MkFGey9nSGR1WC5SLz1FZn5scFc7XFE3L3x5SGlpNUZreE9SbkVDQTByL0l7Q1RSLS5OXWUxWW5qMndVW2tuY0tfbTZMX3l4MVxOeWQxVU9haTZKT0Z7b2lQLzpNfl0vXGEzX0ItdU49TUY9TCplaWA7U149S0FpaG56NEs7NSxgPSt8ZTcoc0Y0YENNOVZrZUY3Py9XUi94NlxBM1NQOU9ZK0xEMzk9Y1RjUy1eK1FhS052e3dANUFBcDp+NHBOXVoweHpdNEQ6dlhjbHdTam9Xe0ZgVjM5YXJLMnFAX2M/OHUqUjYoNm1wNTZQanxOOj0taG0wLHUoNjFuTUdgKW9DQU19bm9ZSjYrYFo/bTk5ant9Qn4pdFlLKH5FeHNkaTdzZm00MUJ+cmRfQnQwMlRyVUk2UEVDb28tX3gwYHhUMk1KY2tYSndXXkA5V143aHp8NEdIdWhzLnJsYUlsd3IuOVs1NXBdcERjXV9TTzJZRlZ5Y15SN1dEY3V8OF1ndS03enZcUWM6LilFOFIqWVxeRUlpXjRMUU41Nm83VU90LSttUGNJQGBPOWByRz09PXdgQGA6cGlzO1JSMkJ+PzEsK1I4Zmc5THhPO3llRC4pUXpiSDlAem57aTNyPTJ0NGNRNlloTUlBdz1lYStKVmFbWGYqdzIwNjVrWXBpTnJnMklBc0Z2c0RtTFhtNzg7V11zbi1uMSh3R3JmeHYpfWJdZ3M3PT80N3NIcVdNLnA2MntwK1ZiNWE1VFF0SDsua3xWVE1ZVDF2eTNSe05pL0pSeVI5PTpGfTltOUZYZkNbXGdqVklnXi1bTlQoUEFORTd+eWBMbDJdYGxvLD9SRUdSXT9BcU9ddlQ9dGR2cWBNQz1wKnBVKTFcVVhtR3RlRnZxM1d4NHRtTkFcMVcqZF5SPVRINDg9WTZCK3BoampMUC55MXM9Mn12XV4zX2wrSXBZRzB1ZGNmMl0uNH5hNm1FNVhHQ283Lk02dDNsPzRcSFp5MkMyLlxJMExUV2goWThqfHIrMWAvLl5Te3VRYXc9OntPRUhQc29IOV1OKDc2aEg3bG5eTzp3S2V8XV0yditvTW9pMm5vfVh3dzFpVi8/KEpabX1cTVtJW1coMHx4U3koL0JCb1xedVBAQDNmVU1UaH4yMDsqRj1DV2lWMjBQWi1razJAQikzSDE2SGR4fE9uQjNiMXNLRHQuSkNyezU1XzRqdE1yQXwyLVlqemI/NF1yK01MT2ReY000XDY4dVV1bWw2Y35GcF91ak5RS1w2L3U5ZlY9dmNfU0VmQGh+TF4paXlDRWp8TjhmbTVCdmA7ezFGZkpbeyoqbWI6XzU2X1xqYihGRDorYVNmbE9SR0JVd1A0dkYzZEROZlJEMHc/QXpHXDNPbk1XcEQudSkuZXowdGNgPUJ5b1NJK3h9NnBBX2xSRElLQT8yKkdwUUZGej1YdXUxfkssXWR9QEBSYURib15nc0wvbVtFaHF0U1lFbmF2TFF1fnkpZDNkdEZwWzRRbjg6fCpcel5EcTNTVTF1eitsNGdqbkpxfVY0Tk43TSsqVlBaXGddeUsofS4xKXQyYyxnOmQzVVZPQDFFUWI3XkFhRHkpW3B6cX52Ny5jXlZSZEFVP0Z1TkJOWHp5b3heX3tEOShsWndTLjBFQzJCPX0qKntGXFl2RS5iK09EdW8qY2I6Si9BR1ZLN3lIOio/OE15MWhXXmpfUUBlS3tDQVkqcHtGOkx+cVBWRjNmMSxCQyppSlV1e0Q7X0pQZmBBVHJzVDU6bSo/RHpuVFEsOm5oN2wtYUcpd0FFYk0xeTdsVVI9MGAwK0x3NEx5VSk2SUM4b0o/d1RTMl0sVFJMdXlpXS0/V3ZIT2tEOCxacy55ckZnSUtHanwzXEJyR3BCU2FNel1DaixQe08zeChydWkoOHAzZHA6fUQuM1tsZj84RnpQNnJdTkA6LDE7cEsuOVZqbD1rfDFUK2Ara0I2QH59OFBwaHozMXsxQFhoYTgqQypmSGZhczpXOGB3SDJXRCljdkhCcVdmXzIqRkk9UVRJMSs4XVNIdW1iPy5UfjZAZVhtcDhJaToqO3I9VWhILUc/Xyl6ckZqdVMvRX0pZXVyc3FeLjljP2ZPdG87Qk9LNi06L0wrXEw3QHZHQTsyOk09aT1HeDI7cil3akh9eU1hNytWUlR7MzI/djc2P2ouXWw6SEdoKC52ejN0WzYwLzdSXlBcamVAS2B1Y0cvS09iTzhjUSpcTVFPWjVTSkN4cU9KYjc9NShiXkFlWDUud1tFZjBDeltvMkQ/Py1cQklifTVePV0/XysuRFNDdSw2T2k5K35iXi5oayk1Tl8vQWJpVFQ9REFcWTFRZy9HTnxvLS11NFBkeUhKYV1XWG9Db0tDSSlqa1I9NFY9TTRfSFIrZHAqW29wMEJBb2NMZ3FYaDhhQW9ZdnBaR1NaaWpYfVspU1E/cGorYF1jUXBxU25aRjExUSw9Ky4sKC1sRER9ZWpwR0N+S3FpRFNFK2J2QVhgWlZSTVxiWWlbczB6UTppOz1TMW9vVFV8XnU9aUo0dnIyXD0wWzJpN0l9fitsemNdNVdfP1ZiXy4xMXl7S3JGR3Z6dWpWLlNdQ3x2XWt+bE44XGdzWC1jN3NjcShgTy1xNHc/W3tlSWtXSFZ8W1FeN3FwQVJFSHt8VVlRQGlZMTM3XXBaTkNvOTJ+dU1ecF9sXXlpeTVdWkcwUFtzKHBjeHtaa31MXVNxS014V0hbLlNnLGdUNmx3cWg2dnN8P1Z0e1xfWDtUQDMyKn1nKC4pKm9IaF9zLGV6XkksRj1haStuOGhiMFdHTlx4VG9VNlVjRlRbLVZXKVtZW2xrcVBfRUhTV2YqSCtBTW5AXk43OlVpZjBgWWBfXmF2LWJPZHt7SmUvODVne19UbjBkZStWamZWNkl9RHhMWUksUVdrXzpHWjtOUDUsbzszbktJZnZGZSlCXilBQzY9aktkU09tLS9jfXpTKUR+NTNLUFNLY2o1d05VMzhEW3U/P15TMFRjfkFpV3ZnWlQvQWJUUy9MfmR+cyg5VUVoO3pZR3hXOlIoVnpXSmp7XEZKc3FjTFxYZS45ajcrVn1SN3spKEplWFBVNG9DM2hJLFBXYkBDQTovejJxWEZVbTZbRS91LlZNQkBVUitVb1VKfEY4O1VfQGkvRjY1SURcam9vVShGSn1QfH5eZzM3Y3I0YmhlOjAzSjRLYzY5bSx3OSsrUnZvLk1eLGZIeXR6UlEtOSp2MS14Kj8qSWYufWFKM3FpKkBgc2xZZEI4OFA6SkxcN0JfdHwsNTd1enxzLXRLflAqZkBJMlJONVdcZV1tY301ZGtlXT18bGdoW0dwZj9tUWQ1anNyRlQrME9sUSs1M1RmWG1ScVgtWX1TazAuZGR1al1SOH03VGl0fUV2fDF2X1Nnby4xbjBSVl4xNkdNZi05OEpKRURYdWA/NH5GdjZUKktcO2d2Oy9aMVJ1Tk9gfENwaTV3ZyxRdGtcT1hUbXp3QWJRO3B3QHNIL3NfWG18KFwyRGBZSFYxfmtcLm1vRDMwUi1wTXdXXCoqNng3QH1JMnhbQU0xREVEWl8zSXReMS1sNktDfW1LfDB+VExLX01lRGdJMXQpeGNacXM/dUxNXnBgaD9dWy5Rb1syRypUQXp1Q0BTaT11LFl9NzRRSVJbKXhLeWZsXFF5VX5sVHYyXlxQNnwyOkYrdj8zRjE9OmxKVl5OL3NOZ1FpWkA6b0lEaVZqSzl7di5qXTJ5YE5qeUwqc0M3LVFJVmIuL09tY3Q3TkVfLVFnSGk2LS4zdlNgMHdrNT9DbCx3ZEpqLTdtRl5vXkUsen5qaW9pVTZRb3RjQkN3RXwqZDFBeDJPOHlYL3xadFA0YktWT2pQcj96KF9xV1s1RFkrXTcvZ3RxUVRbaEpkTkU5eVBvcX1PRFo5NHhzQHUxeXNHYDZ+Sy50eDI5czA/Kkhnem4zUEZJP1xlL2s2fVZSY3J3eWdIeWRRa0U9MnhCbnYya2pkTShJKHxadXltMjQ6MVpbcVJ9LmhrY0dMYitfdTItaGw5NDZSdzZbY3dSKmZqRWw7WGcpaVBWTERjQ10pX1csSkJjNUpOKXRYS2IwRzVNNmMzNjNYKE4qQHtRQn5QYjtwWFZ+K2FRS2k0Y1s2Lik/LXZTe1pRMXM3a3lAKGB5LkN3QiphP3AyS2gocFc4KEkvTTRTS1xAL11KUVxLZ1t1KnV5YkE3NFNIfTFUT012M0toVXBhYlw4b0w9Xl89NjJYci1PMFd8aHQ0N1o2Tit+MFZ2Nmt9a0doWUQ/WG4ufjFyWktUYGdyMEV5UCl+MW0tazZndENqSm1idE1RfGNCSEYoQUhOZzJQZzMzR3hBfSoydnFkYFpjemxYRTdFa3ddO0l5VU9gOG5lYVAyaWVhdTFlMEhyWEM7R0FmKzZNUjkyTVtsQHNfRXBzX3BMVy5+UnZfYGNvUjgofi07KUpGeC1FTGNscU40N2hGVClbLU1rZH5eTys7QnVnYC1tMj1ASzI7Q2lVMHhMcktfLFBLXDk9bit3az01LVFrcytELl1wWWBcNX5NR1ArZWxlT1xYMXVseS9qVFYobnFQOHN9by15Q2xwZWhLelFSSV1ke2RAbnhHN2EvQStXLVwrVlhrY0Q2VUg/KVo/MVlgYS5wVFh3aChjZyg5bjFHNE5aMEc3K1kqY3pEdnlSLGssckxOLF1ubFJ0XlQ1TkE5ZGtRNmBOblY0eSw9QGFhTVpaZ2ZNdlcsLnxkKm54OEl5TVxHZS1Xa0psKnheZ0VfZyhqT3Eyb2tYNUtMNUF7eDtAQH50UGFeYDdvMHB2MUNzQVBXQnZsNG9lL35mK2ZYNisyb0xaeDNeT3QqK0VNejRTTHh4K0NrQzdLenUwcVVHcXhwWWJBRnctVCxNVXReN2hPKlArTFdpS01AQXR9VWsyY1Q3YVNvVTY5KGtzTVtgSyg3KEZ4PTdZKzlMVU4wdHthTS9AKVJwdkQoVHZ5YWtMKUlMa3h1Yjg5Nl9uWXtGY11rbXlNUEVOKjhGLUlzKEBtaHV6Z2N0bXRbQSo0QF1lckFOTWxubmIvd2EveWErWkJCeV4tbn42SzhPdmJGRy9SbGx5a1goOzJld1ReWlBHVD15el9pQygySWpecU5qc19ZQzh8c1BJRj07LjRgWkw5VXQucE5HblVMaix2Ljk2cCgyU3hgeFdNdC5sUHhbXT1yUTkuMTp4Y1xOLm1bOmgzRVpTSzc4ZF5tSi0vdUZRLVFDamlTQkozazMzazMsejRwV05zRG5tQkliRSlDKzNbdDJLLE9nQXhqYlp7L2ROSUN0dzA7eGVwOTpoOzAuY1lGQFVTL2pzKmJFbCw2KlFranJqRUxTPTRyS0ZhZ3Feb045K1xub1QqVj8pbHJOclVneit9Rnk4VTReST1Ja1Q/Z2o9ZGw/anBuNy5nXTtlbGR4anZDLmR3ZHhke1MxMipGMmJGRks2ZmxVOGlYY05tY20rLzQ/UVdAOG5AOSl7Zzl9YUB4MV5VVktnLXhZeHRrdnNCc1hQMyxKXz1pK3JNOm82RTlFdWNrQV1fMikwcmtdRDlDOixVPylXSEw4Z1RyO25rQGFhS0h8LTh4UmNHfCoqNDMzXSlMSjhyN0E6NX5MTnU1Nm9bSih2RzhQQSovLWczR0FkVC81NndxOXJ5Vlk3O2d6Ukp7LXlGNDljQ0ZTc310bjJPYFdxdDtcO3ZAVy85dShgUHRwQ3hwalBkMHtFXV85SFV6bkd3eDhDckpIYTNLLzRpMUZTS2pvMylSRWNtcV5MXl9uNnxPQmY9RV9qaVtwOCxwLF1dREErKSpTMihdMy9GYW90WX52UlFjMyk5VzIzeD9ZTk98LWNbUnNxakZLeXFifEkqc1IpSix4SVI1Lmt3MXlbZXZxfXVlNnQrcnd3dUl1Yi00cTNfO2lHVUFVTnNqZGFTY0dzbmRiOjtgXERhTXNyaW01LHBrPVdmQlZgblVtSk1AVjpALUA9ZnZUajhLK34wYG9YWW45LzF0cllxUCxWQnNjP1FWQGQpSmc/WT1HW0Rmc3lpNmg7OUVvNkJ4ZTBrUEpTZVMze0d1W115UTQtXmFDWkZKQUlaNTozOk5Me3g4bDBMUjt1S2hSVi1jUFJPZ0osX1UwMmYrRkt6O1poRm42UHZvcG9vV3R1MzRjcipmZSxQVUdnZDN0cTYud0VMQjhQKnFNZCowNGwvMnwxTDcxWCxIMCtfSGdtQkpsR2pCdU83eWpWbmFYeUo6NCgpS1hCWjU3SkFKcTlcZ0MpYDlzfmpjVVZzVzlPREhxYHVValo9P3BDX3ZXcVhoWTpZZHt4a25Uamgqays/ZXZwM2JaKE5hKlpDUj9ddypzMUcpSVsva0V3VUA0cDcsRFRVLytMN0gtV0FHKlJXSGJSfVt7NFZuNHt8NUFTYUVyXz9vRSk/Ll9gWERca3ZWZXt4SGpMVTlHTUUwYEVPK0VUZlp4b1BtMmFxVG5rQDZRakgoSDJudVVwNE1AdDFGbWZ7aitHLFpEOUJLXFNkVDorWlJwKHszVlV9UEx+XU84Rjl+bXddLDVVbzVSMVZFWGVwVlIwZGd4fmB0aGRZUm9FVzNVNT19UClNOHRrRT9Fc3VWVX4vMWtiX2cpZ2QtMTp0NElOQV09dmEzRm9IRHtwfnpeKmZ4VVZFeGk6QV51ZjJja1hhZ2RhRi1wdjdsYEV5dXhLdz19KkwpX0Ire1JdYGJiQHFUWjZWYWRcY3o6LmdlXXJML0dGK2FzXmtnKkpSTV5KcX00LzRQR2N2YU1Xd21EW2xjSl5PNU1HXldaTEdIc0c0c2B0Lks9TCwpcWFXYilQUFYwcmRiUmpZcmFAb0sybE9UK2dUNHI3OVpwTzMsXmB5YTtbODtGakxjRTBKKX0teEF9QlZGXEtmKFxMfVQwUmZ3OW1nVjJ1X3pDRnxPe0ZPKmhbTXBzT0Awa0xHdWh4KlpsWVs0KUo/THJJdWRUcTBYZHZRMFlyMzpcXWAwdkZXN1NYPT0tWTVzXWl6Rm59TClcKigyfVZgcGBxWGsvR2Z0aWQsVkFnO0RcMDdnZEtkOFNlT3c7fkZdMGBhVFs5ZFpKWnguY1lUK0Q2TDpXR2B1P0xOX2Z6Lig7YmxXZCgxMEF4W11fXGA6UDV7T0wtKVVpRENlN3hvdU0rY2FRN2M0T1xGNWJddFkxTzlYalUyT2RZZzFfT3Q9PTZFWkJna1FfdlJYMnlkRm82e2VFMHQxR1FlLFJ3NnVoYX1ENHBJfWxBSF4oaVdeTmt2MSxaXjFGQ3htLndBZ1ZgXklBNng4MnRwWXJKQjIvKkhVUlZHbXJuODREW3E/bntkb3VUd299QmtzVSprO1NHYWZlXjIzRmBiSUItU01RYXVWVnRYP3pRSlJQP15oNDp7O2IxKDFAVzFhOSwpOXpHZD1wP1s6eEYqWDFuejlxQS0rTUp8SVQpMURCRTNXKWEsU1BhYHEscX5wKEtTWXM7UVBwaTNSdXRQQTErSGhLTlxyWjVfa0N7dkdSRi9DRlh0dEpXUX5pZzRdW15MMFZ8emlQN2xuMXpSODFqRTBASENTaDJoNlh1UH5XQzdRQXhSM11kOWRRbHhPMSgrblJsMTJuNXxVKUczOVNfKFJWTXtPSTFlfjJgKjZkP25ROENvR3dPYn19M2x4LWg2XWd7dEFkbDtbKGB7KVspdlpuSXpRXmQxUCg9ZmpFV2tETi8/ZU0zXUN8LmF1WzFtTCxCQWFxUz80QFRBR2c/RkZaUUNSVz1WdEYxRmEwdntBRmBqe2lNU2dbT2Z0VVtPQzhUSkcsOCxUZ2c1TXYob0xrWi5wQz1pan1oTihOb3s1amc3RG9rTX50WHg7X047c2oxY19pOywsXGYyXEloWkNQKG12XnFwM3xsP0VYKT87ezpFbmN8Mzo7NkZodTZDfFxlK2ExYTtwT3tBcytHYVlKejFWLXtZWzp7N1JwOjgtcmlyS0xPP1EoXkZLOWJIPUdlY1teUEwpNEVpbFI5UlNcNmFBUT9pSWhML0J0aU9YbClgX21idkRbNCtickBZVEZIQSh8dy5uZzpnUixHdjhjdW1jT2VvYGIoR2pZOHFhMGx4Q1p0Nld5NlZXalxnOjUvfHhgMU4zczF7YkM3XV46XFcvK1s7cDNIck5xQS86cz98RVpaRmJEZy0xRyhPXGhRRHl4T1R7RDZNT1MoSG93V2dfU0hKKXcrXVpyT0dPeFMvclFJQUo4YU5+LXk2KnVvd186ZU1XU2Q9PWJwLUpCNl5rPTV6PzIuUT9aR1pBVyhiSjdDalRcVStmKzo5RTVAcVFDLV9FeDVcbFo2VlI2cFtgQUhmdCw1bnJ0LnAudm8uWWRYNnd6VSlJYHoxX3ZZX2lhT1JwO0wuMH5LXFB6Z1J2bnVLOipZYkRxN1kscDl8LlVVQHx1LVJ7YWBJQ3xNS190dnBwP2JWVEpWbk9Eb0FWdEopd1cra2toKEIwS0dROC8ybll1eHRVOy9kKEl8d3BqNjUoOUV4WlNnP1dTUzdUZjh9UlBwWGlvRGNmYDcxNl99eXRUfX54dGRTZ1lNdlpiYVBSLTI1WSpvYmFwUloxU3dSLyxfXCt4MEllXF1uWkw4YG1jKGpjazZOXVNfPSkzM0Z0eU00bFFMeEpLci5AeVZGQVw7MkhzRDg7ZkwwLkBGYDh5R0dwRH5fTGQxQE07QjBLMlkuTUVzd0MyYFRIdF57MWYyMy1dLGBCeWhiOX5RcjF5Z3xjS3lOVHBue1ZYQkF5MClqKWV4OFhhWDd8akBaMmlVemhkOUZ1bSwod30yeCxzRlpxXXp9K1BBO3c2XjpXOlpDRi87TzMsUWxVMl5wUkNHZ3dbNEJEUkNfblBbVD9cRXdpUGljW1QqZVtPRjFEMmJyZmBiMmhxe3YsLFpkY0w2UGx0SlZWZFgqfFJCSVRARnpHRlcxK3pfTHFVbHpzPTt9L1QpKnQzO1A0SWJRPUdUKXRNdGRtUTV0ZDplbnJXbTNGKE9CYS03OmBRKTlaZ1BEXFV2XExsYXd3VDFFOnxgOG0vZGhJKjlhLFNtZi5LK2VkLXxoVVMsbTVjZ2lXXlUwOU4pRGJ7cllMP0wqa1oqbF9oP0FZeEpLV0duUEA6L2BHd1pULXEpfGo0QXVsRVNMODBYbFssVXtzdWltaT9nbF50KC93OnJ2bnkwVXd4KlQuVDNbVWhhaUpsRi0xZW9VQmF7fVBkKTlZYSlWbEdmblhNck1ab3lDVTcuemZfOU1PU0xVdC1eOGxWaTI3Rmd2cGc0NjYvO2RXdypvLzJVc0tuVypGMD02OTFoQjsxOWBrYyhFOyhJeTJqcjBZd3Rqa1RPUjBTN0tqTElxbzMqVUhgZTJdRkhdZz1JQn1HNE9weWNBaitkLntjMTdAVnV5Sm18ZT0pLnZQbWVbQ0h0UjFbUEJXQlJDN1xPKERhfTVKOl9sYEF5cHdILE5hQls4Oy5pYHlGfSpKWGhZW0RxVXNdWHpUWEtcMDlmVjMvLGlYV1lnbUUyem9LakNbSkVbP1VURWt1SGFfTkleYXR1LXBzKkVdZ1V7MDN2Qnk9MCo9W0tveHpMV0I0UF1oVjB2fjpAZX1aY0NqNTtyZTZ6eFY7U2gyLl1MLXB0WHZrWnZSP3xLSUB+Tnx5X19FMHFMKVt0QFI7NWJQNEwvLDstWT0pZVFwVF1yKF4/bjJ0N3BDQHAuZS9SdFJLcVUsfVxsP2ZsMXVCazN0RXx6W2xncF5ZZkpEZmhFM207LDJyKTE3T1lUOHtqTUFlR31sQl5VTkNeVl4/Knd2eF5fUmpPdHFEWlY/fjlXMGRaZjQyZDl2UjJ1Sys7V1p2QSpkM1dWKEJNQHVVY0hMclxHNnVGcF8tbytAL3guc0guKjB7bTA1b1paYGJZbmY/OHNvMmBCbjBmVzVYalh1bl9gU2stQiw1em56XDpBPTtHejJMZzE3eTMuL0hbYDhyZEpVW0RcdjdxWkJGQUVfaX5KK10ySENnWFdTUDZ5akRMYjU1b0FsdFl2MT8ofFVkcUlyY0JwUTJ3aVRlZXpFY3ZJb35QSmdGNjVzMWA5c3FPQFRnbHM3LXBzaVt6fl84K1xjLTA6bj1xYF4xKm1GOXZ3dGoyM1pLUXV9W0hwNTZPWW47LWFzXD9zaGVOdWd8SS14XFJ8N0JiXGBgeyt1Ll0wLSx1UHk4SWl0K212KUY4RlJdQl4rMTh3Kml8fmlQUkFJY11yRypLaE5bYEpNWE5pM2F4UHBQWXpfXV5oRCsuKjd1SDkseTprOHNAa1cuSV8vaS5lekh3XkxMQFxOV3doYkwyXDYpRz9SYkkyKkEseG5KclY/Xm1PdV5xOTl4NVcsbFR0LmFzLlw7USpvNWtULnplOFQvWi9UbE1FaX53RHAsPW1cKG9iZV9zWDFVLCspZmxSciheU3E5Lkw4TVAodSgrWz9KKDpDeGM4VnBKZlJ5X3coXXs4fGd3N0dNS3VjemhObHoqMnNCK0drNT86UzcpN1pkeEUoemNLMjt4ZlM4VUguTW80bD8ze0NGKi14a3N4VC9NP3hGZW9MWy9ALS8pRS5INGFMSmZuaWBwQkZ+L2hVLEhSLmRAbHEoUDpqekdQYGU7XEh0Kjo3RWFydEleWFM5ZGs3V3FRL1ZNVjJBZFNjSEdLLUcqS2s1dTV0Mzkwc2FtcmJvczpKN3NxWXREXkZzcSlUZjhHLC9LemVvRipNR3RRVn5gZndXYFZoMVpINjV5eG51XWVYWHU9bzlOKn5SZkdEbX1FO3kqZyh5YVJvXm52b0VtLHlXcmxyOUJXZjtbXEZvLDJNMCtUKlVgR2hKaU1RXjZgYk9YaTF8VTg5eF5Tc0x8Z3l4TzQ7b2s2fnYzVXhVczk0V3Y2X3g6bShpOFwvK2s4XjhiaFdPMVt2SHg7XnJkO0Y0MW09bX5uZ2VHazhRVH0sVGBOKSlvfHh5bmo0OywwXW9wV1w6ckdtYGRAMmFgbGBXTVdZVExSTV1VcDhNdEB6SSxfXncoTV13TnRuY1M/d3AraGZndzF+TUppXEh4NHpQZDhNYzhnL0hyXkBlZnpUYzdUNFdXTVdeTnYxQlMzLGtqeDJzdHJ7KDJMfWpFWX4ydER5bXRfLjQ5e1ZHXUJdZlhLXD8tODM9OGtufTk1OWNcYlhUYmJQUTVRfWdGcGUoQmA7W198c2BpXHtaQzFbZFtDOGJhTW02Ong/bkJqb0N4Z3RKSEU1S1ZudWkvK0dce2dfbFxFfnNXb1tpQCpJXys1fFN1Xy5rXjZBR1gvbUpjNDVSZFNPSV18VF06UFYufS11LS5CfF9PV3U7dzdKY3c/WWIsa0BOQlp9LylaVD0yTjpQY3ItLSx1bUZ6RnNuMllifS5wal5ANmlZPSp1TlF3WTV5LGVWZEVidEhaczNjK3RZaHxbPVBhZHcpN2JJUXJyUnYsNClccDFDalJqXG9aSG4uRVRYWnhcYGIpWjBjV3gzdE1seVlsdy9ZSlIoQzo4bVt7WSxqV3BfLDg/O1NkQmNDSlxIKz8tLjBzZX5IX2kwaG1Db3VgW2NXYz8pYzorMER4VClMNUAoPTNfXDVjQ05VPV84LDVvLX0rNVJ0VFxscV5MZnJUS2EvcE1AajUsYHB6ZSt4SG9yLHgoQGY1QTgwMU9PQGR4KEdNYUZ5Y2x5QmArOC1xZS9+ci8uQGlKTDI7aS5iK10uY2RdUnpaMmhbMlBic110aEA1X2JPRy13PXVyWzg7aHBpdHxtfShrS2lKMDRhXmtUVS5+d0I2fm8obltqR0Q/U2syNlF1UFFOcHh1TzR1L2tWLmhTQkgtME06UnBDZlJVZlVPRzhjaFJASSxJOTpFaUl+RVs6NS5vMVk0QHZ3XUtFM1E0NGlDeWhaWy5gcWFFfXB1aDg/LUV0R1FuRmIwNVFYbUo5KUNSR10ufDVQLldAX3goazUseG5ncUgyPzlTY3VpMXxWcylPNk9zPX41KDZTOW13dXB0R2tAZkBES3BzNkFrMlhKMUZmT2JyZThxVjtVWm5sU1N6Qjp7YUZXc2Z1K2QvZ145ZnhKc0JMS29fTSxXNWFFUyhiVjs6MXVWe3JWYDtaUXg/RlpBVWJ5Sl8uR2Q1ZF46Sj0vYVFjL0htSHJVUktyLjdeMCxNZDp1ektLUFQxSkljaW0ocUlUTTRvK1hmXHB5PUtIZEZiYkFpQjZCWmktbmFwPWBITGZcY15fTz1yS3NfLVI/WmQrelVxUzlLNkR6R2ZtcGBAKys3WlhpXFt5cmE4W2tJcT9ecWlhSGctUEU9d2RZcXA3MDhQd3JKXGtjd1kqdG5wR0l5PzNsUStZTXtvLGFFVTdbNT14T3ZPKk1fcng/WFFtYEVETm4uOFFIV3E3WFw5ZUBMdF85U3JxUUBYZ0N1S0ZsZl8vO3Eyd3d0NWBOR094Ql9ce3lQflR2S0xhM3ZiVFF6bVdGU2h8OTZBdjMxeXZ7eWFbTGRBO2dmY0E9L2gwenY4Xj8rKC9UUFtDKk58MVVBSXZMPUFKK01yTDc1ODl9TXIvd1JVYi5caU83PypFPWtYbkJ0d3NQWFZme3FlUlgsREJ+NT16dnp1aTg4fVsuQ2hgWzZtWX57KnphcncvUER3ZUZMO1UoaDd8dl5ZTHVgcEJjM3FdNzR3eFUyenE9Tnp0QyhNKHN6Pz9AMHxxYEpJWS1kc1ZRa2BVbVwta2xNVDh2bDBdSTV0NUpMMWAsQXp4XUU3aDJ1NXV3LUcsVSo0P2wrKmVNaTNiXDhgfilbTihiejQ2Z15VTG5ZLUE1e2NbSEVzV05jZjc4Yk1MaWhsYDhudjhXNE9BY21rc09tNjlDLDYsTHw7M21pKS86RS0qdGI6aXVhdEF5W0BxNk5vMWhrYHM4cnF5ez9SQUVURHM4VUl4TjtvZD12YnBXUnRaeEdlSHJ2UCtRVEFTe0ZlZS4qUWhuKDZSNkYwNjRXSktBe0hmTmc3WUtNYnBURWh4L14vdGV1ajhAM2I2RT16fllhcTJKZEs4dUVheV8xdWk/T2duc1BkNWJLRC9ETlFKWUIxfVJ2V1xeUSo6T2ZTeWh+an5Pa1ptQT1lU1FrZTpmW3thby9GSS5VdlRzRmBSekpxcjFkKkJCe3F3U1tyQi8ze0thYV5XZVs9VURsYXtqUSg9SzJhTjBCe3NiSD91LUVeRFY4W0NCLlVWOzB+Q2pbQl1PfFxUXD9QMi9QaGsqfC4pOUh6OC5vP3t9Uz0zSi1NQXovaHBKN3FeeXYvWjJ6NC1KT2JmZmRVTC0pYnpAeUlTKyszWip0UjlSSUtmQ1J0K1F9PTlLLE1LT2BYclJFSU1GUm1uaW8uOXdSZig0cHttezhBQlt4WzcuKTVMQm5TMlpoOSgzbFNOXS05YitlZEFXaVtSKHN4KlNzXkpkbypYVj9qSzd6P1tjMDhpfWVEMGhLRWVPOW9EK3kvUTpxa2RpfTliQWVgQWw5Y3NyL1BQZjttQWpZOWsudkJmNGVVWnc6KUhDSkF9UU4yZil+PXpmTzA4KFN5NlB6ckhmen00aWFFc018ZHJnZHEzTUtbNVBfPzA7cC8ybEk7WTZtbzdQV0hqaV4reVVBdmMramZ0LUl3KENzVFxoNyxlXV1cNHo2cXhqbDgufmd3MyxDbzpReyg0UzZ3VGFQfVBZXEFvSElBNUc/XDJNLVVYeytTdGlGNEZFVlNOQEc3fFlEfnp3PXhWdj05ZSxZVXNqekxmNFlBNHtiW31jZ3UrUmJdYUQxOjdTbT81bVc9Zy9tMzVNa0ZQYHxGM2I3Q1p3WnMxMlpYfi10YVtCbW9IemV1YFBlX1RkSmZ8SXxgK09wXF1TeV57S0hiU2ktKSl0fnE2NX4wWy4wTzF6Qnowe2J7KUVReTkvfmRqO2xjfjpZV2BoLGBlLHh3bVRaa2Z2Qip1KWY0TXg6K21acy4qR3ZDQFxxZ0Y7MWc4fGMuMGhJd2JgWHU6K2JsKilYZ0IvWHNnWWhiQiw7QE87XFJuaS1YY2R7L1NMZEd3YzZNQ2JWSUE6NyhqW296anFlbUI6TD9ObXdcVHNCWCxjRzNCXltsUUw3bVtBQkhPLEFvLmZXb2tTeE4pK0kySEowNnVHeXFRT0BdYC1WUnE1O11bQVtrbUVDdFQoXWRAWWJdZFFfenMvKEo1a2YpcnREWVRKR01lS25TZXdreldxWVkrQk96eGsufXZbd1FZSkpOVGp6ZUR9b1Y2TjdMVlZfXT9fQzZzOC5LWlhpakFGfUlhWXlrUENXPShWezVTUnNRe31lfFlLW0lWan57RERZejE/XFI9LEJrdWhtdHEyeVl3Z0lyWipQLE9zensyQU06T3lDYFFnO3l8SCt2YjFLKFBsNGlVL1p1TXZESn1eUylAKD1NMGU/YXZ0UlR1V2tFTjlQKVFqalBnLmE1aVJLMFouT0RhaXJdZFNZLFFfeEF1OjYweW1xaU9Lc1FfbXFNLTRBYzZ4SThhSXl4WWpxTDVGQX1Pa3VmbzBkMmVqXChyTzIyS2tzQkcwOFpVXlsvaTNiYHloKFlINVVfMVtAWGxRQUt7b058YTFNLVQ0eS5dY1FINU9mfTJBM2pac21mV3xzV1YuKEdERFlCaFRmbDYpLjBILDFIZmF4eDJsLigscGVrfCtddDB3aUQ0b0NgXE18W21SUFtwUVZlMXZNamQ/U2AsVVd5c1N5TD9+OUxdZG04Qik1Y2s2RTMpMXtuKFY4WGlIVmVCbHl3MEdxbGdwTDRVLy8wL0dudGNNZFZ9OyxaX1kvR0lOUV5vdUNhSmpIfmlnRUdISVNINGFPZjEqYnNVQXE7djRJZl56UDd+SXJrY0oxYihDTlR6XVxEb3hZKmg3YFF1NTUwXDU5KEVWLnc/Z3hgOmpjRFxzUFpvbFx3dUJWfWJ1OSt0eDUqUnFuWj1EMU1aMk9MSlRbVWc7Oypzc1pEKShsdy0sV3ZNey9scVEoe2IvMDt5MFF0ZFt1Sm5vaHk4YGVvOXx4P2tjL3Arb3ZJQWJ5X0MsXVJ7X2tiWXJQW0VBeFBccDtLbzgza0BZY3kpUUNmNmdfNDo0QXJEOlxfclJAWmBGa3ViKEZ5TDhvNFVhQExbMGtzNHJ8TjFoUipxYUZdMG9WLDlkRyhjRnM0X3JsL319LW52WzJdLj1gaDhtZChxczs7NVwoLGlWTUhNT11hUVhQVjYydERQcVBQY3tGS189fC9naW9SXTotcn5FQ10pR1t2THx1TEU2ZzRWQHEyfGZCUnk7UWNdYWRPKkZvLEZvUHNiMWZHNEJMK3N8ZXlOXkNyNi05Xzc1LkE1P3d1L346NVhUY0thS2hefkZrZ21YUU83Yjc5bz1bNlB6M1IxLDlIUFJoZUc4QzA6L3RQK0hweE1DbHxWY1FsQ11YP01SfC5gKjBMTU5oSVJzVnZadU4uam1ebFhHNztUP3tbVklcQ01AW0xHejNQWm1kXzhRQTdxQmFaRTVyW3lpRGBvV3BDTDlcWm1FTEZfTH4yNyktXVRwNit9XHtPejExeEpZekhHOWM2MzlhOyg/O2xTTWIpOy9ZU1NYaHxITGAsOEpEQkhUY3FqO2l2e2l7TH54UE5CYW91T3FWZk9xVTVDQ3pOYFhkc2wwdG5kWzt0djt7fGw4eEVucWVENnBQKTApc2lpWDo/a0BFLDR3QH5jTD9pQ2ArMEtSKGZOTFJCV1B4VHNZRmduSm9SOl15WTh4XURqcFNlTDs3aEQ5MFUxdFdILV1KZys5N3ZOW2FWcWJ9dkhqZngyUzcoPSk5eigwa2x3NnNiVkpLSFN1QTJUb00qe1xxNk5bZ3laTTYtNmEzSUMuVV4qWFwqMix0RD9KOkBBb3pgaFx5XUZBY0VFbmdKUGVpOWJ4Yz83ZUF7LEliQlZlYjlAdkVGVl5LR3tOZytIXTVIc0h4akdeenZqYlhbQHtGRylEOW09aS98ST9nfVItQlh4bS5NZHs4K3FSQz81SDRWZDlwQFE4Lj0wTjR2QzY2MVVNYWpzaVVsUDIzQDJUTHI0WmUsTDNecHRJS0loXzF8K31BKFMoK1Q4dUw5PW8xfV9JTGJ0ZHJ1MzZda15Mc0o3TlVDYDNnNnFKVmd3QDQsWHlabFsuaWcsVWdDTltmR1VXQDJXdkw3MW5tVilifFx+QDlDZFE2LEQqRzNiMntQVG19akNsZmxcOis5RiotZipwXix5UXRBSmMrOTQ/OUR2Q1Y4XlNLdWFxV3k5Rm0reU9He2FgbVZscF5pb14sRzV9RFwyVy1EV3VEYHRGTH5nQ0o6YTBEYjo6VDBlfDpfOSlST0dFYylRa0A0LDl4YEA9eDo7SFh1Yz9WXm5QcVFwRzBwVjhNOzBwam44XTJwVHlNKllWYFt+UjBtczY/altLeE07Lm4sQ3ozWmI0YVBIdlUtM0V1ay4zSHE9UWpTcmFFe0ViXkRQcE1hdmlkY2RjP0BVM2VELGZwQHFeK1A9TTZcKmtzV187V3xncVVoQUhyKE8pOVRvTloxTjk1X1VVMVxLaGhJLWstYV5tbDloNXYqVTZxPT9oeFZvNDM5L1tye3lcRX5famVCcXJqd1J1PzRxSz1OSSsqSDEpM31nS3g6emRnW2VwNGUyRjY4VVRGR3c9MnNLY2opVUtbKyhfajl2MWlxQjRTNTgpbFRfcz9EcVNuSnFKaDBDNzZtLFtgWmVyUHJUVWteSVxWW1lrYzZLWFprPVwsYURuQmFIYHx5UHRsKTorSzIzYV9rZWNTb0U2RDFablBAa1NULStKUldaeGZVMk55WjVPVjg1VmV9WEpWUnJMKzBFYS1xSypPaT9yM0JMaTA4YFpleURuYF5FP1VFYXBxS14wNW5zNE1CXVFxSjp4YTN4XmQwazdHaXNiNkpNVjNnLU9FYXRvLFBANnJdfUVBSzhZLkhLLnkyTDhxYH1wKDpWbEx3eE9IdnRxaFNTOjg3Xik3RmhmZSpGMENVUXthejBcdTlQVEJGazluLHwrNj0qelBMeGM6a3pQKD1cP1dlWFlrOjZiRS8wKnxZPzouNXtOTWZtdXRVRE5HRl0/eS0xRH0oUlkyXW9rNDUpPXxBQHRhflp+QWE5dEA7OV9qOEV2aGk5bkJTKkdAWX03a006YlhAODByKGUqKT04K3s5NnhzWzZ1KEQ/cXFAQ3tNN2B8bHBrblBgayl3UENjRGl5RzU9NS1uMEFeLTkwXGV7NWA1PzRMMjJNQWlFalY/bUwobEleaFN3TXxUeCtBa0NyLHB0P1hrK1wyXTh1KmF1SlhkU0s5VDdqey4vVih1LmRnW0p8MC9YOUJLWSlnO2ZuTDpiVFxOXFw9OiloXkkqKWRMczZ2SzNQW3tbdTpRL1NZPzZkcEJDWTcsNXhwMUYrOVhZeFhHKXo7UENXZmhuPUB2NXwoTy98QzEzUWsqXV96K3xndnpRcW9mUD03QWpRREw3dnFlfjIueU15N2MsWnc3NS83eE1aQ3c0SVlQcT0/YU0ucVpGaENUeWpfXkI7ckhiWlBzbFpkSDdRQjZBQ0d9Sz1cRC5jNTUsfFZxfE01N1hFYEZadzNiOHZiMEkzOn57TXd2X2p0Q0cxY3VsXVpfe0hUKERJSnBDOnlHbXY5ZWMpbG4yLVhCVFplRitUbHBSOEhmT0hadm9YN0NxKFtMXi5SdnJKU3YoelBjKmp9eFR5WUp8dXsuSklhTUk7L1dcYltEbzZpKm5lYVg1YTthTkJ7eGdGZVFKUS0uRSpyWlo0NEs2KilZWUJ1a3l4XWxhb1JJLH4qblNdOTcvXXFyZS02OFNYe2tffmN6bDE0eGs6fSprSyx1KU1AR2pPUXkpPSw5XypANT18P0NaW1IuRVdTTTlkLS9JLFVwY28/UnlLZ1dtQVVzWWFzcG9HL0FjV3hMdFJsMnM9SU4pT185UHRMTFFTNHN1WkhjTzdbWS9xUT02Lm5sYlQ0V3s0O3g5X2Ysfm1PYWZDcGd1XjVmemBjTz1lLnFtcEtGNXB5bzhVOzNVe2xyT2RzczY6VDhrVUUzYE1EdD03Mn19dnxzKn5tTUtkVX5AWW4zM1VpeEwyVThtLUBKcVFvS04sVFdiXUV9OFEqT1c5akU2ZU8uZm9jZ29vO2NzU300XmprSURZPXhLQTpmR31PVHwvK0gyQVJGNkEwXUlAaE92U2VCSHplckIqdTZVWTRsblQ6ZE94S1JSOEwrMExwdHNCXT9OTF8wXV5BTllRbnBHNHZANitsVTNzSjlILy5KU3QsSWgxfj02d0c7UUB4VC1hQzMrRU50NlJodkZOZFtlY2FzfmhfS1NCS29PTGBJXmFNZHNoKGRgLD9KWUZfRHhfQU1samhxXHMobS5QOTFNTjRheDhdd1lvLF9SYyo0X3dOa3ZlL0lDckRLP2BhN2BldmJ+Oi1scGp5XzowdVVJaHlXZFdpSjVDLEM9Li9VMGs3Slpeako9N1dkMCpMfG5tQmFJcXxrMGhPOWJfOHlYZmtuTy1zUVVuSHpNXnpxakErPzd1QE9MWzJkQC9mZTFHXmtmd2s4eT9bLDt4KXItRUZGTWpgSEFWWVNuRWZSd2k4bXhsbHE4aEI9Tz1XKkZnLk1aUkBwO3tzYztyK1FSXTJ2VFg/UjcwcGR2KjZ7dGFdXlZYe0Jkc0hHX018cylrfH5yTDB9elQqKlBjP1pKUmQvU2VwSXB1Tn49VFFvR0FsQDNVPWRkY0AoSkV6UVJ2ZTRlZkNYSy5pS2UrcWdwdWcqYXErTTZ7NU5jK3x0OjRLfVtuXFN7Q0twSEhyc3w6ekJZYXk4M2J+MEt0On4rbThLLDdubjNvY24vY19MZl5IL2hTY0R8VjFLLmI2P1I1WipoaDZgX1F4KFNRWGBUNV9SZVJNdFl4S3BNNGEqLk1IV10sY2hOSzdNSUlfXnM5VXZmfmhbQUE5ezEvM25RS3YwSGkvdkpNR1VNNndpdyleZS18fGBVflpyfEpSO3l9dmVyXU57b1BEQnYuKysqa1p0VjJtQTIxNUVSN35kZ3BfQz9ETW9wNGdAZH54TEI4Qik7RkUwXS18R3FRSltpRlx3Nmt6Qmc9XmJSZFVFSjVZZG09X0tSMElbcnsreVp4Yiwub118LXdSeVJ6Y3J1RCp6dXF3Q2lITDtBN3tiRldZe29xMTtgL05gdnsxcE5mKjAuZjB6U3hDbWR6MjQ/dHlyQTlTRkR7ei80LURkVyo2RTMrQlM4O186WSluRz9nYk1eY30wTEp5djJCSHdoe3kwZXB5RTJDZC5AdEVtWVJOaHRmOWMxbXRGWEtAdVFNLDVfKEp4QlNfUGN7U2R8cUhKLX4rfFlwdS16OHw1VXNdWUZZOXdgPTVJZ1A0eEl3dHhkKzpPZklLcDo9elt1OkBAQDhHVE80L05MQDBbTCh9cWA0Klk2YjE6Rm0/bnpyUWBOdkt0Tk9ieHdpV2wwVmc0fTZbQHleX1UqO2x7K3E2VEsvcXNJTT1uZFpvVC1vVGZwb29CMmc6RHZFNm5kZTNuTElvQnRIRkB3VDVUUXJETDNaQVVYZ3RHMGV2KVs6KTlpNzAqdHspMTp7fip9KGxea3hiW09uc3NtYU9tM0wxVioxdV11eGM6XExCV2Y/cyloS0E5VVBARWxLNkQ2LSkwYHhUK1hsZmUpd20yRy09VXF1NnpyckJfKk8uMjIyZkdYNEEufjhdYUpEO2xJXFAte0p8djdvcU1yYzFsNHgrYD8vTyxWMStkXTR2czhWX0hCQlUtMjMwYXNDOj1hOERkM1VpV1lLbTN8LVZadU0wU2cpdHtySl9CVDhsZjVfeD9LcX5hPXdJeTRucy9nLV92bWovOC5nbVpjRV5CQnROaihqfjhYNDNgRW1IWi8zeEJOWVhzPT18MXA5ZWUseXY3d3UoX1R8PXBEKU5iN19CZC4rMkB1VSsoOGBsQV1DLF9AVi9GLEdGaX13RmZBQDNgfj9nSlZpMmowbl92XGpURFc0SEo4MVZiRTpFKkRWPWVhbnNoTUNsR2FWOko5RjA9dypBbVszeUhBZC1uZTYuMGltUHJ9KFdNNEJSMWcrMm1RaThISStrdVJpVWZidWVDRnVadXRyQDEvbDQ1Z15oY11RXmUzSChIOV4/XFpjVHVdTF1nKEh2TjN1eWBWLk5lM18sSzJXc0BTaHdoMWx1QG1eOUhuWk81L2VLNG1AbGo5eC52aklPY2FJVDVuQDZ7OX5kSUhwUS1vQURWNzkyYWFjOGB5dXV+W2RvRGBTd0o3bzZcMjBsSDRkcTItW0xuT0JzdHN0RDddMygsUGtJfWpNKDpuVmRLOGspZ241LVpqUzFgTHxrW1RPQWJHcjduezVDei5iTVAqNmFDMFt5THBcczVfRks5Yjp3a1kwb2dsKntybFhCX2hqT20tLEV2RGNVYHsta2lwbFg7MnNMWks0TnN0eytIMF9TQypiVzpidWZBQGdRaH05Q0V7Y25VNGNWaF9FSX4vMT9WNFhEa2BWTVZoVlU1dGppa0Z8UClwUnRmNXcoTklteH50XnQ9ZHRqP2sxUVtucmNySCpMUG5MYn5LblUtQFp7ekpgd1MsT0JZVF0/cUlybjRlLjhmMlxEQTNedipqQnx1WEBSfDM2WlNHd3lFK107cU10KHdZOG86T2o0aXF8LjBqQCkzWFJoTWJvL3FMV0FBNEFMUyx9NV1RW3VYODo2emAyU2BNWWx9SFM0RT1Id2t1ZkBvYS8sa3Noc0xAVzs7dmRBQDc1LWlCO2dGaD1jbDs6OGF3N0NKKDFAezA6OGA3dyh4Ti5SbElFdDktWnFIUWZ1b2dBOVVBaylHLEgocmBZYDFyKFFvcV9BTCk0V3tYcDhLPSxwdU1ZZHd2SmZzT1FJOW1NZnV3MSgwaTtmPW1aZDJOflRaU1pWdVNEcU9xO3B0Om1sfTMvZ2w2MkV3M0NOcHMofkssNkNnOlkxXHN1bVUzOVg6US9bP35OYDlIZjVXRTF2V3NRMXk9cHs5OFdQUzNoeC1yVElfLVtYaGt6SVVQbjRlO1tKck1eTnM1KVBcaksrb21weGFmbX1GYWhFO3hrKFZGWkwyQzY7ZFl0Q0xwRDgvKWdpY3x2Mig6PT18Sm5ic1hvSW1nY1ooXixhN3NYYjQqNipcdGZ4QylAb2BRNVZDYHZ8OjcxMFFpYCthOFVVeTtzK1I2R2xLQWM3RkVUYkw7P2tcPW5OVTpDPzg3Pz0/VmVccFNJSjNON0xkVXR2RW9Ja15hXW4wW29YaEVkL3g0YHJCbmdrZXYye3UrR1RCdTMpeHZsPURWdjY9Rnh4b35RUi0sM29edXViMGsyWEprMWI6dEouLV1VXFIodHFnL0dEa3psXT9nMjFQelBwX2ZmbU84XXk0R3FDalRCcVMsNzlmXlwsRj0/KVNRXDJfLDkqV0RaK1B0b0FuLUwzLTNAUXd3bmVaWjZecURSRVNSajNQfmNyelZENXVIRmtXL2Y0ME8tQ0cyZjU/VldFezpsPWItMF9Qcjo1eWYsWWVHem85dnBRc202YGhmcm4qXUZrbD0pcjQ4NkgyM2JPdmhZN3RrYTl6QjpSPUF6NnB2NU1eKkUtdlg5aWlCVWhmLi82YVxYdWlCV1oxWUJzXT1vdyhtdXE6UWUwXCspXipuSywpUEM9W25zVj9dP2BrLDhNY29QVC87cFo0LEd6X11ONWAtZ1ZqTW10M2dmT3NfSjhVWHVlckA9Wjh3Y31ebmt0bVdJKWV5b2VtYz1yL1IyenFscF1JKm12Y100fHJ7QThAWHo0emZ1KUhraGhKcSped2lpckJ+cXJoNzBoeHNAbGZ8fjcwVyg5fFF6VStmeHtOKW92TG9cKzlhOFtCNS9BWlNdK18rWmJSTXpqYEgzTzJ6W1VobmpGQShCd3JiRS85e0M7e34oZEwwTWhVTG5ELiwud2NhYUk1fSh0QXwvdHp7KzQublpQNVtIQE05eUtBaW9hXzcqLDleWSl1TTtrcjB1NXpuQHx1U2k2UV8weUE0WSxISWxzNSl6Knc0dnc3WTMreXhzaGspQzAuWHFyNEMxdUBzWXFJbFU/KDBpcGpgP2trRy86PUh+OX4/Nk45c09pTVlVaF9uRW1sb3B9X2U/UzV7Q0FtejV5MUd8NnxdQ0VJKllBdkdPbFlsMntBTj0rNl4xWFBqamBhbnh5U3FlOyx3NHFYQ25yLThJRUhQR1treXVsVUlWLnNbdm97WztkU0hvUFB4bFpUaS5kZWw3TD9ZaE9edkN1TXBwT1A0Lys5LSs/T3tqeHFYbmVSUlRlYSxUMXphK3suU31dPzV3SUZvS0owci00WDtcLX5TY1t4N107MWN5UUt9QywyS3w4UyspajM/bHNVU3s7VGk4QXJdVjBYdz1lSWAyOmhKXUpsdTtFMmB0ZXoreytsM0hmQ3NuNGsyRnR6L35cb1xaXmlKaik6cjFpaihFQGM9R0Z1OkN3KGkyaEl7OWpjfS9kKlFpO3pdLEpsQWxgdFVAfFFFdU9DLV9LP3w6NUR9V0kyfExmUzNffDdOb2JcSXxvM1BgaC13c09ZXC5FWzl3eFBtX113V3Nneit7S3VTRWA6V0kwTnFzW3IpPXlZTmZAeWhzV1lTTDVWdnUwcipTVFUrSi55TGtDRlgpZF5VbS98MW5XZVRJdjB0LCxWY0xpZ2BmLV9FcFZBTjM6TnxdPzRcMHNTSlFbcmN5eD1QVnBQZmlzRD1dcGkwPzdBLjB0ZThaPXNldl91WUQ0bmhPc3lhVnNGRi96V3w1Rzd+aTJJKC1OKFZPfDE4K1lmdmlXNFVmPURGMy9lX3MuMXB+K3Vodik5NUNgMVJPcC9WUzQ2WmwoXElOL2k2WUdRKi9EWEY1fn41KHpSPUMsTlRBTFhzZV9iZT06N3ZEcEw/fEM6dnRiTy1UYU1vYHNKSE1DNj1fXjBpSkN7ejNCcjJURVpjLndSKmhbLyl+QGM2am5jPUB9KTh2ZTJxZl1kdEV8REsoSmhFbFlWLjBePzNuZHM1VD02Rjk3XHU7Knc2fUFAMH5pS25pNU04UT1SWk9XNis1NjpSZHRdYy9pLm97OmhhRTM2WEhockt4cVZkZlUubDdYLjBwdC5PTSt+WFouK0Yua2w3QChHYW05aDkySVxwMD0rKitCZVpTOG5cSGpcdms9OFkofXA3LWpuP1FuNVJDSFtxa3VTQmZ9byowZndZcFR0Si5DYkwyT35JXHpdXXdBcissPztGVDZvK0NoS18tKW1ud047M2woWUQuZFB8ZjRdPy0rV3J6dm50RDpTK2Z2ZENzVVc7cWdUYllPKlQxO3Z6Y19YZCxlYThVOz8oUTFyUUFCdktvLmAoM2JOVkEuK2J9b30qUWNnWk1Va3csQXVKRVVZN0dwXWNXXjpzdit0QzgzXmROMylHYm5IK0h+ZVkyMmFETVRgQkNPYGxdTEVMXS9rVE43WD1VZUt2YkdxamNtQylceTlAKkBzLFhLLnJIYmlbT0pzRTNOen17O0F2ZUc5LmNPak95REhKOGVAXy1tcElTdTY6VylpbTpqWmFRcSpqd2Jwckt3LzQ3WD0tZn1bVm5cVVhIXC8qRTlQO246XS9SeWJBaCkodmtfeTBGLWk0dWRMXVZfQ2xDZWA4Qj1OQn1RcyxyRENVOU51V3Q/bnViVEdifkB8b2ZkQi85Y1FISXh6VFhweGt5OGA/O0ZbVl0/SEA0MGA6WUZKfTlpfEN0SXNDVC5yKV1WZy1NfnMsXEpXZC1cNzdZTDFaPXh6WVJ3T0BxTUZEa15LZVB8ZCtyVTZmKCtebEx0Q2t9dm5sVzBwLXV+K10wLWFUe2ldMV0xQFFcYWp0UkpVMWVhK0d3Xkp6W3h4SHhBOXR9SmBsRTI3aypobVY2UjZmOTI4REtBfVZwcWx5UVI0WWcsWHVhUjh5e3VsaDpOMUpvXzBzQmQ3fFV7VkRKYTR5RkxfKkxkaFVodV9PYH5LWk9YeGBpMTFHQHtpRig6Z2UpTWx1MjVKUTlvdVhQZHhGU2xhZHlddTJEdFZ+P30wQFUwX2VTbXIvPzJdWU1rSFFcbjEobnNsQDVbaHNoZFJydl5rUTdkYHBJSz9bTis/VFwwczRqTmh0LWMve3Jpd3hneDBcaWwpQ2d6YTA2Y1pOZVZeanp9LWQ4YmtLSDt3cFt5XmFBQGhoWTF6P3hGSyxfTzVrXnt9VWI0fTArOy4qV2VRbG5rXX51TGl2ZlREUHAyaHx5cWhEQ1BmY0lDWkx5eFdRYmBcT25PTj8wazFcQG50dG4/TilMaFppfFlZdWAwLmF5LWlyTU9waWtkbUJkazJ1cm8oZitTS2NPbVxmTSpcVmxRWGk2eC1QYSxJUjNvXHV0YWBiM0pZRG8/MGp5fEFBTmJoYUI2QCh6YlNVd3h2aVU6LV84Yixzc05DR2wrNG1GP201XUZ1L1tDcXNldlRsKUltcERnKUpPbTN8enp5KnZlRjpYOns7Rm5fZFZeMy58Y0JgVFxDcnZTMygqfUc2M2A4XWstYitTUnZGM3YtQEReblxdWGE0Yll9aE9kbTp8V11WMjRhTk96Wk1QdUo1KVRncEJlKUNnKFo5T0NjZy5vVk55KnFKcHg2cm4zbUdAd2NSZFZZYzNrL0l+VnVzV2tQUT9BbVNtSld9YTt2KE41bnBEeU45Qk92LlBvOXo0eztyXmdgcnx+bn5lcmxxN3wpd301ZDVvY3YwbTVdWWRBMXVydnhkRCxkbCh1bjFPYD0pVi5dOzIvZVFZTl02eEh6ZX5pTEQzOT9BXipuen1jSz9LS2U/Nys0e3dPakxHXksyUUMuMXBMTGhXfTd+OXlPKzdceC9gcF8tRnBpMy1pb3xcLjl7OipGQUY5LDl2YytkXmBzRURnZV83VCh5OmRiSX17STNgR15UNUdhMEdHXnFfRD1NYEY4P1REKGw7dmwvfSpLekxXZmR9fHUrX0dEVnViKVp2b3VYXWlBXVx4KWtgRzE2Q3ZYSS0uKTprZ2RoTCpZTl9fM1paMVxvWz91UnV4WHxecy5BcHpDWDldfF9qdVQyNWhcUHNHbVdEdDUzKWNSaUZWL2xpL0hWanRWTzV8d0YoQ2tkfGNlWVljNG9wRTNDbGh8SyluMUV9ZFQ4ZEpaLi9lNm5WaihoSFBiYGouR11vXzNwYHBEOTlxbz81fFE3ZXtWZTlkclwreSxEVl97a2tFUHQ9QXRnTC5oVnB9Nkl5ezZbXURJRTpTZFRMSz9OeT9eWUJyVW5edWRUQTpIfmtnPUE/dS07QnIzamRhRzVWMnpXbHxMcWRkTEIpWFRwZmZLeFksNXRTbkdpbnZMSjZ1KSkvXS9OcCl7c0pGRW1lWVVeRHVzUWddVnBcWUB8czJ3SF1FYWVXWmcvQC56YXBVK05PPWtbRlxJQUhXSkFyWjZ6fmd9TSlDcVVdMWR5fUl7PzNUQkNzV2U5ZDRle1d6a1NCPytrTFJIMFRkPXNAUVtwO0Z1LntmWm5ReEJwbHdyfUphdGVCeV1eVWd5alluMTB4SV9+QlVlXTtmXltMQFwvK1FEd3xjblVIQ19baGgtWWB6Zi1UfkxXRXZjV09jN3RIUmlPdjA6OVVwM19qZ2F9Nn4tQlM2WFtlLj1FK2FXTT0qYTU6fGZJPzc4d2ZDfUQybWh2TC4yR2tebEE5O3BlVlwrWHB7dS1YPyo1dFNJYWNOOns6cmktQ35EZndAMlBNTEJpWG1FWH1xMENZUE83TE9fdTFgUTA0THR4KntefVAxXztoazNmb2s2WztQQTp3QnM5RnZMN3h6MEB0WCtTflxWNjNIODFzKnRaeFB9VlEoNntcZkxjTVdFSS5ybW9xTmcyRkxwaFtAfWVENllVWXtGY21sNld7LGx5LHV1PzlkL0JDUENObkVJfC8tPXc9MClcKypKKEE7bEtud1ZtSVwwZGs6VllpVUlEYHpDMyxeY2l3KHI6KW8pX1FBXns1cVlTSSl+Vzc9dUhFQXQxZF13MWhqQ05UMjtCKTtMNDYyPVY/NGo2ey1jdmdNcXgvckJzZ3RMQm1iMDdpcl9uOkIyYDk0ekl+N2YpKjdJRjEzXnNtY1Z4ZG5xVHEsak5OfDRvU21XXzZGcTg2aytffE1hUmRFQCxaNlFmZS04RHtsKCg4YGVbW1YxWHE4Tzo3bGRYR1h1cVN3Ri1SZ3wzelcwZE1fXURPRkFFO1wzUkkpS2IxY1loZW91eDBAPTI0SDtkfXtoM19QUl8reHk2UlctVkdPZVpqR3MyRWJSZCliZTBeOjIqbHBQSV5fRipqYU5+eFNDWEVQcVNbZT05L1NjQW9KOG4xc2g1RV5bVjJeLz9XL1JObClbT05rWUEydVFNMUxsOXxTV3R7YGBcTigueH1RVER5WEloXVhvOkplPWQ4KnBnd0IsaUptdSopa1tGcixWN1RIeEZfNHlLK2B+XUtET206c1IoU1VfeW0/N2pteHp3dzRtUjFiSF9VX08rODtdK2JNVT87SnBANUpQX2g/bEt7VWVjQ2N7U3JzZzdFalYpMmZmOlYtMm5yeDRHX1RhKXdhLm5YNUVaSXJ0K1Y7M1A9enRteDtMXGh2b01+bnVxejgtb2xhUit7KktJSTpUKWozWHRPZEd4OUItQl9OdS5dKTVXOCtpMURuXkVBeH05Q0BXSmxCRkFgT3c3VFlhUXQ3NkFzYHAuNGdAK3c7e1JZaGA7MkYzWE0qTmA0P3ZmSE9Hd2JiV3hNe2JLbWpje2pgOzFENXtrPXkpa0lccjlocCg9LkEwa2tkOmx0O1tLWUQ4NFpUfF9TS1M9dExUNjFPWTtxP1s/aGljVlssanxqY3sqenRhMyx4YVxJVm1BXTJkMyhnWHw3ayh3ZHZ2fShaRUhKbyxQNU9LNzdCcENTQDJaO19wXlMwe1xMLC5cdSw3VSg4XjVeNSlSZCw/M3pOXkRlRnZ1L0pYN2g9P0FUe1V1akJnKWosMj1IYEduXWIwKEEtK3lhb3U3ay5RM0hcKTFWcipKWWQ5SmdWWHReTVg/bF9zcEl+eFRPWEVDZW5JWGdkQz8tfTJYX0l0Wi0tUy5QMD1IMC1NX3ZQSm5xclFxWE5RW1ovWi8pQn5XMTUwXC1ORE0oNi9Efk1mY0I4b0MvL0JTSmU3SFVUV1N1MUU3TXFyXUNcR01VfmRmd2xyUFs7elRvUGJLMnN3XjhAUkFvSygsS0xXL3NCRVZ5KWNvU35sQy40bTJiSHR3Vm19d1FYaElfTUZReVhITW5oczZyL1pYKitbLGpBPVk7SWh9RWB3V2hWazJIbkE4QHtCclRgRC42WXBPM2RWRG55NFs2VXBoaypgaWEsdzpndlY0TzFaeDo7QnR9LVJeNHRCb3t7Nlp1PTtpdFJRbEQwQDB8P0pmSFEycFBZbEtHak1xbmVGXUUvZGs0czVfSTtKLEhddSxVa1ZScEVrcWBEKlhDT0pIZ1o6enw0WD9pYEQ4ZVYwSG1WOEBlXGZUXXhNLE1RL3xdT1F6YXBhS3dza2xJcjZxN1hvVy95KTtgeG5kKXRVZ1RlMGMvcktNQTFlSFFnSH49aHIxXihlTFo7Tm57YUVKSTkrMXBqX1BLeV1PSktBe1tRU2JmLWZcKk9ydkNwU3NFMHo9SzRSMVdbOWVZe2dpZllhRTZ6XWhHX1NoaGZEcTNFZSowRXBwbWcrN3NsVWVCbHUvQkNmMGVCe3VCXGErN3BqOkZkTFpKNWE/UVkpWlkzeVdmM3NXVSo4OWpHfGFAOTNaTHZlVnZiX0Bxa1NNOUdQNWpnRTRRRXpeW3FLSigwW0BqdjMycyhINnd+dHZ1aEguKjF9alIoM3xqW0ArRFpNe31MXXldN0NcaTZzOzYsfHF+MyoyMl9NN35GSj0ySUd+Q1J3L0IoRVpMKEo/Kk0wTjVqTV0pRGlJXm0xNz86QDB2LVNTRXVyTWNnd0FXXDp6X1gsOz1AbXZsYztVdXdmKlJCPUpgVTU2W0NSWix3Q19CKzQqKioqMioqKip0TSlKbHlOZDkqSkJZPypOWHEtKkddUEBKSWRDbzl9WS8yO1lZbUBKNnNPOjpIZGdrOjNISXpJYVxaNChhdV4rT21XPXVCfDc6UDR2ND1VVjBtRSppcmpKRF5RV0JJMFd1djdFLX1hL216K3JgWlNELylbOEJBXCoqd2xDeGRUQTY2dW15Y0Z8Wmw6O3xHWi1uVTtDXXcpKXBpYmdcKkdrWDUrcVRsNEdZVFduZ1tPUz98MF40UEFvTE5QX25qXm1HN3x5fGpdTEtlVWktfjVjezFgeDg/K298XWZNM0h5R0NvNkJwQE1zQ3k9bChELFNMKFNTMTBZXXdSc1B+Lis4SCoqKjJCKioqY3lHeFtIUEJjO2BbeFBub29SWjU4VFpvSX10b1lJMlAyckpTXSt0OVdXK3Q5Nkwpd0paezU7SlVXLzI7L0xBdzhpXV5Ddl1ZbjUzRVNxUnR2XmZJYl5ZW1t3c3RwXGI7WGF2L31nVy8wVi5UfEp2NmJbMkJnKmlvNk13OkZ7bXUwbkVNangsNWEqXmkoRU9GSkd3MVpuTzhaLFh3cEJ3TTo4a1YpMzFmSlBceklabDRUO1J7Q041ZFI1eGJdLWJGL3hRWjtkXFJpQzhDZy5ZX2JVZkpdVF80ZUtwdT1vfGNRP0tUX0NUY21ha0xUfVdrKVo4Z2Fnb0xLdERnTzg3QmtZK0p7R0toYis3OTlGQndWO2dILlgoXXRMdXNpNy1HXGUvTXFNRXd+YF9leyk2X2BzfmBXeTtmdUp2e3pve1JvZHBGbyxrYSt6WT9zcyg0KkMyRkByVXBaMHRjcEhCeTIqeT01XGA6R3pmNHx2LDN1ZlJPdVh7c1IuOEdbaGtOW3E4Y3VmQjVoP2ZbL3lDUFI2ZFJPTUZtNntKalM2cX5wK1hPVl49NHVMZy98VmlhQmxFa0BlX05UOjpVaHBHZHN6aXg3eE9RSS95ZXFuXkVpSjUpbVI0UkduYlZiO19VXn1gVHQ3UXtLOUtCNGJmeShCLVFZeF1Ya2VDaW1OKUpuNylSOVpKUDRPMnFbaXJ4O3NbcHpBRik9bixRNjlXU0gzbFZgWktVeE9KUDldQ2RYYXlrUi1RXGZkalhVQDJVUE5lZXkranpURE1QWTZRZlVKZml4c2BWNW09Tlh6PThkWWk2aVt5XU9GWy8uVylCZk1yUSpKSyl4RmhFMUdGcH5YUzQwR18pamZIeC9gdklmfDlnZ20rNXt5fF8zT2o2QWNVXmYueU5aRHVpcGEwUTpQXmJGOnU3ZUApKHN7ejNScn16RjNRQC0qRzg5VVdBd1hLKEFyS2h3TzZqPylNYXQsNHxfNXAvdz1QLGVKVXJFXT0zdDBJcHN9PUltVyhZRi59KkJUX1FUUX1rN2opOFtPKmYrKERZQ2ZQZDhJW0M0clh3VUNoc35Hd3l+eyx+YWhNLypUYmdbfkhxekA5NWZCMVRkelxmQmAuTisvUnBWYSgpSjFtczJjfThgNFh0Nnw1NDFEbnd+MFBkNUZmSkQwfE1gSWRzU1FrcilKLGczZ1JkeTBUaU9mRG1icl9ELFVzNl9wZkFnOU4qYzBgY2N6P2d9fV1MfUtmQXM1d15SNlYqOTM0LCxFNlIwb11UWDk4Wlg/OFtjOkloXDBVaFpUUmNqYlo6R0AsRHVTWER4Y3BvdS8yMH5+PSp3cWhgX3lYZ10rL0JwcjRXX091bUs/YWEpUTJvOFdoUnBEazhkZzY2S0BIWkxEZDJ1PzBNan0oVWIzMjZlaFxyLnxQKzFEMHFTV2E5bEdLPSs0TTdlUFttal15RnFJTFd0amh3STR8Nl9LanZYc1tYbFd5S1ZGUn0sTWJ7NDtAO2V+QEFtZlM2KkgwO0NZd0pyKXJQUW0qWEVIOU5ROi1XbkZ9d25Ea21FY2t7MVI/Z0c3L2Euc09IXUdEMj9zbkZQTEZ0QXdCSlY6K2ZEWHFzQ2sxWVxuLzJZU1FUay5LLkFZOX5lUm0taEdhak05Wm9aMkRsYjFIMnBGaEd5c0VzRSt+fHBybk0sXn5XLXt6UFJRPWx2ZDo/ZFZcNkctOURlTFd3cGxJKz1iLi5vWUd2L2I1WUdiWV5vQV82TF04ZDFNWkNlP1QwdmVJSSpkbV5nVWEyM28wUD1Kcjl5cTJ4KkRRLE1zfWpANC5fR0ZncHhnOHQ/QnRddClRPV01PXFyXnhpOV5HV0dPaEU9OkV7N04sMEF1fTJRO1t7ZjYxai9ea2opTXVPe0N0bTByMCp9VmJfck44MXBVQHNjP34vLUJRaGRoLitedE9WSzZOTmk9UShpelZbNil9bSlPTVBhMDgsWGA9XnN2PytUVS9xYFh+aStWelE1ZndaSkRzKnpaaStlPXRrYClnKFRtYzpJU2pMOmxIKGpiM2w5cnZJZTM0XXt7RnNJfkZeRHRkQUdaNmNJbGd6TSpPMWpTUTdYNkhUVz1MTihuLVw5QTY9WGwpdlNyTD8qWF0qQCxMXzg/Vn1aZXxTZ25JTjFJYShHKU4zKjhXUHBGRnVoREZGbUhcMlptVUVXPSg0UG9xWFhNZGM9W1hwTXQ2OV5eMUZHc2hMMV82REQ9XTJueThyMV9FVEFrb1lBTFc/SEBOOz00KkxMLkhBLyhgaDFQRitsUDBoei1JUUdBY0l9X1osenpAKT94Rm9kOWplSFdWTUxwUkVzUzY9eTtPO0RPXFArcywvLT1UakxySnBtYV1tfmtYMDFeQ3h3e0kyfWl4Lkc9NE5DNDMoe2dyfW1zNmc9dj01KFE7bXpiaSoyNkV1W1E1TGw9d0JpX1FFR3QqKFNaQng4OzpONml4bm1uUjZIO11BXF5FdDNSPVtvUDpiWnwuaVJRP3wwe1AxWG9xbk9DdV5EMzgwKj1hNit6cVJtVDp1VnteKSlBKDU3K0FqZksxZlphZlNUYVJSWDo4Qlg/SkVQcjFLR1RUVz18RHBdPXpvNTQ4Und9VndLLnJdaXJVQ09rWi5aXUJZSUFwb2h9WkwvckhrN3hRdFVWfkheSjVfO0lcNnN1QXhMMXdsVkN9PXdTdywxYHtjQDVPUFlGeGNtKCp8Sll2SGpJKERdfEJIOF1Ec1o4dmlEXitXOGpgRXA7PUJjVjlCai5pYktHNzByXUpERitNbFJSP21neFxSQj17XDhMSzdXUkE4SjYyWixZRmt7LDhfLmBbW210YC9kdWYoa0BmSG5mVG52VVpHc3xoWGxGM2VDUVN2M0dCS3s/P1hTT2g7RVZQNmFpaHxPfTJlOVpLTC9Eajo7SXAvLk9qSVZANko3d2AoPXg3OTtsdTt7S2J8bEJLSClTZTNSOG1NQT8wKG83ezRiKjB9ZXVaSERwcjQwK2AoU3NVRVh9YDBud3U9QkcxMEtXakw/KC9AOldpV0xFUio3WHd5Q34vUG9gQ355KEJyTX41TzpNXHAxP0AxTXl0cX42P1lCfloyMy9eV11BSV83SUhtQH5Qe1xbZzJtZVNAXlh1RXtAeD1odWp3YjUtRj9kKjdPYVluRXV4YmZockM3bDlQKDRFfWpuPypwNy5LOWVEeWFQN1tQaH0uc2VEWXUpdTYpVGY3SlRnT1wtKl1obFcuUDY0SU5JVkRcRHpqZHhXMSp0cnZLO1h6TE02fkp0RitcYUN9bXp+Ojo1QElEa2YsRGReUyo9YHRRR2F+NUxlSn1CNkM/NVEpXnxMbTtHWmZqSW5EOypVan5AMzcsXW9Taz9vbXZDSHksWjp0cjQ4O1Brd2h0Z3RnTTZDMXtxRG9IWCheQG1ENWJmMlx8LlFreV4sYisuT21pK1F9LkdNU1B0MFpqNipEfW9bUnpTc345XnhKazMqe29KaHY2XGM0Xk9tOm0yZ29mMGVvLj9ecmlBeE44aywwREhfM1Vsc01sTVR0P0E0amlZOFIqLnJbUjEwfk9dXmV5LEUvLV5tL3hNOmF3UXgxMVM4OEgpZ0ZqaGdTXn5LUkQuN21eaF4/WmtJXmZbUj1gc31ScGE6VmVDMnM0T3s2WXUqakB7SkddczBGXjlgOXFAXEtWcFxBQVdjSSwrZF0qOGkwR15FWFNGVkRqfXtNbz9jb15qbzUtWmZRe0hiTShXQkdsMlVNe1UqTztPNmF5P19qZ3F6W2tPTGJOdGVAKU0zUFo1SUNWLGxCb1NKZ1tbRHpKTCotS1cyQFVNSnxOamVbQzRaR3ZSY11cdG5Ybls4Rj1LMygxRnk0Y1A2WjteLnN2U2tjTmM4LU50W3tnNGtNZ1lYcHJQdU1hSzhHS342Mm1RTCt8Y1FVanYwYmc6Ml11dXprU28qOVlNcHVHXnQsOUl3RGtDZUcxflZFNlU3eDdrMDY6Z11NejlEPUthM2M2WzNybjhDNj1bKihuXXRXd0R5cm8sMzN8O09YQCwwOnRjbkZuay1iflFzYEZyWHxbKDVlS0hyK0AwWGRlblZaR1cqQFdHLytPN3BPXEVJQV9KZC5FZWBEOElyN0J7KzhlKDduTnhWfklNUmRxKUBuUF9BZ3QoZ0pPbF1yVHNle1hTVTpyRkpTMWdIWTFeMyk5TmxVTypMTjh+LEFHTC5TP2Ffanlgakg9W00qNFV6ZmxlNmNENTNKUmRGY2ktbjllR1pZXSgoLkxja0xFdnltLz0zZUZBMTJmRU9Ve0psSWJ1Smk9NXleYFQ1MVhGKEBUfThqUGt1SzBuKDZqTS9COzhmO1VzKF9fVkFZVC12THRHMEU7aD8oMVtbUXRcY0A5aGowXU0pOmY4ODA4WW4sMjc0MFFPdmQ6VHZQWjZ0eCxZaXwxKERxdVspNERMQ3BGWzFyKTkud2d3Oi1vVFUrUnY9W2RXSCpnMGpVVDRPTlgzMVJfdHdNY3k9Yi9jXjhdO2k3WFJmWl0yan5nbltIQ01cUmVwTm1hVmJ8VmBhRjFneXguazZVcUY9VVApeVwsOHpPRm5aUWJBdVlPakJpKzZvMld5OGJ7ZmJoaSpXRDV2MT01N2UvYlBafWNYMEJuVSlVVHF5UFF0M2VEflNVWD16aWBENTY5Vi1NZVpsKWk9UFg9MD9lallmYzRmWUBmaWcuLTZPakcwYS5iS2NOQ0ZteGIsVFNYZzRvTTUoSno0LTU5WFpCT11aSmxQMzMoRHdwaXU7SEk9N1pJLEJSNzFnQFcpdHksYyk0fDNrak14MHFPXT1NWF9LY1sqdEc5ayxufHsvWms9fHNQfi4rOEgqKioyQioqKjR7SG9MZ24pQChbdWsyVFRvUlo1N0s/VEkrP3ZuOX52Z2s6XyxeKUlgcD1uOypnPW47T0JtTTtIbVVvOVhuNnc4KS1uN01KM3JyMlcuTTtac3lwMStySFRTQXBXTEB0WTFSLFZHS2lNO3NFcFRkKVlqS28qdHU0SkUtb1g/XX57djB8WVQqblVQTm5kVUBmV1UpKXNsNChXb3F1ejJXdXpIaUpBc2JjVl1lUUZET2hvbUdnSXxnYG9SSjk7QF1iQTM0UzlDX2B1MmRvRnEyUUdnZm1eezYrXWdVVlB9cGRqSmU3MXl3bSh3aXtLMX1pUS1seFgzbGJbTW9gZSpEelRGP2Q9c0VjaXU7eXp7X3tBPS46UjdTYUt2dmJfc1NOQEx3UzRIT3czVDpodjVVKWZmVzlDcixjP1tMbDZjbC5mdTJScmZWZzk6MEMuOn42fmx6WkI7ZDpRPV92OzlJWFJtOnQ5KS1BcmVWa2J1UnkwQ1xPKm5rcER+ZFwrRXp2ZXtYPWZid3MsK3dYfUF1M3s3RTFlZ2ZvMzhsZEteflZ0RShQY28/Mmd7aWlVQW9uTkZQUTdQKWR5Y3NcV1BXXXk7QnlUc1pORj8sRDdrdnkpLzZ7Wlcya3p9XSp7LTswbn5cfDgsOUgsbjtzQTt+Szh+Y25DKUZ7OkxsZ359Q2VAOnAqP3h+c3BwZkNIKX1IQUp1MlB8Lk5ZTSpQRUlBTlROST8rTl5bOlFnVmI6alo4OmtaP14oRS98ZX12a3pvZnw7VHpFZTE1dGM7bC1acXZhaUd2b35hSzFmWjRYNVAsZ2I0QVwzNU9vNmdVLztLZmtocUVbd1t7OS5LVnZfdGtsOi5COGBoQXRVTi1ZNDBURH1cRFBJQGJbX2V4KEt+OjJ7TEJAT0hWa2ZnWShHXWk7cyg6XF5MLiszMVw0amZtOEpXNUlYcXcpOVxSXkVzNixUQk5wOUxXfFRhZltGKFZFRnYvRmlIWm8qOEY5dXZoeH5abVZrc0xUKzF6akhuL0s4cSpOW2lvbzpxRTprN0VgdDkqQVJXdTlIP3FUT1RdYnxfaFBHLlxbdDlddXUvZWp1QyhXYzB6TnhgUk1QU18tKjJ4bl5PWCptZn53K0VBY117UztNOlwucFRTeFBqYWQyMXore1ZIRHpAUGd+ajt1L3VATmNQU3svZ0BTTGtXXypONmxbfjs1P1NfTmpqOkZvW1kyMWhYOGBmZjNrZV5DKHZgLV5YXzJ+bzVhV3NHTztDS0FFMWErUDs6UFpiMykyLDtxKXl8UXpoXUFfLWdTTExJXm9PQmReTnstSy5SZVtiVVl+Mm5JNDtRTk45QnorOV8zQl05Zm40MV99VGFFMDBLe0txMkZZQWV3VUlxYlRsdkcxck8vZFstWU9ZMTZmQHR8RHdIMS9aMCk3Y1dhQVB3Q3YxKS1NXm1jb1k9c2ZhSD17cUVOLW9DMVFeKC0yclhaLHRyZTJdQ0pOcXVnXy8qKmtFMioqTkErKipVZ1ZySjBWOksoU3xITTs0N3h2Si0uVm85WTJsVkpYOFVxOjFAUjI7dUF4L1BbYVovbE1oQTsvdSs/dnU3MkksXXBWPXg7O1xyVWlJfnVZOWRUXkFFOTs1djM5eEEsMnBFTVNjNGJJezFfSnZpKlhpQjlBVXNwXyhXZk1xS2AqPWxqNXBOLWhkVWpmaD98ZDh8eV92dz13QHRnK1xCWjovZE1SXnU9SkVCbjthWVhuUDlgUjIxQC4tZ0ZTdjEsb3w2WkVkVTZuaC1vK116ekFda0koVVVsRjRVZmIrQENBQUFybGZjKTROSShjLm85cnErU0dnQzFRXigtMnJYWix0cmUyXUxCZ0FTKkQxKipiKzUqKk5BKyoqejd5bTswT2k6OlMzZGg7WS4qdDktLl81OlNgK3Q5UEUqTjsqTkVvOXdBeC9QK2pNU3A/XCx4LUlHY3pmXTUxKVluSE5JTjhFfTpYX1J7fEJ1bkB3aS9dfnpgW1Z5PTBlSkhIM1hdfClFaltFQjZ0OSxtU2hbUHdyTm52N3RmL19lRW9rMVlZOSx2L2pdKC9RKW9jWkhmZGpbd0NcWitEeX0yVihiL2JDOnV3SCkpS1tJbltJfXd4aUhlSzV4MnFuRDRRYFM2QUFgOV5YTXpNVzB5O3dTVGdzW1FeYG5hLmYvNVkqOGxsKnpcV3p1c2BzO2ZZNS9AdWlCT0Rwe1NjRHwtLXI3TS1zMzleXnhgbU54TEtBcVJfM3ctUUpEOHQobSswMGB9OnJ9L1hSV3trZkMxUV4oLTJyWFosdHJlMl1eK111Kn46LyoqSDExKipOQSsqKm5vZ1A6MCxZSih8MGBVOltpaTU6V1dFVDlfSjJySjJMbTI7ZDpvW0pRQngvUDAxanhCVDRZUzB7am9wclpXcDs/M0B9Kj9+QFhXU2ZuUGYqSUxJcGFgfShBXzJpMi50MShbRi84SU03ZE50LTptc0dfV0RXYXNlXF00OXZBRWErcC45W04wSChVSFBjaE5ALWU1bk44SVxmYGdqc31NdDAsO01wU1t8fndjeW02SHU6Nmp4dVkoKU5LUSlZQTs9cTpwRW9fXkFNY0hhdS0oeCgxVVxWfjM2T3QxMio5KXUzUnRyc2lDMVFeKC0yclhaLHRyZTJdLC5xZ28xNUMwKmEoczAqTkErKipKWXJrOlw/T3JKXDtsO0o6VHFDSX5CclU6LlhySigwZU5DSSxyXSlJP0dhRUlbNHszT15rblJ5UTk4fTktQ3d6Yl1nej1cdUFbZFx9QS1bV1J2SUxSdktTaltqMGNZblNwdz98KVZiKmFQLVw9b0JPZ1V7NUpHZ21GdDY5cEtBM1p0MXNGU3BxSnRPaUlOQUIrRW9bXypwKj8rKmwpTFRASGlyRz10SS52Q2V7XWBpcm1oNTdCV3VZU3lhSVktNmJAfWNhSWYyKXZHeWw/ajBEW1RdbygtckJaXmFpRm46cC9we2diUl9qSnYrZ3RXVjQzWDJiZG4sY2UsVCpnOC9YNnlVXkNJe0tvTGY1W1RWP2l1Y0AqZmssS3h9ZjFAZlxrK0Q1WTIqRnhuXilLU31zY0NEUGpfdlAoXVg7XnFJWmB2eSoxN2hYTFM0MTk6P2g7M1tONTA/fCldcnZ4RjZ6Y0l2KnFQaFNSMFtTb3EtKX1JZDFqTzRQTXpieSxgP3l5XHtPMS8zYGdZSEBkVmwsYy82e3pNYiorSV9GaHlPVXV2QTNjWD0vTSo2ejBBNThPZF5mQEljV1xNUU1UYV4xYjVOQExDTyxnK0hIRj91ekg0Ynl5K3BlV1lXWmN1QFp+elpfN3RAM0FgekhHSS4uWDIzYFkvbkh6YV5HUCxoaFdfRVdGUltdejA1P3NydCt2Y3NrQHc3Lkd9M0ZBRVM6VFBFVVN0d21rOEkpKC49bFRUMmErcVVGU3dXfXBFMk0zcjV5SXh2WCtWTGA9bFtMK15pTWkoZzFrQ01VU20qYyk1fGJ7L1A9cnJ1aXtXWWgqWDQ4W2IuRy05KW85XSx8VS1tUHtBTnB3Lj13LV53WHh5ck5XcmFuNDNWRFt0UCp1KStCZn1VUi9Fd3o/WD8uRUNnRi5lKUxaOjs6OkFgWDlMRV1sMmRga11hS2cvNjAwS1RwVlsvRFNcRWdEOlhBWXBlbjo2dk9dW093dE5Ue31jV2k4Vkt3Wk5IOi5rWEd9PUtIcHgpa0JMfkY6Sj87cjlAKGlkNVx8N2VnUlAtajk9P3AwcFZvQC1rU3hlVmtJRCxgaW18YXZIWjhRU0lKLD1sXUsvQGp7MmxXLS5QRzdEK2VGWDU1fEJ3OGBaeE5JWUBJZ0xLWn1ISXY/QDR8a1dQU21fQStTe3pISGVyM3d3ZUE1X2xrZz8vYUwrSk95QmZTLTpBMmp4emJnfW5rP0pqV3NqaWROLi13KiwubUBiWUpuL310N2VyUUMrXnU9Z0JoOV1zcnowT1p2M0xHLUdsaF40ZXFcUWZqOXJwV3YvRk9Sc20xe3RdQVIxaU8ydy9hN0pjP1A1VFNfL1IwVzlxYVA5dTlYelE9RF1iM1x8LC9XPUY9fE1QV2RoZzBQK0NhVVc2bi4sWVRjZy9rODU1TTdHeExVOmQxKnUpc2dMKy15RFR+MHpFd3s1eHplSDZ8a1N4NEEwVS1iMXIrXWcsbzFwUDJNKlZkcVVAKEQ6UC94Km91cWtZOSxOUFMreF8/bEc/YmBMeGEyZnVwNmFuUS80c0Z2UGE5LlJzdjNMbChCYDd+Z0pRLl1mfVUvUD1POVUqMnk0NW9aUEBPcmosRllvfTJdUnBffE02S15nUTJySllHdnV6UHgrZ2A0QndJd1MxXV5pQW1YRmdWdjZxXylPKGozNG15Lnl+emA/Ui82LnIwTTV5QT8sM1BGLFlAVVA/SE1HZl1RLXRyKzp3NjpLalJeZnpHQVJSVkZYLTVnKW19akpqQmRHP1BUO3ovNk58UG4/YmdcLTEuNFlccHBnW09aSUp6QTlgR3t2fWY9OmxmempgeDVWSClTclI4L3NCZTksXS0zP2ZXfjhqTHBELVtbfU14P3RiNHllRWt7TV4xSyksNk5jfXBcXThtN20sd0ZoYE5lSDoxYjBYe2pHdUxeWGxHTkF8YDdvNmpiSXBnSmtJfSsuR31oWEdyVUhzW31nR21TLmhpXGVgSSxAXXdWSz9kamQsfFpxV1tKXmZkUEowfjtlO1FJXEdtfElMeD9tenJhNEo7UD1WUkwtP1FZMnNfMXcrYmZUMHVSQ1RbTHp4XUJGM3M2XWA9N2dtP0F0Q1BYKjFHTE56KVpSYGpuXisuZjtbW3c2UTdoO2x0PzZoVSlsKH5Saz9SX0I7aE8tbUYuYHB0bV1TNVNLV0o2KmZyfXxze3s4LDErNkFkT1xySHFLR0F1b11uQztVR3c5TFp8KUZfXXJcLVJfVUxZfWhBWHh0XDlxYTB0dHVZM3QpRi9TRGAsVl01QDJEb3VRQ09OTlpYTFRcWDAvTWYzMlYqZEllY2J3XStKLy4rLU1ZSl81SGx2ZV5XSjdvVTVuWl9ea2N+SzYrSkRjSCpfWzJKNGhPSV52S1ldZV59dzZ7QnErO3xDWFdBRiozWXkzcC49LHQzRFcqK0p9WWJ6Si13bT8rSi5Rd2pcYC1dZT1DX09NbXlQKTJ8TTpgW1IqNWteU3IxM0xbOjBWZl4vXFkubjJsMnJ+cDdMM1c5KnU0dUdASm58ayk5ZChjbjZDckU9REItV2laYS42XHVBYTJjdHdFTzV3RzYoZ0gsOmt6OU5EZVFcMTpfWVpAUGpBYnlzL3IvXk51VHZ1QVhjKzd4TlZTLm5PZS5xR0MsREJ0XjNfWHdKXGgtKSk5e1Y0eUtRVExNWnJ1fDksaTdUdHteaXtZeThuV314O3pUUy44XWFCLHQvQGdAcDp5TWlOYitpe1BSWmBgRGBKdE80eE9gXHdUNzN+MFYwS09lPSpkWHI2LkBeX2paLFE2TEtbSyk7MWY7Y0F8SEk2bW9odjJHblFdQUlITGJqLnQ3MEFjbnMsamtoOWRIY0VBZVJNbk9SNm90L3FlWl98LzpOKDZkQHQ/bEJgTVtPXW1HUDdYZnNafDJ7LUs0dnMrOGZxVEMoLXh2KXBrcFg2NlB5VVVISWZ2VWd8Nmxgd1tKb2tuL0JDREgrSHc0NGVgP1N5M046bUx9WHdrT3AqTUJ2VUBQXWY9bXtFP3YyeywvUT1fPUdUZUFuNChTV1swO3BLLHQoYWpQSHxYZWRaYU1RUUQ1d3RGK3t0aXB8c2xIZEZrMHRBQWJjdlBjN1wrNTVuYzptV2dKbShqM15Tck1WX2ZXZTFjXFM9dmczeFFwWXwvSmB5W3MuTnpgRVtTeF8xVmBebnQsS0oyXGxAVzhlXUxTU0ZVSWRyKX5iOEplM1FdZV5TdFNESjNNW35dKDh4eHNYY1wuNUVdL0tbaDlVVHp4R29DXEViYFlyNWIvK19qazF6TmRWbzVsWDcteS16dW1QYHRcXVFWRkY4WXFmT0hwazRodDNydEtCY3FSbWVLTWMsdms1cVRxXEpfNlpya2RCLUtITWtleTZpYH01P35AMH1QWDgxQj8rNWNAdTZTNHFmVWhBaShfc3huMD1KPStkVTQ3TFZbbG5gX3cqWXRAMCtiOWZyZkEobV1iW2dNOCp2OCtYLS5JMGFSMEtzXEQvelB0bTNPOygvKDpCRlFlaVdfMiw3KF58U1VBXWhreWdPQXtfYnZ4MTtOOldMU1l6WH1vVVEuPVlwbHVsMytlLUZNazBjVlk7OC5lSjZkWWBGalxGbV9rVVt3Ui5ZT0d9QTU2OFZOS0BkQzN2QGk0cnNhQilwYmlgKkIyK1tCWjJqeW5uPzpHLzZFL2dtYF5JYUVDSmY1amx5MX5FXTgsYVFEOTMsZE1iRX06QjF2L1UraXVrSChPQihAZEp0eHpQMV02SVl1c0IsfDpnQXBxWk94TGdOXU1NMWsobXApNFA1dUJfdGAqdHFyP0pINXxrZjd+Rm9fc1xGZ1p3NWBybTlKOVx1MTd6NzBadUhdditYUX5DNVRoN1dJXz9lSVp0cFZKWGUuUF5AYTZTdGZ4P01XNzVLLk9KUFtZRFVCSWFEVnhHbXlqcUBKQTJTLDVIKHJKRltkOUgqQSlLLFlqSGJVL0RaflBkK19IL3BaSERTXSkqRlNKXmstLTRvRVhMa1Bzdl5jNmV8UVIqOWpbdzRaTEMqUShLUFNrYXs/dzpcPU9IP1tLfkdBTGkxYWVbans/XTVgZ1ZvNy5tN0hBVDBTel5Kd3NGYkxEK18xZT83LzU1R3tdSmtOXUJuVmlsPS4qSlBoZ3VYLXBFVipQcDI6MD16WTBCOnZHOFFBU0xLO2Eoc0NzbDldOUxmRntPXi4vKGlzeFltRF99ZVRafm98XldqVG1cP2E4XShPWDorViluay5AS18wRkB8ZHpEbn5LT2VEX1w1cmByey9WR2A4X3hZelt2WmU4SlgxYlsxMywrSHtVVkJbS1RHW1QrTjY4RlZgTlRqR35zZz9bWSpTTVlub1JoZTFoMnk0K0AyNnU1ZGVFNUNRWkhacm91MmJQOTV5KF1FPVF8Y1ozLThWe015XXh9aEJNKTRGWSkpaTBdWntSXmxAe09GME5VdC9NbWZVMFstNXdKOi1mSmluQDp4e2lMWmxQeDlec0paaGs4Rm43MVRYXVBNc1VPZVlqdE5PdlxobEFJR25RKl5BXWZGfmg9XG1kKjQ2UHlXNVxXeG5dUF0pfk9adz9rc1spcT9dV1dUQkNiYHB1e3AqXEY9SUpqNDReai5PWn1ya1RdKFpwUWUwXm9FbC9uclZBYnhcWXNPNDkvdFUrME55MDZ9NTVcXEUvSjpIe1Y3TnU9LlBeOjBULyxHaSxSN35TZmxpOSl0QjhUcS02b2xtOEFuS15MRnA0RD9abXdDfV99KD16b1NxSnpbfVptXVhIcmh2LSljM31NZHo4NGVqanJ7Mkl3cWIra1xrTGpLalhZdUM2VFgsMGNxfWcpLWxzOFw2Pyg1LC1uQ0IpQm0wUj9aVEkzdG9EXz8oWikvWCpGMCptXFE1Q3VrWWpSP0JYTm9BSlw5WTB0fUB9aS43ZHZJSUVyS0BfMUowQEZeYENuRFFwZHVMd2YuWzdkekVsSm9DUjhHZm0rUUd7REAveXoob0BkaHU7SFMuWVdVUkQ5KF5nK3VQSH58SFxrUVFVLnVyZz1HODI4eHxsQnJ2L1xBfTE6QWhtc1lrN1hxbGJ1OjlBNmFwZjV2MnIvW0pXQXptLTFiRkFxOU5qelw2TkJaU0RNXXliZy5NTlJRe28xVnpINVxfNXxUXWNPYWNGWU4ucEAyM1s2dSlgPToyRVNfWmZud0FRUlc6OC55LVpZekV1a0kuNitKMWVpW04yfUNoSCxoRE5WenJfYj8sKkpmaD9YSW9wbXgqU1BJQTNQV1VRTD11Q3p7WmN2Oio9K0JfZT1kOl1STX1MNj1uM3RjUUtdc2tsPytySGNDYVF5Z0FFdy94V1FlSTI1UkFcPWB9WzI1eC4uPVApQ2RrQSgwVjAvLVJ+KzNySDEzTU0/V0tBNDE0ZWBifGp7Ny1SX1pcKzVZVFFCQWxjd2xOX0ZoVy46MV9sZXI4YUI4aS5YL3x4NmBze0xIVjI0UWlAOD1nKEp6RFRNOzJ2LlVbM0VJXWMsQ09ETnNHQStvTU9ZLkBKOT1+ZTooYkQ6aTN3KXRObX1zdGBxOy0wcG8qZGEoc18seXJ2KmdOc08tLzctcisvKVxGVy4rMS1IYVc5KmwyaD1xQyhwMl89WntsdnpfSEphO1ZXLi40QWdfcUBvVGY4SGxJTktCL3JUeER6UjBnay9wYHhYOnVkLUFSblcpYihmOnZcKGw3fTgxbHdKNXQtYm8tW2ZdVEleMmhZV0hoOTgyRVdCOUdpa1BFZTlgKnJYKmlZOjNPVChNaFBqKzk9fH1eLCp2KGUzaU9Tbk4zcngtNFlxNzpsSHM/RUAuUnR2MF1gMDl6LyhIQVJ7TkpyT2JuZUhkUE1laFxVUmw0MlV8UltpVDpAUHs5ai41c3Z0XUI2SW80R2ZhRnptLUxhM11KNTdBKXEqSXY7PXhjXmZnLChyVG00Y0NDWUErP21neV1OSk9OP1trQm0vMm8pTH5fYE4wYDo0fmMxYmspWV9+TnI4VUE7UWFPTE1mcEhBSHBOSVdOUGVoK018T2ZVWmA1TUwxfWoxXyhBKl5Udl4sO0UtVV5cO2lrWTBGOlpnRlZ4XlkqOlI6TGY9Nk5AfEEuU19+ZUZqcCxfSTRKMTReXnxNdEd0RUVvQzFBVWpzR0FEQ2lxRnVEYjA5dlI3YzVwYztceC4pTH58Qn1veE9eZER+a09cMXB1WVQ2OSt+M0RXaFJYdThbezJoYUxtWnhHKkN3dEUuQzg2KT1mSHIxanp3MEtiQy1VWEMpQGlNOChSX1YyWT1YKlU7RDVaZHkxMX05TFw5eVA/Si43ZTV2VlVuZ1BCV30oPVhfflAoOXxXSDs/XF8oelB8Lj1xVnsveW02L005fDZsOkFSRTVRWUcxd25uQWhxaXx4czYsZXoqNTdXYkdtQis7eltGfiw0XG87NFF2b0d2KnJscjFdNT1DMmNueFRZQl11Km9MRkNgaU8rMV9ELzFybmxccV9NUHlKPXA7RihCU3FAYnE4dj9VV01NOmc1amBDMCplKjhYXUdkV3otTENtNE87YVg3KS9zPWFwQTJSaVFqRUd6Kl5zWXpJYzh7Xjdrd1lcfWg2NHpeUl8yUkhcbUcuT2oqeW8zQTJ4X1VrNnIwPXFfL0V2eHxeemxyUWcvVkI7eHgveVNQb1VrOXJlVT1salFkdF10ekdcQXU5KFRET2l5YFApSnYrQ3JBbWt4VG5gaTZLRVlkOEdlK2hQaEJZLClPbipbMHpiQ0RALGBWb2BXSTZcNFJePXA3cEBtZEVrVzM/NEk1K2VtWjNENE46b3p9d3hxSlJdc3NgbkQ3WjtqP0hPdE06LjlpWFI/UDZ2RVZqcH1cbTReeWpXW010QTU1PWIsaWMxd1lEKU13emdlSF4tZXcteDNdXDB8K1hbci85Sno6e2VfY3IsKkhvPzYwY1VVc3xtQTNMdGldSDpRT002MmpyYDVsP1FjNHFebnYreUxcYShGcl9Te15+c3lHLztWZ2ZkQGArZEtpci00MDlmYk16dWlITlF+YjFdOzZ8cGRNKztBLXd2NkM3XVIwdmR9OjMsUSxMZ3VoVnFPUk06ND11TEZiUy1jRn5eYzYpNTt7ZUp+KTR7b3IqLWRufTBmW3VVSEN7a0osNTV2OGBCXVQ9UUJSOzttUVQ6RzUsVDsuLTZnYzAtUEtuOjpnTXo1Y2QzYik7M19PdmpkRTBTRFRYdzY4dnBkZGs7bW5XVG5pSmkzVCtxZExXTVdEWSlOQVRHe1x1TEtjOEk1LytLbX1zMVk1bXR5ci9NMC9oQXo4d3B3QjpKQEd6XCtvQzdKZmssVDtIKHldX3FNYlZDdEMuOEB+SkkuU0t1YF5ycWc6d2txMi99RTldaVhrLzpmU2FiWnt9NTNcSDpMLjBNZV5Lek0uVWJMNGArRjc6a05uYlotRHtbS2U0fkU0NmA/NEgpNlBUczhQMHdBfjRUSW13d1wsP0w6akg2cS19Q3cwVHZCRjBNVCgseTJmOihqSDlEME1FV2hnQmBiQy9heF9DaXxxZTF6UnZeejljOlxNXkZNc1Q1WStXTGxNZn1oMmZBQD85U0hSMzVLSXUuemE1Ml1uVUl7WmQrYHlYTmZgcnZueUZ4blg1SVJIRmI4ZUB6KVNBTElyRkdYXEpyamgoZ289Zkp0d19DXT9iSGJETi94biw0ZWgzbGV2bG4xV3F0WkRuMmdGMUk5Z0FnL1E1bXp9Uy19dVkqdklndXJvZVQycjM0enVSKX18LHYyO3phVF4qe3dvLWBVSEw3USxoQkJlbGxeNHdQQmgxSSpnNnNeOzBOXnIua3FFLkhyLmZzdWRRcEY1XXZxNl1EbDF7YDpfazguRjVOQlw0SXh5SjFdNnFmWz1MUSt1bEhLLFBmLktUfEFyWzJ8YiooKnNUeE92fTdhKGJjUTM2anpXKVU0UE5JQUcrL1tHQjE5Py19LytscChkY111XFRKQ1UtfGldVGExS185YTg3YTtXRit7aUlMd0NeKnpiZklxfl94QlZYSjpJXGR7TSs2OlFTTTEzOVRvU2w0fXB9ZHJbZ3kwXEBRYnNoVTkpRmt2XXZ3KlZsXT8rSj9FYTppfFhyLEI1RWZCXTtWOzRUPys7bWsyXzsseVBvakA5Om5VaWpbaGtJLGtcSE1XM2ZlSlZbQ2ttRDN5T3ptfWxAUFhCUnJcXz1MVGopV0E5YF1pNFMuYlZ1NmBkLEt+UWl1PV1nSnJ+QDNQLGRvLXV8R3tqSGYpRm1oR09yXUNfQH5mQ3ZhZWx6b2sqLE1eSmROdntRQVxeKEkudis2WTIueUV3XFZ1YkNJNXc4fmxAWUpsdClHV2tkcEU1WitSa35cUnJaRFJNPWZhRGVFakFaTkVWbmlPTS4tNFpjVlF8L0kqYFNXRVBhUCtAYz8zQSpHY01tYD9Vb1guLkY7YzZGQ2VLdzVhYVhjTCsvXyo9Zm47SVdzW1Z2c3hlYmR8SXwvKXJTXjZlcTBdTGtBdChGU3R0czZ1ST89WVpgXW42XUBlSCpsXndbSCpkd0U1al1ybEE0X1MsRTMyditgLi9rMURaRSkpVjFAQUkpNmQrSzMyN0xCOFM7QTFEblZmRWFDLEc1OjdfSUxlKzVQcW1MeG1Vbz01cHNAVmk0cGd4UHwxUWFJYkpEOVd7azdId2dneSxYLGlmclBxOSozMTRmS0gqSjNbVjNKcUF0QXA/NChxd3taNFNRbnJyYVRATjBBVUJuWC1YRCxbYUdaQ1lnLFw/ei1TUHpARDpCMzhsMTliL0tdcElQKjgwfm96OXNicGdiV2QyOS8uVjZ1dzZ0NFdLVDR5Mj9BUW5Zai1SSlFxUFQzNGBqPzVZRnBNY3V8LmBrXW8zRnhfUjNhQlo0dntSZXl7T0BZYUU3bU9RczVvNV9wSzZCYkUwQzVuNTVpZU53N0NUR21oMk1sdCwxWit3Wm0/cWJTOXsqb2BnfVhOTWd5MlZPLnooenFHYV05Z0U2dWN9ajdrWWJUen52KipAOV5DT0Zja0ZnfURCN3t3RmIrbj9gd2BcK1t8QUxXU3ZoOHNGfncpZlVRSWk6U2AsYCxNPUgwaUhwQkF7LDRCKzpZKHV3b0ZATTYtVFs1UGRJXUQsRnRmSUkvWi1lQGhqelNQLlMyeWA3PS9HVDhuXW92bWxVe0s5dXRpKy1ScUxxUXRweTtlTX43dCpVSkk9bm5wMywpKEo2M24uLzRuQzooRWVKa0ExUkIrZ1BAWzp7K3ozKCs0Yl0qc0BmLltmMlxPKGNlZG80P3tpbk9daEdvS3NtO056Y1tjNlk2N2JPXXZRK3pGOCtgZnxRUChiLVhzKXs/PS40K2hRdytJdmkpSXVDfmJkP0FWe0NbX0tDU3x4UWw4a2JxOVZoXl9EQFdWO29CTXhzMjtNQ0RZOlt0TD1xYllAV1ZoenB3W0YxdSo/K2xhWWs6L1JqT3hMMEMuK2dZYnNVbShPOytlTGVPYDhybU49bUh3e3MxQW8xcjBHLilxOls2KWNxQTdaaFM/WWRGdWVeS2RybnkwfDJeMEBqKUA9MVt+T3JOR1Axd1lyUkl+Z3ZMMWEzXGtoKCtVfG1hYHUrOkdmU0ZSKi1hOnxQQVdgYlBGOkkqaFAyVGFabXpLVW80ei1KdndEWlFtSGV3eSloblBBLlA7fDJxcjh0VjNQVzJpVkRlc0o4bGtbNEE2aHN4Ky5rSC1ney5LSnVLV1tnNypTW3V4UzFYTnosTzBESFN6Yzp7XXJqOUw1WHBhYClaOWFUMHNJYGg/V2g4Wmk5LzpeWHw5T0tncSxDU1NURilNY0BYPTdfRG5mKTZKSnpqXlUqXnZic004RzhzPzlGSzB3W0ZDQCpfRCtfQCgrZjRkYlMzQntCRT1hZTU9aUJWMC8tMlFqMDl8anJHUlc9cW1sNWt8ZjROY3Q7eFowRltPfH5xT3FpXT91OmNDVllNZzE7OmEsOThZVklyY2hFcWp0MjNOfjBhWmlQW2pLXEVOUio2aDhhazArbGZCYjdwVmg1fXszfHVfeUJRKHZsS10vLDVGQVVVcTV8ZEB4YFZwQHVvNjE0VWFZRylJKGJPYU0qd0ExKDd3Q2VmLjVlcGtNWnpheV8zcl1BXGQ0SDpZeWhVeVBnYmVTdzJiOnByL0JSNDtQaDprMz0/NjIoYHN0MEdoSzIsN1t3NkpxQ2VbbmNSbWo3N2Qyb34/aFNYS2pQKVxMWk9qNG81dkp5blErLjpiZVNmN0tLO0ZmRGYwUlsxZFRlaSxlUGUxZXpTRzRTK1lfKnZBYDtWb3pwSXo5N0tyQDNiVUEzaDFBKlhuSHZBKmhLc1pAe3gqZ2RkN15FKDo7MHV4XitNX107Z0Ffdjt+MUtacFswNWxpMFJPaX5Ae3AuRzJWQjdQc1gvM0cvbkZeenRlKWJERTgxWUtKMkY4NXxddWR8UWU4aVl+Z3U1YURhTXB6SDYyY0NCT0ErXUJlZUUrRTRwXUZmajZ6LkpRUDMsSG9xalUtLVczZG45dHleNUVWbTFsMDd9X1xPcHZpe0NlP0RDLlVyc3xtZ2BZY2F1Q0pSeUE9T2Y9KXdOMC00U3x8WmlPVEduKj9xWHU6R1BSczNrXjdoNkVeOjErLHI0ZjhjP3MxfGUocnRwZ0lNbVRQUFkrRSouTDJVVztWQGRZVXQqY35vLVYxNlNseGdOTzFCQHxAZkF7YEUoZHpsLWosRGpVcFU2RG06XDUzbyksaGJPaTh0fHBeOlFQdShjMHZ4Sl1kV298SWhDK05CcVFONysyM3BodHF+K2VGSVF0NWtGSDB0VjkzR1RtRFJudXZsdXlpTWFuRysvdlQxTSw9a0ZycipsTFM7NTlyd0BUfj94OTZtXGR7fSpyUUFUeDkrSCsqbXZ7Q0pQVUBbXltRVDkrSnNpOkdyOnsuaHpwOnB3P2hMcVB5OylmQ2gzSVtvYkFbVURLX1psczosUjk4QnlyV31BQnY5b25HMUlIMEU4aEJMRnkpV0BPUiw7KWBIRlNsO3RgVXkrXEJoLjJuQzB3T2tyVnAtUFA5cG1ZKHNMVlw2Vy1LT14vWFZmN2lMKVN0OktUZUV9TV43bi0rQmhIKXZNNXZCZmZ4ZGlaKXs/bn1IZlBFLUgsajBLdDp3YGJkXjE3S2RPSX1ZfioqRjFFbkRdLkdpQUFzNWNfUUwpMFBubn1iYjg9aEw0fHV2amkrWDU3bi5mZEN8QlRvRFVjZWxDdX1ILGszfm1gW3A4KSprcHprMkxoVVpMMnMzSGhSWjRHWDRbOzVpXWM6WHtCa24vUGlaL1d5YWVKfT1nT089cGVcKXt8QlhkelcvVVZMNWl7W3xDUEZEbCopSzJBW110O15iLnYoVy04KkJkNmgpY2BXMmhyZkVbZ0VOfmg/P0ZPY0R+RFNcfDd4OTl1T24uUygyckd7N3lmQVhIdV4xalZsWmt0Z20pO3Y4OlgqbF9Yby5NaF90NG5XcmNJXVdUQz1FOmcvOXR8SG5TWER3QH5qWmEzTXUpMXI2dm1HZy0zY3A0OmlYP1tFcjljaH1OOGpuaStSdUlsZ3VyZ146MClcP0pkMUtXP281KHc4czhZTDlmZ106XnBoY0F1UjFKd0puWHBEeTVXS0I1fD19cF04fTlTPUN4TnFpT350fF9cXndgNU8rTjktd3tlWW1UPTljTnQ7fFooOEJIVEJrOzF3RXNyPWZebH0xRmBtOWIofDZiX19nTl1EWC5vKWpDQEZuZilAVjRpPUQsLk51VCpJTTZ6b0pydHcrODA4Ql9aY1hqS2pbazppT19ROGA5O0Vyb3tyeWFNKGAyM3xzaGptbGFRdz84empbZHBONjtWNklaZURiYmEpWD84OURdOFVMSVMsRSp5bUdPfHplTT0wO0t3KGp8XVBAdURbOmF1KXhWYE9aXEEqcVdwMDdVWnZ3X1R8WmZFQWtlYXk3ZGNeQnByOlxbNVUsT3ZLWGV5e0pyOy43OlErYWZMSEprZStcZChUL3NWWkxTbC07YUNIc3A/R0FJO2FLY2I7KjJ8P0lrUTRjcF1qckBvVjRWVFQ4fipZXTlLSVdAXjVFLnRvWy5kdCtGcTtXOmpyN2xWdVBqdz9BXSgwX2t5OVlbbGN6Xz81T1I7YDlCLDpMKlFoLkB6SDJPSmtlLTpOcEY2e2wtOnkvLCpJUmhVWFxVSy1MSWdeKEl7OVwrd2Z1VDppWEUpSEtaNTQqbGxzYXV1d089ZlBsYFs5dX5TaDFEXXNubD19LHpIVndoV2JZKFwteGU1YUMuTiwvdVRGO0Z9Ryo4WTZhVkpSLWhxPURxSDJQY09pO1hCcmlZamlFdkApLDdNV1p3V3ZHaFRpKFZbTX1oZUBIUzhGXWQqZSo/ZXxDKHlmdVhRek57dUZcXDJIQXk4YmpXb3hVXWJLTW9gYH5SamUtLlh4bTBOV00rUlNmMUZlKlVWQCx9QVdYdWllal54RWhIXy1ecTlbMClPMi81THtFeC9fY1U1K29YZ3tYLHpXQmJOZ2pZXn5KTS9jKF9DYUZaXV5CUl9Mbj9MXmVANVptY0FPXE9wXWVneF5qLXk7MWFMQFw9L2o/dWFwOnlTLlp8e35QKHF4SnBHfHF2VE0oM1Y9aUopUHhgaV1Jek4sPSloYDQ6bitUckBudThTWFFzU1RJT2dVR1BPTnU4fmFhcGlhWXNtbEJBTXprSmZffCg4MzpXV2Q0TlZhbSl3SzF0LU4sZ2lqRUssY1JGR2k1PU1WcUgzdGNcM21VP1QrRU02Z1QoezV0PyhyTjtxV1BpUFBoaz9tZUFoQ0BVdVd1UWZIMCthZ01aRnVaeUErNUxLTDN2Qmh1V31GSUVtVTh2RExQXWQsbDYsQShRbnBjKXg0L0M3bnBdZkZ8d3txbjdAbTNLRy9SLkQ1XGNHdDhsbVZcP3MoMTNKfjg5YXB8TmtPYlR+eipFKXBQWl1YSTlmPXZqZlcqQDVzQz1qWkQ7MTd7SVQtfTVILnwqL3xfQTl2SXpwPyhdY05qSVdzfFJLNFdXbmA3L0grTWVzb1hMLUlYMkZMT1d5fmJpVlstL21ZWkJJOHswOXx0M1ZZcWF0Ujgqczo2MzRQe2leTV1ERnVzNE4oKTJ2ZzcuSHJ3WVgvW2p4UWE5bmdwSi4yXFNpc2xuKSxeZFpmWGlPaklcYVNWV3p3ZTVMMUZYdEtFRyxVKi9IcGFXKCtcdlhmajhjNlFEeURna0RWfEY7ZWlCYT9tST1lezooelhDLGJqfltKdmded2pKfjFGSHA7dFVMNmNhKW91VEQ3bGYqLmNDME0veTloOTF7cHAtYHhHXHAyTC84KDFiYFZ4aT84fFRkS3VQKEpqQGVcLn5ZQ3ItO14wa2xqSkltOzpNbFx7MShuLkRMXWtJflAoRHZtZWY5ait5Zz9tUT9ofTt7VFMqY3dyaUpSfE9yLURSRDA6eH5lXlp6bVRja3g/NWI/QFdAQkB3RDtgMik2bj1AO2Q5YDZyOFZbNzI3S1FZfGNtRERTKS0tOXNnXFVZb2xXcU93eUV0b1VRSGIxOFp4RWhwQmFnMkFHNUhMM207YnlsKGhGNW5sP2Ffb3xGR2k3R1VXO2xbYmhmT3VDXTA9QVVKVl1ldkUsQXo7LV1kdFppYCtDY25tP3NhbGt8P1xiU0tLNytTOWsuYywqVGpfY0x1V1JuYj1TVUV6QlQufSxUaEsrYG1eZ1s5V3o5OF5ZS3NYS0Z6RGdXejpbbHNxc1UwRClnbm1OcGdcX3R2ekg2YHsuQXtbTEk6N0JdSlVdNzdFbChIZlRzT3NCeihAfVd6VFZqfDtAeyx1fWE3aSwuazlaNy8yRjZ9NFBeZSlIUEJUcT97SXNCVDY1YjgvcUZJeUJmbzRPTTp6NVp0ZVZdMGVKVm9TM1E3flVHWTphdFtqfUk6QWQpdkRoOGkzfEsoMm14XDJ4KUZmRyl8Vkw7a05fe2h3P2ErVjdNRSgvSkZYWVQrVzFsZEFIbC1fWFVPW2VhODJGXF8qK3sqe3krKXBLbEJEP1B7SEJDSnRpXTJsekJ7WnJfLXZ2c3d2T3BweXNsVywqX2NcOm5BTT9vO3pxPU1zRk83Vjoyd0JtYExMSV1uZmg3M25KfWUpK0QrT2dgK2VxSGgoczgyfFxqPUYsXEdkNTZuaUBreGpoMGs7Q3FhSClRMjtfNG9kMC4qdkJDTkBqdEI3Lmk6OnsoXTZaKmFIbzdyUztRXko2V2dULH4rPUBgOjJ2XkdSfHRLMG9WLzpvXXxCMGtXVFZRSCsxTGZ2bHF1Zn01d2hRQ2pSbXtuVGcsRCpWKnxZYjp5QihcX0RhPUh2OGBWWEVFcm57O11vLGk3VjQzLTVlYyt+WVx7c3N5YmB1U1N7MWtCU3ZYYDVIcjFbSjhBTXc7TFdeay00fEs0bTt4aHFmKjBMPVo9dlhFWWZCbjJZbGNlckkuZUNMUU82UWF5WX0tSnoySkxaazQvezdSMnRUSEcrU28yMnB8LVpIRHY6ZV0uLm95Tlg7UzsyV05bUVFCUXpnOVJ1ZEd5eXlQSlFwek5kOXYuLnpnMFFBdTs7M3ZTOUViMWhBTH09YShxfUZpT3hGNEY5a0psZHh4O0xELXB2QUZCaDlGWSlVZH1yY25uY2c/dltAVD1VTn1jdGJ0OD1OMF0qSGs0M2trM15eUTIqem9LLn1WdSo3QEw4LS55cVlveTE4Wih5aG93d1RETzY9MS9aQHdNU0xWWkR0QmNUTnR0LDR0fFx6VDtofXczXUQoMEBEfUpFdl0xP0JPbWV0Zi9URUZWM013clZ1QVtfTkYtLzllOzg5Un5IalkpO3RdKj94czRASmI9LHhcLTJfTCp5WUBETVFtSV9IWTJEQk43QnAwN1hZMjR+Y2VDMGMva0htUVFcdDdxK2lQbzpfMFlIQXstY3kqeDtZeitkVnNlVCxVTDdgUFZuakFxVmUuc3djb3dSUj1YWFN+VmFwTzRkLV42cXM0RSspfktJdldyVXJGYGFkO0JvbG1xaUdUOj9FWEBNbXcpc0IwX3BVb2ItWkxgLjJibjdlckMqXS5XcV4xdXZxXXI1LTA7ZUlIeylXRzlqTGVfbyhwS2JHOX5cd289QlplRig3T2NcUkxCWGwsQT9UO19JXXNvYi87cl5GeVBMck0qQklUNWZMUXxTbjBjU1wuUC02Xl4odzdycXhycDNiKEBQeXpiR3ovSSleT1YtaTRcRF9EOylgWntafTleSy5tWTI1VHxULGdbOntwWjFSfG9aXndQTDVMLSw5e2JwfEEzUUArXTBJQjpvPWhmL0x6Oy0tb2I6V1AoZ1dPbUh2YkcsantTZ2d5b1J6LzVRRkJSNzsuMnxpaDQyZlxgcWxUaGFqT0FhbVR+UFJtRmxYYER4WUljQ0t7VF5kbjh+cEhxNngxKVN1SGQzUkdNOi5YRFdDXS1jamU3WEldfUUtOT9eaWp6eGo5aHRQM1xTcFYuTT92KH14c0ZzO2R3XWQ3Wl1TNSthbH0uajlDdm1fej1SRmJES29GP1dxNFZaKnwzTmhubj1TMlJsa2NsaThpMnRSNWphWl9EO0k7dGBFRnY5fC5Oe1luSUExOUEzKUNcRy5BeWQtTEU2ZC00c2RHUipPWGQrMl1aVzl5MXo4a0h3P0Q3W0w1XE0xUTkrdHAxLUFNenh6NFBgcjBzP0t8VW5zY1piKmo0VVtrdHRibWsubHowK185am1gdV8zelNfX3w0QzBmcy5hTyw/aU03QkRRYzFyWFpWenc3TDh+WFRaX2lRSEBbbV0wfl54Q1U4bXBINVdBZi1aPTl6eSpDZjJtZ1xxejlxNi18YHlAbzM3e1IwNmJveDoyOUpqSShXMktZckQxRWc2cmcydV00On1UZzpbZExJS3FCbzgpbnZxWF1gQ0Nkd0pmc1hPdjU6enZyakxBfF9sPXk7W01GZmYuMl9WbWRMY1MxLXp6c0ZRSWJnSDNdNyt1bzl3dDErVlJUcmNjZ2RpdF9KWllOTGpxKWpyR0RVVl9FeC5VXkpRUFxTNFNHVjVkTzNeRz1gUytbOXViVnYwe3pcUHQsRENZayt3PWU4TllrRGdQWDl9MnlfPUo4LkdVdTstSWEtbDQ7MnJTaHltXihIX0VxbG5RSSg4fVhtfTpXLlhqUlF6cV45a3piNWJyVUZYKVotTURbSDdOSXlPZzVTQilWbEsyZ2tKSnFxfGtxTn1vOy93ND0pck9kY1E2bCw2RX1kMEM9PV5FblBmREFDXSs6NzhfUUMtQks2QzVFXjR1ZmtOfUtuK3VCRTpDRH43KVMzZClCTWkxbWFBai1AVTg3bFlzQ0o2aEQ6MXJmXTksOmd3QVNre01FSk54M0F4Zjc4ZlgvUW1lfExuK1gzP1gxYyhmaypKOCthemg1MGNlOzdLODp1eGlIcl9Cc0xhKWUuWmpOVk1UMzVda3YtPzEwa1tTPV1jO2Vbe0A0Q2REbm89MyhZL1RhO210X3wzZ2IoOj90OHMybm1tZDRRSk93LipWZ0hfYE9aO0lANXQ5aSowSlM5P3B7TzI4fD9gKFlBRUBtMnZ7fVVjbU11dVhEKFZSZDIrejFYW1RuUEBddzpkQDF8YjNSUihYa1w9TWBBfjVaLEFfei4wRjVEXTpeZzV+SSpNUnJabWpBKn1yZlxjSj1SZnRTUHRuQShmQztidkhJYjh1UFV2TXpRMm5NS2s1ZkNJR28oO3F6dXtDTldjdn5janA9Wl5wdHt2RF06KD9MeGt6dzleXldeQFpYUkxuUUIqL19XKjJTRDM6b3xZS0ZuNWZecntWYU91YU09e09nQW5dMntWQj9cZF8/bXhHfTl6KW9ELWRxLlZUSjBxKHppcjNLP2cuSilJcVZNV0R9LF1zbkNDdU1Cak17NUR1cFJFVHhLXzlsWWtHMkZTSGxienhDWyp2N09eZ3lDanVybEhyZl8zMjFPQVEuTVk2QTNwZXxeQ3hlVXRpaDdNRzJ5ampicFdCTVQ/TUUybl0vMVtFNSsvT2Vod3IoVEo3KCw7WWJaOFxHT0EubW9qeXc0fmY6MEhNPXI7eitJMDRpflVVUExzKlZzNms2cVNELjFjLUksNHwoX0V9Yjh7PU4xXjNFTXRQT2BcLmNBVnBDWGpIM0d+YTg7WlxtPUdaK2x4STZNSnozeDo4VlpJSWVsQml+XTdEdDc9flNbey5kYnBKR2Y0dih2Ty9xaVRzOmlodnheUTFlcWE7YEx8OVgsVG9qeXtzbXN2MDdXLSgveTcweCluWld2Ulh+K2J9Ozs2TVg3aH05TV13NlxBbXx8cWAsSywwYGpvK3BheHxuN2ZVMzhJVHVqeWtuVTg9TUlhVlBbMVF8WEc5YlE0ayo3R1gyW1N9KldoQFx+QS1UcDpZZC1dTk95eVZvanRrOFlIUS8vfD9VYHhVYilwR1U9e2ZxVzs7SXJZN0oxW1BwNXxdXGF9fl5OT01yXVcxPSliS285M3VcVUkvTGJqOmAyMFt8MkJJcX5VYypPXzM7dG9DZGRKQTo9akVGOXV8O1ApdGBkblxyVTVoTkpveG51UW9WMU5Te2ZqKD9vMTY2aldpeHxPa0Y1XGwrZEJBLjl8R1F+YXh3XkhLN2x6SSlBO1o0ekMyajhpQWJZZl4yMVY6eF1OXmtgXSg1WllBXjYqSEw5P0RQdz0odShgNGJfKC1sPz1QVUtfemp1XlhScHpLY1RqbzFFOXJnei1KeFFMQVoqbnlqZChFSD9IeEJaNWw1cnFOVHwxaXJzZXVbZ1NcW0xHREEzW29LKGZlTl5EfkdmQVopLmVJKC5tQlF9TWV5SW9vZ2NiMmdLOHt+SXsxXm1EZzhVZTgpSExuMHdoPyllaklVYU9ScGtrPURjYnx8S0ducXpgfjI3fSldb3VpRmczPWQ4X2QydldqdkZKVi5OK3NGXTFzd2w7c09+QTVaSHFgUUw5SyheOGZNYS9JXCg3czY3O3orMl1tW0tCVSh7akh7SUBBO2suZmxHci06PzlKSTQxRWN9cE9NKzBTVj9oeVZkWU9zRltzRkFaPythTmNgeTVsKTosUUcxZFdqSEMofDVLKjExNFtOTU1eKDhsWGpEO0dCeWI5QTV3Ul5famNAMFNAXyhQfG9JcHZoMD9dTFc6OHRfej80N3QsfXldT2xQXGQyNkZ+N2x0UnY/Q007TENJLVhJP295V297bngvQFBMeXJcTExMKTt0Mjp+Kk16QkE/PV1HWGpOZ0ldX1J6XlxkN1BOM2Y6Q0kvXEhkRDFsY2d6RShGOXExbnksMndqZzleYS9CdC8pSDRCSlxrRjJKMGdhPS5BaC5SOm1pUDBtVmNOTWAzNF1vU15CN3JEKEo2enVIVy11XjhvOlxnLntAMD9aMkB0TEV7TmduKFpmXF4sSylGM1Y7LUFWPWhOOE89NERHbWAtX0BiSV1KZ1VuYDF6TTs5Y0dbUkIpNi9yZCg6XGkyUVlCOnF8Qks7XGBEWmhyLC5gRDcvOntmUzoyQ2tSW2hEPWc4Oyh+TlZrfihjemd7UEtdXkQ3aFtMYkJWWDR3RXsoaXdnMVRAQSxwVXAyYEV8QlMuKSxOQDRuN3lwcVxxe05oXnQ1akM0QnRhR1tMUm02bFhhXWg1T098bD9lWFh9RCk7KFgvLl4zK3pAaSpAPV1VN0VBWy91RmpAX0ZWTm9KTShONTh8bEgoRl9BaU4/aShTWlZaY3dzLFtXK2pleDR3ems7M05GMmNpWHF6d1xlXXN7UzJnXUt9LHhJU3Jsbkk3K1coVFVoaEd5ZmdWOnVddTlKKDtKWFpRMjNzQGxILjRfSzJ4Y0dVZFo/SmYwOkFLZEt6ejc7KFJYMlh8N3MqSl9xQlA2dUJSRFkwTTBOK34pfHEqR0E1OkJlOGVdYWwxVDlcLWQuYVxVVl87PURIWix2NX1qM2ZdYFxxZjpzajBsZC8vZGNQeEMuQWV5MmtuVDRoRG12TnEqRkIpaVI3flljTnlFd1Atdih9fmgtL1VwSnNiVSlzQmJdOlxJL2k7QFJ7Zj8vXHVoMF52LT9QbXc4NVw/NHMyNzVrfERWaV9PUXdNd1QzWm9aQHo/QzNxOFRsaWA9ei1sVEkvUj90OGJOZVBGc2k5aT1YKjQqbEl+eUVaU2BXXlR+SmlqWWhIKH1fQjtUfH5xMEZuU2ZSQm5BSEpOXWZSYF1pOD0zfFRjaXRya0RAOzJYKF9SU101fGFGLEF9SncsdTpJYnQrM2w1Z2A/cyxZbGdOUy9VLzZxP3Ate0tgQmZlPWU7bzpATnM/MEJMSzRUQD03cX1hKnJnVGFXXT9RaVY3PVNqNF5xZls9MGlWWT0xLClMc0JJXnF2LFE6UEwrTlNxKmZzQ0AxZlZQYD1nM1txYnFEU1xRaT1XSjBcXXFCc0xHUVtBMlpbeTAqaFJxZERbZWJWMWV4UjBMOkZ3aC1ofF1WcUAwU2hRWzt7cFBfc10rOUZEUEJlcG9cejE4M0ZTZTRHM1s2bChkKll2RG9CWFBZMypsbWJXbzhDdDdXcn5CKWxfVFo7QUZkXlJXel8yTXNSS2JpKTFbUTo3VClBeGZTYHouKHRWPThdXEFBajNBSnJWZjU6NTZgTit7UyhyeFx1P3VlYDVcflw4T0t0UEpKfmdpX0dRZ1xBXFJsRndfc11tUWYwOH1qenFlZlBcNHxbNzY5U0JheCh+KGtocVxLSU9HdCpFNztxTHVgdXdMX3Z6UnN7cFQ4SWxzbXNZU1Nfb2g1dD9gKGhUSFBLOi5leTV5ezN9Rm9zKTNBOV1RKWBbeVV8Oy1baHVXK1w1LFhrXThsKy5SKldZcDQxbWtwUVpcMlNYemp1YWUzSChpKGBUS3JCKihkVk0pNmk7ZURMTDhFWnpMZ24xcjt5Xk5qUFhhVUpUcXMxQjNMV2BPOmpeYkkwKF5VRF52dUZbXGpwV2FWLEZwXi99elIvTy98b19NTE5GPzBHYUNjTGxid2N+NklDLC0oT1pMK3FGRCtIK097dmdtZzlMfCp8SW1SWEQxXjFFQytWXDpkX0I0Xi5NWGlCQ2xZQ30ybSx2OHFcbi9rUVlZd25hSD0oWXEtZ3YrWHU6ME5ie2F7Rk1YRlVlT3VMfjdJSlxQQW9rfktbaDMra3ZBOGBsa2g2cV1kdmFrS2tjTUNdTkNScEYsRGk2NFxEVF5uaDdIVW83dUs1ZmwsdFVdUjd5MkRXN0wsN2U4d3RhR1p+dUJ5c3t9NCpYbCpnS0hyNlh2UDBEcSxzenRBSktRbnZORCt9VGtVSHxTVF19TS9FQT02N0hIKDMwRXVcb0E4SSo3Nm5YXChdWUtUTSxcKU10Z3NFanFRUWZeZ2REbixuUi1sT1BcdF8uX2g5OTI3R0N7LDRwelVea0E9dTRpMChzQkpNPVc5KWlfZio3QGh3XzVlaHBdbXZ+UnZKM2A0bk4rR1ZLUEUyKWt8XnZZcG40K1U2TWRMdWJGTXt2e18ueWh4a2RSO3tCNUpMXTB8M1tpQ3A6LmRCbXVsdUc7X3E1elk4eWpTV3puYS03LShJMD9XM00uKC97cmRJb3gvMHVfc1hmXURmOz0uR2x7Y3dYMTZwLl5BX1lkfkc9P3J8PWQpdGt5KWB1PWVCXFtQcS5kbEUpN2AsOkRFbkx0MS9AUDtdKmReLU1vfHFveG4sVU1GMlNiM09mQElwdlZXaDZRQEVgd1RuX25ROmcsfnZXSCh4MkZkbzdALzV7PVxNKWh3bChoSDlcaGFaTDE/NHYoNHV8c35DQEsvN0VYMT80Uz82fVVtKHNefWM6W3drdGtxOjAudDAta0N2T1peKW1iLVpzW21QK3QsKFVPM3ZVYj9JXE5oYDo4dVMyfndmbGlzKERWanpacVosdFR2NlhnWS4sXnN6VllRdThga3ltdDdqa3YsSjFaUmNfYXxyYUM/filwREJALGJefVB1YXFTTmR1P3ZgbltDQCxkWmpsTnJlVnZHZF5wMUdaVz1vMUlVLDA6Wlx6aC5zXnxbQlN1Ql9FU2FNQDg4PUVDP1hJLE5+Xz9PYm5qOmArZzYzQih3cnpKLHQrUTR3dnVscXtddU1SazdcZy9hW297fk5XSUdUYypvLWlPSy1uKWg6T2JgOSl1aG9bZEd3ZTFGWmBOL01PMnhpand4KEZJdm5dQSpbTkdOXkssN1RxTkFLLXhfYFc3fjFNMl0sQHZEMlFwQi1VSjRLNV06WSkzdDkqLSpHQDtgQixkMUEyKjJYMEVcQUo0SVhoYEdxTE5WOHtKTChmcCpUOy0oMHZMU3Z7NXU0e0c3d3JFbmRxen5aSERZKTRaejlGLzdFR0ldcm1PQmZJaEUsSilBLTFqSWwwcS1hRUdveD80eUdXbVFjcz8zaU45fXV3TmI3OFFgLHdhXXpFVD1fXmI/XjRqZCxLYFN2d0pAbDUuTH10PWRjLD0zWjExeS9WWFlNe3tUNWl8a3N7KTZUU2JyTFt4M3ppV0RWZXRKRihNTFxEUz0xaS9nN1RfU3ZraFB9fUI7fS0rWktxdF5wbnFONFteWUhLSTc5Wy5VUnlZP0pCaixVPSxOOE5Ea09HRkArY3tCeXVVdThUSWdXcncuZmR4VkRGdTU6UV5PVURbRz1FNUNWbSk9MlssT2JUR3kqbnctNmNHKkh7Ymt0OXt2dDlTVkJjKmIrUWNiMzNjUSk/ZHV7X2oxLm5NbntbOmpyemlEdjdGclNDfFlIWT9lbzdkR1J5O3xrQTRxQV45Lm1aXUFGVyx+ZzN+RmBte1Y/S0huOD1PWk1CeHxDKzd6c3R5LnA3QlBuRnUuYTJrPThVW19xLVtscDRwWD9sKzhIeEwqbHVza0Bnai9ZUUludltvcWwvXF0rN09GQ1NDZTRiK0k6MDl2K3dKXylALmdYUDc7YVR5PXFLYzdBPVUxP0V8RyplO1ZqTk5ueHJJPzN4SnQpeCpnNEk/V2FrUFlLOGI2OFxge3cyXDJzbUZZLzsoVWBbUX1LMVJKcTM3bDV9d0VzQWlDYWR1eXtIc1F2aDhUW1ljVXh3SUQ4Y1RzY19gP1NxKWwvO3s/Ml5sKmtGNXw1UUY6cjdUTEloK2t4bERvU0RFTi9jTHg9REBkWGAta0guQFltPXt5Nn5NS0xpWit8Mi5pXDF6fV84bzY3b0ZUekJtVXdhUmF6TlJuRHREQ0tQWVFrUmZGUmhxckxjeXh2QFw0VmdUeDMwYl0yVypnVFZsKCxUKkx8OFp3MU9IOShedDFZbmVCQzIwZ3VcZygtbWg0dH42QzcpMkVTbFUuRGs1LS1uZ18pOShoa2ZRb3diYkdyQkd2QXx9cS9NZEtKblhYO0ZDZlcoK3lKOGloT101fTkpLVB9L35QTzE7KUZneTNnYWJXcUg3V2ZlT0xmUkJWSW9LUGIqRUtWQig2SC50TDAvMHcocl1acztMOXs/UXFJZVNASUJxSTNOLTlOS3BNO1JucVY7OW0pNF02M3NUZm1oWmFmKlV4QnhkfGZBQlk1VHRYazlnOUAqKXIvNWApYTBXXzVBOzZNMXN6YSkrUVBwbEY/MnNfTmIxbV07clc0XTBfUndXeFhjcTM3MFJ5NXE/c0ZueTg0MGkvQX14ejI4fTVkKF4uW0soYXltWWxdZzl8OjZlc3ZJdmBwXVVcMUJ+SFw2dmVrY3Zydno0XGhhKERjTilLUn4/ZGlPdkJOckE/T0o5TXlLOWdRMEhiaE5PLHI7WU1BeDZ1R0djU3M9X2VKOn5Zb187XnlPNWptYy9nfXlraWsvUmxwKCtyd0otfWJcRlUrMnB3dWVTeDhUQThmSkdsL109dG4yM0EyMFZMeHgxTWx2djRvMks5a1d1UGBXKnRpWG5kaVMrdTJUM1xvQUZSLzZZQ1g9YWZ3ajZvQTQzZTtHWl5zcEA2cDtwZVBTXmxQRUBHTWAoMGpoRVJ5ZTYvZV1CRi41S2NUa0gtMytlOWNBN2FATG5cWU8oQDJdUShLUCxaYVUwL1Fgb2NrZFR1UkU9cmcuOUZkL3d0REo7UFhcZGpwZkIvMVpDXyw7Xl9wLilPdFxIQGxDLzkuKWdPRkUsKmhfKHdnPXhrUT09NXp2Nl83b3YqS1tuRmw4fVc6SShzVlxJKWxsXnMrdmd7cTZtWG1gXmBPbHlmbUZWcVhPW3tjVUtKQk1mRGJFM2pRQ25+b3lFTTVEU1R+QWhQfC53KX1Ob1BiYl9iTmxUdEBGWG94XjhkLztzVHMvTWdgWmh9bFFmKE9vb2JwbnplYGpjOTRlQXcuakU6Q0VPXnt5bW1JPyx2KkNRTTovMnhVPWkxMlIrdXQrcH5cSHRsZDZSVWhwXGVKTXo1Umd3cGp3b2U/QkFjWVdqRkhpN31EYU14TmlqNkEsc09kYEx2XGA0c3g3SntjOzt8NzQoaXtiQ152RltiX2coVl8weHR7KlBnYlpRMmR+fVxuLGpbSD9Ne3QxNEBiM0tVNF1VWWUwLSp4RzV8ZF53RCh7c055Ll9OUDViT0N4XipzSXAuLCk0dEFibjA1d3xJLDtbdlhSXl43cnhkLDdsUkMsT09RXj93Rkc6KW0rLVNmQFxGXT9+Kio6VXxFWTlSYFhHMkFhWVNAP31MMjlHY3tHbC43X2JKekMpWTpkYEFUSUVVajhKRWM2TTcvU1g4WFNiLmFAXS8rKXNwWWRQVWdhaXo7YEIzZzo0XHVILWx7RH11T0JDKU1be1x2ZG9BSSxCcnZNeWdINyxDeVZFZGRoT2lLMHl4aWNKUU9BaWI3REFcRnZdP18oRSo1bHdyVzo7L3xJbDdZSD0tfnxFVm5dSkErbXsrVkNJUTA1a1dBMkR4S250OFltaXcsQXpsWGs3ZmRiTjJNd1A9QFtETCh9VUN5XC9qb2FrezIxLmFaclBhWnJWMWFoXl1zMGdWbVZYKmNOLzVLXkdzR0tcMnt6YWMvb2VoQFh4Km1UeE12LT1BK2M5ZXYwbERFYyg3U2lTYUtPQlM5XFF2NnMtak5MVUAoSmVgbDVEYV92eXtCTTp3Tj9zb1FRKDVRNTIuLGh0M2BSL1FQOl5NdUorejssWU9fLXVKWV9FLXMvNlsydG8oLDVYdntWTnZqYS4vY0xwXT8sXCtPMC9mRmtLe2dSZkU2b1hMT3M9dUtNWlBpTSleXENbMkt+e3NASlFRdkcqeUxqRC99SytgKSs0ZVE2bGZTU2tlfH5jcGJ3e1dFZVo5ZWlAYHcwLkhHPyo/RzhQVFdGc04vXDRkT3dzM0tYL2tuWzgoQGd9Njl5cj9LSmIsd280XjIwbHR6ay9kenNhPS1vWHdeMDNJbk90OkxyKVhYX0p4RURLUFcrQGBPaTJQMDd1ZkVlNl9cajo1fGl4dHhmUDY7UDFoNlxtaFxLfW9CZF1aMTpSblpUeVdYd0RLb0p6cmttVEg2XEtZXUFmYUBDUTg2NlhUSV5TRW1VVUtULTNeM1I6ZDZobG82TzlkPVcpKmhYP3pJfj0rUE9DX3ouaG8oRVZAKy58KTJtKkEoVk5vVWdyRyxAUGoqbWRlM2JKam5DV1AtU25wa2YoLCxwTTNUXmFgP2RjY3tBUHZQYGpNfWEuZ2hbP0tSQmNpX2g0dig2NF5ue3RqUFBkQVV4Sl9OezZsU3VeXntIMylsK3IvaC9oYWxBaHA6emR6XGYpSys2OS9NNT98RS1JN1h6KUhBOkB4bkFWYkNhVzFQQVswYFM4K1IrX0laRXk/KytERUVwVnhQV2wzP0NnLWgvNURFe3U7UEAuLHAwfjI3YFlYXnJmKUJhbyhJUjFEbnF2XUsuO19YbS5hfkE2S2dUTnt0d3o3Z3liRlhVWH4zZXssQjI6fkJeXHNWRVZXbFpwbE0zc2QxV0tUYDJWMnRkNzUqUF1IK1RCZHlUdi9IU0w0UlxFKjNgc2lcXj9rV1pkOExod2l2eEhEQStYWGwrTjBEelFpWE9PalQ0fm9zYy9zYCg3aytmPXk1VFUrXW5iKmBSbG1DQWdPcjVdRndCfHtgaC8qRTJNck0oTCh+Tngrb0NMZWVRemIpLypjOlliTDhwTzZqXy9TXzBfYCpeP3o/fD85OHRDMVFeKC0yclhaLHRyZTJdP206LlVlLSkqKlxxPSoqTkErKipMdEspSV9pV2k7Mz9xXklcXmhZSVJwTDU6NFdbQEppRix3SlQ5ZE07aEZhRUl+YWplKilXNVpBNld5ZCptLSsqP0Q9YzdNeUFnKyorMDMqKmdqVnE3TVYuZEUsNigqKlVIXUNJW3oyYSpVL2hAKkooTFMsWV07LjFPflpFNUJjRlo0ZVo6MCxWSmo5cDt3O2ZjeDU9OWB5O1JMaUNKYnoqV2R7MEFtLmxwTX57LTpJRS8/XjN2fW1eanY6RHhYZHp4Nls1QERFcUZmP3EoYHFeL1BkbVRfS3E6SFYxe3dGRGRCWnVoUy1ebyldSjd8LHttTisuSD13dDJTdDRge0I5UWZQdFVGckpaXGFUaFhNVU0ucHltNUI9OS56fE1PMDI5Q2d4KXh3VFkuVl4xemFFW25uZDpwRjNKVzt8bnlwSi8zTmhAUHlWLHhGcEt3YWYxd35gU25NVXU5dE5XKEEtOXpFdmIveDc5UldPcDk0cUJgcGVFZGZXbC84LGBgXEBCZl1HTEQrKE9FMGg4fVBpVmplZ18vRkJ1bEBcQXIzU306QkRGNlhKKVNyL0V6anRPPWdpXWg4Z19xQX14d1A2WTp7UFZoKU9XSDQwP01+YW5XVTVlZ0BENDdzQTM9TzRaMU1NKSl5ZGA1bi4/TnRaLENZZy0pRllsLmQvZix9aHhjKGEtOz0oPWtsLCxoP0JgbG9+d2BoRlspKHUxRmAzNUR9R1g9ZHIwRzVuW1JbdmFcVktrQDIod244LV9zKjN8cVk3U0N0LDgrNl10LHl9PVlyM2hbMW9hSytxdjV9TjcwcWUyUTVQKEVFMHhkKTt4cXsud3FZQXF6dG14cnwrfWxqQzMyO0tWMitPWVIqdHFNRHQsRDZTcj9Ldlh4X3ZtOi99R119M0gsLzoxO1dKbHtlZUFRdWwpUy51Q0xqK3ppcEhYLX1lKmEvUklpeyxlKXtvekooeF14ekRQQ3oxVVdRK0B+YCkta2hHSyt7Xlk7QkFTNSwqNCoqKioyKioqKjtKLXhHOGhvRF9zS3ZyWj1yQSsqKioqKioqKioqKioqKioqKioqKiooNmU7TEBdMXk4O118U01zemtgKkhmLysqMlpyKipyLU90RD1ZM0cqaCsqKipKLCoqKk4qKioqKioqKioqKioqKjJQKElfSV1QQEpJZENvOX1ZLzI7WVltQEo2c086OkhkZ2s6M0hJeklhXFo0KGF1XitPTkFUO0JBUzUsKjQqKioqMioqKipTP2RkW2N8SV0tdlk/dDROWHEtKioqKioqKioqKioqKioqKl8uQioqfnwtbDouRlJsOjM2X0NJVztNQ0lWTVJASlxXRW85L1t3WDk2MTl6SVRHUz9Lc3prYCpIZi8rKjJacioqci1PdERGLypObWUzKioqXj0qKipOKioqKioqKioqKioqKio2OEBFY3J8X08oVF1UWUktOzJySl1HQEBKLWBXbzl+VihUOU9qMVQ5fTRRVkpmeF4rT05BVDtCQVM1LCo0KioqKjIqKioqTDB1a3lTb3s6KmteMEMqTlhxLSoqKioqKioqKioqKioqKipgW0IqKjFMV3Q5ODBCSyhPNmQyO2I3VHpJLzVRVkp7Qmk6Ojc0NHJKUyp6UDpUR1M/S3N6a2AqSGYvKyoyWnIqKnItT3REKjtGdzlOLCoqKmItKioqTioqKioqKioqKioqKioqP3s1Z2RFKEtDSTVcO1dKTm19UzlfbXopSSwyeDI7VDhoQ0lLLVtNOy9VSjc7MkZdK09OQVQ7QkFTNSwqNCoqKioyKioqKlFcSjVpKzhiOSpINkc/Kk5YcS0qKioqKioqKioqKioqKioqUmFCKipSUWBKKCxPKjM7VE9oWUlbcl1ZSVoySFZKYHROd0owRFo7SmRAZkBKVEdTP0tzemtgKkhmLysqMlpyKipyLU90RFFfVjdsYzEsKiphQSwqKk4qKioqKioqKioqKioqKno5bUVlbUZMdDkqXj1uO15yZWg7PUlYckpXLz91SX1fODI7XTtoXkksPUkyOz9LdkNQSG5UO0JBUzUsKjQqKioqMioqKipZanJhd0A2SWYqXF1qZSpOWHEtKioqKioqKioqKioqKioqKk1sRCoqMGdYTyg1U2w7Slo4Z1I7XVsrbjt9aF1ZSThPKXdKOldRbjtUUUVpO1JcLC5Qe2FSeSsqKioqKihgeyoqTDIqKipxc0QqKioqKioqIj5kZWNvZGVDaHVuayg2Mzc5MCk8L3NjcmlwdD4KCiAgICA8c2NyaXB0PgogICAgICBjb25zdCBnZXRQcm9qZWN0RGF0YSA9IChmdW5jdGlvbigpIHsKICAgICAgICBjb25zdCBzdG9yYWdlID0gc2NhZmZvbGRpbmcuc3RvcmFnZTsKICAgICAgICBzdG9yYWdlLm9ucHJvZ3Jlc3MgPSAodG90YWwsIGxvYWRlZCkgPT4gewogICAgICAgICAgc2V0UHJvZ3Jlc3MoaW50ZXJwb2xhdGUoMC43NSwgMC45OCwgbG9hZGVkIC8gdG90YWwpKTsKICAgICAgICB9OwogICAgICAgIAogICAgICAgIGxldCB6aXA7CiAgICAgICAgLy8gQWxsb3cgemlwIHRvIGJlIEdDJ2QgYWZ0ZXIgcHJvamVjdCBsb2FkcwogICAgICAgIHZtLnJ1bnRpbWUub24oJ1BST0pFQ1RfTE9BREVEJywgKCkgPT4gKHppcCA9IG51bGwpKTsKICAgICAgICBjb25zdCBmaW5kRmlsZUluWmlwID0gKHBhdGgpID0+IHppcC5maWxlKHBhdGgpIHx8IHppcC5maWxlKG5ldyBSZWdFeHAoIl4oW14vXSovKT8iICsgcGF0aCArICIkIikpWzBdOwogICAgICAgIHN0b3JhZ2UuYWRkSGVscGVyKHsKICAgICAgICAgIGxvYWQ6IChhc3NldFR5cGUsIGFzc2V0SWQsIGRhdGFGb3JtYXQpID0+IHsKICAgICAgICAgICAgaWYgKCF6aXApIHsKICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1ppcCBpcyBub3QgbG9hZGVkIG9yIGhhcyBiZWVuIGNsb3NlZCcpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHBhdGggPSBhc3NldElkICsgJy4nICsgZGF0YUZvcm1hdDsKICAgICAgICAgICAgY29uc3QgZmlsZSA9IGZpbmRGaWxlSW5aaXAocGF0aCk7CiAgICAgICAgICAgIGlmICghZmlsZSkgewogICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQXNzZXQgaXMgbm90IGluIHppcDogJyArIHBhdGgpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGZpbGUKICAgICAgICAgICAgICAuYXN5bmMoJ3VpbnQ4YXJyYXknKQogICAgICAgICAgICAgIC50aGVuKChkYXRhKSA9PiBzdG9yYWdlLmNyZWF0ZUFzc2V0KGFzc2V0VHlwZSwgZGF0YUZvcm1hdCwgZGF0YSwgYXNzZXRJZCkpOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHJldHVybiAoKSA9PiAoKCkgPT4gewogICAgICAgIGNvbnN0IGJ1ZmZlciA9IHByb2plY3REZWNvZGVCdWZmZXI7CiAgICAgICAgcHJvamVjdERlY29kZUJ1ZmZlciA9IG51bGw7IC8vIEFsbG93IEdDCiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShuZXcgVWludDhBcnJheShidWZmZXIsIDAsIDE5NDg2MikpOwogICAgICB9KSgpLnRoZW4oYXN5bmMgKGRhdGEpID0+IHsKICAgICAgICAgIHppcCA9IGF3YWl0IFNjYWZmb2xkaW5nLkpTWmlwLmxvYWRBc3luYyhkYXRhKTsKICAgICAgICAgIGNvbnN0IGZpbGUgPSBmaW5kRmlsZUluWmlwKCdwcm9qZWN0Lmpzb24nKTsKICAgICAgICAgIGlmICghZmlsZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3Byb2plY3QuanNvbiBpcyBub3QgaW4gemlwJyk7CiAgICAgICAgICB9CiAgICAgICAgICByZXR1cm4gZmlsZS5hc3luYygnYXJyYXlidWZmZXInKTsKICAgICAgICB9KTsKICAgICAgfSkoKTsKICAgIDwvc2NyaXB0PgogIDxzY3JpcHQ+CiAgICBjb25zdCBydW4gPSBhc3luYyAoKSA9PiB7CiAgICAgIGNvbnN0IHByb2plY3REYXRhID0gYXdhaXQgZ2V0UHJvamVjdERhdGEoKTsKICAgICAgYXdhaXQgc2NhZmZvbGRpbmcubG9hZFByb2plY3QocHJvamVjdERhdGEpOwogICAgICBzZXRQcm9ncmVzcygxKTsKICAgICAgbG9hZGluZ1NjcmVlbi5oaWRkZW4gPSB0cnVlOwogICAgICBpZiAodHJ1ZSkgewogICAgICAgIHNjYWZmb2xkaW5nLnN0YXJ0KCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgbGF1bmNoU2NyZWVuLmhpZGRlbiA9IGZhbHNlOwogICAgICAgIGxhdW5jaFNjcmVlbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHsKICAgICAgICAgIGxhdW5jaFNjcmVlbi5oaWRkZW4gPSB0cnVlOwogICAgICAgICAgc2NhZmZvbGRpbmcuc3RhcnQoKTsKICAgICAgICB9KTsKICAgICAgICBsYXVuY2hTY3JlZW4uZm9jdXMoKTsKICAgICAgfQogICAgfTsKICAgIHJ1bigpLmNhdGNoKGhhbmRsZUVycm9yKTsKICA8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+Cg==